Mon, 03 Aug 2009 14:09:20 +0100
added P-touch decoder source
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/PTdecode/CImg-1.3.0/CHANGES.txt Mon Aug 03 14:09:20 2009 +0100 1.3 @@ -0,0 +1,1067 @@ 1.4 +---------------------------------------------------------------------------------------- 1.5 + 1.6 + 1.7 + CHANGES.txt : List the changes made between consecutive versions of The CImg Library 1.8 + 1.9 + 1.10 +----------------------------------------------------------------------------------------- 1.11 + 1.12 +*----------------------------- 1.13 +*----------------------------- 1.14 +* Changes from 1.2.9 to 1.3.0 1.15 +*----------------------------- 1.16 +*----------------------------- 1.17 + 1.18 +The 1.3.0 version of the CImg Library is a major release, and will probably break the 1.19 +compatibility with your existing code. Anyway, the overall philosophy is the same so 1.20 +converting your code should not require lot of work fortunately. 1.21 + 1.22 +* New features : 1.23 + - Added function 'CImg<T>::[get_]distance()' that compute the Euler unsigned distance map 1.24 + from a shape of specified isovalue in an image, using a fast linear algorithm. 1.25 + - Added functions 'CImg<>::set_linear_at{X,Y,Z}()' allowing to set pixel values using 1.26 + float-valued coordinates, with linear interpolation. 1.27 + - Added z-buffering capabilities in some drawing functions, so that displaying a 1.28 + 3D object with 'CImg<T>::draw_object3d()' now takes care of eventual crossing primitives. 1.29 + (added shortcut CTRL+Z to enable/disable zbuffering in 'CImg<T>::display_object3d()'. 1.30 + - Added functions 'CImgList<T>::is_same*()' to check dimensions of image lists. 1.31 + - Added plugin 'plugins/skeleton.h', as well as example of use 'examples/skeletonize.cpp' that 1.32 + computes the skeleton of a shape (binary image). Thanks to F-X Dupé for this nice contrib ! 1.33 + - Added function 'CImg<T>::get_elevation3d()' that constructs a 3D object by 'elevating' 1.34 + an instance image. 1.35 + - In function 'CImg<T>::sharpen()', two sharpening methods are now implemented : shock filters 1.36 + and inverse diffusion. 1.37 + - Added function 'CImg[List]<T>::save_ffmpeg()', allowing to save an image sequence, directly 1.38 + as a movie file, using the FFMPEG library. Thanks to David. G. Starweather for this very nice 1.39 + contribution ! 1.40 + - Added function 'CImg<T>::[get_]warp()' that can warp an image using a deformation field. 1.41 + - Added function 'CImg<T>::[get_]solve_tridiagonal()' that can quickly solve a tridiagonal linear 1.42 + system of equations (use the Thomas Algorithm). 1.43 + - Added function 'CImg<T>::[get_]load_dcraw_external()' that allows to read RAW digital camera files, 1.44 + using the open-source external tool 'dcraw'. 1.45 + - Added file 'examples/CMakeLists.txt' to generate makefile using the 'cmake' tool (thanks to 1.46 + Baptiste Mougel for this nice contribution). 1.47 + - Added functions 'CImg<T>::display_graph()' and 'CImg<T>::select_graph()' that can be used 1.48 + to display a graph plot or crop a sub-graph. 1.49 + - Added function 'CImg<T>::[get_]autocrop()' that can autocrop an image regarding to a background 1.50 + value or color. 1.51 + - Added new demo 'Word Puzzle' in file 'examples/CImg_demo.cpp'. 1.52 + - Added new plugin 'plugins/cimgIPL.h', as well as example file 'examples/use_cimgIPL.h' that shows 1.53 + how to convert between CImg and IplImage structures (used in OpenCV). Thanks to Haibo Zheng for 1.54 + this nice contribution ! 1.55 + - Function 'CImg<T>::load_ffmpeg()' is now able to return information on the main video stream, without 1.56 + having to load frames. 1.57 + - New function 'CImg[List]<T>::valuestring()' returns a C-string containing values of the image pixels. 1.58 + - Added file 'examples/gmic4gimp.cpp' which implements a G'MIC plug-in for GIMP. 1.59 + - Added file 'resources/cimg_buildpackage' which is a bash script that generates package files for CImg. 1.60 + - Added function 'cimg::prand()' which returns a random variable following a Poisson distribution. 1.61 + 1.62 +* Optimizations / Modifications : 1.63 + - The API of the library has been quite largely modified. It means that the 1.3.0 release is 1.64 + not meant to be fully compatible with previous versions. This is the beginning of a new 1.65 + important branch. 1.66 + - Functions 'CImg[List]<T>::load()' can now check for magick numbers for determining file format 1.67 + (instead of using only their filename extension). 1.68 + - Cleaned lot of code in 'CImg<T>::draw_*()' functions. Few of them have now different signatures, 1.69 + particularly 'CImg<T>::draw_text()', 'CImg<T>::draw_spline()' and 'CImg<T>::draw_image()'. 1.70 + - Improved warning removal when compiling on Microsoft Visual C++ compiler. It is now very rare 1.71 + to get warnings when compiling CImg-based files ! 1.72 + - Plugin 'plugins/distance_saito.h' has been removed, since a new and clean implementation of 1.73 + the distance function is now available in the 'CImg.h' file. 1.74 + - Function 'CImg<T>::equalize_histogram()' has been renamed to 'CImg<T>::equalize()'. 1.75 + - Functions 'CImg<T>::get_gradient()', 'CImg<T>::get_structure_tensor()' and 'CImg<T>::get_hessian()' 1.76 + now replaces the old versions. 1.77 + - Provided example file 'examples/inrcast.cpp' has been renamed and recoded as 'examples/gmic.cpp'. 1.78 + G'MIC is now an independant project, having its own web page : http://gmic.sourceforge.net/. 1.79 + - Plugin 'plugins/cimgmatlab.h' has been updated. 1.80 + - Added pipe support (for POSIX systems) in load/save functions using external tools, so that 1.81 + a temporary file is not necessary to read/write. 1.82 + - Function 'CImg<T>::load_analyze()' can now read niftii files directly using a FILE* argument. 1.83 + - Improved global structure of the CImg package. 1.84 + - Silent output for 'CImg<T>::{load_save}_ffmpeg_external()' on Windows. 1.85 + - Better zoom-in procedure in 'CImg<T>::display()'. 1.86 + - Function 'CImg<T>::get_hessian()' now allows to specify the set of desired axes. 1.87 + - Macros 'cimg_*_path' do not exist anymore. Instead, the user can dynamically change these paths used 1.88 + by CImg, by using functions' cimg::*_path()'. 1.89 + - Code corrections in order to compile without warnings on g++ 4.3 version. 1.90 + - Added 'windows' targets in the 'examples/Makefile', so compiling examples under MinGW is straightforward. 1.91 + - Added soft thresholding capability to 'CImg<T>::threshold()'. 1.92 + 1.93 +* Bug corrections : 1.94 + - Corrected bug related to X11 events on some Windows Managers, thanks to Rainer Steffens 1.95 + for his nice patch ! 1.96 + - Corrected normalization bug that occured when doing inverse FFT of images, using libfftw3. 1.97 + - Corrected endianness problem when reading 16 bits PNM files. 1.98 + - Corrected small bug in 'CImg<T>::display()' : drawn coordinates were wrong when 1.99 + user had selected a region to zoom in. 1.100 + - Extension 'tiff' is now recognized in 'CImg<T>::load()'. 1.101 + - Corrected computation of variance (=0) when image has only one element. 1.102 + - Corrected y-range bug in 'CImg<T>::draw_ellipse()'. 1.103 + - Corrected bug in 'CImg<T>::save_pandore()' when saving int images on 64bits systems. 1.104 + - And many small bug corrections... 1.105 + 1.106 +*----------------------------- 1.107 +*----------------------------- 1.108 +* Changes from 1.2.8 to 1.2.9 1.109 +*----------------------------- 1.110 +*----------------------------- 1.111 + 1.112 +* New features : 1.113 + - Added new example file 'examples/captcha.cpp', which can be used to draw captcha images. This is a very 1.114 + short and simple code, so it can be interesting for a first approach of CImg. 1.115 + - Added functions 'CImg<T>::scale_2x()' and 'CImg<T>::scale_3x()' allowing to upscale an image 1.116 + with a edge-directed algorithm (see 'http://scale2x.sourceforge.net/') 1.117 + - Added function 'CImg<T>::save_cpp()' allowing to save an image directly as a 1.118 + C/C++ source code. 1.119 + - Added function 'CImg<T>::draw_mandelbrot()' allowing to draw quadratic mandelbrot fractal set on images. 1.120 + - Added a new demo effect 'Fish-Eye Magnification' in file 'examples/CImg_demo.cpp'. 1.121 + - Added new fields in CImgDisplay for an easy test of keys pressing. Very useful for testing complicated combinations. 1.122 + - Added functions to read/save gzipped files. 1.123 + - Added compression option for .cimg files (requires the use of the 'zlib' library). 1.124 + - Added color conversions for CMY and CMYK color bases. 1.125 + 1.126 +* Optimizations / Modifications : 1.127 + - Big code cleaning and re-organization in file 'CImg.h', making the things more clear. 1.128 + - Function 'CImg<T>::load_ascii()' has been modified to allow comments before specifying image 1.129 + dimensions. 1.130 + - Functions 'CImg[List]::print()' have been slightly modified to be more precise and clear. Also used 1.131 + in functions 'CImg[List]::display()'. 1.132 + - Improved functionalities of the image processing tool 'inrcast.cpp'. 1.133 + - Improved 'CImg[List]<T>::display()' function allowing easy navigation and zooming in images. 1.134 + - Add native use of ffmpeg libraries to load video sequences (Thanks to David Starkweather for his nice contribution !) 1.135 + - Optimized function 'CImg<T>::permute_axes' for common used cases (planar to interleaved RGB and RGBA). 1.136 + - Added parameter 'step_frame' in functions that can load video sequences, 1.137 + i.e. CImg[List]<T>::load_yuv(), CImg[List]<T>::load_tiff(), CImg[List]<T>::load_ffmpeg(), so that frames 1.138 + can be skipped when loading the video files. 1.139 + - Removed parameter 'events_type' in CImgDisplay functions. By default, a display is always catching all user 1.140 + events. Having different choices made slight problems between different architectures (and was not really 1.141 + useful). 1.142 + - Removed plugin 'plugins/toolbox3d.h'. Functions of the plug-ins are now natively integrated into the CImg.h file, 1.143 + as well as the LibBoard library support. 1.144 + - Renamed functions 'CImg<>::*pix?d()' to 'CImg<>::*at?()'. 1.145 + 1.146 +* Bug corrections : 1.147 + - Small bug in functions 'CImg[List]::contains()' were corrected. 1.148 + - Bug correction in function 'CImg<T>::[get_]stats()' : offset of min and max values were sometimes incorrect. 1.149 + - Bug correction in CImgDisplay events for Windows-based OS. When mouse leaved a window, coordinates 1.150 + didn't reset to -1 sometimes. 1.151 + - Small non-computational bug correction in 'CImg<T>::symmetric_eigen()'. 1.152 + - Removed g++ warning that occured when using 'libpng' ('warning: argument 'xxx' might be clobbered by 'longjmp' or 'vfork'). 1.153 + - Corrected small illumination bug with double sided 3D objects in CImg<T>::draw_object3d(). 1.154 + - And a lot of other small improvements and bug corrections... 1.155 + 1.156 +*----------------------------- 1.157 +*----------------------------- 1.158 +* Changes from 1.2.7 to 1.2.8 1.159 +*----------------------------- 1.160 +*----------------------------- 1.161 + 1.162 +* New features : 1.163 + - Added native Carbon support in CImgDisplay. Allows to run CImg on MacOSX without installing X11. 1.164 + This is a beta support, so not activated by default. Define 'cimg_use_carbon' to enable it. 1.165 + Many Thanks to Adrien Reboisson, Romain Blei and Jean-Marie Favreau for this nice contribution. 1.166 + Any comments and contributions are welcome. 1.167 + - Added variant of 'CImgList<T>::remove()' that can remove several images from a CImgList<T> list 1.168 + at the same time. 1.169 + - Added new numbered macros 'cimg_plugin1...8', for easy inclusion of multiple CImg plug-ins. 1.170 + - Added plugin 'plugins/distance_saito.h' that implements the Saito's distance transform. 1.171 + - Added function 'CImg<T>::blur_patch()' that performs a patch-based Tikhonov flow on the image. 1.172 + Allows to denoise and regularize image quite well (is time-consuming anyway). 1.173 + - Functions 'CImg<T>::load_tiff()', 'CImgList<T>::load_tiff()', 'CImg<T>::save_tiff()' and 1.174 + 'CImgList<T>::save_tiff()' has been (re)-coded. It is now possible to read/save multi-pages tif 1.175 + image files worriless. 1.176 + - Native support for 'icc' compiler (Intel C++ compiler) added in the Makefile. 1.177 + Just type 'make CC=icc olinux' to compile using icc (offers nice performances in code optimization). 1.178 + - Started support of OpenMP directives, to allow parallelization of CImg functions in order to 1.179 + improve performances. Not few used, by this could change in the future. 1.180 + - Added functions to load/save video sequences using the external tool FFMPEG (http://http://ffmpeg.mplayerhq.hu/). 1.181 + 'inrcast' is now able to read video sequences using FFMPEG. 1.182 + - Added new color basis conversions : RGBtoHSI(), HSItoRGB(), HSLtoRGB() (Thanks to Cesar Martinez for his 1.183 + contribution). 1.184 + - Added example file 'examples/radon_transform.cpp', provided by David G. Starkweather (Thanks guy!). 1.185 + 1.186 +* Optimizations / Modifications : 1.187 + - The main library file 'CImg.h' is now distributed under dual license CeCILL or CeCILL-C. 1.188 + - Patched function 'CImg<T>::load_tiff()' for a better support of float-valued tiff images. 1.189 + - Renamed 'CImg<T>::inverse()' as 'CImg<T>::invert()' and 'CImg<>::pseudoinverse()' as 'CImg<T>::pseudoinvert()'. 1.190 + - Function 'CImg<T>::displacement_field()' has been modified to consider a multi-valued geometry 1.191 + for motion detection (so color images are naturally taken into account now). 1.192 + - Optimized functions 'CImg<T>::dilate()' and 'CImg<T>::erode()' 1.193 + - Slightly optimized pixel access and display rendering functions. 1.194 + - Used native mutex mechanism of X11 instead of the pthread library. 1.195 + - Removed deprecated example file 'examples/pslider.cpp'. 1.196 + - Renamed 'cimg::PI' to 'cimg::valuePI' to avoid compilation problems with some C++ compilers that define 1.197 + the PI macro. 1.198 + - Added specular type lightning in routines that draw 3D objects. Parameters 'specular_light' and 1.199 + 'specular_shine' replace the old 'ambient_light' parameter. 1.200 + 1.201 +* Bug corrections : 1.202 + - Bug corrected in 'CImg<T>::draw_polygon()' : wrong scanlines were drawn with some complex polygons. 1.203 + - Bug corrected in 'CImg<T>::convolve()' and 'CImg<T>::correlate()'. Happened when dealing with non square 1.204 + masks with even dimensions. 1.205 + - Bug corrected in 'CImg<T>::save_png()' and 'CImg<T>::load_png()' when dealing with 16 bits 1.206 + images in little-endian proc. 1.207 + - Bug corrected in 'CImg<T>::get_coordinates()' when dealing with 2-channels images. 1.208 + - Bug corrected, 2-channels images were not correctly displayed (blue channel was used instead of being 0). 1.209 + - And a lot of other small bug corrections... 1.210 + 1.211 +*----------------------------- 1.212 +*----------------------------- 1.213 +* Changes from 1.2.6 to 1.2.7 1.214 +*----------------------------- 1.215 +*----------------------------- 1.216 + 1.217 +* New features : 1.218 + - Added functions 'CImg<T>::get_haar()', 'CImg<T>::haar()' allowing to compute the direct and 1.219 + inverse Haar multiscale transform on 2D or 3D images. 1.220 + - Added function 'CImg<T>::get_hessianXY()' and 'CImg<T>::get_hessianXYZ()' that compute 1.221 + the components of the hessian matrix of a 2D or 3D image. 1.222 + - Added function 'CImg<T>::variancemean()' able to compute the variance and mean value of 1.223 + an image at the same time. 1.224 + - Added new macros for 'cimg_for_out*' and 'cimg_for_in*' families, all combinations are 1.225 + now fully handled. 1.226 + 1.227 +* Optimizations / Modifications : 1.228 + - Modified 'CImg<T>::get_resize()'. Moving average is now defined to be interp=2. Additional 1.229 + parameter 'center' has been added so that centering image is possible when upsizing with interp=0. 1.230 + 1.231 +* Bug corrections : 1.232 + - Critical bug correction has been made for non-const functions taking a const T& or const t& argument. 1.233 + 'const T&' arguments have mainly been replaced by 'const T' arguments, in order to avoid wrong references 1.234 + problems. Thanks to Jinwei Gu who pointed this out to me. 1.235 + 1.236 +*----------------------------- 1.237 +*----------------------------- 1.238 +* Changes from 1.2.5 to 1.2.6 1.239 +*----------------------------- 1.240 +*----------------------------- 1.241 + 1.242 +* New features : 1.243 + - Added functions 'CImg<T>::fillV(), CImg<T>::fillZV() and CImg<T>::fillYZV()' allowing to set image values 1.244 + at a specified pixel and along specified axes. 1.245 + - Added variant of 'CImg<T>::get_dijkstra()' allowing to use any function/class for definition of weights. 1.246 + - Added new interpolation technique (moving average) in 'CImg<T>::resize()' allows very precise image downsizing. 1.247 + (Thanks to François Lauze who provided me with some of its code). 1.248 + - Added lot of new and useful neighborhood loop macros. 1.249 + A new executable 'examples/generate_loop_macros.cpp' allows to generate 1.250 + 2D loops for arbitrary neighborhood size. A new plugin 'plugins/loop_macros.h' has been created, containing 1.251 + all loops NxN (until N=32) and NxNxN (until N=8). 1.252 + - Added separate component and YCbCr color base processing in options of 'examples/greycstoration.cpp' 1.253 + - Added macros 'cimg_argument?()' allowing to retrieve command lines that are not options (not beginning with a '-'). 1.254 + - Added shortcut 'CTRL+O' in 'CImg<T>::get_coordinates()' allowing to save visualized instance image into a .cimg file. 1.255 + 1.256 +* Optimizations / Modifications : 1.257 + - Macros with neighborhood loops have been extended and simplified. Some of the previous ones have been deleted, 1.258 + others have appeared. Basically, no functionnalities have been removed. 1.259 + - Macro 'cimg_version' is now 126 instead of 1.26, allowing easy comparison with integer values. 1.260 + - Changed traits name in cimg:: for more coherence. 1.261 + - New design of the website and new sexy flyer available (Thanks to Sebastien Hanel). 1.262 + 1.263 +* Bug corrections : 1.264 + - Corrected function 'CImg<T>::cubic_pix[1,2]d()'. 1.265 + - Corrected bug in 'CImg<T>::blur_median()'. 1.266 + - Corrected bug with temporary random filenames when using multi-threading. 1.267 + - Corrected small bug in 'CImg<T>::draw_point()'. 1.268 + - Corrected name 'CImg<T>::dijkstra()' instead of 'CImg<T>::djikstra()'. 1.269 + - Corrected compilation bug in some plug-ins. 1.270 + - And other small bug corrections... 1.271 + 1.272 +*----------------------------- 1.273 +*----------------------------- 1.274 +* Changes from 1.2.4 to 1.2.5 1.275 +*----------------------------- 1.276 +*----------------------------- 1.277 + 1.278 +* New features : 1.279 + - Added function 'CImg<T>::label_regions()' that can label deconnected regions. 1.280 + - Added overload of function 'CImg<T>::draw_point()' that is able to draw point clouds. 1.281 + - Added function 'CImg<T>::get_blur_bilateral()' that implements bilateral filtering. 1.282 + - Added functions 'CImg<T>::get_RGBtoBayer()' and 'CImg<T>::get_BayertoRGB()' that converts between 1.283 + RGB and Bayer-coded representation of an image. 1.284 + - Added functions CImg[List]<T>::min(), max(), mean(), variance(), get_stats(), and contains() 1.285 + to deal easily with image statistics (class CImgStats is now obsolete and has been moved to 1.286 + plugin 'plugins/deprecated.h'). 1.287 + - Added versions of 'CImg[List]<T>::get_*()' as external functions, 1.288 + so writting 'res=cos(img)*5;' is valid. 1.289 + - Added postfix versions 'CImg[List]<T>::operator++(int)' and 'CImg[List]<T>::operator--(int)'. 1.290 + - Added function 'CImg<T>::djikstra()' that can compute a minimal path in a graph. 1.291 + - Added new constructor able to construct a new image from the dimensions of another one. 1.292 + 1.293 +* Optimizations / Modifications : 1.294 + - Recoded 'CImg<T>::save_magick()' to improve performances when saving images using Magick++ API. 1.295 + - Recoded 'CImg<T>::draw_fill()' to avoid crashes on large (volumetric) images due to stack overflow. 1.296 + Also added parameters to choose between 4 or 8 connexity for 2D images. 1.297 + - Added simple point representation in 'CImg<T>::draw_graph()'. 1.298 + -> Note that the gtype variable values have been redefined as well !!! <- 1.299 + - Added parameter 'CImg<T>::quantize()' that allows possible value renormalization. 1.300 + - Improved documentation. 1.301 + - Drawing functions accept now templated color pointer, as well as templated image containing color data. 1.302 + - Recoded Deriche filter. More fast and precise, some cases were buggy. 1.303 + - Removed class CImgStats (moved to plugin 'plugins/deprecated.h'). 1.304 + - Removed unuseful image copies in some functions. 1.305 + - Cleaning the code. 1.306 + 1.307 +* Bug corrections : 1.308 + - Corrected bug in 'CImg<T>::pseudoinverse()' concerning pseudo-inversion of non-inversible matrices. 1.309 + - Corrected return value in 'CImg<T>::get_RGBtoHSV()'. 1.310 + - Corrected value range bug in 'CImg<T>::quantize()'. 1.311 + - And other small bug corrections... 1.312 + 1.313 +*----------------------------- 1.314 +*----------------------------- 1.315 +* Changes from 1.2.3 to 1.2.4 1.316 +*----------------------------- 1.317 +*----------------------------- 1.318 + 1.319 +* New features : 1.320 + - Added macro 'cimg_for_lineXY(x,y,x0,y0,x1,y1)' that loops over an image segment (x0,y0)-(x1,y1). 1.321 + - Added function 'CImg<T>::draw_polygon()' that draws a filled polygon of any shape in the instance image. 1.322 + - Added macros 'cimg_load_plugin', 'cimg_save_plugin', 'cimglist_load_plugin' and 'cimglist_save_plugin' 1.323 + allowing to easily add file support for your own data format. 1.324 + - Added plugin 'plugins/add_fileformat.h' to show how to use these new macros to register a new 1.325 + image format in CImg. 1.326 + - Added version of 'CImg[List]<T>::{load,save}_cimg()' that is able to read/write only sub-images of 1.327 + data stored in a (big) .cimg file. 1.328 + - Added an online chat on the CImg website, so that users can interact freely. 1.329 + 1.330 +* Optimizations / Modifications : 1.331 + - Added functions 'CImg[List]<T>::save_empty_cimg()' that can be used to work with very large images. 1.332 + You can now create first an empty (big) image, then load/save sub-images into this big .cimg file, 1.333 + without needing much memory. 1.334 + - Slightly modified the header of .cimg files, so little/big endian info is stored. 1.335 + - Reorganized some 'CImg[List]<T>::load_*()' functions, trying to avoid unnecessary memory usage. 1.336 + - Recoded versions of CImg<T>::draw_triangle() that now use the Bresenham's algorithm for interpolation 1.337 + (more precise, while using only integer calculus). 1.338 + - Added versions of 'CImg<T>::draw_triangle()' and 'CImg<T>::draw_line()' that are able to map textures 1.339 + while correctly handling the perspective correction, so that 3D mapped triangles look correct now. 1.340 + 1.341 +* Bug corrections : 1.342 + - Corrected a small bug in get_coordinates() : channels of hyperspectral images with (dim>3) where 1.343 + subsampled instead of cropped for image visualization. 1.344 + - And many small bug corrections... 1.345 + 1.346 +*----------------------------- 1.347 +*----------------------------- 1.348 +* Changes from 1.2.2 to 1.2.3 1.349 +*----------------------------- 1.350 +*----------------------------- 1.351 + 1.352 +* New features : 1.353 + - Added file 'example/tron.cpp', implementing a very simple version of the 1.354 + famous 'Tron' game (2 players). 1.355 + - Added constructor that create a CImg<T> from the content of a CImgDisplay window. 1.356 + - Added support of the 'Board' library in plugin 'plugins/toolbox3d.h', allowing 1.357 + the saving of 3D objects snapshots in SVG, EPS or FIG vector-graphics formats. 1.358 + - Added function 'CImgList<T>::[get]_split()' that can split all image of an 1.359 + an image list into a specified axis. 1.360 + - Added sphere primitive in 'CImg<T>::draw_object3d()'. 1.361 + - Added function 'CImg<T>::ellipsoid()' in 'plugins/toolbox3d.h'. 1.362 + - Added useful new constructors 'CImg<T>()' and 'CImgList<T>()' with variable 1.363 + numbers of parameters that can define images or image lists initialized with 1.364 + user-specified values. Example : 1.365 + CImg<float> img(3,2,1,1, 1,2,3, 4,5,6); defines image [ 1,2,3; 4,5,6 ]. 1.366 + CImgList<unsigned char> list(3,1,3,1,1, 1,0,0, 0,1,0, 0,0,1); defines 1.367 + list of three vectors { [1;0;0], [0;1;0], [0;0;1] }. 1.368 + - Added poly-bezier curve drawing, with 'CImg<T>::draw_spline()' overload. 1.369 + - Added file 'examples/jawbreaker.cpp', implementing a very funny games featuring 1.370 + small colored balls. 1.371 + - Added demo '3D Reflection' in 'examples/CImg_test.cpp' showing some tricky uses 1.372 + with the 3D capabilities of CImg. 1.373 + - Added 'CImg<T>::draw_spline()' for drawing 2D cubic Bezier curves. 1.374 + - Added plugin 'plugins/jpeg_buffer.h', allowing to read/write directly image data 1.375 + from/to jpeg-coded memory buffers (Many thanks to Paolo Prete who made it possible !). 1.376 + - Added optional support of the LAPACK library for matrix computation. 1.377 + Define macro 'cimg_use_lapack' and link your code with LAPACK to enable it 1.378 + (LAPACK routines are slightly faster routines than native CImg ones). 1.379 + - Added function 'CImg<T>::get_constrast_LUT8()' function which returns a 256 colors 1.380 + palette that has nice properties of being well contrasted when color indices are 1.381 + close to eachothers. 1.382 + - Added function 'CImg<T>::get_rainbow_LUT8()' that returns a rainbow-type palette. 1.383 + - Added shortcuts CTRL+PAGE[UP,DOWN] in 'CImg<T>::display_object3d()' to brighten or 1.384 + darken the 3D object. 1.385 + 1.386 +* Optimizations / Modifications : 1.387 + - In 'CImg<T>::HSVtoRGB()' and 'CImg<T>::RGBtoHSV()', the H components is now expressed in degree. 1.388 + - Improved multi-key testing with CImgDisplay. 1.389 + - Added and modified some 'operator<<()' and 'operator>>()' in 'CImg<T>' and 'CImgList<T>'. 1.390 + - Renamed 'plugins/primitives3d.h' to 'plugins/toolbox3d.h', and added a new example 1.391 + 'examples/toolbox3d.cpp' that shows how to use it. 1.392 + - Renamed 'plugins/alias.h' to 'plugins/deprecated.h'. 1.393 + - Moved function 'CImg<T>::resize_object3d()' to 'plugins/toolbox3d.h'. 1.394 + - Simplified 'CImgList<T>::insert()' procedures, and removed functions 'CImgList<T>::insert_shared()'. 1.395 + - Added functions parameters for almost all drawing functions, allowing the correct use of 1.396 + patterns in line drawing (beware, some functions signatures have been slightly modified). 1.397 + - Renamed 'CImg<T>::feature_selection()' as 'CImg<T>::get_coordinates()' 1.398 + (for better coherence with overall function names). Include 'plugins/deprecated.h' for backward 1.399 + compatibility. 1.400 + - Optimized function 'CImg<T>::draw_line()'. 1.401 + - Recoded function 'CImg<T>::draw_circle()', uses now the more precise Bresenham's circle 1.402 + algorithm. 1.403 + - Improved function 'CImg<T>::sphere()', in plugin 'toolbox3d.h', reducing drastically 1.404 + the number of created points in the 3D mesh. 1.405 + 1.406 +* Bug corrections : 1.407 + - Corrected some small bugs in CImg.h to allow the compilation with the Intel C++ Compiler (icc & icl). 1.408 + - Corrected bug in copy constructor of CImgList<> that didn't make shared copy of images. 1.409 + - Fixed bug in 'CImg<T>::symmetric_eigen()' : some negative eigenvalues where miscalculated when 1.410 + their absolute values was also an eigenvalue of the considered matrix. 1.411 + - And many small bug corrections... 1.412 + 1.413 +*----------------------------- 1.414 +*----------------------------- 1.415 +* Changes from 1.2.1 to 1.2.2 1.416 +*----------------------------- 1.417 +*----------------------------- 1.418 + 1.419 +* New features : 1.420 + - Added 'CImg<T>::distance_function()' that can compute distance function to the 0-isophote. 1.421 + - Added curve editor example in 'examples/curve_editor.cpp'. 1.422 + 1.423 +* Bug corrections : 1.424 + - Corrected small bug when trying to found pathname under Windows. 1.425 + - Corrected bug when using XSHM extension on Mac OS X. 1.426 + - Corrected/Improved platforms detection by testing the right predefined BSD macros + extra architectures 1.427 + (Thanks to Marc Espie). 1.428 + - And many small bug corrections... 1.429 + 1.430 +*----------------------------- 1.431 +*----------------------------- 1.432 +* Changes from 1.2.0 to 1.2.1 1.433 +*----------------------------- 1.434 +*----------------------------- 1.435 + 1.436 +* New features : 1.437 + - Added macro 'cimg_for_spiralXY', allowing to loop over an image using a spiral-shaped trajectory. 1.438 + - Added shortcut 'CTRL+O' to save object as .off file in 'CImg<T>::display_object3d()'. 1.439 + - Added operator bool() in CImg, CImgList, CImgStats, CImgDisplay to get 1.440 + more concise code when testing if an object is empty or not. 1.441 + - Added empty state for CImgDisplay, can be tested with 'CImgDisplay::is_empty()'. 1.442 + - Added '.off' file support in 'inrcast'. 1.443 + 1.444 +* Optimizations / Modifications : 1.445 + - Removed all the obsolete #define to ensure compatibility with really older versions of CImg. 1.446 + You can now include the file 'plugins/alias.h' to get these #define back. 1.447 + - Added functionalities and debugged 'CImg<T>::save_off()' and 'CImg<T>::load_off()'. 1.448 + 1.449 +* Bug corrections : 1.450 + - Corrected illumination bug in 'CImg<T>::draw_object3d()'. 1.451 + - Corrected bug in 'CImg<T>::crop()' family functions. 1.452 + - Corrected small bugs in 'CImgList<T>' (insertion functions) 1.453 + - Corrected 'CImg<T>::load_tiff()' function. 1.454 + - And many small bug corrections... 1.455 + 1.456 +*----------------------------- 1.457 +*----------------------------- 1.458 +* Changes from 1.1.9 to 1.2.0 1.459 +*----------------------------- 1.460 +*----------------------------- 1.461 + 1.462 +* New features : 1.463 + - Added function 'CImg<T>::draw_grid()' that draws a grid on the instance image 1.464 + (useful when combined with CImg<T>::draw_axis and CImg<T>::draw_graph). 1.465 + - Added multi-threading support in GREYCstoration plugin and command line version. 1.466 + - Added support for GraphicsMagick conversion tools (http://www.graphicsmagick.org). 1.467 + - Added plugin 'integral_line.h' that define functions to track integral lines in images. 1.468 + - Added CTRL+key combinations in 'CImg<T>::display_object3d' and 'CImg<T>::feature_selection()' : 1.469 + - CTRL+S : Save snapshot. 1.470 + - CTRL+D : Double window resolution. 1.471 + - CTRL+C : Divide window resolution. 1.472 + - CTRL+F : Fullscreen mode. 1.473 + - Added new normalization mode=3, now set by default when using CImgDisplay. Try to adapt 1.474 + the display normalization to the image type. 1.475 + - Added new example 'edge_explorer.cpp' (thanks to Orges Leka). 1.476 + - Added new example 'greycstoration4gimp.cpp' (which is a GREYCstoration plugin for the Gimp, thanks 1.477 + to Grzegorz Szwoch) 1.478 + - Added functions 'CImg<T>::[get]_round()' that round values of an image. 1.479 + - Added function 'CImg<T>::draw_line()' able to draw joined set of segments. 1.480 + - Added interpolation_type=-1 for 'CImg<T>::resize()' corresponding to raw memory resizing, without 1.481 + interpolation. 1.482 + - Added function 'CImg<T>::permute_axes()' that can be used to swap order of image axes 1.483 + (useful for converting ...RRRRRRGGGGGBBBBB... to ...RGBRGBRGBRGB....) 1.484 + - Added support for NIFTI files (extension '.nii') added in 'CImg<T>::load_analyze()'. 1.485 + - Added function 'CImg<T>::[get_]displacement_field()' that can estimate displacement field between two images. 1.486 + - Added default constructor for the 'CImgDisplay' class, which creates a window initially in the 'closed' state. 1.487 + - Added directory 'compilation/unix_debian_package' for easy construction of .deb package for CImg. 1.488 + - Added new search parth to find 'medcon' on Windows. 1.489 + - Added Debian package configuration files to generate .deb file from the CImg directory 1.490 + (a .deb file is now available from the CImg website). 1.491 + 1.492 +* Optimizations / Modifications : 1.493 + - Renamed all '*_convert' functions to '*_imagemagick'. 1.494 + - Fonction CImg<T>::draw_object3d() has been slightly optimized (light computation for 1.495 + outside primitives is not done anymore). 1.496 + - Small changes in cimg:: traits. 1.497 + - Removed 'precision' arguments in 'CImg<T>::draw_axis()'. 1.498 + - The use of non in-place arithmetical operators is now possible in plug-ins. 1.499 + - Optimized the search of different pathes on Windows, thanks to Martin Petricek. 1.500 + - Cleaned some portions of the code. 1.501 + 1.502 +* Bug corrections : 1.503 + - CImg<T>::save_off() has been debugged. 1.504 + - Versions of 'CImg<T>::load_tiff()' and 'CImg<T>::save_tiff()' that use libtiff has been 1.505 + debugged and improved. 1.506 + - fread() and fwrite() has been recoded to handle the Windows file size limit of 64Mb over network 1.507 + (this is a Windows bug !). 1.508 + - GREYCstoration plugin has been modified to better deal with 16 and 32bits images. 1.509 + - And many other small bug corrections.... 1.510 + 1.511 +*----------------------------- 1.512 +*----------------------------- 1.513 +* Changes from 1.1.8 to 1.1.9 1.514 +*----------------------------- 1.515 +*----------------------------- 1.516 + 1.517 +* New features : 1.518 + - Added Rice noise distribution in 'CImg<T>::noise()' (thanks to H.E Assemlal). 1.519 + - Added functions 'CImg<T>::sharpen()' and 'CImg<T>::get_sharpen()' that can enhance contrast in images, 1.520 + using nonlinear 2D/3D multi-valued shock filters. 1.521 + - Added function 'CImgStats::is_empty()' to check is a stat object has been initialized or not. 1.522 + - Added function 'CImg<T>::contains()' and 'CImgList<T>::contains()' that can test if a pixel is 1.523 + present in an image. 1.524 + - Added new demo 'CImg-breakout' in 'examples/CImg_demo.cpp' (Arkanoid-style game in 64 lines of code!). 1.525 + - Functions 'CImgDisplay::hide_mouse()' and 'CImgDisplay::show_mouse()' have been added, allowing to 1.526 + hide/show the cursor when it is over a display window. 1.527 + - Functions 'CImg<T>::[get_]structure_tensorXY[Z]()' have been added, allowing to compute the 2D or 1.528 + 3D structure tensor field from an image. 1.529 + - Function 'CImgDisplay::set_mouse()' is now working on Windows. 1.530 + - Added load/save functions to deal directly with std::FILE structures. 1.531 + - Added members 'CImgDisplay::keys[256]' and 'CImgDisplay::buttons[256]' allowing to get the latest 256 keys 1.532 + or mouse buttons modifications done on the display window. 1.533 + - Added function 'CImgDisplay::is_typed()' to test if a certain combination of key has been typed 1.534 + on the display window. 1.535 + - Added keyboard shortcut 'CTRL+S' in 'CImg<T>::display_object3d()' to be able to save snapshot of current 3d view. 1.536 + 1.537 +* Optimizations / Modifications : 1.538 + - Recoded the greycstoration plug-in as the file 'plugins/greycstoration.h'. The command line version 1.539 + 'examples/greycstoration.cpp' has been greatly improved, including tiled-mode and less memory consumption. 1.540 + The use of GREYCstoration is now more easy, the code is more factorized. 1.541 + - File extension '.txt' is now considered as '.dlm' (ascii file). 1.542 + 1.543 +* Bug corrections : 1.544 + - Plugin 'plugins/cimgmatlab.h' has been corrected. 1.545 + 1.546 +*----------------------------- 1.547 +*----------------------------- 1.548 +* Changes from 1.1.7 to 1.1.8 1.549 +*----------------------------- 1.550 +*----------------------------- 1.551 + 1.552 +* New features : 1.553 + - Added conditional use of the FFTW3 library (http://www.fftw.org) allowing more flexibility and speed 1.554 + on DFT computation, when used. 1.555 + - Added new macro 'cimg_help()', displays arbitrary user-defined messages when program is invoked 1.556 + with the option '-h' or '--help'. 1.557 + - Added new macro 'cimglist_apply()' allowing to apply a single function to all members of a list : 1.558 + Ex: cimglist_apply(list,blur)(3.0f); 1.559 + - Added functions 'CImg<T>::resize_object3d()', 'CImgList<T>::resize_object3d()', 1.560 + 'CImg<T>::get_resize_object3d()' and 'CImgList<T>::get_resize_object3d()' to ease resizing and 1.561 + centering 3d objects. 1.562 + - Added function 'CImgDisplay::set_mouse()' to set the mouse pointer coordinates (X11 only). 1.563 + - Added functions 'CImg<T>::atan()', 'CImg<T>::acos()', 'CImg<T>::asin()' and their get_* counterparts. 1.564 + 1.565 +* Optimizations / Modifications : 1.566 + - 'cimg_debug' has new value signification. Can now choose between displaying error message on the console 1.567 + or on modal windows, even when 'cimg_display_type' is not 0. 1.568 + - Updated CImg presentation slides in 'documentation/slides_cimg.pdf', more complete now. 1.569 + - Added new directories in path search for 'convert' and 'medcon' and 'temporary path'. 1.570 + 'convert' or 'medcon' found in the current directory './' now override the default ones. 1.571 + - Added safer support for Windows 64bits. 1.572 + - Improved version of 'cimg::info()' for debugging facilities. Now displays almost every 1.573 + important library variables and parameters. 1.574 + - Static version of CImg<T>::sequence() now return a column vector instead of a line. 1.575 + - Slightly changed the tracking algorithm and few other things in 'examples/dtmri_view.cpp', 1.576 + allowing more precision in the fiber computation. 1.577 + - Modified the 'CImg<T>::feature_selection()' function : replaced the moving hatch by a static 1.578 + one, less fun but also less time consuming. One small selection bug for 3D volumes has been 1.579 + also corrected. 1.580 + - Corrected line routine for 64bits architectures. 1.581 + - Replaced 'CImg<T>::scroll()' by 'CImg<T>::translate()'. 1.582 + - Replaced all 'cimg_map' by more coherent names based on 'cimg_for_*'. Same for 'cimglist_map'. 1.583 + Compatibility with previous versions of CImg is ensured if 'cimg_strict' is not defined. 1.584 + - Recoded functions to retrieve parts of the images : get_channel(), get_slice(), ... 1.585 + - Improved the cimg::system() function. 1.586 + - Added some tests and display extra warnings when saving images with wrong formats. 1.587 + 1.588 +* Bug corrections : 1.589 + - Corrected small bug in 'CImg<>::blur_anisotropic()', 'examples/greycstoration.cpp' and 'plugins/greycstoration4integration.h'. 1.590 + - And lot of minor bug corrections and optimizations ..... 1.591 + 1.592 +*----------------------------- 1.593 +*----------------------------- 1.594 +* Changes from 1.1.6 to 1.1.7 1.595 +*----------------------------- 1.596 +*----------------------------- 1.597 + 1.598 +* New features : 1.599 + - Added 'operator<<()' and 'operator>>()' for bit shift operations on all images pixels. 1.600 + - Added most of mathematical operators in the 'CImgList' class. 1.601 + - Added new demo 'Image Waves' in 'examples/CImg_demo.cpp'. 1.602 + - Added mouse wheel support on Windows (incomplete!) 1.603 + 1.604 +* Optimizations / Modifications : 1.605 + - Renamed class 'CImgl' into 'CImgList', also renamed macro 'cimgl_map' to 'cimglist_map'. 1.606 + Backward compatibility is assured in 1.1.7 version, but think about replacing the old names 1.607 + by the new ones for future CImg versions. 1.608 + - Removed 'operator<<()' which appended an image to another one 1.609 + - Recoded lot of non in-place mathematical operators to avoid numerical truncations. 1.610 + It may have a great influence on your code. For instance writting '0.5+img' will result in a CImg<double> 1.611 + image, even if 'img' was a CImg<float>. 1.612 + - Recoded most of 'CImg<T>::get_resize()' function : linear interpolation performs now really faster, and 1.613 + an additional parameter allows to select between different conditions for border values. 1.614 + - Recoded 'CImg<T>::draw_line()' so that it now uses a classical Bresenham algorithm, avoiding rounding errors. 1.615 + - Renamed 'CImg<T>::draw_axe' as 'CImg<T>::draw_axis'. 1.616 + 1.617 +* Bug corrections : 1.618 + - Corrected some functions that did not performed correctly on shared images. 1.619 + - Corrected small bug in 'plugins/primitives3d.h' in function 'CImg<T>::sphere()'. 1.620 + - Corrected 'CImg<T>::feature_selection()' when displaying 'CImg<bool>' images. 1.621 + - Corrected 'CImg<T>::load_cimg()' : is now able to load bool images. 1.622 + - And lot of minor bug corrections and optimizations ..... 1.623 + 1.624 +*----------------------------- 1.625 +*----------------------------- 1.626 +* Changes from 1.1.5 to 1.1.6 1.627 +*----------------------------- 1.628 +*----------------------------- 1.629 + 1.630 +* New features : 1.631 + - Added DTMRI volumetric file viewer, in 'examples/dtmri_view.cpp'. 1.632 + - Added 3D sprite display support in 'CImg<T>::draw_object3d()'. 1.633 + 1.634 +* Optimizations / Modifications : 1.635 + - Rewritten a lot of constructor/assignments functions for CImg<T> and CImgl<T>. 1.636 + Removed shared capabilities of CImgl<T>, but improved these ones for CImg<T>. 1.637 + 1.638 +* Bug corrections : 1.639 + - And lot of minor bug corrections and optimizations ..... 1.640 + 1.641 +*----------------------------- 1.642 +*----------------------------- 1.643 +* Changes from 1.1.4 to 1.1.5 1.644 +*----------------------------- 1.645 +*----------------------------- 1.646 + 1.647 +* New features : 1.648 + - Added plugin 'CImg/primitives3d.h', adding functions that can generate 1.649 + basic 3D triangulated primitives. 1.650 + - Added Poisson noise capability in CImg<T>::noise() (This patch has been proposed by Jerome Boulanger) 1.651 + - Added wheel mouse support in 'CImgDisplay', now used in 'CImg<>::feature_selection()' to go through slices of 1.652 + 3D volumes (unfortunately for X11 systems only). 1.653 + - Added function 'CImgDisplay::toggle_fullscreen()' to allow easy and dynamic fullscreen switching of a display. 1.654 + - Added screen resolution switching capabilities when using the Xrandr extension, under X11 (#define cimg_use_xrandr). 1.655 + - Added support for ImageMagick++ built-in library (parts of the patch proposed by Christoph Hormann). 1.656 + - And lot of small functions to ease the life... 1.657 + 1.658 +* Optimizations / Modifications : 1.659 + - CeCiLL-C license now applies for the file 'CImg.h'. This license (close to the LGPL one) is more adapted 1.660 + for library components as CImg. The examples stay in previous CeCiLL license (close to the GPL one). 1.661 + - Recoded 'CImg<T>::draw_axe?()' (where ? can be 'X','Y' or 'XY') so that it can now be used to draw non-linear values along axes 1.662 + (for instance logarithmic-varying labels). 1.663 + - Attribute 'force' have been removed in 'CImgDisplay::resize()'. 1.664 + - Recoded most constructors and assign functions in CImg<T> and CImgl<T>. 1.665 + - Recoded most of the CImgDisplay class to allow more flexibility and refreshing speed. 1.666 + - Renamed 'CImgDisplay::title()' to 'CImgDisplay::set_title()'. 'CImgDisplay::title' is now a class variable 1.667 + that stores the current title of the display window. 1.668 + - 'CImgDisplay::closed', 'CImgDisplay::resized', 'CImgDisplay::fullscreen' and 'CImgDisplay::moved' have been 1.669 + renamed to 'CImgDisplay::is_closed', 'CImgDisplay::is_resized', 'CImgDisplay::is_fullscreen' and 1.670 + 'CImgDisplay::is_moved', for more coherent variable names. 1.671 + - 'CImg<T>::display_object3d()' : can now specify an input pose matrix, as well as get the output pose matrix, 1.672 + after the user rotated the object. Also, this function has been optimized. 1.673 + 1.674 +* Bug corrections : 1.675 + - Corrected sorting bug in 'CImg<T>::symmetric_eigen()' and 'CImg<T>::SVD()' 1.676 + - When using shared memory images, some 'CImg<T>::get_*()' methods returned a shared memory image too. 1.677 + - And lot of minor bug corrections and optimizations ..... 1.678 + 1.679 +*----------------------------- 1.680 +*----------------------------- 1.681 +* Changes from 1.1.3 to 1.1.4 1.682 +*----------------------------- 1.683 +*----------------------------- 1.684 + 1.685 +* New features : 1.686 + - Added fullscreen mode support on X11-based systems. 1.687 + - Added CImg<>::save_dicom(), allowing to save DICOM files, via XMedcon. 1.688 + - Added phong-like rendering capabilities in 'CImg<T>::draw_triangle()' and 'CImg<T>::draw_object3d()'. 1.689 + - Added a directory 'plugins/' that contains some useful CImg plugins, developed by third parties. 1.690 + - Added bicubic interpolation option in functions 'CImg<T>::get_rotate()' 1.691 + - Added new example 'Fireworks' in 'examples/CImg_demo.cpp'. 1.692 + - Added new fonts with increasing sizes that can be used in 'CImg<T>::draw_text()'. 1.693 + Also simplified function 'CImg<T>::get_font()', and added size parameter in 'CImg<T>::draw_text()'. 1.694 + 1.695 +* Optimizations / Modifications : 1.696 + - Optimized 'CImg<T>::get_resize()'. 1.697 + - Allows the use of the MIT-XSHM extension for X11-based display, allowing to speed up CImgDisplay rendering 1.698 + (roughly a factor of 3 when using this extension). 1.699 + - Optimized CImgDisplay::render() for X11-based systems. Image display is now faster (roughly a factor of 2.5). 1.700 + - Modified CImg<>::display_object3d() : keyboard is now not handled, added translation using 3rd mouse button. 1.701 + Added small axes at the bottom left to see object orientation. 1.702 + - Removed some unuseful 'const' keywords in some function return values, removing warnings 1.703 + when compiling with icc or icl. 1.704 + - Renamed 'CImg<T>::RGBtoYCbCr8()' to 'CImg<T>::RGBtoYCbCr()' (and derived functions). 1.705 + - Gathered 'CImg<T>::dirichlet_pix?d()' and 'CImg<T>::neumann_pix?d()' in a single function 'CImg<T>::pix?d()'. 1.706 + - Renamed 'CImg_test.cpp' to 'CImg_demo.cpp' 1.707 + 1.708 +* Bug corrections : 1.709 + - Corrected bug with X11 displays : sometimes, black images were displayed, needing an explicit refresh. 1.710 + - Corrected bug with X11 displays related to ClientMessage. Windows are not closed when other applications are opened. 1.711 + - Corrected 'CImgl<T>::remove()' : Wrong memory deallocation could happen sometimes. 1.712 + - And lot of minor bug corrections and optimizations ..... 1.713 + 1.714 +*----------------------------- 1.715 +*----------------------------- 1.716 +* Changes from 1.1.2 to 1.1.3 1.717 +*----------------------------- 1.718 +*----------------------------- 1.719 + 1.720 +* New features : 1.721 + - Added a new example source file 'examples/image_surface.cpp', that renders an image as a surface in a 3D space. 1.722 + - Added a new example source file 'examples/mcf_levelsets3D.cpp', that performs Mean Curvature Flow of a 2D surface, using level sets. 1.723 + - Added a version of 'CImg<T>::draw_triangle()' that can draw Gouraud-shaded triangles (flat and textured versions). 1.724 + - Added 'CImg<T>::get_rotation_matrix()' that returns a 3x3 rotation matrix from a quaternion or a rotation vector. 1.725 + - Added 'CImg<T>::draw_object3d()' that can draw a colored/textured 3d object on images. 1.726 + - Added 'CImgDisplay::display_object3d()' and 'CImg<T>::display_object3d()' which run a high-level interface that 1.727 + can view a user-defined 3d object. 1.728 + - Added two 3D rendering examples in 'examples/CImg_test.cpp', that shows how to use 3D rendering capabilities of CImg in few lines. 1.729 + - Added 'CImg<T>::marching_cubes()' and 'CImg<T>::marching_squares' that can be used to triangularize an implicit 2D or 3D 1.730 + curve or surface from an image or a function. 1.731 + - Added 'CImg<T>::get_load_off()' and 'CImg<T>::save_off()' that manages OFF files 1.732 + (files describing 3D object, GeomView format, see 'http://www.geomview.org/'). 1.733 + 1.734 +* Optimizations / Modifications : 1.735 + - Removed the 'multiplexed' variable in one of the CImg constructor. This feature as not generic enough to be integrated 1.736 + in a constructor, and is so simple to code (one line).. This has been replaced by the new 'shared' capabilities of CImg. 1.737 + - Added a 'shared' variable in CImg<T> and CImgl<T>. This allows to completely remove CImgSubset<T> and CImglSubset<T>, and 1.738 + allows more flexibility for using shared memory. A lot of functions relative to shared-memory images have been added also. 1.739 + Please look closely to the online reference. 1.740 + - Added a fast approximation method in 'examples/greycstoration.cpp' (set by default) allowing to speed up the 1.741 + restoration process almost by a factor x3. 1.742 + - Recoded 'CImg<T>::get_dilate()' and 'CImg<T>::get_erode()' : it is now possible to specify a structuring element. 1.743 + - Due to high difficulty in maintaing all project files in the 'compilation/' directory, I removed most of them except one 1.744 + template file for each different C++ IDE. Just replace the default source file 'CImg_test.cpp' in the project file by the one 1.745 + you want, to compile you desired example. 1.746 + - Renamed 'CImg<T>::get_2dprojections()' to 'CImg<T>::get_projections2d()'. 1.747 + - Removed 'examples/render3d.cpp'. As CImg has now built-in functions for 3D rendering, this example was obsolete. 1.748 + Look at the new example appearing in 'examples/CImg_test.cpp' to see how to do easy 3D rendering with CImg. 1.749 + 1.750 +* Bug corrections : 1.751 + - Corrected 'CImg<T>::cubic_pix1d()' and 'CImg<T>::cubic_pix2d()', used for cubic and bicubic interpolations. 1.752 + - Corrected 'cimg_map2x2()' and 'cimg_map4x4()' to avoid warning when compiling with g++. 1.753 + - Added a simple trick to ease the use of libjpeg and libpng on Windows (thanks to bugzhao). 1.754 + - Corrected 'CImg<T>::load_jpeg()' and 'CImg<T>::save_jpeg()' to handle all possible color spaces used in JPEG files. 1.755 + - Corrected 'CImg<T>::get_split()' to avoid bug with very large images. 1.756 + - Corrected 'CImg<T>::load_dicom()' and 'cimg::medcon_path()' to ease the loading of medcon files on Windows. 1.757 + - And lot of minor bug corrections.... 1.758 + 1.759 +*----------------------------- 1.760 +*----------------------------- 1.761 +* Changes from 1.1.1 to 1.1.2 1.762 +*----------------------------- 1.763 +*----------------------------- 1.764 + 1.765 +* Bug corrections : 1.766 + - Bug corrected in 'CImg<T>::load_ppm()' and 'CImg<T>::save_ppm()' : 16 bits PPM images were not correctly stored. 1.767 + - (Stupid) bug corrected in 'CImg<T>::get_sort()' : Return value was a reference to a temporary object. 1.768 + - Bug corrected in 'CImg<T>::resize_halfXY()' that caused a possible segmentation fault. 1.769 + - Bug corrected in 'CImg<T>::move()' : Moving an hidden window (on X11) is now working. 1.770 + - Handling pixel access to const images : writing pixel values in const images is now forbidden. 1.771 + - 'CImg<T>::det()' : Determinant of general matrices can now be computed. 1.772 + - 'CImgDisplay' : Added some changes in Microsoft-specific function call to be able to compile with Visual Studio 2005. This compiler seems to be 'buggy', I had very strange behaviors at run-time with it (changing an 'int' to 'const int' declaration solves a 'problem' in CImg<>::draw_ellipse() that was present only with this compiler...) 1.773 + - 'CImg<>::load_dlm()' : small bug corrected. Can now read DLM files with no CR at the last line. 1.774 + - And other small corrections.... 1.775 + 1.776 +* Optimizations / Modifications : 1.777 + - In 'CImg<T>::save_convert()', the temporary file is now saved in PNM format, instead of RGBA as before. This has been done 1.778 + because of a strange bug in ImageMagick's convert, refusing to read some RGBA files. 1.779 + - CImgDisplay::move() now shows automatically the display when it is in a closed state. 1.780 + - Moved the trait cimg_library::largest<T,t> in cimg_library::cimg::largest<T,t>. 1.781 + - Renamed 'CImg<T>::quicksort()' to 'CImg<T>::sort()'. 1.782 + - Renamed 'CImg<T>::create()' and 'CImg<T>::copy()' to 'CImg<T>::assign()'. 1.783 + - 'CImg<T>::inverse()' can now uses the LU matrix decomposition (or the SVD one as before). 1.784 + - Optimized memory handling when playing with lists of images CImgl<>. 1.785 + - Optimized some CImg<T> constructors. 1.786 + 1.787 +* New features : 1.788 + - Added a new demo : 'Blobs Editor' in CImg_test.cpp. 1.789 + - Added types 'CImg<T>::iterator', 'CImg<T>::const_iterator', 'CImgl<T>::iterator' and 'CImgl<T>::const_iterator' to allow 1.790 + the easy use of STL algorithms on CImg and CImgl structures. 1.791 + - Added several functions that acts like in STL vectors and lists in CImg<T> and CImgl<T> : 1.792 + CImg<T>::assign(), CImg<T>::clear(), CImg<T>::at(), CImg<T>::back(), CImg<T>::front(), CImg<T>::begin(), CImg<T>::end(), 1.793 + CImgl<T>::assign(), CImgl<T>::clear(), CImgl<T>::at(), CImgl<T>::back(), CImgl<T>::front(), 1.794 + CImgl<T>::begin(), CImgl<T>::end(), CImgl<T>::push_back(), CImgl<T>::push_front(), CImgl<T>::pop_back(), CImgl<T>::pop_front(). 1.795 + - Added 'CImg<T>::MSE()' and 'CImg<T>::PSNR()' that compute the MSE (Mean Squared Error) and PSNR 1.796 + (Peak Signal to Noise Ratio) between two images. 1.797 + - Added 'CImg<T>::solve()' and 'CImg<T>::get_solve()', allowing to solve linear systems. 1.798 + - Added 'CImg<T>::pseudoinverse()' and 'CImg<T>::get_pseudoinverse()' allowing to compute the Moore-Penrose 1.799 + matrix inverse (useful for computing solutions to the least-square problem). 1.800 + 1.801 +*----------------------------- 1.802 +*----------------------------- 1.803 +* Changes from 1.1.0 to 1.1.1 1.804 +*----------------------------- 1.805 +*----------------------------- 1.806 + 1.807 +* Bug corrections : 1.808 + - in 'CImgl<T>::insert()' : Insertion at non-last position was bugged. 1.809 + - in 'greycstoration.cpp' : Corrected some bugs in the algorithm and improved user interface. 1.810 + - in 'CImg<T>::blur_anisotropic()' : Abusive vector normalization was done before. Now it is corrected. 1.811 + - And many other bugs... 1.812 + 1.813 +* Optimizations / Modifications : 1.814 + - Removed macros 'cimg_test*()' and modified argument checking in most of the functions, so that trying to act 1.815 + on an empty image does nothing instead of an error. 1.816 + - Renamed all static methods CImg<T>::load*() into CImg<T>::get_load*(). This has been done to be coherent with 1.817 + the naming convention of other CImg methods. Also, added new functions CImg<T>::load*() (non static) that corresponds 1.818 + to in-place image loading. 1.819 + - Renamed CImg RAW extension from .raw to .cimg. .raw files are not considered as real raw data without 1.820 + header. New functions 'CImg<T>::load_get_raw()' and 'CImg<T>::save_raw()' have been added to load and save .raw files. 1.821 + - In 'greycstoration.cpp' : improved algorithm and parameters. Also add improved visualization tool at the end 1.822 + of the image regularization. 1.823 + - Replaced some cimg:: static functions to inlined one, to prevent compiler bug on VS7.1, when trying 1.824 + to link multiple CImg-based modules. 1.825 + - Replaced parameter 'linear' to 'scheme' in 'CImg<T>::blur_anisotropic()', allowing the use of 2nd order 1.826 + Runge-Kutta integration, instead of just nearest-neighbor or linear ones. 1.827 + 1.828 +* New features : 1.829 + - Introduced a trait 'cimg::largest' that allows to find the largest data type between two types. CImg functions 1.830 + use it for instance to return a CImg<float>, when trying to compute the gradient of an CImg<unsigned char>. 1.831 + It was not the case before, needing an explicit case, as in 'CImg<float>(img).get_gradientXY()'. 1.832 + - Added 'CImg<T>::operator<<', 'CImgl<T>::operator<<' and 'CImgl<T>::operator>>' that allows to 1.833 + insert images in list or append an image to another one. 1.834 + - New project file for using with X-Code (on Mac OS X) has been added to the 'compilation/' directory. 1.835 + Thanks to Werner Jainek who made it possible. 1.836 + 1.837 +*----------------------------- 1.838 +*----------------------------- 1.839 +* Changes from 1.0.9 to 1.1.0 1.840 +*----------------------------- 1.841 +*----------------------------- 1.842 + 1.843 +* Bug corrections : 1.844 + - in 'CImg<T>::load_raw()' : possible buffer overflow corrected. 1.845 + - in 'CImg<T>::load_dlm()' : the use of std::rewind() didn't work when reading the standart input. Function has been 1.846 + recoded so it reads the file in one pass. 1.847 + - Corrected 'CImg<T>::anisotropic_blur()'. 1.848 + - Corrected 'CImg<T>::symeigen()' : corrected computation bugs. 1.849 + - Corrected 'CImg<T>::get_resize()' : linear and bicubic interpolations were not correctly handled (minor). 1.850 + - Corrected 'CImgDisplay' to avoid malloc/dealloc problem with newer versions of X11. 1.851 + - Corrected 'CImgDisplay' to handle better thread termination under X11 (Unix and MacOSX). 1.852 + - Corrected 'greycstoration.cpp' (small bug in inpainting and non-curvature scheme). 1.853 + 1.854 +* Optimizations / Modifications : 1.855 + - Updated documentation. 1.856 + - Modified Makefile for direct compilation of executables under Linux (ex : make CImg_test). 1.857 + - Modified Exceptions error messages for more simplicity and clarity. 1.858 + - Removed parameter 'alpha' in 'CImg<T>::get_gradientXY()' and 'CImg<T>::get_gradientXYZ()'. 1.859 + - Renamed 'CImg<T>::flip()' to 'CImg<T>::mirror()'. 1.860 + - Renamed 'CImg<T>::get_3dplanes()' to 'CImg<T>::get_2dprojections()'. 1.861 + - Renamed 'CImgROI<T>' to 'CImgSubset<T>'. Also removed functions 'CImg<T>::ref_*' and replaced it by 1.862 + 'CImg<T>::pointset()', 'CImg<T>::lineset', 'CImg<T>::planeset' and 'CImg<T>::channelset'. 1.863 + 1.864 +* New features : 1.865 + - Added 'CImg<T>::RGBtoLUT()' and 'CImg<T>::LUTtoRGB()' that convert an RGB image to an indexed image (using a palette). 1.866 + - Added 8 bits display mode support in CImgDisplay. 1.867 + - Added 'CImg<T>::RGBtoHSV()' and 'CImg<T>::HSVtoRGB()' that handle the conversion from and to HSV color space. 1.868 + - Added 'CImg<T>::kth_smallest()' and 'CImg<T>::median()' that find respectively the kth smallest 1.869 + element and the median of values in a CImg<T> instance. 1.870 + - Added 'CImg<T>::blur_median()' and 'CImg<T>::get_blur_median()' that apply a median filter on an image. 1.871 + - Added 'CImg<T>::load_parrec()' able to read PAR-REC (Philips) image file formats. 1.872 + - Added 'CImgDisplay::title()' that can be used to change the display window title. 1.873 + - Added 'CImg<T>::RGBtoYUV()' and 'CImg<T>::YUVtoRGB()' that convert between RGB and YUV color spaces. 1.874 + - Added 'CImg<T>::RGBtoYCbCr8()' and 'CImg<T>::YCbCr8toRGB()' that convert between RGB and YCbCr color spaces (for unsigned char 1.875 + pixels). 1.876 + - Added 'CImg<T>::has_same*()' where * can be 'X','Y','Z','XY','XYZ','XYZV' to compare image dimensions. 1.877 + - Added 'CImg<T>::is_empty()' that returns 'true' is the image is empty. 1.878 + - Added 'CImg<T>::load_dicom()' that loads an image in Dicom file format. This function uses the tool 'medcon' that 1.879 + has to be installed (http://xmedcon.sourceforge.net/). 1.880 + - Added 'CImg<T>::load_yuv()', 'CImgl<T>::load_yuv()' and 'CImg<T>::save_yuv()', 'CImgk<T>::save_yuv()' 1.881 + that load and save respectively one frame or the entire movie from a .yuv file. 1.882 + - Added 'CImglSubset<T>' which is a class that sub-references an image list 'CImgl<T>'. 1.883 + 1.884 +*----------------------------- 1.885 +*----------------------------- 1.886 +* Changes from 1.0.8 to 1.0.9 1.887 +*----------------------------- 1.888 +*----------------------------- 1.889 + 1.890 +* Bug corrections : 1.891 + - Memory leak corrected in 'CImg<T>::load_bmp()'. 1.892 + - CImg now supports the MIPS compiler on SGI (Thanks to Matt Hanson who made it possible). 1.893 + - Corrected non-global X11 variables in multi-module projects using CImg.h (thanks also to Matt Hanson for 1.894 + his precise bug report). 1.895 + - In CImg<T>::load_convert() and save_convert(), random filenames are now tested before read/write. 1.896 + - Removed unuseful template in 1D CImg<T>::draw_gaussian() function. 1.897 + - Recoded CImgDisplay::render() with XPutPixel() again for maximum compability between X11-based architectures. 1.898 + - In CImgStats, the variance field was computed actually as the standart deviation. This is now corrected, and the variance 1.899 + is really the variance ! 1.900 + 1.901 +* Optimizations / Modifications : 1.902 + - CImgDisplay fields mousex and mousey changed to fields mouse_x and mouse_y. This is done to be more coherent 1.903 + with other CImgDisplay fields. The inconvenience should be minor, just replace the fields by the right names. 1.904 + - CImgDisplay functions window_posx() and window_posy() changed to fields window_x and window_y. 1.905 + - Eigenvalue computation with CImg<T>::eigen() and symeigen() sorts the eigenvalues in inverse order from now on. 1.906 + The eigenvector matrix is also transposed, to be more close to the standart functions in eigenvalue computation. 1.907 + - Renamed macro variable 'cimg_lapack' in 'cimg_use_lapack'. 1.908 + - CImg<T>::save() can now handle alpha channel in PNG images (with 4-channels images). 1.909 + - Recoded CImg<T>::noise() to handle numerical limits in template types (esp. for unsigned char and char). 1.910 + - Recoded CImg<T>::pow() to be faster with usual int powers (0,1,2,3,4). 1.911 + - Added conversions functions for all color spaces (R,G,B), (X,Y,Z), (x,y,Y) and (L,a,b). 1.912 + - Added a 'pattern' parameter in 'CImg<T>::draw_ellipse()' and 'CImg<T>::draw_circle()', so that 1.913 + only the outline of the ellipse/circle can be drawn. 1.914 + - Added an ellipse-based selection in CImg<T>::feature_selection(), when parameter 'feature_type' is set to 3. 1.915 + 1.916 +* New features/functions : 1.917 + - Added an 'Image Zoomer' demo in 'CImg_test.cpp'. 1.918 + - Added 'CImg<T>::load_jpeg()' and 'CImg<T>::save_jpeg()' to deal natively with JPEG files, through 1.919 + the libjpeg library. You don't need ImageMagick's convert anymore to read and save JPEG files. 1.920 + Just define the macro 'cimg_use_jpeg before including 'CImg.h', and link your code with the 'jpeg' lib, 1.921 + and it should work fine. 1.922 + - Added 'CImg<T>::quicksort()' allowing to sort values inside vectors, and getting corresponding permutations. 1.923 + - CImgDisplay::move() is now working well on Windows and Unix. 1.924 + - Added 'CImg<T>::SVD()' to compute the SVD of general matrices. The inverse function as well 1.925 + as the eigenvalue computation (of symmetric matrices) now uses the SVD. It means that LAPACK is 1.926 + not necessary anymore in CImg ! 1.927 + - Added 'CImgDisplay::screen_dimx()' and 'CImgDisplay::screen_dimy()' to get the resolution of the 1.928 + current (full) screen. 1.929 + - Added a new 10x13 font, and recoded the functions 'CImgl<T>::get_font();' 1.930 + - Added 'cimg::dialog()' that allows to open a simple dialog box with a maximum of 6 choices. 1.931 + - Added CImgROI<T>::operator=(), so that one can now affect a channel or plane to an image : 1.932 + img.ref_plane(2) = img_plane; Very useful ! 1.933 + - Added CImg<T>::load_png() and save_png() to deal natively with PNG files, through 1.934 + the zlib and libpng libraries. You don't need ImageMagick's convert anymore 1.935 + to read and save PNG files. Just define the macro 'cimg_use_png' before including 1.936 + 'CImg.h', and link your code with the 'zlib' and the 'png' lib, and it should work fine. 1.937 + Many thanks to Eric Fausett, for this nice piece of code. 1.938 + - Added CImg<T>::load_rgb(), load_rgba(), save_rgb() and save_rgba() that can load and save 1.939 + Raw color image data (w/ or wo/ alpha channel). 1.940 + - Added CImg<T>::blur_anisotropic() that allows to denoise image by anisotropic filtering. 1.941 + Smoothing behavior can be even user-defined. 1.942 + Look at " http://www.greyc.ensicaen.fr/~dtschump/greycstoration/ " 1.943 + to learn more about the image regularization technique implemented by this function. 1.944 + 1.945 + - ... an tons of minor corrections ! 1.946 + 1.947 +*----------------------------- 1.948 +*----------------------------- 1.949 +* Changes from 1.0.7 to 1.0.8 1.950 +*----------------------------- 1.951 +*----------------------------- 1.952 + 1.953 + * Bug corrections : 1.954 + - Removed useless button/keyboard reinitialization in CImgDisplay events 1.955 + - Corrected bug in CImg<T>::load_dlm() and load_ascii() functions. 1.956 + - Corrected compile bug in CImg<T>::resize_halfXY() and CImg<T>::get_resize_halfXY(). 1.957 + - Corrected and optimized CImg<T>::get_resize(). 1.958 + 1.959 + * Optimizations / Modifications : 1.960 + - Recoded CImg<T>::fill() for faster value filling. 1.961 + - Recoded CImg<T>::draw_graph(). IMPORTANT NOTE : ymin and ymax are now directed up to down, instead 1.962 + of down to up, in order to be more coherent with the draw_axeXY() function. This means you will 1.963 + probably have to swap the values of these two parameters in the function call, to get similar results 1.964 + to CImg 1.0.7 !! 1.965 + - Recoded CImg<T>::draw_gaussian() using tensors (parameters changed). 1.966 + - CImg is now successfully compiled using the option '-pedantic' with g++. Makefile has been modified. 1.967 + - CImg compiles with the DJGPP compiler (tested without display capabilities). 1.968 + - Added load/save support for 16bits PNM binary images. 1.969 + - Added interleaved mode support and template in constructor : 1.970 + template<typename t> CImg(const t *const data_buffer,dx,dy,dz,dv,bool interlaced) 1.971 + - Recoded parts of CImg<T>::eigen(). 1.972 + - Optimized buffer copy in XImage, for faster image display under X11 (minor improvements). 1.973 + - Added fields in CImgStats, allowing to get the coordinates of the min/max pixels. 1.974 + 1.975 + * New features/functions : 1.976 + - Added CImg<T>::load_bmp() and save_bmp() to deal with uncompressed BMP formats, without using ImageMagick. 1.977 + - Added CImg<T>::vector(), CImg<T>::matrix() and CImg<T>::tensor(). 1.978 + - Added CImg<T>::scroll() and CImg<T>::get_scroll to be able to scroll images. 1.979 + - Added functions CImg<T>::get_FFT() and CImgl<T>::FFT() for Fast Fourier Transform. 1.980 + - Added CImgDisplay::move() to be able to move display windows at specific locations. 1.981 + - Added several region split in CImg<T>::get_split(). 1.982 + - Added 'examples/mcf_levelsets.cpp' : Mean curvature flow of a 2D curve, using level sets. 1.983 + - Added 'examples/greycstoration.cpp' : New algorithm for image denoising, inpainting and resizing. 1.984 + (see http://www.greyc.ensicaen.fr/~dtschump/greycstoration) 1.985 + - Added 'examples/wavelet_atrous.cpp' (by R. Peteri) : Wavelet decomposition of a image. 1.986 + - Added a Fourier-based filtering demo in 'CImg_test.cpp', allowing interactive frequency filter creation. 1.987 + - Added an Image to ASCII converter, based on simple correlation measure. File : 'examples/image2ascii.cpp'. 1.988 + 1.989 + * Abandonned features : 1.990 + - Removed bump mapped version of the CImg<T>::draw_triangle() function. 1.991 + - Removed 'examples/inpainter.cpp' which is a little bit buggy (problem with multiscale). 1.992 + - Removed 'CImg<T>::new_display()' and 'CImgl<T>::new_display', which are confusing and useless. Use 1.993 + 'new CImgDisplay(img)' and 'new CImgDisplay(list)' instead. 1.994 + - Removed 'CImg<T>::get_stats()' and 'CImgl<T>::get_stats', which are useless. Use 'CImgStats(img)' 1.995 + and 'CImgStats(list)'. 1.996 + 1.997 +*----------------------------- 1.998 +*----------------------------- 1.999 +* Changes from 1.0.6 to 1.0.7 1.1000 +*----------------------------- 1.1001 +*----------------------------- 1.1002 + 1.1003 + - New License : CImg is now distributed under the CeCiLL License, a free software GPL-like, more adapted 1.1004 + to French laws. Don't be disturbed by this new License, CImg is still an open source free software ! 1.1005 + - Encapsulation of all CImg classes and functions in the 'cimg_library::' namespace. It avoids eventual 1.1006 + class names collisions with other libraries. For compatility with your old code, you should 1.1007 + insert 'using namespace cimg_library;', just after the '#include "CImg.h"' line, in your source code. 1.1008 + - Removed global typedefs for uchar,uint,ushort,ulong. If you used them before, you'll have to redefine them : 1.1009 + typedef unsigned char uchar; 1.1010 + typedef unsigned short ushort; 1.1011 + typedef unsigned int uint; 1.1012 + typedef unsigned long ulong; 1.1013 + - Corrected window resize bug on X11 displays. 1.1014 + - Added PANDORE-4 file format support, with functions 'CImg::load_pandore()' and 'CImg::save_pandore()' (file extension : .pan) 1.1015 + (PANDORE is a C++ toolkit for image processing, see http://www.greyc.ensicaen.fr/~regis/Pandore (in French)) 1.1016 + - Added macros CImg_3x3_ref(), CImg_5x5_ref(), .. allowing to use special loops cimg_map3x3,.. with references to C arrays and images. 1.1017 + - Removed 'normalize' parameter in 'CImg::save()'. Saving normalized images can be still performed 1.1018 + with 'img.normalize(0,255).save("normalized_image.jpg");'. This clarifies the code and doesn't add so much work at all. 1.1019 + - Renamed 'CImg::get_sprite()' and 'CImg::sprite()' to 'CImg::get_crop()' and 'CImg::crop()'. 1.1020 + - Changed 'draw_triangle' function with two textures, so that it corresponds to displacement mapping 1.1021 + (aka 'bump mapping'), instead of two textures drawn with transparencies 1.1022 + (which can be still made by two successive calls to single-textured 'draw_triangle' functions, 1.1023 + with correct opacities). 1.1024 + - Negative opacity parameter in drawing functions is now supported. It allows to ADD shapes colors to the current 1.1025 + image pixels (see the new 'ShadeBobs demo in the CImg_test.cpp file to see the concept). 1.1026 + - Added functions 'CImg::draw_axeX', 'CImg::draw_axeY' and 'CImg::draw_axeXY', allowing to trace labelled axes on images. 1.1027 + - Slightly changes in CImgDisplay : field 'attributes' has been removed, and replaced by more 1.1028 + comprehensive field names : events, normalize, fullscreen. Resizing capabilities is now removed 1.1029 + since all windows can be resized by default. 1.1030 + - 'CImg<>::load_convert()' and 'CImg<>::save_convert()' do not popup a console window anymore on Windows-based OS, 1.1031 + when creating code with a WinMain() entry. 1.1032 + - RGB<->BGR Color inversion problem on some old Unix displays has been corrected. 1.1033 + - Makefile for compilation on Solaris has been updated. 1.1034 + - Package structure has been slightly modified for more clarity. Renamed also the CVS module to 'CImg' instead of 'CImg_' 1.1035 + - Added different compilers projects to ease the compilation of the CImg examples, including 1.1036 + Visual C++ 6.0, Visual.NET2003, Borland Bcc 5.6, Digital Mars Compiler, Dev-Cpp, Intel ICL. 1.1037 + - Removed the use of TrackMouseEvent mechanism on Windows, removing compilation bugs with VC++6.0 when trying to create an MDI application. 1.1038 + - Improved keycode detection under X11. Keycodes should now work for any X11-based system. 1.1039 + - Support for FreeBSD added (thanks to Thierry Thomas). 1.1040 + - Corrected bug in matrix multiplication. 1.1041 + - Corrected bugs in CImg<T>::erode() and CImg<T>::dilate() functions (name inversion). 1.1042 + - Corrected bug in 'CImg<T>::load_convert()' and 'CImg<T>::save_convert()' when trying to load/save images with pathnames containing spaces. 1.1043 + - Recoded 'inrcast.cpp', and suppressed 'inrcrop.cpp' in the 'examples/' directory (functionnalities of 'inrcrop' are now included in 'inrcast'). 1.1044 + - And some corrections of minor bugs to improve library stability... 1.1045 + - Improved error messages to ease program debug. 1.1046 + - Documentation of the API is much more complete and detailled (still in progress...) 1.1047 + 1.1048 +*------------------------------ 1.1049 +*------------------------------ 1.1050 +* Changes from 1.0.5 to 1.0.6 : 1.1051 +*------------------------------ 1.1052 +*------------------------------ 1.1053 + 1.1054 + - Drawing functions improved and optimized : Added transparency level to all drawing functions. 1.1055 + - Added function 'draw_arrow()' 1.1056 + - Added missing boolean operators. 1.1057 + - Added CImgDisplay resize event, allowing to create flexible resizing windows. 1.1058 + - Added 'CImg::draw_gaussian()' functions allowing to draw 1d,2d or 3d gaussians on images. 1.1059 + - Added 'Oriented convolutions' demos in CImg_test.cpp 1.1060 + - Recoded pde_TschumperleDeriche2D and 3D. 1.1061 + - Bugs corrected in arithmetics operators. 1.1062 + - Optimized image display. 1.1063 + - Recoded 'CImg::feature_selection()'. 1.1064 + - Recoded 'CImg::get_rotate()' 1.1065 + - Renamed 'draw_plot()' to 'draw_graph()', and added cubic drawing style. 1.1066 + - Renamed 'wait_sync()' to 'wait()'. 1.1067 + - Renamed 'get_correl' to 'get_correlate' (idem for 'convolve') 1.1068 + - Removed 'get_correl3x3,5x5,...'. Optimization is now a part of the 'get_correlate' function. (idem for 'convolve'). 1.1069 + - Removed 'get_rotate90,180,270'. Optimization is now a part of the 'get_rotate' function. 1.1070 + - Compilation supported by gcc.3.4.1 (released july 2004).
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/PTdecode/CImg-1.3.0/CImg.h Mon Aug 03 14:09:20 2009 +0100 2.3 @@ -0,0 +1,36840 @@ 2.4 +/* 2.5 + # 2.6 + # File : CImg.h 2.7 + # ( C++ header file ) 2.8 + # 2.9 + # Description : The C++ Template Image Processing Library. 2.10 + # This file is the main part of the CImg Library project. 2.11 + # ( http://cimg.sourceforge.net ) 2.12 + # 2.13 + # Project manager : David Tschumperle. 2.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 2.15 + # 2.16 + # The complete contributor list can be seen in the 'README.txt' file. 2.17 + # 2.18 + # Licenses : This file is "dual-licensed", you have to choose one 2.19 + # of the two licenses below to apply on this file. 2.20 + # 2.21 + # CeCILL-C 2.22 + # The CeCILL-C license is close to the GNU LGPL. 2.23 + # ( http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html ) 2.24 + # 2.25 + # or CeCILL v2.0 2.26 + # The CeCILL license is compatible with the GNU GPL. 2.27 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 2.28 + # 2.29 + # This software is governed either by the CeCILL or the CeCILL-C license 2.30 + # under French law and abiding by the rules of distribution of free software. 2.31 + # You can use, modify and or redistribute the software under the terms of 2.32 + # the CeCILL or CeCILL-C licenses as circulated by CEA, CNRS and INRIA 2.33 + # at the following URL : "http://www.cecill.info". 2.34 + # 2.35 + # As a counterpart to the access to the source code and rights to copy, 2.36 + # modify and redistribute granted by the license, users are provided only 2.37 + # with a limited warranty and the software's author, the holder of the 2.38 + # economic rights, and the successive licensors have only limited 2.39 + # liability. 2.40 + # 2.41 + # In this respect, the user's attention is drawn to the risks associated 2.42 + # with loading, using, modifying and/or developing or reproducing the 2.43 + # software by the user in light of its specific status of free software, 2.44 + # that may mean that it is complicated to manipulate, and that also 2.45 + # therefore means that it is reserved for developers and experienced 2.46 + # professionals having in-depth computer knowledge. Users are therefore 2.47 + # encouraged to load and test the software's suitability as regards their 2.48 + # requirements in conditions enabling the security of their systems and/or 2.49 + # data to be ensured and, more generally, to use and operate it in the 2.50 + # same conditions as regards security. 2.51 + # 2.52 + # The fact that you are presently reading this means that you have had 2.53 + # knowledge of the CeCILL and CeCILL-C licenses and that you accept its terms. 2.54 + # 2.55 +*/ 2.56 + 2.57 +// Define version number of the current file. 2.58 +// 2.59 +#ifndef cimg_version 2.60 +#define cimg_version 130 2.61 + 2.62 +/*----------------------------------------------------------- 2.63 + # 2.64 + # Test/auto-set CImg configuration variables 2.65 + # and include required headers. 2.66 + # 2.67 + # If you find that default configuration variables are 2.68 + # not adapted, you can override their values before including 2.69 + # the header file "CImg.h" (using the #define directive). 2.70 + # 2.71 + ------------------------------------------------------------*/ 2.72 + 2.73 +// Include required standard C++ headers. 2.74 +// 2.75 +#include <cstdio> 2.76 +#include <cstdlib> 2.77 +#include <cstdarg> 2.78 +#include <cstring> 2.79 +#include <cmath> 2.80 +#include <ctime> 2.81 + 2.82 +// Operating system configuration. 2.83 +// 2.84 +// Define 'cimg_OS' to : 0 for an unknown OS (will try to minize library dependancies). 2.85 +// 1 for a Unix-like OS (Linux, Solaris, BSD, MacOSX, Irix, ...). 2.86 +// 2 for Microsoft Windows. 2.87 +// 2.88 +#ifndef cimg_OS 2.89 +#if defined(unix) || defined(__unix) || defined(__unix__) \ 2.90 + || defined(linux) || defined(__linux) || defined(__linux__) \ 2.91 + || defined(sun) || defined(__sun) \ 2.92 + || defined(BSD) || defined(__OpenBSD__) || defined(__NetBSD__) \ 2.93 + || defined(__FreeBSD__) || defined __DragonFly__ \ 2.94 + || defined(sgi) || defined(__sgi) \ 2.95 + || defined(__MACOSX__) || defined(__APPLE__) \ 2.96 + || defined(__CYGWIN__) 2.97 +#define cimg_OS 1 2.98 +#elif defined(_MSC_VER) || defined(WIN32) || defined(_WIN32) || defined(__WIN32__) \ 2.99 + || defined(WIN64) || defined(_WIN64) || defined(__WIN64__) 2.100 +#define cimg_OS 2 2.101 +#else 2.102 +#define cimg_OS 0 2.103 +#endif 2.104 +#elif !(cimg_OS==0 || cimg_OS==1 || cimg_OS==2) 2.105 +#error CImg Library : Configuration variable 'cimg_OS' is badly defined. 2.106 +#error (valid values are '0=unknown OS', '1=Unix-like OS', '2=Microsoft Windows'). 2.107 +#endif 2.108 + 2.109 +// Compiler configuration. 2.110 +// 2.111 +// Try to detect Microsoft VC++ compilers. 2.112 +// (lot of workarounds are needed afterwards to 2.113 +// make CImg working, particularly with VC++ 6.0). 2.114 +// 2.115 +#ifdef _MSC_VER 2.116 +#pragma warning(push) 2.117 +#pragma warning(disable:4311) 2.118 +#pragma warning(disable:4312) 2.119 +#pragma warning(disable:4800) 2.120 +#pragma warning(disable:4804) 2.121 +#pragma warning(disable:4996) 2.122 +#define _CRT_SECURE_NO_DEPRECATE 1 2.123 +#define _CRT_NONSTDC_NO_DEPRECATE 1 2.124 +#if _MSC_VER<1300 2.125 +#define cimg_use_visualcpp6 2.126 +#define cimg_std 2.127 +#define _WIN32_WINNT 0x0500 2.128 +#endif 2.129 +#endif 2.130 + 2.131 +// Include OS-specific headers. 2.132 +// 2.133 +#if cimg_OS==1 2.134 +#include <sys/time.h> 2.135 +#include <unistd.h> 2.136 +#elif cimg_OS==2 2.137 +#include <windows.h> 2.138 +#ifndef _WIN32_IE 2.139 +#define _WIN32_IE 0x0400 2.140 +#endif 2.141 +#include <shlobj.h> 2.142 +#endif 2.143 + 2.144 +// Define defaut pipe for output messages 2.145 +// 2.146 +// Define 'cimg_stdout' to : stdout to print CImg messages on the standard output. 2.147 +// stderr to print CImg messages on the standart error output (default behavior). 2.148 +// 2.149 +#ifndef cimg_std 2.150 +#define cimg_std std 2.151 +#endif 2.152 +#ifndef cimg_stdout 2.153 +#define cimg_stdout stderr 2.154 +#endif 2.155 + 2.156 +// Output messages configuration. 2.157 +// 2.158 +// Define 'cimg_debug' to : 0 to hide debug messages (quiet mode, but exceptions are still thrown). 2.159 +// 1 to display debug messages on the console. 2.160 +// 2 to display debug messages with dialog windows (default behavior). 2.161 +// 3 to do as 1 + add extra warnings (may slow down the code !). 2.162 +// 4 to do as 2 + add extra warnings (may slow down the code !). 2.163 +// 2.164 +// Define 'cimg_strict_warnings' to replace warning messages by exception throwns. 2.165 +// 2.166 +// Define 'cimg_use_vt100' to allow output of color messages (require VT100-compatible terminal). 2.167 +// 2.168 +#ifndef cimg_debug 2.169 +#define cimg_debug 2 2.170 +#elif !(cimg_debug==0 || cimg_debug==1 || cimg_debug==2 || cimg_debug==3 || cimg_debug==4) 2.171 +#error CImg Library : Configuration variable 'cimg_debug' is badly defined. 2.172 +#error (valid values are '0=quiet', '1=console', '2=dialog', '3=console+warnings', '4=dialog+warnings'). 2.173 +#endif 2.174 + 2.175 +// Display framework configuration. 2.176 +// 2.177 +// Define 'cimg_display' to : 0 to disable display capabilities. 2.178 +// 1 to use X-Window framework (X11). 2.179 +// 2 to use Microsoft GDI32 framework. 2.180 +// 3 to use Apple Carbon framework. 2.181 +// 2.182 +#ifndef cimg_display 2.183 +#if cimg_OS==0 2.184 +#define cimg_display 0 2.185 +#elif cimg_OS==1 2.186 +#if defined(__MACOSX__) || defined(__APPLE__) 2.187 +#define cimg_display 1 2.188 +#else 2.189 +#define cimg_display 1 2.190 +#endif 2.191 +#elif cimg_OS==2 2.192 +#define cimg_display 2 2.193 +#endif 2.194 +#elif !(cimg_display==0 || cimg_display==1 || cimg_display==2 || cimg_display==3) 2.195 +#error CImg Library : Configuration variable 'cimg_display' is badly defined. 2.196 +#error (valid values are '0=disable', '1=X-Window (X11)', '2=Microsoft GDI32', '3=Apple Carbon'). 2.197 +#endif 2.198 + 2.199 +// Include display-specific headers. 2.200 +// 2.201 +#if cimg_display==1 2.202 +#include <X11/Xlib.h> 2.203 +#include <X11/Xutil.h> 2.204 +#include <X11/keysym.h> 2.205 +#include <pthread.h> 2.206 +#ifdef cimg_use_xshm 2.207 +#include <sys/ipc.h> 2.208 +#include <sys/shm.h> 2.209 +#include <X11/extensions/XShm.h> 2.210 +#endif 2.211 +#ifdef cimg_use_xrandr 2.212 +#include <X11/extensions/Xrandr.h> 2.213 +#endif 2.214 +#elif cimg_display==3 2.215 +#include <Carbon/Carbon.h> 2.216 +#include <pthread.h> 2.217 +#endif 2.218 + 2.219 +// OpenMP configuration. 2.220 +// (http://www.openmp.org) 2.221 +// 2.222 +// Define 'cimg_use_openmp' to enable OpenMP support. 2.223 +// 2.224 +// OpenMP directives can be used in few CImg functions to get 2.225 +// advantages of multi-core CPUs. Using OpenMP is not mandatory. 2.226 +// 2.227 +#ifdef cimg_use_openmp 2.228 +#include "omp.h" 2.229 +#endif 2.230 + 2.231 +// LibPNG configuration. 2.232 +// (http://www.libpng.org) 2.233 +// 2.234 +// Define 'cimg_use_png' to enable LibPNG support. 2.235 +// 2.236 +// LibPNG can be used in functions 'CImg<T>::{load,save}_png()' 2.237 +// to get a builtin support of PNG files. Using LibPNG is not mandatory. 2.238 +// 2.239 +#ifdef cimg_use_png 2.240 +extern "C" { 2.241 +#include "png.h" 2.242 +} 2.243 +#endif 2.244 + 2.245 +// LibJPEG configuration. 2.246 +// (http://en.wikipedia.org/wiki/Libjpeg) 2.247 +// 2.248 +// Define 'cimg_use_jpeg' to enable LibJPEG support. 2.249 +// 2.250 +// LibJPEG can be used in functions 'CImg<T>::{load,save}_jpeg()' 2.251 +// to get a builtin support of JPEG files. Using LibJPEG is not mandatory. 2.252 +// 2.253 +#ifdef cimg_use_jpeg 2.254 +extern "C" { 2.255 +#include "jpeglib.h" 2.256 +} 2.257 +#endif 2.258 + 2.259 +// LibTIFF configuration. 2.260 +// (http://www.libtiff.org) 2.261 +// 2.262 +// Define 'cimg_use_tiff' to enable LibTIFF support. 2.263 +// 2.264 +// LibTIFF can be used in functions 'CImg[List]<T>::{load,save}_tiff()' 2.265 +// to get a builtin support of TIFF files. Using LibTIFF is not mandatory. 2.266 +// 2.267 +#ifdef cimg_use_tiff 2.268 +extern "C" { 2.269 +#include "tiffio.h" 2.270 +} 2.271 +#endif 2.272 + 2.273 +// FFMPEG Avcodec and Avformat libraries configuration. 2.274 +// (http://www.ffmpeg.org) 2.275 +// 2.276 +// Define 'cimg_use_ffmpeg' to enable FFMPEG lib support. 2.277 +// 2.278 +// Avcodec and Avformat libraries can be used in functions 2.279 +// 'CImg[List]<T>::load_ffmpeg()' to get a builtin 2.280 +// support of various image sequences files. 2.281 +// Using FFMPEG libraries is not mandatory. 2.282 +// 2.283 +#ifdef cimg_use_ffmpeg 2.284 +extern "C" { 2.285 +#include "avformat.h" 2.286 +#include "avcodec.h" 2.287 +#include "swscale.h" 2.288 +} 2.289 +#endif 2.290 + 2.291 +// Zlib configuration 2.292 +// (http://www.zlib.net) 2.293 +// 2.294 +// Define 'cimg_use_zlib' to enable Zlib support. 2.295 +// 2.296 +// Zlib can be used in functions 'CImg[List]<T>::{load,save}_cimg()' 2.297 +// to allow compressed data in '.cimg' files. Using Zlib is not mandatory. 2.298 +// 2.299 +#ifdef cimg_use_zlib 2.300 +extern "C" { 2.301 +#include "zlib.h" 2.302 +} 2.303 +#endif 2.304 + 2.305 +// Magick++ configuration. 2.306 +// (http://www.imagemagick.org/Magick++) 2.307 +// 2.308 +// Define 'cimg_use_magick' to enable Magick++ support. 2.309 +// 2.310 +// Magick++ library can be used in functions 'CImg<T>::{load,save}()' 2.311 +// to get a builtin support of various image formats (PNG,JPEG,TIFF,...). 2.312 +// Using Magick++ is not mandatory. 2.313 +// 2.314 +#ifdef cimg_use_magick 2.315 +#include "Magick++.h" 2.316 +#endif 2.317 + 2.318 +// FFTW3 configuration. 2.319 +// (http://www.fftw.org) 2.320 +// 2.321 +// Define 'cimg_use_fftw3' to enable libFFTW3 support. 2.322 +// 2.323 +// FFTW3 library can be used in functions 'CImg[List]<T>::FFT()' to 2.324 +// efficiently compile the Fast Fourier Transform of image data. 2.325 +// 2.326 +#ifdef cimg_use_fftw3 2.327 +extern "C" { 2.328 +#include "fftw3.h" 2.329 +} 2.330 +#endif 2.331 + 2.332 +// Board configuration. 2.333 +// (http://libboard.sourceforge.net/) 2.334 +// 2.335 +// Define 'cimg_use_board' to enable Board support. 2.336 +// 2.337 +// Board library can be used in functions 'CImg<T>::draw_object3d()' 2.338 +// to draw objects 3D in vector-graphics canvas that can be saved 2.339 +// as .PS or .SVG files afterwards. 2.340 +// 2.341 +#ifdef cimg_use_board 2.342 +#include "Board.h" 2.343 +#endif 2.344 + 2.345 +// Lapack configuration. 2.346 +// (http://www.netlib.org/lapack) 2.347 +// 2.348 +// Define 'cimg_use_lapack' to enable LAPACK support. 2.349 +// 2.350 +// Lapack can be used in various CImg functions dealing with 2.351 +// matrix computation and algorithms (eigenvalues, inverse, ...). 2.352 +// Using Lapack is not mandatory. 2.353 +// 2.354 +#ifdef cimg_use_lapack 2.355 +extern "C" { 2.356 + extern void sgetrf_(int*, int*, float*, int*, int*, int*); 2.357 + extern void sgetri_(int*, float*, int*, int*, float*, int*, int*); 2.358 + extern void sgetrs_(char*, int*, int*, float*, int*, int*, float*, int*, int*); 2.359 + extern void sgesvd_(char*, char*, int*, int*, float*, int*, float*, float*, int*, float*, int*, float*, int*, int*); 2.360 + extern void ssyev_(char*, char*, int*, float*, int*, float*, float*, int*, int*); 2.361 + extern void dgetrf_(int*, int*, double*, int*, int*, int*); 2.362 + extern void dgetri_(int*, double*, int*, int*, double*, int*, int*); 2.363 + extern void dgetrs_(char*, int*, int*, double*, int*, int*, double*, int*, int*); 2.364 + extern void dgesvd_(char*, char*, int*, int*, double*, int*, double*, double*, int*, double*, int*, double*, int*, int*); 2.365 + extern void dsyev_(char*, char*, int*, double*, int*, double*, double*, int*, int*); 2.366 +} 2.367 +#endif 2.368 + 2.369 +// Check if min/max macros are defined. 2.370 +// 2.371 +// CImg does not compile if macros 'min' or 'max' are defined, 2.372 +// because min() and max() functions are also defined in the cimg:: namespace. 2.373 +// so it '#undef' these macros if necessary, and restore them to reasonable 2.374 +// values at the end of the file. 2.375 +// 2.376 +#ifdef min 2.377 +#undef min 2.378 +#define _cimg_redefine_min 2.379 +#endif 2.380 +#ifdef max 2.381 +#undef max 2.382 +#define _cimg_redefine_max 2.383 +#endif 2.384 + 2.385 +// Set the current working directory for native MacOSX bundled applications. 2.386 +// 2.387 +// By default, MacOS bundled applications set the cwd at the root directory '/', 2.388 +// the code below allows to set it to the current exec directory instead when 2.389 +// a CImg-based program is executed. 2.390 +// 2.391 +#if cimg_OS==1 && cimg_display==3 2.392 +static struct _cimg_macosx_setcwd { 2.393 + _cimg_macosx_setcwd() { 2.394 + FSRef location; 2.395 + ProcessSerialNumber psn; 2.396 + char filePath[512]; 2.397 + if (GetCurrentProcess(&psn)!=noErr) return; 2.398 + if (GetProcessBundleLocation(&psn,&location)!=noErr) return; 2.399 + FSRefMakePath(&location,(UInt8*)filePath,sizeof(filePath)-1); 2.400 + int p = cimg_std::strlen(filePath); 2.401 + while (filePath[p] != '/') --p; 2.402 + filePath[p] = 0; 2.403 + chdir(filePath); 2.404 + } 2.405 +} cimg_macosx_setcwd; 2.406 +#endif 2.407 + 2.408 +/*------------------------------------------------------------------------------ 2.409 + # 2.410 + # Define user-friendly macros. 2.411 + # 2.412 + # User macros are prefixed by 'cimg_' and can be used in your own code. 2.413 + # They are particularly useful for option parsing, and image loops creation. 2.414 + # 2.415 + ------------------------------------------------------------------------------*/ 2.416 + 2.417 +// Define the program usage, and retrieve command line arguments. 2.418 +// 2.419 +#define cimg_usage(usage) cimg_library::cimg::option((char*)0,argc,argv,(char*)0,usage) 2.420 +#define cimg_help(str) cimg_library::cimg::option((char*)0,argc,argv,str,(char*)0) 2.421 +#define cimg_option(name,defaut,usage) cimg_library::cimg::option(name,argc,argv,defaut,usage) 2.422 +#define cimg_argument(pos) cimg_library::cimg::argument(pos,argc,argv) 2.423 +#define cimg_argument1(pos,s0) cimg_library::cimg::argument(pos,argc,argv,1,s0) 2.424 +#define cimg_argument2(pos,s0,s1) cimg_library::cimg::argument(pos,argc,argv,2,s0,s1) 2.425 +#define cimg_argument3(pos,s0,s1,s2) cimg_library::cimg::argument(pos,argc,argv,3,s0,s1,s2) 2.426 +#define cimg_argument4(pos,s0,s1,s2,s3) cimg_library::cimg::argument(pos,argc,argv,4,s0,s1,s2,s3) 2.427 +#define cimg_argument5(pos,s0,s1,s2,s3,s4) cimg_library::cimg::argument(pos,argc,argv,5,s0,s1,s2,s3,s4) 2.428 +#define cimg_argument6(pos,s0,s1,s2,s3,s4,s5) cimg_library::cimg::argument(pos,argc,argv,6,s0,s1,s2,s3,s4,s5) 2.429 +#define cimg_argument7(pos,s0,s1,s2,s3,s4,s5,s6) cimg_library::cimg::argument(pos,argc,argv,7,s0,s1,s2,s3,s4,s5,s6) 2.430 +#define cimg_argument8(pos,s0,s1,s2,s3,s4,s5,s6,s7) cimg_library::cimg::argument(pos,argc,argv,8,s0,s1,s2,s3,s4,s5,s6,s7) 2.431 +#define cimg_argument9(pos,s0,s1,s2,s3,s4,s5,s6,s7,s8) cimg_library::cimg::argument(pos,argc,argv,9,s0,s1,s2,s3,s4,s5,s6,s7,s8) 2.432 + 2.433 +// Define and manipulate local neighborhoods. 2.434 +// 2.435 +#define CImg_2x2(I,T) T I[4]; \ 2.436 + T& I##cc = I[0]; T& I##nc = I[1]; \ 2.437 + T& I##cn = I[2]; T& I##nn = I[3]; \ 2.438 + I##cc = I##nc = \ 2.439 + I##cn = I##nn = 0 2.440 + 2.441 +#define CImg_3x3(I,T) T I[9]; \ 2.442 + T& I##pp = I[0]; T& I##cp = I[1]; T& I##np = I[2]; \ 2.443 + T& I##pc = I[3]; T& I##cc = I[4]; T& I##nc = I[5]; \ 2.444 + T& I##pn = I[6]; T& I##cn = I[7]; T& I##nn = I[8]; \ 2.445 + I##pp = I##cp = I##np = \ 2.446 + I##pc = I##cc = I##nc = \ 2.447 + I##pn = I##cn = I##nn = 0 2.448 + 2.449 +#define CImg_4x4(I,T) T I[16]; \ 2.450 + T& I##pp = I[0]; T& I##cp = I[1]; T& I##np = I[2]; T& I##ap = I[3]; \ 2.451 + T& I##pc = I[4]; T& I##cc = I[5]; T& I##nc = I[6]; T& I##ac = I[7]; \ 2.452 + T& I##pn = I[8]; T& I##cn = I[9]; T& I##nn = I[10]; T& I##an = I[11]; \ 2.453 + T& I##pa = I[12]; T& I##ca = I[13]; T& I##na = I[14]; T& I##aa = I[15]; \ 2.454 + I##pp = I##cp = I##np = I##ap = \ 2.455 + I##pc = I##cc = I##nc = I##ac = \ 2.456 + I##pn = I##cn = I##nn = I##an = \ 2.457 + I##pa = I##ca = I##na = I##aa = 0 2.458 + 2.459 +#define CImg_5x5(I,T) T I[25]; \ 2.460 + T& I##bb = I[0]; T& I##pb = I[1]; T& I##cb = I[2]; T& I##nb = I[3]; T& I##ab = I[4]; \ 2.461 + T& I##bp = I[5]; T& I##pp = I[6]; T& I##cp = I[7]; T& I##np = I[8]; T& I##ap = I[9]; \ 2.462 + T& I##bc = I[10]; T& I##pc = I[11]; T& I##cc = I[12]; T& I##nc = I[13]; T& I##ac = I[14]; \ 2.463 + T& I##bn = I[15]; T& I##pn = I[16]; T& I##cn = I[17]; T& I##nn = I[18]; T& I##an = I[19]; \ 2.464 + T& I##ba = I[20]; T& I##pa = I[21]; T& I##ca = I[22]; T& I##na = I[23]; T& I##aa = I[24]; \ 2.465 + I##bb = I##pb = I##cb = I##nb = I##ab = \ 2.466 + I##bp = I##pp = I##cp = I##np = I##ap = \ 2.467 + I##bc = I##pc = I##cc = I##nc = I##ac = \ 2.468 + I##bn = I##pn = I##cn = I##nn = I##an = \ 2.469 + I##ba = I##pa = I##ca = I##na = I##aa = 0 2.470 + 2.471 +#define CImg_2x2x2(I,T) T I[8]; \ 2.472 + T& I##ccc = I[0]; T& I##ncc = I[1]; \ 2.473 + T& I##cnc = I[2]; T& I##nnc = I[3]; \ 2.474 + T& I##ccn = I[4]; T& I##ncn = I[5]; \ 2.475 + T& I##cnn = I[6]; T& I##nnn = I[7]; \ 2.476 + I##ccc = I##ncc = \ 2.477 + I##cnc = I##nnc = \ 2.478 + I##ccn = I##ncn = \ 2.479 + I##cnn = I##nnn = 0 2.480 + 2.481 +#define CImg_3x3x3(I,T) T I[27]; \ 2.482 + T& I##ppp = I[0]; T& I##cpp = I[1]; T& I##npp = I[2]; \ 2.483 + T& I##pcp = I[3]; T& I##ccp = I[4]; T& I##ncp = I[5]; \ 2.484 + T& I##pnp = I[6]; T& I##cnp = I[7]; T& I##nnp = I[8]; \ 2.485 + T& I##ppc = I[9]; T& I##cpc = I[10]; T& I##npc = I[11]; \ 2.486 + T& I##pcc = I[12]; T& I##ccc = I[13]; T& I##ncc = I[14]; \ 2.487 + T& I##pnc = I[15]; T& I##cnc = I[16]; T& I##nnc = I[17]; \ 2.488 + T& I##ppn = I[18]; T& I##cpn = I[19]; T& I##npn = I[20]; \ 2.489 + T& I##pcn = I[21]; T& I##ccn = I[22]; T& I##ncn = I[23]; \ 2.490 + T& I##pnn = I[24]; T& I##cnn = I[25]; T& I##nnn = I[26]; \ 2.491 + I##ppp = I##cpp = I##npp = \ 2.492 + I##pcp = I##ccp = I##ncp = \ 2.493 + I##pnp = I##cnp = I##nnp = \ 2.494 + I##ppc = I##cpc = I##npc = \ 2.495 + I##pcc = I##ccc = I##ncc = \ 2.496 + I##pnc = I##cnc = I##nnc = \ 2.497 + I##ppn = I##cpn = I##npn = \ 2.498 + I##pcn = I##ccn = I##ncn = \ 2.499 + I##pnn = I##cnn = I##nnn = 0 2.500 + 2.501 +#define cimg_get2x2(img,x,y,z,v,I) \ 2.502 + I[0] = (img)(x,y,z,v), I[1] = (img)(_n1##x,y,z,v), I[2] = (img)(x,_n1##y,z,v), I[3] = (img)(_n1##x,_n1##y,z,v) 2.503 + 2.504 +#define cimg_get3x3(img,x,y,z,v,I) \ 2.505 + I[0] = (img)(_p1##x,_p1##y,z,v), I[1] = (img)(x,_p1##y,z,v), I[2] = (img)(_n1##x,_p1##y,z,v), I[3] = (img)(_p1##x,y,z,v), \ 2.506 + I[4] = (img)(x,y,z,v), I[5] = (img)(_n1##x,y,z,v), I[6] = (img)(_p1##x,_n1##y,z,v), I[7] = (img)(x,_n1##y,z,v), \ 2.507 + I[8] = (img)(_n1##x,_n1##y,z,v) 2.508 + 2.509 +#define cimg_get4x4(img,x,y,z,v,I) \ 2.510 + I[0] = (img)(_p1##x,_p1##y,z,v), I[1] = (img)(x,_p1##y,z,v), I[2] = (img)(_n1##x,_p1##y,z,v), I[3] = (img)(_n2##x,_p1##y,z,v), \ 2.511 + I[4] = (img)(_p1##x,y,z,v), I[5] = (img)(x,y,z,v), I[6] = (img)(_n1##x,y,z,v), I[7] = (img)(_n2##x,y,z,v), \ 2.512 + I[8] = (img)(_p1##x,_n1##y,z,v), I[9] = (img)(x,_n1##y,z,v), I[10] = (img)(_n1##x,_n1##y,z,v), I[11] = (img)(_n2##x,_n1##y,z,v), \ 2.513 + I[12] = (img)(_p1##x,_n2##y,z,v), I[13] = (img)(x,_n2##y,z,v), I[14] = (img)(_n1##x,_n2##y,z,v), I[15] = (img)(_n2##x,_n2##y,z,v) 2.514 + 2.515 +#define cimg_get5x5(img,x,y,z,v,I) \ 2.516 + I[0] = (img)(_p2##x,_p2##y,z,v), I[1] = (img)(_p1##x,_p2##y,z,v), I[2] = (img)(x,_p2##y,z,v), I[3] = (img)(_n1##x,_p2##y,z,v), \ 2.517 + I[4] = (img)(_n2##x,_p2##y,z,v), I[5] = (img)(_p2##x,_p1##y,z,v), I[6] = (img)(_p1##x,_p1##y,z,v), I[7] = (img)(x,_p1##y,z,v), \ 2.518 + I[8] = (img)(_n1##x,_p1##y,z,v), I[9] = (img)(_n2##x,_p1##y,z,v), I[10] = (img)(_p2##x,y,z,v), I[11] = (img)(_p1##x,y,z,v), \ 2.519 + I[12] = (img)(x,y,z,v), I[13] = (img)(_n1##x,y,z,v), I[14] = (img)(_n2##x,y,z,v), I[15] = (img)(_p2##x,_n1##y,z,v), \ 2.520 + I[16] = (img)(_p1##x,_n1##y,z,v), I[17] = (img)(x,_n1##y,z,v), I[18] = (img)(_n1##x,_n1##y,z,v), I[19] = (img)(_n2##x,_n1##y,z,v), \ 2.521 + I[20] = (img)(_p2##x,_n2##y,z,v), I[21] = (img)(_p1##x,_n2##y,z,v), I[22] = (img)(x,_n2##y,z,v), I[23] = (img)(_n1##x,_n2##y,z,v), \ 2.522 + I[24] = (img)(_n2##x,_n2##y,z,v) 2.523 + 2.524 +#define cimg_get6x6(img,x,y,z,v,I) \ 2.525 + I[0] = (img)(_p2##x,_p2##y,z,v), I[1] = (img)(_p1##x,_p2##y,z,v), I[2] = (img)(x,_p2##y,z,v), I[3] = (img)(_n1##x,_p2##y,z,v), \ 2.526 + I[4] = (img)(_n2##x,_p2##y,z,v), I[5] = (img)(_n3##x,_p2##y,z,v), I[6] = (img)(_p2##x,_p1##y,z,v), I[7] = (img)(_p1##x,_p1##y,z,v), \ 2.527 + I[8] = (img)(x,_p1##y,z,v), I[9] = (img)(_n1##x,_p1##y,z,v), I[10] = (img)(_n2##x,_p1##y,z,v), I[11] = (img)(_n3##x,_p1##y,z,v), \ 2.528 + I[12] = (img)(_p2##x,y,z,v), I[13] = (img)(_p1##x,y,z,v), I[14] = (img)(x,y,z,v), I[15] = (img)(_n1##x,y,z,v), \ 2.529 + I[16] = (img)(_n2##x,y,z,v), I[17] = (img)(_n3##x,y,z,v), I[18] = (img)(_p2##x,_n1##y,z,v), I[19] = (img)(_p1##x,_n1##y,z,v), \ 2.530 + I[20] = (img)(x,_n1##y,z,v), I[21] = (img)(_n1##x,_n1##y,z,v), I[22] = (img)(_n2##x,_n1##y,z,v), I[23] = (img)(_n3##x,_n1##y,z,v), \ 2.531 + I[24] = (img)(_p2##x,_n2##y,z,v), I[25] = (img)(_p1##x,_n2##y,z,v), I[26] = (img)(x,_n2##y,z,v), I[27] = (img)(_n1##x,_n2##y,z,v), \ 2.532 + I[28] = (img)(_n2##x,_n2##y,z,v), I[29] = (img)(_n3##x,_n2##y,z,v), I[30] = (img)(_p2##x,_n3##y,z,v), I[31] = (img)(_p1##x,_n3##y,z,v), \ 2.533 + I[32] = (img)(x,_n3##y,z,v), I[33] = (img)(_n1##x,_n3##y,z,v), I[34] = (img)(_n2##x,_n3##y,z,v), I[35] = (img)(_n3##x,_n3##y,z,v) 2.534 + 2.535 +#define cimg_get7x7(img,x,y,z,v,I) \ 2.536 + I[0] = (img)(_p3##x,_p3##y,z,v), I[1] = (img)(_p2##x,_p3##y,z,v), I[2] = (img)(_p1##x,_p3##y,z,v), I[3] = (img)(x,_p3##y,z,v), \ 2.537 + I[4] = (img)(_n1##x,_p3##y,z,v), I[5] = (img)(_n2##x,_p3##y,z,v), I[6] = (img)(_n3##x,_p3##y,z,v), I[7] = (img)(_p3##x,_p2##y,z,v), \ 2.538 + I[8] = (img)(_p2##x,_p2##y,z,v), I[9] = (img)(_p1##x,_p2##y,z,v), I[10] = (img)(x,_p2##y,z,v), I[11] = (img)(_n1##x,_p2##y,z,v), \ 2.539 + I[12] = (img)(_n2##x,_p2##y,z,v), I[13] = (img)(_n3##x,_p2##y,z,v), I[14] = (img)(_p3##x,_p1##y,z,v), I[15] = (img)(_p2##x,_p1##y,z,v), \ 2.540 + I[16] = (img)(_p1##x,_p1##y,z,v), I[17] = (img)(x,_p1##y,z,v), I[18] = (img)(_n1##x,_p1##y,z,v), I[19] = (img)(_n2##x,_p1##y,z,v), \ 2.541 + I[20] = (img)(_n3##x,_p1##y,z,v), I[21] = (img)(_p3##x,y,z,v), I[22] = (img)(_p2##x,y,z,v), I[23] = (img)(_p1##x,y,z,v), \ 2.542 + I[24] = (img)(x,y,z,v), I[25] = (img)(_n1##x,y,z,v), I[26] = (img)(_n2##x,y,z,v), I[27] = (img)(_n3##x,y,z,v), \ 2.543 + I[28] = (img)(_p3##x,_n1##y,z,v), I[29] = (img)(_p2##x,_n1##y,z,v), I[30] = (img)(_p1##x,_n1##y,z,v), I[31] = (img)(x,_n1##y,z,v), \ 2.544 + I[32] = (img)(_n1##x,_n1##y,z,v), I[33] = (img)(_n2##x,_n1##y,z,v), I[34] = (img)(_n3##x,_n1##y,z,v), I[35] = (img)(_p3##x,_n2##y,z,v), \ 2.545 + I[36] = (img)(_p2##x,_n2##y,z,v), I[37] = (img)(_p1##x,_n2##y,z,v), I[38] = (img)(x,_n2##y,z,v), I[39] = (img)(_n1##x,_n2##y,z,v), \ 2.546 + I[40] = (img)(_n2##x,_n2##y,z,v), I[41] = (img)(_n3##x,_n2##y,z,v), I[42] = (img)(_p3##x,_n3##y,z,v), I[43] = (img)(_p2##x,_n3##y,z,v), \ 2.547 + I[44] = (img)(_p1##x,_n3##y,z,v), I[45] = (img)(x,_n3##y,z,v), I[46] = (img)(_n1##x,_n3##y,z,v), I[47] = (img)(_n2##x,_n3##y,z,v), \ 2.548 + I[48] = (img)(_n3##x,_n3##y,z,v) 2.549 + 2.550 +#define cimg_get8x8(img,x,y,z,v,I) \ 2.551 + I[0] = (img)(_p3##x,_p3##y,z,v), I[1] = (img)(_p2##x,_p3##y,z,v), I[2] = (img)(_p1##x,_p3##y,z,v), I[3] = (img)(x,_p3##y,z,v), \ 2.552 + I[4] = (img)(_n1##x,_p3##y,z,v), I[5] = (img)(_n2##x,_p3##y,z,v), I[6] = (img)(_n3##x,_p3##y,z,v), I[7] = (img)(_n4##x,_p3##y,z,v), \ 2.553 + I[8] = (img)(_p3##x,_p2##y,z,v), I[9] = (img)(_p2##x,_p2##y,z,v), I[10] = (img)(_p1##x,_p2##y,z,v), I[11] = (img)(x,_p2##y,z,v), \ 2.554 + I[12] = (img)(_n1##x,_p2##y,z,v), I[13] = (img)(_n2##x,_p2##y,z,v), I[14] = (img)(_n3##x,_p2##y,z,v), I[15] = (img)(_n4##x,_p2##y,z,v), \ 2.555 + I[16] = (img)(_p3##x,_p1##y,z,v), I[17] = (img)(_p2##x,_p1##y,z,v), I[18] = (img)(_p1##x,_p1##y,z,v), I[19] = (img)(x,_p1##y,z,v), \ 2.556 + I[20] = (img)(_n1##x,_p1##y,z,v), I[21] = (img)(_n2##x,_p1##y,z,v), I[22] = (img)(_n3##x,_p1##y,z,v), I[23] = (img)(_n4##x,_p1##y,z,v), \ 2.557 + I[24] = (img)(_p3##x,y,z,v), I[25] = (img)(_p2##x,y,z,v), I[26] = (img)(_p1##x,y,z,v), I[27] = (img)(x,y,z,v), \ 2.558 + I[28] = (img)(_n1##x,y,z,v), I[29] = (img)(_n2##x,y,z,v), I[30] = (img)(_n3##x,y,z,v), I[31] = (img)(_n4##x,y,z,v), \ 2.559 + I[32] = (img)(_p3##x,_n1##y,z,v), I[33] = (img)(_p2##x,_n1##y,z,v), I[34] = (img)(_p1##x,_n1##y,z,v), I[35] = (img)(x,_n1##y,z,v), \ 2.560 + I[36] = (img)(_n1##x,_n1##y,z,v), I[37] = (img)(_n2##x,_n1##y,z,v), I[38] = (img)(_n3##x,_n1##y,z,v), I[39] = (img)(_n4##x,_n1##y,z,v), \ 2.561 + I[40] = (img)(_p3##x,_n2##y,z,v), I[41] = (img)(_p2##x,_n2##y,z,v), I[42] = (img)(_p1##x,_n2##y,z,v), I[43] = (img)(x,_n2##y,z,v), \ 2.562 + I[44] = (img)(_n1##x,_n2##y,z,v), I[45] = (img)(_n2##x,_n2##y,z,v), I[46] = (img)(_n3##x,_n2##y,z,v), I[47] = (img)(_n4##x,_n2##y,z,v), \ 2.563 + I[48] = (img)(_p3##x,_n3##y,z,v), I[49] = (img)(_p2##x,_n3##y,z,v), I[50] = (img)(_p1##x,_n3##y,z,v), I[51] = (img)(x,_n3##y,z,v), \ 2.564 + I[52] = (img)(_n1##x,_n3##y,z,v), I[53] = (img)(_n2##x,_n3##y,z,v), I[54] = (img)(_n3##x,_n3##y,z,v), I[55] = (img)(_n4##x,_n3##y,z,v), \ 2.565 + I[56] = (img)(_p3##x,_n4##y,z,v), I[57] = (img)(_p2##x,_n4##y,z,v), I[58] = (img)(_p1##x,_n4##y,z,v), I[59] = (img)(x,_n4##y,z,v), \ 2.566 + I[60] = (img)(_n1##x,_n4##y,z,v), I[61] = (img)(_n2##x,_n4##y,z,v), I[62] = (img)(_n3##x,_n4##y,z,v), I[63] = (img)(_n4##x,_n4##y,z,v); 2.567 + 2.568 +#define cimg_get9x9(img,x,y,z,v,I) \ 2.569 + I[0] = (img)(_p4##x,_p4##y,z,v), I[1] = (img)(_p3##x,_p4##y,z,v), I[2] = (img)(_p2##x,_p4##y,z,v), I[3] = (img)(_p1##x,_p4##y,z,v), \ 2.570 + I[4] = (img)(x,_p4##y,z,v), I[5] = (img)(_n1##x,_p4##y,z,v), I[6] = (img)(_n2##x,_p4##y,z,v), I[7] = (img)(_n3##x,_p4##y,z,v), \ 2.571 + I[8] = (img)(_n4##x,_p4##y,z,v), I[9] = (img)(_p4##x,_p3##y,z,v), I[10] = (img)(_p3##x,_p3##y,z,v), I[11] = (img)(_p2##x,_p3##y,z,v), \ 2.572 + I[12] = (img)(_p1##x,_p3##y,z,v), I[13] = (img)(x,_p3##y,z,v), I[14] = (img)(_n1##x,_p3##y,z,v), I[15] = (img)(_n2##x,_p3##y,z,v), \ 2.573 + I[16] = (img)(_n3##x,_p3##y,z,v), I[17] = (img)(_n4##x,_p3##y,z,v), I[18] = (img)(_p4##x,_p2##y,z,v), I[19] = (img)(_p3##x,_p2##y,z,v), \ 2.574 + I[20] = (img)(_p2##x,_p2##y,z,v), I[21] = (img)(_p1##x,_p2##y,z,v), I[22] = (img)(x,_p2##y,z,v), I[23] = (img)(_n1##x,_p2##y,z,v), \ 2.575 + I[24] = (img)(_n2##x,_p2##y,z,v), I[25] = (img)(_n3##x,_p2##y,z,v), I[26] = (img)(_n4##x,_p2##y,z,v), I[27] = (img)(_p4##x,_p1##y,z,v), \ 2.576 + I[28] = (img)(_p3##x,_p1##y,z,v), I[29] = (img)(_p2##x,_p1##y,z,v), I[30] = (img)(_p1##x,_p1##y,z,v), I[31] = (img)(x,_p1##y,z,v), \ 2.577 + I[32] = (img)(_n1##x,_p1##y,z,v), I[33] = (img)(_n2##x,_p1##y,z,v), I[34] = (img)(_n3##x,_p1##y,z,v), I[35] = (img)(_n4##x,_p1##y,z,v), \ 2.578 + I[36] = (img)(_p4##x,y,z,v), I[37] = (img)(_p3##x,y,z,v), I[38] = (img)(_p2##x,y,z,v), I[39] = (img)(_p1##x,y,z,v), \ 2.579 + I[40] = (img)(x,y,z,v), I[41] = (img)(_n1##x,y,z,v), I[42] = (img)(_n2##x,y,z,v), I[43] = (img)(_n3##x,y,z,v), \ 2.580 + I[44] = (img)(_n4##x,y,z,v), I[45] = (img)(_p4##x,_n1##y,z,v), I[46] = (img)(_p3##x,_n1##y,z,v), I[47] = (img)(_p2##x,_n1##y,z,v), \ 2.581 + I[48] = (img)(_p1##x,_n1##y,z,v), I[49] = (img)(x,_n1##y,z,v), I[50] = (img)(_n1##x,_n1##y,z,v), I[51] = (img)(_n2##x,_n1##y,z,v), \ 2.582 + I[52] = (img)(_n3##x,_n1##y,z,v), I[53] = (img)(_n4##x,_n1##y,z,v), I[54] = (img)(_p4##x,_n2##y,z,v), I[55] = (img)(_p3##x,_n2##y,z,v), \ 2.583 + I[56] = (img)(_p2##x,_n2##y,z,v), I[57] = (img)(_p1##x,_n2##y,z,v), I[58] = (img)(x,_n2##y,z,v), I[59] = (img)(_n1##x,_n2##y,z,v), \ 2.584 + I[60] = (img)(_n2##x,_n2##y,z,v), I[61] = (img)(_n3##x,_n2##y,z,v), I[62] = (img)(_n4##x,_n2##y,z,v), I[63] = (img)(_p4##x,_n3##y,z,v), \ 2.585 + I[64] = (img)(_p3##x,_n3##y,z,v), I[65] = (img)(_p2##x,_n3##y,z,v), I[66] = (img)(_p1##x,_n3##y,z,v), I[67] = (img)(x,_n3##y,z,v), \ 2.586 + I[68] = (img)(_n1##x,_n3##y,z,v), I[69] = (img)(_n2##x,_n3##y,z,v), I[70] = (img)(_n3##x,_n3##y,z,v), I[71] = (img)(_n4##x,_n3##y,z,v), \ 2.587 + I[72] = (img)(_p4##x,_n4##y,z,v), I[73] = (img)(_p3##x,_n4##y,z,v), I[74] = (img)(_p2##x,_n4##y,z,v), I[75] = (img)(_p1##x,_n4##y,z,v), \ 2.588 + I[76] = (img)(x,_n4##y,z,v), I[77] = (img)(_n1##x,_n4##y,z,v), I[78] = (img)(_n2##x,_n4##y,z,v), I[79] = (img)(_n3##x,_n4##y,z,v), \ 2.589 + I[80] = (img)(_n4##x,_n4##y,z,v) 2.590 + 2.591 +#define cimg_get2x2x2(img,x,y,z,v,I) \ 2.592 + I[0] = (img)(x,y,z,v), I[1] = (img)(_n1##x,y,z,v), I[2] = (img)(x,_n1##y,z,v), I[3] = (img)(_n1##x,_n1##y,z,v), \ 2.593 + I[4] = (img)(x,y,_n1##z,v), I[5] = (img)(_n1##x,y,_n1##z,v), I[6] = (img)(x,_n1##y,_n1##z,v), I[7] = (img)(_n1##x,_n1##y,_n1##z,v) 2.594 + 2.595 +#define cimg_get3x3x3(img,x,y,z,v,I) \ 2.596 + I[0] = (img)(_p1##x,_p1##y,_p1##z,v), I[1] = (img)(x,_p1##y,_p1##z,v), I[2] = (img)(_n1##x,_p1##y,_p1##z,v), \ 2.597 + I[3] = (img)(_p1##x,y,_p1##z,v), I[4] = (img)(x,y,_p1##z,v), I[5] = (img)(_n1##x,y,_p1##z,v), \ 2.598 + I[6] = (img)(_p1##x,_n1##y,_p1##z,v), I[7] = (img)(x,_n1##y,_p1##z,v), I[8] = (img)(_n1##x,_n1##y,_p1##z,v), \ 2.599 + I[9] = (img)(_p1##x,_p1##y,z,v), I[10] = (img)(x,_p1##y,z,v), I[11] = (img)(_n1##x,_p1##y,z,v), \ 2.600 + I[12] = (img)(_p1##x,y,z,v), I[13] = (img)(x,y,z,v), I[14] = (img)(_n1##x,y,z,v), \ 2.601 + I[15] = (img)(_p1##x,_n1##y,z,v), I[16] = (img)(x,_n1##y,z,v), I[17] = (img)(_n1##x,_n1##y,z,v), \ 2.602 + I[18] = (img)(_p1##x,_p1##y,_n1##z,v), I[19] = (img)(x,_p1##y,_n1##z,v), I[20] = (img)(_n1##x,_p1##y,_n1##z,v), \ 2.603 + I[21] = (img)(_p1##x,y,_n1##z,v), I[22] = (img)(x,y,_n1##z,v), I[23] = (img)(_n1##x,y,_n1##z,v), \ 2.604 + I[24] = (img)(_p1##x,_n1##y,_n1##z,v), I[25] = (img)(x,_n1##y,_n1##z,v), I[26] = (img)(_n1##x,_n1##y,_n1##z,v) 2.605 + 2.606 +// Define various image loops. 2.607 +// 2.608 +// These macros generally avoid the use of iterators, but you are not forced to used them ! 2.609 +// 2.610 +#define cimg_for(img,ptr,T_ptr) for (T_ptr *ptr = (img).data + (img).size(); (ptr--)>(img).data; ) 2.611 +#define cimg_foroff(img,off) for (unsigned int off = 0, _max##off = (unsigned int)(img).size(); off<_max##off; ++off) 2.612 +#define cimglist_for(list,l) for (unsigned int l=0; l<(list).size; ++l) 2.613 +#define cimglist_apply(list,fn) cimglist_for(list,__##fn) (list)[__##fn].fn 2.614 + 2.615 +#define cimg_for1(bound,i) for (int i = 0; i<(int)(bound); ++i) 2.616 +#define cimg_forX(img,x) cimg_for1((img).width,x) 2.617 +#define cimg_forY(img,y) cimg_for1((img).height,y) 2.618 +#define cimg_forZ(img,z) cimg_for1((img).depth,z) 2.619 +#define cimg_forV(img,v) cimg_for1((img).dim,v) 2.620 +#define cimg_forXY(img,x,y) cimg_forY(img,y) cimg_forX(img,x) 2.621 +#define cimg_forXZ(img,x,z) cimg_forZ(img,z) cimg_forX(img,x) 2.622 +#define cimg_forYZ(img,y,z) cimg_forZ(img,z) cimg_forY(img,y) 2.623 +#define cimg_forXV(img,x,v) cimg_forV(img,v) cimg_forX(img,x) 2.624 +#define cimg_forYV(img,y,v) cimg_forV(img,v) cimg_forY(img,y) 2.625 +#define cimg_forZV(img,z,v) cimg_forV(img,v) cimg_forZ(img,z) 2.626 +#define cimg_forXYZ(img,x,y,z) cimg_forZ(img,z) cimg_forXY(img,x,y) 2.627 +#define cimg_forXYV(img,x,y,v) cimg_forV(img,v) cimg_forXY(img,x,y) 2.628 +#define cimg_forXZV(img,x,z,v) cimg_forV(img,v) cimg_forXZ(img,x,z) 2.629 +#define cimg_forYZV(img,y,z,v) cimg_forV(img,v) cimg_forYZ(img,y,z) 2.630 +#define cimg_forXYZV(img,x,y,z,v) cimg_forV(img,v) cimg_forXYZ(img,x,y,z) 2.631 + 2.632 +#define cimg_for_in1(bound,i0,i1,i) \ 2.633 + for (int i = (int)(i0)<0?0:(int)(i0), _max##i = (int)(i1)<(int)(bound)?(int)(i1):(int)(bound)-1; i<=_max##i; ++i) 2.634 +#define cimg_for_inX(img,x0,x1,x) cimg_for_in1((img).width,x0,x1,x) 2.635 +#define cimg_for_inY(img,y0,y1,y) cimg_for_in1((img).height,y0,y1,y) 2.636 +#define cimg_for_inZ(img,z0,z1,z) cimg_for_in1((img).depth,z0,z1,z) 2.637 +#define cimg_for_inV(img,v0,v1,v) cimg_for_in1((img).dim,v0,v1,v) 2.638 +#define cimg_for_inXY(img,x0,y0,x1,y1,x,y) cimg_for_inY(img,y0,y1,y) cimg_for_inX(img,x0,x1,x) 2.639 +#define cimg_for_inXZ(img,x0,z0,x1,z1,x,z) cimg_for_inZ(img,z0,z1,z) cimg_for_inX(img,x0,x1,x) 2.640 +#define cimg_for_inXV(img,x0,v0,x1,v1,x,v) cimg_for_inV(img,v0,v1,v) cimg_for_inX(img,x0,x1,x) 2.641 +#define cimg_for_inYZ(img,y0,z0,y1,z1,y,z) cimg_for_inZ(img,x0,z1,z) cimg_for_inY(img,y0,y1,y) 2.642 +#define cimg_for_inYV(img,y0,v0,y1,v1,y,v) cimg_for_inV(img,v0,v1,v) cimg_for_inY(img,y0,y1,y) 2.643 +#define cimg_for_inZV(img,z0,v0,z1,v1,z,v) cimg_for_inV(img,v0,v1,v) cimg_for_inZ(img,z0,z1,z) 2.644 +#define cimg_for_inXYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_inZ(img,z0,z1,z) cimg_for_inXY(img,x0,y0,x1,y1,x,y) 2.645 +#define cimg_for_inXYV(img,x0,y0,v0,x1,y1,v1,x,y,v) cimg_for_inV(img,v0,v1,v) cimg_for_inXY(img,x0,y0,x1,y1,x,y) 2.646 +#define cimg_for_inXZV(img,x0,z0,v0,x1,z1,v1,x,z,v) cimg_for_inV(img,v0,v1,v) cimg_for_inXZ(img,x0,z0,x1,z1,x,z) 2.647 +#define cimg_for_inYZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_inV(img,v0,v1,v) cimg_for_inYZ(img,y0,z0,y1,z1,y,z) 2.648 +#define cimg_for_inXYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_inV(img,v0,v1,v) cimg_for_inXYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.649 +#define cimg_for_insideX(img,x,n) cimg_for_inX(img,n,(img).width-1-(n),x) 2.650 +#define cimg_for_insideY(img,y,n) cimg_for_inY(img,n,(img).height-1-(n),y) 2.651 +#define cimg_for_insideZ(img,z,n) cimg_for_inZ(img,n,(img).depth-1-(n),z) 2.652 +#define cimg_for_insideV(img,v,n) cimg_for_inV(img,n,(img).dim-1-(n),v) 2.653 +#define cimg_for_insideXY(img,x,y,n) cimg_for_inXY(img,n,n,(img).width-1-(n),(img).height-1-(n),x,y) 2.654 +#define cimg_for_insideXYZ(img,x,y,z,n) cimg_for_inXYZ(img,n,n,n,(img).width-1-(n),(img).height-1-(n),(img).depth-1-(n),x,y,z) 2.655 +#define cimg_for_insideXYZV(img,x,y,z,v,n) cimg_for_inXYZ(img,n,n,n,(img).width-1-(n),(img).height-1-(n),(img).depth-1-(n),x,y,z) 2.656 + 2.657 +#define cimg_for_out1(boundi,i0,i1,i) \ 2.658 + for (int i = (int)(i0)>0?0:(int)(i1)+1; i<(int)(boundi); ++i, i = i==(int)(i0)?(int)(i1)+1:i) 2.659 +#define cimg_for_out2(boundi,boundj,i0,j0,i1,j1,i,j) \ 2.660 + for (int j = 0; j<(int)(boundj); ++j) \ 2.661 + for (int _n1j = (int)(j<(int)(j0) || j>(int)(j1)), i = _n1j?0:(int)(i0)>0?0:(int)(i1)+1; i<(int)(boundi); \ 2.662 + ++i, i = _n1j?i:(i==(int)(i0)?(int)(i1)+1:i)) 2.663 +#define cimg_for_out3(boundi,boundj,boundk,i0,j0,k0,i1,j1,k1,i,j,k) \ 2.664 + for (int k = 0; k<(int)(boundk); ++k) \ 2.665 + for (int _n1k = (int)(k<(int)(k0) || k>(int)(k1)), j = 0; j<(int)(boundj); ++j) \ 2.666 + for (int _n1j = (int)(j<(int)(j0) || j>(int)(j1)), i = _n1j || _n1k?0:(int)(i0)>0?0:(int)(i1)+1; i<(int)(boundi); \ 2.667 + ++i, i = _n1j || _n1k?i:(i==(int)(i0)?(int)(i1)+1:i)) 2.668 +#define cimg_for_out4(boundi,boundj,boundk,boundl,i0,j0,k0,l0,i1,j1,k1,l1,i,j,k,l) \ 2.669 + for (int l = 0; l<(int)(boundl); ++l) \ 2.670 + for (int _n1l = (int)(l<(int)(l0) || l>(int)(l1)), k = 0; k<(int)(boundk); ++k) \ 2.671 + for (int _n1k = (int)(k<(int)(k0) || k>(int)(k1)), j = 0; j<(int)(boundj); ++j) \ 2.672 + for (int _n1j = (int)(j<(int)(j0) || j>(int)(j1)), i = _n1j || _n1k || _n1l?0:(int)(i0)>0?0:(int)(i1)+1; i<(int)(boundi); \ 2.673 + ++i, i = _n1j || _n1k || _n1l?i:(i==(int)(i0)?(int)(i1)+1:i)) 2.674 +#define cimg_for_outX(img,x0,x1,x) cimg_for_out1((img).width,x0,x1,x) 2.675 +#define cimg_for_outY(img,y0,y1,y) cimg_for_out1((img).height,y0,y1,y) 2.676 +#define cimg_for_outZ(img,z0,z1,z) cimg_for_out1((img).depth,z0,z1,z) 2.677 +#define cimg_for_outV(img,v0,v1,v) cimg_for_out1((img).dim,v0,v1,v) 2.678 +#define cimg_for_outXY(img,x0,y0,x1,y1,x,y) cimg_for_out2((img).width,(img).height,x0,y0,x1,y1,x,y) 2.679 +#define cimg_for_outXZ(img,x0,z0,x1,z1,x,z) cimg_for_out2((img).width,(img).depth,x0,z0,x1,z1,x,z) 2.680 +#define cimg_for_outXV(img,x0,v0,x1,v1,x,v) cimg_for_out2((img).width,(img).dim,x0,v0,x1,v1,x,v) 2.681 +#define cimg_for_outYZ(img,y0,z0,y1,z1,y,z) cimg_for_out2((img).height,(img).depth,y0,z0,y1,z1,y,z) 2.682 +#define cimg_for_outYV(img,y0,v0,y1,v1,y,v) cimg_for_out2((img).height,(img).dim,y0,v0,y1,v1,y,v) 2.683 +#define cimg_for_outZV(img,z0,v0,z1,v1,z,v) cimg_for_out2((img).depth,(img).dim,z0,v0,z1,v1,z,v) 2.684 +#define cimg_for_outXYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_out3((img).width,(img).height,(img).depth,x0,y0,z0,x1,y1,z1,x,y,z) 2.685 +#define cimg_for_outXYV(img,x0,y0,v0,x1,y1,v1,x,y,v) cimg_for_out3((img).width,(img).height,(img).dim,x0,y0,v0,x1,y1,v1,x,y,v) 2.686 +#define cimg_for_outXZV(img,x0,z0,v0,x1,z1,v1,x,z,v) cimg_for_out3((img).width,(img).depth,(img).dim,x0,z0,v0,x1,z1,v1,x,z,v) 2.687 +#define cimg_for_outYZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_out3((img).height,(img).depth,(img).dim,y0,z0,v0,y1,z1,v1,y,z,v) 2.688 +#define cimg_for_outXYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) \ 2.689 + cimg_for_out4((img).width,(img).height,(img).depth,(img).dim,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) 2.690 +#define cimg_for_borderX(img,x,n) cimg_for_outX(img,n,(img).width-1-(n),x) 2.691 +#define cimg_for_borderY(img,y,n) cimg_for_outY(img,n,(img).height-1-(n),y) 2.692 +#define cimg_for_borderZ(img,z,n) cimg_for_outZ(img,n,(img).depth-1-(n),z) 2.693 +#define cimg_for_borderV(img,v,n) cimg_for_outV(img,n,(img).dim-1-(n),v) 2.694 +#define cimg_for_borderXY(img,x,y,n) cimg_for_outXY(img,n,n,(img).width-1-(n),(img).height-1-(n),x,y) 2.695 +#define cimg_for_borderXYZ(img,x,y,z,n) cimg_for_outXYZ(img,n,n,n,(img).width-1-(n),(img).height-1-(n),(img).depth-1-(n),x,y,z) 2.696 +#define cimg_for_borderXYZV(img,x,y,z,v,n) \ 2.697 + cimg_for_outXYZV(img,n,n,n,n,(img).width-1-(n),(img).height-1-(n),(img).depth-1-(n),(img).dim-1-(n),x,y,z,v) 2.698 + 2.699 +#define cimg_for_spiralXY(img,x,y) \ 2.700 + for (int x = 0, y = 0, _n1##x = 1, _n1##y = (int)((img).width*(img).height); _n1##y; \ 2.701 + --_n1##y, _n1##x += (_n1##x>>2)-((!(_n1##x&3)?--y:((_n1##x&3)==1?(img).width-1-++x:((_n1##x&3)==2?(img).height-1-++y:--x))))?0:1) 2.702 + 2.703 +#define cimg_for_lineXY(x,y,x0,y0,x1,y1) \ 2.704 + for (int x = (int)(x0), y = (int)(y0), _sx = 1, _sy = 1, _steep = 0, \ 2.705 + _dx=(x1)>(x0)?(int)(x1)-(int)(x0):(_sx=-1,(int)(x0)-(int)(x1)), \ 2.706 + _dy=(y1)>(y0)?(int)(y1)-(int)(y0):(_sy=-1,(int)(y0)-(int)(y1)), \ 2.707 + _counter = _dx, \ 2.708 + _err = _dx>_dy?(_dy>>1):((_steep=1),(_counter=_dy),(_dx>>1)); \ 2.709 + _counter>=0; \ 2.710 + --_counter, x+=_steep? \ 2.711 + (y+=_sy,(_err-=_dx)<0?_err+=_dy,_sx:0): \ 2.712 + (y+=(_err-=_dy)<0?_err+=_dx,_sy:0,_sx)) 2.713 + 2.714 +#define cimg_for2(bound,i) \ 2.715 + for (int i = 0, _n1##i = 1>=(bound)?(int)(bound)-1:1; \ 2.716 + _n1##i<(int)(bound) || i==--_n1##i; \ 2.717 + ++i, ++_n1##i) 2.718 +#define cimg_for2X(img,x) cimg_for2((img).width,x) 2.719 +#define cimg_for2Y(img,y) cimg_for2((img).height,y) 2.720 +#define cimg_for2Z(img,z) cimg_for2((img).depth,z) 2.721 +#define cimg_for2V(img,v) cimg_for2((img).dim,v) 2.722 +#define cimg_for2XY(img,x,y) cimg_for2Y(img,y) cimg_for2X(img,x) 2.723 +#define cimg_for2XZ(img,x,z) cimg_for2Z(img,z) cimg_for2X(img,x) 2.724 +#define cimg_for2XV(img,x,v) cimg_for2V(img,v) cimg_for2X(img,x) 2.725 +#define cimg_for2YZ(img,y,z) cimg_for2Z(img,z) cimg_for2Y(img,y) 2.726 +#define cimg_for2YV(img,y,v) cimg_for2V(img,v) cimg_for2Y(img,y) 2.727 +#define cimg_for2ZV(img,z,v) cimg_for2V(img,v) cimg_for2Z(img,z) 2.728 +#define cimg_for2XYZ(img,x,y,z) cimg_for2Z(img,z) cimg_for2XY(img,x,y) 2.729 +#define cimg_for2XZV(img,x,z,v) cimg_for2V(img,v) cimg_for2XZ(img,x,z) 2.730 +#define cimg_for2YZV(img,y,z,v) cimg_for2V(img,v) cimg_for2YZ(img,y,z) 2.731 +#define cimg_for2XYZV(img,x,y,z,v) cimg_for2V(img,v) cimg_for2XYZ(img,x,y,z) 2.732 + 2.733 +#define cimg_for_in2(bound,i0,i1,i) \ 2.734 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.735 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1; \ 2.736 + i<=(int)(i1) && (_n1##i<(int)(bound) || i==--_n1##i); \ 2.737 + ++i, ++_n1##i) 2.738 +#define cimg_for_in2X(img,x0,x1,x) cimg_for_in2((img).width,x0,x1,x) 2.739 +#define cimg_for_in2Y(img,y0,y1,y) cimg_for_in2((img).height,y0,y1,y) 2.740 +#define cimg_for_in2Z(img,z0,z1,z) cimg_for_in2((img).depth,z0,z1,z) 2.741 +#define cimg_for_in2V(img,v0,v1,v) cimg_for_in2((img).dim,v0,v1,v) 2.742 +#define cimg_for_in2XY(img,x0,y0,x1,y1,x,y) cimg_for_in2Y(img,y0,y1,y) cimg_for_in2X(img,x0,x1,x) 2.743 +#define cimg_for_in2XZ(img,x0,z0,x1,z1,x,z) cimg_for_in2Z(img,z0,z1,z) cimg_for_in2X(img,x0,x1,x) 2.744 +#define cimg_for_in2XV(img,x0,v0,x1,v1,x,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2X(img,x0,x1,x) 2.745 +#define cimg_for_in2YZ(img,y0,z0,y1,z1,y,z) cimg_for_in2Z(img,z0,z1,z) cimg_for_in2Y(img,y0,y1,y) 2.746 +#define cimg_for_in2YV(img,y0,v0,y1,v1,y,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2Y(img,y0,y1,y) 2.747 +#define cimg_for_in2ZV(img,z0,v0,z1,v1,z,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2Z(img,z0,z1,z) 2.748 +#define cimg_for_in2XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in2Z(img,z0,z1,z) cimg_for_in2XY(img,x0,y0,x1,y1,x,y) 2.749 +#define cimg_for_in2XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2XZ(img,x0,y0,x1,y1,x,z) 2.750 +#define cimg_for_in2YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2YZ(img,y0,z0,y1,z1,y,z) 2.751 +#define cimg_for_in2XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in2V(img,v0,v1,v) cimg_for_in2XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.752 + 2.753 +#define cimg_for3(bound,i) \ 2.754 + for (int i = 0, _p1##i = 0, \ 2.755 + _n1##i = 1>=(bound)?(int)(bound)-1:1; \ 2.756 + _n1##i<(int)(bound) || i==--_n1##i; \ 2.757 + _p1##i = i++, ++_n1##i) 2.758 +#define cimg_for3X(img,x) cimg_for3((img).width,x) 2.759 +#define cimg_for3Y(img,y) cimg_for3((img).height,y) 2.760 +#define cimg_for3Z(img,z) cimg_for3((img).depth,z) 2.761 +#define cimg_for3V(img,v) cimg_for3((img).dim,v) 2.762 +#define cimg_for3XY(img,x,y) cimg_for3Y(img,y) cimg_for3X(img,x) 2.763 +#define cimg_for3XZ(img,x,z) cimg_for3Z(img,z) cimg_for3X(img,x) 2.764 +#define cimg_for3XV(img,x,v) cimg_for3V(img,v) cimg_for3X(img,x) 2.765 +#define cimg_for3YZ(img,y,z) cimg_for3Z(img,z) cimg_for3Y(img,y) 2.766 +#define cimg_for3YV(img,y,v) cimg_for3V(img,v) cimg_for3Y(img,y) 2.767 +#define cimg_for3ZV(img,z,v) cimg_for3V(img,v) cimg_for3Z(img,z) 2.768 +#define cimg_for3XYZ(img,x,y,z) cimg_for3Z(img,z) cimg_for3XY(img,x,y) 2.769 +#define cimg_for3XZV(img,x,z,v) cimg_for3V(img,v) cimg_for3XZ(img,x,z) 2.770 +#define cimg_for3YZV(img,y,z,v) cimg_for3V(img,v) cimg_for3YZ(img,y,z) 2.771 +#define cimg_for3XYZV(img,x,y,z,v) cimg_for3V(img,v) cimg_for3XYZ(img,x,y,z) 2.772 + 2.773 +#define cimg_for_in3(bound,i0,i1,i) \ 2.774 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.775 + _p1##i = i-1<0?0:i-1, \ 2.776 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1; \ 2.777 + i<=(int)(i1) && (_n1##i<(int)(bound) || i==--_n1##i); \ 2.778 + _p1##i = i++, ++_n1##i) 2.779 +#define cimg_for_in3X(img,x0,x1,x) cimg_for_in3((img).width,x0,x1,x) 2.780 +#define cimg_for_in3Y(img,y0,y1,y) cimg_for_in3((img).height,y0,y1,y) 2.781 +#define cimg_for_in3Z(img,z0,z1,z) cimg_for_in3((img).depth,z0,z1,z) 2.782 +#define cimg_for_in3V(img,v0,v1,v) cimg_for_in3((img).dim,v0,v1,v) 2.783 +#define cimg_for_in3XY(img,x0,y0,x1,y1,x,y) cimg_for_in3Y(img,y0,y1,y) cimg_for_in3X(img,x0,x1,x) 2.784 +#define cimg_for_in3XZ(img,x0,z0,x1,z1,x,z) cimg_for_in3Z(img,z0,z1,z) cimg_for_in3X(img,x0,x1,x) 2.785 +#define cimg_for_in3XV(img,x0,v0,x1,v1,x,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3X(img,x0,x1,x) 2.786 +#define cimg_for_in3YZ(img,y0,z0,y1,z1,y,z) cimg_for_in3Z(img,z0,z1,z) cimg_for_in3Y(img,y0,y1,y) 2.787 +#define cimg_for_in3YV(img,y0,v0,y1,v1,y,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3Y(img,y0,y1,y) 2.788 +#define cimg_for_in3ZV(img,z0,v0,z1,v1,z,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3Z(img,z0,z1,z) 2.789 +#define cimg_for_in3XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in3Z(img,z0,z1,z) cimg_for_in3XY(img,x0,y0,x1,y1,x,y) 2.790 +#define cimg_for_in3XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3XZ(img,x0,y0,x1,y1,x,z) 2.791 +#define cimg_for_in3YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3YZ(img,y0,z0,y1,z1,y,z) 2.792 +#define cimg_for_in3XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in3V(img,v0,v1,v) cimg_for_in3XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.793 + 2.794 +#define cimg_for4(bound,i) \ 2.795 + for (int i = 0, _p1##i = 0, _n1##i = 1>=(bound)?(int)(bound)-1:1, \ 2.796 + _n2##i = 2>=(bound)?(int)(bound)-1:2; \ 2.797 + _n2##i<(int)(bound) || _n1##i==--_n2##i || i==(_n2##i = --_n1##i); \ 2.798 + _p1##i = i++, ++_n1##i, ++_n2##i) 2.799 +#define cimg_for4X(img,x) cimg_for4((img).width,x) 2.800 +#define cimg_for4Y(img,y) cimg_for4((img).height,y) 2.801 +#define cimg_for4Z(img,z) cimg_for4((img).depth,z) 2.802 +#define cimg_for4V(img,v) cimg_for4((img).dim,v) 2.803 +#define cimg_for4XY(img,x,y) cimg_for4Y(img,y) cimg_for4X(img,x) 2.804 +#define cimg_for4XZ(img,x,z) cimg_for4Z(img,z) cimg_for4X(img,x) 2.805 +#define cimg_for4XV(img,x,v) cimg_for4V(img,v) cimg_for4X(img,x) 2.806 +#define cimg_for4YZ(img,y,z) cimg_for4Z(img,z) cimg_for4Y(img,y) 2.807 +#define cimg_for4YV(img,y,v) cimg_for4V(img,v) cimg_for4Y(img,y) 2.808 +#define cimg_for4ZV(img,z,v) cimg_for4V(img,v) cimg_for4Z(img,z) 2.809 +#define cimg_for4XYZ(img,x,y,z) cimg_for4Z(img,z) cimg_for4XY(img,x,y) 2.810 +#define cimg_for4XZV(img,x,z,v) cimg_for4V(img,v) cimg_for4XZ(img,x,z) 2.811 +#define cimg_for4YZV(img,y,z,v) cimg_for4V(img,v) cimg_for4YZ(img,y,z) 2.812 +#define cimg_for4XYZV(img,x,y,z,v) cimg_for4V(img,v) cimg_for4XYZ(img,x,y,z) 2.813 + 2.814 +#define cimg_for_in4(bound,i0,i1,i) \ 2.815 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.816 + _p1##i = i-1<0?0:i-1, \ 2.817 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.818 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2; \ 2.819 + i<=(int)(i1) && (_n2##i<(int)(bound) || _n1##i==--_n2##i || i==(_n2##i = --_n1##i)); \ 2.820 + _p1##i = i++, ++_n1##i, ++_n2##i) 2.821 +#define cimg_for_in4X(img,x0,x1,x) cimg_for_in4((img).width,x0,x1,x) 2.822 +#define cimg_for_in4Y(img,y0,y1,y) cimg_for_in4((img).height,y0,y1,y) 2.823 +#define cimg_for_in4Z(img,z0,z1,z) cimg_for_in4((img).depth,z0,z1,z) 2.824 +#define cimg_for_in4V(img,v0,v1,v) cimg_for_in4((img).dim,v0,v1,v) 2.825 +#define cimg_for_in4XY(img,x0,y0,x1,y1,x,y) cimg_for_in4Y(img,y0,y1,y) cimg_for_in4X(img,x0,x1,x) 2.826 +#define cimg_for_in4XZ(img,x0,z0,x1,z1,x,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4X(img,x0,x1,x) 2.827 +#define cimg_for_in4XV(img,x0,v0,x1,v1,x,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4X(img,x0,x1,x) 2.828 +#define cimg_for_in4YZ(img,y0,z0,y1,z1,y,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4Y(img,y0,y1,y) 2.829 +#define cimg_for_in4YV(img,y0,v0,y1,v1,y,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4Y(img,y0,y1,y) 2.830 +#define cimg_for_in4ZV(img,z0,v0,z1,v1,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4Z(img,z0,z1,z) 2.831 +#define cimg_for_in4XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4XY(img,x0,y0,x1,y1,x,y) 2.832 +#define cimg_for_in4XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4XZ(img,x0,y0,x1,y1,x,z) 2.833 +#define cimg_for_in4YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4YZ(img,y0,z0,y1,z1,y,z) 2.834 +#define cimg_for_in4XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.835 + 2.836 +#define cimg_for5(bound,i) \ 2.837 + for (int i = 0, _p2##i = 0, _p1##i = 0, \ 2.838 + _n1##i = 1>=(bound)?(int)(bound)-1:1, \ 2.839 + _n2##i = 2>=(bound)?(int)(bound)-1:2; \ 2.840 + _n2##i<(int)(bound) || _n1##i==--_n2##i || i==(_n2##i = --_n1##i); \ 2.841 + _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i) 2.842 +#define cimg_for5X(img,x) cimg_for5((img).width,x) 2.843 +#define cimg_for5Y(img,y) cimg_for5((img).height,y) 2.844 +#define cimg_for5Z(img,z) cimg_for5((img).depth,z) 2.845 +#define cimg_for5V(img,v) cimg_for5((img).dim,v) 2.846 +#define cimg_for5XY(img,x,y) cimg_for5Y(img,y) cimg_for5X(img,x) 2.847 +#define cimg_for5XZ(img,x,z) cimg_for5Z(img,z) cimg_for5X(img,x) 2.848 +#define cimg_for5XV(img,x,v) cimg_for5V(img,v) cimg_for5X(img,x) 2.849 +#define cimg_for5YZ(img,y,z) cimg_for5Z(img,z) cimg_for5Y(img,y) 2.850 +#define cimg_for5YV(img,y,v) cimg_for5V(img,v) cimg_for5Y(img,y) 2.851 +#define cimg_for5ZV(img,z,v) cimg_for5V(img,v) cimg_for5Z(img,z) 2.852 +#define cimg_for5XYZ(img,x,y,z) cimg_for5Z(img,z) cimg_for5XY(img,x,y) 2.853 +#define cimg_for5XZV(img,x,z,v) cimg_for5V(img,v) cimg_for5XZ(img,x,z) 2.854 +#define cimg_for5YZV(img,y,z,v) cimg_for5V(img,v) cimg_for5YZ(img,y,z) 2.855 +#define cimg_for5XYZV(img,x,y,z,v) cimg_for5V(img,v) cimg_for5XYZ(img,x,y,z) 2.856 + 2.857 +#define cimg_for_in5(bound,i0,i1,i) \ 2.858 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.859 + _p2##i = i-2<0?0:i-2, \ 2.860 + _p1##i = i-1<0?0:i-1, \ 2.861 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.862 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2; \ 2.863 + i<=(int)(i1) && (_n2##i<(int)(bound) || _n1##i==--_n2##i || i==(_n2##i = --_n1##i)); \ 2.864 + _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i) 2.865 +#define cimg_for_in5X(img,x0,x1,x) cimg_for_in5((img).width,x0,x1,x) 2.866 +#define cimg_for_in5Y(img,y0,y1,y) cimg_for_in5((img).height,y0,y1,y) 2.867 +#define cimg_for_in5Z(img,z0,z1,z) cimg_for_in5((img).depth,z0,z1,z) 2.868 +#define cimg_for_in5V(img,v0,v1,v) cimg_for_in5((img).dim,v0,v1,v) 2.869 +#define cimg_for_in5XY(img,x0,y0,x1,y1,x,y) cimg_for_in5Y(img,y0,y1,y) cimg_for_in5X(img,x0,x1,x) 2.870 +#define cimg_for_in5XZ(img,x0,z0,x1,z1,x,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5X(img,x0,x1,x) 2.871 +#define cimg_for_in5XV(img,x0,v0,x1,v1,x,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5X(img,x0,x1,x) 2.872 +#define cimg_for_in5YZ(img,y0,z0,y1,z1,y,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5Y(img,y0,y1,y) 2.873 +#define cimg_for_in5YV(img,y0,v0,y1,v1,y,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5Y(img,y0,y1,y) 2.874 +#define cimg_for_in5ZV(img,z0,v0,z1,v1,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5Z(img,z0,z1,z) 2.875 +#define cimg_for_in5XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5XY(img,x0,y0,x1,y1,x,y) 2.876 +#define cimg_for_in5XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5XZ(img,x0,y0,x1,y1,x,z) 2.877 +#define cimg_for_in5YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5YZ(img,y0,z0,y1,z1,y,z) 2.878 +#define cimg_for_in5XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.879 + 2.880 +#define cimg_for6(bound,i) \ 2.881 + for (int i = 0, _p2##i = 0, _p1##i = 0, \ 2.882 + _n1##i = 1>=(bound)?(int)(bound)-1:1, \ 2.883 + _n2##i = 2>=(bound)?(int)(bound)-1:2, \ 2.884 + _n3##i = 3>=(bound)?(int)(bound)-1:3; \ 2.885 + _n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || i==(_n3##i = _n2##i = --_n1##i); \ 2.886 + _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i) 2.887 +#define cimg_for6X(img,x) cimg_for6((img).width,x) 2.888 +#define cimg_for6Y(img,y) cimg_for6((img).height,y) 2.889 +#define cimg_for6Z(img,z) cimg_for6((img).depth,z) 2.890 +#define cimg_for6V(img,v) cimg_for6((img).dim,v) 2.891 +#define cimg_for6XY(img,x,y) cimg_for6Y(img,y) cimg_for6X(img,x) 2.892 +#define cimg_for6XZ(img,x,z) cimg_for6Z(img,z) cimg_for6X(img,x) 2.893 +#define cimg_for6XV(img,x,v) cimg_for6V(img,v) cimg_for6X(img,x) 2.894 +#define cimg_for6YZ(img,y,z) cimg_for6Z(img,z) cimg_for6Y(img,y) 2.895 +#define cimg_for6YV(img,y,v) cimg_for6V(img,v) cimg_for6Y(img,y) 2.896 +#define cimg_for6ZV(img,z,v) cimg_for6V(img,v) cimg_for6Z(img,z) 2.897 +#define cimg_for6XYZ(img,x,y,z) cimg_for6Z(img,z) cimg_for6XY(img,x,y) 2.898 +#define cimg_for6XZV(img,x,z,v) cimg_for6V(img,v) cimg_for6XZ(img,x,z) 2.899 +#define cimg_for6YZV(img,y,z,v) cimg_for6V(img,v) cimg_for6YZ(img,y,z) 2.900 +#define cimg_for6XYZV(img,x,y,z,v) cimg_for6V(img,v) cimg_for6XYZ(img,x,y,z) 2.901 + 2.902 +#define cimg_for_in6(bound,i0,i1,i) \ 2.903 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.904 + _p2##i = i-2<0?0:i-2, \ 2.905 + _p1##i = i-1<0?0:i-1, \ 2.906 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.907 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 2.908 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3; \ 2.909 + i<=(int)(i1) && (_n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || i==(_n3##i = _n2##i = --_n1##i)); \ 2.910 + _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i) 2.911 +#define cimg_for_in6X(img,x0,x1,x) cimg_for_in6((img).width,x0,x1,x) 2.912 +#define cimg_for_in6Y(img,y0,y1,y) cimg_for_in6((img).height,y0,y1,y) 2.913 +#define cimg_for_in6Z(img,z0,z1,z) cimg_for_in6((img).depth,z0,z1,z) 2.914 +#define cimg_for_in6V(img,v0,v1,v) cimg_for_in6((img).dim,v0,v1,v) 2.915 +#define cimg_for_in6XY(img,x0,y0,x1,y1,x,y) cimg_for_in6Y(img,y0,y1,y) cimg_for_in6X(img,x0,x1,x) 2.916 +#define cimg_for_in6XZ(img,x0,z0,x1,z1,x,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6X(img,x0,x1,x) 2.917 +#define cimg_for_in6XV(img,x0,v0,x1,v1,x,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6X(img,x0,x1,x) 2.918 +#define cimg_for_in6YZ(img,y0,z0,y1,z1,y,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6Y(img,y0,y1,y) 2.919 +#define cimg_for_in6YV(img,y0,v0,y1,v1,y,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6Y(img,y0,y1,y) 2.920 +#define cimg_for_in6ZV(img,z0,v0,z1,v1,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6Z(img,z0,z1,z) 2.921 +#define cimg_for_in6XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6XY(img,x0,y0,x1,y1,x,y) 2.922 +#define cimg_for_in6XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6XZ(img,x0,y0,x1,y1,x,z) 2.923 +#define cimg_for_in6YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6YZ(img,y0,z0,y1,z1,y,z) 2.924 +#define cimg_for_in6XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.925 + 2.926 +#define cimg_for7(bound,i) \ 2.927 + for (int i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 2.928 + _n1##i = 1>=(bound)?(int)(bound)-1:1, \ 2.929 + _n2##i = 2>=(bound)?(int)(bound)-1:2, \ 2.930 + _n3##i = 3>=(bound)?(int)(bound)-1:3; \ 2.931 + _n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || i==(_n3##i = _n2##i = --_n1##i); \ 2.932 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i) 2.933 +#define cimg_for7X(img,x) cimg_for7((img).width,x) 2.934 +#define cimg_for7Y(img,y) cimg_for7((img).height,y) 2.935 +#define cimg_for7Z(img,z) cimg_for7((img).depth,z) 2.936 +#define cimg_for7V(img,v) cimg_for7((img).dim,v) 2.937 +#define cimg_for7XY(img,x,y) cimg_for7Y(img,y) cimg_for7X(img,x) 2.938 +#define cimg_for7XZ(img,x,z) cimg_for7Z(img,z) cimg_for7X(img,x) 2.939 +#define cimg_for7XV(img,x,v) cimg_for7V(img,v) cimg_for7X(img,x) 2.940 +#define cimg_for7YZ(img,y,z) cimg_for7Z(img,z) cimg_for7Y(img,y) 2.941 +#define cimg_for7YV(img,y,v) cimg_for7V(img,v) cimg_for7Y(img,y) 2.942 +#define cimg_for7ZV(img,z,v) cimg_for7V(img,v) cimg_for7Z(img,z) 2.943 +#define cimg_for7XYZ(img,x,y,z) cimg_for7Z(img,z) cimg_for7XY(img,x,y) 2.944 +#define cimg_for7XZV(img,x,z,v) cimg_for7V(img,v) cimg_for7XZ(img,x,z) 2.945 +#define cimg_for7YZV(img,y,z,v) cimg_for7V(img,v) cimg_for7YZ(img,y,z) 2.946 +#define cimg_for7XYZV(img,x,y,z,v) cimg_for7V(img,v) cimg_for7XYZ(img,x,y,z) 2.947 + 2.948 +#define cimg_for_in7(bound,i0,i1,i) \ 2.949 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.950 + _p3##i = i-3<0?0:i-3, \ 2.951 + _p2##i = i-2<0?0:i-2, \ 2.952 + _p1##i = i-1<0?0:i-1, \ 2.953 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.954 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 2.955 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3; \ 2.956 + i<=(int)(i1) && (_n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || i==(_n3##i = _n2##i = --_n1##i)); \ 2.957 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i) 2.958 +#define cimg_for_in7X(img,x0,x1,x) cimg_for_in7((img).width,x0,x1,x) 2.959 +#define cimg_for_in7Y(img,y0,y1,y) cimg_for_in7((img).height,y0,y1,y) 2.960 +#define cimg_for_in7Z(img,z0,z1,z) cimg_for_in7((img).depth,z0,z1,z) 2.961 +#define cimg_for_in7V(img,v0,v1,v) cimg_for_in7((img).dim,v0,v1,v) 2.962 +#define cimg_for_in7XY(img,x0,y0,x1,y1,x,y) cimg_for_in7Y(img,y0,y1,y) cimg_for_in7X(img,x0,x1,x) 2.963 +#define cimg_for_in7XZ(img,x0,z0,x1,z1,x,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7X(img,x0,x1,x) 2.964 +#define cimg_for_in7XV(img,x0,v0,x1,v1,x,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7X(img,x0,x1,x) 2.965 +#define cimg_for_in7YZ(img,y0,z0,y1,z1,y,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7Y(img,y0,y1,y) 2.966 +#define cimg_for_in7YV(img,y0,v0,y1,v1,y,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7Y(img,y0,y1,y) 2.967 +#define cimg_for_in7ZV(img,z0,v0,z1,v1,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7Z(img,z0,z1,z) 2.968 +#define cimg_for_in7XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7XY(img,x0,y0,x1,y1,x,y) 2.969 +#define cimg_for_in7XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7XZ(img,x0,y0,x1,y1,x,z) 2.970 +#define cimg_for_in7YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7YZ(img,y0,z0,y1,z1,y,z) 2.971 +#define cimg_for_in7XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.972 + 2.973 +#define cimg_for8(bound,i) \ 2.974 + for (int i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 2.975 + _n1##i = 1>=(bound)?(int)(bound)-1:1, \ 2.976 + _n2##i = 2>=(bound)?(int)(bound)-1:2, \ 2.977 + _n3##i = 3>=(bound)?(int)(bound)-1:3, \ 2.978 + _n4##i = 4>=(bound)?(int)(bound)-1:4; \ 2.979 + _n4##i<(int)(bound) || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 2.980 + i==(_n4##i = _n3##i = _n2##i = --_n1##i); \ 2.981 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i) 2.982 +#define cimg_for8X(img,x) cimg_for8((img).width,x) 2.983 +#define cimg_for8Y(img,y) cimg_for8((img).height,y) 2.984 +#define cimg_for8Z(img,z) cimg_for8((img).depth,z) 2.985 +#define cimg_for8V(img,v) cimg_for8((img).dim,v) 2.986 +#define cimg_for8XY(img,x,y) cimg_for8Y(img,y) cimg_for8X(img,x) 2.987 +#define cimg_for8XZ(img,x,z) cimg_for8Z(img,z) cimg_for8X(img,x) 2.988 +#define cimg_for8XV(img,x,v) cimg_for8V(img,v) cimg_for8X(img,x) 2.989 +#define cimg_for8YZ(img,y,z) cimg_for8Z(img,z) cimg_for8Y(img,y) 2.990 +#define cimg_for8YV(img,y,v) cimg_for8V(img,v) cimg_for8Y(img,y) 2.991 +#define cimg_for8ZV(img,z,v) cimg_for8V(img,v) cimg_for8Z(img,z) 2.992 +#define cimg_for8XYZ(img,x,y,z) cimg_for8Z(img,z) cimg_for8XY(img,x,y) 2.993 +#define cimg_for8XZV(img,x,z,v) cimg_for8V(img,v) cimg_for8XZ(img,x,z) 2.994 +#define cimg_for8YZV(img,y,z,v) cimg_for8V(img,v) cimg_for8YZ(img,y,z) 2.995 +#define cimg_for8XYZV(img,x,y,z,v) cimg_for8V(img,v) cimg_for8XYZ(img,x,y,z) 2.996 + 2.997 +#define cimg_for_in8(bound,i0,i1,i) \ 2.998 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.999 + _p3##i = i-3<0?0:i-3, \ 2.1000 + _p2##i = i-2<0?0:i-2, \ 2.1001 + _p1##i = i-1<0?0:i-1, \ 2.1002 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.1003 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 2.1004 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 2.1005 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4; \ 2.1006 + i<=(int)(i1) && (_n4##i<(int)(bound) || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 2.1007 + i==(_n4##i = _n3##i = _n2##i = --_n1##i)); \ 2.1008 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i) 2.1009 +#define cimg_for_in8X(img,x0,x1,x) cimg_for_in8((img).width,x0,x1,x) 2.1010 +#define cimg_for_in8Y(img,y0,y1,y) cimg_for_in8((img).height,y0,y1,y) 2.1011 +#define cimg_for_in8Z(img,z0,z1,z) cimg_for_in8((img).depth,z0,z1,z) 2.1012 +#define cimg_for_in8V(img,v0,v1,v) cimg_for_in8((img).dim,v0,v1,v) 2.1013 +#define cimg_for_in8XY(img,x0,y0,x1,y1,x,y) cimg_for_in8Y(img,y0,y1,y) cimg_for_in8X(img,x0,x1,x) 2.1014 +#define cimg_for_in8XZ(img,x0,z0,x1,z1,x,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8X(img,x0,x1,x) 2.1015 +#define cimg_for_in8XV(img,x0,v0,x1,v1,x,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8X(img,x0,x1,x) 2.1016 +#define cimg_for_in8YZ(img,y0,z0,y1,z1,y,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8Y(img,y0,y1,y) 2.1017 +#define cimg_for_in8YV(img,y0,v0,y1,v1,y,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8Y(img,y0,y1,y) 2.1018 +#define cimg_for_in8ZV(img,z0,v0,z1,v1,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8Z(img,z0,z1,z) 2.1019 +#define cimg_for_in8XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8XY(img,x0,y0,x1,y1,x,y) 2.1020 +#define cimg_for_in8XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8XZ(img,x0,y0,x1,y1,x,z) 2.1021 +#define cimg_for_in8YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8YZ(img,y0,z0,y1,z1,y,z) 2.1022 +#define cimg_for_in8XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.1023 + 2.1024 +#define cimg_for9(bound,i) \ 2.1025 + for (int i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 2.1026 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 2.1027 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 2.1028 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 2.1029 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4; \ 2.1030 + _n4##i<(int)(bound) || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 2.1031 + i==(_n4##i = _n3##i = _n2##i = --_n1##i); \ 2.1032 + _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i) 2.1033 +#define cimg_for9X(img,x) cimg_for9((img).width,x) 2.1034 +#define cimg_for9Y(img,y) cimg_for9((img).height,y) 2.1035 +#define cimg_for9Z(img,z) cimg_for9((img).depth,z) 2.1036 +#define cimg_for9V(img,v) cimg_for9((img).dim,v) 2.1037 +#define cimg_for9XY(img,x,y) cimg_for9Y(img,y) cimg_for9X(img,x) 2.1038 +#define cimg_for9XZ(img,x,z) cimg_for9Z(img,z) cimg_for9X(img,x) 2.1039 +#define cimg_for9XV(img,x,v) cimg_for9V(img,v) cimg_for9X(img,x) 2.1040 +#define cimg_for9YZ(img,y,z) cimg_for9Z(img,z) cimg_for9Y(img,y) 2.1041 +#define cimg_for9YV(img,y,v) cimg_for9V(img,v) cimg_for9Y(img,y) 2.1042 +#define cimg_for9ZV(img,z,v) cimg_for9V(img,v) cimg_for9Z(img,z) 2.1043 +#define cimg_for9XYZ(img,x,y,z) cimg_for9Z(img,z) cimg_for9XY(img,x,y) 2.1044 +#define cimg_for9XZV(img,x,z,v) cimg_for9V(img,v) cimg_for9XZ(img,x,z) 2.1045 +#define cimg_for9YZV(img,y,z,v) cimg_for9V(img,v) cimg_for9YZ(img,y,z) 2.1046 +#define cimg_for9XYZV(img,x,y,z,v) cimg_for9V(img,v) cimg_for9XYZ(img,x,y,z) 2.1047 + 2.1048 +#define cimg_for_in9(bound,i0,i1,i) \ 2.1049 + for (int i = (int)(i0)<0?0:(int)(i0), \ 2.1050 + _p4##i = i-4<0?0:i-4, \ 2.1051 + _p3##i = i-3<0?0:i-3, \ 2.1052 + _p2##i = i-2<0?0:i-2, \ 2.1053 + _p1##i = i-1<0?0:i-1, \ 2.1054 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 2.1055 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 2.1056 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 2.1057 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4; \ 2.1058 + i<=(int)(i1) && (_n4##i<(int)(bound) || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 2.1059 + i==(_n4##i = _n3##i = _n2##i = --_n1##i)); \ 2.1060 + _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i) 2.1061 +#define cimg_for_in9X(img,x0,x1,x) cimg_for_in9((img).width,x0,x1,x) 2.1062 +#define cimg_for_in9Y(img,y0,y1,y) cimg_for_in9((img).height,y0,y1,y) 2.1063 +#define cimg_for_in9Z(img,z0,z1,z) cimg_for_in9((img).depth,z0,z1,z) 2.1064 +#define cimg_for_in9V(img,v0,v1,v) cimg_for_in9((img).dim,v0,v1,v) 2.1065 +#define cimg_for_in9XY(img,x0,y0,x1,y1,x,y) cimg_for_in9Y(img,y0,y1,y) cimg_for_in9X(img,x0,x1,x) 2.1066 +#define cimg_for_in9XZ(img,x0,z0,x1,z1,x,z) cimg_for_in9Z(img,z0,z1,z) cimg_for_in9X(img,x0,x1,x) 2.1067 +#define cimg_for_in9XV(img,x0,v0,x1,v1,x,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9X(img,x0,x1,x) 2.1068 +#define cimg_for_in9YZ(img,y0,z0,y1,z1,y,z) cimg_for_in9Z(img,z0,z1,z) cimg_for_in9Y(img,y0,y1,y) 2.1069 +#define cimg_for_in9YV(img,y0,v0,y1,v1,y,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9Y(img,y0,y1,y) 2.1070 +#define cimg_for_in9ZV(img,z0,v0,z1,v1,z,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9Z(img,z0,z1,z) 2.1071 +#define cimg_for_in9XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in9Z(img,z0,z1,z) cimg_for_in9XY(img,x0,y0,x1,y1,x,y) 2.1072 +#define cimg_for_in9XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9XZ(img,x0,y0,x1,y1,x,z) 2.1073 +#define cimg_for_in9YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9YZ(img,y0,z0,y1,z1,y,z) 2.1074 +#define cimg_for_in9XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in9V(img,v0,v1,v) cimg_for_in9XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 2.1075 + 2.1076 +#define cimg_for2x2(img,x,y,z,v,I) \ 2.1077 + cimg_for2((img).height,y) for (int x = 0, \ 2.1078 + _n1##x = (int)( \ 2.1079 + (I[0] = (img)(0,y,z,v)), \ 2.1080 + (I[2] = (img)(0,_n1##y,z,v)), \ 2.1081 + 1>=(img).width?(int)((img).width)-1:1); \ 2.1082 + (_n1##x<(int)((img).width) && ( \ 2.1083 + (I[1] = (img)(_n1##x,y,z,v)), \ 2.1084 + (I[3] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.1085 + x==--_n1##x; \ 2.1086 + I[0] = I[1], \ 2.1087 + I[2] = I[3], \ 2.1088 + ++x, ++_n1##x) 2.1089 + 2.1090 +#define cimg_for_in2x2(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1091 + cimg_for_in2((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1092 + _n1##x = (int)( \ 2.1093 + (I[0] = (img)(x,y,z,v)), \ 2.1094 + (I[2] = (img)(x,_n1##y,z,v)), \ 2.1095 + x+1>=(int)(img).width?(int)((img).width)-1:x+1); \ 2.1096 + x<=(int)(x1) && ((_n1##x<(int)((img).width) && ( \ 2.1097 + (I[1] = (img)(_n1##x,y,z,v)), \ 2.1098 + (I[3] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.1099 + x==--_n1##x); \ 2.1100 + I[0] = I[1], \ 2.1101 + I[2] = I[3], \ 2.1102 + ++x, ++_n1##x) 2.1103 + 2.1104 +#define cimg_for3x3(img,x,y,z,v,I) \ 2.1105 + cimg_for3((img).height,y) for (int x = 0, \ 2.1106 + _p1##x = 0, \ 2.1107 + _n1##x = (int)( \ 2.1108 + (I[0] = I[1] = (img)(0,_p1##y,z,v)), \ 2.1109 + (I[3] = I[4] = (img)(0,y,z,v)), \ 2.1110 + (I[6] = I[7] = (img)(0,_n1##y,z,v)), \ 2.1111 + 1>=(img).width?(int)((img).width)-1:1); \ 2.1112 + (_n1##x<(int)((img).width) && ( \ 2.1113 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.1114 + (I[5] = (img)(_n1##x,y,z,v)), \ 2.1115 + (I[8] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.1116 + x==--_n1##x; \ 2.1117 + I[0] = I[1], I[1] = I[2], \ 2.1118 + I[3] = I[4], I[4] = I[5], \ 2.1119 + I[6] = I[7], I[7] = I[8], \ 2.1120 + _p1##x = x++, ++_n1##x) 2.1121 + 2.1122 +#define cimg_for_in3x3(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1123 + cimg_for_in3((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1124 + _p1##x = x-1<0?0:x-1, \ 2.1125 + _n1##x = (int)( \ 2.1126 + (I[0] = (img)(_p1##x,_p1##y,z,v)), \ 2.1127 + (I[3] = (img)(_p1##x,y,z,v)), \ 2.1128 + (I[6] = (img)(_p1##x,_n1##y,z,v)), \ 2.1129 + (I[1] = (img)(x,_p1##y,z,v)), \ 2.1130 + (I[4] = (img)(x,y,z,v)), \ 2.1131 + (I[7] = (img)(x,_n1##y,z,v)), \ 2.1132 + x+1>=(int)(img).width?(int)((img).width)-1:x+1); \ 2.1133 + x<=(int)(x1) && ((_n1##x<(int)((img).width) && ( \ 2.1134 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.1135 + (I[5] = (img)(_n1##x,y,z,v)), \ 2.1136 + (I[8] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.1137 + x==--_n1##x); \ 2.1138 + I[0] = I[1], I[1] = I[2], \ 2.1139 + I[3] = I[4], I[4] = I[5], \ 2.1140 + I[6] = I[7], I[7] = I[8], \ 2.1141 + _p1##x = x++, ++_n1##x) 2.1142 + 2.1143 +#define cimg_for4x4(img,x,y,z,v,I) \ 2.1144 + cimg_for4((img).height,y) for (int x = 0, \ 2.1145 + _p1##x = 0, \ 2.1146 + _n1##x = 1>=(img).width?(int)((img).width)-1:1, \ 2.1147 + _n2##x = (int)( \ 2.1148 + (I[0] = I[1] = (img)(0,_p1##y,z,v)), \ 2.1149 + (I[4] = I[5] = (img)(0,y,z,v)), \ 2.1150 + (I[8] = I[9] = (img)(0,_n1##y,z,v)), \ 2.1151 + (I[12] = I[13] = (img)(0,_n2##y,z,v)), \ 2.1152 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.1153 + (I[6] = (img)(_n1##x,y,z,v)), \ 2.1154 + (I[10] = (img)(_n1##x,_n1##y,z,v)), \ 2.1155 + (I[14] = (img)(_n1##x,_n2##y,z,v)), \ 2.1156 + 2>=(img).width?(int)((img).width)-1:2); \ 2.1157 + (_n2##x<(int)((img).width) && ( \ 2.1158 + (I[3] = (img)(_n2##x,_p1##y,z,v)), \ 2.1159 + (I[7] = (img)(_n2##x,y,z,v)), \ 2.1160 + (I[11] = (img)(_n2##x,_n1##y,z,v)), \ 2.1161 + (I[15] = (img)(_n2##x,_n2##y,z,v)),1)) || \ 2.1162 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x); \ 2.1163 + I[0] = I[1], I[1] = I[2], I[2] = I[3], \ 2.1164 + I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 2.1165 + I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 2.1166 + I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 2.1167 + _p1##x = x++, ++_n1##x, ++_n2##x) 2.1168 + 2.1169 +#define cimg_for_in4x4(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1170 + cimg_for_in4((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1171 + _p1##x = x-1<0?0:x-1, \ 2.1172 + _n1##x = x+1>=(int)(img).width?(int)((img).width)-1:x+1, \ 2.1173 + _n2##x = (int)( \ 2.1174 + (I[0] = (img)(_p1##x,_p1##y,z,v)), \ 2.1175 + (I[4] = (img)(_p1##x,y,z,v)), \ 2.1176 + (I[8] = (img)(_p1##x,_n1##y,z,v)), \ 2.1177 + (I[12] = (img)(_p1##x,_n2##y,z,v)), \ 2.1178 + (I[1] = (img)(x,_p1##y,z,v)), \ 2.1179 + (I[5] = (img)(x,y,z,v)), \ 2.1180 + (I[9] = (img)(x,_n1##y,z,v)), \ 2.1181 + (I[13] = (img)(x,_n2##y,z,v)), \ 2.1182 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.1183 + (I[6] = (img)(_n1##x,y,z,v)), \ 2.1184 + (I[10] = (img)(_n1##x,_n1##y,z,v)), \ 2.1185 + (I[14] = (img)(_n1##x,_n2##y,z,v)), \ 2.1186 + x+2>=(int)(img).width?(int)((img).width)-1:x+2); \ 2.1187 + x<=(int)(x1) && ((_n2##x<(int)((img).width) && ( \ 2.1188 + (I[3] = (img)(_n2##x,_p1##y,z,v)), \ 2.1189 + (I[7] = (img)(_n2##x,y,z,v)), \ 2.1190 + (I[11] = (img)(_n2##x,_n1##y,z,v)), \ 2.1191 + (I[15] = (img)(_n2##x,_n2##y,z,v)),1)) || \ 2.1192 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x)); \ 2.1193 + I[0] = I[1], I[1] = I[2], I[2] = I[3], \ 2.1194 + I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 2.1195 + I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 2.1196 + I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 2.1197 + _p1##x = x++, ++_n1##x, ++_n2##x) 2.1198 + 2.1199 +#define cimg_for5x5(img,x,y,z,v,I) \ 2.1200 + cimg_for5((img).height,y) for (int x = 0, \ 2.1201 + _p2##x = 0, _p1##x = 0, \ 2.1202 + _n1##x = 1>=(img).width?(int)((img).width)-1:1, \ 2.1203 + _n2##x = (int)( \ 2.1204 + (I[0] = I[1] = I[2] = (img)(0,_p2##y,z,v)), \ 2.1205 + (I[5] = I[6] = I[7] = (img)(0,_p1##y,z,v)), \ 2.1206 + (I[10] = I[11] = I[12] = (img)(0,y,z,v)), \ 2.1207 + (I[15] = I[16] = I[17] = (img)(0,_n1##y,z,v)), \ 2.1208 + (I[20] = I[21] = I[22] = (img)(0,_n2##y,z,v)), \ 2.1209 + (I[3] = (img)(_n1##x,_p2##y,z,v)), \ 2.1210 + (I[8] = (img)(_n1##x,_p1##y,z,v)), \ 2.1211 + (I[13] = (img)(_n1##x,y,z,v)), \ 2.1212 + (I[18] = (img)(_n1##x,_n1##y,z,v)), \ 2.1213 + (I[23] = (img)(_n1##x,_n2##y,z,v)), \ 2.1214 + 2>=(img).width?(int)((img).width)-1:2); \ 2.1215 + (_n2##x<(int)((img).width) && ( \ 2.1216 + (I[4] = (img)(_n2##x,_p2##y,z,v)), \ 2.1217 + (I[9] = (img)(_n2##x,_p1##y,z,v)), \ 2.1218 + (I[14] = (img)(_n2##x,y,z,v)), \ 2.1219 + (I[19] = (img)(_n2##x,_n1##y,z,v)), \ 2.1220 + (I[24] = (img)(_n2##x,_n2##y,z,v)),1)) || \ 2.1221 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x); \ 2.1222 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], \ 2.1223 + I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 2.1224 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 2.1225 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 2.1226 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], \ 2.1227 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x) 2.1228 + 2.1229 +#define cimg_for_in5x5(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1230 + cimg_for_in5((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1231 + _p2##x = x-2<0?0:x-2, \ 2.1232 + _p1##x = x-1<0?0:x-1, \ 2.1233 + _n1##x = x+1>=(int)(img).width?(int)((img).width)-1:x+1, \ 2.1234 + _n2##x = (int)( \ 2.1235 + (I[0] = (img)(_p2##x,_p2##y,z,v)), \ 2.1236 + (I[5] = (img)(_p2##x,_p1##y,z,v)), \ 2.1237 + (I[10] = (img)(_p2##x,y,z,v)), \ 2.1238 + (I[15] = (img)(_p2##x,_n1##y,z,v)), \ 2.1239 + (I[20] = (img)(_p2##x,_n2##y,z,v)), \ 2.1240 + (I[1] = (img)(_p1##x,_p2##y,z,v)), \ 2.1241 + (I[6] = (img)(_p1##x,_p1##y,z,v)), \ 2.1242 + (I[11] = (img)(_p1##x,y,z,v)), \ 2.1243 + (I[16] = (img)(_p1##x,_n1##y,z,v)), \ 2.1244 + (I[21] = (img)(_p1##x,_n2##y,z,v)), \ 2.1245 + (I[2] = (img)(x,_p2##y,z,v)), \ 2.1246 + (I[7] = (img)(x,_p1##y,z,v)), \ 2.1247 + (I[12] = (img)(x,y,z,v)), \ 2.1248 + (I[17] = (img)(x,_n1##y,z,v)), \ 2.1249 + (I[22] = (img)(x,_n2##y,z,v)), \ 2.1250 + (I[3] = (img)(_n1##x,_p2##y,z,v)), \ 2.1251 + (I[8] = (img)(_n1##x,_p1##y,z,v)), \ 2.1252 + (I[13] = (img)(_n1##x,y,z,v)), \ 2.1253 + (I[18] = (img)(_n1##x,_n1##y,z,v)), \ 2.1254 + (I[23] = (img)(_n1##x,_n2##y,z,v)), \ 2.1255 + x+2>=(int)(img).width?(int)((img).width)-1:x+2); \ 2.1256 + x<=(int)(x1) && ((_n2##x<(int)((img).width) && ( \ 2.1257 + (I[4] = (img)(_n2##x,_p2##y,z,v)), \ 2.1258 + (I[9] = (img)(_n2##x,_p1##y,z,v)), \ 2.1259 + (I[14] = (img)(_n2##x,y,z,v)), \ 2.1260 + (I[19] = (img)(_n2##x,_n1##y,z,v)), \ 2.1261 + (I[24] = (img)(_n2##x,_n2##y,z,v)),1)) || \ 2.1262 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x)); \ 2.1263 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], \ 2.1264 + I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 2.1265 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 2.1266 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 2.1267 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], \ 2.1268 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x) 2.1269 + 2.1270 +#define cimg_for6x6(img,x,y,z,v,I) \ 2.1271 + cimg_for6((img).height,y) for (int x = 0, \ 2.1272 + _p2##x = 0, _p1##x = 0, \ 2.1273 + _n1##x = 1>=(img).width?(int)((img).width)-1:1, \ 2.1274 + _n2##x = 2>=(img).width?(int)((img).width)-1:2, \ 2.1275 + _n3##x = (int)( \ 2.1276 + (I[0] = I[1] = I[2] = (img)(0,_p2##y,z,v)), \ 2.1277 + (I[6] = I[7] = I[8] = (img)(0,_p1##y,z,v)), \ 2.1278 + (I[12] = I[13] = I[14] = (img)(0,y,z,v)), \ 2.1279 + (I[18] = I[19] = I[20] = (img)(0,_n1##y,z,v)), \ 2.1280 + (I[24] = I[25] = I[26] = (img)(0,_n2##y,z,v)), \ 2.1281 + (I[30] = I[31] = I[32] = (img)(0,_n3##y,z,v)), \ 2.1282 + (I[3] = (img)(_n1##x,_p2##y,z,v)), \ 2.1283 + (I[9] = (img)(_n1##x,_p1##y,z,v)), \ 2.1284 + (I[15] = (img)(_n1##x,y,z,v)), \ 2.1285 + (I[21] = (img)(_n1##x,_n1##y,z,v)), \ 2.1286 + (I[27] = (img)(_n1##x,_n2##y,z,v)), \ 2.1287 + (I[33] = (img)(_n1##x,_n3##y,z,v)), \ 2.1288 + (I[4] = (img)(_n2##x,_p2##y,z,v)), \ 2.1289 + (I[10] = (img)(_n2##x,_p1##y,z,v)), \ 2.1290 + (I[16] = (img)(_n2##x,y,z,v)), \ 2.1291 + (I[22] = (img)(_n2##x,_n1##y,z,v)), \ 2.1292 + (I[28] = (img)(_n2##x,_n2##y,z,v)), \ 2.1293 + (I[34] = (img)(_n2##x,_n3##y,z,v)), \ 2.1294 + 3>=(img).width?(int)((img).width)-1:3); \ 2.1295 + (_n3##x<(int)((img).width) && ( \ 2.1296 + (I[5] = (img)(_n3##x,_p2##y,z,v)), \ 2.1297 + (I[11] = (img)(_n3##x,_p1##y,z,v)), \ 2.1298 + (I[17] = (img)(_n3##x,y,z,v)), \ 2.1299 + (I[23] = (img)(_n3##x,_n1##y,z,v)), \ 2.1300 + (I[29] = (img)(_n3##x,_n2##y,z,v)), \ 2.1301 + (I[35] = (img)(_n3##x,_n3##y,z,v)),1)) || \ 2.1302 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3## x = _n2##x = --_n1##x); \ 2.1303 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], \ 2.1304 + I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 2.1305 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 2.1306 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 2.1307 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 2.1308 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 2.1309 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 2.1310 + 2.1311 +#define cimg_for_in6x6(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1312 + cimg_for_in6((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)x0, \ 2.1313 + _p2##x = x-2<0?0:x-2, \ 2.1314 + _p1##x = x-1<0?0:x-1, \ 2.1315 + _n1##x = x+1>=(int)(img).width?(int)((img).width)-1:x+1, \ 2.1316 + _n2##x = x+2>=(int)(img).width?(int)((img).width)-1:x+2, \ 2.1317 + _n3##x = (int)( \ 2.1318 + (I[0] = (img)(_p2##x,_p2##y,z,v)), \ 2.1319 + (I[6] = (img)(_p2##x,_p1##y,z,v)), \ 2.1320 + (I[12] = (img)(_p2##x,y,z,v)), \ 2.1321 + (I[18] = (img)(_p2##x,_n1##y,z,v)), \ 2.1322 + (I[24] = (img)(_p2##x,_n2##y,z,v)), \ 2.1323 + (I[30] = (img)(_p2##x,_n3##y,z,v)), \ 2.1324 + (I[1] = (img)(_p1##x,_p2##y,z,v)), \ 2.1325 + (I[7] = (img)(_p1##x,_p1##y,z,v)), \ 2.1326 + (I[13] = (img)(_p1##x,y,z,v)), \ 2.1327 + (I[19] = (img)(_p1##x,_n1##y,z,v)), \ 2.1328 + (I[25] = (img)(_p1##x,_n2##y,z,v)), \ 2.1329 + (I[31] = (img)(_p1##x,_n3##y,z,v)), \ 2.1330 + (I[2] = (img)(x,_p2##y,z,v)), \ 2.1331 + (I[8] = (img)(x,_p1##y,z,v)), \ 2.1332 + (I[14] = (img)(x,y,z,v)), \ 2.1333 + (I[20] = (img)(x,_n1##y,z,v)), \ 2.1334 + (I[26] = (img)(x,_n2##y,z,v)), \ 2.1335 + (I[32] = (img)(x,_n3##y,z,v)), \ 2.1336 + (I[3] = (img)(_n1##x,_p2##y,z,v)), \ 2.1337 + (I[9] = (img)(_n1##x,_p1##y,z,v)), \ 2.1338 + (I[15] = (img)(_n1##x,y,z,v)), \ 2.1339 + (I[21] = (img)(_n1##x,_n1##y,z,v)), \ 2.1340 + (I[27] = (img)(_n1##x,_n2##y,z,v)), \ 2.1341 + (I[33] = (img)(_n1##x,_n3##y,z,v)), \ 2.1342 + (I[4] = (img)(_n2##x,_p2##y,z,v)), \ 2.1343 + (I[10] = (img)(_n2##x,_p1##y,z,v)), \ 2.1344 + (I[16] = (img)(_n2##x,y,z,v)), \ 2.1345 + (I[22] = (img)(_n2##x,_n1##y,z,v)), \ 2.1346 + (I[28] = (img)(_n2##x,_n2##y,z,v)), \ 2.1347 + (I[34] = (img)(_n2##x,_n3##y,z,v)), \ 2.1348 + x+3>=(int)(img).width?(int)((img).width)-1:x+3); \ 2.1349 + x<=(int)(x1) && ((_n3##x<(int)((img).width) && ( \ 2.1350 + (I[5] = (img)(_n3##x,_p2##y,z,v)), \ 2.1351 + (I[11] = (img)(_n3##x,_p1##y,z,v)), \ 2.1352 + (I[17] = (img)(_n3##x,y,z,v)), \ 2.1353 + (I[23] = (img)(_n3##x,_n1##y,z,v)), \ 2.1354 + (I[29] = (img)(_n3##x,_n2##y,z,v)), \ 2.1355 + (I[35] = (img)(_n3##x,_n3##y,z,v)),1)) || \ 2.1356 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3## x = _n2##x = --_n1##x)); \ 2.1357 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], \ 2.1358 + I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 2.1359 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 2.1360 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 2.1361 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 2.1362 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 2.1363 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 2.1364 + 2.1365 +#define cimg_for7x7(img,x,y,z,v,I) \ 2.1366 + cimg_for7((img).height,y) for (int x = 0, \ 2.1367 + _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 2.1368 + _n1##x = 1>=(img).width?(int)((img).width)-1:1, \ 2.1369 + _n2##x = 2>=(img).width?(int)((img).width)-1:2, \ 2.1370 + _n3##x = (int)( \ 2.1371 + (I[0] = I[1] = I[2] = I[3] = (img)(0,_p3##y,z,v)), \ 2.1372 + (I[7] = I[8] = I[9] = I[10] = (img)(0,_p2##y,z,v)), \ 2.1373 + (I[14] = I[15] = I[16] = I[17] = (img)(0,_p1##y,z,v)), \ 2.1374 + (I[21] = I[22] = I[23] = I[24] = (img)(0,y,z,v)), \ 2.1375 + (I[28] = I[29] = I[30] = I[31] = (img)(0,_n1##y,z,v)), \ 2.1376 + (I[35] = I[36] = I[37] = I[38] = (img)(0,_n2##y,z,v)), \ 2.1377 + (I[42] = I[43] = I[44] = I[45] = (img)(0,_n3##y,z,v)), \ 2.1378 + (I[4] = (img)(_n1##x,_p3##y,z,v)), \ 2.1379 + (I[11] = (img)(_n1##x,_p2##y,z,v)), \ 2.1380 + (I[18] = (img)(_n1##x,_p1##y,z,v)), \ 2.1381 + (I[25] = (img)(_n1##x,y,z,v)), \ 2.1382 + (I[32] = (img)(_n1##x,_n1##y,z,v)), \ 2.1383 + (I[39] = (img)(_n1##x,_n2##y,z,v)), \ 2.1384 + (I[46] = (img)(_n1##x,_n3##y,z,v)), \ 2.1385 + (I[5] = (img)(_n2##x,_p3##y,z,v)), \ 2.1386 + (I[12] = (img)(_n2##x,_p2##y,z,v)), \ 2.1387 + (I[19] = (img)(_n2##x,_p1##y,z,v)), \ 2.1388 + (I[26] = (img)(_n2##x,y,z,v)), \ 2.1389 + (I[33] = (img)(_n2##x,_n1##y,z,v)), \ 2.1390 + (I[40] = (img)(_n2##x,_n2##y,z,v)), \ 2.1391 + (I[47] = (img)(_n2##x,_n3##y,z,v)), \ 2.1392 + 3>=(img).width?(int)((img).width)-1:3); \ 2.1393 + (_n3##x<(int)((img).width) && ( \ 2.1394 + (I[6] = (img)(_n3##x,_p3##y,z,v)), \ 2.1395 + (I[13] = (img)(_n3##x,_p2##y,z,v)), \ 2.1396 + (I[20] = (img)(_n3##x,_p1##y,z,v)), \ 2.1397 + (I[27] = (img)(_n3##x,y,z,v)), \ 2.1398 + (I[34] = (img)(_n3##x,_n1##y,z,v)), \ 2.1399 + (I[41] = (img)(_n3##x,_n2##y,z,v)), \ 2.1400 + (I[48] = (img)(_n3##x,_n3##y,z,v)),1)) || \ 2.1401 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x); \ 2.1402 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], \ 2.1403 + I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 2.1404 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 2.1405 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 2.1406 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 2.1407 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 2.1408 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], \ 2.1409 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 2.1410 + 2.1411 +#define cimg_for_in7x7(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1412 + cimg_for_in7((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1413 + _p3##x = x-3<0?0:x-3, \ 2.1414 + _p2##x = x-2<0?0:x-2, \ 2.1415 + _p1##x = x-1<0?0:x-1, \ 2.1416 + _n1##x = x+1>=(int)(img).width?(int)((img).width)-1:x+1, \ 2.1417 + _n2##x = x+2>=(int)(img).width?(int)((img).width)-1:x+2, \ 2.1418 + _n3##x = (int)( \ 2.1419 + (I[0] = (img)(_p3##x,_p3##y,z,v)), \ 2.1420 + (I[7] = (img)(_p3##x,_p2##y,z,v)), \ 2.1421 + (I[14] = (img)(_p3##x,_p1##y,z,v)), \ 2.1422 + (I[21] = (img)(_p3##x,y,z,v)), \ 2.1423 + (I[28] = (img)(_p3##x,_n1##y,z,v)), \ 2.1424 + (I[35] = (img)(_p3##x,_n2##y,z,v)), \ 2.1425 + (I[42] = (img)(_p3##x,_n3##y,z,v)), \ 2.1426 + (I[1] = (img)(_p2##x,_p3##y,z,v)), \ 2.1427 + (I[8] = (img)(_p2##x,_p2##y,z,v)), \ 2.1428 + (I[15] = (img)(_p2##x,_p1##y,z,v)), \ 2.1429 + (I[22] = (img)(_p2##x,y,z,v)), \ 2.1430 + (I[29] = (img)(_p2##x,_n1##y,z,v)), \ 2.1431 + (I[36] = (img)(_p2##x,_n2##y,z,v)), \ 2.1432 + (I[43] = (img)(_p2##x,_n3##y,z,v)), \ 2.1433 + (I[2] = (img)(_p1##x,_p3##y,z,v)), \ 2.1434 + (I[9] = (img)(_p1##x,_p2##y,z,v)), \ 2.1435 + (I[16] = (img)(_p1##x,_p1##y,z,v)), \ 2.1436 + (I[23] = (img)(_p1##x,y,z,v)), \ 2.1437 + (I[30] = (img)(_p1##x,_n1##y,z,v)), \ 2.1438 + (I[37] = (img)(_p1##x,_n2##y,z,v)), \ 2.1439 + (I[44] = (img)(_p1##x,_n3##y,z,v)), \ 2.1440 + (I[3] = (img)(x,_p3##y,z,v)), \ 2.1441 + (I[10] = (img)(x,_p2##y,z,v)), \ 2.1442 + (I[17] = (img)(x,_p1##y,z,v)), \ 2.1443 + (I[24] = (img)(x,y,z,v)), \ 2.1444 + (I[31] = (img)(x,_n1##y,z,v)), \ 2.1445 + (I[38] = (img)(x,_n2##y,z,v)), \ 2.1446 + (I[45] = (img)(x,_n3##y,z,v)), \ 2.1447 + (I[4] = (img)(_n1##x,_p3##y,z,v)), \ 2.1448 + (I[11] = (img)(_n1##x,_p2##y,z,v)), \ 2.1449 + (I[18] = (img)(_n1##x,_p1##y,z,v)), \ 2.1450 + (I[25] = (img)(_n1##x,y,z,v)), \ 2.1451 + (I[32] = (img)(_n1##x,_n1##y,z,v)), \ 2.1452 + (I[39] = (img)(_n1##x,_n2##y,z,v)), \ 2.1453 + (I[46] = (img)(_n1##x,_n3##y,z,v)), \ 2.1454 + (I[5] = (img)(_n2##x,_p3##y,z,v)), \ 2.1455 + (I[12] = (img)(_n2##x,_p2##y,z,v)), \ 2.1456 + (I[19] = (img)(_n2##x,_p1##y,z,v)), \ 2.1457 + (I[26] = (img)(_n2##x,y,z,v)), \ 2.1458 + (I[33] = (img)(_n2##x,_n1##y,z,v)), \ 2.1459 + (I[40] = (img)(_n2##x,_n2##y,z,v)), \ 2.1460 + (I[47] = (img)(_n2##x,_n3##y,z,v)), \ 2.1461 + x+3>=(int)(img).width?(int)((img).width)-1:x+3); \ 2.1462 + x<=(int)(x1) && ((_n3##x<(int)((img).width) && ( \ 2.1463 + (I[6] = (img)(_n3##x,_p3##y,z,v)), \ 2.1464 + (I[13] = (img)(_n3##x,_p2##y,z,v)), \ 2.1465 + (I[20] = (img)(_n3##x,_p1##y,z,v)), \ 2.1466 + (I[27] = (img)(_n3##x,y,z,v)), \ 2.1467 + (I[34] = (img)(_n3##x,_n1##y,z,v)), \ 2.1468 + (I[41] = (img)(_n3##x,_n2##y,z,v)), \ 2.1469 + (I[48] = (img)(_n3##x,_n3##y,z,v)),1)) || \ 2.1470 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x)); \ 2.1471 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], \ 2.1472 + I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 2.1473 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 2.1474 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 2.1475 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 2.1476 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 2.1477 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], \ 2.1478 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 2.1479 + 2.1480 +#define cimg_for8x8(img,x,y,z,v,I) \ 2.1481 + cimg_for8((img).height,y) for (int x = 0, \ 2.1482 + _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 2.1483 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 2.1484 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 2.1485 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 2.1486 + _n4##x = (int)( \ 2.1487 + (I[0] = I[1] = I[2] = I[3] = (img)(0,_p3##y,z,v)), \ 2.1488 + (I[8] = I[9] = I[10] = I[11] = (img)(0,_p2##y,z,v)), \ 2.1489 + (I[16] = I[17] = I[18] = I[19] = (img)(0,_p1##y,z,v)), \ 2.1490 + (I[24] = I[25] = I[26] = I[27] = (img)(0,y,z,v)), \ 2.1491 + (I[32] = I[33] = I[34] = I[35] = (img)(0,_n1##y,z,v)), \ 2.1492 + (I[40] = I[41] = I[42] = I[43] = (img)(0,_n2##y,z,v)), \ 2.1493 + (I[48] = I[49] = I[50] = I[51] = (img)(0,_n3##y,z,v)), \ 2.1494 + (I[56] = I[57] = I[58] = I[59] = (img)(0,_n4##y,z,v)), \ 2.1495 + (I[4] = (img)(_n1##x,_p3##y,z,v)), \ 2.1496 + (I[12] = (img)(_n1##x,_p2##y,z,v)), \ 2.1497 + (I[20] = (img)(_n1##x,_p1##y,z,v)), \ 2.1498 + (I[28] = (img)(_n1##x,y,z,v)), \ 2.1499 + (I[36] = (img)(_n1##x,_n1##y,z,v)), \ 2.1500 + (I[44] = (img)(_n1##x,_n2##y,z,v)), \ 2.1501 + (I[52] = (img)(_n1##x,_n3##y,z,v)), \ 2.1502 + (I[60] = (img)(_n1##x,_n4##y,z,v)), \ 2.1503 + (I[5] = (img)(_n2##x,_p3##y,z,v)), \ 2.1504 + (I[13] = (img)(_n2##x,_p2##y,z,v)), \ 2.1505 + (I[21] = (img)(_n2##x,_p1##y,z,v)), \ 2.1506 + (I[29] = (img)(_n2##x,y,z,v)), \ 2.1507 + (I[37] = (img)(_n2##x,_n1##y,z,v)), \ 2.1508 + (I[45] = (img)(_n2##x,_n2##y,z,v)), \ 2.1509 + (I[53] = (img)(_n2##x,_n3##y,z,v)), \ 2.1510 + (I[61] = (img)(_n2##x,_n4##y,z,v)), \ 2.1511 + (I[6] = (img)(_n3##x,_p3##y,z,v)), \ 2.1512 + (I[14] = (img)(_n3##x,_p2##y,z,v)), \ 2.1513 + (I[22] = (img)(_n3##x,_p1##y,z,v)), \ 2.1514 + (I[30] = (img)(_n3##x,y,z,v)), \ 2.1515 + (I[38] = (img)(_n3##x,_n1##y,z,v)), \ 2.1516 + (I[46] = (img)(_n3##x,_n2##y,z,v)), \ 2.1517 + (I[54] = (img)(_n3##x,_n3##y,z,v)), \ 2.1518 + (I[62] = (img)(_n3##x,_n4##y,z,v)), \ 2.1519 + 4>=((img).width)?(int)((img).width)-1:4); \ 2.1520 + (_n4##x<(int)((img).width) && ( \ 2.1521 + (I[7] = (img)(_n4##x,_p3##y,z,v)), \ 2.1522 + (I[15] = (img)(_n4##x,_p2##y,z,v)), \ 2.1523 + (I[23] = (img)(_n4##x,_p1##y,z,v)), \ 2.1524 + (I[31] = (img)(_n4##x,y,z,v)), \ 2.1525 + (I[39] = (img)(_n4##x,_n1##y,z,v)), \ 2.1526 + (I[47] = (img)(_n4##x,_n2##y,z,v)), \ 2.1527 + (I[55] = (img)(_n4##x,_n3##y,z,v)), \ 2.1528 + (I[63] = (img)(_n4##x,_n4##y,z,v)),1)) || \ 2.1529 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x); \ 2.1530 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 2.1531 + I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 2.1532 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 2.1533 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 2.1534 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 2.1535 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 2.1536 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 2.1537 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 2.1538 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 2.1539 + 2.1540 +#define cimg_for_in8x8(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1541 + cimg_for_in8((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1542 + _p3##x = x-3<0?0:x-3, \ 2.1543 + _p2##x = x-2<0?0:x-2, \ 2.1544 + _p1##x = x-1<0?0:x-1, \ 2.1545 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 2.1546 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 2.1547 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 2.1548 + _n4##x = (int)( \ 2.1549 + (I[0] = (img)(_p3##x,_p3##y,z,v)), \ 2.1550 + (I[8] = (img)(_p3##x,_p2##y,z,v)), \ 2.1551 + (I[16] = (img)(_p3##x,_p1##y,z,v)), \ 2.1552 + (I[24] = (img)(_p3##x,y,z,v)), \ 2.1553 + (I[32] = (img)(_p3##x,_n1##y,z,v)), \ 2.1554 + (I[40] = (img)(_p3##x,_n2##y,z,v)), \ 2.1555 + (I[48] = (img)(_p3##x,_n3##y,z,v)), \ 2.1556 + (I[56] = (img)(_p3##x,_n4##y,z,v)), \ 2.1557 + (I[1] = (img)(_p2##x,_p3##y,z,v)), \ 2.1558 + (I[9] = (img)(_p2##x,_p2##y,z,v)), \ 2.1559 + (I[17] = (img)(_p2##x,_p1##y,z,v)), \ 2.1560 + (I[25] = (img)(_p2##x,y,z,v)), \ 2.1561 + (I[33] = (img)(_p2##x,_n1##y,z,v)), \ 2.1562 + (I[41] = (img)(_p2##x,_n2##y,z,v)), \ 2.1563 + (I[49] = (img)(_p2##x,_n3##y,z,v)), \ 2.1564 + (I[57] = (img)(_p2##x,_n4##y,z,v)), \ 2.1565 + (I[2] = (img)(_p1##x,_p3##y,z,v)), \ 2.1566 + (I[10] = (img)(_p1##x,_p2##y,z,v)), \ 2.1567 + (I[18] = (img)(_p1##x,_p1##y,z,v)), \ 2.1568 + (I[26] = (img)(_p1##x,y,z,v)), \ 2.1569 + (I[34] = (img)(_p1##x,_n1##y,z,v)), \ 2.1570 + (I[42] = (img)(_p1##x,_n2##y,z,v)), \ 2.1571 + (I[50] = (img)(_p1##x,_n3##y,z,v)), \ 2.1572 + (I[58] = (img)(_p1##x,_n4##y,z,v)), \ 2.1573 + (I[3] = (img)(x,_p3##y,z,v)), \ 2.1574 + (I[11] = (img)(x,_p2##y,z,v)), \ 2.1575 + (I[19] = (img)(x,_p1##y,z,v)), \ 2.1576 + (I[27] = (img)(x,y,z,v)), \ 2.1577 + (I[35] = (img)(x,_n1##y,z,v)), \ 2.1578 + (I[43] = (img)(x,_n2##y,z,v)), \ 2.1579 + (I[51] = (img)(x,_n3##y,z,v)), \ 2.1580 + (I[59] = (img)(x,_n4##y,z,v)), \ 2.1581 + (I[4] = (img)(_n1##x,_p3##y,z,v)), \ 2.1582 + (I[12] = (img)(_n1##x,_p2##y,z,v)), \ 2.1583 + (I[20] = (img)(_n1##x,_p1##y,z,v)), \ 2.1584 + (I[28] = (img)(_n1##x,y,z,v)), \ 2.1585 + (I[36] = (img)(_n1##x,_n1##y,z,v)), \ 2.1586 + (I[44] = (img)(_n1##x,_n2##y,z,v)), \ 2.1587 + (I[52] = (img)(_n1##x,_n3##y,z,v)), \ 2.1588 + (I[60] = (img)(_n1##x,_n4##y,z,v)), \ 2.1589 + (I[5] = (img)(_n2##x,_p3##y,z,v)), \ 2.1590 + (I[13] = (img)(_n2##x,_p2##y,z,v)), \ 2.1591 + (I[21] = (img)(_n2##x,_p1##y,z,v)), \ 2.1592 + (I[29] = (img)(_n2##x,y,z,v)), \ 2.1593 + (I[37] = (img)(_n2##x,_n1##y,z,v)), \ 2.1594 + (I[45] = (img)(_n2##x,_n2##y,z,v)), \ 2.1595 + (I[53] = (img)(_n2##x,_n3##y,z,v)), \ 2.1596 + (I[61] = (img)(_n2##x,_n4##y,z,v)), \ 2.1597 + (I[6] = (img)(_n3##x,_p3##y,z,v)), \ 2.1598 + (I[14] = (img)(_n3##x,_p2##y,z,v)), \ 2.1599 + (I[22] = (img)(_n3##x,_p1##y,z,v)), \ 2.1600 + (I[30] = (img)(_n3##x,y,z,v)), \ 2.1601 + (I[38] = (img)(_n3##x,_n1##y,z,v)), \ 2.1602 + (I[46] = (img)(_n3##x,_n2##y,z,v)), \ 2.1603 + (I[54] = (img)(_n3##x,_n3##y,z,v)), \ 2.1604 + (I[62] = (img)(_n3##x,_n4##y,z,v)), \ 2.1605 + x+4>=(int)((img).width)?(int)((img).width)-1:x+4); \ 2.1606 + x<=(int)(x1) && ((_n4##x<(int)((img).width) && ( \ 2.1607 + (I[7] = (img)(_n4##x,_p3##y,z,v)), \ 2.1608 + (I[15] = (img)(_n4##x,_p2##y,z,v)), \ 2.1609 + (I[23] = (img)(_n4##x,_p1##y,z,v)), \ 2.1610 + (I[31] = (img)(_n4##x,y,z,v)), \ 2.1611 + (I[39] = (img)(_n4##x,_n1##y,z,v)), \ 2.1612 + (I[47] = (img)(_n4##x,_n2##y,z,v)), \ 2.1613 + (I[55] = (img)(_n4##x,_n3##y,z,v)), \ 2.1614 + (I[63] = (img)(_n4##x,_n4##y,z,v)),1)) || \ 2.1615 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x)); \ 2.1616 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 2.1617 + I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 2.1618 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 2.1619 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 2.1620 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 2.1621 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 2.1622 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 2.1623 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 2.1624 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 2.1625 + 2.1626 +#define cimg_for9x9(img,x,y,z,v,I) \ 2.1627 + cimg_for9((img).height,y) for (int x = 0, \ 2.1628 + _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 2.1629 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 2.1630 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 2.1631 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 2.1632 + _n4##x = (int)( \ 2.1633 + (I[0] = I[1] = I[2] = I[3] = I[4] = (img)(0,_p4##y,z,v)), \ 2.1634 + (I[9] = I[10] = I[11] = I[12] = I[13] = (img)(0,_p3##y,z,v)), \ 2.1635 + (I[18] = I[19] = I[20] = I[21] = I[22] = (img)(0,_p2##y,z,v)), \ 2.1636 + (I[27] = I[28] = I[29] = I[30] = I[31] = (img)(0,_p1##y,z,v)), \ 2.1637 + (I[36] = I[37] = I[38] = I[39] = I[40] = (img)(0,y,z,v)), \ 2.1638 + (I[45] = I[46] = I[47] = I[48] = I[49] = (img)(0,_n1##y,z,v)), \ 2.1639 + (I[54] = I[55] = I[56] = I[57] = I[58] = (img)(0,_n2##y,z,v)), \ 2.1640 + (I[63] = I[64] = I[65] = I[66] = I[67] = (img)(0,_n3##y,z,v)), \ 2.1641 + (I[72] = I[73] = I[74] = I[75] = I[76] = (img)(0,_n4##y,z,v)), \ 2.1642 + (I[5] = (img)(_n1##x,_p4##y,z,v)), \ 2.1643 + (I[14] = (img)(_n1##x,_p3##y,z,v)), \ 2.1644 + (I[23] = (img)(_n1##x,_p2##y,z,v)), \ 2.1645 + (I[32] = (img)(_n1##x,_p1##y,z,v)), \ 2.1646 + (I[41] = (img)(_n1##x,y,z,v)), \ 2.1647 + (I[50] = (img)(_n1##x,_n1##y,z,v)), \ 2.1648 + (I[59] = (img)(_n1##x,_n2##y,z,v)), \ 2.1649 + (I[68] = (img)(_n1##x,_n3##y,z,v)), \ 2.1650 + (I[77] = (img)(_n1##x,_n4##y,z,v)), \ 2.1651 + (I[6] = (img)(_n2##x,_p4##y,z,v)), \ 2.1652 + (I[15] = (img)(_n2##x,_p3##y,z,v)), \ 2.1653 + (I[24] = (img)(_n2##x,_p2##y,z,v)), \ 2.1654 + (I[33] = (img)(_n2##x,_p1##y,z,v)), \ 2.1655 + (I[42] = (img)(_n2##x,y,z,v)), \ 2.1656 + (I[51] = (img)(_n2##x,_n1##y,z,v)), \ 2.1657 + (I[60] = (img)(_n2##x,_n2##y,z,v)), \ 2.1658 + (I[69] = (img)(_n2##x,_n3##y,z,v)), \ 2.1659 + (I[78] = (img)(_n2##x,_n4##y,z,v)), \ 2.1660 + (I[7] = (img)(_n3##x,_p4##y,z,v)), \ 2.1661 + (I[16] = (img)(_n3##x,_p3##y,z,v)), \ 2.1662 + (I[25] = (img)(_n3##x,_p2##y,z,v)), \ 2.1663 + (I[34] = (img)(_n3##x,_p1##y,z,v)), \ 2.1664 + (I[43] = (img)(_n3##x,y,z,v)), \ 2.1665 + (I[52] = (img)(_n3##x,_n1##y,z,v)), \ 2.1666 + (I[61] = (img)(_n3##x,_n2##y,z,v)), \ 2.1667 + (I[70] = (img)(_n3##x,_n3##y,z,v)), \ 2.1668 + (I[79] = (img)(_n3##x,_n4##y,z,v)), \ 2.1669 + 4>=((img).width)?(int)((img).width)-1:4); \ 2.1670 + (_n4##x<(int)((img).width) && ( \ 2.1671 + (I[8] = (img)(_n4##x,_p4##y,z,v)), \ 2.1672 + (I[17] = (img)(_n4##x,_p3##y,z,v)), \ 2.1673 + (I[26] = (img)(_n4##x,_p2##y,z,v)), \ 2.1674 + (I[35] = (img)(_n4##x,_p1##y,z,v)), \ 2.1675 + (I[44] = (img)(_n4##x,y,z,v)), \ 2.1676 + (I[53] = (img)(_n4##x,_n1##y,z,v)), \ 2.1677 + (I[62] = (img)(_n4##x,_n2##y,z,v)), \ 2.1678 + (I[71] = (img)(_n4##x,_n3##y,z,v)), \ 2.1679 + (I[80] = (img)(_n4##x,_n4##y,z,v)),1)) || \ 2.1680 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x); \ 2.1681 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], \ 2.1682 + I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 2.1683 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], \ 2.1684 + I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 2.1685 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 2.1686 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 2.1687 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 2.1688 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 2.1689 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], \ 2.1690 + _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 2.1691 + 2.1692 +#define cimg_for_in9x9(img,x0,y0,x1,y1,x,y,z,v,I) \ 2.1693 + cimg_for_in9((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1694 + _p4##x = x-4<0?0:x-4, \ 2.1695 + _p3##x = x-3<0?0:x-3, \ 2.1696 + _p2##x = x-2<0?0:x-2, \ 2.1697 + _p1##x = x-1<0?0:x-1, \ 2.1698 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 2.1699 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 2.1700 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 2.1701 + _n4##x = (int)( \ 2.1702 + (I[0] = (img)(_p4##x,_p4##y,z,v)), \ 2.1703 + (I[9] = (img)(_p4##x,_p3##y,z,v)), \ 2.1704 + (I[18] = (img)(_p4##x,_p2##y,z,v)), \ 2.1705 + (I[27] = (img)(_p4##x,_p1##y,z,v)), \ 2.1706 + (I[36] = (img)(_p4##x,y,z,v)), \ 2.1707 + (I[45] = (img)(_p4##x,_n1##y,z,v)), \ 2.1708 + (I[54] = (img)(_p4##x,_n2##y,z,v)), \ 2.1709 + (I[63] = (img)(_p4##x,_n3##y,z,v)), \ 2.1710 + (I[72] = (img)(_p4##x,_n4##y,z,v)), \ 2.1711 + (I[1] = (img)(_p3##x,_p4##y,z,v)), \ 2.1712 + (I[10] = (img)(_p3##x,_p3##y,z,v)), \ 2.1713 + (I[19] = (img)(_p3##x,_p2##y,z,v)), \ 2.1714 + (I[28] = (img)(_p3##x,_p1##y,z,v)), \ 2.1715 + (I[37] = (img)(_p3##x,y,z,v)), \ 2.1716 + (I[46] = (img)(_p3##x,_n1##y,z,v)), \ 2.1717 + (I[55] = (img)(_p3##x,_n2##y,z,v)), \ 2.1718 + (I[64] = (img)(_p3##x,_n3##y,z,v)), \ 2.1719 + (I[73] = (img)(_p3##x,_n4##y,z,v)), \ 2.1720 + (I[2] = (img)(_p2##x,_p4##y,z,v)), \ 2.1721 + (I[11] = (img)(_p2##x,_p3##y,z,v)), \ 2.1722 + (I[20] = (img)(_p2##x,_p2##y,z,v)), \ 2.1723 + (I[29] = (img)(_p2##x,_p1##y,z,v)), \ 2.1724 + (I[38] = (img)(_p2##x,y,z,v)), \ 2.1725 + (I[47] = (img)(_p2##x,_n1##y,z,v)), \ 2.1726 + (I[56] = (img)(_p2##x,_n2##y,z,v)), \ 2.1727 + (I[65] = (img)(_p2##x,_n3##y,z,v)), \ 2.1728 + (I[74] = (img)(_p2##x,_n4##y,z,v)), \ 2.1729 + (I[3] = (img)(_p1##x,_p4##y,z,v)), \ 2.1730 + (I[12] = (img)(_p1##x,_p3##y,z,v)), \ 2.1731 + (I[21] = (img)(_p1##x,_p2##y,z,v)), \ 2.1732 + (I[30] = (img)(_p1##x,_p1##y,z,v)), \ 2.1733 + (I[39] = (img)(_p1##x,y,z,v)), \ 2.1734 + (I[48] = (img)(_p1##x,_n1##y,z,v)), \ 2.1735 + (I[57] = (img)(_p1##x,_n2##y,z,v)), \ 2.1736 + (I[66] = (img)(_p1##x,_n3##y,z,v)), \ 2.1737 + (I[75] = (img)(_p1##x,_n4##y,z,v)), \ 2.1738 + (I[4] = (img)(x,_p4##y,z,v)), \ 2.1739 + (I[13] = (img)(x,_p3##y,z,v)), \ 2.1740 + (I[22] = (img)(x,_p2##y,z,v)), \ 2.1741 + (I[31] = (img)(x,_p1##y,z,v)), \ 2.1742 + (I[40] = (img)(x,y,z,v)), \ 2.1743 + (I[49] = (img)(x,_n1##y,z,v)), \ 2.1744 + (I[58] = (img)(x,_n2##y,z,v)), \ 2.1745 + (I[67] = (img)(x,_n3##y,z,v)), \ 2.1746 + (I[76] = (img)(x,_n4##y,z,v)), \ 2.1747 + (I[5] = (img)(_n1##x,_p4##y,z,v)), \ 2.1748 + (I[14] = (img)(_n1##x,_p3##y,z,v)), \ 2.1749 + (I[23] = (img)(_n1##x,_p2##y,z,v)), \ 2.1750 + (I[32] = (img)(_n1##x,_p1##y,z,v)), \ 2.1751 + (I[41] = (img)(_n1##x,y,z,v)), \ 2.1752 + (I[50] = (img)(_n1##x,_n1##y,z,v)), \ 2.1753 + (I[59] = (img)(_n1##x,_n2##y,z,v)), \ 2.1754 + (I[68] = (img)(_n1##x,_n3##y,z,v)), \ 2.1755 + (I[77] = (img)(_n1##x,_n4##y,z,v)), \ 2.1756 + (I[6] = (img)(_n2##x,_p4##y,z,v)), \ 2.1757 + (I[15] = (img)(_n2##x,_p3##y,z,v)), \ 2.1758 + (I[24] = (img)(_n2##x,_p2##y,z,v)), \ 2.1759 + (I[33] = (img)(_n2##x,_p1##y,z,v)), \ 2.1760 + (I[42] = (img)(_n2##x,y,z,v)), \ 2.1761 + (I[51] = (img)(_n2##x,_n1##y,z,v)), \ 2.1762 + (I[60] = (img)(_n2##x,_n2##y,z,v)), \ 2.1763 + (I[69] = (img)(_n2##x,_n3##y,z,v)), \ 2.1764 + (I[78] = (img)(_n2##x,_n4##y,z,v)), \ 2.1765 + (I[7] = (img)(_n3##x,_p4##y,z,v)), \ 2.1766 + (I[16] = (img)(_n3##x,_p3##y,z,v)), \ 2.1767 + (I[25] = (img)(_n3##x,_p2##y,z,v)), \ 2.1768 + (I[34] = (img)(_n3##x,_p1##y,z,v)), \ 2.1769 + (I[43] = (img)(_n3##x,y,z,v)), \ 2.1770 + (I[52] = (img)(_n3##x,_n1##y,z,v)), \ 2.1771 + (I[61] = (img)(_n3##x,_n2##y,z,v)), \ 2.1772 + (I[70] = (img)(_n3##x,_n3##y,z,v)), \ 2.1773 + (I[79] = (img)(_n3##x,_n4##y,z,v)), \ 2.1774 + x+4>=(int)((img).width)?(int)((img).width)-1:x+4); \ 2.1775 + x<=(int)(x1) && ((_n4##x<(int)((img).width) && ( \ 2.1776 + (I[8] = (img)(_n4##x,_p4##y,z,v)), \ 2.1777 + (I[17] = (img)(_n4##x,_p3##y,z,v)), \ 2.1778 + (I[26] = (img)(_n4##x,_p2##y,z,v)), \ 2.1779 + (I[35] = (img)(_n4##x,_p1##y,z,v)), \ 2.1780 + (I[44] = (img)(_n4##x,y,z,v)), \ 2.1781 + (I[53] = (img)(_n4##x,_n1##y,z,v)), \ 2.1782 + (I[62] = (img)(_n4##x,_n2##y,z,v)), \ 2.1783 + (I[71] = (img)(_n4##x,_n3##y,z,v)), \ 2.1784 + (I[80] = (img)(_n4##x,_n4##y,z,v)),1)) || \ 2.1785 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x)); \ 2.1786 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], \ 2.1787 + I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 2.1788 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], \ 2.1789 + I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 2.1790 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 2.1791 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 2.1792 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 2.1793 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 2.1794 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], \ 2.1795 + _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 2.1796 + 2.1797 +#define cimg_for2x2x2(img,x,y,z,v,I) \ 2.1798 + cimg_for2((img).depth,z) cimg_for2((img).height,y) for (int x = 0, \ 2.1799 + _n1##x = (int)( \ 2.1800 + (I[0] = (img)(0,y,z,v)), \ 2.1801 + (I[2] = (img)(0,_n1##y,z,v)), \ 2.1802 + (I[4] = (img)(0,y,_n1##z,v)), \ 2.1803 + (I[6] = (img)(0,_n1##y,_n1##z,v)), \ 2.1804 + 1>=(img).width?(int)((img).width)-1:1); \ 2.1805 + (_n1##x<(int)((img).width) && ( \ 2.1806 + (I[1] = (img)(_n1##x,y,z,v)), \ 2.1807 + (I[3] = (img)(_n1##x,_n1##y,z,v)), \ 2.1808 + (I[5] = (img)(_n1##x,y,_n1##z,v)), \ 2.1809 + (I[7] = (img)(_n1##x,_n1##y,_n1##z,v)),1)) || \ 2.1810 + x==--_n1##x; \ 2.1811 + I[0] = I[1], I[2] = I[3], I[4] = I[5], I[6] = I[7], \ 2.1812 + ++x, ++_n1##x) 2.1813 + 2.1814 +#define cimg_for_in2x2x2(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 2.1815 + cimg_for_in2((img).depth,z0,z1,z) cimg_for_in2((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1816 + _n1##x = (int)( \ 2.1817 + (I[0] = (img)(x,y,z,v)), \ 2.1818 + (I[2] = (img)(x,_n1##y,z,v)), \ 2.1819 + (I[4] = (img)(x,y,_n1##z,v)), \ 2.1820 + (I[6] = (img)(x,_n1##y,_n1##z,v)), \ 2.1821 + x+1>=(int)(img).width?(int)((img).width)-1:x+1); \ 2.1822 + x<=(int)(x1) && ((_n1##x<(int)((img).width) && ( \ 2.1823 + (I[1] = (img)(_n1##x,y,z,v)), \ 2.1824 + (I[3] = (img)(_n1##x,_n1##y,z,v)), \ 2.1825 + (I[5] = (img)(_n1##x,y,_n1##z,v)), \ 2.1826 + (I[7] = (img)(_n1##x,_n1##y,_n1##z,v)),1)) || \ 2.1827 + x==--_n1##x); \ 2.1828 + I[0] = I[1], I[2] = I[3], I[4] = I[5], I[6] = I[7], \ 2.1829 + ++x, ++_n1##x) 2.1830 + 2.1831 +#define cimg_for3x3x3(img,x,y,z,v,I) \ 2.1832 + cimg_for3((img).depth,z) cimg_for3((img).height,y) for (int x = 0, \ 2.1833 + _p1##x = 0, \ 2.1834 + _n1##x = (int)( \ 2.1835 + (I[0] = I[1] = (img)(0,_p1##y,_p1##z,v)), \ 2.1836 + (I[3] = I[4] = (img)(0,y,_p1##z,v)), \ 2.1837 + (I[6] = I[7] = (img)(0,_n1##y,_p1##z,v)), \ 2.1838 + (I[9] = I[10] = (img)(0,_p1##y,z,v)), \ 2.1839 + (I[12] = I[13] = (img)(0,y,z,v)), \ 2.1840 + (I[15] = I[16] = (img)(0,_n1##y,z,v)), \ 2.1841 + (I[18] = I[19] = (img)(0,_p1##y,_n1##z,v)), \ 2.1842 + (I[21] = I[22] = (img)(0,y,_n1##z,v)), \ 2.1843 + (I[24] = I[25] = (img)(0,_n1##y,_n1##z,v)), \ 2.1844 + 1>=(img).width?(int)((img).width)-1:1); \ 2.1845 + (_n1##x<(int)((img).width) && ( \ 2.1846 + (I[2] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 2.1847 + (I[5] = (img)(_n1##x,y,_p1##z,v)), \ 2.1848 + (I[8] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 2.1849 + (I[11] = (img)(_n1##x,_p1##y,z,v)), \ 2.1850 + (I[14] = (img)(_n1##x,y,z,v)), \ 2.1851 + (I[17] = (img)(_n1##x,_n1##y,z,v)), \ 2.1852 + (I[20] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 2.1853 + (I[23] = (img)(_n1##x,y,_n1##z,v)), \ 2.1854 + (I[26] = (img)(_n1##x,_n1##y,_n1##z,v)),1)) || \ 2.1855 + x==--_n1##x; \ 2.1856 + I[0] = I[1], I[1] = I[2], I[3] = I[4], I[4] = I[5], I[6] = I[7], I[7] = I[8], \ 2.1857 + I[9] = I[10], I[10] = I[11], I[12] = I[13], I[13] = I[14], I[15] = I[16], I[16] = I[17], \ 2.1858 + I[18] = I[19], I[19] = I[20], I[21] = I[22], I[22] = I[23], I[24] = I[25], I[25] = I[26], \ 2.1859 + _p1##x = x++, ++_n1##x) 2.1860 + 2.1861 +#define cimg_for_in3x3x3(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 2.1862 + cimg_for_in3((img).depth,z0,z1,z) cimg_for_in3((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 2.1863 + _p1##x = x-1<0?0:x-1, \ 2.1864 + _n1##x = (int)( \ 2.1865 + (I[0] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 2.1866 + (I[3] = (img)(_p1##x,y,_p1##z,v)), \ 2.1867 + (I[6] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 2.1868 + (I[9] = (img)(_p1##x,_p1##y,z,v)), \ 2.1869 + (I[12] = (img)(_p1##x,y,z,v)), \ 2.1870 + (I[15] = (img)(_p1##x,_n1##y,z,v)), \ 2.1871 + (I[18] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 2.1872 + (I[21] = (img)(_p1##x,y,_n1##z,v)), \ 2.1873 + (I[24] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 2.1874 + (I[1] = (img)(x,_p1##y,_p1##z,v)), \ 2.1875 + (I[4] = (img)(x,y,_p1##z,v)), \ 2.1876 + (I[7] = (img)(x,_n1##y,_p1##z,v)), \ 2.1877 + (I[10] = (img)(x,_p1##y,z,v)), \ 2.1878 + (I[13] = (img)(x,y,z,v)), \ 2.1879 + (I[16] = (img)(x,_n1##y,z,v)), \ 2.1880 + (I[19] = (img)(x,_p1##y,_n1##z,v)), \ 2.1881 + (I[22] = (img)(x,y,_n1##z,v)), \ 2.1882 + (I[25] = (img)(x,_n1##y,_n1##z,v)), \ 2.1883 + x+1>=(int)(img).width?(int)((img).width)-1:x+1); \ 2.1884 + x<=(int)(x1) && ((_n1##x<(int)((img).width) && ( \ 2.1885 + (I[2] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 2.1886 + (I[5] = (img)(_n1##x,y,_p1##z,v)), \ 2.1887 + (I[8] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 2.1888 + (I[11] = (img)(_n1##x,_p1##y,z,v)), \ 2.1889 + (I[14] = (img)(_n1##x,y,z,v)), \ 2.1890 + (I[17] = (img)(_n1##x,_n1##y,z,v)), \ 2.1891 + (I[20] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 2.1892 + (I[23] = (img)(_n1##x,y,_n1##z,v)), \ 2.1893 + (I[26] = (img)(_n1##x,_n1##y,_n1##z,v)),1)) || \ 2.1894 + x==--_n1##x); \ 2.1895 + I[0] = I[1], I[1] = I[2], I[3] = I[4], I[4] = I[5], I[6] = I[7], I[7] = I[8], \ 2.1896 + I[9] = I[10], I[10] = I[11], I[12] = I[13], I[13] = I[14], I[15] = I[16], I[16] = I[17], \ 2.1897 + I[18] = I[19], I[19] = I[20], I[21] = I[22], I[22] = I[23], I[24] = I[25], I[25] = I[26], \ 2.1898 + _p1##x = x++, ++_n1##x) 2.1899 + 2.1900 +/*------------------------------------------------ 2.1901 + # 2.1902 + # 2.1903 + # Definition of the cimg_library:: namespace 2.1904 + # 2.1905 + # 2.1906 + -------------------------------------------------*/ 2.1907 +//! This namespace encompasses all classes and functions of the %CImg library. 2.1908 +/** 2.1909 + This namespace is defined to avoid functions and class names collisions 2.1910 + that could happen with the include of other C++ header files. 2.1911 + Anyway, it should not happen often and you should reasonnably start most of your 2.1912 + %CImg-based programs with 2.1913 + \code 2.1914 + #include "CImg.h" 2.1915 + using namespace cimg_library; 2.1916 + \endcode 2.1917 + to simplify the declaration of %CImg Library variables afterwards. 2.1918 +**/ 2.1919 +namespace cimg_library { 2.1920 + 2.1921 + // Declare the only four classes of the CImg Library. 2.1922 + // 2.1923 + template<typename T=float> struct CImg; 2.1924 + template<typename T=float> struct CImgList; 2.1925 + struct CImgDisplay; 2.1926 + struct CImgException; 2.1927 + 2.1928 + // (Pre)declare the cimg namespace. 2.1929 + // This is not the complete namespace declaration. It only contains some 2.1930 + // necessary stuffs to ensure a correct declaration order of classes and functions 2.1931 + // defined afterwards. 2.1932 + // 2.1933 + namespace cimg { 2.1934 + 2.1935 +#ifdef cimg_use_vt100 2.1936 + const char t_normal[] = { 0x1b,'[','0',';','0',';','0','m','\0' }; 2.1937 + const char t_red[] = { 0x1b,'[','4',';','3','1',';','5','9','m','\0' }; 2.1938 + const char t_bold[] = { 0x1b,'[','1','m','\0' }; 2.1939 + const char t_purple[] = { 0x1b,'[','0',';','3','5',';','5','9','m','\0' }; 2.1940 + const char t_green[] = { 0x1b,'[','0',';','3','2',';','5','9','m','\0' }; 2.1941 +#else 2.1942 + const char t_normal[] = { '\0' }; 2.1943 + const char *const t_red = cimg::t_normal, *const t_bold = cimg::t_normal, 2.1944 + *const t_purple = cimg::t_normal, *const t_green = cimg::t_normal; 2.1945 +#endif 2.1946 + 2.1947 + inline void info(); 2.1948 + 2.1949 + //! Get/set the current CImg exception mode. 2.1950 + /** 2.1951 + The way error messages are handled by CImg can be changed dynamically, using this function. 2.1952 + Possible values are : 2.1953 + - 0 to hide debug messages (quiet mode, but exceptions are still thrown). 2.1954 + - 1 to display debug messages on standard error (console). 2.1955 + - 2 to display debug messages in modal windows (default behavior). 2.1956 + - 3 to do as 1 + add extra warnings (may slow down the code !). 2.1957 + - 4 to do as 2 + add extra warnings (may slow down the code !). 2.1958 + **/ 2.1959 + inline unsigned int& exception_mode() { static unsigned int mode = cimg_debug; return mode; } 2.1960 + 2.1961 + inline int dialog(const char *title, const char *msg, const char *button1_txt="OK", 2.1962 + const char *button2_txt=0, const char *button3_txt=0, 2.1963 + const char *button4_txt=0, const char *button5_txt=0, 2.1964 + const char *button6_txt=0, const bool centering=false); 2.1965 + } 2.1966 + 2.1967 + /*---------------------------------------------- 2.1968 + # 2.1969 + # Definition of the CImgException structures 2.1970 + # 2.1971 + ----------------------------------------------*/ 2.1972 + //! Instances of this class are thrown when errors occur during a %CImg library function call. 2.1973 + /** 2.1974 + \section ex1 Overview 2.1975 + 2.1976 + CImgException is the base class of %CImg exceptions. 2.1977 + Exceptions are thrown by the %CImg Library when an error occured in a %CImg library function call. 2.1978 + CImgException is seldom thrown itself. Children classes that specify the kind of error encountered 2.1979 + are generally used instead. These sub-classes are : 2.1980 + 2.1981 + - \b CImgInstanceException : Thrown when the instance associated to the called %CImg function is not 2.1982 + correctly defined. Generally, this exception is thrown when one tries to process \a empty images. The example 2.1983 + below will throw a \a CImgInstanceException. 2.1984 + \code 2.1985 + CImg<float> img; // Construct an empty image. 2.1986 + img.blur(10); // Try to blur the image. 2.1987 + \endcode 2.1988 + 2.1989 + - \b CImgArgumentException : Thrown when one of the arguments given to the called %CImg function is not correct. 2.1990 + Generally, this exception is thrown when arguments passed to the function are outside an admissible range of values. 2.1991 + The example below will throw a \a CImgArgumentException. 2.1992 + \code 2.1993 + CImg<float> img(100,100,1,3); // Define a 100x100 color image with float pixels. 2.1994 + img = 0; // Try to fill pixels from the 0 pointer (invalid argument to operator=() ). 2.1995 + \endcode 2.1996 + 2.1997 + - \b CImgIOException : Thrown when an error occured when trying to load or save image files. 2.1998 + The example below will throw a \a CImgIOException. 2.1999 + \code 2.2000 + CImg<float> img("file_doesnt_exist.jpg"); // Try to load a file that doesn't exist. 2.2001 + \endcode 2.2002 + 2.2003 + - \b CImgDisplayException : Thrown when an error occured when trying to display an image in a window. 2.2004 + This exception is thrown when image display request cannot be satisfied. 2.2005 + 2.2006 + The parent class CImgException may be thrown itself when errors that cannot be classified in one of 2.2007 + the above type occur. It is recommended not to throw CImgExceptions yourself, since there are normally 2.2008 + reserved to %CImg Library functions. 2.2009 + \b CImgInstanceException, \b CImgArgumentException, \b CImgIOException and \b CImgDisplayException are simple 2.2010 + subclasses of CImgException and are thus not detailled more in this reference documentation. 2.2011 + 2.2012 + \section ex2 Exception handling 2.2013 + 2.2014 + When an error occurs, the %CImg Library first displays the error in a modal window. 2.2015 + Then, it throws an instance of the corresponding exception class, generally leading the program to stop 2.2016 + (this is the default behavior). 2.2017 + You can bypass this default behavior by handling the exceptions yourself, 2.2018 + using a code block <tt>try { ... } catch() { ... }</tt>. 2.2019 + In this case, you can avoid the apparition of the modal window, by 2.2020 + defining the environment variable <tt>cimg_debug</tt> to 0 before including the %CImg header file. 2.2021 + The example below shows how to cleanly handle %CImg Library exceptions : 2.2022 + \code 2.2023 + #define cimg_debug 0 // Disable modal window in CImg exceptions. 2.2024 + #define "CImg.h" 2.2025 + int main() { 2.2026 + try { 2.2027 + ...; // Here, do what you want. 2.2028 + } 2.2029 + catch (CImgInstanceException &e) { 2.2030 + std::fprintf(stderr,"CImg Library Error : %s",e.message); // Display your own error message 2.2031 + ... // Do what you want now. 2.2032 + } 2.2033 + } 2.2034 + \endcode 2.2035 + **/ 2.2036 + struct CImgException { 2.2037 +#define _cimg_exception_err(etype,disp_flag) \ 2.2038 + cimg_std::va_list ap; va_start(ap,format); cimg_std::vsprintf(message,format,ap); va_end(ap); \ 2.2039 + switch (cimg::exception_mode()) { \ 2.2040 + case 0 : break; \ 2.2041 + case 2 : case 4 : try { cimg::dialog(etype,message,"Abort"); } catch (CImgException&) { \ 2.2042 + cimg_std::fprintf(cimg_stdout,"\n%s# %s%s :\n%s\n\n",cimg::t_red,etype,cimg::t_normal,message); \ 2.2043 + } break; \ 2.2044 + default : cimg_std::fprintf(cimg_stdout,"\n%s# %s%s :\n%s\n\n",cimg::t_red,etype,cimg::t_normal,message); \ 2.2045 + } \ 2.2046 + if (cimg::exception_mode()>=3) cimg_library::cimg::info(); 2.2047 + 2.2048 + char message[1024]; //!< Message associated with the error that thrown the exception. 2.2049 + CImgException() { message[0]='\0'; } 2.2050 + CImgException(const char *format, ...) { _cimg_exception_err("CImgException",true); } 2.2051 + }; 2.2052 + 2.2053 + // The \ref CImgInstanceException class is used to throw an exception related 2.2054 + // to a non suitable instance encountered in a library function call. 2.2055 + struct CImgInstanceException: public CImgException { 2.2056 + CImgInstanceException(const char *format, ...) { _cimg_exception_err("CImgInstanceException",true); } 2.2057 + }; 2.2058 + 2.2059 + // The \ref CImgArgumentException class is used to throw an exception related 2.2060 + // to invalid arguments encountered in a library function call. 2.2061 + struct CImgArgumentException: public CImgException { 2.2062 + CImgArgumentException(const char *format, ...) { _cimg_exception_err("CImgArgumentException",true); } 2.2063 + }; 2.2064 + 2.2065 + // The \ref CImgIOException class is used to throw an exception related 2.2066 + // to Input/Output file problems encountered in a library function call. 2.2067 + struct CImgIOException: public CImgException { 2.2068 + CImgIOException(const char *format, ...) { _cimg_exception_err("CImgIOException",true); } 2.2069 + }; 2.2070 + 2.2071 + // The CImgDisplayException class is used to throw an exception related to display problems 2.2072 + // encountered in a library function call. 2.2073 + struct CImgDisplayException: public CImgException { 2.2074 + CImgDisplayException(const char *format, ...) { _cimg_exception_err("CImgDisplayException",false); } 2.2075 + }; 2.2076 + 2.2077 + // The CImgWarningException class is used to throw an exception for warnings 2.2078 + // encountered in a library function call. 2.2079 + struct CImgWarningException: public CImgException { 2.2080 + CImgWarningException(const char *format, ...) { _cimg_exception_err("CImgWarningException",false); } 2.2081 + }; 2.2082 + 2.2083 + /*------------------------------------- 2.2084 + # 2.2085 + # Definition of the namespace 'cimg' 2.2086 + # 2.2087 + --------------------------------------*/ 2.2088 + //! Namespace that encompasses \a low-level functions and variables of the %CImg Library. 2.2089 + /** 2.2090 + Most of the functions and variables within this namespace are used by the library for low-level processing. 2.2091 + Nevertheless, documented variables and functions of this namespace may be used safely in your own source code. 2.2092 + 2.2093 + \warning Never write <tt>using namespace cimg_library::cimg;</tt> in your source code, since a lot of functions of the 2.2094 + <tt>cimg::</tt> namespace have prototypes similar to standard C functions that could defined in the global namespace <tt>::</tt>. 2.2095 + **/ 2.2096 + namespace cimg { 2.2097 + 2.2098 + // Define the traits that will be used to determine the best data type to work with. 2.2099 + // 2.2100 + template<typename T> struct type { 2.2101 + static const char* string() { 2.2102 + static const char* s[] = { "unknown", "unknown8", "unknown16", "unknown24", 2.2103 + "unknown32", "unknown40", "unknown48", "unknown56", 2.2104 + "unknown64", "unknown72", "unknown80", "unknown88", 2.2105 + "unknown96", "unknown104", "unknown112", "unknown120", 2.2106 + "unknown128" }; 2.2107 + return s[(sizeof(T)<17)?sizeof(T):0]; 2.2108 + } 2.2109 + static bool is_float() { return false; } 2.2110 + static T min() { return (T)-1>0?(T)0:(T)-1<<(8*sizeof(T)-1); } 2.2111 + static T max() { return (T)-1>0?(T)-1:~((T)-1<<(8*sizeof(T)-1)); } 2.2112 + static const char* format() { return "%s"; } 2.2113 + static const char* format(const T val) { static const char *s = "unknown"; return s; } 2.2114 + }; 2.2115 + 2.2116 + template<> struct type<bool> { 2.2117 + static const char* string() { static const char *const s = "bool"; return s; } 2.2118 + static bool is_float() { return false; } 2.2119 + static bool min() { return false; } 2.2120 + static bool max() { return true; } 2.2121 + static const char* format() { return "%s"; } 2.2122 + static const char* format(const bool val) { static const char* s[] = { "false", "true" }; return s[val?1:0]; } 2.2123 + }; 2.2124 + 2.2125 + template<> struct type<unsigned char> { 2.2126 + static const char* string() { static const char *const s = "unsigned char"; return s; } 2.2127 + static bool is_float() { return false; } 2.2128 + static unsigned char min() { return 0; } 2.2129 + static unsigned char max() { return (unsigned char)~0U; } 2.2130 + static const char* format() { return "%u"; } 2.2131 + static unsigned int format(const unsigned char val) { return (unsigned int)val; } 2.2132 + }; 2.2133 + 2.2134 + template<> struct type<char> { 2.2135 + static const char* string() { static const char *const s = "char"; return s; } 2.2136 + static bool is_float() { return false; } 2.2137 + static char min() { return (char)(-1L<<(8*sizeof(char)-1)); } 2.2138 + static char max() { return ~((char)(-1L<<(8*sizeof(char)-1))); } 2.2139 + static const char* format() { return "%d"; } 2.2140 + static int format(const char val) { return (int)val; } 2.2141 + }; 2.2142 + 2.2143 + template<> struct type<signed char> { 2.2144 + static const char* string() { static const char *const s = "signed char"; return s; } 2.2145 + static bool is_float() { return false; } 2.2146 + static signed char min() { return (signed char)(-1L<<(8*sizeof(signed char)-1)); } 2.2147 + static signed char max() { return ~((signed char)(-1L<<(8*sizeof(signed char)-1))); } 2.2148 + static const char* format() { return "%d"; } 2.2149 + static unsigned int format(const signed char val) { return (int)val; } 2.2150 + }; 2.2151 + 2.2152 + template<> struct type<unsigned short> { 2.2153 + static const char* string() { static const char *const s = "unsigned short"; return s; } 2.2154 + static bool is_float() { return false; } 2.2155 + static unsigned short min() { return 0; } 2.2156 + static unsigned short max() { return (unsigned short)~0U; } 2.2157 + static const char* format() { return "%u"; } 2.2158 + static unsigned int format(const unsigned short val) { return (unsigned int)val; } 2.2159 + }; 2.2160 + 2.2161 + template<> struct type<short> { 2.2162 + static const char* string() { static const char *const s = "short"; return s; } 2.2163 + static bool is_float() { return false; } 2.2164 + static short min() { return (short)(-1L<<(8*sizeof(short)-1)); } 2.2165 + static short max() { return ~((short)(-1L<<(8*sizeof(short)-1))); } 2.2166 + static const char* format() { return "%d"; } 2.2167 + static int format(const short val) { return (int)val; } 2.2168 + }; 2.2169 + 2.2170 + template<> struct type<unsigned int> { 2.2171 + static const char* string() { static const char *const s = "unsigned int"; return s; } 2.2172 + static bool is_float() { return false; } 2.2173 + static unsigned int min() { return 0; } 2.2174 + static unsigned int max() { return (unsigned int)~0U; } 2.2175 + static const char* format() { return "%u"; } 2.2176 + static unsigned int format(const unsigned int val) { return val; } 2.2177 + }; 2.2178 + 2.2179 + template<> struct type<int> { 2.2180 + static const char* string() { static const char *const s = "int"; return s; } 2.2181 + static bool is_float() { return false; } 2.2182 + static int min() { return (int)(-1L<<(8*sizeof(int)-1)); } 2.2183 + static int max() { return ~((int)(-1L<<(8*sizeof(int)-1))); } 2.2184 + static const char* format() { return "%d"; } 2.2185 + static int format(const int val) { return val; } 2.2186 + }; 2.2187 + 2.2188 + template<> struct type<unsigned long> { 2.2189 + static const char* string() { static const char *const s = "unsigned long"; return s; } 2.2190 + static bool is_float() { return false; } 2.2191 + static unsigned long min() { return 0; } 2.2192 + static unsigned long max() { return (unsigned long)~0UL; } 2.2193 + static const char* format() { return "%lu"; } 2.2194 + static unsigned long format(const unsigned long val) { return val; } 2.2195 + }; 2.2196 + 2.2197 + template<> struct type<long> { 2.2198 + static const char* string() { static const char *const s = "long"; return s; } 2.2199 + static bool is_float() { return false; } 2.2200 + static long min() { return (long)(-1L<<(8*sizeof(long)-1)); } 2.2201 + static long max() { return ~((long)(-1L<<(8*sizeof(long)-1))); } 2.2202 + static const char* format() { return "%ld"; } 2.2203 + static long format(const long val) { return val; } 2.2204 + }; 2.2205 + 2.2206 + template<> struct type<float> { 2.2207 + static const char* string() { static const char *const s = "float"; return s; } 2.2208 + static bool is_float() { return true; } 2.2209 + static float min() { return -3.4E38f; } 2.2210 + static float max() { return 3.4E38f; } 2.2211 + static const char* format() { return "%g"; } 2.2212 + static double format(const float val) { return (double)val; } 2.2213 + }; 2.2214 + 2.2215 + template<> struct type<double> { 2.2216 + static const char* string() { static const char *const s = "double"; return s; } 2.2217 + static bool is_float() { return true; } 2.2218 + static double min() { return -1.7E308; } 2.2219 + static double max() { return 1.7E308; } 2.2220 + static const char* format() { return "%g"; } 2.2221 + static double format(const double val) { return val; } 2.2222 + }; 2.2223 + 2.2224 + template<typename T, typename t> struct superset { typedef T type; }; 2.2225 + template<> struct superset<bool,unsigned char> { typedef unsigned char type; }; 2.2226 + template<> struct superset<bool,char> { typedef char type; }; 2.2227 + template<> struct superset<bool,signed char> { typedef signed char type; }; 2.2228 + template<> struct superset<bool,unsigned short> { typedef unsigned short type; }; 2.2229 + template<> struct superset<bool,short> { typedef short type; }; 2.2230 + template<> struct superset<bool,unsigned int> { typedef unsigned int type; }; 2.2231 + template<> struct superset<bool,int> { typedef int type; }; 2.2232 + template<> struct superset<bool,unsigned long> { typedef unsigned long type; }; 2.2233 + template<> struct superset<bool,long> { typedef long type; }; 2.2234 + template<> struct superset<bool,float> { typedef float type; }; 2.2235 + template<> struct superset<bool,double> { typedef double type; }; 2.2236 + template<> struct superset<unsigned char,char> { typedef short type; }; 2.2237 + template<> struct superset<unsigned char,signed char> { typedef short type; }; 2.2238 + template<> struct superset<unsigned char,unsigned short> { typedef unsigned short type; }; 2.2239 + template<> struct superset<unsigned char,short> { typedef short type; }; 2.2240 + template<> struct superset<unsigned char,unsigned int> { typedef unsigned int type; }; 2.2241 + template<> struct superset<unsigned char,int> { typedef int type; }; 2.2242 + template<> struct superset<unsigned char,unsigned long> { typedef unsigned long type; }; 2.2243 + template<> struct superset<unsigned char,long> { typedef long type; }; 2.2244 + template<> struct superset<unsigned char,float> { typedef float type; }; 2.2245 + template<> struct superset<unsigned char,double> { typedef double type; }; 2.2246 + template<> struct superset<signed char,unsigned char> { typedef short type; }; 2.2247 + template<> struct superset<signed char,char> { typedef short type; }; 2.2248 + template<> struct superset<signed char,unsigned short> { typedef int type; }; 2.2249 + template<> struct superset<signed char,short> { typedef short type; }; 2.2250 + template<> struct superset<signed char,unsigned int> { typedef long type; }; 2.2251 + template<> struct superset<signed char,int> { typedef int type; }; 2.2252 + template<> struct superset<signed char,unsigned long> { typedef long type; }; 2.2253 + template<> struct superset<signed char,long> { typedef long type; }; 2.2254 + template<> struct superset<signed char,float> { typedef float type; }; 2.2255 + template<> struct superset<signed char,double> { typedef double type; }; 2.2256 + template<> struct superset<char,unsigned char> { typedef short type; }; 2.2257 + template<> struct superset<char,signed char> { typedef short type; }; 2.2258 + template<> struct superset<char,unsigned short> { typedef int type; }; 2.2259 + template<> struct superset<char,short> { typedef short type; }; 2.2260 + template<> struct superset<char,unsigned int> { typedef long type; }; 2.2261 + template<> struct superset<char,int> { typedef int type; }; 2.2262 + template<> struct superset<char,unsigned long> { typedef long type; }; 2.2263 + template<> struct superset<char,long> { typedef long type; }; 2.2264 + template<> struct superset<char,float> { typedef float type; }; 2.2265 + template<> struct superset<char,double> { typedef double type; }; 2.2266 + template<> struct superset<unsigned short,char> { typedef int type; }; 2.2267 + template<> struct superset<unsigned short,signed char> { typedef int type; }; 2.2268 + template<> struct superset<unsigned short,short> { typedef int type; }; 2.2269 + template<> struct superset<unsigned short,unsigned int> { typedef unsigned int type; }; 2.2270 + template<> struct superset<unsigned short,int> { typedef int type; }; 2.2271 + template<> struct superset<unsigned short,unsigned long> { typedef unsigned long type; }; 2.2272 + template<> struct superset<unsigned short,long> { typedef long type; }; 2.2273 + template<> struct superset<unsigned short,float> { typedef float type; }; 2.2274 + template<> struct superset<unsigned short,double> { typedef double type; }; 2.2275 + template<> struct superset<short,unsigned short> { typedef int type; }; 2.2276 + template<> struct superset<short,unsigned int> { typedef long type; }; 2.2277 + template<> struct superset<short,int> { typedef int type; }; 2.2278 + template<> struct superset<short,unsigned long> { typedef long type; }; 2.2279 + template<> struct superset<short,long> { typedef long type; }; 2.2280 + template<> struct superset<short,float> { typedef float type; }; 2.2281 + template<> struct superset<short,double> { typedef double type; }; 2.2282 + template<> struct superset<unsigned int,char> { typedef long type; }; 2.2283 + template<> struct superset<unsigned int,signed char> { typedef long type; }; 2.2284 + template<> struct superset<unsigned int,short> { typedef long type; }; 2.2285 + template<> struct superset<unsigned int,int> { typedef long type; }; 2.2286 + template<> struct superset<unsigned int,unsigned long> { typedef unsigned long type; }; 2.2287 + template<> struct superset<unsigned int,long> { typedef long type; }; 2.2288 + template<> struct superset<unsigned int,float> { typedef float type; }; 2.2289 + template<> struct superset<unsigned int,double> { typedef double type; }; 2.2290 + template<> struct superset<int,unsigned int> { typedef long type; }; 2.2291 + template<> struct superset<int,unsigned long> { typedef long type; }; 2.2292 + template<> struct superset<int,long> { typedef long type; }; 2.2293 + template<> struct superset<int,float> { typedef float type; }; 2.2294 + template<> struct superset<int,double> { typedef double type; }; 2.2295 + template<> struct superset<unsigned long,char> { typedef long type; }; 2.2296 + template<> struct superset<unsigned long,signed char> { typedef long type; }; 2.2297 + template<> struct superset<unsigned long,short> { typedef long type; }; 2.2298 + template<> struct superset<unsigned long,int> { typedef long type; }; 2.2299 + template<> struct superset<unsigned long,long> { typedef long type; }; 2.2300 + template<> struct superset<unsigned long,float> { typedef float type; }; 2.2301 + template<> struct superset<unsigned long,double> { typedef double type; }; 2.2302 + template<> struct superset<long,float> { typedef float type; }; 2.2303 + template<> struct superset<long,double> { typedef double type; }; 2.2304 + template<> struct superset<float,double> { typedef double type; }; 2.2305 + 2.2306 + template<typename t1, typename t2, typename t3> struct superset2 { 2.2307 + typedef typename superset<t1, typename superset<t2,t3>::type>::type type; 2.2308 + }; 2.2309 + 2.2310 + template<typename t1, typename t2, typename t3, typename t4> struct superset3 { 2.2311 + typedef typename superset<t1, typename superset2<t2,t3,t4>::type>::type type; 2.2312 + }; 2.2313 + 2.2314 + template<typename t1, typename t2> struct last { typedef t2 type; }; 2.2315 + 2.2316 +#define _cimg_Tuchar typename cimg::superset<T,unsigned char>::type 2.2317 +#define _cimg_Tint typename cimg::superset<T,int>::type 2.2318 +#define _cimg_Tfloat typename cimg::superset<T,float>::type 2.2319 +#define _cimg_Tdouble typename cimg::superset<T,double>::type 2.2320 +#define _cimg_Tt typename cimg::superset<T,t>::type 2.2321 + 2.2322 + // Define internal library variables. 2.2323 + // 2.2324 +#if cimg_display==1 2.2325 + struct X11info { 2.2326 + volatile unsigned int nb_wins; 2.2327 + pthread_t* event_thread; 2.2328 + CImgDisplay* wins[1024]; 2.2329 + Display* display; 2.2330 + unsigned int nb_bits; 2.2331 + GC* gc; 2.2332 + bool blue_first; 2.2333 + bool byte_order; 2.2334 + bool shm_enabled; 2.2335 +#ifdef cimg_use_xrandr 2.2336 + XRRScreenSize *resolutions; 2.2337 + Rotation curr_rotation; 2.2338 + unsigned int curr_resolution; 2.2339 + unsigned int nb_resolutions; 2.2340 +#endif 2.2341 + X11info():nb_wins(0),event_thread(0),display(0), 2.2342 + nb_bits(0),gc(0),blue_first(false),byte_order(false),shm_enabled(false) { 2.2343 +#ifdef cimg_use_xrandr 2.2344 + resolutions = 0; 2.2345 + curr_rotation = 0; 2.2346 + curr_resolution = nb_resolutions = 0; 2.2347 +#endif 2.2348 + } 2.2349 + }; 2.2350 +#if defined(cimg_module) 2.2351 + X11info& X11attr(); 2.2352 +#elif defined(cimg_main) 2.2353 + X11info& X11attr() { static X11info val; return val; } 2.2354 +#else 2.2355 + inline X11info& X11attr() { static X11info val; return val; } 2.2356 +#endif 2.2357 + 2.2358 +#elif cimg_display==2 2.2359 + struct Win32info { 2.2360 + HANDLE wait_event; 2.2361 + Win32info() { wait_event = CreateEvent(0,FALSE,FALSE,0); } 2.2362 + }; 2.2363 +#if defined(cimg_module) 2.2364 + Win32info& Win32attr(); 2.2365 +#elif defined(cimg_main) 2.2366 + Win32info& Win32attr() { static Win32info val; return val; } 2.2367 +#else 2.2368 + inline Win32info& Win32attr() { static Win32info val; return val; } 2.2369 +#endif 2.2370 + 2.2371 +#elif cimg_display==3 2.2372 + struct CarbonInfo { 2.2373 + MPCriticalRegionID windowListCR; // Protects access to the list of windows 2.2374 + int windowCount; // Count of displays used on the screen 2.2375 + pthread_t event_thread; // The background event thread 2.2376 + MPSemaphoreID sync_event; // Event used to perform tasks synchronizations 2.2377 + MPSemaphoreID wait_event; // Event used to notify that new events occured on the display 2.2378 + MPQueueID com_queue; // The message queue 2.2379 + CarbonInfo(): windowCount(0),event_thread(0),sync_event(0),com_queue(0) { 2.2380 + if (MPCreateCriticalRegion(&windowListCR) != noErr) // Create the critical region 2.2381 + throw CImgDisplayException("MPCreateCriticalRegion failed."); 2.2382 + if (MPCreateSemaphore(1, 0, &sync_event) != noErr) // Create the inter-thread sync object 2.2383 + throw CImgDisplayException("MPCreateSemaphore failed."); 2.2384 + if (MPCreateSemaphore(1, 0, &wait_event) != noErr) // Create the event sync object 2.2385 + throw CImgDisplayException("MPCreateSemaphore failed."); 2.2386 + if (MPCreateQueue(&com_queue) != noErr) // Create the shared queue 2.2387 + throw CImgDisplayException("MPCreateQueue failed."); 2.2388 + } 2.2389 + ~CarbonInfo() { 2.2390 + if (event_thread != 0) { // Terminates the resident thread, if needed 2.2391 + pthread_cancel(event_thread); 2.2392 + pthread_join(event_thread, NULL); 2.2393 + event_thread = 0; 2.2394 + } 2.2395 + if (MPDeleteCriticalRegion(windowListCR) != noErr) // Delete the critical region 2.2396 + throw CImgDisplayException("MPDeleteCriticalRegion failed."); 2.2397 + if (MPDeleteSemaphore(wait_event) != noErr) // Delete the event sync event 2.2398 + throw CImgDisplayException("MPDeleteEvent failed."); 2.2399 + if (MPDeleteSemaphore(sync_event) != noErr) // Delete the inter-thread sync event 2.2400 + throw CImgDisplayException("MPDeleteEvent failed."); 2.2401 + if (MPDeleteQueue(com_queue) != noErr) // Delete the shared queue 2.2402 + throw CImgDisplayException("MPDeleteQueue failed."); 2.2403 + } 2.2404 + }; 2.2405 +#if defined(cimg_module) 2.2406 + CarbonInfo& CarbonAttr(); 2.2407 +#elif defined(cimg_main) 2.2408 + CarbonInfo CarbonAttr() { static CarbonInfo val; return val; } 2.2409 +#else 2.2410 + inline CarbonInfo& CarbonAttr() { static CarbonInfo val; return val; } 2.2411 +#endif 2.2412 +#endif 2.2413 + 2.2414 +#if cimg_display==1 2.2415 + // Keycodes for X11-based graphical systems. 2.2416 + // 2.2417 + const unsigned int keyESC = XK_Escape; 2.2418 + const unsigned int keyF1 = XK_F1; 2.2419 + const unsigned int keyF2 = XK_F2; 2.2420 + const unsigned int keyF3 = XK_F3; 2.2421 + const unsigned int keyF4 = XK_F4; 2.2422 + const unsigned int keyF5 = XK_F5; 2.2423 + const unsigned int keyF6 = XK_F6; 2.2424 + const unsigned int keyF7 = XK_F7; 2.2425 + const unsigned int keyF8 = XK_F8; 2.2426 + const unsigned int keyF9 = XK_F9; 2.2427 + const unsigned int keyF10 = XK_F10; 2.2428 + const unsigned int keyF11 = XK_F11; 2.2429 + const unsigned int keyF12 = XK_F12; 2.2430 + const unsigned int keyPAUSE = XK_Pause; 2.2431 + const unsigned int key1 = XK_1; 2.2432 + const unsigned int key2 = XK_2; 2.2433 + const unsigned int key3 = XK_3; 2.2434 + const unsigned int key4 = XK_4; 2.2435 + const unsigned int key5 = XK_5; 2.2436 + const unsigned int key6 = XK_6; 2.2437 + const unsigned int key7 = XK_7; 2.2438 + const unsigned int key8 = XK_8; 2.2439 + const unsigned int key9 = XK_9; 2.2440 + const unsigned int key0 = XK_0; 2.2441 + const unsigned int keyBACKSPACE = XK_BackSpace; 2.2442 + const unsigned int keyINSERT = XK_Insert; 2.2443 + const unsigned int keyHOME = XK_Home; 2.2444 + const unsigned int keyPAGEUP = XK_Page_Up; 2.2445 + const unsigned int keyTAB = XK_Tab; 2.2446 + const unsigned int keyQ = XK_q; 2.2447 + const unsigned int keyW = XK_w; 2.2448 + const unsigned int keyE = XK_e; 2.2449 + const unsigned int keyR = XK_r; 2.2450 + const unsigned int keyT = XK_t; 2.2451 + const unsigned int keyY = XK_y; 2.2452 + const unsigned int keyU = XK_u; 2.2453 + const unsigned int keyI = XK_i; 2.2454 + const unsigned int keyO = XK_o; 2.2455 + const unsigned int keyP = XK_p; 2.2456 + const unsigned int keyDELETE = XK_Delete; 2.2457 + const unsigned int keyEND = XK_End; 2.2458 + const unsigned int keyPAGEDOWN = XK_Page_Down; 2.2459 + const unsigned int keyCAPSLOCK = XK_Caps_Lock; 2.2460 + const unsigned int keyA = XK_a; 2.2461 + const unsigned int keyS = XK_s; 2.2462 + const unsigned int keyD = XK_d; 2.2463 + const unsigned int keyF = XK_f; 2.2464 + const unsigned int keyG = XK_g; 2.2465 + const unsigned int keyH = XK_h; 2.2466 + const unsigned int keyJ = XK_j; 2.2467 + const unsigned int keyK = XK_k; 2.2468 + const unsigned int keyL = XK_l; 2.2469 + const unsigned int keyENTER = XK_Return; 2.2470 + const unsigned int keySHIFTLEFT = XK_Shift_L; 2.2471 + const unsigned int keyZ = XK_z; 2.2472 + const unsigned int keyX = XK_x; 2.2473 + const unsigned int keyC = XK_c; 2.2474 + const unsigned int keyV = XK_v; 2.2475 + const unsigned int keyB = XK_b; 2.2476 + const unsigned int keyN = XK_n; 2.2477 + const unsigned int keyM = XK_m; 2.2478 + const unsigned int keySHIFTRIGHT = XK_Shift_R; 2.2479 + const unsigned int keyARROWUP = XK_Up; 2.2480 + const unsigned int keyCTRLLEFT = XK_Control_L; 2.2481 + const unsigned int keyAPPLEFT = XK_Super_L; 2.2482 + const unsigned int keyALT = XK_Alt_L; 2.2483 + const unsigned int keySPACE = XK_space; 2.2484 + const unsigned int keyALTGR = XK_Alt_R; 2.2485 + const unsigned int keyAPPRIGHT = XK_Super_R; 2.2486 + const unsigned int keyMENU = XK_Menu; 2.2487 + const unsigned int keyCTRLRIGHT = XK_Control_R; 2.2488 + const unsigned int keyARROWLEFT = XK_Left; 2.2489 + const unsigned int keyARROWDOWN = XK_Down; 2.2490 + const unsigned int keyARROWRIGHT = XK_Right; 2.2491 + const unsigned int keyPAD0 = XK_KP_0; 2.2492 + const unsigned int keyPAD1 = XK_KP_1; 2.2493 + const unsigned int keyPAD2 = XK_KP_2; 2.2494 + const unsigned int keyPAD3 = XK_KP_3; 2.2495 + const unsigned int keyPAD4 = XK_KP_4; 2.2496 + const unsigned int keyPAD5 = XK_KP_5; 2.2497 + const unsigned int keyPAD6 = XK_KP_6; 2.2498 + const unsigned int keyPAD7 = XK_KP_7; 2.2499 + const unsigned int keyPAD8 = XK_KP_8; 2.2500 + const unsigned int keyPAD9 = XK_KP_9; 2.2501 + const unsigned int keyPADADD = XK_KP_Add; 2.2502 + const unsigned int keyPADSUB = XK_KP_Subtract; 2.2503 + const unsigned int keyPADMUL = XK_KP_Multiply; 2.2504 + const unsigned int keyPADDIV = XK_KP_Divide; 2.2505 + 2.2506 +#elif cimg_display==2 2.2507 + // Keycodes for Windows. 2.2508 + // 2.2509 + const unsigned int keyESC = VK_ESCAPE; 2.2510 + const unsigned int keyF1 = VK_F1; 2.2511 + const unsigned int keyF2 = VK_F2; 2.2512 + const unsigned int keyF3 = VK_F3; 2.2513 + const unsigned int keyF4 = VK_F4; 2.2514 + const unsigned int keyF5 = VK_F5; 2.2515 + const unsigned int keyF6 = VK_F6; 2.2516 + const unsigned int keyF7 = VK_F7; 2.2517 + const unsigned int keyF8 = VK_F8; 2.2518 + const unsigned int keyF9 = VK_F9; 2.2519 + const unsigned int keyF10 = VK_F10; 2.2520 + const unsigned int keyF11 = VK_F11; 2.2521 + const unsigned int keyF12 = VK_F12; 2.2522 + const unsigned int keyPAUSE = VK_PAUSE; 2.2523 + const unsigned int key1 = '1'; 2.2524 + const unsigned int key2 = '2'; 2.2525 + const unsigned int key3 = '3'; 2.2526 + const unsigned int key4 = '4'; 2.2527 + const unsigned int key5 = '5'; 2.2528 + const unsigned int key6 = '6'; 2.2529 + const unsigned int key7 = '7'; 2.2530 + const unsigned int key8 = '8'; 2.2531 + const unsigned int key9 = '9'; 2.2532 + const unsigned int key0 = '0'; 2.2533 + const unsigned int keyBACKSPACE = VK_BACK; 2.2534 + const unsigned int keyINSERT = VK_INSERT; 2.2535 + const unsigned int keyHOME = VK_HOME; 2.2536 + const unsigned int keyPAGEUP = VK_PRIOR; 2.2537 + const unsigned int keyTAB = VK_TAB; 2.2538 + const unsigned int keyQ = 'Q'; 2.2539 + const unsigned int keyW = 'W'; 2.2540 + const unsigned int keyE = 'E'; 2.2541 + const unsigned int keyR = 'R'; 2.2542 + const unsigned int keyT = 'T'; 2.2543 + const unsigned int keyY = 'Y'; 2.2544 + const unsigned int keyU = 'U'; 2.2545 + const unsigned int keyI = 'I'; 2.2546 + const unsigned int keyO = 'O'; 2.2547 + const unsigned int keyP = 'P'; 2.2548 + const unsigned int keyDELETE = VK_DELETE; 2.2549 + const unsigned int keyEND = VK_END; 2.2550 + const unsigned int keyPAGEDOWN = VK_NEXT; 2.2551 + const unsigned int keyCAPSLOCK = VK_CAPITAL; 2.2552 + const unsigned int keyA = 'A'; 2.2553 + const unsigned int keyS = 'S'; 2.2554 + const unsigned int keyD = 'D'; 2.2555 + const unsigned int keyF = 'F'; 2.2556 + const unsigned int keyG = 'G'; 2.2557 + const unsigned int keyH = 'H'; 2.2558 + const unsigned int keyJ = 'J'; 2.2559 + const unsigned int keyK = 'K'; 2.2560 + const unsigned int keyL = 'L'; 2.2561 + const unsigned int keyENTER = VK_RETURN; 2.2562 + const unsigned int keySHIFTLEFT = VK_SHIFT; 2.2563 + const unsigned int keyZ = 'Z'; 2.2564 + const unsigned int keyX = 'X'; 2.2565 + const unsigned int keyC = 'C'; 2.2566 + const unsigned int keyV = 'V'; 2.2567 + const unsigned int keyB = 'B'; 2.2568 + const unsigned int keyN = 'N'; 2.2569 + const unsigned int keyM = 'M'; 2.2570 + const unsigned int keySHIFTRIGHT = VK_SHIFT; 2.2571 + const unsigned int keyARROWUP = VK_UP; 2.2572 + const unsigned int keyCTRLLEFT = VK_CONTROL; 2.2573 + const unsigned int keyAPPLEFT = VK_LWIN; 2.2574 + const unsigned int keyALT = VK_LMENU; 2.2575 + const unsigned int keySPACE = VK_SPACE; 2.2576 + const unsigned int keyALTGR = VK_CONTROL; 2.2577 + const unsigned int keyAPPRIGHT = VK_RWIN; 2.2578 + const unsigned int keyMENU = VK_APPS; 2.2579 + const unsigned int keyCTRLRIGHT = VK_CONTROL; 2.2580 + const unsigned int keyARROWLEFT = VK_LEFT; 2.2581 + const unsigned int keyARROWDOWN = VK_DOWN; 2.2582 + const unsigned int keyARROWRIGHT = VK_RIGHT; 2.2583 + const unsigned int keyPAD0 = 0x60; 2.2584 + const unsigned int keyPAD1 = 0x61; 2.2585 + const unsigned int keyPAD2 = 0x62; 2.2586 + const unsigned int keyPAD3 = 0x63; 2.2587 + const unsigned int keyPAD4 = 0x64; 2.2588 + const unsigned int keyPAD5 = 0x65; 2.2589 + const unsigned int keyPAD6 = 0x66; 2.2590 + const unsigned int keyPAD7 = 0x67; 2.2591 + const unsigned int keyPAD8 = 0x68; 2.2592 + const unsigned int keyPAD9 = 0x69; 2.2593 + const unsigned int keyPADADD = VK_ADD; 2.2594 + const unsigned int keyPADSUB = VK_SUBTRACT; 2.2595 + const unsigned int keyPADMUL = VK_MULTIPLY; 2.2596 + const unsigned int keyPADDIV = VK_DIVIDE; 2.2597 + 2.2598 +#elif cimg_display==3 2.2599 + // Keycodes for MacOSX, when using the Carbon framework. 2.2600 + // 2.2601 + const unsigned int keyESC = kEscapeCharCode; 2.2602 + const unsigned int keyF1 = 2U; 2.2603 + const unsigned int keyF2 = 3U; 2.2604 + const unsigned int keyF3 = 4U; 2.2605 + const unsigned int keyF4 = 5U; 2.2606 + const unsigned int keyF5 = 6U; 2.2607 + const unsigned int keyF6 = 7U; 2.2608 + const unsigned int keyF7 = 8U; 2.2609 + const unsigned int keyF8 = 9U; 2.2610 + const unsigned int keyF9 = 10U; 2.2611 + const unsigned int keyF10 = 11U; 2.2612 + const unsigned int keyF11 = 12U; 2.2613 + const unsigned int keyF12 = 13U; 2.2614 + const unsigned int keyPAUSE = 14U; 2.2615 + const unsigned int key1 = '1'; 2.2616 + const unsigned int key2 = '2'; 2.2617 + const unsigned int key3 = '3'; 2.2618 + const unsigned int key4 = '4'; 2.2619 + const unsigned int key5 = '5'; 2.2620 + const unsigned int key6 = '6'; 2.2621 + const unsigned int key7 = '7'; 2.2622 + const unsigned int key8 = '8'; 2.2623 + const unsigned int key9 = '9'; 2.2624 + const unsigned int key0 = '0'; 2.2625 + const unsigned int keyBACKSPACE = kBackspaceCharCode; 2.2626 + const unsigned int keyINSERT = 26U; 2.2627 + const unsigned int keyHOME = kHomeCharCode; 2.2628 + const unsigned int keyPAGEUP = kPageUpCharCode; 2.2629 + const unsigned int keyTAB = kTabCharCode; 2.2630 + const unsigned int keyQ = 'q'; 2.2631 + const unsigned int keyW = 'w'; 2.2632 + const unsigned int keyE = 'e'; 2.2633 + const unsigned int keyR = 'r'; 2.2634 + const unsigned int keyT = 't'; 2.2635 + const unsigned int keyY = 'y'; 2.2636 + const unsigned int keyU = 'u'; 2.2637 + const unsigned int keyI = 'i'; 2.2638 + const unsigned int keyO = 'o'; 2.2639 + const unsigned int keyP = 'p'; 2.2640 + const unsigned int keyDELETE = kDeleteCharCode; 2.2641 + const unsigned int keyEND = kEndCharCode; 2.2642 + const unsigned int keyPAGEDOWN = kPageDownCharCode; 2.2643 + const unsigned int keyCAPSLOCK = 43U; 2.2644 + const unsigned int keyA = 'a'; 2.2645 + const unsigned int keyS = 's'; 2.2646 + const unsigned int keyD = 'd'; 2.2647 + const unsigned int keyF = 'f'; 2.2648 + const unsigned int keyG = 'g'; 2.2649 + const unsigned int keyH = 'h'; 2.2650 + const unsigned int keyJ = 'j'; 2.2651 + const unsigned int keyK = 'k'; 2.2652 + const unsigned int keyL = 'l'; 2.2653 + const unsigned int keyENTER = kEnterCharCode; 2.2654 + const unsigned int keySHIFTLEFT = 54U; //Macintosh modifier key, emulated 2.2655 + const unsigned int keyZ = 'z'; 2.2656 + const unsigned int keyX = 'x'; 2.2657 + const unsigned int keyC = 'c'; 2.2658 + const unsigned int keyV = 'v'; 2.2659 + const unsigned int keyB = 'b'; 2.2660 + const unsigned int keyN = 'n'; 2.2661 + const unsigned int keyM = 'm'; 2.2662 + const unsigned int keySHIFTRIGHT = 62U; //Macintosh modifier key, emulated 2.2663 + const unsigned int keyARROWUP = kUpArrowCharCode; 2.2664 + const unsigned int keyCTRLLEFT = 64U; //Macintosh modifier key, emulated 2.2665 + const unsigned int keyAPPLEFT = 65U; //Macintosh modifier key, emulated 2.2666 + const unsigned int keyALT = 66U; 2.2667 + const unsigned int keySPACE = kSpaceCharCode; 2.2668 + const unsigned int keyALTGR = 67U; //Macintosh modifier key, emulated 2.2669 + const unsigned int keyAPPRIGHT = 68U; //Aliased on keyAPPLEFT 2.2670 + const unsigned int keyMENU = 69U; 2.2671 + const unsigned int keyCTRLRIGHT = 70U; //Macintosh modifier key, emulated 2.2672 + const unsigned int keyARROWLEFT = kLeftArrowCharCode; 2.2673 + const unsigned int keyARROWDOWN = kDownArrowCharCode; 2.2674 + const unsigned int keyARROWRIGHT = kRightArrowCharCode; 2.2675 + const unsigned int keyPAD0 = 74U; 2.2676 + const unsigned int keyPAD1 = 75U; 2.2677 + const unsigned int keyPAD2 = 76U; 2.2678 + const unsigned int keyPAD3 = 77U; 2.2679 + const unsigned int keyPAD4 = 78U; 2.2680 + const unsigned int keyPAD5 = 79U; 2.2681 + const unsigned int keyPAD6 = 80U; 2.2682 + const unsigned int keyPAD7 = 81U; 2.2683 + const unsigned int keyPAD8 = 82U; 2.2684 + const unsigned int keyPAD9 = 83U; 2.2685 + const unsigned int keyPADADD = 84U; 2.2686 + const unsigned int keyPADSUB = 85U; 2.2687 + const unsigned int keyPADMUL = 86U; 2.2688 + const unsigned int keyPADDIV = 87U; 2.2689 + 2.2690 +#else 2.2691 + // Define unknow keycodes when no display are available. 2.2692 + // (should rarely be used then !). 2.2693 + // 2.2694 + const unsigned int keyESC = 1U; 2.2695 + const unsigned int keyF1 = 2U; 2.2696 + const unsigned int keyF2 = 3U; 2.2697 + const unsigned int keyF3 = 4U; 2.2698 + const unsigned int keyF4 = 5U; 2.2699 + const unsigned int keyF5 = 6U; 2.2700 + const unsigned int keyF6 = 7U; 2.2701 + const unsigned int keyF7 = 8U; 2.2702 + const unsigned int keyF8 = 9U; 2.2703 + const unsigned int keyF9 = 10U; 2.2704 + const unsigned int keyF10 = 11U; 2.2705 + const unsigned int keyF11 = 12U; 2.2706 + const unsigned int keyF12 = 13U; 2.2707 + const unsigned int keyPAUSE = 14U; 2.2708 + const unsigned int key1 = 15U; 2.2709 + const unsigned int key2 = 16U; 2.2710 + const unsigned int key3 = 17U; 2.2711 + const unsigned int key4 = 18U; 2.2712 + const unsigned int key5 = 19U; 2.2713 + const unsigned int key6 = 20U; 2.2714 + const unsigned int key7 = 21U; 2.2715 + const unsigned int key8 = 22U; 2.2716 + const unsigned int key9 = 23U; 2.2717 + const unsigned int key0 = 24U; 2.2718 + const unsigned int keyBACKSPACE = 25U; 2.2719 + const unsigned int keyINSERT = 26U; 2.2720 + const unsigned int keyHOME = 27U; 2.2721 + const unsigned int keyPAGEUP = 28U; 2.2722 + const unsigned int keyTAB = 29U; 2.2723 + const unsigned int keyQ = 30U; 2.2724 + const unsigned int keyW = 31U; 2.2725 + const unsigned int keyE = 32U; 2.2726 + const unsigned int keyR = 33U; 2.2727 + const unsigned int keyT = 34U; 2.2728 + const unsigned int keyY = 35U; 2.2729 + const unsigned int keyU = 36U; 2.2730 + const unsigned int keyI = 37U; 2.2731 + const unsigned int keyO = 38U; 2.2732 + const unsigned int keyP = 39U; 2.2733 + const unsigned int keyDELETE = 40U; 2.2734 + const unsigned int keyEND = 41U; 2.2735 + const unsigned int keyPAGEDOWN = 42U; 2.2736 + const unsigned int keyCAPSLOCK = 43U; 2.2737 + const unsigned int keyA = 44U; 2.2738 + const unsigned int keyS = 45U; 2.2739 + const unsigned int keyD = 46U; 2.2740 + const unsigned int keyF = 47U; 2.2741 + const unsigned int keyG = 48U; 2.2742 + const unsigned int keyH = 49U; 2.2743 + const unsigned int keyJ = 50U; 2.2744 + const unsigned int keyK = 51U; 2.2745 + const unsigned int keyL = 52U; 2.2746 + const unsigned int keyENTER = 53U; 2.2747 + const unsigned int keySHIFTLEFT = 54U; 2.2748 + const unsigned int keyZ = 55U; 2.2749 + const unsigned int keyX = 56U; 2.2750 + const unsigned int keyC = 57U; 2.2751 + const unsigned int keyV = 58U; 2.2752 + const unsigned int keyB = 59U; 2.2753 + const unsigned int keyN = 60U; 2.2754 + const unsigned int keyM = 61U; 2.2755 + const unsigned int keySHIFTRIGHT = 62U; 2.2756 + const unsigned int keyARROWUP = 63U; 2.2757 + const unsigned int keyCTRLLEFT = 64U; 2.2758 + const unsigned int keyAPPLEFT = 65U; 2.2759 + const unsigned int keyALT = 66U; 2.2760 + const unsigned int keySPACE = 67U; 2.2761 + const unsigned int keyALTGR = 68U; 2.2762 + const unsigned int keyAPPRIGHT = 69U; 2.2763 + const unsigned int keyMENU = 70U; 2.2764 + const unsigned int keyCTRLRIGHT = 71U; 2.2765 + const unsigned int keyARROWLEFT = 72U; 2.2766 + const unsigned int keyARROWDOWN = 73U; 2.2767 + const unsigned int keyARROWRIGHT = 74U; 2.2768 + const unsigned int keyPAD0 = 75U; 2.2769 + const unsigned int keyPAD1 = 76U; 2.2770 + const unsigned int keyPAD2 = 77U; 2.2771 + const unsigned int keyPAD3 = 78U; 2.2772 + const unsigned int keyPAD4 = 79U; 2.2773 + const unsigned int keyPAD5 = 80U; 2.2774 + const unsigned int keyPAD6 = 81U; 2.2775 + const unsigned int keyPAD7 = 82U; 2.2776 + const unsigned int keyPAD8 = 83U; 2.2777 + const unsigned int keyPAD9 = 84U; 2.2778 + const unsigned int keyPADADD = 85U; 2.2779 + const unsigned int keyPADSUB = 86U; 2.2780 + const unsigned int keyPADMUL = 87U; 2.2781 + const unsigned int keyPADDIV = 88U; 2.2782 +#endif 2.2783 + 2.2784 + const double valuePI = 3.14159265358979323846; //!< Definition of the mathematical constant PI 2.2785 + 2.2786 + // Definition of a 7x11 font, used to return a default font for drawing text. 2.2787 + const unsigned int font7x11[7*11*256/32] = { 2.2788 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2789 + 0x0,0x0,0x0,0x0,0x0,0x0,0x90,0x0,0x7f0000,0x40000,0x0,0x0,0x4010c0a4,0x82000040,0x11848402,0x18480050,0x80430292,0x8023,0x9008000, 2.2790 + 0x40218140,0x4000040,0x21800402,0x18000051,0x1060500,0x8083,0x10000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x24002,0x4031,0x80000000,0x10000, 2.2791 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x81c0400,0x40020000,0x80070080,0x40440e00,0x0,0x0,0x1,0x88180000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2792 + 0x0,0x200000,0x0,0x0,0x80000,0x0,0x0,0x20212140,0x5000020,0x22400204,0x240000a0,0x40848500,0x4044,0x80010038,0x20424285,0xa000020, 2.2793 + 0x42428204,0x2428e0a0,0x82090a14,0x4104,0x85022014,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10240a7,0x88484040,0x40800000,0x270c3,0x87811e0e, 2.2794 + 0x7c70e000,0x78,0x3c23c1ef,0x1f3e1e89,0xf1c44819,0xa23cf0f3,0xc3cff120,0xc18307f4,0x4040400,0x20000,0x80080080,0x40200,0x0, 2.2795 + 0x40000,0x2,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8188,0x50603800,0xf3c00000,0x1c004003,0xc700003e,0x18180,0xc993880,0x10204081, 2.2796 + 0x2071ef9,0xf3e7cf9f,0x3e7c7911,0xe3c78f1e,0x7d1224,0x48906048,0x0,0x4000000,0x0,0x9000,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0, 2.2797 + 0x0,0x10240aa,0x14944080,0x23610000,0x68940,0x40831010,0x8891306,0x802044,0x44522208,0x90202088,0x40448819,0xb242890a,0x24011111, 2.2798 + 0x49448814,0x4040a00,0xe2c3c7,0x8e3f3cb9,0xc1c44216,0xee38b0f2,0xe78f9120,0xc18507e2,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2799 + 0x101c207,0x88a04001,0x9c00000,0x2200a041,0x8200113a,0x8240,0x50a3110,0x2850a142,0x850c2081,0x2040204,0x8104592,0x142850a1, 2.2800 + 0x42cd1224,0x4888bc48,0x70e1c387,0xe3b3c70,0xe1c38e1c,0x38707171,0xc3870e1c,0x10791224,0x48906c41,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2801 + 0x10003ee,0x15140080,0x21810000,0x48840,0x40851020,0x8911306,0x31fd804,0x9c522408,0x90204088,0x4045081a,0xba42890a,0x24011111, 2.2802 + 0x49285024,0x2041b00,0x132408,0x910844c8,0x4044821b,0x7244c913,0x24041111,0x49488822,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2803 + 0x28204,0x85006001,0x6a414000,0x3a004043,0xc700113a,0x8245,0x50a3a00,0x2850a142,0x850c4081,0x2040204,0x81045d2,0x142850a1, 2.2804 + 0x24951224,0x48852250,0x8102040,0x81054089,0x12244204,0x8108992,0x24489122,0x991224,0x4888b222,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2805 + 0x1000143,0xa988080,0x2147c01f,0x88840,0x83091c2c,0x1070f000,0xc000608,0xa48bc408,0x9e3c46f8,0x40460816,0xaa42f10b,0xc3811111, 2.2806 + 0x35102044,0x1041100,0xf22408,0x9f084488,0x40470212,0x62448912,0x6041111,0x55308846,0x8061c80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2807 + 0x1028704,0x8f805801,0x4be28fdf,0x220001f0,0x111a,0x60000182,0x82c5c710,0x44891224,0x489640f1,0xe3c78204,0x810e552,0x142850a1, 2.2808 + 0x18a51224,0x48822250,0x78f1e3c7,0x8f1f40f9,0xf3e7c204,0x8108912,0x24489122,0x7ea91224,0x4888a222,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2809 + 0x10007e2,0x85648080,0x20010000,0x88841,0x8f8232,0x20881000,0xc1fc610,0xbefa2408,0x90204288,0x40450816,0xa642810a,0x4041110a, 2.2810 + 0x36282084,0x1042080,0x1122408,0x90084488,0x40450212,0x62448912,0x184110a,0x55305082,0x8042700,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2811 + 0x1028207,0x82004801,0x68050040,0x1c000040,0x110a,0x60000001,0x45484d10,0x7cf9f3e7,0xcf944081,0x2040204,0x8104532,0x142850a1, 2.2812 + 0x18a51224,0x48822248,0x89122448,0x91244081,0x2040204,0x8108912,0x24489122,0xc91224,0x48852214,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x282, 2.2813 + 0x89630080,0x20010c00,0x30108842,0x810222,0x20882306,0x3001800,0x408a2208,0x90202288,0x40448814,0xa642810a,0x2041110a,0x26442104, 2.2814 + 0x840000,0x1122408,0x90084488,0x40448212,0x62448912,0x84130a,0x36485102,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x101c208,0x4f802801, 2.2815 + 0x8028040,0x40,0x130a,0x2,0x85e897a0,0x44891224,0x489c2081,0x2040204,0x8104532,0x142850a1,0x24cd1224,0x48823c44,0x89122448, 2.2816 + 0x91244081,0x2040204,0x8108912,0x24489122,0xc93264,0xc9852214,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100028f,0x109f0080,0x20010c00, 2.2817 + 0x303071f3,0xc7011c1c,0x4071c306,0x802010,0x3907c1ef,0x1f201e89,0xf3844f90,0xa23c80f2,0x17810e04,0x228223f4,0x840000,0xfbc3c7, 2.2818 + 0x8f083c88,0x40444212,0x6238f0f2,0x7039d04,0x228423e2,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1008780,0x2201800,0xf0014000,0x1f0, 2.2819 + 0x1d0a,0x5,0x851e140,0x83060c18,0x30671ef9,0xf3e7cf9f,0x3e7c7911,0xe3c78f1e,0x42f8e1c3,0x8702205c,0x7cf9f3e7,0xcf9b3c78,0xf1e3c204, 2.2820 + 0x8107111,0xc3870e1c,0x10f1d3a7,0x4e823c08,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x40,0x40000400,0x200000,0x0,0x2,0x0,0x0,0x0,0x0,0x18, 2.2821 + 0x0,0x4,0x44007f,0x0,0x400,0x400000,0x8010,0x0,0x6002,0x8040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x200800,0x0,0x0,0x100a, 2.2822 + 0x400000,0x44,0x0,0x400,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x62018,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x31,0x80000800, 2.2823 + 0x400000,0x0,0x4,0x0,0x0,0x0,0x0,0xc,0x0,0x7,0x3c0000,0x0,0x3800,0x3800000,0x8010,0x0,0x1c001,0x881c0000,0x0,0x0,0x0,0x0,0x0,0x0, 2.2824 + 0x0,0x0,0x207000,0x0,0x0,0x100a,0xc00000,0x3c,0x0,0xc00,0x0,0x0,0x0,0x0,0x0,0x0,0x1800,0x0,0x0,0x0,0x0,0x1c2070 2.2825 + }; 2.2826 + 2.2827 + // Definition of a 10x13 font (used in dialog boxes). 2.2828 + const unsigned int font10x13[256*10*13/32] = { 2.2829 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2830 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80100c0, 2.2831 + 0x68000300,0x801,0xc00010,0x100c000,0x68100,0x100c0680,0x2,0x403000,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2832 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2833 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0,0x0,0x0,0x0,0x4020120, 2.2834 + 0x58120480,0x402,0x1205008,0x2012050,0x58080,0x20120581,0x40000001,0x804812,0x2000000,0x0,0x300,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2835 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x140,0x80000,0x200402,0x800000,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2836 + 0x0,0x7010,0x7000000,0x8000200,0x20000,0xc0002000,0x8008,0x0,0x0,0x0,0x0,0x808,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2837 + 0x0,0x0,0x80000000,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x480,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x80100c0,0x68000480,0x1001, 2.2838 + 0xc00010,0x1018000,0x68100,0x100c0680,0x4,0x403000,0x1020000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20140,0x28081883,0x200801, 2.2839 + 0x2a00000,0x10,0x1c0201c0,0x70040f80,0xc0f81c07,0x0,0x70,0x3e0303c0,0x3c3c0f83,0xe03c2107,0xe08810,0x18c31070,0x3c0703c0, 2.2840 + 0x783e0842,0x22222208,0x83e04010,0x1008000,0x4000200,0x20001,0x2002,0x408008,0x0,0x0,0x100000,0x0,0x1008,0x2000000,0x0,0x0,0x0, 2.2841 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20080,0x38000880,0x8078140f,0x81c00000,0x3e000,0xc020180,0x60080001,0xe0000002,0xc00042,0x108e2010, 2.2842 + 0xc0300c0,0x300c0303,0xf83c3e0f,0x83e0f81c,0x701c070,0x3c0c41c0,0x701c0701,0xc0001d08,0x42108421,0x8820088,0x4020120,0x58140480, 2.2843 + 0x802,0x1205008,0x3014050,0xc058080,0x20120581,0x40000002,0x804814,0x2020050,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20140, 2.2844 + 0x281e2484,0x80200801,0x1c02000,0x10,0x22060220,0x880c0801,0x82208,0x80000001,0x20008,0x41030220,0x40220802,0x402102,0x209010, 2.2845 + 0x18c31088,0x22088220,0x80080842,0x22222208,0x80204010,0x1014000,0x200,0x20001,0x2000,0x8008,0x0,0x0,0x100000,0x0,0x1008, 2.2846 + 0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x40000500,0x80800010,0x40200000,0x41000,0x12020040,0x10000003,0xa0000006, 2.2847 + 0x12000c4,0x31014000,0xc0300c0,0x300c0302,0x80402008,0x2008008,0x2008020,0x220c4220,0x88220882,0x20002208,0x42108421,0x8820088, 2.2848 + 0x0,0x300,0x0,0x0,0x0,0x14000000,0x0,0x200200,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0xfc282504,0x80001000, 2.2849 + 0x82a02000,0x20,0x22020020,0x8140802,0x102208,0x80801006,0x18008,0x9c848220,0x80210802,0x802102,0x20a010,0x15429104,0x22104220, 2.2850 + 0x80080842,0x22221405,0x404008,0x1022000,0x703c0,0x381e0701,0xc0783c02,0xc09008,0x1d83c070,0x3c078140,0x381c0882,0x21242208, 2.2851 + 0x81e01008,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x201e0,0x40220500,0x80800027,0x20e02800,0x9c800,0x12020040, 2.2852 + 0x20000883,0xa0200002,0x120a044,0x11064010,0x12048120,0x48120484,0x80802008,0x2008008,0x2008020,0x210a4411,0x4411044,0x10884508, 2.2853 + 0x42108421,0x503c0b0,0x1c0701c0,0x701c0707,0x70381c07,0x1c07008,0x2008020,0x20f01c0,0x701c0701,0xc0201c08,0x82208822,0x883c088, 2.2854 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x50281903,0x20001000,0x80802000,0x20,0x22020040,0x30240f03,0xc0101c08,0x80801018, 2.2855 + 0x1fc06010,0xa48483c0,0x80210f03,0xe0803f02,0x20c010,0x15429104,0x22104220,0x70080841,0x41540805,0x804008,0x1041000,0x8220, 2.2856 + 0x40220881,0x882202,0x40a008,0x12422088,0x22088180,0x40100882,0x21241408,0x80201008,0x2031000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2857 + 0x0,0x20280,0x401c0200,0x700028,0x21205000,0x92800,0xc1fc080,0x10000883,0xa0200002,0x1205049,0x12c19010,0x12048120,0x48120484, 2.2858 + 0xf0803c0f,0x3c0f008,0x2008020,0x790a4411,0x4411044,0x10504908,0x42108421,0x5022088,0x2008020,0x8020080,0x88402208,0x82208808, 2.2859 + 0x2008020,0x1e088220,0x88220882,0x20002608,0x82208822,0x8822088,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x501c0264, 2.2860 + 0xa0001000,0x8001fc00,0x7000020,0x22020080,0x83e0082,0x20202207,0x80000020,0x1020,0xa4848220,0x80210802,0x9c2102,0x20c010, 2.2861 + 0x12425104,0x3c1043c0,0x8080841,0x41540802,0x804008,0x1000000,0x78220,0x40220f81,0x882202,0x40c008,0x12422088,0x22088100, 2.2862 + 0x60100881,0x41540805,0x406008,0x1849000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20280,0xf0140200,0x880028,0x20e0a03f,0x709c800, 2.2863 + 0x201c0,0x60000881,0xa0000007,0xc0284b,0x122eb020,0x12048120,0x48120487,0x80802008,0x2008008,0x2008020,0x21094411,0x4411044, 2.2864 + 0x10204908,0x42108421,0x2022088,0x1e0781e0,0x781e0787,0xf8403e0f,0x83e0f808,0x2008020,0x22088220,0x88220882,0x21fc2a08,0x82208822, 2.2865 + 0x5022050,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20001,0xf80a0294,0x40001000,0x80002000,0x20,0x22020100,0x8040082,0x20202200, 2.2866 + 0x80000018,0x1fc06020,0xa48fc220,0x80210802,0x842102,0x20a010,0x12425104,0x20104240,0x8080841,0x41541402,0x1004008,0x1000000, 2.2867 + 0x88220,0x40220801,0x882202,0x40a008,0x12422088,0x22088100,0x18100881,0x41540805,0x801008,0x2046000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2868 + 0x0,0x0,0x0,0x20280,0x401c0f80,0x80880028,0x20005001,0x94800,0x20000,0x880,0xa0000000,0x5015,0x4215040,0x3f0fc3f0,0xfc3f0fc8, 2.2869 + 0x80802008,0x2008008,0x2008020,0x21094411,0x4411044,0x10505108,0x42108421,0x203c088,0x22088220,0x88220888,0x80402008,0x2008008, 2.2870 + 0x2008020,0x22088220,0x88220882,0x20002a08,0x82208822,0x5022050,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xa00a0494,0x60001000, 2.2871 + 0x80002004,0x8020,0x22020200,0x88040882,0x20402201,0x801006,0x18000,0x9f084220,0x40220802,0x442102,0x209010,0x10423088,0x20088220, 2.2872 + 0x8080840,0x80882202,0x2004008,0x1000000,0x88220,0x40220881,0x882202,0x409008,0x12422088,0x22088100,0x8100880,0x80881402, 2.2873 + 0x1001008,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20280,0x40220200,0x80700027,0x20002801,0x92800,0x1fc000,0x980, 2.2874 + 0xa0000000,0xa017,0x84417840,0x21084210,0x84210848,0x80402008,0x2008008,0x2008020,0x2208c220,0x88220882,0x20882208,0x42108421, 2.2875 + 0x2020088,0x22088220,0x88220888,0xc8402208,0x82208808,0x2008020,0x22088220,0x88220882,0x20203208,0x82208822,0x2022020,0x0,0x0,0x0, 2.2876 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0xa03c0463,0x90000801,0x2004,0x8040,0x1c0703e0,0x70040701,0xc0401c06,0x801001,0x20020, 2.2877 + 0x400843c0,0x3c3c0f82,0x3c2107,0x1c0881e,0x10423070,0x20070210,0xf0080780,0x80882202,0x3e04004,0x1000000,0x783c0,0x381e0701, 2.2878 + 0x782202,0x408808,0x12422070,0x3c078100,0x700c0780,0x80882202,0x1e01008,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x201e0, 2.2879 + 0xf8000200,0x80080010,0x40000001,0x41000,0x0,0xe80,0xa0000000,0x21,0x8e21038,0x21084210,0x84210848,0xf83c3e0f,0x83e0f81c, 2.2880 + 0x701c070,0x3c08c1c0,0x701c0701,0xc0005c07,0x81e0781e,0x20200b0,0x1e0781e0,0x781e0787,0x30381c07,0x1c07008,0x2008020,0x1c0881c0, 2.2881 + 0x701c0701,0xc0201c07,0x81e0781e,0x203c020,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000,0x801,0x4,0x40,0x0,0x0,0x0,0x1000, 2.2882 + 0x0,0x3c000000,0x0,0x0,0x0,0x0,0x10000,0x0,0x0,0x4004,0x1000000,0x0,0x0,0x80000,0x400000,0x0,0x20008000,0x0,0x4,0x1008,0x2000000, 2.2883 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x8008000f,0x80000000,0x3e000,0x0,0x800,0xa0000400,0x0,0x0,0x0,0x0,0x80000,0x0, 2.2884 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x0,0x0,0x0,0x0,0x2000,0x0,0x4020040,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000, 2.2885 + 0x402,0x8,0x40,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0xc000,0x0,0x0,0x7004,0x70000fc,0x0,0x0,0x700000,0x800000,0x0,0x20008000, 2.2886 + 0x0,0x4,0x808,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x80f00000,0x0,0x0,0x0,0x800,0xa0001800,0x0,0x0,0x0,0x0, 2.2887 + 0x300000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600000,0x0,0x0,0x0,0x0,0x0,0x0,0x4020040 2.2888 + }; 2.2889 + 2.2890 + // Definition of a 8x17 font. 2.2891 + const unsigned int font8x17[8*17*256/32] = { 2.2892 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2893 + 0x0,0x0,0x0,0x2400,0x2400,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20081834,0x1c0000,0x20081800,0x20081800,0x342008, 2.2894 + 0x18340000,0x200818,0x80000,0x0,0x180000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4200000,0x0,0x0, 2.2895 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x380000,0x4000,0x2000c00,0x40100840,0x70000000,0x0,0x0,0x1c,0x10700000,0x7,0x0, 2.2896 + 0x1800,0x1800,0x0,0x0,0x0,0x14,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1010242c,0x14140000,0x10102414,0x10102414,0x2c1010,0x242c1400, 2.2897 + 0x101024,0x14100038,0x0,0x240000,0x0,0x0,0x30000000,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x12,0x0,0x8100000,0x0, 2.2898 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x80000,0x10004000,0x2001000,0x40000040,0x10000000,0x0,0x0,0x10,0x10100000,0x4, 2.2899 + 0x0,0x18000000,0x0,0x0,0x0,0x34002400,0x2400,0x0,0x0,0x0,0x3c,0x0,0x8000000,0x0,0x60607800,0x0,0x140000,0x0,0x0,0x0,0x0,0x0, 2.2900 + 0x44,0x10081834,0x240000,0x10081800,0x10081800,0x1c341008,0x18340000,0x100818,0x84000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x102812, 2.2901 + 0x8601c10,0x8100800,0x2,0x1c383e3e,0x67e1e7f,0x3e3c0000,0x38,0x1e087e1e,0x7c7f7f1e,0x417c1c42,0x4063611c,0x7e1c7e3e,0xfe414181, 2.2902 + 0x63827f10,0x40081000,0x8004000,0x2001000,0x40000040,0x10000000,0x0,0x10000000,0x10,0x10100000,0x3c000008,0x0,0x24003e00, 2.2903 + 0x3f007f00,0x0,0x0,0x2ce91800,0x1882,0x10101c,0xc2103c,0x143c3c00,0x3c00,0x18003c3c,0x10001f00,0x181c00,0x20200810,0x8080808, 2.2904 + 0x8083e1e,0x7f7f7f7f,0x7c7c7c7c,0x7c611c1c,0x1c1c1c00,0x1e414141,0x41824044,0x810242c,0x14180000,0x8102414,0x8102414,0x382c0810, 2.2905 + 0x242c1400,0x81024,0x14104014,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x102816,0x3e902010,0x10084910,0x4,0x22084343,0xa402102,0x41620000, 2.2906 + 0x44,0x33144121,0x42404021,0x41100444,0x40636122,0x43224361,0x10416381,0x22440310,0x20082800,0x4000,0x2001000,0x40000040, 2.2907 + 0x10000000,0x0,0x10000000,0x10,0x10100000,0x24000008,0x0,0x606100,0x68000300,0x8106c,0x34000000,0x4f0000,0x44,0x101020,0x441040, 2.2908 + 0x420200,0x4200,0x24000404,0x7d00,0x82200,0x20203010,0x14141414,0x14082821,0x40404040,0x10101010,0x42612222,0x22222200,0x23414141, 2.2909 + 0x41447e48,0x0,0x0,0x0,0x0,0x4000000,0x18,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10287f,0x49902010,0x10083e10,0x4,0x41080101, 2.2910 + 0x1a404002,0x41411818,0x1004004,0x21144140,0x41404040,0x41100448,0x40555141,0x41414140,0x10412281,0x14280610,0x20084400,0x1c7c1c, 2.2911 + 0x3e3c7c3a,0x5c703844,0x107f5c3c,0x7c3e3c3c,0x7e424281,0x66427e10,0x10100000,0x40100008,0x1010,0xa04000,0x48100610,0x100c3024, 2.2912 + 0x24000000,0x4f3c00,0x2c107e28,0x3820,0x42281060,0x9d1e12,0xbd00,0x24100818,0x427d00,0x82248,0x20200800,0x14141414,0x14142840, 2.2913 + 0x40404040,0x10101010,0x41514141,0x41414142,0x43414141,0x41284350,0x1c1c1c1c,0x1c1c6c1c,0x3c3c3c3c,0x70707070,0x3c5c3c3c, 2.2914 + 0x3c3c3c18,0x3e424242,0x42427c42,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x102824,0x48623010,0x10081c10,0x8,0x41080103,0x127c5e04, 2.2915 + 0x41411818,0xe7f3808,0x4f144140,0x41404040,0x41100450,0x40555141,0x41414160,0x1041225a,0x1c280410,0x1008c600,0x226622,0x66661066, 2.2916 + 0x62100848,0x10496266,0x66663242,0x10426681,0x24220260,0x100c0000,0xf8280008,0x1010,0x606000,0x48280428,0x28042014,0x48000000, 2.2917 + 0x494200,0x52280228,0x105420,0x3cee1058,0xa12236,0xa500,0x18101004,0x427d00,0x8226c,0x76767e10,0x14141414,0x14142840,0x40404040, 2.2918 + 0x10101010,0x41514141,0x41414124,0x45414141,0x41284150,0x22222222,0x22221222,0x66666666,0x10101010,0x66626666,0x66666600, 2.2919 + 0x66424242,0x42226622,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100024,0x381c4900,0x10086bfe,0x8,0x4908021c,0x22036304,0x3e630000, 2.2920 + 0x70000710,0x51227e40,0x417f7f43,0x7f100470,0x40554941,0x43417e3e,0x1041225a,0x8100810,0x10080000,0x24240,0x42421042,0x42100850, 2.2921 + 0x10494242,0x42422040,0x1042245a,0x18240410,0x10103900,0x407c003e,0x1818,0x1c3e10,0x4f7c087c,0x7c002010,0x48000000,0x4008, 2.2922 + 0x527c0410,0x105078,0x2410104c,0xa13e6c,0x7f00b900,0xfe3c3c,0x421d18,0x1c1c36,0x38383810,0x22222222,0x22144e40,0x7f7f7f7f, 2.2923 + 0x10101010,0xf1494141,0x41414118,0x49414141,0x4110435c,0x2020202,0x2021240,0x42424242,0x10101010,0x42424242,0x424242ff,0x4e424242, 2.2924 + 0x42244224,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000fe,0xe664d00,0x10080810,0x380010,0x41080c03,0x42014108,0x633d0000,0x70000710, 2.2925 + 0x51224140,0x41404041,0x41100448,0x40494541,0x7e414203,0x1041145a,0x14101010,0x10080000,0x3e4240,0x427e1042,0x42100870,0x10494242, 2.2926 + 0x4242203c,0x1042245a,0x18241810,0x10104600,0xf8f60008,0x1010,0x600320,0x48f610f6,0xf6000000,0x187eff,0x3c04,0x5ef61810,0x105020, 2.2927 + 0x24fe0064,0x9d006c,0x138ad00,0x100000,0x420518,0x36,0xc0c0c020,0x22222222,0x22224840,0x40404040,0x10101010,0x41454141,0x41414118, 2.2928 + 0x51414141,0x41107e46,0x3e3e3e3e,0x3e3e7e40,0x7e7e7e7e,0x10101010,0x42424242,0x42424200,0x5a424242,0x42244224,0x0,0x0,0x0, 2.2929 + 0x0,0x0,0x0,0x0,0x0,0x28,0x9094500,0x10080010,0x10,0x41081801,0x7f014118,0x41010000,0xe7f3800,0x513e4140,0x41404041,0x41100444, 2.2930 + 0x40414541,0x40414101,0x10411466,0x36103010,0x8080000,0x424240,0x42401042,0x42100848,0x10494242,0x42422002,0x10423c5a,0x18142010, 2.2931 + 0x10100000,0x407c0010,0x1010,0x260140,0x487c307c,0x7c000000,0x180000,0x202,0x507c2010,0x105020,0x3c10003c,0x423e36,0x1004200, 2.2932 + 0x100000,0x420500,0x3e6c,0x41e0440,0x3e3e3e3e,0x3e3e7840,0x40404040,0x10101010,0x41454141,0x41414124,0x61414141,0x41104042, 2.2933 + 0x42424242,0x42425040,0x40404040,0x10101010,0x42424242,0x42424218,0x72424242,0x42144214,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100048, 2.2934 + 0x49096200,0x8100010,0x18001810,0x22082043,0x2432310,0x61421818,0x1004010,0x4f634121,0x42404021,0x41104444,0x40414322,0x40234143, 2.2935 + 0x10411466,0x22106010,0x8080000,0x466622,0x66621066,0x42100844,0x10494266,0x66662042,0x10461824,0x24184010,0x10100000,0x24381010, 2.2936 + 0x34001018,0xda4320,0x68386038,0x38000000,0x0,0x4204,0x50384010,0x105420,0x4210100c,0x3c0012,0x3c00,0x0,0x460500,0x48,0xc020c44, 2.2937 + 0x63636363,0x63228821,0x40404040,0x10101010,0x42432222,0x22222242,0x62414141,0x41104042,0x46464646,0x46465022,0x62626262, 2.2938 + 0x10101010,0x66426666,0x66666618,0x66464646,0x46186618,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100048,0x3e063d00,0x8100000,0x18001820, 2.2939 + 0x1c3e7f3e,0x23c1e20,0x3e3c1818,0x10,0x20417e1e,0x7c7f401e,0x417c3842,0x7f41431c,0x401e40be,0x103e0866,0x41107f10,0x4080000, 2.2940 + 0x3a5c1c,0x3a3c103a,0x427c0842,0xe49423c,0x7c3e203c,0xe3a1824,0x66087e10,0x10100000,0x3c103010,0x245a1010,0x5a3e10,0x3f107f10, 2.2941 + 0x10000000,0x0,0x3c08,0x2e107e10,0x1038fc,0x101004,0x0,0x0,0xfe0000,0x7f0500,0x0,0x14041438,0x41414141,0x41418e1e,0x7f7f7f7f, 2.2942 + 0x7c7c7c7c,0x7c431c1c,0x1c1c1c00,0xbc3e3e3e,0x3e10405c,0x3a3a3a3a,0x3a3a6e1c,0x3c3c3c3c,0x7c7c7c7c,0x3c423c3c,0x3c3c3c00, 2.2943 + 0x7c3a3a3a,0x3a087c08,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x4200000,0x10000020,0x0,0x0,0x10,0x0,0x30000000,0x0, 2.2944 + 0x0,0x0,0x60000,0x0,0x1c,0x4380000,0x0,0x2,0x800,0x0,0x40020000,0x0,0x8000c,0x10600000,0x2010,0x48000000,0x240000,0x0,0x0, 2.2945 + 0x0,0x0,0x0,0x1000,0x1078,0x0,0x0,0x0,0x400500,0x0,0x1e081e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2946 + 0x84008,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x20000040,0x0,0x0,0x20,0x0,0x1e000000,0x0,0x0,0x0,0x20000,0x0, 2.2947 + 0x0,0x2000000,0x0,0x26,0x800,0x0,0x40020000,0x0,0x100000,0x10000000,0x2030,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x1000,0x0, 2.2948 + 0x0,0x0,0x400000,0x8000000,0x41e0400,0x0,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x0,0x0,0x0,0x0,0x104010,0x0,0x0,0x0,0x0, 2.2949 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe,0x0,0x1c,0x7000,0x0,0x40020000,0x0,0x300000, 2.2950 + 0x0,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x400000,0x38000000,0x0,0x0,0x1c,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2951 + 0x1c,0x0,0x0,0x0,0x0,0x0,0x304030,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2952 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2953 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2954 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2955 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.2956 + 2.2957 + // Definition of a 10x19 font. 2.2958 + const unsigned int font10x19[10*19*256/32] = { 2.2959 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2960 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3600000,0x36000,0x0,0x0,0x0,0x0,0x6c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2961 + 0x0,0x180181c0,0xe81b0300,0x1801,0x81c06c18,0x181c06c,0xe8180,0x181c0e81,0xb0000006,0x60701b,0x1800000,0x0,0x0,0x0,0x0,0x0, 2.2962 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2963 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c00000,0x1c000,0x0,0x0,0x0,0x0,0x6c,0x0,0x0,0x0,0x0, 2.2964 + 0x0,0x0,0x0,0x0,0x0,0x0,0xc030360,0xb81b0480,0xc03,0x3606c0c,0x303606c,0xb80c0,0x30360b81,0xb0000003,0xc0d81b,0x3000000,0x0, 2.2965 + 0x300,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.2966 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x2200000, 2.2967 + 0x22000,0x0,0x0,0x0,0x0,0x0,0x0,0x30000,0x0,0xe0,0x38078000,0x0,0x480,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000c080,0x480,0x3000, 2.2968 + 0xc0800030,0xc08000,0x300,0xc080000,0xc,0x302000,0xc00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20120,0x41c01,0xe020060c, 2.2969 + 0x800000,0x4,0x1e0703e0,0xf8060fc1,0xe1fe1e07,0x80000000,0x78,0x307e0,0x3c7c1fe7,0xf83c408f,0x80f10440,0x18660878,0x7e0787e0, 2.2970 + 0x78ff9024,0xa0140a0,0x27f83840,0x700e000,0x18000400,0x8000,0x70004002,0x410078,0x0,0x0,0x0,0x0,0x1808,0xc000000,0xf000000, 2.2971 + 0xe000000,0x1400,0x1e0001f,0x8007f800,0x0,0x0,0x3a3b,0x61400000,0x14202,0x20000,0x38002020,0x3c1b00,0x3e00000,0xf8,0x1c0001c0, 2.2972 + 0x78060001,0xf800000e,0x1e00020,0x8004020,0xc0300c0,0x300c0301,0xf83c7f9f,0xe7f9fe3e,0xf83e0f8,0x7c1821e0,0x781e0781,0xe0001f10, 2.2973 + 0x24090240,0xa02400f8,0x18018140,0xe81b0480,0x1801,0x81406c18,0x181406c,0x190e8180,0x18140e81,0xb0000006,0x60501b,0x184006c, 2.2974 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20120,0x26042202,0x200c06,0x800000,0x8,0x210d0611,0x40e0803,0x10026188,0x40000000, 2.2975 + 0x8c,0xf030418,0xc6431004,0xc64082,0x110840,0x18660884,0x41084410,0x8c081024,0xa012110,0x40082020,0x101b000,0xc000400,0x8000, 2.2976 + 0x80004002,0x410008,0x0,0x0,0x100000,0x0,0x2008,0x2000000,0x18800000,0x10000000,0x2200,0x2300024,0x800,0x0,0x0,0x2e13,0x60800000, 2.2977 + 0x8104,0x20040,0x64001040,0x80401b07,0x80100000,0x1e000,0x22000020,0x40c0003,0xc8000002,0x3300020,0x8004020,0xc0300c0,0x300c0301, 2.2978 + 0x40c64010,0x4010008,0x2008020,0x43182210,0x84210842,0x10002190,0x24090240,0x9044018c,0xc030220,0xb81b0300,0xc03,0x2206c0c, 2.2979 + 0x302206c,0x1e0b80c0,0x30220b81,0xb0000003,0xc0881b,0x304006c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20120,0x241f2202, 2.2980 + 0x200802,0x4900000,0x8,0x21010408,0x20a0802,0x44090,0x20000000,0x4,0x11878408,0x80411004,0x804082,0x111040,0x1ce50986,0x40986409, 2.2981 + 0x81022,0x12012108,0x80102020,0x1031800,0x400,0x8000,0x80004000,0x10008,0x0,0x0,0x100000,0x0,0x2008,0x2000000,0x10000000, 2.2982 + 0x10000000,0x18,0x4000044,0x1000,0x30180,0xd81b0000,0x13,0xe0000000,0x88,0x40,0x400018c0,0x80400018,0x61f00000,0x61800,0x22020020, 2.2983 + 0x4000007,0xc8000002,0x2100020,0x8038000,0x1e0781e0,0x781e0301,0x40804010,0x4010008,0x2008020,0x41142619,0x86619866,0x18002190, 2.2984 + 0x24090240,0x8887e104,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20120,0x2434a202, 2.2985 + 0x200802,0x3e00000,0x10,0x40810008,0x21a0804,0x44090,0x20000000,0x80040004,0x20848409,0x409004,0x1004082,0x112040,0x14a50902, 2.2986 + 0x40902409,0x81022,0x11321208,0x80202010,0x1060c00,0x7c5e0,0x781e8783,0xf07a5f0e,0x1c10808,0xfc5f078,0x5e07a170,0x7c7e1024, 2.2987 + 0xa016190,0x27f82008,0x2000000,0x20000000,0x10000000,0x80200024,0x4000044,0x2000,0x18180,0xc8320000,0x12,0xa1f00037,0x7f888, 2.2988 + 0x1e0,0x40410880,0x80600017,0xa2100000,0x5e800,0x22020040,0x38001027,0xc8000002,0x2100020,0x8004020,0x12048120,0x48120482, 2.2989 + 0x41004010,0x4010008,0x2008020,0x40942409,0x2409024,0x9044390,0x24090240,0x88841918,0x1f07c1f0,0x7c1f07c3,0x70781e07,0x81e07838, 2.2990 + 0xe0380e0,0x1f17c1e0,0x781e0781,0xe0001f90,0x24090240,0x9025e102,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20001,0xff241c41, 2.2991 + 0x1001,0x1c02000,0x10,0x40810008,0x6120f85,0xe0086190,0x20c03007,0x8007800c,0x27848419,0x409004,0x1004082,0x114040,0x14a48902, 2.2992 + 0x40902409,0x81022,0x11321205,0x602010,0x1000000,0x86610,0x84218840,0x80866182,0x411008,0x9261884,0x61086189,0x82101022,0x12012108, 2.2993 + 0x40082008,0x2000000,0x20030000,0x20000000,0x80200024,0x4000044,0x3006030,0xc018100,0x4c260000,0x12,0x26080048,0x83000850, 2.2994 + 0x20250,0x403e0500,0x8078002c,0x12302200,0x92400,0x1c0200c0,0x4001027,0xc8000002,0x3308820,0x8004020,0x12048120,0x48120482, 2.2995 + 0x41004010,0x4010008,0x2008020,0x40922409,0x2409024,0x8884690,0x24090240,0x85040920,0x21886218,0x86218860,0x88842108,0x42108408, 2.2996 + 0x2008020,0x21186210,0x84210842,0x10302190,0x24090240,0x88461084,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x4c240182, 2.2997 + 0x80001001,0x6b02000,0x20,0x4c810010,0x78220846,0x10081e10,0x20c0301c,0x1fe0e018,0x4d8487e1,0x409fe7,0xf9007f82,0x11a040, 2.2998 + 0x13248902,0x41102418,0xe0081022,0x11320c05,0x402008,0x1000000,0x2409,0x409020,0x81024082,0x412008,0x9240902,0x40902101,0x101022, 2.2999 + 0x11321208,0x40102008,0x2000000,0x7e0c8000,0xfc000003,0xf0fc0018,0x43802047,0x8c8040c8,0x32008300,0x44240000,0x0,0x4000048, 2.3000 + 0x8c801050,0x20440,0x40221dc0,0x808c0028,0x11d0667f,0x8009c400,0x1fc180,0x4001023,0xc8300002,0x1e0ccfb,0x3ec7b020,0x12048120, 2.3001 + 0x48120482,0x79007f9f,0xe7f9fe08,0x2008020,0xf0922409,0x2409024,0x8504490,0x24090240,0x85040920,0x802008,0x2008020,0x89004090, 2.3002 + 0x24090208,0x2008020,0x40902409,0x2409024,0x8304390,0x24090240,0x88440884,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000, 2.3003 + 0x481c0606,0xc8001001,0x802000,0x20,0x4c810020,0x4220024,0x8102108,0x60000070,0x3820,0x48884419,0x409004,0x10e4082,0x112040, 2.3004 + 0x13244902,0x7e1027e0,0x3c081021,0x21320c02,0x802008,0x1000000,0x7e409,0x409020,0x81024082,0x414008,0x9240902,0x40902101, 2.3005 + 0x80101022,0x11320c08,0x40202008,0x2038800,0x200bc000,0x20000000,0x80200003,0x80f04044,0xbc080bc,0x2f000200,0x0,0x0,0x6001048, 2.3006 + 0x8bc02020,0x20441,0xf8220200,0x80820028,0x1000cc00,0x80094400,0x201e0,0x78001021,0xc830000f,0x8000663c,0xf03c0c0,0x21084210, 2.3007 + 0x84210846,0x41004010,0x4010008,0x2008020,0x40912409,0x2409024,0x8204890,0x24090240,0x82040930,0x1f87e1f8,0x7e1f87e0,0x89004090, 2.3008 + 0x24090208,0x2008020,0x40902409,0x2409024,0x8004690,0x24090240,0x88440884,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000, 2.3009 + 0x480719c4,0x48001001,0x81fc00,0x7800020,0x40810040,0x2420024,0x8104087,0xa0000070,0x3820,0x48884409,0x409004,0x1024082,0x111040, 2.3010 + 0x13244902,0x40102410,0x2081021,0x214a1202,0x1802008,0x1000000,0x182409,0x409fe0,0x81024082,0x41a008,0x9240902,0x40902100, 2.3011 + 0xf8101021,0x214a0c04,0x80c0c008,0x1847000,0x7c1ee000,0x20000000,0x8020000c,0x8c044,0x1ee181ee,0x7b800000,0x707,0xf3ff0000, 2.3012 + 0x3e0084f,0x9ee0c020,0x20440,0x40221fc0,0xc2002c,0x13f11000,0x87892400,0x20000,0x1020,0x48000000,0x3f011c6,0x31cc6180,0x21084210, 2.3013 + 0x84210844,0x41004010,0x4010008,0x2008020,0x40912409,0x2409024,0x8505090,0x24090240,0x8204191c,0x60982609,0x82609823,0xf9007f9f, 2.3014 + 0xe7f9fe08,0x2008020,0x40902409,0x2409024,0x9fe4c90,0x24090240,0x84840848,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfe048224, 2.3015 + 0x28001001,0x2000,0x40,0x40810080,0x27f8024,0x8104080,0x2000001c,0x1fe0e020,0x488fc409,0x409004,0x1024082,0x110840,0x10242902, 2.3016 + 0x40102408,0x2081021,0x214a1202,0x1002004,0x1000000,0x102409,0x409000,0x81024082,0x411008,0x9240902,0x40902100,0x6101021, 2.3017 + 0x214a0c04,0x81002008,0x2000000,0x201dc000,0x20000000,0x80200000,0x98044,0x1dc101dc,0x77000000,0x700,0x0,0x180448,0x1dc10020, 2.3018 + 0x20440,0x403e0200,0x620017,0xa000cc00,0x80052800,0x20000,0x1020,0x48000000,0x6606,0x206100,0x3f0fc3f0,0xfc3f0fc7,0xc1004010, 2.3019 + 0x4010008,0x2008020,0x4090a409,0x2409024,0x8886090,0x24090240,0x8207e106,0x40902409,0x2409024,0x81004010,0x4010008,0x2008020, 2.3020 + 0x40902409,0x2409024,0x8005890,0x24090240,0x84840848,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x98048224,0x30001001,0x2000, 2.3021 + 0x40,0x21010100,0x2020024,0x8204080,0x40000007,0x80078000,0x48884408,0x80411004,0x824082,0x110840,0x10242986,0x40086409,0x2081021, 2.3022 + 0xe14a2102,0x2002004,0x1000000,0x106409,0x409000,0x81024082,0x410808,0x9240902,0x40902100,0x2101021,0x214a1202,0x82002008, 2.3023 + 0x2000000,0x300f8000,0x20000000,0x80fc001d,0xe4088044,0xf8200f8,0x3e000000,0x300,0x0,0x80c48,0xf820020,0x20640,0x40410200, 2.3024 + 0x803c0018,0x60006600,0x61800,0x0,0x1020,0x48000000,0xcc0a,0x20a100,0x21084210,0x84210844,0x40804010,0x4010008,0x2008020, 2.3025 + 0x4110a619,0x86619866,0x19046110,0x24090240,0x82040102,0x41906419,0x6419064,0x81004010,0x4010008,0x2008020,0x40902409,0x2409024, 2.3026 + 0x8307090,0x24090240,0x82840828,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x90248222,0x30000802,0x200c,0xc080,0x21010301, 2.3027 + 0x4021042,0x10202108,0xc0c03000,0x80040020,0x4d902418,0xc6431004,0xc24082,0x6210440,0x10241884,0x40084409,0x86080840,0xc0842102, 2.3028 + 0x4002002,0x1000000,0x18e610,0x84218820,0x80864082,0x410408,0x9240884,0x61086101,0x6101860,0xc0842103,0x4002008,0x2000000, 2.3029 + 0x10850180,0x20330000,0x80200013,0x26184024,0x5040050,0x14000000,0x0,0x0,0x4180848,0x85040020,0x20350,0x40000200,0x800c0007, 2.3030 + 0x80002200,0x1e000,0x0,0x1860,0x48000000,0x880a,0x40a188,0x40902409,0x2409028,0x40c64010,0x4010008,0x2008020,0x43106210,0x84210842, 2.3031 + 0x10006108,0x42108421,0x2040102,0x6398e639,0x8e6398e4,0x88842088,0x22088208,0x2008020,0x21102210,0x84210842,0x10306118,0x66198661, 2.3032 + 0x83061030,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20001,0x901f01c1,0xe8000802,0xc,0xc080,0x1e07c7f8,0xf8020f81,0xe0401e07, 2.3033 + 0x80c03000,0x20,0x279027e0,0x3c7c1fe4,0x3c408f,0x83c1027f,0x90241878,0x4007c404,0xf8080780,0xc0844082,0x7f82002,0x1000000, 2.3034 + 0xfa5e0,0x781e87c0,0x807a409f,0xc0410207,0x9240878,0x5e07a100,0xf80e0fa0,0xc0846183,0x7f82008,0x2000000,0xf020100,0x40321360, 2.3035 + 0x80200014,0xa3e0201f,0x8207f820,0x8000000,0x0,0x0,0x3e01037,0x207f820,0x201e1,0xfc000200,0x80040000,0x0,0x0,0x1fc000,0x17b0, 2.3036 + 0x48000000,0x12,0xc120f0,0x40902409,0x2409028,0x783c7f9f,0xe7f9fe3e,0xf83e0f8,0x7c1061e0,0x781e0781,0xe000be07,0x81e0781e, 2.3037 + 0x204017c,0x3e8fa3e8,0xfa3e8fa3,0x70781f07,0xc1f07c7f,0x1fc7f1fc,0x1e1021e0,0x781e0781,0xe0007e0f,0xa3e8fa3e,0x8305e030,0x0, 2.3038 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0xc06,0xc,0x100,0x0,0x0,0x0,0x3000,0x0,0x20000000,0x0,0x0,0x0,0x0,0xc000, 2.3039 + 0x0,0x0,0x2001,0x1000000,0x0,0x0,0x20000,0x400000,0x0,0x40002000,0x0,0x1,0x2008,0x2000000,0x100,0x40240000,0x80200008,0x40000000, 2.3040 + 0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x80040000,0x0,0x0,0x0,0x1000,0x48000000,0x1f,0x181f000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3041 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1040010,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x60c,0x18,0x0, 2.3042 + 0x0,0x0,0x0,0x6000,0x0,0x10000000,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x3800,0x7000000,0x0,0x0,0x840000,0x400000,0x0,0x40002000, 2.3043 + 0x0,0x2,0x2008,0x2000000,0x200,0x40440000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x80780000,0x0,0x0,0x0,0x1000,0x48000400, 2.3044 + 0x2,0x1e02000,0x0,0x0,0x80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000,0x0,0x0,0x0,0x0,0x0,0x0,0x2040020,0x0,0x0,0x0,0x0, 2.3045 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x4000,0x0,0xf000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3046 + 0x780000,0x3800000,0x0,0x40002000,0x0,0xe,0x1808,0xc000000,0x3,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000, 2.3047 + 0x0,0x0,0x0,0x1000,0x1c00,0x0,0x0,0x0,0x0,0x380000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x380000,0x0,0x0,0x0,0x0,0x0,0x0,0xe0400e0, 2.3048 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3fc, 2.3049 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3050 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.3051 + 2.3052 + // Definition of a 12x24 font. 2.3053 + const unsigned int font12x24[12*24*256/32] = { 2.3054 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3055 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x19,0x80000000,0x198000,0x0,0x0,0x0,0x0, 2.3056 + 0x0,0x198,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc001806,0xc81980,0x60000000,0xc001806,0x1980c00,0x18060198,0xc80c, 2.3057 + 0x180600,0xc8198000,0xc001,0x80601980,0x18000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3058 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3059 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x0,0xf0000,0x0,0x0,0x0,0x0,0x0,0x198,0x0,0x0,0x0,0x0,0x0,0x0, 2.3060 + 0x0,0x0,0x0,0x0,0x0,0x0,0x600300f,0x1301980,0x90000000,0x600300f,0x1980600,0x300f0198,0x13006,0x300f01,0x30198000,0x6003, 2.3061 + 0xf01980,0x30000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3062 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3063 + 0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x0,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7007,0x3c0000,0x3006019, 2.3064 + 0x80000000,0x90000000,0x3006019,0x80000300,0x60198000,0x3,0x601980,0x0,0x3006,0x1980000,0x60000000,0x0,0x0,0xe0000000,0x0, 2.3065 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3066 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000000, 2.3067 + 0x0,0x0,0x0,0x0,0x0,0xc800019,0x80000000,0x198000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0x0,0x0,0x1001,0x420000,0x0,0x0,0x90000000, 2.3068 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18000c06,0xc80001,0x10000000,0x18000c06,0x1800,0xc060000,0xc818,0xc0600,0xc8000000, 2.3069 + 0x18000,0xc0600000,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6019,0x80660207,0x800f8060,0x300c004,0x0,0x6, 2.3070 + 0xe00703f,0x3f00383,0xf80f07fc,0x1f01f000,0x0,0xf8,0x607f,0x7c7e07,0xfe7fe0f8,0x6063fc1f,0x86066007,0xe7060f0,0x7f80f07f, 2.3071 + 0x81f8fff6,0x6606c03,0x70ee077f,0xe0786000,0xf0070000,0xc000060,0xc0,0x3e000,0x60006003,0x600fc00,0x0,0x0,0x0,0x0,0x0,0x3c0603, 2.3072 + 0xc0000000,0x7800000,0xf0000,0x0,0xf00001f,0x80001fe0,0x7fe000,0x0,0x0,0x0,0x168fe609,0x0,0x90e07,0x6000,0x3c000e,0x70000f8, 2.3073 + 0x1980001f,0x0,0x1f8,0xf00000f,0xf00180,0xfe000,0xe00e,0x1001,0x20060,0x6006006,0x600600,0x600fe07c,0x7fe7fe7f,0xe7fe3fc3, 2.3074 + 0xfc3fc3fc,0x7e07060f,0xf00f00,0xf00f0000,0xf360660,0x6606606e,0x76001e0,0xc00180f,0x1681981,0x10000000,0xc00180f,0x1980c00, 2.3075 + 0x180f0198,0x3801680c,0x180f01,0x68198000,0xc001,0x80f01980,0x18600198,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6019, 2.3076 + 0x8044020c,0xc01f8060,0x2004004,0x0,0xc,0x3f81f07f,0x87f80383,0xf81f87fc,0x3f83f800,0x0,0x1fc,0x780607f,0x81fe7f87,0xfe7fe1fc, 2.3077 + 0x6063fc1f,0x860c6007,0xe7061f8,0x7fc1f87f,0xc3fcfff6,0x6606c03,0x30c6067f,0xe0783000,0xf00d8000,0x6000060,0xc0,0x7e000,0x60006003, 2.3078 + 0x600fc00,0x0,0x0,0xc00,0x0,0x0,0x7c0603,0xe0000000,0xfc00000,0x1f0000,0x0,0x900003f,0xc0003fe0,0x7fe000,0x0,0x0,0x0,0x1302660f, 2.3079 + 0x0,0xf0606,0x6004,0x7e0006,0x60601f8,0x19800001,0x80000000,0x1f8,0x19800010,0x81080300,0x3f2000,0x2011,0x1001,0x1c0060,0x6006006, 2.3080 + 0x600600,0x601fe1fe,0x7fe7fe7f,0xe7fe3fc3,0xfc3fc3fc,0x7f87061f,0x81f81f81,0xf81f8000,0x3fa60660,0x66066066,0x66003f0,0x6003009, 2.3081 + 0x1301981,0x10000000,0x6003009,0x1980600,0x30090198,0x1f013006,0x300901,0x30198000,0x6003,0x901980,0x30600198,0x0,0x0,0x0, 2.3082 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6019,0x80cc0f8c,0xc0180060,0x6006044,0x40000000,0xc,0x3181b041,0xc41c0783,0x388018, 2.3083 + 0x71c71800,0x0,0x106,0x18c0f061,0xc38261c6,0x600384,0x60606001,0x86186007,0xe78630c,0x60e30c60,0xe7040606,0x630cc03,0x39c30c00, 2.3084 + 0xc0603000,0x3018c000,0x3000060,0xc0,0x60000,0x60000000,0x6000c00,0x0,0x0,0xc00,0x0,0x0,0x600600,0x60000000,0x18400000,0x180000, 2.3085 + 0x0,0x19800070,0x40003600,0xc000,0x0,0x0,0x0,0x25a06,0x0,0x6030c,0x4,0xe20007,0xe060180,0xf000,0x80000000,0xf0000,0x10800000, 2.3086 + 0x80080600,0x7f2000,0x2020,0x80001001,0x20000,0xf00f00f,0xf00f00,0x601b0382,0x60060060,0x6000600,0x60060060,0x61c78630,0xc30c30c3, 2.3087 + 0xc30c000,0x30e60660,0x66066063,0xc600738,0x3006019,0x80000000,0xe0000000,0x3006019,0x80000300,0x60198000,0x3e000003,0x601980, 2.3088 + 0x0,0x3006,0x1980000,0x60600000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6019,0x80cc1fcc,0xc0180060,0x6006035,0x80000000, 2.3089 + 0x18,0x71c03000,0xc00c0583,0x300018,0x60c60c00,0x0,0x6,0x3060f060,0xc30060c6,0x600300,0x60606001,0x86306007,0x9e78670e,0x60670e60, 2.3090 + 0x66000606,0x630c606,0x19830c01,0xc0601800,0x30306000,0x60,0xc0,0x60000,0x60000000,0x6000c00,0x0,0x0,0xc00,0x0,0x0,0x600600, 2.3091 + 0x60000000,0x18000000,0x300000,0x0,0x78060,0x6600,0x1c000,0x300c,0x39819c0,0x0,0x25a00,0x0,0x30c,0x4,0xc00003,0xc060180,0x30c1f, 2.3092 + 0x80000000,0x30c000,0x10800001,0x80700000,0x7f2000,0x2020,0x80001001,0x20060,0xf00f00f,0xf00f00,0xf01b0300,0x60060060,0x6000600, 2.3093 + 0x60060060,0x60c78670,0xe70e70e7,0xe70e000,0x70c60660,0x66066063,0xc7f8618,0x0,0x0,0x0,0x0,0x0,0x0,0x7000000,0x0,0x0,0x0, 2.3094 + 0x0,0x600000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6019,0x87ff3a4c,0xc0180060,0x400600e,0x600000,0x18,0x60c03000, 2.3095 + 0xc00c0d83,0x700018,0x60c60c00,0x20,0x400006,0x3060f060,0xc6006066,0x600600,0x60606001,0x86606006,0x966c6606,0x60660660,0x66000606, 2.3096 + 0x630c666,0xf019801,0x80601800,0x30603000,0x1f06f,0xf01ec0,0xf03fe1ec,0x6703e01f,0x61c0c06,0xdc6701f0,0x6f01ec0c,0xe1f87fc6, 2.3097 + 0xc60cc03,0x71c60c7f,0xc0600600,0x60000000,0x30000000,0x300000,0x40040,0x88060,0x6600,0x18000,0x300c,0x1981980,0x0,0x2421f, 2.3098 + 0x80003ce0,0x7fc198,0x601f,0xc02021,0x980600c0,0x40230,0x80000000,0x402000,0x19806003,0x80006,0xc7f2000,0x2020,0x80001001, 2.3099 + 0x420060,0xf00f00f,0xf00f00,0xf01b0600,0x60060060,0x6000600,0x60060060,0x6066c660,0x66066066,0x6606208,0x60e60660,0x66066061, 2.3100 + 0x987fc670,0x1f01f01f,0x1f01f01,0xf039c0f0,0xf00f00f,0xf03e03,0xe03e03e0,0x1f06701f,0x1f01f01,0xf01f0060,0x1e660c60,0xc60c60c6, 2.3101 + 0xc6f060c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x7ff3207,0x8c0c0000,0xc00300e,0x600000,0x30,0x60c03000, 2.3102 + 0xc01c0983,0xf0600030,0x31860c06,0x6001e0,0x78000e,0x23e1f861,0xc6006066,0x600600,0x60606001,0x86c06006,0x966c6606,0x60660660, 2.3103 + 0xe7000606,0x630c666,0xf01f803,0x600c00,0x30000000,0x3f87f,0x83f83fc3,0xf83fe3fc,0x7f83e01f,0x6380c07,0xfe7f83f8,0x7f83fc0d, 2.3104 + 0xf3fc7fc6,0xc71cc03,0x3183187f,0xc0600600,0x60000000,0xff806000,0x300000,0x40040,0x88070,0x6600,0x60030060,0x6001818,0x1883180, 2.3105 + 0x0,0x2423f,0xc0007ff0,0x607fc1f8,0x603f,0x80c01fc1,0xf80601e0,0x5f220,0x80420000,0x5f2000,0xf006006,0x80006,0xc7f2000,0x2020, 2.3106 + 0x82107c07,0xc03c0060,0x1f81f81f,0x81f81f80,0xf03b0600,0x60060060,0x6000600,0x60060060,0x6066c660,0x66066066,0x660671c,0x61660660, 2.3107 + 0x66066061,0xf860e6c0,0x3f83f83f,0x83f83f83,0xf87fe3f8,0x3f83f83f,0x83f83e03,0xe03e03e0,0x3f87f83f,0x83f83f83,0xf83f8060, 2.3108 + 0x3fc60c60,0xc60c60c3,0x187f8318,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x883200,0x300c0000,0xc003035,0x80600000, 2.3109 + 0x30,0x66c03001,0xc0f81983,0xf86f0030,0x1f071c06,0x600787,0xfe1e001c,0x6261987f,0x86006067,0xfe7fc600,0x7fe06001,0x87c06006, 2.3110 + 0xf6646606,0x60e6067f,0xc3e00606,0x61986f6,0x600f007,0x600c00,0x30000000,0x21c71,0x830831c3,0x1c06031c,0x71c06003,0x6700c06, 2.3111 + 0x6671c318,0x71831c0f,0x16040c06,0xc318606,0x1b031803,0x80600600,0x60000000,0x30009000,0x300000,0x40040,0x7003e,0x67e0,0x90070090, 2.3112 + 0x9001818,0x8c3100,0x0,0x60,0x4000e730,0x900380f0,0x6034,0x80c018c7,0xfe060338,0xb0121,0x80c60000,0x909000,0x6008,0x1080006, 2.3113 + 0xc3f2000,0x2011,0x3180060,0x60060e0,0x19819819,0x81981981,0x9833c600,0x7fe7fe7f,0xe7fe0600,0x60060060,0x60664660,0x66066066, 2.3114 + 0x66063b8,0x62660660,0x66066060,0xf06066c0,0x21c21c21,0xc21c21c2,0x1c466308,0x31c31c31,0xc31c0600,0x60060060,0x31871c31,0x83183183, 2.3115 + 0x18318000,0x71860c60,0xc60c60c3,0x18718318,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x1981a00,0xe03e0000,0xc003044, 2.3116 + 0x40600000,0x60,0x66c03001,0x80f03182,0x1c7f8030,0x3f83fc06,0x601e07,0xfe078038,0x6661987f,0x86006067,0xfe7fc61e,0x7fe06001, 2.3117 + 0x87e06006,0x66666606,0x7fc6067f,0x81f80606,0x61986f6,0x6006006,0x600600,0x30000000,0xc60,0xc60060c6,0xc06060c,0x60c06003, 2.3118 + 0x6e00c06,0x6660c60c,0x60c60c0e,0x6000c06,0xc318666,0x1f031803,0x600600,0x603c2000,0x30016800,0x1fe0000,0x1f81f8,0x1c1f,0x804067e1, 2.3119 + 0x68060168,0x16800810,0xc42300,0x0,0x60,0x20c331,0x68030060,0x6064,0x3fc1040,0xf006031c,0xa011e,0x818c7fe0,0x909000,0x7fe1f, 2.3120 + 0x80f00006,0xc0f2060,0xf80e,0x18c0780,0x780781c0,0x19819819,0x81981981,0x9833c600,0x7fe7fe7f,0xe7fe0600,0x60060060,0xfc666660, 2.3121 + 0x66066066,0x66061f0,0x66660660,0x66066060,0x606066e0,0xc00c00,0xc00c00c0,0xc066600,0x60c60c60,0xc60c0600,0x60060060,0x60c60c60, 2.3122 + 0xc60c60c6,0xc60c000,0x61c60c60,0xc60c60c3,0x1860c318,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x1980f81,0x80373000, 2.3123 + 0xc003004,0x7fe0001,0xf0000060,0x60c03003,0x183180,0xc71c060,0x3181ec00,0x7000,0xe070,0x66619860,0xc6006066,0x60061e,0x60606001, 2.3124 + 0x87606006,0x66626606,0x7f860661,0xc01c0606,0x6198696,0xf00600e,0x600600,0x30000000,0x1fc60,0xc60060c7,0xfc06060c,0x60c06003, 2.3125 + 0x7c00c06,0x6660c60c,0x60c60c0c,0x7f00c06,0xc3b8666,0xe01b007,0x3c00600,0x3c7fe000,0xff03ec00,0x1fe0000,0x40040,0xe001,0xc0806603, 2.3126 + 0xec0e03ec,0x3ec00010,0x0,0x60000000,0x7f,0x10c3f3,0xec070060,0x6064,0x3fc1040,0x6000030c,0xa0100,0x3187fe1,0xf09f1000,0x7fe00, 2.3127 + 0x6,0xc012060,0x0,0xc63c03,0xc03c0380,0x19819819,0x81981981,0x98330600,0x60060060,0x6000600,0x60060060,0xfc662660,0x66066066, 2.3128 + 0x66060e0,0x6c660660,0x66066060,0x6060e630,0x1fc1fc1f,0xc1fc1fc1,0xfc3fe600,0x7fc7fc7f,0xc7fc0600,0x60060060,0x60c60c60,0xc60c60c6, 2.3129 + 0xc60c7fe,0x62c60c60,0xc60c60c1,0xb060c1b0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0xffe02c6,0x3c633000,0xc003004, 2.3130 + 0x7fe0001,0xf00000c0,0x60c03006,0xc6180,0xc60c060,0x60c00c00,0x7000,0xe060,0x66639c60,0x66006066,0x600606,0x60606001,0x86306006, 2.3131 + 0x66636606,0x60060660,0xc0060606,0x61f8696,0xf00600c,0x600300,0x30000000,0x3fc60,0xc60060c7,0xfc06060c,0x60c06003,0x7c00c06, 2.3132 + 0x6660c60c,0x60c60c0c,0x1f80c06,0xc1b0666,0xe01b00e,0x3c00600,0x3c43c000,0x3007de00,0x600000,0x40040,0x30000,0x61006607,0xde0c07de, 2.3133 + 0x7de00000,0x0,0xf07fefff,0x1f,0x8008c3f7,0xde0e0060,0x6064,0xc01047,0xfe00018c,0xb013f,0x86300061,0xf0911000,0x6000,0x6, 2.3134 + 0xc012060,0x3f,0x8063c0cc,0x3cc0c700,0x39c39c39,0xc39c39c1,0x98630600,0x60060060,0x6000600,0x60060060,0x60663660,0x66066066, 2.3135 + 0x66061f0,0x78660660,0x66066060,0x607fc618,0x3fc3fc3f,0xc3fc3fc3,0xfc7fe600,0x7fc7fc7f,0xc7fc0600,0x60060060,0x60c60c60,0xc60c60c6, 2.3136 + 0xc60c7fe,0x64c60c60,0xc60c60c1,0xb060c1b0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0xffe0260,0x6661b000,0xc003000, 2.3137 + 0x600000,0xc0,0x60c0300c,0xc7fe0,0xc60c060,0x60c01c00,0x1e07,0xfe078060,0x6663fc60,0x66006066,0x600606,0x60606001,0x86386006, 2.3138 + 0x6636606,0x60060660,0xe0060606,0x60f039c,0x1b806018,0x600300,0x30000000,0x70c60,0xc60060c6,0x6060c,0x60c06003,0x7600c06, 2.3139 + 0x6660c60c,0x60c60c0c,0x1c0c06,0xc1b03fc,0xe01f01c,0xe00600,0x70000000,0x3007fc00,0x600000,0x40040,0x0,0x62006607,0xfc1807fc, 2.3140 + 0x7fc00000,0x0,0xf0000000,0x1,0xc004c307,0xfc1c0060,0x6064,0xc018c0,0x600000d8,0x5f200,0x3180060,0x50a000,0x6000,0x6,0xc012000, 2.3141 + 0x0,0xc601c0,0x4201c600,0x3fc3fc3f,0xc3fc3fc3,0xfc7f0600,0x60060060,0x6000600,0x60060060,0x60663660,0x66066066,0x66063b8, 2.3142 + 0x70660660,0x66066060,0x607f860c,0x70c70c70,0xc70c70c7,0xcc60600,0x60060060,0x6000600,0x60060060,0x60c60c60,0xc60c60c6,0xc60c000, 2.3143 + 0x68c60c60,0xc60c60c1,0xf060c1f0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3300260,0x6661e000,0xc003000,0x600000, 2.3144 + 0x180,0x71c03018,0xc7fe0,0xc60c0c0,0x60c01800,0x787,0xfe1e0060,0x6663fc60,0x630060c6,0x600306,0x60606001,0x86186006,0x661e70e, 2.3145 + 0x60070c60,0x60060606,0x60f039c,0x19806038,0x600180,0x30000000,0x60c60,0xc60060c6,0x6060c,0x60c06003,0x6700c06,0x6660c60c, 2.3146 + 0x60c60c0c,0xc0c06,0xc1b039c,0x1f00e018,0x600600,0x60000000,0x1803f800,0x600000,0x40040,0x39e00,0x63006603,0xf83803f8,0x3f800000, 2.3147 + 0x0,0x60000000,0x0,0xc00cc303,0xf8180060,0x6064,0xc01fc0,0x60060070,0x40200,0x18c0060,0x402000,0x6000,0x6,0xc012000,0x0,0x18c0140, 2.3148 + 0x2014600,0x3fc3fc3f,0xc3fc3fc3,0xfc7f0300,0x60060060,0x6000600,0x60060060,0x60c61e70,0xe70e70e7,0xe70e71c,0x60e60660,0x66066060, 2.3149 + 0x6060060c,0x60c60c60,0xc60c60c6,0xcc60600,0x60060060,0x6000600,0x60060060,0x60c60c60,0xc60c60c6,0xc60c000,0x70c60c60,0xc60c60c0, 2.3150 + 0xe060c0e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x33022e0,0x6670c000,0xc003000,0x600600,0x60180,0x31803030, 2.3151 + 0x41c0184,0x1831c0c0,0x71c23806,0x6001e0,0x780000,0x62630c60,0xe38261c6,0x600386,0x60606043,0x860c6006,0x661e30c,0x60030c60, 2.3152 + 0x740e0607,0xe0f039c,0x31c06030,0x600180,0x30000000,0x61c71,0x830831c3,0x406031c,0x60c06003,0x6300c06,0x6660c318,0x71831c0c, 2.3153 + 0x41c0c07,0x1c0e039c,0x1b00e030,0x600600,0x60000000,0x1c41b00e,0x601cc0,0x401f8,0x45240,0xe1803601,0xb03001b0,0x1b000000, 2.3154 + 0x0,0x0,0x41,0xc008e711,0xb0300060,0x6034,0x80c02020,0x60060030,0x30c00,0xc60000,0x30c000,0x0,0x7,0x1c012000,0x0,0x3180240, 2.3155 + 0x6024608,0x30c30c30,0xc30c30c3,0xc630382,0x60060060,0x6000600,0x60060060,0x61c61e30,0xc30c30c3,0xc30c208,0x70c70e70,0xe70e70e0, 2.3156 + 0x6060068c,0x61c61c61,0xc61c61c6,0x1cc62308,0x30430430,0x43040600,0x60060060,0x31860c31,0x83183183,0x18318060,0x31c71c71, 2.3157 + 0xc71c71c0,0xe07180e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x2203fc0,0x663f6000,0x6006000,0x600600,0x60300, 2.3158 + 0x3f81fe7f,0xc7f80187,0xf83f80c0,0x3f83f006,0x600020,0x400060,0x33e6067f,0xc1fe7f87,0xfe6001fe,0x6063fc7f,0x60e7fe6,0x660e3f8, 2.3159 + 0x6001f860,0x37fc0603,0xfc06030c,0x30c0607f,0xe06000c0,0x30000000,0x7fc7f,0x83f83fc3,0xfc0603fc,0x60c7fe03,0x61807c6,0x6660c3f8, 2.3160 + 0x7f83fc0c,0x7f80fc3,0xfc0e039c,0x3180607f,0xc0600600,0x60000000,0xfc0e00c,0x601986,0x66040040,0x4527f,0xc0803fe0,0xe07fe0e0, 2.3161 + 0xe000000,0x0,0x0,0x7f,0x80107ff0,0xe07fc060,0x603f,0x83fe0000,0x60060018,0xf000,0x420000,0xf0000,0x7fe00,0x7,0xfe012000, 2.3162 + 0x0,0x2100640,0xc0643f8,0x60660660,0x66066067,0xec3e1fe,0x7fe7fe7f,0xe7fe3fc3,0xfc3fc3fc,0x7f860e3f,0x83f83f83,0xf83f8000, 2.3163 + 0x5fc3fc3f,0xc3fc3fc0,0x606006fc,0x7fc7fc7f,0xc7fc7fc7,0xfcffe3f8,0x3fc3fc3f,0xc3fc7fe7,0xfe7fe7fe,0x3f860c3f,0x83f83f83, 2.3164 + 0xf83f8060,0x7f83fc3f,0xc3fc3fc0,0x607f8060,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x2201f80,0x3c1e7000,0x6006000, 2.3165 + 0x600,0x60300,0xe01fe7f,0xc3f00183,0xe01f0180,0x1f01e006,0x600000,0x60,0x3006067f,0x807c7e07,0xfe6000f8,0x6063fc3e,0x6067fe6, 2.3166 + 0x660e0f0,0x6000f060,0x3bf80601,0xf806030c,0x60e0607f,0xe06000c0,0x30000000,0x1ec6f,0xf01ec0,0xf80601ec,0x60c7fe03,0x61c03c6, 2.3167 + 0x6660c1f0,0x6f01ec0c,0x3f007c1,0xcc0e030c,0x71c0c07f,0xc0600600,0x60000000,0x7804018,0xe01186,0x66040040,0x39e3f,0x80401fe0, 2.3168 + 0x407fe040,0x4000000,0x0,0x0,0x3f,0x203ce0,0x407fc060,0x601f,0x3fe0000,0x60060018,0x0,0x0,0x0,0x7fe00,0x6,0xe6012000,0x0, 2.3169 + 0x7e0,0x1807e1f0,0x60660660,0x66066066,0x6c3e07c,0x7fe7fe7f,0xe7fe3fc3,0xfc3fc3fc,0x7e060e0f,0xf00f00,0xf00f0000,0x8f01f81f, 2.3170 + 0x81f81f80,0x60600670,0x1ec1ec1e,0xc1ec1ec1,0xec79c0f0,0xf80f80f,0x80f87fe7,0xfe7fe7fe,0x1f060c1f,0x1f01f01,0xf01f0000,0x4f01cc1c, 2.3171 + 0xc1cc1cc0,0xc06f00c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x6006000,0x600,0x600,0x0,0x0,0x0,0x0, 2.3172 + 0x600000,0x0,0x18000000,0x0,0x0,0x0,0x0,0x0,0x1800,0x0,0x0,0x0,0x600060,0x30000000,0x0,0x0,0xc,0x3,0x0,0x0,0x60000c00,0x0, 2.3173 + 0x0,0xc000,0x600600,0x60000000,0x18,0xc03100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x601f8,0x0,0x0,0x0,0x0,0x6, 2.3174 + 0x12000,0x2000000,0x40,0x20004000,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3175 + 0x0,0xc06000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x2004000,0xc00,0x0,0x0,0x0,0x0,0x0,0xc00000, 2.3176 + 0x0,0x1c000000,0x0,0x0,0x0,0x0,0x0,0xc00,0x0,0x0,0x0,0x780000,0xf0000000,0x0,0x0,0x21c,0x3,0x0,0x0,0x60000c00,0x0,0x0,0xc000, 2.3177 + 0x7c0603,0xe0000000,0x10,0xc02300,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x601f0,0x0,0x0,0x0,0x0,0x6,0x12000,0x1000000, 2.3178 + 0x40,0x7e004000,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc06000c0,0x0, 2.3179 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x300c000,0xc00,0x0,0x0,0x0,0x0,0x0,0xc00000,0x0,0x7800000,0x0, 2.3180 + 0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x780000,0xf0000000,0x0,0x0,0x3f8,0x3e,0x0,0x0,0x60000c00,0x0,0x0,0x38000,0x3c0603,0xc0000000, 2.3181 + 0x10,0xfc00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0,0x60000,0x0,0x0,0x0,0x0,0x6,0x0,0x1000000,0x0,0x0,0x0,0x0, 2.3182 + 0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x80600380,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3183 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc,0x0, 2.3184 + 0x0,0x1f0,0x3c,0x0,0x0,0x60000c00,0x0,0x0,0x38000,0x600,0x0,0x0,0xf000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3185 + 0x0,0x0,0x0,0x0,0x0,0x6,0x0,0xe000000,0x0,0x0,0x0,0x0,0x70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x0,0x0,0x0,0x0, 2.3186 + 0x0,0x0,0x0,0x3,0x80600380,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3187 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3188 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3189 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.3190 + 2.3191 + // Definition of a 16x32 font. 2.3192 + const unsigned int font16x32[16*32*256/32] = { 2.3193 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3194 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3195 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc300000,0x0,0xc300000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3196 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70000e0,0x3c00730,0xe7001c0,0x0,0x70000e0,0x3c00e70,0x70000e0,0x3c00e70,0x730,0x70000e0,0x3c00730, 2.3197 + 0xe700000,0x700,0xe003c0,0xe7000e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3198 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3199 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3200 + 0x0,0x0,0x6600000,0x0,0x6600000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3201 + 0x0,0x0,0x18001c0,0x6600ff0,0xe7003e0,0x0,0x18001c0,0x6600e70,0x18001c0,0x6600e70,0xff0,0x18001c0,0x6600ff0,0xe700000,0x180, 2.3202 + 0x1c00660,0xe7001c0,0x0,0x0,0x0,0x380,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3203 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3204 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000, 2.3205 + 0x0,0x3c00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c00380, 2.3206 + 0xc300ce0,0xe700630,0x0,0x1c00380,0xc300e70,0x1c00380,0xc300e70,0xce0,0x1c00380,0xc300ce0,0xe700000,0x1c0,0x3800c30,0xe700380, 2.3207 + 0x0,0x0,0x0,0x7c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3208 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3209 + 0x0,0x0,0x0,0x0,0xe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1800000,0x0,0x0,0x0, 2.3210 + 0x0,0x0,0x0,0x0,0x0,0xc300000,0x0,0xc300000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x700000,0x0,0x0,0x0,0x7c007c00,0x3e000000, 2.3211 + 0x0,0x0,0x630,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe000070,0x1800000,0xc60,0x0,0xe000070,0x1800000,0xe000070, 2.3212 + 0x1800000,0x0,0xe000070,0x1800000,0x0,0xe00,0x700180,0x70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3213 + 0x0,0x0,0x0,0x800000,0x0,0x600600,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3214 + 0x0,0x0,0x3f0,0xfc0,0x0,0x7000000,0x38000000,0x1c0000,0xfc0000,0x380001c0,0xe01c00,0x7f800000,0x0,0x0,0x0,0x0,0x0,0x0,0x7c, 2.3215 + 0x1801f00,0x0,0x0,0x1c,0x0,0x0,0x3c00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7300000,0x6600000,0x0,0x6600000,0x0,0x0,0x0,0x0,0xe700000, 2.3216 + 0x0,0x0,0x0,0x0,0x0,0xe00000,0x0,0x0,0x0,0xc000c00,0x43800000,0x0,0x0,0x630,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3217 + 0xf80,0x70000e0,0x3c00730,0xe700c60,0x0,0x70000e0,0x3c00e70,0x70000e0,0x3c00e70,0xe000730,0x70000e0,0x3c00730,0xe700000,0x700, 2.3218 + 0xe003c0,0xe7000e0,0x38000e70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x6300000,0x803c00,0x7c00180, 2.3219 + 0xc00300,0x1000000,0x0,0x1c,0x3c007c0,0xfc007e0,0xe01ff8,0x3f03ffc,0x7e007c0,0x0,0x0,0x7c0,0x1c0,0x7f8003f0,0x7f007ff8,0x7ff803f0, 2.3220 + 0x70381ffc,0xff0700e,0x7000783c,0x783807c0,0x7fc007c0,0x7fc00fc0,0x7fff7038,0x700ee007,0x780f780f,0x7ffc03f0,0x70000fc0,0x3c00000, 2.3221 + 0x3000000,0x38000000,0x1c0000,0x1fc0000,0x380001c0,0xe01c00,0x7f800000,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x1801f80,0x0,0x1f80000, 2.3222 + 0x7e,0x0,0x0,0x2400000,0xfc00000,0x7ff0000,0x7ffc0000,0x0,0x0,0x0,0x0,0xf30fb0c,0x2400000,0x0,0x240780f,0x1c0,0xfc,0x780f, 2.3223 + 0x18003f0,0xe700000,0x7c00000,0x0,0xff0,0x3c00000,0x78007c0,0xc00000,0xff80000,0xf80,0x7c00000,0xc000c00,0x18001c0,0x1c001c0, 2.3224 + 0x1c001c0,0x1c003e0,0x7fe03f0,0x7ff87ff8,0x7ff87ff8,0x1ffc1ffc,0x1ffc1ffc,0x7f007838,0x7c007c0,0x7c007c0,0x7c00000,0x7c67038, 2.3225 + 0x70387038,0x7038780f,0x70001fe0,0x30000c0,0x2400f30,0xe700c60,0x0,0x30000c0,0x2400e70,0x30000c0,0x2400e70,0xf700f30,0x30000c0, 2.3226 + 0x2400f30,0xe700000,0x300,0xc00240,0xe7000c0,0x38000e70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0, 2.3227 + 0x630018c,0x807e00,0xfe00180,0xc00300,0x1000000,0x0,0x38,0xff01fc0,0x3ff01ff0,0x1e01ff8,0x7f83ffc,0x1ff80ff0,0x0,0x0,0xff0, 2.3228 + 0x1f003e0,0x7fe00ff8,0x7fc07ff8,0x7ff80ff8,0x70381ffc,0xff0701c,0x7000783c,0x78381ff0,0x7fe01ff0,0x7fe01ff0,0x7fff7038,0x781ee007, 2.3229 + 0x3c1e380e,0x7ffc0380,0x380001c0,0x3c00000,0x1800000,0x38000000,0x1c0000,0x3c00000,0x380001c0,0xe01c00,0x3800000,0x0,0x0, 2.3230 + 0x0,0x7000000,0x0,0x0,0x1e0,0x18003c0,0x0,0x3fc0000,0x70,0x0,0x0,0x6600000,0x1ff00000,0x1fff0000,0x7ffc0000,0x0,0x0,0x0,0x0, 2.3231 + 0xcf0239c,0x3c00000,0x0,0x3c0380e,0x1c0,0x2001fe,0x380e,0x18007f8,0xe700000,0x8600000,0x0,0xff0,0x7e00000,0x8c00870,0x1800000, 2.3232 + 0x1ff80000,0x180,0xc600000,0xc000c00,0x38001c0,0x3e003e0,0x3e003e0,0x3e001c0,0x7fe0ff8,0x7ff87ff8,0x7ff87ff8,0x1ffc1ffc,0x1ffc1ffc, 2.3233 + 0x7fc07838,0x1ff01ff0,0x1ff01ff0,0x1ff00000,0x1fec7038,0x70387038,0x7038380e,0x70003ce0,0x1800180,0x6600cf0,0xe7007c0,0x0, 2.3234 + 0x1800180,0x6600e70,0x1800180,0x6600e70,0x7c00cf0,0x1800180,0x6600cf0,0xe700000,0x180,0x1800660,0xe700180,0x38000e70,0x0, 2.3235 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x630030c,0x3f0e700,0x1e200180,0x1800180,0x21100000,0x0, 2.3236 + 0x38,0x1e7819c0,0x38781038,0x1e01c00,0xf080038,0x1c381c38,0x0,0x0,0x1878,0x7fc03e0,0x70e01e18,0x70e07000,0x70001e18,0x703801c0, 2.3237 + 0x707038,0x70007c7c,0x7c381c70,0x70701c70,0x70703830,0x1c07038,0x381ce007,0x1c1c3c1e,0x3c0380,0x380001c0,0x7e00000,0xc00000, 2.3238 + 0x38000000,0x1c0000,0x3800000,0x38000000,0x1c00,0x3800000,0x0,0x0,0x0,0x7000000,0x0,0x0,0x1c0,0x18001c0,0x0,0x70c0000,0xe0, 2.3239 + 0x0,0x0,0xc300000,0x38300000,0x3c700000,0x3c0000,0x0,0x0,0x0,0x0,0xce022f4,0x1800000,0x0,0x1803c1e,0x1c0,0x2003c2,0x3c1e, 2.3240 + 0x1800e08,0x7e0,0x300000,0x0,0x7e00000,0xe700000,0x600030,0x3000000,0x3f980000,0x180,0x18200000,0xc000c00,0x1e0001c0,0x3e003e0, 2.3241 + 0x3e003e0,0x3e003e0,0xfe01e18,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x70e07c38,0x1c701c70,0x1c701c70,0x1c700000,0x3c787038, 2.3242 + 0x70387038,0x70383c1e,0x70003870,0xc00300,0xc300ce0,0x380,0x0,0xc00300,0xc300000,0xc00300,0xc300000,0xfc00ce0,0xc00300,0xc300ce0, 2.3243 + 0x0,0xc0,0x3000c30,0x300,0x38000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x630031c,0xff8c300, 2.3244 + 0x1c000180,0x1800180,0x39380000,0x0,0x70,0x1c3801c0,0x203c001c,0x3e01c00,0x1c000038,0x381c3838,0x0,0x0,0x1038,0xe0e03e0,0x70703c08, 2.3245 + 0x70707000,0x70003808,0x703801c0,0x707070,0x70007c7c,0x7c383838,0x70383838,0x70387010,0x1c07038,0x381c700e,0x1e3c1c1c,0x780380, 2.3246 + 0x1c0001c0,0xe700000,0x0,0x38000000,0x1c0000,0x3800000,0x38000000,0x1c00,0x3800000,0x0,0x0,0x0,0x7000000,0x0,0x0,0x1c0,0x18001c0, 2.3247 + 0x0,0xe000000,0xe0,0x0,0x1000100,0x3800,0x70100000,0x38700000,0x780000,0x1c0,0x7801ce0,0xe380000,0x0,0x2264,0x0,0x0,0x1c1c, 2.3248 + 0x0,0x200780,0x1c1c,0x1800c00,0x1818,0x7f00000,0x0,0x18180000,0xc300000,0x600070,0x0,0x7f980000,0x180,0x18300000,0xc000c00, 2.3249 + 0x3000000,0x3e003e0,0x3e003e0,0x3e003e0,0xee03c08,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x70707c38,0x38383838,0x38383838, 2.3250 + 0x38380000,0x38387038,0x70387038,0x70381c1c,0x7fc03870,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbc00000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3251 + 0x38000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x6300318,0xe88c300,0x1c000180,0x38001c0, 2.3252 + 0xfe00180,0x0,0x70,0x1c3801c0,0x1c001c,0x6e01c00,0x1c000078,0x381c3818,0x0,0x40000,0x40000038,0x1c0607e0,0x70703800,0x70707000, 2.3253 + 0x70003800,0x703801c0,0x7070e0,0x70007c7c,0x7c383838,0x70383838,0x70387000,0x1c07038,0x381c700e,0xf780e38,0x700380,0x1c0001c0, 2.3254 + 0x1c380000,0x0,0x38000000,0x1c0000,0x3800000,0x38000000,0x1c00,0x3800000,0x0,0x0,0x0,0x7000000,0x0,0x0,0x1c0,0x18001c0,0x0, 2.3255 + 0xe000000,0xe0,0x0,0x1000100,0x4400,0x70000000,0x38700000,0x700000,0xe0,0x7001c70,0xe380000,0x0,0x2264,0x0,0x0,0xe38,0x0, 2.3256 + 0x200700,0xe38,0x1800c00,0x300c,0xc300000,0x0,0x300c0000,0xc300180,0x6003c0,0x0,0x7f980000,0x180,0x18300000,0xc000c00,0x1800000, 2.3257 + 0x7e007e0,0x7e007e0,0x7e003e0,0xee03800,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x70707c38,0x38383838,0x38383838,0x38380000, 2.3258 + 0x38387038,0x70387038,0x70380e38,0x7ff039f0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e00000,0x0,0x0,0x0,0x40000,0x0,0x0,0x38000000, 2.3259 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x6300318,0x1c80e700,0x1c000180,0x38001c0,0x3800180, 2.3260 + 0x0,0xe0,0x381c01c0,0x1c001c,0x6e01c00,0x38000070,0x381c381c,0x0,0x3c0000,0x78000078,0x38030770,0x70707800,0x70387000,0x70007000, 2.3261 + 0x703801c0,0x7071c0,0x7000745c,0x7638701c,0x7038701c,0x70387000,0x1c07038,0x1c38718e,0x7700f78,0xf00380,0xe0001c0,0x381c0000, 2.3262 + 0x7e0,0x39e003e0,0x79c03f0,0x3ffc079c,0x39e01fc0,0xfe01c1e,0x3807778,0x39e007e0,0x39e0079c,0x73c07e0,0x7ff83838,0x701ce007, 2.3263 + 0x783c701c,0x1ffc01c0,0x18001c0,0x0,0x1c000100,0xe0,0x0,0x1000100,0x4200,0x70000000,0x70700100,0xf00100,0x10000e0,0x7000c70, 2.3264 + 0xc700000,0x0,0x2204,0x7e00000,0x1e380100,0x1ffc0f78,0x0,0xf80700,0xf78,0x1800e00,0x63e6,0x18300000,0x0,0x6fe60000,0xe700180, 2.3265 + 0xc00060,0x3838,0x7f980000,0x180,0x18300000,0xc000c00,0x18001c0,0x7700770,0x7700770,0x77007f0,0xee07800,0x70007000,0x70007000, 2.3266 + 0x1c001c0,0x1c001c0,0x70387638,0x701c701c,0x701c701c,0x701c1008,0x707c7038,0x70387038,0x70380f78,0x707039c0,0x7e007e0,0x7e007e0, 2.3267 + 0x7e007e0,0x1f3c03e0,0x3f003f0,0x3f003f0,0x1fc01fc0,0x1fc01fc0,0x7f039e0,0x7e007e0,0x7e007e0,0x7e00380,0x7ce3838,0x38383838, 2.3268 + 0x3838701c,0x39e0701c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x6307fff,0x1c807e0c,0xe000180, 2.3269 + 0x30000c0,0x3800180,0x0,0xe0,0x381c01c0,0x1c001c,0xce01fe0,0x38000070,0x381c381c,0x3800380,0xfc0000,0x7e0000f0,0x30030770, 2.3270 + 0x70707000,0x70387000,0x70007000,0x703801c0,0x707380,0x700076dc,0x7638701c,0x7038701c,0x70387800,0x1c07038,0x1c3873ce,0x7f00770, 2.3271 + 0xe00380,0xe0001c0,0x700e0000,0x1ff8,0x3ff00ff0,0xffc0ff8,0x3ffc0ffc,0x3bf01fc0,0xfe01c3c,0x3807f78,0x3bf00ff0,0x3ff00ffc, 2.3272 + 0x77e0ff0,0x7ff83838,0x3838e007,0x3c783838,0x1ffc01c0,0x18001c0,0x0,0x7ff00380,0x1e0,0x0,0x1000100,0x4200,0x78000000,0x70700380, 2.3273 + 0xe00380,0x3800060,0xe000e30,0x1c600000,0x0,0x2204,0xff00000,0x7f7c0380,0x1ffc0770,0x1c0,0x3fc0700,0x18040770,0x1800780,0x4e12, 2.3274 + 0x18300104,0x0,0x4c320000,0x7e00180,0x1c00030,0x3838,0x7f980000,0x180,0x18302080,0xc000c00,0x18001c0,0x7700770,0x7700770, 2.3275 + 0x7700770,0x1ee07000,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x70387638,0x701c701c,0x701c701c,0x701c381c,0x705c7038,0x70387038, 2.3276 + 0x70380770,0x70383b80,0x1ff81ff8,0x1ff81ff8,0x1ff81ff8,0x3fbe0ff0,0xff80ff8,0xff80ff8,0x1fc01fc0,0x1fc01fc0,0xff83bf0,0xff00ff0, 2.3277 + 0xff00ff0,0xff00380,0xffc3838,0x38383838,0x38383838,0x3ff03838,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3278 + 0x0,0x1c0,0x7fff,0x1c803c38,0xf000000,0x70000e0,0xfe00180,0x0,0x1c0,0x381c01c0,0x3c0078,0xce01ff0,0x39e000f0,0x1c38381c,0x3800380, 2.3279 + 0x3e07ffc,0xf8001f0,0x307b0770,0x70e07000,0x70387000,0x70007000,0x703801c0,0x707700,0x700076dc,0x7638701c,0x7038701c,0x70387e00, 2.3280 + 0x1c07038,0x1c3873ce,0x3e007f0,0x1e00380,0x70001c0,0x0,0x1038,0x3c381e18,0x1c7c1e3c,0x3801e3c,0x3c7801c0,0xe01c78,0x380739c, 2.3281 + 0x3c781c38,0x3c381c3c,0x7c21e10,0x7003838,0x3838700e,0x1ef03838,0x3c01c0,0x18001c0,0x0,0x7fe007c0,0x1c0,0x0,0x1000100,0x6400, 2.3282 + 0x7e000000,0x707007c0,0x1e007c0,0x7c00070,0xe000638,0x18600000,0x0,0x0,0x1e100000,0x73ce07c0,0x3c07f0,0x1c0,0x7240700,0x1ddc3ffe, 2.3283 + 0x1800de0,0x8c01,0x1870030c,0x0,0x8c310000,0x3c00180,0x3800030,0x3838,0x7f980000,0x180,0x183030c0,0xc000c00,0x430001c0,0x7700770, 2.3284 + 0x7700770,0x7700770,0x1ce07000,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x70387638,0x701c701c,0x701c701c,0x701c1c38,0x70dc7038, 2.3285 + 0x70387038,0x703807f0,0x70383b80,0x10381038,0x10381038,0x10381038,0x21e71e18,0x1e3c1e3c,0x1e3c1e3c,0x1c001c0,0x1c001c0,0x1e383c78, 2.3286 + 0x1c381c38,0x1c381c38,0x1c380380,0x1c383838,0x38383838,0x38383838,0x3c383838,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3287 + 0x0,0x0,0x0,0x0,0x0,0x1c0,0x630,0x1e8000e0,0x1f000000,0x70000e0,0x39380180,0x0,0x1c0,0x3b9c01c0,0x3c07f0,0x18e01078,0x3bf800e0, 2.3288 + 0x7e0383c,0x3800380,0x1f807ffc,0x3f001c0,0x61ff0e38,0x7fc07000,0x70387ff0,0x7ff07000,0x7ff801c0,0x707f00,0x7000729c,0x7338701c, 2.3289 + 0x7070701c,0x70703fc0,0x1c07038,0x1e7873ce,0x1c003e0,0x3c00380,0x70001c0,0x0,0x1c,0x3c381c00,0x1c3c1c1c,0x3801c3c,0x383801c0, 2.3290 + 0xe01cf0,0x380739c,0x38381c38,0x3c381c3c,0x7801c00,0x7003838,0x3838700e,0xfe03c78,0x7801c0,0x18001c0,0x0,0x1c000c20,0xff8, 2.3291 + 0x0,0x1ff01ff0,0x3818,0x3fc00100,0x707e0c20,0x3c00c20,0xc200030,0xc000618,0x18c00000,0x0,0x0,0x1c000080,0xe1ce0c20,0x7803e0, 2.3292 + 0x1c0,0xe200700,0xff83ffe,0x1801878,0x9801,0x1cf0071c,0x7ffc0000,0x8c310000,0x7ffe,0x7000030,0x3838,0x3f980380,0x180,0xc6038e0, 2.3293 + 0x7f9c7f9c,0x3e1c01c0,0xe380e38,0xe380e38,0xe380f78,0x1cfc7000,0x7ff07ff0,0x7ff07ff0,0x1c001c0,0x1c001c0,0xfe387338,0x701c701c, 2.3294 + 0x701c701c,0x701c0e70,0x719c7038,0x70387038,0x703803e0,0x70383b80,0x1c001c,0x1c001c,0x1c001c,0xe71c00,0x1c1c1c1c,0x1c1c1c1c, 2.3295 + 0x1c001c0,0x1c001c0,0x1c383838,0x1c381c38,0x1c381c38,0x1c380000,0x3c383838,0x38383838,0x38383c78,0x3c383c78,0x0,0x0,0x0,0x0, 2.3296 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x630,0xf800380,0x3f830000,0x70000e0,0x31080180,0x0,0x380,0x3b9c01c0, 2.3297 + 0x7807e0,0x38e00038,0x3c3800e0,0xff01c3c,0x3800380,0x7c000000,0x7c03c0,0x61870e38,0x7fc07000,0x70387ff0,0x7ff070fc,0x7ff801c0, 2.3298 + 0x707f80,0x7000739c,0x7338701c,0x7ff0701c,0x7fe00ff0,0x1c07038,0xe7073ce,0x1c003e0,0x3800380,0x38001c0,0x0,0x1c,0x381c3800, 2.3299 + 0x381c380e,0x380381c,0x383801c0,0xe01de0,0x380739c,0x3838381c,0x381c381c,0x7001e00,0x7003838,0x1c70718e,0x7e01c70,0xf00380, 2.3300 + 0x18001e0,0x1e000000,0x1c001bb0,0xff8,0x0,0x1000100,0xe0,0xff00300,0x707e1bb0,0x3801bb0,0x1bb00010,0x8000308,0x30c00000,0x0, 2.3301 + 0x0,0x1e0000c0,0xe1ce1bb0,0xf003e0,0x1c0,0x1c203ff8,0x63003e0,0x180181c,0x9801,0xfb00e38,0x7ffc0000,0x8fc10000,0x7ffe,0xe000860, 2.3302 + 0x3838,0x1f980380,0x180,0x7c01c70,0x1f001f0,0x1f003c0,0xe380e38,0xe380e38,0xe380e38,0x1cfc7000,0x7ff07ff0,0x7ff07ff0,0x1c001c0, 2.3303 + 0x1c001c0,0xfe387338,0x701c701c,0x701c701c,0x701c07e0,0x731c7038,0x70387038,0x703803e0,0x70383980,0x1c001c,0x1c001c,0x1c001c, 2.3304 + 0xe73800,0x380e380e,0x380e380e,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c0000,0x387c3838,0x38383838,0x38381c70, 2.3305 + 0x381c1c70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0xc30,0x7f00e00,0x33c30000,0x70000e0,0x1007ffe, 2.3306 + 0x0,0x380,0x3b9c01c0,0xf00078,0x30e0001c,0x3c1c01c0,0x1c381fdc,0x0,0x70000000,0x1c0380,0x63030e38,0x70707000,0x70387000,0x700070fc, 2.3307 + 0x703801c0,0x707b80,0x7000739c,0x7338701c,0x7fc0701c,0x7fc001f0,0x1c07038,0xe703e5c,0x3e001c0,0x7800380,0x38001c0,0x0,0x7fc, 2.3308 + 0x381c3800,0x381c380e,0x380381c,0x383801c0,0xe01fe0,0x380739c,0x3838381c,0x381c381c,0x7001fc0,0x7003838,0x1c70718e,0x7c01c70, 2.3309 + 0xe01f00,0x180007c,0x7f8c0000,0x7fc03fb8,0x1c0,0x0,0x1000100,0x700,0x1f00600,0x70703fb8,0x7803fb8,0x3fb80000,0x8000000,0x180, 2.3310 + 0x0,0x0,0x1fc00060,0xe1ce3fb8,0xe001c0,0x1c0,0x1c203ff8,0xc1801c0,0x180c,0x9801,0x1c70,0xc0000,0x8cc10000,0x180,0xfe007c0, 2.3311 + 0x3838,0x7980380,0xff0,0xe38,0x3e003e00,0x3e000380,0xe380e38,0xe380e38,0xe380e38,0x38e07000,0x70007000,0x70007000,0x1c001c0, 2.3312 + 0x1c001c0,0x70387338,0x701c701c,0x701c701c,0x701c03c0,0x731c7038,0x70387038,0x703801c0,0x703838e0,0x7fc07fc,0x7fc07fc,0x7fc07fc, 2.3313 + 0xe73800,0x380e380e,0x380e380e,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c7ffc,0x38dc3838,0x38383838,0x38381c70, 2.3314 + 0x381c1c70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0xc60,0xf83878,0x71e30000,0x70000e0,0x1007ffe, 2.3315 + 0x7f0,0x380,0x381c01c0,0x1e0003c,0x60e0001c,0x381c01c0,0x381c079c,0x0,0x7c000000,0x7c0380,0x63031c1c,0x70307000,0x70387000, 2.3316 + 0x7000701c,0x703801c0,0x7071c0,0x7000739c,0x71b8701c,0x7000701c,0x71e00078,0x1c07038,0xe703e7c,0x7e001c0,0xf000380,0x38001c0, 2.3317 + 0x0,0x1ffc,0x381c3800,0x381c3ffe,0x380381c,0x383801c0,0xe01fc0,0x380739c,0x3838381c,0x381c381c,0x7000ff0,0x7003838,0x1ef03bdc, 2.3318 + 0x3800ee0,0x1e01f00,0x180007c,0x61fc0000,0x7fc07f3c,0x1c0,0x0,0x1000100,0x1800,0x780c00,0x70707f3c,0xf007f3c,0x7f3c0000,0x0, 2.3319 + 0x3c0,0x3ffcffff,0x0,0xff00030,0xe1fe7f3c,0x1e001c0,0x1c0,0x1c200700,0xc183ffe,0xe0c,0x9801,0x1ff038e0,0xc07f0,0x8c610000, 2.3320 + 0x180,0x0,0x3838,0x1980380,0x0,0x1ff0071c,0xe000e000,0xe0000f80,0x1c1c1c1c,0x1c1c1c1c,0x1c1c1e38,0x38e07000,0x70007000,0x70007000, 2.3321 + 0x1c001c0,0x1c001c0,0x703871b8,0x701c701c,0x701c701c,0x701c03c0,0x761c7038,0x70387038,0x703801c0,0x70703870,0x1ffc1ffc,0x1ffc1ffc, 2.3322 + 0x1ffc1ffc,0xfff3800,0x3ffe3ffe,0x3ffe3ffe,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c7ffc,0x389c3838,0x38383838, 2.3323 + 0x38380ee0,0x381c0ee0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0xfffc,0xbc60fc,0x70e30000,0x70000e0, 2.3324 + 0x180,0x7f0,0x700,0x381c01c0,0x3e0001c,0x7ffc001c,0x381c03c0,0x381c001c,0x0,0x1f807ffc,0x3f00380,0x63031ffc,0x70387000,0x70387000, 2.3325 + 0x7000701c,0x703801c0,0x7071e0,0x7000701c,0x71b8701c,0x7000701c,0x70f00038,0x1c07038,0x7e03e7c,0x77001c0,0xe000380,0x1c001c0, 2.3326 + 0x0,0x3c1c,0x381c3800,0x381c3ffe,0x380381c,0x383801c0,0xe01fe0,0x380739c,0x3838381c,0x381c381c,0x70003f8,0x7003838,0xee03bdc, 2.3327 + 0x3c00ee0,0x3c00380,0x18000e0,0xf00000,0x1c007e7c,0x3c0,0x0,0x1000100,0x0,0x381800,0x70707e7c,0xe007e7c,0x7e7c0000,0x0,0x7c0, 2.3328 + 0x0,0x0,0x3f80018,0xe1fe7e7c,0x3c001c0,0x1c0,0x1c200700,0xc183ffe,0xf0c,0x8c01,0x38e0,0xc07f0,0x8c710000,0x180,0x0,0x3838, 2.3329 + 0x1980000,0x0,0x71c,0x7000f0,0x700f00,0x1ffc1ffc,0x1ffc1ffc,0x1ffc1ffc,0x3fe07000,0x70007000,0x70007000,0x1c001c0,0x1c001c0, 2.3330 + 0x703871b8,0x701c701c,0x701c701c,0x701c07e0,0x7c1c7038,0x70387038,0x703801c0,0x7ff03838,0x3c1c3c1c,0x3c1c3c1c,0x3c1c3c1c, 2.3331 + 0x3fff3800,0x3ffe3ffe,0x3ffe3ffe,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c0000,0x391c3838,0x38383838,0x38380ee0, 2.3332 + 0x381c0ee0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffc,0x9c01ce,0x70f60000,0x70000e0,0x180, 2.3333 + 0x0,0x700,0x381c01c0,0x780001c,0x7ffc001c,0x381c0380,0x381c003c,0x0,0x3e07ffc,0xf800380,0x63031ffc,0x70387000,0x70387000, 2.3334 + 0x7000701c,0x703801c0,0x7070f0,0x7000701c,0x71b8701c,0x7000701c,0x70700038,0x1c07038,0x7e03e7c,0xf7801c0,0x1e000380,0x1c001c0, 2.3335 + 0x0,0x381c,0x381c3800,0x381c3800,0x380381c,0x383801c0,0xe01fe0,0x380739c,0x3838381c,0x381c381c,0x7000078,0x7003838,0xee03a5c, 2.3336 + 0x7c00fe0,0x78001c0,0x18001c0,0x0,0x1c003ef8,0x380,0x0,0x1000100,0x810,0x383000,0x70703ef8,0x1e003ef8,0x3ef80000,0x0,0x7c0, 2.3337 + 0x0,0x0,0x78000c,0xe1c03ef8,0x78001c0,0x1c0,0x1c200700,0x63001c0,0x18003f8,0x4e12,0x1c70,0xc0000,0x4c320000,0x180,0x0,0x3838, 2.3338 + 0x1980000,0x0,0xe38,0x700118,0x701e00,0x1ffc1ffc,0x1ffc1ffc,0x1ffc1ffc,0x7fe07000,0x70007000,0x70007000,0x1c001c0,0x1c001c0, 2.3339 + 0x703871b8,0x701c701c,0x701c701c,0x701c0e70,0x7c1c7038,0x70387038,0x703801c0,0x7fc0381c,0x381c381c,0x381c381c,0x381c381c, 2.3340 + 0x78e03800,0x38003800,0x38003800,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c0000,0x3b1c3838,0x38383838,0x38380fe0, 2.3341 + 0x381c0fe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1860,0x9c0186,0x707e0000,0x30000c0,0x180, 2.3342 + 0x0,0xe00,0x183801c0,0xf00001c,0xe0001c,0x181c0380,0x381c0038,0x0,0xfc0000,0x7e000000,0x61873c1e,0x70383800,0x70707000,0x7000381c, 2.3343 + 0x703801c0,0x707070,0x7000701c,0x70f83838,0x70003838,0x70780038,0x1c07038,0x7e03c3c,0xe3801c0,0x1c000380,0xe001c0,0x0,0x381c, 2.3344 + 0x381c3800,0x381c3800,0x380381c,0x383801c0,0xe01ef0,0x380739c,0x3838381c,0x381c381c,0x7000038,0x7003838,0xfe03e7c,0xfe007c0, 2.3345 + 0x70001c0,0x18001c0,0x0,0xe001ff0,0x380,0x0,0x1000100,0x162c,0x381800,0x30701ff0,0x1c001ff0,0x1ff00000,0x0,0x3c0,0x0,0x0, 2.3346 + 0x380018,0xe1c01ff0,0x70001c0,0x1c0,0x1c200700,0xff801c0,0x18000f0,0x63e6,0xe38,0x0,0x6c3e0000,0x0,0x0,0x3838,0x1980000,0x0, 2.3347 + 0x1c70,0xf0000c,0xf01c00,0x3c1e3c1e,0x3c1e3c1e,0x3c1e3c1c,0x70e03800,0x70007000,0x70007000,0x1c001c0,0x1c001c0,0x707070f8, 2.3348 + 0x38383838,0x38383838,0x38381c38,0x38387038,0x70387038,0x703801c0,0x7000381c,0x381c381c,0x381c381c,0x381c381c,0x70e03800, 2.3349 + 0x38003800,0x38003800,0x1c001c0,0x1c001c0,0x381c3838,0x381c381c,0x381c381c,0x381c0380,0x3e1c3838,0x38383838,0x383807c0,0x381c07c0, 2.3350 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18c0,0x9c0186,0x783c0000,0x38001c0,0x180,0x3800000, 2.3351 + 0x3800e00,0x1c3801c0,0x1e00003c,0xe00038,0x1c1c0780,0x381c0038,0x3800380,0x3c0000,0x78000000,0x61ff380e,0x70383808,0x70707000, 2.3352 + 0x7000381c,0x703801c0,0x40707078,0x7000701c,0x70f83838,0x70003838,0x70384038,0x1c07038,0x7e03c3c,0x1e3c01c0,0x3c000380,0xe001c0, 2.3353 + 0x0,0x383c,0x3c381c00,0x1c3c1c00,0x3801c3c,0x383801c0,0xe01c78,0x380739c,0x38381c38,0x3c381c3c,0x7000038,0x7003878,0x7c01e78, 2.3354 + 0x1ef007c0,0xf0001c0,0x18001c0,0x0,0xe000ee0,0x7800380,0xe380000,0x1001ff0,0x2242,0x40380c00,0x38700ee0,0x3c000ee0,0xee00000, 2.3355 + 0x0,0x0,0x0,0x0,0x380030,0xe1c00ee0,0xf0001c0,0x1c0,0xe200700,0xdd801c0,0x1800038,0x300c,0x71c,0x0,0x300c0000,0x0,0x0,0x3838, 2.3356 + 0x1980000,0x0,0x38e0,0xb0000c,0xb01c08,0x380e380e,0x380e380e,0x380e380e,0x70e03808,0x70007000,0x70007000,0x1c001c0,0x1c001c0, 2.3357 + 0x707070f8,0x38383838,0x38383838,0x3838381c,0x38387038,0x70387038,0x703801c0,0x7000381c,0x383c383c,0x383c383c,0x383c383c, 2.3358 + 0x70e01c00,0x1c001c00,0x1c001c00,0x1c001c0,0x1c001c0,0x1c383838,0x1c381c38,0x1c381c38,0x1c380380,0x1c383878,0x38783878,0x387807c0, 2.3359 + 0x3c3807c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x18c0,0x10b801ce,0x3c3e0000,0x38001c0,0x180, 2.3360 + 0x3800000,0x3801c00,0x1e7801c0,0x3c002078,0xe02078,0x1c380700,0x1c3810f0,0x3800380,0x40000,0x40000380,0x307b380e,0x70701e18, 2.3361 + 0x70e07000,0x70001c1c,0x703801c0,0x60e0703c,0x7000701c,0x70f83c78,0x70003c70,0x703c70f0,0x1c03870,0x3c01c3c,0x3c1c01c0,0x78000380, 2.3362 + 0x7001c0,0x0,0x3c7c,0x3c381e18,0x1c7c1e0c,0x3801c3c,0x383801c0,0xe01c38,0x3c0739c,0x38381c38,0x3c381c3c,0x7001078,0x7803c78, 2.3363 + 0x7c01c38,0x1c780380,0x1e0001c0,0x18001c0,0x0,0x70c06c0,0x7000380,0xe300000,0x1000100,0x2142,0x70f00600,0x3c7006c0,0x780006c0, 2.3364 + 0x6c00000,0x0,0x0,0x0,0x0,0x10780060,0x73e206c0,0x1e0001c0,0x1c0,0x7240700,0x180c01c0,0x1800018,0x1818,0x30c,0x0,0x18180000, 2.3365 + 0x0,0x0,0x3c78,0x1980000,0x0,0x30c0,0x130000c,0x1301c18,0x380e380e,0x380e380e,0x380e380e,0x70e01e18,0x70007000,0x70007000, 2.3366 + 0x1c001c0,0x1c001c0,0x70e070f8,0x3c783c78,0x3c783c78,0x3c781008,0x7c783870,0x38703870,0x387001c0,0x70003a3c,0x3c7c3c7c,0x3c7c3c7c, 2.3367 + 0x3c7c3c7c,0x79f11e18,0x1e0c1e0c,0x1e0c1e0c,0x1c001c0,0x1c001c0,0x1c783838,0x1c381c38,0x1c381c38,0x1c380380,0x1c383c78,0x3c783c78, 2.3368 + 0x3c780380,0x3c380380,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x38c0,0x1ff800fc,0x1fee0000, 2.3369 + 0x1800180,0x180,0x3800000,0x3801c00,0xff01ffc,0x3ffc3ff0,0xe03ff0,0xff00700,0x1ff81fe0,0x3800380,0x0,0x380,0x3000780f,0x7ff00ff8, 2.3370 + 0x7fc07ff8,0x70000ffc,0x70381ffc,0x7fe0701c,0x7ff8701c,0x70781ff0,0x70001ff0,0x701c7ff0,0x1c01fe0,0x3c01c38,0x380e01c0,0x7ffc0380, 2.3371 + 0x7001c0,0x0,0x1fdc,0x3ff00ff0,0xffc0ffc,0x3800fdc,0x38383ffe,0xe01c3c,0x1fc739c,0x38380ff0,0x3ff00ffc,0x7001ff0,0x3f81fb8, 2.3372 + 0x7c01c38,0x3c3c0380,0x1ffc01c0,0x18001c0,0x0,0x3fc0380,0x7000380,0xc70718c,0x1000100,0x2244,0x7ff00200,0x1fff0380,0x7ffc0380, 2.3373 + 0x3800000,0x0,0x0,0x0,0x0,0x1ff000c0,0x7f7e0380,0x1ffc01c0,0x1c0,0x3fc3ffe,0x1c0,0x1800018,0x7e0,0x104,0x0,0x7e00000,0x7ffe, 2.3374 + 0x0,0x3fde,0x1980000,0x0,0x2080,0x3300018,0x3300ff0,0x780f780f,0x780f780f,0x780f780e,0xf0fe0ff8,0x7ff87ff8,0x7ff87ff8,0x1ffc1ffc, 2.3375 + 0x1ffc1ffc,0x7fc07078,0x1ff01ff0,0x1ff01ff0,0x1ff00000,0x7ff01fe0,0x1fe01fe0,0x1fe001c0,0x70003bf8,0x1fdc1fdc,0x1fdc1fdc, 2.3376 + 0x1fdc1fdc,0x3fbf0ff0,0xffc0ffc,0xffc0ffc,0x3ffe3ffe,0x3ffe3ffe,0xff03838,0xff00ff0,0xff00ff0,0xff00000,0x3ff01fb8,0x1fb81fb8, 2.3377 + 0x1fb80380,0x3ff00380,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0,0x31c0,0x7e00078,0x7cf0000,0x1800180, 2.3378 + 0x0,0x3800000,0x3803800,0x3c01ffc,0x3ffc0fe0,0xe01fc0,0x3e00e00,0x7e00f80,0x3800380,0x0,0x380,0x18007007,0x7fc003f0,0x7f007ff8, 2.3379 + 0x700003f0,0x70381ffc,0x3f80701e,0x7ff8701c,0x707807c0,0x700007c0,0x701e1fc0,0x1c00fc0,0x3c01818,0x780f01c0,0x7ffc0380,0x3801c0, 2.3380 + 0x0,0xf9c,0x39e003e0,0x79c03f0,0x380079c,0x38383ffe,0xe01c1e,0x7c739c,0x383807e0,0x39e0079c,0x7000fc0,0x1f80f38,0x3801c38, 2.3381 + 0x781e0380,0x1ffc01c0,0x18001c0,0x0,0x1f80100,0xe000700,0x1c60718c,0x1000100,0x1e3c,0x1fc00100,0x7ff0100,0x7ffc0100,0x1000000, 2.3382 + 0x0,0x0,0x0,0x0,0xfc00080,0x3e3c0100,0x1ffc01c0,0x1c0,0xf83ffe,0x1c0,0x1800838,0x0,0x0,0x0,0x0,0x7ffe,0x0,0x3b9e,0x1980000, 2.3383 + 0x0,0x0,0x2300038,0x23003e0,0x70077007,0x70077007,0x70077007,0xe0fe03f0,0x7ff87ff8,0x7ff87ff8,0x1ffc1ffc,0x1ffc1ffc,0x7f007078, 2.3384 + 0x7c007c0,0x7c007c0,0x7c00000,0xc7c00fc0,0xfc00fc0,0xfc001c0,0x700039f0,0xf9c0f9c,0xf9c0f9c,0xf9c0f9c,0x1f1e03e0,0x3f003f0, 2.3385 + 0x3f003f0,0x3ffe3ffe,0x3ffe3ffe,0x7e03838,0x7e007e0,0x7e007e0,0x7e00000,0x63e00f38,0xf380f38,0xf380380,0x39e00380,0x0,0x0, 2.3386 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0xc00300,0x0,0x3000000,0x3800,0x0,0x0,0x0,0x0, 2.3387 + 0x0,0x300,0x0,0x0,0x1c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe0,0x0,0x0,0x0,0x0,0x380,0x3801c0,0x0,0x0,0x0,0x0,0x1c,0x0,0xe00000, 2.3388 + 0x0,0x0,0x3800001c,0x0,0x0,0x0,0x700,0x1c0,0x18001c0,0x0,0x0,0xe000700,0x18600000,0x1000100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3389 + 0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x1800ff0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x1980000,0x1800000,0x0,0x6300070,0x6300000,0x0, 2.3390 + 0x0,0x0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000000, 2.3391 + 0x0,0x700,0x38000700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0xc00300,0x0,0x7000000, 2.3392 + 0x7000,0x0,0x0,0x0,0x0,0x0,0x700,0x0,0x0,0xf040000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78,0x0,0x0,0x0,0x0,0x3f0,0x1c0fc0,0x0,0x0, 2.3393 + 0x0,0x0,0x1c,0x0,0xe00000,0x0,0x0,0x3800001c,0x0,0x0,0x0,0x700,0x1e0,0x18003c0,0x0,0x0,0xc000700,0x18c00000,0x1000000,0x0, 2.3394 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x18007e0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x1980000,0xc00000, 2.3395 + 0x0,0x7f800e0,0x7f80000,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0, 2.3396 + 0x0,0x0,0x0,0x0,0x0,0x0,0x700,0x38000700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000, 2.3397 + 0x0,0x600600,0x0,0x6000000,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x7fc0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x0,0x0,0x0,0x0, 2.3398 + 0x3f0,0xfc0,0x0,0x0,0x0,0x0,0x838,0x0,0x1e00000,0x0,0x0,0x3800001c,0x0,0x0,0x0,0xf00,0xfc,0x1801f80,0x0,0x0,0x8008e00,0x30c00000, 2.3399 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x1800000,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x1980000,0xc00000, 2.3400 + 0x0,0x3001c0,0x300000,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x0, 2.3401 + 0x0,0x0,0x0,0x0,0x0,0xf00,0x38000f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0, 2.3402 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3403 + 0x0,0x0,0xff0,0x0,0x1fc00000,0x0,0x0,0x3800001c,0x0,0x0,0x0,0x3e00,0x7c,0x1801f00,0x0,0x0,0x800fe00,0x0,0x0,0x0,0x0,0x0,0x0, 2.3404 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x1800000,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x0,0x7c00000,0x0,0x3001fc,0x300000, 2.3405 + 0x0,0x0,0x0,0x3e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3406 + 0x3e00,0x38003e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3407 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff8,0x0,0x0,0x0,0x7e0,0x0,0x1f000000, 2.3408 + 0x0,0x0,0x3800001c,0x0,0x0,0x0,0x3c00,0x0,0x1800000,0x0,0x0,0x7800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3409 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x0,0x7800000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3410 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00,0x38003c00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3411 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3412 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1800000,0x0,0x0,0x0,0x0, 2.3413 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3414 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3415 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3416 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3417 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3418 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3419 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3420 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3421 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3422 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3423 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.3424 + 2.3425 + // Definition of a 19x38 font. 2.3426 + const unsigned int font19x38[19*38*256/32] = { 2.3427 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3428 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3429 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c380000,0x0,0x1c380,0x0,0x0,0x0,0x0,0x0, 2.3430 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800007,0x3c003,0x86000000, 2.3431 + 0x1e00000,0x3,0x80000700,0x3c00000,0x380000,0x70003c00,0x0,0xe1800e,0x1c00,0xf000e18,0x0,0x0,0x700000e0,0x780000,0x7000,0x0, 2.3432 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3433 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3434 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3435 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe700000,0x0,0xe700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3436 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c0000e,0x7e003,0xe60071c0,0x7f80000,0x1,0xc0000e00,0x7e0038e,0x1c0000, 2.3437 + 0xe0007e00,0x38e00000,0xf98007,0x3800,0x1f800f98,0x1c70000,0x0,0x380001c0,0xfc0071,0xc000e000,0x0,0x0,0x0,0x0,0x3e00000,0x0, 2.3438 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3439 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3440 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3441 + 0x0,0x0,0x0,0x7e00000,0x0,0x7e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3442 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe0001c,0xe7006,0x7c0071c0,0xe180000,0x0,0xe0001c00,0xe70038e,0xe0001,0xc000e700,0x38e00000, 2.3443 + 0x19f0003,0x80007000,0x39c019f0,0x1c70000,0x0,0x1c000380,0x1ce0071,0xc001c000,0x0,0x0,0x0,0x0,0x7f00000,0x0,0x0,0x0,0x0,0x0, 2.3444 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3445 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3446 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000, 2.3447 + 0x0,0x3c00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3448 + 0x0,0x0,0x700038,0x1c3806,0x3c0071c0,0xc0c0000,0x0,0x70003800,0x1c38038e,0x70003,0x8001c380,0x38e00000,0x18f0001,0xc000e000, 2.3449 + 0x70e018f0,0x1c70000,0x0,0xe000700,0x3870071,0xc0038000,0x0,0x0,0x0,0x0,0xe380000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3450 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3451 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3452 + 0xe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60000000,0x0,0x0, 2.3453 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c38,0x0,0x1,0xc3800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c00000,0x0,0x0,0x0, 2.3454 + 0x0,0x0,0x0,0x0,0x0,0x0,0xc0c0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe000003,0x80018000,0x0,0xc180000, 2.3455 + 0xe,0x380,0x1800000,0xe00000,0x38001800,0x0,0x38,0xe00,0x6000000,0x0,0x1,0xc0000070,0x300000,0x3800,0x0,0x0,0x0,0x0,0x0,0x0, 2.3456 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3457 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7000000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3458 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78c00,0xc30, 2.3459 + 0x0,0x0,0xc3000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800000,0x0,0x0,0x0,0xe0,0x1c000f,0xc0000000,0x0,0x0, 2.3460 + 0x0,0xc0c0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7000007,0x3c003,0xc6000000,0xc180000,0x7,0x700, 2.3461 + 0x3c00000,0x700000,0x70003c00,0x0,0xf1801c,0x1c00,0xf000f18,0x0,0x0,0xe00000e0,0x780000,0x7000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3462 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x1c007000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3463 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe0000,0xfe000,0x0,0x3800000,0x700000,0x38, 2.3464 + 0x7,0xe000001c,0x1c00,0x1c00700,0x7fc0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf800e,0x3e0000,0x0,0x0,0x0,0x1e00000,0x0,0x1, 2.3465 + 0xf8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7cc00,0x660,0x0,0x0,0x66000000,0x0,0x0,0x0,0x0,0x7,0x1c000000,0x0,0x0,0x0,0x3fe00000, 2.3466 + 0x0,0x0,0x7000000,0x0,0x0,0x0,0x3e0,0x7c001f,0xe0000000,0x0,0x0,0x0,0xe1c0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3467 + 0x0,0x0,0x0,0x1f80,0x380000e,0x7e007,0xe60071c0,0xc180000,0x3,0x80000e00,0x7e0038e,0x380000,0xe0007e00,0x38e00f00,0x1f9800e, 2.3468 + 0x3800,0x1f801f98,0x1c70000,0x0,0x700001c0,0xfc0071,0xc000e007,0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3469 + 0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c7000,0x61c00600,0x1e00007e,0x70000,0x18003000,0x1800000,0x0,0x0,0x1c01f0,0x7e003f,0xc003f800, 2.3470 + 0x1e03ffc,0x7f01ff,0xfc03f000,0x7e000000,0x0,0x0,0xfc0,0x1e,0x7fe000,0x7e03fe00,0x3fff07ff,0xe007e038,0x383ffe0,0xff81c01, 2.3471 + 0xe1c000f8,0xf8f00e0,0xfc01ffc,0x3f00ff,0xc000fe07,0xfffc7007,0x1c007700,0x73c01ef,0x78ffff,0xfe0380,0xfe000,0x38000000,0x1800000, 2.3472 + 0x700000,0x38,0x1f,0xe000001c,0x1c00,0x1c00700,0x7fc0000,0x0,0x0,0x0,0x0,0x1c000000,0x0,0x0,0x0,0x3f800e,0x3f8000,0x0,0xfc0000, 2.3473 + 0x0,0x7f00000,0x0,0x1,0x98000000,0x7f00000,0x3ffe00,0xffff0,0x0,0x0,0x0,0x0,0x0,0xcf81f,0xee3807e0,0x0,0x0,0x7e03c01e,0x1c, 2.3474 + 0x0,0x1f800000,0xf0078038,0xfc007,0x1c000000,0xfe00000,0x0,0x0,0x3fe000f0,0xf,0xc001f800,0x6000000,0xffc000,0x0,0x1c0007e0, 2.3475 + 0x360,0x6c0010,0x70000700,0xf0001e,0x3c000,0x78000f00,0x7f800ff,0xf007e01f,0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83fc0, 2.3476 + 0x7807007,0xe000fc00,0x1f8003f0,0x7e0000,0x1f867,0x70e00e,0x1c01c380,0x38f00787,0x3fe0,0x180000c,0x66006,0x7c0071c0,0xe380000, 2.3477 + 0x1,0x80000c00,0x660038e,0x180000,0xc0006600,0x38e0078e,0x19f0006,0x3000,0x198019f0,0x1c70000,0x0,0x30000180,0xcc0071,0xc000c007, 2.3478 + 0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c7000,0x61800600,0x7f8001ff,0x70000, 2.3479 + 0x38003800,0x1800000,0x0,0x0,0x3807fc,0x1fe00ff,0xf00ffe00,0x3e03ffc,0xff81ff,0xfc07fc01,0xff800000,0x0,0x0,0x3fe0,0xfe001e, 2.3480 + 0x7ff801,0xff83ff80,0x3fff07ff,0xe01ff838,0x383ffe0,0xff81c03,0xc1c000f8,0xf8f80e0,0x3ff01fff,0xffc0ff,0xf003ff87,0xfffc7007, 2.3481 + 0x1e00f700,0x71c03c7,0x70ffff,0xfe01c0,0xfe000,0x7c000000,0xc00000,0x700000,0x38,0x3f,0xe000001c,0x1c00,0x1c00700,0x7fc0000, 2.3482 + 0x0,0x0,0x0,0x0,0x1c000000,0x0,0x0,0x0,0x3f800e,0x3f8000,0x0,0x3fe0000,0x0,0xff00000,0x0,0x3,0xc000000,0x1ffc0000,0xfffe00, 2.3483 + 0xffff0,0x0,0x0,0x0,0x0,0x0,0xc781f,0xee3803c0,0x0,0x0,0x3c01c01c,0x1c,0xc000,0x7fc00000,0x70070038,0x3fe007,0x1c000000,0x1ff80000, 2.3484 + 0x0,0x0,0x3fe003fc,0x1f,0xe003fc00,0xc000000,0x3ffc000,0x0,0x7c000ff0,0x60,0xc0000,0x30000700,0xf0001e,0x3c000,0x78000f00, 2.3485 + 0x3f000ff,0xf01ff81f,0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83ff8,0x7c0701f,0xf803ff00,0x7fe00ffc,0x1ff8000,0x7fe67, 2.3486 + 0x70e00e,0x1c01c380,0x38700707,0x7ff0,0xc00018,0xc3006,0x3c0071c0,0x7f00000,0x0,0xc0001800,0xc30038e,0xc0001,0x8000c300,0x38e003fc, 2.3487 + 0x18f0003,0x6000,0x30c018f0,0x1c70000,0x0,0x18000300,0x1860071,0xc0018007,0x38e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3488 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c7000,0xe1801fc0,0x618001ff,0x70000,0x30001800,0x21840000,0x0,0x0,0x380ffe,0x1fe00ff, 2.3489 + 0xfc0fff00,0x3e03ffc,0x1ff81ff,0xfc0ffe03,0xffc00000,0x0,0x0,0x7ff0,0x3ff803f,0x7ffc03,0xffc3ffc0,0x3fff07ff,0xe03ffc38,0x383ffe0, 2.3490 + 0xff81c07,0x81c000f8,0xf8f80e0,0x7ff81fff,0x81ffe0ff,0xf80fff87,0xfffc7007,0xe00e700,0x70e0387,0x80f0ffff,0xe001c0,0xe000, 2.3491 + 0xfe000000,0xe00000,0x700000,0x38,0x3c,0x1c,0x1c00,0x1c00700,0x1c0000,0x0,0x0,0x0,0x0,0x1c000000,0x0,0x0,0x0,0x78000e,0x3c000, 2.3492 + 0x0,0x7ff0000,0x0,0xf100000,0x0,0x7,0xe000000,0x7ffc0000,0x1fffe00,0xffff0,0x0,0x0,0x0,0x0,0x0,0x3,0xf780180,0x0,0x0,0x1801e03c, 2.3493 + 0x1c,0xc000,0xffc00000,0x780f0038,0x786000,0x7f00,0x18380000,0x0,0xfe00,0x30c,0x10,0x70020e00,0x1c000000,0x7f8c000,0x0,0x6c001c38, 2.3494 + 0x60,0xc0000,0x70000700,0x1f8003f,0x7e000,0xfc001f80,0x3f000ff,0xf03ffc1f,0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83ffc, 2.3495 + 0x7c0703f,0xfc07ff80,0xfff01ffe,0x3ffc000,0xffec7,0x70e00e,0x1c01c380,0x38780f07,0xf070,0xe00038,0x1c3800,0x0,0x3e00000,0x0, 2.3496 + 0xe0003800,0x1c380000,0xe0003,0x8001c380,0x3e0,0x3,0x8000e000,0x70e00000,0x0,0x0,0x1c000700,0x3870000,0x38007,0x0,0x0,0x0, 2.3497 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c7000,0xe3807ff0,0xc0c003c1,0x70000,0x70001c00, 2.3498 + 0x718e0000,0x0,0x0,0x700f1e,0x1ce00c0,0x3c0c0f80,0x7e03800,0x3e08000,0x381e0f03,0xc1e00000,0x0,0x0,0x7078,0x783c03f,0x701e07, 2.3499 + 0xc1c383e0,0x38000700,0x7c1c38,0x3801c00,0x381c0f,0x1c000fc,0x1f8f80e0,0x78781c07,0x81e1e0e0,0x780f0180,0xe007007,0xe00e380, 2.3500 + 0xe0f0783,0x80e0000e,0xe000e0,0xe001,0xef000000,0x0,0x700000,0x38,0x38,0x1c,0x0,0x700,0x1c0000,0x0,0x0,0x0,0x0,0x1c000000, 2.3501 + 0x0,0x0,0x0,0x70000e,0x1c000,0x0,0xf830000,0x0,0x1e000000,0x0,0x0,0x10000,0x780c0000,0x3e38000,0xe0,0x0,0x0,0x0,0x0,0x0,0x3, 2.3502 + 0xd580000,0x0,0x0,0xe038,0x1c,0xc000,0xf0400000,0x380e0038,0x702000,0x1ffc0,0xc0000,0x0,0x3ff80,0x606,0x0,0x30000600,0x0, 2.3503 + 0x7f8c000,0x0,0xc001818,0x60,0xc0003,0xe0000700,0x1f8003f,0x7e000,0xfc001f80,0x73801ee,0x7c1c1c,0x38000,0x70000e00,0xe0001, 2.3504 + 0xc0003800,0x700383e,0x7c0703c,0x3c078780,0xf0f01e1e,0x3c3c000,0xf0f87,0x70e00e,0x1c01c380,0x38380e07,0xe038,0x0,0x0,0x0, 2.3505 + 0x0,0x0,0x0,0x0,0x0,0x0,0xff0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3506 + 0x0,0x0,0x0,0x0,0x0,0x1c,0x1c7000,0xc380fff0,0xc0c00380,0x70000,0x70001c00,0x3dbc0070,0x0,0x0,0x701e0f,0xe0000,0x1e000380, 2.3507 + 0x6e03800,0x7800000,0x781c0707,0x80e00000,0x0,0x0,0x4038,0xe00c03f,0x700e07,0x4380f0,0x38000700,0x700438,0x3801c00,0x381c0e, 2.3508 + 0x1c000ec,0x1b8fc0e0,0xf03c1c03,0xc3c0f0e0,0x3c1e0000,0xe007007,0xe00e380,0xe070703,0xc1e0001e,0xe000e0,0xe001,0xc7000000, 2.3509 + 0x0,0x700000,0x38,0x38,0x1c,0x0,0x700,0x1c0000,0x0,0x0,0x0,0x0,0x1c000000,0x0,0x0,0x0,0x70000e,0x1c000,0x0,0xe010000,0x0, 2.3510 + 0x1c000000,0x10,0x20000,0x6c000,0xf0000000,0x3838000,0x1e0,0x0,0xf000f,0xf1e00,0x78f00000,0x0,0x3,0xdd80000,0x0,0x0,0xf078, 2.3511 + 0x0,0xc001,0xe0000000,0x1c1c0038,0x700000,0x3c1e0,0xc0000,0x0,0x783c0,0x606,0x0,0x30000e00,0x0,0xff8c000,0x0,0xc00300c,0x60, 2.3512 + 0xc0003,0xe0000000,0x1f8003f,0x7e000,0xfc001f80,0x73801ce,0x70041c,0x38000,0x70000e00,0xe0001,0xc0003800,0x700380f,0x7e07078, 2.3513 + 0x1e0f03c1,0xe0783c0f,0x781e000,0x1c0787,0x70e00e,0x1c01c380,0x383c1e07,0xff00e038,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x878, 2.3514 + 0x0,0x0,0x0,0x7,0x80000080,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c, 2.3515 + 0x1c7000,0xc301e630,0xc0c00380,0x70000,0xe0000e00,0xff00070,0x0,0x0,0xe01c07,0xe0000,0xe000380,0xce03800,0x7000000,0x701c0707, 2.3516 + 0x600000,0x0,0x4000010,0x38,0x1c00e07f,0x80700e0e,0x38070,0x38000700,0xe00038,0x3801c00,0x381c1c,0x1c000ec,0x1b8ec0e0,0xe01c1c01, 2.3517 + 0xc38070e0,0x1c1c0000,0xe007007,0x701c380,0xe078e01,0xc1c0003c,0xe00070,0xe003,0x83800000,0x7f,0x71f000,0x3e003e38,0x3f007ff, 2.3518 + 0xe01f1c1c,0x7801fc00,0x3fc00701,0xe01c0077,0x8f071e00,0xf801c7c,0x7c700e,0x3e01fc03,0xfff8380e,0xe007700,0x73c0787,0x387ffc, 2.3519 + 0x70000e,0x1c000,0x0,0xe000000,0x0,0x1c000000,0x10,0x20000,0xc2000,0xe0000000,0x3838000,0x3c0,0x0,0xf000f,0x78e00,0x70e00000, 2.3520 + 0x0,0x3,0xc980fe0,0x1f0,0xf8000007,0xffc07070,0x0,0x3f801,0xc0000000,0x1e3c0038,0x700000,0x70070,0x7fc0000,0x0,0xe00e0,0x606, 2.3521 + 0x1c0000,0x70007c00,0x380e,0xff8c000,0x0,0xc00300c,0x60,0xc0000,0x70000000,0x3fc007f,0x800ff001,0xfe003fc0,0x73801ce,0xe0001c, 2.3522 + 0x38000,0x70000e00,0xe0001,0xc0003800,0x7003807,0x7607070,0xe0e01c1,0xc0383807,0x700e000,0x1c0387,0x70e00e,0x1c01c380,0x381c1c07, 2.3523 + 0xffc0e0f8,0x3f8007f,0xfe001,0xfc003f80,0x7f007e3,0xe003e001,0xf8003f00,0x7e000fc,0xfe001f,0xc003f800,0x7f00003c,0x38f0007, 2.3524 + 0xc000f800,0x1f0003e0,0x7c0007,0x8003f0c3,0x80e0701c,0xe0381c0,0x70700387,0x1f01c00e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3525 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c701f,0xfff1c600,0xc0c00380,0x70000,0xe0000e00,0x3c00070,0x0,0x0,0xe03c07, 2.3526 + 0x800e0000,0xe000380,0x1ce03800,0x7000000,0x701c0707,0x7003c0,0x780000,0x3c00001e,0x38,0x18006073,0x80700e0e,0x38070,0x38000700, 2.3527 + 0xe00038,0x3801c00,0x381c38,0x1c000ee,0x3b8ee0e1,0xe01e1c01,0xc78078e0,0x1c1c0000,0xe007007,0x701c387,0xe03de00,0xe3800038, 2.3528 + 0xe00070,0xe007,0x1c00000,0x1ff,0xc077f801,0xff807fb8,0xff807ff,0xe03fdc1d,0xfc01fc00,0x3fc00703,0xc01c007f,0xdf877f00,0x3fe01dfe, 2.3529 + 0xff700e,0xff07ff03,0xfff8380e,0x700f700,0x71e0f03,0x80707ffc,0x70000e,0x1c000,0x0,0x1c000008,0x0,0x1c000000,0x10,0x20000, 2.3530 + 0x82000,0xe0000000,0x7038000,0x80000380,0x2000040,0x7000e,0x38700,0xf1e00000,0x0,0x3,0xc183ff8,0x3fd,0xfc008007,0xffc038e0, 2.3531 + 0x0,0xffc01,0xc0008008,0xe380038,0x380000,0xe3e38,0x1ffc0040,0x80000000,0x1cfc70,0x606,0x1c0000,0xe0007c00,0x380e,0xff8c000, 2.3532 + 0x0,0xc00300c,0x8100060,0xc0000,0x30000700,0x39c0073,0x800e7001,0xce0039c0,0x73801ce,0xe0001c,0x38000,0x70000e00,0xe0001, 2.3533 + 0xc0003800,0x7003807,0x77070f0,0xf1e01e3,0xc03c7807,0x8f00f080,0x83c0787,0x70e00e,0x1c01c380,0x380e3807,0xffe0e1c0,0xffe01ff, 2.3534 + 0xc03ff807,0xff00ffe0,0x1ffc0ff7,0xf01ff807,0xfc00ff80,0x1ff003fe,0xfe001f,0xc003f800,0x7f0003fc,0x3bf801f,0xf003fe00,0x7fc00ff8, 2.3535 + 0x1ff0007,0x8007fd83,0x80e0701c,0xe0381c0,0x70380707,0x7f80e01c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3536 + 0x0,0x0,0x0,0x0,0x1c,0x1c701f,0xfff1c600,0x618081c0,0x70000,0xe0000e00,0x3c00070,0x0,0x0,0xe03803,0x800e0000,0xe000380,0x18e03800, 2.3537 + 0xf000000,0xf01c0707,0x7003c0,0x780000,0xfc00001f,0x80000078,0x301e6073,0x80700e1c,0x38038,0x38000700,0x1c00038,0x3801c00, 2.3538 + 0x381c70,0x1c000e6,0x338ee0e1,0xc00e1c01,0xc70038e0,0x1c1c0000,0xe007007,0x701c387,0xe01dc00,0xf7800078,0xe00070,0xe00e,0xe00000, 2.3539 + 0x3ff,0xe07ffc03,0xffc0fff8,0x1ffc07ff,0xe07ffc1d,0xfe01fc00,0x3fc00707,0x801c007f,0xdf877f80,0x7ff01fff,0x1fff00e,0xff07ff03, 2.3540 + 0xfff8380e,0x700e380,0xe0e0e03,0x80707ffc,0x70000e,0x1c000,0x0,0x7ffc001c,0x0,0x1c000000,0x10,0x20000,0x82000,0xe0000000, 2.3541 + 0x7038001,0xc0000780,0x70000e0,0x3800e,0x38700,0xe1c00000,0x0,0x3,0xc183ff8,0x7ff,0xfc01c007,0xffc03de0,0x0,0x1ffc01,0xc001c01c, 2.3542 + 0xf780038,0x3c0000,0xcff18,0x380c00c1,0x80000000,0x18fe30,0x30c,0x1c0001,0xc0000e00,0x380e,0xff8c000,0x0,0xc00300c,0xc180060, 2.3543 + 0xc0000,0x30000700,0x39c0073,0x800e7001,0xce0039c0,0xe1c038e,0x1c0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x7003803,0x877070e0, 2.3544 + 0x71c00e3,0x801c7003,0x8e0071c0,0x1c380fc7,0x70e00e,0x1c01c380,0x380f7807,0x1e0e380,0x1fff03ff,0xe07ffc0f,0xff81fff0,0x3ffe0fff, 2.3545 + 0xf03ffc0f,0xfe01ffc0,0x3ff807ff,0xfe001f,0xc003f800,0x7f0007fe,0x3bfc03f,0xf807ff00,0xffe01ffc,0x3ff8007,0x800fff83,0x80e0701c, 2.3546 + 0xe0381c0,0x70380707,0xffc0e01c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1c701f, 2.3547 + 0xfff1c600,0x7f8381e0,0x70000,0xc0000600,0xff00070,0x0,0x0,0x1c03803,0x800e0000,0xe000f00,0x38e03fe0,0xe000000,0xe00e0e07, 2.3548 + 0x7003c0,0x780007,0xf0ffff87,0xf00000f0,0x307fe0f3,0xc0703c1c,0x38038,0x38000700,0x1c00038,0x3801c00,0x381ce0,0x1c000e6,0x338e70e1, 2.3549 + 0xc00e1c01,0xc70038e0,0x3c1e0000,0xe007007,0x783c38f,0x8e01fc00,0x770000f0,0xe00038,0xe01c,0x700000,0x381,0xe07c1e07,0xc0c1e0f8, 2.3550 + 0x3c1e0038,0xf07c1f,0xe001c00,0x1c0070f,0x1c0079,0xf3c7c380,0xf0781f07,0x83c1f00f,0xc10f0300,0x1c00380e,0x700e380,0xe0f1e03, 2.3551 + 0xc0f00078,0x70000e,0x1c000,0x0,0xfff8003e,0x0,0x3c000000,0x10,0x20000,0xc6000,0xf0000000,0x7038003,0xe0000f00,0xf8001f0, 2.3552 + 0x3801c,0x18300,0xe1800000,0x0,0x3,0xc187818,0x70f,0x9e03e000,0x7801dc0,0x1c,0x3cc401,0xc000efb8,0x7f7f0038,0x3f0000,0x1ce11c, 2.3553 + 0x300c01c3,0x80000000,0x38c638,0x3fc,0x1c0003,0x80000600,0x380e,0xff8c000,0x0,0xc00300c,0xe1c0060,0xc0010,0x70000700,0x79e00f3, 2.3554 + 0xc01e7803,0xcf0079e0,0xe1c038e,0x1c0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x7003803,0x873870e0,0x71c00e3,0x801c7003, 2.3555 + 0x8e0070e0,0x38381dc7,0x70e00e,0x1c01c380,0x38077007,0xf0e700,0x1c0f0381,0xe0703c0e,0x781c0f0,0x381e083e,0x787c0c1e,0xf03c1e0, 2.3556 + 0x783c0f07,0x800e0001,0xc0003800,0x7000fff,0x3e1c078,0x3c0f0781,0xe0f03c1e,0x783c000,0x1e0f03,0x80e0701c,0xe0381c0,0x70380f07, 2.3557 + 0xc1e0e03c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x1,0x8701c600,0x1e0f01e0,0x1, 2.3558 + 0xc0000700,0x3dbc0070,0x0,0x0,0x1c03803,0x800e0000,0x1e01fe00,0x70e03ff8,0xe3e0001,0xe007fc07,0x80f003c0,0x78001f,0xc0ffff81, 2.3559 + 0xfc0001e0,0x30e1e0e1,0xc07ff81c,0x38038,0x3ffe07ff,0xc1c0003f,0xff801c00,0x381de0,0x1c000e7,0x738e70e1,0xc00e1c03,0xc70038e0, 2.3560 + 0x780f8000,0xe007007,0x383838d,0x8e00f800,0x7f0000e0,0xe00038,0xe000,0x0,0x200,0xf0780e07,0x8041c078,0x380e0038,0xe03c1e, 2.3561 + 0xf001c00,0x1c0071e,0x1c0070,0xe1c783c0,0xe0381e03,0x8380f00f,0xe0000,0x1c00380e,0x381c380,0xe07bc01,0xc0e00078,0x70000e, 2.3562 + 0x1c000,0x0,0x1c000061,0x0,0x38000000,0x10,0x20000,0x7c000,0x7c000000,0x703fc06,0x10000e00,0x18400308,0x1801c,0x1c381,0xc3800000, 2.3563 + 0x0,0x0,0x7000,0xe0f,0xe061000,0x7801fc0,0x1c,0x38c001,0xc0007ff0,0x7fff0038,0x77c000,0x19c00c,0x301c0387,0x0,0x30c618,0xf0, 2.3564 + 0x1c0007,0x600,0x380e,0x7f8c007,0x80000000,0xc001818,0x70e03fc,0x387f871f,0xe0e00700,0x70e00e1,0xc01c3803,0x870070e0,0xe1c038f, 2.3565 + 0xe1c0001f,0xff03ffe0,0x7ffc0fff,0x800e0001,0xc0003800,0x7003803,0x873870e0,0x71c00e3,0x801c7003,0x8e007070,0x703839c7,0x70e00e, 2.3566 + 0x1c01c380,0x3807f007,0x70e700,0x10078200,0xf0401e08,0x3c10078,0x200f001c,0x3878041c,0x70380e0,0x701c0e03,0x800e0001,0xc0003800, 2.3567 + 0x7001e0f,0x3c1e070,0x1c0e0381,0xc070380e,0x701c000,0x1c0f03,0x80e0701c,0xe0381c0,0x701c0e07,0x80e07038,0x0,0x0,0x0,0x0,0x0, 2.3568 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x3,0x8600e600,0x7803f0,0x1,0xc0000700,0x718e0070,0x0,0x0,0x38038c3, 2.3569 + 0x800e0000,0x3c01f800,0x60e03ffc,0xeff8001,0xc001f003,0xc1f003c0,0x7800fe,0xffff80,0x3f8003c0,0x60c0e0e1,0xc07fe01c,0x38038, 2.3570 + 0x3ffe07ff,0xc1c07e3f,0xff801c00,0x381fe0,0x1c000e3,0x638e30e1,0xc00e1c07,0x870038ff,0xf00ff800,0xe007007,0x38381cd,0x9c007000, 2.3571 + 0x3e0001e0,0xe0001c,0xe000,0x0,0x0,0x70780f0f,0x3c078,0x70070038,0x1e03c1c,0x7001c00,0x1c0073c,0x1c0070,0xe1c701c1,0xe03c1e03, 2.3572 + 0xc780f00f,0xe0000,0x1c00380e,0x381c387,0xe03f801,0xc0e000f0,0x70000e,0x1c007,0xe0100000,0x1c0000cd,0x80000003,0xffc00000, 2.3573 + 0x3ff,0x807ff000,0xe0,0x7fc00060,0x703fc0c,0xd8001e00,0x3360066c,0x1c018,0xc181,0x83000000,0x0,0x0,0x7000,0x300e07,0xe0cd800, 2.3574 + 0xf000f80,0x1c,0x78c00f,0xff0038e0,0x3e00038,0xe1e000,0x19800c,0x383c070e,0x7fffc00,0x30fc18,0x0,0xffff80e,0x20e00,0x380e, 2.3575 + 0x7f8c007,0x80000000,0xc001c38,0x38703ff,0xf87fff0f,0xcfe00f00,0x70e00e1,0xc01c3803,0x870070e0,0x1e1e078f,0xe1c0001f,0xff03ffe0, 2.3576 + 0x7ffc0fff,0x800e0001,0xc0003800,0x700ff83,0x871870e0,0x71c00e3,0x801c7003,0x8e007038,0xe03871c7,0x70e00e,0x1c01c380,0x3803e007, 2.3577 + 0x70e700,0x38000,0x70000e00,0x1c00038,0x7001c,0x38f00038,0x3870070,0xe00e1c01,0xc00e0001,0xc0003800,0x7001c07,0x380e0f0,0x1e1e03c3, 2.3578 + 0xc078780f,0xf01e000,0x3c0f03,0x80e0701c,0xe0381c0,0x701c0e07,0x80f07038,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3579 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x3,0x8600ff00,0x1e00778,0x38000001,0xc0000700,0x21843fff,0xe0000000,0x0,0x38039e3,0x800e0000, 2.3580 + 0x7c01fe00,0xe0e0203e,0xeffc001,0xc00ffe03,0xff700000,0x7f0,0x0,0x7f00380,0x618060e1,0xc07ffc1c,0x38038,0x3ffe07ff,0xc1c07e3f, 2.3581 + 0xff801c00,0x381ff0,0x1c000e3,0x638e38e1,0xc00e1fff,0x870038ff,0xc003fe00,0xe007007,0x38381cd,0x9c00f800,0x3e0003c0,0xe0001c, 2.3582 + 0xe000,0x0,0x0,0x7070070e,0x38038,0x70070038,0x1c01c1c,0x7001c00,0x1c00778,0x1c0070,0xe1c701c1,0xc01c1c01,0xc700700e,0xfc000, 2.3583 + 0x1c00380e,0x381c3c7,0x1e01f001,0xe1e001e0,0xf0000e,0x1e01f,0xf8300000,0x1c00019c,0xc0000003,0xffc00000,0x10,0x20000,0x700, 2.3584 + 0x1ff000c0,0x703fc19,0xcc003c00,0x67300ce6,0xc038,0xc181,0x83000000,0x0,0x0,0x7e00,0x180e07,0xe19cc00,0x1e000f80,0x1c,0x70c00f, 2.3585 + 0xff007070,0x3e00038,0xe0f000,0x19800c,0x1fec0e1c,0x7fffc00,0x30f818,0x0,0xffff81f,0xf003fc00,0x380e,0x3f8c007,0x80000000, 2.3586 + 0x7f800ff0,0x1c3803f,0xe007fc00,0xff800e00,0x70e00e1,0xc01c3803,0x870070e0,0x1c0e070f,0xe1c0001f,0xff03ffe0,0x7ffc0fff,0x800e0001, 2.3587 + 0xc0003800,0x700ff83,0x871c70e0,0x71c00e3,0x801c7003,0x8e00701d,0xc038e1c7,0x70e00e,0x1c01c380,0x3803e007,0x70e3c0,0x38000, 2.3588 + 0x70000e00,0x1c00038,0x7001c,0x38e00038,0x3870070,0xe00e1c01,0xc00e0001,0xc0003800,0x7003c07,0x8380e0e0,0xe1c01c3,0x80387007, 2.3589 + 0xe00e1ff,0xfe381b83,0x80e0701c,0xe0381c0,0x701e1e07,0x707878,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3590 + 0x0,0x0,0x0,0x0,0x1c,0x3,0xe007fe0,0x7800e3c,0x38000001,0xc0000700,0x1803fff,0xe0000000,0x0,0x70039c3,0x800e0000,0xf8000f80, 2.3591 + 0xc0e0000e,0xf83c003,0xc01e0f01,0xff700000,0x7c0,0x0,0x1f00780,0x618061c0,0xe0701e1c,0x38038,0x38000700,0x1c07e38,0x3801c00, 2.3592 + 0x381e78,0x1c000e3,0xe38e18e1,0xc00e1fff,0x70038ff,0xe0007f80,0xe007007,0x1c701dd,0x9c00f800,0x1c000780,0xe0000e,0xe000,0x0, 2.3593 + 0x7f,0xf070070e,0x38038,0x7fff0038,0x1c01c1c,0x7001c00,0x1c007f8,0x1c0070,0xe1c701c1,0xc01c1c01,0xc700700e,0x7fc00,0x1c00380e, 2.3594 + 0x1c381c7,0x1c01f000,0xe1c001c0,0xfe0000e,0xfe1f,0xfff00000,0x7ff003fc,0xe0000003,0xffc00000,0x10,0x20000,0x3800,0x3fc0180, 2.3595 + 0x703803f,0xce007800,0xff381fe7,0x30,0x0,0xc0,0x0,0x0,0x3fe0,0xc0e07,0xfe3fce00,0x1c000700,0x1c,0x70c00f,0xff006030,0x1c00000, 2.3596 + 0xe07800,0x19800c,0xfcc1c38,0x7fffc00,0x30d818,0x0,0xffff81f,0xf001f800,0x380e,0xf8c007,0x80000000,0x7f8007e0,0xe1c3fe,0x7fc00f, 2.3597 + 0xf8001e00,0xe0701c0,0xe0381c07,0x380e070,0x1c0e070e,0x1c0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x700ff83,0x870c70e0, 2.3598 + 0x71c00e3,0x801c7003,0x8e00700f,0x8038c1c7,0x70e00e,0x1c01c380,0x3801c007,0xf0e3e0,0x3ff807f,0xf00ffe01,0xffc03ff8,0x7ff03ff, 2.3599 + 0xf8e0003f,0xff87fff0,0xfffe1fff,0xc00e0001,0xc0003800,0x7003803,0x8380e0e0,0xe1c01c3,0x80387007,0xe00e1ff,0xfe383383,0x80e0701c, 2.3600 + 0xe0381c0,0x700e1c07,0x703870,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x3,0xc000ff0, 2.3601 + 0x3c1e1c1c,0x38000001,0xc0000700,0x1803fff,0xe0000007,0xf8000000,0x7003803,0x800e0001,0xf0000381,0xc0e00007,0xf01e003,0x801c0700, 2.3602 + 0x7c700000,0x7c0,0x0,0x1f00700,0x618061c0,0xe0700e1c,0x38038,0x38000700,0x1c00e38,0x3801c00,0x381e38,0x1c000e1,0xc38e1ce1, 2.3603 + 0xc00e1ffc,0x70038e0,0xf0000780,0xe007007,0x1c701dd,0xdc01fc00,0x1c000780,0xe0000e,0xe000,0x0,0x1ff,0xf070070e,0x38038,0x7fff0038, 2.3604 + 0x1c01c1c,0x7001c00,0x1c007f8,0x1c0070,0xe1c701c1,0xc01c1c01,0xc700700e,0x3ff00,0x1c00380e,0x1c381cd,0x9c00e000,0xe1c003c0, 2.3605 + 0xf80000e,0x3e18,0x3ff00000,0xffe007fd,0xf0000000,0x38000000,0x10,0x20000,0x1c000,0x3c0300,0x703807f,0xdf007801,0xff7c3fef, 2.3606 + 0x80000000,0x0,0x3e0,0x7ffe7ff,0xff000000,0x1ff8,0x60e07,0xfe7fdf00,0x3c000700,0x1c,0x70c001,0xc0006030,0x7fff0000,0xf03800, 2.3607 + 0x19800c,0x1c38,0x1c07,0xf830cc18,0x0,0x1c0000,0x0,0x380e,0x18c007,0x80000000,0x0,0xe1cfe0,0x1fc003f,0x80003c00,0xe0701c0, 2.3608 + 0xe0381c07,0x380e070,0x1c0e070e,0x1c0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x7003803,0x870e70e0,0x71c00e3,0x801c7003, 2.3609 + 0x8e007007,0x3981c7,0x70e00e,0x1c01c380,0x3801c007,0x1e0e0f8,0xfff81ff,0xf03ffe07,0xffc0fff8,0x1fff07ff,0xf8e0003f,0xff87fff0, 2.3610 + 0xfffe1fff,0xc00e0001,0xc0003800,0x7003803,0x8380e0e0,0xe1c01c3,0x80387007,0xe00e1ff,0xfe386383,0x80e0701c,0xe0381c0,0x700e1c07, 2.3611 + 0x703870,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0x7f,0xffc00678,0x707f9c1e,0x38000001, 2.3612 + 0xc0000700,0x70,0x7,0xf8000000,0xe003803,0x800e0003,0xe00001c3,0x80e00007,0xe00e007,0x80380380,0x700000,0x7f0,0x0,0x7f00700, 2.3613 + 0x618061ff,0xe070071c,0x38038,0x38000700,0x1c00e38,0x3801c00,0x381c3c,0x1c000e1,0xc38e1ce1,0xc00e1c00,0x70038e0,0x700003c0, 2.3614 + 0xe007007,0x1c701d8,0xdc03dc00,0x1c000f00,0xe00007,0xe000,0x0,0x3ff,0xf070070e,0x38038,0x7fff0038,0x1c01c1c,0x7001c00,0x1c007fc, 2.3615 + 0x1c0070,0xe1c701c1,0xc01c1c01,0xc700700e,0x3f00,0x1c00380e,0x1c381cd,0x9c01f000,0x73800780,0xfe0000e,0xfe10,0x7c00000,0x1c000ffb, 2.3616 + 0xf8000000,0x38000000,0x10,0x20000,0x20000,0x1e0700,0x70380ff,0xbf80f003,0xfefe7fdf,0xc0000000,0x0,0x3f0,0x7ffe7ff,0xff000000, 2.3617 + 0x1f8,0x30e07,0xfeffbf80,0x78000700,0x1c,0x70c001,0xc0006030,0x7fff0000,0x783800,0x1ce11c,0xe1c,0x1c07,0xf838ce38,0x0,0x1c0000, 2.3618 + 0x0,0x380e,0x18c000,0x0,0x0,0x1c38c00,0x1800030,0x7800,0xfff01ff,0xe03ffc07,0xff80fff0,0x3fff0ffe,0x1c0001c,0x38000,0x70000e00, 2.3619 + 0xe0001,0xc0003800,0x7003803,0x870e70e0,0x71c00e3,0x801c7003,0x8e00700f,0x803b81c7,0x70e00e,0x1c01c380,0x3801c007,0xffe0e03c, 2.3620 + 0x1fff83ff,0xf07ffe0f,0xffc1fff8,0x3fff0fff,0xf8e0003f,0xff87fff0,0xfffe1fff,0xc00e0001,0xc0003800,0x7003803,0x8380e0e0,0xe1c01c3, 2.3621 + 0x80387007,0xe00e000,0x38c383,0x80e0701c,0xe0381c0,0x70073807,0x701ce0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3622 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xffc0063c,0x40619c0f,0x30000001,0xc0000700,0x70,0x7,0xf8000000,0xe003803,0x800e0007,0xc00001c3, 2.3623 + 0xfffc0007,0xe00e007,0x380380,0xf00000,0xfe,0xffff80,0x3f800700,0x618063ff,0xf070071c,0x38038,0x38000700,0x1c00e38,0x3801c00, 2.3624 + 0x381c1e,0x1c000e0,0x38e0ee1,0xc00e1c00,0x70038e0,0x380001c0,0xe007007,0x1ef01d8,0xdc038e00,0x1c001e00,0xe00007,0xe000,0x0, 2.3625 + 0x7c0,0x7070070e,0x38038,0x70000038,0x1c01c1c,0x7001c00,0x1c0079e,0x1c0070,0xe1c701c1,0xc01c1c01,0xc700700e,0x780,0x1c00380e, 2.3626 + 0xe701cd,0x9c01f000,0x73800f00,0xe0000e,0xe000,0x0,0x1c0007f7,0xf0000000,0x70000000,0x10,0x20000,0x0,0xe0e00,0x703807f,0x7f01e001, 2.3627 + 0xfdfc3fbf,0x80000000,0x0,0x7f0,0x0,0x0,0x3c,0x18e07,0x7f7f00,0xf0000700,0x1c,0x70c001,0xc0007070,0x1c00000,0x3e7000,0xcff18, 2.3628 + 0x3ffc070e,0x1c07,0xf818c630,0x0,0x1c0000,0x0,0x380e,0x18c000,0x0,0x3ffc,0x3870000,0xe000fc00,0x380f000,0x1fff83ff,0xf07ffe0f, 2.3629 + 0xffc1fff8,0x3fff0ffe,0x1c0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x7003803,0x870770e0,0x71c00e3,0x801c7003,0x8e00701d, 2.3630 + 0xc03f01c7,0x70e00e,0x1c01c380,0x3801c007,0xffc0e01c,0x3e0387c0,0x70f80e1f,0x1c3e038,0x7c071e1c,0xe00038,0x70000,0xe0001c00, 2.3631 + 0xe0001,0xc0003800,0x7003803,0x8380e0e0,0xe1c01c3,0x80387007,0xe00e000,0x398383,0x80e0701c,0xe0381c0,0x70073807,0x701ce0, 2.3632 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xffc0061c,0xc0dc07,0xf0000001,0xc0000700, 2.3633 + 0x70,0x0,0x0,0x1c003c07,0x800e000f,0x1c3,0xfffc0007,0xe00e007,0x380380,0xe00000,0x1f,0xc0ffff81,0xfc000700,0x618063ff,0xf070070e, 2.3634 + 0x38070,0x38000700,0xe00e38,0x3801c00,0x381c0e,0x1c000e0,0x38e0ee1,0xe01e1c00,0x78078e0,0x380001c0,0xe007007,0xee01f8,0xfc078f00, 2.3635 + 0x1c001c00,0xe00003,0x8000e000,0x0,0x700,0x7070070e,0x38038,0x70000038,0x1c01c1c,0x7001c00,0x1c0070e,0x1c0070,0xe1c701c1, 2.3636 + 0xc01c1c01,0xc700700e,0x380,0x1c00380e,0xe700ed,0xb803f800,0x77800f00,0x70000e,0x1c000,0x0,0xe0003f7,0xe0000000,0x70000000, 2.3637 + 0x10,0x20000,0x1c0e0,0xe1c00,0x703803f,0x7e01c000,0xfdf81fbf,0x0,0x0,0x3f0,0x0,0x0,0x1c,0x1ce07,0x3f7e00,0xf0000700,0x1c, 2.3638 + 0x70c001,0xc00038e0,0x1c00038,0xf7000,0xe3e38,0x3ffc0387,0x1c00,0x1cc770,0x0,0x1c0000,0x0,0x380e,0x18c000,0x0,0x3ffc,0x70e0001, 2.3639 + 0xe001fe00,0x780e000,0x1fff83ff,0xf07ffe0f,0xffc1fff8,0x3fff0ffe,0xe0001c,0x38000,0x70000e00,0xe0001,0xc0003800,0x7003807, 2.3640 + 0x70770f0,0xf1e01e3,0xc03c7807,0x8f00f038,0xe03e03c7,0x70e00e,0x1c01c380,0x3801c007,0xff00e00e,0x38038700,0x70e00e1c,0x1c38038, 2.3641 + 0x70071c1c,0xe00038,0x70000,0xe0001c00,0xe0001,0xc0003800,0x7003803,0x8380e0e0,0xe1c01c3,0x80387007,0xe00e000,0x3b0383,0x80e0701c, 2.3642 + 0xe0381c0,0x70077807,0x701de0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x1c00061c, 2.3643 + 0xc0de03,0xe0000001,0xc0000700,0x70,0x0,0x0,0x1c001c07,0xe001e,0x1c3,0xfffc0007,0x600e00e,0x380380,0xe00000,0x7,0xf0ffff87, 2.3644 + 0xf0000000,0x60c0e380,0x7070070e,0x38070,0x38000700,0xe00e38,0x3801c00,0x381c0f,0x1c000e0,0x38e06e0,0xe01c1c00,0x38070e0, 2.3645 + 0x1c0001c0,0xe007007,0xee00f8,0xf80f0700,0x1c003c00,0xe00003,0x8000e000,0x0,0x700,0x70780f0f,0x3c078,0x70000038,0x1e03c1c, 2.3646 + 0x7001c00,0x1c0070f,0x1c0070,0xe1c701c1,0xe03c1e03,0xc780f00e,0x380,0x1c00380e,0xe700f8,0xf807bc00,0x3f001e00,0x70000e,0x1c000, 2.3647 + 0x0,0xe0001ff,0xc0000000,0x70000000,0x10,0x20000,0x33110,0xe0e00,0x383801f,0xfc03c000,0x7ff00ffe,0x0,0x0,0x3e0,0x0,0x0,0x1c, 2.3648 + 0x38e07,0x1ffc01,0xe0000700,0x1c,0x78c001,0xc0007ff0,0x1c00038,0x7c000,0x70070,0x1c3,0x80001c00,0xe00e0,0x0,0x1c0000,0x0, 2.3649 + 0x380e,0x18c000,0x0,0x0,0xe1c0001,0xe0010700,0x780e000,0x1c038380,0x70700e0e,0x1c1c038,0x78070e0e,0xe0001c,0x38000,0x70000e00, 2.3650 + 0xe0001,0xc0003800,0x7003807,0x7037070,0xe0e01c1,0xc0383807,0x700e070,0x701c0387,0x70e00e,0x1c01c380,0x3801c007,0xe00e,0x38038700, 2.3651 + 0x70e00e1c,0x1c38038,0x70071c1c,0xf00038,0x70000,0xe0001c00,0xe0001,0xc0003800,0x7003c07,0x8380e0f0,0x1e1e03c3,0xc078780f, 2.3652 + 0xf01e007,0x803e0783,0x80e0701c,0xe0381c0,0x7003f007,0x80f00fc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3653 + 0x0,0x0,0x0,0x0,0x0,0x6,0x1800061c,0xc0de01,0xc0000000,0xc0000e00,0x70,0xf0000,0x3c00,0x38001c0f,0xe003c,0x3c0,0xe0000e,0x701e00e, 2.3654 + 0x3c0780,0x1e003c0,0x780000,0xfc00001f,0x80000000,0x60e1e780,0x78700f07,0x4380f0,0x38000700,0xf00e38,0x3801c00,0xc0781c07, 2.3655 + 0x81c000e0,0x38e07e0,0xe03c1c00,0x380f0e0,0x1e0003c0,0xe00780f,0xee00f0,0x780e0780,0x1c007800,0xe00001,0xc000e000,0x0,0x700, 2.3656 + 0xf0780e07,0x8041c078,0x38020038,0xe03c1c,0x7001c00,0x1c00707,0x801c0070,0xe1c701c0,0xe0381e03,0x8380f00e,0x80380,0x1c003c1e, 2.3657 + 0x7e00f8,0xf80f1e00,0x3f003c00,0x70000e,0x1c000,0x0,0xf0100f7,0x80078000,0x700078f0,0x10,0x7ff000,0x61208,0x1e0700,0x383800f, 2.3658 + 0x78078000,0x3de007bc,0x0,0x0,0x0,0x0,0x0,0x401c,0x70e0f,0xf7803,0xc0000700,0x1c,0x38c001,0xc000efb8,0x1c00038,0x1e000,0x3c1e0, 2.3659 + 0xc1,0x80000000,0x783c0,0x0,0x0,0x0,0x3c1e,0x18c000,0x0,0x0,0xc180003,0x60000300,0xd80e010,0x3c03c780,0x78f00f1e,0x1e3c03c, 2.3660 + 0x70039c0e,0x70041c,0x38000,0x70000e00,0xe0001,0xc0003800,0x700380f,0x703f070,0x1e0e03c1,0xc078380f,0x701e0e0,0x381c0787, 2.3661 + 0x80f0f01e,0x1e03c3c0,0x7801c007,0xe00e,0x38078700,0xf0e01e1c,0x3c38078,0x700f1c1c,0x78041c,0x1038020,0x70040e00,0x800e0001, 2.3662 + 0xc0003800,0x7001c07,0x380e070,0x1c0e0381,0xc070380e,0x701c007,0x801e0703,0xc1e0783c,0xf0781e0,0xf003f007,0x80e00fc0,0x0, 2.3663 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0xe,0x1801867c,0xc0cf83,0xe0000000,0xe0000e00, 2.3664 + 0x70,0xf0000,0x3c00,0x38000f1e,0xe0070,0x180780,0xe0603e,0x783c01e,0x1e0f01,0x7c003c0,0x780000,0x3c00001e,0x700,0x307fe700, 2.3665 + 0x38701e07,0xc1c383e0,0x38000700,0x7c1e38,0x3801c00,0xe0f01c03,0x81c000e0,0x38e03e0,0x78781c00,0x1e1e0e0,0xe180780,0xe003c1e, 2.3666 + 0x7c00f0,0x781e03c0,0x1c007000,0xe00001,0xc000e000,0x0,0x783,0xf07c1e07,0xc0c1e0f8,0x3e0e0038,0xf07c1c,0x7001c00,0x1c00703, 2.3667 + 0xc01e0070,0xe1c701c0,0xf0781f07,0x83c1f00e,0xe0f80,0x1e003c3e,0x7e00f8,0xf80e0e00,0x3f003800,0x70000e,0x1c000,0x0,0x7830077, 2.3668 + 0xf0000,0x700078f0,0x10,0x20000,0x41208,0xc03c0380,0x3c38007,0x70070000,0x1dc003b8,0x0,0x0,0x0,0x0,0x0,0x707c,0x6070f,0x86077003, 2.3669 + 0x80000700,0x1c,0x3ec401,0xc001c01c,0x1c00038,0xf000,0x1ffc0,0x40,0x80000000,0x3ff80,0x0,0x0,0x0,0x3e3e,0x18c000,0x0,0x0, 2.3670 + 0x8100006,0x60000300,0x1980f070,0x3801c700,0x38e0071c,0xe3801c,0x70039c0e,0x7c1c1c,0x38000,0x70000e00,0xe0001,0xc0003800, 2.3671 + 0x700383e,0x701f03c,0x3c078780,0xf0f01e1e,0x3c3c1c0,0x1c3f0f03,0xc1e0783c,0xf0781e0,0xf001c007,0xe81e,0x3c1f8783,0xf0f07e1e, 2.3672 + 0xfc3c1f8,0x783f1e3e,0x187c0c1f,0x703e0e0,0x7c1c0f83,0x800e0001,0xc0003800,0x7001e0f,0x380e078,0x3c0f0781,0xe0f03c1e,0x783c007, 2.3673 + 0x801e0f03,0xc3e0787c,0xf0f81e1,0xf003f007,0xc1e00fc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3674 + 0x0,0x0,0x1c,0xe,0x3801fff8,0x6187ff,0xe0000000,0xe0000e00,0x70,0xf0000,0x3c00,0x38000ffe,0x1fff0ff,0xfe1fff80,0xe07ffc,0x3ffc01c, 2.3675 + 0x1fff01,0xff8003c0,0x780000,0x4000010,0x700,0x301e6700,0x387ffe03,0xffc3ffc0,0x3fff0700,0x3ffe38,0x383ffe0,0xfff01c03,0xc1fff8e0, 2.3676 + 0x38e03e0,0x7ff81c00,0x1ffe0e0,0xf1fff80,0xe003ffe,0x7c00f0,0x781c01c0,0x1c00ffff,0xe00001,0xc000e000,0x0,0x3ff,0x707ffc03, 2.3677 + 0xffc0fff8,0x1ffe0038,0x7ffc1c,0x707fff0,0x1c00701,0xc00ff070,0xe1c701c0,0x7ff01fff,0x1fff00e,0xfff00,0xff81fee,0x7e00f0, 2.3678 + 0x781e0f00,0x1e007ffc,0x70000e,0x1c000,0x0,0x3ff003e,0xf0000,0xe00070e0,0x60830010,0x20000,0x41208,0xfffc01c0,0x1fffe03,0xe00ffff0, 2.3679 + 0xf8001f0,0x0,0x0,0x0,0x0,0x0,0x7ff8,0xc07fd,0xfe03e007,0xffc00700,0x1c,0x1ffc1f,0xffc08008,0x1c00038,0x7000,0x7f00,0x0,0x0, 2.3680 + 0xfe00,0x0,0xffff800,0x0,0x3ff7,0x8018c000,0x0,0x0,0x6,0x60000700,0x19807ff0,0x3801c700,0x38e0071c,0xe3801c,0x70039c0f,0xf03ffc1f, 2.3681 + 0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83ffc,0x701f03f,0xfc07ff80,0xfff01ffe,0x3ffc080,0x83fff03,0xffe07ffc,0xfff81ff, 2.3682 + 0xf001c007,0xeffc,0x1ffb83ff,0x707fee0f,0xfdc1ffb8,0x3ff70ff7,0xf83ffc0f,0xff01ffe0,0x3ffc07ff,0x83fff87f,0xff0fffe1,0xfffc0ffe, 2.3683 + 0x380e03f,0xf807ff00,0xffe01ffc,0x3ff8007,0x803ffe01,0xfee03fdc,0x7fb80ff,0x7001e007,0xffc00780,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3684 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0xc,0x3801fff0,0x7f83fe,0x70000000,0xe0000e00,0x0,0xf0000,0x3c00,0x700007fc, 2.3685 + 0x1fff0ff,0xfe1ffe00,0xe07ff8,0x1ff801c,0xffe01,0xff0003c0,0x780000,0x0,0x700,0x38000f00,0x3c7ffc01,0xff83ff80,0x3fff0700, 2.3686 + 0x1ffc38,0x383ffe0,0x7fe01c01,0xe1fff8e0,0x38e03e0,0x3ff01c00,0xffc0e0,0x71fff00,0xe001ffc,0x7c00f0,0x783c01e0,0x1c00ffff, 2.3687 + 0xe00000,0xe000e000,0x0,0x1ff,0x7077f801,0xff807fb8,0xffc0038,0x3fdc1c,0x707fff0,0x1c00701,0xe007f070,0xe1c701c0,0x3fe01dfe, 2.3688 + 0xff700e,0x7fe00,0xff80fee,0x3c0070,0x703c0780,0x1e007ffc,0x70000e,0x1c000,0x0,0x1fe001c,0xe0000,0xe000e1c0,0x71c78010,0x20000, 2.3689 + 0x21318,0xfff800c0,0xfffe01,0xc00ffff0,0x70000e0,0x0,0x0,0x0,0x0,0x0,0x3ff0,0x1803fd,0xfe01c007,0xffc00700,0x1c,0xffc1f,0xffc00000, 2.3690 + 0x1c00038,0x7000,0x0,0x0,0x0,0x0,0x0,0xffff800,0x0,0x3ff7,0x8018c000,0x0,0x0,0xc,0x60000e00,0x31803fe0,0x7801ef00,0x3de007bc, 2.3691 + 0xf7801e,0xf003fc0f,0xf01ff81f,0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83ff8,0x701f01f,0xf803ff00,0x7fe00ffc,0x1ff8000, 2.3692 + 0x67fe01,0xffc03ff8,0x7ff00ff,0xe001c007,0xeff8,0xffb81ff,0x703fee07,0xfdc0ffb8,0x1ff70ff7,0xf81ff807,0xfe00ffc0,0x1ff803ff, 2.3693 + 0x3fff87f,0xff0fffe1,0xfffc07fc,0x380e01f,0xf003fe00,0x7fc00ff8,0x1ff0000,0x37fc00,0xfee01fdc,0x3fb807f,0x7001e007,0x7f800780, 2.3694 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1c,0xc,0x30007fc0,0x1e00f8,0x78000000,0x70001c00, 2.3695 + 0x0,0xe0000,0x3c00,0x700001f0,0x1fff0ff,0xfe07f800,0xe01fe0,0x7e0038,0x3f800,0xfc0003c0,0x700000,0x0,0x700,0x18000e00,0x1c7ff000, 2.3696 + 0x7e03fe00,0x3fff0700,0x7f038,0x383ffe0,0x1f801c00,0xf1fff8e0,0x38e01e0,0xfc01c00,0x3f80e0,0x787fc00,0xe0007f0,0x7c00f0,0x387800f0, 2.3697 + 0x1c00ffff,0xe00000,0xe000e000,0x0,0xfc,0x7071f000,0x3f003e38,0x3f00038,0x1f1c1c,0x707fff0,0x1c00700,0xf003f070,0xe1c701c0, 2.3698 + 0x1f801c7c,0x7c700e,0x1f800,0x3f8078e,0x3c0070,0x707803c0,0x1c007ffc,0x70000e,0x1c000,0x0,0x7c0008,0x1e0000,0xe000e1c0,0x71c30010, 2.3699 + 0x20000,0x1e1f0,0x3fe00020,0x3ffe00,0x800ffff0,0x2000040,0x0,0x0,0x0,0x0,0x0,0xfc0,0x3001f0,0x78008007,0xffc00700,0x1c,0x3f81f, 2.3700 + 0xffc00000,0x1c00038,0x407000,0x0,0x0,0x0,0x0,0x0,0xffff800,0x0,0x39c7,0x18c000,0x0,0x0,0x18,0x60001c00,0x61801f80,0x7000ee00, 2.3701 + 0x1dc003b8,0x77000e,0xe001f80f,0xf007e01f,0xff83fff0,0x7ffe0fff,0xc1fff03f,0xfe07ffc0,0xfff83fc0,0x700f007,0xe000fc00,0x1f8003f0, 2.3702 + 0x7e0000,0xe1f800,0x7f000fe0,0x1fc003f,0x8001c007,0xe7f0,0x7e380fc,0x701f8e03,0xf1c07e38,0xfc703c1,0xe003f001,0xf8003f00, 2.3703 + 0x7e000fc,0x3fff87f,0xff0fffe1,0xfffc03f8,0x380e00f,0xc001f800,0x3f0007e0,0xfc0000,0x61f800,0x78e00f1c,0x1e3803c,0x7001c007, 2.3704 + 0x1f000700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x70001c00,0x0, 2.3705 + 0x1c0000,0x0,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0xe00000,0x0,0x0,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0, 2.3706 + 0x0,0x0,0x0,0x0,0xe00000,0x7000e000,0x0,0x0,0x0,0x0,0x0,0x1c00,0x0,0x1c00000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x0,0x1c000000, 2.3707 + 0x70000e,0x1c000,0x0,0x0,0x1c0000,0xe000c180,0x10,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000, 2.3708 + 0x0,0x38,0x70e000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x18c000,0x2000,0x0,0x1f,0xf8003800,0x7fe00000,0x0,0x0,0x0,0x0,0x4000, 2.3709 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000, 2.3710 + 0x0,0x0,0x1c007,0x700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x30001800, 2.3711 + 0x0,0x1c0000,0x0,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0xe00000,0x0,0x0,0xe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e000, 2.3712 + 0x0,0x0,0x0,0x0,0x0,0xe00000,0x7000e000,0x0,0x0,0x0,0x0,0x0,0x1c00,0x0,0x1c00000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x0,0x1c000000, 2.3713 + 0x70000e,0x1c000,0x0,0x0,0x1c0001,0xe001c380,0x10,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000, 2.3714 + 0x0,0x38,0x7fe000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x18c000,0x3000,0x0,0x1f,0xf8007000,0x7fe00000,0x0,0x0,0x0,0x0,0x6000, 2.3715 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3716 + 0x0,0x1c007,0x700,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x38003800, 2.3717 + 0x0,0x380000,0x1,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x1c00000,0x0,0x0,0x3c18000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf000, 2.3718 + 0x0,0x0,0x0,0x0,0x0,0xfe0000,0x380fe000,0x0,0x0,0x0,0x0,0x0,0x3800,0x0,0x1c00000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x0,0x38000000, 2.3719 + 0x78000e,0x3c000,0x0,0x0,0x180001,0xc0018300,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000,0x0, 2.3720 + 0x38,0x1f8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x18c000,0x1800,0x0,0x0,0x6000e000,0x1800000,0x0,0x0,0x0,0x0,0x3000,0x0, 2.3721 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3722 + 0x38007,0xe00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x18003000, 2.3723 + 0x0,0x300000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1800000,0x0,0x0,0x1ff8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0, 2.3724 + 0x0,0x0,0x0,0xfe0000,0xfe000,0x0,0x0,0x0,0x0,0x0,0x607800,0x0,0x3c00000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x0,0x78000000, 2.3725 + 0x3f800e,0x3f8000,0x0,0x0,0x300043,0xc0018200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000, 2.3726 + 0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x0,0x11800,0x0,0x0,0x6001ff00,0x1800000,0x0,0x0,0x0,0x0,0x23000,0x0,0x0, 2.3727 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x23000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78007, 2.3728 + 0x1e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x600,0x0,0x0,0x1c007000,0x0,0x0, 2.3729 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe0000, 2.3730 + 0xfe000,0x0,0x0,0x0,0x0,0x0,0x7ff000,0x0,0x7f800000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x3,0xf8000000,0x3f800e,0x3f8000,0x0, 2.3731 + 0x0,0x10007f,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000,0x0,0x38,0x0,0x0,0x0,0x0, 2.3732 + 0x0,0x0,0x0,0x0,0x3800,0x0,0x1f800,0x0,0x0,0x6001ff00,0x1800000,0x0,0x0,0x0,0x0,0x3f000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3733 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f8007,0xfe00,0x0,0x0,0x0,0x0, 2.3734 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3735 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fff8,0x0,0x0,0x0,0x0,0x7fe000,0x0, 2.3736 + 0x7f000000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x3,0xf0000000,0xf800e,0x3e0000,0x0,0x0,0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3737 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3800,0x0,0x1f000,0x0,0x0,0x0,0x0,0x0, 2.3738 + 0x0,0x0,0x0,0x3e000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3739 + 0x0,0x0,0x0,0x0,0x0,0x0,0x3f0007,0xfc00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3740 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3741 + 0x0,0x0,0x0,0x0,0x7fff8,0x0,0x0,0x0,0x0,0x1fc000,0x0,0x7e000000,0x0,0x0,0x1c00,0x7000,0x0,0x0,0x0,0x3,0xc0000000,0xe,0x0, 2.3742 + 0x0,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3743 + 0x0,0x0,0x3800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3744 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c0007,0xf000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3745 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3746 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fff8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3747 + 0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3748 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3749 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.3750 + 2.3751 + // Definition of a 29x57 font. 2.3752 + const unsigned int font29x57[29*57*256/32] = { 2.3753 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3754 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3755 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3756 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3757 + 0x0,0x781e00,0x0,0x0,0x7,0x81e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3758 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c0000,0xf8000,0x7e00000,0x0,0x7, 2.3759 + 0xc0000000,0x0,0x7c00,0xf80,0x7e000,0x0,0x7c00000,0xf80000,0x7e000000,0x0,0x0,0x1f00,0x3e0,0x1f800,0x0,0x0,0x0,0x3,0xe0000000, 2.3760 + 0x7c00003f,0x0,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3761 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3762 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3763 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3764 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3765 + 0x0,0x0,0x0,0x0,0x0,0x0,0x3c3c00,0x0,0x0,0x3,0xc3c00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e1f00, 2.3766 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e0000, 2.3767 + 0x1f0000,0x7e00000,0xf838001f,0xf80001f,0xf0000000,0x0,0x3e00,0x1f00,0x7e000,0x3e1f000,0x3e00000,0x1f00000,0x7e00003e,0x1f000000, 2.3768 + 0x3e0,0xe0000f80,0x7c0,0x1f800,0x3e0e00,0x7c3e000,0x0,0x1,0xf0000000,0xf800003f,0x1f0f,0x800001f0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3769 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3770 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3771 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3772 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3773 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e7800,0x0,0x0, 2.3774 + 0x1,0xe7800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3775 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e0000,0x1e0000,0xff00001,0xfe38001f,0xf80003f, 2.3776 + 0xf8000000,0x0,0x1e00,0x1e00,0xff000,0x3e1f000,0x1e00000,0x1e00000,0xff00003e,0x1f000000,0x7f8,0xe0000780,0x780,0x3fc00,0x7f8e00, 2.3777 + 0x7c3e000,0x0,0x0,0xf0000000,0xf000007f,0x80001f0f,0x800001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3778 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3779 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3780 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3781 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3782 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xef000,0x0,0x0,0x0,0xef000000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3783 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3784 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0000,0x3c0000,0x1e780003,0xfff8001f,0xf80003c,0x78000000,0x0,0xf00,0x3c00,0x1e7800, 2.3785 + 0x3e1f000,0xf00000,0x3c00001,0xe780003e,0x1f000000,0xfff,0xe00003c0,0xf00,0x79e00,0xfffe00,0x7c3e000,0x0,0x0,0x78000001,0xe00000f3, 2.3786 + 0xc0001f0f,0x800003c0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3787 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3788 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3789 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3790 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3791 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e000,0x0,0x0,0x0,0x7e000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3792 + 0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3793 + 0x0,0x78000,0x780000,0x3c3c0003,0x8ff0001f,0xf800078,0x3c000000,0x0,0x780,0x7800,0x3c3c00,0x3e1f000,0x780000,0x7800003,0xc3c0003e, 2.3794 + 0x1f000000,0xe3f,0xc00001e0,0x1e00,0xf0f00,0xe3fc00,0x7c3e000,0x0,0x0,0x3c000003,0xc00001e1,0xe0001f0f,0x80000780,0x0,0x0, 2.3795 + 0x0,0x0,0x0,0x0,0x1f,0xf0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3796 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3797 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3798 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3799 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3800 + 0x0,0x7e000,0x0,0x0,0x0,0x7e000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0, 2.3801 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc00,0x7e000,0xfe000,0x0,0x3c000,0xf00000,0x781e0003, 2.3802 + 0x83e0001f,0xf800070,0x1c000000,0x0,0x3c0,0xf000,0x781e00,0x3e1f000,0x3c0000,0xf000007,0x81e0003e,0x1f000000,0xe0f,0x800000f0, 2.3803 + 0x3c00,0x1e0780,0xe0f800,0x7c3e000,0x0,0x0,0x1e000007,0x800003c0,0xf0001f0f,0x80000f00,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf8000000, 2.3804 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3805 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3806 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3807 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3808 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3809 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3810 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3fc00,0x1fe000,0x3ff800,0x0,0x0,0x0,0x0,0x0,0x70,0x1c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3811 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x78000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3812 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3813 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3814 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3815 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3816 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3817 + 0x0,0x0,0x78,0xf000000,0x0,0x0,0x780f0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c0, 2.3818 + 0x0,0x0,0x0,0x0,0x0,0x0,0x3fc00,0x1fe000,0x3ffc00,0x0,0x0,0x0,0x0,0x0,0x70,0x1c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3819 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f00000,0x3e000,0x3e00000,0x0,0x78,0x3c000000,0x0,0x1f000,0x3e0, 2.3820 + 0x3e000,0x0,0x1f000000,0x3e0000,0x3e000000,0x0,0x0,0x7c00,0xf8,0xf800,0x0,0x0,0x0,0xf,0x80000000,0x1f00001f,0x0,0x3e,0x0, 2.3821 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3822 + 0x0,0x0,0x0,0x30000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3823 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf80000, 2.3824 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3825 + 0x0,0x0,0x0,0x0,0xf80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x781c0000,0x38,0xe000000,0x0,0x0,0x380e0,0x0, 2.3826 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf80,0x0,0x0,0x0,0x0,0x0,0x0,0x39c00,0x1ce000,0x303e00, 2.3827 + 0x0,0x0,0x0,0x0,0x0,0x78,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x0,0x0, 2.3828 + 0x0,0x0,0xf80000,0x7c000,0x3e00000,0xf0380000,0x70,0x1c000000,0x0,0xf800,0x7c0,0x3e000,0x0,0xf800000,0x7c0000,0x3e000000, 2.3829 + 0x0,0x3c0,0xe0003e00,0x1f0,0xf800,0x3c0e00,0x0,0x0,0x7,0xc0000000,0x3e00001f,0x0,0x7c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3830 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0xff,0x0, 2.3831 + 0xf8,0xf8000,0x1c000,0x0,0x0,0x0,0x0,0x1f,0xc0000000,0x1ff8,0xff00,0x0,0x0,0x3fe000,0x0,0x1fc00001,0xfe000000,0x0,0x0,0x0, 2.3832 + 0x0,0x7f800,0x0,0x0,0x0,0xff00000,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8000000,0xfe,0x0,0x7f80,0x0,0x0,0x0,0x0,0x0, 2.3833 + 0x0,0x3f,0xf0000000,0x7fe0,0x0,0x0,0x780000,0x1,0xe0000000,0x0,0x780000,0x3,0xfe000000,0x78000,0x3c00,0xf000,0x7800003,0xffe00000, 2.3834 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc0000f0,0x3f000,0x0,0x0,0x3fc00,0x0,0x0,0x1fc000,0x0,0x0,0x0,0x1fc0, 2.3835 + 0x0,0xff000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe1c0000,0x1c,0x1c000000,0x0,0x0,0x1c1c0,0x0,0x0,0x0,0x0,0x1fe0000, 2.3836 + 0x0,0x0,0x1ff,0x1f0f8,0x0,0xff000,0x0,0x0,0x0,0x3f,0xff00000f,0x80000000,0xfe0,0x3f80,0xf00,0x0,0x0,0x0,0x1,0xf8000003,0xe0000000, 2.3837 + 0x1c00,0xe000,0xe00,0x0,0x0,0x0,0x0,0x0,0x3c,0x78000000,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f0,0x3f80,0x1fc00,0xfe000, 2.3838 + 0x7f0000,0x0,0x1fc07000,0x0,0x0,0x0,0x0,0x0,0x3f800,0x780000,0x78000,0x7f00001,0xfc38001f,0xf800070,0x1c000000,0x0,0x7800, 2.3839 + 0x780,0x7f000,0x3e1f000,0x7800000,0x780000,0x7f00003e,0x1f0003f0,0x7f0,0xe0001e00,0x1e0,0x1fc00,0x7f0e00,0x7c3e000,0x0,0x3, 2.3840 + 0xc0000000,0x3c00003f,0x80001f0f,0x80000078,0x1e0000,0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3841 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000,0x1e078000,0x30000000,0x3ff,0xc00001e0,0xf0, 2.3842 + 0x78000,0x1c000,0x0,0x0,0x0,0x0,0x1e0007f,0xf000007e,0x1ffff,0x7ffe0,0x1f80,0x3ffff80,0xfff803,0xfffff800,0xfff80007,0xff800000, 2.3843 + 0x0,0x0,0x0,0x0,0x1ffe00,0x0,0xfe0003,0xfff80000,0x3ffe01ff,0xe00003ff,0xffe01fff,0xff0003ff,0xe01e0007,0x803ffff0,0xfff80, 2.3844 + 0x3c000fc0,0x7800001f,0x8003f07e,0x1e000f,0xfe0007ff,0xf00003ff,0x8007ffe0,0x1fff8,0x7fffffe,0xf0003c1,0xe000079e,0xf1f,0x1f3e0, 2.3845 + 0x1f01ff,0xfff8003f,0xf003c000,0x7fe0,0x3f00,0x0,0x3c0000,0x1,0xe0000000,0x0,0x780000,0xf,0xfe000000,0x78000,0x3c00,0xf000, 2.3846 + 0x7800003,0xffe00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xfc0000f0,0x3fe00,0x0,0x0,0xfff00,0x0,0x0,0x3fe000, 2.3847 + 0x0,0x0,0x0,0x1dc0,0x0,0x3fff00,0x0,0x3ffff80,0x1f,0xffff8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff1c07ff,0x3c0f001e,0x3c000000, 2.3848 + 0x0,0x0,0x1e3c0,0xf80007c,0x0,0x780000,0x0,0xfff8000,0x3e00,0x1f00000,0x7ff,0xc001f0f8,0x0,0x3ffc00,0x0,0x0,0x0,0x3f,0xff00003f, 2.3849 + 0xe0000000,0x3ff8,0xffe0,0x1e00,0x0,0xfffc00,0x0,0x7,0xf800000f,0xf8000000,0x1c00,0xe000,0xe00,0xf000,0x1fc000,0xfe0000,0x7f00000, 2.3850 + 0x3f800001,0xfc00003f,0xf80000ff,0xffc003ff,0xe007ffff,0xc03ffffe,0x1fffff0,0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01ffc, 2.3851 + 0xfc00,0x3c001ffc,0xffe0,0x7ff00,0x3ff800,0x1ffc000,0x0,0x7ff8f0f0,0x3c0780,0x1e03c00,0xf01e000,0x783e0001,0xf01e0000,0xffe00, 2.3852 + 0x3c0000,0xf0000,0x7700001,0xfe38001f,0xf800070,0x1c000000,0x0,0x3c00,0xf00,0x77000,0x3e1f000,0x3c00000,0xf00000,0x7700003e, 2.3853 + 0x1f0000f8,0xc0007f8,0xe0000f00,0x3c0,0x1dc00,0x7f8e00,0x7c3e000,0x0,0x1,0xe0000000,0x7800003b,0x80001f0f,0x800000f0,0x1e0000, 2.3854 + 0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3855 + 0x0,0x0,0x780000,0x3c1e0000,0x1e070000,0x300001f0,0x7ff,0xc00001e0,0x1e0,0x7c000,0x1c000,0x0,0x0,0x0,0x0,0x3c000ff,0xf80007fe, 2.3856 + 0x3ffff,0x801ffff8,0x1f80,0x3ffff80,0x3fff803,0xfffff801,0xfffc000f,0xffc00000,0x0,0x0,0x0,0x0,0x7fff80,0x0,0xfe0003,0xffff0000, 2.3857 + 0xffff01ff,0xfc0003ff,0xffe01fff,0xff000fff,0xf01e0007,0x803ffff0,0xfff80,0x3c001f80,0x7800001f,0xc007f07e,0x1e001f,0xff0007ff, 2.3858 + 0xfc0007ff,0xc007fffc,0x3fffc,0x7fffffe,0xf0003c1,0xf0000f9e,0xf0f,0x8003e1e0,0x1e01ff,0xfff8003f,0xf001e000,0x7fe0,0x3f00, 2.3859 + 0x0,0x1e0000,0x1,0xe0000000,0x0,0x780000,0x1f,0xfe000000,0x78000,0x3c00,0xf000,0x7800003,0xffe00000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3860 + 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xfc0000f0,0x3ff00,0x0,0x0,0x1fff80,0x0,0x0,0xffe000,0x0,0x0,0x0,0x3de0,0x0,0x7fff80,0x0,0xfffff80, 2.3861 + 0x1f,0xffff8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xe7bc07ff,0x3e1f000f,0x78000000,0x0,0x0,0xf780,0x7800078,0x0,0x780000,0x180000, 2.3862 + 0x1fff8000,0x1e00,0x1e0003c,0xfff,0xc001f0f8,0x0,0x7ffe00,0x0,0x0,0x0,0x3f,0xff00007f,0xf0000000,0x3ffc,0xfff0,0x3c00,0x0, 2.3863 + 0x7fffc00,0x0,0x7,0xf800003f,0xfe000000,0x1c00,0xe000,0xe00,0xf000,0x1fc000,0xfe0000,0x7f00000,0x3f800001,0xfc00001f,0xe00001ff, 2.3864 + 0xffc00fff,0xf007ffff,0xc03ffffe,0x1fffff0,0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01fff,0xc000fc00,0x3c003ffe,0x1fff0, 2.3865 + 0xfff80,0x7ffc00,0x3ffe000,0x0,0xfffce0f0,0x3c0780,0x1e03c00,0xf01e000,0x781e0001,0xe01e0000,0x3fff00,0x1e0000,0x1e0000,0xf780003, 2.3866 + 0xcf78001f,0xf800078,0x3c000000,0x0,0x1e00,0x1e00,0xf7800,0x3e1f000,0x1e00000,0x1e00000,0xf780003e,0x1f0000fc,0x7c000f3d, 2.3867 + 0xe0000780,0x780,0x3de00,0xf3de00,0x7c3e000,0x0,0x0,0xf0000000,0xf000007b,0xc0001f0f,0x800001e0,0x1e0000,0x3e1f00,0x0,0x0, 2.3868 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000, 2.3869 + 0x3c1e0000,0x1e0f0000,0x300007fc,0xfff,0xc00001e0,0x1e0,0x3c000,0x1c000,0x0,0x0,0x0,0x0,0x3c001ff,0xfc001ffe,0x3ffff,0xc01ffffc, 2.3870 + 0x3f80,0x3ffff80,0x7fff803,0xfffff803,0xfffe001f,0xffe00000,0x0,0x0,0x0,0x0,0xffff80,0x7f800,0xfe0003,0xffff8001,0xffff01ff, 2.3871 + 0xff0003ff,0xffe01fff,0xff001fff,0xf01e0007,0x803ffff0,0xfff80,0x3c003f00,0x7800001f,0xc007f07f,0x1e003f,0xff8007ff,0xff000fff, 2.3872 + 0xe007ffff,0x7fffc,0x7fffffe,0xf0003c0,0xf0000f1e,0xf07,0x8003c1f0,0x3e01ff,0xfff8003f,0xf001e000,0x7fe0,0x7f80,0x0,0xe0000, 2.3873 + 0x1,0xe0000000,0x0,0x780000,0x1f,0xfe000000,0x78000,0x3c00,0xf000,0x7800003,0xffe00000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0, 2.3874 + 0x0,0x0,0x0,0x0,0xf,0xfc0000f0,0x3ff00,0x0,0x0,0x3fff80,0x0,0x0,0xffe000,0x0,0x0,0x0,0x78f0,0x0,0xffff80,0x0,0x3fffff80,0x1f, 2.3875 + 0xffff8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xc7f80070,0x3e1f0007,0x70000000,0x0,0x0,0x7700,0x7c000f8,0x0,0x780000,0x180000, 2.3876 + 0x3fff8000,0x1f00,0x3e0003c,0x1f03,0xc001f0f8,0x0,0x703f00,0x0,0x0,0x0,0x3f,0xff0000f0,0xf8000000,0x303e,0xc0f8,0x7800,0x0, 2.3877 + 0xffffc00,0x0,0x7,0x3800003e,0x3e000000,0x1c00,0xe000,0x3c00,0xf000,0x1fc000,0xfe0000,0x7f00000,0x3f800001,0xfc00000f,0xe00001ff, 2.3878 + 0xffc01fff,0xf007ffff,0xc03ffffe,0x1fffff0,0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01fff,0xf000fe00,0x3c007fff,0x3fff8, 2.3879 + 0x1fffc0,0xfffe00,0x7fff000,0x1,0xffffc0f0,0x3c0780,0x1e03c00,0xf01e000,0x781f0003,0xe01e0000,0x3fff80,0xe0000,0x3c0000,0x1e3c0003, 2.3880 + 0x8ff0001f,0xf80003c,0x78000000,0x0,0xe00,0x3c00,0x1e3c00,0x3e1f000,0xe00000,0x3c00001,0xe3c0003e,0x1f00007f,0xf8000e3f,0xc0000380, 2.3881 + 0xf00,0x78f00,0xe3fc00,0x7c3e000,0x0,0x0,0x70000001,0xe00000f1,0xe0001f0f,0x800003c0,0x1e0000,0x3e1f00,0x0,0x0,0x0,0x0,0x0, 2.3882 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000,0x3c0f0000, 2.3883 + 0x30000ffe,0xf80,0xc00001e0,0x3c0,0x1e000,0x101c040,0x0,0x0,0x0,0x0,0x78003f0,0x7e001ffe,0x3f807,0xe01f00fe,0x3f80,0x3ffff80, 2.3884 + 0x7e01803,0xfffff007,0xe03f003f,0x3f00000,0x0,0x0,0x0,0x0,0xfc0fc0,0x3ffe00,0xfe0003,0xffffc003,0xf81f01ff,0xff8003ff,0xffe01fff, 2.3885 + 0xff003f01,0xf01e0007,0x803ffff0,0xfff80,0x3c007e00,0x7800001f,0xc007f07f,0x1e007e,0xfc007ff,0xff801f83,0xf007ffff,0x800fc07c, 2.3886 + 0x7fffffe,0xf0003c0,0xf0000f0f,0x1e07,0xc007c0f8,0x7c01ff,0xfff8003c,0xf000,0x1e0,0xffc0,0x0,0xf0000,0x1,0xe0000000,0x0,0x780000, 2.3887 + 0x3e,0x0,0x78000,0x3c00,0xf000,0x7800000,0x1e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0,0x0,0x0,0x0,0x0,0x1f,0x800000f0,0x1f80, 2.3888 + 0x0,0x0,0x7e0780,0x0,0x0,0x1f82000,0x0,0x0,0x0,0x7070,0x0,0x1f80f80,0x0,0x7fffff80,0x1f,0xffff8000,0x0,0x0,0x0,0x0,0x0,0x0, 2.3889 + 0x0,0x1,0xc3f80070,0x3f3f0007,0xf0000000,0x0,0x0,0x7f00,0x3e001f0,0x0,0x780000,0x180000,0x7f018000,0xf80,0x7c0003c,0x3e00, 2.3890 + 0x4001f0f8,0xfe00,0x400f00,0x0,0x0,0x0,0x7f000000,0xe0,0x38000000,0x1e,0x38,0x7800,0x0,0x1ffe1c00,0x0,0x0,0x38000078,0xf000000, 2.3891 + 0x1c00,0xe000,0x7f800,0xf000,0x1fc000,0xfe0000,0x7f00000,0x3f800001,0xfc00001f,0xf00001ff,0xffc03f81,0xf007ffff,0xc03ffffe, 2.3892 + 0x1fffff0,0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01fff,0xf800fe00,0x3c00fc1f,0x8007e0fc,0x3f07e0,0x1f83f00,0xfc1f800, 2.3893 + 0x3,0xf07fc0f0,0x3c0780,0x1e03c00,0xf01e000,0x780f8007,0xc01e0000,0x7e0fc0,0xf0000,0x3c0000,0x1c1c0003,0x87f0001f,0xf80003f, 2.3894 + 0xf8000000,0x0,0xf00,0x3c00,0x1c1c00,0x3e1f000,0xf00000,0x3c00001,0xc1c0003e,0x1f00003f,0xc0000e1f,0xc00003c0,0xf00,0x70700, 2.3895 + 0xe1fc00,0x7c3e000,0x0,0x0,0x78000001,0xe00000e0,0xe0001f0f,0x800003c0,0x1e0000,0x3e1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3896 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000,0x3c0f0001,0xff801e0f, 2.3897 + 0x1f00,0x1e0,0x3c0,0x1e000,0x3c1c1e0,0x0,0x0,0x0,0x0,0x78007c0,0x1f001f9e,0x3c001,0xf010003e,0x7780,0x3c00000,0xf800000,0xf007, 2.3898 + 0xc01f007c,0x1f80000,0x0,0x0,0x0,0x0,0xe003e0,0x7fff00,0x1ef0003,0xc007e007,0xc00301e0,0x1fc003c0,0x1e00,0x7c00,0x301e0007, 2.3899 + 0x80007800,0x780,0x3c00fc00,0x7800001f,0xe00ff07f,0x1e00f8,0x3e00780,0x1fc03e00,0xf807801f,0xc01f001c,0xf000,0xf0003c0,0xf0000f0f, 2.3900 + 0x1e03,0xc00f8078,0x780000,0xf0003c,0xf000,0x1e0,0x1f3e0,0x0,0x78000,0x1,0xe0000000,0x0,0x780000,0x3c,0x0,0x78000,0x0,0x0, 2.3901 + 0x7800000,0x1e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0xf80,0x0,0x0,0xf80180,0x0,0x0,0x1e00000, 2.3902 + 0x0,0x0,0x0,0xe038,0x0,0x3e00380,0x0,0xfe0f0000,0x0,0xf0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xc0f00070,0x3b370003,0xe0000000, 2.3903 + 0x0,0x0,0x3e00,0x1e001e0,0x0,0x780000,0x180000,0x7c000000,0x780,0x780003c,0x3c00,0x0,0x7ffc0,0x780,0x0,0x0,0x3,0xffe00000, 2.3904 + 0x1c0,0x3c000000,0xe,0x38,0xf000,0x0,0x3ffe1c00,0x0,0x0,0x38000078,0xf000000,0x1c00,0xe000,0x7f000,0xf000,0x3de000,0x1ef0000, 2.3905 + 0xf780000,0x7bc00003,0xde00001e,0xf00003e7,0x80007c00,0x30078000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001, 2.3906 + 0xe0001e03,0xfc00fe00,0x3c01f007,0xc00f803e,0x7c01f0,0x3e00f80,0x1f007c00,0x7,0xc01f80f0,0x3c0780,0x1e03c00,0xf01e000,0x78078007, 2.3907 + 0x801e0000,0x7803c0,0x78000,0x780000,0x380e0003,0x81e00000,0x1f,0xf0000000,0x0,0x780,0x7800,0x380e00,0x0,0x780000,0x7800003, 2.3908 + 0x80e00000,0x1ff,0x80000e07,0x800001e0,0x1e00,0xe0380,0xe07800,0x0,0x0,0x0,0x3c000003,0xc00001c0,0x70000000,0x780,0x1e0000, 2.3909 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3910 + 0x780000,0x3c1e0000,0x3c0e0007,0xfff01c07,0x1e00,0x1e0,0x780,0xf000,0x3e1c3e0,0x0,0x0,0x0,0x0,0xf0007c0,0x1f00181e,0x20000, 2.3911 + 0xf000001f,0xf780,0x3c00000,0x1f000000,0x1f00f,0x800f8078,0xf80000,0x0,0x0,0x0,0x0,0x8003e0,0x1fc0f80,0x1ef0003,0xc001e007, 2.3912 + 0x800101e0,0x7e003c0,0x1e00,0x7800,0x101e0007,0x80007800,0x780,0x3c00f800,0x7800001e,0xe00ef07f,0x801e00f0,0x1e00780,0x7c03c00, 2.3913 + 0x78078007,0xc01e0004,0xf000,0xf0003c0,0x78001e0f,0x1e03,0xe00f807c,0xf80000,0x1f0003c,0x7800,0x1e0,0x3e1f0,0x0,0x3c000,0x1, 2.3914 + 0xe0000000,0x0,0x780000,0x3c,0x0,0x78000,0x0,0x0,0x7800000,0x1e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0,0x0,0x0,0x0,0x0, 2.3915 + 0x1e,0xf0,0x780,0x0,0x0,0x1f00080,0x0,0x0,0x3c00000,0x0,0x0,0x0,0x1e03c,0x0,0x3c00080,0x0,0xf80f0000,0x0,0x1f0000,0x0,0x0, 2.3916 + 0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x3bf70003,0xe0000000,0x0,0x0,0x3e00,0x1f003e0,0x0,0x780000,0x180000,0x78000000,0x7c0,0xf80003c, 2.3917 + 0x3c00,0x0,0x1f01f0,0x780,0x0,0x0,0xf,0x80f80000,0x1c0,0x1c000000,0xe,0x38,0x1e000,0x0,0x7ffe1c00,0x0,0x0,0x380000f0,0x7800000, 2.3918 + 0x1c00,0xe000,0x7fc00,0xf000,0x3de000,0x1ef0000,0xf780000,0x7bc00003,0xde00001e,0xf00003c7,0x80007800,0x10078000,0x3c0000, 2.3919 + 0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x7e00ff00,0x3c01e003,0xc00f001e,0x7800f0,0x3c00780,0x1e003c00, 2.3920 + 0x7,0x800f00f0,0x3c0780,0x1e03c00,0xf01e000,0x7807c00f,0x801e0000,0xf803c0,0x3c000,0xf00000,0x780f0000,0x0,0x7,0xc0000000, 2.3921 + 0x0,0x3c0,0xf000,0x780f00,0x0,0x3c0000,0xf000007,0x80f00000,0x7ff,0xc0000000,0xf0,0x3c00,0x1e03c0,0x0,0x0,0x0,0x0,0x1e000007, 2.3922 + 0x800003c0,0x78000000,0xf00,0x1e0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3923 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000,0x3c1e001f,0xfff03803,0x80001e00,0x1e0,0x780,0xf000,0xf9cf80, 2.3924 + 0x0,0x0,0x0,0x0,0xf000780,0xf00001e,0x0,0xf800000f,0xe780,0x3c00000,0x1e000000,0x1e00f,0x78078,0x7c0000,0x0,0x0,0x0,0x0,0x1e0, 2.3925 + 0x3f003c0,0x1ef0003,0xc000f00f,0x800001e0,0x1f003c0,0x1e00,0xf000,0x1e0007,0x80007800,0x780,0x3c01f000,0x7800001e,0xe00ef07f, 2.3926 + 0x801e01f0,0x1e00780,0x3c07c00,0x78078003,0xc03e0000,0xf000,0xf0003c0,0x78001e0f,0x1e01,0xf01f003c,0xf00000,0x3e0003c,0x7800, 2.3927 + 0x1e0,0x7c0f8,0x0,0x0,0x1,0xe0000000,0x0,0x780000,0x3c,0x0,0x78000,0x0,0x0,0x7800000,0x1e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x3c000, 2.3928 + 0x0,0x0,0x0,0x0,0x0,0x1e,0xf0,0x780,0x0,0x0,0x1e00000,0x0,0x0,0x3c00000,0x0,0x8,0x40,0x0,0x7e0000,0x7c00000,0x1,0xf00f0000, 2.3929 + 0x0,0x3e0000,0x0,0x3f,0xfc0,0xfc3f0,0xfc3f0,0x0,0x0,0x0,0x70,0x39e70000,0x0,0x0,0x0,0x0,0xf003c0,0x0,0x0,0x180000,0xf8000000, 2.3930 + 0x3c0,0xf00003c,0x3c00,0x0,0x3c0078,0x7ff80,0x0,0x0,0x1e,0x3c0000,0x1c0,0x1c000000,0xe,0xf0,0x0,0x0,0x7ffe1c00,0x0,0x0,0x380000f0, 2.3931 + 0x7800000,0x1c00,0xe000,0x3c00,0x0,0x3de000,0x1ef0000,0xf780000,0x7bc00003,0xde00001e,0xf00003c7,0x8000f800,0x78000,0x3c0000, 2.3932 + 0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x1f00ff00,0x3c03e003,0xc01f001e,0xf800f0,0x7c00780,0x3e003c00, 2.3933 + 0xf,0x800f80f0,0x3c0780,0x1e03c00,0xf01e000,0x7803c00f,0x1fffc0,0xf001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3934 + 0x0,0x0,0x307,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3935 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000,0x781e003f,0xfff03803, 2.3936 + 0x80001e00,0x1e0,0xf80,0xf000,0x3dde00,0x0,0x0,0x0,0x0,0xf000f00,0x780001e,0x0,0x7800000f,0x1e780,0x3c00000,0x3e000000,0x3e00f, 2.3937 + 0x780f0,0x7c0000,0x0,0x0,0x0,0x0,0x1e0,0x7c001e0,0x3ef8003,0xc000f00f,0x1e0,0xf003c0,0x1e00,0xf000,0x1e0007,0x80007800,0x780, 2.3938 + 0x3c03e000,0x7800001e,0xf01ef07b,0xc01e01e0,0xf00780,0x3e07800,0x3c078003,0xe03c0000,0xf000,0xf0003c0,0x78001e0f,0x1e00,0xf01e003e, 2.3939 + 0x1f00000,0x3c0003c,0x7800,0x1e0,0x78078,0x0,0x0,0x1,0xe0000000,0x0,0x780000,0x3c,0x0,0x78000,0x0,0x0,0x7800000,0x1e00000, 2.3940 + 0x0,0x0,0x0,0x0,0x0,0x0,0x3c000,0x0,0x0,0x0,0x0,0x0,0x1e,0xf0,0x780,0x0,0x0,0x1e00000,0x0,0x0,0x3c00000,0x0,0x18,0xc0,0x0, 2.3941 + 0xe70000,0x7800000,0x1,0xe00f0000,0x0,0x3c0000,0x0,0x3f,0xfc0,0xfc1f0,0x1f83f0,0x0,0x0,0x0,0x70,0x39e70000,0x0,0x0,0x0,0x0, 2.3942 + 0xf807c0,0x0,0x0,0x180000,0xf0000000,0x3e0,0x1f00003c,0x3e00,0x0,0x70001c,0x3fff80,0x0,0x0,0x38,0xe0000,0x1c0,0x1c000078, 2.3943 + 0x1c,0x1fe0,0x0,0x0,0xfffe1c00,0x0,0x0,0x380000f0,0x7800000,0x1c00,0xe000,0xe00,0x0,0x7df000,0x3ef8000,0x1f7c0000,0xfbe00007, 2.3944 + 0xdf00003c,0x780003c7,0x8000f000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0xf00f780, 2.3945 + 0x3c03c001,0xe01e000f,0xf00078,0x78003c0,0x3c001e00,0xf,0xf80f0,0x3c0780,0x1e03c00,0xf01e000,0x7803e01f,0x1ffff8,0xf001e0, 2.3946 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0xc000,0x0,0x0,0x0,0x0,0x1e0000, 2.3947 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3948 + 0x780000,0x3c1e0000,0x781e003e,0x30703803,0x80001e00,0x1e0,0xf00,0x7800,0xff800,0x1e0000,0x0,0x0,0x0,0x1e000f00,0x780001e, 2.3949 + 0x0,0x7800000f,0x3c780,0x3c00000,0x3c000000,0x3c00f,0x780f0,0x3c0000,0x0,0x0,0x2000000,0x800000,0x1e0,0x78000e0,0x3c78003, 2.3950 + 0xc000f01e,0x1e0,0xf803c0,0x1e00,0x1e000,0x1e0007,0x80007800,0x780,0x3c07c000,0x7800001e,0x701cf07b,0xc01e01e0,0xf00780,0x1e07800, 2.3951 + 0x3c078001,0xe03c0000,0xf000,0xf0003c0,0x7c003e0f,0x1e00,0xf83e001e,0x1e00000,0x7c0003c,0x3c00,0x1e0,0xf807c,0x0,0x0,0x1fe0001, 2.3952 + 0xe1fc0000,0x7f00003,0xf8780007,0xf000003c,0x7f0,0x783f0,0x0,0x0,0x7800000,0x1e00000,0x3e0f8000,0xfc00007,0xf8000007,0xf00001fc, 2.3953 + 0xf,0xc0003fc0,0x3c000,0x0,0x0,0x0,0x0,0x0,0x1e,0xf0,0x780,0x0,0x0,0x3c00000,0x0,0x0,0x3c00000,0x0,0x18,0xc0,0x0,0x1818000, 2.3954 + 0x7800000,0x1,0xe00f0000,0x0,0x7c0000,0x0,0x1f,0x80001f80,0x7c1f8,0x1f83e0,0x0,0x0,0x0,0x70,0x38c70007,0xf8000000,0x7f03, 2.3955 + 0xf0000000,0x0,0x780780,0x0,0x0,0xfe0000,0xf0000000,0x1e0,0x1e00003c,0x3f00,0x0,0xe07f0e,0x7fff80,0x0,0x0,0x70,0x70000,0x1c0, 2.3956 + 0x1c000078,0x3c,0x1fc0,0x0,0x0,0xfffe1c00,0x0,0x0,0x380000f0,0x7800000,0x1c00,0xe000,0xe00,0x0,0x78f000,0x3c78000,0x1e3c0000, 2.3957 + 0xf1e00007,0x8f00003c,0x78000787,0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00, 2.3958 + 0xf80f780,0x3c03c001,0xe01e000f,0xf00078,0x78003c0,0x3c001e00,0xf,0x1f80f0,0x3c0780,0x1e03c00,0xf01e000,0x7801e01e,0x1ffffc, 2.3959 + 0xf007e0,0x3fc000,0x1fe0000,0xff00000,0x7f800003,0xfc00001f,0xe0000fc0,0xfc00007f,0xfe0,0x7f00,0x3f800,0x1fc000,0x0,0x0,0x0, 2.3960 + 0x1,0xf000001f,0x80000ff0,0x7f80,0x3fc00,0x1fe000,0xff0000,0x1f80000,0x1fc1e000,0x0,0x0,0x0,0x0,0x1e1fc0,0x0,0x0,0x0,0x0, 2.3961 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e0000, 2.3962 + 0x781c007c,0x30003803,0x80001f00,0x1e0,0xf00,0x7800,0x7f000,0x1e0000,0x0,0x0,0x0,0x1e000f00,0x780001e,0x0,0x7800000f,0x3c780, 2.3963 + 0x3c00000,0x3c000000,0x3c00f,0x780f0,0x3c0000,0x0,0x0,0x1e000000,0xf00000,0x3e0,0xf0000e0,0x3c78003,0xc000f01e,0x1e0,0x7803c0, 2.3964 + 0x1e00,0x1e000,0x1e0007,0x80007800,0x780,0x3c0f8000,0x7800001e,0x701cf079,0xe01e01e0,0xf00780,0x1e07800,0x3c078001,0xe03c0000, 2.3965 + 0xf000,0xf0003c0,0x3c003c0f,0x3e00,0x787c001f,0x3e00000,0xf80003c,0x3c00,0x1e0,0x1f003e,0x0,0x0,0x1fffc001,0xe7ff0000,0x3ffe000f, 2.3966 + 0xfe78003f,0xfc001fff,0xfe001ffc,0xf0078ffc,0x1ffc00,0x7ff000,0x7800f80,0x1e0000f,0x7f1fc01e,0x3ff0001f,0xfe00079f,0xfc0007ff, 2.3967 + 0x3c003c7f,0xf001fff8,0x1fffff0,0x3c003c0,0xf0000f1e,0xf1f,0x7c1f0,0x1f00ff,0xffe0001e,0xf0,0x780,0x0,0x0,0x3c00000,0x100000, 2.3968 + 0x0,0x7800000,0x0,0x18,0xc0,0x0,0x1818000,0x7800000,0x1,0xe00f0000,0x1000000,0xf80000,0x40000002,0xf,0x80001f00,0x7e0f8,0x1f07c0, 2.3969 + 0x0,0x0,0x0,0x70,0x38c7003f,0xff000000,0xff8f,0xf8000100,0xffffe,0x7c0f80,0x0,0x0,0x3ffc000,0xf0000020,0x1001f0,0x3c00003c, 2.3970 + 0x1f80,0x0,0x1c3ffc7,0x7c0780,0x0,0x0,0xe3,0xff038000,0xe0,0x38000078,0x78,0x1ff0,0x0,0x3c003c0,0xfffe1c00,0x0,0x0,0x380000f0, 2.3971 + 0x7800000,0x1c00,0xe000,0xe00,0xf000,0x78f000,0x3c78000,0x1e3c0000,0xf1e00007,0x8f00003c,0x78000787,0x8001e000,0x78000,0x3c0000, 2.3972 + 0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x780f3c0,0x3c03c001,0xe01e000f,0xf00078,0x78003c0,0x3c001e00, 2.3973 + 0x4000200f,0x3f80f0,0x3c0780,0x1e03c00,0xf01e000,0x7801f03e,0x1ffffe,0xf01fe0,0x3fff800,0x1fffc000,0xfffe0007,0xfff0003f, 2.3974 + 0xff8001ff,0xfc003ff3,0xfe0003ff,0xe0007ff8,0x3ffc0,0x1ffe00,0xfff000,0x3ff80001,0xffc0000f,0xfe00007f,0xf000003f,0xf8003c7f, 2.3975 + 0xe0003ffc,0x1ffe0,0xfff00,0x7ff800,0x3ffc000,0x1f80000,0xfff1c03c,0x3c01e0,0x1e00f00,0xf007800,0x781f0001,0xf01e7ff0,0x7c0007c, 2.3976 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000, 2.3977 + 0x3c1e003f,0xfffff078,0x30003803,0x80000f00,0x1e0,0x1f00,0x7800,0x7f000,0x1e0000,0x0,0x0,0x0,0x3c000f00,0x780001e,0x0,0x7800000f, 2.3978 + 0x78780,0x3c00000,0x3c000000,0x7c00f,0x780f0,0x3c0007,0xe000003f,0x0,0xfe000000,0xfe0000,0x3c0,0x1f000070,0x7c7c003,0xc000f01e, 2.3979 + 0x1e0,0x7803c0,0x1e00,0x1e000,0x1e0007,0x80007800,0x780,0x3c1f0000,0x7800001e,0x783cf079,0xe01e03c0,0xf00780,0x1e0f000,0x3c078001, 2.3980 + 0xe03c0000,0xf000,0xf0003c0,0x3c003c07,0x81f03c00,0x7c7c000f,0x87c00000,0xf00003c,0x1e00,0x1e0,0x3e001f,0x0,0x0,0x3fffe001, 2.3981 + 0xefff8000,0x7fff001f,0xff78007f,0xfe001fff,0xfe003ffe,0xf0079ffe,0x1ffc00,0x7ff000,0x7801f00,0x1e0000f,0xffbfe01e,0x7ff8003f, 2.3982 + 0xff0007bf,0xfe000fff,0xbc003cff,0xf803fffc,0x1fffff0,0x3c003c0,0x78001e1e,0xf0f,0x800f80f0,0x1e00ff,0xffe0001e,0xf0,0x780, 2.3983 + 0x0,0x0,0x3c00000,0x380000,0x0,0x7800000,0x0,0x18,0xc0,0x0,0x1008000,0x7800000,0x3,0xe00f0000,0x3800000,0xf00000,0xe0000007, 2.3984 + 0xf,0x80001f00,0x3e0f8,0x1e07c0,0x0,0x0,0x0,0x70,0x3807007f,0xff800000,0x1ffdf,0xfc000380,0xffffe,0x3e1f00,0x0,0x0,0xfffe000, 2.3985 + 0xf0000030,0x3800f8,0x7c00003c,0xfc0,0x0,0x18780c3,0xf00780,0x80100,0x0,0xc3,0xffc18000,0xf0,0x78000078,0xf0,0xf0,0x0,0x3c003c0, 2.3986 + 0xfffe1c00,0x0,0x0,0x380000f0,0x7800801,0x1c00,0xe000,0x1e00,0xf000,0xf8f800,0x7c7c000,0x3e3e0001,0xf1f0000f,0x8f80007c,0x7c000787, 2.3987 + 0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x780f3c0,0x3c078001,0xe03c000f, 2.3988 + 0x1e00078,0xf0003c0,0x78001e00,0xe000701f,0x3fc0f0,0x3c0780,0x1e03c00,0xf01e000,0x7800f87c,0x1e007f,0xf07e00,0x7fffc00,0x3fffe001, 2.3989 + 0xffff000f,0xfff8007f,0xffc003ff,0xfe007ff7,0xff0007ff,0xf000fffc,0x7ffe0,0x3fff00,0x1fff800,0x3ff80001,0xffc0000f,0xfe00007f, 2.3990 + 0xf00000ff,0xf8003cff,0xf0007ffe,0x3fff0,0x1fff80,0xfffc00,0x7ffe000,0x1f80001,0xfffb803c,0x3c01e0,0x1e00f00,0xf007800,0x780f0001, 2.3991 + 0xe01efff8,0x3c00078,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.3992 + 0x0,0x0,0x0,0x0,0x0,0x780000,0x3c1e003f,0xfffff078,0x30001c07,0xf80,0x1e0,0x1e00,0x3c00,0xff800,0x1e0000,0x0,0x0,0x0,0x3c001e00, 2.3993 + 0x3c0001e,0x0,0x7800001e,0x70780,0x3c00000,0x78000000,0x78007,0x800f00f0,0x3e0007,0xe000003f,0x3,0xfe000000,0xff8000,0x7c0, 2.3994 + 0x1e000070,0x783c003,0xc001f01e,0x1e0,0x7803c0,0x1e00,0x1e000,0x1e0007,0x80007800,0x780,0x3c3e0000,0x7800001e,0x3838f079, 2.3995 + 0xe01e03c0,0x780780,0x1e0f000,0x1e078001,0xe03c0000,0xf000,0xf0003c0,0x3c007c07,0x81f03c00,0x3ef80007,0x87800000,0x1f00003c, 2.3996 + 0x1e00,0x1e0,0x7c000f,0x80000000,0x0,0x3ffff001,0xffffc000,0xffff003f,0xff7800ff,0xff001fff,0xfe007ffe,0xf007bffe,0x1ffc00, 2.3997 + 0x7ff000,0x7803e00,0x1e0000f,0xffffe01e,0xfff8007f,0xff8007ff,0xff001fff,0xbc003dff,0xf807fffc,0x1fffff0,0x3c003c0,0x78001e0f, 2.3998 + 0x1e07,0xc01f00f0,0x1e00ff,0xffe0001e,0xf0,0x780,0x0,0x0,0x7c00000,0x7c0000,0x0,0x7800000,0x0,0x18,0xc0,0x0,0x1018000,0x7800000, 2.3999 + 0x3,0xc00f0000,0x7c00000,0x1f00001,0xf000000f,0x80000007,0xc0003e00,0x1e07c,0x3e0780,0x0,0x0,0x0,0x70,0x380700ff,0xff800000, 2.4000 + 0x3ffff,0xfe0007c0,0xffffe,0x1e1e00,0x0,0x780000,0x1fffe000,0xf0000078,0x7c0078,0x7800003c,0xff0,0x0,0x38e0003,0x80f00780, 2.4001 + 0x180300,0x0,0x1c3,0x81e1c000,0x7f,0xf0000078,0x1e0,0x38,0x0,0x3c003c0,0xfffe1c00,0x0,0x0,0x380000f0,0x7800c01,0x80001c00, 2.4002 + 0xe000,0x603e00,0xf000,0xf07800,0x783c000,0x3c1e0001,0xe0f0000f,0x7800078,0x3c000f87,0x8001e000,0x78000,0x3c0000,0x1e00000, 2.4003 + 0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x780f3c0,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f01,0xf000f81e, 2.4004 + 0x7bc0f0,0x3c0780,0x1e03c00,0xf01e000,0x78007878,0x1e001f,0xf0f800,0x7fffe00,0x3ffff001,0xffff800f,0xfffc007f,0xffe003ff, 2.4005 + 0xff007fff,0xff800fff,0xf001fffe,0xffff0,0x7fff80,0x3fffc00,0x3ff80001,0xffc0000f,0xfe00007f,0xf00001ff,0xfc003dff,0xf000ffff, 2.4006 + 0x7fff8,0x3fffc0,0x1fffe00,0xffff000,0x1f80003,0xffff803c,0x3c01e0,0x1e00f00,0xf007800,0x780f0001,0xe01ffffc,0x3c00078,0x0, 2.4007 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000, 2.4008 + 0x3c1e003f,0xfffff078,0x30001e0f,0x300780,0x1e0,0x1e00,0x3c00,0x3dde00,0x1e0000,0x0,0x0,0x0,0x78001e00,0x3c0001e,0x0,0xf800003e, 2.4009 + 0xf0780,0x3dfc000,0x783f8000,0xf8007,0xc01f00f0,0x3e0007,0xe000003f,0x1f,0xfc000000,0x7ff000,0xf80,0x3e007c70,0x783c003,0xc001e03c, 2.4010 + 0x1e0,0x3c03c0,0x1e00,0x3c000,0x1e0007,0x80007800,0x780,0x3c7c0000,0x7800001e,0x3878f078,0xf01e03c0,0x780780,0x1e0f000,0x1e078001, 2.4011 + 0xe03e0000,0xf000,0xf0003c0,0x1e007807,0x83f03c00,0x3ef00007,0xcf800000,0x3e00003c,0xf00,0x1e0,0xf80007,0xc0000000,0x0,0x3e01f801, 2.4012 + 0xfe07e001,0xf80f007e,0x7f801f8,0x1f801fff,0xfe00fc0f,0xf007f83f,0x1ffc00,0x7ff000,0x7807c00,0x1e0000f,0x87e1e01f,0xe0fc00fc, 2.4013 + 0xfc007f8,0x1f803f03,0xfc003df0,0x3807e03c,0x1fffff0,0x3c003c0,0x78003e0f,0x1e03,0xe03e00f8,0x3e00ff,0xffe0001e,0xf0,0x780, 2.4014 + 0x0,0x0,0x7800000,0xfe0000,0x0,0x7800000,0x0,0x18,0xc0,0x0,0x1818000,0x7c00000,0x3,0xc00f0000,0xfe00000,0x3e00003,0xf800001f, 2.4015 + 0xc0000007,0xc0003e00,0x1e03c,0x3c0f80,0x0,0x0,0x0,0x70,0x380700fc,0x7800000,0x7c1fe,0x3e000fe0,0xffffe,0x1f3e00,0x0,0x780000, 2.4016 + 0x3f98e000,0xf000003c,0xfcf8007c,0xf800003c,0x3ffc,0x0,0x31c0001,0x80f00f80,0x380700,0x0,0x183,0x80e0c000,0x3f,0xe0000078, 2.4017 + 0x3c0,0x38,0x0,0x3c003c0,0xfffe1c00,0x0,0x0,0x38000078,0xf000e01,0xc003ffe0,0x1fff00,0x7ffc00,0xf000,0xf07800,0x783c000,0x3c1e0001, 2.4018 + 0xe0f0000f,0x7800078,0x3c000f07,0x8003c000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00, 2.4019 + 0x3c0f1e0,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0xf801f01e,0xf3c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78007cf8, 2.4020 + 0x1e000f,0x80f0f000,0x7c03f00,0x3e01f801,0xf00fc00f,0x807e007c,0x3f003e0,0x1f80707f,0x8f801f80,0xf003f03f,0x1f81f8,0xfc0fc0, 2.4021 + 0x7e07e00,0x3ff80001,0xffc0000f,0xfe00007f,0xf00003ff,0xfc003fc1,0xf801f81f,0x800fc0fc,0x7e07e0,0x3f03f00,0x1f81f800,0x1f80007, 2.4022 + 0xe07f003c,0x3c01e0,0x1e00f00,0xf007800,0x780f8003,0xe01fe07e,0x3e000f8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4023 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3f,0xfffff078,0x30000ffe,0x1f007c0,0x0,0x1e00, 2.4024 + 0x3c00,0xf9cf80,0x1e0000,0x0,0x0,0x0,0x78001e00,0x3c0001e,0x0,0xf00000fc,0x1e0780,0x3fff800,0x78ffe000,0xf0003,0xe03e00f0, 2.4025 + 0x3e0007,0xe000003f,0x7f,0xe01fffff,0xf00ffc00,0x1f80,0x3c01ff70,0x783c003,0xc007e03c,0x1e0,0x3c03c0,0x1e00,0x3c000,0x1e0007, 2.4026 + 0x80007800,0x780,0x3cfc0000,0x7800001e,0x3c78f078,0xf01e03c0,0x780780,0x3e0f000,0x1e078003,0xc01f0000,0xf000,0xf0003c0,0x1e007807, 2.4027 + 0x83f83c00,0x1ff00003,0xcf000000,0x3e00003c,0xf00,0x1e0,0x0,0x0,0x0,0x20007801,0xfc03e003,0xe003007c,0x3f803e0,0x7c0003c, 2.4028 + 0xf807,0xf007e00f,0x3c00,0xf000,0x780f800,0x1e0000f,0x87e1f01f,0x803c00f8,0x7c007f0,0xf803e01,0xfc003f80,0x80f8004,0x3c000, 2.4029 + 0x3c003c0,0x3c003c0f,0x1e03,0xe03e0078,0x3c0000,0x7c0001e,0xf0,0x780,0x0,0x0,0x3ffff800,0x1ff0000,0x0,0x7800000,0x0,0x18, 2.4030 + 0xc0,0x0,0x1818000,0x3e00000,0x3,0xc00f0000,0x1ff00000,0x3e00007,0xfc00003f,0xe0000003,0xc0003c00,0xf03c,0x3c0f00,0x0,0x0, 2.4031 + 0x0,0x70,0x380701f0,0x800000,0x780fc,0x1e001ff0,0x7c,0xf3c00,0x0,0x780000,0x7e182000,0xf000001f,0xfff00ffc,0xffc0003c,0x3cfe, 2.4032 + 0x0,0x31c0001,0x80f01f80,0x780f00,0x0,0x183,0x80e0c000,0xf,0x80000078,0x780,0x38,0x0,0x3c003c0,0x7ffe1c00,0x0,0x0,0x38000078, 2.4033 + 0xf000f01,0xe003ffe0,0x1fff00,0x7ff800,0xf000,0xf07800,0x783c000,0x3c1e0001,0xe0f0000f,0x78000f8,0x3e000f07,0x8003c000,0x78000, 2.4034 + 0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x3c0f1e0,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0, 2.4035 + 0x78000f00,0x7c03e01e,0x1e3c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78003cf0,0x1e0007,0x80f1e000,0x4000f00,0x20007801,0x3c008, 2.4036 + 0x1e0040,0xf00200,0x780403f,0x7803e00,0x3007c00f,0x803e007c,0x1f003e0,0xf801f00,0x780000,0x3c00000,0x1e000000,0xf00007f0, 2.4037 + 0x3e003f00,0x7801f00f,0x800f807c,0x7c03e0,0x3e01f00,0x1f00f800,0x1f80007,0xc03e003c,0x3c01e0,0x1e00f00,0xf007800,0x78078003, 2.4038 + 0xc01fc03e,0x1e000f0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4039 + 0x0,0x0,0x0,0x0,0x0,0x780000,0x0,0xf078007c,0x300007fc,0x7e00fe0,0x0,0x1e00,0x3c00,0x3e1c3e0,0x1e0000,0x0,0x0,0x0,0xf0001e00, 2.4040 + 0x3c0001e,0x1,0xf000fff8,0x1e0780,0x3fffe00,0x79fff000,0x1f0001,0xfffc00f0,0x7e0007,0xe000003f,0x3ff,0x801fffff,0xf003ff80, 2.4041 + 0x3f00,0x3c03fff0,0xf01e003,0xffffc03c,0x1e0,0x3c03ff,0xffc01fff,0xfe03c000,0x1fffff,0x80007800,0x780,0x3df80000,0x7800001e, 2.4042 + 0x1c70f078,0x781e03c0,0x780780,0x3c0f000,0x1e078007,0xc01f8000,0xf000,0xf0003c0,0x1e007807,0x83f83c00,0xfe00003,0xff000000, 2.4043 + 0x7c00003c,0x780,0x1e0,0x0,0x0,0x0,0x7c01,0xf801f007,0xc00100f8,0x1f803c0,0x3c0003c,0x1f003,0xf007c00f,0x80003c00,0xf000, 2.4044 + 0x783f000,0x1e0000f,0x3c0f01f,0x3e01f0,0x3e007e0,0x7c07c00,0xfc003f00,0xf0000,0x3c000,0x3c003c0,0x3c003c0f,0x1e01,0xf07c007c, 2.4045 + 0x7c0000,0xfc0001e,0xf0,0x780,0x0,0x0,0x3ffff000,0x3838000,0x0,0x7800000,0x0,0x18,0xc0,0x0,0xff0000,0x3f00000,0x3,0xc00fff00, 2.4046 + 0x38380000,0x7c0000e,0xe000070,0x70000001,0xe0003c00,0xf01e,0x780e00,0x0,0x0,0x0,0x0,0x1e0,0x0,0x780f8,0xf003838,0xfc,0xffc00, 2.4047 + 0x0,0x780000,0x7c180000,0xf000000f,0xffe00fff,0xffc0003c,0x783f,0x80000000,0x6380000,0xc0f83f80,0xf81f00,0x0,0x303,0x80e06000, 2.4048 + 0x0,0x78,0xf00,0x78,0x0,0x3c003c0,0x7ffe1c00,0x0,0x0,0x3800003c,0x3e000f81,0xf003ffe0,0x1fff00,0x1fc000,0xf000,0x1e03c00, 2.4049 + 0xf01e000,0x780f0003,0xc078001e,0x3c000f0,0x1e000f07,0xff83c000,0x7ffff,0x803ffffc,0x1ffffe0,0xfffff00,0xf00000,0x7800000, 2.4050 + 0x3c000001,0xe0001e00,0x3c0f0f0,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x3e07c01e,0x1e3c0f0,0x3c0780,0x1e03c00, 2.4051 + 0xf01e000,0x78003ff0,0x1e0007,0x80f1e000,0xf80,0x7c00,0x3e000,0x1f0000,0xf80000,0x7c0001e,0x3c07c00,0x10078007,0x803c003c, 2.4052 + 0x1e001e0,0xf000f00,0x780000,0x3c00000,0x1e000000,0xf00007c0,0x1e003e00,0x7c03e007,0xc01f003e,0xf801f0,0x7c00f80,0x3e007c00, 2.4053 + 0xf,0x801f003c,0x3c01e0,0x1e00f00,0xf007800,0x7807c007,0xc01f801f,0x1f001f0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4054 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x0,0xe078003c,0x300001f0,0x3f801ff0,0x0, 2.4055 + 0x3c00,0x1e00,0x3c1c1e0,0x1e0000,0x0,0x0,0x0,0xf0001e0f,0x3c0001e,0x3,0xe000fff0,0x3c0780,0x3ffff00,0x7bfff800,0x1e0000,0x7ff00078, 2.4056 + 0x7e0007,0xe000003f,0x1ffc,0x1fffff,0xf0007ff0,0x7e00,0x3c07c3f0,0xf01e003,0xffff003c,0x1e0,0x3c03ff,0xffc01fff,0xfe03c000, 2.4057 + 0x1fffff,0x80007800,0x780,0x3ffc0000,0x7800001e,0x1ef0f078,0x781e03c0,0x780780,0x7c0f000,0x1e07801f,0x800ff000,0xf000,0xf0003c0, 2.4058 + 0xf00f807,0x83b83c00,0xfc00001,0xfe000000,0xf800003c,0x780,0x1e0,0x0,0x0,0x0,0x3c01,0xf000f007,0xc00000f0,0xf80780,0x3c0003c, 2.4059 + 0x1e001,0xf007c007,0x80003c00,0xf000,0x787e000,0x1e0000f,0x3c0f01f,0x1e01e0,0x1e007c0,0x3c07800,0x7c003f00,0xf0000,0x3c000, 2.4060 + 0x3c003c0,0x3e007c07,0x80003c00,0xf8f8003c,0x780000,0xf80001e,0xf0,0x780,0x0,0x0,0x7ffff000,0x601c000,0x3,0xffff0000,0x0, 2.4061 + 0xfff,0xf8007fff,0xc0000000,0x7e003c,0x1fe0000,0xc0003,0xc00fff00,0x601c0000,0xf800018,0x70000c0,0x38000001,0xe0007800,0x701e, 2.4062 + 0x701e00,0x0,0x0,0x0,0x0,0x1e0,0x6,0x700f8,0xf00601c,0xf8,0x7f800,0x0,0x780000,0xf8180000,0xf000000f,0x87c00fff,0xffc0003c, 2.4063 + 0xf01f,0xc0000000,0x6380000,0xc07ff780,0x1f03e03,0xfffffe00,0x303,0x81c06000,0x0,0x1ffff,0xfe001e00,0x180f8,0x0,0x3c003c0, 2.4064 + 0x3ffe1c00,0x3f00000,0x0,0x3800003f,0xfe0007c0,0xf8000000,0x18000000,0xc0000006,0x1f000,0x1e03c00,0xf01e000,0x780f0003,0xc078001e, 2.4065 + 0x3c000f0,0x1e001f07,0xff83c000,0x7ffff,0x803ffffc,0x1ffffe0,0xfffff00,0xf00000,0x7800000,0x3c000001,0xe000fff8,0x3c0f0f0, 2.4066 + 0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x1f0f801e,0x3c3c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78001fe0,0x1e0007, 2.4067 + 0x80f1e000,0x780,0x3c00,0x1e000,0xf0000,0x780000,0x3c0001e,0x3c07c00,0xf0007,0x8078003c,0x3c001e0,0x1e000f00,0x780000,0x3c00000, 2.4068 + 0x1e000000,0xf0000f80,0x1f003e00,0x3c03c003,0xc01e001e,0xf000f0,0x7800780,0x3c003c00,0xf,0x3f003c,0x3c01e0,0x1e00f00,0xf007800, 2.4069 + 0x7803c007,0x801f000f,0xf001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4070 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1,0xe078003f,0xb0000000,0xfc003cf0,0x0,0x3c00,0x1e00,0x101c040,0x1e0000,0x0,0x0,0x1, 2.4071 + 0xe0001e1f,0x83c0001e,0x7,0xe000fff0,0x3c0780,0x3c03f80,0x7fc0fc00,0x1e0000,0xfff80078,0xfe0007,0xe000003f,0x7fe0,0x1fffff, 2.4072 + 0xf0000ffc,0xfc00,0x780f81f0,0xf01e003,0xffff003c,0x1e0,0x3c03ff,0xffc01fff,0xfe03c000,0x1fffff,0x80007800,0x780,0x3ffc0000, 2.4073 + 0x7800001e,0x1ef0f078,0x3c1e03c0,0x780780,0x1fc0f000,0x1e07ffff,0x7ff00,0xf000,0xf0003c0,0xf00f007,0xc3b87c00,0x7c00001,0xfe000000, 2.4074 + 0xf800003c,0x3c0,0x1e0,0x0,0x0,0x0,0x3c01,0xf000f007,0x800000f0,0xf80780,0x1e0003c,0x1e001,0xf0078007,0x80003c00,0xf000,0x78fc000, 2.4075 + 0x1e0000f,0x3c0f01e,0x1e01e0,0x1e007c0,0x3c07800,0x7c003e00,0xf0000,0x3c000,0x3c003c0,0x1e007807,0x80003c00,0x7df0003c,0x780000, 2.4076 + 0x1f00001e,0xf0,0x780,0x0,0x0,0x7800000,0xe7ce000,0x3,0xffff0000,0x0,0xfff,0xf8007fff,0xc0000000,0x1f0,0xffe000,0x1c0003, 2.4077 + 0xc00fff00,0xe7ce0000,0xf800039,0xf38001cf,0x9c000000,0xe0007800,0x780e,0x701c00,0x0,0x0,0x0,0x0,0x1e0,0x7,0xf0078,0xf00e7ce, 2.4078 + 0x1f0,0x7f800,0x0,0x780000,0xf0180000,0xf000000e,0x1c0001f,0xe000003c,0xf007,0xe0000000,0x6380000,0xc03fe780,0x3e07c03,0xfffffe00, 2.4079 + 0x303,0xffc06000,0x0,0x1ffff,0xfe003ffe,0x1fff0,0x0,0x3c003c0,0x1ffe1c00,0x3f00000,0x7,0xffc0001f,0xfc0003e0,0x7c000001,0xfc00000f, 2.4080 + 0xe000007f,0x1e000,0x1e03c00,0xf01e000,0x780f0003,0xc078001e,0x3c000f0,0x1e001e07,0xff83c000,0x7ffff,0x803ffffc,0x1ffffe0, 2.4081 + 0xfffff00,0xf00000,0x7800000,0x3c000001,0xe000fff8,0x3c0f078,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0xf9f001e, 2.4082 + 0x783c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78001fe0,0x1e0007,0x80f1e000,0x780,0x3c00,0x1e000,0xf0000,0x780000,0x3c0001e,0x3c07800, 2.4083 + 0xf0003,0xc078001e,0x3c000f0,0x1e000780,0x780000,0x3c00000,0x1e000000,0xf0000f00,0xf003c00,0x3c03c003,0xc01e001e,0xf000f0, 2.4084 + 0x7800780,0x3c003c00,0xf,0x7f003c,0x3c01e0,0x1e00f00,0xf007800,0x7803c007,0x801f000f,0xf001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4085 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1,0xe070001f,0xf8000007, 2.4086 + 0xf0007cf8,0x7800000,0x3c00,0x1e00,0x1c000,0x1e0000,0x0,0x0,0x1,0xe0001e1f,0x83c0001e,0xf,0xc000fff8,0x780780,0x2000f80,0x7f803e00, 2.4087 + 0x3e0003,0xfffe007c,0x1fe0000,0x0,0x3ff00,0x0,0x1ff,0x8001f000,0x780f00f0,0x1f00f003,0xffffc03c,0x1e0,0x3c03ff,0xffc01fff, 2.4088 + 0xfe03c00f,0xf81fffff,0x80007800,0x780,0x3ffe0000,0x7800001e,0xee0f078,0x3c1e03c0,0x7807ff,0xff80f000,0x1e07fffe,0x3ffe0, 2.4089 + 0xf000,0xf0003c0,0xf00f003,0xc7bc7800,0xfc00000,0xfc000001,0xf000003c,0x3c0,0x1e0,0x0,0x0,0x0,0x3c01,0xe000f80f,0x800001e0, 2.4090 + 0xf80f00,0x1e0003c,0x3c000,0xf0078007,0x80003c00,0xf000,0x79f8000,0x1e0000f,0x3c0f01e,0x1e03c0,0x1f00780,0x3e0f000,0x7c003e00, 2.4091 + 0xf0000,0x3c000,0x3c003c0,0x1e007807,0x81e03c00,0x7df0003e,0xf80000,0x3e00003e,0xf0,0x7c0,0xfc000,0x80000000,0x7800000,0x1e7cf000, 2.4092 + 0x3,0xffff0000,0x0,0x18,0xc0,0x0,0xf80,0x7ffc00,0x380003,0xc00fff01,0xe7cf0000,0x1f000079,0xf3c003cf,0x9e000000,0xe0007000, 2.4093 + 0x380e,0xe01c00,0x0,0x0,0x0,0x0,0x1e0,0x3,0x800f0078,0xf01e7cf,0x3e0,0x3f000,0x0,0x780000,0xf018001f,0xfff8001e,0x1e0000f, 2.4094 + 0xc000003c,0xf003,0xe0000000,0x6380000,0xc00fc780,0x7c0f803,0xfffffe00,0x303,0xfe006000,0x0,0x1ffff,0xfe003ffe,0x1ffe0,0x0, 2.4095 + 0x3c003c0,0xffe1c00,0x3f00000,0x7,0xffc00007,0xf00001f0,0x3e00001f,0xfc0000ff,0xe00007ff,0x3e000,0x3e01e00,0x1f00f000,0xf8078007, 2.4096 + 0xc03c003e,0x1e001e0,0xf001e07,0xff83c000,0x7ffff,0x803ffffc,0x1ffffe0,0xfffff00,0xf00000,0x7800000,0x3c000001,0xe000fff8, 2.4097 + 0x3c0f078,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x7fe001e,0xf03c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78000fc0, 2.4098 + 0x1e0007,0x80f1f000,0x780,0x3c00,0x1e000,0xf0000,0x780000,0x3c0001e,0x3c0f800,0x1e0003,0xc0f0001e,0x78000f0,0x3c000780,0x780000, 2.4099 + 0x3c00000,0x1e000000,0xf0000f00,0xf003c00,0x3c078003,0xe03c001f,0x1e000f8,0xf0007c0,0x78003e00,0x1e,0xf7803c,0x3c01e0,0x1e00f00, 2.4100 + 0xf007800,0x7803e00f,0x801e000f,0x80f803e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4101 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1,0xe0f0000f,0xff00001f,0x8000f87c,0x7800000,0x3c00,0x1e00,0x1c000,0x7fffff80, 2.4102 + 0x0,0x0,0x3,0xc0001e1f,0x83c0001e,0x1f,0x800000fe,0xf00780,0x7c0,0x7f001e00,0x3c0007,0xe03f003f,0x3fe0000,0x0,0x3fc00,0x0, 2.4103 + 0x7f,0x8001e000,0x781f00f0,0x1e00f003,0xc007e03c,0x1e0,0x3c03c0,0x1e00,0x3c00f,0xf81e0007,0x80007800,0x780,0x3f9f0000,0x7800001e, 2.4104 + 0xfe0f078,0x3c1e03c0,0x7807ff,0xff00f000,0x1e07fff8,0xfff8,0xf000,0xf0003c0,0xf81f003,0xc7bc7800,0xfe00000,0x78000003,0xe000003c, 2.4105 + 0x1e0,0x1e0,0x0,0x0,0x0,0x1fffc01,0xe000780f,0x1e0,0x780f00,0x1e0003c,0x3c000,0xf0078007,0x80003c00,0xf000,0x7bf0000,0x1e0000f, 2.4106 + 0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0xf8000,0x3c000,0x3c003c0,0x1f00f807,0x81f03c00,0x3fe0001e,0xf00000,0x7c00007c, 2.4107 + 0xf0,0x3e0,0x3ff801,0x80000000,0x7800000,0x3cfcf800,0x3,0xffff0000,0x0,0x18,0xc0,0x0,0x7c00,0x1fff00,0x700003,0xc00f0003, 2.4108 + 0xcfcf8000,0x3e0000f3,0xf3e0079f,0x9f000000,0xf000,0x1000,0x0,0x0,0x0,0x0,0x0,0x1f0,0x1,0xc00f0078,0xf03cfcf,0x800007c0,0x1e000, 2.4109 + 0x0,0x780001,0xe018001f,0xfff8001c,0xe00007,0x8000003c,0xf001,0xf0000000,0x6380000,0xc0000000,0xf81f003,0xfffffe00,0x303, 2.4110 + 0x87006000,0x0,0x1ffff,0xfe003ffe,0x7f00,0x0,0x3c003c0,0x3fe1c00,0x3f00000,0x7,0xffc00000,0xf8,0x1f0001ff,0xf0000fff,0x80007ffc, 2.4111 + 0xfc000,0x3c01e00,0x1e00f000,0xf0078007,0x803c003c,0x1e001e0,0xf001e07,0x8003c000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000, 2.4112 + 0x7800000,0x3c000001,0xe000fff8,0x3c0f078,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x3fc001e,0x1e03c0f0,0x3c0780, 2.4113 + 0x1e03c00,0xf01e000,0x78000780,0x1e0007,0x80f0fc00,0x3fff80,0x1fffc00,0xfffe000,0x7fff0003,0xfff8001f,0xffc0001e,0x3c0f000, 2.4114 + 0x1e0003,0xc0f0001e,0x78000f0,0x3c000780,0x780000,0x3c00000,0x1e000000,0xf0001e00,0xf803c00,0x3c078001,0xe03c000f,0x1e00078, 2.4115 + 0xf0003c0,0x78001e07,0xfffffe1e,0x1e7803c,0x3c01e0,0x1e00f00,0xf007800,0x7801e00f,0x1e0007,0x807803c0,0x0,0x0,0x0,0x0,0x0, 2.4116 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x3,0xc0f00007, 2.4117 + 0xffc0007e,0xf03e,0x7800000,0x3c00,0x1e00,0x1c000,0x7fffff80,0x0,0x0,0x3,0xc0001e1f,0x83c0001e,0x3f,0x3e,0xf00780,0x3c0,0x7e001e00, 2.4118 + 0x7c000f,0x800f001f,0xffde0000,0x0,0x3e000,0x0,0xf,0x8003e000,0x781e0070,0x1e00f003,0xc001f03c,0x1e0,0x3c03c0,0x1e00,0x3c00f, 2.4119 + 0xf81e0007,0x80007800,0x780,0x3f1f0000,0x7800001e,0x7c0f078,0x1e1e03c0,0x7807ff,0xfc00f000,0x1e07fffe,0xffc,0xf000,0xf0003c0, 2.4120 + 0x781e003,0xc71c7800,0x1ff00000,0x78000003,0xe000003c,0x1e0,0x1e0,0x0,0x0,0x0,0xffffc01,0xe000780f,0x1e0,0x780fff,0xffe0003c, 2.4121 + 0x3c000,0xf0078007,0x80003c00,0xf000,0x7ff0000,0x1e0000f,0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0x7f000,0x3c000, 2.4122 + 0x3c003c0,0xf00f007,0xc1f07c00,0x1fc0001f,0x1f00000,0xfc000ff8,0xf0,0x1ff,0xfffe07,0x80000000,0x7800000,0x7ffcfc00,0x0,0xf000000, 2.4123 + 0x0,0x18,0xc0,0x0,0x3e000,0x1ff80,0xe00003,0xc00f0007,0xffcfc000,0x3e0001ff,0xf3f00fff,0x9f800000,0x6000,0x0,0x0,0x7c000, 2.4124 + 0x0,0x0,0x0,0xfe,0x0,0xe00f007f,0xff07ffcf,0xc0000fc0,0x1e000,0x0,0x780001,0xe018001f,0xfff8001c,0xe00007,0x80000000,0xf800, 2.4125 + 0xf0000000,0x6380000,0xc0000000,0x1f03c000,0x1e00,0x303,0x83806000,0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xfe1c00,0x3f00000,0x0, 2.4126 + 0x0,0x3c,0xf801fff,0xfff8,0x7ffc0,0x1f8000,0x3c01e00,0x1e00f000,0xf0078007,0x803c003c,0x1e001e0,0xf003c07,0x8003c000,0x78000, 2.4127 + 0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x3c0f03c,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0, 2.4128 + 0x78000f00,0x1f8001e,0x1e03c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1e000f,0x80f0ff00,0x1ffff80,0xffffc00,0x7fffe003, 2.4129 + 0xffff001f,0xfff800ff,0xffc007ff,0xffc0f000,0x1fffff,0xc0fffffe,0x7fffff0,0x3fffff80,0x780000,0x3c00000,0x1e000000,0xf0001e00, 2.4130 + 0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e07,0xfffffe1e,0x3c7803c,0x3c01e0,0x1e00f00,0xf007800,0x7801f01f, 2.4131 + 0x1e0007,0x807c07c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4132 + 0x0,0x0,0x0,0x0,0x780000,0x3,0xc0f00000,0xfff003f0,0x1f00f03e,0x7800000,0x3c00,0x1e00,0x1c000,0x7fffff80,0x0,0x7ff80000,0x3, 2.4133 + 0xc0001e0f,0x3c0001e,0x7e,0x1f,0x1e00780,0x3e0,0x7e000f00,0x78000f,0x7800f,0xff9e0000,0x0,0x3fc00,0x0,0x7f,0x8003c000,0x781e0070, 2.4134 + 0x3e00f803,0xc000f03c,0x1e0,0x3c03c0,0x1e00,0x3c00f,0xf81e0007,0x80007800,0x780,0x3e0f8000,0x7800001e,0x7c0f078,0x1e1e03c0, 2.4135 + 0x7807ff,0xf000f000,0x1e07807f,0xfe,0xf000,0xf0003c0,0x781e003,0xc71c7800,0x3ef00000,0x78000007,0xc000003c,0x1e0,0x1e0,0x0, 2.4136 + 0x0,0x0,0x1ffffc01,0xe000780f,0x1e0,0x780fff,0xffe0003c,0x3c000,0xf0078007,0x80003c00,0xf000,0x7ff0000,0x1e0000f,0x3c0f01e, 2.4137 + 0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0x7ff80,0x3c000,0x3c003c0,0xf00f003,0xc1f07800,0x1fc0000f,0x1e00000,0xf8000ff0,0xf0, 2.4138 + 0xff,0xffffff,0x80000000,0x3fffc000,0xfff9fe00,0x0,0xf000000,0x0,0x18,0xc0,0x0,0x1f0000,0x1fc0,0x1c00003,0xc00f000f,0xff9fe000, 2.4139 + 0x7c0003ff,0xe7f81fff,0x3fc00000,0x0,0x0,0x0,0xfe000,0x1ffffc0f,0xfffffc00,0x0,0xff,0xf0000000,0x700f007f,0xff0fff9f,0xe0000f80, 2.4140 + 0x1e000,0x0,0x780001,0xe018001f,0xfff8001c,0xe00fff,0xffc00000,0xf800,0xf0000000,0x6380000,0xc0ffff80,0x3e078000,0x1e00,0x7ff80303, 2.4141 + 0x83c06000,0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x3f00000,0x0,0x7f,0xff00001e,0x7c1fff0,0xfff80,0x7ffc00,0x3f0000,0x7c01f00, 2.4142 + 0x3e00f801,0xf007c00f,0x803e007c,0x1f003e0,0xf803c07,0x8003c000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001, 2.4143 + 0xe0001e00,0x3c0f03c,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x1f8001e,0x3c03c0f0,0x3c0780,0x1e03c00,0xf01e000, 2.4144 + 0x78000780,0x1e001f,0xf07f80,0x3ffff80,0x1ffffc00,0xffffe007,0xffff003f,0xfff801ff,0xffc03fff,0xffc0f000,0x1fffff,0xc0fffffe, 2.4145 + 0x7fffff0,0x3fffff80,0x780000,0x3c00000,0x1e000000,0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e07, 2.4146 + 0xfffffe1e,0x787803c,0x3c01e0,0x1e00f00,0xf007800,0x7800f01e,0x1e0007,0x803c0780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4147 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1ff,0xffff8000,0x3ff80fc0,0x7fc1e01f, 2.4148 + 0x7800000,0x3c00,0x1e00,0x0,0x7fffff80,0x0,0x7ff80000,0x7,0x80001e00,0x3c0001e,0xfc,0xf,0x1e00780,0x1e0,0x7c000f00,0x78000f, 2.4149 + 0x78007,0xff1e0000,0x0,0x3ff00,0x0,0x1ff,0x8003c000,0x781e0070,0x3c007803,0xc000f03c,0x1e0,0x3c03c0,0x1e00,0x3c000,0x781e0007, 2.4150 + 0x80007800,0x780,0x3c07c000,0x7800001e,0x7c0f078,0xf1e03c0,0x780780,0xf000,0x1e07801f,0x3e,0xf000,0xf0003c0,0x781e003,0xcf1c7800, 2.4151 + 0x3cf80000,0x7800000f,0x8000003c,0xf0,0x1e0,0x0,0x0,0x0,0x3ffffc01,0xe000780f,0x1e0,0x780fff,0xffe0003c,0x3c000,0xf0078007, 2.4152 + 0x80003c00,0xf000,0x7ff8000,0x1e0000f,0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0x3fff0,0x3c000,0x3c003c0,0xf81f003, 2.4153 + 0xc3b87800,0xf80000f,0x1e00001,0xf0000ff0,0xf0,0xff,0xf03fff,0x80000000,0x3fff8001,0xfff1ff00,0x0,0xf000000,0x0,0x18,0xc0, 2.4154 + 0x0,0x380000,0x7c0,0x3c00003,0xc00f001f,0xff1ff000,0xf80007ff,0xc7fc3ffe,0x3fe00000,0x0,0x0,0x0,0x1ff000,0x7ffffe1f,0xffffff00, 2.4155 + 0x0,0x7f,0xfe000000,0x780f007f,0xff1fff1f,0xf0001f00,0x1e000,0x0,0x780001,0xe0180000,0xf000001c,0xe00fff,0xffc00000,0x7c00, 2.4156 + 0xf0000000,0x31c0001,0x80ffff80,0x3e078000,0x1e00,0x7ff80183,0x81c0c000,0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x3f00000, 2.4157 + 0x0,0x7f,0xff00001e,0x7c7ff03,0xc03ff8fe,0x1ffc0f0,0x7e0000,0x7800f00,0x3c007801,0xe003c00f,0x1e0078,0xf003c0,0x7803c07,0x8003c000, 2.4158 + 0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x3c0f01e,0x3c078000,0xf03c0007,0x81e0003c, 2.4159 + 0xf0001e0,0x78000f00,0x3fc001e,0x7803c0f0,0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1e007f,0xf03fe0,0x7ffff80,0x3ffffc01, 2.4160 + 0xffffe00f,0xffff007f,0xfff803ff,0xffc07fff,0xffc0f000,0x1fffff,0xc0fffffe,0x7fffff0,0x3fffff80,0x780000,0x3c00000,0x1e000000, 2.4161 + 0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e07,0xfffffe1e,0x707803c,0x3c01e0,0x1e00f00,0xf007800, 2.4162 + 0x7800f01e,0x1e0007,0x803c0780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4163 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1ff,0xffff8000,0x30f81f00,0xffe1e00f,0x87800000,0x3c00,0x1e00,0x0,0x1e0000,0x0,0x7ff80000, 2.4164 + 0x7,0x80001e00,0x3c0001e,0x1f8,0x7,0x83c00780,0x1e0,0x7c000f00,0xf8001e,0x3c001,0xfc1e0000,0x0,0x7fe0,0x0,0xffc,0x3c000,0x781e0070, 2.4165 + 0x3ffff803,0xc000783c,0x1e0,0x3c03c0,0x1e00,0x3c000,0x781e0007,0x80007800,0x780,0x3c07c000,0x7800001e,0x380f078,0xf1e03c0, 2.4166 + 0x780780,0xf000,0x1e07800f,0x8000001e,0xf000,0xf0003c0,0x3c3c003,0xcf1e7800,0x7c780000,0x7800000f,0x8000003c,0xf0,0x1e0,0x0, 2.4167 + 0x0,0x0,0x7f003c01,0xe000780f,0x1e0,0x780fff,0xffe0003c,0x3c000,0xf0078007,0x80003c00,0xf000,0x7f7c000,0x1e0000f,0x3c0f01e, 2.4168 + 0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0xfff8,0x3c000,0x3c003c0,0x781e003,0xc3b87800,0x1fc00007,0x83e00003,0xe0000ff8,0xf0, 2.4169 + 0x1ff,0xc007fe,0x0,0x7fff8001,0xffe3ff00,0x0,0x1e000000,0x0,0x18,0xc0,0x0,0x0,0x3c0,0x7800003,0xc00f001f,0xfe3ff000,0xf80007ff, 2.4170 + 0x8ffc3ffc,0x7fe00000,0x0,0x0,0x0,0x1ff000,0x0,0x0,0x0,0x1f,0xff000000,0x3c0f007f,0xff1ffe3f,0xf0003e00,0x1e000,0x0,0x780001, 2.4171 + 0xe0180000,0xf000001e,0x1e00fff,0xffc00000,0x3f00,0xf0000000,0x31c0001,0x80ffff80,0x1f03c000,0x1e00,0x7ff80183,0x81c0c000, 2.4172 + 0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x0,0x0,0x7f,0xff00003c,0xf87f007,0xc03f83ff,0x81fc01f0,0x7c0000,0x7ffff00,0x3ffff801, 2.4173 + 0xffffc00f,0xfffe007f,0xfff003ff,0xff807fff,0x8003c000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001, 2.4174 + 0xe0001e00,0x3c0f01e,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0x7fe001e,0xf003c0f0,0x3c0780,0x1e03c00,0xf01e000, 2.4175 + 0x78000780,0x1ffffe,0xf00ff0,0xfe00780,0x7f003c03,0xf801e01f,0xc00f00fe,0x7807f0,0x3c0ffff,0xffc0f000,0x1fffff,0xc0fffffe, 2.4176 + 0x7fffff0,0x3fffff80,0x780000,0x3c00000,0x1e000000,0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e00, 2.4177 + 0x1e,0xf07803c,0x3c01e0,0x1e00f00,0xf007800,0x7800783e,0x1e0007,0x801e0f80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4178 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1ff,0xffff8000,0x307c0801,0xe1f1e00f,0x87000000, 2.4179 + 0x3c00,0x1e00,0x0,0x1e0000,0x0,0x7ff80000,0xf,0x1e00,0x3c0001e,0x3f0,0x7,0x83fffffc,0x1e0,0x7c000f00,0xf0001e,0x3c000,0x3e0000, 2.4180 + 0x0,0x1ffc,0x1fffff,0xf0007ff0,0x3c000,0x781e0070,0x7ffffc03,0xc000781e,0x1e0,0x7803c0,0x1e00,0x3c000,0x781e0007,0x80007800, 2.4181 + 0x780,0x3c03e000,0x7800001e,0xf078,0x79e03c0,0x780780,0xf000,0x1e078007,0x8000000f,0xf000,0xf0003c0,0x3c3c001,0xee0ef000, 2.4182 + 0xf87c0000,0x7800001f,0x3c,0x78,0x1e0,0x0,0x0,0x0,0x7c003c01,0xe000780f,0x1e0,0x780f00,0x3c,0x3c000,0xf0078007,0x80003c00, 2.4183 + 0xf000,0x7e3e000,0x1e0000f,0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0x1ffc,0x3c000,0x3c003c0,0x781e003,0xe3b8f800, 2.4184 + 0x1fc00007,0x83c00007,0xc00000fc,0xf0,0x3e0,0x8001f8,0x0,0x7800000,0xffc7fe00,0x0,0x1e000000,0x0,0x18,0xc0,0x0,0x0,0x1e0, 2.4185 + 0xf000003,0xc00f000f,0xfc7fe001,0xf00003ff,0x1ff81ff8,0xffc00000,0x0,0x0,0x0,0x1ff000,0x0,0x0,0x0,0x3,0xff800000,0x1e0f0078, 2.4186 + 0xffc7f,0xe0007c00,0x1e000,0x0,0x780001,0xe0180000,0xf000000e,0x1c00007,0x80000000,0x1f81,0xe0000000,0x38e0003,0x80000000, 2.4187 + 0xf81f000,0x1e00,0x7ff801c3,0x80e1c000,0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x0,0x0,0x0,0xf8,0x1f070007,0xc03803ff,0xc1c001f0, 2.4188 + 0xf80000,0xfffff00,0x7ffff803,0xffffc01f,0xfffe00ff,0xfff007ff,0xffc07fff,0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000, 2.4189 + 0xf00000,0x7800000,0x3c000001,0xe0001e00,0x780f00f,0x3c078000,0xf03c0007,0x81e0003c,0xf0001e0,0x78000f00,0xf9f001e,0xf003c0f0, 2.4190 + 0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1ffffc,0xf003f8,0xf800780,0x7c003c03,0xe001e01f,0xf00f8,0x7807c0,0x3c0fc1e,0xf000, 2.4191 + 0x1e0000,0xf00000,0x7800000,0x3c000000,0x780000,0x3c00000,0x1e000000,0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078, 2.4192 + 0xf0003c0,0x78001e00,0x1e,0x1e07803c,0x3c01e0,0x1e00f00,0xf007800,0x7800783c,0x1e0007,0x801e0f00,0x0,0x0,0x0,0x0,0x0,0x0, 2.4193 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff,0xffff8000,0x303c0001, 2.4194 + 0xc071e007,0xcf000000,0x3c00,0x1e00,0x0,0x1e0000,0x0,0x0,0xf,0xf00,0x780001e,0x7e0,0x7,0x83fffffc,0x1e0,0x7c000f00,0x1f0001e, 2.4195 + 0x3c000,0x3c0000,0x0,0x3ff,0x801fffff,0xf003ff80,0x3c000,0x781e0070,0x7ffffc03,0xc000781e,0x1e0,0x7803c0,0x1e00,0x1e000,0x781e0007, 2.4196 + 0x80007800,0x780,0x3c01f000,0x7800001e,0xf078,0x79e03c0,0xf00780,0xf000,0x3e078007,0xc000000f,0xf000,0xf0003c0,0x3c3c001, 2.4197 + 0xee0ef000,0xf03e0000,0x7800003e,0x3c,0x78,0x1e0,0x0,0x0,0x0,0xf8003c01,0xe000780f,0x1e0,0x780f00,0x3c,0x3c000,0xf0078007, 2.4198 + 0x80003c00,0xf000,0x7c3e000,0x1e0000f,0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0xfc,0x3c000,0x3c003c0,0x3c3e001,0xe7b8f000, 2.4199 + 0x3fe00007,0xc7c0000f,0xc000003e,0xf0,0x7c0,0x0,0x0,0x7c00000,0x7fcffc00,0x0,0x1e000000,0x0,0x18,0xc0,0x0,0x0,0x1e0,0x1e000003, 2.4200 + 0xc00f0007,0xfcffc003,0xe00001ff,0x3ff00ff9,0xff800000,0x0,0x0,0x0,0x1ff000,0x0,0x0,0x0,0x0,0x1f800000,0xf0f0078,0x7fcff, 2.4201 + 0xc000fc00,0x1e000,0x0,0x780001,0xe0180000,0xf000000f,0x87c00007,0x80000000,0xfe3,0xe0000000,0x18780c3,0x0,0x7c0f800,0x1e00, 2.4202 + 0xc3,0x80e18000,0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x0,0x0,0x0,0x1f0,0x3e00000f,0xc0000303,0xe00003f0,0xf00000,0xfffff80, 2.4203 + 0x7ffffc03,0xffffe01f,0xffff00ff,0xfff807ff,0xffc07fff,0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000, 2.4204 + 0x3c000001,0xe0001e00,0x780f00f,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e00,0x1f0f801f,0xe00780f0,0x3c0780,0x1e03c00, 2.4205 + 0xf01e000,0x78000780,0x1ffff8,0xf000f8,0x1f000780,0xf8003c07,0xc001e03e,0xf01f0,0x780f80,0x3c1f01e,0xf000,0x1e0000,0xf00000, 2.4206 + 0x7800000,0x3c000000,0x780000,0x3c00000,0x1e000000,0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e00, 2.4207 + 0x1e,0x3c07803c,0x3c01e0,0x1e00f00,0xf007800,0x78007c7c,0x1e0007,0x801f1f00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4208 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x81c00000,0x303c0003,0x8039e003,0xef000000, 2.4209 + 0x3c00,0x1e00,0x0,0x1e0000,0x0,0x0,0x1e,0xf00,0x780001e,0xfc0,0x7,0x83fffffc,0x1e0,0x3c000f00,0x1e0001e,0x3c000,0x3c0000, 2.4210 + 0x0,0x7f,0xe01fffff,0xf00ffc00,0x3c000,0x781f00f0,0x7ffffc03,0xc000781e,0x1e0,0x7803c0,0x1e00,0x1e000,0x781e0007,0x80007800, 2.4211 + 0x780,0x3c01f000,0x7800001e,0xf078,0x7de01e0,0xf00780,0x7800,0x3c078003,0xc000000f,0xf000,0xf0003c0,0x3e7c001,0xee0ef001, 2.4212 + 0xf01e0000,0x7800003e,0x3c,0x3c,0x1e0,0x0,0x0,0x0,0xf0003c01,0xe000780f,0x1e0,0x780f00,0x3c,0x3c000,0xf0078007,0x80003c00, 2.4213 + 0xf000,0x781f000,0x1e0000f,0x3c0f01e,0x1e03c0,0xf00780,0x1e0f000,0x3c003c00,0x3e,0x3c000,0x3c003c0,0x3c3c001,0xe71cf000,0x7df00003, 2.4214 + 0xc780000f,0x8000003e,0xf0,0x780,0x0,0x0,0x3c00000,0x3fcff800,0x0,0x1e000000,0x0,0x18,0xc0,0x0,0x1f00fc,0x1e0,0x1e000001, 2.4215 + 0xe00f0003,0xfcff8003,0xe00000ff,0x3fe007f9,0xff000000,0x0,0x0,0x0,0x1ff000,0x0,0x0,0x0,0x0,0x7c00000,0xf0f0078,0x3fcff,0x8000f800, 2.4216 + 0x1e000,0x0,0x780001,0xe0180000,0xf000001f,0xffe00007,0x8000003c,0x7ff,0xc0000000,0x1c3ffc7,0x0,0x3e07c00,0x1e00,0xe3,0x80738000, 2.4217 + 0x0,0x78,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x0,0x0,0x0,0x3e0,0x7c00001d,0xc0000001,0xe0000770,0x1f00000,0xfffff80,0x7ffffc03, 2.4218 + 0xffffe01f,0xffff00ff,0xfff807ff,0xffc07fff,0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001, 2.4219 + 0xe0001e00,0x780f00f,0x3c03c001,0xe01e000f,0xf00078,0x78003c0,0x3c001e00,0x3e07c01f,0xc00780f0,0x3c0780,0x1e03c00,0xf01e000, 2.4220 + 0x78000780,0x1fffc0,0xf0007c,0x1e000780,0xf0003c07,0x8001e03c,0xf01e0,0x780f00,0x3c1e01e,0xf000,0x1e0000,0xf00000,0x7800000, 2.4221 + 0x3c000000,0x780000,0x3c00000,0x1e000000,0xf0001e00,0x7803c00,0x3c078001,0xe03c000f,0x1e00078,0xf0003c0,0x78001e00,0x1e,0x7807803c, 2.4222 + 0x3c01e0,0x1e00f00,0xf007800,0x78003c78,0x1e0007,0x800f1e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4223 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x83c00000,0x303c0003,0x8039e001,0xee000000,0x1e00,0x3c00, 2.4224 + 0x0,0x1e0000,0x0,0x0,0x1e,0xf00,0x780001e,0x1f80,0x7,0x83fffffc,0x1e0,0x3c000f00,0x1e0001e,0x3c000,0x3c0000,0x0,0x1f,0xfc1fffff, 2.4225 + 0xf07ff000,0x0,0x780f00f0,0x78003c03,0xc000781e,0x1e0,0xf803c0,0x1e00,0x1e000,0x781e0007,0x80007800,0x780,0x3c00f800,0x7800001e, 2.4226 + 0xf078,0x3de01e0,0xf00780,0x7800,0x3c078003,0xe000000f,0xf000,0xf0003c0,0x1e78001,0xfe0ff003,0xe01f0000,0x7800007c,0x3c,0x3c, 2.4227 + 0x1e0,0x0,0x0,0x0,0xf0007c01,0xe000f80f,0x800001e0,0xf80f00,0x3c,0x1e001,0xf0078007,0x80003c00,0xf000,0x780f800,0x1e0000f, 2.4228 + 0x3c0f01e,0x1e03c0,0x1f00780,0x3e0f000,0x7c003c00,0x1e,0x3c000,0x3c003c0,0x3c3c001,0xe71cf000,0xf8f80003,0xe780001f,0x1e, 2.4229 + 0xf0,0x780,0x0,0x0,0x3c00000,0x1ffff000,0x0,0x1e000000,0x0,0x18,0xc0,0x0,0x3bc1de,0x1e0,0xf000001,0xe00f0001,0xffff0007,0xc000007f, 2.4230 + 0xffc003ff,0xfe000000,0x0,0x0,0x0,0xfe000,0x0,0x0,0x0,0x0,0x3c00000,0x1e0f0078,0x1ffff,0x1f000,0x1e000,0x0,0x780000,0xf0180000, 2.4231 + 0xf000001f,0xfff00007,0x8000003c,0x1ff,0x80000000,0xe0ff0e,0x0,0x1f03e00,0x1e00,0x70,0x70000,0x0,0x78,0x0,0x0,0x0,0x3c003c0, 2.4232 + 0xe1c00,0x0,0x0,0x0,0x7c0,0xf8000019,0xc0000000,0xe0000670,0x1e00000,0xf000780,0x78003c03,0xc001e01e,0xf00f0,0x780780,0x3c0f807, 2.4233 + 0x8001e000,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0xf80f007,0xbc03c001,0xe01e000f, 2.4234 + 0xf00078,0x78003c0,0x3c001e00,0x7c03e00f,0x800780f0,0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1e0000,0xf0003c,0x1e000f80, 2.4235 + 0xf0007c07,0x8003e03c,0x1f01e0,0xf80f00,0x7c1e01e,0xf800,0x1e0000,0xf00000,0x7800000,0x3c000000,0x780000,0x3c00000,0x1e000000, 2.4236 + 0xf0001e00,0x7803c00,0x3c078003,0xe03c001f,0x1e000f8,0xf0007c0,0x78003e00,0x1f8001f,0xf00f803c,0x3c01e0,0x1e00f00,0xf007800, 2.4237 + 0x78003e78,0x1e000f,0x800f9e00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4238 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x3c00000,0x303c0003,0x8039f001,0xfe000000,0x1e00,0x3c00,0x0,0x1e0000,0x0,0x0,0x3c,0xf00, 2.4239 + 0x780001e,0x3f00,0x7,0x80000780,0x3e0,0x3e000f00,0x3c0001e,0x3c000,0x7c0000,0x0,0x3,0xfe000000,0xff8000,0x0,0x3c0f81f0,0xf0001e03, 2.4240 + 0xc000780f,0x1e0,0xf003c0,0x1e00,0xf000,0x781e0007,0x80007800,0x780,0x3c007c00,0x7800001e,0xf078,0x3de01e0,0xf00780,0x7800, 2.4241 + 0x3c078001,0xe000000f,0xf000,0xf0003c0,0x1e78001,0xfc07f003,0xe00f0000,0x78000078,0x3c,0x1e,0x1e0,0x0,0x0,0x0,0xf0007c01, 2.4242 + 0xf000f007,0x800000f0,0xf80780,0x3c,0x1e001,0xf0078007,0x80003c00,0xf000,0x7807c00,0x1e0000f,0x3c0f01e,0x1e01e0,0x1e007c0, 2.4243 + 0x3c07800,0x7c003c00,0x1e,0x3c000,0x3c007c0,0x1e78001,0xe71df000,0xf8f80001,0xef80003e,0x1e,0xf0,0x780,0x0,0x0,0x3c00000, 2.4244 + 0xfffe000,0x0,0x3e000000,0x0,0x18,0x7fff,0xc0000000,0x60c306,0x1e0,0x7800001,0xe00f0000,0xfffe0007,0x8000003f,0xff8001ff, 2.4245 + 0xfc000000,0x0,0x0,0x0,0x7c000,0x0,0x0,0x0,0x0,0x3c00000,0x3c0f0078,0xfffe,0x3e000,0x1e000,0x0,0x780000,0xf0180000,0xf000003c, 2.4246 + 0xfcf80007,0x8000003c,0x7f,0x0,0x70001c,0x0,0xf81f00,0x0,0x38,0xe0000,0x0,0x0,0x0,0x0,0x0,0x3c003c0,0xe1c00,0x0,0x0,0x0,0xf81, 2.4247 + 0xf0000039,0xc0000000,0xe0000e70,0x1e00000,0x1e0003c0,0xf0001e07,0x8000f03c,0x781e0,0x3c0f00,0x1e0f007,0x8000f000,0x78000, 2.4248 + 0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0xf00f007,0xbc03c001,0xe01e000f,0xf00078,0x78003c0, 2.4249 + 0x3c001e00,0xf801f00f,0x800780f0,0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1e0000,0xf0003c,0x1e000f80,0xf0007c07,0x8003e03c, 2.4250 + 0x1f01e0,0xf80f00,0x7c1e01e,0x7800,0xf0000,0x780000,0x3c00000,0x1e000000,0x780000,0x3c00000,0x1e000000,0xf0000f00,0xf003c00, 2.4251 + 0x3c03c003,0xc01e001e,0xf000f0,0x7800780,0x3c003c00,0x1f8000f,0xe00f003c,0x7c01e0,0x3e00f00,0x1f007800,0xf8001ef8,0x1f000f, 2.4252 + 0x7be00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4253 + 0x0,0x0,0xf,0x3c00000,0x307c0003,0x8038f000,0xfc000000,0x1e00,0x3c00,0x0,0x1e0000,0xfc0000,0x0,0x7e00003c,0x780,0xf00001e, 2.4254 + 0x7e00,0xf,0x80000780,0x3c0,0x3e001e00,0x3c0001f,0x7c000,0x780007,0xe000003f,0x0,0xfe000000,0xfe0000,0x0,0x3c07c3f0,0xf0001e03, 2.4255 + 0xc000f80f,0x800001e0,0x1f003c0,0x1e00,0xf000,0x781e0007,0x80007800,0x4000f80,0x3c003c00,0x7800001e,0xf078,0x1fe01f0,0x1f00780, 2.4256 + 0x7c00,0x7c078001,0xf000001f,0xf000,0xf0003c0,0x1e78001,0xfc07f007,0xc00f8000,0x780000f8,0x3c,0x1e,0x1e0,0x0,0x0,0x0,0xf0007c01, 2.4257 + 0xf000f007,0xc00000f0,0xf80780,0x3c,0x1f003,0xf0078007,0x80003c00,0xf000,0x7807c00,0x1e0000f,0x3c0f01e,0x1e01e0,0x1e007c0, 2.4258 + 0x3c07800,0x7c003c00,0x1e,0x3c000,0x3c007c0,0x1e78000,0xfe0fe001,0xf07c0001,0xef00007c,0x1e,0xf0,0x780,0x0,0x0,0x1e00000, 2.4259 + 0x7cfc000,0xfc00000,0x3c00000f,0xc3f00000,0x18,0x7fff,0xc0000000,0x406303,0x3e0,0x3c00001,0xf00f0000,0x7cfc000f,0x8000001f, 2.4260 + 0x3f0000f9,0xf8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x780700f8,0x7cfc,0x7c000,0x1e000,0x0,0x780000,0xf8180000, 2.4261 + 0xf0000070,0x3c0007,0x8000003c,0x3f,0x80000000,0x3c0078,0x0,0x780f00,0x0,0x1e,0x3c0000,0x0,0x0,0x0,0x0,0x0,0x3e007c0,0xe1c00, 2.4262 + 0x0,0x0,0x0,0xf01,0xe0000071,0xc0000000,0xe0001c70,0x1e00000,0x1e0003c0,0xf0001e07,0x8000f03c,0x781e0,0x3c0f00,0x1e0f007, 2.4263 + 0x8000f800,0x78000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x1f00f003,0xfc03e003,0xe01f001f, 2.4264 + 0xf800f8,0x7c007c0,0x3e003e01,0xf000f80f,0xf00f0,0x3c0780,0x1e03c00,0xf01e000,0x78000780,0x1e0000,0xf0003c,0x1e000f80,0xf0007c07, 2.4265 + 0x8003e03c,0x1f01e0,0xf80f00,0x7c1e01e,0x7c00,0xf0000,0x780000,0x3c00000,0x1e000000,0x780000,0x3c00000,0x1e000000,0xf0000f00, 2.4266 + 0xf003c00,0x3c03c003,0xc01e001e,0xf000f0,0x7800780,0x3c003c00,0x1f8000f,0xc00f003c,0x7c01e0,0x3e00f00,0x1f007800,0xf8001ef0, 2.4267 + 0x1f000f,0x7bc00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4268 + 0x0,0x0,0x0,0x0,0x780000,0xf,0x3800040,0x30780003,0x8038f800,0x78000000,0x1e00,0x3c00,0x0,0x1e0000,0xfc0000,0x0,0x7e000078, 2.4269 + 0x780,0x1f00001e,0xfc00,0x20001f,0x780,0x80007c0,0x1f001e00,0x7c0000f,0x78000,0xf80007,0xe000003f,0x0,0x1e000000,0xf00000, 2.4270 + 0x3c000,0x3c03fff0,0xf0001e03,0xc001f007,0x800101e0,0x7e003c0,0x1e00,0x7800,0x781e0007,0x80007800,0x6000f00,0x3c003e00,0x7800001e, 2.4271 + 0xf078,0x1fe00f0,0x1e00780,0x3c00,0x78078000,0xf020001e,0xf000,0x7800780,0xff0001,0xfc07f00f,0x8007c000,0x780001f0,0x3c,0xf, 2.4272 + 0x1e0,0x0,0x0,0x0,0xf800fc01,0xf801f007,0xc00100f8,0x1f807c0,0x40003c,0xf807,0xf0078007,0x80003c00,0xf000,0x7803e00,0x1f0000f, 2.4273 + 0x3c0f01e,0x1e01f0,0x3e007e0,0x7c07c00,0xfc003c00,0x1e,0x3e000,0x3e007c0,0x1ff8000,0xfe0fe003,0xe03e0001,0xff0000fc,0x1e, 2.4274 + 0xf0,0x780,0x0,0x0,0x1f00080,0x3cf8000,0xfc00000,0x3c00001f,0x83f00000,0x18,0xc0,0x0,0xc06203,0x40003c0,0x1c00000,0xf80f0000, 2.4275 + 0x3cf8001f,0xf,0x3e000079,0xf0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x700780fc,0x3cf8,0xfc000,0x1e000,0x0,0x780000, 2.4276 + 0x7c180000,0xf0000020,0x100007,0x8000003c,0xf,0x80000000,0x1f01f0,0x0,0x380700,0x0,0xf,0x80f80000,0x0,0x0,0x0,0x0,0x0,0x3e007c0, 2.4277 + 0xe1c00,0x0,0x0,0x0,0xe01,0xc0000071,0xc0000001,0xc0001c70,0x1e00040,0x1e0003c0,0xf0001e07,0x8000f03c,0x781e0,0x3c0f00,0x1e0f007, 2.4278 + 0x80007800,0x10078000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e00,0x7e00f003,0xfc01e003,0xc00f001e, 2.4279 + 0x7800f0,0x3c00780,0x1e003c00,0xe000700f,0x800f0078,0x7803c0,0x3c01e00,0x1e00f000,0xf0000780,0x1e0000,0xf0003c,0x1f001f80, 2.4280 + 0xf800fc07,0xc007e03e,0x3f01f0,0x1f80f80,0xfc1e01f,0x7c00,0x100f8000,0x807c0004,0x3e00020,0x1f000100,0x780000,0x3c00000,0x1e000000, 2.4281 + 0xf0000f80,0x1f003c00,0x3c03e007,0xc01f003e,0xf801f0,0x7c00f80,0x3e007c00,0x1f8000f,0x801f003e,0x7c01f0,0x3e00f80,0x1f007c00, 2.4282 + 0xf8001ff0,0x1f801f,0x7fc00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4283 + 0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0xf,0x7800078,0x31f80001,0xc070fc00,0xfc000000,0x1e00,0x7c00,0x0,0x1e0000,0xfc0000,0x0,0x7e000078, 2.4284 + 0x7c0,0x1f00001e,0x1f000,0x38003f,0x780,0xe000f80,0x1f803e00,0x780000f,0x800f8000,0x1f00007,0xe000003f,0x0,0x2000000,0x800000, 2.4285 + 0x3c000,0x3e01ff71,0xf0001f03,0xc007f007,0xc00301e0,0x1fc003c0,0x1e00,0x7c00,0x781e0007,0x80007800,0x7801f00,0x3c001f00,0x7800001e, 2.4286 + 0xf078,0xfe00f8,0x3e00780,0x3e00,0xf8078000,0xf838003e,0xf000,0x7c00f80,0xff0000,0xfc07e00f,0x8003c000,0x780001e0,0x3c,0xf, 2.4287 + 0x1e0,0x0,0x0,0x0,0xf801fc01,0xfc03e003,0xe003007c,0x3f803e0,0x1c0003c,0xfc0f,0xf0078007,0x80003c00,0xf000,0x7801f00,0xf8000f, 2.4288 + 0x3c0f01e,0x1e00f8,0x7c007f0,0xf803e01,0xfc003c00,0x8003e,0x1f000,0x1e00fc0,0xff0000,0xfe0fe007,0xc01f0000,0xfe0000f8,0x1e, 2.4289 + 0xf0,0x780,0x0,0x0,0xf80180,0x1cf0000,0x1f800000,0x3c00001f,0x83e00000,0x18,0xc0,0x0,0xc06203,0x70007c0,0xe00000,0x7e0f0000, 2.4290 + 0x1cf0001e,0x7,0x3c000039,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x7c00000,0xe00780fc,0x2001cf0,0xf8000,0x1e000,0x0, 2.4291 + 0x780000,0x7e182000,0xf0000000,0x7,0x8000003c,0x7,0xc0000000,0x7ffc0,0x0,0x180300,0x0,0x3,0xffe00000,0x0,0x0,0x0,0x0,0x0, 2.4292 + 0x3f00fc0,0xe1c00,0x0,0x0,0x0,0xc01,0x800000e1,0xc0000003,0xc0003870,0x1f001c0,0x3e0003e1,0xf0001f0f,0x8000f87c,0x7c3e0,0x3e1f00, 2.4293 + 0x1f1e007,0x80007c00,0x30078000,0x3c0000,0x1e00000,0xf000000,0xf00000,0x7800000,0x3c000001,0xe0001e03,0xfc00f001,0xfc01f007, 2.4294 + 0xc00f803e,0x7c01f0,0x3e00f80,0x1f007c00,0x4000201f,0xc01f007c,0xf803e0,0x7c01f00,0x3e00f801,0xf0000780,0x1e0000,0xf0007c, 2.4295 + 0x1f003f80,0xf801fc07,0xc00fe03e,0x7f01f0,0x3f80f80,0x1fc1f03f,0x803e00,0x3007c003,0x803e001c,0x1f000e0,0xf800700,0x780000, 2.4296 + 0x3c00000,0x1e000000,0xf00007c0,0x3e003c00,0x3c01f00f,0x800f807c,0x7c03e0,0x3e01f00,0x1f00f800,0x1f80007,0xc03e001e,0xfc00f0, 2.4297 + 0x7e00780,0x3f003c01,0xf8000fe0,0x1fc03e,0x3f800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4298 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1e,0x780007f,0xfff00001,0xe0f07f03,0xfe000000,0xf00,0x7800,0x0, 2.4299 + 0x1e0000,0xfc0000,0x0,0x7e0000f0,0x3f0,0x7e000fff,0xfc03ffff,0xf83f00fe,0x780,0xfc03f80,0xfc0fc00,0xf800007,0xe03f0018,0x7e00007, 2.4300 + 0xe000003f,0x0,0x0,0x0,0x3c000,0x1e007c71,0xe0000f03,0xffffe003,0xf01f01ff,0xff8003ff,0xffe01e00,0x3f01,0xf81e0007,0x803ffff0, 2.4301 + 0x7e03f00,0x3c000f00,0x7ffffe1e,0xf078,0xfe007e,0xfc00780,0x1f83,0xf0078000,0x783f00fe,0xf000,0x3f03f00,0xff0000,0xfc07e01f, 2.4302 + 0x3e000,0x780003ff,0xfffc003c,0x7,0x800001e0,0x0,0x0,0x0,0x7e07fc01,0xfe07e001,0xf80f007e,0x7f801f8,0xfc0003c,0x7ffe,0xf0078007, 2.4303 + 0x807ffffe,0xf000,0x7801f00,0xfff00f,0x3c0f01e,0x1e00fc,0xfc007f8,0x1f803f03,0xfc003c00,0xf80fc,0x1fff0,0x1f83fc0,0xff0000, 2.4304 + 0xfc07e007,0xc01f0000,0xfe0001ff,0xffe0001e,0xf0,0x780,0x0,0x0,0xfe0780,0xfe0000,0x1f000000,0x3c00001f,0x7c00e03,0x81c00018, 2.4305 + 0xc0,0x0,0x406203,0x7e01fc0,0x700000,0x7fffff80,0xfe0003f,0xffffc003,0xf800001f,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f0, 2.4306 + 0x1f800001,0xc007c1fe,0x6000fe0,0x1ffffe,0x1e000,0x0,0x780000,0x3f98e03f,0xffff8000,0x7,0x8000003c,0x7,0xc0000000,0xfe00, 2.4307 + 0x0,0x80100,0x0,0x0,0x7f000000,0x0,0x1ffff,0xfe000000,0x0,0x0,0x3f83fe8,0xe1c00,0x0,0x0,0x0,0x801,0xc1,0xc0000007,0x80003070, 2.4308 + 0xfc0fc0,0x3c0001e1,0xe0000f0f,0x7878,0x3c3c0,0x1e1e00,0xf1e007,0xffc03f01,0xf007ffff,0xc03ffffe,0x1fffff0,0xfffff80,0x7fffe003, 2.4309 + 0xffff001f,0xfff800ff,0xffc01fff,0xf800f001,0xfc00fc1f,0x8007e0fc,0x3f07e0,0x1f83f00,0xfc1f800,0x1f,0xf07e003f,0x3f001f8, 2.4310 + 0x1f800fc0,0xfc007e07,0xe0000780,0x1e0000,0xf301f8,0xfc0ff80,0x7e07fc03,0xf03fe01f,0x81ff00fc,0xff807e0,0x7fc0f87f,0x81801f80, 2.4311 + 0xf003f01f,0x801f80fc,0xfc07e0,0x7e03f00,0xfffffc07,0xffffe03f,0xffff01ff,0xfff807e0,0x7e003c00,0x3c01f81f,0x800fc0fc,0x7e07e0, 2.4312 + 0x3f03f00,0x1f81f800,0x1f8000f,0xe07e001f,0x83fc00fc,0x1fe007e0,0xff003f07,0xf8000fe0,0x1fe07e,0x3f800,0x0,0x0,0x0,0x0,0x0, 2.4313 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1e,0x780007f, 2.4314 + 0xffe00000,0xffe03fff,0xdf000000,0xf00,0x7800,0x0,0x0,0xfc0000,0x0,0x7e0000f0,0x1ff,0xfc000fff,0xfc03ffff,0xf83ffffc,0x780, 2.4315 + 0xfffff00,0x7fff800,0xf000007,0xffff001f,0xffe00007,0xe000003f,0x0,0x0,0x0,0x3c000,0x1e000001,0xe0000f03,0xffffc001,0xffff01ff, 2.4316 + 0xff0003ff,0xffe01e00,0x1fff,0xf81e0007,0x803ffff0,0x7fffe00,0x3c000f80,0x7ffffe1e,0xf078,0xfe003f,0xff800780,0xfff,0xf0078000, 2.4317 + 0x7c3ffffc,0xf000,0x3ffff00,0xff0000,0xf803e01e,0x1e000,0x780003ff,0xfffc003c,0x7,0x800001e0,0x0,0x0,0x0,0x7fffbc01,0xffffc000, 2.4318 + 0xffff003f,0xfff800ff,0xffc0003c,0x3ffe,0xf0078007,0x807ffffe,0xf000,0x7800f80,0x7ff00f,0x3c0f01e,0x1e007f,0xff8007ff,0xff001fff, 2.4319 + 0xbc003c00,0xffffc,0x1fff0,0x1fffbc0,0xff0000,0x7c07c00f,0x800f8000,0x7e0001ff,0xffe0001e,0xf0,0x780,0x0,0x0,0x7fff80,0x7c0000, 2.4320 + 0x1f000000,0x3c00001e,0x7c00f07,0xc1e00018,0xc0,0x0,0x60e303,0x7ffff80,0x380000,0x3fffff80,0x7c0003f,0xffffc001,0xf000000f, 2.4321 + 0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff,0xff800003,0x8003ffff,0xfe0007c0,0x1ffffe,0x1e000,0x0,0x780000,0x1fffe03f,0xffff8000, 2.4322 + 0x7,0x8000003c,0x3,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ffff,0xfe000000,0x0,0x0,0x3fffdf8,0xe1c00,0x0,0x0,0x0,0x0,0x1c1, 2.4323 + 0xc000000f,0x7070,0x7fffc0,0x3c0001e1,0xe0000f0f,0x7878,0x3c3c0,0x1e1e00,0xf1e007,0xffc01fff,0xf007ffff,0xc03ffffe,0x1fffff0, 2.4324 + 0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01fff,0xf000f001,0xfc007fff,0x3fff8,0x1fffc0,0xfffe00,0x7fff000,0x3b,0xfffc003f, 2.4325 + 0xfff001ff,0xff800fff,0xfc007fff,0xe0000780,0x1e0000,0xf3fff8,0xffff780,0x7fffbc03,0xfffde01f,0xffef00ff,0xff7807ff,0xfbc0ffff, 2.4326 + 0xff800fff,0xf001ffff,0x800ffffc,0x7fffe0,0x3ffff00,0xfffffc07,0xffffe03f,0xffff01ff,0xfff803ff,0xfc003c00,0x3c00ffff,0x7fff8, 2.4327 + 0x3fffc0,0x1fffe00,0xffff000,0x1f,0xfffc001f,0xffbc00ff,0xfde007ff,0xef003fff,0x780007e0,0x1ffffc,0x1f800,0x0,0x0,0x0,0x0, 2.4328 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1e,0x700003f, 2.4329 + 0xffc00000,0x7fc01fff,0x9f800000,0xf80,0xf800,0x0,0x0,0xfc0000,0x0,0x7e0000f0,0xff,0xf8000fff,0xfc03ffff,0xf83ffff8,0x780, 2.4330 + 0xffffe00,0x7fff000,0xf000003,0xfffe001f,0xffc00007,0xe000003f,0x0,0x0,0x0,0x3c000,0xf000003,0xe0000f83,0xffff0000,0xffff01ff, 2.4331 + 0xfc0003ff,0xffe01e00,0xfff,0xf01e0007,0x803ffff0,0x7fffc00,0x3c0007c0,0x7ffffe1e,0xf078,0x7e003f,0xff000780,0x7ff,0xe0078000, 2.4332 + 0x3c3ffff8,0xf000,0x1fffe00,0x7e0000,0xf803e03e,0x1f000,0x780003ff,0xfffc003c,0x7,0x800001e0,0x0,0x0,0x0,0x3fff3c01,0xefff8000, 2.4333 + 0x7ffe001f,0xff78007f,0xff80003c,0x1ffc,0xf0078007,0x807ffffe,0xf000,0x78007c0,0x3ff00f,0x3c0f01e,0x1e003f,0xff0007bf,0xfe000fff, 2.4334 + 0xbc003c00,0xffff8,0xfff0,0xfff3c0,0x7e0000,0x7c07c01f,0x7c000,0x7c0001ff,0xffe0001e,0xf0,0x780,0x0,0x0,0x3fff80,0x380000, 2.4335 + 0x3e000000,0x7c00003e,0x7801f07,0xc1e00018,0xc0,0x0,0x39c1ce,0x7ffff00,0x1c0000,0xfffff80,0x380003f,0xffffc000,0xe0000007, 2.4336 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff,0xff000007,0x1ffcf,0xfe000380,0x1ffffe,0x1e000,0x0,0x780000,0xfffe03f,0xffff8000,0x7, 2.4337 + 0x8000003c,0x3,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ffff,0xfe000000,0x0,0x0,0x3dffdf8,0xe1c00,0x0,0x0,0x0,0x0,0x381, 2.4338 + 0xc000001e,0xe070,0x7fff80,0x7c0001f3,0xe0000f9f,0x7cf8,0x3e7c0,0x1f3e00,0xfbe007,0xffc00fff,0xf007ffff,0xc03ffffe,0x1fffff0, 2.4339 + 0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01fff,0xc000f000,0xfc007ffe,0x3fff0,0x1fff80,0xfffc00,0x7ffe000,0x79,0xfff8001f, 2.4340 + 0xffe000ff,0xff0007ff,0xf8003fff,0xc0000780,0x1e0000,0xf3fff0,0x7ffe780,0x3fff3c01,0xfff9e00f,0xffcf007f,0xfe7803ff,0xf3c07ff3, 2.4341 + 0xff8007ff,0xe000ffff,0x7fff8,0x3fffc0,0x1fffe00,0xfffffc07,0xffffe03f,0xffff01ff,0xfff801ff,0xf8003c00,0x3c007ffe,0x3fff0, 2.4342 + 0x1fff80,0xfffc00,0x7ffe000,0x1d,0xfff8000f,0xff3c007f,0xf9e003ff,0xcf001ffe,0x780007c0,0x1efff8,0x1f000,0x0,0x0,0x0,0x0, 2.4343 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780000,0x1e,0xf000003, 2.4344 + 0xfe000000,0x1f000fff,0xfc00000,0x780,0xf000,0x0,0x0,0xf80000,0x0,0x7e0001e0,0x7f,0xf0000fff,0xfc03ffff,0xf81ffff0,0x780, 2.4345 + 0x7fff800,0x1ffe000,0x1f000000,0xfff8001f,0xff000007,0xe000003e,0x0,0x0,0x0,0x3c000,0xf800003,0xc0000783,0xfff80000,0x3ffe01ff, 2.4346 + 0xe00003ff,0xffe01e00,0x7ff,0xc01e0007,0x803ffff0,0x3fff800,0x3c0003c0,0x7ffffe1e,0xf078,0x7e000f,0xfe000780,0x3ff,0xc0078000, 2.4347 + 0x3e1fffe0,0xf000,0x7ff800,0x7e0000,0xf803e07c,0xf800,0x780003ff,0xfffc003c,0x3,0xc00001e0,0x0,0x0,0x0,0xffe3c01,0xe7ff0000, 2.4348 + 0x3ffc000f,0xfe78003f,0xfe00003c,0x7f0,0xf0078007,0x807ffffe,0xf000,0x78003e0,0xff00f,0x3c0f01e,0x1e001f,0xfe00079f,0xfc0007ff, 2.4349 + 0x3c003c00,0x7ffe0,0x1ff0,0x7fe3c0,0x7e0000,0x7c07c03e,0x3e000,0x7c0001ff,0xffe0001e,0xf0,0x780,0x0,0x0,0xfff00,0x100000, 2.4350 + 0x3e000000,0x7800003c,0xf800f07,0xc1e00018,0xc0,0x0,0x1f80fc,0x3fffc00,0xc0000,0x3ffff80,0x100003f,0xffffc000,0x40000002, 2.4351 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xfc000006,0xff87,0xfc000100,0x1ffffe,0x1e000,0x0,0x780000,0x3ffc03f,0xffff8000,0x7, 2.4352 + 0x8000003c,0x3,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ffff,0xfe000000,0x0,0x0,0x3dff9f8,0xe1c00,0x0,0x0,0x0,0x0,0x3ff, 2.4353 + 0xf800003c,0xfffe,0x1ffe00,0x780000f3,0xc000079e,0x3cf0,0x1e780,0xf3c00,0x7bc007,0xffc003ff,0xe007ffff,0xc03ffffe,0x1fffff0, 2.4354 + 0xfffff80,0x7fffe003,0xffff001f,0xfff800ff,0xffc01ffc,0xf000,0xfc001ffc,0xffe0,0x7ff00,0x3ff800,0x1ffc000,0x70,0xfff00007, 2.4355 + 0xff80003f,0xfc0001ff,0xe0000fff,0x780,0x1e0000,0xf3ffe0,0x1ffc780,0xffe3c00,0x7ff1e003,0xff8f001f,0xfc7800ff,0xe3c03fe1, 2.4356 + 0xff0003ff,0xc0007ffc,0x3ffe0,0x1fff00,0xfff800,0xfffffc07,0xffffe03f,0xffff01ff,0xfff800ff,0xf0003c00,0x3c003ffc,0x1ffe0, 2.4357 + 0xfff00,0x7ff800,0x3ffc000,0x38,0xfff00007,0xfe3c003f,0xf1e001ff,0x8f000ffc,0x780007c0,0x1e7ff0,0x1f000,0x0,0x0,0x0,0x0,0x0, 2.4358 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000, 2.4359 + 0x1fc,0x0,0x780,0xf000,0x0,0x0,0x1f80000,0x0,0x1e0,0x1f,0xc0000000,0x0,0x1ff80,0x0,0xffc000,0x7f8000,0x0,0x3fe00007,0xfc000000, 2.4360 + 0x7e,0x0,0x0,0x0,0x0,0x7c00000,0x0,0x0,0xff00000,0x0,0x0,0xfe,0x0,0x0,0x3fc000,0x0,0x0,0x0,0x3,0xf8000000,0xff,0xc0000000, 2.4361 + 0x1ff00,0x0,0x1fe000,0x0,0x0,0x0,0x0,0x3c,0x3,0xc00001e0,0x0,0x0,0x0,0x3f80000,0x1fc0000,0x7f00003,0xf8000007,0xf0000000, 2.4362 + 0x0,0xf0000000,0x0,0xf000,0x0,0x0,0x0,0x7,0xf8000787,0xf00001fc,0x3c000000,0x7f80,0x0,0x1f8000,0x0,0x0,0x0,0x7c000000,0x1e, 2.4363 + 0xf0,0x780,0x0,0x0,0x3fc00,0x0,0x3c000000,0x7800003c,0xf000601,0xc00018,0xc0,0x0,0x0,0x3fe000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4364 + 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0000000,0x7e03,0xf0000000,0x0,0x0,0x0,0x0,0xfe0000,0x0,0x0,0x3c,0x2007,0x80000000,0x0,0x0, 2.4365 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c7e0f0,0xe1c00,0x0,0x3800000,0x0,0x0,0x3ff,0xf8000078,0xfffe,0x7f800,0x0,0x0,0x0,0x0, 2.4366 + 0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f0,0x3f80,0x1fc00,0xfe000,0x7f0000,0x70,0x3fc00001,0xfe00000f,0xf000007f, 2.4367 + 0x800003fc,0x0,0x0,0xff00,0x7f0000,0x3f80000,0x1fc00000,0xfe000007,0xf000003f,0x80001f80,0xfc00007f,0xfe0,0x7f00,0x3f800, 2.4368 + 0x1fc000,0x0,0x0,0x0,0x3f,0xc0000000,0xff0,0x7f80,0x3fc00,0x1fe000,0xff0000,0x78,0x3fc00001,0xf800000f,0xc000007e,0x3f0,0x7c0, 2.4369 + 0x1e1fc0,0x1f000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4370 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x0,0x0,0x3c0,0x1e000,0x0,0x0,0x1f00000,0x0,0x3c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4371 + 0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x3e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xe0000000,0x0,0x0,0x0, 2.4372 + 0x0,0x0,0x0,0x0,0x3c,0x1,0xe00001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0000000,0x0,0xf000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000, 2.4373 + 0x0,0x0,0x0,0x0,0x0,0x0,0x78000000,0x1e,0xf0,0x780,0x0,0x0,0x0,0x0,0x3c000000,0x78000078,0xf000000,0x18,0xc0,0x0,0x0,0x0, 2.4374 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x3c,0x3c0f,0x80000000, 2.4375 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0xe1c00,0x0,0x1800000,0x0,0x0,0x3ff,0xf80000f0,0xfffe,0x0,0x0,0x0,0x0, 2.4376 + 0x0,0x0,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4377 + 0x0,0x0,0xc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x0,0x0,0x0,0x0,0x780,0x1e0000,0x1e000,0x0,0x0,0x0, 2.4378 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000, 2.4379 + 0x0,0x0,0x3c0,0x1e000,0x0,0x0,0x1f00000,0x0,0x3c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x1f80000, 2.4380 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x1,0xe00001e0,0x0, 2.4381 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xe0000000,0x0,0xf000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x0,0xf8000000, 2.4382 + 0x1f,0xf0,0xf80,0x0,0x0,0x0,0x0,0x78000000,0xf8000078,0x1e000000,0x8,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4383 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x3c,0x3fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4384 + 0x0,0x3c00000,0xe1c00,0x0,0x1c00000,0x0,0x0,0x1,0xc00001e0,0x70,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4385 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4386 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf80,0x1e0000,0x3e000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4387 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x0,0x0,0x1e0,0x3c000,0x0,0x0,0x1f00000, 2.4388 + 0x0,0x780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0xfe0100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4389 + 0x0,0x0,0x0,0x0,0xf8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0000000,0xf0007fe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xe0000000, 2.4390 + 0x0,0xf000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x0,0xf0000000,0x1f,0x800000f0,0x1f80,0x0,0x0,0x0,0x0, 2.4391 + 0x78000000,0xf0000070,0x1c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4392 + 0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x3c,0x3ffe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0xe1c00,0x0,0xe00000, 2.4393 + 0x0,0x0,0x1,0xc00003ff,0xe0000070,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4394 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4395 + 0x0,0x0,0x0,0xf00,0x1e0000,0x3c000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4396 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x0,0x0,0x1e0,0x7c000,0x0,0x0,0x1e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4397 + 0x0,0x0,0x0,0x0,0x0,0x78,0x0,0x0,0x0,0x0,0x7fff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78000000, 2.4398 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0000000,0x7fe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4003,0xe0000000,0x0,0x1f000,0x0,0x0, 2.4399 + 0x0,0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x1,0xf0000000,0xf,0xfc0000f0,0x3ff00,0x0,0x0,0x0,0x0,0x70000001,0xf00000e0, 2.4400 + 0x1c000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000, 2.4401 + 0x0,0x0,0x3c,0xff8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0xe1c00,0x0,0xe00000,0x0,0x0,0x1,0xc00003ff, 2.4402 + 0xe0000070,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4403 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f00,0x1e0000, 2.4404 + 0x7c000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4405 + 0x0,0x0,0x0,0x0,0x30000000,0x0,0x0,0xf0,0x78000,0x0,0x0,0x3e00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf8,0x0, 2.4406 + 0x0,0x0,0x0,0x1fff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f, 2.4407 + 0xf0000000,0x7fe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780f,0xc0000000,0x0,0x3e000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0, 2.4408 + 0x0,0x0,0x0,0x0,0x3,0xe0000000,0xf,0xfc0000f0,0x3ff00,0x0,0x0,0x0,0x0,0xf0000103,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4409 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x3c,0x0,0x0,0x0,0x0,0x0,0x0, 2.4410 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x0,0x0,0x21e00000,0x0,0x0,0x1,0xc00003ff,0xe0000070,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10f, 2.4411 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10f,0x0, 2.4412 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3e00,0x1e0000,0xf8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4413 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x0,0x0, 2.4414 + 0xf8,0xf8000,0x0,0x0,0x3c00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x0,0x0,0x0,0x0,0x1fe00,0x0,0x0,0x0,0x0, 2.4415 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0000000,0x7fe0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4416 + 0x0,0x0,0x7fff,0xc0000000,0x0,0x3ffe000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0000000,0x7,0xfc0000f0, 2.4417 + 0x3fe00,0x0,0x0,0x0,0x0,0x600001ff,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4418 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x3c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x0,0x0, 2.4419 + 0x3fe00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4420 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4421 + 0x0,0x0,0x0,0x0,0x7fe00,0x1e0000,0x1ff8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4422 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4423 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4424 + 0x0,0x0,0x0,0x0,0x1fffffe0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fff,0x80000000,0x0,0x3ffc000,0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0, 2.4425 + 0x0,0x0,0x0,0x0,0x7f,0xc0000000,0x0,0xfc0000f0,0x3f000,0x0,0x0,0x0,0x0,0x1ff,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4426 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4427 + 0x0,0x0,0x0,0x0,0x0,0x3c00000,0x0,0x0,0x3fc00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fe,0x0,0x0,0x0,0x0,0x0, 2.4428 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fe,0x0,0x0,0x0,0x0,0x0,0x0, 2.4429 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fc00,0x1e0000,0x1ff0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4430 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4431 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4432 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fffffe0,0x0,0x0,0x0,0x0,0x0,0x0,0x3ffe,0x0,0x0,0x3ff8000,0x0,0x0,0x0, 2.4433 + 0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x7f,0x80000000,0x0,0xf0,0x0,0x0,0x0,0x0,0x0,0x1ff,0x80000000,0x0,0x0,0x0,0x0, 2.4434 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4435 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x0,0x0,0x3f800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fc,0x0, 2.4436 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fc,0x0,0x0, 2.4437 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f800,0x1e0000,0x1fe0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4438 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4439 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4440 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fffffe0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f8,0x0,0x0,0x3fe0000, 2.4441 + 0x0,0x0,0x0,0x0,0x780,0x0,0x3c000000,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0xf0,0x0,0x0,0x0,0x0,0x0,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 2.4442 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4443 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3c00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4444 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4445 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e000,0x1e0000,0x1f80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4446 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4447 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4448 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1fffffe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4449 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4450 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4451 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4452 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4453 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4454 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4455 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4456 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x0,0x0,0x0, 2.4457 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4458 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4459 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 2.4460 + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0 }; 2.4461 + 2.4462 + // Definition of a 40x38 'danger' color logo. 2.4463 + const unsigned char logo40x38[4576] = { 2.4464 + 177,200,200,200,3,123,123,0,36,200,200,200,1,123,123,0,2,255,255,0,1,189,189,189,1,0,0,0,34,200,200,200, 2.4465 + 1,123,123,0,4,255,255,0,1,189,189,189,1,0,0,0,1,123,123,123,32,200,200,200,1,123,123,0,5,255,255,0,1,0,0, 2.4466 + 0,2,123,123,123,30,200,200,200,1,123,123,0,6,255,255,0,1,189,189,189,1,0,0,0,2,123,123,123,29,200,200,200, 2.4467 + 1,123,123,0,7,255,255,0,1,0,0,0,2,123,123,123,28,200,200,200,1,123,123,0,8,255,255,0,1,189,189,189,1,0,0,0, 2.4468 + 2,123,123,123,27,200,200,200,1,123,123,0,9,255,255,0,1,0,0,0,2,123,123,123,26,200,200,200,1,123,123,0,10,255, 2.4469 + 255,0,1,189,189,189,1,0,0,0,2,123,123,123,25,200,200,200,1,123,123,0,3,255,255,0,1,189,189,189,3,0,0,0,1,189, 2.4470 + 189,189,3,255,255,0,1,0,0,0,2,123,123,123,24,200,200,200,1,123,123,0,4,255,255,0,5,0,0,0,3,255,255,0,1,189, 2.4471 + 189,189,1,0,0,0,2,123,123,123,23,200,200,200,1,123,123,0,4,255,255,0,5,0,0,0,4,255,255,0,1,0,0,0,2,123,123,123, 2.4472 + 22,200,200,200,1,123,123,0,5,255,255,0,5,0,0,0,4,255,255,0,1,189,189,189,1,0,0,0,2,123,123,123,21,200,200,200, 2.4473 + 1,123,123,0,5,255,255,0,5,0,0,0,5,255,255,0,1,0,0,0,2,123,123,123,20,200,200,200,1,123,123,0,6,255,255,0,5,0,0, 2.4474 + 0,5,255,255,0,1,189,189,189,1,0,0,0,2,123,123,123,19,200,200,200,1,123,123,0,6,255,255,0,1,123,123,0,3,0,0,0,1, 2.4475 + 123,123,0,6,255,255,0,1,0,0,0,2,123,123,123,18,200,200,200,1,123,123,0,7,255,255,0,1,189,189,189,3,0,0,0,1,189, 2.4476 + 189,189,6,255,255,0,1,189,189,189,1,0,0,0,2,123,123,123,17,200,200,200,1,123,123,0,8,255,255,0,3,0,0,0,8,255,255, 2.4477 + 0,1,0,0,0,2,123,123,123,16,200,200,200,1,123,123,0,9,255,255,0,1,123,123,0,1,0,0,0,1,123,123,0,8,255,255,0,1,189, 2.4478 + 189,189,1,0,0,0,2,123,123,123,15,200,200,200,1,123,123,0,9,255,255,0,1,189,189,189,1,0,0,0,1,189,189,189,9,255,255, 2.4479 + 0,1,0,0,0,2,123,123,123,14,200,200,200,1,123,123,0,11,255,255,0,1,0,0,0,10,255,255,0,1,189,189,189,1,0,0,0,2,123, 2.4480 + 123,123,13,200,200,200,1,123,123,0,23,255,255,0,1,0,0,0,2,123,123,123,12,200,200,200,1,123,123,0,11,255,255,0,1,189, 2.4481 + 189,189,2,0,0,0,1,189,189,189,9,255,255,0,1,189,189,189,1,0,0,0,2,123,123,123,11,200,200,200,1,123,123,0,11,255,255, 2.4482 + 0,4,0,0,0,10,255,255,0,1,0,0,0,2,123,123,123,10,200,200,200,1,123,123,0,12,255,255,0,4,0,0,0,10,255,255,0,1,189,189, 2.4483 + 189,1,0,0,0,2,123,123,123,9,200,200,200,1,123,123,0,12,255,255,0,1,189,189,189,2,0,0,0,1,189,189,189,11,255,255,0,1, 2.4484 + 0,0,0,2,123,123,123,9,200,200,200,1,123,123,0,27,255,255,0,1,0,0,0,3,123,123,123,8,200,200,200,1,123,123,0,26,255, 2.4485 + 255,0,1,189,189,189,1,0,0,0,3,123,123,123,9,200,200,200,1,123,123,0,24,255,255,0,1,189,189,189,1,0,0,0,4,123,123, 2.4486 + 123,10,200,200,200,1,123,123,0,24,0,0,0,5,123,123,123,12,200,200,200,27,123,123,123,14,200,200,200,25,123,123,123,86, 2.4487 + 200,200,200,91,49,124,118,124,71,32,124,95,49,56,114,52,82,121,0}; 2.4488 + 2.4489 + //! Display a warning message. 2.4490 + /** 2.4491 + \param format is a C-string describing the format of the message, as in <tt>std::printf()</tt>. 2.4492 + **/ 2.4493 + inline void warn(const char *format, ...) { 2.4494 + if (cimg::exception_mode()>=1) { 2.4495 + char message[8192]; 2.4496 + cimg_std::va_list ap; 2.4497 + va_start(ap,format); 2.4498 + cimg_std::vsprintf(message,format,ap); 2.4499 + va_end(ap); 2.4500 +#ifdef cimg_strict_warnings 2.4501 + throw CImgWarningException(message); 2.4502 +#else 2.4503 + cimg_std::fprintf(cimg_stdout,"\n%s# CImg Warning%s :\n%s\n",cimg::t_red,cimg::t_normal,message); 2.4504 +#endif 2.4505 + } 2.4506 + } 2.4507 + 2.4508 + // Execute an external system command. 2.4509 + /** 2.4510 + \note This function is similar to <tt>std::system()</tt> 2.4511 + and is here because using the <tt>std::</tt> version on 2.4512 + Windows may open undesired consoles. 2.4513 + **/ 2.4514 + inline int system(const char *const command, const char *const module_name=0) { 2.4515 +#if cimg_OS==2 2.4516 + PROCESS_INFORMATION pi; 2.4517 + STARTUPINFO si; 2.4518 + cimg_std::memset(&pi,0,sizeof(PROCESS_INFORMATION)); 2.4519 + cimg_std::memset(&si,0,sizeof(STARTUPINFO)); 2.4520 + GetStartupInfo(&si); 2.4521 + si.cb = sizeof(si); 2.4522 + si.wShowWindow = SW_HIDE; 2.4523 + si.dwFlags |= SW_HIDE; 2.4524 + const BOOL res = CreateProcess((LPCTSTR)module_name,(LPTSTR)command,0,0,FALSE,0,0,0,&si,&pi); 2.4525 + if (res) { 2.4526 + WaitForSingleObject(pi.hProcess, INFINITE); 2.4527 + CloseHandle(pi.hThread); 2.4528 + CloseHandle(pi.hProcess); 2.4529 + return 0; 2.4530 + } else 2.4531 +#endif 2.4532 + return cimg_std::system(command); 2.4533 + return module_name?0:1; 2.4534 + } 2.4535 + 2.4536 + //! Return a reference to a temporary variable of type T. 2.4537 + template<typename T> 2.4538 + inline T& temporary(const T&) { 2.4539 + static T temp; 2.4540 + return temp; 2.4541 + } 2.4542 + 2.4543 + //! Exchange values of variables \p a and \p b. 2.4544 + template<typename T> 2.4545 + inline void swap(T& a, T& b) { T t = a; a = b; b = t; } 2.4546 + 2.4547 + //! Exchange values of variables (\p a1,\p a2) and (\p b1,\p b2). 2.4548 + template<typename T1, typename T2> 2.4549 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2) { 2.4550 + cimg::swap(a1,b1); cimg::swap(a2,b2); 2.4551 + } 2.4552 + 2.4553 + //! Exchange values of variables (\p a1,\p a2,\p a3) and (\p b1,\p b2,\p b3). 2.4554 + template<typename T1, typename T2, typename T3> 2.4555 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3) { 2.4556 + cimg::swap(a1,b1,a2,b2); cimg::swap(a3,b3); 2.4557 + } 2.4558 + 2.4559 + //! Exchange values of variables (\p a1,\p a2,...,\p a4) and (\p b1,\p b2,...,\p b4). 2.4560 + template<typename T1, typename T2, typename T3, typename T4> 2.4561 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3, T4& a4, T4& b4) { 2.4562 + cimg::swap(a1,b1,a2,b2,a3,b3); cimg::swap(a4,b4); 2.4563 + } 2.4564 + 2.4565 + //! Exchange values of variables (\p a1,\p a2,...,\p a5) and (\p b1,\p b2,...,\p b5). 2.4566 + template<typename T1, typename T2, typename T3, typename T4, typename T5> 2.4567 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3, T4& a4, T4& b4, T5& a5, T5& b5) { 2.4568 + cimg::swap(a1,b1,a2,b2,a3,b3,a4,b4); cimg::swap(a5,b5); 2.4569 + } 2.4570 + 2.4571 + //! Exchange values of variables (\p a1,\p a2,...,\p a6) and (\p b1,\p b2,...,\p b6). 2.4572 + template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6> 2.4573 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3, T4& a4, T4& b4, T5& a5, T5& b5, T6& a6, T6& b6) { 2.4574 + cimg::swap(a1,b1,a2,b2,a3,b3,a4,b4,a5,b5); cimg::swap(a6,b6); 2.4575 + } 2.4576 + 2.4577 + //! Exchange values of variables (\p a1,\p a2,...,\p a7) and (\p b1,\p b2,...,\p b7). 2.4578 + template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7> 2.4579 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3, T4& a4, T4& b4, T5& a5, T5& b5, T6& a6, T6& b6, 2.4580 + T7& a7, T7& b7) { 2.4581 + cimg::swap(a1,b1,a2,b2,a3,b3,a4,b4,a5,b5,a6,b6); cimg::swap(a7,b7); 2.4582 + } 2.4583 + 2.4584 + //! Exchange values of variables (\p a1,\p a2,...,\p a8) and (\p b1,\p b2,...,\p b8). 2.4585 + template<typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8> 2.4586 + inline void swap(T1& a1, T1& b1, T2& a2, T2& b2, T3& a3, T3& b3, T4& a4, T4& b4, T5& a5, T5& b5, T6& a6, T6& b6, 2.4587 + T7& a7, T7& b7, T8& a8, T8& b8) { 2.4588 + cimg::swap(a1,b1,a2,b2,a3,b3,a4,b4,a5,b5,a6,b6,a7,b7); cimg::swap(a8,b8); 2.4589 + } 2.4590 + 2.4591 + //! Return the current endianness of the CPU. 2.4592 + /** 2.4593 + \return \c false for "Little Endian", \c true for "Big Endian". 2.4594 + **/ 2.4595 + inline bool endianness() { 2.4596 + const int x = 1; 2.4597 + return ((unsigned char*)&x)[0]?false:true; 2.4598 + } 2.4599 + 2.4600 + //! Invert endianness of a memory buffer. 2.4601 + template<typename T> 2.4602 + inline void invert_endianness(T* const buffer, const unsigned int size) { 2.4603 + if (size) switch (sizeof(T)) { 2.4604 + case 1 : break; 2.4605 + case 2 : { for (unsigned short *ptr = (unsigned short*)buffer+size; ptr>(unsigned short*)buffer; ) { 2.4606 + const unsigned short val = *(--ptr); 2.4607 + *ptr = (unsigned short)((val>>8)|((val<<8))); 2.4608 + }} break; 2.4609 + case 4 : { for (unsigned int *ptr = (unsigned int*)buffer+size; ptr>(unsigned int*)buffer; ) { 2.4610 + const unsigned int val = *(--ptr); 2.4611 + *ptr = (val>>24)|((val>>8)&0xff00)|((val<<8)&0xff0000)|(val<<24); 2.4612 + }} break; 2.4613 + default : { for (T* ptr = buffer+size; ptr>buffer; ) { 2.4614 + unsigned char *pb = (unsigned char*)(--ptr), *pe = pb + sizeof(T); 2.4615 + for (int i=0; i<(int)sizeof(T)/2; ++i) swap(*(pb++),*(--pe)); 2.4616 + }} 2.4617 + } 2.4618 + } 2.4619 + 2.4620 + //! Invert endianness of a single variable. 2.4621 + template<typename T> 2.4622 + inline T& invert_endianness(T& a) { 2.4623 + invert_endianness(&a,1); 2.4624 + return a; 2.4625 + } 2.4626 + 2.4627 + //! Get the value of a system timer with a millisecond precision. 2.4628 + inline unsigned long time() { 2.4629 +#if cimg_OS==1 2.4630 + struct timeval st_time; 2.4631 + gettimeofday(&st_time,0); 2.4632 + return (unsigned long)(st_time.tv_usec/1000 + st_time.tv_sec*1000); 2.4633 +#elif cimg_OS==2 2.4634 + static SYSTEMTIME st_time; 2.4635 + GetSystemTime(&st_time); 2.4636 + return (unsigned long)(st_time.wMilliseconds + 1000*(st_time.wSecond + 60*(st_time.wMinute + 60*st_time.wHour))); 2.4637 +#else 2.4638 + return 0; 2.4639 +#endif 2.4640 + } 2.4641 + 2.4642 + //! Sleep for a certain numbers of milliseconds. 2.4643 + /** 2.4644 + This function frees the CPU ressources during the sleeping time. 2.4645 + It may be used to temporize your program properly, without wasting CPU time. 2.4646 + **/ 2.4647 + inline void sleep(const unsigned int milliseconds) { 2.4648 +#if cimg_OS==1 2.4649 + struct timespec tv; 2.4650 + tv.tv_sec = milliseconds/1000; 2.4651 + tv.tv_nsec = (milliseconds%1000)*1000000; 2.4652 + nanosleep(&tv,0); 2.4653 +#elif cimg_OS==2 2.4654 + Sleep(milliseconds); 2.4655 +#endif 2.4656 + } 2.4657 + 2.4658 + inline unsigned int _sleep(const unsigned int milliseconds, unsigned long& timer) { 2.4659 + if (!timer) timer = cimg::time(); 2.4660 + const unsigned long current_time = cimg::time(); 2.4661 + if (current_time>=timer+milliseconds) { timer = current_time; return 0; } 2.4662 + const unsigned long time_diff = timer + milliseconds - current_time; 2.4663 + timer = current_time + time_diff; 2.4664 + cimg::sleep(time_diff); 2.4665 + return (unsigned int)time_diff; 2.4666 + } 2.4667 + 2.4668 + //! Wait for a certain number of milliseconds since the last call. 2.4669 + /** 2.4670 + This function is equivalent to sleep() but the waiting time is computed with regard to the last call 2.4671 + of wait(). It may be used to temporize your program properly. 2.4672 + **/ 2.4673 + inline unsigned int wait(const unsigned int milliseconds) { 2.4674 + static unsigned long timer = 0; 2.4675 + if (!timer) timer = cimg::time(); 2.4676 + return _sleep(milliseconds,timer); 2.4677 + } 2.4678 + 2.4679 + // Use a specific srand initialization to avoid multi-threads to have to the 2.4680 + // same series of random numbers (executed only once for a single program). 2.4681 + inline void srand() { 2.4682 + static bool first_time = true; 2.4683 + if (first_time) { 2.4684 + cimg_std::srand(cimg::time()); 2.4685 + unsigned char *const rand_ptr = new unsigned char[1+cimg_std::rand()%2048]; 2.4686 + cimg_std::srand((unsigned int)cimg_std::rand() + *(unsigned int*)(void*)rand_ptr); 2.4687 + delete[] rand_ptr; 2.4688 + first_time = false; 2.4689 + } 2.4690 + } 2.4691 + 2.4692 + //! Return a left bitwise-rotated number. 2.4693 + template<typename T> 2.4694 + inline const T rol(const T a, const unsigned int n=1) { 2.4695 + return n?(T)((a<<n)|(a>>((sizeof(T)<<3)-n))):a; 2.4696 + } 2.4697 + 2.4698 + //! Return a right bitwise-rotated number. 2.4699 + template<typename T> 2.4700 + inline const T ror(const T a, const unsigned int n=1) { 2.4701 + return n?(T)((a>>n)|(a<<((sizeof(T)<<3)-n))):a; 2.4702 + } 2.4703 + 2.4704 + //! Return the absolute value of a number. 2.4705 + /** 2.4706 + \note This function is different from <tt>std::abs()</tt> or <tt>std::fabs()</tt> 2.4707 + because it is able to consider a variable of any type, without cast needed. 2.4708 + **/ 2.4709 + template<typename T> 2.4710 + inline T abs(const T a) { 2.4711 + return a>=0?a:-a; 2.4712 + } 2.4713 + inline bool abs(const bool a) { 2.4714 + return a; 2.4715 + } 2.4716 + inline unsigned char abs(const unsigned char a) { 2.4717 + return a; 2.4718 + } 2.4719 + inline unsigned short abs(const unsigned short a) { 2.4720 + return a; 2.4721 + } 2.4722 + inline unsigned int abs(const unsigned int a) { 2.4723 + return a; 2.4724 + } 2.4725 + inline unsigned long abs(const unsigned long a) { 2.4726 + return a; 2.4727 + } 2.4728 + inline double abs(const double a) { 2.4729 + return cimg_std::fabs(a); 2.4730 + } 2.4731 + inline float abs(const float a) { 2.4732 + return (float)cimg_std::fabs((double)a); 2.4733 + } 2.4734 + inline int abs(const int a) { 2.4735 + return cimg_std::abs(a); 2.4736 + } 2.4737 + 2.4738 + //! Return the square of a number. 2.4739 + template<typename T> 2.4740 + inline T sqr(const T val) { 2.4741 + return val*val; 2.4742 + } 2.4743 + 2.4744 + //! Return 1 + log_10(x). 2.4745 + inline int xln(const int x) { 2.4746 + return x>0?(int)(1+cimg_std::log10((double)x)):1; 2.4747 + } 2.4748 + 2.4749 + //! Return the minimum value between two numbers. 2.4750 + template<typename t1, typename t2> 2.4751 + inline typename cimg::superset<t1,t2>::type min(const t1& a, const t2& b) { 2.4752 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.4753 + return (t1t2)(a<=b?a:b); 2.4754 + } 2.4755 + 2.4756 + //! Return the minimum value between three numbers. 2.4757 + template<typename t1, typename t2, typename t3> 2.4758 + inline typename cimg::superset2<t1,t2,t3>::type min(const t1& a, const t2& b, const t3& c) { 2.4759 + typedef typename cimg::superset2<t1,t2,t3>::type t1t2t3; 2.4760 + return (t1t2t3)cimg::min(cimg::min(a,b),c); 2.4761 + } 2.4762 + 2.4763 + //! Return the minimum value between four numbers. 2.4764 + template<typename t1, typename t2, typename t3, typename t4> 2.4765 + inline typename cimg::superset3<t1,t2,t3,t4>::type min(const t1& a, const t2& b, const t3& c, const t4& d) { 2.4766 + typedef typename cimg::superset3<t1,t2,t3,t4>::type t1t2t3t4; 2.4767 + return (t1t2t3t4)cimg::min(cimg::min(a,b,c),d); 2.4768 + } 2.4769 + 2.4770 + //! Return the maximum value between two numbers. 2.4771 + template<typename t1, typename t2> 2.4772 + inline typename cimg::superset<t1,t2>::type max(const t1& a, const t2& b) { 2.4773 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.4774 + return (t1t2)(a>=b?a:b); 2.4775 + } 2.4776 + 2.4777 + //! Return the maximum value between three numbers. 2.4778 + template<typename t1, typename t2, typename t3> 2.4779 + inline typename cimg::superset2<t1,t2,t3>::type max(const t1& a, const t2& b, const t3& c) { 2.4780 + typedef typename cimg::superset2<t1,t2,t3>::type t1t2t3; 2.4781 + return (t1t2t3)cimg::max(cimg::max(a,b),c); 2.4782 + } 2.4783 + 2.4784 + //! Return the maximum value between four numbers. 2.4785 + template<typename t1, typename t2, typename t3, typename t4> 2.4786 + inline typename cimg::superset3<t1,t2,t3,t4>::type max(const t1& a, const t2& b, const t3& c, const t4& d) { 2.4787 + typedef typename cimg::superset3<t1,t2,t3,t4>::type t1t2t3t4; 2.4788 + return (t1t2t3t4)cimg::max(cimg::max(a,b,c),d); 2.4789 + } 2.4790 + 2.4791 + //! Return the sign of a number. 2.4792 + template<typename T> 2.4793 + inline T sign(const T x) { 2.4794 + return (x<0)?(T)(-1):(x==0?(T)0:(T)1); 2.4795 + } 2.4796 + 2.4797 + //! Return the nearest power of 2 higher than a given number. 2.4798 + template<typename T> 2.4799 + inline unsigned long nearest_pow2(const T x) { 2.4800 + unsigned long i = 1; 2.4801 + while (x>i) i<<=1; 2.4802 + return i; 2.4803 + } 2.4804 + 2.4805 + //! Return the modulo of a number. 2.4806 + /** 2.4807 + \note This modulo function accepts negative and floating-points modulo numbers, as well as 2.4808 + variable of any type. 2.4809 + **/ 2.4810 + template<typename T> 2.4811 + inline T mod(const T& x, const T& m) { 2.4812 + const double dx = (double)x, dm = (double)m; 2.4813 + if (x<0) { return (T)(dm+dx+dm*cimg_std::floor(-dx/dm)); } 2.4814 + return (T)(dx-dm*cimg_std::floor(dx/dm)); 2.4815 + } 2.4816 + inline int mod(const bool x, const bool m) { 2.4817 + return m?(x?1:0):0; 2.4818 + } 2.4819 + inline int mod(const char x, const char m) { 2.4820 + return x>=0?x%m:(x%m?m+x%m:0); 2.4821 + } 2.4822 + inline int mod(const short x, const short m) { 2.4823 + return x>=0?x%m:(x%m?m+x%m:0); 2.4824 + } 2.4825 + inline int mod(const int x, const int m) { 2.4826 + return x>=0?x%m:(x%m?m+x%m:0); 2.4827 + } 2.4828 + inline int mod(const long x, const long m) { 2.4829 + return x>=0?x%m:(x%m?m+x%m:0); 2.4830 + } 2.4831 + inline int mod(const unsigned char x, const unsigned char m) { 2.4832 + return x%m; 2.4833 + } 2.4834 + inline int mod(const unsigned short x, const unsigned short m) { 2.4835 + return x%m; 2.4836 + } 2.4837 + inline int mod(const unsigned int x, const unsigned int m) { 2.4838 + return x%m; 2.4839 + } 2.4840 + inline int mod(const unsigned long x, const unsigned long m) { 2.4841 + return x%m; 2.4842 + } 2.4843 + 2.4844 + //! Return the minmod of two numbers. 2.4845 + /** 2.4846 + <i>minmod(\p a,\p b)</i> is defined to be : 2.4847 + - <i>minmod(\p a,\p b) = min(\p a,\p b)</i>, if \p a and \p b have the same sign. 2.4848 + - <i>minmod(\p a,\p b) = 0</i>, if \p a and \p b have different signs. 2.4849 + **/ 2.4850 + template<typename T> 2.4851 + inline T minmod(const T a, const T b) { 2.4852 + return a*b<=0?0:(a>0?(a<b?a:b):(a<b?b:a)); 2.4853 + } 2.4854 + 2.4855 + //! Return a random variable between [0,1] with respect to an uniform distribution. 2.4856 + inline double rand() { 2.4857 + static bool first_time = true; 2.4858 + if (first_time) { cimg::srand(); first_time = false; } 2.4859 + return (double)cimg_std::rand()/RAND_MAX; 2.4860 + } 2.4861 + 2.4862 + //! Return a random variable between [-1,1] with respect to an uniform distribution. 2.4863 + inline double crand() { 2.4864 + return 1-2*cimg::rand(); 2.4865 + } 2.4866 + 2.4867 + //! Return a random variable following a gaussian distribution and a standard deviation of 1. 2.4868 + inline double grand() { 2.4869 + double x1, w; 2.4870 + do { 2.4871 + const double x2 = 2*cimg::rand() - 1.0; 2.4872 + x1 = 2*cimg::rand()-1.0; 2.4873 + w = x1*x1 + x2*x2; 2.4874 + } while (w<=0 || w>=1.0); 2.4875 + return x1*cimg_std::sqrt((-2*cimg_std::log(w))/w); 2.4876 + } 2.4877 + 2.4878 + //! Return a random variable following a Poisson distribution of parameter z. 2.4879 + inline unsigned int prand(const double z) { 2.4880 + if (z<=1.0e-10) return 0; 2.4881 + if (z>100.0) return (unsigned int)((std::sqrt(z) * cimg::grand()) + z); 2.4882 + unsigned int k = 0; 2.4883 + const double y = std::exp(-z); 2.4884 + for (double s = 1.0; s>=y; ++k) s*=cimg::rand(); 2.4885 + return k-1; 2.4886 + } 2.4887 + 2.4888 + //! Return a rounded number. 2.4889 + /** 2.4890 + \param x is the number to be rounded. 2.4891 + \param y is the rounding precision. 2.4892 + \param rounding_type defines the type of rounding (0=nearest, -1=backward, 1=forward). 2.4893 + **/ 2.4894 + inline double round(const double x, const double y, const int rounding_type=0) { 2.4895 + if (y<=0) return x; 2.4896 + const double delta = cimg::mod(x,y); 2.4897 + if (delta==0.0) return x; 2.4898 + const double 2.4899 + backward = x - delta, 2.4900 + forward = backward + y; 2.4901 + return rounding_type<0?backward:(rounding_type>0?forward:(2*delta<y?backward:forward)); 2.4902 + } 2.4903 + 2.4904 + inline double _pythagore(double a, double b) { 2.4905 + const double absa = cimg::abs(a), absb = cimg::abs(b); 2.4906 + if (absa>absb) { const double tmp = absb/absa; return absa*cimg_std::sqrt(1.0+tmp*tmp); } 2.4907 + else { const double tmp = absa/absb; return (absb==0?0:absb*cimg_std::sqrt(1.0+tmp*tmp)); } 2.4908 + } 2.4909 + 2.4910 + //! Remove the 'case' of an ASCII character. 2.4911 + inline char uncase(const char x) { 2.4912 + return (char)((x<'A'||x>'Z')?x:x-'A'+'a'); 2.4913 + } 2.4914 + 2.4915 + //! Remove the 'case' of a C string. 2.4916 + /** 2.4917 + Acts in-place. 2.4918 + **/ 2.4919 + inline void uncase(char *const string) { 2.4920 + if (string) for (char *ptr = string; *ptr; ++ptr) *ptr = uncase(*ptr); 2.4921 + } 2.4922 + 2.4923 + //! Read a float number from a C-string. 2.4924 + /** 2.4925 + \note This function is quite similar to <tt>std::atof()</tt>, 2.4926 + but that it allows the retrieval of fractions as in "1/2". 2.4927 + **/ 2.4928 + inline float atof(const char *const str) { 2.4929 + float x = 0,y = 1; 2.4930 + if (!str) return 0; else { cimg_std::sscanf(str,"%g/%g",&x,&y); return x/y; } 2.4931 + } 2.4932 + 2.4933 + //! Compute the length of a C-string. 2.4934 + /** 2.4935 + \note This function is similar to <tt>std::strlen()</tt> 2.4936 + and is here because some old compilers do not 2.4937 + define the <tt>std::</tt> version. 2.4938 + **/ 2.4939 + inline int strlen(const char *const s) { 2.4940 + if (!s) return -1; 2.4941 + int k = 0; 2.4942 + for (const char *ns = s; *ns; ++ns) ++k; 2.4943 + return k; 2.4944 + } 2.4945 + 2.4946 + //! Compare the first \p n characters of two C-strings. 2.4947 + /** 2.4948 + \note This function is similar to <tt>std::strncmp()</tt> 2.4949 + and is here because some old compilers do not 2.4950 + define the <tt>std::</tt> version. 2.4951 + **/ 2.4952 + inline int strncmp(const char *const s1, const char *const s2, const int l) { 2.4953 + if (!s1) return s2?-1:0; 2.4954 + const char *ns1 = s1, *ns2 = s2; 2.4955 + int k, diff = 0; for (k = 0; k<l && !(diff = *ns1-*ns2); ++k) { ++ns1; ++ns2; } 2.4956 + return k!=l?diff:0; 2.4957 + } 2.4958 + 2.4959 + //! Compare the first \p n characters of two C-strings, ignoring the case. 2.4960 + /** 2.4961 + \note This function is similar to <tt>std::strncasecmp()</tt> 2.4962 + and is here because some old compilers do not 2.4963 + define the <tt>std::</tt> version. 2.4964 + **/ 2.4965 + inline int strncasecmp(const char *const s1, const char *const s2, const int l) { 2.4966 + if (!s1) return s2?-1:0; 2.4967 + const char *ns1 = s1, *ns2 = s2; 2.4968 + int k, diff = 0; for (k = 0; k<l && !(diff = uncase(*ns1)-uncase(*ns2)); ++k) { ++ns1; ++ns2; } 2.4969 + return k!=l?diff:0; 2.4970 + } 2.4971 + 2.4972 + //! Compare two C-strings. 2.4973 + /** 2.4974 + \note This function is similar to <tt>std::strcmp()</tt> 2.4975 + and is here because some old compilers do not 2.4976 + define the <tt>std::</tt> version. 2.4977 + **/ 2.4978 + inline int strcmp(const char *const s1, const char *const s2) { 2.4979 + const int l1 = cimg::strlen(s1), l2 = cimg::strlen(s2); 2.4980 + return cimg::strncmp(s1,s2,1+(l1<l2?l1:l2)); 2.4981 + } 2.4982 + 2.4983 + //! Compare two C-strings, ignoring the case. 2.4984 + /** 2.4985 + \note This function is similar to <tt>std::strcasecmp()</tt> 2.4986 + and is here because some old compilers do not 2.4987 + define the <tt>std::</tt> version. 2.4988 + **/ 2.4989 + inline int strcasecmp(const char *const s1, const char *const s2) { 2.4990 + const int l1 = cimg::strlen(s1), l2 = cimg::strlen(s2); 2.4991 + return cimg::strncasecmp(s1,s2,1+(l1<l2?l1:l2)); 2.4992 + } 2.4993 + 2.4994 + //! Find a character in a C-string. 2.4995 + inline int strfind(const char *const s, const char c) { 2.4996 + if (!s) return -1; 2.4997 + int l; for (l = cimg::strlen(s); l>=0 && s[l]!=c; --l) {} 2.4998 + return l; 2.4999 + } 2.5000 + 2.5001 + //! Remove useless delimiters on the borders of a C-string 2.5002 + inline bool strpare(char *const s, const char delimiter=' ', const bool symmetric=false) { 2.5003 + if (!s) return false; 2.5004 + const int l = cimg::strlen(s); 2.5005 + int p, q; 2.5006 + if (symmetric) for (p = 0, q = l-1; p<q && s[p]==delimiter && s[q]==delimiter; ++p) --q; 2.5007 + else { 2.5008 + for (p = 0; p<l && s[p]==delimiter; ) ++p; 2.5009 + for (q = l-1; q>p && s[q]==delimiter; ) --q; 2.5010 + } 2.5011 + const int n = q - p + 1; 2.5012 + if (n!=l) { cimg_std::memmove(s,s+p,n); s[n] = '\0'; return true; } 2.5013 + return false; 2.5014 + } 2.5015 + 2.5016 + //! Remove useless spaces and symmetric delimiters ', " and ` from a C-string. 2.5017 + inline void strclean(char *const s) { 2.5018 + if (!s) return; 2.5019 + strpare(s,' ',false); 2.5020 + for (bool need_iter = true; need_iter; ) { 2.5021 + need_iter = false; 2.5022 + need_iter |= strpare(s,'\'',true); 2.5023 + need_iter |= strpare(s,'\"',true); 2.5024 + need_iter |= strpare(s,'`',true); 2.5025 + } 2.5026 + } 2.5027 + 2.5028 + //! Replace explicit escape sequences '\x' in C-strings (where x in [ntvbrfa?'"0]). 2.5029 + inline void strescape(char *const s) { 2.5030 +#define cimg_strescape(ci,co) case ci: *nd = co; break; 2.5031 + char *ns, *nd; 2.5032 + for (ns = nd = s; *ns; ++ns, ++nd) 2.5033 + if (*ns=='\\') switch (*(++ns)) { 2.5034 + cimg_strescape('n','\n'); 2.5035 + cimg_strescape('t','\t'); 2.5036 + cimg_strescape('v','\v'); 2.5037 + cimg_strescape('b','\b'); 2.5038 + cimg_strescape('r','\r'); 2.5039 + cimg_strescape('f','\f'); 2.5040 + cimg_strescape('a','\a'); 2.5041 + cimg_strescape('\\','\\'); 2.5042 + cimg_strescape('\?','\?'); 2.5043 + cimg_strescape('\'','\''); 2.5044 + cimg_strescape('\"','\"'); 2.5045 + cimg_strescape('\0','\0'); 2.5046 + } 2.5047 + else *nd = *ns; 2.5048 + *nd = 0; 2.5049 + } 2.5050 + 2.5051 + //! Compute the basename of a filename. 2.5052 + inline const char* basename(const char *const s) { 2.5053 + return (cimg_OS!=2)?(s?s+1+cimg::strfind(s,'/'):0):(s?s+1+cimg::strfind(s,'\\'):0); 2.5054 + } 2.5055 + 2.5056 + // Generate a random filename. 2.5057 + inline const char* filenamerand() { 2.5058 + static char id[9] = { 0,0,0,0,0,0,0,0,0 }; 2.5059 + cimg::srand(); 2.5060 + for (unsigned int k=0; k<8; ++k) { 2.5061 + const int v = (int)cimg_std::rand()%3; 2.5062 + id[k] = (char)(v==0?('0'+(cimg_std::rand()%10)):(v==1?('a'+(cimg_std::rand()%26)):('A'+(cimg_std::rand()%26)))); 2.5063 + } 2.5064 + return id; 2.5065 + } 2.5066 + 2.5067 + // Convert filename into a Windows-style filename. 2.5068 + inline void winformat_string(char *const s) { 2.5069 + if (s && s[0]) { 2.5070 +#if cimg_OS==2 2.5071 + char *const ns = new char[MAX_PATH]; 2.5072 + if (GetShortPathNameA(s,ns,MAX_PATH)) cimg_std::strcpy(s,ns); 2.5073 +#endif 2.5074 + } 2.5075 + } 2.5076 + 2.5077 + //! Return or set path to store temporary files. 2.5078 + inline const char* temporary_path(const char *const user_path=0, const bool reinit_path=false) { 2.5079 +#define _cimg_test_temporary_path(p) \ 2.5080 + if (!path_found) { \ 2.5081 + cimg_std::sprintf(st_path,"%s",p); \ 2.5082 + cimg_std::sprintf(tmp,"%s%s%s",st_path,cimg_OS==2?"\\":"/",filetmp); \ 2.5083 + if ((file=cimg_std::fopen(tmp,"wb"))!=0) { cimg_std::fclose(file); cimg_std::remove(tmp); path_found = true; } \ 2.5084 + } 2.5085 + static char *st_path = 0; 2.5086 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5087 + if (user_path) { 2.5088 + if (!st_path) st_path = new char[1024]; 2.5089 + cimg_std::memset(st_path,0,1024); 2.5090 + cimg_std::strncpy(st_path,user_path,1023); 2.5091 + } else if (!st_path) { 2.5092 + st_path = new char[1024]; 2.5093 + cimg_std::memset(st_path,0,1024); 2.5094 + bool path_found = false; 2.5095 + char tmp[1024], filetmp[512]; 2.5096 + cimg_std::FILE *file = 0; 2.5097 + cimg_std::sprintf(filetmp,"%s.tmp",cimg::filenamerand()); 2.5098 + char *tmpPath = getenv("TMP"); 2.5099 + if (!tmpPath) { tmpPath = getenv("TEMP"); winformat_string(tmpPath); } 2.5100 + if (tmpPath) _cimg_test_temporary_path(tmpPath); 2.5101 +#if cimg_OS==2 2.5102 + _cimg_test_temporary_path("C:\\WINNT\\Temp"); 2.5103 + _cimg_test_temporary_path("C:\\WINDOWS\\Temp"); 2.5104 + _cimg_test_temporary_path("C:\\Temp"); 2.5105 + _cimg_test_temporary_path("C:"); 2.5106 + _cimg_test_temporary_path("D:\\WINNT\\Temp"); 2.5107 + _cimg_test_temporary_path("D:\\WINDOWS\\Temp"); 2.5108 + _cimg_test_temporary_path("D:\\Temp"); 2.5109 + _cimg_test_temporary_path("D:"); 2.5110 +#else 2.5111 + _cimg_test_temporary_path("/tmp"); 2.5112 + _cimg_test_temporary_path("/var/tmp"); 2.5113 +#endif 2.5114 + if (!path_found) { 2.5115 + st_path[0]='\0'; 2.5116 + cimg_std::strcpy(tmp,filetmp); 2.5117 + if ((file=cimg_std::fopen(tmp,"wb"))!=0) { cimg_std::fclose(file); cimg_std::remove(tmp); path_found = true; } 2.5118 + } 2.5119 + if (!path_found) 2.5120 + throw CImgIOException("cimg::temporary_path() : Unable to find a temporary path accessible for writing\n" 2.5121 + "you have to set the macro 'cimg_temporary_path' to a valid path where you have writing access :\n" 2.5122 + "#define cimg_temporary_path \"path\" (before including 'CImg.h')"); 2.5123 + } 2.5124 + return st_path; 2.5125 + } 2.5126 + 2.5127 + // Return or set path to the "Program files/" directory (windows only). 2.5128 +#if cimg_OS==2 2.5129 + inline const char* programfiles_path(const char *const user_path=0, const bool reinit_path=false) { 2.5130 + static char *st_path = 0; 2.5131 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5132 + if (user_path) { 2.5133 + if (!st_path) st_path = new char[1024]; 2.5134 + cimg_std::memset(st_path,0,1024); 2.5135 + cimg_std::strncpy(st_path,user_path,1023); 2.5136 + } else if (!st_path) { 2.5137 + st_path = new char[MAX_PATH]; 2.5138 + cimg_std::memset(st_path,0,MAX_PATH); 2.5139 + // Note : in the following line, 0x26 = CSIDL_PROGRAM_FILES (not defined on every compiler). 2.5140 +#if !defined(__INTEL_COMPILER) 2.5141 + if (!SHGetSpecialFolderPathA(0,st_path,0x0026,false)) { 2.5142 + const char *pfPath = getenv("PROGRAMFILES"); 2.5143 + if (pfPath) cimg_std::strncpy(st_path,pfPath,MAX_PATH-1); 2.5144 + else cimg_std::strcpy(st_path,"C:\\PROGRA~1"); 2.5145 + } 2.5146 +#else 2.5147 + cimg_std::strcpy(st_path,"C:\\PROGRA~1"); 2.5148 +#endif 2.5149 + } 2.5150 + return st_path; 2.5151 + } 2.5152 +#endif 2.5153 + 2.5154 + //! Return or set path to the ImageMagick's \c convert tool. 2.5155 + inline const char* imagemagick_path(const char *const user_path=0, const bool reinit_path=false) { 2.5156 + static char *st_path = 0; 2.5157 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5158 + if (user_path) { 2.5159 + if (!st_path) st_path = new char[1024]; 2.5160 + cimg_std::memset(st_path,0,1024); 2.5161 + cimg_std::strncpy(st_path,user_path,1023); 2.5162 + } else if (!st_path) { 2.5163 + st_path = new char[1024]; 2.5164 + cimg_std::memset(st_path,0,1024); 2.5165 + bool path_found = false; 2.5166 + cimg_std::FILE *file = 0; 2.5167 +#if cimg_OS==2 2.5168 + const char *pf_path = programfiles_path(); 2.5169 + if (!path_found) { 2.5170 + cimg_std::sprintf(st_path,".\\convert.exe"); 2.5171 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5172 + } 2.5173 + { for (int k=32; k>=10 && !path_found; --k) { 2.5174 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%.2d-\\convert.exe",pf_path,k); 2.5175 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5176 + }} 2.5177 + { for (int k=9; k>=0 && !path_found; --k) { 2.5178 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%d-Q\\convert.exe",pf_path,k); 2.5179 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5180 + }} 2.5181 + { for (int k=32; k>=0 && !path_found; --k) { 2.5182 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%d\\convert.exe",pf_path,k); 2.5183 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5184 + }} 2.5185 + { for (int k=32; k>=10 && !path_found; --k) { 2.5186 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%.2d-\\VISUA~1\\BIN\\convert.exe",pf_path,k); 2.5187 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5188 + }} 2.5189 + { for (int k=9; k>=0 && !path_found; --k) { 2.5190 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%d-Q\\VISUA~1\\BIN\\convert.exe",pf_path,k); 2.5191 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5192 + }} 2.5193 + { for (int k=32; k>=0 && !path_found; --k) { 2.5194 + cimg_std::sprintf(st_path,"%s\\IMAGEM~1.%d\\VISUA~1\\BIN\\convert.exe",pf_path,k); 2.5195 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5196 + }} 2.5197 + { for (int k=32; k>=10 && !path_found; --k) { 2.5198 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%.2d-\\convert.exe",k); 2.5199 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5200 + }} 2.5201 + { for (int k=9; k>=0 && !path_found; --k) { 2.5202 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%d-Q\\convert.exe",k); 2.5203 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5204 + }} 2.5205 + { for (int k=32; k>=0 && !path_found; --k) { 2.5206 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%d\\convert.exe",k); 2.5207 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5208 + }} 2.5209 + { for (int k=32; k>=10 && !path_found; --k) { 2.5210 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%.2d-\\VISUA~1\\BIN\\convert.exe",k); 2.5211 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5212 + }} 2.5213 + { for (int k=9; k>=0 && !path_found; --k) { 2.5214 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%d-Q\\VISUA~1\\BIN\\convert.exe",k); 2.5215 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5216 + }} 2.5217 + { for (int k=32; k>=0 && !path_found; --k) { 2.5218 + cimg_std::sprintf(st_path,"C:\\IMAGEM~1.%d\\VISUA~1\\BIN\\convert.exe",k); 2.5219 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5220 + }} 2.5221 + { for (int k=32; k>=10 && !path_found; --k) { 2.5222 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%.2d-\\convert.exe",k); 2.5223 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5224 + }} 2.5225 + { for (int k=9; k>=0 && !path_found; --k) { 2.5226 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%d-Q\\convert.exe",k); 2.5227 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5228 + }} 2.5229 + { for (int k=32; k>=0 && !path_found; --k) { 2.5230 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%d\\convert.exe",k); 2.5231 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5232 + }} 2.5233 + { for (int k=32; k>=10 && !path_found; --k) { 2.5234 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%.2d-\\VISUA~1\\BIN\\convert.exe",k); 2.5235 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5236 + }} 2.5237 + { for (int k=9; k>=0 && !path_found; --k) { 2.5238 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%d-Q\\VISUA~1\\BIN\\convert.exe",k); 2.5239 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5240 + }} 2.5241 + { for (int k=32; k>=0 && !path_found; --k) { 2.5242 + cimg_std::sprintf(st_path,"D:\\IMAGEM~1.%d\\VISUA~1\\BIN\\convert.exe",k); 2.5243 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5244 + }} 2.5245 + if (!path_found) cimg_std::strcpy(st_path,"convert.exe"); 2.5246 +#else 2.5247 + if (!path_found) { 2.5248 + cimg_std::sprintf(st_path,"./convert"); 2.5249 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5250 + } 2.5251 + if (!path_found) cimg_std::strcpy(st_path,"convert"); 2.5252 +#endif 2.5253 + winformat_string(st_path); 2.5254 + } 2.5255 + return st_path; 2.5256 + } 2.5257 + 2.5258 + //! Return path of the GraphicsMagick's \c gm tool. 2.5259 + inline const char* graphicsmagick_path(const char *const user_path=0, const bool reinit_path=false) { 2.5260 + static char *st_path = 0; 2.5261 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5262 + if (user_path) { 2.5263 + if (!st_path) st_path = new char[1024]; 2.5264 + cimg_std::memset(st_path,0,1024); 2.5265 + cimg_std::strncpy(st_path,user_path,1023); 2.5266 + } else if (!st_path) { 2.5267 + st_path = new char[1024]; 2.5268 + cimg_std::memset(st_path,0,1024); 2.5269 + bool path_found = false; 2.5270 + cimg_std::FILE *file = 0; 2.5271 +#if cimg_OS==2 2.5272 + const char* pf_path = programfiles_path(); 2.5273 + if (!path_found) { 2.5274 + cimg_std::sprintf(st_path,".\\gm.exe"); 2.5275 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5276 + } 2.5277 + { for (int k=32; k>=10 && !path_found; --k) { 2.5278 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%.2d-\\gm.exe",pf_path,k); 2.5279 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5280 + }} 2.5281 + { for (int k=9; k>=0 && !path_found; --k) { 2.5282 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%d-Q\\gm.exe",pf_path,k); 2.5283 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5284 + }} 2.5285 + { for (int k=32; k>=0 && !path_found; --k) { 2.5286 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%d\\gm.exe",pf_path,k); 2.5287 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5288 + }} 2.5289 + { for (int k=32; k>=10 && !path_found; --k) { 2.5290 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%.2d-\\VISUA~1\\BIN\\gm.exe",pf_path,k); 2.5291 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5292 + }} 2.5293 + { for (int k=9; k>=0 && !path_found; --k) { 2.5294 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%d-Q\\VISUA~1\\BIN\\gm.exe",pf_path,k); 2.5295 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5296 + }} 2.5297 + { for (int k=32; k>=0 && !path_found; --k) { 2.5298 + cimg_std::sprintf(st_path,"%s\\GRAPHI~1.%d\\VISUA~1\\BIN\\gm.exe",pf_path,k); 2.5299 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5300 + }} 2.5301 + { for (int k=32; k>=10 && !path_found; --k) { 2.5302 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%.2d-\\gm.exe",k); 2.5303 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5304 + }} 2.5305 + { for (int k=9; k>=0 && !path_found; --k) { 2.5306 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%d-Q\\gm.exe",k); 2.5307 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5308 + }} 2.5309 + { for (int k=32; k>=0 && !path_found; --k) { 2.5310 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%d\\gm.exe",k); 2.5311 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5312 + }} 2.5313 + { for (int k=32; k>=10 && !path_found; --k) { 2.5314 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%.2d-\\VISUA~1\\BIN\\gm.exe",k); 2.5315 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5316 + }} 2.5317 + { for (int k=9; k>=0 && !path_found; --k) { 2.5318 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%d-Q\\VISUA~1\\BIN\\gm.exe",k); 2.5319 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5320 + }} 2.5321 + { for (int k=32; k>=0 && !path_found; --k) { 2.5322 + cimg_std::sprintf(st_path,"C:\\GRAPHI~1.%d\\VISUA~1\\BIN\\gm.exe",k); 2.5323 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5324 + }} 2.5325 + { for (int k=32; k>=10 && !path_found; --k) { 2.5326 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%.2d-\\gm.exe",k); 2.5327 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5328 + }} 2.5329 + { for (int k=9; k>=0 && !path_found; --k) { 2.5330 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%d-Q\\gm.exe",k); 2.5331 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5332 + }} 2.5333 + { for (int k=32; k>=0 && !path_found; --k) { 2.5334 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%d\\gm.exe",k); 2.5335 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5336 + }} 2.5337 + { for (int k=32; k>=10 && !path_found; --k) { 2.5338 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%.2d-\\VISUA~1\\BIN\\gm.exe",k); 2.5339 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5340 + }} 2.5341 + { for (int k=9; k>=0 && !path_found; --k) { 2.5342 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%d-Q\\VISUA~1\\BIN\\gm.exe",k); 2.5343 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5344 + }} 2.5345 + { for (int k=32; k>=0 && !path_found; --k) { 2.5346 + cimg_std::sprintf(st_path,"D:\\GRAPHI~1.%d\\VISUA~1\\BIN\\gm.exe",k); 2.5347 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5348 + }} 2.5349 + if (!path_found) cimg_std::strcpy(st_path,"gm.exe"); 2.5350 +#else 2.5351 + if (!path_found) { 2.5352 + cimg_std::sprintf(st_path,"./gm"); 2.5353 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5354 + } 2.5355 + if (!path_found) cimg_std::strcpy(st_path,"gm"); 2.5356 +#endif 2.5357 + winformat_string(st_path); 2.5358 + } 2.5359 + return st_path; 2.5360 + } 2.5361 + 2.5362 + //! Return or set path of the \c XMedcon tool. 2.5363 + inline const char* medcon_path(const char *const user_path=0, const bool reinit_path=false) { 2.5364 + static char *st_path = 0; 2.5365 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5366 + if (user_path) { 2.5367 + if (!st_path) st_path = new char[1024]; 2.5368 + cimg_std::memset(st_path,0,1024); 2.5369 + cimg_std::strncpy(st_path,user_path,1023); 2.5370 + } else if (!st_path) { 2.5371 + st_path = new char[1024]; 2.5372 + cimg_std::memset(st_path,0,1024); 2.5373 + bool path_found = false; 2.5374 + cimg_std::FILE *file = 0; 2.5375 +#if cimg_OS==2 2.5376 + const char* pf_path = programfiles_path(); 2.5377 + if (!path_found) { 2.5378 + cimg_std::sprintf(st_path,".\\medcon.bat"); 2.5379 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5380 + } 2.5381 + if (!path_found) { 2.5382 + cimg_std::sprintf(st_path,".\\medcon.exe"); 2.5383 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5384 + } 2.5385 + if (!path_found) { 2.5386 + cimg_std::sprintf(st_path,"%s\\XMedCon\\bin\\medcon.bat",pf_path); 2.5387 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5388 + } 2.5389 + if (!path_found) { 2.5390 + cimg_std::sprintf(st_path,"%s\\XMedCon\\bin\\medcon.exe",pf_path); 2.5391 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5392 + } 2.5393 + if (!path_found) cimg_std::strcpy(st_path,"medcon.bat"); 2.5394 +#else 2.5395 + if (!path_found) { 2.5396 + cimg_std::sprintf(st_path,"./medcon"); 2.5397 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5398 + } 2.5399 + if (!path_found) cimg_std::strcpy(st_path,"medcon"); 2.5400 +#endif 2.5401 + winformat_string(st_path); 2.5402 + } 2.5403 + return st_path; 2.5404 + } 2.5405 + 2.5406 + //! Return or set path to the 'ffmpeg' command. 2.5407 + inline const char *ffmpeg_path(const char *const user_path=0, const bool reinit_path=false) { 2.5408 + static char *st_path = 0; 2.5409 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5410 + if (user_path) { 2.5411 + if (!st_path) st_path = new char[1024]; 2.5412 + cimg_std::memset(st_path,0,1024); 2.5413 + cimg_std::strncpy(st_path,user_path,1023); 2.5414 + } else if (!st_path) { 2.5415 + st_path = new char[1024]; 2.5416 + cimg_std::memset(st_path,0,1024); 2.5417 + bool path_found = false; 2.5418 + cimg_std::FILE *file = 0; 2.5419 +#if cimg_OS==2 2.5420 + if (!path_found) { 2.5421 + cimg_std::sprintf(st_path,".\\ffmpeg.exe"); 2.5422 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5423 + } 2.5424 + if (!path_found) cimg_std::strcpy(st_path,"ffmpeg.exe"); 2.5425 +#else 2.5426 + if (!path_found) { 2.5427 + cimg_std::sprintf(st_path,"./ffmpeg"); 2.5428 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5429 + } 2.5430 + if (!path_found) cimg_std::strcpy(st_path,"ffmpeg"); 2.5431 +#endif 2.5432 + winformat_string(st_path); 2.5433 + } 2.5434 + return st_path; 2.5435 + } 2.5436 + 2.5437 + //! Return or set path to the 'gzip' command. 2.5438 + inline const char *gzip_path(const char *const user_path=0, const bool reinit_path=false) { 2.5439 + static char *st_path = 0; 2.5440 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5441 + if (user_path) { 2.5442 + if (!st_path) st_path = new char[1024]; 2.5443 + cimg_std::memset(st_path,0,1024); 2.5444 + cimg_std::strncpy(st_path,user_path,1023); 2.5445 + } else if (!st_path) { 2.5446 + st_path = new char[1024]; 2.5447 + cimg_std::memset(st_path,0,1024); 2.5448 + bool path_found = false; 2.5449 + cimg_std::FILE *file = 0; 2.5450 +#if cimg_OS==2 2.5451 + if (!path_found) { 2.5452 + cimg_std::sprintf(st_path,".\\gzip.exe"); 2.5453 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5454 + } 2.5455 + if (!path_found) cimg_std::strcpy(st_path,"gzip.exe"); 2.5456 +#else 2.5457 + if (!path_found) { 2.5458 + cimg_std::sprintf(st_path,"./gzip"); 2.5459 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5460 + } 2.5461 + if (!path_found) cimg_std::strcpy(st_path,"gzip"); 2.5462 +#endif 2.5463 + winformat_string(st_path); 2.5464 + } 2.5465 + return st_path; 2.5466 + } 2.5467 + 2.5468 + //! Return or set path to the 'gunzip' command. 2.5469 + inline const char *gunzip_path(const char *const user_path=0, const bool reinit_path=false) { 2.5470 + static char *st_path = 0; 2.5471 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5472 + if (user_path) { 2.5473 + if (!st_path) st_path = new char[1024]; 2.5474 + cimg_std::memset(st_path,0,1024); 2.5475 + cimg_std::strncpy(st_path,user_path,1023); 2.5476 + } else if (!st_path) { 2.5477 + st_path = new char[1024]; 2.5478 + cimg_std::memset(st_path,0,1024); 2.5479 + bool path_found = false; 2.5480 + cimg_std::FILE *file = 0; 2.5481 +#if cimg_OS==2 2.5482 + if (!path_found) { 2.5483 + cimg_std::sprintf(st_path,".\\gunzip.exe"); 2.5484 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5485 + } 2.5486 + if (!path_found) cimg_std::strcpy(st_path,"gunzip.exe"); 2.5487 +#else 2.5488 + if (!path_found) { 2.5489 + cimg_std::sprintf(st_path,"./gunzip"); 2.5490 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5491 + } 2.5492 + if (!path_found) cimg_std::strcpy(st_path,"gunzip"); 2.5493 +#endif 2.5494 + winformat_string(st_path); 2.5495 + } 2.5496 + return st_path; 2.5497 + } 2.5498 + 2.5499 + //! Return or set path to the 'dcraw' command. 2.5500 + inline const char *dcraw_path(const char *const user_path=0, const bool reinit_path=false) { 2.5501 + static char *st_path = 0; 2.5502 + if (reinit_path && st_path) { delete[] st_path; st_path = 0; } 2.5503 + if (user_path) { 2.5504 + if (!st_path) st_path = new char[1024]; 2.5505 + cimg_std::memset(st_path,0,1024); 2.5506 + cimg_std::strncpy(st_path,user_path,1023); 2.5507 + } else if (!st_path) { 2.5508 + st_path = new char[1024]; 2.5509 + cimg_std::memset(st_path,0,1024); 2.5510 + bool path_found = false; 2.5511 + cimg_std::FILE *file = 0; 2.5512 +#if cimg_OS==2 2.5513 + if (!path_found) { 2.5514 + cimg_std::sprintf(st_path,".\\dcraw.exe"); 2.5515 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5516 + } 2.5517 + if (!path_found) cimg_std::strcpy(st_path,"dcraw.exe"); 2.5518 +#else 2.5519 + if (!path_found) { 2.5520 + cimg_std::sprintf(st_path,"./dcraw"); 2.5521 + if ((file=cimg_std::fopen(st_path,"r"))!=0) { cimg_std::fclose(file); path_found = true; } 2.5522 + } 2.5523 + if (!path_found) cimg_std::strcpy(st_path,"dcraw"); 2.5524 +#endif 2.5525 + winformat_string(st_path); 2.5526 + } 2.5527 + return st_path; 2.5528 + } 2.5529 + 2.5530 + //! Split a filename into two strings 'body' and 'extension'. 2.5531 + inline const char *split_filename(const char *const filename, char *const body=0) { 2.5532 + if (!filename) { if (body) body[0]='\0'; return 0; } 2.5533 + int l = cimg::strfind(filename,'.'); 2.5534 + if (l>=0) { if (body) { cimg_std::strncpy(body,filename,l); body[l]='\0'; }} 2.5535 + else { if (body) cimg_std::strcpy(body,filename); l = (int)cimg::strlen(filename)-1; } 2.5536 + return filename+l+1; 2.5537 + } 2.5538 + 2.5539 + //! Create a numbered version of a filename. 2.5540 + inline char* number_filename(const char *const filename, const int number, const unsigned int n, char *const string) { 2.5541 + if (!filename) { if (string) string[0]='\0'; return 0; } 2.5542 + char format[1024],body[1024]; 2.5543 + const char *ext = cimg::split_filename(filename,body); 2.5544 + if (n>0) cimg_std::sprintf(format,"%s_%%.%ud.%s",body,n,ext); 2.5545 + else cimg_std::sprintf(format,"%s_%%d.%s",body,ext); 2.5546 + cimg_std::sprintf(string,format,number); 2.5547 + return string; 2.5548 + } 2.5549 + 2.5550 + //! Open a file, and check for possible errors. 2.5551 + inline cimg_std::FILE *fopen(const char *const path, const char *const mode) { 2.5552 + if(!path || !mode) 2.5553 + throw CImgArgumentException("cimg::fopen() : File '%s', cannot open with mode '%s'.", 2.5554 + path?path:"(null)",mode?mode:"(null)"); 2.5555 + if (path[0]=='-') return (mode[0]=='r')?stdin:stdout; 2.5556 + cimg_std::FILE *dest = cimg_std::fopen(path,mode); 2.5557 + if (!dest) 2.5558 + throw CImgIOException("cimg::fopen() : File '%s', cannot open file %s", 2.5559 + path,mode[0]=='r'?"for reading.":(mode[0]=='w'?"for writing.":"."),path); 2.5560 + return dest; 2.5561 + } 2.5562 + 2.5563 + //! Close a file, and check for possible errors. 2.5564 + inline int fclose(cimg_std::FILE *file) { 2.5565 + if (!file) warn("cimg::fclose() : Can't close (null) file"); 2.5566 + if (!file || file==stdin || file==stdout) return 0; 2.5567 + const int errn = cimg_std::fclose(file); 2.5568 + if (errn!=0) warn("cimg::fclose() : Error %d during file closing",errn); 2.5569 + return errn; 2.5570 + } 2.5571 + 2.5572 + //! Try to guess the image format of a filename, using its magick numbers. 2.5573 + inline const char *file_type(cimg_std::FILE *const file, const char *const filename) { 2.5574 + static const char 2.5575 + *const _pnm = "pnm", 2.5576 + *const _bmp = "bmp", 2.5577 + *const _gif = "gif", 2.5578 + *const _jpeg = "jpeg", 2.5579 + *const _off = "off", 2.5580 + *const _pan = "pan", 2.5581 + *const _png = "png", 2.5582 + *const _tiff = "tiff"; 2.5583 + if (!filename && !file) throw CImgArgumentException("cimg::file_type() : Cannot load (null) filename."); 2.5584 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.5585 + const char *ftype = 0, *head; 2.5586 + char header[2048], item[1024]; 2.5587 + const unsigned char *const uheader = (unsigned char*)header; 2.5588 + int err; 2.5589 + const unsigned int siz = (unsigned int)cimg_std::fread(header,2048,1,nfile); // Read first 2048 bytes. 2.5590 + if (!file) cimg::fclose(nfile); 2.5591 + if (!ftype) { // Check for BMP format. 2.5592 + if (header[0]=='B' && header[1]=='M') ftype = _bmp; 2.5593 + } 2.5594 + if (!ftype) { // Check for GIF format. 2.5595 + if (header[0]=='G' && header[1]=='I' && header[2]=='F' && header[3]=='8' && header[5]=='a' && 2.5596 + (header[4]=='7' || header[4]=='9')) ftype = _gif; 2.5597 + } 2.5598 + if (!ftype) { // Check for JPEG format. 2.5599 + if (uheader[0]==0xFF && uheader[1]==0xD8 && uheader[2]==0xFF) ftype = _jpeg; 2.5600 + } 2.5601 + if (!ftype) { // Check for OFF format. 2.5602 + if (header[0]=='O' && header[1]=='F' && header[2]=='F' && header[3]=='\n') ftype = _off; 2.5603 + } 2.5604 + if (!ftype) { // Check for PAN format. 2.5605 + if (header[0]=='P' && header[1]=='A' && header[2]=='N' && header[3]=='D' && header[4]=='O' && 2.5606 + header[5]=='R' && header[6]=='E') ftype = _pan; 2.5607 + } 2.5608 + if (!ftype) { // Check for PNG format. 2.5609 + if (uheader[0]==0x89 && uheader[1]==0x50 && uheader[2]==0x4E && uheader[3]==0x47 && 2.5610 + uheader[4]==0x0D && uheader[5]==0x0A && uheader[6]==0x1A && uheader[7]==0x0A) ftype = _png; 2.5611 + } 2.5612 + if (!ftype) { // Check for PNM format. 2.5613 + head = header; 2.5614 + while (head<header+siz && (err=cimg_std::sscanf(head,"%1023[^\n]",item))!=EOF && (item[0]=='#' || !err)) 2.5615 + head+=1+(err?cimg::strlen(item):0); 2.5616 + if (cimg_std::sscanf(item," P%d",&err)==1) ftype = _pnm; 2.5617 + } 2.5618 + if (!ftype) { // Check for TIFF format. 2.5619 + if ((uheader[0]==0x49 && uheader[1]==0x49) || (uheader[0]==0x4D && uheader[1]==0x4D)) ftype = _tiff; 2.5620 + } 2.5621 + return ftype; 2.5622 + } 2.5623 + 2.5624 + //! Read file data, and check for possible errors. 2.5625 + template<typename T> 2.5626 + inline int fread(T *const ptr, const unsigned int nmemb, cimg_std::FILE *stream) { 2.5627 + if (!ptr || nmemb<=0 || !stream) 2.5628 + throw CImgArgumentException("cimg::fread() : Can't read %u x %u bytes of file pointer '%p' in buffer '%p'", 2.5629 + nmemb,sizeof(T),stream,ptr); 2.5630 + const unsigned long wlimitT = 63*1024*1024, wlimit = wlimitT/sizeof(T); 2.5631 + unsigned int toread = nmemb, alread = 0, ltoread = 0, lalread = 0; 2.5632 + do { 2.5633 + ltoread = (toread*sizeof(T))<wlimitT?toread:wlimit; 2.5634 + lalread = (unsigned int)cimg_std::fread((void*)(ptr+alread),sizeof(T),ltoread,stream); 2.5635 + alread+=lalread; 2.5636 + toread-=lalread; 2.5637 + } while (ltoread==lalread && toread>0); 2.5638 + if (toread>0) warn("cimg::fread() : File reading problems, only %u/%u elements read",alread,nmemb); 2.5639 + return alread; 2.5640 + } 2.5641 + 2.5642 + //! Write data to a file, and check for possible errors. 2.5643 + template<typename T> 2.5644 + inline int fwrite(const T *ptr, const unsigned int nmemb, cimg_std::FILE *stream) { 2.5645 + if (!ptr || !stream) 2.5646 + throw CImgArgumentException("cimg::fwrite() : Can't write %u x %u bytes of file pointer '%p' from buffer '%p'", 2.5647 + nmemb,sizeof(T),stream,ptr); 2.5648 + if (nmemb<=0) return 0; 2.5649 + const unsigned long wlimitT = 63*1024*1024, wlimit = wlimitT/sizeof(T); 2.5650 + unsigned int towrite = nmemb, alwrite = 0, ltowrite = 0, lalwrite = 0; 2.5651 + do { 2.5652 + ltowrite = (towrite*sizeof(T))<wlimitT?towrite:wlimit; 2.5653 + lalwrite = (unsigned int)cimg_std::fwrite((void*)(ptr+alwrite),sizeof(T),ltowrite,stream); 2.5654 + alwrite+=lalwrite; 2.5655 + towrite-=lalwrite; 2.5656 + } while (ltowrite==lalwrite && towrite>0); 2.5657 + if (towrite>0) warn("cimg::fwrite() : File writing problems, only %u/%u elements written",alwrite,nmemb); 2.5658 + return alwrite; 2.5659 + } 2.5660 + 2.5661 + inline const char* option(const char *const name, const int argc, const char *const *const argv, 2.5662 + const char *defaut, const char *const usage=0) { 2.5663 + static bool first = true, visu = false; 2.5664 + const char *res = 0; 2.5665 + if (first) { 2.5666 + first=false; 2.5667 + visu = (cimg::option("-h",argc,argv,(char*)0)!=0); 2.5668 + visu |= (cimg::option("-help",argc,argv,(char*)0)!=0); 2.5669 + visu |= (cimg::option("--help",argc,argv,(char*)0)!=0); 2.5670 + } 2.5671 + if (!name && visu) { 2.5672 + if (usage) { 2.5673 + cimg_std::fprintf(cimg_stdout,"\n %s%s%s",cimg::t_red,cimg::basename(argv[0]),cimg::t_normal); 2.5674 + cimg_std::fprintf(cimg_stdout," : %s",usage); 2.5675 + cimg_std::fprintf(cimg_stdout," (%s, %s)\n\n",__DATE__,__TIME__); 2.5676 + } 2.5677 + if (defaut) cimg_std::fprintf(cimg_stdout,"%s\n",defaut); 2.5678 + } 2.5679 + if (name) { 2.5680 + if (argc>0) { 2.5681 + int k = 0; 2.5682 + while (k<argc && cimg::strcmp(argv[k],name)) ++k; 2.5683 + res = (k++==argc?defaut:(k==argc?argv[--k]:argv[k])); 2.5684 + } else res = defaut; 2.5685 + if (visu && usage) cimg_std::fprintf(cimg_stdout," %s%-16s%s %-24s %s%s%s\n", 2.5686 + cimg::t_bold,name,cimg::t_normal,res?res:"0",cimg::t_green,usage,cimg::t_normal); 2.5687 + } 2.5688 + return res; 2.5689 + } 2.5690 + 2.5691 + inline bool option(const char *const name, const int argc, const char *const *const argv, 2.5692 + const bool defaut, const char *const usage=0) { 2.5693 + const char *s = cimg::option(name,argc,argv,(char*)0); 2.5694 + const bool res = s?(cimg::strcasecmp(s,"false") && cimg::strcasecmp(s,"off") && cimg::strcasecmp(s,"0")):defaut; 2.5695 + cimg::option(name,0,0,res?"true":"false",usage); 2.5696 + return res; 2.5697 + } 2.5698 + 2.5699 + inline int option(const char *const name, const int argc, const char *const *const argv, 2.5700 + const int defaut, const char *const usage=0) { 2.5701 + const char *s = cimg::option(name,argc,argv,(char*)0); 2.5702 + const int res = s?cimg_std::atoi(s):defaut; 2.5703 + char tmp[256]; 2.5704 + cimg_std::sprintf(tmp,"%d",res); 2.5705 + cimg::option(name,0,0,tmp,usage); 2.5706 + return res; 2.5707 + } 2.5708 + 2.5709 + inline char option(const char *const name, const int argc, const char *const *const argv, 2.5710 + const char defaut, const char *const usage=0) { 2.5711 + const char *s = cimg::option(name,argc,argv,(char*)0); 2.5712 + const char res = s?s[0]:defaut; 2.5713 + char tmp[8]; 2.5714 + tmp[0] = res; tmp[1] ='\0'; 2.5715 + cimg::option(name,0,0,tmp,usage); 2.5716 + return res; 2.5717 + } 2.5718 + 2.5719 + inline float option(const char *const name, const int argc, const char *const *const argv, 2.5720 + const float defaut, const char *const usage=0) { 2.5721 + const char *s = cimg::option(name,argc,argv,(char*)0); 2.5722 + const float res = s?cimg::atof(s):defaut; 2.5723 + char tmp[256]; 2.5724 + cimg_std::sprintf(tmp,"%g",res); 2.5725 + cimg::option(name,0,0,tmp,usage); 2.5726 + return res; 2.5727 + } 2.5728 + 2.5729 + inline double option(const char *const name, const int argc, const char *const *const argv, 2.5730 + const double defaut, const char *const usage=0) { 2.5731 + const char *s = cimg::option(name,argc,argv,(char*)0); 2.5732 + const double res = s?cimg::atof(s):defaut; 2.5733 + char tmp[256]; 2.5734 + cimg_std::sprintf(tmp,"%g",res); 2.5735 + cimg::option(name,0,0,tmp,usage); 2.5736 + return res; 2.5737 + } 2.5738 + 2.5739 + inline const char* argument(const unsigned int nb, const int argc, const char *const *const argv, const unsigned int nb_singles=0, ...) { 2.5740 + for (int k = 1, pos = 0; k<argc;) { 2.5741 + const char *const item = argv[k]; 2.5742 + bool option = (*item=='-'), single_option = false; 2.5743 + if (option) { 2.5744 + va_list ap; 2.5745 + va_start(ap,nb_singles); 2.5746 + for (unsigned int i=0; i<nb_singles; ++i) if (!cimg::strcasecmp(item,va_arg(ap,char*))) { single_option = true; break; } 2.5747 + va_end(ap); 2.5748 + } 2.5749 + if (option) { ++k; if (!single_option) ++k; } 2.5750 + else { if (pos++==(int)nb) return item; else ++k; } 2.5751 + } 2.5752 + return 0; 2.5753 + } 2.5754 + 2.5755 + //! Print informations about %CImg environement variables. 2.5756 + /** 2.5757 + Printing is done on the standard error output. 2.5758 + **/ 2.5759 + inline void info() { 2.5760 + char tmp[1024] = { 0 }; 2.5761 + cimg_std::fprintf(cimg_stdout,"\n %sCImg Library %u.%u.%u%s, compiled %s ( %s ) with the following flags :\n\n", 2.5762 + cimg::t_red,cimg_version/100,(cimg_version/10)%10,cimg_version%10, 2.5763 + cimg::t_normal,__DATE__,__TIME__); 2.5764 + 2.5765 + cimg_std::fprintf(cimg_stdout," > Operating System : %s%-13s%s %s('cimg_OS'=%d)%s\n", 2.5766 + cimg::t_bold, 2.5767 + cimg_OS==1?"Unix":(cimg_OS==2?"Windows":"Unknow"), 2.5768 + cimg::t_normal,cimg::t_green, 2.5769 + cimg_OS, 2.5770 + cimg::t_normal); 2.5771 + 2.5772 + cimg_std::fprintf(cimg_stdout," > CPU endianness : %s%s Endian%s\n", 2.5773 + cimg::t_bold, 2.5774 + cimg::endianness()?"Big":"Little", 2.5775 + cimg::t_normal); 2.5776 + 2.5777 +#ifdef cimg_use_visualcpp6 2.5778 + cimg_std::fprintf(cimg_stdout," > Using Visual C++ 6.0 : %s%-13s%s %s('cimg_use_visualcpp6' defined)%s\n", 2.5779 + cimg::t_bold,"Yes",cimg::t_normal,cimg::t_green,cimg::t_normal); 2.5780 +#endif 2.5781 + 2.5782 + cimg_std::fprintf(cimg_stdout," > Debug messages : %s%-13s%s %s('cimg_debug'=%d)%s\n", 2.5783 + cimg::t_bold, 2.5784 + cimg_debug==0?"Quiet":(cimg_debug==1?"Console":(cimg_debug==2?"Dialog":(cimg_debug==3?"Console+Warnings":"Dialog+Warnings"))), 2.5785 + cimg::t_normal,cimg::t_green, 2.5786 + cimg_debug, 2.5787 + cimg::t_normal); 2.5788 + 2.5789 + cimg_std::fprintf(cimg_stdout," > Stricts warnings : %s%-13s%s %s('cimg_strict_warnings' %s)%s\n", 2.5790 + cimg::t_bold, 2.5791 +#ifdef cimg_strict_warnings 2.5792 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5793 +#else 2.5794 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5795 +#endif 2.5796 + cimg::t_normal); 2.5797 + 2.5798 + cimg_std::fprintf(cimg_stdout," > Using VT100 messages : %s%-13s%s %s('cimg_use_vt100' %s)%s\n", 2.5799 + cimg::t_bold, 2.5800 +#ifdef cimg_use_vt100 2.5801 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5802 +#else 2.5803 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5804 +#endif 2.5805 + cimg::t_normal); 2.5806 + 2.5807 + cimg_std::fprintf(cimg_stdout," > Display type : %s%-13s%s %s('cimg_display'=%d)%s\n", 2.5808 + cimg::t_bold, 2.5809 + cimg_display==0?"No display": 2.5810 + (cimg_display==1?"X11": 2.5811 + (cimg_display==2?"Windows GDI": 2.5812 + (cimg_display==3?"Carbon":"Unknow"))), 2.5813 + cimg::t_normal,cimg::t_green, 2.5814 + cimg_display, 2.5815 + cimg::t_normal); 2.5816 + 2.5817 +#if cimg_display==1 2.5818 + cimg_std::fprintf(cimg_stdout," > Using XShm for X11 : %s%-13s%s %s('cimg_use_xshm' %s)%s\n", 2.5819 + cimg::t_bold, 2.5820 +#ifdef cimg_use_xshm 2.5821 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5822 +#else 2.5823 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5824 +#endif 2.5825 + cimg::t_normal); 2.5826 + 2.5827 + cimg_std::fprintf(cimg_stdout," > Using XRand for X11 : %s%-13s%s %s('cimg_use_xrandr' %s)%s\n", 2.5828 + cimg::t_bold, 2.5829 +#ifdef cimg_use_xrandr 2.5830 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5831 +#else 2.5832 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5833 +#endif 2.5834 + cimg::t_normal); 2.5835 +#endif 2.5836 + cimg_std::fprintf(cimg_stdout," > Using OpenMP : %s%-13s%s %s('cimg_use_openmp' %s)%s\n", 2.5837 + cimg::t_bold, 2.5838 +#ifdef cimg_use_openmp 2.5839 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5840 +#else 2.5841 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5842 +#endif 2.5843 + cimg::t_normal); 2.5844 + cimg_std::fprintf(cimg_stdout," > Using PNG library : %s%-13s%s %s('cimg_use_png' %s)%s\n", 2.5845 + cimg::t_bold, 2.5846 +#ifdef cimg_use_png 2.5847 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5848 +#else 2.5849 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5850 +#endif 2.5851 + cimg::t_normal); 2.5852 + cimg_std::fprintf(cimg_stdout," > Using JPEG library : %s%-13s%s %s('cimg_use_jpeg' %s)%s\n", 2.5853 + cimg::t_bold, 2.5854 +#ifdef cimg_use_jpeg 2.5855 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5856 +#else 2.5857 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5858 +#endif 2.5859 + cimg::t_normal); 2.5860 + 2.5861 + cimg_std::fprintf(cimg_stdout," > Using TIFF library : %s%-13s%s %s('cimg_use_tiff' %s)%s\n", 2.5862 + cimg::t_bold, 2.5863 +#ifdef cimg_use_tiff 2.5864 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5865 +#else 2.5866 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5867 +#endif 2.5868 + cimg::t_normal); 2.5869 + 2.5870 + cimg_std::fprintf(cimg_stdout," > Using Magick++ library : %s%-13s%s %s('cimg_use_magick' %s)%s\n", 2.5871 + cimg::t_bold, 2.5872 +#ifdef cimg_use_magick 2.5873 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5874 +#else 2.5875 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5876 +#endif 2.5877 + cimg::t_normal); 2.5878 + 2.5879 + cimg_std::fprintf(cimg_stdout," > Using FFTW3 library : %s%-13s%s %s('cimg_use_fftw3' %s)%s\n", 2.5880 + cimg::t_bold, 2.5881 +#ifdef cimg_use_fftw3 2.5882 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5883 +#else 2.5884 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5885 +#endif 2.5886 + cimg::t_normal); 2.5887 + 2.5888 + cimg_std::fprintf(cimg_stdout," > Using LAPACK library : %s%-13s%s %s('cimg_use_lapack' %s)%s\n", 2.5889 + cimg::t_bold, 2.5890 +#ifdef cimg_use_lapack 2.5891 + "Yes",cimg::t_normal,cimg::t_green,"defined", 2.5892 +#else 2.5893 + "No",cimg::t_normal,cimg::t_green,"undefined", 2.5894 +#endif 2.5895 + cimg::t_normal); 2.5896 + 2.5897 + cimg_std::sprintf(tmp,"\"%.1020s\"",cimg::imagemagick_path()); 2.5898 + cimg_std::fprintf(cimg_stdout," > Path of ImageMagick : %s%-13s%s\n", 2.5899 + cimg::t_bold, 2.5900 + tmp, 2.5901 + cimg::t_normal); 2.5902 + 2.5903 + cimg_std::sprintf(tmp,"\"%.1020s\"",cimg::graphicsmagick_path()); 2.5904 + cimg_std::fprintf(cimg_stdout," > Path of GraphicsMagick : %s%-13s%s\n", 2.5905 + cimg::t_bold, 2.5906 + tmp, 2.5907 + cimg::t_normal); 2.5908 + 2.5909 + cimg_std::sprintf(tmp,"\"%.1020s\"",cimg::medcon_path()); 2.5910 + cimg_std::fprintf(cimg_stdout," > Path of 'medcon' : %s%-13s%s\n", 2.5911 + cimg::t_bold, 2.5912 + tmp, 2.5913 + cimg::t_normal); 2.5914 + 2.5915 + cimg_std::sprintf(tmp,"\"%.1020s\"",cimg::temporary_path()); 2.5916 + cimg_std::fprintf(cimg_stdout," > Temporary path : %s%-13s%s\n", 2.5917 + cimg::t_bold, 2.5918 + tmp, 2.5919 + cimg::t_normal); 2.5920 + 2.5921 + cimg_std::fprintf(cimg_stdout,"\n"); 2.5922 + } 2.5923 + 2.5924 + // Declare LAPACK function signatures if necessary. 2.5925 + // 2.5926 +#ifdef cimg_use_lapack 2.5927 + template<typename T> 2.5928 + inline void getrf(int &N, T *lapA, int *IPIV, int &INFO) { 2.5929 + dgetrf_(&N,&N,lapA,&N,IPIV,&INFO); 2.5930 + } 2.5931 + 2.5932 + inline void getrf(int &N, float *lapA, int *IPIV, int &INFO) { 2.5933 + sgetrf_(&N,&N,lapA,&N,IPIV,&INFO); 2.5934 + } 2.5935 + 2.5936 + template<typename T> 2.5937 + inline void getri(int &N, T *lapA, int *IPIV, T* WORK, int &LWORK, int &INFO) { 2.5938 + dgetri_(&N,lapA,&N,IPIV,WORK,&LWORK,&INFO); 2.5939 + } 2.5940 + 2.5941 + inline void getri(int &N, float *lapA, int *IPIV, float* WORK, int &LWORK, int &INFO) { 2.5942 + sgetri_(&N,lapA,&N,IPIV,WORK,&LWORK,&INFO); 2.5943 + } 2.5944 + 2.5945 + template<typename T> 2.5946 + inline void gesvd(char &JOB, int &M, int &N, T *lapA, int &MN, 2.5947 + T *lapS, T *lapU, T *lapV, T *WORK, int &LWORK, int &INFO) { 2.5948 + dgesvd_(&JOB,&JOB,&M,&N,lapA,&MN,lapS,lapU,&M,lapV,&N,WORK,&LWORK,&INFO); 2.5949 + } 2.5950 + 2.5951 + inline void gesvd(char &JOB, int &M, int &N, float *lapA, int &MN, 2.5952 + float *lapS, float *lapU, float *lapV, float *WORK, int &LWORK, int &INFO) { 2.5953 + sgesvd_(&JOB,&JOB,&M,&N,lapA,&MN,lapS,lapU,&M,lapV,&N,WORK,&LWORK,&INFO); 2.5954 + } 2.5955 + 2.5956 + template<typename T> 2.5957 + inline void getrs(char &TRANS, int &N, T *lapA, int *IPIV, T *lapB, int &INFO) { 2.5958 + int one = 1; 2.5959 + dgetrs_(&TRANS,&N,&one,lapA,&N,IPIV,lapB,&N,&INFO); 2.5960 + } 2.5961 + 2.5962 + inline void getrs(char &TRANS, int &N, float *lapA, int *IPIV, float *lapB, int &INFO) { 2.5963 + int one = 1; 2.5964 + sgetrs_(&TRANS,&N,&one,lapA,&N,IPIV,lapB,&N,&INFO); 2.5965 + } 2.5966 + 2.5967 + template<typename T> 2.5968 + inline void syev(char &JOB, char &UPLO, int &N, T *lapA, T *lapW, T *WORK, int &LWORK, int &INFO) { 2.5969 + dsyev_(&JOB,&UPLO,&N,lapA,&N,lapW,WORK,&LWORK,&INFO); 2.5970 + } 2.5971 + 2.5972 + inline void syev(char &JOB, char &UPLO, int &N, float *lapA, float *lapW, float *WORK, int &LWORK, int &INFO) { 2.5973 + ssyev_(&JOB,&UPLO,&N,lapA,&N,lapW,WORK,&LWORK,&INFO); 2.5974 + } 2.5975 +#endif 2.5976 + 2.5977 + // End of the 'cimg' namespace 2.5978 + } 2.5979 + 2.5980 + /*------------------------------------------------ 2.5981 + # 2.5982 + # 2.5983 + # Definition of mathematical operators and 2.5984 + # external functions. 2.5985 + # 2.5986 + # 2.5987 + -------------------------------------------------*/ 2.5988 + // 2.5989 + // These functions are extern to any classes and can be used for a "functional-style" programming, 2.5990 + // such as writting : 2.5991 + // cos(img); 2.5992 + // instead of img.get_cos(); 2.5993 + // 2.5994 + // Note that only the arithmetic operators and functions are implemented here. 2.5995 + // 2.5996 + 2.5997 +#ifdef cimg_use_visualcpp6 2.5998 + template<typename t> 2.5999 + inline CImg<t> operator+(const CImg<t>& img, const t val) { 2.6000 + return CImg<t>(img,false)+=val; 2.6001 + } 2.6002 +#else 2.6003 + template<typename t1, typename t2> 2.6004 + inline CImg<typename cimg::superset<t1,t2>::type> operator+(const CImg<t1>& img, const t2 val) { 2.6005 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6006 + return CImg<t1t2>(img,false)+=val; 2.6007 + } 2.6008 +#endif 2.6009 + 2.6010 +#ifdef cimg_use_visualcpp6 2.6011 + template<typename t> 2.6012 + inline CImg<t> operator+(const t val, const CImg<t>& img) { 2.6013 + return img + val; 2.6014 + } 2.6015 +#else 2.6016 + template<typename t1, typename t2> 2.6017 + inline CImg<typename cimg::superset<t1,t2>::type> operator+(const t1 val, const CImg<t2>& img) { 2.6018 + return img + val; 2.6019 + } 2.6020 +#endif 2.6021 + 2.6022 +#ifdef cimg_use_visualcpp6 2.6023 + template<typename t> 2.6024 + inline CImgList<t> operator+(const CImgList<t>& list, const t val) { 2.6025 + return CImgList<t>(list)+=val; 2.6026 + } 2.6027 +#else 2.6028 + template<typename t1, typename t2> 2.6029 + inline CImgList<typename cimg::superset<t1,t2>::type> operator+(const CImgList<t1>& list, const t2 val) { 2.6030 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6031 + return CImgList<t1t2>(list)+=val; 2.6032 + } 2.6033 +#endif 2.6034 + 2.6035 +#ifdef cimg_use_visualcpp6 2.6036 + template<typename t> 2.6037 + inline CImgList<t> operator+(const t val, const CImgList<t>& list) { 2.6038 + return list + val; 2.6039 + } 2.6040 +#else 2.6041 + template<typename t1, typename t2> 2.6042 + inline CImgList<typename cimg::superset<t1,t2>::type> operator+(const t1 val, const CImgList<t2>& list) { 2.6043 + return list + val; 2.6044 + } 2.6045 +#endif 2.6046 + 2.6047 + template<typename t1, typename t2> 2.6048 + inline CImg<typename cimg::superset<t1,t2>::type> operator+(const CImg<t1>& img1, const CImg<t2>& img2) { 2.6049 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6050 + return CImg<t1t2>(img1,false)+=img2; 2.6051 + } 2.6052 + 2.6053 + template<typename t1, typename t2> 2.6054 + inline CImgList<typename cimg::superset<t1,t2>::type> operator+(const CImg<t1>& img, const CImgList<t2>& list) { 2.6055 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6056 + return CImgList<t1t2>(list)+=img; 2.6057 + } 2.6058 + 2.6059 + template<typename t1, typename t2> 2.6060 + inline CImgList<typename cimg::superset<t1,t2>::type> operator+(const CImgList<t1>& list, const CImg<t2>& img) { 2.6061 + return img + list; 2.6062 + } 2.6063 + 2.6064 + template<typename t1, typename t2> 2.6065 + inline CImgList<typename cimg::superset<t1,t2>::type> operator+(const CImgList<t1>& list1, const CImgList<t2>& list2) { 2.6066 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6067 + return CImgList<t1t2>(list1)+=list2; 2.6068 + } 2.6069 + 2.6070 +#ifdef cimg_use_visualcpp6 2.6071 + template<typename t> 2.6072 + inline CImg<t> operator-(const CImg<t>& img, const t val) { 2.6073 + return CImg<t>(img,false)-=val; 2.6074 + } 2.6075 +#else 2.6076 + template<typename t1, typename t2> 2.6077 + inline CImg<typename cimg::superset<t1,t2>::type> operator-(const CImg<t1>& img, const t2 val) { 2.6078 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6079 + return CImg<t1t2>(img,false)-=val; 2.6080 + } 2.6081 +#endif 2.6082 + 2.6083 +#ifdef cimg_use_visualcpp6 2.6084 + template<typename t> 2.6085 + inline CImg<t> operator-(const t val, const CImg<t>& img) { 2.6086 + return CImg<t>(img.width,img.height,img.depth,img.dim,val)-=img; 2.6087 + } 2.6088 +#else 2.6089 + template<typename t1, typename t2> 2.6090 + inline CImg<typename cimg::superset<t1,t2>::type> operator-(const t1 val, const CImg<t2>& img) { 2.6091 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6092 + return CImg<t1t2>(img.width,img.height,img.depth,img.dim,(t1t2)val)-=img; 2.6093 + } 2.6094 +#endif 2.6095 + 2.6096 +#ifdef cimg_use_visualcpp6 2.6097 + template<typename t> 2.6098 + inline CImgList<t> operator-(const CImgList<t>& list, const t val) { 2.6099 + return CImgList<t>(list)-=val; 2.6100 + } 2.6101 +#else 2.6102 + template<typename t1, typename t2> 2.6103 + inline CImgList<typename cimg::superset<t1,t2>::type> operator-(const CImgList<t1>& list, const t2 val) { 2.6104 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6105 + return CImgList<t1t2>(list)-=val; 2.6106 + } 2.6107 +#endif 2.6108 + 2.6109 +#ifdef cimg_use_visualcpp6 2.6110 + template<typename t> 2.6111 + inline CImgList<double> operator-(const t val, const CImgList<t>& list) { 2.6112 + CImgList<t> res(list.size); 2.6113 + cimglist_for(res,l) res[l] = val - list[l]; 2.6114 + return res; 2.6115 + } 2.6116 +#else 2.6117 + template<typename t1, typename t2> 2.6118 + inline CImgList<typename cimg::superset<t1,t2>::type> operator-(const t1 val, const CImgList<t2>& list) { 2.6119 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6120 + CImgList<t1t2> res(list.size); 2.6121 + cimglist_for(res,l) res[l] = val - list[l]; 2.6122 + return res; 2.6123 + } 2.6124 +#endif 2.6125 + 2.6126 + template<typename t1, typename t2> 2.6127 + inline CImg<typename cimg::superset<t1,t2>::type> operator-(const CImg<t1>& img1, const CImg<t2>& img2) { 2.6128 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6129 + return CImg<t1t2>(img1,false)-=img2; 2.6130 + } 2.6131 + 2.6132 + template<typename t1, typename t2> 2.6133 + inline CImgList<typename cimg::superset<t1,t2>::type> operator-(const CImg<t1>& img, const CImgList<t2>& list) { 2.6134 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6135 + CImgList<t1t2> res(list.size); 2.6136 + cimglist_for(res,l) res[l] = img - list[l]; 2.6137 + return res; 2.6138 + } 2.6139 + 2.6140 + template<typename t1, typename t2> 2.6141 + inline CImgList<typename cimg::superset<t1,t2>::type> operator-(const CImgList<t1>& list, const CImg<t2>& img) { 2.6142 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6143 + return CImgList<t1t2>(list)-=img; 2.6144 + } 2.6145 + 2.6146 + template<typename t1, typename t2> 2.6147 + inline CImgList<typename cimg::superset<t1,t2>::type> operator-(const CImgList<t1>& list1, const CImgList<t2>& list2) { 2.6148 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6149 + return CImgList<t1t2>(list1)-=list2; 2.6150 + } 2.6151 + 2.6152 +#ifdef cimg_use_visualcpp6 2.6153 + template<typename t> 2.6154 + inline CImg<t> operator*(const CImg<t>& img, const double val) { 2.6155 + return CImg<t>(img,false)*=val; 2.6156 + } 2.6157 +#else 2.6158 + template<typename t1, typename t2> 2.6159 + inline CImg<typename cimg::superset<t1,t2>::type> operator*(const CImg<t1>& img, const t2 val) { 2.6160 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6161 + return CImg<t1t2>(img,false)*=val; 2.6162 + } 2.6163 +#endif 2.6164 + 2.6165 +#ifdef cimg_use_visualcpp6 2.6166 + template<typename t> 2.6167 + inline CImg<t> operator*(const double val, const CImg<t>& img) { 2.6168 + return img*val; 2.6169 + } 2.6170 +#else 2.6171 + template<typename t1, typename t2> 2.6172 + inline CImg<typename cimg::superset<t1,t2>::type> operator*(const t1 val, const CImg<t2>& img) { 2.6173 + return img*val; 2.6174 + } 2.6175 +#endif 2.6176 + 2.6177 +#ifdef cimg_use_visualcpp6 2.6178 + template<typename t> 2.6179 + inline CImgList<t> operator*(const CImgList<t>& list, const double val) { 2.6180 + return CImgList<t>(list)*=val; 2.6181 + } 2.6182 +#else 2.6183 + template<typename t1, typename t2> 2.6184 + inline CImgList<typename cimg::superset<t1,t2>::type> operator*(const CImgList<t1>& list, const t2 val) { 2.6185 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6186 + return CImgList<t1t2>(list)*=val; 2.6187 + } 2.6188 +#endif 2.6189 + 2.6190 +#ifdef cimg_use_visualcpp6 2.6191 + template<typename t> 2.6192 + inline CImgList<t> operator*(const double val, const CImgList<t>& list) { 2.6193 + return list*val; 2.6194 + } 2.6195 +#else 2.6196 + template<typename t1, typename t2> 2.6197 + inline CImgList<typename cimg::superset<t1,t2>::type> operator*(const t1 val, const CImgList<t2>& list) { 2.6198 + return list*val; 2.6199 + } 2.6200 +#endif 2.6201 + 2.6202 + template<typename t1, typename t2> 2.6203 + inline CImg<typename cimg::superset<t1,t2>::type> operator*(const CImg<t1>& img1, const CImg<t2>& img2) { 2.6204 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6205 + if (img1.width!=img2.height) 2.6206 + throw CImgArgumentException("operator*() : can't multiply a matrix (%ux%u) by a matrix (%ux%u)", 2.6207 + img1.width,img1.height,img2.width,img2.height); 2.6208 + CImg<t1t2> res(img2.width,img1.height); 2.6209 + t1t2 val; 2.6210 +#ifdef cimg_use_openmp 2.6211 +#pragma omp parallel for if (img1.size()>=1000 && img2.size()>=1000) private(val) 2.6212 +#endif 2.6213 + cimg_forXY(res,i,j) { val = 0; cimg_forX(img1,k) val+=img1(k,j)*img2(i,k); res(i,j) = val; } 2.6214 + return res; 2.6215 + } 2.6216 + 2.6217 + template<typename t1, typename t2> 2.6218 + inline CImgList<typename cimg::superset<t1,t2>::type> operator*(const CImg<t1>& img, const CImgList<t2>& list) { 2.6219 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6220 + CImgList<t1t2> res(list.size); 2.6221 + cimglist_for(res,l) res[l] = img*list[l]; 2.6222 + return res; 2.6223 + } 2.6224 + 2.6225 + template<typename t1, typename t2> 2.6226 + inline CImgList<typename cimg::superset<t1,t2>::type> operator*(const CImgList<t1>& list, const CImg<t2>& img) { 2.6227 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6228 + CImgList<t1t2> res(list.size); 2.6229 + cimglist_for(res,l) res[l] = list[l]*img; 2.6230 + return res; 2.6231 + } 2.6232 + 2.6233 + template<typename t1, typename t2> 2.6234 + inline CImgList<typename cimg::superset<t1,t2>::type> operator*(const CImgList<t1>& list1, const CImgList<t2>& list2) { 2.6235 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6236 + CImgList<t1t2> res(cimg::min(list1.size,list2.size)); 2.6237 + cimglist_for(res,l) res[l] = list1[l]*list2[l]; 2.6238 + return res; 2.6239 + } 2.6240 + 2.6241 +#ifdef cimg_use_visualcpp6 2.6242 + template<typename t> 2.6243 + inline CImg<t> operator/(const CImg<t>& img, const double val) { 2.6244 + return CImg<t>(img,false)/=val; 2.6245 + } 2.6246 +#else 2.6247 + template<typename t1, typename t2> 2.6248 + inline CImg<typename cimg::superset<t1,t2>::type> operator/(const CImg<t1>& img, const t2 val) { 2.6249 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6250 + return CImg<t1t2>(img,false)/=val; 2.6251 + } 2.6252 +#endif 2.6253 + 2.6254 +#ifdef cimg_use_visualcpp6 2.6255 + template<typename t> 2.6256 + inline CImg<t> operator/(const double val, CImg<t>& img) { 2.6257 + return val*img.get_invert(); 2.6258 + } 2.6259 +#else 2.6260 + template<typename t1, typename t2> 2.6261 + inline CImg<typename cimg::superset<t1,t2>::type> operator/(const t1 val, CImg<t2>& img) { 2.6262 + return val*img.get_invert(); 2.6263 + } 2.6264 +#endif 2.6265 + 2.6266 +#ifdef cimg_use_visualcpp6 2.6267 + template<typename t> 2.6268 + inline CImgList<t> operator/(const CImgList<t>& list, const double val) { 2.6269 + return CImgList<t>(list)/=val; 2.6270 + } 2.6271 +#else 2.6272 + template<typename t1, typename t2> 2.6273 + inline CImgList<typename cimg::superset<t1,t2>::type> operator/(const CImgList<t1>& list, const t2 val) { 2.6274 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6275 + return CImgList<t1t2>(list)/=val; 2.6276 + } 2.6277 +#endif 2.6278 + 2.6279 +#ifdef cimg_use_visualcpp6 2.6280 + template<typename t> 2.6281 + inline CImgList<t> operator/(const double val, const CImgList<t>& list) { 2.6282 + CImgList<t> res(list.size); 2.6283 + cimglist_for(res,l) res[l] = val/list[l]; 2.6284 + return res; 2.6285 + } 2.6286 +#else 2.6287 + template<typename t1, typename t2> 2.6288 + inline CImgList<typename cimg::superset<t1,t2>::type> operator/(const t1 val, const CImgList<t2>& list) { 2.6289 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6290 + CImgList<t1t2> res(list.size); 2.6291 + cimglist_for(res,l) res[l] = val/list[l]; 2.6292 + return res; 2.6293 + } 2.6294 +#endif 2.6295 + 2.6296 + template<typename t1, typename t2> 2.6297 + inline CImg<typename cimg::superset<t1,t2>::type> operator/(const CImg<t1>& img1, const CImg<t2>& img2) { 2.6298 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6299 + return CImg<t1t2>(img1,false)*=img2.get_invert(); 2.6300 + } 2.6301 + 2.6302 + template<typename t1, typename t2> 2.6303 + inline CImg<typename cimg::superset<t1,t2>::type> operator/(const CImg<t1>& img, const CImgList<t2>& list) { 2.6304 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6305 + CImgList<t1t2> res(list.size); 2.6306 + cimglist_for(res,l) res[l] = img/list[l]; 2.6307 + return res; 2.6308 + } 2.6309 + 2.6310 + template<typename t1, typename t2> 2.6311 + inline CImgList<typename cimg::superset<t1,t2>::type> operator/(const CImgList<t1>& list, const CImg<t2>& img) { 2.6312 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6313 + return CImgList<t1t2>(list)/=img; 2.6314 + } 2.6315 + 2.6316 + template<typename t1, typename t2> 2.6317 + inline CImgList<typename cimg::superset<t1,t2>::type> operator/(const CImgList<t1>& list1, const CImgList<t2>& list2) { 2.6318 + typedef typename cimg::superset<t1,t2>::type t1t2; 2.6319 + return CImgList<t1t2>(list1)/=list2; 2.6320 + } 2.6321 + 2.6322 + template<typename T> 2.6323 + inline CImg<_cimg_Tfloat> sqr(const CImg<T>& instance) { 2.6324 + return instance.get_sqr(); 2.6325 + } 2.6326 + 2.6327 + template<typename T> 2.6328 + inline CImg<_cimg_Tfloat> sqrt(const CImg<T>& instance) { 2.6329 + return instance.get_sqrt(); 2.6330 + } 2.6331 + 2.6332 + template<typename T> 2.6333 + inline CImg<_cimg_Tfloat> exp(const CImg<T>& instance) { 2.6334 + return instance.get_exp(); 2.6335 + } 2.6336 + 2.6337 + template<typename T> 2.6338 + inline CImg<_cimg_Tfloat> log(const CImg<T>& instance) { 2.6339 + return instance.get_log(); 2.6340 + } 2.6341 + 2.6342 + template<typename T> 2.6343 + inline CImg<_cimg_Tfloat> log10(const CImg<T>& instance) { 2.6344 + return instance.get_log10(); 2.6345 + } 2.6346 + 2.6347 + template<typename T> 2.6348 + inline CImg<_cimg_Tfloat> abs(const CImg<T>& instance) { 2.6349 + return instance.get_abs(); 2.6350 + } 2.6351 + 2.6352 + template<typename T> 2.6353 + inline CImg<_cimg_Tfloat> cos(const CImg<T>& instance) { 2.6354 + return instance.get_cos(); 2.6355 + } 2.6356 + 2.6357 + template<typename T> 2.6358 + inline CImg<_cimg_Tfloat> sin(const CImg<T>& instance) { 2.6359 + return instance.get_sin(); 2.6360 + } 2.6361 + 2.6362 + template<typename T> 2.6363 + inline CImg<_cimg_Tfloat> tan(const CImg<T>& instance) { 2.6364 + return instance.get_tan(); 2.6365 + } 2.6366 + 2.6367 + template<typename T> 2.6368 + inline CImg<_cimg_Tfloat> acos(const CImg<T>& instance) { 2.6369 + return instance.get_acos(); 2.6370 + } 2.6371 + 2.6372 + template<typename T> 2.6373 + inline CImg<_cimg_Tfloat> asin(const CImg<T>& instance) { 2.6374 + return instance.get_asin(); 2.6375 + } 2.6376 + 2.6377 + template<typename T> 2.6378 + inline CImg<_cimg_Tfloat> atan(const CImg<T>& instance) { 2.6379 + return instance.get_atan(); 2.6380 + } 2.6381 + 2.6382 + template<typename T> 2.6383 + inline CImg<T> transpose(const CImg<T>& instance) { 2.6384 + return instance.get_transpose(); 2.6385 + } 2.6386 + 2.6387 + template<typename T> 2.6388 + inline CImg<_cimg_Tfloat> invert(const CImg<T>& instance) { 2.6389 + return instance.get_invert(); 2.6390 + } 2.6391 + 2.6392 + template<typename T> 2.6393 + inline CImg<_cimg_Tfloat> pseudoinvert(const CImg<T>& instance) { 2.6394 + return instance.get_pseudoinvert(); 2.6395 + } 2.6396 + 2.6397 + /*------------------------------------------- 2.6398 + # 2.6399 + # 2.6400 + # 2.6401 + # Definition of the CImgDisplay structure 2.6402 + # 2.6403 + # 2.6404 + # 2.6405 + --------------------------------------------*/ 2.6406 + 2.6407 + //! This class represents a window which can display \ref CImg images and handles mouse and keyboard events. 2.6408 + /** 2.6409 + Creating a \c CImgDisplay instance opens a window that can be used to display a \c CImg<T> image 2.6410 + of a \c CImgList<T> image list inside. When a display is created, associated window events 2.6411 + (such as mouse motion, keyboard and window size changes) are handled and can be easily 2.6412 + detected by testing specific \c CImgDisplay data fields. 2.6413 + See \ref cimg_displays for a complete tutorial on using the \c CImgDisplay class. 2.6414 + **/ 2.6415 + 2.6416 + struct CImgDisplay { 2.6417 + 2.6418 + //! Width of the display 2.6419 + unsigned int width; 2.6420 + 2.6421 + //! Height of the display 2.6422 + unsigned int height; 2.6423 + 2.6424 + //! Normalization type used for the display 2.6425 + unsigned int normalization; 2.6426 + 2.6427 + //! Display title 2.6428 + char* title; 2.6429 + 2.6430 + //! X-pos of the display on the screen 2.6431 + volatile int window_x; 2.6432 + 2.6433 + //! Y-pos of the display on the screen 2.6434 + volatile int window_y; 2.6435 + 2.6436 + //! Width of the underlying window 2.6437 + volatile unsigned int window_width; 2.6438 + 2.6439 + //! Height of the underlying window 2.6440 + volatile unsigned int window_height; 2.6441 + 2.6442 + //! X-coordinate of the mouse pointer on the display 2.6443 + volatile int mouse_x; 2.6444 + 2.6445 + //! Y-coordinate of the mouse pointer on the display 2.6446 + volatile int mouse_y; 2.6447 + 2.6448 + //! Button state of the mouse 2.6449 + volatile unsigned int buttons[512]; 2.6450 + volatile unsigned int& button; 2.6451 + 2.6452 + //! Wheel state of the mouse 2.6453 + volatile int wheel; 2.6454 + 2.6455 + //! Key value if pressed 2.6456 + volatile unsigned int& key; 2.6457 + volatile unsigned int keys[512]; 2.6458 + 2.6459 + //! Key value if released 2.6460 + volatile unsigned int& released_key; 2.6461 + volatile unsigned int released_keys[512]; 2.6462 + 2.6463 + //! Closed state of the window 2.6464 + volatile bool is_closed; 2.6465 + 2.6466 + //! Resized state of the window 2.6467 + volatile bool is_resized; 2.6468 + 2.6469 + //! Moved state of the window 2.6470 + volatile bool is_moved; 2.6471 + 2.6472 + //! Event state of the window 2.6473 + volatile bool is_event; 2.6474 + 2.6475 + //! Current state of the corresponding key (exists for all referenced keys). 2.6476 + volatile bool is_keyESC; 2.6477 + volatile bool is_keyF1; 2.6478 + volatile bool is_keyF2; 2.6479 + volatile bool is_keyF3; 2.6480 + volatile bool is_keyF4; 2.6481 + volatile bool is_keyF5; 2.6482 + volatile bool is_keyF6; 2.6483 + volatile bool is_keyF7; 2.6484 + volatile bool is_keyF8; 2.6485 + volatile bool is_keyF9; 2.6486 + volatile bool is_keyF10; 2.6487 + volatile bool is_keyF11; 2.6488 + volatile bool is_keyF12; 2.6489 + volatile bool is_keyPAUSE; 2.6490 + volatile bool is_key1; 2.6491 + volatile bool is_key2; 2.6492 + volatile bool is_key3; 2.6493 + volatile bool is_key4; 2.6494 + volatile bool is_key5; 2.6495 + volatile bool is_key6; 2.6496 + volatile bool is_key7; 2.6497 + volatile bool is_key8; 2.6498 + volatile bool is_key9; 2.6499 + volatile bool is_key0; 2.6500 + volatile bool is_keyBACKSPACE; 2.6501 + volatile bool is_keyINSERT; 2.6502 + volatile bool is_keyHOME; 2.6503 + volatile bool is_keyPAGEUP; 2.6504 + volatile bool is_keyTAB; 2.6505 + volatile bool is_keyQ; 2.6506 + volatile bool is_keyW; 2.6507 + volatile bool is_keyE; 2.6508 + volatile bool is_keyR; 2.6509 + volatile bool is_keyT; 2.6510 + volatile bool is_keyY; 2.6511 + volatile bool is_keyU; 2.6512 + volatile bool is_keyI; 2.6513 + volatile bool is_keyO; 2.6514 + volatile bool is_keyP; 2.6515 + volatile bool is_keyDELETE; 2.6516 + volatile bool is_keyEND; 2.6517 + volatile bool is_keyPAGEDOWN; 2.6518 + volatile bool is_keyCAPSLOCK; 2.6519 + volatile bool is_keyA; 2.6520 + volatile bool is_keyS; 2.6521 + volatile bool is_keyD; 2.6522 + volatile bool is_keyF; 2.6523 + volatile bool is_keyG; 2.6524 + volatile bool is_keyH; 2.6525 + volatile bool is_keyJ; 2.6526 + volatile bool is_keyK; 2.6527 + volatile bool is_keyL; 2.6528 + volatile bool is_keyENTER; 2.6529 + volatile bool is_keySHIFTLEFT; 2.6530 + volatile bool is_keyZ; 2.6531 + volatile bool is_keyX; 2.6532 + volatile bool is_keyC; 2.6533 + volatile bool is_keyV; 2.6534 + volatile bool is_keyB; 2.6535 + volatile bool is_keyN; 2.6536 + volatile bool is_keyM; 2.6537 + volatile bool is_keySHIFTRIGHT; 2.6538 + volatile bool is_keyARROWUP; 2.6539 + volatile bool is_keyCTRLLEFT; 2.6540 + volatile bool is_keyAPPLEFT; 2.6541 + volatile bool is_keyALT; 2.6542 + volatile bool is_keySPACE; 2.6543 + volatile bool is_keyALTGR; 2.6544 + volatile bool is_keyAPPRIGHT; 2.6545 + volatile bool is_keyMENU; 2.6546 + volatile bool is_keyCTRLRIGHT; 2.6547 + volatile bool is_keyARROWLEFT; 2.6548 + volatile bool is_keyARROWDOWN; 2.6549 + volatile bool is_keyARROWRIGHT; 2.6550 + volatile bool is_keyPAD0; 2.6551 + volatile bool is_keyPAD1; 2.6552 + volatile bool is_keyPAD2; 2.6553 + volatile bool is_keyPAD3; 2.6554 + volatile bool is_keyPAD4; 2.6555 + volatile bool is_keyPAD5; 2.6556 + volatile bool is_keyPAD6; 2.6557 + volatile bool is_keyPAD7; 2.6558 + volatile bool is_keyPAD8; 2.6559 + volatile bool is_keyPAD9; 2.6560 + volatile bool is_keyPADADD; 2.6561 + volatile bool is_keyPADSUB; 2.6562 + volatile bool is_keyPADMUL; 2.6563 + volatile bool is_keyPADDIV; 2.6564 + 2.6565 + //! Fullscreen state of the display 2.6566 + bool is_fullscreen; 2.6567 + 2.6568 + float fps_fps, min, max; 2.6569 + unsigned long timer, fps_frames, fps_timer; 2.6570 + 2.6571 +#ifdef cimgdisplay_plugin 2.6572 +#include cimgdisplay_plugin 2.6573 +#endif 2.6574 +#ifdef cimgdisplay_plugin1 2.6575 +#include cimgdisplay_plugin1 2.6576 +#endif 2.6577 +#ifdef cimgdisplay_plugin2 2.6578 +#include cimgdisplay_plugin2 2.6579 +#endif 2.6580 +#ifdef cimgdisplay_plugin3 2.6581 +#include cimgdisplay_plugin3 2.6582 +#endif 2.6583 +#ifdef cimgdisplay_plugin4 2.6584 +#include cimgdisplay_plugin4 2.6585 +#endif 2.6586 +#ifdef cimgdisplay_plugin5 2.6587 +#include cimgdisplay_plugin5 2.6588 +#endif 2.6589 +#ifdef cimgdisplay_plugin6 2.6590 +#include cimgdisplay_plugin6 2.6591 +#endif 2.6592 +#ifdef cimgdisplay_plugin7 2.6593 +#include cimgdisplay_plugin7 2.6594 +#endif 2.6595 +#ifdef cimgdisplay_plugin8 2.6596 +#include cimgdisplay_plugin8 2.6597 +#endif 2.6598 + 2.6599 + //! Create an empty display window. 2.6600 + CImgDisplay(): 2.6601 + width(0),height(0),normalization(0),title(0), 2.6602 + window_x(0),window_y(0),window_width(0),window_height(0), 2.6603 + mouse_x(0),mouse_y(0),button(*buttons),wheel(0),key(*keys),released_key(*released_keys), 2.6604 + is_closed(true),is_resized(false),is_moved(false),is_event(false),is_fullscreen(false), 2.6605 + min(0),max(0) {} 2.6606 + 2.6607 + //! Create a display window with a specified size \p pwidth x \p height. 2.6608 + /** \param dimw Width of the display window. 2.6609 + \param dimh Height of the display window. 2.6610 + \param title Title of the display window. 2.6611 + \param normalization_type Normalization type of the display window (0=none, 1=always, 2=once). 2.6612 + \param fullscreen_flag : Fullscreen mode. 2.6613 + \param closed_flag : Initially visible mode. 2.6614 + A black image will be initially displayed in the display window. 2.6615 + **/ 2.6616 + CImgDisplay(const unsigned int dimw, const unsigned int dimh, const char *title=0, 2.6617 + const unsigned int normalization_type=3, 2.6618 + const bool fullscreen_flag=false, const bool closed_flag=false): 2.6619 + width(0),height(0),normalization(0),title(0), 2.6620 + window_x(0),window_y(0),window_width(0),window_height(0), 2.6621 + mouse_x(0),mouse_y(0),button(*buttons),wheel(0),key(*keys),released_key(*released_keys), 2.6622 + is_closed(true),is_resized(false),is_moved(false),is_event(false),is_fullscreen(false), 2.6623 + min(0),max(0) { 2.6624 + assign(dimw,dimh,title,normalization_type,fullscreen_flag,closed_flag); 2.6625 + } 2.6626 + 2.6627 + //! Create a display window from an image. 2.6628 + /** \param img : Image that will be used to create the display window. 2.6629 + \param title : Title of the display window 2.6630 + \param normalization_type : Normalization type of the display window. 2.6631 + \param fullscreen_flag : Fullscreen mode. 2.6632 + \param closed_flag : Initially visible mode. 2.6633 + **/ 2.6634 + template<typename T> 2.6635 + CImgDisplay(const CImg<T>& img, const char *title=0, 2.6636 + const unsigned int normalization_type=3, 2.6637 + const bool fullscreen_flag=false, const bool closed_flag=false): 2.6638 + width(0),height(0),normalization(0),title(0), 2.6639 + window_x(0),window_y(0),window_width(0),window_height(0), 2.6640 + mouse_x(0),mouse_y(0),button(*buttons),wheel(0),key(*keys),released_key(*released_keys), 2.6641 + is_closed(true),is_resized(false),is_moved(false),is_event(false),is_fullscreen(false),min(0),max(0) { 2.6642 + assign(img,title,normalization_type,fullscreen_flag,closed_flag); 2.6643 + } 2.6644 + 2.6645 + //! Create a display window from an image list. 2.6646 + /** \param list : The list of images to display. 2.6647 + \param title : Title of the display window 2.6648 + \param normalization_type : Normalization type of the display window. 2.6649 + \param fullscreen_flag : Fullscreen mode. 2.6650 + \param closed_flag : Initially visible mode. 2.6651 + **/ 2.6652 + template<typename T> 2.6653 + CImgDisplay(const CImgList<T>& list, const char *title=0, 2.6654 + const unsigned int normalization_type=3, 2.6655 + const bool fullscreen_flag=false, const bool closed_flag=false): 2.6656 + width(0),height(0),normalization(0),title(0), 2.6657 + window_x(0),window_y(0),window_width(0),window_height(0), 2.6658 + mouse_x(0),mouse_y(0),button(*buttons),wheel(0),key(*keys),released_key(*released_keys), 2.6659 + is_closed(true),is_resized(false),is_moved(false),is_event(false),is_fullscreen(false),min(0),max(0) { 2.6660 + assign(list,title,normalization_type,fullscreen_flag,closed_flag); 2.6661 + } 2.6662 + 2.6663 + //! Create a display window by copying another one. 2.6664 + /** 2.6665 + \param disp : Display window to copy. 2.6666 + **/ 2.6667 + CImgDisplay(const CImgDisplay& disp): 2.6668 + width(0),height(0),normalization(0),title(0), 2.6669 + window_x(0),window_y(0),window_width(0),window_height(0), 2.6670 + mouse_x(0),mouse_y(0),button(*buttons),wheel(0),key(*keys),released_key(*released_keys), 2.6671 + is_closed(true),is_resized(false),is_moved(false),is_event(false),is_fullscreen(false),min(0),max(0) { 2.6672 + assign(disp); 2.6673 + } 2.6674 + 2.6675 + //! Destructor. 2.6676 + ~CImgDisplay() { 2.6677 + assign(); 2.6678 + } 2.6679 + 2.6680 + //! Assignment operator. 2.6681 + CImgDisplay& operator=(const CImgDisplay& disp) { 2.6682 + return assign(disp); 2.6683 + } 2.6684 + 2.6685 + //! Return true is display is empty. 2.6686 + bool is_empty() const { 2.6687 + return (!width || !height); 2.6688 + } 2.6689 + 2.6690 + //! Return true if display is not empty. 2.6691 + operator bool() const { 2.6692 + return !is_empty(); 2.6693 + } 2.6694 + 2.6695 + //! Return display width. 2.6696 + int dimx() const { 2.6697 + return (int)width; 2.6698 + } 2.6699 + 2.6700 + //! Return display height. 2.6701 + int dimy() const { 2.6702 + return (int)height; 2.6703 + } 2.6704 + 2.6705 + //! Return display window width. 2.6706 + int window_dimx() const { 2.6707 + return (int)window_width; 2.6708 + } 2.6709 + 2.6710 + //! Return display window height. 2.6711 + int window_dimy() const { 2.6712 + return (int)window_height; 2.6713 + } 2.6714 + 2.6715 + //! Return X-coordinate of the window. 2.6716 + int window_posx() const { 2.6717 + return window_x; 2.6718 + } 2.6719 + 2.6720 + //! Return Y-coordinate of the window. 2.6721 + int window_posy() const { 2.6722 + return window_y; 2.6723 + } 2.6724 + 2.6725 + //! Synchronized waiting function. Same as cimg::wait(). 2.6726 + CImgDisplay& wait(const unsigned int milliseconds) { 2.6727 + cimg::_sleep(milliseconds,timer); 2.6728 + return *this; 2.6729 + } 2.6730 + 2.6731 + //! Wait for an event occuring on the current display. 2.6732 + CImgDisplay& wait() { 2.6733 + if (!is_empty()) wait(*this); 2.6734 + return *this; 2.6735 + } 2.6736 + 2.6737 + //! Wait for any event occuring on the display \c disp1. 2.6738 + static void wait(CImgDisplay& disp1) { 2.6739 + disp1.is_event = 0; 2.6740 + while (!disp1.is_event) wait_all(); 2.6741 + } 2.6742 + 2.6743 + //! Wait for any event occuring either on the display \c disp1 or \c disp2. 2.6744 + static void wait(CImgDisplay& disp1, CImgDisplay& disp2) { 2.6745 + disp1.is_event = disp2.is_event = 0; 2.6746 + while (!disp1.is_event && !disp2.is_event) wait_all(); 2.6747 + } 2.6748 + 2.6749 + //! Wait for any event occuring either on the display \c disp1, \c disp2 or \c disp3. 2.6750 + static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& disp3) { 2.6751 + disp1.is_event = disp2.is_event = disp3.is_event = 0; 2.6752 + while (!disp1.is_event && !disp2.is_event && !disp3.is_event) wait_all(); 2.6753 + } 2.6754 + 2.6755 + //! Wait for any event occuring either on the display \c disp1, \c disp2, \c disp3 or \c disp4. 2.6756 + static void wait(CImgDisplay& disp1, CImgDisplay& disp2, CImgDisplay& disp3, CImgDisplay& disp4) { 2.6757 + disp1.is_event = disp2.is_event = disp3.is_event = disp4.is_event = 0; 2.6758 + while (!disp1.is_event && !disp2.is_event && !disp3.is_event && !disp4.is_event) wait_all(); 2.6759 + } 2.6760 + 2.6761 + //! Return the frame per second rate. 2.6762 + float frames_per_second() { 2.6763 + if (!fps_timer) fps_timer = cimg::time(); 2.6764 + const float delta = (cimg::time()-fps_timer)/1000.0f; 2.6765 + ++fps_frames; 2.6766 + if (delta>=1) { 2.6767 + fps_fps = fps_frames/delta; 2.6768 + fps_frames = 0; 2.6769 + fps_timer = cimg::time(); 2.6770 + } 2.6771 + return fps_fps; 2.6772 + } 2.6773 + 2.6774 + //! Display an image list CImgList<T> into a display window. 2.6775 + /** First, all images of the list are appended into a single image used for visualization, 2.6776 + then this image is displayed in the current display window. 2.6777 + \param list : The list of images to display. 2.6778 + \param axis : The axis used to append the image for visualization. Can be 'x' (default),'y','z' or 'v'. 2.6779 + \param align : Defines the relative alignment of images when displaying images of different sizes. 2.6780 + Can be '\p c' (centered, which is the default), '\p p' (top alignment) and '\p n' (bottom aligment). 2.6781 + **/ 2.6782 + template<typename T> 2.6783 + CImgDisplay& display(const CImgList<T>& list, const char axis='x', const char align='p') { 2.6784 + return display(list.get_append(axis,align)); 2.6785 + } 2.6786 + 2.6787 + //! Display an image CImg<T> into a display window. 2.6788 + template<typename T> 2.6789 + CImgDisplay& operator<<(const CImg<T>& img) { 2.6790 + return display(img); 2.6791 + } 2.6792 + 2.6793 + //! Display an image CImg<T> into a display window. 2.6794 + template<typename T> 2.6795 + CImgDisplay& operator<<(const CImgList<T>& list) { 2.6796 + return display(list); 2.6797 + } 2.6798 + 2.6799 + //! Resize a display window with the size of an image. 2.6800 + /** \param img : Input image. \p image.width and \p image.height give the new dimensions of the display window. 2.6801 + \param redraw : If \p true (default), the current displayed image in the display window will 2.6802 + be bloc-interpolated to fit the new dimensions. If \p false, a black image will be drawn in the resized window. 2.6803 + **/ 2.6804 + template<typename T> 2.6805 + CImgDisplay& resize(const CImg<T>& img, const bool redraw=true) { 2.6806 + return resize(img.width,img.height,redraw); 2.6807 + } 2.6808 + 2.6809 + //! Resize a display window using the size of the given display \p disp. 2.6810 + CImgDisplay& resize(const CImgDisplay& disp, const bool redraw=true) { 2.6811 + return resize(disp.width,disp.height,redraw); 2.6812 + } 2.6813 + 2.6814 + //! Resize a display window in its current size. 2.6815 + CImgDisplay& resize(const bool redraw=true) { 2.6816 + resize(window_width,window_height,redraw); 2.6817 + return *this; 2.6818 + } 2.6819 + 2.6820 + //! Set fullscreen mode. 2.6821 + CImgDisplay& fullscreen(const bool redraw=true) { 2.6822 + if (is_empty() || is_fullscreen) return *this; 2.6823 + return toggle_fullscreen(redraw); 2.6824 + } 2.6825 + 2.6826 + //! Set normal screen mode. 2.6827 + CImgDisplay& normalscreen(const bool redraw=true) { 2.6828 + if (is_empty() || !is_fullscreen) return *this; 2.6829 + return toggle_fullscreen(redraw); 2.6830 + } 2.6831 + 2.6832 + // Inner routine used for fast resizing of buffer to display size. 2.6833 + template<typename t, typename T> 2.6834 + static void _render_resize(const T *ptrs, const unsigned int ws, const unsigned int hs, 2.6835 + t *ptrd, const unsigned int wd, const unsigned int hd) { 2.6836 + unsigned int *const offx = new unsigned int[wd], *const offy = new unsigned int[hd+1], *poffx, *poffy; 2.6837 + float s, curr, old; 2.6838 + s = (float)ws/wd; 2.6839 + poffx = offx; curr = 0; for (unsigned int x=0; x<wd; ++x) { old=curr; curr+=s; *(poffx++) = (unsigned int)curr-(unsigned int)old; } 2.6840 + s = (float)hs/hd; 2.6841 + poffy = offy; curr = 0; for (unsigned int y=0; y<hd; ++y) { old=curr; curr+=s; *(poffy++) = ws*((unsigned int)curr-(unsigned int)old); } 2.6842 + *poffy = 0; 2.6843 + poffy = offy; 2.6844 + {for (unsigned int y=0; y<hd; ) { 2.6845 + const T *ptr = ptrs; 2.6846 + poffx = offx; 2.6847 + for (unsigned int x=0; x<wd; ++x) { *(ptrd++) = *ptr; ptr+=*(poffx++); } 2.6848 + ++y; 2.6849 + unsigned int dy=*(poffy++); 2.6850 + for (;!dy && y<hd; cimg_std::memcpy(ptrd, ptrd-wd, sizeof(t)*wd), ++y, ptrd+=wd, dy=*(poffy++)) {} 2.6851 + ptrs+=dy; 2.6852 + }} 2.6853 + delete[] offx; delete[] offy; 2.6854 + } 2.6855 + 2.6856 + //! Clear all events of the current display. 2.6857 + CImgDisplay& flush() { 2.6858 + cimg_std::memset((void*)buttons,0,512*sizeof(unsigned int)); 2.6859 + cimg_std::memset((void*)keys,0,512*sizeof(unsigned int)); 2.6860 + cimg_std::memset((void*)released_keys,0,512*sizeof(unsigned int)); 2.6861 + is_keyESC = is_keyF1 = is_keyF2 = is_keyF3 = is_keyF4 = is_keyF5 = is_keyF6 = is_keyF7 = is_keyF8 = is_keyF9 = 2.6862 + is_keyF10 = is_keyF11 = is_keyF12 = is_keyPAUSE = is_key1 = is_key2 = is_key3 = is_key4 = is_key5 = is_key6 = 2.6863 + is_key7 = is_key8 = is_key9 = is_key0 = is_keyBACKSPACE = is_keyINSERT = is_keyHOME = is_keyPAGEUP = is_keyTAB = 2.6864 + is_keyQ = is_keyW = is_keyE = is_keyR = is_keyT = is_keyY = is_keyU = is_keyI = is_keyO = is_keyP = is_keyDELETE = 2.6865 + is_keyEND = is_keyPAGEDOWN = is_keyCAPSLOCK = is_keyA = is_keyS = is_keyD = is_keyF = is_keyG = is_keyH = is_keyJ = 2.6866 + is_keyK = is_keyL = is_keyENTER = is_keySHIFTLEFT = is_keyZ = is_keyX = is_keyC = is_keyV = is_keyB = is_keyN = 2.6867 + is_keyM = is_keySHIFTRIGHT = is_keyARROWUP = is_keyCTRLLEFT = is_keyAPPLEFT = is_keyALT = is_keySPACE = is_keyALTGR = is_keyAPPRIGHT = 2.6868 + is_keyMENU = is_keyCTRLRIGHT = is_keyARROWLEFT = is_keyARROWDOWN = is_keyARROWRIGHT = is_keyPAD0 = is_keyPAD1 = is_keyPAD2 = 2.6869 + is_keyPAD3 = is_keyPAD4 = is_keyPAD5 = is_keyPAD6 = is_keyPAD7 = is_keyPAD8 = is_keyPAD9 = is_keyPADADD = is_keyPADSUB = 2.6870 + is_keyPADMUL = is_keyPADDIV = false; 2.6871 + is_resized = is_moved = is_event = false; 2.6872 + fps_timer = fps_frames = timer = wheel = 0; 2.6873 + mouse_x = mouse_y = -1; 2.6874 + fps_fps = 0; 2.6875 + return *this; 2.6876 + } 2.6877 + 2.6878 + // Update 'is_key' fields. 2.6879 + void update_iskey(const unsigned int key, const bool pressed=true) { 2.6880 +#define _cimg_iskey_case(k) if (key==cimg::key##k) is_key##k = pressed; 2.6881 + _cimg_iskey_case(ESC); _cimg_iskey_case(F1); _cimg_iskey_case(F2); _cimg_iskey_case(F3); 2.6882 + _cimg_iskey_case(F4); _cimg_iskey_case(F5); _cimg_iskey_case(F6); _cimg_iskey_case(F7); 2.6883 + _cimg_iskey_case(F8); _cimg_iskey_case(F9); _cimg_iskey_case(F10); _cimg_iskey_case(F11); 2.6884 + _cimg_iskey_case(F12); _cimg_iskey_case(PAUSE); _cimg_iskey_case(1); _cimg_iskey_case(2); 2.6885 + _cimg_iskey_case(3); _cimg_iskey_case(4); _cimg_iskey_case(5); _cimg_iskey_case(6); 2.6886 + _cimg_iskey_case(7); _cimg_iskey_case(8); _cimg_iskey_case(9); _cimg_iskey_case(0); 2.6887 + _cimg_iskey_case(BACKSPACE); _cimg_iskey_case(INSERT); _cimg_iskey_case(HOME); 2.6888 + _cimg_iskey_case(PAGEUP); _cimg_iskey_case(TAB); _cimg_iskey_case(Q); _cimg_iskey_case(W); 2.6889 + _cimg_iskey_case(E); _cimg_iskey_case(R); _cimg_iskey_case(T); _cimg_iskey_case(Y); 2.6890 + _cimg_iskey_case(U); _cimg_iskey_case(I); _cimg_iskey_case(O); _cimg_iskey_case(P); 2.6891 + _cimg_iskey_case(DELETE); _cimg_iskey_case(END); _cimg_iskey_case(PAGEDOWN); 2.6892 + _cimg_iskey_case(CAPSLOCK); _cimg_iskey_case(A); _cimg_iskey_case(S); _cimg_iskey_case(D); 2.6893 + _cimg_iskey_case(F); _cimg_iskey_case(G); _cimg_iskey_case(H); _cimg_iskey_case(J); 2.6894 + _cimg_iskey_case(K); _cimg_iskey_case(L); _cimg_iskey_case(ENTER); 2.6895 + _cimg_iskey_case(SHIFTLEFT); _cimg_iskey_case(Z); _cimg_iskey_case(X); _cimg_iskey_case(C); 2.6896 + _cimg_iskey_case(V); _cimg_iskey_case(B); _cimg_iskey_case(N); _cimg_iskey_case(M); 2.6897 + _cimg_iskey_case(SHIFTRIGHT); _cimg_iskey_case(ARROWUP); _cimg_iskey_case(CTRLLEFT); 2.6898 + _cimg_iskey_case(APPLEFT); _cimg_iskey_case(ALT); _cimg_iskey_case(SPACE); _cimg_iskey_case(ALTGR); 2.6899 + _cimg_iskey_case(APPRIGHT); _cimg_iskey_case(MENU); _cimg_iskey_case(CTRLRIGHT); 2.6900 + _cimg_iskey_case(ARROWLEFT); _cimg_iskey_case(ARROWDOWN); _cimg_iskey_case(ARROWRIGHT); 2.6901 + _cimg_iskey_case(PAD0); _cimg_iskey_case(PAD1); _cimg_iskey_case(PAD2); 2.6902 + _cimg_iskey_case(PAD3); _cimg_iskey_case(PAD4); _cimg_iskey_case(PAD5); 2.6903 + _cimg_iskey_case(PAD6); _cimg_iskey_case(PAD7); _cimg_iskey_case(PAD8); 2.6904 + _cimg_iskey_case(PAD9); _cimg_iskey_case(PADADD); _cimg_iskey_case(PADSUB); 2.6905 + _cimg_iskey_case(PADMUL); _cimg_iskey_case(PADDIV); 2.6906 + } 2.6907 + 2.6908 + //! Test if any key has been pressed. 2.6909 + bool is_key(const bool remove=false) { 2.6910 + for (unsigned int *ptrs=(unsigned int*)keys+512-1; ptrs>=keys; --ptrs) if (*ptrs) { if (remove) *ptrs = 0; return true; } 2.6911 + return false; 2.6912 + } 2.6913 + 2.6914 + //! Test if a key has been pressed. 2.6915 + bool is_key(const unsigned int key1, const bool remove) { 2.6916 + for (unsigned int *ptrs=(unsigned int*)keys+512-1; ptrs>=keys; --ptrs) if (*ptrs==key1) { if (remove) *ptrs = 0; return true; } 2.6917 + return false; 2.6918 + } 2.6919 + 2.6920 + //! Test if a key sequence has been typed. 2.6921 + bool is_key(const unsigned int key1, const unsigned int key2, const bool remove) { 2.6922 + const unsigned int seq[] = { key1, key2 }; 2.6923 + return is_key(seq,2,remove); 2.6924 + } 2.6925 + 2.6926 + //! Test if a key sequence has been typed. 2.6927 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, const bool remove) { 2.6928 + const unsigned int seq[] = { key1, key2, key3 }; 2.6929 + return is_key(seq,3,remove); 2.6930 + } 2.6931 + 2.6932 + //! Test if a key sequence has been typed. 2.6933 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6934 + const unsigned int key4, const bool remove) { 2.6935 + const unsigned int seq[] = { key1, key2, key3, key4 }; 2.6936 + return is_key(seq,4,remove); 2.6937 + } 2.6938 + 2.6939 + //! Test if a key sequence has been typed. 2.6940 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6941 + const unsigned int key4, const unsigned int key5, const bool remove) { 2.6942 + const unsigned int seq[] = { key1, key2, key3, key4, key5 }; 2.6943 + return is_key(seq,5,remove); 2.6944 + } 2.6945 + 2.6946 + //! Test if a key sequence has been typed. 2.6947 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6948 + const unsigned int key4, const unsigned int key5, const unsigned int key6, const bool remove) { 2.6949 + const unsigned int seq[] = { key1, key2, key3, key4, key5, key6 }; 2.6950 + return is_key(seq,6,remove); 2.6951 + } 2.6952 + 2.6953 + //! Test if a key sequence has been typed. 2.6954 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6955 + const unsigned int key4, const unsigned int key5, const unsigned int key6, 2.6956 + const unsigned int key7, const bool remove) { 2.6957 + const unsigned int seq[] = { key1, key2, key3, key4, key5, key6, key7 }; 2.6958 + return is_key(seq,7,remove); 2.6959 + } 2.6960 + 2.6961 + //! Test if a key sequence has been typed. 2.6962 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6963 + const unsigned int key4, const unsigned int key5, const unsigned int key6, 2.6964 + const unsigned int key7, const unsigned int key8, const bool remove) { 2.6965 + const unsigned int seq[] = { key1, key2, key3, key4, key5, key6, key7, key8 }; 2.6966 + return is_key(seq,8,remove); 2.6967 + } 2.6968 + 2.6969 + //! Test if a key sequence has been typed. 2.6970 + bool is_key(const unsigned int key1, const unsigned int key2, const unsigned int key3, 2.6971 + const unsigned int key4, const unsigned int key5, const unsigned int key6, 2.6972 + const unsigned int key7, const unsigned int key8, const unsigned int key9, const bool remove) { 2.6973 + const unsigned int seq[] = { key1, key2, key3, key4, key5, key6, key7, key8, key9 }; 2.6974 + return is_key(seq,9,remove); 2.6975 + } 2.6976 + 2.6977 + //! Test if a key sequence has been typed. 2.6978 + bool is_key(const unsigned int *const keyseq, const unsigned int N, const bool remove=true) { 2.6979 + if (keyseq && N) { 2.6980 + const unsigned int *const ps_end = keyseq+N-1, k = *ps_end, *const pk_end = (unsigned int*)keys+1+512-N; 2.6981 + for (unsigned int *pk = (unsigned int*)keys; pk<pk_end; ) { 2.6982 + if (*(pk++)==k) { 2.6983 + bool res = true; 2.6984 + const unsigned int *ps = ps_end, *pk2 = pk; 2.6985 + for (unsigned int i=1; i<N; ++i) res = (*(--ps)==*(pk2++)); 2.6986 + if (res) { 2.6987 + if (remove) cimg_std::memset((void*)(pk-1),0,sizeof(unsigned int)*N); 2.6988 + return true; 2.6989 + } 2.6990 + } 2.6991 + } 2.6992 + } 2.6993 + return false; 2.6994 + } 2.6995 + 2.6996 + // Find the good width and height of a window to display an image (internal routine). 2.6997 +#define cimg_fitscreen(dx,dy,dz) CImgDisplay::_fitscreen(dx,dy,dz,128,-85,false),CImgDisplay::_fitscreen(dx,dy,dz,128,-85,true) 2.6998 + static unsigned int _fitscreen(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, 2.6999 + const int dmin=128, const int dmax=-85,const bool return_last=false) { 2.7000 + unsigned int nw = dx + (dz>1?dz:0), nh = dy + (dz>1?dz:0); 2.7001 + const unsigned int 2.7002 + sw = CImgDisplay::screen_dimx(), sh = CImgDisplay::screen_dimy(), 2.7003 + mw = dmin<0?(unsigned int)(sw*-dmin/100):(unsigned int)dmin, 2.7004 + mh = dmin<0?(unsigned int)(sh*-dmin/100):(unsigned int)dmin, 2.7005 + Mw = dmax<0?(unsigned int)(sw*-dmax/100):(unsigned int)dmax, 2.7006 + Mh = dmax<0?(unsigned int)(sh*-dmax/100):(unsigned int)dmax; 2.7007 + if (nw<mw) { nh = nh*mw/nw; nh+=(nh==0); nw = mw; } 2.7008 + if (nh<mh) { nw = nw*mh/nh; nw+=(nw==0); nh = mh; } 2.7009 + if (nw>Mw) { nh = nh*Mw/nw; nh+=(nh==0); nw = Mw; } 2.7010 + if (nh>Mh) { nw = nw*Mh/nh; nw+=(nw==0); nh = Mh; } 2.7011 + if (nw<mw) nw = mw; 2.7012 + if (nh<mh) nh = mh; 2.7013 + if (return_last) return nh; 2.7014 + return nw; 2.7015 + } 2.7016 + 2.7017 + // When no display available 2.7018 + //--------------------------- 2.7019 +#if cimg_display==0 2.7020 + 2.7021 + //! Return the width of the screen resolution. 2.7022 + static int screen_dimx() { 2.7023 + return 0; 2.7024 + } 2.7025 + 2.7026 + //! Return the height of the screen resolution. 2.7027 + static int screen_dimy() { 2.7028 + return 0; 2.7029 + } 2.7030 + 2.7031 + //! Wait for a window event in any CImg window. 2.7032 + static void wait_all() {} 2.7033 + 2.7034 + //! In-place version of the destructor. 2.7035 + CImgDisplay& assign() { 2.7036 + return *this; 2.7037 + } 2.7038 + 2.7039 + //! In-place version of the previous constructor. 2.7040 + CImgDisplay& assign(const unsigned int dimw, const unsigned int dimh, const char *title=0, 2.7041 + const unsigned int normalization_type=3, 2.7042 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7043 + throw CImgDisplayException("CImgDisplay() : Display has been required but is not available (cimg_display=0)"); 2.7044 + const char* avoid_warning = title + dimw + dimh + normalization_type + (int)fullscreen_flag + (int)closed_flag; 2.7045 + avoid_warning = 0; 2.7046 + return *this; 2.7047 + } 2.7048 + 2.7049 + //! In-place version of the previous constructor. 2.7050 + template<typename T> 2.7051 + CImgDisplay& assign(const CImg<T>& img, const char *title=0, 2.7052 + const unsigned int normalization_type=3, 2.7053 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7054 + throw CImgDisplayException("CImgDisplay()::assign() : Display has been required but is not available (cimg_display=0)"); 2.7055 + const char* avoid_warning = title + img.width + normalization_type + (int)fullscreen_flag + (int)closed_flag; 2.7056 + avoid_warning = 0; 2.7057 + return assign(0,0); 2.7058 + } 2.7059 + 2.7060 + //! In-place version of the previous constructor. 2.7061 + template<typename T> 2.7062 + CImgDisplay& assign(const CImgList<T>& list, const char *title=0, 2.7063 + const unsigned int normalization_type=3, 2.7064 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7065 + throw CImgDisplayException("CImgDisplay()::assign() : Display has been required but is not available (cimg_display=0)"); 2.7066 + const char* avoid_warning = title + list.size + normalization_type + (int)fullscreen_flag + (int)closed_flag; 2.7067 + avoid_warning = 0; 2.7068 + return assign(0,0); 2.7069 + } 2.7070 + 2.7071 + //! In-place version of the previous constructor. 2.7072 + CImgDisplay& assign(const CImgDisplay &disp) { 2.7073 + return assign(disp.width,disp.height); 2.7074 + } 2.7075 + 2.7076 + //! Resize window. 2.7077 + CImgDisplay& resize(const int width, const int height, const bool redraw=true) { 2.7078 + int avoid_warning = width | height | (int)redraw; 2.7079 + avoid_warning = 0; 2.7080 + return *this; 2.7081 + } 2.7082 + 2.7083 + //! Toggle fullscreen mode. 2.7084 + CImgDisplay& toggle_fullscreen(const bool redraw=true) { 2.7085 + bool avoid_warning = redraw; 2.7086 + avoid_warning = false; 2.7087 + return *this; 2.7088 + } 2.7089 + 2.7090 + //! Show a closed display. 2.7091 + CImgDisplay& show() { 2.7092 + return *this; 2.7093 + } 2.7094 + 2.7095 + //! Close a visible display. 2.7096 + CImgDisplay& close() { 2.7097 + return *this; 2.7098 + } 2.7099 + 2.7100 + //! Move window. 2.7101 + CImgDisplay& move(const int posx, const int posy) { 2.7102 + int avoid_warning = posx | posy; 2.7103 + avoid_warning = 0; 2.7104 + return *this; 2.7105 + } 2.7106 + 2.7107 + //! Show mouse pointer. 2.7108 + CImgDisplay& show_mouse() { 2.7109 + return *this; 2.7110 + } 2.7111 + 2.7112 + //! Hide mouse pointer. 2.7113 + CImgDisplay& hide_mouse() { 2.7114 + return *this; 2.7115 + } 2.7116 + 2.7117 + //! Move mouse pointer to a specific location. 2.7118 + CImgDisplay& set_mouse(const int posx, const int posy) { 2.7119 + int avoid_warning = posx | posy; 2.7120 + avoid_warning = 0; 2.7121 + return *this; 2.7122 + } 2.7123 + 2.7124 + //! Set the window title. 2.7125 + CImgDisplay& set_title(const char *format, ...) { 2.7126 + const char *avoid_warning = format; 2.7127 + avoid_warning = 0; 2.7128 + return *this; 2.7129 + } 2.7130 + 2.7131 + //! Display an image in a window. 2.7132 + template<typename T> 2.7133 + CImgDisplay& display(const CImg<T>& img) { 2.7134 + unsigned int avoid_warning = img.width; 2.7135 + avoid_warning = 0; 2.7136 + return *this; 2.7137 + } 2.7138 + 2.7139 + //! Re-paint image content in window. 2.7140 + CImgDisplay& paint() { 2.7141 + return *this; 2.7142 + } 2.7143 + 2.7144 + //! Render image buffer into GDI native image format. 2.7145 + template<typename T> 2.7146 + CImgDisplay& render(const CImg<T>& img) { 2.7147 + unsigned int avoid_warning = img.width; 2.7148 + avoid_warning = 0; 2.7149 + return *this; 2.7150 + } 2.7151 + 2.7152 + //! Take a snapshot of the display in the specified image. 2.7153 + template<typename T> 2.7154 + const CImgDisplay& snapshot(CImg<T>& img) const { 2.7155 + img.assign(width,height,1,3,0); 2.7156 + return *this; 2.7157 + } 2.7158 + 2.7159 + // X11-based display 2.7160 + //------------------- 2.7161 +#elif cimg_display==1 2.7162 + Atom wm_delete_window, wm_delete_protocol; 2.7163 + Window window, background_window; 2.7164 + Colormap colormap; 2.7165 + XImage *image; 2.7166 + void *data; 2.7167 +#ifdef cimg_use_xshm 2.7168 + XShmSegmentInfo *shminfo; 2.7169 +#endif 2.7170 + 2.7171 + static int screen_dimx() { 2.7172 + int res = 0; 2.7173 + if (!cimg::X11attr().display) { 2.7174 + Display *disp = XOpenDisplay((cimg_std::getenv("DISPLAY")?cimg_std::getenv("DISPLAY"):":0.0")); 2.7175 + if (!disp) 2.7176 + throw CImgDisplayException("CImgDisplay::screen_dimx() : Can't open X11 display."); 2.7177 + res = DisplayWidth(disp,DefaultScreen(disp)); 2.7178 + XCloseDisplay(disp); 2.7179 + } else { 2.7180 +#ifdef cimg_use_xrandr 2.7181 + if (cimg::X11attr().resolutions && cimg::X11attr().curr_resolution) 2.7182 + res = cimg::X11attr().resolutions[cimg::X11attr().curr_resolution].width; 2.7183 + else 2.7184 +#endif 2.7185 + res = DisplayWidth(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)); 2.7186 + } 2.7187 + return res; 2.7188 + } 2.7189 + 2.7190 + static int screen_dimy() { 2.7191 + int res = 0; 2.7192 + if (!cimg::X11attr().display) { 2.7193 + Display *disp = XOpenDisplay((cimg_std::getenv("DISPLAY") ? cimg_std::getenv("DISPLAY") : ":0.0")); 2.7194 + if (!disp) 2.7195 + throw CImgDisplayException("CImgDisplay::screen_dimy() : Can't open X11 display."); 2.7196 + res = DisplayHeight(disp,DefaultScreen(disp)); 2.7197 + XCloseDisplay(disp); 2.7198 + } else { 2.7199 +#ifdef cimg_use_xrandr 2.7200 + if (cimg::X11attr().resolutions && cimg::X11attr().curr_resolution) 2.7201 + res = cimg::X11attr().resolutions[cimg::X11attr().curr_resolution].height; 2.7202 + else 2.7203 +#endif 2.7204 + res = DisplayHeight(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)); 2.7205 + } 2.7206 + return res; 2.7207 + } 2.7208 + 2.7209 + static void wait_all() { 2.7210 + if (cimg::X11attr().display) { 2.7211 + XLockDisplay(cimg::X11attr().display); 2.7212 + bool flag = true; 2.7213 + XEvent event; 2.7214 + while (flag) { 2.7215 + XNextEvent(cimg::X11attr().display, &event); 2.7216 + for (unsigned int i = 0; i<cimg::X11attr().nb_wins; ++i) 2.7217 + if (!cimg::X11attr().wins[i]->is_closed && event.xany.window==cimg::X11attr().wins[i]->window) { 2.7218 + cimg::X11attr().wins[i]->_handle_events(&event); 2.7219 + if (cimg::X11attr().wins[i]->is_event) flag = false; 2.7220 + } 2.7221 + } 2.7222 + XUnlockDisplay(cimg::X11attr().display); 2.7223 + } 2.7224 + } 2.7225 + 2.7226 + void _handle_events(const XEvent *const pevent) { 2.7227 + XEvent event = *pevent; 2.7228 + switch (event.type) { 2.7229 + case ClientMessage : { 2.7230 + if ((int)event.xclient.message_type==(int)wm_delete_protocol && 2.7231 + (int)event.xclient.data.l[0]==(int)wm_delete_window) { 2.7232 + XUnmapWindow(cimg::X11attr().display,window); 2.7233 + mouse_x = mouse_y = -1; 2.7234 + if (button) { cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button = 0; } 2.7235 + if (key) { cimg_std::memmove((void*)(keys+1),(void*)keys,512-1); key = 0; } 2.7236 + if (released_key) { cimg_std::memmove((void*)(released_keys+1),(void*)released_keys,512-1); released_key = 0; } 2.7237 + is_closed = is_event = true; 2.7238 + } 2.7239 + } break; 2.7240 + case ConfigureNotify : { 2.7241 + while (XCheckWindowEvent(cimg::X11attr().display,window,StructureNotifyMask,&event)) {} 2.7242 + const unsigned int 2.7243 + nw = event.xconfigure.width, 2.7244 + nh = event.xconfigure.height; 2.7245 + const int 2.7246 + nx = event.xconfigure.x, 2.7247 + ny = event.xconfigure.y; 2.7248 + if (nw && nh && (nw!=window_width || nh!=window_height)) { 2.7249 + window_width = nw; 2.7250 + window_height = nh; 2.7251 + mouse_x = mouse_y = -1; 2.7252 + XResizeWindow(cimg::X11attr().display,window,window_width,window_height); 2.7253 + is_resized = is_event = true; 2.7254 + } 2.7255 + if (nx!=window_x || ny!=window_y) { 2.7256 + window_x = nx; 2.7257 + window_y = ny; 2.7258 + is_moved = is_event = true; 2.7259 + } 2.7260 + } break; 2.7261 + case Expose : { 2.7262 + while (XCheckWindowEvent(cimg::X11attr().display,window,ExposureMask,&event)) {} 2.7263 + _paint(false); 2.7264 + if (is_fullscreen) { 2.7265 + XWindowAttributes attr; 2.7266 + XGetWindowAttributes(cimg::X11attr().display, window, &attr); 2.7267 + while (attr.map_state != IsViewable) XSync(cimg::X11attr().display, False); 2.7268 + XSetInputFocus(cimg::X11attr().display, window, RevertToParent, CurrentTime); 2.7269 + } 2.7270 + } break; 2.7271 + case ButtonPress : { 2.7272 + do { 2.7273 + mouse_x = event.xmotion.x; 2.7274 + mouse_y = event.xmotion.y; 2.7275 + if (mouse_x<0 || mouse_y<0 || mouse_x>=dimx() || mouse_y>=dimy()) mouse_x = mouse_y = -1; 2.7276 + switch (event.xbutton.button) { 2.7277 + case 1 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button|=1; is_event = true; break; 2.7278 + case 2 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button|=4; is_event = true; break; 2.7279 + case 3 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button|=2; is_event = true; break; 2.7280 + } 2.7281 + } while (XCheckWindowEvent(cimg::X11attr().display,window,ButtonPressMask,&event)); 2.7282 + } break; 2.7283 + case ButtonRelease : { 2.7284 + do { 2.7285 + mouse_x = event.xmotion.x; 2.7286 + mouse_y = event.xmotion.y; 2.7287 + if (mouse_x<0 || mouse_y<0 || mouse_x>=dimx() || mouse_y>=dimy()) mouse_x = mouse_y = -1; 2.7288 + switch (event.xbutton.button) { 2.7289 + case 1 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button&=~1U; is_event = true; break; 2.7290 + case 2 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button&=~4U; is_event = true; break; 2.7291 + case 3 : cimg_std::memmove((void*)(buttons+1),(void*)buttons,512-1); button&=~2U; is_event = true; break; 2.7292 + case 4 : ++wheel; is_event = true; break; 2.7293 + case 5 : --wheel; is_event = true; break; 2.7294 + } 2.7295 + } while (XCheckWindowEvent(cimg::X11attr().display,window,ButtonReleaseMask,&event)); 2.7296 + } break; 2.7297 + case KeyPress : { 2.7298 + char tmp; 2.7299 + KeySym ksym; 2.7300 + XLookupString(&event.xkey,&tmp,1,&ksym,0); 2.7301 + update_iskey((unsigned int)ksym,true); 2.7302 + if (key) cimg_std::memmove((void*)(keys+1),(void*)keys,512-1); 2.7303 + key = (unsigned int)ksym; 2.7304 + if (released_key) { cimg_std::memmove((void*)(released_keys+1),(void*)released_keys,512-1); released_key = 0; } 2.7305 + is_event = true; 2.7306 + } break; 2.7307 + case KeyRelease : { 2.7308 + char tmp; 2.7309 + KeySym ksym; 2.7310 + XLookupString(&event.xkey,&tmp,1,&ksym,0); 2.7311 + update_iskey((unsigned int)ksym,false); 2.7312 + if (key) { cimg_std::memmove((void*)(keys+1),(void*)keys,512-1); key = 0; } 2.7313 + if (released_key) cimg_std::memmove((void*)(released_keys+1),(void*)released_keys,512-1); 2.7314 + released_key = (unsigned int)ksym; 2.7315 + is_event = true; 2.7316 + } break; 2.7317 + case EnterNotify: { 2.7318 + while (XCheckWindowEvent(cimg::X11attr().display,window,EnterWindowMask,&event)) {} 2.7319 + mouse_x = event.xmotion.x; 2.7320 + mouse_y = event.xmotion.y; 2.7321 + if (mouse_x<0 || mouse_y<0 || mouse_x>=dimx() || mouse_y>=dimy()) mouse_x = mouse_y = -1; 2.7322 + } break; 2.7323 + case LeaveNotify : { 2.7324 + while (XCheckWindowEvent(cimg::X11attr().display,window,LeaveWindowMask,&event)) {} 2.7325 + mouse_x = mouse_y =-1; 2.7326 + is_event = true; 2.7327 + } break; 2.7328 + case MotionNotify : { 2.7329 + while (XCheckWindowEvent(cimg::X11attr().display,window,PointerMotionMask,&event)) {} 2.7330 + mouse_x = event.xmotion.x; 2.7331 + mouse_y = event.xmotion.y; 2.7332 + if (mouse_x<0 || mouse_y<0 || mouse_x>=dimx() || mouse_y>=dimy()) mouse_x = mouse_y = -1; 2.7333 + is_event = true; 2.7334 + } break; 2.7335 + } 2.7336 + } 2.7337 + 2.7338 + static void* _events_thread(void *arg) { 2.7339 + arg = 0; 2.7340 + XEvent event; 2.7341 + pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED,0); 2.7342 + pthread_setcancelstate(PTHREAD_CANCEL_ENABLE,0); 2.7343 + for (;;) { 2.7344 + XLockDisplay(cimg::X11attr().display); 2.7345 + bool event_flag = XCheckTypedEvent(cimg::X11attr().display, ClientMessage, &event); 2.7346 + if (!event_flag) event_flag = XCheckMaskEvent(cimg::X11attr().display, 2.7347 + ExposureMask|StructureNotifyMask|ButtonPressMask| 2.7348 + KeyPressMask|PointerMotionMask|EnterWindowMask|LeaveWindowMask| 2.7349 + ButtonReleaseMask|KeyReleaseMask,&event); 2.7350 + if (event_flag) { 2.7351 + for (unsigned int i=0; i<cimg::X11attr().nb_wins; ++i) 2.7352 + if (!cimg::X11attr().wins[i]->is_closed && event.xany.window==cimg::X11attr().wins[i]->window) 2.7353 + cimg::X11attr().wins[i]->_handle_events(&event); 2.7354 + } 2.7355 + XUnlockDisplay(cimg::X11attr().display); 2.7356 + pthread_testcancel(); 2.7357 + cimg::sleep(7); 2.7358 + } 2.7359 + return 0; 2.7360 + } 2.7361 + 2.7362 + void _set_colormap(Colormap& colormap, const unsigned int dim) { 2.7363 + XColor palette[256]; 2.7364 + switch (dim) { 2.7365 + case 1 : { // palette for greyscale images 2.7366 + for (unsigned int index=0; index<256; ++index) { 2.7367 + palette[index].pixel = index; 2.7368 + palette[index].red = palette[index].green = palette[index].blue = (unsigned short)(index<<8); 2.7369 + palette[index].flags = DoRed | DoGreen | DoBlue; 2.7370 + } 2.7371 + } break; 2.7372 + case 2 : { // palette for RG images 2.7373 + for (unsigned int index=0, r=8; r<256; r+=16) 2.7374 + for (unsigned int g=8; g<256; g+=16) { 2.7375 + palette[index].pixel = index; 2.7376 + palette[index].red = palette[index].blue = (unsigned short)(r<<8); 2.7377 + palette[index].green = (unsigned short)(g<<8); 2.7378 + palette[index++].flags = DoRed | DoGreen | DoBlue; 2.7379 + } 2.7380 + } break; 2.7381 + default : { // palette for RGB images 2.7382 + for (unsigned int index=0, r=16; r<256; r+=32) 2.7383 + for (unsigned int g=16; g<256; g+=32) 2.7384 + for (unsigned int b=32; b<256; b+=64) { 2.7385 + palette[index].pixel = index; 2.7386 + palette[index].red = (unsigned short)(r<<8); 2.7387 + palette[index].green = (unsigned short)(g<<8); 2.7388 + palette[index].blue = (unsigned short)(b<<8); 2.7389 + palette[index++].flags = DoRed | DoGreen | DoBlue; 2.7390 + } 2.7391 + } 2.7392 + } 2.7393 + XStoreColors(cimg::X11attr().display,colormap,palette,256); 2.7394 + } 2.7395 + 2.7396 + void _map_window() { 2.7397 + XWindowAttributes attr; 2.7398 + XEvent event; 2.7399 + bool exposed = false, mapped = false; 2.7400 + XMapRaised(cimg::X11attr().display,window); 2.7401 + XSync(cimg::X11attr().display,False); 2.7402 + do { 2.7403 + XWindowEvent(cimg::X11attr().display,window,StructureNotifyMask | ExposureMask,&event); 2.7404 + switch (event.type) { 2.7405 + case MapNotify : mapped = true; break; 2.7406 + case Expose : exposed = true; break; 2.7407 + default : XSync(cimg::X11attr().display, False); cimg::sleep(10); 2.7408 + } 2.7409 + } while (!(exposed && mapped)); 2.7410 + do { 2.7411 + XGetWindowAttributes(cimg::X11attr().display, window, &attr); 2.7412 + if (attr.map_state!=IsViewable) { XSync(cimg::X11attr().display,False); cimg::sleep(10); } 2.7413 + } while (attr.map_state != IsViewable); 2.7414 + window_x = attr.x; 2.7415 + window_y = attr.y; 2.7416 + } 2.7417 + 2.7418 + void _paint(const bool wait_expose=true) { 2.7419 + if (!is_closed) { 2.7420 + if (wait_expose) { 2.7421 + static XEvent event; 2.7422 + event.xexpose.type = Expose; 2.7423 + event.xexpose.serial = 0; 2.7424 + event.xexpose.send_event = True; 2.7425 + event.xexpose.display = cimg::X11attr().display; 2.7426 + event.xexpose.window = window; 2.7427 + event.xexpose.x = 0; 2.7428 + event.xexpose.y = 0; 2.7429 + event.xexpose.width = dimx(); 2.7430 + event.xexpose.height = dimy(); 2.7431 + event.xexpose.count = 0; 2.7432 + XSendEvent(cimg::X11attr().display, window, False, 0, &event); 2.7433 + } else { 2.7434 +#ifdef cimg_use_xshm 2.7435 + if (shminfo) XShmPutImage(cimg::X11attr().display,window,*cimg::X11attr().gc,image,0,0,0,0,width,height,False); 2.7436 + else 2.7437 +#endif 2.7438 + XPutImage(cimg::X11attr().display,window,*cimg::X11attr().gc,image,0,0,0,0,width,height); 2.7439 + XSync(cimg::X11attr().display, False); 2.7440 + } 2.7441 + } 2.7442 + } 2.7443 + 2.7444 + template<typename T> 2.7445 + void _resize(T foo, const unsigned int ndimx, const unsigned int ndimy, const bool redraw) { 2.7446 + foo = 0; 2.7447 +#ifdef cimg_use_xshm 2.7448 + if (shminfo) { 2.7449 + XShmSegmentInfo *nshminfo = new XShmSegmentInfo; 2.7450 + XImage *nimage = XShmCreateImage(cimg::X11attr().display,DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7451 + cimg::X11attr().nb_bits,ZPixmap,0,nshminfo,ndimx,ndimy); 2.7452 + if (!nimage) { 2.7453 + delete nshminfo; 2.7454 + return; 2.7455 + } else { 2.7456 + nshminfo->shmid = shmget(IPC_PRIVATE, ndimx*ndimy*sizeof(T), IPC_CREAT | 0777); 2.7457 + if (nshminfo->shmid==-1) { 2.7458 + XDestroyImage(nimage); 2.7459 + delete nshminfo; 2.7460 + return; 2.7461 + } else { 2.7462 + nshminfo->shmaddr = nimage->data = (char*)shmat(nshminfo->shmid,0,0); 2.7463 + if (nshminfo->shmaddr==(char*)-1) { 2.7464 + shmctl(nshminfo->shmid,IPC_RMID,0); 2.7465 + XDestroyImage(nimage); 2.7466 + delete nshminfo; 2.7467 + return; 2.7468 + } else { 2.7469 + nshminfo->readOnly = False; 2.7470 + cimg::X11attr().shm_enabled = true; 2.7471 + XErrorHandler oldXErrorHandler = XSetErrorHandler(_assign_xshm); 2.7472 + XShmAttach(cimg::X11attr().display, nshminfo); 2.7473 + XSync(cimg::X11attr().display, False); 2.7474 + XSetErrorHandler(oldXErrorHandler); 2.7475 + if (!cimg::X11attr().shm_enabled) { 2.7476 + shmdt(nshminfo->shmaddr); 2.7477 + shmctl(nshminfo->shmid,IPC_RMID,0); 2.7478 + XDestroyImage(nimage); 2.7479 + delete nshminfo; 2.7480 + return; 2.7481 + } else { 2.7482 + T *const ndata = (T*)nimage->data; 2.7483 + if (redraw) _render_resize((T*)data,width,height,ndata,ndimx,ndimy); 2.7484 + else cimg_std::memset(ndata,0,sizeof(T)*ndimx*ndimy); 2.7485 + XShmDetach(cimg::X11attr().display, shminfo); 2.7486 + XDestroyImage(image); 2.7487 + shmdt(shminfo->shmaddr); 2.7488 + shmctl(shminfo->shmid,IPC_RMID,0); 2.7489 + delete shminfo; 2.7490 + shminfo = nshminfo; 2.7491 + image = nimage; 2.7492 + data = (void*)ndata; 2.7493 + } 2.7494 + } 2.7495 + } 2.7496 + } 2.7497 + } else 2.7498 +#endif 2.7499 + { 2.7500 + T *ndata = (T*)cimg_std::malloc(ndimx*ndimy*sizeof(T)); 2.7501 + if (redraw) _render_resize((T*)data,width,height,ndata,ndimx,ndimy); 2.7502 + else cimg_std::memset(ndata,0,sizeof(T)*ndimx*ndimy); 2.7503 + data = (void*)ndata; 2.7504 + XDestroyImage(image); 2.7505 + image = XCreateImage(cimg::X11attr().display,DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7506 + cimg::X11attr().nb_bits,ZPixmap,0,(char*)data,ndimx,ndimy,8,0); 2.7507 + } 2.7508 + } 2.7509 + 2.7510 + void _init_fullscreen() { 2.7511 + background_window = 0; 2.7512 + if (is_fullscreen && !is_closed) { 2.7513 +#ifdef cimg_use_xrandr 2.7514 + int foo; 2.7515 + if (XRRQueryExtension(cimg::X11attr().display,&foo,&foo)) { 2.7516 + XRRRotations(cimg::X11attr().display, DefaultScreen(cimg::X11attr().display), &cimg::X11attr().curr_rotation); 2.7517 + if (!cimg::X11attr().resolutions) { 2.7518 + cimg::X11attr().resolutions = XRRSizes(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display),&foo); 2.7519 + cimg::X11attr().nb_resolutions = (unsigned int)foo; 2.7520 + } 2.7521 + if (cimg::X11attr().resolutions) { 2.7522 + cimg::X11attr().curr_resolution = 0; 2.7523 + for (unsigned int i=0; i<cimg::X11attr().nb_resolutions; ++i) { 2.7524 + const unsigned int 2.7525 + nw = (unsigned int)(cimg::X11attr().resolutions[i].width), 2.7526 + nh = (unsigned int)(cimg::X11attr().resolutions[i].height); 2.7527 + if (nw>=width && nh>=height && 2.7528 + nw<=(unsigned int)(cimg::X11attr().resolutions[cimg::X11attr().curr_resolution].width) && 2.7529 + nh<=(unsigned int)(cimg::X11attr().resolutions[cimg::X11attr().curr_resolution].height)) 2.7530 + cimg::X11attr().curr_resolution = i; 2.7531 + } 2.7532 + if (cimg::X11attr().curr_resolution>0) { 2.7533 + XRRScreenConfiguration *config = XRRGetScreenInfo(cimg::X11attr().display, DefaultRootWindow(cimg::X11attr().display)); 2.7534 + XRRSetScreenConfig(cimg::X11attr().display, config, DefaultRootWindow(cimg::X11attr().display), 2.7535 + cimg::X11attr().curr_resolution, cimg::X11attr().curr_rotation, CurrentTime); 2.7536 + XRRFreeScreenConfigInfo(config); 2.7537 + XSync(cimg::X11attr().display, False); 2.7538 + } 2.7539 + } 2.7540 + } 2.7541 + if (!cimg::X11attr().resolutions) 2.7542 + cimg::warn("CImgDisplay::_create_window() : Xrandr extension is not supported by the X server."); 2.7543 +#endif 2.7544 + const unsigned int sx = screen_dimx(), sy = screen_dimy(); 2.7545 + XSetWindowAttributes winattr; 2.7546 + winattr.override_redirect = True; 2.7547 + if (sx!=width || sy!=height) { 2.7548 + background_window = XCreateWindow(cimg::X11attr().display, 2.7549 + RootWindow(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)),0,0, 2.7550 + sx,sy,0,0,InputOutput,CopyFromParent,CWOverrideRedirect,&winattr); 2.7551 + const unsigned int bufsize = sx*sy*(cimg::X11attr().nb_bits==8?1:(cimg::X11attr().nb_bits==16?2:4)); 2.7552 + void *background_data = cimg_std::malloc(bufsize); 2.7553 + cimg_std::memset(background_data,0,bufsize); 2.7554 + XImage *background_image = XCreateImage(cimg::X11attr().display,DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7555 + cimg::X11attr().nb_bits,ZPixmap,0,(char*)background_data,sx,sy,8,0); 2.7556 + XEvent event; 2.7557 + XSelectInput(cimg::X11attr().display,background_window,StructureNotifyMask); 2.7558 + XMapRaised(cimg::X11attr().display,background_window); 2.7559 + do XWindowEvent(cimg::X11attr().display,background_window,StructureNotifyMask,&event); 2.7560 + while (event.type!=MapNotify); 2.7561 +#ifdef cimg_use_xshm 2.7562 + if (shminfo) XShmPutImage(cimg::X11attr().display,background_window,*cimg::X11attr().gc,background_image,0,0,0,0,sx,sy,False); 2.7563 + else 2.7564 +#endif 2.7565 + XPutImage(cimg::X11attr().display,background_window,*cimg::X11attr().gc,background_image,0,0,0,0,sx,sy); 2.7566 + XWindowAttributes attr; 2.7567 + XGetWindowAttributes(cimg::X11attr().display, background_window, &attr); 2.7568 + while (attr.map_state != IsViewable) XSync(cimg::X11attr().display, False); 2.7569 + XDestroyImage(background_image); 2.7570 + } 2.7571 + } 2.7572 + } 2.7573 + 2.7574 + void _desinit_fullscreen() { 2.7575 + if (is_fullscreen) { 2.7576 + XUngrabKeyboard(cimg::X11attr().display,CurrentTime); 2.7577 +#ifdef cimg_use_xrandr 2.7578 + if (cimg::X11attr().resolutions && cimg::X11attr().curr_resolution) { 2.7579 + XRRScreenConfiguration *config = XRRGetScreenInfo(cimg::X11attr().display, DefaultRootWindow(cimg::X11attr().display)); 2.7580 + XRRSetScreenConfig(cimg::X11attr().display, config, DefaultRootWindow(cimg::X11attr().display), 2.7581 + 0, cimg::X11attr().curr_rotation, CurrentTime); 2.7582 + XRRFreeScreenConfigInfo(config); 2.7583 + XSync(cimg::X11attr().display, False); 2.7584 + cimg::X11attr().curr_resolution = 0; 2.7585 + } 2.7586 +#endif 2.7587 + if (background_window) XDestroyWindow(cimg::X11attr().display,background_window); 2.7588 + background_window = 0; 2.7589 + is_fullscreen = false; 2.7590 + } 2.7591 + } 2.7592 + 2.7593 + static int _assign_xshm(Display *dpy, XErrorEvent *error) { 2.7594 + dpy = 0; error = 0; 2.7595 + cimg::X11attr().shm_enabled = false; 2.7596 + return 0; 2.7597 + } 2.7598 + 2.7599 + void _assign(const unsigned int dimw, const unsigned int dimh, const char *ptitle=0, 2.7600 + const unsigned int normalization_type=3, 2.7601 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7602 + 2.7603 + // Allocate space for window title 2.7604 + const int s = cimg::strlen(ptitle)+1; 2.7605 + char *tmp_title = s?new char[s]:0; 2.7606 + if (s) cimg_std::memcpy(tmp_title,ptitle,s*sizeof(char)); 2.7607 + 2.7608 + // Destroy previous display window if existing 2.7609 + if (!is_empty()) assign(); 2.7610 + 2.7611 + // Open X11 display if necessary. 2.7612 + if (!cimg::X11attr().display) { 2.7613 + static bool xinit_threads = false; 2.7614 + if (!xinit_threads) { XInitThreads(); xinit_threads = true; } 2.7615 + cimg::X11attr().nb_wins = 0; 2.7616 + cimg::X11attr().display = XOpenDisplay((cimg_std::getenv("DISPLAY")?cimg_std::getenv("DISPLAY"):":0.0")); 2.7617 + if (!cimg::X11attr().display) 2.7618 + throw CImgDisplayException("CImgDisplay::_create_window() : Can't open X11 display"); 2.7619 + cimg::X11attr().nb_bits = DefaultDepth(cimg::X11attr().display, DefaultScreen(cimg::X11attr().display)); 2.7620 + if (cimg::X11attr().nb_bits!=8 && cimg::X11attr().nb_bits!=16 && cimg::X11attr().nb_bits!=24 && cimg::X11attr().nb_bits!=32) 2.7621 + throw CImgDisplayException("CImgDisplay::_create_window() : %u bits mode is not supported " 2.7622 + "(only 8, 16, 24 and 32 bits modes are supported)",cimg::X11attr().nb_bits); 2.7623 + cimg::X11attr().gc = new GC; 2.7624 + *cimg::X11attr().gc = DefaultGC(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)); 2.7625 + Visual *visual = DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)); 2.7626 + XVisualInfo vtemplate; 2.7627 + vtemplate.visualid = XVisualIDFromVisual(visual); 2.7628 + int nb_visuals; 2.7629 + XVisualInfo *vinfo = XGetVisualInfo(cimg::X11attr().display,VisualIDMask,&vtemplate,&nb_visuals); 2.7630 + if (vinfo && vinfo->red_mask<vinfo->blue_mask) cimg::X11attr().blue_first = true; 2.7631 + cimg::X11attr().byte_order = ImageByteOrder(cimg::X11attr().display); 2.7632 + XFree(vinfo); 2.7633 + XLockDisplay(cimg::X11attr().display); 2.7634 + cimg::X11attr().event_thread = new pthread_t; 2.7635 + pthread_create(cimg::X11attr().event_thread,0,_events_thread,0); 2.7636 + } else XLockDisplay(cimg::X11attr().display); 2.7637 + 2.7638 + // Set display variables 2.7639 + width = cimg::min(dimw,(unsigned int)screen_dimx()); 2.7640 + height = cimg::min(dimh,(unsigned int)screen_dimy()); 2.7641 + normalization = normalization_type<4?normalization_type:3; 2.7642 + is_fullscreen = fullscreen_flag; 2.7643 + window_x = window_y = 0; 2.7644 + is_closed = closed_flag; 2.7645 + title = tmp_title; 2.7646 + flush(); 2.7647 + 2.7648 + // Create X11 window and palette (if 8bits display) 2.7649 + if (is_fullscreen) { 2.7650 + if (!is_closed) _init_fullscreen(); 2.7651 + const unsigned int sx = screen_dimx(), sy = screen_dimy(); 2.7652 + XSetWindowAttributes winattr; 2.7653 + winattr.override_redirect = True; 2.7654 + window = XCreateWindow(cimg::X11attr().display, 2.7655 + RootWindow(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7656 + (sx-width)/2,(sy-height)/2, 2.7657 + width,height,0,0,InputOutput,CopyFromParent,CWOverrideRedirect,&winattr); 2.7658 + } else 2.7659 + window = XCreateSimpleWindow(cimg::X11attr().display, 2.7660 + RootWindow(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7661 + 0,0,width,height,2,0,0x0L); 2.7662 + XStoreName(cimg::X11attr().display,window,title?title:" "); 2.7663 + if (cimg::X11attr().nb_bits==8) { 2.7664 + colormap = XCreateColormap(cimg::X11attr().display,window,DefaultVisual(cimg::X11attr().display, 2.7665 + DefaultScreen(cimg::X11attr().display)),AllocAll); 2.7666 + _set_colormap(colormap,3); 2.7667 + XSetWindowColormap(cimg::X11attr().display,window,colormap); 2.7668 + } 2.7669 + window_width = width; 2.7670 + window_height = height; 2.7671 + 2.7672 + // Create XImage 2.7673 + const unsigned int bufsize = width*height*(cimg::X11attr().nb_bits==8?1:(cimg::X11attr().nb_bits==16?2:4)); 2.7674 +#ifdef cimg_use_xshm 2.7675 + shminfo = 0; 2.7676 + if (XShmQueryExtension(cimg::X11attr().display)) { 2.7677 + shminfo = new XShmSegmentInfo; 2.7678 + image = XShmCreateImage(cimg::X11attr().display,DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7679 + cimg::X11attr().nb_bits,ZPixmap,0,shminfo,width,height); 2.7680 + if (!image) { 2.7681 + delete shminfo; 2.7682 + shminfo = 0; 2.7683 + } else { 2.7684 + shminfo->shmid = shmget(IPC_PRIVATE, bufsize, IPC_CREAT | 0777); 2.7685 + if (shminfo->shmid==-1) { 2.7686 + XDestroyImage(image); 2.7687 + delete shminfo; 2.7688 + shminfo = 0; 2.7689 + } else { 2.7690 + shminfo->shmaddr = image->data = (char*)(data = shmat(shminfo->shmid,0,0)); 2.7691 + if (shminfo->shmaddr==(char*)-1) { 2.7692 + shmctl(shminfo->shmid,IPC_RMID,0); 2.7693 + XDestroyImage(image); 2.7694 + delete shminfo; 2.7695 + shminfo = 0; 2.7696 + } else { 2.7697 + shminfo->readOnly = False; 2.7698 + cimg::X11attr().shm_enabled = true; 2.7699 + XErrorHandler oldXErrorHandler = XSetErrorHandler(_assign_xshm); 2.7700 + XShmAttach(cimg::X11attr().display, shminfo); 2.7701 + XSync(cimg::X11attr().display, False); 2.7702 + XSetErrorHandler(oldXErrorHandler); 2.7703 + if (!cimg::X11attr().shm_enabled) { 2.7704 + shmdt(shminfo->shmaddr); 2.7705 + shmctl(shminfo->shmid,IPC_RMID,0); 2.7706 + XDestroyImage(image); 2.7707 + delete shminfo; 2.7708 + shminfo = 0; 2.7709 + } 2.7710 + } 2.7711 + } 2.7712 + } 2.7713 + } 2.7714 + if (!shminfo) 2.7715 +#endif 2.7716 + { 2.7717 + data = cimg_std::malloc(bufsize); 2.7718 + image = XCreateImage(cimg::X11attr().display,DefaultVisual(cimg::X11attr().display,DefaultScreen(cimg::X11attr().display)), 2.7719 + cimg::X11attr().nb_bits,ZPixmap,0,(char*)data,width,height,8,0); 2.7720 + } 2.7721 + 2.7722 + wm_delete_window = XInternAtom(cimg::X11attr().display, "WM_DELETE_WINDOW", False); 2.7723 + wm_delete_protocol = XInternAtom(cimg::X11attr().display, "WM_PROTOCOLS", False); 2.7724 + XSetWMProtocols(cimg::X11attr().display, window, &wm_delete_window, 1); 2.7725 + XSelectInput(cimg::X11attr().display,window, 2.7726 + ExposureMask | StructureNotifyMask | ButtonPressMask | KeyPressMask | PointerMotionMask | 2.7727 + EnterWindowMask | LeaveWindowMask | ButtonReleaseMask | KeyReleaseMask); 2.7728 + if (is_fullscreen) XGrabKeyboard(cimg::X11attr().display, window, True, GrabModeAsync, GrabModeAsync, CurrentTime); 2.7729 + cimg::X11attr().wins[cimg::X11attr().nb_wins++]=this; 2.7730 + if (!is_closed) _map_window(); else { window_x = window_y = cimg::type<int>::min(); } 2.7731 + XUnlockDisplay(cimg::X11attr().display); 2.7732 + } 2.7733 + 2.7734 + CImgDisplay& assign() { 2.7735 + if (is_empty()) return *this; 2.7736 + XLockDisplay(cimg::X11attr().display); 2.7737 + 2.7738 + // Remove display window from event thread list. 2.7739 + unsigned int i; 2.7740 + for (i = 0; i<cimg::X11attr().nb_wins && cimg::X11attr().wins[i]!=this; ++i) {} 2.7741 + for (; i<cimg::X11attr().nb_wins-1; ++i) cimg::X11attr().wins[i] = cimg::X11attr().wins[i+1]; 2.7742 + --cimg::X11attr().nb_wins; 2.7743 + 2.7744 + // Destroy window, image, colormap and title. 2.7745 + if (is_fullscreen && !is_closed) _desinit_fullscreen(); 2.7746 + XDestroyWindow(cimg::X11attr().display,window); 2.7747 + window = 0; 2.7748 +#ifdef cimg_use_xshm 2.7749 + if (shminfo) { 2.7750 + XShmDetach(cimg::X11attr().display, shminfo); 2.7751 + XDestroyImage(image); 2.7752 + shmdt(shminfo->shmaddr); 2.7753 + shmctl(shminfo->shmid,IPC_RMID,0); 2.7754 + delete shminfo; 2.7755 + shminfo = 0; 2.7756 + } else 2.7757 +#endif 2.7758 + XDestroyImage(image); 2.7759 + data = 0; image = 0; 2.7760 + if (cimg::X11attr().nb_bits==8) XFreeColormap(cimg::X11attr().display,colormap); 2.7761 + colormap = 0; 2.7762 + XSync(cimg::X11attr().display, False); 2.7763 + 2.7764 + // Reset display variables 2.7765 + if (title) delete[] title; 2.7766 + width = height = normalization = window_width = window_height = 0; 2.7767 + window_x = window_y = 0; 2.7768 + is_fullscreen = false; 2.7769 + is_closed = true; 2.7770 + min = max = 0; 2.7771 + title = 0; 2.7772 + flush(); 2.7773 + 2.7774 + // End event thread and close display if necessary 2.7775 + XUnlockDisplay(cimg::X11attr().display); 2.7776 + 2.7777 + /* The code below was used to close the X11 display when not used anymore, 2.7778 + unfortunately, since the latest Xorg versions, it randomely hangs, so 2.7779 + I prefer to remove it. A fix would be needed anyway. 2.7780 + 2.7781 + if (!cimg::X11attr().nb_wins) { 2.7782 + // Kill event thread 2.7783 + pthread_cancel(*cimg::X11attr().event_thread); 2.7784 + XUnlockDisplay(cimg::X11attr().display); 2.7785 + pthread_join(*cimg::X11attr().event_thread,0); 2.7786 + delete cimg::X11attr().event_thread; 2.7787 + cimg::X11attr().event_thread = 0; 2.7788 + XCloseDisplay(cimg::X11attr().display); 2.7789 + cimg::X11attr().display = 0; 2.7790 + delete cimg::X11attr().gc; 2.7791 + cimg::X11attr().gc = 0; 2.7792 + } else XUnlockDisplay(cimg::X11attr().display); 2.7793 + */ 2.7794 + return *this; 2.7795 + } 2.7796 + 2.7797 + CImgDisplay& assign(const unsigned int dimw, const unsigned int dimh, const char *title=0, 2.7798 + const unsigned int normalization_type=3, 2.7799 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7800 + if (!dimw || !dimh) return assign(); 2.7801 + _assign(dimw,dimh,title,normalization_type,fullscreen_flag,closed_flag); 2.7802 + min = max = 0; 2.7803 + cimg_std::memset(data,0,(cimg::X11attr().nb_bits==8?sizeof(unsigned char): 2.7804 + (cimg::X11attr().nb_bits==16?sizeof(unsigned short):sizeof(unsigned int)))*width*height); 2.7805 + return paint(); 2.7806 + } 2.7807 + 2.7808 + template<typename T> 2.7809 + CImgDisplay& assign(const CImg<T>& img, const char *title=0, 2.7810 + const unsigned int normalization_type=3, 2.7811 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7812 + if (!img) return assign(); 2.7813 + CImg<T> tmp; 2.7814 + const CImg<T>& nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.7815 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.7816 + if (normalization==2) min = (float)nimg.minmax(max); 2.7817 + return render(nimg).paint(); 2.7818 + } 2.7819 + 2.7820 + template<typename T> 2.7821 + CImgDisplay& assign(const CImgList<T>& list, const char *title=0, 2.7822 + const unsigned int normalization_type=3, 2.7823 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.7824 + if (!list) return assign(); 2.7825 + CImg<T> tmp; 2.7826 + const CImg<T> img = list.get_append('x','p'), 2.7827 + &nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.7828 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.7829 + if (normalization==2) min = (float)nimg.minmax(max); 2.7830 + return render(nimg).paint(); 2.7831 + } 2.7832 + 2.7833 + CImgDisplay& assign(const CImgDisplay& win) { 2.7834 + if (!win) return assign(); 2.7835 + _assign(win.width,win.height,win.title,win.normalization,win.is_fullscreen,win.is_closed); 2.7836 + cimg_std::memcpy(data,win.data,(cimg::X11attr().nb_bits==8?sizeof(unsigned char): 2.7837 + cimg::X11attr().nb_bits==16?sizeof(unsigned short): 2.7838 + sizeof(unsigned int))*width*height); 2.7839 + return paint(); 2.7840 + } 2.7841 + 2.7842 + CImgDisplay& resize(const int nwidth, const int nheight, const bool redraw=true) { 2.7843 + if (!nwidth || !nheight || (is_empty() && (nwidth<0 || nheight<0))) return assign(); 2.7844 + if (is_empty()) return assign(nwidth,nheight); 2.7845 + const unsigned int 2.7846 + tmpdimx = (nwidth>0)?nwidth:(-nwidth*width/100), 2.7847 + tmpdimy = (nheight>0)?nheight:(-nheight*height/100), 2.7848 + dimx = tmpdimx?tmpdimx:1, 2.7849 + dimy = tmpdimy?tmpdimy:1; 2.7850 + XLockDisplay(cimg::X11attr().display); 2.7851 + if (window_width!=dimx || window_height!=dimy) XResizeWindow(cimg::X11attr().display,window,dimx,dimy); 2.7852 + if (width!=dimx || height!=dimy) switch (cimg::X11attr().nb_bits) { 2.7853 + case 8 : { unsigned char foo = 0; _resize(foo,dimx,dimy,redraw); } break; 2.7854 + case 16 : { unsigned short foo = 0; _resize(foo,dimx,dimy,redraw); } break; 2.7855 + default : { unsigned int foo = 0; _resize(foo,dimx,dimy,redraw); } 2.7856 + } 2.7857 + window_width = width = dimx; window_height = height = dimy; 2.7858 + is_resized = false; 2.7859 + XUnlockDisplay(cimg::X11attr().display); 2.7860 + if (is_fullscreen) move((screen_dimx()-width)/2,(screen_dimy()-height)/2); 2.7861 + if (redraw) return paint(); 2.7862 + return *this; 2.7863 + } 2.7864 + 2.7865 + CImgDisplay& toggle_fullscreen(const bool redraw=true) { 2.7866 + if (is_empty()) return *this; 2.7867 + if (redraw) { 2.7868 + const unsigned int bufsize = width*height*(cimg::X11attr().nb_bits==8?1:(cimg::X11attr().nb_bits==16?2:4)); 2.7869 + void *odata = cimg_std::malloc(bufsize); 2.7870 + cimg_std::memcpy(odata,data,bufsize); 2.7871 + assign(width,height,title,normalization,!is_fullscreen,false); 2.7872 + cimg_std::memcpy(data,odata,bufsize); 2.7873 + cimg_std::free(odata); 2.7874 + return paint(false); 2.7875 + } 2.7876 + return assign(width,height,title,normalization,!is_fullscreen,false); 2.7877 + } 2.7878 + 2.7879 + CImgDisplay& show() { 2.7880 + if (!is_empty() && is_closed) { 2.7881 + XLockDisplay(cimg::X11attr().display); 2.7882 + if (is_fullscreen) _init_fullscreen(); 2.7883 + _map_window(); 2.7884 + is_closed = false; 2.7885 + XUnlockDisplay(cimg::X11attr().display); 2.7886 + return paint(); 2.7887 + } 2.7888 + return *this; 2.7889 + } 2.7890 + 2.7891 + CImgDisplay& close() { 2.7892 + if (!is_empty() && !is_closed) { 2.7893 + XLockDisplay(cimg::X11attr().display); 2.7894 + if (is_fullscreen) _desinit_fullscreen(); 2.7895 + XUnmapWindow(cimg::X11attr().display,window); 2.7896 + window_x = window_y = -1; 2.7897 + is_closed = true; 2.7898 + XUnlockDisplay(cimg::X11attr().display); 2.7899 + } 2.7900 + return *this; 2.7901 + } 2.7902 + 2.7903 + CImgDisplay& move(const int posx, const int posy) { 2.7904 + if (is_empty()) return *this; 2.7905 + show(); 2.7906 + XLockDisplay(cimg::X11attr().display); 2.7907 + XMoveWindow(cimg::X11attr().display,window,posx,posy); 2.7908 + window_x = posx; window_y = posy; 2.7909 + is_moved = false; 2.7910 + XUnlockDisplay(cimg::X11attr().display); 2.7911 + return paint(); 2.7912 + } 2.7913 + 2.7914 + CImgDisplay& show_mouse() { 2.7915 + if (is_empty()) return *this; 2.7916 + XLockDisplay(cimg::X11attr().display); 2.7917 + XDefineCursor(cimg::X11attr().display,window,None); 2.7918 + XUnlockDisplay(cimg::X11attr().display); 2.7919 + return *this; 2.7920 + } 2.7921 + 2.7922 + CImgDisplay& hide_mouse() { 2.7923 + if (is_empty()) return *this; 2.7924 + XLockDisplay(cimg::X11attr().display); 2.7925 + const char pix_data[8] = { 0 }; 2.7926 + XColor col; 2.7927 + col.red = col.green = col.blue = 0; 2.7928 + Pixmap pix = XCreateBitmapFromData(cimg::X11attr().display,window,pix_data,8,8); 2.7929 + Cursor cur = XCreatePixmapCursor(cimg::X11attr().display,pix,pix,&col,&col,0,0); 2.7930 + XFreePixmap(cimg::X11attr().display,pix); 2.7931 + XDefineCursor(cimg::X11attr().display,window,cur); 2.7932 + XUnlockDisplay(cimg::X11attr().display); 2.7933 + return *this; 2.7934 + } 2.7935 + 2.7936 + CImgDisplay& set_mouse(const int posx, const int posy) { 2.7937 + if (is_empty() || is_closed) return *this; 2.7938 + XLockDisplay(cimg::X11attr().display); 2.7939 + XWarpPointer(cimg::X11attr().display,None,window,0,0,0,0,posx,posy); 2.7940 + mouse_x = posx; mouse_y = posy; 2.7941 + is_moved = false; 2.7942 + XSync(cimg::X11attr().display, False); 2.7943 + XUnlockDisplay(cimg::X11attr().display); 2.7944 + return *this; 2.7945 + } 2.7946 + 2.7947 + CImgDisplay& set_title(const char *format, ...) { 2.7948 + if (is_empty()) return *this; 2.7949 + char tmp[1024] = {0}; 2.7950 + va_list ap; 2.7951 + va_start(ap, format); 2.7952 + cimg_std::vsprintf(tmp,format,ap); 2.7953 + va_end(ap); 2.7954 + if (title) delete[] title; 2.7955 + const int s = cimg::strlen(tmp)+1; 2.7956 + title = new char[s]; 2.7957 + cimg_std::memcpy(title,tmp,s*sizeof(char)); 2.7958 + XLockDisplay(cimg::X11attr().display); 2.7959 + XStoreName(cimg::X11attr().display,window,tmp); 2.7960 + XUnlockDisplay(cimg::X11attr().display); 2.7961 + return *this; 2.7962 + } 2.7963 + 2.7964 + template<typename T> 2.7965 + CImgDisplay& display(const CImg<T>& img) { 2.7966 + if (img.is_empty()) 2.7967 + throw CImgArgumentException("CImgDisplay::display() : Cannot display empty image."); 2.7968 + if (is_empty()) assign(img.width,img.height); 2.7969 + return render(img).paint(false); 2.7970 + } 2.7971 + 2.7972 + CImgDisplay& paint(const bool wait_expose=true) { 2.7973 + if (is_empty()) return *this; 2.7974 + XLockDisplay(cimg::X11attr().display); 2.7975 + _paint(wait_expose); 2.7976 + XUnlockDisplay(cimg::X11attr().display); 2.7977 + return *this; 2.7978 + } 2.7979 + 2.7980 + template<typename T> 2.7981 + CImgDisplay& render(const CImg<T>& img, const bool flag8=false) { 2.7982 + if (is_empty()) return *this; 2.7983 + if (!img) 2.7984 + throw CImgArgumentException("CImgDisplay::_render_image() : Specified input image (%u,%u,%u,%u,%p) is empty.", 2.7985 + img.width,img.height,img.depth,img.dim,img.data); 2.7986 + if (img.depth!=1) return render(img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.7987 + if (cimg::X11attr().nb_bits==8 && (img.width!=width || img.height!=height)) return render(img.get_resize(width,height,1,-100,1)); 2.7988 + if (cimg::X11attr().nb_bits==8 && !flag8 && img.dim==3) return render(img.get_RGBtoLUT(true),true); 2.7989 + 2.7990 + const T 2.7991 + *data1 = img.data, 2.7992 + *data2 = (img.dim>1)?img.ptr(0,0,0,1):data1, 2.7993 + *data3 = (img.dim>2)?img.ptr(0,0,0,2):data1; 2.7994 + 2.7995 + if (cimg::X11attr().blue_first) cimg::swap(data1,data3); 2.7996 + XLockDisplay(cimg::X11attr().display); 2.7997 + 2.7998 + if (!normalization || (normalization==3 && cimg::type<T>::string()==cimg::type<unsigned char>::string())) { 2.7999 + min = max = 0; 2.8000 + switch (cimg::X11attr().nb_bits) { 2.8001 + case 8 : { // 256 color palette, no normalization 2.8002 + _set_colormap(colormap,img.dim); 2.8003 + unsigned char *const ndata = (img.width==width && img.height==height)?(unsigned char*)data:new unsigned char[img.width*img.height]; 2.8004 + unsigned char *ptrd = (unsigned char*)ndata; 2.8005 + switch (img.dim) { 2.8006 + case 1 : for (unsigned int xy = img.width*img.height; xy>0; --xy) (*ptrd++) = (unsigned char)*(data1++); 2.8007 + break; 2.8008 + case 2 : for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8009 + const unsigned char R = (unsigned char)*(data1++), G = (unsigned char)*(data2++); 2.8010 + (*ptrd++) = (R&0xf0) | (G>>4); 2.8011 + } break; 2.8012 + default : for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8013 + const unsigned char R = (unsigned char)*(data1++), G = (unsigned char)*(data2++), B = (unsigned char)*(data3++); 2.8014 + (*ptrd++) = (R&0xe0) | ((G>>5)<<2) | (B>>6); 2.8015 + } 2.8016 + } 2.8017 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned char*)data,width,height); delete[] ndata; } 2.8018 + } break; 2.8019 + case 16 : { // 16 bits colors, no normalization 2.8020 + unsigned short *const ndata = (img.width==width && img.height==height)?(unsigned short*)data:new unsigned short[img.width*img.height]; 2.8021 + unsigned char *ptrd = (unsigned char*)ndata; 2.8022 + const unsigned int M = 248; 2.8023 + switch (img.dim) { 2.8024 + case 1 : 2.8025 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8026 + const unsigned char val = (unsigned char)*(data1++), G = val>>2; 2.8027 + *(ptrd++) = (val&M) | (G>>3); 2.8028 + *(ptrd++) = (G<<5) | (G>>1); 2.8029 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8030 + const unsigned char val = (unsigned char)*(data1++), G = val>>2; 2.8031 + *(ptrd++) = (G<<5) | (G>>1); 2.8032 + *(ptrd++) = (val&M) | (G>>3); 2.8033 + } 2.8034 + break; 2.8035 + case 2 : 2.8036 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8037 + const unsigned char G = (unsigned char)*(data2++)>>2; 2.8038 + *(ptrd++) = ((unsigned char)*(data1++)&M) | (G>>3); 2.8039 + *(ptrd++) = (G<<5); 2.8040 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8041 + const unsigned char G = (unsigned char)*(data2++)>>2; 2.8042 + *(ptrd++) = (G<<5); 2.8043 + *(ptrd++) = ((unsigned char)*(data1++)&M) | (G>>3); 2.8044 + } 2.8045 + break; 2.8046 + default : 2.8047 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8048 + const unsigned char G = (unsigned char)*(data2++)>>2; 2.8049 + *(ptrd++) = ((unsigned char)*(data1++)&M) | (G>>3); 2.8050 + *(ptrd++) = (G<<5) | ((unsigned char)*(data3++)>>3); 2.8051 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8052 + const unsigned char G = (unsigned char)*(data2++)>>2; 2.8053 + *(ptrd++) = (G<<5) | ((unsigned char)*(data3++)>>3); 2.8054 + *(ptrd++) = ((unsigned char)*(data1++)&M) | (G>>3); 2.8055 + } 2.8056 + } 2.8057 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned short*)data,width,height); delete[] ndata; } 2.8058 + } break; 2.8059 + default : { // 24 bits colors, no normalization 2.8060 + unsigned int *const ndata = (img.width==width && img.height==height)?(unsigned int*)data:new unsigned int[img.width*img.height]; 2.8061 + if (sizeof(int)==4) { // 32 bits int uses optimized version 2.8062 + unsigned int *ptrd = ndata; 2.8063 + switch (img.dim) { 2.8064 + case 1 : 2.8065 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8066 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8067 + const unsigned char val = (unsigned char)*(data1++); 2.8068 + *(ptrd++) = (val<<16) | (val<<8) | val; 2.8069 + } 2.8070 + else 2.8071 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8072 + const unsigned char val = (unsigned char)*(data1++)<<8; 2.8073 + *(ptrd++) = (val<<16) | (val<<8) | val; 2.8074 + } 2.8075 + break; 2.8076 + case 2 : 2.8077 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8078 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8079 + *(ptrd++) = ((unsigned char)*(data1++)<<16) | ((unsigned char)*(data2++)<<8); 2.8080 + else 2.8081 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8082 + *(ptrd++) = ((unsigned char)*(data2++)<<16) | ((unsigned char)*(data1++)<<8); 2.8083 + break; 2.8084 + default : 2.8085 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8086 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8087 + *(ptrd++) = ((unsigned char)*(data1++)<<16) | ((unsigned char)*(data2++)<<8) | (unsigned char)*(data3++); 2.8088 + else 2.8089 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8090 + *(ptrd++) = ((unsigned char)*(data3++)<<24) | ((unsigned char)*(data2++)<<16) | ((unsigned char)*(data1++)<<8); 2.8091 + } 2.8092 + } else { 2.8093 + unsigned char *ptrd = (unsigned char*)ndata; 2.8094 + switch (img.dim) { 2.8095 + case 1 : 2.8096 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8097 + *(ptrd++) = 0; 2.8098 + *(ptrd++) = (unsigned char)*(data1++); 2.8099 + *(ptrd++) = 0; 2.8100 + *(ptrd++) = 0; 2.8101 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8102 + *(ptrd++) = 0; 2.8103 + *(ptrd++) = 0; 2.8104 + *(ptrd++) = (unsigned char)*(data1++); 2.8105 + *(ptrd++) = 0; 2.8106 + } 2.8107 + break; 2.8108 + case 2 : 2.8109 + if (cimg::X11attr().byte_order) cimg::swap(data1,data2); 2.8110 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8111 + *(ptrd++) = 0; 2.8112 + *(ptrd++) = (unsigned char)*(data2++); 2.8113 + *(ptrd++) = (unsigned char)*(data1++); 2.8114 + *(ptrd++) = 0; 2.8115 + } 2.8116 + break; 2.8117 + default : 2.8118 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8119 + *(ptrd++) = 0; 2.8120 + *(ptrd++) = (unsigned char)*(data1++); 2.8121 + *(ptrd++) = (unsigned char)*(data2++); 2.8122 + *(ptrd++) = (unsigned char)*(data3++); 2.8123 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8124 + *(ptrd++) = (unsigned char)*(data3++); 2.8125 + *(ptrd++) = (unsigned char)*(data2++); 2.8126 + *(ptrd++) = (unsigned char)*(data1++); 2.8127 + *(ptrd++) = 0; 2.8128 + } 2.8129 + } 2.8130 + } 2.8131 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned int*)data,width,height); delete[] ndata; } 2.8132 + } 2.8133 + }; 2.8134 + } else { 2.8135 + if (normalization==3) { 2.8136 + if (cimg::type<T>::is_float()) min = (float)img.minmax(max); 2.8137 + else { min = (float)cimg::type<T>::min(); max = (float)cimg::type<T>::max(); } 2.8138 + } else if ((min>max) || normalization==1) min = (float)img.minmax(max); 2.8139 + const float delta = max-min, mm = delta?delta:1.0f; 2.8140 + switch (cimg::X11attr().nb_bits) { 2.8141 + case 8 : { // 256 color palette, with normalization 2.8142 + _set_colormap(colormap,img.dim); 2.8143 + unsigned char *const ndata = (img.width==width && img.height==height)?(unsigned char*)data:new unsigned char[img.width*img.height]; 2.8144 + unsigned char *ptrd = (unsigned char*)ndata; 2.8145 + switch (img.dim) { 2.8146 + case 1 : for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8147 + const unsigned char R = (unsigned char)(255*(*(data1++)-min)/mm); 2.8148 + *(ptrd++) = R; 2.8149 + } break; 2.8150 + case 2 : for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8151 + const unsigned char 2.8152 + R = (unsigned char)(255*(*(data1++)-min)/mm), 2.8153 + G = (unsigned char)(255*(*(data2++)-min)/mm); 2.8154 + (*ptrd++) = (R&0xf0) | (G>>4); 2.8155 + } break; 2.8156 + default : 2.8157 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8158 + const unsigned char 2.8159 + R = (unsigned char)(255*(*(data1++)-min)/mm), 2.8160 + G = (unsigned char)(255*(*(data2++)-min)/mm), 2.8161 + B = (unsigned char)(255*(*(data3++)-min)/mm); 2.8162 + *(ptrd++) = (R&0xe0) | ((G>>5)<<2) | (B>>6); 2.8163 + } 2.8164 + } 2.8165 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned char*)data,width,height); delete[] ndata; } 2.8166 + } break; 2.8167 + case 16 : { // 16 bits colors, with normalization 2.8168 + unsigned short *const ndata = (img.width==width && img.height==height)?(unsigned short*)data:new unsigned short[img.width*img.height]; 2.8169 + unsigned char *ptrd = (unsigned char*)ndata; 2.8170 + const unsigned int M = 248; 2.8171 + switch (img.dim) { 2.8172 + case 1 : 2.8173 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8174 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm), G = val>>2; 2.8175 + *(ptrd++) = (val&M) | (G>>3); 2.8176 + *(ptrd++) = (G<<5) | (val>>3); 2.8177 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8178 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm), G = val>>2; 2.8179 + *(ptrd++) = (G<<5) | (val>>3); 2.8180 + *(ptrd++) = (val&M) | (G>>3); 2.8181 + } 2.8182 + break; 2.8183 + case 2 : 2.8184 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8185 + const unsigned char G = (unsigned char)(255*(*(data2++)-min)/mm)>>2; 2.8186 + *(ptrd++) = ((unsigned char)(255*(*(data1++)-min)/mm)&M) | (G>>3); 2.8187 + *(ptrd++) = (G<<5); 2.8188 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8189 + const unsigned char G = (unsigned char)(255*(*(data2++)-min)/mm)>>2; 2.8190 + *(ptrd++) = (G<<5); 2.8191 + *(ptrd++) = ((unsigned char)(255*(*(data1++)-min)/mm)&M) | (G>>3); 2.8192 + } 2.8193 + break; 2.8194 + default : 2.8195 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8196 + const unsigned char G = (unsigned char)(255*(*(data2++)-min)/mm)>>2; 2.8197 + *(ptrd++) = ((unsigned char)(255*(*(data1++)-min)/mm)&M) | (G>>3); 2.8198 + *(ptrd++) = (G<<5) | ((unsigned char)(255*(*(data3++)-min)/mm)>>3); 2.8199 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8200 + const unsigned char G = (unsigned char)(255*(*(data2++)-min)/mm)>>2; 2.8201 + *(ptrd++) = (G<<5) | ((unsigned char)(255*(*(data3++)-min)/mm)>>3); 2.8202 + *(ptrd++) = ((unsigned char)(255*(*(data1++)-min)/mm)&M) | (G>>3); 2.8203 + } 2.8204 + } 2.8205 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned short*)data,width,height); delete[] ndata; } 2.8206 + } break; 2.8207 + default : { // 24 bits colors, with normalization 2.8208 + unsigned int *const ndata = (img.width==width && img.height==height)?(unsigned int*)data:new unsigned int[img.width*img.height]; 2.8209 + if (sizeof(int)==4) { // 32 bits int uses optimized version 2.8210 + unsigned int *ptrd = ndata; 2.8211 + switch (img.dim) { 2.8212 + case 1 : 2.8213 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8214 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8215 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm); 2.8216 + *(ptrd++) = (val<<16) | (val<<8) | val; 2.8217 + } 2.8218 + else 2.8219 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8220 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm); 2.8221 + *(ptrd++) = (val<<24) | (val<<16) | (val<<8); 2.8222 + } 2.8223 + break; 2.8224 + case 2 : 2.8225 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8226 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8227 + *(ptrd++) = 2.8228 + ((unsigned char)(255*(*(data1++)-min)/mm)<<16) | 2.8229 + ((unsigned char)(255*(*(data2++)-min)/mm)<<8); 2.8230 + else 2.8231 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8232 + *(ptrd++) = 2.8233 + ((unsigned char)(255*(*(data2++)-min)/mm)<<16) | 2.8234 + ((unsigned char)(255*(*(data1++)-min)/mm)<<8); 2.8235 + break; 2.8236 + default : 2.8237 + if (cimg::X11attr().byte_order==cimg::endianness()) 2.8238 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8239 + *(ptrd++) = 2.8240 + ((unsigned char)(255*(*(data1++)-min)/mm)<<16) | 2.8241 + ((unsigned char)(255*(*(data2++)-min)/mm)<<8) | 2.8242 + (unsigned char)(255*(*(data3++)-min)/mm); 2.8243 + else 2.8244 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8245 + *(ptrd++) = 2.8246 + ((unsigned char)(255*(*(data3++)-min)/mm)<<24) | 2.8247 + ((unsigned char)(255*(*(data2++)-min)/mm)<<16) | 2.8248 + ((unsigned char)(255*(*(data1++)-min)/mm)<<8); 2.8249 + } 2.8250 + } else { 2.8251 + unsigned char *ptrd = (unsigned char*)ndata; 2.8252 + switch (img.dim) { 2.8253 + case 1 : 2.8254 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8255 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm); 2.8256 + (*ptrd++) = 0; 2.8257 + (*ptrd++) = val; 2.8258 + (*ptrd++) = val; 2.8259 + (*ptrd++) = val; 2.8260 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8261 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm); 2.8262 + (*ptrd++) = val; 2.8263 + (*ptrd++) = val; 2.8264 + (*ptrd++) = val; 2.8265 + (*ptrd++) = 0; 2.8266 + } 2.8267 + break; 2.8268 + case 2 : 2.8269 + if (cimg::X11attr().byte_order) cimg::swap(data1,data2); 2.8270 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8271 + (*ptrd++) = 0; 2.8272 + (*ptrd++) = (unsigned char)(255*(*(data2++)-min)/mm); 2.8273 + (*ptrd++) = (unsigned char)(255*(*(data1++)-min)/mm); 2.8274 + (*ptrd++) = 0; 2.8275 + } 2.8276 + break; 2.8277 + default : 2.8278 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8279 + (*ptrd++) = 0; 2.8280 + (*ptrd++) = (unsigned char)(255*(*(data1++)-min)/mm); 2.8281 + (*ptrd++) = (unsigned char)(255*(*(data2++)-min)/mm); 2.8282 + (*ptrd++) = (unsigned char)(255*(*(data3++)-min)/mm); 2.8283 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8284 + (*ptrd++) = (unsigned char)(255*(*(data3++)-min)/mm); 2.8285 + (*ptrd++) = (unsigned char)(255*(*(data2++)-min)/mm); 2.8286 + (*ptrd++) = (unsigned char)(255*(*(data1++)-min)/mm); 2.8287 + (*ptrd++) = 0; 2.8288 + } 2.8289 + } 2.8290 + } 2.8291 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,(unsigned int*)data,width,height); delete[] ndata; } 2.8292 + } 2.8293 + } 2.8294 + } 2.8295 + XUnlockDisplay(cimg::X11attr().display); 2.8296 + return *this; 2.8297 + } 2.8298 + 2.8299 + template<typename T> 2.8300 + const CImgDisplay& snapshot(CImg<T>& img) const { 2.8301 + if (is_empty()) img.assign(); 2.8302 + else { 2.8303 + img.assign(width,height,1,3); 2.8304 + T 2.8305 + *data1 = img.ptr(0,0,0,0), 2.8306 + *data2 = img.ptr(0,0,0,1), 2.8307 + *data3 = img.ptr(0,0,0,2); 2.8308 + if (cimg::X11attr().blue_first) cimg::swap(data1,data3); 2.8309 + switch (cimg::X11attr().nb_bits) { 2.8310 + case 8 : { 2.8311 + unsigned char *ptrs = (unsigned char*)data; 2.8312 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8313 + const unsigned char val = *(ptrs++); 2.8314 + *(data1++) = val&0xe0; 2.8315 + *(data2++) = (val&0x1c)<<3; 2.8316 + *(data3++) = val<<6; 2.8317 + } 2.8318 + } break; 2.8319 + case 16 : { 2.8320 + unsigned char *ptrs = (unsigned char*)data; 2.8321 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8322 + const unsigned char val0 = *(ptrs++), val1 = *(ptrs++); 2.8323 + *(data1++) = val0&0xf8; 2.8324 + *(data2++) = (val0<<5) | ((val1&0xe0)>>5); 2.8325 + *(data3++) = val1<<3; 2.8326 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8327 + const unsigned short val0 = *(ptrs++), val1 = *(ptrs++); 2.8328 + *(data1++) = val1&0xf8; 2.8329 + *(data2++) = (val1<<5) | ((val0&0xe0)>>5); 2.8330 + *(data3++) = val0<<3; 2.8331 + } 2.8332 + } break; 2.8333 + default : { 2.8334 + unsigned char *ptrs = (unsigned char*)data; 2.8335 + if (cimg::X11attr().byte_order) for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8336 + ++ptrs; 2.8337 + *(data1++) = *(ptrs++); 2.8338 + *(data2++) = *(ptrs++); 2.8339 + *(data3++) = *(ptrs++); 2.8340 + } else for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8341 + *(data3++) = *(ptrs++); 2.8342 + *(data2++) = *(ptrs++); 2.8343 + *(data1++) = *(ptrs++); 2.8344 + ++ptrs; 2.8345 + } 2.8346 + } 2.8347 + } 2.8348 + } 2.8349 + return *this; 2.8350 + } 2.8351 + 2.8352 + // Windows-based display 2.8353 + //----------------------- 2.8354 +#elif cimg_display==2 2.8355 + CLIENTCREATESTRUCT ccs; 2.8356 + BITMAPINFO bmi; 2.8357 + unsigned int *data; 2.8358 + DEVMODE curr_mode; 2.8359 + HWND window; 2.8360 + HWND background_window; 2.8361 + HDC hdc; 2.8362 + HANDLE thread; 2.8363 + HANDLE created; 2.8364 + HANDLE mutex; 2.8365 + bool mouse_tracking; 2.8366 + bool visible_cursor; 2.8367 + 2.8368 + static int screen_dimx() { 2.8369 + DEVMODE mode; 2.8370 + mode.dmSize = sizeof(DEVMODE); 2.8371 + mode.dmDriverExtra = 0; 2.8372 + EnumDisplaySettings(0,ENUM_CURRENT_SETTINGS,&mode); 2.8373 + return mode.dmPelsWidth; 2.8374 + } 2.8375 + 2.8376 + static int screen_dimy() { 2.8377 + DEVMODE mode; 2.8378 + mode.dmSize = sizeof(DEVMODE); 2.8379 + mode.dmDriverExtra = 0; 2.8380 + EnumDisplaySettings(0,ENUM_CURRENT_SETTINGS,&mode); 2.8381 + return mode.dmPelsHeight; 2.8382 + } 2.8383 + 2.8384 + static void wait_all() { 2.8385 + WaitForSingleObject(cimg::Win32attr().wait_event,INFINITE); 2.8386 + } 2.8387 + 2.8388 + static LRESULT APIENTRY _handle_events(HWND window,UINT msg,WPARAM wParam,LPARAM lParam) { 2.8389 +#ifdef _WIN64 2.8390 + CImgDisplay* disp = (CImgDisplay*)GetWindowLongPtr(window,GWLP_USERDATA); 2.8391 +#else 2.8392 + CImgDisplay* disp = (CImgDisplay*)GetWindowLong(window,GWL_USERDATA); 2.8393 +#endif 2.8394 + MSG st_msg; 2.8395 + 2.8396 + switch (msg) { 2.8397 + case WM_CLOSE : 2.8398 + disp->mouse_x = disp->mouse_y = -1; 2.8399 + disp->window_x = disp->window_y = 0; 2.8400 + if (disp->button) { 2.8401 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8402 + disp->button = 0; 2.8403 + } 2.8404 + if (disp->key) { 2.8405 + cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); 2.8406 + disp->key = 0; 2.8407 + } 2.8408 + if (disp->released_key) { cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); disp->released_key = 0; } 2.8409 + disp->is_closed = true; 2.8410 + ReleaseMutex(disp->mutex); 2.8411 + ShowWindow(disp->window,SW_HIDE); 2.8412 + disp->is_event = true; 2.8413 + SetEvent(cimg::Win32attr().wait_event); 2.8414 + return 0; 2.8415 + case WM_SIZE : { 2.8416 + while (PeekMessage(&st_msg,window,WM_SIZE,WM_SIZE,PM_REMOVE)) {} 2.8417 + WaitForSingleObject(disp->mutex,INFINITE); 2.8418 + const unsigned int nw = LOWORD(lParam),nh = HIWORD(lParam); 2.8419 + if (nw && nh && (nw!=disp->width || nh!=disp->height)) { 2.8420 + disp->window_width = nw; 2.8421 + disp->window_height = nh; 2.8422 + disp->mouse_x = disp->mouse_y = -1; 2.8423 + disp->is_resized = disp->is_event = true; 2.8424 + SetEvent(cimg::Win32attr().wait_event); 2.8425 + } 2.8426 + ReleaseMutex(disp->mutex); 2.8427 + } break; 2.8428 + case WM_MOVE : { 2.8429 + while (PeekMessage(&st_msg,window,WM_SIZE,WM_SIZE,PM_REMOVE)) {} 2.8430 + WaitForSingleObject(disp->mutex,INFINITE); 2.8431 + const int nx = (int)(short)(LOWORD(lParam)), ny = (int)(short)(HIWORD(lParam)); 2.8432 + if (nx!=disp->window_x || ny!=disp->window_y) { 2.8433 + disp->window_x = nx; 2.8434 + disp->window_y = ny; 2.8435 + disp->is_moved = disp->is_event = true; 2.8436 + SetEvent(cimg::Win32attr().wait_event); 2.8437 + } 2.8438 + ReleaseMutex(disp->mutex); 2.8439 + } break; 2.8440 + case WM_PAINT : 2.8441 + disp->paint(); 2.8442 + break; 2.8443 + case WM_KEYDOWN : 2.8444 + disp->update_iskey((unsigned int)wParam,true); 2.8445 + if (disp->key) cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); 2.8446 + disp->key = (unsigned int)wParam; 2.8447 + if (disp->released_key) { cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); disp->released_key = 0; } 2.8448 + disp->is_event = true; 2.8449 + SetEvent(cimg::Win32attr().wait_event); 2.8450 + break; 2.8451 + case WM_MOUSEMOVE : { 2.8452 + while (PeekMessage(&st_msg,window,WM_MOUSEMOVE,WM_MOUSEMOVE,PM_REMOVE)) {} 2.8453 + disp->mouse_x = LOWORD(lParam); 2.8454 + disp->mouse_y = HIWORD(lParam); 2.8455 +#if (_WIN32_WINNT>=0x0400) && !defined(NOTRACKMOUSEEVENT) 2.8456 + if (!disp->mouse_tracking) { 2.8457 + TRACKMOUSEEVENT tme; 2.8458 + tme.cbSize = sizeof(TRACKMOUSEEVENT); 2.8459 + tme.dwFlags = TME_LEAVE; 2.8460 + tme.hwndTrack = disp->window; 2.8461 + if (TrackMouseEvent(&tme)) disp->mouse_tracking = true; 2.8462 + } 2.8463 +#endif 2.8464 + if (disp->mouse_x<0 || disp->mouse_y<0 || disp->mouse_x>=disp->dimx() || disp->mouse_y>=disp->dimy()) 2.8465 + disp->mouse_x = disp->mouse_y = -1; 2.8466 + disp->is_event = true; 2.8467 + SetEvent(cimg::Win32attr().wait_event); 2.8468 + } break; 2.8469 + case WM_MOUSELEAVE : { 2.8470 + disp->mouse_x = disp->mouse_y = -1; 2.8471 + disp->mouse_tracking = false; 2.8472 + } break; 2.8473 + case WM_LBUTTONDOWN : 2.8474 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8475 + disp->button|=1U; 2.8476 + disp->is_event = true; 2.8477 + SetEvent(cimg::Win32attr().wait_event); 2.8478 + break; 2.8479 + case WM_RBUTTONDOWN : 2.8480 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8481 + disp->button|=2U; 2.8482 + disp->is_event = true; 2.8483 + SetEvent(cimg::Win32attr().wait_event); 2.8484 + break; 2.8485 + case WM_MBUTTONDOWN : 2.8486 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8487 + disp->button|=4U; 2.8488 + disp->is_event = true; 2.8489 + SetEvent(cimg::Win32attr().wait_event); 2.8490 + break; 2.8491 + case 0x020A : // WM_MOUSEWHEEL: 2.8492 + disp->wheel+=(int)((short)HIWORD(wParam))/120; 2.8493 + disp->is_event = true; 2.8494 + SetEvent(cimg::Win32attr().wait_event); 2.8495 + case WM_KEYUP : 2.8496 + disp->update_iskey((unsigned int)wParam,false); 2.8497 + if (disp->key) { cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); disp->key = 0; } 2.8498 + if (disp->released_key) cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); 2.8499 + disp->released_key = (unsigned int)wParam; 2.8500 + disp->is_event = true; 2.8501 + SetEvent(cimg::Win32attr().wait_event); 2.8502 + break; 2.8503 + case WM_LBUTTONUP : 2.8504 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8505 + disp->button&=~1U; 2.8506 + disp->is_event = true; 2.8507 + SetEvent(cimg::Win32attr().wait_event); 2.8508 + break; 2.8509 + case WM_RBUTTONUP : 2.8510 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8511 + disp->button&=~2U; 2.8512 + disp->is_event = true; 2.8513 + SetEvent(cimg::Win32attr().wait_event); 2.8514 + break; 2.8515 + case WM_MBUTTONUP : 2.8516 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.8517 + disp->button&=~4U; 2.8518 + disp->is_event = true; 2.8519 + SetEvent(cimg::Win32attr().wait_event); 2.8520 + break; 2.8521 + case WM_SETCURSOR : 2.8522 + if (disp->visible_cursor) ShowCursor(TRUE); 2.8523 + else ShowCursor(FALSE); 2.8524 + break; 2.8525 + } 2.8526 + return DefWindowProc(window,msg,wParam,lParam); 2.8527 + } 2.8528 + 2.8529 + static DWORD WINAPI _events_thread(void* arg) { 2.8530 + CImgDisplay *disp = (CImgDisplay*)(((void**)arg)[0]); 2.8531 + const char *title = (const char*)(((void**)arg)[1]); 2.8532 + MSG msg; 2.8533 + delete[] (void**)arg; 2.8534 + disp->bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER); 2.8535 + disp->bmi.bmiHeader.biWidth = disp->width; 2.8536 + disp->bmi.bmiHeader.biHeight = -(int)disp->height; 2.8537 + disp->bmi.bmiHeader.biPlanes = 1; 2.8538 + disp->bmi.bmiHeader.biBitCount = 32; 2.8539 + disp->bmi.bmiHeader.biCompression = BI_RGB; 2.8540 + disp->bmi.bmiHeader.biSizeImage = 0; 2.8541 + disp->bmi.bmiHeader.biXPelsPerMeter = 1; 2.8542 + disp->bmi.bmiHeader.biYPelsPerMeter = 1; 2.8543 + disp->bmi.bmiHeader.biClrUsed = 0; 2.8544 + disp->bmi.bmiHeader.biClrImportant = 0; 2.8545 + disp->data = new unsigned int[disp->width*disp->height]; 2.8546 + if (!disp->is_fullscreen) { // Normal window 2.8547 + RECT rect; 2.8548 + rect.left = rect.top = 0; rect.right = disp->width-1; rect.bottom = disp->height-1; 2.8549 + AdjustWindowRect(&rect,WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,false); 2.8550 + const int border1 = (rect.right-rect.left+1-disp->width)/2, border2 = rect.bottom-rect.top+1-disp->height-border1; 2.8551 + disp->window = CreateWindowA("MDICLIENT",title?title:" ", 2.8552 + WS_OVERLAPPEDWINDOW | (disp->is_closed?0:WS_VISIBLE), CW_USEDEFAULT,CW_USEDEFAULT, 2.8553 + disp->width + 2*border1, disp->height + border1 + border2, 2.8554 + 0,0,0,&(disp->ccs)); 2.8555 + if (!disp->is_closed) { 2.8556 + GetWindowRect(disp->window,&rect); 2.8557 + disp->window_x = rect.left + border1; 2.8558 + disp->window_y = rect.top + border2; 2.8559 + } else disp->window_x = disp->window_y = 0; 2.8560 + } else { // Fullscreen window 2.8561 + const unsigned int sx = screen_dimx(), sy = screen_dimy(); 2.8562 + disp->window = CreateWindowA("MDICLIENT",title?title:" ", 2.8563 + WS_POPUP | (disp->is_closed?0:WS_VISIBLE), (sx-disp->width)/2, (sy-disp->height)/2, 2.8564 + disp->width,disp->height,0,0,0,&(disp->ccs)); 2.8565 + disp->window_x = disp->window_y = 0; 2.8566 + } 2.8567 + SetForegroundWindow(disp->window); 2.8568 + disp->hdc = GetDC(disp->window); 2.8569 + disp->window_width = disp->width; 2.8570 + disp->window_height = disp->height; 2.8571 + disp->flush(); 2.8572 +#ifdef _WIN64 2.8573 + SetWindowLongPtr(disp->window,GWLP_USERDATA,(LONG_PTR)disp); 2.8574 + SetWindowLongPtr(disp->window,GWLP_WNDPROC,(LONG_PTR)_handle_events); 2.8575 +#else 2.8576 + SetWindowLong(disp->window,GWL_USERDATA,(LONG)disp); 2.8577 + SetWindowLong(disp->window,GWL_WNDPROC,(LONG)_handle_events); 2.8578 +#endif 2.8579 + SetEvent(disp->created); 2.8580 + while (GetMessage(&msg,0,0,0)) DispatchMessage(&msg); 2.8581 + return 0; 2.8582 + } 2.8583 + 2.8584 + CImgDisplay& _update_window_pos() { 2.8585 + if (!is_closed) { 2.8586 + RECT rect; 2.8587 + rect.left = rect.top = 0; rect.right = width-1; rect.bottom = height-1; 2.8588 + AdjustWindowRect(&rect,WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,false); 2.8589 + const int border1 = (rect.right-rect.left+1-width)/2, border2 = rect.bottom-rect.top+1-height-border1; 2.8590 + GetWindowRect(window,&rect); 2.8591 + window_x = rect.left + border1; 2.8592 + window_y = rect.top + border2; 2.8593 + } else window_x = window_y = -1; 2.8594 + return *this; 2.8595 + } 2.8596 + 2.8597 + void _init_fullscreen() { 2.8598 + background_window = 0; 2.8599 + if (is_fullscreen && !is_closed) { 2.8600 + DEVMODE mode; 2.8601 + unsigned int imode = 0, ibest = 0, bestbpp = 0, bw = ~0U, bh = ~0U; 2.8602 + for (mode.dmSize = sizeof(DEVMODE), mode.dmDriverExtra = 0; EnumDisplaySettings(0,imode,&mode); ++imode) { 2.8603 + const unsigned int nw = mode.dmPelsWidth, nh = mode.dmPelsHeight; 2.8604 + if (nw>=width && nh>=height && mode.dmBitsPerPel>=bestbpp && nw<=bw && nh<=bh) { 2.8605 + bestbpp = mode.dmBitsPerPel; 2.8606 + ibest = imode; 2.8607 + bw = nw; bh = nh; 2.8608 + } 2.8609 + } 2.8610 + if (bestbpp) { 2.8611 + curr_mode.dmSize = sizeof(DEVMODE); curr_mode.dmDriverExtra = 0; 2.8612 + EnumDisplaySettings(0,ENUM_CURRENT_SETTINGS,&curr_mode); 2.8613 + EnumDisplaySettings(0,ibest,&mode); 2.8614 + ChangeDisplaySettings(&mode,0); 2.8615 + } else curr_mode.dmSize = 0; 2.8616 + 2.8617 + const unsigned int sx = screen_dimx(), sy = screen_dimy(); 2.8618 + if (sx!=width || sy!=height) { 2.8619 + CLIENTCREATESTRUCT background_ccs; 2.8620 + background_window = CreateWindowA("MDICLIENT","",WS_POPUP | WS_VISIBLE, 0,0,sx,sy,0,0,0,&background_ccs); 2.8621 + SetForegroundWindow(background_window); 2.8622 + } 2.8623 + } else curr_mode.dmSize = 0; 2.8624 + } 2.8625 + 2.8626 + void _desinit_fullscreen() { 2.8627 + if (is_fullscreen) { 2.8628 + if (background_window) DestroyWindow(background_window); 2.8629 + background_window = 0; 2.8630 + if (curr_mode.dmSize) ChangeDisplaySettings(&curr_mode,0); 2.8631 + is_fullscreen = false; 2.8632 + } 2.8633 + } 2.8634 + 2.8635 + CImgDisplay& _assign(const unsigned int dimw, const unsigned int dimh, const char *ptitle=0, 2.8636 + const unsigned int normalization_type=3, 2.8637 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.8638 + 2.8639 + // Allocate space for window title 2.8640 + const int s = cimg::strlen(ptitle)+1; 2.8641 + char *tmp_title = s?new char[s]:0; 2.8642 + if (s) cimg_std::memcpy(tmp_title,ptitle,s*sizeof(char)); 2.8643 + 2.8644 + // Destroy previous window if existing 2.8645 + if (!is_empty()) assign(); 2.8646 + 2.8647 + // Set display variables 2.8648 + width = cimg::min(dimw,(unsigned int)screen_dimx()); 2.8649 + height = cimg::min(dimh,(unsigned int)screen_dimy()); 2.8650 + normalization = normalization_type<4?normalization_type:3; 2.8651 + is_fullscreen = fullscreen_flag; 2.8652 + window_x = window_y = 0; 2.8653 + is_closed = closed_flag; 2.8654 + visible_cursor = true; 2.8655 + mouse_tracking = false; 2.8656 + title = tmp_title; 2.8657 + flush(); 2.8658 + if (is_fullscreen) _init_fullscreen(); 2.8659 + 2.8660 + // Create event thread 2.8661 + void *arg = (void*)(new void*[2]); 2.8662 + ((void**)arg)[0]=(void*)this; 2.8663 + ((void**)arg)[1]=(void*)title; 2.8664 + unsigned long ThreadID = 0; 2.8665 + mutex = CreateMutex(0,FALSE,0); 2.8666 + created = CreateEvent(0,FALSE,FALSE,0); 2.8667 + thread = CreateThread(0,0,_events_thread,arg,0,&ThreadID); 2.8668 + WaitForSingleObject(created,INFINITE); 2.8669 + return *this; 2.8670 + } 2.8671 + 2.8672 + CImgDisplay& assign() { 2.8673 + if (is_empty()) return *this; 2.8674 + DestroyWindow(window); 2.8675 + TerminateThread(thread,0); 2.8676 + if (data) delete[] data; 2.8677 + if (title) delete[] title; 2.8678 + if (is_fullscreen) _desinit_fullscreen(); 2.8679 + width = height = normalization = window_width = window_height = 0; 2.8680 + window_x = window_y = 0; 2.8681 + is_fullscreen = false; 2.8682 + is_closed = true; 2.8683 + min = max = 0; 2.8684 + title = 0; 2.8685 + flush(); 2.8686 + return *this; 2.8687 + } 2.8688 + 2.8689 + CImgDisplay& assign(const unsigned int dimw, const unsigned int dimh, const char *title=0, 2.8690 + const unsigned int normalization_type=3, 2.8691 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.8692 + if (!dimw || !dimh) return assign(); 2.8693 + _assign(dimw,dimh,title,normalization_type,fullscreen_flag,closed_flag); 2.8694 + min = max = 0; 2.8695 + cimg_std::memset(data,0,sizeof(unsigned int)*width*height); 2.8696 + return paint(); 2.8697 + } 2.8698 + 2.8699 + template<typename T> 2.8700 + CImgDisplay& assign(const CImg<T>& img, const char *title=0, 2.8701 + const unsigned int normalization_type=3, 2.8702 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.8703 + if (!img) return assign(); 2.8704 + CImg<T> tmp; 2.8705 + const CImg<T>& nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.8706 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.8707 + if (normalization==2) min = (float)nimg.minmax(max); 2.8708 + return display(nimg); 2.8709 + } 2.8710 + 2.8711 + template<typename T> 2.8712 + CImgDisplay& assign(const CImgList<T>& list, const char *title=0, 2.8713 + const unsigned int normalization_type=3, 2.8714 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.8715 + if (!list) return assign(); 2.8716 + CImg<T> tmp; 2.8717 + const CImg<T> img = list.get_append('x','p'), 2.8718 + &nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.8719 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.8720 + if (normalization==2) min = (float)nimg.minmax(max); 2.8721 + return display(nimg); 2.8722 + } 2.8723 + 2.8724 + CImgDisplay& assign(const CImgDisplay& win) { 2.8725 + if (!win) return assign(); 2.8726 + _assign(win.width,win.height,win.title,win.normalization,win.is_fullscreen,win.is_closed); 2.8727 + cimg_std::memcpy(data,win.data,sizeof(unsigned int)*width*height); 2.8728 + return paint(); 2.8729 + } 2.8730 + 2.8731 + CImgDisplay& resize(const int nwidth, const int nheight, const bool redraw=true) { 2.8732 + if (!nwidth || !nheight || (is_empty() && (nwidth<0 || nheight<0))) return assign(); 2.8733 + if (is_empty()) return assign(nwidth,nheight); 2.8734 + const unsigned int 2.8735 + tmpdimx=(nwidth>0)?nwidth:(-nwidth*width/100), 2.8736 + tmpdimy=(nheight>0)?nheight:(-nheight*height/100), 2.8737 + dimx = tmpdimx?tmpdimx:1, 2.8738 + dimy = tmpdimy?tmpdimy:1; 2.8739 + if (window_width!=dimx || window_height!=dimy) { 2.8740 + RECT rect; rect.left = rect.top = 0; rect.right = dimx-1; rect.bottom = dimy-1; 2.8741 + AdjustWindowRect(&rect,WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,false); 2.8742 + const int cwidth = rect.right-rect.left+1, cheight = rect.bottom-rect.top+1; 2.8743 + SetWindowPos(window,0,0,0,cwidth,cheight,SWP_NOMOVE | SWP_NOZORDER | SWP_NOCOPYBITS); 2.8744 + } 2.8745 + if (width!=dimx || height!=dimy) { 2.8746 + unsigned int *ndata = new unsigned int[dimx*dimy]; 2.8747 + if (redraw) _render_resize(data,width,height,ndata,dimx,dimy); 2.8748 + else cimg_std::memset(ndata,0x80,sizeof(unsigned int)*dimx*dimy); 2.8749 + delete[] data; 2.8750 + data = ndata; 2.8751 + bmi.bmiHeader.biWidth = dimx; 2.8752 + bmi.bmiHeader.biHeight = -(int)dimy; 2.8753 + width = dimx; 2.8754 + height = dimy; 2.8755 + } 2.8756 + window_width = dimx; window_height = dimy; 2.8757 + is_resized = false; 2.8758 + if (is_fullscreen) move((screen_dimx()-width)/2,(screen_dimy()-height)/2); 2.8759 + if (redraw) return paint(); 2.8760 + return *this; 2.8761 + } 2.8762 + 2.8763 + CImgDisplay& toggle_fullscreen(const bool redraw=true) { 2.8764 + if (is_empty()) return *this; 2.8765 + if (redraw) { 2.8766 + const unsigned int bufsize = width*height*4; 2.8767 + void *odata = cimg_std::malloc(bufsize); 2.8768 + cimg_std::memcpy(odata,data,bufsize); 2.8769 + assign(width,height,title,normalization,!is_fullscreen,false); 2.8770 + cimg_std::memcpy(data,odata,bufsize); 2.8771 + cimg_std::free(odata); 2.8772 + return paint(); 2.8773 + } 2.8774 + return assign(width,height,title,normalization,!is_fullscreen,false); 2.8775 + } 2.8776 + 2.8777 + CImgDisplay& show() { 2.8778 + if (is_empty()) return *this; 2.8779 + if (is_closed) { 2.8780 + is_closed = false; 2.8781 + if (is_fullscreen) _init_fullscreen(); 2.8782 + ShowWindow(window,SW_SHOW); 2.8783 + _update_window_pos(); 2.8784 + } 2.8785 + return paint(); 2.8786 + } 2.8787 + 2.8788 + CImgDisplay& close() { 2.8789 + if (is_empty()) return *this; 2.8790 + if (!is_closed && !is_fullscreen) { 2.8791 + if (is_fullscreen) _desinit_fullscreen(); 2.8792 + ShowWindow(window,SW_HIDE); 2.8793 + is_closed = true; 2.8794 + window_x = window_y = 0; 2.8795 + } 2.8796 + return *this; 2.8797 + } 2.8798 + 2.8799 + CImgDisplay& move(const int posx, const int posy) { 2.8800 + if (is_empty()) return *this; 2.8801 + if (!is_fullscreen) { 2.8802 + RECT rect; rect.left = rect.top = 0; rect.right=window_width-1; rect.bottom=window_height-1; 2.8803 + AdjustWindowRect(&rect,WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,false); 2.8804 + const int border1 = (rect.right-rect.left+1-width)/2, border2 = rect.bottom-rect.top+1-height-border1; 2.8805 + SetWindowPos(window,0,posx-border1,posy-border2,0,0,SWP_NOSIZE | SWP_NOZORDER); 2.8806 + } else SetWindowPos(window,0,posx,posy,0,0,SWP_NOSIZE | SWP_NOZORDER); 2.8807 + window_x = posx; 2.8808 + window_y = posy; 2.8809 + is_moved = false; 2.8810 + return show(); 2.8811 + } 2.8812 + 2.8813 + CImgDisplay& show_mouse() { 2.8814 + if (is_empty()) return *this; 2.8815 + visible_cursor = true; 2.8816 + ShowCursor(TRUE); 2.8817 + SendMessage(window,WM_SETCURSOR,0,0); 2.8818 + return *this; 2.8819 + } 2.8820 + 2.8821 + CImgDisplay& hide_mouse() { 2.8822 + if (is_empty()) return *this; 2.8823 + visible_cursor = false; 2.8824 + ShowCursor(FALSE); 2.8825 + SendMessage(window,WM_SETCURSOR,0,0); 2.8826 + return *this; 2.8827 + } 2.8828 + 2.8829 + CImgDisplay& set_mouse(const int posx, const int posy) { 2.8830 + if (!is_closed && posx>=0 && posy>=0) { 2.8831 + _update_window_pos(); 2.8832 + const int res = (int)SetCursorPos(window_x+posx,window_y+posy); 2.8833 + if (res) { mouse_x = posx; mouse_y = posy; } 2.8834 + } 2.8835 + return *this; 2.8836 + } 2.8837 + 2.8838 + CImgDisplay& set_title(const char *format, ...) { 2.8839 + if (is_empty()) return *this; 2.8840 + char tmp[1024] = {0}; 2.8841 + va_list ap; 2.8842 + va_start(ap, format); 2.8843 + cimg_std::vsprintf(tmp,format,ap); 2.8844 + va_end(ap); 2.8845 + if (title) delete[] title; 2.8846 + const int s = cimg::strlen(tmp)+1; 2.8847 + title = new char[s]; 2.8848 + cimg_std::memcpy(title,tmp,s*sizeof(char)); 2.8849 + SetWindowTextA(window, tmp); 2.8850 + return *this; 2.8851 + } 2.8852 + 2.8853 + template<typename T> 2.8854 + CImgDisplay& display(const CImg<T>& img) { 2.8855 + if (img.is_empty()) 2.8856 + throw CImgArgumentException("CImgDisplay::display() : Cannot display empty image."); 2.8857 + if (is_empty()) assign(img.width,img.height); 2.8858 + return render(img).paint(); 2.8859 + } 2.8860 + 2.8861 + CImgDisplay& paint() { 2.8862 + if (!is_closed) { 2.8863 + WaitForSingleObject(mutex,INFINITE); 2.8864 + SetDIBitsToDevice(hdc,0,0,width,height,0,0,0,height,data,&bmi,DIB_RGB_COLORS); 2.8865 + ReleaseMutex(mutex); 2.8866 + } 2.8867 + return *this; 2.8868 + } 2.8869 + 2.8870 + template<typename T> 2.8871 + CImgDisplay& render(const CImg<T>& img) { 2.8872 + if (is_empty()) return *this; 2.8873 + if (!img) 2.8874 + throw CImgArgumentException("CImgDisplay::_render_image() : Specified input image (%u,%u,%u,%u,%p) is empty.", 2.8875 + img.width,img.height,img.depth,img.dim,img.data); 2.8876 + if (img.depth!=1) return render(img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.8877 + 2.8878 + const T 2.8879 + *data1 = img.data, 2.8880 + *data2 = (img.dim>=2)?img.ptr(0,0,0,1):data1, 2.8881 + *data3 = (img.dim>=3)?img.ptr(0,0,0,2):data1; 2.8882 + 2.8883 + WaitForSingleObject(mutex,INFINITE); 2.8884 + unsigned int 2.8885 + *const ndata = (img.width==width && img.height==height)?data:new unsigned int[img.width*img.height], 2.8886 + *ptrd = ndata; 2.8887 + 2.8888 + if (!normalization || (normalization==3 && cimg::type<T>::string()==cimg::type<unsigned char>::string())) { 2.8889 + min = max = 0; 2.8890 + switch (img.dim) { 2.8891 + case 1 : { 2.8892 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8893 + const unsigned char val = (unsigned char)*(data1++); 2.8894 + *(ptrd++) = (val<<16) | (val<<8) | val; 2.8895 + }} break; 2.8896 + case 2 : { 2.8897 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8898 + *(ptrd++) = ((unsigned char)*(data1++)<<16) | ((unsigned char)*(data2++)<<8); 2.8899 + } break; 2.8900 + default : { 2.8901 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.8902 + *(ptrd++) = ((unsigned char)*(data1++)<<16) | ((unsigned char)*(data2++)<<8) | (unsigned char)*(data3++); 2.8903 + } 2.8904 + } 2.8905 + } else { 2.8906 + if (normalization==3) { 2.8907 + if (cimg::type<T>::is_float()) min = (float)img.minmax(max); 2.8908 + else { min = (float)cimg::type<T>::min(); max = (float)cimg::type<T>::max(); } 2.8909 + } else if ((min>max) || normalization==1) min = (float)img.minmax(max); 2.8910 + const float delta = max-min, mm = delta?delta:1.0f; 2.8911 + switch (img.dim) { 2.8912 + case 1 : { 2.8913 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8914 + const unsigned char val = (unsigned char)(255*(*(data1++)-min)/mm); 2.8915 + *(ptrd++) = (val<<16) | (val<<8) | val; 2.8916 + }} break; 2.8917 + case 2 : { 2.8918 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8919 + const unsigned char 2.8920 + R = (unsigned char)(255*(*(data1++)-min)/mm), 2.8921 + G = (unsigned char)(255*(*(data2++)-min)/mm); 2.8922 + *(ptrd++) = (R<<16) | (G<<8); 2.8923 + }} break; 2.8924 + default : { 2.8925 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8926 + const unsigned char 2.8927 + R = (unsigned char)(255*(*(data1++)-min)/mm), 2.8928 + G = (unsigned char)(255*(*(data2++)-min)/mm), 2.8929 + B = (unsigned char)(255*(*(data3++)-min)/mm); 2.8930 + *(ptrd++) = (R<<16) | (G<<8) | B; 2.8931 + }} 2.8932 + } 2.8933 + } 2.8934 + if (ndata!=data) { _render_resize(ndata,img.width,img.height,data,width,height); delete[] ndata; } 2.8935 + ReleaseMutex(mutex); 2.8936 + return *this; 2.8937 + } 2.8938 + 2.8939 + template<typename T> 2.8940 + const CImgDisplay& snapshot(CImg<T>& img) const { 2.8941 + if (is_empty()) img.assign(); 2.8942 + else { 2.8943 + img.assign(width,height,1,3); 2.8944 + T 2.8945 + *data1 = img.ptr(0,0,0,0), 2.8946 + *data2 = img.ptr(0,0,0,1), 2.8947 + *data3 = img.ptr(0,0,0,2); 2.8948 + unsigned int *ptrs = data; 2.8949 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.8950 + const unsigned int val = *(ptrs++); 2.8951 + *(data1++) = (unsigned char)(val>>16); 2.8952 + *(data2++) = (unsigned char)((val>>8)&0xFF); 2.8953 + *(data3++) = (unsigned char)(val&0xFF); 2.8954 + } 2.8955 + } 2.8956 + return *this; 2.8957 + } 2.8958 + 2.8959 + // MacOSX - Carbon-based display 2.8960 + //------------------------------- 2.8961 + // (Code by Adrien Reboisson && Romain Blei, supervised by Jean-Marie Favreau) 2.8962 + // 2.8963 +#elif cimg_display==3 2.8964 + unsigned int *data; // The bits of the picture 2.8965 + WindowRef carbonWindow; // The opaque carbon window struct associated with the display 2.8966 + MPCriticalRegionID paintCriticalRegion; // Critical section used when drawing 2.8967 + CGColorSpaceRef csr; // Needed for painting 2.8968 + CGDataProviderRef dataProvider; // Needed for painting 2.8969 + CGImageRef imageRef; // The image 2.8970 + UInt32 lastKeyModifiers; // Buffer storing modifiers state 2.8971 + 2.8972 + // Define the kind of the queries which can be serialized using the event thread. 2.8973 + typedef enum { 2.8974 + COM_CREATEWINDOW = 0, // Create window query 2.8975 + COM_RELEASEWINDOW, // Release window query 2.8976 + COM_SHOWWINDOW, // Show window query 2.8977 + COM_HIDEWINDOW, // Hide window query 2.8978 + COM_SHOWMOUSE, // Show mouse query 2.8979 + COM_HIDEMOUSE, // Hide mouse query 2.8980 + COM_RESIZEWINDOW, // Resize window query 2.8981 + COM_MOVEWINDOW, // Move window query 2.8982 + COM_SETTITLE, // Set window title query 2.8983 + COM_SETMOUSEPOS // Set cursor position query 2.8984 + } CImgCarbonQueryKind; 2.8985 + 2.8986 + // The query destructor send to the event thread. 2.8987 + struct CbSerializedQuery { 2.8988 + CImgDisplay* sender; // Query's sender 2.8989 + CImgCarbonQueryKind kind; // The kind of the query sent to the background thread 2.8990 + short x, y; // X:Y values for move/resize operations 2.8991 + char *c; // Char values for window title 2.8992 + bool createFullScreenWindow; // Boolean value used for full-screen window creation 2.8993 + bool createClosedWindow; // Boolean value used for closed-window creation 2.8994 + bool update; // Boolean value used for resize 2.8995 + bool success; // Succes or failure of the message, used as return value 2.8996 + CbSerializedQuery(CImgDisplay *s, CImgCarbonQueryKind k):sender(s),kind(k),success(false) {}; 2.8997 + 2.8998 + inline static CbSerializedQuery BuildReleaseWindowQuery(CImgDisplay* sender) { 2.8999 + return CbSerializedQuery(sender, COM_RELEASEWINDOW); 2.9000 + } 2.9001 + inline static CbSerializedQuery BuildCreateWindowQuery(CImgDisplay* sender, const bool fullscreen, const bool closed) { 2.9002 + CbSerializedQuery q(sender, COM_CREATEWINDOW); 2.9003 + q.createFullScreenWindow = fullscreen; 2.9004 + q.createClosedWindow = closed; 2.9005 + return q; 2.9006 + } 2.9007 + inline static CbSerializedQuery BuildShowWindowQuery(CImgDisplay* sender) { 2.9008 + return CbSerializedQuery(sender, COM_SHOWWINDOW); 2.9009 + } 2.9010 + inline static CbSerializedQuery BuildHideWindowQuery(CImgDisplay* sender) { 2.9011 + return CbSerializedQuery(sender, COM_HIDEWINDOW); 2.9012 + } 2.9013 + inline static CbSerializedQuery BuildShowMouseQuery(CImgDisplay* sender) { 2.9014 + return CbSerializedQuery(sender, COM_SHOWMOUSE); 2.9015 + } 2.9016 + inline static CbSerializedQuery BuildHideMouseQuery(CImgDisplay* sender) { 2.9017 + return CbSerializedQuery(sender, COM_HIDEMOUSE); 2.9018 + } 2.9019 + inline static CbSerializedQuery BuildResizeWindowQuery(CImgDisplay* sender, const int x, const int y, bool update) { 2.9020 + CbSerializedQuery q(sender, COM_RESIZEWINDOW); 2.9021 + q.x = x, q.y = y; 2.9022 + q.update = update; 2.9023 + return q; 2.9024 + } 2.9025 + inline static CbSerializedQuery BuildMoveWindowQuery(CImgDisplay* sender, const int x, const int y) { 2.9026 + CbSerializedQuery q(sender, COM_MOVEWINDOW); 2.9027 + q.x = x, q.y = y; 2.9028 + return q; 2.9029 + } 2.9030 + inline static CbSerializedQuery BuildSetWindowTitleQuery(CImgDisplay* sender, char* c) { 2.9031 + CbSerializedQuery q(sender, COM_SETTITLE); 2.9032 + q.c = c; 2.9033 + return q; 2.9034 + } 2.9035 + inline static CbSerializedQuery BuildSetWindowPosQuery(CImgDisplay* sender, const int x, const int y) { 2.9036 + CbSerializedQuery q(sender, COM_SETMOUSEPOS); 2.9037 + q.x = x, q.y = y; 2.9038 + return q; 2.9039 + } 2.9040 + }; 2.9041 + 2.9042 + // Send a serialized query in a synchroneous way. 2.9043 + // @param c Application Carbon global settings. 2.9044 + // @param m The query to send. 2.9045 + // @result Success/failure of the operation returned by the event thread. 2.9046 + bool _CbSendMsg(cimg::CarbonInfo& c, CbSerializedQuery m) { 2.9047 + MPNotifyQueue(c.com_queue,&m,0,0); // Send the given message 2.9048 + MPWaitOnSemaphore(c.sync_event,kDurationForever); // Wait end of processing notification 2.9049 + return m.success; 2.9050 + } 2.9051 + 2.9052 + // Free the window attached to the current display. 2.9053 + // @param c Application Carbon global settings. 2.9054 + // @result Success/failure of the operation. 2.9055 + bool _CbFreeAttachedWindow(cimg::CarbonInfo& c) { 2.9056 + if (!_CbSendMsg(c, CbSerializedQuery::BuildReleaseWindowQuery(this))) // Ask the main thread to free the given window 2.9057 + throw CImgDisplayException("Cannot release window associated with the current display."); 2.9058 + // If a window existed, ask to release it 2.9059 + MPEnterCriticalRegion(c.windowListCR,kDurationForever); // Lock the list of the windows 2.9060 + --c.windowCount; //Decrement the window count 2.9061 + MPExitCriticalRegion(c.windowListCR); // Unlock the list 2.9062 + return c.windowCount == 0; 2.9063 + } 2.9064 + 2.9065 + // Create the window attached to the current display. 2.9066 + // @param c Application Carbon global settings. 2.9067 + // @param title The window title, if any. 2.9068 + // @param fullscreen Shoud we start in fullscreen mode ? 2.9069 + // @param create_closed If true, the window is created but not displayed. 2.9070 + // @result Success/failure of the operation. 2.9071 + void _CbCreateAttachedWindow(cimg::CarbonInfo& c, const char* title, const bool fullscreen, const bool create_closed) { 2.9072 + if (!_CbSendMsg(c,CbSerializedQuery::BuildCreateWindowQuery(this,fullscreen,create_closed))) // Ask the main thread to create the window 2.9073 + throw CImgDisplayException("Cannot create the window associated with the current display."); 2.9074 + if (title) set_title(title); // Set the title, if any 2.9075 + // Now we can register the window 2.9076 + MPEnterCriticalRegion(c.windowListCR,kDurationForever); // Lock the list of the windows 2.9077 + ++c.windowCount; //Increment the window count 2.9078 + MPExitCriticalRegion(c.windowListCR); // Unlock the list 2.9079 + } 2.9080 + 2.9081 + // Destroy graphic objects previously allocated. We free the image, the data provider, then the colorspace. 2.9082 + void _CbFinalizeGraphics() { 2.9083 + CGImageRelease (imageRef); // Release the picture 2.9084 + CGDataProviderRelease(dataProvider); // Release the DP 2.9085 + CGColorSpaceRelease(csr); // Free the cs 2.9086 + } 2.9087 + 2.9088 + // Create graphic objects associated to a display. We have to create a colormap, a data provider, and the image. 2.9089 + void _CbInitializeGraphics() { 2.9090 + csr = CGColorSpaceCreateDeviceRGB(); // Create the color space first 2.9091 + if (!csr) 2.9092 + throw CImgDisplayException("CGColorSpaceCreateDeviceRGB() failed."); 2.9093 + // Create the DP 2.9094 + dataProvider = CGDataProviderCreateWithData(0,data,height*width*sizeof(unsigned int),0); 2.9095 + if (!dataProvider) 2.9096 + throw CImgDisplayException("CGDataProviderCreateWithData() failed."); 2.9097 + // ... and finally the image. 2.9098 + if (cimg::endianness()) 2.9099 + imageRef = CGImageCreate(width,height,8,32,width*sizeof(unsigned int),csr, 2.9100 + kCGImageAlphaNoneSkipFirst,dataProvider,0,false,kCGRenderingIntentDefault); 2.9101 + else 2.9102 + imageRef = CGImageCreate(width,height,8,32,width*sizeof(unsigned int),csr, 2.9103 + kCGImageAlphaNoneSkipFirst | kCGBitmapByteOrder32Host,dataProvider,0,false,kCGRenderingIntentDefault); 2.9104 + if (!imageRef) 2.9105 + throw CImgDisplayException("CGImageCreate() failed."); 2.9106 + } 2.9107 + 2.9108 + // Reinit graphic objects. Free them, then reallocate all. 2.9109 + // This is used when image bounds are changed or when data source get invalid. 2.9110 + void _CbReinitGraphics() { 2.9111 + MPEnterCriticalRegion(paintCriticalRegion, kDurationForever); 2.9112 + _CbFinalizeGraphics(); 2.9113 + _CbInitializeGraphics(); 2.9114 + MPExitCriticalRegion(paintCriticalRegion); 2.9115 + } 2.9116 + 2.9117 + // Convert a point having global coordonates into the window coordonates. 2.9118 + // We use this function to replace the deprecated GlobalToLocal QuickDraw API. 2.9119 + // @param mouseEvent The mouse event which triggered the event handler. 2.9120 + // @param window The window where the event occured. 2.9121 + // @param point The modified point struct. 2.9122 + // @result True if the point struct has been converted successfully. 2.9123 + static bool _CbToLocalPointFromMouseEvent(EventRef mouseEvent, WindowRef window, HIPoint* point) { 2.9124 + Rect bounds; 2.9125 + if (GetWindowBounds(window,kWindowStructureRgn,&bounds)==noErr) { 2.9126 + point->x -= bounds.left; 2.9127 + point->y -= bounds.top; 2.9128 + HIViewRef view = NULL; 2.9129 + if (HIViewGetViewForMouseEvent(HIViewGetRoot(window),mouseEvent,&view)==noErr) 2.9130 + return HIViewConvertPoint(point, NULL, view) == noErr; 2.9131 + } 2.9132 + return false; 2.9133 + } 2.9134 + 2.9135 + static int screen_dimx() { 2.9136 + return CGDisplayPixelsWide(kCGDirectMainDisplay); 2.9137 + } 2.9138 + 2.9139 + static int screen_dimy() { 2.9140 + return CGDisplayPixelsHigh(kCGDirectMainDisplay); 2.9141 + } 2.9142 + 2.9143 + CImgDisplay& assign(const unsigned int dimw, const unsigned int dimh, const char *title=0, 2.9144 + const unsigned int normalization_type=3, 2.9145 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.9146 + if (!dimw || !dimh) return assign(); 2.9147 + _assign(dimw,dimh,title,normalization_type,fullscreen_flag,closed_flag); 2.9148 + min = max = 0; 2.9149 + cimg_std::memset(data,0,sizeof(unsigned int)*width*height); 2.9150 + return paint(); 2.9151 + } 2.9152 + 2.9153 + template<typename T> 2.9154 + CImgDisplay& assign(const CImg<T>& img, const char *title=0, 2.9155 + const unsigned int normalization_type=3, 2.9156 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.9157 + if (!img) return assign(); 2.9158 + CImg<T> tmp; 2.9159 + const CImg<T>& nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.9160 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.9161 + if (normalization==2) min = (float)nimg.minmax(max); 2.9162 + return display(nimg); 2.9163 + } 2.9164 + 2.9165 + template<typename T> 2.9166 + CImgDisplay& assign(const CImgList<T>& list, const char *title=0, 2.9167 + const unsigned int normalization_type=3, 2.9168 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.9169 + if (!list) return assign(); 2.9170 + CImg<T> tmp; 2.9171 + const CImg<T> img = list.get_append('x','p'), 2.9172 + &nimg = (img.depth==1)?img:(tmp=img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.9173 + _assign(nimg.width,nimg.height,title,normalization_type,fullscreen_flag,closed_flag); 2.9174 + if (normalization==2) min = (float)nimg.minmax(max); 2.9175 + return display(nimg); 2.9176 + } 2.9177 + 2.9178 + CImgDisplay& assign(const CImgDisplay &win) { 2.9179 + if (!win) return assign(); 2.9180 + _assign(win.width,win.height,win.title,win.normalization,win.is_fullscreen,win.is_closed); 2.9181 + cimg_std::memcpy(data,win.data,sizeof(unsigned int)*width*height); 2.9182 + return paint(); 2.9183 + } 2.9184 + 2.9185 + template<typename T> 2.9186 + CImgDisplay& display(const CImg<T>& img) { 2.9187 + if (is_empty()) assign(img.width,img.height); 2.9188 + return render(img).paint(); 2.9189 + } 2.9190 + 2.9191 + CImgDisplay& resize(const int nwidth, const int nheight, const bool redraw=true) { 2.9192 + if (!nwidth || !nheight || (is_empty() && (nwidth<0 || nheight<0))) return assign(); 2.9193 + if (is_empty()) return assign(nwidth,nheight); 2.9194 + const unsigned int 2.9195 + tmpdimx = (nwidth>0)?nwidth:(-nwidth*width/100), 2.9196 + tmpdimy = (nheight>0)?nheight:(-nheight*height/100), 2.9197 + dimx = tmpdimx?tmpdimx:1, 2.9198 + dimy = tmpdimy?tmpdimy:1; 2.9199 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9200 + 2.9201 + if ((window_width!=dimx || window_height!=dimy) && 2.9202 + !_CbSendMsg(c,CbSerializedQuery::BuildResizeWindowQuery(this,dimx,dimy,redraw))) 2.9203 + throw CImgDisplayException("CImgDisplay::resize() : Cannot resize the window associated to the current display."); 2.9204 + 2.9205 + if (width!=dimx || height!=dimy) { 2.9206 + unsigned int *ndata = new unsigned int[dimx*dimy]; 2.9207 + if (redraw) _render_resize(data,width,height,ndata,dimx,dimy); 2.9208 + else cimg_std::memset(ndata,0x80,sizeof(unsigned int)*dimx*dimy); 2.9209 + unsigned int const* old_data = data; 2.9210 + data = ndata; 2.9211 + delete[] old_data; 2.9212 + _CbReinitGraphics(); 2.9213 + } 2.9214 + window_width = width = dimx; window_height = height = dimy; 2.9215 + is_resized = false; 2.9216 + if (is_fullscreen) move((screen_dimx()-width)/2,(screen_dimy()-height)/2); 2.9217 + if (redraw) return paint(); 2.9218 + return *this; 2.9219 + } 2.9220 + 2.9221 + CImgDisplay& move(const int posx, const int posy) { 2.9222 + if (is_empty()) return *this; 2.9223 + if (!is_fullscreen) { 2.9224 + // If the operation succeeds, window_x and window_y are updated by the event thread 2.9225 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9226 + // Send the query 2.9227 + if (!_CbSendMsg(c,CbSerializedQuery::BuildMoveWindowQuery(this,posx,posy))) 2.9228 + throw CImgDisplayException("CImgDisplay::move() : Cannot move the window associated to the current display."); 2.9229 + } 2.9230 + return show(); 2.9231 + } 2.9232 + 2.9233 + CImgDisplay& set_mouse(const int posx, const int posy) { 2.9234 + if (!is_closed && posx>=0 && posy>=0) { 2.9235 + // If the operation succeeds, mouse_x and mouse_y are updated by the event thread 2.9236 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9237 + // Send the query 2.9238 + if (!_CbSendMsg(c,CbSerializedQuery::BuildSetWindowPosQuery(this,posx,posy))) 2.9239 + throw CImgDisplayException("CImgDisplay::set_mouse() : Cannot set the mouse position to the current display."); 2.9240 + } 2.9241 + return *this; 2.9242 + } 2.9243 + 2.9244 + CImgDisplay& hide_mouse() { 2.9245 + if (is_empty()) return *this; 2.9246 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9247 + // Send the query 2.9248 + if (!_CbSendMsg(c,CbSerializedQuery::BuildHideMouseQuery(this))) 2.9249 + throw CImgDisplayException("CImgDisplay::hide_mouse() : Cannot hide the mouse associated to the current display."); 2.9250 + return *this; 2.9251 + } 2.9252 + 2.9253 + CImgDisplay& show_mouse() { 2.9254 + if (is_empty()) return *this; 2.9255 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9256 + // Send the query 2.9257 + if (!_CbSendMsg(c,CbSerializedQuery::BuildShowMouseQuery(this))) 2.9258 + throw CImgDisplayException("CImgDisplay::show_mouse() : Cannot show the mouse associated to the current display."); 2.9259 + return *this; 2.9260 + } 2.9261 + 2.9262 + static void wait_all() { 2.9263 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9264 + MPWaitOnSemaphore(c.wait_event,kDurationForever); 2.9265 + } 2.9266 + 2.9267 + CImgDisplay& show() { 2.9268 + if (is_empty()) return *this; 2.9269 + if (is_closed) { 2.9270 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9271 + if (!_CbSendMsg(c,CbSerializedQuery::BuildShowWindowQuery(this))) 2.9272 + throw CImgDisplayException("CImgDisplay::show() : Cannot show the window associated to the current display."); 2.9273 + } 2.9274 + return paint(); 2.9275 + } 2.9276 + 2.9277 + CImgDisplay& close() { 2.9278 + if (is_empty()) return *this; 2.9279 + if (!is_closed && !is_fullscreen) { 2.9280 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9281 + // If the operation succeeds, window_x and window_y are updated on the event thread 2.9282 + if (!_CbSendMsg(c,CbSerializedQuery::BuildHideWindowQuery(this))) 2.9283 + throw CImgDisplayException("CImgDisplay::close() : Cannot hide the window associated to the current display."); 2.9284 + } 2.9285 + return *this; 2.9286 + } 2.9287 + 2.9288 + CImgDisplay& set_title(const char *format, ...) { 2.9289 + if (is_empty()) return *this; 2.9290 + char tmp[1024] = {0}; 2.9291 + va_list ap; 2.9292 + va_start(ap, format); 2.9293 + cimg_std::vsprintf(tmp,format,ap); 2.9294 + va_end(ap); 2.9295 + if (title) delete[] title; 2.9296 + const int s = cimg::strlen(tmp)+1; 2.9297 + title = new char[s]; 2.9298 + cimg_std::memcpy(title,tmp,s*sizeof(char)); 2.9299 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9300 + if (!_CbSendMsg(c,CbSerializedQuery::BuildSetWindowTitleQuery(this,tmp))) 2.9301 + throw CImgDisplayException("CImgDisplay::set_title() : Cannot set the window title associated to the current display."); 2.9302 + return *this; 2.9303 + } 2.9304 + 2.9305 + CImgDisplay& paint() { 2.9306 + if (!is_closed) { 2.9307 + MPEnterCriticalRegion(paintCriticalRegion,kDurationForever); 2.9308 + CGrafPtr portPtr = GetWindowPort(carbonWindow); 2.9309 + CGContextRef currentContext = 0; 2.9310 + QDBeginCGContext(portPtr,¤tContext); 2.9311 + CGContextSetRGBFillColor(currentContext,255,255,255,255); 2.9312 + CGContextFillRect(currentContext,CGRectMake(0,0,window_width,window_height)); 2.9313 + CGContextDrawImage(currentContext,CGRectMake(0,int(window_height-height)<0?0:window_height-height,width,height),imageRef); 2.9314 + CGContextFlush(currentContext); 2.9315 + QDEndCGContext(portPtr, ¤tContext); 2.9316 + MPExitCriticalRegion(paintCriticalRegion); 2.9317 + } 2.9318 + return *this; 2.9319 + } 2.9320 + 2.9321 + template<typename T> 2.9322 + CImgDisplay& render(const CImg<T>& img) { 2.9323 + if (is_empty()) return *this; 2.9324 + if (!img) 2.9325 + throw CImgArgumentException("CImgDisplay::_render_image() : Specified input image (%u,%u,%u,%u,%p) is empty.", 2.9326 + img.width,img.height,img.depth,img.dim,img.data); 2.9327 + if (img.depth!=1) return render(img.get_projections2d(img.width/2,img.height/2,img.depth/2)); 2.9328 + const T 2.9329 + *data1 = img.data, 2.9330 + *data2 = (img.dim>=2)?img.ptr(0,0,0,1):data1, 2.9331 + *data3 = (img.dim>=3)?img.ptr(0,0,0,2):data1; 2.9332 + MPEnterCriticalRegion(paintCriticalRegion, kDurationForever); 2.9333 + unsigned int 2.9334 + *const ndata = (img.width==width && img.height==height)?data:new unsigned int[img.width*img.height], 2.9335 + *ptrd = ndata; 2.9336 + if (!normalization || (normalization==3 && cimg::type<T>::string()==cimg::type<unsigned char>::string())) { 2.9337 + min = max = 0; 2.9338 + for (unsigned int xy = img.width*img.height; xy>0; --xy) 2.9339 + *(ptrd++) = ((unsigned char)*(data1++)<<16) | ((unsigned char)*(data2++)<<8) | (unsigned char)*(data3++); 2.9340 + } else { 2.9341 + if (normalization==3) { 2.9342 + if (cimg::type<T>::is_float()) min = (float)img.minmax(max); 2.9343 + else { 2.9344 + min = (float)cimg::type<T>::min(); 2.9345 + max = (float)cimg::type<T>::max(); 2.9346 + } 2.9347 + } else if ((min>max) || normalization==1) min = (float)img.minmax(max); 2.9348 + const float delta = max-min, mm = delta?delta:1.0f; 2.9349 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.9350 + const unsigned char 2.9351 + R = (unsigned char)(255*(*(data1++)-min)/mm), 2.9352 + G = (unsigned char)(255*(*(data2++)-min)/mm), 2.9353 + B = (unsigned char)(255*(*(data3++)-min)/mm); 2.9354 + *(ptrd++) = (R<<16) | (G<<8) | (B); 2.9355 + } 2.9356 + } 2.9357 + if (ndata!=data) { 2.9358 + _render_resize(ndata,img.width,img.height,data,width,height); 2.9359 + delete[] ndata; 2.9360 + } 2.9361 + MPExitCriticalRegion(paintCriticalRegion); 2.9362 + return *this; 2.9363 + } 2.9364 + 2.9365 + template<typename T> 2.9366 + const CImgDisplay& snapshot(CImg<T>& img) const { 2.9367 + if (is_empty()) img.assign(); 2.9368 + else { 2.9369 + img.assign(width,height,1,3); 2.9370 + T 2.9371 + *data1 = img.ptr(0,0,0,0), 2.9372 + *data2 = img.ptr(0,0,0,1), 2.9373 + *data3 = img.ptr(0,0,0,2); 2.9374 + unsigned int *ptrs = data; 2.9375 + for (unsigned int xy = img.width*img.height; xy>0; --xy) { 2.9376 + const unsigned int val = *(ptrs++); 2.9377 + *(data1++) = (unsigned char)(val>>16); 2.9378 + *(data2++) = (unsigned char)((val>>8)&0xFF); 2.9379 + *(data3++) = (unsigned char)(val&0xFF); 2.9380 + } 2.9381 + } 2.9382 + return *this; 2.9383 + } 2.9384 + 2.9385 + CImgDisplay& toggle_fullscreen(const bool redraw=true) { 2.9386 + if (is_empty()) return *this; 2.9387 + if (redraw) { 2.9388 + const unsigned int bufsize = width*height*4; 2.9389 + void *odata = cimg_std::malloc(bufsize); 2.9390 + cimg_std::memcpy(odata,data,bufsize); 2.9391 + assign(width,height,title,normalization,!is_fullscreen,false); 2.9392 + cimg_std::memcpy(data,odata,bufsize); 2.9393 + cimg_std::free(odata); 2.9394 + return paint(); 2.9395 + } 2.9396 + return assign(width,height,title,normalization,!is_fullscreen,false); 2.9397 + } 2.9398 + 2.9399 + static OSStatus CarbonEventHandler(EventHandlerCallRef myHandler, EventRef theEvent, void* userData) { 2.9400 + OSStatus result = eventNotHandledErr; 2.9401 + CImgDisplay* disp = (CImgDisplay*) userData; 2.9402 + (void)myHandler; // Avoid "unused parameter" 2.9403 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9404 + // Gets the associated display 2.9405 + if (disp) { 2.9406 + // Window events are always handled 2.9407 + if (GetEventClass(theEvent)==kEventClassWindow) switch (GetEventKind (theEvent)) { 2.9408 + case kEventWindowClose : 2.9409 + disp->mouse_x = disp->mouse_y = -1; 2.9410 + disp->window_x = disp->window_y = 0; 2.9411 + if (disp->button) { 2.9412 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.9413 + disp->button = 0; 2.9414 + } 2.9415 + if (disp->key) { 2.9416 + cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); 2.9417 + disp->key = 0; 2.9418 + } 2.9419 + if (disp->released_key) { cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); disp->released_key = 0; } 2.9420 + disp->is_closed = true; 2.9421 + HideWindow(disp->carbonWindow); 2.9422 + disp->is_event = true; 2.9423 + MPSignalSemaphore(c.wait_event); 2.9424 + result = noErr; 2.9425 + break; 2.9426 + // There is a lot of case where we have to redraw our window 2.9427 + case kEventWindowBoundsChanging : 2.9428 + case kEventWindowResizeStarted : 2.9429 + case kEventWindowCollapsed : //Not sure it's really needed :-) 2.9430 + break; 2.9431 + case kEventWindowZoomed : 2.9432 + case kEventWindowExpanded : 2.9433 + case kEventWindowResizeCompleted : { 2.9434 + MPEnterCriticalRegion(disp->paintCriticalRegion, kDurationForever); 2.9435 + // Now we retrieve the new size of the window 2.9436 + Rect newContentRect; 2.9437 + GetWindowBounds(disp->carbonWindow,kWindowContentRgn,&newContentRect); 2.9438 + const unsigned int 2.9439 + nw = (unsigned int)(newContentRect.right - newContentRect.left), 2.9440 + nh = (unsigned int)(newContentRect.bottom - newContentRect.top); 2.9441 + 2.9442 + // Then we update CImg internal settings 2.9443 + if (nw && nh && (nw!=disp->width || nh!=disp->height)) { 2.9444 + disp->window_width = nw; 2.9445 + disp->window_height = nh; 2.9446 + disp->mouse_x = disp->mouse_y = -1; 2.9447 + disp->is_resized = true; 2.9448 + } 2.9449 + disp->is_event = true; 2.9450 + MPExitCriticalRegion(disp->paintCriticalRegion); 2.9451 + disp->paint(); // Coords changed, must update the screen 2.9452 + MPSignalSemaphore(c.wait_event); 2.9453 + result = noErr; 2.9454 + } break; 2.9455 + case kEventWindowDragStarted : 2.9456 + case kEventWindowDragCompleted : { 2.9457 + MPEnterCriticalRegion(disp->paintCriticalRegion, kDurationForever); 2.9458 + // Now we retrieve the new size of the window 2.9459 + Rect newContentRect ; 2.9460 + GetWindowBounds(disp->carbonWindow,kWindowStructureRgn,&newContentRect); 2.9461 + const int nx = (int)(newContentRect.left), ny = (int)(newContentRect.top); 2.9462 + // Then we update CImg internal settings 2.9463 + if (nx!=disp->window_x || ny!=disp->window_y) { 2.9464 + disp->window_x = nx; 2.9465 + disp->window_y = ny; 2.9466 + disp->is_moved = true; 2.9467 + } 2.9468 + disp->is_event = true; 2.9469 + MPExitCriticalRegion(disp->paintCriticalRegion); 2.9470 + disp->paint(); // Coords changed, must update the screen 2.9471 + MPSignalSemaphore(c.wait_event); 2.9472 + result = noErr; 2.9473 + } break; 2.9474 + case kEventWindowPaint : 2.9475 + disp->paint(); 2.9476 + break; 2.9477 + } 2.9478 + 2.9479 + switch (GetEventClass(theEvent)) { 2.9480 + case kEventClassKeyboard : { 2.9481 + if (GetEventKind(theEvent)==kEventRawKeyModifiersChanged) { 2.9482 + // Apple has special keys named "notifiers", we have to convert this (exotic ?) key handling into the regular CImg processing. 2.9483 + UInt32 newModifiers; 2.9484 + if (GetEventParameter(theEvent,kEventParamKeyModifiers,typeUInt32,0,sizeof(UInt32),0,&newModifiers)==noErr) { 2.9485 + int newKeyCode = -1; 2.9486 + UInt32 changed = disp->lastKeyModifiers^newModifiers; 2.9487 + // Find what changed here 2.9488 + if ((changed & rightShiftKey)!=0) newKeyCode = cimg::keySHIFTRIGHT; 2.9489 + if ((changed & shiftKey)!=0) newKeyCode = cimg::keySHIFTLEFT; 2.9490 + 2.9491 + // On the Mac, the "option" key = the ALT key 2.9492 + if ((changed & (optionKey | rightOptionKey))!=0) newKeyCode = cimg::keyALTGR; 2.9493 + if ((changed & controlKey)!=0) newKeyCode = cimg::keyCTRLLEFT; 2.9494 + if ((changed & rightControlKey)!=0) newKeyCode = cimg::keyCTRLRIGHT; 2.9495 + if ((changed & cmdKey)!=0) newKeyCode = cimg::keyAPPLEFT; 2.9496 + if ((changed & alphaLock)!=0) newKeyCode = cimg::keyCAPSLOCK; 2.9497 + if (newKeyCode != -1) { // Simulate keystroke 2.9498 + if (disp->key) cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); 2.9499 + disp->key = (int)newKeyCode; 2.9500 + } 2.9501 + disp->lastKeyModifiers = newModifiers; // Save current state 2.9502 + } 2.9503 + disp->is_event = true; 2.9504 + MPSignalSemaphore(c.wait_event); 2.9505 + } 2.9506 + if (GetEventKind(theEvent)==kEventRawKeyDown || GetEventKind(theEvent)==kEventRawKeyRepeat) { 2.9507 + char keyCode; 2.9508 + if (GetEventParameter(theEvent,kEventParamKeyMacCharCodes,typeChar,0,sizeof(keyCode),0,&keyCode)==noErr) { 2.9509 + disp->update_iskey((unsigned int)keyCode,true); 2.9510 + if (disp->key) cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); 2.9511 + disp->key = (unsigned int)keyCode; 2.9512 + if (disp->released_key) { cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); disp->released_key = 0; } 2.9513 + } 2.9514 + disp->is_event = true; 2.9515 + MPSignalSemaphore(c.wait_event); 2.9516 + } 2.9517 + } break; 2.9518 + 2.9519 + case kEventClassMouse : 2.9520 + switch (GetEventKind(theEvent)) { 2.9521 + case kEventMouseDragged : 2.9522 + // When you push the main button on the Apple mouse while moving it, you got NO kEventMouseMoved msg, 2.9523 + // but a kEventMouseDragged one. So we merge them here. 2.9524 + case kEventMouseMoved : 2.9525 + HIPoint point; 2.9526 + if (GetEventParameter(theEvent,kEventParamMouseLocation,typeHIPoint,0,sizeof(point),0,&point)==noErr) { 2.9527 + if (_CbToLocalPointFromMouseEvent(theEvent,disp->carbonWindow,&point)) { 2.9528 + disp->mouse_x = (int)point.x; 2.9529 + disp->mouse_y = (int)point.y; 2.9530 + if (disp->mouse_x<0 || disp->mouse_y<0 || disp->mouse_x>=disp->dimx() || disp->mouse_y>=disp->dimy()) 2.9531 + disp->mouse_x = disp->mouse_y = -1; 2.9532 + } else disp->mouse_x = disp->mouse_y = -1; 2.9533 + } 2.9534 + disp->is_event = true; 2.9535 + MPSignalSemaphore(c.wait_event); 2.9536 + break; 2.9537 + case kEventMouseDown : 2.9538 + UInt16 btn; 2.9539 + if (GetEventParameter(theEvent,kEventParamMouseButton,typeMouseButton,0,sizeof(btn),0,&btn)==noErr) { 2.9540 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.9541 + if (btn==kEventMouseButtonPrimary) disp->button|=1U; 2.9542 + // For those who don't have a multi-mouse button (as me), I think it's better to allow the user 2.9543 + // to emulate a right click by using the Control key 2.9544 + if ((disp->lastKeyModifiers & (controlKey | rightControlKey))!=0) 2.9545 + cimg::warn("CImgDisplay::CarbonEventHandler() : Will emulate right click now [Down]"); 2.9546 + if (btn==kEventMouseButtonSecondary || ((disp->lastKeyModifiers & (controlKey | rightControlKey))!=0)) disp->button|=2U; 2.9547 + if (btn==kEventMouseButtonTertiary) disp->button|=4U; 2.9548 + } 2.9549 + disp->is_event = true; 2.9550 + MPSignalSemaphore(c.wait_event); 2.9551 + break; 2.9552 + case kEventMouseWheelMoved : 2.9553 + EventMouseWheelAxis wheelax; 2.9554 + SInt32 delta; 2.9555 + if (GetEventParameter(theEvent,kEventParamMouseWheelAxis,typeMouseWheelAxis,0,sizeof(wheelax),0,&wheelax)==noErr) 2.9556 + if (wheelax==kEventMouseWheelAxisY) { 2.9557 + if (GetEventParameter(theEvent,kEventParamMouseWheelDelta,typeLongInteger,0,sizeof(delta),0,&delta)==noErr) 2.9558 + if (delta>0) disp->wheel+=delta/120; //FIXME: why 120 ? 2.9559 + disp->is_event = true; 2.9560 + MPSignalSemaphore(c.wait_event); 2.9561 + } 2.9562 + break; 2.9563 + } 2.9564 + } 2.9565 + 2.9566 + switch (GetEventClass(theEvent)) { 2.9567 + case kEventClassKeyboard : 2.9568 + if (GetEventKind(theEvent)==kEventRawKeyUp) { 2.9569 + UInt32 keyCode; 2.9570 + if (GetEventParameter(theEvent,kEventParamKeyCode,typeUInt32,0,sizeof(keyCode),0,&keyCode)==noErr) { 2.9571 + disp->update_iskey((unsigned int)keyCode,false); 2.9572 + if (disp->key) { cimg_std::memmove((void*)(disp->keys+1),(void*)disp->keys,512-1); disp->key = 0; } 2.9573 + if (disp->released_key) cimg_std::memmove((void*)(disp->released_keys+1),(void*)disp->released_keys,512-1); 2.9574 + disp->released_key = (int)keyCode; 2.9575 + } 2.9576 + disp->is_event = true; 2.9577 + MPSignalSemaphore(c.wait_event); 2.9578 + } 2.9579 + break; 2.9580 + 2.9581 + case kEventClassMouse : 2.9582 + switch (GetEventKind(theEvent)) { 2.9583 + case kEventMouseUp : 2.9584 + UInt16 btn; 2.9585 + if (GetEventParameter(theEvent,kEventParamMouseButton,typeMouseButton,0,sizeof(btn),0,&btn)==noErr) { 2.9586 + cimg_std::memmove((void*)(disp->buttons+1),(void*)disp->buttons,512-1); 2.9587 + if (btn==kEventMouseButtonPrimary) disp->button&=~1U; 2.9588 + // See note in kEventMouseDown handler. 2.9589 + if ((disp->lastKeyModifiers & (controlKey | rightControlKey))!=0) 2.9590 + cimg::warn("CImgDisplay::CarbonEventHandler() : Will emulate right click now [Up]"); 2.9591 + if (btn==kEventMouseButtonSecondary || ((disp->lastKeyModifiers & (controlKey | rightControlKey))!=0)) disp->button&=~2U; 2.9592 + if (btn==kEventMouseButtonTertiary) disp->button&=~2U; 2.9593 + } 2.9594 + disp->is_event = true; 2.9595 + MPSignalSemaphore(c.wait_event); 2.9596 + break; 2.9597 + } 2.9598 + } 2.9599 + } 2.9600 + return (result); 2.9601 + } 2.9602 + 2.9603 + static void* _events_thread(void* args) { 2.9604 + (void)args; // Make the compiler happy 2.9605 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9606 + pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED,0); 2.9607 + pthread_setcancelstate(PTHREAD_CANCEL_ENABLE,0); 2.9608 + MPSignalSemaphore(c.sync_event); // Notify the caller that all goes fine 2.9609 + EventRef theEvent; 2.9610 + EventTargetRef theTarget; 2.9611 + OSStatus err; 2.9612 + CbSerializedQuery* query; 2.9613 + theTarget = GetEventDispatcherTarget(); 2.9614 + 2.9615 + // Enter in the main loop 2.9616 + while (true) { 2.9617 + pthread_testcancel(); /* Check if cancelation happens */ 2.9618 + err = ReceiveNextEvent(0,0,kDurationImmediate,true,&theEvent); // Fetch new events 2.9619 + if (err==noErr) { // Received a carbon event, so process it ! 2.9620 + SendEventToEventTarget (theEvent, theTarget); 2.9621 + ReleaseEvent(theEvent); 2.9622 + } else if (err == eventLoopTimedOutErr) { // There is no event to process, so check if there is new messages to process 2.9623 + OSStatus r =MPWaitOnQueue(c.com_queue,(void**)&query,0,0,10*kDurationMillisecond); 2.9624 + if (r!=noErr) continue; //nothing in the queue or an error.., bye 2.9625 + // If we're here, we've something to do now. 2.9626 + if (query) { 2.9627 + switch (query->kind) { 2.9628 + case COM_SETMOUSEPOS : { // change the cursor position 2.9629 + query->success = CGDisplayMoveCursorToPoint(kCGDirectMainDisplay,CGPointMake(query->sender->window_x+query->x,query->sender->window_y+query->y)) 2.9630 + == kCGErrorSuccess; 2.9631 + if (query->success) { 2.9632 + query->sender->mouse_x = query->x; 2.9633 + query->sender->mouse_y = query->y; 2.9634 + } else cimg::warn("CImgDisplay::_events_thread() : CGDisplayMoveCursorToPoint failed."); 2.9635 + } break; 2.9636 + case COM_SETTITLE : { // change the title bar caption 2.9637 + CFStringRef windowTitle = CFStringCreateWithCString(0,query->c,kCFStringEncodingMacRoman); 2.9638 + query->success = SetWindowTitleWithCFString(query->sender->carbonWindow,windowTitle)==noErr; 2.9639 + if (!query->success) 2.9640 + cimg::warn("CImgDisplay::_events_thread() : SetWindowTitleWithCFString failed."); 2.9641 + CFRelease(windowTitle); 2.9642 + } break; 2.9643 + case COM_RESIZEWINDOW : { // Resize a window 2.9644 + SizeWindow(query->sender->carbonWindow,query->x,query->y,query->update); 2.9645 + // If the window has been resized successfully, update display informations 2.9646 + query->sender->window_width = query->x; 2.9647 + query->sender->window_height = query->y; 2.9648 + query->success = true; 2.9649 + } break; 2.9650 + case COM_MOVEWINDOW : { // Move a window 2.9651 + MoveWindow(query->sender->carbonWindow,query->x,query->y,false); 2.9652 + query->sender->window_x = query->x; 2.9653 + query->sender->window_y = query->y; 2.9654 + query->sender->is_moved = false; 2.9655 + query->success = true; 2.9656 + } break; 2.9657 + case COM_SHOWMOUSE : { // Show the mouse 2.9658 + query->success = CGDisplayShowCursor(kCGDirectMainDisplay)==noErr; 2.9659 + if (!query->success) 2.9660 + cimg::warn("CImgDisplay::_events_thread() : CGDisplayShowCursor failed."); 2.9661 + } break; 2.9662 + case COM_HIDEMOUSE : { // Hide the mouse 2.9663 + query->success = CGDisplayHideCursor(kCGDirectMainDisplay)==noErr; 2.9664 + if (!query->success) 2.9665 + cimg::warn("CImgDisplay::_events_thread() : CGDisplayHideCursor failed."); 2.9666 + } break; 2.9667 + case COM_SHOWWINDOW : { // We've to show a window 2.9668 + ShowWindow(query->sender->carbonWindow); 2.9669 + query->success = true; 2.9670 + query->sender->is_closed = false; 2.9671 + } break; 2.9672 + case COM_HIDEWINDOW : { // We've to show a window 2.9673 + HideWindow(query->sender->carbonWindow); 2.9674 + query->sender->is_closed = true; 2.9675 + query->sender->window_x = query->sender->window_y = 0; 2.9676 + query->success = true; 2.9677 + } break; 2.9678 + case COM_RELEASEWINDOW : { // We have to release a given window handle 2.9679 + query->success = true; 2.9680 + CFRelease(query->sender->carbonWindow); 2.9681 + } break; 2.9682 + case COM_CREATEWINDOW : { // We have to create a window 2.9683 + query->success = true; 2.9684 + WindowAttributes windowAttrs; 2.9685 + Rect contentRect; 2.9686 + if (query->createFullScreenWindow) { 2.9687 + // To simulate a "true" full screen, we remove menus and close boxes 2.9688 + windowAttrs = (1L << 9); //Why ? kWindowNoTitleBarAttribute seems to be not defined on 10.3 2.9689 + // Define a full screen bound rect 2.9690 + SetRect(&contentRect,0,0,CGDisplayPixelsWide(kCGDirectMainDisplay),CGDisplayPixelsHigh(kCGDirectMainDisplay)); 2.9691 + } else { // Set the window size 2.9692 + SetRect(&contentRect,0,0,query->sender->width,query->sender->height); // Window will be centered with RepositionWindow. 2.9693 + // Use default attributes 2.9694 + windowAttrs = kWindowStandardDocumentAttributes | kWindowStandardHandlerAttribute | kWindowInWindowMenuAttribute | kWindowLiveResizeAttribute; 2.9695 + } 2.9696 + // Update window position 2.9697 + if (query->createClosedWindow) query->sender->window_x = query->sender->window_y = 0; 2.9698 + else { 2.9699 + query->sender->window_x = contentRect.left; 2.9700 + query->sender->window_y = contentRect.top; 2.9701 + } 2.9702 + // Update window flags 2.9703 + query->sender->window_width = query->sender->width; 2.9704 + query->sender->window_height = query->sender->height; 2.9705 + query->sender->flush(); 2.9706 + // Create the window 2.9707 + if (CreateNewWindow(kDocumentWindowClass,windowAttrs,&contentRect,&query->sender->carbonWindow)!=noErr) { 2.9708 + query->success = false; 2.9709 + cimg::warn("CImgDisplay::_events_thread() : CreateNewWindow() failed."); 2.9710 + } 2.9711 + // Send it to the foreground 2.9712 + if (RepositionWindow(query->sender->carbonWindow,0,kWindowCenterOnMainScreen)!=noErr) query->success = false; 2.9713 + // Show it, if needed 2.9714 + if (!query->createClosedWindow) ShowWindow(query->sender->carbonWindow); 2.9715 + 2.9716 + // Associate a valid event handler 2.9717 + EventTypeSpec eventList[] = { 2.9718 + { kEventClassWindow, kEventWindowClose }, 2.9719 + { kEventClassWindow, kEventWindowResizeStarted }, 2.9720 + { kEventClassWindow, kEventWindowResizeCompleted }, 2.9721 + { kEventClassWindow, kEventWindowDragStarted}, 2.9722 + { kEventClassWindow, kEventWindowDragCompleted }, 2.9723 + { kEventClassWindow, kEventWindowPaint }, 2.9724 + { kEventClassWindow, kEventWindowBoundsChanging }, 2.9725 + { kEventClassWindow, kEventWindowCollapsed }, 2.9726 + { kEventClassWindow, kEventWindowExpanded }, 2.9727 + { kEventClassWindow, kEventWindowZoomed }, 2.9728 + { kEventClassKeyboard, kEventRawKeyDown }, 2.9729 + { kEventClassKeyboard, kEventRawKeyUp }, 2.9730 + { kEventClassKeyboard, kEventRawKeyRepeat }, 2.9731 + { kEventClassKeyboard, kEventRawKeyModifiersChanged }, 2.9732 + { kEventClassMouse, kEventMouseMoved }, 2.9733 + { kEventClassMouse, kEventMouseDown }, 2.9734 + { kEventClassMouse, kEventMouseUp }, 2.9735 + { kEventClassMouse, kEventMouseDragged } 2.9736 + }; 2.9737 + 2.9738 + // Set up the handler 2.9739 + if (InstallWindowEventHandler(query->sender->carbonWindow,NewEventHandlerUPP(CarbonEventHandler),GetEventTypeCount(eventList), 2.9740 + eventList,(void*)query->sender,0)!=noErr) { 2.9741 + query->success = false; 2.9742 + cimg::warn("CImgDisplay::_events_thread() : InstallWindowEventHandler failed."); 2.9743 + } 2.9744 + 2.9745 + // Paint 2.9746 + query->sender->paint(); 2.9747 + } break; 2.9748 + default : 2.9749 + cimg::warn("CImgDisplay::_events_thread() : Received unknow code %d.",query->kind); 2.9750 + } 2.9751 + // Signal that the message has been processed 2.9752 + MPSignalSemaphore(c.sync_event); 2.9753 + } 2.9754 + } 2.9755 + } 2.9756 + // If we are here, the application is now finished 2.9757 + pthread_exit(0); 2.9758 + } 2.9759 + 2.9760 + CImgDisplay& assign() { 2.9761 + if (is_empty()) return *this; 2.9762 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9763 + // Destroy the window associated to the display 2.9764 + _CbFreeAttachedWindow(c); 2.9765 + // Don't destroy the background thread here. 2.9766 + // If you check whether _CbFreeAttachedWindow() returned true, 2.9767 + // - saying that there were no window left on screen - and 2.9768 + // you destroy the background thread here, ReceiveNextEvent won't 2.9769 + // work anymore if you create a new window after. So the 2.9770 + // background thread must be killed (pthread_cancel() + pthread_join()) 2.9771 + // only on the application shutdown. 2.9772 + 2.9773 + // Finalize graphics 2.9774 + _CbFinalizeGraphics(); 2.9775 + 2.9776 + // Do some cleanup 2.9777 + if (data) delete[] data; 2.9778 + if (title) delete[] title; 2.9779 + width = height = normalization = window_width = window_height = 0; 2.9780 + window_x = window_y = 0; 2.9781 + is_fullscreen = false; 2.9782 + is_closed = true; 2.9783 + min = max = 0; 2.9784 + title = 0; 2.9785 + flush(); 2.9786 + if (MPDeleteCriticalRegion(paintCriticalRegion)!=noErr) 2.9787 + throw CImgDisplayException("CImgDisplay()::assign() : MPDeleteCriticalRegion failed."); 2.9788 + return *this; 2.9789 + } 2.9790 + 2.9791 + CImgDisplay& _assign(const unsigned int dimw, const unsigned int dimh, const char *ptitle=0, 2.9792 + const unsigned int normalization_type=3, 2.9793 + const bool fullscreen_flag=false, const bool closed_flag=false) { 2.9794 + cimg::CarbonInfo& c = cimg::CarbonAttr(); 2.9795 + 2.9796 + // Allocate space for window title 2.9797 + const int s = cimg::strlen(ptitle)+1; 2.9798 + char *tmp_title = s?new char[s]:0; 2.9799 + if (s) cimg_std::memcpy(tmp_title,ptitle,s*sizeof(char)); 2.9800 + 2.9801 + // Destroy previous window if existing 2.9802 + if (!is_empty()) assign(); 2.9803 + 2.9804 + // Set display variables 2.9805 + width = cimg::min(dimw,(unsigned int)screen_dimx()); 2.9806 + height = cimg::min(dimh,(unsigned int)screen_dimy()); 2.9807 + normalization = normalization_type<4?normalization_type:3; 2.9808 + is_fullscreen = fullscreen_flag; 2.9809 + is_closed = closed_flag; 2.9810 + lastKeyModifiers = 0; 2.9811 + title = tmp_title; 2.9812 + flush(); 2.9813 + 2.9814 + // Create the paint CR 2.9815 + if (MPCreateCriticalRegion(&paintCriticalRegion) != noErr) 2.9816 + throw CImgDisplayException("CImgDisplay::_assign() : MPCreateCriticalRegion() failed."); 2.9817 + 2.9818 + // Create the thread if it's not already created 2.9819 + if (c.event_thread==0) { 2.9820 + // Background thread does not exists, so create it ! 2.9821 + if (pthread_create(&c.event_thread,0,_events_thread,0)!=0) 2.9822 + throw CImgDisplayException("CImgDisplay::_assign() : pthread_create() failed."); 2.9823 + // Wait for thread initialization 2.9824 + MPWaitOnSemaphore(c.sync_event, kDurationForever); 2.9825 + } 2.9826 + 2.9827 + // Init disp. graphics 2.9828 + data = new unsigned int[width*height]; 2.9829 + _CbInitializeGraphics(); 2.9830 + 2.9831 + // Now ask the thread to create the window 2.9832 + _CbCreateAttachedWindow(c,ptitle,fullscreen_flag,closed_flag); 2.9833 + return *this; 2.9834 + } 2.9835 + 2.9836 +#endif 2.9837 + 2.9838 + }; 2.9839 + 2.9840 + /* 2.9841 + #-------------------------------------- 2.9842 + # 2.9843 + # 2.9844 + # 2.9845 + # Definition of the CImg<T> structure 2.9846 + # 2.9847 + # 2.9848 + # 2.9849 + #-------------------------------------- 2.9850 + */ 2.9851 + 2.9852 + //! Class representing an image (up to 4 dimensions wide), each pixel being of type \c T. 2.9853 + /** 2.9854 + This is the main class of the %CImg Library. It declares and constructs 2.9855 + an image, allows access to its pixel values, and is able to perform various image operations. 2.9856 + 2.9857 + \par Image representation 2.9858 + 2.9859 + A %CImg image is defined as an instance of the container \ref CImg<\c T>, which contains a regular grid of pixels, 2.9860 + each pixel value being of type \c T. The image grid can have up to 4 dimensions : width, height, depth 2.9861 + and number of channels. 2.9862 + Usually, the three first dimensions are used to describe spatial coordinates <tt>(x,y,z)</tt>, while the number of channels 2.9863 + is rather used as a vector-valued dimension (it may describe the R,G,B color channels for instance). 2.9864 + If you need a fifth dimension, you can use image lists \ref CImgList<\c T> rather than simple images \ref CImg<\c T>. 2.9865 + 2.9866 + Thus, the \ref CImg<\c T> class is able to represent volumetric images of vector-valued pixels, 2.9867 + as well as images with less dimensions (1D scalar signal, 2D color images, ...). 2.9868 + Most member functions of the class CImg<\c T> are designed to handle this maximum case of (3+1) dimensions. 2.9869 + 2.9870 + Concerning the pixel value type \c T : 2.9871 + fully supported template types are the basic C++ types : <tt>unsigned char, char, short, unsigned int, int, 2.9872 + unsigned long, long, float, double, ... </tt>. 2.9873 + Typically, fast image display can be done using <tt>CImg<unsigned char></tt> images, 2.9874 + while complex image processing algorithms may be rather coded using <tt>CImg<float></tt> or <tt>CImg<double></tt> 2.9875 + images that have floating-point pixel values. The default value for the template T is \c float. 2.9876 + Using your own template types may be possible. However, you will certainly have to define the complete set 2.9877 + of arithmetic and logical operators for your class. 2.9878 + 2.9879 + \par Image structure 2.9880 + 2.9881 + The \ref CImg<\c T> structure contains \a six fields : 2.9882 + - \ref width defines the number of \a columns of the image (size along the X-axis). 2.9883 + - \ref height defines the number of \a rows of the image (size along the Y-axis). 2.9884 + - \ref depth defines the number of \a slices of the image (size along the Z-axis). 2.9885 + - \ref dim defines the number of \a channels of the image (size along the V-axis). 2.9886 + - \ref data defines a \a pointer to the \a pixel \a data (of type \c T). 2.9887 + - \ref is_shared is a boolean that tells if the memory buffer \ref data is shared with 2.9888 + another image. 2.9889 + 2.9890 + You can access these fields publicly although it is recommended to use the dedicated functions 2.9891 + dimx(), dimy(), dimz(), dimv() and ptr() to do so. 2.9892 + Image dimensions are not limited to a specific range (as long as you got enough available memory). 2.9893 + A value of \e 1 usually means that the corresponding dimension is \a flat. 2.9894 + If one of the dimensions is \e 0, or if the data pointer is null, the image is considered as \e empty. 2.9895 + Empty images should not contain any pixel data and thus, will not be processed by CImg member functions 2.9896 + (a CImgInstanceException will be thrown instead). 2.9897 + Pixel data are stored in memory, in a non interlaced mode (See \ref cimg_storage). 2.9898 + 2.9899 + \par Image declaration and construction 2.9900 + 2.9901 + Declaring an image can be done by using one of the several available constructors. 2.9902 + Here is a list of the most used : 2.9903 + 2.9904 + - Construct images from arbitrary dimensions : 2.9905 + - <tt>CImg<char> img;</tt> declares an empty image. 2.9906 + - <tt>CImg<unsigned char> img(128,128);</tt> declares a 128x128 greyscale image with 2.9907 + \c unsigned \c char pixel values. 2.9908 + - <tt>CImg<double> img(3,3);</tt> declares a 3x3 matrix with \c double coefficients. 2.9909 + - <tt>CImg<unsigned char> img(256,256,1,3);</tt> declares a 256x256x1x3 (color) image 2.9910 + (colors are stored as an image with three channels). 2.9911 + - <tt>CImg<double> img(128,128,128);</tt> declares a 128x128x128 volumetric and greyscale image 2.9912 + (with \c double pixel values). 2.9913 + - <tt>CImg<> img(128,128,128,3);</tt> declares a 128x128x128 volumetric color image 2.9914 + (with \c float pixels, which is the default value of the template parameter \c T). 2.9915 + - \b Note : images pixels are <b>not automatically initialized to 0</b>. You may use the function \ref fill() to 2.9916 + do it, or use the specific constructor taking 5 parameters like this : 2.9917 + <tt>CImg<> img(128,128,128,3,0);</tt> declares a 128x128x128 volumetric color image with all pixel values to 0. 2.9918 + 2.9919 + - Construct images from filenames : 2.9920 + - <tt>CImg<unsigned char> img("image.jpg");</tt> reads a JPEG color image from the file "image.jpg". 2.9921 + - <tt>CImg<float> img("analyze.hdr");</tt> reads a volumetric image (ANALYZE7.5 format) from the file "analyze.hdr". 2.9922 + - \b Note : You need to install <a href="http://www.imagemagick.org">ImageMagick</a> 2.9923 + to be able to read common compressed image formats (JPG,PNG, ...) (See \ref cimg_files_io). 2.9924 + 2.9925 + - Construct images from C-style arrays : 2.9926 + - <tt>CImg<int> img(data_buffer,256,256);</tt> constructs a 256x256 greyscale image from a \c int* buffer 2.9927 + \c data_buffer (of size 256x256=65536). 2.9928 + - <tt>CImg<unsigned char> img(data_buffer,256,256,1,3,false);</tt> constructs a 256x256 color image 2.9929 + from a \c unsigned \c char* buffer \c data_buffer (where R,G,B channels follow each others). 2.9930 + - <tt>CImg<unsigned char> img(data_buffer,256,256,1,3,true);</tt> constructs a 256x256 color image 2.9931 + from a \c unsigned \c char* buffer \c data_buffer (where R,G,B channels are multiplexed). 2.9932 + 2.9933 + The complete list of constructors can be found <a href="#constructors">here</a>. 2.9934 + 2.9935 + \par Most useful functions 2.9936 + 2.9937 + The \ref CImg<\c T> class contains a lot of functions that operates on images. 2.9938 + Some of the most useful are : 2.9939 + 2.9940 + - operator()(), operator[]() : allows to access or write pixel values. 2.9941 + - display() : displays the image in a new window. 2.9942 + **/ 2.9943 + template<typename T> 2.9944 + struct CImg { 2.9945 + 2.9946 + //! Variable representing the width of the instance image (i.e. dimensions along the X-axis). 2.9947 + /** 2.9948 + \remark 2.9949 + - Prefer using the function CImg<T>::dimx() to get information about the width of an image. 2.9950 + - Use function CImg<T>::resize() to set a new width for an image. Setting directly the variable \c width would probably 2.9951 + result in a library crash. 2.9952 + - Empty images have \c width defined to \c 0. 2.9953 + **/ 2.9954 + unsigned int width; 2.9955 + 2.9956 + //! Variable representing the height of the instance image (i.e. dimensions along the Y-axis). 2.9957 + /** 2.9958 + \remark 2.9959 + - Prefer using the function CImg<T>::dimy() to get information about the height of an image. 2.9960 + - Use function CImg<T>::resize() to set a new height for an image. Setting directly the variable \c height would probably 2.9961 + result in a library crash. 2.9962 + - 1D signals have \c height defined to \c 1. 2.9963 + - Empty images have \c height defined to \c 0. 2.9964 + **/ 2.9965 + unsigned int height; 2.9966 + 2.9967 + //! Variable representing the depth of the instance image (i.e. dimensions along the Z-axis). 2.9968 + /** 2.9969 + \remark 2.9970 + - Prefer using the function CImg<T>::dimz() to get information about the depth of an image. 2.9971 + - Use function CImg<T>::resize() to set a new depth for an image. Setting directly the variable \c depth would probably 2.9972 + result in a library crash. 2.9973 + - Classical 2D images have \c depth defined to \c 1. 2.9974 + - Empty images have \c depth defined to \c 0. 2.9975 + **/ 2.9976 + unsigned int depth; 2.9977 + 2.9978 + //! Variable representing the number of channels of the instance image (i.e. dimensions along the V-axis). 2.9979 + /** 2.9980 + \remark 2.9981 + - Prefer using the function CImg<T>::dimv() to get information about the depth of an image. 2.9982 + - Use function CImg<T>::resize() to set a new vector dimension for an image. Setting directly the variable \c dim would probably 2.9983 + result in a library crash. 2.9984 + - Scalar-valued images (one value per pixel) have \c dim defined to \c 1. 2.9985 + - Empty images have \c depth defined to \c 0. 2.9986 + **/ 2.9987 + unsigned int dim; 2.9988 + 2.9989 + //! Variable telling if pixel buffer of the instance image is shared with another one. 2.9990 + bool is_shared; 2.9991 + 2.9992 + //! Pointer to the first pixel of the pixel buffer. 2.9993 + T *data; 2.9994 + 2.9995 + //! Iterator type for CImg<T>. 2.9996 + /** 2.9997 + \remark 2.9998 + - An \p iterator is a <tt>T*</tt> pointer (address of a pixel value in the pixel buffer). 2.9999 + - Iterators are not directly used in %CImg functions, they have been introduced for compatibility with the STL. 2.10000 + **/ 2.10001 + typedef T* iterator; 2.10002 + 2.10003 + //! Const iterator type for CImg<T>. 2.10004 + /** 2.10005 + \remark 2.10006 + - A \p const_iterator is a <tt>const T*</tt> pointer (address of a pixel value in the pixel buffer). 2.10007 + - Iterators are not directly used in %CImg functions, they have been introduced for compatibility with the STL. 2.10008 + **/ 2.10009 + typedef const T* const_iterator; 2.10010 + 2.10011 + //! Get value type 2.10012 + typedef T value_type; 2.10013 + 2.10014 + // Define common T-dependant types. 2.10015 + typedef typename cimg::superset<T,bool>::type Tbool; 2.10016 + typedef typename cimg::superset<T,unsigned char>::type Tuchar; 2.10017 + typedef typename cimg::superset<T,char>::type Tchar; 2.10018 + typedef typename cimg::superset<T,unsigned short>::type Tushort; 2.10019 + typedef typename cimg::superset<T,short>::type Tshort; 2.10020 + typedef typename cimg::superset<T,unsigned int>::type Tuint; 2.10021 + typedef typename cimg::superset<T,int>::type Tint; 2.10022 + typedef typename cimg::superset<T,unsigned long>::type Tulong; 2.10023 + typedef typename cimg::superset<T,long>::type Tlong; 2.10024 + typedef typename cimg::superset<T,float>::type Tfloat; 2.10025 + typedef typename cimg::superset<T,double>::type Tdouble; 2.10026 + typedef typename cimg::last<T,bool>::type boolT; 2.10027 + typedef typename cimg::last<T,unsigned char>::type ucharT; 2.10028 + typedef typename cimg::last<T,char>::type charT; 2.10029 + typedef typename cimg::last<T,unsigned short>::type ushortT; 2.10030 + typedef typename cimg::last<T,short>::type shortT; 2.10031 + typedef typename cimg::last<T,unsigned int>::type uintT; 2.10032 + typedef typename cimg::last<T,int>::type intT; 2.10033 + typedef typename cimg::last<T,unsigned long>::type ulongT; 2.10034 + typedef typename cimg::last<T,long>::type longT; 2.10035 + typedef typename cimg::last<T,float>::type floatT; 2.10036 + typedef typename cimg::last<T,double>::type doubleT; 2.10037 + 2.10038 + //@} 2.10039 + //--------------------------- 2.10040 + // 2.10041 + //! \name Plugins 2.10042 + //@{ 2.10043 + //--------------------------- 2.10044 +#ifdef cimg_plugin 2.10045 +#include cimg_plugin 2.10046 +#endif 2.10047 +#ifdef cimg_plugin1 2.10048 +#include cimg_plugin1 2.10049 +#endif 2.10050 +#ifdef cimg_plugin2 2.10051 +#include cimg_plugin2 2.10052 +#endif 2.10053 +#ifdef cimg_plugin3 2.10054 +#include cimg_plugin3 2.10055 +#endif 2.10056 +#ifdef cimg_plugin4 2.10057 +#include cimg_plugin4 2.10058 +#endif 2.10059 +#ifdef cimg_plugin5 2.10060 +#include cimg_plugin5 2.10061 +#endif 2.10062 +#ifdef cimg_plugin6 2.10063 +#include cimg_plugin6 2.10064 +#endif 2.10065 +#ifdef cimg_plugin7 2.10066 +#include cimg_plugin7 2.10067 +#endif 2.10068 +#ifdef cimg_plugin8 2.10069 +#include cimg_plugin8 2.10070 +#endif 2.10071 +#ifndef cimg_plugin_greycstoration 2.10072 +#define cimg_plugin_greycstoration_count 2.10073 +#endif 2.10074 +#ifndef cimg_plugin_greycstoration_lock 2.10075 +#define cimg_plugin_greycstoration_lock 2.10076 +#endif 2.10077 +#ifndef cimg_plugin_greycstoration_unlock 2.10078 +#define cimg_plugin_greycstoration_unlock 2.10079 +#endif 2.10080 + 2.10081 + //@} 2.10082 + 2.10083 + //-------------------------------------- 2.10084 + // 2.10085 + //! \name Constructors-Destructor-Copy 2.10086 + //@{ 2.10087 + //-------------------------------------- 2.10088 + 2.10089 + //! Destructor. 2.10090 + /** 2.10091 + The destructor destroys the instance image. 2.10092 + \remark 2.10093 + - Destructing an empty or shared image does nothing. 2.10094 + - Otherwise, all memory used to store the pixel data of the instance image is freed. 2.10095 + - When destroying a non-shared image, be sure that every shared instances of the same image are 2.10096 + also destroyed to avoid further access to desallocated memory buffers. 2.10097 + **/ 2.10098 + ~CImg() { 2.10099 + if (data && !is_shared) delete[] data; 2.10100 + } 2.10101 + 2.10102 + //! Default constructor. 2.10103 + /** 2.10104 + The default constructor creates an empty instance image. 2.10105 + \remark 2.10106 + - An empty image does not contain any data and has all of its dimensions \ref width, \ref height, \ref depth, \ref dim 2.10107 + set to 0 as well as its pointer to the pixel buffer \ref data. 2.10108 + - An empty image is non-shared. 2.10109 + **/ 2.10110 + CImg(): 2.10111 + width(0),height(0),depth(0),dim(0),is_shared(false),data(0) {} 2.10112 + 2.10113 + //! Constructs a new image with given size (\p dx,\p dy,\p dz,\p dv). 2.10114 + /** 2.10115 + This constructors create an instance image of size (\p dx,\p dy,\p dz,\p dv) with pixels of type \p T. 2.10116 + \param dx Desired size along the X-axis, i.e. the \ref width of the image. 2.10117 + \param dy Desired size along the Y-axis, i.e. the \ref height of the image. 2.10118 + \param dz Desired size along the Z-axis, i.e. the \ref depth of the image. 2.10119 + \param dv Desired size along the V-axis, i.e. the number of image channels \ref dim. 2.10120 + \remark 2.10121 + - If one of the input dimension \p dx,\p dy,\p dz or \p dv is set to 0, the created image is empty 2.10122 + and all has its dimensions set to 0. No memory for pixel data is then allocated. 2.10123 + - This constructor creates only non-shared images. 2.10124 + - Image pixels allocated by this constructor are \b not \b initialized. 2.10125 + Use the constructor CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T) 2.10126 + to get an image of desired size with pixels set to a particular value. 2.10127 + **/ 2.10128 + explicit CImg(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1): 2.10129 + is_shared(false) { 2.10130 + const unsigned long siz = dx*dy*dz*dv; 2.10131 + if (siz) { width = dx; height = dy; depth = dz; dim = dv; data = new T[siz]; } 2.10132 + else { width = height = depth = dim = 0; data = 0; } 2.10133 + } 2.10134 + 2.10135 + //! Construct an image with given size (\p dx,\p dy,\p dz,\p dv) and with pixel having a default value \p val. 2.10136 + /** 2.10137 + This constructor creates an instance image of size (\p dx,\p dy,\p dz,\p dv) with pixels of type \p T and sets all pixel 2.10138 + values of the created instance image to \p val. 2.10139 + \param dx Desired size along the X-axis, i.e. the \ref width of the image. 2.10140 + \param dy Desired size along the Y-axis, i.e. the \ref height of the image. 2.10141 + \param dz Desired size along the Z-axis, i.e. the \ref depth of the image. 2.10142 + \param dv Desired size along the V-axis, i.e. the number of image channels \p dim. 2.10143 + \param val Default value for image pixels. 2.10144 + \remark 2.10145 + - This constructor has the same properties as CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int). 2.10146 + **/ 2.10147 + CImg(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val): 2.10148 + is_shared(false) { 2.10149 + const unsigned long siz = dx*dy*dz*dv; 2.10150 + if (siz) { width = dx; height = dy; depth = dz; dim = dv; data = new T[siz]; fill(val); } 2.10151 + else { width = height = depth = dim = 0; data = 0; } 2.10152 + } 2.10153 + 2.10154 + //! Construct an image with given size (\p dx,\p dy,\p dz,\p dv) and with specified pixel values (int version). 2.10155 + CImg(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, 2.10156 + const int val0, const int val1, ...):width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10157 +#define _CImg_stdarg(img,a0,a1,N,t) { \ 2.10158 + unsigned int _siz = (unsigned int)N; \ 2.10159 + if (_siz--) { \ 2.10160 + va_list ap; \ 2.10161 + va_start(ap,a1); \ 2.10162 + T *ptrd = (img).data; \ 2.10163 + *(ptrd++) = (T)a0; \ 2.10164 + if (_siz--) { \ 2.10165 + *(ptrd++) = (T)a1; \ 2.10166 + for (; _siz; --_siz) *(ptrd++) = (T)va_arg(ap,t); \ 2.10167 + } \ 2.10168 + va_end(ap); \ 2.10169 + }} 2.10170 + assign(dx,dy,dz,dv); 2.10171 + _CImg_stdarg(*this,val0,val1,dx*dy*dz*dv,int); 2.10172 + } 2.10173 + 2.10174 + //! Construct an image with given size (\p dx,\p dy,\p dz,\p dv) and with specified pixel values (double version). 2.10175 + CImg(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, 2.10176 + const double val0, const double val1, ...):width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10177 + assign(dx,dy,dz,dv); 2.10178 + _CImg_stdarg(*this,val0,val1,dx*dy*dz*dv,double); 2.10179 + } 2.10180 + 2.10181 + //! Construct an image with given size and with specified values given in a string. 2.10182 + CImg(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, 2.10183 + const char *const values, const bool repeat_pattern):is_shared(false) { 2.10184 + const unsigned long siz = dx*dy*dz*dv; 2.10185 + if (siz) { width = dx; height = dy; depth = dz; dim = dv; data = new T[siz]; fill(values,repeat_pattern); } 2.10186 + else { width = height = depth = dim = 0; data = 0; } 2.10187 + } 2.10188 + 2.10189 + //! Construct an image from a raw memory buffer. 2.10190 + /** 2.10191 + This constructor creates an instance image of size (\p dx,\p dy,\p dz,\p dv) and fill its pixel buffer by 2.10192 + copying data values from the input raw pixel buffer \p data_buffer. 2.10193 + **/ 2.10194 + template<typename t> 2.10195 + CImg(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, 2.10196 + const unsigned int dz=1, const unsigned int dv=1, const bool shared=false):is_shared(false) { 2.10197 + if (shared) 2.10198 + throw CImgArgumentException("CImg<%s>::CImg() : Cannot construct a shared instance image from a (%s*) buffer " 2.10199 + "(different pixel types).", 2.10200 + pixel_type(),CImg<t>::pixel_type()); 2.10201 + const unsigned long siz = dx*dy*dz*dv; 2.10202 + if (data_buffer && siz) { 2.10203 + width = dx; height = dy; depth = dz; dim = dv; data = new T[siz]; 2.10204 + const t *ptrs = data_buffer + siz; cimg_for(*this,ptrd,T) *ptrd = (T)*(--ptrs); 2.10205 + } else { width = height = depth = dim = 0; data = 0; } 2.10206 + } 2.10207 + 2.10208 +#ifndef cimg_use_visualcpp6 2.10209 + CImg(const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, 2.10210 + const unsigned int dz=1, const unsigned int dv=1, const bool shared=false) 2.10211 +#else 2.10212 + CImg(const T *const data_buffer, const unsigned int dx, const unsigned int dy, 2.10213 + const unsigned int dz, const unsigned int dv, const bool shared) 2.10214 +#endif 2.10215 + { 2.10216 + const unsigned long siz = dx*dy*dz*dv; 2.10217 + if (data_buffer && siz) { 2.10218 + width = dx; height = dy; depth = dz; dim = dv; is_shared = shared; 2.10219 + if (is_shared) data = const_cast<T*>(data_buffer); 2.10220 + else { data = new T[siz]; cimg_std::memcpy(data,data_buffer,siz*sizeof(T)); } 2.10221 + } else { width = height = depth = dim = 0; is_shared = false; data = 0; } 2.10222 + } 2.10223 + 2.10224 + //! Default copy constructor. 2.10225 + /** 2.10226 + The default copy constructor creates a new instance image having same dimensions 2.10227 + (\ref width, \ref height, \ref depth, \ref dim) and same pixel values as the input image \p img. 2.10228 + \param img The input image to copy. 2.10229 + \remark 2.10230 + - If the input image \p img is non-shared or have a different template type \p t != \p T, 2.10231 + the default copy constructor allocates a new pixel buffer and copy the pixel data 2.10232 + of \p img into it. In this case, the pointers \ref data to the pixel buffers of the two images are different 2.10233 + and the resulting instance image is non-shared. 2.10234 + - If the input image \p img is shared and has the same template type \p t == \p T, 2.10235 + the default copy constructor does not allocate a new pixel buffer and the resulting instance image 2.10236 + shares its pixel buffer with the input image \p img, which means that modifying pixels of \p img also modifies 2.10237 + the created instance image. 2.10238 + - Copying an image having a different template type \p t != \p T performs a crude static cast conversion of each pixel value from 2.10239 + type \p t to type \p T. 2.10240 + - Copying an image having the same template type \p t == \p T is significantly faster. 2.10241 + **/ 2.10242 + template<typename t> 2.10243 + CImg(const CImg<t>& img):is_shared(false) { 2.10244 + const unsigned int siz = img.size(); 2.10245 + if (img.data && siz) { 2.10246 + width = img.width; height = img.height; depth = img.depth; dim = img.dim; data = new T[siz]; 2.10247 + const t *ptrs = img.data + siz; cimg_for(*this,ptrd,T) *ptrd = (T)*(--ptrs); 2.10248 + } else { width = height = depth = dim = 0; data = 0; } 2.10249 + } 2.10250 + 2.10251 + CImg(const CImg<T>& img) { 2.10252 + const unsigned int siz = img.size(); 2.10253 + if (img.data && siz) { 2.10254 + width = img.width; height = img.height; depth = img.depth; dim = img.dim; is_shared = img.is_shared; 2.10255 + if (is_shared) data = const_cast<T*>(img.data); 2.10256 + else { data = new T[siz]; cimg_std::memcpy(data,img.data,siz*sizeof(T)); } 2.10257 + } else { width = height = depth = dim = 0; is_shared = false; data = 0; } 2.10258 + } 2.10259 + 2.10260 + //! Advanced copy constructor. 2.10261 + /** 2.10262 + The advanced copy constructor - as the default constructor CImg(const CImg< t >&) - creates a new instance image having same dimensions 2.10263 + \ref width, \ref height, \ref depth, \ref dim and same pixel values as the input image \p img. 2.10264 + But it also decides if the created instance image shares its memory with the input image \p img (if the input parameter 2.10265 + \p shared is set to \p true) or not (if the input parameter \p shared is set to \p false). 2.10266 + \param img The input image to copy. 2.10267 + \param shared Boolean flag that decides if the copy is shared on non-shared. 2.10268 + \remark 2.10269 + - It is not possible to create a shared copy if the input image \p img is empty or has a different pixel type \p t != \p T. 2.10270 + - If a non-shared copy of the input image \p img is created, a new memory buffer is allocated for pixel data. 2.10271 + - If a shared copy of the input image \p img is created, no extra memory is allocated and the pixel buffer of the instance 2.10272 + image is the same as the one used by the input image \p img. 2.10273 + **/ 2.10274 + template<typename t> 2.10275 + CImg(const CImg<t>& img, const bool shared):is_shared(false) { 2.10276 + if (shared) 2.10277 + throw CImgArgumentException("CImg<%s>::CImg() : Cannot construct a shared instance image from a CImg<%s> instance " 2.10278 + "(different pixel types).", 2.10279 + pixel_type(),CImg<t>::pixel_type()); 2.10280 + const unsigned int siz = img.size(); 2.10281 + if (img.data && siz) { 2.10282 + width = img.width; height = img.height; depth = img.depth; dim = img.dim; data = new T[siz]; 2.10283 + const t *ptrs = img.data + siz; cimg_for(*this,ptrd,T) *ptrd = (T)*(--ptrs); 2.10284 + } else { width = height = depth = dim = 0; data = 0; } 2.10285 + } 2.10286 + 2.10287 + CImg(const CImg<T>& img, const bool shared) { 2.10288 + const unsigned int siz = img.size(); 2.10289 + if (img.data && siz) { 2.10290 + width = img.width; height = img.height; depth = img.depth; dim = img.dim; is_shared = shared; 2.10291 + if (is_shared) data = const_cast<T*>(img.data); 2.10292 + else { data = new T[siz]; cimg_std::memcpy(data,img.data,siz*sizeof(T)); } 2.10293 + } else { width = height = depth = dim = 0; is_shared = false; data = 0; } 2.10294 + } 2.10295 + 2.10296 + //! Construct an image using dimensions of another image 2.10297 + template<typename t> 2.10298 + CImg(const CImg<t>& img, const char *const dimensions):width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10299 + assign(img,dimensions); 2.10300 + } 2.10301 + 2.10302 + //! Construct an image using dimensions of another image, and fill it with a default value 2.10303 + template<typename t> 2.10304 + CImg(const CImg<t>& img, const char *const dimensions, const T val): 2.10305 + width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10306 + assign(img,dimensions).fill(val); 2.10307 + } 2.10308 + 2.10309 + //! Construct an image from an image file. 2.10310 + /** 2.10311 + This constructor creates an instance image by reading it from a file. 2.10312 + \param filename Filename of the image file. 2.10313 + \remark 2.10314 + - The image format is deduced from the filename only by looking for the filename extension i.e. without 2.10315 + analyzing the file itself. 2.10316 + - Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. 2.10317 + More informations on this topic can be found in cimg_files_io. 2.10318 + - If the filename is not found, a CImgIOException is thrown by this constructor. 2.10319 + **/ 2.10320 + CImg(const char *const filename):width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10321 + assign(filename); 2.10322 + } 2.10323 + 2.10324 + //! Construct an image from the content of a CImgDisplay instance. 2.10325 + CImg(const CImgDisplay &disp):width(0),height(0),depth(0),dim(0),is_shared(false),data(0) { 2.10326 + disp.snapshot(*this); 2.10327 + } 2.10328 + 2.10329 + //! In-place version of the default constructor/destructor. 2.10330 + /** 2.10331 + This function replaces the instance image by an empty image. 2.10332 + \remark 2.10333 + - Memory used by the previous content of the instance image is freed if necessary. 2.10334 + - If the instance image was initially shared, it is replaced by a (non-shared) empty image. 2.10335 + - This function is useful to free memory used by an image that is not of use, but which 2.10336 + has been created in the current code scope (i.e. not destroyed yet). 2.10337 + **/ 2.10338 + CImg<T>& assign() { 2.10339 + if (data && !is_shared) delete[] data; 2.10340 + width = height = depth = dim = 0; is_shared = false; data = 0; 2.10341 + return *this; 2.10342 + } 2.10343 + 2.10344 + //! In-place version of the default constructor. 2.10345 + /** 2.10346 + This function is strictly equivalent to \ref assign() and has been 2.10347 + introduced for having a STL-compliant function name. 2.10348 + **/ 2.10349 + CImg<T>& clear() { 2.10350 + return assign(); 2.10351 + } 2.10352 + 2.10353 + //! In-place version of the previous constructor. 2.10354 + /** 2.10355 + This function replaces the instance image by a new image of size (\p dx,\p dy,\p dz,\p dv) with pixels of type \p T. 2.10356 + \param dx Desired size along the X-axis, i.e. the \ref width of the image. 2.10357 + \param dy Desired size along the Y-axis, i.e. the \ref height of the image. 2.10358 + \param dz Desired size along the Z-axis, i.e. the \ref depth of the image. 2.10359 + \param dv Desired size along the V-axis, i.e. the number of image channels \p dim. 2.10360 + - If one of the input dimension \p dx,\p dy,\p dz or \p dv is set to 0, the instance image becomes empty 2.10361 + and all has its dimensions set to 0. No memory for pixel data is then allocated. 2.10362 + - Memory buffer used to store previous pixel values is freed if necessary. 2.10363 + - If the instance image is shared, this constructor actually does nothing more than verifying 2.10364 + that new and old image dimensions fit. 2.10365 + - Image pixels allocated by this function are \b not \b initialized. 2.10366 + Use the function assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T) 2.10367 + to assign an image of desired size with pixels set to a particular value. 2.10368 + **/ 2.10369 + CImg<T>& assign(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1) { 2.10370 + const unsigned long siz = dx*dy*dz*dv; 2.10371 + if (!siz) return assign(); 2.10372 + const unsigned long curr_siz = size(); 2.10373 + if (siz!=curr_siz) { 2.10374 + if (is_shared) 2.10375 + throw CImgArgumentException("CImg<%s>::assign() : Cannot assign image (%u,%u,%u,%u) to shared instance image (%u,%u,%u,%u,%p).", 2.10376 + pixel_type(),dx,dy,dz,dv,width,height,depth,dim,data); 2.10377 + else { if (data) delete[] data; data = new T[siz]; } 2.10378 + } 2.10379 + width = dx; height = dy; depth = dz; dim = dv; 2.10380 + return *this; 2.10381 + } 2.10382 + 2.10383 + //! In-place version of the previous constructor. 2.10384 + /** 2.10385 + This function replaces the instance image by a new image of size (\p dx,\p dy,\p dz,\p dv) with pixels of type \p T 2.10386 + and sets all pixel values of the instance image to \p val. 2.10387 + \param dx Desired size along the X-axis, i.e. the \ref width of the image. 2.10388 + \param dy Desired size along the Y-axis, i.e. the \ref height of the image. 2.10389 + \param dz Desired size along the Z-axis, i.e. the \ref depth of the image. 2.10390 + \param dv Desired size along the V-axis, i.e. the number of image channels \p dim. 2.10391 + \param val Default value for image pixels. 2.10392 + \remark 2.10393 + - This function has the same properties as assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int). 2.10394 + **/ 2.10395 + CImg<T>& assign(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val) { 2.10396 + return assign(dx,dy,dz,dv).fill(val); 2.10397 + } 2.10398 + 2.10399 + //! In-place version of the previous constructor. 2.10400 + CImg<T>& assign(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, 2.10401 + const int val0, const int val1, ...) { 2.10402 + assign(dx,dy,dz,dv); 2.10403 + _CImg_stdarg(*this,val0,val1,dx*dy*dz*dv,int); 2.10404 + return *this; 2.10405 + } 2.10406 + 2.10407 + //! In-place version of the previous constructor. 2.10408 + CImg<T>& assign(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, 2.10409 + const double val0, const double val1, ...) { 2.10410 + assign(dx,dy,dz,dv); 2.10411 + _CImg_stdarg(*this,val0,val1,dx*dy*dz*dv,double); 2.10412 + return *this; 2.10413 + } 2.10414 + 2.10415 + //! In-place version of the previous constructor. 2.10416 + template<typename t> 2.10417 + CImg<T>& assign(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, 2.10418 + const unsigned int dz=1, const unsigned int dv=1) { 2.10419 + const unsigned long siz = dx*dy*dz*dv; 2.10420 + if (!data_buffer || !siz) return assign(); 2.10421 + assign(dx,dy,dz,dv); 2.10422 + const t *ptrs = data_buffer + siz; cimg_for(*this,ptrd,T) *ptrd = (T)*(--ptrs); 2.10423 + return *this; 2.10424 + } 2.10425 + 2.10426 +#ifndef cimg_use_visualcpp6 2.10427 + CImg<T>& assign(const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, 2.10428 + const unsigned int dz=1, const unsigned int dv=1) 2.10429 +#else 2.10430 + CImg<T>& assign(const T *const data_buffer, const unsigned int dx, const unsigned int dy, 2.10431 + const unsigned int dz, const unsigned int dv) 2.10432 +#endif 2.10433 + { 2.10434 + const unsigned long siz = dx*dy*dz*dv; 2.10435 + if (!data_buffer || !siz) return assign(); 2.10436 + const unsigned long curr_siz = size(); 2.10437 + if (data_buffer==data && siz==curr_siz) return assign(dx,dy,dz,dv); 2.10438 + if (is_shared || data_buffer+siz<data || data_buffer>=data+size()) { 2.10439 + assign(dx,dy,dz,dv); 2.10440 + if (is_shared) cimg_std::memmove(data,data_buffer,siz*sizeof(T)); 2.10441 + else cimg_std::memcpy(data,data_buffer,siz*sizeof(T)); 2.10442 + } else { 2.10443 + T *new_data = new T[siz]; 2.10444 + cimg_std::memcpy(new_data,data_buffer,siz*sizeof(T)); 2.10445 + delete[] data; data = new_data; width = dx; height = dy; depth = dz; dim = dv; 2.10446 + } 2.10447 + return *this; 2.10448 + } 2.10449 + 2.10450 + //! In-place version of the previous constructor, allowing to force the shared state of the instance image. 2.10451 + template<typename t> 2.10452 + CImg<T>& assign(const t *const data_buffer, const unsigned int dx, const unsigned int dy, 2.10453 + const unsigned int dz, const unsigned int dv, const bool shared) { 2.10454 + if (shared) 2.10455 + throw CImgArgumentException("CImg<%s>::assign() : Cannot assign buffer (%s*) to shared instance image (%u,%u,%u,%u,%p)" 2.10456 + "(different pixel types).", 2.10457 + pixel_type(),CImg<t>::pixel_type(),width,height,depth,dim,data); 2.10458 + return assign(data_buffer,dx,dy,dz,dv); 2.10459 + } 2.10460 + 2.10461 + CImg<T>& assign(const T *const data_buffer, const unsigned int dx, const unsigned int dy, 2.10462 + const unsigned int dz, const unsigned int dv, const bool shared) { 2.10463 + const unsigned long siz = dx*dy*dz*dv; 2.10464 + if (!data_buffer || !siz) return assign(); 2.10465 + if (!shared) { if (is_shared) assign(); assign(data_buffer,dx,dy,dz,dv); } 2.10466 + else { 2.10467 + if (!is_shared) { 2.10468 + if (data_buffer+siz<data || data_buffer>=data+size()) assign(); 2.10469 + else cimg::warn("CImg<%s>::assign() : Shared instance image has overlapping memory !", 2.10470 + pixel_type()); 2.10471 + } 2.10472 + width = dx; height = dy; depth = dz; dim = dv; is_shared = true; 2.10473 + data = const_cast<T*>(data_buffer); 2.10474 + } 2.10475 + return *this; 2.10476 + } 2.10477 + 2.10478 + //! In-place version of the default copy constructor. 2.10479 + /** 2.10480 + This function assigns a copy of the input image \p img to the current instance image. 2.10481 + \param img The input image to copy. 2.10482 + \remark 2.10483 + - If the instance image is not shared, the content of the input image \p img is copied into a new buffer 2.10484 + becoming the new pixel buffer of the instance image, while the old pixel buffer is freed if necessary. 2.10485 + - If the instance image is shared, the content of the input image \p img is copied into the current (shared) pixel buffer 2.10486 + of the instance image, modifying then the image referenced by the shared instance image. The instance image still remains shared. 2.10487 + **/ 2.10488 + template<typename t> 2.10489 + CImg<T>& assign(const CImg<t>& img) { 2.10490 + return assign(img.data,img.width,img.height,img.depth,img.dim); 2.10491 + } 2.10492 + 2.10493 + //! In-place version of the advanced constructor. 2.10494 + /** 2.10495 + This function - as the simpler function assign(const CImg< t >&) - assigns a copy of the input image \p img to the 2.10496 + current instance image. But it also decides if the copy is shared (if the input parameter \p shared is set to \c true) 2.10497 + or non-shared (if the input parameter \p shared is set to \c false). 2.10498 + \param img The input image to copy. 2.10499 + \param shared Boolean flag that decides if the copy is shared or non-shared. 2.10500 + \remark 2.10501 + - It is not possible to assign a shared copy if the input image \p img is empty or has a different pixel type \p t != \p T. 2.10502 + - If a non-shared copy of the input image \p img is assigned, a new memory buffer is allocated for pixel data. 2.10503 + - If a shared copy of the input image \p img is assigned, no extra memory is allocated and the pixel buffer of the instance 2.10504 + image is the same as the one used by the input image \p img. 2.10505 + **/ 2.10506 + template<typename t> 2.10507 + CImg<T>& assign(const CImg<t>& img, const bool shared) { 2.10508 + return assign(img.data,img.width,img.height,img.depth,img.dim,shared); 2.10509 + } 2.10510 + 2.10511 + //! In-place version of the previous constructor. 2.10512 + template<typename t> 2.10513 + CImg<T>& assign(const CImg<t>& img, const char *const dimensions) { 2.10514 + if (dimensions) { 2.10515 + unsigned int siz[4] = { 0,1,1,1 }; 2.10516 + const char *s = dimensions; 2.10517 + char tmp[256] = { 0 }, c = 0; 2.10518 + int val = 0; 2.10519 + for (unsigned int k=0; k<4; ++k) { 2.10520 + const int err = cimg_std::sscanf(s,"%[-0-9]%c",tmp,&c); 2.10521 + if (err>=1) { 2.10522 + const int err = cimg_std::sscanf(s,"%d",&val); 2.10523 + if (err==1) { 2.10524 + int val2 = val<0?-val:(c=='%'?val:-1); 2.10525 + if (val2>=0) { 2.10526 + val = (int)((k==0?img.width:(k==1?img.height:(k==2?img.depth:img.dim)))*val2/100); 2.10527 + if (c!='%' && !val) val = 1; 2.10528 + } 2.10529 + siz[k] = val; 2.10530 + } 2.10531 + s+=cimg::strlen(tmp); 2.10532 + if (c=='%') ++s; 2.10533 + } 2.10534 + if (!err) { 2.10535 + if (!cimg::strncasecmp(s,"x",1)) { ++s; siz[k] = img.width; } 2.10536 + else if (!cimg::strncasecmp(s,"y",1)) { ++s; siz[k] = img.height; } 2.10537 + else if (!cimg::strncasecmp(s,"z",1)) { ++s; siz[k] = img.depth; } 2.10538 + else if (!cimg::strncasecmp(s,"v",1)) { ++s; siz[k] = img.dim; } 2.10539 + else if (!cimg::strncasecmp(s,"dx",2)) { s+=2; siz[k] = img.width; } 2.10540 + else if (!cimg::strncasecmp(s,"dy",2)) { s+=2; siz[k] = img.height; } 2.10541 + else if (!cimg::strncasecmp(s,"dz",2)) { s+=2; siz[k] = img.depth; } 2.10542 + else if (!cimg::strncasecmp(s,"dv",2)) { s+=2; siz[k] = img.dim; } 2.10543 + else if (!cimg::strncasecmp(s,"dimx",4)) { s+=4; siz[k] = img.width; } 2.10544 + else if (!cimg::strncasecmp(s,"dimy",4)) { s+=4; siz[k] = img.height; } 2.10545 + else if (!cimg::strncasecmp(s,"dimz",4)) { s+=4; siz[k] = img.depth; } 2.10546 + else if (!cimg::strncasecmp(s,"dimv",4)) { s+=4; siz[k] = img.dim; } 2.10547 + else if (!cimg::strncasecmp(s,"width",5)) { s+=5; siz[k] = img.width; } 2.10548 + else if (!cimg::strncasecmp(s,"height",6)) { s+=6; siz[k] = img.height; } 2.10549 + else if (!cimg::strncasecmp(s,"depth",5)) { s+=5; siz[k] = img.depth; } 2.10550 + else if (!cimg::strncasecmp(s,"dim",3)) { s+=3; siz[k] = img.dim; } 2.10551 + else { ++s; --k; } 2.10552 + } 2.10553 + } 2.10554 + return assign(siz[0],siz[1],siz[2],siz[3]); 2.10555 + } 2.10556 + return assign(); 2.10557 + } 2.10558 + 2.10559 + //! In-place version of the previous constructor. 2.10560 + template<typename t> 2.10561 + CImg<T>& assign(const CImg<t>& img, const char *const dimensions, const T val) { 2.10562 + return assign(img,dimensions).fill(val); 2.10563 + } 2.10564 + 2.10565 + //! In-place version of the previous constructor. 2.10566 + /** 2.10567 + This function replaces the instance image by the one that have been read from the given file. 2.10568 + \param filename Filename of the image file. 2.10569 + - The image format is deduced from the filename only by looking for the filename extension i.e. without 2.10570 + analyzing the file itself. 2.10571 + - Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. 2.10572 + More informations on this topic can be found in cimg_files_io. 2.10573 + - If the filename is not found, a CImgIOException is thrown by this constructor. 2.10574 + **/ 2.10575 + CImg<T>& assign(const char *const filename) { 2.10576 + return load(filename); 2.10577 + } 2.10578 + 2.10579 + //! In-place version of the previous constructor. 2.10580 + CImg<T>& assign(const CImgDisplay &disp) { 2.10581 + disp.snapshot(*this); 2.10582 + return *this; 2.10583 + } 2.10584 + 2.10585 + //! Transfer the content of the instance image into another one in a way that memory copies are avoided if possible. 2.10586 + /** 2.10587 + The instance image is always empty after a call to this function. 2.10588 + **/ 2.10589 + template<typename t> 2.10590 + CImg<t>& transfer_to(CImg<t>& img) { 2.10591 + img.assign(*this); 2.10592 + assign(); 2.10593 + return img; 2.10594 + } 2.10595 + 2.10596 + CImg<T>& transfer_to(CImg<T>& img) { 2.10597 + if (is_shared || img.is_shared) { img.assign(*this); assign(); } else { img.assign(); swap(img); } 2.10598 + return img; 2.10599 + } 2.10600 + 2.10601 + //! Swap all fields of two images. Use with care ! 2.10602 + CImg<T>& swap(CImg<T>& img) { 2.10603 + cimg::swap(width,img.width); 2.10604 + cimg::swap(height,img.height); 2.10605 + cimg::swap(depth,img.depth); 2.10606 + cimg::swap(dim,img.dim); 2.10607 + cimg::swap(data,img.data); 2.10608 + cimg::swap(is_shared,img.is_shared); 2.10609 + return img; 2.10610 + } 2.10611 + 2.10612 + //@} 2.10613 + //------------------------------------- 2.10614 + // 2.10615 + //! \name Image Informations 2.10616 + //@{ 2.10617 + //------------------------------------- 2.10618 + 2.10619 + //! Return the type of the pixel values. 2.10620 + /** 2.10621 + \return a string describing the type of the image pixels (template parameter \p T). 2.10622 + - The string returned may contains spaces (<tt>"unsigned char"</tt>). 2.10623 + - If the template parameter T does not correspond to a registered type, the string <tt>"unknown"</tt> is returned. 2.10624 + **/ 2.10625 + static const char* pixel_type() { 2.10626 + return cimg::type<T>::string(); 2.10627 + } 2.10628 + 2.10629 + //! Return the total number of pixel values in an image. 2.10630 + /** 2.10631 + - Equivalent to : dimx() * dimy() * dimz() * dimv(). 2.10632 + 2.10633 + \par example: 2.10634 + \code 2.10635 + CImg<> img(100,100,1,3); 2.10636 + if (img.size()==100*100*3) std::fprintf(stderr,"This statement is true"); 2.10637 + \endcode 2.10638 + **/ 2.10639 + unsigned long size() const { 2.10640 + return width*height*depth*dim; 2.10641 + } 2.10642 + 2.10643 + //! Return the number of columns of the instance image (size along the X-axis, i.e image width). 2.10644 + int dimx() const { 2.10645 + return (int)width; 2.10646 + } 2.10647 + 2.10648 + //! Return the number of rows of the instance image (size along the Y-axis, i.e image height). 2.10649 + int dimy() const { 2.10650 + return (int)height; 2.10651 + } 2.10652 + 2.10653 + //! Return the number of slices of the instance image (size along the Z-axis). 2.10654 + int dimz() const { 2.10655 + return (int)depth; 2.10656 + } 2.10657 + 2.10658 + //! Return the number of vector channels of the instance image (size along the V-axis). 2.10659 + int dimv() const { 2.10660 + return (int)dim; 2.10661 + } 2.10662 + 2.10663 + //! Return \c true if image (*this) has the specified width. 2.10664 + bool is_sameX(const unsigned int dx) const { 2.10665 + return (width==dx); 2.10666 + } 2.10667 + 2.10668 + //! Return \c true if images \c (*this) and \c img have same width. 2.10669 + template<typename t> 2.10670 + bool is_sameX(const CImg<t>& img) const { 2.10671 + return is_sameX(img.width); 2.10672 + } 2.10673 + 2.10674 + //! Return \c true if images \c (*this) and the display \c disp have same width. 2.10675 + bool is_sameX(const CImgDisplay& disp) const { 2.10676 + return is_sameX(disp.width); 2.10677 + } 2.10678 + 2.10679 + //! Return \c true if image (*this) has the specified height. 2.10680 + bool is_sameY(const unsigned int dy) const { 2.10681 + return (height==dy); 2.10682 + } 2.10683 + 2.10684 + //! Return \c true if images \c (*this) and \c img have same height. 2.10685 + template<typename t> 2.10686 + bool is_sameY(const CImg<t>& img) const { 2.10687 + return is_sameY(img.height); 2.10688 + } 2.10689 + 2.10690 + //! Return \c true if images \c (*this) and the display \c disp have same height. 2.10691 + bool is_sameY(const CImgDisplay& disp) const { 2.10692 + return is_sameY(disp.height); 2.10693 + } 2.10694 + 2.10695 + //! Return \c true if image (*this) has the specified depth. 2.10696 + bool is_sameZ(const unsigned int dz) const { 2.10697 + return (depth==dz); 2.10698 + } 2.10699 + 2.10700 + //! Return \c true if images \c (*this) and \c img have same depth. 2.10701 + template<typename t> 2.10702 + bool is_sameZ(const CImg<t>& img) const { 2.10703 + return is_sameZ(img.depth); 2.10704 + } 2.10705 + 2.10706 + //! Return \c true if image (*this) has the specified number of channels. 2.10707 + bool is_sameV(const unsigned int dv) const { 2.10708 + return (dim==dv); 2.10709 + } 2.10710 + 2.10711 + //! Return \c true if images \c (*this) and \c img have same dim. 2.10712 + template<typename t> 2.10713 + bool is_sameV(const CImg<t>& img) const { 2.10714 + return is_sameV(img.dim); 2.10715 + } 2.10716 + 2.10717 + //! Return \c true if image (*this) has the specified width and height. 2.10718 + bool is_sameXY(const unsigned int dx, const unsigned int dy) const { 2.10719 + return (is_sameX(dx) && is_sameY(dy)); 2.10720 + } 2.10721 + 2.10722 + //! Return \c true if images have same width and same height. 2.10723 + template<typename t> 2.10724 + bool is_sameXY(const CImg<t>& img) const { 2.10725 + return (is_sameX(img) && is_sameY(img)); 2.10726 + } 2.10727 + 2.10728 + //! Return \c true if image \c (*this) and the display \c disp have same width and same height. 2.10729 + bool is_sameXY(const CImgDisplay& disp) const { 2.10730 + return (is_sameX(disp) && is_sameY(disp)); 2.10731 + } 2.10732 + 2.10733 + //! Return \c true if image (*this) has the specified width and depth. 2.10734 + bool is_sameXZ(const unsigned int dx, const unsigned int dz) const { 2.10735 + return (is_sameX(dx) && is_sameZ(dz)); 2.10736 + } 2.10737 + 2.10738 + //! Return \c true if images have same width and same depth. 2.10739 + template<typename t> 2.10740 + bool is_sameXZ(const CImg<t>& img) const { 2.10741 + return (is_sameX(img) && is_sameZ(img)); 2.10742 + } 2.10743 + 2.10744 + //! Return \c true if image (*this) has the specified width and number of channels. 2.10745 + bool is_sameXV(const unsigned int dx, const unsigned int dv) const { 2.10746 + return (is_sameX(dx) && is_sameV(dv)); 2.10747 + } 2.10748 + 2.10749 + //! Return \c true if images have same width and same number of channels. 2.10750 + template<typename t> 2.10751 + bool is_sameXV(const CImg<t>& img) const { 2.10752 + return (is_sameX(img) && is_sameV(img)); 2.10753 + } 2.10754 + 2.10755 + //! Return \c true if image (*this) has the specified height and depth. 2.10756 + bool is_sameYZ(const unsigned int dy, const unsigned int dz) const { 2.10757 + return (is_sameY(dy) && is_sameZ(dz)); 2.10758 + } 2.10759 + 2.10760 + //! Return \c true if images have same height and same depth. 2.10761 + template<typename t> 2.10762 + bool is_sameYZ(const CImg<t>& img) const { 2.10763 + return (is_sameY(img) && is_sameZ(img)); 2.10764 + } 2.10765 + 2.10766 + //! Return \c true if image (*this) has the specified height and number of channels. 2.10767 + bool is_sameYV(const unsigned int dy, const unsigned int dv) const { 2.10768 + return (is_sameY(dy) && is_sameV(dv)); 2.10769 + } 2.10770 + 2.10771 + //! Return \c true if images have same height and same number of channels. 2.10772 + template<typename t> 2.10773 + bool is_sameYV(const CImg<t>& img) const { 2.10774 + return (is_sameY(img) && is_sameV(img)); 2.10775 + } 2.10776 + 2.10777 + //! Return \c true if image (*this) has the specified depth and number of channels. 2.10778 + bool is_sameZV(const unsigned int dz, const unsigned int dv) const { 2.10779 + return (is_sameZ(dz) && is_sameV(dv)); 2.10780 + } 2.10781 + 2.10782 + //! Return \c true if images have same depth and same number of channels. 2.10783 + template<typename t> 2.10784 + bool is_sameZV(const CImg<t>& img) const { 2.10785 + return (is_sameZ(img) && is_sameV(img)); 2.10786 + } 2.10787 + 2.10788 + //! Return \c true if image (*this) has the specified width, height and depth. 2.10789 + bool is_sameXYZ(const unsigned int dx, const unsigned int dy, const unsigned int dz) const { 2.10790 + return (is_sameXY(dx,dy) && is_sameZ(dz)); 2.10791 + } 2.10792 + 2.10793 + //! Return \c true if images have same width, same height and same depth. 2.10794 + template<typename t> 2.10795 + bool is_sameXYZ(const CImg<t>& img) const { 2.10796 + return (is_sameXY(img) && is_sameZ(img)); 2.10797 + } 2.10798 + 2.10799 + //! Return \c true if image (*this) has the specified width, height and depth. 2.10800 + bool is_sameXYV(const unsigned int dx, const unsigned int dy, const unsigned int dv) const { 2.10801 + return (is_sameXY(dx,dy) && is_sameV(dv)); 2.10802 + } 2.10803 + 2.10804 + //! Return \c true if images have same width, same height and same number of channels. 2.10805 + template<typename t> 2.10806 + bool is_sameXYV(const CImg<t>& img) const { 2.10807 + return (is_sameXY(img) && is_sameV(img)); 2.10808 + } 2.10809 + 2.10810 + //! Return \c true if image (*this) has the specified width, height and number of channels. 2.10811 + bool is_sameXZV(const unsigned int dx, const unsigned int dz, const unsigned int dv) const { 2.10812 + return (is_sameXZ(dx,dz) && is_sameV(dv)); 2.10813 + } 2.10814 + 2.10815 + //! Return \c true if images have same width, same depth and same number of channels. 2.10816 + template<typename t> 2.10817 + bool is_sameXZV(const CImg<t>& img) const { 2.10818 + return (is_sameXZ(img) && is_sameV(img)); 2.10819 + } 2.10820 + 2.10821 + //! Return \c true if image (*this) has the specified height, depth and number of channels. 2.10822 + bool is_sameYZV(const unsigned int dy, const unsigned int dz, const unsigned int dv) const { 2.10823 + return (is_sameYZ(dy,dz) && is_sameV(dv)); 2.10824 + } 2.10825 + 2.10826 + //! Return \c true if images have same heigth, same depth and same number of channels. 2.10827 + template<typename t> 2.10828 + bool is_sameYZV(const CImg<t>& img) const { 2.10829 + return (is_sameYZ(img) && is_sameV(img)); 2.10830 + } 2.10831 + 2.10832 + //! Return \c true if image (*this) has the specified width, height, depth and number of channels. 2.10833 + bool is_sameXYZV(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const { 2.10834 + return (is_sameXYZ(dx,dy,dz) && is_sameV(dv)); 2.10835 + } 2.10836 + 2.10837 + //! Return \c true if images \c (*this) and \c img have same width, same height, same depth and same number of channels. 2.10838 + template<typename t> 2.10839 + bool is_sameXYZV(const CImg<t>& img) const { 2.10840 + return (is_sameXYZ(img) && is_sameV(img)); 2.10841 + } 2.10842 + 2.10843 + //! Return \c true if current image is empty. 2.10844 + bool is_empty() const { 2.10845 + return !(data && width && height && depth && dim); 2.10846 + } 2.10847 + 2.10848 + //! Return \p true if image is not empty. 2.10849 + operator bool() const { 2.10850 + return !is_empty(); 2.10851 + } 2.10852 + 2.10853 + //! Return an iterator to the first image pixel 2.10854 + iterator begin() { 2.10855 + return data; 2.10856 + } 2.10857 + 2.10858 + const_iterator begin() const { 2.10859 + return data; 2.10860 + } 2.10861 + 2.10862 + //! Return reference to the first image pixel 2.10863 + const T& first() const { 2.10864 + return *data; 2.10865 + } 2.10866 + 2.10867 + T& first() { 2.10868 + return *data; 2.10869 + } 2.10870 + 2.10871 + //! Return an iterator pointing after the last image pixel 2.10872 + iterator end() { 2.10873 + return data + size(); 2.10874 + } 2.10875 + 2.10876 + const_iterator end() const { 2.10877 + return data + size(); 2.10878 + } 2.10879 + 2.10880 + //! Return a reference to the last image pixel 2.10881 + const T& last() const { 2.10882 + return data[size() - 1]; 2.10883 + } 2.10884 + 2.10885 + T& last() { 2.10886 + return data[size() - 1]; 2.10887 + } 2.10888 + 2.10889 + //! Return a pointer to the pixel buffer. 2.10890 + T* ptr() { 2.10891 + return data; 2.10892 + } 2.10893 + 2.10894 + const T* ptr() const { 2.10895 + return data; 2.10896 + } 2.10897 + 2.10898 + //! Return a pointer to the pixel value located at (\p x,\p y,\p z,\p v). 2.10899 + /** 2.10900 + \param x X-coordinate of the pixel. 2.10901 + \param y Y-coordinate of the pixel. 2.10902 + \param z Z-coordinate of the pixel. 2.10903 + \param v V-coordinate of the pixel. 2.10904 + 2.10905 + - When called without parameters, ptr() returns a pointer to the begining of the pixel buffer. 2.10906 + - If the macro \c 'cimg_debug'>=3, boundary checking is performed and warning messages may appear if 2.10907 + given coordinates are outside the image range (but function performances decrease). 2.10908 + 2.10909 + \par example: 2.10910 + \code 2.10911 + CImg<float> img(100,100,1,1,0); // Define a 100x100 greyscale image with float-valued pixels. 2.10912 + float *ptr = ptr(10,10); // Get a pointer to the pixel located at (10,10). 2.10913 + float val = *ptr; // Get the pixel value. 2.10914 + \endcode 2.10915 + **/ 2.10916 +#if cimg_debug>=3 2.10917 + T* ptr(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) { 2.10918 + const long off = offset(x,y,z,v); 2.10919 + if (off<0 || off>=(long)size()) { 2.10920 + cimg::warn("CImg<%s>::ptr() : Asked for a pointer at coordinates (%u,%u,%u,%u) (offset=%ld), " 2.10921 + "outside image range (%u,%u,%u,%u) (size=%lu)", 2.10922 + pixel_type(),x,y,z,v,off,width,height,depth,dim,size()); 2.10923 + return data; 2.10924 + } 2.10925 + return data + off; 2.10926 + } 2.10927 + 2.10928 + const T* ptr(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const { 2.10929 + return const_cast<CImg<T>*>(this)->ptr(x,y,z,v); 2.10930 + } 2.10931 +#else 2.10932 + T* ptr(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) { 2.10933 + return data + (long)x + (long)y*width + (long)z*width*height + (long)v*width*height*depth; 2.10934 + } 2.10935 + 2.10936 + const T* ptr(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const { 2.10937 + return data + (long)x + (long)y*width + (long)z*width*height + (long)v*width*height*depth; 2.10938 + } 2.10939 +#endif 2.10940 + 2.10941 + //! Return \c true if the memory buffers of the two images overlaps. 2.10942 + /** 2.10943 + May happen when using shared images. 2.10944 + **/ 2.10945 + template<typename t> 2.10946 + bool is_overlapped(const CImg<t>& img) const { 2.10947 + const unsigned long csiz = size(), isiz = img.size(); 2.10948 + return !((void*)(data+csiz)<=(void*)img.data || (void*)data>=(void*)(img.data+isiz)); 2.10949 + } 2.10950 + 2.10951 + //! Return the offset of the pixel coordinates (\p x,\p y,\p z,\p v) with respect to the data pointer \c data. 2.10952 + /** 2.10953 + \param x X-coordinate of the pixel. 2.10954 + \param y Y-coordinate of the pixel. 2.10955 + \param z Z-coordinate of the pixel. 2.10956 + \param v V-coordinate of the pixel. 2.10957 + 2.10958 + - No checking is done on the validity of the given coordinates. 2.10959 + 2.10960 + \par Example: 2.10961 + \code 2.10962 + CImg<float> img(100,100,1,3,0); // Define a 100x100 color image with float-valued black pixels. 2.10963 + long off = img.offset(10,10,0,2); // Get the offset of the blue value of the pixel located at (10,10). 2.10964 + float val = img[off]; // Get the blue value of the pixel. 2.10965 + \endcode 2.10966 + **/ 2.10967 + long offset(const int x, const int y=0, const int z=0, const int v=0) const { 2.10968 + return (long)x + (long)y*width + (long)z*width*height + (long)v*width*height*depth; 2.10969 + } 2.10970 + 2.10971 + //! Fast access to pixel value for reading or writing. 2.10972 + /** 2.10973 + \param x X-coordinate of the pixel. 2.10974 + \param y Y-coordinate of the pixel. 2.10975 + \param z Z-coordinate of the pixel. 2.10976 + \param v V-coordinate of the pixel. 2.10977 + 2.10978 + - If one image dimension is equal to 1, it can be omitted in the coordinate list (see example below). 2.10979 + - If the macro \c 'cimg_debug'>=3, boundary checking is performed and warning messages may appear 2.10980 + (but function performances decrease). 2.10981 + 2.10982 + \par example: 2.10983 + \code 2.10984 + CImg<float> img(100,100,1,3,0); // Define a 100x100 color image with float-valued black pixels. 2.10985 + const float valR = img(10,10,0,0); // Read the red component at coordinates (10,10). 2.10986 + const float valG = img(10,10,0,1); // Read the green component at coordinates (10,10) 2.10987 + const float valB = img(10,10,2); // Read the blue component at coordinates (10,10) (Z-coordinate omitted here). 2.10988 + const float avg = (valR + valG + valB)/3; // Compute average pixel value. 2.10989 + img(10,10,0) = img(10,10,1) = img(10,10,2) = avg; // Replace the pixel (10,10) by the average grey value. 2.10990 + \endcode 2.10991 + **/ 2.10992 +#if cimg_debug>=3 2.10993 + T& operator()(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) { 2.10994 + const long off = offset(x,y,z,v); 2.10995 + if (!data || off>=(long)size()) { 2.10996 + cimg::warn("CImg<%s>::operator() : Pixel access requested at (%u,%u,%u,%u) (offset=%ld) " 2.10997 + "outside the image range (%u,%u,%u,%u) (size=%lu)", 2.10998 + pixel_type(),x,y,z,v,off,width,height,depth,dim,size()); 2.10999 + return *data; 2.11000 + } 2.11001 + else return data[off]; 2.11002 + } 2.11003 + 2.11004 + const T& operator()(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const { 2.11005 + return const_cast<CImg<T>*>(this)->operator()(x,y,z,v); 2.11006 + } 2.11007 +#else 2.11008 + T& operator()(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) { 2.11009 + return data[(long)x + (long)y*width + (long)z*width*height + (long)v*width*height*depth]; 2.11010 + } 2.11011 + 2.11012 + const T& operator()(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const { 2.11013 + return data[(long)x + (long)y*width + (long)z*width*height + (long)v*width*height*depth]; 2.11014 + } 2.11015 +#endif 2.11016 + 2.11017 + //! Fast access to pixel value for reading or writing, using an offset to the image pixel. 2.11018 + /** 2.11019 + \param off Offset of the pixel according to the begining of the pixel buffer, given by ptr(). 2.11020 + 2.11021 + - If the macro \c 'cimg_debug'>=3, boundary checking is performed and warning messages may appear 2.11022 + (but function performances decrease). 2.11023 + - As pixel values are aligned in memory, this operator can sometime useful to access values easier than 2.11024 + with operator()() (see example below). 2.11025 + 2.11026 + \par example: 2.11027 + \code 2.11028 + CImg<float> vec(1,10); // Define a vector of float values (10 lines, 1 row). 2.11029 + const float val1 = vec(0,4); // Get the fifth element using operator()(). 2.11030 + const float val2 = vec[4]; // Get the fifth element using operator[]. Here, val2==val1. 2.11031 + \endcode 2.11032 + **/ 2.11033 +#if cimg_debug>=3 2.11034 + T& operator[](const unsigned long off) { 2.11035 + if (!data || off>=size()) { 2.11036 + cimg::warn("CImg<%s>::operator[] : Pixel access requested at offset=%lu " 2.11037 + "outside the image range (%u,%u,%u,%u) (size=%lu)", 2.11038 + pixel_type(),off,width,height,depth,dim,size()); 2.11039 + return *data; 2.11040 + } 2.11041 + else return data[off]; 2.11042 + } 2.11043 + 2.11044 + const T& operator[](const unsigned long off) const { 2.11045 + return const_cast<CImg<T>*>(this)->operator[](off); 2.11046 + } 2.11047 +#else 2.11048 + T& operator[](const unsigned long off) { 2.11049 + return data[off]; 2.11050 + } 2.11051 + 2.11052 + const T& operator[](const unsigned long off) const { 2.11053 + return data[off]; 2.11054 + } 2.11055 +#endif 2.11056 + 2.11057 + //! Return a reference to the last image value 2.11058 + T& back() { 2.11059 + return operator()(size()-1); 2.11060 + } 2.11061 + 2.11062 + const T& back() const { 2.11063 + return operator()(size()-1); 2.11064 + } 2.11065 + 2.11066 + //! Return a reference to the first image value 2.11067 + T& front() { 2.11068 + return *data; 2.11069 + } 2.11070 + 2.11071 + const T& front() const { 2.11072 + return *data; 2.11073 + } 2.11074 + 2.11075 + //! Return \c true if pixel (x,y,z,v) is inside image boundaries. 2.11076 + bool containsXYZV(const int x, const int y=0, const int z=0, const int v=0) const { 2.11077 + return !is_empty() && x>=0 && x<dimx() && y>=0 && y<dimy() && z>=0 && z<dimz() && v>=0 && v<dimv(); 2.11078 + } 2.11079 + 2.11080 + //! Return \c true if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y,z,v). 2.11081 + template<typename t> 2.11082 + bool contains(const T& pixel, t& x, t& y, t& z, t& v) const { 2.11083 + const unsigned long wh = width*height, whz = wh*depth, siz = whz*dim; 2.11084 + const T *const ppixel = &pixel; 2.11085 + if (is_empty() || ppixel<data || ppixel>=data+siz) return false; 2.11086 + unsigned long off = (unsigned long)(ppixel - data); 2.11087 + const unsigned long nv = off/whz; 2.11088 + off%=whz; 2.11089 + const unsigned long nz = off/wh; 2.11090 + off%=wh; 2.11091 + const unsigned long ny = off/width, nx = off%width; 2.11092 + x = (t)nx; y = (t)ny; z = (t)nz; v = (t)nv; 2.11093 + return true; 2.11094 + } 2.11095 + 2.11096 + //! Return \c true if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y,z). 2.11097 + template<typename t> 2.11098 + bool contains(const T& pixel, t& x, t& y, t& z) const { 2.11099 + const unsigned long wh = width*height, whz = wh*depth, siz = whz*dim; 2.11100 + const T *const ppixel = &pixel; 2.11101 + if (is_empty() || ppixel<data || ppixel>=data+siz) return false; 2.11102 + unsigned long off = ((unsigned long)(ppixel - data))%whz; 2.11103 + const unsigned long nz = off/wh; 2.11104 + off%=wh; 2.11105 + const unsigned long ny = off/width, nx = off%width; 2.11106 + x = (t)nx; y = (t)ny; z = (t)nz; 2.11107 + return true; 2.11108 + } 2.11109 + 2.11110 + //! Return \c true if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y). 2.11111 + template<typename t> 2.11112 + bool contains(const T& pixel, t& x, t& y) const { 2.11113 + const unsigned long wh = width*height, siz = wh*depth*dim; 2.11114 + const T *const ppixel = &pixel; 2.11115 + if (is_empty() || ppixel<data || ppixel>=data+siz) return false; 2.11116 + unsigned long off = ((unsigned long)(ppixel - data))%wh; 2.11117 + const unsigned long ny = off/width, nx = off%width; 2.11118 + x = (t)nx; y = (t)ny; 2.11119 + return true; 2.11120 + } 2.11121 + 2.11122 + //! Return \c true if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x). 2.11123 + template<typename t> 2.11124 + bool contains(const T& pixel, t& x) const { 2.11125 + const T *const ppixel = &pixel; 2.11126 + if (is_empty() || ppixel<data || ppixel>=data+size()) return false; 2.11127 + x = (t)(((unsigned long)(ppixel - data))%width); 2.11128 + return true; 2.11129 + } 2.11130 + 2.11131 + //! Return \c true if specified referenced value is inside the image boundaries. 2.11132 + bool contains(const T& pixel) const { 2.11133 + const T *const ppixel = &pixel; 2.11134 + return !is_empty() && ppixel>=data && ppixel<data+size(); 2.11135 + } 2.11136 + 2.11137 + //! Read a pixel value with Dirichlet boundary conditions. 2.11138 + T& at(const int off, const T out_val) { 2.11139 + return (off<0 || off>=(int)size())?(cimg::temporary(out_val)=out_val):(*this)[off]; 2.11140 + } 2.11141 + 2.11142 + T at(const int off, const T out_val) const { 2.11143 + return (off<0 || off>=(int)size())?out_val:(*this)[off]; 2.11144 + } 2.11145 + 2.11146 + //! Read a pixel value with Neumann boundary conditions. 2.11147 + T& at(const int off) { 2.11148 + if (!size()) 2.11149 + throw CImgInstanceException("CImg<%s>::at() : Instance image is empty.", 2.11150 + pixel_type()); 2.11151 + return _at(off); 2.11152 + } 2.11153 + 2.11154 + T at(const int off) const { 2.11155 + if (!size()) 2.11156 + throw CImgInstanceException("CImg<%s>::at() : Instance image is empty.", 2.11157 + pixel_type()); 2.11158 + return _at(off); 2.11159 + } 2.11160 + 2.11161 + T& _at(const int off) { 2.11162 + const unsigned int siz = (unsigned int)size(); 2.11163 + return (*this)[off<0?0:(unsigned int)off>=siz?siz-1:off]; 2.11164 + } 2.11165 + 2.11166 + T _at(const int off) const { 2.11167 + const unsigned int siz = (unsigned int)size(); 2.11168 + return (*this)[off<0?0:(unsigned int)off>=siz?siz-1:off]; 2.11169 + } 2.11170 + 2.11171 + //! Read a pixel value with Dirichlet boundary conditions. 2.11172 + T& atXYZV(const int x, const int y, const int z, const int v, const T out_val) { 2.11173 + return (x<0 || y<0 || z<0 || v<0 || x>=dimx() || y>=dimy() || z>=dimz() || v>=dimv())? 2.11174 + (cimg::temporary(out_val)=out_val):(*this)(x,y,z,v); 2.11175 + } 2.11176 + 2.11177 + T atXYZV(const int x, const int y, const int z, const int v, const T out_val) const { 2.11178 + return (x<0 || y<0 || z<0 || v<0 || x>=dimx() || y>=dimy() || z>=dimz() || v>=dimv())?out_val:(*this)(x,y,z,v); 2.11179 + } 2.11180 + 2.11181 + //! Read a pixel value with Neumann boundary conditions. 2.11182 + T& atXYZV(const int x, const int y, const int z, const int v) { 2.11183 + if (is_empty()) 2.11184 + throw CImgInstanceException("CImg<%s>::atXYZV() : Instance image is empty.", 2.11185 + pixel_type()); 2.11186 + return _atXYZV(x,y,z,v); 2.11187 + } 2.11188 + 2.11189 + T atXYZV(const int x, const int y, const int z, const int v) const { 2.11190 + if (is_empty()) 2.11191 + throw CImgInstanceException("CImg<%s>::atXYZV() : Instance image is empty.", 2.11192 + pixel_type()); 2.11193 + return _atXYZV(x,y,z,v); 2.11194 + } 2.11195 + 2.11196 + T& _atXYZV(const int x, const int y, const int z, const int v) { 2.11197 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x), y<0?0:(y>=dimy()?dimy()-1:y), 2.11198 + z<0?0:(z>=dimz()?dimz()-1:z), v<0?0:(v>=dimv()?dimv()-1:v)); 2.11199 + } 2.11200 + 2.11201 + T _atXYZV(const int x, const int y, const int z, const int v) const { 2.11202 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x), y<0?0:(y>=dimy()?dimy()-1:y), 2.11203 + z<0?0:(z>=dimz()?dimz()-1:z), v<0?0:(v>=dimv()?dimv()-1:v)); 2.11204 + } 2.11205 + 2.11206 + //! Read a pixel value with Dirichlet boundary conditions for the three first coordinates (\c x,\c y,\c z). 2.11207 + T& atXYZ(const int x, const int y, const int z, const int v, const T out_val) { 2.11208 + return (x<0 || y<0 || z<0 || x>=dimx() || y>=dimy() || z>=dimz())? 2.11209 + (cimg::temporary(out_val)=out_val):(*this)(x,y,z,v); 2.11210 + } 2.11211 + 2.11212 + T atXYZ(const int x, const int y, const int z, const int v, const T out_val) const { 2.11213 + return (x<0 || y<0 || z<0 || x>=dimx() || y>=dimy() || z>=dimz())?out_val:(*this)(x,y,z,v); 2.11214 + } 2.11215 + 2.11216 + //! Read a pixel value with Neumann boundary conditions for the three first coordinates (\c x,\c y,\c z). 2.11217 + T& atXYZ(const int x, const int y, const int z, const int v=0) { 2.11218 + if (is_empty()) 2.11219 + throw CImgInstanceException("CImg<%s>::atXYZ() : Instance image is empty.", 2.11220 + pixel_type()); 2.11221 + return _atXYZ(x,y,z,v); 2.11222 + } 2.11223 + 2.11224 + T atXYZ(const int x, const int y, const int z, const int v=0) const { 2.11225 + if (is_empty()) 2.11226 + throw CImgInstanceException("CImg<%s>::atXYZ() : Instance image is empty.", 2.11227 + pixel_type()); 2.11228 + return _atXYZ(x,y,z,v); 2.11229 + } 2.11230 + 2.11231 + T& _atXYZ(const int x, const int y, const int z, const int v=0) { 2.11232 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x),y<0?0:(y>=dimy()?dimy()-1:y), 2.11233 + z<0?0:(z>=dimz()?dimz()-1:z),v); 2.11234 + } 2.11235 + 2.11236 + T _atXYZ(const int x, const int y, const int z, const int v=0) const { 2.11237 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x),y<0?0:(y>=dimy()?dimy()-1:y), 2.11238 + z<0?0:(z>=dimz()?dimz()-1:z),v); 2.11239 + } 2.11240 + 2.11241 + //! Read a pixel value with Dirichlet boundary conditions for the two first coordinates (\c x,\c y). 2.11242 + T& atXY(const int x, const int y, const int z, const int v, const T out_val) { 2.11243 + return (x<0 || y<0 || x>=dimx() || y>=dimy())?(cimg::temporary(out_val)=out_val):(*this)(x,y,z,v); 2.11244 + } 2.11245 + 2.11246 + T atXY(const int x, const int y, const int z, const int v, const T out_val) const { 2.11247 + return (x<0 || y<0 || x>=dimx() || y>=dimy())?out_val:(*this)(x,y,z,v); 2.11248 + } 2.11249 + 2.11250 + //! Read a pixel value with Neumann boundary conditions for the two first coordinates (\c x,\c y). 2.11251 + T& atXY(const int x, const int y, const int z=0, const int v=0) { 2.11252 + if (is_empty()) 2.11253 + throw CImgInstanceException("CImg<%s>::atXY() : Instance image is empty.", 2.11254 + pixel_type()); 2.11255 + return _atXY(x,y,z,v); 2.11256 + } 2.11257 + 2.11258 + T atXY(const int x, const int y, const int z=0, const int v=0) const { 2.11259 + if (is_empty()) 2.11260 + throw CImgInstanceException("CImg<%s>::atXY() : Instance image is empty.", 2.11261 + pixel_type()); 2.11262 + return _atXY(x,y,z,v); 2.11263 + } 2.11264 + 2.11265 + T& _atXY(const int x, const int y, const int z=0, const int v=0) { 2.11266 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x), y<0?0:(y>=dimy()?dimy()-1:y),z,v); 2.11267 + } 2.11268 + 2.11269 + T _atXY(const int x, const int y, const int z=0, const int v=0) const { 2.11270 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x), y<0?0:(y>=dimy()?dimy()-1:y),z,v); 2.11271 + } 2.11272 + 2.11273 + //! Read a pixel value with Dirichlet boundary conditions for the first coordinates (\c x). 2.11274 + T& atX(const int x, const int y, const int z, const int v, const T out_val) { 2.11275 + return (x<0 || x>=dimx())?(cimg::temporary(out_val)=out_val):(*this)(x,y,z,v); 2.11276 + } 2.11277 + 2.11278 + T atX(const int x, const int y, const int z, const int v, const T out_val) const { 2.11279 + return (x<0 || x>=dimx())?out_val:(*this)(x,y,z,v); 2.11280 + } 2.11281 + 2.11282 + //! Read a pixel value with Neumann boundary conditions for the first coordinates (\c x). 2.11283 + T& atX(const int x, const int y=0, const int z=0, const int v=0) { 2.11284 + if (is_empty()) 2.11285 + throw CImgInstanceException("CImg<%s>::atX() : Instance image is empty.", 2.11286 + pixel_type()); 2.11287 + return _atX(x,y,z,v); 2.11288 + } 2.11289 + 2.11290 + T atX(const int x, const int y=0, const int z=0, const int v=0) const { 2.11291 + if (is_empty()) 2.11292 + throw CImgInstanceException("CImg<%s>::atX() : Instance image is empty.", 2.11293 + pixel_type()); 2.11294 + return _atX(x,y,z,v); 2.11295 + } 2.11296 + 2.11297 + T& _atX(const int x, const int y=0, const int z=0, const int v=0) { 2.11298 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x),y,z,v); 2.11299 + } 2.11300 + 2.11301 + T _atX(const int x, const int y=0, const int z=0, const int v=0) const { 2.11302 + return (*this)(x<0?0:(x>=dimx()?dimx()-1:x),y,z,v); 2.11303 + } 2.11304 + 2.11305 + //! Read a pixel value using linear interpolation and Dirichlet boundary conditions. 2.11306 + Tfloat linear_atXYZV(const float fx, const float fy, const float fz, const float fv, const T out_val) const { 2.11307 + const int 2.11308 + x = (int)fx-(fx>=0?0:1), nx = x+1, 2.11309 + y = (int)fy-(fy>=0?0:1), ny = y+1, 2.11310 + z = (int)fz-(fz>=0?0:1), nz = z+1, 2.11311 + v = (int)fv-(fv>=0?0:1), nv = v+1; 2.11312 + const float 2.11313 + dx = fx-x, 2.11314 + dy = fy-y, 2.11315 + dz = fz-z, 2.11316 + dv = fv-v; 2.11317 + const Tfloat 2.11318 + Icccc = (Tfloat)atXYZV(x,y,z,v,out_val), Inccc = (Tfloat)atXYZV(nx,y,z,v,out_val), 2.11319 + Icncc = (Tfloat)atXYZV(x,ny,z,v,out_val), Inncc = (Tfloat)atXYZV(nx,ny,z,v,out_val), 2.11320 + Iccnc = (Tfloat)atXYZV(x,y,nz,v,out_val), Incnc = (Tfloat)atXYZV(nx,y,nz,v,out_val), 2.11321 + Icnnc = (Tfloat)atXYZV(x,ny,nz,v,out_val), Innnc = (Tfloat)atXYZV(nx,ny,nz,v,out_val), 2.11322 + Icccn = (Tfloat)atXYZV(x,y,z,nv,out_val), Inccn = (Tfloat)atXYZV(nx,y,z,nv,out_val), 2.11323 + Icncn = (Tfloat)atXYZV(x,ny,z,nv,out_val), Inncn = (Tfloat)atXYZV(nx,ny,z,nv,out_val), 2.11324 + Iccnn = (Tfloat)atXYZV(x,y,nz,nv,out_val), Incnn = (Tfloat)atXYZV(nx,y,nz,nv,out_val), 2.11325 + Icnnn = (Tfloat)atXYZV(x,ny,nz,nv,out_val), Innnn = (Tfloat)atXYZV(nx,ny,nz,nv,out_val); 2.11326 + return Icccc + 2.11327 + dx*(Inccc-Icccc + 2.11328 + dy*(Icccc+Inncc-Icncc-Inccc + 2.11329 + dz*(Iccnc+Innnc+Icncc+Inccc-Icnnc-Incnc-Icccc-Inncc + 2.11330 + dv*(Iccnn+Innnn+Icncn+Inccn+Icnnc+Incnc+Icccc+Inncc-Icnnn-Incnn-Icccn-Inncn-Iccnc-Innnc-Icncc-Inccc)) + 2.11331 + dv*(Icccn+Inncn+Icncc+Inccc-Icncn-Inccn-Icccc-Inncc)) + 2.11332 + dz*(Icccc+Incnc-Iccnc-Inccc + 2.11333 + dv*(Icccn+Incnn+Iccnc+Inccc-Iccnn-Inccn-Icccc-Incnc)) + 2.11334 + dv*(Icccc+Inccn-Inccc-Icccn)) + 2.11335 + dy*(Icncc-Icccc + 2.11336 + dz*(Icccc+Icnnc-Iccnc-Icncc + 2.11337 + dv*(Icccn+Icnnn+Iccnc+Icncc-Iccnn-Icncn-Icccc-Icnnc)) + 2.11338 + dv*(Icccc+Icncn-Icncc-Icccn)) + 2.11339 + dz*(Iccnc-Icccc + 2.11340 + dv*(Icccc+Iccnn-Iccnc-Icccn)) + 2.11341 + dv*(Icccn-Icccc); 2.11342 + } 2.11343 + 2.11344 + //! Read a pixel value using linear interpolation and Neumann boundary conditions. 2.11345 + Tfloat linear_atXYZV(const float fx, const float fy=0, const float fz=0, const float fv=0) const { 2.11346 + if (is_empty()) 2.11347 + throw CImgInstanceException("CImg<%s>::linear_atXYZV() : Instance image is empty.", 2.11348 + pixel_type()); 2.11349 + return _linear_atXYZV(fx,fy,fz,fv); 2.11350 + } 2.11351 + 2.11352 + Tfloat _linear_atXYZV(const float fx, const float fy=0, const float fz=0, const float fv=0) const { 2.11353 + const float 2.11354 + nfx = fx<0?0:(fx>width-1?width-1:fx), 2.11355 + nfy = fy<0?0:(fy>height-1?height-1:fy), 2.11356 + nfz = fz<0?0:(fz>depth-1?depth-1:fz), 2.11357 + nfv = fv<0?0:(fv>dim-1?dim-1:fv); 2.11358 + const unsigned int 2.11359 + x = (unsigned int)nfx, 2.11360 + y = (unsigned int)nfy, 2.11361 + z = (unsigned int)nfz, 2.11362 + v = (unsigned int)nfv; 2.11363 + const float 2.11364 + dx = nfx-x, 2.11365 + dy = nfy-y, 2.11366 + dz = nfz-z, 2.11367 + dv = nfv-v; 2.11368 + const unsigned int 2.11369 + nx = dx>0?x+1:x, 2.11370 + ny = dy>0?y+1:y, 2.11371 + nz = dz>0?z+1:z, 2.11372 + nv = dv>0?v+1:v; 2.11373 + const Tfloat 2.11374 + Icccc = (Tfloat)(*this)(x,y,z,v), Inccc = (Tfloat)(*this)(nx,y,z,v), 2.11375 + Icncc = (Tfloat)(*this)(x,ny,z,v), Inncc = (Tfloat)(*this)(nx,ny,z,v), 2.11376 + Iccnc = (Tfloat)(*this)(x,y,nz,v), Incnc = (Tfloat)(*this)(nx,y,nz,v), 2.11377 + Icnnc = (Tfloat)(*this)(x,ny,nz,v), Innnc = (Tfloat)(*this)(nx,ny,nz,v), 2.11378 + Icccn = (Tfloat)(*this)(x,y,z,nv), Inccn = (Tfloat)(*this)(nx,y,z,nv), 2.11379 + Icncn = (Tfloat)(*this)(x,ny,z,nv), Inncn = (Tfloat)(*this)(nx,ny,z,nv), 2.11380 + Iccnn = (Tfloat)(*this)(x,y,nz,nv), Incnn = (Tfloat)(*this)(nx,y,nz,nv), 2.11381 + Icnnn = (Tfloat)(*this)(x,ny,nz,nv), Innnn = (Tfloat)(*this)(nx,ny,nz,nv); 2.11382 + return Icccc + 2.11383 + dx*(Inccc-Icccc + 2.11384 + dy*(Icccc+Inncc-Icncc-Inccc + 2.11385 + dz*(Iccnc+Innnc+Icncc+Inccc-Icnnc-Incnc-Icccc-Inncc + 2.11386 + dv*(Iccnn+Innnn+Icncn+Inccn+Icnnc+Incnc+Icccc+Inncc-Icnnn-Incnn-Icccn-Inncn-Iccnc-Innnc-Icncc-Inccc)) + 2.11387 + dv*(Icccn+Inncn+Icncc+Inccc-Icncn-Inccn-Icccc-Inncc)) + 2.11388 + dz*(Icccc+Incnc-Iccnc-Inccc + 2.11389 + dv*(Icccn+Incnn+Iccnc+Inccc-Iccnn-Inccn-Icccc-Incnc)) + 2.11390 + dv*(Icccc+Inccn-Inccc-Icccn)) + 2.11391 + dy*(Icncc-Icccc + 2.11392 + dz*(Icccc+Icnnc-Iccnc-Icncc + 2.11393 + dv*(Icccn+Icnnn+Iccnc+Icncc-Iccnn-Icncn-Icccc-Icnnc)) + 2.11394 + dv*(Icccc+Icncn-Icncc-Icccn)) + 2.11395 + dz*(Iccnc-Icccc + 2.11396 + dv*(Icccc+Iccnn-Iccnc-Icccn)) + 2.11397 + dv*(Icccn-Icccc); 2.11398 + } 2.11399 + 2.11400 + //! Read a pixel value using linear interpolation and Dirichlet boundary conditions (first three coordinates). 2.11401 + Tfloat linear_atXYZ(const float fx, const float fy, const float fz, const int v, const T out_val) const { 2.11402 + const int 2.11403 + x = (int)fx-(fx>=0?0:1), nx = x+1, 2.11404 + y = (int)fy-(fy>=0?0:1), ny = y+1, 2.11405 + z = (int)fz-(fz>=0?0:1), nz = z+1; 2.11406 + const float 2.11407 + dx = fx-x, 2.11408 + dy = fy-y, 2.11409 + dz = fz-z; 2.11410 + const Tfloat 2.11411 + Iccc = (Tfloat)atXYZ(x,y,z,v,out_val), Incc = (Tfloat)atXYZ(nx,y,z,v,out_val), 2.11412 + Icnc = (Tfloat)atXYZ(x,ny,z,v,out_val), Innc = (Tfloat)atXYZ(nx,ny,z,v,out_val), 2.11413 + Iccn = (Tfloat)atXYZ(x,y,nz,v,out_val), Incn = (Tfloat)atXYZ(nx,y,nz,v,out_val), 2.11414 + Icnn = (Tfloat)atXYZ(x,ny,nz,v,out_val), Innn = (Tfloat)atXYZ(nx,ny,nz,v,out_val); 2.11415 + return Iccc + 2.11416 + dx*(Incc-Iccc + 2.11417 + dy*(Iccc+Innc-Icnc-Incc + 2.11418 + dz*(Iccn+Innn+Icnc+Incc-Icnn-Incn-Iccc-Innc)) + 2.11419 + dz*(Iccc+Incn-Iccn-Incc)) + 2.11420 + dy*(Icnc-Iccc + 2.11421 + dz*(Iccc+Icnn-Iccn-Icnc)) + 2.11422 + dz*(Iccn-Iccc); 2.11423 + } 2.11424 + 2.11425 + //! Read a pixel value using linear interpolation and Neumann boundary conditions (first three coordinates). 2.11426 + Tfloat linear_atXYZ(const float fx, const float fy=0, const float fz=0, const int v=0) const { 2.11427 + if (is_empty()) 2.11428 + throw CImgInstanceException("CImg<%s>::linear_atXYZ() : Instance image is empty.", 2.11429 + pixel_type()); 2.11430 + return _linear_atXYZ(fx,fy,fz,v); 2.11431 + } 2.11432 + 2.11433 + Tfloat _linear_atXYZ(const float fx, const float fy=0, const float fz=0, const int v=0) const { 2.11434 + const float 2.11435 + nfx = fx<0?0:(fx>width-1?width-1:fx), 2.11436 + nfy = fy<0?0:(fy>height-1?height-1:fy), 2.11437 + nfz = fz<0?0:(fz>depth-1?depth-1:fz); 2.11438 + const unsigned int 2.11439 + x = (unsigned int)nfx, 2.11440 + y = (unsigned int)nfy, 2.11441 + z = (unsigned int)nfz; 2.11442 + const float 2.11443 + dx = nfx-x, 2.11444 + dy = nfy-y, 2.11445 + dz = nfz-z; 2.11446 + const unsigned int 2.11447 + nx = dx>0?x+1:x, 2.11448 + ny = dy>0?y+1:y, 2.11449 + nz = dz>0?z+1:z; 2.11450 + const Tfloat 2.11451 + Iccc = (Tfloat)(*this)(x,y,z,v), Incc = (Tfloat)(*this)(nx,y,z,v), 2.11452 + Icnc = (Tfloat)(*this)(x,ny,z,v), Innc = (Tfloat)(*this)(nx,ny,z,v), 2.11453 + Iccn = (Tfloat)(*this)(x,y,nz,v), Incn = (Tfloat)(*this)(nx,y,nz,v), 2.11454 + Icnn = (Tfloat)(*this)(x,ny,nz,v), Innn = (Tfloat)(*this)(nx,ny,nz,v); 2.11455 + return Iccc + 2.11456 + dx*(Incc-Iccc + 2.11457 + dy*(Iccc+Innc-Icnc-Incc + 2.11458 + dz*(Iccn+Innn+Icnc+Incc-Icnn-Incn-Iccc-Innc)) + 2.11459 + dz*(Iccc+Incn-Iccn-Incc)) + 2.11460 + dy*(Icnc-Iccc + 2.11461 + dz*(Iccc+Icnn-Iccn-Icnc)) + 2.11462 + dz*(Iccn-Iccc); 2.11463 + } 2.11464 + 2.11465 + //! Read a pixel value using linear interpolation and Dirichlet boundary conditions (first two coordinates). 2.11466 + Tfloat linear_atXY(const float fx, const float fy, const int z, const int v, const T out_val) const { 2.11467 + const int 2.11468 + x = (int)fx-(fx>=0?0:1), nx = x+1, 2.11469 + y = (int)fy-(fy>=0?0:1), ny = y+1; 2.11470 + const float 2.11471 + dx = fx-x, 2.11472 + dy = fy-y; 2.11473 + const Tfloat 2.11474 + Icc = (Tfloat)atXY(x,y,z,v,out_val), Inc = (Tfloat)atXY(nx,y,z,v,out_val), 2.11475 + Icn = (Tfloat)atXY(x,ny,z,v,out_val), Inn = (Tfloat)atXY(nx,ny,z,v,out_val); 2.11476 + return Icc + dx*(Inc-Icc + dy*(Icc+Inn-Icn-Inc)) + dy*(Icn-Icc); 2.11477 + } 2.11478 + 2.11479 + //! Read a pixel value using linear interpolation and Neumann boundary conditions (first two coordinates). 2.11480 + Tfloat linear_atXY(const float fx, const float fy, const int z=0, const int v=0) const { 2.11481 + if (is_empty()) 2.11482 + throw CImgInstanceException("CImg<%s>::linear_atXY() : Instance image is empty.", 2.11483 + pixel_type()); 2.11484 + return _linear_atXY(fx,fy,z,v); 2.11485 + } 2.11486 + 2.11487 + Tfloat _linear_atXY(const float fx, const float fy, const int z=0, const int v=0) const { 2.11488 + const float 2.11489 + nfx = fx<0?0:(fx>width-1?width-1:fx), 2.11490 + nfy = fy<0?0:(fy>height-1?height-1:fy); 2.11491 + const unsigned int 2.11492 + x = (unsigned int)nfx, 2.11493 + y = (unsigned int)nfy; 2.11494 + const float 2.11495 + dx = nfx-x, 2.11496 + dy = nfy-y; 2.11497 + const unsigned int 2.11498 + nx = dx>0?x+1:x, 2.11499 + ny = dy>0?y+1:y; 2.11500 + const Tfloat 2.11501 + Icc = (Tfloat)(*this)(x,y,z,v), Inc = (Tfloat)(*this)(nx,y,z,v), 2.11502 + Icn = (Tfloat)(*this)(x,ny,z,v), Inn = (Tfloat)(*this)(nx,ny,z,v); 2.11503 + return Icc + dx*(Inc-Icc + dy*(Icc+Inn-Icn-Inc)) + dy*(Icn-Icc); 2.11504 + } 2.11505 + 2.11506 + //! Read a pixel value using linear interpolation and Dirichlet boundary conditions (first coordinate). 2.11507 + Tfloat linear_atX(const float fx, const int y, const int z, const int v, const T out_val) const { 2.11508 + const int 2.11509 + x = (int)fx-(fx>=0?0:1), nx = x+1; 2.11510 + const float 2.11511 + dx = fx-x; 2.11512 + const Tfloat 2.11513 + Ic = (Tfloat)atX(x,y,z,v,out_val), In = (Tfloat)atXY(nx,y,z,v,out_val); 2.11514 + return Ic + dx*(In-Ic); 2.11515 + } 2.11516 + 2.11517 + //! Read a pixel value using linear interpolation and Neumann boundary conditions (first coordinate). 2.11518 + Tfloat linear_atX(const float fx, const int y=0, const int z=0, const int v=0) const { 2.11519 + if (is_empty()) 2.11520 + throw CImgInstanceException("CImg<%s>::linear_atX() : Instance image is empty.", 2.11521 + pixel_type()); 2.11522 + return _linear_atX(fx,y,z,v); 2.11523 + } 2.11524 + 2.11525 + Tfloat _linear_atX(const float fx, const int y=0, const int z=0, const int v=0) const { 2.11526 + const float 2.11527 + nfx = fx<0?0:(fx>width-1?width-1:fx); 2.11528 + const unsigned int 2.11529 + x = (unsigned int)nfx; 2.11530 + const float 2.11531 + dx = nfx-x; 2.11532 + const unsigned int 2.11533 + nx = dx>0?x+1:x; 2.11534 + const Tfloat 2.11535 + Ic = (Tfloat)(*this)(x,y,z,v), In = (Tfloat)(*this)(nx,y,z,v); 2.11536 + return Ic + dx*(In-Ic); 2.11537 + } 2.11538 + 2.11539 + //! Read a pixel value using cubic interpolation and Dirichlet boundary conditions. 2.11540 + Tfloat cubic_atXY(const float fx, const float fy, const int z, const int v, const T out_val) const { 2.11541 + const int 2.11542 + x = (int)fx-(fx>=0?0:1), px = x-1, nx = x+1, ax = x+2, 2.11543 + y = (int)fy-(fy>=0?0:1), py = y-1, ny = y+1, ay = y+2; 2.11544 + const float 2.11545 + dx = fx-x, dx2 = dx*dx, dx3 = dx2*dx, 2.11546 + dy = fy-y; 2.11547 + const Tfloat 2.11548 + Ipp = (Tfloat)atXY(px,py,z,v,out_val), Icp = (Tfloat)atXY(x,py,z,v,out_val), 2.11549 + Inp = (Tfloat)atXY(nx,py,z,v,out_val), Iap = (Tfloat)atXY(ax,py,z,v,out_val), 2.11550 + Ipc = (Tfloat)atXY(px,y,z,v,out_val), Icc = (Tfloat)atXY(x,y,z,v,out_val), 2.11551 + Inc = (Tfloat)atXY(nx,y,z,v,out_val), Iac = (Tfloat)atXY(ax,y,z,v,out_val), 2.11552 + Ipn = (Tfloat)atXY(px,ny,z,v,out_val), Icn = (Tfloat)atXY(x,ny,z,v,out_val), 2.11553 + Inn = (Tfloat)atXY(nx,ny,z,v,out_val), Ian = (Tfloat)atXY(ax,ny,z,v,out_val), 2.11554 + Ipa = (Tfloat)atXY(px,ay,z,v,out_val), Ica = (Tfloat)atXY(x,ay,z,v,out_val), 2.11555 + Ina = (Tfloat)atXY(nx,ay,z,v,out_val), Iaa = (Tfloat)atXY(ax,ay,z,v,out_val), 2.11556 + valm = cimg::min(cimg::min(Ipp,Icp,Inp,Iap),cimg::min(Ipc,Icc,Inc,Iac),cimg::min(Ipn,Icn,Inn,Ian),cimg::min(Ipa,Ica,Ina,Iaa)), 2.11557 + valM = cimg::max(cimg::max(Ipp,Icp,Inp,Iap),cimg::max(Ipc,Icc,Inc,Iac),cimg::max(Ipn,Icn,Inn,Ian),cimg::max(Ipa,Ica,Ina,Iaa)), 2.11558 + u0p = Icp - Ipp, 2.11559 + u1p = Iap - Inp, 2.11560 + ap = 2*(Icp-Inp) + u0p + u1p, 2.11561 + bp = 3*(Inp-Icp) - 2*u0p - u1p, 2.11562 + u0c = Icc - Ipc, 2.11563 + u1c = Iac - Inc, 2.11564 + ac = 2*(Icc-Inc) + u0c + u1c, 2.11565 + bc = 3*(Inc-Icc) - 2*u0c - u1c, 2.11566 + u0n = Icn - Ipn, 2.11567 + u1n = Ian - Inn, 2.11568 + an = 2*(Icn-Inn) + u0n + u1n, 2.11569 + bn = 3*(Inn-Icn) - 2*u0n - u1n, 2.11570 + u0a = Ica - Ipa, 2.11571 + u1a = Iaa - Ina, 2.11572 + aa = 2*(Ica-Ina) + u0a + u1a, 2.11573 + ba = 3*(Ina-Ica) - 2*u0a - u1a, 2.11574 + valp = ap*dx3 + bp*dx2 + u0p*dx + Icp, 2.11575 + valc = ac*dx3 + bc*dx2 + u0c*dx + Icc, 2.11576 + valn = an*dx3 + bn*dx2 + u0n*dx + Icn, 2.11577 + vala = aa*dx3 + ba*dx2 + u0a*dx + Ica, 2.11578 + u0 = valc - valp, 2.11579 + u1 = vala - valn, 2.11580 + a = 2*(valc-valn) + u0 + u1, 2.11581 + b = 3*(valn-valc) - 2*u0 - u1, 2.11582 + val = a*dy*dy*dy + b*dy*dy + u0*dy + valc; 2.11583 + return val<valm?valm:(val>valM?valM:val); 2.11584 + } 2.11585 + 2.11586 + //! Read a pixel value using cubic interpolation and Neumann boundary conditions. 2.11587 + Tfloat cubic_atXY(const float fx, const float fy, const int z=0, const int v=0) const { 2.11588 + if (is_empty()) 2.11589 + throw CImgInstanceException("CImg<%s>::cubic_atXY() : Instance image is empty.", 2.11590 + pixel_type()); 2.11591 + return _cubic_atXY(fx,fy,z,v); 2.11592 + } 2.11593 + 2.11594 + Tfloat _cubic_atXY(const float fx, const float fy, const int z=0, const int v=0) const { 2.11595 + const float 2.11596 + nfx = fx<0?0:(fx>width-1?width-1:fx), 2.11597 + nfy = fy<0?0:(fy>height-1?height-1:fy); 2.11598 + const int 2.11599 + x = (int)nfx, 2.11600 + y = (int)nfy; 2.11601 + const float 2.11602 + dx = nfx-x, dx2 = dx*dx, dx3 = dx2*dx, 2.11603 + dy = nfy-y; 2.11604 + const int 2.11605 + px = x-1<0?0:x-1, nx = dx>0?x+1:x, ax = x+2>=dimx()?dimx()-1:x+2, 2.11606 + py = y-1<0?0:y-1, ny = dy>0?y+1:y, ay = y+2>=dimy()?dimy()-1:y+2; 2.11607 + const Tfloat 2.11608 + Ipp = (Tfloat)(*this)(px,py,z,v), Icp = (Tfloat)(*this)(x,py,z,v), 2.11609 + Inp = (Tfloat)(*this)(nx,py,z,v), Iap = (Tfloat)(*this)(ax,py,z,v), 2.11610 + Ipc = (Tfloat)(*this)(px,y,z,v), Icc = (Tfloat)(*this)(x,y,z,v), 2.11611 + Inc = (Tfloat)(*this)(nx,y,z,v), Iac = (Tfloat)(*this)(ax,y,z,v), 2.11612 + Ipn = (Tfloat)(*this)(px,ny,z,v), Icn = (Tfloat)(*this)(x,ny,z,v), 2.11613 + Inn = (Tfloat)(*this)(nx,ny,z,v), Ian = (Tfloat)(*this)(ax,ny,z,v), 2.11614 + Ipa = (Tfloat)(*this)(px,ay,z,v), Ica = (Tfloat)(*this)(x,ay,z,v), 2.11615 + Ina = (Tfloat)(*this)(nx,ay,z,v), Iaa = (Tfloat)(*this)(ax,ay,z,v), 2.11616 + valm = cimg::min(cimg::min(Ipp,Icp,Inp,Iap),cimg::min(Ipc,Icc,Inc,Iac),cimg::min(Ipn,Icn,Inn,Ian),cimg::min(Ipa,Ica,Ina,Iaa)), 2.11617 + valM = cimg::max(cimg::max(Ipp,Icp,Inp,Iap),cimg::max(Ipc,Icc,Inc,Iac),cimg::max(Ipn,Icn,Inn,Ian),cimg::max(Ipa,Ica,Ina,Iaa)), 2.11618 + u0p = Icp - Ipp, 2.11619 + u1p = Iap - Inp, 2.11620 + ap = 2*(Icp-Inp) + u0p + u1p, 2.11621 + bp = 3*(Inp-Icp) - 2*u0p - u1p, 2.11622 + u0c = Icc - Ipc, 2.11623 + u1c = Iac - Inc, 2.11624 + ac = 2*(Icc-Inc) + u0c + u1c, 2.11625 + bc = 3*(Inc-Icc) - 2*u0c - u1c, 2.11626 + u0n = Icn - Ipn, 2.11627 + u1n = Ian - Inn, 2.11628 + an = 2*(Icn-Inn) + u0n + u1n, 2.11629 + bn = 3*(Inn-Icn) - 2*u0n - u1n, 2.11630 + u0a = Ica - Ipa, 2.11631 + u1a = Iaa - Ina, 2.11632 + aa = 2*(Ica-Ina) + u0a + u1a, 2.11633 + ba = 3*(Ina-Ica) - 2*u0a - u1a, 2.11634 + valp = ap*dx3 + bp*dx2 + u0p*dx + Icp, 2.11635 + valc = ac*dx3 + bc*dx2 + u0c*dx + Icc, 2.11636 + valn = an*dx3 + bn*dx2 + u0n*dx + Icn, 2.11637 + vala = aa*dx3 + ba*dx2 + u0a*dx + Ica, 2.11638 + u0 = valc - valp, 2.11639 + u1 = vala - valn, 2.11640 + a = 2*(valc-valn) + u0 + u1, 2.11641 + b = 3*(valn-valc) - 2*u0 - u1, 2.11642 + val = a*dy*dy*dy + b*dy*dy + u0*dy + valc; 2.11643 + return val<valm?valm:(val>valM?valM:val); 2.11644 + } 2.11645 + 2.11646 + //! Read a pixel value using cubic interpolation and Dirichlet boundary conditions (first coordinates). 2.11647 + Tfloat cubic_atX(const float fx, const int y, const int z, const int v, const T out_val) const { 2.11648 + const int 2.11649 + x = (int)fx-(fx>=0?0:1), px = x-1, nx = x+1, ax = x+2; 2.11650 + const float 2.11651 + dx = fx-x; 2.11652 + const Tfloat 2.11653 + Ip = (Tfloat)atX(px,y,z,v,out_val), Ic = (Tfloat)atX(x,y,z,v,out_val), 2.11654 + In = (Tfloat)atX(nx,y,z,v,out_val), Ia = (Tfloat)atX(ax,y,z,v,out_val), 2.11655 + valm = cimg::min(Ip,In,Ic,Ia), valM = cimg::max(Ip,In,Ic,Ia), 2.11656 + u0 = Ic - Ip, 2.11657 + u1 = Ia - In, 2.11658 + a = 2*(Ic-In) + u0 + u1, 2.11659 + b = 3*(In-Ic) - 2*u0 - u1, 2.11660 + val = a*dx*dx*dx + b*dx*dx + u0*dx + Ic; 2.11661 + return val<valm?valm:(val>valM?valM:val); 2.11662 + } 2.11663 + 2.11664 + //! Read a pixel value using cubic interpolation and Neumann boundary conditions (first coordinates). 2.11665 + Tfloat cubic_atX(const float fx, const int y=0, const int z=0, const int v=0) const { 2.11666 + if (is_empty()) 2.11667 + throw CImgInstanceException("CImg<%s>::cubic_atX() : Instance image is empty.", 2.11668 + pixel_type()); 2.11669 + return _cubic_atX(fx,y,z,v); 2.11670 + } 2.11671 + 2.11672 + Tfloat _cubic_atX(const float fx, const int y=0, const int z=0, const int v=0) const { 2.11673 + const float 2.11674 + nfx = fx<0?0:(fx>width-1?width-1:fx); 2.11675 + const int 2.11676 + x = (int)nfx; 2.11677 + const float 2.11678 + dx = nfx-x; 2.11679 + const int 2.11680 + px = x-1<0?0:x-1, nx = dx>0?x+1:x, ax = x+2>=dimx()?dimx()-1:x+2; 2.11681 + const Tfloat 2.11682 + Ip = (Tfloat)(*this)(px,y,z,v), Ic = (Tfloat)(*this)(x,y,z,v), 2.11683 + In = (Tfloat)(*this)(nx,y,z,v), Ia = (Tfloat)(*this)(ax,y,z,v), 2.11684 + valm = cimg::min(Ip,In,Ic,Ia), valM = cimg::max(Ip,In,Ic,Ia), 2.11685 + u0 = Ic - Ip, 2.11686 + u1 = Ia - In, 2.11687 + a = 2*(Ic-In) + u0 + u1, 2.11688 + b = 3*(In-Ic) - 2*u0 - u1, 2.11689 + val = a*dx*dx*dx + b*dx*dx + u0*dx + Ic; 2.11690 + return val<valm?valm:(val>valM?valM:val); 2.11691 + } 2.11692 + 2.11693 + //! Set a pixel value, with 3D float coordinates, using linear interpolation. 2.11694 + CImg& set_linear_atXYZ(const T& val, const float fx, const float fy=0, const float fz=0, const int v=0, 2.11695 + const bool add=false) { 2.11696 + const int 2.11697 + x = (int)fx-(fx>=0?0:1), nx = x+1, 2.11698 + y = (int)fy-(fy>=0?0:1), ny = y+1, 2.11699 + z = (int)fz-(fz>=0?0:1), nz = z+1; 2.11700 + const float 2.11701 + dx = fx-x, 2.11702 + dy = fy-y, 2.11703 + dz = fz-z; 2.11704 + if (v>=0 && v<dimv()) { 2.11705 + if (z>=0 && z<dimz()) { 2.11706 + if (y>=0 && y<dimy()) { 2.11707 + if (x>=0 && x<dimx()) { 2.11708 + const float w1 = (1-dx)*(1-dy)*(1-dz), w2 = add?1:(1-w1); 2.11709 + (*this)(x,y,z,v) = (T)(w1*val + w2*(*this)(x,y,z,v)); 2.11710 + } 2.11711 + if (nx>=0 && nx<dimx()) { 2.11712 + const float w1 = dx*(1-dy)*(1-dz), w2 = add?1:(1-w1); 2.11713 + (*this)(nx,y,z,v) = (T)(w1*val + w2*(*this)(nx,y,z,v)); 2.11714 + } 2.11715 + } 2.11716 + if (ny>=0 && ny<dimy()) { 2.11717 + if (x>=0 && x<dimx()) { 2.11718 + const float w1 = (1-dx)*dy*(1-dz), w2 = add?1:(1-w1); 2.11719 + (*this)(x,ny,z,v) = (T)(w1*val + w2*(*this)(x,ny,z,v)); 2.11720 + } 2.11721 + if (nx>=0 && nx<dimx()) { 2.11722 + const float w1 = dx*dy*(1-dz), w2 = add?1:(1-w1); 2.11723 + (*this)(nx,ny,z,v) = (T)(w1*val + w2*(*this)(nx,ny,z,v)); 2.11724 + } 2.11725 + } 2.11726 + } 2.11727 + if (nz>=0 && nz<dimz()) { 2.11728 + if (y>=0 && y<dimy()) { 2.11729 + if (x>=0 && x<dimx()) { 2.11730 + const float w1 = (1-dx)*(1-dy), w2 = add?1:(1-w1); 2.11731 + (*this)(x,y,nz,v) = (T)(w1*val + w2*(*this)(x,y,nz,v)); 2.11732 + } 2.11733 + if (nx>=0 && nx<dimx()) { 2.11734 + const float w1 = dx*(1-dy), w2 = add?1:(1-w1); 2.11735 + (*this)(nx,y,nz,v) = (T)(w1*val + w2*(*this)(nx,y,nz,v)); 2.11736 + } 2.11737 + } 2.11738 + if (ny>=0 && ny<dimy()) { 2.11739 + if (x>=0 && x<dimx()) { 2.11740 + const float w1 = (1-dx)*dy, w2 = add?1:(1-w1); 2.11741 + (*this)(x,ny,nz,v) = (T)(w1*val + w2*(*this)(x,ny,nz,v)); 2.11742 + } 2.11743 + if (nx>=0 && nx<dimx()) { 2.11744 + const float w1 = dx*dy, w2 = add?1:(1-w1); 2.11745 + (*this)(nx,ny,nz,v) = (T)(w1*val + w2*(*this)(nx,ny,nz,v)); 2.11746 + } 2.11747 + } 2.11748 + } 2.11749 + } 2.11750 + return *this; 2.11751 + } 2.11752 + 2.11753 + //! Set a pixel value, with 2D float coordinates, using linear interpolation. 2.11754 + CImg& set_linear_atXY(const T& val, const float fx, const float fy=0, const int z=0, const int v=0, 2.11755 + const bool add=false) { 2.11756 + const int 2.11757 + x = (int)fx-(fx>=0?0:1), nx = x+1, 2.11758 + y = (int)fy-(fy>=0?0:1), ny = y+1; 2.11759 + const float 2.11760 + dx = fx-x, 2.11761 + dy = fy-y; 2.11762 + if (z>=0 && z<dimz() && v>=0 && v<dimv()) { 2.11763 + if (y>=0 && y<dimy()) { 2.11764 + if (x>=0 && x<dimx()) { 2.11765 + const float w1 = (1-dx)*(1-dy), w2 = add?1:(1-w1); 2.11766 + (*this)(x,y,z,v) = (T)(w1*val + w2*(*this)(x,y,z,v)); 2.11767 + } 2.11768 + if (nx>=0 && nx<dimx()) { 2.11769 + const float w1 = dx*(1-dy), w2 = add?1:(1-w1); 2.11770 + (*this)(nx,y,z,v) = (T)(w1*val + w2*(*this)(nx,y,z,v)); 2.11771 + } 2.11772 + } 2.11773 + if (ny>=0 && ny<dimy()) { 2.11774 + if (x>=0 && x<dimx()) { 2.11775 + const float w1 = (1-dx)*dy, w2 = add?1:(1-w1); 2.11776 + (*this)(x,ny,z,v) = (T)(w1*val + w2*(*this)(x,ny,z,v)); 2.11777 + } 2.11778 + if (nx>=0 && nx<dimx()) { 2.11779 + const float w1 = dx*dy, w2 = add?1:(1-w1); 2.11780 + (*this)(nx,ny,z,v) = (T)(w1*val + w2*(*this)(nx,ny,z,v)); 2.11781 + } 2.11782 + } 2.11783 + } 2.11784 + return *this; 2.11785 + } 2.11786 + 2.11787 + //! Return a reference to the minimum pixel value of the instance image 2.11788 + const T& min() const { 2.11789 + if (is_empty()) 2.11790 + throw CImgInstanceException("CImg<%s>::min() : Instance image is empty.", 2.11791 + pixel_type()); 2.11792 + const T *ptrmin = data; 2.11793 + T min_value = *ptrmin; 2.11794 + cimg_for(*this,ptr,T) if ((*ptr)<min_value) min_value = *(ptrmin=ptr); 2.11795 + return *ptrmin; 2.11796 + } 2.11797 + 2.11798 + //! Return a reference to the minimum pixel value of the instance image 2.11799 + T& min() { 2.11800 + if (is_empty()) 2.11801 + throw CImgInstanceException("CImg<%s>::min() : Instance image is empty.", 2.11802 + pixel_type()); 2.11803 + T *ptrmin = data; 2.11804 + T min_value = *ptrmin; 2.11805 + cimg_for(*this,ptr,T) if ((*ptr)<min_value) min_value = *(ptrmin=ptr); 2.11806 + return *ptrmin; 2.11807 + } 2.11808 + 2.11809 + //! Return a reference to the maximum pixel value of the instance image 2.11810 + const T& max() const { 2.11811 + if (is_empty()) 2.11812 + throw CImgInstanceException("CImg<%s>::max() : Instance image is empty.", 2.11813 + pixel_type()); 2.11814 + const T *ptrmax = data; 2.11815 + T max_value = *ptrmax; 2.11816 + cimg_for(*this,ptr,T) if ((*ptr)>max_value) max_value = *(ptrmax=ptr); 2.11817 + return *ptrmax; 2.11818 + } 2.11819 + 2.11820 + //! Return a reference to the maximum pixel value of the instance image 2.11821 + T& max() { 2.11822 + if (is_empty()) 2.11823 + throw CImgInstanceException("CImg<%s>::max() : Instance image is empty.", 2.11824 + pixel_type()); 2.11825 + T *ptrmax = data; 2.11826 + T max_value = *ptrmax; 2.11827 + cimg_for(*this,ptr,T) if ((*ptr)>max_value) max_value = *(ptrmax=ptr); 2.11828 + return *ptrmax; 2.11829 + } 2.11830 + 2.11831 + //! Return a reference to the minimum pixel value and return also the maximum pixel value. 2.11832 + template<typename t> 2.11833 + const T& minmax(t& max_val) const { 2.11834 + if (is_empty()) 2.11835 + throw CImgInstanceException("CImg<%s>::minmax() : Instance image is empty.", 2.11836 + pixel_type()); 2.11837 + const T *ptrmin = data; 2.11838 + T min_value = *ptrmin, max_value = min_value; 2.11839 + cimg_for(*this,ptr,T) { 2.11840 + const T val = *ptr; 2.11841 + if (val<min_value) { min_value = val; ptrmin = ptr; } 2.11842 + if (val>max_value) max_value = val; 2.11843 + } 2.11844 + max_val = (t)max_value; 2.11845 + return *ptrmin; 2.11846 + } 2.11847 + 2.11848 + //! Return a reference to the minimum pixel value and return also the maximum pixel value. 2.11849 + template<typename t> 2.11850 + T& minmax(t& max_val) { 2.11851 + if (is_empty()) 2.11852 + throw CImgInstanceException("CImg<%s>::minmax() : Instance image is empty.", 2.11853 + pixel_type()); 2.11854 + T *ptrmin = data; 2.11855 + T min_value = *ptrmin, max_value = min_value; 2.11856 + cimg_for(*this,ptr,T) { 2.11857 + const T val = *ptr; 2.11858 + if (val<min_value) { min_value = val; ptrmin = ptr; } 2.11859 + if (val>max_value) max_value = val; 2.11860 + } 2.11861 + max_val = (t)max_value; 2.11862 + return *ptrmin; 2.11863 + } 2.11864 + 2.11865 + //! Return a reference to the maximum pixel value and return also the minimum pixel value. 2.11866 + template<typename t> 2.11867 + const T& maxmin(t& min_val) const { 2.11868 + if (is_empty()) 2.11869 + throw CImgInstanceException("CImg<%s>::maxmin() : Instance image is empty.", 2.11870 + pixel_type()); 2.11871 + const T *ptrmax = data; 2.11872 + T max_value = *ptrmax, min_value = max_value; 2.11873 + cimg_for(*this,ptr,T) { 2.11874 + const T val = *ptr; 2.11875 + if (val>max_value) { max_value = val; ptrmax = ptr; } 2.11876 + if (val<min_value) min_value = val; 2.11877 + } 2.11878 + min_val = (t)min_value; 2.11879 + return *ptrmax; 2.11880 + } 2.11881 + 2.11882 + //! Return a reference to the maximum pixel value and return also the minimum pixel value. 2.11883 + template<typename t> 2.11884 + T& maxmin(t& min_val) { 2.11885 + if (is_empty()) 2.11886 + throw CImgInstanceException("CImg<%s>::maxmin() : Instance image is empty.", 2.11887 + pixel_type()); 2.11888 + T *ptrmax = data; 2.11889 + T max_value = *ptrmax, min_value = max_value; 2.11890 + cimg_for(*this,ptr,T) { 2.11891 + const T val = *ptr; 2.11892 + if (val>max_value) { max_value = val; ptrmax = ptr; } 2.11893 + if (val<min_value) min_value = val; 2.11894 + } 2.11895 + min_val = (t)min_value; 2.11896 + return *ptrmax; 2.11897 + } 2.11898 + 2.11899 + //! Return the sum of all the pixel values in an image. 2.11900 + Tfloat sum() const { 2.11901 + if (is_empty()) 2.11902 + throw CImgInstanceException("CImg<%s>::sum() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.11903 + pixel_type(),width,height,depth,dim,data); 2.11904 + Tfloat res = 0; 2.11905 + cimg_for(*this,ptr,T) res+=*ptr; 2.11906 + return res; 2.11907 + } 2.11908 + 2.11909 + //! Return the mean pixel value of the instance image. 2.11910 + Tfloat mean() const { 2.11911 + if (is_empty()) 2.11912 + throw CImgInstanceException("CImg<%s>::mean() : Instance image is empty.", 2.11913 + pixel_type()); 2.11914 + Tfloat val = 0; 2.11915 + cimg_for(*this,ptr,T) val+=*ptr; 2.11916 + return val/size(); 2.11917 + } 2.11918 + 2.11919 + //! Return the variance of the image. 2.11920 + /** 2.11921 + @param variance_method Determines how to calculate the variance 2.11922 + <table border="0"> 2.11923 + <tr><td>0</td> 2.11924 + <td>Second moment: 2.11925 + @f$ v = 1/N \sum\limits_{k=1}^{N} (x_k - \bar x)^2 2.11926 + = 1/N \left( \sum\limits_{k=1}^N x_k^2 - \left( \sum\limits_{k=1}^N x_k \right)^2 / N \right) @f$ 2.11927 + with @f$ \bar x = 1/N \sum\limits_{k=1}^N x_k \f$</td></tr> 2.11928 + <tr><td>1</td> 2.11929 + <td>Best unbiased estimator: @f$ v = \frac{1}{N-1} \sum\limits_{k=1}^{N} (x_k - \bar x)^2 @f$</td></tr> 2.11930 + <tr><td>2</td> 2.11931 + <td>Least median of squares</td></tr> 2.11932 + <tr><td>3</td> 2.11933 + <td>Least trimmed of squares</td></tr> 2.11934 + </table> 2.11935 + */ 2.11936 + Tfloat variance(const unsigned int variance_method=1) const { 2.11937 + Tfloat foo; 2.11938 + return variancemean(variance_method,foo); 2.11939 + } 2.11940 + 2.11941 + //! Return the variance and the mean of the image. 2.11942 + template<typename t> 2.11943 + Tfloat variancemean(const unsigned int variance_method, t& mean) const { 2.11944 + if (is_empty()) 2.11945 + throw CImgInstanceException("CImg<%s>::variance() : Instance image is empty.", 2.11946 + pixel_type()); 2.11947 + Tfloat variance = 0, average = 0; 2.11948 + const unsigned int siz = size(); 2.11949 + switch (variance_method) { 2.11950 + case 3 : { // Least trimmed of Squares 2.11951 + CImg<Tfloat> buf(*this); 2.11952 + const unsigned int siz2 = siz>>1; 2.11953 + { cimg_for(buf,ptrs,Tfloat) { const Tfloat val = *ptrs; (*ptrs)*=val; average+=val; }} 2.11954 + buf.sort(); 2.11955 + Tfloat a = 0; 2.11956 + const Tfloat *ptrs = buf.ptr(); 2.11957 + for (unsigned int j = 0; j<siz2; ++j) a+=*(ptrs++); 2.11958 + const Tfloat sig = (Tfloat)(2.6477*cimg_std::sqrt(a/siz2)); 2.11959 + variance = sig*sig; 2.11960 + } break; 2.11961 + case 2 : { // Least Median of Squares (MAD) 2.11962 + CImg<Tfloat> buf(*this); 2.11963 + buf.sort(); 2.11964 + const unsigned int siz2 = siz>>1; 2.11965 + const Tfloat med_i = buf[siz2]; 2.11966 + cimg_for(buf,ptrs,Tfloat) { const Tfloat val = *ptrs; *ptrs = cimg::abs(val - med_i); average+=val; } 2.11967 + buf.sort(); 2.11968 + const Tfloat sig = (Tfloat)(1.4828*buf[siz2]); 2.11969 + variance = sig*sig; 2.11970 + } break; 2.11971 + case 1 : { // Least mean square (robust definition) 2.11972 + Tfloat S = 0, S2 = 0; 2.11973 + cimg_for(*this,ptr,T) { const Tfloat val = (Tfloat)*ptr; S+=val; S2+=val*val; } 2.11974 + variance = siz>1?(S2 - S*S/siz)/(siz - 1):0; 2.11975 + average = S; 2.11976 + } break; 2.11977 + case 0 :{ // Least mean square (standard definition) 2.11978 + Tfloat S = 0, S2 = 0; 2.11979 + cimg_for(*this,ptr,T) { const Tfloat val = (Tfloat)*ptr; S+=val; S2+=val*val; } 2.11980 + variance = (S2 - S*S/siz)/siz; 2.11981 + average = S; 2.11982 + } break; 2.11983 + default : 2.11984 + throw CImgArgumentException("CImg<%s>::variancemean() : Incorrect parameter 'variance_method = %d' (correct values are 0,1,2 or 3).", 2.11985 + pixel_type(),variance_method); 2.11986 + } 2.11987 + mean = (t)(average/siz); 2.11988 + return variance>0?variance:0; 2.11989 + } 2.11990 + 2.11991 + //! Return the kth smallest element of the image. 2.11992 + // (Adapted from the numerical recipies for CImg) 2.11993 + T kth_smallest(const unsigned int k) const { 2.11994 + if (is_empty()) 2.11995 + throw CImgInstanceException("CImg<%s>::kth_smallest() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.11996 + pixel_type(),width,height,depth,dim,data); 2.11997 + CImg<T> arr(*this); 2.11998 + unsigned long l = 0, ir = size()-1; 2.11999 + for (;;) { 2.12000 + if (ir<=l+1) { 2.12001 + if (ir==l+1 && arr[ir]<arr[l]) cimg::swap(arr[l],arr[ir]); 2.12002 + return arr[k]; 2.12003 + } else { 2.12004 + const unsigned long mid = (l+ir)>>1; 2.12005 + cimg::swap(arr[mid],arr[l+1]); 2.12006 + if (arr[l]>arr[ir]) cimg::swap(arr[l],arr[ir]); 2.12007 + if (arr[l+1]>arr[ir]) cimg::swap(arr[l+1],arr[ir]); 2.12008 + if (arr[l]>arr[l+1]) cimg::swap(arr[l],arr[l+1]); 2.12009 + unsigned long i = l+1, j = ir; 2.12010 + const T pivot = arr[l+1]; 2.12011 + for (;;) { 2.12012 + do ++i; while (arr[i]<pivot); 2.12013 + do --j; while (arr[j]>pivot); 2.12014 + if (j<i) break; 2.12015 + cimg::swap(arr[i],arr[j]); 2.12016 + } 2.12017 + arr[l+1] = arr[j]; 2.12018 + arr[j] = pivot; 2.12019 + if (j>=k) ir=j-1; 2.12020 + if (j<=k) l=i; 2.12021 + } 2.12022 + } 2.12023 + return 0; 2.12024 + } 2.12025 + 2.12026 + //! Compute a statistics vector (min,max,mean,variance,xmin,ymin,zmin,vmin,xmax,ymax,zmax,vmax). 2.12027 + CImg<T>& stats(const unsigned int variance_method=1) { 2.12028 + return get_stats(variance_method).transfer_to(*this); 2.12029 + } 2.12030 + 2.12031 + CImg<Tfloat> get_stats(const unsigned int variance_method=1) const { 2.12032 + if (is_empty()) return CImg<Tfloat>(); 2.12033 + const unsigned long siz = size(); 2.12034 + const T *const odata = data; 2.12035 + const T *pm = odata, *pM = odata; 2.12036 + Tfloat S = 0, S2 = 0; 2.12037 + T m = *pm, M = m; 2.12038 + cimg_for(*this,ptr,T) { 2.12039 + const T val = *ptr; 2.12040 + const Tfloat fval = (Tfloat)val; 2.12041 + if (val<m) { m = val; pm = ptr; } 2.12042 + if (val>M) { M = val; pM = ptr; } 2.12043 + S+=fval; 2.12044 + S2+=fval*fval; 2.12045 + } 2.12046 + const Tfloat 2.12047 + mean_value = S/siz, 2.12048 + _variance_value = variance_method==0?(S2 - S*S/siz)/siz: 2.12049 + (variance_method==1?(siz>1?(S2 - S*S/siz)/(siz - 1):0): 2.12050 + variance(variance_method)), 2.12051 + variance_value = _variance_value>0?_variance_value:0; 2.12052 + int 2.12053 + xm = 0, ym = 0, zm = 0, vm = 0, 2.12054 + xM = 0, yM = 0, zM = 0, vM = 0; 2.12055 + contains(*pm,xm,ym,zm,vm); 2.12056 + contains(*pM,xM,yM,zM,vM); 2.12057 + return CImg<Tfloat>(1,12).fill((Tfloat)m,(Tfloat)M,mean_value,variance_value, 2.12058 + (Tfloat)xm,(Tfloat)ym,(Tfloat)zm,(Tfloat)vm, 2.12059 + (Tfloat)xM,(Tfloat)yM,(Tfloat)zM,(Tfloat)vM); 2.12060 + } 2.12061 + 2.12062 + //! Return the median value of the image. 2.12063 + T median() const { 2.12064 + const unsigned int s = size(); 2.12065 + const T res = kth_smallest(s>>1); 2.12066 + return (s%2)?res:((res+kth_smallest((s>>1)-1))/2); 2.12067 + } 2.12068 + 2.12069 + //! Compute the MSE (Mean-Squared Error) between two images. 2.12070 + template<typename t> 2.12071 + Tfloat MSE(const CImg<t>& img) const { 2.12072 + if (img.size()!=size()) 2.12073 + throw CImgArgumentException("CImg<%s>::MSE() : Instance image (%u,%u,%u,%u) and given image (%u,%u,%u,%u) have different dimensions.", 2.12074 + pixel_type(),width,height,depth,dim,img.width,img.height,img.depth,img.dim); 2.12075 + 2.12076 + Tfloat vMSE = 0; 2.12077 + const t* ptr2 = img.end(); 2.12078 + cimg_for(*this,ptr1,T) { 2.12079 + const Tfloat diff = (Tfloat)*ptr1 - (Tfloat)*(--ptr2); 2.12080 + vMSE += diff*diff; 2.12081 + } 2.12082 + vMSE/=img.size(); 2.12083 + return vMSE; 2.12084 + } 2.12085 + 2.12086 + //! Compute the PSNR between two images. 2.12087 + template<typename t> 2.12088 + Tfloat PSNR(const CImg<t>& img, const Tfloat valmax=(Tfloat)255) const { 2.12089 + const Tfloat vMSE = (Tfloat)cimg_std::sqrt(MSE(img)); 2.12090 + return (vMSE!=0)?(Tfloat)(20*cimg_std::log10(valmax/vMSE)):(Tfloat)(cimg::type<Tfloat>::max()); 2.12091 + } 2.12092 + 2.12093 + //! Return the trace of the image, viewed as a matrix. 2.12094 + Tfloat trace() const { 2.12095 + if (is_empty()) 2.12096 + throw CImgInstanceException("CImg<%s>::trace() : Instance matrix (%u,%u,%u,%u,%p) is empty.", 2.12097 + pixel_type(),width,height,depth,dim,data); 2.12098 + Tfloat res = 0; 2.12099 + cimg_forX(*this,k) res+=(*this)(k,k); 2.12100 + return res; 2.12101 + } 2.12102 + 2.12103 + //! Return the dot product of the current vector/matrix with the vector/matrix \p img. 2.12104 + template<typename t> 2.12105 + Tfloat dot(const CImg<t>& img) const { 2.12106 + if (is_empty()) 2.12107 + throw CImgInstanceException("CImg<%s>::dot() : Instance object (%u,%u,%u,%u,%p) is empty.", 2.12108 + pixel_type(),width,height,depth,dim,data); 2.12109 + if (!img) 2.12110 + throw CImgArgumentException("CImg<%s>::trace() : Specified argument (%u,%u,%u,%u,%p) is empty.", 2.12111 + pixel_type(),img.width,img.height,img.depth,img.dim,img.data); 2.12112 + const unsigned long nb = cimg::min(size(),img.size()); 2.12113 + Tfloat res = 0; 2.12114 + for (unsigned long off = 0; off<nb; ++off) res+=(Tfloat)data[off]*(Tfloat)img[off]; 2.12115 + return res; 2.12116 + } 2.12117 + 2.12118 + //! Return the determinant of the image, viewed as a matrix. 2.12119 + Tfloat det() const { 2.12120 + if (is_empty() || width!=height || depth!=1 || dim!=1) 2.12121 + throw CImgInstanceException("CImg<%s>::det() : Instance matrix (%u,%u,%u,%u,%p) is not square or is empty.", 2.12122 + pixel_type(),width,height,depth,dim,data); 2.12123 + switch (width) { 2.12124 + case 1 : return (Tfloat)((*this)(0,0)); 2.12125 + case 2 : return (Tfloat)((*this)(0,0))*(Tfloat)((*this)(1,1)) - (Tfloat)((*this)(0,1))*(Tfloat)((*this)(1,0)); 2.12126 + case 3 : { 2.12127 + const Tfloat 2.12128 + a = (Tfloat)data[0], d = (Tfloat)data[1], g = (Tfloat)data[2], 2.12129 + b = (Tfloat)data[3], e = (Tfloat)data[4], h = (Tfloat)data[5], 2.12130 + c = (Tfloat)data[6], f = (Tfloat)data[7], i = (Tfloat)data[8]; 2.12131 + return i*a*e - a*h*f - i*b*d + b*g*f + c*d*h - c*g*e; 2.12132 + } 2.12133 + default : { 2.12134 + CImg<Tfloat> lu(*this); 2.12135 + CImg<uintT> indx; 2.12136 + bool d; 2.12137 + lu._LU(indx,d); 2.12138 + Tfloat res = d?(Tfloat)1:(Tfloat)-1; 2.12139 + cimg_forX(lu,i) res*=lu(i,i); 2.12140 + return res; 2.12141 + } 2.12142 + } 2.12143 + return 0; 2.12144 + } 2.12145 + 2.12146 + //! Return the norm of the current vector/matrix. \p ntype = norm type (0=L2, 1=L1, -1=Linf). 2.12147 + Tfloat norm(const int norm_type=2) const { 2.12148 + if (is_empty()) 2.12149 + throw CImgInstanceException("CImg<%s>::norm() : Instance object (%u,%u,%u,%u,%p) is empty.", 2.12150 + pixel_type(),width,height,depth,dim,data); 2.12151 + Tfloat res = 0; 2.12152 + switch (norm_type) { 2.12153 + case -1 : { 2.12154 + cimg_foroff(*this,off) { 2.12155 + const Tfloat tmp = cimg::abs((Tfloat)data[off]); 2.12156 + if (tmp>res) res = tmp; 2.12157 + } 2.12158 + return res; 2.12159 + } break; 2.12160 + case 1 : { 2.12161 + cimg_foroff(*this,off) res+=cimg::abs((Tfloat)data[off]); 2.12162 + return res; 2.12163 + } break; 2.12164 + case 2 : return (Tfloat)cimg_std::sqrt(dot(*this)); break; 2.12165 + default : 2.12166 + throw CImgArgumentException("CImg<%s>::norm() : Incorrect parameter 'norm_type=%d' (correct values are -1,1 or 2).", 2.12167 + pixel_type(),norm_type); 2.12168 + } 2.12169 + return 0; 2.12170 + } 2.12171 + 2.12172 + //! Return a C-string containing the values of the instance image. 2.12173 + CImg<charT> value_string(const char separator=',', const unsigned int max_size=0) const { 2.12174 + if (is_empty()) return CImg<charT>(1,1,1,1,0); 2.12175 + const unsigned int siz = (unsigned int)size(); 2.12176 + CImgList<charT> items; 2.12177 + char item[256] = { 0 }; 2.12178 + const T *ptrs = ptr(); 2.12179 + for (unsigned int off = 0; off<siz-1; ++off) { 2.12180 + cimg_std::sprintf(item,cimg::type<T>::format(),cimg::type<T>::format(*(ptrs++))); 2.12181 + const int l = cimg::strlen(item); 2.12182 + items.insert(CImg<charT>(item,l+1)); 2.12183 + items[items.size-1](l) = separator; 2.12184 + } 2.12185 + cimg_std::sprintf(item,cimg::type<T>::format(),cimg::type<T>::format(*ptrs)); 2.12186 + items.insert(CImg<charT>(item,cimg::strlen(item)+1)); 2.12187 + CImg<ucharT> res = items.get_append('x'); 2.12188 + if (max_size) { res.crop(0,max_size); res(max_size) = 0; } 2.12189 + return res; 2.12190 + } 2.12191 + 2.12192 + //! Display informations about the image on the standard error output. 2.12193 + /** 2.12194 + \param title Name for the considered image (optional). 2.12195 + \param display_stats Compute and display image statistics (optional). 2.12196 + **/ 2.12197 + const CImg<T>& print(const char *title=0, const bool display_stats=true) const { 2.12198 + int xm = 0, ym = 0, zm = 0, vm = 0, xM = 0, yM = 0, zM = 0, vM = 0; 2.12199 + static CImg<doubleT> st; 2.12200 + if (!is_empty() && display_stats) { 2.12201 + st = get_stats(); 2.12202 + xm = (int)st[4]; ym = (int)st[5], zm = (int)st[6], vm = (int)st[7]; 2.12203 + xM = (int)st[8]; yM = (int)st[9], zM = (int)st[10], vM = (int)st[11]; 2.12204 + } 2.12205 + const unsigned long siz = size(), msiz = siz*sizeof(T), siz1 = siz-1; 2.12206 + const unsigned int mdisp = msiz<8*1024?0:(msiz<8*1024*1024?1:2), width1 = width-1; 2.12207 + char ntitle[64] = { 0 }; 2.12208 + if (!title) cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); 2.12209 + cimg_std::fprintf(cimg_stdout,"%s: this = %p, size = (%u,%u,%u,%u) [%lu %s], data = (%s*)%p (%s) = [ ", 2.12210 + title?title:ntitle,(void*)this,width,height,depth,dim, 2.12211 + mdisp==0?msiz:(mdisp==1?(msiz>>10):(msiz>>20)), 2.12212 + mdisp==0?"b":(mdisp==1?"Kb":"Mb"), 2.12213 + pixel_type(),(void*)data,is_shared?"shared":"not shared"); 2.12214 + if (!is_empty()) cimg_foroff(*this,off) { 2.12215 + cimg_std::fprintf(cimg_stdout,cimg::type<T>::format(),cimg::type<T>::format(data[off])); 2.12216 + if (off!=siz1) cimg_std::fprintf(cimg_stdout,"%s",off%width==width1?" ; ":" "); 2.12217 + if (off==7 && siz>16) { off = siz1-8; if (off!=7) cimg_std::fprintf(cimg_stdout,"... "); } 2.12218 + } 2.12219 + if (!is_empty() && display_stats) 2.12220 + cimg_std::fprintf(cimg_stdout," ], min = %g, max = %g, mean = %g, std = %g, coords(min) = (%u,%u,%u,%u), coords(max) = (%u,%u,%u,%u).\n", 2.12221 + st[0],st[1],st[2],cimg_std::sqrt(st[3]),xm,ym,zm,vm,xM,yM,zM,vM); 2.12222 + else cimg_std::fprintf(cimg_stdout,"%s].\n",is_empty()?"":" "); 2.12223 + return *this; 2.12224 + } 2.12225 + 2.12226 + //@} 2.12227 + //------------------------------------------ 2.12228 + // 2.12229 + //! \name Arithmetic and Boolean Operators 2.12230 + //@{ 2.12231 + //------------------------------------------ 2.12232 + 2.12233 + //! Assignment operator. 2.12234 + /** 2.12235 + This operator assigns a copy of the input image \p img to the current instance image. 2.12236 + \param img The input image to copy. 2.12237 + \remark 2.12238 + - This operator is strictly equivalent to the function assign(const CImg< t >&) and has exactly the same properties. 2.12239 + **/ 2.12240 + template<typename t> 2.12241 + CImg<T>& operator=(const CImg<t>& img) { 2.12242 + return assign(img); 2.12243 + } 2.12244 + 2.12245 + CImg<T>& operator=(const CImg<T>& img) { 2.12246 + return assign(img); 2.12247 + } 2.12248 + 2.12249 + //! Assign values of a C-array to the instance image. 2.12250 + /** 2.12251 + \param buf Pointer to a C-style array having a size of (at least) <tt>this->size()</tt>. 2.12252 + 2.12253 + - Replace pixel values by the content of the array \c buf. 2.12254 + - Warning : the value types in the array and in the image must be the same. 2.12255 + 2.12256 + \par example: 2.12257 + \code 2.12258 + float tab[4*4] = { 1,2,3,4, 5,6,7,8, 9,10,11,12, 13,14,15,16 }; // Define a 4x4 matrix in C-style. 2.12259 + CImg<float> matrice(4,4); // Define a 4x4 greyscale image. 2.12260 + matrice = tab; // Fill the image by the values in tab. 2.12261 + \endcode 2.12262 + **/ 2.12263 + CImg<T>& operator=(const T *buf) { 2.12264 + return assign(buf,width,height,depth,dim); 2.12265 + } 2.12266 + 2.12267 + //! Assign a value to each image pixel of the instance image. 2.12268 + CImg<T>& operator=(const T val) { 2.12269 + return fill(val); 2.12270 + } 2.12271 + 2.12272 + //! Operator+ 2.12273 + /** 2.12274 + \remark 2.12275 + - This operator can be used to get a non-shared copy of an image. 2.12276 + **/ 2.12277 + CImg<T> operator+() const { 2.12278 + return CImg<T>(*this,false); 2.12279 + } 2.12280 + 2.12281 + //! Operator+=; 2.12282 +#ifdef cimg_use_visualcpp6 2.12283 + CImg<T>& operator+=(const T val) 2.12284 +#else 2.12285 + template<typename t> 2.12286 + CImg<T>& operator+=(const t val) 2.12287 +#endif 2.12288 + { 2.12289 + cimg_for(*this,ptr,T) (*ptr) = (T)((*ptr)+val); 2.12290 + return *this; 2.12291 + } 2.12292 + 2.12293 + //! Operator+= 2.12294 + template<typename t> 2.12295 + CImg<T>& operator+=(const CImg<t>& img) { 2.12296 + if (is_overlapped(img)) return *this+=+img; 2.12297 + const unsigned int smin = cimg::min(size(),img.size()); 2.12298 + t *ptrs = img.data + smin; 2.12299 + for (T *ptrd = data + smin; ptrd>data; --ptrd, (*ptrd)=(T)((*ptrd)+(*(--ptrs)))) {} 2.12300 + return *this; 2.12301 + } 2.12302 + 2.12303 + //! Operator++ (prefix) 2.12304 + CImg<T>& operator++() { 2.12305 + cimg_for(*this,ptr,T) ++(*ptr); 2.12306 + return *this; 2.12307 + } 2.12308 + 2.12309 + //! Operator++ (postfix) 2.12310 + CImg<T> operator++(int) { 2.12311 + const CImg<T> copy(*this,false); 2.12312 + ++*this; 2.12313 + return copy; 2.12314 + } 2.12315 + 2.12316 + //! Operator-. 2.12317 + CImg<T> operator-() const { 2.12318 + return CImg<T>(width,height,depth,dim,0)-=*this; 2.12319 + } 2.12320 + 2.12321 + //! Operator-=. 2.12322 +#ifdef cimg_use_visualcpp6 2.12323 + CImg<T>& operator-=(const T val) 2.12324 +#else 2.12325 + template<typename t> 2.12326 + CImg<T>& operator-=(const t val) 2.12327 +#endif 2.12328 + { 2.12329 + cimg_for(*this,ptr,T) (*ptr) = (T)((*ptr)-val); 2.12330 + return *this; 2.12331 + } 2.12332 + 2.12333 + //! Operator-=. 2.12334 + template<typename t> 2.12335 + CImg<T>& operator-=(const CImg<t>& img) { 2.12336 + if (is_overlapped(img)) return *this-=+img; 2.12337 + const unsigned int smin = cimg::min(size(),img.size()); 2.12338 + t *ptrs = img.data+smin; 2.12339 + for (T *ptrd = data+smin; ptrd>data; --ptrd, (*ptrd) = (T)((*ptrd)-(*(--ptrs)))) {} 2.12340 + return *this; 2.12341 + } 2.12342 + 2.12343 + //! Operator-- (prefix). 2.12344 + CImg<T>& operator--() { 2.12345 + cimg_for(*this,ptr,T) *ptr = *ptr-(T)1; 2.12346 + return *this; 2.12347 + } 2.12348 + 2.12349 + //! Operator-- (postfix). 2.12350 + CImg<T> operator--(int) { 2.12351 + CImg<T> copy(*this,false); 2.12352 + --*this; 2.12353 + return copy; 2.12354 + } 2.12355 + 2.12356 + //! Operator*=. 2.12357 +#ifdef cimg_use_visualcpp6 2.12358 + CImg<T>& operator*=(const double val) 2.12359 +#else 2.12360 + template<typename t> 2.12361 + CImg<T>& operator*=(const t val) 2.12362 +#endif 2.12363 + { 2.12364 + cimg_for(*this,ptr,T) (*ptr) = (T)((*ptr)*val); 2.12365 + return *this; 2.12366 + } 2.12367 + 2.12368 + //! Operator*=. 2.12369 + template<typename t> 2.12370 + CImg<T>& operator*=(const CImg<t>& img) { 2.12371 + return ((*this)*img).transfer_to(*this); 2.12372 + } 2.12373 + 2.12374 + //! Operator/=. 2.12375 +#ifdef cimg_use_visualcpp6 2.12376 + CImg<T>& operator/=(const double val) 2.12377 +#else 2.12378 + template<typename t> 2.12379 + CImg<T>& operator/=(const t val) 2.12380 +#endif 2.12381 + { 2.12382 + cimg_for(*this,ptr,T) (*ptr) = (T)((*ptr)/val); 2.12383 + return *this; 2.12384 + } 2.12385 + 2.12386 + //! Operator/=. 2.12387 + template<typename t> 2.12388 + CImg<T>& operator/=(const CImg<t>& img) { 2.12389 + return assign(*this*img.get_invert()); 2.12390 + } 2.12391 + 2.12392 + //! Modulo. 2.12393 + template<typename t> 2.12394 + CImg<typename cimg::superset<T,t>::type> operator%(const CImg<t>& img) const { 2.12395 + typedef typename cimg::superset<T,t>::type Tt; 2.12396 + return CImg<Tt>(*this,false)%=img; 2.12397 + } 2.12398 + 2.12399 + //! Modulo. 2.12400 + CImg<T> operator%(const T val) const { 2.12401 + return (+*this)%=val; 2.12402 + } 2.12403 + 2.12404 + //! In-place modulo. 2.12405 + CImg<T>& operator%=(const T val) { 2.12406 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg::mod(*ptr,val); 2.12407 + return *this; 2.12408 + } 2.12409 + 2.12410 + //! In-place modulo. 2.12411 + template<typename t> 2.12412 + CImg<T>& operator%=(const CImg<t>& img) { 2.12413 + if (is_overlapped(img)) return *this%=+img; 2.12414 + typedef typename cimg::superset<T,t>::type Tt; 2.12415 + const unsigned int smin = cimg::min(size(),img.size()); 2.12416 + const t *ptrs = img.data + smin; 2.12417 + for (T *ptrd = data + smin; ptrd>data; ) { 2.12418 + T& val = *(--ptrd); 2.12419 + val = (T)cimg::mod((Tt)val,(Tt)*(--ptrs)); 2.12420 + } 2.12421 + return *this; 2.12422 + } 2.12423 + 2.12424 + //! Bitwise AND. 2.12425 + template<typename t> 2.12426 + CImg<typename cimg::superset<T,t>::type> operator&(const CImg<t>& img) const { 2.12427 + typedef typename cimg::superset<T,t>::type Tt; 2.12428 + return CImg<Tt>(*this,false)&=img; 2.12429 + } 2.12430 + 2.12431 + //! Bitwise AND. 2.12432 + CImg<T> operator&(const T val) const { 2.12433 + return (+*this)&=val; 2.12434 + } 2.12435 + 2.12436 + //! In-place bitwise AND. 2.12437 + template<typename t> 2.12438 + CImg<T>& operator&=(const CImg<t>& img) { 2.12439 + if (is_overlapped(img)) return *this&=+img; 2.12440 + const unsigned int smin = cimg::min(size(),img.size()); 2.12441 + const t *ptrs = img.data + smin; 2.12442 + for (T *ptrd = data + smin; ptrd>data; ) { 2.12443 + T& val = *(--ptrd); 2.12444 + val = (T)((unsigned long)val & (unsigned long)*(--ptrs)); 2.12445 + } 2.12446 + return *this; 2.12447 + } 2.12448 + 2.12449 + //! In-place bitwise AND. 2.12450 + CImg<T>& operator&=(const T val) { 2.12451 + cimg_for(*this,ptr,T) *ptr = (T)((unsigned long)*ptr & (unsigned long)val); 2.12452 + return *this; 2.12453 + } 2.12454 + 2.12455 + //! Bitwise OR. 2.12456 + template<typename t> 2.12457 + CImg<typename cimg::superset<T,t>::type> operator|(const CImg<t>& img) const { 2.12458 + typedef typename cimg::superset<T,t>::type Tt; 2.12459 + return CImg<Tt>(*this,false)|=img; 2.12460 + } 2.12461 + 2.12462 + //! Bitwise OR. 2.12463 + CImg<T> operator|(const T val) const { 2.12464 + return (+*this)|=val; 2.12465 + } 2.12466 + 2.12467 + //! In-place bitwise OR. 2.12468 + template<typename t> 2.12469 + CImg<T>& operator|=(const CImg<t>& img) { 2.12470 + if (is_overlapped(img)) return *this|=+img; 2.12471 + const unsigned int smin = cimg::min(size(),img.size()); 2.12472 + const t *ptrs = img.data + smin; 2.12473 + for (T *ptrd = data + smin; ptrd>data; ) { 2.12474 + T& val = *(--ptrd); 2.12475 + val = (T)((unsigned long)val | (unsigned long)*(--ptrs)); 2.12476 + } 2.12477 + return *this; 2.12478 + } 2.12479 + 2.12480 + //! In-place bitwise OR. 2.12481 + CImg<T>& operator|=(const T val) { 2.12482 + cimg_for(*this,ptr,T) *ptr = (T)((unsigned long)*ptr | (unsigned long)val); 2.12483 + return *this; 2.12484 + } 2.12485 + 2.12486 + //! Bitwise XOR. 2.12487 + template<typename t> 2.12488 + CImg<typename cimg::superset<T,t>::type> operator^(const CImg<t>& img) const { 2.12489 + typedef typename cimg::superset<T,t>::type Tt; 2.12490 + return CImg<Tt>(*this,false)^=img; 2.12491 + } 2.12492 + 2.12493 + //! Bitwise XOR. 2.12494 + CImg<T> operator^(const T val) const { 2.12495 + return (+*this)^=val; 2.12496 + } 2.12497 + 2.12498 + //! In-place bitwise XOR. 2.12499 + template<typename t> 2.12500 + CImg<T>& operator^=(const CImg<t>& img) { 2.12501 + if (is_overlapped(img)) return *this^=+img; 2.12502 + const unsigned int smin = cimg::min(size(),img.size()); 2.12503 + const t *ptrs = img.data + smin; 2.12504 + for (T *ptrd = data+smin; ptrd>data; ) { 2.12505 + T& val = *(--ptrd); 2.12506 + val =(T)((unsigned long)val ^ (unsigned long)*(--ptrs)); 2.12507 + } 2.12508 + return *this; 2.12509 + } 2.12510 + 2.12511 + //! In-place bitwise XOR. 2.12512 + CImg<T>& operator^=(const T val) { 2.12513 + cimg_for(*this,ptr,T) *ptr = (T)((unsigned long)*ptr ^ (unsigned long)val); 2.12514 + return *this; 2.12515 + } 2.12516 + 2.12517 + //! Bitwise NOT. 2.12518 + CImg<T> operator~() const { 2.12519 + CImg<T> res(width,height,depth,dim); 2.12520 + const T *ptrs = end(); 2.12521 + cimg_for(res,ptrd,T) { const unsigned long val = (unsigned long)*(--ptrs); *ptrd = (T)~val; } 2.12522 + return res; 2.12523 + } 2.12524 + 2.12525 + //! Bitwise left shift. 2.12526 + CImg<T>& operator<<=(const int n) { 2.12527 + cimg_for(*this,ptr,T) *ptr = (T)(((long)*ptr)<<n); 2.12528 + return *this; 2.12529 + } 2.12530 + 2.12531 + //! Bitwise left shift. 2.12532 + CImg<T> operator<<(const int n) const { 2.12533 + return (+*this)<<=n; 2.12534 + } 2.12535 + 2.12536 + //! Bitwise right shift. 2.12537 + CImg<T>& operator>>=(const int n) { 2.12538 + cimg_for(*this,ptr,T) *ptr = (T)(((long)*ptr)>>n); 2.12539 + return *this; 2.12540 + } 2.12541 + 2.12542 + //! Bitwise right shift. 2.12543 + CImg<T> operator>>(const int n) const { 2.12544 + return (+*this)>>=n; 2.12545 + } 2.12546 + 2.12547 + //! Boolean equality. 2.12548 + template<typename t> 2.12549 + bool operator==(const CImg<t>& img) const { 2.12550 + const unsigned int siz = size(); 2.12551 + bool vequal = true; 2.12552 + if (siz!=img.size()) return false; 2.12553 + t *ptrs = img.data + siz; 2.12554 + for (T *ptrd = data + siz; vequal && ptrd>data; vequal = vequal && ((*(--ptrd))==(*(--ptrs)))) {} 2.12555 + return vequal; 2.12556 + } 2.12557 + 2.12558 + //! Boolean difference. 2.12559 + template<typename t> 2.12560 + bool operator!=(const CImg<t>& img) const { 2.12561 + return !((*this)==img); 2.12562 + } 2.12563 + 2.12564 + //! Return a list of two images { *this, img }. 2.12565 + template<typename t> 2.12566 + CImgList<typename cimg::superset<T,t>::type> operator<<(const CImg<t>& img) const { 2.12567 + typedef typename cimg::superset<T,t>::type Tt; 2.12568 + return CImgList<Tt>(*this,img); 2.12569 + } 2.12570 + 2.12571 + //! Return a copy of \p list, where image *this has been inserted at first position. 2.12572 + template<typename t> 2.12573 + CImgList<typename cimg::superset<T,t>::type> operator<<(const CImgList<t>& list) const { 2.12574 + typedef typename cimg::superset<T,t>::type Tt; 2.12575 + return CImgList<Tt>(list).insert(*this,0); 2.12576 + } 2.12577 + 2.12578 + //! Return a list of two images { *this, img }. 2.12579 + template<typename t> 2.12580 + CImgList<typename cimg::superset<T,t>::type> operator>>(const CImg<t>& img) const { 2.12581 + return (*this)<<img; 2.12582 + } 2.12583 + 2.12584 + //! Insert an image into the begining of an image list. 2.12585 + template<typename t> 2.12586 + CImgList<t>& operator>>(const CImgList<t>& list) const { 2.12587 + return list.insert(*this,0); 2.12588 + } 2.12589 + 2.12590 + //! Display an image into a CImgDisplay. 2.12591 + const CImg<T>& operator>>(CImgDisplay& disp) const { 2.12592 + return display(disp); 2.12593 + } 2.12594 + 2.12595 + //@} 2.12596 + //--------------------------------------- 2.12597 + // 2.12598 + //! \name Usual Mathematics Functions 2.12599 + //@{ 2.12600 + //--------------------------------------- 2.12601 + 2.12602 + //! Apply a R->R function on all pixel values. 2.12603 + template<typename t> 2.12604 + CImg<T>& apply(t& func) { 2.12605 + cimg_for(*this,ptr,T) *ptr = func(*ptr); 2.12606 + return *this; 2.12607 + } 2.12608 + 2.12609 + template<typename t> 2.12610 + CImg<T> get_apply(t& func) const { 2.12611 + return (+*this).apply(func); 2.12612 + } 2.12613 + 2.12614 + //! Pointwise multiplication between two images. 2.12615 + template<typename t> 2.12616 + CImg<T>& mul(const CImg<t>& img) { 2.12617 + if (is_overlapped(img)) return mul(+img); 2.12618 + t *ptrs = img.data; 2.12619 + T *ptrf = data + cimg::min(size(),img.size()); 2.12620 + for (T* ptrd = data; ptrd<ptrf; ++ptrd) (*ptrd) = (T)(*ptrd*(*(ptrs++))); 2.12621 + return *this; 2.12622 + } 2.12623 + 2.12624 + template<typename t> 2.12625 + CImg<typename cimg::superset<T,t>::type> get_mul(const CImg<t>& img) const { 2.12626 + typedef typename cimg::superset<T,t>::type Tt; 2.12627 + return CImg<Tt>(*this,false).mul(img); 2.12628 + } 2.12629 + 2.12630 + //! Pointwise division between two images. 2.12631 + template<typename t> 2.12632 + CImg<T>& div(const CImg<t>& img) { 2.12633 + if (is_overlapped(img)) return div(+img); 2.12634 + t *ptrs = img.data; 2.12635 + T *ptrf = data + cimg::min(size(),img.size()); 2.12636 + for (T* ptrd = data; ptrd<ptrf; ++ptrd) (*ptrd) = (T)(*ptrd/(*(ptrs++))); 2.12637 + return *this; 2.12638 + } 2.12639 + 2.12640 + template<typename t> 2.12641 + CImg<typename cimg::superset<T,t>::type> get_div(const CImg<t>& img) const { 2.12642 + typedef typename cimg::superset<T,t>::type Tt; 2.12643 + return CImg<Tt>(*this,false).div(img); 2.12644 + } 2.12645 + 2.12646 + //! Pointwise max operator between two images. 2.12647 + template<typename t> 2.12648 + CImg<T>& max(const CImg<t>& img) { 2.12649 + if (is_overlapped(img)) return max(+img); 2.12650 + t *ptrs = img.data; 2.12651 + T *ptrf = data + cimg::min(size(),img.size()); 2.12652 + for (T* ptrd = data; ptrd<ptrf; ++ptrd) (*ptrd) = cimg::max((T)*(ptrs++),*ptrd); 2.12653 + return *this; 2.12654 + } 2.12655 + 2.12656 + template<typename t> 2.12657 + CImg<typename cimg::superset<T,t>::type> get_max(const CImg<t>& img) const { 2.12658 + typedef typename cimg::superset<T,t>::type Tt; 2.12659 + return CImg<Tt>(*this,false).max(img); 2.12660 + } 2.12661 + 2.12662 + //! Pointwise max operator between an image and a value. 2.12663 + CImg<T>& max(const T val) { 2.12664 + cimg_for(*this,ptr,T) (*ptr) = cimg::max(*ptr,val); 2.12665 + return *this; 2.12666 + } 2.12667 + 2.12668 + CImg<T> get_max(const T val) const { 2.12669 + return (+*this).max(val); 2.12670 + } 2.12671 + 2.12672 + //! Pointwise min operator between two images. 2.12673 + template<typename t> 2.12674 + CImg<T>& min(const CImg<t>& img) { 2.12675 + if (is_overlapped(img)) return min(+img); 2.12676 + t *ptrs = img.data; 2.12677 + T *ptrf = data + cimg::min(size(),img.size()); 2.12678 + for (T* ptrd = data; ptrd<ptrf; ++ptrd) (*ptrd) = cimg::min((T)*(ptrs++),*ptrd); 2.12679 + return *this; 2.12680 + } 2.12681 + 2.12682 + template<typename t> 2.12683 + CImg<typename cimg::superset<T,t>::type> get_min(const CImg<t>& img) const { 2.12684 + typedef typename cimg::superset<T,t>::type Tt; 2.12685 + return CImg<Tt>(*this,false).min(img); 2.12686 + } 2.12687 + 2.12688 + //! Pointwise min operator between an image and a value. 2.12689 + CImg<T>& min(const T val) { 2.12690 + cimg_for(*this,ptr,T) (*ptr) = cimg::min(*ptr,val); 2.12691 + return *this; 2.12692 + } 2.12693 + 2.12694 + CImg<T> get_min(const T val) const { 2.12695 + return (+*this).min(val); 2.12696 + } 2.12697 + 2.12698 + //! Compute the square value of each pixel. 2.12699 + CImg<T>& sqr() { 2.12700 + cimg_for(*this,ptr,T) { const T val = *ptr; *ptr = (T)(val*val); }; 2.12701 + return *this; 2.12702 + } 2.12703 + 2.12704 + CImg<Tfloat> get_sqr() const { 2.12705 + return CImg<Tfloat>(*this,false).sqr(); 2.12706 + } 2.12707 + 2.12708 + //! Compute the square root of each pixel value. 2.12709 + CImg<T>& sqrt() { 2.12710 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::sqrt((double)(*ptr)); 2.12711 + return *this; 2.12712 + } 2.12713 + 2.12714 + CImg<Tfloat> get_sqrt() const { 2.12715 + return CImg<Tfloat>(*this,false).sqrt(); 2.12716 + } 2.12717 + 2.12718 + //! Compute the exponential of each pixel value. 2.12719 + CImg<T>& exp() { 2.12720 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::exp((double)(*ptr)); 2.12721 + return *this; 2.12722 + } 2.12723 + 2.12724 + CImg<Tfloat> get_exp() const { 2.12725 + return CImg<Tfloat>(*this,false).exp(); 2.12726 + } 2.12727 + 2.12728 + //! Compute the log of each each pixel value. 2.12729 + CImg<T>& log() { 2.12730 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::log((double)(*ptr)); 2.12731 + return *this; 2.12732 + } 2.12733 + 2.12734 + CImg<Tfloat> get_log() const { 2.12735 + return CImg<Tfloat>(*this,false).log(); 2.12736 + } 2.12737 + 2.12738 + //! Compute the log10 of each each pixel value. 2.12739 + CImg<T>& log10() { 2.12740 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::log10((double)(*ptr)); 2.12741 + return *this; 2.12742 + } 2.12743 + 2.12744 + CImg<Tfloat> get_log10() const { 2.12745 + return CImg<Tfloat>(*this,false).log10(); 2.12746 + } 2.12747 + 2.12748 + //! Compute the power by p of each pixel value. 2.12749 + CImg<T>& pow(const double p) { 2.12750 + if (p==0) return fill(1); 2.12751 + if (p==0.5) { cimg_for(*this,ptr,T) { const T val = *ptr; *ptr = (T)cimg_std::sqrt((double)val); } return *this; } 2.12752 + if (p==1) return *this; 2.12753 + if (p==2) { cimg_for(*this,ptr,T) { const T val = *ptr; *ptr = val*val; } return *this; } 2.12754 + if (p==3) { cimg_for(*this,ptr,T) { const T val = *ptr; *ptr = val*val*val; } return *this; } 2.12755 + if (p==4) { cimg_for(*this,ptr,T) { const T val = *ptr; *ptr = val*val*val*val; } return *this; } 2.12756 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::pow((double)(*ptr),p); 2.12757 + return *this; 2.12758 + } 2.12759 + 2.12760 + CImg<Tfloat> get_pow(const double p) const { 2.12761 + return CImg<Tfloat>(*this,false).pow(p); 2.12762 + } 2.12763 + 2.12764 + //! Compute the power of each pixel value. 2.12765 + template<typename t> 2.12766 + CImg<T>& pow(const CImg<t>& img) { 2.12767 + if (is_overlapped(img)) return pow(+img); 2.12768 + t *ptrs = img.data; 2.12769 + T *ptrf = data + cimg::min(size(),img.size()); 2.12770 + for (T* ptrd = data; ptrd<ptrf; ++ptrd) (*ptrd) = (T)cimg_std::pow((double)*ptrd,(double)(*(ptrs++))); 2.12771 + return *this; 2.12772 + } 2.12773 + 2.12774 + template<typename t> 2.12775 + CImg<Tfloat> get_pow(const CImg<t>& img) const { 2.12776 + return CImg<Tfloat>(*this,false).pow(img); 2.12777 + } 2.12778 + 2.12779 + //! Compute the absolute value of each pixel value. 2.12780 + CImg<T>& abs() { 2.12781 + cimg_for(*this,ptr,T) (*ptr) = cimg::abs(*ptr); 2.12782 + return *this; 2.12783 + } 2.12784 + 2.12785 + CImg<Tfloat> get_abs() const { 2.12786 + return CImg<Tfloat>(*this,false).abs(); 2.12787 + } 2.12788 + 2.12789 + //! Compute the cosinus of each pixel value. 2.12790 + CImg<T>& cos() { 2.12791 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::cos((double)(*ptr)); 2.12792 + return *this; 2.12793 + } 2.12794 + 2.12795 + CImg<Tfloat> get_cos() const { 2.12796 + return CImg<Tfloat>(*this,false).cos(); 2.12797 + } 2.12798 + 2.12799 + //! Compute the sinus of each pixel value. 2.12800 + CImg<T>& sin() { 2.12801 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::sin((double)(*ptr)); 2.12802 + return *this; 2.12803 + } 2.12804 + 2.12805 + CImg<Tfloat> get_sin() const { 2.12806 + return CImg<Tfloat>(*this,false).sin(); 2.12807 + } 2.12808 + 2.12809 + //! Compute the tangent of each pixel. 2.12810 + CImg<T>& tan() { 2.12811 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::tan((double)(*ptr)); 2.12812 + return *this; 2.12813 + } 2.12814 + 2.12815 + CImg<Tfloat> get_tan() const { 2.12816 + return CImg<Tfloat>(*this,false).tan(); 2.12817 + } 2.12818 + 2.12819 + //! Compute the arc-cosine of each pixel value. 2.12820 + CImg<T>& acos() { 2.12821 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::acos((double)(*ptr)); 2.12822 + return *this; 2.12823 + } 2.12824 + 2.12825 + CImg<Tfloat> get_acos() const { 2.12826 + return CImg<Tfloat>(*this,false).acos(); 2.12827 + } 2.12828 + 2.12829 + //! Compute the arc-sinus of each pixel value. 2.12830 + CImg<T>& asin() { 2.12831 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::asin((double)(*ptr)); 2.12832 + return *this; 2.12833 + } 2.12834 + 2.12835 + CImg<Tfloat> get_asin() const { 2.12836 + return CImg<Tfloat>(*this,false).asin(); 2.12837 + } 2.12838 + 2.12839 + //! Compute the arc-tangent of each pixel. 2.12840 + CImg<T>& atan() { 2.12841 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg_std::atan((double)(*ptr)); 2.12842 + return *this; 2.12843 + } 2.12844 + 2.12845 + CImg<Tfloat> get_atan() const { 2.12846 + return CImg<Tfloat>(*this,false).atan(); 2.12847 + } 2.12848 + 2.12849 + //! Compute image with rounded pixel values. 2.12850 + /** 2.12851 + \param x Rounding precision. 2.12852 + \param rounding_type Roundin type, can be 0 (nearest), 1 (forward), -1(backward). 2.12853 + **/ 2.12854 + CImg<T>& round(const float x, const int rounding_type=0) { 2.12855 + cimg_for(*this,ptr,T) (*ptr) = (T)cimg::round(*ptr,x,rounding_type); 2.12856 + return *this; 2.12857 + } 2.12858 + 2.12859 + CImg<T> get_round(const float x, const unsigned int rounding_type=0) const { 2.12860 + return (+*this).round(x,rounding_type); 2.12861 + } 2.12862 + 2.12863 + //! Fill the instance image with random values between specified range. 2.12864 + CImg<T>& rand(const T val_min, const T val_max) { 2.12865 + const float delta = (float)val_max - (float)val_min; 2.12866 + cimg_for(*this,ptr,T) *ptr = (T)(val_min + cimg::rand()*delta); 2.12867 + return *this; 2.12868 + } 2.12869 + 2.12870 + CImg<T> get_rand(const T val_min, const T val_max) const { 2.12871 + return (+*this).rand(val_min,val_max); 2.12872 + } 2.12873 + 2.12874 + //@} 2.12875 + //----------------------------------- 2.12876 + // 2.12877 + //! \name Usual Image Transformations 2.12878 + //@{ 2.12879 + //----------------------------------- 2.12880 + 2.12881 + //! Fill an image by a value \p val. 2.12882 + /** 2.12883 + \param val = fill value 2.12884 + \note All pixel values of the instance image will be initialized by \p val. 2.12885 + **/ 2.12886 + CImg<T>& fill(const T val) { 2.12887 + if (is_empty()) return *this; 2.12888 + if (val && sizeof(T)!=1) cimg_for(*this,ptr,T) *ptr = val; 2.12889 + else cimg_std::memset(data,(int)val,size()*sizeof(T)); 2.12890 + return *this; 2.12891 + } 2.12892 + 2.12893 + CImg<T> get_fill(const T val) const { 2.12894 + return CImg<T>(width,height,depth,dim).fill(val); 2.12895 + } 2.12896 + 2.12897 + //! Fill sequentially all pixel values with values \a val0 and \a val1 respectively. 2.12898 + CImg<T>& fill(const T val0, const T val1) { 2.12899 + if (is_empty()) return *this; 2.12900 + T *ptr, *ptr_end = end()-1; 2.12901 + for (ptr = data; ptr<ptr_end; ) { *(ptr++) = val0; *(ptr++) = val1; } 2.12902 + if (ptr!=ptr_end+1) *(ptr++) = val0; 2.12903 + return *this; 2.12904 + } 2.12905 + 2.12906 + CImg<T> get_fill(const T val0, const T val1) const { 2.12907 + return CImg<T>(width,height,depth,dim).fill(val0,val1); 2.12908 + } 2.12909 + 2.12910 + //! Fill sequentially all pixel values with values \a val0 and \a val1 and \a val2. 2.12911 + CImg<T>& fill(const T val0, const T val1, const T val2) { 2.12912 + if (is_empty()) return *this; 2.12913 + T *ptr, *ptr_end = end()-2; 2.12914 + for (ptr = data; ptr<ptr_end; ) { *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; } 2.12915 + ptr_end+=2; 2.12916 + switch (ptr_end-ptr) { 2.12917 + case 2 : *(--ptr_end) = val1; 2.12918 + case 1 : *(--ptr_end) = val0; 2.12919 + } 2.12920 + return *this; 2.12921 + } 2.12922 + 2.12923 + CImg<T> get_fill(const T val0, const T val1, const T val2) const { 2.12924 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2); 2.12925 + } 2.12926 + 2.12927 + //! Fill sequentially all pixel values with values \a val0 and \a val1 and \a val2 and \a val3. 2.12928 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3) { 2.12929 + if (is_empty()) return *this; 2.12930 + T *ptr, *ptr_end = end()-3; 2.12931 + for (ptr = data; ptr<ptr_end; ) { *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; } 2.12932 + ptr_end+=3; 2.12933 + switch (ptr_end-ptr) { 2.12934 + case 3 : *(--ptr_end) = val2; 2.12935 + case 2 : *(--ptr_end) = val1; 2.12936 + case 1 : *(--ptr_end) = val0; 2.12937 + } 2.12938 + return *this; 2.12939 + } 2.12940 + 2.12941 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3) const { 2.12942 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3); 2.12943 + } 2.12944 + 2.12945 + //! Fill sequentially all pixel values with values \a val0 and \a val1 and \a val2 and \a val3 and \a val4. 2.12946 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4) { 2.12947 + if (is_empty()) return *this; 2.12948 + T *ptr, *ptr_end = end()-4; 2.12949 + for (ptr = data; ptr<ptr_end; ) { *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; } 2.12950 + ptr_end+=4; 2.12951 + switch (ptr_end-ptr) { 2.12952 + case 4 : *(--ptr_end) = val3; 2.12953 + case 3 : *(--ptr_end) = val2; 2.12954 + case 2 : *(--ptr_end) = val1; 2.12955 + case 1 : *(--ptr_end) = val0; 2.12956 + } 2.12957 + return *this; 2.12958 + } 2.12959 + 2.12960 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4) const { 2.12961 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4); 2.12962 + } 2.12963 + 2.12964 + //! Fill sequentially all pixel values with values \a val0 and \a val1 and \a val2 and \a val3 and \a val4 and \a val5. 2.12965 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5) { 2.12966 + if (is_empty()) return *this; 2.12967 + T *ptr, *ptr_end = end()-5; 2.12968 + for (ptr = data; ptr<ptr_end; ) { 2.12969 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.12970 + } 2.12971 + ptr_end+=5; 2.12972 + switch (ptr_end-ptr) { 2.12973 + case 5 : *(--ptr_end) = val4; 2.12974 + case 4 : *(--ptr_end) = val3; 2.12975 + case 3 : *(--ptr_end) = val2; 2.12976 + case 2 : *(--ptr_end) = val1; 2.12977 + case 1 : *(--ptr_end) = val0; 2.12978 + } 2.12979 + return *this; 2.12980 + } 2.12981 + 2.12982 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5) const { 2.12983 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5); 2.12984 + } 2.12985 + 2.12986 + //! Fill sequentially pixel values. 2.12987 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6) { 2.12988 + if (is_empty()) return *this; 2.12989 + T *ptr, *ptr_end = end()-6; 2.12990 + for (ptr = data; ptr<ptr_end; ) { 2.12991 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; *(ptr++) = val6; 2.12992 + } 2.12993 + ptr_end+=6; 2.12994 + switch (ptr_end-ptr) { 2.12995 + case 6 : *(--ptr_end) = val5; 2.12996 + case 5 : *(--ptr_end) = val4; 2.12997 + case 4 : *(--ptr_end) = val3; 2.12998 + case 3 : *(--ptr_end) = val2; 2.12999 + case 2 : *(--ptr_end) = val1; 2.13000 + case 1 : *(--ptr_end) = val0; 2.13001 + } 2.13002 + return *this; 2.13003 + } 2.13004 + 2.13005 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6) const { 2.13006 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6); 2.13007 + } 2.13008 + 2.13009 + //! Fill sequentially pixel values. 2.13010 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13011 + const T val7) { 2.13012 + if (is_empty()) return *this; 2.13013 + T *ptr, *ptr_end = end()-7; 2.13014 + for (ptr = data; ptr<ptr_end; ) { 2.13015 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; 2.13016 + *(ptr++) = val4; *(ptr++) = val5; *(ptr++) = val6; *(ptr++) = val7; 2.13017 + } 2.13018 + ptr_end+=7; 2.13019 + switch (ptr_end-ptr) { 2.13020 + case 7 : *(--ptr_end) = val6; 2.13021 + case 6 : *(--ptr_end) = val5; 2.13022 + case 5 : *(--ptr_end) = val4; 2.13023 + case 4 : *(--ptr_end) = val3; 2.13024 + case 3 : *(--ptr_end) = val2; 2.13025 + case 2 : *(--ptr_end) = val1; 2.13026 + case 1 : *(--ptr_end) = val0; 2.13027 + } 2.13028 + return *this; 2.13029 + } 2.13030 + 2.13031 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13032 + const T val7) const { 2.13033 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7); 2.13034 + } 2.13035 + 2.13036 + //! Fill sequentially pixel values. 2.13037 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13038 + const T val7, const T val8) { 2.13039 + if (is_empty()) return *this; 2.13040 + T *ptr, *ptr_end = end()-8; 2.13041 + for (ptr = data; ptr<ptr_end; ) { 2.13042 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; 2.13043 + *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13044 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; 2.13045 + } 2.13046 + ptr_end+=8; 2.13047 + switch (ptr_end-ptr) { 2.13048 + case 8 : *(--ptr_end) = val7; 2.13049 + case 7 : *(--ptr_end) = val6; 2.13050 + case 6 : *(--ptr_end) = val5; 2.13051 + case 5 : *(--ptr_end) = val4; 2.13052 + case 4 : *(--ptr_end) = val3; 2.13053 + case 3 : *(--ptr_end) = val2; 2.13054 + case 2 : *(--ptr_end) = val1; 2.13055 + case 1 : *(--ptr_end) = val0; 2.13056 + } 2.13057 + return *this; 2.13058 + } 2.13059 + 2.13060 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13061 + const T val7, const T val8) const { 2.13062 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8); 2.13063 + } 2.13064 + 2.13065 + //! Fill sequentially pixel values. 2.13066 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13067 + const T val7, const T val8, const T val9) { 2.13068 + if (is_empty()) return *this; 2.13069 + T *ptr, *ptr_end = end()-9; 2.13070 + for (ptr = data; ptr<ptr_end; ) { 2.13071 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; 2.13072 + *(ptr++) = val5; *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; 2.13073 + } 2.13074 + ptr_end+=9; 2.13075 + switch (ptr_end-ptr) { 2.13076 + case 9 : *(--ptr_end) = val8; 2.13077 + case 8 : *(--ptr_end) = val7; 2.13078 + case 7 : *(--ptr_end) = val6; 2.13079 + case 6 : *(--ptr_end) = val5; 2.13080 + case 5 : *(--ptr_end) = val4; 2.13081 + case 4 : *(--ptr_end) = val3; 2.13082 + case 3 : *(--ptr_end) = val2; 2.13083 + case 2 : *(--ptr_end) = val1; 2.13084 + case 1 : *(--ptr_end) = val0; 2.13085 + } 2.13086 + return *this; 2.13087 + } 2.13088 + 2.13089 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13090 + const T val7, const T val8, const T val9) const { 2.13091 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9); 2.13092 + } 2.13093 + 2.13094 + //! Fill sequentially pixel values. 2.13095 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13096 + const T val7, const T val8, const T val9, const T val10) { 2.13097 + if (is_empty()) return *this; 2.13098 + T *ptr, *ptr_end = end()-10; 2.13099 + for (ptr = data; ptr<ptr_end; ) { 2.13100 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; 2.13101 + *(ptr++) = val5; *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; 2.13102 + *(ptr++) = val10; 2.13103 + } 2.13104 + ptr_end+=10; 2.13105 + switch (ptr_end-ptr) { 2.13106 + case 10 : *(--ptr_end) = val9; 2.13107 + case 9 : *(--ptr_end) = val8; 2.13108 + case 8 : *(--ptr_end) = val7; 2.13109 + case 7 : *(--ptr_end) = val6; 2.13110 + case 6 : *(--ptr_end) = val5; 2.13111 + case 5 : *(--ptr_end) = val4; 2.13112 + case 4 : *(--ptr_end) = val3; 2.13113 + case 3 : *(--ptr_end) = val2; 2.13114 + case 2 : *(--ptr_end) = val1; 2.13115 + case 1 : *(--ptr_end) = val0; 2.13116 + } 2.13117 + return *this; 2.13118 + } 2.13119 + 2.13120 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13121 + const T val7, const T val8, const T val9, const T val10) const { 2.13122 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10); 2.13123 + } 2.13124 + 2.13125 + //! Fill sequentially pixel values. 2.13126 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13127 + const T val7, const T val8, const T val9, const T val10, const T val11) { 2.13128 + if (is_empty()) return *this; 2.13129 + T *ptr, *ptr_end = end()-11; 2.13130 + for (ptr = data; ptr<ptr_end; ) { 2.13131 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13132 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; *(ptr++) = val10; *(ptr++) = val11; 2.13133 + } 2.13134 + ptr_end+=11; 2.13135 + switch (ptr_end-ptr) { 2.13136 + case 11 : *(--ptr_end) = val10; 2.13137 + case 10 : *(--ptr_end) = val9; 2.13138 + case 9 : *(--ptr_end) = val8; 2.13139 + case 8 : *(--ptr_end) = val7; 2.13140 + case 7 : *(--ptr_end) = val6; 2.13141 + case 6 : *(--ptr_end) = val5; 2.13142 + case 5 : *(--ptr_end) = val4; 2.13143 + case 4 : *(--ptr_end) = val3; 2.13144 + case 3 : *(--ptr_end) = val2; 2.13145 + case 2 : *(--ptr_end) = val1; 2.13146 + case 1 : *(--ptr_end) = val0; 2.13147 + } 2.13148 + return *this; 2.13149 + } 2.13150 + 2.13151 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13152 + const T val7, const T val8, const T val9, const T val10, const T val11) const { 2.13153 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10,val11); 2.13154 + } 2.13155 + 2.13156 + //! Fill sequentially pixel values. 2.13157 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13158 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12) { 2.13159 + if (is_empty()) return *this; 2.13160 + T *ptr, *ptr_end = end()-12; 2.13161 + for (ptr = data; ptr<ptr_end; ) { 2.13162 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13163 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; *(ptr++) = val10; *(ptr++) = val11; 2.13164 + *(ptr++) = val12; 2.13165 + } 2.13166 + ptr_end+=12; 2.13167 + switch (ptr_end-ptr) { 2.13168 + case 12 : *(--ptr_end) = val11; 2.13169 + case 11 : *(--ptr_end) = val10; 2.13170 + case 10 : *(--ptr_end) = val9; 2.13171 + case 9 : *(--ptr_end) = val8; 2.13172 + case 8 : *(--ptr_end) = val7; 2.13173 + case 7 : *(--ptr_end) = val6; 2.13174 + case 6 : *(--ptr_end) = val5; 2.13175 + case 5 : *(--ptr_end) = val4; 2.13176 + case 4 : *(--ptr_end) = val3; 2.13177 + case 3 : *(--ptr_end) = val2; 2.13178 + case 2 : *(--ptr_end) = val1; 2.13179 + case 1 : *(--ptr_end) = val0; 2.13180 + } 2.13181 + return *this; 2.13182 + } 2.13183 + 2.13184 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13185 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12) const { 2.13186 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10,val11,val12); 2.13187 + } 2.13188 + 2.13189 + //! Fill sequentially pixel values. 2.13190 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13191 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13192 + const T val13) { 2.13193 + if (is_empty()) return *this; 2.13194 + T *ptr, *ptr_end = end()-13; 2.13195 + for (ptr = data; ptr<ptr_end; ) { 2.13196 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13197 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; *(ptr++) = val10; *(ptr++) = val11; 2.13198 + *(ptr++) = val12; *(ptr++) = val13; 2.13199 + } 2.13200 + ptr_end+=13; 2.13201 + switch (ptr_end-ptr) { 2.13202 + case 13 : *(--ptr_end) = val12; 2.13203 + case 12 : *(--ptr_end) = val11; 2.13204 + case 11 : *(--ptr_end) = val10; 2.13205 + case 10 : *(--ptr_end) = val9; 2.13206 + case 9 : *(--ptr_end) = val8; 2.13207 + case 8 : *(--ptr_end) = val7; 2.13208 + case 7 : *(--ptr_end) = val6; 2.13209 + case 6 : *(--ptr_end) = val5; 2.13210 + case 5 : *(--ptr_end) = val4; 2.13211 + case 4 : *(--ptr_end) = val3; 2.13212 + case 3 : *(--ptr_end) = val2; 2.13213 + case 2 : *(--ptr_end) = val1; 2.13214 + case 1 : *(--ptr_end) = val0; 2.13215 + } 2.13216 + return *this; 2.13217 + } 2.13218 + 2.13219 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13220 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13221 + const T val13) const { 2.13222 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10,val11,val12, 2.13223 + val13); 2.13224 + } 2.13225 + 2.13226 + //! Fill sequentially pixel values. 2.13227 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13228 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13229 + const T val13, const T val14) { 2.13230 + if (is_empty()) return *this; 2.13231 + T *ptr, *ptr_end = end()-14; 2.13232 + for (ptr = data; ptr<ptr_end; ) { 2.13233 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13234 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; *(ptr++) = val10; *(ptr++) = val11; 2.13235 + *(ptr++) = val12; *(ptr++) = val13; *(ptr++) = val14; 2.13236 + } 2.13237 + ptr_end+=14; 2.13238 + switch (ptr_end-ptr) { 2.13239 + case 14 : *(--ptr_end) = val13; 2.13240 + case 13 : *(--ptr_end) = val12; 2.13241 + case 12 : *(--ptr_end) = val11; 2.13242 + case 11 : *(--ptr_end) = val10; 2.13243 + case 10 : *(--ptr_end) = val9; 2.13244 + case 9 : *(--ptr_end) = val8; 2.13245 + case 8 : *(--ptr_end) = val7; 2.13246 + case 7 : *(--ptr_end) = val6; 2.13247 + case 6 : *(--ptr_end) = val5; 2.13248 + case 5 : *(--ptr_end) = val4; 2.13249 + case 4 : *(--ptr_end) = val3; 2.13250 + case 3 : *(--ptr_end) = val2; 2.13251 + case 2 : *(--ptr_end) = val1; 2.13252 + case 1 : *(--ptr_end) = val0; 2.13253 + } 2.13254 + return *this; 2.13255 + } 2.13256 + 2.13257 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13258 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13259 + const T val13, const T val14) const { 2.13260 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10,val11,val12, 2.13261 + val13,val14); 2.13262 + } 2.13263 + 2.13264 + //! Fill sequentially pixel values. 2.13265 + CImg<T>& fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13266 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13267 + const T val13, const T val14, const T val15) { 2.13268 + if (is_empty()) return *this; 2.13269 + T *ptr, *ptr_end = end()-15; 2.13270 + for (ptr = data; ptr<ptr_end; ) { 2.13271 + *(ptr++) = val0; *(ptr++) = val1; *(ptr++) = val2; *(ptr++) = val3; *(ptr++) = val4; *(ptr++) = val5; 2.13272 + *(ptr++) = val6; *(ptr++) = val7; *(ptr++) = val8; *(ptr++) = val9; *(ptr++) = val10; *(ptr++) = val11; 2.13273 + *(ptr++) = val12; *(ptr++) = val13; *(ptr++) = val14; *(ptr++) = val15; 2.13274 + } 2.13275 + ptr_end+=15; 2.13276 + switch (ptr_end-ptr) { 2.13277 + case 15 : *(--ptr_end) = val14; 2.13278 + case 14 : *(--ptr_end) = val13; 2.13279 + case 13 : *(--ptr_end) = val12; 2.13280 + case 12 : *(--ptr_end) = val11; 2.13281 + case 11 : *(--ptr_end) = val10; 2.13282 + case 10 : *(--ptr_end) = val9; 2.13283 + case 9 : *(--ptr_end) = val8; 2.13284 + case 8 : *(--ptr_end) = val7; 2.13285 + case 7 : *(--ptr_end) = val6; 2.13286 + case 6 : *(--ptr_end) = val5; 2.13287 + case 5 : *(--ptr_end) = val4; 2.13288 + case 4 : *(--ptr_end) = val3; 2.13289 + case 3 : *(--ptr_end) = val2; 2.13290 + case 2 : *(--ptr_end) = val1; 2.13291 + case 1 : *(--ptr_end) = val0; 2.13292 + } 2.13293 + return *this; 2.13294 + } 2.13295 + 2.13296 + CImg<T> get_fill(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, 2.13297 + const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, 2.13298 + const T val13, const T val14, const T val15) const { 2.13299 + return CImg<T>(width,height,depth,dim).fill(val0,val1,val2,val3,val4,val5,val6,val7,val8,val9,val10,val11,val12, 2.13300 + val13,val14,val15); 2.13301 + } 2.13302 + 2.13303 + //! Fill image values according to the values found in the specified string. 2.13304 + CImg<T>& fill(const char *const values, const bool repeat_pattern) { 2.13305 + if (is_empty() || !values) return *this; 2.13306 + T *ptrd = data, *ptr_end = data + size(); 2.13307 + const char *nvalues = values; 2.13308 + const unsigned int siz = size(); 2.13309 + char cval[64] = { 0 }, sep = 0; 2.13310 + int err = 0; double val = 0; unsigned int nb = 0; 2.13311 + while ((err=cimg_std::sscanf(nvalues,"%63[ \n\t0-9e.+-]%c",cval,&sep))>0 && 2.13312 + cimg_std::sscanf(cval,"%lf",&val)>0 && nb<siz) { 2.13313 + nvalues += cimg::strlen(cval); 2.13314 + *(ptrd++) = (T)val; 2.13315 + ++nb; 2.13316 + if (err!=2) break; else ++nvalues; 2.13317 + } 2.13318 + if (repeat_pattern && nb) for (T *ptrs = data; ptrd<ptr_end; ++ptrs) *(ptrd++) = *ptrs; 2.13319 + return *this; 2.13320 + } 2.13321 + 2.13322 + CImg<T> get_fill(const char *const values, const bool repeat_pattern) const { 2.13323 + return repeat_pattern?CImg<T>(width,height,depth,dim).fill(values,repeat_pattern):(+*this).fill(values,repeat_pattern); 2.13324 + } 2.13325 + 2.13326 + //! Fill image values according to the values found in the specified image. 2.13327 + template<typename t> 2.13328 + CImg<T>& fill(const CImg<t>& values, const bool repeat_pattern=true) { 2.13329 + if (is_empty() || !values) return *this; 2.13330 + T *ptrd = data, *ptrd_end = ptrd + size(); 2.13331 + for (t *ptrs = values.data, *ptrs_end = ptrs + values.size(); ptrs<ptrs_end && ptrd<ptrd_end; ++ptrs) *(ptrd++) = (T)*ptrs; 2.13332 + if (repeat_pattern && ptrd<ptrd_end) for (T *ptrs = data; ptrd<ptrd_end; ++ptrs) *(ptrd++) = *ptrs; 2.13333 + return *this; 2.13334 + } 2.13335 + 2.13336 + template<typename t> 2.13337 + CImg<T> get_fill(const CImg<t>& values, const bool repeat_pattern=true) const { 2.13338 + return repeat_pattern?CImg<T>(width,height,depth,dim).fill(values,repeat_pattern):(+*this).fill(values,repeat_pattern); 2.13339 + } 2.13340 + 2.13341 + //! Fill image values along the X-axis at the specified pixel position (y,z,v). 2.13342 + CImg<T>& fillX(const unsigned int y, const unsigned int z, const unsigned int v, const int a0, ...) { 2.13343 +#define _cimg_fill1(x,y,z,v,off,siz,t) { \ 2.13344 + va_list ap; va_start(ap,a0); T *ptrd = ptr(x,y,z,v); *ptrd = (T)a0; \ 2.13345 + for (unsigned int k = 1; k<siz; ++k) { ptrd+=off; *ptrd = (T)va_arg(ap,t); } \ 2.13346 + va_end(ap); } 2.13347 + if (y<height && z<depth && v<dim) _cimg_fill1(0,y,z,v,1,width,int); 2.13348 + return *this; 2.13349 + } 2.13350 + 2.13351 + CImg<T>& fillX(const unsigned int y, const unsigned int z, const unsigned int v, const double a0, ...) { 2.13352 + if (y<height && z<depth && v<dim) _cimg_fill1(0,y,z,v,1,width,double); 2.13353 + return *this; 2.13354 + } 2.13355 + 2.13356 + //! Fill image values along the Y-axis at the specified pixel position (x,z,v). 2.13357 + CImg<T>& fillY(const unsigned int x, const unsigned int z, const unsigned int v, const int a0, ...) { 2.13358 + if (x<width && z<depth && v<dim) _cimg_fill1(x,0,z,v,width,height,int); 2.13359 + return *this; 2.13360 + } 2.13361 + 2.13362 + CImg<T>& fillY(const unsigned int x, const unsigned int z, const unsigned int v, const double a0, ...) { 2.13363 + if (x<width && z<depth && v<dim) _cimg_fill1(x,0,z,v,width,height,double); 2.13364 + return *this; 2.13365 + } 2.13366 + 2.13367 + //! Fill image values along the Z-axis at the specified pixel position (x,y,v). 2.13368 + CImg<T>& fillZ(const unsigned int x, const unsigned int y, const unsigned int v, const int a0, ...) { 2.13369 + const unsigned int wh = width*height; 2.13370 + if (x<width && y<height && v<dim) _cimg_fill1(x,y,0,v,wh,depth,int); 2.13371 + return *this; 2.13372 + } 2.13373 + 2.13374 + CImg<T>& fillZ(const unsigned int x, const unsigned int y, const unsigned int v, const double a0, ...) { 2.13375 + const unsigned int wh = width*height; 2.13376 + if (x<width && y<height && v<dim) _cimg_fill1(x,y,0,v,wh,depth,double); 2.13377 + return *this; 2.13378 + } 2.13379 + 2.13380 + //! Fill image values along the V-axis at the specified pixel position (x,y,z). 2.13381 + CImg<T>& fillV(const unsigned int x, const unsigned int y, const unsigned int z, const int a0, ...) { 2.13382 + const unsigned int whz = width*height*depth; 2.13383 + if (x<width && y<height && z<depth) _cimg_fill1(x,y,z,0,whz,dim,int); 2.13384 + return *this; 2.13385 + } 2.13386 + 2.13387 + CImg<T>& fillV(const unsigned int x, const unsigned int y, const unsigned int z, const double a0, ...) { 2.13388 + const unsigned int whz = width*height*depth; 2.13389 + if (x<width && y<height && z<depth) _cimg_fill1(x,y,z,0,whz,dim,double); 2.13390 + return *this; 2.13391 + } 2.13392 + 2.13393 + //! Linear normalization of the pixel values between \a a and \a b. 2.13394 + CImg<T>& normalize(const T a, const T b) { 2.13395 + if (is_empty()) return *this; 2.13396 + const T na = a<b?a:b, nb = a<b?b:a; 2.13397 + T m, M = maxmin(m); 2.13398 + const Tfloat fm = (Tfloat)m, fM = (Tfloat)M; 2.13399 + if (m==M) return fill(0); 2.13400 + if (m!=na || M!=nb) cimg_for(*this,ptr,T) *ptr = (T)((*ptr-fm)/(fM-fm)*(nb-na)+na); 2.13401 + return *this; 2.13402 + } 2.13403 + 2.13404 + CImg<T> get_normalize(const T a, const T b) const { 2.13405 + return (+*this).normalize(a,b); 2.13406 + } 2.13407 + 2.13408 + //! Cut pixel values between \a a and \a b. 2.13409 + CImg<T>& cut(const T a, const T b) { 2.13410 + if (is_empty()) return *this; 2.13411 + const T na = a<b?a:b, nb = a<b?b:a; 2.13412 + cimg_for(*this,ptr,T) *ptr = (*ptr<na)?na:((*ptr>nb)?nb:*ptr); 2.13413 + return *this; 2.13414 + } 2.13415 + 2.13416 + CImg<T> get_cut(const T a, const T b) const { 2.13417 + return (+*this).cut(a,b); 2.13418 + } 2.13419 + 2.13420 + //! Quantize pixel values into \n levels. 2.13421 + CImg<T>& quantize(const unsigned int n, const bool keep_range=true) { 2.13422 + if (is_empty()) return *this; 2.13423 + if (!n) 2.13424 + throw CImgArgumentException("CImg<%s>::quantize() : Cannot quantize image to 0 values.", 2.13425 + pixel_type()); 2.13426 + Tfloat m, M = (Tfloat)maxmin(m), range = M - m; 2.13427 + if (range>0) { 2.13428 + if (keep_range) cimg_for(*this,ptr,T) { 2.13429 + const unsigned int val = (unsigned int)((*ptr-m)*n/range); 2.13430 + *ptr = (T)(m + cimg::min(val,n-1)*range/n); 2.13431 + } else cimg_for(*this,ptr,T) { 2.13432 + const unsigned int val = (unsigned int)((*ptr-m)*n/range); 2.13433 + *ptr = (T)cimg::min(val,n-1); 2.13434 + } 2.13435 + } 2.13436 + return *this; 2.13437 + } 2.13438 + 2.13439 + CImg<T> get_quantize(const unsigned int n, const bool keep_range=true) const { 2.13440 + return (+*this).quantize(n,keep_range); 2.13441 + } 2.13442 + 2.13443 + //! Threshold the image. 2.13444 + /** 2.13445 + \param value Threshold value. 2.13446 + \param soft Enable soft thresholding. 2.13447 + \param strict Tells if the threshold is strict. 2.13448 + **/ 2.13449 + CImg<T>& threshold(const T value, const bool soft=false, const bool strict=false) { 2.13450 + if (is_empty()) return *this; 2.13451 + if (strict) { 2.13452 + if (soft) cimg_for(*this,ptr,T) { const T v = *ptr; *ptr = v>value?(T)(v-value):v<-value?(T)(v+value):(T)0; } 2.13453 + else cimg_for(*this,ptr,T) *ptr = *ptr>value?(T)1:(T)0; 2.13454 + } else { 2.13455 + if (soft) cimg_for(*this,ptr,T) { const T v = *ptr; *ptr = v>=value?(T)(v-value):v<=-value?(T)(v+value):(T)0; } 2.13456 + else cimg_for(*this,ptr,T) *ptr = *ptr>=value?(T)1:(T)0; 2.13457 + } 2.13458 + return *this; 2.13459 + } 2.13460 + 2.13461 + CImg<T> get_threshold(const T value, const bool soft=false, const bool strict=false) const { 2.13462 + return (+*this).threshold(value,soft,strict); 2.13463 + } 2.13464 + 2.13465 + //! Rotate an image. 2.13466 + /** 2.13467 + \param angle = rotation angle (in degrees). 2.13468 + \param cond = rotation type. can be : 2.13469 + - 0 = zero-value at borders 2.13470 + - 1 = nearest pixel. 2.13471 + - 2 = Fourier style. 2.13472 + \note Returned image will probably have a different size than the instance image *this. 2.13473 + **/ 2.13474 + CImg<T>& rotate(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1) { 2.13475 + return get_rotate(angle,border_conditions,interpolation).transfer_to(*this); 2.13476 + } 2.13477 + 2.13478 + CImg<T> get_rotate(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1) const { 2.13479 + if (is_empty()) return *this; 2.13480 + CImg<T> dest; 2.13481 + const float nangle = cimg::mod(angle,360.0f); 2.13482 + if (border_conditions!=1 && cimg::mod(nangle,90.0f)==0) { // optimized version for orthogonal angles 2.13483 + const int wm1 = dimx()-1, hm1 = dimy()-1; 2.13484 + const int iangle = (int)nangle/90; 2.13485 + switch (iangle) { 2.13486 + case 1 : { 2.13487 + dest.assign(height,width,depth,dim); 2.13488 + cimg_forXYZV(dest,x,y,z,v) dest(x,y,z,v) = (*this)(y,hm1-x,z,v); 2.13489 + } break; 2.13490 + case 2 : { 2.13491 + dest.assign(width,height,depth,dim); 2.13492 + cimg_forXYZV(dest,x,y,z,v) dest(x,y,z,v) = (*this)(wm1-x,hm1-y,z,v); 2.13493 + } break; 2.13494 + case 3 : { 2.13495 + dest.assign(height,width,depth,dim); 2.13496 + cimg_forXYZV(dest,x,y,z,v) dest(x,y,z,v) = (*this)(wm1-y,x,z,v); 2.13497 + } break; 2.13498 + default : 2.13499 + return *this; 2.13500 + } 2.13501 + } else { // generic version 2.13502 + const float 2.13503 + rad = (float)(nangle*cimg::valuePI/180.0), 2.13504 + ca = (float)cimg_std::cos(rad), 2.13505 + sa = (float)cimg_std::sin(rad), 2.13506 + ux = cimg::abs(width*ca), uy = cimg::abs(width*sa), 2.13507 + vx = cimg::abs(height*sa), vy = cimg::abs(height*ca), 2.13508 + w2 = 0.5f*width, h2 = 0.5f*height, 2.13509 + dw2 = 0.5f*(ux+vx), dh2 = 0.5f*(uy+vy); 2.13510 + dest.assign((int)(ux+vx), (int)(uy+vy),depth,dim); 2.13511 + switch (border_conditions) { 2.13512 + case 0 : { 2.13513 + switch (interpolation) { 2.13514 + case 2 : { 2.13515 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13516 + dest(x,y,z,v) = (T)cubic_atXY(w2 + (x-dw2)*ca + (y-dh2)*sa,h2 - (x-dw2)*sa + (y-dh2)*ca,z,v,0); 2.13517 + } break; 2.13518 + case 1 : { 2.13519 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13520 + dest(x,y,z,v) = (T)linear_atXY(w2 + (x-dw2)*ca + (y-dh2)*sa,h2 - (x-dw2)*sa + (y-dh2)*ca,z,v,0); 2.13521 + } break; 2.13522 + default : { 2.13523 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13524 + dest(x,y,z,v) = atXY((int)(w2 + (x-dw2)*ca + (y-dh2)*sa),(int)(h2 - (x-dw2)*sa + (y-dh2)*ca),z,v,0); 2.13525 + } 2.13526 + } 2.13527 + } break; 2.13528 + case 1 : { 2.13529 + switch (interpolation) { 2.13530 + case 2 : 2.13531 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13532 + dest(x,y,z,v) = (T)cubic_atXY(w2 + (x-dw2)*ca + (y-dh2)*sa,h2 - (x-dw2)*sa + (y-dh2)*ca,z,v); 2.13533 + break; 2.13534 + case 1 : 2.13535 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13536 + dest(x,y,z,v) = (T)linear_atXY(w2 + (x-dw2)*ca + (y-dh2)*sa,h2 - (x-dw2)*sa + (y-dh2)*ca,z,v); 2.13537 + break; 2.13538 + default : 2.13539 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13540 + dest(x,y,z,v) = atXY((int)(w2 + (x-dw2)*ca + (y-dh2)*sa),(int)(h2 - (x-dw2)*sa + (y-dh2)*ca),z,v); 2.13541 + } 2.13542 + } break; 2.13543 + case 2 : { 2.13544 + switch (interpolation) { 2.13545 + case 2 : 2.13546 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13547 + dest(x,y,z,v) = (T)cubic_atXY(cimg::mod(w2 + (x-dw2)*ca + (y-dh2)*sa,(float)dimx()), 2.13548 + cimg::mod(h2 - (x-dw2)*sa + (y-dh2)*ca,(float)dimy()),z,v); 2.13549 + break; 2.13550 + case 1 : 2.13551 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13552 + dest(x,y,z,v) = (T)linear_atXY(cimg::mod(w2 + (x-dw2)*ca + (y-dh2)*sa,(float)dimx()), 2.13553 + cimg::mod(h2 - (x-dw2)*sa + (y-dh2)*ca,(float)dimy()),z,v); 2.13554 + break; 2.13555 + default : 2.13556 + cimg_forXY(dest,x,y) cimg_forZV(*this,z,v) 2.13557 + dest(x,y,z,v) = (*this)(cimg::mod((int)(w2 + (x-dw2)*ca + (y-dh2)*sa),dimx()), 2.13558 + cimg::mod((int)(h2 - (x-dw2)*sa + (y-dh2)*ca),dimy()),z,v); 2.13559 + } 2.13560 + } break; 2.13561 + default : 2.13562 + throw CImgArgumentException("CImg<%s>::get_rotate() : Invalid border conditions %d (should be 0,1 or 2).", 2.13563 + pixel_type(),border_conditions); 2.13564 + } 2.13565 + } 2.13566 + return dest; 2.13567 + } 2.13568 + 2.13569 + //! Rotate an image around a center point (\c cx,\c cy). 2.13570 + /** 2.13571 + \param angle = rotation angle (in degrees). 2.13572 + \param cx = X-coordinate of the rotation center. 2.13573 + \param cy = Y-coordinate of the rotation center. 2.13574 + \param zoom = zoom. 2.13575 + \param cond = rotation type. can be : 2.13576 + - 0 = zero-value at borders 2.13577 + - 1 = repeat image at borders 2.13578 + - 2 = zero-value at borders and linear interpolation 2.13579 + **/ 2.13580 + CImg<T>& rotate(const float angle, const float cx, const float cy, const float zoom, 2.13581 + const unsigned int border_conditions=3, const unsigned int interpolation=1) { 2.13582 + return get_rotate(angle,cx,cy,zoom,border_conditions,interpolation).transfer_to(*this); 2.13583 + } 2.13584 + 2.13585 + CImg<T> get_rotate(const float angle, const float cx, const float cy, const float zoom, 2.13586 + const unsigned int border_conditions=3, const unsigned int interpolation=1) const { 2.13587 + if (interpolation>2) 2.13588 + throw CImgArgumentException("CImg<%s>::get_rotate() : Invalid interpolation parameter %d (should be {0=none, 1=linear or 2=cubic}).", 2.13589 + pixel_type(),interpolation); 2.13590 + if (is_empty()) return *this; 2.13591 + CImg<T> dest(width,height,depth,dim); 2.13592 + const float nangle = cimg::mod(angle,360.0f); 2.13593 + if (border_conditions!=1 && zoom==1 && cimg::mod(nangle,90.0f)==0) { // optimized version for orthogonal angles 2.13594 + const int iangle = (int)nangle/90; 2.13595 + switch (iangle) { 2.13596 + case 1 : { 2.13597 + dest.fill(0); 2.13598 + const unsigned int 2.13599 + xmin = cimg::max(0,(dimx()-dimy())/2), xmax = cimg::min(width,xmin+height), 2.13600 + ymin = cimg::max(0,(dimy()-dimx())/2), ymax = cimg::min(height,ymin+width), 2.13601 + xoff = xmin + cimg::min(0,(dimx()-dimy())/2), 2.13602 + yoff = ymin + cimg::min(0,(dimy()-dimx())/2); 2.13603 + cimg_forZV(dest,z,v) for (unsigned int y = ymin; y<ymax; ++y) for (unsigned int x = xmin; x<xmax; ++x) 2.13604 + dest(x,y,z,v) = (*this)(y-yoff,height-1-x+xoff,z,v); 2.13605 + } break; 2.13606 + case 2 : { 2.13607 + cimg_forXYZV(dest,x,y,z,v) dest(x,y,z,v) = (*this)(width-1-x,height-1-y,z,v); 2.13608 + } break; 2.13609 + case 3 : { 2.13610 + dest.fill(0); 2.13611 + const unsigned int 2.13612 + xmin = cimg::max(0,(dimx()-dimy())/2), xmax = cimg::min(width,xmin+height), 2.13613 + ymin = cimg::max(0,(dimy()-dimx())/2), ymax = cimg::min(height,ymin+width), 2.13614 + xoff = xmin + cimg::min(0,(dimx()-dimy())/2), 2.13615 + yoff = ymin + cimg::min(0,(dimy()-dimx())/2); 2.13616 + cimg_forZV(dest,z,v) for (unsigned int y = ymin; y<ymax; ++y) for (unsigned int x = xmin; x<xmax; ++x) 2.13617 + dest(x,y,z,v) = (*this)(width-1-y+yoff,x-xoff,z,v); 2.13618 + } break; 2.13619 + default : 2.13620 + return *this; 2.13621 + } 2.13622 + } else { 2.13623 + const float 2.13624 + rad = (float)((nangle*cimg::valuePI)/180.0), 2.13625 + ca = (float)cimg_std::cos(rad)/zoom, 2.13626 + sa = (float)cimg_std::sin(rad)/zoom; 2.13627 + switch (border_conditions) { // generic version 2.13628 + case 0 : { 2.13629 + switch (interpolation) { 2.13630 + case 2 : { 2.13631 + cimg_forXY(dest,x,y) 2.13632 + cimg_forZV(*this,z,v) 2.13633 + dest(x,y,z,v) = (T)cubic_atXY(cx + (x-cx)*ca + (y-cy)*sa,cy - (x-cx)*sa + (y-cy)*ca,z,v,0); 2.13634 + } break; 2.13635 + case 1 : { 2.13636 + cimg_forXY(dest,x,y) 2.13637 + cimg_forZV(*this,z,v) 2.13638 + dest(x,y,z,v) = (T)linear_atXY(cx + (x-cx)*ca + (y-cy)*sa,cy - (x-cx)*sa + (y-cy)*ca,z,v,0); 2.13639 + } break; 2.13640 + default : { 2.13641 + cimg_forXY(dest,x,y) 2.13642 + cimg_forZV(*this,z,v) 2.13643 + dest(x,y,z,v) = atXY((int)(cx + (x-cx)*ca + (y-cy)*sa),(int)(cy - (x-cx)*sa + (y-cy)*ca),z,v,0); 2.13644 + } 2.13645 + } 2.13646 + } break; 2.13647 + case 1 : { 2.13648 + switch (interpolation) { 2.13649 + case 2 : { 2.13650 + cimg_forXY(dest,x,y) 2.13651 + cimg_forZV(*this,z,v) 2.13652 + dest(x,y,z,v) = (T)cubic_atXY(cx + (x-cx)*ca + (y-cy)*sa,cy - (x-cx)*sa + (y-cy)*ca,z,v); 2.13653 + } break; 2.13654 + case 1 : { 2.13655 + cimg_forXY(dest,x,y) 2.13656 + cimg_forZV(*this,z,v) 2.13657 + dest(x,y,z,v) = (T)linear_atXY(cx + (x-cx)*ca + (y-cy)*sa,cy - (x-cx)*sa + (y-cy)*ca,z,v); 2.13658 + } break; 2.13659 + default : { 2.13660 + cimg_forXY(dest,x,y) 2.13661 + cimg_forZV(*this,z,v) 2.13662 + dest(x,y,z,v) = atXY((int)(cx + (x-cx)*ca + (y-cy)*sa),(int)(cy - (x-cx)*sa + (y-cy)*ca),z,v); 2.13663 + } 2.13664 + } 2.13665 + } break; 2.13666 + case 2 : { 2.13667 + switch (interpolation) { 2.13668 + case 2 : { 2.13669 + cimg_forXY(dest,x,y) 2.13670 + cimg_forZV(*this,z,v) 2.13671 + dest(x,y,z,v) = (T)cubic_atXY(cimg::mod(cx + (x-cx)*ca + (y-cy)*sa,(float)dimx()), 2.13672 + cimg::mod(cy - (x-cx)*sa + (y-cy)*ca,(float)dimy()),z,v); 2.13673 + } break; 2.13674 + case 1 : { 2.13675 + cimg_forXY(dest,x,y) 2.13676 + cimg_forZV(*this,z,v) 2.13677 + dest(x,y,z,v) = (T)linear_atXY(cimg::mod(cx + (x-cx)*ca + (y-cy)*sa,(float)dimx()), 2.13678 + cimg::mod(cy - (x-cx)*sa + (y-cy)*ca,(float)dimy()),z,v); 2.13679 + } break; 2.13680 + default : { 2.13681 + cimg_forXY(dest,x,y) 2.13682 + cimg_forZV(*this,z,v) 2.13683 + dest(x,y,z,v) = (*this)(cimg::mod((int)(cx + (x-cx)*ca + (y-cy)*sa),dimx()), 2.13684 + cimg::mod((int)(cy - (x-cx)*sa + (y-cy)*ca),dimy()),z,v); 2.13685 + } 2.13686 + } 2.13687 + } break; 2.13688 + default : 2.13689 + throw CImgArgumentException("CImg<%s>::get_rotate() : Incorrect border conditions %d (should be 0,1 or 2).", 2.13690 + pixel_type(),border_conditions); 2.13691 + } 2.13692 + } 2.13693 + return dest; 2.13694 + } 2.13695 + 2.13696 + //! Resize an image. 2.13697 + /** 2.13698 + \param pdx Number of columns (new size along the X-axis). 2.13699 + \param pdy Number of rows (new size along the Y-axis). 2.13700 + \param pdz Number of slices (new size along the Z-axis). 2.13701 + \param pdv Number of vector-channels (new size along the V-axis). 2.13702 + \param interpolation_type Method of interpolation : 2.13703 + - -1 = no interpolation : raw memory resizing. 2.13704 + - 0 = no interpolation : additional space is filled according to \p border_condition. 2.13705 + - 1 = bloc interpolation (nearest point). 2.13706 + - 2 = moving average interpolation. 2.13707 + - 3 = linear interpolation. 2.13708 + - 4 = grid interpolation. 2.13709 + - 5 = bi-cubic interpolation. 2.13710 + \param border_condition Border condition type. 2.13711 + \param center Set centering type (only if \p interpolation_type=0). 2.13712 + \note If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). 2.13713 + **/ 2.13714 + CImg<T>& resize(const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, 2.13715 + const int interpolation_type=1, const int border_condition=-1, const bool center=false) { 2.13716 + if (!pdx || !pdy || !pdz || !pdv) return assign(); 2.13717 + const unsigned int 2.13718 + tdx = pdx<0?-pdx*width/100:pdx, 2.13719 + tdy = pdy<0?-pdy*height/100:pdy, 2.13720 + tdz = pdz<0?-pdz*depth/100:pdz, 2.13721 + tdv = pdv<0?-pdv*dim/100:pdv, 2.13722 + dx = tdx?tdx:1, 2.13723 + dy = tdy?tdy:1, 2.13724 + dz = tdz?tdz:1, 2.13725 + dv = tdv?tdv:1; 2.13726 + if (width==dx && height==dy && depth==dz && dim==dv) return *this; 2.13727 + if (interpolation_type==-1 && dx*dy*dz*dv==size()) { 2.13728 + width = dx; height = dy; depth = dz; dim = dv; 2.13729 + return *this; 2.13730 + } 2.13731 + return get_resize(dx,dy,dz,dv,interpolation_type,border_condition,center).transfer_to(*this); 2.13732 + } 2.13733 + 2.13734 + CImg<T> get_resize(const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, 2.13735 + const int interpolation_type=1, const int border_condition=-1, const bool center=false) const { 2.13736 + if (!pdx || !pdy || !pdz || !pdv) return CImg<T>(); 2.13737 + const unsigned int 2.13738 + tdx = pdx<0?-pdx*width/100:pdx, 2.13739 + tdy = pdy<0?-pdy*height/100:pdy, 2.13740 + tdz = pdz<0?-pdz*depth/100:pdz, 2.13741 + tdv = pdv<0?-pdv*dim/100:pdv, 2.13742 + dx = tdx?tdx:1, 2.13743 + dy = tdy?tdy:1, 2.13744 + dz = tdz?tdz:1, 2.13745 + dv = tdv?tdv:1; 2.13746 + if (width==dx && height==dy && depth==dz && dim==dv) return +*this; 2.13747 + if (is_empty()) return CImg<T>(dx,dy,dz,dv,0); 2.13748 + 2.13749 + CImg<T> res; 2.13750 + 2.13751 + switch (interpolation_type) { 2.13752 + case -1 : // Raw resizing 2.13753 + cimg_std::memcpy(res.assign(dx,dy,dz,dv,0).data,data,sizeof(T)*cimg::min(size(),(long unsigned int)dx*dy*dz*dv)); 2.13754 + break; 2.13755 + 2.13756 + case 0 : { // No interpolation 2.13757 + const unsigned int bx = width-1, by = height-1, bz = depth-1, bv = dim-1; 2.13758 + res.assign(dx,dy,dz,dv); 2.13759 + switch (border_condition) { 2.13760 + case 1 : { 2.13761 + if (center) { 2.13762 + const int 2.13763 + x0 = (res.dimx()-dimx())/2, 2.13764 + y0 = (res.dimy()-dimy())/2, 2.13765 + z0 = (res.dimz()-dimz())/2, 2.13766 + v0 = (res.dimv()-dimv())/2, 2.13767 + x1 = x0 + (int)bx, 2.13768 + y1 = y0 + (int)by, 2.13769 + z1 = z0 + (int)bz, 2.13770 + v1 = v0 + (int)bv; 2.13771 + res.draw_image(x0,y0,z0,v0,*this); 2.13772 + cimg_for_outXYZV(res,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) res(x,y,z,v) = _atXYZV(x-x0,y-y0,z-z0,v-v0); 2.13773 + } else { 2.13774 + res.draw_image(*this); 2.13775 + cimg_for_outXYZV(res,0,0,0,0,bx,by,bz,bv,x,y,z,v) res(x,y,z,v) = _atXYZV(x,y,z,v); 2.13776 + } 2.13777 + } break; 2.13778 + case 2 : { 2.13779 + int nx0 = 0, ny0 = 0, nz0 = 0, nv0 = 0; 2.13780 + if (center) { 2.13781 + const int 2.13782 + x0 = (res.dimx()-dimx())/2, 2.13783 + y0 = (res.dimy()-dimy())/2, 2.13784 + z0 = (res.dimz()-dimz())/2, 2.13785 + v0 = (res.dimv()-dimv())/2; 2.13786 + nx0 = x0>0?x0-(1+x0/width)*width:x0; 2.13787 + ny0 = y0>0?y0-(1+y0/height)*height:y0; 2.13788 + nz0 = z0>0?z0-(1+z0/depth)*depth:z0; 2.13789 + nv0 = v0>0?v0-(1+v0/dim)*dim:v0; 2.13790 + } 2.13791 + for (int k = nv0; k<(int)dv; k+=dimv()) 2.13792 + for (int z = nz0; z<(int)dz; z+=dimz()) 2.13793 + for (int y = ny0; y<(int)dy; y+=dimy()) 2.13794 + for (int x = nx0; x<(int)dx; x+=dimx()) res.draw_image(x,y,z,k,*this); 2.13795 + } break; 2.13796 + default : { 2.13797 + res.fill(0); 2.13798 + if (center) res.draw_image((res.dimx()-dimx())/2,(res.dimy()-dimy())/2,(res.dimz()-dimz())/2,(res.dimv()-dimv())/2,*this); 2.13799 + else res.draw_image(*this); 2.13800 + } 2.13801 + } 2.13802 + } break; 2.13803 + 2.13804 + case 1 : { // Nearest-neighbor interpolation 2.13805 + res.assign(dx,dy,dz,dv); 2.13806 + unsigned int 2.13807 + *const offx = new unsigned int[dx], 2.13808 + *const offy = new unsigned int[dy+1], 2.13809 + *const offz = new unsigned int[dz+1], 2.13810 + *const offv = new unsigned int[dv+1], 2.13811 + *poffx, *poffy, *poffz, *poffv, 2.13812 + curr, old; 2.13813 + const unsigned int wh = width*height, whd = width*height*depth, rwh = dx*dy, rwhd = dx*dy*dz; 2.13814 + poffx = offx; curr = 0; { cimg_forX(res,x) { old=curr; curr=(x+1)*width/dx; *(poffx++) = (unsigned int)curr-(unsigned int)old; }} 2.13815 + poffy = offy; curr = 0; { cimg_forY(res,y) { old=curr; curr=(y+1)*height/dy; *(poffy++) = width*((unsigned int)curr-(unsigned int)old); }} *poffy=0; 2.13816 + poffz = offz; curr = 0; { cimg_forZ(res,z) { old=curr; curr=(z+1)*depth/dz; *(poffz++) = wh*((unsigned int)curr-(unsigned int)old); }} *poffz=0; 2.13817 + poffv = offv; curr = 0; { cimg_forV(res,k) { old=curr; curr=(k+1)*dim/dv; *(poffv++) = whd*((unsigned int)curr-(unsigned int)old); }} *poffv=0; 2.13818 + T *ptrd = res.data; 2.13819 + const T* ptrv = data; 2.13820 + poffv = offv; 2.13821 + for (unsigned int k=0; k<dv; ) { 2.13822 + const T *ptrz = ptrv; 2.13823 + poffz = offz; 2.13824 + for (unsigned int z=0; z<dz; ) { 2.13825 + const T *ptry = ptrz; 2.13826 + poffy = offy; 2.13827 + for (unsigned int y=0; y<dy; ) { 2.13828 + const T *ptrx = ptry; 2.13829 + poffx = offx; 2.13830 + cimg_forX(res,x) { *(ptrd++) = *ptrx; ptrx+=*(poffx++); } 2.13831 + ++y; 2.13832 + unsigned int dy = *(poffy++); 2.13833 + for (;!dy && y<dy; cimg_std::memcpy(ptrd, ptrd-dx, sizeof(T)*dx), ++y, ptrd+=dx, dy=*(poffy++)) {} 2.13834 + ptry+=dy; 2.13835 + } 2.13836 + ++z; 2.13837 + unsigned int dz = *(poffz++); 2.13838 + for (;!dz && z<dz; cimg_std::memcpy(ptrd, ptrd-rwh, sizeof(T)*rwh), ++z, ptrd+=rwh, dz=*(poffz++)) {} 2.13839 + ptrz+=dz; 2.13840 + } 2.13841 + ++k; 2.13842 + unsigned int dv = *(poffv++); 2.13843 + for (;!dv && k<dv; cimg_std::memcpy(ptrd, ptrd-rwhd, sizeof(T)*rwhd), ++k, ptrd+=rwhd, dv=*(poffv++)) {} 2.13844 + ptrv+=dv; 2.13845 + } 2.13846 + delete[] offx; delete[] offy; delete[] offz; delete[] offv; 2.13847 + } break; 2.13848 + 2.13849 + case 2 : { // Moving average 2.13850 + bool instance_first = true; 2.13851 + if (dx!=width) { 2.13852 + CImg<Tfloat> tmp(dx,height,depth,dim,0); 2.13853 + for (unsigned int a = width*dx, b = width, c = dx, s = 0, t = 0; a; ) { 2.13854 + const unsigned int d = cimg::min(b,c); 2.13855 + a-=d; b-=d; c-=d; 2.13856 + cimg_forYZV(tmp,y,z,v) tmp(t,y,z,v)+=(Tfloat)(*this)(s,y,z,v)*d; 2.13857 + if (!b) { cimg_forYZV(tmp,y,z,v) tmp(t,y,z,v)/=width; ++t; b = width; } 2.13858 + if (!c) { ++s; c = dx; } 2.13859 + } 2.13860 + tmp.transfer_to(res); 2.13861 + instance_first = false; 2.13862 + } 2.13863 + if (dy!=height) { 2.13864 + CImg<Tfloat> tmp(dx,dy,depth,dim,0); 2.13865 + for (unsigned int a = height*dy, b = height, c = dy, s = 0, t = 0; a; ) { 2.13866 + const unsigned int d = cimg::min(b,c); 2.13867 + a-=d; b-=d; c-=d; 2.13868 + if (instance_first) cimg_forXZV(tmp,x,z,v) tmp(x,t,z,v)+=(Tfloat)(*this)(x,s,z,v)*d; 2.13869 + else cimg_forXZV(tmp,x,z,v) tmp(x,t,z,v)+=(Tfloat)res(x,s,z,v)*d; 2.13870 + if (!b) { cimg_forXZV(tmp,x,z,v) tmp(x,t,z,v)/=height; ++t; b = height; } 2.13871 + if (!c) { ++s; c = dy; } 2.13872 + } 2.13873 + tmp.transfer_to(res); 2.13874 + instance_first = false; 2.13875 + } 2.13876 + if (dz!=depth) { 2.13877 + CImg<Tfloat> tmp(dx,dy,dz,dim,0); 2.13878 + for (unsigned int a = depth*dz, b = depth, c = dz, s = 0, t = 0; a; ) { 2.13879 + const unsigned int d = cimg::min(b,c); 2.13880 + a-=d; b-=d; c-=d; 2.13881 + if (instance_first) cimg_forXYV(tmp,x,y,v) tmp(x,y,t,v)+=(Tfloat)(*this)(x,y,s,v)*d; 2.13882 + else cimg_forXYV(tmp,x,y,v) tmp(x,y,t,v)+=(Tfloat)res(x,y,s,v)*d; 2.13883 + if (!b) { cimg_forXYV(tmp,x,y,v) tmp(x,y,t,v)/=depth; ++t; b = depth; } 2.13884 + if (!c) { ++s; c = dz; } 2.13885 + } 2.13886 + tmp.transfer_to(res); 2.13887 + instance_first = false; 2.13888 + } 2.13889 + if (dv!=dim) { 2.13890 + CImg<Tfloat> tmp(dx,dy,dz,dv,0); 2.13891 + for (unsigned int a = dim*dv, b = dim, c = dv, s = 0, t = 0; a; ) { 2.13892 + const unsigned int d = cimg::min(b,c); 2.13893 + a-=d; b-=d; c-=d; 2.13894 + if (instance_first) cimg_forXYZ(tmp,x,y,z) tmp(x,y,z,t)+=(Tfloat)(*this)(x,y,z,s)*d; 2.13895 + else cimg_forXYZ(tmp,x,y,z) tmp(x,y,z,t)+=(Tfloat)res(x,y,z,s)*d; 2.13896 + if (!b) { cimg_forXYZ(tmp,x,y,z) tmp(x,y,z,t)/=dim; ++t; b = dim; } 2.13897 + if (!c) { ++s; c = dv; } 2.13898 + } 2.13899 + tmp.transfer_to(res); 2.13900 + instance_first = false; 2.13901 + } 2.13902 + } break; 2.13903 + 2.13904 + case 3 : { // Linear interpolation 2.13905 + const unsigned int dimmax = cimg::max(dx,dy,dz,dv); 2.13906 + const float 2.13907 + sx = (border_condition<0 && dx>width )?(dx>1?(width-1.0f)/(dx-1) :0):(float)width/dx, 2.13908 + sy = (border_condition<0 && dy>height)?(dy>1?(height-1.0f)/(dy-1):0):(float)height/dy, 2.13909 + sz = (border_condition<0 && dz>depth )?(dz>1?(depth-1.0f)/(dz-1) :0):(float)depth/dz, 2.13910 + sv = (border_condition<0 && dv>dim )?(dv>1?(dim-1.0f)/(dv-1) :0):(float)dim/dv; 2.13911 + 2.13912 + unsigned int *const off = new unsigned int[dimmax], *poff; 2.13913 + float *const foff = new float[dimmax], *pfoff, old, curr; 2.13914 + CImg<T> resx, resy, resz, resv; 2.13915 + T *ptrd; 2.13916 + 2.13917 + if (dx!=width) { 2.13918 + if (width==1) resx = get_resize(dx,height,depth,dim,1,0); 2.13919 + else { 2.13920 + resx.assign(dx,height,depth,dim); 2.13921 + curr = old = 0; poff = off; pfoff = foff; 2.13922 + cimg_forX(resx,x) { *(pfoff++) = curr-(unsigned int)curr; old = curr; curr+=sx; *(poff++) = (unsigned int)curr-(unsigned int)old; } 2.13923 + ptrd = resx.data; 2.13924 + const T *ptrs0 = data; 2.13925 + cimg_forYZV(resx,y,z,k) { 2.13926 + poff = off; pfoff = foff; 2.13927 + const T *ptrs = ptrs0, *const ptrsmax = ptrs0 + (width-1); 2.13928 + cimg_forX(resx,x) { 2.13929 + const float alpha = *(pfoff++); 2.13930 + const T val1 = *ptrs, val2 = ptrs<ptrsmax?*(ptrs+1):(border_condition?val1:(T)0); 2.13931 + *(ptrd++) = (T)((1-alpha)*val1 + alpha*val2); 2.13932 + ptrs+=*(poff++); 2.13933 + } 2.13934 + ptrs0+=width; 2.13935 + } 2.13936 + } 2.13937 + } else resx.assign(*this,true); 2.13938 + 2.13939 + if (dy!=height) { 2.13940 + if (height==1) resy = resx.get_resize(dx,dy,depth,dim,1,0); 2.13941 + else { 2.13942 + resy.assign(dx,dy,depth,dim); 2.13943 + curr = old = 0; poff = off; pfoff = foff; 2.13944 + cimg_forY(resy,y) { *(pfoff++) = curr-(unsigned int)curr; old = curr; curr+=sy; *(poff++) = dx*((unsigned int)curr-(unsigned int)old); } 2.13945 + cimg_forXZV(resy,x,z,k) { 2.13946 + ptrd = resy.ptr(x,0,z,k); 2.13947 + const T *ptrs = resx.ptr(x,0,z,k), *const ptrsmax = ptrs + (height-1)*dx; 2.13948 + poff = off; pfoff = foff; 2.13949 + cimg_forY(resy,y) { 2.13950 + const float alpha = *(pfoff++); 2.13951 + const T val1 = *ptrs, val2 = ptrs<ptrsmax?*(ptrs+dx):(border_condition?val1:(T)0); 2.13952 + *ptrd = (T)((1-alpha)*val1 + alpha*val2); 2.13953 + ptrd+=dx; 2.13954 + ptrs+=*(poff++); 2.13955 + } 2.13956 + } 2.13957 + } 2.13958 + resx.assign(); 2.13959 + } else resy.assign(resx,true); 2.13960 + 2.13961 + if (dz!=depth) { 2.13962 + if (depth==1) resz = resy.get_resize(dx,dy,dz,dim,1,0); 2.13963 + else { 2.13964 + const unsigned int wh = dx*dy; 2.13965 + resz.assign(dx,dy,dz,dim); 2.13966 + curr = old = 0; poff = off; pfoff = foff; 2.13967 + cimg_forZ(resz,z) { *(pfoff++) = curr-(unsigned int)curr; old = curr; curr+=sz; *(poff++) = wh*((unsigned int)curr-(unsigned int)old); } 2.13968 + cimg_forXYV(resz,x,y,k) { 2.13969 + ptrd = resz.ptr(x,y,0,k); 2.13970 + const T *ptrs = resy.ptr(x,y,0,k), *const ptrsmax = ptrs + (depth-1)*wh; 2.13971 + poff = off; pfoff = foff; 2.13972 + cimg_forZ(resz,z) { 2.13973 + const float alpha = *(pfoff++); 2.13974 + const T val1 = *ptrs, val2 = ptrs<ptrsmax?*(ptrs+wh):(border_condition?val1:(T)0); 2.13975 + *ptrd = (T)((1-alpha)*val1 + alpha*val2); 2.13976 + ptrd+=wh; 2.13977 + ptrs+=*(poff++); 2.13978 + } 2.13979 + } 2.13980 + } 2.13981 + resy.assign(); 2.13982 + } else resz.assign(resy,true); 2.13983 + 2.13984 + if (dv!=dim) { 2.13985 + if (dim==1) resv = resz.get_resize(dx,dy,dz,dv,1,0); 2.13986 + else { 2.13987 + const unsigned int whd = dx*dy*dz; 2.13988 + resv.assign(dx,dy,dz,dv); 2.13989 + curr = old = 0; poff = off; pfoff = foff; 2.13990 + cimg_forV(resv,k) { *(pfoff++) = curr-(unsigned int)curr; old = curr; curr+=sv; *(poff++) = whd*((unsigned int)curr-(unsigned int)old); } 2.13991 + cimg_forXYZ(resv,x,y,z) { 2.13992 + ptrd = resv.ptr(x,y,z,0); 2.13993 + const T *ptrs = resz.ptr(x,y,z,0), *const ptrsmax = ptrs + (dim-1)*whd; 2.13994 + poff = off; pfoff = foff; 2.13995 + cimg_forV(resv,k) { 2.13996 + const float alpha = *(pfoff++); 2.13997 + const T val1 = *ptrs, val2 = ptrs<ptrsmax?*(ptrs+whd):(border_condition?val1:(T)0); 2.13998 + *ptrd = (T)((1-alpha)*val1 + alpha*val2); 2.13999 + ptrd+=whd; 2.14000 + ptrs+=*(poff++); 2.14001 + } 2.14002 + } 2.14003 + } 2.14004 + resz.assign(); 2.14005 + } else resv.assign(resz,true); 2.14006 + 2.14007 + delete[] off; delete[] foff; 2.14008 + return resv.is_shared?(resz.is_shared?(resy.is_shared?(resx.is_shared?(+(*this)):resx):resy):resz):resv; 2.14009 + } break; 2.14010 + 2.14011 + case 4 : { // Grid filling 2.14012 + res.assign(dx,dy,dz,dv,0); 2.14013 + cimg_forXYZV(*this,x,y,z,k) res(x*dx/width,y*dy/height,z*dz/depth,k*dv/dim) = (*this)(x,y,z,k); 2.14014 + } break; 2.14015 + 2.14016 + case 5 : { // Cubic interpolation 2.14017 + const float 2.14018 + sx = (border_condition<0 && dx>width )?(dx>1?(width-1.0f)/(dx-1) :0):(float)width/dx, 2.14019 + sy = (border_condition<0 && dy>height)?(dy>1?(height-1.0f)/(dy-1):0):(float)height/dy, 2.14020 + sz = (border_condition<0 && dz>depth )?(dz>1?(depth-1.0f)/(dz-1) :0):(float)depth/dz, 2.14021 + sv = (border_condition<0 && dv>dim )?(dv>1?(dim-1.0f)/(dv-1) :0):(float)dim/dv; 2.14022 + res.assign(dx,dy,dz,dv); 2.14023 + T *ptrd = res.ptr(); 2.14024 + float cx, cy, cz, ck = 0; 2.14025 + cimg_forV(res,k) { cz = 0; 2.14026 + cimg_forZ(res,z) { cy = 0; 2.14027 + cimg_forY(res,y) { cx = 0; 2.14028 + cimg_forX(res,x) { 2.14029 + *(ptrd++) = (T)(border_condition?_cubic_atXY(cx,cy,(int)cz,(int)ck):cubic_atXY(cx,cy,(int)cz,(int)ck,0)); 2.14030 + cx+=sx; 2.14031 + } cy+=sy; 2.14032 + } cz+=sz; 2.14033 + } ck+=sv; 2.14034 + } 2.14035 + } break; 2.14036 + 2.14037 + default : // Invalid interpolation method 2.14038 + throw CImgArgumentException("CImg<%s>::resize() : Invalid interpolation_type %d " 2.14039 + "(should be { -1=raw, 0=zero, 1=nearest, 2=average, 3=linear, 4=grid, 5=bicubic}).", 2.14040 + pixel_type(),interpolation_type); 2.14041 + } 2.14042 + return res; 2.14043 + } 2.14044 + 2.14045 + //! Resize an image. 2.14046 + /** 2.14047 + \param src Image giving the geometry of the resize. 2.14048 + \param interpolation_type Interpolation method : 2.14049 + - 1 = raw memory 2.14050 + - 0 = no interpolation : additional space is filled with 0. 2.14051 + - 1 = bloc interpolation (nearest point). 2.14052 + - 2 = mosaic : image is repeated if necessary. 2.14053 + - 3 = linear interpolation. 2.14054 + - 4 = grid interpolation. 2.14055 + - 5 = bi-cubic interpolation. 2.14056 + \param border_condition Border condition type. 2.14057 + \note If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). 2.14058 + **/ 2.14059 + template<typename t> 2.14060 + CImg<T>& resize(const CImg<t>& src, const int interpolation_type=1, 2.14061 + const int border_condition=-1, const bool center=false) { 2.14062 + return resize(src.width,src.height,src.depth,src.dim,interpolation_type,border_condition,center); 2.14063 + } 2.14064 + 2.14065 + template<typename t> 2.14066 + CImg<T> get_resize(const CImg<t>& src, const int interpolation_type=1, 2.14067 + const int border_condition=-1, const bool center=false) const { 2.14068 + return get_resize(src.width,src.height,src.depth,src.dim,interpolation_type,border_condition,center); 2.14069 + } 2.14070 + 2.14071 + //! Resize an image. 2.14072 + /** 2.14073 + \param disp = Display giving the geometry of the resize. 2.14074 + \param interpolation_type = Resizing type : 2.14075 + - 0 = no interpolation : additional space is filled with 0. 2.14076 + - 1 = bloc interpolation (nearest point). 2.14077 + - 2 = mosaic : image is repeated if necessary. 2.14078 + - 3 = linear interpolation. 2.14079 + - 4 = grid interpolation. 2.14080 + - 5 = bi-cubic interpolation. 2.14081 + - 6 = moving average (best quality for photographs) 2.14082 + \param border_condition Border condition type. 2.14083 + \note If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). 2.14084 + **/ 2.14085 + CImg<T>& resize(const CImgDisplay& disp, const int interpolation_type=1, 2.14086 + const int border_condition=-1, const bool center=false) { 2.14087 + return resize(disp.width,disp.height,depth,dim,interpolation_type,border_condition,center); 2.14088 + } 2.14089 + 2.14090 + CImg<T> get_resize(const CImgDisplay& disp, const int interpolation_type=1, 2.14091 + const int border_condition=-1, const bool center=false) const { 2.14092 + return get_resize(disp.width,disp.height,depth,dim,interpolation_type,border_condition,center); 2.14093 + } 2.14094 + 2.14095 + //! Half-resize an image, using a special optimized filter. 2.14096 + CImg<T>& resize_halfXY() { 2.14097 + return get_resize_halfXY().transfer_to(*this); 2.14098 + } 2.14099 + 2.14100 + CImg<T> get_resize_halfXY() const { 2.14101 + if (is_empty()) return *this; 2.14102 + const Tfloat mask[9] = { 0.07842776544f, 0.1231940459f, 0.07842776544f, 2.14103 + 0.1231940459f, 0.1935127547f, 0.1231940459f, 2.14104 + 0.07842776544f, 0.1231940459f, 0.07842776544f }; 2.14105 + T I[9] = { 0 }; 2.14106 + CImg<T> dest(width/2,height/2,depth,dim); 2.14107 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) 2.14108 + if (x%2 && y%2) dest(x/2,y/2,z,k) = (T) 2.14109 + (I[0]*mask[0] + I[1]*mask[1] + I[2]*mask[2] + 2.14110 + I[3]*mask[3] + I[4]*mask[4] + I[5]*mask[5] + 2.14111 + I[6]*mask[6] + I[7]*mask[7] + I[8]*mask[8]); 2.14112 + return dest; 2.14113 + } 2.14114 + 2.14115 + //! Upscale an image by a factor 2x. 2.14116 + /** 2.14117 + Use anisotropic upscaling algorithm described at 2.14118 + http://scale2x.sourceforge.net/algorithm.html 2.14119 + **/ 2.14120 + CImg<T>& resize_doubleXY() { 2.14121 + return get_resize_doubleXY().transfer_to(*this); 2.14122 + } 2.14123 + 2.14124 + CImg<T> get_resize_doubleXY() const { 2.14125 +#define _cimg_gs2x_for3(bound,i) \ 2.14126 + for (int i = 0, _p1##i = 0, \ 2.14127 + _n1##i = 1>=(bound)?(int)(bound)-1:1; \ 2.14128 + _n1##i<(int)(bound) || i==--_n1##i; \ 2.14129 + _p1##i = i++, ++_n1##i, ptrd1+=(res).width, ptrd2+=(res).width) 2.14130 + 2.14131 +#define _cimg_gs2x_for3x3(img,x,y,z,v,I) \ 2.14132 + _cimg_gs2x_for3((img).height,y) for (int x = 0, \ 2.14133 + _p1##x = 0, \ 2.14134 + _n1##x = (int)( \ 2.14135 + (I[1] = (img)(0,_p1##y,z,v)), \ 2.14136 + (I[3] = I[4] = (img)(0,y,z,v)), \ 2.14137 + (I[7] = (img)(0,_n1##y,z,v)), \ 2.14138 + 1>=(img).width?(int)((img).width)-1:1); \ 2.14139 + (_n1##x<(int)((img).width) && ( \ 2.14140 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.14141 + (I[5] = (img)(_n1##x,y,z,v)), \ 2.14142 + (I[8] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.14143 + x==--_n1##x; \ 2.14144 + I[1] = I[2], \ 2.14145 + I[3] = I[4], I[4] = I[5], \ 2.14146 + I[7] = I[8], \ 2.14147 + _p1##x = x++, ++_n1##x) 2.14148 + 2.14149 + if (is_empty()) return *this; 2.14150 + CImg<T> res(2*width,2*height,depth,dim); 2.14151 + CImg_3x3(I,T); 2.14152 + cimg_forZV(*this,z,k) { 2.14153 + T 2.14154 + *ptrd1 = res.ptr(0,0,0,k), 2.14155 + *ptrd2 = ptrd1 + res.width; 2.14156 + _cimg_gs2x_for3x3(*this,x,y,0,k,I) { 2.14157 + if (Icp!=Icn && Ipc!=Inc) { 2.14158 + *(ptrd1++) = Ipc==Icp?Ipc:Icc; 2.14159 + *(ptrd1++) = Icp==Inc?Inc:Icc; 2.14160 + *(ptrd2++) = Ipc==Icn?Ipc:Icc; 2.14161 + *(ptrd2++) = Icn==Inc?Inc:Icc; 2.14162 + } else { *(ptrd1++) = Icc; *(ptrd1++) = Icc; *(ptrd2++) = Icc; *(ptrd2++) = Icc; } 2.14163 + } 2.14164 + } 2.14165 + return res; 2.14166 + } 2.14167 + 2.14168 + //! Upscale an image by a factor 3x. 2.14169 + /** 2.14170 + Use anisotropic upscaling algorithm described at 2.14171 + http://scale2x.sourceforge.net/algorithm.html 2.14172 + **/ 2.14173 + CImg<T>& resize_tripleXY() { 2.14174 + return get_resize_tripleXY().transfer_to(*this); 2.14175 + } 2.14176 + 2.14177 + CImg<T> get_resize_tripleXY() const { 2.14178 +#define _cimg_gs3x_for3(bound,i) \ 2.14179 + for (int i = 0, _p1##i = 0, \ 2.14180 + _n1##i = 1>=(bound)?(int)(bound)-1:1; \ 2.14181 + _n1##i<(int)(bound) || i==--_n1##i; \ 2.14182 + _p1##i = i++, ++_n1##i, ptrd1+=2*(res).width, ptrd2+=2*(res).width, ptrd3+=2*(res).width) 2.14183 + 2.14184 +#define _cimg_gs3x_for3x3(img,x,y,z,v,I) \ 2.14185 + _cimg_gs3x_for3((img).height,y) for (int x = 0, \ 2.14186 + _p1##x = 0, \ 2.14187 + _n1##x = (int)( \ 2.14188 + (I[0] = I[1] = (img)(0,_p1##y,z,v)), \ 2.14189 + (I[3] = I[4] = (img)(0,y,z,v)), \ 2.14190 + (I[6] = I[7] = (img)(0,_n1##y,z,v)), \ 2.14191 + 1>=(img).width?(int)((img).width)-1:1); \ 2.14192 + (_n1##x<(int)((img).width) && ( \ 2.14193 + (I[2] = (img)(_n1##x,_p1##y,z,v)), \ 2.14194 + (I[5] = (img)(_n1##x,y,z,v)), \ 2.14195 + (I[8] = (img)(_n1##x,_n1##y,z,v)),1)) || \ 2.14196 + x==--_n1##x; \ 2.14197 + I[0] = I[1], I[1] = I[2], \ 2.14198 + I[3] = I[4], I[4] = I[5], \ 2.14199 + I[6] = I[7], I[7] = I[8], \ 2.14200 + _p1##x = x++, ++_n1##x) 2.14201 + 2.14202 + if (is_empty()) return *this; 2.14203 + CImg<T> res(3*width,3*height,depth,dim); 2.14204 + CImg_3x3(I,T); 2.14205 + cimg_forZV(*this,z,k) { 2.14206 + T 2.14207 + *ptrd1 = res.ptr(0,0,0,k), 2.14208 + *ptrd2 = ptrd1 + res.width, 2.14209 + *ptrd3 = ptrd2 + res.width; 2.14210 + _cimg_gs3x_for3x3(*this,x,y,0,k,I) { 2.14211 + if (Icp != Icn && Ipc != Inc) { 2.14212 + *(ptrd1++) = Ipc==Icp?Ipc:Icc; 2.14213 + *(ptrd1++) = (Ipc==Icp && Icc!=Inp) || (Icp==Inc && Icc!=Ipp)?Icp:Icc; 2.14214 + *(ptrd1++) = Icp==Inc?Inc:Icc; 2.14215 + *(ptrd2++) = (Ipc==Icp && Icc!=Ipn) || (Ipc==Icn && Icc!=Ipp)?Ipc:Icc; 2.14216 + *(ptrd2++) = Icc; 2.14217 + *(ptrd2++) = (Icp==Inc && Icc!=Inn) || (Icn==Inc && Icc!=Inp)?Inc:Icc; 2.14218 + *(ptrd3++) = Ipc==Icn?Ipc:Icc; 2.14219 + *(ptrd3++) = (Ipc==Icn && Icc!=Inn) || (Icn==Inc && Icc!=Ipn)?Icn:Icc; 2.14220 + *(ptrd3++) = Icn==Inc?Inc:Icc; 2.14221 + } else { 2.14222 + *(ptrd1++) = Icc; *(ptrd1++) = Icc; *(ptrd1++) = Icc; 2.14223 + *(ptrd2++) = Icc; *(ptrd2++) = Icc; *(ptrd2++) = Icc; 2.14224 + *(ptrd3++) = Icc; *(ptrd3++) = Icc; *(ptrd3++) = Icc; 2.14225 + } 2.14226 + } 2.14227 + } 2.14228 + return res; 2.14229 + } 2.14230 + 2.14231 + // Warp an image. 2.14232 + template<typename t> 2.14233 + CImg<T>& warp(const CImg<t>& warp, const bool relative=false, 2.14234 + const bool interpolation=true, const unsigned int border_conditions=0) { 2.14235 + return get_warp(warp,relative,interpolation,border_conditions).transfer_to(*this); 2.14236 + } 2.14237 + 2.14238 + template<typename t> 2.14239 + CImg<T> get_warp(const CImg<t>& warp, const bool relative=false, 2.14240 + const bool interpolation=true, const unsigned int border_conditions=0) const { 2.14241 + if (is_empty() || !warp) return *this; 2.14242 + if (!is_sameXYZ(warp)) 2.14243 + throw CImgArgumentException("CImg<%s>::warp() : Instance image (%u,%u,%u,%u,%p) and warping field (%u,%u,%u,%u,%p) " 2.14244 + "have different XYZ dimensions.", 2.14245 + pixel_type(),width,height,depth,dim,data, 2.14246 + warp.width,warp.height,warp.depth,warp.dim,warp.data); 2.14247 + CImg<T> res(width,height,depth,dim); 2.14248 + switch (warp.dim) { 2.14249 + case 1 : // 1D warping. 2.14250 + if (relative) { // Relative warp coordinates 2.14251 + if (interpolation) switch (border_conditions) { 2.14252 + case 2 : { 2.14253 + cimg_forXYZV(*this,x,y,z,v) 2.14254 + res(x,y,z,v) = (T)_linear_atX(cimg::mod(x-(float)warp(x,y,z,0),(float)width),y,z,v); 2.14255 + } break; 2.14256 + case 1 : { 2.14257 + cimg_forXYZV(*this,x,y,z,v) 2.14258 + res(x,y,z,v) = (T)_linear_atX(x-(float)warp(x,y,z,0),y,z,v); 2.14259 + } break; 2.14260 + default : { 2.14261 + cimg_forXYZV(*this,x,y,z,v) 2.14262 + res(x,y,z,v) = (T)linear_atX(x-(float)warp(x,y,z,0),y,z,v,0); 2.14263 + } 2.14264 + } else switch (border_conditions) { 2.14265 + case 2 : { 2.14266 + cimg_forXYZV(*this,x,y,z,v) 2.14267 + res(x,y,z,v) = (*this)(cimg::mod(x-(int)warp(x,y,z,0),(int)width),y,z,v); 2.14268 + } break; 2.14269 + case 1 : { 2.14270 + cimg_forXYZV(*this,x,y,z,v) 2.14271 + res(x,y,z,v) = _atX(x-(int)warp(x,y,z,0),y,z,v); 2.14272 + } break; 2.14273 + default : { 2.14274 + cimg_forXYZV(*this,x,y,z,v) 2.14275 + res(x,y,z,v) = atX(x-(int)warp(x,y,z,0),y,z,v,0); 2.14276 + } 2.14277 + } 2.14278 + } else { // Absolute warp coordinates 2.14279 + if (interpolation) switch (border_conditions) { 2.14280 + case 2 : { 2.14281 + cimg_forXYZV(*this,x,y,z,v) 2.14282 + res(x,y,z,v) = (T)_linear_atX(cimg::mod((float)warp(x,y,z,0),(float)width),y,z,v); 2.14283 + } break; 2.14284 + case 1 : { 2.14285 + cimg_forXYZV(*this,x,y,z,v) 2.14286 + res(x,y,z,v) = (T)_linear_atX((float)warp(x,y,z,0),y,z,v); 2.14287 + } break; 2.14288 + default : { 2.14289 + cimg_forXYZV(*this,x,y,z,v) 2.14290 + res(x,y,z,v) = (T)linear_atX((float)warp(x,y,z,0),y,z,v,0); 2.14291 + } 2.14292 + } else switch (border_conditions) { 2.14293 + case 2 : { 2.14294 + cimg_forXYZV(*this,x,y,z,v) 2.14295 + res(x,y,z,v) = (*this)(cimg::mod((int)warp(x,y,z,0),(int)width),y,z,v); 2.14296 + } break; 2.14297 + case 1 : { 2.14298 + cimg_forXYZV(*this,x,y,z,v) 2.14299 + res(x,y,z,v) = _atX((int)warp(x,y,z,0),y,z,v); 2.14300 + } break; 2.14301 + default : { 2.14302 + cimg_forXYZV(*this,x,y,z,v) 2.14303 + res(x,y,z,v) = atX((int)warp(x,y,z,0),y,z,v,0); 2.14304 + } 2.14305 + } 2.14306 + } 2.14307 + break; 2.14308 + 2.14309 + case 2 : // 2D warping 2.14310 + if (relative) { // Relative warp coordinates 2.14311 + if (interpolation) switch (border_conditions) { 2.14312 + case 2 : { 2.14313 + cimg_forXYZV(*this,x,y,z,v) 2.14314 + res(x,y,z,v) = (T)_linear_atXY(cimg::mod(x-(float)warp(x,y,z,0),(float)width), 2.14315 + cimg::mod(y-(float)warp(x,y,z,1),(float)height),z,v); 2.14316 + } break; 2.14317 + case 1 : { 2.14318 + cimg_forXYZV(*this,x,y,z,v) 2.14319 + res(x,y,z,v) = (T)_linear_atXY(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z,v); 2.14320 + } break; 2.14321 + default : { 2.14322 + cimg_forXYZV(*this,x,y,z,v) 2.14323 + res(x,y,z,v) = (T)linear_atXY(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z,v,0); 2.14324 + } 2.14325 + } else switch (border_conditions) { 2.14326 + case 2 : { 2.14327 + cimg_forXYZV(*this,x,y,z,v) 2.14328 + res(x,y,z,v) = (*this)(cimg::mod(x-(int)warp(x,y,z,0),(int)width), 2.14329 + cimg::mod(y-(int)warp(x,y,z,1),(int)height),z,v); 2.14330 + } break; 2.14331 + case 1 : { 2.14332 + cimg_forXYZV(*this,x,y,z,v) 2.14333 + res(x,y,z,v) = _atXY(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z,v); 2.14334 + } break; 2.14335 + default : { 2.14336 + cimg_forXYZV(*this,x,y,z,v) 2.14337 + res(x,y,z,v) = atXY(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z,v,0); 2.14338 + } 2.14339 + } 2.14340 + } else { // Absolute warp coordinates 2.14341 + if (interpolation) switch (border_conditions) { 2.14342 + case 2 : { 2.14343 + cimg_forXYZV(*this,x,y,z,v) 2.14344 + res(x,y,z,v) = (T)_linear_atXY(cimg::mod((float)warp(x,y,z,0),(float)width), 2.14345 + cimg::mod((float)warp(x,y,z,1),(float)height),z,v); 2.14346 + } break; 2.14347 + case 1 : { 2.14348 + cimg_forXYZV(*this,x,y,z,v) 2.14349 + res(x,y,z,v) = (T)_linear_atXY((float)warp(x,y,z,0),(float)warp(x,y,z,1),z,v); 2.14350 + } break; 2.14351 + default : { 2.14352 + cimg_forXYZV(*this,x,y,z,v) 2.14353 + res(x,y,z,v) = (T)linear_atXY((float)warp(x,y,z,0),(float)warp(x,y,z,1),z,v,0); 2.14354 + } 2.14355 + } else switch (border_conditions) { 2.14356 + case 2 : { 2.14357 + cimg_forXYZV(*this,x,y,z,v) 2.14358 + res(x,y,z,v) = (*this)(cimg::mod((int)warp(x,y,z,0),(int)width), 2.14359 + cimg::mod((int)warp(x,y,z,1),(int)depth),z,v); 2.14360 + } break; 2.14361 + case 1 : { 2.14362 + cimg_forXYZV(*this,x,y,z,v) 2.14363 + res(x,y,z,v) = _atXY((int)warp(x,y,z,0),(int)warp(x,y,z,1),z,v); 2.14364 + } break; 2.14365 + default : { 2.14366 + cimg_forXYZV(*this,x,y,z,v) 2.14367 + res(x,y,z,v) = atXY((int)warp(x,y,z,0),(int)warp(x,y,z,1),z,v,0); 2.14368 + } 2.14369 + } 2.14370 + } 2.14371 + break; 2.14372 + 2.14373 + case 3 : // 3D warping 2.14374 + if (relative) { // Relative warp coordinates 2.14375 + if (interpolation) switch (border_conditions) { 2.14376 + case 2 : { 2.14377 + cimg_forXYZV(*this,x,y,z,v) 2.14378 + res(x,y,z,v) = (T)_linear_atXYZ(cimg::mod(x-(float)warp(x,y,z,0),(float)width), 2.14379 + cimg::mod(y-(float)warp(x,y,z,1),(float)height), 2.14380 + cimg::mod(z-(float)warp(x,y,z,2),(float)depth),v); 2.14381 + } break; 2.14382 + case 1 : { 2.14383 + cimg_forXYZV(*this,x,y,z,v) 2.14384 + res(x,y,z,v) = (T)_linear_atXYZ(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z-(float)warp(x,y,z,2),v); 2.14385 + } break; 2.14386 + default : { 2.14387 + cimg_forXYZV(*this,x,y,z,v) 2.14388 + res(x,y,z,v) = (T)linear_atXYZ(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z-(float)warp(x,y,z,2),v,0); 2.14389 + } 2.14390 + } else switch (border_conditions) { 2.14391 + case 2 : { 2.14392 + cimg_forXYZV(*this,x,y,z,v) 2.14393 + res(x,y,z,v) = (*this)(cimg::mod(x-(int)warp(x,y,z,0),(int)width), 2.14394 + cimg::mod(y-(int)warp(x,y,z,1),(int)height), 2.14395 + cimg::mod(z-(int)warp(x,y,z,2),(int)depth),v); 2.14396 + } break; 2.14397 + case 1 : { 2.14398 + cimg_forXYZV(*this,x,y,z,v) 2.14399 + res(x,y,z,v) = _atXYZ(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z-(int)warp(x,y,z,2),v); 2.14400 + } break; 2.14401 + default : { 2.14402 + cimg_forXYZV(*this,x,y,z,v) 2.14403 + res(x,y,z,v) = atXYZ(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z-(int)warp(x,y,z,2),v,0); 2.14404 + } 2.14405 + } 2.14406 + } else { // Absolute warp coordinates 2.14407 + if (interpolation) switch (border_conditions) { 2.14408 + case 2 : { 2.14409 + cimg_forXYZV(*this,x,y,z,v) 2.14410 + res(x,y,z,v) = (T)_linear_atXYZ(cimg::mod((float)warp(x,y,z,0),(float)width), 2.14411 + cimg::mod((float)warp(x,y,z,1),(float)height), 2.14412 + cimg::mod((float)warp(x,y,z,2),(float)depth),v); 2.14413 + } break; 2.14414 + case 1 : { 2.14415 + cimg_forXYZV(*this,x,y,z,v) 2.14416 + res(x,y,z,v) = (T)_linear_atXYZ((float)warp(x,y,z,0),(float)warp(x,y,z,1),(float)warp(x,y,z,2),v); 2.14417 + } break; 2.14418 + default : { 2.14419 + cimg_forXYZV(*this,x,y,z,v) 2.14420 + res(x,y,z,v) = (T)linear_atXYZ((float)warp(x,y,z,0),(float)warp(x,y,z,1),(float)warp(x,y,z,2),v,0); 2.14421 + } 2.14422 + } else switch (border_conditions) { 2.14423 + case 2 : { 2.14424 + cimg_forXYZV(*this,x,y,z,v) 2.14425 + res(x,y,z,v) = (*this)(cimg::mod((int)warp(x,y,z,0),(int)width), 2.14426 + cimg::mod((int)warp(x,y,z,1),(int)height), 2.14427 + cimg::mod((int)warp(x,y,z,2),(int)depth),v); 2.14428 + } break; 2.14429 + case 1 : { 2.14430 + cimg_forXYZV(*this,x,y,z,v) 2.14431 + res(x,y,z,v) = _atXYZ((int)warp(x,y,z,0),(int)warp(x,y,z,1),(int)warp(x,y,z,2),v); 2.14432 + } break; 2.14433 + default : { 2.14434 + cimg_forXYZV(*this,x,y,z,v) 2.14435 + res(x,y,z,v) = atXYZ((int)warp(x,y,z,0),(int)warp(x,y,z,1),(int)warp(x,y,z,2),v,0); 2.14436 + } 2.14437 + } 2.14438 + } 2.14439 + break; 2.14440 + 2.14441 + default : // 4D warping 2.14442 + if (relative) { // Relative warp coordinates 2.14443 + if (interpolation) switch (border_conditions) { 2.14444 + case 2 : { 2.14445 + cimg_forXYZV(*this,x,y,z,v) 2.14446 + res(x,y,z,v) = (T)_linear_atXYZV(cimg::mod(x-(float)warp(x,y,z,0),(float)width), 2.14447 + cimg::mod(y-(float)warp(x,y,z,1),(float)height), 2.14448 + cimg::mod(z-(float)warp(x,y,z,2),(float)depth), 2.14449 + cimg::mod(z-(float)warp(x,y,z,3),(float)dim)); 2.14450 + } break; 2.14451 + case 1 : { 2.14452 + cimg_forXYZV(*this,x,y,z,v) 2.14453 + res(x,y,z,v) = (T)_linear_atXYZV(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z-(float)warp(x,y,z,2),v-(float)warp(x,y,z,3)); 2.14454 + } break; 2.14455 + default : { 2.14456 + cimg_forXYZV(*this,x,y,z,v) 2.14457 + res(x,y,z,v) = (T)linear_atXYZV(x-(float)warp(x,y,z,0),y-(float)warp(x,y,z,1),z-(float)warp(x,y,z,2),v-(float)warp(x,y,z,3),0); 2.14458 + } 2.14459 + } else switch (border_conditions) { 2.14460 + case 2 : { 2.14461 + cimg_forXYZV(*this,x,y,z,v) 2.14462 + res(x,y,z,v) = (*this)(cimg::mod(x-(int)warp(x,y,z,0),(int)width), 2.14463 + cimg::mod(y-(int)warp(x,y,z,1),(int)height), 2.14464 + cimg::mod(z-(int)warp(x,y,z,2),(int)depth), 2.14465 + cimg::mod(v-(int)warp(x,y,z,3),(int)dim)); 2.14466 + } break; 2.14467 + case 1 : { 2.14468 + cimg_forXYZV(*this,x,y,z,v) 2.14469 + res(x,y,z,v) = _atXYZV(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z-(int)warp(x,y,z,2),v-(int)warp(x,y,z,3)); 2.14470 + } break; 2.14471 + default : { 2.14472 + cimg_forXYZV(*this,x,y,z,v) 2.14473 + res(x,y,z,v) = atXYZ(x-(int)warp(x,y,z,0),y-(int)warp(x,y,z,1),z-(int)warp(x,y,z,2),v-(int)warp(x,y,z,3),0); 2.14474 + } 2.14475 + } 2.14476 + } else { // Absolute warp coordinates 2.14477 + if (interpolation) switch (border_conditions) { 2.14478 + case 2 : { 2.14479 + cimg_forXYZV(*this,x,y,z,v) 2.14480 + res(x,y,z,v) = (T)_linear_atXYZV(cimg::mod((float)warp(x,y,z,0),(float)width), 2.14481 + cimg::mod((float)warp(x,y,z,1),(float)height), 2.14482 + cimg::mod((float)warp(x,y,z,2),(float)depth), 2.14483 + cimg::mod((float)warp(x,y,z,3),(float)dim)); 2.14484 + } break; 2.14485 + case 1 : { 2.14486 + cimg_forXYZV(*this,x,y,z,v) 2.14487 + res(x,y,z,v) = (T)_linear_atXYZV((float)warp(x,y,z,0),(float)warp(x,y,z,1),(float)warp(x,y,z,2),(float)warp(x,y,z,3)); 2.14488 + } break; 2.14489 + default : { 2.14490 + cimg_forXYZV(*this,x,y,z,v) 2.14491 + res(x,y,z,v) = (T)linear_atXYZV((float)warp(x,y,z,0),(float)warp(x,y,z,1),(float)warp(x,y,z,2),(float)warp(x,y,z,3),0); 2.14492 + } 2.14493 + } else switch (border_conditions) { 2.14494 + case 2 : { 2.14495 + cimg_forXYZV(*this,x,y,z,v) 2.14496 + res(x,y,z,v) = (*this)(cimg::mod((int)warp(x,y,z,0),(int)width), 2.14497 + cimg::mod((int)warp(x,y,z,1),(int)height), 2.14498 + cimg::mod((int)warp(x,y,z,2),(int)depth), 2.14499 + cimg::mod((int)warp(x,y,z,3),(int)dim)); 2.14500 + } break; 2.14501 + case 1 : { 2.14502 + cimg_forXYZV(*this,x,y,z,v) 2.14503 + res(x,y,z,v) = _atXYZV((int)warp(x,y,z,0),(int)warp(x,y,z,1),(int)warp(x,y,z,2),(int)warp(x,y,z,3)); 2.14504 + } break; 2.14505 + default : { 2.14506 + cimg_forXYZV(*this,x,y,z,v) 2.14507 + res(x,y,z,v) = atXYZV((int)warp(x,y,z,0),(int)warp(x,y,z,1),(int)warp(x,y,z,2),(int)warp(x,y,z,3),0); 2.14508 + } 2.14509 + } 2.14510 + } 2.14511 + } 2.14512 + return res; 2.14513 + } 2.14514 + 2.14515 + // Permute axes order (internal). 2.14516 + template<typename t> 2.14517 + CImg<t> _get_permute_axes(const char *permut, const t&) const { 2.14518 + if (is_empty() || !permut) return CImg<t>(*this,false); 2.14519 + CImg<t> res; 2.14520 + const T* ptrs = data; 2.14521 + if (!cimg::strncasecmp(permut,"xyzv",4)) return (+*this); 2.14522 + if (!cimg::strncasecmp(permut,"xyvz",4)) { 2.14523 + res.assign(width,height,dim,depth); 2.14524 + cimg_forXYZV(*this,x,y,z,v) res(x,y,v,z) = (t)*(ptrs++); 2.14525 + } 2.14526 + if (!cimg::strncasecmp(permut,"xzyv",4)) { 2.14527 + res.assign(width,depth,height,dim); 2.14528 + cimg_forXYZV(*this,x,y,z,v) res(x,z,y,v) = (t)*(ptrs++); 2.14529 + } 2.14530 + if (!cimg::strncasecmp(permut,"xzvy",4)) { 2.14531 + res.assign(width,depth,dim,height); 2.14532 + cimg_forXYZV(*this,x,y,z,v) res(x,z,v,y) = (t)*(ptrs++); 2.14533 + } 2.14534 + if (!cimg::strncasecmp(permut,"xvyz",4)) { 2.14535 + res.assign(width,dim,height,depth); 2.14536 + cimg_forXYZV(*this,x,y,z,v) res(x,v,y,z) = (t)*(ptrs++); 2.14537 + } 2.14538 + if (!cimg::strncasecmp(permut,"xvzy",4)) { 2.14539 + res.assign(width,dim,depth,height); 2.14540 + cimg_forXYZV(*this,x,y,z,v) res(x,v,z,y) = (t)*(ptrs++); 2.14541 + } 2.14542 + if (!cimg::strncasecmp(permut,"yxzv",4)) { 2.14543 + res.assign(height,width,depth,dim); 2.14544 + cimg_forXYZV(*this,x,y,z,v) res(y,x,z,v) = (t)*(ptrs++); 2.14545 + } 2.14546 + if (!cimg::strncasecmp(permut,"yxvz",4)) { 2.14547 + res.assign(height,width,dim,depth); 2.14548 + cimg_forXYZV(*this,x,y,z,v) res(y,x,v,z) = (t)*(ptrs++); 2.14549 + } 2.14550 + if (!cimg::strncasecmp(permut,"yzxv",4)) { 2.14551 + res.assign(height,depth,width,dim); 2.14552 + cimg_forXYZV(*this,x,y,z,v) res(y,z,x,v) = (t)*(ptrs++); 2.14553 + } 2.14554 + if (!cimg::strncasecmp(permut,"yzvx",4)) { 2.14555 + res.assign(height,depth,dim,width); 2.14556 + switch (width) { 2.14557 + case 1 : { 2.14558 + t *ptrR = res.ptr(0,0,0,0); 2.14559 + for (unsigned long siz = height*depth*dim; siz; --siz) { 2.14560 + *(ptrR++) = (t)*(ptrs++); 2.14561 + } 2.14562 + } break; 2.14563 + case 2 : { 2.14564 + t *ptrR = res.ptr(0,0,0,0), *ptrG = res.ptr(0,0,0,1); 2.14565 + for (unsigned long siz = height*depth*dim; siz; --siz) { 2.14566 + *(ptrR++) = (t)*(ptrs++); *(ptrG++) = (t)*(ptrs++); 2.14567 + } 2.14568 + } break; 2.14569 + case 3 : { // Optimization for the classical conversion from interleaved RGB to planar RGB 2.14570 + t *ptrR = res.ptr(0,0,0,0), *ptrG = res.ptr(0,0,0,1), *ptrB = res.ptr(0,0,0,2); 2.14571 + for (unsigned long siz = height*depth*dim; siz; --siz) { 2.14572 + *(ptrR++) = (t)*(ptrs++); *(ptrG++) = (t)*(ptrs++); *(ptrB++) = (t)*(ptrs++); 2.14573 + } 2.14574 + } break; 2.14575 + case 4 : { // Optimization for the classical conversion from interleaved RGBA to planar RGBA 2.14576 + t *ptrR = res.ptr(0,0,0,0), *ptrG = res.ptr(0,0,0,1), *ptrB = res.ptr(0,0,0,2), *ptrA = res.ptr(0,0,0,3); 2.14577 + for (unsigned long siz = height*depth*dim; siz; --siz) { 2.14578 + *(ptrR++) = (t)*(ptrs++); *(ptrG++) = (t)*(ptrs++); *(ptrB++) = (t)*(ptrs++); *(ptrA++) = (t)*(ptrs++); 2.14579 + } 2.14580 + } break; 2.14581 + default : { 2.14582 + cimg_forXYZV(*this,x,y,z,v) res(y,z,v,x) = *(ptrs++); 2.14583 + return res; 2.14584 + } 2.14585 + } 2.14586 + } 2.14587 + if (!cimg::strncasecmp(permut,"yvxz",4)) { 2.14588 + res.assign(height,dim,width,depth); 2.14589 + cimg_forXYZV(*this,x,y,z,v) res(y,v,x,z) = (t)*(ptrs++); 2.14590 + } 2.14591 + if (!cimg::strncasecmp(permut,"yvzx",4)) { 2.14592 + res.assign(height,dim,depth,width); 2.14593 + cimg_forXYZV(*this,x,y,z,v) res(y,v,z,x) = (t)*(ptrs++); 2.14594 + } 2.14595 + if (!cimg::strncasecmp(permut,"zxyv",4)) { 2.14596 + res.assign(depth,width,height,dim); 2.14597 + cimg_forXYZV(*this,x,y,z,v) res(z,x,y,v) = (t)*(ptrs++); 2.14598 + } 2.14599 + if (!cimg::strncasecmp(permut,"zxvy",4)) { 2.14600 + res.assign(depth,width,dim,height); 2.14601 + cimg_forXYZV(*this,x,y,z,v) res(z,x,v,y) = (t)*(ptrs++); 2.14602 + } 2.14603 + if (!cimg::strncasecmp(permut,"zyxv",4)) { 2.14604 + res.assign(depth,height,width,dim); 2.14605 + cimg_forXYZV(*this,x,y,z,v) res(z,y,x,v) = (t)*(ptrs++); 2.14606 + } 2.14607 + if (!cimg::strncasecmp(permut,"zyvx",4)) { 2.14608 + res.assign(depth,height,dim,width); 2.14609 + cimg_forXYZV(*this,x,y,z,v) res(z,y,v,x) = (t)*(ptrs++); 2.14610 + } 2.14611 + if (!cimg::strncasecmp(permut,"zvxy",4)) { 2.14612 + res.assign(depth,dim,width,height); 2.14613 + cimg_forXYZV(*this,x,y,z,v) res(z,v,x,y) = (t)*(ptrs++); 2.14614 + } 2.14615 + if (!cimg::strncasecmp(permut,"zvyx",4)) { 2.14616 + res.assign(depth,dim,height,width); 2.14617 + cimg_forXYZV(*this,x,y,z,v) res(z,v,y,x) = (t)*(ptrs++); 2.14618 + } 2.14619 + if (!cimg::strncasecmp(permut,"vxyz",4)) { 2.14620 + res.assign(dim,width,height,depth); 2.14621 + switch (dim) { 2.14622 + case 1 : { 2.14623 + const T *ptrR = ptr(0,0,0,0); 2.14624 + t *ptrd = res.ptr(); 2.14625 + for (unsigned long siz = width*height*depth; siz; --siz) { 2.14626 + *(ptrd++) = (t)*(ptrR++); 2.14627 + } 2.14628 + } break; 2.14629 + case 2 : { 2.14630 + const T *ptrR = ptr(0,0,0,0), *ptrG = ptr(0,0,0,1); 2.14631 + t *ptrd = res.ptr(); 2.14632 + for (unsigned long siz = width*height*depth; siz; --siz) { 2.14633 + *(ptrd++) = (t)*(ptrR++); *(ptrd++) = (t)*(ptrG++); 2.14634 + } 2.14635 + } break; 2.14636 + case 3 : { // Optimization for the classical conversion from planar RGB to interleaved RGB 2.14637 + const T *ptrR = ptr(0,0,0,0), *ptrG = ptr(0,0,0,1), *ptrB = ptr(0,0,0,2); 2.14638 + t *ptrd = res.ptr(); 2.14639 + for (unsigned long siz = width*height*depth; siz; --siz) { 2.14640 + *(ptrd++) = (t)*(ptrR++); *(ptrd++) = (t)*(ptrG++); *(ptrd++) = (t)*(ptrB++); 2.14641 + } 2.14642 + } break; 2.14643 + case 4 : { // Optimization for the classical conversion from planar RGBA to interleaved RGBA 2.14644 + const T *ptrR = ptr(0,0,0,0), *ptrG = ptr(0,0,0,1), *ptrB = ptr(0,0,0,2), *ptrA = ptr(0,0,0,3); 2.14645 + t *ptrd = res.ptr(); 2.14646 + for (unsigned long siz = width*height*depth; siz; --siz) { 2.14647 + *(ptrd++) = (t)*(ptrR++); *(ptrd++) = (t)*(ptrG++); *(ptrd++) = (t)*(ptrB++); *(ptrd++) = (t)*(ptrA++); 2.14648 + } 2.14649 + } break; 2.14650 + default : { 2.14651 + cimg_forXYZV(*this,x,y,z,v) res(v,x,y,z) = (t)*(ptrs++); 2.14652 + } 2.14653 + } 2.14654 + } 2.14655 + if (!cimg::strncasecmp(permut,"vxzy",4)) { 2.14656 + res.assign(dim,width,depth,height); 2.14657 + cimg_forXYZV(*this,x,y,z,v) res(v,x,z,y) = (t)*(ptrs++); 2.14658 + } 2.14659 + if (!cimg::strncasecmp(permut,"vyxz",4)) { 2.14660 + res.assign(dim,height,width,depth); 2.14661 + cimg_forXYZV(*this,x,y,z,v) res(v,y,x,z) = (t)*(ptrs++); 2.14662 + } 2.14663 + if (!cimg::strncasecmp(permut,"vyzx",4)) { 2.14664 + res.assign(dim,height,depth,width); 2.14665 + cimg_forXYZV(*this,x,y,z,v) res(v,y,z,x) = (t)*(ptrs++); 2.14666 + } 2.14667 + if (!cimg::strncasecmp(permut,"vzxy",4)) { 2.14668 + res.assign(dim,depth,width,height); 2.14669 + cimg_forXYZV(*this,x,y,z,v) res(v,z,x,y) = (t)*(ptrs++); 2.14670 + } 2.14671 + if (!cimg::strncasecmp(permut,"vzyx",4)) { 2.14672 + res.assign(dim,depth,height,width); 2.14673 + cimg_forXYZV(*this,x,y,z,v) res(v,z,y,x) = (t)*(ptrs++); 2.14674 + } 2.14675 + if (!res) 2.14676 + throw CImgArgumentException("CImg<%s>::permute_axes() : Invalid input permutation '%s'.", 2.14677 + pixel_type(),permut); 2.14678 + return res; 2.14679 + } 2.14680 + 2.14681 + //! Permute axes order. 2.14682 + /** 2.14683 + This function permutes image axes. 2.14684 + \param permut = String describing the permutation (4 characters). 2.14685 + **/ 2.14686 + CImg<T>& permute_axes(const char *order) { 2.14687 + return get_permute_axes(order).transfer_to(*this); 2.14688 + } 2.14689 + 2.14690 + CImg<T> get_permute_axes(const char *order) const { 2.14691 + const T foo = (T)0; 2.14692 + return _get_permute_axes(order,foo); 2.14693 + } 2.14694 + 2.14695 + //! Invert endianness. 2.14696 + CImg<T>& invert_endianness() { 2.14697 + cimg::invert_endianness(data,size()); 2.14698 + return *this; 2.14699 + } 2.14700 + 2.14701 + CImg<T> get_invert_endianness() const { 2.14702 + return (+*this).invert_endianness(); 2.14703 + } 2.14704 + 2.14705 + //! Mirror an image along the specified axis. 2.14706 + CImg<T>& mirror(const char axis) { 2.14707 + if (is_empty()) return *this; 2.14708 + T *pf, *pb, *buf = 0; 2.14709 + switch (cimg::uncase(axis)) { 2.14710 + case 'x' : { 2.14711 + pf = data; pb = ptr(width-1); 2.14712 + const unsigned int width2 = width/2; 2.14713 + for (unsigned int yzv = 0; yzv<height*depth*dim; ++yzv) { 2.14714 + for (unsigned int x = 0; x<width2; ++x) { const T val = *pf; *(pf++) = *pb; *(pb--) = val; } 2.14715 + pf+=width - width2; 2.14716 + pb+=width + width2; 2.14717 + } 2.14718 + } break; 2.14719 + case 'y' : { 2.14720 + buf = new T[width]; 2.14721 + pf = data; pb = ptr(0,height-1); 2.14722 + const unsigned int height2 = height/2; 2.14723 + for (unsigned int zv=0; zv<depth*dim; ++zv) { 2.14724 + for (unsigned int y=0; y<height2; ++y) { 2.14725 + cimg_std::memcpy(buf,pf,width*sizeof(T)); 2.14726 + cimg_std::memcpy(pf,pb,width*sizeof(T)); 2.14727 + cimg_std::memcpy(pb,buf,width*sizeof(T)); 2.14728 + pf+=width; 2.14729 + pb-=width; 2.14730 + } 2.14731 + pf+=width*(height - height2); 2.14732 + pb+=width*(height + height2); 2.14733 + } 2.14734 + } break; 2.14735 + case 'z' : { 2.14736 + buf = new T[width*height]; 2.14737 + pf = data; pb = ptr(0,0,depth-1); 2.14738 + const unsigned int depth2 = depth/2; 2.14739 + cimg_forV(*this,v) { 2.14740 + for (unsigned int z=0; z<depth2; ++z) { 2.14741 + cimg_std::memcpy(buf,pf,width*height*sizeof(T)); 2.14742 + cimg_std::memcpy(pf,pb,width*height*sizeof(T)); 2.14743 + cimg_std::memcpy(pb,buf,width*height*sizeof(T)); 2.14744 + pf+=width*height; 2.14745 + pb-=width*height; 2.14746 + } 2.14747 + pf+=width*height*(depth - depth2); 2.14748 + pb+=width*height*(depth + depth2); 2.14749 + } 2.14750 + } break; 2.14751 + case 'v' : { 2.14752 + buf = new T[width*height*depth]; 2.14753 + pf = data; pb = ptr(0,0,0,dim-1); 2.14754 + const unsigned int dim2 = dim/2; 2.14755 + for (unsigned int v=0; v<dim2; ++v) { 2.14756 + cimg_std::memcpy(buf,pf,width*height*depth*sizeof(T)); 2.14757 + cimg_std::memcpy(pf,pb,width*height*depth*sizeof(T)); 2.14758 + cimg_std::memcpy(pb,buf,width*height*depth*sizeof(T)); 2.14759 + pf+=width*height*depth; 2.14760 + pb-=width*height*depth; 2.14761 + } 2.14762 + } break; 2.14763 + default : 2.14764 + throw CImgArgumentException("CImg<%s>::mirror() : unknow axis '%c', must be 'x','y','z' or 'v'.", 2.14765 + pixel_type(),axis); 2.14766 + } 2.14767 + if (buf) delete[] buf; 2.14768 + return *this; 2.14769 + } 2.14770 + 2.14771 + CImg<T> get_mirror(const char axis) const { 2.14772 + return (+*this).mirror(axis); 2.14773 + } 2.14774 + 2.14775 + //! Translate the image. 2.14776 + /** 2.14777 + \param deltax Amount of displacement along the X-axis. 2.14778 + \param deltay Amount of displacement along the Y-axis. 2.14779 + \param deltaz Amount of displacement along the Z-axis. 2.14780 + \param deltav Amount of displacement along the V-axis. 2.14781 + \param border_condition Border condition. 2.14782 + 2.14783 + - \c border_condition can be : 2.14784 + - 0 : Zero border condition (Dirichlet). 2.14785 + - 1 : Nearest neighbors (Neumann). 2.14786 + - 2 : Repeat Pattern (Fourier style). 2.14787 + **/ 2.14788 + CImg<T>& translate(const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, 2.14789 + const int border_condition=0) { 2.14790 + if (is_empty()) return *this; 2.14791 + if (deltax) // Translate along X-axis 2.14792 + switch (border_condition) { 2.14793 + case 0 : 2.14794 + if (cimg::abs(deltax)>=dimx()) return fill(0); 2.14795 + if (deltax>0) cimg_forYZV(*this,y,z,k) { 2.14796 + cimg_std::memmove(ptr(0,y,z,k),ptr(deltax,y,z,k),(width-deltax)*sizeof(T)); 2.14797 + cimg_std::memset(ptr(width-deltax,y,z,k),0,deltax*sizeof(T)); 2.14798 + } else cimg_forYZV(*this,y,z,k) { 2.14799 + cimg_std::memmove(ptr(-deltax,y,z,k),ptr(0,y,z,k),(width+deltax)*sizeof(T)); 2.14800 + cimg_std::memset(ptr(0,y,z,k),0,-deltax*sizeof(T)); 2.14801 + } 2.14802 + break; 2.14803 + case 1 : 2.14804 + if (deltax>0) { 2.14805 + const int ndeltax = (deltax>=dimx())?width-1:deltax; 2.14806 + if (!ndeltax) return *this; 2.14807 + cimg_forYZV(*this,y,z,k) { 2.14808 + cimg_std::memmove(ptr(0,y,z,k),ptr(ndeltax,y,z,k),(width-ndeltax)*sizeof(T)); 2.14809 + T *ptrd = ptr(width-1,y,z,k); 2.14810 + const T val = *ptrd; 2.14811 + for (int l = 0; l<ndeltax-1; ++l) *(--ptrd) = val; 2.14812 + } 2.14813 + } else { 2.14814 + const int ndeltax = (-deltax>=dimx())?width-1:-deltax; 2.14815 + if (!ndeltax) return *this; 2.14816 + cimg_forYZV(*this,y,z,k) { 2.14817 + cimg_std::memmove(ptr(ndeltax,y,z,k),ptr(0,y,z,k),(width-ndeltax)*sizeof(T)); 2.14818 + T *ptrd = ptr(0,y,z,k); 2.14819 + const T val = *ptrd; 2.14820 + for (int l = 0; l<ndeltax-1; ++l) *(++ptrd) = val; 2.14821 + } 2.14822 + } 2.14823 + break; 2.14824 + case 2 : { 2.14825 + const int ml = cimg::mod(deltax,dimx()), ndeltax = (ml<=dimx()/2)?ml:(ml-dimx()); 2.14826 + if (!ndeltax) return *this; 2.14827 + T* buf = new T[cimg::abs(ndeltax)]; 2.14828 + if (ndeltax>0) cimg_forYZV(*this,y,z,k) { 2.14829 + cimg_std::memcpy(buf,ptr(0,y,z,k),ndeltax*sizeof(T)); 2.14830 + cimg_std::memmove(ptr(0,y,z,k),ptr(ndeltax,y,z,k),(width-ndeltax)*sizeof(T)); 2.14831 + cimg_std::memcpy(ptr(width-ndeltax,y,z,k),buf,ndeltax*sizeof(T)); 2.14832 + } else cimg_forYZV(*this,y,z,k) { 2.14833 + cimg_std::memcpy(buf,ptr(width+ndeltax,y,z,k),-ndeltax*sizeof(T)); 2.14834 + cimg_std::memmove(ptr(-ndeltax,y,z,k),ptr(0,y,z,k),(width+ndeltax)*sizeof(T)); 2.14835 + cimg_std::memcpy(ptr(0,y,z,k),buf,-ndeltax*sizeof(T)); 2.14836 + } 2.14837 + delete[] buf; 2.14838 + } break; 2.14839 + } 2.14840 + 2.14841 + if (deltay) // Translate along Y-axis 2.14842 + switch (border_condition) { 2.14843 + case 0 : 2.14844 + if (cimg::abs(deltay)>=dimy()) return fill(0); 2.14845 + if (deltay>0) cimg_forZV(*this,z,k) { 2.14846 + cimg_std::memmove(ptr(0,0,z,k),ptr(0,deltay,z,k),width*(height-deltay)*sizeof(T)); 2.14847 + cimg_std::memset(ptr(0,height-deltay,z,k),0,width*deltay*sizeof(T)); 2.14848 + } else cimg_forZV(*this,z,k) { 2.14849 + cimg_std::memmove(ptr(0,-deltay,z,k),ptr(0,0,z,k),width*(height+deltay)*sizeof(T)); 2.14850 + cimg_std::memset(ptr(0,0,z,k),0,-deltay*width*sizeof(T)); 2.14851 + } 2.14852 + break; 2.14853 + case 1 : 2.14854 + if (deltay>0) { 2.14855 + const int ndeltay = (deltay>=dimy())?height-1:deltay; 2.14856 + if (!ndeltay) return *this; 2.14857 + cimg_forZV(*this,z,k) { 2.14858 + cimg_std::memmove(ptr(0,0,z,k),ptr(0,ndeltay,z,k),width*(height-ndeltay)*sizeof(T)); 2.14859 + T *ptrd = ptr(0,height-ndeltay,z,k), *ptrs = ptr(0,height-1,z,k); 2.14860 + for (int l = 0; l<ndeltay-1; ++l) { cimg_std::memcpy(ptrd,ptrs,width*sizeof(T)); ptrd+=width; } 2.14861 + } 2.14862 + } else { 2.14863 + const int ndeltay = (-deltay>=dimy())?height-1:-deltay; 2.14864 + if (!ndeltay) return *this; 2.14865 + cimg_forZV(*this,z,k) { 2.14866 + cimg_std::memmove(ptr(0,ndeltay,z,k),ptr(0,0,z,k),width*(height-ndeltay)*sizeof(T)); 2.14867 + T *ptrd = ptr(0,1,z,k), *ptrs = ptr(0,0,z,k); 2.14868 + for (int l = 0; l<ndeltay-1; ++l) { cimg_std::memcpy(ptrd,ptrs,width*sizeof(T)); ptrd+=width; } 2.14869 + } 2.14870 + } 2.14871 + break; 2.14872 + case 2 : { 2.14873 + const int ml = cimg::mod(deltay,dimy()), ndeltay = (ml<=dimy()/2)?ml:(ml-dimy()); 2.14874 + if (!ndeltay) return *this; 2.14875 + T* buf = new T[width*cimg::abs(ndeltay)]; 2.14876 + if (ndeltay>0) cimg_forZV(*this,z,k) { 2.14877 + cimg_std::memcpy(buf,ptr(0,0,z,k),width*ndeltay*sizeof(T)); 2.14878 + cimg_std::memmove(ptr(0,0,z,k),ptr(0,ndeltay,z,k),width*(height-ndeltay)*sizeof(T)); 2.14879 + cimg_std::memcpy(ptr(0,height-ndeltay,z,k),buf,width*ndeltay*sizeof(T)); 2.14880 + } else cimg_forZV(*this,z,k) { 2.14881 + cimg_std::memcpy(buf,ptr(0,height+ndeltay,z,k),-ndeltay*width*sizeof(T)); 2.14882 + cimg_std::memmove(ptr(0,-ndeltay,z,k),ptr(0,0,z,k),width*(height+ndeltay)*sizeof(T)); 2.14883 + cimg_std::memcpy(ptr(0,0,z,k),buf,-ndeltay*width*sizeof(T)); 2.14884 + } 2.14885 + delete[] buf; 2.14886 + } break; 2.14887 + } 2.14888 + 2.14889 + if (deltaz) // Translate along Z-axis 2.14890 + switch (border_condition) { 2.14891 + case 0 : 2.14892 + if (cimg::abs(deltaz)>=dimz()) return fill(0); 2.14893 + if (deltaz>0) cimg_forV(*this,k) { 2.14894 + cimg_std::memmove(ptr(0,0,0,k),ptr(0,0,deltaz,k),width*height*(depth-deltaz)*sizeof(T)); 2.14895 + cimg_std::memset(ptr(0,0,depth-deltaz,k),0,width*height*deltaz*sizeof(T)); 2.14896 + } else cimg_forV(*this,k) { 2.14897 + cimg_std::memmove(ptr(0,0,-deltaz,k),ptr(0,0,0,k),width*height*(depth+deltaz)*sizeof(T)); 2.14898 + cimg_std::memset(ptr(0,0,0,k),0,-deltaz*width*height*sizeof(T)); 2.14899 + } 2.14900 + break; 2.14901 + case 1 : 2.14902 + if (deltaz>0) { 2.14903 + const int ndeltaz = (deltaz>=dimz())?depth-1:deltaz; 2.14904 + if (!ndeltaz) return *this; 2.14905 + cimg_forV(*this,k) { 2.14906 + cimg_std::memmove(ptr(0,0,0,k),ptr(0,0,ndeltaz,k),width*height*(depth-ndeltaz)*sizeof(T)); 2.14907 + T *ptrd = ptr(0,0,depth-ndeltaz,k), *ptrs = ptr(0,0,depth-1,k); 2.14908 + for (int l = 0; l<ndeltaz-1; ++l) { cimg_std::memcpy(ptrd,ptrs,width*height*sizeof(T)); ptrd+=width*height; } 2.14909 + } 2.14910 + } else { 2.14911 + const int ndeltaz = (-deltaz>=dimz())?depth-1:-deltaz; 2.14912 + if (!ndeltaz) return *this; 2.14913 + cimg_forV(*this,k) { 2.14914 + cimg_std::memmove(ptr(0,0,ndeltaz,k),ptr(0,0,0,k),width*height*(depth-ndeltaz)*sizeof(T)); 2.14915 + T *ptrd = ptr(0,0,1,k), *ptrs = ptr(0,0,0,k); 2.14916 + for (int l = 0; l<ndeltaz-1; ++l) { cimg_std::memcpy(ptrd,ptrs,width*height*sizeof(T)); ptrd+=width*height; } 2.14917 + } 2.14918 + } 2.14919 + break; 2.14920 + case 2 : { 2.14921 + const int ml = cimg::mod(deltaz,dimz()), ndeltaz = (ml<=dimz()/2)?ml:(ml-dimz()); 2.14922 + if (!ndeltaz) return *this; 2.14923 + T* buf = new T[width*height*cimg::abs(ndeltaz)]; 2.14924 + if (ndeltaz>0) cimg_forV(*this,k) { 2.14925 + cimg_std::memcpy(buf,ptr(0,0,0,k),width*height*ndeltaz*sizeof(T)); 2.14926 + cimg_std::memmove(ptr(0,0,0,k),ptr(0,0,ndeltaz,k),width*height*(depth-ndeltaz)*sizeof(T)); 2.14927 + cimg_std::memcpy(ptr(0,0,depth-ndeltaz,k),buf,width*height*ndeltaz*sizeof(T)); 2.14928 + } else cimg_forV(*this,k) { 2.14929 + cimg_std::memcpy(buf,ptr(0,0,depth+ndeltaz,k),-ndeltaz*width*height*sizeof(T)); 2.14930 + cimg_std::memmove(ptr(0,0,-ndeltaz,k),ptr(0,0,0,k),width*height*(depth+ndeltaz)*sizeof(T)); 2.14931 + cimg_std::memcpy(ptr(0,0,0,k),buf,-ndeltaz*width*height*sizeof(T)); 2.14932 + } 2.14933 + delete[] buf; 2.14934 + } break; 2.14935 + } 2.14936 + 2.14937 + if (deltav) // Translate along V-axis 2.14938 + switch (border_condition) { 2.14939 + case 0 : 2.14940 + if (cimg::abs(deltav)>=dimv()) return fill(0); 2.14941 + if (deltav>0) { 2.14942 + cimg_std::memmove(data,ptr(0,0,0,deltav),width*height*depth*(dim-deltav)*sizeof(T)); 2.14943 + cimg_std::memset(ptr(0,0,0,dim-deltav),0,width*height*depth*deltav*sizeof(T)); 2.14944 + } else cimg_forV(*this,k) { 2.14945 + cimg_std::memmove(ptr(0,0,0,-deltav),data,width*height*depth*(dim+deltav)*sizeof(T)); 2.14946 + cimg_std::memset(data,0,-deltav*width*height*depth*sizeof(T)); 2.14947 + } 2.14948 + break; 2.14949 + case 1 : 2.14950 + if (deltav>0) { 2.14951 + const int ndeltav = (deltav>=dimv())?dim-1:deltav; 2.14952 + if (!ndeltav) return *this; 2.14953 + cimg_std::memmove(data,ptr(0,0,0,ndeltav),width*height*depth*(dim-ndeltav)*sizeof(T)); 2.14954 + T *ptrd = ptr(0,0,0,dim-ndeltav), *ptrs = ptr(0,0,0,dim-1); 2.14955 + for (int l = 0; l<ndeltav-1; ++l) { cimg_std::memcpy(ptrd,ptrs,width*height*depth*sizeof(T)); ptrd+=width*height*depth; } 2.14956 + } else { 2.14957 + const int ndeltav = (-deltav>=dimv())?dim-1:-deltav; 2.14958 + if (!ndeltav) return *this; 2.14959 + cimg_std::memmove(ptr(0,0,0,ndeltav),data,width*height*depth*(dim-ndeltav)*sizeof(T)); 2.14960 + T *ptrd = ptr(0,0,0,1); 2.14961 + for (int l = 0; l<ndeltav-1; ++l) { cimg_std::memcpy(ptrd,data,width*height*depth*sizeof(T)); ptrd+=width*height*depth; } 2.14962 + } 2.14963 + break; 2.14964 + case 2 : { 2.14965 + const int ml = cimg::mod(deltav,dimv()), ndeltav = (ml<=dimv()/2)?ml:(ml-dimv()); 2.14966 + if (!ndeltav) return *this; 2.14967 + T* buf = new T[width*height*depth*cimg::abs(ndeltav)]; 2.14968 + if (ndeltav>0) { 2.14969 + cimg_std::memcpy(buf,data,width*height*depth*ndeltav*sizeof(T)); 2.14970 + cimg_std::memmove(data,ptr(0,0,0,ndeltav),width*height*depth*(dim-ndeltav)*sizeof(T)); 2.14971 + cimg_std::memcpy(ptr(0,0,0,dim-ndeltav),buf,width*height*depth*ndeltav*sizeof(T)); 2.14972 + } else { 2.14973 + cimg_std::memcpy(buf,ptr(0,0,0,dim+ndeltav),-ndeltav*width*height*depth*sizeof(T)); 2.14974 + cimg_std::memmove(ptr(0,0,0,-ndeltav),data,width*height*depth*(dim+ndeltav)*sizeof(T)); 2.14975 + cimg_std::memcpy(data,buf,-ndeltav*width*height*depth*sizeof(T)); 2.14976 + } 2.14977 + delete[] buf; 2.14978 + } break; 2.14979 + } 2.14980 + return *this; 2.14981 + } 2.14982 + 2.14983 + CImg<T> get_translate(const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, 2.14984 + const int border_condition=0) const { 2.14985 + return (+*this).translate(deltax,deltay,deltaz,deltav,border_condition); 2.14986 + } 2.14987 + 2.14988 + //! Get a square region of the image. 2.14989 + /** 2.14990 + \param x0 = X-coordinate of the upper-left crop rectangle corner. 2.14991 + \param y0 = Y-coordinate of the upper-left crop rectangle corner. 2.14992 + \param z0 = Z-coordinate of the upper-left crop rectangle corner. 2.14993 + \param v0 = V-coordinate of the upper-left crop rectangle corner. 2.14994 + \param x1 = X-coordinate of the lower-right crop rectangle corner. 2.14995 + \param y1 = Y-coordinate of the lower-right crop rectangle corner. 2.14996 + \param z1 = Z-coordinate of the lower-right crop rectangle corner. 2.14997 + \param v1 = V-coordinate of the lower-right crop rectangle corner. 2.14998 + \param border_condition = Dirichlet (false) or Neumann border conditions. 2.14999 + **/ 2.15000 + CImg<T>& crop(const int x0, const int y0, const int z0, const int v0, 2.15001 + const int x1, const int y1, const int z1, const int v1, 2.15002 + const bool border_condition=false) { 2.15003 + return get_crop(x0,y0,z0,v0,x1,y1,z1,v1,border_condition).transfer_to(*this); 2.15004 + } 2.15005 + 2.15006 + CImg<T> get_crop(const int x0, const int y0, const int z0, const int v0, 2.15007 + const int x1, const int y1, const int z1, const int v1, 2.15008 + const bool border_condition=false) const { 2.15009 + if (is_empty()) return *this; 2.15010 + const int 2.15011 + nx0 = x0<x1?x0:x1, nx1 = x0^x1^nx0, 2.15012 + ny0 = y0<y1?y0:y1, ny1 = y0^y1^ny0, 2.15013 + nz0 = z0<z1?z0:z1, nz1 = z0^z1^nz0, 2.15014 + nv0 = v0<v1?v0:v1, nv1 = v0^v1^nv0; 2.15015 + CImg<T> dest(1U+nx1-nx0,1U+ny1-ny0,1U+nz1-nz0,1U+nv1-nv0); 2.15016 + if (nx0<0 || nx1>=dimx() || ny0<0 || ny1>=dimy() || nz0<0 || nz1>=dimz() || nv0<0 || nv1>=dimv()) { 2.15017 + if (border_condition) cimg_forXYZV(dest,x,y,z,v) dest(x,y,z,v) = _atXYZV(nx0+x,ny0+y,nz0+z,nv0+v); 2.15018 + else dest.fill(0).draw_image(-nx0,-ny0,-nz0,-nv0,*this); 2.15019 + } else dest.draw_image(-nx0,-ny0,-nz0,-nv0,*this); 2.15020 + return dest; 2.15021 + } 2.15022 + 2.15023 + //! Get a rectangular part of the instance image. 2.15024 + /** 2.15025 + \param x0 = X-coordinate of the upper-left crop rectangle corner. 2.15026 + \param y0 = Y-coordinate of the upper-left crop rectangle corner. 2.15027 + \param z0 = Z-coordinate of the upper-left crop rectangle corner. 2.15028 + \param x1 = X-coordinate of the lower-right crop rectangle corner. 2.15029 + \param y1 = Y-coordinate of the lower-right crop rectangle corner. 2.15030 + \param z1 = Z-coordinate of the lower-right crop rectangle corner. 2.15031 + \param border_condition = determine the type of border condition if 2.15032 + some of the desired region is outside the image. 2.15033 + **/ 2.15034 + CImg<T>& crop(const int x0, const int y0, const int z0, 2.15035 + const int x1, const int y1, const int z1, 2.15036 + const bool border_condition=false) { 2.15037 + return crop(x0,y0,z0,0,x1,y1,z1,dim-1,border_condition); 2.15038 + } 2.15039 + 2.15040 + CImg<T> get_crop(const int x0, const int y0, const int z0, 2.15041 + const int x1, const int y1, const int z1, 2.15042 + const bool border_condition=false) const { 2.15043 + return get_crop(x0,y0,z0,0,x1,y1,z1,dim-1,border_condition); 2.15044 + } 2.15045 + 2.15046 + //! Get a rectangular part of the instance image. 2.15047 + /** 2.15048 + \param x0 = X-coordinate of the upper-left crop rectangle corner. 2.15049 + \param y0 = Y-coordinate of the upper-left crop rectangle corner. 2.15050 + \param x1 = X-coordinate of the lower-right crop rectangle corner. 2.15051 + \param y1 = Y-coordinate of the lower-right crop rectangle corner. 2.15052 + \param border_condition = determine the type of border condition if 2.15053 + some of the desired region is outside the image. 2.15054 + **/ 2.15055 + CImg<T>& crop(const int x0, const int y0, 2.15056 + const int x1, const int y1, 2.15057 + const bool border_condition=false) { 2.15058 + return crop(x0,y0,0,0,x1,y1,depth-1,dim-1,border_condition); 2.15059 + } 2.15060 + 2.15061 + CImg<T> get_crop(const int x0, const int y0, 2.15062 + const int x1, const int y1, 2.15063 + const bool border_condition=false) const { 2.15064 + return get_crop(x0,y0,0,0,x1,y1,depth-1,dim-1,border_condition); 2.15065 + } 2.15066 + 2.15067 + //! Get a rectangular part of the instance image. 2.15068 + /** 2.15069 + \param x0 = X-coordinate of the upper-left crop rectangle corner. 2.15070 + \param x1 = X-coordinate of the lower-right crop rectangle corner. 2.15071 + \param border_condition = determine the type of border condition if 2.15072 + some of the desired region is outside the image. 2.15073 + **/ 2.15074 + CImg<T>& crop(const int x0, const int x1, const bool border_condition=false) { 2.15075 + return crop(x0,0,0,0,x1,height-1,depth-1,dim-1,border_condition); 2.15076 + } 2.15077 + 2.15078 + CImg<T> get_crop(const int x0, const int x1, const bool border_condition=false) const { 2.15079 + return get_crop(x0,0,0,0,x1,height-1,depth-1,dim-1,border_condition); 2.15080 + } 2.15081 + 2.15082 + //! Autocrop an image, regarding of the specified backround value. 2.15083 + CImg<T>& autocrop(const T value, const char *const axes="vzyx") { 2.15084 + if (is_empty()) return *this; 2.15085 + const int lmax = cimg::strlen(axes); 2.15086 + for (int l = 0; l<lmax; ++l) autocrop(value,axes[l]); 2.15087 + return *this; 2.15088 + } 2.15089 + 2.15090 + CImg<T> get_autocrop(const T value, const char *const axes="vzyx") const { 2.15091 + return (+*this).autocrop(value,axes); 2.15092 + } 2.15093 + 2.15094 + //! Autocrop an image, regarding of the specified backround color. 2.15095 + CImg<T>& autocrop(const T *const color, const char *const axes="zyx") { 2.15096 + if (is_empty()) return *this; 2.15097 + const int lmax = cimg::strlen(axes); 2.15098 + for (int l = 0; l<lmax; ++l) autocrop(color,axes[l]); 2.15099 + return *this; 2.15100 + } 2.15101 + 2.15102 + CImg<T> get_autocrop(const T *const color, const char *const axes="zyx") const { 2.15103 + return (+*this).autocrop(color,axes); 2.15104 + } 2.15105 + 2.15106 + //! Autocrop an image, regarding of the specified backround color. 2.15107 + template<typename t> CImg<T>& autocrop(const CImg<t>& color, const char *const axes="zyx") { 2.15108 + return get_autocrop(color,axes).transfer_to(*this); 2.15109 + } 2.15110 + 2.15111 + template<typename t> CImg<T> get_autocrop(const CImg<t>& color, const char *const axes="zyx") const { 2.15112 + return get_autocrop(color.data,axes); 2.15113 + } 2.15114 + 2.15115 + //! Autocrop an image along specified axis, regarding of the specified backround value. 2.15116 + CImg<T>& autocrop(const T value, const char axis) { 2.15117 + return get_autocrop(value,axis).transfer_to(*this); 2.15118 + } 2.15119 + 2.15120 + CImg<T> get_autocrop(const T value, const char axis) const { 2.15121 + if (is_empty()) return *this; 2.15122 + CImg<T> res; 2.15123 + const CImg<intT> coords = _get_autocrop(value,axis); 2.15124 + switch (cimg::uncase(axis)) { 2.15125 + case 'x' : { 2.15126 + const int x0 = coords[0], x1 = coords[1]; 2.15127 + if (x0>=0 && x1>=0) res = get_crop(x0,x1); 2.15128 + } break; 2.15129 + case 'y' : { 2.15130 + const int y0 = coords[0], y1 = coords[1]; 2.15131 + if (y0>=0 && y1>=0) res = get_crop(0,y0,width-1,y1); 2.15132 + } break; 2.15133 + case 'z' : { 2.15134 + const int z0 = coords[0], z1 = coords[1]; 2.15135 + if (z0>=0 && z1>=0) res = get_crop(0,0,z0,width-1,height-1,z1); 2.15136 + } break; 2.15137 + case 'v' : { 2.15138 + const int v0 = coords[0], v1 = coords[1]; 2.15139 + if (v0>=0 && v1>=0) res = get_crop(0,0,0,v0,width-1,height-1,depth-1,v1); 2.15140 + } break; 2.15141 + } 2.15142 + return res; 2.15143 + } 2.15144 + 2.15145 + //! Autocrop an image along specified axis, regarding of the specified backround color. 2.15146 + CImg<T>& autocrop(const T *const color, const char axis) { 2.15147 + return get_autocrop(color,axis).transfer_to(*this); 2.15148 + } 2.15149 + 2.15150 + CImg<T> get_autocrop(const T *const color, const char axis) const { 2.15151 + if (is_empty()) return *this; 2.15152 + CImg<T> res; 2.15153 + switch (cimg::uncase(axis)) { 2.15154 + case 'x' : { 2.15155 + int x0 = width, x1 = -1; 2.15156 + cimg_forV(*this,k) { 2.15157 + const CImg<intT> coords = get_shared_channel(k)._get_autocrop(color[k],axis); 2.15158 + const int nx0 = coords[0], nx1 = coords[1]; 2.15159 + if (nx0>=0 && nx1>=0) { x0 = cimg::min(x0,nx0); x1 = cimg::max(x1,nx1); } 2.15160 + } 2.15161 + if (x0<=x1) res = get_crop(x0,x1); 2.15162 + } break; 2.15163 + case 'y' : { 2.15164 + int y0 = height, y1 = -1; 2.15165 + cimg_forV(*this,k) { 2.15166 + const CImg<intT> coords = get_shared_channel(k)._get_autocrop(color[k],axis); 2.15167 + const int ny0 = coords[0], ny1 = coords[1]; 2.15168 + if (ny0>=0 && ny1>=0) { y0 = cimg::min(y0,ny0); y1 = cimg::max(y1,ny1); } 2.15169 + } 2.15170 + if (y0<=y1) res = get_crop(0,y0,width-1,y1); 2.15171 + } break; 2.15172 + case 'z' : { 2.15173 + int z0 = depth, z1 = -1; 2.15174 + cimg_forV(*this,k) { 2.15175 + const CImg<intT> coords = get_shared_channel(k)._get_autocrop(color[k],axis); 2.15176 + const int nz0 = coords[0], nz1 = coords[1]; 2.15177 + if (nz0>=0 && nz1>=0) { z0 = cimg::min(z0,nz0); z1 = cimg::max(z1,nz1); } 2.15178 + } 2.15179 + if (z0<=z1) res = get_crop(0,0,z0,width-1,height-1,z1); 2.15180 + } break; 2.15181 + default : 2.15182 + throw CImgArgumentException("CImg<%s>::autocrop() : Invalid axis '%c', must be 'x','y' or 'z'.", 2.15183 + pixel_type(),axis); 2.15184 + } 2.15185 + return res; 2.15186 + } 2.15187 + 2.15188 + //! Autocrop an image along specified axis, regarding of the specified backround color. 2.15189 + template<typename t> CImg<T>& autocrop(const CImg<t>& color, const char axis) { 2.15190 + return get_autocrop(color,axis).transfer_to(*this); 2.15191 + } 2.15192 + 2.15193 + template<typename t> CImg<T> get_autocrop(const CImg<t>& color, const char axis) const { 2.15194 + return get_autocrop(color.data,axis); 2.15195 + } 2.15196 + 2.15197 + CImg<intT> _get_autocrop(const T value, const char axis) const { 2.15198 + CImg<intT> res; 2.15199 + int x0 = -1, y0 = -1, z0 = -1, v0 = -1, x1 = -1, y1 = -1, z1 = -1, v1 = -1; 2.15200 + switch (cimg::uncase(axis)) { 2.15201 + case 'x' : { 2.15202 + cimg_forX(*this,x) cimg_forYZV(*this,y,z,v) 2.15203 + if ((*this)(x,y,z,v)!=value) { x0 = x; x = dimx(); y = dimy(); z = dimz(); v = dimv(); } 2.15204 + if (x0>=0) { 2.15205 + for (int x = dimx()-1; x>=0; --x) cimg_forYZV(*this,y,z,v) 2.15206 + if ((*this)(x,y,z,v)!=value) { x1 = x; x = 0; y = dimy(); z = dimz(); v = dimv(); } 2.15207 + } 2.15208 + res = CImg<intT>::vector(x0,x1); 2.15209 + } break; 2.15210 + case 'y' : { 2.15211 + cimg_forY(*this,y) cimg_forXZV(*this,x,z,v) 2.15212 + if ((*this)(x,y,z,v)!=value) { y0 = y; x = dimx(); y = dimy(); z = dimz(); v = dimv(); } 2.15213 + if (y0>=0) { 2.15214 + for (int y = dimy()-1; y>=0; --y) cimg_forXZV(*this,x,z,v) 2.15215 + if ((*this)(x,y,z,v)!=value) { y1 = y; x = dimx(); y = 0; z = dimz(); v = dimv(); } 2.15216 + } 2.15217 + res = CImg<intT>::vector(y0,y1); 2.15218 + } break; 2.15219 + case 'z' : { 2.15220 + cimg_forZ(*this,z) cimg_forXYV(*this,x,y,v) 2.15221 + if ((*this)(x,y,z,v)!=value) { z0 = z; x = dimx(); y = dimy(); z = dimz(); v = dimv(); } 2.15222 + if (z0>=0) { 2.15223 + for (int z = dimz()-1; z>=0; --z) cimg_forXYV(*this,x,y,v) 2.15224 + if ((*this)(x,y,z,v)!=value) { z1 = z; x = dimx(); y = dimy(); z = 0; v = dimv(); } 2.15225 + } 2.15226 + res = CImg<intT>::vector(z0,z1); 2.15227 + } break; 2.15228 + case 'v' : { 2.15229 + cimg_forV(*this,v) cimg_forXYZ(*this,x,y,z) 2.15230 + if ((*this)(x,y,z,v)!=value) { v0 = v; x = dimx(); y = dimy(); z = dimz(); v = dimv(); } 2.15231 + if (v0>=0) { 2.15232 + for (int v = dimv()-1; v>=0; --v) cimg_forXYZ(*this,x,y,z) 2.15233 + if ((*this)(x,y,z,v)!=value) { v1 = v; x = dimx(); y = dimy(); z = dimz(); v = 0; } 2.15234 + } 2.15235 + res = CImg<intT>::vector(v0,v1); 2.15236 + } break; 2.15237 + default : 2.15238 + throw CImgArgumentException("CImg<%s>::autocrop() : unknow axis '%c', must be 'x','y','z' or 'v'", 2.15239 + pixel_type(),axis); 2.15240 + } 2.15241 + return res; 2.15242 + } 2.15243 + 2.15244 + //! Get a set of columns. 2.15245 + CImg<T>& columns(const unsigned int x0, const unsigned int x1) { 2.15246 + return get_columns(x0,x1).transfer_to(*this); 2.15247 + } 2.15248 + 2.15249 + CImg<T> get_columns(const unsigned int x0, const unsigned int x1) const { 2.15250 + return get_crop((int)x0,0,0,0,(int)x1,dimy()-1,dimz()-1,dimv()-1); 2.15251 + } 2.15252 + 2.15253 + //! Get one column. 2.15254 + CImg<T>& column(const unsigned int x0) { 2.15255 + return columns(x0,x0); 2.15256 + } 2.15257 + 2.15258 + CImg<T> get_column(const unsigned int x0) const { 2.15259 + return get_columns(x0,x0); 2.15260 + } 2.15261 + 2.15262 + //! Get a set of lines. 2.15263 + CImg<T>& lines(const unsigned int y0, const unsigned int y1) { 2.15264 + return get_lines(y0,y1).transfer_to(*this); 2.15265 + } 2.15266 + 2.15267 + CImg<T> get_lines(const unsigned int y0, const unsigned int y1) const { 2.15268 + return get_crop(0,(int)y0,0,0,dimx()-1,(int)y1,dimz()-1,dimv()-1); 2.15269 + } 2.15270 + 2.15271 + //! Get a line. 2.15272 + CImg<T>& line(const unsigned int y0) { 2.15273 + return lines(y0,y0); 2.15274 + } 2.15275 + 2.15276 + CImg<T> get_line(const unsigned int y0) const { 2.15277 + return get_lines(y0,y0); 2.15278 + } 2.15279 + 2.15280 + //! Get a set of slices. 2.15281 + CImg<T>& slices(const unsigned int z0, const unsigned int z1) { 2.15282 + return get_slices(z0,z1).transfer_to(*this); 2.15283 + } 2.15284 + 2.15285 + CImg<T> get_slices(const unsigned int z0, const unsigned int z1) const { 2.15286 + return get_crop(0,0,(int)z0,0,dimx()-1,dimy()-1,(int)z1,dimv()-1); 2.15287 + } 2.15288 + 2.15289 + //! Get a slice. 2.15290 + CImg<T>& slice(const unsigned int z0) { 2.15291 + return slices(z0,z0); 2.15292 + } 2.15293 + 2.15294 + CImg<T> get_slice(const unsigned int z0) const { 2.15295 + return get_slices(z0,z0); 2.15296 + } 2.15297 + 2.15298 + //! Get a set of channels. 2.15299 + CImg<T>& channels(const unsigned int v0, const unsigned int v1) { 2.15300 + return get_channels(v0,v1).transfer_to(*this); 2.15301 + } 2.15302 + 2.15303 + CImg<T> get_channels(const unsigned int v0, const unsigned int v1) const { 2.15304 + return get_crop(0,0,0,(int)v0,dimx()-1,dimy()-1,dimz()-1,(int)v1); 2.15305 + } 2.15306 + 2.15307 + //! Get a channel. 2.15308 + CImg<T>& channel(const unsigned int v0) { 2.15309 + return channels(v0,v0); 2.15310 + } 2.15311 + 2.15312 + CImg<T> get_channel(const unsigned int v0) const { 2.15313 + return get_channels(v0,v0); 2.15314 + } 2.15315 + 2.15316 + //! Get a shared-memory image referencing a set of points of the instance image. 2.15317 + CImg<T> get_shared_points(const unsigned int x0, const unsigned int x1, 2.15318 + const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0) { 2.15319 + const unsigned long beg = offset(x0,y0,z0,v0), end = offset(x1,y0,z0,v0); 2.15320 + if (beg>end || beg>=size() || end>=size()) 2.15321 + throw CImgArgumentException("CImg<%s>::get_shared_points() : Cannot return a shared-memory subset (%u->%u,%u,%u,%u) from " 2.15322 + "a (%u,%u,%u,%u) image.", 2.15323 + pixel_type(),x0,x1,y0,z0,v0,width,height,depth,dim); 2.15324 + return CImg<T>(data+beg,x1-x0+1,1,1,1,true); 2.15325 + } 2.15326 + 2.15327 + const CImg<T> get_shared_points(const unsigned int x0, const unsigned int x1, 2.15328 + const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0) const { 2.15329 + const unsigned long beg = offset(x0,y0,z0,v0), end = offset(x1,y0,z0,v0); 2.15330 + if (beg>end || beg>=size() || end>=size()) 2.15331 + throw CImgArgumentException("CImg<%s>::get_shared_points() : Cannot return a shared-memory subset (%u->%u,%u,%u,%u) from " 2.15332 + "a (%u,%u,%u,%u) image.", 2.15333 + pixel_type(),x0,x1,y0,z0,v0,width,height,depth,dim); 2.15334 + return CImg<T>(data+beg,x1-x0+1,1,1,1,true); 2.15335 + } 2.15336 + 2.15337 + //! Return a shared-memory image referencing a set of lines of the instance image. 2.15338 + CImg<T> get_shared_lines(const unsigned int y0, const unsigned int y1, 2.15339 + const unsigned int z0=0, const unsigned int v0=0) { 2.15340 + const unsigned long beg = offset(0,y0,z0,v0), end = offset(0,y1,z0,v0); 2.15341 + if (beg>end || beg>=size() || end>=size()) 2.15342 + throw CImgArgumentException("CImg<%s>::get_shared_lines() : Cannot return a shared-memory subset (0->%u,%u->%u,%u,%u) from " 2.15343 + "a (%u,%u,%u,%u) image.", 2.15344 + pixel_type(),width-1,y0,y1,z0,v0,width,height,depth,dim); 2.15345 + return CImg<T>(data+beg,width,y1-y0+1,1,1,true); 2.15346 + } 2.15347 + 2.15348 + const CImg<T> get_shared_lines(const unsigned int y0, const unsigned int y1, 2.15349 + const unsigned int z0=0, const unsigned int v0=0) const { 2.15350 + const unsigned long beg = offset(0,y0,z0,v0), end = offset(0,y1,z0,v0); 2.15351 + if (beg>end || beg>=size() || end>=size()) 2.15352 + throw CImgArgumentException("CImg<%s>::get_shared_lines() : Cannot return a shared-memory subset (0->%u,%u->%u,%u,%u) from " 2.15353 + "a (%u,%u,%u,%u) image.", 2.15354 + pixel_type(),width-1,y0,y1,z0,v0,width,height,depth,dim); 2.15355 + return CImg<T>(data+beg,width,y1-y0+1,1,1,true); 2.15356 + } 2.15357 + 2.15358 + //! Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image. 2.15359 + CImg<T> get_shared_line(const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0) { 2.15360 + return get_shared_lines(y0,y0,z0,v0); 2.15361 + } 2.15362 + 2.15363 + const CImg<T> get_shared_line(const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0) const { 2.15364 + return get_shared_lines(y0,y0,z0,v0); 2.15365 + } 2.15366 + 2.15367 + //! Return a shared memory image referencing a set of planes (z0->z1,v0) of the instance image. 2.15368 + CImg<T> get_shared_planes(const unsigned int z0, const unsigned int z1, const unsigned int v0=0) { 2.15369 + const unsigned long beg = offset(0,0,z0,v0), end = offset(0,0,z1,v0); 2.15370 + if (beg>end || beg>=size() || end>=size()) 2.15371 + throw CImgArgumentException("CImg<%s>::get_shared_planes() : Cannot return a shared-memory subset (0->%u,0->%u,%u->%u,%u) from " 2.15372 + "a (%u,%u,%u,%u) image.", 2.15373 + pixel_type(),width-1,height-1,z0,z1,v0,width,height,depth,dim); 2.15374 + return CImg<T>(data+beg,width,height,z1-z0+1,1,true); 2.15375 + } 2.15376 + 2.15377 + const CImg<T> get_shared_planes(const unsigned int z0, const unsigned int z1, const unsigned int v0=0) const { 2.15378 + const unsigned long beg = offset(0,0,z0,v0), end = offset(0,0,z1,v0); 2.15379 + if (beg>end || beg>=size() || end>=size()) 2.15380 + throw CImgArgumentException("CImg<%s>::get_shared_planes() : Cannot return a shared-memory subset (0->%u,0->%u,%u->%u,%u) from " 2.15381 + "a (%u,%u,%u,%u) image.", 2.15382 + pixel_type(),width-1,height-1,z0,z1,v0,width,height,depth,dim); 2.15383 + return CImg<T>(data+beg,width,height,z1-z0+1,1,true); 2.15384 + } 2.15385 + 2.15386 + //! Return a shared-memory image referencing one plane (z0,v0) of the instance image. 2.15387 + CImg<T> get_shared_plane(const unsigned int z0, const unsigned int v0=0) { 2.15388 + return get_shared_planes(z0,z0,v0); 2.15389 + } 2.15390 + 2.15391 + const CImg<T> get_shared_plane(const unsigned int z0, const unsigned int v0=0) const { 2.15392 + return get_shared_planes(z0,z0,v0); 2.15393 + } 2.15394 + 2.15395 + //! Return a shared-memory image referencing a set of channels (v0->v1) of the instance image. 2.15396 + CImg<T> get_shared_channels(const unsigned int v0, const unsigned int v1) { 2.15397 + const unsigned long beg = offset(0,0,0,v0), end = offset(0,0,0,v1); 2.15398 + if (beg>end || beg>=size() || end>=size()) 2.15399 + throw CImgArgumentException("CImg<%s>::get_shared_channels() : Cannot return a shared-memory subset (0->%u,0->%u,0->%u,%u->%u) from " 2.15400 + "a (%u,%u,%u,%u) image.", 2.15401 + pixel_type(),width-1,height-1,depth-1,v0,v1,width,height,depth,dim); 2.15402 + return CImg<T>(data+beg,width,height,depth,v1-v0+1,true); 2.15403 + } 2.15404 + 2.15405 + const CImg<T> get_shared_channels(const unsigned int v0, const unsigned int v1) const { 2.15406 + const unsigned long beg = offset(0,0,0,v0), end = offset(0,0,0,v1); 2.15407 + if (beg>end || beg>=size() || end>=size()) 2.15408 + throw CImgArgumentException("CImg<%s>::get_shared_channels() : Cannot return a shared-memory subset (0->%u,0->%u,0->%u,%u->%u) from " 2.15409 + "a (%u,%u,%u,%u) image.", 2.15410 + pixel_type(),width-1,height-1,depth-1,v0,v1,width,height,depth,dim); 2.15411 + return CImg<T>(data+beg,width,height,depth,v1-v0+1,true); 2.15412 + } 2.15413 + 2.15414 + //! Return a shared-memory image referencing one channel v0 of the instance image. 2.15415 + CImg<T> get_shared_channel(const unsigned int v0) { 2.15416 + return get_shared_channels(v0,v0); 2.15417 + } 2.15418 + 2.15419 + const CImg<T> get_shared_channel(const unsigned int v0) const { 2.15420 + return get_shared_channels(v0,v0); 2.15421 + } 2.15422 + 2.15423 + //! Return a shared version of the instance image. 2.15424 + CImg<T> get_shared() { 2.15425 + return CImg<T>(data,width,height,depth,dim,true); 2.15426 + } 2.15427 + 2.15428 + const CImg<T> get_shared() const { 2.15429 + return CImg<T>(data,width,height,depth,dim,true); 2.15430 + } 2.15431 + 2.15432 + //! Return a 2D representation of a 3D image, with three slices. 2.15433 + CImg<T>& projections2d(const unsigned int x0, const unsigned int y0, const unsigned int z0, 2.15434 + const int dx=-100, const int dy=-100, const int dz=-100) { 2.15435 + return get_projections2d(x0,y0,z0,dx,dy,dz).transfer_to(*this); 2.15436 + } 2.15437 + 2.15438 + CImg<T> get_projections2d(const unsigned int x0, const unsigned int y0, const unsigned int z0, 2.15439 + const int dx=-100, const int dy=-100, const int dz=-100) const { 2.15440 + if (is_empty()) return *this; 2.15441 + const unsigned int 2.15442 + nx0 = (x0>=width)?width-1:x0, 2.15443 + ny0 = (y0>=height)?height-1:y0, 2.15444 + nz0 = (z0>=depth)?depth-1:z0; 2.15445 + CImg<T> 2.15446 + imgxy(width,height,1,dim), 2.15447 + imgzy(depth,height,1,dim), 2.15448 + imgxz(width,depth,1,dim); 2.15449 + { cimg_forXYV(*this,x,y,k) imgxy(x,y,k) = (*this)(x,y,nz0,k); } 2.15450 + { cimg_forYZV(*this,y,z,k) imgzy(z,y,k) = (*this)(nx0,y,z,k); } 2.15451 + { cimg_forXZV(*this,x,z,k) imgxz(x,z,k) = (*this)(x,ny0,z,k); } 2.15452 + imgxy.resize(dx,dy,1,dim,1); 2.15453 + imgzy.resize(dz,dy,1,dim,1); 2.15454 + imgxz.resize(dx,dz,1,dim,1); 2.15455 + return CImg<T>(imgxy.width+imgzy.width,imgxy.height+imgxz.height,1,dim,0). 2.15456 + draw_image(imgxy).draw_image(imgxy.width,imgzy).draw_image(0,imgxy.height,imgxz); 2.15457 + } 2.15458 + 2.15459 + //! Compute the image histogram. 2.15460 + /** 2.15461 + The histogram H of an image I is a 1D-function where H(x) is the number of 2.15462 + occurences of the value x in I. 2.15463 + \param nblevels = Number of different levels of the computed histogram. 2.15464 + For classical images, this value is 256. You should specify more levels 2.15465 + if you are working with CImg<float> or images with high range of pixel values. 2.15466 + \param val_min = Minimum value considered for the histogram computation. All pixel values lower than val_min 2.15467 + won't be counted. 2.15468 + \param val_max = Maximum value considered for the histogram computation. All pixel values higher than val_max 2.15469 + won't be counted. 2.15470 + \note If val_min==val_max==0 (default values), the function first estimates the minimum and maximum 2.15471 + pixel values of the current image, then uses these values for the histogram computation. 2.15472 + \result The histogram is returned as a 1D CImg<float> image H, having a size of (nblevels,1,1,1) such that 2.15473 + H(0) and H(nblevels-1) are respectively equal to the number of occurences of the values val_min and val_max in I. 2.15474 + \note Histogram computation always returns a 1D function. Histogram of multi-valued (such as color) images 2.15475 + are not multi-dimensional. 2.15476 + **/ 2.15477 + CImg<T>& histogram(const unsigned int nblevels, const T val_min=(T)0, const T val_max=(T)0) { 2.15478 + return get_histogram(nblevels,val_min,val_max).transfer_to(*this); 2.15479 + } 2.15480 + 2.15481 + CImg<floatT> get_histogram(const unsigned int nblevels, const T val_min=(T)0, const T val_max=(T)0) const { 2.15482 + if (is_empty()) return CImg<floatT>(); 2.15483 + if (!nblevels) 2.15484 + throw CImgArgumentException("CImg<%s>::get_histogram() : Can't compute an histogram with 0 levels", 2.15485 + pixel_type()); 2.15486 + T vmin = val_min, vmax = val_max; 2.15487 + CImg<floatT> res(nblevels,1,1,1,0); 2.15488 + if (vmin>=vmax && vmin==0) vmin = minmax(vmax); 2.15489 + if (vmin<vmax) cimg_for(*this,ptr,T) { 2.15490 + const int pos = (int)((*ptr-vmin)*(nblevels-1)/(vmax-vmin)); 2.15491 + if (pos>=0 && pos<(int)nblevels) ++res[pos]; 2.15492 + } else res[0]+=size(); 2.15493 + return res; 2.15494 + } 2.15495 + 2.15496 + //! Compute the histogram-equalized version of the instance image. 2.15497 + /** 2.15498 + The histogram equalization is a classical image processing algorithm that enhances the image contrast 2.15499 + by expanding its histogram. 2.15500 + \param nblevels = Number of different levels of the computed histogram. 2.15501 + For classical images, this value is 256. You should specify more levels 2.15502 + if you are working with CImg<float> or images with high range of pixel values. 2.15503 + \param val_min = Minimum value considered for the histogram computation. All pixel values lower than val_min 2.15504 + won't be changed. 2.15505 + \param val_max = Maximum value considered for the histogram computation. All pixel values higher than val_max 2.15506 + won't be changed. 2.15507 + \note If val_min==val_max==0 (default values), the function acts on all pixel values of the image. 2.15508 + \return A new image with same size is returned, where pixels have been equalized. 2.15509 + **/ 2.15510 + CImg<T>& equalize(const unsigned int nblevels, const T val_min=(T)0, const T val_max=(T)0) { 2.15511 + if (is_empty()) return *this; 2.15512 + T vmin = val_min, vmax = val_max; 2.15513 + if (vmin==vmax && vmin==0) vmin = minmax(vmax); 2.15514 + if (vmin<vmax) { 2.15515 + CImg<floatT> hist = get_histogram(nblevels,vmin,vmax); 2.15516 + float cumul = 0; 2.15517 + cimg_forX(hist,pos) { cumul+=hist[pos]; hist[pos]=cumul; } 2.15518 + cimg_for(*this,ptr,T) { 2.15519 + const int pos = (unsigned int)((*ptr-vmin)*(nblevels-1)/(vmax-vmin)); 2.15520 + if (pos>=0 && pos<(int)nblevels) *ptr = (T)(vmin + (vmax-vmin)*hist[pos]/size()); 2.15521 + } 2.15522 + } 2.15523 + return *this; 2.15524 + } 2.15525 + 2.15526 + CImg<T> get_equalize(const unsigned int nblevels, const T val_min=(T)0, const T val_max=(T)0) const { 2.15527 + return (+*this).equalize(nblevels,val_min,val_max); 2.15528 + } 2.15529 + 2.15530 + //! Get a label map of disconnected regions with same intensities. 2.15531 + CImg<T>& label_regions() { 2.15532 + return get_label_regions().transfer_to(*this); 2.15533 + } 2.15534 + 2.15535 + CImg<uintT> get_label_regions() const { 2.15536 +#define _cimg_get_label_test(p,q) { \ 2.15537 + flag = true; \ 2.15538 + const T *ptr1 = ptr(x,y) + siz, *ptr2 = ptr(p,q) + siz; \ 2.15539 + for (unsigned int i = dim; flag && i; --i) { ptr1-=wh; ptr2-=wh; flag = (*ptr1==*ptr2); } \ 2.15540 +} 2.15541 + if (depth>1) 2.15542 + throw CImgInstanceException("CImg<%s>::label_regions() : Instance image must be a 2D image"); 2.15543 + CImg<uintT> res(width,height,depth,1,0); 2.15544 + unsigned int label = 1; 2.15545 + const unsigned int wh = width*height, siz = width*height*dim; 2.15546 + const int W1 = dimx()-1, H1 = dimy()-1; 2.15547 + bool flag; 2.15548 + cimg_forXY(*this,x,y) { 2.15549 + bool done = false; 2.15550 + if (y) { 2.15551 + _cimg_get_label_test(x,y-1); 2.15552 + if (flag) { 2.15553 + const unsigned int lab = (res(x,y) = res(x,y-1)); 2.15554 + done = true; 2.15555 + if (x && res(x-1,y)!=lab) { 2.15556 + _cimg_get_label_test(x-1,y); 2.15557 + if (flag) { 2.15558 + const unsigned int lold = res(x-1,y), *const cptr = res.ptr(x,y); 2.15559 + for (unsigned int *ptr = res.ptr(); ptr<cptr; ++ptr) if (*ptr==lold) *ptr = lab; 2.15560 + } 2.15561 + } 2.15562 + } 2.15563 + } 2.15564 + if (x && !done) { _cimg_get_label_test(x-1,y); if (flag) { res(x,y) = res(x-1,y); done = true; }} 2.15565 + if (!done) res(x,y) = label++; 2.15566 + } 2.15567 + { for (int y = H1; y>=0; --y) for (int x=W1; x>=0; --x) { 2.15568 + bool done = false; 2.15569 + if (y<H1) { 2.15570 + _cimg_get_label_test(x,y+1); 2.15571 + if (flag) { 2.15572 + const unsigned int lab = (res(x,y) = res(x,y+1)); 2.15573 + done = true; 2.15574 + if (x<W1 && res(x+1,y)!=lab) { 2.15575 + _cimg_get_label_test(x+1,y); 2.15576 + if (flag) { 2.15577 + const unsigned int lold = res(x+1,y), *const cptr = res.ptr(x,y); 2.15578 + for (unsigned int *ptr = res.ptr()+res.size()-1; ptr>cptr; --ptr) if (*ptr==lold) *ptr = lab; 2.15579 + } 2.15580 + } 2.15581 + } 2.15582 + } 2.15583 + if (x<W1 && !done) { _cimg_get_label_test(x+1,y); if (flag) res(x,y) = res(x+1,y); done = true; } 2.15584 + }} 2.15585 + const unsigned int lab0 = res.max()+1; 2.15586 + label = lab0; 2.15587 + cimg_foroff(res,off) { // Relabel regions 2.15588 + const unsigned int lab = res[off]; 2.15589 + if (lab<lab0) { cimg_for(res,ptr,unsigned int) if (*ptr==lab) *ptr = label; ++label; } 2.15590 + } 2.15591 + return (res-=lab0); 2.15592 + } 2.15593 + 2.15594 + //! Compute the scalar image of vector norms. 2.15595 + /** 2.15596 + When dealing with vector-valued images (i.e images with dimv()>1), this function computes the L1,L2 or Linf norm of each 2.15597 + vector-valued pixel. 2.15598 + \param norm_type = Type of the norm being computed (1 = L1, 2 = L2, -1 = Linf). 2.15599 + \return A scalar-valued image CImg<float> with size (dimx(),dimy(),dimz(),1), where each pixel is the norm 2.15600 + of the corresponding pixels in the original vector-valued image. 2.15601 + **/ 2.15602 + CImg<T>& pointwise_norm(int norm_type=2) { 2.15603 + return get_pointwise_norm(norm_type).transfer_to(*this); 2.15604 + } 2.15605 + 2.15606 + CImg<Tfloat> get_pointwise_norm(int norm_type=2) const { 2.15607 + if (is_empty()) return *this; 2.15608 + if (dim==1) return get_abs(); 2.15609 + CImg<Tfloat> res(width,height,depth); 2.15610 + switch (norm_type) { 2.15611 + case -1 : { // Linf norm 2.15612 + cimg_forXYZ(*this,x,y,z) { 2.15613 + Tfloat n = 0; cimg_forV(*this,v) { 2.15614 + const Tfloat tmp = (Tfloat)cimg::abs((*this)(x,y,z,v)); 2.15615 + if (tmp>n) n=tmp; res(x,y,z) = n; 2.15616 + } 2.15617 + } 2.15618 + } break; 2.15619 + case 1 : { // L1 norm 2.15620 + cimg_forXYZ(*this,x,y,z) { 2.15621 + Tfloat n = 0; cimg_forV(*this,v) n+=cimg::abs((*this)(x,y,z,v)); res(x,y,z) = n; 2.15622 + } 2.15623 + } break; 2.15624 + default : { // L2 norm 2.15625 + cimg_forXYZ(*this,x,y,z) { 2.15626 + Tfloat n = 0; cimg_forV(*this,v) n+=(*this)(x,y,z,v)*(*this)(x,y,z,v); res(x,y,z) = (Tfloat)cimg_std::sqrt((double)n); 2.15627 + } 2.15628 + } 2.15629 + } 2.15630 + return res; 2.15631 + } 2.15632 + 2.15633 + //! Compute the image of normalized vectors. 2.15634 + /** 2.15635 + When dealing with vector-valued images (i.e images with dimv()>1), this function return the image of normalized vectors 2.15636 + (unit vectors). Null vectors are unchanged. The L2-norm is computed for the normalization. 2.15637 + \return A new vector-valued image with same size, where each vector-valued pixels have been normalized. 2.15638 + **/ 2.15639 + CImg<T>& pointwise_orientation() { 2.15640 + cimg_forXYZ(*this,x,y,z) { 2.15641 + float n = 0; 2.15642 + cimg_forV(*this,v) n+=(float)((*this)(x,y,z,v)*(*this)(x,y,z,v)); 2.15643 + n = (float)cimg_std::sqrt(n); 2.15644 + if (n>0) cimg_forV(*this,v) (*this)(x,y,z,v) = (T)((*this)(x,y,z,v)/n); 2.15645 + else cimg_forV(*this,v) (*this)(x,y,z,v) = 0; 2.15646 + } 2.15647 + return *this; 2.15648 + } 2.15649 + 2.15650 + CImg<Tfloat> get_pointwise_orientation() const { 2.15651 + if (is_empty()) return *this; 2.15652 + return CImg<Tfloat>(*this,false).pointwise_orientation(); 2.15653 + } 2.15654 + 2.15655 + //! Split image into a list. 2.15656 + CImgList<T> get_split(const char axis, const unsigned int nb=0) const { 2.15657 + if (is_empty()) return CImgList<T>(); 2.15658 + CImgList<T> res; 2.15659 + switch (cimg::uncase(axis)) { 2.15660 + case 'x' : { 2.15661 + if (nb>width) 2.15662 + throw CImgArgumentException("CImg<%s>::get_split() : Cannot split instance image (%u,%u,%u,%u,%p) along 'x' into %u images.", 2.15663 + pixel_type(),width,height,depth,dim,data,nb); 2.15664 + res.assign(nb?nb:width); 2.15665 + const unsigned int delta = (unsigned int)cimg::round((float)width/res.size,1); 2.15666 + unsigned int l, x; 2.15667 + for (l = 0, x = 0; l<res.size-1; ++l, x+=delta) res[l] = get_crop(x,0,0,0,x+delta-1,height-1,depth-1,dim-1); 2.15668 + res[res.size-1] = get_crop(x,0,0,0,width-1,height-1,depth-1,dim-1); 2.15669 + } break; 2.15670 + case 'y' : { 2.15671 + if (nb>height) 2.15672 + throw CImgArgumentException("CImg<%s>::get_split() : Cannot split instance image (%u,%u,%u,%u,%p) along 'y' into %u images.", 2.15673 + pixel_type(),width,height,depth,dim,data,nb); 2.15674 + res.assign(nb?nb:height); 2.15675 + const unsigned int delta = (unsigned int)cimg::round((float)height/res.size,1); 2.15676 + unsigned int l, y; 2.15677 + for (l = 0, y = 0; l<res.size-1; ++l, y+=delta) res[l] = get_crop(0,y,0,0,width-1,y+delta-1,depth-1,dim-1); 2.15678 + res[res.size-1] = get_crop(0,y,0,0,width-1,height-1,depth-1,dim-1); 2.15679 + } break; 2.15680 + case 'z' : { 2.15681 + if (nb>depth) 2.15682 + throw CImgArgumentException("CImg<%s>::get_split() : Cannot split instance image (%u,%u,%u,%u,%p) along 'z' into %u images.", 2.15683 + pixel_type(),width,height,depth,dim,data,nb); 2.15684 + res.assign(nb?nb:depth); 2.15685 + const unsigned int delta = (unsigned int)cimg::round((float)depth/res.size,1); 2.15686 + unsigned int l, z; 2.15687 + for (l = 0, z = 0; l<res.size-1; ++l, z+=delta) res[l] = get_crop(0,0,z,0,width-1,height-1,z+delta-1,dim-1); 2.15688 + res[res.size-1] = get_crop(0,0,z,0,width-1,height-1,depth-1,dim-1); 2.15689 + } break; 2.15690 + case 'v' : { 2.15691 + if (nb>dim) 2.15692 + throw CImgArgumentException("CImg<%s>::get_split() : Cannot split instance image (%u,%u,%u,%u,%p) along 'v' into %u images.", 2.15693 + pixel_type(),width,height,depth,dim,data,nb); 2.15694 + res.assign(nb?nb:dim); 2.15695 + const unsigned int delta = (unsigned int)cimg::round((float)dim/res.size,1); 2.15696 + unsigned int l, v; 2.15697 + for (l = 0, v = 0; l<res.size-1; ++l, v+=delta) res[l] = get_crop(0,0,0,v,width-1,height-1,depth-1,v+delta-1); 2.15698 + res[res.size-1] = get_crop(0,0,0,v,width-1,height-1,depth-1,dim-1); 2.15699 + } break; 2.15700 + default : 2.15701 + throw CImgArgumentException("CImg<%s>::get_split() : Unknow axis '%c', must be 'x','y','z' or 'v'", 2.15702 + pixel_type(),axis); 2.15703 + } 2.15704 + return res; 2.15705 + } 2.15706 + 2.15707 + // Split image into a list of vectors, according to a given splitting value. 2.15708 + CImgList<T> get_split(const T value, const bool keep_values, const bool shared) const { 2.15709 + CImgList<T> res; 2.15710 + const T *ptr0 = data, *const ptr_end = data + size(); 2.15711 + while (ptr0<ptr_end) { 2.15712 + const T *ptr1 = ptr0; 2.15713 + while (ptr1<ptr_end && *ptr1==value) ++ptr1; 2.15714 + const unsigned int siz0 = ptr1 - ptr0; 2.15715 + if (siz0 && keep_values) res.insert(CImg<T>(ptr0,1,siz0,1,1,shared)); 2.15716 + ptr0 = ptr1; 2.15717 + while (ptr1<ptr_end && *ptr1!=value) ++ptr1; 2.15718 + const unsigned int siz1 = ptr1 - ptr0; 2.15719 + if (siz1) res.insert(CImg<T>(ptr0,1,siz1,1,1,shared),~0U,shared); 2.15720 + ptr0 = ptr1; 2.15721 + } 2.15722 + return res; 2.15723 + } 2.15724 + 2.15725 + //! Append an image to another one. 2.15726 + CImg<T>& append(const CImg<T>& img, const char axis, const char align='p') { 2.15727 + if (!img) return *this; 2.15728 + if (is_empty()) return (*this=img); 2.15729 + return get_append(img,axis,align).transfer_to(*this); 2.15730 + } 2.15731 + 2.15732 + CImg<T> get_append(const CImg<T>& img, const char axis, const char align='p') const { 2.15733 + if (!img) return *this; 2.15734 + if (is_empty()) return img; 2.15735 + CImgList<T> temp(2); 2.15736 + temp[0].width = width; temp[0].height = height; temp[0].depth = depth; 2.15737 + temp[0].dim = dim; temp[0].data = data; 2.15738 + temp[1].width = img.width; temp[1].height = img.height; temp[1].depth = img.depth; 2.15739 + temp[1].dim = img.dim; temp[1].data = img.data; 2.15740 + const CImg<T> res = temp.get_append(axis,align); 2.15741 + temp[0].width = temp[0].height = temp[0].depth = temp[0].dim = 0; temp[0].data = 0; 2.15742 + temp[1].width = temp[1].height = temp[1].depth = temp[1].dim = 0; temp[1].data = 0; 2.15743 + return res; 2.15744 + } 2.15745 + 2.15746 + //! Compute the list of images, corresponding to the XY-gradients of an image. 2.15747 + /** 2.15748 + \param scheme = Numerical scheme used for the gradient computation : 2.15749 + - -1 = Backward finite differences 2.15750 + - 0 = Centered finite differences 2.15751 + - 1 = Forward finite differences 2.15752 + - 2 = Using Sobel masks 2.15753 + - 3 = Using rotation invariant masks 2.15754 + - 4 = Using Deriche recusrsive filter. 2.15755 + **/ 2.15756 + CImgList<Tfloat> get_gradient(const char *const axes=0, const int scheme=3) const { 2.15757 + CImgList<Tfloat> grad(2,width,height,depth,dim); 2.15758 + bool threed = false; 2.15759 + if (axes) { 2.15760 + for (unsigned int a = 0; axes[a]; ++a) { 2.15761 + const char axis = cimg::uncase(axes[a]); 2.15762 + switch (axis) { 2.15763 + case 'x' : case 'y' : break; 2.15764 + case 'z' : threed = true; break; 2.15765 + default : 2.15766 + throw CImgArgumentException("CImg<%s>::get_gradient() : Unknown specified axis '%c'.", 2.15767 + pixel_type(),axis); 2.15768 + } 2.15769 + } 2.15770 + } else threed = (depth>1); 2.15771 + if (threed) { 2.15772 + grad.insert(1); grad[2].assign(width,height,depth,dim); 2.15773 + switch (scheme) { // Compute 3D gradient 2.15774 + case -1 : { // backward finite differences 2.15775 + CImg_3x3x3(I,T); 2.15776 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { 2.15777 + grad[0](x,y,z,k) = (Tfloat)Iccc - Ipcc; 2.15778 + grad[1](x,y,z,k) = (Tfloat)Iccc - Icpc; 2.15779 + grad[2](x,y,z,k) = (Tfloat)Iccc - Iccp; 2.15780 + } 2.15781 + } break; 2.15782 + case 1 : { // forward finite differences 2.15783 + CImg_2x2x2(I,T); 2.15784 + cimg_forV(*this,k) cimg_for2x2x2(*this,x,y,z,k,I) { 2.15785 + grad[0](x,y,z,k) = (Tfloat)Incc - Iccc; 2.15786 + grad[1](x,y,z,k) = (Tfloat)Icnc - Iccc; 2.15787 + grad[2](x,y,z,k) = (Tfloat)Iccn - Iccc; 2.15788 + } 2.15789 + } break; 2.15790 + case 4 : { // using Deriche filter with low standard variation 2.15791 + grad[0] = get_deriche(0,1,'x'); 2.15792 + grad[1] = get_deriche(0,1,'y'); 2.15793 + grad[2] = get_deriche(0,1,'z'); 2.15794 + } break; 2.15795 + default : { // central finite differences 2.15796 + CImg_3x3x3(I,T); 2.15797 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { 2.15798 + grad[0](x,y,z,k) = 0.5f*((Tfloat)Incc - Ipcc); 2.15799 + grad[1](x,y,z,k) = 0.5f*((Tfloat)Icnc - Icpc); 2.15800 + grad[2](x,y,z,k) = 0.5f*((Tfloat)Iccn - Iccp); 2.15801 + } 2.15802 + } 2.15803 + } 2.15804 + } else switch (scheme) { // Compute 2D-gradient 2.15805 + case -1 : { // backward finite differences 2.15806 + CImg_3x3(I,T); 2.15807 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) { 2.15808 + grad[0](x,y,z,k) = (Tfloat)Icc - Ipc; 2.15809 + grad[1](x,y,z,k) = (Tfloat)Icc - Icp; 2.15810 + } 2.15811 + } break; 2.15812 + case 1 : { // forward finite differences 2.15813 + CImg_2x2(I,T); 2.15814 + cimg_forZV(*this,z,k) cimg_for2x2(*this,x,y,z,k,I) { 2.15815 + grad[0](x,y,0,k) = (Tfloat)Inc - Icc; 2.15816 + grad[1](x,y,z,k) = (Tfloat)Icn - Icc; 2.15817 + } 2.15818 + } break; 2.15819 + case 2 : { // using Sobel mask 2.15820 + CImg_3x3(I,T); 2.15821 + const Tfloat a = 1, b = 2; 2.15822 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) { 2.15823 + grad[0](x,y,z,k) = -a*Ipp - b*Ipc - a*Ipn + a*Inp + b*Inc + a*Inn; 2.15824 + grad[1](x,y,z,k) = -a*Ipp - b*Icp - a*Inp + a*Ipn + b*Icn + a*Inn; 2.15825 + } 2.15826 + } break; 2.15827 + case 3 : { // using rotation invariant mask 2.15828 + CImg_3x3(I,T); 2.15829 + const Tfloat a = (Tfloat)(0.25f*(2-cimg_std::sqrt(2.0f))), b = (Tfloat)(0.5f*(cimg_std::sqrt(2.0f)-1)); 2.15830 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) { 2.15831 + grad[0](x,y,z,k) = -a*Ipp - b*Ipc - a*Ipn + a*Inp + b*Inc + a*Inn; 2.15832 + grad[1](x,y,z,k) = -a*Ipp - b*Icp - a*Inp + a*Ipn + b*Icn + a*Inn; 2.15833 + } 2.15834 + } break; 2.15835 + case 4 : { // using Deriche filter with low standard variation 2.15836 + grad[0] = get_deriche(0,1,'x'); 2.15837 + grad[1] = get_deriche(0,1,'y'); 2.15838 + } break; 2.15839 + default : { // central finite differences 2.15840 + CImg_3x3(I,T); 2.15841 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) { 2.15842 + grad[0](x,y,z,k) = 0.5f*((Tfloat)Inc - Ipc); 2.15843 + grad[1](x,y,z,k) = 0.5f*((Tfloat)Icn - Icp); 2.15844 + } 2.15845 + } 2.15846 + } 2.15847 + if (!axes) return grad; 2.15848 + CImgList<Tfloat> res; 2.15849 + for (unsigned int l = 0; axes[l]; ++l) { 2.15850 + const char axis = cimg::uncase(axes[l]); 2.15851 + switch (axis) { 2.15852 + case 'x' : res.insert(grad[0]); break; 2.15853 + case 'y' : res.insert(grad[1]); break; 2.15854 + case 'z' : res.insert(grad[2]); break; 2.15855 + } 2.15856 + } 2.15857 + grad.assign(); 2.15858 + return res; 2.15859 + } 2.15860 + 2.15861 + //! Compute the structure tensor field of an image. 2.15862 + CImg<T>& structure_tensor(const bool central_scheme=false) { 2.15863 + return get_structure_tensor(central_scheme).transfer_to(*this); 2.15864 + } 2.15865 + 2.15866 + CImg<Tfloat> get_structure_tensor(const bool central_scheme=false) const { 2.15867 + if (is_empty()) return *this; 2.15868 + CImg<Tfloat> res; 2.15869 + if (depth>1) { // 3D version 2.15870 + res.assign(width,height,depth,6,0); 2.15871 + CImg_3x3x3(I,T); 2.15872 + if (central_scheme) cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { // classical central finite differences 2.15873 + const Tfloat 2.15874 + ix = 0.5f*((Tfloat)Incc - Ipcc), 2.15875 + iy = 0.5f*((Tfloat)Icnc - Icpc), 2.15876 + iz = 0.5f*((Tfloat)Iccn - Iccp); 2.15877 + res(x,y,z,0)+=ix*ix; 2.15878 + res(x,y,z,1)+=ix*iy; 2.15879 + res(x,y,z,2)+=ix*iz; 2.15880 + res(x,y,z,3)+=iy*iy; 2.15881 + res(x,y,z,4)+=iy*iz; 2.15882 + res(x,y,z,5)+=iz*iz; 2.15883 + } else cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { // Precise forward/backward finite differences 2.15884 + const Tfloat 2.15885 + ixf = (Tfloat)Incc - Iccc, ixb = (Tfloat)Iccc - Ipcc, 2.15886 + iyf = (Tfloat)Icnc - Iccc, iyb = (Tfloat)Iccc - Icpc, 2.15887 + izf = (Tfloat)Iccn - Iccc, izb = (Tfloat)Iccc - Iccp; 2.15888 + res(x,y,z,0) += 0.5f*(ixf*ixf + ixb*ixb); 2.15889 + res(x,y,z,1) += 0.25f*(ixf*iyf + ixf*iyb + ixb*iyf + ixb*iyb); 2.15890 + res(x,y,z,2) += 0.25f*(ixf*izf + ixf*izb + ixb*izf + ixb*izb); 2.15891 + res(x,y,z,3) += 0.5f*(iyf*iyf + iyb*iyb); 2.15892 + res(x,y,z,4) += 0.25f*(iyf*izf + iyf*izb + iyb*izf + iyb*izb); 2.15893 + res(x,y,z,5) += 0.5f*(izf*izf + izb*izb); 2.15894 + } 2.15895 + } else { // 2D version 2.15896 + res.assign(width,height,depth,3,0); 2.15897 + CImg_3x3(I,T); 2.15898 + if (central_scheme) cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { // classical central finite differences 2.15899 + const Tfloat 2.15900 + ix = 0.5f*((Tfloat)Inc - Ipc), 2.15901 + iy = 0.5f*((Tfloat)Icn - Icp); 2.15902 + res(x,y,0,0)+=ix*ix; 2.15903 + res(x,y,0,1)+=ix*iy; 2.15904 + res(x,y,0,2)+=iy*iy; 2.15905 + } else cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { // Precise forward/backward finite differences 2.15906 + const Tfloat 2.15907 + ixf = (Tfloat)Inc - Icc, ixb = (Tfloat)Icc - Ipc, 2.15908 + iyf = (Tfloat)Icn - Icc, iyb = (Tfloat)Icc - Icp; 2.15909 + res(x,y,0,0) += 0.5f*(ixf*ixf+ixb*ixb); 2.15910 + res(x,y,0,1) += 0.25f*(ixf*iyf+ixf*iyb+ixb*iyf+ixb*iyb); 2.15911 + res(x,y,0,2) += 0.5f*(iyf*iyf+iyb*iyb); 2.15912 + } 2.15913 + } 2.15914 + return res; 2.15915 + } 2.15916 + 2.15917 + //! Get components of the Hessian matrix of an image. 2.15918 + CImgList<Tfloat> get_hessian(const char *const axes=0) const { 2.15919 + const char *naxes = axes, *const def_axes2d = "xxxyyy", *const def_axes3d = "xxxyxzyyyzzz"; 2.15920 + if (!axes) naxes = depth>1?def_axes3d:def_axes2d; 2.15921 + CImgList<Tfloat> res; 2.15922 + const int lmax = cimg::strlen(naxes); 2.15923 + if (lmax%2) 2.15924 + throw CImgArgumentException("CImg<%s>::get_hessian() : Incomplete parameter axes = '%s'.", 2.15925 + pixel_type(),naxes); 2.15926 + res.assign(lmax/2,width,height,depth,dim); 2.15927 + if (!cimg::strcasecmp(naxes,def_axes3d)) { // Default 3D version 2.15928 + CImg_3x3x3(I,T); 2.15929 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { 2.15930 + res[0](x,y,z,k) = (Tfloat)Ipcc + Incc - 2*Iccc; // Ixx 2.15931 + res[1](x,y,z,k) = 0.25f*((Tfloat)Ippc + Innc - Ipnc - Inpc); // Ixy 2.15932 + res[2](x,y,z,k) = 0.25f*((Tfloat)Ipcp + Incn - Ipcn - Incp); // Ixz 2.15933 + res[3](x,y,z,k) = (Tfloat)Icpc + Icnc - 2*Iccc; // Iyy 2.15934 + res[4](x,y,z,k) = 0.25f*((Tfloat)Icpp + Icnn - Icpn - Icnp); // Iyz 2.15935 + res[5](x,y,z,k) = (Tfloat)Iccn + Iccp - 2*Iccc; // Izz 2.15936 + } 2.15937 + } else if (!cimg::strcasecmp(naxes,def_axes2d)) { // Default 2D version 2.15938 + CImg_3x3(I,T); 2.15939 + cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { 2.15940 + res[0](x,y,0,k) = (Tfloat)Ipc + Inc - 2*Icc; // Ixx 2.15941 + res[1](x,y,0,k) = 0.25f*((Tfloat)Ipp + Inn - Ipn - Inp); // Ixy 2.15942 + res[2](x,y,0,k) = (Tfloat)Icp + Icn - 2*Icc; // Iyy 2.15943 + } 2.15944 + } else for (int l = 0; l<lmax; ) { // Version with custom axes. 2.15945 + const int l2 = l/2; 2.15946 + char axis1 = naxes[l++], axis2 = naxes[l++]; 2.15947 + if (axis1>axis2) cimg::swap(axis1,axis2); 2.15948 + bool valid_axis = false; 2.15949 + if (axis1=='x' && axis2=='x') { // Ixx 2.15950 + valid_axis = true; CImg_3x3(I,T); 2.15951 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = (Tfloat)Ipc + Inc - 2*Icc; 2.15952 + } 2.15953 + else if (axis1=='x' && axis2=='y') { // Ixy 2.15954 + valid_axis = true; CImg_3x3(I,T); 2.15955 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = 0.25f*((Tfloat)Ipp + Inn - Ipn - Inp); 2.15956 + } 2.15957 + else if (axis1=='x' && axis2=='z') { // Ixz 2.15958 + valid_axis = true; CImg_3x3x3(I,T); 2.15959 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = 0.25f*((Tfloat)Ipcp + Incn - Ipcn - Incp); 2.15960 + } 2.15961 + else if (axis1=='y' && axis2=='y') { // Iyy 2.15962 + valid_axis = true; CImg_3x3(I,T); 2.15963 + cimg_forZV(*this,z,k) cimg_for3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = (Tfloat)Icp + Icn - 2*Icc; 2.15964 + } 2.15965 + else if (axis1=='y' && axis2=='z') { // Iyz 2.15966 + valid_axis = true; CImg_3x3x3(I,T); 2.15967 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = 0.25f*((Tfloat)Icpp + Icnn - Icpn - Icnp); 2.15968 + } 2.15969 + else if (axis1=='z' && axis2=='z') { // Izz 2.15970 + valid_axis = true; CImg_3x3x3(I,T); 2.15971 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) res[l2](x,y,z,k) = (Tfloat)Iccn + Iccp - 2*Iccc; 2.15972 + } 2.15973 + else if (!valid_axis) throw CImgArgumentException("CImg<%s>::get_hessian() : Invalid parameter axes = '%s'.", 2.15974 + pixel_type(),naxes); 2.15975 + } 2.15976 + return res; 2.15977 + } 2.15978 + 2.15979 + //! Compute distance function from 0-valued isophotes by the application of an Hamilton-Jacobi PDE. 2.15980 + CImg<T>& distance_hamilton(const unsigned int nb_iter, const float band_size=0, const float precision=0.5f) { 2.15981 + if (is_empty()) return *this; 2.15982 + CImg<Tfloat> veloc(*this); 2.15983 + for (unsigned int iter = 0; iter<nb_iter; ++iter) { 2.15984 + veloc.fill(0); 2.15985 + if (depth>1) { // 3D version 2.15986 + CImg_3x3x3(I,T); 2.15987 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) if (band_size<=0 || cimg::abs(Iccc)<band_size) { 2.15988 + const Tfloat 2.15989 + gx = 0.5f*((Tfloat)Incc - Ipcc), 2.15990 + gy = 0.5f*((Tfloat)Icnc - Icpc), 2.15991 + gz = 0.5f*((Tfloat)Iccn - Iccp), 2.15992 + sgn = -cimg::sign((Tfloat)Iccc), 2.15993 + ix = gx*sgn>0?(Tfloat)Incc - Iccc:(Tfloat)Iccc - Ipcc, 2.15994 + iy = gy*sgn>0?(Tfloat)Icnc - Iccc:(Tfloat)Iccc - Icpc, 2.15995 + iz = gz*sgn>0?(Tfloat)Iccn - Iccc:(Tfloat)Iccc - Iccp, 2.15996 + ng = 1e-5f + (Tfloat)cimg_std::sqrt(gx*gx + gy*gy + gz*gz), 2.15997 + ngx = gx/ng, 2.15998 + ngy = gy/ng, 2.15999 + ngz = gz/ng; 2.16000 + veloc(x,y,z,k) = sgn*(ngx*ix + ngy*iy + ngz*iz - 1); 2.16001 + } 2.16002 + } else { // 2D version 2.16003 + CImg_3x3(I,T); 2.16004 + cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) if (band_size<=0 || cimg::abs(Icc)<band_size) { 2.16005 + const Tfloat 2.16006 + gx = 0.5f*((Tfloat)Inc - Ipc), 2.16007 + gy = 0.5f*((Tfloat)Icn - Icp), 2.16008 + sgn = -cimg::sign((Tfloat)Icc), 2.16009 + ix = gx*sgn>0?(Tfloat)Inc - Icc:(Tfloat)Icc - Ipc, 2.16010 + iy = gy*sgn>0?(Tfloat)Icn - Icc:(Tfloat)Icc - Icp, 2.16011 + ng = 1e-5f + (Tfloat)cimg_std::sqrt(gx*gx + gy*gy), 2.16012 + ngx = gx/ng, 2.16013 + ngy = gy/ng; 2.16014 + veloc(x,y,k) = sgn*(ngx*ix + ngy*iy - 1); 2.16015 + } 2.16016 + } 2.16017 + float m, M = (float)veloc.maxmin(m), xdt = precision/(float)cimg::max(cimg::abs(m),cimg::abs(M)); 2.16018 + *this+=(veloc*=xdt); 2.16019 + } 2.16020 + return *this; 2.16021 + } 2.16022 + 2.16023 + CImg<Tfloat> get_distance_hamilton(const unsigned int nb_iter, const float band_size=0, const float precision=0.5f) const { 2.16024 + return CImg<Tfloat>(*this,false).distance_hamilton(nb_iter,band_size,precision); 2.16025 + } 2.16026 + 2.16027 + //! Compute the Euclidean distance map to a shape of specified isovalue. 2.16028 + CImg<T>& distance(const T isovalue, 2.16029 + const float sizex=1, const float sizey=1, const float sizez=1, 2.16030 + const bool compute_sqrt=true) { 2.16031 + return get_distance(isovalue,sizex,sizey,sizez,compute_sqrt).transfer_to(*this); 2.16032 + } 2.16033 + 2.16034 + CImg<floatT> get_distance(const T isovalue, 2.16035 + const float sizex=1, const float sizey=1, const float sizez=1, 2.16036 + const bool compute_sqrt=true) const { 2.16037 + if (is_empty()) return *this; 2.16038 + const int dx = dimx(), dy = dimy(), dz = dimz(); 2.16039 + CImg<floatT> res(dx,dy,dz,dim); 2.16040 + const float maxdist = (float)cimg_std::sqrt((float)dx*dx + dy*dy + dz*dz); 2.16041 + cimg_forV(*this,k) { 2.16042 + bool is_isophote = false; 2.16043 + 2.16044 + if (depth>1) { // 3D version 2.16045 + { cimg_forYZ(*this,y,z) { 2.16046 + if ((*this)(0,y,z,k)==isovalue) { is_isophote = true; res(0,y,z,k) = 0; } else res(0,y,z,k) = maxdist; 2.16047 + for (int x = 1; x<dx; ++x) if ((*this)(x,y,z,k)==isovalue) { is_isophote = true; res(x,y,z,k) = 0; } 2.16048 + else res(x,y,z,k) = res(x-1,y,z,k) + sizex; 2.16049 + { for (int x = dx-2; x>=0; --x) if (res(x+1,y,z,k)<res(x,y,z,k)) res(x,y,z,k) = res(x+1,y,z,k) + sizex; } 2.16050 + }} 2.16051 + if (!is_isophote) { res.get_shared_channel(k).fill(cimg::type<float>::max()); continue; } 2.16052 + CImg<floatT> tmp(cimg::max(dy,dz)); 2.16053 + CImg<intT> s(tmp.width), t(s.width); 2.16054 + { cimg_forXZ(*this,x,z) { 2.16055 + { cimg_forY(*this,y) tmp[y] = res(x,y,z,k); } 2.16056 + int q = s[0] = t[0] = 0; 2.16057 + { for (int y = 1; y<dy; ++y) { 2.16058 + const float val = tmp[y], val2 = val*val; 2.16059 + while (q>=0 && _distance_f(t[q],s[q],cimg::sqr(tmp[s[q]]),sizey)>_distance_f(t[q],y,val2,sizey)) --q; 2.16060 + if (q<0) { q = 0; s[0] = y; } 2.16061 + else { 2.16062 + const int w = 1 + _distance_sep(s[q],y,(int)cimg::sqr(tmp[s[q]]),(int)val2,sizey); 2.16063 + if (w<dy) { s[++q] = y; t[q] = w; } 2.16064 + } 2.16065 + }} 2.16066 + { for (int y = dy - 1; y>=0; --y) { 2.16067 + res(x,y,z,k) = _distance_f(y,s[q],cimg::sqr(tmp[s[q]]),sizey); 2.16068 + if (y==t[q]) --q; 2.16069 + }} 2.16070 + }} 2.16071 + { cimg_forXY(*this,x,y) { 2.16072 + { cimg_forZ(*this,z) tmp[z] = res(x,y,z,k); } 2.16073 + int q = s[0] = t[0] = 0; 2.16074 + { for (int z = 1; z<dz; ++z) { 2.16075 + const float val = tmp[z]; 2.16076 + while (q>=0 && _distance_f(t(q),s[q],tmp[s[q]],sizez)>_distance_f(t[q],z,tmp[z],sizez)) --q; 2.16077 + if (q<0) { q = 0; s[0] = z; } 2.16078 + else { 2.16079 + const int w = 1 + _distance_sep(s[q],z,(int)tmp[s[q]],(int)val,sizez); 2.16080 + if (w<dz) { s[++q] = z; t[q] = w; } 2.16081 + } 2.16082 + }} 2.16083 + { for (int z = dz - 1; z>=0; --z) { 2.16084 + const float val = _distance_f(z,s[q],tmp[s[q]],sizez); 2.16085 + res(x,y,z,k) = compute_sqrt?(float)cimg_std::sqrt(val):val; 2.16086 + if (z==t[q]) --q; 2.16087 + }} 2.16088 + }} 2.16089 + } else { // 2D version (with small optimizations) 2.16090 + cimg_forX(*this,x) { 2.16091 + const T *ptrs = ptr(x,0,0,k); 2.16092 + float *ptrd = res.ptr(x,0,0,k), d = *ptrd = *ptrs==isovalue?(is_isophote=true),0:maxdist; 2.16093 + for (int y = 1; y<dy; ++y) { ptrs+=width; ptrd+=width; d = *ptrd = *ptrs==isovalue?(is_isophote=true),0:d+sizey; } 2.16094 + { for (int y = dy - 2; y>=0; --y) { ptrd-=width; if (d<*ptrd) *ptrd = (d+=sizey); else d = *ptrd; }} 2.16095 + } 2.16096 + if (!is_isophote) { res.get_shared_channel(k).fill(cimg::type<float>::max()); continue; } 2.16097 + CImg<floatT> tmp(dx); 2.16098 + CImg<intT> s(dx), t(dx); 2.16099 + cimg_forY(*this,y) { 2.16100 + float *ptmp = tmp.ptr(); 2.16101 + cimg_std::memcpy(ptmp,res.ptr(0,y,0,k),sizeof(float)*dx); 2.16102 + int q = s[0] = t[0] = 0; 2.16103 + for (int x = 1; x<dx; ++x) { 2.16104 + const float val = *(++ptmp), val2 = val*val; 2.16105 + while (q>=0 && _distance_f(t[q],s[q],cimg::sqr(tmp[s[q]]),sizex)>_distance_f(t[q],x,val2,sizex)) --q; 2.16106 + if (q<0) { q = 0; s[0] = x; } 2.16107 + else { 2.16108 + const int w = 1 + _distance_sep(s[q],x,(int)cimg::sqr(tmp[s[q]]),(int)val2,sizex); 2.16109 + if (w<dx) { q++; s[q] = x; t[q] = w; } 2.16110 + } 2.16111 + } 2.16112 + float *pres = res.ptr(0,y,0,k) + width; 2.16113 + { for (int x = dx - 1; x>=0; --x) { 2.16114 + const float val = _distance_f(x,s[q],cimg::sqr(tmp[s[q]]),sizex); 2.16115 + *(--pres) = compute_sqrt?(float)cimg_std::sqrt(val):val; 2.16116 + if (x==t[q]) --q; 2.16117 + }} 2.16118 + } 2.16119 + } 2.16120 + } 2.16121 + return res; 2.16122 + } 2.16123 + 2.16124 + static float _distance_f(const int x, const int i, const float gi2, const float fact) { 2.16125 + const float xmi = fact*((float)x - i); 2.16126 + return xmi*xmi + gi2; 2.16127 + } 2.16128 + static int _distance_sep(const int i, const int u, const int gi2, const int gu2, const float fact) { 2.16129 + const float fact2 = fact*fact; 2.16130 + return (int)(fact2*(u*u - i*i) + gu2 - gi2)/(int)(2*fact2*(u - i)); 2.16131 + } 2.16132 + 2.16133 + //! Compute minimal path in a graph, using the Dijkstra algorithm. 2.16134 + /** 2.16135 + \param distance An object having operator()(unsigned int i, unsigned int j) which returns distance between two nodes (i,j). 2.16136 + \param nb_nodes Number of graph nodes. 2.16137 + \param starting_node Indice of the starting node. 2.16138 + \param ending_node Indice of the ending node (set to ~0U to ignore ending node). 2.16139 + \param previous Array that gives the previous node indice in the path to the starting node (optional parameter). 2.16140 + \return Array of distances of each node to the starting node. 2.16141 + **/ 2.16142 + template<typename tf, typename t> 2.16143 + static CImg<T> dijkstra(const tf& distance, const unsigned int nb_nodes, 2.16144 + const unsigned int starting_node, const unsigned int ending_node, 2.16145 + CImg<t>& previous) { 2.16146 + 2.16147 + CImg<T> dist(1,nb_nodes,1,1,cimg::type<T>::max()); 2.16148 + dist(starting_node) = 0; 2.16149 + previous.assign(1,nb_nodes,1,1,(t)-1); 2.16150 + previous(starting_node) = (t)starting_node; 2.16151 + CImg<uintT> Q(nb_nodes); 2.16152 + cimg_forX(Q,u) Q(u) = u; 2.16153 + cimg::swap(Q(starting_node),Q(0)); 2.16154 + unsigned int sizeQ = nb_nodes; 2.16155 + while (sizeQ) { 2.16156 + // Update neighbors from minimal vertex 2.16157 + const unsigned int umin = Q(0); 2.16158 + if (umin==ending_node) sizeQ = 0; 2.16159 + else { 2.16160 + const T dmin = dist(umin); 2.16161 + const T infty = cimg::type<T>::max(); 2.16162 + for (unsigned int q=1; q<sizeQ; ++q) { 2.16163 + const unsigned int v = Q(q); 2.16164 + const T d = (T)distance(v,umin); 2.16165 + if (d<infty) { 2.16166 + const T alt = dmin + d; 2.16167 + if (alt<dist(v)) { 2.16168 + dist(v) = alt; 2.16169 + previous(v) = (t)umin; 2.16170 + const T distpos = dist(Q(q)); 2.16171 + for (unsigned int pos = q, par = 0; pos && distpos<dist(Q(par=(pos+1)/2-1)); pos=par) cimg::swap(Q(pos),Q(par)); 2.16172 + } 2.16173 + } 2.16174 + } 2.16175 + // Remove minimal vertex from queue 2.16176 + Q(0) = Q(--sizeQ); 2.16177 + const T distpos = dist(Q(0)); 2.16178 + for (unsigned int pos = 0, left = 0, right = 0; 2.16179 + ((right=2*(pos+1),(left=right-1))<sizeQ && distpos>dist(Q(left))) || (right<sizeQ && distpos>dist(Q(right)));) { 2.16180 + if (right<sizeQ) { 2.16181 + if (dist(Q(left))<dist(Q(right))) { cimg::swap(Q(pos),Q(left)); pos = left; } 2.16182 + else { cimg::swap(Q(pos),Q(right)); pos = right; } 2.16183 + } else { cimg::swap(Q(pos),Q(left)); pos = left; } 2.16184 + } 2.16185 + } 2.16186 + } 2.16187 + return dist; 2.16188 + } 2.16189 + 2.16190 + //! Return minimal path in a graph, using the Dijkstra algorithm. 2.16191 + template<typename tf, typename t> 2.16192 + static CImg<T> dijkstra(const tf& distance, const unsigned int nb_nodes, 2.16193 + const unsigned int starting_node, const unsigned int ending_node=~0U) { 2.16194 + CImg<uintT> foo; 2.16195 + return dijkstra(distance,nb_nodes,starting_node,ending_node,foo); 2.16196 + } 2.16197 + 2.16198 + //! Return minimal path in a graph, using the Dijkstra algorithm. 2.16199 + /** 2.16200 + Instance image corresponds to the adjacency matrix of the graph. 2.16201 + \param starting_node Indice of the starting node. 2.16202 + \param previous Array that gives the previous node indice in the path to the starting node (optional parameter). 2.16203 + \return Array of distances of each node to the starting node. 2.16204 + **/ 2.16205 + template<typename t> 2.16206 + CImg<T>& dijkstra(const unsigned int starting_node, const unsigned int ending_node, CImg<t>& previous) { 2.16207 + return get_dijkstra(starting_node,ending_node,previous).transfer_to(*this); 2.16208 + } 2.16209 + 2.16210 + template<typename t> 2.16211 + CImg<T> get_dijkstra(const unsigned int starting_node, const unsigned int ending_node, CImg<t>& previous) const { 2.16212 + if (width!=height || depth!=1 || dim!=1) 2.16213 + throw CImgInstanceException("CImg<%s>::dijkstra() : Instance image (%u,%u,%u,%u,%p) is not a graph adjacency matrix", 2.16214 + pixel_type(),width,height,depth,dim,data); 2.16215 + return dijkstra(*this,width,starting_node,ending_node,previous); 2.16216 + } 2.16217 + 2.16218 + //! Return minimal path in a graph, using the Dijkstra algorithm. 2.16219 + CImg<T>& dijkstra(const unsigned int starting_node, const unsigned int ending_node=~0U) { 2.16220 + return get_dijkstra(starting_node,ending_node).transfer_to(*this); 2.16221 + } 2.16222 + 2.16223 + CImg<Tfloat> get_dijkstra(const unsigned int starting_node, const unsigned int ending_node=~0U) const { 2.16224 + CImg<uintT> foo; 2.16225 + return get_dijkstra(starting_node,ending_node,foo); 2.16226 + } 2.16227 + 2.16228 + //@} 2.16229 + //------------------------------------- 2.16230 + // 2.16231 + //! \name Meshes and Triangulations 2.16232 + //@{ 2.16233 + //------------------------------------- 2.16234 + 2.16235 + //! Return a 3D centered cube. 2.16236 + template<typename tf> 2.16237 + static CImg<floatT> cube3d(CImgList<tf>& primitives, const float size=100) { 2.16238 + const double s = size/2.0; 2.16239 + primitives.assign(6,1,4,1,1, 0,3,2,1, 4,5,6,7, 0,1,5,4, 3,7,6,2, 0,4,7,3, 1,2,6,5); 2.16240 + return CImg<floatT>(8,3,1,1, 2.16241 + -s,s,s,-s,-s,s,s,-s, 2.16242 + -s,-s,s,s,-s,-s,s,s, 2.16243 + -s,-s,-s,-s,s,s,s,s); 2.16244 + } 2.16245 + 2.16246 + //! Return a 3D centered cuboid. 2.16247 + template<typename tf> 2.16248 + static CImg<floatT> cuboid3d(CImgList<tf>& primitives, const float sizex=200, 2.16249 + const float sizey=100, const float sizez=100) { 2.16250 + const double sx = sizex/2.0, sy = sizey/2.0, sz = sizez/2.0; 2.16251 + primitives.assign(6,1,4,1,1, 0,3,2,1, 4,5,6,7, 0,1,5,4, 3,7,6,2, 0,4,7,3, 1,2,6,5); 2.16252 + return CImg<floatT>(8,3,1,1, 2.16253 + -sx,sx,sx,-sx,-sx,sx,sx,-sx, 2.16254 + -sy,-sy,sy,sy,-sy,-sy,sy,sy, 2.16255 + -sz,-sz,-sz,-sz,sz,sz,sz,sz); 2.16256 + } 2.16257 + 2.16258 + //! Return a 3D centered cone. 2.16259 + template<typename tf> 2.16260 + static CImg<floatT> cone3d(CImgList<tf>& primitives, const float radius=50, const float height=100, 2.16261 + const unsigned int subdivisions=24, const bool symetrize=false) { 2.16262 + primitives.assign(); 2.16263 + if (!subdivisions) return CImg<floatT>(); 2.16264 + const double r = (double)radius, h = (double)height/2; 2.16265 + CImgList<floatT> points(2,1,3,1,1, 2.16266 + 0.0,0.0,h, 2.16267 + 0.0,0.0,-h); 2.16268 + const float delta = 360.0f/subdivisions, nh = symetrize?0:-(float)h; 2.16269 + for (float angle = 0; angle<360; angle+=delta) { 2.16270 + const float a = (float)(angle*cimg::valuePI/180); 2.16271 + points.insert(CImg<floatT>::vector((float)(r*cimg_std::cos(a)),(float)(r*cimg_std::sin(a)),nh)); 2.16272 + } 2.16273 + const unsigned int nbr = points.size-2; 2.16274 + for (unsigned int p = 0; p<nbr; ++p) { 2.16275 + const unsigned int curr = 2+p, next = 2+((p+1)%nbr); 2.16276 + primitives.insert(CImg<tf>::vector(1,next,curr)). 2.16277 + insert(CImg<tf>::vector(0,curr,next)); 2.16278 + } 2.16279 + return points.get_append('x'); 2.16280 + } 2.16281 + 2.16282 + //! Return a 3D centered cylinder. 2.16283 + template<typename tf> 2.16284 + static CImg<floatT> cylinder3d(CImgList<tf>& primitives, const float radius=50, const float height=100, 2.16285 + const unsigned int subdivisions=24) { 2.16286 + primitives.assign(); 2.16287 + if (!subdivisions) return CImg<floatT>(); 2.16288 + const double r = (double)radius, h = (double)height/2; 2.16289 + CImgList<floatT> points(2,1,3,1,1, 2.16290 + 0.0,0.0,-h, 2.16291 + 0.0,0.0,h); 2.16292 + 2.16293 + const float delta = 360.0f/subdivisions; 2.16294 + for (float angle = 0; angle<360; angle+=delta) { 2.16295 + const float a = (float)(angle*cimg::valuePI/180); 2.16296 + points.insert(CImg<floatT>::vector((float)(r*cimg_std::cos(a)),(float)(r*cimg_std::sin(a)),-(float)h)); 2.16297 + points.insert(CImg<floatT>::vector((float)(r*cimg_std::cos(a)),(float)(r*cimg_std::sin(a)),(float)h)); 2.16298 + } 2.16299 + const unsigned int nbr = (points.size-2)/2; 2.16300 + for (unsigned int p = 0; p<nbr; ++p) { 2.16301 + const unsigned int curr = 2+2*p, next = 2+(2*((p+1)%nbr)); 2.16302 + primitives.insert(CImg<tf>::vector(0,next,curr)). 2.16303 + insert(CImg<tf>::vector(1,curr+1,next+1)). 2.16304 + insert(CImg<tf>::vector(curr,next,next+1,curr+1)); 2.16305 + } 2.16306 + return points.get_append('x'); 2.16307 + } 2.16308 + 2.16309 + //! Return a 3D centered torus. 2.16310 + template<typename tf> 2.16311 + static CImg<floatT> torus3d(CImgList<tf>& primitives, const float radius1=100, const float radius2=30, 2.16312 + const unsigned int subdivisions1=24, const unsigned int subdivisions2=12) { 2.16313 + primitives.assign(); 2.16314 + if (!subdivisions1 || !subdivisions2) return CImg<floatT>(); 2.16315 + CImgList<floatT> points; 2.16316 + for (unsigned int v = 0; v<subdivisions1; ++v) { 2.16317 + const float 2.16318 + beta = (float)(v*2*cimg::valuePI/subdivisions1), 2.16319 + xc = radius1*(float)cimg_std::cos(beta), 2.16320 + yc = radius1*(float)cimg_std::sin(beta); 2.16321 + for (unsigned int u=0; u<subdivisions2; ++u) { 2.16322 + const float 2.16323 + alpha = (float)(u*2*cimg::valuePI/subdivisions2), 2.16324 + x = xc + radius2*(float)(cimg_std::cos(alpha)*cimg_std::cos(beta)), 2.16325 + y = yc + radius2*(float)(cimg_std::cos(alpha)*cimg_std::sin(beta)), 2.16326 + z = radius2*(float)cimg_std::sin(alpha); 2.16327 + points.insert(CImg<floatT>::vector(x,y,z)); 2.16328 + } 2.16329 + } 2.16330 + for (unsigned int vv = 0; vv<subdivisions1; ++vv) { 2.16331 + const unsigned int nv = (vv+1)%subdivisions1; 2.16332 + for (unsigned int uu = 0; uu<subdivisions2; ++uu) { 2.16333 + const unsigned int nu = (uu+1)%subdivisions2, svv = subdivisions2*vv, snv = subdivisions2*nv; 2.16334 + primitives.insert(CImg<tf>::vector(svv+nu,svv+uu,snv+uu)); 2.16335 + primitives.insert(CImg<tf>::vector(svv+nu,snv+uu,snv+nu)); 2.16336 + } 2.16337 + } 2.16338 + return points.get_append('x'); 2.16339 + } 2.16340 + 2.16341 + //! Return a 3D centered XY plane. 2.16342 + template<typename tf> 2.16343 + static CImg<floatT> plane3d(CImgList<tf>& primitives, const float sizex=100, const float sizey=100, 2.16344 + const unsigned int subdivisionsx=3, const unsigned int subdivisionsy=3, 2.16345 + const bool double_sided=false) { 2.16346 + primitives.assign(); 2.16347 + if (!subdivisionsx || !subdivisionsy) return CImg<floatT>(); 2.16348 + CImgList<floatT> points; 2.16349 + const unsigned int w = subdivisionsx + 1, h = subdivisionsy + 1; 2.16350 + const float w2 = subdivisionsx/2.0f, h2 = subdivisionsy/2.0f, fx = (float)sizex/w, fy = (float)sizey/h; 2.16351 + for (unsigned int yy = 0; yy<h; ++yy) 2.16352 + for (unsigned int xx = 0; xx<w; ++xx) 2.16353 + points.insert(CImg<floatT>::vector(fx*(xx-w2),fy*(yy-h2),0)); 2.16354 + for (unsigned int y = 0; y<subdivisionsy; ++y) for (unsigned int x = 0; x<subdivisionsx; ++x) { 2.16355 + const int off1 = x+y*w, off2 = x+1+y*w, off3 = x+1+(y+1)*w, off4 = x+(y+1)*w; 2.16356 + primitives.insert(CImg<tf>::vector(off1,off4,off3,off2)); 2.16357 + if (double_sided) primitives.insert(CImg<tf>::vector(off1,off2,off3,off4)); 2.16358 + } 2.16359 + return points.get_append('x'); 2.16360 + } 2.16361 + 2.16362 + //! Return a 3D centered sphere. 2.16363 + template<typename tf> 2.16364 + static CImg<floatT> sphere3d(CImgList<tf>& primitives, const float radius=50, const unsigned int subdivisions=3) { 2.16365 + 2.16366 + // Create initial icosahedron 2.16367 + primitives.assign(); 2.16368 + if (!subdivisions) return CImg<floatT>(); 2.16369 + const double tmp = (1+cimg_std::sqrt(5.0f))/2, a = 1.0/cimg_std::sqrt(1+tmp*tmp), b = tmp*a; 2.16370 + CImgList<floatT> points(12,1,3,1,1, b,a,0.0, -b,a,0.0, -b,-a,0.0, b,-a,0.0, a,0.0,b, a,0.0,-b, 2.16371 + -a,0.0,-b, -a,0.0,b, 0.0,b,a, 0.0,-b,a, 0.0,-b,-a, 0.0,b,-a); 2.16372 + primitives.assign(20,1,3,1,1, 4,8,7, 4,7,9, 5,6,11, 5,10,6, 0,4,3, 0,3,5, 2,7,1, 2,1,6, 2.16373 + 8,0,11, 8,11,1, 9,10,3, 9,2,10, 8,4,0, 11,0,5, 4,9,3, 2.16374 + 5,3,10, 7,8,1, 6,1,11, 7,2,9, 6,10,2); 2.16375 + 2.16376 + // Recurse subdivisions 2.16377 + for (unsigned int i = 0; i<subdivisions; ++i) { 2.16378 + const unsigned int L = primitives.size; 2.16379 + for (unsigned int l = 0; l<L; ++l) { 2.16380 + const unsigned int 2.16381 + p0 = (unsigned int)primitives(0,0), p1 = (unsigned int)primitives(0,1), p2 = (unsigned int)primitives(0,2); 2.16382 + const float 2.16383 + x0 = points(p0,0), y0 = points(p0,1), z0 = points(p0,2), 2.16384 + x1 = points(p1,0), y1 = points(p1,1), z1 = points(p1,2), 2.16385 + x2 = points(p2,0), y2 = points(p2,1), z2 = points(p2,2), 2.16386 + tnx0 = (x0+x1)/2, tny0 = (y0+y1)/2, tnz0 = (z0+z1)/2, nn0 = (float)cimg_std::sqrt(tnx0*tnx0+tny0*tny0+tnz0*tnz0), 2.16387 + tnx1 = (x0+x2)/2, tny1 = (y0+y2)/2, tnz1 = (z0+z2)/2, nn1 = (float)cimg_std::sqrt(tnx1*tnx1+tny1*tny1+tnz1*tnz1), 2.16388 + tnx2 = (x1+x2)/2, tny2 = (y1+y2)/2, tnz2 = (z1+z2)/2, nn2 = (float)cimg_std::sqrt(tnx2*tnx2+tny2*tny2+tnz2*tnz2), 2.16389 + nx0 = tnx0/nn0, ny0 = tny0/nn0, nz0 = tnz0/nn0, 2.16390 + nx1 = tnx1/nn1, ny1 = tny1/nn1, nz1 = tnz1/nn1, 2.16391 + nx2 = tnx2/nn2, ny2 = tny2/nn2, nz2 = tnz2/nn2; 2.16392 + int i0 = -1, i1 = -1, i2 = -1; 2.16393 + cimglist_for(points,p) { 2.16394 + const float x = (float)points(p,0), y = (float)points(p,1), z = (float)points(p,2); 2.16395 + if (x==nx0 && y==ny0 && z==nz0) i0 = p; 2.16396 + if (x==nx1 && y==ny1 && z==nz1) i1 = p; 2.16397 + if (x==nx2 && y==ny2 && z==nz2) i2 = p; 2.16398 + } 2.16399 + if (i0<0) { points.insert(CImg<floatT>::vector(nx0,ny0,nz0)); i0 = points.size-1; } 2.16400 + if (i1<0) { points.insert(CImg<floatT>::vector(nx1,ny1,nz1)); i1 = points.size-1; } 2.16401 + if (i2<0) { points.insert(CImg<floatT>::vector(nx2,ny2,nz2)); i2 = points.size-1; } 2.16402 + primitives.remove(0); 2.16403 + primitives.insert(CImg<tf>::vector(p0,i0,i1)). 2.16404 + insert(CImg<tf>::vector((tf)i0,(tf)p1,(tf)i2)). 2.16405 + insert(CImg<tf>::vector((tf)i1,(tf)i2,(tf)p2)). 2.16406 + insert(CImg<tf>::vector((tf)i1,(tf)i0,(tf)i2)); 2.16407 + } 2.16408 + } 2.16409 + return points.get_append('x')*=radius; 2.16410 + } 2.16411 + 2.16412 + //! Return a 3D centered ellipsoid. 2.16413 + template<typename tf, typename t> 2.16414 + static CImg<floatT> ellipsoid3d(CImgList<tf>& primitives, const CImg<t>& tensor, 2.16415 + const unsigned int subdivisions=3) { 2.16416 + primitives.assign(); 2.16417 + if (!subdivisions) return CImg<floatT>(); 2.16418 + typedef typename cimg::superset<t,float>::type tfloat; 2.16419 + CImg<tfloat> S,V; 2.16420 + tensor.symmetric_eigen(S,V); 2.16421 + const tfloat l0 = S[0], l1 = S[1], l2 = S[2]; 2.16422 + CImg<floatT> points = sphere(primitives,subdivisions); 2.16423 + cimg_forX(points,p) { 2.16424 + points(p,0) = (float)(points(p,0)*l0); 2.16425 + points(p,1) = (float)(points(p,1)*l1); 2.16426 + points(p,2) = (float)(points(p,2)*l2); 2.16427 + } 2.16428 + V.transpose(); 2.16429 + points = V*points; 2.16430 + return points; 2.16431 + } 2.16432 + 2.16433 + //! Return a 3D elevation object of the instance image. 2.16434 + template<typename tf, typename tc, typename te> 2.16435 + CImg<floatT> get_elevation3d(CImgList<tf>& primitives, CImgList<tc>& colors, const CImg<te>& elevation) const { 2.16436 + primitives.assign(); 2.16437 + colors.assign(); 2.16438 + if (is_empty()) return *this; 2.16439 + if (depth>1) 2.16440 + throw CImgInstanceException("CImg<%s>::get_elevation3d() : Instance image (%u,%u,%u,%u,%p) is not a 2D image.", 2.16441 + pixel_type(),width,height,depth,dim,data); 2.16442 + if (!is_sameXY(elevation)) 2.16443 + throw CImgArgumentException("CImg<%s>::get_elevation3d() : Elevation image (%u,%u,%u,%u,%p) and instance image (%u,%u,%u,%u,%p) " 2.16444 + "have different sizes.",pixel_type(), 2.16445 + elevation.width,elevation.height,elevation.depth,elevation.dim,elevation.data, 2.16446 + width,height,depth,dim,data,pixel_type()); 2.16447 + float m, M = (float)maxmin(m); 2.16448 + if (M==m) ++M; 2.16449 + const unsigned int w = width + 1, h = height + 1; 2.16450 + CImg<floatT> points(w*h,3); 2.16451 + cimg_forXY(*this,x,y) { 2.16452 + const int yw = y*w, xpyw = x + yw, xpyww = xpyw + w; 2.16453 + points(xpyw,0) = points(xpyw+1,0) = points(xpyww+1,0) = points(xpyww,0) = (float)x; 2.16454 + points(xpyw,1) = points(xpyw+1,1) = points(xpyww+1,1) = points(xpyww,1) = (float)y; 2.16455 + points(xpyw,2) = points(xpyw+1,2) = points(xpyww+1,2) = points(xpyww,2) = (float)elevation(x,y); 2.16456 + primitives.insert(CImg<tf>::vector(xpyw,xpyw+1,xpyww+1,xpyww)); 2.16457 + const unsigned char 2.16458 + r = (unsigned char)(((*this)(x,y,0) - m)*255/(M-m)), 2.16459 + g = dim>1?(unsigned char)(((*this)(x,y,1) - m)*255/(M-m)):r, 2.16460 + b = dim>2?(unsigned char)(((*this)(x,y,2) - m)*255/(M-m)):(dim>1?0:r); 2.16461 + colors.insert(CImg<tc>::vector((tc)r,(tc)g,(tc)b)); 2.16462 + } 2.16463 + return points; 2.16464 + } 2.16465 + 2.16466 + // Inner routine used by the Marching square algorithm. 2.16467 + template<typename t> 2.16468 + static int _marching_squares_indice(const unsigned int edge, const CImg<t>& indices1, const CImg<t>& indices2, 2.16469 + const unsigned int x, const unsigned int nx) { 2.16470 + switch (edge) { 2.16471 + case 0 : return (int)indices1(x,0); 2.16472 + case 1 : return (int)indices1(nx,1); 2.16473 + case 2 : return (int)indices2(x,0); 2.16474 + case 3 : return (int)indices1(x,1); 2.16475 + } 2.16476 + return 0; 2.16477 + } 2.16478 + 2.16479 + //! Polygonize an implicit 2D function by the marching squares algorithm. 2.16480 + template<typename tf, typename tfunc> 2.16481 + static CImg<floatT> marching_squares(CImgList<tf>& primitives, const tfunc& func, const float isovalue, 2.16482 + const float x0, const float y0, 2.16483 + const float x1, const float y1, 2.16484 + const float resx, const float resy) { 2.16485 + static unsigned int edges[16] = { 0x0, 0x9, 0x3, 0xa, 0x6, 0xf, 0x5, 0xc, 0xc, 0x5, 0xf, 0x6, 0xa, 0x3, 0x9, 0x0 }; 2.16486 + static int segments[16][4] = { { -1,-1,-1,-1 }, { 0,3,-1,-1 }, { 0,1,-1,-1 }, { 1,3,-1,-1 }, 2.16487 + { 1,2,-1,-1 }, { 0,1,2,3 }, { 0,2,-1,-1 }, { 2,3,-1,-1 }, 2.16488 + { 2,3,-1,-1 }, { 0,2,-1,-1}, { 0,3,1,2 }, { 1,2,-1,-1 }, 2.16489 + { 1,3,-1,-1 }, { 0,1,-1,-1}, { 0,3,-1,-1}, { -1,-1,-1,-1 } }; 2.16490 + const unsigned int 2.16491 + nx = (unsigned int)((x1-x0+1)/resx), nxm1 = nx-1, 2.16492 + ny = (unsigned int)((y1-y0+1)/resy), nym1 = ny-1; 2.16493 + if (!nxm1 || !nym1) return CImg<floatT>(); 2.16494 + 2.16495 + primitives.assign(); 2.16496 + CImgList<floatT> points; 2.16497 + CImg<intT> indices1(nx,1,1,2,-1), indices2(nx,1,1,2); 2.16498 + CImg<floatT> values1(nx), values2(nx); 2.16499 + float X = 0, Y = 0, nX = 0, nY = 0; 2.16500 + 2.16501 + // Fill first line with values 2.16502 + cimg_forX(values1,x) { values1(x) = (float)func(X,Y); X+=resx; } 2.16503 + 2.16504 + // Run the marching squares algorithm 2.16505 + Y = y0; nY = Y + resy; 2.16506 + for (unsigned int yi = 0, nyi = 1; yi<nym1; ++yi, ++nyi, Y=nY, nY+=resy) { 2.16507 + X = x0; nX = X + resx; 2.16508 + indices2.fill(-1); 2.16509 + for (unsigned int xi = 0, nxi = 1; xi<nxm1; ++xi, ++nxi, X=nX, nX+=resx) { 2.16510 + 2.16511 + // Determine cube configuration 2.16512 + const float 2.16513 + val0 = values1(xi), val1 = values1(nxi), 2.16514 + val2 = values2(nxi) = (float)func(nX,nY), 2.16515 + val3 = values2(xi) = (float)func(X,nY); 2.16516 + 2.16517 + const unsigned int configuration = (val0<isovalue?1:0) | (val1<isovalue?2:0) | (val2<isovalue?4:0) | (val3<isovalue?8:0), 2.16518 + edge = edges[configuration]; 2.16519 + 2.16520 + // Compute intersection points 2.16521 + if (edge) { 2.16522 + if ((edge&1) && indices1(xi,0)<0) { 2.16523 + const float Xi = X + (isovalue-val0)*resx/(val1-val0); 2.16524 + indices1(xi,0) = points.size; 2.16525 + points.insert(CImg<floatT>::vector(Xi,Y)); 2.16526 + } 2.16527 + if ((edge&2) && indices1(nxi,1)<0) { 2.16528 + const float Yi = Y + (isovalue-val1)*resy/(val2-val1); 2.16529 + indices1(nxi,1) = points.size; 2.16530 + points.insert(CImg<floatT>::vector(nX,Yi)); 2.16531 + } 2.16532 + if ((edge&4) && indices2(xi,0)<0) { 2.16533 + const float Xi = X + (isovalue-val3)*resx/(val2-val3); 2.16534 + indices2(xi,0) = points.size; 2.16535 + points.insert(CImg<floatT>::vector(Xi,nY)); 2.16536 + } 2.16537 + if ((edge&8) && indices1(xi,1)<0) { 2.16538 + const float Yi = Y + (isovalue-val0)*resy/(val3-val0); 2.16539 + indices1(xi,1) = points.size; 2.16540 + points.insert(CImg<floatT>::vector(X,Yi)); 2.16541 + } 2.16542 + 2.16543 + // Create segments 2.16544 + for (int *segment = segments[configuration]; *segment!=-1; ) { 2.16545 + const unsigned int p0 = *(segment++), p1 = *(segment++); 2.16546 + const tf 2.16547 + i0 = (tf)(_marching_squares_indice(p0,indices1,indices2,xi,nxi)), 2.16548 + i1 = (tf)(_marching_squares_indice(p1,indices1,indices2,xi,nxi)); 2.16549 + primitives.insert(CImg<tf>::vector(i0,i1)); 2.16550 + } 2.16551 + } 2.16552 + } 2.16553 + values1.swap(values2); 2.16554 + indices1.swap(indices2); 2.16555 + } 2.16556 + return points.get_append('x'); 2.16557 + } 2.16558 + 2.16559 + // Inner routine used by the Marching cube algorithm. 2.16560 + template<typename t> 2.16561 + static int _marching_cubes_indice(const unsigned int edge, const CImg<t>& indices1, const CImg<t>& indices2, 2.16562 + const unsigned int x, const unsigned int y, const unsigned int nx, const unsigned int ny) { 2.16563 + switch (edge) { 2.16564 + case 0 : return indices1(x,y,0); 2.16565 + case 1 : return indices1(nx,y,1); 2.16566 + case 2 : return indices1(x,ny,0); 2.16567 + case 3 : return indices1(x,y,1); 2.16568 + case 4 : return indices2(x,y,0); 2.16569 + case 5 : return indices2(nx,y,1); 2.16570 + case 6 : return indices2(x,ny,0); 2.16571 + case 7 : return indices2(x,y,1); 2.16572 + case 8 : return indices1(x,y,2); 2.16573 + case 9 : return indices1(nx,y,2); 2.16574 + case 10 : return indices1(nx,ny,2); 2.16575 + case 11 : return indices1(x,ny,2); 2.16576 + } 2.16577 + return 0; 2.16578 + } 2.16579 + 2.16580 + //! Polygonize an implicit function 2.16581 + // This function uses the Marching Cubes Tables published on the web page : 2.16582 + // http://astronomy.swin.edu.au/~pbourke/modelling/polygonise/ 2.16583 + template<typename tf, typename tfunc> 2.16584 + static CImg<floatT> marching_cubes(CImgList<tf>& primitives, 2.16585 + const tfunc& func, const float isovalue, 2.16586 + const float x0, const float y0, const float z0, 2.16587 + const float x1, const float y1, const float z1, 2.16588 + const float resx, const float resy, const float resz, 2.16589 + const bool invert_faces=false) { 2.16590 + 2.16591 + static unsigned int edges[256] = { 2.16592 + 0x000, 0x109, 0x203, 0x30a, 0x406, 0x50f, 0x605, 0x70c, 0x80c, 0x905, 0xa0f, 0xb06, 0xc0a, 0xd03, 0xe09, 0xf00, 2.16593 + 0x190, 0x99 , 0x393, 0x29a, 0x596, 0x49f, 0x795, 0x69c, 0x99c, 0x895, 0xb9f, 0xa96, 0xd9a, 0xc93, 0xf99, 0xe90, 2.16594 + 0x230, 0x339, 0x33 , 0x13a, 0x636, 0x73f, 0x435, 0x53c, 0xa3c, 0xb35, 0x83f, 0x936, 0xe3a, 0xf33, 0xc39, 0xd30, 2.16595 + 0x3a0, 0x2a9, 0x1a3, 0xaa , 0x7a6, 0x6af, 0x5a5, 0x4ac, 0xbac, 0xaa5, 0x9af, 0x8a6, 0xfaa, 0xea3, 0xda9, 0xca0, 2.16596 + 0x460, 0x569, 0x663, 0x76a, 0x66 , 0x16f, 0x265, 0x36c, 0xc6c, 0xd65, 0xe6f, 0xf66, 0x86a, 0x963, 0xa69, 0xb60, 2.16597 + 0x5f0, 0x4f9, 0x7f3, 0x6fa, 0x1f6, 0xff , 0x3f5, 0x2fc, 0xdfc, 0xcf5, 0xfff, 0xef6, 0x9fa, 0x8f3, 0xbf9, 0xaf0, 2.16598 + 0x650, 0x759, 0x453, 0x55a, 0x256, 0x35f, 0x55 , 0x15c, 0xe5c, 0xf55, 0xc5f, 0xd56, 0xa5a, 0xb53, 0x859, 0x950, 2.16599 + 0x7c0, 0x6c9, 0x5c3, 0x4ca, 0x3c6, 0x2cf, 0x1c5, 0xcc , 0xfcc, 0xec5, 0xdcf, 0xcc6, 0xbca, 0xac3, 0x9c9, 0x8c0, 2.16600 + 0x8c0, 0x9c9, 0xac3, 0xbca, 0xcc6, 0xdcf, 0xec5, 0xfcc, 0xcc , 0x1c5, 0x2cf, 0x3c6, 0x4ca, 0x5c3, 0x6c9, 0x7c0, 2.16601 + 0x950, 0x859, 0xb53, 0xa5a, 0xd56, 0xc5f, 0xf55, 0xe5c, 0x15c, 0x55 , 0x35f, 0x256, 0x55a, 0x453, 0x759, 0x650, 2.16602 + 0xaf0, 0xbf9, 0x8f3, 0x9fa, 0xef6, 0xfff, 0xcf5, 0xdfc, 0x2fc, 0x3f5, 0xff , 0x1f6, 0x6fa, 0x7f3, 0x4f9, 0x5f0, 2.16603 + 0xb60, 0xa69, 0x963, 0x86a, 0xf66, 0xe6f, 0xd65, 0xc6c, 0x36c, 0x265, 0x16f, 0x66 , 0x76a, 0x663, 0x569, 0x460, 2.16604 + 0xca0, 0xda9, 0xea3, 0xfaa, 0x8a6, 0x9af, 0xaa5, 0xbac, 0x4ac, 0x5a5, 0x6af, 0x7a6, 0xaa , 0x1a3, 0x2a9, 0x3a0, 2.16605 + 0xd30, 0xc39, 0xf33, 0xe3a, 0x936, 0x83f, 0xb35, 0xa3c, 0x53c, 0x435, 0x73f, 0x636, 0x13a, 0x33 , 0x339, 0x230, 2.16606 + 0xe90, 0xf99, 0xc93, 0xd9a, 0xa96, 0xb9f, 0x895, 0x99c, 0x69c, 0x795, 0x49f, 0x596, 0x29a, 0x393, 0x99 , 0x190, 2.16607 + 0xf00, 0xe09, 0xd03, 0xc0a, 0xb06, 0xa0f, 0x905, 0x80c, 0x70c, 0x605, 0x50f, 0x406, 0x30a, 0x203, 0x109, 0x000 }; 2.16608 + 2.16609 + static int triangles[256][16] = 2.16610 + {{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16611 + { 0, 1, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 8, 3, 9, 8, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16612 + { 1, 2, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, 1, 2, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16613 + { 9, 2, 10, 0, 2, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 2, 8, 3, 2, 10, 8, 10, 9, 8, -1, -1, -1, -1, -1, -1, -1 }, 2.16614 + { 3, 11, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 11, 2, 8, 11, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16615 + { 1, 9, 0, 2, 3, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 11, 2, 1, 9, 11, 9, 8, 11, -1, -1, -1, -1, -1, -1, -1 }, 2.16616 + { 3, 10, 1, 11, 10, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 10, 1, 0, 8, 10, 8, 11, 10, -1, -1, -1, -1, -1, -1, -1 }, 2.16617 + { 3, 9, 0, 3, 11, 9, 11, 10, 9, -1, -1, -1, -1, -1, -1, -1 }, { 9, 8, 10, 10, 8, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16618 + { 4, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 4, 3, 0, 7, 3, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16619 + { 0, 1, 9, 8, 4, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 4, 1, 9, 4, 7, 1, 7, 3, 1, -1, -1, -1, -1, -1, -1, -1 }, 2.16620 + { 1, 2, 10, 8, 4, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 4, 7, 3, 0, 4, 1, 2, 10, -1, -1, -1, -1, -1, -1, -1 }, 2.16621 + { 9, 2, 10, 9, 0, 2, 8, 4, 7, -1, -1, -1, -1, -1, -1, -1 }, { 2, 10, 9, 2, 9, 7, 2, 7, 3, 7, 9, 4, -1, -1, -1, -1 }, 2.16622 + { 8, 4, 7, 3, 11, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 11, 4, 7, 11, 2, 4, 2, 0, 4, -1, -1, -1, -1, -1, -1, -1 }, 2.16623 + { 9, 0, 1, 8, 4, 7, 2, 3, 11, -1, -1, -1, -1, -1, -1, -1 }, { 4, 7, 11, 9, 4, 11, 9, 11, 2, 9, 2, 1, -1, -1, -1, -1 }, 2.16624 + { 3, 10, 1, 3, 11, 10, 7, 8, 4, -1, -1, -1, -1, -1, -1, -1 }, { 1, 11, 10, 1, 4, 11, 1, 0, 4, 7, 11, 4, -1, -1, -1, -1 }, 2.16625 + { 4, 7, 8, 9, 0, 11, 9, 11, 10, 11, 0, 3, -1, -1, -1, -1 }, { 4, 7, 11, 4, 11, 9, 9, 11, 10, -1, -1, -1, -1, -1, -1, -1 }, 2.16626 + { 9, 5, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 9, 5, 4, 0, 8, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16627 + { 0, 5, 4, 1, 5, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 8, 5, 4, 8, 3, 5, 3, 1, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16628 + { 1, 2, 10, 9, 5, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 0, 8, 1, 2, 10, 4, 9, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16629 + { 5, 2, 10, 5, 4, 2, 4, 0, 2, -1, -1, -1, -1, -1, -1, -1 }, { 2, 10, 5, 3, 2, 5, 3, 5, 4, 3, 4, 8, -1, -1, -1, -1 }, 2.16630 + { 9, 5, 4, 2, 3, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 11, 2, 0, 8, 11, 4, 9, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16631 + { 0, 5, 4, 0, 1, 5, 2, 3, 11, -1, -1, -1, -1, -1, -1, -1 }, { 2, 1, 5, 2, 5, 8, 2, 8, 11, 4, 8, 5, -1, -1, -1, -1 }, 2.16632 + { 10, 3, 11, 10, 1, 3, 9, 5, 4, -1, -1, -1, -1, -1, -1, -1 }, { 4, 9, 5, 0, 8, 1, 8, 10, 1, 8, 11, 10, -1, -1, -1, -1 }, 2.16633 + { 5, 4, 0, 5, 0, 11, 5, 11, 10, 11, 0, 3, -1, -1, -1, -1 }, { 5, 4, 8, 5, 8, 10, 10, 8, 11, -1, -1, -1, -1, -1, -1, -1 }, 2.16634 + { 9, 7, 8, 5, 7, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 9, 3, 0, 9, 5, 3, 5, 7, 3, -1, -1, -1, -1, -1, -1, -1 }, 2.16635 + { 0, 7, 8, 0, 1, 7, 1, 5, 7, -1, -1, -1, -1, -1, -1, -1 }, { 1, 5, 3, 3, 5, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16636 + { 9, 7, 8, 9, 5, 7, 10, 1, 2, -1, -1, -1, -1, -1, -1, -1 }, { 10, 1, 2, 9, 5, 0, 5, 3, 0, 5, 7, 3, -1, -1, -1, -1 }, 2.16637 + { 8, 0, 2, 8, 2, 5, 8, 5, 7, 10, 5, 2, -1, -1, -1, -1 }, { 2, 10, 5, 2, 5, 3, 3, 5, 7, -1, -1, -1, -1, -1, -1, -1 }, 2.16638 + { 7, 9, 5, 7, 8, 9, 3, 11, 2, -1, -1, -1, -1, -1, -1, -1 }, { 9, 5, 7, 9, 7, 2, 9, 2, 0, 2, 7, 11, -1, -1, -1, -1 }, 2.16639 + { 2, 3, 11, 0, 1, 8, 1, 7, 8, 1, 5, 7, -1, -1, -1, -1 }, { 11, 2, 1, 11, 1, 7, 7, 1, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16640 + { 9, 5, 8, 8, 5, 7, 10, 1, 3, 10, 3, 11, -1, -1, -1, -1 }, { 5, 7, 0, 5, 0, 9, 7, 11, 0, 1, 0, 10, 11, 10, 0, -1 }, 2.16641 + { 11, 10, 0, 11, 0, 3, 10, 5, 0, 8, 0, 7, 5, 7, 0, -1 }, { 11, 10, 5, 7, 11, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16642 + { 10, 6, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, 5, 10, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16643 + { 9, 0, 1, 5, 10, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 8, 3, 1, 9, 8, 5, 10, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16644 + { 1, 6, 5, 2, 6, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 6, 5, 1, 2, 6, 3, 0, 8, -1, -1, -1, -1, -1, -1, -1 }, 2.16645 + { 9, 6, 5, 9, 0, 6, 0, 2, 6, -1, -1, -1, -1, -1, -1, -1 }, { 5, 9, 8, 5, 8, 2, 5, 2, 6, 3, 2, 8, -1, -1, -1, -1 }, 2.16646 + { 2, 3, 11, 10, 6, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 11, 0, 8, 11, 2, 0, 10, 6, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16647 + { 0, 1, 9, 2, 3, 11, 5, 10, 6, -1, -1, -1, -1, -1, -1, -1 }, { 5, 10, 6, 1, 9, 2, 9, 11, 2, 9, 8, 11, -1, -1, -1, -1 }, 2.16648 + { 6, 3, 11, 6, 5, 3, 5, 1, 3, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 11, 0, 11, 5, 0, 5, 1, 5, 11, 6, -1, -1, -1, -1 }, 2.16649 + { 3, 11, 6, 0, 3, 6, 0, 6, 5, 0, 5, 9, -1, -1, -1, -1 }, { 6, 5, 9, 6, 9, 11, 11, 9, 8, -1, -1, -1, -1, -1, -1, -1 }, 2.16650 + { 5, 10, 6, 4, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 4, 3, 0, 4, 7, 3, 6, 5, 10, -1, -1, -1, -1, -1, -1, -1 }, 2.16651 + { 1, 9, 0, 5, 10, 6, 8, 4, 7, -1, -1, -1, -1, -1, -1, -1 }, { 10, 6, 5, 1, 9, 7, 1, 7, 3, 7, 9, 4, -1, -1, -1, -1 }, 2.16652 + { 6, 1, 2, 6, 5, 1, 4, 7, 8, -1, -1, -1, -1, -1, -1, -1 }, { 1, 2, 5, 5, 2, 6, 3, 0, 4, 3, 4, 7, -1, -1, -1, -1 }, 2.16653 + { 8, 4, 7, 9, 0, 5, 0, 6, 5, 0, 2, 6, -1, -1, -1, -1 }, { 7, 3, 9, 7, 9, 4, 3, 2, 9, 5, 9, 6, 2, 6, 9, -1 }, 2.16654 + { 3, 11, 2, 7, 8, 4, 10, 6, 5, -1, -1, -1, -1, -1, -1, -1 }, { 5, 10, 6, 4, 7, 2, 4, 2, 0, 2, 7, 11, -1, -1, -1, -1 }, 2.16655 + { 0, 1, 9, 4, 7, 8, 2, 3, 11, 5, 10, 6, -1, -1, -1, -1 }, { 9, 2, 1, 9, 11, 2, 9, 4, 11, 7, 11, 4, 5, 10, 6, -1 }, 2.16656 + { 8, 4, 7, 3, 11, 5, 3, 5, 1, 5, 11, 6, -1, -1, -1, -1 }, { 5, 1, 11, 5, 11, 6, 1, 0, 11, 7, 11, 4, 0, 4, 11, -1 }, 2.16657 + { 0, 5, 9, 0, 6, 5, 0, 3, 6, 11, 6, 3, 8, 4, 7, -1 }, { 6, 5, 9, 6, 9, 11, 4, 7, 9, 7, 11, 9, -1, -1, -1, -1 }, 2.16658 + { 10, 4, 9, 6, 4, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 4, 10, 6, 4, 9, 10, 0, 8, 3, -1, -1, -1, -1, -1, -1, -1 }, 2.16659 + { 10, 0, 1, 10, 6, 0, 6, 4, 0, -1, -1, -1, -1, -1, -1, -1 }, { 8, 3, 1, 8, 1, 6, 8, 6, 4, 6, 1, 10, -1, -1, -1, -1 }, 2.16660 + { 1, 4, 9, 1, 2, 4, 2, 6, 4, -1, -1, -1, -1, -1, -1, -1 }, { 3, 0, 8, 1, 2, 9, 2, 4, 9, 2, 6, 4, -1, -1, -1, -1 }, 2.16661 + { 0, 2, 4, 4, 2, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 8, 3, 2, 8, 2, 4, 4, 2, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16662 + { 10, 4, 9, 10, 6, 4, 11, 2, 3, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 2, 2, 8, 11, 4, 9, 10, 4, 10, 6, -1, -1, -1, -1 }, 2.16663 + { 3, 11, 2, 0, 1, 6, 0, 6, 4, 6, 1, 10, -1, -1, -1, -1 }, { 6, 4, 1, 6, 1, 10, 4, 8, 1, 2, 1, 11, 8, 11, 1, -1 }, 2.16664 + { 9, 6, 4, 9, 3, 6, 9, 1, 3, 11, 6, 3, -1, -1, -1, -1 }, { 8, 11, 1, 8, 1, 0, 11, 6, 1, 9, 1, 4, 6, 4, 1, -1 }, 2.16665 + { 3, 11, 6, 3, 6, 0, 0, 6, 4, -1, -1, -1, -1, -1, -1, -1 }, { 6, 4, 8, 11, 6, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16666 + { 7, 10, 6, 7, 8, 10, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1 }, { 0, 7, 3, 0, 10, 7, 0, 9, 10, 6, 7, 10, -1, -1, -1, -1 }, 2.16667 + { 10, 6, 7, 1, 10, 7, 1, 7, 8, 1, 8, 0, -1, -1, -1, -1 }, { 10, 6, 7, 10, 7, 1, 1, 7, 3, -1, -1, -1, -1, -1, -1, -1 }, 2.16668 + { 1, 2, 6, 1, 6, 8, 1, 8, 9, 8, 6, 7, -1, -1, -1, -1 }, { 2, 6, 9, 2, 9, 1, 6, 7, 9, 0, 9, 3, 7, 3, 9, -1 }, 2.16669 + { 7, 8, 0, 7, 0, 6, 6, 0, 2, -1, -1, -1, -1, -1, -1, -1 }, { 7, 3, 2, 6, 7, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16670 + { 2, 3, 11, 10, 6, 8, 10, 8, 9, 8, 6, 7, -1, -1, -1, -1 }, { 2, 0, 7, 2, 7, 11, 0, 9, 7, 6, 7, 10, 9, 10, 7, -1 }, 2.16671 + { 1, 8, 0, 1, 7, 8, 1, 10, 7, 6, 7, 10, 2, 3, 11, -1 }, { 11, 2, 1, 11, 1, 7, 10, 6, 1, 6, 7, 1, -1, -1, -1, -1 }, 2.16672 + { 8, 9, 6, 8, 6, 7, 9, 1, 6, 11, 6, 3, 1, 3, 6, -1 }, { 0, 9, 1, 11, 6, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16673 + { 7, 8, 0, 7, 0, 6, 3, 11, 0, 11, 6, 0, -1, -1, -1, -1 }, { 7, 11, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16674 + { 7, 6, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 0, 8, 11, 7, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16675 + { 0, 1, 9, 11, 7, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 8, 1, 9, 8, 3, 1, 11, 7, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16676 + { 10, 1, 2, 6, 11, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 2, 10, 3, 0, 8, 6, 11, 7, -1, -1, -1, -1, -1, -1, -1 }, 2.16677 + { 2, 9, 0, 2, 10, 9, 6, 11, 7, -1, -1, -1, -1, -1, -1, -1 }, { 6, 11, 7, 2, 10, 3, 10, 8, 3, 10, 9, 8, -1, -1, -1, -1 }, 2.16678 + { 7, 2, 3, 6, 2, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 7, 0, 8, 7, 6, 0, 6, 2, 0, -1, -1, -1, -1, -1, -1, -1 }, 2.16679 + { 2, 7, 6, 2, 3, 7, 0, 1, 9, -1, -1, -1, -1, -1, -1, -1 }, { 1, 6, 2, 1, 8, 6, 1, 9, 8, 8, 7, 6, -1, -1, -1, -1 }, 2.16680 + { 10, 7, 6, 10, 1, 7, 1, 3, 7, -1, -1, -1, -1, -1, -1, -1 }, { 10, 7, 6, 1, 7, 10, 1, 8, 7, 1, 0, 8, -1, -1, -1, -1 }, 2.16681 + { 0, 3, 7, 0, 7, 10, 0, 10, 9, 6, 10, 7, -1, -1, -1, -1 }, { 7, 6, 10, 7, 10, 8, 8, 10, 9, -1, -1, -1, -1, -1, -1, -1 }, 2.16682 + { 6, 8, 4, 11, 8, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 6, 11, 3, 0, 6, 0, 4, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16683 + { 8, 6, 11, 8, 4, 6, 9, 0, 1, -1, -1, -1, -1, -1, -1, -1 }, { 9, 4, 6, 9, 6, 3, 9, 3, 1, 11, 3, 6, -1, -1, -1, -1 }, 2.16684 + { 6, 8, 4, 6, 11, 8, 2, 10, 1, -1, -1, -1, -1, -1, -1, -1 }, { 1, 2, 10, 3, 0, 11, 0, 6, 11, 0, 4, 6, -1, -1, -1, -1 }, 2.16685 + { 4, 11, 8, 4, 6, 11, 0, 2, 9, 2, 10, 9, -1, -1, -1, -1 }, { 10, 9, 3, 10, 3, 2, 9, 4, 3, 11, 3, 6, 4, 6, 3, -1 }, 2.16686 + { 8, 2, 3, 8, 4, 2, 4, 6, 2, -1, -1, -1, -1, -1, -1, -1 }, { 0, 4, 2, 4, 6, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16687 + { 1, 9, 0, 2, 3, 4, 2, 4, 6, 4, 3, 8, -1, -1, -1, -1 }, { 1, 9, 4, 1, 4, 2, 2, 4, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16688 + { 8, 1, 3, 8, 6, 1, 8, 4, 6, 6, 10, 1, -1, -1, -1, -1 }, { 10, 1, 0, 10, 0, 6, 6, 0, 4, -1, -1, -1, -1, -1, -1, -1 }, 2.16689 + { 4, 6, 3, 4, 3, 8, 6, 10, 3, 0, 3, 9, 10, 9, 3, -1 }, { 10, 9, 4, 6, 10, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16690 + { 4, 9, 5, 7, 6, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, 4, 9, 5, 11, 7, 6, -1, -1, -1, -1, -1, -1, -1 }, 2.16691 + { 5, 0, 1, 5, 4, 0, 7, 6, 11, -1, -1, -1, -1, -1, -1, -1 }, { 11, 7, 6, 8, 3, 4, 3, 5, 4, 3, 1, 5, -1, -1, -1, -1 }, 2.16692 + { 9, 5, 4, 10, 1, 2, 7, 6, 11, -1, -1, -1, -1, -1, -1, -1 }, { 6, 11, 7, 1, 2, 10, 0, 8, 3, 4, 9, 5, -1, -1, -1, -1 }, 2.16693 + { 7, 6, 11, 5, 4, 10, 4, 2, 10, 4, 0, 2, -1, -1, -1, -1 }, { 3, 4, 8, 3, 5, 4, 3, 2, 5, 10, 5, 2, 11, 7, 6, -1 }, 2.16694 + { 7, 2, 3, 7, 6, 2, 5, 4, 9, -1, -1, -1, -1, -1, -1, -1 }, { 9, 5, 4, 0, 8, 6, 0, 6, 2, 6, 8, 7, -1, -1, -1, -1 }, 2.16695 + { 3, 6, 2, 3, 7, 6, 1, 5, 0, 5, 4, 0, -1, -1, -1, -1 }, { 6, 2, 8, 6, 8, 7, 2, 1, 8, 4, 8, 5, 1, 5, 8, -1 }, 2.16696 + { 9, 5, 4, 10, 1, 6, 1, 7, 6, 1, 3, 7, -1, -1, -1, -1 }, { 1, 6, 10, 1, 7, 6, 1, 0, 7, 8, 7, 0, 9, 5, 4, -1 }, 2.16697 + { 4, 0, 10, 4, 10, 5, 0, 3, 10, 6, 10, 7, 3, 7, 10, -1 }, { 7, 6, 10, 7, 10, 8, 5, 4, 10, 4, 8, 10, -1, -1, -1, -1 }, 2.16698 + { 6, 9, 5, 6, 11, 9, 11, 8, 9, -1, -1, -1, -1, -1, -1, -1 }, { 3, 6, 11, 0, 6, 3, 0, 5, 6, 0, 9, 5, -1, -1, -1, -1 }, 2.16699 + { 0, 11, 8, 0, 5, 11, 0, 1, 5, 5, 6, 11, -1, -1, -1, -1 }, { 6, 11, 3, 6, 3, 5, 5, 3, 1, -1, -1, -1, -1, -1, -1, -1 }, 2.16700 + { 1, 2, 10, 9, 5, 11, 9, 11, 8, 11, 5, 6, -1, -1, -1, -1 }, { 0, 11, 3, 0, 6, 11, 0, 9, 6, 5, 6, 9, 1, 2, 10, -1 }, 2.16701 + { 11, 8, 5, 11, 5, 6, 8, 0, 5, 10, 5, 2, 0, 2, 5, -1 }, { 6, 11, 3, 6, 3, 5, 2, 10, 3, 10, 5, 3, -1, -1, -1, -1 }, 2.16702 + { 5, 8, 9, 5, 2, 8, 5, 6, 2, 3, 8, 2, -1, -1, -1, -1 }, { 9, 5, 6, 9, 6, 0, 0, 6, 2, -1, -1, -1, -1, -1, -1, -1 }, 2.16703 + { 1, 5, 8, 1, 8, 0, 5, 6, 8, 3, 8, 2, 6, 2, 8, -1 }, { 1, 5, 6, 2, 1, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16704 + { 1, 3, 6, 1, 6, 10, 3, 8, 6, 5, 6, 9, 8, 9, 6, -1 }, { 10, 1, 0, 10, 0, 6, 9, 5, 0, 5, 6, 0, -1, -1, -1, -1 }, 2.16705 + { 0, 3, 8, 5, 6, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 10, 5, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16706 + { 11, 5, 10, 7, 5, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 11, 5, 10, 11, 7, 5, 8, 3, 0, -1, -1, -1, -1, -1, -1, -1 }, 2.16707 + { 5, 11, 7, 5, 10, 11, 1, 9, 0, -1, -1, -1, -1, -1, -1, -1 }, { 10, 7, 5, 10, 11, 7, 9, 8, 1, 8, 3, 1, -1, -1, -1, -1 }, 2.16708 + { 11, 1, 2, 11, 7, 1, 7, 5, 1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, 1, 2, 7, 1, 7, 5, 7, 2, 11, -1, -1, -1, -1 }, 2.16709 + { 9, 7, 5, 9, 2, 7, 9, 0, 2, 2, 11, 7, -1, -1, -1, -1 }, { 7, 5, 2, 7, 2, 11, 5, 9, 2, 3, 2, 8, 9, 8, 2, -1 }, 2.16710 + { 2, 5, 10, 2, 3, 5, 3, 7, 5, -1, -1, -1, -1, -1, -1, -1 }, { 8, 2, 0, 8, 5, 2, 8, 7, 5, 10, 2, 5, -1, -1, -1, -1 }, 2.16711 + { 9, 0, 1, 5, 10, 3, 5, 3, 7, 3, 10, 2, -1, -1, -1, -1 }, { 9, 8, 2, 9, 2, 1, 8, 7, 2, 10, 2, 5, 7, 5, 2, -1 }, 2.16712 + { 1, 3, 5, 3, 7, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 7, 0, 7, 1, 1, 7, 5, -1, -1, -1, -1, -1, -1, -1 }, 2.16713 + { 9, 0, 3, 9, 3, 5, 5, 3, 7, -1, -1, -1, -1, -1, -1, -1 }, { 9, 8, 7, 5, 9, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16714 + { 5, 8, 4, 5, 10, 8, 10, 11, 8, -1, -1, -1, -1, -1, -1, -1 }, { 5, 0, 4, 5, 11, 0, 5, 10, 11, 11, 3, 0, -1, -1, -1, -1 }, 2.16715 + { 0, 1, 9, 8, 4, 10, 8, 10, 11, 10, 4, 5, -1, -1, -1, -1 }, { 10, 11, 4, 10, 4, 5, 11, 3, 4, 9, 4, 1, 3, 1, 4, -1 }, 2.16716 + { 2, 5, 1, 2, 8, 5, 2, 11, 8, 4, 5, 8, -1, -1, -1, -1 }, { 0, 4, 11, 0, 11, 3, 4, 5, 11, 2, 11, 1, 5, 1, 11, -1 }, 2.16717 + { 0, 2, 5, 0, 5, 9, 2, 11, 5, 4, 5, 8, 11, 8, 5, -1 }, { 9, 4, 5, 2, 11, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16718 + { 2, 5, 10, 3, 5, 2, 3, 4, 5, 3, 8, 4, -1, -1, -1, -1 }, { 5, 10, 2, 5, 2, 4, 4, 2, 0, -1, -1, -1, -1, -1, -1, -1 }, 2.16719 + { 3, 10, 2, 3, 5, 10, 3, 8, 5, 4, 5, 8, 0, 1, 9, -1 }, { 5, 10, 2, 5, 2, 4, 1, 9, 2, 9, 4, 2, -1, -1, -1, -1 }, 2.16720 + { 8, 4, 5, 8, 5, 3, 3, 5, 1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 4, 5, 1, 0, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16721 + { 8, 4, 5, 8, 5, 3, 9, 0, 5, 0, 3, 5, -1, -1, -1, -1 }, { 9, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16722 + { 4, 11, 7, 4, 9, 11, 9, 10, 11, -1, -1, -1, -1, -1, -1, -1 }, { 0, 8, 3, 4, 9, 7, 9, 11, 7, 9, 10, 11, -1, -1, -1, -1 }, 2.16723 + { 1, 10, 11, 1, 11, 4, 1, 4, 0, 7, 4, 11, -1, -1, -1, -1 }, { 3, 1, 4, 3, 4, 8, 1, 10, 4, 7, 4, 11, 10, 11, 4, -1 }, 2.16724 + { 4, 11, 7, 9, 11, 4, 9, 2, 11, 9, 1, 2, -1, -1, -1, -1 }, { 9, 7, 4, 9, 11, 7, 9, 1, 11, 2, 11, 1, 0, 8, 3, -1 }, 2.16725 + { 11, 7, 4, 11, 4, 2, 2, 4, 0, -1, -1, -1, -1, -1, -1, -1 }, { 11, 7, 4, 11, 4, 2, 8, 3, 4, 3, 2, 4, -1, -1, -1, -1 }, 2.16726 + { 2, 9, 10, 2, 7, 9, 2, 3, 7, 7, 4, 9, -1, -1, -1, -1 }, { 9, 10, 7, 9, 7, 4, 10, 2, 7, 8, 7, 0, 2, 0, 7, -1 }, 2.16727 + { 3, 7, 10, 3, 10, 2, 7, 4, 10, 1, 10, 0, 4, 0, 10, -1 }, { 1, 10, 2, 8, 7, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16728 + { 4, 9, 1, 4, 1, 7, 7, 1, 3, -1, -1, -1, -1, -1, -1, -1 }, { 4, 9, 1, 4, 1, 7, 0, 8, 1, 8, 7, 1, -1, -1, -1, -1 }, 2.16729 + { 4, 0, 3, 7, 4, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 4, 8, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16730 + { 9, 10, 8, 10, 11, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 0, 9, 3, 9, 11, 11, 9, 10, -1, -1, -1, -1, -1, -1, -1 }, 2.16731 + { 0, 1, 10, 0, 10, 8, 8, 10, 11, -1, -1, -1, -1, -1, -1, -1 }, { 3, 1, 10, 11, 3, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16732 + { 1, 2, 11, 1, 11, 9, 9, 11, 8, -1, -1, -1, -1, -1, -1, -1 }, { 3, 0, 9, 3, 9, 11, 1, 2, 9, 2, 11, 9, -1, -1, -1, -1 }, 2.16733 + { 0, 2, 11, 8, 0, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 3, 2, 11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16734 + { 2, 3, 8, 2, 8, 10, 10, 8, 9, -1, -1, -1, -1, -1, -1, -1 }, { 9, 10, 2, 0, 9, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16735 + { 2, 3, 8, 2, 8, 10, 0, 1, 8, 1, 10, 8, -1, -1, -1, -1 }, { 1, 10, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16736 + { 1, 3, 8, 9, 1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 9, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 2.16737 + { 0, 3, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }}; 2.16738 + 2.16739 + const unsigned int 2.16740 + nx = (unsigned int)((x1-x0+1)/resx), nxm1 = nx-1, 2.16741 + ny = (unsigned int)((y1-y0+1)/resy), nym1 = ny-1, 2.16742 + nz = (unsigned int)((z1-z0+1)/resz), nzm1 = nz-1; 2.16743 + if (!nxm1 || !nym1 || !nzm1) return CImg<floatT>(); 2.16744 + 2.16745 + primitives.assign(); 2.16746 + CImgList<floatT> points; 2.16747 + CImg<intT> indices1(nx,ny,1,3,-1), indices2(indices1); 2.16748 + CImg<floatT> values1(nx,ny), values2(nx,ny); 2.16749 + float X = 0, Y = 0, Z = 0, nX = 0, nY = 0, nZ = 0; 2.16750 + 2.16751 + // Fill the first plane with function values 2.16752 + Y = y0; 2.16753 + cimg_forY(values1,y) { 2.16754 + X = x0; 2.16755 + cimg_forX(values1,x) { values1(x,y) = (float)func(X,Y,z0); X+=resx; } 2.16756 + Y+=resy; 2.16757 + } 2.16758 + 2.16759 + // Run Marching Cubes algorithm 2.16760 + Z = z0; nZ = Z + resz; 2.16761 + for (unsigned int zi = 0; zi<nzm1; ++zi, Z = nZ, nZ+=resz) { 2.16762 + Y = y0; nY = Y + resy; 2.16763 + indices2.fill(-1); 2.16764 + for (unsigned int yi = 0, nyi = 1; yi<nym1; ++yi, ++nyi, Y = nY, nY+=resy) { 2.16765 + X = x0; nX = X + resx; 2.16766 + for (unsigned int xi = 0, nxi = 1; xi<nxm1; ++xi, ++nxi, X = nX, nX+=resx) { 2.16767 + 2.16768 + // Determine cube configuration 2.16769 + const float 2.16770 + val0 = values1(xi,yi), val1 = values1(nxi,yi), val2 = values1(nxi,nyi), val3 = values1(xi,nyi), 2.16771 + val4 = values2(xi,yi) = (float)func(X,Y,nZ), 2.16772 + val5 = values2(nxi,yi) = (float)func(nX,Y,nZ), 2.16773 + val6 = values2(nxi,nyi) = (float)func(nX,nY,nZ), 2.16774 + val7 = values2(xi,nyi) = (float)func(X,nY,nZ); 2.16775 + 2.16776 + const unsigned int configuration = 2.16777 + (val0<isovalue?1:0) | (val1<isovalue?2:0) | (val2<isovalue?4:0) | (val3<isovalue?8:0) | 2.16778 + (val4<isovalue?16:0) | (val5<isovalue?32:0) | (val6<isovalue?64:0) | (val7<isovalue?128:0), 2.16779 + edge = edges[configuration]; 2.16780 + 2.16781 + // Compute intersection points 2.16782 + if (edge) { 2.16783 + if ((edge&1) && indices1(xi,yi,0)<0) { 2.16784 + const float Xi = X + (isovalue-val0)*resx/(val1-val0); 2.16785 + indices1(xi,yi,0) = points.size; 2.16786 + points.insert(CImg<floatT>::vector(Xi,Y,Z)); 2.16787 + } 2.16788 + if ((edge&2) && indices1(nxi,yi,1)<0) { 2.16789 + const float Yi = Y + (isovalue-val1)*resy/(val2-val1); 2.16790 + indices1(nxi,yi,1) = points.size; 2.16791 + points.insert(CImg<floatT>::vector(nX,Yi,Z)); 2.16792 + } 2.16793 + if ((edge&4) && indices1(xi,nyi,0)<0) { 2.16794 + const float Xi = X + (isovalue-val3)*resx/(val2-val3); 2.16795 + indices1(xi,nyi,0) = points.size; 2.16796 + points.insert(CImg<floatT>::vector(Xi,nY,Z)); 2.16797 + } 2.16798 + if ((edge&8) && indices1(xi,yi,1)<0) { 2.16799 + const float Yi = Y + (isovalue-val0)*resy/(val3-val0); 2.16800 + indices1(xi,yi,1) = points.size; 2.16801 + points.insert(CImg<floatT>::vector(X,Yi,Z)); 2.16802 + } 2.16803 + if ((edge&16) && indices2(xi,yi,0)<0) { 2.16804 + const float Xi = X + (isovalue-val4)*resx/(val5-val4); 2.16805 + indices2(xi,yi,0) = points.size; 2.16806 + points.insert(CImg<floatT>::vector(Xi,Y,nZ)); 2.16807 + } 2.16808 + if ((edge&32) && indices2(nxi,yi,1)<0) { 2.16809 + const float Yi = Y + (isovalue-val5)*resy/(val6-val5); 2.16810 + indices2(nxi,yi,1) = points.size; 2.16811 + points.insert(CImg<floatT>::vector(nX,Yi,nZ)); 2.16812 + } 2.16813 + if ((edge&64) && indices2(xi,nyi,0)<0) { 2.16814 + const float Xi = X + (isovalue-val7)*resx/(val6-val7); 2.16815 + indices2(xi,nyi,0) = points.size; 2.16816 + points.insert(CImg<floatT>::vector(Xi,nY,nZ)); 2.16817 + } 2.16818 + if ((edge&128) && indices2(xi,yi,1)<0) { 2.16819 + const float Yi = Y + (isovalue-val4)*resy/(val7-val4); 2.16820 + indices2(xi,yi,1) = points.size; 2.16821 + points.insert(CImg<floatT>::vector(X,Yi,nZ)); 2.16822 + } 2.16823 + if ((edge&256) && indices1(xi,yi,2)<0) { 2.16824 + const float Zi = Z+ (isovalue-val0)*resz/(val4-val0); 2.16825 + indices1(xi,yi,2) = points.size; 2.16826 + points.insert(CImg<floatT>::vector(X,Y,Zi)); 2.16827 + } 2.16828 + if ((edge&512) && indices1(nxi,yi,2)<0) { 2.16829 + const float Zi = Z + (isovalue-val1)*resz/(val5-val1); 2.16830 + indices1(nxi,yi,2) = points.size; 2.16831 + points.insert(CImg<floatT>::vector(nX,Y,Zi)); 2.16832 + } 2.16833 + if ((edge&1024) && indices1(nxi,nyi,2)<0) { 2.16834 + const float Zi = Z + (isovalue-val2)*resz/(val6-val2); 2.16835 + indices1(nxi,nyi,2) = points.size; 2.16836 + points.insert(CImg<floatT>::vector(nX,nY,Zi)); 2.16837 + } 2.16838 + if ((edge&2048) && indices1(xi,nyi,2)<0) { 2.16839 + const float Zi = Z + (isovalue-val3)*resz/(val7-val3); 2.16840 + indices1(xi,nyi,2) = points.size; 2.16841 + points.insert(CImg<floatT>::vector(X,nY,Zi)); 2.16842 + } 2.16843 + 2.16844 + // Create triangles 2.16845 + for (int *triangle = triangles[configuration]; *triangle!=-1; ) { 2.16846 + const unsigned int p0 = *(triangle++), p1 = *(triangle++), p2 = *(triangle++); 2.16847 + const tf 2.16848 + i0 = (tf)(_marching_cubes_indice(p0,indices1,indices2,xi,yi,nxi,nyi)), 2.16849 + i1 = (tf)(_marching_cubes_indice(p1,indices1,indices2,xi,yi,nxi,nyi)), 2.16850 + i2 = (tf)(_marching_cubes_indice(p2,indices1,indices2,xi,yi,nxi,nyi)); 2.16851 + if (invert_faces) primitives.insert(CImg<tf>::vector(i0,i1,i2)); 2.16852 + else primitives.insert(CImg<tf>::vector(i0,i2,i1)); 2.16853 + } 2.16854 + } 2.16855 + } 2.16856 + } 2.16857 + cimg::swap(values1,values2); 2.16858 + cimg::swap(indices1,indices2); 2.16859 + } 2.16860 + return points.get_append('x'); 2.16861 + } 2.16862 + 2.16863 + struct _marching_squares_func { 2.16864 + const CImg<T>& ref; 2.16865 + _marching_squares_func(const CImg<T>& pref):ref(pref) {} 2.16866 + float operator()(const float x, const float y) const { 2.16867 + return (float)ref((int)x,(int)y); 2.16868 + } 2.16869 + }; 2.16870 + 2.16871 + struct _marching_cubes_func { 2.16872 + const CImg<T>& ref; 2.16873 + _marching_cubes_func(const CImg<T>& pref):ref(pref) {} 2.16874 + float operator()(const float x, const float y, const float z) const { 2.16875 + return (float)ref((int)x,(int)y,(int)z); 2.16876 + } 2.16877 + }; 2.16878 + 2.16879 + struct _marching_squares_func_float { 2.16880 + const CImg<T>& ref; 2.16881 + _marching_squares_func_float(const CImg<T>& pref):ref(pref) {} 2.16882 + float operator()(const float x, const float y) const { 2.16883 + return (float)ref._linear_atXY(x,y); 2.16884 + } 2.16885 + }; 2.16886 + 2.16887 + struct _marching_cubes_func_float { 2.16888 + const CImg<T>& ref; 2.16889 + _marching_cubes_func_float(const CImg<T>& pref):ref(pref) {} 2.16890 + float operator()(const float x, const float y, const float z) const { 2.16891 + return (float)ref._linear_atXYZ(x,y,z); 2.16892 + } 2.16893 + }; 2.16894 + 2.16895 + //! Compute a vectorization of an implicit function. 2.16896 + template<typename tf> 2.16897 + CImg<floatT> get_isovalue3d(CImgList<tf>& primitives, const float isovalue, 2.16898 + const float resx=1, const float resy=1, const float resz=1, 2.16899 + const bool invert_faces=false) const { 2.16900 + primitives.assign(); 2.16901 + if (is_empty()) return *this; 2.16902 + if (dim>1) 2.16903 + throw CImgInstanceException("CImg<%s>::get_isovalue3d() : Instance image (%u,%u,%u,%u,%p) is not a scalar image.", 2.16904 + pixel_type(),width,height,depth,dim,data); 2.16905 + CImg<floatT> points; 2.16906 + if (depth>1) { 2.16907 + if (resx==1 && resy==1 && resz==1) { 2.16908 + const _marching_cubes_func func(*this); 2.16909 + points = marching_cubes(primitives,func,isovalue,0,0,0,dimx()-1.0f,dimy()-1.0f,dimz()-1.0f,resx,resy,resz,invert_faces); 2.16910 + } else { 2.16911 + const _marching_cubes_func_float func(*this); 2.16912 + points = marching_cubes(primitives,func,isovalue,0,0,0,dimx()-1.0f,dimy()-1.0f,dimz()-1.0f,resx,resy,resz,invert_faces); 2.16913 + } 2.16914 + } else { 2.16915 + if (resx==1 && resy==1) { 2.16916 + const _marching_squares_func func(*this); 2.16917 + points = marching_squares(primitives,func,isovalue,0,0,dimx()-1.0f,dimy()-1.0f,resx,resy); 2.16918 + } else { 2.16919 + const _marching_squares_func_float func(*this); 2.16920 + points = marching_squares(primitives,func,isovalue,0,0,dimx()-1.0f,dimy()-1.0f,resx,resy); 2.16921 + } 2.16922 + if (points) points.resize(-100,3,1,1,0); 2.16923 + } 2.16924 + return points; 2.16925 + } 2.16926 + 2.16927 + //! Translate a 3D object. 2.16928 + CImg<T>& translate_object3d(const float tx, const float ty=0, const float tz=0) { 2.16929 + get_shared_line(0)+=tx; get_shared_line(1)+=ty; get_shared_line(2)+=tz; 2.16930 + return *this; 2.16931 + } 2.16932 + 2.16933 + CImg<Tfloat> get_translate_object3d(const float tx, const float ty=0, const float tz=0) const { 2.16934 + return CImg<Tfloat>(*this,false).translate_object3d(tx,ty,tz); 2.16935 + } 2.16936 + 2.16937 + //! Translate a 3D object so that it becomes centered. 2.16938 + CImg<T>& translate_object3d() { 2.16939 + CImg<T> xcoords = get_shared_line(0), ycoords = get_shared_line(1), zcoords = get_shared_line(2); 2.16940 + float xm, xM = (float)xcoords.maxmin(xm), ym, yM = (float)ycoords.maxmin(ym), zm, zM = (float)zcoords.maxmin(zm); 2.16941 + xcoords-=(xm + xM)/2; ycoords-=(ym + yM)/2; zcoords-=(zm + zM)/2; 2.16942 + return *this; 2.16943 + } 2.16944 + 2.16945 + CImg<Tfloat> get_translate_object3d() const { 2.16946 + return CImg<Tfloat>(*this,false).translate_object3d(); 2.16947 + } 2.16948 + 2.16949 + //! Resize a 3D object. 2.16950 + CImg<T>& resize_object3d(const float sx, const float sy=-100, const float sz=-100) { 2.16951 + CImg<T> xcoords = get_shared_line(0), ycoords = get_shared_line(1), zcoords = get_shared_line(2); 2.16952 + float xm, xM = (float)xcoords.maxmin(xm), ym, yM = (float)ycoords.maxmin(ym), zm, zM = (float)zcoords.maxmin(zm); 2.16953 + if (xm<xM) { if (sx>0) xcoords*=sx/(xM-xm); else xcoords*=-sx/100; } 2.16954 + if (ym<yM) { if (sy>0) ycoords*=sy/(yM-ym); else ycoords*=-sy/100; } 2.16955 + if (zm<zM) { if (sz>0) zcoords*=sz/(zM-zm); else zcoords*=-sz/100; } 2.16956 + return *this; 2.16957 + } 2.16958 + 2.16959 + CImg<Tfloat> get_resize_object3d(const float sx, const float sy=-100, const float sz=-100) const { 2.16960 + return CImg<Tfloat>(*this,false).resize_object3d(sx,sy,sz); 2.16961 + } 2.16962 + 2.16963 + // Resize a 3D object so that its max dimension if one. 2.16964 + CImg<T> resize_object3d() const { 2.16965 + CImg<T> xcoords = get_shared_line(0), ycoords = get_shared_line(1), zcoords = get_shared_line(2); 2.16966 + float xm, xM = (float)xcoords.maxmin(xm), ym, yM = (float)ycoords.maxmin(ym), zm, zM = (float)zcoords.maxmin(zm); 2.16967 + const float dx = xM - xm, dy = yM - ym, dz = zM - zm, dmax = cimg::max(dx,dy,dz); 2.16968 + if (dmax>0) { xcoords/=dmax; ycoords/=dmax; zcoords/=dmax; } 2.16969 + return *this; 2.16970 + } 2.16971 + 2.16972 + CImg<Tfloat> get_resize_object3d() const { 2.16973 + return CImg<Tfloat>(*this,false).resize_object3d(); 2.16974 + } 2.16975 + 2.16976 + //! Append a 3D object to another one. 2.16977 + template<typename tf, typename tp, typename tff> 2.16978 + CImg<T>& append_object3d(CImgList<tf>& primitives, const CImg<tp>& obj_points, const CImgList<tff>& obj_primitives) { 2.16979 + const unsigned int P = width; 2.16980 + append(obj_points,'x'); 2.16981 + const unsigned int N = primitives.size; 2.16982 + primitives.insert(obj_primitives); 2.16983 + for (unsigned int i = N; i<primitives.size; ++i) { 2.16984 + CImg<tf> &p = primitives[i]; 2.16985 + if (p.size()!=5) p+=P; 2.16986 + else { p[0]+=P; if (p[2]==0) p[1]+=P; } 2.16987 + } 2.16988 + return *this; 2.16989 + } 2.16990 + 2.16991 + //@} 2.16992 + //---------------------------- 2.16993 + // 2.16994 + //! \name Color bases 2.16995 + //@{ 2.16996 + //---------------------------- 2.16997 + 2.16998 + //! Return a default indexed color palette with 256 (R,G,B) entries. 2.16999 + /** 2.17000 + The default color palette is used by %CImg when displaying images on 256 colors displays. 2.17001 + It consists in the quantification of the (R,G,B) color space using 3:3:2 bits for color coding 2.17002 + (i.e 8 levels for the Red and Green and 4 levels for the Blue). 2.17003 + \return a 1x256x1x3 color image defining the palette entries. 2.17004 + **/ 2.17005 + static CImg<Tuchar> default_LUT8() { 2.17006 + static CImg<Tuchar> palette; 2.17007 + if (!palette) { 2.17008 + palette.assign(1,256,1,3); 2.17009 + for (unsigned int index = 0, r = 16; r<256; r+=32) 2.17010 + for (unsigned int g = 16; g<256; g+=32) 2.17011 + for (unsigned int b = 32; b<256; b+=64) { 2.17012 + palette(0,index,0) = (Tuchar)r; 2.17013 + palette(0,index,1) = (Tuchar)g; 2.17014 + palette(0,index++,2) = (Tuchar)b; 2.17015 + } 2.17016 + } 2.17017 + return palette; 2.17018 + } 2.17019 + 2.17020 + //! Return a rainbow color palette with 256 (R,G,B) entries. 2.17021 + static CImg<Tuchar> rainbow_LUT8() { 2.17022 + static CImg<Tuchar> palette; 2.17023 + if (!palette) { 2.17024 + CImg<Tint> tmp(1,256,1,3,1); 2.17025 + tmp.get_shared_channel(0).sequence(0,359); 2.17026 + palette = tmp.HSVtoRGB(); 2.17027 + } 2.17028 + return palette; 2.17029 + } 2.17030 + 2.17031 + //! Return a contrasted color palette with 256 (R,G,B) entries. 2.17032 + static CImg<Tuchar> contrast_LUT8() { 2.17033 + static const unsigned char pal[] = { 2.17034 + 217,62,88,75,1,237,240,12,56,160,165,116,1,1,204,2,15,248,148,185,133,141,46,246,222,116,16,5,207,226, 2.17035 + 17,114,247,1,214,53,238,0,95,55,233,235,109,0,17,54,33,0,90,30,3,0,94,27,19,0,68,212,166,130,0,15,7,119, 2.17036 + 238,2,246,198,0,3,16,10,13,2,25,28,12,6,2,99,18,141,30,4,3,140,12,4,30,233,7,10,0,136,35,160,168,184,20, 2.17037 + 233,0,1,242,83,90,56,180,44,41,0,6,19,207,5,31,214,4,35,153,180,75,21,76,16,202,218,22,17,2,136,71,74, 2.17038 + 81,251,244,148,222,17,0,234,24,0,200,16,239,15,225,102,230,186,58,230,110,12,0,7,129,249,22,241,37,219, 2.17039 + 1,3,254,210,3,212,113,131,197,162,123,252,90,96,209,60,0,17,0,180,249,12,112,165,43,27,229,77,40,195,12, 2.17040 + 87,1,210,148,47,80,5,9,1,137,2,40,57,205,244,40,8,252,98,0,40,43,206,31,187,0,180,1,69,70,227,131,108,0, 2.17041 + 223,94,228,35,248,243,4,16,0,34,24,2,9,35,73,91,12,199,51,1,249,12,103,131,20,224,2,70,32, 2.17042 + 233,1,165,3,8,154,246,233,196,5,0,6,183,227,247,195,208,36,0,0,226,160,210,198,69,153,210,1,23,8,192,2,4, 2.17043 + 137,1,0,52,2,249,241,129,0,0,234,7,238,71,7,32,15,157,157,252,158,2,250,6,13,30,11,162,0,199,21,11,27,224, 2.17044 + 4,157,20,181,111,187,218,3,0,11,158,230,196,34,223,22,248,135,254,210,157,219,0,117,239,3,255,4,227,5,247, 2.17045 + 11,4,3,188,111,11,105,195,2,0,14,1,21,219,192,0,183,191,113,241,1,12,17,248,0,48,7,19,1,254,212,0,239,246, 2.17046 + 0,23,0,250,165,194,194,17,3,253,0,24,6,0,141,167,221,24,212,2,235,243,0,0,205,1,251,133,204,28,4,6,1,10, 2.17047 + 141,21,74,12,236,254,228,19,1,0,214,1,186,13,13,6,13,16,27,209,6,216,11,207,251,59,32,9,155,23,19,235,143, 2.17048 + 116,6,213,6,75,159,23,6,0,228,4,10,245,249,1,7,44,234,4,102,174,0,19,239,103,16,15,18,8,214,22,4,47,244, 2.17049 + 255,8,0,251,173,1,212,252,250,251,252,6,0,29,29,222,233,246,5,149,0,182,180,13,151,0,203,183,0,35,149,0, 2.17050 + 235,246,254,78,9,17,203,73,11,195,0,3,5,44,0,0,237,5,106,6,130,16,214,20,168,247,168,4,207,11,5,1,232,251, 2.17051 + 129,210,116,231,217,223,214,27,45,38,4,177,186,249,7,215,172,16,214,27,249,230,236,2,34,216,217,0,175,30, 2.17052 + 243,225,244,182,20,212,2,226,21,255,20,0,2,13,62,13,191,14,76,64,20,121,4,118,0,216,1,147,0,2,210,1,215, 2.17053 + 95,210,236,225,184,46,0,248,24,11,1,9,141,250,243,9,221,233,160,11,147,2,55,8,23,12,253,9,0,54,0,231,6,3, 2.17054 + 141,8,2,246,9,180,5,11,8,227,8,43,110,242,1,130,5,97,36,10,6,219,86,133,11,108,6,1,5,244,67,19,28,0,174, 2.17055 + 154,16,127,149,252,188,196,196,228,244,9,249,0,0,0,37,170,32,250,0,73,255,23,3,224,234,38,195,198,0,255,87, 2.17056 + 33,221,174,31,3,0,189,228,6,153,14,144,14,108,197,0,9,206,245,254,3,16,253,178,248,0,95,125,8,0,3,168,21, 2.17057 + 23,168,19,50,240,244,185,0,1,144,10,168,31,82,1,13 }; 2.17058 + static const CImg<Tuchar> palette(pal,1,256,1,3,false); 2.17059 + return palette; 2.17060 + } 2.17061 + 2.17062 + //! Convert (R,G,B) color image to indexed color image. 2.17063 + template<typename t> 2.17064 + CImg<T>& RGBtoLUT(const CImg<t>& palette, const bool dithering=true, const bool indexing=false) { 2.17065 + return get_RGBtoLUT(palette,dithering,indexing).transfer_to(*this); 2.17066 + } 2.17067 + 2.17068 + template<typename t> 2.17069 + CImg<t> get_RGBtoLUT(const CImg<t>& palette, const bool dithering=true, const bool indexing=false) const { 2.17070 + if (is_empty()) return CImg<t>(); 2.17071 + if (dim!=3) 2.17072 + throw CImgInstanceException("CImg<%s>::RGBtoLUT() : Input image dimension is dim=%u, " 2.17073 + "should be a (R,G,B) image.", 2.17074 + pixel_type(),dim); 2.17075 + if (palette.data && palette.dim!=3) 2.17076 + throw CImgArgumentException("CImg<%s>::RGBtoLUT() : Given palette dimension is dim=%u, " 2.17077 + "should be a (R,G,B) palette", 2.17078 + pixel_type(),palette.dim); 2.17079 + CImg<t> res(width,height,depth,indexing?1:3); 2.17080 + float *line1 = new float[3*width], *line2 = new float[3*width]; 2.17081 + t *pRd = res.ptr(0,0,0,0), *pGd = indexing?pRd:res.ptr(0,0,0,1), *pBd = indexing?pRd:res.ptr(0,0,0,2); 2.17082 + cimg_forZ(*this,z) { 2.17083 + const T *pRs = ptr(0,0,z,0), *pGs = ptr(0,0,z,1), *pBs = ptr(0,0,z,2); 2.17084 + float *ptrd = line2; cimg_forX(*this,x) { *(ptrd++) = (float)*(pRs++); *(ptrd++) = (float)*(pGs++); *(ptrd++) = (float)*(pBs++); } 2.17085 + cimg_forY(*this,y) { 2.17086 + cimg::swap(line1,line2); 2.17087 + if (y<dimy()-1) { 2.17088 + const int ny = y + 1; 2.17089 + const T *pRs = ptr(0,ny,z,0), *pGs = ptr(0,ny,z,1), *pBs = ptr(0,ny,z,2); 2.17090 + float *ptrd = line2; cimg_forX(*this,x) { *(ptrd++) = (float)*(pRs++); *(ptrd++) = (float)*(pGs++); *(ptrd++) = (float)*(pBs++); } 2.17091 + } 2.17092 + float *ptr1 = line1, *ptr2 = line2; 2.17093 + cimg_forX(*this,x) { 2.17094 + float R = *(ptr1++), G = *(ptr1++), B = *(ptr1++); 2.17095 + R = R<0?0:(R>255?255:R); G = G<0?0:(G>255?255:G); B = B<0?0:(B>255?255:B); 2.17096 + t Rbest = 0, Gbest = 0, Bbest = 0; 2.17097 + int best_index = 0; 2.17098 + if (palette) { // find best match in given color palette 2.17099 + const t *pRs = palette.ptr(0,0,0,0), *pGs = palette.ptr(0,0,0,1), *pBs = palette.ptr(0,0,0,2); 2.17100 + const unsigned int Npal = palette.width*palette.height*palette.depth; 2.17101 + float min = cimg::type<float>::max(); 2.17102 + for (unsigned int off = 0; off<Npal; ++off) { 2.17103 + const t Rp = *(pRs++), Gp = *(pGs++), Bp = *(pBs++); 2.17104 + const float error = cimg::sqr((float)Rp-(float)R) + cimg::sqr((float)Gp-(float)G) + cimg::sqr((float)Bp-(float)B); 2.17105 + if (error<min) { min = error; best_index = off; Rbest = Rp; Gbest = Gp; Bbest = Bp; } 2.17106 + } 2.17107 + } else { 2.17108 + Rbest = (t)((unsigned char)R&0xe0); Gbest = (t)((unsigned char)G&0xe0); Bbest = (t)((unsigned char)B&0xc0); 2.17109 + best_index = (unsigned char)Rbest | ((unsigned char)Gbest>>3) | ((unsigned char)Bbest>>6); 2.17110 + } 2.17111 + if (indexing) *(pRd++) = (t)best_index; else { *(pRd++) = Rbest; *(pGd++) = Gbest; *(pBd++) = Bbest; } 2.17112 + if (dithering) { // apply dithering to neighborhood pixels if needed 2.17113 + const float dR = (float)(R-Rbest), dG = (float)(G-Gbest), dB = (float)(B-Bbest); 2.17114 + if (x<dimx()-1) { *(ptr1++)+= dR*7/16; *(ptr1++)+= dG*7/16; *(ptr1++)+= dB*7/16; ptr1-=3; } 2.17115 + if (y<dimy()-1) { 2.17116 + *(ptr2++)+= dR*5/16; *(ptr2++)+= dG*5/16; *ptr2+= dB*5/16; ptr2-=2; 2.17117 + if (x>0) { *(--ptr2)+= dB*3/16; *(--ptr2)+= dG*3/16; *(--ptr2)+= dR*3/16; ptr2+=3; } 2.17118 + if (x<dimx()-1) { ptr2+=3; *(ptr2++)+= dR/16; *(ptr2++)+= dG/16; *ptr2+= dB/16; ptr2-=5; } 2.17119 + } 2.17120 + } 2.17121 + ptr2+=3; 2.17122 + } 2.17123 + } 2.17124 + } 2.17125 + delete[] line1; delete[] line2; 2.17126 + return res; 2.17127 + } 2.17128 + 2.17129 + //! Convert color pixels from (R,G,B) to match the default palette. 2.17130 + CImg<T>& RGBtoLUT(const bool dithering=true, const bool indexing=false) { 2.17131 + return get_RGBtoLUT(dithering,indexing).transfer_to(*this); 2.17132 + } 2.17133 + 2.17134 + CImg<Tuchar> get_RGBtoLUT(const bool dithering=true, const bool indexing=false) const { 2.17135 + static const CImg<Tuchar> empty; 2.17136 + return get_RGBtoLUT(empty,dithering,indexing); 2.17137 + } 2.17138 + 2.17139 + //! Convert an indexed image to a (R,G,B) image using the specified color palette. 2.17140 + CImg<T>& LUTtoRGB(const CImg<T>& palette) { 2.17141 + return get_LUTtoRGB(palette).transfer_to(*this); 2.17142 + } 2.17143 + 2.17144 + template<typename t> 2.17145 + CImg<t> get_LUTtoRGB(const CImg<t>& palette) const { 2.17146 + if (is_empty()) return CImg<t>(); 2.17147 + if (dim!=1) 2.17148 + throw CImgInstanceException("CImg<%s>::LUTtoRGB() : Input image dimension is dim=%u, " 2.17149 + "should be a LUT image", 2.17150 + pixel_type(),dim); 2.17151 + if (palette.data && palette.dim!=3) 2.17152 + throw CImgArgumentException("CImg<%s>::LUTtoRGB() : Given palette dimension is dim=%u, " 2.17153 + "should be a (R,G,B) palette", 2.17154 + pixel_type(),palette.dim); 2.17155 + const CImg<t> pal = palette.data?palette:CImg<t>(default_LUT8()); 2.17156 + CImg<t> res(width,height,depth,3); 2.17157 + const t *pRs = pal.ptr(0,0,0,0), *pGs = pal.ptr(0,0,0,1), *pBs = pal.ptr(0,0,0,2); 2.17158 + t *pRd = res.ptr(0,0,0,1), *pGd = pRd + width*height*depth, *pBd = pGd + width*height*depth; 2.17159 + const unsigned int Npal = palette.width*palette.height*palette.depth; 2.17160 + cimg_for(*this,ptr,T) { 2.17161 + const unsigned int index = ((unsigned int)*ptr)%Npal; 2.17162 + *(--pRd) = pRs[index]; *(--pGd) = pGs[index]; *(--pBd) = pBs[index]; 2.17163 + } 2.17164 + return res; 2.17165 + } 2.17166 + 2.17167 + //! Convert an indexed image (with the default palette) to a (R,G,B) image. 2.17168 + CImg<T>& LUTtoRGB() { 2.17169 + return get_LUTtoRGB().transfer_to(*this); 2.17170 + } 2.17171 + 2.17172 + CImg<Tuchar> get_LUTtoRGB() const { 2.17173 + static const CImg<Tuchar> empty; 2.17174 + return get_LUTtoRGB(empty); 2.17175 + } 2.17176 + 2.17177 + //! Convert color pixels from (R,G,B) to (H,S,V). 2.17178 + CImg<T>& RGBtoHSV() { 2.17179 + if (is_empty()) return *this; 2.17180 + if (dim!=3) 2.17181 + throw CImgInstanceException("CImg<%s>::RGBtoHSV() : Input image dimension is dim=%u, " 2.17182 + "should be a (R,G,B) image.", 2.17183 + pixel_type(),dim); 2.17184 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17185 + for (unsigned long N = width*height*depth; N; --N) { 2.17186 + const Tfloat 2.17187 + R = (Tfloat)*p1, 2.17188 + G = (Tfloat)*p2, 2.17189 + B = (Tfloat)*p3, 2.17190 + nR = (R<0?0:(R>255?255:R))/255, 2.17191 + nG = (G<0?0:(G>255?255:G))/255, 2.17192 + nB = (B<0?0:(B>255?255:B))/255, 2.17193 + m = cimg::min(nR,nG,nB), 2.17194 + M = cimg::max(nR,nG,nB); 2.17195 + Tfloat H = 0, S = 0; 2.17196 + if (M!=m) { 2.17197 + const Tfloat 2.17198 + f = (nR==m)?(nG-nB):((nG==m)?(nB-nR):(nR-nG)), 2.17199 + i = (Tfloat)((nR==m)?3:((nG==m)?5:1)); 2.17200 + H = (i-f/(M-m)); 2.17201 + if (H>=6) H-=6; 2.17202 + H*=60; 2.17203 + S = (M-m)/M; 2.17204 + } 2.17205 + *(p1++) = (T)H; 2.17206 + *(p2++) = (T)S; 2.17207 + *(p3++) = (T)M; 2.17208 + } 2.17209 + return *this; 2.17210 + } 2.17211 + 2.17212 + CImg<Tfloat> get_RGBtoHSV() const { 2.17213 + return CImg<Tfloat>(*this,false).RGBtoHSV(); 2.17214 + } 2.17215 + 2.17216 + //! Convert color pixels from (H,S,V) to (R,G,B). 2.17217 + CImg<T>& HSVtoRGB() { 2.17218 + if (is_empty()) return *this; 2.17219 + if (dim!=3) 2.17220 + throw CImgInstanceException("CImg<%s>::HSVtoRGB() : Input image dimension is dim=%u, " 2.17221 + "should be a (H,S,V) image", 2.17222 + pixel_type(),dim); 2.17223 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17224 + for (unsigned long N = width*height*depth; N; --N) { 2.17225 + Tfloat 2.17226 + H = (Tfloat)*p1, 2.17227 + S = (Tfloat)*p2, 2.17228 + V = (Tfloat)*p3, 2.17229 + R = 0, G = 0, B = 0; 2.17230 + if (H==0 && S==0) R = G = B = V; 2.17231 + else { 2.17232 + H/=60; 2.17233 + const int i = (int)cimg_std::floor(H); 2.17234 + const Tfloat 2.17235 + f = (i&1)?(H-i):(1-H+i), 2.17236 + m = V*(1-S), 2.17237 + n = V*(1-S*f); 2.17238 + switch (i) { 2.17239 + case 6 : 2.17240 + case 0 : R = V; G = n; B = m; break; 2.17241 + case 1 : R = n; G = V; B = m; break; 2.17242 + case 2 : R = m; G = V; B = n; break; 2.17243 + case 3 : R = m; G = n; B = V; break; 2.17244 + case 4 : R = n; G = m; B = V; break; 2.17245 + case 5 : R = V; G = m; B = n; break; 2.17246 + } 2.17247 + } 2.17248 + R*=255; G*=255; B*=255; 2.17249 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17250 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17251 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17252 + } 2.17253 + return *this; 2.17254 + } 2.17255 + 2.17256 + CImg<Tuchar> get_HSVtoRGB() const { 2.17257 + return CImg<Tuchar>(*this,false).HSVtoRGB(); 2.17258 + } 2.17259 + 2.17260 + //! Convert color pixels from (R,G,B) to (H,S,L). 2.17261 + CImg<T>& RGBtoHSL() { 2.17262 + if (is_empty()) return *this; 2.17263 + if (dim!=3) 2.17264 + throw CImgInstanceException("CImg<%s>::RGBtoHSL() : Input image dimension is dim=%u, " 2.17265 + "should be a (R,G,B) image.", 2.17266 + pixel_type(),dim); 2.17267 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17268 + for (unsigned long N = width*height*depth; N; --N) { 2.17269 + const Tfloat 2.17270 + R = (Tfloat)*p1, 2.17271 + G = (Tfloat)*p2, 2.17272 + B = (Tfloat)*p3, 2.17273 + nR = (R<0?0:(R>255?255:R))/255, 2.17274 + nG = (G<0?0:(G>255?255:G))/255, 2.17275 + nB = (B<0?0:(B>255?255:B))/255, 2.17276 + m = cimg::min(nR,nG,nB), 2.17277 + M = cimg::max(nR,nG,nB), 2.17278 + L = (m+M)/2; 2.17279 + Tfloat H = 0, S = 0; 2.17280 + if (M==m) H = S = 0; 2.17281 + else { 2.17282 + const Tfloat 2.17283 + f = (nR==m)?(nG-nB):((nG==m)?(nB-nR):(nR-nG)), 2.17284 + i = (nR==m)?3.0f:((nG==m)?5.0f:1.0f); 2.17285 + H = (i-f/(M-m)); 2.17286 + if (H>=6) H-=6; 2.17287 + H*=60; 2.17288 + S = (2*L<=1)?((M-m)/(M+m)):((M-m)/(2-M-m)); 2.17289 + } 2.17290 + *(p1++) = (T)H; 2.17291 + *(p2++) = (T)S; 2.17292 + *(p3++) = (T)L; 2.17293 + } 2.17294 + return *this; 2.17295 + } 2.17296 + 2.17297 + CImg<Tfloat> get_RGBtoHSL() const { 2.17298 + return CImg< Tfloat>(*this,false).RGBtoHSL(); 2.17299 + } 2.17300 + 2.17301 + //! Convert color pixels from (H,S,L) to (R,G,B). 2.17302 + CImg<T>& HSLtoRGB() { 2.17303 + if (is_empty()) return *this; 2.17304 + if (dim!=3) 2.17305 + throw CImgInstanceException("CImg<%s>::HSLtoRGB() : Input image dimension is dim=%u, " 2.17306 + "should be a (H,S,V) image", 2.17307 + pixel_type(),dim); 2.17308 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17309 + for (unsigned long N = width*height*depth; N; --N) { 2.17310 + const Tfloat 2.17311 + H = (Tfloat)*p1, 2.17312 + S = (Tfloat)*p2, 2.17313 + L = (Tfloat)*p3, 2.17314 + q = 2*L<1?L*(1+S):(L+S-L*S), 2.17315 + p = 2*L-q, 2.17316 + h = H/360, 2.17317 + tr = h + 1.0f/3, 2.17318 + tg = h, 2.17319 + tb = h - 1.0f/3, 2.17320 + ntr = tr<0?tr+1:(tr>1?tr-1:tr), 2.17321 + ntg = tg<0?tg+1:(tg>1?tg-1:tg), 2.17322 + ntb = tb<0?tb+1:(tb>1?tb-1:tb), 2.17323 + R = 255*(6*ntr<1?p+(q-p)*6*ntr:(2*ntr<1?q:(3*ntr<2?p+(q-p)*6*(2.0f/3-ntr):p))), 2.17324 + G = 255*(6*ntg<1?p+(q-p)*6*ntg:(2*ntg<1?q:(3*ntg<2?p+(q-p)*6*(2.0f/3-ntg):p))), 2.17325 + B = 255*(6*ntb<1?p+(q-p)*6*ntb:(2*ntb<1?q:(3*ntb<2?p+(q-p)*6*(2.0f/3-ntb):p))); 2.17326 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17327 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17328 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17329 + } 2.17330 + return *this; 2.17331 + } 2.17332 + 2.17333 + CImg<Tuchar> get_HSLtoRGB() const { 2.17334 + return CImg<Tuchar>(*this,false).HSLtoRGB(); 2.17335 + } 2.17336 + 2.17337 + //! Convert color pixels from (R,G,B) to (H,S,I). 2.17338 + //! Reference: "Digital Image Processing, 2nd. edition", R. Gonzalez and R. Woods. Prentice Hall, 2002. 2.17339 + CImg<T>& RGBtoHSI() { 2.17340 + if (is_empty()) return *this; 2.17341 + if (dim!=3) 2.17342 + throw CImgInstanceException("CImg<%s>::RGBtoHSI() : Input image dimension is dim=%u, " 2.17343 + "should be a (R,G,B) image.", 2.17344 + pixel_type(),dim); 2.17345 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17346 + for (unsigned long N = width*height*depth; N; --N) { 2.17347 + const Tfloat 2.17348 + R = (Tfloat)*p1, 2.17349 + G = (Tfloat)*p2, 2.17350 + B = (Tfloat)*p3, 2.17351 + nR = (R<0?0:(R>255?255:R))/255, 2.17352 + nG = (G<0?0:(G>255?255:G))/255, 2.17353 + nB = (B<0?0:(B>255?255:B))/255, 2.17354 + m = cimg::min(nR,nG,nB), 2.17355 + theta = (Tfloat)(cimg_std::acos(0.5f*((nR-nG)+(nR-nB))/cimg_std::sqrt(cimg_std::pow(nR-nG,2)+(nR-nB)*(nG-nB)))*180/cimg::valuePI), 2.17356 + sum = nR + nG + nB; 2.17357 + Tfloat H = 0, S = 0, I = 0; 2.17358 + if (theta>0) H = (nB<=nG)?theta:360-theta; 2.17359 + if (sum>0) S = 1 - 3/sum*m; 2.17360 + I = sum/3; 2.17361 + *(p1++) = (T)H; 2.17362 + *(p2++) = (T)S; 2.17363 + *(p3++) = (T)I; 2.17364 + } 2.17365 + return *this; 2.17366 + } 2.17367 + 2.17368 + CImg<Tfloat> get_RGBtoHSI() const { 2.17369 + return CImg<Tfloat>(*this,false).RGBtoHSI(); 2.17370 + } 2.17371 + 2.17372 + //! Convert color pixels from (H,S,I) to (R,G,B). 2.17373 + CImg<T>& HSItoRGB() { 2.17374 + if (is_empty()) return *this; 2.17375 + if (dim!=3) 2.17376 + throw CImgInstanceException("CImg<%s>::HSItoRGB() : Input image dimension is dim=%u, " 2.17377 + "should be a (H,S,I) image", 2.17378 + pixel_type(),dim); 2.17379 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17380 + for (unsigned long N = width*height*depth; N; --N) { 2.17381 + Tfloat 2.17382 + H = (Tfloat)*p1, 2.17383 + S = (Tfloat)*p2, 2.17384 + I = (Tfloat)*p3, 2.17385 + a = I*(1-S), 2.17386 + R = 0, G = 0, B = 0; 2.17387 + if (H<120) { 2.17388 + B = a; 2.17389 + R = (Tfloat)(I*(1+S*cimg_std::cos(H*cimg::valuePI/180)/cimg_std::cos((60-H)*cimg::valuePI/180))); 2.17390 + G = 3*I-(R+B); 2.17391 + } else if (H<240) { 2.17392 + H-=120; 2.17393 + R = a; 2.17394 + G = (Tfloat)(I*(1+S*cimg_std::cos(H*cimg::valuePI/180)/cimg_std::cos((60-H)*cimg::valuePI/180))); 2.17395 + B = 3*I-(R+G); 2.17396 + } else { 2.17397 + H-=240; 2.17398 + G = a; 2.17399 + B = (Tfloat)(I*(1+S*cimg_std::cos(H*cimg::valuePI/180)/cimg_std::cos((60-H)*cimg::valuePI/180))); 2.17400 + R = 3*I-(G+B); 2.17401 + } 2.17402 + R*=255; G*=255; B*=255; 2.17403 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17404 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17405 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17406 + } 2.17407 + return *this; 2.17408 + } 2.17409 + 2.17410 + CImg<Tfloat> get_HSItoRGB() const { 2.17411 + return CImg< Tuchar>(*this,false).HSItoRGB(); 2.17412 + } 2.17413 + 2.17414 + //! Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8. 2.17415 + CImg<T>& RGBtoYCbCr() { 2.17416 + if (is_empty()) return *this; 2.17417 + if (dim!=3) 2.17418 + throw CImgInstanceException("CImg<%s>::RGBtoYCbCr() : Input image dimension is dim=%u, " 2.17419 + "should be a (R,G,B) image (dim=3)", 2.17420 + pixel_type(),dim); 2.17421 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17422 + for (unsigned long N = width*height*depth; N; --N) { 2.17423 + const Tfloat 2.17424 + R = (Tfloat)*p1, 2.17425 + G = (Tfloat)*p2, 2.17426 + B = (Tfloat)*p3, 2.17427 + Y = (66*R + 129*G + 25*B + 128)/256 + 16, 2.17428 + Cb = (-38*R - 74*G + 112*B + 128)/256 + 128, 2.17429 + Cr = (112*R - 94*G - 18*B + 128)/256 + 128; 2.17430 + *(p1++) = (T)(Y<0?0:(Y>255?255:Y)); 2.17431 + *(p2++) = (T)(Cb<0?0:(Cb>255?255:Cb)); 2.17432 + *(p3++) = (T)(Cr<0?0:(Cr>255?255:Cr)); 2.17433 + } 2.17434 + return *this; 2.17435 + } 2.17436 + 2.17437 + CImg<Tuchar> get_RGBtoYCbCr() const { 2.17438 + return CImg<Tuchar>(*this,false).RGBtoYCbCr(); 2.17439 + } 2.17440 + 2.17441 + //! Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8. 2.17442 + CImg<T>& YCbCrtoRGB() { 2.17443 + if (is_empty()) return *this; 2.17444 + if (dim!=3) 2.17445 + throw CImgInstanceException("CImg<%s>::YCbCrtoRGB() : Input image dimension is dim=%u, " 2.17446 + "should be a (Y,Cb,Cr)_8 image (dim=3)", 2.17447 + pixel_type(),dim); 2.17448 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17449 + for (unsigned long N = width*height*depth; N; --N) { 2.17450 + const Tfloat 2.17451 + Y = (Tfloat)*p1 - 16, 2.17452 + Cb = (Tfloat)*p2 - 128, 2.17453 + Cr = (Tfloat)*p3 - 128, 2.17454 + R = (298*Y + 409*Cr + 128)/256, 2.17455 + G = (298*Y - 100*Cb - 208*Cr + 128)/256, 2.17456 + B = (298*Y + 516*Cb + 128)/256; 2.17457 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17458 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17459 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17460 + } 2.17461 + return *this; 2.17462 + } 2.17463 + 2.17464 + CImg<Tuchar> get_YCbCrtoRGB() const { 2.17465 + return CImg<Tuchar>(*this,false).YCbCrtoRGB(); 2.17466 + } 2.17467 + 2.17468 + //! Convert color pixels from (R,G,B) to (Y,U,V). 2.17469 + CImg<T>& RGBtoYUV() { 2.17470 + if (is_empty()) return *this; 2.17471 + if (dim!=3) 2.17472 + throw CImgInstanceException("CImg<%s>::RGBtoYUV() : Input image dimension is dim=%u, " 2.17473 + "should be a (R,G,B) image (dim=3)", 2.17474 + pixel_type(),dim); 2.17475 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17476 + for (unsigned long N = width*height*depth; N; --N) { 2.17477 + const Tfloat 2.17478 + R = (Tfloat)*p1/255, 2.17479 + G = (Tfloat)*p2/255, 2.17480 + B = (Tfloat)*p3/255, 2.17481 + Y = 0.299f*R + 0.587f*G + 0.114f*B; 2.17482 + *(p1++) = (T)Y; 2.17483 + *(p2++) = (T)(0.492f*(B-Y)); 2.17484 + *(p3++) = (T)(0.877*(R-Y)); 2.17485 + } 2.17486 + return *this; 2.17487 + } 2.17488 + 2.17489 + CImg<Tfloat> get_RGBtoYUV() const { 2.17490 + return CImg<Tfloat>(*this,false).RGBtoYUV(); 2.17491 + } 2.17492 + 2.17493 + //! Convert color pixels from (Y,U,V) to (R,G,B). 2.17494 + CImg<T>& YUVtoRGB() { 2.17495 + if (is_empty()) return *this; 2.17496 + if (dim!=3) 2.17497 + throw CImgInstanceException("CImg<%s>::YUVtoRGB() : Input image dimension is dim=%u, " 2.17498 + "should be a (Y,U,V) image (dim=3)", 2.17499 + pixel_type(),dim); 2.17500 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17501 + for (unsigned long N = width*height*depth; N; --N) { 2.17502 + const Tfloat 2.17503 + Y = (Tfloat)*p1, 2.17504 + U = (Tfloat)*p2, 2.17505 + V = (Tfloat)*p3, 2.17506 + R = (Y + 1.140f*V)*255, 2.17507 + G = (Y - 0.395f*U - 0.581f*V)*255, 2.17508 + B = (Y + 2.032f*U)*255; 2.17509 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17510 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17511 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17512 + } 2.17513 + return *this; 2.17514 + } 2.17515 + 2.17516 + CImg<Tuchar> get_YUVtoRGB() const { 2.17517 + return CImg< Tuchar>(*this,false).YUVtoRGB(); 2.17518 + } 2.17519 + 2.17520 + //! Convert color pixels from (R,G,B) to (C,M,Y). 2.17521 + CImg<T>& RGBtoCMY() { 2.17522 + if (is_empty()) return *this; 2.17523 + if (dim!=3) 2.17524 + throw CImgInstanceException("CImg<%s>::RGBtoCMY() : Input image dimension is dim=%u, " 2.17525 + "should be a (R,G,B) image (dim=3)", 2.17526 + pixel_type(),dim); 2.17527 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17528 + for (unsigned long N = width*height*depth; N; --N) { 2.17529 + const Tfloat 2.17530 + R = (Tfloat)*p1/255, 2.17531 + G = (Tfloat)*p2/255, 2.17532 + B = (Tfloat)*p3/255; 2.17533 + *(p1++) = (T)(1 - R); 2.17534 + *(p2++) = (T)(1 - G); 2.17535 + *(p3++) = (T)(1 - B); 2.17536 + } 2.17537 + return *this; 2.17538 + } 2.17539 + 2.17540 + CImg<Tfloat> get_RGBtoCMY() const { 2.17541 + return CImg<Tfloat>(*this,false).RGBtoCMY(); 2.17542 + } 2.17543 + 2.17544 + //! Convert (C,M,Y) pixels of a color image into the (R,G,B) color space. 2.17545 + CImg<T>& CMYtoRGB() { 2.17546 + if (is_empty()) return *this; 2.17547 + if (dim!=3) 2.17548 + throw CImgInstanceException("CImg<%s>::CMYtoRGB() : Input image dimension is dim=%u, " 2.17549 + "should be a (C,M,Y) image (dim=3)", 2.17550 + pixel_type(),dim); 2.17551 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17552 + for (unsigned long N = width*height*depth; N; --N) { 2.17553 + const Tfloat 2.17554 + C = (Tfloat)*p1, 2.17555 + M = (Tfloat)*p2, 2.17556 + Y = (Tfloat)*p3, 2.17557 + R = 255*(1 - C), 2.17558 + G = 255*(1 - M), 2.17559 + B = 255*(1 - Y); 2.17560 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17561 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17562 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17563 + } 2.17564 + return *this; 2.17565 + } 2.17566 + 2.17567 + CImg<Tuchar> get_CMYtoRGB() const { 2.17568 + return CImg<Tuchar>(*this,false).CMYtoRGB(); 2.17569 + } 2.17570 + 2.17571 + //! Convert color pixels from (C,M,Y) to (C,M,Y,K). 2.17572 + CImg<T>& CMYtoCMYK() { 2.17573 + return get_CMYtoCMYK().transfer_to(*this); 2.17574 + } 2.17575 + 2.17576 + CImg<Tfloat> get_CMYtoCMYK() const { 2.17577 + if (is_empty()) return *this; 2.17578 + if (dim!=3) 2.17579 + throw CImgInstanceException("CImg<%s>::CMYtoCMYK() : Input image dimension is dim=%u, " 2.17580 + "should be a (C,M,Y) image (dim=3)", 2.17581 + pixel_type(),dim); 2.17582 + CImg<Tfloat> res(width,height,depth,4); 2.17583 + const T *ps1 = ptr(0,0,0,0), *ps2 = ptr(0,0,0,1), *ps3 = ptr(0,0,0,2); 2.17584 + Tfloat *pd1 = res.ptr(0,0,0,0), *pd2 = res.ptr(0,0,0,1), *pd3 = res.ptr(0,0,0,2), *pd4 = res.ptr(0,0,0,3); 2.17585 + for (unsigned long N = width*height*depth; N; --N) { 2.17586 + Tfloat 2.17587 + C = (Tfloat)*(ps1++), 2.17588 + M = (Tfloat)*(ps2++), 2.17589 + Y = (Tfloat)*(ps3++), 2.17590 + K = cimg::min(C,M,Y); 2.17591 + if (K==1) C = M = Y = 0; 2.17592 + else { const Tfloat K1 = 1 - K; C = (C - K)/K1; M = (M - K)/K1; Y = (Y - K)/K1; } 2.17593 + *(pd1++) = C; 2.17594 + *(pd2++) = M; 2.17595 + *(pd3++) = Y; 2.17596 + *(pd4++) = K; 2.17597 + } 2.17598 + return res; 2.17599 + } 2.17600 + 2.17601 + //! Convert (C,M,Y,K) pixels of a color image into the (C,M,Y) color space. 2.17602 + CImg<T>& CMYKtoCMY() { 2.17603 + return get_CMYKtoCMY().transfer_to(*this); 2.17604 + } 2.17605 + 2.17606 + CImg<Tfloat> get_CMYKtoCMY() const { 2.17607 + if (is_empty()) return *this; 2.17608 + if (dim!=4) 2.17609 + throw CImgInstanceException("CImg<%s>::CMYKtoCMY() : Input image dimension is dim=%u, " 2.17610 + "should be a (C,M,Y,K) image (dim=4)", 2.17611 + pixel_type(),dim); 2.17612 + CImg<Tfloat> res(width,height,depth,3); 2.17613 + const T *ps1 = ptr(0,0,0,0), *ps2 = ptr(0,0,0,1), *ps3 = ptr(0,0,0,2), *ps4 = ptr(0,0,0,3); 2.17614 + Tfloat *pd1 = res.ptr(0,0,0,0), *pd2 = res.ptr(0,0,0,1), *pd3 = res.ptr(0,0,0,2); 2.17615 + for (unsigned long N = width*height*depth; N; --N) { 2.17616 + const Tfloat 2.17617 + C = (Tfloat)*ps1, 2.17618 + M = (Tfloat)*ps2, 2.17619 + Y = (Tfloat)*ps3, 2.17620 + K = (Tfloat)*ps4, 2.17621 + K1 = 1 - K; 2.17622 + *(pd1++) = C*K1 + K; 2.17623 + *(pd2++) = M*K1 + K; 2.17624 + *(pd3++) = Y*K1 + K; 2.17625 + } 2.17626 + return res; 2.17627 + } 2.17628 + 2.17629 + //! Convert color pixels from (R,G,B) to (X,Y,Z)_709. 2.17630 + CImg<T>& RGBtoXYZ() { 2.17631 + if (is_empty()) return *this; 2.17632 + if (dim!=3) 2.17633 + throw CImgInstanceException("CImg<%s>::RGBtoXYZ() : Input image dimension is dim=%u, " 2.17634 + "should be a (R,G,B) image (dim=3)", 2.17635 + pixel_type(),dim); 2.17636 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17637 + for (unsigned long N = width*height*depth; N; --N) { 2.17638 + const Tfloat 2.17639 + R = (Tfloat)*p1/255, 2.17640 + G = (Tfloat)*p2/255, 2.17641 + B = (Tfloat)*p3/255; 2.17642 + *(p1++) = (T)(0.412453f*R + 0.357580f*G + 0.180423f*B); 2.17643 + *(p2++) = (T)(0.212671f*R + 0.715160f*G + 0.072169f*B); 2.17644 + *(p3++) = (T)(0.019334f*R + 0.119193f*G + 0.950227f*B); 2.17645 + } 2.17646 + return *this; 2.17647 + } 2.17648 + 2.17649 + CImg<Tfloat> get_RGBtoXYZ() const { 2.17650 + return CImg<Tfloat>(*this,false).RGBtoXYZ(); 2.17651 + } 2.17652 + 2.17653 + //! Convert (X,Y,Z)_709 pixels of a color image into the (R,G,B) color space. 2.17654 + CImg<T>& XYZtoRGB() { 2.17655 + if (is_empty()) return *this; 2.17656 + if (dim!=3) 2.17657 + throw CImgInstanceException("CImg<%s>::XYZtoRGB() : Input image dimension is dim=%u, " 2.17658 + "should be a (X,Y,Z) image (dim=3)", 2.17659 + pixel_type(),dim); 2.17660 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17661 + for (unsigned long N = width*height*depth; N; --N) { 2.17662 + const Tfloat 2.17663 + X = (Tfloat)*p1*255, 2.17664 + Y = (Tfloat)*p2*255, 2.17665 + Z = (Tfloat)*p3*255, 2.17666 + R = 3.240479f*X - 1.537150f*Y - 0.498535f*Z, 2.17667 + G = -0.969256f*X + 1.875992f*Y + 0.041556f*Z, 2.17668 + B = 0.055648f*X - 0.204043f*Y + 1.057311f*Z; 2.17669 + *(p1++) = (T)(R<0?0:(R>255?255:R)); 2.17670 + *(p2++) = (T)(G<0?0:(G>255?255:G)); 2.17671 + *(p3++) = (T)(B<0?0:(B>255?255:B)); 2.17672 + } 2.17673 + return *this; 2.17674 + } 2.17675 + 2.17676 + CImg<Tuchar> get_XYZtoRGB() const { 2.17677 + return CImg<Tuchar>(*this,false).XYZtoRGB(); 2.17678 + } 2.17679 + 2.17680 + //! Convert (X,Y,Z)_709 pixels of a color image into the (L*,a*,b*) color space. 2.17681 + CImg<T>& XYZtoLab() { 2.17682 +#define _cimg_Labf(x) ((x)>=0.008856f?(cimg_std::pow(x,(Tfloat)1/3)):(7.787f*(x)+16.0f/116)) 2.17683 + if (is_empty()) return *this; 2.17684 + if (dim!=3) 2.17685 + throw CImgInstanceException("CImg<%s>::XYZtoLab() : Input image dimension is dim=%u, " 2.17686 + "should be a (X,Y,Z) image (dim=3)", 2.17687 + pixel_type(),dim); 2.17688 + const Tfloat 2.17689 + Xn = (Tfloat)(0.412453f + 0.357580f + 0.180423f), 2.17690 + Yn = (Tfloat)(0.212671f + 0.715160f + 0.072169f), 2.17691 + Zn = (Tfloat)(0.019334f + 0.119193f + 0.950227f); 2.17692 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17693 + for (unsigned long N = width*height*depth; N; --N) { 2.17694 + const Tfloat 2.17695 + X = (Tfloat)*p1, 2.17696 + Y = (Tfloat)*p2, 2.17697 + Z = (Tfloat)*p3, 2.17698 + XXn = X/Xn, YYn = Y/Yn, ZZn = Z/Zn, 2.17699 + fX = (Tfloat)_cimg_Labf(XXn), 2.17700 + fY = (Tfloat)_cimg_Labf(YYn), 2.17701 + fZ = (Tfloat)_cimg_Labf(ZZn); 2.17702 + *(p1++) = (T)(116*fY - 16); 2.17703 + *(p2++) = (T)(500*(fX - fY)); 2.17704 + *(p3++) = (T)(200*(fY - fZ)); 2.17705 + } 2.17706 + return *this; 2.17707 + } 2.17708 + 2.17709 + CImg<Tfloat> get_XYZtoLab() const { 2.17710 + return CImg<Tfloat>(*this,false).XYZtoLab(); 2.17711 + } 2.17712 + 2.17713 + //! Convert (L,a,b) pixels of a color image into the (X,Y,Z) color space. 2.17714 + CImg<T>& LabtoXYZ() { 2.17715 +#define _cimg_Labfi(x) ((x)>=0.206893f?((x)*(x)*(x)):(((x)-16.0f/116)/7.787f)) 2.17716 + if (is_empty()) return *this; 2.17717 + if (dim!=3) 2.17718 + throw CImgInstanceException("CImg<%s>::LabtoXYZ() : Input image dimension is dim=%u, " 2.17719 + "should be a (X,Y,Z) image (dim=3)", 2.17720 + pixel_type(),dim); 2.17721 + const Tfloat 2.17722 + Xn = (Tfloat)(0.412453f + 0.357580f + 0.180423f), 2.17723 + Yn = (Tfloat)(0.212671f + 0.715160f + 0.072169f), 2.17724 + Zn = (Tfloat)(0.019334f + 0.119193f + 0.950227f); 2.17725 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17726 + for (unsigned long N = width*height*depth; N; --N) { 2.17727 + const Tfloat 2.17728 + L = (Tfloat)*p1, 2.17729 + a = (Tfloat)*p2, 2.17730 + b = (Tfloat)*p3, 2.17731 + cY = (L + 16)/116, 2.17732 + Y = (Tfloat)(Yn*_cimg_Labfi(cY)), 2.17733 + pY = (Tfloat)cimg_std::pow(Y/Yn,(Tfloat)1/3), 2.17734 + cX = a/500 + pY, 2.17735 + X = Xn*cX*cX*cX, 2.17736 + cZ = pY - b/200, 2.17737 + Z = Zn*cZ*cZ*cZ; 2.17738 + *(p1++) = (T)(X); 2.17739 + *(p2++) = (T)(Y); 2.17740 + *(p3++) = (T)(Z); 2.17741 + } 2.17742 + return *this; 2.17743 + } 2.17744 + 2.17745 + CImg<Tfloat> get_LabtoXYZ() const { 2.17746 + return CImg<Tfloat>(*this,false).LabtoXYZ(); 2.17747 + } 2.17748 + 2.17749 + //! Convert (X,Y,Z)_709 pixels of a color image into the (x,y,Y) color space. 2.17750 + CImg<T>& XYZtoxyY() { 2.17751 + if (is_empty()) return *this; 2.17752 + if (dim!=3) 2.17753 + throw CImgInstanceException("CImg<%s>::XYZtoxyY() : Input image dimension is dim=%u, " 2.17754 + "should be a (X,Y,Z) image (dim=3)", 2.17755 + pixel_type(),dim); 2.17756 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17757 + for (unsigned long N = width*height*depth; N; --N) { 2.17758 + const Tfloat 2.17759 + X = (Tfloat)*p1, 2.17760 + Y = (Tfloat)*p2, 2.17761 + Z = (Tfloat)*p3, 2.17762 + sum = (X+Y+Z), 2.17763 + nsum = sum>0?sum:1; 2.17764 + *(p1++) = (T)(X/nsum); 2.17765 + *(p2++) = (T)(Y/nsum); 2.17766 + *(p3++) = (T)Y; 2.17767 + } 2.17768 + return *this; 2.17769 + } 2.17770 + 2.17771 + CImg<Tfloat> get_XYZtoxyY() const { 2.17772 + return CImg<Tfloat>(*this,false).XYZtoxyY(); 2.17773 + } 2.17774 + 2.17775 + //! Convert (x,y,Y) pixels of a color image into the (X,Y,Z)_709 color space. 2.17776 + CImg<T>& xyYtoXYZ() { 2.17777 + if (is_empty()) return *this; 2.17778 + if (dim!=3) 2.17779 + throw CImgInstanceException("CImg<%s>::xyYtoXYZ() : Input image dimension is dim=%u, " 2.17780 + "should be a (x,y,Y) image (dim=3)", 2.17781 + pixel_type(),dim); 2.17782 + T *p1 = ptr(0,0,0,0), *p2 = ptr(0,0,0,1), *p3 = ptr(0,0,0,2); 2.17783 + for (unsigned long N = width*height*depth; N; --N) { 2.17784 + const Tfloat 2.17785 + px = (Tfloat)*p1, 2.17786 + py = (Tfloat)*p2, 2.17787 + Y = (Tfloat)*p3, 2.17788 + ny = py>0?py:1; 2.17789 + *(p1++) = (T)(px*Y/ny); 2.17790 + *(p2++) = (T)Y; 2.17791 + *(p3++) = (T)((1-px-py)*Y/ny); 2.17792 + } 2.17793 + return *this; 2.17794 + } 2.17795 + 2.17796 + CImg<Tfloat> get_xyYtoXYZ() const { 2.17797 + return CImg<Tfloat>(*this,false).xyYtoXYZ(); 2.17798 + } 2.17799 + 2.17800 + //! Convert a (R,G,B) image to a (L,a,b) one. 2.17801 + CImg<T>& RGBtoLab() { 2.17802 + return RGBtoXYZ().XYZtoLab(); 2.17803 + } 2.17804 + 2.17805 + CImg<Tfloat> get_RGBtoLab() const { 2.17806 + return CImg<Tfloat>(*this,false).RGBtoLab(); 2.17807 + } 2.17808 + 2.17809 + //! Convert a (L,a,b) image to a (R,G,B) one. 2.17810 + CImg<T>& LabtoRGB() { 2.17811 + return LabtoXYZ().XYZtoRGB(); 2.17812 + } 2.17813 + 2.17814 + CImg<Tuchar> get_LabtoRGB() const { 2.17815 + return CImg<Tuchar>(*this,false).LabtoRGB(); 2.17816 + } 2.17817 + 2.17818 + //! Convert a (R,G,B) image to a (x,y,Y) one. 2.17819 + CImg<T>& RGBtoxyY() { 2.17820 + return RGBtoXYZ().XYZtoxyY(); 2.17821 + } 2.17822 + 2.17823 + CImg<Tfloat> get_RGBtoxyY() const { 2.17824 + return CImg<Tfloat>(*this,false).RGBtoxyY(); 2.17825 + } 2.17826 + 2.17827 + //! Convert a (x,y,Y) image to a (R,G,B) one. 2.17828 + CImg<T>& xyYtoRGB() { 2.17829 + return xyYtoXYZ().XYZtoRGB(); 2.17830 + } 2.17831 + 2.17832 + CImg<Tuchar> get_xyYtoRGB() const { 2.17833 + return CImg<Tuchar>(*this,false).xyYtoRGB(); 2.17834 + } 2.17835 + 2.17836 + //! Convert a (R,G,B) image to a (C,M,Y,K) one. 2.17837 + CImg<T>& RGBtoCMYK() { 2.17838 + return RGBtoCMY().CMYtoCMYK(); 2.17839 + } 2.17840 + 2.17841 + CImg<Tfloat> get_RGBtoCMYK() const { 2.17842 + return CImg<Tfloat>(*this,false).RGBtoCMYK(); 2.17843 + } 2.17844 + 2.17845 + //! Convert a (C,M,Y,K) image to a (R,G,B) one. 2.17846 + CImg<T>& CMYKtoRGB() { 2.17847 + return CMYKtoCMY().CMYtoRGB(); 2.17848 + } 2.17849 + 2.17850 + CImg<Tuchar> get_CMYKtoRGB() const { 2.17851 + return CImg<Tuchar>(*this,false).CMYKtoRGB(); 2.17852 + } 2.17853 + 2.17854 + //! Convert a (R,G,B) image to a Bayer-coded representation. 2.17855 + /** 2.17856 + \note First (upper-left) pixel if the red component of the pixel color. 2.17857 + **/ 2.17858 + CImg<T>& RGBtoBayer() { 2.17859 + return get_RGBtoBayer().transfer_to(*this); 2.17860 + } 2.17861 + 2.17862 + CImg<T> get_RGBtoBayer() const { 2.17863 + if (is_empty()) return *this; 2.17864 + if (dim!=3) 2.17865 + throw CImgInstanceException("CImg<%s>::RGBtoBayer() : Input image dimension is dim=%u, " 2.17866 + "should be a (R,G,B) image (dim=3)", 2.17867 + pixel_type(),dim); 2.17868 + CImg<T> res(width,height,depth,1); 2.17869 + const T *pR = ptr(0,0,0,0), *pG = ptr(0,0,0,1), *pB = ptr(0,0,0,2); 2.17870 + T *ptrd = res.data; 2.17871 + cimg_forXYZ(*this,x,y,z) { 2.17872 + if (y%2) { 2.17873 + if (x%2) *(ptrd++) = *pB; 2.17874 + else *(ptrd++) = *pG; 2.17875 + } else { 2.17876 + if (x%2) *(ptrd++) = *pG; 2.17877 + else *(ptrd++) = *pR; 2.17878 + } 2.17879 + ++pR; ++pG; ++pB; 2.17880 + } 2.17881 + return res; 2.17882 + } 2.17883 + 2.17884 + //! Convert a Bayer-coded image to a (R,G,B) color image. 2.17885 + CImg<T>& BayertoRGB(const unsigned int interpolation_type=3) { 2.17886 + return get_BayertoRGB(interpolation_type).transfer_to(*this); 2.17887 + } 2.17888 + 2.17889 + CImg<Tuchar> get_BayertoRGB(const unsigned int interpolation_type=3) const { 2.17890 + if (is_empty()) return *this; 2.17891 + if (dim!=1) 2.17892 + throw CImgInstanceException("CImg<%s>::BayertoRGB() : Input image dimension is dim=%u, " 2.17893 + "should be a Bayer image (dim=1)", 2.17894 + pixel_type(),dim); 2.17895 + CImg<Tuchar> res(width,height,depth,3); 2.17896 + CImg_3x3(I,T); 2.17897 + Tuchar *pR = res.ptr(0,0,0,0), *pG = res.ptr(0,0,0,1), *pB = res.ptr(0,0,0,2); 2.17898 + switch (interpolation_type) { 2.17899 + case 3 : { // Edge-directed 2.17900 + CImg_3x3(R,T); 2.17901 + CImg_3x3(G,T); 2.17902 + CImg_3x3(B,T); 2.17903 + cimg_forXYZ(*this,x,y,z) { 2.17904 + const int _p1x = x?x-1:1, _p1y = y?y-1:1, _n1x = x<dimx()-1?x+1:x-1, _n1y = y<dimy()-1?y+1:y-1; 2.17905 + cimg_get3x3(*this,x,y,z,0,I); 2.17906 + if (y%2) { 2.17907 + if (x%2) { 2.17908 + const Tfloat alpha = cimg::sqr((Tfloat)Inc - Ipc), beta = cimg::sqr((Tfloat)Icn - Icp), cx = 1/(1+alpha), cy = 1/(1+beta); 2.17909 + *pG = (Tuchar)((cx*(Inc+Ipc) + cy*(Icn+Icp))/(2*(cx+cy))); 2.17910 + } else *pG = (Tuchar)Icc; 2.17911 + } else { 2.17912 + if (x%2) *pG = (Tuchar)Icc; 2.17913 + else { 2.17914 + const Tfloat alpha = cimg::sqr((Tfloat)Inc - Ipc), beta = cimg::sqr((Tfloat)Icn - Icp), cx = 1/(1+alpha), cy = 1/(1+beta); 2.17915 + *pG = (Tuchar)((cx*(Inc+Ipc) + cy*(Icn+Icp))/(2*(cx+cy))); 2.17916 + } 2.17917 + } 2.17918 + ++pG; 2.17919 + } 2.17920 + cimg_forXYZ(*this,x,y,z) { 2.17921 + const int _p1x = x?x-1:1, _p1y = y?y-1:1, _n1x = x<dimx()-1?x+1:x-1, _n1y = y<dimy()-1?y+1:y-1; 2.17922 + cimg_get3x3(*this,x,y,z,0,I); 2.17923 + cimg_get3x3(res,x,y,z,1,G); 2.17924 + if (y%2) { 2.17925 + if (x%2) *pB = (Tuchar)Icc; 2.17926 + else { *pR = (Tuchar)((Icn+Icp)/2); *pB = (Tuchar)((Inc+Ipc)/2); } 2.17927 + } else { 2.17928 + if (x%2) { *pR = (Tuchar)((Inc+Ipc)/2); *pB = (Tuchar)((Icn+Icp)/2); } 2.17929 + else *pR = (Tuchar)Icc; 2.17930 + } 2.17931 + ++pR; ++pB; 2.17932 + } 2.17933 + pR = res.ptr(0,0,0,0); 2.17934 + pG = res.ptr(0,0,0,1); 2.17935 + pB = res.ptr(0,0,0,2); 2.17936 + cimg_forXYZ(*this,x,y,z) { 2.17937 + const int _p1x = x?x-1:1, _p1y = y?y-1:1, _n1x = x<dimx()-1?x+1:x-1, _n1y = y<dimy()-1?y+1:y-1; 2.17938 + cimg_get3x3(res,x,y,z,0,R); 2.17939 + cimg_get3x3(res,x,y,z,1,G); 2.17940 + cimg_get3x3(res,x,y,z,2,B); 2.17941 + if (y%2) { 2.17942 + if (x%2) { 2.17943 + const float alpha = (float)cimg::sqr(Rnc-Rpc), beta = (float)cimg::sqr(Rcn-Rcp), cx = 1/(1+alpha), cy = 1/(1+beta); 2.17944 + *pR = (Tuchar)((cx*(Rnc+Rpc) + cy*(Rcn+Rcp))/(2*(cx+cy))); 2.17945 + } 2.17946 + } else { 2.17947 + if (!(x%2)) { 2.17948 + const float alpha = (float)cimg::sqr(Bnc-Bpc), beta = (float)cimg::sqr(Bcn-Bcp), cx = 1/(1+alpha), cy = 1/(1+beta); 2.17949 + *pB = (Tuchar)((cx*(Bnc+Bpc) + cy*(Bcn+Bcp))/(2*(cx+cy))); 2.17950 + } 2.17951 + } 2.17952 + ++pR; ++pG; ++pB; 2.17953 + } 2.17954 + } break; 2.17955 + case 2 : { // Linear interpolation 2.17956 + cimg_forXYZ(*this,x,y,z) { 2.17957 + const int _p1x = x?x-1:1, _p1y = y?y-1:1, _n1x = x<dimx()-1?x+1:x-1, _n1y = y<dimy()-1?y+1:y-1; 2.17958 + cimg_get3x3(*this,x,y,z,0,I); 2.17959 + if (y%2) { 2.17960 + if (x%2) { *pR = (Tuchar)((Ipp+Inn+Ipn+Inp)/4); *pG = (Tuchar)((Inc+Ipc+Icn+Icp)/4); *pB = (Tuchar)Icc; } 2.17961 + else { *pR = (Tuchar)((Icp+Icn)/2); *pG = (Tuchar)Icc; *pB = (Tuchar)((Inc+Ipc)/2); } 2.17962 + } else { 2.17963 + if (x%2) { *pR = (Tuchar)((Ipc+Inc)/2); *pG = (Tuchar)Icc; *pB = (Tuchar)((Icn+Icp)/2); } 2.17964 + else { *pR = (Tuchar)Icc; *pG = (Tuchar)((Inc+Ipc+Icn+Icp)/4); *pB = (Tuchar)((Ipp+Inn+Ipn+Inp)/4); } 2.17965 + } 2.17966 + ++pR; ++pG; ++pB; 2.17967 + } 2.17968 + } break; 2.17969 + case 1 : { // Nearest neighbor interpolation 2.17970 + cimg_forXYZ(*this,x,y,z) { 2.17971 + const int _p1x = x?x-1:1, _p1y = y?y-1:1, _n1x = x<dimx()-1?x+1:x-1, _n1y = y<dimy()-1?y+1:y-1; 2.17972 + cimg_get3x3(*this,x,y,z,0,I); 2.17973 + if (y%2) { 2.17974 + if (x%2) { *pR = (Tuchar)cimg::min(Ipp,Inn,Ipn,Inp); *pG = (Tuchar)cimg::min(Inc,Ipc,Icn,Icp); *pB = (Tuchar)Icc; } 2.17975 + else { *pR = (Tuchar)cimg::min(Icn,Icp); *pG = (Tuchar)Icc; *pB = (Tuchar)cimg::min(Inc,Ipc); } 2.17976 + } else { 2.17977 + if (x%2) { *pR = (Tuchar)cimg::min(Inc,Ipc); *pG = (Tuchar)Icc; *pB = (Tuchar)cimg::min(Icn,Icp); } 2.17978 + else { *pR = (Tuchar)Icc; *pG = (Tuchar)cimg::min(Inc,Ipc,Icn,Icp); *pB = (Tuchar)cimg::min(Ipp,Inn,Ipn,Inp); } 2.17979 + } 2.17980 + ++pR; ++pG; ++pB; 2.17981 + } 2.17982 + } break; 2.17983 + default : { // 0-filling interpolation 2.17984 + const T *ptrs = data; 2.17985 + res.fill(0); 2.17986 + cimg_forXYZ(*this,x,y,z) { 2.17987 + const T val = *(ptrs++); 2.17988 + if (y%2) { if (x%2) *pB = val; else *pG = val; } else { if (x%2) *pG = val; else *pR = val; } 2.17989 + ++pR; ++pG; ++pB; 2.17990 + } 2.17991 + } 2.17992 + } 2.17993 + return res; 2.17994 + } 2.17995 + 2.17996 + //@} 2.17997 + //------------------- 2.17998 + // 2.17999 + //! \name Drawing 2.18000 + //@{ 2.18001 + //------------------- 2.18002 + 2.18003 + // The following _draw_scanline() routines are *non user-friendly functions*, used only for internal purpose. 2.18004 + // Pre-requisites : x0<x1, y-coordinate is valid, col is valid. 2.18005 + template<typename tc> 2.18006 + CImg<T>& _draw_scanline(const int x0, const int x1, const int y, 2.18007 + const tc *const color, const float opacity=1, 2.18008 + const float brightness=1, const bool init=false) { 2.18009 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.18010 + static float nopacity = 0, copacity = 0; 2.18011 + static unsigned int whz = 0; 2.18012 + static const tc *col = 0; 2.18013 + if (init) { 2.18014 + nopacity = cimg::abs(opacity); 2.18015 + copacity = 1 - cimg::max(opacity,0); 2.18016 + whz = width*height*depth; 2.18017 + } else { 2.18018 + const int nx0 = x0>0?x0:0, nx1 = x1<dimx()?x1:dimx()-1, dx = nx1 - nx0; 2.18019 + if (dx>=0) { 2.18020 + col = color; 2.18021 + const unsigned int off = whz-dx-1; 2.18022 + T *ptrd = ptr(nx0,y); 2.18023 + if (opacity>=1) { // ** Opaque drawing ** 2.18024 + if (brightness==1) { // Brightness==1 2.18025 + if (sizeof(T)!=1) cimg_forV(*this,k) { 2.18026 + const T val = (T)*(col++); 2.18027 + for (int x = dx; x>=0; --x) *(ptrd++) = val; 2.18028 + ptrd+=off; 2.18029 + } else cimg_forV(*this,k) { 2.18030 + const T val = (T)*(col++); 2.18031 + cimg_std::memset(ptrd,(int)val,dx+1); 2.18032 + ptrd+=whz; 2.18033 + } 2.18034 + } else if (brightness<1) { // Brightness<1 2.18035 + if (sizeof(T)!=1) cimg_forV(*this,k) { 2.18036 + const T val = (T)(*(col++)*brightness); 2.18037 + for (int x = dx; x>=0; --x) *(ptrd++) = val; 2.18038 + ptrd+=off; 2.18039 + } else cimg_forV(*this,k) { 2.18040 + const T val = (T)(*(col++)*brightness); 2.18041 + cimg_std::memset(ptrd,(int)val,dx+1); 2.18042 + ptrd+=whz; 2.18043 + } 2.18044 + } else { // Brightness>1 2.18045 + if (sizeof(T)!=1) cimg_forV(*this,k) { 2.18046 + const T val = (T)((2-brightness)**(col++) + (brightness-1)*maxval); 2.18047 + for (int x = dx; x>=0; --x) *(ptrd++) = val; 2.18048 + ptrd+=off; 2.18049 + } else cimg_forV(*this,k) { 2.18050 + const T val = (T)((2-brightness)**(col++) + (brightness-1)*maxval); 2.18051 + cimg_std::memset(ptrd,(int)val,dx+1); 2.18052 + ptrd+=whz; 2.18053 + } 2.18054 + } 2.18055 + } else { // ** Transparent drawing ** 2.18056 + if (brightness==1) { // Brightness==1 2.18057 + cimg_forV(*this,k) { 2.18058 + const T val = (T)*(col++); 2.18059 + for (int x = dx; x>=0; --x) { *ptrd = (T)(val*nopacity + *ptrd*copacity); ++ptrd; } 2.18060 + ptrd+=off; 2.18061 + } 2.18062 + } else if (brightness<=1) { // Brightness<1 2.18063 + cimg_forV(*this,k) { 2.18064 + const T val = (T)(*(col++)*brightness); 2.18065 + for (int x = dx; x>=0; --x) { *ptrd = (T)(val*nopacity + *ptrd*copacity); ++ptrd; } 2.18066 + ptrd+=off; 2.18067 + } 2.18068 + } else { // Brightness>1 2.18069 + cimg_forV(*this,k) { 2.18070 + const T val = (T)((2-brightness)**(col++) + (brightness-1)*maxval); 2.18071 + for (int x = dx; x>=0; --x) { *ptrd = (T)(val*nopacity + *ptrd*copacity); ++ptrd; } 2.18072 + ptrd+=off; 2.18073 + } 2.18074 + } 2.18075 + } 2.18076 + } 2.18077 + } 2.18078 + return *this; 2.18079 + } 2.18080 + 2.18081 + template<typename tc> 2.18082 + CImg<T>& _draw_scanline(const tc *const color, const float opacity=1) { 2.18083 + return _draw_scanline(0,0,0,color,opacity,0,true); 2.18084 + } 2.18085 + 2.18086 + //! Draw a 2D colored point (pixel). 2.18087 + /** 2.18088 + \param x0 X-coordinate of the point. 2.18089 + \param y0 Y-coordinate of the point. 2.18090 + \param color Pointer to \c dimv() consecutive values, defining the color values. 2.18091 + \param opacity Drawing opacity (optional). 2.18092 + \note 2.18093 + - Clipping is supported. 2.18094 + - To set pixel values without clipping needs, you should use the faster CImg::operator()() function. 2.18095 + \par Example: 2.18096 + \code 2.18097 + CImg<unsigned char> img(100,100,1,3,0); 2.18098 + const unsigned char color[] = { 255,128,64 }; 2.18099 + img.draw_point(50,50,color); 2.18100 + \endcode 2.18101 + **/ 2.18102 + template<typename tc> 2.18103 + CImg<T>& draw_point(const int x0, const int y0, 2.18104 + const tc *const color, const float opacity=1) { 2.18105 + return draw_point(x0,y0,0,color,opacity); 2.18106 + } 2.18107 + 2.18108 + //! Draw a 2D colored point (pixel). 2.18109 + template<typename tc> 2.18110 + CImg<T>& draw_point(const int x0, const int y0, 2.18111 + const CImg<tc>& color, const float opacity=1) { 2.18112 + return draw_point(x0,y0,color.data,opacity); 2.18113 + } 2.18114 + 2.18115 + //! Draw a 3D colored point (voxel). 2.18116 + template<typename tc> 2.18117 + CImg<T>& draw_point(const int x0, const int y0, const int z0, 2.18118 + const tc *const color, const float opacity=1) { 2.18119 + if (is_empty()) return *this; 2.18120 + if (!color) 2.18121 + throw CImgArgumentException("CImg<%s>::draw_point() : Specified color is (null)", 2.18122 + pixel_type()); 2.18123 + if (x0>=0 && y0>=0 && z0>=0 && x0<dimx() && y0<dimy() && z0<dimz()) { 2.18124 + const unsigned int whz = width*height*depth; 2.18125 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18126 + T *ptrd = ptr(x0,y0,z0,0); 2.18127 + const tc *col = color; 2.18128 + if (opacity>=1) cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=whz; } 2.18129 + else cimg_forV(*this,k) { *ptrd = (T)(*(col++)*nopacity + *ptrd*copacity); ptrd+=whz; } 2.18130 + } 2.18131 + return *this; 2.18132 + } 2.18133 + 2.18134 + //! Draw a 3D colored point (voxel). 2.18135 + template<typename tc> 2.18136 + CImg<T>& draw_point(const int x0, const int y0, const int z0, 2.18137 + const CImg<tc>& color, const float opacity=1) { 2.18138 + return draw_point(x0,y0,z0,color.data,opacity); 2.18139 + } 2.18140 + 2.18141 + // Draw a cloud of colored point (internal). 2.18142 + template<typename t, typename tc> 2.18143 + CImg<T>& _draw_point(const t& points, const unsigned int W, const unsigned int H, 2.18144 + const tc *const color, const float opacity) { 2.18145 + if (is_empty() || !points || !W) return *this; 2.18146 + switch (H) { 2.18147 + case 0 : case 1 : 2.18148 + throw CImgArgumentException("CImg<%s>::draw_point() : Given list of points is not valid.", 2.18149 + pixel_type()); 2.18150 + case 2 : { 2.18151 + for (unsigned int i = 0; i<W; ++i) { 2.18152 + const int x = (int)points(i,0), y = (int)points(i,1); 2.18153 + draw_point(x,y,color,opacity); 2.18154 + } 2.18155 + } break; 2.18156 + default : { 2.18157 + for (unsigned int i = 0; i<W; ++i) { 2.18158 + const int x = (int)points(i,0), y = (int)points(i,1), z = (int)points(i,2); 2.18159 + draw_point(x,y,z,color,opacity); 2.18160 + } 2.18161 + } 2.18162 + } 2.18163 + return *this; 2.18164 + } 2.18165 + 2.18166 + //! Draw a cloud of colored points. 2.18167 + /** 2.18168 + \param points Coordinates of vertices, stored as a list of vectors. 2.18169 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.18170 + \param opacity Drawing opacity (optional). 2.18171 + \note 2.18172 + - This function uses several call to the single CImg::draw_point() procedure, 2.18173 + depending on the vectors size in \p points. 2.18174 + \par Example: 2.18175 + \code 2.18176 + CImg<unsigned char> img(100,100,1,3,0); 2.18177 + const unsigned char color[] = { 255,128,64 }; 2.18178 + CImgList<int> points; 2.18179 + points.insert(CImg<int>::vector(0,0)). 2.18180 + .insert(CImg<int>::vector(70,10)). 2.18181 + .insert(CImg<int>::vector(80,60)). 2.18182 + .insert(CImg<int>::vector(10,90)); 2.18183 + img.draw_point(points,color); 2.18184 + \endcode 2.18185 + **/ 2.18186 + template<typename t, typename tc> 2.18187 + CImg<T>& draw_point(const CImgList<t>& points, 2.18188 + const tc *const color, const float opacity=1) { 2.18189 + unsigned int H = ~0U; cimglist_for(points,p) H = cimg::min(H,(unsigned int)(points[p].size())); 2.18190 + return _draw_point(points,points.size,H,color,opacity); 2.18191 + } 2.18192 + 2.18193 + //! Draw a cloud of colored points. 2.18194 + template<typename t, typename tc> 2.18195 + CImg<T>& draw_point(const CImgList<t>& points, 2.18196 + const CImg<tc>& color, const float opacity=1) { 2.18197 + return draw_point(points,color.data,opacity); 2.18198 + } 2.18199 + 2.18200 + //! Draw a cloud of colored points. 2.18201 + /** 2.18202 + \note 2.18203 + - Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image 2.18204 + (sequence of vectors aligned along the x-axis). 2.18205 + **/ 2.18206 + template<typename t, typename tc> 2.18207 + CImg<T>& draw_point(const CImg<t>& points, 2.18208 + const tc *const color, const float opacity=1) { 2.18209 + return _draw_point(points,points.width,points.height,color,opacity); 2.18210 + } 2.18211 + 2.18212 + //! Draw a cloud of colored points. 2.18213 + template<typename t, typename tc> 2.18214 + CImg<T>& draw_point(const CImg<t>& points, 2.18215 + const CImg<tc>& color, const float opacity=1) { 2.18216 + return draw_point(points,color.data,opacity); 2.18217 + } 2.18218 + 2.18219 + //! Draw a 2D colored line. 2.18220 + /** 2.18221 + \param x0 X-coordinate of the starting line point. 2.18222 + \param y0 Y-coordinate of the starting line point. 2.18223 + \param x1 X-coordinate of the ending line point. 2.18224 + \param y1 Y-coordinate of the ending line point. 2.18225 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.18226 + \param opacity Drawing opacity (optional). 2.18227 + \param pattern An integer whose bits describe the line pattern (optional). 2.18228 + \param init_hatch Flag telling if a reinitialization of the hash state must be done (optional). 2.18229 + \note 2.18230 + - Clipping is supported. 2.18231 + - Line routine uses Bresenham's algorithm. 2.18232 + - Set \p init_hatch = false to draw consecutive hatched segments without breaking the line pattern. 2.18233 + \par Example: 2.18234 + \code 2.18235 + CImg<unsigned char> img(100,100,1,3,0); 2.18236 + const unsigned char color[] = { 255,128,64 }; 2.18237 + img.draw_line(40,40,80,70,color); 2.18238 + \endcode 2.18239 + **/ 2.18240 + template<typename tc> 2.18241 + CImg<T>& draw_line(const int x0, const int y0, 2.18242 + const int x1, const int y1, 2.18243 + const tc *const color, const float opacity=1, 2.18244 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18245 + if (is_empty()) return *this; 2.18246 + if (!color) 2.18247 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified color is (null)", 2.18248 + pixel_type()); 2.18249 + static unsigned int hatch = ~0U - (~0U>>1); 2.18250 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18251 + const bool xdir = x0<x1, ydir = y0<y1; 2.18252 + int 2.18253 + nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1, 2.18254 + &xleft = xdir?nx0:nx1, &yleft = xdir?ny0:ny1, 2.18255 + &xright = xdir?nx1:nx0, &yright = xdir?ny1:ny0, 2.18256 + &xup = ydir?nx0:nx1, &yup = ydir?ny0:ny1, 2.18257 + &xdown = ydir?nx1:nx0, &ydown = ydir?ny1:ny0; 2.18258 + if (xright<0 || xleft>=dimx()) return *this; 2.18259 + if (xleft<0) { yleft-=xleft*(yright - yleft)/(xright - xleft); xleft = 0; } 2.18260 + if (xright>=dimx()) { yright-=(xright - dimx())*(yright - yleft)/(xright - xleft); xright = dimx()-1; } 2.18261 + if (ydown<0 || yup>=dimy()) return *this; 2.18262 + if (yup<0) { xup-=yup*(xdown - xup)/(ydown - yup); yup = 0; } 2.18263 + if (ydown>=dimy()) { xdown-=(ydown - dimy())*(xdown - xup)/(ydown - yup); ydown = dimy()-1; } 2.18264 + T *ptrd0 = ptr(nx0,ny0); 2.18265 + int dx = xright - xleft, dy = ydown - yup; 2.18266 + const bool steep = dy>dx; 2.18267 + if (steep) cimg::swap(nx0,ny0,nx1,ny1,dx,dy); 2.18268 + const int 2.18269 + offx = (nx0<nx1?1:-1)*(steep?width:1), 2.18270 + offy = (ny0<ny1?1:-1)*(steep?1:width), 2.18271 + wh = width*height; 2.18272 + if (opacity>=1) { 2.18273 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18274 + if (pattern&hatch) { T *ptrd = ptrd0; const tc* col = color; cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=wh; }} 2.18275 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18276 + ptrd0+=offx; 2.18277 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18278 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18279 + T *ptrd = ptrd0; const tc* col = color; cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=wh; } 2.18280 + ptrd0+=offx; 2.18281 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18282 + } 2.18283 + } else { 2.18284 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18285 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18286 + if (pattern&hatch) { 2.18287 + T *ptrd = ptrd0; const tc* col = color; 2.18288 + cimg_forV(*this,k) { *ptrd = (T)(nopacity**(col++) + *ptrd*copacity); ptrd+=wh; } 2.18289 + } 2.18290 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18291 + ptrd0+=offx; 2.18292 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18293 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18294 + T *ptrd = ptrd0; const tc* col = color; cimg_forV(*this,k) { *ptrd = (T)(nopacity**(col++) + *ptrd*copacity); ptrd+=wh; } 2.18295 + ptrd0+=offx; 2.18296 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18297 + } 2.18298 + } 2.18299 + return *this; 2.18300 + } 2.18301 + 2.18302 + //! Draw a 2D colored line. 2.18303 + template<typename tc> 2.18304 + CImg<T>& draw_line(const int x0, const int y0, 2.18305 + const int x1, const int y1, 2.18306 + const CImg<tc>& color, const float opacity=1, 2.18307 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18308 + return draw_line(x0,y0,x1,y1,color.data,opacity,pattern,init_hatch); 2.18309 + } 2.18310 + 2.18311 + //! Draw a 2D colored line, with z-buffering. 2.18312 + template<typename tc> 2.18313 + CImg<T>& draw_line(float *const zbuffer, 2.18314 + const int x0, const int y0, const float z0, 2.18315 + const int x1, const int y1, const float z1, 2.18316 + const tc *const color, const float opacity=1, 2.18317 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18318 + if (!is_empty() && z0>0 && z1>0) { 2.18319 + if (!color) 2.18320 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified color is (null).", 2.18321 + pixel_type()); 2.18322 + static unsigned int hatch = ~0U - (~0U>>1); 2.18323 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18324 + const bool xdir = x0<x1, ydir = y0<y1; 2.18325 + int 2.18326 + nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1, 2.18327 + &xleft = xdir?nx0:nx1, &yleft = xdir?ny0:ny1, 2.18328 + &xright = xdir?nx1:nx0, &yright = xdir?ny1:ny0, 2.18329 + &xup = ydir?nx0:nx1, &yup = ydir?ny0:ny1, 2.18330 + &xdown = ydir?nx1:nx0, &ydown = ydir?ny1:ny0; 2.18331 + float 2.18332 + Z0 = 1/z0, Z1 = 1/z1, nz0 = Z0, nz1 = Z1, dz = Z1 - Z0, 2.18333 + &zleft = xdir?nz0:nz1, 2.18334 + &zright = xdir?nz1:nz0, 2.18335 + &zup = ydir?nz0:nz1, 2.18336 + &zdown = ydir?nz1:nz0; 2.18337 + if (xright<0 || xleft>=dimx()) return *this; 2.18338 + if (xleft<0) { 2.18339 + const int D = xright - xleft; 2.18340 + yleft-=xleft*(yright - yleft)/D; 2.18341 + zleft-=xleft*(zright - zleft)/D; 2.18342 + xleft = 0; 2.18343 + } 2.18344 + if (xright>=dimx()) { 2.18345 + const int d = xright - dimx(), D = xright - xleft; 2.18346 + yright-=d*(yright - yleft)/D; 2.18347 + zright-=d*(zright - zleft)/D; 2.18348 + xright = dimx()-1; 2.18349 + } 2.18350 + if (ydown<0 || yup>=dimy()) return *this; 2.18351 + if (yup<0) { 2.18352 + const int D = ydown - yup; 2.18353 + xup-=yup*(xdown - xup)/D; 2.18354 + zup-=yup*(zdown - zup)/D; 2.18355 + yup = 0; 2.18356 + } 2.18357 + if (ydown>=dimy()) { 2.18358 + const int d = ydown - dimy(), D = ydown - yup; 2.18359 + xdown-=d*(xdown - xup)/D; 2.18360 + zdown-=d*(zdown - zup)/D; 2.18361 + ydown = dimy()-1; 2.18362 + } 2.18363 + T *ptrd0 = ptr(nx0,ny0); 2.18364 + float *ptrz = zbuffer + nx0 + ny0*width; 2.18365 + int dx = xright - xleft, dy = ydown - yup; 2.18366 + const bool steep = dy>dx; 2.18367 + if (steep) cimg::swap(nx0,ny0,nx1,ny1,dx,dy); 2.18368 + const int 2.18369 + offx = (nx0<nx1?1:-1)*(steep?width:1), 2.18370 + offy = (ny0<ny1?1:-1)*(steep?1:width), 2.18371 + wh = width*height, 2.18372 + ndx = dx>0?dx:1; 2.18373 + if (opacity>=1) { 2.18374 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18375 + const float z = Z0 + x*dz/ndx; 2.18376 + if (z>*ptrz && pattern&hatch) { 2.18377 + *ptrz = z; 2.18378 + T *ptrd = ptrd0; const tc *col = color; 2.18379 + cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=wh; } 2.18380 + } 2.18381 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18382 + ptrd0+=offx; ptrz+=offx; 2.18383 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18384 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18385 + const float z = Z0 + x*dz/ndx; 2.18386 + if (z>*ptrz) { 2.18387 + *ptrz = z; 2.18388 + T *ptrd = ptrd0; const tc *col = color; 2.18389 + cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=wh; } 2.18390 + } 2.18391 + ptrd0+=offx; ptrz+=offx; 2.18392 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18393 + } 2.18394 + } else { 2.18395 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18396 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18397 + const float z = Z0 + x*dz/ndx; 2.18398 + if (z>*ptrz && pattern&hatch) { 2.18399 + *ptrz = z; 2.18400 + T *ptrd = ptrd0; const tc *col = color; 2.18401 + cimg_forV(*this,k) { *ptrd = (T)(nopacity**(col++) + *ptrd*copacity); ptrd+=wh; } 2.18402 + } 2.18403 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18404 + ptrd0+=offx; ptrz+=offx; 2.18405 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18406 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18407 + const float z = Z0 + x*dz/ndx; 2.18408 + if (z>*ptrz) { 2.18409 + *ptrz = z; 2.18410 + T *ptrd = ptrd0; const tc *col = color; 2.18411 + cimg_forV(*this,k) { *ptrd = (T)(nopacity**(col++) + *ptrd*copacity); ptrd+=wh; } 2.18412 + } 2.18413 + ptrd0+=offx; ptrz+=offx; 2.18414 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18415 + } 2.18416 + } 2.18417 + } 2.18418 + return *this; 2.18419 + } 2.18420 + 2.18421 + //! Draw a 2D colored line, with z-buffering. 2.18422 + template<typename tc> 2.18423 + CImg<T>& draw_line(float *const zbuffer, 2.18424 + const int x0, const int y0, const float z0, 2.18425 + const int x1, const int y1, const float z1, 2.18426 + const CImg<tc>& color, const float opacity=1, 2.18427 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18428 + return draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color.data,opacity,pattern,init_hatch); 2.18429 + } 2.18430 + 2.18431 + //! Draw a 3D colored line. 2.18432 + template<typename tc> 2.18433 + CImg<T>& draw_line(const int x0, const int y0, const int z0, 2.18434 + const int x1, const int y1, const int z1, 2.18435 + const tc *const color, const float opacity=1, 2.18436 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18437 + if (is_empty()) return *this; 2.18438 + if (!color) 2.18439 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified color is (null)", 2.18440 + pixel_type()); 2.18441 + static unsigned int hatch = ~0U - (~0U>>1); 2.18442 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18443 + int nx0 = x0, ny0 = y0, nz0 = z0, nx1 = x1, ny1 = y1, nz1 = z1; 2.18444 + if (nx0>nx1) cimg::swap(nx0,nx1,ny0,ny1,nz0,nz1); 2.18445 + if (nx1<0 || nx0>=dimx()) return *this; 2.18446 + if (nx0<0) { const int D = 1 + nx1 - nx0; ny0-=nx0*(1 + ny1 - ny0)/D; nz0-=nx0*(1 + nz1 - nz0)/D; nx0 = 0; } 2.18447 + if (nx1>=dimx()) { const int d = nx1-dimx(), D = 1 + nx1 - nx0; ny1+=d*(1 + ny0 - ny1)/D; nz1+=d*(1 + nz0 - nz1)/D; nx1 = dimx()-1; } 2.18448 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nz0,nz1); 2.18449 + if (ny1<0 || ny0>=dimy()) return *this; 2.18450 + if (ny0<0) { const int D = 1 + ny1 - ny0; nx0-=ny0*(1 + nx1 - nx0)/D; nz0-=ny0*(1 + nz1 - nz0)/D; ny0 = 0; } 2.18451 + if (ny1>=dimy()) { const int d = ny1-dimy(), D = 1 + ny1 - ny0; nx1+=d*(1 + nx0 - nx1)/D; nz1+=d*(1 + nz0 - nz1)/D; ny1 = dimy()-1; } 2.18452 + if (nz0>nz1) cimg::swap(nx0,nx1,ny0,ny1,nz0,nz1); 2.18453 + if (nz1<0 || nz0>=dimz()) return *this; 2.18454 + if (nz0<0) { const int D = 1 + nz1 - nz0; nx0-=nz0*(1 + nx1 - nx0)/D; ny0-=nz0*(1 + ny1 - ny0)/D; nz0 = 0; } 2.18455 + if (nz1>=dimz()) { const int d = nz1-dimz(), D = 1 + nz1 - nz0; nx1+=d*(1 + nx0 - nx1)/D; ny1+=d*(1 + ny0 - ny1)/D; nz1 = dimz()-1; } 2.18456 + const unsigned int dmax = cimg::max(cimg::abs(nx1 - nx0),cimg::abs(ny1 - ny0),nz1 - nz0), whz = width*height*depth; 2.18457 + const float px = (nx1 - nx0)/(float)dmax, py = (ny1 - ny0)/(float)dmax, pz = (nz1 - nz0)/(float)dmax; 2.18458 + float x = (float)nx0, y = (float)ny0, z = (float)nz0; 2.18459 + if (opacity>=1) for (unsigned int t = 0; t<=dmax; ++t) { 2.18460 + if (!(~pattern) || (~pattern && pattern&hatch)) { 2.18461 + T* ptrd = ptr((unsigned int)x,(unsigned int)y,(unsigned int)z); 2.18462 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=whz; } 2.18463 + } 2.18464 + x+=px; y+=py; z+=pz; if (pattern) { hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); } 2.18465 + } else { 2.18466 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18467 + for (unsigned int t = 0; t<=dmax; ++t) { 2.18468 + if (!(~pattern) || (~pattern && pattern&hatch)) { 2.18469 + T* ptrd = ptr((unsigned int)x,(unsigned int)y,(unsigned int)z); 2.18470 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)(*(col++)*nopacity + *ptrd*copacity); ptrd+=whz; } 2.18471 + } 2.18472 + x+=px; y+=py; z+=pz; if (pattern) { hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); } 2.18473 + } 2.18474 + } 2.18475 + return *this; 2.18476 + } 2.18477 + 2.18478 + //! Draw a 3D colored line. 2.18479 + template<typename tc> 2.18480 + CImg<T>& draw_line(const int x0, const int y0, const int z0, 2.18481 + const int x1, const int y1, const int z1, 2.18482 + const CImg<tc>& color, const float opacity=1, 2.18483 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18484 + return draw_line(x0,y0,z0,x1,y1,z1,color.data,opacity,pattern,init_hatch); 2.18485 + } 2.18486 + 2.18487 + //! Draw a 2D textured line. 2.18488 + /** 2.18489 + \param x0 X-coordinate of the starting line point. 2.18490 + \param y0 Y-coordinate of the starting line point. 2.18491 + \param x1 X-coordinate of the ending line point. 2.18492 + \param y1 Y-coordinate of the ending line point. 2.18493 + \param texture Texture image defining the pixel colors. 2.18494 + \param tx0 X-coordinate of the starting texture point. 2.18495 + \param ty0 Y-coordinate of the starting texture point. 2.18496 + \param tx1 X-coordinate of the ending texture point. 2.18497 + \param ty1 Y-coordinate of the ending texture point. 2.18498 + \param opacity Drawing opacity (optional). 2.18499 + \param pattern An integer whose bits describe the line pattern (optional). 2.18500 + \param init_hatch Flag telling if the hash variable must be reinitialized (optional). 2.18501 + \note 2.18502 + - Clipping is supported but not for texture coordinates. 2.18503 + - Line routine uses the well known Bresenham's algorithm. 2.18504 + \par Example: 2.18505 + \code 2.18506 + CImg<unsigned char> img(100,100,1,3,0), texture("texture256x256.ppm"); 2.18507 + const unsigned char color[] = { 255,128,64 }; 2.18508 + img.draw_line(40,40,80,70,texture,0,0,255,255); 2.18509 + \endcode 2.18510 + **/ 2.18511 + template<typename tc> 2.18512 + CImg<T>& draw_line(const int x0, const int y0, 2.18513 + const int x1, const int y1, 2.18514 + const CImg<tc>& texture, 2.18515 + const int tx0, const int ty0, 2.18516 + const int tx1, const int ty1, 2.18517 + const float opacity=1, 2.18518 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18519 + if (is_empty()) return *this; 2.18520 + if (!texture || texture.dim<dim) 2.18521 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.18522 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.18523 + if (is_overlapped(texture)) return draw_line(x0,y0,x1,y1,+texture,tx0,ty0,tx1,ty1,opacity,pattern,init_hatch); 2.18524 + static unsigned int hatch = ~0U - (~0U>>1); 2.18525 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18526 + const bool xdir = x0<x1, ydir = y0<y1; 2.18527 + int 2.18528 + dtx = tx1-tx0, dty = ty1-ty0, 2.18529 + nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1, 2.18530 + tnx0 = tx0, tnx1 = tx1, tny0 = ty0, tny1 = ty1, 2.18531 + &xleft = xdir?nx0:nx1, &yleft = xdir?ny0:ny1, &xright = xdir?nx1:nx0, &yright = xdir?ny1:ny0, 2.18532 + &txleft = xdir?tnx0:tnx1, &tyleft = xdir?tny0:tny1, &txright = xdir?tnx1:tnx0, &tyright = xdir?tny1:tny0, 2.18533 + &xup = ydir?nx0:nx1, &yup = ydir?ny0:ny1, &xdown = ydir?nx1:nx0, &ydown = ydir?ny1:ny0, 2.18534 + &txup = ydir?tnx0:tnx1, &tyup = ydir?tny0:tny1, &txdown = ydir?tnx1:tnx0, &tydown = ydir?tny1:tny0; 2.18535 + if (xright<0 || xleft>=dimx()) return *this; 2.18536 + if (xleft<0) { 2.18537 + const int D = xright - xleft; 2.18538 + yleft-=xleft*(yright - yleft)/D; 2.18539 + txleft-=xleft*(txright - txleft)/D; 2.18540 + tyleft-=xleft*(tyright - tyleft)/D; 2.18541 + xleft = 0; 2.18542 + } 2.18543 + if (xright>=dimx()) { 2.18544 + const int d = xright - dimx(), D = xright - xleft; 2.18545 + yright-=d*(yright - yleft)/D; 2.18546 + txright-=d*(txright - txleft)/D; 2.18547 + tyright-=d*(tyright - tyleft)/D; 2.18548 + xright = dimx()-1; 2.18549 + } 2.18550 + if (ydown<0 || yup>=dimy()) return *this; 2.18551 + if (yup<0) { 2.18552 + const int D = ydown - yup; 2.18553 + xup-=yup*(xdown - xup)/D; 2.18554 + txup-=yup*(txdown - txup)/D; 2.18555 + tyup-=yup*(tydown - tyup)/D; 2.18556 + yup = 0; 2.18557 + } 2.18558 + if (ydown>=dimy()) { 2.18559 + const int d = ydown - dimy(), D = ydown - yup; 2.18560 + xdown-=d*(xdown - xup)/D; 2.18561 + txdown-=d*(txdown - txup)/D; 2.18562 + tydown-=d*(tydown - tyup)/D; 2.18563 + ydown = dimy()-1; 2.18564 + } 2.18565 + T *ptrd0 = ptr(nx0,ny0); 2.18566 + int dx = xright - xleft, dy = ydown - yup; 2.18567 + const bool steep = dy>dx; 2.18568 + if (steep) cimg::swap(nx0,ny0,nx1,ny1,dx,dy); 2.18569 + const int 2.18570 + offx = (nx0<nx1?1:-1)*(steep?width:1), 2.18571 + offy = (ny0<ny1?1:-1)*(steep?1:width), 2.18572 + wh = width*height, 2.18573 + ndx = dx>0?dx:1; 2.18574 + if (opacity>=1) { 2.18575 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18576 + if (pattern&hatch) { 2.18577 + T *ptrd = ptrd0; 2.18578 + const int tx = tx0 + x*dtx/ndx, ty = ty0 + x*dty/ndx; 2.18579 + cimg_forV(*this,k) { *ptrd = (T)texture(tx,ty,0,k); ptrd+=wh; } 2.18580 + } 2.18581 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18582 + ptrd0+=offx; 2.18583 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18584 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18585 + T *ptrd = ptrd0; 2.18586 + const int tx = tx0 + x*dtx/ndx, ty = ty0 + x*dty/ndx; 2.18587 + cimg_forV(*this,k) { *ptrd = (T)texture(tx,ty,0,k); ptrd+=wh; } 2.18588 + ptrd0+=offx; 2.18589 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18590 + } 2.18591 + } else { 2.18592 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18593 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18594 + T *ptrd = ptrd0; 2.18595 + if (pattern&hatch) { 2.18596 + const int tx = tx0 + x*dtx/ndx, ty = ty0 + x*dty/ndx; 2.18597 + cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture(tx,ty,0,k) + *ptrd*copacity); ptrd+=wh; } 2.18598 + } 2.18599 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18600 + ptrd0+=offx; 2.18601 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18602 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18603 + T *ptrd = ptrd0; 2.18604 + const int tx = tx0 + x*dtx/ndx, ty = ty0 + x*dty/ndx; 2.18605 + cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture(tx,ty,0,k) + *ptrd*copacity); ptrd+=wh; } 2.18606 + ptrd0+=offx; 2.18607 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18608 + } 2.18609 + } 2.18610 + return *this; 2.18611 + } 2.18612 + 2.18613 + //! Draw a 2D textured line, with perspective correction. 2.18614 + template<typename tc> 2.18615 + CImg<T>& draw_line(const int x0, const int y0, const float z0, 2.18616 + const int x1, const int y1, const float z1, 2.18617 + const CImg<tc>& texture, 2.18618 + const int tx0, const int ty0, 2.18619 + const int tx1, const int ty1, 2.18620 + const float opacity=1, 2.18621 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18622 + if (is_empty() && z0<=0 && z1<=0) return *this; 2.18623 + if (!texture || texture.dim<dim) 2.18624 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.18625 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.18626 + if (is_overlapped(texture)) return draw_line(x0,y0,z0,x1,y1,z1,+texture,tx0,ty0,tx1,ty1,opacity,pattern,init_hatch); 2.18627 + static unsigned int hatch = ~0U - (~0U>>1); 2.18628 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18629 + const bool xdir = x0<x1, ydir = y0<y1; 2.18630 + int 2.18631 + nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1, 2.18632 + &xleft = xdir?nx0:nx1, &yleft = xdir?ny0:ny1, 2.18633 + &xright = xdir?nx1:nx0, &yright = xdir?ny1:ny0, 2.18634 + &xup = ydir?nx0:nx1, &yup = ydir?ny0:ny1, 2.18635 + &xdown = ydir?nx1:nx0, &ydown = ydir?ny1:ny0; 2.18636 + float 2.18637 + Tx0 = tx0/z0, Tx1 = tx1/z1, 2.18638 + Ty0 = ty0/z0, Ty1 = ty1/z1, 2.18639 + Z0 = 1/z0, Z1 = 1/z1, 2.18640 + dz = Z1 - Z0, dtx = Tx1 - Tx0, dty = Ty1 - Ty0, 2.18641 + tnx0 = Tx0, tnx1 = Tx1, tny0 = Ty0, tny1 = Ty1, nz0 = Z0, nz1 = Z1, 2.18642 + &zleft = xdir?nz0:nz1, &txleft = xdir?tnx0:tnx1, &tyleft = xdir?tny0:tny1, 2.18643 + &zright = xdir?nz1:nz0, &txright = xdir?tnx1:tnx0, &tyright = xdir?tny1:tny0, 2.18644 + &zup = ydir?nz0:nz1, &txup = ydir?tnx0:tnx1, &tyup = ydir?tny0:tny1, 2.18645 + &zdown = ydir?nz1:nz0, &txdown = ydir?tnx1:tnx0, &tydown = ydir?tny1:tny0; 2.18646 + if (xright<0 || xleft>=dimx()) return *this; 2.18647 + if (xleft<0) { 2.18648 + const int D = xright - xleft; 2.18649 + yleft-=xleft*(yright - yleft)/D; 2.18650 + zleft-=xleft*(zright - zleft)/D; 2.18651 + txleft-=xleft*(txright - txleft)/D; 2.18652 + tyleft-=xleft*(tyright - tyleft)/D; 2.18653 + xleft = 0; 2.18654 + } 2.18655 + if (xright>=dimx()) { 2.18656 + const int d = xright - dimx(), D = xright - xleft; 2.18657 + yright-=d*(yright - yleft)/D; 2.18658 + zright-=d*(zright - zleft)/D; 2.18659 + txright-=d*(txright - txleft)/D; 2.18660 + tyright-=d*(tyright - tyleft)/D; 2.18661 + xright = dimx()-1; 2.18662 + } 2.18663 + if (ydown<0 || yup>=dimy()) return *this; 2.18664 + if (yup<0) { 2.18665 + const int D = ydown - yup; 2.18666 + xup-=yup*(xdown - xup)/D; 2.18667 + zup-=yup*(zdown - zup)/D; 2.18668 + txup-=yup*(txdown - txup)/D; 2.18669 + tyup-=yup*(tydown - tyup)/D; 2.18670 + yup = 0; 2.18671 + } 2.18672 + if (ydown>=dimy()) { 2.18673 + const int d = ydown - dimy(), D = ydown - yup; 2.18674 + xdown-=d*(xdown - xup)/D; 2.18675 + zdown-=d*(zdown - zup)/D; 2.18676 + txdown-=d*(txdown - txup)/D; 2.18677 + tydown-=d*(tydown - tyup)/D; 2.18678 + ydown = dimy()-1; 2.18679 + } 2.18680 + T *ptrd0 = ptr(nx0,ny0); 2.18681 + int dx = xright - xleft, dy = ydown - yup; 2.18682 + const bool steep = dy>dx; 2.18683 + if (steep) cimg::swap(nx0,ny0,nx1,ny1,dx,dy); 2.18684 + const int 2.18685 + offx = (nx0<nx1?1:-1)*(steep?width:1), 2.18686 + offy = (ny0<ny1?1:-1)*(steep?1:width), 2.18687 + wh = width*height, 2.18688 + ndx = dx>0?dx:1; 2.18689 + if (opacity>=1) { 2.18690 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18691 + if (pattern&hatch) { 2.18692 + const float z = Z0 + x*dz/ndx, tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18693 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)texture((int)(tx/z),(int)(ty/z),0,k); ptrd+=wh; } 2.18694 + } 2.18695 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18696 + ptrd0+=offx; 2.18697 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18698 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18699 + const float z = Z0 + x*dz/ndx, tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18700 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)texture((int)(tx/z),(int)(ty/z),0,k); ptrd+=wh; } 2.18701 + ptrd0+=offx; 2.18702 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18703 + } 2.18704 + } else { 2.18705 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18706 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18707 + if (pattern&hatch) { 2.18708 + const float z = Z0 + x*dz/ndx, tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18709 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture((int)(tx/z),(int)(ty/z),0,k) + *ptrd*copacity); ptrd+=wh; } 2.18710 + } 2.18711 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18712 + ptrd0+=offx; 2.18713 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18714 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18715 + const float z = Z0 + x*dz/ndx, tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18716 + T *ptrd = ptrd0; 2.18717 + cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture((int)(tx/z),(int)(ty/z),0,k) + *ptrd*copacity); ptrd+=wh; } 2.18718 + ptrd0+=offx; 2.18719 + if ((error-=dy)<0) { ptrd0+=offy; error+=dx; } 2.18720 + } 2.18721 + } 2.18722 + return *this; 2.18723 + } 2.18724 + 2.18725 + //! Draw a 2D textured line, with z-buffering and perspective correction. 2.18726 + template<typename tc> 2.18727 + CImg<T>& draw_line(float *const zbuffer, 2.18728 + const int x0, const int y0, const float z0, 2.18729 + const int x1, const int y1, const float z1, 2.18730 + const CImg<tc>& texture, 2.18731 + const int tx0, const int ty0, 2.18732 + const int tx1, const int ty1, 2.18733 + const float opacity=1, 2.18734 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18735 + if (!is_empty() && z0>0 && z1>0) { 2.18736 + if (!texture || texture.dim<dim) 2.18737 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.18738 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.18739 + if (is_overlapped(texture)) return draw_line(zbuffer,x0,y0,z0,x1,y1,z1,+texture,tx0,ty0,tx1,ty1,opacity,pattern,init_hatch); 2.18740 + static unsigned int hatch = ~0U - (~0U>>1); 2.18741 + if (init_hatch) hatch = ~0U - (~0U>>1); 2.18742 + const bool xdir = x0<x1, ydir = y0<y1; 2.18743 + int 2.18744 + nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1, 2.18745 + &xleft = xdir?nx0:nx1, &yleft = xdir?ny0:ny1, 2.18746 + &xright = xdir?nx1:nx0, &yright = xdir?ny1:ny0, 2.18747 + &xup = ydir?nx0:nx1, &yup = ydir?ny0:ny1, 2.18748 + &xdown = ydir?nx1:nx0, &ydown = ydir?ny1:ny0; 2.18749 + float 2.18750 + Tx0 = tx0/z0, Tx1 = tx1/z1, 2.18751 + Ty0 = ty0/z0, Ty1 = ty1/z1, 2.18752 + Z0 = 1/z0, Z1 = 1/z1, 2.18753 + dz = Z1 - Z0, dtx = Tx1 - Tx0, dty = Ty1 - Ty0, 2.18754 + tnx0 = Tx0, tnx1 = Tx1, tny0 = Ty0, tny1 = Ty1, nz0 = Z0, nz1 = Z1, 2.18755 + &zleft = xdir?nz0:nz1, &txleft = xdir?tnx0:tnx1, &tyleft = xdir?tny0:tny1, 2.18756 + &zright = xdir?nz1:nz0, &txright = xdir?tnx1:tnx0, &tyright = xdir?tny1:tny0, 2.18757 + &zup = ydir?nz0:nz1, &txup = ydir?tnx0:tnx1, &tyup = ydir?tny0:tny1, 2.18758 + &zdown = ydir?nz1:nz0, &txdown = ydir?tnx1:tnx0, &tydown = ydir?tny1:tny0; 2.18759 + if (xright<0 || xleft>=dimx()) return *this; 2.18760 + if (xleft<0) { 2.18761 + const int D = xright - xleft; 2.18762 + yleft-=xleft*(yright - yleft)/D; 2.18763 + zleft-=xleft*(zright - zleft)/D; 2.18764 + txleft-=xleft*(txright - txleft)/D; 2.18765 + tyleft-=xleft*(tyright - tyleft)/D; 2.18766 + xleft = 0; 2.18767 + } 2.18768 + if (xright>=dimx()) { 2.18769 + const int d = xright - dimx(), D = xright - xleft; 2.18770 + yright-=d*(yright - yleft)/D; 2.18771 + zright-=d*(zright - zleft)/D; 2.18772 + txright-=d*(txright - txleft)/D; 2.18773 + tyright-=d*(tyright - tyleft)/D; 2.18774 + xright = dimx()-1; 2.18775 + } 2.18776 + if (ydown<0 || yup>=dimy()) return *this; 2.18777 + if (yup<0) { 2.18778 + const int D = ydown - yup; 2.18779 + xup-=yup*(xdown - xup)/D; 2.18780 + zup-=yup*(zdown - zup)/D; 2.18781 + txup-=yup*(txdown - txup)/D; 2.18782 + tyup-=yup*(tydown - tyup)/D; 2.18783 + yup = 0; 2.18784 + } 2.18785 + if (ydown>=dimy()) { 2.18786 + const int d = ydown - dimy(), D = ydown - yup; 2.18787 + xdown-=d*(xdown - xup)/D; 2.18788 + zdown-=d*(zdown - zup)/D; 2.18789 + txdown-=d*(txdown - txup)/D; 2.18790 + tydown-=d*(tydown - tyup)/D; 2.18791 + ydown = dimy()-1; 2.18792 + } 2.18793 + T *ptrd0 = ptr(nx0,ny0); 2.18794 + float *ptrz = zbuffer + nx0 + ny0*width; 2.18795 + int dx = xright - xleft, dy = ydown - yup; 2.18796 + const bool steep = dy>dx; 2.18797 + if (steep) cimg::swap(nx0,ny0,nx1,ny1,dx,dy); 2.18798 + const int 2.18799 + offx = (nx0<nx1?1:-1)*(steep?width:1), 2.18800 + offy = (ny0<ny1?1:-1)*(steep?1:width), 2.18801 + wh = width*height, 2.18802 + ndx = dx>0?dx:1; 2.18803 + if (opacity>=1) { 2.18804 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18805 + if (pattern&hatch) { 2.18806 + const float z = Z0 + x*dz/ndx; 2.18807 + if (z>*ptrz) { 2.18808 + *ptrz = z; 2.18809 + const float tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18810 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)texture((int)(tx/z),(int)(ty/z),0,k); ptrd+=wh; } 2.18811 + } 2.18812 + } 2.18813 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18814 + ptrd0+=offx; ptrz+=offx; 2.18815 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18816 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18817 + const float z = Z0 + x*dz/ndx; 2.18818 + if (z>*ptrz) { 2.18819 + *ptrz = z; 2.18820 + const float tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18821 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)texture((int)(tx/z),(int)(ty/z),0,k); ptrd+=wh; } 2.18822 + } 2.18823 + ptrd0+=offx; ptrz+=offx; 2.18824 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18825 + } 2.18826 + } else { 2.18827 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.18828 + if (~pattern) for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18829 + if (pattern&hatch) { 2.18830 + const float z = Z0 + x*dz/ndx; 2.18831 + if (z>*ptrz) { 2.18832 + *ptrz = z; 2.18833 + const float tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18834 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture((int)(tx/z),(int)(ty/z),0,k) + *ptrd*copacity); ptrd+=wh; } 2.18835 + } 2.18836 + } 2.18837 + hatch>>=1; if (!hatch) hatch = ~0U - (~0U>>1); 2.18838 + ptrd0+=offx; ptrz+=offx; 2.18839 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offy; error+=dx; } 2.18840 + } else for (int error = dx>>1, x = 0; x<=dx; ++x) { 2.18841 + const float z = Z0 + x*dz/ndx; 2.18842 + if (z>*ptrz) { 2.18843 + *ptrz = z; 2.18844 + const float tx = Tx0 + x*dtx/ndx, ty = Ty0 + x*dty/ndx; 2.18845 + T *ptrd = ptrd0; cimg_forV(*this,k) { *ptrd = (T)(nopacity*texture((int)(tx/z),(int)(ty/z),0,k) + *ptrd*copacity); ptrd+=wh; } 2.18846 + } 2.18847 + ptrd0+=offx; ptrz+=offx; 2.18848 + if ((error-=dy)<0) { ptrd0+=offy; ptrz+=offx; error+=dx; } 2.18849 + } 2.18850 + } 2.18851 + } 2.18852 + return *this; 2.18853 + } 2.18854 + 2.18855 + // Inner routine for drawing set of consecutive lines with generic type for coordinates. 2.18856 + template<typename t, typename tc> 2.18857 + CImg<T>& _draw_line(const t& points, const unsigned int W, const unsigned int H, 2.18858 + const tc *const color, const float opacity, 2.18859 + const unsigned int pattern, const bool init_hatch) { 2.18860 + if (is_empty() || !points || W<2) return *this; 2.18861 + bool ninit_hatch = init_hatch; 2.18862 + switch (H) { 2.18863 + case 0 : case 1 : 2.18864 + throw CImgArgumentException("CImg<%s>::draw_line() : Given list of points is not valid.", 2.18865 + pixel_type()); 2.18866 + case 2 : { 2.18867 + const int x0 = (int)points(0,0), y0 = (int)points(0,1); 2.18868 + int ox = x0, oy = y0; 2.18869 + for (unsigned int i = 1; i<W; ++i) { 2.18870 + const int x = (int)points(i,0), y = (int)points(i,1); 2.18871 + draw_line(ox,oy,x,y,color,opacity,pattern,ninit_hatch); 2.18872 + ninit_hatch = false; 2.18873 + ox = x; oy = y; 2.18874 + } 2.18875 + } break; 2.18876 + default : { 2.18877 + const int x0 = (int)points(0,0), y0 = (int)points(0,1), z0 = (int)points(0,2); 2.18878 + int ox = x0, oy = y0, oz = z0; 2.18879 + for (unsigned int i = 1; i<W; ++i) { 2.18880 + const int x = (int)points(i,0), y = (int)points(i,1), z = (int)points(i,2); 2.18881 + draw_line(ox,oy,oz,x,y,z,color,opacity,pattern,ninit_hatch); 2.18882 + ninit_hatch = false; 2.18883 + ox = x; oy = y; oz = z; 2.18884 + } 2.18885 + } 2.18886 + } 2.18887 + return *this; 2.18888 + } 2.18889 + 2.18890 + //! Draw a set of consecutive colored lines in the instance image. 2.18891 + /** 2.18892 + \param points Coordinates of vertices, stored as a list of vectors. 2.18893 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.18894 + \param opacity Drawing opacity (optional). 2.18895 + \param pattern An integer whose bits describe the line pattern (optional). 2.18896 + \param init_hatch If set to true, init hatch motif. 2.18897 + \note 2.18898 + - This function uses several call to the single CImg::draw_line() procedure, 2.18899 + depending on the vectors size in \p points. 2.18900 + \par Example: 2.18901 + \code 2.18902 + CImg<unsigned char> img(100,100,1,3,0); 2.18903 + const unsigned char color[] = { 255,128,64 }; 2.18904 + CImgList<int> points; 2.18905 + points.insert(CImg<int>::vector(0,0)). 2.18906 + .insert(CImg<int>::vector(70,10)). 2.18907 + .insert(CImg<int>::vector(80,60)). 2.18908 + .insert(CImg<int>::vector(10,90)); 2.18909 + img.draw_line(points,color); 2.18910 + \endcode 2.18911 + **/ 2.18912 + template<typename t, typename tc> 2.18913 + CImg<T>& draw_line(const CImgList<t>& points, 2.18914 + const tc *const color, const float opacity=1, 2.18915 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18916 + unsigned int H = ~0U; cimglist_for(points,p) H = cimg::min(H,(unsigned int)(points[p].size())); 2.18917 + return _draw_line(points,points.size,H,color,opacity,pattern,init_hatch); 2.18918 + } 2.18919 + 2.18920 + //! Draw a set of consecutive colored lines in the instance image. 2.18921 + template<typename t, typename tc> 2.18922 + CImg<T>& draw_line(const CImgList<t>& points, 2.18923 + const CImg<tc>& color, const float opacity=1, 2.18924 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18925 + return draw_line(points,color.data,opacity,pattern,init_hatch); 2.18926 + } 2.18927 + 2.18928 + //! Draw a set of consecutive colored lines in the instance image. 2.18929 + /** 2.18930 + \note 2.18931 + - Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image 2.18932 + (sequence of vectors aligned along the x-axis). 2.18933 + **/ 2.18934 + template<typename t, typename tc> 2.18935 + CImg<T>& draw_line(const CImg<t>& points, 2.18936 + const tc *const color, const float opacity=1, 2.18937 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18938 + return _draw_line(points,points.width,points.height,color,opacity,pattern,init_hatch); 2.18939 + } 2.18940 + 2.18941 + //! Draw a set of consecutive colored lines in the instance image. 2.18942 + template<typename t, typename tc> 2.18943 + CImg<T>& draw_line(const CImg<t>& points, 2.18944 + const CImg<tc>& color, const float opacity=1, 2.18945 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.18946 + return draw_line(points,color.data,opacity,pattern,init_hatch); 2.18947 + } 2.18948 + 2.18949 + // Inner routine for a drawing filled polygon with generic type for coordinates. 2.18950 + template<typename t, typename tc> 2.18951 + CImg<T>& _draw_polygon(const t& points, const unsigned int N, 2.18952 + const tc *const color, const float opacity) { 2.18953 + if (is_empty() || !points || N<3) return *this; 2.18954 + if (!color) 2.18955 + throw CImgArgumentException("CImg<%s>::draw_polygon() : Specified color is (null).", 2.18956 + pixel_type()); 2.18957 + _draw_scanline(color,opacity); 2.18958 + int xmin = (int)(~0U>>1), xmax = 0, ymin = (int)(~0U>>1), ymax = 0; 2.18959 + { for (unsigned int p = 0; p<N; ++p) { 2.18960 + const int x = (int)points(p,0), y = (int)points(p,1); 2.18961 + if (x<xmin) xmin = x; 2.18962 + if (x>xmax) xmax = x; 2.18963 + if (y<ymin) ymin = y; 2.18964 + if (y>ymax) ymax = y; 2.18965 + }} 2.18966 + if (xmax<0 || xmin>=dimx() || ymax<0 || ymin>=dimy()) return *this; 2.18967 + const unsigned int 2.18968 + nymin = ymin<0?0:(unsigned int)ymin, 2.18969 + nymax = ymax>=dimy()?height-1:(unsigned int)ymax, 2.18970 + dy = 1 + nymax - nymin; 2.18971 + CImg<intT> X(1+2*N,dy,1,1,0), tmp; 2.18972 + int cx = (int)points(0,0), cy = (int)points(0,1); 2.18973 + for (unsigned int cp = 0, p = 0; p<N; ++p) { 2.18974 + const unsigned int np = (p!=N-1)?p+1:0, ap = (np!=N-1)?np+1:0; 2.18975 + const int 2.18976 + nx = (int)points(np,0), ny = (int)points(np,1), ay = (int)points(ap,1), 2.18977 + y0 = cy - nymin, y1 = ny - nymin; 2.18978 + if (y0!=y1) { 2.18979 + const int countermin = ((ny<ay && cy<ny) || (ny>ay && cy>ny))?1:0; 2.18980 + for (int x = cx, y = y0, _sx = 1, _sy = 1, 2.18981 + _dx = nx>cx?nx-cx:((_sx=-1),cx-nx), 2.18982 + _dy = y1>y0?y1-y0:((_sy=-1),y0-y1), 2.18983 + _counter = ((_dx-=_dy?_dy*(_dx/_dy):0),_dy), 2.18984 + _err = _dx>>1, 2.18985 + _rx = _dy?(nx-cx)/_dy:0; 2.18986 + _counter>=countermin; 2.18987 + --_counter, y+=_sy, x+=_rx + ((_err-=_dx)<0?_err+=_dy,_sx:0)) 2.18988 + if (y>=0 && y<(int)dy) X(++X(0,y),y) = x; 2.18989 + cp = np; cx = nx; cy = ny; 2.18990 + } else { 2.18991 + const int pp = (cp?cp-1:N-1), py = (int)points(pp,1); 2.18992 + if ((cy>py && ay>cy) || (cy<py && ay<cy)) X(++X(0,y0),y0) = nx; 2.18993 + if (cy!=ay) { cp = np; cx = nx; cy = ny; } 2.18994 + } 2.18995 + } 2.18996 + for (int y = 0; y<(int)dy; ++y) { 2.18997 + tmp.assign(X.ptr(1,y),X(0,y),1,1,1,true).sort(); 2.18998 + for (int i = 1; i<=X(0,y); ) { 2.18999 + const int xb = X(i++,y), xe = X(i++,y); 2.19000 + _draw_scanline(xb,xe,nymin+y,color,opacity); 2.19001 + } 2.19002 + } 2.19003 + return *this; 2.19004 + } 2.19005 + 2.19006 + //! Draw a filled polygon in the instance image. 2.19007 + template<typename t, typename tc> 2.19008 + CImg<T>& draw_polygon(const CImgList<t>& points, 2.19009 + const tc *const color, const float opacity=1) { 2.19010 + if (!points.is_sameY(2)) 2.19011 + throw CImgArgumentException("CImg<%s>::draw_polygon() : Given list of points is not valid.", 2.19012 + pixel_type()); 2.19013 + return _draw_polygon(points,points.size,color,opacity); 2.19014 + } 2.19015 + 2.19016 + //! Draw a filled polygon in the instance image. 2.19017 + template<typename t, typename tc> 2.19018 + CImg<T>& draw_polygon(const CImgList<t>& points, 2.19019 + const CImg<tc>& color, const float opacity=1) { 2.19020 + return draw_polygon(points,color.data,opacity); 2.19021 + } 2.19022 + 2.19023 + //! Draw a filled polygon in the instance image. 2.19024 + template<typename t, typename tc> 2.19025 + CImg<T>& draw_polygon(const CImg<t>& points, 2.19026 + const tc *const color, const float opacity=1) { 2.19027 + if (points.height<2) 2.19028 + throw CImgArgumentException("CImg<%s>::draw_polygon() : Given list of points is not valid.", 2.19029 + pixel_type()); 2.19030 + return _draw_polygon(points,points.width,color,opacity); 2.19031 + } 2.19032 + 2.19033 + //! Draw a filled polygon in the instance image. 2.19034 + template<typename t, typename tc> 2.19035 + CImg<T>& draw_polygon(const CImg<t>& points, 2.19036 + const CImg<tc>& color, const float opacity=1) { 2.19037 + return draw_polygon(points,color.data,opacity); 2.19038 + } 2.19039 + 2.19040 + // Inner routine for drawing an outlined polygon with generic point coordinates. 2.19041 + template<typename t, typename tc> 2.19042 + CImg<T>& _draw_polygon(const t& points, const unsigned int W, const unsigned int H, 2.19043 + const tc *const color, const float opacity, 2.19044 + const unsigned int pattern) { 2.19045 + if (is_empty() || !points || W<3) return *this; 2.19046 + bool ninit_hatch = true; 2.19047 + switch (H) { 2.19048 + case 0 : case 1 : 2.19049 + throw CImgArgumentException("CImg<%s>::draw_polygon() : Given list of points is not valid.", 2.19050 + pixel_type()); 2.19051 + case 2 : { 2.19052 + const int x0 = (int)points(0,0), y0 = (int)points(0,1); 2.19053 + int ox = x0, oy = y0; 2.19054 + for (unsigned int i = 1; i<W; ++i) { 2.19055 + const int x = (int)points(i,0), y = (int)points(i,1); 2.19056 + draw_line(ox,oy,x,y,color,opacity,pattern,ninit_hatch); 2.19057 + ninit_hatch = false; 2.19058 + ox = x; oy = y; 2.19059 + } 2.19060 + draw_line(ox,oy,x0,y0,color,opacity,pattern,false); 2.19061 + } break; 2.19062 + default : { 2.19063 + const int x0 = (int)points(0,0), y0 = (int)points(0,1), z0 = (int)points(0,2); 2.19064 + int ox = x0, oy = y0, oz = z0; 2.19065 + for (unsigned int i = 1; i<W; ++i) { 2.19066 + const int x = (int)points(i,0), y = (int)points(i,1), z = (int)points(i,2); 2.19067 + draw_line(ox,oy,oz,x,y,z,color,opacity,pattern,ninit_hatch); 2.19068 + ninit_hatch = false; 2.19069 + ox = x; oy = y; oz = z; 2.19070 + } 2.19071 + draw_line(ox,oy,oz,x0,y0,z0,color,opacity,pattern,false); 2.19072 + } 2.19073 + } 2.19074 + return *this; 2.19075 + } 2.19076 + 2.19077 + //! Draw a polygon outline. 2.19078 + template<typename t, typename tc> 2.19079 + CImg<T>& draw_polygon(const CImgList<t>& points, 2.19080 + const tc *const color, const float opacity, 2.19081 + const unsigned int pattern) { 2.19082 + unsigned int H = ~0U; cimglist_for(points,p) H = cimg::min(H,(unsigned int)(points[p].size())); 2.19083 + return _draw_polygon(points,points.size,H,color,opacity,pattern); 2.19084 + } 2.19085 + 2.19086 + //! Draw a polygon outline. 2.19087 + template<typename t, typename tc> 2.19088 + CImg<T>& draw_polygon(const CImgList<t>& points, 2.19089 + const CImg<tc>& color, const float opacity, 2.19090 + const unsigned int pattern) { 2.19091 + return draw_polygon(points,color.data,opacity,pattern); 2.19092 + } 2.19093 + 2.19094 + //! Draw a polygon outline. 2.19095 + template<typename t, typename tc> 2.19096 + CImg<T>& draw_polygon(const CImg<t>& points, 2.19097 + const tc *const color, const float opacity, 2.19098 + const unsigned int pattern) { 2.19099 + return _draw_polygon(points,points.width,points.height,color,opacity,pattern); 2.19100 + } 2.19101 + 2.19102 + //! Draw a polygon outline. 2.19103 + template<typename t, typename tc> 2.19104 + CImg<T>& draw_polygon(const CImg<t>& points, 2.19105 + const CImg<tc>& color, const float opacity, 2.19106 + const unsigned int pattern) { 2.19107 + return draw_polygon(points,color.data,opacity,pattern); 2.19108 + } 2.19109 + 2.19110 + //! Draw a cubic spline curve in the instance image. 2.19111 + /** 2.19112 + \param x0 X-coordinate of the starting curve point 2.19113 + \param y0 Y-coordinate of the starting curve point 2.19114 + \param u0 X-coordinate of the starting velocity 2.19115 + \param v0 Y-coordinate of the starting velocity 2.19116 + \param x1 X-coordinate of the ending curve point 2.19117 + \param y1 Y-coordinate of the ending curve point 2.19118 + \param u1 X-coordinate of the ending velocity 2.19119 + \param v1 Y-coordinate of the ending velocity 2.19120 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.19121 + \param precision Curve drawing precision (optional). 2.19122 + \param opacity Drawing opacity (optional). 2.19123 + \param pattern An integer whose bits describe the line pattern (optional). 2.19124 + \param init_hatch If \c true, init hatch motif. 2.19125 + \note 2.19126 + - The curve is a 2D cubic Bezier spline, from the set of specified starting/ending points 2.19127 + and corresponding velocity vectors. 2.19128 + - The spline is drawn as a serie of connected segments. The \p precision parameter sets the 2.19129 + average number of pixels in each drawn segment. 2.19130 + - A cubic Bezier curve is sometimes defined by a set of 4 points { (\p x0,\p y0), (\p xa,\p ya), (\p xb,\p yb), (\p x1,\p y1) } 2.19131 + where (\p x0,\p y0) is the starting point, (\p x1,\p y1) is the ending point and (\p xa,\p ya), (\p xb,\p yb) are two 2.19132 + \e control points. 2.19133 + The starting and ending velocities (\p u0,\p v0) and (\p u1,\p v1) can be deduced easily from the control points as 2.19134 + \p u0 = (\p xa - \p x0), \p v0 = (\p ya - \p y0), \p u1 = (\p x1 - \p xb) and \p v1 = (\p y1 - \p yb). 2.19135 + \par Example: 2.19136 + \code 2.19137 + CImg<unsigned char> img(100,100,1,3,0); 2.19138 + const unsigned char color[] = { 255,255,255 }; 2.19139 + img.draw_spline(30,30,0,100,90,40,0,-100,color); 2.19140 + \endcode 2.19141 + **/ 2.19142 + template<typename tc> 2.19143 + CImg<T>& draw_spline(const int x0, const int y0, const float u0, const float v0, 2.19144 + const int x1, const int y1, const float u1, const float v1, 2.19145 + const tc *const color, const float opacity=1, 2.19146 + const float precision=4, const unsigned int pattern=~0U, 2.19147 + const bool init_hatch=true) { 2.19148 + if (is_empty()) return *this; 2.19149 + if (!color) 2.19150 + throw CImgArgumentException("CImg<%s>::draw_spline() : Specified color is (null)", 2.19151 + pixel_type()); 2.19152 + bool ninit_hatch = init_hatch; 2.19153 + const float 2.19154 + dx = (float)(x1 - x0), 2.19155 + dy = (float)(y1 - y0), 2.19156 + dmax = cimg::max(cimg::abs(dx),cimg::abs(dy)), 2.19157 + ax = -2*dx + u0 + u1, 2.19158 + bx = 3*dx - 2*u0 - u1, 2.19159 + ay = -2*dy + v0 + v1, 2.19160 + by = 3*dy - 2*v0 - v1, 2.19161 + xprecision = dmax>0?precision/dmax:1.0f, 2.19162 + tmax = 1 + (dmax>0?xprecision:0.0f); 2.19163 + int ox = x0, oy = y0; 2.19164 + for (float t = 0; t<tmax; t+=xprecision) { 2.19165 + const float 2.19166 + t2 = t*t, 2.19167 + t3 = t2*t; 2.19168 + const int 2.19169 + nx = (int)(ax*t3 + bx*t2 + u0*t + x0), 2.19170 + ny = (int)(ay*t3 + by*t2 + v0*t + y0); 2.19171 + draw_line(ox,oy,nx,ny,color,opacity,pattern,ninit_hatch); 2.19172 + ninit_hatch = false; 2.19173 + ox = nx; oy = ny; 2.19174 + } 2.19175 + return *this; 2.19176 + } 2.19177 + 2.19178 + //! Draw a cubic spline curve in the instance image. 2.19179 + template<typename tc> 2.19180 + CImg<T>& draw_spline(const int x0, const int y0, const float u0, const float v0, 2.19181 + const int x1, const int y1, const float u1, const float v1, 2.19182 + const CImg<tc>& color, const float opacity=1, 2.19183 + const float precision=4, const unsigned int pattern=~0U, 2.19184 + const bool init_hatch=true) { 2.19185 + return draw_spline(x0,y0,u0,v0,x1,y1,u1,v1,color.data,opacity,precision,pattern,init_hatch); 2.19186 + } 2.19187 + 2.19188 + //! Draw a cubic spline curve in the instance image (for volumetric images). 2.19189 + /** 2.19190 + \note 2.19191 + - Similar to CImg::draw_spline() for a 3D spline in a volumetric image. 2.19192 + **/ 2.19193 + template<typename tc> 2.19194 + CImg<T>& draw_spline(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, 2.19195 + const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, 2.19196 + const tc *const color, const float opacity=1, 2.19197 + const float precision=4, const unsigned int pattern=~0U, 2.19198 + const bool init_hatch=true) { 2.19199 + if (is_empty()) return *this; 2.19200 + if (!color) 2.19201 + throw CImgArgumentException("CImg<%s>::draw_spline() : Specified color is (null)", 2.19202 + pixel_type()); 2.19203 + bool ninit_hatch = init_hatch; 2.19204 + const float 2.19205 + dx = (float)(x1 - x0), 2.19206 + dy = (float)(y1 - y0), 2.19207 + dz = (float)(z1 - z0), 2.19208 + dmax = cimg::max(cimg::abs(dx),cimg::abs(dy),cimg::abs(dz)), 2.19209 + ax = -2*dx + u0 + u1, 2.19210 + bx = 3*dx - 2*u0 - u1, 2.19211 + ay = -2*dy + v0 + v1, 2.19212 + by = 3*dy - 2*v0 - v1, 2.19213 + az = -2*dz + w0 + w1, 2.19214 + bz = 3*dz - 2*w0 - w1, 2.19215 + xprecision = dmax>0?precision/dmax:1.0f, 2.19216 + tmax = 1 + (dmax>0?xprecision:0.0f); 2.19217 + int ox = x0, oy = y0, oz = z0; 2.19218 + for (float t = 0; t<tmax; t+=xprecision) { 2.19219 + const float 2.19220 + t2 = t*t, 2.19221 + t3 = t2*t; 2.19222 + const int 2.19223 + nx = (int)(ax*t3 + bx*t2 + u0*t + x0), 2.19224 + ny = (int)(ay*t3 + by*t2 + v0*t + y0), 2.19225 + nz = (int)(az*t3 + bz*t2 + w0*t + z0); 2.19226 + draw_line(ox,oy,oz,nx,ny,nz,color,opacity,pattern,ninit_hatch); 2.19227 + ninit_hatch = false; 2.19228 + ox = nx; oy = ny; oz = nz; 2.19229 + } 2.19230 + return *this; 2.19231 + } 2.19232 + 2.19233 + //! Draw a cubic spline curve in the instance image (for volumetric images). 2.19234 + template<typename tc> 2.19235 + CImg<T>& draw_spline(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, 2.19236 + const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, 2.19237 + const CImg<tc>& color, const float opacity=1, 2.19238 + const float precision=4, const unsigned int pattern=~0U, 2.19239 + const bool init_hatch=true) { 2.19240 + return draw_spline(x0,y0,z0,u0,v0,w0,x1,y1,z1,u1,v1,w1,color.data,opacity,precision,pattern,init_hatch); 2.19241 + } 2.19242 + 2.19243 + //! Draw a cubic spline curve in the instance image. 2.19244 + /** 2.19245 + \param x0 X-coordinate of the starting curve point 2.19246 + \param y0 Y-coordinate of the starting curve point 2.19247 + \param u0 X-coordinate of the starting velocity 2.19248 + \param v0 Y-coordinate of the starting velocity 2.19249 + \param x1 X-coordinate of the ending curve point 2.19250 + \param y1 Y-coordinate of the ending curve point 2.19251 + \param u1 X-coordinate of the ending velocity 2.19252 + \param v1 Y-coordinate of the ending velocity 2.19253 + \param texture Texture image defining line pixel colors. 2.19254 + \param tx0 X-coordinate of the starting texture point. 2.19255 + \param ty0 Y-coordinate of the starting texture point. 2.19256 + \param tx1 X-coordinate of the ending texture point. 2.19257 + \param ty1 Y-coordinate of the ending texture point. 2.19258 + \param precision Curve drawing precision (optional). 2.19259 + \param opacity Drawing opacity (optional). 2.19260 + \param pattern An integer whose bits describe the line pattern (optional). 2.19261 + \param init_hatch if \c true, reinit hatch motif. 2.19262 + **/ 2.19263 + template<typename t> 2.19264 + CImg<T>& draw_spline(const int x0, const int y0, const float u0, const float v0, 2.19265 + const int x1, const int y1, const float u1, const float v1, 2.19266 + const CImg<t>& texture, 2.19267 + const int tx0, const int ty0, const int tx1, const int ty1, 2.19268 + const float opacity=1, 2.19269 + const float precision=4, const unsigned int pattern=~0U, 2.19270 + const bool init_hatch=true) { 2.19271 + if (is_empty()) return *this; 2.19272 + if (!texture || texture.dim<dim) 2.19273 + throw CImgArgumentException("CImg<%s>::draw_line() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.19274 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.19275 + if (is_overlapped(texture)) return draw_spline(x0,y0,u0,v0,x1,y1,u1,v1,+texture,tx0,ty0,tx1,ty1,precision,opacity,pattern,init_hatch); 2.19276 + bool ninit_hatch = true; 2.19277 + const float 2.19278 + dx = (float)(x1 - x0), 2.19279 + dy = (float)(y1 - y0), 2.19280 + dmax = cimg::max(cimg::abs(dx),cimg::abs(dy)), 2.19281 + ax = -2*dx + u0 + u1, 2.19282 + bx = 3*dx - 2*u0 - u1, 2.19283 + ay = -2*dy + v0 + v1, 2.19284 + by = 3*dy - 2*v0 - v1, 2.19285 + xprecision = dmax>0?precision/dmax:1.0f, 2.19286 + tmax = 1 + (dmax>0?xprecision:0.0f); 2.19287 + int ox = x0, oy = y0, otx = tx0, oty = ty0; 2.19288 + for (float t1 = 0; t1<tmax; t1+=xprecision) { 2.19289 + const float 2.19290 + t2 = t1*t1, 2.19291 + t3 = t2*t1; 2.19292 + const int 2.19293 + nx = (int)(ax*t3 + bx*t2 + u0*t1 + x0), 2.19294 + ny = (int)(ay*t3 + by*t2 + v0*t1 + y0), 2.19295 + ntx = tx0 + (int)((tx1-tx0)*t1/tmax), 2.19296 + nty = ty0 + (int)((ty1-ty0)*t1/tmax); 2.19297 + draw_line(ox,oy,nx,ny,texture,otx,oty,ntx,nty,opacity,pattern,ninit_hatch); 2.19298 + ninit_hatch = false; 2.19299 + ox = nx; oy = ny; otx = ntx; oty = nty; 2.19300 + } 2.19301 + return *this; 2.19302 + } 2.19303 + 2.19304 + // Draw a set of connected spline curves in the instance image (internal). 2.19305 + template<typename tp, typename tt, typename tc> 2.19306 + CImg<T>& _draw_spline(const tp& points, const tt& tangents, const unsigned int W, const unsigned int H, 2.19307 + const tc *const color, const float opacity, 2.19308 + const bool close_set, const float precision, 2.19309 + const unsigned int pattern, const bool init_hatch) { 2.19310 + if (is_empty() || !points || !tangents || W<2) return *this; 2.19311 + bool ninit_hatch = init_hatch; 2.19312 + switch (H) { 2.19313 + case 0 : case 1 : 2.19314 + throw CImgArgumentException("CImg<%s>::draw_spline() : Given list of points or tangents is not valid.", 2.19315 + pixel_type()); 2.19316 + case 2 : { 2.19317 + const int x0 = (int)points(0,0), y0 = (int)points(0,1); 2.19318 + const float u0 = (float)tangents(0,0), v0 = (float)tangents(0,1); 2.19319 + int ox = x0, oy = y0; 2.19320 + float ou = u0, ov = v0; 2.19321 + for (unsigned int i = 1; i<W; ++i) { 2.19322 + const int x = (int)points(i,0), y = (int)points(i,1); 2.19323 + const float u = (float)tangents(i,0), v = (float)tangents(i,1); 2.19324 + draw_spline(ox,oy,ou,ov,x,y,u,v,color,precision,opacity,pattern,ninit_hatch); 2.19325 + ninit_hatch = false; 2.19326 + ox = x; oy = y; ou = u; ov = v; 2.19327 + } 2.19328 + if (close_set) draw_spline(ox,oy,ou,ov,x0,y0,u0,v0,color,precision,opacity,pattern,false); 2.19329 + } break; 2.19330 + default : { 2.19331 + const int x0 = (int)points(0,0), y0 = (int)points(0,1), z0 = (int)points(0,2); 2.19332 + const float u0 = (float)tangents(0,0), v0 = (float)tangents(0,1), w0 = (float)tangents(0,2); 2.19333 + int ox = x0, oy = y0, oz = z0; 2.19334 + float ou = u0, ov = v0, ow = w0; 2.19335 + for (unsigned int i = 1; i<W; ++i) { 2.19336 + const int x = (int)points(i,0), y = (int)points(i,1), z = (int)points(i,2); 2.19337 + const float u = (float)tangents(i,0), v = (float)tangents(i,1), w = (float)tangents(i,2); 2.19338 + draw_spline(ox,oy,oz,ou,ov,ow,x,y,z,u,v,w,color,opacity,pattern,ninit_hatch); 2.19339 + ninit_hatch = false; 2.19340 + ox = x; oy = y; oz = z; ou = u; ov = v; ow = w; 2.19341 + } 2.19342 + if (close_set) draw_spline(ox,oy,oz,ou,ov,ow,x0,y0,z0,u0,v0,w0,color,precision,opacity,pattern,false); 2.19343 + } 2.19344 + } 2.19345 + return *this; 2.19346 + } 2.19347 + 2.19348 + // Draw a set of connected spline curves in the instance image (internal). 2.19349 + template<typename tp, typename tc> 2.19350 + CImg<T>& _draw_spline(const tp& points, const unsigned int W, const unsigned int H, 2.19351 + const tc *const color, const float opacity, 2.19352 + const bool close_set, const float precision, 2.19353 + const unsigned int pattern, const bool init_hatch) { 2.19354 + if (is_empty() || !points || W<2) return *this; 2.19355 + CImg<Tfloat> tangents; 2.19356 + switch (H) { 2.19357 + case 0 : case 1 : 2.19358 + throw CImgArgumentException("CImg<%s>::draw_spline() : Given list of points or tangents is not valid.", 2.19359 + pixel_type()); 2.19360 + case 2 : { 2.19361 + tangents.assign(W,H); 2.19362 + for (unsigned int p = 0; p<W; ++p) { 2.19363 + const unsigned int 2.19364 + p0 = close_set?(p+W-1)%W:(p?p-1:0), 2.19365 + p1 = close_set?(p+1)%W:(p+1<W?p+1:p); 2.19366 + const float 2.19367 + x = (float)points(p,0), 2.19368 + y = (float)points(p,1), 2.19369 + x0 = (float)points(p0,0), 2.19370 + y0 = (float)points(p0,1), 2.19371 + x1 = (float)points(p1,0), 2.19372 + y1 = (float)points(p1,1), 2.19373 + u0 = x - x0, 2.19374 + v0 = y - y0, 2.19375 + n0 = 1e-8f + (float)cimg_std::sqrt(u0*u0 + v0*v0), 2.19376 + u1 = x1 - x, 2.19377 + v1 = y1 - y, 2.19378 + n1 = 1e-8f + (float)cimg_std::sqrt(u1*u1 + v1*v1), 2.19379 + u = u0/n0 + u1/n1, 2.19380 + v = v0/n0 + v1/n1, 2.19381 + n = 1e-8f + (float)cimg_std::sqrt(u*u + v*v), 2.19382 + fact = 0.5f*(n0 + n1); 2.19383 + tangents(p,0) = (Tfloat)(fact*u/n); 2.19384 + tangents(p,1) = (Tfloat)(fact*v/n); 2.19385 + } 2.19386 + } break; 2.19387 + default : { 2.19388 + tangents.assign(W,H); 2.19389 + for (unsigned int p = 0; p<W; ++p) { 2.19390 + const unsigned int 2.19391 + p0 = close_set?(p+W-1)%W:(p?p-1:0), 2.19392 + p1 = close_set?(p+1)%W:(p+1<W?p+1:p); 2.19393 + const float 2.19394 + x = (float)points(p,0), 2.19395 + y = (float)points(p,1), 2.19396 + z = (float)points(p,2), 2.19397 + x0 = (float)points(p0,0), 2.19398 + y0 = (float)points(p0,1), 2.19399 + z0 = (float)points(p0,2), 2.19400 + x1 = (float)points(p1,0), 2.19401 + y1 = (float)points(p1,1), 2.19402 + z1 = (float)points(p1,2), 2.19403 + u0 = x - x0, 2.19404 + v0 = y - y0, 2.19405 + w0 = z - z0, 2.19406 + n0 = 1e-8f + (float)cimg_std::sqrt(u0*u0 + v0*v0 + w0*w0), 2.19407 + u1 = x1 - x, 2.19408 + v1 = y1 - y, 2.19409 + w1 = z1 - z, 2.19410 + n1 = 1e-8f + (float)cimg_std::sqrt(u1*u1 + v1*v1 + w1*w1), 2.19411 + u = u0/n0 + u1/n1, 2.19412 + v = v0/n0 + v1/n1, 2.19413 + w = w0/n0 + w1/n1, 2.19414 + n = 1e-8f + (float)cimg_std::sqrt(u*u + v*v + w*w), 2.19415 + fact = 0.5f*(n0 + n1); 2.19416 + tangents(p,0) = (Tfloat)(fact*u/n); 2.19417 + tangents(p,1) = (Tfloat)(fact*v/n); 2.19418 + tangents(p,2) = (Tfloat)(fact*w/n); 2.19419 + } 2.19420 + } 2.19421 + } 2.19422 + return _draw_spline(points,tangents,W,H,color,opacity,close_set,precision,pattern,init_hatch); 2.19423 + } 2.19424 + 2.19425 + //! Draw a set of consecutive colored splines in the instance image. 2.19426 + template<typename tp, typename tt, typename tc> 2.19427 + CImg<T>& draw_spline(const CImgList<tp>& points, const CImgList<tt>& tangents, 2.19428 + const tc *const color, const float opacity=1, 2.19429 + const bool close_set=false, const float precision=4, 2.19430 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19431 + unsigned int H = ~0U; cimglist_for(points,p) H = cimg::min(H,(unsigned int)(points[p].size()),(unsigned int)(tangents[p].size())); 2.19432 + return _draw_spline(points,tangents,color,opacity,close_set,precision,pattern,init_hatch,points.size,H); 2.19433 + } 2.19434 + 2.19435 + //! Draw a set of consecutive colored splines in the instance image. 2.19436 + template<typename tp, typename tt, typename tc> 2.19437 + CImg<T>& draw_spline(const CImgList<tp>& points, const CImgList<tt>& tangents, 2.19438 + const CImg<tc>& color, const float opacity=1, 2.19439 + const bool close_set=false, const float precision=4, 2.19440 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19441 + return draw_spline(points,tangents,color.data,opacity,close_set,precision,pattern,init_hatch); 2.19442 + } 2.19443 + 2.19444 + //! Draw a set of consecutive colored splines in the instance image. 2.19445 + template<typename tp, typename tt, typename tc> 2.19446 + CImg<T>& draw_spline(const CImg<tp>& points, const CImg<tt>& tangents, 2.19447 + const tc *const color, const float opacity=1, 2.19448 + const bool close_set=false, const float precision=4, 2.19449 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19450 + return _draw_spline(points,tangents,color,opacity,close_set,precision,pattern,init_hatch,points.width,points.height); 2.19451 + } 2.19452 + 2.19453 + //! Draw a set of consecutive colored splines in the instance image. 2.19454 + template<typename tp, typename tt, typename tc> 2.19455 + CImg<T>& draw_spline(const CImg<tp>& points, const CImg<tt>& tangents, 2.19456 + const CImg<tc>& color, const float opacity=1, 2.19457 + const bool close_set=false, const float precision=4, 2.19458 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19459 + return draw_spline(points,tangents,color.data,opacity,close_set,precision,pattern,init_hatch); 2.19460 + } 2.19461 + 2.19462 + //! Draw a set of consecutive colored splines in the instance image. 2.19463 + template<typename t, typename tc> 2.19464 + CImg<T>& draw_spline(const CImgList<t>& points, 2.19465 + const tc *const color, const float opacity=1, 2.19466 + const bool close_set=false, const float precision=4, 2.19467 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19468 + unsigned int H = ~0U; 2.19469 + cimglist_for(points,p) { const unsigned int s = points[p].size(); if (s<H) H = s; } 2.19470 + return _draw_spline(points,color,opacity,close_set,precision,pattern,init_hatch,points.size,H); 2.19471 + } 2.19472 + 2.19473 + //! Draw a set of consecutive colored splines in the instance image. 2.19474 + template<typename t, typename tc> 2.19475 + CImg<T>& draw_spline(const CImgList<t>& points, 2.19476 + CImg<tc>& color, const float opacity=1, 2.19477 + const bool close_set=false, const float precision=4, 2.19478 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19479 + return draw_spline(points,color.data,opacity,close_set,precision,pattern,init_hatch); 2.19480 + } 2.19481 + 2.19482 + //! Draw a set of consecutive colored lines in the instance image. 2.19483 + template<typename t, typename tc> 2.19484 + CImg<T>& draw_spline(const CImg<t>& points, 2.19485 + const tc *const color, const float opacity=1, 2.19486 + const bool close_set=false, const float precision=4, 2.19487 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19488 + return _draw_spline(points,color,opacity,close_set,precision,pattern,init_hatch,points.width,points.height); 2.19489 + } 2.19490 + 2.19491 + //! Draw a set of consecutive colored lines in the instance image. 2.19492 + template<typename t, typename tc> 2.19493 + CImg<T>& draw_spline(const CImg<t>& points, 2.19494 + const CImg<tc>& color, const float opacity=1, 2.19495 + const bool close_set=false, const float precision=4, 2.19496 + const unsigned int pattern=~0U, const bool init_hatch=true) { 2.19497 + return draw_spline(points,color.data,opacity,close_set,precision,pattern,init_hatch); 2.19498 + } 2.19499 + 2.19500 + //! Draw a colored arrow in the instance image. 2.19501 + /** 2.19502 + \param x0 X-coordinate of the starting arrow point (tail). 2.19503 + \param y0 Y-coordinate of the starting arrow point (tail). 2.19504 + \param x1 X-coordinate of the ending arrow point (head). 2.19505 + \param y1 Y-coordinate of the ending arrow point (head). 2.19506 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.19507 + \param angle Aperture angle of the arrow head (optional). 2.19508 + \param length Length of the arrow head. If negative, describes a percentage of the arrow length (optional). 2.19509 + \param opacity Drawing opacity (optional). 2.19510 + \param pattern An integer whose bits describe the line pattern (optional). 2.19511 + \note 2.19512 + - Clipping is supported. 2.19513 + **/ 2.19514 + template<typename tc> 2.19515 + CImg<T>& draw_arrow(const int x0, const int y0, 2.19516 + const int x1, const int y1, 2.19517 + const tc *const color, const float opacity=1, 2.19518 + const float angle=30, const float length=-10, 2.19519 + const unsigned int pattern=~0U) { 2.19520 + if (is_empty()) return *this; 2.19521 + const float u = (float)(x0 - x1), v = (float)(y0 - y1), sq = u*u + v*v, 2.19522 + deg = (float)(angle*cimg::valuePI/180), ang = (sq>0)?(float)cimg_std::atan2(v,u):0.0f, 2.19523 + l = (length>=0)?length:-length*(float)cimg_std::sqrt(sq)/100; 2.19524 + if (sq>0) { 2.19525 + const float 2.19526 + cl = (float)cimg_std::cos(ang - deg), sl = (float)cimg_std::sin(ang - deg), 2.19527 + cr = (float)cimg_std::cos(ang + deg), sr = (float)cimg_std::sin(ang + deg); 2.19528 + const int 2.19529 + xl = x1 + (int)(l*cl), yl = y1 + (int)(l*sl), 2.19530 + xr = x1 + (int)(l*cr), yr = y1 + (int)(l*sr), 2.19531 + xc = x1 + (int)((l+1)*(cl+cr))/2, yc = y1 + (int)((l+1)*(sl+sr))/2; 2.19532 + draw_line(x0,y0,xc,yc,color,opacity,pattern).draw_triangle(x1,y1,xl,yl,xr,yr,color,opacity); 2.19533 + } else draw_point(x0,y0,color,opacity); 2.19534 + return *this; 2.19535 + } 2.19536 + 2.19537 + //! Draw a colored arrow in the instance image. 2.19538 + template<typename tc> 2.19539 + CImg<T>& draw_arrow(const int x0, const int y0, 2.19540 + const int x1, const int y1, 2.19541 + const CImg<tc>& color, const float opacity=1, 2.19542 + const float angle=30, const float length=-10, 2.19543 + const unsigned int pattern=~0U) { 2.19544 + return draw_arrow(x0,y0,x1,y1,color.data,opacity,angle,length,pattern); 2.19545 + } 2.19546 + 2.19547 + //! Draw an image. 2.19548 + /** 2.19549 + \param sprite Sprite image. 2.19550 + \param x0 X-coordinate of the sprite position. 2.19551 + \param y0 Y-coordinate of the sprite position. 2.19552 + \param z0 Z-coordinate of the sprite position. 2.19553 + \param v0 V-coordinate of the sprite position. 2.19554 + \param opacity Drawing opacity (optional). 2.19555 + \note 2.19556 + - Clipping is supported. 2.19557 + **/ 2.19558 + template<typename t> 2.19559 + CImg<T>& draw_image(const int x0, const int y0, const int z0, const int v0, 2.19560 + const CImg<t>& sprite, const float opacity=1) { 2.19561 + if (is_empty()) return *this; 2.19562 + if (!sprite) 2.19563 + throw CImgArgumentException("CImg<%s>::draw_image() : Specified sprite image (%u,%u,%u,%u,%p) is empty.", 2.19564 + pixel_type(),sprite.width,sprite.height,sprite.depth,sprite.dim,sprite.data); 2.19565 + if (is_overlapped(sprite)) return draw_image(x0,y0,z0,v0,+sprite,opacity); 2.19566 + const bool bx = (x0<0), by = (y0<0), bz = (z0<0), bv = (v0<0); 2.19567 + const int 2.19568 + lX = sprite.dimx() - (x0 + sprite.dimx()>dimx()?x0 + sprite.dimx() - dimx():0) + (bx?x0:0), 2.19569 + lY = sprite.dimy() - (y0 + sprite.dimy()>dimy()?y0 + sprite.dimy() - dimy():0) + (by?y0:0), 2.19570 + lZ = sprite.dimz() - (z0 + sprite.dimz()>dimz()?z0 + sprite.dimz() - dimz():0) + (bz?z0:0), 2.19571 + lV = sprite.dimv() - (v0 + sprite.dimv()>dimv()?v0 + sprite.dimv() - dimv():0) + (bv?v0:0); 2.19572 + const t 2.19573 + *ptrs = sprite.data - 2.19574 + (bx?x0:0) - 2.19575 + (by?y0*sprite.dimx():0) - 2.19576 + (bz?z0*sprite.dimx()*sprite.dimy():0) - 2.19577 + (bv?v0*sprite.dimx()*sprite.dimy()*sprite.dimz():0); 2.19578 + const unsigned int 2.19579 + offX = width - lX, soffX = sprite.width - lX, 2.19580 + offY = width*(height - lY), soffY = sprite.width*(sprite.height - lY), 2.19581 + offZ = width*height*(depth - lZ), soffZ = sprite.width*sprite.height*(sprite.depth - lZ); 2.19582 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.19583 + if (lX>0 && lY>0 && lZ>0 && lV>0) { 2.19584 + T *ptrd = ptr(x0<0?0:x0,y0<0?0:y0,z0<0?0:z0,v0<0?0:v0); 2.19585 + for (int v = 0; v<lV; ++v) { 2.19586 + for (int z = 0; z<lZ; ++z) { 2.19587 + for (int y = 0; y<lY; ++y) { 2.19588 + if (opacity>=1) for (int x = 0; x<lX; ++x) *(ptrd++) = (T)*(ptrs++); 2.19589 + else for (int x = 0; x<lX; ++x) { *ptrd = (T)(nopacity*(*(ptrs++)) + *ptrd*copacity); ++ptrd; } 2.19590 + ptrd+=offX; ptrs+=soffX; 2.19591 + } 2.19592 + ptrd+=offY; ptrs+=soffY; 2.19593 + } 2.19594 + ptrd+=offZ; ptrs+=soffZ; 2.19595 + } 2.19596 + } 2.19597 + return *this; 2.19598 + } 2.19599 + 2.19600 +#ifndef cimg_use_visualcpp6 2.19601 + // Otimized version (internal). 2.19602 + CImg<T>& draw_image(const int x0, const int y0, const int z0, const int v0, 2.19603 + const CImg<T>& sprite, const float opacity=1) { 2.19604 + if (is_empty()) return *this; 2.19605 + if (!sprite) 2.19606 + throw CImgArgumentException("CImg<%s>::draw_image() : Specified sprite image (%u,%u,%u,%u,%p) is empty.", 2.19607 + pixel_type(),sprite.width,sprite.height,sprite.depth,sprite.dim,sprite.data); 2.19608 + if (is_overlapped(sprite)) return draw_image(x0,y0,z0,v0,+sprite,opacity); 2.19609 + const bool bx = (x0<0), by = (y0<0), bz = (z0<0), bv = (v0<0); 2.19610 + const int 2.19611 + lX = sprite.dimx() - (x0 + sprite.dimx()>dimx()?x0 + sprite.dimx() - dimx():0) + (bx?x0:0), 2.19612 + lY = sprite.dimy() - (y0 + sprite.dimy()>dimy()?y0 + sprite.dimy() - dimy():0) + (by?y0:0), 2.19613 + lZ = sprite.dimz() - (z0 + sprite.dimz()>dimz()?z0 + sprite.dimz() - dimz():0) + (bz?z0:0), 2.19614 + lV = sprite.dimv() - (v0 + sprite.dimv()>dimv()?v0 + sprite.dimv() - dimv():0) + (bv?v0:0); 2.19615 + const T 2.19616 + *ptrs = sprite.data - 2.19617 + (bx?x0:0) - 2.19618 + (by?y0*sprite.dimx():0) - 2.19619 + (bz?z0*sprite.dimx()*sprite.dimy():0) - 2.19620 + (bv?v0*sprite.dimx()*sprite.dimy()*sprite.dimz():0); 2.19621 + const unsigned int 2.19622 + offX = width - lX, soffX = sprite.width - lX, 2.19623 + offY = width*(height - lY), soffY = sprite.width*(sprite.height - lY), 2.19624 + offZ = width*height*(depth - lZ), soffZ = sprite.width*sprite.height*(sprite.depth - lZ), 2.19625 + slX = lX*sizeof(T); 2.19626 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.19627 + if (lX>0 && lY>0 && lZ>0 && lV>0) { 2.19628 + T *ptrd = ptr(x0<0?0:x0,y0<0?0:y0,z0<0?0:z0,v0<0?0:v0); 2.19629 + for (int v = 0; v<lV; ++v) { 2.19630 + for (int z = 0; z<lZ; ++z) { 2.19631 + if (opacity>=1) for (int y = 0; y<lY; ++y) { cimg_std::memcpy(ptrd,ptrs,slX); ptrd+=width; ptrs+=sprite.width; } 2.19632 + else for (int y = 0; y<lY; ++y) { 2.19633 + for (int x = 0; x<lX; ++x) { *ptrd = (T)(nopacity*(*(ptrs++)) + *ptrd*copacity); ++ptrd; } 2.19634 + ptrd+=offX; ptrs+=soffX; 2.19635 + } 2.19636 + ptrd+=offY; ptrs+=soffY; 2.19637 + } 2.19638 + ptrd+=offZ; ptrs+=soffZ; 2.19639 + } 2.19640 + } 2.19641 + return *this; 2.19642 + } 2.19643 +#endif 2.19644 + 2.19645 + //! Draw an image. 2.19646 + template<typename t> 2.19647 + CImg<T>& draw_image(const int x0, const int y0, const int z0, 2.19648 + const CImg<t>& sprite, const float opacity=1) { 2.19649 + return draw_image(x0,y0,z0,0,sprite,opacity); 2.19650 + } 2.19651 + 2.19652 + //! Draw an image. 2.19653 + template<typename t> 2.19654 + CImg<T>& draw_image(const int x0, const int y0, 2.19655 + const CImg<t>& sprite, const float opacity=1) { 2.19656 + return draw_image(x0,y0,0,sprite,opacity); 2.19657 + } 2.19658 + 2.19659 + //! Draw an image. 2.19660 + template<typename t> 2.19661 + CImg<T>& draw_image(const int x0, 2.19662 + const CImg<t>& sprite, const float opacity=1) { 2.19663 + return draw_image(x0,0,sprite,opacity); 2.19664 + } 2.19665 + 2.19666 + //! Draw an image. 2.19667 + template<typename t> 2.19668 + CImg<T>& draw_image(const CImg<t>& sprite, const float opacity=1) { 2.19669 + return draw_image(0,sprite,opacity); 2.19670 + } 2.19671 + 2.19672 + //! Draw a sprite image in the instance image (masked version). 2.19673 + /** 2.19674 + \param sprite Sprite image. 2.19675 + \param mask Mask image. 2.19676 + \param x0 X-coordinate of the sprite position in the instance image. 2.19677 + \param y0 Y-coordinate of the sprite position in the instance image. 2.19678 + \param z0 Z-coordinate of the sprite position in the instance image. 2.19679 + \param v0 V-coordinate of the sprite position in the instance image. 2.19680 + \param mask_valmax Maximum pixel value of the mask image \c mask (optional). 2.19681 + \param opacity Drawing opacity. 2.19682 + \note 2.19683 + - Pixel values of \c mask set the opacity of the corresponding pixels in \c sprite. 2.19684 + - Clipping is supported. 2.19685 + - Dimensions along x,y and z of \p sprite and \p mask must be the same. 2.19686 + **/ 2.19687 + template<typename ti, typename tm> 2.19688 + CImg<T>& draw_image(const int x0, const int y0, const int z0, const int v0, 2.19689 + const CImg<ti>& sprite, const CImg<tm>& mask, const float opacity=1, 2.19690 + const float mask_valmax=1) { 2.19691 + if (is_empty()) return *this; 2.19692 + if (!sprite) 2.19693 + throw CImgArgumentException("CImg<%s>::draw_image() : Specified sprite image (%u,%u,%u,%u,%p) is empty.", 2.19694 + pixel_type(),sprite.width,sprite.height,sprite.depth,sprite.dim,sprite.data); 2.19695 + if (!mask) 2.19696 + throw CImgArgumentException("CImg<%s>::draw_image() : Specified mask image (%u,%u,%u,%u,%p) is empty.", 2.19697 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data); 2.19698 + if (is_overlapped(sprite)) return draw_image(x0,y0,z0,v0,+sprite,mask,opacity,mask_valmax); 2.19699 + if (is_overlapped(mask)) return draw_image(x0,y0,z0,v0,sprite,+mask,opacity,mask_valmax); 2.19700 + if (mask.width!=sprite.width || mask.height!=sprite.height || mask.depth!=sprite.depth) 2.19701 + throw CImgArgumentException("CImg<%s>::draw_image() : Mask dimension is (%u,%u,%u,%u), while sprite is (%u,%u,%u,%u)", 2.19702 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,sprite.width,sprite.height,sprite.depth,sprite.dim); 2.19703 + const bool bx = (x0<0), by = (y0<0), bz = (z0<0), bv = (v0<0); 2.19704 + const int 2.19705 + lX = sprite.dimx() - (x0 + sprite.dimx()>dimx()?x0 + sprite.dimx() - dimx():0) + (bx?x0:0), 2.19706 + lY = sprite.dimy() - (y0 + sprite.dimy()>dimy()?y0 + sprite.dimy() - dimy():0) + (by?y0:0), 2.19707 + lZ = sprite.dimz() - (z0 + sprite.dimz()>dimz()?z0 + sprite.dimz() - dimz():0) + (bz?z0:0), 2.19708 + lV = sprite.dimv() - (v0 + sprite.dimv()>dimv()?v0 + sprite.dimv() - dimv():0) + (bv?v0:0); 2.19709 + const int 2.19710 + coff = -(bx?x0:0)-(by?y0*mask.dimx():0)-(bz?z0*mask.dimx()*mask.dimy():0)-(bv?v0*mask.dimx()*mask.dimy()*mask.dimz():0), 2.19711 + ssize = mask.dimx()*mask.dimy()*mask.dimz(); 2.19712 + const ti *ptrs = sprite.data + coff; 2.19713 + const tm *ptrm = mask.data + coff; 2.19714 + const unsigned int 2.19715 + offX = width - lX, soffX = sprite.width - lX, 2.19716 + offY = width*(height - lY), soffY = sprite.width*(sprite.height - lY), 2.19717 + offZ = width*height*(depth - lZ), soffZ = sprite.width*sprite.height*(sprite.depth - lZ); 2.19718 + if (lX>0 && lY>0 && lZ>0 && lV>0) { 2.19719 + T *ptrd = ptr(x0<0?0:x0,y0<0?0:y0,z0<0?0:z0,v0<0?0:v0); 2.19720 + for (int v = 0; v<lV; ++v) { 2.19721 + ptrm = mask.data + (ptrm - mask.data)%ssize; 2.19722 + for (int z = 0; z<lZ; ++z) { 2.19723 + for (int y = 0; y<lY; ++y) { 2.19724 + for (int x=0; x<lX; ++x) { 2.19725 + const float mopacity = (float)(*(ptrm++)*opacity), 2.19726 + nopacity = cimg::abs(mopacity), copacity = mask_valmax - cimg::max(mopacity,0); 2.19727 + *ptrd = (T)((nopacity*(*(ptrs++)) + *ptrd*copacity)/mask_valmax); 2.19728 + ++ptrd; 2.19729 + } 2.19730 + ptrd+=offX; ptrs+=soffX; ptrm+=soffX; 2.19731 + } 2.19732 + ptrd+=offY; ptrs+=soffY; ptrm+=soffY; 2.19733 + } 2.19734 + ptrd+=offZ; ptrs+=soffZ; ptrm+=soffZ; 2.19735 + } 2.19736 + } 2.19737 + return *this; 2.19738 + } 2.19739 + 2.19740 + //! Draw an image. 2.19741 + template<typename ti, typename tm> 2.19742 + CImg<T>& draw_image(const int x0, const int y0, const int z0, 2.19743 + const CImg<ti>& sprite, const CImg<tm>& mask, const float opacity=1, 2.19744 + const float mask_valmax=1) { 2.19745 + return draw_image(x0,y0,z0,0,sprite,mask,opacity,mask_valmax); 2.19746 + } 2.19747 + 2.19748 + //! Draw an image. 2.19749 + template<typename ti, typename tm> 2.19750 + CImg<T>& draw_image(const int x0, const int y0, 2.19751 + const CImg<ti>& sprite, const CImg<tm>& mask, const float opacity=1, 2.19752 + const float mask_valmax=1) { 2.19753 + return draw_image(x0,y0,0,sprite,mask,opacity,mask_valmax); 2.19754 + } 2.19755 + 2.19756 + //! Draw an image. 2.19757 + template<typename ti, typename tm> 2.19758 + CImg<T>& draw_image(const int x0, 2.19759 + const CImg<ti>& sprite, const CImg<tm>& mask, const float opacity=1, 2.19760 + const float mask_valmax=1) { 2.19761 + return draw_image(x0,0,sprite,mask,opacity,mask_valmax); 2.19762 + } 2.19763 + 2.19764 + //! Draw an image. 2.19765 + template<typename ti, typename tm> 2.19766 + CImg<T>& draw_image(const CImg<ti>& sprite, const CImg<tm>& mask, const float opacity=1, 2.19767 + const float mask_valmax=1) { 2.19768 + return draw_image(0,sprite,mask,opacity,mask_valmax); 2.19769 + } 2.19770 + 2.19771 + //! Draw a 4D filled rectangle in the instance image, at coordinates (\c x0,\c y0,\c z0,\c v0)-(\c x1,\c y1,\c z1,\c v1). 2.19772 + /** 2.19773 + \param x0 X-coordinate of the upper-left rectangle corner. 2.19774 + \param y0 Y-coordinate of the upper-left rectangle corner. 2.19775 + \param z0 Z-coordinate of the upper-left rectangle corner. 2.19776 + \param v0 V-coordinate of the upper-left rectangle corner. 2.19777 + \param x1 X-coordinate of the lower-right rectangle corner. 2.19778 + \param y1 Y-coordinate of the lower-right rectangle corner. 2.19779 + \param z1 Z-coordinate of the lower-right rectangle corner. 2.19780 + \param v1 V-coordinate of the lower-right rectangle corner. 2.19781 + \param val Scalar value used to fill the rectangle area. 2.19782 + \param opacity Drawing opacity (optional). 2.19783 + \note 2.19784 + - Clipping is supported. 2.19785 + **/ 2.19786 + CImg<T>& draw_rectangle(const int x0, const int y0, const int z0, const int v0, 2.19787 + const int x1, const int y1, const int z1, const int v1, 2.19788 + const T val, const float opacity=1) { 2.19789 + if (is_empty()) return *this; 2.19790 + const bool bx = (x0<x1), by = (y0<y1), bz = (z0<z1), bv = (v0<v1); 2.19791 + const int 2.19792 + nx0 = bx?x0:x1, nx1 = bx?x1:x0, 2.19793 + ny0 = by?y0:y1, ny1 = by?y1:y0, 2.19794 + nz0 = bz?z0:z1, nz1 = bz?z1:z0, 2.19795 + nv0 = bv?v0:v1, nv1 = bv?v1:v0; 2.19796 + const int 2.19797 + lX = (1 + nx1 - nx0) + (nx1>=dimx()?dimx() - 1 - nx1:0) + (nx0<0?nx0:0), 2.19798 + lY = (1 + ny1 - ny0) + (ny1>=dimy()?dimy() - 1 - ny1:0) + (ny0<0?ny0:0), 2.19799 + lZ = (1 + nz1 - nz0) + (nz1>=dimz()?dimz() - 1 - nz1:0) + (nz0<0?nz0:0), 2.19800 + lV = (1 + nv1 - nv0) + (nv1>=dimv()?dimv() - 1 - nv1:0) + (nv0<0?nv0:0); 2.19801 + const unsigned int offX = width - lX, offY = width*(height - lY), offZ = width*height*(depth - lZ); 2.19802 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.19803 + T *ptrd = ptr(nx0<0?0:nx0,ny0<0?0:ny0,nz0<0?0:nz0,nv0<0?0:nv0); 2.19804 + if (lX>0 && lY>0 && lZ>0 && lV>0) 2.19805 + for (int v = 0; v<lV; ++v) { 2.19806 + for (int z = 0; z<lZ; ++z) { 2.19807 + for (int y = 0; y<lY; ++y) { 2.19808 + if (opacity>=1) { 2.19809 + if (sizeof(T)!=1) { for (int x = 0; x<lX; ++x) *(ptrd++) = val; ptrd+=offX; } 2.19810 + else { cimg_std::memset(ptrd,(int)val,lX); ptrd+=width; } 2.19811 + } else { for (int x = 0; x<lX; ++x) { *ptrd = (T)(nopacity*val + *ptrd*copacity); ++ptrd; } ptrd+=offX; } 2.19812 + } 2.19813 + ptrd+=offY; 2.19814 + } 2.19815 + ptrd+=offZ; 2.19816 + } 2.19817 + return *this; 2.19818 + } 2.19819 + 2.19820 + //! Draw a 3D filled colored rectangle in the instance image, at coordinates (\c x0,\c y0,\c z0)-(\c x1,\c y1,\c z1). 2.19821 + /** 2.19822 + \param x0 X-coordinate of the upper-left rectangle corner. 2.19823 + \param y0 Y-coordinate of the upper-left rectangle corner. 2.19824 + \param z0 Z-coordinate of the upper-left rectangle corner. 2.19825 + \param x1 X-coordinate of the lower-right rectangle corner. 2.19826 + \param y1 Y-coordinate of the lower-right rectangle corner. 2.19827 + \param z1 Z-coordinate of the lower-right rectangle corner. 2.19828 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.19829 + \param opacity Drawing opacity (optional). 2.19830 + \note 2.19831 + - Clipping is supported. 2.19832 + **/ 2.19833 + template<typename tc> 2.19834 + CImg<T>& draw_rectangle(const int x0, const int y0, const int z0, 2.19835 + const int x1, const int y1, const int z1, 2.19836 + const tc *const color, const float opacity=1) { 2.19837 + if (!color) 2.19838 + throw CImgArgumentException("CImg<%s>::draw_rectangle : specified color is (null)", 2.19839 + pixel_type()); 2.19840 + cimg_forV(*this,k) draw_rectangle(x0,y0,z0,k,x1,y1,z1,k,color[k],opacity); 2.19841 + return *this; 2.19842 + } 2.19843 + 2.19844 + //! Draw a 3D filled colored rectangle in the instance image, at coordinates (\c x0,\c y0,\c z0)-(\c x1,\c y1,\c z1). 2.19845 + template<typename tc> 2.19846 + CImg<T>& draw_rectangle(const int x0, const int y0, const int z0, 2.19847 + const int x1, const int y1, const int z1, 2.19848 + const CImg<tc>& color, const float opacity=1) { 2.19849 + return draw_rectangle(x0,y0,z0,x1,y1,z1,color.data,opacity); 2.19850 + } 2.19851 + 2.19852 + //! Draw a 3D outlined colored rectangle in the instance image. 2.19853 + template<typename tc> 2.19854 + CImg<T>& draw_rectangle(const int x0, const int y0, const int z0, 2.19855 + const int x1, const int y1, const int z1, 2.19856 + const tc *const color, const float opacity, 2.19857 + const unsigned int pattern) { 2.19858 + return draw_line(x0,y0,z0,x1,y0,z0,color,opacity,pattern,true). 2.19859 + draw_line(x1,y0,z0,x1,y1,z0,color,opacity,pattern,false). 2.19860 + draw_line(x1,y1,z0,x0,y1,z0,color,opacity,pattern,false). 2.19861 + draw_line(x0,y1,z0,x0,y0,z0,color,opacity,pattern,false). 2.19862 + draw_line(x0,y0,z1,x1,y0,z1,color,opacity,pattern,true). 2.19863 + draw_line(x1,y0,z1,x1,y1,z1,color,opacity,pattern,false). 2.19864 + draw_line(x1,y1,z1,x0,y1,z1,color,opacity,pattern,false). 2.19865 + draw_line(x0,y1,z1,x0,y0,z1,color,opacity,pattern,false). 2.19866 + draw_line(x0,y0,z0,x0,y0,z1,color,opacity,pattern,true). 2.19867 + draw_line(x1,y0,z0,x1,y0,z1,color,opacity,pattern,true). 2.19868 + draw_line(x1,y1,z0,x1,y1,z1,color,opacity,pattern,true). 2.19869 + draw_line(x0,y1,z0,x0,y1,z1,color,opacity,pattern,true); 2.19870 + } 2.19871 + 2.19872 + //! Draw a 3D outlined colored rectangle in the instance image. 2.19873 + template<typename tc> 2.19874 + CImg<T>& draw_rectangle(const int x0, const int y0, const int z0, 2.19875 + const int x1, const int y1, const int z1, 2.19876 + const CImg<tc>& color, const float opacity, 2.19877 + const unsigned int pattern) { 2.19878 + return draw_rectangle(x0,y0,z0,x1,y1,z1,color.data,opacity,pattern); 2.19879 + } 2.19880 + 2.19881 + //! Draw a 2D filled colored rectangle in the instance image, at coordinates (\c x0,\c y0)-(\c x1,\c y1). 2.19882 + /** 2.19883 + \param x0 X-coordinate of the upper-left rectangle corner. 2.19884 + \param y0 Y-coordinate of the upper-left rectangle corner. 2.19885 + \param x1 X-coordinate of the lower-right rectangle corner. 2.19886 + \param y1 Y-coordinate of the lower-right rectangle corner. 2.19887 + \param color Pointer to \c dimv() consecutive values of type \c T, defining the drawing color. 2.19888 + \param opacity Drawing opacity (optional). 2.19889 + \note 2.19890 + - Clipping is supported. 2.19891 + **/ 2.19892 + template<typename tc> 2.19893 + CImg<T>& draw_rectangle(const int x0, const int y0, 2.19894 + const int x1, const int y1, 2.19895 + const tc *const color, const float opacity=1) { 2.19896 + return draw_rectangle(x0,y0,0,x1,y1,depth-1,color,opacity); 2.19897 + } 2.19898 + 2.19899 + //! Draw a 2D filled colored rectangle in the instance image, at coordinates (\c x0,\c y0)-(\c x1,\c y1). 2.19900 + template<typename tc> 2.19901 + CImg<T>& draw_rectangle(const int x0, const int y0, 2.19902 + const int x1, const int y1, 2.19903 + const CImg<tc>& color, const float opacity=1) { 2.19904 + return draw_rectangle(x0,y0,x1,y1,color.data,opacity); 2.19905 + } 2.19906 + 2.19907 + //! Draw a 2D outlined colored rectangle. 2.19908 + template<typename tc> 2.19909 + CImg<T>& draw_rectangle(const int x0, const int y0, 2.19910 + const int x1, const int y1, 2.19911 + const tc *const color, const float opacity, 2.19912 + const unsigned int pattern) { 2.19913 + if (is_empty()) return *this; 2.19914 + if (y0==y1) return draw_line(x0,y0,x1,y0,color,opacity,pattern,true); 2.19915 + if (x0==x1) return draw_line(x0,y0,x0,y1,color,opacity,pattern,true); 2.19916 + const bool bx = (x0<x1), by = (y0<y1); 2.19917 + const int 2.19918 + nx0 = bx?x0:x1, nx1 = bx?x1:x0, 2.19919 + ny0 = by?y0:y1, ny1 = by?y1:y0; 2.19920 + if (ny1==ny0+1) return draw_line(nx0,ny0,nx1,ny0,color,opacity,pattern,true). 2.19921 + draw_line(nx1,ny1,nx0,ny1,color,opacity,pattern,false); 2.19922 + return draw_line(nx0,ny0,nx1,ny0,color,opacity,pattern,true). 2.19923 + draw_line(nx1,ny0+1,nx1,ny1-1,color,opacity,pattern,false). 2.19924 + draw_line(nx1,ny1,nx0,ny1,color,opacity,pattern,false). 2.19925 + draw_line(nx0,ny1-1,nx0,ny0+1,color,opacity,pattern,false); 2.19926 + } 2.19927 + 2.19928 + //! Draw a 2D outlined colored rectangle. 2.19929 + template<typename tc> 2.19930 + CImg<T>& draw_rectangle(const int x0, const int y0, 2.19931 + const int x1, const int y1, 2.19932 + const CImg<tc>& color, const float opacity, 2.19933 + const unsigned int pattern) { 2.19934 + return draw_rectangle(x0,y0,x1,y1,color.data,opacity,pattern); 2.19935 + } 2.19936 + 2.19937 + // Inner macro for drawing triangles. 2.19938 +#define _cimg_for_triangle1(img,xl,xr,y,x0,y0,x1,y1,x2,y2) \ 2.19939 + for (int y = y0<0?0:y0, \ 2.19940 + xr = y0>=0?x0:(x0-y0*(x2-x0)/(y2-y0)), \ 2.19941 + xl = y1>=0?(y0>=0?(y0==y1?x1:x0):(x0-y0*(x1-x0)/(y1-y0))):(x1-y1*(x2-x1)/(y2-y1)), \ 2.19942 + _sxn=1, \ 2.19943 + _sxr=1, \ 2.19944 + _sxl=1, \ 2.19945 + _dxn = x2>x1?x2-x1:(_sxn=-1,x1-x2), \ 2.19946 + _dxr = x2>x0?x2-x0:(_sxr=-1,x0-x2), \ 2.19947 + _dxl = x1>x0?x1-x0:(_sxl=-1,x0-x1), \ 2.19948 + _dyn = y2-y1, \ 2.19949 + _dyr = y2-y0, \ 2.19950 + _dyl = y1-y0, \ 2.19951 + _counter = (_dxn-=_dyn?_dyn*(_dxn/_dyn):0, \ 2.19952 + _dxr-=_dyr?_dyr*(_dxr/_dyr):0, \ 2.19953 + _dxl-=_dyl?_dyl*(_dxl/_dyl):0, \ 2.19954 + cimg::min((int)(img).height-y-1,y2-y)), \ 2.19955 + _errn = _dyn/2, \ 2.19956 + _errr = _dyr/2, \ 2.19957 + _errl = _dyl/2, \ 2.19958 + _rxn = _dyn?(x2-x1)/_dyn:0, \ 2.19959 + _rxr = _dyr?(x2-x0)/_dyr:0, \ 2.19960 + _rxl = (y0!=y1 && y1>0)?(_dyl?(x1-x0)/_dyl:0): \ 2.19961 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxn); \ 2.19962 + _counter>=0; --_counter, ++y, \ 2.19963 + xr+=_rxr+((_errr-=_dxr)<0?_errr+=_dyr,_sxr:0), \ 2.19964 + xl+=(y!=y1)?_rxl+((_errl-=_dxl)<0?(_errl+=_dyl,_sxl):0): \ 2.19965 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxl=_rxn, x1-xl)) 2.19966 + 2.19967 +#define _cimg_for_triangle2(img,xl,cl,xr,cr,y,x0,y0,c0,x1,y1,c1,x2,y2,c2) \ 2.19968 + for (int y = y0<0?0:y0, \ 2.19969 + xr = y0>=0?x0:(x0-y0*(x2-x0)/(y2-y0)), \ 2.19970 + cr = y0>=0?c0:(c0-y0*(c2-c0)/(y2-y0)), \ 2.19971 + xl = y1>=0?(y0>=0?(y0==y1?x1:x0):(x0-y0*(x1-x0)/(y1-y0))):(x1-y1*(x2-x1)/(y2-y1)), \ 2.19972 + cl = y1>=0?(y0>=0?(y0==y1?c1:c0):(c0-y0*(c1-c0)/(y1-y0))):(c1-y1*(c2-c1)/(y2-y1)), \ 2.19973 + _sxn=1, _scn=1, \ 2.19974 + _sxr=1, _scr=1, \ 2.19975 + _sxl=1, _scl=1, \ 2.19976 + _dxn = x2>x1?x2-x1:(_sxn=-1,x1-x2), \ 2.19977 + _dxr = x2>x0?x2-x0:(_sxr=-1,x0-x2), \ 2.19978 + _dxl = x1>x0?x1-x0:(_sxl=-1,x0-x1), \ 2.19979 + _dcn = c2>c1?c2-c1:(_scn=-1,c1-c2), \ 2.19980 + _dcr = c2>c0?c2-c0:(_scr=-1,c0-c2), \ 2.19981 + _dcl = c1>c0?c1-c0:(_scl=-1,c0-c1), \ 2.19982 + _dyn = y2-y1, \ 2.19983 + _dyr = y2-y0, \ 2.19984 + _dyl = y1-y0, \ 2.19985 + _counter =(_dxn-=_dyn?_dyn*(_dxn/_dyn):0, \ 2.19986 + _dxr-=_dyr?_dyr*(_dxr/_dyr):0, \ 2.19987 + _dxl-=_dyl?_dyl*(_dxl/_dyl):0, \ 2.19988 + _dcn-=_dyn?_dyn*(_dcn/_dyn):0, \ 2.19989 + _dcr-=_dyr?_dyr*(_dcr/_dyr):0, \ 2.19990 + _dcl-=_dyl?_dyl*(_dcl/_dyl):0, \ 2.19991 + cimg::min((int)(img).height-y-1,y2-y)), \ 2.19992 + _errn = _dyn/2, _errcn = _errn, \ 2.19993 + _errr = _dyr/2, _errcr = _errr, \ 2.19994 + _errl = _dyl/2, _errcl = _errl, \ 2.19995 + _rxn = _dyn?(x2-x1)/_dyn:0, \ 2.19996 + _rcn = _dyn?(c2-c1)/_dyn:0, \ 2.19997 + _rxr = _dyr?(x2-x0)/_dyr:0, \ 2.19998 + _rcr = _dyr?(c2-c0)/_dyr:0, \ 2.19999 + _rxl = (y0!=y1 && y1>0)?(_dyl?(x1-x0)/_dyl:0): \ 2.20000 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxn), \ 2.20001 + _rcl = (y0!=y1 && y1>0)?(_dyl?(c1-c0)/_dyl:0): \ 2.20002 + (_errcl=_errcn, _dcl=_dcn, _dyl=_dyn, _scl=_scn, _rcn ); \ 2.20003 + _counter>=0; --_counter, ++y, \ 2.20004 + xr+=_rxr+((_errr-=_dxr)<0?_errr+=_dyr,_sxr:0), \ 2.20005 + cr+=_rcr+((_errcr-=_dcr)<0?_errcr+=_dyr,_scr:0), \ 2.20006 + xl+=(y!=y1)?(cl+=_rcl+((_errcl-=_dcl)<0?(_errcl+=_dyl,_scl):0), \ 2.20007 + _rxl+((_errl-=_dxl)<0?(_errl+=_dyl,_sxl):0)): \ 2.20008 + (_errcl=_errcn, _dcl=_dcn, _dyl=_dyn, _scl=_scn, _rcl=_rcn, cl=c1, \ 2.20009 + _errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxl=_rxn, x1-xl)) 2.20010 + 2.20011 +#define _cimg_for_triangle3(img,xl,txl,tyl,xr,txr,tyr,y,x0,y0,tx0,ty0,x1,y1,tx1,ty1,x2,y2,tx2,ty2) \ 2.20012 + for (int y = y0<0?0:y0, \ 2.20013 + xr = y0>=0?x0:(x0-y0*(x2-x0)/(y2-y0)), \ 2.20014 + txr = y0>=0?tx0:(tx0-y0*(tx2-tx0)/(y2-y0)), \ 2.20015 + tyr = y0>=0?ty0:(ty0-y0*(ty2-ty0)/(y2-y0)), \ 2.20016 + xl = y1>=0?(y0>=0?(y0==y1?x1:x0):(x0-y0*(x1-x0)/(y1-y0))):(x1-y1*(x2-x1)/(y2-y1)), \ 2.20017 + txl = y1>=0?(y0>=0?(y0==y1?tx1:tx0):(tx0-y0*(tx1-tx0)/(y1-y0))):(tx1-y1*(tx2-tx1)/(y2-y1)), \ 2.20018 + tyl = y1>=0?(y0>=0?(y0==y1?ty1:ty0):(ty0-y0*(ty1-ty0)/(y1-y0))):(ty1-y1*(ty2-ty1)/(y2-y1)), \ 2.20019 + _sxn=1, _stxn=1, _styn=1, \ 2.20020 + _sxr=1, _stxr=1, _styr=1, \ 2.20021 + _sxl=1, _stxl=1, _styl=1, \ 2.20022 + _dxn = x2>x1?x2-x1:(_sxn=-1,x1-x2), \ 2.20023 + _dxr = x2>x0?x2-x0:(_sxr=-1,x0-x2), \ 2.20024 + _dxl = x1>x0?x1-x0:(_sxl=-1,x0-x1), \ 2.20025 + _dtxn = tx2>tx1?tx2-tx1:(_stxn=-1,tx1-tx2), \ 2.20026 + _dtxr = tx2>tx0?tx2-tx0:(_stxr=-1,tx0-tx2), \ 2.20027 + _dtxl = tx1>tx0?tx1-tx0:(_stxl=-1,tx0-tx1), \ 2.20028 + _dtyn = ty2>ty1?ty2-ty1:(_styn=-1,ty1-ty2), \ 2.20029 + _dtyr = ty2>ty0?ty2-ty0:(_styr=-1,ty0-ty2), \ 2.20030 + _dtyl = ty1>ty0?ty1-ty0:(_styl=-1,ty0-ty1), \ 2.20031 + _dyn = y2-y1, \ 2.20032 + _dyr = y2-y0, \ 2.20033 + _dyl = y1-y0, \ 2.20034 + _counter =(_dxn-=_dyn?_dyn*(_dxn/_dyn):0, \ 2.20035 + _dxr-=_dyr?_dyr*(_dxr/_dyr):0, \ 2.20036 + _dxl-=_dyl?_dyl*(_dxl/_dyl):0, \ 2.20037 + _dtxn-=_dyn?_dyn*(_dtxn/_dyn):0, \ 2.20038 + _dtxr-=_dyr?_dyr*(_dtxr/_dyr):0, \ 2.20039 + _dtxl-=_dyl?_dyl*(_dtxl/_dyl):0, \ 2.20040 + _dtyn-=_dyn?_dyn*(_dtyn/_dyn):0, \ 2.20041 + _dtyr-=_dyr?_dyr*(_dtyr/_dyr):0, \ 2.20042 + _dtyl-=_dyl?_dyl*(_dtyl/_dyl):0, \ 2.20043 + cimg::min((int)(img).height-y-1,y2-y)), \ 2.20044 + _errn = _dyn/2, _errtxn = _errn, _errtyn = _errn, \ 2.20045 + _errr = _dyr/2, _errtxr = _errr, _errtyr = _errr, \ 2.20046 + _errl = _dyl/2, _errtxl = _errl, _errtyl = _errl, \ 2.20047 + _rxn = _dyn?(x2-x1)/_dyn:0, \ 2.20048 + _rtxn = _dyn?(tx2-tx1)/_dyn:0, \ 2.20049 + _rtyn = _dyn?(ty2-ty1)/_dyn:0, \ 2.20050 + _rxr = _dyr?(x2-x0)/_dyr:0, \ 2.20051 + _rtxr = _dyr?(tx2-tx0)/_dyr:0, \ 2.20052 + _rtyr = _dyr?(ty2-ty0)/_dyr:0, \ 2.20053 + _rxl = (y0!=y1 && y1>0)?(_dyl?(x1-x0)/_dyl:0): \ 2.20054 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxn), \ 2.20055 + _rtxl = (y0!=y1 && y1>0)?(_dyl?(tx1-tx0)/_dyl:0): \ 2.20056 + (_errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxn ), \ 2.20057 + _rtyl = (y0!=y1 && y1>0)?(_dyl?(ty1-ty0)/_dyl:0): \ 2.20058 + (_errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyn ); \ 2.20059 + _counter>=0; --_counter, ++y, \ 2.20060 + xr+=_rxr+((_errr-=_dxr)<0?_errr+=_dyr,_sxr:0), \ 2.20061 + txr+=_rtxr+((_errtxr-=_dtxr)<0?_errtxr+=_dyr,_stxr:0), \ 2.20062 + tyr+=_rtyr+((_errtyr-=_dtyr)<0?_errtyr+=_dyr,_styr:0), \ 2.20063 + xl+=(y!=y1)?(txl+=_rtxl+((_errtxl-=_dtxl)<0?(_errtxl+=_dyl,_stxl):0), \ 2.20064 + tyl+=_rtyl+((_errtyl-=_dtyl)<0?(_errtyl+=_dyl,_styl):0), \ 2.20065 + _rxl+((_errl-=_dxl)<0?(_errl+=_dyl,_sxl):0)): \ 2.20066 + (_errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxl=_rtxn, txl=tx1, \ 2.20067 + _errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyl=_rtyn, tyl=ty1,\ 2.20068 + _errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxl=_rxn, x1-xl)) 2.20069 + 2.20070 +#define _cimg_for_triangle4(img,xl,cl,txl,tyl,xr,cr,txr,tyr,y,x0,y0,c0,tx0,ty0,x1,y1,c1,tx1,ty1,x2,y2,c2,tx2,ty2) \ 2.20071 + for (int y = y0<0?0:y0, \ 2.20072 + xr = y0>=0?x0:(x0-y0*(x2-x0)/(y2-y0)), \ 2.20073 + cr = y0>=0?c0:(c0-y0*(c2-c0)/(y2-y0)), \ 2.20074 + txr = y0>=0?tx0:(tx0-y0*(tx2-tx0)/(y2-y0)), \ 2.20075 + tyr = y0>=0?ty0:(ty0-y0*(ty2-ty0)/(y2-y0)), \ 2.20076 + xl = y1>=0?(y0>=0?(y0==y1?x1:x0):(x0-y0*(x1-x0)/(y1-y0))):(x1-y1*(x2-x1)/(y2-y1)), \ 2.20077 + cl = y1>=0?(y0>=0?(y0==y1?c1:c0):(c0-y0*(c1-c0)/(y1-y0))):(c1-y1*(c2-c1)/(y2-y1)), \ 2.20078 + txl = y1>=0?(y0>=0?(y0==y1?tx1:tx0):(tx0-y0*(tx1-tx0)/(y1-y0))):(tx1-y1*(tx2-tx1)/(y2-y1)), \ 2.20079 + tyl = y1>=0?(y0>=0?(y0==y1?ty1:ty0):(ty0-y0*(ty1-ty0)/(y1-y0))):(ty1-y1*(ty2-ty1)/(y2-y1)), \ 2.20080 + _sxn=1, _scn=1, _stxn=1, _styn=1, \ 2.20081 + _sxr=1, _scr=1, _stxr=1, _styr=1, \ 2.20082 + _sxl=1, _scl=1, _stxl=1, _styl=1, \ 2.20083 + _dxn = x2>x1?x2-x1:(_sxn=-1,x1-x2), \ 2.20084 + _dxr = x2>x0?x2-x0:(_sxr=-1,x0-x2), \ 2.20085 + _dxl = x1>x0?x1-x0:(_sxl=-1,x0-x1), \ 2.20086 + _dcn = c2>c1?c2-c1:(_scn=-1,c1-c2), \ 2.20087 + _dcr = c2>c0?c2-c0:(_scr=-1,c0-c2), \ 2.20088 + _dcl = c1>c0?c1-c0:(_scl=-1,c0-c1), \ 2.20089 + _dtxn = tx2>tx1?tx2-tx1:(_stxn=-1,tx1-tx2), \ 2.20090 + _dtxr = tx2>tx0?tx2-tx0:(_stxr=-1,tx0-tx2), \ 2.20091 + _dtxl = tx1>tx0?tx1-tx0:(_stxl=-1,tx0-tx1), \ 2.20092 + _dtyn = ty2>ty1?ty2-ty1:(_styn=-1,ty1-ty2), \ 2.20093 + _dtyr = ty2>ty0?ty2-ty0:(_styr=-1,ty0-ty2), \ 2.20094 + _dtyl = ty1>ty0?ty1-ty0:(_styl=-1,ty0-ty1), \ 2.20095 + _dyn = y2-y1, \ 2.20096 + _dyr = y2-y0, \ 2.20097 + _dyl = y1-y0, \ 2.20098 + _counter =(_dxn-=_dyn?_dyn*(_dxn/_dyn):0, \ 2.20099 + _dxr-=_dyr?_dyr*(_dxr/_dyr):0, \ 2.20100 + _dxl-=_dyl?_dyl*(_dxl/_dyl):0, \ 2.20101 + _dcn-=_dyn?_dyn*(_dcn/_dyn):0, \ 2.20102 + _dcr-=_dyr?_dyr*(_dcr/_dyr):0, \ 2.20103 + _dcl-=_dyl?_dyl*(_dcl/_dyl):0, \ 2.20104 + _dtxn-=_dyn?_dyn*(_dtxn/_dyn):0, \ 2.20105 + _dtxr-=_dyr?_dyr*(_dtxr/_dyr):0, \ 2.20106 + _dtxl-=_dyl?_dyl*(_dtxl/_dyl):0, \ 2.20107 + _dtyn-=_dyn?_dyn*(_dtyn/_dyn):0, \ 2.20108 + _dtyr-=_dyr?_dyr*(_dtyr/_dyr):0, \ 2.20109 + _dtyl-=_dyl?_dyl*(_dtyl/_dyl):0, \ 2.20110 + cimg::min((int)(img).height-y-1,y2-y)), \ 2.20111 + _errn = _dyn/2, _errcn = _errn, _errtxn = _errn, _errtyn = _errn, \ 2.20112 + _errr = _dyr/2, _errcr = _errr, _errtxr = _errr, _errtyr = _errr, \ 2.20113 + _errl = _dyl/2, _errcl = _errl, _errtxl = _errl, _errtyl = _errl, \ 2.20114 + _rxn = _dyn?(x2-x1)/_dyn:0, \ 2.20115 + _rcn = _dyn?(c2-c1)/_dyn:0, \ 2.20116 + _rtxn = _dyn?(tx2-tx1)/_dyn:0, \ 2.20117 + _rtyn = _dyn?(ty2-ty1)/_dyn:0, \ 2.20118 + _rxr = _dyr?(x2-x0)/_dyr:0, \ 2.20119 + _rcr = _dyr?(c2-c0)/_dyr:0, \ 2.20120 + _rtxr = _dyr?(tx2-tx0)/_dyr:0, \ 2.20121 + _rtyr = _dyr?(ty2-ty0)/_dyr:0, \ 2.20122 + _rxl = (y0!=y1 && y1>0)?(_dyl?(x1-x0)/_dyl:0): \ 2.20123 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxn), \ 2.20124 + _rcl = (y0!=y1 && y1>0)?(_dyl?(c1-c0)/_dyl:0): \ 2.20125 + (_errcl=_errcn, _dcl=_dcn, _dyl=_dyn, _scl=_scn, _rcn ), \ 2.20126 + _rtxl = (y0!=y1 && y1>0)?(_dyl?(tx1-tx0)/_dyl:0): \ 2.20127 + (_errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxn ), \ 2.20128 + _rtyl = (y0!=y1 && y1>0)?(_dyl?(ty1-ty0)/_dyl:0): \ 2.20129 + (_errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyn ); \ 2.20130 + _counter>=0; --_counter, ++y, \ 2.20131 + xr+=_rxr+((_errr-=_dxr)<0?_errr+=_dyr,_sxr:0), \ 2.20132 + cr+=_rcr+((_errcr-=_dcr)<0?_errcr+=_dyr,_scr:0), \ 2.20133 + txr+=_rtxr+((_errtxr-=_dtxr)<0?_errtxr+=_dyr,_stxr:0), \ 2.20134 + tyr+=_rtyr+((_errtyr-=_dtyr)<0?_errtyr+=_dyr,_styr:0), \ 2.20135 + xl+=(y!=y1)?(cl+=_rcl+((_errcl-=_dcl)<0?(_errcl+=_dyl,_scl):0), \ 2.20136 + txl+=_rtxl+((_errtxl-=_dtxl)<0?(_errtxl+=_dyl,_stxl):0), \ 2.20137 + tyl+=_rtyl+((_errtyl-=_dtyl)<0?(_errtyl+=_dyl,_styl):0), \ 2.20138 + _rxl+((_errl-=_dxl)<0?(_errl+=_dyl,_sxl):0)): \ 2.20139 + (_errcl=_errcn, _dcl=_dcn, _dyl=_dyn, _scl=_scn, _rcl=_rcn, cl=c1, \ 2.20140 + _errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxl=_rtxn, txl=tx1, \ 2.20141 + _errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyl=_rtyn, tyl=ty1, \ 2.20142 + _errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxl=_rxn, x1-xl)) 2.20143 + 2.20144 +#define _cimg_for_triangle5(img,xl,txl,tyl,lxl,lyl,xr,txr,tyr,lxr,lyr,y,x0,y0,tx0,ty0,lx0,ly0,x1,y1,tx1,ty1,lx1,ly1,x2,y2,tx2,ty2,lx2,ly2) \ 2.20145 + for (int y = y0<0?0:y0, \ 2.20146 + xr = y0>=0?x0:(x0-y0*(x2-x0)/(y2-y0)), \ 2.20147 + txr = y0>=0?tx0:(tx0-y0*(tx2-tx0)/(y2-y0)), \ 2.20148 + tyr = y0>=0?ty0:(ty0-y0*(ty2-ty0)/(y2-y0)), \ 2.20149 + lxr = y0>=0?lx0:(lx0-y0*(lx2-lx0)/(y2-y0)), \ 2.20150 + lyr = y0>=0?ly0:(ly0-y0*(ly2-ly0)/(y2-y0)), \ 2.20151 + xl = y1>=0?(y0>=0?(y0==y1?x1:x0):(x0-y0*(x1-x0)/(y1-y0))):(x1-y1*(x2-x1)/(y2-y1)), \ 2.20152 + txl = y1>=0?(y0>=0?(y0==y1?tx1:tx0):(tx0-y0*(tx1-tx0)/(y1-y0))):(tx1-y1*(tx2-tx1)/(y2-y1)), \ 2.20153 + tyl = y1>=0?(y0>=0?(y0==y1?ty1:ty0):(ty0-y0*(ty1-ty0)/(y1-y0))):(ty1-y1*(ty2-ty1)/(y2-y1)), \ 2.20154 + lxl = y1>=0?(y0>=0?(y0==y1?lx1:lx0):(lx0-y0*(lx1-lx0)/(y1-y0))):(lx1-y1*(lx2-lx1)/(y2-y1)), \ 2.20155 + lyl = y1>=0?(y0>=0?(y0==y1?ly1:ly0):(ly0-y0*(ly1-ly0)/(y1-y0))):(ly1-y1*(ly2-ly1)/(y2-y1)), \ 2.20156 + _sxn=1, _stxn=1, _styn=1, _slxn=1, _slyn=1, \ 2.20157 + _sxr=1, _stxr=1, _styr=1, _slxr=1, _slyr=1, \ 2.20158 + _sxl=1, _stxl=1, _styl=1, _slxl=1, _slyl=1, \ 2.20159 + _dxn = x2>x1?x2-x1:(_sxn=-1,x1-x2), _dyn = y2-y1, \ 2.20160 + _dxr = x2>x0?x2-x0:(_sxr=-1,x0-x2), _dyr = y2-y0, \ 2.20161 + _dxl = x1>x0?x1-x0:(_sxl=-1,x0-x1), _dyl = y1-y0, \ 2.20162 + _dtxn = tx2>tx1?tx2-tx1:(_stxn=-1,tx1-tx2), \ 2.20163 + _dtxr = tx2>tx0?tx2-tx0:(_stxr=-1,tx0-tx2), \ 2.20164 + _dtxl = tx1>tx0?tx1-tx0:(_stxl=-1,tx0-tx1), \ 2.20165 + _dtyn = ty2>ty1?ty2-ty1:(_styn=-1,ty1-ty2), \ 2.20166 + _dtyr = ty2>ty0?ty2-ty0:(_styr=-1,ty0-ty2), \ 2.20167 + _dtyl = ty1>ty0?ty1-ty0:(_styl=-1,ty0-ty1), \ 2.20168 + _dlxn = lx2>lx1?lx2-lx1:(_slxn=-1,lx1-lx2), \ 2.20169 + _dlxr = lx2>lx0?lx2-lx0:(_slxr=-1,lx0-lx2), \ 2.20170 + _dlxl = lx1>lx0?lx1-lx0:(_slxl=-1,lx0-lx1), \ 2.20171 + _dlyn = ly2>ly1?ly2-ly1:(_slyn=-1,ly1-ly2), \ 2.20172 + _dlyr = ly2>ly0?ly2-ly0:(_slyr=-1,ly0-ly2), \ 2.20173 + _dlyl = ly1>ly0?ly1-ly0:(_slyl=-1,ly0-ly1), \ 2.20174 + _counter =(_dxn-=_dyn?_dyn*(_dxn/_dyn):0, \ 2.20175 + _dxr-=_dyr?_dyr*(_dxr/_dyr):0, \ 2.20176 + _dxl-=_dyl?_dyl*(_dxl/_dyl):0, \ 2.20177 + _dtxn-=_dyn?_dyn*(_dtxn/_dyn):0, \ 2.20178 + _dtxr-=_dyr?_dyr*(_dtxr/_dyr):0, \ 2.20179 + _dtxl-=_dyl?_dyl*(_dtxl/_dyl):0, \ 2.20180 + _dtyn-=_dyn?_dyn*(_dtyn/_dyn):0, \ 2.20181 + _dtyr-=_dyr?_dyr*(_dtyr/_dyr):0, \ 2.20182 + _dtyl-=_dyl?_dyl*(_dtyl/_dyl):0, \ 2.20183 + _dlxn-=_dyn?_dyn*(_dlxn/_dyn):0, \ 2.20184 + _dlxr-=_dyr?_dyr*(_dlxr/_dyr):0, \ 2.20185 + _dlxl-=_dyl?_dyl*(_dlxl/_dyl):0, \ 2.20186 + _dlyn-=_dyn?_dyn*(_dlyn/_dyn):0, \ 2.20187 + _dlyr-=_dyr?_dyr*(_dlyr/_dyr):0, \ 2.20188 + _dlyl-=_dyl?_dyl*(_dlyl/_dyl):0, \ 2.20189 + cimg::min((int)(img).height-y-1,y2-y)), \ 2.20190 + _errn = _dyn/2, _errtxn = _errn, _errtyn = _errn, _errlxn = _errn, _errlyn = _errn, \ 2.20191 + _errr = _dyr/2, _errtxr = _errr, _errtyr = _errr, _errlxr = _errr, _errlyr = _errr, \ 2.20192 + _errl = _dyl/2, _errtxl = _errl, _errtyl = _errl, _errlxl = _errl, _errlyl = _errl, \ 2.20193 + _rxn = _dyn?(x2-x1)/_dyn:0, \ 2.20194 + _rtxn = _dyn?(tx2-tx1)/_dyn:0, \ 2.20195 + _rtyn = _dyn?(ty2-ty1)/_dyn:0, \ 2.20196 + _rlxn = _dyn?(lx2-lx1)/_dyn:0, \ 2.20197 + _rlyn = _dyn?(ly2-ly1)/_dyn:0, \ 2.20198 + _rxr = _dyr?(x2-x0)/_dyr:0, \ 2.20199 + _rtxr = _dyr?(tx2-tx0)/_dyr:0, \ 2.20200 + _rtyr = _dyr?(ty2-ty0)/_dyr:0, \ 2.20201 + _rlxr = _dyr?(lx2-lx0)/_dyr:0, \ 2.20202 + _rlyr = _dyr?(ly2-ly0)/_dyr:0, \ 2.20203 + _rxl = (y0!=y1 && y1>0)?(_dyl?(x1-x0)/_dyl:0): \ 2.20204 + (_errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxn), \ 2.20205 + _rtxl = (y0!=y1 && y1>0)?(_dyl?(tx1-tx0)/_dyl:0): \ 2.20206 + (_errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxn ), \ 2.20207 + _rtyl = (y0!=y1 && y1>0)?(_dyl?(ty1-ty0)/_dyl:0): \ 2.20208 + (_errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyn ), \ 2.20209 + _rlxl = (y0!=y1 && y1>0)?(_dyl?(lx1-lx0)/_dyl:0): \ 2.20210 + (_errlxl=_errlxn, _dlxl=_dlxn, _dyl=_dyn, _slxl=_slxn, _rlxn ), \ 2.20211 + _rlyl = (y0!=y1 && y1>0)?(_dyl?(ly1-ly0)/_dyl:0): \ 2.20212 + (_errlyl=_errlyn, _dlyl=_dlyn, _dyl=_dyn, _slyl=_slyn, _rlyn ); \ 2.20213 + _counter>=0; --_counter, ++y, \ 2.20214 + xr+=_rxr+((_errr-=_dxr)<0?_errr+=_dyr,_sxr:0), \ 2.20215 + txr+=_rtxr+((_errtxr-=_dtxr)<0?_errtxr+=_dyr,_stxr:0), \ 2.20216 + tyr+=_rtyr+((_errtyr-=_dtyr)<0?_errtyr+=_dyr,_styr:0), \ 2.20217 + lxr+=_rlxr+((_errlxr-=_dlxr)<0?_errlxr+=_dyr,_slxr:0), \ 2.20218 + lyr+=_rlyr+((_errlyr-=_dlyr)<0?_errlyr+=_dyr,_slyr:0), \ 2.20219 + xl+=(y!=y1)?(txl+=_rtxl+((_errtxl-=_dtxl)<0?(_errtxl+=_dyl,_stxl):0), \ 2.20220 + tyl+=_rtyl+((_errtyl-=_dtyl)<0?(_errtyl+=_dyl,_styl):0), \ 2.20221 + lxl+=_rlxl+((_errlxl-=_dlxl)<0?(_errlxl+=_dyl,_slxl):0), \ 2.20222 + lyl+=_rlyl+((_errlyl-=_dlyl)<0?(_errlyl+=_dyl,_slyl):0), \ 2.20223 + _rxl+((_errl-=_dxl)<0?(_errl+=_dyl,_sxl):0)): \ 2.20224 + (_errtxl=_errtxn, _dtxl=_dtxn, _dyl=_dyn, _stxl=_stxn, _rtxl=_rtxn, txl=tx1, \ 2.20225 + _errtyl=_errtyn, _dtyl=_dtyn, _dyl=_dyn, _styl=_styn, _rtyl=_rtyn, tyl=ty1, \ 2.20226 + _errlxl=_errlxn, _dlxl=_dlxn, _dyl=_dyn, _slxl=_slxn, _rlxl=_rlxn, lxl=lx1, \ 2.20227 + _errlyl=_errlyn, _dlyl=_dlyn, _dyl=_dyn, _slyl=_slyn, _rlyl=_rlyn, lyl=ly1, \ 2.20228 + _errl=_errn, _dxl=_dxn, _dyl=_dyn, _sxl=_sxn, _rxl=_rxn, x1-xl)) 2.20229 + 2.20230 + // Draw a colored triangle (inner routine, uses bresenham's algorithm). 2.20231 + template<typename tc> 2.20232 + CImg<T>& _draw_triangle(const int x0, const int y0, 2.20233 + const int x1, const int y1, 2.20234 + const int x2, const int y2, 2.20235 + const tc *const color, const float opacity, 2.20236 + const float brightness) { 2.20237 + _draw_scanline(color,opacity); 2.20238 + const float nbrightness = brightness<0?0:(brightness>2?2:brightness); 2.20239 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2; 2.20240 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1); 2.20241 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2); 2.20242 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2); 2.20243 + if (ny0<dimy() && ny2>=0) { 2.20244 + if ((nx1 - nx0)*(ny2 - ny0) - (nx2 - nx0)*(ny1 - ny0)<0) 2.20245 + _cimg_for_triangle1(*this,xl,xr,y,nx0,ny0,nx1,ny1,nx2,ny2) _draw_scanline(xl,xr,y,color,opacity,nbrightness); 2.20246 + else 2.20247 + _cimg_for_triangle1(*this,xl,xr,y,nx0,ny0,nx1,ny1,nx2,ny2) _draw_scanline(xr,xl,y,color,opacity,nbrightness); 2.20248 + } 2.20249 + return *this; 2.20250 + } 2.20251 + 2.20252 + //! Draw a 2D filled colored triangle. 2.20253 + template<typename tc> 2.20254 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20255 + const int x1, const int y1, 2.20256 + const int x2, const int y2, 2.20257 + const tc *const color, const float opacity=1) { 2.20258 + if (is_empty()) return *this; 2.20259 + if (!color) 2.20260 + throw CImgArgumentException("CImg<%s>::draw_triangle : Specified color is (null).", 2.20261 + pixel_type()); 2.20262 + _draw_triangle(x0,y0,x1,y1,x2,y2,color,opacity,1); 2.20263 + return *this; 2.20264 + } 2.20265 + 2.20266 + //! Draw a 2D filled colored triangle. 2.20267 + template<typename tc> 2.20268 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20269 + const int x1, const int y1, 2.20270 + const int x2, const int y2, 2.20271 + const CImg<tc>& color, const float opacity=1) { 2.20272 + return draw_triangle(x0,y0,x1,y1,x2,y2,color.data,opacity); 2.20273 + } 2.20274 + 2.20275 + //! Draw a 2D outlined colored triangle. 2.20276 + template<typename tc> 2.20277 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20278 + const int x1, const int y1, 2.20279 + const int x2, const int y2, 2.20280 + const tc *const color, const float opacity, 2.20281 + const unsigned int pattern) { 2.20282 + if (is_empty()) return *this; 2.20283 + if (!color) 2.20284 + throw CImgArgumentException("CImg<%s>::draw_triangle : Specified color is (null).", 2.20285 + pixel_type()); 2.20286 + draw_line(x0,y0,x1,y1,color,opacity,pattern,true). 2.20287 + draw_line(x1,y1,x2,y2,color,opacity,pattern,false). 2.20288 + draw_line(x2,y2,x0,y0,color,opacity,pattern,false); 2.20289 + return *this; 2.20290 + } 2.20291 + 2.20292 + //! Draw a 2D outlined colored triangle. 2.20293 + template<typename tc> 2.20294 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20295 + const int x1, const int y1, 2.20296 + const int x2, const int y2, 2.20297 + const CImg<tc>& color, const float opacity, 2.20298 + const unsigned int pattern) { 2.20299 + return draw_triangle(x0,y0,x1,y1,x2,y2,color.data,opacity,pattern); 2.20300 + } 2.20301 + 2.20302 + //! Draw a 2D filled colored triangle, with z-buffering. 2.20303 + template<typename tc> 2.20304 + CImg<T>& draw_triangle(float *const zbuffer, 2.20305 + const int x0, const int y0, const float z0, 2.20306 + const int x1, const int y1, const float z1, 2.20307 + const int x2, const int y2, const float z2, 2.20308 + const tc *const color, const float opacity=1, 2.20309 + const float brightness=1) { 2.20310 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.20311 + if (!color) 2.20312 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified color is (null).", 2.20313 + pixel_type()); 2.20314 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20315 + const float 2.20316 + nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0), 2.20317 + nbrightness = brightness<0?0:(brightness>2?2:brightness); 2.20318 + const int whz = width*height*depth, offx = dim*whz; 2.20319 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2; 2.20320 + float nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.20321 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nz0,nz1); 2.20322 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,nz0,nz2); 2.20323 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,nz1,nz2); 2.20324 + if (ny0>=dimy() || ny2<0) return *this; 2.20325 + float 2.20326 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.20327 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.20328 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.20329 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.20330 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))); 2.20331 + _cimg_for_triangle1(*this,xleft0,xright0,y,nx0,ny0,nx1,ny1,nx2,ny2) { 2.20332 + if (y==ny1) { zl = nz1; pzl = pzn; } 2.20333 + int xleft = xleft0, xright = xright0; 2.20334 + float zleft = zl, zright = zr; 2.20335 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright); 2.20336 + const int dx = xright - xleft; 2.20337 + const float pentez = (zright - zleft)/dx; 2.20338 + if (xleft<0 && dx) zleft-=xleft*(zright - zleft)/dx; 2.20339 + if (xleft<0) xleft = 0; 2.20340 + if (xright>=dimx()-1) xright = dimx()-1; 2.20341 + T* ptrd = ptr(xleft,y,0,0); 2.20342 + float *ptrz = zbuffer + xleft + y*width; 2.20343 + if (opacity>=1) { 2.20344 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20345 + if (zleft>*ptrz) { 2.20346 + *ptrz = zleft; 2.20347 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=whz; } 2.20348 + ptrd-=offx; 2.20349 + } 2.20350 + zleft+=pentez; 2.20351 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20352 + if (zleft>*ptrz) { 2.20353 + *ptrz = zleft; 2.20354 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)(nbrightness*(*col++)); ptrd+=whz; } 2.20355 + ptrd-=offx; 2.20356 + } 2.20357 + zleft+=pentez; 2.20358 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20359 + if (zleft>*ptrz) { 2.20360 + *ptrz = zleft; 2.20361 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)((2-nbrightness)**(col++) + (nbrightness-1)*maxval); ptrd+=whz; } 2.20362 + ptrd-=offx; 2.20363 + } 2.20364 + zleft+=pentez; 2.20365 + } 2.20366 + } else { 2.20367 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20368 + if (zleft>*ptrz) { 2.20369 + *ptrz = zleft; 2.20370 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)(nopacity**(col++) + *ptrd*copacity); ptrd+=whz; } 2.20371 + ptrd-=offx; 2.20372 + } 2.20373 + zleft+=pentez; 2.20374 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20375 + if (zleft>*ptrz) { 2.20376 + *ptrz = zleft; 2.20377 + const tc *col = color; cimg_forV(*this,k) { *ptrd = (T)(nopacity*nbrightness**(col++) + *ptrd*copacity); ptrd+=whz; } 2.20378 + ptrd-=offx; 2.20379 + } 2.20380 + zleft+=pentez; 2.20381 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20382 + if (zleft>*ptrz) { 2.20383 + *ptrz = zleft; 2.20384 + const tc *col = color; 2.20385 + cimg_forV(*this,k) { 2.20386 + const T val = (T)((2-nbrightness)**(col++) + (nbrightness-1)*maxval); 2.20387 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.20388 + ptrd+=whz; 2.20389 + } 2.20390 + ptrd-=offx; 2.20391 + } 2.20392 + zleft+=pentez; 2.20393 + } 2.20394 + } 2.20395 + zr+=pzr; zl+=pzl; 2.20396 + } 2.20397 + return *this; 2.20398 + } 2.20399 + 2.20400 + //! Draw a 2D filled colored triangle, with z-buffering. 2.20401 + template<typename tc> 2.20402 + CImg<T>& draw_triangle(float *const zbuffer, 2.20403 + const int x0, const int y0, const float z0, 2.20404 + const int x1, const int y1, const float z1, 2.20405 + const int x2, const int y2, const float z2, 2.20406 + const CImg<tc>& color, const float opacity=1, 2.20407 + const float brightness=1) { 2.20408 + return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color.data,opacity,brightness); 2.20409 + } 2.20410 + 2.20411 + //! Draw a 2D Gouraud-shaded colored triangle. 2.20412 + /** 2.20413 + \param x0 = X-coordinate of the first corner in the instance image. 2.20414 + \param y0 = Y-coordinate of the first corner in the instance image. 2.20415 + \param x1 = X-coordinate of the second corner in the instance image. 2.20416 + \param y1 = Y-coordinate of the second corner in the instance image. 2.20417 + \param x2 = X-coordinate of the third corner in the instance image. 2.20418 + \param y2 = Y-coordinate of the third corner in the instance image. 2.20419 + \param color = array of dimv() values of type \c T, defining the global drawing color. 2.20420 + \param brightness0 = brightness of the first corner (in [0,2]). 2.20421 + \param brightness1 = brightness of the second corner (in [0,2]). 2.20422 + \param brightness2 = brightness of the third corner (in [0,2]). 2.20423 + \param opacity = opacity of the drawing. 2.20424 + \note Clipping is supported. 2.20425 + **/ 2.20426 + template<typename tc> 2.20427 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20428 + const int x1, const int y1, 2.20429 + const int x2, const int y2, 2.20430 + const tc *const color, 2.20431 + const float brightness0, 2.20432 + const float brightness1, 2.20433 + const float brightness2, 2.20434 + const float opacity=1) { 2.20435 + if (is_empty()) return *this; 2.20436 + if (!color) 2.20437 + throw CImgArgumentException("CImg<%s>::draw_triangle : Specified color is (null).", 2.20438 + pixel_type()); 2.20439 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20440 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.20441 + const int whz = width*height*depth, offx = dim*whz-1; 2.20442 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.20443 + nc0 = (int)((brightness0<0?0:(brightness0>2?2:brightness0))*256), 2.20444 + nc1 = (int)((brightness1<0?0:(brightness1>2?2:brightness1))*256), 2.20445 + nc2 = (int)((brightness2<0?0:(brightness2>2?2:brightness2))*256); 2.20446 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nc0,nc1); 2.20447 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,nc0,nc2); 2.20448 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,nc1,nc2); 2.20449 + if (ny0>=dimy() || ny2<0) return *this; 2.20450 + _cimg_for_triangle2(*this,xleft0,cleft0,xright0,cright0,y,nx0,ny0,nc0,nx1,ny1,nc1,nx2,ny2,nc2) { 2.20451 + int xleft = xleft0, xright = xright0, cleft = cleft0, cright = cright0; 2.20452 + if (xright<xleft) cimg::swap(xleft,xright,cleft,cright); 2.20453 + const int 2.20454 + dx = xright - xleft, 2.20455 + dc = cright>cleft?cright - cleft:cleft - cright, 2.20456 + rc = dx?(cright - cleft)/dx:0, 2.20457 + sc = cright>cleft?1:-1, 2.20458 + ndc = dc-(dx?dx*(dc/dx):0); 2.20459 + int errc = dx>>1; 2.20460 + if (xleft<0 && dx) cleft-=xleft*(cright - cleft)/dx; 2.20461 + if (xleft<0) xleft = 0; 2.20462 + if (xright>=dimx()-1) xright = dimx()-1; 2.20463 + T* ptrd = ptr(xleft,y); 2.20464 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.20465 + const tc *col = color; 2.20466 + cimg_forV(*this,k) { 2.20467 + *ptrd = (T)(cleft<256?cleft**(col++)/256:((512-cleft)**(col++)+(cleft-256)*maxval)/256); 2.20468 + ptrd+=whz; 2.20469 + } 2.20470 + ptrd-=offx; 2.20471 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.20472 + } else for (int x = xleft; x<=xright; ++x) { 2.20473 + const tc *col = color; 2.20474 + cimg_forV(*this,k) { 2.20475 + const T val = (T)(cleft<256?cleft**(col++)/256:((512-cleft)**(col++)+(cleft-256)*maxval)/256); 2.20476 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.20477 + ptrd+=whz; 2.20478 + } 2.20479 + ptrd-=offx; 2.20480 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.20481 + } 2.20482 + } 2.20483 + return *this; 2.20484 + } 2.20485 + 2.20486 + //! Draw a 2D Gouraud-shaded colored triangle. 2.20487 + template<typename tc> 2.20488 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20489 + const int x1, const int y1, 2.20490 + const int x2, const int y2, 2.20491 + const CImg<tc>& color, 2.20492 + const float brightness0, 2.20493 + const float brightness1, 2.20494 + const float brightness2, 2.20495 + const float opacity=1) { 2.20496 + return draw_triangle(x0,y0,x1,y1,x2,y2,color.data,brightness0,brightness1,brightness2,opacity); 2.20497 + } 2.20498 + 2.20499 + //! Draw a 2D Gouraud-shaded colored triangle, with z-buffering. 2.20500 + template<typename tc> 2.20501 + CImg<T>& draw_triangle(float *const zbuffer, 2.20502 + const int x0, const int y0, const float z0, 2.20503 + const int x1, const int y1, const float z1, 2.20504 + const int x2, const int y2, const float z2, 2.20505 + const tc *const color, 2.20506 + const float brightness0, 2.20507 + const float brightness1, 2.20508 + const float brightness2, 2.20509 + const float opacity=1) { 2.20510 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.20511 + if (!color) 2.20512 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified color is (null).", 2.20513 + pixel_type()); 2.20514 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20515 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.20516 + const int whz = width*height*depth, offx = dim*whz; 2.20517 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.20518 + nc0 = (int)((brightness0<0?0:(brightness0>2?2:brightness0))*256), 2.20519 + nc1 = (int)((brightness1<0?0:(brightness1>2?2:brightness1))*256), 2.20520 + nc2 = (int)((brightness2<0?0:(brightness2>2?2:brightness2))*256); 2.20521 + float nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.20522 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nz0,nz1,nc0,nc1); 2.20523 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,nz0,nz2,nc0,nc2); 2.20524 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,nz1,nz2,nc1,nc2); 2.20525 + if (ny0>=dimy() || ny2<0) return *this; 2.20526 + float 2.20527 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.20528 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.20529 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.20530 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.20531 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))); 2.20532 + _cimg_for_triangle2(*this,xleft0,cleft0,xright0,cright0,y,nx0,ny0,nc0,nx1,ny1,nc1,nx2,ny2,nc2) { 2.20533 + if (y==ny1) { zl = nz1; pzl = pzn; } 2.20534 + int xleft = xleft0, xright = xright0, cleft = cleft0, cright = cright0; 2.20535 + float zleft = zl, zright = zr; 2.20536 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,cleft,cright); 2.20537 + const int 2.20538 + dx = xright - xleft, 2.20539 + dc = cright>cleft?cright - cleft:cleft - cright, 2.20540 + rc = dx?(cright-cleft)/dx:0, 2.20541 + sc = cright>cleft?1:-1, 2.20542 + ndc = dc-(dx?dx*(dc/dx):0); 2.20543 + const float pentez = (zright - zleft)/dx; 2.20544 + int errc = dx>>1; 2.20545 + if (xleft<0 && dx) { 2.20546 + cleft-=xleft*(cright - cleft)/dx; 2.20547 + zleft-=xleft*(zright - zleft)/dx; 2.20548 + } 2.20549 + if (xleft<0) xleft = 0; 2.20550 + if (xright>=dimx()-1) xright = dimx()-1; 2.20551 + T *ptrd = ptr(xleft,y); 2.20552 + float *ptrz = zbuffer + xleft + y*width; 2.20553 + if (opacity>=1) for (int x = xleft; x<=xright; ++x, ++ptrd, ++ptrz) { 2.20554 + if (zleft>*ptrz) { 2.20555 + *ptrz = zleft; 2.20556 + const tc *col = color; 2.20557 + cimg_forV(*this,k) { 2.20558 + *ptrd = (T)(cleft<256?cleft**(col++)/256:((512-cleft)**(col++)+(cleft-256)*maxval)/256); 2.20559 + ptrd+=whz; 2.20560 + } 2.20561 + ptrd-=offx; 2.20562 + } 2.20563 + zleft+=pentez; 2.20564 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.20565 + } else for (int x = xleft; x<=xright; ++x, ++ptrd, ++ptrz) { 2.20566 + if (zleft>*ptrz) { 2.20567 + *ptrz = zleft; 2.20568 + const tc *col = color; 2.20569 + cimg_forV(*this,k) { 2.20570 + const T val = (T)(cleft<256?cleft**(col++)/256:((512-cleft)**(col++)+(cleft-256)*maxval)/256); 2.20571 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.20572 + ptrd+=whz; 2.20573 + } 2.20574 + ptrd-=offx; 2.20575 + } 2.20576 + zleft+=pentez; 2.20577 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.20578 + } 2.20579 + zr+=pzr; zl+=pzl; 2.20580 + } 2.20581 + return *this; 2.20582 + } 2.20583 + 2.20584 + //! Draw a Gouraud triangle with z-buffer consideration. 2.20585 + template<typename tc> 2.20586 + CImg<T>& draw_triangle(float *const zbuffer, 2.20587 + const int x0, const int y0, const float z0, 2.20588 + const int x1, const int y1, const float z1, 2.20589 + const int x2, const int y2, const float z2, 2.20590 + const CImg<tc>& color, 2.20591 + const float brightness0, 2.20592 + const float brightness1, 2.20593 + const float brightness2, 2.20594 + const float opacity=1) { 2.20595 + return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color.data,brightness0,brightness1,brightness2,opacity); 2.20596 + } 2.20597 + 2.20598 + //! Draw a 2D textured triangle. 2.20599 + /** 2.20600 + \param x0 = X-coordinate of the first corner in the instance image. 2.20601 + \param y0 = Y-coordinate of the first corner in the instance image. 2.20602 + \param x1 = X-coordinate of the second corner in the instance image. 2.20603 + \param y1 = Y-coordinate of the second corner in the instance image. 2.20604 + \param x2 = X-coordinate of the third corner in the instance image. 2.20605 + \param y2 = Y-coordinate of the third corner in the instance image. 2.20606 + \param texture = texture image used to fill the triangle. 2.20607 + \param tx0 = X-coordinate of the first corner in the texture image. 2.20608 + \param ty0 = Y-coordinate of the first corner in the texture image. 2.20609 + \param tx1 = X-coordinate of the second corner in the texture image. 2.20610 + \param ty1 = Y-coordinate of the second corner in the texture image. 2.20611 + \param tx2 = X-coordinate of the third corner in the texture image. 2.20612 + \param ty2 = Y-coordinate of the third corner in the texture image. 2.20613 + \param opacity = opacity of the drawing. 2.20614 + \param brightness = brightness of the drawing (in [0,2]). 2.20615 + \note Clipping is supported, but texture coordinates do not support clipping. 2.20616 + **/ 2.20617 + template<typename tc> 2.20618 + CImg<T>& draw_triangle(const int x0, const int y0, 2.20619 + const int x1, const int y1, 2.20620 + const int x2, const int y2, 2.20621 + const CImg<tc>& texture, 2.20622 + const int tx0, const int ty0, 2.20623 + const int tx1, const int ty1, 2.20624 + const int tx2, const int ty2, 2.20625 + const float opacity=1, 2.20626 + const float brightness=1) { 2.20627 + if (is_empty()) return *this; 2.20628 + if (!texture || texture.dim<dim) 2.20629 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.20630 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.20631 + if (is_overlapped(texture)) return draw_triangle(x0,y0,x1,y1,x2,y2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,opacity,brightness); 2.20632 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20633 + const float 2.20634 + nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0), 2.20635 + nbrightness = brightness<0?0:(brightness>2?2:brightness); 2.20636 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.20637 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.20638 + ntx0 = tx0, nty0 = ty0, ntx1 = tx1, nty1 = ty1, ntx2 = tx2, nty2 = ty2; 2.20639 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1); 2.20640 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2); 2.20641 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2); 2.20642 + if (ny0>=dimy() || ny2<0) return *this; 2.20643 + _cimg_for_triangle3(*this,xleft0,txleft0,tyleft0,xright0,txright0,tyright0,y, 2.20644 + nx0,ny0,ntx0,nty0,nx1,ny1,ntx1,nty1,nx2,ny2,ntx2,nty2) { 2.20645 + int 2.20646 + xleft = xleft0, xright = xright0, 2.20647 + txleft = txleft0, txright = txright0, 2.20648 + tyleft = tyleft0, tyright = tyright0; 2.20649 + if (xright<xleft) cimg::swap(xleft,xright,txleft,txright,tyleft,tyright); 2.20650 + const int 2.20651 + dx = xright - xleft, 2.20652 + dtx = txright>txleft?txright - txleft:txleft - txright, 2.20653 + dty = tyright>tyleft?tyright - tyleft:tyleft - tyright, 2.20654 + rtx = dx?(txright - txleft)/dx:0, 2.20655 + rty = dx?(tyright - tyleft)/dx:0, 2.20656 + stx = txright>txleft?1:-1, 2.20657 + sty = tyright>tyleft?1:-1, 2.20658 + ndtx = dtx - (dx?dx*(dtx/dx):0), 2.20659 + ndty = dty - (dx?dx*(dty/dx):0); 2.20660 + int errtx = dx>>1, errty = errtx; 2.20661 + if (xleft<0 && dx) { 2.20662 + txleft-=xleft*(txright - txleft)/dx; 2.20663 + tyleft-=xleft*(tyright - tyleft)/dx; 2.20664 + } 2.20665 + if (xleft<0) xleft = 0; 2.20666 + if (xright>=dimx()-1) xright = dimx()-1; 2.20667 + T* ptrd = ptr(xleft,y,0,0); 2.20668 + if (opacity>=1) { 2.20669 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x) { 2.20670 + const tc *col = texture.ptr(txleft,tyleft); 2.20671 + cimg_forV(*this,k) { 2.20672 + *ptrd = (T)*col; 2.20673 + ptrd+=whz; col+=twhz; 2.20674 + } 2.20675 + ptrd-=offx; 2.20676 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20677 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20678 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x) { 2.20679 + const tc *col = texture.ptr(txleft,tyleft); 2.20680 + cimg_forV(*this,k) { 2.20681 + *ptrd = (T)(nbrightness**col); 2.20682 + ptrd+=whz; col+=twhz; 2.20683 + } 2.20684 + ptrd-=offx; 2.20685 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20686 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20687 + } else for (int x = xleft; x<=xright; ++x) { 2.20688 + const tc *col = texture.ptr(txleft,tyleft); 2.20689 + cimg_forV(*this,k) { 2.20690 + *ptrd = (T)((2-nbrightness)**(col++) + (nbrightness-1)*maxval); 2.20691 + ptrd+=whz; col+=twhz; 2.20692 + } 2.20693 + ptrd-=offx; 2.20694 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20695 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20696 + } 2.20697 + } else { 2.20698 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x) { 2.20699 + const tc *col = texture.ptr(txleft,tyleft); 2.20700 + cimg_forV(*this,k) { 2.20701 + *ptrd = (T)(nopacity**col + *ptrd*copacity); 2.20702 + ptrd+=whz; col+=twhz; 2.20703 + } 2.20704 + ptrd-=offx; 2.20705 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20706 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20707 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x) { 2.20708 + const tc *col = texture.ptr(txleft,tyleft); 2.20709 + cimg_forV(*this,k) { 2.20710 + *ptrd = (T)(nopacity*nbrightness**col + *ptrd*copacity); 2.20711 + ptrd+=whz; col+=twhz; 2.20712 + } 2.20713 + ptrd-=offx; 2.20714 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20715 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20716 + } else for (int x = xleft; x<=xright; ++x) { 2.20717 + const tc *col = texture.ptr(txleft,tyleft); 2.20718 + cimg_forV(*this,k) { 2.20719 + const T val = (T)((2-nbrightness)**(col++) + (nbrightness-1)*maxval); 2.20720 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.20721 + ptrd+=whz; col+=twhz; 2.20722 + } 2.20723 + ptrd-=offx; 2.20724 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.20725 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.20726 + } 2.20727 + } 2.20728 + } 2.20729 + return *this; 2.20730 + } 2.20731 + 2.20732 + //! Draw a 2D textured triangle, with perspective correction. 2.20733 + template<typename tc> 2.20734 + CImg<T>& draw_triangle(const int x0, const int y0, const float z0, 2.20735 + const int x1, const int y1, const float z1, 2.20736 + const int x2, const int y2, const float z2, 2.20737 + const CImg<tc>& texture, 2.20738 + const int tx0, const int ty0, 2.20739 + const int tx1, const int ty1, 2.20740 + const int tx2, const int ty2, 2.20741 + const float opacity=1, 2.20742 + const float brightness=1) { 2.20743 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.20744 + if (!texture || texture.dim<dim) 2.20745 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.20746 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.20747 + if (is_overlapped(texture)) return draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,opacity,brightness); 2.20748 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20749 + const float 2.20750 + nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0), 2.20751 + nbrightness = brightness<0?0:(brightness>2?2:brightness); 2.20752 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.20753 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2; 2.20754 + float 2.20755 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.20756 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.20757 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.20758 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.20759 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nz0,nz1); 2.20760 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nz0,nz2); 2.20761 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nz1,nz2); 2.20762 + if (ny0>=dimy() || ny2<0) return *this; 2.20763 + float 2.20764 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.20765 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.20766 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.20767 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.20768 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.20769 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.20770 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.20771 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.20772 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.20773 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.20774 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.20775 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.20776 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.20777 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.20778 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.20779 + _cimg_for_triangle1(*this,xleft0,xright0,y,nx0,ny0,nx1,ny1,nx2,ny2) { 2.20780 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.20781 + int xleft = xleft0, xright = xright0; 2.20782 + float 2.20783 + zleft = zl, zright = zr, 2.20784 + txleft = txl, txright = txr, 2.20785 + tyleft = tyl, tyright = tyr; 2.20786 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright); 2.20787 + const int dx = xright - xleft; 2.20788 + const float 2.20789 + pentez = (zright - zleft)/dx, 2.20790 + pentetx = (txright - txleft)/dx, 2.20791 + pentety = (tyright - tyleft)/dx; 2.20792 + if (xleft<0 && dx) { 2.20793 + zleft-=xleft*(zright - zleft)/dx; 2.20794 + txleft-=xleft*(txright - txleft)/dx; 2.20795 + tyleft-=xleft*(tyright - tyleft)/dx; 2.20796 + } 2.20797 + if (xleft<0) xleft = 0; 2.20798 + if (xright>=dimx()-1) xright = dimx()-1; 2.20799 + T* ptrd = ptr(xleft,y,0,0); 2.20800 + if (opacity>=1) { 2.20801 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x) { 2.20802 + const float invz = 1/zleft; 2.20803 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20804 + cimg_forV(*this,k) { 2.20805 + *ptrd = (T)*col; 2.20806 + ptrd+=whz; col+=twhz; 2.20807 + } 2.20808 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20809 + } else if (nbrightness<1) for (int x=xleft; x<=xright; ++x) { 2.20810 + const float invz = 1/zleft; 2.20811 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20812 + cimg_forV(*this,k) { 2.20813 + *ptrd = (T)(nbrightness**col); 2.20814 + ptrd+=whz; col+=twhz; 2.20815 + } 2.20816 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20817 + } else for (int x = xleft; x<=xright; ++x) { 2.20818 + const float invz = 1/zleft; 2.20819 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20820 + cimg_forV(*this,k) { 2.20821 + *ptrd = (T)((2-nbrightness)**col + (nbrightness-1)*maxval); 2.20822 + ptrd+=whz; col+=twhz; 2.20823 + } 2.20824 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20825 + } 2.20826 + } else { 2.20827 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x) { 2.20828 + const float invz = 1/zleft; 2.20829 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20830 + cimg_forV(*this,k) { 2.20831 + *ptrd = (T)(nopacity**col + *ptrd*copacity); 2.20832 + ptrd+=whz; col+=twhz; 2.20833 + } 2.20834 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20835 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x) { 2.20836 + const float invz = 1/zleft; 2.20837 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20838 + cimg_forV(*this,k) { 2.20839 + *ptrd = (T)(nopacity*nbrightness**col + *ptrd*copacity); 2.20840 + ptrd+=whz; col+=twhz; 2.20841 + } 2.20842 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20843 + } else for (int x = xleft; x<=xright; ++x) { 2.20844 + const float invz = 1/zleft; 2.20845 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20846 + cimg_forV(*this,k) { 2.20847 + const T val = (T)((2-nbrightness)**col + (nbrightness-1)*maxval); 2.20848 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.20849 + ptrd+=whz; col+=twhz; 2.20850 + } 2.20851 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20852 + } 2.20853 + } 2.20854 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.20855 + } 2.20856 + return *this; 2.20857 + } 2.20858 + 2.20859 + //! Draw a 2D textured triangle, with z-buffering and perspective correction. 2.20860 + template<typename tc> 2.20861 + CImg<T>& draw_triangle(float *const zbuffer, 2.20862 + const int x0, const int y0, const float z0, 2.20863 + const int x1, const int y1, const float z1, 2.20864 + const int x2, const int y2, const float z2, 2.20865 + const CImg<tc>& texture, 2.20866 + const int tx0, const int ty0, 2.20867 + const int tx1, const int ty1, 2.20868 + const int tx2, const int ty2, 2.20869 + const float opacity=1, 2.20870 + const float brightness=1) { 2.20871 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.20872 + if (!texture || texture.dim<dim) 2.20873 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.20874 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.20875 + if (is_overlapped(texture)) return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,opacity,brightness); 2.20876 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.20877 + const float 2.20878 + nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0), 2.20879 + nbrightness = brightness<0?0:(brightness>2?2:brightness); 2.20880 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz; 2.20881 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2; 2.20882 + float 2.20883 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.20884 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.20885 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.20886 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.20887 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nz0,nz1); 2.20888 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nz0,nz2); 2.20889 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nz1,nz2); 2.20890 + if (ny0>=dimy() || ny2<0) return *this; 2.20891 + float 2.20892 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.20893 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.20894 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.20895 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.20896 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.20897 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.20898 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.20899 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.20900 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.20901 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.20902 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.20903 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.20904 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.20905 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.20906 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.20907 + _cimg_for_triangle1(*this,xleft0,xright0,y,nx0,ny0,nx1,ny1,nx2,ny2) { 2.20908 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.20909 + int xleft = xleft0, xright = xright0; 2.20910 + float 2.20911 + zleft = zl, zright = zr, 2.20912 + txleft = txl, txright = txr, 2.20913 + tyleft = tyl, tyright = tyr; 2.20914 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright); 2.20915 + const int dx = xright - xleft; 2.20916 + const float 2.20917 + pentez = (zright - zleft)/dx, 2.20918 + pentetx = (txright - txleft)/dx, 2.20919 + pentety = (tyright - tyleft)/dx; 2.20920 + if (xleft<0 && dx) { 2.20921 + zleft-=xleft*(zright - zleft)/dx; 2.20922 + txleft-=xleft*(txright - txleft)/dx; 2.20923 + tyleft-=xleft*(tyright - tyleft)/dx; 2.20924 + } 2.20925 + if (xleft<0) xleft = 0; 2.20926 + if (xright>=dimx()-1) xright = dimx()-1; 2.20927 + T *ptrd = ptr(xleft,y,0,0); 2.20928 + float *ptrz = zbuffer + xleft + y*width; 2.20929 + if (opacity>=1) { 2.20930 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20931 + if (zleft>*ptrz) { 2.20932 + *ptrz = zleft; 2.20933 + const float invz = 1/zleft; 2.20934 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20935 + cimg_forV(*this,k) { 2.20936 + *ptrd = (T)*col; 2.20937 + ptrd+=whz; col+=twhz; 2.20938 + } 2.20939 + ptrd-=offx; 2.20940 + } 2.20941 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20942 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20943 + if (zleft>*ptrz) { 2.20944 + *ptrz = zleft; 2.20945 + const float invz = 1/zleft; 2.20946 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20947 + cimg_forV(*this,k) { 2.20948 + *ptrd = (T)(nbrightness**col); 2.20949 + ptrd+=whz; col+=twhz; 2.20950 + } 2.20951 + ptrd-=offx; 2.20952 + } 2.20953 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20954 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20955 + if (zleft>*ptrz) { 2.20956 + *ptrz = zleft; 2.20957 + const float invz = 1/zleft; 2.20958 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20959 + cimg_forV(*this,k) { 2.20960 + *ptrd = (T)((2-nbrightness)**col + (nbrightness-1)*maxval); 2.20961 + ptrd+=whz; col+=twhz; 2.20962 + } 2.20963 + ptrd-=offx; 2.20964 + } 2.20965 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20966 + } 2.20967 + } else { 2.20968 + if (nbrightness==1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20969 + if (zleft>*ptrz) { 2.20970 + *ptrz = zleft; 2.20971 + const float invz = 1/zleft; 2.20972 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20973 + cimg_forV(*this,k) { 2.20974 + *ptrd = (T)(nopacity**col + *ptrd*copacity); 2.20975 + ptrd+=whz; col+=twhz; 2.20976 + } 2.20977 + ptrd-=offx; 2.20978 + } 2.20979 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20980 + } else if (nbrightness<1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20981 + if (zleft>*ptrz) { 2.20982 + *ptrz = zleft; 2.20983 + const float invz = 1/zleft; 2.20984 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20985 + cimg_forV(*this,k) { 2.20986 + *ptrd = (T)(nopacity*nbrightness**col + *ptrd*copacity); 2.20987 + ptrd+=whz; col+=twhz; 2.20988 + } 2.20989 + ptrd-=offx; 2.20990 + } 2.20991 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.20992 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.20993 + if (zleft>*ptrz) { 2.20994 + *ptrz = zleft; 2.20995 + const float invz = 1/zleft; 2.20996 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.20997 + cimg_forV(*this,k) { 2.20998 + const T val = (T)((2-nbrightness)**col + (nbrightness-1)*maxval); 2.20999 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21000 + ptrd+=whz; col+=twhz; 2.21001 + } 2.21002 + ptrd-=offx; 2.21003 + } 2.21004 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21005 + } 2.21006 + } 2.21007 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.21008 + } 2.21009 + return *this; 2.21010 + } 2.21011 + 2.21012 + //! Draw a 2D Pseudo-Phong-shaded triangle. 2.21013 + /** 2.21014 + \param x0 = X-coordinate of the first corner in the instance image. 2.21015 + \param y0 = Y-coordinate of the first corner in the instance image. 2.21016 + \param x1 = X-coordinate of the second corner in the instance image. 2.21017 + \param y1 = Y-coordinate of the second corner in the instance image. 2.21018 + \param x2 = X-coordinate of the third corner in the instance image. 2.21019 + \param y2 = Y-coordinate of the third corner in the instance image. 2.21020 + \param color = array of dimv() values of type \c T, defining the global drawing color. 2.21021 + \param light = light image. 2.21022 + \param lx0 = X-coordinate of the first corner in the light image. 2.21023 + \param ly0 = Y-coordinate of the first corner in the light image. 2.21024 + \param lx1 = X-coordinate of the second corner in the light image. 2.21025 + \param ly1 = Y-coordinate of the second corner in the light image. 2.21026 + \param lx2 = X-coordinate of the third corner in the light image. 2.21027 + \param ly2 = Y-coordinate of the third corner in the light image. 2.21028 + \param opacity = opacity of the drawing. 2.21029 + \note Clipping is supported, but texture coordinates do not support clipping. 2.21030 + **/ 2.21031 + template<typename tc, typename tl> 2.21032 + CImg<T>& draw_triangle(const int x0, const int y0, 2.21033 + const int x1, const int y1, 2.21034 + const int x2, const int y2, 2.21035 + const tc *const color, 2.21036 + const CImg<tl>& light, 2.21037 + const int lx0, const int ly0, 2.21038 + const int lx1, const int ly1, 2.21039 + const int lx2, const int ly2, 2.21040 + const float opacity=1) { 2.21041 + if (is_empty()) return *this; 2.21042 + if (!color) 2.21043 + throw CImgArgumentException("CImg<%s>::draw_triangle : Specified color is (null).", 2.21044 + pixel_type()); 2.21045 + if (!light) 2.21046 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified light texture (%u,%u,%u,%u,%p) is empty.", 2.21047 + pixel_type(),light.width,light.height,light.depth,light.dim,light.data); 2.21048 + if (is_overlapped(light)) return draw_triangle(x0,y0,x1,y1,x2,y2,color,+light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21049 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21050 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21051 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21052 + nlx0 = lx0, nly0 = ly0, nlx1 = lx1, nly1 = ly1, nlx2 = lx2, nly2 = ly2; 2.21053 + const int whz = width*height*depth, offx = dim*whz-1; 2.21054 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nlx0,nlx1,nly0,nly1); 2.21055 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,nlx0,nlx2,nly0,nly2); 2.21056 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,nlx1,nlx2,nly1,nly2); 2.21057 + if (ny0>=dimy() || ny2<0) return *this; 2.21058 + _cimg_for_triangle3(*this,xleft0,lxleft0,lyleft0,xright0,lxright0,lyright0,y, 2.21059 + nx0,ny0,nlx0,nly0,nx1,ny1,nlx1,nly1,nx2,ny2,nlx2,nly2) { 2.21060 + int 2.21061 + xleft = xleft0, xright = xright0, 2.21062 + lxleft = lxleft0, lxright = lxright0, 2.21063 + lyleft = lyleft0, lyright = lyright0; 2.21064 + if (xright<xleft) cimg::swap(xleft,xright,lxleft,lxright,lyleft,lyright); 2.21065 + const int 2.21066 + dx = xright - xleft, 2.21067 + dlx = lxright>lxleft?lxright - lxleft:lxleft - lxright, 2.21068 + dly = lyright>lyleft?lyright - lyleft:lyleft - lyright, 2.21069 + rlx = dx?(lxright - lxleft)/dx:0, 2.21070 + rly = dx?(lyright - lyleft)/dx:0, 2.21071 + slx = lxright>lxleft?1:-1, 2.21072 + sly = lyright>lyleft?1:-1, 2.21073 + ndlx = dlx - (dx?dx*(dlx/dx):0), 2.21074 + ndly = dly - (dx?dx*(dly/dx):0); 2.21075 + int errlx = dx>>1, errly = errlx; 2.21076 + if (xleft<0 && dx) { 2.21077 + lxleft-=xleft*(lxright - lxleft)/dx; 2.21078 + lyleft-=xleft*(lyright - lyleft)/dx; 2.21079 + } 2.21080 + if (xleft<0) xleft = 0; 2.21081 + if (xright>=dimx()-1) xright = dimx()-1; 2.21082 + T* ptrd = ptr(xleft,y,0,0); 2.21083 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.21084 + const tl l = light(lxleft,lyleft); 2.21085 + const tc *col = color; 2.21086 + cimg_forV(*this,k) { 2.21087 + *ptrd = (T)(l<1?l**(col++):((2-l)**(col++)+(l-1)*maxval)); 2.21088 + ptrd+=whz; 2.21089 + } 2.21090 + ptrd-=offx; 2.21091 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21092 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21093 + } else for (int x = xleft; x<=xright; ++x) { 2.21094 + const tl l = light(lxleft,lyleft); 2.21095 + const tc *col = color; 2.21096 + cimg_forV(*this,k) { 2.21097 + const T val = (T)(l<1?l**(col++):((2-l)**(col++)+(l-1)*maxval)); 2.21098 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21099 + ptrd+=whz; 2.21100 + } 2.21101 + ptrd-=offx; 2.21102 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21103 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21104 + } 2.21105 + } 2.21106 + return *this; 2.21107 + } 2.21108 + 2.21109 + //! Draw a 2D Pseudo-Phong-shaded triangle. 2.21110 + template<typename tc, typename tl> 2.21111 + CImg<T>& draw_triangle(const int x0, const int y0, 2.21112 + const int x1, const int y1, 2.21113 + const int x2, const int y2, 2.21114 + const CImg<tc>& color, 2.21115 + const CImg<tl>& light, 2.21116 + const int lx0, const int ly0, 2.21117 + const int lx1, const int ly1, 2.21118 + const int lx2, const int ly2, 2.21119 + const float opacity=1) { 2.21120 + return draw_triangle(x0,y0,x1,y1,x2,y2,color.data,light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21121 + } 2.21122 + 2.21123 + //! Draw a 2D Pseudo-Phong-shaded triangle, with z-buffering. 2.21124 + template<typename tc, typename tl> 2.21125 + CImg<T>& draw_triangle(float *const zbuffer, 2.21126 + const int x0, const int y0, const float z0, 2.21127 + const int x1, const int y1, const float z1, 2.21128 + const int x2, const int y2, const float z2, 2.21129 + const tc *const color, 2.21130 + const CImg<tl>& light, 2.21131 + const int lx0, const int ly0, 2.21132 + const int lx1, const int ly1, 2.21133 + const int lx2, const int ly2, 2.21134 + const float opacity=1) { 2.21135 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.21136 + if (!color) 2.21137 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified color is (null).", 2.21138 + pixel_type()); 2.21139 + if (!light) 2.21140 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified light texture (%u,%u,%u,%u,%p) is empty.", 2.21141 + pixel_type(),light.width,light.height,light.depth,light.dim,light.data); 2.21142 + if (is_overlapped(light)) return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color, 2.21143 + +light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21144 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21145 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21146 + const int whz = width*height*depth, offx = dim*whz; 2.21147 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21148 + nlx0 = lx0, nly0 = ly0, nlx1 = lx1, nly1 = ly1, nlx2 = lx2, nly2 = ly2; 2.21149 + float nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.21150 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,nlx0,nlx1,nly0,nly1,nz0,nz1); 2.21151 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,nlx0,nlx2,nly0,nly2,nz0,nz2); 2.21152 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,nlx1,nlx2,nly1,nly2,nz1,nz2); 2.21153 + if (ny0>=dimy() || ny2<0) return *this; 2.21154 + float 2.21155 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.21156 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.21157 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.21158 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.21159 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))); 2.21160 + _cimg_for_triangle3(*this,xleft0,lxleft0,lyleft0,xright0,lxright0,lyright0,y, 2.21161 + nx0,ny0,nlx0,nly0,nx1,ny1,nlx1,nly1,nx2,ny2,nlx2,nly2) { 2.21162 + if (y==ny1) { zl = nz1; pzl = pzn; } 2.21163 + int 2.21164 + xleft = xleft0, xright = xright0, 2.21165 + lxleft = lxleft0, lxright = lxright0, 2.21166 + lyleft = lyleft0, lyright = lyright0; 2.21167 + float zleft = zl, zright = zr; 2.21168 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,lxleft,lxright,lyleft,lyright); 2.21169 + const int 2.21170 + dx = xright - xleft, 2.21171 + dlx = lxright>lxleft?lxright - lxleft:lxleft - lxright, 2.21172 + dly = lyright>lyleft?lyright - lyleft:lyleft - lyright, 2.21173 + rlx = dx?(lxright - lxleft)/dx:0, 2.21174 + rly = dx?(lyright - lyleft)/dx:0, 2.21175 + slx = lxright>lxleft?1:-1, 2.21176 + sly = lyright>lyleft?1:-1, 2.21177 + ndlx = dlx - (dx?dx*(dlx/dx):0), 2.21178 + ndly = dly - (dx?dx*(dly/dx):0); 2.21179 + const float pentez = (zright - zleft)/dx; 2.21180 + int errlx = dx>>1, errly = errlx; 2.21181 + if (xleft<0 && dx) { 2.21182 + zleft-=xleft*(zright - zleft)/dx; 2.21183 + lxleft-=xleft*(lxright - lxleft)/dx; 2.21184 + lyleft-=xleft*(lyright - lyleft)/dx; 2.21185 + } 2.21186 + if (xleft<0) xleft = 0; 2.21187 + if (xright>=dimx()-1) xright = dimx()-1; 2.21188 + T *ptrd = ptr(xleft,y,0,0); 2.21189 + float *ptrz = zbuffer + xleft + y*width; 2.21190 + if (opacity>=1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.21191 + if (zleft>*ptrz) { 2.21192 + *ptrz = zleft; 2.21193 + const tl l = light(lxleft,lyleft); 2.21194 + const tc *col = color; 2.21195 + cimg_forV(*this,k) { 2.21196 + const tc cval = *(col++); 2.21197 + *ptrd = (T)(l<1?l*cval:(2-l)*cval+(l-1)*maxval); 2.21198 + ptrd+=whz; 2.21199 + } 2.21200 + ptrd-=offx; 2.21201 + } 2.21202 + zleft+=pentez; 2.21203 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21204 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21205 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.21206 + if (zleft>*ptrz) { 2.21207 + *ptrz = zleft; 2.21208 + const tl l = light(lxleft,lyleft); 2.21209 + const tc *col = color; 2.21210 + cimg_forV(*this,k) { 2.21211 + const tc cval = *(col++); 2.21212 + const T val = (T)(l<1?l*cval:(2-l)*cval+(l-1)*maxval); 2.21213 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21214 + ptrd+=whz; 2.21215 + } 2.21216 + ptrd-=offx; 2.21217 + } 2.21218 + zleft+=pentez; 2.21219 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21220 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21221 + } 2.21222 + zr+=pzr; zl+=pzl; 2.21223 + } 2.21224 + return *this; 2.21225 + } 2.21226 + 2.21227 + //! Draw a 2D Pseudo-Phong-shaded triangle, with z-buffering. 2.21228 + template<typename tc, typename tl> 2.21229 + CImg<T>& draw_triangle(float *const zbuffer, 2.21230 + const int x0, const int y0, const float z0, 2.21231 + const int x1, const int y1, const float z1, 2.21232 + const int x2, const int y2, const float z2, 2.21233 + const CImg<tc>& color, 2.21234 + const CImg<tl>& light, 2.21235 + const int lx0, const int ly0, 2.21236 + const int lx1, const int ly1, 2.21237 + const int lx2, const int ly2, 2.21238 + const float opacity=1) { 2.21239 + return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color.data,light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21240 + } 2.21241 + 2.21242 + //! Draw a 2D Gouraud-shaded textured triangle. 2.21243 + /** 2.21244 + \param x0 = X-coordinate of the first corner in the instance image. 2.21245 + \param y0 = Y-coordinate of the first corner in the instance image. 2.21246 + \param x1 = X-coordinate of the second corner in the instance image. 2.21247 + \param y1 = Y-coordinate of the second corner in the instance image. 2.21248 + \param x2 = X-coordinate of the third corner in the instance image. 2.21249 + \param y2 = Y-coordinate of the third corner in the instance image. 2.21250 + \param texture = texture image used to fill the triangle. 2.21251 + \param tx0 = X-coordinate of the first corner in the texture image. 2.21252 + \param ty0 = Y-coordinate of the first corner in the texture image. 2.21253 + \param tx1 = X-coordinate of the second corner in the texture image. 2.21254 + \param ty1 = Y-coordinate of the second corner in the texture image. 2.21255 + \param tx2 = X-coordinate of the third corner in the texture image. 2.21256 + \param ty2 = Y-coordinate of the third corner in the texture image. 2.21257 + \param brightness0 = brightness value of the first corner. 2.21258 + \param brightness1 = brightness value of the second corner. 2.21259 + \param brightness2 = brightness value of the third corner. 2.21260 + \param opacity = opacity of the drawing. 2.21261 + \note Clipping is supported, but texture coordinates do not support clipping. 2.21262 + **/ 2.21263 + template<typename tc> 2.21264 + CImg<T>& draw_triangle(const int x0, const int y0, 2.21265 + const int x1, const int y1, 2.21266 + const int x2, const int y2, 2.21267 + const CImg<tc>& texture, 2.21268 + const int tx0, const int ty0, 2.21269 + const int tx1, const int ty1, 2.21270 + const int tx2, const int ty2, 2.21271 + const float brightness0, 2.21272 + const float brightness1, 2.21273 + const float brightness2, 2.21274 + const float opacity=1) { 2.21275 + if (is_empty()) return *this; 2.21276 + if (!texture || texture.dim<dim) 2.21277 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21278 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21279 + if (is_overlapped(texture)) 2.21280 + return draw_triangle(x0,y0,x1,y1,x2,y2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,brightness0,brightness1,brightness2,opacity); 2.21281 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21282 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21283 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.21284 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21285 + ntx0 = tx0, nty0 = ty0, ntx1 = tx1, nty1 = ty1, ntx2 = tx2, nty2 = ty2, 2.21286 + nc0 = (int)((brightness0<0?0:(brightness0>2?2:brightness0))*256), 2.21287 + nc1 = (int)((brightness1<0?0:(brightness1>2?2:brightness1))*256), 2.21288 + nc2 = (int)((brightness2<0?0:(brightness2>2?2:brightness2))*256); 2.21289 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nc0,nc1); 2.21290 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nc0,nc2); 2.21291 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nc1,nc2); 2.21292 + if (ny0>=dimy() || ny2<0) return *this; 2.21293 + _cimg_for_triangle4(*this,xleft0,cleft0,txleft0,tyleft0,xright0,cright0,txright0,tyright0,y, 2.21294 + nx0,ny0,nc0,ntx0,nty0,nx1,ny1,nc1,ntx1,nty1,nx2,ny2,nc2,ntx2,nty2) { 2.21295 + int 2.21296 + xleft = xleft0, xright = xright0, 2.21297 + cleft = cleft0, cright = cright0, 2.21298 + txleft = txleft0, txright = txright0, 2.21299 + tyleft = tyleft0, tyright = tyright0; 2.21300 + if (xright<xleft) cimg::swap(xleft,xright,cleft,cright,txleft,txright,tyleft,tyright); 2.21301 + const int 2.21302 + dx = xright - xleft, 2.21303 + dc = cright>cleft?cright - cleft:cleft - cright, 2.21304 + dtx = txright>txleft?txright - txleft:txleft - txright, 2.21305 + dty = tyright>tyleft?tyright - tyleft:tyleft - tyright, 2.21306 + rc = dx?(cright - cleft)/dx:0, 2.21307 + rtx = dx?(txright - txleft)/dx:0, 2.21308 + rty = dx?(tyright - tyleft)/dx:0, 2.21309 + sc = cright>cleft?1:-1, 2.21310 + stx = txright>txleft?1:-1, 2.21311 + sty = tyright>tyleft?1:-1, 2.21312 + ndc = dc - (dx?dx*(dc/dx):0), 2.21313 + ndtx = dtx - (dx?dx*(dtx/dx):0), 2.21314 + ndty = dty - (dx?dx*(dty/dx):0); 2.21315 + int errc = dx>>1, errtx = errc, errty = errc; 2.21316 + if (xleft<0 && dx) { 2.21317 + cleft-=xleft*(cright - cleft)/dx; 2.21318 + txleft-=xleft*(txright - txleft)/dx; 2.21319 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21320 + } 2.21321 + if (xleft<0) xleft = 0; 2.21322 + if (xright>=dimx()-1) xright = dimx()-1; 2.21323 + T* ptrd = ptr(xleft,y,0,0); 2.21324 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.21325 + const tc *col = texture.ptr(txleft,tyleft); 2.21326 + cimg_forV(*this,k) { 2.21327 + *ptrd = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21328 + ptrd+=whz; col+=twhz; 2.21329 + } 2.21330 + ptrd-=offx; 2.21331 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21332 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.21333 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.21334 + } else for (int x = xleft; x<=xright; ++x) { 2.21335 + const tc *col = texture.ptr(txleft,tyleft); 2.21336 + cimg_forV(*this,k) { 2.21337 + const T val = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21338 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21339 + ptrd+=whz; col+=twhz; 2.21340 + } 2.21341 + ptrd-=offx; 2.21342 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21343 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.21344 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.21345 + } 2.21346 + } 2.21347 + return *this; 2.21348 + } 2.21349 + 2.21350 + //! Draw a 2D Gouraud-shaded textured triangle, with perspective correction. 2.21351 + template<typename tc> 2.21352 + CImg<T>& draw_triangle(const int x0, const int y0, const float z0, 2.21353 + const int x1, const int y1, const float z1, 2.21354 + const int x2, const int y2, const float z2, 2.21355 + const CImg<tc>& texture, 2.21356 + const int tx0, const int ty0, 2.21357 + const int tx1, const int ty1, 2.21358 + const int tx2, const int ty2, 2.21359 + const float brightness0, 2.21360 + const float brightness1, 2.21361 + const float brightness2, 2.21362 + const float opacity=1) { 2.21363 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.21364 + if (!texture || texture.dim<dim) 2.21365 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21366 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21367 + if (is_overlapped(texture)) return draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,+texture,tx0,ty0,tx1,ty1,tx2,ty2, 2.21368 + brightness0,brightness1,brightness2,opacity); 2.21369 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21370 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21371 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.21372 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21373 + nc0 = (int)((brightness0<0?0:(brightness0>2?2:brightness0))*256), 2.21374 + nc1 = (int)((brightness1<0?0:(brightness1>2?2:brightness1))*256), 2.21375 + nc2 = (int)((brightness2<0?0:(brightness2>2?2:brightness2))*256); 2.21376 + float 2.21377 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.21378 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.21379 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.21380 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.21381 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nz0,nz1,nc0,nc1); 2.21382 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nz0,nz2,nc0,nc2); 2.21383 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nz1,nz2,nc1,nc2); 2.21384 + if (ny0>=dimy() || ny2<0) return *this; 2.21385 + float 2.21386 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.21387 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.21388 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.21389 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.21390 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.21391 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.21392 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.21393 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.21394 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.21395 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.21396 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.21397 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.21398 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.21399 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.21400 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.21401 + _cimg_for_triangle2(*this,xleft0,cleft0,xright0,cright0,y,nx0,ny0,nc0,nx1,ny1,nc1,nx2,ny2,nc2) { 2.21402 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.21403 + int 2.21404 + xleft = xleft0, xright = xright0, 2.21405 + cleft = cleft0, cright = cright0; 2.21406 + float 2.21407 + zleft = zl, zright = zr, 2.21408 + txleft = txl, txright = txr, 2.21409 + tyleft = tyl, tyright = tyr; 2.21410 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright,cleft,cright); 2.21411 + const int 2.21412 + dx = xright - xleft, 2.21413 + dc = cright>cleft?cright - cleft:cleft - cright, 2.21414 + rc = dx?(cright - cleft)/dx:0, 2.21415 + sc = cright>cleft?1:-1, 2.21416 + ndc = dc - (dx?dx*(dc/dx):0); 2.21417 + const float 2.21418 + pentez = (zright - zleft)/dx, 2.21419 + pentetx = (txright - txleft)/dx, 2.21420 + pentety = (tyright - tyleft)/dx; 2.21421 + int errc = dx>>1; 2.21422 + if (xleft<0 && dx) { 2.21423 + cleft-=xleft*(cright - cleft)/dx; 2.21424 + zleft-=xleft*(zright - zleft)/dx; 2.21425 + txleft-=xleft*(txright - txleft)/dx; 2.21426 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21427 + } 2.21428 + if (xleft<0) xleft = 0; 2.21429 + if (xright>=dimx()-1) xright = dimx()-1; 2.21430 + T* ptrd = ptr(xleft,y,0,0); 2.21431 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.21432 + const float invz = 1/zleft; 2.21433 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21434 + cimg_forV(*this,k) { 2.21435 + *ptrd = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21436 + ptrd+=whz; col+=twhz; 2.21437 + } 2.21438 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21439 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21440 + } else for (int x = xleft; x<=xright; ++x) { 2.21441 + const float invz = 1/zleft; 2.21442 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21443 + cimg_forV(*this,k) { 2.21444 + const T val = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21445 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21446 + ptrd+=whz; col+=twhz; 2.21447 + } 2.21448 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21449 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21450 + } 2.21451 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.21452 + } 2.21453 + return *this; 2.21454 + } 2.21455 + 2.21456 + //! Draw a 2D Gouraud-shaded textured triangle, with z-buffering and perspective correction. 2.21457 + template<typename tc> 2.21458 + CImg<T>& draw_triangle(float *const zbuffer, 2.21459 + const int x0, const int y0, const float z0, 2.21460 + const int x1, const int y1, const float z1, 2.21461 + const int x2, const int y2, const float z2, 2.21462 + const CImg<tc>& texture, 2.21463 + const int tx0, const int ty0, 2.21464 + const int tx1, const int ty1, 2.21465 + const int tx2, const int ty2, 2.21466 + const float brightness0, 2.21467 + const float brightness1, 2.21468 + const float brightness2, 2.21469 + const float opacity=1) { 2.21470 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.21471 + if (!texture || texture.dim<dim) 2.21472 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21473 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21474 + if (is_overlapped(texture)) return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,+texture,tx0,ty0,tx1,ty1,tx2,ty2, 2.21475 + brightness0,brightness1,brightness2,opacity); 2.21476 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21477 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21478 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz; 2.21479 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21480 + nc0 = (int)((brightness0<0?0:(brightness0>2?2:brightness0))*256), 2.21481 + nc1 = (int)((brightness1<0?0:(brightness1>2?2:brightness1))*256), 2.21482 + nc2 = (int)((brightness2<0?0:(brightness2>2?2:brightness2))*256); 2.21483 + float 2.21484 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.21485 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.21486 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.21487 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.21488 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nz0,nz1,nc0,nc1); 2.21489 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nz0,nz2,nc0,nc2); 2.21490 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nz1,nz2,nc1,nc2); 2.21491 + if (ny0>=dimy() || ny2<0) return *this; 2.21492 + float 2.21493 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.21494 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.21495 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.21496 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.21497 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.21498 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.21499 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.21500 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.21501 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.21502 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.21503 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.21504 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.21505 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.21506 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.21507 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.21508 + _cimg_for_triangle2(*this,xleft0,cleft0,xright0,cright0,y,nx0,ny0,nc0,nx1,ny1,nc1,nx2,ny2,nc2) { 2.21509 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.21510 + int 2.21511 + xleft = xleft0, xright = xright0, 2.21512 + cleft = cleft0, cright = cright0; 2.21513 + float 2.21514 + zleft = zl, zright = zr, 2.21515 + txleft = txl, txright = txr, 2.21516 + tyleft = tyl, tyright = tyr; 2.21517 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright,cleft,cright); 2.21518 + const int 2.21519 + dx = xright - xleft, 2.21520 + dc = cright>cleft?cright - cleft:cleft - cright, 2.21521 + rc = dx?(cright - cleft)/dx:0, 2.21522 + sc = cright>cleft?1:-1, 2.21523 + ndc = dc - (dx?dx*(dc/dx):0); 2.21524 + const float 2.21525 + pentez = (zright - zleft)/dx, 2.21526 + pentetx = (txright - txleft)/dx, 2.21527 + pentety = (tyright - tyleft)/dx; 2.21528 + int errc = dx>>1; 2.21529 + if (xleft<0 && dx) { 2.21530 + cleft-=xleft*(cright - cleft)/dx; 2.21531 + zleft-=xleft*(zright - zleft)/dx; 2.21532 + txleft-=xleft*(txright - txleft)/dx; 2.21533 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21534 + } 2.21535 + if (xleft<0) xleft = 0; 2.21536 + if (xright>=dimx()-1) xright = dimx()-1; 2.21537 + T* ptrd = ptr(xleft,y); 2.21538 + float *ptrz = zbuffer + xleft + y*width; 2.21539 + if (opacity>=1) for (int x = xleft; x<=xright; ++x, ++ptrd, ++ptrz) { 2.21540 + if (zleft>*ptrz) { 2.21541 + *ptrz = zleft; 2.21542 + const float invz = 1/zleft; 2.21543 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21544 + cimg_forV(*this,k) { 2.21545 + *ptrd = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21546 + ptrd+=whz; col+=twhz; 2.21547 + } 2.21548 + ptrd-=offx; 2.21549 + } 2.21550 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21551 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21552 + } else for (int x = xleft; x<=xright; ++x, ++ptrd, ++ptrz) { 2.21553 + if (zleft>*ptrz) { 2.21554 + *ptrz = zleft; 2.21555 + const float invz = 1/zleft; 2.21556 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21557 + cimg_forV(*this,k) { 2.21558 + const T val = (T)(cleft<256?cleft**col/256:((512-cleft)**col+(cleft-256)*maxval)/256); 2.21559 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21560 + ptrd+=whz; col+=twhz; 2.21561 + } 2.21562 + ptrd-=offx; 2.21563 + } 2.21564 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21565 + cleft+=rc+((errc-=ndc)<0?errc+=dx,sc:0); 2.21566 + } 2.21567 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.21568 + } 2.21569 + return *this; 2.21570 + } 2.21571 + 2.21572 + //! Draw a 2D Pseudo-Phong-shaded textured triangle. 2.21573 + /** 2.21574 + \param x0 = X-coordinate of the first corner in the instance image. 2.21575 + \param y0 = Y-coordinate of the first corner in the instance image. 2.21576 + \param x1 = X-coordinate of the second corner in the instance image. 2.21577 + \param y1 = Y-coordinate of the second corner in the instance image. 2.21578 + \param x2 = X-coordinate of the third corner in the instance image. 2.21579 + \param y2 = Y-coordinate of the third corner in the instance image. 2.21580 + \param texture = texture image used to fill the triangle. 2.21581 + \param tx0 = X-coordinate of the first corner in the texture image. 2.21582 + \param ty0 = Y-coordinate of the first corner in the texture image. 2.21583 + \param tx1 = X-coordinate of the second corner in the texture image. 2.21584 + \param ty1 = Y-coordinate of the second corner in the texture image. 2.21585 + \param tx2 = X-coordinate of the third corner in the texture image. 2.21586 + \param ty2 = Y-coordinate of the third corner in the texture image. 2.21587 + \param light = light image. 2.21588 + \param lx0 = X-coordinate of the first corner in the light image. 2.21589 + \param ly0 = Y-coordinate of the first corner in the light image. 2.21590 + \param lx1 = X-coordinate of the second corner in the light image. 2.21591 + \param ly1 = Y-coordinate of the second corner in the light image. 2.21592 + \param lx2 = X-coordinate of the third corner in the light image. 2.21593 + \param ly2 = Y-coordinate of the third corner in the light image. 2.21594 + \param opacity = opacity of the drawing. 2.21595 + \note Clipping is supported, but texture coordinates do not support clipping. 2.21596 + **/ 2.21597 + template<typename tc, typename tl> 2.21598 + CImg<T>& draw_triangle(const int x0, const int y0, 2.21599 + const int x1, const int y1, 2.21600 + const int x2, const int y2, 2.21601 + const CImg<tc>& texture, 2.21602 + const int tx0, const int ty0, 2.21603 + const int tx1, const int ty1, 2.21604 + const int tx2, const int ty2, 2.21605 + const CImg<tl>& light, 2.21606 + const int lx0, const int ly0, 2.21607 + const int lx1, const int ly1, 2.21608 + const int lx2, const int ly2, 2.21609 + const float opacity=1) { 2.21610 + if (is_empty()) return *this; 2.21611 + if (!texture || texture.dim<dim) 2.21612 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21613 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21614 + if (!light) 2.21615 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified light texture (%u,%u,%u,%u,%p) is empty.", 2.21616 + pixel_type(),light.width,light.height,light.depth,light.dim,light.data); 2.21617 + if (is_overlapped(texture)) return draw_triangle(x0,y0,x1,y1,x2,y2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21618 + if (is_overlapped(light)) return draw_triangle(x0,y0,x1,y1,x2,y2,texture,tx0,ty0,tx1,ty1,tx2,ty2,+light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21619 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21620 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21621 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.21622 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21623 + ntx0 = tx0, nty0 = ty0, ntx1 = tx1, nty1 = ty1, ntx2 = tx2, nty2 = ty2, 2.21624 + nlx0 = lx0, nly0 = ly0, nlx1 = lx1, nly1 = ly1, nlx2 = lx2, nly2 = ly2; 2.21625 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nlx0,nlx1,nly0,nly1); 2.21626 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nlx0,nlx2,nly0,nly2); 2.21627 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nlx1,nlx2,nly1,nly2); 2.21628 + if (ny0>=dimy() || ny2<0) return *this; 2.21629 + _cimg_for_triangle5(*this,xleft0,lxleft0,lyleft0,txleft0,tyleft0,xright0,lxright0,lyright0,txright0,tyright0,y, 2.21630 + nx0,ny0,nlx0,nly0,ntx0,nty0,nx1,ny1,nlx1,nly1,ntx1,nty1,nx2,ny2,nlx2,nly2,ntx2,nty2) { 2.21631 + int 2.21632 + xleft = xleft0, xright = xright0, 2.21633 + lxleft = lxleft0, lxright = lxright0, 2.21634 + lyleft = lyleft0, lyright = lyright0, 2.21635 + txleft = txleft0, txright = txright0, 2.21636 + tyleft = tyleft0, tyright = tyright0; 2.21637 + if (xright<xleft) cimg::swap(xleft,xright,lxleft,lxright,lyleft,lyright,txleft,txright,tyleft,tyright); 2.21638 + const int 2.21639 + dx = xright - xleft, 2.21640 + dlx = lxright>lxleft?lxright - lxleft:lxleft - lxright, 2.21641 + dly = lyright>lyleft?lyright - lyleft:lyleft - lyright, 2.21642 + dtx = txright>txleft?txright - txleft:txleft - txright, 2.21643 + dty = tyright>tyleft?tyright - tyleft:tyleft - tyright, 2.21644 + rlx = dx?(lxright - lxleft)/dx:0, 2.21645 + rly = dx?(lyright - lyleft)/dx:0, 2.21646 + rtx = dx?(txright - txleft)/dx:0, 2.21647 + rty = dx?(tyright - tyleft)/dx:0, 2.21648 + slx = lxright>lxleft?1:-1, 2.21649 + sly = lyright>lyleft?1:-1, 2.21650 + stx = txright>txleft?1:-1, 2.21651 + sty = tyright>tyleft?1:-1, 2.21652 + ndlx = dlx - (dx?dx*(dlx/dx):0), 2.21653 + ndly = dly - (dx?dx*(dly/dx):0), 2.21654 + ndtx = dtx - (dx?dx*(dtx/dx):0), 2.21655 + ndty = dty - (dx?dx*(dty/dx):0); 2.21656 + int errlx = dx>>1, errly = errlx, errtx = errlx, errty = errlx; 2.21657 + if (xleft<0 && dx) { 2.21658 + lxleft-=xleft*(lxright - lxleft)/dx; 2.21659 + lyleft-=xleft*(lyright - lyleft)/dx; 2.21660 + txleft-=xleft*(txright - txleft)/dx; 2.21661 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21662 + } 2.21663 + if (xleft<0) xleft = 0; 2.21664 + if (xright>=dimx()-1) xright = dimx()-1; 2.21665 + T* ptrd = ptr(xleft,y,0,0); 2.21666 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.21667 + const tl l = light(lxleft,lyleft); 2.21668 + const tc *col = texture.ptr(txleft,tyleft); 2.21669 + cimg_forV(*this,k) { 2.21670 + *ptrd = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21671 + ptrd+=whz; col+=twhz; 2.21672 + } 2.21673 + ptrd-=offx; 2.21674 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21675 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21676 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.21677 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.21678 + } else for (int x = xleft; x<=xright; ++x) { 2.21679 + const tl l = light(lxleft,lyleft); 2.21680 + const tc *col = texture.ptr(txleft,tyleft); 2.21681 + cimg_forV(*this,k) { 2.21682 + const T val = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21683 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21684 + ptrd+=whz; col+=twhz; 2.21685 + } 2.21686 + ptrd-=offx; 2.21687 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21688 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21689 + txleft+=rtx+((errtx-=ndtx)<0?errtx+=dx,stx:0); 2.21690 + tyleft+=rty+((errty-=ndty)<0?errty+=dx,sty:0); 2.21691 + } 2.21692 + } 2.21693 + return *this; 2.21694 + } 2.21695 + 2.21696 + //! Draw a 2D Pseudo-Phong-shaded textured triangle, with perspective correction. 2.21697 + template<typename tc, typename tl> 2.21698 + CImg<T>& draw_triangle(const int x0, const int y0, const float z0, 2.21699 + const int x1, const int y1, const float z1, 2.21700 + const int x2, const int y2, const float z2, 2.21701 + const CImg<tc>& texture, 2.21702 + const int tx0, const int ty0, 2.21703 + const int tx1, const int ty1, 2.21704 + const int tx2, const int ty2, 2.21705 + const CImg<tl>& light, 2.21706 + const int lx0, const int ly0, 2.21707 + const int lx1, const int ly1, 2.21708 + const int lx2, const int ly2, 2.21709 + const float opacity=1) { 2.21710 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.21711 + if (!texture || texture.dim<dim) 2.21712 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21713 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21714 + if (!light) 2.21715 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified light texture (%u,%u,%u,%u,%p) is empty.", 2.21716 + pixel_type(),light.width,light.height,light.depth,light.dim,light.data); 2.21717 + if (is_overlapped(texture)) return draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,+texture,tx0,ty0,tx1,ty1,tx2,ty2,light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21718 + if (is_overlapped(light)) return draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,texture,tx0,ty0,tx1,ty1,tx2,ty2,+light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21719 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21720 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21721 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz-1; 2.21722 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21723 + nlx0 = lx0, nly0 = ly0, nlx1 = lx1, nly1 = ly1, nlx2 = lx2, nly2 = ly2; 2.21724 + float 2.21725 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.21726 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.21727 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.21728 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.21729 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nlx0,nlx1,nly0,nly1,nz0,nz1); 2.21730 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nlx0,nlx2,nly0,nly2,nz0,nz2); 2.21731 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nlx1,nlx2,nly1,nly2,nz1,nz2); 2.21732 + if (ny0>=dimy() || ny2<0) return *this; 2.21733 + float 2.21734 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.21735 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.21736 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.21737 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.21738 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.21739 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.21740 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.21741 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.21742 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.21743 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.21744 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.21745 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.21746 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.21747 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.21748 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.21749 + _cimg_for_triangle3(*this,xleft0,lxleft0,lyleft0,xright0,lxright0,lyright0,y, 2.21750 + nx0,ny0,nlx0,nly0,nx1,ny1,nlx1,nly1,nx2,ny2,nlx2,nly2) { 2.21751 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.21752 + int 2.21753 + xleft = xleft0, xright = xright0, 2.21754 + lxleft = lxleft0, lxright = lxright0, 2.21755 + lyleft = lyleft0, lyright = lyright0; 2.21756 + float 2.21757 + zleft = zl, zright = zr, 2.21758 + txleft = txl, txright = txr, 2.21759 + tyleft = tyl, tyright = tyr; 2.21760 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright,lxleft,lxright,lyleft,lyright); 2.21761 + const int 2.21762 + dx = xright - xleft, 2.21763 + dlx = lxright>lxleft?lxright - lxleft:lxleft - lxright, 2.21764 + dly = lyright>lyleft?lyright - lyleft:lyleft - lyright, 2.21765 + rlx = dx?(lxright - lxleft)/dx:0, 2.21766 + rly = dx?(lyright - lyleft)/dx:0, 2.21767 + slx = lxright>lxleft?1:-1, 2.21768 + sly = lyright>lyleft?1:-1, 2.21769 + ndlx = dlx - (dx?dx*(dlx/dx):0), 2.21770 + ndly = dly - (dx?dx*(dly/dx):0); 2.21771 + const float 2.21772 + pentez = (zright - zleft)/dx, 2.21773 + pentetx = (txright - txleft)/dx, 2.21774 + pentety = (tyright - tyleft)/dx; 2.21775 + int errlx = dx>>1, errly = errlx; 2.21776 + if (xleft<0 && dx) { 2.21777 + zleft-=xleft*(zright - zleft)/dx; 2.21778 + lxleft-=xleft*(lxright - lxleft)/dx; 2.21779 + lyleft-=xleft*(lyright - lyleft)/dx; 2.21780 + txleft-=xleft*(txright - txleft)/dx; 2.21781 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21782 + } 2.21783 + if (xleft<0) xleft = 0; 2.21784 + if (xright>=dimx()-1) xright = dimx()-1; 2.21785 + T* ptrd = ptr(xleft,y,0,0); 2.21786 + if (opacity>=1) for (int x = xleft; x<=xright; ++x) { 2.21787 + const float invz = 1/zleft; 2.21788 + const tl l = light(lxleft,lyleft); 2.21789 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21790 + cimg_forV(*this,k) { 2.21791 + *ptrd = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21792 + ptrd+=whz; col+=twhz; 2.21793 + } 2.21794 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21795 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21796 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21797 + } else for (int x = xleft; x<=xright; ++x) { 2.21798 + const float invz = 1/zleft; 2.21799 + const tl l = light(lxleft,lyleft); 2.21800 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21801 + cimg_forV(*this,k) { 2.21802 + const T val = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21803 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21804 + ptrd+=whz; col+=twhz; 2.21805 + } 2.21806 + ptrd-=offx; zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21807 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21808 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21809 + } 2.21810 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.21811 + } 2.21812 + return *this; 2.21813 + } 2.21814 + 2.21815 + //! Draw a 2D Pseudo-Phong-shaded textured triangle, with z-buffering and perspective correction. 2.21816 + template<typename tc, typename tl> 2.21817 + CImg<T>& draw_triangle(float *const zbuffer, 2.21818 + const int x0, const int y0, const float z0, 2.21819 + const int x1, const int y1, const float z1, 2.21820 + const int x2, const int y2, const float z2, 2.21821 + const CImg<tc>& texture, 2.21822 + const int tx0, const int ty0, 2.21823 + const int tx1, const int ty1, 2.21824 + const int tx2, const int ty2, 2.21825 + const CImg<tl>& light, 2.21826 + const int lx0, const int ly0, 2.21827 + const int lx1, const int ly1, 2.21828 + const int lx2, const int ly2, 2.21829 + const float opacity=1) { 2.21830 + if (is_empty() || z0<=0 || z1<=0 || z2<=0) return *this; 2.21831 + if (!texture || texture.dim<dim) 2.21832 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified texture (%u,%u,%u,%u,%p) is not a valid argument.", 2.21833 + pixel_type(),texture.width,texture.height,texture.depth,texture.dim,texture.data); 2.21834 + if (!light) 2.21835 + throw CImgArgumentException("CImg<%s>::draw_triangle() : Specified light texture (%u,%u,%u,%u,%p) is empty.", 2.21836 + pixel_type(),light.width,light.height,light.depth,light.dim,light.data); 2.21837 + if (is_overlapped(texture)) return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2, 2.21838 + +texture,tx0,ty0,tx1,ty1,tx2,ty2,light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21839 + if (is_overlapped(light)) return draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2, 2.21840 + texture,tx0,ty0,tx1,ty1,tx2,ty2,+light,lx0,ly0,lx1,ly1,lx2,ly2,opacity); 2.21841 + static const T maxval = (T)cimg::min(cimg::type<T>::max(),cimg::type<tc>::max()); 2.21842 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.21843 + const int whz = width*height*depth, twhz = texture.width*texture.height*texture.depth, offx = dim*whz; 2.21844 + int nx0 = x0, ny0 = y0, nx1 = x1, ny1 = y1, nx2 = x2, ny2 = y2, 2.21845 + nlx0 = lx0, nly0 = ly0, nlx1 = lx1, nly1 = ly1, nlx2 = lx2, nly2 = ly2; 2.21846 + float 2.21847 + ntx0 = tx0/z0, nty0 = ty0/z0, 2.21848 + ntx1 = tx1/z1, nty1 = ty1/z1, 2.21849 + ntx2 = tx2/z2, nty2 = ty2/z2, 2.21850 + nz0 = 1/z0, nz1 = 1/z1, nz2 = 1/z2; 2.21851 + if (ny0>ny1) cimg::swap(nx0,nx1,ny0,ny1,ntx0,ntx1,nty0,nty1,nlx0,nlx1,nly0,nly1,nz0,nz1); 2.21852 + if (ny0>ny2) cimg::swap(nx0,nx2,ny0,ny2,ntx0,ntx2,nty0,nty2,nlx0,nlx2,nly0,nly2,nz0,nz2); 2.21853 + if (ny1>ny2) cimg::swap(nx1,nx2,ny1,ny2,ntx1,ntx2,nty1,nty2,nlx1,nlx2,nly1,nly2,nz1,nz2); 2.21854 + if (ny0>=dimy() || ny2<0) return *this; 2.21855 + float 2.21856 + ptxl = (ntx1 - ntx0)/(ny1 - ny0), 2.21857 + ptxr = (ntx2 - ntx0)/(ny2 - ny0), 2.21858 + ptxn = (ntx2 - ntx1)/(ny2 - ny1), 2.21859 + ptyl = (nty1 - nty0)/(ny1 - ny0), 2.21860 + ptyr = (nty2 - nty0)/(ny2 - ny0), 2.21861 + ptyn = (nty2 - nty1)/(ny2 - ny1), 2.21862 + pzl = (nz1 - nz0)/(ny1 - ny0), 2.21863 + pzr = (nz2 - nz0)/(ny2 - ny0), 2.21864 + pzn = (nz2 - nz1)/(ny2 - ny1), 2.21865 + zr = ny0>=0?nz0:(nz0 - ny0*(nz2 - nz0)/(ny2 - ny0)), 2.21866 + txr = ny0>=0?ntx0:(ntx0 - ny0*(ntx2 - ntx0)/(ny2 - ny0)), 2.21867 + tyr = ny0>=0?nty0:(nty0 - ny0*(nty2 - nty0)/(ny2 - ny0)), 2.21868 + zl = ny1>=0?(ny0>=0?nz0:(nz0 - ny0*(nz1 - nz0)/(ny1 - ny0))):(pzl=pzn,(nz1 - ny1*(nz2 - nz1)/(ny2 - ny1))), 2.21869 + txl = ny1>=0?(ny0>=0?ntx0:(ntx0 - ny0*(ntx1 - ntx0)/(ny1 - ny0))):(ptxl=ptxn,(ntx1 - ny1*(ntx2 - ntx1)/(ny2 - ny1))), 2.21870 + tyl = ny1>=0?(ny0>=0?nty0:(nty0 - ny0*(nty1 - nty0)/(ny1 - ny0))):(ptyl=ptyn,(nty1 - ny1*(nty2 - nty1)/(ny2 - ny1))); 2.21871 + _cimg_for_triangle3(*this,xleft0,lxleft0,lyleft0,xright0,lxright0,lyright0,y, 2.21872 + nx0,ny0,nlx0,nly0,nx1,ny1,nlx1,nly1,nx2,ny2,nlx2,nly2) { 2.21873 + if (y==ny1) { zl = nz1; txl = ntx1; tyl = nty1; pzl = pzn; ptxl = ptxn; ptyl = ptyn; } 2.21874 + int 2.21875 + xleft = xleft0, xright = xright0, 2.21876 + lxleft = lxleft0, lxright = lxright0, 2.21877 + lyleft = lyleft0, lyright = lyright0; 2.21878 + float 2.21879 + zleft = zl, zright = zr, 2.21880 + txleft = txl, txright = txr, 2.21881 + tyleft = tyl, tyright = tyr; 2.21882 + if (xright<xleft) cimg::swap(xleft,xright,zleft,zright,txleft,txright,tyleft,tyright,lxleft,lxright,lyleft,lyright); 2.21883 + const int 2.21884 + dx = xright - xleft, 2.21885 + dlx = lxright>lxleft?lxright - lxleft:lxleft - lxright, 2.21886 + dly = lyright>lyleft?lyright - lyleft:lyleft - lyright, 2.21887 + rlx = dx?(lxright - lxleft)/dx:0, 2.21888 + rly = dx?(lyright - lyleft)/dx:0, 2.21889 + slx = lxright>lxleft?1:-1, 2.21890 + sly = lyright>lyleft?1:-1, 2.21891 + ndlx = dlx - (dx?dx*(dlx/dx):0), 2.21892 + ndly = dly - (dx?dx*(dly/dx):0); 2.21893 + const float 2.21894 + pentez = (zright - zleft)/dx, 2.21895 + pentetx = (txright - txleft)/dx, 2.21896 + pentety = (tyright - tyleft)/dx; 2.21897 + int errlx = dx>>1, errly = errlx; 2.21898 + if (xleft<0 && dx) { 2.21899 + zleft-=xleft*(zright - zleft)/dx; 2.21900 + lxleft-=xleft*(lxright - lxleft)/dx; 2.21901 + lyleft-=xleft*(lyright - lyleft)/dx; 2.21902 + txleft-=xleft*(txright - txleft)/dx; 2.21903 + tyleft-=xleft*(tyright - tyleft)/dx; 2.21904 + } 2.21905 + if (xleft<0) xleft = 0; 2.21906 + if (xright>=dimx()-1) xright = dimx()-1; 2.21907 + T* ptrd = ptr(xleft,y); 2.21908 + float *ptrz = zbuffer + xleft + y*width; 2.21909 + if (opacity>=1) for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.21910 + if (zleft>*ptrz) { 2.21911 + *ptrz = zleft; 2.21912 + const float invz = 1/zleft; 2.21913 + const tl l = light(lxleft,lyleft); 2.21914 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21915 + cimg_forV(*this,k) { 2.21916 + *ptrd = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21917 + ptrd+=whz; col+=twhz; 2.21918 + } 2.21919 + ptrd-=offx; 2.21920 + } 2.21921 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21922 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21923 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21924 + } else for (int x = xleft; x<=xright; ++x, ++ptrz, ++ptrd) { 2.21925 + if (zleft>*ptrz) { 2.21926 + *ptrz = zleft; 2.21927 + const float invz = 1/zleft; 2.21928 + const tl l = light(lxleft,lyleft); 2.21929 + const tc *col = texture.ptr((int)(txleft*invz),(int)(tyleft*invz)); 2.21930 + cimg_forV(*this,k) { 2.21931 + const T val = (T)(l<1?l**col:(2-l)**col+(l-1)*maxval); 2.21932 + *ptrd = (T)(nopacity*val + *ptrd*copacity); 2.21933 + ptrd+=whz; col+=twhz; 2.21934 + } 2.21935 + ptrd-=offx; 2.21936 + } 2.21937 + zleft+=pentez; txleft+=pentetx; tyleft+=pentety; 2.21938 + lxleft+=rlx+((errlx-=ndlx)<0?errlx+=dx,slx:0); 2.21939 + lyleft+=rly+((errly-=ndly)<0?errly+=dx,sly:0); 2.21940 + } 2.21941 + zr+=pzr; txr+=ptxr; tyr+=ptyr; zl+=pzl; txl+=ptxl; tyl+=ptyl; 2.21942 + } 2.21943 + return *this; 2.21944 + } 2.21945 + 2.21946 + // Draw a 2D ellipse (inner routine). 2.21947 + template<typename tc> 2.21948 + CImg<T>& _draw_ellipse(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, 2.21949 + const tc *const color, const float opacity, 2.21950 + const unsigned int pattern) { 2.21951 + if (is_empty()) return *this; 2.21952 + if (!color) 2.21953 + throw CImgArgumentException("CImg<%s>::draw_ellipse : Specified color is (null).", 2.21954 + pixel_type()); 2.21955 + _draw_scanline(color,opacity); 2.21956 + const float 2.21957 + nr1 = cimg::abs(r1), nr2 = cimg::abs(r2), 2.21958 + norm = (float)cimg_std::sqrt(ru*ru+rv*rv), 2.21959 + u = norm>0?ru/norm:1, 2.21960 + v = norm>0?rv/norm:0, 2.21961 + rmax = cimg::max(nr1,nr2), 2.21962 + l1 = (float)cimg_std::pow(rmax/(nr1>0?nr1:1e-6),2), 2.21963 + l2 = (float)cimg_std::pow(rmax/(nr2>0?nr2:1e-6),2), 2.21964 + a = l1*u*u + l2*v*v, 2.21965 + b = u*v*(l1-l2), 2.21966 + c = l1*v*v + l2*u*u; 2.21967 + const int 2.21968 + yb = (int)cimg_std::sqrt(a*rmax*rmax/(a*c-b*b)), 2.21969 + tymin = y0 - yb - 1, 2.21970 + tymax = y0 + yb + 1, 2.21971 + ymin = tymin<0?0:tymin, 2.21972 + ymax = tymax>=dimy()?height-1:tymax; 2.21973 + int oxmin = 0, oxmax = 0; 2.21974 + bool first_line = true; 2.21975 + for (int y = ymin; y<=ymax; ++y) { 2.21976 + const float 2.21977 + Y = y-y0 + (y<y0?0.5f:-0.5f), 2.21978 + delta = b*b*Y*Y-a*(c*Y*Y-rmax*rmax), 2.21979 + sdelta = delta>0?(float)cimg_std::sqrt(delta)/a:0.0f, 2.21980 + bY = b*Y/a, 2.21981 + fxmin = x0-0.5f-bY-sdelta, 2.21982 + fxmax = x0+0.5f-bY+sdelta; 2.21983 + const int xmin = (int)fxmin, xmax = (int)fxmax; 2.21984 + if (!pattern) _draw_scanline(xmin,xmax,y,color,opacity); 2.21985 + else { 2.21986 + if (first_line) { 2.21987 + if (y0-yb>=0) _draw_scanline(xmin,xmax,y,color,opacity); 2.21988 + else draw_point(xmin,y,color,opacity).draw_point(xmax,y,color,opacity); 2.21989 + first_line = false; 2.21990 + } else { 2.21991 + if (xmin<oxmin) _draw_scanline(xmin,oxmin-1,y,color,opacity); 2.21992 + else _draw_scanline(oxmin+(oxmin==xmin?0:1),xmin,y,color,opacity); 2.21993 + if (xmax<oxmax) _draw_scanline(xmax,oxmax-1,y,color,opacity); 2.21994 + else _draw_scanline(oxmax+(oxmax==xmax?0:1),xmax,y,color,opacity); 2.21995 + if (y==tymax) _draw_scanline(xmin+1,xmax-1,y,color,opacity); 2.21996 + } 2.21997 + } 2.21998 + oxmin = xmin; oxmax = xmax; 2.21999 + } 2.22000 + return *this; 2.22001 + } 2.22002 + 2.22003 + //! Draw a filled ellipse. 2.22004 + /** 2.22005 + \param x0 = X-coordinate of the ellipse center. 2.22006 + \param y0 = Y-coordinate of the ellipse center. 2.22007 + \param r1 = First radius of the ellipse. 2.22008 + \param r2 = Second radius of the ellipse. 2.22009 + \param ru = X-coordinate of the orientation vector related to the first radius. 2.22010 + \param rv = Y-coordinate of the orientation vector related to the first radius. 2.22011 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.22012 + \param opacity = opacity of the drawing. 2.22013 + **/ 2.22014 + template<typename tc> 2.22015 + CImg<T>& draw_ellipse(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, 2.22016 + const tc *const color, const float opacity=1) { 2.22017 + return _draw_ellipse(x0,y0,r1,r2,ru,rv,color,opacity,0U); 2.22018 + } 2.22019 + 2.22020 + //! Draw a filled ellipse. 2.22021 + template<typename tc> 2.22022 + CImg<T>& draw_ellipse(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, 2.22023 + const CImg<tc>& color, const float opacity=1) { 2.22024 + return draw_ellipse(x0,y0,r1,r2,ru,rv,color.data,opacity); 2.22025 + } 2.22026 + 2.22027 + //! Draw a filled ellipse. 2.22028 + /** 2.22029 + \param x0 = X-coordinate of the ellipse center. 2.22030 + \param y0 = Y-coordinate of the ellipse center. 2.22031 + \param tensor = Diffusion tensor describing the ellipse. 2.22032 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.22033 + \param opacity = opacity of the drawing. 2.22034 + **/ 2.22035 + template<typename t, typename tc> 2.22036 + CImg<T>& draw_ellipse(const int x0, const int y0, const CImg<t> &tensor, 2.22037 + const tc *const color, const float opacity=1) { 2.22038 + CImgList<t> eig = tensor.get_symmetric_eigen(); 2.22039 + const CImg<t> &val = eig[0], &vec = eig[1]; 2.22040 + return draw_ellipse(x0,y0,val(0),val(1),vec(0,0),vec(0,1),color,opacity); 2.22041 + } 2.22042 + 2.22043 + //! Draw a filled ellipse. 2.22044 + template<typename t, typename tc> 2.22045 + CImg<T>& draw_ellipse(const int x0, const int y0, const CImg<t> &tensor, 2.22046 + const CImg<tc>& color, const float opacity=1) { 2.22047 + return draw_ellipse(x0,y0,tensor,color.data,opacity); 2.22048 + } 2.22049 + 2.22050 + //! Draw an outlined ellipse. 2.22051 + /** 2.22052 + \param x0 = X-coordinate of the ellipse center. 2.22053 + \param y0 = Y-coordinate of the ellipse center. 2.22054 + \param r1 = First radius of the ellipse. 2.22055 + \param r2 = Second radius of the ellipse. 2.22056 + \param ru = X-coordinate of the orientation vector related to the first radius. 2.22057 + \param rv = Y-coordinate of the orientation vector related to the first radius. 2.22058 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.22059 + \param pattern = If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern. 2.22060 + \param opacity = opacity of the drawing. 2.22061 + **/ 2.22062 + template<typename tc> 2.22063 + CImg<T>& draw_ellipse(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, 2.22064 + const tc *const color, const float opacity, 2.22065 + const unsigned int pattern) { 2.22066 + if (pattern) _draw_ellipse(x0,y0,r1,r2,ru,rv,color,opacity,pattern); 2.22067 + return *this; 2.22068 + } 2.22069 + 2.22070 + //! Draw an outlined ellipse. 2.22071 + template<typename tc> 2.22072 + CImg<T>& draw_ellipse(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, 2.22073 + const CImg<tc>& color, const float opacity, 2.22074 + const unsigned int pattern) { 2.22075 + return draw_ellipse(x0,y0,r1,r2,ru,rv,color.data,opacity,pattern); 2.22076 + } 2.22077 + 2.22078 + //! Draw an outlined ellipse. 2.22079 + /** 2.22080 + \param x0 = X-coordinate of the ellipse center. 2.22081 + \param y0 = Y-coordinate of the ellipse center. 2.22082 + \param tensor = Diffusion tensor describing the ellipse. 2.22083 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.22084 + \param pattern = If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern. 2.22085 + \param opacity = opacity of the drawing. 2.22086 + **/ 2.22087 + template<typename t, typename tc> 2.22088 + CImg<T>& draw_ellipse(const int x0, const int y0, const CImg<t> &tensor, 2.22089 + const tc *const color, const float opacity, 2.22090 + const unsigned int pattern) { 2.22091 + CImgList<t> eig = tensor.get_symmetric_eigen(); 2.22092 + const CImg<t> &val = eig[0], &vec = eig[1]; 2.22093 + return draw_ellipse(x0,y0,val(0),val(1),vec(0,0),vec(0,1),color,opacity,pattern); 2.22094 + } 2.22095 + 2.22096 + //! Draw an outlined ellipse. 2.22097 + template<typename t, typename tc> 2.22098 + CImg<T>& draw_ellipse(const int x0, const int y0, const CImg<t> &tensor, 2.22099 + const CImg<tc>& color, const float opacity, 2.22100 + const unsigned int pattern) { 2.22101 + return draw_ellipse(x0,y0,tensor,color.data,opacity,pattern); 2.22102 + } 2.22103 + 2.22104 + //! Draw a filled circle. 2.22105 + /** 2.22106 + \param x0 X-coordinate of the circle center. 2.22107 + \param y0 Y-coordinate of the circle center. 2.22108 + \param radius Circle radius. 2.22109 + \param color Array of dimv() values of type \c T, defining the drawing color. 2.22110 + \param opacity Drawing opacity. 2.22111 + \note 2.22112 + - Circle version of the Bresenham's algorithm is used. 2.22113 + **/ 2.22114 + template<typename tc> 2.22115 + CImg<T>& draw_circle(const int x0, const int y0, int radius, 2.22116 + const tc *const color, const float opacity=1) { 2.22117 + if (!is_empty()) { 2.22118 + if (!color) 2.22119 + throw CImgArgumentException("CImg<%s>::draw_circle : Specified color is (null).", 2.22120 + pixel_type()); 2.22121 + _draw_scanline(color,opacity); 2.22122 + if (radius<0 || x0-radius>=dimx() || y0+radius<0 || y0-radius>=dimy()) return *this; 2.22123 + if (y0>=0 && y0<dimy()) _draw_scanline(x0-radius,x0+radius,y0,color,opacity); 2.22124 + for (int f=1-radius, ddFx=0, ddFy=-(radius<<1), x=0, y=radius; x<y; ) { 2.22125 + if (f>=0) { 2.22126 + const int x1 = x0-x, x2 = x0+x, y1 = y0-y, y2 = y0+y; 2.22127 + if (y1>=0 && y1<dimy()) _draw_scanline(x1,x2,y1,color,opacity); 2.22128 + if (y2>=0 && y2<dimy()) _draw_scanline(x1,x2,y2,color,opacity); 2.22129 + f+=(ddFy+=2); --y; 2.22130 + } 2.22131 + const bool no_diag = y!=(x++); 2.22132 + ++(f+=(ddFx+=2)); 2.22133 + const int x1 = x0-y, x2 = x0+y, y1 = y0-x, y2 = y0+x; 2.22134 + if (no_diag) { 2.22135 + if (y1>=0 && y1<dimy()) _draw_scanline(x1,x2,y1,color,opacity); 2.22136 + if (y2>=0 && y2<dimy()) _draw_scanline(x1,x2,y2,color,opacity); 2.22137 + } 2.22138 + } 2.22139 + } 2.22140 + return *this; 2.22141 + } 2.22142 + 2.22143 + //! Draw a filled circle. 2.22144 + template<typename tc> 2.22145 + CImg<T>& draw_circle(const int x0, const int y0, int radius, 2.22146 + const CImg<tc>& color, const float opacity=1) { 2.22147 + return draw_circle(x0,y0,radius,color.data,opacity); 2.22148 + } 2.22149 + 2.22150 + //! Draw an outlined circle. 2.22151 + /** 2.22152 + \param x0 X-coordinate of the circle center. 2.22153 + \param y0 Y-coordinate of the circle center. 2.22154 + \param radius Circle radius. 2.22155 + \param color Array of dimv() values of type \c T, defining the drawing color. 2.22156 + \param opacity Drawing opacity. 2.22157 + **/ 2.22158 + template<typename tc> 2.22159 + CImg<T>& draw_circle(const int x0, const int y0, int radius, 2.22160 + const tc *const color, const float opacity, 2.22161 + const unsigned int) { 2.22162 + if (!is_empty()) { 2.22163 + if (!color) 2.22164 + throw CImgArgumentException("CImg<%s>::draw_circle : Specified color is (null).", 2.22165 + pixel_type()); 2.22166 + if (radius<0 || x0-radius>=dimx() || y0+radius<0 || y0-radius>=dimy()) return *this; 2.22167 + if (!radius) return draw_point(x0,y0,color,opacity); 2.22168 + draw_point(x0-radius,y0,color,opacity).draw_point(x0+radius,y0,color,opacity). 2.22169 + draw_point(x0,y0-radius,color,opacity).draw_point(x0,y0+radius,color,opacity); 2.22170 + if (radius==1) return *this; 2.22171 + for (int f=1-radius, ddFx=0, ddFy=-(radius<<1), x=0, y=radius; x<y; ) { 2.22172 + if (f>=0) { f+=(ddFy+=2); --y; } 2.22173 + ++x; ++(f+=(ddFx+=2)); 2.22174 + if (x!=y+1) { 2.22175 + const int x1 = x0-y, x2 = x0+y, y1 = y0-x, y2 = y0+x, x3 = x0-x, x4 = x0+x, y3 = y0-y, y4 = y0+y; 2.22176 + draw_point(x1,y1,color,opacity).draw_point(x1,y2,color,opacity). 2.22177 + draw_point(x2,y1,color,opacity).draw_point(x2,y2,color,opacity); 2.22178 + if (x!=y) 2.22179 + draw_point(x3,y3,color,opacity).draw_point(x4,y4,color,opacity). 2.22180 + draw_point(x4,y3,color,opacity).draw_point(x3,y4,color,opacity); 2.22181 + } 2.22182 + } 2.22183 + } 2.22184 + return *this; 2.22185 + } 2.22186 + 2.22187 + //! Draw an outlined circle. 2.22188 + template<typename tc> 2.22189 + CImg<T>& draw_circle(const int x0, const int y0, int radius, const CImg<tc>& color, 2.22190 + const float opacity, 2.22191 + const unsigned int pattern) { 2.22192 + return draw_circle(x0,y0,radius,color.data,opacity,pattern); 2.22193 + } 2.22194 + 2.22195 + // Draw a text (internal). 2.22196 + template<typename tc1, typename tc2, typename t> 2.22197 + CImg<T>& _draw_text(const int x0, const int y0, const char *const text, 2.22198 + const tc1 *const foreground_color, const tc2 *const background_color, 2.22199 + const float opacity, const CImgList<t>& font) { 2.22200 + if (!text) return *this; 2.22201 + if (!font) 2.22202 + throw CImgArgumentException("CImg<%s>::draw_text() : Specified font (%u,%p) is empty.", 2.22203 + pixel_type(),font.size,font.data); 2.22204 + const int text_length = cimg::strlen(text); 2.22205 + 2.22206 + if (is_empty()) { 2.22207 + // If needed, pre-compute necessary size of the image 2.22208 + int x = 0, y = 0, w = 0; 2.22209 + unsigned char c = 0; 2.22210 + for (int i = 0; i<text_length; ++i) { 2.22211 + c = text[i]; 2.22212 + switch (c) { 2.22213 + case '\n' : y+=font[' '].height; if (x>w) w = x; x = 0; break; 2.22214 + case '\t' : x+=4*font[' '].width; break; 2.22215 + default : if (c<font.size) x+=font[c].width; 2.22216 + } 2.22217 + } 2.22218 + if (x!=0 || c=='\n') { 2.22219 + if (x>w) w=x; 2.22220 + y+=font[' '].height; 2.22221 + } 2.22222 + assign(x0+w,y0+y,1,font[' '].dim,0); 2.22223 + if (background_color) cimg_forV(*this,k) get_shared_channel(k).fill((T)background_color[k]); 2.22224 + } 2.22225 + 2.22226 + int x = x0, y = y0; 2.22227 + CImg<T> letter; 2.22228 + for (int i = 0; i<text_length; ++i) { 2.22229 + const unsigned char c = text[i]; 2.22230 + switch (c) { 2.22231 + case '\n' : y+=font[' '].height; x = x0; break; 2.22232 + case '\t' : x+=4*font[' '].width; break; 2.22233 + default : if (c<font.size) { 2.22234 + letter = font[c]; 2.22235 + const CImg<T>& mask = (c+256)<(int)font.size?font[c+256]:font[c]; 2.22236 + if (foreground_color) for (unsigned int p = 0; p<letter.width*letter.height; ++p) 2.22237 + if (mask(p)) cimg_forV(*this,k) letter(p,0,0,k) = (T)(letter(p,0,0,k)*foreground_color[k]); 2.22238 + if (background_color) for (unsigned int p = 0; p<letter.width*letter.height; ++p) 2.22239 + if (!mask(p)) cimg_forV(*this,k) letter(p,0,0,k) = (T)background_color[k]; 2.22240 + if (!background_color && font.size>=512) draw_image(x,y,letter,mask,opacity,(T)1); 2.22241 + else draw_image(x,y,letter,opacity); 2.22242 + x+=letter.width; 2.22243 + } 2.22244 + } 2.22245 + } 2.22246 + return *this; 2.22247 + } 2.22248 + 2.22249 + //! Draw a text. 2.22250 + /** 2.22251 + \param x0 X-coordinate of the text in the instance image. 2.22252 + \param y0 Y-coordinate of the text in the instance image. 2.22253 + \param foreground_color Array of dimv() values of type \c T, defining the foreground color (0 means 'transparent'). 2.22254 + \param background_color Array of dimv() values of type \c T, defining the background color (0 means 'transparent'). 2.22255 + \param font Font used for drawing text. 2.22256 + \param opacity Drawing opacity. 2.22257 + \param format 'printf'-style format string, followed by arguments. 2.22258 + \note Clipping is supported. 2.22259 + **/ 2.22260 + template<typename tc1, typename tc2, typename t> 2.22261 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22262 + const tc1 *const foreground_color, const tc2 *const background_color, 2.22263 + const float opacity, const CImgList<t>& font, ...) { 2.22264 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font); 2.22265 + cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22266 + return _draw_text(x0,y0,tmp,foreground_color,background_color,opacity,font); 2.22267 + } 2.22268 + 2.22269 + //! Draw a text. 2.22270 + template<typename tc1, typename tc2, typename t> 2.22271 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22272 + const CImg<tc1>& foreground_color, const CImg<tc2>& background_color, 2.22273 + const float opacity, const CImgList<t>& font, ...) { 2.22274 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font); 2.22275 + cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22276 + return _draw_text(x0,y0,tmp,foreground_color,background_color,opacity,font); 2.22277 + } 2.22278 + 2.22279 + //! Draw a text. 2.22280 + template<typename tc, typename t> 2.22281 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22282 + const tc *const foreground_color, const int background_color, 2.22283 + const float opacity, const CImgList<t>& font, ...) { 2.22284 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font); 2.22285 + cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22286 + return _draw_text(x0,y0,tmp,foreground_color,(tc*)background_color,opacity,font); 2.22287 + } 2.22288 + 2.22289 + //! Draw a text. 2.22290 + template<typename tc, typename t> 2.22291 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22292 + const int foreground_color, const tc *const background_color, 2.22293 + const float opacity, const CImgList<t>& font, ...) { 2.22294 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font); 2.22295 + cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22296 + return _draw_text(x0,y0,tmp,(tc*)foreground_color,background_color,opacity,font); 2.22297 + } 2.22298 + 2.22299 + //! Draw a text. 2.22300 + /** 2.22301 + \param x0 X-coordinate of the text in the instance image. 2.22302 + \param y0 Y-coordinate of the text in the instance image. 2.22303 + \param foreground_color Array of dimv() values of type \c T, defining the foreground color (0 means 'transparent'). 2.22304 + \param background_color Array of dimv() values of type \c T, defining the background color (0 means 'transparent'). 2.22305 + \param font_size Size of the font (nearest match). 2.22306 + \param opacity Drawing opacity. 2.22307 + \param format 'printf'-style format string, followed by arguments. 2.22308 + \note Clipping is supported. 2.22309 + **/ 2.22310 + template<typename tc1, typename tc2> 2.22311 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22312 + const tc1 *const foreground_color, const tc2 *const background_color, 2.22313 + const float opacity=1, const unsigned int font_size=11, ...) { 2.22314 + static CImgList<T> font; 2.22315 + static unsigned int fsize = 0; 2.22316 + if (fsize!=font_size) { font = CImgList<T>::font(font_size); fsize = font_size; } 2.22317 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font_size); cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22318 + return _draw_text(x0,y0,tmp,foreground_color,background_color,opacity,font); 2.22319 + } 2.22320 + 2.22321 + //! Draw a text. 2.22322 + template<typename tc1, typename tc2> 2.22323 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22324 + const CImg<tc1>& foreground_color, const CImg<tc2>& background_color, 2.22325 + const float opacity=1, const unsigned int font_size=11, ...) { 2.22326 + static CImgList<T> font; 2.22327 + static unsigned int fsize = 0; 2.22328 + if (fsize!=font_size) { font = CImgList<T>::font(font_size); fsize = font_size; } 2.22329 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font_size); cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22330 + return _draw_text(x0,y0,tmp,foreground_color.data,background_color.data,opacity,font); 2.22331 + } 2.22332 + 2.22333 + //! Draw a text. 2.22334 + template<typename tc> 2.22335 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22336 + const tc *const foreground_color, const int background_color=0, 2.22337 + const float opacity=1, const unsigned int font_size=11, ...) { 2.22338 + static CImgList<T> font; 2.22339 + static unsigned int fsize = 0; 2.22340 + if (fsize!=font_size) { font = CImgList<T>::font(font_size); fsize = font_size; } 2.22341 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font_size); cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22342 + return _draw_text(x0,y0,tmp,foreground_color,(const tc*)background_color,opacity,font); 2.22343 + } 2.22344 + 2.22345 + //! Draw a text. 2.22346 + template<typename tc> 2.22347 + CImg<T>& draw_text(const int x0, const int y0, const char *const text, 2.22348 + const int foreground_color, const tc *const background_color, 2.22349 + const float opacity=1, const unsigned int font_size=11, ...) { 2.22350 + static CImgList<T> font; 2.22351 + static unsigned int fsize = 0; 2.22352 + if (fsize!=font_size) { font = CImgList<T>::font(font_size); fsize = font_size; } 2.22353 + char tmp[2048] = { 0 }; cimg_std::va_list ap; va_start(ap,font_size); cimg_std::vsprintf(tmp,text,ap); va_end(ap); 2.22354 + return _draw_text(x0,y0,tmp,(tc*)foreground_color,background_color,opacity,font); 2.22355 + } 2.22356 + 2.22357 + //! Draw a vector field in the instance image, using a colormap. 2.22358 + /** 2.22359 + \param flow Image of 2d vectors used as input data. 2.22360 + \param color Image of dimv()-D vectors corresponding to the color of each arrow. 2.22361 + \param sampling Length (in pixels) between each arrow. 2.22362 + \param factor Length factor of each arrow (if <0, computed as a percentage of the maximum length). 2.22363 + \param quiver_type Type of plot. Can be 0 (arrows) or 1 (segments). 2.22364 + \param opacity Opacity of the drawing. 2.22365 + \param pattern Used pattern to draw lines. 2.22366 + \note Clipping is supported. 2.22367 + **/ 2.22368 + template<typename t1, typename t2> 2.22369 + CImg<T>& draw_quiver(const CImg<t1>& flow, 2.22370 + const t2 *const color, const float opacity=1, 2.22371 + const unsigned int sampling=25, const float factor=-20, 2.22372 + const int quiver_type=0, const unsigned int pattern=~0U) { 2.22373 + return draw_quiver(flow,CImg<t2>(color,dim,1,1,1,true),opacity,sampling,factor,quiver_type,pattern); 2.22374 + } 2.22375 + 2.22376 + //! Draw a vector field in the instance image, using a colormap. 2.22377 + /** 2.22378 + \param flow Image of 2d vectors used as input data. 2.22379 + \param color Image of dimv()-D vectors corresponding to the color of each arrow. 2.22380 + \param sampling Length (in pixels) between each arrow. 2.22381 + \param factor Length factor of each arrow (if <0, computed as a percentage of the maximum length). 2.22382 + \param quiver_type Type of plot. Can be 0 (arrows) or 1 (segments). 2.22383 + \param opacity Opacity of the drawing. 2.22384 + \param pattern Used pattern to draw lines. 2.22385 + \note Clipping is supported. 2.22386 + **/ 2.22387 + template<typename t1, typename t2> 2.22388 + CImg<T>& draw_quiver(const CImg<t1>& flow, 2.22389 + const CImg<t2>& color, const float opacity=1, 2.22390 + const unsigned int sampling=25, const float factor=-20, 2.22391 + const int quiver_type=0, const unsigned int pattern=~0U) { 2.22392 + if (!is_empty()) { 2.22393 + if (!flow || flow.dim!=2) 2.22394 + throw CImgArgumentException("CImg<%s>::draw_quiver() : Specified flow (%u,%u,%u,%u,%p) has wrong dimensions.", 2.22395 + pixel_type(),flow.width,flow.height,flow.depth,flow.dim,flow.data); 2.22396 + if (sampling<=0) 2.22397 + throw CImgArgumentException("CImg<%s>::draw_quiver() : Incorrect sampling value = %g", 2.22398 + pixel_type(),sampling); 2.22399 + const bool colorfield = (color.width==flow.width && color.height==flow.height && color.depth==1 && color.dim==dim); 2.22400 + if (is_overlapped(flow)) return draw_quiver(+flow,color,opacity,sampling,factor,quiver_type,pattern); 2.22401 + 2.22402 + float vmax,fact; 2.22403 + if (factor<=0) { 2.22404 + float m, M = (float)flow.get_pointwise_norm(2).maxmin(m); 2.22405 + vmax = (float)cimg::max(cimg::abs(m),cimg::abs(M)); 2.22406 + fact = -factor; 2.22407 + } else { fact = factor; vmax = 1; } 2.22408 + 2.22409 + for (unsigned int y=sampling/2; y<height; y+=sampling) 2.22410 + for (unsigned int x=sampling/2; x<width; x+=sampling) { 2.22411 + const unsigned int X = x*flow.width/width, Y = y*flow.height/height; 2.22412 + float u = (float)flow(X,Y,0,0)*fact/vmax, v = (float)flow(X,Y,0,1)*fact/vmax; 2.22413 + if (!quiver_type) { 2.22414 + const int xx = x+(int)u, yy = y+(int)v; 2.22415 + if (colorfield) draw_arrow(x,y,xx,yy,color.get_vector_at(X,Y).data,opacity,45,sampling/5.0f,pattern); 2.22416 + else draw_arrow(x,y,xx,yy,color,opacity,45,sampling/5.0f,pattern); 2.22417 + } else { 2.22418 + if (colorfield) draw_line((int)(x-0.5*u),(int)(y-0.5*v),(int)(x+0.5*u),(int)(y+0.5*v),color.get_vector_at(X,Y),opacity,pattern); 2.22419 + else draw_line((int)(x-0.5*u),(int)(y-0.5*v),(int)(x+0.5*u),(int)(y+0.5*v),color,opacity,pattern); 2.22420 + } 2.22421 + } 2.22422 + } 2.22423 + return *this; 2.22424 + } 2.22425 + 2.22426 + //! Draw a 1D graph on the instance image. 2.22427 + /** 2.22428 + \param data Image containing the graph values I = f(x). 2.22429 + \param color Array of dimv() values of type \c T, defining the drawing color. 2.22430 + \param gtype Define the type of the plot : 2.22431 + - 0 = Plot using points clouds. 2.22432 + - 1 = Plot using linear interpolation (segments). 2.22433 + - 2 = Plot with bars. 2.22434 + - 3 = Plot using cubic interpolation (3-polynomials). 2.22435 + - 4 = Plot using cross clouds. 2.22436 + \param ymin Lower bound of the y-range. 2.22437 + \param ymax Upper bound of the y-range. 2.22438 + \param opacity Drawing opacity. 2.22439 + \param pattern Drawing pattern. 2.22440 + \note 2.22441 + - if \c ymin==ymax==0, the y-range is computed automatically from the input sample. 2.22442 + **/ 2.22443 + template<typename t, typename tc> 2.22444 + CImg<T>& draw_graph(const CImg<t>& data, 2.22445 + const tc *const color, const float opacity=1, 2.22446 + const unsigned int plot_type=1, const unsigned int vertex_type=1, 2.22447 + const double ymin=0, const double ymax=0, 2.22448 + const unsigned int pattern=~0U) { 2.22449 + if (is_empty() || height<=1) return *this;; 2.22450 + const unsigned long siz = data.size(); 2.22451 + if (!color) 2.22452 + throw CImgArgumentException("CImg<%s>::draw_graph() : Specified color is (null)", 2.22453 + pixel_type()); 2.22454 + tc *color1 = 0, *color2 = 0; 2.22455 + if (plot_type==3) { 2.22456 + color1 = new tc[dim]; color2 = new tc[dim]; 2.22457 + cimg_forV(*this,k) { color1[k] = (tc)(color[k]*0.6f); color2[k] = (tc)(color[k]*0.3f); } 2.22458 + } 2.22459 + 2.22460 + double m = ymin, M = ymax; 2.22461 + if (ymin==ymax) m = (double)data.maxmin(M); 2.22462 + if (m==M) { --m; ++M; } 2.22463 + const float ca = (float)(M-m)/(height-1); 2.22464 + bool init_hatch = true; 2.22465 + 2.22466 + // Draw graph edges 2.22467 + switch (plot_type%4) { 2.22468 + case 1 : { // Segments 2.22469 + int oX = 0, oY = (int)((data[0]-m)/ca); 2.22470 + for (unsigned long off = 1; off<siz; ++off) { 2.22471 + const int 2.22472 + X = (int)(off*width/siz), 2.22473 + Y = (int)((data[off]-m)/ca); 2.22474 + draw_line(oX,oY,X,Y,color,opacity,pattern,init_hatch); 2.22475 + oX = X; oY = Y; 2.22476 + init_hatch = false; 2.22477 + } 2.22478 + } break; 2.22479 + case 2 : { // Spline 2.22480 + const CImg<t> ndata = data.get_shared_points(0,siz-1); 2.22481 + int oY = (int)((data[0]-m)/ca); 2.22482 + cimg_forX(*this,x) { 2.22483 + const int Y = (int)((ndata._cubic_atX((float)x*ndata.width/width)-m)/ca); 2.22484 + if (x>0) draw_line(x,oY,x+1,Y,color,opacity,pattern,init_hatch); 2.22485 + init_hatch = false; 2.22486 + oY = Y; 2.22487 + } 2.22488 + } break; 2.22489 + case 3 : { // Bars 2.22490 + const int Y0 = (int)(-m/ca); 2.22491 + int oX = 0; 2.22492 + cimg_foroff(data,off) { 2.22493 + const int 2.22494 + X = (off+1)*width/siz-1, 2.22495 + Y = (int)((data[off]-m)/ca); 2.22496 + draw_rectangle(oX,Y0,X,Y,color1,opacity). 2.22497 + draw_line(oX,Y,oX,Y0,color2,opacity). 2.22498 + draw_line(oX,Y0,X,Y0,Y<=Y0?color2:color,opacity). 2.22499 + draw_line(X,Y,X,Y0,color,opacity). 2.22500 + draw_line(oX,Y,X,Y,Y<=Y0?color:color2,opacity); 2.22501 + oX = X+1; 2.22502 + } 2.22503 + } break; 2.22504 + default : break; // No edges 2.22505 + } 2.22506 + 2.22507 + // Draw graph points 2.22508 + switch (vertex_type%8) { 2.22509 + case 1 : { // Point 2.22510 + cimg_foroff(data,off) { 2.22511 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22512 + draw_point(X,Y,color,opacity); 2.22513 + } 2.22514 + } break; 2.22515 + case 2 : { // Standard Cross 2.22516 + cimg_foroff(data,off) { 2.22517 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22518 + draw_line(X-3,Y,X+3,Y,color,opacity).draw_line(X,Y-3,X,Y+3,color,opacity); 2.22519 + } 2.22520 + } break; 2.22521 + case 3 : { // Rotated Cross 2.22522 + cimg_foroff(data,off) { 2.22523 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22524 + draw_line(X-3,Y-3,X+3,Y+3,color,opacity).draw_line(X-3,Y+3,X+3,Y-3,color,opacity); 2.22525 + } 2.22526 + } break; 2.22527 + case 4 : { // Filled Circle 2.22528 + cimg_foroff(data,off) { 2.22529 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22530 + draw_circle(X,Y,3,color,opacity); 2.22531 + } 2.22532 + } break; 2.22533 + case 5 : { // Outlined circle 2.22534 + cimg_foroff(data,off) { 2.22535 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22536 + draw_circle(X,Y,3,color,opacity,0U); 2.22537 + } 2.22538 + } break; 2.22539 + case 6 : { // Square 2.22540 + cimg_foroff(data,off) { 2.22541 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22542 + draw_rectangle(X-3,Y-3,X+3,Y+3,color,opacity,~0U); 2.22543 + } 2.22544 + } break; 2.22545 + case 7 : { // Diamond 2.22546 + cimg_foroff(data,off) { 2.22547 + const int X = off*width/siz, Y = (int)((data[off]-m)/ca); 2.22548 + draw_line(X,Y-4,X+4,Y,color,opacity). 2.22549 + draw_line(X+4,Y,X,Y+4,color,opacity). 2.22550 + draw_line(X,Y+4,X-4,Y,color,opacity). 2.22551 + draw_line(X-4,Y,X,Y-4,color,opacity); 2.22552 + } 2.22553 + } break; 2.22554 + default : break; // No vertices 2.22555 + } 2.22556 + 2.22557 + if (color1) delete[] color1; if (color2) delete[] color2; 2.22558 + return *this; 2.22559 + } 2.22560 + 2.22561 + //! Draw a 1D graph on the instance image. 2.22562 + template<typename t, typename tc> 2.22563 + CImg<T>& draw_graph(const CImg<t>& data, 2.22564 + const CImg<tc>& color, const float opacity=1, 2.22565 + const unsigned int plot_type=1, const unsigned int vertex_type=1, 2.22566 + const double ymin=0, const double ymax=0, 2.22567 + const unsigned int pattern=~0U) { 2.22568 + return draw_graph(data,color.data,opacity,plot_type,vertex_type,ymin,ymax,pattern); 2.22569 + } 2.22570 + 2.22571 + //! Draw a labeled horizontal axis on the instance image. 2.22572 + /** 2.22573 + \param xvalues Lower bound of the x-range. 2.22574 + \param y Y-coordinate of the horizontal axis in the instance image. 2.22575 + \param color Array of dimv() values of type \c T, defining the drawing color. 2.22576 + \param opacity Drawing opacity. 2.22577 + \param pattern Drawing pattern. 2.22578 + \param opacity_out Drawing opacity of 'outside' axes. 2.22579 + \note if \c precision==0, precision of the labels is automatically computed. 2.22580 + **/ 2.22581 + template<typename t, typename tc> 2.22582 + CImg<T>& draw_axis(const CImg<t>& xvalues, const int y, 2.22583 + const tc *const color, const float opacity=1, 2.22584 + const unsigned int pattern=~0U) { 2.22585 + if (!is_empty()) { 2.22586 + int siz = (int)xvalues.size()-1; 2.22587 + if (siz<=0) draw_line(0,y,width-1,y,color,opacity,pattern); 2.22588 + else { 2.22589 + if (xvalues[0]<xvalues[siz]) draw_arrow(0,y,width-1,y,color,opacity,30,5,pattern); 2.22590 + else draw_arrow(width-1,y,0,y,color,opacity,30,5,pattern); 2.22591 + const int yt = (y+14)<dimy()?(y+3):(y-14); 2.22592 + char txt[32]; 2.22593 + cimg_foroff(xvalues,x) { 2.22594 + cimg_std::sprintf(txt,"%g",(double)xvalues(x)); 2.22595 + const int xi = (int)(x*(width-1)/siz), xt = xi-(int)cimg::strlen(txt)*3; 2.22596 + draw_point(xi,y-1,color,opacity).draw_point(xi,y+1,color,opacity). 2.22597 + draw_text(xt<0?0:xt,yt,txt,color,(tc*)0,opacity,11); 2.22598 + } 2.22599 + } 2.22600 + } 2.22601 + return *this; 2.22602 + } 2.22603 + 2.22604 + //! Draw a labeled horizontal axis on the instance image. 2.22605 + template<typename t, typename tc> 2.22606 + CImg<T>& draw_axis(const CImg<t>& xvalues, const int y, 2.22607 + const CImg<tc>& color, const float opacity=1, 2.22608 + const unsigned int pattern=~0U) { 2.22609 + return draw_axis(xvalues,y,color.data,opacity,pattern); 2.22610 + } 2.22611 + 2.22612 + //! Draw a labeled vertical axis on the instance image. 2.22613 + template<typename t, typename tc> 2.22614 + CImg<T>& draw_axis(const int x, const CImg<t>& yvalues, 2.22615 + const tc *const color, const float opacity=1, 2.22616 + const unsigned int pattern=~0U) { 2.22617 + if (!is_empty()) { 2.22618 + int siz = (int)yvalues.size()-1; 2.22619 + if (siz<=0) draw_line(x,0,x,height-1,color,opacity,pattern); 2.22620 + else { 2.22621 + if (yvalues[0]<yvalues[siz]) draw_arrow(x,0,x,height-1,color,opacity,30,5,pattern); 2.22622 + else draw_arrow(x,height-1,x,0,color,opacity,30,5,pattern); 2.22623 + char txt[32]; 2.22624 + cimg_foroff(yvalues,y) { 2.22625 + cimg_std::sprintf(txt,"%g",(double)yvalues(y)); 2.22626 + const int 2.22627 + yi = (int)(y*(height-1)/siz), 2.22628 + tmp = yi-5, 2.22629 + nyi = tmp<0?0:(tmp>=dimy()-11?dimy()-11:tmp), 2.22630 + xt = x-(int)cimg::strlen(txt)*7; 2.22631 + draw_point(x-1,yi,color,opacity).draw_point(x+1,yi,color,opacity); 2.22632 + if (xt>0) draw_text(xt,nyi,txt,color,(tc*)0,opacity,11); 2.22633 + else draw_text(x+3,nyi,txt,color,(tc*)0,opacity,11); 2.22634 + } 2.22635 + } 2.22636 + } 2.22637 + return *this; 2.22638 + } 2.22639 + 2.22640 + //! Draw a labeled vertical axis on the instance image. 2.22641 + template<typename t, typename tc> 2.22642 + CImg<T>& draw_axis(const int x, const CImg<t>& yvalues, 2.22643 + const CImg<tc>& color, const float opacity=1, 2.22644 + const unsigned int pattern=~0U) { 2.22645 + return draw_axis(x,yvalues,color.data,opacity,pattern); 2.22646 + } 2.22647 + 2.22648 + //! Draw a labeled horizontal+vertical axis on the instance image. 2.22649 + template<typename tx, typename ty, typename tc> 2.22650 + CImg<T>& draw_axis(const CImg<tx>& xvalues, const CImg<ty>& yvalues, 2.22651 + const tc *const color, const float opacity=1, 2.22652 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22653 + if (!is_empty()) { 2.22654 + const CImg<tx> nxvalues(xvalues.data,xvalues.size(),1,1,1,true); 2.22655 + const int sizx = (int)xvalues.size()-1, wm1 = (int)(width)-1; 2.22656 + if (sizx>0) { 2.22657 + float ox = (float)nxvalues[0]; 2.22658 + for (unsigned int x = 1; x<width; ++x) { 2.22659 + const float nx = (float)nxvalues._linear_atX((float)x*sizx/wm1); 2.22660 + if (nx*ox<=0) { draw_axis(nx==0?x:x-1,yvalues,color,opacity,patterny); break; } 2.22661 + ox = nx; 2.22662 + } 2.22663 + } 2.22664 + const CImg<ty> nyvalues(yvalues.data,yvalues.size(),1,1,1,true); 2.22665 + const int sizy = (int)yvalues.size()-1, hm1 = (int)(height)-1; 2.22666 + if (sizy>0) { 2.22667 + float oy = (float)nyvalues[0]; 2.22668 + for (unsigned int y = 1; y<height; ++y) { 2.22669 + const float ny = (float)nyvalues._linear_atX((float)y*sizy/hm1); 2.22670 + if (ny*oy<=0) { draw_axis(xvalues,ny==0?y:y-1,color,opacity,patternx); break; } 2.22671 + oy = ny; 2.22672 + } 2.22673 + } 2.22674 + } 2.22675 + return *this; 2.22676 + } 2.22677 + 2.22678 + //! Draw a labeled horizontal+vertical axis on the instance image. 2.22679 + template<typename tx, typename ty, typename tc> 2.22680 + CImg<T>& draw_axis(const CImg<tx>& xvalues, const CImg<ty>& yvalues, 2.22681 + const CImg<tc>& color, const float opacity=1, 2.22682 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22683 + return draw_axis(xvalues,yvalues,color.data,opacity,patternx,patterny); 2.22684 + } 2.22685 + 2.22686 + //! Draw a labeled horizontal+vertical axis on the instance image. 2.22687 + template<typename tc> 2.22688 + CImg<T>& draw_axis(const float x0, const float x1, const float y0, const float y1, 2.22689 + const tc *const color, const float opacity=1, 2.22690 + const int subdivisionx=-60, const int subdivisiony=-60, 2.22691 + const float precisionx=0, const float precisiony=0, 2.22692 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22693 + if (!is_empty()) { 2.22694 + const float 2.22695 + dx = cimg::abs(x1-x0), dy = cimg::abs(y1-y0), 2.22696 + px = (precisionx==0)?(float)cimg_std::pow(10.0,(int)cimg_std::log10(dx)-2.0):precisionx, 2.22697 + py = (precisiony==0)?(float)cimg_std::pow(10.0,(int)cimg_std::log10(dy)-2.0):precisiony; 2.22698 + draw_axis(CImg<floatT>::sequence(subdivisionx>0?subdivisionx:1-dimx()/subdivisionx,x0,x1).round(px), 2.22699 + CImg<floatT>::sequence(subdivisiony>0?subdivisiony:1-dimy()/subdivisiony,y0,y1).round(py), 2.22700 + color,opacity,patternx,patterny); 2.22701 + } 2.22702 + return *this; 2.22703 + } 2.22704 + 2.22705 + //! Draw a labeled horizontal+vertical axis on the instance image. 2.22706 + template<typename tc> 2.22707 + CImg<T>& draw_axis(const float x0, const float x1, const float y0, const float y1, 2.22708 + const CImg<tc>& color, const float opacity=1, 2.22709 + const int subdivisionx=-60, const int subdivisiony=-60, 2.22710 + const float precisionx=0, const float precisiony=0, 2.22711 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22712 + return draw_axis(x0,x1,y0,y1,color.data,opacity,subdivisionx,subdivisiony,precisionx,precisiony,patternx,patterny); 2.22713 + } 2.22714 + 2.22715 + //! Draw grid. 2.22716 + template<typename tx, typename ty, typename tc> 2.22717 + CImg<T>& draw_grid(const CImg<tx>& xvalues, const CImg<ty>& yvalues, 2.22718 + const tc *const color, const float opacity=1, 2.22719 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22720 + if (!is_empty()) { 2.22721 + if (xvalues) cimg_foroff(xvalues,x) { 2.22722 + const int xi = (int)xvalues[x]; 2.22723 + if (xi>=0 && xi<dimx()) draw_line(xi,0,xi,height-1,color,opacity,patternx); 2.22724 + } 2.22725 + if (yvalues) cimg_foroff(yvalues,y) { 2.22726 + const int yi = (int)yvalues[y]; 2.22727 + if (yi>=0 && yi<dimy()) draw_line(0,yi,width-1,yi,color,opacity,patterny); 2.22728 + } 2.22729 + } 2.22730 + return *this; 2.22731 + } 2.22732 + 2.22733 + //! Draw grid. 2.22734 + template<typename tx, typename ty, typename tc> 2.22735 + CImg<T>& draw_grid(const CImg<tx>& xvalues, const CImg<ty>& yvalues, 2.22736 + const CImg<tc>& color, const float opacity=1, 2.22737 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22738 + return draw_grid(xvalues,yvalues,color.data,opacity,patternx,patterny); 2.22739 + } 2.22740 + 2.22741 + //! Draw grid. 2.22742 + template<typename tc> 2.22743 + CImg<T>& draw_grid(const float deltax, const float deltay, 2.22744 + const float offsetx, const float offsety, 2.22745 + const bool invertx, const bool inverty, 2.22746 + const tc *const color, const float opacity=1, 2.22747 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22748 + CImg<uintT> seqx, seqy; 2.22749 + if (deltax!=0) { 2.22750 + const float dx = deltax>0?deltax:width*-deltax/100; 2.22751 + const unsigned int nx = (unsigned int)(width/dx); 2.22752 + seqx = CImg<uintT>::sequence(1+nx,0,(unsigned int)(dx*nx)); 2.22753 + if (offsetx) cimg_foroff(seqx,x) seqx(x) = (unsigned int)cimg::mod(seqx(x)+offsetx,(float)width); 2.22754 + if (invertx) cimg_foroff(seqx,x) seqx(x) = width-1-seqx(x); 2.22755 + } 2.22756 + 2.22757 + if (deltay!=0) { 2.22758 + const float dy = deltay>0?deltay:height*-deltay/100; 2.22759 + const unsigned int ny = (unsigned int)(height/dy); 2.22760 + seqy = CImg<uintT>::sequence(1+ny,0,(unsigned int)(dy*ny)); 2.22761 + if (offsety) cimg_foroff(seqy,y) seqy(y) = (unsigned int)cimg::mod(seqy(y)+offsety,(float)height); 2.22762 + if (inverty) cimg_foroff(seqy,y) seqy(y) = height-1-seqy(y); 2.22763 + } 2.22764 + return draw_grid(seqx,seqy,color,opacity,patternx,patterny); 2.22765 + } 2.22766 + 2.22767 + //! Draw grid. 2.22768 + template<typename tc> 2.22769 + CImg<T>& draw_grid(const float deltax, const float deltay, 2.22770 + const float offsetx, const float offsety, 2.22771 + const bool invertx, const bool inverty, 2.22772 + const CImg<tc>& color, const float opacity=1, 2.22773 + const unsigned int patternx=~0U, const unsigned int patterny=~0U) { 2.22774 + return draw_grid(deltax,deltay,offsetx,offsety,invertx,inverty,color.data,opacity,patternx,patterny); 2.22775 + } 2.22776 + 2.22777 + //! Draw a 3D filled region starting from a point (\c x,\c y,\ z) in the instance image. 2.22778 + /** 2.22779 + \param x X-coordinate of the starting point of the region to fill. 2.22780 + \param y Y-coordinate of the starting point of the region to fill. 2.22781 + \param z Z-coordinate of the starting point of the region to fill. 2.22782 + \param color An array of dimv() values of type \c T, defining the drawing color. 2.22783 + \param region Image that will contain the mask of the filled region mask, as an output. 2.22784 + \param sigma Tolerance concerning neighborhood values. 2.22785 + \param opacity Opacity of the drawing. 2.22786 + \param high_connexity Tells if 8-connexity must be used (only for 2D images). 2.22787 + \return \p region is initialized with the binary mask of the filled region. 2.22788 + **/ 2.22789 + template<typename tc, typename t> 2.22790 + CImg<T>& draw_fill(const int x, const int y, const int z, 2.22791 + const tc *const color, const float opacity, 2.22792 + CImg<t>& region, const float sigma=0, 2.22793 + const bool high_connexity=false) { 2.22794 + 2.22795 +#define _cimg_draw_fill_test(x,y,z,res) if (region(x,y,z)) res = false; else { \ 2.22796 + res = true; \ 2.22797 + const T *reference_col = reference_color.ptr() + dim, *ptrs = ptr(x,y,z) + siz; \ 2.22798 + for (unsigned int i = dim; res && i; --i) { ptrs-=whz; res = (cimg::abs(*ptrs - *(--reference_col))<=sigma); } \ 2.22799 + region(x,y,z) = (t)(res?1:noregion); \ 2.22800 +} 2.22801 + 2.22802 +#define _cimg_draw_fill_set(x,y,z) { \ 2.22803 + const tc *col = color; \ 2.22804 + T *ptrd = ptr(x,y,z); \ 2.22805 + if (opacity>=1) cimg_forV(*this,k) { *ptrd = (T)*(col++); ptrd+=whz; } \ 2.22806 + else cimg_forV(*this,k) { *ptrd = (T)(*(col++)*nopacity + *ptrd*copacity); ptrd+=whz; } \ 2.22807 +} 2.22808 + 2.22809 +#define _cimg_draw_fill_insert(x,y,z) { \ 2.22810 + if (posr1>=remaining.height) remaining.resize(3,remaining.height<<1,1,1,0); \ 2.22811 + unsigned int *ptrr = remaining.ptr(0,posr1); \ 2.22812 + *(ptrr++) = x; *(ptrr++) = y; *(ptrr++) = z; ++posr1; \ 2.22813 +} 2.22814 + 2.22815 +#define _cimg_draw_fill_test_neighbor(x,y,z,cond) if (cond) { \ 2.22816 + const unsigned int tx = x, ty = y, tz = z; \ 2.22817 + _cimg_draw_fill_test(tx,ty,tz,res); if (res) _cimg_draw_fill_insert(tx,ty,tz); \ 2.22818 +} 2.22819 + 2.22820 + if (!color) 2.22821 + throw CImgArgumentException("CImg<%s>::draw_fill() : Specified color is (null).", 2.22822 + pixel_type()); 2.22823 + region.assign(width,height,depth,1,(t)0); 2.22824 + if (x>=0 && x<dimx() && y>=0 && y<dimy() && z>=0 && z<dimz()) { 2.22825 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.22826 + const unsigned int whz = width*height*depth, siz = dim*whz, W1 = width-1, H1 = height-1, D1 = depth-1; 2.22827 + const bool threed = depth>1; 2.22828 + const CImg<T> reference_color = get_vector_at(x,y,z); 2.22829 + CImg<uintT> remaining(3,512,1,1,0); 2.22830 + remaining(0,0) = x; remaining(1,0) = y; remaining(2,0) = z; 2.22831 + unsigned int posr0 = 0, posr1 = 1; 2.22832 + region(x,y,z) = (t)1; 2.22833 + const t noregion = ((t)1==(t)2)?(t)0:(t)(-1); 2.22834 + if (threed) do { // 3D version of the filling algorithm 2.22835 + const unsigned int *pcurr = remaining.ptr(0,posr0++), xc = *(pcurr++), yc = *(pcurr++), zc = *(pcurr++); 2.22836 + if (posr0>=512) { remaining.translate(0,posr0); posr1-=posr0; posr0 = 0; } 2.22837 + bool cont, res; 2.22838 + unsigned int nxc = xc; 2.22839 + do { // X-backward 2.22840 + _cimg_draw_fill_set(nxc,yc,zc); 2.22841 + _cimg_draw_fill_test_neighbor(nxc,yc-1,zc,yc!=0); 2.22842 + _cimg_draw_fill_test_neighbor(nxc,yc+1,zc,yc<H1); 2.22843 + _cimg_draw_fill_test_neighbor(nxc,yc,zc-1,zc!=0); 2.22844 + _cimg_draw_fill_test_neighbor(nxc,yc,zc+1,zc<D1); 2.22845 + if (nxc) { --nxc; _cimg_draw_fill_test(nxc,yc,zc,cont); } else cont = false; 2.22846 + } while (cont); 2.22847 + nxc = xc; 2.22848 + do { // X-forward 2.22849 + if ((++nxc)<=W1) { _cimg_draw_fill_test(nxc,yc,zc,cont); } else cont = false; 2.22850 + if (cont) { 2.22851 + _cimg_draw_fill_set(nxc,yc,zc); 2.22852 + _cimg_draw_fill_test_neighbor(nxc,yc-1,zc,yc!=0); 2.22853 + _cimg_draw_fill_test_neighbor(nxc,yc+1,zc,yc<H1); 2.22854 + _cimg_draw_fill_test_neighbor(nxc,yc,zc-1,zc!=0); 2.22855 + _cimg_draw_fill_test_neighbor(nxc,yc,zc+1,zc<D1); 2.22856 + } 2.22857 + } while (cont); 2.22858 + unsigned int nyc = yc; 2.22859 + do { // Y-backward 2.22860 + if (nyc) { --nyc; _cimg_draw_fill_test(xc,nyc,zc,cont); } else cont = false; 2.22861 + if (cont) { 2.22862 + _cimg_draw_fill_set(xc,nyc,zc); 2.22863 + _cimg_draw_fill_test_neighbor(xc-1,nyc,zc,xc!=0); 2.22864 + _cimg_draw_fill_test_neighbor(xc+1,nyc,zc,xc<W1); 2.22865 + _cimg_draw_fill_test_neighbor(xc,nyc,zc-1,zc!=0); 2.22866 + _cimg_draw_fill_test_neighbor(xc,nyc,zc+1,zc<D1); 2.22867 + } 2.22868 + } while (cont); 2.22869 + nyc = yc; 2.22870 + do { // Y-forward 2.22871 + if ((++nyc)<=H1) { _cimg_draw_fill_test(xc,nyc,zc,cont); } else cont = false; 2.22872 + if (cont) { 2.22873 + _cimg_draw_fill_set(xc,nyc,zc); 2.22874 + _cimg_draw_fill_test_neighbor(xc-1,nyc,zc,xc!=0); 2.22875 + _cimg_draw_fill_test_neighbor(xc+1,nyc,zc,xc<W1); 2.22876 + _cimg_draw_fill_test_neighbor(xc,nyc,zc-1,zc!=0); 2.22877 + _cimg_draw_fill_test_neighbor(xc,nyc,zc+1,zc<D1); 2.22878 + } 2.22879 + } while (cont); 2.22880 + unsigned int nzc = zc; 2.22881 + do { // Z-backward 2.22882 + if (nzc) { --nzc; _cimg_draw_fill_test(xc,yc,nzc,cont); } else cont = false; 2.22883 + if (cont) { 2.22884 + _cimg_draw_fill_set(xc,yc,nzc); 2.22885 + _cimg_draw_fill_test_neighbor(xc-1,yc,nzc,xc!=0); 2.22886 + _cimg_draw_fill_test_neighbor(xc+1,yc,nzc,xc<W1); 2.22887 + _cimg_draw_fill_test_neighbor(xc,yc-1,nzc,yc!=0); 2.22888 + _cimg_draw_fill_test_neighbor(xc,yc+1,nzc,yc<H1); 2.22889 + } 2.22890 + } while (cont); 2.22891 + nzc = zc; 2.22892 + do { // Z-forward 2.22893 + if ((++nzc)<=D1) { _cimg_draw_fill_test(xc,yc,nzc,cont); } else cont = false; 2.22894 + if (cont) { 2.22895 + _cimg_draw_fill_set(xc,nyc,zc); 2.22896 + _cimg_draw_fill_test_neighbor(xc-1,yc,nzc,xc!=0); 2.22897 + _cimg_draw_fill_test_neighbor(xc+1,yc,nzc,xc<W1); 2.22898 + _cimg_draw_fill_test_neighbor(xc,yc-1,nzc,yc!=0); 2.22899 + _cimg_draw_fill_test_neighbor(xc,yc+1,nzc,yc<H1); 2.22900 + } 2.22901 + } while (cont); 2.22902 + } while (posr1>posr0); 2.22903 + else do { // 2D version of the filling algorithm 2.22904 + const unsigned int *pcurr = remaining.ptr(0,posr0++), xc = *(pcurr++), yc = *(pcurr++); 2.22905 + if (posr0>=512) { remaining.translate(0,posr0); posr1-=posr0; posr0 = 0; } 2.22906 + bool cont, res; 2.22907 + unsigned int nxc = xc; 2.22908 + do { // X-backward 2.22909 + _cimg_draw_fill_set(nxc,yc,0); 2.22910 + _cimg_draw_fill_test_neighbor(nxc,yc-1,0,yc!=0); 2.22911 + _cimg_draw_fill_test_neighbor(nxc,yc+1,0,yc<H1); 2.22912 + if (high_connexity) { 2.22913 + _cimg_draw_fill_test_neighbor(nxc-1,yc-1,0,(nxc!=0 && yc!=0)); 2.22914 + _cimg_draw_fill_test_neighbor(nxc+1,yc-1,0,(nxc<W1 && yc!=0)); 2.22915 + _cimg_draw_fill_test_neighbor(nxc-1,yc+1,0,(nxc!=0 && yc<H1)); 2.22916 + _cimg_draw_fill_test_neighbor(nxc+1,yc+1,0,(nxc<W1 && yc<H1)); 2.22917 + } 2.22918 + if (nxc) { --nxc; _cimg_draw_fill_test(nxc,yc,0,cont); } else cont = false; 2.22919 + } while (cont); 2.22920 + nxc = xc; 2.22921 + do { // X-forward 2.22922 + if ((++nxc)<=W1) { _cimg_draw_fill_test(nxc,yc,0,cont); } else cont = false; 2.22923 + if (cont) { 2.22924 + _cimg_draw_fill_set(nxc,yc,0); 2.22925 + _cimg_draw_fill_test_neighbor(nxc,yc-1,0,yc!=0); 2.22926 + _cimg_draw_fill_test_neighbor(nxc,yc+1,0,yc<H1); 2.22927 + if (high_connexity) { 2.22928 + _cimg_draw_fill_test_neighbor(nxc-1,yc-1,0,(nxc!=0 && yc!=0)); 2.22929 + _cimg_draw_fill_test_neighbor(nxc+1,yc-1,0,(nxc<W1 && yc!=0)); 2.22930 + _cimg_draw_fill_test_neighbor(nxc-1,yc+1,0,(nxc!=0 && yc<H1)); 2.22931 + _cimg_draw_fill_test_neighbor(nxc+1,yc+1,0,(nxc<W1 && yc<H1)); 2.22932 + } 2.22933 + } 2.22934 + } while (cont); 2.22935 + unsigned int nyc = yc; 2.22936 + do { // Y-backward 2.22937 + if (nyc) { --nyc; _cimg_draw_fill_test(xc,nyc,0,cont); } else cont = false; 2.22938 + if (cont) { 2.22939 + _cimg_draw_fill_set(xc,nyc,0); 2.22940 + _cimg_draw_fill_test_neighbor(xc-1,nyc,0,xc!=0); 2.22941 + _cimg_draw_fill_test_neighbor(xc+1,nyc,0,xc<W1); 2.22942 + if (high_connexity) { 2.22943 + _cimg_draw_fill_test_neighbor(xc-1,nyc-1,0,(xc!=0 && nyc!=0)); 2.22944 + _cimg_draw_fill_test_neighbor(xc+1,nyc-1,0,(xc<W1 && nyc!=0)); 2.22945 + _cimg_draw_fill_test_neighbor(xc-1,nyc+1,0,(xc!=0 && nyc<H1)); 2.22946 + _cimg_draw_fill_test_neighbor(xc+1,nyc+1,0,(xc<W1 && nyc<H1)); 2.22947 + } 2.22948 + } 2.22949 + } while (cont); 2.22950 + nyc = yc; 2.22951 + do { // Y-forward 2.22952 + if ((++nyc)<=H1) { _cimg_draw_fill_test(xc,nyc,0,cont); } else cont = false; 2.22953 + if (cont) { 2.22954 + _cimg_draw_fill_set(xc,nyc,0); 2.22955 + _cimg_draw_fill_test_neighbor(xc-1,nyc,0,xc!=0); 2.22956 + _cimg_draw_fill_test_neighbor(xc+1,nyc,0,xc<W1); 2.22957 + if (high_connexity) { 2.22958 + _cimg_draw_fill_test_neighbor(xc-1,nyc-1,0,(xc!=0 && nyc!=0)); 2.22959 + _cimg_draw_fill_test_neighbor(xc+1,nyc-1,0,(xc<W1 && nyc!=0)); 2.22960 + _cimg_draw_fill_test_neighbor(xc-1,nyc+1,0,(xc!=0 && nyc<H1)); 2.22961 + _cimg_draw_fill_test_neighbor(xc+1,nyc+1,0,(xc<W1 && nyc<H1)); 2.22962 + } 2.22963 + } 2.22964 + } while (cont); 2.22965 + } while (posr1>posr0); 2.22966 + if (noregion) cimg_for(region,ptr,t) if (*ptr==noregion) *ptr = (t)0; 2.22967 + } 2.22968 + return *this; 2.22969 + } 2.22970 + 2.22971 + //! Draw a 3D filled region starting from a point (\c x,\c y,\ z) in the instance image. 2.22972 + template<typename tc, typename t> 2.22973 + CImg<T>& draw_fill(const int x, const int y, const int z, 2.22974 + const CImg<tc>& color, const float opacity, 2.22975 + CImg<t>& region, const float sigma=0, const bool high_connexity=false) { 2.22976 + return draw_fill(x,y,z,color.data,opacity,region,sigma,high_connexity); 2.22977 + } 2.22978 + 2.22979 + //! Draw a 3D filled region starting from a point (\c x,\c y,\ z) in the instance image. 2.22980 + /** 2.22981 + \param x = X-coordinate of the starting point of the region to fill. 2.22982 + \param y = Y-coordinate of the starting point of the region to fill. 2.22983 + \param z = Z-coordinate of the starting point of the region to fill. 2.22984 + \param color = an array of dimv() values of type \c T, defining the drawing color. 2.22985 + \param sigma = tolerance concerning neighborhood values. 2.22986 + \param opacity = opacity of the drawing. 2.22987 + **/ 2.22988 + template<typename tc> 2.22989 + CImg<T>& draw_fill(const int x, const int y, const int z, 2.22990 + const tc *const color, const float opacity=1, 2.22991 + const float sigma=0, const bool high_connexity=false) { 2.22992 + CImg<boolT> tmp; 2.22993 + return draw_fill(x,y,z,color,opacity,tmp,sigma,high_connexity); 2.22994 + } 2.22995 + 2.22996 + //! Draw a 3D filled region starting from a point (\c x,\c y,\ z) in the instance image. 2.22997 + template<typename tc> 2.22998 + CImg<T>& draw_fill(const int x, const int y, const int z, 2.22999 + const CImg<tc>& color, const float opacity=1, 2.23000 + const float sigma=0, const bool high_connexity=false) { 2.23001 + return draw_fill(x,y,z,color.data,opacity,sigma,high_connexity); 2.23002 + } 2.23003 + 2.23004 + //! Draw a 2D filled region starting from a point (\c x,\c y) in the instance image. 2.23005 + /** 2.23006 + \param x = X-coordinate of the starting point of the region to fill. 2.23007 + \param y = Y-coordinate of the starting point of the region to fill. 2.23008 + \param color = an array of dimv() values of type \c T, defining the drawing color. 2.23009 + \param sigma = tolerance concerning neighborhood values. 2.23010 + \param opacity = opacity of the drawing. 2.23011 + **/ 2.23012 + template<typename tc> 2.23013 + CImg<T>& draw_fill(const int x, const int y, 2.23014 + const tc *const color, const float opacity=1, 2.23015 + const float sigma=0, const bool high_connexity=false) { 2.23016 + CImg<boolT> tmp; 2.23017 + return draw_fill(x,y,0,color,opacity,tmp,sigma,high_connexity); 2.23018 + } 2.23019 + 2.23020 + //! Draw a 2D filled region starting from a point (\c x,\c y) in the instance image. 2.23021 + template<typename tc> 2.23022 + CImg<T>& draw_fill(const int x, const int y, 2.23023 + const CImg<tc>& color, const float opacity=1, 2.23024 + const float sigma=0, const bool high_connexity=false) { 2.23025 + return draw_fill(x,y,color.data,opacity,sigma,high_connexity); 2.23026 + } 2.23027 + 2.23028 + //! Draw a plasma random texture. 2.23029 + /** 2.23030 + \param x0 = X-coordinate of the upper-left corner of the plasma. 2.23031 + \param y0 = Y-coordinate of the upper-left corner of the plasma. 2.23032 + \param x1 = X-coordinate of the lower-right corner of the plasma. 2.23033 + \param y1 = Y-coordinate of the lower-right corner of the plasma. 2.23034 + \param alpha = Alpha-parameter of the plasma. 2.23035 + \param beta = Beta-parameter of the plasma. 2.23036 + \param opacity = opacity of the drawing. 2.23037 + **/ 2.23038 + CImg<T>& draw_plasma(const int x0, const int y0, const int x1, const int y1, 2.23039 + const float alpha=1, const float beta=1, 2.23040 + const float opacity=1) { 2.23041 + if (!is_empty()) { 2.23042 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.23043 + int nx0 = x0, nx1 = x1, ny0 = y0, ny1 = y1; 2.23044 + if (nx1<nx0) cimg::swap(nx0,nx1); 2.23045 + if (ny1<ny0) cimg::swap(ny0,ny1); 2.23046 + if (nx0<0) nx0 = 0; 2.23047 + if (nx1>=dimx()) nx1 = width-1; 2.23048 + if (ny0<0) ny0 = 0; 2.23049 + if (ny1>=dimy()) ny1 = height-1; 2.23050 + const int xc = (nx0+nx1)/2, yc = (ny0+ny1)/2, dx = (xc-nx0), dy = (yc-ny0); 2.23051 + const Tfloat dc = (Tfloat)(cimg_std::sqrt((float)(dx*dx+dy*dy))*alpha + beta); 2.23052 + Tfloat val = 0; 2.23053 + cimg_forV(*this,k) { 2.23054 + if (opacity>=1) { 2.23055 + const Tfloat 2.23056 + val0 = (Tfloat)((*this)(nx0,ny0,0,k)), val1 = (Tfloat)((*this)(nx1,ny0,0,k)), 2.23057 + val2 = (Tfloat)((*this)(nx0,ny1,0,k)), val3 = (Tfloat)((*this)(nx1,ny1,0,k)); 2.23058 + (*this)(xc,ny0,0,k) = (T)((val0+val1)/2); 2.23059 + (*this)(xc,ny1,0,k) = (T)((val2+val3)/2); 2.23060 + (*this)(nx0,yc,0,k) = (T)((val0+val2)/2); 2.23061 + (*this)(nx1,yc,0,k) = (T)((val1+val3)/2); 2.23062 + do { 2.23063 + val = (Tfloat)(0.25f*((Tfloat)((*this)(nx0,ny0,0,k)) + 2.23064 + (Tfloat)((*this)(nx1,ny0,0,k)) + 2.23065 + (Tfloat)((*this)(nx1,ny1,0,k)) + 2.23066 + (Tfloat)((*this)(nx0,ny1,0,k))) + 2.23067 + dc*cimg::grand()); 2.23068 + } while (val<(Tfloat)cimg::type<T>::min() || val>(Tfloat)cimg::type<T>::max()); 2.23069 + (*this)(xc,yc,0,k) = (T)val; 2.23070 + } else { 2.23071 + const Tfloat 2.23072 + val0 = (Tfloat)((*this)(nx0,ny0,0,k)), val1 = (Tfloat)((*this)(nx1,ny0,0,k)), 2.23073 + val2 = (Tfloat)((*this)(nx0,ny1,0,k)), val3 = (Tfloat)((*this)(nx1,ny1,0,k)); 2.23074 + (*this)(xc,ny0,0,k) = (T)(((val0+val1)*nopacity + copacity*(*this)(xc,ny0,0,k))/2); 2.23075 + (*this)(xc,ny1,0,k) = (T)(((val2+val3)*nopacity + copacity*(*this)(xc,ny1,0,k))/2); 2.23076 + (*this)(nx0,yc,0,k) = (T)(((val0+val2)*nopacity + copacity*(*this)(nx0,yc,0,k))/2); 2.23077 + (*this)(nx1,yc,0,k) = (T)(((val1+val3)*nopacity + copacity*(*this)(nx1,yc,0,k))/2); 2.23078 + do { 2.23079 + val = (Tfloat)(0.25f*(((Tfloat)((*this)(nx0,ny0,0,k)) + 2.23080 + (Tfloat)((*this)(nx1,ny0,0,k)) + 2.23081 + (Tfloat)((*this)(nx1,ny1,0,k)) + 2.23082 + (Tfloat)((*this)(nx0,ny1,0,k))) + 2.23083 + dc*cimg::grand())*nopacity + copacity*(*this)(xc,yc,0,k)); 2.23084 + } while (val<(Tfloat)cimg::type<T>::min() || val>(Tfloat)cimg::type<T>::max()); 2.23085 + (*this)(xc,yc,0,k) = (T)val; 2.23086 + } 2.23087 + } 2.23088 + if (xc!=nx0 || yc!=ny0) { 2.23089 + draw_plasma(nx0,ny0,xc,yc,alpha,beta,opacity); 2.23090 + draw_plasma(xc,ny0,nx1,yc,alpha,beta,opacity); 2.23091 + draw_plasma(nx0,yc,xc,ny1,alpha,beta,opacity); 2.23092 + draw_plasma(xc,yc,nx1,ny1,alpha,beta,opacity); 2.23093 + } 2.23094 + } 2.23095 + return *this; 2.23096 + } 2.23097 + 2.23098 + //! Draw a plasma random texture. 2.23099 + /** 2.23100 + \param alpha = Alpha-parameter of the plasma. 2.23101 + \param beta = Beta-parameter of the plasma. 2.23102 + \param opacity = opacity of the drawing. 2.23103 + **/ 2.23104 + CImg<T>& draw_plasma(const float alpha=1, const float beta=1, 2.23105 + const float opacity=1) { 2.23106 + return draw_plasma(0,0,width-1,height-1,alpha,beta,opacity); 2.23107 + } 2.23108 + 2.23109 + //! Draw a quadratic Mandelbrot or Julia fractal set, computed using the Escape Time Algorithm. 2.23110 + template<typename tc> 2.23111 + CImg<T>& draw_mandelbrot(const int x0, const int y0, const int x1, const int y1, 2.23112 + const CImg<tc>& color_palette, const float opacity=1, 2.23113 + const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, 2.23114 + const unsigned int itermax=255, 2.23115 + const bool normalized_iteration=false, 2.23116 + const bool julia_set=false, 2.23117 + const double paramr=0, const double parami=0) { 2.23118 + if (is_empty()) return *this; 2.23119 + CImg<tc> palette; 2.23120 + if (color_palette) palette.assign(color_palette.data,color_palette.size()/color_palette.dim,1,1,color_palette.dim,true); 2.23121 + if (palette && palette.dim!=dim) 2.23122 + throw CImgArgumentException("CImg<%s>::draw_mandelbrot() : Specified color palette (%u,%u,%u,%u,%p) is not \n" 2.23123 + "compatible with instance image (%u,%u,%u,%u,%p).", 2.23124 + pixel_type(),color_palette.width,color_palette.height,color_palette.depth,color_palette.dim, 2.23125 + color_palette.data,width,height,depth,dim,data); 2.23126 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0), ln2 = (float)cimg_std::log(2.0); 2.23127 + unsigned int iter = 0; 2.23128 + cimg_for_inXY(*this,x0,y0,x1,y1,p,q) { 2.23129 + const double x = z0r + p*(z1r-z0r)/width, y = z0i + q*(z1i-z0i)/height; 2.23130 + double zr, zi, cr, ci; 2.23131 + if (julia_set) { zr = x; zi = y; cr = paramr; ci = parami; } 2.23132 + else { zr = paramr; zi = parami; cr = x; ci = y; } 2.23133 + for (iter=1; zr*zr + zi*zi<=4 && iter<=itermax; ++iter) { 2.23134 + const double temp = zr*zr - zi*zi + cr; 2.23135 + zi = 2*zr*zi + ci; 2.23136 + zr = temp; 2.23137 + } 2.23138 + if (iter>itermax) { 2.23139 + if (palette) { 2.23140 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)palette(0,k); 2.23141 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)(palette(0,k)*nopacity + (*this)(p,q,0,k)*copacity); 2.23142 + } else { 2.23143 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)0; 2.23144 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)((*this)(p,q,0,k)*copacity); 2.23145 + } 2.23146 + } else if (normalized_iteration) { 2.23147 + const float 2.23148 + normz = (float)cimg::abs(zr*zr+zi*zi), 2.23149 + niter = (float)(iter + 1 - cimg_std::log(cimg_std::log(normz))/ln2); 2.23150 + if (palette) { 2.23151 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)palette._linear_atX(niter,k); 2.23152 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)(palette._linear_atX(niter,k)*nopacity + (*this)(p,q,0,k)*copacity); 2.23153 + } else { 2.23154 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)niter; 2.23155 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)(niter*nopacity + (*this)(p,q,0,k)*copacity); 2.23156 + } 2.23157 + } else { 2.23158 + if (palette) { 2.23159 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)palette._atX(iter,k); 2.23160 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)(palette(iter,k)*nopacity + (*this)(p,q,0,k)*copacity); 2.23161 + } else { 2.23162 + if (opacity>=1) cimg_forV(*this,k) (*this)(p,q,0,k) = (T)iter; 2.23163 + else cimg_forV(*this,k) (*this)(p,q,0,k) = (T)(iter*nopacity + (*this)(p,q,0,k)*copacity); 2.23164 + } 2.23165 + } 2.23166 + } 2.23167 + return *this; 2.23168 + } 2.23169 + 2.23170 + //! Draw a quadratic Mandelbrot or Julia fractal set, computed using the Escape Time Algorithm. 2.23171 + template<typename tc> 2.23172 + CImg<T>& draw_mandelbrot(const CImg<tc>& color_palette, const float opacity=1, 2.23173 + const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, 2.23174 + const unsigned int itermax=255, 2.23175 + const bool normalized_iteration=false, 2.23176 + const bool julia_set=false, 2.23177 + const double paramr=0, const double parami=0) { 2.23178 + return draw_mandelbrot(0,0,width-1,height-1,color_palette,opacity,z0r,z0i,z1r,z1i,itermax,normalized_iteration,julia_set,paramr,parami); 2.23179 + } 2.23180 + 2.23181 + //! Draw a 1D gaussian function in the instance image. 2.23182 + /** 2.23183 + \param xc = X-coordinate of the gaussian center. 2.23184 + \param sigma = Standard variation of the gaussian distribution. 2.23185 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.23186 + \param opacity = opacity of the drawing. 2.23187 + **/ 2.23188 + template<typename tc> 2.23189 + CImg<T>& draw_gaussian(const float xc, const float sigma, 2.23190 + const tc *const color, const float opacity=1) { 2.23191 + if (is_empty()) return *this; 2.23192 + if (!color) 2.23193 + throw CImgArgumentException("CImg<%s>::draw_gaussian() : Specified color is (null)", 2.23194 + pixel_type()); 2.23195 + const float sigma2 = 2*sigma*sigma, nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.23196 + const unsigned int whz = width*height*depth; 2.23197 + const tc *col = color; 2.23198 + cimg_forX(*this,x) { 2.23199 + const float dx = (x - xc), val = (float)cimg_std::exp(-dx*dx/sigma2); 2.23200 + T *ptrd = ptr(x,0,0,0); 2.23201 + if (opacity>=1) cimg_forV(*this,k) { *ptrd = (T)(val*(*col++)); ptrd+=whz; } 2.23202 + else cimg_forV(*this,k) { *ptrd = (T)(nopacity*val*(*col++) + *ptrd*copacity); ptrd+=whz; } 2.23203 + col-=dim; 2.23204 + } 2.23205 + return *this; 2.23206 + } 2.23207 + 2.23208 + //! Draw a 1D gaussian function in the instance image. 2.23209 + template<typename tc> 2.23210 + CImg<T>& draw_gaussian(const float xc, const float sigma, 2.23211 + const CImg<tc>& color, const float opacity=1) { 2.23212 + return draw_gaussian(xc,sigma,color.data,opacity); 2.23213 + } 2.23214 + 2.23215 + //! Draw an anisotropic 2D gaussian function. 2.23216 + /** 2.23217 + \param xc = X-coordinate of the gaussian center. 2.23218 + \param yc = Y-coordinate of the gaussian center. 2.23219 + \param tensor = 2x2 covariance matrix. 2.23220 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.23221 + \param opacity = opacity of the drawing. 2.23222 + **/ 2.23223 + template<typename t, typename tc> 2.23224 + CImg<T>& draw_gaussian(const float xc, const float yc, const CImg<t>& tensor, 2.23225 + const tc *const color, const float opacity=1) { 2.23226 + if (is_empty()) return *this; 2.23227 + typedef typename cimg::superset<t,float>::type tfloat; 2.23228 + if (tensor.width!=2 || tensor.height!=2 || tensor.depth!=1 || tensor.dim!=1) 2.23229 + throw CImgArgumentException("CImg<%s>::draw_gaussian() : Tensor parameter (%u,%u,%u,%u,%p) is not a 2x2 matrix.", 2.23230 + pixel_type(),tensor.width,tensor.height,tensor.depth,tensor.dim,tensor.data); 2.23231 + if (!color) 2.23232 + throw CImgArgumentException("CImg<%s>::draw_gaussian() : Specified color is (null)", 2.23233 + pixel_type()); 2.23234 + const CImg<tfloat> invT = tensor.get_invert(), invT2 = (invT*invT)/(-2.0); 2.23235 + const tfloat a = invT2(0,0), b = 2*invT2(1,0), c = invT2(1,1); 2.23236 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.23237 + const unsigned int whz = width*height*depth; 2.23238 + const tc *col = color; 2.23239 + float dy = -yc; 2.23240 + cimg_forY(*this,y) { 2.23241 + float dx = -xc; 2.23242 + cimg_forX(*this,x) { 2.23243 + const float val = (float)cimg_std::exp(a*dx*dx + b*dx*dy + c*dy*dy); 2.23244 + T *ptrd = ptr(x,y,0,0); 2.23245 + if (opacity>=1) cimg_forV(*this,k) { *ptrd = (T)(val*(*col++)); ptrd+=whz; } 2.23246 + else cimg_forV(*this,k) { *ptrd = (T)(nopacity*val*(*col++) + *ptrd*copacity); ptrd+=whz; } 2.23247 + col-=dim; 2.23248 + ++dx; 2.23249 + } 2.23250 + ++dy; 2.23251 + } 2.23252 + return *this; 2.23253 + } 2.23254 + 2.23255 + //! Draw an anisotropic 2D gaussian function. 2.23256 + template<typename t, typename tc> 2.23257 + CImg<T>& draw_gaussian(const float xc, const float yc, const CImg<t>& tensor, 2.23258 + const CImg<tc>& color, const float opacity=1) { 2.23259 + return draw_gaussian(xc,yc,tensor,color.data,opacity); 2.23260 + } 2.23261 + 2.23262 + //! Draw an anisotropic 2D gaussian function. 2.23263 + template<typename tc> 2.23264 + CImg<T>& draw_gaussian(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, 2.23265 + const tc *const color, const float opacity=1) { 2.23266 + const double 2.23267 + a = r1*ru*ru + r2*rv*rv, 2.23268 + b = (r1-r2)*ru*rv, 2.23269 + c = r1*rv*rv + r2*ru*ru; 2.23270 + const CImg<Tfloat> tensor(2,2,1,1, a,b,b,c); 2.23271 + return draw_gaussian(xc,yc,tensor,color,opacity); 2.23272 + } 2.23273 + 2.23274 + //! Draw an anisotropic 2D gaussian function. 2.23275 + template<typename tc> 2.23276 + CImg<T>& draw_gaussian(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, 2.23277 + const CImg<tc>& color, const float opacity=1) { 2.23278 + return draw_gaussian(xc,yc,r1,r2,ru,rv,color.data,opacity); 2.23279 + } 2.23280 + 2.23281 + //! Draw an isotropic 2D gaussian function. 2.23282 + /** 2.23283 + \param xc = X-coordinate of the gaussian center. 2.23284 + \param yc = Y-coordinate of the gaussian center. 2.23285 + \param sigma = standard variation of the gaussian distribution. 2.23286 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.23287 + \param opacity = opacity of the drawing. 2.23288 + **/ 2.23289 + template<typename tc> 2.23290 + CImg<T>& draw_gaussian(const float xc, const float yc, const float sigma, 2.23291 + const tc *const color, const float opacity=1) { 2.23292 + return draw_gaussian(xc,yc,CImg<floatT>::diagonal(sigma,sigma),color,opacity); 2.23293 + } 2.23294 + 2.23295 + //! Draw an isotropic 2D gaussian function. 2.23296 + template<typename tc> 2.23297 + CImg<T>& draw_gaussian(const float xc, const float yc, const float sigma, 2.23298 + const CImg<tc>& color, const float opacity=1) { 2.23299 + return draw_gaussian(xc,yc,sigma,color.data,opacity); 2.23300 + } 2.23301 + 2.23302 + //! Draw an anisotropic 3D gaussian function. 2.23303 + /** 2.23304 + \param xc = X-coordinate of the gaussian center. 2.23305 + \param yc = Y-coordinate of the gaussian center. 2.23306 + \param zc = Z-coordinate of the gaussian center. 2.23307 + \param tensor = 3x3 covariance matrix. 2.23308 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.23309 + \param opacity = opacity of the drawing. 2.23310 + **/ 2.23311 + template<typename t, typename tc> 2.23312 + CImg<T>& draw_gaussian(const float xc, const float yc, const float zc, const CImg<t>& tensor, 2.23313 + const tc *const color, const float opacity=1) { 2.23314 + if (is_empty()) return *this; 2.23315 + typedef typename cimg::superset<t,float>::type tfloat; 2.23316 + if (tensor.width!=3 || tensor.height!=3 || tensor.depth!=1 || tensor.dim!=1) 2.23317 + throw CImgArgumentException("CImg<%s>::draw_gaussian() : Tensor parameter (%u,%u,%u,%u,%p) is not a 3x3 matrix.", 2.23318 + pixel_type(),tensor.width,tensor.height,tensor.depth,tensor.dim,tensor.data); 2.23319 + const CImg<tfloat> invT = tensor.get_invert(), invT2 = (invT*invT)/(-2.0); 2.23320 + const tfloat a = invT(0,0), b = 2*invT(1,0), c = 2*invT(2,0), d = invT(1,1), e = 2*invT(2,1), f = invT(2,2); 2.23321 + const float nopacity = cimg::abs(opacity), copacity = 1 - cimg::max(opacity,0); 2.23322 + const unsigned int whz = width*height*depth; 2.23323 + const tc *col = color; 2.23324 + cimg_forXYZ(*this,x,y,z) { 2.23325 + const float 2.23326 + dx = (x - xc), dy = (y - yc), dz = (z - zc), 2.23327 + val = (float)cimg_std::exp(a*dx*dx + b*dx*dy + c*dx*dz + d*dy*dy + e*dy*dz + f*dz*dz); 2.23328 + T *ptrd = ptr(x,y,z,0); 2.23329 + if (opacity>=1) cimg_forV(*this,k) { *ptrd = (T)(val*(*col++)); ptrd+=whz; } 2.23330 + else cimg_forV(*this,k) { *ptrd = (T)(nopacity*val*(*col++) + *ptrd*copacity); ptrd+=whz; } 2.23331 + col-=dim; 2.23332 + } 2.23333 + return *this; 2.23334 + } 2.23335 + 2.23336 + //! Draw an anisotropic 3D gaussian function. 2.23337 + template<typename t, typename tc> 2.23338 + CImg<T>& draw_gaussian(const float xc, const float yc, const float zc, const CImg<t>& tensor, 2.23339 + const CImg<tc>& color, const float opacity=1) { 2.23340 + return draw_gaussian(xc,yc,zc,tensor,color.data,opacity); 2.23341 + } 2.23342 + 2.23343 + //! Draw an isotropic 3D gaussian function. 2.23344 + /** 2.23345 + \param xc = X-coordinate of the gaussian center. 2.23346 + \param yc = Y-coordinate of the gaussian center. 2.23347 + \param zc = Z-coordinate of the gaussian center. 2.23348 + \param sigma = standard variation of the gaussian distribution. 2.23349 + \param color = array of dimv() values of type \c T, defining the drawing color. 2.23350 + \param opacity = opacity of the drawing. 2.23351 + **/ 2.23352 + template<typename tc> 2.23353 + CImg<T>& draw_gaussian(const float xc, const float yc, const float zc, const float sigma, 2.23354 + const tc *const color, const float opacity=1) { 2.23355 + return draw_gaussian(xc,yc,zc,CImg<floatT>::diagonal(sigma,sigma,sigma),color,opacity); 2.23356 + } 2.23357 + 2.23358 + //! Draw an isotropic 3D gaussian function. 2.23359 + template<typename tc> 2.23360 + CImg<T>& draw_gaussian(const float xc, const float yc, const float zc, const float sigma, 2.23361 + const CImg<tc>& color, const float opacity=1) { 2.23362 + return draw_gaussian(xc,yc,zc,sigma,color.data,opacity); 2.23363 + } 2.23364 + 2.23365 + // Draw a 3D object (internal) 2.23366 + template<typename tc, typename to> 2.23367 + void _draw_object3d_sprite(const int x, const int y, 2.23368 + const CImg<tc>& color, const CImg<to>& opacity, const CImg<T>& sprite) { 2.23369 + if (opacity.width==color.width && opacity.height==color.height) 2.23370 + draw_image(x,y,sprite,opacity.get_resize(sprite.width,sprite.height,1,sprite.dim,1)); 2.23371 + else 2.23372 + draw_image(x,y,sprite,opacity(0)); 2.23373 + } 2.23374 + 2.23375 + template<typename tc> 2.23376 + void _draw_object3d_sprite(const int x, const int y, 2.23377 + const CImg<tc>& color, const float opacity, const CImg<T>& sprite) { 2.23378 + if (color) draw_image(x,y,sprite,opacity); 2.23379 + } 2.23380 + 2.23381 + template<typename tp, typename tf, typename tc, typename to> 2.23382 + CImg<T>& _draw_object3d(void *const pboard, float *const zbuffer, 2.23383 + const float X, const float Y, const float Z, 2.23384 + const tp& points, const unsigned int nb_points, 2.23385 + const CImgList<tf>& primitives, 2.23386 + const CImgList<tc>& colors, 2.23387 + const to& opacities, const unsigned int nb_opacities, 2.23388 + const unsigned int render_type, 2.23389 + const bool double_sided, const float focale, 2.23390 + const float lightx, const float lighty, const float lightz, 2.23391 + const float specular_light, const float specular_shine) { 2.23392 + if (is_empty()) return *this; 2.23393 +#ifndef cimg_use_board 2.23394 + if (pboard) return *this; 2.23395 +#endif 2.23396 + const float 2.23397 + nspec = 1-(specular_light<0?0:(specular_light>1?1:specular_light)), 2.23398 + nspec2 = 1+(specular_shine<0?0:specular_shine), 2.23399 + nsl1 = (nspec2-1)/cimg::sqr(nspec-1), 2.23400 + nsl2 = (1-2*nsl1*nspec), 2.23401 + nsl3 = nspec2-nsl1-nsl2; 2.23402 + 2.23403 + // Create light texture for phong-like rendering 2.23404 + static CImg<floatT> light_texture; 2.23405 + if (render_type==5) { 2.23406 + if (colors.size>primitives.size) light_texture.assign(colors[primitives.size])/=255; 2.23407 + else { 2.23408 + static float olightx = 0, olighty = 0, olightz = 0, ospecular_shine = 0; 2.23409 + if (!light_texture || lightx!=olightx || lighty!=olighty || lightz!=olightz || specular_shine!=ospecular_shine) { 2.23410 + light_texture.assign(512,512); 2.23411 + const float white[] = { 1 }, 2.23412 + dlx = lightx-X, dly = lighty-Y, dlz = lightz-Z, 2.23413 + nl = (float)cimg_std::sqrt(dlx*dlx+dly*dly+dlz*dlz), 2.23414 + nlx = light_texture.width/2*(1+dlx/nl), 2.23415 + nly = light_texture.height/2*(1+dly/nl); 2.23416 + light_texture.draw_gaussian(nlx,nly,light_texture.width/3.0f,white); 2.23417 + cimg_forXY(light_texture,x,y) { 2.23418 + const float factor = light_texture(x,y); 2.23419 + if (factor>nspec) light_texture(x,y) = cimg::min(2,nsl1*factor*factor+nsl2*factor+nsl3); 2.23420 + } 2.23421 + olightx = lightx; olighty = lighty; olightz = lightz; ospecular_shine = specular_shine; 2.23422 + } 2.23423 + } 2.23424 + } 2.23425 + 2.23426 + // Compute 3D to 2D projection 2.23427 + CImg<floatT> projections(nb_points,2); 2.23428 + cimg_forX(projections,l) { 2.23429 + const float 2.23430 + x = (float)points(l,0), 2.23431 + y = (float)points(l,1), 2.23432 + z = (float)points(l,2); 2.23433 + const float projectedz = z + Z + focale; 2.23434 + projections(l,1) = Y + focale*y/projectedz; 2.23435 + projections(l,0) = X + focale*x/projectedz; 2.23436 + } 2.23437 + 2.23438 + // Compute and sort visible primitives 2.23439 + CImg<uintT> visibles(primitives.size); 2.23440 + CImg<floatT> zrange(primitives.size); 2.23441 + unsigned int nb_visibles = 0; 2.23442 + const float zmin = -focale+1.5f; 2.23443 + { cimglist_for(primitives,l) { 2.23444 + const CImg<tf>& primitive = primitives[l]; 2.23445 + switch (primitive.size()) { 2.23446 + 2.23447 + case 1 : { // Point 2.23448 + const unsigned int i0 = (unsigned int)primitive(0); 2.23449 + const float x0 = projections(i0,0), y0 = projections(i0,1), z0 = (float)(Z+points(i0,2)); 2.23450 + if (z0>zmin && x0>=0 && x0<width && y0>=0 && y0<height) { 2.23451 + visibles(nb_visibles) = (unsigned int)l; 2.23452 + zrange(nb_visibles++) = z0; 2.23453 + } 2.23454 + } break; 2.23455 + case 5 : { // Sphere 2.23456 + const unsigned int 2.23457 + i0 = (unsigned int)primitive(0), 2.23458 + i1 = (unsigned int)primitive(1), 2.23459 + i2 = (unsigned int)primitive(2); 2.23460 + const float x0 = projections(i0,0), y0 = projections(i0,1), z0 = (float)(Z+points(i0,2)); 2.23461 + int radius; 2.23462 + if (i2) radius = (int)(i2*focale/(z0+focale)); 2.23463 + else { 2.23464 + const float x1 = projections(i1,0), y1 = projections(i1,1); 2.23465 + const int deltax = (int)(x1-x0), deltay = (int)(y1-y0); 2.23466 + radius = (int)cimg_std::sqrt((float)(deltax*deltax + deltay*deltay)); 2.23467 + } 2.23468 + if (z0>zmin && x0+radius>=0 && x0-radius<width && y0+radius>=0 && y0-radius<height) { 2.23469 + visibles(nb_visibles) = (unsigned int)l; 2.23470 + zrange(nb_visibles++) = z0; 2.23471 + } 2.23472 + } break; 2.23473 + case 2 : // Line 2.23474 + case 6 : { 2.23475 + const unsigned int 2.23476 + i0 = (unsigned int)primitive(0), 2.23477 + i1 = (unsigned int)primitive(1); 2.23478 + const float 2.23479 + x0 = projections(i0,0), y0 = projections(i0,1), z0 = (float)(Z+points(i0,2)), 2.23480 + x1 = projections(i1,0), y1 = projections(i1,1), z1 = (float)(Z+points(i1,2)); 2.23481 + float xm, xM, ym, yM; 2.23482 + if (x0<x1) { xm = x0; xM = x1; } else { xm = x1; xM = x0; } 2.23483 + if (y0<y1) { ym = y0; yM = y1; } else { ym = y1; yM = y0; } 2.23484 + if (z0>zmin && z1>zmin && xM>=0 && xm<width && yM>=0 && ym<height) { 2.23485 + visibles(nb_visibles) = (unsigned int)l; 2.23486 + zrange(nb_visibles++) = 0.5f*(z0+z1); 2.23487 + } 2.23488 + } break; 2.23489 + case 3 : // Triangle 2.23490 + case 9 : { 2.23491 + const unsigned int 2.23492 + i0 = (unsigned int)primitive(0), 2.23493 + i1 = (unsigned int)primitive(1), 2.23494 + i2 = (unsigned int)primitive(2); 2.23495 + const float 2.23496 + x0 = projections(i0,0), y0 = projections(i0,1), z0 = (float)(Z+points(i0,2)), 2.23497 + x1 = projections(i1,0), y1 = projections(i1,1), z1 = (float)(Z+points(i1,2)), 2.23498 + x2 = projections(i2,0), y2 = projections(i2,1), z2 = (float)(Z+points(i2,2)); 2.23499 + float xm, xM, ym, yM; 2.23500 + if (x0<x1) { xm = x0; xM = x1; } else { xm = x1; xM = x0; } 2.23501 + if (x2<xm) xm = x2; 2.23502 + if (x2>xM) xM = x2; 2.23503 + if (y0<y1) { ym = y0; yM = y1; } else { ym = y1; yM = y0; } 2.23504 + if (y2<ym) ym = y2; 2.23505 + if (y2>yM) yM = y2; 2.23506 + if (z0>zmin && z1>zmin && z2>zmin && xM>=0 && xm<width && yM>=0 && ym<height) { 2.23507 + const float d = (x1-x0)*(y2-y0)-(x2-x0)*(y1-y0); 2.23508 + if (double_sided || d<0) { 2.23509 + visibles(nb_visibles) = (unsigned int)l; 2.23510 + zrange(nb_visibles++) = (z0+z1+z2)/3; 2.23511 + } 2.23512 + } 2.23513 + } break; 2.23514 + case 4 : // Rectangle 2.23515 + case 12 : { 2.23516 + const unsigned int 2.23517 + i0 = (unsigned int)primitive(0), 2.23518 + i1 = (unsigned int)primitive(1), 2.23519 + i2 = (unsigned int)primitive(2), 2.23520 + i3 = (unsigned int)primitive(3); 2.23521 + const float 2.23522 + x0 = projections(i0,0), y0 = projections(i0,1), z0 = (float)(Z+points(i0,2)), 2.23523 + x1 = projections(i1,0), y1 = projections(i1,1), z1 = (float)(Z+points(i1,2)), 2.23524 + x2 = projections(i2,0), y2 = projections(i2,1), z2 = (float)(Z+points(i2,2)), 2.23525 + x3 = projections(i3,0), y3 = projections(i3,1), z3 = (float)(Z+points(i3,2)); 2.23526 + float xm, xM, ym, yM; 2.23527 + if (x0<x1) { xm = x0; xM = x1; } else { xm = x1; xM = x0; } 2.23528 + if (x2<xm) xm = x2; 2.23529 + if (x2>xM) xM = x2; 2.23530 + if (x3<xm) xm = x3; 2.23531 + if (x3>xM) xM = x3; 2.23532 + if (y0<y1) { ym = y0; yM = y1; } else { ym = y1; yM = y0; } 2.23533 + if (y2<ym) ym = y2; 2.23534 + if (y2>yM) yM = y2; 2.23535 + if (y3<ym) ym = y3; 2.23536 + if (y3>yM) yM = y3; 2.23537 + if (z0>zmin && z1>zmin && z2>zmin && z3>zmin && xM>=0 && xm<width && yM>=0 && ym<height) { 2.23538 + const float d = (x1 - x0)*(y2 - y0) - (x2 - x0)*(y1 - y0); 2.23539 + if (double_sided || d<0) { 2.23540 + visibles(nb_visibles) = (unsigned int)l; 2.23541 + zrange(nb_visibles++) = (z0 + z1 + z2 + z3)/4; 2.23542 + } 2.23543 + } 2.23544 + } break; 2.23545 + default : 2.23546 + throw CImgArgumentException("CImg<%s>::draw_object3d() : Primitive %u is invalid (size = %u, can be 1,2,3,4,5,6,9 or 12)", 2.23547 + pixel_type(),l,primitive.size()); 2.23548 + }} 2.23549 + } 2.23550 + if (nb_visibles<=0) return *this; 2.23551 + CImg<uintT> permutations; 2.23552 + CImg<floatT>(zrange.data,nb_visibles,1,1,1,true).sort(permutations,false); 2.23553 + 2.23554 + // Compute light properties 2.23555 + CImg<floatT> lightprops; 2.23556 + switch (render_type) { 2.23557 + case 3 : { // Flat Shading 2.23558 + lightprops.assign(nb_visibles); 2.23559 + cimg_forX(lightprops,l) { 2.23560 + const CImg<tf>& primitive = primitives(visibles(permutations(l))); 2.23561 + const unsigned int psize = primitive.size(); 2.23562 + if (psize==3 || psize==4 || psize==9 || psize==12) { 2.23563 + const unsigned int 2.23564 + i0 = (unsigned int)primitive(0), 2.23565 + i1 = (unsigned int)primitive(1), 2.23566 + i2 = (unsigned int)primitive(2); 2.23567 + const float 2.23568 + x0 = (float)points(i0,0), y0 = (float)points(i0,1), z0 = (float)points(i0,2), 2.23569 + x1 = (float)points(i1,0), y1 = (float)points(i1,1), z1 = (float)points(i1,2), 2.23570 + x2 = (float)points(i2,0), y2 = (float)points(i2,1), z2 = (float)points(i2,2), 2.23571 + dx1 = x1 - x0, dy1 = y1 - y0, dz1 = z1 - z0, 2.23572 + dx2 = x2 - x0, dy2 = y2 - y0, dz2 = z2 - z0, 2.23573 + nx = dy1*dz2 - dz1*dy2, 2.23574 + ny = dz1*dx2 - dx1*dz2, 2.23575 + nz = dx1*dy2 - dy1*dx2, 2.23576 + norm = (float)cimg_std::sqrt(1e-5f + nx*nx + ny*ny + nz*nz), 2.23577 + lx = X + (x0 + x1 + x2)/3 - lightx, 2.23578 + ly = Y + (y0 + y1 + y2)/3 - lighty, 2.23579 + lz = Z + (z0 + z1 + z2)/3 - lightz, 2.23580 + nl = (float)cimg_std::sqrt(1e-5f + lx*lx + ly*ly + lz*lz), 2.23581 + factor = cimg::max(cimg::abs(-lx*nx-ly*ny-lz*nz)/(norm*nl),0); 2.23582 + lightprops[l] = factor<=nspec?factor:(nsl1*factor*factor + nsl2*factor + nsl3); 2.23583 + } else lightprops[l] = 1; 2.23584 + } 2.23585 + } break; 2.23586 + 2.23587 + case 4 : // Gouraud Shading 2.23588 + case 5 : { // Phong-Shading 2.23589 + CImg<floatT> points_normals(nb_points,3,1,1,0); 2.23590 + for (unsigned int l=0; l<nb_visibles; ++l) { 2.23591 + const CImg<tf>& primitive = primitives[visibles(l)]; 2.23592 + const unsigned int psize = primitive.size(); 2.23593 + const bool 2.23594 + triangle_flag = (psize==3) || (psize==9), 2.23595 + rectangle_flag = (psize==4) || (psize==12); 2.23596 + if (triangle_flag || rectangle_flag) { 2.23597 + const unsigned int 2.23598 + i0 = (unsigned int)primitive(0), 2.23599 + i1 = (unsigned int)primitive(1), 2.23600 + i2 = (unsigned int)primitive(2), 2.23601 + i3 = rectangle_flag?(unsigned int)primitive(3):0; 2.23602 + const float 2.23603 + x0 = (float)points(i0,0), y0 = (float)points(i0,1), z0 = (float)points(i0,2), 2.23604 + x1 = (float)points(i1,0), y1 = (float)points(i1,1), z1 = (float)points(i1,2), 2.23605 + x2 = (float)points(i2,0), y2 = (float)points(i2,1), z2 = (float)points(i2,2), 2.23606 + dx1 = x1 - x0, dy1 = y1 - y0, dz1 = z1 - z0, 2.23607 + dx2 = x2 - x0, dy2 = y2 - y0, dz2 = z2 - z0, 2.23608 + nnx = dy1*dz2 - dz1*dy2, 2.23609 + nny = dz1*dx2 - dx1*dz2, 2.23610 + nnz = dx1*dy2 - dy1*dx2, 2.23611 + norm = 1e-5f + (float)cimg_std::sqrt(nnx*nnx + nny*nny + nnz*nnz), 2.23612 + nx = nnx/norm, 2.23613 + ny = nny/norm, 2.23614 + nz = nnz/norm; 2.23615 + points_normals(i0,0)+=nx; points_normals(i0,1)+=ny; points_normals(i0,2)+=nz; 2.23616 + points_normals(i1,0)+=nx; points_normals(i1,1)+=ny; points_normals(i1,2)+=nz; 2.23617 + points_normals(i2,0)+=nx; points_normals(i2,1)+=ny; points_normals(i2,2)+=nz; 2.23618 + if (rectangle_flag) { points_normals(i3,0)+=nx; points_normals(i3,1)+=ny; points_normals(i3,2)+=nz; } 2.23619 + } 2.23620 + } 2.23621 + 2.23622 + if (double_sided) cimg_forX(points_normals,p) if (points_normals(p,2)>0) { 2.23623 + points_normals(p,0) = -points_normals(p,0); 2.23624 + points_normals(p,1) = -points_normals(p,1); 2.23625 + points_normals(p,2) = -points_normals(p,2); 2.23626 + } 2.23627 + 2.23628 + if (render_type==4) { 2.23629 + lightprops.assign(nb_points); 2.23630 + cimg_forX(lightprops,ll) { 2.23631 + const float 2.23632 + nx = points_normals(ll,0), 2.23633 + ny = points_normals(ll,1), 2.23634 + nz = points_normals(ll,2), 2.23635 + norm = (float)cimg_std::sqrt(1e-5f + nx*nx + ny*ny + nz*nz), 2.23636 + lx = (float)(X + points(ll,0) - lightx), 2.23637 + ly = (float)(Y + points(ll,1) - lighty), 2.23638 + lz = (float)(Z + points(ll,2) - lightz), 2.23639 + nl = (float)cimg_std::sqrt(1e-5f + lx*lx + ly*ly + lz*lz), 2.23640 + factor = cimg::max((-lx*nx-ly*ny-lz*nz)/(norm*nl),0); 2.23641 + lightprops[ll] = factor<=nspec?factor:(nsl1*factor*factor + nsl2*factor + nsl3); 2.23642 + } 2.23643 + } else { 2.23644 + const unsigned int 2.23645 + lw2 = light_texture.width/2 - 1, 2.23646 + lh2 = light_texture.height/2 - 1; 2.23647 + lightprops.assign(nb_points,2); 2.23648 + cimg_forX(lightprops,ll) { 2.23649 + const float 2.23650 + nx = points_normals(ll,0), 2.23651 + ny = points_normals(ll,1), 2.23652 + nz = points_normals(ll,2), 2.23653 + norm = (float)cimg_std::sqrt(1e-5f + nx*nx + ny*ny + nz*nz), 2.23654 + nnx = nx/norm, 2.23655 + nny = ny/norm; 2.23656 + lightprops(ll,0) = lw2*(1 + nnx); 2.23657 + lightprops(ll,1) = lh2*(1 + nny); 2.23658 + } 2.23659 + } 2.23660 + } break; 2.23661 + } 2.23662 + 2.23663 + // Draw visible primitives 2.23664 + const CImg<tc> default_color(1,dim,1,1,(tc)200); 2.23665 + { for (unsigned int l = 0; l<nb_visibles; ++l) { 2.23666 + const unsigned int n_primitive = visibles(permutations(l)); 2.23667 + const CImg<tf>& primitive = primitives[n_primitive]; 2.23668 + const CImg<tc>& color = n_primitive<colors.size?colors[n_primitive]:default_color; 2.23669 + const float opac = n_primitive<nb_opacities?opacities(n_primitive,0):1.0f; 2.23670 +#ifdef cimg_use_board 2.23671 + BoardLib::Board &board = *(BoardLib::Board*)pboard; 2.23672 +#endif 2.23673 + 2.23674 + switch (primitive.size()) { 2.23675 + case 1 : { // Colored point or sprite 2.23676 + const unsigned int n0 = (unsigned int)primitive[0]; 2.23677 + const int x0 = (int)projections(n0,0), y0 = (int)projections(n0,1); 2.23678 + if (color.size()==dim) { 2.23679 + draw_point(x0,y0,color,opac); 2.23680 +#ifdef cimg_use_board 2.23681 + if (pboard) { 2.23682 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23683 + board.fillCircle((float)x0,dimy()-(float)y0,0); 2.23684 + } 2.23685 +#endif 2.23686 + } else { 2.23687 + const float z = Z + points(n0,2); 2.23688 + const int 2.23689 + factor = (int)(focale*100/(z+focale)), 2.23690 + sw = color.width*factor/200, 2.23691 + sh = color.height*factor/200; 2.23692 + if (x0+sw>=0 && x0-sw<dimx() && y0+sh>=0 && y0-sh<dimy()) { 2.23693 + const CImg<T> sprite = color.get_resize(-factor,-factor,1,-100,render_type<=3?1:3); 2.23694 + _draw_object3d_sprite(x0-sw,y0-sh,color,opacities[n_primitive%nb_opacities],sprite); 2.23695 +#ifdef cimg_use_board 2.23696 + if (pboard) { 2.23697 + board.setPenColorRGBi(128,128,128); 2.23698 + board.setFillColor(BoardLib::Color::none); 2.23699 + board.drawRectangle((float)x0-sw,dimy()-(float)y0+sh,sw,sh); 2.23700 + } 2.23701 +#endif 2.23702 + } 2.23703 + } 2.23704 + } break; 2.23705 + case 2 : { // Colored line 2.23706 + const unsigned int 2.23707 + n0 = (unsigned int)primitive[0], 2.23708 + n1 = (unsigned int)primitive[1]; 2.23709 + const int 2.23710 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.23711 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1); 2.23712 + const float 2.23713 + z0 = points(n0,2) + Z + focale, 2.23714 + z1 = points(n1,2) + Z + focale; 2.23715 + if (render_type) { 2.23716 + if (zbuffer) draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,opac); 2.23717 + else draw_line(x0,y0,x1,y1,color,opac); 2.23718 +#ifdef cimg_use_board 2.23719 + if (pboard) { 2.23720 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23721 + board.drawLine((float)x0,dimy()-(float)y0,x1,dimy()-(float)y1); 2.23722 + } 2.23723 +#endif 2.23724 + } else { 2.23725 + draw_point(x0,y0,color,opac).draw_point(x1,y1,color,opac); 2.23726 +#ifdef cimg_use_board 2.23727 + if (pboard) { 2.23728 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23729 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.23730 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.23731 + } 2.23732 +#endif 2.23733 + } 2.23734 + } break; 2.23735 + case 5 : { // Colored sphere 2.23736 + const unsigned int 2.23737 + n0 = (unsigned int)primitive[0], 2.23738 + n1 = (unsigned int)primitive[1], 2.23739 + n2 = (unsigned int)primitive[2]; 2.23740 + const int 2.23741 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1); 2.23742 + int radius; 2.23743 + if (n2) radius = (int)(n2*focale/(Z+points(n0,2)+focale)); 2.23744 + else { 2.23745 + const int 2.23746 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1), 2.23747 + deltax = x1-x0, deltay = y1-y0; 2.23748 + radius = (int)cimg_std::sqrt((float)(deltax*deltax + deltay*deltay)); 2.23749 + } 2.23750 + switch (render_type) { 2.23751 + case 0 : 2.23752 + draw_point(x0,y0,color,opac); 2.23753 +#ifdef cimg_use_board 2.23754 + if (pboard) { 2.23755 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23756 + board.fillCircle((float)x0,dimy()-(float)y0,0); 2.23757 + } 2.23758 +#endif 2.23759 + break; 2.23760 + case 1 : 2.23761 + draw_circle(x0,y0,radius,color,opac,~0U); 2.23762 +#ifdef cimg_use_board 2.23763 + if (pboard) { 2.23764 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23765 + board.setFillColor(BoardLib::Color::none); 2.23766 + board.drawCircle((float)x0,dimy()-(float)y0,(float)radius); 2.23767 + } 2.23768 +#endif 2.23769 + break; 2.23770 + default : 2.23771 + draw_circle(x0,y0,radius,color,opac); 2.23772 +#ifdef cimg_use_board 2.23773 + if (pboard) { 2.23774 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23775 + board.fillCircle((float)x0,dimy()-(float)y0,(float)radius); 2.23776 + } 2.23777 +#endif 2.23778 + break; 2.23779 + } 2.23780 + } break; 2.23781 + case 6 : { // Textured line 2.23782 + const unsigned int 2.23783 + n0 = (unsigned int)primitive[0], 2.23784 + n1 = (unsigned int)primitive[1], 2.23785 + tx0 = (unsigned int)primitive[2], 2.23786 + ty0 = (unsigned int)primitive[3], 2.23787 + tx1 = (unsigned int)primitive[4], 2.23788 + ty1 = (unsigned int)primitive[5]; 2.23789 + const int 2.23790 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.23791 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1); 2.23792 + const float 2.23793 + z0 = points(n0,2) + Z + focale, 2.23794 + z1 = points(n1,2) + Z + focale; 2.23795 + if (render_type) { 2.23796 + if (zbuffer) draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,tx0,ty0,tx1,ty1,opac); 2.23797 + else draw_line(x0,y0,x1,y1,color,tx0,ty0,tx1,ty1,opac); 2.23798 +#ifdef cimg_use_board 2.23799 + if (pboard) { 2.23800 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.23801 + board.drawLine((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1); 2.23802 + } 2.23803 +#endif 2.23804 + } else { 2.23805 + draw_point(x0,y0,color.get_vector_at(tx0,ty0),opac). 2.23806 + draw_point(x1,y1,color.get_vector_at(tx1,ty1),opac); 2.23807 +#ifdef cimg_use_board 2.23808 + if (pboard) { 2.23809 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.23810 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.23811 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.23812 + } 2.23813 +#endif 2.23814 + } 2.23815 + } break; 2.23816 + case 3 : { // Colored triangle 2.23817 + const unsigned int 2.23818 + n0 = (unsigned int)primitive[0], 2.23819 + n1 = (unsigned int)primitive[1], 2.23820 + n2 = (unsigned int)primitive[2]; 2.23821 + const int 2.23822 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.23823 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1), 2.23824 + x2 = (int)projections(n2,0), y2 = (int)projections(n2,1); 2.23825 + const float 2.23826 + z0 = points(n0,2) + Z + focale, 2.23827 + z1 = points(n1,2) + Z + focale, 2.23828 + z2 = points(n2,2) + Z + focale; 2.23829 + switch (render_type) { 2.23830 + case 0 : 2.23831 + draw_point(x0,y0,color,opac).draw_point(x1,y1,color,opac).draw_point(x2,y2,color,opac); 2.23832 +#ifdef cimg_use_board 2.23833 + if (pboard) { 2.23834 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23835 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.23836 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.23837 + board.drawCircle((float)x2,dimy()-(float)y2,0); 2.23838 + } 2.23839 +#endif 2.23840 + break; 2.23841 + case 1 : 2.23842 + if (zbuffer) 2.23843 + draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,opac).draw_line(zbuffer,x0,y0,z0,x2,y2,z2,color,opac). 2.23844 + draw_line(zbuffer,x1,y1,z1,x2,y2,z2,color,opac); 2.23845 + else 2.23846 + draw_line(x0,y0,x1,y1,color,opac).draw_line(x0,y0,x2,y2,color,opac). 2.23847 + draw_line(x1,y1,x2,y2,color,opac); 2.23848 +#ifdef cimg_use_board 2.23849 + if (pboard) { 2.23850 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23851 + board.drawLine((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1); 2.23852 + board.drawLine((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2); 2.23853 + board.drawLine((float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23854 + } 2.23855 +#endif 2.23856 + break; 2.23857 + case 2 : 2.23858 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,opac); 2.23859 + else draw_triangle(x0,y0,x1,y1,x2,y2,color,opac); 2.23860 +#ifdef cimg_use_board 2.23861 + if (pboard) { 2.23862 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23863 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23864 + } 2.23865 +#endif 2.23866 + break; 2.23867 + case 3 : 2.23868 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color.data,opac,lightprops(l)); 2.23869 + else _draw_triangle(x0,y0,x1,y1,x2,y2,color.data,opac,lightprops(l)); 2.23870 +#ifdef cimg_use_board 2.23871 + if (pboard) { 2.23872 + const float lp = cimg::min(lightprops(l),1); 2.23873 + board.setPenColorRGBi((unsigned char)(color[0]*lp), 2.23874 + (unsigned char)(color[1]*lp), 2.23875 + (unsigned char)(color[2]*lp), 2.23876 + (unsigned char)(opac*255)); 2.23877 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23878 + } 2.23879 +#endif 2.23880 + break; 2.23881 + case 4 : 2.23882 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,lightprops(n0),lightprops(n1),lightprops(n2),opac); 2.23883 + else draw_triangle(x0,y0,x1,y1,x2,y2,color,lightprops(n0),lightprops(n1),lightprops(n2),opac); 2.23884 +#ifdef cimg_use_board 2.23885 + if (pboard) { 2.23886 + board.setPenColorRGBi((unsigned char)(color[0]), 2.23887 + (unsigned char)(color[1]), 2.23888 + (unsigned char)(color[2]), 2.23889 + (unsigned char)(opac*255)); 2.23890 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprops(n0), 2.23891 + (float)x1,dimy()-(float)y1,lightprops(n1), 2.23892 + (float)x2,dimy()-(float)y2,lightprops(n2)); 2.23893 + } 2.23894 +#endif 2.23895 + break; 2.23896 + case 5 : { 2.23897 + const unsigned int 2.23898 + lx0 = (unsigned int)lightprops(n0,0), ly0 = (unsigned int)lightprops(n0,1), 2.23899 + lx1 = (unsigned int)lightprops(n1,0), ly1 = (unsigned int)lightprops(n1,1), 2.23900 + lx2 = (unsigned int)lightprops(n2,0), ly2 = (unsigned int)lightprops(n2,1); 2.23901 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac); 2.23902 + else draw_triangle(x0,y0,x1,y1,x2,y2,color,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac); 2.23903 +#ifdef cimg_use_board 2.23904 + if (pboard) { 2.23905 + const float 2.23906 + l0 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n0,0))), (int)(light_texture.dimy()/2*(1+lightprops(n0,1)))), 2.23907 + l1 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n1,0))), (int)(light_texture.dimy()/2*(1+lightprops(n1,1)))), 2.23908 + l2 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n2,0))), (int)(light_texture.dimy()/2*(1+lightprops(n2,1)))); 2.23909 + board.setPenColorRGBi((unsigned char)(color[0]), 2.23910 + (unsigned char)(color[1]), 2.23911 + (unsigned char)(color[2]), 2.23912 + (unsigned char)(opac*255)); 2.23913 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0, 2.23914 + (float)x1,dimy()-(float)y1,l1, 2.23915 + (float)x2,dimy()-(float)y2,l2); 2.23916 + } 2.23917 +#endif 2.23918 + } break; 2.23919 + } 2.23920 + } break; 2.23921 + case 4 : { // Colored rectangle 2.23922 + const unsigned int 2.23923 + n0 = (unsigned int)primitive[0], 2.23924 + n1 = (unsigned int)primitive[1], 2.23925 + n2 = (unsigned int)primitive[2], 2.23926 + n3 = (unsigned int)primitive[3]; 2.23927 + const int 2.23928 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.23929 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1), 2.23930 + x2 = (int)projections(n2,0), y2 = (int)projections(n2,1), 2.23931 + x3 = (int)projections(n3,0), y3 = (int)projections(n3,1); 2.23932 + const float 2.23933 + z0 = points(n0,2) + Z + focale, 2.23934 + z1 = points(n1,2) + Z + focale, 2.23935 + z2 = points(n2,2) + Z + focale, 2.23936 + z3 = points(n3,2) + Z + focale; 2.23937 + switch (render_type) { 2.23938 + case 0 : 2.23939 + draw_point(x0,y0,color,opac).draw_point(x1,y1,color,opac). 2.23940 + draw_point(x2,y2,color,opac).draw_point(x3,y3,color,opac); 2.23941 +#ifdef cimg_use_board 2.23942 + if (pboard) { 2.23943 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23944 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.23945 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.23946 + board.drawCircle((float)x2,dimy()-(float)y2,0); 2.23947 + board.drawCircle((float)x3,dimy()-(float)y3,0); 2.23948 + } 2.23949 +#endif 2.23950 + break; 2.23951 + case 1 : 2.23952 + if (zbuffer) 2.23953 + draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,opac).draw_line(zbuffer,x1,y1,z1,x2,y2,z2,color,opac). 2.23954 + draw_line(zbuffer,x2,y2,z2,x3,y3,z3,color,opac).draw_line(zbuffer,x3,y3,z3,x0,y0,z0,color,opac); 2.23955 + else 2.23956 + draw_line(x0,y0,x1,y1,color,opac).draw_line(x1,y1,x2,y2,color,opac). 2.23957 + draw_line(x2,y2,x3,y3,color,opac).draw_line(x3,y3,x0,y0,color,opac); 2.23958 +#ifdef cimg_use_board 2.23959 + if (pboard) { 2.23960 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23961 + board.drawLine((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1); 2.23962 + board.drawLine((float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23963 + board.drawLine((float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.23964 + board.drawLine((float)x3,dimy()-(float)y3,(float)x0,dimy()-(float)y0); 2.23965 + } 2.23966 +#endif 2.23967 + break; 2.23968 + case 2 : 2.23969 + if (zbuffer) 2.23970 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,opac).draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,opac); 2.23971 + else 2.23972 + draw_triangle(x0,y0,x1,y1,x2,y2,color,opac).draw_triangle(x0,y0,x2,y2,x3,y3,color,opac); 2.23973 +#ifdef cimg_use_board 2.23974 + if (pboard) { 2.23975 + board.setPenColorRGBi(color[0],color[1],color[2],(unsigned char)(opac*255)); 2.23976 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23977 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.23978 + } 2.23979 +#endif 2.23980 + break; 2.23981 + case 3 : 2.23982 + if (zbuffer) 2.23983 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color.data,opac,lightprops(l)). 2.23984 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color.data,opac,lightprops(l)); 2.23985 + else 2.23986 + _draw_triangle(x0,y0,x1,y1,x2,y2,color.data,opac,lightprops(l)). 2.23987 + _draw_triangle(x0,y0,x2,y2,x3,y3,color.data,opac,lightprops(l)); 2.23988 +#ifdef cimg_use_board 2.23989 + if (pboard) { 2.23990 + const float lp = cimg::min(lightprops(l),1); 2.23991 + board.setPenColorRGBi((unsigned char)(color[0]*lp), 2.23992 + (unsigned char)(color[1]*lp), 2.23993 + (unsigned char)(color[2]*lp),(unsigned char)(opac*255)); 2.23994 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.23995 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.23996 + } 2.23997 +#endif 2.23998 + break; 2.23999 + case 4 : { 2.24000 + const float 2.24001 + lightprop0 = lightprops(n0), lightprop1 = lightprops(n1), 2.24002 + lightprop2 = lightprops(n2), lightprop3 = lightprops(n3); 2.24003 + if (zbuffer) 2.24004 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,lightprop0,lightprop1,lightprop2,opac). 2.24005 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,lightprop0,lightprop2,lightprop3,opac); 2.24006 + else 2.24007 + draw_triangle(x0,y0,x1,y1,x2,y2,color,lightprop0,lightprop1,lightprop2,opac). 2.24008 + draw_triangle(x0,y0,x2,y2,x3,y3,color,lightprop0,lightprop2,lightprop3,opac); 2.24009 +#ifdef cimg_use_board 2.24010 + if (pboard) { 2.24011 + board.setPenColorRGBi((unsigned char)(color[0]), 2.24012 + (unsigned char)(color[1]), 2.24013 + (unsigned char)(color[2]), 2.24014 + (unsigned char)(opac*255)); 2.24015 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprop0, 2.24016 + (float)x1,dimy()-(float)y1,lightprop1, 2.24017 + (float)x2,dimy()-(float)y2,lightprop2); 2.24018 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprop0, 2.24019 + (float)x2,dimy()-(float)y2,lightprop2, 2.24020 + (float)x3,dimy()-(float)y3,lightprop3); 2.24021 + } 2.24022 +#endif 2.24023 + } break; 2.24024 + case 5 : { 2.24025 + const unsigned int 2.24026 + lx0 = (unsigned int)lightprops(n0,0), ly0 = (unsigned int)lightprops(n0,1), 2.24027 + lx1 = (unsigned int)lightprops(n1,0), ly1 = (unsigned int)lightprops(n1,1), 2.24028 + lx2 = (unsigned int)lightprops(n2,0), ly2 = (unsigned int)lightprops(n2,1), 2.24029 + lx3 = (unsigned int)lightprops(n3,0), ly3 = (unsigned int)lightprops(n3,1); 2.24030 + if (zbuffer) 2.24031 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac). 2.24032 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,light_texture,lx0,ly0,lx2,ly2,lx3,ly3,opac); 2.24033 + else 2.24034 + draw_triangle(x0,y0,x1,y1,x2,y2,color,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac). 2.24035 + draw_triangle(x0,y0,x2,y2,x3,y3,color,light_texture,lx0,ly0,lx2,ly2,lx3,ly3,opac); 2.24036 +#ifdef cimg_use_board 2.24037 + if (pboard) { 2.24038 + const float 2.24039 + l0 = light_texture((int)(light_texture.dimx()/2*(1+lx0)), (int)(light_texture.dimy()/2*(1+ly0))), 2.24040 + l1 = light_texture((int)(light_texture.dimx()/2*(1+lx1)), (int)(light_texture.dimy()/2*(1+ly1))), 2.24041 + l2 = light_texture((int)(light_texture.dimx()/2*(1+lx2)), (int)(light_texture.dimy()/2*(1+ly2))), 2.24042 + l3 = light_texture((int)(light_texture.dimx()/2*(1+lx3)), (int)(light_texture.dimy()/2*(1+ly3))); 2.24043 + board.setPenColorRGBi((unsigned char)(color[0]), 2.24044 + (unsigned char)(color[1]), 2.24045 + (unsigned char)(color[2]), 2.24046 + (unsigned char)(opac*255)); 2.24047 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0, 2.24048 + (float)x1,dimy()-(float)y1,l1, 2.24049 + (float)x2,dimy()-(float)y2,l2); 2.24050 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0, 2.24051 + (float)x2,dimy()-(float)y2,l2, 2.24052 + (float)x3,dimy()-(float)y3,l3); 2.24053 + } 2.24054 +#endif 2.24055 + } break; 2.24056 + } 2.24057 + } break; 2.24058 + case 9 : { // Textured triangle 2.24059 + const unsigned int 2.24060 + n0 = (unsigned int)primitive[0], 2.24061 + n1 = (unsigned int)primitive[1], 2.24062 + n2 = (unsigned int)primitive[2], 2.24063 + tx0 = (unsigned int)primitive[3], 2.24064 + ty0 = (unsigned int)primitive[4], 2.24065 + tx1 = (unsigned int)primitive[5], 2.24066 + ty1 = (unsigned int)primitive[6], 2.24067 + tx2 = (unsigned int)primitive[7], 2.24068 + ty2 = (unsigned int)primitive[8]; 2.24069 + const int 2.24070 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.24071 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1), 2.24072 + x2 = (int)projections(n2,0), y2 = (int)projections(n2,1); 2.24073 + const float 2.24074 + z0 = points(n0,2) + Z + focale, 2.24075 + z1 = points(n1,2) + Z + focale, 2.24076 + z2 = points(n2,2) + Z + focale; 2.24077 + switch (render_type) { 2.24078 + case 0 : 2.24079 + draw_point(x0,y0,color.get_vector_at(tx0,ty0),opac). 2.24080 + draw_point(x1,y1,color.get_vector_at(tx1,ty1),opac). 2.24081 + draw_point(x2,y2,color.get_vector_at(tx2,ty2),opac); 2.24082 +#ifdef cimg_use_board 2.24083 + if (pboard) { 2.24084 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24085 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.24086 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.24087 + board.drawCircle((float)x2,dimy()-(float)y2,0); 2.24088 + } 2.24089 +#endif 2.24090 + break; 2.24091 + case 1 : 2.24092 + if (zbuffer) 2.24093 + draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,tx0,ty0,tx1,ty1,opac). 2.24094 + draw_line(zbuffer,x0,y0,z0,x2,y2,z2,color,tx0,ty0,tx2,ty2,opac). 2.24095 + draw_line(zbuffer,x1,y1,z1,x2,y2,z2,color,tx1,ty1,tx2,ty2,opac); 2.24096 + else 2.24097 + draw_line(x0,y0,z0,x1,y1,z1,color,tx0,ty0,tx1,ty1,opac). 2.24098 + draw_line(x0,y0,z0,x2,y2,z2,color,tx0,ty0,tx2,ty2,opac). 2.24099 + draw_line(x1,y1,z1,x2,y2,z2,color,tx1,ty1,tx2,ty2,opac); 2.24100 +#ifdef cimg_use_board 2.24101 + if (pboard) { 2.24102 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24103 + board.drawLine((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1); 2.24104 + board.drawLine((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2); 2.24105 + board.drawLine((float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24106 + } 2.24107 +#endif 2.24108 + break; 2.24109 + case 2 : 2.24110 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac); 2.24111 + else draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac); 2.24112 +#ifdef cimg_use_board 2.24113 + if (pboard) { 2.24114 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24115 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24116 + } 2.24117 +#endif 2.24118 + break; 2.24119 + case 3 : 2.24120 + if (zbuffer) draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac,lightprops(l)); 2.24121 + else draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac,lightprops(l)); 2.24122 +#ifdef cimg_use_board 2.24123 + if (pboard) { 2.24124 + const float lp = cimg::min(lightprops(l),1); 2.24125 + board.setPenColorRGBi((unsigned char)(128*lp), 2.24126 + (unsigned char)(128*lp), 2.24127 + (unsigned char)(128*lp), 2.24128 + (unsigned char)(opac*255)); 2.24129 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24130 + } 2.24131 +#endif 2.24132 + break; 2.24133 + case 4 : 2.24134 + if (zbuffer) 2.24135 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,lightprops(n0),lightprops(n1),lightprops(n2),opac); 2.24136 + else 2.24137 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,lightprops(n0),lightprops(n1),lightprops(n2),opac); 2.24138 +#ifdef cimg_use_board 2.24139 + if (pboard) { 2.24140 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24141 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprops(n0), 2.24142 + (float)x1,dimy()-(float)y1,lightprops(n1), 2.24143 + (float)x2,dimy()-(float)y2,lightprops(n2)); 2.24144 + } 2.24145 +#endif 2.24146 + break; 2.24147 + case 5 : 2.24148 + if (zbuffer) 2.24149 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,light_texture, 2.24150 + (unsigned int)lightprops(n0,0), (unsigned int)lightprops(n0,1), 2.24151 + (unsigned int)lightprops(n1,0), (unsigned int)lightprops(n1,1), 2.24152 + (unsigned int)lightprops(n2,0), (unsigned int)lightprops(n2,1), 2.24153 + opac); 2.24154 + else 2.24155 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,light_texture, 2.24156 + (unsigned int)lightprops(n0,0), (unsigned int)lightprops(n0,1), 2.24157 + (unsigned int)lightprops(n1,0), (unsigned int)lightprops(n1,1), 2.24158 + (unsigned int)lightprops(n2,0), (unsigned int)lightprops(n2,1), 2.24159 + opac); 2.24160 +#ifdef cimg_use_board 2.24161 + if (pboard) { 2.24162 + const float 2.24163 + l0 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n0,0))), (int)(light_texture.dimy()/2*(1+lightprops(n0,1)))), 2.24164 + l1 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n1,0))), (int)(light_texture.dimy()/2*(1+lightprops(n1,1)))), 2.24165 + l2 = light_texture((int)(light_texture.dimx()/2*(1+lightprops(n2,0))), (int)(light_texture.dimy()/2*(1+lightprops(n2,1)))); 2.24166 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24167 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0,(float)x1,dimy()-(float)y1,l1,(float)x2,dimy()-(float)y2,l2); 2.24168 + } 2.24169 +#endif 2.24170 + break; 2.24171 + } 2.24172 + } break; 2.24173 + case 12 : { // Textured rectangle 2.24174 + const unsigned int 2.24175 + n0 = (unsigned int)primitive[0], 2.24176 + n1 = (unsigned int)primitive[1], 2.24177 + n2 = (unsigned int)primitive[2], 2.24178 + n3 = (unsigned int)primitive[3], 2.24179 + tx0 = (unsigned int)primitive[4], 2.24180 + ty0 = (unsigned int)primitive[5], 2.24181 + tx1 = (unsigned int)primitive[6], 2.24182 + ty1 = (unsigned int)primitive[7], 2.24183 + tx2 = (unsigned int)primitive[8], 2.24184 + ty2 = (unsigned int)primitive[9], 2.24185 + tx3 = (unsigned int)primitive[10], 2.24186 + ty3 = (unsigned int)primitive[11]; 2.24187 + const int 2.24188 + x0 = (int)projections(n0,0), y0 = (int)projections(n0,1), 2.24189 + x1 = (int)projections(n1,0), y1 = (int)projections(n1,1), 2.24190 + x2 = (int)projections(n2,0), y2 = (int)projections(n2,1), 2.24191 + x3 = (int)projections(n3,0), y3 = (int)projections(n3,1); 2.24192 + const float 2.24193 + z0 = points(n0,2) + Z + focale, 2.24194 + z1 = points(n1,2) + Z + focale, 2.24195 + z2 = points(n2,2) + Z + focale, 2.24196 + z3 = points(n3,2) + Z + focale; 2.24197 + switch (render_type) { 2.24198 + case 0 : 2.24199 + draw_point(x0,y0,color.get_vector_at(tx0,ty0),opac). 2.24200 + draw_point(x1,y1,color.get_vector_at(tx1,ty1),opac). 2.24201 + draw_point(x2,y2,color.get_vector_at(tx2,ty2),opac). 2.24202 + draw_point(x3,y3,color.get_vector_at(tx3,ty3),opac); 2.24203 +#ifdef cimg_use_board 2.24204 + if (pboard) { 2.24205 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24206 + board.drawCircle((float)x0,dimy()-(float)y0,0); 2.24207 + board.drawCircle((float)x1,dimy()-(float)y1,0); 2.24208 + board.drawCircle((float)x2,dimy()-(float)y2,0); 2.24209 + board.drawCircle((float)x3,dimy()-(float)y3,0); 2.24210 + } 2.24211 +#endif 2.24212 + break; 2.24213 + case 1 : 2.24214 + if (zbuffer) 2.24215 + draw_line(zbuffer,x0,y0,z0,x1,y1,z1,color,tx0,ty0,tx1,ty1,opac). 2.24216 + draw_line(zbuffer,x1,y1,z1,x2,y2,z2,color,tx1,ty1,tx2,ty2,opac). 2.24217 + draw_line(zbuffer,x2,y2,z2,x3,y3,z3,color,tx2,ty2,tx3,ty3,opac). 2.24218 + draw_line(zbuffer,x3,y3,z3,x0,y0,z0,color,tx3,ty3,tx0,ty0,opac); 2.24219 + else 2.24220 + draw_line(x0,y0,z0,x1,y1,z1,color,tx0,ty0,tx1,ty1,opac). 2.24221 + draw_line(x1,y1,z1,x2,y2,z2,color,tx1,ty1,tx2,ty2,opac). 2.24222 + draw_line(x2,y2,z2,x3,y3,z3,color,tx2,ty2,tx3,ty3,opac). 2.24223 + draw_line(x3,y3,z3,x0,y0,z0,color,tx3,ty3,tx0,ty0,opac); 2.24224 +#ifdef cimg_use_board 2.24225 + if (pboard) { 2.24226 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24227 + board.drawLine((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1); 2.24228 + board.drawLine((float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24229 + board.drawLine((float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.24230 + board.drawLine((float)x3,dimy()-(float)y3,(float)x0,dimy()-(float)y0); 2.24231 + } 2.24232 +#endif 2.24233 + break; 2.24234 + case 2 : 2.24235 + if (zbuffer) 2.24236 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac). 2.24237 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,opac); 2.24238 + else 2.24239 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac). 2.24240 + draw_triangle(x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,opac); 2.24241 +#ifdef cimg_use_board 2.24242 + if (pboard) { 2.24243 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24244 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24245 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.24246 + } 2.24247 +#endif 2.24248 + break; 2.24249 + case 3 : 2.24250 + if (zbuffer) 2.24251 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac,lightprops(l)). 2.24252 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,opac,lightprops(l)); 2.24253 + else 2.24254 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,opac,lightprops(l)). 2.24255 + draw_triangle(x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,opac,lightprops(l)); 2.24256 +#ifdef cimg_use_board 2.24257 + if (pboard) { 2.24258 + const float lp = cimg::min(lightprops(l),1); 2.24259 + board.setPenColorRGBi((unsigned char)(128*lp), 2.24260 + (unsigned char)(128*lp), 2.24261 + (unsigned char)(128*lp), 2.24262 + (unsigned char)(opac*255)); 2.24263 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x1,dimy()-(float)y1,(float)x2,dimy()-(float)y2); 2.24264 + board.fillTriangle((float)x0,dimy()-(float)y0,(float)x2,dimy()-(float)y2,(float)x3,dimy()-(float)y3); 2.24265 + } 2.24266 +#endif 2.24267 + break; 2.24268 + case 4 : { 2.24269 + const float 2.24270 + lightprop0 = lightprops(n0), lightprop1 = lightprops(n1), 2.24271 + lightprop2 = lightprops(n2), lightprop3 = lightprops(n3); 2.24272 + if (zbuffer) 2.24273 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,lightprop0,lightprop1,lightprop2,opac). 2.24274 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,lightprop0,lightprop2,lightprop3,opac); 2.24275 + else 2.24276 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,lightprop0,lightprop1,lightprop2,opac). 2.24277 + draw_triangle(x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,lightprop0,lightprop2,lightprop3,opac); 2.24278 +#ifdef cimg_use_board 2.24279 + if (pboard) { 2.24280 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24281 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprop0, 2.24282 + (float)x1,dimy()-(float)y1,lightprop1, 2.24283 + (float)x2,dimy()-(float)y2,lightprop2); 2.24284 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,lightprop0, 2.24285 + (float)x2,dimy()-(float)y2,lightprop2, 2.24286 + (float)x3,dimy()-(float)y3,lightprop3); 2.24287 + } 2.24288 +#endif 2.24289 + } break; 2.24290 + case 5 : { 2.24291 + const unsigned int 2.24292 + lx0 = (unsigned int)lightprops(n0,0), ly0 = (unsigned int)lightprops(n0,1), 2.24293 + lx1 = (unsigned int)lightprops(n1,0), ly1 = (unsigned int)lightprops(n1,1), 2.24294 + lx2 = (unsigned int)lightprops(n2,0), ly2 = (unsigned int)lightprops(n2,1), 2.24295 + lx3 = (unsigned int)lightprops(n3,0), ly3 = (unsigned int)lightprops(n3,1); 2.24296 + if (zbuffer) 2.24297 + draw_triangle(zbuffer,x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac). 2.24298 + draw_triangle(zbuffer,x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,light_texture,lx0,ly0,lx2,ly2,lx3,ly3,opac); 2.24299 + else 2.24300 + draw_triangle(x0,y0,z0,x1,y1,z1,x2,y2,z2,color,tx0,ty0,tx1,ty1,tx2,ty2,light_texture,lx0,ly0,lx1,ly1,lx2,ly2,opac). 2.24301 + draw_triangle(x0,y0,z0,x2,y2,z2,x3,y3,z3,color,tx0,ty0,tx2,ty2,tx3,ty3,light_texture,lx0,ly0,lx2,ly2,lx3,ly3,opac); 2.24302 +#ifdef cimg_use_board 2.24303 + if (pboard) { 2.24304 + const float 2.24305 + l0 = light_texture((int)(light_texture.dimx()/2*(1+lx0)), (int)(light_texture.dimy()/2*(1+ly0))), 2.24306 + l1 = light_texture((int)(light_texture.dimx()/2*(1+lx1)), (int)(light_texture.dimy()/2*(1+ly1))), 2.24307 + l2 = light_texture((int)(light_texture.dimx()/2*(1+lx2)), (int)(light_texture.dimy()/2*(1+ly2))), 2.24308 + l3 = light_texture((int)(light_texture.dimx()/2*(1+lx3)), (int)(light_texture.dimy()/2*(1+ly3))); 2.24309 + board.setPenColorRGBi(128,128,128,(unsigned char)(opac*255)); 2.24310 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0, 2.24311 + (float)x1,dimy()-(float)y1,l1, 2.24312 + (float)x2,dimy()-(float)y2,l2); 2.24313 + board.fillGouraudTriangle((float)x0,dimy()-(float)y0,l0, 2.24314 + (float)x2,dimy()-(float)y2,l2, 2.24315 + (float)x3,dimy()-(float)y3,l3); 2.24316 + } 2.24317 +#endif 2.24318 + } break; 2.24319 + } 2.24320 + } break; 2.24321 + } 2.24322 + } 2.24323 + } 2.24324 + return *this; 2.24325 + } 2.24326 + 2.24327 + //! Draw a 3D object. 2.24328 + /** 2.24329 + \param X = X-coordinate of the 3d object position 2.24330 + \param Y = Y-coordinate of the 3d object position 2.24331 + \param Z = Z-coordinate of the 3d object position 2.24332 + \param points = Image N*3 describing 3D point coordinates 2.24333 + \param primitives = List of P primitives 2.24334 + \param colors = List of P color (or textures) 2.24335 + \param opacities = Image of P opacities 2.24336 + \param render_type = Render type (0=Points, 1=Lines, 2=Faces (no light), 3=Faces (flat), 4=Faces(Gouraud) 2.24337 + \param double_sided = Tell if object faces have two sides or are oriented. 2.24338 + \param focale = length of the focale 2.24339 + \param lightx = X-coordinate of the light 2.24340 + \param lighty = Y-coordinate of the light 2.24341 + \param lightz = Z-coordinate of the light 2.24342 + \param specular_shine = Shininess of the object 2.24343 + **/ 2.24344 + template<typename tp, typename tf, typename tc, typename to> 2.24345 + CImg<T>& draw_object3d(const float x0, const float y0, const float z0, 2.24346 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.24347 + const CImgList<tc>& colors, const CImgList<to>& opacities, 2.24348 + const unsigned int render_type=4, 2.24349 + const bool double_sided=false, const float focale=500, 2.24350 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24351 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24352 + float *const zbuffer=0) { 2.24353 + if (!points) return *this; 2.24354 + return _draw_object3d(0,zbuffer,x0,y0,z0,points.height<3?points:points.get_resize(-100,3,1,1,0),points.width, 2.24355 + primitives,colors,opacities,opacities.size, 2.24356 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24357 + } 2.24358 + 2.24359 +#ifdef cimg_use_board 2.24360 + template<typename tp, typename tf, typename tc, typename to> 2.24361 + CImg<T>& draw_object3d(BoardLib::Board& board, 2.24362 + const float x0, const float y0, const float z0, 2.24363 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.24364 + const CImgList<tc>& colors, const CImgList<to>& opacities, 2.24365 + const unsigned int render_type=4, 2.24366 + const bool double_sided=false, const float focale=500, 2.24367 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24368 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24369 + float *const zbuffer=0) { 2.24370 + if (!points) return *this; 2.24371 + return _draw_object3d((void*)&board,zbuffer,x0,y0,z0,points.height<3?points:points.get_resize(-100,3,1,1,0),points.width, 2.24372 + primitives,colors,opacities,opacities.size, 2.24373 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24374 + } 2.24375 +#endif 2.24376 + 2.24377 + //! Draw a 3D object. 2.24378 + template<typename tp, typename tf, typename tc, typename to> 2.24379 + CImg<T>& draw_object3d(const float x0, const float y0, const float z0, 2.24380 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.24381 + const CImgList<tc>& colors, const CImgList<to>& opacities, 2.24382 + const unsigned int render_type=4, 2.24383 + const bool double_sided=false, const float focale=500, 2.24384 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24385 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24386 + float *const zbuffer=0) { 2.24387 + if (!points) return *this; 2.24388 + return _draw_object3d(0,zbuffer,x0,y0,z0,points,points.size,primitives,colors,opacities,opacities.size, 2.24389 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24390 + } 2.24391 + 2.24392 +#ifdef cimg_use_board 2.24393 + template<typename tp, typename tf, typename tc, typename to> 2.24394 + CImg<T>& draw_object3d(BoardLib::Board& board, 2.24395 + const float x0, const float y0, const float z0, 2.24396 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.24397 + const CImgList<tc>& colors, const CImgList<to>& opacities, 2.24398 + const unsigned int render_type=4, 2.24399 + const bool double_sided=false, const float focale=500, 2.24400 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24401 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24402 + float *const zbuffer=0) { 2.24403 + if (!points) return *this; 2.24404 + return _draw_object3d((void*)&board,zbuffer,x0,y0,z0,points,points.size,primitives,colors,opacities,opacities.size, 2.24405 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24406 + } 2.24407 +#endif 2.24408 + 2.24409 + //! Draw a 3D object. 2.24410 + template<typename tp, typename tf, typename tc, typename to> 2.24411 + CImg<T>& draw_object3d(const float x0, const float y0, const float z0, 2.24412 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.24413 + const CImgList<tc>& colors, const CImg<to>& opacities, 2.24414 + const unsigned int render_type=4, 2.24415 + const bool double_sided=false, const float focale=500, 2.24416 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24417 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24418 + float *const zbuffer=0) { 2.24419 + if (!points) return *this; 2.24420 + return _draw_object3d(0,zbuffer,x0,y0,z0,points.height<3?points:points.get_resize(-100,3,1,1,0),points.width, 2.24421 + primitives,colors,opacities,opacities.size(), 2.24422 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24423 + } 2.24424 + 2.24425 +#ifdef cimg_use_board 2.24426 + template<typename tp, typename tf, typename tc, typename to> 2.24427 + CImg<T>& draw_object3d(BoardLib::Board& board, 2.24428 + const float x0, const float y0, const float z0, 2.24429 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.24430 + const CImgList<tc>& colors, const CImg<to>& opacities, 2.24431 + const unsigned int render_type=4, 2.24432 + const bool double_sided=false, const float focale=500, 2.24433 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24434 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24435 + float *const zbuffer=0) { 2.24436 + if (!points) return *this; 2.24437 + return _draw_object3d((void*)&board,zbuffer,x0,y0,z0,points.height<3?points:points.get_resize(-100,3,1,1,0),points.width 2.24438 + ,primitives,colors,opacities,opacities.size(), 2.24439 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24440 + } 2.24441 +#endif 2.24442 + 2.24443 + //! Draw a 3D object. 2.24444 + template<typename tp, typename tf, typename tc, typename to> 2.24445 + CImg<T>& draw_object3d(const float x0, const float y0, const float z0, 2.24446 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.24447 + const CImgList<tc>& colors, const CImg<to>& opacities, 2.24448 + const unsigned int render_type=4, 2.24449 + const bool double_sided=false, const float focale=500, 2.24450 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24451 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24452 + float *const zbuffer=0) { 2.24453 + if (!points) return *this; 2.24454 + return _draw_object3d(0,zbuffer,x0,y0,z0,points,points.size,primitives,colors,opacities,opacities.size(), 2.24455 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24456 + } 2.24457 + 2.24458 +#ifdef cimg_use_board 2.24459 + template<typename tp, typename tf, typename tc, typename to> 2.24460 + CImg<T>& draw_object3d(BoardLib::Board& board, 2.24461 + const float x0, const float y0, const float z0, 2.24462 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.24463 + const CImgList<tc>& colors, const CImg<to>& opacities, 2.24464 + const unsigned int render_type=4, 2.24465 + const bool double_sided=false, const float focale=500, 2.24466 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24467 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24468 + float *const zbuffer=0) { 2.24469 + if (!points) return *this; 2.24470 + return _draw_object3d((void*)&board,zbuffer,x0,y0,z0,points,points.size,primitives,colors,opacities,opacities.size(), 2.24471 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine); 2.24472 + } 2.24473 +#endif 2.24474 + 2.24475 + //! Draw a 3D object. 2.24476 + template<typename tp, typename tf, typename tc> 2.24477 + CImg<T>& draw_object3d(const float x0, const float y0, const float z0, 2.24478 + const tp& points, const CImgList<tf>& primitives, 2.24479 + const CImgList<tc>& colors, 2.24480 + const unsigned int render_type=4, 2.24481 + const bool double_sided=false, const float focale=500, 2.24482 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24483 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24484 + float *const zbuffer=0) { 2.24485 + static const CImg<floatT> opacities; 2.24486 + return draw_object3d(x0,y0,z0,points,primitives,colors,opacities, 2.24487 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine,zbuffer); 2.24488 + } 2.24489 + 2.24490 +#ifdef cimg_use_board 2.24491 + template<typename tp, typename tf, typename tc, typename to> 2.24492 + CImg<T>& draw_object3d(BoardLib::Board& board, 2.24493 + const float x0, const float y0, const float z0, 2.24494 + const tp& points, const CImgList<tf>& primitives, 2.24495 + const CImgList<tc>& colors, 2.24496 + const unsigned int render_type=4, 2.24497 + const bool double_sided=false, const float focale=500, 2.24498 + const float lightx=0, const float lighty=0, const float lightz=-5000, 2.24499 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.24500 + float *const zbuffer=0) { 2.24501 + static const CImg<floatT> opacities; 2.24502 + return draw_object3d(x0,y0,z0,points,primitives,colors,opacities, 2.24503 + render_type,double_sided,focale,lightx,lighty,lightz,specular_light,specular_shine,zbuffer); 2.24504 + } 2.24505 +#endif 2.24506 + 2.24507 + //@} 2.24508 + //---------------------------- 2.24509 + // 2.24510 + //! \name Image Filtering 2.24511 + //@{ 2.24512 + //---------------------------- 2.24513 + 2.24514 + //! Compute the correlation of the instance image by a mask. 2.24515 + /** 2.24516 + The correlation of the instance image \p *this by the mask \p mask is defined to be : 2.24517 + 2.24518 + res(x,y,z) = sum_{i,j,k} (*this)(x+i,y+j,z+k)*mask(i,j,k) 2.24519 + 2.24520 + \param mask = the correlation kernel. 2.24521 + \param cond = the border condition type (0=zero, 1=dirichlet) 2.24522 + \param weighted_correl = enable local normalization. 2.24523 + **/ 2.24524 + template<typename t> 2.24525 + CImg<T>& correlate(const CImg<t>& mask, const unsigned int cond=1, const bool weighted_correl=false) { 2.24526 + return get_correlate(mask,cond,weighted_correl).transfer_to(*this); 2.24527 + } 2.24528 + 2.24529 + template<typename t> 2.24530 + CImg<typename cimg::superset2<T,t,float>::type> get_correlate(const CImg<t>& mask, const unsigned int cond=1, 2.24531 + const bool weighted_correl=false) const { 2.24532 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.24533 + if (is_empty()) return *this; 2.24534 + if (!mask || mask.dim!=1) 2.24535 + throw CImgArgumentException("CImg<%s>::correlate() : Specified mask (%u,%u,%u,%u,%p) is not scalar.", 2.24536 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data); 2.24537 + CImg<Ttfloat> dest(width,height,depth,dim); 2.24538 + if (cond && mask.width==mask.height && ((mask.depth==1 && mask.width<=5) || (mask.depth==mask.width && mask.width<=3))) { 2.24539 + // A special optimization is done for 2x2, 3x3, 4x4, 5x5, 2x2x2 and 3x3x3 mask (with cond=1) 2.24540 + switch (mask.depth) { 2.24541 + case 3 : { 2.24542 + T I[27] = { 0 }; 2.24543 + cimg_forZV(*this,z,v) cimg_for3x3x3(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24544 + (I[ 0]*mask[ 0] + I[ 1]*mask[ 1] + I[ 2]*mask[ 2] + 2.24545 + I[ 3]*mask[ 3] + I[ 4]*mask[ 4] + I[ 5]*mask[ 5] + 2.24546 + I[ 6]*mask[ 6] + I[ 7]*mask[ 7] + I[ 8]*mask[ 8] + 2.24547 + I[ 9]*mask[ 9] + I[10]*mask[10] + I[11]*mask[11] + 2.24548 + I[12]*mask[12] + I[13]*mask[13] + I[14]*mask[14] + 2.24549 + I[15]*mask[15] + I[16]*mask[16] + I[17]*mask[17] + 2.24550 + I[18]*mask[18] + I[19]*mask[19] + I[20]*mask[20] + 2.24551 + I[21]*mask[21] + I[22]*mask[22] + I[23]*mask[23] + 2.24552 + I[24]*mask[24] + I[25]*mask[25] + I[26]*mask[26]); 2.24553 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for3x3x3(*this,x,y,z,v,I) { 2.24554 + const double weight = (double)(I[ 0]*I[ 0] + I[ 1]*I[ 1] + I[ 2]*I[ 2] + 2.24555 + I[ 3]*I[ 3] + I[ 4]*I[ 4] + I[ 5]*I[ 5] + 2.24556 + I[ 6]*I[ 6] + I[ 7]*I[ 7] + I[ 8]*I[ 8] + 2.24557 + I[ 9]*I[ 9] + I[10]*I[10] + I[11]*I[11] + 2.24558 + I[12]*I[12] + I[13]*I[13] + I[14]*I[14] + 2.24559 + I[15]*I[15] + I[16]*I[16] + I[17]*I[17] + 2.24560 + I[18]*I[18] + I[19]*I[19] + I[20]*I[20] + 2.24561 + I[21]*I[21] + I[22]*I[22] + I[23]*I[23] + 2.24562 + I[24]*I[24] + I[25]*I[25] + I[26]*I[26]); 2.24563 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24564 + } 2.24565 + } break; 2.24566 + case 2 : { 2.24567 + T I[8] = { 0 }; 2.24568 + cimg_forZV(*this,z,v) cimg_for2x2x2(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24569 + (I[0]*mask[0] + I[1]*mask[1] + 2.24570 + I[2]*mask[2] + I[3]*mask[3] + 2.24571 + I[4]*mask[4] + I[5]*mask[5] + 2.24572 + I[6]*mask[6] + I[7]*mask[7]); 2.24573 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for2x2x2(*this,x,y,z,v,I) { 2.24574 + const double weight = (double)(I[0]*I[0] + I[1]*I[1] + 2.24575 + I[2]*I[2] + I[3]*I[3] + 2.24576 + I[4]*I[4] + I[5]*I[5] + 2.24577 + I[6]*I[6] + I[7]*I[7]); 2.24578 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24579 + } 2.24580 + } break; 2.24581 + default : 2.24582 + case 1 : 2.24583 + switch (mask.width) { 2.24584 + case 6 : { 2.24585 + T I[36] = { 0 }; 2.24586 + cimg_forZV(*this,z,v) cimg_for6x6(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24587 + (I[ 0]*mask[ 0] + I[ 1]*mask[ 1] + I[ 2]*mask[ 2] + I[ 3]*mask[ 3] + I[ 4]*mask[ 4] + I[ 5]*mask[ 5] + 2.24588 + I[ 6]*mask[ 6] + I[ 7]*mask[ 7] + I[ 8]*mask[ 8] + I[ 9]*mask[ 9] + I[10]*mask[10] + I[11]*mask[11] + 2.24589 + I[12]*mask[12] + I[13]*mask[13] + I[14]*mask[14] + I[15]*mask[15] + I[16]*mask[16] + I[17]*mask[17] + 2.24590 + I[18]*mask[18] + I[19]*mask[19] + I[20]*mask[20] + I[21]*mask[21] + I[22]*mask[22] + I[23]*mask[23] + 2.24591 + I[24]*mask[24] + I[25]*mask[25] + I[26]*mask[26] + I[27]*mask[27] + I[28]*mask[28] + I[29]*mask[29] + 2.24592 + I[30]*mask[30] + I[31]*mask[31] + I[32]*mask[32] + I[33]*mask[33] + I[34]*mask[34] + I[35]*mask[35]); 2.24593 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for5x5(*this,x,y,z,v,I) { 2.24594 + const double weight = (double)(I[ 0]*I[ 0] + I[ 1]*I[ 1] + I[ 2]*I[ 2] + I[ 3]*I[ 3] + I[ 4]*I[ 4] + I[ 5]*I[ 5] + 2.24595 + I[ 6]*I[ 6] + I[ 7]*I[ 7] + I[ 8]*I[ 8] + I[ 9]*I[ 9] + I[10]*I[10] + I[11]*I[11] + 2.24596 + I[12]*I[12] + I[13]*I[13] + I[14]*I[14] + I[15]*I[15] + I[16]*I[16] + I[17]*I[17] + 2.24597 + I[18]*I[18] + I[19]*I[19] + I[20]*I[20] + I[21]*I[21] + I[22]*I[22] + I[23]*I[23] + 2.24598 + I[24]*I[24] + I[25]*I[25] + I[26]*I[26] + I[27]*I[27] + I[28]*I[28] + I[29]*I[29] + 2.24599 + I[30]*I[30] + I[31]*I[31] + I[32]*I[32] + I[33]*I[33] + I[34]*I[34] + I[35]*I[35]); 2.24600 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24601 + } 2.24602 + } break; 2.24603 + case 5 : { 2.24604 + T I[25] = { 0 }; 2.24605 + cimg_forZV(*this,z,v) cimg_for5x5(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24606 + (I[ 0]*mask[ 0] + I[ 1]*mask[ 1] + I[ 2]*mask[ 2] + I[ 3]*mask[ 3] + I[ 4]*mask[ 4] + 2.24607 + I[ 5]*mask[ 5] + I[ 6]*mask[ 6] + I[ 7]*mask[ 7] + I[ 8]*mask[ 8] + I[ 9]*mask[ 9] + 2.24608 + I[10]*mask[10] + I[11]*mask[11] + I[12]*mask[12] + I[13]*mask[13] + I[14]*mask[14] + 2.24609 + I[15]*mask[15] + I[16]*mask[16] + I[17]*mask[17] + I[18]*mask[18] + I[19]*mask[19] + 2.24610 + I[20]*mask[20] + I[21]*mask[21] + I[22]*mask[22] + I[23]*mask[23] + I[24]*mask[24]); 2.24611 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for5x5(*this,x,y,z,v,I) { 2.24612 + const double weight = (double)(I[ 0]*I[ 0] + I[ 1]*I[ 1] + I[ 2]*I[ 2] + I[ 3]*I[ 3] + I[ 4]*I[ 4] + 2.24613 + I[ 5]*I[ 5] + I[ 6]*I[ 6] + I[ 7]*I[ 7] + I[ 8]*I[ 8] + I[ 9]*I[ 9] + 2.24614 + I[10]*I[10] + I[11]*I[11] + I[12]*I[12] + I[13]*I[13] + I[14]*I[14] + 2.24615 + I[15]*I[15] + I[16]*I[16] + I[17]*I[17] + I[18]*I[18] + I[19]*I[19] + 2.24616 + I[20]*I[20] + I[21]*I[21] + I[22]*I[22] + I[23]*I[23] + I[24]*I[24]); 2.24617 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24618 + } 2.24619 + } break; 2.24620 + case 4 : { 2.24621 + T I[16] = { 0 }; 2.24622 + cimg_forZV(*this,z,v) cimg_for4x4(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24623 + (I[ 0]*mask[ 0] + I[ 1]*mask[ 1] + I[ 2]*mask[ 2] + I[ 3]*mask[ 3] + 2.24624 + I[ 4]*mask[ 4] + I[ 5]*mask[ 5] + I[ 6]*mask[ 6] + I[ 7]*mask[ 7] + 2.24625 + I[ 8]*mask[ 8] + I[ 9]*mask[ 9] + I[10]*mask[10] + I[11]*mask[11] + 2.24626 + I[12]*mask[12] + I[13]*mask[13] + I[14]*mask[14] + I[15]*mask[15]); 2.24627 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for4x4(*this,x,y,z,v,I) { 2.24628 + const double weight = (double)(I[ 0]*I[ 0] + I[ 1]*I[ 1] + I[ 2]*I[ 2] + I[ 3]*I[ 3] + 2.24629 + I[ 4]*I[ 4] + I[ 5]*I[ 5] + I[ 6]*I[ 6] + I[ 7]*I[ 7] + 2.24630 + I[ 8]*I[ 8] + I[ 9]*I[ 9] + I[10]*I[10] + I[11]*I[11] + 2.24631 + I[12]*I[12] + I[13]*I[13] + I[14]*I[14] + I[15]*I[15]); 2.24632 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24633 + } 2.24634 + } break; 2.24635 + case 3 : { 2.24636 + T I[9] = { 0 }; 2.24637 + cimg_forZV(*this,z,v) cimg_for3x3(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24638 + (I[0]*mask[0] + I[1]*mask[1] + I[2]*mask[2] + 2.24639 + I[3]*mask[3] + I[4]*mask[4] + I[5]*mask[5] + 2.24640 + I[6]*mask[6] + I[7]*mask[7] + I[8]*mask[8]); 2.24641 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for3x3(*this,x,y,z,v,I) { 2.24642 + const double weight = (double)(I[0]*I[0] + I[1]*I[1] + I[2]*I[2] + 2.24643 + I[3]*I[3] + I[4]*I[4] + I[5]*I[5] + 2.24644 + I[6]*I[6] + I[7]*I[7] + I[8]*I[8]); 2.24645 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24646 + } 2.24647 + } break; 2.24648 + case 2 : { 2.24649 + T I[4] = { 0 }; 2.24650 + cimg_forZV(*this,z,v) cimg_for2x2(*this,x,y,z,v,I) dest(x,y,z,v) = (Ttfloat) 2.24651 + (I[0]*mask[0] + I[1]*mask[1] + 2.24652 + I[2]*mask[2] + I[3]*mask[3]); 2.24653 + if (weighted_correl) cimg_forZV(*this,z,v) cimg_for2x2(*this,x,y,z,v,I) { 2.24654 + const double weight = (double)(I[0]*I[0] + I[1]*I[1] + 2.24655 + I[2]*I[2] + I[3]*I[3]); 2.24656 + if (weight>0) dest(x,y,z,v)/=(Ttfloat)cimg_std::sqrt(weight); 2.24657 + } 2.24658 + } break; 2.24659 + case 1 : (dest.assign(*this))*=mask(0); break; 2.24660 + } 2.24661 + } 2.24662 + } else { // Generic version for other masks 2.24663 + const int 2.24664 + mx2 = mask.dimx()/2, my2 = mask.dimy()/2, mz2 = mask.dimz()/2, 2.24665 + mx1 = mx2 - 1 + (mask.dimx()%2), my1 = my2 - 1 + (mask.dimy()%2), mz1 = mz2 - 1 + (mask.dimz()%2), 2.24666 + mxe = dimx() - mx2, mye = dimy() - my2, mze = dimz() - mz2; 2.24667 + cimg_forV(*this,v) 2.24668 + if (!weighted_correl) { // Classical correlation 2.24669 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24670 + Ttfloat val = 0; 2.24671 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) 2.24672 + val+=(*this)(x+xm,y+ym,z+zm,v)*mask(mx1+xm,my1+ym,mz1+zm); 2.24673 + dest(x,y,z,v) = (Ttfloat)val; 2.24674 + } 2.24675 + if (cond) 2.24676 + cimg_forYZV(*this,y,z,v) 2.24677 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24678 + Ttfloat val = 0; 2.24679 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) 2.24680 + val+=_atXYZ(x+xm,y+ym,z+zm,v)*mask(mx1+xm,my1+ym,mz1+zm); 2.24681 + dest(x,y,z,v) = (Ttfloat)val; 2.24682 + } 2.24683 + else 2.24684 + cimg_forYZV(*this,y,z,v) 2.24685 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24686 + Ttfloat val = 0; 2.24687 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) 2.24688 + val+=atXYZ(x+xm,y+ym,z+zm,v,0)*mask(mx1+xm,my1+ym,mz1+zm); 2.24689 + dest(x,y,z,v) = (Ttfloat)val; 2.24690 + } 2.24691 + } else { // Weighted correlation 2.24692 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24693 + Ttfloat val = 0, weight = 0; 2.24694 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24695 + const Ttfloat cval = (Ttfloat)(*this)(x+xm,y+ym,z+zm,v); 2.24696 + val+=cval*mask(mx1+xm,my1+ym,mz1+zm); 2.24697 + weight+=cval*cval; 2.24698 + } 2.24699 + dest(x,y,z,v) = (weight>(Ttfloat)0)?(Ttfloat)(val/cimg_std::sqrt((double)weight)):(Ttfloat)0; 2.24700 + } 2.24701 + if (cond) 2.24702 + cimg_forYZV(*this,y,z,v) 2.24703 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24704 + Ttfloat val = 0, weight = 0; 2.24705 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24706 + const Ttfloat cval = (Ttfloat)_atXYZ(x+xm,y+ym,z+zm,v); 2.24707 + val+=cval*mask(mx1+xm,my1+ym,mz1+zm); 2.24708 + weight+=cval*cval; 2.24709 + } 2.24710 + dest(x,y,z,v) = (weight>(Ttfloat)0)?(Ttfloat)(val/cimg_std::sqrt((double)weight)):(Ttfloat)0; 2.24711 + } 2.24712 + else 2.24713 + cimg_forYZV(*this,y,z,v) 2.24714 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24715 + Ttfloat val = 0, weight = 0; 2.24716 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24717 + const Ttfloat cval = (Ttfloat)atXYZ(x+xm,y+ym,z+zm,v,0); 2.24718 + val+=cval*mask(mx1+xm,my1+ym,mz1+zm); 2.24719 + weight+=cval*cval; 2.24720 + } 2.24721 + dest(x,y,z,v) = (weight>(Ttfloat)0)?(Ttfloat)(val/cimg_std::sqrt((double)weight)):(Ttfloat)0; 2.24722 + } 2.24723 + } 2.24724 + } 2.24725 + return dest; 2.24726 + } 2.24727 + 2.24728 + //! Compute the convolution of the image by a mask. 2.24729 + /** 2.24730 + The result \p res of the convolution of an image \p img by a mask \p mask is defined to be : 2.24731 + 2.24732 + res(x,y,z) = sum_{i,j,k} img(x-i,y-j,z-k)*mask(i,j,k) 2.24733 + 2.24734 + \param mask = the correlation kernel. 2.24735 + \param cond = the border condition type (0=zero, 1=dirichlet) 2.24736 + \param weighted_convol = enable local normalization. 2.24737 + **/ 2.24738 + template<typename t> 2.24739 + CImg<T>& convolve(const CImg<t>& mask, const unsigned int cond=1, const bool weighted_convol=false) { 2.24740 + return get_convolve(mask,cond,weighted_convol).transfer_to(*this); 2.24741 + } 2.24742 + 2.24743 + template<typename t> 2.24744 + CImg<typename cimg::superset2<T,t,float>::type> get_convolve(const CImg<t>& mask, const unsigned int cond=1, 2.24745 + const bool weighted_convol=false) const { 2.24746 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.24747 + if (is_empty()) return *this; 2.24748 + if (!mask || mask.dim!=1) 2.24749 + throw CImgArgumentException("CImg<%s>::convolve() : Specified mask (%u,%u,%u,%u,%p) is not scalar.", 2.24750 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data); 2.24751 + return get_correlate(CImg<t>(mask.ptr(),mask.size(),1,1,1,true).get_mirror('x').resize(mask,-1),cond,weighted_convol); 2.24752 + } 2.24753 + 2.24754 + //! Return the erosion of the image by a structuring element. 2.24755 + template<typename t> 2.24756 + CImg<T>& erode(const CImg<t>& mask, const unsigned int cond=1, const bool weighted_erosion=false) { 2.24757 + return get_erode(mask,cond,weighted_erosion).transfer_to(*this); 2.24758 + } 2.24759 + 2.24760 + template<typename t> 2.24761 + CImg<typename cimg::superset<T,t>::type> get_erode(const CImg<t>& mask, const unsigned int cond=1, 2.24762 + const bool weighted_erosion=false) const { 2.24763 + typedef typename cimg::superset<T,t>::type Tt; 2.24764 + if (is_empty()) return *this; 2.24765 + if (!mask || mask.dim!=1) 2.24766 + throw CImgArgumentException("CImg<%s>::erode() : Specified mask (%u,%u,%u,%u,%p) is not a scalar image.", 2.24767 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data); 2.24768 + CImg<Tt> dest(width,height,depth,dim); 2.24769 + const int 2.24770 + mx2 = mask.dimx()/2, my2 = mask.dimy()/2, mz2 = mask.dimz()/2, 2.24771 + mx1 = mx2 - 1 + (mask.dimx()%2), my1 = my2 - 1 + (mask.dimy()%2), mz1 = mz2 - 1 + (mask.dimz()%2), 2.24772 + mxe = dimx() - mx2, mye = dimy() - my2, mze = dimz() - mz2; 2.24773 + cimg_forV(*this,v) 2.24774 + if (!weighted_erosion) { // Classical erosion 2.24775 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24776 + Tt min_val = cimg::type<Tt>::max(); 2.24777 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24778 + const Tt cval = (Tt)(*this)(x+xm,y+ym,z+zm,v); 2.24779 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval<min_val) min_val = cval; 2.24780 + } 2.24781 + dest(x,y,z,v) = min_val; 2.24782 + } 2.24783 + if (cond) 2.24784 + cimg_forYZV(*this,y,z,v) 2.24785 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24786 + Tt min_val = cimg::type<Tt>::max(); 2.24787 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24788 + const T cval = (Tt)_atXYZ(x+xm,y+ym,z+zm,v); 2.24789 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval<min_val) min_val = cval; 2.24790 + } 2.24791 + dest(x,y,z,v) = min_val; 2.24792 + } 2.24793 + else 2.24794 + cimg_forYZV(*this,y,z,v) 2.24795 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24796 + Tt min_val = cimg::type<Tt>::max(); 2.24797 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24798 + const T cval = (Tt)atXYZ(x+xm,y+ym,z+zm,v,0); 2.24799 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval<min_val) min_val = cval; 2.24800 + } 2.24801 + dest(x,y,z,v) = min_val; 2.24802 + } 2.24803 + } else { // Weighted erosion 2.24804 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24805 + Tt min_val = cimg::type<Tt>::max(); 2.24806 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24807 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24808 + const Tt cval = (Tt)((*this)(x+xm,y+ym,z+zm,v) + mval); 2.24809 + if (mval && cval<min_val) min_val = cval; 2.24810 + } 2.24811 + dest(x,y,z,v) = min_val; 2.24812 + } 2.24813 + if (cond) 2.24814 + cimg_forYZV(*this,y,z,v) 2.24815 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24816 + Tt min_val = cimg::type<Tt>::max(); 2.24817 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24818 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24819 + const Tt cval = (Tt)(_atXYZ(x+xm,y+ym,z+zm,v) + mval); 2.24820 + if (mval && cval<min_val) min_val = cval; 2.24821 + } 2.24822 + dest(x,y,z,v) = min_val; 2.24823 + } 2.24824 + else 2.24825 + cimg_forYZV(*this,y,z,v) 2.24826 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24827 + Tt min_val = cimg::type<Tt>::max(); 2.24828 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24829 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24830 + const Tt cval = (Tt)(atXYZ(x+xm,y+ym,z+zm,v,0) + mval); 2.24831 + if (mval && cval<min_val) min_val = cval; 2.24832 + } 2.24833 + dest(x,y,z,v) = min_val; 2.24834 + } 2.24835 + } 2.24836 + return dest; 2.24837 + } 2.24838 + 2.24839 + //! Erode the image by a square structuring element of size n. 2.24840 + CImg<T>& erode(const unsigned int n, const unsigned int cond=1) { 2.24841 + if (n<2) return *this; 2.24842 + return get_erode(n,cond).transfer_to(*this); 2.24843 + } 2.24844 + 2.24845 + CImg<T> get_erode(const unsigned int n, const unsigned int cond=1) const { 2.24846 + static CImg<T> mask; 2.24847 + if (n<2) return *this; 2.24848 + if (mask.width!=n) mask.assign(n,n,1,1,1); 2.24849 + const CImg<T> res = get_erode(mask,cond,false); 2.24850 + if (n>20) mask.assign(); 2.24851 + return res; 2.24852 + } 2.24853 + 2.24854 + //! Dilate the image by a structuring element. 2.24855 + template<typename t> 2.24856 + CImg<T>& dilate(const CImg<t>& mask, const unsigned int cond=1, const bool weighted_dilatation=false) { 2.24857 + return get_dilate(mask,cond,weighted_dilatation).transfer_to(*this); 2.24858 + } 2.24859 + 2.24860 + template<typename t> 2.24861 + CImg<typename cimg::superset<T,t>::type> get_dilate(const CImg<t>& mask, const unsigned int cond=1, 2.24862 + const bool weighted_dilatation=false) const { 2.24863 + typedef typename cimg::superset<T,t>::type Tt; 2.24864 + if (is_empty()) return *this; 2.24865 + if (!mask || mask.dim!=1) 2.24866 + throw CImgArgumentException("CImg<%s>::dilate() : Specified mask (%u,%u,%u,%u,%p) is not a scalar image.", 2.24867 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data); 2.24868 + CImg<Tt> dest(width,height,depth,dim); 2.24869 + const int 2.24870 + mx2 = mask.dimx()/2, my2 = mask.dimy()/2, mz2 = mask.dimz()/2, 2.24871 + mx1 = mx2 - 1 + (mask.dimx()%2), my1 = my2 - 1 + (mask.dimy()%2), mz1 = mz2 - 1 + (mask.dimz()%2), 2.24872 + mxe = dimx() - mx2, mye = dimy() - my2, mze = dimz() - mz2; 2.24873 + cimg_forV(*this,v) 2.24874 + if (!weighted_dilatation) { // Classical dilatation 2.24875 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24876 + Tt max_val = cimg::type<Tt>::min(); 2.24877 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24878 + const Tt cval = (Tt)(*this)(x+xm,y+ym,z+zm,v); 2.24879 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval>max_val) max_val = cval; 2.24880 + } 2.24881 + dest(x,y,z,v) = max_val; 2.24882 + } 2.24883 + if (cond) 2.24884 + cimg_forYZV(*this,y,z,v) 2.24885 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24886 + Tt max_val = cimg::type<Tt>::min(); 2.24887 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24888 + const T cval = (Tt)_atXYZ(x+xm,y+ym,z+zm,v); 2.24889 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval>max_val) max_val = cval; 2.24890 + } 2.24891 + dest(x,y,z,v) = max_val; 2.24892 + } 2.24893 + else 2.24894 + cimg_forYZV(*this,y,z,v) 2.24895 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24896 + Tt max_val = cimg::type<Tt>::min(); 2.24897 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24898 + const T cval = (Tt)atXYZ(x+xm,y+ym,z+zm,v,0); 2.24899 + if (mask(mx1+xm,my1+ym,mz1+zm) && cval>max_val) max_val = cval; 2.24900 + } 2.24901 + dest(x,y,z,v) = max_val; 2.24902 + } 2.24903 + } else { // Weighted dilatation 2.24904 + for (int z = mz1; z<mze; ++z) for (int y = my1; y<mye; ++y) for (int x = mx1; x<mxe; ++x) { 2.24905 + Tt max_val = cimg::type<Tt>::min(); 2.24906 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24907 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24908 + const Tt cval = (Tt)((*this)(x+xm,y+ym,z+zm,v) - mval); 2.24909 + if (mval && cval>max_val) max_val = cval; 2.24910 + } 2.24911 + dest(x,y,z,v) = max_val; 2.24912 + } 2.24913 + if (cond) 2.24914 + cimg_forYZV(*this,y,z,v) 2.24915 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24916 + Tt max_val = cimg::type<Tt>::min(); 2.24917 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24918 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24919 + const Tt cval = (Tt)(_atXYZ(x+xm,y+ym,z+zm,v) - mval); 2.24920 + if (mval && cval>max_val) max_val = cval; 2.24921 + } 2.24922 + dest(x,y,z,v) = max_val; 2.24923 + } 2.24924 + else 2.24925 + cimg_forYZV(*this,y,z,v) 2.24926 + for (int x = 0; x<dimx(); (y<my1 || y>=mye || z<mz1 || z>=mze)?++x:((x<mx1-1 || x>=mxe)?++x:(x=mxe))) { 2.24927 + Tt max_val = cimg::type<Tt>::min(); 2.24928 + for (int zm = -mz1; zm<=mz2; ++zm) for (int ym = -my1; ym<=my2; ++ym) for (int xm = -mx1; xm<=mx2; ++xm) { 2.24929 + const t mval = mask(mx1+xm,my1+ym,mz1+zm); 2.24930 + const Tt cval = (Tt)(atXYZ(x+xm,y+ym,z+zm,v,0) - mval); 2.24931 + if (mval && cval>max_val) max_val = cval; 2.24932 + } 2.24933 + dest(x,y,z,v) = max_val; 2.24934 + } 2.24935 + } 2.24936 + return dest; 2.24937 + } 2.24938 + 2.24939 + //! Dilate the image by a square structuring element of size n. 2.24940 + CImg<T>& dilate(const unsigned int n, const unsigned int cond=1) { 2.24941 + if (n<2) return *this; 2.24942 + return get_dilate(n,cond).transfer_to(*this); 2.24943 + } 2.24944 + 2.24945 + CImg<T> get_dilate(const unsigned int n, const unsigned int cond=1) const { 2.24946 + static CImg<T> mask; 2.24947 + if (n<2) return *this; 2.24948 + if (mask.width!=n) mask.assign(n,n,1,1,1); 2.24949 + const CImg<T> res = get_dilate(mask,cond,false); 2.24950 + if (n>20) mask.assign(); 2.24951 + return res; 2.24952 + } 2.24953 + 2.24954 + //! Add noise to the image. 2.24955 + /** 2.24956 + \param sigma = power of the noise. if sigma<0, it corresponds to the percentage of the maximum image value. 2.24957 + \param ntype = noise type. can be 0=gaussian, 1=uniform or 2=Salt and Pepper, 3=Poisson, 4=Rician. 2.24958 + \return A noisy version of the instance image. 2.24959 + **/ 2.24960 + CImg<T>& noise(const double sigma, const unsigned int noise_type=0) { 2.24961 + if (!is_empty()) { 2.24962 + double nsigma = sigma, max = (double)cimg::type<T>::max(), min = (double)cimg::type<T>::min(); 2.24963 + Tfloat m = 0, M = 0; 2.24964 + if (nsigma==0 && noise_type!=3) return *this; 2.24965 + if (nsigma<0 || noise_type==2) m = (Tfloat)minmax(M); 2.24966 + if (nsigma<0) nsigma = -nsigma*(M-m)/100.0; 2.24967 + switch (noise_type) { 2.24968 + case 0 : { // Gaussian noise 2.24969 + cimg_for(*this,ptr,T) { 2.24970 + double val = *ptr + nsigma*cimg::grand(); 2.24971 + if (val>max) val = max; 2.24972 + if (val<min) val = min; 2.24973 + *ptr = (T)val; 2.24974 + } 2.24975 + } break; 2.24976 + case 1 : { // Uniform noise 2.24977 + cimg_for(*this,ptr,T) { 2.24978 + double val = *ptr + nsigma*cimg::crand(); 2.24979 + if (val>max) val = max; 2.24980 + if (val<min) val = min; 2.24981 + *ptr = (T)val; 2.24982 + } 2.24983 + } break; 2.24984 + case 2 : { // Salt & Pepper noise 2.24985 + if (nsigma<0) nsigma = -nsigma; 2.24986 + if (M==m) { m = 0; M = (float)(cimg::type<T>::is_float()?1:cimg::type<T>::max()); } 2.24987 + cimg_for(*this,ptr,T) if (cimg::rand()*100<nsigma) *ptr = (T)(cimg::rand()<0.5?M:m); 2.24988 + } break; 2.24989 + 2.24990 + case 3 : { // Poisson Noise 2.24991 + cimg_for(*this,ptr,T) *ptr = (T)cimg::prand(*ptr); 2.24992 + } break; 2.24993 + 2.24994 + case 4 : { // Rice noise 2.24995 + const double sqrt2 = (double)cimg_std::sqrt(2.0); 2.24996 + cimg_for(*this,ptr,T) { 2.24997 + const double 2.24998 + val0 = (double)*ptr/sqrt2, 2.24999 + re = val0 + nsigma*cimg::grand(), 2.25000 + im = val0 + nsigma*cimg::grand(); 2.25001 + double val = cimg_std::sqrt(re*re + im*im); 2.25002 + if (val>max) val = max; 2.25003 + if (val<min) val = min; 2.25004 + *ptr = (T)val; 2.25005 + } 2.25006 + } break; 2.25007 + default : 2.25008 + throw CImgArgumentException("CImg<%s>::noise() : Invalid noise type %d " 2.25009 + "(should be {0=Gaussian, 1=Uniform, 2=Salt&Pepper, 3=Poisson}).",pixel_type(),noise_type); 2.25010 + } 2.25011 + } 2.25012 + return *this; 2.25013 + } 2.25014 + 2.25015 + CImg<T> get_noise(const double sigma, const unsigned int noise_type=0) const { 2.25016 + return (+*this).noise(sigma,noise_type); 2.25017 + } 2.25018 + 2.25019 + //! Compute the result of the Deriche filter. 2.25020 + /** 2.25021 + The Canny-Deriche filter is a recursive algorithm allowing to compute blurred derivatives of 2.25022 + order 0,1 or 2 of an image. 2.25023 + **/ 2.25024 + CImg<T>& deriche(const float sigma, const int order=0, const char axis='x', const bool cond=true) { 2.25025 +#define _cimg_deriche2_apply \ 2.25026 + Tfloat *ptrY = Y.data, yb = 0, yp = 0; \ 2.25027 + T xp = (T)0; \ 2.25028 + if (cond) { xp = *ptrX; yb = yp = (Tfloat)(coefp*xp); } \ 2.25029 + for (int m=0; m<N; ++m) { \ 2.25030 + const T xc = *ptrX; ptrX+=off; \ 2.25031 + const Tfloat yc = *(ptrY++) = (Tfloat)(a0*xc + a1*xp - b1*yp - b2*yb); \ 2.25032 + xp = xc; yb = yp; yp = yc; \ 2.25033 + } \ 2.25034 + T xn = (T)0, xa = (T)0; \ 2.25035 + Tfloat yn = 0, ya = 0; \ 2.25036 + if (cond) { xn = xa = *(ptrX-off); yn = ya = (Tfloat)coefn*xn; } \ 2.25037 + for (int n=N-1; n>=0; --n) { \ 2.25038 + const T xc = *(ptrX-=off); \ 2.25039 + const Tfloat yc = (Tfloat)(a2*xn + a3*xa - b1*yn - b2*ya); \ 2.25040 + xa = xn; xn = xc; ya = yn; yn = yc; \ 2.25041 + *ptrX = (T)(*(--ptrY)+yc); \ 2.25042 + } 2.25043 + if (sigma<0) 2.25044 + throw CImgArgumentException("CImg<%s>::deriche() : Given filter variance (sigma = %g) is negative", 2.25045 + pixel_type(),sigma); 2.25046 + if (is_empty() || (sigma<0.1 && !order)) return *this; 2.25047 + const float 2.25048 + nsigma = sigma<0.1f?0.1f:sigma, 2.25049 + alpha = 1.695f/nsigma, 2.25050 + ema = (float)cimg_std::exp(-alpha), 2.25051 + ema2 = (float)cimg_std::exp(-2*alpha), 2.25052 + b1 = -2*ema, 2.25053 + b2 = ema2; 2.25054 + float a0 = 0, a1 = 0, a2 = 0, a3 = 0, coefp = 0, coefn = 0; 2.25055 + switch (order) { 2.25056 + case 0 : { 2.25057 + const float k = (1-ema)*(1-ema)/(1+2*alpha*ema-ema2); 2.25058 + a0 = k; 2.25059 + a1 = k*(alpha-1)*ema; 2.25060 + a2 = k*(alpha+1)*ema; 2.25061 + a3 = -k*ema2; 2.25062 + } break; 2.25063 + case 1 : { 2.25064 + const float k = (1-ema)*(1-ema)/ema; 2.25065 + a0 = k*ema; 2.25066 + a1 = a3 = 0; 2.25067 + a2 = -a0; 2.25068 + } break; 2.25069 + case 2 : { 2.25070 + const float 2.25071 + ea = (float)cimg_std::exp(-alpha), 2.25072 + k = -(ema2-1)/(2*alpha*ema), 2.25073 + kn = (-2*(-1+3*ea-3*ea*ea+ea*ea*ea)/(3*ea+1+3*ea*ea+ea*ea*ea)); 2.25074 + a0 = kn; 2.25075 + a1 = -kn*(1+k*alpha)*ema; 2.25076 + a2 = kn*(1-k*alpha)*ema; 2.25077 + a3 = -kn*ema2; 2.25078 + } break; 2.25079 + default : 2.25080 + throw CImgArgumentException("CImg<%s>::deriche() : Given filter order (order = %u) must be 0,1 or 2", 2.25081 + pixel_type(),order); 2.25082 + } 2.25083 + coefp = (a0+a1)/(1+b1+b2); 2.25084 + coefn = (a2+a3)/(1+b1+b2); 2.25085 + switch (cimg::uncase(axis)) { 2.25086 + case 'x' : { 2.25087 + const int N = width, off = 1; 2.25088 + CImg<Tfloat> Y(N); 2.25089 + cimg_forYZV(*this,y,z,v) { T *ptrX = ptr(0,y,z,v); _cimg_deriche2_apply; } 2.25090 + } break; 2.25091 + case 'y' : { 2.25092 + const int N = height, off = width; 2.25093 + CImg<Tfloat> Y(N); 2.25094 + cimg_forXZV(*this,x,z,v) { T *ptrX = ptr(x,0,z,v); _cimg_deriche2_apply; } 2.25095 + } break; 2.25096 + case 'z' : { 2.25097 + const int N = depth, off = width*height; 2.25098 + CImg<Tfloat> Y(N); 2.25099 + cimg_forXYV(*this,x,y,v) { T *ptrX = ptr(x,y,0,v); _cimg_deriche2_apply; } 2.25100 + } break; 2.25101 + case 'v' : { 2.25102 + const int N = dim, off = width*height*depth; 2.25103 + CImg<Tfloat> Y(N); 2.25104 + cimg_forXYZ(*this,x,y,z) { T *ptrX = ptr(x,y,z,0); _cimg_deriche2_apply; } 2.25105 + } break; 2.25106 + } 2.25107 + return *this; 2.25108 + } 2.25109 + 2.25110 + CImg<Tfloat> get_deriche(const float sigma, const int order=0, const char axis='x', const bool cond=true) const { 2.25111 + return CImg<Tfloat>(*this,false).deriche(sigma,order,axis,cond); 2.25112 + } 2.25113 + 2.25114 + //! Return a blurred version of the image, using a Canny-Deriche filter. 2.25115 + /** 2.25116 + Blur the image with an anisotropic exponential filter (Deriche filter of order 0). 2.25117 + **/ 2.25118 + CImg<T>& blur(const float sigmax, const float sigmay, const float sigmaz, const bool cond=true) { 2.25119 + if (!is_empty()) { 2.25120 + if (width>1 && sigmax>0) deriche(sigmax,0,'x',cond); 2.25121 + if (height>1 && sigmay>0) deriche(sigmay,0,'y',cond); 2.25122 + if (depth>1 && sigmaz>0) deriche(sigmaz,0,'z',cond); 2.25123 + } 2.25124 + return *this; 2.25125 + } 2.25126 + 2.25127 + CImg<Tfloat> get_blur(const float sigmax, const float sigmay, const float sigmaz, 2.25128 + const bool cond=true) const { 2.25129 + return CImg<Tfloat>(*this,false).blur(sigmax,sigmay,sigmaz,cond); 2.25130 + } 2.25131 + 2.25132 + //! Return a blurred version of the image, using a Canny-Deriche filter. 2.25133 + CImg<T>& blur(const float sigma, const bool cond=true) { 2.25134 + return blur(sigma,sigma,sigma,cond); 2.25135 + } 2.25136 + 2.25137 + CImg<Tfloat> get_blur(const float sigma, const bool cond=true) const { 2.25138 + return CImg<Tfloat>(*this,false).blur(sigma,cond); 2.25139 + } 2.25140 + 2.25141 + //! Blur the image anisotropically following a field of diffusion tensors. 2.25142 + /** 2.25143 + \param G = Field of square roots of diffusion tensors used to drive the smoothing. 2.25144 + \param amplitude = amplitude of the smoothing. 2.25145 + \param dl = spatial discretization. 2.25146 + \param da = angular discretization. 2.25147 + \param gauss_prec = precision of the gaussian function. 2.25148 + \param interpolation Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta) 2.25149 + \param fast_approx = Tell to use the fast approximation or not. 2.25150 + **/ 2.25151 + template<typename t> 2.25152 + CImg<T>& blur_anisotropic(const CImg<t>& G, const float amplitude=60, const float dl=0.8f, const float da=30, 2.25153 + const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true) { 2.25154 +#define _cimg_valign2d(i,j) \ 2.25155 + { Tfloat &u = W(i,j,0,0), &v = W(i,j,0,1); \ 2.25156 + if (u*curru + v*currv<0) { u=-u; v=-v; }} 2.25157 +#define _cimg_valign3d(i,j,k) \ 2.25158 + { Tfloat &u = W(i,j,k,0), &v = W(i,j,k,1), &w = W(i,j,k,2); \ 2.25159 + if (u*curru + v*currv + w*currw<0) { u=-u; v=-v; w=-w; }} 2.25160 + 2.25161 + // Check arguments and init variables 2.25162 + if (!is_empty() && amplitude>0) { 2.25163 + if (!G || (G.dim!=3 && G.dim!=6) || G.width!=width || G.height!=height || G.depth!=depth) 2.25164 + throw CImgArgumentException("CImg<%s>::blur_anisotropic() : Specified tensor field (%u,%u,%u,%u) is not valid.", 2.25165 + pixel_type(),G.width,G.height,G.depth,G.dim); 2.25166 + 2.25167 + const float sqrt2amplitude = (float)cimg_std::sqrt(2*amplitude); 2.25168 + const bool threed = (G.dim>=6); 2.25169 + const int 2.25170 + dx1 = dimx()-1, 2.25171 + dy1 = dimy()-1, 2.25172 + dz1 = dimz()-1; 2.25173 + CImg<Tfloat> 2.25174 + dest(width,height,depth,dim,0), 2.25175 + W(width,height,depth,threed?4:3), 2.25176 + tmp(dim); 2.25177 + int N = 0; 2.25178 + 2.25179 + if (threed) 2.25180 + // 3D version of the algorithm 2.25181 + for (float phi=(180%(int)da)/2.0f; phi<=180; phi+=da) { 2.25182 + const float 2.25183 + phir = (float)(phi*cimg::valuePI/180), 2.25184 + datmp = (float)(da/cimg_std::cos(phir)), 2.25185 + da2 = datmp<1?360.0f:datmp; 2.25186 + 2.25187 + for (float theta=0; theta<360; (theta+=da2),++N) { 2.25188 + const float 2.25189 + thetar = (float)(theta*cimg::valuePI/180), 2.25190 + vx = (float)(cimg_std::cos(thetar)*cimg_std::cos(phir)), 2.25191 + vy = (float)(cimg_std::sin(thetar)*cimg_std::cos(phir)), 2.25192 + vz = (float)cimg_std::sin(phir); 2.25193 + const t 2.25194 + *pa = G.ptr(0,0,0,0), 2.25195 + *pb = G.ptr(0,0,0,1), 2.25196 + *pc = G.ptr(0,0,0,2), 2.25197 + *pd = G.ptr(0,0,0,3), 2.25198 + *pe = G.ptr(0,0,0,4), 2.25199 + *pf = G.ptr(0,0,0,5); 2.25200 + Tfloat 2.25201 + *pd0 = W.ptr(0,0,0,0), 2.25202 + *pd1 = W.ptr(0,0,0,1), 2.25203 + *pd2 = W.ptr(0,0,0,2), 2.25204 + *pd3 = W.ptr(0,0,0,3); 2.25205 + cimg_forXYZ(G,xg,yg,zg) { 2.25206 + const t 2.25207 + a = *(pa++), b = *(pb++), c = *(pc++), 2.25208 + d = *(pd++), e = *(pe++), f = *(pf++); 2.25209 + const float 2.25210 + u = (float)(a*vx + b*vy + c*vz), 2.25211 + v = (float)(b*vx + d*vy + e*vz), 2.25212 + w = (float)(c*vx + e*vy + f*vz), 2.25213 + n = (float)cimg_std::sqrt(1e-5+u*u+v*v+w*w), 2.25214 + dln = dl/n; 2.25215 + *(pd0++) = (Tfloat)(u*dln); 2.25216 + *(pd1++) = (Tfloat)(v*dln); 2.25217 + *(pd2++) = (Tfloat)(w*dln); 2.25218 + *(pd3++) = (Tfloat)n; 2.25219 + } 2.25220 + 2.25221 + cimg_forXYZ(*this,x,y,z) { 2.25222 + tmp.fill(0); 2.25223 + const float 2.25224 + cu = (float)W(x,y,z,0), 2.25225 + cv = (float)W(x,y,z,1), 2.25226 + cw = (float)W(x,y,z,2), 2.25227 + n = (float)W(x,y,z,3), 2.25228 + fsigma = (float)(n*sqrt2amplitude), 2.25229 + length = gauss_prec*fsigma, 2.25230 + fsigma2 = 2*fsigma*fsigma; 2.25231 + float 2.25232 + S = 0, 2.25233 + pu = cu, 2.25234 + pv = cv, 2.25235 + pw = cw, 2.25236 + X = (float)x, 2.25237 + Y = (float)y, 2.25238 + Z = (float)z; 2.25239 + 2.25240 + switch (interpolation_type) { 2.25241 + case 0 : { 2.25242 + // Nearest neighbor 2.25243 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 2.25244 + const int 2.25245 + cx = (int)(X+0.5f), 2.25246 + cy = (int)(Y+0.5f), 2.25247 + cz = (int)(Z+0.5f); 2.25248 + float 2.25249 + u = (float)W(cx,cy,cz,0), 2.25250 + v = (float)W(cx,cy,cz,1), 2.25251 + w = (float)W(cx,cy,cz,2); 2.25252 + if ((pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 2.25253 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)(*this)(cx,cy,cz,k); ++S; } 2.25254 + else { 2.25255 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25256 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*(*this)(cx,cy,cz,k)); 2.25257 + S+=coef; 2.25258 + } 2.25259 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 2.25260 + } 2.25261 + } break; 2.25262 + 2.25263 + case 1 : { 2.25264 + // Linear interpolation 2.25265 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 2.25266 + const int 2.25267 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>dx1)?dx1:cx+1, 2.25268 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>dy1)?dy1:cy+1, 2.25269 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>dz1)?dz1:cz+1; 2.25270 + const float 2.25271 + curru = (float)W(cx,cy,cz,0), 2.25272 + currv = (float)W(cx,cy,cz,1), 2.25273 + currw = (float)W(cx,cy,cz,2); 2.25274 + _cimg_valign3d(px,py,pz); _cimg_valign3d(cx,py,pz); _cimg_valign3d(nx,py,pz); 2.25275 + _cimg_valign3d(px,cy,pz); _cimg_valign3d(cx,cy,pz); _cimg_valign3d(nx,cy,pz); 2.25276 + _cimg_valign3d(px,ny,pz); _cimg_valign3d(cx,ny,pz); _cimg_valign3d(nx,ny,pz); 2.25277 + _cimg_valign3d(px,py,cz); _cimg_valign3d(cx,py,cz); _cimg_valign3d(nx,py,cz); 2.25278 + _cimg_valign3d(px,cy,cz); _cimg_valign3d(nx,cy,cz); 2.25279 + _cimg_valign3d(px,ny,cz); _cimg_valign3d(cx,ny,cz); _cimg_valign3d(nx,ny,cz); 2.25280 + _cimg_valign3d(px,py,nz); _cimg_valign3d(cx,py,nz); _cimg_valign3d(nx,py,nz); 2.25281 + _cimg_valign3d(px,cy,nz); _cimg_valign3d(cx,cy,nz); _cimg_valign3d(nx,cy,nz); 2.25282 + _cimg_valign3d(px,ny,nz); _cimg_valign3d(cx,ny,nz); _cimg_valign3d(nx,ny,nz); 2.25283 + float 2.25284 + u = (float)(W._linear_atXYZ(X,Y,Z,0)), 2.25285 + v = (float)(W._linear_atXYZ(X,Y,Z,1)), 2.25286 + w = (float)(W._linear_atXYZ(X,Y,Z,2)); 2.25287 + if ((pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 2.25288 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)_linear_atXYZ(X,Y,Z,k); ++S; } 2.25289 + else { 2.25290 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25291 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*_linear_atXYZ(X,Y,Z,k)); 2.25292 + S+=coef; 2.25293 + } 2.25294 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 2.25295 + } 2.25296 + } break; 2.25297 + 2.25298 + default : { 2.25299 + // 2nd order Runge Kutta 2.25300 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 2.25301 + const int 2.25302 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>dx1)?dx1:cx+1, 2.25303 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>dy1)?dy1:cy+1, 2.25304 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>dz1)?dz1:cz+1; 2.25305 + const float 2.25306 + curru = (float)W(cx,cy,cz,0), 2.25307 + currv = (float)W(cx,cy,cz,1), 2.25308 + currw = (float)W(cx,cy,cz,2); 2.25309 + _cimg_valign3d(px,py,pz); _cimg_valign3d(cx,py,pz); _cimg_valign3d(nx,py,pz); 2.25310 + _cimg_valign3d(px,cy,pz); _cimg_valign3d(cx,cy,pz); _cimg_valign3d(nx,cy,pz); 2.25311 + _cimg_valign3d(px,ny,pz); _cimg_valign3d(cx,ny,pz); _cimg_valign3d(nx,ny,pz); 2.25312 + _cimg_valign3d(px,py,cz); _cimg_valign3d(cx,py,cz); _cimg_valign3d(nx,py,cz); 2.25313 + _cimg_valign3d(px,cy,cz); _cimg_valign3d(nx,cy,cz); 2.25314 + _cimg_valign3d(px,ny,cz); _cimg_valign3d(cx,ny,cz); _cimg_valign3d(nx,ny,cz); 2.25315 + _cimg_valign3d(px,py,nz); _cimg_valign3d(cx,py,nz); _cimg_valign3d(nx,py,nz); 2.25316 + _cimg_valign3d(px,cy,nz); _cimg_valign3d(cx,cy,nz); _cimg_valign3d(nx,cy,nz); 2.25317 + _cimg_valign3d(px,ny,nz); _cimg_valign3d(cx,ny,nz); _cimg_valign3d(nx,ny,nz); 2.25318 + const float 2.25319 + u0 = (float)(0.5f*W._linear_atXYZ(X,Y,Z,0)), 2.25320 + v0 = (float)(0.5f*W._linear_atXYZ(X,Y,Z,1)), 2.25321 + w0 = (float)(0.5f*W._linear_atXYZ(X,Y,Z,2)); 2.25322 + float 2.25323 + u = (float)(W._linear_atXYZ(X+u0,Y+v0,Z+w0,0)), 2.25324 + v = (float)(W._linear_atXYZ(X+u0,Y+v0,Z+w0,1)), 2.25325 + w = (float)(W._linear_atXYZ(X+u0,Y+v0,Z+w0,2)); 2.25326 + if ((pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 2.25327 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)_linear_atXYZ(X,Y,Z,k); ++S; } 2.25328 + else { 2.25329 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25330 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*_linear_atXYZ(X,Y,Z,k)); 2.25331 + S+=coef; 2.25332 + } 2.25333 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 2.25334 + } 2.25335 + } break; 2.25336 + } 2.25337 + if (S>0) cimg_forV(dest,k) dest(x,y,z,k)+=tmp[k]/S; 2.25338 + else cimg_forV(dest,k) dest(x,y,z,k)+=(Tfloat)((*this)(x,y,z,k)); 2.25339 + cimg_plugin_greycstoration_count; 2.25340 + } 2.25341 + } 2.25342 + } else 2.25343 + // 2D version of the algorithm 2.25344 + for (float theta=(360%(int)da)/2.0f; theta<360; (theta+=da),++N) { 2.25345 + const float 2.25346 + thetar = (float)(theta*cimg::valuePI/180), 2.25347 + vx = (float)(cimg_std::cos(thetar)), 2.25348 + vy = (float)(cimg_std::sin(thetar)); 2.25349 + const t 2.25350 + *pa = G.ptr(0,0,0,0), 2.25351 + *pb = G.ptr(0,0,0,1), 2.25352 + *pc = G.ptr(0,0,0,2); 2.25353 + Tfloat 2.25354 + *pd0 = W.ptr(0,0,0,0), 2.25355 + *pd1 = W.ptr(0,0,0,1), 2.25356 + *pd2 = W.ptr(0,0,0,2); 2.25357 + cimg_forXY(G,xg,yg) { 2.25358 + const t a = *(pa++), b = *(pb++), c = *(pc++); 2.25359 + const float 2.25360 + u = (float)(a*vx + b*vy), 2.25361 + v = (float)(b*vx + c*vy), 2.25362 + n = (float)cimg_std::sqrt(1e-5+u*u+v*v), 2.25363 + dln = dl/n; 2.25364 + *(pd0++) = (Tfloat)(u*dln); 2.25365 + *(pd1++) = (Tfloat)(v*dln); 2.25366 + *(pd2++) = (Tfloat)n; 2.25367 + } 2.25368 + 2.25369 + cimg_forXY(*this,x,y) { 2.25370 + tmp.fill(0); 2.25371 + const float 2.25372 + cu = (float)W(x,y,0,0), 2.25373 + cv = (float)W(x,y,0,1), 2.25374 + n = (float)W(x,y,0,2), 2.25375 + fsigma = (float)(n*sqrt2amplitude), 2.25376 + length = gauss_prec*fsigma, 2.25377 + fsigma2 = 2*fsigma*fsigma; 2.25378 + float 2.25379 + S = 0, 2.25380 + pu = cu, 2.25381 + pv = cv, 2.25382 + X = (float)x, 2.25383 + Y = (float)y; 2.25384 + 2.25385 + switch (interpolation_type) { 2.25386 + 2.25387 + case 0 : { 2.25388 + // Nearest-neighbor interpolation for 2D images 2.25389 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 2.25390 + const int 2.25391 + cx = (int)(X+0.5f), 2.25392 + cy = (int)(Y+0.5f); 2.25393 + float 2.25394 + u = (float)W(cx,cy,0,0), 2.25395 + v = (float)W(cx,cy,0,1); 2.25396 + if ((pu*u + pv*v)<0) { u=-u; v=-v; } 2.25397 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)(*this)(cx,cy,0,k); ++S; } 2.25398 + else { 2.25399 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25400 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*(*this)(cx,cy,0,k)); 2.25401 + S+=coef; 2.25402 + } 2.25403 + X+=(pu=u); Y+=(pv=v); 2.25404 + } 2.25405 + } break; 2.25406 + 2.25407 + case 1 : { 2.25408 + // Linear interpolation for 2D images 2.25409 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 2.25410 + const int 2.25411 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>dx1)?dx1:cx+1, 2.25412 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>dy1)?dy1:cy+1; 2.25413 + const float 2.25414 + curru = (float)W(cx,cy,0,0), 2.25415 + currv = (float)W(cx,cy,0,1); 2.25416 + _cimg_valign2d(px,py); _cimg_valign2d(cx,py); _cimg_valign2d(nx,py); 2.25417 + _cimg_valign2d(px,cy); _cimg_valign2d(nx,cy); 2.25418 + _cimg_valign2d(px,ny); _cimg_valign2d(cx,ny); _cimg_valign2d(nx,ny); 2.25419 + float 2.25420 + u = (float)(W._linear_atXY(X,Y,0,0)), 2.25421 + v = (float)(W._linear_atXY(X,Y,0,1)); 2.25422 + if ((pu*u + pv*v)<0) { u=-u; v=-v; } 2.25423 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)_linear_atXY(X,Y,0,k); ++S; } 2.25424 + else { 2.25425 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25426 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*_linear_atXY(X,Y,0,k)); 2.25427 + S+=coef; 2.25428 + } 2.25429 + X+=(pu=u); Y+=(pv=v); 2.25430 + } 2.25431 + } break; 2.25432 + 2.25433 + default : { 2.25434 + // 2nd-order Runge-kutta interpolation for 2D images 2.25435 + for (float l=0; l<length && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 2.25436 + const int 2.25437 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>dx1)?dx1:cx+1, 2.25438 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>dy1)?dy1:cy+1; 2.25439 + const float 2.25440 + curru = (float)W(cx,cy,0,0), 2.25441 + currv = (float)W(cx,cy,0,1); 2.25442 + _cimg_valign2d(px,py); _cimg_valign2d(cx,py); _cimg_valign2d(nx,py); 2.25443 + _cimg_valign2d(px,cy); _cimg_valign2d(nx,cy); 2.25444 + _cimg_valign2d(px,ny); _cimg_valign2d(cx,ny); _cimg_valign2d(nx,ny); 2.25445 + const float 2.25446 + u0 = (float)(0.5f*W._linear_atXY(X,Y,0,0)), 2.25447 + v0 = (float)(0.5f*W._linear_atXY(X,Y,0,1)); 2.25448 + float 2.25449 + u = (float)(W._linear_atXY(X+u0,Y+v0,0,0)), 2.25450 + v = (float)(W._linear_atXY(X+u0,Y+v0,0,1)); 2.25451 + if ((pu*u + pv*v)<0) { u=-u; v=-v; } 2.25452 + if (fast_approx) { cimg_forV(*this,k) tmp[k]+=(Tfloat)_linear_atXY(X,Y,0,k); ++S; } 2.25453 + else { 2.25454 + const float coef = (float)cimg_std::exp(-l*l/fsigma2); 2.25455 + cimg_forV(*this,k) tmp[k]+=(Tfloat)(coef*_linear_atXY(X,Y,0,k)); 2.25456 + S+=coef; 2.25457 + } 2.25458 + X+=(pu=u); Y+=(pv=v); 2.25459 + } 2.25460 + } 2.25461 + } 2.25462 + if (S>0) cimg_forV(dest,k) dest(x,y,0,k)+=tmp[k]/S; 2.25463 + else cimg_forV(dest,k) dest(x,y,0,k)+=(Tfloat)((*this)(x,y,0,k)); 2.25464 + cimg_plugin_greycstoration_count; 2.25465 + } 2.25466 + } 2.25467 + const Tfloat *ptrs = dest.data+dest.size(); 2.25468 + const T m = cimg::type<T>::min(), M = cimg::type<T>::max(); 2.25469 + cimg_for(*this,ptrd,T) { const Tfloat val = *(--ptrs)/N; *ptrd = val<m?m:(val>M?M:(T)val); } 2.25470 + } 2.25471 + return *this; 2.25472 + } 2.25473 + 2.25474 + template<typename t> 2.25475 + CImg<T> get_blur_anisotropic(const CImg<t>& G, const float amplitude=60, const float dl=0.8f, const float da=30, 2.25476 + const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true) const { 2.25477 + return (+*this).blur_anisotropic(G,amplitude,dl,da,gauss_prec,interpolation_type,fast_approx); 2.25478 + } 2.25479 + 2.25480 + //! Blur an image in an anisotropic way. 2.25481 + /** 2.25482 + \param mask Binary mask. 2.25483 + \param amplitude Amplitude of the anisotropic blur. 2.25484 + \param sharpness Contour preservation. 2.25485 + \param anisotropy Smoothing anisotropy. 2.25486 + \param alpha Image pre-blurring (gaussian). 2.25487 + \param sigma Regularity of the tensor-valued geometry. 2.25488 + \param dl Spatial discretization. 2.25489 + \param da Angular discretization. 2.25490 + \param gauss_prec Precision of the gaussian function. 2.25491 + \param interpolation_type Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta) 2.25492 + \param fast_approx Tell to use the fast approximation or not 2.25493 + \param geom_factor Geometry factor. 2.25494 + **/ 2.25495 + template<typename tm> 2.25496 + CImg<T>& blur_anisotropic(const CImg<tm>& mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, 2.25497 + const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, 2.25498 + const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, 2.25499 + const float geom_factor=1) { 2.25500 + if (!is_empty() && amplitude>0) { 2.25501 + if (amplitude==0) return *this; 2.25502 + if (amplitude<0 || sharpness<0 || anisotropy<0 || anisotropy>1 || alpha<0 || sigma<0 || dl<0 || da<0 || gauss_prec<0) 2.25503 + throw CImgArgumentException("CImg<%s>::blur_anisotropic() : Given parameters are amplitude(%g), sharpness(%g), " 2.25504 + "anisotropy(%g), alpha(%g), sigma(%g), dl(%g), da(%g), gauss_prec(%g).\n" 2.25505 + "Admissible parameters are in the range : amplitude>0, sharpness>0, anisotropy in [0,1], " 2.25506 + "alpha>0, sigma>0, dl>0, da>0, gauss_prec>0.", 2.25507 + pixel_type(),amplitude,sharpness,anisotropy,alpha,sigma,dl,da,gauss_prec); 2.25508 + const bool threed = (depth>1), no_mask = mask.is_empty(); 2.25509 + const float nsharpness = cimg::max(sharpness,1e-5f), power1 = 0.5f*nsharpness, power2 = power1/(1e-7f+1-anisotropy); 2.25510 + CImg<floatT> blurred = CImg<floatT>(*this,false).blur(alpha); 2.25511 + if (geom_factor>0) blurred*=geom_factor; 2.25512 + else blurred.normalize(0,-geom_factor); 2.25513 + 2.25514 + if (threed) { // Field for 3D volumes 2.25515 + cimg_plugin_greycstoration_lock; 2.25516 + CImg<floatT> val(3), vec(3,3), G(blurred.get_structure_tensor()); 2.25517 + if (sigma>0) G.blur(sigma); 2.25518 + cimg_forXYZ(*this,x,y,z) { 2.25519 + if (no_mask || mask(x,y,z)) { 2.25520 + G.get_tensor_at(x,y,z).symmetric_eigen(val,vec); 2.25521 + const float l1 = val[2], l2 = val[1], l3 = val[0], 2.25522 + ux = vec(0,0), uy = vec(0,1), uz = vec(0,2), 2.25523 + vx = vec(1,0), vy = vec(1,1), vz = vec(1,2), 2.25524 + wx = vec(2,0), wy = vec(2,1), wz = vec(2,2), 2.25525 + n1 = (float)cimg_std::pow(1+l1+l2+l3,-power1), 2.25526 + n2 = (float)cimg_std::pow(1+l1+l2+l3,-power2); 2.25527 + G(x,y,z,0) = n1*(ux*ux + vx*vx) + n2*wx*wx; 2.25528 + G(x,y,z,1) = n1*(ux*uy + vx*vy) + n2*wx*wy; 2.25529 + G(x,y,z,2) = n1*(ux*uz + vx*vz) + n2*wx*wz; 2.25530 + G(x,y,z,3) = n1*(uy*uy + vy*vy) + n2*wy*wy; 2.25531 + G(x,y,z,4) = n1*(uy*uz + vy*vz) + n2*wy*wz; 2.25532 + G(x,y,z,5) = n1*(uz*uz + vz*vz) + n2*wz*wz; 2.25533 + } else G(x,y,z,0) = G(x,y,z,1) = G(x,y,z,2) = G(x,y,z,3) = G(x,y,z,4) = G(x,y,z,5) = 0; 2.25534 + cimg_plugin_greycstoration_count; 2.25535 + } 2.25536 + cimg_plugin_greycstoration_unlock; 2.25537 + blur_anisotropic(G,amplitude,dl,da,gauss_prec,interpolation_type,fast_approx); 2.25538 + } else { // Field for 2D images 2.25539 + cimg_plugin_greycstoration_lock; 2.25540 + CImg<floatT> val(2), vec(2,2), G(blurred.get_structure_tensor()); 2.25541 + if (sigma>0) G.blur(sigma); 2.25542 + cimg_forXY(*this,x,y) { 2.25543 + if (no_mask || mask(x,y)) { 2.25544 + G.get_tensor_at(x,y).symmetric_eigen(val,vec); 2.25545 + const float l1 = val[1], l2 = val[0], 2.25546 + ux = vec(1,0), uy = vec(1,1), 2.25547 + vx = vec(0,0), vy = vec(0,1), 2.25548 + n1 = (float)cimg_std::pow(1+l1+l2,-power1), 2.25549 + n2 = (float)cimg_std::pow(1+l1+l2,-power2); 2.25550 + G(x,y,0,0) = n1*ux*ux + n2*vx*vx; 2.25551 + G(x,y,0,1) = n1*ux*uy + n2*vx*vy; 2.25552 + G(x,y,0,2) = n1*uy*uy + n2*vy*vy; 2.25553 + } else G(x,y,0,0) = G(x,y,0,1) = G(x,y,0,2) = 0; 2.25554 + cimg_plugin_greycstoration_count; 2.25555 + } 2.25556 + cimg_plugin_greycstoration_unlock; 2.25557 + blur_anisotropic(G,amplitude,dl,da,gauss_prec,interpolation_type,fast_approx); 2.25558 + } 2.25559 + } 2.25560 + return *this; 2.25561 + } 2.25562 + 2.25563 + template<typename tm> 2.25564 + CImg<T> get_blur_anisotropic(const CImg<tm>& mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, 2.25565 + const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, 2.25566 + const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, 2.25567 + const bool fast_approx=true, const float geom_factor=1) const { 2.25568 + return (+*this).blur_anisotropic(mask,amplitude,sharpness,anisotropy,alpha,sigma,dl,da,gauss_prec,interpolation_type,fast_approx,geom_factor); 2.25569 + } 2.25570 + 2.25571 + //! Blur an image following in an anisotropic way. 2.25572 + CImg<T>& blur_anisotropic(const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, 2.25573 + const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, 2.25574 + const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, 2.25575 + const float geom_factor=1) { 2.25576 + return blur_anisotropic(CImg<T>(),amplitude,sharpness,anisotropy,alpha,sigma,dl,da,gauss_prec,interpolation_type,fast_approx,geom_factor); 2.25577 + } 2.25578 + 2.25579 + CImg<T> get_blur_anisotropic(const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, 2.25580 + const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, 2.25581 + const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, 2.25582 + const bool fast_approx=true, const float geom_factor=1) const { 2.25583 + return (+*this).blur_anisotropic(amplitude,sharpness,anisotropy,alpha,sigma,dl,da,gauss_prec,interpolation_type,fast_approx,geom_factor); 2.25584 + } 2.25585 + 2.25586 + //! Blur an image using the bilateral filter. 2.25587 + /** 2.25588 + \param sigmax Amount of blur along the X-axis. 2.25589 + \param sigmay Amount of blur along the Y-axis. 2.25590 + \param sigmaz Amount of blur along the Z-axis. 2.25591 + \param sigmar Amount of blur along the range axis. 2.25592 + \param bgridx Size of the bilateral grid along the X-axis. 2.25593 + \param bgridy Size of the bilateral grid along the Y-axis. 2.25594 + \param bgridz Size of the bilateral grid along the Z-axis. 2.25595 + \param bgridr Size of the bilateral grid along the range axis. 2.25596 + \param interpolation_type Use interpolation for image slicing. 2.25597 + \note This algorithm uses the optimisation technique proposed by S. Paris and F. Durand, in ECCV'2006 2.25598 + (extended for 3D volumetric images). 2.25599 + **/ 2.25600 + CImg<T>& blur_bilateral(const float sigmax, const float sigmay, const float sigmaz, const float sigmar, 2.25601 + const int bgridx, const int bgridy, const int bgridz, const int bgridr, 2.25602 + const bool interpolation_type=true) { 2.25603 + T m, M = maxmin(m); 2.25604 + const float range = (float)(1.0f+M-m); 2.25605 + const unsigned int 2.25606 + bx0 = bgridx>=0?bgridx:width*(-bgridx)/100, 2.25607 + by0 = bgridy>=0?bgridy:height*(-bgridy)/100, 2.25608 + bz0 = bgridz>=0?bgridz:depth*(-bgridz)/100, 2.25609 + br0 = bgridr>=0?bgridr:(int)(-range*bgridr/100), 2.25610 + bx = bx0>0?bx0:1, 2.25611 + by = by0>0?by0:1, 2.25612 + bz = bz0>0?bz0:1, 2.25613 + br = br0>0?br0:1; 2.25614 + const float 2.25615 + nsigmax = sigmax*bx/width, 2.25616 + nsigmay = sigmay*by/height, 2.25617 + nsigmaz = sigmaz*bz/depth, 2.25618 + nsigmar = sigmar*br/range; 2.25619 + if (nsigmax>0 || nsigmay>0 || nsigmaz>0 || nsigmar>0) { 2.25620 + const bool threed = depth>1; 2.25621 + if (threed) { // 3d version of the algorithm 2.25622 + CImg<floatT> bgrid(bx,by,bz,br), bgridw(bx,by,bz,br); 2.25623 + cimg_forV(*this,k) { 2.25624 + bgrid.fill(0); bgridw.fill(0); 2.25625 + cimg_forXYZ(*this,x,y,z) { 2.25626 + const T val = (*this)(x,y,z,k); 2.25627 + const int X = x*bx/width, Y = y*by/height, Z = z*bz/depth, R = (int)((val-m)*br/range); 2.25628 + bgrid(X,Y,Z,R) = (float)val; 2.25629 + bgridw(X,Y,Z,R) = 1; 2.25630 + } 2.25631 + bgrid.blur(nsigmax,nsigmay,nsigmaz,true).deriche(nsigmar,0,'v',false); 2.25632 + bgridw.blur(nsigmax,nsigmay,nsigmaz,true).deriche(nsigmar,0,'v',false); 2.25633 + if (interpolation_type) cimg_forXYZ(*this,x,y,z) { 2.25634 + const T val = (*this)(x,y,z,k); 2.25635 + const float X = (float)x*bx/width, Y = (float)y*by/height, Z = (float)z*bz/depth, R = (float)((val-m)*br/range), 2.25636 + bval0 = bgrid._linear_atXYZV(X,Y,Z,R), bval1 = bgridw._linear_atXYZV(X,Y,Z,R); 2.25637 + (*this)(x,y,z,k) = (T)(bval0/bval1); 2.25638 + } else cimg_forXYZ(*this,x,y,z) { 2.25639 + const T val = (*this)(x,y,z,k); 2.25640 + const int X = x*bx/width, Y = y*by/height, Z = z*bz/depth, R = (int)((val-m)*br/range); 2.25641 + const float bval0 = bgrid(X,Y,Z,R), bval1 = bgridw(X,Y,Z,R); 2.25642 + (*this)(x,y,z,k) = (T)(bval0/bval1); 2.25643 + } 2.25644 + } 2.25645 + } else { // 2d version of the algorithm 2.25646 + CImg<floatT> bgrid(bx,by,br,2); 2.25647 + cimg_forV(*this,k) { 2.25648 + bgrid.fill(0); 2.25649 + cimg_forXY(*this,x,y) { 2.25650 + const T val = (*this)(x,y,k); 2.25651 + const int X = x*bx/width, Y = y*by/height, R = (int)((val-m)*br/range); 2.25652 + bgrid(X,Y,R,0) = (float)val; 2.25653 + bgrid(X,Y,R,1) = 1; 2.25654 + } 2.25655 + bgrid.blur(nsigmax,nsigmay,0,true).blur(0,0,nsigmar,false); 2.25656 + if (interpolation_type) cimg_forXY(*this,x,y) { 2.25657 + const T val = (*this)(x,y,k); 2.25658 + const float X = (float)x*bx/width, Y = (float)y*by/height, R = (float)((val-m)*br/range), 2.25659 + bval0 = bgrid._linear_atXYZ(X,Y,R,0), bval1 = bgrid._linear_atXYZ(X,Y,R,1); 2.25660 + (*this)(x,y,k) = (T)(bval0/bval1); 2.25661 + } else cimg_forXY(*this,x,y) { 2.25662 + const T val = (*this)(x,y,k); 2.25663 + const int X = x*bx/width, Y = y*by/height, R = (int)((val-m)*br/range); 2.25664 + const float bval0 = bgrid(X,Y,R,0), bval1 = bgrid(X,Y,R,1); 2.25665 + (*this)(x,y,k) = (T)(bval0/bval1); 2.25666 + } 2.25667 + } 2.25668 + } 2.25669 + } 2.25670 + return *this; 2.25671 + } 2.25672 + 2.25673 + CImg<T> get_blur_bilateral(const float sigmax, const float sigmay, const float sigmaz, const float sigmar, 2.25674 + const int bgridx, const int bgridy, const int bgridz, const int bgridr, 2.25675 + const bool interpolation_type=true) const { 2.25676 + return (+*this).blur_bilateral(sigmax,sigmay,sigmaz,sigmar,bgridx,bgridy,bgridz,bgridr,interpolation_type); 2.25677 + } 2.25678 + 2.25679 + //! Blur an image using the bilateral filter. 2.25680 + CImg<T>& blur_bilateral(const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, 2.25681 + const bool interpolation_type=true) { 2.25682 + return blur_bilateral(sigmas,sigmas,sigmas,sigmar,bgrids,bgrids,bgrids,bgridr,interpolation_type); 2.25683 + } 2.25684 + 2.25685 + CImg<T> get_blur_bilateral(const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, 2.25686 + const bool interpolation_type=true) const { 2.25687 + return (+*this).blur_bilateral(sigmas,sigmas,sigmas,sigmar,bgrids,bgrids,bgrids,bgridr,interpolation_type); 2.25688 + } 2.25689 + 2.25690 + //! Blur an image in its patch-based space. 2.25691 + CImg<T>& blur_patch(const unsigned int patch_size, const float sigma_p, const float sigma_s=10, 2.25692 + const unsigned int lookup_size=4, const bool fast_approx=true) { 2.25693 + 2.25694 +#define _cimg_blur_patch_fastfunc(x) ((x)>3?0:1) 2.25695 +#define _cimg_blur_patch_slowfunc(x) cimg_std::exp(-(x)) 2.25696 +#define _cimg_blur_patch3d(N,func) { \ 2.25697 + const unsigned int N3 = N*N*N; \ 2.25698 + cimg_for##N##XYZ(*this,x,y,z) { \ 2.25699 + cimg_plugin_greycstoration_count; \ 2.25700 + cimg_forV(*this,k) cimg_get##N##x##N##x##N(*this,x,y,z,k,P.ptr(N3*k)); \ 2.25701 + const int x0 = x - rsize1, y0 = y - rsize1, z0 = z - rsize1, x1 = x + rsize2, y1 = y + rsize2, z1 = z + rsize2; \ 2.25702 + float sum_weights = 0; \ 2.25703 + cimg_for_in##N##XYZ(*this,x0,y0,z0,x1,y1,z1,p,q,r) { \ 2.25704 + cimg_forV(*this,k) cimg_get##N##x##N##x##N(*this,p,q,r,k,Q.ptr(N3*k)); \ 2.25705 + float distance2 = 0; \ 2.25706 + const T *pQ = Q.end(); \ 2.25707 + cimg_for(P,pP,T) { const float dI = (float)*pP - (float)*(--pQ); distance2+=dI*dI; } \ 2.25708 + distance2/=Pnorm; \ 2.25709 + const float dx = (float)p - x, dy = (float)q - y, dz = (float)r - z, \ 2.25710 + alldist = distance2 + (dx*dx + dy*dy + dz*dz)/sigma_s2, weight = (float)func(alldist); \ 2.25711 + sum_weights+=weight; \ 2.25712 + { cimg_forV(*this,k) res(x,y,z,k)+=weight*(*this)(p,q,r,k); } \ 2.25713 + } \ 2.25714 + if (sum_weights>0) cimg_forV(*this,k) res(x,y,z,k)/=sum_weights; else cimg_forV(*this,k) res(x,y,z,k) = (Tfloat)((*this)(x,y,z,k)); \ 2.25715 + }} 2.25716 +#define _cimg_blur_patch2d(N,func) { \ 2.25717 + const unsigned int N2 = N*N; \ 2.25718 + cimg_for##N##XY(*this,x,y) { \ 2.25719 + cimg_plugin_greycstoration_count; \ 2.25720 + cimg_forV(*this,k) cimg_get##N##x##N(*this,x,y,0,k,P.ptr(N2*k)); \ 2.25721 + const int x0 = x-rsize1, y0 = y-rsize1, x1 = x+rsize2, y1 = y+rsize2; \ 2.25722 + float sum_weights = 0; \ 2.25723 + cimg_for_in##N##XY(*this,x0,y0,x1,y1,p,q) { \ 2.25724 + cimg_forV(*this,k) cimg_get##N##x##N(*this,p,q,0,k,Q.ptr(N2*k)); \ 2.25725 + float distance2 = 0; \ 2.25726 + const T *pQ = Q.end(); \ 2.25727 + cimg_for(P,pP,T) { const float dI = (float)*pP-(float)*(--pQ); distance2+=dI*dI; } \ 2.25728 + distance2/=Pnorm; \ 2.25729 + const float dx = (float)p-x, dy = (float)q-y, \ 2.25730 + alldist = distance2 + (dx*dx+dy*dy)/sigma_s2, weight = (float)func(alldist); \ 2.25731 + sum_weights+=weight; \ 2.25732 + { cimg_forV(*this,k) res(x,y,k)+=weight*(*this)(p,q,k); } \ 2.25733 + } \ 2.25734 + if (sum_weights>0) cimg_forV(*this,k) res(x,y,k)/=sum_weights; else cimg_forV(*this,k) res(x,y,k) = (Tfloat)((*this)(x,y,k)); \ 2.25735 + }} 2.25736 + 2.25737 + CImg<Tfloat> res(width,height,depth,dim,0); 2.25738 + CImg<T> P(patch_size*patch_size*dim), Q(P); 2.25739 + const float sigma_s2 = sigma_s*sigma_s, sigma_p2 = sigma_p*sigma_p, Pnorm = P.size()*sigma_p2; 2.25740 + const int rsize2 = (int)lookup_size/2, rsize1 = rsize2-1+(lookup_size%2); 2.25741 + if (depth>1) switch (patch_size) { // 3D version 2.25742 + case 2 : 2.25743 + if (fast_approx) { _cimg_blur_patch3d(2,_cimg_blur_patch_fastfunc); } 2.25744 + else { _cimg_blur_patch3d(2,_cimg_blur_patch_slowfunc); } 2.25745 + break; 2.25746 + case 3 : 2.25747 + if (fast_approx) { _cimg_blur_patch3d(3,_cimg_blur_patch_fastfunc); } 2.25748 + else { _cimg_blur_patch3d(3,_cimg_blur_patch_slowfunc); } 2.25749 + break; 2.25750 + default : { 2.25751 + const int psize1 = (int)patch_size/2, psize0 = psize1-1+(patch_size%2); 2.25752 + cimg_forXYZ(*this,x,y,z) { 2.25753 + cimg_plugin_greycstoration_count; 2.25754 + P = get_crop(x - psize0,y - psize0,z - psize0,x + psize1,y + psize1,z + psize1,true); 2.25755 + const int x0 = x - rsize1, y0 = y - rsize1, z0 = z - rsize1, x1 = x + rsize2, y1 = y + rsize2, z1 = z + rsize2; 2.25756 + float sum_weights = 0; 2.25757 + cimg_for_inXYZ(*this,x0,y0,z0,x1,y1,z1,p,q,r) { 2.25758 + (Q = get_crop(p - psize0,q - psize0,r - psize0,p + psize1,q + psize1,r + psize1,true))-=P; 2.25759 + const float 2.25760 + dx = (float)x - p, dy = (float)y - q, dz = (float)z - r, 2.25761 + distance2 = (float)(Q.pow(2).sum()/Pnorm + (dx*dx + dy*dy + dz*dz)/sigma_s2), 2.25762 + weight = (float)cimg_std::exp(-distance2); 2.25763 + sum_weights+=weight; 2.25764 + cimg_forV(*this,k) res(x,y,z,k)+=weight*(*this)(p,q,r,k); 2.25765 + } 2.25766 + if (sum_weights>0) cimg_forV(*this,k) res(x,y,z,k)/=sum_weights; else cimg_forV(*this,k) res(x,y,z,k) = (Tfloat)((*this)(x,y,z,k)); 2.25767 + } 2.25768 + } 2.25769 + } else switch (patch_size) { // 2D version 2.25770 + case 2 : 2.25771 + if (fast_approx) { _cimg_blur_patch2d(2,_cimg_blur_patch_fastfunc); } 2.25772 + else { _cimg_blur_patch2d(2,_cimg_blur_patch_slowfunc); } 2.25773 + break; 2.25774 + case 3 : 2.25775 + if (fast_approx) { _cimg_blur_patch2d(3,_cimg_blur_patch_fastfunc); } 2.25776 + else { _cimg_blur_patch2d(3,_cimg_blur_patch_slowfunc); } 2.25777 + break; 2.25778 + case 4 : 2.25779 + if (fast_approx) { _cimg_blur_patch2d(4,_cimg_blur_patch_fastfunc); } 2.25780 + else { _cimg_blur_patch2d(4,_cimg_blur_patch_slowfunc); } 2.25781 + break; 2.25782 + case 5 : 2.25783 + if (fast_approx) { _cimg_blur_patch2d(5,_cimg_blur_patch_fastfunc); } 2.25784 + else { _cimg_blur_patch2d(5,_cimg_blur_patch_slowfunc); } 2.25785 + break; 2.25786 + case 6 : 2.25787 + if (fast_approx) { _cimg_blur_patch2d(6,_cimg_blur_patch_fastfunc); } 2.25788 + else { _cimg_blur_patch2d(6,_cimg_blur_patch_slowfunc); } 2.25789 + break; 2.25790 + case 7 : 2.25791 + if (fast_approx) { _cimg_blur_patch2d(7,_cimg_blur_patch_fastfunc); } 2.25792 + else { _cimg_blur_patch2d(7,_cimg_blur_patch_slowfunc); } 2.25793 + break; 2.25794 + case 8 : 2.25795 + if (fast_approx) { _cimg_blur_patch2d(8,_cimg_blur_patch_fastfunc); } 2.25796 + else { _cimg_blur_patch2d(8,_cimg_blur_patch_slowfunc); } 2.25797 + break; 2.25798 + case 9 : 2.25799 + if (fast_approx) { _cimg_blur_patch2d(9,_cimg_blur_patch_fastfunc); } 2.25800 + else { _cimg_blur_patch2d(9,_cimg_blur_patch_slowfunc); } 2.25801 + break; 2.25802 + default : { 2.25803 + const int psize1 = (int)patch_size/2, psize0 = psize1-1+(patch_size%2); 2.25804 + cimg_forXY(*this,x,y) { 2.25805 + cimg_plugin_greycstoration_count; 2.25806 + P = get_crop(x - psize0,y - psize0,x + psize1,y + psize1,true); 2.25807 + const int x0 = x - rsize1, y0 = y - rsize1, x1 = x + rsize2, y1 = y + rsize2; 2.25808 + float sum_weights = 0; 2.25809 + cimg_for_inXY(*this,x0,y0,x1,y1,p,q) { 2.25810 + (Q = get_crop(p - psize0,q - psize0,p + psize1,q + psize1,true))-=P; 2.25811 + const float 2.25812 + dx = (float)x - p, dy = (float)y - q, 2.25813 + distance2 = (float)(Q.pow(2).sum()/Pnorm + (dx*dx + dy*dy)/sigma_s2), 2.25814 + weight = (float)cimg_std::exp(-distance2); 2.25815 + sum_weights+=weight; 2.25816 + cimg_forV(*this,k) res(x,y,0,k)+=weight*(*this)(p,q,0,k); 2.25817 + } 2.25818 + if (sum_weights>0) cimg_forV(*this,k) res(x,y,0,k)/=sum_weights; else cimg_forV(*this,k) res(x,y,0,k) = (Tfloat)((*this)(x,y,0,k)); 2.25819 + } 2.25820 + } 2.25821 + } 2.25822 + return res.transfer_to(*this); 2.25823 + } 2.25824 + 2.25825 + CImg<T> get_blur_patch(const unsigned int patch_size, const float sigma_p, const float sigma_s=10, 2.25826 + const unsigned int lookup_size=4, const bool fast_approx=true) const { 2.25827 + return (+*this).blur_patch(patch_size,sigma_p,sigma_s,lookup_size,fast_approx); 2.25828 + } 2.25829 + 2.25830 + //! Compute the Fast Fourier Transform of an image (along a specified axis). 2.25831 + CImgList<Tfloat> get_FFT(const char axis, const bool invert=false) const { 2.25832 + return CImgList<Tfloat>(*this).FFT(axis,invert); 2.25833 + } 2.25834 + 2.25835 + //! Compute the Fast Fourier Transform on an image. 2.25836 + CImgList<Tfloat> get_FFT(const bool invert=false) const { 2.25837 + return CImgList<Tfloat>(*this).FFT(invert); 2.25838 + } 2.25839 + 2.25840 + //! Apply a median filter. 2.25841 + CImg<T>& blur_median(const unsigned int n) { 2.25842 + return get_blur_median(n).transfer_to(*this); 2.25843 + } 2.25844 + 2.25845 + CImg<T> get_blur_median(const unsigned int n) { 2.25846 + CImg<T> res(width,height,depth,dim); 2.25847 + if (!n || n==1) return *this; 2.25848 + const int hl=n/2, hr=hl-1+n%2; 2.25849 + if (res.depth!=1) { // 3D median filter 2.25850 + CImg<T> vois; 2.25851 + cimg_forXYZV(*this,x,y,z,k) { 2.25852 + const int 2.25853 + x0 = x - hl, y0 = y - hl, z0 = z-hl, x1 = x + hr, y1 = y + hr, z1 = z+hr, 2.25854 + nx0 = x0<0?0:x0, ny0 = y0<0?0:y0, nz0 = z0<0?0:z0, 2.25855 + nx1 = x1>=dimx()?dimx()-1:x1, ny1 = y1>=dimy()?dimy()-1:y1, nz1 = z1>=dimz()?dimz()-1:z1; 2.25856 + vois = get_crop(nx0,ny0,nz0,k,nx1,ny1,nz1,k); 2.25857 + res(x,y,z,k) = vois.median(); 2.25858 + } 2.25859 + } else { 2.25860 +#define _cimg_median_sort(a,b) if ((a)>(b)) cimg::swap(a,b) 2.25861 + if (res.height!=1) switch (n) { // 2D median filter 2.25862 + case 3 : { 2.25863 + T I[9] = { 0 }; 2.25864 + CImg_3x3(J,T); 2.25865 + cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { 2.25866 + cimg_std::memcpy(J,I,9*sizeof(T)); 2.25867 + _cimg_median_sort(Jcp, Jnp); _cimg_median_sort(Jcc, Jnc); _cimg_median_sort(Jcn, Jnn); 2.25868 + _cimg_median_sort(Jpp, Jcp); _cimg_median_sort(Jpc, Jcc); _cimg_median_sort(Jpn, Jcn); 2.25869 + _cimg_median_sort(Jcp, Jnp); _cimg_median_sort(Jcc, Jnc); _cimg_median_sort(Jcn, Jnn); 2.25870 + _cimg_median_sort(Jpp, Jpc); _cimg_median_sort(Jnc, Jnn); _cimg_median_sort(Jcc, Jcn); 2.25871 + _cimg_median_sort(Jpc, Jpn); _cimg_median_sort(Jcp, Jcc); _cimg_median_sort(Jnp, Jnc); 2.25872 + _cimg_median_sort(Jcc, Jcn); _cimg_median_sort(Jcc, Jnp); _cimg_median_sort(Jpn, Jcc); 2.25873 + _cimg_median_sort(Jcc, Jnp); 2.25874 + res(x,y,0,k) = Jcc; 2.25875 + } 2.25876 + } break; 2.25877 + case 5 : { 2.25878 + T I[25] = { 0 }; 2.25879 + CImg_5x5(J,T); 2.25880 + cimg_forV(*this,k) cimg_for5x5(*this,x,y,0,k,I) { 2.25881 + cimg_std::memcpy(J,I,25*sizeof(T)); 2.25882 + _cimg_median_sort(Jbb, Jpb); _cimg_median_sort(Jnb, Jab); _cimg_median_sort(Jcb, Jab); _cimg_median_sort(Jcb, Jnb); 2.25883 + _cimg_median_sort(Jpp, Jcp); _cimg_median_sort(Jbp, Jcp); _cimg_median_sort(Jbp, Jpp); _cimg_median_sort(Jap, Jbc); 2.25884 + _cimg_median_sort(Jnp, Jbc); _cimg_median_sort(Jnp, Jap); _cimg_median_sort(Jcc, Jnc); _cimg_median_sort(Jpc, Jnc); 2.25885 + _cimg_median_sort(Jpc, Jcc); _cimg_median_sort(Jbn, Jpn); _cimg_median_sort(Jac, Jpn); _cimg_median_sort(Jac, Jbn); 2.25886 + _cimg_median_sort(Jnn, Jan); _cimg_median_sort(Jcn, Jan); _cimg_median_sort(Jcn, Jnn); _cimg_median_sort(Jpa, Jca); 2.25887 + _cimg_median_sort(Jba, Jca); _cimg_median_sort(Jba, Jpa); _cimg_median_sort(Jna, Jaa); _cimg_median_sort(Jcb, Jbp); 2.25888 + _cimg_median_sort(Jnb, Jpp); _cimg_median_sort(Jbb, Jpp); _cimg_median_sort(Jbb, Jnb); _cimg_median_sort(Jab, Jcp); 2.25889 + _cimg_median_sort(Jpb, Jcp); _cimg_median_sort(Jpb, Jab); _cimg_median_sort(Jpc, Jac); _cimg_median_sort(Jnp, Jac); 2.25890 + _cimg_median_sort(Jnp, Jpc); _cimg_median_sort(Jcc, Jbn); _cimg_median_sort(Jap, Jbn); _cimg_median_sort(Jap, Jcc); 2.25891 + _cimg_median_sort(Jnc, Jpn); _cimg_median_sort(Jbc, Jpn); _cimg_median_sort(Jbc, Jnc); _cimg_median_sort(Jba, Jna); 2.25892 + _cimg_median_sort(Jcn, Jna); _cimg_median_sort(Jcn, Jba); _cimg_median_sort(Jpa, Jaa); _cimg_median_sort(Jnn, Jaa); 2.25893 + _cimg_median_sort(Jnn, Jpa); _cimg_median_sort(Jan, Jca); _cimg_median_sort(Jnp, Jcn); _cimg_median_sort(Jap, Jnn); 2.25894 + _cimg_median_sort(Jbb, Jnn); _cimg_median_sort(Jbb, Jap); _cimg_median_sort(Jbc, Jan); _cimg_median_sort(Jpb, Jan); 2.25895 + _cimg_median_sort(Jpb, Jbc); _cimg_median_sort(Jpc, Jba); _cimg_median_sort(Jcb, Jba); _cimg_median_sort(Jcb, Jpc); 2.25896 + _cimg_median_sort(Jcc, Jpa); _cimg_median_sort(Jnb, Jpa); _cimg_median_sort(Jnb, Jcc); _cimg_median_sort(Jnc, Jca); 2.25897 + _cimg_median_sort(Jab, Jca); _cimg_median_sort(Jab, Jnc); _cimg_median_sort(Jac, Jna); _cimg_median_sort(Jbp, Jna); 2.25898 + _cimg_median_sort(Jbp, Jac); _cimg_median_sort(Jbn, Jaa); _cimg_median_sort(Jpp, Jaa); _cimg_median_sort(Jpp, Jbn); 2.25899 + _cimg_median_sort(Jcp, Jpn); _cimg_median_sort(Jcp, Jan); _cimg_median_sort(Jnc, Jpa); _cimg_median_sort(Jbn, Jna); 2.25900 + _cimg_median_sort(Jcp, Jnc); _cimg_median_sort(Jcp, Jbn); _cimg_median_sort(Jpb, Jap); _cimg_median_sort(Jnb, Jpc); 2.25901 + _cimg_median_sort(Jbp, Jcn); _cimg_median_sort(Jpc, Jcn); _cimg_median_sort(Jap, Jcn); _cimg_median_sort(Jab, Jbc); 2.25902 + _cimg_median_sort(Jpp, Jcc); _cimg_median_sort(Jcp, Jac); _cimg_median_sort(Jab, Jpp); _cimg_median_sort(Jab, Jcp); 2.25903 + _cimg_median_sort(Jcc, Jac); _cimg_median_sort(Jbc, Jac); _cimg_median_sort(Jpp, Jcp); _cimg_median_sort(Jbc, Jcc); 2.25904 + _cimg_median_sort(Jpp, Jbc); _cimg_median_sort(Jpp, Jcn); _cimg_median_sort(Jcc, Jcn); _cimg_median_sort(Jcp, Jcn); 2.25905 + _cimg_median_sort(Jcp, Jbc); _cimg_median_sort(Jcc, Jnn); _cimg_median_sort(Jcp, Jcc); _cimg_median_sort(Jbc, Jnn); 2.25906 + _cimg_median_sort(Jcc, Jba); _cimg_median_sort(Jbc, Jba); _cimg_median_sort(Jbc, Jcc); 2.25907 + res(x,y,0,k) = Jcc; 2.25908 + } 2.25909 + } break; 2.25910 + default : { 2.25911 + CImg<T> vois; 2.25912 + cimg_forXYV(*this,x,y,k) { 2.25913 + const int 2.25914 + x0 = x - hl, y0 = y - hl, x1 = x + hr, y1 = y + hr, 2.25915 + nx0 = x0<0?0:x0, ny0 = y0<0?0:y0, 2.25916 + nx1 = x1>=dimx()?dimx()-1:x1, ny1 = y1>=dimy()?dimy()-1:y1; 2.25917 + vois = get_crop(nx0,ny0,0,k,nx1,ny1,0,k); 2.25918 + res(x,y,0,k) = vois.median(); 2.25919 + } 2.25920 + } 2.25921 + } else switch (n) { // 1D median filter 2.25922 + case 2 : { 2.25923 + T I[4] = { 0 }; 2.25924 + cimg_forV(*this,k) cimg_for2x2(*this,x,y,0,k,I) res(x,0,0,k) = (T)(0.5f*(I[0]+I[1])); 2.25925 + } break; 2.25926 + case 3 : { 2.25927 + T I[9] = { 0 }; 2.25928 + cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { 2.25929 + res(x,0,0,k) = I[3]<I[4]? 2.25930 + (I[4]<I[5]?I[4]: 2.25931 + (I[3]<I[5]?I[5]:I[3])): 2.25932 + (I[3]<I[5]?I[3]: 2.25933 + (I[4]<I[5]?I[5]:I[4])); 2.25934 + } 2.25935 + } break; 2.25936 + default : { 2.25937 + CImg<T> vois; 2.25938 + cimg_forXV(*this,x,k) { 2.25939 + const int 2.25940 + x0 = x - hl, x1 = x + hr, 2.25941 + nx0 = x0<0?0:x0, nx1 = x1>=dimx()?dimx()-1:x1; 2.25942 + vois = get_crop(nx0,0,0,k,nx1,0,0,k); 2.25943 + res(x,0,0,k) = vois.median(); 2.25944 + } 2.25945 + } 2.25946 + } 2.25947 + } 2.25948 + return res; 2.25949 + } 2.25950 + 2.25951 + //! Sharpen image using anisotropic shock filters or inverse diffusion. 2.25952 + CImg<T>& sharpen(const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0) { 2.25953 + if (is_empty()) return *this; 2.25954 + T valm, valM = maxmin(valm); 2.25955 + const bool threed = (depth>1); 2.25956 + const float nedge = 0.5f*edge; 2.25957 + CImg<Tfloat> val, vec, veloc(width,height,depth,dim); 2.25958 + 2.25959 + if (threed) { 2.25960 + CImg_3x3x3(I,T); 2.25961 + if (sharpen_type) { // 3D Shock filter. 2.25962 + CImg<Tfloat> G = (alpha>0?get_blur(alpha).get_structure_tensor():get_structure_tensor()); 2.25963 + if (sigma>0) G.blur(sigma); 2.25964 + 2.25965 + cimg_forXYZ(G,x,y,z) { 2.25966 + G.get_tensor_at(x,y,z).symmetric_eigen(val,vec); 2.25967 + G(x,y,z,0) = vec(0,0); 2.25968 + G(x,y,z,1) = vec(0,1); 2.25969 + G(x,y,z,2) = vec(0,2); 2.25970 + G(x,y,z,3) = 1 - (Tfloat)cimg_std::pow(1+val[0]+val[1]+val[2],-(Tfloat)nedge); 2.25971 + } 2.25972 + cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) { 2.25973 + const Tfloat 2.25974 + u = G(x,y,z,0), 2.25975 + v = G(x,y,z,1), 2.25976 + w = G(x,y,z,2), 2.25977 + amp = G(x,y,z,3), 2.25978 + ixx = (Tfloat)Incc + Ipcc - 2*Iccc, 2.25979 + ixy = 0.25f*((Tfloat)Innc + Ippc - Inpc - Ipnc), 2.25980 + ixz = 0.25f*((Tfloat)Incn + Ipcp - Incp - Ipcn), 2.25981 + iyy = (Tfloat)Icnc + Icpc - 2*Iccc, 2.25982 + iyz = 0.25f*((Tfloat)Icnn + Icpp - Icnp - Icpn), 2.25983 + izz = (Tfloat)Iccn + Iccp - 2*Iccc, 2.25984 + ixf = (Tfloat)Incc - Iccc, 2.25985 + ixb = (Tfloat)Iccc - Ipcc, 2.25986 + iyf = (Tfloat)Icnc - Iccc, 2.25987 + iyb = (Tfloat)Iccc - Icpc, 2.25988 + izf = (Tfloat)Iccn - Iccc, 2.25989 + izb = (Tfloat)Iccc - Iccp, 2.25990 + itt = u*u*ixx + v*v*iyy + w*w*izz + 2*u*v*ixy + 2*u*w*ixz + 2*v*w*iyz, 2.25991 + it = u*cimg::minmod(ixf,ixb) + v*cimg::minmod(iyf,iyb) + w*cimg::minmod(izf,izb); 2.25992 + veloc(x,y,z,k) = -amp*cimg::sign(itt)*cimg::abs(it); 2.25993 + } 2.25994 + } else cimg_forV(*this,k) cimg_for3x3x3(*this,x,y,z,k,I) veloc(x,y,z,k) = -(Tfloat)Ipcc-Incc-Icpc-Icnc-Iccp-Iccn+6*Iccc; // 3D Inverse diffusion. 2.25995 + } else { 2.25996 + CImg_3x3(I,T); 2.25997 + if (sharpen_type) { // 2D Shock filter. 2.25998 + CImg<Tfloat> G = (alpha>0?get_blur(alpha).get_structure_tensor():get_structure_tensor()); 2.25999 + if (sigma>0) G.blur(sigma); 2.26000 + cimg_forXY(G,x,y) { 2.26001 + G.get_tensor_at(x,y).symmetric_eigen(val,vec); 2.26002 + G(x,y,0) = vec(0,0); 2.26003 + G(x,y,1) = vec(0,1); 2.26004 + G(x,y,2) = 1 - (Tfloat)cimg_std::pow(1+val[0]+val[1],-(Tfloat)nedge); 2.26005 + } 2.26006 + cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) { 2.26007 + const Tfloat 2.26008 + u = G(x,y,0), 2.26009 + v = G(x,y,1), 2.26010 + amp = G(x,y,2), 2.26011 + ixx = (Tfloat)Inc + Ipc - 2*Icc, 2.26012 + ixy = 0.25f*((Tfloat)Inn + Ipp - Inp - Ipn), 2.26013 + iyy = (Tfloat)Icn + Icp - 2*Icc, 2.26014 + ixf = (Tfloat)Inc - Icc, 2.26015 + ixb = (Tfloat)Icc - Ipc, 2.26016 + iyf = (Tfloat)Icn - Icc, 2.26017 + iyb = (Tfloat)Icc - Icp, 2.26018 + itt = u*u*ixx + v*v*iyy + 2*u*v*ixy, 2.26019 + it = u*cimg::minmod(ixf,ixb) + v*cimg::minmod(iyf,iyb); 2.26020 + veloc(x,y,k) = -amp*cimg::sign(itt)*cimg::abs(it); 2.26021 + } 2.26022 + } else cimg_forV(*this,k) cimg_for3x3(*this,x,y,0,k,I) veloc(x,y,k) = -(Tfloat)Ipc-Inc-Icp-Icn+4*Icc; // 3D Inverse diffusion. 2.26023 + } 2.26024 + float m, M = (float)veloc.maxmin(m); 2.26025 + const float vmax = (float)cimg::max(cimg::abs(m),cimg::abs(M)); 2.26026 + if (vmax!=0) { veloc*=amplitude/vmax; (*this)+=veloc; } 2.26027 + return cut(valm,valM); 2.26028 + } 2.26029 + 2.26030 + CImg<T> get_sharpen(const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0) const { 2.26031 + return (+*this).sharpen(amplitude,sharpen_type,edge,alpha,sigma); 2.26032 + } 2.26033 + 2.26034 + //! Compute the Haar multiscale wavelet transform (monodimensional version). 2.26035 + /** 2.26036 + \param axis Axis considered for the transform. 2.26037 + \param invert Set inverse of direct transform. 2.26038 + \param nb_scales Number of scales used for the transform. 2.26039 + **/ 2.26040 + CImg<T>& haar(const char axis, const bool invert=false, const unsigned int nb_scales=1) { 2.26041 + return get_haar(axis,invert,nb_scales).transfer_to(*this); 2.26042 + } 2.26043 + 2.26044 + CImg<Tfloat> get_haar(const char axis, const bool invert=false, const unsigned int nb_scales=1) const { 2.26045 + if (is_empty() || !nb_scales) return *this; 2.26046 + CImg<Tfloat> res; 2.26047 + 2.26048 + if (nb_scales==1) { 2.26049 + switch (cimg::uncase(axis)) { // Single scale transform 2.26050 + case 'x' : { 2.26051 + const unsigned int w = width/2; 2.26052 + if (w) { 2.26053 + if (w%2) 2.26054 + throw CImgInstanceException("CImg<%s>::haar() : Sub-image width = %u is not even at a particular scale (=%u).", 2.26055 + pixel_type(),w); 2.26056 + res.assign(width,height,depth,dim); 2.26057 + if (invert) cimg_forYZV(*this,y,z,v) { // Inverse transform along X 2.26058 + for (unsigned int x=0, xw=w, x2=0; x<w; ++x, ++xw) { 2.26059 + const Tfloat val0 = (Tfloat)(*this)(x,y,z,v), val1 = (Tfloat)(*this)(xw,y,z,v); 2.26060 + res(x2++,y,z,v) = val0 - val1; 2.26061 + res(x2++,y,z,v) = val0 + val1; 2.26062 + } 2.26063 + } else cimg_forYZV(*this,y,z,v) { // Direct transform along X 2.26064 + for (unsigned int x=0, xw=w, x2=0; x<w; ++x, ++xw) { 2.26065 + const Tfloat val0 = (Tfloat)(*this)(x2++,y,z,v), val1 = (Tfloat)(*this)(x2++,y,z,v); 2.26066 + res(x,y,z,v) = (val0 + val1)/2; 2.26067 + res(xw,y,z,v) = (val1 - val0)/2; 2.26068 + } 2.26069 + } 2.26070 + } else return *this; 2.26071 + } break; 2.26072 + case 'y' : { 2.26073 + const unsigned int h = height/2; 2.26074 + if (h) { 2.26075 + if (h%2) 2.26076 + throw CImgInstanceException("CImg<%s>::haar() : Sub-image height = %u is not even at a particular scale.", 2.26077 + pixel_type(),h); 2.26078 + res.assign(width,height,depth,dim); 2.26079 + if (invert) cimg_forXZV(*this,x,z,v) { // Inverse transform along Y 2.26080 + for (unsigned int y=0, yh=h, y2=0; y<h; ++y, ++yh) { 2.26081 + const Tfloat val0 = (Tfloat)(*this)(x,y,z,v), val1 = (Tfloat)(*this)(x,yh,z,v); 2.26082 + res(x,y2++,z,v) = val0 - val1; 2.26083 + res(x,y2++,z,v) = val0 + val1; 2.26084 + } 2.26085 + } else cimg_forXZV(*this,x,z,v) { 2.26086 + for (unsigned int y=0, yh=h, y2=0; y<h; ++y, ++yh) { // Direct transform along Y 2.26087 + const Tfloat val0 = (Tfloat)(*this)(x,y2++,z,v), val1 = (Tfloat)(*this)(x,y2++,z,v); 2.26088 + res(x,y,z,v) = (val0 + val1)/2; 2.26089 + res(x,yh,z,v) = (val1 - val0)/2; 2.26090 + } 2.26091 + } 2.26092 + } else return *this; 2.26093 + } break; 2.26094 + case 'z' : { 2.26095 + const unsigned int d = depth/2; 2.26096 + if (d) { 2.26097 + if (d%2) 2.26098 + throw CImgInstanceException("CImg<%s>::haar() : Sub-image depth = %u is not even at a particular scale.", 2.26099 + pixel_type(),d); 2.26100 + res.assign(width,height,depth,dim); 2.26101 + if (invert) cimg_forXYV(*this,x,y,v) { // Inverse transform along Z 2.26102 + for (unsigned int z=0, zd=d, z2=0; z<d; ++z, ++zd) { 2.26103 + const Tfloat val0 = (Tfloat)(*this)(x,y,z,v), val1 = (Tfloat)(*this)(x,y,zd,v); 2.26104 + res(x,y,z2++,v) = val0 - val1; 2.26105 + res(x,y,z2++,v) = val0 + val1; 2.26106 + } 2.26107 + } else cimg_forXYV(*this,x,y,v) { 2.26108 + for (unsigned int z=0, zd=d, z2=0; z<d; ++z, ++zd) { // Direct transform along Z 2.26109 + const Tfloat val0 = (Tfloat)(*this)(x,y,z2++,v), val1 = (Tfloat)(*this)(x,y,z2++,v); 2.26110 + res(x,y,z,v) = (val0 + val1)/2; 2.26111 + res(x,y,zd,v) = (val1 - val0)/2; 2.26112 + } 2.26113 + } 2.26114 + } else return *this; 2.26115 + } break; 2.26116 + default : 2.26117 + throw CImgArgumentException("CImg<%s>::haar() : Invalid axis '%c', must be 'x','y' or 'z'.", 2.26118 + pixel_type(),axis); 2.26119 + } 2.26120 + } else { // Multi-scale version 2.26121 + if (invert) { 2.26122 + res.assign(*this); 2.26123 + switch (cimg::uncase(axis)) { 2.26124 + case 'x' : { 2.26125 + unsigned int w = width; 2.26126 + for (unsigned int s=1; w && s<nb_scales; ++s) w/=2; 2.26127 + for (w=w?w:1; w<=width; w*=2) res.draw_image(res.get_crop(0,w-1).get_haar('x',true,1)); 2.26128 + } break; 2.26129 + case 'y' : { 2.26130 + unsigned int h = width; 2.26131 + for (unsigned int s=1; h && s<nb_scales; ++s) h/=2; 2.26132 + for (h=h?h:1; h<=height; h*=2) res.draw_image(res.get_crop(0,0,width-1,h-1).get_haar('y',true,1)); 2.26133 + } break; 2.26134 + case 'z' : { 2.26135 + unsigned int d = depth; 2.26136 + for (unsigned int s=1; d && s<nb_scales; ++s) d/=2; 2.26137 + for (d=d?d:1; d<=depth; d*=2) res.draw_image(res.get_crop(0,0,0,width-1,height-1,d-1).get_haar('z',true,1)); 2.26138 + } break; 2.26139 + default : 2.26140 + throw CImgArgumentException("CImg<%s>::haar() : Invalid axis '%c', must be 'x','y' or 'z'.", 2.26141 + pixel_type(),axis); 2.26142 + } 2.26143 + } else { // Direct transform 2.26144 + res = get_haar(axis,false,1); 2.26145 + switch (cimg::uncase(axis)) { 2.26146 + case 'x' : { 2.26147 + for (unsigned int s=1, w=width/2; w && s<nb_scales; ++s, w/=2) res.draw_image(res.get_crop(0,w-1).get_haar('x',false,1)); 2.26148 + } break; 2.26149 + case 'y' : { 2.26150 + for (unsigned int s=1, h=height/2; h && s<nb_scales; ++s, h/=2) res.draw_image(res.get_crop(0,0,width-1,h-1).get_haar('y',false,1)); 2.26151 + } break; 2.26152 + case 'z' : { 2.26153 + for (unsigned int s=1, d=depth/2; d && s<nb_scales; ++s, d/=2) res.draw_image(res.get_crop(0,0,0,width-1,height-1,d-1).get_haar('z',false,1)); 2.26154 + } break; 2.26155 + default : 2.26156 + throw CImgArgumentException("CImg<%s>::haar() : Invalid axis '%c', must be 'x','y' or 'z'.", 2.26157 + pixel_type(),axis); 2.26158 + } 2.26159 + } 2.26160 + } 2.26161 + return res; 2.26162 + } 2.26163 + 2.26164 + //! Compute the Haar multiscale wavelet transform. 2.26165 + /** 2.26166 + \param invert Set inverse of direct transform. 2.26167 + \param nb_scales Number of scales used for the transform. 2.26168 + **/ 2.26169 + CImg<T>& haar(const bool invert=false, const unsigned int nb_scales=1) { 2.26170 + return get_haar(invert,nb_scales).transfer_to(*this); 2.26171 + } 2.26172 + 2.26173 + CImg<Tfloat> get_haar(const bool invert=false, const unsigned int nb_scales=1) const { 2.26174 + CImg<Tfloat> res; 2.26175 + 2.26176 + if (nb_scales==1) { // Single scale transform 2.26177 + if (width>1) get_haar('x',invert,1).transfer_to(res); 2.26178 + if (height>1) { if (res) res.get_haar('y',invert,1).transfer_to(res); else get_haar('y',invert,1).transfer_to(res); } 2.26179 + if (depth>1) { if (res) res.get_haar('z',invert,1).transfer_to(res); else get_haar('z',invert,1).transfer_to(res); } 2.26180 + if (res) return res; 2.26181 + } else { // Multi-scale transform 2.26182 + if (invert) { // Inverse transform 2.26183 + res.assign(*this); 2.26184 + if (width>1) { 2.26185 + if (height>1) { 2.26186 + if (depth>1) { 2.26187 + unsigned int w = width, h = height, d = depth; for (unsigned int s=1; w && h && d && s<nb_scales; ++s) { w/=2; h/=2; d/=2; } 2.26188 + for (w=w?w:1, h=h?h:1, d=d?d:1; w<=width && h<=height && d<=depth; w*=2, h*=2, d*=2) 2.26189 + res.draw_image(res.get_crop(0,0,0,w-1,h-1,d-1).get_haar(true,1)); 2.26190 + } else { 2.26191 + unsigned int w = width, h = height; for (unsigned int s=1; w && h && s<nb_scales; ++s) { w/=2; h/=2; } 2.26192 + for (w=w?w:1, h=h?h:1; w<=width && h<=height; w*=2, h*=2) 2.26193 + res.draw_image(res.get_crop(0,0,0,w-1,h-1,0).get_haar(true,1)); 2.26194 + } 2.26195 + } else { 2.26196 + if (depth>1) { 2.26197 + unsigned int w = width, d = depth; for (unsigned int s=1; w && d && s<nb_scales; ++s) { w/=2; d/=2; } 2.26198 + for (w=w?w:1, d=d?d:1; w<=width && d<=depth; w*=2, d*=2) 2.26199 + res.draw_image(res.get_crop(0,0,0,w-1,0,d-1).get_haar(true,1)); 2.26200 + } else { 2.26201 + unsigned int w = width; for (unsigned int s=1; w && s<nb_scales; ++s) w/=2; 2.26202 + for (w=w?w:1; w<=width; w*=2) 2.26203 + res.draw_image(res.get_crop(0,0,0,w-1,0,0).get_haar(true,1)); 2.26204 + } 2.26205 + } 2.26206 + } else { 2.26207 + if (height>1) { 2.26208 + if (depth>1) { 2.26209 + unsigned int h = height, d = depth; for (unsigned int s=1; h && d && s<nb_scales; ++s) { h/=2; d/=2; } 2.26210 + for (h=h?h:1, d=d?d:1; h<=height && d<=depth; h*=2, d*=2) 2.26211 + res.draw_image(res.get_crop(0,0,0,0,h-1,d-1).get_haar(true,1)); 2.26212 + } else { 2.26213 + unsigned int h = height; for (unsigned int s=1; h && s<nb_scales; ++s) h/=2; 2.26214 + for (h=h?h:1; h<=height; h*=2) 2.26215 + res.draw_image(res.get_crop(0,0,0,0,h-1,0).get_haar(true,1)); 2.26216 + } 2.26217 + } else { 2.26218 + if (depth>1) { 2.26219 + unsigned int d = depth; for (unsigned int s=1; d && s<nb_scales; ++s) d/=2; 2.26220 + for (d=d?d:1; d<=depth; d*=2) 2.26221 + res.draw_image(res.get_crop(0,0,0,0,0,d-1).get_haar(true,1)); 2.26222 + } else return *this; 2.26223 + } 2.26224 + } 2.26225 + } else { // Direct transform 2.26226 + res = get_haar(false,1); 2.26227 + if (width>1) { 2.26228 + if (height>1) { 2.26229 + if (depth>1) for (unsigned int s=1, w=width/2, h=height/2, d=depth/2; w && h && d && s<nb_scales; ++s, w/=2, h/=2, d/=2) 2.26230 + res.draw_image(res.get_crop(0,0,0,w-1,h-1,d-1).haar(false,1)); 2.26231 + else for (unsigned int s=1, w=width/2, h=height/2; w && h && s<nb_scales; ++s, w/=2, h/=2) 2.26232 + res.draw_image(res.get_crop(0,0,0,w-1,h-1,0).haar(false,1)); 2.26233 + } else { 2.26234 + if (depth>1) for (unsigned int s=1, w=width/2, d=depth/2; w && d && s<nb_scales; ++s, w/=2, d/=2) 2.26235 + res.draw_image(res.get_crop(0,0,0,w-1,0,d-1).haar(false,1)); 2.26236 + else for (unsigned int s=1, w=width/2; w && s<nb_scales; ++s, w/=2) 2.26237 + res.draw_image(res.get_crop(0,0,0,w-1,0,0).haar(false,1)); 2.26238 + } 2.26239 + } else { 2.26240 + if (height>1) { 2.26241 + if (depth>1) for (unsigned int s=1, h=height/2, d=depth/2; h && d && s<nb_scales; ++s, h/=2, d/=2) 2.26242 + res.draw_image(res.get_crop(0,0,0,0,h-1,d-1).haar(false,1)); 2.26243 + else for (unsigned int s=1, h=height/2; h && s<nb_scales; ++s, h/=2) 2.26244 + res.draw_image(res.get_crop(0,0,0,0,h-1,0).haar(false,1)); 2.26245 + } else { 2.26246 + if (depth>1) for (unsigned int s=1, d=depth/2; d && s<nb_scales; ++s, d/=2) 2.26247 + res.draw_image(res.get_crop(0,0,0,0,0,d-1).haar(false,1)); 2.26248 + else return *this; 2.26249 + } 2.26250 + } 2.26251 + } 2.26252 + return res; 2.26253 + } 2.26254 + return *this; 2.26255 + } 2.26256 + 2.26257 + //! Estimate a displacement field between instance image and given target image. 2.26258 + CImg<T>& displacement_field(const CImg<T>& target, const float smooth=0.1f, const float precision=0.1f, 2.26259 + const unsigned int nb_scales=0, const unsigned int itermax=10000) { 2.26260 + return get_displacement_field(target,smooth,precision,nb_scales,itermax).transfer_to(*this); 2.26261 + } 2.26262 + 2.26263 + CImg<Tfloat> get_displacement_field(const CImg<T>& target, 2.26264 + const float smoothness=0.1f, const float precision=0.1f, 2.26265 + const unsigned int nb_scales=0, const unsigned int itermax=10000) const { 2.26266 + if (is_empty() || !target) return *this; 2.26267 + if (!is_sameXYZV(target)) 2.26268 + throw CImgArgumentException("CImg<%s>::displacement_field() : Instance image (%u,%u,%u,%u,%p) and target image (%u,%u,%u,%u,%p) " 2.26269 + "have different size.", 2.26270 + pixel_type(),width,height,depth,dim,data, 2.26271 + target.width,target.height,target.depth,target.dim,target.data); 2.26272 + if (smoothness<0) 2.26273 + throw CImgArgumentException("CImg<%s>::displacement_field() : Smoothness parameter %g is negative.", 2.26274 + pixel_type(),smoothness); 2.26275 + if (precision<0) 2.26276 + throw CImgArgumentException("CImg<%s>::displacement_field() : Precision parameter %g is negative.", 2.26277 + pixel_type(),precision); 2.26278 + 2.26279 + const unsigned int nscales = nb_scales>0?nb_scales:(unsigned int)(2*cimg_std::log((double)(cimg::max(width,height,depth)))); 2.26280 + Tfloat m1, M1 = (Tfloat)maxmin(m1), m2, M2 = (Tfloat)target.maxmin(m2); 2.26281 + const Tfloat factor = cimg::max(cimg::abs(m1),cimg::abs(M1),cimg::abs(m2),cimg::abs(M2)); 2.26282 + CImg<Tfloat> U0; 2.26283 + const bool threed = (depth>1); 2.26284 + 2.26285 + // Begin multi-scale motion estimation 2.26286 + for (int scale = (int)nscales-1; scale>=0; --scale) { 2.26287 + const float sfactor = (float)cimg_std::pow(1.5f,(float)scale), sprecision = (float)(precision/cimg_std::pow(2.25,1+scale)); 2.26288 + const int 2.26289 + sw = (int)(width/sfactor), sh = (int)(height/sfactor), sd = (int)(depth/sfactor), 2.26290 + swidth = sw?sw:1, sheight = sh?sh:1, sdepth = sd?sd:1; 2.26291 + CImg<Tfloat> 2.26292 + I1 = get_resize(swidth,sheight,sdepth,-100,2), 2.26293 + I2 = target.get_resize(swidth,sheight,sdepth,-100,2); 2.26294 + I1/=factor; I2/=factor; 2.26295 + CImg<Tfloat> U; 2.26296 + if (U0) U = (U0*=1.5f).get_resize(I1.dimx(),I1.dimy(),I1.dimz(),-100,3); 2.26297 + else U.assign(I1.dimx(),I1.dimy(),I1.dimz(),threed?3:2,0); 2.26298 + 2.26299 + // Begin single-scale motion estimation 2.26300 + CImg<Tfloat> veloc(U); 2.26301 + float dt = 2, Energy = cimg::type<float>::max(); 2.26302 + const CImgList<Tfloat> dI = I2.get_gradient(); 2.26303 + for (unsigned int iter=0; iter<itermax; iter++) { 2.26304 + veloc.fill(0); 2.26305 + float nEnergy = 0; 2.26306 + if (threed) { 2.26307 + cimg_for3XYZ(U,x,y,z) { 2.26308 + const float X = (float)(x + U(x,y,z,0)), Y = (float)(y + U(x,y,z,1)), Z = (float)(z + U(x,y,z,2)); 2.26309 + cimg_forV(U,k) { 2.26310 + const Tfloat 2.26311 + Ux = 0.5f*(U(_n1x,y,z,k) - U(_p1x,y,z,k)), 2.26312 + Uy = 0.5f*(U(x,_n1y,z,k) - U(x,_p1y,z,k)), 2.26313 + Uz = 0.5f*(U(x,y,_n1z,k) - U(x,y,_p1z,k)), 2.26314 + Uxx = U(_n1x,y,z,k) + U(_p1x,y,z,k) - 2*U(x,y,z,k), 2.26315 + Uyy = U(x,_n1y,z,k) + U(x,_p1y,z,k) - 2*U(x,y,z,k), 2.26316 + Uzz = U(x,y,_n1z,k) + U(x,y,_n1z,k) - 2*U(x,y,z,k); 2.26317 + nEnergy += (float)(smoothness*(Ux*Ux + Uy*Uy + Uz*Uz)); 2.26318 + Tfloat deltaIgrad = 0; 2.26319 + cimg_forV(I1,i) { 2.26320 + const Tfloat deltaIi = (float)(I2._linear_atXYZ(X,Y,Z,i) - I1(x,y,z,i)); 2.26321 + nEnergy += (float)(deltaIi*deltaIi/2); 2.26322 + deltaIgrad+=-deltaIi*dI[k]._linear_atXYZ(X,Y,Z,i); 2.26323 + } 2.26324 + veloc(x,y,z,k) = deltaIgrad + smoothness*(Uxx + Uyy + Uzz); 2.26325 + } 2.26326 + } 2.26327 + } else { 2.26328 + cimg_for3XY(U,x,y) { 2.26329 + const float X = (float)(x + U(x,y,0)), Y = (float)(y + U(x,y,1)); 2.26330 + cimg_forV(U,k) { 2.26331 + const Tfloat 2.26332 + Ux = 0.5f*(U(_n1x,y,k) - U(_p1x,y,k)), 2.26333 + Uy = 0.5f*(U(x,_n1y,k) - U(x,_p1y,k)), 2.26334 + Uxx = U(_n1x,y,k) + U(_p1x,y,k) - 2*U(x,y,k), 2.26335 + Uyy = U(x,_n1y,k) + U(x,_p1y,k) - 2*U(x,y,k); 2.26336 + nEnergy += (float)(smoothness*(Ux*Ux + Uy*Uy)); 2.26337 + Tfloat deltaIgrad = 0; 2.26338 + cimg_forV(I1,i) { 2.26339 + const Tfloat deltaIi = (float)(I2._linear_atXY(X,Y,i) - I1(x,y,i)); 2.26340 + nEnergy += (float)(deltaIi*deltaIi/2); 2.26341 + deltaIgrad+=-deltaIi*dI[k]._linear_atXY(X,Y,i); 2.26342 + } 2.26343 + veloc(x,y,k) = deltaIgrad + smoothness*(Uxx + Uyy); 2.26344 + } 2.26345 + } 2.26346 + } 2.26347 + const Tfloat vmax = cimg::max(cimg::abs(veloc.min()), cimg::abs(veloc.max())); 2.26348 + U+=(veloc*=dt/vmax); 2.26349 + if (cimg::abs(nEnergy-Energy)<sprecision) break; 2.26350 + if (nEnergy<Energy) dt*=0.5f; 2.26351 + Energy = nEnergy; 2.26352 + } 2.26353 + U.transfer_to(U0); 2.26354 + } 2.26355 + return U0; 2.26356 + } 2.26357 + 2.26358 + //@} 2.26359 + //----------------------------- 2.26360 + // 2.26361 + //! \name Matrix and Vectors 2.26362 + //@{ 2.26363 + //----------------------------- 2.26364 + 2.26365 + //! Return a vector with specified coefficients. 2.26366 + static CImg<T> vector(const T& a0) { 2.26367 + static CImg<T> r(1,1); r[0] = a0; 2.26368 + return r; 2.26369 + } 2.26370 + 2.26371 + //! Return a vector with specified coefficients. 2.26372 + static CImg<T> vector(const T& a0, const T& a1) { 2.26373 + static CImg<T> r(1,2); T *ptr = r.data; 2.26374 + *(ptr++) = a0; *(ptr++) = a1; 2.26375 + return r; 2.26376 + } 2.26377 + 2.26378 + //! Return a vector with specified coefficients. 2.26379 + static CImg<T> vector(const T& a0, const T& a1, const T& a2) { 2.26380 + static CImg<T> r(1,3); T *ptr = r.data; 2.26381 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; 2.26382 + return r; 2.26383 + } 2.26384 + 2.26385 + //! Return a vector with specified coefficients. 2.26386 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3) { 2.26387 + static CImg<T> r(1,4); T *ptr = r.data; 2.26388 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26389 + return r; 2.26390 + } 2.26391 + 2.26392 + //! Return a vector with specified coefficients. 2.26393 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, const T& a4) { 2.26394 + static CImg<T> r(1,5); T *ptr = r.data; 2.26395 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; *(ptr++) = a4; 2.26396 + return r; 2.26397 + } 2.26398 + 2.26399 + //! Return a vector with specified coefficients. 2.26400 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, const T& a4, const T& a5) { 2.26401 + static CImg<T> r(1,6); T *ptr = r.data; 2.26402 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; *(ptr++) = a4; *(ptr++) = a5; 2.26403 + return r; 2.26404 + } 2.26405 + 2.26406 + //! Return a vector with specified coefficients. 2.26407 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26408 + const T& a4, const T& a5, const T& a6) { 2.26409 + static CImg<T> r(1,7); T *ptr = r.data; 2.26410 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26411 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; 2.26412 + return r; 2.26413 + } 2.26414 + 2.26415 + //! Return a vector with specified coefficients. 2.26416 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26417 + const T& a4, const T& a5, const T& a6, const T& a7) { 2.26418 + static CImg<T> r(1,8); T *ptr = r.data; 2.26419 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26420 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26421 + return r; 2.26422 + } 2.26423 + 2.26424 + //! Return a vector with specified coefficients. 2.26425 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26426 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26427 + const T& a8) { 2.26428 + static CImg<T> r(1,9); T *ptr = r.data; 2.26429 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26430 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26431 + *(ptr++) = a8; 2.26432 + return r; 2.26433 + } 2.26434 + 2.26435 + //! Return a vector with specified coefficients. 2.26436 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26437 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26438 + const T& a8, const T& a9) { 2.26439 + static CImg<T> r(1,10); T *ptr = r.data; 2.26440 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26441 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26442 + *(ptr++) = a8; *(ptr++) = a9; 2.26443 + return r; 2.26444 + } 2.26445 + 2.26446 + //! Return a vector with specified coefficients. 2.26447 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26448 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26449 + const T& a8, const T& a9, const T& a10) { 2.26450 + static CImg<T> r(1,11); T *ptr = r.data; 2.26451 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26452 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26453 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; 2.26454 + return r; 2.26455 + } 2.26456 + 2.26457 + //! Return a vector with specified coefficients. 2.26458 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26459 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26460 + const T& a8, const T& a9, const T& a10, const T& a11) { 2.26461 + static CImg<T> r(1,12); T *ptr = r.data; 2.26462 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26463 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26464 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26465 + return r; 2.26466 + } 2.26467 + 2.26468 + //! Return a vector with specified coefficients. 2.26469 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26470 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26471 + const T& a8, const T& a9, const T& a10, const T& a11, 2.26472 + const T& a12) { 2.26473 + static CImg<T> r(1,13); T *ptr = r.data; 2.26474 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26475 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26476 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26477 + *(ptr++) = a12; 2.26478 + return r; 2.26479 + } 2.26480 + 2.26481 + //! Return a vector with specified coefficients. 2.26482 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26483 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26484 + const T& a8, const T& a9, const T& a10, const T& a11, 2.26485 + const T& a12, const T& a13) { 2.26486 + static CImg<T> r(1,14); T *ptr = r.data; 2.26487 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26488 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26489 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26490 + *(ptr++) = a12; *(ptr++) = a13; 2.26491 + return r; 2.26492 + } 2.26493 + 2.26494 + //! Return a vector with specified coefficients. 2.26495 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26496 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26497 + const T& a8, const T& a9, const T& a10, const T& a11, 2.26498 + const T& a12, const T& a13, const T& a14) { 2.26499 + static CImg<T> r(1,15); T *ptr = r.data; 2.26500 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26501 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26502 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26503 + *(ptr++) = a12; *(ptr++) = a13; *(ptr++) = a14; 2.26504 + return r; 2.26505 + } 2.26506 + 2.26507 + //! Return a vector with specified coefficients. 2.26508 + static CImg<T> vector(const T& a0, const T& a1, const T& a2, const T& a3, 2.26509 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26510 + const T& a8, const T& a9, const T& a10, const T& a11, 2.26511 + const T& a12, const T& a13, const T& a14, const T& a15) { 2.26512 + static CImg<T> r(1,16); T *ptr = r.data; 2.26513 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26514 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26515 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26516 + *(ptr++) = a12; *(ptr++) = a13; *(ptr++) = a14; *(ptr++) = a15; 2.26517 + return r; 2.26518 + } 2.26519 + 2.26520 + //! Return a 1x1 square matrix with specified coefficients. 2.26521 + static CImg<T> matrix(const T& a0) { 2.26522 + return vector(a0); 2.26523 + } 2.26524 + 2.26525 + //! Return a 2x2 square matrix with specified coefficients. 2.26526 + static CImg<T> matrix(const T& a0, const T& a1, 2.26527 + const T& a2, const T& a3) { 2.26528 + static CImg<T> r(2,2); T *ptr = r.data; 2.26529 + *(ptr++) = a0; *(ptr++) = a1; 2.26530 + *(ptr++) = a2; *(ptr++) = a3; 2.26531 + return r; 2.26532 + } 2.26533 + 2.26534 + //! Return a 3x3 square matrix with specified coefficients. 2.26535 + static CImg<T> matrix(const T& a0, const T& a1, const T& a2, 2.26536 + const T& a3, const T& a4, const T& a5, 2.26537 + const T& a6, const T& a7, const T& a8) { 2.26538 + static CImg<T> r(3,3); T *ptr = r.data; 2.26539 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; 2.26540 + *(ptr++) = a3; *(ptr++) = a4; *(ptr++) = a5; 2.26541 + *(ptr++) = a6; *(ptr++) = a7; *(ptr++) = a8; 2.26542 + return r; 2.26543 + } 2.26544 + 2.26545 + //! Return a 4x4 square matrix with specified coefficients. 2.26546 + static CImg<T> matrix(const T& a0, const T& a1, const T& a2, const T& a3, 2.26547 + const T& a4, const T& a5, const T& a6, const T& a7, 2.26548 + const T& a8, const T& a9, const T& a10, const T& a11, 2.26549 + const T& a12, const T& a13, const T& a14, const T& a15) { 2.26550 + static CImg<T> r(4,4); T *ptr = r.data; 2.26551 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; 2.26552 + *(ptr++) = a4; *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; 2.26553 + *(ptr++) = a8; *(ptr++) = a9; *(ptr++) = a10; *(ptr++) = a11; 2.26554 + *(ptr++) = a12; *(ptr++) = a13; *(ptr++) = a14; *(ptr++) = a15; 2.26555 + return r; 2.26556 + } 2.26557 + 2.26558 + //! Return a 5x5 square matrix with specified coefficients. 2.26559 + static CImg<T> matrix(const T& a0, const T& a1, const T& a2, const T& a3, const T& a4, 2.26560 + const T& a5, const T& a6, const T& a7, const T& a8, const T& a9, 2.26561 + const T& a10, const T& a11, const T& a12, const T& a13, const T& a14, 2.26562 + const T& a15, const T& a16, const T& a17, const T& a18, const T& a19, 2.26563 + const T& a20, const T& a21, const T& a22, const T& a23, const T& a24) { 2.26564 + static CImg<T> r(5,5); T *ptr = r.data; 2.26565 + *(ptr++) = a0; *(ptr++) = a1; *(ptr++) = a2; *(ptr++) = a3; *(ptr++) = a4; 2.26566 + *(ptr++) = a5; *(ptr++) = a6; *(ptr++) = a7; *(ptr++) = a8; *(ptr++) = a9; 2.26567 + *(ptr++) = a10; *(ptr++) = a11; *(ptr++) = a12; *(ptr++) = a13; *(ptr++) = a14; 2.26568 + *(ptr++) = a15; *(ptr++) = a16; *(ptr++) = a17; *(ptr++) = a18; *(ptr++) = a19; 2.26569 + *(ptr++) = a20; *(ptr++) = a21; *(ptr++) = a22; *(ptr++) = a23; *(ptr++) = a24; 2.26570 + return r; 2.26571 + } 2.26572 + 2.26573 + //! Return a 1x1 symmetric matrix with specified coefficients. 2.26574 + static CImg<T> tensor(const T& a1) { 2.26575 + return matrix(a1); 2.26576 + } 2.26577 + 2.26578 + //! Return a 2x2 symmetric matrix tensor with specified coefficients. 2.26579 + static CImg<T> tensor(const T& a1, const T& a2, const T& a3) { 2.26580 + return matrix(a1,a2,a2,a3); 2.26581 + } 2.26582 + 2.26583 + //! Return a 3x3 symmetric matrix with specified coefficients. 2.26584 + static CImg<T> tensor(const T& a1, const T& a2, const T& a3, const T& a4, const T& a5, const T& a6) { 2.26585 + return matrix(a1,a2,a3,a2,a4,a5,a3,a5,a6); 2.26586 + } 2.26587 + 2.26588 + //! Return a 1x1 diagonal matrix with specified coefficients. 2.26589 + static CImg<T> diagonal(const T& a0) { 2.26590 + return matrix(a0); 2.26591 + } 2.26592 + 2.26593 + //! Return a 2x2 diagonal matrix with specified coefficients. 2.26594 + static CImg<T> diagonal(const T& a0, const T& a1) { 2.26595 + return matrix(a0,0,0,a1); 2.26596 + } 2.26597 + 2.26598 + //! Return a 3x3 diagonal matrix with specified coefficients. 2.26599 + static CImg<T> diagonal(const T& a0, const T& a1, const T& a2) { 2.26600 + return matrix(a0,0,0,0,a1,0,0,0,a2); 2.26601 + } 2.26602 + 2.26603 + //! Return a 4x4 diagonal matrix with specified coefficients. 2.26604 + static CImg<T> diagonal(const T& a0, const T& a1, const T& a2, const T& a3) { 2.26605 + return matrix(a0,0,0,0,0,a1,0,0,0,0,a2,0,0,0,0,a3); 2.26606 + } 2.26607 + 2.26608 + //! Return a 5x5 diagonal matrix with specified coefficients. 2.26609 + static CImg<T> diagonal(const T& a0, const T& a1, const T& a2, const T& a3, const T& a4) { 2.26610 + return matrix(a0,0,0,0,0,0,a1,0,0,0,0,0,a2,0,0,0,0,0,a3,0,0,0,0,0,a4); 2.26611 + } 2.26612 + 2.26613 + //! Return a NxN identity matrix. 2.26614 + static CImg<T> identity_matrix(const unsigned int N) { 2.26615 + CImg<T> res(N,N,1,1,0); 2.26616 + cimg_forX(res,x) res(x,x) = 1; 2.26617 + return res; 2.26618 + } 2.26619 + 2.26620 + //! Return a N-numbered sequence vector from \p a0 to \p a1. 2.26621 + static CImg<T> sequence(const unsigned int N, const T a0, const T a1) { 2.26622 + if (N) return CImg<T>(1,N).sequence(a0,a1); 2.26623 + return CImg<T>(); 2.26624 + } 2.26625 + 2.26626 + //! Return a 3x3 rotation matrix along the (x,y,z)-axis with an angle w. 2.26627 + static CImg<T> rotation_matrix(const float x, const float y, const float z, const float w, const bool quaternion_data=false) { 2.26628 + float X,Y,Z,W; 2.26629 + if (!quaternion_data) { 2.26630 + const float norm = (float)cimg_std::sqrt(x*x + y*y + z*z), 2.26631 + nx = norm>0?x/norm:0, 2.26632 + ny = norm>0?y/norm:0, 2.26633 + nz = norm>0?z/norm:1, 2.26634 + nw = norm>0?w:0, 2.26635 + sina = (float)cimg_std::sin(nw/2), 2.26636 + cosa = (float)cimg_std::cos(nw/2); 2.26637 + X = nx*sina; 2.26638 + Y = ny*sina; 2.26639 + Z = nz*sina; 2.26640 + W = cosa; 2.26641 + } else { 2.26642 + const float norm = (float)cimg_std::sqrt(x*x + y*y + z*z + w*w); 2.26643 + if (norm>0) { X = x/norm; Y = y/norm; Z = z/norm; W = w/norm; } 2.26644 + else { X = Y = Z = 0; W = 1; } 2.26645 + } 2.26646 + const float xx = X*X, xy = X*Y, xz = X*Z, xw = X*W, yy = Y*Y, yz = Y*Z, yw = Y*W, zz = Z*Z, zw = Z*W; 2.26647 + return CImg<T>::matrix((T)(1-2*(yy+zz)), (T)(2*(xy+zw)), (T)(2*(xz-yw)), 2.26648 + (T)(2*(xy-zw)), (T)(1-2*(xx+zz)), (T)(2*(yz+xw)), 2.26649 + (T)(2*(xz+yw)), (T)(2*(yz-xw)), (T)(1-2*(xx+yy))); 2.26650 + } 2.26651 + 2.26652 + //! Return a new image corresponding to the vector located at (\p x,\p y,\p z) of the current vector-valued image. 2.26653 + CImg<T> get_vector_at(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const { 2.26654 + static CImg<T> dest; 2.26655 + if (dest.height!=dim) dest.assign(1,dim); 2.26656 + const unsigned int whz = width*height*depth; 2.26657 + const T *ptrs = ptr(x,y,z); 2.26658 + T *ptrd = dest.data; 2.26659 + cimg_forV(*this,k) { *(ptrd++) = *ptrs; ptrs+=whz; } 2.26660 + return dest; 2.26661 + } 2.26662 + 2.26663 + //! Set the image \p vec as the \a vector \a valued pixel located at (\p x,\p y,\p z) of the current vector-valued image. 2.26664 + template<typename t> 2.26665 + CImg<T>& set_vector_at(const CImg<t>& vec, const unsigned int x, const unsigned int y=0, const unsigned int z=0) { 2.26666 + if (x<width && y<height && z<depth) { 2.26667 + const unsigned int whz = width*height*depth; 2.26668 + const t *ptrs = vec.data; 2.26669 + T *ptrd = ptr(x,y,z); 2.26670 + for (unsigned int k=cimg::min((unsigned int)vec.size(),dim); k; --k) { *ptrd = (T)*(ptrs++); ptrd+=whz; } 2.26671 + } 2.26672 + return *this; 2.26673 + } 2.26674 + 2.26675 + //! Return a new image corresponding to the \a square \a matrix located at (\p x,\p y,\p z) of the current vector-valued image. 2.26676 + CImg<T> get_matrix_at(const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const { 2.26677 + const int n = (int)cimg_std::sqrt((double)dim); 2.26678 + CImg<T> dest(n,n); 2.26679 + cimg_forV(*this,k) dest[k]=(*this)(x,y,z,k); 2.26680 + return dest; 2.26681 + } 2.26682 + 2.26683 + //! Set the image \p vec as the \a square \a matrix-valued pixel located at (\p x,\p y,\p z) of the current vector-valued image. 2.26684 + template<typename t> 2.26685 + CImg<T>& set_matrix_at(const CImg<t>& mat, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) { 2.26686 + return set_vector_at(mat,x,y,z); 2.26687 + } 2.26688 + 2.26689 + //! Return a new image corresponding to the \a diffusion \a tensor located at (\p x,\p y,\p z) of the current vector-valued image. 2.26690 + CImg<T> get_tensor_at(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const { 2.26691 + if (dim==6) return tensor((*this)(x,y,z,0),(*this)(x,y,z,1),(*this)(x,y,z,2), 2.26692 + (*this)(x,y,z,3),(*this)(x,y,z,4),(*this)(x,y,z,5)); 2.26693 + if (dim==3) return tensor((*this)(x,y,z,0),(*this)(x,y,z,1),(*this)(x,y,z,2)); 2.26694 + return tensor((*this)(x,y,z,0)); 2.26695 + } 2.26696 + 2.26697 + //! Set the image \p vec as the \a tensor \a valued pixel located at (\p x,\p y,\p z) of the current vector-valued image. 2.26698 + template<typename t> 2.26699 + CImg<T>& set_tensor_at(const CImg<t>& ten, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) { 2.26700 + if (ten.height==2) { 2.26701 + (*this)(x,y,z,0) = (T)ten[0]; 2.26702 + (*this)(x,y,z,1) = (T)ten[1]; 2.26703 + (*this)(x,y,z,2) = (T)ten[3]; 2.26704 + } 2.26705 + else { 2.26706 + (*this)(x,y,z,0) = (T)ten[0]; 2.26707 + (*this)(x,y,z,1) = (T)ten[1]; 2.26708 + (*this)(x,y,z,2) = (T)ten[2]; 2.26709 + (*this)(x,y,z,3) = (T)ten[4]; 2.26710 + (*this)(x,y,z,4) = (T)ten[5]; 2.26711 + (*this)(x,y,z,5) = (T)ten[8]; 2.26712 + } 2.26713 + return *this; 2.26714 + } 2.26715 + 2.26716 + //! Unroll all images values into a one-column vector. 2.26717 + CImg<T>& vector() { 2.26718 + return unroll('y'); 2.26719 + } 2.26720 + 2.26721 + CImg<T> get_vector() const { 2.26722 + return get_unroll('y'); 2.26723 + } 2.26724 + 2.26725 + //! Realign pixel values of the instance image as a square matrix 2.26726 + CImg<T>& matrix() { 2.26727 + const unsigned int siz = size(); 2.26728 + switch (siz) { 2.26729 + case 1 : break; 2.26730 + case 4 : width = height = 2; break; 2.26731 + case 9 : width = height = 3; break; 2.26732 + case 16 : width = height = 4; break; 2.26733 + case 25 : width = height = 5; break; 2.26734 + case 36 : width = height = 6; break; 2.26735 + case 49 : width = height = 7; break; 2.26736 + case 64 : width = height = 8; break; 2.26737 + case 81 : width = height = 9; break; 2.26738 + case 100 : width = height = 10; break; 2.26739 + default : { 2.26740 + unsigned int i = 11, i2 = i*i; 2.26741 + while (i2<siz) { i2+=2*i+1; ++i; } 2.26742 + if (i2==siz) width = height = i; 2.26743 + else throw CImgInstanceException("CImg<%s>::matrix() : Image size = %u is not a square number", 2.26744 + pixel_type(),siz); 2.26745 + } 2.26746 + } 2.26747 + return *this; 2.26748 + } 2.26749 + 2.26750 + CImg<T> get_matrix() const { 2.26751 + return (+*this).matrix(); 2.26752 + } 2.26753 + 2.26754 + //! Realign pixel values of the instance image as a symmetric tensor. 2.26755 + CImg<T>& tensor() { 2.26756 + return get_tensor().transfer_to(*this); 2.26757 + } 2.26758 + 2.26759 + CImg<T> get_tensor() const { 2.26760 + CImg<T> res; 2.26761 + const unsigned int siz = size(); 2.26762 + switch (siz) { 2.26763 + case 1 : break; 2.26764 + case 3 : 2.26765 + res.assign(2,2); 2.26766 + res(0,0) = (*this)(0); 2.26767 + res(1,0) = res(0,1) = (*this)(1); 2.26768 + res(1,1) = (*this)(2); 2.26769 + break; 2.26770 + case 6 : 2.26771 + res.assign(3,3); 2.26772 + res(0,0) = (*this)(0); 2.26773 + res(1,0) = res(0,1) = (*this)(1); 2.26774 + res(2,0) = res(0,2) = (*this)(2); 2.26775 + res(1,1) = (*this)(3); 2.26776 + res(2,1) = res(1,2) = (*this)(4); 2.26777 + res(2,2) = (*this)(5); 2.26778 + break; 2.26779 + default : 2.26780 + throw CImgInstanceException("CImg<%s>::tensor() : Wrong vector dimension = %u in instance image.", 2.26781 + pixel_type(), dim); 2.26782 + } 2.26783 + return res; 2.26784 + } 2.26785 + 2.26786 + //! Unroll all images values into specified axis. 2.26787 + CImg<T>& unroll(const char axis) { 2.26788 + const unsigned int siz = size(); 2.26789 + if (siz) switch (axis) { 2.26790 + case 'x' : width = siz; height=depth=dim=1; break; 2.26791 + case 'y' : height = siz; width=depth=dim=1; break; 2.26792 + case 'z' : depth = siz; width=height=dim=1; break; 2.26793 + case 'v' : dim = siz; width=height=depth=1; break; 2.26794 + default : 2.26795 + throw CImgArgumentException("CImg<%s>::unroll() : Given axis is '%c' which is not 'x','y','z' or 'v'", 2.26796 + pixel_type(),axis); 2.26797 + } 2.26798 + return *this; 2.26799 + } 2.26800 + 2.26801 + CImg<T> get_unroll(const char axis) const { 2.26802 + return (+*this).unroll(axis); 2.26803 + } 2.26804 + 2.26805 + //! Get a diagonal matrix, whose diagonal coefficients are the coefficients of the input image. 2.26806 + CImg<T>& diagonal() { 2.26807 + return get_diagonal().transfer_to(*this); 2.26808 + } 2.26809 + 2.26810 + CImg<T> get_diagonal() const { 2.26811 + if (is_empty()) return *this; 2.26812 + CImg<T> res(size(),size(),1,1,0); 2.26813 + cimg_foroff(*this,off) res(off,off) = (*this)(off); 2.26814 + return res; 2.26815 + } 2.26816 + 2.26817 + //! Get an identity matrix having same dimension than instance image. 2.26818 + CImg<T>& identity_matrix() { 2.26819 + return identity_matrix(cimg::max(width,height)).transfer_to(*this); 2.26820 + } 2.26821 + 2.26822 + CImg<T> get_identity_matrix() const { 2.26823 + return identity_matrix(cimg::max(width,height)); 2.26824 + } 2.26825 + 2.26826 + //! Return a N-numbered sequence vector from \p a0 to \p a1. 2.26827 + CImg<T>& sequence(const T a0, const T a1) { 2.26828 + if (is_empty()) return *this; 2.26829 + const unsigned int siz = size() - 1; 2.26830 + T* ptr = data; 2.26831 + if (siz) { 2.26832 + const Tfloat delta = (Tfloat)a1 - a0; 2.26833 + cimg_foroff(*this,l) *(ptr++) = (T)(a0 + delta*l/siz); 2.26834 + } else *ptr = a0; 2.26835 + return *this; 2.26836 + } 2.26837 + 2.26838 + CImg<T> get_sequence(const T a0, const T a1) const { 2.26839 + return (+*this).sequence(a0,a1); 2.26840 + } 2.26841 + 2.26842 + //! Transpose the current matrix. 2.26843 + CImg<T>& transpose() { 2.26844 + if (width==1) { width=height; height=1; return *this; } 2.26845 + if (height==1) { height=width; width=1; return *this; } 2.26846 + if (width==height) { 2.26847 + cimg_forYZV(*this,y,z,v) for (int x=y; x<dimx(); ++x) cimg::swap((*this)(x,y,z,v),(*this)(y,x,z,v)); 2.26848 + return *this; 2.26849 + } 2.26850 + return get_transpose().transfer_to(*this); 2.26851 + } 2.26852 + 2.26853 + CImg<T> get_transpose() const { 2.26854 + return get_permute_axes("yxzv"); 2.26855 + } 2.26856 + 2.26857 + //! Invert the current matrix. 2.26858 + CImg<T>& invert(const bool use_LU=true) { 2.26859 + if (!is_empty()) { 2.26860 + if (width!=height || depth!=1 || dim!=1) 2.26861 + throw CImgInstanceException("CImg<%s>::invert() : Instance matrix (%u,%u,%u,%u,%p) is not square.", 2.26862 + pixel_type(),width,height,depth,dim,data); 2.26863 +#ifdef cimg_use_lapack 2.26864 + int INFO = (int)use_LU, N = width, LWORK = 4*N, *IPIV = new int[N]; 2.26865 + Tfloat 2.26866 + *lapA = new Tfloat[N*N], 2.26867 + *WORK = new Tfloat[LWORK]; 2.26868 + cimg_forXY(*this,k,l) lapA[k*N+l] = (Tfloat)((*this)(k,l)); 2.26869 + cimg::getrf(N,lapA,IPIV,INFO); 2.26870 + if (INFO) 2.26871 + cimg::warn("CImg<%s>::invert() : LAPACK library function dgetrf_() returned error code %d.", 2.26872 + pixel_type(),INFO); 2.26873 + else { 2.26874 + cimg::getri(N,lapA,IPIV,WORK,LWORK,INFO); 2.26875 + if (INFO) 2.26876 + cimg::warn("CImg<%s>::invert() : LAPACK library function dgetri_() returned Error code %d", 2.26877 + pixel_type(),INFO); 2.26878 + } 2.26879 + if (!INFO) cimg_forXY(*this,k,l) (*this)(k,l) = (T)(lapA[k*N+l]); else fill(0); 2.26880 + delete[] IPIV; delete[] lapA; delete[] WORK; 2.26881 +#else 2.26882 + const double dete = width>3?-1.0:det(); 2.26883 + if (dete!=0.0 && width==2) { 2.26884 + const double 2.26885 + a = data[0], c = data[1], 2.26886 + b = data[2], d = data[3]; 2.26887 + data[0] = (T)(d/dete); data[1] = (T)(-c/dete); 2.26888 + data[2] = (T)(-b/dete); data[3] = (T)(a/dete); 2.26889 + } else if (dete!=0.0 && width==3) { 2.26890 + const double 2.26891 + a = data[0], d = data[1], g = data[2], 2.26892 + b = data[3], e = data[4], h = data[5], 2.26893 + c = data[6], f = data[7], i = data[8]; 2.26894 + data[0] = (T)((i*e-f*h)/dete), data[1] = (T)((g*f-i*d)/dete), data[2] = (T)((d*h-g*e)/dete); 2.26895 + data[3] = (T)((h*c-i*b)/dete), data[4] = (T)((i*a-c*g)/dete), data[5] = (T)((g*b-a*h)/dete); 2.26896 + data[6] = (T)((b*f-e*c)/dete), data[7] = (T)((d*c-a*f)/dete), data[8] = (T)((a*e-d*b)/dete); 2.26897 + } else { 2.26898 + if (use_LU) { // LU-based inverse computation 2.26899 + CImg<Tfloat> A(*this), indx, col(1,width); 2.26900 + bool d; 2.26901 + A._LU(indx,d); 2.26902 + cimg_forX(*this,j) { 2.26903 + col.fill(0); 2.26904 + col(j) = 1; 2.26905 + col._solve(A,indx); 2.26906 + cimg_forX(*this,i) (*this)(j,i) = (T)col(i); 2.26907 + } 2.26908 + } else { // SVD-based inverse computation 2.26909 + CImg<Tfloat> U(width,width), S(1,width), V(width,width); 2.26910 + SVD(U,S,V,false); 2.26911 + U.transpose(); 2.26912 + cimg_forY(S,k) if (S[k]!=0) S[k]=1/S[k]; 2.26913 + S.diagonal(); 2.26914 + *this = V*S*U; 2.26915 + } 2.26916 + } 2.26917 +#endif 2.26918 + } 2.26919 + return *this; 2.26920 + } 2.26921 + 2.26922 + CImg<Tfloat> get_invert(const bool use_LU=true) const { 2.26923 + return CImg<Tfloat>(*this,false).invert(use_LU); 2.26924 + } 2.26925 + 2.26926 + //! Compute the pseudo-inverse (Moore-Penrose) of the matrix. 2.26927 + CImg<T>& pseudoinvert() { 2.26928 + return get_pseudoinvert().transfer_to(*this); 2.26929 + } 2.26930 + 2.26931 + CImg<Tfloat> get_pseudoinvert() const { 2.26932 + CImg<Tfloat> U, S, V; 2.26933 + SVD(U,S,V); 2.26934 + cimg_forX(V,x) { 2.26935 + const Tfloat s = S(x), invs = s!=0?1/s:(Tfloat)0; 2.26936 + cimg_forY(V,y) V(x,y)*=invs; 2.26937 + } 2.26938 + return V*U.transpose(); 2.26939 + } 2.26940 + 2.26941 + //! Compute the cross product between two 3d vectors. 2.26942 + template<typename t> 2.26943 + CImg<T>& cross(const CImg<t>& img) { 2.26944 + if (width!=1 || height<3 || img.width!=1 || img.height<3) 2.26945 + throw CImgInstanceException("CImg<%s>::cross() : Arguments (%u,%u,%u,%u,%p) and (%u,%u,%u,%u,%p) must be both 3d vectors.", 2.26946 + pixel_type(),width,height,depth,dim,data,img.width,img.height,img.depth,img.dim,img.data); 2.26947 + const T x = (*this)[0], y = (*this)[1], z = (*this)[2]; 2.26948 + (*this)[0] = (T)(y*img[2]-z*img[1]); 2.26949 + (*this)[1] = (T)(z*img[0]-x*img[2]); 2.26950 + (*this)[2] = (T)(x*img[1]-y*img[0]); 2.26951 + return *this; 2.26952 + } 2.26953 + 2.26954 + template<typename t> 2.26955 + CImg<typename cimg::superset<T,t>::type> get_cross(const CImg<t>& img) const { 2.26956 + typedef typename cimg::superset<T,t>::type Tt; 2.26957 + return CImg<Tt>(*this).cross(img); 2.26958 + } 2.26959 + 2.26960 + //! Solve a linear system AX=B where B=*this. 2.26961 + template<typename t> 2.26962 + CImg<T>& solve(const CImg<t>& A) { 2.26963 + if (width!=1 || depth!=1 || dim!=1 || height!=A.height || A.depth!=1 || A.dim!=1) 2.26964 + throw CImgArgumentException("CImg<%s>::solve() : Instance matrix size is (%u,%u,%u,%u) while " 2.26965 + "size of given matrix A is (%u,%u,%u,%u).", 2.26966 + pixel_type(),width,height,depth,dim,A.width,A.height,A.depth,A.dim); 2.26967 + 2.26968 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.26969 + if (A.width==A.height) { 2.26970 +#ifdef cimg_use_lapack 2.26971 + char TRANS='N'; 2.26972 + int INFO, N = height, LWORK = 4*N, one = 1, *IPIV = new int[N]; 2.26973 + Ttfloat 2.26974 + *lapA = new Ttfloat[N*N], 2.26975 + *lapB = new Ttfloat[N], 2.26976 + *WORK = new Ttfloat[LWORK]; 2.26977 + cimg_forXY(A,k,l) lapA[k*N+l] = (Ttfloat)(A(k,l)); 2.26978 + cimg_forY(*this,i) lapB[i] = (Ttfloat)((*this)(i)); 2.26979 + cimg::getrf(N,lapA,IPIV,INFO); 2.26980 + if (INFO) 2.26981 + cimg::warn("CImg<%s>::solve() : LAPACK library function dgetrf_() returned error code %d.", 2.26982 + pixel_type(),INFO); 2.26983 + if (!INFO) { 2.26984 + cimg::getrs(TRANS,N,lapA,IPIV,lapB,INFO); 2.26985 + if (INFO) 2.26986 + cimg::warn("CImg<%s>::solve() : LAPACK library function dgetrs_() returned Error code %d", 2.26987 + pixel_type(),INFO); 2.26988 + } 2.26989 + if (!INFO) cimg_forY(*this,i) (*this)(i) = (T)(lapB[i]); else fill(0); 2.26990 + delete[] IPIV; delete[] lapA; delete[] lapB; delete[] WORK; 2.26991 +#else 2.26992 + CImg<Ttfloat> lu(A); 2.26993 + CImg<Ttfloat> indx; 2.26994 + bool d; 2.26995 + lu._LU(indx,d); 2.26996 + _solve(lu,indx); 2.26997 +#endif 2.26998 + } else assign(A.get_pseudoinvert()*(*this)); 2.26999 + return *this; 2.27000 + } 2.27001 + 2.27002 + template<typename t> 2.27003 + CImg<typename cimg::superset2<T,t,float>::type> get_solve(const CImg<t>& A) const { 2.27004 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.27005 + return CImg<Ttfloat>(*this,false).solve(A); 2.27006 + } 2.27007 + 2.27008 + template<typename t, typename ti> 2.27009 + CImg<T>& _solve(const CImg<t>& A, const CImg<ti>& indx) { 2.27010 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.27011 + const int N = size(); 2.27012 + int ii = -1; 2.27013 + Ttfloat sum; 2.27014 + for (int i=0; i<N; ++i) { 2.27015 + const int ip = (int)indx[i]; 2.27016 + Ttfloat sum = (*this)(ip); 2.27017 + (*this)(ip) = (*this)(i); 2.27018 + if (ii>=0) for (int j=ii; j<=i-1; ++j) sum-=A(j,i)*(*this)(j); 2.27019 + else if (sum!=0) ii=i; 2.27020 + (*this)(i) = (T)sum; 2.27021 + } 2.27022 + { for (int i=N-1; i>=0; --i) { 2.27023 + sum = (*this)(i); 2.27024 + for (int j=i+1; j<N; ++j) sum-=A(j,i)*(*this)(j); 2.27025 + (*this)(i) = (T)(sum/A(i,i)); 2.27026 + }} 2.27027 + return *this; 2.27028 + } 2.27029 + 2.27030 + //! Solve a linear system AX=B where B=*this and A is a tridiagonal matrix A = [ b0,c0,0,...; a1,b1,c1,0,... ; ... ; ...,0,aN,bN ]. 2.27031 + // (Use the Thomas Algorithm). 2.27032 + template<typename t> 2.27033 + CImg<T>& solve_tridiagonal(const CImg<t>& a, const CImg<t>& b, const CImg<t>& c) { 2.27034 + const int siz = (int)size(); 2.27035 + if ((int)a.size()!=siz || (int)b.size()!=siz || (int)c.size()!=siz) 2.27036 + throw CImgArgumentException("CImg<%s>::solve_tridiagonal() : arrays of triagonal coefficients have different size.",pixel_type); 2.27037 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.27038 + CImg<Ttfloat> nc(siz); 2.27039 + const T *ptra = a.data, *ptrb = b.data, *ptrc = c.data; 2.27040 + T *ptrnc = nc.data, *ptrd = data; 2.27041 + const Ttfloat valb0 = (Ttfloat)*(ptrb++); 2.27042 + *ptrnc = *(ptrc++)/valb0; 2.27043 + Ttfloat vald = (Ttfloat)(*(ptrd++)/=valb0); 2.27044 + for (int i = 1; i<siz; ++i) { 2.27045 + const Ttfloat 2.27046 + vala = (Tfloat)*(ptra++), 2.27047 + id = 1/(*(ptrb++) - *(ptrnc++)*vala); 2.27048 + *ptrnc = *(ptrc++)*id; 2.27049 + vald = ((*ptrd-=vala*vald)*=id); 2.27050 + ++ptrd; 2.27051 + } 2.27052 + vald = *(--ptrd); 2.27053 + for (int i = siz-2; i>=0; --i) vald = (*(--ptrd)-=*(--ptrnc)*vald); 2.27054 + return *this; 2.27055 + } 2.27056 + 2.27057 + template<typename t> 2.27058 + CImg<typename cimg::superset2<T,t,float>::type> get_solve_tridiagonal(const CImg<t>& a, const CImg<t>& b, const CImg<t>& c) const { 2.27059 + typedef typename cimg::superset2<T,t,float>::type Ttfloat; 2.27060 + return CImg<Ttfloat>(*this,false).solve_tridiagonal(a,b,c); 2.27061 + } 2.27062 + 2.27063 + //! Sort values of a vector and get permutations. 2.27064 + template<typename t> 2.27065 + CImg<T>& sort(CImg<t>& permutations, const bool increasing=true) { 2.27066 + if (is_empty()) permutations.assign(); 2.27067 + else { 2.27068 + if (permutations.size()!=size()) permutations.assign(size()); 2.27069 + cimg_foroff(permutations,off) permutations[off] = (t)off; 2.27070 + _quicksort(0,size()-1,permutations,increasing); 2.27071 + } 2.27072 + return *this; 2.27073 + } 2.27074 + 2.27075 + template<typename t> 2.27076 + CImg<T> get_sort(CImg<t>& permutations, const bool increasing=true) const { 2.27077 + return (+*this).sort(permutations,increasing); 2.27078 + } 2.27079 + 2.27080 + // Sort image values. 2.27081 + CImg<T>& sort(const bool increasing=true) { 2.27082 + CImg<T> foo; 2.27083 + return sort(foo,increasing); 2.27084 + } 2.27085 + 2.27086 + CImg<T> get_sort(const bool increasing=true) const { 2.27087 + return (+*this).sort(increasing); 2.27088 + } 2.27089 + 2.27090 + template<typename t> 2.27091 + CImg<T>& _quicksort(const int min, const int max, CImg<t>& permutations, const bool increasing) { 2.27092 + if (min<max) { 2.27093 + const int mid = (min+max)/2; 2.27094 + if (increasing) { 2.27095 + if ((*this)[min]>(*this)[mid]) { 2.27096 + cimg::swap((*this)[min],(*this)[mid]); cimg::swap(permutations[min],permutations[mid]); } 2.27097 + if ((*this)[mid]>(*this)[max]) { 2.27098 + cimg::swap((*this)[max],(*this)[mid]); cimg::swap(permutations[max],permutations[mid]); } 2.27099 + if ((*this)[min]>(*this)[mid]) { 2.27100 + cimg::swap((*this)[min],(*this)[mid]); cimg::swap(permutations[min],permutations[mid]); } 2.27101 + } else { 2.27102 + if ((*this)[min]<(*this)[mid]) { 2.27103 + cimg::swap((*this)[min],(*this)[mid]); cimg::swap(permutations[min],permutations[mid]); } 2.27104 + if ((*this)[mid]<(*this)[max]) { 2.27105 + cimg::swap((*this)[max],(*this)[mid]); cimg::swap(permutations[max],permutations[mid]); } 2.27106 + if ((*this)[min]<(*this)[mid]) { 2.27107 + cimg::swap((*this)[min],(*this)[mid]); cimg::swap(permutations[min],permutations[mid]); } 2.27108 + } 2.27109 + if (max-min>=3) { 2.27110 + const T pivot = (*this)[mid]; 2.27111 + int i = min, j = max; 2.27112 + if (increasing) { 2.27113 + do { 2.27114 + while ((*this)[i]<pivot) ++i; 2.27115 + while ((*this)[j]>pivot) --j; 2.27116 + if (i<=j) { 2.27117 + cimg::swap((*this)[i],(*this)[j]); 2.27118 + cimg::swap(permutations[i++],permutations[j--]); 2.27119 + } 2.27120 + } while (i<=j); 2.27121 + } else { 2.27122 + do { 2.27123 + while ((*this)[i]>pivot) ++i; 2.27124 + while ((*this)[j]<pivot) --j; 2.27125 + if (i<=j) { 2.27126 + cimg::swap((*this)[i],(*this)[j]); 2.27127 + cimg::swap(permutations[i++],permutations[j--]); 2.27128 + } 2.27129 + } while (i<=j); 2.27130 + } 2.27131 + if (min<j) _quicksort(min,j,permutations,increasing); 2.27132 + if (i<max) _quicksort(i,max,permutations,increasing); 2.27133 + } 2.27134 + } 2.27135 + return *this; 2.27136 + } 2.27137 + 2.27138 + //! Get a permutation of the pixels. 2.27139 + template<typename t> 2.27140 + CImg<T>& permute(const CImg<t>& permutation) { 2.27141 + return get_permute(permutation).transfer_to(*this); 2.27142 + } 2.27143 + 2.27144 + template<typename t> 2.27145 + CImg<T> get_permute(const CImg<t>& permutation) const { 2.27146 + if (permutation.size()!=size()) 2.27147 + throw CImgArgumentException("CImg<%s>::permute() : Instance image (%u,%u,%u,%u,%p) and permutation (%u,%u,%u,%u,%p)" 2.27148 + "have different sizes.", 2.27149 + pixel_type(),width,height,depth,dim,data, 2.27150 + permutation.width,permutation.height,permutation.depth,permutation.dim,permutation.data); 2.27151 + CImg<T> res(width,height,depth,dim); 2.27152 + const t *p = permutation.ptr(permutation.size()); 2.27153 + cimg_for(res,ptr,T) *ptr = (*this)[*(--p)]; 2.27154 + return res; 2.27155 + } 2.27156 + 2.27157 + //! Compute the SVD of a general matrix. 2.27158 + template<typename t> 2.27159 + const CImg<T>& SVD(CImg<t>& U, CImg<t>& S, CImg<t>& V, 2.27160 + const bool sorting=true, const unsigned int max_iter=40, const float lambda=0) const { 2.27161 + if (is_empty()) { U.assign(); S.assign(); V.assign(); } 2.27162 + else { 2.27163 + U = *this; 2.27164 + if (lambda!=0) { 2.27165 + const unsigned int delta = cimg::min(U.width,U.height); 2.27166 + for (unsigned int i=0; i<delta; ++i) U(i,i) = (t)(U(i,i) + lambda); 2.27167 + } 2.27168 + if (S.size()<width) S.assign(1,width); 2.27169 + if (V.width<width || V.height<height) V.assign(width,width); 2.27170 + CImg<t> rv1(width); 2.27171 + t anorm = 0, c, f, g = 0, h, s, scale = 0; 2.27172 + int l = 0, nm = 0; 2.27173 + 2.27174 + cimg_forX(U,i) { 2.27175 + l = i+1; rv1[i] = scale*g; g = s = scale = 0; 2.27176 + if (i<dimy()) { 2.27177 + for (int k=i; k<dimy(); ++k) scale+= cimg::abs(U(i,k)); 2.27178 + if (scale) { 2.27179 + for (int k=i; k<dimy(); ++k) { U(i,k)/=scale; s+= U(i,k)*U(i,k); } 2.27180 + f = U(i,i); g = (t)((f>=0?-1:1)*cimg_std::sqrt(s)); h=f*g-s; U(i,i) = f-g; 2.27181 + for (int j=l; j<dimx(); ++j) { 2.27182 + s = 0; for (int k=i; k<dimy(); ++k) s+= U(i,k)*U(j,k); 2.27183 + f = s/h; 2.27184 + { for (int k=i; k<dimy(); ++k) U(j,k)+= f*U(i,k); } 2.27185 + } 2.27186 + { for (int k=i; k<dimy(); ++k) U(i,k)*= scale; } 2.27187 + } 2.27188 + } 2.27189 + S[i]=scale*g; 2.27190 + 2.27191 + g = s = scale = 0; 2.27192 + if (i<dimy() && i!=dimx()-1) { 2.27193 + for (int k=l; k<dimx(); ++k) scale += cimg::abs(U(k,i)); 2.27194 + if (scale) { 2.27195 + for (int k=l; k<dimx(); ++k) { U(k,i)/= scale; s+= U(k,i)*U(k,i); } 2.27196 + f = U(l,i); g = (t)((f>=0?-1:1)*cimg_std::sqrt(s)); h = f*g-s; U(l,i) = f-g; 2.27197 + { for (int k=l; k<dimx(); ++k) rv1[k]=U(k,i)/h; } 2.27198 + for (int j=l; j<dimy(); ++j) { 2.27199 + s = 0; for (int k=l; k<dimx(); ++k) s+= U(k,j)*U(k,i); 2.27200 + { for (int k=l; k<dimx(); ++k) U(k,j)+= s*rv1[k]; } 2.27201 + } 2.27202 + { for (int k=l; k<dimx(); ++k) U(k,i)*= scale; } 2.27203 + } 2.27204 + } 2.27205 + anorm = (t)cimg::max((float)anorm,(float)(cimg::abs(S[i])+cimg::abs(rv1[i]))); 2.27206 + } 2.27207 + 2.27208 + { for (int i=dimx()-1; i>=0; --i) { 2.27209 + if (i<dimx()-1) { 2.27210 + if (g) { 2.27211 + { for (int j=l; j<dimx(); ++j) V(i,j) =(U(j,i)/U(l,i))/g; } 2.27212 + for (int j=l; j<dimx(); ++j) { 2.27213 + s = 0; for (int k=l; k<dimx(); ++k) s+= U(k,i)*V(j,k); 2.27214 + { for (int k=l; k<dimx(); ++k) V(j,k)+= s*V(i,k); } 2.27215 + } 2.27216 + } 2.27217 + for (int j=l; j<dimx(); ++j) V(j,i) = V(i,j) = (t)0.0; 2.27218 + } 2.27219 + V(i,i) = (t)1.0; g = rv1[i]; l = i; 2.27220 + } 2.27221 + } 2.27222 + 2.27223 + { for (int i=cimg::min(dimx(),dimy())-1; i>=0; --i) { 2.27224 + l = i+1; g = S[i]; 2.27225 + for (int j=l; j<dimx(); ++j) U(j,i) = 0; 2.27226 + if (g) { 2.27227 + g = 1/g; 2.27228 + for (int j=l; j<dimx(); ++j) { 2.27229 + s = 0; for (int k=l; k<dimy(); ++k) s+= U(i,k)*U(j,k); 2.27230 + f = (s/U(i,i))*g; 2.27231 + { for (int k=i; k<dimy(); ++k) U(j,k)+= f*U(i,k); } 2.27232 + } 2.27233 + { for (int j=i; j<dimy(); ++j) U(i,j)*= g; } 2.27234 + } else for (int j=i; j<dimy(); ++j) U(i,j) = 0; 2.27235 + ++U(i,i); 2.27236 + } 2.27237 + } 2.27238 + 2.27239 + for (int k=dimx()-1; k>=0; --k) { 2.27240 + for (unsigned int its=0; its<max_iter; ++its) { 2.27241 + bool flag = true; 2.27242 + for (l=k; l>=1; --l) { 2.27243 + nm = l-1; 2.27244 + if ((cimg::abs(rv1[l])+anorm)==anorm) { flag = false; break; } 2.27245 + if ((cimg::abs(S[nm])+anorm)==anorm) break; 2.27246 + } 2.27247 + if (flag) { 2.27248 + c = 0; s = 1; 2.27249 + for (int i=l; i<=k; ++i) { 2.27250 + f = s*rv1[i]; rv1[i] = c*rv1[i]; 2.27251 + if ((cimg::abs(f)+anorm)==anorm) break; 2.27252 + g = S[i]; h = (t)cimg::_pythagore(f,g); S[i] = h; h = 1/h; c = g*h; s = -f*h; 2.27253 + cimg_forY(U,j) { const t y = U(nm,j), z = U(i,j); U(nm,j) = y*c+z*s; U(i,j) = z*c-y*s; } 2.27254 + } 2.27255 + } 2.27256 + const t z = S[k]; 2.27257 + if (l==k) { if (z<0) { S[k] = -z; cimg_forX(U,j) V(k,j) = -V(k,j); } break; } 2.27258 + nm = k-1; 2.27259 + t x = S[l], y = S[nm]; 2.27260 + g = rv1[nm]; h = rv1[k]; 2.27261 + f = ((y-z)*(y+z)+(g-h)*(g+h))/(2*h*y); 2.27262 + g = (t)cimg::_pythagore(f,1.0); 2.27263 + f = ((x-z)*(x+z)+h*((y/(f+ (f>=0?g:-g)))-h))/x; 2.27264 + c = s = 1; 2.27265 + for (int j=l; j<=nm; ++j) { 2.27266 + const int i = j+1; 2.27267 + g = rv1[i]; h = s*g; g = c*g; 2.27268 + t y = S[i]; 2.27269 + t z = (t)cimg::_pythagore(f,h); 2.27270 + rv1[j] = z; c = f/z; s = h/z; 2.27271 + f = x*c+g*s; g = g*c-x*s; h = y*s; y*=c; 2.27272 + cimg_forX(U,jj) { const t x = V(j,jj), z = V(i,jj); V(j,jj) = x*c+z*s; V(i,jj) = z*c-x*s; } 2.27273 + z = (t)cimg::_pythagore(f,h); S[j] = z; 2.27274 + if (z) { z = 1/z; c = f*z; s = h*z; } 2.27275 + f = c*g+s*y; x = c*y-s*g; 2.27276 + { cimg_forY(U,jj) { const t y = U(j,jj); z = U(i,jj); U(j,jj) = y*c+z*s; U(i,jj) = z*c-y*s; }} 2.27277 + } 2.27278 + rv1[l] = 0; rv1[k]=f; S[k]=x; 2.27279 + } 2.27280 + } 2.27281 + 2.27282 + if (sorting) { 2.27283 + CImg<intT> permutations(width); 2.27284 + CImg<t> tmp(width); 2.27285 + S.sort(permutations,false); 2.27286 + cimg_forY(U,k) { 2.27287 + cimg_forX(permutations,x) tmp(x) = U(permutations(x),k); 2.27288 + cimg_std::memcpy(U.ptr(0,k),tmp.data,sizeof(t)*width); 2.27289 + } 2.27290 + { cimg_forY(V,k) { 2.27291 + cimg_forX(permutations,x) tmp(x) = V(permutations(x),k); 2.27292 + cimg_std::memcpy(V.ptr(0,k),tmp.data,sizeof(t)*width); 2.27293 + }} 2.27294 + } 2.27295 + } 2.27296 + return *this; 2.27297 + } 2.27298 + 2.27299 + //! Compute the SVD of a general matrix. 2.27300 + template<typename t> 2.27301 + const CImg<T>& SVD(CImgList<t>& USV) const { 2.27302 + if (USV.size<3) USV.assign(3); 2.27303 + return SVD(USV[0],USV[1],USV[2]); 2.27304 + } 2.27305 + 2.27306 + //! Compute the SVD of a general matrix. 2.27307 + CImgList<Tfloat> get_SVD(const bool sorting=true) const { 2.27308 + CImgList<Tfloat> res(3); 2.27309 + SVD(res[0],res[1],res[2],sorting); 2.27310 + return res; 2.27311 + } 2.27312 + 2.27313 + // INNER ROUTINE : Compute the LU decomposition of a permuted matrix (c.f. numerical recipies) 2.27314 + template<typename t> 2.27315 + CImg<T>& _LU(CImg<t>& indx, bool& d) { 2.27316 + const int N = dimx(); 2.27317 + int imax = 0; 2.27318 + CImg<Tfloat> vv(N); 2.27319 + indx.assign(N); 2.27320 + d = true; 2.27321 + cimg_forX(*this,i) { 2.27322 + Tfloat vmax = 0; 2.27323 + cimg_forX(*this,j) { 2.27324 + const Tfloat tmp = cimg::abs((*this)(j,i)); 2.27325 + if (tmp>vmax) vmax = tmp; 2.27326 + } 2.27327 + if (vmax==0) { indx.fill(0); return fill(0); } 2.27328 + vv[i] = 1/vmax; 2.27329 + } 2.27330 + cimg_forX(*this,j) { 2.27331 + for (int i=0; i<j; ++i) { 2.27332 + Tfloat sum=(*this)(j,i); 2.27333 + for (int k=0; k<i; ++k) sum-=(*this)(k,i)*(*this)(j,k); 2.27334 + (*this)(j,i) = (T)sum; 2.27335 + } 2.27336 + Tfloat vmax = 0; 2.27337 + { for (int i=j; i<dimx(); ++i) { 2.27338 + Tfloat sum=(*this)(j,i); 2.27339 + for (int k=0; k<j; ++k) sum-=(*this)(k,i)*(*this)(j,k); 2.27340 + (*this)(j,i) = (T)sum; 2.27341 + const Tfloat tmp = vv[i]*cimg::abs(sum); 2.27342 + if (tmp>=vmax) { vmax=tmp; imax=i; } 2.27343 + }} 2.27344 + if (j!=imax) { 2.27345 + cimg_forX(*this,k) cimg::swap((*this)(k,imax),(*this)(k,j)); 2.27346 + d =!d; 2.27347 + vv[imax] = vv[j]; 2.27348 + } 2.27349 + indx[j] = (t)imax; 2.27350 + if ((*this)(j,j)==0) (*this)(j,j) = (T)1e-20; 2.27351 + if (j<N) { 2.27352 + const Tfloat tmp = 1/(Tfloat)(*this)(j,j); 2.27353 + for (int i=j+1; i<N; ++i) (*this)(j,i) = (T)((*this)(j,i)*tmp); 2.27354 + } 2.27355 + } 2.27356 + return *this; 2.27357 + } 2.27358 + 2.27359 + //! Compute the eigenvalues and eigenvectors of a matrix. 2.27360 + template<typename t> 2.27361 + const CImg<T>& eigen(CImg<t>& val, CImg<t> &vec) const { 2.27362 + if (is_empty()) { val.assign(); vec.assign(); } 2.27363 + else { 2.27364 + if (width!=height || depth>1 || dim>1) 2.27365 + throw CImgInstanceException("CImg<%s>::eigen() : Instance object (%u,%u,%u,%u,%p) is empty.", 2.27366 + pixel_type(),width,height,depth,dim,data); 2.27367 + if (val.size()<width) val.assign(1,width); 2.27368 + if (vec.size()<width*width) vec.assign(width,width); 2.27369 + switch (width) { 2.27370 + case 1 : { val[0]=(t)(*this)[0]; vec[0]=(t)1; } break; 2.27371 + case 2 : { 2.27372 + const double a = (*this)[0], b = (*this)[1], c = (*this)[2], d = (*this)[3], e = a+d; 2.27373 + double f = e*e-4*(a*d-b*c); 2.27374 + if (f<0) 2.27375 + cimg::warn("CImg<%s>::eigen() : Complex eigenvalues", 2.27376 + pixel_type()); 2.27377 + f = cimg_std::sqrt(f); 2.27378 + const double l1 = 0.5*(e-f), l2 = 0.5*(e+f); 2.27379 + const double theta1 = cimg_std::atan2(l2-a,b), theta2 = cimg_std::atan2(l1-a,b); 2.27380 + val[0]=(t)l2; 2.27381 + val[1]=(t)l1; 2.27382 + vec(0,0) = (t)cimg_std::cos(theta1); 2.27383 + vec(0,1) = (t)cimg_std::sin(theta1); 2.27384 + vec(1,0) = (t)cimg_std::cos(theta2); 2.27385 + vec(1,1) = (t)cimg_std::sin(theta2); 2.27386 + } break; 2.27387 + default : 2.27388 + throw CImgInstanceException("CImg<%s>::eigen() : Eigenvalues computation of general matrices is limited" 2.27389 + "to 2x2 matrices (given is %ux%u)", 2.27390 + pixel_type(),width,height); 2.27391 + } 2.27392 + } 2.27393 + return *this; 2.27394 + } 2.27395 + 2.27396 + //! Compute the eigenvalues and eigenvectors of a matrix. 2.27397 + CImgList<Tfloat> get_eigen() const { 2.27398 + CImgList<Tfloat> res(2); 2.27399 + eigen(res[0],res[1]); 2.27400 + return res; 2.27401 + } 2.27402 + 2.27403 + //! Compute the eigenvalues and eigenvectors of a symmetric matrix. 2.27404 + template<typename t> 2.27405 + const CImg<T>& symmetric_eigen(CImg<t>& val, CImg<t>& vec) const { 2.27406 + if (is_empty()) { val.assign(); vec.assign(); } 2.27407 + else { 2.27408 +#ifdef cimg_use_lapack 2.27409 + char JOB = 'V', UPLO = 'U'; 2.27410 + int N = width, LWORK = 4*N, INFO; 2.27411 + Tfloat 2.27412 + *lapA = new Tfloat[N*N], 2.27413 + *lapW = new Tfloat[N], 2.27414 + *WORK = new Tfloat[LWORK]; 2.27415 + cimg_forXY(*this,k,l) lapA[k*N+l] = (Tfloat)((*this)(k,l)); 2.27416 + cimg::syev(JOB,UPLO,N,lapA,lapW,WORK,LWORK,INFO); 2.27417 + if (INFO) 2.27418 + cimg::warn("CImg<%s>::symmetric_eigen() : LAPACK library function dsyev_() returned error code %d.", 2.27419 + pixel_type(),INFO); 2.27420 + val.assign(1,N); 2.27421 + vec.assign(N,N); 2.27422 + if (!INFO) { 2.27423 + cimg_forY(val,i) val(i) = (T)lapW[N-1-i]; 2.27424 + cimg_forXY(vec,k,l) vec(k,l) = (T)(lapA[(N-1-k)*N+l]); 2.27425 + } else { val.fill(0); vec.fill(0); } 2.27426 + delete[] lapA; delete[] lapW; delete[] WORK; 2.27427 +#else 2.27428 + if (width!=height || depth>1 || dim>1) 2.27429 + throw CImgInstanceException("CImg<%s>::eigen() : Instance object (%u,%u,%u,%u,%p) is empty.", 2.27430 + pixel_type(),width,height,depth,dim,data); 2.27431 + val.assign(1,width); 2.27432 + if (vec.data) vec.assign(width,width); 2.27433 + if (width<3) return eigen(val,vec); 2.27434 + CImg<t> V(width,width); 2.27435 + SVD(vec,val,V,false); 2.27436 + bool ambiguous = false; 2.27437 + float eig = 0; 2.27438 + cimg_forY(val,p) { // check for ambiguous cases. 2.27439 + if (val[p]>eig) eig = (float)val[p]; 2.27440 + t scal = 0; 2.27441 + cimg_forY(vec,y) scal+=vec(p,y)*V(p,y); 2.27442 + if (cimg::abs(scal)<0.9f) ambiguous = true; 2.27443 + if (scal<0) val[p] = -val[p]; 2.27444 + } 2.27445 + if (ambiguous) { 2.27446 + (eig*=2)++; 2.27447 + SVD(vec,val,V,false,40,eig); 2.27448 + val-=eig; 2.27449 + } 2.27450 + CImg<intT> permutations(width); // sort eigenvalues in decreasing order 2.27451 + CImg<t> tmp(width); 2.27452 + val.sort(permutations,false); 2.27453 + cimg_forY(vec,k) { 2.27454 + cimg_forX(permutations,x) tmp(x) = vec(permutations(x),k); 2.27455 + cimg_std::memcpy(vec.ptr(0,k),tmp.data,sizeof(t)*width); 2.27456 + } 2.27457 +#endif 2.27458 + } 2.27459 + return *this; 2.27460 + } 2.27461 + 2.27462 + //! Compute the eigenvalues and eigenvectors of a symmetric matrix. 2.27463 + CImgList<Tfloat> get_symmetric_eigen() const { 2.27464 + CImgList<Tfloat> res(2); 2.27465 + symmetric_eigen(res[0],res[1]); 2.27466 + return res; 2.27467 + } 2.27468 + 2.27469 + //@} 2.27470 + //------------------- 2.27471 + // 2.27472 + //! \name Display 2.27473 + //@{ 2.27474 + //------------------- 2.27475 + 2.27476 + //! Display an image into a CImgDisplay window. 2.27477 + const CImg<T>& display(CImgDisplay& disp) const { 2.27478 + disp.display(*this); 2.27479 + return *this; 2.27480 + } 2.27481 + 2.27482 + //! Display an image in a window with a title \p title, and wait a 'is_closed' or 'keyboard' event.\n 2.27483 + const CImg<T>& display(CImgDisplay &disp, const bool display_info) const { 2.27484 + return _display(disp,0,display_info); 2.27485 + } 2.27486 + 2.27487 + //! Display an image in a window with a title \p title, and wait a 'is_closed' or 'keyboard' event.\n 2.27488 + const CImg<T>& display(const char *const title=0, const bool display_info=true) const { 2.27489 + CImgDisplay disp; 2.27490 + return _display(disp,title,display_info); 2.27491 + } 2.27492 + 2.27493 + const CImg<T>& _display(CImgDisplay &disp, const char *const title, const bool display_info) const { 2.27494 + if (is_empty()) 2.27495 + throw CImgInstanceException("CImg<%s>::display() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.27496 + pixel_type(),width,height,depth,dim,data); 2.27497 + unsigned int oldw = 0, oldh = 0, XYZ[3], key = 0, mkey = 0; 2.27498 + int x0 = 0, y0 = 0, z0 = 0, x1 = dimx()-1, y1 = dimy()-1, z1 = dimz()-1; 2.27499 + float frametiming = 5; 2.27500 + 2.27501 + char ntitle[256] = { 0 }; 2.27502 + if (!disp) { 2.27503 + if (!title) cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); 2.27504 + disp.assign(cimg_fitscreen(width,height,depth),title?title:ntitle,1); 2.27505 + } 2.27506 + cimg_std::strncpy(ntitle,disp.title,255); 2.27507 + if (display_info) print(ntitle); 2.27508 + 2.27509 + CImg<T> zoom; 2.27510 + for (bool reset_view = true, resize_disp = false; !key && !disp.is_closed; ) { 2.27511 + if (reset_view) { 2.27512 + XYZ[0] = (x0 + x1)/2; XYZ[1] = (y0 + y1)/2; XYZ[2] = (z0 + z1)/2; 2.27513 + x0 = 0; y0 = 0; z0 = 0; x1 = width-1; y1 = height-1; z1 = depth-1; 2.27514 + oldw = disp.width; oldh = disp.height; 2.27515 + reset_view = false; 2.27516 + } 2.27517 + if (!x0 && !y0 && !z0 && x1==dimx()-1 && y1==dimy()-1 && z1==dimz()-1) zoom.assign(); 2.27518 + else zoom = get_crop(x0,y0,z0,x1,y1,z1); 2.27519 + 2.27520 + const unsigned int 2.27521 + dx = 1 + x1 - x0, dy = 1 + y1 - y0, dz = 1 + z1 - z0, 2.27522 + tw = dx + (dz>1?dz:0), th = dy + (dz>1?dz:0); 2.27523 + if (resize_disp) { 2.27524 + const unsigned int 2.27525 + ttw = tw*disp.width/oldw, tth = th*disp.height/oldh, 2.27526 + dM = cimg::max(ttw,tth), diM = cimg::max(disp.width,disp.height), 2.27527 + imgw = cimg::max(16U,ttw*diM/dM), imgh = cimg::max(16U,tth*diM/dM); 2.27528 + disp.normalscreen().resize(cimg_fitscreen(imgw,imgh,1),false); 2.27529 + resize_disp = false; 2.27530 + } 2.27531 + oldw = tw; oldh = th; 2.27532 + 2.27533 + bool 2.27534 + go_up = false, go_down = false, go_left = false, go_right = false, 2.27535 + go_inc = false, go_dec = false, go_in = false, go_out = false, 2.27536 + go_in_center = false; 2.27537 + const CImg<T>& visu = zoom?zoom:*this; 2.27538 + const CImg<intT> selection = visu._get_select(disp,0,2,XYZ,0,x0,y0,z0); 2.27539 + if (disp.wheel) { 2.27540 + if (disp.is_keyCTRLLEFT) { if (!mkey || mkey==1) go_out = !(go_in = disp.wheel>0); go_in_center = false; mkey = 1; } 2.27541 + else if (disp.is_keySHIFTLEFT) { if (!mkey || mkey==2) go_right = !(go_left = disp.wheel>0); mkey = 2; } 2.27542 + else if (disp.is_keyALT || depth==1) { if (!mkey || mkey==3) go_down = !(go_up = disp.wheel>0); mkey = 3; } 2.27543 + else mkey = 0; 2.27544 + disp.wheel = 0; 2.27545 + } else mkey = 0; 2.27546 + const int 2.27547 + sx0 = selection(0), sy0 = selection(1), sz0 = selection(2), 2.27548 + sx1 = selection(3), sy1 = selection(4), sz1 = selection(5); 2.27549 + if (sx0>=0 && sy0>=0 && sz0>=0 && sx1>=0 && sy1>=0 && sz1>=0) { 2.27550 + x1 = x0 + sx1; y1 = y0 + sy1; z1 = z0 + sz1; x0+=sx0; y0+=sy0; z0+=sz0; 2.27551 + if (sx0==sx1 && sy0==sy1 && sz0==sz1) reset_view = true; 2.27552 + resize_disp = true; 2.27553 + } else switch (key = disp.key) { 2.27554 + case 0 : case cimg::keyCTRLLEFT : case cimg::keyPAD5 : case cimg::keySHIFTLEFT : case cimg::keyALT : disp.key = key = 0; break; 2.27555 + case cimg::keyP : if (visu.depth>1 && disp.is_keyCTRLLEFT) { // Special mode : play stack of frames 2.27556 + const unsigned int 2.27557 + w1 = visu.width*disp.width/(visu.width+(visu.depth>1?visu.depth:0)), 2.27558 + h1 = visu.height*disp.height/(visu.height+(visu.depth>1?visu.depth:0)); 2.27559 + disp.resize(cimg_fitscreen(w1,h1,1),false).key = disp.wheel = key = 0; 2.27560 + for (unsigned int timer = 0; !key && !disp.is_closed && !disp.button; ) { 2.27561 + if (disp.is_resized) disp.resize(); 2.27562 + if (!timer) { 2.27563 + visu.get_slice(XYZ[2]).display(disp.set_title("%s | z=%d",ntitle,XYZ[2])); 2.27564 + if (++XYZ[2]>=visu.depth) XYZ[2] = 0; 2.27565 + } 2.27566 + if (++timer>(unsigned int)frametiming) timer = 0; 2.27567 + if (disp.wheel) { frametiming-=disp.wheel/3.0f; disp.wheel = 0; } 2.27568 + switch (key = disp.key) { 2.27569 + case 0 : case cimg::keyCTRLLEFT : disp.key = key = 0; break; 2.27570 + case cimg::keyPAGEUP : frametiming-=0.3f; key = 0; break; 2.27571 + case cimg::keyPAGEDOWN : frametiming+=0.3f; key = 0; break; 2.27572 + case cimg::keyD : if (disp.is_keyCTRLLEFT) { 2.27573 + disp.normalscreen().resize(CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,false), 2.27574 + CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,true),false); 2.27575 + disp.key = key = 0; 2.27576 + } break; 2.27577 + case cimg::keyC : if (disp.is_keyCTRLLEFT) { 2.27578 + disp.normalscreen().resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),false); 2.27579 + disp.key = key = 0; 2.27580 + } break; 2.27581 + case cimg::keyR : if (disp.is_keyCTRLLEFT) { 2.27582 + disp.normalscreen().resize(cimg_fitscreen(width,height,depth),false); 2.27583 + disp.key = key = 0; 2.27584 + } break; 2.27585 + case cimg::keyF : if (disp.is_keyCTRLLEFT) { 2.27586 + disp.resize(disp.screen_dimx(),disp.screen_dimy()).toggle_fullscreen(); 2.27587 + disp.key = key = 0; 2.27588 + } break; 2.27589 + } 2.27590 + frametiming = frametiming<1?1:(frametiming>39?39:frametiming); 2.27591 + disp.wait(20); 2.27592 + } 2.27593 + const unsigned int 2.27594 + w2 = (visu.width + (visu.depth>1?visu.depth:0))*disp.width/visu.width, 2.27595 + h2 = (visu.height + (visu.depth>1?visu.depth:0))*disp.height/visu.height; 2.27596 + disp.resize(cimg_fitscreen(w2,h2,1),false).set_title(ntitle); 2.27597 + key = disp.key = disp.button = disp.wheel = 0; 2.27598 + } break; 2.27599 + case cimg::keyHOME : case cimg::keyBACKSPACE : reset_view = resize_disp = true; key = 0; break; 2.27600 + case cimg::keyPADADD : go_in = true; go_in_center = true; key = 0; break; 2.27601 + case cimg::keyPADSUB : go_out = true; key = 0; break; 2.27602 + case cimg::keyARROWLEFT : case cimg::keyPAD4: go_left = true; key = 0; break; 2.27603 + case cimg::keyARROWRIGHT : case cimg::keyPAD6: go_right = true; key = 0; break; 2.27604 + case cimg::keyARROWUP : case cimg::keyPAD8: go_up = true; key = 0; break; 2.27605 + case cimg::keyARROWDOWN : case cimg::keyPAD2: go_down = true; key = 0; break; 2.27606 + case cimg::keyPAD7 : go_up = go_left = true; key = 0; break; 2.27607 + case cimg::keyPAD9 : go_up = go_right = true; key = 0; break; 2.27608 + case cimg::keyPAD1 : go_down = go_left = true; key = 0; break; 2.27609 + case cimg::keyPAD3 : go_down = go_right = true; key = 0; break; 2.27610 + case cimg::keyPAGEUP : go_inc = true; key = 0; break; 2.27611 + case cimg::keyPAGEDOWN : go_dec = true; key = 0; break; 2.27612 + } 2.27613 + if (go_in) { 2.27614 + const int 2.27615 + mx = go_in_center?disp.dimx()/2:disp.mouse_x, 2.27616 + my = go_in_center?disp.dimy()/2:disp.mouse_y, 2.27617 + mX = mx*(width+(depth>1?depth:0))/disp.width, 2.27618 + mY = my*(height+(depth>1?depth:0))/disp.height; 2.27619 + int X = XYZ[0], Y = XYZ[1], Z = XYZ[2]; 2.27620 + if (mX<dimx() && mY<dimy()) { X = x0 + mX*(1+x1-x0)/width; Y = y0 + mY*(1+y1-y0)/height; Z = XYZ[2]; } 2.27621 + if (mX<dimx() && mY>=dimy()) { X = x0 + mX*(1+x1-x0)/width; Z = z0 + (mY-height)*(1+z1-z0)/depth; Y = XYZ[1]; } 2.27622 + if (mX>=dimx() && mY<dimy()) { Y = y0 + mY*(1+y1-y0)/height; Z = z0 + (mX-width)*(1+z1-z0)/depth; X = XYZ[0]; } 2.27623 + if (x1-x0>4) { x0 = X - 7*(X-x0)/8; x1 = X + 7*(x1-X)/8; } 2.27624 + if (y1-y0>4) { y0 = Y - 7*(Y-y0)/8; y1 = Y + 7*(y1-Y)/8; } 2.27625 + if (z1-z0>4) { z0 = Z - 7*(Z-z0)/8; z1 = Z + 7*(z1-Z)/8; } 2.27626 + } 2.27627 + if (go_out) { 2.27628 + const int 2.27629 + deltax = (x1-x0)/8, deltay = (y1-y0)/8, deltaz = (z1-z0)/8, 2.27630 + ndeltax = deltax?deltax:(width>1?1:0), 2.27631 + ndeltay = deltay?deltay:(height>1?1:0), 2.27632 + ndeltaz = deltaz?deltaz:(depth>1?1:0); 2.27633 + x0-=ndeltax; y0-=ndeltay; z0-=ndeltaz; 2.27634 + x1+=ndeltax; y1+=ndeltay; z1+=ndeltaz; 2.27635 + if (x0<0) { x1-=x0; x0 = 0; if (x1>=dimx()) x1 = dimx()-1; } 2.27636 + if (y0<0) { y1-=y0; y0 = 0; if (y1>=dimy()) y1 = dimy()-1; } 2.27637 + if (z0<0) { z1-=z0; z0 = 0; if (z1>=dimz()) z1 = dimz()-1; } 2.27638 + if (x1>=dimx()) { x0-=(x1-dimx()+1); x1 = dimx()-1; if (x0<0) x0 = 0; } 2.27639 + if (y1>=dimy()) { y0-=(y1-dimy()+1); y1 = dimy()-1; if (y0<0) y0 = 0; } 2.27640 + if (z1>=dimz()) { z0-=(z1-dimz()+1); z1 = dimz()-1; if (z0<0) z0 = 0; } 2.27641 + } 2.27642 + if (go_left) { 2.27643 + const int delta = (x1-x0)/5, ndelta = delta?delta:(width>1?1:0); 2.27644 + if (x0-ndelta>=0) { x0-=ndelta; x1-=ndelta; } 2.27645 + else { x1-=x0; x0 = 0; } 2.27646 + } 2.27647 + if (go_right) { 2.27648 + const int delta = (x1-x0)/5, ndelta = delta?delta:(width>1?1:0); 2.27649 + if (x1+ndelta<dimx()) { x0+=ndelta; x1+=ndelta; } 2.27650 + else { x0+=(dimx()-1-x1); x1 = dimx()-1; } 2.27651 + } 2.27652 + if (go_up) { 2.27653 + const int delta = (y1-y0)/5, ndelta = delta?delta:(height>1?1:0); 2.27654 + if (y0-ndelta>=0) { y0-=ndelta; y1-=ndelta; } 2.27655 + else { y1-=y0; y0 = 0; } 2.27656 + } 2.27657 + if (go_down) { 2.27658 + const int delta = (y1-y0)/5, ndelta = delta?delta:(height>1?1:0); 2.27659 + if (y1+ndelta<dimy()) { y0+=ndelta; y1+=ndelta; } 2.27660 + else { y0+=(dimy()-1-y1); y1 = dimy()-1; } 2.27661 + } 2.27662 + if (go_inc) { 2.27663 + const int delta = (z1-z0)/5, ndelta = delta?delta:(depth>1?1:0); 2.27664 + if (z0-ndelta>=0) { z0-=ndelta; z1-=ndelta; } 2.27665 + else { z1-=z0; z0 = 0; } 2.27666 + } 2.27667 + if (go_dec) { 2.27668 + const int delta = (z1-z0)/5, ndelta = delta?delta:(depth>1?1:0); 2.27669 + if (z1+ndelta<dimz()) { z0+=ndelta; z1+=ndelta; } 2.27670 + else { z0+=(depth-1-z1); z1 = depth-1; } 2.27671 + } 2.27672 + } 2.27673 + disp.key = key; 2.27674 + return *this; 2.27675 + } 2.27676 + 2.27677 + //! Simple interface to select a shape from an image. 2.27678 + /** 2.27679 + \param selection Array of 6 values containing the selection result 2.27680 + \param coords_type Determine shape type to select (0=point, 1=vector, 2=rectangle, 3=circle) 2.27681 + \param disp Display window used to make the selection 2.27682 + \param XYZ Initial XYZ position (for volumetric images only) 2.27683 + \param color Color of the shape selector. 2.27684 + **/ 2.27685 + CImg<T>& select(CImgDisplay &disp, 2.27686 + const int select_type=2, unsigned int *const XYZ=0, 2.27687 + const unsigned char *const color=0) { 2.27688 + return get_select(disp,select_type,XYZ,color).transfer_to(*this); 2.27689 + } 2.27690 + 2.27691 + //! Simple interface to select a shape from an image. 2.27692 + CImg<T>& select(const char *const title, 2.27693 + const int select_type=2, unsigned int *const XYZ=0, 2.27694 + const unsigned char *const color=0) { 2.27695 + return get_select(title,select_type,XYZ,color).transfer_to(*this); 2.27696 + } 2.27697 + 2.27698 + //! Simple interface to select a shape from an image. 2.27699 + CImg<intT> get_select(CImgDisplay &disp, 2.27700 + const int select_type=2, unsigned int *const XYZ=0, 2.27701 + const unsigned char *const color=0) const { 2.27702 + return _get_select(disp,0,select_type,XYZ,color,0,0,0); 2.27703 + } 2.27704 + 2.27705 + //! Simple interface to select a shape from an image. 2.27706 + CImg<intT> get_select(const char *const title, 2.27707 + const int select_type=2, unsigned int *const XYZ=0, 2.27708 + const unsigned char *const color=0) const { 2.27709 + CImgDisplay disp; 2.27710 + return _get_select(disp,title,select_type,XYZ,color,0,0,0); 2.27711 + } 2.27712 + 2.27713 + CImg<intT> _get_select(CImgDisplay &disp, const char *const title, 2.27714 + const int coords_type, unsigned int *const XYZ, 2.27715 + const unsigned char *const color, 2.27716 + const int origX, const int origY, const int origZ) const { 2.27717 + if (is_empty()) 2.27718 + throw CImgInstanceException("CImg<%s>::select() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.27719 + pixel_type(),width,height,depth,dim,data); 2.27720 + if (!disp) { 2.27721 + char ntitle[64] = { 0 }; if (!title) { cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); } 2.27722 + disp.assign(cimg_fitscreen(width,height,depth),title?title:ntitle,1); 2.27723 + } 2.27724 + 2.27725 + const unsigned int 2.27726 + old_normalization = disp.normalization, 2.27727 + hatch = 0x55555555; 2.27728 + 2.27729 + bool old_is_resized = disp.is_resized; 2.27730 + disp.normalization = 0; 2.27731 + disp.show().key = 0; 2.27732 + 2.27733 + unsigned char foreground_color[] = { 255,255,105 }, background_color[] = { 0,0,0 }; 2.27734 + if (color) cimg_std::memcpy(foreground_color,color,sizeof(unsigned char)*cimg::min(3,dimv())); 2.27735 + 2.27736 + int area = 0, clicked_area = 0, phase = 0, 2.27737 + X0 = (int)((XYZ?XYZ[0]:width/2)%width), Y0 = (int)((XYZ?XYZ[1]:height/2)%height), Z0 = (int)((XYZ?XYZ[2]:depth/2)%depth), 2.27738 + X1 =-1, Y1 = -1, Z1 = -1, 2.27739 + X = -1, Y = -1, Z = -1, 2.27740 + oX = X, oY = Y, oZ = Z; 2.27741 + unsigned int old_button = 0, key = 0; 2.27742 + 2.27743 + bool shape_selected = false, text_down = false; 2.27744 + CImg<ucharT> visu, visu0; 2.27745 + char text[1024] = { 0 }; 2.27746 + 2.27747 + while (!key && !disp.is_closed && !shape_selected) { 2.27748 + 2.27749 + // Handle mouse motion and selection 2.27750 + oX = X; oY = Y; oZ = Z; 2.27751 + int mx = disp.mouse_x, my = disp.mouse_y; 2.27752 + const int mX = mx*(width+(depth>1?depth:0))/disp.width, mY = my*(height+(depth>1?depth:0))/disp.height; 2.27753 + 2.27754 + area = 0; 2.27755 + if (mX<dimx() && mY<dimy()) { area = 1; X = mX; Y = mY; Z = phase?Z1:Z0; } 2.27756 + if (mX<dimx() && mY>=dimy()) { area = 2; X = mX; Z = mY-height; Y = phase?Y1:Y0; } 2.27757 + if (mX>=dimx() && mY<dimy()) { area = 3; Y = mY; Z = mX-width; X = phase?X1:X0; } 2.27758 + 2.27759 + switch (key = disp.key) { 2.27760 + case 0 : case cimg::keyCTRLLEFT : disp.key = key = 0; break; 2.27761 + case cimg::keyPAGEUP : if (disp.is_keyCTRLLEFT) { ++disp.wheel; key = 0; } break; 2.27762 + case cimg::keyPAGEDOWN : if (disp.is_keyCTRLLEFT) { --disp.wheel; key = 0; } break; 2.27763 + case cimg::keyD : if (disp.is_keyCTRLLEFT) { 2.27764 + disp.normalscreen().resize(CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,false), 2.27765 + CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,true),false).is_resized = true; 2.27766 + disp.key = key = 0; 2.27767 + } break; 2.27768 + case cimg::keyC : if (disp.is_keyCTRLLEFT) { 2.27769 + disp.normalscreen().resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),false).is_resized = true; 2.27770 + disp.key = key = 0; visu0.assign(); 2.27771 + } break; 2.27772 + case cimg::keyR : if (disp.is_keyCTRLLEFT) { 2.27773 + disp.normalscreen().resize(cimg_fitscreen(width,height,depth),false).is_resized = true; 2.27774 + disp.key = key = 0; visu0.assign(); 2.27775 + } break; 2.27776 + case cimg::keyF : if (disp.is_keyCTRLLEFT) { 2.27777 + disp.resize(disp.screen_dimx(),disp.screen_dimy(),false).toggle_fullscreen().is_resized = true; 2.27778 + disp.key = key = 0; visu0.assign(); 2.27779 + } break; 2.27780 + case cimg::keyS : if (disp.is_keyCTRLLEFT) { 2.27781 + static unsigned int snap_number = 0; 2.27782 + char filename[32] = { 0 }; 2.27783 + cimg_std::FILE *file; 2.27784 + do { 2.27785 + cimg_std::sprintf(filename,"CImg_%.4u.bmp",snap_number++); 2.27786 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.27787 + } while (file); 2.27788 + if (visu0) { 2.27789 + visu.draw_text(2,2,"Saving snapshot...",foreground_color,background_color,0.8f,11).display(disp); 2.27790 + visu0.save(filename); 2.27791 + visu.draw_text(2,2,"Snapshot '%s' saved.",foreground_color,background_color,0.8f,11,filename).display(disp); 2.27792 + } 2.27793 + disp.key = key = 0; 2.27794 + } break; 2.27795 + case cimg::keyO : if (disp.is_keyCTRLLEFT) { 2.27796 + static unsigned int snap_number = 0; 2.27797 + char filename[32] = { 0 }; 2.27798 + cimg_std::FILE *file; 2.27799 + do { 2.27800 + cimg_std::sprintf(filename,"CImg_%.4u.cimg",snap_number++); 2.27801 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.27802 + } while (file); 2.27803 + visu.draw_text(2,2,"Saving instance...",foreground_color,background_color,0.8f,11).display(disp); 2.27804 + save(filename); 2.27805 + visu.draw_text(2,2,"Instance '%s' saved.",foreground_color,background_color,0.8f,11,filename).display(disp); 2.27806 + disp.key = key = 0; 2.27807 + } break; 2.27808 + } 2.27809 + 2.27810 + if (!area) mx = my = X = Y = Z = -1; 2.27811 + else { 2.27812 + if (disp.button&1 && phase<2) { X1 = X; Y1 = Y; Z1 = Z; } 2.27813 + if (!(disp.button&1) && phase>=2) { 2.27814 + switch (clicked_area) { 2.27815 + case 1 : Z1 = Z; break; 2.27816 + case 2 : Y1 = Y; break; 2.27817 + case 3 : X1 = X; break; 2.27818 + } 2.27819 + } 2.27820 + if (disp.button&2) { if (phase) { X1 = X; Y1 = Y; Z1 = Z; } else { X0 = X; Y0 = Y; Z0 = Z; } } 2.27821 + if (disp.button&4) { oX = X = X0; oY = Y = Y0; oZ = Z = Z0; phase = 0; visu.assign(); } 2.27822 + if (disp.wheel) { 2.27823 + if (depth>1 && !disp.is_keyCTRLLEFT && !disp.is_keySHIFTLEFT && !disp.is_keyALT) { 2.27824 + switch (area) { 2.27825 + case 1 : if (phase) Z = (Z1+=disp.wheel); else Z = (Z0+=disp.wheel); break; 2.27826 + case 2 : if (phase) Y = (Y1+=disp.wheel); else Y = (Y0+=disp.wheel); break; 2.27827 + case 3 : if (phase) X = (X1+=disp.wheel); else X = (X0+=disp.wheel); break; 2.27828 + } 2.27829 + disp.wheel = 0; 2.27830 + } else key = ~0U; 2.27831 + } 2.27832 + if ((disp.button&1)!=old_button) { 2.27833 + switch (phase++) { 2.27834 + case 0 : X0 = X1 = X; Y0 = Y1 = Y; Z0 = Z1 = Z; clicked_area = area; break; 2.27835 + case 1 : X1 = X; Y1 = Y; Z1 = Z; break; 2.27836 + } 2.27837 + old_button = disp.button&1; 2.27838 + } 2.27839 + if (depth>1 && (X!=oX || Y!=oY || Z!=oZ)) visu0.assign(); 2.27840 + } 2.27841 + 2.27842 + if (phase) { 2.27843 + if (!coords_type) shape_selected = phase?true:false; 2.27844 + else { 2.27845 + if (depth>1) shape_selected = (phase==3)?true:false; 2.27846 + else shape_selected = (phase==2)?true:false; 2.27847 + } 2.27848 + } 2.27849 + 2.27850 + if (X0<0) X0 = 0; if (X0>=dimx()) X0 = dimx()-1; if (Y0<0) Y0 = 0; if (Y0>=dimy()) Y0 = dimy()-1; 2.27851 + if (Z0<0) Z0 = 0; if (Z0>=dimz()) Z0 = dimz()-1; 2.27852 + if (X1<1) X1 = 0; if (X1>=dimx()) X1 = dimx()-1; if (Y1<0) Y1 = 0; if (Y1>=dimy()) Y1 = dimy()-1; 2.27853 + if (Z1<0) Z1 = 0; if (Z1>=dimz()) Z1 = dimz()-1; 2.27854 + 2.27855 + // Draw visualization image on the display 2.27856 + if (oX!=X || oY!=Y || oZ!=Z || !visu0) { 2.27857 + if (!visu0) { 2.27858 + CImg<Tuchar> tmp, tmp0; 2.27859 + if (depth!=1) { 2.27860 + tmp0 = (!phase)?get_projections2d(X0,Y0,Z0):get_projections2d(X1,Y1,Z1); 2.27861 + tmp = tmp0.get_channels(0,cimg::min(2U,dim-1)); 2.27862 + } else tmp = get_channels(0,cimg::min(2U,dim-1)); 2.27863 + switch (old_normalization) { 2.27864 + case 0 : visu0 = tmp; break; 2.27865 + case 3 : 2.27866 + if (cimg::type<T>::is_float()) visu0 = tmp.normalize(0,(T)255); 2.27867 + else { 2.27868 + const float m = (float)cimg::type<T>::min(), M = (float)cimg::type<T>::max(); 2.27869 + visu0.assign(tmp.width,tmp.height,1,tmp.dim); 2.27870 + unsigned char *ptrd = visu0.end(); 2.27871 + cimg_for(tmp,ptrs,Tuchar) *(--ptrd) = (unsigned char)((*ptrs-m)*255.0f/(M-m)); 2.27872 + } break; 2.27873 + default : visu0 = tmp.normalize(0,255); 2.27874 + } 2.27875 + visu0.resize(disp); 2.27876 + } 2.27877 + visu = visu0; 2.27878 + if (!color) { 2.27879 + if (visu.mean()<200) { 2.27880 + foreground_color[0] = foreground_color[1] = foreground_color[2] = 255; 2.27881 + background_color[0] = background_color[1] = background_color[2] = 0; 2.27882 + } else { 2.27883 + foreground_color[0] = foreground_color[1] = foreground_color[2] = 0; 2.27884 + background_color[0] = background_color[1] = background_color[2] = 255; 2.27885 + } 2.27886 + } 2.27887 + 2.27888 + const int d = (depth>1)?depth:0; 2.27889 + if (phase) switch (coords_type) { 2.27890 + case 1 : { 2.27891 + const int 2.27892 + x0 = (int)((X0+0.5f)*disp.width/(width+d)), 2.27893 + y0 = (int)((Y0+0.5f)*disp.height/(height+d)), 2.27894 + x1 = (int)((X1+0.5f)*disp.width/(width+d)), 2.27895 + y1 = (int)((Y1+0.5f)*disp.height/(height+d)); 2.27896 + visu.draw_arrow(x0,y0,x1,y1,foreground_color,0.6f,30,5,hatch); 2.27897 + if (d) { 2.27898 + const int 2.27899 + zx0 = (int)((width+Z0+0.5f)*disp.width/(width+d)), 2.27900 + zx1 = (int)((width+Z1+0.5f)*disp.width/(width+d)), 2.27901 + zy0 = (int)((height+Z0+0.5f)*disp.height/(height+d)), 2.27902 + zy1 = (int)((height+Z1+0.5f)*disp.height/(height+d)); 2.27903 + visu.draw_arrow(zx0,y0,zx1,y1,foreground_color,0.6f,30,5,hatch). 2.27904 + draw_arrow(x0,zy0,x1,zy1,foreground_color,0.6f,30,5,hatch); 2.27905 + } 2.27906 + } break; 2.27907 + case 2 : { 2.27908 + const int 2.27909 + x0 = (X0<X1?X0:X1)*disp.width/(width+d), y0 = (Y0<Y1?Y0:Y1)*disp.height/(height+d), 2.27910 + x1 = ((X0<X1?X1:X0)+1)*disp.width/(width+d)-1, y1 = ((Y0<Y1?Y1:Y0)+1)*disp.height/(height+d)-1; 2.27911 + visu.draw_rectangle(x0,y0,x1,y1,foreground_color,0.2f).draw_rectangle(x0,y0,x1,y1,foreground_color,0.6f,hatch); 2.27912 + if (d) { 2.27913 + const int 2.27914 + zx0 = (int)((width+(Z0<Z1?Z0:Z1))*disp.width/(width+d)), 2.27915 + zy0 = (int)((height+(Z0<Z1?Z0:Z1))*disp.height/(height+d)), 2.27916 + zx1 = (int)((width+(Z0<Z1?Z1:Z0)+1)*disp.width/(width+d))-1, 2.27917 + zy1 = (int)((height+(Z0<Z1?Z1:Z0)+1)*disp.height/(height+d))-1; 2.27918 + visu.draw_rectangle(zx0,y0,zx1,y1,foreground_color,0.2f).draw_rectangle(zx0,y0,zx1,y1,foreground_color,0.6f,hatch); 2.27919 + visu.draw_rectangle(x0,zy0,x1,zy1,foreground_color,0.2f).draw_rectangle(x0,zy0,x1,zy1,foreground_color,0.6f,hatch); 2.27920 + } 2.27921 + } break; 2.27922 + case 3 : { 2.27923 + const int 2.27924 + x0 = X0*disp.width/(width+d), 2.27925 + y0 = Y0*disp.height/(height+d), 2.27926 + x1 = X1*disp.width/(width+d)-1, 2.27927 + y1 = Y1*disp.height/(height+d)-1; 2.27928 + visu.draw_ellipse(x0,y0,(float)(x1-x0),(float)(y1-y0),1,0,foreground_color,0.2f). 2.27929 + draw_ellipse(x0,y0,(float)(x1-x0),(float)(y1-y0),1,0,foreground_color,0.6f,hatch); 2.27930 + if (d) { 2.27931 + const int 2.27932 + zx0 = (int)((width+Z0)*disp.width/(width+d)), 2.27933 + zy0 = (int)((height+Z0)*disp.height/(height+d)), 2.27934 + zx1 = (int)((width+Z1+1)*disp.width/(width+d))-1, 2.27935 + zy1 = (int)((height+Z1+1)*disp.height/(height+d))-1; 2.27936 + visu.draw_ellipse(zx0,y0,(float)(zx1-zx0),(float)(y1-y0),1,0,foreground_color,0.2f). 2.27937 + draw_ellipse(zx0,y0,(float)(zx1-zx0),(float)(y1-y0),1,0,foreground_color,0.6f,hatch). 2.27938 + draw_ellipse(x0,zy0,(float)(x1-x0),(float)(zy1-zy0),1,0,foreground_color,0.2f). 2.27939 + draw_ellipse(x0,zy0,(float)(x1-x0),(float)(zy1-zy0),1,0,foreground_color,0.6f,hatch); 2.27940 + } 2.27941 + } break; 2.27942 + } else { 2.27943 + const int 2.27944 + x0 = X*disp.width/(width+d), 2.27945 + y0 = Y*disp.height/(height+d), 2.27946 + x1 = (X+1)*disp.width/(width+d)-1, 2.27947 + y1 = (Y+1)*disp.height/(height+d)-1; 2.27948 + if (x1-x0>=4 && y1-y0>=4) visu.draw_rectangle(x0,y0,x1,y1,foreground_color,0.4f,~0U); 2.27949 + } 2.27950 + 2.27951 + if (my<12) text_down = true; 2.27952 + if (my>=visu.dimy()-11) text_down = false; 2.27953 + if (!coords_type || !phase) { 2.27954 + if (X>=0 && Y>=0 && Z>=0 && X<dimx() && Y<dimy() && Z<dimz()) { 2.27955 + if (depth>1) cimg_std::sprintf(text,"Point (%d,%d,%d) = [ ",origX+X,origY+Y,origZ+Z); 2.27956 + else cimg_std::sprintf(text,"Point (%d,%d) = [ ",origX+X,origY+Y); 2.27957 + char *ctext = text + cimg::strlen(text), *const ltext = text + 512; 2.27958 + for (unsigned int k=0; k<dim && ctext<ltext; ++k) { 2.27959 + cimg_std::sprintf(ctext,cimg::type<T>::format(),cimg::type<T>::format((*this)(X,Y,Z,k))); 2.27960 + ctext = text + cimg::strlen(text); 2.27961 + *(ctext++) = ' '; *ctext = '\0'; 2.27962 + } 2.27963 + cimg_std::sprintf(text + cimg::strlen(text),"]"); 2.27964 + } 2.27965 + } else switch (coords_type) { 2.27966 + case 1 : { 2.27967 + const double dX = (double)(X0 - X1), dY = (double)(Y0 - Y1), dZ = (double)(Z0 - Z1), norm = cimg_std::sqrt(dX*dX+dY*dY+dZ*dZ); 2.27968 + if (depth>1) cimg_std::sprintf(text,"Vect (%d,%d,%d)-(%d,%d,%d), Norm = %g", 2.27969 + origX+X0,origY+Y0,origZ+Z0,origX+X1,origY+Y1,origZ+Z1,norm); 2.27970 + else cimg_std::sprintf(text,"Vect (%d,%d)-(%d,%d), Norm = %g", 2.27971 + origX+X0,origY+Y0,origX+X1,origY+Y1,norm); 2.27972 + } break; 2.27973 + case 2 : 2.27974 + if (depth>1) cimg_std::sprintf(text,"Box (%d,%d,%d)-(%d,%d,%d), Size = (%d,%d,%d)", 2.27975 + origX+(X0<X1?X0:X1),origY+(Y0<Y1?Y0:Y1),origZ+(Z0<Z1?Z0:Z1), 2.27976 + origX+(X0<X1?X1:X0),origY+(Y0<Y1?Y1:Y0),origZ+(Z0<Z1?Z1:Z0), 2.27977 + 1+cimg::abs(X0-X1),1+cimg::abs(Y0-Y1),1+cimg::abs(Z0-Z1)); 2.27978 + else cimg_std::sprintf(text,"Box (%d,%d)-(%d,%d), Size = (%d,%d)", 2.27979 + origX+(X0<X1?X0:X1),origY+(Y0<Y1?Y0:Y1),origX+(X0<X1?X1:X0),origY+(Y0<Y1?Y1:Y0), 2.27980 + 1+cimg::abs(X0-X1),1+cimg::abs(Y0-Y1)); 2.27981 + break; 2.27982 + default : 2.27983 + if (depth>1) cimg_std::sprintf(text,"Ellipse (%d,%d,%d)-(%d,%d,%d), Radii = (%d,%d,%d)", 2.27984 + origX+X0,origY+Y0,origZ+Z0,origX+X1,origY+Y1,origZ+Z1, 2.27985 + 1+cimg::abs(X0-X1),1+cimg::abs(Y0-Y1),1+cimg::abs(Z0-Z1)); 2.27986 + else cimg_std::sprintf(text,"Ellipse (%d,%d)-(%d,%d), Radii = (%d,%d)", 2.27987 + origX+X0,origY+Y0,origX+X1,origY+Y1,1+cimg::abs(X0-X1),1+cimg::abs(Y0-Y1)); 2.27988 + 2.27989 + } 2.27990 + if (phase || (mx>=0 && my>=0)) visu.draw_text(0,text_down?visu.dimy()-11:0,text,foreground_color,background_color,0.7f,11); 2.27991 + disp.display(visu).wait(25); 2.27992 + } else if (!shape_selected) disp.wait(); 2.27993 + 2.27994 + if (disp.is_resized) { disp.resize(false); old_is_resized = true; disp.is_resized = false; visu0.assign(); } 2.27995 + } 2.27996 + 2.27997 + // Return result 2.27998 + CImg<intT> res(1,6,1,1,-1); 2.27999 + if (XYZ) { XYZ[0] = (unsigned int)X0; XYZ[1] = (unsigned int)Y0; XYZ[2] = (unsigned int)Z0; } 2.28000 + if (shape_selected) { 2.28001 + if (coords_type==2) { 2.28002 + if (X0>X1) cimg::swap(X0,X1); 2.28003 + if (Y0>Y1) cimg::swap(Y0,Y1); 2.28004 + if (Z0>Z1) cimg::swap(Z0,Z1); 2.28005 + } 2.28006 + if (X1<0 || Y1<0 || Z1<0) X0 = Y0 = Z0 = X1 = Y1 = Z1 = -1; 2.28007 + switch (coords_type) { 2.28008 + case 1 : 2.28009 + case 2 : res[3] = X1; res[4] = Y1; res[5] = Z1; 2.28010 + default : res[0] = X0; res[1] = Y0; res[2] = Z0; 2.28011 + } 2.28012 + } 2.28013 + disp.button = 0; 2.28014 + disp.normalization = old_normalization; 2.28015 + disp.is_resized = old_is_resized; 2.28016 + if (key!=~0U) disp.key = key; 2.28017 + return res; 2.28018 + } 2.28019 + 2.28020 + //! High-level interface for displaying a 3d object. 2.28021 + template<typename tp, typename tf, typename tc, typename to> 2.28022 + const CImg<T>& display_object3d(CImgDisplay& disp, 2.28023 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.28024 + const CImgList<tc>& colors, const to& opacities, 2.28025 + const bool centering=true, 2.28026 + const int render_static=4, const int render_motion=1, 2.28027 + const bool double_sided=false, const float focale=500, 2.28028 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28029 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28030 + return _display_object3d(disp,0,points,points.width,primitives,colors,opacities,centering,render_static, 2.28031 + render_motion,double_sided,focale,specular_light,specular_shine, 2.28032 + display_axes,pose_matrix); 2.28033 + } 2.28034 + 2.28035 + //! High-level interface for displaying a 3d object. 2.28036 + template<typename tp, typename tf, typename tc, typename to> 2.28037 + const CImg<T>& display_object3d(const char *const title, 2.28038 + const CImg<tp>& points, const CImgList<tf>& primitives, 2.28039 + const CImgList<tc>& colors, const to& opacities, 2.28040 + const bool centering=true, 2.28041 + const int render_static=4, const int render_motion=1, 2.28042 + const bool double_sided=false, const float focale=500, 2.28043 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28044 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28045 + CImgDisplay disp; 2.28046 + return _display_object3d(disp,title,points,points.width,primitives,colors,opacities,centering,render_static, 2.28047 + render_motion,double_sided,focale,specular_light,specular_shine, 2.28048 + display_axes,pose_matrix); 2.28049 + } 2.28050 + 2.28051 + //! High-level interface for displaying a 3d object. 2.28052 + template<typename tp, typename tf, typename tc, typename to> 2.28053 + const CImg<T>& display_object3d(CImgDisplay& disp, 2.28054 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.28055 + const CImgList<tc>& colors, const to& opacities, 2.28056 + const bool centering=true, 2.28057 + const int render_static=4, const int render_motion=1, 2.28058 + const bool double_sided=false, const float focale=500, 2.28059 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28060 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28061 + return _display_object3d(disp,0,points,points.size,primitives,colors,opacities,centering,render_static, 2.28062 + render_motion,double_sided,focale,specular_light,specular_shine, 2.28063 + display_axes,pose_matrix); 2.28064 + } 2.28065 + 2.28066 + //! High-level interface for displaying a 3d object. 2.28067 + template<typename tp, typename tf, typename tc, typename to> 2.28068 + const CImg<T>& display_object3d(const char *const title, 2.28069 + const CImgList<tp>& points, const CImgList<tf>& primitives, 2.28070 + const CImgList<tc>& colors, const to& opacities, 2.28071 + const bool centering=true, 2.28072 + const int render_static=4, const int render_motion=1, 2.28073 + const bool double_sided=false, const float focale=500, 2.28074 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28075 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28076 + CImgDisplay disp; 2.28077 + return _display_object3d(disp,title,points,points.size,primitives,colors,opacities,centering,render_static, 2.28078 + render_motion,double_sided,focale,specular_light,specular_shine, 2.28079 + display_axes,pose_matrix); 2.28080 + } 2.28081 + 2.28082 + //! High-level interface for displaying a 3d object. 2.28083 + template<typename tp, typename tf, typename tc> 2.28084 + const CImg<T>& display_object3d(CImgDisplay &disp, 2.28085 + const tp& points, const CImgList<tf>& primitives, 2.28086 + const CImgList<tc>& colors, 2.28087 + const bool centering=true, 2.28088 + const int render_static=4, const int render_motion=1, 2.28089 + const bool double_sided=false, const float focale=500, 2.28090 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28091 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28092 + return display_object3d(disp,points,primitives,colors,CImg<floatT>(),centering, 2.28093 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28094 + display_axes,pose_matrix); 2.28095 + } 2.28096 + 2.28097 + //! High-level interface for displaying a 3d object. 2.28098 + template<typename tp, typename tf, typename tc> 2.28099 + const CImg<T>& display_object3d(const char *const title, 2.28100 + const tp& points, const CImgList<tf>& primitives, 2.28101 + const CImgList<tc>& colors, 2.28102 + const bool centering=true, 2.28103 + const int render_static=4, const int render_motion=1, 2.28104 + const bool double_sided=false, const float focale=500, 2.28105 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28106 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28107 + return display_object3d(title,points,primitives,colors,CImg<floatT>(),centering, 2.28108 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28109 + display_axes,pose_matrix); 2.28110 + } 2.28111 + 2.28112 + //! High-level interface for displaying a 3d object. 2.28113 + template<typename tp, typename tf> 2.28114 + const CImg<T>& display_object3d(CImgDisplay &disp, 2.28115 + const tp& points, const CImgList<tf>& primitives, 2.28116 + const bool centering=true, 2.28117 + const int render_static=4, const int render_motion=1, 2.28118 + const bool double_sided=false, const float focale=500, 2.28119 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28120 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28121 + return display_object3d(disp,points,primitives,CImgList<T>(),centering, 2.28122 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28123 + display_axes,pose_matrix); 2.28124 + } 2.28125 + 2.28126 + //! High-level interface for displaying a 3d object. 2.28127 + template<typename tp, typename tf> 2.28128 + const CImg<T>& display_object3d(const char *const title, 2.28129 + const tp& points, const CImgList<tf>& primitives, 2.28130 + const bool centering=true, 2.28131 + const int render_static=4, const int render_motion=1, 2.28132 + const bool double_sided=false, const float focale=500, 2.28133 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28134 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28135 + return display_object3d(title,points,primitives,CImgList<T>(),centering, 2.28136 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28137 + display_axes,pose_matrix); 2.28138 + } 2.28139 + 2.28140 + //! High-level interface for displaying a 3d object. 2.28141 + template<typename tp> 2.28142 + const CImg<T>& display_object3d(CImgDisplay &disp, 2.28143 + const tp& points, 2.28144 + const bool centering=true, 2.28145 + const int render_static=4, const int render_motion=1, 2.28146 + const bool double_sided=false, const float focale=500, 2.28147 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28148 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28149 + return display_object3d(disp,points,CImgList<uintT>(),centering, 2.28150 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28151 + display_axes,pose_matrix); 2.28152 + } 2.28153 + 2.28154 + //! High-level interface for displaying a 3d object. 2.28155 + template<typename tp> 2.28156 + const CImg<T>& display_object3d(const char *const title, 2.28157 + const tp& points, 2.28158 + const bool centering=true, 2.28159 + const int render_static=4, const int render_motion=1, 2.28160 + const bool double_sided=false, const float focale=500, 2.28161 + const float specular_light=0.2f, const float specular_shine=0.1f, 2.28162 + const bool display_axes=true, float *const pose_matrix=0) const { 2.28163 + return display_object3d(title,points,CImgList<uintT>(),centering, 2.28164 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28165 + display_axes,pose_matrix); 2.28166 + } 2.28167 + 2.28168 + T _display_object3d_at2(const int i, const int j) const { 2.28169 + return atXY(i,j,0,0,0); 2.28170 + } 2.28171 + 2.28172 + template<typename tp, typename tf, typename tc, typename to> 2.28173 + const CImg<T>& _display_object3d(CImgDisplay& disp, const char *const title, 2.28174 + const tp& points, const unsigned int Npoints, 2.28175 + const CImgList<tf>& primitives, 2.28176 + const CImgList<tc>& colors, const to& opacities, 2.28177 + const bool centering, 2.28178 + const int render_static, const int render_motion, 2.28179 + const bool double_sided, const float focale, 2.28180 + const float specular_light, const float specular_shine, 2.28181 + const bool display_axes, float *const pose_matrix) const { 2.28182 + 2.28183 + // Check input arguments 2.28184 + if (!points || !Npoints) 2.28185 + throw CImgArgumentException("CImg<%s>::display_object3d() : Given points are empty.", 2.28186 + pixel_type()); 2.28187 + if (is_empty()) { 2.28188 + if (disp) return CImg<T>(disp.width,disp.height,1,colors[0].size(),0). 2.28189 + _display_object3d(disp,title,points,Npoints,primitives,colors,opacities,centering, 2.28190 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28191 + display_axes,pose_matrix); 2.28192 + else return CImg<T>(cimg_fitscreen(640,480,1),1,colors[0].size(),0). 2.28193 + _display_object3d(disp,title,points,Npoints,primitives,colors,opacities,centering, 2.28194 + render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28195 + display_axes,pose_matrix); 2.28196 + } 2.28197 + if (!primitives) { 2.28198 + CImgList<tf> nprimitives(Npoints,1,1,1,1); 2.28199 + cimglist_for(nprimitives,l) nprimitives(l,0) = l; 2.28200 + return _display_object3d(disp,title,points,Npoints,nprimitives,colors,opacities, 2.28201 + centering,render_static,render_motion,double_sided,focale,specular_light,specular_shine, 2.28202 + display_axes,pose_matrix); 2.28203 + } 2.28204 + if (!disp) { 2.28205 + char ntitle[64] = { 0 }; if (!title) { cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); } 2.28206 + disp.assign(cimg_fitscreen(width,height,depth),title?title:ntitle,1); 2.28207 + } 2.28208 + 2.28209 + CImgList<tc> _colors; 2.28210 + if (!colors) _colors.insert(primitives.size,CImg<tc>::vector(200,200,200)); 2.28211 + const CImgList<tc> &ncolors = colors?colors:_colors; 2.28212 + 2.28213 + // Init 3D objects and compute object statistics 2.28214 + CImg<floatT> 2.28215 + pose, rot_mat, zbuffer, 2.28216 + centered_points = centering?CImg<floatT>(Npoints,3):CImg<floatT>(), 2.28217 + rotated_points(Npoints,3), 2.28218 + bbox_points, rotated_bbox_points, 2.28219 + axes_points, rotated_axes_points, 2.28220 + bbox_opacities, axes_opacities; 2.28221 + CImgList<uintT> bbox_primitives, axes_primitives; 2.28222 + CImgList<T> bbox_colors, bbox_colors2, axes_colors; 2.28223 + float dx = 0, dy = 0, dz = 0, ratio = 1; 2.28224 + 2.28225 + T minval = (T)0, maxval = (T)255; 2.28226 + if (disp.normalization && colors) { 2.28227 + minval = colors.minmax(maxval); 2.28228 + if (minval==maxval) { minval = (T)0; maxval = (T)255; } 2.28229 + } 2.28230 + const float meanval = (float)mean(); 2.28231 + bool color_model = true; 2.28232 + if (cimg::abs(meanval-minval)>cimg::abs(meanval-maxval)) color_model = false; 2.28233 + const CImg<T> 2.28234 + background_color(1,1,1,dim,color_model?minval:maxval), 2.28235 + foreground_color(1,1,1,dim,color_model?maxval:minval); 2.28236 + 2.28237 + float xm = cimg::type<float>::max(), xM = 0, ym = xm, yM = 0, zm = xm, zM = 0; 2.28238 + for (unsigned int i = 0; i<Npoints; ++i) { 2.28239 + const float 2.28240 + x = points._display_object3d_at2(i,0), 2.28241 + y = points._display_object3d_at2(i,1), 2.28242 + z = points._display_object3d_at2(i,2); 2.28243 + if (x<xm) xm = x; 2.28244 + if (x>xM) xM = x; 2.28245 + if (y<ym) ym = y; 2.28246 + if (y>yM) yM = y; 2.28247 + if (z<zm) zm = z; 2.28248 + if (z>zM) zM = z; 2.28249 + } 2.28250 + const float delta = cimg::max(xM-xm,yM-ym,zM-zm); 2.28251 + 2.28252 + if (display_axes) { 2.28253 + rotated_axes_points = axes_points.assign(7,3,1,1, 2.28254 + 0,20,0,0,22,-6,-6, 2.28255 + 0,0,20,0,-6,22,-6, 2.28256 + 0,0,0,20,0,0,22); 2.28257 + axes_opacities.assign(3,1,1,1,1); 2.28258 + axes_colors.assign(3,dim,1,1,1,foreground_color[0]); 2.28259 + axes_primitives.assign(3,1,2,1,1, 0,1, 0,2, 0,3); 2.28260 + } 2.28261 + 2.28262 + // Begin user interaction loop 2.28263 + CImg<T> visu0(*this), visu; 2.28264 + bool init = true, clicked = false, redraw = true; 2.28265 + unsigned int key = 0; 2.28266 + int x0 = 0, y0 = 0, x1 = 0, y1 = 0; 2.28267 + disp.show().flush(); 2.28268 + 2.28269 + while (!disp.is_closed && !key) { 2.28270 + 2.28271 + // Init object position and scale if necessary 2.28272 + if (init) { 2.28273 + ratio = delta>0?(2.0f*cimg::min(disp.width,disp.height)/(3.0f*delta)):0; 2.28274 + dx = 0.5f*(xM + xm); dy = 0.5f*(yM + ym); dz = 0.5f*(zM + zm); 2.28275 + if (centering) { 2.28276 + cimg_forX(centered_points,l) { 2.28277 + centered_points(l,0) = (float)((points(l,0) - dx)*ratio); 2.28278 + centered_points(l,1) = (float)((points(l,1) - dy)*ratio); 2.28279 + centered_points(l,2) = (float)((points(l,2) - dz)*ratio); 2.28280 + } 2.28281 + } 2.28282 + 2.28283 + if (render_static<0 || render_motion<0) { 2.28284 + rotated_bbox_points = bbox_points.assign(8,3,1,1, 2.28285 + xm,xM,xM,xm,xm,xM,xM,xm, 2.28286 + ym,ym,yM,yM,ym,ym,yM,yM, 2.28287 + zm,zm,zm,zm,zM,zM,zM,zM); 2.28288 + bbox_primitives.assign(6,1,4,1,1, 0,3,2,1, 4,5,6,7, 1,2,6,5, 0,4,7,3, 0,1,5,4, 2,3,7,6); 2.28289 + bbox_colors.assign(6,dim,1,1,1,background_color[0]); 2.28290 + bbox_colors2.assign(6,dim,1,1,1,foreground_color[0]); 2.28291 + bbox_opacities.assign(bbox_colors.size,1,1,1,0.3f); 2.28292 + } 2.28293 + 2.28294 + if (!pose) { 2.28295 + if (pose_matrix) pose = CImg<floatT>(pose_matrix,4,4,1,1,false); 2.28296 + else pose = CImg<floatT>::identity_matrix(4); 2.28297 + } 2.28298 + init = false; 2.28299 + redraw = true; 2.28300 + } 2.28301 + 2.28302 + // Rotate and Draw 3D object 2.28303 + if (redraw) { 2.28304 + const float 2.28305 + r00 = pose(0,0), r10 = pose(1,0), r20 = pose(2,0), r30 = pose(3,0), 2.28306 + r01 = pose(0,1), r11 = pose(1,1), r21 = pose(2,1), r31 = pose(3,1), 2.28307 + r02 = pose(0,2), r12 = pose(1,2), r22 = pose(2,2), r32 = pose(3,2); 2.28308 + if ((clicked && render_motion>=0) || (!clicked && render_static>=0)) { 2.28309 + if (centering) cimg_forX(centered_points,l) { 2.28310 + const float x = centered_points(l,0), y = centered_points(l,1), z = centered_points(l,2); 2.28311 + rotated_points(l,0) = r00*x + r10*y + r20*z + r30; 2.28312 + rotated_points(l,1) = r01*x + r11*y + r21*z + r31; 2.28313 + rotated_points(l,2) = r02*x + r12*y + r22*z + r32; 2.28314 + } else for (unsigned int l = 0; l<Npoints; ++l) { 2.28315 + const float 2.28316 + x = (float)points._display_object3d_at2(l,0), 2.28317 + y = (float)points._display_object3d_at2(l,1), 2.28318 + z = (float)points._display_object3d_at2(l,2); 2.28319 + rotated_points(l,0) = r00*x + r10*y + r20*z + r30; 2.28320 + rotated_points(l,1) = r01*x + r11*y + r21*z + r31; 2.28321 + rotated_points(l,2) = r02*x + r12*y + r22*z + r32; 2.28322 + } 2.28323 + } else { 2.28324 + if (!centering) cimg_forX(bbox_points,l) { 2.28325 + const float x = bbox_points(l,0), y = bbox_points(l,1), z = bbox_points(l,2); 2.28326 + rotated_bbox_points(l,0) = r00*x + r10*y + r20*z + r30; 2.28327 + rotated_bbox_points(l,1) = r01*x + r11*y + r21*z + r31; 2.28328 + rotated_bbox_points(l,2) = r02*x + r12*y + r22*z + r32; 2.28329 + } else cimg_forX(bbox_points,l) { 2.28330 + const float x = (bbox_points(l,0)-dx)*ratio, y = (bbox_points(l,1)-dy)*ratio, z = (bbox_points(l,2)-dz)*ratio; 2.28331 + rotated_bbox_points(l,0) = r00*x + r10*y + r20*z + r30; 2.28332 + rotated_bbox_points(l,1) = r01*x + r11*y + r21*z + r31; 2.28333 + rotated_bbox_points(l,2) = r02*x + r12*y + r22*z + r32; 2.28334 + } 2.28335 + } 2.28336 + 2.28337 + // Draw object 2.28338 + visu = visu0; 2.28339 + if ((clicked && render_motion<0) || (!clicked && render_static<0)) 2.28340 + visu.draw_object3d(visu.width/2.0f,visu.height/2.0f,0,rotated_bbox_points,bbox_primitives,bbox_colors,bbox_opacities,2,false,focale). 2.28341 + draw_object3d(visu.width/2.0f,visu.height/2.0f,0,rotated_bbox_points,bbox_primitives,bbox_colors2,1,false,focale); 2.28342 + else visu.draw_object3d(visu.width/2.0f,visu.height/2.0f,0, 2.28343 + rotated_points,primitives,ncolors,opacities,clicked?render_motion:render_static, 2.28344 + double_sided,focale,visu.dimx()/2.0f,visu.dimy()/2.0f,-5000,specular_light,specular_shine, 2.28345 + (!clicked && render_static>0)?zbuffer.fill(0).ptr():0); 2.28346 + 2.28347 + // Draw axes 2.28348 + if (display_axes) { 2.28349 + const float Xaxes = 25, Yaxes = visu.height - 35.0f; 2.28350 + cimg_forX(axes_points,l) { 2.28351 + const float x = axes_points(l,0), y = axes_points(l,1), z = axes_points(l,2); 2.28352 + rotated_axes_points(l,0) = r00*x + r10*y + r20*z; 2.28353 + rotated_axes_points(l,1) = r01*x + r11*y + r21*z; 2.28354 + rotated_axes_points(l,2) = r02*x + r12*y + r22*z; 2.28355 + } 2.28356 + axes_opacities(0,0) = (rotated_axes_points(1,2)>0)?0.5f:1.0f; 2.28357 + axes_opacities(1,0) = (rotated_axes_points(2,2)>0)?0.5f:1.0f; 2.28358 + axes_opacities(2,0) = (rotated_axes_points(3,2)>0)?0.5f:1.0f; 2.28359 + visu.draw_object3d(Xaxes,Yaxes,0,rotated_axes_points,axes_primitives,axes_colors,axes_opacities,1,false,focale). 2.28360 + draw_text((int)(Xaxes+rotated_axes_points(4,0)), 2.28361 + (int)(Yaxes+rotated_axes_points(4,1)), 2.28362 + "X",axes_colors[0].data,0,axes_opacities(0,0),11). 2.28363 + draw_text((int)(Xaxes+rotated_axes_points(5,0)), 2.28364 + (int)(Yaxes+rotated_axes_points(5,1)), 2.28365 + "Y",axes_colors[1].data,0,axes_opacities(1,0),11). 2.28366 + draw_text((int)(Xaxes+rotated_axes_points(6,0)), 2.28367 + (int)(Yaxes+rotated_axes_points(6,1)), 2.28368 + "Z",axes_colors[2].data,0,axes_opacities(2,0),11); 2.28369 + } 2.28370 + visu.display(disp); 2.28371 + if (!clicked || render_motion==render_static) redraw = false; 2.28372 + } 2.28373 + 2.28374 + // Handle user interaction 2.28375 + disp.wait(); 2.28376 + if ((disp.button || disp.wheel) && disp.mouse_x>=0 && disp.mouse_y>=0) { 2.28377 + redraw = true; 2.28378 + if (!clicked) { x0 = x1 = disp.mouse_x; y0 = y1 = disp.mouse_y; if (!disp.wheel) clicked = true; } 2.28379 + else { x1 = disp.mouse_x; y1 = disp.mouse_y; } 2.28380 + if (disp.button&1) { 2.28381 + const float 2.28382 + R = 0.45f*cimg::min(disp.width,disp.height), 2.28383 + R2 = R*R, 2.28384 + u0 = (float)(x0-disp.dimx()/2), 2.28385 + v0 = (float)(y0-disp.dimy()/2), 2.28386 + u1 = (float)(x1-disp.dimx()/2), 2.28387 + v1 = (float)(y1-disp.dimy()/2), 2.28388 + n0 = (float)cimg_std::sqrt(u0*u0+v0*v0), 2.28389 + n1 = (float)cimg_std::sqrt(u1*u1+v1*v1), 2.28390 + nu0 = n0>R?(u0*R/n0):u0, 2.28391 + nv0 = n0>R?(v0*R/n0):v0, 2.28392 + nw0 = (float)cimg_std::sqrt(cimg::max(0,R2-nu0*nu0-nv0*nv0)), 2.28393 + nu1 = n1>R?(u1*R/n1):u1, 2.28394 + nv1 = n1>R?(v1*R/n1):v1, 2.28395 + nw1 = (float)cimg_std::sqrt(cimg::max(0,R2-nu1*nu1-nv1*nv1)), 2.28396 + u = nv0*nw1-nw0*nv1, 2.28397 + v = nw0*nu1-nu0*nw1, 2.28398 + w = nv0*nu1-nu0*nv1, 2.28399 + n = (float)cimg_std::sqrt(u*u+v*v+w*w), 2.28400 + alpha = (float)cimg_std::asin(n/R2); 2.28401 + rot_mat = CImg<floatT>::rotation_matrix(u,v,w,alpha); 2.28402 + rot_mat *= pose.get_crop(0,0,2,2); 2.28403 + pose.draw_image(rot_mat); 2.28404 + x0=x1; y0=y1; 2.28405 + } 2.28406 + if (disp.button&2) { pose(3,2)+=(y1-y0); x0 = x1; y0 = y1; } 2.28407 + if (disp.wheel) { pose(3,2)-=focale*disp.wheel/10; disp.wheel = 0; } 2.28408 + if (disp.button&4) { pose(3,0)+=(x1-x0); pose(3,1)+=(y1-y0); x0 = x1; y0 = y1; } 2.28409 + if ((disp.button&1) && (disp.button&2)) { init = true; disp.button = 0; x0 = x1; y0 = y1; pose = CImg<floatT>::identity_matrix(4); } 2.28410 + } else if (clicked) { x0 = x1; y0 = y1; clicked = false; redraw = true; } 2.28411 + 2.28412 + switch (key = disp.key) { 2.28413 + case 0 : case cimg::keyCTRLLEFT : disp.key = key = 0; break; 2.28414 + case cimg::keyD: if (disp.is_keyCTRLLEFT) { 2.28415 + disp.normalscreen().resize(CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,false), 2.28416 + CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,true),false).is_resized = true; 2.28417 + disp.key = key = 0; 2.28418 + } break; 2.28419 + case cimg::keyC : if (disp.is_keyCTRLLEFT) { 2.28420 + disp.normalscreen().resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),false).is_resized = true; 2.28421 + disp.key = key = 0; 2.28422 + } break; 2.28423 + case cimg::keyR : if (disp.is_keyCTRLLEFT) { 2.28424 + disp.normalscreen().resize(cimg_fitscreen(width,height,depth),false).is_resized = true; 2.28425 + disp.key = key = 0; 2.28426 + } break; 2.28427 + case cimg::keyF : if (disp.is_keyCTRLLEFT) { 2.28428 + disp.resize(disp.screen_dimx(),disp.screen_dimy()).toggle_fullscreen().is_resized = true; 2.28429 + disp.key = key = 0; 2.28430 + } break; 2.28431 + case cimg::keyZ : if (disp.is_keyCTRLLEFT) { // Enable/Disable Z-buffer 2.28432 + if (zbuffer) zbuffer.assign(); 2.28433 + else zbuffer.assign(disp.width,disp.height); 2.28434 + disp.key = key = 0; redraw = true; 2.28435 + } break; 2.28436 + case cimg::keyS : if (disp.is_keyCTRLLEFT) { // Save snapshot 2.28437 + static unsigned int snap_number = 0; 2.28438 + char filename[32] = { 0 }; 2.28439 + cimg_std::FILE *file; 2.28440 + do { 2.28441 + cimg_std::sprintf(filename,"CImg_%.4u.bmp",snap_number++); 2.28442 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.28443 + } while (file); 2.28444 + (+visu).draw_text(2,2,"Saving BMP snapshot...",foreground_color,background_color,1,11).display(disp); 2.28445 + visu.save(filename); 2.28446 + visu.draw_text(2,2,"Snapshot '%s' saved.",foreground_color,background_color,1,11,filename).display(disp); 2.28447 + disp.key = key = 0; 2.28448 + } break; 2.28449 + case cimg::keyO : if (disp.is_keyCTRLLEFT) { // Save object as an .OFF file 2.28450 + static unsigned int snap_number = 0; 2.28451 + char filename[32] = { 0 }; 2.28452 + cimg_std::FILE *file; 2.28453 + do { 2.28454 + cimg_std::sprintf(filename,"CImg_%.4u.off",snap_number++); 2.28455 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.28456 + } while (file); 2.28457 + visu.draw_text(2,2,"Saving object...",foreground_color,background_color,1,11).display(disp); 2.28458 + points.save_off(filename,primitives,ncolors); 2.28459 + visu.draw_text(2,2,"Object '%s' saved.",foreground_color,background_color,1,11,filename).display(disp); 2.28460 + disp.key = key = 0; 2.28461 + } break; 2.28462 +#ifdef cimg_use_board 2.28463 + case cimg::keyP : if (disp.is_keyCTRLLEFT) { // Save object as a .EPS file 2.28464 + static unsigned int snap_number = 0; 2.28465 + char filename[32] = { 0 }; 2.28466 + cimg_std::FILE *file; 2.28467 + do { 2.28468 + cimg_std::sprintf(filename,"CImg_%.4u.eps",snap_number++); 2.28469 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.28470 + } while (file); 2.28471 + visu.draw_text(2,2,"Saving EPS snapshot...",foreground_color,background_color,1,11).display(disp); 2.28472 + BoardLib::Board board; 2.28473 + (+visu).draw_object3d(board,visu.width/2.0f, visu.height/2.0f, 0, 2.28474 + rotated_points,primitives,ncolors,opacities,clicked?render_motion:render_static, 2.28475 + double_sided,focale,visu.dimx()/2.0f,visu.dimy()/2.0f,-5000,specular_light,specular_shine, 2.28476 + zbuffer.fill(0).ptr()); 2.28477 + board.saveEPS(filename); 2.28478 + visu.draw_text(2,2,"Object '%s' saved.",foreground_color,background_color,1,11,filename).display(disp); 2.28479 + disp.key = key = 0; 2.28480 + } break; 2.28481 + case cimg::keyV : if (disp.is_keyCTRLLEFT) { // Save object as a .SVG file 2.28482 + static unsigned int snap_number = 0; 2.28483 + char filename[32] = { 0 }; 2.28484 + cimg_std::FILE *file; 2.28485 + do { 2.28486 + cimg_std::sprintf(filename,"CImg_%.4u.svg",snap_number++); 2.28487 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.28488 + } while (file); 2.28489 + visu.draw_text(2,2,"Saving SVG snapshot...",foreground_color,background_color,1,11).display(disp); 2.28490 + BoardLib::Board board; 2.28491 + (+visu).draw_object3d(board,visu.width/2.0f, visu.height/2.0f, 0, 2.28492 + rotated_points,primitives,ncolors,opacities,clicked?render_motion:render_static, 2.28493 + double_sided,focale,visu.dimx()/2.0f,visu.dimy()/2.0f,-5000,specular_light,specular_shine, 2.28494 + zbuffer.fill(0).ptr()); 2.28495 + board.saveSVG(filename); 2.28496 + visu.draw_text(2,2,"Object '%s' saved.",foreground_color,background_color,1,11,filename).display(disp); 2.28497 + disp.key = key = 0; 2.28498 + } break; 2.28499 +#endif 2.28500 + } 2.28501 + if (disp.is_resized) { disp.resize(false); visu0 = get_resize(disp,1); if (zbuffer) zbuffer.assign(disp.width,disp.height); redraw = true; } 2.28502 + } 2.28503 + if (pose_matrix) cimg_std::memcpy(pose_matrix,pose.data,16*sizeof(float)); 2.28504 + disp.button = 0; 2.28505 + disp.key = key; 2.28506 + return *this; 2.28507 + } 2.28508 + 2.28509 + //! High-level interface for displaying a graph. 2.28510 + const CImg<T>& display_graph(CImgDisplay &disp, 2.28511 + const unsigned int plot_type=1, const unsigned int vertex_type=1, 2.28512 + const char *const labelx=0, const double xmin=0, const double xmax=0, 2.28513 + const char *const labely=0, const double ymin=0, const double ymax=0) const { 2.28514 + if (is_empty()) 2.28515 + throw CImgInstanceException("CImg<%s>::display_graph() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.28516 + pixel_type(),width,height,depth,dim,data); 2.28517 + const unsigned int siz = width*height*depth, onormalization = disp.normalization; 2.28518 + if (!disp) { char ntitle[64] = { 0 }; cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); disp.assign(640,480,ntitle,0); } 2.28519 + disp.show().flush().normalization = 0; 2.28520 + double y0 = ymin, y1 = ymax, nxmin = xmin, nxmax = xmax; 2.28521 + if (nxmin==nxmax) { nxmin = 0; nxmax = siz - 1.0; } 2.28522 + int x0 = 0, x1 = size()/dimv()-1, key = 0; 2.28523 + 2.28524 + for (bool reset_view = true, resize_disp = false; !key && !disp.is_closed; ) { 2.28525 + if (reset_view) { x0 = 0; x1 = size()/dimv()-1; y0 = ymin; y1 = ymax; reset_view = false; } 2.28526 + CImg<T> zoom(x1-x0+1,1,1,dimv()); 2.28527 + cimg_forV(*this,k) zoom.get_shared_channel(k) = CImg<T>(ptr(x0,0,0,k),x1-x0+1,1,1,1,true); 2.28528 + 2.28529 + if (y0==y1) y0 = zoom.minmax(y1); 2.28530 + if (y0==y1) { --y0; ++y1; } 2.28531 + const CImg<intT> selection = zoom.get_select_graph(disp,plot_type,vertex_type, 2.28532 + labelx,nxmin + x0*(nxmax-nxmin)/siz,nxmin + x1*(nxmax-nxmin)/siz, 2.28533 + labely,y0,y1); 2.28534 + 2.28535 + const int mouse_x = disp.mouse_x, mouse_y = disp.mouse_y; 2.28536 + if (selection[0]>=0 && selection[2]>=0) { 2.28537 + x1 = x0 + selection[2]; 2.28538 + x0 += selection[0]; 2.28539 + if (x0==x1) reset_view = true; 2.28540 + if (selection[1]>=0 && selection[3]>=0) { 2.28541 + y0 = y1 - selection[3]*(y1-y0)/(disp.dimy()-32); 2.28542 + y1 -= selection[1]*(y1-y0)/(disp.dimy()-32); 2.28543 + } 2.28544 + } else { 2.28545 + bool go_in = false, go_out = false, go_left = false, go_right = false, go_up = false, go_down = false; 2.28546 + switch (key = disp.key) { 2.28547 + case cimg::keyHOME : case cimg::keyBACKSPACE : reset_view = resize_disp = true; key = 0; break; 2.28548 + case cimg::keyPADADD : go_in = true; key = 0; break; 2.28549 + case cimg::keyPADSUB : go_out = true; key = 0; break; 2.28550 + case cimg::keyARROWLEFT : case cimg::keyPAD4 : go_left = true; key = 0; break; 2.28551 + case cimg::keyARROWRIGHT : case cimg::keyPAD6 : go_right = true; key = 0; break; 2.28552 + case cimg::keyARROWUP : case cimg::keyPAD8 : go_up = true; key = 0; break; 2.28553 + case cimg::keyARROWDOWN : case cimg::keyPAD2 : go_down = true; key = 0; break; 2.28554 + case cimg::keyPAD7 : go_left = true; go_up = true; key = 0; break; 2.28555 + case cimg::keyPAD9 : go_right = true; go_up = true; key = 0; break; 2.28556 + case cimg::keyPAD1 : go_left = true; go_down = true; key = 0; break; 2.28557 + case cimg::keyPAD3 : go_right = true; go_down = true; key = 0; break; 2.28558 + } 2.28559 + if (disp.wheel) go_out = !(go_in = disp.wheel>0); 2.28560 + 2.28561 + if (go_in) { 2.28562 + const int 2.28563 + xsiz = x1 - x0, 2.28564 + mx = (mouse_x-16)*xsiz/(disp.dimx()-32), 2.28565 + cx = x0 + (mx<0?0:(mx>=xsiz?xsiz:mx)); 2.28566 + if (x1-x0>4) { 2.28567 + x0 = cx - 7*(cx-x0)/8; x1 = cx + 7*(x1-cx)/8; 2.28568 + if (disp.is_keyCTRLLEFT) { 2.28569 + const double 2.28570 + ysiz = y1 - y0, 2.28571 + my = (mouse_y-16)*ysiz/(disp.dimy()-32), 2.28572 + cy = y1 - (my<0?0:(my>=ysiz?ysiz:my)); 2.28573 + y0 = cy - 7*(cy-y0)/8; y1 = cy + 7*(y1-cy)/8; 2.28574 + } else y0 = y1 = 0; 2.28575 + } 2.28576 + } 2.28577 + if (go_out) { 2.28578 + const int deltax = (x1-x0)/8, ndeltax = deltax?deltax:(siz>1?1:0); 2.28579 + x0-=ndeltax; x1+=ndeltax; 2.28580 + if (x0<0) { x1-=x0; x0 = 0; if (x1>=(int)siz) x1 = (int)siz-1; } 2.28581 + if (x1>=(int)siz) { x0-=(x1-siz+1); x1 = (int)siz-1; if (x0<0) x0 = 0; } 2.28582 + if (disp.is_keyCTRLLEFT) { 2.28583 + const double deltay = (y1-y0)/8, ndeltay = deltay?deltay:0.01; 2.28584 + y0-=ndeltay; y1+=ndeltay; 2.28585 + } 2.28586 + } 2.28587 + if (go_left) { 2.28588 + const int delta = (x1-x0)/5, ndelta = delta?delta:1; 2.28589 + if (x0-ndelta>=0) { x0-=ndelta; x1-=ndelta; } 2.28590 + else { x1-=x0; x0 = 0; } 2.28591 + go_left = false; 2.28592 + } 2.28593 + if (go_right) { 2.28594 + const int delta = (x1-x0)/5, ndelta = delta?delta:1; 2.28595 + if (x1+ndelta<(int)siz) { x0+=ndelta; x1+=ndelta; } 2.28596 + else { x0+=(siz-1-x1); x1 = siz-1; } 2.28597 + go_right = false; 2.28598 + } 2.28599 + if (go_up) { 2.28600 + const double delta = (y1-y0)/10, ndelta = delta?delta:1; 2.28601 + y0+=ndelta; y1+=ndelta; 2.28602 + go_up = false; 2.28603 + } 2.28604 + if (go_down) { 2.28605 + const double delta = (y1-y0)/10, ndelta = delta?delta:1; 2.28606 + y0-=ndelta; y1-=ndelta; 2.28607 + go_down = false; 2.28608 + } 2.28609 + } 2.28610 + } 2.28611 + disp.normalization = onormalization; 2.28612 + return *this; 2.28613 + } 2.28614 + 2.28615 + //! High-level interface for displaying a graph. 2.28616 + const CImg<T>& display_graph(const char *const title=0, 2.28617 + const unsigned int plot_type=1, const unsigned int vertex_type=1, 2.28618 + const char *const labelx=0, const double xmin=0, const double xmax=0, 2.28619 + const char *const labely=0, const double ymin=0, const double ymax=0) const { 2.28620 + if (is_empty()) 2.28621 + throw CImgInstanceException("CImg<%s>::display_graph() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.28622 + pixel_type(),width,height,depth,dim,data); 2.28623 + char ntitle[64] = { 0 }; if (!title) cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); 2.28624 + CImgDisplay disp(cimg_fitscreen(640,480,1),title?title:ntitle,0); 2.28625 + return display_graph(disp,plot_type,vertex_type,labelx,xmin,xmax,labely,ymin,ymax); 2.28626 + } 2.28627 + 2.28628 + //! Select sub-graph in a graph. 2.28629 + CImg<intT> get_select_graph(CImgDisplay &disp, 2.28630 + const unsigned int plot_type=1, const unsigned int vertex_type=1, 2.28631 + const char *const labelx=0, const double xmin=0, const double xmax=0, 2.28632 + const char *const labely=0, const double ymin=0, const double ymax=0) const { 2.28633 + if (is_empty()) 2.28634 + throw CImgInstanceException("CImg<%s>::display_graph() : Instance image (%u,%u,%u,%u,%p) is empty.", 2.28635 + pixel_type(),width,height,depth,dim,data); 2.28636 + const unsigned int siz = width*height*depth, onormalization = disp.normalization; 2.28637 + if (!disp) { char ntitle[64] = { 0 }; cimg_std::sprintf(ntitle,"CImg<%s>",pixel_type()); disp.assign(640,480,ntitle,0); } 2.28638 + disp.show().key = disp.normalization = disp.button = disp.wheel = 0; // Must keep 'key' field unchanged. 2.28639 + double nymin = ymin, nymax = ymax, nxmin = xmin, nxmax = xmax; 2.28640 + if (nymin==nymax) nymin = (Tfloat)minmax(nymax); 2.28641 + if (nymin==nymax) { --nymin; ++nymax; } 2.28642 + if (nxmin==nxmax && nxmin==0) { nxmin = 0; nxmax = siz - 1.0; } 2.28643 + 2.28644 + const unsigned char black[] = { 0,0,0 }, white[] = { 255,255,255 }, gray[] = { 220,220,220 }; 2.28645 + const unsigned char gray2[] = { 110,110,110 }, ngray[] = { 35,35,35 }; 2.28646 + static unsigned int odimv = 0; 2.28647 + static CImg<ucharT> palette; 2.28648 + if (odimv!=dim) { 2.28649 + odimv = dim; 2.28650 + palette = CImg<ucharT>(3,dim,1,1,120).noise(70,1); 2.28651 + if (dim==1) { palette[0] = palette[1] = 120; palette[2] = 200; } 2.28652 + else { 2.28653 + palette(0,0) = 220; palette(1,0) = 10; palette(2,0) = 10; 2.28654 + if (dim>1) { palette(0,1) = 10; palette(1,1) = 220; palette(2,1) = 10; } 2.28655 + if (dim>2) { palette(0,2) = 10; palette(1,2) = 10; palette(2,2) = 220; } 2.28656 + } 2.28657 + } 2.28658 + 2.28659 + CImg<ucharT> visu0, visu, graph, text, axes; 2.28660 + const unsigned int whz = width*height*depth; 2.28661 + int x0 = -1, x1 = -1, y0 = -1, y1 = -1, omouse_x = -2, omouse_y = -2; 2.28662 + char message[1024] = { 0 }; 2.28663 + unsigned int okey = 0, obutton = 0; 2.28664 + CImg_3x3(I,unsigned char); 2.28665 + 2.28666 + for (bool selected = false; !selected && !disp.is_closed && !okey && !disp.wheel; ) { 2.28667 + const int mouse_x = disp.mouse_x, mouse_y = disp.mouse_y; 2.28668 + const unsigned int key = disp.key, button = disp.button; 2.28669 + 2.28670 + // Generate graph representation. 2.28671 + if (!visu0) { 2.28672 + visu0.assign(disp.dimx(),disp.dimy(),1,3,220); 2.28673 + const int gdimx = disp.dimx() - 32, gdimy = disp.dimy() - 32; 2.28674 + if (gdimx>0 && gdimy>0) { 2.28675 + graph.assign(gdimx,gdimy,1,3,255); 2.28676 + graph.draw_grid(-10,-10,0,0,false,true,black,0.2f,0x33333333,0x33333333); 2.28677 + cimg_forV(*this,k) graph.draw_graph(get_shared_channel(k),&palette(0,k),(plot_type!=3 || dim==1)?1:0.6f, 2.28678 + plot_type,vertex_type,nymax,nymin); 2.28679 + 2.28680 + axes.assign(gdimx,gdimy,1,1,0); 2.28681 + const float 2.28682 + dx = (float)cimg::abs(nxmax-nxmin), dy = (float)cimg::abs(nymax-nymin), 2.28683 + px = (float)cimg_std::pow(10.0,(int)cimg_std::log10(dx)-2.0), 2.28684 + py = (float)cimg_std::pow(10.0,(int)cimg_std::log10(dy)-2.0); 2.28685 + const CImg<Tdouble> 2.28686 + seqx = CImg<Tdouble>::sequence(1 + gdimx/60,nxmin,nxmax).round(px), 2.28687 + seqy = CImg<Tdouble>::sequence(1 + gdimy/60,nymax,nymin).round(py); 2.28688 + axes.draw_axis(seqx,seqy,white); 2.28689 + if (nymin>0) axes.draw_axis(seqx,gdimy-1,gray); 2.28690 + if (nymax<0) axes.draw_axis(seqx,0,gray); 2.28691 + if (nxmin>0) axes.draw_axis(0,seqy,gray); 2.28692 + if (nxmax<0) axes.draw_axis(gdimx-1,seqy,gray); 2.28693 + 2.28694 + cimg_for3x3(axes,x,y,0,0,I) 2.28695 + if (Icc) { 2.28696 + if (Icc==255) cimg_forV(graph,k) graph(x,y,k) = 0; 2.28697 + else cimg_forV(graph,k) graph(x,y,k) = (unsigned char)(2*graph(x,y,k)/3); 2.28698 + } 2.28699 + else if (Ipc || Inc || Icp || Icn || Ipp || Inn || Ipn || Inp) cimg_forV(graph,k) graph(x,y,k) = (graph(x,y,k)+255)/2; 2.28700 + 2.28701 + visu0.draw_image(16,16,graph); 2.28702 + visu0.draw_line(15,15,16+gdimx,15,gray2).draw_line(16+gdimx,15,16+gdimx,16+gdimy,gray2). 2.28703 + draw_line(16+gdimx,16+gdimy,15,16+gdimy,white).draw_line(15,16+gdimy,15,15,white); 2.28704 + } else graph.assign(); 2.28705 + text.assign().draw_text(0,0,labelx?labelx:"X-axis",white,ngray,1); 2.28706 + visu0.draw_image((visu0.dimx()-text.dimx())/2,visu0.dimy()-14,~text); 2.28707 + text.assign().draw_text(0,0,labely?labely:"Y-axis",white,ngray,1).rotate(-90); 2.28708 + visu0.draw_image(2,(visu0.dimy()-text.dimy())/2,~text); 2.28709 + visu.assign(); 2.28710 + } 2.28711 + 2.28712 + // Generate and display current view. 2.28713 + if (!visu) { 2.28714 + visu.assign(visu0); 2.28715 + if (graph && x0>=0 && x1>=0) { 2.28716 + const int 2.28717 + nx0 = x0<=x1?x0:x1, 2.28718 + nx1 = x0<=x1?x1:x0, 2.28719 + ny0 = y0<=y1?y0:y1, 2.28720 + ny1 = y0<=y1?y1:y0, 2.28721 + sx0 = 16 + nx0*(visu.dimx()-32)/whz, 2.28722 + sx1 = 15 + (nx1+1)*(visu.dimx()-32)/whz, 2.28723 + sy0 = 16 + ny0, 2.28724 + sy1 = 16 + ny1; 2.28725 + 2.28726 + if (y0>=0 && y1>=0) 2.28727 + visu.draw_rectangle(sx0,sy0,sx1,sy1,gray,0.5f).draw_rectangle(sx0,sy0,sx1,sy1,black,0.5f,0xCCCCCCCCU); 2.28728 + else visu.draw_rectangle(sx0,0,sx1,visu.dimy()-17,gray,0.5f). 2.28729 + draw_line(sx0,16,sx0,visu.dimy()-17,black,0.5f,0xCCCCCCCCU). 2.28730 + draw_line(sx1,16,sx1,visu.dimy()-17,black,0.5f,0xCCCCCCCCU); 2.28731 + } 2.28732 + if (mouse_x>=16 && mouse_y>=16 && mouse_x<visu.dimx()-16 && mouse_y<visu.dimy()-16) { 2.28733 + if (graph) visu.draw_line(mouse_x,16,mouse_x,visu.dimy()-17,black,0.5f,0x55555555U); 2.28734 + const unsigned x = (mouse_x-16)*whz/(disp.dimx()-32); 2.28735 + const double cx = nxmin + x*(nxmax-nxmin)/whz; 2.28736 + if (dim>=7) 2.28737 + cimg_std::sprintf(message,"Value[%g] = ( %g %g %g ... %g %g %g )",cx, 2.28738 + (double)(*this)(x,0,0,0),(double)(*this)(x,0,0,1),(double)(*this)(x,0,0,2), 2.28739 + (double)(*this)(x,0,0,dim-4),(double)(*this)(x,0,0,dim-3),(double)(*this)(x,0,0,dim-1)); 2.28740 + else { 2.28741 + cimg_std::sprintf(message,"Value[%g] = ( ",cx); 2.28742 + cimg_forV(*this,k) cimg_std::sprintf(message+cimg::strlen(message),"%g ",(double)(*this)(x,0,0,k)); 2.28743 + cimg_std::sprintf(message+cimg::strlen(message),")"); 2.28744 + } 2.28745 + if (x0>=0 && x1>=0) { 2.28746 + const int 2.28747 + nx0 = x0<=x1?x0:x1, 2.28748 + nx1 = x0<=x1?x1:x0, 2.28749 + ny0 = y0<=y1?y0:y1, 2.28750 + ny1 = y0<=y1?y1:y0; 2.28751 + const double 2.28752 + cx0 = nxmin + nx0*(nxmax-nxmin)/(visu.dimx()-32), 2.28753 + cx1 = nxmin + nx1*(nxmax-nxmin)/(visu.dimx()-32), 2.28754 + cy0 = nymax - ny0*(nymax-nymin)/(visu.dimy()-32), 2.28755 + cy1 = nymax - ny1*(nymax-nymin)/(visu.dimy()-32); 2.28756 + if (y0>=0 && y1>=0) 2.28757 + cimg_std::sprintf(message+cimg::strlen(message)," - Range ( %g, %g ) - ( %g, %g )",cx0,cy0,cx1,cy1); 2.28758 + else 2.28759 + cimg_std::sprintf(message+cimg::strlen(message)," - Range [ %g - %g ]",cx0,cx1); 2.28760 + } 2.28761 + text.assign().draw_text(0,0,message,white,ngray,1); 2.28762 + visu.draw_image((visu.dimx()-text.dimx())/2,2,~text); 2.28763 + } 2.28764 + visu.display(disp); 2.28765 + } 2.28766 + 2.28767 + // Test keys. 2.28768 + switch (okey = key) { 2.28769 + case cimg::keyCTRLLEFT : okey = 0; break; 2.28770 + case cimg::keyD : if (disp.is_keyCTRLLEFT) { 2.28771 + disp.normalscreen().resize(CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,false), 2.28772 + CImgDisplay::_fitscreen(3*disp.width/2,3*disp.height/2,1,128,-100,true),false).is_resized = true; 2.28773 + disp.key = okey = 0; 2.28774 + } break; 2.28775 + case cimg::keyC : if (disp.is_keyCTRLLEFT) { 2.28776 + disp.normalscreen().resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),false).is_resized = true; 2.28777 + disp.key = okey = 0; 2.28778 + } break; 2.28779 + case cimg::keyR : if (disp.is_keyCTRLLEFT) { 2.28780 + disp.normalscreen().resize(cimg_fitscreen(640,480,1),false).is_resized = true; 2.28781 + disp.key = okey = 0; 2.28782 + } break; 2.28783 + case cimg::keyF : if (disp.is_keyCTRLLEFT) { 2.28784 + disp.resize(disp.screen_dimx(),disp.screen_dimy()).toggle_fullscreen().is_resized = true; 2.28785 + disp.key = okey = 0; 2.28786 + } break; 2.28787 + case cimg::keyS : if (disp.is_keyCTRLLEFT) { 2.28788 + static unsigned int snap_number = 0; 2.28789 + if (visu || visu0) { 2.28790 + CImg<ucharT> &screen = visu?visu:visu0; 2.28791 + char filename[32] = { 0 }; 2.28792 + cimg_std::FILE *file; 2.28793 + do { 2.28794 + cimg_std::sprintf(filename,"CImg_%.4u.bmp",snap_number++); 2.28795 + if ((file=cimg_std::fopen(filename,"r"))!=0) cimg_std::fclose(file); 2.28796 + } while (file); 2.28797 + (+screen).draw_text(2,2,"Saving BMP snapshot...",black,gray,1,11).display(disp); 2.28798 + screen.save(filename); 2.28799 + screen.draw_text(2,2,"Snapshot '%s' saved.",black,gray,1,11,filename).display(disp); 2.28800 + } 2.28801 + disp.key = okey = 0; 2.28802 + } break; 2.28803 + } 2.28804 + 2.28805 + // Handle mouse motion and mouse buttons 2.28806 + if (obutton!=button || omouse_x!=mouse_x || omouse_y!=mouse_y) { 2.28807 + visu.assign(); 2.28808 + if (disp.mouse_x>=0 && disp.mouse_y>=0) { 2.28809 + const int 2.28810 + mx = (mouse_x-16)*(int)whz/(disp.dimx()-32), 2.28811 + cx = mx<0?0:(mx>=(int)whz?whz-1:mx), 2.28812 + my = mouse_y-16, 2.28813 + cy = my<=0?0:(my>=(disp.dimy()-32)?(disp.dimy()-32):my); 2.28814 + if (button&1) { if (!obutton) { x0 = cx; y0 = -1; } else { x1 = cx; y1 = -1; }} 2.28815 + else if (button&2) { if (!obutton) { x0 = cx; y0 = cy; } else { x1 = cx; y1 = cy; }} 2.28816 + else if (obutton) { x1 = cx; y1 = y1>=0?cy:-1; selected = true; } 2.28817 + } else if (!button && obutton) selected = true; 2.28818 + obutton = button; omouse_x = mouse_x; omouse_y = mouse_y; 2.28819 + } 2.28820 + if (disp.is_resized) { disp.resize(false); visu0.assign(); } 2.28821 + if (visu && visu0) disp.wait(); 2.28822 + } 2.28823 + disp.normalization = onormalization; 2.28824 + if (x1<x0) cimg::swap(x0,x1); 2.28825 + if (y1<y0) cimg::swap(y0,y1); 2.28826 + disp.key = okey; 2.28827 + return CImg<intT>(4,1,1,1,x0,y0,x1,y1); 2.28828 + } 2.28829 + 2.28830 + //@} 2.28831 + //--------------------------- 2.28832 + // 2.28833 + //! \name Image File Loading 2.28834 + //@{ 2.28835 + //--------------------------- 2.28836 + 2.28837 + //! Load an image from a file. 2.28838 + /** 2.28839 + \param filename is the name of the image file to load. 2.28840 + \note The extension of \c filename defines the file format. If no filename 2.28841 + extension is provided, CImg<T>::get_load() will try to load a .cimg file. 2.28842 + **/ 2.28843 + CImg<T>& load(const char *const filename) { 2.28844 + if (!filename) 2.28845 + throw CImgArgumentException("CImg<%s>::load() : Cannot load (null) filename.", 2.28846 + pixel_type()); 2.28847 + const char *ext = cimg::split_filename(filename); 2.28848 + const unsigned int odebug = cimg::exception_mode(); 2.28849 + cimg::exception_mode() = 0; 2.28850 + assign(); 2.28851 + try { 2.28852 +#ifdef cimg_load_plugin 2.28853 + cimg_load_plugin(filename); 2.28854 +#endif 2.28855 +#ifdef cimg_load_plugin1 2.28856 + cimg_load_plugin1(filename); 2.28857 +#endif 2.28858 +#ifdef cimg_load_plugin2 2.28859 + cimg_load_plugin2(filename); 2.28860 +#endif 2.28861 +#ifdef cimg_load_plugin3 2.28862 + cimg_load_plugin3(filename); 2.28863 +#endif 2.28864 +#ifdef cimg_load_plugin4 2.28865 + cimg_load_plugin4(filename); 2.28866 +#endif 2.28867 +#ifdef cimg_load_plugin5 2.28868 + cimg_load_plugin5(filename); 2.28869 +#endif 2.28870 +#ifdef cimg_load_plugin6 2.28871 + cimg_load_plugin6(filename); 2.28872 +#endif 2.28873 +#ifdef cimg_load_plugin7 2.28874 + cimg_load_plugin7(filename); 2.28875 +#endif 2.28876 +#ifdef cimg_load_plugin8 2.28877 + cimg_load_plugin8(filename); 2.28878 +#endif 2.28879 + // ASCII formats 2.28880 + if (!cimg::strcasecmp(ext,"asc")) load_ascii(filename); 2.28881 + if (!cimg::strcasecmp(ext,"dlm") || 2.28882 + !cimg::strcasecmp(ext,"txt")) load_dlm(filename); 2.28883 + 2.28884 + // 2D binary formats 2.28885 + if (!cimg::strcasecmp(ext,"bmp")) load_bmp(filename); 2.28886 + if (!cimg::strcasecmp(ext,"jpg") || 2.28887 + !cimg::strcasecmp(ext,"jpeg") || 2.28888 + !cimg::strcasecmp(ext,"jpe") || 2.28889 + !cimg::strcasecmp(ext,"jfif") || 2.28890 + !cimg::strcasecmp(ext,"jif")) load_jpeg(filename); 2.28891 + if (!cimg::strcasecmp(ext,"png")) load_png(filename); 2.28892 + if (!cimg::strcasecmp(ext,"ppm") || 2.28893 + !cimg::strcasecmp(ext,"pgm") || 2.28894 + !cimg::strcasecmp(ext,"pnm")) load_pnm(filename); 2.28895 + if (!cimg::strcasecmp(ext,"tif") || 2.28896 + !cimg::strcasecmp(ext,"tiff")) load_tiff(filename); 2.28897 + if (!cimg::strcasecmp(ext,"cr2") || 2.28898 + !cimg::strcasecmp(ext,"crw") || 2.28899 + !cimg::strcasecmp(ext,"dcr") || 2.28900 + !cimg::strcasecmp(ext,"mrw") || 2.28901 + !cimg::strcasecmp(ext,"nef") || 2.28902 + !cimg::strcasecmp(ext,"orf") || 2.28903 + !cimg::strcasecmp(ext,"pix") || 2.28904 + !cimg::strcasecmp(ext,"ptx") || 2.28905 + !cimg::strcasecmp(ext,"raf") || 2.28906 + !cimg::strcasecmp(ext,"srf")) load_dcraw_external(filename); 2.28907 + 2.28908 + // 3D binary formats 2.28909 + if (!cimg::strcasecmp(ext,"dcm") || 2.28910 + !cimg::strcasecmp(ext,"dicom")) load_medcon_external(filename); 2.28911 + if (!cimg::strcasecmp(ext,"hdr") || 2.28912 + !cimg::strcasecmp(ext,"nii")) load_analyze(filename); 2.28913 + if (!cimg::strcasecmp(ext,"par") || 2.28914 + !cimg::strcasecmp(ext,"rec")) load_parrec(filename); 2.28915 + if (!cimg::strcasecmp(ext,"inr")) load_inr(filename); 2.28916 + if (!cimg::strcasecmp(ext,"pan")) load_pandore(filename); 2.28917 + if (!cimg::strcasecmp(ext,"cimg") || 2.28918 + !cimg::strcasecmp(ext,"cimgz") || 2.28919 + *ext=='\0') return load_cimg(filename); 2.28920 + 2.28921 + // Archive files 2.28922 + if (!cimg::strcasecmp(ext,"gz")) load_gzip_external(filename); 2.28923 + 2.28924 + // Image sequences 2.28925 + if (!cimg::strcasecmp(ext,"avi") || 2.28926 + !cimg::strcasecmp(ext,"mov") || 2.28927 + !cimg::strcasecmp(ext,"asf") || 2.28928 + !cimg::strcasecmp(ext,"divx") || 2.28929 + !cimg::strcasecmp(ext,"flv") || 2.28930 + !cimg::strcasecmp(ext,"mpg") || 2.28931 + !cimg::strcasecmp(ext,"m1v") || 2.28932 + !cimg::strcasecmp(ext,"m2v") || 2.28933 + !cimg::strcasecmp(ext,"m4v") || 2.28934 + !cimg::strcasecmp(ext,"mjp") || 2.28935 + !cimg::strcasecmp(ext,"mkv") || 2.28936 + !cimg::strcasecmp(ext,"mpe") || 2.28937 + !cimg::strcasecmp(ext,"movie") || 2.28938 + !cimg::strcasecmp(ext,"ogm") || 2.28939 + !cimg::strcasecmp(ext,"qt") || 2.28940 + !cimg::strcasecmp(ext,"rm") || 2.28941 + !cimg::strcasecmp(ext,"vob") || 2.28942 + !cimg::strcasecmp(ext,"wmv") || 2.28943 + !cimg::strcasecmp(ext,"xvid") || 2.28944 + !cimg::strcasecmp(ext,"mpeg")) load_ffmpeg(filename); 2.28945 + if (is_empty()) throw CImgIOException("CImg<%s>::load()",pixel_type()); 2.28946 + } catch (CImgException& e) { 2.28947 + if (!cimg::strncasecmp(e.message,"cimg::fopen()",13)) { 2.28948 + cimg::exception_mode() = odebug; 2.28949 + throw CImgIOException("CImg<%s>::load() : File '%s' cannot be opened.",pixel_type(),filename); 2.28950 + } else try { 2.28951 + const char *const ftype = cimg::file_type(0,filename); 2.28952 + assign(); 2.28953 + if (!cimg::strcmp(ftype,"pnm")) load_pnm(filename); 2.28954 + if (!cimg::strcmp(ftype,"bmp")) load_bmp(filename); 2.28955 + if (!cimg::strcmp(ftype,"jpeg")) load_jpeg(filename); 2.28956 + if (!cimg::strcmp(ftype,"pan")) load_pandore(filename); 2.28957 + if (!cimg::strcmp(ftype,"png")) load_png(filename); 2.28958 + if (!cimg::strcmp(ftype,"tiff")) load_tiff(filename); 2.28959 + if (is_empty()) throw CImgIOException("CImg<%s>::load()",pixel_type()); 2.28960 + } catch (CImgException&) { 2.28961 + try { 2.28962 + load_other(filename); 2.28963 + } catch (CImgException&) { 2.28964 + assign(); 2.28965 + } 2.28966 + } 2.28967 + } 2.28968 + cimg::exception_mode() = odebug; 2.28969 + if (is_empty()) 2.28970 + throw CImgIOException("CImg<%s>::load() : File '%s', format not recognized.",pixel_type(),filename); 2.28971 + return *this; 2.28972 + } 2.28973 + 2.28974 + static CImg<T> get_load(const char *const filename) { 2.28975 + return CImg<T>().load(filename); 2.28976 + } 2.28977 + 2.28978 + //! Load an image from an ASCII file. 2.28979 + CImg<T>& load_ascii(const char *const filename) { 2.28980 + return _load_ascii(0,filename); 2.28981 + } 2.28982 + 2.28983 + static CImg<T> get_load_ascii(const char *const filename) { 2.28984 + return CImg<T>().load_ascii(filename); 2.28985 + } 2.28986 + 2.28987 + //! Load an image from an ASCII file. 2.28988 + CImg<T>& load_ascii(cimg_std::FILE *const file) { 2.28989 + return _load_ascii(file,0); 2.28990 + } 2.28991 + 2.28992 + static CImg<T> get_load_ascii(cimg_std::FILE *const file) { 2.28993 + return CImg<T>().load_ascii(file); 2.28994 + } 2.28995 + 2.28996 + CImg<T>& _load_ascii(cimg_std::FILE *const file, const char *const filename) { 2.28997 + if (!filename && !file) 2.28998 + throw CImgArgumentException("CImg<%s>::load_ascii() : Cannot load (null) filename.", 2.28999 + pixel_type()); 2.29000 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29001 + char line[256] = { 0 }; 2.29002 + int err = cimg_std::fscanf(nfile,"%*[^0-9]%255[^\n]",line); 2.29003 + unsigned int off, dx = 0, dy = 1, dz = 1, dv = 1; 2.29004 + cimg_std::sscanf(line,"%u%*c%u%*c%u%*c%u",&dx,&dy,&dz,&dv); 2.29005 + err = cimg_std::fscanf(nfile,"%*[^0-9.+-]"); 2.29006 + if (!dx || !dy || !dz || !dv) { 2.29007 + if (!file) cimg::fclose(nfile); 2.29008 + throw CImgIOException("CImg<%s>::load_ascii() : File '%s', invalid .ASC header, specified image dimensions are (%u,%u,%u,%u).", 2.29009 + pixel_type(),filename?filename:"(FILE*)",dx,dy,dz,dv); 2.29010 + } 2.29011 + assign(dx,dy,dz,dv); 2.29012 + const unsigned long siz = size(); 2.29013 + double val; 2.29014 + T *ptr = data; 2.29015 + for (err = 1, off = 0; off<siz && err==1; ++off) { 2.29016 + err = cimg_std::fscanf(nfile,"%lf%*[^0-9.+-]",&val); 2.29017 + *(ptr++) = (T)val; 2.29018 + } 2.29019 + if (err!=1) 2.29020 + cimg::warn("CImg<%s>::load_ascii() : File '%s', only %u/%lu values read.", 2.29021 + pixel_type(),filename?filename:"(FILE*)",off-1,siz); 2.29022 + if (!file) cimg::fclose(nfile); 2.29023 + return *this; 2.29024 + } 2.29025 + 2.29026 + //! Load an image from a DLM file. 2.29027 + CImg<T>& load_dlm(const char *const filename) { 2.29028 + return _load_dlm(0,filename); 2.29029 + } 2.29030 + 2.29031 + static CImg<T> get_load_dlm(const char *const filename) { 2.29032 + return CImg<T>().load_dlm(filename); 2.29033 + } 2.29034 + 2.29035 + //! Load an image from a DLM file. 2.29036 + CImg<T>& load_dlm(cimg_std::FILE *const file) { 2.29037 + return _load_dlm(file,0); 2.29038 + } 2.29039 + 2.29040 + static CImg<T> get_load_dlm(cimg_std::FILE *const file) { 2.29041 + return CImg<T>().load_dlm(file); 2.29042 + } 2.29043 + 2.29044 + CImg<T>& _load_dlm(cimg_std::FILE *const file, const char *const filename) { 2.29045 + if (!filename && !file) 2.29046 + throw CImgArgumentException("CImg<%s>::load_dlm() : Cannot load (null) filename.", 2.29047 + pixel_type()); 2.29048 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"r"); 2.29049 + assign(256,256); 2.29050 + char c, delimiter[256] = { 0 }, tmp[256]; 2.29051 + unsigned int cdx = 0, dx = 0, dy = 0; 2.29052 + int oerr = 0, err; 2.29053 + double val; 2.29054 + while ((err = cimg_std::fscanf(nfile,"%lf%255[^0-9.+-]",&val,delimiter))!=EOF) { 2.29055 + oerr = err; 2.29056 + if (err>0) (*this)(cdx++,dy) = (T)val; 2.29057 + if (cdx>=width) resize(width+256,1,1,1,0); 2.29058 + c = 0; if (!cimg_std::sscanf(delimiter,"%255[^\n]%c",tmp,&c) || c=='\n') { 2.29059 + dx = cimg::max(cdx,dx); 2.29060 + ++dy; 2.29061 + if (dy>=height) resize(width,height+256,1,1,0); 2.29062 + cdx = 0; 2.29063 + } 2.29064 + } 2.29065 + if (cdx && oerr==1) { dx=cdx; ++dy; } 2.29066 + if (!dx || !dy) { 2.29067 + if (!file) cimg::fclose(nfile); 2.29068 + throw CImgIOException("CImg<%s>::load_dlm() : File '%s', invalid DLM file, specified image dimensions are (%u,%u).", 2.29069 + pixel_type(),filename?filename:"(FILE*)",dx,dy); 2.29070 + } 2.29071 + resize(dx,dy,1,1,0); 2.29072 + if (!file) cimg::fclose(nfile); 2.29073 + return *this; 2.29074 + } 2.29075 + 2.29076 + //! Load an image from a BMP file. 2.29077 + CImg<T>& load_bmp(const char *const filename) { 2.29078 + return _load_bmp(0,filename); 2.29079 + } 2.29080 + 2.29081 + static CImg<T> get_load_bmp(const char *const filename) { 2.29082 + return CImg<T>().load_bmp(filename); 2.29083 + } 2.29084 + 2.29085 + //! Load an image from a BMP file. 2.29086 + CImg<T>& load_bmp(cimg_std::FILE *const file) { 2.29087 + return _load_bmp(file,0); 2.29088 + } 2.29089 + 2.29090 + static CImg<T> get_load_bmp(cimg_std::FILE *const file) { 2.29091 + return CImg<T>().load_bmp(file); 2.29092 + } 2.29093 + 2.29094 + CImg<T>& _load_bmp(cimg_std::FILE *const file, const char *const filename) { 2.29095 + if (!filename && !file) 2.29096 + throw CImgArgumentException("CImg<%s>::load_bmp() : Cannot load (null) filename.", 2.29097 + pixel_type()); 2.29098 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29099 + unsigned char header[64]; 2.29100 + cimg::fread(header,54,nfile); 2.29101 + if (header[0]!='B' || header[1]!='M') { 2.29102 + if (!file) cimg::fclose(nfile); 2.29103 + throw CImgIOException("CImg<%s>::load_bmp() : Invalid valid BMP file (filename '%s').", 2.29104 + pixel_type(),filename?filename:"(FILE*)"); 2.29105 + } 2.29106 + assign(); 2.29107 + 2.29108 + // Read header and pixel buffer 2.29109 + int 2.29110 + file_size = header[0x02] + (header[0x03]<<8) + (header[0x04]<<16) + (header[0x05]<<24), 2.29111 + offset = header[0x0A] + (header[0x0B]<<8) + (header[0x0C]<<16) + (header[0x0D]<<24), 2.29112 + dx = header[0x12] + (header[0x13]<<8) + (header[0x14]<<16) + (header[0x15]<<24), 2.29113 + dy = header[0x16] + (header[0x17]<<8) + (header[0x18]<<16) + (header[0x19]<<24), 2.29114 + compression = header[0x1E] + (header[0x1F]<<8) + (header[0x20]<<16) + (header[0x21]<<24), 2.29115 + nb_colors = header[0x2E] + (header[0x2F]<<8) + (header[0x30]<<16) + (header[0x31]<<24), 2.29116 + bpp = header[0x1C] + (header[0x1D]<<8), 2.29117 + *palette = 0; 2.29118 + const int 2.29119 + dx_bytes = (bpp==1)?(dx/8+(dx%8?1:0)):((bpp==4)?(dx/2+(dx%2?1:0)):(dx*bpp/8)), 2.29120 + align = (4-dx_bytes%4)%4, 2.29121 + buf_size = cimg::min(cimg::abs(dy)*(dx_bytes+align),file_size-offset); 2.29122 + 2.29123 + if (bpp<16) { if (!nb_colors) nb_colors=1<<bpp; } else nb_colors = 0; 2.29124 + if (nb_colors) { palette = new int[nb_colors]; cimg::fread(palette,nb_colors,nfile); } 2.29125 + const int xoffset = offset-54-4*nb_colors; 2.29126 + if (xoffset>0) cimg_std::fseek(nfile,xoffset,SEEK_CUR); 2.29127 + unsigned char *buffer = new unsigned char[buf_size], *ptrs = buffer; 2.29128 + cimg::fread(buffer,buf_size,nfile); 2.29129 + if (!file) cimg::fclose(nfile); 2.29130 + 2.29131 + // Decompress buffer (if necessary) 2.29132 + if (compression) { 2.29133 + delete[] buffer; 2.29134 + if (file) { 2.29135 + throw CImgIOException("CImg<%s>::load_bmp() : Not able to read a compressed BMP file using a *FILE input", 2.29136 + pixel_type()); 2.29137 + } else return load_other(filename); 2.29138 + } 2.29139 + 2.29140 + // Read pixel data 2.29141 + assign(dx,cimg::abs(dy),1,3); 2.29142 + switch (bpp) { 2.29143 + case 1 : { // Monochrome 2.29144 + for (int y=height-1; y>=0; --y) { 2.29145 + unsigned char mask = 0x80, val = 0; 2.29146 + cimg_forX(*this,x) { 2.29147 + if (mask==0x80) val = *(ptrs++); 2.29148 + const unsigned char *col = (unsigned char*)(palette+(val&mask?1:0)); 2.29149 + (*this)(x,y,2) = (T)*(col++); 2.29150 + (*this)(x,y,1) = (T)*(col++); 2.29151 + (*this)(x,y,0) = (T)*(col++); 2.29152 + mask = cimg::ror(mask); 2.29153 + } ptrs+=align; } 2.29154 + } break; 2.29155 + case 4 : { // 16 colors 2.29156 + for (int y=height-1; y>=0; --y) { 2.29157 + unsigned char mask = 0xF0, val = 0; 2.29158 + cimg_forX(*this,x) { 2.29159 + if (mask==0xF0) val = *(ptrs++); 2.29160 + const unsigned char color = (unsigned char)((mask<16)?(val&mask):((val&mask)>>4)); 2.29161 + unsigned char *col = (unsigned char*)(palette+color); 2.29162 + (*this)(x,y,2) = (T)*(col++); 2.29163 + (*this)(x,y,1) = (T)*(col++); 2.29164 + (*this)(x,y,0) = (T)*(col++); 2.29165 + mask = cimg::ror(mask,4); 2.29166 + } ptrs+=align; } 2.29167 + } break; 2.29168 + case 8 : { // 256 colors 2.29169 + for (int y=height-1; y>=0; --y) { cimg_forX(*this,x) { 2.29170 + const unsigned char *col = (unsigned char*)(palette+*(ptrs++)); 2.29171 + (*this)(x,y,2) = (T)*(col++); 2.29172 + (*this)(x,y,1) = (T)*(col++); 2.29173 + (*this)(x,y,0) = (T)*(col++); 2.29174 + } ptrs+=align; } 2.29175 + } break; 2.29176 + case 16 : { // 16 bits colors 2.29177 + for (int y=height-1; y>=0; --y) { cimg_forX(*this,x) { 2.29178 + const unsigned char c1 = *(ptrs++), c2 = *(ptrs++); 2.29179 + const unsigned short col = (unsigned short)(c1|(c2<<8)); 2.29180 + (*this)(x,y,2) = (T)(col&0x1F); 2.29181 + (*this)(x,y,1) = (T)((col>>5)&0x1F); 2.29182 + (*this)(x,y,0) = (T)((col>>10)&0x1F); 2.29183 + } ptrs+=align; } 2.29184 + } break; 2.29185 + case 24 : { // 24 bits colors 2.29186 + for (int y=height-1; y>=0; --y) { cimg_forX(*this,x) { 2.29187 + (*this)(x,y,2) = (T)*(ptrs++); 2.29188 + (*this)(x,y,1) = (T)*(ptrs++); 2.29189 + (*this)(x,y,0) = (T)*(ptrs++); 2.29190 + } ptrs+=align; } 2.29191 + } break; 2.29192 + case 32 : { // 32 bits colors 2.29193 + for (int y=height-1; y>=0; --y) { cimg_forX(*this,x) { 2.29194 + (*this)(x,y,2) = (T)*(ptrs++); 2.29195 + (*this)(x,y,1) = (T)*(ptrs++); 2.29196 + (*this)(x,y,0) = (T)*(ptrs++); 2.29197 + ++ptrs; 2.29198 + } ptrs+=align; } 2.29199 + } break; 2.29200 + } 2.29201 + if (palette) delete[] palette; 2.29202 + delete[] buffer; 2.29203 + if (dy<0) mirror('y'); 2.29204 + return *this; 2.29205 + } 2.29206 + 2.29207 + //! Load an image from a JPEG file. 2.29208 + CImg<T>& load_jpeg(const char *const filename) { 2.29209 + return _load_jpeg(0,filename); 2.29210 + } 2.29211 + 2.29212 + static CImg<T> get_load_jpeg(const char *const filename) { 2.29213 + return CImg<T>().load_jpeg(filename); 2.29214 + } 2.29215 + 2.29216 + //! Load an image from a JPEG file. 2.29217 + CImg<T>& load_jpeg(cimg_std::FILE *const file) { 2.29218 + return _load_jpeg(file,0); 2.29219 + } 2.29220 + 2.29221 + static CImg<T> get_load_jpeg(cimg_std::FILE *const file) { 2.29222 + return CImg<T>().load_jpeg(file); 2.29223 + } 2.29224 + 2.29225 + CImg<T>& _load_jpeg(cimg_std::FILE *const file, const char *const filename) { 2.29226 + if (!filename && !file) 2.29227 + throw CImgArgumentException("CImg<%s>::load_jpeg() : Cannot load (null) filename.", 2.29228 + pixel_type()); 2.29229 +#ifndef cimg_use_jpeg 2.29230 + if (file) 2.29231 + throw CImgIOException("CImg<%s>::load_jpeg() : File '(FILE*)' cannot be read without using libjpeg.", 2.29232 + pixel_type()); 2.29233 + else return load_other(filename); 2.29234 +#else 2.29235 + struct jpeg_decompress_struct cinfo; 2.29236 + struct jpeg_error_mgr jerr; 2.29237 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29238 + 2.29239 + cinfo.err = jpeg_std_error(&jerr); 2.29240 + jpeg_create_decompress(&cinfo); 2.29241 + jpeg_stdio_src(&cinfo,nfile); 2.29242 + jpeg_read_header(&cinfo,TRUE); 2.29243 + jpeg_start_decompress(&cinfo); 2.29244 + 2.29245 + if (cinfo.output_components!=1 && cinfo.output_components!=3 && cinfo.output_components!=4) { 2.29246 + cimg::warn("CImg<%s>::load_jpeg() : Don't know how to read image '%s' with libpeg, trying ImageMagick's convert", 2.29247 + pixel_type(),filename?filename:"(FILE*)"); 2.29248 + if (!file) return load_other(filename); 2.29249 + else { 2.29250 + if (!file) cimg::fclose(nfile); 2.29251 + throw CImgIOException("CImg<%s>::load_jpeg() : Cannot read JPEG image '%s' using a *FILE input.", 2.29252 + pixel_type(),filename?filename:"(FILE*)"); 2.29253 + } 2.29254 + } 2.29255 + 2.29256 + const unsigned int row_stride = cinfo.output_width * cinfo.output_components; 2.29257 + unsigned char *buf = new unsigned char[cinfo.output_width*cinfo.output_height*cinfo.output_components], *buf2 = buf; 2.29258 + JSAMPROW row_pointer[1]; 2.29259 + while (cinfo.output_scanline < cinfo.output_height) { 2.29260 + row_pointer[0] = &buf[cinfo.output_scanline*row_stride]; 2.29261 + jpeg_read_scanlines(&cinfo,row_pointer,1); 2.29262 + } 2.29263 + jpeg_finish_decompress(&cinfo); 2.29264 + jpeg_destroy_decompress(&cinfo); 2.29265 + if (!file) cimg::fclose(nfile); 2.29266 + 2.29267 + assign(cinfo.output_width,cinfo.output_height,1,cinfo.output_components); 2.29268 + switch (dim) { 2.29269 + case 1 : { 2.29270 + T *ptr_g = data; 2.29271 + cimg_forXY(*this,x,y) *(ptr_g++) = (T)*(buf2++); 2.29272 + } break; 2.29273 + case 3 : { 2.29274 + T *ptr_r = ptr(0,0,0,0), *ptr_g = ptr(0,0,0,1), *ptr_b = ptr(0,0,0,2); 2.29275 + cimg_forXY(*this,x,y) { 2.29276 + *(ptr_r++) = (T)*(buf2++); 2.29277 + *(ptr_g++) = (T)*(buf2++); 2.29278 + *(ptr_b++) = (T)*(buf2++); 2.29279 + } 2.29280 + } break; 2.29281 + case 4 : { 2.29282 + T *ptr_r = ptr(0,0,0,0), *ptr_g = ptr(0,0,0,1), 2.29283 + *ptr_b = ptr(0,0,0,2), *ptr_a = ptr(0,0,0,3); 2.29284 + cimg_forXY(*this,x,y) { 2.29285 + *(ptr_r++) = (T)*(buf2++); 2.29286 + *(ptr_g++) = (T)*(buf2++); 2.29287 + *(ptr_b++) = (T)*(buf2++); 2.29288 + *(ptr_a++) = (T)*(buf2++); 2.29289 + } 2.29290 + } break; 2.29291 + } 2.29292 + delete[] buf; 2.29293 + return *this; 2.29294 +#endif 2.29295 + } 2.29296 + 2.29297 + //! Load an image from a file, using Magick++ library. 2.29298 + // Added April/may 2006 by Christoph Hormann <chris_hormann@gmx.de> 2.29299 + // This is experimental code, not much tested, use with care. 2.29300 + CImg<T>& load_magick(const char *const filename) { 2.29301 + if (!filename) 2.29302 + throw CImgArgumentException("CImg<%s>::load_magick() : Cannot load (null) filename.", 2.29303 + pixel_type()); 2.29304 +#ifdef cimg_use_magick 2.29305 + Magick::Image image(filename); 2.29306 + const unsigned int W = image.size().width(), H = image.size().height(); 2.29307 + switch (image.type()) { 2.29308 + case Magick::PaletteMatteType : 2.29309 + case Magick::TrueColorMatteType : 2.29310 + case Magick::ColorSeparationType : { 2.29311 + assign(W,H,1,4); 2.29312 + T *rdata = ptr(0,0,0,0), *gdata = ptr(0,0,0,1), *bdata = ptr(0,0,0,2), *adata = ptr(0,0,0,3); 2.29313 + Magick::PixelPacket *pixels = image.getPixels(0,0,W,H); 2.29314 + for (unsigned int off = W*H; off; --off) { 2.29315 + *(rdata++) = (T)(pixels->red); 2.29316 + *(gdata++) = (T)(pixels->green); 2.29317 + *(bdata++) = (T)(pixels->blue); 2.29318 + *(adata++) = (T)(pixels->opacity); 2.29319 + ++pixels; 2.29320 + } 2.29321 + } break; 2.29322 + case Magick::PaletteType : 2.29323 + case Magick::TrueColorType : { 2.29324 + assign(W,H,1,3); 2.29325 + T *rdata = ptr(0,0,0,0), *gdata = ptr(0,0,0,1), *bdata = ptr(0,0,0,2); 2.29326 + Magick::PixelPacket *pixels = image.getPixels(0,0,W,H); 2.29327 + for (unsigned int off = W*H; off; --off) { 2.29328 + *(rdata++) = (T)(pixels->red); 2.29329 + *(gdata++) = (T)(pixels->green); 2.29330 + *(bdata++) = (T)(pixels->blue); 2.29331 + ++pixels; 2.29332 + } 2.29333 + } break; 2.29334 + case Magick::GrayscaleMatteType : { 2.29335 + assign(W,H,1,2); 2.29336 + T *data = ptr(0,0,0,0), *adata = ptr(0,0,0,1); 2.29337 + Magick::PixelPacket *pixels = image.getPixels(0,0,W,H); 2.29338 + for (unsigned int off = W*H; off; --off) { 2.29339 + *(data++) = (T)(pixels->red); 2.29340 + *(adata++) = (T)(pixels->opacity); 2.29341 + ++pixels; 2.29342 + } 2.29343 + } break; 2.29344 + default : { 2.29345 + assign(W,H,1,1); 2.29346 + T *data = ptr(0,0,0,0); 2.29347 + Magick::PixelPacket *pixels = image.getPixels(0,0,W,H); 2.29348 + for (unsigned int off = W*H; off; --off) { 2.29349 + *(data++) = (T)(pixels->red); 2.29350 + ++pixels; 2.29351 + } 2.29352 + } 2.29353 + } 2.29354 +#else 2.29355 + throw CImgIOException("CImg<%s>::load_magick() : File '%s', Magick++ library has not been linked.", 2.29356 + pixel_type(),filename); 2.29357 +#endif 2.29358 + return *this; 2.29359 + } 2.29360 + 2.29361 + static CImg<T> get_load_magick(const char *const filename) { 2.29362 + return CImg<T>().load_magick(filename); 2.29363 + } 2.29364 + 2.29365 + //! Load an image from a PNG file. 2.29366 + CImg<T>& load_png(const char *const filename) { 2.29367 + return _load_png(0,filename); 2.29368 + } 2.29369 + 2.29370 + static CImg<T> get_load_png(const char *const filename) { 2.29371 + return CImg<T>().load_png(filename); 2.29372 + } 2.29373 + 2.29374 + //! Load an image from a PNG file. 2.29375 + CImg<T>& load_png(cimg_std::FILE *const file) { 2.29376 + return _load_png(file,0); 2.29377 + } 2.29378 + 2.29379 + static CImg<T> get_load_png(cimg_std::FILE *const file) { 2.29380 + return CImg<T>().load_png(file); 2.29381 + } 2.29382 + 2.29383 + // (Note : Most of this function has been written by Eric Fausett) 2.29384 + CImg<T>& _load_png(cimg_std::FILE *const file, const char *const filename) { 2.29385 + if (!filename && !file) 2.29386 + throw CImgArgumentException("CImg<%s>::load_png() : Cannot load (null) filename.", 2.29387 + pixel_type()); 2.29388 +#ifndef cimg_use_png 2.29389 + if (file) 2.29390 + throw CImgIOException("CImg<%s>::load_png() : File '(FILE*)' cannot be read without using libpng.", 2.29391 + pixel_type()); 2.29392 + else return load_other(filename); 2.29393 +#else 2.29394 + // Open file and check for PNG validity 2.29395 + const char *volatile nfilename = filename; // two 'volatile' here to remove a g++ warning due to 'setjmp'. 2.29396 + cimg_std::FILE *volatile nfile = file?file:cimg::fopen(nfilename,"rb"); 2.29397 + 2.29398 + unsigned char pngCheck[8]; 2.29399 + cimg::fread(pngCheck,8,(cimg_std::FILE*)nfile); 2.29400 + if (png_sig_cmp(pngCheck,0,8)) { 2.29401 + if (!file) cimg::fclose(nfile); 2.29402 + throw CImgIOException("CImg<%s>::load_png() : File '%s' is not a valid PNG file.", 2.29403 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.29404 + } 2.29405 + 2.29406 + // Setup PNG structures for read 2.29407 + png_voidp user_error_ptr = 0; 2.29408 + png_error_ptr user_error_fn = 0, user_warning_fn = 0; 2.29409 + png_structp png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING,user_error_ptr,user_error_fn,user_warning_fn); 2.29410 + if (!png_ptr) { 2.29411 + if (!file) cimg::fclose(nfile); 2.29412 + throw CImgIOException("CImg<%s>::load_png() : File '%s', trouble initializing 'png_ptr' data structure.", 2.29413 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.29414 + } 2.29415 + png_infop info_ptr = png_create_info_struct(png_ptr); 2.29416 + if (!info_ptr) { 2.29417 + if (!file) cimg::fclose(nfile); 2.29418 + png_destroy_read_struct(&png_ptr,(png_infopp)0,(png_infopp)0); 2.29419 + throw CImgIOException("CImg<%s>::load_png() : File '%s', trouble initializing 'info_ptr' data structure.", 2.29420 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.29421 + } 2.29422 + png_infop end_info = png_create_info_struct(png_ptr); 2.29423 + if (!end_info) { 2.29424 + if (!file) cimg::fclose(nfile); 2.29425 + png_destroy_read_struct(&png_ptr,&info_ptr,(png_infopp)0); 2.29426 + throw CImgIOException("CImg<%s>::load_png() : File '%s', trouble initializing 'end_info' data structure.", 2.29427 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.29428 + } 2.29429 + 2.29430 + // Error handling callback for png file reading 2.29431 + if (setjmp(png_jmpbuf(png_ptr))) { 2.29432 + if (!file) cimg::fclose((cimg_std::FILE*)nfile); 2.29433 + png_destroy_read_struct(&png_ptr, &end_info, (png_infopp)0); 2.29434 + throw CImgIOException("CImg<%s>::load_png() : File '%s', unknown fatal error.", 2.29435 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.29436 + } 2.29437 + png_init_io(png_ptr, nfile); 2.29438 + png_set_sig_bytes(png_ptr, 8); 2.29439 + 2.29440 + // Get PNG Header Info up to data block 2.29441 + png_read_info(png_ptr,info_ptr); 2.29442 + png_uint_32 W, H; 2.29443 + int bit_depth, color_type, interlace_type; 2.29444 + png_get_IHDR(png_ptr,info_ptr,&W,&H,&bit_depth,&color_type,&interlace_type,int_p_NULL,int_p_NULL); 2.29445 + int new_bit_depth = bit_depth; 2.29446 + int new_color_type = color_type; 2.29447 + 2.29448 + // Transforms to unify image data 2.29449 + if (new_color_type == PNG_COLOR_TYPE_PALETTE){ 2.29450 + png_set_palette_to_rgb(png_ptr); 2.29451 + new_color_type -= PNG_COLOR_MASK_PALETTE; 2.29452 + new_bit_depth = 8; 2.29453 + } 2.29454 + if (new_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8){ 2.29455 + png_set_gray_1_2_4_to_8(png_ptr); 2.29456 + new_bit_depth = 8; 2.29457 + } 2.29458 + if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) 2.29459 + png_set_tRNS_to_alpha(png_ptr); 2.29460 + if (new_color_type == PNG_COLOR_TYPE_GRAY || new_color_type == PNG_COLOR_TYPE_GRAY_ALPHA){ 2.29461 + png_set_gray_to_rgb(png_ptr); 2.29462 + new_color_type |= PNG_COLOR_MASK_COLOR; 2.29463 + } 2.29464 + if (new_color_type == PNG_COLOR_TYPE_RGB) 2.29465 + png_set_filler(png_ptr, 0xffffU, PNG_FILLER_AFTER); 2.29466 + png_read_update_info(png_ptr,info_ptr); 2.29467 + if (!(new_bit_depth==8 || new_bit_depth==16)) { 2.29468 + if (!file) cimg::fclose(nfile); 2.29469 + png_destroy_read_struct(&png_ptr, &end_info, (png_infopp)0); 2.29470 + throw CImgIOException("CImg<%s>::load_png() : File '%s', wrong bit coding (bit_depth=%u)", 2.29471 + pixel_type(),nfilename?nfilename:"(FILE*)",new_bit_depth); 2.29472 + } 2.29473 + const int byte_depth = new_bit_depth>>3; 2.29474 + 2.29475 + // Allocate Memory for Image Read 2.29476 + png_bytep *imgData = new png_bytep[H]; 2.29477 + for (unsigned int row = 0; row<H; ++row) imgData[row] = new png_byte[byte_depth*4*W]; 2.29478 + png_read_image(png_ptr,imgData); 2.29479 + png_read_end(png_ptr,end_info); 2.29480 + 2.29481 + // Read pixel data 2.29482 + if (!(new_color_type==PNG_COLOR_TYPE_RGB || new_color_type==PNG_COLOR_TYPE_RGB_ALPHA)) { 2.29483 + if (!file) cimg::fclose(nfile); 2.29484 + png_destroy_read_struct(&png_ptr,&end_info,(png_infopp)0); 2.29485 + throw CImgIOException("CImg<%s>::load_png() : File '%s', wrong color coding (new_color_type=%u)", 2.29486 + pixel_type(),nfilename?nfilename:"(FILE*)",new_color_type); 2.29487 + } 2.29488 + const bool no_alpha_channel = (new_color_type==PNG_COLOR_TYPE_RGB); 2.29489 + assign(W,H,1,no_alpha_channel?3:4); 2.29490 + T *ptr1 = ptr(0,0,0,0), *ptr2 = ptr(0,0,0,1), *ptr3 = ptr(0,0,0,2), *ptr4 = ptr(0,0,0,3); 2.29491 + switch (new_bit_depth) { 2.29492 + case 8 : { 2.29493 + cimg_forY(*this,y){ 2.29494 + const unsigned char *ptrs = (unsigned char*)imgData[y]; 2.29495 + cimg_forX(*this,x){ 2.29496 + *(ptr1++) = (T)*(ptrs++); 2.29497 + *(ptr2++) = (T)*(ptrs++); 2.29498 + *(ptr3++) = (T)*(ptrs++); 2.29499 + if (no_alpha_channel) ++ptrs; else *(ptr4++) = (T)*(ptrs++); 2.29500 + } 2.29501 + } 2.29502 + } break; 2.29503 + case 16 : { 2.29504 + cimg_forY(*this,y){ 2.29505 + const unsigned short *ptrs = (unsigned short*)(imgData[y]); 2.29506 + if (!cimg::endianness()) cimg::invert_endianness(ptrs,4*width); 2.29507 + cimg_forX(*this,x){ 2.29508 + *(ptr1++) = (T)*(ptrs++); 2.29509 + *(ptr2++) = (T)*(ptrs++); 2.29510 + *(ptr3++) = (T)*(ptrs++); 2.29511 + if (no_alpha_channel) ++ptrs; else *(ptr4++) = (T)*(ptrs++); 2.29512 + } 2.29513 + } 2.29514 + } break; 2.29515 + } 2.29516 + png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); 2.29517 + 2.29518 + // Deallocate Image Read Memory 2.29519 + cimg_forY(*this,n) delete[] imgData[n]; 2.29520 + delete[] imgData; 2.29521 + if (!file) cimg::fclose(nfile); 2.29522 + return *this; 2.29523 +#endif 2.29524 + } 2.29525 + 2.29526 + //! Load an image from a PNM file. 2.29527 + CImg<T>& load_pnm(const char *const filename) { 2.29528 + return _load_pnm(0,filename); 2.29529 + } 2.29530 + 2.29531 + static CImg<T> get_load_pnm(const char *const filename) { 2.29532 + return CImg<T>().load_pnm(filename); 2.29533 + } 2.29534 + 2.29535 + //! Load an image from a PNM file. 2.29536 + CImg<T>& load_pnm(cimg_std::FILE *const file) { 2.29537 + return _load_pnm(file,0); 2.29538 + } 2.29539 + 2.29540 + static CImg<T> get_load_pnm(cimg_std::FILE *const file) { 2.29541 + return CImg<T>().load_pnm(file); 2.29542 + } 2.29543 + 2.29544 + CImg<T>& _load_pnm(cimg_std::FILE *const file, const char *const filename) { 2.29545 + if (!filename && !file) 2.29546 + throw CImgArgumentException("CImg<%s>::load_pnm() : Cannot load (null) filename.", 2.29547 + pixel_type()); 2.29548 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29549 + unsigned int ppm_type, W, H, colormax = 255; 2.29550 + char item[1024] = { 0 }; 2.29551 + int err, rval, gval, bval; 2.29552 + const int cimg_iobuffer = 12*1024*1024; 2.29553 + while ((err=cimg_std::fscanf(nfile,"%1023[^\n]",item))!=EOF && (item[0]=='#' || !err)) cimg_std::fgetc(nfile); 2.29554 + if (cimg_std::sscanf(item," P%u",&ppm_type)!=1) { 2.29555 + if (!file) cimg::fclose(nfile); 2.29556 + throw CImgIOException("CImg<%s>::load_pnm() : File '%s', PNM header 'P?' not found.", 2.29557 + pixel_type(),filename?filename:"(FILE*)"); 2.29558 + } 2.29559 + while ((err=cimg_std::fscanf(nfile," %1023[^\n]",item))!=EOF && (item[0]=='#' || !err)) cimg_std::fgetc(nfile); 2.29560 + if ((err=cimg_std::sscanf(item," %u %u %u",&W,&H,&colormax))<2) { 2.29561 + if (!file) cimg::fclose(nfile); 2.29562 + throw CImgIOException("CImg<%s>::load_pnm() : File '%s', WIDTH and HEIGHT fields are not defined in PNM header.", 2.29563 + pixel_type(),filename?filename:"(FILE*)"); 2.29564 + } 2.29565 + if (err==2) { 2.29566 + while ((err=cimg_std::fscanf(nfile," %1023[^\n]",item))!=EOF && (item[0]=='#' || !err)) cimg_std::fgetc(nfile); 2.29567 + if (cimg_std::sscanf(item,"%u",&colormax)!=1) 2.29568 + cimg::warn("CImg<%s>::load_pnm() : File '%s', COLORMAX field is not defined in PNM header.", 2.29569 + pixel_type(),filename?filename:"(FILE*)"); 2.29570 + } 2.29571 + cimg_std::fgetc(nfile); 2.29572 + assign(); 2.29573 + 2.29574 + switch (ppm_type) { 2.29575 + case 2 : { // Grey Ascii 2.29576 + assign(W,H,1,1); 2.29577 + T* rdata = data; 2.29578 + cimg_foroff(*this,off) { if (cimg_std::fscanf(nfile,"%d",&rval)>0) *(rdata++) = (T)rval; else break; } 2.29579 + } break; 2.29580 + case 3 : { // Color Ascii 2.29581 + assign(W,H,1,3); 2.29582 + T *rdata = ptr(0,0,0,0), *gdata = ptr(0,0,0,1), *bdata = ptr(0,0,0,2); 2.29583 + cimg_forXY(*this,x,y) { 2.29584 + if (cimg_std::fscanf(nfile,"%d %d %d",&rval,&gval,&bval)==3) { *(rdata++) = (T)rval; *(gdata++) = (T)gval; *(bdata++) = (T)bval; } 2.29585 + else break; 2.29586 + } 2.29587 + } break; 2.29588 + case 5 : { // Grey Binary 2.29589 + if (colormax<256) { // 8 bits 2.29590 + CImg<ucharT> raw; 2.29591 + assign(W,H,1,1); 2.29592 + T *ptrd = ptr(0,0,0,0); 2.29593 + for (int toread = (int)size(); toread>0; ) { 2.29594 + raw.assign(cimg::min(toread,cimg_iobuffer)); 2.29595 + cimg::fread(raw.data,raw.width,nfile); 2.29596 + toread-=raw.width; 2.29597 + const unsigned char *ptrs = raw.data; 2.29598 + for (unsigned int off = raw.width; off; --off) *(ptrd++) = (T)*(ptrs++); 2.29599 + } 2.29600 + } else { // 16 bits 2.29601 + CImg<ushortT> raw; 2.29602 + assign(W,H,1,1); 2.29603 + T *ptrd = ptr(0,0,0,0); 2.29604 + for (int toread = (int)size(); toread>0; ) { 2.29605 + raw.assign(cimg::min(toread,cimg_iobuffer/2)); 2.29606 + cimg::fread(raw.data,raw.width,nfile); 2.29607 + if (!cimg::endianness()) cimg::invert_endianness(raw.data,raw.width); 2.29608 + toread-=raw.width; 2.29609 + const unsigned short *ptrs = raw.data; 2.29610 + for (unsigned int off = raw.width; off; --off) *(ptrd++) = (T)*(ptrs++); 2.29611 + } 2.29612 + } 2.29613 + } break; 2.29614 + case 6 : { // Color Binary 2.29615 + if (colormax<256) { // 8 bits 2.29616 + CImg<ucharT> raw; 2.29617 + assign(W,H,1,3); 2.29618 + T 2.29619 + *ptr_r = ptr(0,0,0,0), 2.29620 + *ptr_g = ptr(0,0,0,1), 2.29621 + *ptr_b = ptr(0,0,0,2); 2.29622 + for (int toread = (int)size(); toread>0; ) { 2.29623 + raw.assign(cimg::min(toread,cimg_iobuffer)); 2.29624 + cimg::fread(raw.data,raw.width,nfile); 2.29625 + toread-=raw.width; 2.29626 + const unsigned char *ptrs = raw.data; 2.29627 + for (unsigned int off = raw.width/3; off; --off) { 2.29628 + *(ptr_r++) = (T)*(ptrs++); 2.29629 + *(ptr_g++) = (T)*(ptrs++); 2.29630 + *(ptr_b++) = (T)*(ptrs++); 2.29631 + } 2.29632 + } 2.29633 + } else { // 16 bits 2.29634 + CImg<ushortT> raw; 2.29635 + assign(W,H,1,3); 2.29636 + T 2.29637 + *ptr_r = ptr(0,0,0,0), 2.29638 + *ptr_g = ptr(0,0,0,1), 2.29639 + *ptr_b = ptr(0,0,0,2); 2.29640 + for (int toread = (int)size(); toread>0; ) { 2.29641 + raw.assign(cimg::min(toread,cimg_iobuffer/2)); 2.29642 + cimg::fread(raw.data,raw.width,nfile); 2.29643 + if (!cimg::endianness()) cimg::invert_endianness(raw.data,raw.width); 2.29644 + toread-=raw.width; 2.29645 + const unsigned short *ptrs = raw.data; 2.29646 + for (unsigned int off = raw.width/3; off; --off) { 2.29647 + *(ptr_r++) = (T)*(ptrs++); 2.29648 + *(ptr_g++) = (T)*(ptrs++); 2.29649 + *(ptr_b++) = (T)*(ptrs++); 2.29650 + } 2.29651 + } 2.29652 + } 2.29653 + } break; 2.29654 + default : 2.29655 + if (!file) cimg::fclose(nfile); 2.29656 + throw CImgIOException("CImg<%s>::load_pnm() : File '%s', PPM type 'P%d' not supported.", 2.29657 + pixel_type(),filename?filename:"(FILE*)",ppm_type); 2.29658 + } 2.29659 + if (!file) cimg::fclose(nfile); 2.29660 + return *this; 2.29661 + } 2.29662 + 2.29663 + //! Load an image from a RGB file. 2.29664 + CImg<T>& load_rgb(const char *const filename, const unsigned int dimw, const unsigned int dimh=1) { 2.29665 + return _load_rgb(0,filename,dimw,dimh); 2.29666 + } 2.29667 + 2.29668 + static CImg<T> get_load_rgb(const char *const filename, const unsigned int dimw, const unsigned int dimh=1) { 2.29669 + return CImg<T>().load_rgb(filename,dimw,dimh); 2.29670 + } 2.29671 + 2.29672 + //! Load an image from a RGB file. 2.29673 + CImg<T>& load_rgb(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1) { 2.29674 + return _load_rgb(file,0,dimw,dimh); 2.29675 + } 2.29676 + 2.29677 + static CImg<T> get_load_rgb(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1) { 2.29678 + return CImg<T>().load_rgb(file,dimw,dimh); 2.29679 + } 2.29680 + 2.29681 + CImg<T>& _load_rgb(cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh) { 2.29682 + if (!filename && !file) 2.29683 + throw CImgArgumentException("CImg<%s>::load_rgb() : Cannot load (null) filename.", 2.29684 + pixel_type()); 2.29685 + if (!dimw || !dimh) return assign(); 2.29686 + const int cimg_iobuffer = 12*1024*1024; 2.29687 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29688 + CImg<ucharT> raw; 2.29689 + assign(dimw,dimh,1,3); 2.29690 + T 2.29691 + *ptr_r = ptr(0,0,0,0), 2.29692 + *ptr_g = ptr(0,0,0,1), 2.29693 + *ptr_b = ptr(0,0,0,2); 2.29694 + for (int toread = (int)size(); toread>0; ) { 2.29695 + raw.assign(cimg::min(toread,cimg_iobuffer)); 2.29696 + cimg::fread(raw.data,raw.width,nfile); 2.29697 + toread-=raw.width; 2.29698 + const unsigned char *ptrs = raw.data; 2.29699 + for (unsigned int off = raw.width/3; off; --off) { 2.29700 + *(ptr_r++) = (T)*(ptrs++); 2.29701 + *(ptr_g++) = (T)*(ptrs++); 2.29702 + *(ptr_b++) = (T)*(ptrs++); 2.29703 + } 2.29704 + } 2.29705 + if (!file) cimg::fclose(nfile); 2.29706 + return *this; 2.29707 + } 2.29708 + 2.29709 + //! Load an image from a RGBA file. 2.29710 + CImg<T>& load_rgba(const char *const filename, const unsigned int dimw, const unsigned int dimh=1) { 2.29711 + return _load_rgba(0,filename,dimw,dimh); 2.29712 + } 2.29713 + 2.29714 + static CImg<T> get_load_rgba(const char *const filename, const unsigned int dimw, const unsigned int dimh=1) { 2.29715 + return CImg<T>().load_rgba(filename,dimw,dimh); 2.29716 + } 2.29717 + 2.29718 + //! Load an image from a RGBA file. 2.29719 + CImg<T>& load_rgba(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1) { 2.29720 + return _load_rgba(file,0,dimw,dimh); 2.29721 + } 2.29722 + 2.29723 + static CImg<T> get_load_rgba(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1) { 2.29724 + return CImg<T>().load_rgba(file,dimw,dimh); 2.29725 + } 2.29726 + 2.29727 + CImg<T>& _load_rgba(cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh) { 2.29728 + if (!filename && !file) 2.29729 + throw CImgArgumentException("CImg<%s>::load_rgba() : Cannot load (null) filename.", 2.29730 + pixel_type()); 2.29731 + if (!dimw || !dimh) return assign(); 2.29732 + const int cimg_iobuffer = 12*1024*1024; 2.29733 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.29734 + CImg<ucharT> raw; 2.29735 + assign(dimw,dimh,1,4); 2.29736 + T 2.29737 + *ptr_r = ptr(0,0,0,0), 2.29738 + *ptr_g = ptr(0,0,0,1), 2.29739 + *ptr_b = ptr(0,0,0,2), 2.29740 + *ptr_a = ptr(0,0,0,3); 2.29741 + for (int toread = (int)size(); toread>0; ) { 2.29742 + raw.assign(cimg::min(toread,cimg_iobuffer)); 2.29743 + cimg::fread(raw.data,raw.width,nfile); 2.29744 + toread-=raw.width; 2.29745 + const unsigned char *ptrs = raw.data; 2.29746 + for (unsigned int off = raw.width/4; off; --off) { 2.29747 + *(ptr_r++) = (T)*(ptrs++); 2.29748 + *(ptr_g++) = (T)*(ptrs++); 2.29749 + *(ptr_b++) = (T)*(ptrs++); 2.29750 + *(ptr_a++) = (T)*(ptrs++); 2.29751 + } 2.29752 + } 2.29753 + if (!file) cimg::fclose(nfile); 2.29754 + return *this; 2.29755 + } 2.29756 + 2.29757 + //! Load an image from a TIFF file. 2.29758 + CImg<T>& load_tiff(const char *const filename, 2.29759 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.29760 + const unsigned int step_frame=1) { 2.29761 + if (!filename) 2.29762 + throw CImgArgumentException("CImg<%s>::load_tiff() : Cannot load (null) filename.", 2.29763 + pixel_type()); 2.29764 + const unsigned int 2.29765 + nfirst_frame = first_frame<last_frame?first_frame:last_frame, 2.29766 + nstep_frame = step_frame?step_frame:1; 2.29767 + unsigned int nlast_frame = first_frame<last_frame?last_frame:first_frame; 2.29768 + 2.29769 +#ifndef cimg_use_tiff 2.29770 + if (nfirst_frame || nlast_frame!=~0U || nstep_frame>1) 2.29771 + throw CImgArgumentException("CImg<%s>::load_tiff() : File '%s', reading sub-images from a tiff file requires the use of libtiff.\n" 2.29772 + "('cimg_use_tiff' must be defined).", 2.29773 + pixel_type(),filename); 2.29774 + return load_other(filename); 2.29775 +#else 2.29776 + TIFF *tif = TIFFOpen(filename,"r"); 2.29777 + if (tif) { 2.29778 + unsigned int nb_images = 0; 2.29779 + do ++nb_images; while (TIFFReadDirectory(tif)); 2.29780 + if (nfirst_frame>=nb_images || (nlast_frame!=~0U && nlast_frame>=nb_images)) 2.29781 + cimg::warn("CImg<%s>::load_tiff() : File '%s' contains %u image(s), specified frame range is [%u,%u] (step %u).", 2.29782 + pixel_type(),filename,nb_images,nfirst_frame,nlast_frame,nstep_frame); 2.29783 + if (nfirst_frame>=nb_images) return assign(); 2.29784 + if (nlast_frame>=nb_images) nlast_frame = nb_images-1; 2.29785 + TIFFSetDirectory(tif,0); 2.29786 + CImg<T> frame; 2.29787 + for (unsigned int l = nfirst_frame; l<=nlast_frame; l+=nstep_frame) { 2.29788 + frame._load_tiff(tif,l); 2.29789 + if (l==nfirst_frame) assign(frame.width,frame.height,1+(nlast_frame-nfirst_frame)/nstep_frame,frame.dim); 2.29790 + if (frame.width>width || frame.height>height || frame.dim>dim) 2.29791 + resize(cimg::max(frame.width,width),cimg::max(frame.height,height),-100,cimg::max(frame.dim,dim),0); 2.29792 + draw_image(0,0,(l-nfirst_frame)/nstep_frame,frame); 2.29793 + } 2.29794 + TIFFClose(tif); 2.29795 + } else throw CImgException("CImg<%s>::load_tiff() : File '%s' cannot be opened.", 2.29796 + pixel_type(),filename); 2.29797 + return *this; 2.29798 +#endif 2.29799 + } 2.29800 + 2.29801 + static CImg<T> get_load_tiff(const char *const filename, 2.29802 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.29803 + const unsigned int step_frame=1) { 2.29804 + return CImg<T>().load_tiff(filename,first_frame,last_frame,step_frame); 2.29805 + } 2.29806 + 2.29807 + // (Original contribution by Jerome Boulanger). 2.29808 +#ifdef cimg_use_tiff 2.29809 + CImg<T>& _load_tiff(TIFF *tif, const unsigned int directory) { 2.29810 + if (!TIFFSetDirectory(tif,directory)) return assign(); 2.29811 + uint16 samplesperpixel, bitspersample; 2.29812 + uint32 nx,ny; 2.29813 + const char *const filename = TIFFFileName(tif); 2.29814 + TIFFGetField(tif,TIFFTAG_IMAGEWIDTH,&nx); 2.29815 + TIFFGetField(tif,TIFFTAG_IMAGELENGTH,&ny); 2.29816 + TIFFGetField(tif,TIFFTAG_SAMPLESPERPIXEL,&samplesperpixel); 2.29817 + if (samplesperpixel!=1 && samplesperpixel!=3 && samplesperpixel!=4) { 2.29818 + cimg::warn("CImg<%s>::load_tiff() : File '%s', unknow value for tag : TIFFTAG_SAMPLESPERPIXEL, will force it to 1.", 2.29819 + pixel_type(),filename); 2.29820 + samplesperpixel = 1; 2.29821 + } 2.29822 + TIFFGetFieldDefaulted(tif,TIFFTAG_BITSPERSAMPLE,&bitspersample); 2.29823 + assign(nx,ny,1,samplesperpixel); 2.29824 + if (bitspersample!=8 || !(samplesperpixel==3 || samplesperpixel==4)) { 2.29825 + uint16 photo, config; 2.29826 + TIFFGetField(tif,TIFFTAG_PLANARCONFIG,&config); 2.29827 + TIFFGetField(tif,TIFFTAG_PHOTOMETRIC,&photo); 2.29828 + if (TIFFIsTiled(tif)) { 2.29829 + uint32 tw, th; 2.29830 + TIFFGetField(tif,TIFFTAG_TILEWIDTH,&tw); 2.29831 + TIFFGetField(tif,TIFFTAG_TILELENGTH,&th); 2.29832 + if (config==PLANARCONFIG_CONTIG) switch (bitspersample) { 2.29833 + case 8 : { 2.29834 + unsigned char *buf = (unsigned char*)_TIFFmalloc(TIFFTileSize(tif)); 2.29835 + if (buf) { 2.29836 + for (unsigned int row = 0; row<ny; row+=th) 2.29837 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29838 + if (TIFFReadTile(tif,buf,col,row,0,0)<0) { 2.29839 + _TIFFfree(buf); TIFFClose(tif); 2.29840 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29841 + pixel_type(),filename); 2.29842 + } else { 2.29843 + unsigned char *ptr = buf; 2.29844 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29845 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29846 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29847 + (*this)(cc,rr,vv) = (T)(float)(ptr[(rr-row)*th*samplesperpixel + (cc-col)*samplesperpixel + vv]); 2.29848 + } 2.29849 + } 2.29850 + _TIFFfree(buf); 2.29851 + } 2.29852 + } break; 2.29853 + case 16 : { 2.29854 + unsigned short *buf = (unsigned short*)_TIFFmalloc(TIFFTileSize(tif)); 2.29855 + if (buf) { 2.29856 + for (unsigned int row = 0; row<ny; row+=th) 2.29857 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29858 + if (TIFFReadTile(tif,buf,col,row,0,0)<0) { 2.29859 + _TIFFfree(buf); TIFFClose(tif); 2.29860 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29861 + pixel_type(),filename); 2.29862 + } else { 2.29863 + unsigned short *ptr = buf; 2.29864 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29865 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29866 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29867 + (*this)(cc,rr,vv) = (T)(float)(ptr[(rr-row)*th*samplesperpixel + (cc-col)*samplesperpixel + vv]); 2.29868 + } 2.29869 + } 2.29870 + _TIFFfree(buf); 2.29871 + } 2.29872 + } break; 2.29873 + case 32 : { 2.29874 + float *buf = (float*)_TIFFmalloc(TIFFTileSize(tif)); 2.29875 + if (buf) { 2.29876 + for (unsigned int row = 0; row<ny; row+=th) 2.29877 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29878 + if (TIFFReadTile(tif,buf,col,row,0,0)<0) { 2.29879 + _TIFFfree(buf); TIFFClose(tif); 2.29880 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29881 + pixel_type(),filename); 2.29882 + } else { 2.29883 + float *ptr = buf; 2.29884 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29885 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29886 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29887 + (*this)(cc,rr,vv) = (T)(float)(ptr[(rr-row)*th*samplesperpixel + (cc-col)*samplesperpixel + vv]); 2.29888 + } 2.29889 + } 2.29890 + _TIFFfree(buf); 2.29891 + } 2.29892 + } break; 2.29893 + } else switch (bitspersample) { 2.29894 + case 8 : { 2.29895 + unsigned char *buf = (unsigned char*)_TIFFmalloc(TIFFTileSize(tif)); 2.29896 + if (buf) { 2.29897 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29898 + for (unsigned int row = 0; row<ny; row+=th) 2.29899 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29900 + if (TIFFReadTile(tif,buf,col,row,0,vv)<0) { 2.29901 + _TIFFfree(buf); TIFFClose(tif); 2.29902 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29903 + pixel_type(),filename); 2.29904 + } else { 2.29905 + unsigned char *ptr = buf; 2.29906 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29907 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29908 + (*this)(cc,rr,vv) = (T)(float)*(ptr++); 2.29909 + } 2.29910 + } 2.29911 + _TIFFfree(buf); 2.29912 + } 2.29913 + } break; 2.29914 + case 16 : { 2.29915 + unsigned short *buf = (unsigned short*)_TIFFmalloc(TIFFTileSize(tif)); 2.29916 + if (buf) { 2.29917 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29918 + for (unsigned int row = 0; row<ny; row+=th) 2.29919 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29920 + if (TIFFReadTile(tif,buf,col,row,0,vv)<0) { 2.29921 + _TIFFfree(buf); TIFFClose(tif); 2.29922 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29923 + pixel_type(),filename); 2.29924 + } else { 2.29925 + unsigned short *ptr = buf; 2.29926 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29927 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29928 + (*this)(cc,rr,vv) = (T)(float)*(ptr++); 2.29929 + } 2.29930 + } 2.29931 + _TIFFfree(buf); 2.29932 + } 2.29933 + } break; 2.29934 + case 32 : { 2.29935 + float *buf = (float*)_TIFFmalloc(TIFFTileSize(tif)); 2.29936 + if (buf) { 2.29937 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.29938 + for (unsigned int row = 0; row<ny; row+=th) 2.29939 + for (unsigned int col = 0; col<nx; col+=tw) { 2.29940 + if (TIFFReadTile(tif,buf,col,row,0,vv)<0) { 2.29941 + _TIFFfree(buf); TIFFClose(tif); 2.29942 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a tile.", 2.29943 + pixel_type(),filename); 2.29944 + } else { 2.29945 + float *ptr = buf; 2.29946 + for (unsigned int rr = row; rr<cimg::min((unsigned int)(row+th),(unsigned int)ny); ++rr) 2.29947 + for (unsigned int cc = col; cc<cimg::min((unsigned int)(col+tw),(unsigned int)nx); ++cc) 2.29948 + (*this)(cc,rr,vv) = (T)(float)*(ptr++); 2.29949 + } 2.29950 + } 2.29951 + _TIFFfree(buf); 2.29952 + } 2.29953 + } break; 2.29954 + } 2.29955 + } else { 2.29956 + if (config==PLANARCONFIG_CONTIG) switch (bitspersample) { 2.29957 + case 8 : { 2.29958 + unsigned char *buf = (unsigned char*)_TIFFmalloc(TIFFStripSize(tif)); 2.29959 + if (buf) { 2.29960 + uint32 row, rowsperstrip = (uint32)-1; 2.29961 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.29962 + for (row = 0; row<ny; row+= rowsperstrip) { 2.29963 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.29964 + tstrip_t strip = TIFFComputeStrip(tif, row, 0); 2.29965 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.29966 + _TIFFfree(buf); TIFFClose(tif); 2.29967 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a strip.", 2.29968 + pixel_type(),filename); 2.29969 + } 2.29970 + unsigned char *ptr = buf; 2.29971 + for (unsigned int rr = 0; rr<nrow; ++rr) 2.29972 + for (unsigned int cc = 0; cc<nx; ++cc) 2.29973 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.29974 + } 2.29975 + _TIFFfree(buf); 2.29976 + } 2.29977 + } break; 2.29978 + case 16 : { 2.29979 + unsigned short *buf = (unsigned short*)_TIFFmalloc(TIFFStripSize(tif)); 2.29980 + if (buf) { 2.29981 + uint32 row, rowsperstrip = (uint32)-1; 2.29982 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.29983 + for (row = 0; row<ny; row+= rowsperstrip) { 2.29984 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.29985 + tstrip_t strip = TIFFComputeStrip(tif, row, 0); 2.29986 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.29987 + _TIFFfree(buf); TIFFClose(tif); 2.29988 + throw CImgException("CImg<%s>::load_tiff() : File '%s', error while reading a strip.", 2.29989 + pixel_type(),filename); 2.29990 + } 2.29991 + unsigned short *ptr = buf; 2.29992 + for (unsigned int rr = 0; rr<nrow; ++rr) 2.29993 + for (unsigned int cc = 0; cc<nx; ++cc) 2.29994 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.29995 + } 2.29996 + _TIFFfree(buf); 2.29997 + } 2.29998 + } break; 2.29999 + case 32 : { 2.30000 + float *buf = (float*)_TIFFmalloc(TIFFStripSize(tif)); 2.30001 + if (buf) { 2.30002 + uint32 row, rowsperstrip = (uint32)-1; 2.30003 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.30004 + for (row = 0; row<ny; row+= rowsperstrip) { 2.30005 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.30006 + tstrip_t strip = TIFFComputeStrip(tif, row, 0); 2.30007 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.30008 + _TIFFfree(buf); TIFFClose(tif); 2.30009 + throw CImgException("CImg<%s>::load_tiff() : File '%s', error while reading a strip.", 2.30010 + pixel_type(),filename); 2.30011 + } 2.30012 + float *ptr = buf; 2.30013 + for (unsigned int rr = 0; rr<nrow; ++rr) 2.30014 + for (unsigned int cc = 0; cc<nx; ++cc) 2.30015 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.30016 + } 2.30017 + _TIFFfree(buf); 2.30018 + } 2.30019 + } break; 2.30020 + } else switch (bitspersample){ 2.30021 + case 8 : { 2.30022 + unsigned char *buf = (unsigned char*)_TIFFmalloc(TIFFStripSize(tif)); 2.30023 + if (buf) { 2.30024 + uint32 row, rowsperstrip = (uint32)-1; 2.30025 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.30026 + for (unsigned int vv=0; vv<samplesperpixel; ++vv) 2.30027 + for (row = 0; row<ny; row+= rowsperstrip) { 2.30028 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.30029 + tstrip_t strip = TIFFComputeStrip(tif, row, vv); 2.30030 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.30031 + _TIFFfree(buf); TIFFClose(tif); 2.30032 + throw CImgException("CImg<%s>::load_tiff() : File '%s', an error occure while reading a strip.", 2.30033 + pixel_type(),filename); 2.30034 + } 2.30035 + unsigned char *ptr = buf; 2.30036 + for (unsigned int rr = 0;rr<nrow; ++rr) 2.30037 + for (unsigned int cc = 0; cc<nx; ++cc) 2.30038 + (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.30039 + } 2.30040 + _TIFFfree(buf); 2.30041 + } 2.30042 + } break; 2.30043 + case 16 : { 2.30044 + unsigned short *buf = (unsigned short*)_TIFFmalloc(TIFFStripSize(tif)); 2.30045 + if (buf) { 2.30046 + uint32 row, rowsperstrip = (uint32)-1; 2.30047 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.30048 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.30049 + for (row = 0; row<ny; row+= rowsperstrip) { 2.30050 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.30051 + tstrip_t strip = TIFFComputeStrip(tif, row, vv); 2.30052 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.30053 + _TIFFfree(buf); TIFFClose(tif); 2.30054 + throw CImgException("CImg<%s>::load_tiff() : File '%s', error while reading a strip.", 2.30055 + pixel_type(),filename); 2.30056 + } 2.30057 + unsigned short *ptr = buf; 2.30058 + for (unsigned int rr = 0; rr<nrow; ++rr) 2.30059 + for (unsigned int cc = 0; cc<nx; ++cc) 2.30060 + (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.30061 + } 2.30062 + _TIFFfree(buf); 2.30063 + } 2.30064 + } break; 2.30065 + case 32 : { 2.30066 + float *buf = (float*)_TIFFmalloc(TIFFStripSize(tif)); 2.30067 + if (buf) { 2.30068 + uint32 row, rowsperstrip = (uint32)-1; 2.30069 + TIFFGetField(tif,TIFFTAG_ROWSPERSTRIP,&rowsperstrip); 2.30070 + for (unsigned int vv = 0; vv<samplesperpixel; ++vv) 2.30071 + for (row = 0; row<ny; row+= rowsperstrip) { 2.30072 + uint32 nrow = (row+rowsperstrip>ny?ny-row:rowsperstrip); 2.30073 + tstrip_t strip = TIFFComputeStrip(tif, row, vv); 2.30074 + if ((TIFFReadEncodedStrip(tif,strip,buf,-1))<0) { 2.30075 + _TIFFfree(buf); TIFFClose(tif); 2.30076 + throw CImgException("CImg<%s>::load_tiff() : File '%s', error while reading a strip.", 2.30077 + pixel_type(),filename); 2.30078 + } 2.30079 + float *ptr = buf; 2.30080 + for (unsigned int rr = 0; rr<nrow; ++rr) for (unsigned int cc = 0; cc<nx; ++cc) 2.30081 + (*this)(cc,row+rr,vv) = (T)(float)*(ptr++); 2.30082 + } 2.30083 + _TIFFfree(buf); 2.30084 + } 2.30085 + } break; 2.30086 + } 2.30087 + } 2.30088 + } else { 2.30089 + uint32* raster = (uint32*)_TIFFmalloc(nx * ny * sizeof (uint32)); 2.30090 + if (!raster) { 2.30091 + _TIFFfree(raster); TIFFClose(tif); 2.30092 + throw CImgException("CImg<%s>::load_tiff() : File '%s', not enough memory for buffer allocation.", 2.30093 + pixel_type(),filename); 2.30094 + } 2.30095 + TIFFReadRGBAImage(tif,nx,ny,raster,0); 2.30096 + switch (samplesperpixel) { 2.30097 + case 1 : { 2.30098 + cimg_forXY(*this,x,y) (*this)(x,y) = (T)(float)((raster[nx*(ny-1-y)+x]+ 128) / 257); 2.30099 + } break; 2.30100 + case 3 : { 2.30101 + cimg_forXY(*this,x,y) { 2.30102 + (*this)(x,y,0) = (T)(float)TIFFGetR(raster[nx*(ny-1-y)+x]); 2.30103 + (*this)(x,y,1) = (T)(float)TIFFGetG(raster[nx*(ny-1-y)+x]); 2.30104 + (*this)(x,y,2) = (T)(float)TIFFGetB(raster[nx*(ny-1-y)+x]); 2.30105 + } 2.30106 + } break; 2.30107 + case 4 : { 2.30108 + cimg_forXY(*this,x,y) { 2.30109 + (*this)(x,y,0) = (T)(float)TIFFGetR(raster[nx*(ny-1-y)+x]); 2.30110 + (*this)(x,y,1) = (T)(float)TIFFGetG(raster[nx*(ny-1-y)+x]); 2.30111 + (*this)(x,y,2) = (T)(float)TIFFGetB(raster[nx*(ny-1-y)+x]); 2.30112 + (*this)(x,y,3) = (T)(float)TIFFGetA(raster[nx*(ny-1-y)+x]); 2.30113 + } 2.30114 + } break; 2.30115 + } 2.30116 + _TIFFfree(raster); 2.30117 + } 2.30118 + return *this; 2.30119 + } 2.30120 +#endif 2.30121 + 2.30122 + //! Load an image from an ANALYZE7.5/NIFTI file. 2.30123 + CImg<T>& load_analyze(const char *const filename, float *const voxsize=0) { 2.30124 + return _load_analyze(0,filename,voxsize); 2.30125 + } 2.30126 + 2.30127 + static CImg<T> get_load_analyze(const char *const filename, float *const voxsize=0) { 2.30128 + return CImg<T>().load_analyze(filename,voxsize); 2.30129 + } 2.30130 + 2.30131 + //! Load an image from an ANALYZE7.5/NIFTI file. 2.30132 + CImg<T>& load_analyze(cimg_std::FILE *const file, float *const voxsize=0) { 2.30133 + return _load_analyze(file,0,voxsize); 2.30134 + } 2.30135 + 2.30136 + static CImg<T> get_load_analyze(cimg_std::FILE *const file, float *const voxsize=0) { 2.30137 + return CImg<T>().load_analyze(file,voxsize); 2.30138 + } 2.30139 + 2.30140 + CImg<T>& _load_analyze(cimg_std::FILE *const file, const char *const filename, float *const voxsize=0) { 2.30141 + if (!filename && !file) 2.30142 + throw CImgArgumentException("CImg<%s>::load_analyze() : Cannot load (null) filename.", 2.30143 + pixel_type()); 2.30144 + cimg_std::FILE *nfile_header = 0, *nfile = 0; 2.30145 + if (!file) { 2.30146 + char body[1024]; 2.30147 + const char *ext = cimg::split_filename(filename,body); 2.30148 + if (!cimg::strcasecmp(ext,"hdr")) { // File is an Analyze header file. 2.30149 + nfile_header = cimg::fopen(filename,"rb"); 2.30150 + cimg_std::sprintf(body+cimg::strlen(body),".img"); 2.30151 + nfile = cimg::fopen(body,"rb"); 2.30152 + } else if (!cimg::strcasecmp(ext,"img")) { // File is an Analyze data file. 2.30153 + nfile = cimg::fopen(filename,"rb"); 2.30154 + cimg_std::sprintf(body+cimg::strlen(body),".hdr"); 2.30155 + nfile_header = cimg::fopen(body,"rb"); 2.30156 + } else nfile_header = nfile = cimg::fopen(filename,"rb"); // File is a Niftii file. 2.30157 + } else nfile_header = nfile = file; // File is a Niftii file. 2.30158 + if (!nfile || !nfile_header) 2.30159 + throw CImgIOException("CImg<%s>::load_analyze() : File '%s', not recognized as an Analyze7.5 or NIFTI file.", 2.30160 + pixel_type(),filename?filename:"(FILE*)"); 2.30161 + 2.30162 + // Read header. 2.30163 + bool endian = false; 2.30164 + unsigned int header_size; 2.30165 + cimg::fread(&header_size,1,nfile_header); 2.30166 + if (!header_size) 2.30167 + throw CImgIOException("CImg<%s>::load_analyze() : File '%s', zero-sized header found.", 2.30168 + pixel_type(),filename?filename:"(FILE*)"); 2.30169 + if (header_size>=4096) { endian = true; cimg::invert_endianness(header_size); } 2.30170 + unsigned char *header = new unsigned char[header_size]; 2.30171 + cimg::fread(header+4,header_size-4,nfile_header); 2.30172 + if (!file && nfile_header!=nfile) cimg::fclose(nfile_header); 2.30173 + if (endian) { 2.30174 + cimg::invert_endianness((short*)(header+40),5); 2.30175 + cimg::invert_endianness((short*)(header+70),1); 2.30176 + cimg::invert_endianness((short*)(header+72),1); 2.30177 + cimg::invert_endianness((float*)(header+76),4); 2.30178 + cimg::invert_endianness((float*)(header+112),1); 2.30179 + } 2.30180 + unsigned short *dim = (unsigned short*)(header+40), dimx = 1, dimy = 1, dimz = 1, dimv = 1; 2.30181 + if (!dim[0]) 2.30182 + cimg::warn("CImg<%s>::load_analyze() : File '%s', tells that image has zero dimensions.", 2.30183 + pixel_type(),filename?filename:"(FILE*)"); 2.30184 + if (dim[0]>4) 2.30185 + cimg::warn("CImg<%s>::load_analyze() : File '%s', number of image dimension is %u, reading only the 4 first dimensions", 2.30186 + pixel_type(),filename?filename:"(FILE*)",dim[0]); 2.30187 + if (dim[0]>=1) dimx = dim[1]; 2.30188 + if (dim[0]>=2) dimy = dim[2]; 2.30189 + if (dim[0]>=3) dimz = dim[3]; 2.30190 + if (dim[0]>=4) dimv = dim[4]; 2.30191 + float scalefactor = *(float*)(header+112); if (scalefactor==0) scalefactor=1; 2.30192 + const unsigned short datatype = *(short*)(header+70); 2.30193 + if (voxsize) { 2.30194 + const float *vsize = (float*)(header+76); 2.30195 + voxsize[0] = vsize[1]; voxsize[1] = vsize[2]; voxsize[2] = vsize[3]; 2.30196 + } 2.30197 + delete[] header; 2.30198 + 2.30199 + // Read pixel data. 2.30200 + assign(dimx,dimy,dimz,dimv); 2.30201 + switch (datatype) { 2.30202 + case 2 : { 2.30203 + unsigned char *buffer = new unsigned char[dimx*dimy*dimz*dimv]; 2.30204 + cimg::fread(buffer,dimx*dimy*dimz*dimv,nfile); 2.30205 + cimg_foroff(*this,off) data[off] = (T)(buffer[off]*scalefactor); 2.30206 + delete[] buffer; 2.30207 + } break; 2.30208 + case 4 : { 2.30209 + short *buffer = new short[dimx*dimy*dimz*dimv]; 2.30210 + cimg::fread(buffer,dimx*dimy*dimz*dimv,nfile); 2.30211 + if (endian) cimg::invert_endianness(buffer,dimx*dimy*dimz*dimv); 2.30212 + cimg_foroff(*this,off) data[off] = (T)(buffer[off]*scalefactor); 2.30213 + delete[] buffer; 2.30214 + } break; 2.30215 + case 8 : { 2.30216 + int *buffer = new int[dimx*dimy*dimz*dimv]; 2.30217 + cimg::fread(buffer,dimx*dimy*dimz*dimv,nfile); 2.30218 + if (endian) cimg::invert_endianness(buffer,dimx*dimy*dimz*dimv); 2.30219 + cimg_foroff(*this,off) data[off] = (T)(buffer[off]*scalefactor); 2.30220 + delete[] buffer; 2.30221 + } break; 2.30222 + case 16 : { 2.30223 + float *buffer = new float[dimx*dimy*dimz*dimv]; 2.30224 + cimg::fread(buffer,dimx*dimy*dimz*dimv,nfile); 2.30225 + if (endian) cimg::invert_endianness(buffer,dimx*dimy*dimz*dimv); 2.30226 + cimg_foroff(*this,off) data[off] = (T)(buffer[off]*scalefactor); 2.30227 + delete[] buffer; 2.30228 + } break; 2.30229 + case 64 : { 2.30230 + double *buffer = new double[dimx*dimy*dimz*dimv]; 2.30231 + cimg::fread(buffer,dimx*dimy*dimz*dimv,nfile); 2.30232 + if (endian) cimg::invert_endianness(buffer,dimx*dimy*dimz*dimv); 2.30233 + cimg_foroff(*this,off) data[off] = (T)(buffer[off]*scalefactor); 2.30234 + delete[] buffer; 2.30235 + } break; 2.30236 + default : 2.30237 + if (!file) cimg::fclose(nfile); 2.30238 + throw CImgIOException("CImg<%s>::load_analyze() : File '%s', cannot read images with 'datatype = %d'", 2.30239 + pixel_type(),filename?filename:"(FILE*)",datatype); 2.30240 + } 2.30241 + if (!file) cimg::fclose(nfile); 2.30242 + return *this; 2.30243 + } 2.30244 + 2.30245 + //! Load an image (list) from a .cimg file. 2.30246 + CImg<T>& load_cimg(const char *const filename, const char axis='z', const char align='p') { 2.30247 + CImgList<T> list; 2.30248 + list.load_cimg(filename); 2.30249 + if (list.size==1) return list[0].transfer_to(*this); 2.30250 + return assign(list.get_append(axis,align)); 2.30251 + } 2.30252 + 2.30253 + static CImg<T> get_load_cimg(const char *const filename, const char axis='z', const char align='p') { 2.30254 + return CImg<T>().load_cimg(filename,axis,align); 2.30255 + } 2.30256 + 2.30257 + //! Load an image (list) from a .cimg file. 2.30258 + CImg<T>& load_cimg(cimg_std::FILE *const file, const char axis='z', const char align='p') { 2.30259 + CImgList<T> list; 2.30260 + list.load_cimg(file); 2.30261 + if (list.size==1) return list[0].transfer_to(*this); 2.30262 + return assign(list.get_append(axis,align)); 2.30263 + } 2.30264 + 2.30265 + static CImg<T> get_load_cimg(cimg_std::FILE *const file, const char axis='z', const char align='p') { 2.30266 + return CImg<T>().load_cimg(file,axis,align); 2.30267 + } 2.30268 + 2.30269 + //! Load a sub-image (list) from a .cimg file. 2.30270 + CImg<T>& load_cimg(const char *const filename, 2.30271 + const unsigned int n0, const unsigned int n1, 2.30272 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.30273 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, 2.30274 + const char axis='z', const char align='p') { 2.30275 + CImgList<T> list; 2.30276 + list.load_cimg(filename,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.30277 + if (list.size==1) return list[0].transfer_to(*this); 2.30278 + return assign(list.get_append(axis,align)); 2.30279 + } 2.30280 + 2.30281 + static CImg<T> get_load_cimg(const char *const filename, 2.30282 + const unsigned int n0, const unsigned int n1, 2.30283 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.30284 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, 2.30285 + const char axis='z', const char align='p') { 2.30286 + return CImg<T>().load_cimg(filename,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1,axis,align); 2.30287 + } 2.30288 + 2.30289 + //! Load a sub-image (list) from a non-compressed .cimg file. 2.30290 + CImg<T>& load_cimg(cimg_std::FILE *const file, 2.30291 + const unsigned int n0, const unsigned int n1, 2.30292 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.30293 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, 2.30294 + const char axis='z', const char align='p') { 2.30295 + CImgList<T> list; 2.30296 + list.load_cimg(file,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.30297 + if (list.size==1) return list[0].transfer_to(*this); 2.30298 + return assign(list.get_append(axis,align)); 2.30299 + } 2.30300 + 2.30301 + static CImg<T> get_load_cimg(cimg_std::FILE *const file, 2.30302 + const unsigned int n0, const unsigned int n1, 2.30303 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.30304 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, 2.30305 + const char axis='z', const char align='p') { 2.30306 + return CImg<T>().load_cimg(file,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1,axis,align); 2.30307 + } 2.30308 + 2.30309 + //! Load an image from an INRIMAGE-4 file. 2.30310 + CImg<T>& load_inr(const char *const filename, float *const voxsize=0) { 2.30311 + return _load_inr(0,filename,voxsize); 2.30312 + } 2.30313 + 2.30314 + static CImg<T> get_load_inr(const char *const filename, float *const voxsize=0) { 2.30315 + return CImg<T>().load_inr(filename,voxsize); 2.30316 + } 2.30317 + 2.30318 + //! Load an image from an INRIMAGE-4 file. 2.30319 + CImg<T>& load_inr(cimg_std::FILE *const file, float *const voxsize=0) { 2.30320 + return _load_inr(file,0,voxsize); 2.30321 + } 2.30322 + 2.30323 + static CImg<T> get_load_inr(cimg_std::FILE *const file, float *voxsize=0) { 2.30324 + return CImg<T>().load_inr(file,voxsize); 2.30325 + } 2.30326 + 2.30327 + // Load an image from an INRIMAGE-4 file (internal). 2.30328 + static void _load_inr_header(cimg_std::FILE *file, int out[8], float *const voxsize) { 2.30329 + char item[1024], tmp1[64], tmp2[64]; 2.30330 + out[0] = cimg_std::fscanf(file,"%63s",item); 2.30331 + out[0] = out[1] = out[2] = out[3] = out[5] = 1; out[4] = out[6] = out[7] = -1; 2.30332 + if(cimg::strncasecmp(item,"#INRIMAGE-4#{",13)!=0) 2.30333 + throw CImgIOException("CImg<%s>::load_inr() : File does not appear to be a valid INR file.\n" 2.30334 + "(INRIMAGE-4 identifier not found)", 2.30335 + pixel_type()); 2.30336 + while (cimg_std::fscanf(file," %63[^\n]%*c",item)!=EOF && cimg::strncmp(item,"##}",3)) { 2.30337 + cimg_std::sscanf(item," XDIM%*[^0-9]%d",out); 2.30338 + cimg_std::sscanf(item," YDIM%*[^0-9]%d",out+1); 2.30339 + cimg_std::sscanf(item," ZDIM%*[^0-9]%d",out+2); 2.30340 + cimg_std::sscanf(item," VDIM%*[^0-9]%d",out+3); 2.30341 + cimg_std::sscanf(item," PIXSIZE%*[^0-9]%d",out+6); 2.30342 + if (voxsize) { 2.30343 + cimg_std::sscanf(item," VX%*[^0-9.+-]%f",voxsize); 2.30344 + cimg_std::sscanf(item," VY%*[^0-9.+-]%f",voxsize+1); 2.30345 + cimg_std::sscanf(item," VZ%*[^0-9.+-]%f",voxsize+2); 2.30346 + } 2.30347 + if (cimg_std::sscanf(item," CPU%*[ =]%s",tmp1)) out[7]=cimg::strncasecmp(tmp1,"sun",3)?0:1; 2.30348 + switch (cimg_std::sscanf(item," TYPE%*[ =]%s %s",tmp1,tmp2)) { 2.30349 + case 0 : break; 2.30350 + case 2 : out[5] = cimg::strncasecmp(tmp1,"unsigned",8)?1:0; cimg_std::strcpy(tmp1,tmp2); 2.30351 + case 1 : 2.30352 + if (!cimg::strncasecmp(tmp1,"int",3) || !cimg::strncasecmp(tmp1,"fixed",5)) out[4] = 0; 2.30353 + if (!cimg::strncasecmp(tmp1,"float",5) || !cimg::strncasecmp(tmp1,"double",6)) out[4] = 1; 2.30354 + if (!cimg::strncasecmp(tmp1,"packed",6)) out[4] = 2; 2.30355 + if (out[4]>=0) break; 2.30356 + default : 2.30357 + throw CImgIOException("cimg::inr_header_read() : Invalid TYPE '%s'",tmp2); 2.30358 + } 2.30359 + } 2.30360 + if(out[0]<0 || out[1]<0 || out[2]<0 || out[3]<0) 2.30361 + throw CImgIOException("CImg<%s>::load_inr() : Bad dimensions in .inr file = ( %d , %d , %d , %d )", 2.30362 + pixel_type(),out[0],out[1],out[2],out[3]); 2.30363 + if(out[4]<0 || out[5]<0) 2.30364 + throw CImgIOException("CImg<%s>::load_inr() : TYPE is not fully defined", 2.30365 + pixel_type()); 2.30366 + if(out[6]<0) 2.30367 + throw CImgIOException("CImg<%s>::load_inr() : PIXSIZE is not fully defined", 2.30368 + pixel_type()); 2.30369 + if(out[7]<0) 2.30370 + throw CImgIOException("CImg<%s>::load_inr() : Big/Little Endian coding type is not defined", 2.30371 + pixel_type()); 2.30372 + } 2.30373 + 2.30374 + CImg<T>& _load_inr(cimg_std::FILE *const file, const char *const filename, float *const voxsize) { 2.30375 +#define _cimg_load_inr_case(Tf,sign,pixsize,Ts) \ 2.30376 + if (!loaded && fopt[6]==pixsize && fopt[4]==Tf && fopt[5]==sign) { \ 2.30377 + Ts *xval, *val = new Ts[fopt[0]*fopt[3]]; \ 2.30378 + cimg_forYZ(*this,y,z) { \ 2.30379 + cimg::fread(val,fopt[0]*fopt[3],nfile); \ 2.30380 + if (fopt[7]!=endian) cimg::invert_endianness(val,fopt[0]*fopt[3]); \ 2.30381 + xval = val; cimg_forX(*this,x) cimg_forV(*this,k) (*this)(x,y,z,k) = (T)*(xval++); \ 2.30382 + } \ 2.30383 + delete[] val; \ 2.30384 + loaded = true; \ 2.30385 + } 2.30386 + 2.30387 + if (!filename && !file) 2.30388 + throw CImgArgumentException("CImg<%s>::load_inr() : Cannot load (null) filename.", 2.30389 + pixel_type()); 2.30390 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.30391 + int fopt[8], endian=cimg::endianness()?1:0; 2.30392 + bool loaded = false; 2.30393 + if (voxsize) voxsize[0]=voxsize[1]=voxsize[2]=1; 2.30394 + _load_inr_header(nfile,fopt,voxsize); 2.30395 + assign(fopt[0],fopt[1],fopt[2],fopt[3]); 2.30396 + _cimg_load_inr_case(0,0,8, unsigned char); 2.30397 + _cimg_load_inr_case(0,1,8, char); 2.30398 + _cimg_load_inr_case(0,0,16,unsigned short); 2.30399 + _cimg_load_inr_case(0,1,16,short); 2.30400 + _cimg_load_inr_case(0,0,32,unsigned int); 2.30401 + _cimg_load_inr_case(0,1,32,int); 2.30402 + _cimg_load_inr_case(1,0,32,float); 2.30403 + _cimg_load_inr_case(1,1,32,float); 2.30404 + _cimg_load_inr_case(1,0,64,double); 2.30405 + _cimg_load_inr_case(1,1,64,double); 2.30406 + if (!loaded) { 2.30407 + if (!file) cimg::fclose(nfile); 2.30408 + throw CImgIOException("CImg<%s>::load_inr() : File '%s', cannot read images of the type specified in the file", 2.30409 + pixel_type(),filename?filename:"(FILE*)"); 2.30410 + } 2.30411 + if (!file) cimg::fclose(nfile); 2.30412 + return *this; 2.30413 + } 2.30414 + 2.30415 + //! Load an image from a PANDORE file. 2.30416 + CImg<T>& load_pandore(const char *const filename) { 2.30417 + return _load_pandore(0,filename); 2.30418 + } 2.30419 + 2.30420 + static CImg<T> get_load_pandore(const char *const filename) { 2.30421 + return CImg<T>().load_pandore(filename); 2.30422 + } 2.30423 + 2.30424 + //! Load an image from a PANDORE file. 2.30425 + CImg<T>& load_pandore(cimg_std::FILE *const file) { 2.30426 + return _load_pandore(file,0); 2.30427 + } 2.30428 + 2.30429 + static CImg<T> get_load_pandore(cimg_std::FILE *const file) { 2.30430 + return CImg<T>().load_pandore(file); 2.30431 + } 2.30432 + 2.30433 + CImg<T>& _load_pandore(cimg_std::FILE *const file, const char *const filename) { 2.30434 +#define __cimg_load_pandore_case(nbdim,nwidth,nheight,ndepth,ndim,stype) \ 2.30435 + cimg::fread(dims,nbdim,nfile); \ 2.30436 + if (endian) cimg::invert_endianness(dims,nbdim); \ 2.30437 + assign(nwidth,nheight,ndepth,ndim); \ 2.30438 + const unsigned int siz = size(); \ 2.30439 + stype *buffer = new stype[siz]; \ 2.30440 + cimg::fread(buffer,siz,nfile); \ 2.30441 + if (endian) cimg::invert_endianness(buffer,siz); \ 2.30442 + T *ptrd = data; \ 2.30443 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); \ 2.30444 + buffer-=siz; \ 2.30445 + delete[] buffer 2.30446 + 2.30447 +#define _cimg_load_pandore_case(nbdim,nwidth,nheight,ndepth,dim,stype1,stype2,stype3,ltype) { \ 2.30448 + if (sizeof(stype1)==ltype) { __cimg_load_pandore_case(nbdim,nwidth,nheight,ndepth,dim,stype1); } \ 2.30449 + else if (sizeof(stype2)==ltype) { __cimg_load_pandore_case(nbdim,nwidth,nheight,ndepth,dim,stype2); } \ 2.30450 + else if (sizeof(stype3)==ltype) { __cimg_load_pandore_case(nbdim,nwidth,nheight,ndepth,dim,stype3); } \ 2.30451 + else throw CImgIOException("CImg<%s>::load_pandore() : File '%s' cannot be read, datatype not supported on this architecture.", \ 2.30452 + pixel_type(),filename?filename:"(FILE*)"); } 2.30453 + 2.30454 + if (!filename && !file) 2.30455 + throw CImgArgumentException("CImg<%s>::load_pandore() : Cannot load (null) filename.", 2.30456 + pixel_type()); 2.30457 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.30458 + typedef unsigned char uchar; 2.30459 + typedef unsigned short ushort; 2.30460 + typedef unsigned int uint; 2.30461 + typedef unsigned long ulong; 2.30462 + char header[32]; 2.30463 + cimg::fread(header,12,nfile); 2.30464 + if (cimg::strncasecmp("PANDORE",header,7)) { 2.30465 + if (!file) cimg::fclose(nfile); 2.30466 + throw CImgIOException("CImg<%s>::load_pandore() : File '%s' is not a valid PANDORE file, " 2.30467 + "(PANDORE identifier not found).", 2.30468 + pixel_type(),filename?filename:"(FILE*)"); 2.30469 + } 2.30470 + unsigned int imageid, dims[8]; 2.30471 + cimg::fread(&imageid,1,nfile); 2.30472 + const bool endian = (imageid>255); 2.30473 + if (endian) cimg::invert_endianness(imageid); 2.30474 + cimg::fread(header,20,nfile); 2.30475 + 2.30476 + switch (imageid) { 2.30477 + case 2: _cimg_load_pandore_case(2,dims[1],1,1,1,uchar,uchar,uchar,1); break; 2.30478 + case 3: _cimg_load_pandore_case(2,dims[1],1,1,1,long,int,short,4); break; 2.30479 + case 4: _cimg_load_pandore_case(2,dims[1],1,1,1,double,float,float,4); break; 2.30480 + case 5: _cimg_load_pandore_case(3,dims[2],dims[1],1,1,uchar,uchar,uchar,1); break; 2.30481 + case 6: _cimg_load_pandore_case(3,dims[2],dims[1],1,1,long,int,short,4); break; 2.30482 + case 7: _cimg_load_pandore_case(3,dims[2],dims[1],1,1,double,float,float,4); break; 2.30483 + case 8: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],1,uchar,uchar,uchar,1); break; 2.30484 + case 9: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],1,long,int,short,4); break; 2.30485 + case 10: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],1,double,float,float,4); break; 2.30486 + case 11 : { // Region 1D 2.30487 + cimg::fread(dims,3,nfile); 2.30488 + if (endian) cimg::invert_endianness(dims,3); 2.30489 + assign(dims[1],1,1,1); 2.30490 + const unsigned siz = size(); 2.30491 + if (dims[2]<256) { 2.30492 + unsigned char *buffer = new unsigned char[siz]; 2.30493 + cimg::fread(buffer,siz,nfile); 2.30494 + T *ptrd = data; 2.30495 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30496 + buffer-=siz; 2.30497 + delete[] buffer; 2.30498 + } else { 2.30499 + if (dims[2]<65536) { 2.30500 + unsigned short *buffer = new unsigned short[siz]; 2.30501 + cimg::fread(buffer,siz,nfile); 2.30502 + if (endian) cimg::invert_endianness(buffer,siz); 2.30503 + T *ptrd = data; 2.30504 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30505 + buffer-=siz; 2.30506 + delete[] buffer; 2.30507 + } else { 2.30508 + unsigned int *buffer = new unsigned int[siz]; 2.30509 + cimg::fread(buffer,siz,nfile); 2.30510 + if (endian) cimg::invert_endianness(buffer,siz); 2.30511 + T *ptrd = data; 2.30512 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30513 + buffer-=siz; 2.30514 + delete[] buffer; 2.30515 + } 2.30516 + } 2.30517 + } 2.30518 + break; 2.30519 + case 12 : { // Region 2D 2.30520 + cimg::fread(dims,4,nfile); 2.30521 + if (endian) cimg::invert_endianness(dims,4); 2.30522 + assign(dims[2],dims[1],1,1); 2.30523 + const unsigned int siz = size(); 2.30524 + if (dims[3]<256) { 2.30525 + unsigned char *buffer = new unsigned char[siz]; 2.30526 + cimg::fread(buffer,siz,nfile); 2.30527 + T *ptrd = data; 2.30528 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30529 + buffer-=siz; 2.30530 + delete[] buffer; 2.30531 + } else { 2.30532 + if (dims[3]<65536) { 2.30533 + unsigned short *buffer = new unsigned short[siz]; 2.30534 + cimg::fread(buffer,siz,nfile); 2.30535 + if (endian) cimg::invert_endianness(buffer,siz); 2.30536 + T *ptrd = data; 2.30537 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30538 + buffer-=siz; 2.30539 + delete[] buffer; 2.30540 + } else { 2.30541 + unsigned long *buffer = new unsigned long[siz]; 2.30542 + cimg::fread(buffer,siz,nfile); 2.30543 + if (endian) cimg::invert_endianness(buffer,siz); 2.30544 + T *ptrd = data; 2.30545 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30546 + buffer-=siz; 2.30547 + delete[] buffer; 2.30548 + } 2.30549 + } 2.30550 + } 2.30551 + break; 2.30552 + case 13 : { // Region 3D 2.30553 + cimg::fread(dims,5,nfile); 2.30554 + if (endian) cimg::invert_endianness(dims,5); 2.30555 + assign(dims[3],dims[2],dims[1],1); 2.30556 + const unsigned int siz = size(); 2.30557 + if (dims[4]<256) { 2.30558 + unsigned char *buffer = new unsigned char[siz]; 2.30559 + cimg::fread(buffer,siz,nfile); 2.30560 + T *ptrd = data; 2.30561 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30562 + buffer-=siz; 2.30563 + delete[] buffer; 2.30564 + } else { 2.30565 + if (dims[4]<65536) { 2.30566 + unsigned short *buffer = new unsigned short[siz]; 2.30567 + cimg::fread(buffer,siz,nfile); 2.30568 + if (endian) cimg::invert_endianness(buffer,siz); 2.30569 + T *ptrd = data; 2.30570 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30571 + buffer-=siz; 2.30572 + delete[] buffer; 2.30573 + } else { 2.30574 + unsigned int *buffer = new unsigned int[siz]; 2.30575 + cimg::fread(buffer,siz,nfile); 2.30576 + if (endian) cimg::invert_endianness(buffer,siz); 2.30577 + T *ptrd = data; 2.30578 + cimg_foroff(*this,off) *(ptrd++) = (T)*(buffer++); 2.30579 + buffer-=siz; 2.30580 + delete[] buffer; 2.30581 + } 2.30582 + } 2.30583 + } 2.30584 + break; 2.30585 + case 16: _cimg_load_pandore_case(4,dims[2],dims[1],1,3,uchar,uchar,uchar,1); break; 2.30586 + case 17: _cimg_load_pandore_case(4,dims[2],dims[1],1,3,long,int,short,4); break; 2.30587 + case 18: _cimg_load_pandore_case(4,dims[2],dims[1],1,3,double,float,float,4); break; 2.30588 + case 19: _cimg_load_pandore_case(5,dims[3],dims[2],dims[1],3,uchar,uchar,uchar,1); break; 2.30589 + case 20: _cimg_load_pandore_case(5,dims[3],dims[2],dims[1],3,long,int,short,4); break; 2.30590 + case 21: _cimg_load_pandore_case(5,dims[3],dims[2],dims[1],3,double,float,float,4); break; 2.30591 + case 22: _cimg_load_pandore_case(2,dims[1],1,1,dims[0],uchar,uchar,uchar,1); break; 2.30592 + case 23: _cimg_load_pandore_case(2,dims[1],1,1,dims[0],long,int,short,4); 2.30593 + case 24: _cimg_load_pandore_case(2,dims[1],1,1,dims[0],ulong,uint,ushort,4); break; 2.30594 + case 25: _cimg_load_pandore_case(2,dims[1],1,1,dims[0],double,float,float,4); break; 2.30595 + case 26: _cimg_load_pandore_case(3,dims[2],dims[1],1,dims[0],uchar,uchar,uchar,1); break; 2.30596 + case 27: _cimg_load_pandore_case(3,dims[2],dims[1],1,dims[0],long,int,short,4); break; 2.30597 + case 28: _cimg_load_pandore_case(3,dims[2],dims[1],1,dims[0],ulong,uint,ushort,4); break; 2.30598 + case 29: _cimg_load_pandore_case(3,dims[2],dims[1],1,dims[0],double,float,float,4); break; 2.30599 + case 30: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],dims[0],uchar,uchar,uchar,1); break; 2.30600 + case 31: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],dims[0],long,int,short,4); break; 2.30601 + case 32: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],dims[0],ulong,uint,ushort,4); break; 2.30602 + case 33: _cimg_load_pandore_case(4,dims[3],dims[2],dims[1],dims[0],double,float,float,4); break; 2.30603 + case 34 : { // Points 1D 2.30604 + int ptbuf[4]; 2.30605 + cimg::fread(ptbuf,1,nfile); 2.30606 + if (endian) cimg::invert_endianness(ptbuf,1); 2.30607 + assign(1); (*this)(0) = (T)ptbuf[0]; 2.30608 + } break; 2.30609 + case 35 : { // Points 2D 2.30610 + int ptbuf[4]; 2.30611 + cimg::fread(ptbuf,2,nfile); 2.30612 + if (endian) cimg::invert_endianness(ptbuf,2); 2.30613 + assign(2); (*this)(0) = (T)ptbuf[1]; (*this)(1) = (T)ptbuf[0]; 2.30614 + } break; 2.30615 + case 36 : { // Points 3D 2.30616 + int ptbuf[4]; 2.30617 + cimg::fread(ptbuf,3,nfile); 2.30618 + if (endian) cimg::invert_endianness(ptbuf,3); 2.30619 + assign(3); (*this)(0) = (T)ptbuf[2]; (*this)(1) = (T)ptbuf[1]; (*this)(2) = (T)ptbuf[0]; 2.30620 + } break; 2.30621 + default : 2.30622 + if (!file) cimg::fclose(nfile); 2.30623 + throw CImgIOException("CImg<%s>::load_pandore() : File '%s', cannot read images with ID_type = %u", 2.30624 + pixel_type(),filename?filename:"(FILE*)",imageid); 2.30625 + } 2.30626 + if (!file) cimg::fclose(nfile); 2.30627 + return *this; 2.30628 + } 2.30629 + 2.30630 + //! Load an image from a PAR-REC (Philips) file. 2.30631 + CImg<T>& load_parrec(const char *const filename, const char axis='v', const char align='p') { 2.30632 + CImgList<T> list; 2.30633 + list.load_parrec(filename); 2.30634 + if (list.size==1) return list[0].transfer_to(*this); 2.30635 + return assign(list.get_append(axis,align)); 2.30636 + } 2.30637 + 2.30638 + static CImg<T> get_load_parrec(const char *const filename, const char axis='v', const char align='p') { 2.30639 + return CImg<T>().load_parrec(filename,axis,align); 2.30640 + } 2.30641 + 2.30642 + //! Load an image from a .RAW file. 2.30643 + CImg<T>& load_raw(const char *const filename, 2.30644 + const unsigned int sizex, const unsigned int sizey=1, 2.30645 + const unsigned int sizez=1, const unsigned int sizev=1, 2.30646 + const bool multiplexed=false, const bool invert_endianness=false) { 2.30647 + return _load_raw(0,filename,sizex,sizey,sizez,sizev,multiplexed,invert_endianness); 2.30648 + } 2.30649 + 2.30650 + static CImg<T> get_load_raw(const char *const filename, 2.30651 + const unsigned int sizex, const unsigned int sizey=1, 2.30652 + const unsigned int sizez=1, const unsigned int sizev=1, 2.30653 + const bool multiplexed=false, const bool invert_endianness=false) { 2.30654 + return CImg<T>().load_raw(filename,sizex,sizey,sizez,sizev,multiplexed,invert_endianness); 2.30655 + } 2.30656 + 2.30657 + //! Load an image from a .RAW file. 2.30658 + CImg<T>& load_raw(cimg_std::FILE *const file, 2.30659 + const unsigned int sizex, const unsigned int sizey=1, 2.30660 + const unsigned int sizez=1, const unsigned int sizev=1, 2.30661 + const bool multiplexed=false, const bool invert_endianness=false) { 2.30662 + return _load_raw(file,0,sizex,sizey,sizez,sizev,multiplexed,invert_endianness); 2.30663 + } 2.30664 + 2.30665 + static CImg<T> get_load_raw(cimg_std::FILE *const file, 2.30666 + const unsigned int sizex, const unsigned int sizey=1, 2.30667 + const unsigned int sizez=1, const unsigned int sizev=1, 2.30668 + const bool multiplexed=false, const bool invert_endianness=false) { 2.30669 + return CImg<T>().load_raw(file,sizex,sizey,sizez,sizev,multiplexed,invert_endianness); 2.30670 + } 2.30671 + 2.30672 + CImg<T>& _load_raw(cimg_std::FILE *const file, const char *const filename, 2.30673 + const unsigned int sizex, const unsigned int sizey, 2.30674 + const unsigned int sizez, const unsigned int sizev, 2.30675 + const bool multiplexed, const bool invert_endianness) { 2.30676 + if (!filename && !file) 2.30677 + throw CImgArgumentException("CImg<%s>::load_raw() : Cannot load (null) filename.", 2.30678 + pixel_type()); 2.30679 + assign(sizex,sizey,sizez,sizev,0); 2.30680 + const unsigned int siz = size(); 2.30681 + if (siz) { 2.30682 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.30683 + if (!multiplexed) { 2.30684 + cimg::fread(data,siz,nfile); 2.30685 + if (invert_endianness) cimg::invert_endianness(data,siz); 2.30686 + } 2.30687 + else { 2.30688 + CImg<T> buf(1,1,1,sizev); 2.30689 + cimg_forXYZ(*this,x,y,z) { 2.30690 + cimg::fread(buf.data,sizev,nfile); 2.30691 + if (invert_endianness) cimg::invert_endianness(buf.data,sizev); 2.30692 + set_vector_at(buf,x,y,z); } 2.30693 + } 2.30694 + if (!file) cimg::fclose(nfile); 2.30695 + } 2.30696 + return *this; 2.30697 + } 2.30698 + 2.30699 + //! Load a video sequence using FFMPEG av's libraries. 2.30700 + CImg<T>& load_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30701 + const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, 2.30702 + const char axis='z', const char align='p') { 2.30703 + return get_load_ffmpeg(filename,first_frame,last_frame,step_frame,pixel_format,resume,axis,align).transfer_to(*this); 2.30704 + } 2.30705 + 2.30706 + static CImg<T> get_load_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30707 + const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, 2.30708 + const char axis='z', const char align='p') { 2.30709 + return CImgList<T>().load_ffmpeg(filename,first_frame,last_frame,step_frame,pixel_format,resume).get_append(axis,align); 2.30710 + } 2.30711 + 2.30712 + //! Load an image sequence from a YUV file. 2.30713 + CImg<T>& load_yuv(const char *const filename, 2.30714 + const unsigned int sizex, const unsigned int sizey=1, 2.30715 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30716 + const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p') { 2.30717 + return get_load_yuv(filename,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb,axis,align).transfer_to(*this); 2.30718 + } 2.30719 + 2.30720 + static CImg<T> get_load_yuv(const char *const filename, 2.30721 + const unsigned int sizex, const unsigned int sizey=1, 2.30722 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30723 + const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p') { 2.30724 + return CImgList<T>().load_yuv(filename,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb).get_append(axis,align); 2.30725 + } 2.30726 + 2.30727 + //! Load an image sequence from a YUV file. 2.30728 + CImg<T>& load_yuv(cimg_std::FILE *const file, 2.30729 + const unsigned int sizex, const unsigned int sizey=1, 2.30730 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30731 + const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p') { 2.30732 + return get_load_yuv(file,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb,axis,align).transfer_to(*this); 2.30733 + } 2.30734 + 2.30735 + static CImg<T> get_load_yuv(cimg_std::FILE *const file, 2.30736 + const unsigned int sizex, const unsigned int sizey=1, 2.30737 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.30738 + const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p') { 2.30739 + return CImgList<T>().load_yuv(file,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb).get_append(axis,align); 2.30740 + } 2.30741 + 2.30742 + //! Load a 3D object from a .OFF file. 2.30743 + template<typename tf, typename tc> 2.30744 + CImg<T>& load_off(const char *const filename, CImgList<tf>& primitives, CImgList<tc>& colors, const bool invert_faces=false) { 2.30745 + return _load_off(0,filename,primitives,colors,invert_faces); 2.30746 + } 2.30747 + 2.30748 + template<typename tf, typename tc> 2.30749 + static CImg<T> get_load_off(const char *const filename, CImgList<tf>& primitives, CImgList<tc>& colors, 2.30750 + const bool invert_faces=false) { 2.30751 + return CImg<T>().load_off(filename,primitives,colors,invert_faces); 2.30752 + } 2.30753 + 2.30754 + //! Load a 3D object from a .OFF file. 2.30755 + template<typename tf, typename tc> 2.30756 + CImg<T>& load_off(cimg_std::FILE *const file, CImgList<tf>& primitives, CImgList<tc>& colors, const bool invert_faces=false) { 2.30757 + return _load_off(file,0,primitives,colors,invert_faces); 2.30758 + } 2.30759 + 2.30760 + template<typename tf, typename tc> 2.30761 + static CImg<T> get_load_off(cimg_std::FILE *const file, CImgList<tf>& primitives, CImgList<tc>& colors, 2.30762 + const bool invert_faces=false) { 2.30763 + return CImg<T>().load_off(file,primitives,colors,invert_faces); 2.30764 + } 2.30765 + 2.30766 + template<typename tf, typename tc> 2.30767 + CImg<T>& _load_off(cimg_std::FILE *const file, const char *const filename, 2.30768 + CImgList<tf>& primitives, CImgList<tc>& colors, const bool invert_faces) { 2.30769 + if (!filename && !file) 2.30770 + throw CImgArgumentException("CImg<%s>::load_off() : Cannot load (null) filename.", 2.30771 + pixel_type()); 2.30772 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"r"); 2.30773 + unsigned int nb_points = 0, nb_primitives = 0, nb_read = 0; 2.30774 + char line[256] = { 0 }; 2.30775 + int err; 2.30776 + 2.30777 + // Skip comments, and read magic string OFF 2.30778 + do { err = cimg_std::fscanf(nfile,"%255[^\n] ",line); } while (!err || (err==1 && line[0]=='#')); 2.30779 + if (cimg::strncasecmp(line,"OFF",3) && cimg::strncasecmp(line,"COFF",4)) { 2.30780 + if (!file) cimg::fclose(nfile); 2.30781 + throw CImgIOException("CImg<%s>::load_off() : File '%s', keyword 'OFF' not found.", 2.30782 + pixel_type(),filename?filename:"(FILE*)"); 2.30783 + } 2.30784 + do { err = cimg_std::fscanf(nfile,"%255[^\n] ",line); } while (!err || (err==1 && line[0]=='#')); 2.30785 + if ((err = cimg_std::sscanf(line,"%u%u%*[^\n] ",&nb_points,&nb_primitives))!=2) { 2.30786 + if (!file) cimg::fclose(nfile); 2.30787 + throw CImgIOException("CImg<%s>::load_off() : File '%s', invalid vertices/primitives numbers.", 2.30788 + pixel_type(),filename?filename:"(FILE*)"); 2.30789 + } 2.30790 + 2.30791 + // Read points data 2.30792 + assign(nb_points,3); 2.30793 + float X = 0, Y = 0, Z = 0; 2.30794 + cimg_forX(*this,l) { 2.30795 + do { err = cimg_std::fscanf(nfile,"%255[^\n] ",line); } while (!err || (err==1 && line[0]=='#')); 2.30796 + if ((err = cimg_std::sscanf(line,"%f%f%f%*[^\n] ",&X,&Y,&Z))!=3) { 2.30797 + if (!file) cimg::fclose(nfile); 2.30798 + throw CImgIOException("CImg<%s>::load_off() : File '%s', cannot read point %u/%u.\n", 2.30799 + pixel_type(),filename?filename:"(FILE*)",l+1,nb_points); 2.30800 + } 2.30801 + (*this)(l,0) = (T)X; (*this)(l,1) = (T)Y; (*this)(l,2) = (T)Z; 2.30802 + } 2.30803 + 2.30804 + // Read primitive data 2.30805 + primitives.assign(); 2.30806 + colors.assign(); 2.30807 + bool stopflag = false; 2.30808 + while (!stopflag) { 2.30809 + float c0 = 0.7f, c1 = 0.7f, c2 = 0.7f; 2.30810 + unsigned int prim = 0, i0 = 0, i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0; 2.30811 + line[0]='\0'; 2.30812 + if ((err = cimg_std::fscanf(nfile,"%u",&prim))!=1) stopflag=true; 2.30813 + else { 2.30814 + ++nb_read; 2.30815 + switch (prim) { 2.30816 + case 1 : { 2.30817 + if ((err = cimg_std::fscanf(nfile,"%u%255[^\n] ",&i0,line))<2) { 2.30818 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30819 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30820 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30821 + } else { 2.30822 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30823 + primitives.insert(CImg<tf>::vector(i0)); 2.30824 + colors.insert(CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255))); 2.30825 + } 2.30826 + } break; 2.30827 + case 2 : { 2.30828 + if ((err = cimg_std::fscanf(nfile,"%u%u%255[^\n] ",&i0,&i1,line))<2) { 2.30829 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30830 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30831 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30832 + } else { 2.30833 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30834 + primitives.insert(CImg<tf>::vector(i0,i1)); 2.30835 + colors.insert(CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255))); 2.30836 + } 2.30837 + } break; 2.30838 + case 3 : { 2.30839 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%255[^\n] ",&i0,&i1,&i2,line))<3) { 2.30840 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30841 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30842 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30843 + } else { 2.30844 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30845 + if (invert_faces) primitives.insert(CImg<tf>::vector(i0,i1,i2)); 2.30846 + else primitives.insert(CImg<tf>::vector(i0,i2,i1)); 2.30847 + colors.insert(CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255))); 2.30848 + } 2.30849 + } break; 2.30850 + case 4 : { 2.30851 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%u%255[^\n] ",&i0,&i1,&i2,&i3,line))<4) { 2.30852 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30853 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30854 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30855 + } else { 2.30856 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30857 + if (invert_faces) primitives.insert(CImg<tf>::vector(i0,i1,i2,i3)); 2.30858 + else primitives.insert(CImg<tf>::vector(i0,i3,i2,i1)); 2.30859 + colors.insert(CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255),(tc)(c2*255))); 2.30860 + } 2.30861 + } break; 2.30862 + case 5 : { 2.30863 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%u%u%255[^\n] ",&i0,&i1,&i2,&i3,&i4,line))<5) { 2.30864 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30865 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30866 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30867 + } else { 2.30868 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30869 + if (invert_faces) { 2.30870 + primitives.insert(CImg<tf>::vector(i0,i1,i2,i3)); 2.30871 + primitives.insert(CImg<tf>::vector(i0,i3,i4)); 2.30872 + } 2.30873 + else { 2.30874 + primitives.insert(CImg<tf>::vector(i0,i3,i2,i1)); 2.30875 + primitives.insert(CImg<tf>::vector(i0,i4,i3)); 2.30876 + } 2.30877 + colors.insert(2,CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255),(tc)(c2*255))); 2.30878 + ++nb_primitives; 2.30879 + } 2.30880 + } break; 2.30881 + case 6 : { 2.30882 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%u%u%u%255[^\n] ",&i0,&i1,&i2,&i3,&i4,&i5,line))<6) { 2.30883 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30884 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30885 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30886 + } else { 2.30887 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30888 + if (invert_faces) { 2.30889 + primitives.insert(CImg<tf>::vector(i0,i1,i2,i3)); 2.30890 + primitives.insert(CImg<tf>::vector(i0,i3,i4,i5)); 2.30891 + } 2.30892 + else { 2.30893 + primitives.insert(CImg<tf>::vector(i0,i3,i2,i1)); 2.30894 + primitives.insert(CImg<tf>::vector(i0,i5,i4,i3)); 2.30895 + } 2.30896 + colors.insert(2,CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255),(tc)(c2*255))); 2.30897 + ++nb_primitives; 2.30898 + } 2.30899 + } break; 2.30900 + case 7 : { 2.30901 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%u%u%u%u%255[^\n] ",&i0,&i1,&i2,&i3,&i4,&i5,&i6,line))<7) { 2.30902 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30903 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30904 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30905 + } else { 2.30906 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30907 + if (invert_faces) { 2.30908 + primitives.insert(CImg<tf>::vector(i0,i1,i3,i4)); 2.30909 + primitives.insert(CImg<tf>::vector(i0,i4,i5,i6)); 2.30910 + primitives.insert(CImg<tf>::vector(i1,i2,i3)); 2.30911 + } 2.30912 + else { 2.30913 + primitives.insert(CImg<tf>::vector(i0,i4,i3,i1)); 2.30914 + primitives.insert(CImg<tf>::vector(i0,i6,i5,i4)); 2.30915 + primitives.insert(CImg<tf>::vector(i3,i2,i1)); 2.30916 + } 2.30917 + colors.insert(2,CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255),(tc)(c2*255))); 2.30918 + ++(++nb_primitives); 2.30919 + } 2.30920 + } break; 2.30921 + case 8 : { 2.30922 + if ((err = cimg_std::fscanf(nfile,"%u%u%u%u%u%u%u%u%255[^\n] ",&i0,&i1,&i2,&i3,&i4,&i5,&i6,&i7,line))<7) { 2.30923 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u.", 2.30924 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives); 2.30925 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30926 + } else { 2.30927 + err = cimg_std::sscanf(line,"%f%f%f",&c0,&c1,&c2); 2.30928 + if (invert_faces) { 2.30929 + primitives.insert(CImg<tf>::vector(i0,i1,i2,i3)); 2.30930 + primitives.insert(CImg<tf>::vector(i0,i3,i4,i5)); 2.30931 + primitives.insert(CImg<tf>::vector(i0,i5,i6,i7)); 2.30932 + } 2.30933 + else { 2.30934 + primitives.insert(CImg<tf>::vector(i0,i3,i2,i1)); 2.30935 + primitives.insert(CImg<tf>::vector(i0,i5,i4,i3)); 2.30936 + primitives.insert(CImg<tf>::vector(i0,i7,i6,i5)); 2.30937 + } 2.30938 + colors.insert(2,CImg<tc>::vector((tc)(c0*255),(tc)(c1*255),(tc)(c2*255),(tc)(c2*255))); 2.30939 + ++(++nb_primitives); 2.30940 + } 2.30941 + } break; 2.30942 + default : 2.30943 + cimg::warn("CImg<%s>::load_off() : File '%s', invalid primitive %u/%u (%u vertices).", 2.30944 + pixel_type(),filename?filename:"(FILE*)",nb_read,nb_primitives,prim); 2.30945 + err = cimg_std::fscanf(nfile,"%*[^\n] "); 2.30946 + } 2.30947 + } 2.30948 + } 2.30949 + if (!file) cimg::fclose(nfile); 2.30950 + if (primitives.size!=nb_primitives) 2.30951 + cimg::warn("CImg<%s>::load_off() : File '%s', read only %u primitives instead of %u as claimed in the header.", 2.30952 + pixel_type(),filename?filename:"(FILE*)",primitives.size,nb_primitives); 2.30953 + return *this; 2.30954 + } 2.30955 + 2.30956 + //! Load a video sequence using FFMPEG's external tool 'ffmpeg'. 2.30957 + CImg<T>& load_ffmpeg_external(const char *const filename, const char axis='z', const char align='p') { 2.30958 + return get_load_ffmpeg_external(filename,axis,align).transfer_to(*this); 2.30959 + } 2.30960 + 2.30961 + static CImg<T> get_load_ffmpeg_external(const char *const filename, const char axis='z', const char align='p') { 2.30962 + return CImgList<T>().load_ffmpeg_external(filename).get_append(axis,align); 2.30963 + } 2.30964 + 2.30965 + //! Load an image using GraphicsMagick's external tool 'gm'. 2.30966 + CImg<T>& load_graphicsmagick_external(const char *const filename) { 2.30967 + if (!filename) 2.30968 + throw CImgArgumentException("CImg<%s>::load_graphicsmagick_external() : Cannot load (null) filename.", 2.30969 + pixel_type()); 2.30970 + char command[1024], filetmp[512]; 2.30971 + cimg_std::FILE *file = 0; 2.30972 +#if cimg_OS==1 2.30973 + cimg_std::sprintf(command,"%s convert \"%s\" ppm:-",cimg::graphicsmagick_path(),filename); 2.30974 + file = popen(command,"r"); 2.30975 + if (file) { load_pnm(file); pclose(file); return *this; } 2.30976 +#endif 2.30977 + do { 2.30978 + cimg_std::sprintf(filetmp,"%s%s%s.ppm",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.30979 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.30980 + } while (file); 2.30981 + cimg_std::sprintf(command,"%s convert \"%s\" %s",cimg::graphicsmagick_path(),filename,filetmp); 2.30982 + cimg::system(command,cimg::graphicsmagick_path()); 2.30983 + if (!(file = cimg_std::fopen(filetmp,"rb"))) { 2.30984 + cimg::fclose(cimg::fopen(filename,"r")); 2.30985 + throw CImgIOException("CImg<%s>::load_graphicsmagick_external() : Failed to open image '%s'.\n\n" 2.30986 + "Path of 'GraphicsMagick's gm' : \"%s\"\n" 2.30987 + "Path of temporary filename : \"%s\"", 2.30988 + pixel_type(),filename,cimg::graphicsmagick_path(),filetmp); 2.30989 + } else cimg::fclose(file); 2.30990 + load_pnm(filetmp); 2.30991 + cimg_std::remove(filetmp); 2.30992 + return *this; 2.30993 + } 2.30994 + 2.30995 + static CImg<T> get_load_graphicsmagick_external(const char *const filename) { 2.30996 + return CImg<T>().load_graphicsmagick_external(filename); 2.30997 + } 2.30998 + 2.30999 + //! Load a gzipped image file, using external tool 'gunzip'. 2.31000 + CImg<T>& load_gzip_external(const char *const filename) { 2.31001 + if (!filename) 2.31002 + throw CImgIOException("CImg<%s>::load_gzip_external() : Cannot load (null) filename.", 2.31003 + pixel_type()); 2.31004 + char command[1024], filetmp[512], body[512]; 2.31005 + const char 2.31006 + *ext = cimg::split_filename(filename,body), 2.31007 + *ext2 = cimg::split_filename(body,0); 2.31008 + cimg_std::FILE *file = 0; 2.31009 + do { 2.31010 + if (!cimg::strcasecmp(ext,"gz")) { 2.31011 + if (*ext2) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.31012 + cimg::filenamerand(),ext2); 2.31013 + else cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.31014 + cimg::filenamerand()); 2.31015 + } else { 2.31016 + if (*ext) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.31017 + cimg::filenamerand(),ext); 2.31018 + else cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.31019 + cimg::filenamerand()); 2.31020 + } 2.31021 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.31022 + } while (file); 2.31023 + cimg_std::sprintf(command,"%s -c \"%s\" > %s",cimg::gunzip_path(),filename,filetmp); 2.31024 + cimg::system(command); 2.31025 + if (!(file = cimg_std::fopen(filetmp,"rb"))) { 2.31026 + cimg::fclose(cimg::fopen(filename,"r")); 2.31027 + throw CImgIOException("CImg<%s>::load_gzip_external() : File '%s' cannot be opened.", 2.31028 + pixel_type(),filename); 2.31029 + } else cimg::fclose(file); 2.31030 + load(filetmp); 2.31031 + cimg_std::remove(filetmp); 2.31032 + return *this; 2.31033 + } 2.31034 + 2.31035 + static CImg<T> get_load_gzip_external(const char *const filename) { 2.31036 + return CImg<T>().load_gzip_external(filename); 2.31037 + } 2.31038 + 2.31039 + //! Load an image using ImageMagick's external tool 'convert'. 2.31040 + CImg<T>& load_imagemagick_external(const char *const filename) { 2.31041 + if (!filename) 2.31042 + throw CImgArgumentException("CImg<%s>::load_imagemagick_external() : Cannot load (null) filename.", 2.31043 + pixel_type()); 2.31044 + char command[1024], filetmp[512]; 2.31045 + cimg_std::FILE *file = 0; 2.31046 +#if cimg_OS==1 2.31047 + cimg_std::sprintf(command,"%s \"%s\" ppm:-",cimg::imagemagick_path(),filename); 2.31048 + file = popen(command,"r"); 2.31049 + if (file) { load_pnm(file); pclose(file); return *this; } 2.31050 +#endif 2.31051 + do { 2.31052 + cimg_std::sprintf(filetmp,"%s%s%s.ppm",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.31053 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.31054 + } while (file); 2.31055 + cimg_std::sprintf(command,"%s \"%s\" %s",cimg::imagemagick_path(),filename,filetmp); 2.31056 + cimg::system(command,cimg::imagemagick_path()); 2.31057 + if (!(file = cimg_std::fopen(filetmp,"rb"))) { 2.31058 + cimg::fclose(cimg::fopen(filename,"r")); 2.31059 + throw CImgIOException("CImg<%s>::load_imagemagick_external() : Failed to open image '%s'.\n\n" 2.31060 + "Path of 'ImageMagick's convert' : \"%s\"\n" 2.31061 + "Path of temporary filename : \"%s\"", 2.31062 + pixel_type(),filename,cimg::imagemagick_path(),filetmp); 2.31063 + } else cimg::fclose(file); 2.31064 + load_pnm(filetmp); 2.31065 + cimg_std::remove(filetmp); 2.31066 + return *this; 2.31067 + } 2.31068 + 2.31069 + static CImg<T> get_load_imagemagick_external(const char *const filename) { 2.31070 + return CImg<T>().load_imagemagick_external(filename); 2.31071 + } 2.31072 + 2.31073 + //! Load a DICOM image file, using XMedcon's external tool 'medcon'. 2.31074 + CImg<T>& load_medcon_external(const char *const filename) { 2.31075 + if (!filename) 2.31076 + throw CImgArgumentException("CImg<%s>::load_medcon_external() : Cannot load (null) filename.", 2.31077 + pixel_type()); 2.31078 + char command[1024], filetmp[512], body[512]; 2.31079 + cimg::fclose(cimg::fopen(filename,"r")); 2.31080 + cimg_std::FILE *file = 0; 2.31081 + do { 2.31082 + cimg_std::sprintf(filetmp,"%s.hdr",cimg::filenamerand()); 2.31083 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.31084 + } while (file); 2.31085 + cimg_std::sprintf(command,"%s -w -c anlz -o %s -f %s",cimg::medcon_path(),filetmp,filename); 2.31086 + cimg::system(command); 2.31087 + cimg::split_filename(filetmp,body); 2.31088 + cimg_std::sprintf(command,"m000-%s.hdr",body); 2.31089 + file = cimg_std::fopen(command,"rb"); 2.31090 + if (!file) { 2.31091 + throw CImgIOException("CImg<%s>::load_medcon_external() : Failed to open image '%s'.\n\n" 2.31092 + "Path of 'medcon' : \"%s\"\n" 2.31093 + "Path of temporary filename : \"%s\"", 2.31094 + pixel_type(),filename,cimg::medcon_path(),filetmp); 2.31095 + } else cimg::fclose(file); 2.31096 + load_analyze(command); 2.31097 + cimg_std::remove(command); 2.31098 + cimg_std::sprintf(command,"m000-%s.img",body); 2.31099 + cimg_std::remove(command); 2.31100 + return *this; 2.31101 + } 2.31102 + 2.31103 + static CImg<T> get_load_medcon_external(const char *const filename) { 2.31104 + return CImg<T>().load_medcon_external(filename); 2.31105 + } 2.31106 + 2.31107 + //! Load a RAW Color Camera image file, using external tool 'dcraw'. 2.31108 + CImg<T>& load_dcraw_external(const char *const filename) { 2.31109 + if (!filename) 2.31110 + throw CImgArgumentException("CImg<%s>::load_dcraw_external() : Cannot load (null) filename.", 2.31111 + pixel_type()); 2.31112 + char command[1024], filetmp[512]; 2.31113 + cimg_std::FILE *file = 0; 2.31114 +#if cimg_OS==1 2.31115 + cimg_std::sprintf(command,"%s -4 -c \"%s\"",cimg::dcraw_path(),filename); 2.31116 + file = popen(command,"r"); 2.31117 + if (file) { load_pnm(file); pclose(file); return *this; } 2.31118 +#endif 2.31119 + do { 2.31120 + cimg_std::sprintf(filetmp,"%s%s%s.ppm",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.31121 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.31122 + } while (file); 2.31123 + cimg_std::sprintf(command,"%s -4 -c \"%s\" > %s",cimg::dcraw_path(),filename,filetmp); 2.31124 + cimg::system(command,cimg::dcraw_path()); 2.31125 + if (!(file = cimg_std::fopen(filetmp,"rb"))) { 2.31126 + cimg::fclose(cimg::fopen(filename,"r")); 2.31127 + throw CImgIOException("CImg<%s>::load_dcraw_external() : Failed to open image '%s'.\n\n" 2.31128 + "Path of 'dcraw' : \"%s\"\n" 2.31129 + "Path of temporary filename : \"%s\"", 2.31130 + pixel_type(),filename,cimg::dcraw_path(),filetmp); 2.31131 + } else cimg::fclose(file); 2.31132 + load_pnm(filetmp); 2.31133 + cimg_std::remove(filetmp); 2.31134 + return *this; 2.31135 + } 2.31136 + 2.31137 + static CImg<T> get_load_dcraw_external(const char *const filename) { 2.31138 + return CImg<T>().load_dcraw_external(filename); 2.31139 + } 2.31140 + 2.31141 + //! Load an image using ImageMagick's or GraphicsMagick's executables. 2.31142 + CImg<T>& load_other(const char *const filename) { 2.31143 + if (!filename) 2.31144 + throw CImgArgumentException("CImg<%s>::load_other() : Cannot load (null) filename.", 2.31145 + pixel_type()); 2.31146 + const unsigned int odebug = cimg::exception_mode(); 2.31147 + cimg::exception_mode() = 0; 2.31148 + try { load_magick(filename); } 2.31149 + catch (CImgException&) { 2.31150 + try { load_imagemagick_external(filename); } 2.31151 + catch (CImgException&) { 2.31152 + try { load_graphicsmagick_external(filename); } 2.31153 + catch (CImgException&) { 2.31154 + assign(); 2.31155 + } 2.31156 + } 2.31157 + } 2.31158 + cimg::exception_mode() = odebug; 2.31159 + if (is_empty()) 2.31160 + throw CImgIOException("CImg<%s>::load_other() : File '%s' cannot be opened.", 2.31161 + pixel_type(),filename); 2.31162 + return *this; 2.31163 + } 2.31164 + 2.31165 + static CImg<T> get_load_other(const char *const filename) { 2.31166 + return CImg<T>().load_other(filename); 2.31167 + } 2.31168 + 2.31169 + //@} 2.31170 + //--------------------------- 2.31171 + // 2.31172 + //! \name Image File Saving 2.31173 + //@{ 2.31174 + //--------------------------- 2.31175 + 2.31176 + //! Save the image as a file. 2.31177 + /** 2.31178 + The used file format is defined by the file extension in the filename \p filename. 2.31179 + Parameter \p number can be used to add a 6-digit number to the filename before saving. 2.31180 + **/ 2.31181 + const CImg<T>& save(const char *const filename, const int number=-1) const { 2.31182 + if (is_empty()) 2.31183 + throw CImgInstanceException("CImg<%s>::save() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31184 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.31185 + if (!filename) 2.31186 + throw CImgArgumentException("CImg<%s>::save() : Instance image (%u,%u,%u,%u,%p) cannot be saved as a (null) filename.", 2.31187 + pixel_type(),width,height,depth,dim,data); 2.31188 + const char *ext = cimg::split_filename(filename); 2.31189 + char nfilename[1024]; 2.31190 + const char *const fn = (number>=0)?cimg::number_filename(filename,number,6,nfilename):filename; 2.31191 +#ifdef cimg_save_plugin 2.31192 + cimg_save_plugin(fn); 2.31193 +#endif 2.31194 +#ifdef cimg_save_plugin1 2.31195 + cimg_save_plugin1(fn); 2.31196 +#endif 2.31197 +#ifdef cimg_save_plugin2 2.31198 + cimg_save_plugin2(fn); 2.31199 +#endif 2.31200 +#ifdef cimg_save_plugin3 2.31201 + cimg_save_plugin3(fn); 2.31202 +#endif 2.31203 +#ifdef cimg_save_plugin4 2.31204 + cimg_save_plugin4(fn); 2.31205 +#endif 2.31206 +#ifdef cimg_save_plugin5 2.31207 + cimg_save_plugin5(fn); 2.31208 +#endif 2.31209 +#ifdef cimg_save_plugin6 2.31210 + cimg_save_plugin6(fn); 2.31211 +#endif 2.31212 +#ifdef cimg_save_plugin7 2.31213 + cimg_save_plugin7(fn); 2.31214 +#endif 2.31215 +#ifdef cimg_save_plugin8 2.31216 + cimg_save_plugin8(fn); 2.31217 +#endif 2.31218 + // ASCII formats 2.31219 + if (!cimg::strcasecmp(ext,"asc")) return save_ascii(fn); 2.31220 + if (!cimg::strcasecmp(ext,"dlm") || 2.31221 + !cimg::strcasecmp(ext,"txt")) return save_dlm(fn); 2.31222 + if (!cimg::strcasecmp(ext,"cpp") || 2.31223 + !cimg::strcasecmp(ext,"hpp") || 2.31224 + !cimg::strcasecmp(ext,"h") || 2.31225 + !cimg::strcasecmp(ext,"c")) return save_cpp(fn); 2.31226 + 2.31227 + // 2D binary formats 2.31228 + if (!cimg::strcasecmp(ext,"bmp")) return save_bmp(fn); 2.31229 + if (!cimg::strcasecmp(ext,"jpg") || 2.31230 + !cimg::strcasecmp(ext,"jpeg") || 2.31231 + !cimg::strcasecmp(ext,"jpe") || 2.31232 + !cimg::strcasecmp(ext,"jfif") || 2.31233 + !cimg::strcasecmp(ext,"jif")) return save_jpeg(fn); 2.31234 + if (!cimg::strcasecmp(ext,"rgb")) return save_rgb(fn); 2.31235 + if (!cimg::strcasecmp(ext,"rgba")) return save_rgba(fn); 2.31236 + if (!cimg::strcasecmp(ext,"png")) return save_png(fn); 2.31237 + if (!cimg::strcasecmp(ext,"pgm") || 2.31238 + !cimg::strcasecmp(ext,"ppm") || 2.31239 + !cimg::strcasecmp(ext,"pnm")) return save_pnm(fn); 2.31240 + if (!cimg::strcasecmp(ext,"tif") || 2.31241 + !cimg::strcasecmp(ext,"tiff")) return save_tiff(fn); 2.31242 + 2.31243 + // 3D binary formats 2.31244 + if (!cimg::strcasecmp(ext,"cimgz")) return save_cimg(fn,true); 2.31245 + if (!cimg::strcasecmp(ext,"cimg") || ext[0]=='\0') return save_cimg(fn,false); 2.31246 + if (!cimg::strcasecmp(ext,"dcm")) return save_medcon_external(fn); 2.31247 + if (!cimg::strcasecmp(ext,"hdr") || 2.31248 + !cimg::strcasecmp(ext,"nii")) return save_analyze(fn); 2.31249 + if (!cimg::strcasecmp(ext,"inr")) return save_inr(fn); 2.31250 + if (!cimg::strcasecmp(ext,"pan")) return save_pandore(fn); 2.31251 + if (!cimg::strcasecmp(ext,"raw")) return save_raw(fn); 2.31252 + 2.31253 + // Archive files 2.31254 + if (!cimg::strcasecmp(ext,"gz")) return save_gzip_external(fn); 2.31255 + 2.31256 + // Image sequences 2.31257 + if (!cimg::strcasecmp(ext,"yuv")) return save_yuv(fn,true); 2.31258 + if (!cimg::strcasecmp(ext,"avi") || 2.31259 + !cimg::strcasecmp(ext,"mov") || 2.31260 + !cimg::strcasecmp(ext,"asf") || 2.31261 + !cimg::strcasecmp(ext,"divx") || 2.31262 + !cimg::strcasecmp(ext,"flv") || 2.31263 + !cimg::strcasecmp(ext,"mpg") || 2.31264 + !cimg::strcasecmp(ext,"m1v") || 2.31265 + !cimg::strcasecmp(ext,"m2v") || 2.31266 + !cimg::strcasecmp(ext,"m4v") || 2.31267 + !cimg::strcasecmp(ext,"mjp") || 2.31268 + !cimg::strcasecmp(ext,"mkv") || 2.31269 + !cimg::strcasecmp(ext,"mpe") || 2.31270 + !cimg::strcasecmp(ext,"movie") || 2.31271 + !cimg::strcasecmp(ext,"ogm") || 2.31272 + !cimg::strcasecmp(ext,"qt") || 2.31273 + !cimg::strcasecmp(ext,"rm") || 2.31274 + !cimg::strcasecmp(ext,"vob") || 2.31275 + !cimg::strcasecmp(ext,"wmv") || 2.31276 + !cimg::strcasecmp(ext,"xvid") || 2.31277 + !cimg::strcasecmp(ext,"mpeg")) return save_ffmpeg(fn); 2.31278 + return save_other(fn); 2.31279 + } 2.31280 + 2.31281 + // Save the image as an ASCII file (ASCII Raw + simple header) (internal). 2.31282 + const CImg<T>& _save_ascii(cimg_std::FILE *const file, const char *const filename) const { 2.31283 + if (is_empty()) 2.31284 + throw CImgInstanceException("CImg<%s>::save_ascii() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31285 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31286 + if (!file && !filename) 2.31287 + throw CImgArgumentException("CImg<%s>::save_ascii() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31288 + pixel_type(),width,height,depth,dim,data); 2.31289 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"w"); 2.31290 + cimg_std::fprintf(nfile,"%u %u %u %u\n",width,height,depth,dim); 2.31291 + const T* ptrs = data; 2.31292 + cimg_forYZV(*this,y,z,v) { 2.31293 + cimg_forX(*this,x) cimg_std::fprintf(nfile,"%g ",(double)*(ptrs++)); 2.31294 + cimg_std::fputc('\n',nfile); 2.31295 + } 2.31296 + if (!file) cimg::fclose(nfile); 2.31297 + return *this; 2.31298 + } 2.31299 + 2.31300 + //! Save the image as an ASCII file (ASCII Raw + simple header). 2.31301 + const CImg<T>& save_ascii(const char *const filename) const { 2.31302 + return _save_ascii(0,filename); 2.31303 + } 2.31304 + 2.31305 + //! Save the image as an ASCII file (ASCII Raw + simple header). 2.31306 + const CImg<T>& save_ascii(cimg_std::FILE *const file) const { 2.31307 + return _save_ascii(file,0); 2.31308 + } 2.31309 + 2.31310 + // Save the image as a C or CPP source file (internal). 2.31311 + const CImg<T>& _save_cpp(cimg_std::FILE *const file, const char *const filename) const { 2.31312 + if (!file && !filename) 2.31313 + throw CImgArgumentException("CImg<%s>::save_cpp() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31314 + pixel_type(),width,height,depth,dim,data); 2.31315 + if (is_empty()) 2.31316 + throw CImgInstanceException("CImg<%s>::save_cpp() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31317 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31318 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"w"); 2.31319 + char varname[1024] = { 0 }; 2.31320 + if (filename) cimg_std::sscanf(cimg::basename(filename),"%1023[a-zA-Z0-9_]",varname); 2.31321 + if (varname[0]=='\0') cimg_std::sprintf(varname,"unnamed"); 2.31322 + cimg_std::fprintf(nfile, 2.31323 + "/* Define image '%s' of size %ux%ux%ux%u and type '%s' */\n" 2.31324 + "%s data_%s[] = { \n ", 2.31325 + varname,width,height,depth,dim,pixel_type(),pixel_type(),varname); 2.31326 + for (unsigned long off = 0, siz = size()-1; off<=siz; ++off) { 2.31327 + cimg_std::fprintf(nfile,cimg::type<T>::format(),cimg::type<T>::format((*this)[off])); 2.31328 + if (off==siz) cimg_std::fprintf(nfile," };\n"); 2.31329 + else if (!((off+1)%16)) cimg_std::fprintf(nfile,",\n "); 2.31330 + else cimg_std::fprintf(nfile,", "); 2.31331 + } 2.31332 + if (!file) cimg::fclose(nfile); 2.31333 + return *this; 2.31334 + } 2.31335 + 2.31336 + //! Save the image as a CPP source file. 2.31337 + const CImg<T>& save_cpp(const char *const filename) const { 2.31338 + return _save_cpp(0,filename); 2.31339 + } 2.31340 + 2.31341 + //! Save the image as a CPP source file. 2.31342 + const CImg<T>& save_cpp(cimg_std::FILE *const file) const { 2.31343 + return _save_cpp(file,0); 2.31344 + } 2.31345 + 2.31346 + // Save the image as a DLM file (internal). 2.31347 + const CImg<T>& _save_dlm(cimg_std::FILE *const file, const char *const filename) const { 2.31348 + if (is_empty()) 2.31349 + throw CImgInstanceException("CImg<%s>::save_dlm() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31350 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31351 + if (!file && !filename) 2.31352 + throw CImgArgumentException("CImg<%s>::save_dlm() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31353 + pixel_type(),width,height,depth,dim,data); 2.31354 + if (depth>1) 2.31355 + cimg::warn("CImg<%s>::save_dlm() : File '%s', instance image (%u,%u,%u,%u,%p) is volumetric. Pixel values along Z will be unrolled.", 2.31356 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31357 + if (dim>1) 2.31358 + cimg::warn("CImg<%s>::save_dlm() : File '%s', instance image (%u,%u,%u,%u,%p) is multispectral. " 2.31359 + "Pixel values along V will be unrolled.", 2.31360 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31361 + 2.31362 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"w"); 2.31363 + const T* ptrs = data; 2.31364 + cimg_forYZV(*this,y,z,v) { 2.31365 + cimg_forX(*this,x) cimg_std::fprintf(nfile,"%g%s",(double)*(ptrs++),(x==dimx()-1)?"":","); 2.31366 + cimg_std::fputc('\n',nfile); 2.31367 + } 2.31368 + if (!file) cimg::fclose(nfile); 2.31369 + return *this; 2.31370 + } 2.31371 + 2.31372 + //! Save the image as a DLM file. 2.31373 + const CImg<T>& save_dlm(const char *const filename) const { 2.31374 + return _save_dlm(0,filename); 2.31375 + } 2.31376 + 2.31377 + //! Save the image as a DLM file. 2.31378 + const CImg<T>& save_dlm(cimg_std::FILE *const file) const { 2.31379 + return _save_dlm(file,0); 2.31380 + } 2.31381 + 2.31382 + // Save the image as a BMP file (internal). 2.31383 + const CImg<T>& _save_bmp(cimg_std::FILE *const file, const char *const filename) const { 2.31384 + if (is_empty()) 2.31385 + throw CImgInstanceException("CImg<%s>::save_bmp() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31386 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31387 + if (!file && !filename) 2.31388 + throw CImgArgumentException("CImg<%s>::save_bmp() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31389 + pixel_type(),width,height,depth,dim,data); 2.31390 + if (depth>1) 2.31391 + cimg::warn("CImg<%s>::save_bmp() : File '%s', instance image (%u,%u,%u,%u,%p) is volumetric. Only the first slice will be saved.", 2.31392 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31393 + if (dim>3) 2.31394 + cimg::warn("CImg<%s>::save_bmp() : File '%s', instance image (%u,%u,%u,%u,%p) is multispectral. Only the three first channels will be saved.", 2.31395 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31396 + 2.31397 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.31398 + unsigned char header[54] = { 0 }, align_buf[4] = { 0 }; 2.31399 + const unsigned int 2.31400 + align = (4 - (3*width)%4)%4, 2.31401 + buf_size = (3*width+align)*dimy(), 2.31402 + file_size = 54 + buf_size; 2.31403 + header[0] = 'B'; header[1] = 'M'; 2.31404 + header[0x02] = file_size&0xFF; 2.31405 + header[0x03] = (file_size>>8)&0xFF; 2.31406 + header[0x04] = (file_size>>16)&0xFF; 2.31407 + header[0x05] = (file_size>>24)&0xFF; 2.31408 + header[0x0A] = 0x36; 2.31409 + header[0x0E] = 0x28; 2.31410 + header[0x12] = width&0xFF; 2.31411 + header[0x13] = (width>>8)&0xFF; 2.31412 + header[0x14] = (width>>16)&0xFF; 2.31413 + header[0x15] = (width>>24)&0xFF; 2.31414 + header[0x16] = height&0xFF; 2.31415 + header[0x17] = (height>>8)&0xFF; 2.31416 + header[0x18] = (height>>16)&0xFF; 2.31417 + header[0x19] = (height>>24)&0xFF; 2.31418 + header[0x1A] = 1; 2.31419 + header[0x1B] = 0; 2.31420 + header[0x1C] = 24; 2.31421 + header[0x1D] = 0; 2.31422 + header[0x22] = buf_size&0xFF; 2.31423 + header[0x23] = (buf_size>>8)&0xFF; 2.31424 + header[0x24] = (buf_size>>16)&0xFF; 2.31425 + header[0x25] = (buf_size>>24)&0xFF; 2.31426 + header[0x27] = 0x1; 2.31427 + header[0x2B] = 0x1; 2.31428 + cimg::fwrite(header,54,nfile); 2.31429 + 2.31430 + const T 2.31431 + *pR = ptr(0,height-1,0,0), 2.31432 + *pG = (dim>=2)?ptr(0,height-1,0,1):0, 2.31433 + *pB = (dim>=3)?ptr(0,height-1,0,2):0; 2.31434 + 2.31435 + switch (dim) { 2.31436 + case 1 : { 2.31437 + cimg_forY(*this,y) { cimg_forX(*this,x) { 2.31438 + const unsigned char val = (unsigned char)*(pR++); 2.31439 + cimg_std::fputc(val,nfile); cimg_std::fputc(val,nfile); cimg_std::fputc(val,nfile); 2.31440 + } 2.31441 + cimg::fwrite(align_buf,align,nfile); 2.31442 + pR-=2*width; 2.31443 + }} break; 2.31444 + case 2 : { 2.31445 + cimg_forY(*this,y) { cimg_forX(*this,x) { 2.31446 + cimg_std::fputc(0,nfile); 2.31447 + cimg_std::fputc((unsigned char)(*(pG++)),nfile); 2.31448 + cimg_std::fputc((unsigned char)(*(pR++)),nfile); 2.31449 + } 2.31450 + cimg::fwrite(align_buf,align,nfile); 2.31451 + pR-=2*width; pG-=2*width; 2.31452 + }} break; 2.31453 + default : { 2.31454 + cimg_forY(*this,y) { cimg_forX(*this,x) { 2.31455 + cimg_std::fputc((unsigned char)(*(pB++)),nfile); 2.31456 + cimg_std::fputc((unsigned char)(*(pG++)),nfile); 2.31457 + cimg_std::fputc((unsigned char)(*(pR++)),nfile); 2.31458 + } 2.31459 + cimg::fwrite(align_buf,align,nfile); 2.31460 + pR-=2*width; pG-=2*width; pB-=2*width; 2.31461 + } 2.31462 + } 2.31463 + } 2.31464 + if (!file) cimg::fclose(nfile); 2.31465 + return *this; 2.31466 + } 2.31467 + 2.31468 + //! Save the image as a BMP file. 2.31469 + const CImg<T>& save_bmp(const char *const filename) const { 2.31470 + return _save_bmp(0,filename); 2.31471 + } 2.31472 + 2.31473 + //! Save the image as a BMP file. 2.31474 + const CImg<T>& save_bmp(cimg_std::FILE *const file) const { 2.31475 + return _save_bmp(file,0); 2.31476 + } 2.31477 + 2.31478 + // Save a file in JPEG format (internal). 2.31479 + const CImg<T>& _save_jpeg(cimg_std::FILE *const file, const char *const filename, const unsigned int quality) const { 2.31480 + if (is_empty()) 2.31481 + throw CImgInstanceException("CImg<%s>::save_jpeg() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31482 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31483 + if (!file && !filename) 2.31484 + throw CImgArgumentException("CImg<%s>::save_jpeg() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.31485 + pixel_type(),width,height,depth,dim,data); 2.31486 + if (depth>1) 2.31487 + cimg::warn("CImg<%s>::save_jpeg() : File '%s, instance image (%u,%u,%u,%u,%p) is volumetric. Only the first slice will be saved.", 2.31488 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31489 +#ifndef cimg_use_jpeg 2.31490 + if (!file) return save_other(filename,quality); 2.31491 + else throw CImgIOException("CImg<%s>::save_jpeg() : Cannot save a JPEG image in a *FILE output. Use libjpeg instead.", 2.31492 + pixel_type()); 2.31493 +#else 2.31494 + // Fill pixel buffer 2.31495 + unsigned char *buf; 2.31496 + unsigned int dimbuf = 0; 2.31497 + J_COLOR_SPACE colortype = JCS_RGB; 2.31498 + switch (dim) { 2.31499 + case 1 : { // Greyscale images 2.31500 + unsigned char *buf2 = buf = new unsigned char[width*height*(dimbuf=1)]; 2.31501 + colortype = JCS_GRAYSCALE; 2.31502 + const T *ptr_g = data; 2.31503 + cimg_forXY(*this,x,y) *(buf2++) = (unsigned char)*(ptr_g++); 2.31504 + } break; 2.31505 + case 2 : { // RG images 2.31506 + unsigned char *buf2 = buf = new unsigned char[width*height*(dimbuf=3)]; 2.31507 + const T *ptr_r = ptr(0,0,0,0), *ptr_g = ptr(0,0,0,1); 2.31508 + colortype = JCS_RGB; 2.31509 + cimg_forXY(*this,x,y) { 2.31510 + *(buf2++) = (unsigned char)*(ptr_r++); 2.31511 + *(buf2++) = (unsigned char)*(ptr_g++); 2.31512 + *(buf2++) = 0; 2.31513 + } 2.31514 + } break; 2.31515 + case 3 : { // RGB images 2.31516 + unsigned char *buf2 = buf = new unsigned char[width*height*(dimbuf=3)]; 2.31517 + const T *ptr_r = ptr(0,0,0,0), *ptr_g = ptr(0,0,0,1), *ptr_b = ptr(0,0,0,2); 2.31518 + colortype = JCS_RGB; 2.31519 + cimg_forXY(*this,x,y) { 2.31520 + *(buf2++) = (unsigned char)*(ptr_r++); 2.31521 + *(buf2++) = (unsigned char)*(ptr_g++); 2.31522 + *(buf2++) = (unsigned char)*(ptr_b++); 2.31523 + } 2.31524 + } break; 2.31525 + default : { // CMYK images 2.31526 + unsigned char *buf2 = buf = new unsigned char[width*height*(dimbuf=4)]; 2.31527 + const T *ptr_r = ptr(0,0,0,0), *ptr_g = ptr(0,0,0,1), *ptr_b = ptr(0,0,0,2), *ptr_a = ptr(0,0,0,3); 2.31528 + colortype = JCS_CMYK; 2.31529 + cimg_forXY(*this,x,y) { 2.31530 + *(buf2++) = (unsigned char)*(ptr_r++); 2.31531 + *(buf2++) = (unsigned char)*(ptr_g++); 2.31532 + *(buf2++) = (unsigned char)*(ptr_b++); 2.31533 + *(buf2++) = (unsigned char)*(ptr_a++); 2.31534 + } 2.31535 + } 2.31536 + } 2.31537 + 2.31538 + // Call libjpeg functions 2.31539 + struct jpeg_compress_struct cinfo; 2.31540 + struct jpeg_error_mgr jerr; 2.31541 + cinfo.err = jpeg_std_error(&jerr); 2.31542 + jpeg_create_compress(&cinfo); 2.31543 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.31544 + jpeg_stdio_dest(&cinfo,nfile); 2.31545 + cinfo.image_width = width; 2.31546 + cinfo.image_height = height; 2.31547 + cinfo.input_components = dimbuf; 2.31548 + cinfo.in_color_space = colortype; 2.31549 + jpeg_set_defaults(&cinfo); 2.31550 + jpeg_set_quality(&cinfo,quality<100?quality:100,TRUE); 2.31551 + jpeg_start_compress(&cinfo,TRUE); 2.31552 + 2.31553 + const unsigned int row_stride = width*dimbuf; 2.31554 + JSAMPROW row_pointer[1]; 2.31555 + while (cinfo.next_scanline < cinfo.image_height) { 2.31556 + row_pointer[0] = &buf[cinfo.next_scanline*row_stride]; 2.31557 + jpeg_write_scanlines(&cinfo,row_pointer,1); 2.31558 + } 2.31559 + jpeg_finish_compress(&cinfo); 2.31560 + 2.31561 + delete[] buf; 2.31562 + if (!file) cimg::fclose(nfile); 2.31563 + jpeg_destroy_compress(&cinfo); 2.31564 + return *this; 2.31565 +#endif 2.31566 + } 2.31567 + 2.31568 + //! Save a file in JPEG format. 2.31569 + const CImg<T>& save_jpeg(const char *const filename, const unsigned int quality=100) const { 2.31570 + return _save_jpeg(0,filename,quality); 2.31571 + } 2.31572 + 2.31573 + //! Save a file in JPEG format. 2.31574 + const CImg<T>& save_jpeg(cimg_std::FILE *const file, const unsigned int quality=100) const { 2.31575 + return _save_jpeg(file,0,quality); 2.31576 + } 2.31577 + 2.31578 + //! Save the image using built-in ImageMagick++ library. 2.31579 + const CImg<T>& save_magick(const char *const filename) const { 2.31580 + if (is_empty()) 2.31581 + throw CImgInstanceException("CImg<%s>::save_magick() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31582 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.31583 + if (!filename) 2.31584 + throw CImgArgumentException("CImg<%s>::save_magick() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31585 + pixel_type(),width,height,depth,dim,data); 2.31586 +#ifdef cimg_use_magick 2.31587 + Magick::Image image(Magick::Geometry(width,height),"black"); 2.31588 + image.type(Magick::TrueColorType); 2.31589 + const T 2.31590 + *rdata = ptr(0,0,0,0), 2.31591 + *gdata = dim>1?ptr(0,0,0,1):0, 2.31592 + *bdata = dim>2?ptr(0,0,0,2):0; 2.31593 + Magick::PixelPacket *pixels = image.getPixels(0,0,width,height); 2.31594 + switch (dim) { 2.31595 + case 1 : // Scalar images 2.31596 + for (unsigned int off = width*height; off; --off) { 2.31597 + pixels->red = pixels->green = pixels->blue = Magick::Color::scaleDoubleToQuantum(*(rdata++)/255.0); 2.31598 + ++pixels; 2.31599 + } 2.31600 + break; 2.31601 + case 2 : // RG images 2.31602 + for (unsigned int off = width*height; off; --off) { 2.31603 + pixels->red = Magick::Color::scaleDoubleToQuantum(*(rdata++)/255.0); 2.31604 + pixels->green = Magick::Color::scaleDoubleToQuantum(*(gdata++)/255.0); 2.31605 + pixels->blue = 0; 2.31606 + ++pixels; 2.31607 + } 2.31608 + break; 2.31609 + default : // RGB images 2.31610 + for (unsigned int off = width*height; off; --off) { 2.31611 + pixels->red = Magick::Color::scaleDoubleToQuantum(*(rdata++)/255.0); 2.31612 + pixels->green = Magick::Color::scaleDoubleToQuantum(*(gdata++)/255.0); 2.31613 + pixels->blue = Magick::Color::scaleDoubleToQuantum(*(bdata++)/255.0); 2.31614 + ++pixels; 2.31615 + } 2.31616 + } 2.31617 + image.syncPixels(); 2.31618 + image.write(filename); 2.31619 +#else 2.31620 + throw CImgIOException("CImg<%s>::save_magick() : File '%s', Magick++ library has not been linked.", 2.31621 + pixel_type(),filename); 2.31622 +#endif 2.31623 + return *this; 2.31624 + } 2.31625 + 2.31626 + // Save an image to a PNG file (internal). 2.31627 + // Most of this function has been written by Eric Fausett 2.31628 + const CImg<T>& _save_png(cimg_std::FILE *const file, const char *const filename) const { 2.31629 + if (is_empty()) 2.31630 + throw CImgInstanceException("CImg<%s>::save_png() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31631 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31632 + if (!filename) 2.31633 + throw CImgArgumentException("CImg<%s>::save_png() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.31634 + pixel_type(),width,height,depth,dim,data); 2.31635 + if (depth>1) 2.31636 + cimg::warn("CImg<%s>::save_png() : File '%s', instance image (%u,%u,%u,%u,%p) is volumetric. Only the first slice will be saved.", 2.31637 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31638 +#ifndef cimg_use_png 2.31639 + if (!file) return save_other(filename); 2.31640 + else throw CImgIOException("CImg<%s>::save_png() : Cannot save a PNG image in a *FILE output. You must use 'libpng' to do this instead.", 2.31641 + pixel_type()); 2.31642 +#else 2.31643 + const char *volatile nfilename = filename; // two 'volatile' here to remove a g++ warning due to 'setjmp'. 2.31644 + cimg_std::FILE *volatile nfile = file?file:cimg::fopen(nfilename,"wb"); 2.31645 + 2.31646 + // Setup PNG structures for write 2.31647 + png_voidp user_error_ptr = 0; 2.31648 + png_error_ptr user_error_fn = 0, user_warning_fn = 0; 2.31649 + png_structp png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING,user_error_ptr, user_error_fn, user_warning_fn); 2.31650 + if(!png_ptr){ 2.31651 + if (!file) cimg::fclose(nfile); 2.31652 + throw CImgIOException("CImg<%s>::save_png() : File '%s', error when initializing 'png_ptr' data structure.", 2.31653 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.31654 + } 2.31655 + png_infop info_ptr = png_create_info_struct(png_ptr); 2.31656 + if (!info_ptr) { 2.31657 + png_destroy_write_struct(&png_ptr,(png_infopp)0); 2.31658 + if (!file) cimg::fclose(nfile); 2.31659 + throw CImgIOException("CImg<%s>::save_png() : File '%s', error when initializing 'info_ptr' data structure.", 2.31660 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.31661 + } 2.31662 + if (setjmp(png_jmpbuf(png_ptr))) { 2.31663 + png_destroy_write_struct(&png_ptr, &info_ptr); 2.31664 + if (!file) cimg::fclose(nfile); 2.31665 + throw CImgIOException("CImg<%s>::save_png() : File '%s', unknown fatal error.", 2.31666 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.31667 + } 2.31668 + png_init_io(png_ptr, nfile); 2.31669 + png_uint_32 width = dimx(), height = dimy(); 2.31670 + float vmin, vmax = (float)maxmin(vmin); 2.31671 + const int bit_depth = (vmin<0 || vmax>=256)?16:8; 2.31672 + int color_type; 2.31673 + switch (dimv()) { 2.31674 + case 1 : color_type = PNG_COLOR_TYPE_GRAY; break; 2.31675 + case 2 : color_type = PNG_COLOR_TYPE_GRAY_ALPHA; break; 2.31676 + case 3 : color_type = PNG_COLOR_TYPE_RGB; break; 2.31677 + default : color_type = PNG_COLOR_TYPE_RGB_ALPHA; 2.31678 + } 2.31679 + const int interlace_type = PNG_INTERLACE_NONE; 2.31680 + const int compression_type = PNG_COMPRESSION_TYPE_DEFAULT; 2.31681 + const int filter_method = PNG_FILTER_TYPE_DEFAULT; 2.31682 + png_set_IHDR(png_ptr, info_ptr, width, height, bit_depth, color_type, interlace_type,compression_type, filter_method); 2.31683 + png_write_info(png_ptr, info_ptr); 2.31684 + const int byte_depth = bit_depth>>3; 2.31685 + const int numChan = dimv()>4?4:dimv(); 2.31686 + const int pixel_bit_depth_flag = numChan * (bit_depth-1); 2.31687 + 2.31688 + // Allocate Memory for Image Save and Fill pixel data 2.31689 + png_bytep *imgData = new png_byte*[height]; 2.31690 + for (unsigned int row = 0; row<height; ++row) imgData[row] = new png_byte[byte_depth*numChan*width]; 2.31691 + const T *pC0 = ptr(0,0,0,0); 2.31692 + switch (pixel_bit_depth_flag) { 2.31693 + case 7 : { // Gray 8-bit 2.31694 + cimg_forY(*this,y) { 2.31695 + unsigned char *ptrd = imgData[y]; 2.31696 + cimg_forX(*this,x) *(ptrd++) = (unsigned char)*(pC0++); 2.31697 + } 2.31698 + } break; 2.31699 + case 14 : { // Gray w/ Alpha 8-bit 2.31700 + const T *pC1 = ptr(0,0,0,1); 2.31701 + cimg_forY(*this,y) { 2.31702 + unsigned char *ptrd = imgData[y]; 2.31703 + cimg_forX(*this,x) { 2.31704 + *(ptrd++) = (unsigned char)*(pC0++); 2.31705 + *(ptrd++) = (unsigned char)*(pC1++); 2.31706 + } 2.31707 + } 2.31708 + } break; 2.31709 + case 21 : { // RGB 8-bit 2.31710 + const T *pC1 = ptr(0,0,0,1), *pC2 = ptr(0,0,0,2); 2.31711 + cimg_forY(*this,y) { 2.31712 + unsigned char *ptrd = imgData[y]; 2.31713 + cimg_forX(*this,x) { 2.31714 + *(ptrd++) = (unsigned char)*(pC0++); 2.31715 + *(ptrd++) = (unsigned char)*(pC1++); 2.31716 + *(ptrd++) = (unsigned char)*(pC2++); 2.31717 + } 2.31718 + } 2.31719 + } break; 2.31720 + case 28 : { // RGB x/ Alpha 8-bit 2.31721 + const T *pC1 = ptr(0,0,0,1), *pC2 = ptr(0,0,0,2), *pC3 = ptr(0,0,0,3); 2.31722 + cimg_forY(*this,y){ 2.31723 + unsigned char *ptrd = imgData[y]; 2.31724 + cimg_forX(*this,x){ 2.31725 + *(ptrd++) = (unsigned char)*(pC0++); 2.31726 + *(ptrd++) = (unsigned char)*(pC1++); 2.31727 + *(ptrd++) = (unsigned char)*(pC2++); 2.31728 + *(ptrd++) = (unsigned char)*(pC3++); 2.31729 + } 2.31730 + } 2.31731 + } break; 2.31732 + case 15 : { // Gray 16-bit 2.31733 + cimg_forY(*this,y){ 2.31734 + unsigned short *ptrd = (unsigned short*)(imgData[y]); 2.31735 + cimg_forX(*this,x) *(ptrd++) = (unsigned short)*(pC0++); 2.31736 + if (!cimg::endianness()) cimg::invert_endianness((unsigned short*)imgData[y],width); 2.31737 + } 2.31738 + } break; 2.31739 + case 30 : { // Gray w/ Alpha 16-bit 2.31740 + const T *pC1 = ptr(0,0,0,1); 2.31741 + cimg_forY(*this,y){ 2.31742 + unsigned short *ptrd = (unsigned short*)(imgData[y]); 2.31743 + cimg_forX(*this,x) { 2.31744 + *(ptrd++) = (unsigned short)*(pC0++); 2.31745 + *(ptrd++) = (unsigned short)*(pC1++); 2.31746 + } 2.31747 + if (!cimg::endianness()) cimg::invert_endianness((unsigned short*)imgData[y],2*width); 2.31748 + } 2.31749 + } break; 2.31750 + case 45 : { // RGB 16-bit 2.31751 + const T *pC1 = ptr(0,0,0,1), *pC2 = ptr(0,0,0,2); 2.31752 + cimg_forY(*this,y) { 2.31753 + unsigned short *ptrd = (unsigned short*)(imgData[y]); 2.31754 + cimg_forX(*this,x) { 2.31755 + *(ptrd++) = (unsigned short)*(pC0++); 2.31756 + *(ptrd++) = (unsigned short)*(pC1++); 2.31757 + *(ptrd++) = (unsigned short)*(pC2++); 2.31758 + } 2.31759 + if (!cimg::endianness()) cimg::invert_endianness((unsigned short*)imgData[y],3*width); 2.31760 + } 2.31761 + } break; 2.31762 + case 60 : { // RGB w/ Alpha 16-bit 2.31763 + const T *pC1 = ptr(0,0,0,1), *pC2 = ptr(0,0,0,2), *pC3 = ptr(0,0,0,3); 2.31764 + cimg_forY(*this,y) { 2.31765 + unsigned short *ptrd = (unsigned short*)(imgData[y]); 2.31766 + cimg_forX(*this,x) { 2.31767 + *(ptrd++) = (unsigned short)*(pC0++); 2.31768 + *(ptrd++) = (unsigned short)*(pC1++); 2.31769 + *(ptrd++) = (unsigned short)*(pC2++); 2.31770 + *(ptrd++) = (unsigned short)*(pC3++); 2.31771 + } 2.31772 + if (!cimg::endianness()) cimg::invert_endianness((unsigned short*)imgData[y],4*width); 2.31773 + } 2.31774 + } break; 2.31775 + default : 2.31776 + if (!file) cimg::fclose(nfile); 2.31777 + throw CImgIOException("CImg<%s>::save_png() : File '%s', unknown fatal error.", 2.31778 + pixel_type(),nfilename?nfilename:"(FILE*)"); 2.31779 + } 2.31780 + png_write_image(png_ptr, imgData); 2.31781 + png_write_end(png_ptr, info_ptr); 2.31782 + png_destroy_write_struct(&png_ptr, &info_ptr); 2.31783 + 2.31784 + // Deallocate Image Write Memory 2.31785 + cimg_forY(*this,n) delete[] imgData[n]; 2.31786 + delete[] imgData; 2.31787 + if (!file) cimg::fclose(nfile); 2.31788 + return *this; 2.31789 +#endif 2.31790 + } 2.31791 + 2.31792 + //! Save a file in PNG format 2.31793 + const CImg<T>& save_png(const char *const filename) const { 2.31794 + return _save_png(0,filename); 2.31795 + } 2.31796 + 2.31797 + //! Save a file in PNG format 2.31798 + const CImg<T>& save_png(cimg_std::FILE *const file) const { 2.31799 + return _save_png(file,0); 2.31800 + } 2.31801 + 2.31802 + // Save the image as a PNM file (internal function). 2.31803 + const CImg<T>& _save_pnm(cimg_std::FILE *const file, const char *const filename) const { 2.31804 + if (!file && !filename) 2.31805 + throw CImgArgumentException("CImg<%s>::save_pnm() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31806 + pixel_type(),width,height,depth,dim,data); 2.31807 + if (is_empty()) 2.31808 + throw CImgInstanceException("CImg<%s>::save_pnm() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31809 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31810 + double stmin, stmax = (double)maxmin(stmin); 2.31811 + if (depth>1) 2.31812 + cimg::warn("CImg<%s>::save_pnm() : File '%s', instance image (%u,%u,%u,%u,%p) is volumetric. Only the first slice will be saved.", 2.31813 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31814 + if (dim>3) 2.31815 + cimg::warn("CImg<%s>::save_pnm() : File '%s', instance image (%u,%u,%u,%u,%p) is multispectral. Only the three first channels will be saved.", 2.31816 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31817 + if (stmin<0 || stmax>65535) 2.31818 + cimg::warn("CImg<%s>::save_pnm() : File '%s', instance image (%u,%u,%u,%u,%p) has pixel values in [%g,%g]. Probable type overflow.", 2.31819 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data,stmin,stmax); 2.31820 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.31821 + const T 2.31822 + *ptrR = ptr(0,0,0,0), 2.31823 + *ptrG = (dim>=2)?ptr(0,0,0,1):0, 2.31824 + *ptrB = (dim>=3)?ptr(0,0,0,2):0; 2.31825 + const unsigned int buf_size = width*height*(dim==1?1:3); 2.31826 + 2.31827 + cimg_std::fprintf(nfile,"P%c\n# CREATOR: CImg Library (original size = %ux%ux%ux%u)\n%u %u\n%u\n", 2.31828 + (dim==1?'5':'6'),width,height,depth,dim,width,height,stmax<256?255:(stmax<4096?4095:65535)); 2.31829 + 2.31830 + switch (dim) { 2.31831 + case 1 : { // Scalar image 2.31832 + if (stmax<256) { // Binary PGM 8 bits 2.31833 + unsigned char *ptrd = new unsigned char[buf_size], *xptrd = ptrd; 2.31834 + cimg_forXY(*this,x,y) *(xptrd++) = (unsigned char)*(ptrR++); 2.31835 + cimg::fwrite(ptrd,buf_size,nfile); 2.31836 + delete[] ptrd; 2.31837 + } else { // Binary PGM 16 bits 2.31838 + unsigned short *ptrd = new unsigned short[buf_size], *xptrd = ptrd; 2.31839 + cimg_forXY(*this,x,y) *(xptrd++) = (unsigned short)*(ptrR++); 2.31840 + if (!cimg::endianness()) cimg::invert_endianness(ptrd,buf_size); 2.31841 + cimg::fwrite(ptrd,buf_size,nfile); 2.31842 + delete[] ptrd; 2.31843 + } 2.31844 + } break; 2.31845 + case 2 : { // RG image 2.31846 + if (stmax<256) { // Binary PPM 8 bits 2.31847 + unsigned char *ptrd = new unsigned char[buf_size], *xptrd = ptrd; 2.31848 + cimg_forXY(*this,x,y) { 2.31849 + *(xptrd++) = (unsigned char)*(ptrR++); 2.31850 + *(xptrd++) = (unsigned char)*(ptrG++); 2.31851 + *(xptrd++) = 0; 2.31852 + } 2.31853 + cimg::fwrite(ptrd,buf_size,nfile); 2.31854 + delete[] ptrd; 2.31855 + } else { // Binary PPM 16 bits 2.31856 + unsigned short *ptrd = new unsigned short[buf_size], *xptrd = ptrd; 2.31857 + cimg_forXY(*this,x,y) { 2.31858 + *(xptrd++) = (unsigned short)*(ptrR++); 2.31859 + *(xptrd++) = (unsigned short)*(ptrG++); 2.31860 + *(xptrd++) = 0; 2.31861 + } 2.31862 + if (!cimg::endianness()) cimg::invert_endianness(ptrd,buf_size); 2.31863 + cimg::fwrite(ptrd,buf_size,nfile); 2.31864 + delete[] ptrd; 2.31865 + } 2.31866 + } break; 2.31867 + default : { // RGB image 2.31868 + if (stmax<256) { // Binary PPM 8 bits 2.31869 + unsigned char *ptrd = new unsigned char[buf_size], *xptrd = ptrd; 2.31870 + cimg_forXY(*this,x,y) { 2.31871 + *(xptrd++) = (unsigned char)*(ptrR++); 2.31872 + *(xptrd++) = (unsigned char)*(ptrG++); 2.31873 + *(xptrd++) = (unsigned char)*(ptrB++); 2.31874 + } 2.31875 + cimg::fwrite(ptrd,buf_size,nfile); 2.31876 + delete[] ptrd; 2.31877 + } else { // Binary PPM 16 bits 2.31878 + unsigned short *ptrd = new unsigned short[buf_size], *xptrd = ptrd; 2.31879 + cimg_forXY(*this,x,y) { 2.31880 + *(xptrd++) = (unsigned short)*(ptrR++); 2.31881 + *(xptrd++) = (unsigned short)*(ptrG++); 2.31882 + *(xptrd++) = (unsigned short)*(ptrB++); 2.31883 + } 2.31884 + if (!cimg::endianness()) cimg::invert_endianness(ptrd,buf_size); 2.31885 + cimg::fwrite(ptrd,buf_size,nfile); 2.31886 + delete[] ptrd; 2.31887 + } 2.31888 + } 2.31889 + } 2.31890 + if (!file) cimg::fclose(nfile); 2.31891 + return *this; 2.31892 + } 2.31893 + 2.31894 + //! Save the image as a PNM file. 2.31895 + const CImg<T>& save_pnm(const char *const filename) const { 2.31896 + return _save_pnm(0,filename); 2.31897 + } 2.31898 + 2.31899 + //! Save the image as a PNM file. 2.31900 + const CImg<T>& save_pnm(cimg_std::FILE *const file) const { 2.31901 + return _save_pnm(file,0); 2.31902 + } 2.31903 + 2.31904 + // Save the image as a RGB file (internal). 2.31905 + const CImg<T>& _save_rgb(cimg_std::FILE *const file, const char *const filename) const { 2.31906 + if (is_empty()) 2.31907 + throw CImgInstanceException("CImg<%s>::save_rgb() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31908 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31909 + if (!file && !filename) 2.31910 + throw CImgArgumentException("CImg<%s>::save_rgb() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31911 + pixel_type(),width,height,depth,dim,data); 2.31912 + if (dim!=3) 2.31913 + cimg::warn("CImg<%s>::save_rgb() : File '%s', instance image (%u,%u,%u,%u,%p) has not exactly 3 channels.", 2.31914 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31915 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.31916 + const unsigned int wh = width*height; 2.31917 + unsigned char *buffer = new unsigned char[3*wh], *nbuffer=buffer; 2.31918 + const T 2.31919 + *ptr1 = ptr(0,0,0,0), 2.31920 + *ptr2 = dim>1?ptr(0,0,0,1):0, 2.31921 + *ptr3 = dim>2?ptr(0,0,0,2):0; 2.31922 + switch (dim) { 2.31923 + case 1 : { // Scalar image 2.31924 + for (unsigned int k=0; k<wh; ++k) { 2.31925 + const unsigned char val = (unsigned char)*(ptr1++); 2.31926 + *(nbuffer++) = val; 2.31927 + *(nbuffer++) = val; 2.31928 + *(nbuffer++) = val; 2.31929 + }} break; 2.31930 + case 2 : { // RG image 2.31931 + for (unsigned int k=0; k<wh; ++k) { 2.31932 + *(nbuffer++) = (unsigned char)(*(ptr1++)); 2.31933 + *(nbuffer++) = (unsigned char)(*(ptr2++)); 2.31934 + *(nbuffer++) = 0; 2.31935 + }} break; 2.31936 + default : { // RGB image 2.31937 + for (unsigned int k=0; k<wh; ++k) { 2.31938 + *(nbuffer++) = (unsigned char)(*(ptr1++)); 2.31939 + *(nbuffer++) = (unsigned char)(*(ptr2++)); 2.31940 + *(nbuffer++) = (unsigned char)(*(ptr3++)); 2.31941 + } 2.31942 + } 2.31943 + } 2.31944 + cimg::fwrite(buffer,3*wh,nfile); 2.31945 + if (!file) cimg::fclose(nfile); 2.31946 + delete[] buffer; 2.31947 + return *this; 2.31948 + } 2.31949 + 2.31950 + //! Save the image as a RGB file. 2.31951 + const CImg<T>& save_rgb(const char *const filename) const { 2.31952 + return _save_rgb(0,filename); 2.31953 + } 2.31954 + 2.31955 + //! Save the image as a RGB file. 2.31956 + const CImg<T>& save_rgb(cimg_std::FILE *const file) const { 2.31957 + return _save_rgb(file,0); 2.31958 + } 2.31959 + 2.31960 + // Save the image as a RGBA file (internal). 2.31961 + const CImg<T>& _save_rgba(cimg_std::FILE *const file, const char *const filename) const { 2.31962 + if (is_empty()) 2.31963 + throw CImgInstanceException("CImg<%s>::save_rgba() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.31964 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31965 + if (!file && !filename) 2.31966 + throw CImgArgumentException("CImg<%s>::save_rgba() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.31967 + pixel_type(),width,height,depth,dim,data); 2.31968 + if (dim!=4) 2.31969 + cimg::warn("CImg<%s>::save_rgba() : File '%s, instance image (%u,%u,%u,%u,%p) has not exactly 4 channels.", 2.31970 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.31971 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.31972 + const unsigned int wh = width*height; 2.31973 + unsigned char *buffer = new unsigned char[4*wh], *nbuffer=buffer; 2.31974 + const T 2.31975 + *ptr1 = ptr(0,0,0,0), 2.31976 + *ptr2 = dim>1?ptr(0,0,0,1):0, 2.31977 + *ptr3 = dim>2?ptr(0,0,0,2):0, 2.31978 + *ptr4 = dim>3?ptr(0,0,0,3):0; 2.31979 + switch (dim) { 2.31980 + case 1 : { // Scalar images 2.31981 + for (unsigned int k=0; k<wh; ++k) { 2.31982 + const unsigned char val = (unsigned char)*(ptr1++); 2.31983 + *(nbuffer++) = val; 2.31984 + *(nbuffer++) = val; 2.31985 + *(nbuffer++) = val; 2.31986 + *(nbuffer++) = 255; 2.31987 + }} break; 2.31988 + case 2 : { // RG images 2.31989 + for (unsigned int k=0; k<wh; ++k) { 2.31990 + *(nbuffer++) = (unsigned char)(*(ptr1++)); 2.31991 + *(nbuffer++) = (unsigned char)(*(ptr2++)); 2.31992 + *(nbuffer++) = 0; 2.31993 + *(nbuffer++) = 255; 2.31994 + }} break; 2.31995 + case 3 : { // RGB images 2.31996 + for (unsigned int k=0; k<wh; ++k) { 2.31997 + *(nbuffer++) = (unsigned char)(*(ptr1++)); 2.31998 + *(nbuffer++) = (unsigned char)(*(ptr2++)); 2.31999 + *(nbuffer++) = (unsigned char)(*(ptr3++)); 2.32000 + *(nbuffer++) = 255; 2.32001 + }} break; 2.32002 + default : { // RGBA images 2.32003 + for (unsigned int k=0; k<wh; ++k) { 2.32004 + *(nbuffer++) = (unsigned char)(*(ptr1++)); 2.32005 + *(nbuffer++) = (unsigned char)(*(ptr2++)); 2.32006 + *(nbuffer++) = (unsigned char)(*(ptr3++)); 2.32007 + *(nbuffer++) = (unsigned char)(*(ptr4++)); 2.32008 + } 2.32009 + } 2.32010 + } 2.32011 + cimg::fwrite(buffer,4*wh,nfile); 2.32012 + if (!file) cimg::fclose(nfile); 2.32013 + delete[] buffer; 2.32014 + return *this; 2.32015 + } 2.32016 + 2.32017 + //! Save the image as a RGBA file. 2.32018 + const CImg<T>& save_rgba(const char *const filename) const { 2.32019 + return _save_rgba(0,filename); 2.32020 + } 2.32021 + 2.32022 + //! Save the image as a RGBA file. 2.32023 + const CImg<T>& save_rgba(cimg_std::FILE *const file) const { 2.32024 + return _save_rgba(file,0); 2.32025 + } 2.32026 + 2.32027 + // Save a plane into a tiff file 2.32028 +#ifdef cimg_use_tiff 2.32029 + const CImg<T>& _save_tiff(TIFF *tif, const unsigned int directory) const { 2.32030 + if (is_empty() || !tif) return *this; 2.32031 + const char *const filename = TIFFFileName(tif); 2.32032 + uint32 rowsperstrip = (uint32)-1; 2.32033 + uint16 spp = dim, bpp = sizeof(T)*8, photometric, compression = COMPRESSION_NONE; 2.32034 + if (spp==3 || spp==4) photometric = PHOTOMETRIC_RGB; 2.32035 + else photometric = PHOTOMETRIC_MINISBLACK; 2.32036 + TIFFSetDirectory(tif,directory); 2.32037 + TIFFSetField(tif,TIFFTAG_IMAGEWIDTH,width); 2.32038 + TIFFSetField(tif,TIFFTAG_IMAGELENGTH,height); 2.32039 + TIFFSetField(tif,TIFFTAG_ORIENTATION,ORIENTATION_TOPLEFT); 2.32040 + TIFFSetField(tif,TIFFTAG_SAMPLESPERPIXEL,spp); 2.32041 + if (cimg::type<T>::is_float()) TIFFSetField(tif,TIFFTAG_SAMPLEFORMAT,3); 2.32042 + else if (cimg::type<T>::min()==0) TIFFSetField(tif,TIFFTAG_SAMPLEFORMAT,1); 2.32043 + else TIFFSetField(tif,TIFFTAG_SAMPLEFORMAT,2); 2.32044 + TIFFSetField(tif,TIFFTAG_BITSPERSAMPLE,bpp); 2.32045 + TIFFSetField(tif,TIFFTAG_PLANARCONFIG,PLANARCONFIG_CONTIG); 2.32046 + TIFFSetField(tif,TIFFTAG_PHOTOMETRIC,photometric); 2.32047 + TIFFSetField(tif,TIFFTAG_COMPRESSION,compression); 2.32048 + rowsperstrip = TIFFDefaultStripSize(tif,rowsperstrip); 2.32049 + TIFFSetField(tif,TIFFTAG_ROWSPERSTRIP,rowsperstrip); 2.32050 + TIFFSetField(tif,TIFFTAG_FILLORDER,FILLORDER_MSB2LSB); 2.32051 + TIFFSetField(tif,TIFFTAG_SOFTWARE,"CImg"); 2.32052 + T *buf = (T*)_TIFFmalloc(TIFFStripSize(tif)); 2.32053 + if (buf){ 2.32054 + for (unsigned int row = 0; row<height; row+=rowsperstrip) { 2.32055 + uint32 nrow = (row+rowsperstrip>height?height-row:rowsperstrip); 2.32056 + tstrip_t strip = TIFFComputeStrip(tif,row,0); 2.32057 + tsize_t i = 0; 2.32058 + for (unsigned int rr = 0; rr<nrow; ++rr) 2.32059 + for (unsigned int cc = 0; cc<width; ++cc) 2.32060 + for (unsigned int vv = 0; vv<spp; ++vv) 2.32061 + buf[i++] = (*this)(cc,row+rr,vv); 2.32062 + if (TIFFWriteEncodedStrip(tif,strip,buf,i*sizeof(T))<0) 2.32063 + throw CImgException("CImg<%s>::save_tiff() : File '%s', an error has occured while writing a strip.", 2.32064 + pixel_type(),filename?filename:"(FILE*)"); 2.32065 + } 2.32066 + _TIFFfree(buf); 2.32067 + } 2.32068 + TIFFWriteDirectory(tif); 2.32069 + return (*this); 2.32070 + } 2.32071 +#endif 2.32072 + 2.32073 + //! Save a file in TIFF format. 2.32074 + const CImg<T>& save_tiff(const char *const filename) const { 2.32075 + if (is_empty()) 2.32076 + throw CImgInstanceException("CImg<%s>::save_tiff() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32077 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32078 + if (!filename) 2.32079 + throw CImgArgumentException("CImg<%s>::save_tiff() : Specified filename is (null) for instance image (%u,%u,%u,%u,%p).", 2.32080 + pixel_type(),width,height,depth,dim,data); 2.32081 +#ifdef cimg_use_tiff 2.32082 + TIFF *tif = TIFFOpen(filename,"w"); 2.32083 + if (tif) { 2.32084 + cimg_forZ(*this,z) get_slice(z)._save_tiff(tif,z); 2.32085 + TIFFClose(tif); 2.32086 + } else throw CImgException("CImg<%s>::save_tiff() : File '%s', error while opening file stream for writing.", 2.32087 + pixel_type(),filename); 2.32088 +#else 2.32089 + return save_other(filename); 2.32090 +#endif 2.32091 + return *this; 2.32092 + } 2.32093 + 2.32094 + //! Save the image as an ANALYZE7.5 or NIFTI file. 2.32095 + const CImg<T>& save_analyze(const char *const filename, const float *const voxsize=0) const { 2.32096 + if (is_empty()) 2.32097 + throw CImgInstanceException("CImg<%s>::save_analyze() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32098 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32099 + if (!filename) 2.32100 + throw CImgArgumentException("CImg<%s>::save_analyze() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32101 + pixel_type(),width,height,depth,dim,data); 2.32102 + cimg_std::FILE *file; 2.32103 + char header[348], hname[1024], iname[1024]; 2.32104 + const char *ext = cimg::split_filename(filename); 2.32105 + short datatype=-1; 2.32106 + cimg_std::memset(header,0,348); 2.32107 + if (!ext[0]) { cimg_std::sprintf(hname,"%s.hdr",filename); cimg_std::sprintf(iname,"%s.img",filename); } 2.32108 + if (!cimg::strncasecmp(ext,"hdr",3)) { 2.32109 + cimg_std::strcpy(hname,filename); cimg_std::strcpy(iname,filename); cimg_std::sprintf(iname+cimg::strlen(iname)-3,"img"); 2.32110 + } 2.32111 + if (!cimg::strncasecmp(ext,"img",3)) { 2.32112 + cimg_std::strcpy(hname,filename); cimg_std::strcpy(iname,filename); cimg_std::sprintf(hname+cimg::strlen(iname)-3,"hdr"); 2.32113 + } 2.32114 + if (!cimg::strncasecmp(ext,"nii",3)) { 2.32115 + cimg_std::strcpy(hname,filename); iname[0] = 0; 2.32116 + } 2.32117 + ((int*)(header))[0] = 348; 2.32118 + cimg_std::sprintf(header+4,"CImg"); 2.32119 + cimg_std::sprintf(header+14," "); 2.32120 + ((short*)(header+36))[0] = 4096; 2.32121 + ((char*)(header+38))[0] = 114; 2.32122 + ((short*)(header+40))[0] = 4; 2.32123 + ((short*)(header+40))[1] = width; 2.32124 + ((short*)(header+40))[2] = height; 2.32125 + ((short*)(header+40))[3] = depth; 2.32126 + ((short*)(header+40))[4] = dim; 2.32127 + if (!cimg::strcasecmp(pixel_type(),"bool")) datatype = 2; 2.32128 + if (!cimg::strcasecmp(pixel_type(),"unsigned char")) datatype = 2; 2.32129 + if (!cimg::strcasecmp(pixel_type(),"char")) datatype = 2; 2.32130 + if (!cimg::strcasecmp(pixel_type(),"unsigned short")) datatype = 4; 2.32131 + if (!cimg::strcasecmp(pixel_type(),"short")) datatype = 4; 2.32132 + if (!cimg::strcasecmp(pixel_type(),"unsigned int")) datatype = 8; 2.32133 + if (!cimg::strcasecmp(pixel_type(),"int")) datatype = 8; 2.32134 + if (!cimg::strcasecmp(pixel_type(),"unsigned long")) datatype = 8; 2.32135 + if (!cimg::strcasecmp(pixel_type(),"long")) datatype = 8; 2.32136 + if (!cimg::strcasecmp(pixel_type(),"float")) datatype = 16; 2.32137 + if (!cimg::strcasecmp(pixel_type(),"double")) datatype = 64; 2.32138 + if (datatype<0) 2.32139 + throw CImgIOException("CImg<%s>::save_analyze() : Cannot save image '%s' since pixel type (%s)" 2.32140 + "is not handled in Analyze7.5 specifications.\n", 2.32141 + pixel_type(),filename,pixel_type()); 2.32142 + ((short*)(header+70))[0] = datatype; 2.32143 + ((short*)(header+72))[0] = sizeof(T); 2.32144 + ((float*)(header+112))[0] = 1; 2.32145 + ((float*)(header+76))[0] = 0; 2.32146 + if (voxsize) { 2.32147 + ((float*)(header+76))[1] = voxsize[0]; 2.32148 + ((float*)(header+76))[2] = voxsize[1]; 2.32149 + ((float*)(header+76))[3] = voxsize[2]; 2.32150 + } else ((float*)(header+76))[1] = ((float*)(header+76))[2] = ((float*)(header+76))[3] = 1; 2.32151 + file = cimg::fopen(hname,"wb"); 2.32152 + cimg::fwrite(header,348,file); 2.32153 + if (iname[0]) { cimg::fclose(file); file = cimg::fopen(iname,"wb"); } 2.32154 + cimg::fwrite(data,size(),file); 2.32155 + cimg::fclose(file); 2.32156 + return *this; 2.32157 + } 2.32158 + 2.32159 + //! Save the image as a .cimg file. 2.32160 + const CImg<T>& save_cimg(const char *const filename, const bool compress=false) const { 2.32161 + CImgList<T>(*this,true).save_cimg(filename,compress); 2.32162 + return *this; 2.32163 + } 2.32164 + 2.32165 + // Save the image as a .cimg file. 2.32166 + const CImg<T>& save_cimg(cimg_std::FILE *const file, const bool compress=false) const { 2.32167 + CImgList<T>(*this,true).save_cimg(file,compress); 2.32168 + return *this; 2.32169 + } 2.32170 + 2.32171 + //! Insert the image into an existing .cimg file, at specified coordinates. 2.32172 + const CImg<T>& save_cimg(const char *const filename, 2.32173 + const unsigned int n0, 2.32174 + const unsigned int x0, const unsigned int y0, 2.32175 + const unsigned int z0, const unsigned int v0) const { 2.32176 + CImgList<T>(*this,true).save_cimg(filename,n0,x0,y0,z0,v0); 2.32177 + return *this; 2.32178 + } 2.32179 + 2.32180 + //! Insert the image into an existing .cimg file, at specified coordinates. 2.32181 + const CImg<T>& save_cimg(cimg_std::FILE *const file, 2.32182 + const unsigned int n0, 2.32183 + const unsigned int x0, const unsigned int y0, 2.32184 + const unsigned int z0, const unsigned int v0) const { 2.32185 + CImgList<T>(*this,true).save_cimg(file,n0,x0,y0,z0,v0); 2.32186 + return *this; 2.32187 + } 2.32188 + 2.32189 + //! Save an empty .cimg file with specified dimensions. 2.32190 + static void save_empty_cimg(const char *const filename, 2.32191 + const unsigned int dx, const unsigned int dy=1, 2.32192 + const unsigned int dz=1, const unsigned int dv=1) { 2.32193 + return CImgList<T>::save_empty_cimg(filename,1,dx,dy,dz,dv); 2.32194 + } 2.32195 + 2.32196 + //! Save an empty .cimg file with specified dimensions. 2.32197 + static void save_empty_cimg(cimg_std::FILE *const file, 2.32198 + const unsigned int dx, const unsigned int dy=1, 2.32199 + const unsigned int dz=1, const unsigned int dv=1) { 2.32200 + return CImgList<T>::save_empty_cimg(file,1,dx,dy,dz,dv); 2.32201 + } 2.32202 + 2.32203 + // Save the image as an INRIMAGE-4 file (internal). 2.32204 + const CImg<T>& _save_inr(cimg_std::FILE *const file, const char *const filename, const float *const voxsize) const { 2.32205 + if (is_empty()) 2.32206 + throw CImgInstanceException("CImg<%s>::save_inr() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32207 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.32208 + if (!filename) 2.32209 + throw CImgArgumentException("CImg<%s>::save_inr() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.32210 + pixel_type(),width,height,depth,dim,data); 2.32211 + int inrpixsize=-1; 2.32212 + const char *inrtype = "unsigned fixed\nPIXSIZE=8 bits\nSCALE=2**0"; 2.32213 + if (!cimg::strcasecmp(pixel_type(),"unsigned char")) { inrtype = "unsigned fixed\nPIXSIZE=8 bits\nSCALE=2**0"; inrpixsize = 1; } 2.32214 + if (!cimg::strcasecmp(pixel_type(),"char")) { inrtype = "fixed\nPIXSIZE=8 bits\nSCALE=2**0"; inrpixsize = 1; } 2.32215 + if (!cimg::strcasecmp(pixel_type(),"unsigned short")) { inrtype = "unsigned fixed\nPIXSIZE=16 bits\nSCALE=2**0";inrpixsize = 2; } 2.32216 + if (!cimg::strcasecmp(pixel_type(),"short")) { inrtype = "fixed\nPIXSIZE=16 bits\nSCALE=2**0"; inrpixsize = 2; } 2.32217 + if (!cimg::strcasecmp(pixel_type(),"unsigned int")) { inrtype = "unsigned fixed\nPIXSIZE=32 bits\nSCALE=2**0";inrpixsize = 4; } 2.32218 + if (!cimg::strcasecmp(pixel_type(),"int")) { inrtype = "fixed\nPIXSIZE=32 bits\nSCALE=2**0"; inrpixsize = 4; } 2.32219 + if (!cimg::strcasecmp(pixel_type(),"float")) { inrtype = "float\nPIXSIZE=32 bits"; inrpixsize = 4; } 2.32220 + if (!cimg::strcasecmp(pixel_type(),"double")) { inrtype = "float\nPIXSIZE=64 bits"; inrpixsize = 8; } 2.32221 + if (inrpixsize<=0) 2.32222 + throw CImgIOException("CImg<%s>::save_inr() : Don't know how to save images of '%s'", 2.32223 + pixel_type(),pixel_type()); 2.32224 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.32225 + char header[257]; 2.32226 + int err = cimg_std::sprintf(header,"#INRIMAGE-4#{\nXDIM=%u\nYDIM=%u\nZDIM=%u\nVDIM=%u\n",width,height,depth,dim); 2.32227 + if (voxsize) err += cimg_std::sprintf(header+err,"VX=%g\nVY=%g\nVZ=%g\n",voxsize[0],voxsize[1],voxsize[2]); 2.32228 + err += cimg_std::sprintf(header+err,"TYPE=%s\nCPU=%s\n",inrtype,cimg::endianness()?"sun":"decm"); 2.32229 + cimg_std::memset(header+err,'\n',252-err); 2.32230 + cimg_std::memcpy(header+252,"##}\n",4); 2.32231 + cimg::fwrite(header,256,nfile); 2.32232 + cimg_forXYZ(*this,x,y,z) cimg_forV(*this,k) cimg::fwrite(&((*this)(x,y,z,k)),1,nfile); 2.32233 + if (!file) cimg::fclose(nfile); 2.32234 + return *this; 2.32235 + } 2.32236 + 2.32237 + //! Save the image as an INRIMAGE-4 file. 2.32238 + const CImg<T>& save_inr(const char *const filename, const float *const voxsize=0) const { 2.32239 + return _save_inr(0,filename,voxsize); 2.32240 + } 2.32241 + 2.32242 + //! Save the image as an INRIMAGE-4 file. 2.32243 + const CImg<T>& save_inr(cimg_std::FILE *const file, const float *const voxsize=0) const { 2.32244 + return _save_inr(file,0,voxsize); 2.32245 + } 2.32246 + 2.32247 + // Save the image as a PANDORE-5 file (internal). 2.32248 + unsigned int _save_pandore_header_length(unsigned int id, unsigned int *dims, const unsigned int colorspace) const { 2.32249 + unsigned int nbdims = 0; 2.32250 + if (id==2 || id==3 || id==4) { dims[0] = 1; dims[1] = width; nbdims = 2; } 2.32251 + if (id==5 || id==6 || id==7) { dims[0] = 1; dims[1] = height; dims[2] = width; nbdims=3; } 2.32252 + if (id==8 || id==9 || id==10) { dims[0] = dim; dims[1] = depth; dims[2] = height; dims[3] = width; nbdims = 4; } 2.32253 + if (id==16 || id==17 || id==18) { dims[0] = 3; dims[1] = height; dims[2] = width; dims[3] = colorspace; nbdims = 4; } 2.32254 + if (id==19 || id==20 || id==21) { dims[0] = 3; dims[1] = depth; dims[2] = height; dims[3] = width; dims[4] = colorspace; nbdims = 5; } 2.32255 + if (id==22 || id==23 || id==25) { dims[0] = dim; dims[1] = width; nbdims = 2; } 2.32256 + if (id==26 || id==27 || id==29) { dims[0] = dim; dims[1] = height; dims[2] = width; nbdims=3; } 2.32257 + if (id==30 || id==31 || id==33) { dims[0] = dim; dims[1] = depth; dims[2] = height; dims[3] = width; nbdims = 4; } 2.32258 + return nbdims; 2.32259 + } 2.32260 + 2.32261 + const CImg<T>& _save_pandore(cimg_std::FILE *const file, const char *const filename, const unsigned int colorspace) const { 2.32262 + typedef unsigned char uchar; 2.32263 + typedef unsigned short ushort; 2.32264 + typedef unsigned int uint; 2.32265 + typedef unsigned long ulong; 2.32266 + 2.32267 +#define __cimg_save_pandore_case(dtype) \ 2.32268 + dtype *buffer = new dtype[size()]; \ 2.32269 + const T *ptrs = data; \ 2.32270 + cimg_foroff(*this,off) *(buffer++) = (dtype)(*(ptrs++)); \ 2.32271 + buffer-=size(); \ 2.32272 + cimg::fwrite(buffer,size(),nfile); \ 2.32273 + delete[] buffer 2.32274 + 2.32275 +#define _cimg_save_pandore_case(sy,sz,sv,stype,id) \ 2.32276 + if (!saved && (sy?(sy==height):true) && (sz?(sz==depth):true) && (sv?(sv==dim):true) && !cimg::strcmp(stype,pixel_type())) { \ 2.32277 + unsigned int *iheader = (unsigned int*)(header+12); \ 2.32278 + nbdims = _save_pandore_header_length((*iheader=id),dims,colorspace); \ 2.32279 + cimg::fwrite(header,36,nfile); \ 2.32280 + if (sizeof(ulong)==4) { ulong ndims[5]; for (int d = 0; d<5; ++d) ndims[d] = (ulong)dims[d]; cimg::fwrite(ndims,nbdims,nfile); } \ 2.32281 + else if (sizeof(uint)==4) { uint ndims[5]; for (int d = 0; d<5; ++d) ndims[d] = (uint)dims[d]; cimg::fwrite(ndims,nbdims,nfile); } \ 2.32282 + else if (sizeof(ushort)==4) { ushort ndims[5]; for (int d = 0; d<5; ++d) ndims[d] = (ushort)dims[d]; cimg::fwrite(ndims,nbdims,nfile); } \ 2.32283 + else throw CImgIOException("CImg<%s>::save_pandore() : File '%s', instance image (%u,%u,%u,%u,%p), output type is not" \ 2.32284 + "supported on this architecture.",pixel_type(),filename?filename:"(FILE*)",width,height, \ 2.32285 + depth,dim,data); \ 2.32286 + if (id==2 || id==5 || id==8 || id==16 || id==19 || id==22 || id==26 || id==30) { \ 2.32287 + __cimg_save_pandore_case(uchar); \ 2.32288 + } else if (id==3 || id==6 || id==9 || id==17 || id==20 || id==23 || id==27 || id==31) { \ 2.32289 + if (sizeof(ulong)==4) { __cimg_save_pandore_case(ulong); } \ 2.32290 + else if (sizeof(uint)==4) { __cimg_save_pandore_case(uint); } \ 2.32291 + else if (sizeof(ushort)==4) { __cimg_save_pandore_case(ushort); } \ 2.32292 + else throw CImgIOException("CImg<%s>::save_pandore() : File '%s', instance image (%u,%u,%u,%u,%p), output type is not" \ 2.32293 + "supported on this architecture.",pixel_type(),filename?filename:"(FILE*)",width,height, \ 2.32294 + depth,dim,data); \ 2.32295 + } else if (id==4 || id==7 || id==10 || id==18 || id==21 || id==25 || id==29 || id==33) { \ 2.32296 + if (sizeof(double)==4) { __cimg_save_pandore_case(double); } \ 2.32297 + else if (sizeof(float)==4) { __cimg_save_pandore_case(float); } \ 2.32298 + else throw CImgIOException("CImg<%s>::save_pandore() : File '%s', instance image (%u,%u,%u,%u,%p), output type is not" \ 2.32299 + "supported on this architecture.",pixel_type(),filename?filename:"(FILE*)",width,height, \ 2.32300 + depth,dim,data); \ 2.32301 + } \ 2.32302 + saved = true; \ 2.32303 + } 2.32304 + 2.32305 + if (is_empty()) 2.32306 + throw CImgInstanceException("CImg<%s>::save_pandore() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32307 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.32308 + if (!file && !filename) 2.32309 + throw CImgArgumentException("CImg<%s>::save_pandore() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.32310 + pixel_type(),width,height,depth,dim,data); 2.32311 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.32312 + unsigned char header[36] = { 'P','A','N','D','O','R','E','0','4',0,0,0, 2.32313 + 0,0,0,0,'C','I','m','g',0,0,0,0,0,'N','o',' ','d','a','t','e',0,0,0,0 }; 2.32314 + unsigned int nbdims, dims[5]; 2.32315 + bool saved = false; 2.32316 + _cimg_save_pandore_case(1,1,1,"unsigned char",2); 2.32317 + _cimg_save_pandore_case(1,1,1,"char",3); 2.32318 + _cimg_save_pandore_case(1,1,1,"short",3); 2.32319 + _cimg_save_pandore_case(1,1,1,"unsigned short",3); 2.32320 + _cimg_save_pandore_case(1,1,1,"unsigned int",3); 2.32321 + _cimg_save_pandore_case(1,1,1,"int",3); 2.32322 + _cimg_save_pandore_case(1,1,1,"unsigned long",4); 2.32323 + _cimg_save_pandore_case(1,1,1,"long",3); 2.32324 + _cimg_save_pandore_case(1,1,1,"float",4); 2.32325 + _cimg_save_pandore_case(1,1,1,"double",4); 2.32326 + 2.32327 + _cimg_save_pandore_case(0,1,1,"unsigned char",5); 2.32328 + _cimg_save_pandore_case(0,1,1,"char",6); 2.32329 + _cimg_save_pandore_case(0,1,1,"short",6); 2.32330 + _cimg_save_pandore_case(0,1,1,"unsigned short",6); 2.32331 + _cimg_save_pandore_case(0,1,1,"unsigned int",6); 2.32332 + _cimg_save_pandore_case(0,1,1,"int",6); 2.32333 + _cimg_save_pandore_case(0,1,1,"unsigned long",7); 2.32334 + _cimg_save_pandore_case(0,1,1,"long",6); 2.32335 + _cimg_save_pandore_case(0,1,1,"float",7); 2.32336 + _cimg_save_pandore_case(0,1,1,"double",7); 2.32337 + 2.32338 + _cimg_save_pandore_case(0,0,1,"unsigned char",8); 2.32339 + _cimg_save_pandore_case(0,0,1,"char",9); 2.32340 + _cimg_save_pandore_case(0,0,1,"short",9); 2.32341 + _cimg_save_pandore_case(0,0,1,"unsigned short",9); 2.32342 + _cimg_save_pandore_case(0,0,1,"unsigned int",9); 2.32343 + _cimg_save_pandore_case(0,0,1,"int",9); 2.32344 + _cimg_save_pandore_case(0,0,1,"unsigned long",10); 2.32345 + _cimg_save_pandore_case(0,0,1,"long",9); 2.32346 + _cimg_save_pandore_case(0,0,1,"float",10); 2.32347 + _cimg_save_pandore_case(0,0,1,"double",10); 2.32348 + 2.32349 + _cimg_save_pandore_case(0,1,3,"unsigned char",16); 2.32350 + _cimg_save_pandore_case(0,1,3,"char",17); 2.32351 + _cimg_save_pandore_case(0,1,3,"short",17); 2.32352 + _cimg_save_pandore_case(0,1,3,"unsigned short",17); 2.32353 + _cimg_save_pandore_case(0,1,3,"unsigned int",17); 2.32354 + _cimg_save_pandore_case(0,1,3,"int",17); 2.32355 + _cimg_save_pandore_case(0,1,3,"unsigned long",18); 2.32356 + _cimg_save_pandore_case(0,1,3,"long",17); 2.32357 + _cimg_save_pandore_case(0,1,3,"float",18); 2.32358 + _cimg_save_pandore_case(0,1,3,"double",18); 2.32359 + 2.32360 + _cimg_save_pandore_case(0,0,3,"unsigned char",19); 2.32361 + _cimg_save_pandore_case(0,0,3,"char",20); 2.32362 + _cimg_save_pandore_case(0,0,3,"short",20); 2.32363 + _cimg_save_pandore_case(0,0,3,"unsigned short",20); 2.32364 + _cimg_save_pandore_case(0,0,3,"unsigned int",20); 2.32365 + _cimg_save_pandore_case(0,0,3,"int",20); 2.32366 + _cimg_save_pandore_case(0,0,3,"unsigned long",21); 2.32367 + _cimg_save_pandore_case(0,0,3,"long",20); 2.32368 + _cimg_save_pandore_case(0,0,3,"float",21); 2.32369 + _cimg_save_pandore_case(0,0,3,"double",21); 2.32370 + 2.32371 + _cimg_save_pandore_case(1,1,0,"unsigned char",22); 2.32372 + _cimg_save_pandore_case(1,1,0,"char",23); 2.32373 + _cimg_save_pandore_case(1,1,0,"short",23); 2.32374 + _cimg_save_pandore_case(1,1,0,"unsigned short",23); 2.32375 + _cimg_save_pandore_case(1,1,0,"unsigned int",23); 2.32376 + _cimg_save_pandore_case(1,1,0,"int",23); 2.32377 + _cimg_save_pandore_case(1,1,0,"unsigned long",25); 2.32378 + _cimg_save_pandore_case(1,1,0,"long",23); 2.32379 + _cimg_save_pandore_case(1,1,0,"float",25); 2.32380 + _cimg_save_pandore_case(1,1,0,"double",25); 2.32381 + 2.32382 + _cimg_save_pandore_case(0,1,0,"unsigned char",26); 2.32383 + _cimg_save_pandore_case(0,1,0,"char",27); 2.32384 + _cimg_save_pandore_case(0,1,0,"short",27); 2.32385 + _cimg_save_pandore_case(0,1,0,"unsigned short",27); 2.32386 + _cimg_save_pandore_case(0,1,0,"unsigned int",27); 2.32387 + _cimg_save_pandore_case(0,1,0,"int",27); 2.32388 + _cimg_save_pandore_case(0,1,0,"unsigned long",29); 2.32389 + _cimg_save_pandore_case(0,1,0,"long",27); 2.32390 + _cimg_save_pandore_case(0,1,0,"float",29); 2.32391 + _cimg_save_pandore_case(0,1,0,"double",29); 2.32392 + 2.32393 + _cimg_save_pandore_case(0,0,0,"unsigned char",30); 2.32394 + _cimg_save_pandore_case(0,0,0,"char",31); 2.32395 + _cimg_save_pandore_case(0,0,0,"short",31); 2.32396 + _cimg_save_pandore_case(0,0,0,"unsigned short",31); 2.32397 + _cimg_save_pandore_case(0,0,0,"unsigned int",31); 2.32398 + _cimg_save_pandore_case(0,0,0,"int",31); 2.32399 + _cimg_save_pandore_case(0,0,0,"unsigned long",33); 2.32400 + _cimg_save_pandore_case(0,0,0,"long",31); 2.32401 + _cimg_save_pandore_case(0,0,0,"float",33); 2.32402 + _cimg_save_pandore_case(0,0,0,"double",33); 2.32403 + 2.32404 + if (!file) cimg::fclose(nfile); 2.32405 + return *this; 2.32406 + } 2.32407 + 2.32408 + //! Save the image as a PANDORE-5 file. 2.32409 + const CImg<T>& save_pandore(const char *const filename, const unsigned int colorspace=0) const { 2.32410 + return _save_pandore(0,filename,colorspace); 2.32411 + } 2.32412 + 2.32413 + //! Save the image as a PANDORE-5 file. 2.32414 + const CImg<T>& save_pandore(cimg_std::FILE *const file, const unsigned int colorspace=0) const { 2.32415 + return _save_pandore(file,0,colorspace); 2.32416 + } 2.32417 + 2.32418 + // Save the image as a RAW file (internal). 2.32419 + const CImg<T>& _save_raw(cimg_std::FILE *const file, const char *const filename, const bool multiplexed) const { 2.32420 + if (is_empty()) 2.32421 + throw CImgInstanceException("CImg<%s>::save_raw() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32422 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.32423 + if (!file && !filename) 2.32424 + throw CImgArgumentException("CImg<%s>::save_raw() : Instance image (%u,%u,%u,%u,%p), specified file is (null).", 2.32425 + pixel_type(),width,height,depth,dim,data); 2.32426 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.32427 + if (!multiplexed) cimg::fwrite(data,size(),nfile); 2.32428 + else { 2.32429 + CImg<T> buf(dim); 2.32430 + cimg_forXYZ(*this,x,y,z) { 2.32431 + cimg_forV(*this,k) buf[k] = (*this)(x,y,z,k); 2.32432 + cimg::fwrite(buf.data,dim,nfile); 2.32433 + } 2.32434 + } 2.32435 + if (!file) cimg::fclose(nfile); 2.32436 + return *this; 2.32437 + } 2.32438 + 2.32439 + //! Save the image as a RAW file. 2.32440 + const CImg<T>& save_raw(const char *const filename, const bool multiplexed=false) const { 2.32441 + return _save_raw(0,filename,multiplexed); 2.32442 + } 2.32443 + 2.32444 + //! Save the image as a RAW file. 2.32445 + const CImg<T>& save_raw(cimg_std::FILE *const file, const bool multiplexed=false) const { 2.32446 + return _save_raw(file,0,multiplexed); 2.32447 + } 2.32448 + 2.32449 + //! Save the image as a video sequence file, using FFMPEG library. 2.32450 + const CImg<T>& save_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.32451 + const unsigned int fps=25) const { 2.32452 + if (is_empty()) 2.32453 + throw CImgInstanceException("CImg<%s>::save_ffmpeg() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32454 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32455 + if (!filename) 2.32456 + throw CImgArgumentException("CImg<%s>::save_ffmpeg() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32457 + pixel_type(),width,height,depth,dim,data); 2.32458 + if (!fps) 2.32459 + throw CImgArgumentException("CImg<%s>::save_ffmpeg() : File '%s', specified framerate is 0.", 2.32460 + pixel_type(),filename); 2.32461 +#ifndef cimg_use_ffmpeg 2.32462 + return save_ffmpeg_external(filename,first_frame,last_frame); 2.32463 +#else 2.32464 + get_split('z').save_ffmpeg(filename,first_frame,last_frame,fps); 2.32465 +#endif 2.32466 + return *this; 2.32467 + } 2.32468 + 2.32469 + //! Save the image as a YUV video sequence file. 2.32470 + const CImg<T>& save_yuv(const char *const filename, const bool rgb2yuv=true) const { 2.32471 + get_split('z').save_yuv(filename,rgb2yuv); 2.32472 + return *this; 2.32473 + } 2.32474 + 2.32475 + //! Save the image as a YUV video sequence file. 2.32476 + const CImg<T>& save_yuv(cimg_std::FILE *const file, const bool rgb2yuv=true) const { 2.32477 + get_split('z').save_yuv(file,rgb2yuv); 2.32478 + return *this; 2.32479 + } 2.32480 + 2.32481 + // Save OFF files (internal). 2.32482 + template<typename tf, typename tc> 2.32483 + const CImg<T>& _save_off(cimg_std::FILE *const file, const char *const filename, 2.32484 + const CImgList<tf>& primitives, const CImgList<tc>& colors, const bool invert_faces) const { 2.32485 + if (is_empty()) 2.32486 + throw CImgInstanceException("CImg<%s>::save_off() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32487 + pixel_type(),filename?filename:"(FILE*)",width,height,depth,dim,data); 2.32488 + if (!file && !filename) 2.32489 + throw CImgArgumentException("CImg<%s>::save_off() : Specified filename is (null).", 2.32490 + pixel_type()); 2.32491 + if (height<3) return get_resize(-100,3,1,1,0)._save_off(file,filename,primitives,colors,invert_faces); 2.32492 + CImgList<tc> _colors; 2.32493 + if (!colors) _colors.insert(primitives.size,CImg<tc>::vector(200,200,200)); 2.32494 + const CImgList<tc>& ncolors = colors?colors:_colors; 2.32495 + 2.32496 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"w"); 2.32497 + cimg_std::fprintf(nfile,"OFF\n%u %u %u\n",width,primitives.size,3*primitives.size); 2.32498 + cimg_forX(*this,i) cimg_std::fprintf(nfile,"%f %f %f\n",(float)((*this)(i,0)),(float)((*this)(i,1)),(float)((*this)(i,2))); 2.32499 + cimglist_for(primitives,l) { 2.32500 + const unsigned int prim = primitives[l].size(); 2.32501 + const bool textured = (prim>4); 2.32502 + const CImg<tc>& color = ncolors[l]; 2.32503 + const unsigned int s = textured?color.dimv():color.size(); 2.32504 + const float 2.32505 + r = textured?(s>0?(float)(color.get_shared_channel(0).mean()/255.0f):1.0f):(s>0?(float)(color(0)/255.0f):1.0f), 2.32506 + g = textured?(s>1?(float)(color.get_shared_channel(1).mean()/255.0f):r) :(s>1?(float)(color(1)/255.0f):r), 2.32507 + b = textured?(s>2?(float)(color.get_shared_channel(2).mean()/255.0f):r) :(s>2?(float)(color(2)/255.0f):r); 2.32508 + 2.32509 + switch (prim) { 2.32510 + case 1 : 2.32511 + cimg_std::fprintf(nfile,"1 %u %f %f %f\n",(unsigned int)primitives(l,0),r,g,b); 2.32512 + break; 2.32513 + case 2 : case 6 : 2.32514 + cimg_std::fprintf(nfile,"2 %u %u %f %f %f\n",(unsigned int)primitives(l,0),(unsigned int)primitives(l,1),r,g,b); 2.32515 + break; 2.32516 + case 3 : case 9 : 2.32517 + if (invert_faces) 2.32518 + cimg_std::fprintf(nfile,"3 %u %u %u %f %f %f\n",(unsigned int)primitives(l,0),(unsigned int)primitives(l,1),(unsigned int)primitives(l,2),r,g,b); 2.32519 + else 2.32520 + cimg_std::fprintf(nfile,"3 %u %u %u %f %f %f\n",(unsigned int)primitives(l,0),(unsigned int)primitives(l,2),(unsigned int)primitives(l,1),r,g,b); 2.32521 + break; 2.32522 + case 4 : case 12 : 2.32523 + if (invert_faces) 2.32524 + cimg_std::fprintf(nfile,"4 %u %u %u %u %f %f %f\n", 2.32525 + (unsigned int)primitives(l,0),(unsigned int)primitives(l,1),(unsigned int)primitives(l,2),(unsigned int)primitives(l,3),r,g,b); 2.32526 + else 2.32527 + cimg_std::fprintf(nfile,"4 %u %u %u %u %f %f %f\n", 2.32528 + (unsigned int)primitives(l,0),(unsigned int)primitives(l,3),(unsigned int)primitives(l,2),(unsigned int)primitives(l,1),r,g,b); 2.32529 + break; 2.32530 + } 2.32531 + } 2.32532 + if (!file) cimg::fclose(nfile); 2.32533 + return *this; 2.32534 + } 2.32535 + 2.32536 + //! Save OFF files. 2.32537 + template<typename tf, typename tc> 2.32538 + const CImg<T>& save_off(const char *const filename, 2.32539 + const CImgList<tf>& primitives, const CImgList<tc>& colors, const bool invert_faces=false) const { 2.32540 + return _save_off(0,filename,primitives,colors,invert_faces); 2.32541 + } 2.32542 + 2.32543 + //! Save OFF files. 2.32544 + template<typename tf, typename tc> 2.32545 + const CImg<T>& save_off(cimg_std::FILE *const file, 2.32546 + const CImgList<tf>& primitives, const CImgList<tc>& colors, const bool invert_faces=false) const { 2.32547 + return _save_off(file,0,primitives,colors,invert_faces); 2.32548 + } 2.32549 + 2.32550 + //! Save the image as a video sequence file, using the external tool 'ffmpeg'. 2.32551 + const CImg<T>& save_ffmpeg_external(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.32552 + const char *const codec="mpeg2video") const { 2.32553 + if (is_empty()) 2.32554 + throw CImgInstanceException("CImg<%s>::save_ffmpeg_external() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32555 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32556 + if (!filename) 2.32557 + throw CImgArgumentException("CImg<%s>::save_ffmpeg_external() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32558 + pixel_type(),width,height,depth,dim,data); 2.32559 + get_split('z').save_ffmpeg_external(filename,first_frame,last_frame,codec); 2.32560 + return *this; 2.32561 + } 2.32562 + 2.32563 + //! Save the image using GraphicsMagick's gm. 2.32564 + /** Function that saves the image for other file formats that are not natively handled by CImg, 2.32565 + using the tool 'gm' from the GraphicsMagick package.\n 2.32566 + This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install 2.32567 + the GraphicsMagick package in order to get 2.32568 + this function working properly (see http://www.graphicsmagick.org ). 2.32569 + **/ 2.32570 + const CImg<T>& save_graphicsmagick_external(const char *const filename, const unsigned int quality=100) const { 2.32571 + if (is_empty()) 2.32572 + throw CImgInstanceException("CImg<%s>::save_graphicsmagick_external() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32573 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32574 + if (!filename) 2.32575 + throw CImgArgumentException("CImg<%s>::save_graphicsmagick_external() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32576 + pixel_type(),width,height,depth,dim,data); 2.32577 + char command[1024],filetmp[512]; 2.32578 + cimg_std::FILE *file; 2.32579 + do { 2.32580 + if (dim==1) cimg_std::sprintf(filetmp,"%s%s%s.pgm",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.32581 + else cimg_std::sprintf(filetmp,"%s%s%s.ppm",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.32582 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.32583 + } while (file); 2.32584 + save_pnm(filetmp); 2.32585 + cimg_std::sprintf(command,"%s -quality %u%% %s \"%s\"",cimg::graphicsmagick_path(),quality,filetmp,filename); 2.32586 + cimg::system(command); 2.32587 + file = cimg_std::fopen(filename,"rb"); 2.32588 + if (!file) 2.32589 + throw CImgIOException("CImg<%s>::save_graphicsmagick_external() : Failed to save image '%s'.\n\n" 2.32590 + "Path of 'gm' : \"%s\"\n" 2.32591 + "Path of temporary filename : \"%s\"\n", 2.32592 + pixel_type(),filename,cimg::graphicsmagick_path(),filetmp); 2.32593 + if (file) cimg::fclose(file); 2.32594 + cimg_std::remove(filetmp); 2.32595 + return *this; 2.32596 + } 2.32597 + 2.32598 + //! Save an image as a gzipped file, using external tool 'gzip'. 2.32599 + const CImg<T>& save_gzip_external(const char *const filename) const { 2.32600 + if (!filename) 2.32601 + throw CImgIOException("CImg<%s>::save_gzip_external() : Cannot save (null) filename.", 2.32602 + pixel_type()); 2.32603 + char command[1024], filetmp[512], body[512]; 2.32604 + const char 2.32605 + *ext = cimg::split_filename(filename,body), 2.32606 + *ext2 = cimg::split_filename(body,0); 2.32607 + cimg_std::FILE *file; 2.32608 + do { 2.32609 + if (!cimg::strcasecmp(ext,"gz")) { 2.32610 + if (*ext2) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.32611 + cimg::filenamerand(),ext2); 2.32612 + else cimg_std::sprintf(filetmp,"%s%s%s.cimg",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.32613 + cimg::filenamerand()); 2.32614 + } else { 2.32615 + if (*ext) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.32616 + cimg::filenamerand(),ext); 2.32617 + else cimg_std::sprintf(filetmp,"%s%s%s.cimg",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.32618 + cimg::filenamerand()); 2.32619 + } 2.32620 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.32621 + } while (file); 2.32622 + save(filetmp); 2.32623 + cimg_std::sprintf(command,"%s -c %s > \"%s\"",cimg::gzip_path(),filetmp,filename); 2.32624 + cimg::system(command); 2.32625 + file = cimg_std::fopen(filename,"rb"); 2.32626 + if (!file) 2.32627 + throw CImgIOException("CImgList<%s>::save_gzip_external() : File '%s' cannot be saved.", 2.32628 + pixel_type(),filename); 2.32629 + else cimg::fclose(file); 2.32630 + cimg_std::remove(filetmp); 2.32631 + return *this; 2.32632 + } 2.32633 + 2.32634 + //! Save the image using ImageMagick's convert. 2.32635 + /** Function that saves the image for other file formats that are not natively handled by CImg, 2.32636 + using the tool 'convert' from the ImageMagick package.\n 2.32637 + This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install 2.32638 + the ImageMagick package in order to get 2.32639 + this function working properly (see http://www.imagemagick.org ). 2.32640 + **/ 2.32641 + const CImg<T>& save_imagemagick_external(const char *const filename, const unsigned int quality=100) const { 2.32642 + if (is_empty()) 2.32643 + throw CImgInstanceException("CImg<%s>::save_imagemagick_external() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32644 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32645 + if (!filename) 2.32646 + throw CImgArgumentException("CImg<%s>::save_imagemagick_external() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32647 + pixel_type(),width,height,depth,dim,data); 2.32648 + char command[1024], filetmp[512]; 2.32649 + cimg_std::FILE *file; 2.32650 + do { 2.32651 + cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand(),dim==1?"pgm":"ppm"); 2.32652 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.32653 + } while (file); 2.32654 + save_pnm(filetmp); 2.32655 + cimg_std::sprintf(command,"%s -quality %u%% %s \"%s\"",cimg::imagemagick_path(),quality,filetmp,filename); 2.32656 + cimg::system(command); 2.32657 + file = cimg_std::fopen(filename,"rb"); 2.32658 + if (!file) 2.32659 + throw CImgIOException("CImg<%s>::save_imagemagick_external() : Failed to save image '%s'.\n\n" 2.32660 + "Path of 'convert' : \"%s\"\n" 2.32661 + "Path of temporary filename : \"%s\"\n", 2.32662 + pixel_type(),filename,cimg::imagemagick_path(),filetmp); 2.32663 + if (file) cimg::fclose(file); 2.32664 + cimg_std::remove(filetmp); 2.32665 + return *this; 2.32666 + } 2.32667 + 2.32668 + //! Save an image as a Dicom file (need '(X)Medcon' : http://xmedcon.sourceforge.net ) 2.32669 + const CImg<T>& save_medcon_external(const char *const filename) const { 2.32670 + if (is_empty()) 2.32671 + throw CImgInstanceException("CImg<%s>::save_medcon_external() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32672 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32673 + if (!filename) 2.32674 + throw CImgArgumentException("CImg<%s>::save_medcon_external() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32675 + pixel_type(),width,height,depth,dim,data); 2.32676 + 2.32677 + char command[1024], filetmp[512], body[512]; 2.32678 + cimg_std::FILE *file; 2.32679 + do { 2.32680 + cimg_std::sprintf(filetmp,"%s.hdr",cimg::filenamerand()); 2.32681 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.32682 + } while (file); 2.32683 + save_analyze(filetmp); 2.32684 + cimg_std::sprintf(command,"%s -w -c dicom -o %s -f %s",cimg::medcon_path(),filename,filetmp); 2.32685 + cimg::system(command); 2.32686 + cimg_std::remove(filetmp); 2.32687 + cimg::split_filename(filetmp,body); 2.32688 + cimg_std::sprintf(filetmp,"%s.img",body); 2.32689 + cimg_std::remove(filetmp); 2.32690 + cimg_std::sprintf(command,"m000-%s",filename); 2.32691 + file = cimg_std::fopen(command,"rb"); 2.32692 + if (!file) { 2.32693 + cimg::fclose(cimg::fopen(filename,"r")); 2.32694 + throw CImgIOException("CImg<%s>::save_medcon_external() : Failed to save image '%s'.\n\n" 2.32695 + "Path of 'medcon' : \"%s\"\n" 2.32696 + "Path of temporary filename : \"%s\"", 2.32697 + pixel_type(),filename,cimg::medcon_path(),filetmp); 2.32698 + } else cimg::fclose(file); 2.32699 + cimg_std::rename(command,filename); 2.32700 + return *this; 2.32701 + } 2.32702 + 2.32703 + // Try to save the image if other extension is provided. 2.32704 + const CImg<T>& save_other(const char *const filename, const unsigned int quality=100) const { 2.32705 + if (is_empty()) 2.32706 + throw CImgInstanceException("CImg<%s>::save_other() : File '%s', instance image (%u,%u,%u,%u,%p) is empty.", 2.32707 + pixel_type(),filename?filename:"(null)",width,height,depth,dim,data); 2.32708 + if (!filename) 2.32709 + throw CImgIOException("CImg<%s>::save_other() : Instance image (%u,%u,%u,%u,%p), specified filename is (null).", 2.32710 + pixel_type()); 2.32711 + const unsigned int odebug = cimg::exception_mode(); 2.32712 + bool is_saved = true; 2.32713 + cimg::exception_mode() = 0; 2.32714 + try { save_magick(filename); } 2.32715 + catch (CImgException&) { 2.32716 + try { save_imagemagick_external(filename,quality); } 2.32717 + catch (CImgException&) { 2.32718 + try { save_graphicsmagick_external(filename,quality); } 2.32719 + catch (CImgException&) { 2.32720 + is_saved = false; 2.32721 + } 2.32722 + } 2.32723 + } 2.32724 + cimg::exception_mode() = odebug; 2.32725 + if (!is_saved) 2.32726 + throw CImgIOException("CImg<%s>::save_other() : File '%s' cannot be saved.\n" 2.32727 + "Check you have either the ImageMagick or GraphicsMagick package installed.", 2.32728 + pixel_type(),filename); 2.32729 + return *this; 2.32730 + } 2.32731 + 2.32732 + // Get a 40x38 color logo of a 'danger' item (internal). 2.32733 + static CImg<T> logo40x38() { 2.32734 + static bool first_time = true; 2.32735 + static CImg<T> res(40,38,1,3); 2.32736 + if (first_time) { 2.32737 + const unsigned char *ptrs = cimg::logo40x38; 2.32738 + T *ptr1 = res.ptr(0,0,0,0), *ptr2 = res.ptr(0,0,0,1), *ptr3 = res.ptr(0,0,0,2); 2.32739 + for (unsigned int off = 0; off<res.width*res.height;) { 2.32740 + const unsigned char n = *(ptrs++), r = *(ptrs++), g = *(ptrs++), b = *(ptrs++); 2.32741 + for (unsigned int l=0; l<n; ++off, ++l) { *(ptr1++) = (T)r; *(ptr2++) = (T)g; *(ptr3++) = (T)b; } 2.32742 + } 2.32743 + first_time = false; 2.32744 + } 2.32745 + return res; 2.32746 + } 2.32747 + 2.32748 + }; 2.32749 + 2.32750 + /* 2.32751 + #----------------------------------------- 2.32752 + # 2.32753 + # 2.32754 + # 2.32755 + # Definition of the CImgList<> structure 2.32756 + # 2.32757 + # 2.32758 + # 2.32759 + #------------------------------------------ 2.32760 + */ 2.32761 + 2.32762 + //! Class representing list of images CImg<T>. 2.32763 + template<typename T> 2.32764 + struct CImgList { 2.32765 + 2.32766 + //! Size of the list (number of elements inside). 2.32767 + unsigned int size; 2.32768 + 2.32769 + //! Allocation size of the list. 2.32770 + unsigned int allocsize; 2.32771 + 2.32772 + //! Pointer to the first list element. 2.32773 + CImg<T> *data; 2.32774 + 2.32775 + //! Define a CImgList<T>::iterator. 2.32776 + typedef CImg<T>* iterator; 2.32777 + 2.32778 + //! Define a CImgList<T>::const_iterator. 2.32779 + typedef const CImg<T>* const_iterator; 2.32780 + 2.32781 + //! Get value type. 2.32782 + typedef T value_type; 2.32783 + 2.32784 + // Define common T-dependant types. 2.32785 + typedef typename cimg::superset<T,bool>::type Tbool; 2.32786 + typedef typename cimg::superset<T,unsigned char>::type Tuchar; 2.32787 + typedef typename cimg::superset<T,char>::type Tchar; 2.32788 + typedef typename cimg::superset<T,unsigned short>::type Tushort; 2.32789 + typedef typename cimg::superset<T,short>::type Tshort; 2.32790 + typedef typename cimg::superset<T,unsigned int>::type Tuint; 2.32791 + typedef typename cimg::superset<T,int>::type Tint; 2.32792 + typedef typename cimg::superset<T,unsigned long>::type Tulong; 2.32793 + typedef typename cimg::superset<T,long>::type Tlong; 2.32794 + typedef typename cimg::superset<T,float>::type Tfloat; 2.32795 + typedef typename cimg::superset<T,double>::type Tdouble; 2.32796 + typedef typename cimg::last<T,bool>::type boolT; 2.32797 + typedef typename cimg::last<T,unsigned char>::type ucharT; 2.32798 + typedef typename cimg::last<T,char>::type charT; 2.32799 + typedef typename cimg::last<T,unsigned short>::type ushortT; 2.32800 + typedef typename cimg::last<T,short>::type shortT; 2.32801 + typedef typename cimg::last<T,unsigned int>::type uintT; 2.32802 + typedef typename cimg::last<T,int>::type intT; 2.32803 + typedef typename cimg::last<T,unsigned long>::type ulongT; 2.32804 + typedef typename cimg::last<T,long>::type longT; 2.32805 + typedef typename cimg::last<T,float>::type floatT; 2.32806 + typedef typename cimg::last<T,double>::type doubleT; 2.32807 + 2.32808 + //@} 2.32809 + //--------------------------- 2.32810 + // 2.32811 + //! \name Plugins 2.32812 + //@{ 2.32813 + //--------------------------- 2.32814 +#ifdef cimglist_plugin 2.32815 +#include cimglist_plugin 2.32816 +#endif 2.32817 +#ifdef cimglist_plugin1 2.32818 +#include cimglist_plugin1 2.32819 +#endif 2.32820 +#ifdef cimglist_plugin2 2.32821 +#include cimglist_plugin2 2.32822 +#endif 2.32823 +#ifdef cimglist_plugin3 2.32824 +#include cimglist_plugin3 2.32825 +#endif 2.32826 +#ifdef cimglist_plugin4 2.32827 +#include cimglist_plugin4 2.32828 +#endif 2.32829 +#ifdef cimglist_plugin5 2.32830 +#include cimglist_plugin5 2.32831 +#endif 2.32832 +#ifdef cimglist_plugin6 2.32833 +#include cimglist_plugin6 2.32834 +#endif 2.32835 +#ifdef cimglist_plugin7 2.32836 +#include cimglist_plugin7 2.32837 +#endif 2.32838 +#ifdef cimglist_plugin8 2.32839 +#include cimglist_plugin8 2.32840 +#endif 2.32841 + //@} 2.32842 + 2.32843 + //------------------------------------------ 2.32844 + // 2.32845 + //! \name Constructors - Destructor - Copy 2.32846 + //@{ 2.32847 + //------------------------------------------ 2.32848 + 2.32849 + //! Destructor. 2.32850 + ~CImgList() { 2.32851 + if (data) delete[] data; 2.32852 + } 2.32853 + 2.32854 + //! Default constructor. 2.32855 + CImgList(): 2.32856 + size(0),allocsize(0),data(0) {} 2.32857 + 2.32858 + //! Construct an image list containing n empty images. 2.32859 + explicit CImgList(const unsigned int n): 2.32860 + size(n) { 2.32861 + data = new CImg<T>[allocsize = cimg::max(16UL,cimg::nearest_pow2(n))]; 2.32862 + } 2.32863 + 2.32864 + //! Default copy constructor. 2.32865 + template<typename t> 2.32866 + CImgList(const CImgList<t>& list): 2.32867 + size(0),allocsize(0),data(0) { 2.32868 + assign(list.size); 2.32869 + cimglist_for(*this,l) data[l].assign(list[l],false); 2.32870 + } 2.32871 + 2.32872 + CImgList(const CImgList<T>& list): 2.32873 + size(0),allocsize(0),data(0) { 2.32874 + assign(list.size); 2.32875 + cimglist_for(*this,l) data[l].assign(list[l],list[l].is_shared); 2.32876 + } 2.32877 + 2.32878 + //! Advanced copy constructor. 2.32879 + template<typename t> 2.32880 + CImgList(const CImgList<t>& list, const bool shared): 2.32881 + size(0),allocsize(0),data(0) { 2.32882 + assign(list.size); 2.32883 + if (shared) 2.32884 + throw CImgArgumentException("CImgList<%s>::CImgList() : Cannot construct a list instance with shared images from " 2.32885 + "a CImgList<%s> (different pixel types).", 2.32886 + pixel_type(),CImgList<t>::pixel_type()); 2.32887 + cimglist_for(*this,l) data[l].assign(list[l],false); 2.32888 + } 2.32889 + 2.32890 + CImgList(const CImgList<T>& list, const bool shared): 2.32891 + size(0),allocsize(0),data(0) { 2.32892 + assign(list.size); 2.32893 + cimglist_for(*this,l) data[l].assign(list[l],shared); 2.32894 + } 2.32895 + 2.32896 + //! Construct an image list containing n images with specified size. 2.32897 + CImgList(const unsigned int n, const unsigned int width, const unsigned int height=1, 2.32898 + const unsigned int depth=1, const unsigned int dim=1): 2.32899 + size(0),allocsize(0),data(0) { 2.32900 + assign(n); 2.32901 + cimglist_for(*this,l) data[l].assign(width,height,depth,dim); 2.32902 + } 2.32903 + 2.32904 + //! Construct an image list containing n images with specified size, filled with specified value. 2.32905 + CImgList(const unsigned int n, const unsigned int width, const unsigned int height, 2.32906 + const unsigned int depth, const unsigned int dim, const T val): 2.32907 + size(0),allocsize(0),data(0) { 2.32908 + assign(n); 2.32909 + cimglist_for(*this,l) data[l].assign(width,height,depth,dim,val); 2.32910 + } 2.32911 + 2.32912 + //! Construct an image list containing n images with specified size and specified pixel values (int version). 2.32913 + CImgList(const unsigned int n, const unsigned int width, const unsigned int height, 2.32914 + const unsigned int depth, const unsigned int dim, const int val0, const int val1, ...): 2.32915 + size(0),allocsize(0),data(0) { 2.32916 +#define _CImgList_stdarg(t) { \ 2.32917 + assign(n,width,height,depth,dim); \ 2.32918 + const unsigned int siz = width*height*depth*dim, nsiz = siz*n; \ 2.32919 + T *ptrd = data->data; \ 2.32920 + va_list ap; \ 2.32921 + va_start(ap,val1); \ 2.32922 + for (unsigned int l=0, s=0, i=0; i<nsiz; ++i) { \ 2.32923 + *(ptrd++) = (T)(i==0?val0:(i==1?val1:va_arg(ap,t))); \ 2.32924 + if ((++s)==siz) { ptrd = data[++l].data; s=0; } \ 2.32925 + } \ 2.32926 + va_end(ap); \ 2.32927 + } 2.32928 + _CImgList_stdarg(int); 2.32929 + } 2.32930 + 2.32931 + //! Construct an image list containing n images with specified size and specified pixel values (double version). 2.32932 + CImgList(const unsigned int n, const unsigned int width, const unsigned int height, 2.32933 + const unsigned int depth, const unsigned int dim, const double val0, const double val1, ...): 2.32934 + size(0),allocsize(0),data(0) { 2.32935 + _CImgList_stdarg(double); 2.32936 + } 2.32937 + 2.32938 + //! Construct a list containing n copies of the image img. 2.32939 + template<typename t> 2.32940 + CImgList(const unsigned int n, const CImg<t>& img): 2.32941 + size(0),allocsize(0),data(0) { 2.32942 + assign(n); 2.32943 + cimglist_for(*this,l) data[l].assign(img,img.is_shared); 2.32944 + } 2.32945 + 2.32946 + //! Construct a list containing n copies of the image img, forcing the shared state. 2.32947 + template<typename t> 2.32948 + CImgList(const unsigned int n, const CImg<t>& img, const bool shared): 2.32949 + size(0),allocsize(0),data(0) { 2.32950 + assign(n); 2.32951 + cimglist_for(*this,l) data[l].assign(img,shared); 2.32952 + } 2.32953 + 2.32954 + //! Construct an image list from one image. 2.32955 + template<typename t> 2.32956 + explicit CImgList(const CImg<t>& img): 2.32957 + size(0),allocsize(0),data(0) { 2.32958 + assign(1); 2.32959 + data[0].assign(img,img.is_shared); 2.32960 + } 2.32961 + 2.32962 + //! Construct an image list from one image, forcing the shared state. 2.32963 + template<typename t> 2.32964 + explicit CImgList(const CImg<t>& img, const bool shared): 2.32965 + size(0),allocsize(0),data(0) { 2.32966 + assign(1); 2.32967 + data[0].assign(img,shared); 2.32968 + } 2.32969 + 2.32970 + //! Construct an image list from two images. 2.32971 + template<typename t1, typename t2> 2.32972 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2): 2.32973 + size(0),allocsize(0),data(0) { 2.32974 + assign(2); 2.32975 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); 2.32976 + } 2.32977 + 2.32978 + //! Construct an image list from two images, forcing the shared state. 2.32979 + template<typename t1, typename t2> 2.32980 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const bool shared): 2.32981 + size(0),allocsize(0),data(0) { 2.32982 + assign(2); 2.32983 + data[0].assign(img1,shared); data[1].assign(img2,shared); 2.32984 + } 2.32985 + 2.32986 + //! Construct an image list from three images. 2.32987 + template<typename t1, typename t2, typename t3> 2.32988 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3): 2.32989 + size(0),allocsize(0),data(0) { 2.32990 + assign(3); 2.32991 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); 2.32992 + } 2.32993 + 2.32994 + //! Construct an image list from three images, forcing the shared state. 2.32995 + template<typename t1, typename t2, typename t3> 2.32996 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const bool shared): 2.32997 + size(0),allocsize(0),data(0) { 2.32998 + assign(3); 2.32999 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); 2.33000 + } 2.33001 + 2.33002 + //! Construct an image list from four images. 2.33003 + template<typename t1, typename t2, typename t3, typename t4> 2.33004 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4): 2.33005 + size(0),allocsize(0),data(0) { 2.33006 + assign(4); 2.33007 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); data[3].assign(img4,img4.is_shared); 2.33008 + } 2.33009 + 2.33010 + //! Construct an image list from four images, forcing the shared state. 2.33011 + template<typename t1, typename t2, typename t3, typename t4> 2.33012 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, const bool shared): 2.33013 + size(0),allocsize(0),data(0) { 2.33014 + assign(4); 2.33015 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33016 + } 2.33017 + 2.33018 + //! Construct an image list from five images. 2.33019 + template<typename t1, typename t2, typename t3, typename t4, typename t5> 2.33020 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33021 + const CImg<t5>& img5): 2.33022 + size(0),allocsize(0),data(0) { 2.33023 + assign(5); 2.33024 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); data[3].assign(img4,img4.is_shared); 2.33025 + data[4].assign(img5,img5.is_shared); 2.33026 + } 2.33027 + 2.33028 + //! Construct an image list from five images, forcing the shared state. 2.33029 + template<typename t1, typename t2, typename t3, typename t4, typename t5> 2.33030 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33031 + const CImg<t5>& img5, const bool shared): 2.33032 + size(0),allocsize(0),data(0) { 2.33033 + assign(5); 2.33034 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33035 + data[4].assign(img5,shared); 2.33036 + } 2.33037 + 2.33038 + //! Construct an image list from six images. 2.33039 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6> 2.33040 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33041 + const CImg<t5>& img5, const CImg<t6>& img6): 2.33042 + size(0),allocsize(0),data(0) { 2.33043 + assign(6); 2.33044 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); data[3].assign(img4,img4.is_shared); 2.33045 + data[4].assign(img5,img5.is_shared); data[5].assign(img6,img6.is_shared); 2.33046 + } 2.33047 + 2.33048 + //! Construct an image list from six images, forcing the shared state. 2.33049 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6> 2.33050 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33051 + const CImg<t5>& img5, const CImg<t6>& img6, const bool shared): 2.33052 + size(0),allocsize(0),data(0) { 2.33053 + assign(6); 2.33054 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33055 + data[4].assign(img5,shared); data[5].assign(img6,shared); 2.33056 + } 2.33057 + 2.33058 + //! Construct an image list from seven images. 2.33059 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7> 2.33060 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33061 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7): 2.33062 + size(0),allocsize(0),data(0) { 2.33063 + assign(7); 2.33064 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); data[3].assign(img4,img4.is_shared); 2.33065 + data[4].assign(img5,img5.is_shared); data[5].assign(img6,img6.is_shared); data[6].assign(img7,img7.is_shared); 2.33066 + } 2.33067 + 2.33068 + //! Construct an image list from seven images, forcing the shared state. 2.33069 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7> 2.33070 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33071 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7, const bool shared): 2.33072 + size(0),allocsize(0),data(0) { 2.33073 + assign(7); 2.33074 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33075 + data[4].assign(img5,shared); data[5].assign(img6,shared); data[6].assign(img7,shared); 2.33076 + } 2.33077 + 2.33078 + //! Construct an image list from eight images. 2.33079 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7, typename t8> 2.33080 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33081 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7, const CImg<t8>& img8): 2.33082 + size(0),allocsize(0),data(0) { 2.33083 + assign(8); 2.33084 + data[0].assign(img1,img1.is_shared); data[1].assign(img2,img2.is_shared); data[2].assign(img3,img3.is_shared); data[3].assign(img4,img4.is_shared); 2.33085 + data[4].assign(img5,img5.is_shared); data[5].assign(img6,img6.is_shared); data[6].assign(img7,img7.is_shared); data[7].assign(img8,img8.is_shared); 2.33086 + } 2.33087 + 2.33088 + //! Construct an image list from eight images, forcing the shared state. 2.33089 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7, typename t8> 2.33090 + CImgList(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33091 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7, const CImg<t8>& img8, const bool shared): 2.33092 + size(0),allocsize(0),data(0) { 2.33093 + assign(8); 2.33094 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33095 + data[4].assign(img5,shared); data[5].assign(img6,shared); data[6].assign(img7,shared); data[7].assign(img8,shared); 2.33096 + } 2.33097 + 2.33098 + //! Construct an image list from a filename. 2.33099 + CImgList(const char *const filename): 2.33100 + size(0),allocsize(0),data(0) { 2.33101 + assign(filename); 2.33102 + } 2.33103 + 2.33104 + //! In-place version of the default constructor and default destructor. 2.33105 + CImgList<T>& assign() { 2.33106 + if (data) delete[] data; 2.33107 + size = allocsize = 0; 2.33108 + data = 0; 2.33109 + return *this; 2.33110 + } 2.33111 + 2.33112 + //! Equivalent to assign() (STL-compliant name). 2.33113 + CImgList<T>& clear() { 2.33114 + return assign(); 2.33115 + } 2.33116 + 2.33117 + //! In-place version of the corresponding constructor. 2.33118 + CImgList<T>& assign(const unsigned int n) { 2.33119 + if (n) { 2.33120 + if (allocsize<n || allocsize>(n<<2)) { 2.33121 + if (data) delete[] data; 2.33122 + data = new CImg<T>[allocsize=cimg::max(16UL,cimg::nearest_pow2(n))]; 2.33123 + } 2.33124 + size = n; 2.33125 + } else assign(); 2.33126 + return *this; 2.33127 + } 2.33128 + 2.33129 + //! In-place version of the corresponding constructor. 2.33130 + CImgList<T>& assign(const unsigned int n, const unsigned int width, const unsigned int height=1, 2.33131 + const unsigned int depth=1, const unsigned int dim=1) { 2.33132 + assign(n); 2.33133 + cimglist_for(*this,l) data[l].assign(width,height,depth,dim); 2.33134 + return *this; 2.33135 + } 2.33136 + 2.33137 + //! In-place version of the corresponding constructor. 2.33138 + CImgList<T>& assign(const unsigned int n, const unsigned int width, const unsigned int height, 2.33139 + const unsigned int depth, const unsigned int dim, const T val) { 2.33140 + assign(n); 2.33141 + cimglist_for(*this,l) data[l].assign(width,height,depth,dim,val); 2.33142 + return *this; 2.33143 + } 2.33144 + 2.33145 + //! In-place version of the corresponding constructor. 2.33146 + CImgList<T>& assign(const unsigned int n, const unsigned int width, const unsigned int height, 2.33147 + const unsigned int depth, const unsigned int dim, const int val0, const int val1, ...) { 2.33148 + _CImgList_stdarg(int); 2.33149 + return *this; 2.33150 + } 2.33151 + 2.33152 + //! In-place version of the corresponding constructor. 2.33153 + CImgList<T>& assign(const unsigned int n, const unsigned int width, const unsigned int height, 2.33154 + const unsigned int depth, const unsigned int dim, const double val0, const double val1, ...) { 2.33155 + _CImgList_stdarg(double); 2.33156 + return *this; 2.33157 + } 2.33158 + 2.33159 + //! In-place version of the copy constructor. 2.33160 + template<typename t> 2.33161 + CImgList<T>& assign(const CImgList<t>& list) { 2.33162 + assign(list.size); 2.33163 + cimglist_for(*this,l) data[l].assign(list[l],list[l].is_shared); 2.33164 + return *this; 2.33165 + } 2.33166 + 2.33167 + //! In-place version of the copy constructor. 2.33168 + template<typename t> 2.33169 + CImgList<T>& assign(const CImgList<t>& list, const bool shared) { 2.33170 + assign(list.size); 2.33171 + cimglist_for(*this,l) data[l].assign(list[l],shared); 2.33172 + return *this; 2.33173 + } 2.33174 + 2.33175 + //! In-place version of the corresponding constructor. 2.33176 + template<typename t> 2.33177 + CImgList<T>& assign(const unsigned int n, const CImg<t>& img, const bool shared=false) { 2.33178 + assign(n); 2.33179 + cimglist_for(*this,l) data[l].assign(img,shared); 2.33180 + return *this; 2.33181 + } 2.33182 + 2.33183 + //! In-place version of the corresponding constructor. 2.33184 + template<typename t> 2.33185 + CImgList<T>& assign(const CImg<t>& img, const bool shared=false) { 2.33186 + assign(1); 2.33187 + data[0].assign(img,shared); 2.33188 + return *this; 2.33189 + } 2.33190 + 2.33191 + //! In-place version of the corresponding constructor. 2.33192 + template<typename t1, typename t2> 2.33193 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const bool shared=false) { 2.33194 + assign(2); 2.33195 + data[0].assign(img1,shared); data[1].assign(img2,shared); 2.33196 + return *this; 2.33197 + } 2.33198 + 2.33199 + //! In-place version of the corresponding constructor. 2.33200 + template<typename t1, typename t2, typename t3> 2.33201 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const bool shared=false) { 2.33202 + assign(3); 2.33203 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); 2.33204 + return *this; 2.33205 + } 2.33206 + 2.33207 + //! In-place version of the corresponding constructor. 2.33208 + template<typename t1, typename t2, typename t3, typename t4> 2.33209 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33210 + const bool shared=false) { 2.33211 + assign(4); 2.33212 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33213 + return *this; 2.33214 + } 2.33215 + 2.33216 + //! In-place version of the corresponding constructor. 2.33217 + template<typename t1, typename t2, typename t3, typename t4, typename t5> 2.33218 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33219 + const CImg<t5>& img5, const bool shared=false) { 2.33220 + assign(5); 2.33221 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33222 + data[4].assign(img5,shared); 2.33223 + return *this; 2.33224 + } 2.33225 + 2.33226 + //! In-place version of the corresponding constructor. 2.33227 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6> 2.33228 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33229 + const CImg<t5>& img5, const CImg<t6>& img6, const bool shared=false) { 2.33230 + assign(6); 2.33231 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33232 + data[4].assign(img5,shared); data[5].assign(img6,shared); 2.33233 + return *this; 2.33234 + } 2.33235 + 2.33236 + //! In-place version of the corresponding constructor. 2.33237 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7> 2.33238 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33239 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7, const bool shared=false) { 2.33240 + assign(7); 2.33241 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33242 + data[4].assign(img5,shared); data[5].assign(img6,shared); data[6].assign(img7,shared); 2.33243 + return *this; 2.33244 + } 2.33245 + 2.33246 + //! In-place version of the corresponding constructor. 2.33247 + template<typename t1, typename t2, typename t3, typename t4, typename t5, typename t6, typename t7, typename t8> 2.33248 + CImgList<T>& assign(const CImg<t1>& img1, const CImg<t2>& img2, const CImg<t3>& img3, const CImg<t4>& img4, 2.33249 + const CImg<t5>& img5, const CImg<t6>& img6, const CImg<t7>& img7, const CImg<t8>& img8, const bool shared=false) { 2.33250 + assign(8); 2.33251 + data[0].assign(img1,shared); data[1].assign(img2,shared); data[2].assign(img3,shared); data[3].assign(img4,shared); 2.33252 + data[4].assign(img5,shared); data[5].assign(img6,shared); data[6].assign(img7,shared); data[7].assign(img8,shared); 2.33253 + return *this; 2.33254 + } 2.33255 + 2.33256 + //! In-place version of the corresponding constructor. 2.33257 + CImgList<T>& assign(const char *const filename) { 2.33258 + return load(filename); 2.33259 + } 2.33260 + 2.33261 + //! Transfer the content of the instance image list into another one. 2.33262 + template<typename t> 2.33263 + CImgList<T>& transfer_to(CImgList<t>& list) { 2.33264 + list.assign(*this); 2.33265 + assign(); 2.33266 + return list; 2.33267 + } 2.33268 + 2.33269 + CImgList<T>& transfer_to(CImgList<T>& list) { 2.33270 + list.assign(); 2.33271 + return swap(list); 2.33272 + } 2.33273 + 2.33274 + //! Swap all fields of two CImgList instances (use with care !) 2.33275 + CImgList<T>& swap(CImgList<T>& list) { 2.33276 + cimg::swap(size,list.size); 2.33277 + cimg::swap(allocsize,list.allocsize); 2.33278 + cimg::swap(data,list.data); 2.33279 + return list; 2.33280 + } 2.33281 + 2.33282 + //! Return a string describing the type of the image pixels in the list (template parameter \p T). 2.33283 + static const char* pixel_type() { 2.33284 + return cimg::type<T>::string(); 2.33285 + } 2.33286 + 2.33287 + //! Return \p true if list is empty. 2.33288 + bool is_empty() const { 2.33289 + return (!data || !size); 2.33290 + } 2.33291 + 2.33292 + //! Return \p true if list is not empty. 2.33293 + operator bool() const { 2.33294 + return !is_empty(); 2.33295 + } 2.33296 + 2.33297 + //! Return \p true if list if of specified size. 2.33298 + bool is_sameN(const unsigned int n) const { 2.33299 + return (size==n); 2.33300 + } 2.33301 + 2.33302 + //! Return \p true if list if of specified size. 2.33303 + template<typename t> 2.33304 + bool is_sameN(const CImgList<t>& list) const { 2.33305 + return (size==list.size); 2.33306 + } 2.33307 + 2.33308 + // Define useful dimension check functions. 2.33309 + // (not documented because they are macro-generated). 2.33310 +#define _cimglist_def_is_same1(axis) \ 2.33311 + bool is_same##axis(const unsigned int val) const { \ 2.33312 + bool res = true; for (unsigned int l = 0; l<size && res; ++l) res = data[l].is_same##axis(val); return res; \ 2.33313 + } \ 2.33314 + bool is_sameN##axis(const unsigned int n, const unsigned int val) const { \ 2.33315 + return is_sameN(n) && is_same##axis(val); \ 2.33316 + } \ 2.33317 + 2.33318 +#define _cimglist_def_is_same2(axis1,axis2) \ 2.33319 + bool is_same##axis1##axis2(const unsigned int val1, const unsigned int val2) const { \ 2.33320 + bool res = true; for (unsigned int l = 0; l<size && res; ++l) res = data[l].is_same##axis1##axis2(val1,val2); return res; \ 2.33321 + } \ 2.33322 + bool is_sameN##axis1##axis2(const unsigned int n, const unsigned int val1, const unsigned int val2) const { \ 2.33323 + return is_sameN(n) && is_same##axis1##axis2(val1,val2); \ 2.33324 + } \ 2.33325 + 2.33326 +#define _cimglist_def_is_same3(axis1,axis2,axis3) \ 2.33327 + bool is_same##axis1##axis2##axis3(const unsigned int val1, const unsigned int val2, const unsigned int val3) const { \ 2.33328 + bool res = true; for (unsigned int l = 0; l<size && res; ++l) res = data[l].is_same##axis1##axis2##axis3(val1,val2,val3); return res; \ 2.33329 + } \ 2.33330 + bool is_sameN##axis1##axis2##axis3(const unsigned int n, const unsigned int val1, const unsigned int val2, const unsigned int val3) const { \ 2.33331 + return is_sameN(n) && is_same##axis1##axis2##axis3(val1,val2,val3); \ 2.33332 + } \ 2.33333 + 2.33334 +#define _cimglist_def_is_same(axis) \ 2.33335 + template<typename t> bool is_same##axis(const CImg<t>& img) const { \ 2.33336 + bool res = true; for (unsigned int l = 0; l<size && res; ++l) res = data[l].is_same##axis(img); return res; \ 2.33337 + } \ 2.33338 + template<typename t> bool is_same##axis(const CImgList<t>& list) const { \ 2.33339 + const unsigned int lmin = cimg::min(size,list.size); \ 2.33340 + bool res = true; for (unsigned int l = 0; l<lmin && res; ++l) res = data[l].is_same##axis(list[l]); return res; \ 2.33341 + } \ 2.33342 + template<typename t> bool is_sameN##axis(const unsigned int n, const CImg<t>& img) const { \ 2.33343 + return (is_sameN(n) && is_same##axis(img)); \ 2.33344 + } \ 2.33345 + template<typename t> bool is_sameN##axis(const CImgList<t>& list) const { \ 2.33346 + return (is_sameN(list) && is_same##axis(list)); \ 2.33347 + } 2.33348 + 2.33349 + _cimglist_def_is_same(XY) 2.33350 + _cimglist_def_is_same(XZ) 2.33351 + _cimglist_def_is_same(XV) 2.33352 + _cimglist_def_is_same(YZ) 2.33353 + _cimglist_def_is_same(YV) 2.33354 + _cimglist_def_is_same(XYZ) 2.33355 + _cimglist_def_is_same(XYV) 2.33356 + _cimglist_def_is_same(YZV) 2.33357 + _cimglist_def_is_same(XYZV) 2.33358 + _cimglist_def_is_same1(X) 2.33359 + _cimglist_def_is_same1(Y) 2.33360 + _cimglist_def_is_same1(Z) 2.33361 + _cimglist_def_is_same1(V) 2.33362 + _cimglist_def_is_same2(X,Y) 2.33363 + _cimglist_def_is_same2(X,Z) 2.33364 + _cimglist_def_is_same2(X,V) 2.33365 + _cimglist_def_is_same2(Y,Z) 2.33366 + _cimglist_def_is_same2(Y,V) 2.33367 + _cimglist_def_is_same2(Z,V) 2.33368 + _cimglist_def_is_same3(X,Y,Z) 2.33369 + _cimglist_def_is_same3(X,Y,V) 2.33370 + _cimglist_def_is_same3(X,Z,V) 2.33371 + _cimglist_def_is_same3(Y,Z,V) 2.33372 + 2.33373 + bool is_sameXYZV(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const { 2.33374 + bool res = true; 2.33375 + for (unsigned int l = 0; l<size && res; ++l) res = data[l].is_sameXYZV(dx,dy,dz,dv); 2.33376 + return res; 2.33377 + } 2.33378 + 2.33379 + bool is_sameNXYZV(const unsigned int n, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const { 2.33380 + return is_sameN(n) && is_sameXYZV(dx,dy,dz,dv); 2.33381 + } 2.33382 + 2.33383 + //! Return \c true if the list contains the pixel (n,x,y,z,v). 2.33384 + bool containsNXYZV(const int n, const int x=0, const int y=0, const int z=0, const int v=0) const { 2.33385 + if (is_empty()) return false; 2.33386 + return n>=0 && n<(int)size && x>=0 && x<data[n].dimx() && y>=0 && y<data[n].dimy() && z>=0 && z<data[n].dimz() && v>=0 && v<data[n].dimv(); 2.33387 + } 2.33388 + 2.33389 + //! Return \c true if the list contains the image (n). 2.33390 + bool containsN(const int n) const { 2.33391 + if (is_empty()) return false; 2.33392 + return n>=0 && n<(int)size; 2.33393 + } 2.33394 + 2.33395 + //! Return \c true if one of the image list contains the specified referenced value. If true, set coordinates (n,x,y,z,v). 2.33396 + template<typename t> 2.33397 + bool contains(const T& pixel, t& n, t& x, t&y, t& z, t& v) const { 2.33398 + if (is_empty()) return false; 2.33399 + cimglist_for(*this,l) if (data[l].contains(pixel,x,y,z,v)) { n = (t)l; return true; } 2.33400 + return false; 2.33401 + } 2.33402 + 2.33403 + //! Return \c true if one of the image list contains the specified referenced value. If true, set coordinates (n,x,y,z). 2.33404 + template<typename t> 2.33405 + bool contains(const T& pixel, t& n, t& x, t&y, t& z) const { 2.33406 + t v; 2.33407 + return contains(pixel,n,x,y,z,v); 2.33408 + } 2.33409 + 2.33410 + //! Return \c true if one of the image list contains the specified referenced value. If true, set coordinates (n,x,y). 2.33411 + template<typename t> 2.33412 + bool contains(const T& pixel, t& n, t& x, t&y) const { 2.33413 + t z,v; 2.33414 + return contains(pixel,n,x,y,z,v); 2.33415 + } 2.33416 + 2.33417 + //! Return \c true if one of the image list contains the specified referenced value. If true, set coordinates (n,x). 2.33418 + template<typename t> 2.33419 + bool contains(const T& pixel, t& n, t& x) const { 2.33420 + t y,z,v; 2.33421 + return contains(pixel,n,x,y,z,v); 2.33422 + } 2.33423 + 2.33424 + //! Return \c true if one of the image list contains the specified referenced value. If true, set coordinates (n). 2.33425 + template<typename t> 2.33426 + bool contains(const T& pixel, t& n) const { 2.33427 + t x,y,z,v; 2.33428 + return contains(pixel,n,x,y,z,v); 2.33429 + } 2.33430 + 2.33431 + //! Return \c true if one of the image list contains the specified referenced value. 2.33432 + bool contains(const T& pixel) const { 2.33433 + unsigned int n,x,y,z,v; 2.33434 + return contains(pixel,n,x,y,z,v); 2.33435 + } 2.33436 + 2.33437 + //! Return \c true if the list contains the image 'img'. If true, returns the position (n) of the image in the list. 2.33438 + template<typename t> 2.33439 + bool contains(const CImg<T>& img, t& n) const { 2.33440 + if (is_empty()) return false; 2.33441 + const CImg<T> *const ptr = &img; 2.33442 + cimglist_for(*this,i) if (data+i==ptr) { n = (t)i; return true; } 2.33443 + return false; 2.33444 + } 2.33445 + 2.33446 + //! Return \c true if the list contains the image img. 2.33447 + bool contains(const CImg<T>& img) const { 2.33448 + unsigned int n; 2.33449 + return contains(img,n); 2.33450 + } 2.33451 + 2.33452 + //@} 2.33453 + //------------------------------ 2.33454 + // 2.33455 + //! \name Arithmetics Operators 2.33456 + //@{ 2.33457 + //------------------------------ 2.33458 + 2.33459 + //! Assignment operator 2.33460 + template<typename t> 2.33461 + CImgList<T>& operator=(const CImgList<t>& list) { 2.33462 + return assign(list); 2.33463 + } 2.33464 + 2.33465 + CImgList<T>& operator=(const CImgList<T>& list) { 2.33466 + return assign(list); 2.33467 + } 2.33468 + 2.33469 + //! Assignment operator. 2.33470 + template<typename t> 2.33471 + CImgList<T>& operator=(const CImg<t>& img) { 2.33472 + cimglist_for(*this,l) data[l] = img; 2.33473 + return *this; 2.33474 + } 2.33475 + 2.33476 + //! Assignment operator. 2.33477 + CImgList<T>& operator=(const T val) { 2.33478 + cimglist_for(*this,l) data[l].fill(val); 2.33479 + return *this; 2.33480 + } 2.33481 + 2.33482 + //! Operator+. 2.33483 + CImgList<T> operator+() const { 2.33484 + return CImgList<T>(*this); 2.33485 + } 2.33486 + 2.33487 + //! Operator+=. 2.33488 +#ifdef cimg_use_visualcpp6 2.33489 + CImgList<T>& operator+=(const T val) 2.33490 +#else 2.33491 + template<typename t> 2.33492 + CImgList<T>& operator+=(const t val) 2.33493 +#endif 2.33494 + { 2.33495 + cimglist_for(*this,l) (*this)[l]+=val; 2.33496 + return *this; 2.33497 + } 2.33498 + 2.33499 + //! Operator+=. 2.33500 + template<typename t> 2.33501 + CImgList<T>& operator+=(const CImgList<t>& list) { 2.33502 + const unsigned int sizemax = cimg::min(size,list.size); 2.33503 + for (unsigned int l=0; l<sizemax; ++l) (*this)[l]+=list[l]; 2.33504 + return *this; 2.33505 + } 2.33506 + 2.33507 + //! Operator++ (prefix). 2.33508 + CImgList<T>& operator++() { 2.33509 + cimglist_for(*this,l) ++(*this)[l]; 2.33510 + return *this; 2.33511 + } 2.33512 + 2.33513 + //! Operator++ (postfix). 2.33514 + CImgList<T> operator++(int) { 2.33515 + CImgList<T> copy(*this); 2.33516 + ++*this; 2.33517 + return copy; 2.33518 + } 2.33519 + 2.33520 + //! Operator-. 2.33521 + CImgList<T> operator-() const { 2.33522 + CImgList<T> res(size); 2.33523 + cimglist_for(res,l) res[l].assign(-data[l]); 2.33524 + return res; 2.33525 + } 2.33526 + 2.33527 + //! Operator-=. 2.33528 +#ifdef cimg_use_visualcpp6 2.33529 + CImgList<T>& operator-=(const T val) 2.33530 +#else 2.33531 + template<typename t> 2.33532 + CImgList<T>& operator-=(const t val) 2.33533 +#endif 2.33534 + { 2.33535 + cimglist_for(*this,l) (*this)[l]-=val; 2.33536 + return *this; 2.33537 + } 2.33538 + 2.33539 + //! Operator-=. 2.33540 + template<typename t> 2.33541 + CImgList<T>& operator-=(const CImgList<t>& list) { 2.33542 + const unsigned int sizemax = min(size,list.size); 2.33543 + for (unsigned int l=0; l<sizemax; ++l) (*this)[l]-=list[l]; 2.33544 + return *this; 2.33545 + } 2.33546 + 2.33547 + //! Operator-- (prefix). 2.33548 + CImgList<T>& operator--() { 2.33549 + cimglist_for(*this,l) --(*this)[l]; 2.33550 + return *this; 2.33551 + } 2.33552 + 2.33553 + //! Operator-- (postfix). 2.33554 + CImgList<T> operator--(int) { 2.33555 + CImgList<T> copy(*this); 2.33556 + --*this; 2.33557 + return copy; 2.33558 + } 2.33559 + 2.33560 + //! Operator*=. 2.33561 +#ifdef cimg_use_visualcpp6 2.33562 + CImgList<T>& operator*=(const double val) 2.33563 +#else 2.33564 + template<typename t> 2.33565 + CImgList<T>& operator*=(const t val) 2.33566 +#endif 2.33567 + { 2.33568 + cimglist_for(*this,l) (*this)[l]*=val; 2.33569 + return *this; 2.33570 + } 2.33571 + 2.33572 + //! Operator*=. 2.33573 + template<typename t> 2.33574 + CImgList<T>& operator*=(const CImgList<t>& list) { 2.33575 + const unsigned int N = cimg::min(size,list.size); 2.33576 + for (unsigned int l=0; l<N; ++l) (*this)[l]*=list[l]; 2.33577 + return this; 2.33578 + } 2.33579 + 2.33580 + //! Operator/=. 2.33581 +#ifdef cimg_use_visualcpp6 2.33582 + CImgList<T>& operator/=(const double val) 2.33583 +#else 2.33584 + template<typename t> 2.33585 + CImgList<T>& operator/=(const t val) 2.33586 +#endif 2.33587 + { 2.33588 + cimglist_for(*this,l) (*this)[l]/=val; 2.33589 + return *this; 2.33590 + } 2.33591 + 2.33592 + //! Operator/=. 2.33593 + template<typename t> 2.33594 + CImgList<T>& operator/=(const CImgList<t>& list) { 2.33595 + const unsigned int N = cimg::min(size,list.size); 2.33596 + for (unsigned int l=0; l<N; ++l) (*this)[l]/=list[l]; 2.33597 + return this; 2.33598 + } 2.33599 + 2.33600 + //! Return a reference to the maximum pixel value of the instance list. 2.33601 + const T& max() const { 2.33602 + if (is_empty()) 2.33603 + throw CImgInstanceException("CImgList<%s>::max() : Instance image list is empty.", 2.33604 + pixel_type()); 2.33605 + const T *ptrmax = data->data; 2.33606 + T max_value = *ptrmax; 2.33607 + cimglist_for(*this,l) { 2.33608 + const CImg<T>& img = data[l]; 2.33609 + cimg_for(img,ptr,T) if ((*ptr)>max_value) max_value = *(ptrmax=ptr); 2.33610 + } 2.33611 + return *ptrmax; 2.33612 + } 2.33613 + 2.33614 + //! Return a reference to the maximum pixel value of the instance list. 2.33615 + T& max() { 2.33616 + if (is_empty()) 2.33617 + throw CImgInstanceException("CImgList<%s>::max() : Instance image list is empty.", 2.33618 + pixel_type()); 2.33619 + T *ptrmax = data->data; 2.33620 + T max_value = *ptrmax; 2.33621 + cimglist_for(*this,l) { 2.33622 + const CImg<T>& img = data[l]; 2.33623 + cimg_for(img,ptr,T) if ((*ptr)>max_value) max_value = *(ptrmax=ptr); 2.33624 + } 2.33625 + return *ptrmax; 2.33626 + } 2.33627 + 2.33628 + //! Return a reference to the minimum pixel value of the instance list. 2.33629 + const T& min() const { 2.33630 + if (is_empty()) 2.33631 + throw CImgInstanceException("CImgList<%s>::min() : Instance image list is empty.", 2.33632 + pixel_type()); 2.33633 + const T *ptrmin = data->data; 2.33634 + T min_value = *ptrmin; 2.33635 + cimglist_for(*this,l) { 2.33636 + const CImg<T>& img = data[l]; 2.33637 + cimg_for(img,ptr,T) if ((*ptr)<min_value) min_value = *(ptrmin=ptr); 2.33638 + } 2.33639 + return *ptrmin; 2.33640 + } 2.33641 + 2.33642 + //! Return a reference to the minimum pixel value of the instance list. 2.33643 + T& min() { 2.33644 + if (is_empty()) 2.33645 + throw CImgInstanceException("CImgList<%s>::min() : Instance image list is empty.", 2.33646 + pixel_type()); 2.33647 + T *ptrmin = data->data; 2.33648 + T min_value = *ptrmin; 2.33649 + cimglist_for(*this,l) { 2.33650 + const CImg<T>& img = data[l]; 2.33651 + cimg_for(img,ptr,T) if ((*ptr)<min_value) min_value = *(ptrmin=ptr); 2.33652 + } 2.33653 + return *ptrmin; 2.33654 + } 2.33655 + 2.33656 + //! Return a reference to the minimum pixel value of the instance list. 2.33657 + template<typename t> 2.33658 + const T& minmax(t& max_val) const { 2.33659 + if (is_empty()) 2.33660 + throw CImgInstanceException("CImgList<%s>::minmax() : Instance image list is empty.", 2.33661 + pixel_type()); 2.33662 + const T *ptrmin = data->data; 2.33663 + T min_value = *ptrmin, max_value = min_value; 2.33664 + cimglist_for(*this,l) { 2.33665 + const CImg<T>& img = data[l]; 2.33666 + cimg_for(img,ptr,T) { 2.33667 + const T val = *ptr; 2.33668 + if (val<min_value) { min_value = val; ptrmin = ptr; } 2.33669 + if (val>max_value) max_value = val; 2.33670 + } 2.33671 + } 2.33672 + max_val = (t)max_value; 2.33673 + return *ptrmin; 2.33674 + } 2.33675 + 2.33676 + //! Return a reference to the minimum pixel value of the instance list. 2.33677 + template<typename t> 2.33678 + T& minmax(t& max_val) { 2.33679 + if (is_empty()) 2.33680 + throw CImgInstanceException("CImgList<%s>::minmax() : Instance image list is empty.", 2.33681 + pixel_type()); 2.33682 + T *ptrmin = data->data; 2.33683 + T min_value = *ptrmin, max_value = min_value; 2.33684 + cimglist_for(*this,l) { 2.33685 + const CImg<T>& img = data[l]; 2.33686 + cimg_for(img,ptr,T) { 2.33687 + const T val = *ptr; 2.33688 + if (val<min_value) { min_value = val; ptrmin = ptr; } 2.33689 + if (val>max_value) max_value = val; 2.33690 + } 2.33691 + } 2.33692 + max_val = (t)max_value; 2.33693 + return *ptrmin; 2.33694 + } 2.33695 + 2.33696 + //! Return a reference to the minimum pixel value of the instance list. 2.33697 + template<typename t> 2.33698 + const T& maxmin(t& min_val) const { 2.33699 + if (is_empty()) 2.33700 + throw CImgInstanceException("CImgList<%s>::maxmin() : Instance image list is empty.", 2.33701 + pixel_type()); 2.33702 + const T *ptrmax = data->data; 2.33703 + T min_value = *ptrmax, max_value = min_value; 2.33704 + cimglist_for(*this,l) { 2.33705 + const CImg<T>& img = data[l]; 2.33706 + cimg_for(img,ptr,T) { 2.33707 + const T val = *ptr; 2.33708 + if (val>max_value) { max_value = val; ptrmax = ptr; } 2.33709 + if (val<min_value) min_value = val; 2.33710 + } 2.33711 + } 2.33712 + min_val = (t)min_value; 2.33713 + return *ptrmax; 2.33714 + } 2.33715 + 2.33716 + //! Return a reference to the minimum pixel value of the instance list. 2.33717 + template<typename t> 2.33718 + T& maxmin(t& min_val) { 2.33719 + if (is_empty()) 2.33720 + throw CImgInstanceException("CImgList<%s>::maxmin() : Instance image list is empty.", 2.33721 + pixel_type()); 2.33722 + T *ptrmax = data->data; 2.33723 + T min_value = *ptrmax, max_value = min_value; 2.33724 + cimglist_for(*this,l) { 2.33725 + const CImg<T>& img = data[l]; 2.33726 + cimg_for(img,ptr,T) { 2.33727 + const T val = *ptr; 2.33728 + if (val>max_value) { max_value = val; ptrmax = ptr; } 2.33729 + if (val<min_value) min_value = val; 2.33730 + } 2.33731 + } 2.33732 + min_val = (t)min_value; 2.33733 + return *ptrmax; 2.33734 + } 2.33735 + 2.33736 + //! Return the mean pixel value of the instance list. 2.33737 + double mean() const { 2.33738 + if (is_empty()) 2.33739 + throw CImgInstanceException("CImgList<%s>::mean() : Instance image list is empty.", 2.33740 + pixel_type()); 2.33741 + double val = 0; 2.33742 + unsigned int siz = 0; 2.33743 + cimglist_for(*this,l) { 2.33744 + const CImg<T>& img = data[l]; 2.33745 + cimg_for(img,ptr,T) val+=(double)*ptr; 2.33746 + siz+=img.size(); 2.33747 + } 2.33748 + return val/siz; 2.33749 + } 2.33750 + 2.33751 + //! Return the variance of the instance list. 2.33752 + double variance() { 2.33753 + if (is_empty()) 2.33754 + throw CImgInstanceException("CImgList<%s>::variance() : Instance image list is empty.", 2.33755 + pixel_type()); 2.33756 + double res = 0; 2.33757 + unsigned int siz = 0; 2.33758 + double S = 0, S2 = 0; 2.33759 + cimglist_for(*this,l) { 2.33760 + const CImg<T>& img = data[l]; 2.33761 + cimg_for(img,ptr,T) { const double val = (double)*ptr; S+=val; S2+=val*val; } 2.33762 + siz+=img.size(); 2.33763 + } 2.33764 + res = (S2 - S*S/siz)/siz; 2.33765 + return res; 2.33766 + } 2.33767 + 2.33768 + //! Compute a list of statistics vectors (min,max,mean,variance,xmin,ymin,zmin,vmin,xmax,ymax,zmax,vmax). 2.33769 + CImgList<T>& stats(const unsigned int variance_method=1) { 2.33770 + if (is_empty()) return *this; 2.33771 + cimglist_for(*this,l) data[l].stats(variance_method); 2.33772 + return *this; 2.33773 + } 2.33774 + 2.33775 + CImgList<Tfloat> get_stats(const unsigned int variance_method=1) const { 2.33776 + CImgList<Tfloat> res(size); 2.33777 + cimglist_for(*this,l) res[l] = data[l].get_stats(variance_method); 2.33778 + return res; 2.33779 + } 2.33780 + 2.33781 + //@} 2.33782 + //------------------------- 2.33783 + // 2.33784 + //! \name List Manipulation 2.33785 + //@{ 2.33786 + //------------------------- 2.33787 + 2.33788 + //! Return a reference to the i-th element of the image list. 2.33789 + CImg<T>& operator[](const unsigned int pos) { 2.33790 +#if cimg_debug>=3 2.33791 + if (pos>=size) { 2.33792 + cimg::warn("CImgList<%s>::operator[] : bad list position %u, in a list of %u images", 2.33793 + pixel_type(),pos,size); 2.33794 + return *data; 2.33795 + } 2.33796 +#endif 2.33797 + return data[pos]; 2.33798 + } 2.33799 + 2.33800 + const CImg<T>& operator[](const unsigned int pos) const { 2.33801 +#if cimg_debug>=3 2.33802 + if (pos>=size) { 2.33803 + cimg::warn("CImgList<%s>::operator[] : bad list position %u, in a list of %u images", 2.33804 + pixel_type(),pos,size); 2.33805 + return *data; 2.33806 + } 2.33807 +#endif 2.33808 + return data[pos]; 2.33809 + } 2.33810 + 2.33811 + //! Equivalent to CImgList<T>::operator[] 2.33812 + CImg<T>& operator()(const unsigned int pos) { 2.33813 + return (*this)[pos]; 2.33814 + } 2.33815 + 2.33816 + const CImg<T>& operator()(const unsigned int pos) const { 2.33817 + return (*this)[pos]; 2.33818 + } 2.33819 + 2.33820 + //! Return a reference to (x,y,z,v) pixel of the pos-th image of the list 2.33821 + T& operator()(const unsigned int pos, const unsigned int x, const unsigned int y=0, 2.33822 + const unsigned int z=0, const unsigned int v=0) { 2.33823 + return (*this)[pos](x,y,z,v); 2.33824 + } 2.33825 + const T& operator()(const unsigned int pos, const unsigned int x, const unsigned int y=0, 2.33826 + const unsigned int z=0, const unsigned int v=0) const { 2.33827 + return (*this)[pos](x,y,z,v); 2.33828 + } 2.33829 + 2.33830 + // This function is only here for template tricks. 2.33831 + T _display_object3d_at2(const int i, const int j) const { 2.33832 + return atNXY(i,0,j,0,0,0); 2.33833 + } 2.33834 + 2.33835 + //! Read an image in specified position. 2.33836 + CImg<T>& at(const int pos) { 2.33837 + if (is_empty()) 2.33838 + throw CImgInstanceException("CImgList<%s>::at() : Instance list is empty.", 2.33839 + pixel_type()); 2.33840 + return data[pos<0?0:pos>=(int)size?(int)size-1:pos]; 2.33841 + } 2.33842 + 2.33843 + //! Read a pixel value with Dirichlet boundary conditions. 2.33844 + T& atNXYZV(const int pos, const int x, const int y, const int z, const int v, const T out_val) { 2.33845 + return (pos<0 || pos>=(int)size)?(cimg::temporary(out_val)=out_val):data[pos].atXYZV(x,y,z,v,out_val); 2.33846 + } 2.33847 + 2.33848 + T atNXYZV(const int pos, const int x, const int y, const int z, const int v, const T out_val) const { 2.33849 + return (pos<0 || pos>=(int)size)?out_val:data[pos].atXYZV(x,y,z,v,out_val); 2.33850 + } 2.33851 + 2.33852 + //! Read a pixel value with Neumann boundary conditions. 2.33853 + T& atNXYZV(const int pos, const int x, const int y, const int z, const int v) { 2.33854 + if (is_empty()) 2.33855 + throw CImgInstanceException("CImgList<%s>::atNXYZV() : Instance list is empty.", 2.33856 + pixel_type()); 2.33857 + return _atNXYZV(pos,x,y,z,v); 2.33858 + } 2.33859 + 2.33860 + T atNXYZV(const int pos, const int x, const int y, const int z, const int v) const { 2.33861 + if (is_empty()) 2.33862 + throw CImgInstanceException("CImgList<%s>::atNXYZV() : Instance list is empty.", 2.33863 + pixel_type()); 2.33864 + return _atNXYZV(pos,x,y,z,v); 2.33865 + } 2.33866 + 2.33867 + T& _atNXYZV(const int pos, const int x, const int y, const int z, const int v) { 2.33868 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXYZV(x,y,z,v); 2.33869 + } 2.33870 + 2.33871 + T _atNXYZV(const int pos, const int x, const int y, const int z, const int v) const { 2.33872 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXYZV(x,y,z,v); 2.33873 + } 2.33874 + 2.33875 + //! Read a pixel value with Dirichlet boundary conditions for the four first coordinates (\c pos, \c x,\c y,\c z). 2.33876 + T& atNXYZ(const int pos, const int x, const int y, const int z, const int v, const T out_val) { 2.33877 + return (pos<0 || pos>=(int)size)?(cimg::temporary(out_val)=out_val):data[pos].atXYZ(x,y,z,v,out_val); 2.33878 + } 2.33879 + 2.33880 + T atNXYZ(const int pos, const int x, const int y, const int z, const int v, const T out_val) const { 2.33881 + return (pos<0 || pos>=(int)size)?out_val:data[pos].atXYZ(x,y,z,v,out_val); 2.33882 + } 2.33883 + 2.33884 + //! Read a pixel value with Neumann boundary conditions for the four first coordinates (\c pos, \c x,\c y,\c z). 2.33885 + T& atNXYZ(const int pos, const int x, const int y, const int z, const int v=0) { 2.33886 + if (is_empty()) 2.33887 + throw CImgInstanceException("CImgList<%s>::atNXYZ() : Instance list is empty.", 2.33888 + pixel_type()); 2.33889 + return _atNXYZ(pos,x,y,z,v); 2.33890 + } 2.33891 + 2.33892 + T atNXYZ(const int pos, const int x, const int y, const int z, const int v=0) const { 2.33893 + if (is_empty()) 2.33894 + throw CImgInstanceException("CImgList<%s>::atNXYZ() : Instance list is empty.", 2.33895 + pixel_type()); 2.33896 + return _atNXYZ(pos,x,y,z,v); 2.33897 + } 2.33898 + 2.33899 + T& _atNXYZ(const int pos, const int x, const int y, const int z, const int v=0) { 2.33900 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXYZ(x,y,z,v); 2.33901 + } 2.33902 + 2.33903 + T _atNXYZ(const int pos, const int x, const int y, const int z, const int v=0) const { 2.33904 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXYZ(x,y,z,v); 2.33905 + } 2.33906 + 2.33907 + //! Read a pixel value with Dirichlet boundary conditions for the three first coordinates (\c pos, \c x,\c y). 2.33908 + T& atNXY(const int pos, const int x, const int y, const int z, const int v, const T out_val) { 2.33909 + return (pos<0 || pos>=(int)size)?(cimg::temporary(out_val)=out_val):data[pos].atXY(x,y,z,v,out_val); 2.33910 + } 2.33911 + 2.33912 + T atNXY(const int pos, const int x, const int y, const int z, const int v, const T out_val) const { 2.33913 + return (pos<0 || pos>=(int)size)?out_val:data[pos].atXY(x,y,z,v,out_val); 2.33914 + } 2.33915 + 2.33916 + //! Read a pixel value with Neumann boundary conditions for the three first coordinates (\c pos, \c x,\c y). 2.33917 + T& atNXY(const int pos, const int x, const int y, const int z=0, const int v=0) { 2.33918 + if (is_empty()) 2.33919 + throw CImgInstanceException("CImgList<%s>::atNXY() : Instance list is empty.", 2.33920 + pixel_type()); 2.33921 + return _atNXY(pos,x,y,z,v); 2.33922 + } 2.33923 + 2.33924 + T atNXY(const int pos, const int x, const int y, const int z=0, const int v=0) const { 2.33925 + if (is_empty()) 2.33926 + throw CImgInstanceException("CImgList<%s>::atNXY() : Instance list is empty.", 2.33927 + pixel_type()); 2.33928 + return _atNXY(pos,x,y,z,v); 2.33929 + } 2.33930 + 2.33931 + T& _atNXY(const int pos, const int x, const int y, const int z=0, const int v=0) { 2.33932 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXY(x,y,z,v); 2.33933 + } 2.33934 + 2.33935 + T _atNXY(const int pos, const int x, const int y, const int z=0, const int v=0) const { 2.33936 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atXY(x,y,z,v); 2.33937 + } 2.33938 + 2.33939 + //! Read a pixel value with Dirichlet boundary conditions for the two first coordinates (\c pos,\c x). 2.33940 + T& atNX(const int pos, const int x, const int y, const int z, const int v, const T out_val) { 2.33941 + return (pos<0 || pos>=(int)size)?(cimg::temporary(out_val)=out_val):data[pos].atX(x,y,z,v,out_val); 2.33942 + } 2.33943 + 2.33944 + T atNX(const int pos, const int x, const int y, const int z, const int v, const T out_val) const { 2.33945 + return (pos<0 || pos>=(int)size)?out_val:data[pos].atX(x,y,z,v,out_val); 2.33946 + } 2.33947 + 2.33948 + //! Read a pixel value with Neumann boundary conditions for the two first coordinates (\c pos, \c x). 2.33949 + T& atNX(const int pos, const int x, const int y=0, const int z=0, const int v=0) { 2.33950 + if (is_empty()) 2.33951 + throw CImgInstanceException("CImgList<%s>::atNX() : Instance list is empty.", 2.33952 + pixel_type()); 2.33953 + return _atNX(pos,x,y,z,v); 2.33954 + } 2.33955 + 2.33956 + T atNX(const int pos, const int x, const int y=0, const int z=0, const int v=0) const { 2.33957 + if (is_empty()) 2.33958 + throw CImgInstanceException("CImgList<%s>::atNX() : Instance list is empty.", 2.33959 + pixel_type()); 2.33960 + return _atNX(pos,x,y,z,v); 2.33961 + } 2.33962 + 2.33963 + T& _atNX(const int pos, const int x, const int y=0, const int z=0, const int v=0) { 2.33964 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atX(x,y,z,v); 2.33965 + } 2.33966 + 2.33967 + T _atNX(const int pos, const int x, const int y=0, const int z=0, const int v=0) const { 2.33968 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)].atX(x,y,z,v); 2.33969 + } 2.33970 + 2.33971 + //! Read a pixel value with Dirichlet boundary conditions for the first coordinates (\c pos). 2.33972 + T& atN(const int pos, const int x, const int y, const int z, const int v, const T out_val) { 2.33973 + return (pos<0 || pos>=(int)size)?(cimg::temporary(out_val)=out_val):(*this)(pos,x,y,z,v); 2.33974 + } 2.33975 + 2.33976 + T atN(const int pos, const int x, const int y, const int z, const int v, const T out_val) const { 2.33977 + return (pos<0 || pos>=(int)size)?out_val:(*this)(pos,x,y,z,v); 2.33978 + } 2.33979 + 2.33980 + //! Read a pixel value with Neumann boundary conditions for the first coordinates (\c pos). 2.33981 + T& atN(const int pos, const int x=0, const int y=0, const int z=0, const int v=0) { 2.33982 + if (is_empty()) 2.33983 + throw CImgInstanceException("CImgList<%s>::atN() : Instance list is empty.", 2.33984 + pixel_type()); 2.33985 + return _atN(pos,x,y,z,v); 2.33986 + } 2.33987 + 2.33988 + T atN(const int pos, const int x=0, const int y=0, const int z=0, const int v=0) const { 2.33989 + if (is_empty()) 2.33990 + throw CImgInstanceException("CImgList<%s>::atN() : Instance list is empty.", 2.33991 + pixel_type()); 2.33992 + return _atN(pos,x,y,z,v); 2.33993 + } 2.33994 + 2.33995 + T& _atN(const int pos, const int x=0, const int y=0, const int z=0, const int v=0) { 2.33996 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)](x,y,z,v); 2.33997 + } 2.33998 + 2.33999 + T _atN(const int pos, const int x=0, const int y=0, const int z=0, const int v=0) const { 2.34000 + return data[pos<0?0:(pos>=(int)size?(int)size-1:pos)](x,y,z,v); 2.34001 + } 2.34002 + 2.34003 + //! Returns a reference to the last element. 2.34004 + CImg<T>& back() { 2.34005 + return (*this)(size-1); 2.34006 + } 2.34007 + 2.34008 + const CImg<T>& back() const { 2.34009 + return (*this)(size-1); 2.34010 + } 2.34011 + 2.34012 + //! Returns a reference to the first element. 2.34013 + CImg<T>& front() { 2.34014 + return *data; 2.34015 + } 2.34016 + 2.34017 + const CImg<T>& front() const { 2.34018 + return *data; 2.34019 + } 2.34020 + 2.34021 + //! Returns an iterator to the beginning of the vector. 2.34022 + iterator begin() { 2.34023 + return data; 2.34024 + } 2.34025 + 2.34026 + const_iterator begin() const { 2.34027 + return data; 2.34028 + } 2.34029 + 2.34030 + //! Return a reference to the first image. 2.34031 + const CImg<T>& first() const { 2.34032 + return *data; 2.34033 + } 2.34034 + 2.34035 + CImg<T>& first() { 2.34036 + return *data; 2.34037 + } 2.34038 + 2.34039 + //! Returns an iterator just past the last element. 2.34040 + iterator end() { 2.34041 + return data + size; 2.34042 + } 2.34043 + 2.34044 + const_iterator end() const { 2.34045 + return data + size; 2.34046 + } 2.34047 + 2.34048 + //! Return a reference to the last image. 2.34049 + const CImg<T>& last() const { 2.34050 + return data[size - 1]; 2.34051 + } 2.34052 + 2.34053 + CImg<T>& last() { 2.34054 + return data[size - 1]; 2.34055 + } 2.34056 + 2.34057 + //! Insert a copy of the image \p img into the current image list, at position \p pos. 2.34058 + template<typename t> 2.34059 + CImgList<T>& insert(const CImg<t>& img, const unsigned int pos, const bool shared) { 2.34060 + const unsigned int npos = pos==~0U?size:pos; 2.34061 + if (npos>size) 2.34062 + throw CImgArgumentException("CImgList<%s>::insert() : Cannot insert at position %u into a list with %u elements", 2.34063 + pixel_type(),npos,size); 2.34064 + if (shared) 2.34065 + throw CImgArgumentException("CImgList<%s>::insert(): Cannot insert a shared image CImg<%s> into a CImgList<%s>", 2.34066 + pixel_type(),img.pixel_type(),pixel_type()); 2.34067 + CImg<T> *new_data = (++size>allocsize)?new CImg<T>[allocsize?(allocsize<<=1):(allocsize=16)]:0; 2.34068 + if (!size || !data) { 2.34069 + data = new_data; 2.34070 + *data = img; 2.34071 + } else { 2.34072 + if (new_data) { 2.34073 + if (npos) cimg_std::memcpy(new_data,data,sizeof(CImg<T>)*npos); 2.34074 + if (npos!=size-1) cimg_std::memcpy(new_data+npos+1,data+npos,sizeof(CImg<T>)*(size-1-npos)); 2.34075 + cimg_std::memset(data,0,sizeof(CImg<T>)*(size-1)); 2.34076 + delete[] data; 2.34077 + data = new_data; 2.34078 + } 2.34079 + else if (npos!=size-1) cimg_std::memmove(data+npos+1,data+npos,sizeof(CImg<T>)*(size-1-npos)); 2.34080 + data[npos].width = data[npos].height = data[npos].depth = data[npos].dim = 0; data[npos].data = 0; 2.34081 + data[npos] = img; 2.34082 + } 2.34083 + return *this; 2.34084 + } 2.34085 + 2.34086 + CImgList<T>& insert(const CImg<T>& img, const unsigned int pos, const bool shared) { 2.34087 + const unsigned int npos = pos==~0U?size:pos; 2.34088 + if (npos>size) 2.34089 + throw CImgArgumentException("CImgList<%s>::insert() : Can't insert at position %u into a list with %u elements", 2.34090 + pixel_type(),npos,size); 2.34091 + if (&img>=data && &img<data+size) return insert(+img,pos,shared); 2.34092 + CImg<T> *new_data = (++size>allocsize)?new CImg<T>[allocsize?(allocsize<<=1):(allocsize=16)]:0; 2.34093 + if (!size || !data) { 2.34094 + data = new_data; 2.34095 + if (shared && img) { 2.34096 + data->width = img.width; data->height = img.height; data->depth = img.depth; data->dim = img.dim; 2.34097 + data->is_shared = true; data->data = img.data; 2.34098 + } else *data = img; 2.34099 + } 2.34100 + else { 2.34101 + if (new_data) { 2.34102 + if (npos) cimg_std::memcpy(new_data,data,sizeof(CImg<T>)*npos); 2.34103 + if (npos!=size-1) cimg_std::memcpy(new_data+npos+1,data+npos,sizeof(CImg<T>)*(size-1-npos)); 2.34104 + if (shared && img) { 2.34105 + new_data[npos].width = img.width; new_data[npos].height = img.height; new_data[npos].depth = img.depth; 2.34106 + new_data[npos].dim = img.dim; new_data[npos].is_shared = true; new_data[npos].data = img.data; 2.34107 + } else { 2.34108 + new_data[npos].width = new_data[npos].height = new_data[npos].depth = new_data[npos].dim = 0; new_data[npos].data = 0; 2.34109 + new_data[npos] = img; 2.34110 + } 2.34111 + cimg_std::memset(data,0,sizeof(CImg<T>)*(size-1)); 2.34112 + delete[] data; 2.34113 + data = new_data; 2.34114 + } else { 2.34115 + if (npos!=size-1) cimg_std::memmove(data+npos+1,data+npos,sizeof(CImg<T>)*(size-1-npos)); 2.34116 + if (shared && img) { 2.34117 + data[npos].width = img.width; data[npos].height = img.height; data[npos].depth = img.depth; data[npos].dim = img.dim; 2.34118 + data[npos].is_shared = true; data[npos].data = img.data; 2.34119 + } else { 2.34120 + data[npos].width = data[npos].height = data[npos].depth = data[npos].dim = 0; data[npos].data = 0; 2.34121 + data[npos] = img; 2.34122 + } 2.34123 + } 2.34124 + } 2.34125 + return *this; 2.34126 + } 2.34127 + 2.34128 + // The two functions below are necessary due to Visual C++ 6.0 function overloading bugs, when 2.34129 + // default parameters are used in function signatures. 2.34130 + template<typename t> 2.34131 + CImgList<T>& insert(const CImg<t>& img, const unsigned int pos) { 2.34132 + return insert(img,pos,false); 2.34133 + } 2.34134 + 2.34135 + //! Insert a copy of the image \p img into the current image list, at position \p pos. 2.34136 + template<typename t> 2.34137 + CImgList<T>& insert(const CImg<t>& img) { 2.34138 + return insert(img,~0U,false); 2.34139 + } 2.34140 + 2.34141 + template<typename t> 2.34142 + CImgList<T> get_insert(const CImg<t>& img, const unsigned int pos=~0U, const bool shared=false) const { 2.34143 + return (+*this).insert(img,pos,shared); 2.34144 + } 2.34145 + 2.34146 + //! Insert n empty images img into the current image list, at position \p pos. 2.34147 + CImgList<T>& insert(const unsigned int n, const unsigned int pos=~0U) { 2.34148 + CImg<T> foo; 2.34149 + if (!n) return *this; 2.34150 + const unsigned int npos = pos==~0U?size:pos; 2.34151 + for (unsigned int i=0; i<n; ++i) insert(foo,npos+i); 2.34152 + return *this; 2.34153 + } 2.34154 + 2.34155 + CImgList<T> get_insert(const unsigned int n, const unsigned int pos=~0U) const { 2.34156 + return (+*this).insert(n,pos); 2.34157 + } 2.34158 + 2.34159 + //! Insert n copies of the image \p img into the current image list, at position \p pos. 2.34160 + template<typename t> 2.34161 + CImgList<T>& insert(const unsigned int n, const CImg<t>& img, const unsigned int pos=~0U, const bool shared=false) { 2.34162 + if (!n) return *this; 2.34163 + const unsigned int npos = pos==~0U?size:pos; 2.34164 + insert(img,npos,shared); 2.34165 + for (unsigned int i=1; i<n; ++i) insert(data[npos],npos+i,shared); 2.34166 + return *this; 2.34167 + } 2.34168 + 2.34169 + template<typename t> 2.34170 + CImgList<T> get_insert(const unsigned int n, const CImg<t>& img, const unsigned int pos=~0U, const bool shared=false) const { 2.34171 + return (+*this).insert(n,img,pos,shared); 2.34172 + } 2.34173 + 2.34174 + //! Insert a copy of the image list \p list into the current image list, starting from position \p pos. 2.34175 + template<typename t> 2.34176 + CImgList<T>& insert(const CImgList<t>& list, const unsigned int pos=~0U, const bool shared=false) { 2.34177 + const unsigned int npos = pos==~0U?size:pos; 2.34178 + if ((void*)this!=(void*)&list) cimglist_for(list,l) insert(list[l],npos+l,shared); 2.34179 + else insert(CImgList<T>(list),npos,shared); 2.34180 + return *this; 2.34181 + } 2.34182 + 2.34183 + template<typename t> 2.34184 + CImgList<T> get_insert(const CImgList<t>& list, const unsigned int pos=~0U, const bool shared=false) const { 2.34185 + return (+*this).insert(list,pos,shared); 2.34186 + } 2.34187 + 2.34188 + //! Insert n copies of the list \p list at position \p pos of the current list. 2.34189 + template<typename t> 2.34190 + CImgList<T>& insert(const unsigned int n, const CImgList<t>& list, const unsigned int pos=~0U, const bool shared=false) { 2.34191 + if (!n) return *this; 2.34192 + const unsigned int npos = pos==~0U?size:pos; 2.34193 + for (unsigned int i=0; i<n; ++i) insert(list,npos,shared); 2.34194 + return *this; 2.34195 + } 2.34196 + 2.34197 + template<typename t> 2.34198 + CImgList<T> get_insert(const unsigned int n, const CImgList<t>& list, const unsigned int pos=~0U, const bool shared=false) const { 2.34199 + return (+*this).insert(n,list,pos,shared); 2.34200 + } 2.34201 + 2.34202 + //! Insert a copy of the image \p img at the end of the current image list. 2.34203 + template<typename t> 2.34204 + CImgList<T>& operator<<(const CImg<t>& img) { 2.34205 + return insert(img); 2.34206 + } 2.34207 + 2.34208 + //! Insert a copy of the image list \p list at the end of the current image list. 2.34209 + template<typename t> 2.34210 + CImgList<T>& operator<<(const CImgList<t>& list) { 2.34211 + return insert(list); 2.34212 + } 2.34213 + 2.34214 + //! Return a copy of the current image list, where the image \p img has been inserted at the end. 2.34215 + template<typename t> 2.34216 + CImgList<T>& operator>>(CImg<t>& img) const { 2.34217 + typedef typename cimg::superset<T,t>::type Tt; 2.34218 + return CImgList<Tt>(*this).insert(img); 2.34219 + } 2.34220 + 2.34221 + //! Insert a copy of the current image list at the beginning of the image list \p list. 2.34222 + template<typename t> 2.34223 + CImgList<T>& operator>>(CImgList<t>& list) const { 2.34224 + return list.insert(*this,0); 2.34225 + } 2.34226 + 2.34227 + //! Remove the images at positions \p pos1 to \p pos2 from the image list. 2.34228 + CImgList<T>& remove(const unsigned int pos1, const unsigned int pos2) { 2.34229 + const unsigned int 2.34230 + npos1 = pos1<pos2?pos1:pos2, 2.34231 + tpos2 = pos1<pos2?pos2:pos1, 2.34232 + npos2 = tpos2<size?tpos2:size-1; 2.34233 + if (npos1>=size) 2.34234 + cimg::warn("CImgList<%s>::remove() : Cannot remove images from a list (%p,%u), at positions %u->%u.", 2.34235 + pixel_type(),data,size,npos1,tpos2); 2.34236 + else { 2.34237 + if (tpos2>=size) 2.34238 + cimg::warn("CImgList<%s>::remove() : Cannot remove all images from a list (%p,%u), at positions %u->%u.", 2.34239 + pixel_type(),data,size,npos1,tpos2); 2.34240 + for (unsigned int k = npos1; k<=npos2; ++k) data[k].assign(); 2.34241 + const unsigned int nb = 1 + npos2 - npos1; 2.34242 + if (!(size-=nb)) return assign(); 2.34243 + if (size>(allocsize>>2) || allocsize<=8) { // Removing items without reallocation. 2.34244 + if (npos1!=size) cimg_std::memmove(data+npos1,data+npos2+1,sizeof(CImg<T>)*(size-npos1)); 2.34245 + cimg_std::memset(data+size,0,sizeof(CImg<T>)*nb); 2.34246 + } else { // Removing items with reallocation. 2.34247 + allocsize>>=2; 2.34248 + while (allocsize>8 && size<(allocsize>>1)) allocsize>>=1; 2.34249 + CImg<T> *new_data = new CImg<T>[allocsize]; 2.34250 + if (npos1) cimg_std::memcpy(new_data,data,sizeof(CImg<T>)*npos1); 2.34251 + if (npos1!=size) cimg_std::memcpy(new_data+npos1,data+npos2+1,sizeof(CImg<T>)*(size-npos1)); 2.34252 + if (size!=allocsize) cimg_std::memset(new_data+size,0,sizeof(allocsize-size)); 2.34253 + cimg_std::memset(data,0,sizeof(CImg<T>)*(size+nb)); 2.34254 + delete[] data; 2.34255 + data = new_data; 2.34256 + } 2.34257 + } 2.34258 + return *this; 2.34259 + } 2.34260 + 2.34261 + CImgList<T> get_remove(const unsigned int pos1, const unsigned int pos2) const { 2.34262 + return (+*this).remove(pos1,pos2); 2.34263 + } 2.34264 + 2.34265 + //! Remove the image at position \p pos from the image list. 2.34266 + CImgList<T>& remove(const unsigned int pos) { 2.34267 + return remove(pos,pos); 2.34268 + } 2.34269 + 2.34270 + CImgList<T> get_remove(const unsigned int pos) const { 2.34271 + return (+*this).remove(pos); 2.34272 + } 2.34273 + 2.34274 + //! Remove the last image from the image list. 2.34275 + CImgList<T>& remove() { 2.34276 + if (size) return remove(size-1); 2.34277 + else cimg::warn("CImgList<%s>::remove() : List is empty", 2.34278 + pixel_type()); 2.34279 + return *this; 2.34280 + } 2.34281 + 2.34282 + CImgList<T> get_remove() const { 2.34283 + return (+*this).remove(); 2.34284 + } 2.34285 + 2.34286 + //! Reverse list order. 2.34287 + CImgList<T>& reverse() { 2.34288 + for (unsigned int l=0; l<size/2; ++l) (*this)[l].swap((*this)[size-1-l]); 2.34289 + return *this; 2.34290 + } 2.34291 + 2.34292 + CImgList<T> get_reverse() const { 2.34293 + return (+*this).reverse(); 2.34294 + } 2.34295 + 2.34296 + //! Get a sub-list. 2.34297 + CImgList<T>& crop(const unsigned int i0, const unsigned int i1, const bool shared=false) { 2.34298 + return get_crop(i0,i1,shared).transfer_to(*this); 2.34299 + } 2.34300 + 2.34301 + CImgList<T> get_crop(const unsigned int i0, const unsigned int i1, const bool shared=false) const { 2.34302 + if (i0>i1 || i1>=size) 2.34303 + throw CImgArgumentException("CImgList<%s>::crop() : Cannot crop a sub-list (%u->%u) from a list (%u,%p)", 2.34304 + pixel_type(),i0,i1,size,data); 2.34305 + CImgList<T> res(i1-i0+1); 2.34306 + cimglist_for(res,l) res[l].assign((*this)[i0+l],shared); 2.34307 + return res; 2.34308 + } 2.34309 + 2.34310 + //! Get sub-images of a sublist. 2.34311 + CImgList<T>& crop(const unsigned int i0, const unsigned int i1, 2.34312 + const int x0, const int y0, const int z0, const int v0, 2.34313 + const int x1, const int y1, const int z1, const int v1) { 2.34314 + return get_crop(i0,i1,x0,y0,z0,v0,x1,y1,z1,v1).transfer_to(*this); 2.34315 + } 2.34316 + 2.34317 + CImgList<T> get_crop(const unsigned int i0, const unsigned int i1, 2.34318 + const int x0, const int y0, const int z0, const int v0, 2.34319 + const int x1, const int y1, const int z1, const int v1) const { 2.34320 + if (i0>i1 || i1>=size) 2.34321 + throw CImgArgumentException("CImgList<%s>::crop() : Cannot crop a sub-list (%u->%u) from a list (%u,%p)", 2.34322 + pixel_type(),i0,i1,size,data); 2.34323 + CImgList<T> res(i1-i0+1); 2.34324 + cimglist_for(res,l) res[l] = (*this)[i0+l].get_crop(x0,y0,z0,v0,x1,y1,z1,v1); 2.34325 + return res; 2.34326 + } 2.34327 + 2.34328 + //! Get sub-images of a sublist. 2.34329 + CImgList<T>& crop(const unsigned int i0, const unsigned int i1, 2.34330 + const int x0, const int y0, const int z0, 2.34331 + const int x1, const int y1, const int z1) { 2.34332 + return get_crop(i0,i1,x0,y0,z0,x1,y1,z1).transfer_to(*this); 2.34333 + } 2.34334 + 2.34335 + CImgList<T> get_crop(const unsigned int i0, const unsigned int i1, 2.34336 + const int x0, const int y0, const int z0, 2.34337 + const int x1, const int y1, const int z1) const { 2.34338 + if (i0>i1 || i1>=size) 2.34339 + throw CImgArgumentException("CImgList<%s>::crop() : Cannot crop a sub-list (%u->%u) from a list (%u,%p)", 2.34340 + pixel_type(),i0,i1,size,data); 2.34341 + CImgList<T> res(i1-i0+1); 2.34342 + cimglist_for(res,l) res[l] = (*this)[i0+l].get_crop(x0,y0,z0,x1,y1,z1); 2.34343 + return res; 2.34344 + } 2.34345 + 2.34346 + //! Get sub-images of a sublist. 2.34347 + CImgList<T>& crop(const unsigned int i0, const unsigned int i1, 2.34348 + const int x0, const int y0, 2.34349 + const int x1, const int y1) { 2.34350 + return get_crop(i0,i1,x0,y0,x1,y1).transfer_to(*this); 2.34351 + } 2.34352 + 2.34353 + CImgList<T> get_crop(const unsigned int i0, const unsigned int i1, 2.34354 + const int x0, const int y0, 2.34355 + const int x1, const int y1) const { 2.34356 + if (i0>i1 || i1>=size) 2.34357 + throw CImgArgumentException("CImgList<%s>::crop() : Cannot crop a sub-list (%u->%u) from a list (%u,%p)", 2.34358 + pixel_type(),i0,i1,size,data); 2.34359 + CImgList<T> res(i1-i0+1); 2.34360 + cimglist_for(res,l) res[l] = (*this)[i0+l].get_crop(x0,y0,x1,y1); 2.34361 + return res; 2.34362 + } 2.34363 + 2.34364 + //! Get sub-images of a sublist. 2.34365 + CImgList<T>& crop(const unsigned int i0, const unsigned int i1, 2.34366 + const int x0, const int x1) { 2.34367 + return get_crop(i0,i1,x0,x1).transfer_to(*this); 2.34368 + } 2.34369 + 2.34370 + CImgList<T> get_crop(const unsigned int i0, const unsigned int i1, 2.34371 + const int x0, const int x1) const { 2.34372 + if (i0>i1 || i1>=size) 2.34373 + throw CImgArgumentException("CImgList<%s>::crop() : Cannot crop a sub-list (%u->%u) from a list (%u,%p)", 2.34374 + pixel_type(),i0,i1,size,data); 2.34375 + CImgList<T> res(i1-i0+1); 2.34376 + cimglist_for(res,l) res[l] = (*this)[i0+l].get_crop(x0,x1); 2.34377 + return res; 2.34378 + } 2.34379 + 2.34380 + //! Display an image list into a CImgDisplay. 2.34381 + const CImgList<T>& operator>>(CImgDisplay& disp) const { 2.34382 + return display(disp); 2.34383 + } 2.34384 + 2.34385 + //! Insert image \p img at the end of the list. 2.34386 + template<typename t> 2.34387 + CImgList<T>& push_back(const CImg<t>& img) { 2.34388 + return insert(img); 2.34389 + } 2.34390 + 2.34391 + //! Insert image \p img at the front of the list. 2.34392 + template<typename t> 2.34393 + CImgList<T>& push_front(const CImg<t>& img) { 2.34394 + return insert(img,0); 2.34395 + } 2.34396 + 2.34397 + //! Insert list \p list at the end of the current list. 2.34398 + template<typename t> 2.34399 + CImgList<T>& push_back(const CImgList<t>& list) { 2.34400 + return insert(list); 2.34401 + } 2.34402 + 2.34403 + //! Insert list \p list at the front of the current list. 2.34404 + template<typename t> 2.34405 + CImgList<T>& push_front(const CImgList<t>& list) { 2.34406 + return insert(list,0); 2.34407 + } 2.34408 + 2.34409 + //! Remove last element of the list. 2.34410 + CImgList<T>& pop_back() { 2.34411 + return remove(size-1); 2.34412 + } 2.34413 + 2.34414 + //! Remove first element of the list. 2.34415 + CImgList<T>& pop_front() { 2.34416 + return remove(0); 2.34417 + } 2.34418 + 2.34419 + //! Remove the element pointed by iterator \p iter. 2.34420 + CImgList<T>& erase(const iterator iter) { 2.34421 + return remove(iter-data); 2.34422 + } 2.34423 + 2.34424 + //@} 2.34425 + //---------------------------- 2.34426 + // 2.34427 + //! \name Fourier Transforms 2.34428 + //@{ 2.34429 + //---------------------------- 2.34430 + 2.34431 + //! Compute the Fast Fourier Transform (along the specified axis). 2.34432 + CImgList<T>& FFT(const char axis, const bool invert=false) { 2.34433 + if (is_empty()) 2.34434 + throw CImgInstanceException("CImgList<%s>::FFT() : Instance list (%u,%p) is empty", 2.34435 + pixel_type(),size,data); 2.34436 + if (!data[0]) 2.34437 + throw CImgInstanceException("CImgList<%s>::FFT() : Real part (%u,%u,%u,%u,%p) is empty", 2.34438 + pixel_type(),data[0].width,data[0].height,data[0].depth,data[0].dim,data[0].data); 2.34439 + if (size>2) 2.34440 + cimg::warn("CImgList<%s>::FFT() : Instance list (%u,%p) have more than 2 images", 2.34441 + pixel_type(),size,data); 2.34442 + if (size==1) insert(CImg<T>(data[0].width,data[0].height,data[0].depth,data[0].dim,0)); 2.34443 + CImg<T> &Ir = data[0], &Ii = data[1]; 2.34444 + if (Ir.width!=Ii.width || Ir.height!=Ii.height || Ir.depth!=Ii.depth || Ir.dim!=Ii.dim) 2.34445 + throw CImgInstanceException("CImgList<%s>::FFT() : Real part (%u,%u,%u,%u,%p) and imaginary part (%u,%u,%u,%u,%p)" 2.34446 + "have different dimensions", 2.34447 + pixel_type(),Ir.width,Ir.height,Ir.depth,Ir.dim,Ir.data,Ii.width,Ii.height,Ii.depth,Ii.dim,Ii.data); 2.34448 + 2.34449 +#ifdef cimg_use_fftw3 2.34450 + fftw_complex *data_in; 2.34451 + fftw_plan data_plan; 2.34452 + 2.34453 + switch (cimg::uncase(axis)) { 2.34454 + case 'x' : { 2.34455 + data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex)*Ir.width); 2.34456 + data_plan = fftw_plan_dft_1d(Ir.width,data_in,data_in,invert?FFTW_BACKWARD:FFTW_FORWARD,FFTW_ESTIMATE); 2.34457 + cimg_forYZV(Ir,y,z,k) { 2.34458 + T *ptrr = Ir.ptr(0,y,z,k), *ptri = Ii.ptr(0,y,z,k); 2.34459 + double *ptrd = (double*)data_in; 2.34460 + cimg_forX(Ir,x) { *(ptrd++) = (double)*(ptrr++); *(ptrd++) = (double)*(ptri++); } 2.34461 + fftw_execute(data_plan); 2.34462 + const unsigned int fact = Ir.width; 2.34463 + if (invert) { cimg_forX(Ir,x) { *(--ptri) = (T)(*(--ptrd)/fact); *(--ptrr) = (T)(*(--ptrd)/fact); }} 2.34464 + else { cimg_forX(Ir,x) { *(--ptri) = (T)*(--ptrd); *(--ptrr) = (T)*(--ptrd); }} 2.34465 + } 2.34466 + } break; 2.34467 + 2.34468 + case 'y' : { 2.34469 + data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * Ir.height); 2.34470 + data_plan = fftw_plan_dft_1d(Ir.height,data_in,data_in,invert?FFTW_BACKWARD:FFTW_FORWARD,FFTW_ESTIMATE); 2.34471 + const unsigned int off = Ir.width; 2.34472 + cimg_forXZV(Ir,x,z,k) { 2.34473 + T *ptrr = Ir.ptr(x,0,z,k), *ptri = Ii.ptr(x,0,z,k); 2.34474 + double *ptrd = (double*)data_in; 2.34475 + cimg_forY(Ir,y) { *(ptrd++) = (double)*ptrr; *(ptrd++) = (double)*ptri; ptrr+=off; ptri+=off; } 2.34476 + fftw_execute(data_plan); 2.34477 + const unsigned int fact = Ir.height; 2.34478 + if (invert) { cimg_forY(Ir,y) { ptrr-=off; ptri-=off; *ptri = (T)(*(--ptrd)/fact); *ptrr = (T)(*(--ptrd)/fact); }} 2.34479 + else { cimg_forY(Ir,y) { ptrr-=off; ptri-=off; *ptri = (T)*(--ptrd); *ptrr = (T)*(--ptrd); }} 2.34480 + } 2.34481 + } break; 2.34482 + 2.34483 + case 'z' : { 2.34484 + data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * Ir.depth); 2.34485 + data_plan = fftw_plan_dft_1d(Ir.depth,data_in,data_in,invert?FFTW_BACKWARD:FFTW_FORWARD,FFTW_ESTIMATE); 2.34486 + const unsigned int off = Ir.width*Ir.height; 2.34487 + cimg_forXYV(Ir,x,y,k) { 2.34488 + T *ptrr = Ir.ptr(x,y,0,k), *ptri = Ii.ptr(x,y,0,k); 2.34489 + double *ptrd = (double*)data_in; 2.34490 + cimg_forZ(Ir,z) { *(ptrd++) = (double)*ptrr; *(ptrd++) = (double)*ptri; ptrr+=off; ptri+=off; } 2.34491 + fftw_execute(data_plan); 2.34492 + const unsigned int fact = Ir.depth; 2.34493 + if (invert) { cimg_forZ(Ir,z) { ptrr-=off; ptri-=off; *ptri = (T)(*(--ptrd)/fact); *ptrr = (T)(*(--ptrd)/fact); }} 2.34494 + else { cimg_forZ(Ir,z) { ptrr-=off; ptri-=off; *ptri = (T)*(--ptrd); *ptrr = (T)*(--ptrd); }} 2.34495 + } 2.34496 + } break; 2.34497 + 2.34498 + case 'v' : { 2.34499 + data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * Ir.dim); 2.34500 + data_plan = fftw_plan_dft_1d(Ir.dim,data_in,data_in,invert?FFTW_BACKWARD:FFTW_FORWARD,FFTW_ESTIMATE); 2.34501 + const unsigned int off = Ir.width*Ir.height*Ir.depth; 2.34502 + cimg_forXYZ(Ir,x,y,z) { 2.34503 + T *ptrr = Ir.ptr(x,y,z,0), *ptri = Ii.ptr(x,y,z,0); 2.34504 + double *ptrd = (double*)data_in; 2.34505 + cimg_forV(Ir,k) { *(ptrd++) = (double)*ptrr; *(ptrd++) = (double)*ptri; ptrr+=off; ptri+=off; } 2.34506 + fftw_execute(data_plan); 2.34507 + const unsigned int fact = Ir.dim; 2.34508 + if (invert) { cimg_forV(Ir,k) { ptrr-=off; ptri-=off; *ptri = (T)(*(--ptrd)/fact); *ptrr = (T)(*(--ptrd)/fact); }} 2.34509 + else { cimg_forV(Ir,k) { ptrr-=off; ptri-=off; *ptri = (T)*(--ptrd); *ptrr = (T)*(--ptrd); }} 2.34510 + } 2.34511 + } break; 2.34512 + } 2.34513 + 2.34514 + fftw_destroy_plan(data_plan); 2.34515 + fftw_free(data_in); 2.34516 +#else 2.34517 + switch (cimg::uncase(axis)) { 2.34518 + case 'x' : { // Fourier along X 2.34519 + const unsigned int N = Ir.width, N2 = (N>>1); 2.34520 + if (((N-1)&N) && N!=1) 2.34521 + throw CImgInstanceException("CImgList<%s>::FFT() : Dimension of instance image along 'x' is %d != 2^N", 2.34522 + pixel_type(),N); 2.34523 + for (unsigned int i=0, j=0; i<N2; ++i) { 2.34524 + if (j>i) cimg_forYZV(Ir,y,z,v) { cimg::swap(Ir(i,y,z,v),Ir(j,y,z,v)); cimg::swap(Ii(i,y,z,v),Ii(j,y,z,v)); 2.34525 + if (j<N2) { 2.34526 + const unsigned int ri = N-1-i, rj = N-1-j; 2.34527 + cimg::swap(Ir(ri,y,z,v),Ir(rj,y,z,v)); cimg::swap(Ii(ri,y,z,v),Ii(rj,y,z,v)); 2.34528 + }} 2.34529 + for (unsigned int m=N, n=N2; (j+=n)>=m; j-=m, m=n, n>>=1) {} 2.34530 + } 2.34531 + for (unsigned int delta=2; delta<=N; delta<<=1) { 2.34532 + const unsigned int delta2 = (delta>>1); 2.34533 + for (unsigned int i=0; i<N; i+=delta) { 2.34534 + float wr = 1, wi = 0; 2.34535 + const float angle = (float)((invert?+1:-1)*2*cimg::valuePI/delta), 2.34536 + ca = (float)cimg_std::cos(angle), 2.34537 + sa = (float)cimg_std::sin(angle); 2.34538 + for (unsigned int k=0; k<delta2; ++k) { 2.34539 + const unsigned int j = i + k, nj = j + delta2; 2.34540 + cimg_forYZV(Ir,y,z,k) { 2.34541 + T &ir = Ir(j,y,z,k), &ii = Ii(j,y,z,k), &nir = Ir(nj,y,z,k), &nii = Ii(nj,y,z,k); 2.34542 + const float tmpr = (float)(wr*nir - wi*nii), tmpi = (float)(wr*nii + wi*nir); 2.34543 + nir = (T)(ir - tmpr); 2.34544 + nii = (T)(ii - tmpi); 2.34545 + ir += (T)tmpr; 2.34546 + ii += (T)tmpi; 2.34547 + } 2.34548 + const float nwr = wr*ca-wi*sa; 2.34549 + wi = wi*ca + wr*sa; 2.34550 + wr = nwr; 2.34551 + } 2.34552 + } 2.34553 + } 2.34554 + if (invert) (*this)/=N; 2.34555 + } break; 2.34556 + 2.34557 + case 'y' : { // Fourier along Y 2.34558 + const unsigned int N = Ir.height, N2 = (N>>1); 2.34559 + if (((N-1)&N) && N!=1) 2.34560 + throw CImgInstanceException("CImgList<%s>::FFT() : Dimension of instance image(s) along 'y' is %d != 2^N", 2.34561 + pixel_type(),N); 2.34562 + for (unsigned int i=0, j=0; i<N2; ++i) { 2.34563 + if (j>i) cimg_forXZV(Ir,x,z,v) { cimg::swap(Ir(x,i,z,v),Ir(x,j,z,v)); cimg::swap(Ii(x,i,z,v),Ii(x,j,z,v)); 2.34564 + if (j<N2) { 2.34565 + const unsigned int ri = N-1-i, rj = N-1-j; 2.34566 + cimg::swap(Ir(x,ri,z,v),Ir(x,rj,z,v)); cimg::swap(Ii(x,ri,z,v),Ii(x,rj,z,v)); 2.34567 + }} 2.34568 + for (unsigned int m=N, n=N2; (j+=n)>=m; j-=m, m=n, n>>=1) {} 2.34569 + } 2.34570 + for (unsigned int delta=2; delta<=N; delta<<=1) { 2.34571 + const unsigned int delta2 = (delta>>1); 2.34572 + for (unsigned int i=0; i<N; i+=delta) { 2.34573 + float wr = 1, wi = 0; 2.34574 + const float angle = (float)((invert?+1:-1)*2*cimg::valuePI/delta), 2.34575 + ca = (float)cimg_std::cos(angle), sa = (float)cimg_std::sin(angle); 2.34576 + for (unsigned int k=0; k<delta2; ++k) { 2.34577 + const unsigned int j = i + k, nj = j + delta2; 2.34578 + cimg_forXZV(Ir,x,z,k) { 2.34579 + T &ir = Ir(x,j,z,k), &ii = Ii(x,j,z,k), &nir = Ir(x,nj,z,k), &nii = Ii(x,nj,z,k); 2.34580 + const float tmpr = (float)(wr*nir - wi*nii), tmpi = (float)(wr*nii + wi*nir); 2.34581 + nir = (T)(ir - tmpr); 2.34582 + nii = (T)(ii - tmpi); 2.34583 + ir += (T)tmpr; 2.34584 + ii += (T)tmpi; 2.34585 + } 2.34586 + const float nwr = wr*ca-wi*sa; 2.34587 + wi = wi*ca + wr*sa; 2.34588 + wr = nwr; 2.34589 + } 2.34590 + } 2.34591 + } 2.34592 + if (invert) (*this)/=N; 2.34593 + } break; 2.34594 + 2.34595 + case 'z' : { // Fourier along Z 2.34596 + const unsigned int N = Ir.depth, N2 = (N>>1); 2.34597 + if (((N-1)&N) && N!=1) 2.34598 + throw CImgInstanceException("CImgList<%s>::FFT() : Dimension of instance image(s) along 'z' is %d != 2^N", 2.34599 + pixel_type(),N); 2.34600 + for (unsigned int i=0, j=0; i<N2; ++i) { 2.34601 + if (j>i) cimg_forXYV(Ir,x,y,v) { cimg::swap(Ir(x,y,i,v),Ir(x,y,j,v)); cimg::swap(Ii(x,y,i,v),Ii(x,y,j,v)); 2.34602 + if (j<N2) { 2.34603 + const unsigned int ri = N-1-i, rj = N-1-j; 2.34604 + cimg::swap(Ir(x,y,ri,v),Ir(x,y,rj,v)); cimg::swap(Ii(x,y,ri,v),Ii(x,y,rj,v)); 2.34605 + }} 2.34606 + for (unsigned int m=N, n=N2; (j+=n)>=m; j-=m, m=n, n>>=1) {} 2.34607 + } 2.34608 + for (unsigned int delta=2; delta<=N; delta<<=1) { 2.34609 + const unsigned int delta2 = (delta>>1); 2.34610 + for (unsigned int i=0; i<N; i+=delta) { 2.34611 + float wr = 1, wi = 0; 2.34612 + const float angle = (float)((invert?+1:-1)*2*cimg::valuePI/delta), 2.34613 + ca = (float)cimg_std::cos(angle), sa = (float)cimg_std::sin(angle); 2.34614 + for (unsigned int k=0; k<delta2; ++k) { 2.34615 + const unsigned int j = i + k, nj = j + delta2; 2.34616 + cimg_forXYV(Ir,x,y,k) { 2.34617 + T &ir = Ir(x,y,j,k), &ii = Ii(x,y,j,k), &nir = Ir(x,y,nj,k), &nii = Ii(x,y,nj,k); 2.34618 + const float tmpr = (float)(wr*nir - wi*nii), tmpi = (float)(wr*nii + wi*nir); 2.34619 + nir = (T)(ir - tmpr); 2.34620 + nii = (T)(ii - tmpi); 2.34621 + ir += (T)tmpr; 2.34622 + ii += (T)tmpi; 2.34623 + } 2.34624 + const float nwr = wr*ca-wi*sa; 2.34625 + wi = wi*ca + wr*sa; 2.34626 + wr = nwr; 2.34627 + } 2.34628 + } 2.34629 + } 2.34630 + if (invert) (*this)/=N; 2.34631 + } break; 2.34632 + 2.34633 + default : 2.34634 + throw CImgArgumentException("CImgList<%s>::FFT() : Invalid axis '%c', must be 'x','y' or 'z'."); 2.34635 + } 2.34636 +#endif 2.34637 + return *this; 2.34638 + } 2.34639 + 2.34640 + CImgList<Tfloat> get_FFT(const char axis, const bool invert=false) const { 2.34641 + return CImgList<Tfloat>(*this).FFT(axis,invert); 2.34642 + } 2.34643 + 2.34644 + //! Compute the Fast Fourier Transform of a complex image. 2.34645 + CImgList<T>& FFT(const bool invert=false) { 2.34646 + if (is_empty()) 2.34647 + throw CImgInstanceException("CImgList<%s>::FFT() : Instance list (%u,%p) is empty", 2.34648 + pixel_type(),size,data); 2.34649 + if (size>2) 2.34650 + cimg::warn("CImgList<%s>::FFT() : Instance list (%u,%p) have more than 2 images", 2.34651 + pixel_type(),size,data); 2.34652 + if (size==1) insert(CImg<T>(data->width,data->height,data->depth,data->dim,0)); 2.34653 + CImg<T> &Ir = data[0], &Ii = data[1]; 2.34654 + if (Ii.width!=Ir.width || Ii.height!=Ir.height || Ii.depth!=Ir.depth || Ii.dim!=Ir.dim) 2.34655 + throw CImgInstanceException("CImgList<%s>::FFT() : Real (%u,%u,%u,%u,%p) and Imaginary (%u,%u,%u,%u,%p) parts " 2.34656 + "of the instance image have different dimensions", 2.34657 + pixel_type(),Ir.width,Ir.height,Ir.depth,Ir.dim,Ir.data, 2.34658 + Ii.width,Ii.height,Ii.depth,Ii.dim,Ii.data); 2.34659 +#ifdef cimg_use_fftw3 2.34660 + fftw_complex *data_in = (fftw_complex*)fftw_malloc(sizeof(fftw_complex) * Ir.width*Ir.height*Ir.depth); 2.34661 + fftw_plan data_plan; 2.34662 + const unsigned int w = Ir.width, wh = w*Ir.height, whd = wh*Ir.depth; 2.34663 + data_plan = fftw_plan_dft_3d(Ir.width,Ir.height,Ir.depth,data_in,data_in,invert?FFTW_BACKWARD:FFTW_FORWARD,FFTW_ESTIMATE); 2.34664 + cimg_forV(Ir,k) { 2.34665 + T *ptrr = Ir.ptr(0,0,0,k), *ptri = Ii.ptr(0,0,0,k); 2.34666 + double *ptrd = (double*)data_in; 2.34667 + for (unsigned int x = 0; x<Ir.width; ++x, ptrr-=wh-1, ptri-=wh-1) 2.34668 + for (unsigned int y = 0; y<Ir.height; ++y, ptrr-=whd-w, ptri-=whd-w) 2.34669 + for (unsigned int z = 0; z<Ir.depth; ++z, ptrr+=wh, ptri+=wh) { 2.34670 + *(ptrd++) = (double)*ptrr; *(ptrd++) = (double)*ptri; 2.34671 + } 2.34672 + fftw_execute(data_plan); 2.34673 + ptrd = (double*)data_in; 2.34674 + ptrr = Ir.ptr(0,0,0,k); 2.34675 + ptri = Ii.ptr(0,0,0,k); 2.34676 + if (!invert) for (unsigned int x = 0; x<Ir.width; ++x, ptrr-=wh-1, ptri-=wh-1) 2.34677 + for (unsigned int y = 0; y<Ir.height; ++y, ptrr-=whd-w, ptri-=whd-w) 2.34678 + for (unsigned int z = 0; z<Ir.depth; ++z, ptrr+=wh, ptri+=wh) { 2.34679 + *ptrr = (T)*(ptrd++); *ptri = (T)*(ptrd++); 2.34680 + } 2.34681 + else for (unsigned int x = 0; x<Ir.width; ++x, ptrr-=wh-1, ptri-=wh-1) 2.34682 + for (unsigned int y = 0; y<Ir.height; ++y, ptrr-=whd-w, ptri-=whd-w) 2.34683 + for (unsigned int z = 0; z<Ir.depth; ++z, ptrr+=wh, ptri+=wh) { 2.34684 + *ptrr = (T)(*(ptrd++)/whd); *ptri = (T)(*(ptrd++)/whd); 2.34685 + } 2.34686 + } 2.34687 + fftw_destroy_plan(data_plan); 2.34688 + fftw_free(data_in); 2.34689 +#else 2.34690 + if (Ir.depth>1) FFT('z',invert); 2.34691 + if (Ir.height>1) FFT('y',invert); 2.34692 + if (Ir.width>1) FFT('x',invert); 2.34693 +#endif 2.34694 + return *this; 2.34695 + } 2.34696 + 2.34697 + CImgList<Tfloat> get_FFT(const bool invert=false) const { 2.34698 + return CImgList<Tfloat>(*this).FFT(invert); 2.34699 + } 2.34700 + 2.34701 + // Return a list where each image has been split along the specified axis. 2.34702 + CImgList<T>& split(const char axis) { 2.34703 + return get_split(axis).transfer_to(*this); 2.34704 + } 2.34705 + 2.34706 + CImgList<T> get_split(const char axis) const { 2.34707 + CImgList<T> res; 2.34708 + cimglist_for(*this,l) { 2.34709 + CImgList<T> tmp = data[l].get_split(axis); 2.34710 + const unsigned int pos = res.size; 2.34711 + res.insert(tmp.size); 2.34712 + cimglist_for(tmp,i) tmp[i].transfer_to(data[pos+i]); 2.34713 + } 2.34714 + return res; 2.34715 + } 2.34716 + 2.34717 + //! Return a single image which is the concatenation of all images of the current CImgList instance. 2.34718 + /** 2.34719 + \param axis : specify the axis for image concatenation. Can be 'x','y','z' or 'v'. 2.34720 + \param align : specify the alignment for image concatenation. Can be 'p' (top), 'c' (center) or 'n' (bottom). 2.34721 + \return A CImg<T> image corresponding to the concatenation is returned. 2.34722 + **/ 2.34723 + CImg<T> get_append(const char axis, const char align='p') const { 2.34724 + if (is_empty()) return CImg<T>(); 2.34725 + if (size==1) return +((*this)[0]); 2.34726 + unsigned int dx = 0, dy = 0, dz = 0, dv = 0, pos = 0; 2.34727 + CImg<T> res; 2.34728 + switch (cimg::uncase(axis)) { 2.34729 + case 'x' : { 2.34730 + switch (cimg::uncase(align)) { 2.34731 + case 'x' : { dy = dz = dv = 1; cimglist_for(*this,l) dx+=(*this)[l].size(); } break; 2.34732 + case 'y' : { dx = size; dz = dv = 1; cimglist_for(*this,l) dy = cimg::max(dy,(unsigned int)(*this)[l].size()); } break; 2.34733 + case 'z' : { dx = size; dy = dv = 1; cimglist_for(*this,l) dz = cimg::max(dz,(unsigned int)(*this)[l].size()); } break; 2.34734 + case 'v' : { dx = size; dy = dz = 1; cimglist_for(*this,l) dv = cimg::max(dz,(unsigned int)(*this)[l].size()); } break; 2.34735 + default : 2.34736 + cimglist_for(*this,l) { 2.34737 + const CImg<T>& img = (*this)[l]; 2.34738 + dx += img.width; 2.34739 + dy = cimg::max(dy,img.height); 2.34740 + dz = cimg::max(dz,img.depth); 2.34741 + dv = cimg::max(dv,img.dim); 2.34742 + } 2.34743 + } 2.34744 + res.assign(dx,dy,dz,dv,0); 2.34745 + switch (cimg::uncase(align)) { 2.34746 + case 'x' : { 2.34747 + cimglist_for(*this,l) { 2.34748 + res.draw_image(pos,CImg<T>((*this)[l],true).unroll('x')); 2.34749 + pos+=(*this)[l].size(); 2.34750 + } 2.34751 + } break; 2.34752 + case 'y' : { 2.34753 + cimglist_for(*this,l) res.draw_image(pos++,CImg<T>((*this)[l],true).unroll('y')); 2.34754 + } break; 2.34755 + case 'z' : { 2.34756 + cimglist_for(*this,l) res.draw_image(pos++,CImg<T>((*this)[l],true).unroll('z')); 2.34757 + } break; 2.34758 + case 'v' : { 2.34759 + cimglist_for(*this,l) res.draw_image(pos++,CImg<T>((*this)[l],true).unroll('v')); 2.34760 + } break; 2.34761 + case 'p' : { 2.34762 + cimglist_for(*this,l) { res.draw_image(pos,(*this)[l]); pos+=(*this)[l].width; } 2.34763 + } break; 2.34764 + case 'n' : { 2.34765 + cimglist_for(*this,l) { 2.34766 + res.draw_image(pos,dy-(*this)[l].height,dz-(*this)[l].depth,dv-(*this)[l].dim,(*this)[l]); 2.34767 + pos+=(*this)[l].width; 2.34768 + } 2.34769 + } break; 2.34770 + default : { 2.34771 + cimglist_for(*this,l) { 2.34772 + res.draw_image(pos,(dy-(*this)[l].height)/2,(dz-(*this)[l].depth)/2,(dv-(*this)[l].dim)/2,(*this)[l]); 2.34773 + pos+=(*this)[l].width; 2.34774 + } 2.34775 + } break; 2.34776 + } 2.34777 + } break; 2.34778 + 2.34779 + case 'y' : { 2.34780 + switch (cimg::uncase(align)) { 2.34781 + case 'x' : { dy = size; dz = dv = 1; cimglist_for(*this,l) dx = cimg::max(dx,(unsigned int)(*this)[l].size()); } break; 2.34782 + case 'y' : { dx = dz = dv = 1; cimglist_for(*this,l) dy+=(*this)[l].size(); } break; 2.34783 + case 'z' : { dy = size; dx = dv = 1; cimglist_for(*this,l) dz = cimg::max(dz,(unsigned int)(*this)[l].size()); } break; 2.34784 + case 'v' : { dy = size; dx = dz = 1; cimglist_for(*this,l) dv = cimg::max(dv,(unsigned int)(*this)[l].size()); } break; 2.34785 + default : 2.34786 + cimglist_for(*this,l) { 2.34787 + const CImg<T>& img = (*this)[l]; 2.34788 + dx = cimg::max(dx,img.width); 2.34789 + dy += img.height; 2.34790 + dz = cimg::max(dz,img.depth); 2.34791 + dv = cimg::max(dv,img.dim); 2.34792 + } 2.34793 + } 2.34794 + res.assign(dx,dy,dz,dv,0); 2.34795 + switch (cimg::uncase(align)) { 2.34796 + case 'x' : { 2.34797 + cimglist_for(*this,l) res.draw_image(0,++pos,CImg<T>((*this)[l],true).unroll('x')); 2.34798 + } break; 2.34799 + case 'y' : { 2.34800 + cimglist_for(*this,l) { 2.34801 + res.draw_image(0,pos,CImg<T>((*this)[l],true).unroll('y')); 2.34802 + pos+=(*this)[l].size(); 2.34803 + } 2.34804 + } break; 2.34805 + case 'z' : { 2.34806 + cimglist_for(*this,l) res.draw_image(0,pos++,CImg<T>((*this)[l],true).unroll('z')); 2.34807 + } break; 2.34808 + case 'v' : { 2.34809 + cimglist_for(*this,l) res.draw_image(0,pos++,CImg<T>((*this)[l],true).unroll('v')); 2.34810 + } break; 2.34811 + case 'p' : { 2.34812 + cimglist_for(*this,l) { res.draw_image(0,pos,(*this)[l]); pos+=(*this)[l].height; } 2.34813 + } break; 2.34814 + case 'n' : { 2.34815 + cimglist_for(*this,l) { 2.34816 + res.draw_image(dx-(*this)[l].width,pos,dz-(*this)[l].depth,dv-(*this)[l].dim,(*this)[l]); 2.34817 + pos+=(*this)[l].height; 2.34818 + } 2.34819 + } break; 2.34820 + default : { 2.34821 + cimglist_for(*this,l) { 2.34822 + res.draw_image((dx-(*this)[l].width)/2,pos,(dz-(*this)[l].depth)/2,(dv-(*this)[l].dim)/2,(*this)[l]); 2.34823 + pos+=(*this)[l].height; 2.34824 + } 2.34825 + } break; 2.34826 + } 2.34827 + } break; 2.34828 + 2.34829 + case 'z' : { 2.34830 + switch (cimg::uncase(align)) { 2.34831 + case 'x' : { dz = size; dy = dv = 1; cimglist_for(*this,l) dx = cimg::max(dx,(unsigned int)(*this)[l].size()); } break; 2.34832 + case 'y' : { dz = size; dx = dv = 1; cimglist_for(*this,l) dy = cimg::max(dz,(unsigned int)(*this)[l].size()); } break; 2.34833 + case 'z' : { dx = dy = dv = 1; cimglist_for(*this,l) dz+=(*this)[l].size(); } break; 2.34834 + case 'v' : { dz = size; dx = dz = 1; cimglist_for(*this,l) dv = cimg::max(dv,(unsigned int)(*this)[l].size()); } break; 2.34835 + default : 2.34836 + cimglist_for(*this,l) { 2.34837 + const CImg<T>& img = (*this)[l]; 2.34838 + dx = cimg::max(dx,img.width); 2.34839 + dy = cimg::max(dy,img.height); 2.34840 + dz += img.depth; 2.34841 + dv = cimg::max(dv,img.dim); 2.34842 + } 2.34843 + } 2.34844 + res.assign(dx,dy,dz,dv,0); 2.34845 + switch (cimg::uncase(align)) { 2.34846 + case 'x' : { 2.34847 + cimglist_for(*this,l) res.draw_image(0,0,pos++,CImg<T>((*this)[l],true).unroll('x')); 2.34848 + } break; 2.34849 + case 'y' : { 2.34850 + cimglist_for(*this,l) res.draw_image(0,0,pos++,CImg<T>((*this)[l],true).unroll('y')); 2.34851 + } break; 2.34852 + case 'z' : { 2.34853 + cimglist_for(*this,l) { 2.34854 + res.draw_image(0,0,pos,CImg<T>((*this)[l],true).unroll('z')); 2.34855 + pos+=(*this)[l].size(); 2.34856 + } 2.34857 + } break; 2.34858 + case 'v' : { 2.34859 + cimglist_for(*this,l) res.draw_image(0,0,pos++,CImg<T>((*this)[l],true).unroll('v')); 2.34860 + } break; 2.34861 + case 'p' : { 2.34862 + cimglist_for(*this,l) { res.draw_image(0,0,pos,(*this)[l]); pos+=(*this)[l].depth; } 2.34863 + } break; 2.34864 + case 'n' : { 2.34865 + cimglist_for(*this,l) { 2.34866 + res.draw_image(dx-(*this)[l].width,dy-(*this)[l].height,pos,dv-(*this)[l].dim,(*this)[l]); 2.34867 + pos+=(*this)[l].depth; 2.34868 + } 2.34869 + } break; 2.34870 + case 'c' : { 2.34871 + cimglist_for(*this,l) { 2.34872 + res.draw_image((dx-(*this)[l].width)/2,(dy-(*this)[l].height)/2,pos,(dv-(*this)[l].dim)/2,(*this)[l]); 2.34873 + pos+=(*this)[l].depth; 2.34874 + } 2.34875 + } break; 2.34876 + } 2.34877 + } break; 2.34878 + 2.34879 + case 'v' : { 2.34880 + switch (cimg::uncase(align)) { 2.34881 + case 'x' : { dv = size; dy = dv = 1; cimglist_for(*this,l) dx = cimg::max(dx,(unsigned int)(*this)[l].size()); } break; 2.34882 + case 'y' : { dv = size; dx = dv = 1; cimglist_for(*this,l) dy = cimg::max(dz,(unsigned int)(*this)[l].size()); } break; 2.34883 + case 'z' : { dv = size; dx = dv = 1; cimglist_for(*this,l) dz = cimg::max(dv,(unsigned int)(*this)[l].size()); } break; 2.34884 + case 'v' : { dx = dy = dz = 1; cimglist_for(*this,l) dv+=(*this)[l].size(); } break; 2.34885 + default : 2.34886 + cimglist_for(*this,l) { 2.34887 + const CImg<T>& img = (*this)[l]; 2.34888 + dx = cimg::max(dx,img.width); 2.34889 + dy = cimg::max(dy,img.height); 2.34890 + dz = cimg::max(dz,img.depth); 2.34891 + dv += img.dim; 2.34892 + } 2.34893 + } 2.34894 + res.assign(dx,dy,dz,dv,0); 2.34895 + switch (cimg::uncase(align)) { 2.34896 + case 'x' : { 2.34897 + cimglist_for(*this,l) res.draw_image(0,0,0,pos++,CImg<T>((*this)[l],true).unroll('x')); 2.34898 + } break; 2.34899 + case 'y' : { 2.34900 + cimglist_for(*this,l) res.draw_image(0,0,0,pos++,CImg<T>((*this)[l],true).unroll('y')); 2.34901 + } break; 2.34902 + case 'z' : { 2.34903 + cimglist_for(*this,l) res.draw_image(0,0,0,pos++,CImg<T>((*this)[l],true).unroll('v')); 2.34904 + } break; 2.34905 + case 'v' : { 2.34906 + cimglist_for(*this,l) { 2.34907 + res.draw_image(0,0,0,pos,CImg<T>((*this)[l],true).unroll('z')); 2.34908 + pos+=(*this)[l].size(); 2.34909 + } 2.34910 + } break; 2.34911 + case 'p' : { 2.34912 + cimglist_for(*this,l) { res.draw_image(0,0,0,pos,(*this)[l]); pos+=(*this)[l].dim; } 2.34913 + } break; 2.34914 + case 'n' : { 2.34915 + cimglist_for(*this,l) { 2.34916 + res.draw_image(dx-(*this)[l].width,dy-(*this)[l].height,dz-(*this)[l].depth,pos,(*this)[l]); 2.34917 + pos+=(*this)[l].dim; 2.34918 + } 2.34919 + } break; 2.34920 + case 'c' : { 2.34921 + cimglist_for(*this,l) { 2.34922 + res.draw_image((dx-(*this)[l].width)/2,(dy-(*this)[l].height)/2,(dz-(*this)[l].depth)/2,pos,(*this)[l]); 2.34923 + pos+=(*this)[l].dim; 2.34924 + } 2.34925 + } break; 2.34926 + } 2.34927 + } break; 2.34928 + default : 2.34929 + throw CImgArgumentException("CImgList<%s>::get_append() : unknow axis '%c', must be 'x','y','z' or 'v'", 2.34930 + pixel_type(),axis); 2.34931 + } 2.34932 + return res; 2.34933 + } 2.34934 + 2.34935 + //! Create an auto-cropped font (along the X axis) from a input font \p font. 2.34936 + CImgList<T>& crop_font() { 2.34937 + return get_crop_font().transfer_to(*this); 2.34938 + } 2.34939 + 2.34940 + CImgList<T> get_crop_font() const { 2.34941 + CImgList<T> res; 2.34942 + cimglist_for(*this,l) { 2.34943 + const CImg<T>& letter = (*this)[l]; 2.34944 + int xmin = letter.width, xmax = 0; 2.34945 + cimg_forXY(letter,x,y) if (letter(x,y)) { if (x<xmin) xmin=x; if (x>xmax) xmax=x; } 2.34946 + if (xmin>xmax) res.insert(CImg<T>(letter.width,letter.height,1,letter.dim,0)); 2.34947 + else res.insert(letter.get_crop(xmin,0,xmax,letter.height-1)); 2.34948 + } 2.34949 + res[' '].resize(res['f'].width); 2.34950 + res[' '+256].resize(res['f'].width); 2.34951 + return res; 2.34952 + } 2.34953 + 2.34954 + //! Invert primitives orientation of a 3D object. 2.34955 + CImgList<T>& invert_object3d() { 2.34956 + cimglist_for(*this,l) { 2.34957 + CImg<T>& p = data[l]; 2.34958 + const unsigned int siz = p.size(); 2.34959 + if (siz==2 || siz==3 || siz==6 || siz==9) cimg::swap(p[0],p[1]); 2.34960 + else if (siz==4 || siz==12) cimg::swap(p[0],p[3],p[1],p[2]); 2.34961 + } 2.34962 + return *this; 2.34963 + } 2.34964 + 2.34965 + CImgList<T> get_invert_object3d() const { 2.34966 + return (+*this).invert_object3d(); 2.34967 + } 2.34968 + 2.34969 + //! Return a CImg pre-defined font with desired size. 2.34970 + /** 2.34971 + \param font_height = height of the desired font (can be 11,13,24,38 or 57) 2.34972 + \param fixed_size = tell if the font has a fixed or variable width. 2.34973 + **/ 2.34974 + static CImgList<T> font(const unsigned int font_width, const bool variable_size=true) { 2.34975 + if (font_width<=11) { 2.34976 + static CImgList<T> font7x11, nfont7x11; 2.34977 + if (!variable_size && !font7x11) font7x11 = _font(cimg::font7x11,7,11,1,0,false); 2.34978 + if (variable_size && !nfont7x11) nfont7x11 = _font(cimg::font7x11,7,11,1,0,true); 2.34979 + return variable_size?nfont7x11:font7x11; 2.34980 + } 2.34981 + if (font_width<=13) { 2.34982 + static CImgList<T> font10x13, nfont10x13; 2.34983 + if (!variable_size && !font10x13) font10x13 = _font(cimg::font10x13,10,13,1,0,false); 2.34984 + if (variable_size && !nfont10x13) nfont10x13 = _font(cimg::font10x13,10,13,1,0,true); 2.34985 + return variable_size?nfont10x13:font10x13; 2.34986 + } 2.34987 + if (font_width<=17) { 2.34988 + static CImgList<T> font8x17, nfont8x17; 2.34989 + if (!variable_size && !font8x17) font8x17 = _font(cimg::font8x17,8,17,1,0,false); 2.34990 + if (variable_size && !nfont8x17) nfont8x17 = _font(cimg::font8x17,8,17,1,0,true); 2.34991 + return variable_size?nfont8x17:font8x17; 2.34992 + } 2.34993 + if (font_width<=19) { 2.34994 + static CImgList<T> font10x19, nfont10x19; 2.34995 + if (!variable_size && !font10x19) font10x19 = _font(cimg::font10x19,10,19,2,0,false); 2.34996 + if (variable_size && !nfont10x19) nfont10x19 = _font(cimg::font10x19,10,19,2,0,true); 2.34997 + return variable_size?nfont10x19:font10x19; 2.34998 + } 2.34999 + if (font_width<=24) { 2.35000 + static CImgList<T> font12x24, nfont12x24; 2.35001 + if (!variable_size && !font12x24) font12x24 = _font(cimg::font12x24,12,24,2,0,false); 2.35002 + if (variable_size && !nfont12x24) nfont12x24 = _font(cimg::font12x24,12,24,2,0,true); 2.35003 + return variable_size?nfont12x24:font12x24; 2.35004 + } 2.35005 + if (font_width<=32) { 2.35006 + static CImgList<T> font16x32, nfont16x32; 2.35007 + if (!variable_size && !font16x32) font16x32 = _font(cimg::font16x32,16,32,2,0,false); 2.35008 + if (variable_size && !nfont16x32) nfont16x32 = _font(cimg::font16x32,16,32,2,0,true); 2.35009 + return variable_size?nfont16x32:font16x32; 2.35010 + } 2.35011 + if (font_width<=38) { 2.35012 + static CImgList<T> font19x38, nfont19x38; 2.35013 + if (!variable_size && !font19x38) font19x38 = _font(cimg::font19x38,19,38,3,0,false); 2.35014 + if (variable_size && !nfont19x38) nfont19x38 = _font(cimg::font19x38,19,38,3,0,true); 2.35015 + return variable_size?nfont19x38:font19x38; 2.35016 + } 2.35017 + static CImgList<T> font29x57, nfont29x57; 2.35018 + if (!variable_size && !font29x57) font29x57 = _font(cimg::font29x57,29,57,5,0,false); 2.35019 + if (variable_size && !nfont29x57) nfont29x57 = _font(cimg::font29x57,29,57,5,0,true); 2.35020 + return variable_size?nfont29x57:font29x57; 2.35021 + } 2.35022 + 2.35023 + static CImgList<T> _font(const unsigned int *const font, const unsigned int w, const unsigned int h, 2.35024 + const unsigned int paddingx, const unsigned int paddingy, const bool variable_size=true) { 2.35025 + CImgList<T> res = CImgList<T>(256,w,h,1,3).insert(CImgList<T>(256,w,h,1,1)); 2.35026 + const unsigned int *ptr = font; 2.35027 + unsigned int m = 0, val = 0; 2.35028 + for (unsigned int y=0; y<h; ++y) 2.35029 + for (unsigned int x=0; x<256*w; ++x) { 2.35030 + m>>=1; if (!m) { m = 0x80000000; val = *(ptr++); } 2.35031 + CImg<T>& img = res[x/w], &mask = res[x/w+256]; 2.35032 + unsigned int xm = x%w; 2.35033 + img(xm,y,0) = img(xm,y,1) = img(xm,y,2) = mask(xm,y,0) = (T)((val&m)?1:0); 2.35034 + } 2.35035 + if (variable_size) res.crop_font(); 2.35036 + if (paddingx || paddingy) cimglist_for(res,l) res[l].resize(res[l].dimx()+paddingx, res[l].dimy()+paddingy,1,-100,0); 2.35037 + return res; 2.35038 + } 2.35039 + 2.35040 + //! Display the current CImgList instance in an existing CImgDisplay window (by reference). 2.35041 + /** 2.35042 + This function displays the list images of the current CImgList instance into an existing CImgDisplay window. 2.35043 + Images of the list are concatenated in a single temporarly image for visualization purposes. 2.35044 + The function returns immediately. 2.35045 + \param disp : reference to an existing CImgDisplay instance, where the current image list will be displayed. 2.35046 + \param axis : specify the axis for image concatenation. Can be 'x','y','z' or 'v'. 2.35047 + \param align : specify the alignment for image concatenation. Can be 'p' (top), 'c' (center) or 'n' (bottom). 2.35048 + \return A reference to the current CImgList instance is returned. 2.35049 + **/ 2.35050 + const CImgList<T>& display(CImgDisplay& disp, const char axis='x', const char align='p') const { 2.35051 + get_append(axis,align).display(disp); 2.35052 + return *this; 2.35053 + } 2.35054 + 2.35055 + //! Display the current CImgList instance in a new display window. 2.35056 + /** 2.35057 + This function opens a new window with a specific title and displays the list images of the current CImgList instance into it. 2.35058 + Images of the list are concatenated in a single temporarly image for visualization purposes. 2.35059 + The function returns when a key is pressed or the display window is closed by the user. 2.35060 + \param title : specify the title of the opening display window. 2.35061 + \param axis : specify the axis for image concatenation. Can be 'x','y','z' or 'v'. 2.35062 + \param align : specify the alignment for image concatenation. Can be 'p' (top), 'c' (center) or 'n' (bottom). 2.35063 + \return A reference to the current CImgList instance is returned. 2.35064 + **/ 2.35065 + const CImgList<T>& display(CImgDisplay &disp, 2.35066 + const bool display_info, const char axis='x', const char align='p') const { 2.35067 + if (is_empty()) 2.35068 + throw CImgInstanceException("CImgList<%s>::display() : Instance list (%u,%u) is empty.", 2.35069 + pixel_type(),size,data); 2.35070 + const CImg<T> visu = get_append(axis,align); 2.35071 + if (display_info) print(disp.title); 2.35072 + visu.display(disp,false); 2.35073 + return *this; 2.35074 + } 2.35075 + 2.35076 + //! Display the current CImgList instance in a new display window. 2.35077 + const CImgList<T>& display(const char *const title=0, 2.35078 + const bool display_info=true, const char axis='x', const char align='p') const { 2.35079 + const CImg<T> visu = get_append(axis,align); 2.35080 + char ntitle[64] = { 0 }; 2.35081 + if (!title) cimg_std::sprintf(ntitle,"CImgList<%s>",pixel_type()); 2.35082 + if (display_info) print(title?title:ntitle); 2.35083 + visu.display(title?title:ntitle,false); 2.35084 + return *this; 2.35085 + } 2.35086 + 2.35087 + //@} 2.35088 + //---------------------------------- 2.35089 + // 2.35090 + //! \name Input-Output 2.35091 + //@{ 2.35092 + //---------------------------------- 2.35093 + 2.35094 + //! Return a C-string containing the values of all images in the instance list. 2.35095 + CImg<charT> value_string(const char separator=',', const unsigned int max_size=0) const { 2.35096 + if (is_empty()) return CImg<ucharT>(1,1,1,1,0); 2.35097 + CImgList<charT> items; 2.35098 + for (unsigned int l = 0; l<size-1; ++l) { 2.35099 + CImg<charT> item = data[l].value_string(separator,0); 2.35100 + item[item.size()-1] = separator; 2.35101 + items.insert(item); 2.35102 + } 2.35103 + items.insert(data[size-1].value_string(separator,0)); 2.35104 + CImg<charT> res = items.get_append('x'); 2.35105 + if (max_size) { res.crop(0,max_size); res(max_size) = 0; } 2.35106 + return res; 2.35107 + } 2.35108 + 2.35109 + //! Print informations about the list on the standard output. 2.35110 + const CImgList<T>& print(const char* title=0, const bool display_stats=true) const { 2.35111 + unsigned long msiz = 0; 2.35112 + cimglist_for(*this,l) msiz += data[l].size(); 2.35113 + msiz*=sizeof(T); 2.35114 + const unsigned int mdisp = msiz<8*1024?0:(msiz<8*1024*1024?1:2); 2.35115 + char ntitle[64] = { 0 }; 2.35116 + if (!title) cimg_std::sprintf(ntitle,"CImgList<%s>",pixel_type()); 2.35117 + cimg_std::fprintf(cimg_stdout,"%s: this = %p, size = %u [%lu %s], data = (CImg<%s>*)%p.\n", 2.35118 + title?title:ntitle,(void*)this,size, 2.35119 + mdisp==0?msiz:(mdisp==1?(msiz>>10):(msiz>>20)), 2.35120 + mdisp==0?"b":(mdisp==1?"Kb":"Mb"), 2.35121 + pixel_type(),(void*)data); 2.35122 + char tmp[16] = { 0 }; 2.35123 + cimglist_for(*this,ll) { 2.35124 + cimg_std::sprintf(tmp,"[%d]",ll); 2.35125 + cimg_std::fprintf(cimg_stdout," "); 2.35126 + data[ll].print(tmp,display_stats); 2.35127 + if (ll==3 && size>8) { ll = size-5; cimg_std::fprintf(cimg_stdout," ...\n"); } 2.35128 + } 2.35129 + return *this; 2.35130 + } 2.35131 + 2.35132 + //! Load an image list from a file. 2.35133 + CImgList<T>& load(const char *const filename) { 2.35134 + const char *ext = cimg::split_filename(filename); 2.35135 + const unsigned int odebug = cimg::exception_mode(); 2.35136 + cimg::exception_mode() = 0; 2.35137 + assign(); 2.35138 + try { 2.35139 +#ifdef cimglist_load_plugin 2.35140 + cimglist_load_plugin(filename); 2.35141 +#endif 2.35142 +#ifdef cimglist_load_plugin1 2.35143 + cimglist_load_plugin1(filename); 2.35144 +#endif 2.35145 +#ifdef cimglist_load_plugin2 2.35146 + cimglist_load_plugin2(filename); 2.35147 +#endif 2.35148 +#ifdef cimglist_load_plugin3 2.35149 + cimglist_load_plugin3(filename); 2.35150 +#endif 2.35151 +#ifdef cimglist_load_plugin4 2.35152 + cimglist_load_plugin4(filename); 2.35153 +#endif 2.35154 +#ifdef cimglist_load_plugin5 2.35155 + cimglist_load_plugin5(filename); 2.35156 +#endif 2.35157 +#ifdef cimglist_load_plugin6 2.35158 + cimglist_load_plugin6(filename); 2.35159 +#endif 2.35160 +#ifdef cimglist_load_plugin7 2.35161 + cimglist_load_plugin7(filename); 2.35162 +#endif 2.35163 +#ifdef cimglist_load_plugin8 2.35164 + cimglist_load_plugin8(filename); 2.35165 +#endif 2.35166 + if (!cimg::strcasecmp(ext,"tif") || 2.35167 + !cimg::strcasecmp(ext,"tiff")) load_tiff(filename); 2.35168 + if (!cimg::strcasecmp(ext,"cimg") || 2.35169 + !cimg::strcasecmp(ext,"cimgz") || 2.35170 + !ext[0]) load_cimg(filename); 2.35171 + if (!cimg::strcasecmp(ext,"rec") || 2.35172 + !cimg::strcasecmp(ext,"par")) load_parrec(filename); 2.35173 + if (!cimg::strcasecmp(ext,"avi") || 2.35174 + !cimg::strcasecmp(ext,"mov") || 2.35175 + !cimg::strcasecmp(ext,"asf") || 2.35176 + !cimg::strcasecmp(ext,"divx") || 2.35177 + !cimg::strcasecmp(ext,"flv") || 2.35178 + !cimg::strcasecmp(ext,"mpg") || 2.35179 + !cimg::strcasecmp(ext,"m1v") || 2.35180 + !cimg::strcasecmp(ext,"m2v") || 2.35181 + !cimg::strcasecmp(ext,"m4v") || 2.35182 + !cimg::strcasecmp(ext,"mjp") || 2.35183 + !cimg::strcasecmp(ext,"mkv") || 2.35184 + !cimg::strcasecmp(ext,"mpe") || 2.35185 + !cimg::strcasecmp(ext,"movie") || 2.35186 + !cimg::strcasecmp(ext,"ogm") || 2.35187 + !cimg::strcasecmp(ext,"qt") || 2.35188 + !cimg::strcasecmp(ext,"rm") || 2.35189 + !cimg::strcasecmp(ext,"vob") || 2.35190 + !cimg::strcasecmp(ext,"wmv") || 2.35191 + !cimg::strcasecmp(ext,"xvid") || 2.35192 + !cimg::strcasecmp(ext,"mpeg")) load_ffmpeg(filename); 2.35193 + if (!cimg::strcasecmp(ext,"gz")) load_gzip_external(filename); 2.35194 + if (is_empty()) throw CImgIOException("CImgList<%s>::load()",pixel_type()); 2.35195 + } catch (CImgIOException& e) { 2.35196 + if (!cimg::strncasecmp(e.message,"cimg::fopen()",13)) { 2.35197 + cimg::exception_mode() = odebug; 2.35198 + throw CImgIOException("CImgList<%s>::load() : File '%s' cannot be opened.",pixel_type(),filename); 2.35199 + } else try { 2.35200 + assign(1); 2.35201 + data->load(filename); 2.35202 + } catch (CImgException&) { 2.35203 + assign(); 2.35204 + } 2.35205 + } 2.35206 + cimg::exception_mode() = odebug; 2.35207 + if (is_empty()) 2.35208 + throw CImgIOException("CImgList<%s>::load() : File '%s', format not recognized.",pixel_type(),filename); 2.35209 + return *this; 2.35210 + } 2.35211 + 2.35212 + static CImgList<T> get_load(const char *const filename) { 2.35213 + return CImgList<T>().load(filename); 2.35214 + } 2.35215 + 2.35216 + //! Load an image list from a .cimg file. 2.35217 + CImgList<T>& load_cimg(const char *const filename) { 2.35218 + return _load_cimg(0,filename); 2.35219 + } 2.35220 + 2.35221 + static CImgList<T> get_load_cimg(const char *const filename) { 2.35222 + return CImgList<T>().load_cimg(filename); 2.35223 + } 2.35224 + 2.35225 + //! Load an image list from a .cimg file. 2.35226 + CImgList<T>& load_cimg(cimg_std::FILE *const file) { 2.35227 + return _load_cimg(file,0); 2.35228 + } 2.35229 + 2.35230 + static CImgList<T> get_load_cimg(cimg_std::FILE *const file) { 2.35231 + return CImgList<T>().load_cimg(file); 2.35232 + } 2.35233 + 2.35234 + CImgList<T>& _load_cimg(cimg_std::FILE *const file, const char *const filename) { 2.35235 +#ifdef cimg_use_zlib 2.35236 +#define _cimgz_load_cimg_case(Tss) { \ 2.35237 + Bytef *const cbuf = new Bytef[csiz]; \ 2.35238 + cimg::fread(cbuf,csiz,nfile); \ 2.35239 + raw.assign(W,H,D,V); \ 2.35240 + unsigned long destlen = raw.size()*sizeof(T); \ 2.35241 + uncompress((Bytef*)raw.data,&destlen,cbuf,csiz); \ 2.35242 + delete[] cbuf; \ 2.35243 + const Tss *ptrs = raw.data; \ 2.35244 + for (unsigned int off = raw.size(); off; --off) *(ptrd++) = (T)*(ptrs++); \ 2.35245 +} 2.35246 +#else 2.35247 +#define _cimgz_load_cimg_case(Tss) \ 2.35248 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s' contains compressed data, zlib must be used",\ 2.35249 + pixel_type(),filename?filename:"(FILE*)"); 2.35250 +#endif 2.35251 + 2.35252 +#define _cimg_load_cimg_case(Ts,Tss) \ 2.35253 + if (!loaded && !cimg::strcasecmp(Ts,str_pixeltype)) { \ 2.35254 + for (unsigned int l = 0; l<N; ++l) { \ 2.35255 + j = 0; while ((i=cimg_std::fgetc(nfile))!='\n' && i>=0) tmp[j++] = (char)i; tmp[j] = '\0'; \ 2.35256 + W = H = D = V = 0; csiz = 0; \ 2.35257 + if ((err = cimg_std::sscanf(tmp,"%u %u %u %u #%u",&W,&H,&D,&V,&csiz))<4) \ 2.35258 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', Image %u has an invalid size (%u,%u,%u,%u)\n", \ 2.35259 + pixel_type(),filename?filename:("(FILE*)"),W,H,D,V); \ 2.35260 + if (W*H*D*V>0) { \ 2.35261 + CImg<Tss> raw; \ 2.35262 + CImg<T> &img = data[l]; \ 2.35263 + img.assign(W,H,D,V); \ 2.35264 + T *ptrd = img.data; \ 2.35265 + if (err==5) _cimgz_load_cimg_case(Tss) \ 2.35266 + else for (int toread = (int)img.size(); toread>0; ) { \ 2.35267 + raw.assign(cimg::min(toread,cimg_iobuffer)); \ 2.35268 + cimg::fread(raw.data,raw.width,nfile); \ 2.35269 + if (endian!=cimg::endianness()) cimg::invert_endianness(raw.data,raw.width); \ 2.35270 + toread-=raw.width; \ 2.35271 + const Tss *ptrs = raw.data; \ 2.35272 + for (unsigned int off = raw.width; off; --off) *(ptrd++) = (T)*(ptrs++); \ 2.35273 + } \ 2.35274 + } \ 2.35275 + } \ 2.35276 + loaded = true; \ 2.35277 + } 2.35278 + 2.35279 + if (!filename && !file) 2.35280 + throw CImgArgumentException("CImgList<%s>::load_cimg() : Cannot load (null) filename.", 2.35281 + pixel_type()); 2.35282 + typedef unsigned char uchar; 2.35283 + typedef unsigned short ushort; 2.35284 + typedef unsigned int uint; 2.35285 + typedef unsigned long ulong; 2.35286 + const int cimg_iobuffer = 12*1024*1024; 2.35287 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.35288 + bool loaded = false, endian = cimg::endianness(); 2.35289 + char tmp[256], str_pixeltype[256], str_endian[256]; 2.35290 + unsigned int j, err, N = 0, W, H, D, V, csiz; 2.35291 + int i; 2.35292 + j = 0; while((i=cimg_std::fgetc(nfile))!='\n' && i!=EOF && j<256) tmp[j++] = (char)i; tmp[j] = '\0'; 2.35293 + err = cimg_std::sscanf(tmp,"%u%*c%255[A-Za-z_]%*c%255[sA-Za-z_ ]",&N,str_pixeltype,str_endian); 2.35294 + if (err<2) { 2.35295 + if (!file) cimg::fclose(nfile); 2.35296 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', Unknow CImg RAW header.", 2.35297 + pixel_type(),filename?filename:"(FILE*)"); 2.35298 + } 2.35299 + if (!cimg::strncasecmp("little",str_endian,6)) endian = false; 2.35300 + else if (!cimg::strncasecmp("big",str_endian,3)) endian = true; 2.35301 + assign(N); 2.35302 + _cimg_load_cimg_case("bool",bool); 2.35303 + _cimg_load_cimg_case("unsigned_char",uchar); 2.35304 + _cimg_load_cimg_case("uchar",uchar); 2.35305 + _cimg_load_cimg_case("char",char); 2.35306 + _cimg_load_cimg_case("unsigned_short",ushort); 2.35307 + _cimg_load_cimg_case("ushort",ushort); 2.35308 + _cimg_load_cimg_case("short",short); 2.35309 + _cimg_load_cimg_case("unsigned_int",uint); 2.35310 + _cimg_load_cimg_case("uint",uint); 2.35311 + _cimg_load_cimg_case("int",int); 2.35312 + _cimg_load_cimg_case("unsigned_long",ulong); 2.35313 + _cimg_load_cimg_case("ulong",ulong); 2.35314 + _cimg_load_cimg_case("long",long); 2.35315 + _cimg_load_cimg_case("float",float); 2.35316 + _cimg_load_cimg_case("double",double); 2.35317 + if (!loaded) { 2.35318 + if (!file) cimg::fclose(nfile); 2.35319 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', cannot read images of pixels coded as '%s'.", 2.35320 + pixel_type(),filename?filename:"(FILE*)",str_pixeltype); 2.35321 + } 2.35322 + if (!file) cimg::fclose(nfile); 2.35323 + return *this; 2.35324 + } 2.35325 + 2.35326 + //! Load a sub-image list from a non compressed .cimg file. 2.35327 + CImgList<T>& load_cimg(const char *const filename, 2.35328 + const unsigned int n0, const unsigned int n1, 2.35329 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.35330 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1) { 2.35331 + return _load_cimg(0,filename,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.35332 + } 2.35333 + 2.35334 + static CImgList<T> get_load_cimg(const char *const filename, 2.35335 + const unsigned int n0, const unsigned int n1, 2.35336 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.35337 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1) { 2.35338 + return CImgList<T>().load_cimg(filename,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.35339 + } 2.35340 + 2.35341 + //! Load a sub-image list from a non compressed .cimg file. 2.35342 + CImgList<T>& load_cimg(cimg_std::FILE *const file, 2.35343 + const unsigned int n0, const unsigned int n1, 2.35344 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.35345 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1) { 2.35346 + return _load_cimg(file,0,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.35347 + } 2.35348 + 2.35349 + static CImgList<T> get_load_cimg(cimg_std::FILE *const file, 2.35350 + const unsigned int n0, const unsigned int n1, 2.35351 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.35352 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1) { 2.35353 + return CImgList<T>().load_cimg(file,n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.35354 + } 2.35355 + 2.35356 + CImgList<T>& _load_cimg(cimg_std::FILE *const file, const char *const filename, 2.35357 + const unsigned int n0, const unsigned int n1, 2.35358 + const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, 2.35359 + const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1) { 2.35360 +#define _cimg_load_cimg_case2(Ts,Tss) \ 2.35361 + if (!loaded && !cimg::strcasecmp(Ts,str_pixeltype)) { \ 2.35362 + for (unsigned int l = 0; l<=nn1; ++l) { \ 2.35363 + j = 0; while ((i=cimg_std::fgetc(nfile))!='\n' && i>=0) tmp[j++] = (char)i; tmp[j] = '\0'; \ 2.35364 + W = H = D = V = 0; \ 2.35365 + if (cimg_std::sscanf(tmp,"%u %u %u %u",&W,&H,&D,&V)!=4) \ 2.35366 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', Image %u has an invalid size (%u,%u,%u,%u)\n", \ 2.35367 + pixel_type(), filename?filename:("(FILE*)"), W, H, D, V); \ 2.35368 + if (W*H*D*V>0) { \ 2.35369 + if (l<n0 || x0>=W || y0>=H || z0>=D || v0>=D) cimg_std::fseek(nfile,W*H*D*V*sizeof(Tss),SEEK_CUR); \ 2.35370 + else { \ 2.35371 + const unsigned int \ 2.35372 + nx1 = x1>=W?W-1:x1, \ 2.35373 + ny1 = y1>=H?H-1:y1, \ 2.35374 + nz1 = z1>=D?D-1:z1, \ 2.35375 + nv1 = v1>=V?V-1:v1; \ 2.35376 + CImg<Tss> raw(1+nx1-x0); \ 2.35377 + CImg<T> &img = data[l-n0]; \ 2.35378 + img.assign(1+nx1-x0,1+ny1-y0,1+nz1-z0,1+nv1-v0); \ 2.35379 + T *ptrd = img.data; \ 2.35380 + const unsigned int skipvb = v0*W*H*D*sizeof(Tss); \ 2.35381 + if (skipvb) cimg_std::fseek(nfile,skipvb,SEEK_CUR); \ 2.35382 + for (unsigned int v=1+nv1-v0; v; --v) { \ 2.35383 + const unsigned int skipzb = z0*W*H*sizeof(Tss); \ 2.35384 + if (skipzb) cimg_std::fseek(nfile,skipzb,SEEK_CUR); \ 2.35385 + for (unsigned int z=1+nz1-z0; z; --z) { \ 2.35386 + const unsigned int skipyb = y0*W*sizeof(Tss); \ 2.35387 + if (skipyb) cimg_std::fseek(nfile,skipyb,SEEK_CUR); \ 2.35388 + for (unsigned int y=1+ny1-y0; y; --y) { \ 2.35389 + const unsigned int skipxb = x0*sizeof(Tss); \ 2.35390 + if (skipxb) cimg_std::fseek(nfile,skipxb,SEEK_CUR); \ 2.35391 + cimg::fread(raw.data,raw.width,nfile); \ 2.35392 + if (endian!=cimg::endianness()) cimg::invert_endianness(raw.data,raw.width); \ 2.35393 + const Tss *ptrs = raw.data; \ 2.35394 + for (unsigned int off = raw.width; off; --off) *(ptrd++) = (T)*(ptrs++); \ 2.35395 + const unsigned int skipxe = (W-1-nx1)*sizeof(Tss); \ 2.35396 + if (skipxe) cimg_std::fseek(nfile,skipxe,SEEK_CUR); \ 2.35397 + } \ 2.35398 + const unsigned int skipye = (H-1-ny1)*W*sizeof(Tss); \ 2.35399 + if (skipye) cimg_std::fseek(nfile,skipye,SEEK_CUR); \ 2.35400 + } \ 2.35401 + const unsigned int skipze = (D-1-nz1)*W*H*sizeof(Tss); \ 2.35402 + if (skipze) cimg_std::fseek(nfile,skipze,SEEK_CUR); \ 2.35403 + } \ 2.35404 + const unsigned int skipve = (V-1-nv1)*W*H*D*sizeof(Tss); \ 2.35405 + if (skipve) cimg_std::fseek(nfile,skipve,SEEK_CUR); \ 2.35406 + } \ 2.35407 + } \ 2.35408 + } \ 2.35409 + loaded = true; \ 2.35410 + } 2.35411 + 2.35412 + if (!filename && !file) 2.35413 + throw CImgArgumentException("CImgList<%s>::load_cimg() : Cannot load (null) filename.", 2.35414 + pixel_type()); 2.35415 + typedef unsigned char uchar; 2.35416 + typedef unsigned short ushort; 2.35417 + typedef unsigned int uint; 2.35418 + typedef unsigned long ulong; 2.35419 + if (n1<n0 || x1<x0 || y1<y0 || z1<z0 || v1<v0) 2.35420 + throw CImgArgumentException("CImgList<%s>::load_cimg() : File '%s', Bad sub-region coordinates [%u->%u] " 2.35421 + "(%u,%u,%u,%u)->(%u,%u,%u,%u).", 2.35422 + pixel_type(),filename?filename:"(FILE*)", 2.35423 + n0,n1,x0,y0,z0,v0,x1,y1,z1,v1); 2.35424 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.35425 + bool loaded = false, endian = cimg::endianness(); 2.35426 + char tmp[256], str_pixeltype[256], str_endian[256]; 2.35427 + unsigned int j, err, N, W, H, D, V; 2.35428 + int i; 2.35429 + j = 0; while((i=cimg_std::fgetc(nfile))!='\n' && i!=EOF && j<256) tmp[j++] = (char)i; tmp[j] = '\0'; 2.35430 + err = cimg_std::sscanf(tmp,"%u%*c%255[A-Za-z_]%*c%255[sA-Za-z_ ]",&N,str_pixeltype,str_endian); 2.35431 + if (err<2) { 2.35432 + if (!file) cimg::fclose(nfile); 2.35433 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', Unknow CImg RAW header.", 2.35434 + pixel_type(),filename?filename:"(FILE*)"); 2.35435 + } 2.35436 + if (!cimg::strncasecmp("little",str_endian,6)) endian = false; 2.35437 + else if (!cimg::strncasecmp("big",str_endian,3)) endian = true; 2.35438 + const unsigned int nn1 = n1>=N?N-1:n1; 2.35439 + assign(1+nn1-n0); 2.35440 + _cimg_load_cimg_case2("bool",bool); 2.35441 + _cimg_load_cimg_case2("unsigned_char",uchar); 2.35442 + _cimg_load_cimg_case2("uchar",uchar); 2.35443 + _cimg_load_cimg_case2("char",char); 2.35444 + _cimg_load_cimg_case2("unsigned_short",ushort); 2.35445 + _cimg_load_cimg_case2("ushort",ushort); 2.35446 + _cimg_load_cimg_case2("short",short); 2.35447 + _cimg_load_cimg_case2("unsigned_int",uint); 2.35448 + _cimg_load_cimg_case2("uint",uint); 2.35449 + _cimg_load_cimg_case2("int",int); 2.35450 + _cimg_load_cimg_case2("unsigned_long",ulong); 2.35451 + _cimg_load_cimg_case2("ulong",ulong); 2.35452 + _cimg_load_cimg_case2("long",long); 2.35453 + _cimg_load_cimg_case2("float",float); 2.35454 + _cimg_load_cimg_case2("double",double); 2.35455 + if (!loaded) { 2.35456 + if (!file) cimg::fclose(nfile); 2.35457 + throw CImgIOException("CImgList<%s>::load_cimg() : File '%s', cannot read images of pixels coded as '%s'.", 2.35458 + pixel_type(),filename?filename:"(FILE*)",str_pixeltype); 2.35459 + } 2.35460 + if (!file) cimg::fclose(nfile); 2.35461 + return *this; 2.35462 + } 2.35463 + 2.35464 + //! Load an image list from a PAR/REC (Philips) file. 2.35465 + CImgList<T>& load_parrec(const char *const filename) { 2.35466 + if (!filename) 2.35467 + throw CImgArgumentException("CImgList<%s>::load_parrec() : Cannot load (null) filename.", 2.35468 + pixel_type()); 2.35469 + char body[1024], filenamepar[1024], filenamerec[1024]; 2.35470 + const char *ext = cimg::split_filename(filename,body); 2.35471 + if (!cimg::strcmp(ext,"par")) { cimg_std::strcpy(filenamepar,filename); cimg_std::sprintf(filenamerec,"%s.rec",body); } 2.35472 + if (!cimg::strcmp(ext,"PAR")) { cimg_std::strcpy(filenamepar,filename); cimg_std::sprintf(filenamerec,"%s.REC",body); } 2.35473 + if (!cimg::strcmp(ext,"rec")) { cimg_std::strcpy(filenamerec,filename); cimg_std::sprintf(filenamepar,"%s.par",body); } 2.35474 + if (!cimg::strcmp(ext,"REC")) { cimg_std::strcpy(filenamerec,filename); cimg_std::sprintf(filenamepar,"%s.PAR",body); } 2.35475 + cimg_std::FILE *file = cimg::fopen(filenamepar,"r"); 2.35476 + 2.35477 + // Parse header file 2.35478 + CImgList<floatT> st_slices; 2.35479 + CImgList<uintT> st_global; 2.35480 + int err; 2.35481 + char line[256] = { 0 }; 2.35482 + do { err=cimg_std::fscanf(file,"%255[^\n]%*c",line); } while (err!=EOF && (line[0]=='#' || line[0]=='.')); 2.35483 + do { 2.35484 + unsigned int sn,sizex,sizey,pixsize; 2.35485 + float rs,ri,ss; 2.35486 + err = cimg_std::fscanf(file,"%u%*u%*u%*u%*u%*u%*u%u%*u%u%u%g%g%g%*[^\n]",&sn,&pixsize,&sizex,&sizey,&ri,&rs,&ss); 2.35487 + if (err==7) { 2.35488 + st_slices.insert(CImg<floatT>::vector((float)sn,(float)pixsize,(float)sizex,(float)sizey, 2.35489 + ri,rs,ss,0)); 2.35490 + unsigned int i; for (i=0; i<st_global.size && sn<=st_global[i][2]; ++i) {} 2.35491 + if (i==st_global.size) st_global.insert(CImg<uintT>::vector(sizex,sizey,sn)); 2.35492 + else { 2.35493 + CImg<uintT> &vec = st_global[i]; 2.35494 + if (sizex>vec[0]) vec[0] = sizex; 2.35495 + if (sizey>vec[1]) vec[1] = sizey; 2.35496 + vec[2] = sn; 2.35497 + } 2.35498 + st_slices[st_slices.size-1][7] = (float)i; 2.35499 + } 2.35500 + } while (err==7); 2.35501 + 2.35502 + // Read data 2.35503 + cimg_std::FILE *file2 = cimg::fopen(filenamerec,"rb"); 2.35504 + { cimglist_for(st_global,l) { 2.35505 + const CImg<uintT>& vec = st_global[l]; 2.35506 + insert(CImg<T>(vec[0],vec[1],vec[2])); 2.35507 + }} 2.35508 + 2.35509 + cimglist_for(st_slices,l) { 2.35510 + const CImg<floatT>& vec = st_slices[l]; 2.35511 + const unsigned int 2.35512 + sn = (unsigned int)vec[0]-1, 2.35513 + pixsize = (unsigned int)vec[1], 2.35514 + sizex = (unsigned int)vec[2], 2.35515 + sizey = (unsigned int)vec[3], 2.35516 + imn = (unsigned int)vec[7]; 2.35517 + const float ri = vec[4], rs = vec[5], ss = vec[6]; 2.35518 + switch (pixsize) { 2.35519 + case 8 : { 2.35520 + CImg<ucharT> buf(sizex,sizey); 2.35521 + cimg::fread(buf.data,sizex*sizey,file2); 2.35522 + if (cimg::endianness()) cimg::invert_endianness(buf.data,sizex*sizey); 2.35523 + CImg<T>& img = (*this)[imn]; 2.35524 + cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss)); 2.35525 + } break; 2.35526 + case 16 : { 2.35527 + CImg<ushortT> buf(sizex,sizey); 2.35528 + cimg::fread(buf.data,sizex*sizey,file2); 2.35529 + if (cimg::endianness()) cimg::invert_endianness(buf.data,sizex*sizey); 2.35530 + CImg<T>& img = (*this)[imn]; 2.35531 + cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss)); 2.35532 + } break; 2.35533 + case 32 : { 2.35534 + CImg<uintT> buf(sizex,sizey); 2.35535 + cimg::fread(buf.data,sizex*sizey,file2); 2.35536 + if (cimg::endianness()) cimg::invert_endianness(buf.data,sizex*sizey); 2.35537 + CImg<T>& img = (*this)[imn]; 2.35538 + cimg_forXY(img,x,y) img(x,y,sn) = (T)(( buf(x,y)*rs + ri )/(rs*ss)); 2.35539 + } break; 2.35540 + default : 2.35541 + cimg::fclose(file); 2.35542 + cimg::fclose(file2); 2.35543 + throw CImgIOException("CImg<%s>::load_parrec() : File '%s', cannot handle image with pixsize = %d bits.", 2.35544 + pixel_type(),filename,pixsize); 2.35545 + } 2.35546 + } 2.35547 + cimg::fclose(file); 2.35548 + cimg::fclose(file2); 2.35549 + if (!size) 2.35550 + throw CImgIOException("CImg<%s>::load_parrec() : File '%s' does not appear to be a valid PAR-REC file.", 2.35551 + pixel_type(),filename); 2.35552 + return *this; 2.35553 + } 2.35554 + 2.35555 + static CImgList<T> get_load_parrec(const char *const filename) { 2.35556 + return CImgList<T>().load_parrec(filename); 2.35557 + } 2.35558 + 2.35559 + //! Load an image sequence from a YUV file. 2.35560 + CImgList<T>& load_yuv(const char *const filename, 2.35561 + const unsigned int sizex, const unsigned int sizey, 2.35562 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35563 + const unsigned int step_frame=1, const bool yuv2rgb=true) { 2.35564 + return _load_yuv(0,filename,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb); 2.35565 + } 2.35566 + 2.35567 + static CImgList<T> get_load_yuv(const char *const filename, 2.35568 + const unsigned int sizex, const unsigned int sizey=1, 2.35569 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35570 + const unsigned int step_frame=1, const bool yuv2rgb=true) { 2.35571 + return CImgList<T>().load_yuv(filename,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb); 2.35572 + } 2.35573 + 2.35574 + //! Load an image sequence from a YUV file. 2.35575 + CImgList<T>& load_yuv(cimg_std::FILE *const file, 2.35576 + const unsigned int sizex, const unsigned int sizey, 2.35577 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35578 + const unsigned int step_frame=1, const bool yuv2rgb=true) { 2.35579 + return _load_yuv(file,0,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb); 2.35580 + } 2.35581 + 2.35582 + static CImgList<T> get_load_yuv(cimg_std::FILE *const file, 2.35583 + const unsigned int sizex, const unsigned int sizey=1, 2.35584 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35585 + const unsigned int step_frame=1, const bool yuv2rgb=true) { 2.35586 + return CImgList<T>().load_yuv(file,sizex,sizey,first_frame,last_frame,step_frame,yuv2rgb); 2.35587 + } 2.35588 + 2.35589 + CImgList<T>& _load_yuv(cimg_std::FILE *const file, const char *const filename, 2.35590 + const unsigned int sizex, const unsigned int sizey, 2.35591 + const unsigned int first_frame, const unsigned int last_frame, 2.35592 + const unsigned int step_frame, const bool yuv2rgb) { 2.35593 + if (!filename && !file) 2.35594 + throw CImgArgumentException("CImgList<%s>::load_yuv() : Cannot load (null) filename.", 2.35595 + pixel_type()); 2.35596 + if (sizex%2 || sizey%2) 2.35597 + throw CImgArgumentException("CImgList<%s>::load_yuv() : File '%s', image dimensions along X and Y must be " 2.35598 + "even numbers (given are %ux%u)\n", 2.35599 + pixel_type(),filename?filename:"(FILE*)",sizex,sizey); 2.35600 + if (!sizex || !sizey) 2.35601 + throw CImgArgumentException("CImgList<%s>::load_yuv() : File '%s', given image sequence size (%u,%u) is invalid", 2.35602 + pixel_type(),filename?filename:"(FILE*)",sizex,sizey); 2.35603 + 2.35604 + const unsigned int 2.35605 + nfirst_frame = first_frame<last_frame?first_frame:last_frame, 2.35606 + nlast_frame = first_frame<last_frame?last_frame:first_frame, 2.35607 + nstep_frame = step_frame?step_frame:1; 2.35608 + 2.35609 + CImg<ucharT> tmp(sizex,sizey,1,3), UV(sizex/2,sizey/2,1,2); 2.35610 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb"); 2.35611 + bool stopflag = false; 2.35612 + int err; 2.35613 + if (nfirst_frame) { 2.35614 + err = cimg_std::fseek(nfile,nfirst_frame*(sizex*sizey + sizex*sizey/2),SEEK_CUR); 2.35615 + if (err) { 2.35616 + if (!file) cimg::fclose(nfile); 2.35617 + throw CImgIOException("CImgList<%s>::load_yuv() : File '%s' doesn't contain frame number %u " 2.35618 + "(out of range error).", 2.35619 + pixel_type(),filename?filename:"(FILE*)",nfirst_frame); 2.35620 + } 2.35621 + } 2.35622 + unsigned int frame; 2.35623 + for (frame = nfirst_frame; !stopflag && frame<=nlast_frame; frame+=nstep_frame) { 2.35624 + tmp.fill(0); 2.35625 + // *TRY* to read the luminance part, do not replace by cimg::fread ! 2.35626 + err = (int)cimg_std::fread((void*)(tmp.data),1,(size_t)(tmp.width*tmp.height),nfile); 2.35627 + if (err!=(int)(tmp.width*tmp.height)) { 2.35628 + stopflag = true; 2.35629 + if (err>0) 2.35630 + cimg::warn("CImgList<%s>::load_yuv() : File '%s' contains incomplete data," 2.35631 + " or given image dimensions (%u,%u) are incorrect.", 2.35632 + pixel_type(),filename?filename:"(FILE*)",sizex,sizey); 2.35633 + } else { 2.35634 + UV.fill(0); 2.35635 + // *TRY* to read the luminance part, do not replace by cimg::fread ! 2.35636 + err = (int)cimg_std::fread((void*)(UV.data),1,(size_t)(UV.size()),nfile); 2.35637 + if (err!=(int)(UV.size())) { 2.35638 + stopflag = true; 2.35639 + if (err>0) 2.35640 + cimg::warn("CImgList<%s>::load_yuv() : File '%s' contains incomplete data," 2.35641 + " or given image dimensions (%u,%u) are incorrect.", 2.35642 + pixel_type(),filename?filename:"(FILE*)",sizex,sizey); 2.35643 + } else { 2.35644 + cimg_forXY(UV,x,y) { 2.35645 + const int x2 = x*2, y2 = y*2; 2.35646 + tmp(x2,y2,1) = tmp(x2+1,y2,1) = tmp(x2,y2+1,1) = tmp(x2+1,y2+1,1) = UV(x,y,0); 2.35647 + tmp(x2,y2,2) = tmp(x2+1,y2,2) = tmp(x2,y2+1,2) = tmp(x2+1,y2+1,2) = UV(x,y,1); 2.35648 + } 2.35649 + if (yuv2rgb) tmp.YCbCrtoRGB(); 2.35650 + insert(tmp); 2.35651 + if (nstep_frame>1) cimg_std::fseek(nfile,(nstep_frame-1)*(sizex*sizey + sizex*sizey/2),SEEK_CUR); 2.35652 + } 2.35653 + } 2.35654 + } 2.35655 + if (stopflag && nlast_frame!=~0U && frame!=nlast_frame) 2.35656 + cimg::warn("CImgList<%s>::load_yuv() : File '%s', frame %d not reached since only %u frames were found in the file.", 2.35657 + pixel_type(),filename?filename:"(FILE*)",nlast_frame,frame-1,filename); 2.35658 + if (!file) cimg::fclose(nfile); 2.35659 + return *this; 2.35660 + } 2.35661 + 2.35662 + //! Load an image from a video file, using ffmpeg libraries. 2.35663 + // This piece of code has been firstly created by David Starweather (starkdg(at)users(dot)sourceforge(dot)net) 2.35664 + // I modified it afterwards for direct inclusion in the library core. 2.35665 + CImgList<T>& load_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35666 + const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false) { 2.35667 + if (!filename) 2.35668 + throw CImgArgumentException("CImgList<%s>::load_ffmpeg() : Cannot load (null) filename.", 2.35669 + pixel_type()); 2.35670 + const unsigned int 2.35671 + nfirst_frame = first_frame<last_frame?first_frame:last_frame, 2.35672 + nlast_frame = first_frame<last_frame?last_frame:first_frame, 2.35673 + nstep_frame = step_frame?step_frame:1; 2.35674 + assign(); 2.35675 + 2.35676 +#ifndef cimg_use_ffmpeg 2.35677 + if ((nfirst_frame || nlast_frame!=~0U || nstep_frame>1) || (resume && (pixel_format || !pixel_format))) 2.35678 + throw CImgArgumentException("CImg<%s>::load_ffmpeg() : File '%s', reading sub-frames from a video file requires the use of ffmpeg.\n" 2.35679 + "('cimg_use_ffmpeg' must be defined).", 2.35680 + pixel_type(),filename); 2.35681 + return load_ffmpeg_external(filename); 2.35682 +#else 2.35683 + const unsigned int ffmpeg_pixfmt = pixel_format?PIX_FMT_RGB24:PIX_FMT_GRAY8; 2.35684 + avcodec_register_all(); 2.35685 + av_register_all(); 2.35686 + static AVFormatContext *format_ctx = 0; 2.35687 + static AVCodecContext *codec_ctx = 0; 2.35688 + static AVCodec *codec = 0; 2.35689 + static AVFrame *avframe = avcodec_alloc_frame(), *converted_frame = avcodec_alloc_frame(); 2.35690 + static int vstream = 0; 2.35691 + 2.35692 + if (resume) { 2.35693 + if (!format_ctx || !codec_ctx || !codec || !avframe || !converted_frame) 2.35694 + throw CImgArgumentException("CImgList<%s>::load_ffmpeg() : File '%s', cannot resume due to unallocated FFMPEG structures.", 2.35695 + pixel_type(),filename); 2.35696 + } else { 2.35697 + // Open video file, find main video stream and codec. 2.35698 + if (format_ctx) av_close_input_file(format_ctx); 2.35699 + if (av_open_input_file(&format_ctx,filename,0,0,0)!=0) 2.35700 + throw CImgIOException("CImgList<%s>::load_ffmpeg() : File '%s' cannot be opened.", 2.35701 + pixel_type(),filename); 2.35702 + if (!avframe || !converted_frame || av_find_stream_info(format_ctx)<0) { 2.35703 + av_close_input_file(format_ctx); format_ctx = 0; 2.35704 + cimg::warn("CImgList<%s>::load_ffmpeg() : File '%s', cannot retrieve stream information.\n" 2.35705 + "Trying with external ffmpeg executable.", 2.35706 + pixel_type(),filename); 2.35707 + return load_ffmpeg_external(filename); 2.35708 + } 2.35709 +#if cimg_debug>=3 2.35710 + dump_format(format_ctx,0,0,0); 2.35711 +#endif 2.35712 + 2.35713 + // Special command : Return informations on main video stream. 2.35714 + // as a vector 1x4 containing : (nb_frames,width,height,fps). 2.35715 + if (!first_frame && !last_frame && !step_frame) { 2.35716 + for (vstream = 0; vstream<(int)(format_ctx->nb_streams); ++vstream) 2.35717 + if (format_ctx->streams[vstream]->codec->codec_type==CODEC_TYPE_VIDEO) break; 2.35718 + if (vstream==(int)format_ctx->nb_streams) assign(); 2.35719 + else { 2.35720 + CImgList<doubleT> timestamps; 2.35721 + int nb_frames; 2.35722 + AVPacket packet; 2.35723 + // Count frames and store timestamps. 2.35724 + for (nb_frames = 0; av_read_frame(format_ctx,&packet)>=0; av_free_packet(&packet)) 2.35725 + if (packet.stream_index==vstream) { 2.35726 + timestamps.insert(CImg<doubleT>::vector((double)packet.pts)); 2.35727 + ++nb_frames; 2.35728 + } 2.35729 + // Get frame with, height and fps. 2.35730 + const int 2.35731 + framew = format_ctx->streams[vstream]->codec->width, 2.35732 + frameh = format_ctx->streams[vstream]->codec->height; 2.35733 + const float 2.35734 + num = (float)(format_ctx->streams[vstream]->r_frame_rate).num, 2.35735 + den = (float)(format_ctx->streams[vstream]->r_frame_rate).den, 2.35736 + fps = num/den; 2.35737 + // Return infos as a list. 2.35738 + assign(2); 2.35739 + (*this)[0].assign(1,4).fill((T)nb_frames,(T)framew,(T)frameh,(T)fps); 2.35740 + (*this)[1] = timestamps.get_append('y'); 2.35741 + } 2.35742 + av_close_input_file(format_ctx); format_ctx = 0; 2.35743 + return *this; 2.35744 + } 2.35745 + 2.35746 + for (vstream = 0; vstream<(int)(format_ctx->nb_streams) && 2.35747 + format_ctx->streams[vstream]->codec->codec_type!=CODEC_TYPE_VIDEO; ) ++vstream; 2.35748 + if (vstream==(int)format_ctx->nb_streams) { 2.35749 + cimg::warn("CImgList<%s>::load_ffmpeg() : File '%s', cannot retrieve video stream.\n" 2.35750 + "Trying with external ffmpeg executable.", 2.35751 + pixel_type(),filename); 2.35752 + av_close_input_file(format_ctx); format_ctx = 0; 2.35753 + return load_ffmpeg_external(filename); 2.35754 + } 2.35755 + codec_ctx = format_ctx->streams[vstream]->codec; 2.35756 + codec = avcodec_find_decoder(codec_ctx->codec_id); 2.35757 + if (!codec) { 2.35758 + cimg::warn("CImgList<%s>::load_ffmpeg() : File '%s', cannot find video codec.\n" 2.35759 + "Trying with external ffmpeg executable.", 2.35760 + pixel_type(),filename); 2.35761 + return load_ffmpeg_external(filename); 2.35762 + } 2.35763 + if (avcodec_open(codec_ctx,codec)<0) { // Open codec 2.35764 + cimg::warn("CImgList<%s>::load_ffmpeg() : File '%s', cannot open video codec.\n" 2.35765 + "Trying with external ffmpeg executable.", 2.35766 + pixel_type(),filename); 2.35767 + return load_ffmpeg_external(filename); 2.35768 + } 2.35769 + } 2.35770 + 2.35771 + // Read video frames 2.35772 + const unsigned int numBytes = avpicture_get_size(ffmpeg_pixfmt,codec_ctx->width,codec_ctx->height); 2.35773 + uint8_t *const buffer = new uint8_t[numBytes]; 2.35774 + avpicture_fill((AVPicture *)converted_frame,buffer,ffmpeg_pixfmt,codec_ctx->width,codec_ctx->height); 2.35775 + const T foo = (T)0; 2.35776 + AVPacket packet; 2.35777 + for (unsigned int frame = 0, next_frame = nfirst_frame; frame<=nlast_frame && av_read_frame(format_ctx,&packet)>=0; ) { 2.35778 + if (packet.stream_index==(int)vstream) { 2.35779 + int decoded = 0; 2.35780 + avcodec_decode_video(codec_ctx,avframe,&decoded,packet.data,packet.size); 2.35781 + if (decoded) { 2.35782 + if (frame==next_frame) { 2.35783 + SwsContext *c = sws_getContext(codec_ctx->width,codec_ctx->height,codec_ctx->pix_fmt,codec_ctx->width, 2.35784 + codec_ctx->height,ffmpeg_pixfmt,1,0,0,0); 2.35785 + sws_scale(c,avframe->data,avframe->linesize,0,codec_ctx->height,converted_frame->data,converted_frame->linesize); 2.35786 + if (ffmpeg_pixfmt==PIX_FMT_RGB24) { 2.35787 + CImg<ucharT> next_image(*converted_frame->data,3,codec_ctx->width,codec_ctx->height,1,true); 2.35788 + insert(next_image._get_permute_axes("yzvx",foo)); 2.35789 + } else { 2.35790 + CImg<ucharT> next_image(*converted_frame->data,1,codec_ctx->width,codec_ctx->height,1,true); 2.35791 + insert(next_image._get_permute_axes("yzvx",foo)); 2.35792 + } 2.35793 + next_frame+=nstep_frame; 2.35794 + } 2.35795 + ++frame; 2.35796 + } 2.35797 + av_free_packet(&packet); 2.35798 + if (next_frame>nlast_frame) break; 2.35799 + } 2.35800 + } 2.35801 + delete[] buffer; 2.35802 +#endif 2.35803 + return *this; 2.35804 + } 2.35805 + 2.35806 + static CImgList<T> get_load_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35807 + const unsigned int step_frame=1, const bool pixel_format=true) { 2.35808 + return CImgList<T>().load_ffmpeg(filename,first_frame,last_frame,step_frame,pixel_format); 2.35809 + } 2.35810 + 2.35811 + //! Load an image from a video file (MPEG,AVI) using the external tool 'ffmpeg'. 2.35812 + CImgList<T>& load_ffmpeg_external(const char *const filename) { 2.35813 + if (!filename) 2.35814 + throw CImgArgumentException("CImgList<%s>::load_ffmpeg_external() : Cannot load (null) filename.", 2.35815 + pixel_type()); 2.35816 + char command[1024], filetmp[512], filetmp2[512]; 2.35817 + cimg_std::FILE *file = 0; 2.35818 + do { 2.35819 + cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.35820 + cimg_std::sprintf(filetmp2,"%s_000001.ppm",filetmp); 2.35821 + if ((file=cimg_std::fopen(filetmp2,"rb"))!=0) cimg_std::fclose(file); 2.35822 + } while (file); 2.35823 + cimg_std::sprintf(filetmp2,"%s_%%6d.ppm",filetmp); 2.35824 +#if cimg_OS!=2 2.35825 + cimg_std::sprintf(command,"%s -i \"%s\" %s >/dev/null 2>&1",cimg::ffmpeg_path(),filename,filetmp2); 2.35826 +#else 2.35827 + cimg_std::sprintf(command,"\"%s -i \"%s\" %s\" >NUL 2>&1",cimg::ffmpeg_path(),filename,filetmp2); 2.35828 +#endif 2.35829 + cimg::system(command,0); 2.35830 + const unsigned int odebug = cimg::exception_mode(); 2.35831 + cimg::exception_mode() = 0; 2.35832 + assign(); 2.35833 + unsigned int i = 1; 2.35834 + for (bool stopflag = false; !stopflag; ++i) { 2.35835 + cimg_std::sprintf(filetmp2,"%s_%.6u.ppm",filetmp,i); 2.35836 + CImg<T> img; 2.35837 + try { img.load_pnm(filetmp2); } 2.35838 + catch (CImgException&) { stopflag = true; } 2.35839 + if (img) { insert(img); cimg_std::remove(filetmp2); } 2.35840 + } 2.35841 + cimg::exception_mode() = odebug; 2.35842 + if (is_empty()) 2.35843 + throw CImgIOException("CImgList<%s>::load_ffmpeg_external() : Failed to open image sequence '%s'.\n" 2.35844 + "Check the filename and if the 'ffmpeg' tool is installed on your system.", 2.35845 + pixel_type(),filename); 2.35846 + return *this; 2.35847 + } 2.35848 + 2.35849 + static CImgList<T> get_load_ffmpeg_external(const char *const filename) { 2.35850 + return CImgList<T>().load_ffmpeg_external(filename); 2.35851 + } 2.35852 + 2.35853 + //! Load a gzipped list, using external tool 'gunzip'. 2.35854 + CImgList<T>& load_gzip_external(const char *const filename) { 2.35855 + if (!filename) 2.35856 + throw CImgIOException("CImg<%s>::load_gzip_external() : Cannot load (null) filename.", 2.35857 + pixel_type()); 2.35858 + char command[1024], filetmp[512], body[512]; 2.35859 + const char 2.35860 + *ext = cimg::split_filename(filename,body), 2.35861 + *ext2 = cimg::split_filename(body,0); 2.35862 + cimg_std::FILE *file = 0; 2.35863 + do { 2.35864 + if (!cimg::strcasecmp(ext,"gz")) { 2.35865 + if (*ext2) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.35866 + cimg::filenamerand(),ext2); 2.35867 + else cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.35868 + cimg::filenamerand()); 2.35869 + } else { 2.35870 + if (*ext) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.35871 + cimg::filenamerand(),ext); 2.35872 + else cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.35873 + cimg::filenamerand()); 2.35874 + } 2.35875 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.35876 + } while (file); 2.35877 + cimg_std::sprintf(command,"%s -c \"%s\" > %s",cimg::gunzip_path(),filename,filetmp); 2.35878 + cimg::system(command); 2.35879 + if (!(file = cimg_std::fopen(filetmp,"rb"))) { 2.35880 + cimg::fclose(cimg::fopen(filename,"r")); 2.35881 + throw CImgIOException("CImg<%s>::load_gzip_external() : File '%s' cannot be opened.", 2.35882 + pixel_type(),filename); 2.35883 + } else cimg::fclose(file); 2.35884 + load(filetmp); 2.35885 + cimg_std::remove(filetmp); 2.35886 + return *this; 2.35887 + } 2.35888 + 2.35889 + static CImgList<T> get_load_gzip_external(const char *const filename) { 2.35890 + return CImgList<T>().load_gzip_external(filename); 2.35891 + } 2.35892 + 2.35893 + //! Load a 3D object from a .OFF file. 2.35894 + template<typename tf, typename tc> 2.35895 + CImgList<T>& load_off(const char *const filename, 2.35896 + CImgList<tf>& primitives, CImgList<tc>& colors, 2.35897 + const bool invert_faces=false) { 2.35898 + return get_load_off(filename,primitives,colors,invert_faces).transfer_to(*this); 2.35899 + } 2.35900 + 2.35901 + template<typename tf, typename tc> 2.35902 + static CImgList<T> get_load_off(const char *const filename, 2.35903 + CImgList<tf>& primitives, CImgList<tc>& colors, 2.35904 + const bool invert_faces=false) { 2.35905 + return CImg<T>().load_off(filename,primitives,colors,invert_faces).get_split('x'); 2.35906 + } 2.35907 + 2.35908 + //! Load a TIFF file. 2.35909 + CImgList<T>& load_tiff(const char *const filename, 2.35910 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35911 + const unsigned int step_frame=1) { 2.35912 + const unsigned int 2.35913 + nfirst_frame = first_frame<last_frame?first_frame:last_frame, 2.35914 + nstep_frame = step_frame?step_frame:1; 2.35915 + unsigned int nlast_frame = first_frame<last_frame?last_frame:first_frame; 2.35916 +#ifndef cimg_use_tiff 2.35917 + if (nfirst_frame || nlast_frame!=~0U || nstep_frame!=1) 2.35918 + throw CImgArgumentException("CImgList<%s>::load_tiff() : File '%s', reading sub-images from a tiff file requires the use of libtiff.\n" 2.35919 + "('cimg_use_tiff' must be defined).", 2.35920 + pixel_type(),filename); 2.35921 + return assign(CImg<T>::get_load_tiff(filename)); 2.35922 +#else 2.35923 + TIFF *tif = TIFFOpen(filename,"r"); 2.35924 + if (tif) { 2.35925 + unsigned int nb_images = 0; 2.35926 + do ++nb_images; while (TIFFReadDirectory(tif)); 2.35927 + if (nfirst_frame>=nb_images || (nlast_frame!=~0U && nlast_frame>=nb_images)) 2.35928 + cimg::warn("CImgList<%s>::load_tiff() : File '%s' contains %u image(s), specified frame range is [%u,%u] (step %u).", 2.35929 + pixel_type(),filename,nb_images,nfirst_frame,nlast_frame,nstep_frame); 2.35930 + if (nfirst_frame>=nb_images) return assign(); 2.35931 + if (nlast_frame>=nb_images) nlast_frame = nb_images-1; 2.35932 + assign(1+(nlast_frame-nfirst_frame)/nstep_frame); 2.35933 + TIFFSetDirectory(tif,0); 2.35934 +#if cimg_debug>=3 2.35935 + TIFFSetWarningHandler(0); 2.35936 + TIFFSetErrorHandler(0); 2.35937 +#endif 2.35938 + cimglist_for(*this,l) data[l]._load_tiff(tif,nfirst_frame+l*nstep_frame); 2.35939 + TIFFClose(tif); 2.35940 + } else throw CImgException("CImgList<%s>::load_tiff() : File '%s' cannot be opened.", 2.35941 + pixel_type(),filename); 2.35942 + return *this; 2.35943 +#endif 2.35944 + } 2.35945 + 2.35946 + static CImgList<T> get_load_tiff(const char *const filename, 2.35947 + const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.35948 + const unsigned int step_frame=1) { 2.35949 + return CImgList<T>().load_tiff(filename,first_frame,last_frame,step_frame); 2.35950 + } 2.35951 + 2.35952 + //! Save an image list into a file. 2.35953 + /** 2.35954 + Depending on the extension of the given filename, a file format is chosen for the output file. 2.35955 + **/ 2.35956 + const CImgList<T>& save(const char *const filename, const int number=-1) const { 2.35957 + if (is_empty()) 2.35958 + throw CImgInstanceException("CImgList<%s>::save() : File '%s, instance list (%u,%p) is empty.", 2.35959 + pixel_type(),filename?filename:"(null)",size,data); 2.35960 + if (!filename) 2.35961 + throw CImgArgumentException("CImg<%s>::save() : Instance list (%u,%p), specified filename is (null).", 2.35962 + pixel_type(),size,data); 2.35963 + const char *ext = cimg::split_filename(filename); 2.35964 + char nfilename[1024]; 2.35965 + const char *const fn = (number>=0)?cimg::number_filename(filename,number,6,nfilename):filename; 2.35966 +#ifdef cimglist_save_plugin 2.35967 + cimglist_save_plugin(fn); 2.35968 +#endif 2.35969 +#ifdef cimglist_save_plugin1 2.35970 + cimglist_save_plugin1(fn); 2.35971 +#endif 2.35972 +#ifdef cimglist_save_plugin2 2.35973 + cimglist_save_plugin2(fn); 2.35974 +#endif 2.35975 +#ifdef cimglist_save_plugin3 2.35976 + cimglist_save_plugin3(fn); 2.35977 +#endif 2.35978 +#ifdef cimglist_save_plugin4 2.35979 + cimglist_save_plugin4(fn); 2.35980 +#endif 2.35981 +#ifdef cimglist_save_plugin5 2.35982 + cimglist_save_plugin5(fn); 2.35983 +#endif 2.35984 +#ifdef cimglist_save_plugin6 2.35985 + cimglist_save_plugin6(fn); 2.35986 +#endif 2.35987 +#ifdef cimglist_save_plugin7 2.35988 + cimglist_save_plugin7(fn); 2.35989 +#endif 2.35990 +#ifdef cimglist_save_plugin8 2.35991 + cimglist_save_plugin8(fn); 2.35992 +#endif 2.35993 +#ifdef cimg_use_tiff 2.35994 + if (!cimg::strcasecmp(ext,"tif") || 2.35995 + !cimg::strcasecmp(ext,"tiff")) return save_tiff(fn); 2.35996 +#endif 2.35997 + if (!cimg::strcasecmp(ext,"cimgz")) return save_cimg(fn,true); 2.35998 + if (!cimg::strcasecmp(ext,"cimg") || !ext[0]) return save_cimg(fn,false); 2.35999 + if (!cimg::strcasecmp(ext,"yuv")) return save_yuv(fn,true); 2.36000 + if (!cimg::strcasecmp(ext,"avi") || 2.36001 + !cimg::strcasecmp(ext,"mov") || 2.36002 + !cimg::strcasecmp(ext,"asf") || 2.36003 + !cimg::strcasecmp(ext,"divx") || 2.36004 + !cimg::strcasecmp(ext,"flv") || 2.36005 + !cimg::strcasecmp(ext,"mpg") || 2.36006 + !cimg::strcasecmp(ext,"m1v") || 2.36007 + !cimg::strcasecmp(ext,"m2v") || 2.36008 + !cimg::strcasecmp(ext,"m4v") || 2.36009 + !cimg::strcasecmp(ext,"mjp") || 2.36010 + !cimg::strcasecmp(ext,"mkv") || 2.36011 + !cimg::strcasecmp(ext,"mpe") || 2.36012 + !cimg::strcasecmp(ext,"movie") || 2.36013 + !cimg::strcasecmp(ext,"ogm") || 2.36014 + !cimg::strcasecmp(ext,"qt") || 2.36015 + !cimg::strcasecmp(ext,"rm") || 2.36016 + !cimg::strcasecmp(ext,"vob") || 2.36017 + !cimg::strcasecmp(ext,"wmv") || 2.36018 + !cimg::strcasecmp(ext,"xvid") || 2.36019 + !cimg::strcasecmp(ext,"mpeg")) return save_ffmpeg(fn); 2.36020 + if (!cimg::strcasecmp(ext,"gz")) return save_gzip_external(fn); 2.36021 + if (size==1) data[0].save(fn,-1); else cimglist_for(*this,l) data[l].save(fn,l); 2.36022 + return *this; 2.36023 + } 2.36024 + 2.36025 + //! Save an image sequence, using FFMPEG library. 2.36026 + // This piece of code has been originally written by David. G. Starkweather. 2.36027 + const CImgList<T>& save_ffmpeg(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.36028 + const unsigned int fps=25) const { 2.36029 + if (is_empty()) 2.36030 + throw CImgInstanceException("CImgList<%s>::save_ffmpeg() : File '%s', instance list (%u,%p) is empty.", 2.36031 + pixel_type(),filename?filename:"(null)",size,data); 2.36032 + if (!filename) 2.36033 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg() : Instance list (%u,%p), specified filename is (null).", 2.36034 + pixel_type(),size,data); 2.36035 + if (!fps) 2.36036 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg() : File '%s', specified framerate is 0.", 2.36037 + pixel_type(),filename); 2.36038 + const unsigned int nlast_frame = last_frame==~0U?size-1:last_frame; 2.36039 + if (first_frame>=size || nlast_frame>=size) 2.36040 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg() : File '%s', specified frames [%u,%u] are out of list range (%u elements).", 2.36041 + pixel_type(),filename,first_frame,last_frame,size); 2.36042 + for (unsigned int ll = first_frame; ll<=nlast_frame; ++ll) if (!data[ll].is_sameXYZ(data[0])) 2.36043 + throw CImgInstanceException("CImgList<%s>::save_ffmpeg() : File '%s', images of the sequence have different dimensions.", 2.36044 + pixel_type(),filename); 2.36045 + 2.36046 +#ifndef cimg_use_ffmpeg 2.36047 + return save_ffmpeg_external(filename,first_frame,last_frame); 2.36048 +#else 2.36049 + avcodec_register_all(); 2.36050 + av_register_all(); 2.36051 + const int 2.36052 + frame_dimx = data[first_frame].dimx(), 2.36053 + frame_dimy = data[first_frame].dimy(), 2.36054 + frame_dimv = data[first_frame].dimv(); 2.36055 + if (frame_dimv!=1 && frame_dimv!=3) 2.36056 + throw CImgInstanceException("CImgList<%s>::save_ffmpeg() : File '%s', image[0] (%u,%u,%u,%u,%p) has not 1 or 3 channels.", 2.36057 + pixel_type(),filename,data[0].width,data[0].height,data[0].depth,data[0].dim,data); 2.36058 + 2.36059 + PixelFormat dest_pxl_fmt = PIX_FMT_YUV420P; 2.36060 + PixelFormat src_pxl_fmt = (frame_dimv == 3)?PIX_FMT_RGB24:PIX_FMT_GRAY8; 2.36061 + 2.36062 + int sws_flags = SWS_FAST_BILINEAR; // Interpolation method (keeping same size images for now). 2.36063 + AVOutputFormat *fmt = 0; 2.36064 + fmt = guess_format(0,filename,0); 2.36065 + if (!fmt) fmt = guess_format("mpeg",0,0); // Default format "mpeg". 2.36066 + if (!fmt) 2.36067 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg() : File '%s', could not determine file format from filename.", 2.36068 + pixel_type(),filename); 2.36069 + 2.36070 + AVFormatContext *oc = 0; 2.36071 + oc = av_alloc_format_context(); 2.36072 + if (!oc) // Failed to allocate format context. 2.36073 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate structure for format context.", 2.36074 + pixel_type(),filename); 2.36075 + 2.36076 + AVCodec *codec = 0; 2.36077 + AVFrame *picture = 0; 2.36078 + AVFrame *tmp_pict = 0; 2.36079 + oc->oformat = fmt; 2.36080 + cimg_std::sprintf(oc->filename,"%s",filename); 2.36081 + 2.36082 + // Add video stream. 2.36083 + int stream_index = 0; 2.36084 + AVStream *video_str = 0; 2.36085 + if (fmt->video_codec!=CODEC_ID_NONE) { 2.36086 + video_str = av_new_stream(oc,stream_index); 2.36087 + if (!video_str) { // Failed to allocate stream. 2.36088 + av_free(oc); 2.36089 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate video stream structure.", 2.36090 + pixel_type(),filename); 2.36091 + } 2.36092 + } else { // No codec identified. 2.36093 + av_free(oc); 2.36094 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', no proper codec identified.", 2.36095 + pixel_type(),filename); 2.36096 + } 2.36097 + 2.36098 + AVCodecContext *c = video_str->codec; 2.36099 + c->codec_id = fmt->video_codec; 2.36100 + c->codec_type = CODEC_TYPE_VIDEO; 2.36101 + c->bit_rate = 400000; 2.36102 + c->width = frame_dimx; 2.36103 + c->height = frame_dimy; 2.36104 + c->time_base.num = 1; 2.36105 + c->time_base.den = fps; 2.36106 + c->gop_size = 12; 2.36107 + c->pix_fmt = dest_pxl_fmt; 2.36108 + if (c->codec_id == CODEC_ID_MPEG2VIDEO) c->max_b_frames = 2; 2.36109 + if (c->codec_id == CODEC_ID_MPEG1VIDEO) c->mb_decision = 2; 2.36110 + 2.36111 + if (av_set_parameters(oc,0)<0) { // Parameters not properly set. 2.36112 + av_free(oc); 2.36113 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', parameters for avcodec not properly set.", 2.36114 + pixel_type(),filename); 2.36115 + } 2.36116 + 2.36117 + // Open codecs and alloc buffers. 2.36118 + codec = avcodec_find_encoder(c->codec_id); 2.36119 + if (!codec) { // Failed to find codec. 2.36120 + av_free(oc); 2.36121 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', no codec found.", 2.36122 + pixel_type(),filename); 2.36123 + } 2.36124 + if (avcodec_open(c,codec)<0) // Failed to open codec. 2.36125 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to open codec.", 2.36126 + pixel_type(),filename); 2.36127 + tmp_pict = avcodec_alloc_frame(); 2.36128 + if (!tmp_pict) { // Failed to allocate memory for tmp_pict frame. 2.36129 + avcodec_close(video_str->codec); 2.36130 + av_free(oc); 2.36131 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate memory for data buffer.", 2.36132 + pixel_type(),filename); 2.36133 + } 2.36134 + tmp_pict->linesize[0] = (src_pxl_fmt==PIX_FMT_RGB24)?3*frame_dimx:frame_dimx; 2.36135 + tmp_pict->type = FF_BUFFER_TYPE_USER; 2.36136 + int tmp_size = avpicture_get_size(src_pxl_fmt,frame_dimx,frame_dimy); 2.36137 + uint8_t *tmp_buffer = (uint8_t*)av_malloc(tmp_size); 2.36138 + if (!tmp_buffer) { // Failed to allocate memory for tmp buffer. 2.36139 + av_free(tmp_pict); 2.36140 + avcodec_close(video_str->codec); 2.36141 + av_free(oc); 2.36142 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate memory for data buffer.", 2.36143 + pixel_type(),filename); 2.36144 + } 2.36145 + 2.36146 + // Associate buffer with tmp_pict. 2.36147 + avpicture_fill((AVPicture*)tmp_pict,tmp_buffer,src_pxl_fmt,frame_dimx,frame_dimy); 2.36148 + picture = avcodec_alloc_frame(); 2.36149 + if (!picture) { // Failed to allocate picture frame. 2.36150 + av_free(tmp_pict->data[0]); 2.36151 + av_free(tmp_pict); 2.36152 + avcodec_close(video_str->codec); 2.36153 + av_free(oc); 2.36154 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate memory for picture frame.", 2.36155 + pixel_type(),filename); 2.36156 + } 2.36157 + 2.36158 + int size = avpicture_get_size(c->pix_fmt,frame_dimx,frame_dimy); 2.36159 + uint8_t *buffer = (uint8_t*)av_malloc(size); 2.36160 + if (!buffer) { // Failed to allocate picture frame buffer. 2.36161 + av_free(picture); 2.36162 + av_free(tmp_pict->data[0]); 2.36163 + av_free(tmp_pict); 2.36164 + avcodec_close(video_str->codec); 2.36165 + av_free(oc); 2.36166 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to allocate memory for picture frame buffer.", 2.36167 + pixel_type(),filename); 2.36168 + } 2.36169 + 2.36170 + // Associate the buffer with picture. 2.36171 + avpicture_fill((AVPicture*)picture,buffer,c->pix_fmt,frame_dimx,frame_dimy); 2.36172 + 2.36173 + // Open file. 2.36174 + if (!(fmt->flags&AVFMT_NOFILE)) { 2.36175 + if (url_fopen(&oc->pb,filename,URL_WRONLY)<0) 2.36176 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s' cannot be opened.", 2.36177 + pixel_type(),filename); 2.36178 + } 2.36179 + 2.36180 + if (av_write_header(oc)<0) 2.36181 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', could not write header.", 2.36182 + pixel_type(),filename); 2.36183 + double video_pts; 2.36184 + SwsContext *img_convert_context = 0; 2.36185 + img_convert_context = sws_getContext(frame_dimx,frame_dimy,src_pxl_fmt, 2.36186 + c->width,c->height,c->pix_fmt,sws_flags,0,0,0); 2.36187 + if (!img_convert_context) { // Failed to get swscale context. 2.36188 + // if (!(fmt->flags & AVFMT_NOFILE)) url_fclose(&oc->pb); 2.36189 + av_free(picture->data); 2.36190 + av_free(picture); 2.36191 + av_free(tmp_pict->data[0]); 2.36192 + av_free(tmp_pict); 2.36193 + avcodec_close(video_str->codec); 2.36194 + av_free(oc); 2.36195 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%', failed to get conversion context.", 2.36196 + pixel_type(),filename); 2.36197 + } 2.36198 + int ret = 0, out_size; 2.36199 + uint8_t *video_outbuf = 0; 2.36200 + int video_outbuf_size = 1000000; 2.36201 + video_outbuf = (uint8_t*)av_malloc(video_outbuf_size); 2.36202 + if (!video_outbuf) { 2.36203 + // if (!(fmt->flags & AVFMT_NOFILE)) url_fclose(&oc->pb); 2.36204 + av_free(picture->data); 2.36205 + av_free(picture); 2.36206 + av_free(tmp_pict->data[0]); 2.36207 + av_free(tmp_pict); 2.36208 + avcodec_close(video_str->codec); 2.36209 + av_free(oc); 2.36210 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', memory allocation error.", 2.36211 + pixel_type(),filename); 2.36212 + } 2.36213 + 2.36214 + // Loop through each desired image in list. 2.36215 + for (unsigned int i = first_frame; i<=nlast_frame; ++i) { 2.36216 + CImg<uint8_t> currentIm = data[i], red, green, blue, gray; 2.36217 + if (src_pxl_fmt == PIX_FMT_RGB24) { 2.36218 + red = currentIm.get_shared_channel(0); 2.36219 + green = currentIm.get_shared_channel(1); 2.36220 + blue = currentIm.get_shared_channel(2); 2.36221 + cimg_forXY(currentIm,X,Y) { // Assign pizel values to data buffer in interlaced RGBRGB ... format. 2.36222 + tmp_pict->data[0][Y*tmp_pict->linesize[0] + 3*X] = red(X,Y); 2.36223 + tmp_pict->data[0][Y*tmp_pict->linesize[0] + 3*X + 1] = green(X,Y); 2.36224 + tmp_pict->data[0][Y*tmp_pict->linesize[0] + 3*X + 2] = blue(X,Y); 2.36225 + } 2.36226 + } else { 2.36227 + gray = currentIm.get_shared_channel(0); 2.36228 + cimg_forXY(currentIm,X,Y) tmp_pict->data[0][Y*tmp_pict->linesize[0] + X] = gray(X,Y); 2.36229 + } 2.36230 + 2.36231 + if (video_str) video_pts = (video_str->pts.val * video_str->time_base.num)/(video_str->time_base.den); 2.36232 + else video_pts = 0.0; 2.36233 + if (!video_str) break; 2.36234 + if (sws_scale(img_convert_context,tmp_pict->data,tmp_pict->linesize,0,c->height,picture->data,picture->linesize)<0) break; 2.36235 + out_size = avcodec_encode_video(c,video_outbuf,video_outbuf_size,picture); 2.36236 + if (out_size>0) { 2.36237 + AVPacket pkt; 2.36238 + av_init_packet(&pkt); 2.36239 + pkt.pts = av_rescale_q(c->coded_frame->pts,c->time_base,video_str->time_base); 2.36240 + if (c->coded_frame->key_frame) pkt.flags|=PKT_FLAG_KEY; 2.36241 + pkt.stream_index = video_str->index; 2.36242 + pkt.data = video_outbuf; 2.36243 + pkt.size = out_size; 2.36244 + ret = av_write_frame(oc,&pkt); 2.36245 + } else if (out_size<0) break; 2.36246 + if (ret) break; // Error occured in writing frame. 2.36247 + } 2.36248 + 2.36249 + // Close codec. 2.36250 + if (video_str) { 2.36251 + avcodec_close(video_str->codec); 2.36252 + av_free(picture->data[0]); 2.36253 + av_free(picture); 2.36254 + av_free(tmp_pict->data[0]); 2.36255 + av_free(tmp_pict); 2.36256 + } 2.36257 + if (av_write_trailer(oc)<0) 2.36258 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to write trailer.", 2.36259 + pixel_type(),filename); 2.36260 + av_freep(&oc->streams[stream_index]->codec); 2.36261 + av_freep(&oc->streams[stream_index]); 2.36262 + if (!(fmt->flags&AVFMT_NOFILE)) { 2.36263 + /*if (url_fclose(oc->pb)<0) 2.36264 + throw CImgIOException("CImgList<%s>::save_ffmpeg() : File '%s', failed to close file.", 2.36265 + pixel_type(),filename); 2.36266 + */ 2.36267 + } 2.36268 + av_free(oc); 2.36269 + av_free(video_outbuf); 2.36270 +#endif 2.36271 + return *this; 2.36272 + } 2.36273 + 2.36274 + // Save an image sequence into a YUV file (internal). 2.36275 + const CImgList<T>& _save_yuv(cimg_std::FILE *const file, const char *const filename, const bool rgb2yuv) const { 2.36276 + if (is_empty()) 2.36277 + throw CImgInstanceException("CImgList<%s>::save_yuv() : File '%s', instance list (%u,%p) is empty.", 2.36278 + pixel_type(),filename?filename:"(FILE*)",size,data); 2.36279 + if (!file && !filename) 2.36280 + throw CImgArgumentException("CImg<%s>::save_yuv() : Instance list (%u,%p), specified file is (null).", 2.36281 + pixel_type(),size,data); 2.36282 + if ((*this)[0].dimx()%2 || (*this)[0].dimy()%2) 2.36283 + throw CImgInstanceException("CImgList<%s>::save_yuv() : File '%s', image dimensions must be even numbers (current are %ux%u).", 2.36284 + pixel_type(),filename?filename:"(FILE*)",(*this)[0].dimx(),(*this)[0].dimy()); 2.36285 + 2.36286 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.36287 + cimglist_for(*this,l) { 2.36288 + CImg<ucharT> YCbCr((*this)[l]); 2.36289 + if (rgb2yuv) YCbCr.RGBtoYCbCr(); 2.36290 + cimg::fwrite(YCbCr.data,YCbCr.width*YCbCr.height,nfile); 2.36291 + cimg::fwrite(YCbCr.get_resize(YCbCr.width/2, YCbCr.height/2,1,3,3).ptr(0,0,0,1), 2.36292 + YCbCr.width*YCbCr.height/2,nfile); 2.36293 + } 2.36294 + if (!file) cimg::fclose(nfile); 2.36295 + return *this; 2.36296 + } 2.36297 + 2.36298 + //! Save an image sequence into a YUV file. 2.36299 + const CImgList<T>& save_yuv(const char *const filename=0, const bool rgb2yuv=true) const { 2.36300 + return _save_yuv(0,filename,rgb2yuv); 2.36301 + } 2.36302 + 2.36303 + //! Save an image sequence into a YUV file. 2.36304 + const CImgList<T>& save_yuv(cimg_std::FILE *const file, const bool rgb2yuv=true) const { 2.36305 + return _save_yuv(file,0,rgb2yuv); 2.36306 + } 2.36307 + 2.36308 + //! Save an image list into a .cimg file. 2.36309 + /** 2.36310 + A CImg RAW file is a simple uncompressed binary file that may be used to save list of CImg<T> images. 2.36311 + \param filename : name of the output file. 2.36312 + \return A reference to the current CImgList instance is returned. 2.36313 + **/ 2.36314 + const CImgList<T>& _save_cimg(cimg_std::FILE *const file, const char *const filename, const bool compression) const { 2.36315 + if (is_empty()) 2.36316 + throw CImgInstanceException("CImgList<%s>::save_cimg() : File '%s', instance list (%u,%p) is empty.", 2.36317 + pixel_type(),filename?filename:"(FILE*)",size,data); 2.36318 + if (!file && !filename) 2.36319 + throw CImgArgumentException("CImg<%s>::save_cimg() : Instance list (%u,%p), specified file is (null).", 2.36320 + pixel_type(),size,data); 2.36321 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.36322 + const char *const ptype = pixel_type(), *const etype = cimg::endianness()?"big":"little"; 2.36323 + if (cimg_std::strstr(ptype,"unsigned")==ptype) cimg_std::fprintf(nfile,"%u unsigned_%s %s_endian\n",size,ptype+9,etype); 2.36324 + else cimg_std::fprintf(nfile,"%u %s %s_endian\n",size,ptype,etype); 2.36325 + cimglist_for(*this,l) { 2.36326 + const CImg<T>& img = data[l]; 2.36327 + cimg_std::fprintf(nfile,"%u %u %u %u",img.width,img.height,img.depth,img.dim); 2.36328 + if (img.data) { 2.36329 + CImg<T> tmp; 2.36330 + if (cimg::endianness()) { tmp = img; cimg::invert_endianness(tmp.data,tmp.size()); } 2.36331 + const CImg<T>& ref = cimg::endianness()?tmp:img; 2.36332 + bool compressed = false; 2.36333 + if (compression) { 2.36334 +#ifdef cimg_use_zlib 2.36335 + const unsigned long siz = sizeof(T)*ref.size(); 2.36336 + unsigned long csiz = siz + siz/10 + 16; 2.36337 + Bytef *const cbuf = new Bytef[csiz]; 2.36338 + if (compress(cbuf,&csiz,(Bytef*)ref.data,siz)) { 2.36339 + cimg::warn("CImgList<%s>::save_cimg() : File '%s', failed to save compressed data.\n Data will be saved uncompressed.", 2.36340 + pixel_type(),filename?filename:"(FILE*)"); 2.36341 + compressed = false; 2.36342 + } else { 2.36343 + cimg_std::fprintf(nfile," #%lu\n",csiz); 2.36344 + cimg::fwrite(cbuf,csiz,nfile); 2.36345 + delete[] cbuf; 2.36346 + compressed = true; 2.36347 + } 2.36348 +#else 2.36349 + cimg::warn("CImgList<%s>::save_cimg() : File '%s', cannot save compressed data unless zlib is used " 2.36350 + "('cimg_use_zlib' must be defined).\n Data will be saved uncompressed.", 2.36351 + pixel_type(),filename?filename:"(FILE*)"); 2.36352 + compressed = false; 2.36353 +#endif 2.36354 + } 2.36355 + if (!compressed) { 2.36356 + cimg_std::fputc('\n',nfile); 2.36357 + cimg::fwrite(ref.data,ref.size(),nfile); 2.36358 + } 2.36359 + } else cimg_std::fputc('\n',nfile); 2.36360 + } 2.36361 + if (!file) cimg::fclose(nfile); 2.36362 + return *this; 2.36363 + } 2.36364 + 2.36365 + //! Save an image list into a CImg file (RAW binary file + simple header) 2.36366 + const CImgList<T>& save_cimg(cimg_std::FILE *file, const bool compress=false) const { 2.36367 + return _save_cimg(file,0,compress); 2.36368 + } 2.36369 + 2.36370 + //! Save an image list into a CImg file (RAW binary file + simple header) 2.36371 + const CImgList<T>& save_cimg(const char *const filename, const bool compress=false) const { 2.36372 + return _save_cimg(0,filename,compress); 2.36373 + } 2.36374 + 2.36375 + // Insert the instance image into into an existing .cimg file, at specified coordinates. 2.36376 + const CImgList<T>& _save_cimg(cimg_std::FILE *const file, const char *const filename, 2.36377 + const unsigned int n0, 2.36378 + const unsigned int x0, const unsigned int y0, 2.36379 + const unsigned int z0, const unsigned int v0) const { 2.36380 +#define _cimg_save_cimg_case(Ts,Tss) \ 2.36381 + if (!saved && !cimg::strcasecmp(Ts,str_pixeltype)) { \ 2.36382 + for (unsigned int l=0; l<lmax; ++l) { \ 2.36383 + j = 0; while((i=cimg_std::fgetc(nfile))!='\n') tmp[j++]=(char)i; tmp[j]='\0'; \ 2.36384 + W = H = D = V = 0; \ 2.36385 + if (cimg_std::sscanf(tmp,"%u %u %u %u",&W,&H,&D,&V)!=4) \ 2.36386 + throw CImgIOException("CImgList<%s>::save_cimg() : File '%s', Image %u has an invalid size (%u,%u,%u,%u)\n", \ 2.36387 + pixel_type(), filename?filename:("(FILE*)"), W, H, D, V); \ 2.36388 + if (W*H*D*V>0) { \ 2.36389 + if (l<n0 || x0>=W || y0>=H || z0>=D || v0>=D) cimg_std::fseek(nfile,W*H*D*V*sizeof(Tss),SEEK_CUR); \ 2.36390 + else { \ 2.36391 + const CImg<T>& img = (*this)[l-n0]; \ 2.36392 + const T *ptrs = img.data; \ 2.36393 + const unsigned int \ 2.36394 + x1 = x0 + img.width - 1, \ 2.36395 + y1 = y0 + img.height - 1, \ 2.36396 + z1 = z0 + img.depth - 1, \ 2.36397 + v1 = v0 + img.dim - 1, \ 2.36398 + nx1 = x1>=W?W-1:x1, \ 2.36399 + ny1 = y1>=H?H-1:y1, \ 2.36400 + nz1 = z1>=D?D-1:z1, \ 2.36401 + nv1 = v1>=V?V-1:v1; \ 2.36402 + CImg<Tss> raw(1+nx1-x0); \ 2.36403 + const unsigned int skipvb = v0*W*H*D*sizeof(Tss); \ 2.36404 + if (skipvb) cimg_std::fseek(nfile,skipvb,SEEK_CUR); \ 2.36405 + for (unsigned int v=1+nv1-v0; v; --v) { \ 2.36406 + const unsigned int skipzb = z0*W*H*sizeof(Tss); \ 2.36407 + if (skipzb) cimg_std::fseek(nfile,skipzb,SEEK_CUR); \ 2.36408 + for (unsigned int z=1+nz1-z0; z; --z) { \ 2.36409 + const unsigned int skipyb = y0*W*sizeof(Tss); \ 2.36410 + if (skipyb) cimg_std::fseek(nfile,skipyb,SEEK_CUR); \ 2.36411 + for (unsigned int y=1+ny1-y0; y; --y) { \ 2.36412 + const unsigned int skipxb = x0*sizeof(Tss); \ 2.36413 + if (skipxb) cimg_std::fseek(nfile,skipxb,SEEK_CUR); \ 2.36414 + raw.assign(ptrs, raw.width); \ 2.36415 + ptrs+=img.width; \ 2.36416 + if (endian) cimg::invert_endianness(raw.data,raw.width); \ 2.36417 + cimg::fwrite(raw.data,raw.width,nfile); \ 2.36418 + const unsigned int skipxe = (W-1-nx1)*sizeof(Tss); \ 2.36419 + if (skipxe) cimg_std::fseek(nfile,skipxe,SEEK_CUR); \ 2.36420 + } \ 2.36421 + const unsigned int skipye = (H-1-ny1)*W*sizeof(Tss); \ 2.36422 + if (skipye) cimg_std::fseek(nfile,skipye,SEEK_CUR); \ 2.36423 + } \ 2.36424 + const unsigned int skipze = (D-1-nz1)*W*H*sizeof(Tss); \ 2.36425 + if (skipze) cimg_std::fseek(nfile,skipze,SEEK_CUR); \ 2.36426 + } \ 2.36427 + const unsigned int skipve = (V-1-nv1)*W*H*D*sizeof(Tss); \ 2.36428 + if (skipve) cimg_std::fseek(nfile,skipve,SEEK_CUR); \ 2.36429 + } \ 2.36430 + } \ 2.36431 + } \ 2.36432 + saved = true; \ 2.36433 + } 2.36434 + if (is_empty()) 2.36435 + throw CImgInstanceException("CImgList<%s>::save_cimg() : File '%s', instance list (%u,%p) is empty.", 2.36436 + pixel_type(),filename?filename:"(FILE*)",size,data); 2.36437 + if (!file && !filename) 2.36438 + throw CImgArgumentException("CImg<%s>::save_cimg() : Instance list (%u,%p), specified file is (null).", 2.36439 + pixel_type(),size,data); 2.36440 + typedef unsigned char uchar; 2.36441 + typedef unsigned short ushort; 2.36442 + typedef unsigned int uint; 2.36443 + typedef unsigned long ulong; 2.36444 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"rb+"); 2.36445 + bool saved = false, endian = cimg::endianness(); 2.36446 + char tmp[256], str_pixeltype[256], str_endian[256]; 2.36447 + unsigned int j, err, N, W, H, D, V; 2.36448 + int i; 2.36449 + j = 0; while((i=cimg_std::fgetc(nfile))!='\n' && i!=EOF && j<256) tmp[j++] = (char)i; tmp[j] = '\0'; 2.36450 + err = cimg_std::sscanf(tmp,"%u%*c%255[A-Za-z_]%*c%255[sA-Za-z_ ]",&N,str_pixeltype,str_endian); 2.36451 + if (err<2) { 2.36452 + if (!file) cimg::fclose(nfile); 2.36453 + throw CImgIOException("CImgList<%s>::save_cimg() : File '%s', Unknow CImg RAW header.", 2.36454 + pixel_type(),filename?filename:"(FILE*)"); 2.36455 + } 2.36456 + if (!cimg::strncasecmp("little",str_endian,6)) endian = false; 2.36457 + else if (!cimg::strncasecmp("big",str_endian,3)) endian = true; 2.36458 + const unsigned int lmax = cimg::min(N,n0+size); 2.36459 + _cimg_save_cimg_case("bool",bool); 2.36460 + _cimg_save_cimg_case("unsigned_char",uchar); 2.36461 + _cimg_save_cimg_case("uchar",uchar); 2.36462 + _cimg_save_cimg_case("char",char); 2.36463 + _cimg_save_cimg_case("unsigned_short",ushort); 2.36464 + _cimg_save_cimg_case("ushort",ushort); 2.36465 + _cimg_save_cimg_case("short",short); 2.36466 + _cimg_save_cimg_case("unsigned_int",uint); 2.36467 + _cimg_save_cimg_case("uint",uint); 2.36468 + _cimg_save_cimg_case("int",int); 2.36469 + _cimg_save_cimg_case("unsigned_long",ulong); 2.36470 + _cimg_save_cimg_case("ulong",ulong); 2.36471 + _cimg_save_cimg_case("long",long); 2.36472 + _cimg_save_cimg_case("float",float); 2.36473 + _cimg_save_cimg_case("double",double); 2.36474 + if (!saved) { 2.36475 + if (!file) cimg::fclose(nfile); 2.36476 + throw CImgIOException("CImgList<%s>::save_cimg() : File '%s', cannot save images of pixels coded as '%s'.", 2.36477 + pixel_type(),filename?filename:"(FILE*)",str_pixeltype); 2.36478 + } 2.36479 + if (!file) cimg::fclose(nfile); 2.36480 + return *this; 2.36481 + } 2.36482 + 2.36483 + //! Insert the instance image into into an existing .cimg file, at specified coordinates. 2.36484 + const CImgList<T>& save_cimg(const char *const filename, 2.36485 + const unsigned int n0, 2.36486 + const unsigned int x0, const unsigned int y0, 2.36487 + const unsigned int z0, const unsigned int v0) const { 2.36488 + return _save_cimg(0,filename,n0,x0,y0,z0,v0); 2.36489 + } 2.36490 + 2.36491 + //! Insert the instance image into into an existing .cimg file, at specified coordinates. 2.36492 + const CImgList<T>& save_cimg(cimg_std::FILE *const file, 2.36493 + const unsigned int n0, 2.36494 + const unsigned int x0, const unsigned int y0, 2.36495 + const unsigned int z0, const unsigned int v0) const { 2.36496 + return _save_cimg(file,0,n0,x0,y0,z0,v0); 2.36497 + } 2.36498 + 2.36499 + // Create an empty .cimg file with specified dimensions (internal) 2.36500 + static void _save_empty_cimg(cimg_std::FILE *const file, const char *const filename, 2.36501 + const unsigned int nb, 2.36502 + const unsigned int dx, const unsigned int dy, 2.36503 + const unsigned int dz, const unsigned int dv) { 2.36504 + cimg_std::FILE *const nfile = file?file:cimg::fopen(filename,"wb"); 2.36505 + const unsigned int siz = dx*dy*dz*dv*sizeof(T); 2.36506 + cimg_std::fprintf(nfile,"%u %s\n",nb,pixel_type()); 2.36507 + for (unsigned int i=nb; i; --i) { 2.36508 + cimg_std::fprintf(nfile,"%u %u %u %u\n",dx,dy,dz,dv); 2.36509 + for (unsigned int off=siz; off; --off) cimg_std::fputc(0,nfile); 2.36510 + } 2.36511 + if (!file) cimg::fclose(nfile); 2.36512 + } 2.36513 + 2.36514 + //! Create an empty .cimg file with specified dimensions. 2.36515 + static void save_empty_cimg(const char *const filename, 2.36516 + const unsigned int nb, 2.36517 + const unsigned int dx, const unsigned int dy=1, 2.36518 + const unsigned int dz=1, const unsigned int dv=1) { 2.36519 + return _save_empty_cimg(0,filename,nb,dx,dy,dz,dv); 2.36520 + } 2.36521 + 2.36522 + //! Create an empty .cimg file with specified dimensions. 2.36523 + static void save_empty_cimg(cimg_std::FILE *const file, 2.36524 + const unsigned int nb, 2.36525 + const unsigned int dx, const unsigned int dy=1, 2.36526 + const unsigned int dz=1, const unsigned int dv=1) { 2.36527 + return _save_empty_cimg(file,0,nb,dx,dy,dz,dv); 2.36528 + } 2.36529 + 2.36530 + //! Save a file in TIFF format. 2.36531 +#ifdef cimg_use_tiff 2.36532 + const CImgList<T>& save_tiff(const char *const filename) const { 2.36533 + if (is_empty()) 2.36534 + throw CImgInstanceException("CImgList<%s>::save_tiff() : File '%s', instance list (%u,%p) is empty.", 2.36535 + pixel_type(),filename?filename:"(null)",size,data); 2.36536 + if (!filename) 2.36537 + throw CImgArgumentException("CImgList<%s>::save_tiff() : Specified filename is (null) for instance list (%u,%p).", 2.36538 + pixel_type(),size,data); 2.36539 + TIFF *tif = TIFFOpen(filename,"w"); 2.36540 + if (tif) { 2.36541 + for (unsigned int dir=0, l=0; l<size; ++l) { 2.36542 + const CImg<T>& img = (*this)[l]; 2.36543 + if (img) { 2.36544 + if (img.depth==1) img._save_tiff(tif,dir++); 2.36545 + else cimg_forZ(img,z) img.get_slice(z)._save_tiff(tif,dir++); 2.36546 + } 2.36547 + } 2.36548 + TIFFClose(tif); 2.36549 + } else 2.36550 + throw CImgException("CImgList<%s>::save_tiff() : File '%s', error while opening stream for tiff file.", 2.36551 + pixel_type(),filename); 2.36552 + return *this; 2.36553 + } 2.36554 +#endif 2.36555 + 2.36556 + //! Save an image list as a gzipped file, using external tool 'gzip'. 2.36557 + const CImgList<T>& save_gzip_external(const char *const filename) const { 2.36558 + if (!filename) 2.36559 + throw CImgIOException("CImg<%s>::save_gzip_external() : Cannot save (null) filename.", 2.36560 + pixel_type()); 2.36561 + char command[1024], filetmp[512], body[512]; 2.36562 + const char 2.36563 + *ext = cimg::split_filename(filename,body), 2.36564 + *ext2 = cimg::split_filename(body,0); 2.36565 + cimg_std::FILE *file; 2.36566 + do { 2.36567 + if (!cimg::strcasecmp(ext,"gz")) { 2.36568 + if (*ext2) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.36569 + cimg::filenamerand(),ext2); 2.36570 + else cimg_std::sprintf(filetmp,"%s%s%s.cimg",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.36571 + cimg::filenamerand()); 2.36572 + } else { 2.36573 + if (*ext) cimg_std::sprintf(filetmp,"%s%s%s.%s",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.36574 + cimg::filenamerand(),ext); 2.36575 + else cimg_std::sprintf(filetmp,"%s%s%s.cimg",cimg::temporary_path(),cimg_OS==2?"\\":"/", 2.36576 + cimg::filenamerand()); 2.36577 + } 2.36578 + if ((file=cimg_std::fopen(filetmp,"rb"))!=0) cimg_std::fclose(file); 2.36579 + } while (file); 2.36580 + save(filetmp); 2.36581 + cimg_std::sprintf(command,"%s -c %s > \"%s\"",cimg::gzip_path(),filetmp,filename); 2.36582 + cimg::system(command); 2.36583 + file = cimg_std::fopen(filename,"rb"); 2.36584 + if (!file) 2.36585 + throw CImgIOException("CImgList<%s>::save_gzip_external() : File '%s' cannot be saved.", 2.36586 + pixel_type(),filename); 2.36587 + else cimg::fclose(file); 2.36588 + cimg_std::remove(filetmp); 2.36589 + return *this; 2.36590 + } 2.36591 + 2.36592 + //! Save an image list into a OFF file. 2.36593 + template<typename tf, typename tc> 2.36594 + const CImgList<T>& save_off(const char *const filename, 2.36595 + const CImgList<tf>& primitives, const CImgList<tc>& colors, const bool invert_faces=false) const { 2.36596 + get_append('x','y').save_off(filename,primitives,colors,invert_faces); 2.36597 + return *this; 2.36598 + } 2.36599 + 2.36600 + //! Save an image list into a OFF file. 2.36601 + template<typename tf, typename tc> 2.36602 + const CImgList<T>& save_off(cimg_std::FILE *const file, 2.36603 + const CImgList<tf>& primitives, const CImgList<tc>& colors, const bool invert_faces=false) const { 2.36604 + get_append('x','y').save_off(file,primitives,colors,invert_faces); 2.36605 + return *this; 2.36606 + } 2.36607 + 2.36608 + //! Save an image sequence using the external tool 'ffmpeg'. 2.36609 + const CImgList<T>& save_ffmpeg_external(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, 2.36610 + const char *const codec="mpeg2video") const { 2.36611 + if (is_empty()) 2.36612 + throw CImgInstanceException("CImgList<%s>::save_ffmpeg_external() : File '%s', instance list (%u,%p) is empty.", 2.36613 + pixel_type(),filename?filename:"(null)",size,data); 2.36614 + if (!filename) 2.36615 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg_external() : Instance list (%u,%p), specified filename is (null).", 2.36616 + pixel_type(),size,data); 2.36617 + char command[1024], filetmp[512], filetmp2[512]; 2.36618 + cimg_std::FILE *file = 0; 2.36619 + const unsigned int nlast_frame = last_frame==~0U?size-1:last_frame; 2.36620 + if (first_frame>=size || nlast_frame>=size) 2.36621 + throw CImgArgumentException("CImgList<%s>::save_ffmpeg_external() : File '%s', specified frames [%u,%u] are out of list range (%u elements).", 2.36622 + pixel_type(),filename,first_frame,last_frame,size); 2.36623 + for (unsigned int ll = first_frame; ll<=nlast_frame; ++ll) if (!data[ll].is_sameXYZ(data[0])) 2.36624 + throw CImgInstanceException("CImgList<%s>::save_ffmpeg_external() : File '%s', all images of the sequence must be of the same dimension.", 2.36625 + pixel_type(),filename); 2.36626 + do { 2.36627 + cimg_std::sprintf(filetmp,"%s%s%s",cimg::temporary_path(),cimg_OS==2?"\\":"/",cimg::filenamerand()); 2.36628 + cimg_std::sprintf(filetmp2,"%s_000001.ppm",filetmp); 2.36629 + if ((file=cimg_std::fopen(filetmp2,"rb"))!=0) cimg_std::fclose(file); 2.36630 + } while (file); 2.36631 + for (unsigned int l = first_frame; l<=nlast_frame; ++l) { 2.36632 + cimg_std::sprintf(filetmp2,"%s_%.6u.ppm",filetmp,l+1); 2.36633 + if (data[l].depth>1 || data[l].dim!=3) data[l].get_resize(-100,-100,1,3).save_pnm(filetmp2); 2.36634 + else data[l].save_pnm(filetmp2); 2.36635 + } 2.36636 +#if cimg_OS!=2 2.36637 + cimg_std::sprintf(command,"ffmpeg -i %s_%%6d.ppm -vcodec %s -sameq -y \"%s\" >/dev/null 2>&1",filetmp,codec,filename); 2.36638 +#else 2.36639 + cimg_std::sprintf(command,"\"ffmpeg -i %s_%%6d.ppm -vcodec %s -sameq -y \"%s\"\" >NUL 2>&1",filetmp,codec,filename); 2.36640 +#endif 2.36641 + cimg::system(command); 2.36642 + file = cimg_std::fopen(filename,"rb"); 2.36643 + if (!file) 2.36644 + throw CImgIOException("CImg<%s>::save_ffmpeg_external() : Failed to save image sequence '%s'.\n\n", 2.36645 + pixel_type(),filename); 2.36646 + else cimg::fclose(file); 2.36647 + cimglist_for(*this,lll) { cimg_std::sprintf(filetmp2,"%s_%.6u.ppm",filetmp,lll+1); cimg_std::remove(filetmp2); } 2.36648 + return *this; 2.36649 + } 2.36650 + 2.36651 + }; 2.36652 + 2.36653 + /* 2.36654 + #--------------------------------------------- 2.36655 + # 2.36656 + # Completion of previously declared functions 2.36657 + # 2.36658 + #---------------------------------------------- 2.36659 + */ 2.36660 + 2.36661 +namespace cimg { 2.36662 + 2.36663 + //! Display a dialog box, where a user can click standard buttons. 2.36664 + /** 2.36665 + Up to 6 buttons can be defined in the dialog window. 2.36666 + This function returns when a user clicked one of the button or closed the dialog window. 2.36667 + \param title = Title of the dialog window. 2.36668 + \param msg = Main message displayed inside the dialog window. 2.36669 + \param button1_txt = Label of the 1st button. 2.36670 + \param button2_txt = Label of the 2nd button. 2.36671 + \param button3_txt = Label of the 3rd button. 2.36672 + \param button4_txt = Label of the 4th button. 2.36673 + \param button5_txt = Label of the 5th button. 2.36674 + \param button6_txt = Label of the 6th button. 2.36675 + \param logo = Logo image displayed at the left of the main message. This parameter is optional. 2.36676 + \param centering = Tell to center the dialog window on the screen. 2.36677 + \return The button number (from 0 to 5), or -1 if the dialog window has been closed by the user. 2.36678 + \note If a button text is set to 0, then the corresponding button (and the followings) won't appear in 2.36679 + the dialog box. At least one button is necessary. 2.36680 + **/ 2.36681 + 2.36682 + template<typename t> 2.36683 + inline int dialog(const char *title, const char *msg, 2.36684 + const char *button1_txt, const char *button2_txt, 2.36685 + const char *button3_txt, const char *button4_txt, 2.36686 + const char *button5_txt, const char *button6_txt, 2.36687 + const CImg<t>& logo, const bool centering = false) { 2.36688 +#if cimg_display!=0 2.36689 + const unsigned char 2.36690 + black[] = { 0,0,0 }, white[] = { 255,255,255 }, gray[] = { 200,200,200 }, gray2[] = { 150,150,150 }; 2.36691 + 2.36692 + // Create buttons and canvas graphics 2.36693 + CImgList<unsigned char> buttons, cbuttons, sbuttons; 2.36694 + if (button1_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button1_txt,black,gray,1,13)); 2.36695 + if (button2_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button2_txt,black,gray,1,13)); 2.36696 + if (button3_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button3_txt,black,gray,1,13)); 2.36697 + if (button4_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button4_txt,black,gray,1,13)); 2.36698 + if (button5_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button5_txt,black,gray,1,13)); 2.36699 + if (button6_txt) { buttons.insert(CImg<unsigned char>().draw_text(0,0,button6_txt,black,gray,1,13)); 2.36700 + }}}}}} 2.36701 + if (!buttons.size) 2.36702 + throw CImgArgumentException("cimg::dialog() : No buttons have been defined. At least one is necessary"); 2.36703 + 2.36704 + unsigned int bw = 0, bh = 0; 2.36705 + cimglist_for(buttons,l) { bw = cimg::max(bw,buttons[l].width); bh = cimg::max(bh,buttons[l].height); } 2.36706 + bw+=8; bh+=8; 2.36707 + if (bw<64) bw=64; 2.36708 + if (bw>128) bw=128; 2.36709 + if (bh<24) bh=24; 2.36710 + if (bh>48) bh=48; 2.36711 + 2.36712 + CImg<unsigned char> button(bw,bh,1,3); 2.36713 + button.draw_rectangle(0,0,bw-1,bh-1,gray); 2.36714 + button.draw_line(0,0,bw-1,0,white).draw_line(0,bh-1,0,0,white); 2.36715 + button.draw_line(bw-1,0,bw-1,bh-1,black).draw_line(bw-1,bh-1,0,bh-1,black); 2.36716 + button.draw_line(1,bh-2,bw-2,bh-2,gray2).draw_line(bw-2,bh-2,bw-2,1,gray2); 2.36717 + CImg<unsigned char> sbutton(bw,bh,1,3); 2.36718 + sbutton.draw_rectangle(0,0,bw-1,bh-1,gray); 2.36719 + sbutton.draw_line(0,0,bw-1,0,black).draw_line(bw-1,0,bw-1,bh-1,black); 2.36720 + sbutton.draw_line(bw-1,bh-1,0,bh-1,black).draw_line(0,bh-1,0,0,black); 2.36721 + sbutton.draw_line(1,1,bw-2,1,white).draw_line(1,bh-2,1,1,white); 2.36722 + sbutton.draw_line(bw-2,1,bw-2,bh-2,black).draw_line(bw-2,bh-2,1,bh-2,black); 2.36723 + sbutton.draw_line(2,bh-3,bw-3,bh-3,gray2).draw_line(bw-3,bh-3,bw-3,2,gray2); 2.36724 + sbutton.draw_line(4,4,bw-5,4,black,1,0xAAAAAAAA,true).draw_line(bw-5,4,bw-5,bh-5,black,1,0xAAAAAAAA,false); 2.36725 + sbutton.draw_line(bw-5,bh-5,4,bh-5,black,1,0xAAAAAAAA,false).draw_line(4,bh-5,4,4,black,1,0xAAAAAAAA,false); 2.36726 + CImg<unsigned char> cbutton(bw,bh,1,3); 2.36727 + cbutton.draw_rectangle(0,0,bw-1,bh-1,black).draw_rectangle(1,1,bw-2,bh-2,gray2).draw_rectangle(2,2,bw-3,bh-3,gray); 2.36728 + cbutton.draw_line(4,4,bw-5,4,black,1,0xAAAAAAAA,true).draw_line(bw-5,4,bw-5,bh-5,black,1,0xAAAAAAAA,false); 2.36729 + cbutton.draw_line(bw-5,bh-5,4,bh-5,black,1,0xAAAAAAAA,false).draw_line(4,bh-5,4,4,black,1,0xAAAAAAAA,false); 2.36730 + 2.36731 + cimglist_for(buttons,ll) { 2.36732 + cbuttons.insert(CImg<unsigned char>(cbutton).draw_image(1+(bw-buttons[ll].dimx())/2,1+(bh-buttons[ll].dimy())/2,buttons[ll])); 2.36733 + sbuttons.insert(CImg<unsigned char>(sbutton).draw_image((bw-buttons[ll].dimx())/2,(bh-buttons[ll].dimy())/2,buttons[ll])); 2.36734 + buttons[ll] = CImg<unsigned char>(button).draw_image((bw-buttons[ll].dimx())/2,(bh-buttons[ll].dimy())/2,buttons[ll]); 2.36735 + } 2.36736 + 2.36737 + CImg<unsigned char> canvas; 2.36738 + if (msg) canvas = CImg<unsigned char>().draw_text(0,0,msg,black,gray,1,13); 2.36739 + const unsigned int 2.36740 + bwall = (buttons.size-1)*(12+bw) + bw, 2.36741 + w = cimg::max(196U,36+logo.width+canvas.width, 24+bwall), 2.36742 + h = cimg::max(96U,36+canvas.height+bh,36+logo.height+bh), 2.36743 + lx = 12 + (canvas.data?0:((w-24-logo.width)/2)), 2.36744 + ly = (h-12-bh-logo.height)/2, 2.36745 + tx = lx+logo.width+12, 2.36746 + ty = (h-12-bh-canvas.height)/2, 2.36747 + bx = (w-bwall)/2, 2.36748 + by = h-12-bh; 2.36749 + 2.36750 + if (canvas.data) 2.36751 + canvas = CImg<unsigned char>(w,h,1,3). 2.36752 + draw_rectangle(0,0,w-1,h-1,gray). 2.36753 + draw_line(0,0,w-1,0,white).draw_line(0,h-1,0,0,white). 2.36754 + draw_line(w-1,0,w-1,h-1,black).draw_line(w-1,h-1,0,h-1,black). 2.36755 + draw_image(tx,ty,canvas); 2.36756 + else 2.36757 + canvas = CImg<unsigned char>(w,h,1,3). 2.36758 + draw_rectangle(0,0,w-1,h-1,gray). 2.36759 + draw_line(0,0,w-1,0,white).draw_line(0,h-1,0,0,white). 2.36760 + draw_line(w-1,0,w-1,h-1,black).draw_line(w-1,h-1,0,h-1,black); 2.36761 + if (logo.data) canvas.draw_image(lx,ly,logo); 2.36762 + 2.36763 + unsigned int xbuttons[6]; 2.36764 + cimglist_for(buttons,lll) { xbuttons[lll] = bx+(bw+12)*lll; canvas.draw_image(xbuttons[lll],by,buttons[lll]); } 2.36765 + 2.36766 + // Open window and enter events loop 2.36767 + CImgDisplay disp(canvas,title?title:" ",0,false,centering?true:false); 2.36768 + if (centering) disp.move((CImgDisplay::screen_dimx()-disp.dimx())/2, 2.36769 + (CImgDisplay::screen_dimy()-disp.dimy())/2); 2.36770 + bool stopflag = false, refresh = false; 2.36771 + int oselected = -1, oclicked = -1, selected = -1, clicked = -1; 2.36772 + while (!disp.is_closed && !stopflag) { 2.36773 + if (refresh) { 2.36774 + if (clicked>=0) CImg<unsigned char>(canvas).draw_image(xbuttons[clicked],by,cbuttons[clicked]).display(disp); 2.36775 + else { 2.36776 + if (selected>=0) CImg<unsigned char>(canvas).draw_image(xbuttons[selected],by,sbuttons[selected]).display(disp); 2.36777 + else canvas.display(disp); 2.36778 + } 2.36779 + refresh = false; 2.36780 + } 2.36781 + disp.wait(15); 2.36782 + if (disp.is_resized) disp.resize(disp); 2.36783 + 2.36784 + if (disp.button&1) { 2.36785 + oclicked = clicked; 2.36786 + clicked = -1; 2.36787 + cimglist_for(buttons,l) 2.36788 + if (disp.mouse_y>=(int)by && disp.mouse_y<(int)(by+bh) && 2.36789 + disp.mouse_x>=(int)xbuttons[l] && disp.mouse_x<(int)(xbuttons[l]+bw)) { 2.36790 + clicked = selected = l; 2.36791 + refresh = true; 2.36792 + } 2.36793 + if (clicked!=oclicked) refresh = true; 2.36794 + } else if (clicked>=0) stopflag = true; 2.36795 + 2.36796 + if (disp.key) { 2.36797 + oselected = selected; 2.36798 + switch (disp.key) { 2.36799 + case cimg::keyESC : selected=-1; stopflag=true; break; 2.36800 + case cimg::keyENTER : if (selected<0) selected = 0; stopflag = true; break; 2.36801 + case cimg::keyTAB : 2.36802 + case cimg::keyARROWRIGHT : 2.36803 + case cimg::keyARROWDOWN : selected = (selected+1)%buttons.size; break; 2.36804 + case cimg::keyARROWLEFT : 2.36805 + case cimg::keyARROWUP : selected = (selected+buttons.size-1)%buttons.size; break; 2.36806 + } 2.36807 + disp.key = 0; 2.36808 + if (selected!=oselected) refresh = true; 2.36809 + } 2.36810 + } 2.36811 + if (!disp) selected = -1; 2.36812 + return selected; 2.36813 +#else 2.36814 + cimg_std::fprintf(cimg_stdout,"<%s>\n\n%s\n\n",title,msg); 2.36815 + return -1+0*(int)(button1_txt-button2_txt+button3_txt-button4_txt+button5_txt-button6_txt+logo.width+(int)centering); 2.36816 +#endif 2.36817 + } 2.36818 + 2.36819 + inline int dialog(const char *title, const char *msg, 2.36820 + const char *button1_txt, const char *button2_txt, const char *button3_txt, 2.36821 + const char *button4_txt, const char *button5_txt, const char *button6_txt, 2.36822 + const bool centering) { 2.36823 + return dialog(title,msg,button1_txt,button2_txt,button3_txt,button4_txt,button5_txt,button6_txt, 2.36824 + CImg<unsigned char>::logo40x38(),centering); 2.36825 + } 2.36826 + 2.36827 + // End of cimg:: namespace 2.36828 +} 2.36829 + 2.36830 + // End of cimg_library:: namespace 2.36831 +} 2.36832 + 2.36833 +#ifdef _cimg_redefine_min 2.36834 +#define min(a,b) (((a)<(b))?(a):(b)) 2.36835 +#endif 2.36836 +#ifdef _cimg_redefine_max 2.36837 +#define max(a,b) (((a)>(b))?(a):(b)) 2.36838 +#endif 2.36839 + 2.36840 +#endif 2.36841 +// Local Variables: 2.36842 +// mode: c++ 2.36843 +// End:
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 3.2 +++ b/PTdecode/CImg-1.3.0/Licence_CeCILL-C_V1-en.txt Mon Aug 03 14:09:20 2009 +0100 3.3 @@ -0,0 +1,508 @@ 3.4 + 3.5 + CeCILL-C FREE SOFTWARE LICENSE AGREEMENT 3.6 + 3.7 + 3.8 + Notice 3.9 + 3.10 +This Agreement is a Free Software license agreement that is the result 3.11 +of discussions between its authors in order to ensure compliance with 3.12 +the two main principles guiding its drafting: 3.13 + 3.14 + * firstly, compliance with the principles governing the distribution 3.15 + of Free Software: access to source code, broad rights granted to 3.16 + users, 3.17 + * secondly, the election of a governing law, French law, with which 3.18 + it is conformant, both as regards the law of torts and 3.19 + intellectual property law, and the protection that it offers to 3.20 + both authors and holders of the economic rights over software. 3.21 + 3.22 +The authors of the CeCILL-C (for Ce[a] C[nrs] I[nria] L[logiciel] L[ibre]) 3.23 +license are: 3.24 + 3.25 +Commissariat à l'Energie Atomique - CEA, a public scientific, technical 3.26 +and industrial research establishment, having its principal place of 3.27 +business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France. 3.28 + 3.29 +Centre National de la Recherche Scientifique - CNRS, a public scientific 3.30 +and technological establishment, having its principal place of business 3.31 +at 3 rue Michel-Ange, 75794 Paris cedex 16, France. 3.32 + 3.33 +Institut National de Recherche en Informatique et en Automatique - 3.34 +INRIA, a public scientific and technological establishment, having its 3.35 +principal place of business at Domaine de Voluceau, Rocquencourt, BP 3.36 +105, 78153 Le Chesnay cedex, France. 3.37 + 3.38 + 3.39 + Preamble 3.40 + 3.41 +The purpose of this Free Software license agreement is to grant users the 3.42 +right to modify and re-use the software governed by this license. 3.43 + 3.44 +The exercising of this right is conditional on the obligation to make 3.45 +available to the community the modifications made to the source code of the 3.46 +software so as to contribute to its evolution. 3.47 + 3.48 +In consideration of access to the source code and the rights to copy, 3.49 +modify and redistribute granted by the license, users are provided only 3.50 +with a limited warranty and the software's author, the holder of the 3.51 +economic rights, and the successive licensors only have limited liability. 3.52 + 3.53 +In this respect, the risks associated with loading, using, modifying 3.54 +and/or developing or reproducing the software by the user are brought to 3.55 +the user's attention, given its Free Software status, which may make it 3.56 +complicated to use, with the result that its use is reserved for 3.57 +developers and experienced professionals having in-depth computer 3.58 +knowledge. Users are therefore encouraged to load and test the suitability 3.59 +of the software as regards their requirements in conditions enabling the 3.60 +security of their systems and/or data to be ensured and, more generally, to 3.61 +use and operate it in the same conditions of security. This Agreement may be 3.62 +freely reproduced and published, provided it is not altered, and that no 3.63 +provisions are either added or removed herefrom. 3.64 + 3.65 +This Agreement may apply to any or all software for which the holder of 3.66 +the economic rights decides to submit the use thereof to its provisions. 3.67 + 3.68 + 3.69 + Article 1 - DEFINITIONS 3.70 + 3.71 +For the purpose of this Agreement, when the following expressions 3.72 +commence with a capital letter, they shall have the following meaning: 3.73 + 3.74 +Agreement: means this license agreement, and its possible subsequent 3.75 +versions and annexes. 3.76 + 3.77 +Software: means the software in its Object Code and/or Source Code form 3.78 +and, where applicable, its documentation, "as is" when the Licensee 3.79 +accepts the Agreement. 3.80 + 3.81 +Initial Software: means the Software in its Source Code and possibly its 3.82 +Object Code form and, where applicable, its documentation, "as is" when 3.83 +it is first distributed under the terms and conditions of the Agreement. 3.84 + 3.85 +Modified Software: means the Software modified by at least one Integrated 3.86 +Contribution. 3.87 + 3.88 +Source Code: means all the Software's instructions and program lines to 3.89 +which access is required so as to modify the Software. 3.90 + 3.91 +Object Code: means the binary files originating from the compilation of 3.92 +the Source Code. 3.93 + 3.94 +Holder: means the holder(s) of the economic rights over the Initial 3.95 +Software. 3.96 + 3.97 +Licensee: means the Software user(s) having accepted the Agreement. 3.98 + 3.99 +Contributor: means a Licensee having made at least one Integrated 3.100 +Contribution. 3.101 + 3.102 +Licensor: means the Holder, or any other individual or legal entity, who 3.103 +distributes the Software under the Agreement. 3.104 + 3.105 +Integrated Contribution: means any or all modifications, corrections, 3.106 +translations, adaptations and/or new functions integrated into the Source 3.107 +Code by any or all Contributors. 3.108 + 3.109 +Related Module: means a set of sources files including their documentation 3.110 +that, without modification to the Source Code, enables supplementary 3.111 +functions or services in addition to those offered by the Software. 3.112 + 3.113 +Derivative Software: means any combination of the Software, modified or not, 3.114 +and of a Related Module. 3.115 + 3.116 +Parties: mean both the Licensee and the Licensor. 3.117 + 3.118 +These expressions may be used both in singular and plural form. 3.119 + 3.120 + 3.121 + Article 2 - PURPOSE 3.122 + 3.123 +The purpose of the Agreement is the grant by the Licensor to the 3.124 +Licensee of a non-exclusive, transferable and worldwide license for the 3.125 +Software as set forth in Article 5 hereinafter for the whole term of the 3.126 +protection granted by the rights over said Software. 3.127 + 3.128 + 3.129 + Article 3 - ACCEPTANCE 3.130 + 3.131 +3.1 The Licensee shall be deemed as having accepted the terms and 3.132 +conditions of this Agreement upon the occurrence of the first of the 3.133 +following events: 3.134 + 3.135 + * (i) loading the Software by any or all means, notably, by 3.136 + downloading from a remote server, or by loading from a physical 3.137 + medium; 3.138 + * (ii) the first time the Licensee exercises any of the rights 3.139 + granted hereunder. 3.140 + 3.141 +3.2 One copy of the Agreement, containing a notice relating to the 3.142 +characteristics of the Software, to the limited warranty, and to the 3.143 +fact that its use is restricted to experienced users has been provided 3.144 +to the Licensee prior to its acceptance as set forth in Article 3.1 3.145 +hereinabove, and the Licensee hereby acknowledges that it has read and 3.146 +understood it. 3.147 + 3.148 + 3.149 + Article 4 - EFFECTIVE DATE AND TERM 3.150 + 3.151 + 3.152 + 4.1 EFFECTIVE DATE 3.153 + 3.154 +The Agreement shall become effective on the date when it is accepted by 3.155 +the Licensee as set forth in Article 3.1. 3.156 + 3.157 + 3.158 + 4.2 TERM 3.159 + 3.160 +The Agreement shall remain in force for the entire legal term of 3.161 +protection of the economic rights over the Software. 3.162 + 3.163 + 3.164 + Article 5 - SCOPE OF RIGHTS GRANTED 3.165 + 3.166 +The Licensor hereby grants to the Licensee, who accepts, the following 3.167 +rights over the Software for any or all use, and for the term of the 3.168 +Agreement, on the basis of the terms and conditions set forth hereinafter. 3.169 + 3.170 +Besides, if the Licensor owns or comes to own one or more patents 3.171 +protecting all or part of the functions of the Software or of its 3.172 +components, the Licensor undertakes not to enforce the rights granted by 3.173 +these patents against successive Licensees using, exploiting or 3.174 +modifying the Software. If these patents are transferred, the Licensor 3.175 +undertakes to have the transferees subscribe to the obligations set 3.176 +forth in this paragraph. 3.177 + 3.178 + 3.179 + 5.1 RIGHT OF USE 3.180 + 3.181 +The Licensee is authorized to use the Software, without any limitation 3.182 +as to its fields of application, with it being hereinafter specified 3.183 +that this comprises: 3.184 + 3.185 + 1. permanent or temporary reproduction of all or part of the Software 3.186 + by any or all means and in any or all form. 3.187 + 2. loading, displaying, running, or storing the Software on any or 3.188 + all medium. 3.189 + 3. entitlement to observe, study or test its operation so as to 3.190 + determine the ideas and principles behind any or all constituent 3.191 + elements of said Software. This shall apply when the Licensee 3.192 + carries out any or all loading, displaying, running, transmission 3.193 + or storage operation as regards the Software, that it is entitled 3.194 + to carry out hereunder. 3.195 + 3.196 + 3.197 + 5.2 RIGHT OF MODIFICATION 3.198 + 3.199 +The right of modification includes the right to translate, adapt, arrange, 3.200 +or make any or all modifications to the Software, and the right to 3.201 +reproduce the resulting Software. It includes, in particular, the right 3.202 +to create a Derivative Software. 3.203 + 3.204 +The Licensee is authorized to make any or all modification to the 3.205 +Software provided that it includes an explicit notice that it is the 3.206 +author of said modification and indicates the date of the creation thereof. 3.207 + 3.208 + 3.209 + 5.3 RIGHT OF DISTRIBUTION 3.210 + 3.211 +In particular, the right of distribution includes the right to publish, 3.212 +transmit and communicate the Software to the general public on any or 3.213 +all medium, and by any or all means, and the right to market, either in 3.214 +consideration of a fee, or free of charge, one or more copies of the 3.215 +Software by any means. 3.216 + 3.217 +The Licensee is further authorized to distribute copies of the modified 3.218 +or unmodified Software to third parties according to the terms and 3.219 +conditions set forth hereinafter. 3.220 + 3.221 + 3.222 + 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION 3.223 + 3.224 +The Licensee is authorized to distribute true copies of the Software in 3.225 +Source Code or Object Code form, provided that said distribution 3.226 +complies with all the provisions of the Agreement and is accompanied by: 3.227 + 3.228 + 1. a copy of the Agreement, 3.229 + 3.230 + 2. a notice relating to the limitation of both the Licensor's 3.231 + warranty and liability as set forth in Articles 8 and 9, 3.232 + 3.233 +and that, in the event that only the Object Code of the Software is 3.234 +redistributed, the Licensee allows effective access to the full Source Code 3.235 +of the Software at a minimum during the entire period of its distribution 3.236 +of the Software, it being understood that the additional cost of acquiring 3.237 +the Source Code shall not exceed the cost of transferring the data. 3.238 + 3.239 + 3.240 + 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE 3.241 + 3.242 +When the Licensee makes an Integrated Contribution to the Software, the terms 3.243 +and conditions for the distribution of the resulting Modified Software become 3.244 +subject to all the provisions of this Agreement. 3.245 + 3.246 +The Licensee is authorized to distribute the Modified Software, in source 3.247 +code or object code form, provided that said distribution complies with all 3.248 +the provisions of the Agreement and is accompanied by: 3.249 + 3.250 + 1. a copy of the Agreement, 3.251 + 2. a notice relating to the limitation of both the Licensor's warranty and 3.252 + liability as set forth in Articles 8 and 9, 3.253 + 3.254 +and that, in the event that only the object code of the Modified Software is 3.255 +redistributed, the Licensee allows effective access to the full source code 3.256 +of the Modified Software at a minimum during the entire period of its 3.257 +distribution of the Modified Software, it being understood that the 3.258 +additional cost of acquiring the source code shall not exceed the cost of 3.259 +transferring the data. 3.260 + 3.261 + 5.3.3 DISTRIBUTION OF DERIVATIVE SOFTWARE 3.262 + 3.263 +When the Licensee creates Derivative Software, this Derivative Software may 3.264 +be distributed under a license agreement other than this Agreement, subject 3.265 +to compliance with the requirement to include a notice concerning the rights 3.266 +over the Software as defined in Article 6.4. In the event the creation of the 3.267 +Derivative Software required modification of the Source Code, the Licensee 3.268 +undertakes that: 3.269 + 3.270 + 1. the resulting Modified Software will be governed by this Agreement, 3.271 + 2. the Integrated Contributions in the resulting Modified Software will be 3.272 + clearly identified and documented, 3.273 + 3. the Licensee will allow effective access to the source code of the 3.274 + Modified Software, at a minimum during the entire period of 3.275 + distribution of the Derivative Software, such that such modifications 3.276 + may be carried over in a subsequent version of the Software; it being 3.277 + understood that the additional cost of purchasing the source code of 3.278 + the Modified Software shall not exceed the cost of transferring the 3.279 + data. 3.280 + 3.281 + 3.282 + 5.3.4 COMPATIBILITY WITH THE CeCILL LICENSE 3.283 + 3.284 +When a Modified Software contains an Integrated Contribution subject to the 3.285 +CeCill license agreement, or when a Derivative Software contains a Related 3.286 +Module subject to the CeCill license agreement, the provisions set forth in 3.287 +the third item of Article 6.4 are optional. 3.288 + 3.289 + 3.290 + Article 6 - INTELLECTUAL PROPERTY 3.291 + 3.292 + 3.293 + 6.1 OVER THE INITIAL SOFTWARE 3.294 + 3.295 +The Holder owns the economic rights over the Initial Software. Any or 3.296 +all use of the Initial Software is subject to compliance with the terms 3.297 +and conditions under which the Holder has elected to distribute its work 3.298 +and no one shall be entitled to modify the terms and conditions for the 3.299 +distribution of said Initial Software. 3.300 + 3.301 +The Holder undertakes that the Initial Software will remain ruled at 3.302 +least by the current license, for the duration set forth in Article 4.2. 3.303 + 3.304 + 3.305 + 6.2 OVER THE INTEGRATED CONTRIBUTIONS 3.306 + 3.307 +A Licensee who develops an Integrated Contribution is the owner of the 3.308 +intellectual property rights over this Contribution as defined by 3.309 +applicable law. 3.310 + 3.311 + 3.312 + 6.3 OVER THE RELATED MODULES 3.313 + 3.314 +A Licensee who develops an Related Module is the owner of the 3.315 +intellectual property rights over this Related Module as defined by 3.316 +applicable law and is free to choose the type of agreement that shall 3.317 +govern its distribution under the conditions defined in Article 5.3.3. 3.318 + 3.319 + 3.320 + 6.4 NOTICE OF RIGHTS 3.321 + 3.322 +The Licensee expressly undertakes: 3.323 + 3.324 + 1. not to remove, or modify, in any manner, the intellectual property 3.325 + notices attached to the Software; 3.326 + 2. to reproduce said notices, in an identical manner, in the copies 3.327 + of the Software modified or not; 3.328 + 3. to ensure that use of the Software, its intellectual property 3.329 + notices and the fact that it is governed by the Agreement is 3.330 + indicated in a text that is easily accessible, specifically from 3.331 + the interface of any Derivative Software. 3.332 + 3.333 +The Licensee undertakes not to directly or indirectly infringe the 3.334 +intellectual property rights of the Holder and/or Contributors on the 3.335 +Software and to take, where applicable, vis-à-vis its staff, any and all 3.336 +measures required to ensure respect of said intellectual property rights 3.337 +of the Holder and/or Contributors. 3.338 + 3.339 + 3.340 + Article 7 - RELATED SERVICES 3.341 + 3.342 +7.1 Under no circumstances shall the Agreement oblige the Licensor to 3.343 +provide technical assistance or maintenance services for the Software. 3.344 + 3.345 +However, the Licensor is entitled to offer this type of services. The 3.346 +terms and conditions of such technical assistance, and/or such 3.347 +maintenance, shall be set forth in a separate instrument. Only the 3.348 +Licensor offering said maintenance and/or technical assistance services 3.349 +shall incur liability therefor. 3.350 + 3.351 +7.2 Similarly, any Licensor is entitled to offer to its licensees, under 3.352 +its sole responsibility, a warranty, that shall only be binding upon 3.353 +itself, for the redistribution of the Software and/or the Modified 3.354 +Software, under terms and conditions that it is free to decide. Said 3.355 +warranty, and the financial terms and conditions of its application, 3.356 +shall be subject of a separate instrument executed between the Licensor 3.357 +and the Licensee. 3.358 + 3.359 + 3.360 + Article 8 - LIABILITY 3.361 + 3.362 +8.1 Subject to the provisions of Article 8.2, the Licensee shall be 3.363 +entitled to claim compensation for any direct loss it may have suffered 3.364 +from the Software as a result of a fault on the part of the relevant 3.365 +Licensor, subject to providing evidence thereof. 3.366 + 3.367 +8.2 The Licensor's liability is limited to the commitments made under 3.368 +this Agreement and shall not be incurred as a result of in particular: 3.369 +(i) loss due the Licensee's total or partial failure to fulfill its 3.370 +obligations, (ii) direct or consequential loss that is suffered by the 3.371 +Licensee due to the use or performance of the Software, and (iii) more 3.372 +generally, any consequential loss. In particular the Parties expressly 3.373 +agree that any or all pecuniary or business loss (i.e. loss of data, 3.374 +loss of profits, operating loss, loss of customers or orders, 3.375 +opportunity cost, any disturbance to business activities) or any or all 3.376 +legal proceedings instituted against the Licensee by a third party, 3.377 +shall constitute consequential loss and shall not provide entitlement to 3.378 +any or all compensation from the Licensor. 3.379 + 3.380 + 3.381 + Article 9 - WARRANTY 3.382 + 3.383 +9.1 The Licensee acknowledges that the scientific and technical 3.384 +state-of-the-art when the Software was distributed did not enable all 3.385 +possible uses to be tested and verified, nor for the presence of 3.386 +possible defects to be detected. In this respect, the Licensee's 3.387 +attention has been drawn to the risks associated with loading, using, 3.388 +modifying and/or developing and reproducing the Software which are 3.389 +reserved for experienced users. 3.390 + 3.391 +The Licensee shall be responsible for verifying, by any or all means, 3.392 +the suitability of the product for its requirements, its good working order, 3.393 +and for ensuring that it shall not cause damage to either persons or 3.394 +properties. 3.395 + 3.396 +9.2 The Licensor hereby represents, in good faith, that it is entitled 3.397 +to grant all the rights over the Software (including in particular the 3.398 +rights set forth in Article 5). 3.399 + 3.400 +9.3 The Licensee acknowledges that the Software is supplied "as is" by 3.401 +the Licensor without any other express or tacit warranty, other than 3.402 +that provided for in Article 9.2 and, in particular, without any warranty 3.403 +as to its commercial value, its secured, safe, innovative or relevant 3.404 +nature. 3.405 + 3.406 +Specifically, the Licensor does not warrant that the Software is free 3.407 +from any error, that it will operate without interruption, that it will 3.408 +be compatible with the Licensee's own equipment and software 3.409 +configuration, nor that it will meet the Licensee's requirements. 3.410 + 3.411 +9.4 The Licensor does not either expressly or tacitly warrant that the 3.412 +Software does not infringe any third party intellectual property right 3.413 +relating to a patent, software or any other property right. Therefore, 3.414 +the Licensor disclaims any and all liability towards the Licensee 3.415 +arising out of any or all proceedings for infringement that may be 3.416 +instituted in respect of the use, modification and redistribution of the 3.417 +Software. Nevertheless, should such proceedings be instituted against 3.418 +the Licensee, the Licensor shall provide it with technical and legal 3.419 +assistance for its defense. Such technical and legal assistance shall be 3.420 +decided on a case-by-case basis between the relevant Licensor and the 3.421 +Licensee pursuant to a memorandum of understanding. The Licensor 3.422 +disclaims any and all liability as regards the Licensee's use of the 3.423 +name of the Software. No warranty is given as regards the existence of 3.424 +prior rights over the name of the Software or as regards the existence 3.425 +of a trademark. 3.426 + 3.427 + 3.428 + Article 10 - TERMINATION 3.429 + 3.430 +10.1 In the event of a breach by the Licensee of its obligations 3.431 +hereunder, the Licensor may automatically terminate this Agreement 3.432 +thirty (30) days after notice has been sent to the Licensee and has 3.433 +remained ineffective. 3.434 + 3.435 +10.2 A Licensee whose Agreement is terminated shall no longer be 3.436 +authorized to use, modify or distribute the Software. However, any 3.437 +licenses that it may have granted prior to termination of the Agreement 3.438 +shall remain valid subject to their having been granted in compliance 3.439 +with the terms and conditions hereof. 3.440 + 3.441 + 3.442 + Article 11 - MISCELLANEOUS 3.443 + 3.444 + 3.445 + 11.1 EXCUSABLE EVENTS 3.446 + 3.447 +Neither Party shall be liable for any or all delay, or failure to 3.448 +perform the Agreement, that may be attributable to an event of force 3.449 +majeure, an act of God or an outside cause, such as defective 3.450 +functioning or interruptions of the electricity or telecommunications 3.451 +networks, network paralysis following a virus attack, intervention by 3.452 +government authorities, natural disasters, water damage, earthquakes, 3.453 +fire, explosions, strikes and labor unrest, war, etc. 3.454 + 3.455 +11.2 Any failure by either Party, on one or more occasions, to invoke 3.456 +one or more of the provisions hereof, shall under no circumstances be 3.457 +interpreted as being a waiver by the interested Party of its right to 3.458 +invoke said provision(s) subsequently. 3.459 + 3.460 +11.3 The Agreement cancels and replaces any or all previous agreements, 3.461 +whether written or oral, between the Parties and having the same 3.462 +purpose, and constitutes the entirety of the agreement between said 3.463 +Parties concerning said purpose. No supplement or modification to the 3.464 +terms and conditions hereof shall be effective as between the Parties 3.465 +unless it is made in writing and signed by their duly authorized 3.466 +representatives. 3.467 + 3.468 +11.4 In the event that one or more of the provisions hereof were to 3.469 +conflict with a current or future applicable act or legislative text, 3.470 +said act or legislative text shall prevail, and the Parties shall make 3.471 +the necessary amendments so as to comply with said act or legislative 3.472 +text. All other provisions shall remain effective. Similarly, invalidity 3.473 +of a provision of the Agreement, for any reason whatsoever, shall not 3.474 +cause the Agreement as a whole to be invalid. 3.475 + 3.476 + 3.477 + 11.5 LANGUAGE 3.478 + 3.479 +The Agreement is drafted in both French and English and both versions 3.480 +are deemed authentic. 3.481 + 3.482 + 3.483 + Article 12 - NEW VERSIONS OF THE AGREEMENT 3.484 + 3.485 +12.1 Any person is authorized to duplicate and distribute copies of this 3.486 +Agreement. 3.487 + 3.488 +12.2 So as to ensure coherence, the wording of this Agreement is 3.489 +protected and may only be modified by the authors of the License, who 3.490 +reserve the right to periodically publish updates or new versions of the 3.491 +Agreement, each with a separate number. These subsequent versions may 3.492 +address new issues encountered by Free Software. 3.493 + 3.494 +12.3 Any Software distributed under a given version of the Agreement 3.495 +may only be subsequently distributed under the same version of the 3.496 +Agreement or a subsequent version. 3.497 + 3.498 + 3.499 + Article 13 - GOVERNING LAW AND JURISDICTION 3.500 + 3.501 +13.1 The Agreement is governed by French law. The Parties agree to 3.502 +endeavor to seek an amicable solution to any disagreements or disputes 3.503 +that may arise during the performance of the Agreement. 3.504 + 3.505 +13.2 Failing an amicable solution within two (2) months as from their 3.506 +occurrence, and unless emergency proceedings are necessary, the 3.507 +disagreements or disputes shall be referred to the Paris Courts having 3.508 +jurisdiction, by the more diligent Party. 3.509 + 3.510 + 3.511 +Version 1.0 dated 2006-07-12.
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 4.2 +++ b/PTdecode/CImg-1.3.0/Licence_CeCILL_V2-en.txt Mon Aug 03 14:09:20 2009 +0100 4.3 @@ -0,0 +1,504 @@ 4.4 + 4.5 + CeCILL FREE SOFTWARE LICENSE AGREEMENT 4.6 + 4.7 + 4.8 + Notice 4.9 + 4.10 +This Agreement is a Free Software license agreement that is the result 4.11 +of discussions between its authors in order to ensure compliance with 4.12 +the two main principles guiding its drafting: 4.13 + 4.14 + * firstly, compliance with the principles governing the distribution 4.15 + of Free Software: access to source code, broad rights granted to 4.16 + users, 4.17 + * secondly, the election of a governing law, French law, with which 4.18 + it is conformant, both as regards the law of torts and 4.19 + intellectual property law, and the protection that it offers to 4.20 + both authors and holders of the economic rights over software. 4.21 + 4.22 +The authors of the CeCILL (for Ce[a] C[nrs] I[nria] L[logiciel] L[ibre]) 4.23 +license are: 4.24 + 4.25 +Commissariat à l'Energie Atomique - CEA, a public scientific, technical 4.26 +and industrial research establishment, having its principal place of 4.27 +business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France. 4.28 + 4.29 +Centre National de la Recherche Scientifique - CNRS, a public scientific 4.30 +and technological research establishment, having its principal place of 4.31 +business at 3 rue Michel-Ange, 75794 Paris cedex 16, France. 4.32 + 4.33 +Institut National de Recherche en Informatique et en Automatique - 4.34 +INRIA, a public scientific and technological establishment, having its 4.35 +principal place of business at Domaine de Voluceau, Rocquencourt, BP 4.36 +105, 78153 Le Chesnay cedex, France. 4.37 + 4.38 + 4.39 + Preamble 4.40 + 4.41 +The purpose of this Free Software license agreement is to grant users 4.42 +the right to modify and redistribute the software governed by this 4.43 +license within the framework of an open source distribution model. 4.44 + 4.45 +The exercising of these rights is conditional upon certain obligations 4.46 +for users so as to preserve this status for all subsequent redistributions. 4.47 + 4.48 +In consideration of access to the source code and the rights to copy, 4.49 +modify and redistribute granted by the license, users are provided only 4.50 +with a limited warranty and the software's author, the holder of the 4.51 +economic rights, and the successive licensors only have limited liability. 4.52 + 4.53 +In this respect, the risks associated with loading, using, modifying 4.54 +and/or developing or reproducing the software by the user are brought to 4.55 +the user's attention, given its Free Software status, which may make it 4.56 +complicated to use, with the result that its use is reserved for 4.57 +developers and experienced professionals having in-depth computer 4.58 +knowledge. Users are therefore encouraged to load and test the suitability 4.59 +of the software as regards their requirements in conditions enabling 4.60 +the security of their systems and/or data to be ensured and, more 4.61 +generally, to use and operate it in the same conditions of security. 4.62 +This Agreement may be freely reproduced and published, provided it is not 4.63 +altered, and that no provisions are either added or removed herefrom. 4.64 + 4.65 +This Agreement may apply to any or all software for which the holder of 4.66 +the economic rights decides to submit the use thereof to its provisions. 4.67 + 4.68 + 4.69 + Article 1 - DEFINITIONS 4.70 + 4.71 +For the purpose of this Agreement, when the following expressions 4.72 +commence with a capital letter, they shall have the following meaning: 4.73 + 4.74 +Agreement: means this license agreement, and its possible subsequent 4.75 +versions and annexes. 4.76 + 4.77 +Software: means the software in its Object Code and/or Source Code form 4.78 +and, where applicable, its documentation, "as is" when the Licensee 4.79 +accepts the Agreement. 4.80 + 4.81 +Initial Software: means the Software in its Source Code and possibly its 4.82 +Object Code form and, where applicable, its documentation, "as is" when 4.83 +it is first distributed under the terms and conditions of the Agreement. 4.84 + 4.85 +Modified Software: means the Software modified by at least one 4.86 +Contribution. 4.87 + 4.88 +Source Code: means all the Software's instructions and program lines to 4.89 +which access is required so as to modify the Software. 4.90 + 4.91 +Object Code: means the binary files originating from the compilation of 4.92 +the Source Code. 4.93 + 4.94 +Holder: means the holder(s) of the economic rights over the Initial 4.95 +Software. 4.96 + 4.97 +Licensee: means the Software user(s) having accepted the Agreement. 4.98 + 4.99 +Contributor: means a Licensee having made at least one Contribution. 4.100 + 4.101 +Licensor: means the Holder, or any other individual or legal entity, who 4.102 +distributes the Software under the Agreement. 4.103 + 4.104 +Contribution: means any or all modifications, corrections, translations, 4.105 +adaptations and/or new functions integrated into the Software by any or 4.106 +all Contributors, as well as any or all Internal Modules. 4.107 + 4.108 +Module: means a set of sources files including their documentation that 4.109 +enables supplementary functions or services in addition to those offered 4.110 +by the Software. 4.111 + 4.112 +External Module: means any or all Modules, not derived from the 4.113 +Software, so that this Module and the Software run in separate address 4.114 +spaces, with one calling the other when they are run. 4.115 + 4.116 +Internal Module: means any or all Module, connected to the Software so 4.117 +that they both execute in the same address space. 4.118 + 4.119 +GNU GPL: means the GNU General Public License version 2 or any 4.120 +subsequent version, as published by the Free Software Foundation Inc. 4.121 + 4.122 +Parties: mean both the Licensee and the Licensor. 4.123 + 4.124 +These expressions may be used both in singular and plural form. 4.125 + 4.126 + 4.127 + Article 2 - PURPOSE 4.128 + 4.129 +The purpose of the Agreement is the grant by the Licensor to the 4.130 +Licensee of a non-exclusive, transferable and worldwide license for the 4.131 +Software as set forth in Article 5 hereinafter for the whole term of the 4.132 +protection granted by the rights over said Software. 4.133 + 4.134 + 4.135 + Article 3 - ACCEPTANCE 4.136 + 4.137 +3.1 The Licensee shall be deemed as having accepted the terms and 4.138 +conditions of this Agreement upon the occurrence of the first of the 4.139 +following events: 4.140 + 4.141 + * (i) loading the Software by any or all means, notably, by 4.142 + downloading from a remote server, or by loading from a physical 4.143 + medium; 4.144 + * (ii) the first time the Licensee exercises any of the rights 4.145 + granted hereunder. 4.146 + 4.147 +3.2 One copy of the Agreement, containing a notice relating to the 4.148 +characteristics of the Software, to the limited warranty, and to the 4.149 +fact that its use is restricted to experienced users has been provided 4.150 +to the Licensee prior to its acceptance as set forth in Article 3.1 4.151 +hereinabove, and the Licensee hereby acknowledges that it has read and 4.152 +understood it. 4.153 + 4.154 + 4.155 + Article 4 - EFFECTIVE DATE AND TERM 4.156 + 4.157 + 4.158 + 4.1 EFFECTIVE DATE 4.159 + 4.160 +The Agreement shall become effective on the date when it is accepted by 4.161 +the Licensee as set forth in Article 3.1. 4.162 + 4.163 + 4.164 + 4.2 TERM 4.165 + 4.166 +The Agreement shall remain in force for the entire legal term of 4.167 +protection of the economic rights over the Software. 4.168 + 4.169 + 4.170 + Article 5 - SCOPE OF RIGHTS GRANTED 4.171 + 4.172 +The Licensor hereby grants to the Licensee, who accepts, the following 4.173 +rights over the Software for any or all use, and for the term of the 4.174 +Agreement, on the basis of the terms and conditions set forth hereinafter. 4.175 + 4.176 +Besides, if the Licensor owns or comes to own one or more patents 4.177 +protecting all or part of the functions of the Software or of its 4.178 +components, the Licensor undertakes not to enforce the rights granted by 4.179 +these patents against successive Licensees using, exploiting or 4.180 +modifying the Software. If these patents are transferred, the Licensor 4.181 +undertakes to have the transferees subscribe to the obligations set 4.182 +forth in this paragraph. 4.183 + 4.184 + 4.185 + 5.1 RIGHT OF USE 4.186 + 4.187 +The Licensee is authorized to use the Software, without any limitation 4.188 +as to its fields of application, with it being hereinafter specified 4.189 +that this comprises: 4.190 + 4.191 + 1. permanent or temporary reproduction of all or part of the Software 4.192 + by any or all means and in any or all form. 4.193 + 4.194 + 2. loading, displaying, running, or storing the Software on any or 4.195 + all medium. 4.196 + 4.197 + 3. entitlement to observe, study or test its operation so as to 4.198 + determine the ideas and principles behind any or all constituent 4.199 + elements of said Software. This shall apply when the Licensee 4.200 + carries out any or all loading, displaying, running, transmission 4.201 + or storage operation as regards the Software, that it is entitled 4.202 + to carry out hereunder. 4.203 + 4.204 + 4.205 + 5.2 ENTITLEMENT TO MAKE CONTRIBUTIONS 4.206 + 4.207 +The right to make Contributions includes the right to translate, adapt, 4.208 +arrange, or make any or all modifications to the Software, and the right 4.209 +to reproduce the resulting software. 4.210 + 4.211 +The Licensee is authorized to make any or all Contributions to the 4.212 +Software provided that it includes an explicit notice that it is the 4.213 +author of said Contribution and indicates the date of the creation thereof. 4.214 + 4.215 + 4.216 + 5.3 RIGHT OF DISTRIBUTION 4.217 + 4.218 +In particular, the right of distribution includes the right to publish, 4.219 +transmit and communicate the Software to the general public on any or 4.220 +all medium, and by any or all means, and the right to market, either in 4.221 +consideration of a fee, or free of charge, one or more copies of the 4.222 +Software by any means. 4.223 + 4.224 +The Licensee is further authorized to distribute copies of the modified 4.225 +or unmodified Software to third parties according to the terms and 4.226 +conditions set forth hereinafter. 4.227 + 4.228 + 4.229 + 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION 4.230 + 4.231 +The Licensee is authorized to distribute true copies of the Software in 4.232 +Source Code or Object Code form, provided that said distribution 4.233 +complies with all the provisions of the Agreement and is accompanied by: 4.234 + 4.235 + 1. a copy of the Agreement, 4.236 + 4.237 + 2. a notice relating to the limitation of both the Licensor's 4.238 + warranty and liability as set forth in Articles 8 and 9, 4.239 + 4.240 +and that, in the event that only the Object Code of the Software is 4.241 +redistributed, the Licensee allows future Licensees unhindered access to 4.242 +the full Source Code of the Software by indicating how to access it, it 4.243 +being understood that the additional cost of acquiring the Source Code 4.244 +shall not exceed the cost of transferring the data. 4.245 + 4.246 + 4.247 + 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE 4.248 + 4.249 +When the Licensee makes a Contribution to the Software, the terms and 4.250 +conditions for the distribution of the resulting Modified Software 4.251 +become subject to all the provisions of this Agreement. 4.252 + 4.253 +The Licensee is authorized to distribute the Modified Software, in 4.254 +source code or object code form, provided that said distribution 4.255 +complies with all the provisions of the Agreement and is accompanied by: 4.256 + 4.257 + 1. a copy of the Agreement, 4.258 + 4.259 + 2. a notice relating to the limitation of both the Licensor's 4.260 + warranty and liability as set forth in Articles 8 and 9, 4.261 + 4.262 +and that, in the event that only the Object Code of the Modified 4.263 +Software is redistributed, the Licensee allows future Licensees 4.264 +unhindered access to the full source code of the Modified Software by 4.265 +indicating how to access it, it being understood that the additional 4.266 +cost of acquiring the source code shall not exceed the cost of 4.267 +transferring the data. 4.268 + 4.269 + 4.270 + 5.3.3 DISTRIBUTION OF EXTERNAL MODULES 4.271 + 4.272 +When the Licensee has developed an External Module, the terms and 4.273 +conditions of this Agreement do not apply to said External Module, that 4.274 +may be distributed under a separate license agreement. 4.275 + 4.276 + 4.277 + 5.3.4 COMPATIBILITY WITH THE GNU GPL 4.278 + 4.279 +The Licensee can include a code that is subject to the provisions of one 4.280 +of the versions of the GNU GPL in the Modified or unmodified Software, 4.281 +and distribute that entire code under the terms of the same version of 4.282 +the GNU GPL. 4.283 + 4.284 +The Licensee can include the Modified or unmodified Software in a code 4.285 +that is subject to the provisions of one of the versions of the GNU GPL, 4.286 +and distribute that entire code under the terms of the same version of 4.287 +the GNU GPL. 4.288 + 4.289 + 4.290 + Article 6 - INTELLECTUAL PROPERTY 4.291 + 4.292 + 4.293 + 6.1 OVER THE INITIAL SOFTWARE 4.294 + 4.295 +The Holder owns the economic rights over the Initial Software. Any or 4.296 +all use of the Initial Software is subject to compliance with the terms 4.297 +and conditions under which the Holder has elected to distribute its work 4.298 +and no one shall be entitled to modify the terms and conditions for the 4.299 +distribution of said Initial Software. 4.300 + 4.301 +The Holder undertakes that the Initial Software will remain ruled at 4.302 +least by the current license, for the duration set forth in Article 4.2. 4.303 + 4.304 + 4.305 + 6.2 OVER THE CONTRIBUTIONS 4.306 + 4.307 +A Licensee who develops a Contribution is the owner of the intellectual 4.308 +property rights over this Contribution as defined by applicable law. 4.309 + 4.310 + 4.311 + 6.3 OVER THE EXTERNAL MODULES 4.312 + 4.313 +A Licensee who develops an External Module is the owner of the 4.314 +intellectual property rights over this External Module as defined by 4.315 +applicable law and is free to choose the type of agreement that shall 4.316 +govern its distribution. 4.317 + 4.318 + 4.319 + 6.4 JOINT PROVISIONS 4.320 + 4.321 +The Licensee expressly undertakes: 4.322 + 4.323 + 1. not to remove, or modify, in any manner, the intellectual property 4.324 + notices attached to the Software; 4.325 + 4.326 + 2. to reproduce said notices, in an identical manner, in the copies 4.327 + of the Software modified or not. 4.328 + 4.329 +The Licensee undertakes not to directly or indirectly infringe the 4.330 +intellectual property rights of the Holder and/or Contributors on the 4.331 +Software and to take, where applicable, vis-à-vis its staff, any and all 4.332 +measures required to ensure respect of said intellectual property rights 4.333 +of the Holder and/or Contributors. 4.334 + 4.335 + 4.336 + Article 7 - RELATED SERVICES 4.337 + 4.338 +7.1 Under no circumstances shall the Agreement oblige the Licensor to 4.339 +provide technical assistance or maintenance services for the Software. 4.340 + 4.341 +However, the Licensor is entitled to offer this type of services. The 4.342 +terms and conditions of such technical assistance, and/or such 4.343 +maintenance, shall be set forth in a separate instrument. Only the 4.344 +Licensor offering said maintenance and/or technical assistance services 4.345 +shall incur liability therefor. 4.346 + 4.347 +7.2 Similarly, any Licensor is entitled to offer to its licensees, under 4.348 +its sole responsibility, a warranty, that shall only be binding upon 4.349 +itself, for the redistribution of the Software and/or the Modified 4.350 +Software, under terms and conditions that it is free to decide. Said 4.351 +warranty, and the financial terms and conditions of its application, 4.352 +shall be subject of a separate instrument executed between the Licensor 4.353 +and the Licensee. 4.354 + 4.355 + 4.356 + Article 8 - LIABILITY 4.357 + 4.358 +8.1 Subject to the provisions of Article 8.2, the Licensee shall be 4.359 +entitled to claim compensation for any direct loss it may have suffered 4.360 +from the Software as a result of a fault on the part of the relevant 4.361 +Licensor, subject to providing evidence thereof. 4.362 + 4.363 +8.2 The Licensor's liability is limited to the commitments made under 4.364 +this Agreement and shall not be incurred as a result of in particular: 4.365 +(i) loss due the Licensee's total or partial failure to fulfill its 4.366 +obligations, (ii) direct or consequential loss that is suffered by the 4.367 +Licensee due to the use or performance of the Software, and (iii) more 4.368 +generally, any consequential loss. In particular the Parties expressly 4.369 +agree that any or all pecuniary or business loss (i.e. loss of data, 4.370 +loss of profits, operating loss, loss of customers or orders, 4.371 +opportunity cost, any disturbance to business activities) or any or all 4.372 +legal proceedings instituted against the Licensee by a third party, 4.373 +shall constitute consequential loss and shall not provide entitlement to 4.374 +any or all compensation from the Licensor. 4.375 + 4.376 + 4.377 + Article 9 - WARRANTY 4.378 + 4.379 +9.1 The Licensee acknowledges that the scientific and technical 4.380 +state-of-the-art when the Software was distributed did not enable all 4.381 +possible uses to be tested and verified, nor for the presence of 4.382 +possible defects to be detected. In this respect, the Licensee's 4.383 +attention has been drawn to the risks associated with loading, using, 4.384 +modifying and/or developing and reproducing the Software which are 4.385 +reserved for experienced users. 4.386 + 4.387 +The Licensee shall be responsible for verifying, by any or all means, 4.388 +the suitability of the product for its requirements, its good working order, 4.389 +and for ensuring that it shall not cause damage to either persons or 4.390 +properties. 4.391 + 4.392 +9.2 The Licensor hereby represents, in good faith, that it is entitled 4.393 +to grant all the rights over the Software (including in particular the 4.394 +rights set forth in Article 5). 4.395 + 4.396 +9.3 The Licensee acknowledges that the Software is supplied "as is" by 4.397 +the Licensor without any other express or tacit warranty, other than 4.398 +that provided for in Article 9.2 and, in particular, without any warranty 4.399 +as to its commercial value, its secured, safe, innovative or relevant 4.400 +nature. 4.401 + 4.402 +Specifically, the Licensor does not warrant that the Software is free 4.403 +from any error, that it will operate without interruption, that it will 4.404 +be compatible with the Licensee's own equipment and software 4.405 +configuration, nor that it will meet the Licensee's requirements. 4.406 + 4.407 +9.4 The Licensor does not either expressly or tacitly warrant that the 4.408 +Software does not infringe any third party intellectual property right 4.409 +relating to a patent, software or any other property right. Therefore, 4.410 +the Licensor disclaims any and all liability towards the Licensee 4.411 +arising out of any or all proceedings for infringement that may be 4.412 +instituted in respect of the use, modification and redistribution of the 4.413 +Software. Nevertheless, should such proceedings be instituted against 4.414 +the Licensee, the Licensor shall provide it with technical and legal 4.415 +assistance for its defense. Such technical and legal assistance shall be 4.416 +decided on a case-by-case basis between the relevant Licensor and the 4.417 +Licensee pursuant to a memorandum of understanding. The Licensor 4.418 +disclaims any and all liability as regards the Licensee's use of the 4.419 +name of the Software. No warranty is given as regards the existence of 4.420 +prior rights over the name of the Software or as regards the existence 4.421 +of a trademark. 4.422 + 4.423 + 4.424 + Article 10 - TERMINATION 4.425 + 4.426 +10.1 In the event of a breach by the Licensee of its obligations 4.427 +hereunder, the Licensor may automatically terminate this Agreement 4.428 +thirty (30) days after notice has been sent to the Licensee and has 4.429 +remained ineffective. 4.430 + 4.431 +10.2 A Licensee whose Agreement is terminated shall no longer be 4.432 +authorized to use, modify or distribute the Software. However, any 4.433 +licenses that it may have granted prior to termination of the Agreement 4.434 +shall remain valid subject to their having been granted in compliance 4.435 +with the terms and conditions hereof. 4.436 + 4.437 + 4.438 + Article 11 - MISCELLANEOUS 4.439 + 4.440 + 4.441 + 11.1 EXCUSABLE EVENTS 4.442 + 4.443 +Neither Party shall be liable for any or all delay, or failure to 4.444 +perform the Agreement, that may be attributable to an event of force 4.445 +majeure, an act of God or an outside cause, such as defective 4.446 +functioning or interruptions of the electricity or telecommunications 4.447 +networks, network paralysis following a virus attack, intervention by 4.448 +government authorities, natural disasters, water damage, earthquakes, 4.449 +fire, explosions, strikes and labor unrest, war, etc. 4.450 + 4.451 +11.2 Any failure by either Party, on one or more occasions, to invoke 4.452 +one or more of the provisions hereof, shall under no circumstances be 4.453 +interpreted as being a waiver by the interested Party of its right to 4.454 +invoke said provision(s) subsequently. 4.455 + 4.456 +11.3 The Agreement cancels and replaces any or all previous agreements, 4.457 +whether written or oral, between the Parties and having the same 4.458 +purpose, and constitutes the entirety of the agreement between said 4.459 +Parties concerning said purpose. No supplement or modification to the 4.460 +terms and conditions hereof shall be effective as between the Parties 4.461 +unless it is made in writing and signed by their duly authorized 4.462 +representatives. 4.463 + 4.464 +11.4 In the event that one or more of the provisions hereof were to 4.465 +conflict with a current or future applicable act or legislative text, 4.466 +said act or legislative text shall prevail, and the Parties shall make 4.467 +the necessary amendments so as to comply with said act or legislative 4.468 +text. All other provisions shall remain effective. Similarly, invalidity 4.469 +of a provision of the Agreement, for any reason whatsoever, shall not 4.470 +cause the Agreement as a whole to be invalid. 4.471 + 4.472 + 4.473 + 11.5 LANGUAGE 4.474 + 4.475 +The Agreement is drafted in both French and English and both versions 4.476 +are deemed authentic. 4.477 + 4.478 + 4.479 + Article 12 - NEW VERSIONS OF THE AGREEMENT 4.480 + 4.481 +12.1 Any person is authorized to duplicate and distribute copies of this 4.482 +Agreement. 4.483 + 4.484 +12.2 So as to ensure coherence, the wording of this Agreement is 4.485 +protected and may only be modified by the authors of the License, who 4.486 +reserve the right to periodically publish updates or new versions of the 4.487 +Agreement, each with a separate number. These subsequent versions may 4.488 +address new issues encountered by Free Software. 4.489 + 4.490 +12.3 Any Software distributed under a given version of the Agreement may 4.491 +only be subsequently distributed under the same version of the Agreement 4.492 +or a subsequent version, subject to the provisions of Article 5.3.4. 4.493 + 4.494 + 4.495 + Article 13 - GOVERNING LAW AND JURISDICTION 4.496 + 4.497 +13.1 The Agreement is governed by French law. The Parties agree to 4.498 +endeavor to seek an amicable solution to any disagreements or disputes 4.499 +that may arise during the performance of the Agreement. 4.500 + 4.501 +13.2 Failing an amicable solution within two (2) months as from their 4.502 +occurrence, and unless emergency proceedings are necessary, the 4.503 +disagreements or disputes shall be referred to the Paris Courts having 4.504 +jurisdiction, by the more diligent Party. 4.505 + 4.506 + 4.507 +Version 2.0 dated 2006-07-12.
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 5.2 +++ b/PTdecode/CImg-1.3.0/README.txt Mon Aug 03 14:09:20 2009 +0100 5.3 @@ -0,0 +1,255 @@ 5.4 +-------------------------------------------------------------------------------- 5.5 +-------------------------------------------------------------------------------- 5.6 + ____ _ _ ____ 5.7 + (_ _)( )_( )( ___) 5.8 + )( ) _ ( )__) 5.9 + (__) (_) (_)(____) 5.10 + ___ ____ __ __ ___ __ ____ ____ ____ __ ____ _ _ 5.11 + / __)(_ _)( \/ )/ __) ( ) (_ _)( _ \( _ \ /__\ ( _ \( \/ ) 5.12 + ( (__ _)(_ ) (( (_-. )(__ _)(_ ) _ < ) / /(__)\ ) / \ / 5.13 + \___)(____)(_/\/\_)\___/ (____)(____)(____/(_)\_)(__)(__)(_)\_) (__) 5.14 + 5.15 + 5.16 + C++ Template Image Processing Library 5.17 + 5.18 + ( http://cimg.sourceforge.net ) 5.19 + 5.20 + v.1.3.0 5.21 + 5.22 +-------------------------------------------------------------------------------- 5.23 + 5.24 +# Summary 5.25 +#--------- 5.26 + 5.27 + The CImg Library is an open-source C++ toolkit for image processing. 5.28 + It consists in a single header file 'CImg.h' providing a minimal set of C++ 5.29 + classes and methods that can be used in your own sources, to load/save, 5.30 + process and display images. Very portable (Unix/X11,Windows, MacOS X, FreeBSD, .. ), 5.31 + efficient, easy to use, it's a pleasant library for developping image processing 5.32 + algorithms in C++. 5.33 + 5.34 +# Authors and contributors : 5.35 +#---------------------------- 5.36 + 5.37 + - David Tschumperle (project manager) ( http://www.greyc.ensicaen.fr/~dtschump/ ) 5.38 + 5.39 + - Haz-Edine Assemlal 5.40 + - Vincent Barra 5.41 + - Romain Blei 5.42 + - Yohan Bentolila 5.43 + - Jerome Boulanger 5.44 + - Frederic Devernay 5.45 + - Francois-Xavier Dupe 5.46 + - Eric Fausett 5.47 + - Jean-Marie Favreau 5.48 + - Sebastien Fourey 5.49 + - Alexandre Fournier 5.50 + - Vincent Garcia 5.51 + - Jinwei Gu 5.52 + - Jean-Daniel Guyot 5.53 + - Matt Hanson 5.54 + - Sebastien Hanel 5.55 + - Christoph Hormann 5.56 + - Werner Jainek 5.57 + - Daniel Kondermann 5.58 + - Pierre Kornprobst 5.59 + - Orges Leka 5.60 + - Francois Lauze 5.61 + - Xie Long 5.62 + - Thomas Martin 5.63 + - Cesar Martinez 5.64 + - Jean Martinot 5.65 + - Nikita Melnichenko 5.66 + - Baptiste Mougel 5.67 + - Renaud Peteri 5.68 + - Martin Petricek 5.69 + - Paolo Prete 5.70 + - Adrien Reboisson 5.71 + - Klaus Schneider 5.72 + - Konstantin Spirin 5.73 + - David G. Starkweather 5.74 + - Rainer Steffens 5.75 + - Grzegorz Szwoch 5.76 + - Thierry Thomas 5.77 + - Yu-En-Yun 5.78 + - Vo Duc Khanh 5.79 + - Phillip Wood 5.80 + - Bug Zhao 5.81 + - Haibo Zheng 5.82 + 5.83 +# Institution 5.84 +#------------- 5.85 + 5.86 + GREYC Image / CNRS UMR 6072 / FRANCE 5.87 + 5.88 + The CImg Library project started in 2000, at the INRIA-Sophia 5.89 + Antipolis/France ( http://www-sop.inria.fr/ ), in the ROBOTVIS / ODYSSEE Team. 5.90 + Since October 2004, it is maintained and developed in the Image team of 5.91 + the GREYC Lab (CNRS, UMR 6072), in Caen/France. 5.92 + Team web page : http://www.greyc.ensicaen.fr/EquipeImage/ 5.93 + 5.94 +# Licenses 5.95 +#---------- 5.96 + 5.97 + The source code of the CImg Library is distributed under 5.98 + two distinct licenses : 5.99 + 5.100 + - The main library file 'CImg.h' is *dual-licensed* : 5.101 + It can be either distributed under the CeCILL-C or CeCILL license. 5.102 + (see files 'Licence_CeCILL-C_V1-en.txt' and 'Licence_CeCILL_V2-en.txt'). 5.103 + Both are Free-Software licenses : 5.104 + 5.105 + * CeCILL-C is adapted to the distribution of 5.106 + library components, and is close in its terms to the well known GNU LGPL license 5.107 + (the 'CImg.h' file can thus be used in closed-source products under certain 5.108 + conditions, please read carefully the license file). 5.109 + 5.110 + * CeCILL is close to (and even compatible with) the GNU GPL license. 5.111 + 5.112 + - Most of the other files are distributed under the CeCiLL license 5.113 + (file 'Licence_CeCILL_V2-en.txt'). See the file header to see what license applies. 5.114 + 5.115 + These two CeCiLL licenses ( http://www.cecill.info/index.en.html ) have been 5.116 + created under the supervision of the three biggest research institutions on 5.117 + computer sciences in France : 5.118 + 5.119 + - CNRS ( http://www.cnrs.fr/ ) 5.120 + - CEA ( http://www.cea.fr/ ) 5.121 + - INRIA ( http://www.inria.fr/ ) 5.122 + 5.123 + You have to RESPECT these licenses. More particularly, please carefully read 5.124 + the license terms before using the CImg library in commercial products. 5.125 + 5.126 +# Package structure : 5.127 +#-------------------- 5.128 + 5.129 + The main package directory CImg/ is organized as follows : 5.130 + 5.131 + - README.txt : This file. 5.132 + - CHANGES.txt : A list of changes between consecutive CImg versions. 5.133 + - Licence_CeCILL-C_V1-en.txt : A copy of the CeCiLL-C license file. 5.134 + - Licence_CeCILL_V2-en.txt : A copy of the CeCiLL license. 5.135 + - CImg.h : The single header file that constitutes the library itself. 5.136 + - examples/ : A directory containing lot of example programs performing 5.137 + various things, based on the CImg library. 5.138 + - html/ : A directory containing a copy of the CImg web page in html 5.139 + format. The reference documentation is generated 5.140 + automatically with the tool 'doxygen' (http://www.doxygen.org). 5.141 + - resources/ : A directory containing some resources files for compiling 5.142 + CImg examples or packages with various C++ compilers and OS. 5.143 + - plugins/ : A directory containing CImg plug-ins files that can be used to 5.144 + add specific extra functionalities to the CImg library. 5.145 + 5.146 +# Getting started 5.147 +#----------------- 5.148 + 5.149 + If you are new to CImg, you should first try to compile the different examples 5.150 + provided in the 'examples/' directory, to see what CImg is capable of 5.151 + (as CImg is a template library, no compilation is mandatory of course). 5.152 + Look at the 'resources/' directory to ease this see how to compile these examples 5.153 + on different plateforms. 5.154 + 5.155 + Then, you can look at the documentation 'html/reference/' to learn more about CImg 5.156 + functions and classes. Finally, you can participate to the 'Forum' or 'Chat' sections 5.157 + of the CImg web page and ask for help if needed. 5.158 + 5.159 +# Current list of available CImg plug-ins 5.160 +#----------------------------------------- 5.161 + 5.162 + -------------------------------------------------------------------------------- 5.163 + - CImg IPL ('plugins/cimgIPL.h') (November 2008). 5.164 + 5.165 + This plug-in allows the conversion between CImg and IplImage structures 5.166 + (used in openCV). 5.167 + 5.168 + by Haibo Zheng (haibo.zheng - at - gmail.com) 5.169 + 5.170 + -------------------------------------------------------------------------------- 5.171 + - Draw gradient ('plugins/draw_gradient.h') (November 2008). 5.172 + 5.173 + This plug-in can be used to draw color gradient in images. 5.174 + 5.175 + by Jerome Boulanger (http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html), 5.176 + 5.177 + -------------------------------------------------------------------------------- 5.178 + - Add file format ('plugins/add_fileformat.h') (September 2007). 5.179 + 5.180 + This plug-in shows how to easily add support for your own file format in 5.181 + CImg. This can be interesting, since the additional format will be recognized 5.182 + in functions 'CImg<T>::save()' and 'CImg<T>::load()' functions. 5.183 + 5.184 + by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). 5.185 + IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE. 5.186 + Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ 5.187 + 5.188 + -------------------------------------------------------------------------------- 5.189 + - JPEG Buffer ('plugins/jpeg_buffer.h') (July 2007). 5.190 + 5.191 + This plug-in provides functions to read/write images stored in jpeg format 5.192 + directly in memory buffers. Interesting when dealing for instance with 5.193 + images coming from webcams and stored in memory. 5.194 + 5.195 + by Paolo Prete. 5.196 + 5.197 + -------------------------------------------------------------------------------- 5.198 + - Integral Line ('plugins/integral_line.h') (March 2007). 5.199 + 5.200 + Implementation of functions that retrieve integral lines from vector fields 5.201 + using different types of interpolation. 5.202 + 5.203 + by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). 5.204 + IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE 5.205 + Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ 5.206 + 5.207 + -------------------------------------------------------------------------------- 5.208 + - GREYCstoration ('plugins/greycstoration.h') (May 2006). 5.209 + 5.210 + Implementation of the GREYCstoration algorithm for image denoising. 5.211 + This version is adapted for an easy integration in third parties 5.212 + software, since it is non-blocking and returns a progression indice 5.213 + that can be used in progress bars. 5.214 + 5.215 + by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). 5.216 + IMAGE Team / GREYC (CNRS UMR 6072), Caen / FRANCE 5.217 + Home page of the team : http://www.greyc.ensicaen.fr/EquipeImage/ 5.218 + 5.219 + -------------------------------------------------------------------------------- 5.220 + - NL Means and Noise Analysis ('plugins/nlmeans.h' and 5.221 + 'plugins/noise_analysis.h') (May 2006). 5.222 + 5.223 + Implementation of the Non-Local Means algorithm as described in [1] and [2]. 5.224 + The variance of the noise can be automatically estimated using the method 5.225 + inspired from [3]. 5.226 + 5.227 + [1] Buades, A.; Coll, B.; Morel, J.-M.: A non-local algorithm for image 5.228 + denoising. IEEE Computer Society Conference on Computer Vision and Pattern 5.229 + Recognition, 2005. CVPR 2005. Vol 2, 20-25 June 2005 Page(s):60 - 65 5.230 + 5.231 + [2] Buades, A. Coll, B. and Morel, J.: A review of image denoising algorithms, 5.232 + with a new one. Multiscale Modeling and Simulation: A SIAM 5.233 + Interdisciplinary Journal 4 (2004) 490-530 5.234 + 5.235 + [3] Gasser, T. Sroka,L. Jennen Steinmetz,C. Residual variance and residual 5.236 + pattern nonlinear regression. Biometrika 73 (1986) 625-659 5.237 + 5.238 + by Jerome Boulanger (http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html), 5.239 + Charles Kervrann and Patrick Bouthemy thanks to ACI IMPBio (MODYNCELL5D Project). 5.240 + VISTA / IRISA-INRIA, Rennes / FRANCE 5.241 + Home page of the team : http://www.irisa.fr/vista/ 5.242 + MIA / INRA, Unite de Jouy-en-Josas / FRANCE. 5.243 + 5.244 + -------------------------------------------------------------------------------- 5.245 + - Plug in for Matlab mex files ('plugins/cimgmatlab.h') (May 2006). 5.246 + 5.247 + Implement a CImg<T> constructor from a matlab array, a CImg<T> assignment 5.248 + operator from a matlab array and a method that exports a CImg<T> object to 5.249 + a Matlab array. 5.250 + For a bit more, http://www.itu.dk/people/francois/cimgmatlab.html 5.251 + 5.252 + by Francois Lauze (http://www.itu.dk/people/francois/index.html) 5.253 + The IT University of Copenhagen, Image Group. 5.254 + 5.255 + -------------------------------------------------------------------------------- 5.256 + 5.257 +# End of file 5.258 +#------------
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 6.2 +++ b/PTdecode/CImg-1.3.0/examples/CImg_demo.cpp Mon Aug 03 14:09:20 2009 +0100 6.3 @@ -0,0 +1,1668 @@ 6.4 +/* 6.5 + # 6.6 + # File : CImg_demo.cpp 6.7 + # ( C++ source file ) 6.8 + # 6.9 + # Description : A multi-part demo demonstrating some of the CImg capabilities. 6.10 + # This file is a part of the CImg Library project. 6.11 + # ( http://cimg.sourceforge.net ) 6.12 + # 6.13 + # Copyright : David Tschumperle 6.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 6.15 + # 6.16 + # License : CeCILL v2.0 6.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 6.18 + # 6.19 + # This software is governed by the CeCILL license under French law and 6.20 + # abiding by the rules of distribution of free software. You can use, 6.21 + # modify and/ or redistribute the software under the terms of the CeCILL 6.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 6.23 + # "http://www.cecill.info". 6.24 + # 6.25 + # As a counterpart to the access to the source code and rights to copy, 6.26 + # modify and redistribute granted by the license, users are provided only 6.27 + # with a limited warranty and the software's author, the holder of the 6.28 + # economic rights, and the successive licensors have only limited 6.29 + # liability. 6.30 + # 6.31 + # In this respect, the user's attention is drawn to the risks associated 6.32 + # with loading, using, modifying and/or developing or reproducing the 6.33 + # software by the user in light of its specific status of free software, 6.34 + # that may mean that it is complicated to manipulate, and that also 6.35 + # therefore means that it is reserved for developers and experienced 6.36 + # professionals having in-depth computer knowledge. Users are therefore 6.37 + # encouraged to load and test the software's suitability as regards their 6.38 + # requirements in conditions enabling the security of their systems and/or 6.39 + # data to be ensured and, more generally, to use and operate it in the 6.40 + # same conditions as regards security. 6.41 + # 6.42 + # The fact that you are presently reading this means that you have had 6.43 + # knowledge of the CeCILL license and that you accept its terms. 6.44 + # 6.45 +*/ 6.46 + 6.47 +// Include static image data, so that the exe does not depend on external image files. 6.48 +#include "img/CImg_demo.h" 6.49 + 6.50 +// Include CImg library header. 6.51 +#include "CImg.h" 6.52 +using namespace cimg_library; 6.53 + 6.54 +// The lines below are necessary when using a non-standard compiler such as visualcpp6. 6.55 +#ifdef cimg_use_visualcpp6 6.56 +#define std 6.57 +#endif 6.58 +#ifdef min 6.59 +#undef min 6.60 +#undef max 6.61 +#endif 6.62 + 6.63 +// Item : Blurring Gradient 6.64 +//---------------------------- 6.65 +void* item_blurring_gradient() { 6.66 + 6.67 + // Create color image 'milla'. 6.68 + const CImg<> src(data_milla,211,242,1,3); 6.69 + 6.70 + // Compute 2D gradient (spatial derivatives). 6.71 + CImgList<> grad = src.get_gradient(); 6.72 + 6.73 + // Create visualization list with three images, the second one being 6.74 + // a normalized version of the gradient norm. 6.75 + CImgList<unsigned char> visu = src<<(grad[0].pow(2) + grad[1].pow(2)).sqrt().normalize(0,255)<<src; 6.76 + 6.77 + // Create and Pop-up display window. 6.78 + CImgDisplay disp(visu,"[#1] - Color Image, Gradient Norm and Blurring Gradient",0); 6.79 + 6.80 + // Start animation loop (until ESC or Q key is pressed, or display window closed). 6.81 + for (double sigma = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; sigma+=0.05) { 6.82 + 6.83 + // Compute blurred version of the gradient norm. 6.84 + visu[2] = visu[1].get_blur((float)cimg::abs(30*std::cos(sigma))).normalize(0,255); 6.85 + 6.86 + // Refresh display window. 6.87 + disp.resize(false).display(visu).wait(20); 6.88 + } 6.89 + return 0; 6.90 +} 6.91 + 6.92 +// Item : Rotozoom 6.93 +//----------------- 6.94 +void* item_rotozoom() { 6.95 + 6.96 + // Create color image 'milla' and resize it to 400x300. 6.97 + CImg<unsigned char> src = CImg<unsigned char>(data_milla,211,242,1,3,false).resize(400,300,1,3,3), img(src); 6.98 + 6.99 + // Create display window. 6.100 + CImgDisplay disp(img.dimx(),img.dimy(),"[#2] - Rotozoom",0); 6.101 + 6.102 + float alpha = 0, t = 0, angle = 0, zoom0 = -0.9f; 6.103 + const unsigned char color[] = { 16,32,64 }; 6.104 + 6.105 + // Start animation loop. 6.106 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.107 + 6.108 + // Add weird color effect on the image. 6.109 + cimg_forYV(src,y,k) { 6.110 + const int xc = 4*src.dimx() + (int)(60*std::sin((float)y*3/src.dimy()+10*t)); 6.111 + cimg_forX(src,x) { 6.112 + const float val = (float)(src((xc+x)%src.dimx(),y,0,k)* 6.113 + (1.3f+0.20*std::sin(alpha+k*k*((float)src.dimx()/2-x)* 6.114 + ((float)src.dimy()/2-y)*std::cos(t)/300.0))); 6.115 + img(x,y,0,k) = (unsigned char)(val>255.0f?255:val); 6.116 + } 6.117 + } 6.118 + 6.119 + // Rotate/zoom the resulting image, and display it. 6.120 + const float zoom = (float)(zoom0 + 0.3f*(1+std::cos(3*t))); 6.121 + img.get_rotate(angle,0.5f*img.dimx(),0.5f*img.dimy(),1+zoom,2,0). 6.122 + draw_text(3,3,"Mouse buttons\nto zoom in/out",color,0,0.8f,24).display(disp.resize(false).wait(20)); 6.123 + 6.124 + // Smoothly move angle and zoom parameters 6.125 + alpha+=0.7f; t+=0.01f; angle+=0.8f; 6.126 + zoom0+=disp.button&1?0.1f:(disp.button&2?-0.1f:0); 6.127 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(400,400,false).toggle_fullscreen(false); 6.128 + } 6.129 + return 0; 6.130 +} 6.131 + 6.132 +// Item : Anisotropic Smoothing (Total variation PDE, explicit scheme) 6.133 +//-------------------------------------------------------------------- 6.134 +void* item_anisotropic_smoothing() { 6.135 + 6.136 + // Create color image 'milla' and noise it quite heavily with uniform noise. 6.137 + const CImg<> src = CImg<>(data_milla,211,242,1,3).noise(-30,1); 6.138 + 6.139 + // Create visualization list and corresponding display window. 6.140 + CImgList<> images(src,src); 6.141 + CImgDisplay disp(images,"[#3] - Anisotropic smoothing"); 6.142 + const float white[] = { 255,255,255 }, black[] = { 0,0,0 }; 6.143 + 6.144 + // Start PDE iterations 6.145 + for (unsigned int iter = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; ++iter) { 6.146 + 6.147 + // Compute PDE velocity field. 6.148 + CImg_3x3(I,float); 6.149 + CImg<> veloc(src); 6.150 + cimg_forV(src,k) cimg_for3x3(images[1],x,y,0,k,I) { 6.151 + const float 6.152 + ix = (Inc - Ipc)/2, 6.153 + iy = (Icn - Icp)/2, 6.154 + ng = (float)std::sqrt(1e-10f + ix*ix + iy*iy), 6.155 + ixx = Inc + Ipc - 2*Icc, 6.156 + iyy = Icn + Icp - 2*Icc, 6.157 + ixy = 0.25f*(Inn + Ipp - Ipn - Inp), 6.158 + iee = (ix*ix*iyy + iy*iy*ixx - 2*ix*iy*ixy)/(ng*ng); 6.159 + veloc(x,y,k) = iee/(0.1f+ng); 6.160 + } 6.161 + 6.162 + // Find adaptive time step and update current image. 6.163 + float m = 0, M = veloc.maxmin(m); 6.164 + veloc*=40.0f/cimg::max(cimg::abs(m),cimg::abs(M)); 6.165 + images[1]+=veloc; 6.166 + images[0].draw_text(0,0,"iter %u",white,black,1,11,iter); 6.167 + 6.168 + // Refresh display window (and resize it if necessary). 6.169 + disp.resize(false).display(images); 6.170 + } 6.171 + return 0; 6.172 +} 6.173 + 6.174 +// Item : Fractal Animation 6.175 +//-------------------------- 6.176 +void* item_fractal_animation() { 6.177 + 6.178 + // Create black 400x400 color image, and small 'noise' sprite. 6.179 + CImg<unsigned char> img(400,400,1,3,0), noise(3,2,1,3); 6.180 + 6.181 + // Create display window. 6.182 + CImgDisplay disp(img,"[#4] - Fractal Animation"); 6.183 + 6.184 + // Start animation loop. 6.185 + float zoom = 0; 6.186 + for (unsigned int iter = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; ++iter, zoom+=0.2f) { 6.187 + 6.188 + // Put a noisy sprite on the center, then rotate and zoom the whole image, to make the 'fractal' effect. 6.189 + img.draw_image((img.dimx() - noise.dimx())/2, 6.190 + (img.dimy() - noise.dimy())/2, 6.191 + noise.fill(0).noise(255,1)). 6.192 + rotate((float)(10*std::sin(iter/25.0)),0.5f*img.dimx(),0.5f*img.dimy(),(float)(1.04+0.02*std::sin(zoom/10)),0,0). 6.193 + resize(disp.resize(false)).display(disp.wait(25)); 6.194 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(400,400,false).toggle_fullscreen(false); 6.195 + } 6.196 + return 0; 6.197 +} 6.198 + 6.199 +// Item : Gamma Correction and Histogram Visualization 6.200 +//----------------------------------------------------- 6.201 +void* item_gamma_correction() { 6.202 + 6.203 + // Create color image 'milla' and normalize it in [0,1]. 6.204 + CImg<> img = CImg<>(data_milla,211,242,1,3).normalize(0,1); 6.205 + 6.206 + // Create visualization list (2 images). 6.207 + CImgList<unsigned char> visu(img*255.0, CImg<unsigned char>(512,300,1,3,0)); 6.208 + 6.209 + // Define graph and text colors. 6.210 + const unsigned char 6.211 + yellow[] = { 255,255,0 }, blue[] = { 0,155,255 }, blue2[] = { 0,0,255 }, 6.212 + blue3[] = { 0,0,155 }, white[] = { 255,255,255 }, green[] = { 100,255,100 }; 6.213 + 6.214 + // Create display window. 6.215 + CImgDisplay disp(visu,"[#5] - Gamma Corrected Image and Histogram (Click to set Gamma)"); 6.216 + 6.217 + // Enter event loop. 6.218 + for (double gamma = 1; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; ) { 6.219 + 6.220 + // Compute gamma-corrected version of the original image. 6.221 + cimg_forXYZV(visu[0],x,y,z,k) visu[0](x,y,z,k) = (unsigned char)(std::pow((double)img(x,y,z,k),1.0/gamma)*256); 6.222 + 6.223 + // Compute corresponding image histogram. 6.224 + const CImg<> hist = visu[0].get_histogram(50,0,255); 6.225 + 6.226 + // Draw image histogram as a bar graph in the visualization list (2nd image). 6.227 + visu[1].fill(0).draw_text(50,5,"Gamma = %.3g",white,0,1,24,gamma). 6.228 + draw_graph(hist,green,1,3,0,20000,0).draw_graph(hist,yellow,1,2,0,20000,0). 6.229 + draw_axis(0,256,20000,0,white,0.7f); 6.230 + const int xb = (int)(50+gamma*150); 6.231 + visu[1].draw_grid(20,20,0,0,false,false,white,0.3f,0xCCCCCCCC,0xCCCCCCCC). 6.232 + draw_rectangle(51,31,xb-1,39,blue2).draw_rectangle(50,30,xb,30,blue).draw_rectangle(xb,30,xb,40,blue). 6.233 + draw_rectangle(xb,40,50,39,blue3).draw_rectangle(50,30,51,40,blue3); 6.234 + 6.235 + // Check for button press from the user's mouse. 6.236 + if (disp.button && disp.mouse_x>=img.dimx()+50 && disp.mouse_x<=img.dimx()+450) 6.237 + gamma = (disp.mouse_x - img.dimx()-50)/150.0; 6.238 + 6.239 + // Refresh display window, and wait for a user event. 6.240 + disp.resize(disp,false).display(visu).wait(); 6.241 + } 6.242 + return 0; 6.243 +} 6.244 + 6.245 +// Item : Filled Triangles 6.246 +//------------------------- 6.247 +void* item_filled_triangles() { 6.248 + 6.249 + // Create a colored 640x480 background image which consists of different color shades. 6.250 + CImg<> background(640,480,1,3); 6.251 + cimg_forXY(background,x,y) background.fillV(x,y,0, 6.252 + x*std::cos(6.0*y/background.dimy())+y*std::sin(9.0*x/background.dimx()), 6.253 + x*std::sin(8.0*y/background.dimy())-y*std::cos(11.0*x/background.dimx()), 6.254 + x*std::cos(13.0*y/background.dimy())-y*std::sin(8.0*x/background.dimx())); 6.255 + background.normalize(0,180); 6.256 + 6.257 + // Init images and create display window. 6.258 + CImg<unsigned char> img0(background), img; 6.259 + unsigned char white[] = { 255,255,255 }, color[100][3]; 6.260 + CImgDisplay disp(img0,"[#6] - Filled Triangles (Click to shrink)"); 6.261 + 6.262 + // Define random properties (pos, size, colors, ..) for all triangles that will be displayed. 6.263 + float posx[100], posy[100], rayon[100], angle[100], veloc[100], opacity[100]; 6.264 + int num = 1; 6.265 + std::srand((unsigned int)time(NULL)); 6.266 + for (int k = 0; k<100; ++k) { 6.267 + posx[k] = (float)(cimg::rand()*img0.dimx()); 6.268 + posy[k] = (float)(cimg::rand()*img0.dimy()); 6.269 + rayon[k] = (float)(10+cimg::rand()*50); 6.270 + angle[k] = (float)(cimg::rand()*360); 6.271 + veloc[k] = (float)(cimg::rand()*20-10); 6.272 + color[k][0] = (unsigned char)(cimg::rand()*255); 6.273 + color[k][1] = (unsigned char)(cimg::rand()*255); 6.274 + color[k][2] = (unsigned char)(cimg::rand()*255); 6.275 + opacity[k] = (float)(0.3+1.5*cimg::rand()); 6.276 + } 6.277 + 6.278 + // Start animation loop. 6.279 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.280 + img = img0; 6.281 + 6.282 + // Draw each triangle on the background image. 6.283 + for (int k = 0; k<num; ++k) { 6.284 + const int 6.285 + x0 = (int)(posx[k] + rayon[k]*std::cos(angle[k]*cimg::valuePI/180)), 6.286 + y0 = (int)(posy[k] + rayon[k]*std::sin(angle[k]*cimg::valuePI/180)), 6.287 + x1 = (int)(posx[k] + rayon[k]*std::cos((angle[k]+120)*cimg::valuePI/180)), 6.288 + y1 = (int)(posy[k] + rayon[k]*std::sin((angle[k]+120)*cimg::valuePI/180)), 6.289 + x2 = (int)(posx[k] + rayon[k]*std::cos((angle[k]+240)*cimg::valuePI/180)), 6.290 + y2 = (int)(posy[k] + rayon[k]*std::sin((angle[k]+240)*cimg::valuePI/180)); 6.291 + if (k%10) img.draw_triangle(x0,y0,x1,y1,x2,y2,color[k],opacity[k]); 6.292 + else img.draw_triangle(x0,y0,x1,y1,x2,y2,img0,0,0,img0.dimx()-1,0,0,img.dimy()-1,opacity[k]); 6.293 + img.draw_triangle(x0,y0,x1,y1,x2,y2,white,opacity[k],~0U); 6.294 + 6.295 + // Make the triangles rotate, and check for mouse click event. 6.296 + // (to make triangles collapse or join). 6.297 + angle[k]+=veloc[k]; 6.298 + if (disp.mouse_x>0 && disp.mouse_y>0) { 6.299 + float u = disp.mouse_x - posx[k], v = disp.mouse_y - posy[k]; 6.300 + if (disp.button) { u=-u; v=-v; } 6.301 + posx[k]-=0.03f*u, posy[k]-=0.03f*v; 6.302 + if (posx[k]<0 || posx[k]>=img.dimx()) posx[k]=(float)(cimg::rand()*img.dimx()); 6.303 + if (posy[k]<0 || posy[k]>=img.dimy()) posy[k]=(float)(cimg::rand()*img.dimy()); 6.304 + } 6.305 + } 6.306 + 6.307 + // Display current animation framerate, and refresh display window. 6.308 + img.draw_text(5,5,"%u frames/s",white,0,0.5f,11,(unsigned int)disp.frames_per_second()); 6.309 + img0.resize(disp.display(img).resize(false).wait(20)); 6.310 + if (++num>100) num = 100; 6.311 + 6.312 + // Allow the user to toggle fullscreen mode, by pressing CTRL+F. 6.313 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(640,480,false).toggle_fullscreen(false); 6.314 + } 6.315 + return 0; 6.316 +} 6.317 + 6.318 +// Item : Mandelbrot/Julia Explorer 6.319 +//---------------------------------- 6.320 +void* item_mandelbrot_explorer() { 6.321 + 6.322 + // Define image canvas and corresponding display window. 6.323 + CImg<unsigned char> img(800,600,1,3,0); 6.324 + CImgDisplay disp(img); 6.325 + 6.326 + // Start main explorer loop. 6.327 + double juliar = 0, juliai = 0; 6.328 + for (bool endflag = false, fractal_type = false, smooth = false, show_help = true; !endflag;) { 6.329 + bool stopflag = false; 6.330 + double xmin, xmax, ymin, ymax; 6.331 + 6.332 + // Init default upper-left/lower-right coordinates of the fractal set. 6.333 + if (fractal_type) { xmin = -1.5; xmax = 1.5; ymin = -1.5; ymax = 1.5; juliar = 0.317; juliai = 0.029; } 6.334 + else { xmin = -2.25; xmax = 1.0; ymin = -1.5; ymax = 1.5; juliar = juliai = 0; } 6.335 + 6.336 + // Create random palette for displaying the fractal set. 6.337 + const CImg<unsigned char> palette = 6.338 + CImg<unsigned char>(256,1,1,3,16+120).noise(119,1).resize(1024,1,1,3,3).fillV(0,0,0,0,0,0); 6.339 + unsigned int maxiter = 64; 6.340 + 6.341 + // Enter event loop for the current fractal set. 6.342 + while (!stopflag) { 6.343 + 6.344 + // Draw Mandelbrot or Julia fractal set on the image. 6.345 + img.resize(disp.resize().set_title("[#7] - %s Set : (%g,%g)-(%g,%g), %s = (%g,%g) (%u iter.)", 6.346 + fractal_type?"Julia":"Mandelbrot",xmin,ymin,xmax,ymax, 6.347 + fractal_type?"c":"z0",juliar,juliai,maxiter)). 6.348 + fill(0).draw_mandelbrot(palette,1,xmin,ymin,xmax,ymax,maxiter,smooth,fractal_type,juliar,juliai); 6.349 + 6.350 + // Display help if necessary. 6.351 + if (show_help) { 6.352 + const unsigned char white[] = { 255,255,255 }; 6.353 + static CImg<unsigned char> 6.354 + help = CImg<unsigned char>().draw_text(0,0,"\n" 6.355 + " Use mouse to zoom on desired region. \n" 6.356 + " H Show/Hide help \n" 6.357 + " PAD 1...9 Fractal navigation \n" 6.358 + " PAD +/- Zoom/Unzoom \n" 6.359 + " SPACE Set/Disable color smoothing \n" 6.360 + " ENTER Switch Mandelbrot/Julia sets \n" 6.361 + " Arrows Change set parameterization \n" 6.362 + " Page UP/DOWN Add/Reduce iteration numbers \n\n", 6.363 + white); 6.364 + help.draw_rectangle(2,2,help.dimx()-3,help.dimy()-3,white,1,~0U); 6.365 + img.draw_image(img.dimx()-help.dimx(),help,0.7f); 6.366 + } 6.367 + 6.368 + // Get rectangular shape from the user to define the zoomed region. 6.369 + const CImg<int> selection = img.get_select(disp,2,0); 6.370 + const int xs0 = selection[0], ys0 = selection[1], xs1 = selection[3], ys1 = selection[4]; 6.371 + 6.372 + // If the user has selected a region with the mouse, then zoom-in ! 6.373 + if (xs0>=0 && ys0>=0 && xs1>=0 && ys1>=0) { 6.374 + const double dx =(xmax-xmin)/img.dimx(), dy =(ymax-ymin)/img.dimy(); 6.375 + const int dsmax = (ys1-ys0)/2, xs = (xs0+xs1)/2, ys = (ys0+ys1)/2; 6.376 + 6.377 + // If the region is too small (point) then reset the fractal set position and zoom. 6.378 + if (dsmax<5) stopflag = true; 6.379 + xmin += (xs-dsmax*dy/dx)*dx; 6.380 + ymin += (ys-dsmax)*dy; 6.381 + xmax -= (img.dimx()-xs-dsmax*dy/dx)*dx; 6.382 + ymax -= (img.dimy()-ys-dsmax)*dy; 6.383 + } 6.384 + 6.385 + // Also, test if a key has been pressed. 6.386 + // (moving in the fractal set can be done, using keyboard). 6.387 + switch (disp.key) { 6.388 + 6.389 + // Show/hide help. 6.390 + case cimg::keyH: show_help = !show_help; break; 6.391 + 6.392 + // Switch between Julia/Mandelbrot sets. 6.393 + case cimg::keyENTER: fractal_type = !fractal_type; stopflag = true; break; 6.394 + 6.395 + // Enable/disable smoothed colors. 6.396 + case cimg::keySPACE: smooth = !smooth; break; 6.397 + 6.398 + // Change fractal set parameters. 6.399 + case cimg::keyARROWLEFT: juliar-=fractal_type?0.001f:0.05f; break; 6.400 + case cimg::keyARROWRIGHT: juliar+=fractal_type?0.001f:0.05f; break; 6.401 + case cimg::keyARROWUP: juliai+=fractal_type?0.001f:0.05f; break; 6.402 + case cimg::keyARROWDOWN: juliai-=fractal_type?0.001f:0.05f; break; 6.403 + 6.404 + // Add/remove iterations. 6.405 + case cimg::keyPAGEDOWN: maxiter-=32; break; 6.406 + case cimg::keyPAGEUP: maxiter+=16; break; 6.407 + 6.408 + // Move left, right, up and down in the fractal set. 6.409 + case cimg::keyPAD4: { const double delta = (xmax-xmin)/10; xmin-=delta; xmax-=delta; } break; 6.410 + case cimg::keyPAD6: { const double delta = (xmax-xmin)/10; xmin+=delta; xmax+=delta; } break; 6.411 + case cimg::keyPAD8: { const double delta = (ymax-ymin)/10; ymin-=delta; ymax-=delta; } break; 6.412 + case cimg::keyPAD2: { const double delta = (ymax-ymin)/10; ymin+=delta; ymax+=delta; } break; 6.413 + 6.414 + // Allow to zoom in/out in the fractal set. 6.415 + case cimg::keyPADADD: { 6.416 + const double xc = 0.5*(xmin+xmax), yc = 0.5*(ymin+ymax), dx = (xmax-xmin)*0.85/2, dy = (ymax-ymin)*0.85/2; 6.417 + xmin = xc - dx; ymin = yc - dy; xmax = xc + dx; ymax = yc + dy; 6.418 + } break; 6.419 + case cimg::keyPADSUB: 6.420 + const double xc = 0.5*(xmin+xmax), yc = 0.5*(ymin+ymax), dx = (xmax-xmin)*1.15/2, dy = (ymax-ymin)*1.15/2; 6.421 + xmin = xc - dx; ymin = yc - dy; xmax = xc + dx; ymax = yc + dy; 6.422 + break; 6.423 + } 6.424 + 6.425 + // Do a simple test to check if more/less iterations are necessary for the next step. 6.426 + const float value = img.get_pointwise_norm().get_histogram(256,0,255)(0)*3; 6.427 + if (value>img.size()/6.0f) maxiter+=16; 6.428 + if (maxiter>1024) maxiter = 1024; 6.429 + if (value<img.size()/10.0f) maxiter-=4; 6.430 + if (maxiter<32) maxiter = 32; 6.431 + 6.432 + // Check if the user want to quit the explorer. 6.433 + if (disp.is_closed || disp.key==cimg::keyQ || disp.key==cimg::keyESC) stopflag = endflag = true; 6.434 + } 6.435 + } 6.436 + return 0; 6.437 +} 6.438 + 6.439 +// Item : Mini-Paint 6.440 +//------------------ 6.441 +void* item_mini_paint() { 6.442 + int xo = -1, yo = -1, x = -1, y = -1; 6.443 + bool redraw = true; 6.444 + CImg<unsigned char> img(256,256+64,1,3,0); 6.445 + unsigned char color[] = { 255,255,255 }; 6.446 + cimg_for_inY(img,256,img.dimy()-1,yy) cimg_forX(img,xx) img.fillV(xx,yy,0,xx,(yy-256)*4,(3*xx)%256); 6.447 + CImgDisplay disp(img.draw_text(5,5," ",color,color),"[#8] - Mini-Paint"); 6.448 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.449 + const unsigned int but = disp.button; 6.450 + redraw = false; 6.451 + xo = x; yo = y; x = disp.mouse_x; y = disp.mouse_y; 6.452 + if (xo>=0 && yo>=0 && x>=0 && y>=0) { 6.453 + if (but&1 || but&4) { 6.454 + if (y<253) { 6.455 + const float tmax = (float)cimg::max(cimg::abs(xo-x),cimg::abs(yo-y)) + 0.1f; 6.456 + const int radius = (but&1?3:0) + (but&4?6:0); 6.457 + for (float t=0; t<=tmax; ++t) img.draw_circle((int)(x+t*(xo-x)/tmax),(int)(y+t*(yo-y)/tmax),radius,color); 6.458 + } 6.459 + if (y>=256) { color[0]=img(x,y,0); color[1]=img(x,y,1); color[2]=img(x,y,2); img.draw_text(5,5," ",color,color); } 6.460 + redraw = true; 6.461 + } 6.462 + if (y>=253) y = 252; 6.463 + if (disp.button&2) { img.draw_fill(x,y,color); redraw = true; } 6.464 + } 6.465 + if (redraw) disp.display(img); 6.466 + disp.resize(disp).wait(); 6.467 + if (disp.key) cimg_forV(img,k) { img.get_shared_lines(0,255,0,k).fill(0); img.display(disp); } 6.468 + } 6.469 + return 0; 6.470 +} 6.471 + 6.472 +// Item : Soccer Bobs 6.473 +//------------------- 6.474 +void* item_soccer_bobs() { 6.475 + CImg<unsigned char> foot(data_foot,200,200,1,3,false), canvas0(640,480,1,3,0); 6.476 + const unsigned char color[] = { 255,255,0 }; 6.477 + float zoom = 0.2f; 6.478 + cimg_forXY(canvas0,x,y) canvas0(x,y,1) = (unsigned char)(20+(y*215/canvas0.dimy()) + cimg::crand()*19); 6.479 + canvas0.draw_text(5,5,"Left/Right Mouse Button = Zoom In/Out\nMiddle Button = Reset Screen",color); 6.480 + CImgList<unsigned char> canvas(16, canvas0); 6.481 + CImg<float> mask(foot.dimx(),foot.dimy()); 6.482 + { cimg_forXY(mask,x,y) mask(x,y) = (foot(x,y,0)==255 && !foot(x,y,1) && !foot(x,y,2))?0:0.8f; } 6.483 + CImgDisplay disp(canvas0,"[#9] - Unlimited Soccer Bobs"); 6.484 + for (unsigned int curr_canvas=0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; (++curr_canvas)%=16) { 6.485 + if (disp.mouse_x>=0 && disp.mouse_y>=0) 6.486 + canvas[curr_canvas].draw_image((int)(disp.mouse_x - zoom*foot.dimx()/2), 6.487 + (int)(disp.mouse_y - zoom*foot.dimy()/2), 6.488 + foot.get_resize((int)(foot.dimx()*zoom),(int)(foot.dimy()*zoom)), 6.489 + mask.get_resize((int)(foot.dimx()*zoom),(int)(foot.dimy()*zoom))); 6.490 + zoom+=disp.button&1?0.03f:(disp.button&2?-0.03f:0); 6.491 + zoom = zoom<0.1f?0.1f:(zoom>1?1.0f:zoom); 6.492 + if (disp.button&4) cimglist_for(canvas,l) canvas[l] = canvas0; 6.493 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.toggle_fullscreen(false); 6.494 + disp.display(canvas[curr_canvas]).resize(disp,false).wait(20); 6.495 + } 6.496 + return 0; 6.497 +} 6.498 + 6.499 +// Item : Bump Effect 6.500 +//-------------------- 6.501 +void* item_bump() { 6.502 + CImg<> logo = CImg<>(56,32,1,1,0).draw_text(9,5,"I Love\n CImg!",CImg<>::vector(255).ptr()).resize(-800,-800,1,1,3).blur(6).normalize(0,255); 6.503 + logo += CImg<>(logo.dimx(),logo.dimy(),1,1,0).noise(80,1).deriche(2,0,'y',false).deriche(10,0,'x',false); 6.504 + CImgList<> grad = logo.get_gradient(); 6.505 + cimglist_apply(grad,normalize)(-140,140); 6.506 + logo.normalize(0,255); 6.507 + CImg<> light = CImg<>(300+2*logo.dimx(),300+2*logo.dimy()); 6.508 + light.draw_gaussian(0.5f*light.dimx(),0.5f*light.dimy(),80,CImg<>::vector(255)); 6.509 + CImg<unsigned char> img(logo.dimx(),logo.dimy(),1,3,0); 6.510 + CImgDisplay disp(img,"[#10] - Bump Effect (Move lightsource with mouse)"); 6.511 + for (float t = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; t+=0.03f) { 6.512 + const int 6.513 + mouse_x = (disp.mouse_x>=0 && disp.button)?disp.mouse_x*img.dimx()/disp.dimx():(int)(img.dimx()/2 + img.dimx()*std::cos(1*t)/2), 6.514 + mouse_y = (disp.mouse_y>=0 && disp.button)?disp.mouse_y*img.dimy()/disp.dimy():(int)(img.dimy()/2 + img.dimy()*std::sin(3*t)/2); 6.515 + cimg_forXY(img,x,y) { 6.516 + const int gx = (int)grad[0](x,y), gy = (int)grad[1](x,y); 6.517 + const float val = 40+(gx+gy)/2+light(light.dimx()/2+mouse_x-x+gx,light.dimy()/2+mouse_y-y+gy); 6.518 + img(x,y,0) = img(x,y,1) = img(x,y,2) = (unsigned char)(val>255?255:(val<0?0:val)); 6.519 + } 6.520 + disp.resize(false).display(img.draw_image(0,0,0,1,logo,0.1f)).wait(25); 6.521 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(640,480,false).toggle_fullscreen(false); 6.522 + } 6.523 + return 0; 6.524 +} 6.525 + 6.526 +// Item : Bouncing Bubble 6.527 +//------------------------ 6.528 +void* item_bouncing_bubble() { 6.529 + CImg<unsigned char> back(420,256,1,3,0), img; 6.530 + cimg_forXY(back,x,y) back(x,y,2) = (unsigned char)((y<2*back.dimy()/3)?30:(255-2*(y+back.dimy()/2))); 6.531 + CImgDisplay disp(back,"[#11] - Bouncing bubble"); 6.532 + const unsigned char col1[] = { 40,100,10 }, col2[] = { 20,70,0 }, col3[] = { 40,150,10 }, 6.533 + col4[] = { 200,255,100 }, white[] = { 255,255,255 }; 6.534 + float u = (float)std::sqrt(2.0f), cx = back.dimx()/2.0f, t = 0, vt = 0.05f, vx = 2; 6.535 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.536 + img = back; 6.537 + int xm = (int)cx, ym = (int)(img.dimy()/2-70 + (img.dimy()/2+10)* (1-cimg::abs(std::cos((t+=vt))))); 6.538 + float r1 = 50, r2 = 50; 6.539 + vt = 0.05f; 6.540 + if (xm+r1>=img.dimx()) { const float delta = (xm+r1)-img.dimx(); r1-=delta; r2+=delta; } 6.541 + if (xm-r1<0) { const float delta = -(xm-r1); r1-=delta; r2+=delta; } 6.542 + if (ym+r2>=img.dimy()-40) { const float delta = (ym+r2)-img.dimy()+40; r2-=delta; r1+=delta; vt=0.05f - 0.0015f*(50-r2); } 6.543 + if (ym-r2<0) { const float delta = -(ym-r2); r2-=delta; r1+=delta; } 6.544 + img.draw_ellipse(xm,ym,r1,r2,1,0,col1). 6.545 + draw_ellipse((int)(xm+0.03*r1*u),(int)(ym-0.03*r2*u),0.85f*r1,0.85f*r2,1,0,col2). 6.546 + draw_ellipse((int)(xm+0.1*r1*u),(int)(ym-0.1*r2*u),0.8f*r1,0.8f*r2,1,0,col1). 6.547 + draw_ellipse((int)(xm+0.2*r1*u),(int)(ym-0.2*r2*u),r1/2,r2/2,1,0,col3). 6.548 + draw_ellipse((int)(xm+0.3*r1*u),(int)(ym-0.3*r2*u),r1/4,r2/4,1,0,col4). 6.549 + draw_image(0,img.dimy()-40,img.get_crop(0,img.dimy()-80,img.dimx()-1,img.dimy()-40).mirror('y'),0.45f). 6.550 + draw_text(xm-60,(int)(ym-r2-25),"Bubble (%d,%d)",white,0,1,17,xm,ym); 6.551 + if ((cx+=20*vt*vx)>=img.dimx()-30 || cx<30) vx = -vx; 6.552 + disp.display(img).wait(20); 6.553 + if (disp.is_resized) { 6.554 + back.resize(disp.resize(disp.window_dimx()>200?disp.window_dimx():200,disp.dimy(),false)); 6.555 + cx = back.dimx()/2.0f; 6.556 + } 6.557 + } 6.558 + return 0; 6.559 +} 6.560 + 6.561 +// Item : Virtual Landscape 6.562 +//-------------------------- 6.563 +void* item_virtual_landscape() { 6.564 + CImg<int> background(400,300,1,3,0), visu(background); 6.565 + cimg_forXY(background,x,y) { 6.566 + if (y>background.dimy()/2) { background(x,y,2) = 255; background(x,y,0) = (y-background.dimy()/2)*512/background.dimy(); } 6.567 + else background(x,y,2) = y*512/background.dimy(); 6.568 + } 6.569 + const int white[] = { 255,255,255 }; 6.570 + CImgDisplay disp(visu.draw_text(10,10,"Please wait, generating landscape...",white). 6.571 + normalize(0,255),"[#12] - Virtual Landscape",0); 6.572 + CImg<> map = 5.0*(CImg<>(700,700,1,1,300).noise(300).draw_plasma(0.2f,300).normalize(-140,150).blur(5).cut(0,150)), cmap(map.dimx(),map.dimy()); 6.573 + CImg_3x3(I,float); Ipp = Inp = Icc = Ipn = Inn = 0; 6.574 + { cimg_for3x3(map,x,y,0,0,I) { const float nox = 0.5f*(Inc - Ipc), noy = 0.5f*(Icn - Icp); cmap(x,y) = cimg::max(0.0f,0.5f*nox+noy); }} 6.575 + cmap.normalize(0,255); 6.576 + 6.577 + for (float t = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; t+=0.0025f) { 6.578 + visu = background; 6.579 + const int 6.580 + xm = (int)(map.dimx()/2 + (map.dimx()/3)*std::cos(4.2f*t)), 6.581 + ym = (int)(map.dimy()/2 + (map.dimy()/3)*std::sin(5.6f*t)); 6.582 + const CImg<> 6.583 + smap = map.get_crop(xm,ym,xm+100,ym+90), 6.584 + scmap = cmap.get_crop(xm,ym,xm+100,ym+90); 6.585 + CImg<int> ymin(visu.dimx(),1,1,1,visu.dimy()), ymax(ymin.dimx(),1,1,1,0); 6.586 + cimg_forY(smap,z) { 6.587 + const int y0 = (int)(visu.dimy()-1-10*std::pow((double)z,0.63) + 80); 6.588 + cimg_forX(visu,x) { 6.589 + const int nz = smap.dimy()-z; 6.590 + float mx = x*(smap.dimx()-2.0f*nz*0.2f)/visu.dimx() + nz*0.2f; 6.591 + const int y = (int)(y0-smap.linear_atX(mx,z)/(1+0.02*z)); 6.592 + const float cc = (float)scmap.linear_atX(mx,z); 6.593 + if (y<visu.dimy() && y<ymin(x)) { 6.594 + const float cz = (smap.dimy()-(float)z)/smap.dimy(), czz = cz>0.25?1:4*cz; 6.595 + if (y!=y0) for (int l=y>0?y:0; l<ymin(x); ++l) { 6.596 + visu(x,l,0) = (int)((1-czz)*visu(x,l,0)+4*cc*czz); 6.597 + visu(x,l,1) = (int)((1-czz)*visu(x,l,1)+3*cc*czz); 6.598 + visu(x,l,2) = (int)((1-czz)*visu(x,l,2)+ cc*czz); 6.599 + } else for (int l=y>0?y:0; l<ymin(x); ++l) { int cl = l-visu.dimy()/2; 6.600 + visu(x,l,0) = 10; visu(x,l,1) = 200-cl; visu(x,l,2) = 255-cl; 6.601 + } 6.602 + } 6.603 + ymin(x) = cimg::min(ymin(x),y); ymax(x) = cimg::max(ymax(x),y); 6.604 + } 6.605 + } 6.606 + visu.draw_text(5,5,"%u frames/s",white,0,0.5f,11,(unsigned int)disp.frames_per_second()); 6.607 + disp.resize(false).display(visu.cut(0,255)).wait(25); 6.608 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(400,300,false).toggle_fullscreen(false); 6.609 + } 6.610 + return 0; 6.611 +} 6.612 + 6.613 +// Item : Plasma Effect with Sinus Scrolling. 6.614 +//------------------------------------------- 6.615 +void* item_plasma() { 6.616 + CImg<> plasma, camp(3), cfreq(3), namp(3), nfreq(3); 6.617 + CImgList<unsigned char> font = CImgList<unsigned char>::font(57); 6.618 + CImg<unsigned char> visu(400,300,1,3,0), letter, scroll(visu.dimx()+2*font['W'].dimx(),font['W'].dimy(),1,1,0); 6.619 + const char *text = " * The CImg Library : C++ Template Image Processing Toolkit *"; 6.620 + CImgDisplay disp(visu,"[#13] - Plasma Effect"); 6.621 + const unsigned char white[] = { 255, 255, 255 }; 6.622 + unsigned int cplasma = 0, pos = 0, tpos = 0, lwidth = 0; 6.623 + float tx = 0, ts = 0, alpha = 2, beta = 0; 6.624 + namp.fill(0).noise(visu.dimy()/4,0); 6.625 + nfreq.fill(0).noise(0.1); 6.626 + 6.627 + visu.draw_text(10,10,"Please wait, generating plasma...",white).display(disp); 6.628 + const unsigned int nb_plasmas = 5; 6.629 + plasma.assign(5*visu.dimx()/3,visu.dimy(),1,nb_plasmas,0).noise(100).draw_plasma(); 6.630 + cimg_forV(plasma,k) plasma.get_shared_channel(k).blur((float)(cimg::rand()*6)).normalize(0,255); 6.631 + 6.632 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.633 + if (alpha>1) { 6.634 + alpha-=1; 6.635 + cplasma = (cplasma+1)%plasma.dimv(); 6.636 + camp = namp; 6.637 + cfreq = nfreq; 6.638 + namp.fill(0).noise(100).normalize(0,visu.dimy()/4.0f); 6.639 + nfreq.fill(0).noise(0.2); 6.640 + } 6.641 + const unsigned int 6.642 + v0 = cplasma, v1 = (cplasma+1)%plasma.dimv(), 6.643 + v2 = (cplasma+2)%plasma.dimv(), v3 = (cplasma+3)%plasma.dimv(); 6.644 + const float umalpha = 1-alpha; 6.645 + unsigned char *pR = visu.ptr(0,0,0,0), *pG = visu.ptr(0,0,0,1), *pB = visu.ptr(0,0,0,2); 6.646 + cimg_forY(visu,y) { 6.647 + const float 6.648 + *pR1 = plasma.ptr((unsigned int)(camp(0)*(1+std::sin(tx+cfreq(0)*y))),y,v0), 6.649 + *pG1 = plasma.ptr((unsigned int)(camp(1)*(1+std::sin(tx+cfreq(1)*y))),y,v1), 6.650 + *pB1 = plasma.ptr((unsigned int)(camp(2)*(2+std::sin(tx+cfreq(2)*y))),y,v2), 6.651 + *pR2 = plasma.ptr((unsigned int)(namp(0)*(1+std::sin(tx+nfreq(0)*y))),y,v1), 6.652 + *pG2 = plasma.ptr((unsigned int)(namp(1)*(1+std::sin(tx+nfreq(1)*y))),y,v2), 6.653 + *pB2 = plasma.ptr((unsigned int)(namp(2)*(2+std::sin(tx+nfreq(2)*y))),y,v3); 6.654 + cimg_forX(visu,x) { 6.655 + *(pR++) = (unsigned char)(umalpha*(*(pR1++))+alpha*(*(pR2++))); 6.656 + *(pG++) = (unsigned char)(umalpha*(*(pG1++))+alpha*(*(pG2++))); 6.657 + *(pB++) = (unsigned char)(umalpha*(*(pB1++))+alpha*(*(pB2++))); 6.658 + } 6.659 + } 6.660 + if (!pos) { 6.661 + const CImg<unsigned char>& letter = font(text[tpos]); 6.662 + lwidth = (unsigned int)letter.dimx(); 6.663 + scroll.draw_image(visu.dimx(),letter); 6.664 + (++tpos)%=strlen(text); 6.665 + } 6.666 + scroll.translate(2); 6.667 + pos+=2; if (pos>lwidth+2) pos = 0; 6.668 + cimg_forX(visu,x) { 6.669 + const int y0 = (int)(visu.dimy()/2+visu.dimy()/4*std::sin(ts+x/(70+30*std::cos(beta)))); 6.670 + cimg_forY(scroll,y) { 6.671 + if (scroll(x,y)) { 6.672 + const unsigned int y1 = y0+y+2; visu(x,y1,0)/=2; visu(x,y1,1)/=2; visu(x,y1,2)/=2; 6.673 + const unsigned int y2 = y1-6; visu(x,y2,0)=visu(x,y2,1)=visu(x,y2,2)=255; 6.674 + } 6.675 + } 6.676 + } 6.677 + alpha+=0.007f; beta+=0.04f; tx+=0.09f; ts+=0.04f; 6.678 + disp.resize(false).display(visu).wait(20); 6.679 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(640,480,false).toggle_fullscreen(false); 6.680 + } 6.681 + return 0; 6.682 +} 6.683 + 6.684 +// Item : Oriented Convolutions 6.685 +//------------------------------ 6.686 +void* item_oriented_convolutions() { 6.687 + const CImg<unsigned char> img = CImg<unsigned char>(data_lena,256,256,1,1,false).noise(50,2); 6.688 + CImgList<unsigned char> visu = img<<img<<img; 6.689 + CImg<float> mask(16,16); 6.690 + const float value = 255; 6.691 + CImgDisplay disp(visu,"[#14] - Original image, Oriented kernel and Convolved image"); 6.692 + for (float angle = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; angle+=0.1f) { 6.693 + const float ca = (float)std::cos(angle), sa = (float)std::sin(angle); 6.694 + const CImg<> u = CImg<>::vector(ca,sa), v = CImg<>::vector(-sa,ca), 6.695 + tensor = 30.0*u*u.get_transpose() + 2.0*v*v.get_transpose(); 6.696 + mask.draw_gaussian(0.5f*mask.dimx(),0.5f*mask.dimy(),tensor,&value); 6.697 + mask/=mask.sum(); 6.698 + visu[1] = mask.get_resize(img).normalize(0,255). 6.699 + draw_text(2,2,"Angle = %d deg",&value,0,1,11,cimg::mod((int)(angle*180/cimg::valuePI),360)); 6.700 + visu[2] = img.get_convolve(mask); 6.701 + disp.resize(disp.window_dimx(),(int)(disp.dimy()*disp.window_dimx()/disp.dimx()),false). 6.702 + display(visu).wait(25); 6.703 + } 6.704 + return 0; 6.705 +} 6.706 + 6.707 +// Item : Shade Bobs 6.708 +//------------------- 6.709 +void* item_shade_bobs() { 6.710 + float t = 100, rx = 0, ry = 0, rz = 0, rt = 0, rcx = 0; 6.711 + CImg<unsigned char> img(512,512,1,1,0), palette; 6.712 + CImgDisplay disp(img,"[#15] - Shade Bobs"); 6.713 + const unsigned char one = 1; 6.714 + int nbbobs = 0, rybobs = 0; 6.715 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.716 + if ((t+=0.015f)>4*cimg::valuePI) { 6.717 + img.fill(0); 6.718 + rx = (float)(cimg::crand()); 6.719 + ry = (float)(cimg::crand()); 6.720 + rz = (float)(cimg::crand()); 6.721 + rt = (float)(cimg::crand()); 6.722 + rcx = 0.6f*(float)(cimg::crand()); 6.723 + t = 0; 6.724 + palette = CImg<unsigned char>(3,4+(int)(12*cimg::rand()),1,1,0).noise(255,2).resize(3,256,1,1,3); 6.725 + palette(0) = palette(1) = palette(2) = 0; 6.726 + nbbobs = 20+(int)(cimg::rand()*80); 6.727 + rybobs = (10+(int)(cimg::rand()*50))*cimg::min(img.dimx(),img.dimy())/300; 6.728 + disp.key = disp.button = 0; 6.729 + } 6.730 + for (int i = 0; i<nbbobs; ++i) { 6.731 + const float 6.732 + r = (float)(ry + rx*std::cos(6*rz*t) + (1-rx)*std::sin(6*rt*t)), 6.733 + a = (float)((360*std::sin(rz*t)+30*ry*i)*cimg::valuePI/180), 6.734 + ax = (float)(i*2*cimg::valuePI/nbbobs+t); 6.735 + const int 6.736 + cx = (int)((1+rcx*std::cos(ax)+r*std::cos(a))*img.dimx()/2), 6.737 + cy = (int)((1+rcx*std::sin(ax)+r*std::sin(a))*img.dimy()/2); 6.738 + img.draw_circle(cx,cy,rybobs,&one,-1.0f); 6.739 + } 6.740 + CImg_3x3(I,unsigned char); Ipp = Inp = Ipn = Inn = 0; 6.741 + CImg<unsigned char> tmp(img); 6.742 + cimg_for3x3(tmp,x,y,0,0,I) img(x,y) = (Inc+Ipc+Icn+Icp+(Icc<<2))>>3; 6.743 + CImg<unsigned char> visu(img.dimx(),img.dimy(),1,3); 6.744 + cimg_forXY(visu,xx,yy) { 6.745 + const unsigned char *col = palette.ptr(0,img(xx,yy)); 6.746 + visu(xx,yy,0) = *(col++); 6.747 + visu(xx,yy,1) = *(col++); 6.748 + visu(xx,yy,2) = *(col++); 6.749 + } 6.750 + disp.display(visu).wait(25); 6.751 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(640,480,false).toggle_fullscreen(false); 6.752 + if (disp.is_resized) img.resize(disp.resize(false),3); 6.753 + if ((disp.key && disp.key!=cimg::keyCTRLLEFT) || disp.button) t=70; 6.754 + } 6.755 + return 0; 6.756 +} 6.757 + 6.758 +// Item : Fourier Filtering 6.759 +//------------------------- 6.760 +void* item_fourier_filtering() { 6.761 + const CImg<unsigned char> img = CImg<unsigned char>(data_lena,256,256,1,1,false).resize(256,256); 6.762 + CImgList<> F = img.get_FFT(); 6.763 + cimglist_apply(F,translate)(img.dimx()/2,img.dimy()/2,0,0,2); 6.764 + const CImg<unsigned char> mag = ((F[0].get_pow(2) + F[1].get_pow(2)).sqrt()+1.0f).log().normalize(0,255); 6.765 + CImgList<unsigned char> visu(img,mag); 6.766 + CImgDisplay disp(visu,"[#16] - Fourier Filtering (Click to set filter)"); 6.767 + CImg<unsigned char> mask(img.dimx(),img.dimy(),1,1,1); 6.768 + unsigned char one[] = { 1 }, zero[] = { 0 }, white[] = { 255 }; 6.769 + int rmin = 0, rmax = 256; 6.770 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.771 + disp.wait(); 6.772 + const int 6.773 + xm = disp.mouse_x*2*img.dimx()/disp.dimx()-img.dimx(), 6.774 + ym = disp.mouse_y*img.dimy()/disp.dimy(), 6.775 + x = xm-img.dimx()/2, 6.776 + y = ym-img.dimy()/2; 6.777 + if (disp.button && xm>=0 && ym>=0) { 6.778 + const int r = (int)cimg::max(0.0f,(float)std::sqrt((float)x*x+y*y)-3.0f); 6.779 + if (disp.button&1) rmax = r; 6.780 + if (disp.button&2) rmin = r; 6.781 + if (rmin>=rmax) rmin = cimg::max(rmax-1,0); 6.782 + mask.fill(0).draw_circle(mag.dimx()/2,mag.dimy()/2,rmax,one). 6.783 + draw_circle(mag.dimx()/2,mag.dimy()/2,rmin,zero); 6.784 + CImgList<> nF(F); 6.785 + cimglist_for(F,l) nF[l].mul(mask).translate(-img.dimx()/2,-img.dimy()/2,0,0,2); 6.786 + visu[0] = nF.FFT(true)[0].normalize(0,255); 6.787 + } 6.788 + if (disp.is_resized) disp.resize(disp.window_dimx(),disp.window_dimx()/2).display(visu); 6.789 + visu[1] = mag.get_mul(mask).draw_text(5,5,"Freq Min/Max = %d / %d",white,zero,0.6f,11,(int)rmin,(int)rmax); 6.790 + visu.display(disp); 6.791 + } 6.792 + return 0; 6.793 +} 6.794 + 6.795 +// Item : Image Zoomer 6.796 +//--------------------- 6.797 +void* item_image_zoomer() { 6.798 + const CImg<unsigned char> img = CImg<unsigned char>(data_logo,555,103,1,3,false); 6.799 + CImgDisplay disp(img,"[#17] - Original Image"), dispz(500,500,"[#17] - Zoomed Image",0); 6.800 + disp.move((CImgDisplay::screen_dimx()-dispz.dimx())/2,(CImgDisplay::screen_dimy()-dispz.dimy()-disp.dimy())/2); 6.801 + dispz.move(disp.window_posx(),disp.window_posy() + disp.window_dimy() + 40); 6.802 + int factor = 20, x = 0, y = 0; 6.803 + bool grid = false, redraw = false; 6.804 + while (!disp.is_closed && !dispz.is_closed && !disp.is_keyQ && !dispz.is_keyQ && !disp.is_keyESC && !dispz.is_keyESC ) { 6.805 + if (disp.mouse_x>=0) { x = disp.mouse_x; y = disp.mouse_y; redraw = true; } 6.806 + if (redraw) { 6.807 + const int 6.808 + x0 = x-factor, y0 = y-factor, 6.809 + x1 = x+factor, y1 = y+factor; 6.810 + const unsigned char red[] = { 255,0,0 }, black[] = { 0,0,0 }, white[] = { 255,255,255 }; 6.811 + (+img).draw_rectangle(x0,y0,x1,y1,red,1.0f,~0U).display(disp); 6.812 + CImg<unsigned char> visu = img.get_crop(x0,y0,x1,y1).draw_point(x-x0,y-y0,red,0.2f).resize(dispz); 6.813 + if (grid) { 6.814 + const int bfac = 2*factor+1; 6.815 + for (int i = 0; i<bfac; ++i) { 6.816 + const int X = i*dispz.dimx()/bfac, Y = i*dispz.dimy()/bfac; 6.817 + visu.draw_line(X,0,X,dispz.dimy()-1,black).draw_line(0,Y,dispz.dimx()-1,Y,black); 6.818 + } 6.819 + } 6.820 + visu.draw_text(2,2,"Coords (%d,%d)",white,0,1,11,x,y).display(dispz); 6.821 + } 6.822 + if (disp.button&1) { factor=(int)(factor/1.5f); if (factor<3) factor = 3; disp.button=0; redraw = true; } 6.823 + if (disp.button&2) { factor=(int)(factor*1.5f); if (factor>100) factor = 100; disp.button=0; redraw = true; } 6.824 + if (disp.button&4 || dispz.button) { grid = !grid; disp.button = dispz.button = 0; redraw = true; } 6.825 + if (disp.is_resized) disp.resize(disp); 6.826 + if (dispz.is_resized) { dispz.resize(); redraw = true; } 6.827 + CImgDisplay::wait(disp,dispz); 6.828 + } 6.829 + return 0; 6.830 +} 6.831 + 6.832 +// Item : Blobs Editor 6.833 +//-------------------- 6.834 +void* item_blobs_editor() { 6.835 + CImg<unsigned int> img(300,300,1,3); 6.836 + CImgList<unsigned int> colors; 6.837 + CImgList<> blobs; 6.838 + CImgDisplay disp(img,"[#18] - Blobs Editor",0); 6.839 + bool moving = false; 6.840 + unsigned int white[] = { 255,255,255 }; 6.841 + 6.842 + for (float alpha = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; alpha+=0.1f) { 6.843 + const int xm = disp.mouse_x*img.dimx()/disp.dimx(), ym = disp.mouse_y*img.dimy()/disp.dimy(); 6.844 + int selected = -1; 6.845 + img.fill(0); 6.846 + 6.847 + if (blobs) { 6.848 + float dist = 0, dist_min = (float)img.dimx()*img.dimx() + img.dimy()*img.dimy(); 6.849 + cimglist_for(blobs,l) { 6.850 + const CImg<>& blob = blobs[l]; 6.851 + const float 6.852 + xb = blob[0], yb = blob[1], rb = blob[2], 6.853 + sigma = (float)(rb*(1+0.05f*std::cos(blob[3]*alpha))), 6.854 + sigma2 = 2*sigma*sigma, precision = 4.5f*sigma2; 6.855 + const int tx0 = (int)(xb-3*sigma), ty0 = (int)(yb-3*sigma), tx1 = (int)(xb+3*sigma), ty1 = (int)(yb+3*sigma); 6.856 + const unsigned int 6.857 + col1 = colors[l](0), col2 = colors[l](1), col3 = colors[l](2), wh = img.dimx()*img.dimy(), 6.858 + x0 = tx0<0?0:tx0, y0 = ty0<0?0:ty0, 6.859 + x1 = tx1>=img.dimx()?(img.dimx()-1):tx1, y1 = ty1>=img.dimy()?(img.dimy()-1):ty1; 6.860 + float dy = y0-yb; 6.861 + unsigned int *ptr = img.ptr(x0,y0); 6.862 + for (unsigned int y = y0; y<=y1; ++y) { 6.863 + float dx = x0-xb; 6.864 + for (unsigned int x = x0; x<=x1; ++x) { 6.865 + float dist = dx*dx + dy*dy; 6.866 + if (dist<precision) { 6.867 + const float val = (float)exp(-dist/sigma2); 6.868 + *ptr += (unsigned int)(val*col1); 6.869 + *(ptr+wh) += (unsigned int)(val*col2); 6.870 + *(ptr+2*wh) += (unsigned int)(val*col3); 6.871 + } 6.872 + ++dx; ++ptr; 6.873 + } 6.874 + ptr+=img.dimx()-(x1-x0)-1; 6.875 + ++dy; 6.876 + } 6.877 + if ((dist=(xb-xm)*(xb-xm)+(yb-ym)*(yb-ym))<dist_min) { dist_min = dist; selected = l; } 6.878 + } 6.879 + 6.880 + for (unsigned int *ptr1 = img.ptr(0,0,0,1), *ptr2 = img.ptr(0,0,0,2), *ptr3 = img.ptr(img.size()-1)+1, 6.881 + off = 0, wh = img.dimx()*img.dimy(); ptr1>img.data; ++off) { 6.882 + unsigned int val1 = *(--ptr1), val2 = *(--ptr2), val3 = *(--ptr3); 6.883 + const unsigned int pot = val1*val1 + val2*val2 + val3*val3; 6.884 + if (pot<128*128) { *ptr1=*ptr3=255*off/wh; *ptr2=180*off/wh; } 6.885 + else { 6.886 + if (pot<140*140) { *ptr1>>=1; *ptr2>>=1; *ptr3>>=1; } 6.887 + else { 6.888 + *ptr1 = val1<255?val1:255; 6.889 + *ptr2 = val2<255?val2:255; 6.890 + *ptr3 = val3<255?val3:255; 6.891 + } 6.892 + } 6.893 + } 6.894 + cimglist_for(blobs,ll) { 6.895 + const CImg<>& blob = blobs[ll]; 6.896 + const int rb = (int)(blob[2]*(1+0.05f*std::cos(blob[3]*alpha))), 6.897 + xb = (int)(blob[0]+rb/2.5f), yb = (int)(blob[1]-rb/2.5f); 6.898 + img.draw_circle(xb,yb,rb>>1,white,0.2f).draw_circle(xb,yb,rb/3,white,0.2f). 6.899 + draw_circle(xb,yb,rb/5,white,0.2f); 6.900 + } 6.901 + } else { 6.902 + CImg<unsigned int> text; 6.903 + text.draw_text(0,0, 6.904 + "CImg Blobs Editor\n" 6.905 + "-----------------\n\n" 6.906 + "* Left mouse button :\n Create and Move Blob.\n\n" 6.907 + "* Right mouse button :\n Remove nearest Blob.\n\n" 6.908 + "* Colors and size of Appearing Blobs\n" 6.909 + " are randomly chosen.\n\n\n" 6.910 + " >> Press mouse button to start ! <<", 6.911 + white); 6.912 + img.fill(100).draw_image((img.dimx()-text.dimx())/2, 6.913 + (img.dimy()-text.dimy())/2, 6.914 + text,text,1,255U); 6.915 + } 6.916 + 6.917 + if (disp.mouse_x>=0 && disp.mouse_y>=0) { 6.918 + if (disp.button&1) { 6.919 + float dist_selected = 0; 6.920 + if (selected>=0) { 6.921 + const float a = xm-blobs[selected](0), b = ym-blobs[selected](1), c = blobs[selected](2); 6.922 + dist_selected = a*a+b*b-c*c; 6.923 + } 6.924 + if (moving || dist_selected<0) { blobs[selected](0) = (float)xm; blobs[selected](1) = (float)ym; } 6.925 + else { 6.926 + blobs.insert(CImg<>::vector((float)xm,(float)ym,(float)(10+30*cimg::rand()),(float)(3*cimg::rand()))); 6.927 + colors.insert(CImg<>(3).fill(0).noise(255,1).normalize(0,255)); 6.928 + } 6.929 + moving = true; 6.930 + } else moving = false; 6.931 + if (selected>=0 && disp.button&2) { blobs.remove(selected); colors.remove(selected); disp.button = 0; } 6.932 + } 6.933 + 6.934 + img.display(disp.wait(25)); 6.935 + if (disp.is_resized) { 6.936 + img.resize(disp.resize(false)); 6.937 + cimglist_for(blobs,l) if (blobs[l](0)>=img.dimx() || blobs[l](1)>=img.dimy()) { blobs.remove(l); colors.remove(l--); } 6.938 + } 6.939 + } 6.940 + return 0; 6.941 +} 6.942 + 6.943 +// Item : Double Torus 6.944 +//--------------------- 6.945 +void* item_double_torus() { 6.946 + CImg<unsigned char> visu(300,256,1,3,0); 6.947 + CImgDisplay disp(300,256,"[#19] - Double 3D Torus"); 6.948 + CImgList<unsigned int> primitives; 6.949 + CImg<> points = CImg<>::torus3d(primitives,60,20), points2 = CImg<>::rotation_matrix(1,0,0,(float)cimg::valuePI/2.0f)*points; 6.950 + CImgList<> opacities = CImgList<>(primitives.size,1,1,1,1,1).insert(CImgList<>(primitives.size,1,1,1,1,0.4f)); 6.951 + CImgList<unsigned char> colors(2*primitives.size,CImg<unsigned char>(1,3,1,1,255,255,0)); 6.952 + cimglist_for(primitives,ll) colors[ll++].fill(100,255,100); 6.953 + cimglist_for(primitives,l) if (l%2) colors[primitives.size+l].fill(255,200,255); else colors[primitives.size+l].fill(200,150,255); 6.954 + points.translate_object3d(-30,0,0).append_object3d(primitives,points2.translate_object3d(30,0,0),primitives); 6.955 + float alpha = 0, beta = 0, gamma = 0, theta = 0; 6.956 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.957 + visu.get_shared_channels(1,2).fill(0); 6.958 + visu.get_shared_line(visu.dimy()-1,0,0).noise(200,1); 6.959 + CImg_3x3(I,unsigned char); Ipp = Icp = Inp = Ipc = Inc = 0; 6.960 + cimg_for3x3(visu,x,y,0,0,I) visu(x,y,0) = (Icc+Ipn+Icn+Inn)>>2; 6.961 + { for (unsigned int y = 0; y<100; ++y) std::memset(visu.ptr(0,y,0,2),255-y*255/100,visu.dimx()); } 6.962 + const CImg<> 6.963 + rpoints = CImg<>::rotation_matrix(1,1,0,(alpha+=0.01f))*CImg<>::rotation_matrix(1,0,1,(beta-=0.02f))* 6.964 + CImg<>::rotation_matrix(0,1,1,(gamma+=0.03f))*points; 6.965 + if (disp.is_resized) disp.resize(false); 6.966 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(300,256,false).toggle_fullscreen(false); 6.967 + visu.draw_object3d(visu.dimx()/2.0f,visu.dimy()/2.0f,0, 6.968 + rpoints,primitives,colors,opacities,4, 6.969 + true,500.0f,(float)(std::cos(theta+=0.01f)+1)*visu.dimx()/2.0f, 6.970 + (float)visu.dimy(),-100.0f,0.1f,1.5f). 6.971 + display(disp.wait(25)); 6.972 + } 6.973 + return 0; 6.974 +} 6.975 + 6.976 +// Item : 3D Metaballs 6.977 +//--------------------- 6.978 +struct metaballs3d { 6.979 + float cx1, cy1, cz1, cx2, cy2, cz2, cx3, cy3, cz3; 6.980 + inline float operator()(const float x, const float y, const float z) const { 6.981 + const float 6.982 + x1 = x - cx1, y1 = y - cy1, z1 = z - cz1, 6.983 + x2 = x - cx2, y2 = y - cy2, z2 = z - cz2, 6.984 + x3 = x - cx3, y3 = y - cy3, z3 = z - cz3, 6.985 + r1 = 0.3f*(x1*x1 + y1*y1 + z1*z1), 6.986 + r2 = 0.4f*(x2*x2 + y2*y2 + z2*z2), 6.987 + r3 = 0.5f*(x3*x3 + y3*y3 + z3*z3); 6.988 + float potential = 0; 6.989 + if (r1<1.3f) potential+= 1.0f - r1*(r1*(4*r1+17)-22)/9; 6.990 + if (r2<1.3f) potential+= 1.0f - r2*(r2*(4*r2+17)-22)/9; 6.991 + if (r3<1.3f) potential+= 1.0f - r3*(r3*(4*r3+17)-22)/9; 6.992 + return potential; 6.993 + } 6.994 +}; 6.995 + 6.996 +void* item_3d_metaballs() { 6.997 + CImg<unsigned char> img = CImg<unsigned char>(100,100,1,3,0).noise(100,2).draw_plasma(0,0,99,99).resize(512,320,1,3).blur(4); 6.998 + img.get_shared_channel(2)/=4; img.get_shared_channel(1)/=2; 6.999 + metaballs3d met; 6.1000 + CImgList<unsigned int> primitives; 6.1001 + CImgList<unsigned char> colors(8000,3,1,1,1,255); 6.1002 + unsigned char white[] = { 255,255,255 }; 6.1003 + 6.1004 + float alpha = 0, beta = 0, delta = 0, theta = 0, gamma = 0; 6.1005 + CImgDisplay disp(img,"[#20] - 3D Metaballs"); 6.1006 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.1007 + met.cx2 = 1.5f*(float)std::cos(theta); met.cy2 = 2.5f*(float)std::sin(3*(theta+=0.017f)); met.cz2 = 0; 6.1008 + met.cx1 = 0; met.cy1 = 2.0f*(float)std::sin(4*gamma); met.cz1 = 1.2f*(float)std::cos(2*(gamma-=0.0083f)); 6.1009 + met.cx3 = 2.5f*(float)std::cos(2.5*delta); met.cy3 = 0; met.cz3 = 1.5f*(float)std::sin(2*(delta+=0.0125f)); 6.1010 + const CImg<> 6.1011 + points = CImg<>::marching_cubes(primitives,met,0.8f,-4.5f,-4.5f,-3.5f,4.5f,4.5f,3.5f,0.29f,0.29f,0.29f,true), 6.1012 + rot = 50.0*CImg<>::rotation_matrix(0,0,1,(alpha+=0.02f))*CImg<>::rotation_matrix(1,1,0,(beta+=0.076f)), 6.1013 + rpoints = rot*points; 6.1014 + cimglist_for(primitives,ll) { 6.1015 + colors(ll,0) = -60+191+64*ll/primitives.size; 6.1016 + colors(ll,1) = -30+191+64*ll/primitives.size; 6.1017 + colors(ll,2) = 255*ll/primitives.size; 6.1018 + } 6.1019 + if (primitives.size) { 6.1020 + (+img).draw_object3d(img.dimx()/2.0f,img.dimy()/2.0f,0.0f, 6.1021 + rpoints,primitives, 6.1022 + colors.get_crop(0,primitives.size-1,true), 6.1023 + 4,false,500, 0,0,-500, 0.1f,1.5f). 6.1024 + draw_text(5,5,"%u frames/s",white,0,0.5f,11,(unsigned int)disp.frames_per_second()).display(disp.wait(20)); 6.1025 + } 6.1026 + if (disp.is_resized) disp.resize(false); 6.1027 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(512,320,false).toggle_fullscreen(false); 6.1028 + } 6.1029 + return 0; 6.1030 +} 6.1031 + 6.1032 +// Item : Fireworks 6.1033 +//------------------ 6.1034 +void* item_fireworks() { 6.1035 + CImg<unsigned char> img(640,480,1,3,0); 6.1036 + CImgDisplay disp(img,"[#21] - Fireworks (Click to add/explode rockets)"); 6.1037 + CImgList<unsigned char> colors; 6.1038 + unsigned char white[] = { 255,255,255 }, black[] = { 128,0,0 }; 6.1039 + CImgList<> particles; 6.1040 + float time = 0, speed = 100.0f; 6.1041 + 6.1042 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.1043 + 6.1044 + if (disp.button&1 || !particles.size || (--time)<0) { 6.1045 + particles.insert(CImg<>::vector((float)cimg::rand()*img.dimx(),(float)img.dimy(), 6.1046 + (float)cimg::crand()*4,-6-(float)cimg::rand()*3, 6.1047 + 30+60*(float)cimg::rand(),3)); 6.1048 + colors.insert(CImg<unsigned char>::vector(255,255,255)); 6.1049 + time = (float)(cimg::rand()*speed); 6.1050 + } 6.1051 + img*=0.92f; 6.1052 + 6.1053 + cimglist_for(particles,l) { 6.1054 + bool remove_particle = false; 6.1055 + float &x = particles(l,0), &y = particles(l,1), &vx = particles(l,2), &vy = particles(l,3), 6.1056 + &t = particles(l,4), &r = particles(l,5); 6.1057 + const float n = (float)std::sqrt(1e-5f+vx*vx+vy*vy), nvx = vx/n, nvy = vy/n, 6.1058 + r2 = (t>0 || t<-42)?r/3:r*(1-2*(-(t+2)/40.0f)/3); 6.1059 + img.draw_ellipse((int)x,(int)y,r,r2,nvx,nvy,colors[l],0.6f); 6.1060 + x+=vx; y+=vy; vy+=0.09f; t--; 6.1061 + if (y>img.dimy()+10 || x<0 || x>=img.dimx()+10) remove_particle = true; 6.1062 + 6.1063 + if (t<0 && t>=-1) { 6.1064 + if ((speed*=0.9f)<10) speed=10.0f; 6.1065 + const unsigned char 6.1066 + r = cimg::min(50+3*(unsigned char)(100*cimg::rand()), 255), 6.1067 + g = cimg::min(50+3*(unsigned char)(100*cimg::rand()), 255), 6.1068 + b = cimg::min(50+3*(unsigned char)(100*cimg::rand()), 255); 6.1069 + const float di = 10+(float)cimg::rand()*60, nr = (float)cimg::rand()*30; 6.1070 + for (float i=0; i<360; i+=di) { 6.1071 + const float rad = i*(float)cimg::valuePI/180, c = (float)std::cos(rad), s = (float)std::sin(rad); 6.1072 + particles.insert(CImg<>::vector(x,y,2*c+vx/1.5f,2*s+vy/1.5f,-2.0f,nr)); 6.1073 + colors.insert(CImg<unsigned char>::vector(r,g,b)); 6.1074 + } 6.1075 + remove_particle = true; 6.1076 + } else if (t<-1) { r*=0.95f; if (r<0.5f) remove_particle=true; } 6.1077 + if (remove_particle) { particles.remove(l); colors.remove(l); l--; } 6.1078 + } 6.1079 + if (disp.button&2) cimglist_for(particles,l) if (particles(l,4)>0) particles(l,4)=0.5f; 6.1080 + img.draw_text(5,5,"%u frames/s",white,black,0.5f,11,(unsigned int)disp.frames_per_second()); 6.1081 + disp.display(img).wait(25); 6.1082 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(640,480,false).toggle_fullscreen(false); 6.1083 + if (disp.is_resized) disp.resize(disp,false); 6.1084 + } 6.1085 + return 0; 6.1086 +} 6.1087 + 6.1088 +// Item : Rubber Logo 6.1089 +//-------------------- 6.1090 +void* item_rubber_logo() { 6.1091 + const unsigned char white[] = { 255,255,255 }; 6.1092 + CImg<unsigned char> background = CImg<unsigned char>(300,300).noise(100,2); 6.1093 + background(0,0) = background(299,0) = background(299,299) = background(0,299) = 0; 6.1094 + background.draw_plasma(0,0,299,299).blur(1.0f,14.0f,0.0f,0).resize(-100,-100,1,3); 6.1095 + CImgDisplay disp(CImg<unsigned char>(background). 6.1096 + draw_text(10,10,"Please wait, generating rubber object...",white),"[#22] - 3D Rubber Logo"); 6.1097 + 6.1098 + CImg<unsigned char> vol = CImg<unsigned char>().draw_text(30,30,"CImg",white,0,1,48).resize(-100,-100,15,1); 6.1099 + for (unsigned int k = 0; k<5; ++k) { vol.get_shared_plane(k).fill(0); vol.get_shared_plane(vol.dimz()-1-k).fill(0); } 6.1100 + vol.resize(vol.dimx()+30,vol.dimy()+30,-100,1,0).blur(2).resize(-50,-50); 6.1101 + CImgList<unsigned int> faces; 6.1102 + CImg<> points = vol.get_isovalue3d(faces,45,1,1,1,true); 6.1103 + CImgList<unsigned char> colors; 6.1104 + colors.insert(faces.size,CImg<unsigned char>::vector(100,100,255)); 6.1105 + cimglist_for(colors,l) { 6.1106 + const float x = (points(faces(l,0),0) + points(faces(l,1),0) + points(faces(l,2),0))/3; 6.1107 + if (x<27) colors[l] = CImg<unsigned char>::vector(255,100,100); 6.1108 + else { if (x<38) colors[l] = CImg<unsigned char>::vector(200,155,100); 6.1109 + else { if (x<53) colors[l] = CImg<unsigned char>::vector(100,255,155); 6.1110 + }}} 6.1111 + { cimg_forX(points,l) { points(l,0)-=vol.dimx()/2; points(l,1)-=vol.dimy()/2; points(l,2)-=vol.dimz()/2; }} 6.1112 + points*=5.5; 6.1113 + 6.1114 + CImgList<unsigned char> frames(100,background); 6.1115 + bool ok_visu = false; 6.1116 + unsigned int nb_frame = 0; 6.1117 + float alpha = 0, beta = 0, gamma = 0; 6.1118 + 6.1119 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.1120 + CImg<unsigned char>& frame = frames[nb_frame++]; 6.1121 + if (nb_frame>=frames.size) { ok_visu = true; nb_frame = 0; } 6.1122 + const CImg<> 6.1123 + rot = CImg<>::rotation_matrix(0,1,0.2f,alpha+=0.011f)* 6.1124 + CImg<>::rotation_matrix(1,0.4f,1,beta+=0.015f)* 6.1125 + (1+0.1f*std::cos((double)(gamma+=0.1f))); 6.1126 + (frame=background).draw_object3d(frame.dimx()/2.0f,frame.dimy()/2.0f,frame.dimz()/2.0f,rot*points,faces,colors,5, 6.1127 + false,500,0,0,-5000,0.1f,1.0f); 6.1128 + 6.1129 + if (ok_visu) { 6.1130 + CImg<unsigned char> visu(frame); 6.1131 + cimglist_for(frames,l) { 6.1132 + const unsigned int 6.1133 + y0 = l*visu.dimy()/frames.size, 6.1134 + y1 = (l+1)*visu.dimy()/frames.size-1; 6.1135 + cimg_forV(visu,k) visu.get_shared_lines(y0,y1,0,k) = frames[(nb_frame+l)%frames.size].get_shared_lines(y0,y1,0,k); 6.1136 + } 6.1137 + visu.get_resize(disp,1).draw_text(5,5,"%u frames/s",white,0,0.5f,11,(unsigned int)disp.frames_per_second()).display(disp.wait(20)); 6.1138 + } 6.1139 + 6.1140 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(300,300,false).toggle_fullscreen(false); 6.1141 + if (disp.is_resized) disp.resize(); 6.1142 + } 6.1143 + return 0; 6.1144 +} 6.1145 + 6.1146 +// Item : Image Waves 6.1147 +//-------------------- 6.1148 +void* item_image_waves() { 6.1149 + const CImg<unsigned char> img = CImg<unsigned char>(data_milla,211,242,1,3,false).get_resize(128,128,1,3); 6.1150 + const unsigned int w = img.dimx()+1, h = img.dimy()+1; 6.1151 + CImgList<> points0; 6.1152 + CImgList<unsigned int> faces0; 6.1153 + CImgList<unsigned char> colors0; 6.1154 + { for (unsigned int y = 0; y<h; ++y) for (unsigned int x=0; x<w; ++x) 6.1155 + points0.insert(CImg<>::vector(3*(x-w/2.0f),3*(y-w/2.0f),0)); } 6.1156 + cimg_forXY(img,x,y) { 6.1157 + faces0.insert(CImg<unsigned int>::vector(x+y*w,x+(y+1)*w,x+1+(y+1)*w,x+1+y*w)); 6.1158 + colors0.insert(CImg<unsigned char>::vector(img(x,y,0),img(x,y,1),img(x,y,2))); 6.1159 + } 6.1160 + CImgList<> opacities0(faces0.size,CImg<>::vector(1.0f)); 6.1161 + 6.1162 + CImg<unsigned char> 6.1163 + back = CImg<unsigned char>(400,300,1,3).sequence(0,130), 6.1164 + ball = CImg<unsigned char>(12,12,1,3,0).draw_circle(6,6,5,CImg<unsigned char>::vector(0,128,64)); 6.1165 + const CImg<> mball = CImg<>(12,12,1,1,0).draw_circle(6,6,5,CImg<>::vector(1.0f)); 6.1166 + ball.draw_circle(7,5,4,CImg<unsigned char>::vector(16,96,52)). 6.1167 + draw_circle(8,4,2,CImg<unsigned char>::vector(0,128,64)). 6.1168 + draw_circle(8,4,1,CImg<unsigned char>::vector(64,196,128)); 6.1169 + 6.1170 + CImg<> uc(img.dimx()/2,img.dimy()/2,1,1,0), up(uc), upp(uc); 6.1171 + CImgDisplay disp(back,"[#23] - Image Waves (Try mouse buttons!)"); 6.1172 + CImgList<int> particles; 6.1173 + 6.1174 + for (float alpha = 0.0f, count=10.0f; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; ) { 6.1175 + if ((disp.button&1 && disp.mouse_x>=0) || --count<0) { 6.1176 + particles.insert(CImg<int>::vector((int)(cimg::rand()*(img.dimx()-1)),(int)(cimg::rand()*(img.dimy()-1)),-200,0)); 6.1177 + count = (float)(cimg::rand()*15); 6.1178 + } 6.1179 + alpha = (disp.mouse_x>=0 && disp.button&2)?(float)(disp.mouse_x*2*cimg::valuePI/disp.dimx()):(alpha+0.04f); 6.1180 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(400,300,false).toggle_fullscreen(false); 6.1181 + 6.1182 + cimglist_for(particles,l) { // Handle particles 6.1183 + float& z = up(particles(l,0)>>1,particles(l,1)>>1); 6.1184 + if ((particles(l,2)+=(particles(l,3)++))>z-10) { z = 250.0f; particles.remove(l--); } 6.1185 + } 6.1186 + 6.1187 + CImg_3x3(U,float); Upp = Unp = Ucc = Upn = Unn = 0; // Apply wave effect 6.1188 + cimg_for3x3(up,x,y,0,0,U) uc(x,y) = (Unc+Upc+Ucn+Ucp)/2 - upp(x,y); 6.1189 + (uc-=(float)(uc.blur(0.7f).mean())).swap(upp).swap(up); 6.1190 + 6.1191 + CImgList<> points(points0); 6.1192 + CImgList<unsigned int> faces(faces0); 6.1193 + CImgList<unsigned char> colors(colors0); 6.1194 + CImgList<> opacities(opacities0); 6.1195 + cimglist_for(points,p) points(p,2) = cimg::min(30 + uc.linear_atXY((p%w)/2.0f,(p/w)/2.0f),70.0f); 6.1196 + { cimglist_for(particles,l) { 6.1197 + points.insert(CImg<>::vector(3*(particles(l,0)-w/2.0f),3*(particles(l,1)-h/2.0f),30.0f+particles(l,2))); 6.1198 + faces.insert(CImg<unsigned int>::vector(points.size-1)); 6.1199 + colors.insert(ball); 6.1200 + opacities.insert(mball); 6.1201 + }} 6.1202 + const CImg<> rot = CImg<>::rotation_matrix(1.0f,0,0,(float)(cimg::valuePI/3.0f))*CImg<>::rotation_matrix(0,0,1.0f,alpha); 6.1203 + (+back).draw_object3d(back.dimx()/2.0f,back.dimy()/2.0f,0,rot*points,faces,colors,opacities,4,false,500.0f,0,0,0,1,1). 6.1204 + display(disp.resize(false).wait(20)); 6.1205 + } 6.1206 + return 0; 6.1207 +} 6.1208 + 6.1209 +// Item : Breakout 6.1210 +//----------------- 6.1211 +void* item_breakout() { 6.1212 + 6.1213 + // Init graphics 6.1214 + CImg<unsigned char> 6.1215 + board(8,10,1,1,0), 6.1216 + background = CImg<unsigned char>(board.dimx()*32,board.dimy()*16+200,1,3,0).noise(20,1).draw_plasma().blur(1,8,0), 6.1217 + visu0(background/2.0), visu(visu0), brick(16,16,1,1,200), racket(64,8,1,3,0), ball(8,8,1,3,0); 6.1218 + const unsigned char white[] = { 255,255,255 }, green1[] = { 60,150,30 }, green2[] = { 130,255,130 }; 6.1219 + { cimg_for_borderXY(brick,x,y,1) brick(x,y) = x>y?255:128; } 6.1220 + { cimg_for_insideXY(brick,x,y,1) brick(x,y) = cimg::min(255,64+8*(x+y)); } 6.1221 + brick.resize(31,15,1,1,1).resize(32,16,1,1,0); 6.1222 + ball.draw_circle(4,4,2,white); ball-=ball.get_erode(3)/1.5; 6.1223 + racket.draw_circle(4,3,4,green1).draw_circle(3,2,2,green2); 6.1224 + { cimg_forY(racket,y) racket.draw_rectangle(4,y,racket.dimx()-7,y,CImg<unsigned char>::vector(y*4,255-y*32,255-y*25)); } 6.1225 + racket.draw_image(racket.dimx()/2,racket.get_crop(0,0,racket.dimx()/2-1,racket.dimy()-1).mirror('x')); 6.1226 + const int 6.1227 + w = visu.dimx(), h = visu.dimy(), w2 = w/2, h2 = h/2, 6.1228 + bw = ball.dimx(), bh = ball.dimy(), bw2 = bw/2, bh2 = bh/2, 6.1229 + rw = racket.dimx(), rh = racket.dimy(), rw2 = rw/2; 6.1230 + float xr = (float)(w-rw2), oxr = (float)xr, xb = 0, yb = 0, oxb = 0, oyb = 0, vxb = 0, vyb = 0; 6.1231 + 6.1232 + // Begin game loop 6.1233 + CImgDisplay disp(visu,"[#24] - Breakout"); 6.1234 + disp.move((CImgDisplay::screen_dimx()-w)/2,(CImgDisplay::screen_dimy()-h)/2); 6.1235 + for (unsigned int N = 0, N0 = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; ) { 6.1236 + if (N0) { 6.1237 + int X = (int)xr; 6.1238 + if (disp.mouse_x>=0) X = (int)(w2+((disp.mouse_x<0?w2:disp.mouse_x)-w2)*2); 6.1239 + else disp.set_mouse(xr>w2?w-81:80,h2); 6.1240 + if (X<rw2) { X = rw2; disp.set_mouse(80,h2); } 6.1241 + if (X>=w-rw2) { X = w-rw2-1; disp.set_mouse(w-81,h2); } 6.1242 + oxr = xr; xr = (float)X; oxb = xb; oyb = yb; xb+=vxb; yb+=vyb; 6.1243 + if ((xb>=w-bw2) || (xb<bw2)) { xb-=vxb; yb-=vyb; vxb=-vxb; } 6.1244 + if (yb<bh2) { yb = (float)bh2; vyb=-vyb; } 6.1245 + if (yb>=h-rh-8-bh2 && yb<h-8-bh2 && xr-rw2<=xb && xr+rw2>=xb) { 6.1246 + xb = oxb; yb = h-rh-8.0f-bh2; vyb=-vyb; vxb+=(xr-oxr)/4; 6.1247 + if (cimg::abs(vxb)>8) vxb*=8/cimg::abs(vxb); 6.1248 + } 6.1249 + if (yb<board.dimy()*16) { 6.1250 + const int X = (int)xb/32, Y = (int)yb/16; 6.1251 + if (board(X,Y)) { 6.1252 + board(X,Y) = 0; 6.1253 + ++N; 6.1254 + const unsigned int x0 = X*brick.dimx(), y0 = Y*brick.dimy(), x1 = (X+1)*brick.dimx()-1, y1 = (Y+1)*brick.dimy()-1; 6.1255 + visu0.draw_image(x0,y0,background.get_crop(x0,y0,x1,y1)); 6.1256 + if (oxb<(X<<5) || oxb>=((X+1)<<5)) vxb=-vxb; 6.1257 + else if (oyb<(Y<<4) || oyb>=((Y+1)<<4)) vyb=-vyb; 6.1258 + } 6.1259 + } 6.1260 + disp.set_title("[#24] - Breakout : %u/%u",N,N0); 6.1261 + } 6.1262 + if (yb>h || N==N0) { 6.1263 + disp.show_mouse(); 6.1264 + while (!disp.is_closed && !disp.key && !disp.button) { 6.1265 + ((visu=visu0)/=2).draw_text(50,visu.dimy()/2-10,N0?"Game Over !":"Get Ready ?",white,0,1,25). 6.1266 + display(disp); 6.1267 + disp.wait(); 6.1268 + if (disp.is_resized) disp.resize(disp); 6.1269 + } 6.1270 + board.fill(0); visu0 = background; 6.1271 + cimg_forXY(board,x,y) if (0.2f+cimg::crand()>=0) { 6.1272 + CImg<> cbrick = CImg<double>::vector(100+cimg::rand()*155,100+cimg::rand()*155,100+cimg::rand()*155). 6.1273 + unroll('v').resize(brick.dimx(),brick.dimy()); 6.1274 + cimg_forV(cbrick,k) (cbrick.get_shared_channel(k).mul(brick))/=255; 6.1275 + visu0.draw_image(x*32,y*16,cbrick); 6.1276 + board(x,y) = 1; 6.1277 + } 6.1278 + N0 = (int)board.sum(); N = 0; 6.1279 + oxb = xb = (float)w2; oyb = yb = board.dimy()*16.0f+bh; vxb = 2.0f; vyb = 3.0f; 6.1280 + disp.hide_mouse(); 6.1281 + } else disp.display((visu=visu0).draw_image((int)(xr-rw2),h-rh-8,racket).draw_image((int)(xb-bw2),(int)(yb-bh2),ball)); 6.1282 + if (disp.is_resized) disp.resize(disp); 6.1283 + disp.wait(20); 6.1284 + } 6.1285 + return 0; 6.1286 +} 6.1287 + 6.1288 +// Item : 3D Reflection 6.1289 +//---------------------- 6.1290 +void* item_3d_reflection() { 6.1291 + 6.1292 + // Init images and display 6.1293 + CImgDisplay disp(512,512,"[#25] - 3D Reflection",0); 6.1294 + CImg<unsigned char> back(400,400,1,3,0); 6.1295 + cimg_forV(back,k) { back(399,0,k) = back(0,0,k) = 50*((k+1)%2); back(399,399,k) = back(0,399,k) = 20*k; } 6.1296 + back.draw_plasma().blur(6,1,0).translate(200,0,0,0,2).blur(6,1,0); 6.1297 + CImg<unsigned char> light0 = back.get_resize(-50,-50,1,1), visu(back), reflet(back.dimx(),back.dimy(),1,1), light(light0); 6.1298 + back.get_shared_channel(0)/=3; back.get_shared_channel(2)/=2; 6.1299 + 6.1300 + // Create 3D objects 6.1301 + CImgList<unsigned int> back_faces, main_faces; 6.1302 + CImgList<float> back_pts0, main_pts; 6.1303 + CImgList<unsigned char> main_colors, back_colors, light_colors, light_colors2; 6.1304 + 6.1305 + main_pts = CImg<>::torus3d(main_faces,30,12,24,12).get_split('x'); 6.1306 + cimglist_for(main_faces,l) 6.1307 + if (l%2) main_colors.insert(CImg<unsigned char>::vector(255,120,16)); 6.1308 + else main_colors.insert(CImg<unsigned char>::vector(255,100,16)); 6.1309 + 6.1310 + const unsigned int res1 = 32, res2 = 32; 6.1311 + for (unsigned int v = 1; v<res2; ++v) for (unsigned int u = 0; u<res1; ++u) { 6.1312 + const float 6.1313 + alpha = (float)(u*2*cimg::valuePI/res1), beta = (float)(-cimg::valuePI/2 + v*cimg::valuePI/res2), 6.1314 + x = (float)(std::cos(beta)*std::cos(alpha)), 6.1315 + y = (float)(std::cos(beta)*std::sin(alpha)), 6.1316 + z = (float)(std::sin(beta)); 6.1317 + back_pts0.insert(CImg<>::vector(x,y,z)); 6.1318 + } 6.1319 + const unsigned int N = back_pts0.size; 6.1320 + back_pts0.insert(CImg<>::vector(0,0,-140)).insert(CImg<>::vector(0,0,140)); 6.1321 + CImg<float> back_pts = back_pts0.get_append('x'); 6.1322 + for (unsigned int vv = 0; vv<res2-2; ++vv) for (unsigned int uu = 0; uu<res1; ++uu) { 6.1323 + const int nv = (vv+1)%(res2-1), nu = (uu+1)%res1; 6.1324 + back_faces.insert(CImg<unsigned int>::vector(res1*vv+nu,res1*nv+uu,res1*vv+uu)); 6.1325 + back_faces.insert(CImg<unsigned int>::vector(res1*vv+nu,res1*nv+nu,res1*nv+uu)); 6.1326 + back_colors.insert(CImg<unsigned char>::vector(128,255,255)); 6.1327 + back_colors.insert(CImg<unsigned char>::vector(64,240,196)); 6.1328 + } 6.1329 + for (unsigned int uu = 0; uu<res1; ++uu) { 6.1330 + const int nu = (uu+1)%res1; 6.1331 + back_faces.insert(CImg<unsigned int>::vector(nu,uu,N)); 6.1332 + back_faces.insert(CImg<unsigned int>::vector(res1*(res2-2)+nu, N+1,res1*(res2-2)+uu)); 6.1333 + if (uu%2) back_colors.insert(2,CImg<unsigned char>::vector(128,255,255)); 6.1334 + else back_colors.insert(2,CImg<unsigned char>::vector(64,240,196)); 6.1335 + } 6.1336 + 6.1337 + light_colors.assign(back_faces.size,CImg<unsigned char>::vector(255)); 6.1338 + light_colors2.assign(light_colors).insert(light,light_colors.size,true); 6.1339 + 6.1340 + // Start 3D animation 6.1341 + for (float main_x = -1.5f*visu.dimx(), 6.1342 + back_alpha = 0, back_beta = 0, back_theta = -3.0f, 6.1343 + main_alpha = 0, main_beta = 0, main_theta = 0; 6.1344 + !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; 6.1345 + main_alpha+=0.041f, main_beta+=0.063f, main_theta+=0.02f, 6.1346 + back_alpha+=0.0031f, back_beta+=0.0043f, back_theta+=0.01f) { 6.1347 + const int 6.1348 + main_X = (int)(visu.dimx()/2 + main_x + 100*std::cos(2.1*main_theta)), 6.1349 + main_Y = (int)(visu.dimy()/2 + 120*std::sin(1.8*main_theta)); 6.1350 + CImgList<> rmain_pts = (CImg<>::rotation_matrix(-1,1,0,main_alpha)*CImg<>::rotation_matrix(1,0,1,main_beta))*main_pts; 6.1351 + const CImg<> rback_pts = (CImg<>::rotation_matrix(1,1,0,back_alpha)*CImg<>::rotation_matrix(0.5,0,1,back_beta))*back_pts; 6.1352 + (light=light0).draw_object3d(main_X/2.0f,main_Y/2.0f,0,rmain_pts,main_faces,light_colors,3,false,500,0,0,-5000,0.2f,0.1f); 6.1353 + reflet.fill(0).draw_object3d(2*visu.dimx()/3.0f,visu.dimy()/2.0f,0,rback_pts,back_faces,light_colors2,5,false,500,0,0,-5000,0.2f,0.1f); 6.1354 + rmain_pts*=2; 6.1355 + (visu=back).draw_object3d(2*visu.dimx()/3.0f,visu.dimy()/2.0f,0,rback_pts,back_faces,back_colors,3,false,500,0,0,-5000,0.2f,0.1f); 6.1356 + unsigned char *ptrs = reflet.ptr(), *ptrr = visu.ptr(0,0,0,0), *ptrg = visu.ptr(0,0,0,1), *ptrb = visu.ptr(0,0,0,2); 6.1357 + cimg_forXY(visu,x,y) { 6.1358 + const unsigned char v = *(ptrs++); 6.1359 + if (v) { *ptrr = (*ptrr+v)>>1; *ptrg = (3**ptrr+v)>>2; *ptrb = (*ptrb+v)>>1; } 6.1360 + ++ptrr; ++ptrg; ++ptrb; 6.1361 + } 6.1362 + visu.draw_object3d((float)main_X,(float)main_Y,0,rmain_pts,main_faces,main_colors,4, 6.1363 + false,500,0,0,-5000,0.1f,1.4f); 6.1364 + 6.1365 + if (disp.is_resized) { 6.1366 + const int s = cimg::min(disp.window_dimx(),disp.window_dimy()); 6.1367 + disp.resize(s,s,false); 6.1368 + } 6.1369 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.resize(512,512,false).toggle_fullscreen(false); 6.1370 + disp.display(visu).wait(20); 6.1371 + back.translate(-4,0,0,0,2); 6.1372 + light0.translate(2,0,0,0,2); 6.1373 + if (main_x<0) main_x +=2; 6.1374 + const float H = back_theta<0?0.0f:(float)(0.3f-0.3f*std::cos(back_theta)); 6.1375 + for (unsigned int p = 0, v = 1; v<res2; ++v) for (unsigned int u = 0; u<res1; ++u) { 6.1376 + const float 6.1377 + alpha = (float)(u*2*cimg::valuePI/res1), beta = (float)(-cimg::valuePI/2 + v*cimg::valuePI/res2), 6.1378 + x = back_pts0(p,0), y = back_pts0(p,1), z = back_pts0(p,2), 6.1379 + altitude = 140*(float)cimg::abs(1+H*std::sin(3*alpha)*std::cos(5*beta)); 6.1380 + back_pts(p,0) = altitude*x; back_pts(p,1) = altitude*y; back_pts(p,2) = altitude*z; 6.1381 + ++p; 6.1382 + } 6.1383 + } 6.1384 + return 0; 6.1385 +} 6.1386 + 6.1387 +// Item : Fish-Eye Magnification 6.1388 +//------------------------------ 6.1389 +void* item_fisheye_magnification() { 6.1390 + const unsigned char purple[] = { 255,0,255 }, white[] = { 255,255,255 }, black[] = { 0,0,0 }; 6.1391 + const CImg<unsigned char> img0 = CImg<unsigned char>(data_logo,555,103,1,3,true).get_resize(-144,-144,1,3,5); 6.1392 + CImgDisplay disp(img0,"[#26] - Fish-Eye Magnification"); 6.1393 + int rm = 80, xc = 0, yc = 0, rc = 0; 6.1394 + CImg<unsigned char> img, res; 6.1395 + for (float alpha = 0; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; alpha+=0.02f) { 6.1396 + if (!img) img = img0.get_resize(disp,3); 6.1397 + if (disp.mouse_x>=0) { xc = disp.mouse_x; yc = disp.mouse_y; rc = rm; } 6.1398 + else { 6.1399 + xc = (int)(img.dimx()*(1 + 0.9f*std::cos(1.2f*alpha))/2); 6.1400 + yc = (int)(img.dimy()*(1 + 0.8f*std::sin(3.4f*alpha))/2); 6.1401 + rc = (int)(90 + 60*std::sin(alpha)); 6.1402 + } 6.1403 + const int x0 = xc - rc, y0 = yc - rc, x1 = xc + rc, y1 = yc + rc; 6.1404 + res = img; 6.1405 + cimg_for_inXY(res,x0,y0,x1,y1,x,y) { 6.1406 + const float X = (float)x - xc, Y = (float)y - yc, r2 = X*X + Y*Y, rrc = (float)std::sqrt(r2)/rc; 6.1407 + if (rrc<1) { 6.1408 + const int xi = (int)(xc + rrc*X), yi = (int)(yc + rrc*Y); 6.1409 + res(x,y,0) = img(xi,yi,0); res(x,y,1) = img(xi,yi,1); res(x,y,2) = img(xi,yi,2); 6.1410 + } 6.1411 + } 6.1412 + const int xf = xc+3*rc/8, yf = yc-3*rc/8; 6.1413 + res.draw_circle(xc,yc,rc,purple,0.2f).draw_circle(xf,yf,rc/3,white,0.2f).draw_circle(xf,yf,rc/5,white,0.2f). 6.1414 + draw_circle(xf,yf,rc/10,white,0.2f).draw_circle(xc,yc,rc,black,0.7f,~0U); 6.1415 + disp.display(res).wait(20); 6.1416 + rm+=(disp.button&1?8:(disp.button&2?-8:0)); 6.1417 + rm = rm<30?30:(rm>200?200:rm); 6.1418 + if (disp.is_resized) { disp.resize(false); img.assign(); } 6.1419 + } 6.1420 + return 0; 6.1421 +} 6.1422 + 6.1423 +// Item : Word puzzle 6.1424 +//------------------------------ 6.1425 +void* item_word_puzzle() { 6.1426 + 6.1427 + // Create B&W and color letters 6.1428 + CImg<unsigned char> model(60,60,1,3,0), color(3), background, canvas, elaps; 6.1429 + CImgList<unsigned char> letters('Z'-'A'+1), cletters(letters); 6.1430 + const unsigned char white[] = { 255,255,255 }, gray[] = { 128,128,128 }, black[] = { 0,0,0 }; 6.1431 + char tmptxt[] = { 'A',0 }; 6.1432 + model.fill(255).draw_rectangle(5,5,54,54,gray).blur(3,0).threshold(140).normalize(0,255); 6.1433 + cimglist_for(letters,l) 6.1434 + (letters[l].draw_text(5,2,&(tmptxt[0]='A'+l),white,0,1,64).resize(60,60,1,1,0,0,true). 6.1435 + resize(-100,-100,1,3)|=model).blur(0.5); 6.1436 + { cimglist_for(cletters,l) { 6.1437 + CImg<int> tmp = letters[l]; 6.1438 + color.rand(100,255); 6.1439 + cimg_forV(tmp,k) (tmp.get_shared_channel(k)*=color[k])/=255; 6.1440 + cletters[l] = tmp; 6.1441 + }} 6.1442 + 6.1443 + CImgDisplay disp(500,400,"[#27] - Word Puzzle",0); 6.1444 + while (!disp.is_closed && disp.key!=cimg::keyQ && disp.key!=cimg::keyESC) { 6.1445 + 6.1446 + // Create background, word data and display. 6.1447 + background.assign(40,40,1,2,0).noise(30,2).distance(255).normalize(0,255).resize(500,400,1,3,3); 6.1448 + CImg<int> current(14,6,1,1,0), solution(14,4,1,1,0); 6.1449 + current.get_shared_line(0).fill('T','H','E','C','I','M','G','L','I','B','R','A','R','Y'); 6.1450 + current.get_shared_line(1).rand(-30,background.dimx()-30); 6.1451 + current.get_shared_line(2).rand(-30,background.dimy()-30); 6.1452 + solution.get_shared_line(0) = current.get_shared_line(0); 6.1453 + solution.get_shared_line(1).fill(20,80,140,100,180,260,340,40,100,160,220,280,340,400); 6.1454 + solution.get_shared_line(2).fill(20,20,20,120,150,180,210,310,310,310,310,310,310,310); 6.1455 + { cimg_forX(solution,l) background.draw_image(solution(l,1),solution(l,2),letters(solution(l)-'A'),0.3f); } 6.1456 + const int last = current.dimx()-1; 6.1457 + 6.1458 + // Start user interaction 6.1459 + int timer = 0, completed = 0; 6.1460 + for (bool selected = false, refresh_canvas = true, stopflag = false; 6.1461 + !stopflag && !disp.is_closed && disp.key!=cimg::keyQ && disp.key!=cimg::keyESC; disp.resize(disp).wait(20)) { 6.1462 + if (refresh_canvas) { 6.1463 + canvas = background; 6.1464 + cimg_forX(current,l) if (!current(l,5)) { 6.1465 + int &x = current(l,1), &y = current(l,2); 6.1466 + if (x<-30) x = -30; else if (x>canvas.dimx()-30) x = canvas.dimx()-30; 6.1467 + if (y<-30) y = -30; else if (y>canvas.dimy()-30) y = canvas.dimy()-30; 6.1468 + canvas.draw_rectangle(x+8,y+8,x+67,y+67,black,0.3f).draw_image(x,y,cletters(current(l)-'A')); 6.1469 + } 6.1470 + refresh_canvas = false; 6.1471 + } 6.1472 + (+canvas).draw_text(360,3,"Elapsed Time : %d",white,0,1,16,timer++).display(disp); 6.1473 + 6.1474 + if (disp.button&1) { 6.1475 + const int mx = disp.mouse_x, my = disp.mouse_y; 6.1476 + if (mx>=0 && my>=0) { 6.1477 + if (!selected) { 6.1478 + int ind = -1; 6.1479 + cimg_forX(current,l) if (!current(l,5)) { 6.1480 + const int x = current(l,1), y = current(l,2), dx = mx - x, dy = my - y; 6.1481 + if (dx>=0 && dx<60 && dy>=0 && dy<60) { selected = true; ind = l; current(l,3) = dx; current(l,4) = dy; } 6.1482 + } 6.1483 + if (ind>=0 && ind<last) { 6.1484 + const CImg<int> vec = current.get_column(ind); 6.1485 + current.draw_image(ind,current.get_crop(ind+1,last)).draw_image(last,vec); 6.1486 + } 6.1487 + } else { current(last,1) = mx - current(last,3); current(last,2) = my - current(last,4); refresh_canvas = true; } 6.1488 + } 6.1489 + } else { 6.1490 + bool win = true; 6.1491 + cimg_forX(solution,j) if (!solution(j,3)) { 6.1492 + win = false; 6.1493 + const int x = solution(j,1), y = solution(j,2); 6.1494 + cimg_forX(current,i) if (!current(i,5) && solution(j)==current(i)) { 6.1495 + const int xc = current(i,1), yc = current(i,2), dx = cimg::abs(x-xc), dy = cimg::abs(y-yc); 6.1496 + if (dx<=12 && dy<=12) { 6.1497 + cimg_forV(background,k) cimg_forY(letters[0],y) 6.1498 + background.get_shared_line(solution(j,2)+y,0,k). 6.1499 + draw_image(solution(j,1),0, 6.1500 + (CImg<float>(cletters(solution(j)-'A').get_shared_line(y,0,k))*=2.0*std::cos((y-30.0f)/18)). 6.1501 + cut(0,255),0.8f); 6.1502 + current(i,5) = solution(j,3) = 1; refresh_canvas = true; 6.1503 + } 6.1504 + } 6.1505 + } 6.1506 + selected = false; 6.1507 + if (win) { stopflag = true; completed = 1; } 6.1508 + } 6.1509 + } 6.1510 + 6.1511 + // Display final score 6.1512 + const char 6.1513 + *const mention0 = "Need more training !", *const mention1 = "Still amateur, hu ?", 6.1514 + *const mention2 = "Not so bad !", *const mention3 = " Good !", *const mention4 = "Very good !", 6.1515 + *const mention5 = " Expert !", 6.1516 + *mention = completed?(timer<700?mention5:timer<800?mention4:timer<900?mention3:timer<1000?mention2:timer<1200?mention1:mention0):mention0; 6.1517 + canvas.assign().draw_text(0,0,"Final time : %d\n\n%s",white,0,1,32,timer,mention); 6.1518 + ((background/=2)&CImg<unsigned char>(2,2).fill(0,255,255,0).resize(background,0,2)). 6.1519 + draw_image((background.dimx()-canvas.dimx())/2,(background.dimy()-canvas.dimy())/2, 6.1520 + canvas,canvas.get_dilate(3).dilate(3).dilate(3),1,255).display(disp.flush()); 6.1521 + while (!disp.is_closed && !disp.key && !disp.button) disp.resize(disp).wait(); 6.1522 + } 6.1523 + return 0; 6.1524 +} 6.1525 + 6.1526 +// Run a selected effect 6.1527 +//----------------------- 6.1528 +void start_item(const unsigned int demo_number) { 6.1529 + switch (demo_number) { 6.1530 + case 1: item_blurring_gradient(); break; 6.1531 + case 2: item_rotozoom(); break; 6.1532 + case 3: item_anisotropic_smoothing(); break; 6.1533 + case 4: item_fractal_animation(); break; 6.1534 + case 5: item_gamma_correction(); break; 6.1535 + case 6: item_filled_triangles(); break; 6.1536 + case 7: item_mandelbrot_explorer(); break; 6.1537 + case 8: item_mini_paint(); break; 6.1538 + case 9: item_soccer_bobs(); break; 6.1539 + case 10: item_bump(); break; 6.1540 + case 11: item_bouncing_bubble(); break; 6.1541 + case 12: item_virtual_landscape(); break; 6.1542 + case 13: item_plasma(); break; 6.1543 + case 14: item_oriented_convolutions(); break; 6.1544 + case 15: item_shade_bobs(); break; 6.1545 + case 16: item_fourier_filtering(); break; 6.1546 + case 17: item_image_zoomer(); break; 6.1547 + case 18: item_blobs_editor(); break; 6.1548 + case 19: item_double_torus(); break; 6.1549 + case 20: item_3d_metaballs(); break; 6.1550 + case 21: item_fireworks(); break; 6.1551 + case 22: item_rubber_logo(); break; 6.1552 + case 23: item_image_waves(); break; 6.1553 + case 24: item_breakout(); break; 6.1554 + case 25: item_3d_reflection(); break; 6.1555 + case 26: item_fisheye_magnification(); break; 6.1556 + case 27: item_word_puzzle(); break; 6.1557 + default: break; 6.1558 + } 6.1559 +} 6.1560 + 6.1561 +/*--------------------------- 6.1562 + 6.1563 + Main procedure 6.1564 + 6.1565 + --------------------------*/ 6.1566 +int main(int argc, char **argv) { 6.1567 + 6.1568 + // Display info about the CImg Library configuration 6.1569 + //-------------------------------------------------- 6.1570 + unsigned int demo_number = cimg_option("-run",0,0); 6.1571 + if (demo_number) start_item(demo_number); 6.1572 + else { 6.1573 + cimg::info(); 6.1574 + 6.1575 + // Demo selection menu 6.1576 + //--------------------- 6.1577 + const unsigned char 6.1578 + white[] = { 255,255,255 }, black[] = { 0,0,0 }, red[] = { 120,50,80 }, 6.1579 + yellow[] = { 200,155,0 }, green[] = { 30,200,70 }, purple[] = { 175,32,186 }, 6.1580 + blue[] = { 55,140,185 }, grey[] = { 127,127,127 }; 6.1581 + float 6.1582 + rx = 0, ry = 0, t = 0, gamma = 0, vgamma = 0, T = 0.9f, 6.1583 + nrx = (float)(2*cimg::crand()), 6.1584 + nry = (float)(2*cimg::crand()); 6.1585 + int y0 = 2*13; 6.1586 + CImg<unsigned char> back(1,2,1,3,10), fore, text, img; 6.1587 + back.fillV(0,1,0,10,10,235).resize(320,420,1,3,3).get_shared_channel(2).noise(10,1).draw_plasma(); 6.1588 + back.draw_rectangle(0,y0-7,back.dimx()-1,y0+20,red); 6.1589 + fore.assign(back.dimx(),50,1,1,0).draw_text(20,y0-5,"** CImg %u.%u.%u Samples **",grey,0,1,22, 6.1590 + cimg_version/100,(cimg_version/10)%10,cimg_version%10); 6.1591 + (fore+=fore.get_dilate(3).dilate(3)).resize(-100,-100,1,3); 6.1592 + cimg_forXY(fore,x,y) 6.1593 + if (fore(x,y)==127) fore(x,y,0) = fore(x,y,1) = fore(x,y,2) = 1; 6.1594 + else if (fore(x,y)) { 6.1595 + const float val = cimg::min(255.0f,7.0f*(y-3)); 6.1596 + fore(x,y,0) = (unsigned char)(val/1.5f); 6.1597 + fore(x,y,1) = (unsigned char)val; 6.1598 + fore(x,y,2) = (unsigned char)(val/1.1f); 6.1599 + } 6.1600 + text.draw_text(1,1, 6.1601 + "1- Blurring Gradient\n" 6.1602 + "2- Rotozoom\n" 6.1603 + "3- Anisotropic Smoothing\n" 6.1604 + "4- Fractal Animation\n" 6.1605 + "5- Gamma Correction\n" 6.1606 + "6- Filled Triangles\n" 6.1607 + "7- Mandelbrot explorer\n" 6.1608 + "8- Mini-Paint\n" 6.1609 + "9- Soccer Bobs\n" 6.1610 + "10- Bump Effect\n" 6.1611 + "11- Bouncing Bubble\n" 6.1612 + "12- Virtual Landscape\n" 6.1613 + "13- Plasma & Sinus Scroll\n" 6.1614 + "14- Oriented Convolutions\n" 6.1615 + "15- Shade Bobs\n" 6.1616 + "16- Fourier Filtering\n" 6.1617 + "17- Image Zoomer\n" 6.1618 + "18- Blobs Editor\n" 6.1619 + "19- Double Torus\n" 6.1620 + "20- 3D Metaballs\n" 6.1621 + "21- Fireworks\n" 6.1622 + "22- Rubber Logo\n" 6.1623 + "23- Image Waves\n" 6.1624 + "24- Breakout\n" 6.1625 + "25- 3D Reflection\n" 6.1626 + "26- Fish-Eye Magnification\n" 6.1627 + "27- Word Puzzle\n", 6.1628 + white,0,1,13); 6.1629 + fore.resize(back,0).draw_image(20,y0+2*13,text|=text.get_dilate(3)>>4); 6.1630 + 6.1631 + CImgDisplay disp(back,"CImg Library Samples",0,false,true); 6.1632 + disp.move((disp.screen_dimx()-disp.window_dimx())/2,(disp.screen_dimy()-disp.window_dimy())/2); 6.1633 + img = back; back*=0.15f; 6.1634 + for (y0+=2*13; !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC; demo_number = 0) { 6.1635 + while (!demo_number && !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 6.1636 + img*=0.85f; img+=back; 6.1637 + for (int i = 0; i<60; ++i) { 6.1638 + const float 6.1639 + mx = (float)(img.dimx()/2+(img.dimx()/2-30)*((1-gamma)*std::cos(3*t+rx*i*18.0f*cimg::valuePI/180) + 6.1640 + gamma*std::cos(3*t+nrx*i*18.0f*cimg::valuePI/180))), 6.1641 + my = (float)(img.dimy()/2+(img.dimy()/2-30)*((1-gamma)*std::sin(4*t+ry*i*18.0f*cimg::valuePI/180) + 6.1642 + gamma*std::sin(4*t+nry*i*18.0f*cimg::valuePI/180))), 6.1643 + mz = (float)(1.3f + 1.2f*((1-gamma)*std::sin(2*t+(rx+ry)*i*20*cimg::valuePI/180) + 6.1644 + gamma*std::sin(2*t+(nrx+nry)*i*20*cimg::valuePI/180))); 6.1645 + const int j = i%5; 6.1646 + img.draw_circle((int)mx,(int)my,(int)(10*mz),j!=0?(j!=1?(j!=2?(j!=3?green:red):yellow):purple):blue,0.2f). 6.1647 + draw_circle((int)(mx+4*mz),(int)(my-4),(int)(3*mz),white,0.1f). 6.1648 + draw_circle((int)mx,(int)my,(int)(10*mz),black,0.2f,~0U); 6.1649 + } 6.1650 + const unsigned char *ptrs = fore.end(); 6.1651 + cimg_for(img,ptrd,unsigned char) { const unsigned char val = *(--ptrs); if (val) *ptrd = val; } 6.1652 + int y = disp.mouse_y; 6.1653 + if (y>=y0 && y<y0+27*13) { 6.1654 + y = (y/13)*13+7; 6.1655 + for (int yy = y-7; yy<=y+6; ++yy) img.draw_rectangle(0,yy,0,1,img.dimx()-1,yy,0,1,(unsigned char)(130-15*cimg::abs(yy-y))); 6.1656 + img.draw_triangle(2,y-4,2,y+4,8,y,yellow).draw_triangle(img.dimx()-2,y-4,img.dimx()-2,y+4,img.dimx()-8,y,yellow); 6.1657 + } 6.1658 + gamma+=vgamma; if (gamma>1) { gamma = vgamma = 0; rx = nrx; ry = nry; nrx=(float)(2*cimg::crand()); nry=(float)(2*cimg::crand()); } 6.1659 + t+=0.006f; T+=0.005f; if (T>1) { T-=(float)(1+cimg::crand()); vgamma = 0.03f; } 6.1660 + if (disp.button) { disp.button = 0; demo_number = 1+(disp.mouse_y-y0)/13; } 6.1661 + disp.resize(disp,false).display(img).wait(25); 6.1662 + } 6.1663 + start_item(demo_number); 6.1664 + } 6.1665 + } 6.1666 + 6.1667 + // Exit demo 6.1668 + //----------- 6.1669 + std::exit(0); 6.1670 + return 0; 6.1671 +}
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 7.2 +++ b/PTdecode/CImg-1.3.0/examples/Makefile Mon Aug 03 14:09:20 2009 +0100 7.3 @@ -0,0 +1,594 @@ 7.4 +# 7.5 +# File : Makefile 7.6 +# ( Makefile for GNU 'make' utility ) 7.7 +# 7.8 +# Description : Makefile for compiling CImg-based code on Unix. 7.9 +# This file is a part of the CImg Library project. 7.10 +# ( http://cimg.sourceforge.net ) 7.11 +# 7.12 +# Copyright : David Tschumperle 7.13 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 7.14 +# 7.15 +# License : CeCILL v2.0 7.16 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 7.17 +# 7.18 +# This software is governed by the CeCILL license under French law and 7.19 +# abiding by the rules of distribution of free software. You can use, 7.20 +# modify and/ or redistribute the software under the terms of the CeCILL 7.21 +# license as circulated by CEA, CNRS and INRIA at the following URL 7.22 +# "http://www.cecill.info". 7.23 +# 7.24 +# As a counterpart to the access to the source code and rights to copy, 7.25 +# modify and redistribute granted by the license, users are provided only 7.26 +# with a limited warranty and the software's author, the holder of the 7.27 +# economic rights, and the successive licensors have only limited 7.28 +# liability. 7.29 +# 7.30 +# In this respect, the user's attention is drawn to the risks associated 7.31 +# with loading, using, modifying and/or developing or reproducing the 7.32 +# software by the user in light of its specific status of free software, 7.33 +# that may mean that it is complicated to manipulate, and that also 7.34 +# therefore means that it is reserved for developers and experienced 7.35 +# professionals having in-depth computer knowledge. Users are therefore 7.36 +# encouraged to load and test the software's suitability as regards their 7.37 +# requirements in conditions enabling the security of their systems and/or 7.38 +# data to be ensured and, more generally, to use and operate it in the 7.39 +# same conditions as regards security. 7.40 +# 7.41 +# The fact that you are presently reading this means that you have had 7.42 +# knowledge of the CeCILL license and that you accept its terms. 7.43 +# 7.44 + 7.45 +#------------------------------------------------------- 7.46 +# Define the list of files to be compiled 7.47 +# (name of the source files without the .cpp extension) 7.48 +#------------------------------------------------------- 7.49 +CIMG_FILES = CImg_demo \ 7.50 + captcha \ 7.51 + curve_editor \ 7.52 + dtmri_view \ 7.53 + edge_explorer \ 7.54 + fade_images \ 7.55 + generate_loop_macros \ 7.56 + greycstoration \ 7.57 + hough_transform \ 7.58 + image_registration \ 7.59 + image2ascii \ 7.60 + image_surface \ 7.61 + jawbreaker \ 7.62 + mcf_levelsets \ 7.63 + mcf_levelsets3d \ 7.64 + odykill \ 7.65 + pde_heatflow2d \ 7.66 + pde_TschumperleDeriche2d \ 7.67 + radon_transform \ 7.68 + scene3d \ 7.69 + tetris \ 7.70 + tron \ 7.71 + tutorial \ 7.72 + wavelet_atrous \ 7.73 + use_draw_gradient \ 7.74 + use_greycstoration \ 7.75 + use_nlmeans \ 7.76 + use_skeleton \ 7.77 + use_RGBclass \ 7.78 + gmic 7.79 + 7.80 +#--------------------------------- 7.81 +# Set correct variables and paths 7.82 +#--------------------------------- 7.83 +CIMG_VERSION = 1.30 7.84 +X11PATH = /usr/X11R6 7.85 +CC = g++ 7.86 +CCVER = `$(CC) -v 2>&1 | tail -n 1` 7.87 +EXEPFX = 7.88 + 7.89 +ifeq ($(CC),icc) 7.90 +CFLAGS = -I.. -ansi 7.91 +LDFLAGS = 7.92 +else 7.93 +CFLAGS = -I.. -Wall -W -ansi -pedantic 7.94 +LDFLAGS = -lm 7.95 +endif 7.96 + 7.97 +#-------------------------------------------------- 7.98 +# Set compilation flags allowing to customize CImg 7.99 +#-------------------------------------------------- 7.100 + 7.101 +# Flags to enable code debugging. 7.102 +CIMG_DEBUG_CFLAGS = -Dcimg_debug=3 -g 7.103 + 7.104 +# Flags to enable color output messages. 7.105 +# (requires a VT100 compatible terminal) 7.106 +CIMG_VT100_CFLAGS = -Dcimg_use_vt100 7.107 + 7.108 +# Flags to enable code optimization by the compiler. 7.109 +ifeq ($(CC),icc) 7.110 +CIMG_OPT_CFLAGS = -O3 -ipo -no-prec-div 7.111 +else 7.112 +CIMG_OPT_CFLAGS = -O3 -ffast-math -fno-tree-pre 7.113 +endif 7.114 + 7.115 +# Flags to enable OpenMP support. 7.116 +ifeq ($(CC),icc) 7.117 +CIMG_OPENMP_CFLAGS = -Dcimg_use_openmp -openmp -i-static 7.118 +else 7.119 +CIMG_OPENMP_CFLAGS = -Dcimg_use_openmp -fopenmp 7.120 +endif 7.121 + 7.122 +# Flags used to disable display capablities of CImg 7.123 +CIMG_NODISPLAY_CFLAGS = -Dcimg_display=0 7.124 + 7.125 +# Flags to enable the use of the X11 library. 7.126 +# (X11 is used by CImg to handle display windows) 7.127 +# !!! For 64bits systems : replace -L$(X11PATH)/lib by -L$(X11PATH)/lib64 !!! 7.128 +CIMG_X11_CFLAGS = -I$(X11PATH)/include 7.129 +CIMG_X11_LDFLAGS = -L$(X11PATH)/lib -lpthread -lX11 7.130 + 7.131 +# Flags to enable GDI32 display (Windows native). 7.132 +CIMG_GDI32_CFLAGS = -mwindows 7.133 +CIMG_GDI32_LDFLAGS = -lgdi32 7.134 + 7.135 +# Flags to enable Carbon-based display (MacOSX native). 7.136 +CIMG_CARBON_CFLAGS = -Dcimg_display=3 -framework Carbon 7.137 + 7.138 +# Flags to enable fast image display, using the XSHM library (when using X11). 7.139 +CIMG_XSHM_CFLAGS = -Dcimg_use_xshm 7.140 +CIMG_XSHM_LDFLAGS = -lXext 7.141 + 7.142 +# Flags to enable screen mode switching, using the XRandr library (when using X11). 7.143 +# ( http://www.x.org/wiki/Projects/XRandR ) 7.144 +CIMG_XRANDR_CFLAGS = -Dcimg_use_xrandr 7.145 +CIMG_XRANDR_LDFLAGS = -lXrandr 7.146 + 7.147 +# Flags to enable native support for PNG image files, using the PNG library. 7.148 +# ( http://www.libpng.org/ ) 7.149 +CIMG_PNG_CFLAGS = -Dcimg_use_png 7.150 +CIMG_PNG_LDFLAGS = -lpng -lz 7.151 + 7.152 +# Flags to enable native support for JPEG image files, using the JPEG library. 7.153 +# ( http://www.ijg.org/ ) 7.154 +CIMG_JPEG_CFLAGS = -Dcimg_use_jpeg 7.155 +CIMG_JPEG_LDFLAGS = -ljpeg 7.156 + 7.157 +# Flags to enable native support for TIFF image files, using the TIFF library. 7.158 +# ( http://www.libtiff.org/ ) 7.159 +CIMG_TIFF_CFLAGS = -Dcimg_use_tiff 7.160 +CIMG_TIFF_LDFLAGS = -ltiff 7.161 + 7.162 +# Flags to enable native support for various video files, using the FFMPEG library. 7.163 +# ( http://www.ffmpeg.org/ ) 7.164 +CIMG_FFMPEG_CFLAGS = -Dcimg_use_ffmpeg -I/usr/include/ffmpeg 7.165 +CIMG_FFMPEG_LDFLAGS = -lavcodec -lavformat 7.166 + 7.167 +# Flags to enable native support for compressed .cimgz files, using the Zlib library. 7.168 +# ( http://www.zlib.net/ ) 7.169 +CIMG_ZLIB_CFLAGS = -Dcimg_use_zlib 7.170 +CIMG_ZLIB_LDFLAGS = -lz 7.171 + 7.172 +# Flags to enable native support of most classical image file formats, using the Magick++ library. 7.173 +# ( http://www.imagemagick.org/Magick++/ ) 7.174 +CIMG_MAGICK_CFLAGS = -Dcimg_use_magick `Magick++-config --cppflags` `Magick++-config --cxxflags` 7.175 +CIMG_MAGICK_LDFLAGS = `Magick++-config --ldflags` `Magick++-config --libs` 7.176 + 7.177 +# Flags to enable faster Discrete Fourier Transform computation, using the FFTW3 library 7.178 +# ( http://www.fftw.org/ ) 7.179 +CIMG_FFTW3_CFLAGS = -Dcimg_use_fftw3 7.180 +ifeq ($(MSYSTEM),MINGW32) 7.181 +CIMG_FFTW3_LDFLAGS = -lfftw3-3 7.182 +else 7.183 +CIMG_FFTW3_LDFLAGS = -lfftw3 7.184 +endif 7.185 + 7.186 +# Flags to enable the use of LAPACK routines for matrix computation 7.187 +# ( http://www.netlib.org/lapack/ ) 7.188 +CIMG_LAPACK_CFLAGS = -Dcimg_use_lapack 7.189 +CIMG_LAPACK_LDFLAGS = -lblas -lg2c -llapack 7.190 + 7.191 +# Flags to enable the use of the Board library 7.192 +# ( http://libboard.sourceforge.net/ ) 7.193 +CIMG_BOARD_CFLAGS = -Dcimg_use_board -I/usr/include/board 7.194 +CIMG_BOARD_LDFLAGS = -lboard 7.195 + 7.196 +# Flags to compile on Sun Solaris 7.197 +CIMG_SOLARIS_LDFLAGS = -R$(X11PATH)/lib -lrt -lnsl -lsocket 7.198 + 7.199 +# Flags to compile GIMP plug-ins. 7.200 +ifeq ($(MSYSTEM),MINGW32) 7.201 +CIMG_GIMP_CFLAGS = -mwindows 7.202 +endif 7.203 + 7.204 +#------------------------- 7.205 +# Define Makefile entries 7.206 +#------------------------- 7.207 +.cpp: 7.208 + @echo 7.209 + @echo "** Compiling '$* ($(CIMG_VERSION))' with '`$(CC) -v 2>&1 | tail -n 1`'" 7.210 + @echo 7.211 + $(CC) -o $(EXEPFX)$* $< $(CFLAGS) $(LDFLAGS) $(CONF_CFLAGS) $(CONF_LDFLAGS) 7.212 +ifeq ($(MACOSX_APP),true) 7.213 + mkdir -p $(EXEPFX)${*}.app/Contents/MacOS 7.214 + mv $(EXEPFX)${*} $(EXEPFX)${*}.app/Contents/MacOS 7.215 +endif 7.216 +ifeq ($(STRIP_EXE),true) 7.217 +ifeq ($(MSYSTEM),MINGW32) 7.218 + strip $(EXEPFX)$*.exe 7.219 +else 7.220 + strip $(EXEPFX)$* 7.221 +endif 7.222 +endif 7.223 +menu: 7.224 + @echo 7.225 + @echo "CImg Library $(CIMG_VERSION) : Examples" 7.226 + @echo "-----------------------------" 7.227 + @echo " > linux : Linux/BSD/MacOSX target, X11 display, optimizations disabled." 7.228 + @echo " > dlinux : Linux/BSD/MacOSX target, X11 display, debug mode." 7.229 + @echo " > olinux : Linux/BSD/MacOSX target, X11 display, optimizations enabled." 7.230 + @echo " > mlinux : Linus/BSD/MacOSX target, no display, minimal features, optimizations enabled." 7.231 + @echo " > Mlinux : Linux/BSD/MacOSX target, X11 display, maximal features, optimizations enabled." 7.232 + @echo 7.233 + @echo " > solaris : Sun Solaris target, X11 display, optimizations disabled." 7.234 + @echo " > dsolaris : Sun Solaris target, X11 display, debug mode." 7.235 + @echo " > osolaris : Sun Solaris target, X11 display, optimizations enabled." 7.236 + @echo " > msolaris : Sun Solaris target, no display, minimal features, optimizations enabled." 7.237 + @echo " > Msolaris : Sun Solaris target, X11 display, maximal features, optimizations enabled." 7.238 + @echo 7.239 + @echo " > macosx : MacOSX target, Carbon display, optimizations disabled." 7.240 + @echo " > dmacosx : MacOSX target, Carbon display, debug mode." 7.241 + @echo " > omacosx : MacOSX target, Carbon display, optimizations enabled." 7.242 + @echo " > mmacosx : MacOSX target, no display, minimal features, optimizations enabled." 7.243 + @echo " > Mmacosx : MacOSX target, Carbon display, maximal features, optimizations enabled." 7.244 + @echo 7.245 + @echo " > windows : Windows target, GDI32 display, optimizations disabled." 7.246 + @echo " > dwindows : Windows target, GDI32 display, debug mode." 7.247 + @echo " > owindows : Windows target, GDI32 display, optimizations enabled." 7.248 + @echo " > mwindows : Windows target, no display, minimal features, optimizations enabled." 7.249 + @echo " > Mwindows : Windows target, GDI32 display, maximal features, optimizations enabled." 7.250 + @echo 7.251 + @echo " > clean : Clean generated files." 7.252 + @echo 7.253 + @echo "Choose your option :" 7.254 + @read CHOICE; echo; make $$CHOICE; echo; echo "> Next time, you can bypass the menu by typing directly 'make $$CHOICE'"; echo; 7.255 + 7.256 +all: $(CIMG_FILES) 7.257 + 7.258 +clean: 7.259 + rm -rf *.app *.exe *.o *~ \#* CMakeFiles cmake_install.cmake CMakeCache.txt use_jpeg_buffer greycstoration4gimp gmic4gimp $(CIMG_FILES) 7.260 +ifneq ($(EXEPFX),) 7.261 + rm -f $(EXEPFX)* 7.262 +endif 7.263 + 7.264 +# Specific target for 'check_all_functions'. 7.265 +check: check_all_functions.cpp 7.266 + @echo 7.267 + @echo "** Compiling 'check_all_functions ($(CIMG_VERSION)) ' with '$(CCVER)'" 7.268 + @echo 7.269 + $(CC) -c check_all_functions.cpp $(CFLAGS) 7.270 + 7.271 +# Specific target for the 'greycstoration4gimp' plug-in for GIMP. 7.272 +greycstoration4gimp: greycstoration4gimp.cpp 7.273 + @echo 7.274 + @echo "** Compiling 'greycstoration4gimp ($(CIMG_VERSION))' with '$(CCVER)'" 7.275 + @echo 7.276 + $(CC) -I.. -I./plugins -o $(EXEPFX)greycstoration4gimp greycstoration4gimp.cpp `gimptool-2.0 --cflags` `gimptool-2.0 --libs` -lpthread $(CIMG_OPT_CFLAGS) $(CIMG_GIMP_CFLAGS) 7.277 + 7.278 +# Specific targets for the 'gmic4gimp' plug-in for GIMP. 7.279 +gmic4gimp_def: gmic4gimp_def.raw 7.280 + \gmic -v- -t char gmic4gimp_def.raw,`du -Db gmic4gimp_def.raw | awk '{print $$1}'` -o -.h | sed 's/unnamed/gmic4gimp_def/' | sed 's/char/const char/' > gmic4gimp_def.h 7.281 + \gmic -v- -t uchar ../html/img/logoGMIC.ppm -permute vxyz -o -.h | sed 's/unnamed/logo/' | sed 's/char/const char/' >> gmic4gimp_def.h 7.282 + 7.283 +gmic4gimp.o: gmic.cpp 7.284 + $(CC) -I.. -o gmic4gimp.o -c gmic.cpp -Dgmic_minimal $(CIMG_OPT_CFLAGS) $(CIMG_FFTW3_CFLAGS) 7.285 + 7.286 +gmic4gimp: gmic4gimp.o gmic4gimp.cpp 7.287 + $(CC) -I.. -I./plugins -o $(EXEPFX)gmic4gimp gmic4gimp.cpp gmic4gimp.o `gimptool-2.0 --cflags` `gimptool-2.0 --libs` -lpthread $(CIMG_OPT_FLAGS) $(CIMG_FFTW3_LDFLAGS) $(CIMG_GIMP_CFLAGS) 7.288 + 7.289 +# Specific targets for 'gmic'. 7.290 +gmic_def: gmic_def.raw 7.291 + \gmic -v- -t char gmic_def.raw,`du -Db gmic_def.raw | awk '{print $$1}'` -o -.h | sed 's/ \};/, 0 \};/g' | sed 's/unnamed/def/' > gmic_def.h 7.292 + 7.293 +gmic_bool.o: gmic.cpp 7.294 + @echo 7.295 + @echo "** Compiling 'gmic ($(CIMG_VERSION))' with '$(CCVER)'" 7.296 + @echo 7.297 + $(CC) -o gmic_bool.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_bool $(CFLAGS) $(CONF_CFLAGS) 7.298 +gmic_uchar.o: gmic.cpp 7.299 + $(CC) -o gmic_uchar.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_uchar $(CFLAGS) $(CONF_CFLAGS) 7.300 +gmic_char.o: gmic.cpp 7.301 + $(CC) -o gmic_char.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_char $(CFLAGS) $(CONF_CFLAGS) 7.302 +gmic_ushort.o: gmic.cpp 7.303 + $(CC) -o gmic_ushort.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_ushort $(CFLAGS) $(CONF_CFLAGS) 7.304 +gmic_short.o: gmic.cpp 7.305 + $(CC) -o gmic_short.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_short $(CFLAGS) $(CONF_CFLAGS) 7.306 +gmic_uint.o: gmic.cpp 7.307 + $(CC) -o gmic_uint.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_uint $(CFLAGS) $(CONF_CFLAGS) 7.308 +gmic_int.o: gmic.cpp 7.309 + $(CC) -o gmic_int.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_int $(CFLAGS) $(CONF_CFLAGS) 7.310 +gmic_float.o: gmic.cpp 7.311 + $(CC) -o gmic_float.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_float $(CFLAGS) $(CONF_CFLAGS) 7.312 +gmic_double.o: gmic.cpp 7.313 + $(CC) -o gmic_double.o -c gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_double $(CFLAGS) $(CONF_CFLAGS) 7.314 +gmic: gmic_bool.o gmic_uchar.o gmic_char.o gmic_ushort.o gmic_short.o gmic_uint.o gmic_int.o gmic_float.o gmic_double.o gmic.cpp 7.315 + $(CC) -o $(EXEPFX)gmic gmic.cpp -I. -Dgmic_separate_compilation -Dgmic_main \ 7.316 + gmic_bool.o gmic_uchar.o gmic_char.o gmic_ushort.o gmic_short.o \ 7.317 + gmic_uint.o gmic_int.o gmic_float.o gmic_double.o $(CFLAGS) $(LDFLAGS) $(CONF_CFLAGS) $(CONF_LDFLAGS) 7.318 + 7.319 +ifeq ($(MACOSX_APP),true) 7.320 + mkdir -p $(EXEPFX)gmic.app/Contents/MacOS 7.321 + mv ${*} $(EXEPFX)gmic.app/Contents/MacOS 7.322 +endif 7.323 +ifeq ($(STRIP_EXE),true) 7.324 + strip $(EXEPFX)gmic 7.325 +endif 7.326 + 7.327 +# Linux/BSD/Mac OSX targets, with X11 display. 7.328 +linux: 7.329 + @make \ 7.330 +"CONF_CFLAGS = \ 7.331 +$(CIMG_VT100_CFLAGS) \ 7.332 +$(CIMG_X11_CFLAGS) \ 7.333 +$(CIMG_XSHM_CFLAGS) \ 7.334 +$(CIMG_XRANDR_CFLAGS)" \ 7.335 +"CONF_LDFLAGS = \ 7.336 +$(CIMG_X11_LDFLAGS) \ 7.337 +$(CIMG_XSHM_LDFLAGS) \ 7.338 +$(CIMG_XRANDR_LDFLAGS)" \ 7.339 +all 7.340 + 7.341 +dlinux: 7.342 + @make \ 7.343 +"CONF_CFLAGS = \ 7.344 +$(CIMG_DEBUG_CFLAGS) \ 7.345 +$(CIMG_VT100_CFLAGS) \ 7.346 +$(CIMG_X11_CFLAGS) \ 7.347 +$(CIMG_XSHM_CFLAGS) \ 7.348 +$(CIMG_XRANDR_CFLAGS)" \ 7.349 +"CONF_LDFLAGS = \ 7.350 +$(CIMG_X11_LDFLAGS) \ 7.351 +$(CIMG_XSHM_LDFLAGS) \ 7.352 +$(CIMG_XRANDR_LDFLAGS)" \ 7.353 +all 7.354 + 7.355 +olinux: 7.356 + @make \ 7.357 +"CONF_CFLAGS = \ 7.358 +$(CIMG_OPT_CFLAGS) \ 7.359 +$(CIMG_VT100_CFLAGS) \ 7.360 +$(CIMG_X11_CFLAGS) \ 7.361 +$(CIMG_XSHM_CFLAGS) \ 7.362 +$(CIMG_XRANDR_CFLAGS)" \ 7.363 +"CONF_LDFLAGS = \ 7.364 +$(CIMG_X11_LDFLAGS) \ 7.365 +$(CIMG_XSHM_LDFLAGS) \ 7.366 +$(CIMG_XRANDR_LDFLAGS)" \ 7.367 +"STRIP_EXE=true" \ 7.368 +all 7.369 + 7.370 +mlinux: 7.371 + @make \ 7.372 +"CONF_CFLAGS = \ 7.373 +$(CIMG_NODISPLAY_CFLAGS) \ 7.374 +$(CIMG_OPT_CFLAGS)" \ 7.375 +"STRIP_EXE=true" \ 7.376 +all 7.377 + 7.378 +Mlinux: 7.379 + @make \ 7.380 +"CONF_CFLAGS = \ 7.381 +$(CIMG_OPT_CFLAGS) \ 7.382 +$(CIMG_VT100_CFLAGS) \ 7.383 +$(CIMG_X11_CFLAGS) \ 7.384 +$(CIMG_XSHM_CFLAGS) \ 7.385 +$(CIMG_XRANDR_CFLAGS) \ 7.386 +$(CIMG_TIFF_CFLAGS) \ 7.387 +$(CIMG_PNG_CFLAGS) \ 7.388 +$(CIMG_JPEG_CFLAGS) \ 7.389 +$(CIMG_ZLIB_CFLAGS) \ 7.390 +$(CIMG_MAGICK_CFLAGS) \ 7.391 +$(CIMG_FFTW3_CFLAGS)" \ 7.392 +"CONF_LDFLAGS = \ 7.393 +$(CIMG_X11_LDFLAGS) \ 7.394 +$(CIMG_XSHM_LDFLAGS) \ 7.395 +$(CIMG_XRANDR_LDFLAGS) \ 7.396 +$(CIMG_TIFF_LDFLAGS) \ 7.397 +$(CIMG_PNG_LDFLAGS) \ 7.398 +$(CIMG_JPEG_LDFLAGS) \ 7.399 +$(CIMG_ZLIB_LDFLAGS) \ 7.400 +$(CIMG_MAGICK_LDFLAGS) \ 7.401 +$(CIMG_FFTW3_LDFLAGS)" \ 7.402 +"STRIP_EXE=true" \ 7.403 +all use_jpeg_buffer greycstoration4gimp gmic4gimp 7.404 + 7.405 +# Sun Solaris targets, with X11 display. 7.406 +solaris: 7.407 + @make \ 7.408 +"CONF_CFLAGS = \ 7.409 +$(CIMG_VT100_CFLAGS) \ 7.410 +$(CIMG_X11_CFLAGS) \ 7.411 +$(CIMG_XSHM_CFLAGS) \ 7.412 +$(CIMG_XRANDR_CFLAGS)" \ 7.413 +"CONF_LDFLAGS = \ 7.414 +$(CIMG_SOLARIS_LDFLAGS) \ 7.415 +$(CIMG_X11_LDFLAGS) \ 7.416 +$(CIMG_XSHM_LDFLAGS) \ 7.417 +$(CIMG_XRANDR_LDFLAGS)" \ 7.418 +all 7.419 + 7.420 +dsolaris: 7.421 + @make \ 7.422 +"CONF_CFLAGS = \ 7.423 +$(CIMG_DEBUG_CFLAGS) \ 7.424 +$(CIMG_VT100_CFLAGS) \ 7.425 +$(CIMG_X11_CFLAGS) \ 7.426 +$(CIMG_XSHM_CFLAGS) \ 7.427 +$(CIMG_XRANDR_CFLAGS)" \ 7.428 +"CONF_LDFLAGS = \ 7.429 +$(CIMG_SOLARIS_LDFLAGS) \ 7.430 +$(CIMG_X11_LDFLAGS) \ 7.431 +$(CIMG_XSHM_LDFLAGS) \ 7.432 +$(CIMG_XRANDR_LDFLAGS)" \ 7.433 +all 7.434 + 7.435 +osolaris: 7.436 + @make \ 7.437 +"CONF_CFLAGS = \ 7.438 +$(CIMG_OPT_CFLAGS) \ 7.439 +$(CIMG_VT100_CFLAGS) \ 7.440 +$(CIMG_X11_CFLAGS) \ 7.441 +$(CIMG_XSHM_CFLAGS) \ 7.442 +$(CIMG_XRANDR_CFLAGS)" \ 7.443 +"CONF_LDFLAGS = \ 7.444 +$(CIMG_SOLARIS_LDFLAGS) \ 7.445 +$(CIMG_X11_LDFLAGS) \ 7.446 +$(CIMG_XSHM_LDFLAGS) \ 7.447 +$(CIMG_XRANDR_LDFLAGS)" \ 7.448 +"STRIP_EXE=true" \ 7.449 +all 7.450 + 7.451 +msolaris: 7.452 + @make \ 7.453 +"CONF_CFLAGS = \ 7.454 +$(CIMG_NODISPLAY_CFLAGS) \ 7.455 +$(CIMG_OPT_CFLAGS)" \ 7.456 +"STRIP_EXE=true" \ 7.457 +all 7.458 + 7.459 +Msolaris: 7.460 + @make \ 7.461 +"CONF_CFLAGS = \ 7.462 +$(CIMG_OPT_CFLAGS) \ 7.463 +$(CIMG_VT100_CFLAGS) \ 7.464 +$(CIMG_X11_CFLAGS) \ 7.465 +$(CIMG_XSHM_CFLAGS) \ 7.466 +$(CIMG_XRANDR_CFLAGS) \ 7.467 +$(CIMG_TIFF_CFLAGS) \ 7.468 +$(CIMG_PNG_CFLAGS) \ 7.469 +$(CIMG_JPEG_CFLAGS) \ 7.470 +$(CIMG_ZLIB_CFLAGS) \ 7.471 +$(CIMG_MAGICK_CFLAGS) \ 7.472 +$(CIMG_FFTW3_CFLAGS)" \ 7.473 +"CONF_LDFLAGS = \ 7.474 +$(CIMG_SOLARIS_LDFLAGS) \ 7.475 +$(CIMG_X11_LDFLAGS) \ 7.476 +$(CIMG_XSHM_LDFLAGS) \ 7.477 +$(CIMG_XRANDR_LDFLAGS) \ 7.478 +$(CIMG_TIFF_LDFLAGS) \ 7.479 +$(CIMG_PNG_LDFLAGS) \ 7.480 +$(CIMG_JPEG_LDFLAGS) \ 7.481 +$(CIMG_ZLIB_LDFLAGS) \ 7.482 +$(CIMG_MAGICK_LDFLAGS) \ 7.483 +$(CIMG_FFTW3_LDFLAGS)" \ 7.484 +"STRIP_EXE=true" \ 7.485 +all use_jpeg_buffer greycstoration4gimp gmic4gimp 7.486 + 7.487 +# MacOsX targets, with Carbon display. 7.488 +macosx: 7.489 + @make \ 7.490 +"CONF_CFLAGS = \ 7.491 +$(CIMG_CARBON_CFLAGS) \ 7.492 +$(CIMG_VT100_CFLAGS)" \ 7.493 +"MACOSX_APP=true" \ 7.494 +all 7.495 + 7.496 +dmacosx: 7.497 + @make \ 7.498 +"CONF_CFLAGS = \ 7.499 +$(CIMG_DEBUG_CFLAGS) \ 7.500 +$(CIMG_CARBON_CFLAGS) \ 7.501 +$(CIMG_VT100_CFLAGS)" \ 7.502 +"MACOSX_APP=true" \ 7.503 +all 7.504 + 7.505 +omacosx: 7.506 + @make \ 7.507 +"CONF_CFLAGS = \ 7.508 +$(CIMG_OPT_CFLAGS) \ 7.509 +$(CIMG_CARBON_CFLAGS) \ 7.510 +$(CIMG_VT100_CFLAGS)" \ 7.511 +"MACOSX_APP=true" \ 7.512 +all 7.513 + 7.514 +mmacosx: 7.515 + @make \ 7.516 +"CONF_CFLAGS = \ 7.517 +$(CIMG_NODISPLAY_CFLAGS) \ 7.518 +$(CIMG_OPT_CFLAGS)" \ 7.519 +"MACOSX_APP=true" \ 7.520 +all 7.521 + 7.522 +Mmacosx: 7.523 + @make \ 7.524 +"CONF_CFLAGS = \ 7.525 +$(CIMG_OPT_CFLAGS) \ 7.526 +$(CIMG_VT100_CFLAGS) \ 7.527 +$(CIMG_CARBON_CFLAGS) \ 7.528 +$(CIMG_TIFF_CFLAGS) \ 7.529 +$(CIMG_PNG_CFLAGS) \ 7.530 +$(CIMG_JPEG_CFLAGS) \ 7.531 +$(CIMG_ZLIB_CFLAGS) \ 7.532 +$(CIMG_MAGICK_CFLAGS) \ 7.533 +$(CIMG_FFTW3_CFLAGS)" \ 7.534 +"CONF_LDFLAGS = \ 7.535 +$(CIMG_TIFF_LDFLAGS) \ 7.536 +$(CIMG_PNG_LDFLAGS) \ 7.537 +$(CIMG_JPEG_LDFLAGS) \ 7.538 +$(CIMG_ZLIB_LDFLAGS) \ 7.539 +$(CIMG_MAGICK_LDFLAGS) \ 7.540 +$(CIMG_FFTW3_LDFLAGS)" \ 7.541 +"MACOSX_APP=true" \ 7.542 +all use_jpeg_buffer greycstoration4gimp gmic4gimp 7.543 + 7.544 +# Windows targets, with GDI32 display. 7.545 +windows: 7.546 + @make \ 7.547 +"CONF_LDFLAGS = \ 7.548 +$(CIMG_GDI32_LDFLAGS)" \ 7.549 +all 7.550 + 7.551 +dwindows: 7.552 + @make \ 7.553 +"CONF_CFLAGS = \ 7.554 +$(CIMG_DEBUG_CFLAGS)" \ 7.555 +"CONF_LDFLAGS = \ 7.556 +$(CIMG_GDI32_LDFLAGS)" \ 7.557 +all 7.558 + 7.559 +owindows: 7.560 + @make \ 7.561 +"CONF_CFLAGS = \ 7.562 +$(CIMG_OPT_CFLAGS)" \ 7.563 +"CONF_LDFLAGS = \ 7.564 +$(CIMG_GDI32_LDFLAGS)" \ 7.565 +"STRIP_EXE=true" \ 7.566 +all 7.567 + 7.568 +mwindows: 7.569 + @make \ 7.570 +"CONF_CFLAGS = \ 7.571 +$(CIMG_NODISPLAY_CFLAGS) \ 7.572 +$(CIMG_OPT_CFLAGS)" \ 7.573 +"STRIP_EXE=true" \ 7.574 +all 7.575 + 7.576 +Mwindows: 7.577 + @make \ 7.578 +"CONF_CFLAGS = \ 7.579 +$(CIMG_OPT_CFLAGS) \ 7.580 +$(CIMG_TIFF_CFLAGS) \ 7.581 +$(CIMG_PNG_CFLAGS) \ 7.582 +$(CIMG_JPEG_CFLAGS) \ 7.583 +$(CIMG_ZLIB_CFLAGS) \ 7.584 +$(CIMG_FFTW3_CFLAGS)" \ 7.585 +"CONF_LDFLAGS = \ 7.586 +$(CIMG_GDI32_LDFLAGS) \ 7.587 +$(CIMG_TIFF_LDFLAGS) \ 7.588 +$(CIMG_PNG_LDFLAGS) \ 7.589 +$(CIMG_JPEG_LDFLAGS) \ 7.590 +$(CIMG_ZLIB_LDFLAGS) \ 7.591 +$(CIMG_FFTW3_LDFLAGS)" \ 7.592 +"STRIP_EXE=true" \ 7.593 +all use_jpeg_buffer greycstoration4gimp gmic4gimp 7.594 + 7.595 +#----------------- 7.596 +# End of makefile 7.597 +#-----------------
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 8.2 +++ b/PTdecode/CImg-1.3.0/examples/captcha.cpp Mon Aug 03 14:09:20 2009 +0100 8.3 @@ -0,0 +1,161 @@ 8.4 +/* 8.5 + # 8.6 + # File : captcha.cpp 8.7 + # ( C++ source file ) 8.8 + # 8.9 + # Description : Captcha images generator. 8.10 + # This file is a part of the CImg Library project. 8.11 + # ( http://cimg.sourceforge.net ) 8.12 + # 8.13 + # Copyright : David Tschumperle 8.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 8.15 + # 8.16 + # License : CeCILL v2.0 8.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 8.18 + # 8.19 + # This software is governed by the CeCILL license under French law and 8.20 + # abiding by the rules of distribution of free software. You can use, 8.21 + # modify and/ or redistribute the software under the terms of the CeCILL 8.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 8.23 + # "http://www.cecill.info". 8.24 + # 8.25 + # As a counterpart to the access to the source code and rights to copy, 8.26 + # modify and redistribute granted by the license, users are provided only 8.27 + # with a limited warranty and the software's author, the holder of the 8.28 + # economic rights, and the successive licensors have only limited 8.29 + # liability. 8.30 + # 8.31 + # In this respect, the user's attention is drawn to the risks associated 8.32 + # with loading, using, modifying and/or developing or reproducing the 8.33 + # software by the user in light of its specific status of free software, 8.34 + # that may mean that it is complicated to manipulate, and that also 8.35 + # therefore means that it is reserved for developers and experienced 8.36 + # professionals having in-depth computer knowledge. Users are therefore 8.37 + # encouraged to load and test the software's suitability as regards their 8.38 + # requirements in conditions enabling the security of their systems and/or 8.39 + # data to be ensured and, more generally, to use and operate it in the 8.40 + # same conditions as regards security. 8.41 + # 8.42 + # The fact that you are presently reading this means that you have had 8.43 + # knowledge of the CeCILL license and that you accept its terms. 8.44 + # 8.45 +*/ 8.46 + 8.47 +#ifndef cimg_debug 8.48 +#define cimg_debug 1 8.49 +#endif 8.50 +#include "CImg.h" 8.51 +using namespace cimg_library; 8.52 + 8.53 +// The lines below are necessary when using a non-standard compiler such as visualcpp6. 8.54 +#ifdef cimg_use_visualcpp6 8.55 +#define std 8.56 +#endif 8.57 +#ifdef min 8.58 +#undef min 8.59 +#undef max 8.60 +#endif 8.61 + 8.62 +// Start main procedure 8.63 +//---------------------- 8.64 +int main(int argc,char **argv) { 8.65 + 8.66 + // Read command line parameters 8.67 + //------------------------------ 8.68 + cimg_usage("Captcha generator"); 8.69 + const char *file_o = cimg_option("-o",(char*)0,"Output image file"); 8.70 + const bool add_border = cimg_option("-b",true,"Add border to captcha image"); 8.71 + const bool visu = cimg_option("-visu",true,"Enable visualization if no output file"); 8.72 + 8.73 + // Generate captcha text (6 char max). 8.74 + //------------------------------------ 8.75 + const char *predef_words[] = { 8.76 + "aarrgh", "abacas", "abacus", "abakas", "abamps", "abased", "abaser", "abases", "abasia", "abated", "abater", "abates", "abatis", "abator", 8.77 + "baobab", "barbal", "barbed", "barbel", "barber", "barbes", "barbet", "barbie", "barbut", "barcas", "barded", "bardes", "bardic", "barege", 8.78 + "cavies", "cavils", "caving", "cavity", "cavort", "cawing", "cayman", "cayuse", "ceased", "ceases", "cebids", "ceboid", "cecity", "cedarn", 8.79 + "dicast", "dicers", "dicier", "dicing", "dicker", "dickey", "dickie", "dicots", "dictum", "didact", "diddle", "diddly", "didies", "didoes", 8.80 + "emails", "embalm", "embank", "embark", "embars", "embays", "embeds", "embers", "emblem", "embody", "emboli", "emboly", "embosk", "emboss", 8.81 + "fluffy", "fluids", "fluish", "fluked", "flukes", "flukey", "flumed", "flumes", "flumps", "flunks", "flunky", "fluors", "flurry", "fluted", 8.82 + "genome", "genoms", "genres", "genros", "gentes", "gentil", "gentle", "gently", "gentry", "geodes", "geodic", "geoids", "gerahs", "gerbil", 8.83 + "hotter", "hottie", "houdah", "hounds", "houris", "hourly", "housed", "housel", "houser", "houses", "hovels", "hovers", "howdah", "howdie", 8.84 + "inland", "inlays", "inlets", "inlier", "inmate", "inmesh", "inmost", "innage", "innate", "inners", "inning", "inpour", "inputs", "inroad", 8.85 + "joypop", "jubbah", "jubhah", "jubile", "judder", "judged", "judger", "judges", "judoka", "jugate", "jugful", "jugged", "juggle", "jugula", 8.86 + "knifer", "knifes", "knight", "knives", "knobby", "knocks", "knolls", "knolly", "knosps", "knotty", "knouts", "knower", "knowns", "knubby", 8.87 + "legate", "legato", "legend", "legers", "legged", "leggin", "legion", "legist", "legits", "legman", "legmen", "legong", "legume", "lehuas", 8.88 + "mammal", "mammas", "mammee", "mammer", "mammet", "mammey", "mammie", "mammon", "mamzer", "manage", "manana", "manats", "manche", "manege", 8.89 + "nihils", "nilgai", "nilgau", "nilled", "nimble", "nimbly", "nimbus", "nimmed", "nimrod", "ninety", "ninjas", "ninons", "ninths", "niobic", 8.90 + "offish", "offkey", "offset", "oftest", "ogdoad", "oghams", "ogival", "ogives", "oglers", "ogling", "ogress", "ogrish", "ogrism", "ohmage", 8.91 + "papaws", "papaya", "papers", "papery", "pappus", "papula", "papule", "papyri", "parade", "paramo", "parang", "paraph", "parcel", "pardah", 8.92 + "quasar", "quatre", "quaver", "qubits", "qubyte", "queans", "queasy", "queazy", "queens", "queers", "quelea", "quells", "quench", "querns", 8.93 + "raised", "raiser", "raises", "raisin", "raitas", "rajahs", "rakees", "rakers", "raking", "rakish", "rallye", "ralphs", "ramada", "ramate", 8.94 + "savory", "savour", "savoys", "sawers", "sawfly", "sawing", "sawlog", "sawney", "sawyer", "saxony", "sayeds", "sayers", "sayest", "sayids", 8.95 + "tondos", "toneme", "toners", "tongas", "tonged", "tonger", "tongue", "tonics", "tonier", "toning", "tonish", "tonlet", "tonner", "tonnes", 8.96 + "uredia", "uredos", "ureide", "uremia", "uremic", "ureter", "uretic", "urgent", "urgers", "urging", "urials", "urinal", "urines", "uropod", 8.97 + "villus", "vimina", "vinals", "vincas", "vineal", "vinery", "vinier", "vinify", "vining", "vinous", "vinyls", "violas", "violet", "violin", 8.98 + "webfed", "weblog", "wechts", "wedded", "wedder", "wedeln", "wedels", "wedged", "wedges", "wedgie", "weeded", "weeder", "weekly", "weened", 8.99 + "xystoi", "xystos", "xystus", "yabber", "yabbie", "yachts", "yacked", "yaffed", "yagers", "yahoos", "yairds", "yakked", "yakker", "yakuza", 8.100 + "zigged", "zigzag", "zillah", "zinced", "zincic", "zincky", "zinebs", "zinged", "zinger", "zinnia", "zipped", "zipper", "zirams", "zircon" }; 8.101 + cimg::srand(); 8.102 + const char *const captcha_text = predef_words[(int)std::rand()%(sizeof(predef_words)/7)]; 8.103 + 8.104 + // Create captcha image 8.105 + //---------------------- 8.106 + 8.107 + // Write colored and distorted text 8.108 + CImg<unsigned char> captcha(256,64,1,3,0), color(3); 8.109 + char letter[2] = { 0 }; 8.110 + for (unsigned int k=0; k<6; ++k) { 8.111 + CImg<unsigned char> tmp; 8.112 + *letter = captcha_text[k]; 8.113 + if (*letter) { 8.114 + { cimg_forX(color,i) color[i] = (unsigned char)(128+(std::rand()%127)); } 8.115 + tmp.draw_text((int)(2+8*cimg::rand()), 8.116 + (int)(12*cimg::rand()), 8.117 + letter,color.ptr(),0,1,std::rand()%2?38:57); 8.118 + const unsigned int dir = std::rand()%4, wph = tmp.dimx()+tmp.dimy(); 8.119 + { cimg_forXYV(tmp,x,y,v) { 8.120 + const int val = dir==0?x+y:(dir==1?x+tmp.dimy()-y:(dir==2?y+tmp.dimx()-x:tmp.dimx()-x+tmp.dimy()-y)); 8.121 + tmp(x,y,v) = (unsigned char)cimg::max(0.0f,cimg::min(255.0f,1.5f*tmp(x,y,v)*val/wph)); 8.122 + }} 8.123 + if (std::rand()%2) tmp = (tmp.get_dilate(3)-=tmp); 8.124 + tmp.blur((float)cimg::rand()*0.8f).normalize(0,255); 8.125 + const float sin_offset = (float)cimg::crand()*3, sin_freq = (float)cimg::crand()/7; 8.126 + { cimg_forYV(captcha,y,v) captcha.get_shared_line(y,0,v).translate((int)(4*std::cos(y*sin_freq+sin_offset))); } 8.127 + captcha.draw_image(6+40*k,tmp); 8.128 + } 8.129 + } 8.130 + 8.131 + // Add geometric and random noise 8.132 + CImg<unsigned char> copy = (+captcha).fill(0); 8.133 + for (unsigned int l=0; l<3; ++l) { 8.134 + if (l) copy.blur(0.5f).normalize(0,148); 8.135 + for (unsigned int k=0; k<10; ++k) { 8.136 + cimg_forX(color,i) color[i] = (unsigned char)(128+cimg::rand()*127); 8.137 + if (cimg::rand()<0.5f) copy.draw_circle((int)(cimg::rand()*captcha.dimx()), 8.138 + (int)(cimg::rand()*captcha.dimy()), 8.139 + (int)(cimg::rand()*30), 8.140 + color,0.6f,~0U); 8.141 + else copy.draw_line((int)(cimg::rand()*captcha.dimx()), 8.142 + (int)(cimg::rand()*captcha.dimy()), 8.143 + (int)(cimg::rand()*captcha.dimx()), 8.144 + (int)(cimg::rand()*captcha.dimy()), 8.145 + color,0.6f); 8.146 + } 8.147 + } 8.148 + captcha|=copy; 8.149 + captcha.noise(10,2); 8.150 + 8.151 + if (add_border) captcha.draw_rectangle(0,0,captcha.dimx()-1,captcha.dimy()-1,CImg<unsigned char>::vector(255,255,255),1.0f,~0U); 8.152 + captcha = (+captcha).fill(255) - captcha; 8.153 + 8.154 + // Write output image and captcha text 8.155 + //------------------------------------- 8.156 + std::printf("%s\n",captcha_text); 8.157 + if (file_o) captcha.save(file_o); 8.158 + else if (visu) { 8.159 + CImgDisplay disp(CImg<unsigned char>(512,128,1,3,180).draw_image(128,32,captcha),captcha_text,0); 8.160 + while (!disp.is_closed && !disp.key) { disp.wait(); if (disp.is_resized) disp.resize(disp); } 8.161 + } 8.162 + return 0; 8.163 +} 8.164 +
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 9.2 +++ b/PTdecode/CImg-1.3.0/examples/check_all_functions.cpp Mon Aug 03 14:09:20 2009 +0100 9.3 @@ -0,0 +1,105 @@ 9.4 +/* 9.5 + # 9.6 + # File : check_all_functions.cpp 9.7 + # ( C++ source file ) 9.8 + # 9.9 + # Description : A simple source code that tries to instanciate all 9.10 + # CImg functions for the most common template types. 9.11 + # This is mainly for testing that CImg compiles correctly 9.12 + # on various systems and with various compilers. 9.13 + # This file is a part of the CImg Library project. 9.14 + # ( http://cimg.sourceforge.net ) 9.15 + # 9.16 + # Copyright : David Tschumperle 9.17 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 9.18 + # 9.19 + # License : CeCILL v2.0 9.20 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 9.21 + # 9.22 + # This software is governed by the CeCILL license under French law and 9.23 + # abiding by the rules of distribution of free software. You can use, 9.24 + # modify and/ or redistribute the software under the terms of the CeCILL 9.25 + # license as circulated by CEA, CNRS and INRIA at the following URL 9.26 + # "http://www.cecill.info". 9.27 + # 9.28 + # As a counterpart to the access to the source code and rights to copy, 9.29 + # modify and redistribute granted by the license, users are provided only 9.30 + # with a limited warranty and the software's author, the holder of the 9.31 + # economic rights, and the successive licensors have only limited 9.32 + # liability. 9.33 + # 9.34 + # In this respect, the user's attention is drawn to the risks associated 9.35 + # with loading, using, modifying and/or developing or reproducing the 9.36 + # software by the user in light of its specific status of free software, 9.37 + # that may mean that it is complicated to manipulate, and that also 9.38 + # therefore means that it is reserved for developers and experienced 9.39 + # professionals having in-depth computer knowledge. Users are therefore 9.40 + # encouraged to load and test the software's suitability as regards their 9.41 + # requirements in conditions enabling the security of their systems and/or 9.42 + # data to be ensured and, more generally, to use and operate it in the 9.43 + # same conditions as regards security. 9.44 + # 9.45 + # The fact that you are presently reading this means that you have had 9.46 + # knowledge of the CeCILL license and that you accept its terms. 9.47 + # 9.48 +*/ 9.49 +#ifdef cimg_plugin 9.50 + 9.51 +// Load all existing CImg plugins 9.52 +//--------------------------------- 9.53 +#include "../plugins/add_fileformat.h" 9.54 +#include "../plugins/greycstoration.h" 9.55 +#include "../plugins/integral_line.h" 9.56 +#include "../plugins/jpeg_buffer.h" 9.57 +#include "../plugins/loop_macros.h" 9.58 +#include "../plugins/nlmeans.h" 9.59 +#include "../plugins/noise_analysis.h" 9.60 +#include "../plugins/skeleton.h" 9.61 +#include "../plugins/draw_gradient.h" 9.62 + 9.63 +#else 9.64 +#include <cstdio> 9.65 +#include <jpeglib.h> 9.66 +#include <jerror.h> 9.67 +#include <queue> 9.68 +#define cimg_plugin "examples/check_all_functions.cpp" 9.69 +#include "CImg.h" 9.70 +using namespace cimg_library; 9.71 + 9.72 +// Instanciate the CImg<T> class with the most common types. 9.73 +//--------------------------------------------------------- 9.74 +template struct CImg<bool>; 9.75 +template struct CImg<signed char>; 9.76 +template struct CImg<unsigned char>; 9.77 +template struct CImg<char>; 9.78 +template struct CImg<unsigned short>; 9.79 +template struct CImg<short>; 9.80 +template struct CImg<unsigned int>; 9.81 +template struct CImg<int>; 9.82 +template struct CImg<unsigned long>; 9.83 +template struct CImg<long>; 9.84 +template struct CImg<float>; 9.85 +template struct CImg<double>; 9.86 + 9.87 +// Instanciate the CImgList<T> class with the most common types. 9.88 +//-------------------------------------------------------------- 9.89 +template struct CImgList<bool>; 9.90 +template struct CImgList<signed char>; 9.91 +template struct CImgList<unsigned char>; 9.92 +template struct CImgList<char>; 9.93 +template struct CImgList<unsigned short>; 9.94 +template struct CImgList<short>; 9.95 +template struct CImgList<unsigned int>; 9.96 +template struct CImgList<int>; 9.97 +template struct CImgList<unsigned long>; 9.98 +template struct CImgList<long>; 9.99 +template struct CImgList<float>; 9.100 +template struct CImgList<double>; 9.101 + 9.102 +// Main procedure, does actually nothing... 9.103 +//----------------------------------------- 9.104 +int main() { 9.105 + return 0; 9.106 +} 9.107 + 9.108 +#endif
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 10.2 +++ b/PTdecode/CImg-1.3.0/examples/curve_editor.cpp Mon Aug 03 14:09:20 2009 +0100 10.3 @@ -0,0 +1,344 @@ 10.4 +/* 10.5 + # 10.6 + # File : curve_editor.cpp 10.7 + # ( C++ source file ) 10.8 + # 10.9 + # Description : A simple user interface to construct 2D spline curves. 10.10 + # This file is a part of the CImg Library project. 10.11 + # ( http://cimg.sourceforge.net ) 10.12 + # 10.13 + # Copyright : David Tschumperle 10.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 10.15 + # 10.16 + # License : CeCILL v2.0 10.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 10.18 + # 10.19 + # This software is governed by the CeCILL license under French law and 10.20 + # abiding by the rules of distribution of free software. You can use, 10.21 + # modify and/ or redistribute the software under the terms of the CeCILL 10.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 10.23 + # "http://www.cecill.info". 10.24 + # 10.25 + # As a counterpart to the access to the source code and rights to copy, 10.26 + # modify and redistribute granted by the license, users are provided only 10.27 + # with a limited warranty and the software's author, the holder of the 10.28 + # economic rights, and the successive licensors have only limited 10.29 + # liability. 10.30 + # 10.31 + # In this respect, the user's attention is drawn to the risks associated 10.32 + # with loading, using, modifying and/or developing or reproducing the 10.33 + # software by the user in light of its specific status of free software, 10.34 + # that may mean that it is complicated to manipulate, and that also 10.35 + # therefore means that it is reserved for developers and experienced 10.36 + # professionals having in-depth computer knowledge. Users are therefore 10.37 + # encouraged to load and test the software's suitability as regards their 10.38 + # requirements in conditions enabling the security of their systems and/or 10.39 + # data to be ensured and, more generally, to use and operate it in the 10.40 + # same conditions as regards security. 10.41 + # 10.42 + # The fact that you are presently reading this means that you have had 10.43 + # knowledge of the CeCILL license and that you accept its terms. 10.44 + # 10.45 +*/ 10.46 + 10.47 +#include "CImg.h" 10.48 +using namespace cimg_library; 10.49 + 10.50 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 10.51 +#ifdef cimg_use_visualcpp6 10.52 +#define std 10.53 +#endif 10.54 +#ifdef min 10.55 +#undef min 10.56 +#undef max 10.57 +#endif 10.58 + 10.59 +//--------------- 10.60 +// Main procedure 10.61 +//--------------- 10.62 +int main(int argc, char **argv) { 10.63 + 10.64 + // Read command line parameters 10.65 + //----------------------------- 10.66 + cimg_usage("2D Spline Curve Editor"); 10.67 + const char *file_i = cimg_option("-i",(char*)0,"Input image"); 10.68 + const float contrast = cimg_option("-contrast",0.6f,"Image contrast"); 10.69 + const char *file_ip = cimg_option("-ip",(char*)0,"Input control points"); 10.70 + const char *file_oc = cimg_option("-oc",(char*)0,"Output curve points"); 10.71 + const char *file_op = cimg_option("-op",(char*)0,"Output control points"); 10.72 + const char *file_od = cimg_option("-od",(char*)0,"Output distance function"); 10.73 + bool interp = cimg_option("-poly",true,"Use polynomial interpolation"); 10.74 + bool closed = cimg_option("-closed",true,"Closed curve"); 10.75 + bool show_tangents = cimg_option("-tangents",false,"Show tangents"); 10.76 + bool show_points = cimg_option("-points",true,"Show control points"); 10.77 + bool show_outline = cimg_option("-outline",true,"Show polygon outline"); 10.78 + bool show_indices = cimg_option("-indices",true,"Show points indices"); 10.79 + bool show_coordinates = cimg_option("-coords",false,"Show points coordinates"); 10.80 + const float precision = cimg_option("-prec",0.05f,"Precision of curve discretization"); 10.81 + 10.82 + // Init image data 10.83 + //----------------- 10.84 + const unsigned char yellow[] = { 255,255,0 }, white[] = { 255,255,255 }, green[] = { 0,255,0 }, 10.85 + red[] = { 255,0,50 }, purple[] = { 255,100,255 }, black[] = { 0,0,0 }; 10.86 + CImg<unsigned char> img0, img, help_img; 10.87 + if (file_i) { 10.88 + std::fprintf(stderr,"\n - Load input image '%s' : ",cimg::basename(file_i)); 10.89 + img0 = CImg<>(file_i).normalize(0,255.0f*contrast); 10.90 + std::fprintf(stderr,"Size = %dx%dx%dx%d \n",img0.dimx(),img0.dimy(),img0.dimz(),img0.dimv()); 10.91 + img0.resize(-100,-100,1,3); 10.92 + } 10.93 + else { 10.94 + std::fprintf(stderr,"\n - No input image specified, use default 512x512 image.\n"); 10.95 + img0.assign(512,512,1,3,0).draw_grid(32,32,0,0,false,false,green,0.4f,0xCCCCCCCC,0xCCCCCCCC); 10.96 + } 10.97 + 10.98 + help_img.assign(270,160,1,3,0). 10.99 + draw_text(5,5, 10.100 + "------------------------------------------\n" 10.101 + "2D Curve Editor\n" 10.102 + "------------------------------------------\n" 10.103 + "Left button : Create or move control point\n" 10.104 + "Right button : Delete control point\n" 10.105 + "Spacebar : Switch interpolation\n" 10.106 + "Key 'C' : Switch open/closed mode\n" 10.107 + "Key 'T' : Show/hide tangents\n" 10.108 + "Key 'P' : Show/hide control points\n" 10.109 + "Key 'O' : Show/hide polygon outline\n" 10.110 + "Key 'N' : Show/hide points indices\n" 10.111 + "Key 'X' : Show/hide points coordinates\n" 10.112 + "Key 'H' : Show/hide this help\n" 10.113 + "Key 'S' : Save control points\n" 10.114 + "Key 'R' : Reset curve\n", 10.115 + green); 10.116 + CImgDisplay disp(img0,"2D Curve Editor",0); 10.117 + CImgList<float> points, curve; 10.118 + bool moving = false; 10.119 + bool help = !file_i; 10.120 + 10.121 + if (file_ip) { 10.122 + std::fprintf(stderr," - Load input control points '%s' : ",cimg::basename(file_ip)); 10.123 + points = CImg<>(file_ip).transpose().get_split('x'); 10.124 + std::fprintf(stderr," %u points\n",points.size); 10.125 + } 10.126 + 10.127 + // Enter user loop 10.128 + //----------------- 10.129 + while (!disp.is_closed && !disp.is_keyESC && !disp.is_keyQ) { 10.130 + 10.131 + // Handle mouse manipulation 10.132 + //--------------------------- 10.133 + const float 10.134 + x = disp.mouse_x*(float)img0.dimx()/disp.dimx(), 10.135 + y = disp.mouse_y*(float)img0.dimy()/disp.dimy(); 10.136 + const unsigned int 10.137 + button = disp.button; 10.138 + 10.139 + if (points && button && x>=0 && y>=0) { 10.140 + 10.141 + // Find nearest point and nearest segment 10.142 + float dmin_pt = 1e10f, dmin_seg = dmin_pt; 10.143 + unsigned int p_pt = 0, p_seg = 0; 10.144 + cimglist_for(points,p) { 10.145 + const unsigned int 10.146 + pnext = closed?(p+1)%points.size:(p+1<points.size?p+1:p); 10.147 + const float 10.148 + xp = points(p,0), 10.149 + yp = points(p,1), 10.150 + xm = 0.5f*(xp + points(pnext,0)), 10.151 + ym = 0.5f*(yp + points(pnext,1)); 10.152 + const float 10.153 + d_pt = (xp-x)*(xp-x) + (yp-y)*(yp-y), 10.154 + d_seg = (xm-x)*(xm-x) + (ym-y)*(ym-y); 10.155 + if (d_pt<dmin_pt) { dmin_pt = d_pt; p_pt = p; } 10.156 + if (d_seg<dmin_seg) { dmin_seg = d_seg; p_seg = p; } 10.157 + } 10.158 + 10.159 + // Handle button 10.160 + if (button&1) { 10.161 + if (dmin_pt<100 || moving) { points(p_pt,0) = x; points(p_pt,1) = y; } 10.162 + else points.insert(CImg<>::vector(x,y),p_seg+1); 10.163 + moving = true; 10.164 + } 10.165 + if (button&2 && dmin_pt<100) { 10.166 + if (points.size>3) points.remove(p_pt); 10.167 + else points.assign(); 10.168 + disp.button=0; 10.169 + } 10.170 + } 10.171 + if (!button) moving = false; 10.172 + 10.173 + if (disp.key) { 10.174 + switch (disp.key) { 10.175 + case cimg::keySPACE: interp = !interp; break; 10.176 + case cimg::keyC: closed = !closed; break; 10.177 + case cimg::keyT: show_tangents = !show_tangents; break; 10.178 + case cimg::keyP: show_points = !show_points; break; 10.179 + case cimg::keyO: show_outline = !show_outline; break; 10.180 + case cimg::keyN: show_indices = !show_indices; break; 10.181 + case cimg::keyX: show_coordinates = !show_coordinates; break; 10.182 + case cimg::keyR: points.assign(); break; 10.183 + case cimg::keyH: help = !help; break; 10.184 + case cimg::keyS: { 10.185 + const char *filename = file_op?file_op:"curve_points.dlm"; 10.186 + std::fprintf(stderr," - Save control points in '%s'\n",filename); 10.187 + points.get_append('x').transpose().save(filename); 10.188 + } break; 10.189 + } 10.190 + disp.key = 0; 10.191 + } 10.192 + 10.193 + // Init list of points if empty 10.194 + //------------------------------ 10.195 + if (!points) { 10.196 + const float 10.197 + x0 = img0.dimx()/4.0f, 10.198 + y0 = img0.dimy()/4.0f, 10.199 + x1 = img0.dimx()-x0, 10.200 + y1 = img0.dimy()-y0; 10.201 + points.insert(CImg<>::vector(x0,y0)). 10.202 + insert(CImg<>::vector(x1,y0)). 10.203 + insert(CImg<>::vector(x1,y1)). 10.204 + insert(CImg<>::vector(x0,y1)); 10.205 + } 10.206 + 10.207 + // Estimate curve tangents 10.208 + //------------------------- 10.209 + CImg<> tangents(points.size,2); 10.210 + { cimglist_for(points,p) { 10.211 + const unsigned int 10.212 + p0 = closed?(p+points.size-1)%points.size:(p?p-1:0), 10.213 + p1 = closed?(p+1)%points.size:(p+1<points.size?p+1:p); 10.214 + const float 10.215 + x = points(p,0), 10.216 + y = points(p,1), 10.217 + x0 = points(p0,0), 10.218 + y0 = points(p0,1), 10.219 + x1 = points(p1,0), 10.220 + y1 = points(p1,1), 10.221 + u0 = x-x0, 10.222 + v0 = y-y0, 10.223 + n0 = 1e-8f + (float)std::sqrt(u0*u0+v0*v0), 10.224 + u1 = x1-x, 10.225 + v1 = y1-y, 10.226 + n1 = 1e-8f + (float)std::sqrt(u1*u1+v1*v1), 10.227 + u = u0/n0 + u1/n1, 10.228 + v = v0/n0 + v1/n1, 10.229 + n = 1e-8f + (float)std::sqrt(u*u+v*v), 10.230 + fact = 0.5f*(n0+n1); 10.231 + tangents(p,0) = fact*u/n; 10.232 + tangents(p,1) = fact*v/n; 10.233 + }} 10.234 + 10.235 + // Estimate 3th-order polynomial interpolation 10.236 + //--------------------------------------------- 10.237 + curve.assign(); 10.238 + const unsigned int pmax = points.size-(closed?0:1); 10.239 + for (unsigned int p0=0; p0<pmax; p0++) { 10.240 + const unsigned int 10.241 + p1 = closed?(p0+1)%points.size:(p0+1<points.size?p0+1:p0); 10.242 + const float 10.243 + x0 = points(p0,0), 10.244 + y0 = points(p0,1), 10.245 + x1 = points(p1,0), 10.246 + y1 = points(p1,1); 10.247 + float ax=0, bx=0, cx=0, dx=0, ay=0, by=0, cy=0, dy=0; 10.248 + if (interp) { 10.249 + const float 10.250 + u0 = tangents(p0,0), 10.251 + v0 = tangents(p0,1), 10.252 + u1 = tangents(p1,0), 10.253 + v1 = tangents(p1,1); 10.254 + ax = 2*(x0-x1)+u0+u1; 10.255 + bx = 3*(x1-x0)-2*u0-u1; 10.256 + cx = u0; 10.257 + dx = x0; 10.258 + ay = 2*(y0-y1)+v0+v1; 10.259 + by = 3*(y1-y0)-2*v0-v1; 10.260 + cy = v0; 10.261 + dy = y0; 10.262 + } else { 10.263 + ax = ay = bx = by = 0; 10.264 + dx = x0; 10.265 + dy = y0; 10.266 + cx = (x1-x0); 10.267 + cy = (y1-y0); 10.268 + } 10.269 + const float tmax = 1+precision; 10.270 + for (float t=0; t<tmax; t+=precision) { 10.271 + const float 10.272 + xt = ax*t*t*t + bx*t*t + cx*t + dx, 10.273 + yt = ay*t*t*t + by*t*t + cy*t + dy; 10.274 + curve.insert(CImg<>::vector(xt,yt)); 10.275 + } 10.276 + } 10.277 + 10.278 + // Draw curve and display image 10.279 + //------------------------------- 10.280 + const float 10.281 + factx = (float)disp.dimx()/img0.dimx(), 10.282 + facty = (float)disp.dimy()/img0.dimy(); 10.283 + img = img0.get_resize(disp.dimx(),disp.dimy()); 10.284 + if (help) img.draw_image(help_img,0.6f); 10.285 + if (interp && show_outline) { 10.286 + CImg<> npoints = points.get_append('x'); 10.287 + npoints.get_shared_line(0)*=factx; 10.288 + npoints.get_shared_line(1)*=facty; 10.289 + img.draw_polygon(npoints,red,0.4f); 10.290 + if (closed) img.draw_polygon(npoints,yellow,0.8f,0x11111111); 10.291 + else img.draw_line(npoints,yellow,0.8f,0x11111111); 10.292 + } 10.293 + CImg<> ncurve = curve.get_append('x'); 10.294 + ncurve.get_shared_line(0)*=factx; 10.295 + ncurve.get_shared_line(1)*=facty; 10.296 + if (closed) img.draw_polygon(ncurve,white,1.0f,~0U); 10.297 + else img.draw_line(ncurve,white); 10.298 + 10.299 + if (show_points) cimglist_for(points,p) { 10.300 + const float 10.301 + x = points(p,0)*factx, 10.302 + y = points(p,1)*facty; 10.303 + if (show_tangents) { 10.304 + const float 10.305 + u = tangents(p,0), 10.306 + v = tangents(p,1), 10.307 + n = 1e-8f + (float)std::sqrt(u*u+v*v), 10.308 + nu = u/n, 10.309 + nv = v/n; 10.310 + img.draw_arrow((int)(x-15*nu),(int)(y-15*nv),(int)(x+15*nu),(int)(y+15*nv),green); 10.311 + } 10.312 + if (show_indices) img.draw_text((int)x,(int)(y-16),"%d",purple,black,1,6,p); 10.313 + if (show_coordinates) img.draw_text((int)(x-24),(int)(y+8),"(%d,%d)",yellow,black,0.5f,6,(int)points(p,0),(int)points(p,1)); 10.314 + img.draw_circle((int)x,(int)y,3,red,0.7f); 10.315 + } 10.316 + 10.317 + img.display(disp); 10.318 + disp.wait(); 10.319 + 10.320 + if (disp.is_resized) disp.resize(false); 10.321 + } 10.322 + 10.323 + // Save output result and exit 10.324 + //----------------------------- 10.325 + if (file_op) { 10.326 + std::fprintf(stderr," - Save control points in '%s'\n",cimg::basename(file_op)); 10.327 + points.get_append('x').transpose().save(file_op); 10.328 + } 10.329 + if (file_oc) { 10.330 + std::fprintf(stderr," - Save curve points in '%s'\n",cimg::basename(file_oc)); 10.331 + curve.get_append('x').transpose().save(file_oc); 10.332 + } 10.333 + if (file_od) { 10.334 + std::fprintf(stderr," - Computing distance function, please wait...."); std::fflush(stderr); 10.335 + CImg<> ncurve = (closed?(+curve).insert(curve[0]):curve).get_append('x'); 10.336 + const float zero = 0.0f, one = 1.0f; 10.337 + CImg<> distance = 10.338 + CImg<>(img0.dimx(),img0.dimy(),1,1,-1.0f).draw_line(ncurve,&zero).draw_fill(0,0,&one). 10.339 + distance_hamilton(200); 10.340 + std::fprintf(stderr,"\n - Save distance function in '%s'\n",cimg::basename(file_od)); 10.341 + distance.save(file_od); 10.342 + } 10.343 + 10.344 + std::fprintf(stderr," - Exit.\n"); 10.345 + std::exit(0); 10.346 + return 0; 10.347 +}
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 11.2 +++ b/PTdecode/CImg-1.3.0/examples/dtmri_view.cpp Mon Aug 03 14:09:20 2009 +0100 11.3 @@ -0,0 +1,564 @@ 11.4 +/* 11.5 + # 11.6 + # File : dtmri_view.cpp 11.7 + # ( C++ source file ) 11.8 + # 11.9 + # Description : A viewer of Diffusion-Tensor MRI volumes (medical imaging). 11.10 + # This file is a part of the CImg Library project. 11.11 + # ( http://cimg.sourceforge.net ) 11.12 + # 11.13 + # Copyright : David Tschumperle 11.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 11.15 + # 11.16 + # License : CeCILL v2.0 11.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 11.18 + # 11.19 + # This software is governed by the CeCILL license under French law and 11.20 + # abiding by the rules of distribution of free software. You can use, 11.21 + # modify and/ or redistribute the software under the terms of the CeCILL 11.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 11.23 + # "http://www.cecill.info". 11.24 + # 11.25 + # As a counterpart to the access to the source code and rights to copy, 11.26 + # modify and redistribute granted by the license, users are provided only 11.27 + # with a limited warranty and the software's author, the holder of the 11.28 + # economic rights, and the successive licensors have only limited 11.29 + # liability. 11.30 + # 11.31 + # In this respect, the user's attention is drawn to the risks associated 11.32 + # with loading, using, modifying and/or developing or reproducing the 11.33 + # software by the user in light of its specific status of free software, 11.34 + # that may mean that it is complicated to manipulate, and that also 11.35 + # therefore means that it is reserved for developers and experienced 11.36 + # professionals having in-depth computer knowledge. Users are therefore 11.37 + # encouraged to load and test the software's suitability as regards their 11.38 + # requirements in conditions enabling the security of their systems and/or 11.39 + # data to be ensured and, more generally, to use and operate it in the 11.40 + # same conditions as regards security. 11.41 + # 11.42 + # The fact that you are presently reading this means that you have had 11.43 + # knowledge of the CeCILL license and that you accept its terms. 11.44 + # 11.45 +*/ 11.46 + 11.47 +#include "CImg.h" 11.48 +using namespace cimg_library; 11.49 + 11.50 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 11.51 +#ifdef cimg_use_visualcpp6 11.52 +#define std 11.53 +#endif 11.54 +#ifdef min 11.55 +#undef min 11.56 +#undef max 11.57 +#endif 11.58 + 11.59 +// Compute fractional anisotropy (FA) of a tensor 11.60 +//------------------------------------------- 11.61 +template<typename T> float get_FA(const T& val1, const T& val2, const T& val3) { 11.62 + const float 11.63 + l1 = val1>0?val1:0, l2 = val2>0?val2:0, l3 = val3>0?val3:0, 11.64 + lm = (l1+l2+l3)/3, 11.65 + tr2 = 2*( l1*l1 + l2*l2 + l3*l3 ), 11.66 + ll1 = l1-lm, 11.67 + ll2 = l2-lm, 11.68 + ll3 = l3-lm; 11.69 + if (tr2>0) return (float)std::sqrt( 3*(ll1*ll1 + ll2*ll2 + ll3*ll3)/tr2 ); 11.70 + return 0; 11.71 +} 11.72 + 11.73 +// Insert an ellipsoid in a CImg 3D scene 11.74 +//---------------------------------------- 11.75 +template<typename t,typename tp,typename tf,typename tc> 11.76 +void insert_ellipsoid(const CImg<t>& tensor,const float X,const float Y,const float Z,const float tfact, 11.77 + const float vx, const float vy, const float vz, 11.78 + CImgList<tp>& points, CImgList<tf>& faces, CImgList<tc>& colors, 11.79 + const unsigned int res1 = 20, const unsigned int res2 = 20) { 11.80 + 11.81 + // Compute eigen elements 11.82 + const float l1 = tensor[0], l2 = tensor[1], l3 = tensor[2], fa = get_FA(l1,l2,l3); 11.83 + 11.84 + CImg<> vec = CImg<>::matrix(tensor[3],tensor[6],tensor[9], 11.85 + tensor[4],tensor[7],tensor[10], 11.86 + tensor[5],tensor[8],tensor[11]); 11.87 + const int 11.88 + r = (int)cimg::min(30+1.5f*cimg::abs(255*fa*tensor[3]),255.0f), 11.89 + g = (int)cimg::min(30+1.5f*cimg::abs(255*fa*tensor[4]),255.0f), 11.90 + b = (int)cimg::min(30+1.5f*cimg::abs(255*fa*tensor[5]),255.0f); 11.91 + 11.92 + // Define mesh points 11.93 + const unsigned int N0 = points.size; 11.94 + for (unsigned int v=1; v<res2; v++) 11.95 + for (unsigned int u=0; u<res1; u++) { 11.96 + const float 11.97 + alpha = (float)(u*2*cimg::valuePI/res1), 11.98 + beta = (float)(-cimg::valuePI/2 + v*cimg::valuePI/res2), 11.99 + x = (float)(tfact*l1*std::cos(beta)*std::cos(alpha)), 11.100 + y = (float)(tfact*l2*std::cos(beta)*std::sin(alpha)), 11.101 + z = (float)(tfact*l3*std::sin(beta)); 11.102 + points.insert((CImg<tp>::vector(X,Y,Z)+vec*CImg<tp>::vector(x,y,z)).mul(CImg<tp>::vector(vx,vy,vz))); 11.103 + } 11.104 + const unsigned int N1 = points.size; 11.105 + points.insert((CImg<tp>::vector(X,Y,Z)+vec*CImg<tp>::vector(0,0,-l3*tfact))); 11.106 + points.insert((CImg<tp>::vector(X,Y,Z)+vec*CImg<tp>::vector(0,0,l3*tfact))); 11.107 + points[points.size-2](0)*=vx; points[points.size-2](1)*=vy; points[points.size-2](2)*=vz; 11.108 + points[points.size-1](0)*=vx; points[points.size-1](1)*=vy; points[points.size-1](2)*=vz; 11.109 + 11.110 + // Define mesh triangles 11.111 + for (unsigned int vv=0; vv<res2-2; vv++) 11.112 + for (unsigned int uu=0; uu<res1; uu++) { 11.113 + const int nv = (vv+1)%(res2-1), nu = (uu+1)%res1; 11.114 + faces.insert(CImg<tf>::vector(N0+res1*vv+nu,N0+res1*nv+uu,N0+res1*vv+uu)); 11.115 + faces.insert(CImg<tf>::vector(N0+res1*vv+nu,N0+res1*nv+nu,N0+res1*nv+uu)); 11.116 + colors.insert(CImg<tc>::vector(r,g,b)); 11.117 + colors.insert(CImg<tc>::vector(r,g,b)); 11.118 + } 11.119 + for (unsigned int uu=0; uu<res1; uu++) { 11.120 + const int nu = (uu+1)%res1; 11.121 + faces.insert(CImg<tf>::vector(N0+nu,N0+uu,N1)); 11.122 + faces.insert(CImg<tf>::vector(N0+res1*(res2-2)+nu, N1+1,N0+res1*(res2-2)+uu)); 11.123 + colors.insert(CImg<tc>::vector(r,g,b)); 11.124 + colors.insert(CImg<tc>::vector(r,g,b)); 11.125 + } 11.126 +} 11.127 + 11.128 +// Insert a fiber in a CImg 3D scene 11.129 +//----------------------------------- 11.130 +template<typename T,typename te,typename tp, typename tf, typename tc> 11.131 +void insert_fiber(const CImg<T>& fiber, const CImg<te>& eigen, const CImg<tc>& palette, 11.132 + const int xm, const int ym, const int zm, 11.133 + const float vx, const float vy, const float vz, 11.134 + CImgList<tp>& points, CImgList<tf>& primitives, CImgList<tc>& colors) { 11.135 + const int N0 = points.size; 11.136 + float x0 = fiber(0,0), y0 = fiber(0,1), z0 = fiber(0,2), fa0 = eigen.linear_atXYZ(x0,y0,z0,12); 11.137 + points.insert(CImg<>::vector(vx*(x0-xm),vy*(y0-ym),vz*(z0-zm))); 11.138 + for (int l=1; l<fiber.dimx(); l++) { 11.139 + float x1 = fiber(l,0), y1 = fiber(l,1), z1 = fiber(l,2), fa1 = eigen.linear_atXYZ(x1,y1,z1,12); 11.140 + points.insert(CImg<tp>::vector(vx*(x1-xm),vy*(y1-ym),vz*(z1-zm))); 11.141 + primitives.insert(CImg<tf>::vector(N0+l-1,N0+l)); 11.142 + const unsigned char 11.143 + icol = (unsigned char)(fa0*255), 11.144 + r = palette(icol,0), 11.145 + g = palette(icol,1), 11.146 + b = palette(icol,2); 11.147 + colors.insert(CImg<unsigned char>::vector(r,g,b)); 11.148 + x0=x1; y0=y1; z0=z1; fa0=fa1; 11.149 + } 11.150 +} 11.151 + 11.152 +// Compute fiber tracking using 4th-order Runge Kutta integration 11.153 +//----------------------------------------------------------------- 11.154 +template<typename T> 11.155 +CImg<> get_fibertrack(CImg<T>& eigen, 11.156 + const int X0, const int Y0, const int Z0, const float lmax=100, 11.157 + const float dl = 0.1f, const float FAmin=0.7f, const float cmin=0.5f) { 11.158 + 11.159 +#define align_eigen(i,j,k) \ 11.160 + { T &u = eigen(i,j,k,3), &v = eigen(i,j,k,4), &w = eigen(i,j,k,5); \ 11.161 + if (u*cu+v*cv+w*cw<0) { u=-u; v=-v; w=-w; }} 11.162 + 11.163 + CImgList<> resf; 11.164 + 11.165 + // Forward tracking 11.166 + float normU = 0, normpU = 0, l = 0, X = (float)X0, Y = (float)Y0, Z = (float)Z0; 11.167 + T 11.168 + pu = eigen(X0,Y0,Z0,3), 11.169 + pv = eigen(X0,Y0,Z0,4), 11.170 + pw = eigen(X0,Y0,Z0,5); 11.171 + normpU = (float)std::sqrt(pu*pu+pv*pv+pw*pw); 11.172 + bool stopflag = false; 11.173 + 11.174 + while (!stopflag) { 11.175 + if (X<0 || X>eigen.dimx()-1 || Y<0 || Y>eigen.dimy()-1 || Z<0 || Z>eigen.dimz()-1 || 11.176 + eigen((int)X,(int)Y,(int)Z,12)<FAmin || l>lmax) stopflag = true; 11.177 + else { 11.178 + resf.insert(CImg<>::vector(X,Y,Z)); 11.179 + 11.180 + const int 11.181 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>=eigen.dimx())?eigen.dimx()-1:cx+1, 11.182 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>=eigen.dimy())?eigen.dimy()-1:cy+1, 11.183 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>=eigen.dimz())?eigen.dimz()-1:cz+1; 11.184 + const T cu = eigen(cx,cy,cz,3), cv = eigen(cx,cy,cz,4), cw = eigen(cx,cy,cz,5); 11.185 + 11.186 + align_eigen(px,py,pz); align_eigen(cx,py,pz); align_eigen(nx,py,pz); 11.187 + align_eigen(px,cy,pz); align_eigen(cx,cy,pz); align_eigen(nx,cy,pz); 11.188 + align_eigen(px,ny,pz); align_eigen(cx,ny,pz); align_eigen(nx,ny,pz); 11.189 + align_eigen(px,py,cz); align_eigen(cx,py,cz); align_eigen(nx,py,cz); 11.190 + align_eigen(px,cy,cz); align_eigen(nx,cy,cz); 11.191 + align_eigen(px,ny,cz); align_eigen(cx,ny,cz); align_eigen(nx,ny,cz); 11.192 + align_eigen(px,py,nz); align_eigen(cx,py,nz); align_eigen(nx,py,nz); 11.193 + align_eigen(px,cy,nz); align_eigen(cx,cy,nz); align_eigen(nx,cy,nz); 11.194 + align_eigen(px,ny,nz); align_eigen(cx,ny,nz); align_eigen(nx,ny,nz); 11.195 + 11.196 + const T 11.197 + u0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,3), 11.198 + v0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,4), 11.199 + w0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,5), 11.200 + u1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,3), 11.201 + v1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,4), 11.202 + w1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,5), 11.203 + u2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,3), 11.204 + v2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,4), 11.205 + w2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,5), 11.206 + u3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,3), 11.207 + v3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,4), 11.208 + w3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,5); 11.209 + T 11.210 + u = u0/3 + 2*u1/3 + 2*u2/3 + u3/3, 11.211 + v = v0/3 + 2*v1/3 + 2*v2/3 + v3/3, 11.212 + w = w0/3 + 2*w1/3 + 2*w2/3 + w3/3; 11.213 + if (u*pu+v*pv+w*pw<0) { u=-u; v=-v; w=-w; } 11.214 + normU = (float)std::sqrt(u*u+v*v+w*w); 11.215 + const float scal = (u*pu+v*pv+w*pw)/(normU*normpU); 11.216 + if (scal<cmin) stopflag=true; 11.217 + 11.218 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 11.219 + normpU = normU; 11.220 + l+=dl; 11.221 + } 11.222 + } 11.223 + 11.224 + // Backward tracking 11.225 + l = dl; X = (float)X0; Y = (float)Y0; Z = (float)Z0; 11.226 + pu = eigen(X0,Y0,Z0,3); 11.227 + pv = eigen(X0,Y0,Z0,4); 11.228 + pw = eigen(X0,Y0,Z0,5); 11.229 + normpU = (float)std::sqrt(pu*pu+pv*pv+pw*pw); 11.230 + stopflag = false; 11.231 + 11.232 + while (!stopflag) { 11.233 + if (X<0 || X>eigen.dimx()-1 || Y<0 || Y>eigen.dimy()-1 || Z<0 || Z>eigen.dimz()-1 || 11.234 + eigen((int)X,(int)Y,(int)Z,12)<FAmin || l>lmax) stopflag = true; 11.235 + else { 11.236 + 11.237 + const int 11.238 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>=eigen.dimx())?eigen.dimx()-1:cx+1, 11.239 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>=eigen.dimy())?eigen.dimy()-1:cy+1, 11.240 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>=eigen.dimz())?eigen.dimz()-1:cz+1; 11.241 + const T cu = eigen(cx,cy,cz,3), cv = eigen(cx,cy,cz,4), cw = eigen(cx,cy,cz,5); 11.242 + 11.243 + align_eigen(px,py,pz); align_eigen(cx,py,pz); align_eigen(nx,py,pz); 11.244 + align_eigen(px,cy,pz); align_eigen(cx,cy,pz); align_eigen(nx,cy,pz); 11.245 + align_eigen(px,ny,pz); align_eigen(cx,ny,pz); align_eigen(nx,ny,pz); 11.246 + align_eigen(px,py,cz); align_eigen(cx,py,cz); align_eigen(nx,py,cz); 11.247 + align_eigen(px,cy,cz); align_eigen(nx,cy,cz); 11.248 + align_eigen(px,ny,cz); align_eigen(cx,ny,cz); align_eigen(nx,ny,cz); 11.249 + align_eigen(px,py,nz); align_eigen(cx,py,nz); align_eigen(nx,py,nz); 11.250 + align_eigen(px,cy,nz); align_eigen(cx,cy,nz); align_eigen(nx,cy,nz); 11.251 + align_eigen(px,ny,nz); align_eigen(cx,ny,nz); align_eigen(nx,ny,nz); 11.252 + 11.253 + const T 11.254 + u0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,3), 11.255 + v0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,4), 11.256 + w0 = 0.5f*dl*eigen.linear_atXYZ(X,Y,Z,5), 11.257 + u1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,3), 11.258 + v1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,4), 11.259 + w1 = 0.5f*dl*eigen.linear_atXYZ(X+u0,Y+v0,Z+w0,5), 11.260 + u2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,3), 11.261 + v2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,4), 11.262 + w2 = 0.5f*dl*eigen.linear_atXYZ(X+u1,Y+v1,Z+w1,5), 11.263 + u3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,3), 11.264 + v3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,4), 11.265 + w3 = 0.5f*dl*eigen.linear_atXYZ(X+u2,Y+v2,Z+w2,5); 11.266 + T 11.267 + u = u0/3 + 2*u1/3 + 2*u2/3 + u3/3, 11.268 + v = v0/3 + 2*v1/3 + 2*v2/3 + v3/3, 11.269 + w = w0/3 + 2*w1/3 + 2*w2/3 + w3/3; 11.270 + if (u*pu+v*pv+w*pw<0) { u=-u; v=-v; w=-w; } 11.271 + normU = (float)std::sqrt(u*u+v*v+w*w); 11.272 + const float scal = (u*pu+v*pv+w*pw)/(normU*normpU); 11.273 + if (scal<cmin) stopflag=true; 11.274 + 11.275 + X-=(pu=u); Y-=(pv=v); Z-=(pw=w); 11.276 + normpU=normU; 11.277 + l+=dl; 11.278 + 11.279 + resf.insert(CImg<>::vector(X,Y,Z),0); 11.280 + } 11.281 + } 11.282 + 11.283 + return resf.get_append('x'); 11.284 +} 11.285 + 11.286 +// Main procedure 11.287 +//---------------- 11.288 +int main(int argc,char **argv) { 11.289 + 11.290 + // Read and init data 11.291 + //-------------------- 11.292 + cimg_usage("A viewer of Diffusion-Tensor MRI volumes."); 11.293 + const char *file_i = cimg_option("-i",(char*)0,"Input : Filename of tensor field (volume wxhxdx6)"); 11.294 + const char* vsize = cimg_option("-vsize","1x1x1","Input : Voxel aspect"); 11.295 + const bool normalize = cimg_option("-normalize",true,"Input : Enable tensor normalization"); 11.296 + const char *file_f = cimg_option("-f",(char*)0,"Input : Input fibers\n"); 11.297 + const float dl = cimg_option("-dl",0.5f,"Fiber computation : Integration step"); 11.298 + const float famin = cimg_option("-famin",0.3f,"Fiber computation : Fractional Anisotropy threshold"); 11.299 + const float cmin = cimg_option("-cmin",0.2f,"Fiber computation : Curvature threshold"); 11.300 + const float lmin = cimg_option("-lmin",10.0f,"Fiber computation : Minimum length\n"); 11.301 + const float lmax = cimg_option("-lmax",1000.0f,"Fiber computation : Maximum length\n"); 11.302 + const float tfact = cimg_option("-tfact",1.2f,"Display : Tensor size factor"); 11.303 + const char *bgcolor = cimg_option("-bg","0,0,0","Display : Background color"); 11.304 + unsigned int bgr=0, bgg=0, bgb=0; 11.305 + std::sscanf(bgcolor,"%u%*c%u%*c%u",&bgr,&bgg,&bgb); 11.306 + 11.307 + CImg<> tensors; 11.308 + if (file_i) { 11.309 + std::fprintf(stderr,"\n- Loading tensors '%s'",cimg::basename(file_i)); 11.310 + tensors.load(file_i); 11.311 + } else { 11.312 + // Create a synthetic tensor field here 11.313 + std::fprintf(stderr,"\n- No input files : Creating a synthetic tensor field"); 11.314 + tensors.assign(32,32,32,6); 11.315 + const CImg<> Id = CImg<>::diagonal(0.3f,0.3f,0.3f); 11.316 + cimg_forXYZ(tensors,x,y,z) { 11.317 + const float 11.318 + u = x-tensors.dimx()/2.0f, 11.319 + v = y-tensors.dimy()/2.0f, 11.320 + w = z-tensors.dimz()/2.0f, 11.321 + norm = (float)std::sqrt(1e-5f+u*u+v*v+w*w), 11.322 + nu = u/norm, nv = v/norm, nw = w/norm; 11.323 + const CImg<> 11.324 + dir1 = CImg<>::vector(nu,nv,nw), 11.325 + dir2 = CImg<>::vector(-nv,nu,nw), 11.326 + dir3 = CImg<>::vector(nw*(nv-nu),-nw*(nu+nv),nu*nu+nv*nv); 11.327 + tensors.set_tensor_at(2.0*dir1*dir1.get_transpose() + 11.328 + 1.0*dir2*dir2.get_transpose() + 11.329 + 0.7*dir3*dir3.get_transpose(), 11.330 + x,y,z); 11.331 + } 11.332 + } 11.333 + float voxw=1,voxh=1,voxd=1; 11.334 + std::sscanf(vsize,"%f%*c%f%*c%f",&voxw,&voxh,&voxd); 11.335 + 11.336 + std::fprintf(stderr," : %ux%ux%u image, voxsize=%gx%gx%g.", 11.337 + tensors.dimx(),tensors.dimy(),tensors.dimz(), 11.338 + voxw,voxh,voxd); 11.339 + 11.340 + 11.341 + CImgList<> fibers; 11.342 + if (file_f) { 11.343 + std::fprintf(stderr,"\n- Loading fibers '%s'.",cimg::basename(file_f)); 11.344 + fibers.load(file_f); 11.345 + } 11.346 + 11.347 + const CImg<unsigned char> fiber_palette = 11.348 + CImg<>(2,1,1,3).fill(200,255,0,255,0,200).RGBtoHSV().resize(256,1,1,3,3).HSVtoRGB(); 11.349 + 11.350 + // Compute eigen elements 11.351 + //------------------------ 11.352 + std::fprintf(stderr,"\n- Compute eigen elements."); 11.353 + CImg<unsigned char> coloredFA(tensors.dimx(),tensors.dimy(),tensors.dimz(),3); 11.354 + CImg<> eigen(tensors.dimx(),tensors.dimy(),tensors.dimz(),13); 11.355 + CImg<> val,vec; 11.356 + float eigmax = 0; 11.357 + cimg_forXYZ(tensors,x,y,z) { 11.358 + tensors.get_tensor_at(x,y,z).symmetric_eigen(val,vec); 11.359 + eigen(x,y,z,0) = val[0]; eigen(x,y,z,1) = val[1]; eigen(x,y,z,2) = val[2]; 11.360 + if (val[0]<0) val[0]=0; 11.361 + if (val[1]<0) val[1]=0; 11.362 + if (val[2]<0) val[2]=0; 11.363 + if (val[0]>eigmax) eigmax = val[0]; 11.364 + eigen(x,y,z,3) = vec(0,0); eigen(x,y,z,4) = vec(0,1); eigen(x,y,z,5) = vec(0,2); 11.365 + eigen(x,y,z,6) = vec(1,0); eigen(x,y,z,7) = vec(1,1); eigen(x,y,z,8) = vec(1,2); 11.366 + eigen(x,y,z,9) = vec(2,0); eigen(x,y,z,10) = vec(2,1); eigen(x,y,z,11) = vec(2,2); 11.367 + const float fa = get_FA(val[0],val[1],val[2]); 11.368 + eigen(x,y,z,12) = fa; 11.369 + const int 11.370 + r = (int)cimg::min(255.0f,1.5f*cimg::abs(255*fa*vec(0,0))), 11.371 + g = (int)cimg::min(255.0f,1.5f*cimg::abs(255*fa*vec(0,1))), 11.372 + b = (int)cimg::min(255.0f,1.5f*cimg::abs(255*fa*vec(0,2))); 11.373 + coloredFA(x,y,z,0) = (unsigned char)r; 11.374 + coloredFA(x,y,z,1) = (unsigned char)g; 11.375 + coloredFA(x,y,z,2) = (unsigned char)b; 11.376 + } 11.377 + tensors.assign(); 11.378 + std::fprintf(stderr,"\n- Maximum diffusivity = %g, Maximum FA = %g",eigmax,eigen.get_shared_channel(12).max()); 11.379 + if (normalize) { 11.380 + std::fprintf(stderr,"\n- Normalize tensors."); 11.381 + eigen.get_shared_channels(0,2)/=eigmax; 11.382 + } 11.383 + 11.384 + // Init display and begin user interaction 11.385 + //----------------------------------------- 11.386 + std::fprintf(stderr,"\n- Open user window."); 11.387 + CImgDisplay disp(256,256,"DTMRI Viewer",0); 11.388 + CImgDisplay disp3d(800,600,"3D Local View",0,false,true); 11.389 + unsigned int XYZ[3]; 11.390 + XYZ[0] = eigen.dimx()/2; XYZ[1] = eigen.dimy()/2; XYZ[2] = eigen.dimz()/2; 11.391 + 11.392 + while (!disp.is_closed && disp.key!=cimg::keyQ && disp.key!=cimg::keyESC) { 11.393 + const CImg<int> s = coloredFA.get_select(disp,2,XYZ); 11.394 + if (!disp.is_closed) switch (disp.key) { 11.395 + 11.396 + // Open 3D visualization window 11.397 + //----------------------------- 11.398 + case cimg::keyA: 11.399 + case 0: { 11.400 + unsigned char white[1] = { 255 }; 11.401 + disp3d.display(CImg<unsigned char>(disp3d.dimx(),disp3d.dimy(),1,1,0).draw_text(10,10,"Please wait...",white)).show(); 11.402 + int xm,ym,zm,xM,yM,zM; 11.403 + if (!disp.key) { xm=s[0]; ym=s[1]; zm=s[2]; xM=s[3]; yM=s[4]; zM=s[5]; } 11.404 + else { xm=ym=zm=0; xM=eigen.dimx()-1; yM=eigen.dimy()-1; zM=eigen.dimy()-1; } 11.405 + const CImg<> img = eigen.get_crop(xm,ym,zm,xM,yM,zM); 11.406 + CImgList<> points; 11.407 + CImgList<unsigned int> primitives; 11.408 + CImgList<unsigned char> colors; 11.409 + 11.410 + // Add ellipsoids to the 3D scene 11.411 + int X = img.dimx()/2, Y = img.dimy()/2, Z = img.dimz()/2; 11.412 + { cimg_forXY(img,x,y) insert_ellipsoid(img.get_vector_at(x,y,Z),(float)x,(float)y,(float)Z,tfact,voxw,voxh,voxd,points,primitives,colors,10,6); } 11.413 + { cimg_forXZ(img,x,z) insert_ellipsoid(img.get_vector_at(x,Y,z),(float)x,(float)Y,(float)z,tfact,voxw,voxh,voxd,points,primitives,colors,10,6); } 11.414 + { cimg_forYZ(img,y,z) insert_ellipsoid(img.get_vector_at(X,y,z),(float)X,(float)y,(float)z,tfact,voxw,voxh,voxd,points,primitives,colors,10,6); } 11.415 + 11.416 + // Add computed fibers to the 3D scene 11.417 + const CImg<> veigen = eigen.get_crop(xm,ym,zm,xM,yM,zM); 11.418 + cimglist_for(fibers,l) { 11.419 + const CImg<>& fiber = fibers[l]; 11.420 + if (fiber.dimx()) insert_fiber(fiber,eigen,fiber_palette, 11.421 + xm,ym,zm,voxw,voxh,voxd, 11.422 + points,primitives,colors); 11.423 + } 11.424 + 11.425 + // Display 3D object 11.426 + CImg<unsigned char> visu = CImg<unsigned char>(3,disp3d.dimx(),disp3d.dimy(),1,0).fill(bgr,bgg,bgb).permute_axes("yzvx"); 11.427 + bool stopflag = false; 11.428 + while (!disp3d.is_closed && !stopflag) { 11.429 + visu.display_object3d(disp3d,points,primitives,colors,true,4,-1,false,800,0.05f,1.0f); 11.430 + switch (disp3d.key) { 11.431 + case cimg::keyM: { // Create movie 11.432 + std::fprintf(stderr,"\n- Movie mode.\n"); 11.433 + const unsigned int N = 256; 11.434 + CImg<> pts = points.get_append('x'); 11.435 + CImgList<> cpoints(points); 11.436 + CImg<> x = pts.get_shared_line(0), y = pts.get_shared_line(1), z = pts.get_shared_line(2); 11.437 + float 11.438 + xm, xM = x.maxmin(xm), 11.439 + ym, yM = y.maxmin(ym), 11.440 + zm, zM = z.maxmin(zm), 11.441 + ratio = 2.0f*cimg::min(visu.dimx(),visu.dimy())/(3.0f*cimg::max(xM-xm,yM-ym,zM-zm)), 11.442 + dx = 0.5f*(xM+xm), dy = 0.5f*(yM+ym), dz = 0.5f*(zM+zm); 11.443 + cimglist_for(points,l) { 11.444 + cpoints(l,0) = (float)((points(l,0)-dx)*ratio); 11.445 + cpoints(l,1) = (float)((points(l,1)-dy)*ratio); 11.446 + cpoints(l,2) = (float)((points(l,2)-dz)*ratio); 11.447 + } 11.448 + 11.449 + for (unsigned int i=0; i<N; i++) { 11.450 + std::fprintf(stderr,"\r- Frame %u/%u.",i,N); 11.451 + const float alpha = (float)(i*2*cimg::valuePI/N); 11.452 + const CImg<> rot = CImg<>::rotation_matrix(0,1,0,alpha)*CImg<>::rotation_matrix(1,0,0,1.30f); 11.453 + CImgList<> rotated(cpoints); 11.454 + cimglist_for(rotated,l) rotated[l] = rot*cpoints[l]; 11.455 + visu.fill(0).draw_object3d(visu.dimx()/2.0f,visu.dimy()/2.0f,-500.0f,rotated,primitives,colors, 11.456 + 4,false,800.0f,visu.dimx()/2.0f,visu.dimy()/2.0f,-800.0f,0.05f,1.0f).display(disp3d); 11.457 + visu.save("frame.png",i); 11.458 + } 11.459 + visu.fill(0); 11.460 + } break; 11.461 + default: stopflag = true; 11.462 + } 11.463 + } 11.464 + if (disp3d.is_fullscreen) disp3d.toggle_fullscreen().resize(800,600).close(); 11.465 + } break; 11.466 + 11.467 + // Compute region statistics 11.468 + //--------------------------- 11.469 + case cimg::keyR: { 11.470 + std::fprintf(stderr,"\n- Statistics computation. Select region."); std::fflush(stderr); 11.471 + const CImg<int> s = coloredFA.get_select(disp,2,XYZ); 11.472 + int xm,ym,zm,xM,yM,zM; 11.473 + if (!disp.key) { xm=s[0]; ym=s[1]; zm=s[2]; xM=s[3]; yM=s[4]; zM=s[5]; } 11.474 + else { xm=ym=zm=0; xM=eigen.dimx()-1; yM=eigen.dimy()-1; zM=eigen.dimy()-1; } 11.475 + const CImg<> img = eigen.get_crop(xm,ym,zm,xM,yM,zM); 11.476 + std::fprintf(stderr,"\n- Mean diffusivity = %g, Mean FA = %g\n", 11.477 + eigen.get_shared_channel(0).mean(), 11.478 + eigen.get_shared_channel(12).mean()); 11.479 + } break; 11.480 + 11.481 + // Track fiber bundle (single region) 11.482 + //---------------------------------- 11.483 + case cimg::keyF: { 11.484 + std::fprintf(stderr,"\n- Tracking mode (single region). Select starting region.\n"); std::fflush(stderr); 11.485 + const CImg<int> s = coloredFA.get_select(disp,2,XYZ); 11.486 + const unsigned int N = fibers.size; 11.487 + for (int z=s[2]; z<=s[5]; z++) 11.488 + for (int y=s[1]; y<=s[4]; y++) 11.489 + for (int x=s[0]; x<=s[3]; x++) { 11.490 + const CImg<> fiber = get_fibertrack(eigen,x,y,z,lmax,dl,famin,cmin); 11.491 + if (fiber.dimx()>lmin) { 11.492 + std::fprintf(stderr,"\rFiber %u : Starting from (%d,%d,%d)\t\t",fibers.size,x,y,z); 11.493 + fibers.insert(fiber); 11.494 + } 11.495 + } 11.496 + std::fprintf(stderr,"\n- %u fiber(s) added (total %u).",fibers.size-N,fibers.size); 11.497 + } break; 11.498 + 11.499 + // Track fiber bundle (double regions) 11.500 + //------------------------------------ 11.501 + case cimg::keyG: { 11.502 + std::fprintf(stderr,"\n- Tracking mode (double region). Select starting region."); std::fflush(stderr); 11.503 + const CImg<int> s = coloredFA.get_select(disp,2,XYZ); 11.504 + std::fprintf(stderr," Select ending region."); std::fflush(stderr); 11.505 + const CImg<int> ns = coloredFA.get_select(disp,2,XYZ); 11.506 + const unsigned int N = fibers.size; 11.507 + 11.508 + // Track from start to end 11.509 + for (int z=s[2]; z<=s[5]; z++) 11.510 + for (int y=s[1]; y<=s[4]; y++) 11.511 + for (int x=s[0]; x<=s[3]; x++) { 11.512 + const CImg<> fiber = get_fibertrack(eigen,x,y,z,lmax,dl,famin,cmin); 11.513 + if (fiber.dimx()>lmin) { 11.514 + bool valid_fiber = false; 11.515 + cimg_forX(fiber,k) { 11.516 + const int fx = (int)fiber(k,0), fy = (int)fiber(k,1), fz = (int)fiber(k,2); 11.517 + if (fx>=ns[0] && fx<=ns[3] && 11.518 + fy>=ns[1] && fy<=ns[4] && 11.519 + fz>=ns[2] && fz<=ns[5]) valid_fiber = true; 11.520 + } 11.521 + if (valid_fiber) fibers.insert(fiber); 11.522 + } 11.523 + } 11.524 + 11.525 + // Track from end to start 11.526 + { for (int z=ns[2]; z<=ns[5]; z++) 11.527 + for (int y=ns[1]; y<=ns[4]; y++) 11.528 + for (int x=ns[0]; x<=ns[3]; x++) { 11.529 + const CImg<> fiber = get_fibertrack(eigen,x,y,z,lmax,dl,famin,cmin); 11.530 + if (fiber.dimx()>lmin) { 11.531 + bool valid_fiber = false; 11.532 + cimg_forX(fiber,k) { 11.533 + const int fx = (int)fiber(k,0), fy = (int)fiber(k,1), fz = (int)fiber(k,2); 11.534 + if (fx>=s[0] && fx<=s[3] && 11.535 + fy>=s[1] && fy<=s[4] && 11.536 + fz>=s[2] && fz<=s[5]) valid_fiber = true; 11.537 + } 11.538 + if (valid_fiber) { 11.539 + std::fprintf(stderr,"\rFiber %u : Starting from (%d,%d,%d)\t\t",fibers.size,x,y,z); 11.540 + fibers.insert(fiber); 11.541 + } 11.542 + } 11.543 + }} 11.544 + 11.545 + std::fprintf(stderr," %u fiber(s) added (total %u).",fibers.size-N,fibers.size); 11.546 + } break; 11.547 + 11.548 + // Clear fiber bundle 11.549 + //------------------- 11.550 + case cimg::keyC: { 11.551 + std::fprintf(stderr,"\n- Fibers removed."); 11.552 + fibers.assign(); 11.553 + } break; 11.554 + 11.555 + // Save fibers 11.556 + //------------- 11.557 + case cimg::keyS: { 11.558 + fibers.save("fibers.cimg"); 11.559 + std::fprintf(stderr,"\n- Fibers saved."); 11.560 + } break; 11.561 + 11.562 + } 11.563 + } 11.564 + 11.565 + std::fprintf(stderr,"\n- Exit.\n\n\n"); 11.566 + return 0; 11.567 +}
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 12.2 +++ b/PTdecode/CImg-1.3.0/examples/edge_explorer.cpp Mon Aug 03 14:09:20 2009 +0100 12.3 @@ -0,0 +1,227 @@ 12.4 +/* 12.5 + # 12.6 + # File : edge_explorer.cpp 12.7 + # ( C++ source file ) 12.8 + # 12.9 + # Description : Real time edge detection while moving a ROI 12.10 + # (rectangle of interest) over the original image. 12.11 + # This file is a part of the CImg Library project. 12.12 + # ( http://cimg.sourceforge.net ) 12.13 + # 12.14 + # Copyright : Orges Leka 12.15 + # ( oleka(at)students.uni-mainz.de ) 12.16 + # 12.17 + # License : CeCILL v2.0 12.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 12.19 + # 12.20 + # This software is governed by the CeCILL license under French law and 12.21 + # abiding by the rules of distribution of free software. You can use, 12.22 + # modify and/ or redistribute the software under the terms of the CeCILL 12.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 12.24 + # "http://www.cecill.info". 12.25 + # 12.26 + # As a counterpart to the access to the source code and rights to copy, 12.27 + # modify and redistribute granted by the license, users are provided only 12.28 + # with a limited warranty and the software's author, the holder of the 12.29 + # economic rights, and the successive licensors have only limited 12.30 + # liability. 12.31 + # 12.32 + # In this respect, the user's attention is drawn to the risks associated 12.33 + # with loading, using, modifying and/or developing or reproducing the 12.34 + # software by the user in light of its specific status of free software, 12.35 + # that may mean that it is complicated to manipulate, and that also 12.36 + # therefore means that it is reserved for developers and experienced 12.37 + # professionals having in-depth computer knowledge. Users are therefore 12.38 + # encouraged to load and test the software's suitability as regards their 12.39 + # requirements in conditions enabling the security of their systems and/or 12.40 + # data to be ensured and, more generally, to use and operate it in the 12.41 + # same conditions as regards security. 12.42 + # 12.43 + # The fact that you are presently reading this means that you have had 12.44 + # knowledge of the CeCILL license and that you accept its terms. 12.45 + # 12.46 +*/ 12.47 + 12.48 +#include "CImg.h" 12.49 +using namespace cimg_library; 12.50 + 12.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 12.52 +#ifdef cimg_use_visualcpp6 12.53 +#define std 12.54 +#endif 12.55 +#ifdef min 12.56 +#undef min 12.57 +#undef max 12.58 +#endif 12.59 + 12.60 +#ifndef cimg_imagepath 12.61 +#define cimg_imagepath "img/" 12.62 +#endif 12.63 + 12.64 +// Start main procedure 12.65 +//----------------------- 12.66 +int main(int argc, char** argv) { 12.67 + 12.68 + // Usage of the program displayed at the command line 12.69 + cimg_usage("Real time edge detection with CImg. (c) Orges Leka"); 12.70 + 12.71 + // Read command line arguments 12.72 + // With cimg_option we can get a new name for the image which is to be loaded from the command line. 12.73 + const char* img_name = cimg_option("-i", cimg_imagepath "lena.pgm","Input image."); 12.74 + double 12.75 + alpha = cimg_option("-a",1.0,"Blurring the gradient image."), 12.76 + thresL = cimg_option("-tl",13.5,"Lower thresholding used in Hysteresis."), 12.77 + thresH = cimg_option("-th",13.6,"Higher thresholding used in Hysteresis."); 12.78 + const unsigned int 12.79 + mode = cimg_option("-m",1,"Detection mode: 1 = Hysteresis, 2 = Gradient angle."), 12.80 + factor = cimg_option("-s",80,"Half-size of edge-explorer window."); 12.81 + 12.82 + cimg_help("\nAdditional notes : user can press following keys on main display window :\n" 12.83 + " - Left arrow : Decrease alpha.\n" 12.84 + " - Right arrow : Increase alpha.\n"); 12.85 + 12.86 + // Construct a new image called 'edge' of size (2*factor,2*factor) 12.87 + // and of type 'unsigned char'. 12.88 + CImg<unsigned char> edge(2*factor,2*factor); 12.89 + CImgDisplay disp_edge(512,512,"Edge Explorer"); 12.90 + 12.91 + // Load the image with the name 'img_name' into the CImg 'img'. 12.92 + // and create a display window 'disp' for the image 'img'. 12.93 + const CImg<unsigned char> img(img_name); 12.94 + CImgDisplay disp(img,"Original Image"); 12.95 + 12.96 + // Begin main interaction loop. 12.97 + int x = 0, y = 0; 12.98 + bool redraw = false; 12.99 + while (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC) { 12.100 + disp.wait(100); 12.101 + if (disp.button&1) { alpha+=0.05; redraw = true; } 12.102 + if (disp.button&2) { alpha-=0.05; redraw = true; } 12.103 + if (disp.wheel) { alpha+=0.05*disp.wheel; disp.wheel = 0; redraw = true; } 12.104 + if (alpha<0) alpha = 0; 12.105 + if (disp_edge.is_resized) { disp_edge.resize(); redraw = true; } 12.106 + if (disp_edge.is_closed) disp_edge.show(); 12.107 + if (disp.is_resized) disp.resize(disp); 12.108 + if (disp.mouse_x>=0) { 12.109 + x = disp.mouse_x; // Getting the current position of the mouse. 12.110 + y = disp.mouse_y; // 12.111 + redraw = true; // The image should be redrawn. 12.112 + } 12.113 + if (redraw) { 12.114 + disp_edge.set_title("Edge explorer (alpha=%g)",alpha); 12.115 + const int 12.116 + x0 = x-factor, y0 = y-factor, // These are the coordinates for the red rectangle 12.117 + x1 = x+factor, y1 = y+factor; // to be drawn on the original image. 12.118 + const unsigned char 12.119 + red[3] = { 255,0,0 }, // 12.120 + black[3] = { 0,0,0 }; // Defining the colors we need for drawing. 12.121 + 12.122 + (+img).draw_rectangle(x0,y0,x1,y1,red,1.0f,0x55555555U).display(disp); 12.123 + //^ We draw the red rectangle on the original window using 'draw_line'. Then we display the result via '.display(disp)' . 12.124 + // Observe, that the color 'red' has to be of type 'const unsigned char', 12.125 + // since the image 'img' is of type 'const CImg<unsigned char>'. 12.126 + 12.127 + //'normalize' is used to get a greyscaled image. 12.128 + CImg<> visu_bw = CImg<>(img).get_crop(x0,y0,x1,y1).get_pointwise_norm().normalize(0,255).resize(-100,-100,1,2,2); 12.129 + // get_crop(x0,y0,x1,y1) gets the rectangle we are interested in. 12.130 + 12.131 + edge.fill(255); // Background color in the edge-detection window is white. 12.132 + 12.133 + // grad[0] is the gradient image of 'visu_bw' in x-direction. 12.134 + // grad[1] is the gradient image of 'visu_bw' in y-direction. 12.135 + CImgList<> grad(visu_bw.blur((float)alpha).normalize(0,255).get_gradient()); 12.136 + 12.137 + // To avoid unnecessary calculations in the image loops: 12.138 + const double 12.139 + pi = cimg::valuePI, 12.140 + p8 = pi/8.0, p38 = 3.0*p8, 12.141 + p58 = 5.0*p8, p78 = 7.0*p8; 12.142 + 12.143 + cimg_forXY(visu_bw,s,t) { 12.144 + // We take s,t instead of x,y, since x,y are already used. 12.145 + // s corresponds to the x-ordinate of the pixel while t corresponds to the y-ordinate. 12.146 + if ( 1 <= s && s <= visu_bw.dimx()-1 && 1 <= t && t <=visu_bw.dimy()-1) { // if - good points 12.147 + double 12.148 + Gs = grad[0](s,t), // 12.149 + Gt = grad[1](s,t), // The actual pixel is (s,t) 12.150 + Gst = cimg::abs(Gs) + cimg::abs(Gt), // 12.151 + // ^-- For efficient computation we observe that |Gs|+ |Gt| ~=~ sqrt( Gs^2 + Gt^2) 12.152 + Gr, Gur, Gu, Gul, Gl, Gdl, Gd, Gdr; 12.153 + // ^-- right, up right, up, up left, left, down left, down, down right. 12.154 + double theta = std::atan2(Gt,Gs)+pi; // theta is from the interval [0,Pi] 12.155 + switch(mode) { 12.156 + case 1: // Hysterese is applied 12.157 + if (Gst>=thresH) { edge.draw_point(s,t,black); } 12.158 + else if (thresL <= Gst && Gst < thresH) { 12.159 + // Neighbourhood of the actual pixel: 12.160 + Gr = cimg::abs(grad[0](s+1,t)) + cimg::abs(grad[1](s+1,t)); // right 12.161 + Gl = cimg::abs(grad[0](s-1,t)) + cimg::abs(grad[1](s-1,t)); // left 12.162 + Gur = cimg::abs(grad[0](s+1,t+1)) + cimg::abs(grad[1](s+1,t+1)); // up right 12.163 + Gdl = cimg::abs(grad[0](s-1,t-1)) + cimg::abs(grad[1](s-1,t-1)); // down left 12.164 + Gu = cimg::abs(grad[0](s,t+1)) + cimg::abs(grad[1](s,t+1)); // up 12.165 + Gd = cimg::abs(grad[0](s,t-1)) + cimg::abs(grad[1](s,t-1)); // down 12.166 + Gul = cimg::abs(grad[0](s-1,t+1)) + cimg::abs(grad[1](s-1,t+1)); // up left 12.167 + Gdr = cimg::abs(grad[0](s+1,t-1)) + cimg::abs(grad[1](s+1,t-1)); // down right 12.168 + if (Gr>=thresH || Gur>=thresH || Gu>=thresH || Gul>=thresH 12.169 + || Gl>=thresH || Gdl >=thresH || Gu >=thresH || Gdr >=thresH) { 12.170 + edge.draw_point(s,t,black); 12.171 + } 12.172 + }; 12.173 + break; 12.174 + case 2: // Angle 'theta' of the gradient (Gs,Gt) at the point (s,t). 12.175 + if(theta >= pi)theta-=pi; 12.176 + //rounding theta: 12.177 + if ((p8 < theta && theta <= p38 ) || (p78 < theta && theta <= pi)) { 12.178 + // See (*) below for explanation of the vocabulary used. 12.179 + // Direction-pixel is (s+1,t) with corresponding gradient value Gr. 12.180 + Gr = cimg::abs(grad[0](s+1,t)) + cimg::abs(grad[1](s+1,t)); // right 12.181 + // Contra-direction-pixel is (s-1,t) with corresponding gradient value Gl. 12.182 + Gl = cimg::abs(grad[0](s-1,t)) + cimg::abs(grad[1](s-1,t)); // left 12.183 + if (Gr < Gst && Gl < Gst) { 12.184 + edge.draw_point(s,t,black); 12.185 + } 12.186 + } 12.187 + else if ( p8 < theta && theta <= p38) { 12.188 + // Direction-pixel is (s+1,t+1) with corresponding gradient value Gur. 12.189 + Gur = cimg::abs(grad[0](s+1,t+1)) + cimg::abs(grad[1](s+1,t+1)); // up right 12.190 + // Contra-direction-pixel is (s-1,t-1) with corresponding gradient value Gdl. 12.191 + Gdl = cimg::abs(grad[0](s-1,t-1)) + cimg::abs(grad[1](s-1,t-1)); // down left 12.192 + if (Gur < Gst && Gdl < Gst) { 12.193 + edge.draw_point(s,t,black); 12.194 + } 12.195 + } 12.196 + else if ( p38 < theta && theta <= p58) { 12.197 + // Direction-pixel is (s,t+1) with corresponding gradient value Gu. 12.198 + Gu = cimg::abs(grad[0](s,t+1)) + cimg::abs(grad[1](s,t+1)); // up 12.199 + // Contra-direction-pixel is (s,t-1) with corresponding gradient value Gd. 12.200 + Gd = cimg::abs(grad[0](s,t-1)) + cimg::abs(grad[1](s,t-1)); // down 12.201 + if (Gu < Gst && Gd < Gst) { 12.202 + edge.draw_point(s,t,black); 12.203 + } 12.204 + } 12.205 + else if (p58 < theta && theta <= p78) { 12.206 + // Direction-pixel is (s-1,t+1) with corresponding gradient value Gul. 12.207 + Gul = cimg::abs(grad[0](s-1,t+1)) + cimg::abs(grad[1](s-1,t+1)); // up left 12.208 + // Contra-direction-pixel is (s+1,t-1) with corresponding gradient value Gdr. 12.209 + Gdr = cimg::abs(grad[0](s+1,t-1)) + cimg::abs(grad[1](s+1,t-1)); // down right 12.210 + if (Gul < Gst && Gdr < Gst) { 12.211 + edge.draw_point(s,t,black); 12.212 + } 12.213 + }; 12.214 + break; 12.215 + } // switch 12.216 + } // if good-points 12.217 + } // cimg_forXY */ 12.218 + edge.display(disp_edge); 12.219 + }// if redraw 12.220 + } // while 12.221 + return 0; 12.222 +} 12.223 + 12.224 +// (*) Comments to the vocabulary used: 12.225 +// If (s,t) is the current pixel, and G=(Gs,Gt) is the gradient at (s,t), 12.226 +// then the _direction_pixel_ of (s,t) shall be the one of the eight neighbour pixels 12.227 +// of (s,t) in whose direction the gradient G shows. 12.228 +// The _contra_direction_pixel is the pixel in the opposite direction in which the gradient G shows. 12.229 +// The _corresponding_gradient_value_ of the pixel (x,y) with gradient G = (Gx,Gy) 12.230 +// shall be |Gx|+|Gy| ~=~ sqrt(Gx^2+Gy^2).
13.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 13.2 +++ b/PTdecode/CImg-1.3.0/examples/fade_images.cpp Mon Aug 03 14:09:20 2009 +0100 13.3 @@ -0,0 +1,101 @@ 13.4 +/* 13.5 + # 13.6 + # File : fade_images.cpp 13.7 + # ( C++ source file ) 13.8 + # 13.9 + # Description : Compute a linear fading between two images. 13.10 + # This file is a part of the CImg Library project. 13.11 + # ( http://cimg.sourceforge.net ) 13.12 + # 13.13 + # Copyright : David Tschumperle 13.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 13.15 + # 13.16 + # License : CeCILL v2.0 13.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 13.18 + # 13.19 + # This software is governed by the CeCILL license under French law and 13.20 + # abiding by the rules of distribution of free software. You can use, 13.21 + # modify and/ or redistribute the software under the terms of the CeCILL 13.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 13.23 + # "http://www.cecill.info". 13.24 + # 13.25 + # As a counterpart to the access to the source code and rights to copy, 13.26 + # modify and redistribute granted by the license, users are provided only 13.27 + # with a limited warranty and the software's author, the holder of the 13.28 + # economic rights, and the successive licensors have only limited 13.29 + # liability. 13.30 + # 13.31 + # In this respect, the user's attention is drawn to the risks associated 13.32 + # with loading, using, modifying and/or developing or reproducing the 13.33 + # software by the user in light of its specific status of free software, 13.34 + # that may mean that it is complicated to manipulate, and that also 13.35 + # therefore means that it is reserved for developers and experienced 13.36 + # professionals having in-depth computer knowledge. Users are therefore 13.37 + # encouraged to load and test the software's suitability as regards their 13.38 + # requirements in conditions enabling the security of their systems and/or 13.39 + # data to be ensured and, more generally, to use and operate it in the 13.40 + # same conditions as regards security. 13.41 + # 13.42 + # The fact that you are presently reading this means that you have had 13.43 + # knowledge of the CeCILL license and that you accept its terms. 13.44 + # 13.45 +*/ 13.46 + 13.47 +#include "CImg.h" 13.48 + 13.49 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 13.50 +#ifdef cimg_use_visualcpp6 13.51 +#define std 13.52 +#endif 13.53 +#ifdef min 13.54 +#undef min 13.55 +#undef max 13.56 +#endif 13.57 + 13.58 +#ifndef cimg_imagepath 13.59 +#define cimg_imagepath "img/" 13.60 +#endif 13.61 + 13.62 +// Main procedure 13.63 +//--------------- 13.64 +int main(int argc,char **argv) { 13.65 + 13.66 + // Read and check command line parameters 13.67 + cimg_usage("Compute a linear fading between two 2D images"); 13.68 + const char *file_i1 = cimg_option("-i1",cimg_imagepath "sh0r.pgm","Input Image 1"); 13.69 + const char *file_i2 = cimg_option("-i2",cimg_imagepath "milla.bmp","Input Image 2"); 13.70 + const char *file_o = cimg_option("-o",(char*)0,"Output Image"); 13.71 + const bool visu = cimg_option("-visu",true,"Visualization mode"); 13.72 + const double pmin = cimg_option("-min",40.0,"Begin of the fade (in %)")/100.0; 13.73 + const double pmax = cimg_option("-max",60.0,"End of the fade (in %)")/100.0; 13.74 + const double angle = cimg_option("-angle",0.0,"Fade angle")*cimg_library::cimg::valuePI/180; 13.75 + 13.76 + // Init images 13.77 + cimg_library::CImg<unsigned char> img1(file_i1), img2(file_i2); 13.78 + if (img2.dimx()!=img1.dimx() || img2.dimy()!=img1.dimy() || img2.dimz()!=img1.dimz() || img2.dimv()!=img1.dimv()) { 13.79 + int 13.80 + dx = cimg_library::cimg::max(img1.dimx(),img2.dimx()), 13.81 + dy = cimg_library::cimg::max(img1.dimy(),img2.dimy()), 13.82 + dz = cimg_library::cimg::max(img1.dimz(),img2.dimz()), 13.83 + dv = cimg_library::cimg::max(img1.dimv(),img2.dimv()); 13.84 + img1.resize(dx,dy,dz,dv,3); 13.85 + img2.resize(dx,dy,dz,dv,3); 13.86 + } 13.87 + cimg_library::CImg<unsigned char> dest(img1.dimx(),img1.dimy(),img1.dimz(),img1.dimv()); 13.88 + 13.89 + // Compute the faded image 13.90 + const double ca=std::cos(angle), sa=std::sin(angle); 13.91 + double alpha; 13.92 + cimg_forXYZV(dest,x,y,z,k) { 13.93 + const double X = ((double)x/img1.dimx()-0.5)*ca + ((double)y/img1.dimy()-0.5)*sa; 13.94 + if (X+0.5<pmin) alpha=0; else { 13.95 + if (X+0.5>pmax) alpha=1; else alpha=(X+0.5-pmin)/(pmax-pmin); 13.96 + } 13.97 + dest(x,y,z,k) = (unsigned char)((1-alpha)*img1(x,y,z,k) + alpha*img2(x,y,z,k)); 13.98 + } 13.99 + 13.100 + // Save and exit 13.101 + if (file_o) dest.save(file_o); 13.102 + if (visu) dest.display("Image fading"); 13.103 + return 0; 13.104 +}
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 14.2 +++ b/PTdecode/CImg-1.3.0/examples/generate_loop_macros.cpp Mon Aug 03 14:09:20 2009 +0100 14.3 @@ -0,0 +1,343 @@ 14.4 +/* 14.5 + # 14.6 + # File : generate_loop_macros.cpp 14.7 + # ( C++ source file ) 14.8 + # 14.9 + # Description : Generate C++ macros to deal with MxN[xP] neighborhood 14.10 + # loops within the CImg Library. 14.11 + # This file is a part of the CImg Library project. 14.12 + # ( http://cimg.sourceforge.net ) 14.13 + # 14.14 + # Copyright : David Tschumperle 14.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 14.16 + # 14.17 + # License : CeCILL v2.0 14.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 14.19 + # 14.20 + # This software is governed by the CeCILL license under French law and 14.21 + # abiding by the rules of distribution of free software. You can use, 14.22 + # modify and/ or redistribute the software under the terms of the CeCILL 14.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 14.24 + # "http://www.cecill.info". 14.25 + # 14.26 + # As a counterpart to the access to the source code and rights to copy, 14.27 + # modify and redistribute granted by the license, users are provided only 14.28 + # with a limited warranty and the software's author, the holder of the 14.29 + # economic rights, and the successive licensors have only limited 14.30 + # liability. 14.31 + # 14.32 + # In this respect, the user's attention is drawn to the risks associated 14.33 + # with loading, using, modifying and/or developing or reproducing the 14.34 + # software by the user in light of its specific status of free software, 14.35 + # that may mean that it is complicated to manipulate, and that also 14.36 + # therefore means that it is reserved for developers and experienced 14.37 + # professionals having in-depth computer knowledge. Users are therefore 14.38 + # encouraged to load and test the software's suitability as regards their 14.39 + # requirements in conditions enabling the security of their systems and/or 14.40 + # data to be ensured and, more generally, to use and operate it in the 14.41 + # same conditions as regards security. 14.42 + # 14.43 + # The fact that you are presently reading this means that you have had 14.44 + # knowledge of the CeCILL license and that you accept its terms. 14.45 + # 14.46 +*/ 14.47 + 14.48 +#include "CImg.h" 14.49 +using namespace cimg_library; 14.50 + 14.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 14.52 +#ifdef cimg_use_visualcpp6 14.53 +#define std 14.54 +#endif 14.55 + 14.56 +// Generate macro(s) 'cimg_forN(i,bound)' 14.57 +//---------------------------------------- 14.58 +void generate_forN(const unsigned int N) { 14.59 + if (N>=2) { 14.60 + const unsigned int Nn = N/2, Np = Nn-((N+1)%2); 14.61 + std::printf("#define cimg_for%u(bound,i) for (int i = 0, \\\n",N); 14.62 + { for (unsigned int k=0; k<Np; ++k) std::printf(" _p%u##i = 0,",Np-k); } 14.63 + std::printf(" \\\n"); 14.64 + { for (unsigned int k=1; k<=Nn; ++k) std::printf(" _n%u##i = %u>=(int)(bound)?(int)(bound)-1:%u%c \\\n",k,k,k,k==Nn?';':','); } 14.65 + std::printf(" _n%u##i<(int)(bound) || ",Nn); 14.66 + { for (unsigned int k=Nn-1; k>=1; --k) std::printf("_n%u##i==--_n%u##i || ",k,k+1); } 14.67 + std::printf("\\\n i==("); 14.68 + { for (unsigned int k=Nn; k>=2; --k) std::printf("_n%u##i = ",k); } 14.69 + std::printf("--_n1##i); \\\n "); 14.70 + { for (unsigned int k=Np; k>=2; --k) std::printf("_p%u##i = _p%u##i, ",k,k-1); } 14.71 + if (Np) std::printf("_p1##i = i++, \\\n "); 14.72 + else std::printf(" ++i, "); 14.73 + { for (unsigned int k=1; k<Nn; ++k) std::printf("++_n%u##i, ",k); } 14.74 + std::printf("++_n%u##i)\n\n",Nn); 14.75 + 14.76 + std::printf("#define cimg_for%uX(img,x) cimg_for%u((img).width,x)\n",N,N); 14.77 + std::printf("#define cimg_for%uY(img,y) cimg_for%u((img).height,y)\n",N,N); 14.78 + std::printf("#define cimg_for%uZ(img,z) cimg_for%u((img).depth,z)\n",N,N); 14.79 + std::printf("#define cimg_for%uV(img,v) cimg_for%u((img).dim,v)\n",N,N); 14.80 + std::printf("#define cimg_for%uXY(img,x,y) cimg_for%uY(img,y) cimg_for%uX(img,x)\n",N,N,N); 14.81 + std::printf("#define cimg_for%uXZ(img,x,z) cimg_for%uZ(img,z) cimg_for%uX(img,x)\n",N,N,N); 14.82 + std::printf("#define cimg_for%uXV(img,x,v) cimg_for%uV(img,v) cimg_for%uX(img,x)\n",N,N,N); 14.83 + std::printf("#define cimg_for%uYZ(img,y,z) cimg_for%uZ(img,z) cimg_for%uY(img,y)\n",N,N,N); 14.84 + std::printf("#define cimg_for%uYV(img,y,v) cimg_for%uV(img,v) cimg_for%uY(img,y)\n",N,N,N); 14.85 + std::printf("#define cimg_for%uZV(img,z,v) cimg_for%uV(img,v) cimg_for%uZ(img,z)\n",N,N,N); 14.86 + std::printf("#define cimg_for%uXYZ(img,x,y,z) cimg_for%uZ(img,z) cimg_for%uXY(img,x,y)\n",N,N,N); 14.87 + std::printf("#define cimg_for%uXZV(img,x,z,v) cimg_for%uV(img,v) cimg_for%uXZ(img,x,z)\n",N,N,N); 14.88 + std::printf("#define cimg_for%uYZV(img,y,z,v) cimg_for%uV(img,v) cimg_for%uYZ(img,y,z)\n",N,N,N); 14.89 + std::printf("#define cimg_for%uXYZV(img,x,y,z,v) cimg_for%uV(img,v) cimg_for%uXYZ(img,x,y,z)\n\n",N,N,N); 14.90 + } 14.91 +} 14.92 + 14.93 +// Generate macro(s) 'cimg_for_inN(i,bound)' 14.94 +//------------------------------------------ 14.95 +void generate_for_inN(const unsigned int N) { 14.96 + if (N>=2) { 14.97 + const unsigned int Nn = N/2, Np = Nn-((N+1)%2); 14.98 + std::printf("#define cimg_for_in%u(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \\\n",N); 14.99 + { for (unsigned int k=0; k<Np; ++k) std::printf(" _p%u##i = i-%u<0?0:i-%u, \\\n",Np-k,Np-k,Np-k); } 14.100 + { for (unsigned int k=1; k<=Nn; ++k) std::printf(" _n%u##i = i+%u>=(int)(bound)?(int)(bound)-1:i+%u%c \\\n",k,k,k,k==Nn?';':','); } 14.101 + std::printf(" i<=(int)(i1) && (_n%u##i<(int)(bound) || ",Nn); 14.102 + { for (unsigned int k=Nn-1; k>=1; --k) std::printf("_n%u##i==--_n%u##i || ",k,k+1); } 14.103 + std::printf("\\\n i==("); 14.104 + { for (unsigned int k=Nn; k>=2; --k) std::printf("_n%u##i = ",k); } 14.105 + std::printf("--_n1##i)); \\\n "); 14.106 + { for (unsigned int k=Np; k>=2; --k) std::printf("_p%u##i = _p%u##i, ",k,k-1); } 14.107 + if (Np) std::printf("_p1##i = i++, \\\n "); 14.108 + else std::printf(" ++i, "); 14.109 + { for (unsigned int k=1; k<Nn; ++k) std::printf("++_n%u##i, ",k); } 14.110 + std::printf("++_n%u##i)\n\n",Nn); 14.111 + } 14.112 + 14.113 + std::printf("#define cimg_for_in%uX(img,x0,x1,x) cimg_for_in%u((img).width,x0,x1,x)\n",N,N); 14.114 + std::printf("#define cimg_for_in%uY(img,y0,y1,y) cimg_for_in%u((img).height,y0,y1,y)\n",N,N); 14.115 + std::printf("#define cimg_for_in%uZ(img,z0,z1,z) cimg_for_in%u((img).depth,z0,z1,z)\n",N,N); 14.116 + std::printf("#define cimg_for_in%uV(img,v0,v1,v) cimg_for_in%u((img).dim,v0,v1,v)\n",N,N); 14.117 + std::printf("#define cimg_for_in%uXY(img,x0,y0,x1,y1,x,y) cimg_for_in%uY(img,y0,y1,y) cimg_for_in%uX(img,x0,x1,x)\n",N,N,N); 14.118 + std::printf("#define cimg_for_in%uXZ(img,x0,z0,x1,z1,x,z) cimg_for_in%uZ(img,z0,z1,z) cimg_for_in%uX(img,x0,x1,x)\n",N,N,N); 14.119 + std::printf("#define cimg_for_in%uXV(img,x0,v0,x1,v1,x,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uX(img,x0,x1,x)\n",N,N,N); 14.120 + std::printf("#define cimg_for_in%uYZ(img,y0,z0,y1,z1,y,z) cimg_for_in%uZ(img,z0,z1,z) cimg_for_in%uY(img,y0,y1,y)\n",N,N,N); 14.121 + std::printf("#define cimg_for_in%uYV(img,y0,v0,y1,v1,y,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uY(img,y0,y1,y)\n",N,N,N); 14.122 + std::printf("#define cimg_for_in%uZV(img,z0,v0,z1,v1,z,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uZ(img,z0,z1,z)\n",N,N,N); 14.123 + std::printf("#define cimg_for_in%uXYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in%uZ(img,z0,z1,z) cimg_for_in%uXY(img,x0,y0,x1,y1,x,y)\n",N,N,N); 14.124 + std::printf("#define cimg_for_in%uXZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uXZ(img,x0,y0,x1,y1,x,z)\n",N,N,N); 14.125 + std::printf("#define cimg_for_in%uYZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uYZ(img,y0,z0,y1,z1,y,z)\n",N,N,N); 14.126 + std::printf("#define cimg_for_in%uXYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in%uV(img,v0,v1,v) cimg_for_in%uXYZ(img,x0,y0,z0,x1,y1,z1,x,y,z)\n\n",N,N,N); 14.127 + 14.128 +} 14.129 + 14.130 +// Generate macro 'cimg_forMxN[xP](img,x,y,z,v,I)' 14.131 +//------------------------------------------------ 14.132 +void generate_forMxNxP(const unsigned int M, const unsigned int N, const unsigned int P) { 14.133 + char indx[16], indy[16], indz[16]; 14.134 + const int 14.135 + Mn = (int)(M/2), Mp = (int)(Mn-((M+1)%2)), 14.136 + Nn = (int)(N/2), Np = (int)(Nn-((N+1)%2)), 14.137 + Pn = (int)(P/2), Pp = (int)(Pn-((P+1)%2)), 14.138 + last = (int)(M*N*P); 14.139 + 14.140 + if (P>1) std::printf("#define cimg_for%ux%ux%u(img,x,y,z,v,I) \\\n cimg_for%u((img).depth,z)",M,N,P,P); 14.141 + else std::printf("#define cimg_for%ux%u(img,x,y,z,v,I) \\\n",M,N); 14.142 + if (N>1) std::printf(" cimg_for%u((img).height,y) ",N); 14.143 + else std::printf(" cimg_forY(img,y) "); 14.144 + 14.145 + std::printf("for (int x = 0%c \\\n",M>1?',':';'); 14.146 + { for (int k=Mp; k>=1; --k) std::printf(" _p%u##x = 0%s",k,k==1?", \\\n":","); } 14.147 + { for (int k=1; k<Mn; ++k) std::printf(" _n%u##x = %u>=((img).width)?(int)((img).width)-1:%u, \\\n",k,k,k); } 14.148 + 14.149 + if (M>1) { 14.150 + std::printf(" _n%u##x = (int)( \\\n ",Mn); 14.151 + { for (int k=0, z=-Pp; z<=Pn; ++z) 14.152 + for (int y=-Np; y<=Nn; ++y) { 14.153 + for (int x=-Mp; x<=0; ++x) { std::printf("%sI[%d] =",k && x==-Mp?" (":(x==-Mp?"(":" "),k); ++k; } 14.154 + k+=Mn; 14.155 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.156 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.157 + std::printf(" (img)(0,%sy,%sz,v))%s",indy,indz,k>=last?",":", \\\n"); 14.158 + }} 14.159 + 14.160 + std::printf(" \\\n"); 14.161 + for (int x=1; x<Mn; ++x) 14.162 + for (int z=-Pp; z<=Pn; ++z) 14.163 + for (int y=-Np; y<=Nn; ++y) { 14.164 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.165 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.166 + std::printf(" (I[%d] = (img)(_n%d##x,%sy,%sz,v)), \\\n",(Mp+x)+(y+Np)*M+(z+Pp)*M*N,x,indy,indz); 14.167 + } 14.168 + std::printf(" %u>=((img).width)?(int)((img).width)-1:%u); \\\n",Mn,Mn); 14.169 + } 14.170 + 14.171 + if (M>1) std::printf(" (_n%u##x",Mn); else std::printf(" (x"); 14.172 + std::printf("<(int)((img).width) && ( \\\n"); 14.173 + 14.174 + { for (int z=-Pp; z<=Pn; ++z) 14.175 + for (int y=-Np; y<=Nn; ++y) { 14.176 + if (M>1) std::sprintf(indx,"_n%d##",Mn); else indx[0]='\0'; 14.177 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.178 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.179 + std::printf(" (I[%d] = (img)(%sx,%sy,%sz,v))%s",M-1+(y+Np)*M+(z+Pp)*M*N,indx,indy,indz, 14.180 + z==Pn && y==Nn?",1))":", \\\n"); 14.181 + }} 14.182 + 14.183 + if (M>1) { 14.184 + std::printf(" || \\\n "); 14.185 + { for (int k=Mn-1; k>=1; --k) std::printf("_n%d##x==--_n%u##x || ",k,k+1); } 14.186 + std::printf("x==("); 14.187 + { for (int k=Mn; k>=2; --k) std::printf("_n%d##x = ",k); } 14.188 + std::printf("--_n1##x); \\\n"); 14.189 + } else std::printf("; \\\n"); 14.190 + 14.191 + if (M>1) { 14.192 + { for (unsigned int k=0, z=0; z<P; ++z) 14.193 + for (unsigned int y=0; y<N; ++y) { 14.194 + for (unsigned int x=0; x<M-1; ++x) { 14.195 + std::printf(" I[%d] = I[%d],",k,k+1); 14.196 + ++k; 14.197 + } 14.198 + std::printf(" \\\n"); 14.199 + ++k; 14.200 + }} 14.201 + std::printf(" "); 14.202 + { for (int k=Mp; k>=2; --k) std::printf("_p%d##x = _p%d##x, ",k,k-1); } 14.203 + if (M>2) std::printf("_p1##x = x++, "); else std::printf("++x, "); 14.204 + { for (int k=1; k<=Mn-1; ++k) std::printf("++_n%d##x, ",k); } 14.205 + std::printf("++_n%d##x)\n\n",Mn); 14.206 + } else std::printf(" ++x)\n\n"); 14.207 +} 14.208 + 14.209 +// Generate macro 'cimg_for_inMxN[xP](img,x,y,z,v,I)' 14.210 +//--------------------------------------------------- 14.211 +void generate_for_inMxNxP(const unsigned int M, const unsigned int N, const unsigned int P) { 14.212 + char indx[16], indy[16], indz[16]; 14.213 + const int 14.214 + Mn = (int)(M/2), Mp = (int)(Mn-((M+1)%2)), 14.215 + Nn = (int)(N/2), Np = (int)(Nn-((N+1)%2)), 14.216 + Pn = (int)(P/2), Pp = (int)(Pn-((P+1)%2)); 14.217 + 14.218 + if (P>1) std::printf("#define cimg_for_in%ux%ux%u(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \\\n cimg_for_in%u((img).depth,z0,z1,z)",M,N,P,P); 14.219 + else std::printf("#define cimg_for_in%ux%u(img,x0,y0,x1,y1,x,y,z,v,I) \\\n",M,N); 14.220 + if (N>1) std::printf(" cimg_for_in%u((img).height,y0,y1,y) ",N); 14.221 + else std::printf(" cimg_for_inY(img,y0,y1,y) "); 14.222 + 14.223 + std::printf("for (int x = (int)(x0)<0?0:(int)(x0)%c \\\n",M>1?',':';'); 14.224 + { for (int k=Mp; k>=1; --k) std::printf(" _p%u##x = x-%u<0?0:x-%u, \\\n",k,k,k); } 14.225 + { for (int k=1; k<Mn; ++k) std::printf(" _n%u##x = x+%u>=(int)((img).width)?(int)((img).width)-1:x+%u, \\\n",k,k,k); } 14.226 + 14.227 + if (M>1) { 14.228 + std::printf(" _n%u##x = (int)( \\\n",Mn); 14.229 + for (int x=-Mp; x<Mn; ++x) 14.230 + for (int z=-Pp; z<=Pn; ++z) 14.231 + for (int y=-Np; y<=Nn; ++y) { 14.232 + if (x<0) std::sprintf(indx,"_p%d##",-x); else if (x>0) std::sprintf(indx,"_n%d##",x); else indx[0]='\0'; 14.233 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.234 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.235 + std::printf(" (I[%d] = (img)(%sx,%sy,%sz,v)), \\\n",(Mp+x)+(y+Np)*M+(z+Pp)*M*N,indx,indy,indz); 14.236 + } 14.237 + std::printf(" x+%u>=(int)((img).width)?(int)((img).width)-1:x+%u); \\\n",Mn,Mn); 14.238 + } 14.239 + std::printf(" x<=(int)(x1) && ("); 14.240 + if (M>1) std::printf("(_n%u##x",Mn); else std::printf("(x"); 14.241 + std::printf("<(int)((img).width) && ( \\\n"); 14.242 + 14.243 + { for (int z=-Pp; z<=Pn; ++z) 14.244 + for (int y=-Np; y<=Nn; ++y) { 14.245 + if (M>1) std::sprintf(indx,"_n%d##",Mn); else indx[0]='\0'; 14.246 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.247 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.248 + std::printf(" (I[%d] = (img)(%sx,%sy,%sz,v))%s",M-1+(y+Np)*M+(z+Pp)*M*N,indx,indy,indz, 14.249 + z==Pn && y==Nn?",1))":", \\\n"); 14.250 + }} 14.251 + 14.252 + if (M>1) { 14.253 + std::printf(" || \\\n "); 14.254 + { for (int k=Mn-1; k>=1; --k) std::printf("_n%d##x==--_n%u##x || ",k,k+1); } 14.255 + std::printf("x==("); 14.256 + { for (int k=Mn; k>=2; --k) std::printf("_n%d##x = ",k); } 14.257 + std::printf("--_n1##x)); \\\n"); 14.258 + } else std::printf("); \\\n"); 14.259 + 14.260 + if (M>1) { 14.261 + { for (unsigned int k=0, z=0; z<P; ++z) 14.262 + for (unsigned int y=0; y<N; ++y) { 14.263 + for (unsigned int x=0; x<M-1; ++x) { 14.264 + std::printf(" I[%d] = I[%d],",k,k+1); 14.265 + ++k; 14.266 + } 14.267 + std::printf(" \\\n"); 14.268 + ++k; 14.269 + }} 14.270 + std::printf(" "); 14.271 + { for (int k=Mp; k>=2; --k) std::printf("_p%d##x = _p%d##x, ",k,k-1); } 14.272 + if (M>2) std::printf("_p1##x = x++, "); else std::printf("++x, "); 14.273 + { for (int k=1; k<=Mn-1; ++k) std::printf("++_n%d##x, ",k); } 14.274 + std::printf("++_n%d##x)\n\n",Mn); 14.275 + } else std::printf(" ++x)\n\n"); 14.276 +} 14.277 + 14.278 +// Generate macro 'cimg_getMxN[xP](img,x,y,z,v,I)' 14.279 +//------------------------------------------------ 14.280 +void generate_getMxNxP(const unsigned int M, const unsigned int N, const unsigned int P) { 14.281 + const int 14.282 + Mn = (int)(M/2), Mp = (int)(Mn-((M+1)%2)), 14.283 + Nn = (int)(N/2), Np = (int)(Nn-((N+1)%2)), 14.284 + Pn = (int)(P/2), Pp = (int)(Pn-((P+1)%2)), 14.285 + last = M*N*P-1; 14.286 + if (P>1) std::printf("#define cimg_get%ux%ux%u(img,x,y,z,v,I) \\\n",M,N,P); 14.287 + else std::printf("#define cimg_get%ux%u(img,x,y,z,v,I) \\\n",M,N); 14.288 + char indx[16], indy[16], indz[16]; 14.289 + for (int k=0, z=-Pp; z<=Pn; ++z) 14.290 + for (int y=-Np; y<=Nn; ++y) 14.291 + for (int x=-Mp; x<=Mn; ++x) { 14.292 + if (x<0) std::sprintf(indx,"_p%d##",-x); else if (x>0) std::sprintf(indx,"_n%d##",x); else indx[0]='\0'; 14.293 + if (y<0) std::sprintf(indy,"_p%d##",-y); else if (y>0) std::sprintf(indy,"_n%d##",y); else indy[0]='\0'; 14.294 + if (z<0) std::sprintf(indz,"_p%d##",-z); else if (z>0) std::sprintf(indz,"_n%d##",z); else indz[0]='\0'; 14.295 + std::printf(" I[%u] = (img)(%sx,%sy,%sz,v)%s",k,indx,indy,indz, 14.296 + k==last?";\n\n":(x==Mn?", \\\n":",")); 14.297 + ++k; 14.298 + } 14.299 +} 14.300 + 14.301 +//----------------- 14.302 +// Main Procedure 14.303 +//----------------- 14.304 +int main(int argc, char **argv) { 14.305 + 14.306 + cimg_usage("Generate C++ macros to deal with MxN[xP] neighborhood loops within the CImg Library"); 14.307 + 14.308 + // Read command line arguments 14.309 + //---------------------------- 14.310 + const char *const size = cimg_option("-s","5x4","Size of the neighborhood"); 14.311 + const bool do_forN = cimg_option("-forN",true,"Generate 'cimg_forN()'"); 14.312 + const bool do_for_inN = cimg_option("-for_inN",true,"Generate 'cimg_for_inN()'"); 14.313 + const bool do_for = cimg_option("-for",true,"Generate 'cimg_forMxNxP()'"); 14.314 + const bool do_for_in = cimg_option("-for_in",true,"Generate 'cimg_for_inMxNxP()'"); 14.315 + const bool do_get = cimg_option("-get",true,"Generate 'cimg_getMxNxP()'"); 14.316 + if (cimg_option("-h",false,0)) std::exit(0); 14.317 + 14.318 + unsigned int M = 1, N = 1 , P = 1; 14.319 + std::sscanf(size,"%u%*c%u%*c%u",&M,&N,&P); 14.320 + if (!M || !N || !P || (M==1 && N==1 && P==1)) { 14.321 + std::fprintf(stderr,"\n%s : Error, bad neighborhood size '%s'\n",argv[0],size); 14.322 + std::exit(0); 14.323 + } 14.324 + if (!do_forN && !do_get && !do_for) return 0; 14.325 + 14.326 + if (P>1) 14.327 + std::printf("// Define %ux%ux%u loop macros for CImg\n" 14.328 + "//-------------------------------------\n",M,N,P); 14.329 + else 14.330 + std::printf("// Define %ux%u loop macros for CImg\n" 14.331 + "//----------------------------------\n",M,N); 14.332 + 14.333 + if (do_forN) { 14.334 + if (N>1) generate_forN(N); 14.335 + if (P>1 && P!=N) generate_forN(P); 14.336 + } 14.337 + if (do_for_inN) { 14.338 + if (N>1) generate_for_inN(N); 14.339 + if (P>1 && P!=N) generate_for_inN(P); 14.340 + } 14.341 + if (do_for) generate_forMxNxP(M,N,P); 14.342 + if (do_for_in) generate_for_inMxNxP(M,N,P); 14.343 + if (do_get) generate_getMxNxP(M,N,P); 14.344 + 14.345 + return 0; 14.346 +}
15.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 15.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic.cpp Mon Aug 03 14:09:20 2009 +0100 15.3 @@ -0,0 +1,4648 @@ 15.4 +/* 15.5 + # 15.6 + # File : gmic.cpp 15.7 + # ( C++ source file ) 15.8 + # 15.9 + # Description : GREYC's Magic Image Converter (library and executable) 15.10 + # ( http://gmic.sourceforge.net ) 15.11 + # This file is a part of the CImg Library project. 15.12 + # ( http://cimg.sourceforge.net ) 15.13 + # 15.14 + # Copyright : David Tschumperle 15.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 15.16 + # 15.17 + # License : CeCILL v2.0 15.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 15.19 + # 15.20 + # This software is governed by the CeCILL license under French law and 15.21 + # abiding by the rules of distribution of free software. You can use, 15.22 + # modify and/ or redistribute the software under the terms of the CeCILL 15.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 15.24 + # "http://www.cecill.info". 15.25 + # 15.26 + # As a counterpart to the access to the source code and rights to copy, 15.27 + # modify and redistribute granted by the license, users are provided only 15.28 + # with a limited warranty and the software's author, the holder of the 15.29 + # economic rights, and the successive licensors have only limited 15.30 + # liability. 15.31 + # 15.32 + # In this respect, the user's attention is drawn to the risks associated 15.33 + # with loading, using, modifying and/or developing or reproducing the 15.34 + # software by the user in light of its specific status of free software, 15.35 + # that may mean that it is complicated to manipulate, and that also 15.36 + # therefore means that it is reserved for developers and experienced 15.37 + # professionals having in-depth computer knowledge. Users are therefore 15.38 + # encouraged to load and test the software's suitability as regards their 15.39 + # requirements in conditions enabling the security of their systems and/or 15.40 + # data to be ensured and, more generally, to use and operate it in the 15.41 + # same conditions as regards security. 15.42 + # 15.43 + # The fact that you are presently reading this means that you have had 15.44 + # knowledge of the CeCILL license and that you accept its terms. 15.45 + # 15.46 +*/ 15.47 + 15.48 +// Add specific G'MIC methods to the CImg<T> class. 15.49 +//------------------------------------------------- 15.50 +#ifdef cimg_plugin 15.51 + 15.52 +template<typename t> 15.53 +CImg<T> get_replace(const CImg<t>& img) const { 15.54 + return +img; 15.55 +} 15.56 + 15.57 +template<typename t> 15.58 +CImg<T>& replace(CImg<t>& img) { 15.59 + return img.transfer_to(*this); 15.60 +} 15.61 + 15.62 +CImg<T>& gmic_set(const double value, const int x, const int y, const int z, const int v) { 15.63 + (*this).atXYZV(x,y,z,v,0) = (T)value; 15.64 + return *this; 15.65 +} 15.66 + 15.67 +CImg<T> get_gmic_set(const double value, const int x, const int y, const int z, const int v) const { 15.68 + return (+*this).gmic_set(value,x,y,z,v); 15.69 +} 15.70 + 15.71 +CImg<T> get_draw_point(const int x, const int y, const int z, 15.72 + const CImg<T>& col, const float opacity) const { 15.73 + return (+*this).draw_point(x,y,z,col,opacity); 15.74 +} 15.75 + 15.76 +CImg<T> get_draw_line(const int x0, const int y0, const int x1, const int y1, 15.77 + const CImg<T>& col, const float opacity) const { 15.78 + return (+*this).draw_line(x0,y0,x1,y1,col,opacity); 15.79 +} 15.80 + 15.81 +template<typename t> 15.82 +CImg<T> get_draw_polygon(const CImg<t>& pts, const CImg<T>& col, const float opacity) const { 15.83 + return (+*this).draw_polygon(pts,col,opacity); 15.84 +} 15.85 + 15.86 +CImg<T> get_draw_ellipse(const int x, const int y, const float r0, const float r1, 15.87 + const float ru, const float rv, const CImg<T>& col, const float opacity) const { 15.88 + return (+*this).draw_ellipse(x,y,r0,r1,ru,rv,col,opacity); 15.89 +} 15.90 + 15.91 +CImg<T> get_draw_text(const int x, const int y, const char *const text, const T *const col, 15.92 + const int bg, const float opacity,const int siz) const { 15.93 + return (+*this).draw_text(x,y,text,col,bg,opacity,siz); 15.94 +} 15.95 + 15.96 +CImg<T> get_draw_image(const int x, const int y, const int z, 15.97 + const CImg<T>& sprite, const CImg<T>& mask, const float opacity) const { 15.98 + return (+*this).draw_image(x,y,z,sprite,mask,opacity); 15.99 +} 15.100 + 15.101 +CImg<T> get_draw_image(const int x, const int y, const int z, 15.102 + const CImg<T>& sprite, const float opacity) const { 15.103 + return (+*this).draw_image(x,y,z,sprite,opacity); 15.104 +} 15.105 + 15.106 +CImg<T> get_draw_plasma(const float alpha, const float beta, const float opacity) const { 15.107 + return (+*this).draw_plasma(alpha,beta,opacity); 15.108 +} 15.109 + 15.110 +CImg<T> get_draw_mandelbrot(const CImg<T>& color_palette, const float opacity, 15.111 + const double z0r, const double z0i, const double z1r, const double z1i, 15.112 + const unsigned int itermax, const bool normalized_iteration, 15.113 + const bool julia_set, const double paramr, const double parami) const { 15.114 + return (+*this).draw_mandelbrot(color_palette,opacity,z0r,z0i,z1r,z1i,itermax, 15.115 + normalized_iteration,julia_set,paramr,parami); 15.116 +} 15.117 + 15.118 +CImg<T> get_draw_fill(const int x, const int y, const int z, 15.119 + const CImg<T>& col, const float opacity, const float tolerance) const { 15.120 + return (+*this).draw_fill(x,y,z,col,opacity,tolerance); 15.121 +} 15.122 + 15.123 +bool is_CImg3d() const { 15.124 + const bool is_header = (width==1 && height>=8 && depth==1 && dim==1 && 15.125 + (*this)[0]=='C'+0.5f && (*this)[1]=='I'+0.5f && 15.126 + (*this)[2]=='m'+0.5f && (*this)[3]=='g'+0.5f && 15.127 + (*this)[4]=='3'+0.5f && (*this)[5]=='d'+0.5f); 15.128 + if (!is_header) return false; 15.129 + const int 15.130 + nbv = (int)(*this)[6], 15.131 + nbp = (int)(*this)[7]; 15.132 + if (nbv<=0 || nbp<=0) return false; 15.133 + const T *ptrs = ptr() + 8 + 3*nbv, *const ptre = end(); 15.134 + if (ptrs>=ptre) return false; 15.135 + for (int i = 0; i<nbp && ptrs<ptre; ++i) { 15.136 + const int N = (int)*(ptrs++); 15.137 + if (N<=0 || N>=8) return false; 15.138 + ptrs+=N; 15.139 + } 15.140 + ptrs+=4*nbp; 15.141 + if (ptrs>ptre) return false; 15.142 + return true; 15.143 +} 15.144 + 15.145 +template<typename tp, typename tf, typename tc, typename to> 15.146 +CImg<T> get_draw_object3d(const float x0, const float y0, const float z0, 15.147 + const CImg<tp>& points, const CImgList<tf>& primitives, 15.148 + const CImgList<tc>& colors, const CImg<to>& opacities, 15.149 + const unsigned int render_type, const bool double_sided, 15.150 + const float focale, const float lightx, const float lighty, 15.151 + const float lightz, const float specular_light, const float specular_shine, 15.152 + float *const zbuffer) const { 15.153 + return (+*this).draw_object3d(x0,y0,z0,points,primitives,colors,opacities,render_type,double_sided,focale, 15.154 + lightx,lighty,lightz,specular_light,specular_shine,zbuffer); 15.155 +} 15.156 + 15.157 +template<typename tp, typename tc, typename to> 15.158 +CImg<T>& object3dtoCImg3d(CImgList<tp>& primitives, CImgList<tc>& colors, CImg<to>& opacities) { 15.159 + if (is_empty() || !primitives) { primitives.assign(); colors.assign(); opacities.assign(); return *this; } 15.160 + const unsigned int primitives_size = primitives.size; 15.161 + CImgList<floatT> res; 15.162 + res.insert(CImg<floatT>("CImg3d",1,6,1,1,false)+=0.5f); 15.163 + res.insert(CImg<floatT>::vector((float)width,(float)primitives.size)); 15.164 + res.insert(1); resize(-100,3,1,1,0).transpose().unroll('y').transfer_to(res.last()); 15.165 + cimglist_for(primitives,p) { 15.166 + res.insert(CImg<floatT>::vector((float)primitives[p].size())).insert(primitives[p]).last().unroll('y'); 15.167 + primitives[p].assign(); 15.168 + } 15.169 + primitives.assign(); 15.170 + const unsigned int defined_colors = colors.size; 15.171 + cimglist_for(colors,c) { res.insert(colors[c]).last().resize(1,3,1,1,-1); colors[c].assign(); } 15.172 + colors.assign(); 15.173 + if (defined_colors<primitives_size) res.insert(1).last().assign(1,3*(primitives_size-defined_colors),1,1,200); 15.174 + const unsigned int defined_opacities = opacities.size(); 15.175 + res.insert(opacities).last().unroll('y'); 15.176 + opacities.assign(); 15.177 + if (defined_opacities<primitives.size) res.insert(1).last().assign(1,primitives_size-defined_opacities,1,1,1); 15.178 + return res.get_append('y').transfer_to(*this); 15.179 +} 15.180 + 15.181 +template<typename tp, typename tc, typename to> 15.182 +CImg<T>& CImg3dtoobject3d(CImgList<tp>& primitives, CImgList<tc>& colors, CImg<to>& opacities) { 15.183 + const T *ptrs = ptr() + 6; 15.184 + const unsigned int 15.185 + nbv = (unsigned int)*(ptrs++), 15.186 + nbp = (unsigned int)*(ptrs++); 15.187 + CImg<T> points(nbv,3); 15.188 + primitives.assign(nbp); 15.189 + colors.assign(nbp,1,3,1,1); 15.190 + opacities.assign(nbp); 15.191 + cimg_forX(points,x) { points(x,0) = (T)*(ptrs++); points(x,1) = (T)*(ptrs++); points(x,2) = (T)*(ptrs++); } 15.192 + cimglist_for(primitives,p) { 15.193 + const unsigned int N = (unsigned int)*(ptrs++); 15.194 + primitives[p].assign(ptrs,1,N,1,1,false); 15.195 + ptrs+=N; 15.196 + } 15.197 + cimglist_for(colors,c) { colors(c,0) = (tc)*(ptrs++); colors(c,1) = (tc)*(ptrs++); colors(c,2) = (tc)*(ptrs++); } 15.198 + opacities.assign(ptrs,1,nbp,1,1,false); 15.199 + return assign(points); 15.200 +} 15.201 + 15.202 +CImg<T> get_appendCImg3d(const CImg<T>& img) const { 15.203 + CImg<T> res(1,img.size() + size() - 8); 15.204 + const T *ptrs = ptr() + 6, *ptrs0 = img.ptr() + 6; 15.205 + T *ptrd = res.ptr(); 15.206 + *(ptrd++) = (T)('C' + 0.5f); *(ptrd++) = (T)('I' + 0.5f); 15.207 + *(ptrd++) = (T)('m' + 0.5f); *(ptrd++) = (T)('g' + 0.5f); 15.208 + *(ptrd++) = (T)('3' + 0.5f); *(ptrd++) = (T)('d' + 0.5f); 15.209 + const unsigned int 15.210 + nbv = (unsigned int)*(ptrs++), 15.211 + nbv0 = (unsigned int)*(ptrs0++), 15.212 + nbp = (unsigned int)*(ptrs++), 15.213 + nbp0 = (unsigned int)*(ptrs0++); 15.214 + *(ptrd++) = (T)(nbv + nbv0); 15.215 + *(ptrd++) = (T)(nbp + nbp0); 15.216 + std::memcpy(ptrd,ptrs,sizeof(T)*nbv*3); 15.217 + ptrd+=3*nbv; ptrs+=3*nbv; 15.218 + std::memcpy(ptrd,ptrs0,sizeof(T)*nbv0*3); 15.219 + ptrd+=3*nbv0; ptrs0+=3*nbv0; 15.220 + for (unsigned int i = 0; i<nbp; ++i) { 15.221 + const unsigned int N = (unsigned int)*(ptrs++); 15.222 + *(ptrd++) = (T)N; 15.223 + std::memcpy(ptrd,ptrs,sizeof(T)*N); 15.224 + ptrd+=N; ptrs+=N; 15.225 + } 15.226 + for (unsigned int i = 0; i<nbp0; ++i) { 15.227 + const unsigned int N = (unsigned int)*(ptrs0++); 15.228 + *(ptrd++) = (T)N; 15.229 + for (unsigned int j = 0; j<N; ++j) *(ptrd++) = (T)(*(ptrs0++) + nbv); 15.230 + } 15.231 + std::memcpy(ptrd,ptrs,sizeof(T)*nbp*3); 15.232 + ptrd+=3*nbp; ptrs+=3*nbp; 15.233 + std::memcpy(ptrd,ptrs0,sizeof(T)*nbp0*3); 15.234 + ptrd+=3*nbp0; ptrs0+=3*nbp0; 15.235 + std::memcpy(ptrd,ptrs,sizeof(T)*nbp); 15.236 + ptrd+=nbp; 15.237 + std::memcpy(ptrd,ptrs0,sizeof(T)*nbp0); 15.238 + return res; 15.239 +} 15.240 + 15.241 +CImg<T>& appendCImg3d(const CImg<T>& img) { 15.242 + return get_appendCImg3d(img).transfer_to(*this); 15.243 +} 15.244 + 15.245 +CImg<T>& centerCImg3d() { 15.246 + const unsigned int nbv = (unsigned int)(*this)[6]; 15.247 + const T *ptrs = ptr() + 8; 15.248 + float xm = cimg::type<float>::max(), ym = xm, zm = xm, xM = cimg::type<float>::min(), yM = xM, zM = xM; 15.249 + for (unsigned int i = 0; i<nbv; ++i) { 15.250 + const float x = (float)*(ptrs++), y = (float)*(ptrs++), z = (float)*(ptrs++); 15.251 + if (x<xm) xm = x; if (x>xM) xM = x; 15.252 + if (y<ym) ym = y; if (y>yM) yM = y; 15.253 + if (z<zm) zm = z; if (z>zM) zM = z; 15.254 + } 15.255 + const float xc = (xm + xM)/2, yc = (ym + yM)/2, zc = (zm + zM)/2; 15.256 + T *ptrd = ptr() + 8; 15.257 + for (unsigned int i = 0; i<nbv; ++i) { *(ptrd++)-=(T)xc; *(ptrd++)-=(T)yc; *(ptrd++)-=(T)zc; } 15.258 + return *this; 15.259 +} 15.260 + 15.261 +CImg<T> get_centerCImg3d() const { 15.262 + return (+*this).centerCImg3d(); 15.263 +} 15.264 + 15.265 +CImg<T>& normalizeCImg3d() { 15.266 + const unsigned int nbv = (unsigned int)(*this)[6]; 15.267 + const T *ptrs = ptr() + 8; 15.268 + float xm = cimg::type<float>::max(), ym = xm, zm = xm, xM = cimg::type<float>::min(), yM = xM, zM = xM; 15.269 + for (unsigned int i = 0; i<nbv; ++i) { 15.270 + const float x = (float)*(ptrs++), y = (float)*(ptrs++), z = (float)*(ptrs++); 15.271 + if (x<xm) xm = x; if (x>xM) xM = x; 15.272 + if (y<ym) ym = y; if (y>yM) yM = y; 15.273 + if (z<zm) zm = z; if (z>zM) zM = z; 15.274 + } 15.275 + const float delta = cimg::max(xM-xm,yM-ym,zM-zm); 15.276 + if (delta>0) { 15.277 + T *ptrd = ptr() + 8; 15.278 + for (unsigned int i = 0; i<3*nbv; ++i) *(ptrd++)/=(T)delta; 15.279 + } 15.280 + return *this; 15.281 +} 15.282 + 15.283 +CImg<T> get_normalizeCImg3d() const { 15.284 + return (+*this).normalizeCImg3d(); 15.285 +} 15.286 + 15.287 +template<typename t> 15.288 +CImg<T>& rotateCImg3d(const CImg<t>& rot) { 15.289 + const unsigned int nbv = (unsigned int)(*this)[6]; 15.290 + const T *ptrs = ptr() + 8; 15.291 + const float 15.292 + a = (float)rot(0,0), b = (float)rot(1,0), c = (float)rot(2,0), 15.293 + d = (float)rot(0,1), e = (float)rot(1,1), f = (float)rot(2,1), 15.294 + g = (float)rot(0,2), h = (float)rot(1,2), i = (float)rot(2,2); 15.295 + T *ptrd = ptr() + 8; 15.296 + for (unsigned int j = 0; j<nbv; ++j) { 15.297 + const float x = (float)*(ptrs++), y = (float)*(ptrs++), z = (float)*(ptrs++); 15.298 + *(ptrd++) = (T)(a*x + b*y + c*z); 15.299 + *(ptrd++) = (T)(d*x + e*y + f*z); 15.300 + *(ptrd++) = (T)(g*x + h*y + i*z); 15.301 + } 15.302 + return *this; 15.303 +} 15.304 + 15.305 +template<typename t> 15.306 +CImg<T> get_rotateCImg3d(const CImg<t>& rot) const { 15.307 + return (+*this).rotateCImg3d(rot); 15.308 +} 15.309 + 15.310 +CImg<T>& translateCImg3d(const float tx, const float ty, const float tz) { 15.311 + const unsigned int nbv = (unsigned int)(*this)[6]; 15.312 + T *ptrd = ptr() + 8; 15.313 + for (unsigned int j = 0; j<nbv; ++j) { *(ptrd++) += (T)tx; *(ptrd++) += (T)ty; *(ptrd++) += (T)tz; } 15.314 + return *this; 15.315 +} 15.316 + 15.317 +CImg<T> get_translateCImg3d(const float tx, const float ty, const float tz) const { 15.318 + return (+*this).translateCImg3d(tx,ty,tz); 15.319 +} 15.320 + 15.321 +CImg<T>& coloropacityCImg3d(const float R, const float G, const float B, const float opacity, const bool set_RGB, const bool set_opacity) { 15.322 + T *ptrd = ptr() + 6; 15.323 + const unsigned int 15.324 + nbv = (unsigned int)*(ptrd++), 15.325 + nbp = (unsigned int)*(ptrd++); 15.326 + ptrd+=3*nbv; 15.327 + for (unsigned int i = 0; i<nbp; ++i) { const unsigned int N = (unsigned int)*(ptrd++); ptrd+=N; } 15.328 + if (set_RGB) for (unsigned int c = 0; c<nbp; ++c) { *(ptrd++) = (T)R; *(ptrd++) = (T)G; *(ptrd++) = (T)B; } else ptrd+=3*nbp; 15.329 + if (set_opacity) for (unsigned int o = 0; o<nbp; ++o) *(ptrd++) = (T)opacity; 15.330 + return *this; 15.331 +} 15.332 + 15.333 +CImg<T> get_coloropacityCImg3d(const float R, const float G, const float B, const float opacity, const bool set_RGB, const bool set_opacity) const { 15.334 + return (+*this).coloropacityCImg3d(R,G,B,opacity,set_RGB,set_opacity); 15.335 +} 15.336 + 15.337 +#else // eq. to #ifndef cimg_plugin 15.338 + 15.339 +#define cimg_debug 1 15.340 +#ifndef cimg_gmic_cpp 15.341 +#define cimg_gmic_cpp "examples/gmic.cpp" 15.342 +#define cimg_cimg_h "../CImg.h" 15.343 +#endif 15.344 +#define cimg_stdout stdout 15.345 +#define cimg_plugin cimg_gmic_cpp 15.346 +#include cimg_cimg_h 15.347 +#include "gmic.h" 15.348 +using namespace cimg_library; 15.349 + 15.350 +// The lines below are necessary when using a non-standard compiler such as visualcpp6. 15.351 +#ifdef cimg_use_visualcpp6 15.352 +#define std 15.353 +#endif 15.354 +#ifdef min 15.355 +#undef min 15.356 +#undef max 15.357 +#endif 15.358 + 15.359 +#if !defined(gmic_main) || !defined(gmic_separate_compilation) 15.360 + 15.361 +// Define some useful macros. 15.362 +//--------------------------- 15.363 + 15.364 +// Code for validity checking of indices. 15.365 +#define gmic_inds indices2string(indices,true) 15.366 +#define gmic_check_indice(ind,funcname) { \ 15.367 + const int indo = (int)ind; \ 15.368 + if (ind<0) ind+=images.size; \ 15.369 + if (ind<0 || ind>=(int)images.size) { \ 15.370 + if (images.size) error(funcname " : Invalid indice '[%d]' (valid indice range is -%u...%u).",gmic_inds,indo,images.size,images.size-1); \ 15.371 + else error(funcname " : Invalid indice '[%d]' (image list is empty).",gmic_inds,indo); \ 15.372 + } \ 15.373 +} 15.374 + 15.375 +// Code for having 'get' or 'non-get' versions of G'MIC commands. 15.376 +#define gmic_apply(instance,function) { \ 15.377 + if (get_version) { \ 15.378 + unsigned int posi = 0; \ 15.379 + if (images.contains(instance,posi)) filenames.insert(filenames[posi]); \ 15.380 + else filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); \ 15.381 + CImg<T> res = instance.get_##function; \ 15.382 + images.insert(1); res.transfer_to(images.last()); \ 15.383 + } else instance.function; \ 15.384 +} 15.385 + 15.386 +// Code for simple commands that has no parameters and act on images. 15.387 +#define gmic_simple_item(option,function,description) \ 15.388 + if (!cimg::strcmp(option,item0)) { \ 15.389 + print(description,gmic_inds); cimg_foroff(indices,l) gmic_apply(images[indices[l]],function()); \ 15.390 + continue; \ 15.391 +} 15.392 + 15.393 +// Code for the type cast command. 15.394 +#define gmic_cast(pixel_type,st_type) \ 15.395 + if (!cimg::strcmp(#pixel_type,argument)) { \ 15.396 + print("Set pixel type to '%s'.",#pixel_type); ++position; \ 15.397 + if (!cimg::strcmp(st_type,cimg::type<T>::string())) continue; \ 15.398 + CImgList<pixel_type> casted_images; \ 15.399 + while (images) { casted_images.insert(images[0]); images.remove(0); } \ 15.400 + return parse_##pixel_type(casted_images); \ 15.401 +} 15.402 + 15.403 +// Code for G'MIC arithmetic commands. 15.404 +#define gmic_arithmetic_item(option1,option2,\ 15.405 + function1,description1,arg1_1,arg1_2,value_type1, \ 15.406 + function2,description2_1,description2_2,arg2_1,arg2_2,description3) \ 15.407 + if (!cimg::strcmp(option1,item0) || !cimg::strcmp(option2,item0)) { \ 15.408 + double value = 0; char inds[4096] = { 0 }, sep = 0, end = 0; \ 15.409 + if (std::sscanf(argument,"%lf%c",&value,&end)==1) { \ 15.410 + print(description1 ".",arg1_1,arg1_2); \ 15.411 + cimg_foroff(indices,l) \ 15.412 + if (get_version) { \ 15.413 + images.insert(images[indices[l]]); images.last().function1((value_type1)value); \ 15.414 + filenames.insert(filenames[indices[l]]); } \ 15.415 + else images[indices[l]].function1((value_type1)value); \ 15.416 + ++position; \ 15.417 + } else if (std::sscanf(argument,"[%4095[0-9.eE%+-]%c%c",inds,&sep,&end)==2 && sep==']') { \ 15.418 + const CImg<unsigned int> ind = indices2cimg(inds,images.size,option1); \ 15.419 + if (ind.size()!=1) error(description2_1 " : Argument '[%s]' should contain one indice.",gmic_inds,inds); \ 15.420 + print(description2_2 ".",arg2_1,arg2_2); \ 15.421 + const CImg<T> img0 = images[ind[0]]; \ 15.422 + cimg_foroff(indices,l) \ 15.423 + if (get_version) { \ 15.424 + images.insert(images[indices[l]]); images.last().function2(img0); \ 15.425 + filenames.insert(filenames[indices[l]]); } \ 15.426 + else images[indices[l]].function2(img0); \ 15.427 + ++position; \ 15.428 + } else { \ 15.429 + print(description3 ".",gmic_inds); \ 15.430 + if (images && indices) { \ 15.431 + for (unsigned int siz = indices.size(), ind0 = indices[0], off = 0, l = 1; l<siz; ++l) { \ 15.432 + const unsigned int ind = indices[l] - off; \ 15.433 + images[ind0].function2(images[ind]); \ 15.434 + images.remove(ind); filenames.remove(ind); \ 15.435 + ++off; \ 15.436 + }}} continue; \ 15.437 +} 15.438 + 15.439 +// Constructors. 15.440 +//-------------- 15.441 +#if defined(gmic_float) || !defined(gmic_separate_compilation) 15.442 + 15.443 +#include "gmic_def.h" 15.444 + 15.445 +gmic_exception::gmic_exception() { 15.446 + message[0] = '\0'; 15.447 +} 15.448 + 15.449 +gmic_exception::gmic_exception(const char *format, ...) { 15.450 + std::va_list ap; 15.451 + va_start(ap,format); 15.452 + std::vsprintf(message,format,ap); 15.453 + va_end(ap); 15.454 +} 15.455 + 15.456 +gmic_exception::gmic_exception(const char *format, std::va_list ap) { 15.457 + std::vsprintf(message,format,ap); 15.458 +} 15.459 + 15.460 +gmic::gmic() { 15.461 + assign(0); 15.462 +} 15.463 + 15.464 +// Set default values of G'MIC parameters and macros. 15.465 +//---------------------------------------------------- 15.466 +gmic& gmic::assign(const unsigned int size, const char *const custom_macros, const bool add_macros_start) { 15.467 + filenames.assign(size,CImg<char>("(gmic)",7,1,1,1,false)); 15.468 + position = 0; 15.469 + verbosity_level = 0; 15.470 + is_released = true; 15.471 + is_debug = false; 15.472 + is_begin = true; 15.473 + background3d[0] = 120; 15.474 + background3d[1] = 120; 15.475 + background3d[2] = 140; 15.476 + render3d = 4; 15.477 + renderd3d = -1; 15.478 + is_oriented3d = false; 15.479 + focale3d = 500; 15.480 + light3d_x = 0; 15.481 + light3d_y = 0; 15.482 + light3d_z = -5000; 15.483 + specular_light3d = 0.15f; 15.484 + specular_shine3d = 0.8f; 15.485 + is_fullpath = false; 15.486 + add_macros(data_def,sizeof(data_def)-1,true); 15.487 + add_macros(custom_macros,cimg::strlen(custom_macros)-1,add_macros_start); 15.488 + return *this; 15.489 +} 15.490 + 15.491 +// Error procedure. 15.492 +//----------------- 15.493 +const gmic& gmic::error(const char *format, ...) const { 15.494 + va_list ap; 15.495 + va_start(ap,format); 15.496 + char message[1024] = { 0 }; 15.497 + std::vsprintf(message,format,ap); 15.498 + va_end(ap); 15.499 + if (verbosity_level>=0) { 15.500 + std::fprintf(cimg_stdout,"\n<gmic-#%u> ** Error ** %s",filenames.size,message); 15.501 + std::fprintf(cimg_stdout,"\n<gmic-#%u> Abort G'MIC instance.\n",filenames.size); 15.502 + std::fflush(cimg_stdout); 15.503 + } 15.504 + throw gmic_exception(message); 15.505 + return *this; 15.506 +} 15.507 + 15.508 +// Warning procedure. 15.509 +//------------------- 15.510 +const gmic& gmic::warning(const char *format, ...) const { 15.511 + va_list ap; 15.512 + va_start(ap,format); 15.513 + if (verbosity_level>=0) { 15.514 + std::fprintf(cimg_stdout,"\n<gmic-#%u> ** Warning ** ",filenames.size); 15.515 + std::vfprintf(cimg_stdout,format,ap); 15.516 + std::fflush(cimg_stdout); 15.517 + } 15.518 + va_end(ap); 15.519 + return *this; 15.520 +} 15.521 + 15.522 +// Print debug messages. 15.523 +//---------------------- 15.524 +const gmic& gmic::debug(const char *format, ...) const { 15.525 + const char t_normal[] = { 0x1b,'[','0',';','0',';','0','m','\0' }; 15.526 + const char t_red[] = { 0x1b,'[','4',';','3','1',';','5','9','m','\0' }; 15.527 + const char t_bold[] = { 0x1b,'[','1','m','\0' }; 15.528 + if (is_debug) { 15.529 + va_list ap; 15.530 + va_start(ap,format); 15.531 + std::fprintf(cimg_stdout,"\n%s%s<gmic-debug-#%u>%s ",t_bold,t_red,filenames.size,t_normal); 15.532 + std::vfprintf(cimg_stdout,format,ap); 15.533 + va_end(ap); 15.534 + std::fflush(cimg_stdout); 15.535 + } 15.536 + return *this; 15.537 +} 15.538 + 15.539 +// Print status messages. 15.540 +//----------------------- 15.541 +const gmic& gmic::print(const char *format, ...) const { 15.542 + va_list ap; 15.543 + va_start(ap,format); 15.544 + if (verbosity_level>=0) { 15.545 + std::fprintf(cimg_stdout,"\n<gmic-#%u> ",filenames.size); 15.546 + std::vfprintf(cimg_stdout,format,ap); 15.547 + std::fflush(cimg_stdout); 15.548 + } 15.549 + va_end(ap); 15.550 + return *this; 15.551 +} 15.552 + 15.553 +// Add macros from a char* buffer. 15.554 +//--------------------------------- 15.555 +gmic& gmic::add_macros(const char *const data_macros, const unsigned int data_size, const bool add_macros_at_start) { 15.556 + if (!data_macros || !data_size) return *this; 15.557 + char mac[4096] = { 0 }, com[256*1024] = { 0 }, line[256*1024] = { 0 }, sep = 0; 15.558 + const char *data = data_macros, *const data_end = data_macros + data_size; 15.559 + while (data<data_end) { 15.560 + if (*data=='\n') ++data; 15.561 + else { 15.562 + if (std::sscanf(data,"%262143[^\n]",line)>0) data += cimg::strlen(line) + 1; 15.563 + if (line[0]!='#') { // Useful line (not a comment) 15.564 + mac[0] = com[0] = 0; 15.565 + if (std::sscanf(line,"%4095[^: ] %c %262143[^\n]",mac,&sep,com)>=2 && sep==':' && 15.566 + std::sscanf(mac,"%4095s",line)==1) { // Macro definition. 15.567 + macros.insert(CImg<char>(line,cimg::strlen(line)+1,1,1,1,false),add_macros_at_start?0:macros.size); 15.568 + commands.insert(CImg<char>(com,cimg::strlen(com)+1,1,1,1,false),add_macros_at_start?0:commands.size); 15.569 + } else { // Possible continuation of a previous macro definition. 15.570 + if (!macros) error("Fatal error : Invalid G'MIC macros data."); 15.571 + CImg<char> &last = commands[add_macros_at_start?0:commands.size-1]; 15.572 + last[last.size()-1] = ' '; 15.573 + last.append(CImg<char>(line,cimg::strlen(line)+1,1,1,1,false),'x'); 15.574 + } 15.575 + } 15.576 + } 15.577 + } 15.578 + return *this; 15.579 +} 15.580 + 15.581 +// Add macros from a macro file. 15.582 +//------------------------------ 15.583 +gmic& gmic::add_macros(std::FILE *const file, const bool add_macros_at_start) { 15.584 + if (!file) return *this; 15.585 + char mac[4096] = { 0 }, com[256*1024] = { 0 }, line[256*1024] = { 0 }, sep = 0; 15.586 + int err = 0; 15.587 + while ((err=std::fscanf(file,"%262143[^\n] ",line)>=0)) { 15.588 + if (err) { // Non empty-line 15.589 + mac[0] = com[0] = 0; 15.590 + if (line[0]!='#') { // Useful line (not a comment). 15.591 + if (std::sscanf(line,"%4095[^: ] %c %262143[^\n]",mac,&sep,com)>=2 && sep==':' && 15.592 + std::sscanf(mac,"%4095s",line)==1) { // Macro definition. 15.593 + macros.insert(CImg<char>(line,cimg::strlen(line)+1,1,1,1,false),add_macros_at_start?0:macros.size); 15.594 + commands.insert(CImg<char>(com,cimg::strlen(com)+1,1,1,1,false),add_macros_at_start?0:commands.size); 15.595 + } else { // Possible continuation of a previous macro definition. 15.596 + if (!macros) error("Fatal error : Invalid G'MIC macros data."); 15.597 + CImg<char> &last = commands[add_macros_at_start?0:commands.size-1]; 15.598 + last[last.size()-1] = ' '; 15.599 + last.append(CImg<char>(line,cimg::strlen(line)+1,1,1,1,false),'x'); 15.600 + } 15.601 + } 15.602 + } 15.603 + } 15.604 + return *this; 15.605 +} 15.606 + 15.607 +// Return indices of the images from a string. 15.608 +//-------------------------------------------- 15.609 +CImg<unsigned int> gmic::indices2cimg(const char *const string, const unsigned int indice_max, 15.610 + const char *const command) const { 15.611 + if (!cimg::strlen(string)) return CImg<unsigned int>(); 15.612 + CImgList<unsigned int> inds; 15.613 + const char *it = string; 15.614 + for (bool stopflag = false; !stopflag; ) { 15.615 + char sep = 0, end = 0, item0[4096] = { 0 }, item1[4096] = { 0 }; 15.616 + float ind0 = 0, ind1 = 0, step = 1; 15.617 + if (std::sscanf(it,"%4095[^,]%c",item0,&end)!=2) stopflag = true; 15.618 + else it += 1 + cimg::strlen(item0); 15.619 + const int err = std::sscanf(item0,"%4095[^:]%c%f%c",item1,&sep,&step,&end); 15.620 + if (err!=1 && err!=3) error("Command '%s' : Invalid indice(s) '[%s]'.",command,string); 15.621 + if (std::sscanf(item1,"%f%%-%f%c%c",&ind0,&ind1,&sep,&end)==3 && sep=='%') { 15.622 + ind0 = (float)cimg::round(ind0*indice_max/100,1); 15.623 + ind1 = (float)cimg::round(ind1*indice_max/100,1); 15.624 + } else if (std::sscanf(item1,"%f%%-%f%c",&ind0,&ind1,&end)==2) 15.625 + ind0 = (float)cimg::round(ind0*indice_max/100,1); 15.626 + else if (std::sscanf(item1,"%f-%f%c%c",&ind0,&ind1,&sep,&end)==3 && sep=='%') 15.627 + ind1 = (float)cimg::round(ind1*indice_max/100,1); 15.628 + else if (std::sscanf(item1,"%f-%f%c",&ind0,&ind1,&end)==2) { } 15.629 + else if (std::sscanf(item1,"%f%c%c",&ind0,&sep,&end)==2 && sep=='%') 15.630 + ind1 = (ind0 = (float)cimg::round(ind0*indice_max/100,1)); 15.631 + else if (std::sscanf(item1,"%f%c",&ind0,&end)==1) 15.632 + ind1 = ind0; 15.633 + else error("Command '%s' : Invalid indice(s) '[%s]'.",command,string); 15.634 + if (ind0<0) ind0+=indice_max; 15.635 + if (ind1<0) ind1+=indice_max; 15.636 + if (ind0<0 || ind0>=indice_max || ind1<0 || ind1>=indice_max || step<=0) { 15.637 + if (indice_max) error("Command '%s' : Invalid indice(s) '[%s]' (valid indice range is -%u...%u).", 15.638 + command,string,indice_max,indice_max-1); 15.639 + else error("Command '%s' : Invalid indice(s) '[%s]' (image list is empty).", 15.640 + command,string); 15.641 + } 15.642 + if (ind0>ind1) cimg::swap(ind0,ind1); 15.643 + const unsigned int 15.644 + iind0 = (unsigned int)ind0, 15.645 + _ind1 = (unsigned int)ind1, 15.646 + iind1 = (unsigned int)(_ind1 - cimg::mod((float)_ind1,step)); 15.647 + if (iind0==iind1) inds.insert(CImg<unsigned int>::vector(iind0)); 15.648 + else inds.insert(CImg<unsigned int>::sequence((unsigned int)(1+(iind1-iind0)/step), 15.649 + (unsigned int)iind0, 15.650 + (unsigned int)iind1).get_split('y')); 15.651 + } 15.652 + inds = inds.get_append('y').sort().get_split('y'); 15.653 + cimglist_for(inds,l) if (l!=inds.size-1 && inds(l,0)==inds(l+1,0)) inds.remove(l--); 15.654 + if (is_debug) { 15.655 + debug("Indices : "); 15.656 + inds.get_append('y').print(); // List indices if debug mode is activated. 15.657 + } 15.658 + return inds.get_append('y').sort(); 15.659 +} 15.660 + 15.661 +// Return stringified version of indices or filenames. 15.662 +//---------------------------------------------------- 15.663 +char* gmic::indices2string(const CImg<unsigned int>& indices, const bool display_indices) const { 15.664 + static char res0[4096] = { 0 }, res1[4096] = { 0 }; 15.665 + const unsigned int siz = indices.size(); 15.666 + if (display_indices) { 15.667 + switch (siz) { 15.668 + case 0: std::sprintf(res0," []"); break; 15.669 + case 1: std::sprintf(res0," [%u]",indices[0]); break; 15.670 + case 2: std::sprintf(res0,"s [%u,%u]",indices[0],indices[1]); break; 15.671 + case 3: std::sprintf(res0,"s [%u,%u,%u]",indices[0],indices[1],indices[2]); break; 15.672 + case 4: std::sprintf(res0,"s [%u,%u,%u,%u]",indices[0],indices[1],indices[2],indices[3]); break; 15.673 + default: std::sprintf(res0,"s [%u,...,%u]",indices[0],indices[siz-1]); 15.674 + } 15.675 + return res0; 15.676 + } 15.677 + switch (siz) { 15.678 + case 0: std::sprintf(res1," "); break; 15.679 + case 1: std::sprintf(res1,"%s",filenames[indices[0]].ptr()); break; 15.680 + case 2: std::sprintf(res1,"%s, %s",filenames[indices[0]].ptr(),filenames[indices[1]].ptr()); break; 15.681 + case 3: std::sprintf(res1,"%s, %s, %s",filenames[indices[0]].ptr(),filenames[indices[1]].ptr(), 15.682 + filenames[indices[2]].ptr()); break; 15.683 + case 4: std::sprintf(res1,"%s, %s, %s, %s",filenames[indices[0]].ptr(),filenames[indices[1]].ptr(), 15.684 + filenames[indices[2]].ptr(), filenames[indices[3]].ptr()); break; 15.685 + default: std::sprintf(res1,"%s, ..., %s",filenames[indices[0]].ptr(),filenames[indices[siz-1]].ptr()); 15.686 + } 15.687 + return res1; 15.688 +} 15.689 +#endif // #if defined(gmic_float) || !defined(gmic_separate_compilation) 15.690 + 15.691 +// Template constructors. 15.692 +//----------------------- 15.693 +template<typename T> 15.694 +gmic::gmic(const int argc, const char *const *const argv, CImgList<T>& images, const char *custom_macros, const bool add_macros_at_start) { 15.695 + assign(images.size,custom_macros,add_macros_at_start); 15.696 + for (int pos = 1; pos<argc; ++pos) 15.697 + command_line.insert(CImg<char>(argv[pos],cimg::strlen(argv[pos])+1,1,1,1,false)); 15.698 + is_released = false; 15.699 + parse(images); 15.700 +} 15.701 + 15.702 +template<typename T> 15.703 +gmic::gmic(const char *const command, CImgList<T>& images, const char *custom_macros, const bool add_macros_at_start) { 15.704 + assign(images.size,custom_macros,add_macros_at_start); 15.705 + char item[4096] = { 0 }; 15.706 + for (const char *ncommand = command; *ncommand; ) { 15.707 + if (std::sscanf(ncommand,"%[^ ]",item)==1) { 15.708 + const int l = cimg::strlen(item); 15.709 + command_line.insert(CImg<char>(item,l+1,1,1,1,false)); 15.710 + ncommand += l; 15.711 + while (*ncommand==' ') ++ncommand; 15.712 + } else break; 15.713 + } 15.714 + is_released = true; 15.715 + parse(images); 15.716 +} 15.717 + 15.718 +// Display specified image(s). 15.719 +//----------------------------- 15.720 +template<typename T> 15.721 +bool gmic::display_images(const CImgList<T>& images, const CImg<unsigned int>& indices, 15.722 + const bool verbose) const { 15.723 + if (!images || !indices) { print("Display image []."); return false; } 15.724 + CImgList<unsigned int> inds = indices.get_unroll('x').get_split('x'); 15.725 + CImgList<T> visu; 15.726 + unsigned int max_height = 0; 15.727 + cimglist_for(inds,l) { 15.728 + const CImg<T>& img = images[inds(l,0)]; 15.729 + if (img.height>max_height && !img.is_CImg3d()) max_height = img.height; 15.730 + } 15.731 + cimglist_for(inds,l) { 15.732 + const unsigned int ind = inds(l,0); 15.733 + const CImg<T> &img = images[ind]; 15.734 + if (img) { 15.735 + if (!max_height || img.height<max_height) visu.insert(img,~0U,true); 15.736 + else visu.insert(img.get_lines(0,max_height-1)); 15.737 + } else if (verbose) { warning("Display image : Image [%d] is empty.",ind); inds.remove(l--); } 15.738 + } 15.739 + const CImg<unsigned int> nindices = inds.get_append('x'); 15.740 + const char *const fnames = indices2string(nindices,false); 15.741 + print("Display image%s = '%s'.\n\n",gmic_inds,fnames); 15.742 + if (visu.size) { 15.743 + if (visu.size!=1) visu.display(fnames,verbosity_level>=0,'x','p'); 15.744 + else { 15.745 + const CImg<T> &img = visu[0]; 15.746 + char title[4096] = { 0 }; 15.747 + std::sprintf(title,"%s (%dx%dx%dx%d)",fnames,img.dimx(),img.dimy(),img.dimz(),img.dimv()); 15.748 + img.display(title,verbosity_level>=0); 15.749 + } 15.750 + } 15.751 + return true; 15.752 +} 15.753 + 15.754 +// Display plots of specified image(s). 15.755 +//-------------------------------------- 15.756 +template<typename T> 15.757 +bool gmic::display_plots(const CImgList<T>& images, const CImg<unsigned int>& indices, 15.758 + const unsigned int plot_type, const unsigned int vertex_type, 15.759 + const double xmin, const double xmax, 15.760 + const double ymin, const double ymax, 15.761 + const bool verbose) const { 15.762 + if (!images || !indices) { print("Plot image []."); return false; } 15.763 + CImgDisplay disp(cimg_fitscreen(640,480,1),0,0); 15.764 + cimg_foroff(indices,l) { 15.765 + const unsigned int ind = indices[l]; 15.766 + const CImg<T>& img = images[ind]; 15.767 + if (img) { 15.768 + print("Plot image%s = '%s'.\n",gmic_inds,indices2string(indices,false)); 15.769 + if (verbosity_level>=0) { std::fputc('\n',cimg_stdout); img.print(filenames[ind].ptr()); } 15.770 + char title[4096] = { 0 }; 15.771 + std::sprintf(title,"%s (%dx%dx%dx%d)", 15.772 + filenames[ind].ptr(),img.dimx(),img.dimy(),img.dimz(),img.dimv()); 15.773 + img.display_graph(disp.set_title(title),plot_type,vertex_type,0,xmin,xmax,0,ymin,ymax); 15.774 + } else if (verbose) warning("Plot image : Image [%d] is empty.",ind); 15.775 + } 15.776 + return true; 15.777 +} 15.778 + 15.779 +// Display specified 3D object(s). 15.780 +//-------------------------------- 15.781 +template<typename T> 15.782 +bool gmic::display_objects3d(const CImgList<T>& images, const CImg<unsigned int>& indices, 15.783 + const bool verbose) const { 15.784 + if (!indices) { print("Display 3D object []."); return false; } 15.785 + CImg<unsigned char> background; 15.786 + bool exist3d = false; 15.787 + CImgDisplay disp; 15.788 + cimg_foroff(indices,l) { 15.789 + const unsigned int ind = indices[l]; 15.790 + const CImg<T> &img = images[ind]; 15.791 + if (!img.is_CImg3d()) { 15.792 + if (verbose) warning("Display 3D object : Image [%d] is not a 3D object.",ind); 15.793 + } else { 15.794 + exist3d = true; 15.795 + if (!background || !disp) { 15.796 + background.assign(cimg_fitscreen(640,480,1),1,3); 15.797 + cimg_forV(background,k) background.get_shared_channel(k).fill(background3d[k]); 15.798 + disp.assign(background); 15.799 + } 15.800 + CImgList<unsigned int> primitives3d; 15.801 + CImgList<unsigned char> colors3d; 15.802 + CImg<float> opacities3d; 15.803 + CImg<float> points3d(img); 15.804 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.805 + print("Display 3D object [%u] = '%s' (%d points, %u primitives).", 15.806 + ind,filenames[ind].ptr(),points3d.dimx(),primitives3d.size); 15.807 + disp.set_title("%s (%d points, %u primitives)", 15.808 + filenames[ind].ptr(),points3d.dimx(),primitives3d.size); 15.809 + background.display_object3d(disp,points3d,primitives3d,colors3d,opacities3d, 15.810 + true,render3d,renderd3d,!is_oriented3d,focale3d,specular_light3d,specular_shine3d); 15.811 + if (disp.is_closed) break; 15.812 + } 15.813 + } 15.814 + return exist3d; 15.815 +} 15.816 + 15.817 +// Substitute '@' expressions. 15.818 +//---------------------------- 15.819 +template<typename T> 15.820 +CImg<char> gmic::substitute_arobace(const char *const argument, const CImgList<T>& images) const { 15.821 + if (!argument) return CImg<char>(); 15.822 + CImgList<char> _largument; 15.823 + char range[4096] = { 0 }; 15.824 + for (const char *nargument = argument; *nargument; ) { 15.825 + if (*nargument=='@') { 15.826 + char argx[4096] = { 0 }, argy[4096] = { 0 }, argz[4096] = { 0 }, argv[4096] = { 0 }; 15.827 + int ind = 0, bcond = 0; *range = 0; char sepx = 0, sepy = 0, sepz = 0, sepv = 0, sep = 0, end = 0; 15.828 + float x = 0, y = 0, z = 0, v = 0, m = 0, M = 1; 15.829 + if (nargument[1]=='#' || 15.830 + (std::sscanf(nargument,"@{#%c",&sep)==1 && sep=='}')) { 15.831 + std::sprintf(range,"%u",images.size); 15.832 + _largument.insert(CImg<char>(range,cimg::strlen(range),1,1,1,true)); 15.833 + if (sep=='}') nargument+=4; else nargument+=2; 15.834 + } else if (std::sscanf(nargument,"@%d",&ind)==1 || 15.835 + (std::sscanf(nargument,"@{%d%c",&ind,&sep)==2 && sep=='}') || 15.836 + (std::sscanf(nargument,"@{%d%*c%4095[^}]%c",&ind,range,&sep)==3 && sep=='}')) { 15.837 + int nind = ind; 15.838 + if (nind<0) nind+=images.size; 15.839 + if (nind<0 || nind>=(int)images.size) { 15.840 + if (images.size) error("Invalid indice '%d' in '@argument' (valid indice range is -%u...%u).", 15.841 + ind,images.size,images.size-1); 15.842 + else error("Invalid indice '%d' in '@argument' (image list is empty).",ind); 15.843 + } 15.844 + const unsigned int sizrange = cimg::strlen(range); 15.845 + const CImg<T>& img = images[nind]; 15.846 + CImg<T> values; 15.847 + if (sizrange) { 15.848 + const CImg<unsigned int> iinds = indices2cimg(range,img.size(),"parsing"); 15.849 + values.assign(iinds.size()); 15.850 + cimg_foroff(iinds,p) values[p] = img[iinds(p)]; 15.851 + } else values = img.get_shared(); 15.852 + const CImg<char> vs = values.value_string(); 15.853 + const unsigned int vsl = vs.size(); 15.854 + if (vsl>1) _largument.insert(CImg<char>(vs.ptr(),vsl-1,1,1,1,true)); 15.855 + nargument+= 1 + (sep?2:0) + (sizrange?1:0) + sizrange + std::sprintf(range,"%d",ind); 15.856 + } else if (((std::sscanf(nargument,"@(%d%*c%4095[0-9.eE%+-]%c",&ind,argx,&sep)==3 && sep==')') || 15.857 + (std::sscanf(nargument,"@(%d%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&ind,argx,argy,&sep)==4 && sep==')') || 15.858 + (std::sscanf(nargument,"@(%d%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.859 + &ind,argx,argy,argz,&sep)==5 && sep==')') || 15.860 + (std::sscanf(nargument,"@(%d%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.861 + &ind,argx,argy,argz,argv,&sep)==6 && sep==')') || 15.862 + (std::sscanf(nargument,"@(%d%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c", 15.863 + &ind,argx,argy,argz,argv,&bcond,&sep)==7 && sep==')')) && 15.864 + (!*argx || 15.865 + (std::sscanf(argx,"%f%c%c",&x,&sepx,&end)==2 && sepx=='%') || 15.866 + std::sscanf(argx,"%f%c",&x,&end)==1) && 15.867 + (!*argy || 15.868 + (std::sscanf(argy,"%f%c%c",&y,&sepy,&end)==2 && sepy=='%') || 15.869 + std::sscanf(argy,"%f%c",&y,&end)==1) && 15.870 + (!*argz || 15.871 + (std::sscanf(argz,"%f%c%c",&z,&sepz,&end)==2 && sepz=='%') || 15.872 + std::sscanf(argz,"%f%c",&z,&end)==1) && 15.873 + (!*argv || 15.874 + (std::sscanf(argv,"%f%c%c",&v,&sepv,&end)==2 && sepv=='%') || 15.875 + std::sscanf(argv,"%f%c",&v,&end)==1)) { 15.876 + int nind = ind; 15.877 + if (nind<0) nind+=images.size; 15.878 + if (nind<0 || nind>=(int)images.size) { 15.879 + if (images.size) error("Invalid indice '%d' in '@argument' (valid indice range is -%u...%u).", 15.880 + ind,images.size,images.size-1); 15.881 + else error("Invalid indice '%d' in '@argument' (image list is empty).",ind); 15.882 + } 15.883 + const CImg<T>& img = images[nind]; 15.884 + const int 15.885 + nx = (int)cimg::round(sepx=='%'?x*(img.dimx()-1)/100:x,1), 15.886 + ny = (int)cimg::round(sepy=='%'?y*(img.dimy()-1)/100:y,1), 15.887 + nz = (int)cimg::round(sepz=='%'?z*(img.dimz()-1)/100:z,1), 15.888 + nv = (int)cimg::round(sepv=='%'?v*(img.dimv()-1)/100:v,1); 15.889 + std::sprintf(range,"%g",bcond?(double)img.atXYZV(nx,ny,nz,nv):(double)img.atXYZV(nx,ny,nz,nv,0)); 15.890 + _largument.insert(CImg<char>(range,cimg::strlen(range))); 15.891 + while (*nargument!=')') ++nargument; ++nargument; 15.892 + } else if ((std::sscanf(nargument,"@%c",&sep)==1 && sep=='?') || 15.893 + (std::sscanf(nargument,"@{?%c",&sep)==1 && sep=='}') || 15.894 + (std::sscanf(nargument,"@[?%c",&sep)==1 && sep==']') || 15.895 + (std::sscanf(nargument,"@{?%*c%f%c",&M,&sep)==2 && sep=='}') || 15.896 + (std::sscanf(nargument,"@[?%*c%f%c",&M,&sep)==2 && sep==']') || 15.897 + (std::sscanf(nargument,"@{?%*c%f%*c%f%c",&m,&M,&sep)==3 && sep=='}') || 15.898 + (std::sscanf(nargument,"@[?%*c%f%*c%f%c",&m,&M,&sep)==3 && sep==']')) { 15.899 + const double r = m + (M-m)*cimg::rand(); 15.900 + if (sep==']') std::sprintf(range,"%d",(int)cimg::round(r,1)); else std::sprintf(range,"%g",r); 15.901 + _largument.insert(CImg<char>(range,cimg::strlen(range),1,1,1,true)); 15.902 + if (sep=='?') nargument+=2; else { while (*nargument!=sep) ++nargument; ++nargument; } 15.903 + } else _largument.insert(CImg<char>(nargument++,1,1,1,1,true)); 15.904 + } else { 15.905 + std::sscanf(nargument,"%4095[^@]",range); 15.906 + const int l = cimg::strlen(range); 15.907 + _largument.insert(CImg<char>(range,l,1,1,1,true)); 15.908 + nargument+=l; 15.909 + } 15.910 + } 15.911 + _largument.insert(CImg<char>::vector(0)); 15.912 + return _largument.get_append('x'); 15.913 +} 15.914 + 15.915 +// Main parsing procedure. 15.916 +//------------------------ 15.917 +template<typename T> 15.918 +gmic& gmic::parse(CImgList<T> &images) { 15.919 + const unsigned int command_line_maxsize = 65535; 15.920 + const int no_ind = (int)(~0U>>1); 15.921 + cimg::exception_mode() = 0; 15.922 + 15.923 + // Begin command line parsing. 15.924 + while (position<command_line.size && command_line.size<command_line_maxsize) { 15.925 + const char 15.926 + *const orig_item = command_line[position].ptr(), 15.927 + *const orig_argument = position+1<command_line.size?command_line[position+1].ptr():""; 15.928 + 15.929 + // Substitute '@' expressions in 'orig_item' and 'orig_argument' if necessary. 15.930 + CImg<char> _item, _argument, _argument_text; 15.931 + if (*orig_item=='-' || *orig_item=='[' || *orig_item=='(') { 15.932 + if (std::strchr(orig_item,'@')) { 15.933 + _item = substitute_arobace(orig_item,images); 15.934 + if (_item.size()>4095) error("Buffer overflow when substituting item '%s'.",orig_item); 15.935 + } 15.936 + if (*orig_item=='-' && 15.937 + (*orig_argument!='-' || 15.938 + (*orig_argument=='-' && (orig_argument[1]=='.' || orig_argument[1]=='@' || 15.939 + (orig_argument[1]>='0' && orig_argument[1]<='9')))) 15.940 + && std::strchr(orig_argument,'@')) { 15.941 + _argument = substitute_arobace(orig_argument,images); 15.942 + if (_argument.size()>4095) error("Buffer overflow when substituting argument '%s'.",orig_argument); 15.943 + } 15.944 + } 15.945 + const char 15.946 + *item = _item?_item.ptr():orig_item, 15.947 + *argument = _argument?_argument.ptr():orig_argument; 15.948 + const char *argument_text = argument; 15.949 + if (cimg::strlen(argument)>=64) { 15.950 + _argument_text.assign(64,1,1,1,0); 15.951 + std::memcpy(_argument_text.ptr(),argument,60*sizeof(char)); 15.952 + _argument_text[60] = _argument_text[61] = _argument_text[62] = '.'; _argument_text[63] = 0; 15.953 + argument_text = _argument_text.ptr(); 15.954 + } 15.955 + 15.956 + // Get current item/command from the command line. 15.957 + char item0[4096] = { 0 }, item1[4096] = { 0 }; 15.958 + bool get_version = false; 15.959 + CImg<unsigned int> indices; 15.960 + if (item[0]=='-' && item[1] && item[1]!='.') { 15.961 + char sep0 = 0, sep1 = 0, end = 0; 15.962 + if (item[1]=='-' && item[2] && item[2]!='[' && item[2]!='3' && item[3]!='d') { ++item; get_version = true; } 15.963 + const int err = std::sscanf(item,"%4095[^[]%c%4095[0-9.eE%,:+-]%c%c",item0,&sep0,item1,&sep1,&end); 15.964 + if (err==1) indices = CImg<unsigned int>::sequence(images.size,0,images.size-1); 15.965 + else if (err==4 && sep1==']') 15.966 + indices = indices2cimg(item1,(!strcmp(item0,"-i")||!strcmp(item0,"-input"))?images.size+1:images.size,item0); 15.967 + else { std::strcpy(item0,item); item1[0] = 0; } 15.968 + } 15.969 + ++position; 15.970 + 15.971 + // Check for verbosity commands. 15.972 + if (*item=='-') { 15.973 + if (!cimg::strcmp("-verbose+",item) || !cimg::strcmp("-v+",item)) ++verbosity_level; 15.974 + else if (!cimg::strcmp("-verbose-",item) || !cimg::strcmp("-v-",item)) --verbosity_level; 15.975 + } 15.976 + 15.977 + if (is_begin) { print("Start G'MIC instance."); is_begin = false; } 15.978 + debug("Item : '%s', Argument : '%s'.",item,argument); 15.979 + 15.980 + // Begin command interpretation. 15.981 + try { 15.982 + if (*item=='-') { 15.983 + 15.984 + //---------------- 15.985 + // Global options 15.986 + //---------------- 15.987 + 15.988 + // Verbosity (actually, just continue to next command since verbosity has been already processed above). 15.989 + if (!cimg::strcmp("-verbose+",item) || !cimg::strcmp("-v+",item) || 15.990 + !cimg::strcmp("-verbose-",item) || !cimg::strcmp("-v-",item)) continue; 15.991 + 15.992 + // Load macro file. 15.993 + if (!cimg::strcmp("-macros",item) || !cimg::strcmp("-m",item)) { 15.994 + print("Load macro file '%s'",cimg::basename(argument)); 15.995 + std::FILE *const file = cimg::fopen(argument,"r"); 15.996 + if (file) { 15.997 + const unsigned int siz = macros.size; 15.998 + add_macros(file,true); 15.999 + cimg::fclose(file); 15.1000 + if (verbosity_level>=0) std::fprintf(cimg_stdout," (%u macros added).",macros.size-siz); 15.1001 + } 15.1002 + else error("Load macro file '%s' : File not found.",argument); 15.1003 + ++position; continue; 15.1004 + } 15.1005 + 15.1006 + // Switch 'is_debug' flag. 15.1007 + if (!cimg::strcmp("-debug",item)) { 15.1008 + is_debug = !is_debug; 15.1009 + continue; 15.1010 + } 15.1011 + 15.1012 + // Switch 'is_fullpath' flag. 15.1013 + if (!cimg::strcmp("-fullpath",item)) { 15.1014 + is_fullpath = !is_fullpath; 15.1015 + continue; 15.1016 + } 15.1017 + 15.1018 + //---------------------- 15.1019 + // Arithmetic operators 15.1020 + //---------------------- 15.1021 + 15.1022 + // Common arithmetic operators. 15.1023 + gmic_arithmetic_item("-add","-+", 15.1024 + operator+=,"Add %g to image%s",value,gmic_inds,T, 15.1025 + operator+=,"Add to image%s", 15.1026 + "Add image [%d] to image%s",ind[0],gmic_inds, 15.1027 + "Add image%s together"); 15.1028 + 15.1029 + gmic_arithmetic_item("-sub","--", 15.1030 + operator-=,"Substract %g to image%s",value,gmic_inds,T, 15.1031 + operator-=,"Substract to image%s", 15.1032 + "Substract image [%d] to image%s",ind[0],gmic_inds, 15.1033 + "Substract image%s together"); 15.1034 + 15.1035 + gmic_arithmetic_item("-mul","-*", 15.1036 + operator*=,"Multiply image%s by %g",gmic_inds,value,double, 15.1037 + mul,"Multiply image%s", 15.1038 + "Multiply image%s by image [%d]",gmic_inds,ind[0], 15.1039 + "Multiply image%s together"); 15.1040 + 15.1041 + gmic_arithmetic_item("-div","-/", 15.1042 + operator/=,"Divide image%s by %g",gmic_inds,value,double, 15.1043 + div,"Divide image%s", 15.1044 + "Divide image%s by image [%d]",gmic_inds,ind[0], 15.1045 + "Divide image%s together"); 15.1046 + 15.1047 + gmic_arithmetic_item("-pow","-^", 15.1048 + pow,"Compute image%s to the power of %g",gmic_inds,value,double, 15.1049 + pow,"Compute power of image%s", 15.1050 + "Compute image%s to the power of image [%d]",gmic_inds,ind[0], 15.1051 + "Compute the power of image%s together"); 15.1052 + 15.1053 + gmic_arithmetic_item("-min","-min", 15.1054 + min,"Compute pointwise minimum between image%s and %g",gmic_inds,value,T, 15.1055 + min,"Compute pointwise minimum with image%s", 15.1056 + "Compute pointwise minimum between image%s and image [%d]",gmic_inds,ind[0], 15.1057 + "Compute pointwise minimum between image%s together"); 15.1058 + 15.1059 + gmic_arithmetic_item("-max","-max", 15.1060 + max,"Compute pointwise maximum between image%s and %g",gmic_inds,value,T, 15.1061 + max,"Compute pointwise maximum with image%s", 15.1062 + "Compute pointwise maximum between image%s and image [%d]",gmic_inds,ind[0], 15.1063 + "Compute pointwise maximum between image%s together"); 15.1064 + 15.1065 + gmic_arithmetic_item("-mod","-%", 15.1066 + operator%=,"Compute pointwise modulo between image%s and %g.",gmic_inds,value,T, 15.1067 + operator%=,"Compute pointwise modulo with image%s", 15.1068 + "Compute pointwise modulo between image%s and image [%d]",gmic_inds,ind[0], 15.1069 + "Compute pointwise modulo between image%s together"); 15.1070 + 15.1071 + gmic_arithmetic_item("-and","-and", 15.1072 + operator&=,"Compute bitwise AND between image%s and %g.",gmic_inds,value,unsigned int, 15.1073 + operator&=,"Compute bitwise AND with image%s", 15.1074 + "Compute bitwise AND between image%s and image [%d]",gmic_inds,ind[0], 15.1075 + "Compute bitwise AND between image%s together"); 15.1076 + 15.1077 + gmic_arithmetic_item("-or","-or", 15.1078 + operator|=,"Compute bitwise OR between image%s and %g.",gmic_inds,value,unsigned int, 15.1079 + operator|=,"Compute bitwise OR with image%s", 15.1080 + "Compute bitwise OR between image%s and image [%d]",gmic_inds,ind[0], 15.1081 + "Compute bitwise OR between image%s together"); 15.1082 + 15.1083 + gmic_arithmetic_item("-xor","-xor", 15.1084 + operator^=,"Compute bitwise XOR between image%s and %g.",gmic_inds,value,unsigned int, 15.1085 + operator^=,"Compute bitwise XOR with image%s", 15.1086 + "Compute bitwise XOR between image%s and image [%d]",gmic_inds,ind[0], 15.1087 + "Compute bitwise XOR between image%s together"); 15.1088 + 15.1089 + // Other arithmetic operators. 15.1090 + gmic_simple_item("-cos",cos,"Compute cosine of image%s."); 15.1091 + gmic_simple_item("-sin",sin,"Compute sine of image%s."); 15.1092 + gmic_simple_item("-tan",tan,"Compute tangent of image%s."); 15.1093 + gmic_simple_item("-acos",acos,"Compute arccosine of image%s."); 15.1094 + gmic_simple_item("-asin",asin,"Compute arcsine of image%s."); 15.1095 + gmic_simple_item("-atan",atan,"Compute arctangent of image%s."); 15.1096 + gmic_simple_item("-abs",abs,"Compute absolute value of image%s."); 15.1097 + gmic_simple_item("-sqr",sqr,"Compute square function of image%s."); 15.1098 + gmic_simple_item("-sqrt",sqrt,"Compute square root of image%s."); 15.1099 + gmic_simple_item("-exp",exp,"Compute exponential of image%s."); 15.1100 + gmic_simple_item("-log",log,"Compute logarithm of image%s."); 15.1101 + gmic_simple_item("-log10",log10,"Compute logarithm_10 of image%s."); 15.1102 + 15.1103 + //--------------------------------------- 15.1104 + // Pointwise operations on pixel values 15.1105 + //--------------------------------------- 15.1106 + 15.1107 + // Type cast. 15.1108 + if (!cimg::strcmp("-type",item) || !cimg::strcmp("-t",item)) { 15.1109 + typedef unsigned char uchar; 15.1110 + typedef unsigned short ushort; 15.1111 + typedef unsigned int uint; 15.1112 +#ifndef gmic_minimal 15.1113 + gmic_cast(bool,"bool"); 15.1114 + gmic_cast(uchar,"unsigned char"); 15.1115 + gmic_cast(char,"char"); 15.1116 + gmic_cast(ushort,"unsigned short"); 15.1117 + gmic_cast(short,"short"); 15.1118 + gmic_cast(uint,"unsigned int"); 15.1119 + gmic_cast(int,"int"); 15.1120 + gmic_cast(double,"double"); 15.1121 +#endif 15.1122 + gmic_cast(float,"float"); 15.1123 + error("Set pixel type : Invalid argument '%s' " 15.1124 + "(should be '{bool,uchar,char,ushort,short,uint,int,float,double}').", 15.1125 + argument_text); 15.1126 + } 15.1127 + 15.1128 + // Set scalar value. 15.1129 + if (!cimg::strcmp("-set",item0) || !cimg::strcmp("-=",item0)) { 15.1130 + double value = 0; float x = 0, y = 0, z = 0, v = 0; char sepx = 0, sepy = 0, sepz = 0, sepv = 0, end = 0; 15.1131 + char argx[4096] = { 0 }, argy[4096] = { 0 }, argz[4096] = { 0 }, argv[4096] = { 0 }; 15.1132 + if ((std::sscanf(argument,"%lf%c",&value,&end)==1 || 15.1133 + std::sscanf(argument,"%lf%*c%4095[0-9.eE%+-]%c",&value,argx,&end)==2 || 15.1134 + std::sscanf(argument,"%lf%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&value,argx,argy,&end)==3 || 15.1135 + std::sscanf(argument,"%lf%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&value,argx,argy,argz,&end)==4 || 15.1136 + std::sscanf(argument,"%lf%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&value,argx,argy,argz,argv,&end)==5) && 15.1137 + (!*argx || 15.1138 + (std::sscanf(argx,"%f%c%c",&x,&sepx,&end)==2 && sepx=='%') || 15.1139 + std::sscanf(argx,"%f%c",&x,&end)==1) && 15.1140 + (!*argy || 15.1141 + (std::sscanf(argy,"%f%c%c",&y,&sepy,&end)==2 && sepy=='%') || 15.1142 + std::sscanf(argy,"%f%c",&y,&end)==1) && 15.1143 + (!*argz || 15.1144 + (std::sscanf(argz,"%f%c%c",&z,&sepz,&end)==2 && sepz=='%') || 15.1145 + std::sscanf(argz,"%f%c",&z,&end)==1) && 15.1146 + (!*argv || 15.1147 + (std::sscanf(argv,"%f%c%c",&v,&sepv,&end)==2 && sepv=='%') || 15.1148 + std::sscanf(argv,"%f%c",&v,&end)==1)) { 15.1149 + print("Set scalar value %g at position (%g%s,%g%s,%g%s,%g%s) in image%s", 15.1150 + value,x,sepx=='%'?"%":"",y,sepy=='%'?"%":"",z,sepz=='%'?"%":"",v,sepv=='%'?"%":"",gmic_inds); 15.1151 + cimg_foroff(indices,l) { 15.1152 + CImg<T> &img = images[indices[l]]; 15.1153 + const int 15.1154 + nx = (int)cimg::round(sepx=='%'?x*(img.dimx()-1)/100:x,1), 15.1155 + ny = (int)cimg::round(sepy=='%'?y*(img.dimy()-1)/100:y,1), 15.1156 + nz = (int)cimg::round(sepz=='%'?z*(img.dimz()-1)/100:z,1), 15.1157 + nv = (int)cimg::round(sepv=='%'?v*(img.dimv()-1)/100:v,1); 15.1158 + gmic_apply(images[indices[l]],gmic_set(value,nx,ny,nz,nv)); 15.1159 + } 15.1160 + } else error("Set scalar value in image%s : Invalid argument '%s' " 15.1161 + "(should be 'value,x[,y[,z[,v]]]').", 15.1162 + argument_text); 15.1163 + ++position; continue; 15.1164 + } 15.1165 + 15.1166 + // Invert endianness. 15.1167 + gmic_simple_item("-endian",invert_endianness,"Invert endianness of image%s."); 15.1168 + 15.1169 + // Fill. 15.1170 + if (!cimg::strcmp("-fill",item0) || !cimg::strcmp("-f",item0)) { 15.1171 + char sep = 0, end = 0; int ind0 = no_ind; 15.1172 + if (std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') { 15.1173 + gmic_check_indice(ind0,"Fill image%s"); 15.1174 + print("Fill image%s with values of image [%d].",gmic_inds,ind0); 15.1175 + const CImg<T> values = images[ind0]; 15.1176 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],fill(values)); 15.1177 + } else { 15.1178 + print("Fill image%s with values '%s'.",gmic_inds,argument_text); 15.1179 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],fill(argument,true)); 15.1180 + } 15.1181 + ++position; continue; 15.1182 + } 15.1183 + 15.1184 + // Threshold. 15.1185 + if (!cimg::strcmp("-threshold",item0)) { 15.1186 + char sep = 0, end = 0; int soft = 0; double value = 0; 15.1187 + if (std::sscanf(argument,"%lf%c",&value,&end)==1 || 15.1188 + (std::sscanf(argument,"%lf%c%c",&value,&sep,&end)==2 && sep=='%') || 15.1189 + std::sscanf(argument,"%lf%*c%d%c",&value,&soft,&end)==2 || 15.1190 + (std::sscanf(argument,"%lf%c%*c%d%c",&value,&sep,&soft,&end)==3 && sep=='%')) { 15.1191 + print("Threshold image%s with %g%s (%s threshold).",gmic_inds,value,sep=='%'?"%":"",soft?"soft":"hard"); 15.1192 + cimg_foroff(indices,l) { 15.1193 + CImg<T> &img = images[indices[l]]; 15.1194 + double vmin = 0, vmax = 0, nvalue = value; 15.1195 + if (sep=='%') { vmin = img.minmax(vmax); nvalue = vmin + (vmax - vmin)*value/100; } 15.1196 + gmic_apply(img,threshold((T)nvalue,soft?true:false)); 15.1197 + } 15.1198 + ++position; 15.1199 + } else { 15.1200 + print("Threshold image%s : Interactive mode.",gmic_inds); 15.1201 + CImgDisplay disp; 15.1202 + char title[4096] = { 0 }; 15.1203 + cimg_foroff(indices,l) { 15.1204 + CImg<T> 15.1205 + &img = images[indices[l]], 15.1206 + visu = img.depth>1?img.get_projections2d(img.dimx()/2,img.dimy()/2,img.dimz()/2). 15.1207 + channels(0,cimg::min(3,img.dimv())-1):img.get_channels(0,cimg::min(3,img.dimv()-1)); 15.1208 + if (disp) disp.resize(cimg_fitscreen(visu.dimx(),visu.dimy(),1),false); 15.1209 + else disp.assign(cimg_fitscreen(visu.dimx(),visu.dimy(),1),0,1); 15.1210 + double 15.1211 + vmin = 0, vmax = (double)img.maxmin(vmin), 15.1212 + distmax = std::sqrt(cimg::sqr(disp.dimx()-1.0) + cimg::sqr(disp.dimy()-1.0)), 15.1213 + amount = 50; 15.1214 + bool stopflag = false, obutt = false; 15.1215 + int omx = -1, omy = -1; 15.1216 + CImg<T> res; 15.1217 + for (disp.show().button = disp.key = 0; !stopflag; ) { 15.1218 + const unsigned int key = disp.key; 15.1219 + if (!res) { 15.1220 + std::sprintf(title,"%s : Interactive threshold %.3g%%",filenames[indices[l]].ptr(),amount); 15.1221 + disp.display(res=visu.get_threshold((T)(vmin + amount*(vmax-vmin)/100))). 15.1222 + set_title(title).wait(); 15.1223 + } 15.1224 + const int mx = disp.mouse_x, my = disp.mouse_y; 15.1225 + if (disp.button && mx>=0 && my>=0) { 15.1226 + if (omx==mx && omy==my && !obutt) break; 15.1227 + omx = mx; omy = my; obutt = true; 15.1228 + const double dist = std::sqrt((double)cimg::sqr(mx) + cimg::sqr(my)); 15.1229 + amount = dist*100/distmax; 15.1230 + res.assign(); 15.1231 + } else if (!disp.button) obutt = false; 15.1232 + if (disp.is_closed || (key && key!=cimg::keyCTRLLEFT)) stopflag = true; 15.1233 + if (key==cimg::keyD && disp.is_keyCTRLLEFT && 15.1234 + (disp.resize(cimg_fitscreen(3*disp.width/2,3*disp.height/2,1),stopflag=false).key=0)==0) 15.1235 + disp.is_resized = true; 15.1236 + if (key==cimg::keyC && disp.is_keyCTRLLEFT && 15.1237 + (disp.resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),stopflag=false).key=0)==0) 15.1238 + disp.is_resized = true; 15.1239 + if (disp.is_resized) { 15.1240 + disp.resize(false).display(res); 15.1241 + distmax = std::sqrt(cimg::sqr(disp.dimx()-1.0) + cimg::sqr(disp.dimy()-1.0)); 15.1242 + } 15.1243 + } 15.1244 + gmic_apply(img,threshold((T)(vmin + amount*(vmax-vmin)/100))); 15.1245 + } 15.1246 + } 15.1247 + continue; 15.1248 + } 15.1249 + 15.1250 + // Cut. 15.1251 + if (!cimg::strcmp("-cut",item0)) { 15.1252 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1253 + double value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1254 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1255 + ((std::sscanf(arg0,"[%d%c%c",&ind0,&sep0,&end)==2 && sep0==']') || 15.1256 + (std::sscanf(arg0,"%lf%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1257 + std::sscanf(arg0,"%lf%c",&value0,&end)==1) && 15.1258 + ((std::sscanf(arg1,"[%d%c%c",&ind1,&sep1,&end)==2 && sep1==']') || 15.1259 + (std::sscanf(arg1,"%lf%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1260 + std::sscanf(arg1,"%lf%c",&value1,&end)==1)) { 15.1261 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Cut image%s"); value0 = images[ind0].min(); sep0 = 0; } 15.1262 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Cut image%s"); value1 = images[ind1].max(); sep1 = 0; } 15.1263 + print("Cut image%s in [%g%s,%g%s].",gmic_inds,value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":""); 15.1264 + cimg_foroff(indices,l) { 15.1265 + CImg<T> &img = images[indices[l]]; 15.1266 + double vmin = 0, vmax = 0, nvalue0 = value0, nvalue1 = value1; 15.1267 + if (sep0=='%') { vmin = img.minmax(vmax); nvalue0 = vmin + (vmax - vmin)*value0/100; } 15.1268 + if (sep1=='%') { vmin = img.minmax(vmax); nvalue1 = vmin + (vmax - vmin)*value1/100; } 15.1269 + gmic_apply(img,cut((T)nvalue0,(T)nvalue1)); 15.1270 + } 15.1271 + ++position; 15.1272 + } else if (std::sscanf(argument,"[%d%c%c",&(ind0=no_ind),&sep0,&end)==2) { 15.1273 + if (ind0!=no_ind) gmic_check_indice(ind0,"Cut image%s"); 15.1274 + value0 = images[ind0].minmax(value1); 15.1275 + print("Cut image%s in [%g,%g].",gmic_inds,value0,value1); 15.1276 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],cut((T)value0,(T)value1)); 15.1277 + ++position; 15.1278 + } else { 15.1279 + print("Cut image%s : Interactive mode.",gmic_inds); 15.1280 + CImgDisplay disp; 15.1281 + char title[4096] = { 0 }; 15.1282 + cimg_foroff(indices,l) { 15.1283 + CImg<T> 15.1284 + &img = images[indices[l]], 15.1285 + visu = img.depth>1?img.get_projections2d(img.dimx()/2,img.dimy()/2,img.dimz()/2). 15.1286 + channels(0,cimg::min(3,img.dimv())-1):img.get_channels(0,cimg::min(3,img.dimv()-1)); 15.1287 + if (disp) disp.resize(cimg_fitscreen(visu.dimx(),visu.dimy(),1),false); 15.1288 + else disp.assign(cimg_fitscreen(visu.dimx(),visu.dimy(),1),0,1); 15.1289 + double vmin = 0, vmax = (double)img.maxmin(vmin), amount0 = 0, amount1 = 100; 15.1290 + bool stopflag = false, obutt = false; 15.1291 + int omx = -1, omy = -1; 15.1292 + CImg<T> res; 15.1293 + for (disp.show().button = disp.key = 0; !stopflag; ) { 15.1294 + const unsigned int key = disp.key; 15.1295 + if (!res) { 15.1296 + std::sprintf(title,"%s : Interactive cut [%.3g%%,%.3g%%]", 15.1297 + filenames[indices[l]].ptr(),amount0,amount1); 15.1298 + disp.display(res = visu.get_cut((T)(vmin + amount0*(vmax-vmin)/100), 15.1299 + (T)(vmin + amount1*(vmax-vmin)/100))). 15.1300 + set_title(title).wait(); 15.1301 + } 15.1302 + const int mx = disp.mouse_x, my = disp.mouse_y; 15.1303 + if (disp.button && mx>=0 && my>=0) { 15.1304 + if (omx==mx && omy==my && !obutt) break; 15.1305 + omx = mx; omy = my; obutt = true; 15.1306 + amount0 = mx*100/disp.dimx(); amount1 = my*100/disp.dimy(); 15.1307 + res.assign(); 15.1308 + } else if (!disp.button) obutt = false; 15.1309 + if (disp.is_closed || (key && key!=cimg::keyCTRLLEFT)) stopflag = true; 15.1310 + if (key==cimg::keyD && disp.is_keyCTRLLEFT && 15.1311 + (disp.resize(cimg_fitscreen(3*disp.width/2,3*disp.height/2,1),stopflag=false).key=0)==0) 15.1312 + disp.is_resized = true; 15.1313 + if (key==cimg::keyC && disp.is_keyCTRLLEFT && 15.1314 + (disp.resize(cimg_fitscreen(2*disp.width/3,2*disp.height/3,1),stopflag=false).key=0)==0) 15.1315 + disp.is_resized = true; 15.1316 + if (disp.is_resized) disp.resize(false).display(res); 15.1317 + } 15.1318 + gmic_apply(img,cut((T)(vmin + amount0*(vmax-vmin)/100),(T)(vmin + amount1*(vmax-vmin)/100))); 15.1319 + } 15.1320 + } 15.1321 + continue; 15.1322 + } 15.1323 + 15.1324 + // Normalize. 15.1325 + if (!cimg::strcmp("-normalize",item0) || !cimg::strcmp("-n",item0)) { 15.1326 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1327 + double value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1328 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1329 + ((std::sscanf(arg0,"[%d%c%c",&ind0,&sep0,&end)==2 && sep0==']') || 15.1330 + (std::sscanf(arg0,"%lf%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1331 + std::sscanf(arg0,"%lf%c",&value0,&end)==1) && 15.1332 + ((std::sscanf(arg1,"[%d%c%c",&ind1,&sep1,&end)==2 && sep1==']') || 15.1333 + (std::sscanf(arg1,"%lf%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1334 + std::sscanf(arg1,"%lf%c",&value1,&end)==1)) { 15.1335 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Normalize image%s"); value0 = images[ind0].min(); sep0 = 0; } 15.1336 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Normalize image%s"); value1 = images[ind1].max(); sep1 = 0; } 15.1337 + print("Normalize image%s in [%g%s,%g%s].",gmic_inds,value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":""); 15.1338 + cimg_foroff(indices,l) { 15.1339 + CImg<T> &img = images[indices[l]]; 15.1340 + double vmin = 0, vmax = 0, nvalue0 = value0, nvalue1 = value1; 15.1341 + if (sep0=='%') { vmin = img.minmax(vmax); nvalue0 = vmin + (vmax - vmin)*value0/100; } 15.1342 + if (sep1=='%') { vmin = img.minmax(vmax); nvalue1 = vmin + (vmax - vmin)*value1/100; } 15.1343 + gmic_apply(img,normalize((T)nvalue0,(T)nvalue1)); 15.1344 + } 15.1345 + } else if (std::sscanf(argument,"[%d%c%c",&(ind0=no_ind),&sep0,&end)==2) { 15.1346 + if (ind0!=no_ind) gmic_check_indice(ind0,"Normalize image%s"); 15.1347 + value0 = images[ind0].minmax(value1); 15.1348 + print("Normalize image%s in [%g,%g].",gmic_inds,value0,value1); 15.1349 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],normalize((T)value0,(T)value1)); 15.1350 + } else error("Normalize image%s : Invalid argument '%s' " 15.1351 + "(should be '{value1[%%],[indice]},{value2[%%],[indice]}').",gmic_inds,argument_text); 15.1352 + ++position; continue; 15.1353 + } 15.1354 + 15.1355 + // Round. 15.1356 + if (!cimg::strcmp("-round",item0)) { 15.1357 + char end = 0; double value = 0; int rtype = 0; 15.1358 + if (std::sscanf(argument,"%lf%c",&value,&end)==1 || 15.1359 + std::sscanf(argument,"%lf%*c%d%c",&value,&rtype,&end)==2) { 15.1360 + print("Round image%s with value %g (%s rounding).", 15.1361 + gmic_inds,value,rtype<0?"backward":rtype>0?"forward":"nearest"); 15.1362 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],round((float)value,rtype)); 15.1363 + } else error("Round image%s : Invalid argument '%s' " 15.1364 + "(should be 'round_value[,round_type]').",gmic_inds,argument_text); 15.1365 + ++position; continue; 15.1366 + } 15.1367 + 15.1368 + // Equalize histogram. 15.1369 + if (!cimg::strcmp("-equalize",item0)) { 15.1370 + float nb = 256; char sep = 0, end = 0; 15.1371 + if (std::sscanf(argument,"%f%c",&nb,&end)==1 || 15.1372 + (std::sscanf(argument,"%f%c%c",&nb,&sep,&end)==2 && sep=='%')) { 15.1373 + if (nb<=0) error("Equalize image%s : Invalid cluster number %g.",gmic_inds,nb); 15.1374 + print("Equalize image%s with %g%s clusters.",gmic_inds,nb,sep=='%'?"%":""); 15.1375 + cimg_foroff(indices,l) { 15.1376 + CImg<T>& img = images[indices[l]]; 15.1377 + unsigned int N = (unsigned int)nb; 15.1378 + if (sep=='%') { double m, M = img.maxmin(m); N = (unsigned int)cimg::round((M-m)*nb/100,1); } 15.1379 + gmic_apply(img,equalize((int)nb)); 15.1380 + } 15.1381 + } else error("Equalize image%s : Invalid argument '%s' " 15.1382 + "(should be 'nb_clusters[%%]').",gmic_inds,argument_text); 15.1383 + ++position; continue; 15.1384 + } 15.1385 + 15.1386 + // Quantize. 15.1387 + if (!cimg::strcmp("-quantize",item0)) { 15.1388 + int nb = 0; char end = 0; 15.1389 + if (std::sscanf(argument,"%d%c",&nb,&end)==1) { 15.1390 + print("Quantize image%s with %d levels.",gmic_inds,nb); 15.1391 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],quantize(nb)); 15.1392 + } else error("Quantize image%s : Invalid argument '%s' " 15.1393 + "(should be 'nb_levels').",gmic_inds,argument_text); 15.1394 + ++position; continue; 15.1395 + } 15.1396 + 15.1397 + // Add noise. 15.1398 + if (!cimg::strcmp("-noise",item0)) { 15.1399 + float sigma = 0; char sep = 0, end = 0; int ntype = 0; 15.1400 + if (std::sscanf(argument,"%f%c",&sigma,&end)==1 || 15.1401 + (std::sscanf(argument,"%f%c%c",&sigma,&sep,&end)==2 && sep=='%') || 15.1402 + std::sscanf(argument,"%f%*c%d%c",&sigma,&ntype,&end)==2 || 15.1403 + (std::sscanf(argument,"%f%c%*c%d%c",&sigma,&sep,&ntype,&end)==3 && sep=='%')) { 15.1404 + const char *st_type = ntype==0?"gaussian":ntype==1?"uniform":ntype==2?"salt&pepper":"poisson"; 15.1405 + if (sep=='%') sigma = -sigma; 15.1406 + print("Add %s noise with standard deviation %g%s to image%s.", 15.1407 + st_type,cimg::abs(sigma),sigma<0?"%":"",gmic_inds); 15.1408 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],noise(sigma,ntype)); 15.1409 + } else error("Add noise to image%s : Invalid argument '%s' " 15.1410 + "(should be 'std[%%][,noise_type]').",gmic_inds,argument_text); 15.1411 + ++position; continue; 15.1412 + } 15.1413 + 15.1414 + // Rand. 15.1415 + if (!cimg::strcmp("-rand",item0)) { 15.1416 + double value0 = 0, value1 = 0; char end = 0; 15.1417 + if (std::sscanf(argument,"%lf%*c%lf%c",&value0,&value1,&end)==2) { 15.1418 + print("Fill image%s with random values in [%g,%g].",gmic_inds,value0,value1); 15.1419 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],rand((T)value0,(T)value1)); 15.1420 + } else error("Fill image%s with random values : Invalid argument '%s' " 15.1421 + "(should be 'valmin,valmax').",gmic_inds,argument_text); 15.1422 + ++position; continue; 15.1423 + } 15.1424 + 15.1425 + // Compute pointwise norms and orientations. 15.1426 + gmic_simple_item("-norm",pointwise_norm,"Compute vector norm."); 15.1427 + gmic_simple_item("-orientation",pointwise_orientation,"Compute vector orientation."); 15.1428 + 15.1429 + //------------------------ 15.1430 + // Color base conversions 15.1431 + //------------------------ 15.1432 + gmic_simple_item("-rgb2hsv",RGBtoHSV,"Convert image%s from RGB to HSV colorbases."); 15.1433 + gmic_simple_item("-rgb2hsl",RGBtoHSL,"Convert image%s from RGB to HSL colorbases."); 15.1434 + gmic_simple_item("-rgb2hsi",RGBtoHSI,"Convert image%s from RGB to HSI colorbases."); 15.1435 + gmic_simple_item("-rgb2yuv",RGBtoYUV,"Convert image%s from RGB to YUV colorbases."); 15.1436 + gmic_simple_item("-rgb2ycbcr",RGBtoYCbCr,"Convert image%s from RGB to YCbCr colorbases."); 15.1437 + gmic_simple_item("-rgb2xyz",RGBtoXYZ,"Convert image%s from RGB to XYZ colorbases."); 15.1438 + gmic_simple_item("-rgb2lab",RGBtoLab,"Convert image%s from RGB to Lab colorbases."); 15.1439 + gmic_simple_item("-rgb2cmy",RGBtoCMY,"Convert image%s from RGB to CMY colorbases."); 15.1440 + gmic_simple_item("-rgb2cmyk",RGBtoCMYK,"Convert image%s from RGB to CMYK colorbases."); 15.1441 + gmic_simple_item("-cmyk2rgb",CMYKtoRGB,"Convert image%s from CMYK to RGB colorbases."); 15.1442 + gmic_simple_item("-cmy2rgb",CMYtoRGB,"Convert image%s from CMY to RGB colorbases."); 15.1443 + gmic_simple_item("-lab2rgb",LabtoRGB,"Convert image%s from Lab to RGB colorbases."); 15.1444 + gmic_simple_item("-xyz2rgb",XYZtoRGB,"Convert image%s from XYZ to RGB colorbases."); 15.1445 + gmic_simple_item("-ycbcr2rgb",YCbCrtoRGB,"Convert image%s from YCbCr to RGB colorbases."); 15.1446 + gmic_simple_item("-yuv2rgb",YUVtoRGB,"Convert image%s from YUV to RGB colorbases."); 15.1447 + gmic_simple_item("-hsi2rgb",HSItoRGB,"Convert image%s from HSI to RGB colorbases."); 15.1448 + gmic_simple_item("-hsl2rgb",HSLtoRGB,"Convert image%s from HSL to RGB colorbases."); 15.1449 + gmic_simple_item("-hsv2rgb",HSVtoRGB,"Convert image%s from HSV to RGB colorbases."); 15.1450 + 15.1451 + // Apply LUT. 15.1452 + if (!cimg::strcmp("-lut2rgb",item0)) { 15.1453 + int nb = 0, ind0 = 0; char sep = 0, end = 0; 15.1454 + if (std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') { 15.1455 + gmic_check_indice(ind0,"Map LUT on image%s"); 15.1456 + print("Map LUT [%d] on image%s.",ind0,gmic_inds); 15.1457 + const CImg<T> palette = images[ind0]; 15.1458 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],pointwise_norm().LUTtoRGB(palette)); 15.1459 + } else if (std::sscanf(argument,"%d%c",&nb,&end)==1) { 15.1460 + if (nb<0 || nb>2) error("Map LUT on image%s : Invalid LUT number %d.",gmic_inds,nb); 15.1461 + print("Map %s LUT on image%s.",nb==0?"default":nb==1?"rainbow":"cluster",gmic_inds); 15.1462 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],pointwise_norm(). 15.1463 + LUTtoRGB(nb==0?CImg<T>::default_LUT8():nb==1?CImg<T>::rainbow_LUT8():CImg<T>::contrast_LUT8())); 15.1464 + } else error("Map LUT on image%s : Invalid argument '%s' " 15.1465 + "(should be '[indice]' or '{0,1,2}').",gmic_inds,argument_text); 15.1466 + ++position; continue; 15.1467 + } 15.1468 + 15.1469 + // Convert to LUT. 15.1470 + if (!cimg::strcmp("-rgb2lut",item0)) { 15.1471 + int nb = 0, ind0 = 0, dithering = 0; char sep = 0, end = 0; 15.1472 + if (std::sscanf(argument,"[%d%c%*c%d",&ind0,&sep,&dithering)>=2 && sep==']') { 15.1473 + gmic_check_indice(ind0,"Index image%s with LUT"); 15.1474 + print("Index image%s with LUT [%d] %s dithering.",gmic_inds,ind0,dithering?"with":"without"); 15.1475 + const CImg<T> palette = images[ind0]; 15.1476 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],RGBtoLUT(palette,dithering,true)); 15.1477 + } else if (std::sscanf(argument,"%d%*c%d%c",&nb,&dithering,&end)==2 || 15.1478 + std::sscanf(argument,"%d%c",&nb,&end)==1) { 15.1479 + if (nb<0 || nb>2) error("Index image%s with LUT : Invalid LUT number %d.",gmic_inds,nb); 15.1480 + print("Index image%s with %s LUT.",gmic_inds,nb==0?"default":nb==1?"rainbow":"cluster"); 15.1481 + cimg_foroff(indices,l) gmic_apply(images[indices[l]], 15.1482 + RGBtoLUT(nb==0?CImg<T>::default_LUT8():nb==1?CImg<T>::rainbow_LUT8():CImg<T>::contrast_LUT8(), 15.1483 + dithering,true)); 15.1484 + } else error("Index image%s with LUT : Invalid argument '%s' " 15.1485 + "(should be '[indice][,dithering]', or '{0,1,2}[,dithering]').",gmic_inds,argument_text); 15.1486 + ++position; continue; 15.1487 + } 15.1488 + 15.1489 + //----------------------- 15.1490 + // Geometric manipulation 15.1491 + //----------------------- 15.1492 + 15.1493 + // Resize. 15.1494 + if (!cimg::strcmp("-resize",item0) || !cimg::strcmp("-r",item0)) { 15.1495 + char 15.1496 + sepx = 0, sepy = 0, sepz = 0, sepv = 0, end = 0, 15.1497 + argx[4096] = { 0 }, argy[4096] = { 0 }, argz[4096] = { 0 }, argv[4096] = { 0 }; 15.1498 + float valx = 0, valy = 0, valz = 0, valv = 0; 15.1499 + int interpolation = 1, borders = -1, center = 0, indx = no_ind, indy = no_ind, indz = no_ind, indv = no_ind; 15.1500 + if ((std::sscanf(argument,"[%d%c%c",&indx,&sepx,&end)==2 || 15.1501 + std::sscanf(argument,"[%d%c%*c%d%c",&indx,&sepx,&interpolation,&end)==3 || 15.1502 + std::sscanf(argument,"[%d%c%*c%d%*c%d%c",&indx,&sepx,&interpolation,&borders,&end)==4 || 15.1503 + std::sscanf(argument,"[%d%c%*c%d%*c%d%*c%d%c",&indx,&sepx,&interpolation,&borders,¢er,&end)==5) 15.1504 + && sepx==']') { 15.1505 + gmic_check_indice(indx,"Resize image%s"); 15.1506 + const int 15.1507 + ivalx = images[indx].dimx(), 15.1508 + ivaly = images[indx].dimy(), 15.1509 + ivalz = images[indx].dimz(), 15.1510 + ivalv = images[indx].dimv(); 15.1511 + print("Resize image%s to %dx%dx%dx%d with %s interpolation.", 15.1512 + gmic_inds,ivalx,ivaly,ivalz,ivalv, 15.1513 + interpolation==0?"no":interpolation==1?"nearest neighbor": 15.1514 + interpolation==2?"moving average":interpolation==3?"linear": 15.1515 + interpolation==4?"grid":"cubic"); 15.1516 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],resize(ivalx,ivaly,ivalz,ivalv,interpolation,borders,center?true:false)); 15.1517 + ++position; 15.1518 + } else if (((std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%d%*c%d%*c%d%c", 15.1519 + argx,argy,argz,argv,&(interpolation=1),&(borders=-1),&(center=0),&end)==7 || 15.1520 + std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%d%*c%d%c", 15.1521 + argx,argy,argz,argv,&interpolation,&borders,&end)==6 || 15.1522 + std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%d%c", 15.1523 + argx,argy,argz,argv,&interpolation,&end)==5 || 15.1524 + std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c", 15.1525 + argx,argy,argz,argv,&end)==4) && 15.1526 + ((std::sscanf(argx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']') || 15.1527 + (std::sscanf(argx,"%f%c%c",&valx,&sepx,&end)==2 && sepx=='%') || 15.1528 + std::sscanf(argx,"%f%c",&valx,&end)==1) && 15.1529 + ((std::sscanf(argy,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']') || 15.1530 + (std::sscanf(argy,"%f%c%c",&valy,&sepy,&end)==2 && sepy=='%') || 15.1531 + std::sscanf(argy,"%f%c",&valy,&end)==1) && 15.1532 + ((std::sscanf(argz,"[%d%c%c",&indz,&sepz,&end)==2 && sepz==']') || 15.1533 + (std::sscanf(argz,"%f%c%c",&valz,&sepz,&end)==2 && sepz=='%') || 15.1534 + std::sscanf(argz,"%f%c",&valz,&end)==1) && 15.1535 + ((std::sscanf(argv,"[%d%c%c",&indv,&sepv,&end)==2 && sepv==']') || 15.1536 + (std::sscanf(argv,"%f%c%c",&valv,&sepv,&end)==2 && sepv=='%') || 15.1537 + std::sscanf(argv,"%f%c",&valv,&end)==1)) || 15.1538 + ((std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c", 15.1539 + argx,argy,argz,&end)==3) && 15.1540 + ((std::sscanf(argx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']') || 15.1541 + (std::sscanf(argx,"%f%c%c",&valx,&sepx,&end)==2 && sepx=='%') || 15.1542 + std::sscanf(argx,"%f%c",&valx,&end)==1) && 15.1543 + ((std::sscanf(argy,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']') || 15.1544 + (std::sscanf(argy,"%f%c%c",&valy,&sepy,&end)==2 && sepy=='%') || 15.1545 + std::sscanf(argy,"%f%c",&valy,&end)==1) && 15.1546 + ((std::sscanf(argz,"[%d%c%c",&indz,&sepz,&end)==2 && sepz==']') || 15.1547 + (std::sscanf(argz,"%f%c%c",&valz,&sepz,&end)==2 && sepz=='%') || 15.1548 + std::sscanf(argz,"%f%c",&valz,&end)==1)) || 15.1549 + ((std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c", 15.1550 + argx,argy,&end)==2) && 15.1551 + ((std::sscanf(argx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']') || 15.1552 + (std::sscanf(argx,"%f%c%c",&valx,&sepx,&end)==2 && sepx=='%') || 15.1553 + std::sscanf(argx,"%f%c",&valx,&end)==1) && 15.1554 + ((std::sscanf(argy,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']') || 15.1555 + (std::sscanf(argy,"%f%c%c",&valy,&sepy,&end)==2 && sepy=='%') || 15.1556 + std::sscanf(argy,"%f%c",&valy,&end)==1)) || 15.1557 + ((std::sscanf(argument,"%4095[][0-9.eE%+-]%c", 15.1558 + argx,&end)==1) && 15.1559 + ((std::sscanf(argx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']') || 15.1560 + (std::sscanf(argx,"%f%c%c",&valx,&sepx,&end)==2 && sepx=='%') || 15.1561 + std::sscanf(argx,"%f%c",&valx,&end)==1))) { 15.1562 + if (indx!=no_ind) { gmic_check_indice(indx,"Resize image%s"); valx = (float)images[indx].dimx(); sepx = 0; } 15.1563 + if (indy!=no_ind) { gmic_check_indice(indy,"Resize image%s"); valy = (float)images[indy].dimy(); sepy = 0; } 15.1564 + if (indz!=no_ind) { gmic_check_indice(indz,"Resize image%s"); valz = (float)images[indz].dimz(); sepz = 0; } 15.1565 + if (indv!=no_ind) { gmic_check_indice(indv,"Resize image%s"); valv = (float)images[indv].dimv(); sepv = 0; } 15.1566 + if (!valx) { valx = 100; sepx = '%'; } 15.1567 + if (!valy) { valy = 100; sepy = '%'; } 15.1568 + if (!valz) { valz = 100; sepz = '%'; } 15.1569 + if (!valv) { valv = 100; sepv = '%'; } 15.1570 + print("Resize image%s to %g%s%g%s%g%s%g%s with %s interpolation.", 15.1571 + gmic_inds,valx,sepx=='%'?"%x":"x",valy,sepy=='%'?"%x":"x",valz, 15.1572 + sepz=='%'?"%x":"x",valv,sepv=='%'?"% ":" ", 15.1573 + interpolation==0?"no":interpolation==1?"nearest neighbor": 15.1574 + interpolation==2?"moving average":interpolation==3?"linear": 15.1575 + interpolation==4?"grid":"cubic"); 15.1576 + 15.1577 + cimg_foroff(indices,l) { 15.1578 + CImg<T>& img = images[indices[l]]; 15.1579 + const int 15.1580 + ivalx0 = (int)cimg::round(sepx=='%'?valx*img.dimx()/100:valx,1), 15.1581 + ivaly0 = (int)cimg::round(sepy=='%'?valy*img.dimy()/100:valy,1), 15.1582 + ivalz0 = (int)cimg::round(sepz=='%'?valz*img.dimz()/100:valz,1), 15.1583 + ivalv0 = (int)cimg::round(sepv=='%'?valv*img.dimv()/100:valv,1), 15.1584 + ivalx = ivalx0?ivalx0:1, 15.1585 + ivaly = ivaly0?ivaly0:1, 15.1586 + ivalz = ivalz0?ivalz0:1, 15.1587 + ivalv = ivalv0?ivalv0:1; 15.1588 + gmic_apply(img,resize(ivalx,ivaly,ivalz,ivalv,interpolation,borders,center?true:false)); 15.1589 + } 15.1590 + ++position; 15.1591 + } else { 15.1592 + print("Resize image%s : Interactive mode.",gmic_inds); 15.1593 + char title[4096] = { 0 }; 15.1594 + cimg_foroff(indices,l) { 15.1595 + CImg<T>& img = images[indices[l]]; 15.1596 + CImgDisplay disp(img,0,1); 15.1597 + std::sprintf(title,"%s : Interactive resize",filenames[indices[l]].ptr()); 15.1598 + disp.set_title(title); 15.1599 + img.get_select(0,disp); 15.1600 + print("Resize image [%d] to %dx%d.",indices[l],disp.dimx(),disp.dimy()); 15.1601 + gmic_apply(img,resize(disp)); 15.1602 + } 15.1603 + } 15.1604 + continue; 15.1605 + } 15.1606 + 15.1607 + // Resize2x. and Resize3x. 15.1608 + gmic_simple_item("-resize2x",resize_doubleXY,"Resize image%s using Scale2x algorithm."); 15.1609 + gmic_simple_item("-resize3x",resize_doubleXY,"Resize image%s using Scale3x algorithm."); 15.1610 + 15.1611 + // Crop. 15.1612 + if (!cimg::strcmp("-crop",item0) || !cimg::strcmp("-c",item0)) { 15.1613 + char st0[4096] = { 0 }, st1[4096] = { 0 }, st2[4096] = { 0 }, st3[4096] = { 0 }; 15.1614 + char st4[4096] = { 0 }, st5[4096] = { 0 }, st6[4096] = { 0 }, st7[4096] = { 0 }; 15.1615 + char sep0 = 0, sep1 = 0, sep2 = 0, sep3 = 0, sep4 = 0, sep5 = 0, sep6 = 0, sep7 = 0, end = 0; 15.1616 + float a0 = 0, a1 = 0, a2 = 0, a3 = 0, a4 = 0, a5 = 0, a6 = 0, a7 = 0; int borders = 0; 15.1617 + if ((std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1618 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c", 15.1619 + st0,st1,st2,st3,st4,st5,st6,st7,&borders,&end)==9 || 15.1620 + std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1621 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.1622 + st0,st1,st2,st3,st4,st5,st6,st7,&end)==8) && 15.1623 + (std::sscanf(st0,"%f%c",&a0,&end)==1 || (std::sscanf(st0,"%f%c%c",&a0,&sep0,&end)==2 && sep0=='%')) && 15.1624 + (std::sscanf(st1,"%f%c",&a1,&end)==1 || (std::sscanf(st1,"%f%c%c",&a1,&sep1,&end)==2 && sep1=='%')) && 15.1625 + (std::sscanf(st2,"%f%c",&a2,&end)==1 || (std::sscanf(st2,"%f%c%c",&a2,&sep2,&end)==2 && sep2=='%')) && 15.1626 + (std::sscanf(st3,"%f%c",&a3,&end)==1 || (std::sscanf(st3,"%f%c%c",&a3,&sep3,&end)==2 && sep3=='%')) && 15.1627 + (std::sscanf(st4,"%f%c",&a4,&end)==1 || (std::sscanf(st4,"%f%c%c",&a4,&sep4,&end)==2 && sep4=='%')) && 15.1628 + (std::sscanf(st5,"%f%c",&a5,&end)==1 || (std::sscanf(st5,"%f%c%c",&a5,&sep5,&end)==2 && sep5=='%')) && 15.1629 + (std::sscanf(st6,"%f%c",&a6,&end)==1 || (std::sscanf(st6,"%f%c%c",&a6,&sep6,&end)==2 && sep6=='%')) && 15.1630 + (std::sscanf(st7,"%f%c",&a7,&end)==1 || (std::sscanf(st7,"%f%c%c",&a7,&sep7,&end)==2 && sep7=='%'))) { 15.1631 + print("Crop image%s with (%g%s%g%s%g%s%g%s x (%g%s%g%s%g%s%g%s.",gmic_inds, 15.1632 + a0,sep0=='%'?"%,":",",a1,sep1=='%'?"%,":",", 15.1633 + a2,sep2=='%'?"%,":",",a3,sep3=='%'?"%)":")", 15.1634 + a4,sep4=='%'?"%,":",",a5,sep5=='%'?"%,":",", 15.1635 + a6,sep6=='%'?"%,":",",a7,sep7=='%'?"%)":")"); 15.1636 + cimg_foroff(indices,l) { 15.1637 + CImg<T> &img = images[indices[l]]; 15.1638 + const int 15.1639 + x0 = (int)cimg::round(sep0=='%'?a0*img.dimx()/100:a0,1), 15.1640 + y0 = (int)cimg::round(sep1=='%'?a1*img.dimy()/100:a1,1), 15.1641 + z0 = (int)cimg::round(sep2=='%'?a2*img.dimz()/100:a2,1), 15.1642 + v0 = (int)cimg::round(sep3=='%'?a3*img.dimv()/100:a3,1), 15.1643 + x1 = (int)cimg::round(sep4=='%'?a4*img.dimx()/100:a4,1), 15.1644 + y1 = (int)cimg::round(sep5=='%'?a5*img.dimy()/100:a5,1), 15.1645 + z1 = (int)cimg::round(sep6=='%'?a6*img.dimz()/100:a6,1), 15.1646 + v1 = (int)cimg::round(sep7=='%'?a7*img.dimv()/100:a7,1); 15.1647 + gmic_apply(img,crop(x0,y0,z0,v0,x1,y1,z1,v1,borders?true:false)); 15.1648 + } 15.1649 + ++position; 15.1650 + } else if ((std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1651 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c", 15.1652 + st0,st1,st2,st3,st4,st5,&borders,&end)==7 || 15.1653 + std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1654 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.1655 + st0,st1,st2,st3,st4,st5,&end)==6) && 15.1656 + (std::sscanf(st0,"%f%c",&a0,&end)==1 || 15.1657 + (std::sscanf(st0,"%f%c%c",&a0,&sep0,&end)==2 && sep0=='%')) && 15.1658 + (std::sscanf(st1,"%f%c",&a1,&end)==1 || 15.1659 + (std::sscanf(st1,"%f%c%c",&a1,&sep1,&end)==2 && sep1=='%')) && 15.1660 + (std::sscanf(st2,"%f%c",&a2,&end)==1 || 15.1661 + (std::sscanf(st2,"%f%c%c",&a2,&sep2,&end)==2 && sep2=='%')) && 15.1662 + (std::sscanf(st3,"%f%c",&a3,&end)==1 || 15.1663 + (std::sscanf(st3,"%f%c%c",&a3,&sep3,&end)==2 && sep3=='%')) && 15.1664 + (std::sscanf(st4,"%f%c",&a4,&end)==1 || 15.1665 + (std::sscanf(st4,"%f%c%c",&a4,&sep4,&end)==2 && sep4=='%')) && 15.1666 + (std::sscanf(st5,"%f%c",&a5,&end)==1 || 15.1667 + (std::sscanf(st5,"%f%c%c",&a5,&sep5,&end)==2 && sep5=='%'))) { 15.1668 + print("Crop image%s with (%g%s%g%s%g%s x (%g%s%g%s%g%s.",gmic_inds, 15.1669 + a0,sep0=='%'?"%,":",",a1,sep1=='%'?"%,":",",a2,sep2=='%'?"%)":")", 15.1670 + a3,sep3=='%'?"%,":",",a4,sep4=='%'?"%,":",",a5,sep5=='%'?"%)":")"); 15.1671 + cimg_foroff(indices,l) { 15.1672 + CImg<T> &img = images[indices[l]]; 15.1673 + const int 15.1674 + x0 = (int)cimg::round(sep0=='%'?a0*img.dimx()/100:a0,1), 15.1675 + y0 = (int)cimg::round(sep1=='%'?a1*img.dimy()/100:a1,1), 15.1676 + z0 = (int)cimg::round(sep2=='%'?a2*img.dimz()/100:a2,1), 15.1677 + x1 = (int)cimg::round(sep3=='%'?a3*img.dimx()/100:a3,1), 15.1678 + y1 = (int)cimg::round(sep4=='%'?a4*img.dimy()/100:a4,1), 15.1679 + z1 = (int)cimg::round(sep5=='%'?a5*img.dimz()/100:a5,1); 15.1680 + gmic_apply(img,crop(x0,y0,z0,x1,y1,z1,borders?true:false)); 15.1681 + } 15.1682 + ++position; 15.1683 + } else if ((std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1684 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c", 15.1685 + st0,st1,st2,st3,&borders,&end)==5 || 15.1686 + std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c" 15.1687 + "%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.1688 + st0,st1,st2,st3,&end)==4) && 15.1689 + (std::sscanf(st0,"%f%c",&a0,&end)==1 || 15.1690 + (std::sscanf(st0,"%f%c%c",&a0,&sep0,&end)==2 && sep0=='%')) && 15.1691 + (std::sscanf(st1,"%f%c",&a1,&end)==1 || 15.1692 + (std::sscanf(st1,"%f%c%c",&a1,&sep1,&end)==2 && sep1=='%')) && 15.1693 + (std::sscanf(st2,"%f%c",&a2,&end)==1 || 15.1694 + (std::sscanf(st2,"%f%c%c",&a2,&sep2,&end)==2 && sep2=='%')) && 15.1695 + (std::sscanf(st3,"%f%c",&a3,&end)==1 || 15.1696 + (std::sscanf(st3,"%f%c%c",&a3,&sep3,&end)==2 && sep3=='%'))) { 15.1697 + print("Crop image%s with (%g%s%g%s x (%g%s%g%s.",gmic_inds, 15.1698 + a0,sep0=='%'?"%,":",",a1,sep1=='%'?"%)":")", 15.1699 + a2,sep2=='%'?"%,":",",a3,sep3=='%'?"%)":")"); 15.1700 + cimg_foroff(indices,l) { 15.1701 + CImg<T> &img = images[indices[l]]; 15.1702 + const int 15.1703 + x0 = (int)cimg::round(sep0=='%'?a0*img.dimx()/100:a0,1), 15.1704 + y0 = (int)cimg::round(sep1=='%'?a1*img.dimy()/100:a1,1), 15.1705 + x1 = (int)cimg::round(sep2=='%'?a2*img.dimx()/100:a2,1), 15.1706 + y1 = (int)cimg::round(sep3=='%'?a3*img.dimy()/100:a3,1); 15.1707 + gmic_apply(img,crop(x0,y0,x1,y1,borders?true:false)); 15.1708 + } 15.1709 + ++position; 15.1710 + } else if ((std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c",st0,st1,&borders,&end)==3 || 15.1711 + std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",st0,st1,&end)==2) && 15.1712 + (std::sscanf(st0,"%f%c",&a0,&end)==1 || 15.1713 + (std::sscanf(st0,"%f%c%c",&a0,&sep0,&end)==2 && sep0=='%')) && 15.1714 + (std::sscanf(st1,"%f%c",&a1,&end)==1 || 15.1715 + (std::sscanf(st1,"%f%c%c",&a1,&sep1,&end)==2 && sep1=='%'))) { 15.1716 + print("Crop image%s with (%g%s x (%g%s.",gmic_inds, 15.1717 + a0,sep0=='%'?"%)":")",a1,sep1=='%'?"%)":")"); 15.1718 + cimg_foroff(indices,l) { 15.1719 + CImg<T> &img = images[indices[l]]; 15.1720 + const int 15.1721 + x0 = (int)cimg::round(sep0=='%'?a0*img.dimx()/100:a0,1), 15.1722 + x1 = (int)cimg::round(sep1=='%'?a1*img.dimx()/100:a1,1); 15.1723 + gmic_apply(img,crop(x0,x1,borders?true:false)); 15.1724 + } 15.1725 + ++position; 15.1726 + } else { 15.1727 + print("Crop image%s : Interactive mode.",gmic_inds); 15.1728 + char title[4096] = { 0 }; 15.1729 + cimg_foroff(indices,l) { 15.1730 + CImg<T>& img = images[indices[l]]; 15.1731 + CImgDisplay disp(cimg_fitscreen(img.dimx(),img.dimy(),1),0,1); 15.1732 + std::sprintf(title,"%s : Interactive crop",filenames[indices[l]].ptr()); 15.1733 + disp.set_title(title); 15.1734 + const CImg<int> s = img.get_select(disp,2); 15.1735 + print("Crop image [%d] with (%d,%d,%d) x (%d,%d,%d).", 15.1736 + indices[l],s[0],s[1],s[2],s[3],s[4],s[5]); 15.1737 + gmic_apply(img,crop(s[0],s[1],s[2],s[3],s[4],s[5])); 15.1738 + } 15.1739 + } 15.1740 + continue; 15.1741 + } 15.1742 + 15.1743 + // Autocrop. 15.1744 + if (!cimg::strcmp("-autocrop",item0)) { 15.1745 + print("Autocrop image%s with color '%s'.",gmic_inds,argument_text); 15.1746 + cimg_foroff(indices,l) { 15.1747 + CImg<T>& img = images[indices[l]]; 15.1748 + const CImg<T> col = CImg<T>(img.dimv()).fill(argument,true); 15.1749 + gmic_apply(img,autocrop(col)); 15.1750 + } 15.1751 + ++position; continue; 15.1752 + } 15.1753 + 15.1754 + // Select channels. 15.1755 + if (!cimg::strcmp("-channels",item0)) { 15.1756 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1757 + float value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1758 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1759 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1760 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1761 + std::sscanf(arg0,"%f%c",&value0,&end)==1) && 15.1762 + ((std::sscanf(arg1,"[%d%c%c]",&ind1,&sep1,&end)==2 && sep1==']') || 15.1763 + (std::sscanf(arg1,"%f%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1764 + std::sscanf(arg1,"%f%c",&value1,&end)==1)) { 15.1765 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Keep channels of image%s"); value0 = images[ind0].dimv()-1.0f; sep0 = 0; } 15.1766 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Keep channels of image%s"); value1 = images[ind1].dimv()-1.0f; sep1 = 0; } 15.1767 + print("Keep channels %g%s..%g%s of image%s.",value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":"",gmic_inds); 15.1768 + cimg_foroff(indices,l) { 15.1769 + CImg<T> &img = images[indices[l]]; 15.1770 + const int 15.1771 + nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimv()-1)/100:value0,1), 15.1772 + nvalue1 = (int)cimg::round(sep1=='%'?value1*(img.dimv()-1)/100:value1,1); 15.1773 + gmic_apply(img,channels(nvalue0,nvalue1)); 15.1774 + } 15.1775 + } else if (std::sscanf(argument,"%4095[][0-9.eE%+-]%c",arg0,&end)==1 && 15.1776 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1777 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1778 + std::sscanf(arg0,"%f%c",&value0,&end)==1)) { 15.1779 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Keep channel of image%s"); value0 = images[ind0].dimv()-1.0f; sep0 = 0; } 15.1780 + print("Keep channel %g%s of image%s.",value0,sep0=='%'?"%":"",gmic_inds); 15.1781 + cimg_foroff(indices,l) { 15.1782 + CImg<T> &img = images[indices[l]]; 15.1783 + const int nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimv()-1)/100:value0,1); 15.1784 + gmic_apply(img,channel(nvalue0)); 15.1785 + } 15.1786 + } else error("Keep channels of image%s : Invalid argument '%s' " 15.1787 + "(should be 'channel0[%%][,channel1[%%]]').",gmic_inds,argument_text); 15.1788 + ++position; continue; 15.1789 + } 15.1790 + 15.1791 + // Select slices. 15.1792 + if (!cimg::strcmp("-slices",item0)) { 15.1793 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1794 + float value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1795 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1796 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1797 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1798 + std::sscanf(arg0,"%f%c",&value0,&end)==1) && 15.1799 + ((std::sscanf(arg1,"[%d%c%c]",&ind1,&sep1,&end)==2 && sep1==']') || 15.1800 + (std::sscanf(arg1,"%f%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1801 + std::sscanf(arg1,"%f%c",&value1,&end)==1)) { 15.1802 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select slices of image%s"); value0 = images[ind0].dimz()-1.0f; sep0 = 0; } 15.1803 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Select slices of image%s"); value1 = images[ind1].dimz()-1.0f; sep1 = 0; } 15.1804 + print("Select slices %g%s..%g%s of image%s.",value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":"",gmic_inds); 15.1805 + cimg_foroff(indices,l) { 15.1806 + CImg<T> &img = images[indices[l]]; 15.1807 + const int 15.1808 + nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimv()-1)/100:value0,0), 15.1809 + nvalue1 = (int)cimg::round(sep1=='%'?value1*(img.dimv()-1)/100:value1,0); 15.1810 + gmic_apply(img,slices(nvalue0,nvalue1)); 15.1811 + } 15.1812 + } else if (std::sscanf(argument,"%4095[][0-9.eE%+-]%c",arg0,&end)==1 && 15.1813 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1814 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1815 + std::sscanf(arg0,"%f%c",&value0,&end)==1)) { 15.1816 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select slice of image%s"); value0 = images[ind0].dimz()-1.0f; sep0 = 0; } 15.1817 + print("Select slice %g%s of image%s.",value0,sep0=='%'?"%":"",gmic_inds); 15.1818 + cimg_foroff(indices,l) { 15.1819 + CImg<T> &img = images[indices[l]]; 15.1820 + const int nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimz()-1)/100:value0,1); 15.1821 + gmic_apply(img,slice(nvalue0)); 15.1822 + } 15.1823 + } else error("Select slices of image%s : Invalid argument '%s' " 15.1824 + "(should be 'slice0[%%][,slice1[%%]]').",gmic_inds,argument_text); 15.1825 + ++position; continue; 15.1826 + } 15.1827 + 15.1828 + // Select lines. 15.1829 + if (!cimg::strcmp("-lines",item0) || !cimg::strcmp("-l",item0)) { 15.1830 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1831 + float value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1832 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1833 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1834 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1835 + std::sscanf(arg0,"%f%c",&value0,&end)==1) && 15.1836 + ((std::sscanf(arg1,"[%d%c%c]",&ind1,&sep1,&end)==2 && sep1==']') || 15.1837 + (std::sscanf(arg1,"%f%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1838 + std::sscanf(arg1,"%f%c",&value1,&end)==1)) { 15.1839 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select lines of image%s"); value0 = images[ind0].dimy()-1.0f; sep0 = 0; } 15.1840 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Select lines of image%s"); value1 = images[ind1].dimy()-1.0f; sep1 = 0; } 15.1841 + print("Select lines %g%s..%g%s of image%s.",value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":"",gmic_inds); 15.1842 + cimg_foroff(indices,l) { 15.1843 + CImg<T> &img = images[indices[l]]; 15.1844 + const int 15.1845 + nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimy()-1)/100:value0,1), 15.1846 + nvalue1 = (int)cimg::round(sep1=='%'?value1*(img.dimy()-1)/100:value1,1); 15.1847 + gmic_apply(img,lines(nvalue0,nvalue1)); 15.1848 + } 15.1849 + } else if (std::sscanf(argument,"%4095[][0-9.eE%+-]%c",arg0,&end)==1 && 15.1850 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1851 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1852 + std::sscanf(arg0,"%f%c",&value0,&end)==1)) { 15.1853 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select lines of image%s"); value0 = images[ind0].dimy()-1.0f; sep0 = 0; } 15.1854 + print("Select lines %g%s of image%s.",value0,sep0=='%'?"%":"",gmic_inds); 15.1855 + cimg_foroff(indices,l) { 15.1856 + CImg<T> &img = images[indices[l]]; 15.1857 + const int nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimy()-1)/100:value0,1); 15.1858 + gmic_apply(img,line(nvalue0)); 15.1859 + } 15.1860 + } else error("Select lines of image%s : Invalid argument '%s' " 15.1861 + "(should be 'line0[%%][,line1[%%]]').",gmic_inds,argument_text); 15.1862 + ++position; continue; 15.1863 + } 15.1864 + 15.1865 + // Columns. 15.1866 + if (!cimg::strcmp("-columns",item0)) { 15.1867 + char sep0 = 0, sep1 = 0, end = 0, arg0[4096] = { 0 }, arg1[4096] = { 0 }; 15.1868 + float value0 = 0, value1 = 0; int ind0 = no_ind, ind1 = no_ind; 15.1869 + if (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",arg0,arg1,&end)==2 && 15.1870 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1871 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1872 + std::sscanf(arg0,"%f%c",&value0,&end)==1) && 15.1873 + ((std::sscanf(arg1,"[%d%c%c]",&ind1,&sep1,&end)==2 && sep1==']') || 15.1874 + (std::sscanf(arg1,"%f%c%c",&value1,&sep1,&end)==2 && sep1=='%') || 15.1875 + std::sscanf(arg1,"%f%c",&value1,&end)==1)) { 15.1876 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select columns of image%s"); value0 = images[ind0].dimx()-1.0f; sep0 = 0; } 15.1877 + if (ind1!=no_ind) { gmic_check_indice(ind1,"Select columns of image%s"); value1 = images[ind1].dimx()-1.0f; sep1 = 0; } 15.1878 + print("Select columns %g%s..%g%s of image%s.",value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":"",gmic_inds); 15.1879 + cimg_foroff(indices,l) { 15.1880 + CImg<T> &img = images[indices[l]]; 15.1881 + const int 15.1882 + nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimx()-1)/100:value0,1), 15.1883 + nvalue1 = (int)cimg::round(sep1=='%'?value1*(img.dimx()-1)/100:value1,1); 15.1884 + gmic_apply(img,lines(nvalue0,nvalue1)); 15.1885 + } 15.1886 + } else if (std::sscanf(argument,"%4095[][0-9.eE%+-]%c",arg0,&end)==1 && 15.1887 + ((std::sscanf(arg0,"[%d%c%c]",&ind0,&sep0,&end)==2 && sep0==']') || 15.1888 + (std::sscanf(arg0,"%f%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.1889 + std::sscanf(arg0,"%f%c",&value0,&end)==1)) { 15.1890 + if (ind0!=no_ind) { gmic_check_indice(ind0,"Select columns of image%s"); value0 = images[ind0].dimx()-1.0f; sep0 = 0; } 15.1891 + print("Select columns %g%s of image%s.",value0,sep0=='%'?"%":"",gmic_inds); 15.1892 + cimg_foroff(indices,l) { 15.1893 + CImg<T> &img = images[indices[l]]; 15.1894 + const int nvalue0 = (int)cimg::round(sep0=='%'?value0*(img.dimx()-1)/100:value0,1); 15.1895 + gmic_apply(img,line(nvalue0)); 15.1896 + } 15.1897 + } else error("Select columns of image%s : Invalid argument '%s' " 15.1898 + "(should be 'column0[%%][,column1[%%]]').",gmic_inds,argument_text); 15.1899 + ++position; continue; 15.1900 + } 15.1901 + 15.1902 + // Rotate. 15.1903 + if (!cimg::strcmp("-rotate",item0)) { 15.1904 + float angle = 0; int borders = 0, interpolation = 1; char end = 0; 15.1905 + if (std::sscanf(argument,"%f%c",&angle,&end)==1 || 15.1906 + std::sscanf(argument,"%f%*c%d%c",&angle,&borders,&end)==2 || 15.1907 + std::sscanf(argument,"%f%*c%d%*c%d%c",&angle,&borders,&interpolation,&end)==3) { 15.1908 + print("Rotate image%s with an angle of %g deg and %s interpolation.", 15.1909 + gmic_inds,angle,interpolation?"linear":"nearest-neighbor"); 15.1910 + if (borders>=0) { cimg_foroff(indices,l) gmic_apply(images[indices[l]],rotate(angle,borders,interpolation)); } 15.1911 + else cimg_foroff(indices,l) { 15.1912 + CImg<T> &img = images[indices[l]]; 15.1913 + gmic_apply(img,rotate(angle,img.dimx()/2.0f,img.dimy()/2.0f,1,-1-borders,interpolation)); 15.1914 + } 15.1915 + } else error("Rotate image%s : Invalid argument '%s' " 15.1916 + "(should be 'angle[,border_conditions[,interpolation]]').",gmic_inds,argument_text); 15.1917 + ++position; 15.1918 + continue; 15.1919 + } 15.1920 + 15.1921 + // Mirror. 15.1922 + if (!cimg::strcmp("-mirror",item0)) { 15.1923 + const char axis = cimg::uncase(*argument); 15.1924 + if (cimg::strlen(argument)==1) { 15.1925 + print("Mirror image%s along the %c-axis.",gmic_inds,axis); 15.1926 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],mirror(axis)); 15.1927 + } else error("Mirror image%s : Invalid argument '%s' " 15.1928 + "(should be '{x,y,z,v}').",gmic_inds,argument_text); 15.1929 + ++position; continue; 15.1930 + } 15.1931 + 15.1932 + // Translate. 15.1933 + if (!cimg::strcmp("-translate",item0)) { 15.1934 + char stx[4096] = { 0 }, sty[4096] = { 0 }, stz[4096] = { 0 }, stv[4096] = { 0 }; 15.1935 + char sepx = 0, sepy = 0, sepz = 0, sepv = 0, end = 0; 15.1936 + float dx = 0, dy = 0, dz = 0, dv = 0; int borders = 0; 15.1937 + if (((std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%c", 15.1938 + stx,sty,stz,stv,&borders,&end)==5 || 15.1939 + std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c", 15.1940 + stx,sty,stz,stv,&end)==4) && 15.1941 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%')) && 15.1942 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%')) && 15.1943 + (std::sscanf(stz,"%f%c",&dz,&end)==1 || (std::sscanf(stz,"%f%c%c",&dz,&sepz,&end)==2 && sepz=='%')) && 15.1944 + (std::sscanf(stv,"%f%c",&dv,&end)==1 || (std::sscanf(stv,"%f%c%c",&dv,&sepv,&end)==2 && sepv=='%'))) || 15.1945 + (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",stx,sty,stz,&end)==3 && 15.1946 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%')) && 15.1947 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%')) && 15.1948 + (std::sscanf(stz,"%f%c",&dz,&end)==1 || (std::sscanf(stz,"%f%c%c",&dz,&sepz,&end)==2 && sepz=='%'))) || 15.1949 + (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",stx,sty,&end)==2 && 15.1950 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%')) && 15.1951 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%'))) || 15.1952 + (std::sscanf(argument,"%4095[0-9.eE%+-]%c",stx,&end)==1 && 15.1953 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%')))) { 15.1954 + print("Translate image%s with vector (%g%s,%g%s,%g%s,%g%s).", 15.1955 + gmic_inds,dx,sepx=='%'?"%":"",dy,sepy=='%'?"%":"",dz,sepz=='%'?"%":"",dv,sepv=='%'?"%":""); 15.1956 + cimg_foroff(indices,l) { 15.1957 + CImg<T> &img = images[indices[l]]; 15.1958 + const int 15.1959 + ndx = (int)cimg::round(sepx=='%'?dx*img.dimx()/100:dx,1), 15.1960 + ndy = (int)cimg::round(sepy=='%'?dy*img.dimy()/100:dy,1), 15.1961 + ndz = (int)cimg::round(sepz=='%'?dz*img.dimz()/100:dz,1), 15.1962 + ndv = (int)cimg::round(sepv=='%'?dv*img.dimv()/100:dv,1); 15.1963 + gmic_apply(images[indices[l]],translate(ndx,ndy,ndz,ndv,borders)); 15.1964 + } 15.1965 + } else error("Translate image%s : Invalid argument '%s' " 15.1966 + "(should be 'tx[%%][,ty[%%][,tz[%%][,tv[%%][,border_conditions]]]]').",gmic_inds,argument_text); 15.1967 + ++position; continue; 15.1968 + } 15.1969 + 15.1970 + // Transpose. 15.1971 + gmic_simple_item("-transpose",transpose,"Transpose image%s."); 15.1972 + 15.1973 + // Invert. 15.1974 + gmic_simple_item("-invert",invert,"Compute matrix inversion of image%s."); 15.1975 + 15.1976 + // Permute axes. 15.1977 + if (!cimg::strcmp("-permute",item0)) { 15.1978 + print("Permute axes of image%s with permutation '%s'.",gmic_inds,argument_text); 15.1979 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],permute_axes(argument)); 15.1980 + ++position; continue; 15.1981 + } 15.1982 + 15.1983 + // Unroll. 15.1984 + if (!cimg::strcmp("-unroll",item0)) { 15.1985 + const char axis = cimg::uncase(*argument); 15.1986 + if (cimg::strlen(argument)==1 && (axis=='x' || axis=='y' || axis=='z' || axis=='v')) { 15.1987 + print("Unroll image%s along the %c-axis.",gmic_inds,axis); 15.1988 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],unroll(axis)); 15.1989 + } else error("Unroll image%s : Invalid argument '%s' " 15.1990 + "(should be '{x,y,z,v}').",gmic_inds,argument_text); 15.1991 + ++position; continue; 15.1992 + } 15.1993 + 15.1994 + // Split image(s). 15.1995 + if (!cimg::strcmp("-split",item0) || !cimg::strcmp("-s",item0)) { 15.1996 + char axis = cimg::uncase(*argument), foo = 0, end = 0; int nb = 0, keep_value = 0; double value = 0; 15.1997 + if ((std::sscanf(argument,"%c%c",&foo,&end)==1 || 15.1998 + std::sscanf(argument,"%c%*c%d%c",&foo,&nb,&end)==2) & 15.1999 + (axis=='x' || axis=='y' || axis=='z' || axis=='v')) { 15.2000 + if (nb<0) error("Split image%s along the %c-axis in %d part : Invalid number of parts.", 15.2001 + gmic_inds,axis,nb); 15.2002 + if (nb>0) print("Split image%s along the %c-axis in %d parts.",gmic_inds,axis,nb); 15.2003 + else print("Split image%s along the %c-axis.",gmic_inds,axis); 15.2004 + unsigned int off = 0; 15.2005 + cimg_foroff(indices,l) { 15.2006 + const unsigned int ind = indices[l] + off; 15.2007 + const CImg<T>& img = images[ind]; 15.2008 + const CImg<char> filename = filenames[ind]; 15.2009 + const CImgList<T> split = img.get_split(axis,nb); 15.2010 + if (get_version) { 15.2011 + images.insert(split); 15.2012 + filenames.insert(split.size,filename); 15.2013 + } else { 15.2014 + images.remove(ind); images.insert(split,ind); 15.2015 + filenames.remove(ind); filenames.insert(split.size,filename,ind); 15.2016 + off+=split.size-1; 15.2017 + } 15.2018 + } 15.2019 + } else if (std::sscanf(argument,"%lf%c",&value,&end)==1 || 15.2020 + std::sscanf(argument,"%lf%*c%d%c",&value,&keep_value,&end)==2) { 15.2021 + print("Split image%s according to value %g.",gmic_inds,value); 15.2022 + unsigned int off = 0; 15.2023 + cimg_foroff(indices,l) { 15.2024 + const unsigned int ind = indices[l] + off; 15.2025 + CImg<T>& img = images[ind]; 15.2026 + const CImg<char> filename = filenames[ind]; 15.2027 + const CImgList<T> split = img.get_split((T)value,keep_value,false); 15.2028 + if (get_version) { 15.2029 + images.insert(split); 15.2030 + filenames.insert(split.size,filename); 15.2031 + } else { 15.2032 + images.remove(ind); images.insert(split,ind); 15.2033 + filenames.remove(ind); filenames.insert(split.size,filename,ind); 15.2034 + off+=split.size-1; 15.2035 + } 15.2036 + } 15.2037 + } else error("Split image%s : Invalid argument '%s' " 15.2038 + "(should be 'axis[,nb_parts]' where 'axis' can be '{x,y,z,v}').",gmic_inds,argument_text); 15.2039 + ++position; continue; 15.2040 + } 15.2041 + 15.2042 + // Append image(s). 15.2043 + if (!cimg::strcmp("-append",item0) || !cimg::strcmp("-a",item0)) { 15.2044 + char axis = 0, align='p', end = 0; 15.2045 + if ((std::sscanf(argument,"%c%c",&axis,&end)==1 || 15.2046 + std::sscanf(argument,"%c%*c%c%c",&axis,&align,&end)==2)) { 15.2047 + axis = cimg::uncase(axis); 15.2048 + print("Append image%s along the %c-axis with %s alignment.", 15.2049 + gmic_inds,axis,align=='p'?"left":align=='c'?"center":"right"); 15.2050 + CImgList<T> subimages; cimg_foroff(indices,l) subimages.insert(images[indices[l]],~0U,true); 15.2051 + if (get_version) { 15.2052 + images.insert(subimages.get_append(axis,align)); 15.2053 + filenames.insert(filenames[indices[0]]); 15.2054 + } else { 15.2055 + images.insert(subimages.get_append(axis,align),indices[0]); 15.2056 + filenames.insert(filenames[indices[0]],indices[0]); 15.2057 + int off = 1; 15.2058 + cimg_foroff(indices,l) { 15.2059 + const int ind = indices[l] + off; 15.2060 + images.remove(ind); filenames.remove(ind); 15.2061 + --off; 15.2062 + } 15.2063 + } 15.2064 + } else error("Append image%s : Invalid argument '%s' " 15.2065 + "(should be 'axis[,alignement]' where 'axis' can be '{x,y,z,v}' " 15.2066 + "and alignement '{p,c,n}').",gmic_inds,argument_text); 15.2067 + ++position; continue; 15.2068 + } 15.2069 + 15.2070 + // Warp image(s). 15.2071 + if (!cimg::strcmp("-warp",item0)) { 15.2072 + int ind0 = no_ind, interpolation = 1, relative = 0, nb = 1, borders = 1; char end = 0, sep = 0; 15.2073 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']')|| 15.2074 + std::sscanf(argument,"[%d]%*c%d%c",&ind0,&relative,&end)==2 || 15.2075 + std::sscanf(argument,"[%d]%*c%d%*c%d%c",&ind0,&relative,&interpolation,&end)==3 || 15.2076 + std::sscanf(argument,"[%d]%*c%d%*c%d%*c%d%c",&ind0,&relative,&interpolation,&borders,&end)==4 || 15.2077 + std::sscanf(argument,"[%d]%*c%d%*c%d%*c%d%*c%d%c",&ind0,&relative,&interpolation,&borders,&nb,&end)==5) { 15.2078 + gmic_check_indice(ind0,"Warp image%s"); 15.2079 + if (nb!=1) print("Warp image%s with %s field [%u] and %d frames.", 15.2080 + gmic_inds,relative?"relative":"absolute",ind0,nb); 15.2081 + else print("Warp image%s with %s field [%u].",gmic_inds,relative?"relative":"absolute",ind0); 15.2082 + if (nb>=1) { 15.2083 + const CImg<T> warp = images[ind0]; 15.2084 + unsigned int off = 0; 15.2085 + cimg_foroff(indices,l) { 15.2086 + const unsigned int ind = indices[l] + off; 15.2087 + CImg<T> &img = images[ind]; 15.2088 + CImgList<T> frames(nb); 15.2089 + cimglist_for(frames,t) { 15.2090 + const CImg<T> nwarp = warp.get_resize(img.dimx(),img.dimy(),img.dimz(),warp.dimv(),3)*=(t+1.0f)/nb; 15.2091 + frames[t] = img.get_warp(nwarp,relative?true:false,interpolation?true:false,borders); 15.2092 + } 15.2093 + if (get_version) { 15.2094 + images.insert(frames); 15.2095 + filenames.insert(nb-1,filenames[ind]); 15.2096 + } else { 15.2097 + images.remove(ind); images.insert(frames,ind); 15.2098 + filenames.insert(nb-1,filenames[ind],ind); 15.2099 + off+=nb-1; 15.2100 + } 15.2101 + } 15.2102 + } 15.2103 + } else error("Warp image%s : Invalid argument '%s' " 15.2104 + "(should be '[indice][,relative[,interpolation[,border_conditions[,nb_frames]]]]').", 15.2105 + gmic_inds,argument_text); 15.2106 + ++position; continue; 15.2107 + } 15.2108 + 15.2109 + //----------------------- 15.2110 + // Image filtering 15.2111 + //----------------------- 15.2112 + 15.2113 + // Gaussian blur. 15.2114 + if (!cimg::strcmp("-blur",item0)) { 15.2115 + float sigma = -1; int borders = 1; char end = 0; 15.2116 + if ((std::sscanf(argument,"%f%c",&sigma,&end)==1 || 15.2117 + std::sscanf(argument,"%f%*c%d%c",&sigma,&borders,&end)==2) 15.2118 + && sigma>=0) { 15.2119 + print("Blur image%s with standard deviation %g.",gmic_inds,sigma); 15.2120 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],blur(sigma,borders?true:false)); 15.2121 + } else error("Blur image%s : Invalid argument '%s' " 15.2122 + "(should be 'stdev[,border_conditions]', with stdev>=0).",gmic_inds,argument_text); 15.2123 + ++position; continue; 15.2124 + } 15.2125 + 15.2126 + // Bilateral filter. 15.2127 + if (!cimg::strcmp("-bilateral",item0)) { 15.2128 + float sigmas = 0, sigmar = 0; char end = 0; 15.2129 + if (std::sscanf(argument,"%f%*c%f%c",&sigmas,&sigmar,&end)==2) { 15.2130 + print("Apply bilateral filter on image%s with standart deviations %g and %g.", 15.2131 + gmic_inds,sigmas,sigmar); 15.2132 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],blur_bilateral(sigmas,sigmar)); 15.2133 + } else error("Apply bilateral filter on image%s : Invalid argument '%s' " 15.2134 + "(should be 'stdevs,stdevr').",gmic_inds,argument_text); 15.2135 + ++position; continue; 15.2136 + } 15.2137 + 15.2138 + // Smooth. 15.2139 + if (!cimg::strcmp("-smooth",item0)) { 15.2140 + float amplitude = 0, sharpness = 0.7f, anisotropy = 0.3f, alpha = 0.6f, sigma = 1.1f, dl =0.8f, da = 30.0f, gauss_prec = 2.0f; 15.2141 + unsigned int interpolation_type = 0, fast_approx = 1; 15.2142 + char end = 0; 15.2143 + if (std::sscanf(argument,"%f%c",&litude,&end)==1 || 15.2144 + std::sscanf(argument,"%f%*c%f%c",&litude,&sharpness,&end)==2 || 15.2145 + std::sscanf(argument,"%f%*c%f%*c%f%c",&litude,&sharpness,&anisotropy,&end)==3 || 15.2146 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%c",&litude,&sharpness,&anisotropy,&alpha,&end)==4 || 15.2147 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%c",&litude,&sharpness,&anisotropy,&alpha,&sigma,&end)==5 || 15.2148 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%*c%f%c",&litude,&sharpness,&anisotropy,&alpha,&sigma,&dl,&end)==6 || 15.2149 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%c",&litude,&sharpness,&anisotropy,&alpha,&sigma,&dl,&da,&end)==7 || 15.2150 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%c", 15.2151 + &litude,&sharpness,&anisotropy,&alpha,&sigma,&dl,&da,&gauss_prec,&end)==8 || 15.2152 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%u%c", 15.2153 + &litude,&sharpness,&anisotropy,&alpha,&sigma,&dl,&da,&gauss_prec,&interpolation_type,&end)==9 || 15.2154 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%f%*c%u%*c%u%c", 15.2155 + &litude,&sharpness,&anisotropy,&alpha,&sigma,&dl,&da,&gauss_prec,&interpolation_type,&fast_approx,&end)==10) { 15.2156 + print("Smooth image%s anisotropically with " 15.2157 + "amplitude %g, sharpness %g, anisotropy %g, alpha %g and sigma %g.", 15.2158 + gmic_inds,amplitude,sharpness,anisotropy,alpha,sigma); 15.2159 + cimg_foroff(indices,l) 15.2160 + gmic_apply(images[indices[l]],blur_anisotropic(amplitude,sharpness,anisotropy,alpha,sigma, 15.2161 + dl,da,gauss_prec,interpolation_type,fast_approx?true:false)); 15.2162 + } else error("Smooth image%s anisotropically : Invalid argument '%s' " 15.2163 + "(should be 'amplitude[,sharpness[,anisotropy[,alpha[,sigma[,dl[,da[,prec[,interp[,fast]]]]]]]]]').", 15.2164 + gmic_inds,argument_text); 15.2165 + ++position; continue; 15.2166 + } 15.2167 + 15.2168 + // Patch averaging. 15.2169 + if (!cimg::strcmp("-denoise",item0)) { 15.2170 + float sigmas = 10, sigmar = 10; int psize = 5, rsize = 6; char end = 0; 15.2171 + if (std::sscanf(argument,"%f%c",&sigmas,&end)==1 || 15.2172 + std::sscanf(argument,"%f%*c%f%c",&sigmas,&sigmar,&end)==2 || 15.2173 + std::sscanf(argument,"%f%*c%f%*c%d%c",&sigmas,&sigmar,&psize,&end)==3 || 15.2174 + std::sscanf(argument,"%f%*c%f%*c%d%*c%d%c",&sigmas,&sigmar,&psize,&rsize,&end)==4) { 15.2175 + if (sigmas<0 || sigmar<0 || psize<0 || rsize<0) 15.2176 + error("Denoise image%s with %dx%d patches, standard deviations %lg,%g and lookup size %d : " 15.2177 + "Invalid parameters.",gmic_inds,psize,psize,sigmas,sigmar,rsize); 15.2178 + print("Denoise image%s with %dx%d patches, standard deviations %lg,%g and lookup size %d.", 15.2179 + gmic_inds,psize,psize,sigmas,sigmar,rsize); 15.2180 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],blur_patch(psize,sigmas,sigmar,rsize)); 15.2181 + } else error("Denoise image%s : Invalid argument '%s' " 15.2182 + "(should be 'stdev_s[,stdev_p[,patch_size[,lookup_size]]]').", 15.2183 + gmic_inds,argument_text); 15.2184 + ++position; continue; 15.2185 + } 15.2186 + 15.2187 + // Median filter. 15.2188 + if (!cimg::strcmp("-median",item0)) { 15.2189 + int siz = 3; char end = 0; 15.2190 + if (std::sscanf(argument,"%d%c",&siz,&end)==1) { 15.2191 + if (siz<=0) error("Apply median filter on image%s : Invalid size %d.",gmic_inds,siz); 15.2192 + print("Apply median filter of size %d on image%s.",siz,gmic_inds); 15.2193 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],blur_median(siz)); 15.2194 + } else error("Apply median filter on image%s : Invalid argument '%s' " 15.2195 + "(should be 'size').",gmic_inds,argument_text); 15.2196 + ++position; continue; 15.2197 + } 15.2198 + 15.2199 + // Sharpen. 15.2200 + if (!cimg::strcmp("-sharpen",item0)) { 15.2201 + float amplitude = 0, edge = 1, alpha = 0, sigma = 0; int sharpen_type = 0; char end = 0; 15.2202 + if (std::sscanf(argument,"%f%c",&litude,&end)==1 || 15.2203 + std::sscanf(argument,"%f%*c%d%c",&litude,&sharpen_type,&end)==2 || 15.2204 + std::sscanf(argument,"%f%*c%d%*c%f%c",&litude,&sharpen_type,&edge,&end)==3 || 15.2205 + std::sscanf(argument,"%f%*c%d%*c%f%*c%f%c",&litude,&sharpen_type,&edge,&alpha,&end)==4 || 15.2206 + std::sscanf(argument,"%f%*c%d%*c%f%*c%f%*c%f%c",&litude,&sharpen_type,&edge,&alpha,&sigma,&end)==5) { 15.2207 + if (sharpen_type) 15.2208 + print("Sharpen image%s with shock filters and amplitude %g, edge %g, alpha %g and sigma %g.", 15.2209 + gmic_inds,amplitude,edge,alpha,sigma); 15.2210 + else 15.2211 + print("Sharpen image%s with inverse diffusion and amplitude %g.",gmic_inds,amplitude); 15.2212 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],sharpen(amplitude,sharpen_type?true:false,edge,alpha,sigma)); 15.2213 + } else error("Sharpen image%s : Invalid argument '%s' " 15.2214 + "(should be 'amplitude[,sharpen_type[,edge[,alpha[,sigma]]]]', " 15.2215 + "where 'sharpen_type' can be '{0=inverse diffusion, 1=shock filters}').", 15.2216 + gmic_inds,argument_text); 15.2217 + ++position; continue; 15.2218 + } 15.2219 + 15.2220 + // Convolve. 15.2221 + if (!cimg::strcmp("-convolve",item0)) { 15.2222 + int ind0 = no_ind, borders = 1; char sep = 0, end = 0; 15.2223 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2224 + std::sscanf(argument,"[%d]%*c%d%c",&ind0,&borders,&end)==2) { 15.2225 + gmic_check_indice(ind0,"Convolve image%s"); 15.2226 + print("Convolve image%s with mask [%d].",gmic_inds,ind0); 15.2227 + const CImg<T> mask = images[ind0]; 15.2228 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],convolve(mask,borders)); 15.2229 + } else error("Convolve image%s : Invalid argument '%s' " 15.2230 + "(should be '[indice][,border_conditions]').",gmic_inds,argument_text); 15.2231 + ++position; continue; 15.2232 + } 15.2233 + 15.2234 + // Correlate. 15.2235 + if (!cimg::strcmp("-correlate",item0)) { 15.2236 + int ind0 = no_ind, borders = 1; char sep = 0, end = 0; 15.2237 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2238 + std::sscanf(argument,"[%d]%*c%d%c",&ind0,&borders,&end)==2) { 15.2239 + gmic_check_indice(ind0,"Correlate image%s"); 15.2240 + print("Correlate image%s with mask [%d].",gmic_inds,ind0); 15.2241 + const CImg<T> mask = images[ind0]; 15.2242 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],correlate(mask,borders)); 15.2243 + } else error("Correlate image%s : Invalid argument '%s' " 15.2244 + "(should be '[indice][,border_conditions]').",gmic_inds,argument_text); 15.2245 + ++position; continue; 15.2246 + } 15.2247 + 15.2248 + // Erode. 15.2249 + if (!cimg::strcmp("-erode",item0)) { 15.2250 + int siz = 3, ind0 = no_ind, borders = 1; char sep = 0, end = 0; 15.2251 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2252 + std::sscanf(argument,"[%d]%*c%d%c",&ind0,&borders,&end)==2) { 15.2253 + gmic_check_indice(ind0,"Erode image%s"); 15.2254 + print("Erode image%s with mask [%d].",gmic_inds,ind0); 15.2255 + const CImg<T> mask = images[ind0]; 15.2256 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],erode(mask,borders)); 15.2257 + } else if (std::sscanf(argument,"%d%c",&siz,&end)==1 || 15.2258 + std::sscanf(argument,"%d%*c%d%c",&siz,&borders,&end)==2) { 15.2259 + if (siz<=0) error("Erode image%s : Invalid size %d.",gmic_inds,siz); 15.2260 + print("Erode image%s with size %d.",gmic_inds,siz); 15.2261 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],erode(siz,borders)); 15.2262 + } else error("Erode image%s : Invalid argument '%s' " 15.2263 + "(should be '[indice]' or 'size').",gmic_inds,argument_text); 15.2264 + ++position; continue; 15.2265 + } 15.2266 + 15.2267 + // Dilate. 15.2268 + if (!cimg::strcmp("-dilate",item0)) { 15.2269 + int siz = 3, ind0 = no_ind, borders = 1; char sep = 0, end = 0; 15.2270 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2271 + std::sscanf(argument,"[%d]%*c%d%c",&ind0,&borders,&end)==2) { 15.2272 + gmic_check_indice(ind0,"Dilate image%s"); 15.2273 + print("Dilate image%s with mask [%d].",gmic_inds,ind0); 15.2274 + const CImg<T> mask = images[ind0]; 15.2275 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],dilate(mask,borders)); 15.2276 + } else if (std::sscanf(argument,"%d%c",&siz,&end)==1 || 15.2277 + std::sscanf(argument,"%d%*c%d%c",&siz,&borders,&end)==2) { 15.2278 + if (siz<=0) error("Dilate image%s : Invalid size %d.",gmic_inds,siz); 15.2279 + print("Dilate image%s with size %d.",gmic_inds,siz); 15.2280 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],dilate(siz,borders)); 15.2281 + } else error("Dilate image%s : Invalid argument '%s' " 15.2282 + "(should be '[indice]' or 'size').",gmic_inds,argument_text); 15.2283 + ++position; continue; 15.2284 + } 15.2285 + 15.2286 + // Compute gradient. 15.2287 + if (!cimg::strcmp("-gradient",item0)) { 15.2288 + char axes[4096] = { 0 }, *naxes = 0, end = 0; int scheme = 3; 15.2289 + print("Compute gradient of image%s.",gmic_inds); 15.2290 + if (std::sscanf(argument,"%4095[xyz]%c",axes,&end)==1 || 15.2291 + std::sscanf(argument,"%4095[xyz]%*c%d%c",axes,&scheme,&end)==2) { naxes = axes; ++position; } 15.2292 + unsigned int off = 0; 15.2293 + cimg_foroff(indices,l) { 15.2294 + const unsigned int ind = indices[l] + off; 15.2295 + CImg<T>& img = images[ind]; 15.2296 + const CImg<char> filename = filenames[ind]; 15.2297 + const CImgList<T> gradient = img.get_gradient(naxes,scheme); 15.2298 + if (get_version) { 15.2299 + images.insert(gradient); 15.2300 + filenames.insert(gradient.size,filename); 15.2301 + } else { 15.2302 + images.remove(ind); images.insert(gradient,ind); 15.2303 + filenames.remove(ind); filenames.insert(gradient.size,filename,ind); 15.2304 + off+=gradient.size-1; 15.2305 + } 15.2306 + } 15.2307 + continue; 15.2308 + } 15.2309 + 15.2310 + // Compute Hessian. 15.2311 + if (!cimg::strcmp("-hessian",item0)) { 15.2312 + char axes[4096] = { 0 }, *naxes = 0, end = 0; 15.2313 + print("Compute Hessian of image%s.",gmic_inds); 15.2314 + if (std::sscanf(argument,"%4095[xyz]%c",axes,&end)==1) { naxes = axes; ++position; } 15.2315 + unsigned int off = 0; 15.2316 + cimg_foroff(indices,l) { 15.2317 + const unsigned int ind = indices[l] + off; 15.2318 + CImg<T>& img = images[ind]; 15.2319 + const CImg<char> filename = filenames[ind]; 15.2320 + const CImgList<T> hessian = img.get_hessian(naxes); 15.2321 + if (get_version) { 15.2322 + images.insert(hessian); 15.2323 + filenames.insert(hessian.size,filename); 15.2324 + } else { 15.2325 + images.remove(ind); images.insert(hessian,ind); 15.2326 + filenames.remove(ind); filenames.insert(hessian.size,filename,ind); 15.2327 + off+=hessian.size-1; 15.2328 + } 15.2329 + } 15.2330 + continue; 15.2331 + } 15.2332 + 15.2333 + // Compute direct or inverse FFT. 15.2334 + const bool inv_fft = !cimg::strcmp("-ifft",item0); 15.2335 + if (!cimg::strcmp("-fft",item0) || inv_fft) { 15.2336 + print("Compute %sFourier Transform of complex data",inv_fft?"inverse ":""); 15.2337 + cimg_foroff(indices,l) { 15.2338 + const unsigned int ind0 = indices[l], ind1 = l+1<_maxl?indices[l+1]:~0U; 15.2339 + if (ind1!=~0U) { 15.2340 + if (verbosity_level>=0) std::fprintf(cimg_stdout," ([%u],[%u])%c",ind0,ind1,l==_maxl-1?'.':','); 15.2341 + CImgList<T> fft(images[ind0],images[ind1],!get_version); 15.2342 + fft.FFT(inv_fft); 15.2343 + if (get_version) { 15.2344 + images.insert(2); 15.2345 + fft[0].transfer_to(images[images.size-2]); 15.2346 + fft[1].transfer_to(images[images.size-1]); 15.2347 + filenames.insert(filenames[ind0]); 15.2348 + filenames.insert(filenames[ind1]); 15.2349 + } else { 15.2350 + fft[0].transfer_to(images[ind0]); 15.2351 + fft[1].transfer_to(images[ind1]); 15.2352 + } 15.2353 + ++l; 15.2354 + } else { 15.2355 + if (verbosity_level>=0) std::fprintf(cimg_stdout," ([%u],0)",ind0); 15.2356 + CImgList<T> fft(images[ind0],!get_version); 15.2357 + fft.insert(fft[0],~0U,false); 15.2358 + fft[1].fill(0); 15.2359 + fft.FFT(inv_fft); 15.2360 + if (get_version) { 15.2361 + images.insert(2); 15.2362 + fft[0].transfer_to(images[images.size-2]); 15.2363 + fft[1].transfer_to(images[images.size-1]); 15.2364 + filenames.insert(2,filenames[ind0]); 15.2365 + } else { 15.2366 + fft[0].transfer_to(images[ind0]); 15.2367 + images.insert(fft[1],1+ind0); 15.2368 + filenames.insert(filenames[ind0],1+ind0); 15.2369 + } 15.2370 + } 15.2371 + } 15.2372 + continue; 15.2373 + } 15.2374 + 15.2375 + //----------------------------- 15.2376 + // Image creation and drawing 15.2377 + //----------------------------- 15.2378 + 15.2379 + // Dimensions. 15.2380 + if (!cimg::strcmp("-dimensions",item0)) { 15.2381 + print("Get dimensions of image%s.",gmic_inds); 15.2382 + cimg_foroff(indices,l) { 15.2383 + CImg<T>& img = images[indices[l]]; 15.2384 + CImg<int> dims = CImg<int>::vector(img.dimx(),img.dimy(),img.dimz(),img.dimv()); 15.2385 + gmic_apply(img,replace(dims)); 15.2386 + } 15.2387 + continue; 15.2388 + } 15.2389 + 15.2390 + // Stats. 15.2391 + if (!cimg::strcmp("-stats",item0)) { 15.2392 + print("Get statistics of image%s.",gmic_inds); 15.2393 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],stats()); 15.2394 + continue; 15.2395 + } 15.2396 + 15.2397 + // Histogram. 15.2398 + if (!cimg::strcmp("-histogram",item0)) { 15.2399 + int nb_levels = 256; char sep = 0, end = 0; 15.2400 + if (std::sscanf(argument,"%d%c",&nb_levels,&end)==1 || 15.2401 + (std::sscanf(argument,"%d%c%c",&nb_levels,&sep,&end)==2 && sep=='%')) { 15.2402 + print("Compute histogram of image%s using %d%s levels.",gmic_inds,nb_levels,sep=='%'?"%":""); 15.2403 + cimg_foroff(indices,l) { 15.2404 + CImg<T> &img = images[indices[l]]; 15.2405 + int nnb_levels = nb_levels; 15.2406 + if (sep=='%') { double m, M = img.maxmin(m); nnb_levels = (int)cimg::round(nb_levels*(1+M-m)/100,1); } 15.2407 + gmic_apply(images[indices[l]],histogram(nnb_levels)); 15.2408 + } 15.2409 + } else error("Compute histogram of image%s : Invalid argument '%s' " 15.2410 + "(should be 'nb_levels[%%]').",gmic_inds,argument_text); 15.2411 + ++position; continue; 15.2412 + } 15.2413 + 15.2414 + // Distance function. 15.2415 + if (!cimg::strcmp("-distance",item0)) { 15.2416 + double value = 0; char sep = 0, end = 0; 15.2417 + if (std::sscanf(argument,"%lf%c",&value,&end)==1 || 15.2418 + (std::sscanf(argument,"%lf%c%c",&value,&sep,&end)==2 && sep=='%')) { 15.2419 + print("Compute distance map of image%s to isovalue %g%s.",gmic_inds,value,sep=='%'?"%":""); 15.2420 + cimg_foroff(indices,l) { 15.2421 + CImg<T> &img = images[indices[l]]; 15.2422 + double isovalue = value; 15.2423 + if (sep=='%') { double m, M = img.maxmin(m); isovalue = m + value*(M - m)/100; } 15.2424 + gmic_apply(img,distance((T)isovalue)); 15.2425 + } 15.2426 + } else error("Compute distance function of image%s : Invalid argument '%s' " 15.2427 + "(should be 'value[%%]').",gmic_inds,argument_text); 15.2428 + ++position; continue; 15.2429 + } 15.2430 + 15.2431 + // Apply Hamilton-Jacobi PDE to compute distance to 0. 15.2432 + if (!cimg::strcmp("-hamilton",item0)) { 15.2433 + int nb_iter = 0; float band_size = 0; char end = 0; 15.2434 + if (std::sscanf(argument,"%d%c",&nb_iter,&end)==1 || 15.2435 + std::sscanf(argument,"%d%*c%f%c",&nb_iter,&band_size,&end)==2) { 15.2436 + print("Apply %d iterations of Hamilton-Jacobi PDE on image%s.",nb_iter,gmic_inds); 15.2437 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],distance_hamilton((unsigned int)nb_iter,band_size)); 15.2438 + } else error("Apply %d iterations of Hamilton-Jacobi PDE on image%s : Invalid argument '%s' " 15.2439 + "(should be 'nb_iter[,band_size]', with band_size>0).",nb_iter,gmic_inds,argument_text); 15.2440 + ++position; continue; 15.2441 + } 15.2442 + 15.2443 + // Label regions. 15.2444 + gmic_simple_item("-label",label_regions,"Label regions on image%s."); 15.2445 + 15.2446 + // Displacement field. 15.2447 + if (!cimg::strcmp("-displacement",item0)) { 15.2448 + float smooth = 0.1f, precision = 0.1f; int ind0 = no_ind, nbscales = 0, itermax = 1000; char sep = 0, end = 0; 15.2449 + if ((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2450 + std::sscanf(argument,"[%d]%*c%f%c",&ind0,&smooth,&end)==2 || 15.2451 + std::sscanf(argument,"[%d]%*c%f%*c%f%c",&ind0,&smooth,&precision,&end)==3 || 15.2452 + std::sscanf(argument,"[%d]%*c%f%*c%f%*c%d%c",&ind0,&smooth,&precision,&nbscales,&end)==4 || 15.2453 + std::sscanf(argument,"[%d]%*c%f%*c%f%*c%d%*c%d%c",&ind0,&smooth,&precision,&nbscales,&itermax,&end)==5) { 15.2454 + gmic_check_indice(ind0,"Compute displacement field of image%s"); 15.2455 + print("Compute displacement field of image%s with target [%u] and smoothness %g.", 15.2456 + gmic_inds,ind0,smooth); 15.2457 + const CImg<T> target = images[ind0]; 15.2458 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],displacement_field(target,smooth,precision,nbscales,itermax)); 15.2459 + } else error("Compute displacement field of image%s : Invalid argument '%s' " 15.2460 + "(should be '[indice][,smoothness[,precision[,nbscales[,itermax]]]]').",gmic_inds,argument_text); 15.2461 + ++position; continue; 15.2462 + } 15.2463 + 15.2464 + // Sort. 15.2465 + gmic_simple_item("-sort",sort,"Sort values in image%s."); 15.2466 + 15.2467 + // PSNR. 15.2468 + if (!cimg::strcmp("-psnr",item0)) { 15.2469 + double valmax = 255; char end = 0; 15.2470 + if (std::sscanf(argument,"%lf%c",&valmax,&end)==1) ++position; 15.2471 + if (images.size) { 15.2472 + const unsigned int siz = indices.size(); 15.2473 + print("Compute a %ux%u matrix [%u] of PSNR values (max. pixel value is %g).",siz,siz,images.size,valmax); 15.2474 + CImg<T> res(siz,siz,1,1,(T)-1); 15.2475 + cimg_forXY(res,x,y) if (x>y) res(x,y) = res(y,x) = (T)images[indices[x]].PSNR(images[indices[y]],(float)valmax); 15.2476 + images.insert(res); 15.2477 + filenames.insert(CImg<char>("PSNR",5,1,1,1,false)); 15.2478 + } else error("Compute PSNR : image list is empty."); 15.2479 + continue; 15.2480 + } 15.2481 + 15.2482 + // Draw point. 15.2483 + if (!cimg::strcmp("-point",item0)) { 15.2484 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, arg2[4096] = { 0 }, color[4096] = { 0 }; 15.2485 + char sepx0 = 0, sepy0 = 0, sepz0 = 0, end = 0; 15.2486 + float x0 = 0, y0 = 0, z0 = 0, opacity = 1; 15.2487 + if (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%*c%4095[0-9.eE,+-]", 15.2488 + arg0,arg1,arg2,&opacity,color)>=2 && 15.2489 + ((std::sscanf(arg0,"%f%c%c",&x0,&sepx0,&end)==2 && sepx0=='%') || 15.2490 + std::sscanf(arg0,"%f%c",&x0,&end)==1) && 15.2491 + ((std::sscanf(arg1,"%f%c%c",&y0,&sepy0,&end)==2 && sepy0=='%') || 15.2492 + std::sscanf(arg1,"%f%c",&y0,&end)==1) && 15.2493 + ((std::sscanf(arg2,"%f%c%c",&z0,&sepz0,&end)==2 && sepz0=='%') || 15.2494 + std::sscanf(arg2,"%f%c",&z0,&end)==1 || !arg2[0])) { 15.2495 + print("Draw point (%g%s,%g%s,%g%s) with color '%s' and opacity %g on image%s.", 15.2496 + x0,sepx0=='%'?"%":"",y0,sepy0=='%'?"%":"",z0,sepz0=='%'?"%":"", 15.2497 + color[0]?color:"default",opacity,gmic_inds); 15.2498 + cimg_foroff(indices,l) { 15.2499 + CImg<T> &img = images[indices[l]]; 15.2500 + CImg<T> col(img.dimv(),1,1,1,0); 15.2501 + col.fill(color,true); 15.2502 + const int 15.2503 + nx0 = (int)cimg::round(sepx0=='%'?x0*(img.dimx()-1)/100:x0,1), 15.2504 + ny0 = (int)cimg::round(sepy0=='%'?y0*(img.dimy()-1)/100:y0,1), 15.2505 + nz0 = (int)cimg::round(sepz0=='%'?z0*(img.dimz()-1)/100:z0,1); 15.2506 + gmic_apply(img,draw_point(nx0,ny0,nz0,col,opacity)); 15.2507 + } 15.2508 + } else error("Draw point on image%s : Invalid argument '%s' " 15.2509 + "(should be 'x[%%],y[%%][,z[%%][,opacity[,color]]])",gmic_inds,argument_text); 15.2510 + ++position; continue; 15.2511 + } 15.2512 + 15.2513 + // Draw line. 15.2514 + if (!cimg::strcmp("-line",item0)) { 15.2515 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, arg2[4096] = { 0 }, arg3[4096] = { 0 }, color[4096] = { 0 }; 15.2516 + char sepx0 = 0, sepy0 = 0, sepx1 = 0, sepy1 = 0, end = 0; 15.2517 + float x0 = 0, y0 = 0, x1 = 0, y1 = 0, opacity = 1; 15.2518 + if (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]" 15.2519 + "%*c%f%*c%4095[0-9.eE,+-]", 15.2520 + arg0,arg1,arg2,arg3,&opacity,color)>=4 && 15.2521 + ((std::sscanf(arg0,"%f%c%c",&x0,&sepx0,&end)==2 && sepx0=='%') || 15.2522 + std::sscanf(arg0,"%f%c",&x0,&end)==1) && 15.2523 + ((std::sscanf(arg1,"%f%c%c",&y0,&sepy0,&end)==2 && sepy0=='%') || 15.2524 + std::sscanf(arg1,"%f%c",&y0,&end)==1) && 15.2525 + ((std::sscanf(arg2,"%f%c%c",&x1,&sepx1,&end)==2 && sepx1=='%') || 15.2526 + std::sscanf(arg2,"%f%c",&x1,&end)==1) && 15.2527 + ((std::sscanf(arg3,"%f%c%c",&y1,&sepy1,&end)==2 && sepy1=='%') || 15.2528 + std::sscanf(arg3,"%f%c",&y1,&end)==1)) { 15.2529 + print("Draw line (%g%s,%g%s) - (%g%s,%g%s) with color '%s' and opacity %g on image%s.", 15.2530 + x0,sepx0=='%'?"%":"",y0,sepy0=='%'?"%":"",x1,sepx1=='%'?"%":"",y1,sepy1=='%'?"%":"", 15.2531 + color[0]?color:"default",opacity,gmic_inds); 15.2532 + cimg_foroff(indices,l) { 15.2533 + CImg<T> &img = images[indices[l]]; 15.2534 + CImg<T> col(img.dimv(),1,1,1,0); 15.2535 + col.fill(color,true); 15.2536 + const int 15.2537 + nx0 = (int)cimg::round(sepx0=='%'?x0*(img.dimx()-1)/100:x0,1), 15.2538 + ny0 = (int)cimg::round(sepy0=='%'?y0*(img.dimy()-1)/100:y0,1), 15.2539 + nx1 = (int)cimg::round(sepx1=='%'?x1*(img.dimx()-1)/100:x1,1), 15.2540 + ny1 = (int)cimg::round(sepy1=='%'?y1*(img.dimy()-1)/100:y1,1); 15.2541 + gmic_apply(img,draw_line(nx0,ny0,nx1,ny1,col,opacity)); 15.2542 + } 15.2543 + } else error("Draw line on image%s : Invalid argument '%s' " 15.2544 + "(should be 'x0[%%],y0[%%],x1[%%],y1[%%][,opacity[,color]]')",gmic_inds,argument_text); 15.2545 + ++position; continue; 15.2546 + } 15.2547 + 15.2548 + // Draw polygon. 15.2549 + if (!cimg::strcmp("-polygon",item0)) { 15.2550 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, tmp[4096] = { 0 }, sepx0 = 0, sepy0 = 0, end = 0; 15.2551 + int N = 0; float x0 = 0, y0 = 0, opacity = 1; 15.2552 + if (std::sscanf(argument,"%d%c",&N,&end)==2 && N>2) { 15.2553 + const char 15.2554 + *nargument = argument + std::sprintf(tmp,"%d",N) + 1, 15.2555 + *const eargument = argument + cimg::strlen(argument); 15.2556 + CImg<float> coords0(N,2,1,1,0); 15.2557 + CImg<bool> percents(N,2,1,1,0); 15.2558 + for (int n = 0; n<N; ++n) if (nargument<eargument) { 15.2559 + if (std::sscanf(nargument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]",arg0,arg1)==2 && 15.2560 + ((std::sscanf(arg0,"%f%c%c",&x0,&(sepx0=0),&end)==2 && sepx0=='%') || 15.2561 + std::sscanf(arg0,"%f%c",&x0,&end)==1) && 15.2562 + ((std::sscanf(arg1,"%f%c%c",&y0,&(sepy0=0),&end)==2 && sepy0=='%') || 15.2563 + std::sscanf(arg1,"%f%c",&y0,&end)==1)) { 15.2564 + coords0(n,0) = x0; percents(n,0) = (sepx0=='%'); 15.2565 + coords0(n,1) = y0; percents(n,1) = (sepy0=='%'); 15.2566 + nargument+=cimg::strlen(arg0) + cimg::strlen(arg1) + 2; 15.2567 + } else error("Draw polygon on image%s : Invalid or incomplete argument '%s' " 15.2568 + "(should be 'N,x0[%%],y0[%%],x1[%%],y1[%%],..,xN[%%],yN[%%][,opacity[,color]]' with N>=3)", 15.2569 + gmic_inds,argument_text); 15.2570 + } else error("Draw polygon on image%s : Incomplete argument '%s' " 15.2571 + "(%d xy-coordinates should be defined)", 15.2572 + gmic_inds,argument_text,N); 15.2573 + if (nargument<eargument && std::sscanf(nargument,"%4095[0-9.eE+-]",arg0)==1 && 15.2574 + std::sscanf(arg0,"%f",&opacity)==1) nargument+=cimg::strlen(arg0)+1; 15.2575 + const char *const color = nargument<eargument?nargument:&(end=0); 15.2576 + print("Draw %d-vertices polygon with color '%s' and opacity %g on image%s.", 15.2577 + N,color[0]?color:"default",opacity,gmic_inds); 15.2578 + cimg_foroff(indices,l) { 15.2579 + CImg<T> &img = images[indices[l]]; 15.2580 + CImg<int> coords(coords0); 15.2581 + cimg_forX(coords,p) { 15.2582 + if (percents(p,0)) coords(p,0) = (int)cimg::round(coords0(p,0)*(img.dimx()-1)/100,1); 15.2583 + if (percents(p,1)) coords(p,1) = (int)cimg::round(coords0(p,1)*(img.dimy()-1)/100,1); 15.2584 + } 15.2585 + CImg<T> col(img.dimv(),1,1,1,0); 15.2586 + col.fill(color,true); 15.2587 + gmic_apply(img,draw_polygon(coords,col,opacity)); 15.2588 + } 15.2589 + } else error("Draw polygon on image%s : Invalid argument '%s' " 15.2590 + "(should be 'N,x0[%%],y0[%%],x1[%%],y1[%%],..,xN[%%],yN[%%][,opacity[,color]]' with N>=3)", 15.2591 + gmic_inds,argument_text); 15.2592 + ++position; continue; 15.2593 + } 15.2594 + 15.2595 + // Draw ellipse. 15.2596 + if (!cimg::strcmp("-ellipse",item0)) { 15.2597 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, color[4096] = { 0 }; 15.2598 + char sepx0 = 0, sepy0 = 0, end = 0; 15.2599 + float x0 = 0, y0 = 0, r0 = 0, r1 = 0, ru = 1, rv = 0, opacity = 1; 15.2600 + if (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%*c%f%*c%f%*c%f%*c%f%*c%4095[0-9.eE,+-]", 15.2601 + arg0,arg1,&r0,&r1,&ru,&rv,&opacity,color)>=4 && 15.2602 + ((std::sscanf(arg0,"%f%c%c",&x0,&sepx0,&end)==2 && sepx0=='%') || 15.2603 + std::sscanf(arg0,"%f%c",&x0,&end)==1) && 15.2604 + ((std::sscanf(arg1,"%f%c%c",&y0,&sepy0,&end)==2 && sepy0=='%') || 15.2605 + std::sscanf(arg1,"%f%c",&y0,&end)==1)) { 15.2606 + print("Draw ellipse centered at (%g%s,%g%s) with radii (%g,%g), orientation (%g,%g), color '%s' " 15.2607 + "and opacity %g on image%s.", 15.2608 + x0,sepx0=='%'?"%":"",y0,sepy0=='%'?"%":"", 15.2609 + r0,r1,ru,rv,color[0]?color:"default",opacity,gmic_inds); 15.2610 + cimg_foroff(indices,l) { 15.2611 + CImg<T> &img = images[indices[l]]; 15.2612 + CImg<T> col(img.dimv(),1,1,1,0); 15.2613 + col.fill(color,true); 15.2614 + const int 15.2615 + nx0 = (int)cimg::round(sepx0=='%'?x0*(img.dimx()-1)/100:x0,1), 15.2616 + ny0 = (int)cimg::round(sepy0=='%'?y0*(img.dimy()-1)/100:y0,1); 15.2617 + gmic_apply(img,draw_ellipse(nx0,ny0,r0,r1,ru,rv,col,opacity)); 15.2618 + } 15.2619 + } else error("Draw ellipse on image%s : Invalid argument '%s' " 15.2620 + "(should be 'x[%%],y[%%],r,R[,u,v[,opacity[,color]]])", 15.2621 + gmic_inds,argument_text); 15.2622 + ++position; continue; 15.2623 + } 15.2624 + 15.2625 + // Draw text. 15.2626 + if (!cimg::strcmp("-text",item0)) { 15.2627 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, color[4096] = { 0 }, text[4096] = { 0 }; 15.2628 + char sepx0 = 0, sepy0 = 0, end = 0; 15.2629 + float x0 = 0, y0 = 0, opacity = 1; int siz = 11; 15.2630 + if (std::sscanf(argument,"%4095[^,],%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%d%*c%f%*c%4095[0-9.eE,+-]", 15.2631 + text,arg0,arg1,&siz,&opacity,color)>=1 && 15.2632 + ((std::sscanf(arg0,"%f%c%c",&x0,&sepx0,&end)==2 && sepx0=='%') || 15.2633 + std::sscanf(arg0,"%f%c",&x0,&end)==1 || !arg0[0]) && 15.2634 + ((std::sscanf(arg1,"%f%c%c",&y0,&sepy0,&end)==2 && sepy0=='%') || 15.2635 + std::sscanf(arg1,"%f%c",&y0,&end)==1 || !arg1[0])) { 15.2636 + cimg::strclean(text); cimg::strescape(text); 15.2637 + print("Draw text \"%s\" at position (%g%s,%g%s) with font size %d, color '%s' " 15.2638 + "and opacity %f on image%s.", 15.2639 + text,x0,sepx0=='%'?"%":"",y0,sepy0=='%'?"%":"",siz,color[0]?color:"default",opacity,gmic_inds); 15.2640 + cimg_foroff(indices,l) { 15.2641 + CImg<T> &img = images[indices[l]]; 15.2642 + CImg<T> col(img.dimv(),1,1,1,0); 15.2643 + col.fill(color,true); 15.2644 + const int 15.2645 + nx0 = (int)cimg::round(sepx0=='%'?x0*(img.dimx()-1)/100:x0,1), 15.2646 + ny0 = (int)cimg::round(sepy0=='%'?y0*(img.dimy()-1)/100:y0,1); 15.2647 + gmic_apply(img,draw_text(nx0,ny0,text,col.ptr(),0,opacity,siz)); 15.2648 + } 15.2649 + } else error("Draw text on image%s : Invalid argument '%s' " 15.2650 + "(should be 'text[,x[%%],y[%%][,size[,opacity[,color]]]]').", 15.2651 + gmic_inds,argument_text); 15.2652 + ++position; continue; 15.2653 + } 15.2654 + 15.2655 + // Draw image. 15.2656 + if (!cimg::strcmp("-image",item0)) { 15.2657 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, arg2[4096] = { 0 }, sep = 0, sepx = 0, sepy = 0, sepz = 0, end = 0; 15.2658 + int ind0 = no_ind, indm0 = no_ind; float x = 0, y = 0, z = 0, opacity = 1; 15.2659 + if (((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==1 && sep==']') || 15.2660 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%c",&ind0,arg0,&end)==2 || 15.2661 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&ind0,arg0,arg1,&end)==3 || 15.2662 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&ind0,arg0,arg1,arg2,&end)==4 || 15.2663 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%c",&ind0,arg0,arg1,arg2,&opacity,&end)==5 || 15.2664 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%*c[%d%c%c", 15.2665 + &ind0,arg0,arg1,arg2,&opacity,&indm0,&sep,&end)==7) && 15.2666 + (!*arg0 || 15.2667 + std::sscanf(arg0,"%f%c",&x,&end)==1 || 15.2668 + (std::sscanf(arg0,"%f%c%c",&x,&sepx,&end)==2 && sepx=='%')) && 15.2669 + (!*arg1 || 15.2670 + std::sscanf(arg1,"%f%c",&y,&end)==1 || 15.2671 + (std::sscanf(arg1,"%f%c%c",&y,&sepy,&end)==2 && sepy=='%')) && 15.2672 + (!*arg2 || 15.2673 + std::sscanf(arg2,"%f%c",&z,&end)==1 || 15.2674 + (std::sscanf(arg2,"%f%c%c",&z,&sepz,&end)==2 && sepz=='%'))) { 15.2675 + gmic_check_indice(ind0,"Draw image on image%s"); 15.2676 + const CImg<T> sprite = images[ind0]; 15.2677 + CImg<T> mask; 15.2678 + if (indm0!=no_ind) { 15.2679 + gmic_check_indice(indm0,"Draw image on image%s"); 15.2680 + mask = images[indm0]; 15.2681 + print("Draw image [%d] at (%g%s,%g%s,%g%s), with mask [%d] and opacity %f on image%s.", 15.2682 + ind0,x,sepx=='%'?"%":"",y,sepy=='%'?"%":"",z,sepz=='%'?"%":"",indm0,opacity,gmic_inds); 15.2683 + } else print("Draw image [%d] at (%g%s,%g%s,%g%s) with opacity %f on image%s.", 15.2684 + ind0,x,sepx=='%'?"%":"",y,sepy=='%'?"%":"",z,sepz=='%'?"%":"",opacity,gmic_inds); 15.2685 + cimg_foroff(indices,l) { 15.2686 + CImg<T> &img = images[indices[l]]; 15.2687 + const int 15.2688 + nx = (int)cimg::round(sepx=='%'?x*(img.dimx()-1)/100:x,1), 15.2689 + ny = (int)cimg::round(sepy=='%'?y*(img.dimy()-1)/100:y,1), 15.2690 + nz = (int)cimg::round(sepz=='%'?z*(img.dimz()-1)/100:z,1); 15.2691 + if (indm0!=no_ind) { gmic_apply(img,draw_image(nx,ny,nz,sprite,mask,opacity)); } 15.2692 + else { gmic_apply(img,draw_image(nx,ny,nz,sprite,opacity)); } 15.2693 + } 15.2694 + } else error("Draw image on image%s : Invalid argument '%s' " 15.2695 + "(should be '[indice][,x[%%][,y[%%][,z[%%][,opacity[,indice_mask]]]]]').", 15.2696 + gmic_inds,argument_text); 15.2697 + ++position; continue; 15.2698 + } 15.2699 + 15.2700 + // Draw 3D object. 15.2701 + if (!cimg::strcmp("-object3d",item0)) { 15.2702 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, sep = 0, sepx = 0, sepy = 0, end = 0; 15.2703 + float x = 0, y = 0, z = 0, opacity = 1; 15.2704 + int ind0 = no_ind; 15.2705 + if (((std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') || 15.2706 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%c",&ind0,arg0,&end)==2 || 15.2707 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%c",&ind0,arg0,arg1,&end)==3 || 15.2708 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%c",&ind0,arg0,arg1,&z,&end)==4 || 15.2709 + std::sscanf(argument,"[%d]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%*c%f%c",&ind0,arg0,arg1,&z,&opacity,&end)==5) && 15.2710 + (!*arg0 || 15.2711 + std::sscanf(arg0,"%f%c",&x,&end)==1 || 15.2712 + (std::sscanf(arg0,"%f%c%c",&x,&sepx,&end)==2 && sepx=='%')) && 15.2713 + (!*arg1 || 15.2714 + std::sscanf(arg1,"%f%c",&y,&end)==1 || 15.2715 + (std::sscanf(arg1,"%f%c%c",&y,&sepy,&end)==2 && sepy=='%'))) { 15.2716 + gmic_check_indice(ind0,"Draw 3D object on image%s"); 15.2717 + if (!images[ind0].is_CImg3d()) 15.2718 + error("Draw 3D object on image%s : Image [%d] is not a 3D object.",gmic_inds,ind0); 15.2719 + print("Draw 3D object [%d] at (%g%s,%g%s,%g) on image%s, with opacity %g.", 15.2720 + ind0,x,sepx=='%'?"%":"",y,sepy=='%'?"%":"",z,gmic_inds,opacity); 15.2721 + CImgList<unsigned int> primitives3d; 15.2722 + CImgList<unsigned char> colors3d; 15.2723 + CImg<float> opacities3d, points3d(images[ind0]); 15.2724 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.2725 + opacities3d*=opacity; 15.2726 + cimg_foroff(indices,l) { 15.2727 + CImg<T> &img = images[indices[l]]; 15.2728 + const float 15.2729 + nx = (float)cimg::round(sepx=='%'?x*(img.dimx()-1)/100:x,1), 15.2730 + ny = (float)cimg::round(sepy=='%'?y*(img.dimy()-1)/100:y,1); 15.2731 + gmic_apply(img,draw_object3d(nx,ny,z,points3d,primitives3d,colors3d,opacities3d, 15.2732 + render3d,!is_oriented3d,focale3d,light3d_x,light3d_y,light3d_z,specular_light3d, 15.2733 + specular_shine3d,0)); 15.2734 + } 15.2735 + } else error("Draw 3D object on image%s : Invalid argument '%s' " 15.2736 + "(should be '[indice][,x[%%][,y[%%][,z[,opacity[,zoom[,u1,v1,w1,angle1[,...]]]]]]]').", 15.2737 + gmic_inds,argument_text); 15.2738 + ++position; continue; 15.2739 + } 15.2740 + 15.2741 + // Draw plasma fractal. 15.2742 + if (!cimg::strcmp("-plasma",item0)) { 15.2743 + float alpha = 1, beta = 1, opacity = 1; char end = 0; 15.2744 + if (std::sscanf(argument,"%f%c",&alpha,&end)==1 || 15.2745 + std::sscanf(argument,"%f%*c%f%c",&alpha,&beta,&end)==2 || 15.2746 + std::sscanf(argument,"%f%*c%f%*c%f%c",&alpha,&beta,&opacity,&end)==3) { 15.2747 + print("Draw plasma in image%s with alpha %g, beta %g and opacity %g.",gmic_inds,alpha,beta,opacity); 15.2748 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],draw_plasma(alpha,beta,opacity)); 15.2749 + } else error("Draw plasma in image%d : Invalid argument '%s' " 15.2750 + "(should be 'alpha[,beta[,opacity]]').",gmic_inds,argument_text); 15.2751 + ++position; continue; 15.2752 + } 15.2753 + 15.2754 + // Draw Mandelbrot/Julia fractal. 15.2755 + if (!cimg::strcmp("-mandelbrot",item0)) { 15.2756 + double z0r = -2, z0i = -2, z1r = 2, z1i = 2, paramr = 0, parami = 0; char end = 0; 15.2757 + float opacity = 1; int itermax = 100, julia = 0; 15.2758 + if (std::sscanf(argument,"%lf%*c%lf%*c%lf%*c%lf%c",&z0r,&z0i,&z1r,&z1i,&end)==4 || 15.2759 + std::sscanf(argument,"%lf%*c%lf%*c%lf%*c%lf%*c%d%c",&z0r,&z0i,&z1r,&z1i,&itermax,&end)==5 || 15.2760 + std::sscanf(argument,"%lf%*c%lf%*c%lf%*c%lf%*c%d%*c%d%*c%lf%*c%lf%c", 15.2761 + &z0r,&z0i,&z1r,&z1i,&itermax,&julia,¶mr,¶mi,&end)==8 || 15.2762 + std::sscanf(argument,"%lf%*c%lf%*c%lf%*c%lf%*c%d%*c%d%*c%lf%*c%lf%*c%f%c", 15.2763 + &z0r,&z0i,&z1r,&z1i,&itermax,&julia,¶mr,¶mi,&opacity,&end)==9) { 15.2764 + print("Draw %s fractal in image%s from complex area (%g,%g)-(%g,%g) with c0 = (%g,%g) (%d iterations).", 15.2765 + julia?"Julia":"Mandelbrot",gmic_inds,z0r,z0i,z1r,z1i,paramr,parami,itermax); 15.2766 + cimg_foroff(indices,l) 15.2767 + gmic_apply(images[indices[l]],draw_mandelbrot(CImg<T>(),opacity,z0r,z0i,z1r,z1i,itermax,true, 15.2768 + julia?true:false,paramr,parami)); 15.2769 + } else error("Draw fractal in image%s : Invalid argument '%s' " 15.2770 + "(should be 'z0r,z0i,z1r,z1i[,itermax[,julia,c0r,c0i[,opacity]]]').",gmic_inds,argument_text); 15.2771 + ++position; continue; 15.2772 + } 15.2773 + 15.2774 + // Flood fill. 15.2775 + if (!cimg::strcmp("-flood",item0)) { 15.2776 + char arg0[4096] = { 0 }, arg1[4096] = { 0 }, arg2[4096] = { 0 }, color[4096] = { 0 }; 15.2777 + char sepx = 0, sepy = 0, sepz = 0, end = 0; 15.2778 + float x = 0, y = 0, z = 0, tolerance = 0, opacity = 1; 15.2779 + if (std::sscanf(argument,"%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%4095[0-9.eE%+-]%*c%f%*c%f%*c%4095[0-9.eE,+-]", 15.2780 + arg0,arg1,arg2,&tolerance,&opacity,color)>=1 && 15.2781 + ((std::sscanf(arg0,"%f%c%c",&x,&sepx,&end)==2 && sepx=='%') || 15.2782 + std::sscanf(arg0,"%f%c",&x,&end)==1) && 15.2783 + ((std::sscanf(arg1,"%f%c%c",&y,&sepy,&end)==2 && sepy=='%') || 15.2784 + std::sscanf(arg1,"%f%c",&y,&end)==1 || !arg1[0]) && 15.2785 + ((std::sscanf(arg2,"%f%c%c",&z,&sepz,&end)==2 && sepz=='%') || 15.2786 + std::sscanf(arg2,"%f%c",&z,&end)==1 || !arg2[0])) { 15.2787 + print("Flood fill image%s from (%g%s,%g%s,%g%s) with tolerance %g, opacity %g and color '%s'.", 15.2788 + gmic_inds,x,sepx=='%'?"%":"",y,sepy=='%'?"%":"",z,sepz=='%'?"%":"",tolerance,opacity,color); 15.2789 + cimg_foroff(indices,l) { 15.2790 + CImg<T> &img = images[indices[l]]; 15.2791 + CImg<T> col(img.dimv(),1,1,1,0); 15.2792 + col.fill(color,true); 15.2793 + const int 15.2794 + nx = (int)cimg::round(sepx=='%'?x*(img.dimx()-1)/100:x,1), 15.2795 + ny = (int)cimg::round(sepy=='%'?y*(img.dimy()-1)/100:y,1), 15.2796 + nz = (int)cimg::round(sepz=='%'?z*(img.dimz()-1)/100:z,1); 15.2797 + gmic_apply(img,draw_fill(nx,ny,nz,col,opacity,tolerance)); 15.2798 + } 15.2799 + } else error("Flood fill image%s : Invalid argument '%s' " 15.2800 + "(should be 'x[,y[,z[,tolerance[,opacity[,color]]]]]').",gmic_inds,argument_text); 15.2801 + ++position; continue; 15.2802 + } 15.2803 + 15.2804 + //------------------------- 15.2805 + // Image list manipulation 15.2806 + //------------------------- 15.2807 + 15.2808 + // Remove specified image(s). 15.2809 + if (!cimg::strcmp("-remove",item0) || !cimg::strcmp("-rm",item0)) { 15.2810 + print("Remove image%s",gmic_inds); 15.2811 + unsigned int off = 0; 15.2812 + cimg_foroff(indices,l) { 15.2813 + const unsigned int ind = indices[l] - off; 15.2814 + images.remove(ind); filenames.remove(ind); 15.2815 + ++off; 15.2816 + } 15.2817 + if (verbosity_level>=0) std::fprintf(cimg_stdout," (%u image%s left).",images.size,images.size==1?"":"s"); 15.2818 + continue; 15.2819 + } 15.2820 + 15.2821 + // Keep specified image(s). 15.2822 + if (!cimg::strcmp("-keep",item0) || !cimg::strcmp("-k",item0)) { 15.2823 + print("Keep image%s",gmic_inds); 15.2824 + CImgList<T> nimages(indices.size()); 15.2825 + cimg_foroff(indices,l) nimages[l].swap(images[indices[l]]); 15.2826 + nimages.transfer_to(images); 15.2827 + if (verbosity_level>=0) std::fprintf(cimg_stdout," (%u image%s left).",images.size,images.size==1?"":"s"); 15.2828 + continue; 15.2829 + } 15.2830 + 15.2831 + // Move image(s) to specified position. 15.2832 + if (!cimg::strcmp("-move",item0) || !cimg::strcmp("-mv",item0)) { 15.2833 + int ind0 = no_ind; char end = 0; 15.2834 + if (std::sscanf(argument,"%d%c",&ind0,&end)==1) { 15.2835 + if (ind0<0) ind0+=images.size; 15.2836 + if (ind0<0) ind0 = 0; 15.2837 + if (ind0>(int)images.size) ind0 = images.size; 15.2838 + print("Move image%s to position %d.",gmic_inds,ind0); 15.2839 + CImgList<T> nimages; 15.2840 + CImgList<char> nfilenames; 15.2841 + cimg_foroff(indices,l) { 15.2842 + const unsigned int ind = indices[l]; 15.2843 + nimages.insert(1); nimages.last().swap(images[ind]); 15.2844 + nfilenames.insert(1); nfilenames.last().swap(filenames[ind]); 15.2845 + } 15.2846 + images.insert(nimages,ind0); filenames.insert(nfilenames,ind0); 15.2847 + { cimglist_for(images,l) if (!images[l]) { images.remove(l); filenames.remove(l--); }} 15.2848 + } else error("Move image%s : Invalid argument '%s' " 15.2849 + "(should be 'position').",gmic_inds,argument_text); 15.2850 + ++position; continue; 15.2851 + } 15.2852 + 15.2853 + // Reverse images order. 15.2854 + if (!cimg::strcmp("-reverse",item0)) { 15.2855 + print("Reverse images order."); 15.2856 + CImgList<T> nimages(indices.size()); 15.2857 + CImgList<char> nfilenames(indices.size()); 15.2858 + cimg_foroff(indices,l) { nimages[l].swap(images[indices[l]]); nfilenames[l].swap(filenames[indices[l]]); } 15.2859 + nimages.reverse(); nfilenames.reverse(); 15.2860 + { cimg_foroff(indices,l) { nimages[l].swap(images[indices[l]]); nfilenames[l].swap(filenames[indices[l]]); }} 15.2861 + continue; 15.2862 + } 15.2863 + 15.2864 + // Set image name. 15.2865 + if (!cimg::strcmp("-name",item0)) { 15.2866 + cimg_foroff(indices,l) filenames[indices[l]].assign(argument,cimg::strlen(argument)+1,1,1,1,false); 15.2867 + ++position; continue; 15.2868 + } 15.2869 + 15.2870 + //------------------------- 15.2871 + // 3D objects manipulation 15.2872 + //------------------------- 15.2873 + 15.2874 + // Generate 3D cube. 15.2875 + if (!cimg::strcmp("-cube3d",item)) { 15.2876 + float size = 100; char end = 0; 15.2877 + if (std::sscanf(argument,"%f%c",&size,&end)==1) { 15.2878 + print("Generate 3D cube with size %g.",size); 15.2879 + CImgList<unsigned int> primitives3d; 15.2880 + CImg<float> points3d = CImg<T>::cube3d(primitives3d,size); 15.2881 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2882 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2883 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2884 + images.insert(points3d); 15.2885 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2886 + } else error("Generate 3D cube : Invalid argument '%s' " 15.2887 + "(should be 'size').",argument_text); 15.2888 + ++position; continue; 15.2889 + } 15.2890 + 15.2891 + // Generate 3D cone. 15.2892 + if (!cimg::strcmp("-cone3d",item)) { 15.2893 + float radius = 100, height = 200; char end = 0; unsigned int subdivisions = 24; 15.2894 + if (std::sscanf(argument,"%f%c",&radius,&end)==1 || 15.2895 + std::sscanf(argument,"%f%*c%f%c",&radius,&height,&end)==2 || 15.2896 + std::sscanf(argument,"%f%*c%f%*c%u%c",&radius,&height,&subdivisions,&end)==3) { 15.2897 + print("Generate 3D cone with radius %g, height %g and %u subdivisions.",radius,height,subdivisions); 15.2898 + CImgList<unsigned int> primitives3d; 15.2899 + CImg<float> points3d = CImg<T>::cone3d(primitives3d,radius,height,subdivisions); 15.2900 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2901 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2902 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2903 + images.insert(points3d); 15.2904 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2905 + } else error("Generate 3D cone : Invalid argument '%s' " 15.2906 + "(should be 'radius[,height[,subdivisions]]').",argument_text); 15.2907 + ++position; continue; 15.2908 + } 15.2909 + 15.2910 + // Generate 3D cylinder. 15.2911 + if (!cimg::strcmp("-cylinder3d",item)) { 15.2912 + float radius = 100, height = 200; char end = 0; unsigned int subdivisions = 24; 15.2913 + if (std::sscanf(argument,"%f%c",&radius,&end)==1 || 15.2914 + std::sscanf(argument,"%f%*c%f%c",&radius,&height,&end)==2 || 15.2915 + std::sscanf(argument,"%f%*c%f%*c%u%c",&radius,&height,&subdivisions,&end)==3) { 15.2916 + print("Generate 3D cylinder with radius %g, height %g and %u subdivisions.",radius,height,subdivisions); 15.2917 + CImgList<unsigned int> primitives3d; 15.2918 + CImg<float> points3d = CImg<T>::cylinder3d(primitives3d,radius,height,subdivisions); 15.2919 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2920 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2921 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2922 + images.insert(points3d); 15.2923 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2924 + } else error("Generate 3D cylinder : Invalid argument '%s' " 15.2925 + "(should be 'radius[,height[,subdivisions]]').",argument_text); 15.2926 + ++position; continue; 15.2927 + } 15.2928 + 15.2929 + // Generate 3D torus. 15.2930 + if (!cimg::strcmp("-torus3d",item)) { 15.2931 + float radius1 = 100, radius2 = 30; char end = 0; unsigned int subdivisions1 = 24, subdivisions2 = 12; 15.2932 + if (std::sscanf(argument,"%f%*c%f%c",&radius1,&radius2,&end)==2 || 15.2933 + std::sscanf(argument,"%f%*c%f%*c%u%*c%u%c",&radius1,&radius2,&subdivisions1,&subdivisions2,&end)==4) { 15.2934 + print("Generate 3D torus with radii %g and %g, and subdivisions %u and %u.",radius1,radius2,subdivisions1,subdivisions2); 15.2935 + CImgList<unsigned int> primitives3d; 15.2936 + CImg<float> points3d = CImg<T>::torus3d(primitives3d,radius1,radius2,subdivisions1,subdivisions2); 15.2937 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2938 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2939 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2940 + images.insert(points3d); 15.2941 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2942 + } else error("Generate 3D torus : Invalid argument '%s' " 15.2943 + "(should be 'radius1,radius2[,subdivisions1,subdivisions2]').",argument_text); 15.2944 + ++position; continue; 15.2945 + } 15.2946 + 15.2947 + // Generate 3D plane. 15.2948 + if (!cimg::strcmp("-plane3d",item)) { 15.2949 + float sizex = 100, sizey = 30; char end = 0; unsigned int subdivisionsx = 24, subdivisionsy = 12; 15.2950 + if (std::sscanf(argument,"%f%*c%f%c",&sizex,&sizey,&end)==2 || 15.2951 + std::sscanf(argument,"%f%*c%f%*c%u%*c%u%c",&sizex,&sizey,&subdivisionsx,&subdivisionsy,&end)==4) { 15.2952 + print("Generate 3D plane with dimensions %g and %g, and subdivisions %u and %u.",sizex,sizey,subdivisionsx,subdivisionsy); 15.2953 + CImgList<unsigned int> primitives3d; 15.2954 + CImg<float> points3d = CImg<T>::plane3d(primitives3d,sizex,sizey,subdivisionsx,subdivisionsy); 15.2955 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2956 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2957 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2958 + images.insert(points3d); 15.2959 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2960 + } else error("Generate 3D plane : Invalid argument '%s' " 15.2961 + "(should be 'sizex,sizey[,subdivisionsx,subdivisionsy]').",argument_text); 15.2962 + ++position; continue; 15.2963 + } 15.2964 + 15.2965 + // Generate 3D sphere. 15.2966 + if (!cimg::strcmp("-sphere3d",item)) { 15.2967 + float radius = 100; char end = 0; unsigned int subdivisions = 3; 15.2968 + if (std::sscanf(argument,"%f%c",&radius,&end)==1 || 15.2969 + std::sscanf(argument,"%f%*c%u%c",&radius,&subdivisions,&end)==2) { 15.2970 + print("Generate 3D sphere with radius %g and %u subdivisions.",radius,subdivisions); 15.2971 + CImgList<unsigned int> primitives3d; 15.2972 + CImg<float> points3d = CImg<T>::sphere3d(primitives3d,radius,subdivisions); 15.2973 + CImgList<unsigned char> colors3d(primitives3d.size,1,3,1,1,200); 15.2974 + CImg<float> opacities3d(1,primitives3d.size,1,1,1); 15.2975 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.2976 + images.insert(points3d); 15.2977 + filenames.insert(CImg<char>("(gmic)",7,1,1,1,false)); 15.2978 + } else error("Generate 3D sphere : Invalid argument '%s' " 15.2979 + "(should be 'radius[,subdivisions]').",argument_text); 15.2980 + ++position; continue; 15.2981 + } 15.2982 + 15.2983 + // Build 3D elevation. 15.2984 + if (!cimg::strcmp("-elevation3d",item0)) { 15.2985 + float zfact = 0.2f; char end = 0, sep = 0; int ind0 = no_ind; 15.2986 + if (std::sscanf(argument,"%f%c",&zfact,&end)==1 || 15.2987 + (std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']')) { 15.2988 + CImg<typename CImg<T>::Tfloat> elev; 15.2989 + if (ind0!=no_ind) { 15.2990 + gmic_check_indice(ind0,"Build 3D elevation of image%s"); 15.2991 + print("Build 3D elevation of image%s with elevation map [%d].",gmic_inds,ind0); 15.2992 + if (images[ind0].dimv()==1) elev = images[ind0]; 15.2993 + else elev = images[ind0].get_pointwise_norm(); 15.2994 + } else print("Build 3D elevation of image%s with z-factor %g.",gmic_inds,zfact); 15.2995 + cimg_foroff(indices,l) { 15.2996 + CImg<T>& img = images[indices[l]]; 15.2997 + CImgList<unsigned int> primitives3d; 15.2998 + CImgList<unsigned char> colors3d; 15.2999 + CImg<float> opacities3d, points3d; 15.3000 + if (elev) points3d = img.get_elevation3d(primitives3d,colors3d,elev); 15.3001 + else { 15.3002 + if (img.dimv()==1) (elev = img)*=zfact; else (elev = img.get_pointwise_norm())*=zfact; 15.3003 + points3d = img.get_elevation3d(primitives3d,colors3d,elev); 15.3004 + elev.assign(); 15.3005 + } 15.3006 + opacities3d.assign(1,primitives3d.size,1,1,1); 15.3007 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3008 + gmic_apply(img,replace(points3d)); 15.3009 + } 15.3010 + } else error("Build 3D elevation : invalid argument '%s' " 15.3011 + "(should be 'z-factor' or '[indice]').",argument_text); 15.3012 + ++position; continue; 15.3013 + } 15.3014 + 15.3015 + // Build 3D isovalue. 15.3016 + if (!cimg::strcmp("-isovalue3d",item0)) { 15.3017 + float value = 0; char end = 0; 15.3018 + if (std::sscanf(argument,"%f%c",&value,&end)==1) { 15.3019 + print("Build 3D isovalue %g of image%s.",value,gmic_inds); 15.3020 + cimg_foroff(indices,l) { 15.3021 + const unsigned int ind = indices[l]; 15.3022 + CImg<T>& img = images[ind]; 15.3023 + CImg<float> points3d; 15.3024 + CImgList<unsigned int> primitives3d; 15.3025 + CImgList<unsigned char> colors3d; 15.3026 + CImg<float> opacities3d; 15.3027 + CImg<unsigned char> palette; 15.3028 + palette.assign(3,img.dim,1,1,220).noise(35,1); 15.3029 + if (img.dim==1) palette(0) = palette(1) = palette(2) = 255; 15.3030 + else { 15.3031 + palette(0,0) = 255; palette(1,0) = 30; palette(2,0) = 30; 15.3032 + palette(0,1) = 30; palette(1,1) = 255; palette(2,1) = 30; 15.3033 + if (img.dim>=3) palette(0,2) = 30; palette(1,2) = 30; palette(2,2) = 255; 15.3034 + } 15.3035 + cimg_forV(img,k) { 15.3036 + CImgList<unsigned int> prims; 15.3037 + const CImg<float> pts = img.get_shared_channel(k).get_isovalue3d(prims,value); 15.3038 + if (pts) { 15.3039 + points3d.append_object3d(primitives3d,pts,prims); 15.3040 + colors3d.insert(prims.size, 15.3041 + CImg<unsigned char>::vector(palette(0,k),palette(1,k),palette(2,k))); 15.3042 + } 15.3043 + } 15.3044 + opacities3d.assign(1,primitives3d.size,1,1,1); 15.3045 + if (!points3d) 15.3046 + warning("Build 3D isovalue of image [%u] : Isovalue %g not found.",ind,value); 15.3047 + else points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3048 + gmic_apply(img,replace(points3d)); 15.3049 + } 15.3050 + } else error("Build 3D isovalue of image%s : Invalid argument '%s' " 15.3051 + "(should be 'isovalue').",gmic_inds,argument_text); 15.3052 + ++position; continue; 15.3053 + } 15.3054 + 15.3055 + // Center a 3D object. 15.3056 + if (!cimg::strcmp("-center3d",item0) || !cimg::strcmp("-c3d",item0)) { 15.3057 + print("Center 3D object%s.",gmic_inds); 15.3058 + cimg_foroff(indices,l) { 15.3059 + const unsigned int ind = indices[l]; 15.3060 + if (!images[ind].is_CImg3d()) 15.3061 + error("Center 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3062 + gmic_apply(images[ind],centerCImg3d()); 15.3063 + } 15.3064 + continue; 15.3065 + } 15.3066 + 15.3067 + // Normalize a 3D object. 15.3068 + if (!cimg::strcmp("-normalize3d",item0) || !cimg::strcmp("-n3d",item0)) { 15.3069 + print("Normalize 3D object%s.",gmic_inds); 15.3070 + cimg_foroff(indices,l) { 15.3071 + const unsigned int ind = indices[l]; 15.3072 + if (!images[ind].is_CImg3d()) 15.3073 + error("Normalize 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3074 + gmic_apply(images[ind],normalizeCImg3d()); 15.3075 + } 15.3076 + continue; 15.3077 + } 15.3078 + 15.3079 + // Rotate a 3D object. 15.3080 + if (!cimg::strcmp("-rotate3d",item0) || !cimg::strcmp("-rot3d",item0)) { 15.3081 + float u = 0, v = 0, w = 1, angle = 0; char end = 0; 15.3082 + if (std::sscanf(argument,"%f%*c%f%*c%f%*c%f%c",&u,&v,&w,&angle,&end)==4) { 15.3083 + print("Rotate 3D object%s around axis (%g,%g,%g) with angle %g.",gmic_inds,u,v,w,angle); 15.3084 + const CImg<float> rot = CImg<float>::rotation_matrix(u,v,w,(float)(angle*cimg::valuePI/180)); 15.3085 + cimg_foroff(indices,l) { 15.3086 + const unsigned int ind = indices[l]; 15.3087 + if (!images[ind].is_CImg3d()) 15.3088 + error("Rotate 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3089 + gmic_apply(images[ind],rotateCImg3d(rot)); 15.3090 + } 15.3091 + } else error("Rotate 3D object%s : Invalid argument '%s' " 15.3092 + "(should be 'u,v,w,angle').",gmic_inds,argument_text); 15.3093 + ++position; continue; 15.3094 + } 15.3095 + 15.3096 + // Add 3D objects together or translate a 3D object. 15.3097 + if (!cimg::strcmp("-add3d",item0) || !cimg::strcmp("-+3d",item0)) { 15.3098 + float tx = 0, ty = 0, tz = 0; int ind0 = no_ind; char sep = 0, end = 0; 15.3099 + if (std::sscanf(argument,"%f%c",&tx,&end)==1 || 15.3100 + std::sscanf(argument,"%f%*c%f%c",&tx,&ty,&end)==2 || 15.3101 + std::sscanf(argument,"%f%*c%f%*c%f%c",&tx,&ty,&tz,&end)==3) { 15.3102 + print("Translate 3D object%s with vector (%g,%g,%g).",gmic_inds,tx,ty,tz); 15.3103 + cimg_foroff(indices,l) { 15.3104 + const unsigned int ind = indices[l]; 15.3105 + if (!images[ind].is_CImg3d()) 15.3106 + error("Translate 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3107 + gmic_apply(images[ind],translateCImg3d(tx,ty,tz)); 15.3108 + } 15.3109 + ++position; 15.3110 + } else if (std::sscanf(argument,"[%d%c%c",&ind0,&sep,&end)==2 && sep==']') { 15.3111 + gmic_check_indice(ind0,"Merge object with 3D object%s."); 15.3112 + const CImg<T> img0 = images[ind0]; 15.3113 + if (!img0.is_CImg3d()) error("Merge object [%d] with 3D object%s : Image [%d] is not a 3D object.",ind0,gmic_inds,ind0); 15.3114 + print("Merge object [%d] with 3D object%s.",ind0,gmic_inds); 15.3115 + cimg_foroff(indices,l) { 15.3116 + const unsigned int ind = indices[l]; 15.3117 + const CImg<T> &img = images[ind]; 15.3118 + if (!img.is_CImg3d()) 15.3119 + error("Merge object [%d] with 3D object%s : Image [%d] is not a 3D object.",ind0,gmic_inds,ind); 15.3120 + gmic_apply(images[ind],appendCImg3d(img0)); 15.3121 + } 15.3122 + ++position; 15.3123 + } else { 15.3124 + print("Merge 3D object%s together.",gmic_inds); 15.3125 + if (indices) { 15.3126 + const unsigned int ind0 = indices[0]; 15.3127 + if (!images[ind0].is_CImg3d()) 15.3128 + error("Merge 3D object%s together : Image [%d] is not a 3D object.",gmic_inds,ind0); 15.3129 + for (unsigned int siz = indices.size(), off = 0, l = 1; l<siz; ++l) { 15.3130 + const unsigned int ind = indices[l] - off; 15.3131 + if (!images[ind].is_CImg3d()) 15.3132 + error("Merge 3D object%s together : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3133 + images[ind0].appendCImg3d(images[ind]); 15.3134 + images.remove(ind); filenames.remove(ind); 15.3135 + ++off; 15.3136 + } 15.3137 + } 15.3138 + } 15.3139 + continue; 15.3140 + } 15.3141 + 15.3142 + // Translate 3D object by the opposite vector. 15.3143 + if (!cimg::strcmp("-sub3d",item0) || !cimg::strcmp("--3d",item0)) { 15.3144 + float tx = 0, ty = 0, tz = 0; char end = 0; 15.3145 + if (std::sscanf(argument,"%f%c",&tx,&end)==1 || 15.3146 + std::sscanf(argument,"%f%*c%f%c",&tx,&ty,&end)==2 || 15.3147 + std::sscanf(argument,"%f%*c%f%*c%f%c",&tx,&ty,&tz,&end)==3) { 15.3148 + print("Translate 3D object%s with vector -(%g,%g,%g).",gmic_inds,tx,ty,tz); 15.3149 + cimg_foroff(indices,l) { 15.3150 + CImg<T>& img = images[indices[l]]; 15.3151 + CImgList<unsigned int> primitives3d; 15.3152 + CImgList<unsigned char> colors3d; 15.3153 + CImg<float> opacities3d; 15.3154 + CImg<T> points3d; 15.3155 + if (get_version) points3d.assign(img); else img.transfer_to(points3d); 15.3156 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.3157 + points3d.get_shared_line(0)-=tx; 15.3158 + points3d.get_shared_line(1)-=ty; 15.3159 + points3d.get_shared_line(2)-=tz; 15.3160 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3161 + if (get_version) { 15.3162 + images.insert(1); points3d.transfer_to(images.last()); 15.3163 + filenames.insert(filenames[indices[l]]); 15.3164 + } else points3d.transfer_to(images[indices[l]]); 15.3165 + } 15.3166 + } else error("Translate 3D object%s : Invalid argument '%s' " 15.3167 + "(should be 'tx,ty,tz').",gmic_inds,argument_text); 15.3168 + ++position; continue; 15.3169 + } 15.3170 + 15.3171 + // Scale a 3D object. 15.3172 + bool divide = false; 15.3173 + if (!cimg::strcmp("-mul3d",item0) || !cimg::strcmp("-*3d",item0) || 15.3174 + ((divide=true)==true && (!cimg::strcmp("-div3d",item0) || !cimg::strcmp("-/3d",item0)))) { 15.3175 + float sx = 0, sy = 1, sz = 1; char end = 0; 15.3176 + if ((std::sscanf(argument,"%f%c",&sx,&end)==1 && (sy = sz = sx),1) || 15.3177 + std::sscanf(argument,"%f%*c%f%c",&sx,&sy,&end)==2 || 15.3178 + std::sscanf(argument,"%f%*c%f%*c%f%c",&sx,&sy,&sz,&end)==3) { 15.3179 + if (divide) print("Scale 3D object%s with factors (1/%g,1/%g,1/%g).",gmic_inds,sx,sy,sz); 15.3180 + else print("Scale 3D object%s with factors (%g,%g,%g).",gmic_inds,sx,sy,sz); 15.3181 + cimg_foroff(indices,l) { 15.3182 + CImg<T>& img = images[indices[l]]; 15.3183 + CImgList<unsigned int> primitives3d; 15.3184 + CImgList<unsigned char> colors3d; 15.3185 + CImg<float> opacities3d; 15.3186 + CImg<T> points3d; 15.3187 + if (get_version) points3d.assign(img); else img.transfer_to(points3d); 15.3188 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.3189 + if (divide) { 15.3190 + points3d.get_shared_line(0)/=sx; 15.3191 + points3d.get_shared_line(1)/=sy; 15.3192 + points3d.get_shared_line(2)/=sz; 15.3193 + } else { 15.3194 + points3d.get_shared_line(0)*=sx; 15.3195 + points3d.get_shared_line(1)*=sy; 15.3196 + points3d.get_shared_line(2)*=sz; 15.3197 + } 15.3198 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3199 + if (get_version) { 15.3200 + images.insert(1); points3d.transfer_to(images.last()); 15.3201 + filenames.insert(filenames[indices[l]]); 15.3202 + } else points3d.transfer_to(images[indices[l]]); 15.3203 + } 15.3204 + } else error("Scale 3D object%s : Invalid argument '%s' " 15.3205 + "(should be 'fact' or 'factx,facty[,factz]').",gmic_inds,argument_text); 15.3206 + ++position; continue; 15.3207 + } 15.3208 + 15.3209 + // Set color of 3D object(s). 15.3210 + if (!cimg::strcmp("-color3d",item0) || !cimg::strcmp("-col3d",item0)) { 15.3211 + float R = 200, G = 200, B = 200, opacity = -1; char end = 0; 15.3212 + if (std::sscanf(argument,"%f%*c%f%*c%f%c",&R,&G,&B,&end)==3 || 15.3213 + std::sscanf(argument,"%f%*c%f%*c%f%*c%f%c",&R,&G,&B,&opacity,&end)==4) { 15.3214 + const bool set_opacity = (opacity>=0); 15.3215 + R = (float)cimg::round(R,1); G = (float)cimg::round(G,1); B = (float)cimg::round(B,1); 15.3216 + if (R<0) R = 0; if (R>255) R = 255; 15.3217 + if (G<0) G = 0; if (G>255) G = 255; 15.3218 + if (B<0) B = 0; if (B>255) B = 255; 15.3219 + if (set_opacity) print("Set colors of 3D object%s to (%g,%g,%g) and opacity to %g.",gmic_inds,R,G,B,opacity); 15.3220 + else print("Set color of 3D object%s to (%g,%g,%g).",gmic_inds,R,G,B); 15.3221 + cimg_foroff(indices,l) { 15.3222 + const unsigned int ind = indices[l]; 15.3223 + if (!images[ind].is_CImg3d()) 15.3224 + error("Set color of 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3225 + gmic_apply(images[ind],coloropacityCImg3d(R,G,B,opacity,true,set_opacity)); 15.3226 + } 15.3227 + } else error("Set color of 3D object%s : Invalid argument '%s' " 15.3228 + "(should be 'R,G,B[,opacity]').",gmic_inds,argument_text); 15.3229 + ++position; continue; 15.3230 + } 15.3231 + 15.3232 + // Set opacity of 3D object(s). 15.3233 + if (!cimg::strcmp("-opacity3d",item0) || !cimg::strcmp("-opac3d",item0)) { 15.3234 + float opacity = 1; char end = 0; 15.3235 + if (std::sscanf(argument,"%f%c",&opacity,&end)==1) { 15.3236 + print("Set opacity of 3D object%s to %g.",gmic_inds,opacity); 15.3237 + cimg_foroff(indices,l) { 15.3238 + const unsigned int ind = indices[l]; 15.3239 + if (!images[ind].is_CImg3d()) 15.3240 + error("Set opacity of 3D object%s : Image [%d] is not a 3D object.",gmic_inds,ind); 15.3241 + gmic_apply(images[ind],coloropacityCImg3d(0,0,0,opacity,false,true)); 15.3242 + } 15.3243 + } else error("Set opacity of 3D object%s : Invalid argument '%s' " 15.3244 + "(should be 'opacity').",gmic_inds,argument_text); 15.3245 + ++position; continue; 15.3246 + } 15.3247 + 15.3248 + // Invert 3D orientation. 15.3249 + if (!cimg::strcmp("-invert3d",item0) || !cimg::strcmp("-i3d",item0)) { 15.3250 + print("Invert orientation of 3D object%s.",gmic_inds); 15.3251 + cimg_foroff(indices,l) { 15.3252 + CImg<T> &img = images[indices[l]]; 15.3253 + CImgList<unsigned int> primitives3d; 15.3254 + CImgList<unsigned char> colors3d; 15.3255 + CImg<float> opacities3d; 15.3256 + CImg<T> points3d; 15.3257 + if (get_version) points3d.assign(img); else img.transfer_to(points3d); 15.3258 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.3259 + if (primitives3d) primitives3d.invert_object3d(); 15.3260 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3261 + if (get_version) { 15.3262 + images.insert(1); points3d.transfer_to(images.last()); 15.3263 + filenames.insert(filenames[indices[l]]); 15.3264 + } else points3d.transfer_to(images[indices[l]]); 15.3265 + } 15.3266 + continue; 15.3267 + } 15.3268 + 15.3269 + // Split 3D object(s) into 6 vector images {header,N,vertices,primitives,colors,opacities} 15.3270 + if (!cimg::strcmp("-split3d",item0) || !cimg::strcmp("-s3d",item0)) { 15.3271 + print("Split 3D object%s into its different characteristics.",gmic_inds); 15.3272 + unsigned int off = 0; 15.3273 + cimg_foroff(indices,l) { 15.3274 + const unsigned int ind = indices[l] + off; 15.3275 + CImg<T> &img = images[ind]; 15.3276 + const CImg<char> filename = filenames[ind]; 15.3277 + CImgList<unsigned int> primitives3d; 15.3278 + CImgList<unsigned char> colors3d; 15.3279 + CImg<float> opacities3d; 15.3280 + CImg<T> points3d; 15.3281 + if (get_version) points3d.assign(img); else img.transfer_to(points3d); 15.3282 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d); 15.3283 + CImgList<T> split; 15.3284 + split.insert(CImg<T>("CImg3d",1,6,1,1,false)+=0.5f); 15.3285 + split.insert(CImg<T>::vector((T)points3d.dimx(),(T)primitives3d.size)); 15.3286 + split.insert(1); points3d.resize(-100,3,1,1,0).transpose().unroll('y').transfer_to(split.last()); 15.3287 + points3d.assign(); 15.3288 + CImgList<T> _prims; 15.3289 + cimglist_for(primitives3d,p) 15.3290 + _prims.insert(CImg<T>::vector((T)primitives3d[p].size())).insert(primitives3d[p]).last().unroll('y'); 15.3291 + primitives3d.assign(); 15.3292 + split.insert(_prims.get_append('y')); _prims.assign(); 15.3293 + split.insert(colors3d.get_append('x').transpose().unroll('y')); colors3d.assign(); 15.3294 + split.insert(1); opacities3d.transfer_to(split.last()); 15.3295 + if (get_version) { 15.3296 + images.insert(split); 15.3297 + filenames.insert(split.size,filename); 15.3298 + } else { 15.3299 + images.remove(ind); images.insert(split,ind); 15.3300 + filenames.remove(ind); filenames.insert(split.size,filename,ind); 15.3301 + off+=split.size-1; 15.3302 + } 15.3303 + } 15.3304 + continue; 15.3305 + } 15.3306 + 15.3307 + // Set 3D light position. 15.3308 + if (!cimg::strcmp("-light3d",item) || !cimg::strcmp("-l3d",item)) { 15.3309 + float lx = 0, ly = 0, lz = -5000; char end = 0; 15.3310 + if (std::sscanf(argument,"%f%*c%f%*c%f%c",&lx,&ly,&lz,&end)==3) { 15.3311 + print("Set 3D light position at (%g,%g,%g).",lx,ly,lz); 15.3312 + light3d_x = lx; 15.3313 + light3d_y = ly; 15.3314 + light3d_z = lz; 15.3315 + } else error("Set 3D light position : Invalid argument '%s' " 15.3316 + "(should be 'posx,posy,posz').",argument_text); 15.3317 + ++position; continue; 15.3318 + } 15.3319 + 15.3320 + // Set 3D focale. 15.3321 + if (!cimg::strcmp("-focale3d",item) || !cimg::strcmp("-f3d",item)) { 15.3322 + float focale = 500; char end = 0; 15.3323 + if (std::sscanf(argument,"%f%c",&focale,&end)==1) { 15.3324 + focale3d = focale; 15.3325 + print("Set 3D focale to %g.",focale); 15.3326 + } else error("Set 3D focale : Invalid argument '%s' " 15.3327 + "(should be 'value')."); 15.3328 + ++position; continue; 15.3329 + } 15.3330 + 15.3331 + // Set 3D specular light parameters. 15.3332 + if (!cimg::strcmp("-specl3d",item) || !cimg::strcmp("-sl3d",item)) { 15.3333 + float value = 0; char end = 0; 15.3334 + if (std::sscanf(argument,"%f%c",&value,&end)==1) { 15.3335 + specular_light3d = value; 15.3336 + print("Set amount of 3D specular light to %g.",specular_light3d); 15.3337 + } 15.3338 + else error("Set amount of 3D specular light : invalid argument '%s'" 15.3339 + "(should be 'value').", 15.3340 + argument_text); 15.3341 + ++position; continue; 15.3342 + } 15.3343 + 15.3344 + if (!cimg::strcmp("-specs3d",item) || !cimg::strcmp("-ss3d",item)) { 15.3345 + float value = 0; char end = 0; 15.3346 + if (std::sscanf(argument,"%f%c",&value,&end)==1) { 15.3347 + specular_shine3d = value; 15.3348 + print("Set shininess of 3D specular light to %g.",specular_shine3d); 15.3349 + } 15.3350 + else error("Set shininess of 3D specular light : invalid argument '%s'" 15.3351 + "(should be 'value').", 15.3352 + argument_text); 15.3353 + ++position; continue; 15.3354 + } 15.3355 + 15.3356 + // Switch double-sided mode for 3D rendering. 15.3357 + if (!cimg::strcmp("-orient3d",item) || !cimg::strcmp("-o3d",item)) { 15.3358 + is_oriented3d = !is_oriented3d; 15.3359 + continue; 15.3360 + } 15.3361 + 15.3362 + // Set 3D rendering mode. 15.3363 + if (!cimg::strcmp("-render3d",item) || !cimg::strcmp("-r3d",item)) { 15.3364 + unsigned int value = 0; char end = 0; 15.3365 + if (std::sscanf(argument,"%u%c",&value,&end)==1) { 15.3366 + render3d = value; 15.3367 + print("Set static 3D render mode to %s.", 15.3368 + render3d==-1?"bounding-box": 15.3369 + render3d==0?"pointwise":render3d==1?"linear":render3d==2?"flat": 15.3370 + render3d==3?"flat-shaded":render3d==4?"Gouraud-shaded": 15.3371 + render3d==5?"Phong-shaded":"none"); 15.3372 + } 15.3373 + else error("Set static 3D render mode : invalid argument '%s'" 15.3374 + "(should be '{0=pointwise, 1=linear, 2=flat, 3=flat shaded, 4=Gouraud shaded, 5=Phong-shaded}').", 15.3375 + argument_text); 15.3376 + ++position; continue; 15.3377 + } 15.3378 + 15.3379 + if (!cimg::strcmp("-renderd3d",item) || !cimg::strcmp("-rd3d",item)) { 15.3380 + unsigned int value = 0; char end = 0; 15.3381 + if (std::sscanf(argument,"%u%c",&value,&end)==1) { 15.3382 + renderd3d = value; 15.3383 + print("Set dynamic 3D render mode to %s.", 15.3384 + renderd3d==-1?"bounding-box": 15.3385 + renderd3d==0?"pointwise":renderd3d==1?"linear":renderd3d==2?"flat": 15.3386 + renderd3d==3?"flat-shaded":renderd3d==4?"Gouraud-shaded": 15.3387 + renderd3d==5?"Phong-shaded":"none"); 15.3388 + } 15.3389 + else error("Set dynamic 3D render mode : invalid argument '%s'" 15.3390 + "(should be '{0=pointwise, 1=linear, 2=flat, 3=flat shaded, 4=Gouraud shaded, 5=Phong-shaded}').", 15.3391 + argument_text); 15.3392 + ++position; continue; 15.3393 + } 15.3394 + 15.3395 + // Set 3D background color. 15.3396 + if (!cimg::strcmp("-background3d",item) || !cimg::strcmp("-b3d",item)) { 15.3397 + int R = 0, G = 0, B = 0; char end = 0; 15.3398 + const int nb = std::sscanf(argument,"%d%*c%d%*c%d%c",&R,&G,&B,&end); 15.3399 + switch (nb) { 15.3400 + case 1 : background3d[0] = background3d[1] = background3d[2] = R; break; 15.3401 + case 2 : background3d[0] = R; background3d[1] = background3d[2] = G; break; 15.3402 + case 3 : background3d[0] = R; background3d[1] = G; background3d[2] = B; break; 15.3403 + default: error("Set 3D background color : Invalid argument '%s'.",argument_text); 15.3404 + } 15.3405 + print("Set 3D background color to (%d,%d,%d).", 15.3406 + (int)background3d[0],(int)background3d[1],(int)background3d[2]); 15.3407 + ++position; continue; 15.3408 + } 15.3409 + 15.3410 + //---------------- 15.3411 + // Other commands. 15.3412 + //---------------- 15.3413 + 15.3414 + // No operations : do nothing 15.3415 + if (!cimg::strcmp("-nop",item)) { 15.3416 + continue; 15.3417 + } 15.3418 + 15.3419 + // Skip next argument; 15.3420 + if (!cimg::strcmp("-skip",item)) { 15.3421 + ++position; 15.3422 + continue; 15.3423 + } 15.3424 + 15.3425 + // Echo. 15.3426 + if (!cimg::strcmp("-echo",item) || !cimg::strcmp("-e",item)) { 15.3427 + const int l = cimg::strlen(argument); 15.3428 + if (l>=2 && argument[0]=='"' && argument[l-1]=='"') { 15.3429 + if (l==2) print(""); else { 15.3430 + CImg<char> nargument(argument+1,l-1,1,1,1,false); 15.3431 + nargument(l-2)=0; 15.3432 + print("%s",nargument.ptr()); 15.3433 + } 15.3434 + } else print("%s",argument); 15.3435 + ++position; continue; 15.3436 + } 15.3437 + 15.3438 + // Print. 15.3439 + if (!cimg::strcmp("-print",item0) || !cimg::strcmp("-p",item0)) { 15.3440 + if (images.size) { 15.3441 + print("Print image%s.\n\n",gmic_inds); 15.3442 + char title[4096]; 15.3443 + if (verbosity_level>=0) cimg_foroff(indices,l) { 15.3444 + const unsigned int ind = indices[l]; 15.3445 + std::sprintf(title,"image [%u] = '%s'",ind,filenames[ind].ptr()); 15.3446 + images[ind].print(title); 15.3447 + } 15.3448 + is_released = true; 15.3449 + } else print("Print image[]."); 15.3450 + continue; 15.3451 + } 15.3452 + 15.3453 + // Quit. 15.3454 + if (!cimg::strcmp("-quit",item) || !cimg::strcmp("-q",item)) { 15.3455 + print("Quit."); 15.3456 + is_released = true; 15.3457 + dowhile.assign(); 15.3458 + repeatdone.assign(); 15.3459 + position = command_line.size; 15.3460 + continue; 15.3461 + } 15.3462 + 15.3463 + // Do...while. 15.3464 + if (!cimg::strcmp("-do",item)) { 15.3465 + dowhile.insert(CImg<int>::vector((int)position)); 15.3466 + continue; 15.3467 + } 15.3468 + 15.3469 + if (!cimg::strcmp("-while",item)) { 15.3470 + double cond = 0; char end = 0; 15.3471 + if (std::sscanf(argument,"%lf%c",&cond,&end)!=1) cond = 0; 15.3472 + if (!dowhile) error("Directive '-while' is not associated with a '-do' command."); 15.3473 + if (cond<=0) dowhile.remove(); 15.3474 + else { position = (unsigned int)dowhile.last()(0); continue; } 15.3475 + ++position; continue; 15.3476 + } 15.3477 + 15.3478 + // If..else..endif 15.3479 + if (!cimg::strcmp("-if",item)) { 15.3480 + double cond = 0; char end = 0; 15.3481 + if (std::sscanf(argument,"%lf%c",&cond,&end)!=1) cond = 0; 15.3482 + if (cond<=0) { 15.3483 + for (int nbifs = 1; nbifs && position<command_line.size; ++position) { 15.3484 + const char *it = command_line[position].ptr(); 15.3485 + if (!cimg::strcmp("-if",it)) ++nbifs; 15.3486 + if (!cimg::strcmp("-endif",it)) --nbifs; 15.3487 + if (!cimg::strcmp("-else",it) && nbifs==1) --nbifs; 15.3488 + } 15.3489 + continue; 15.3490 + } 15.3491 + ++position; continue; 15.3492 + } 15.3493 + if (!cimg::strcmp("-else",item)) { 15.3494 + for (int nbifs = 1; nbifs && position<command_line.size; ++position) { 15.3495 + if (!cimg::strcmp("-if",command_line[position].ptr())) ++nbifs; 15.3496 + if (!cimg::strcmp("-endif",command_line[position].ptr())) --nbifs; 15.3497 + } 15.3498 + continue; 15.3499 + } 15.3500 + if (!cimg::strcmp("-endif",item)) continue; 15.3501 + 15.3502 + // Repeat...done 15.3503 + if (!cimg::strcmp("-repeat",item)) { 15.3504 + float fnb = 0; char end = 0; 15.3505 + if (std::sscanf(argument,"%f%c",&fnb,&end)==1) { 15.3506 + const int nb = (int)fnb; 15.3507 + if (nb>0) repeatdone.insert(CImg<int>::vector((int)position+1,nb)); 15.3508 + else { 15.3509 + int nbrepeats = 0; 15.3510 + for (nbrepeats = 1; nbrepeats && position<command_line.size; ++position) { 15.3511 + const char *it = command_line[position].ptr(); 15.3512 + if (!cimg::strcmp("-repeat",it)) ++nbrepeats; 15.3513 + if (!cimg::strcmp("-done",it)) --nbrepeats; 15.3514 + } 15.3515 + if (nbrepeats && position>=command_line.size) 15.3516 + error("Directive '-done' is missing after a '-repeat' command."); 15.3517 + continue; 15.3518 + } 15.3519 + } else error("Repeat operation : Invalid argument '%s' " 15.3520 + "(should be a number).",argument_text); 15.3521 + ++position; continue; 15.3522 + } 15.3523 + 15.3524 + if (!cimg::strcmp("-done",item)) { 15.3525 + if (!repeatdone) error("Directive '-done' is not associated with a '-repeat' command."); 15.3526 + if (--repeatdone.last()(1)) 15.3527 + position = (unsigned int)repeatdone.last()(0); 15.3528 + else repeatdone.remove(); 15.3529 + continue; 15.3530 + } 15.3531 + 15.3532 + // Check argument type 15.3533 + if (!cimg::strcmp("-int",item)) { 15.3534 + char it[4096], end = 0, sep = 0; int value = 0; 15.3535 + if (*argument) for (const char *nargument = argument; *nargument; ) { 15.3536 + const int nb = std::sscanf(nargument,"%4095[^,]%c",it,&sep); 15.3537 + if (nb) { 15.3538 + if (std::sscanf(it,"%d%c",&value,&end)==1) nargument+=cimg::strlen(it) + nb -1; 15.3539 + else error("Argument '%s' is not an integer value.",it); 15.3540 + } else error("Argument '%s' is not an integer value.",argument_text); 15.3541 + } 15.3542 + ++position; continue; 15.3543 + } 15.3544 + 15.3545 + if (!cimg::strcmp("-float",item)) { 15.3546 + char it[4096], end = 0, sep = 0; double value = 0; 15.3547 + if (*argument) for (const char *nargument = argument; *nargument; ) { 15.3548 + const int nb = std::sscanf(nargument,"%4095[^,]%c",it,&sep); 15.3549 + if (nb) { 15.3550 + if (std::sscanf(it,"%lf%c",&value,&end)==1) nargument+=cimg::strlen(it) + nb -1; 15.3551 + else error("Argument '%s' is not a float value.",it); 15.3552 + } else error("Argument '%s' is not a float value.",argument_text); 15.3553 + } 15.3554 + ++position; continue; 15.3555 + } 15.3556 + 15.3557 + //-------------------------- 15.3558 + // Input/Output and Display 15.3559 + //-------------------------- 15.3560 + 15.3561 + // Display. 15.3562 + if (!cimg::strcmp("-display",item0) || !cimg::strcmp("-d",item0)) { 15.3563 + if (display_images(images,indices,true)) is_released = true; 15.3564 + continue; 15.3565 + } 15.3566 + 15.3567 + // Display 3D object. 15.3568 + if (!cimg::strcmp("-display3d",item0) || !cimg::strcmp("-d3d",item0)) { 15.3569 + if (display_objects3d(images,indices,true)) is_released = true; 15.3570 + continue; 15.3571 + } 15.3572 + 15.3573 + // Display as a graph plot. 15.3574 + if (!cimg::strcmp("-plot",item0)) { 15.3575 + int plot_type = 1, vertex_type = 1; double ymin = 0, ymax = 0, xmin = 0, xmax = 0; char end = 0; 15.3576 + const int nb = std::sscanf(argument,"%d%*c%d%*c%lf%*c%lf%*c%lf%*c%lf%c",&plot_type,&vertex_type,&xmin,&xmax,&ymin,&ymax,&end); 15.3577 + if (nb==1 || nb==2 || nb==4 || nb==6) ++position; 15.3578 + else { plot_type = 1; vertex_type = 0; ymin = ymax = xmin = xmax = 0; } 15.3579 + is_released |= display_plots(images,indices,plot_type,vertex_type,xmin,xmax,ymin,ymax,true); 15.3580 + continue; 15.3581 + } 15.3582 + 15.3583 + // Select image feature. 15.3584 + if (!cimg::strcmp("-select",item0)) { 15.3585 + int select_type = 0; char end = 0; 15.3586 + if (std::sscanf(argument,"%d%c",&select_type,&end)==1) { 15.3587 + cimg_foroff(indices,l) gmic_apply(images[indices[l]],select(filenames[indices[l]].ptr(),select_type)); 15.3588 + } else error("Select image%s : Invalid argument '%s' " 15.3589 + "(should be 'select_type').",gmic_inds,argument_text); 15.3590 + ++position; continue; 15.3591 + } 15.3592 + 15.3593 + // Output. 15.3594 + if (!cimg::strcmp("-output",item0) || !cimg::strcmp("-o",item0)) { 15.3595 + char filename[4096] = { 0 }; char options[4096] = { 0 }; 15.3596 + if (std::sscanf(argument,"%4095[^,],%s",filename,options)!=2) std::strcpy(filename,argument); 15.3597 + const char *const ext = cimg::split_filename(filename); 15.3598 + if (!cimg::strcasecmp("off",ext)) { 15.3599 + char nfilename[4096] = { 0 }; 15.3600 + std::strcpy(nfilename,filename); 15.3601 + const unsigned int siz = indices.size(); 15.3602 + cimg_foroff(indices,l) { 15.3603 + const unsigned int ind = indices[l]; 15.3604 + if (siz!=1) cimg::number_filename(filename,l,6,nfilename); 15.3605 + if (!images[ind].is_CImg3d()) 15.3606 + error("Output 3D object [%u] as file '%s' : Image [%u] is not a 3D object.",ind,nfilename,ind); 15.3607 + print("Output 3D object [%u] as file '%s'.",ind,nfilename); 15.3608 + CImgList<unsigned int> primitives3d; 15.3609 + CImgList<unsigned char> colors3d; 15.3610 + CImg<float> opacities3d; 15.3611 + CImg<float> points3d(images[ind]); 15.3612 + points3d.CImg3dtoobject3d(primitives3d,colors3d,opacities3d).save_off(nfilename,primitives3d,colors3d); 15.3613 + } 15.3614 + } else if (!cimg::strcasecmp("jpeg",ext) || !cimg::strcasecmp("jpg",ext)) { 15.3615 + int quality = 100; char end = 0; 15.3616 + if (std::sscanf(options,"%d%c",&quality,&end)!=1) quality = 100; 15.3617 + if (quality<0) quality = 0; else if (quality>100) quality = 100; 15.3618 + CImgList<T> output_images; 15.3619 + cimg_foroff(indices,l) output_images.insert(images[indices[l]],~0U,true); 15.3620 + print("Output image%s as file '%s', with quality %u%%",gmic_inds,filename,quality); 15.3621 + if (!output_images) throw CImgInstanceException("CImgList<%s>::save() : File '%s, instance list (%u,%p) is empty.", 15.3622 + output_images.pixel_type(),filename, 15.3623 + output_images.size,output_images.data); 15.3624 + if (output_images.size==1) output_images[0].save_jpeg(filename,quality); 15.3625 + else { 15.3626 + char nfilename[1024]; 15.3627 + cimglist_for(output_images,l) { 15.3628 + cimg::number_filename(filename,l,6,nfilename); 15.3629 + output_images[l].save_jpeg(nfilename,quality); 15.3630 + } 15.3631 + } 15.3632 + } else { 15.3633 + CImgList<T> output_images; 15.3634 + cimg_foroff(indices,l) output_images.insert(images[indices[l]],~0U,true); 15.3635 + print("Output image%s as file '%s'.",gmic_inds,filename); 15.3636 + output_images.save(filename); 15.3637 + } 15.3638 + is_released = true; ++position; continue; 15.3639 + } 15.3640 + 15.3641 + // Substitute macros commands if necessary. 15.3642 + if (cimg::strcmp("-i",item0) && cimg::strcmp("-input",item0)) { 15.3643 + bool macro_found = false; 15.3644 + cimglist_for(macros,l) { 15.3645 + const char 15.3646 + *const macro = macros[l].ptr(), 15.3647 + *const command = commands[l].ptr(); 15.3648 + 15.3649 + if (!cimg::strcmp(item+1,macro) && *command) { 15.3650 + CImgList<char> arguments(256); 15.3651 + unsigned int nb_arguments = 0; 15.3652 + char s_argument[4096] = { 0 }, tmp[4096] = { 0 }, tmp2[4096] = { 0 }; 15.3653 + bool has_arguments = false; 15.3654 + macro_found = true; 15.3655 + debug("Found macro '%s', substituting by '%s'.",macro,command); 15.3656 + 15.3657 + // Get command-line values of macro arguments. 15.3658 + if (argument) 15.3659 + for (const char *nargument = argument; nb_arguments<256 && *nargument && 15.3660 + std::sscanf(nargument,"%4095[^,]",s_argument)==1;) { 15.3661 + CImg<char>(s_argument,cimg::strlen(s_argument)+1,1,1,1,false).transfer_to(arguments[nb_arguments++]); 15.3662 + nargument+=cimg::strlen(s_argument); 15.3663 + if (*nargument) ++nargument; 15.3664 + } 15.3665 + 15.3666 + // Substitute arguments in macro command expression. 15.3667 + CImg<char> substituted_command; 15.3668 + CImgList<char> lreplacement; 15.3669 + for (const char *ncommand = command; *ncommand;) if (*ncommand=='$') { 15.3670 + char *replace_text = 0, sep = 0; 15.3671 + int ind = 0, ind1 = 0; 15.3672 + 15.3673 + // Replace $# and ${#}. 15.3674 + if (ncommand[1]=='#' || (ncommand[1]=='{' && ncommand[2]=='#' && ncommand[3]=='}')) { 15.3675 + std::sprintf(replace_text=s_argument,"%u",nb_arguments); 15.3676 + ncommand+=(ncommand[1]=='#')?2:4; 15.3677 + has_arguments = true; 15.3678 + 15.3679 + // Replace $* and ${*}. 15.3680 + } else if (ncommand[1]=='*' || (ncommand[1]=='{' && ncommand[2]=='*' && ncommand[3]=='}')) { 15.3681 + replace_text = &(s_argument[0]=0); 15.3682 + for (unsigned int j = 1; j<=nb_arguments; ++j) { 15.3683 + replace_text+=std::sprintf(replace_text,"%s",arguments[j-1].ptr()); 15.3684 + if (j<nb_arguments) *(replace_text++) = ','; 15.3685 + } 15.3686 + replace_text = s_argument; 15.3687 + ncommand+=(ncommand[1]=='*')?2:4; 15.3688 + has_arguments = true; 15.3689 + 15.3690 + // Replace ${i*}. 15.3691 + } else if (std::sscanf(ncommand,"${%d*%c",&ind,&sep)==2 && 15.3692 + ind>0 && ind<256 && sep=='}') { 15.3693 + replace_text = &(s_argument[0]=0); 15.3694 + for (unsigned int j = ind; j<=nb_arguments; ++j) { 15.3695 + replace_text+=std::sprintf(replace_text,"%s",arguments[j-1].ptr()); 15.3696 + if (j<nb_arguments) *(replace_text++) = ','; 15.3697 + } 15.3698 + replace_text = s_argument; 15.3699 + ncommand+=std::sprintf(tmp,"${%d*}",ind); 15.3700 + has_arguments = true; 15.3701 + 15.3702 + // Replace $i and ${i}. 15.3703 + } else if ((std::sscanf(ncommand,"$%d",&ind)==1 || 15.3704 + (std::sscanf(ncommand,"${%d%c",&ind,&sep)==2 && sep=='}')) && 15.3705 + ind>0 && ind<256) { 15.3706 + if (!arguments[ind-1]) { 15.3707 + if (sep=='}') error("Macro '%s' : Argument '$%d' is undefined (in expression '${%d}').",macro,ind,ind); 15.3708 + else error("Macro '%s' : Argument '$%d' is undefined (in expression '$%d').",macro,ind,ind); 15.3709 + } 15.3710 + replace_text = arguments[ind-1].ptr(); 15.3711 + ncommand+=std::sprintf(tmp,"$%d",ind) + (sep=='}'?2:0); 15.3712 + has_arguments = true; 15.3713 + 15.3714 + // Replace ${i=$#}. 15.3715 + } else if (std::sscanf(ncommand,"${%d=$#%c",&ind,&sep)==2 && 15.3716 + ind>0 && ind<256 && sep=='}') { 15.3717 + std::sprintf(replace_text=s_argument,"%g",(double)nb_arguments); 15.3718 + CImg<char>(s_argument,cimg::strlen(s_argument)+1,1,1,1,false).transfer_to(arguments[ind-1]); 15.3719 + ncommand+=std::sprintf(tmp,"${%d=$#}",ind); 15.3720 + has_arguments = true; 15.3721 + 15.3722 + // Replace ${i=$j}. 15.3723 + } else if (std::sscanf(ncommand,"${%d=$%d%c",&ind,&ind1,&sep)==3 && sep=='}' && 15.3724 + ind>0 && ind<256 && ind1>0 && ind1<256) { 15.3725 + if (!arguments[ind1-1]) 15.3726 + error("Macro '%s' : Argument '$%d' is undefined (in expression '${%d=$%d}').",macro,ind1,ind,ind1); 15.3727 + if (!arguments[ind-1]) arguments[ind-1] = arguments[ind1-1]; 15.3728 + replace_text = arguments[ind-1].ptr(); 15.3729 + ncommand+=std::sprintf(tmp,"${%d=$%d}",ind,ind1); 15.3730 + has_arguments = true; 15.3731 + 15.3732 + // Replace ${i=default}. 15.3733 + } else if (std::sscanf(ncommand,"${%d=%4095[^}]%c",&ind,tmp,&sep)==3 && sep=='}' && 15.3734 + ind>0 && ind<256) { 15.3735 + if (!arguments[ind-1]) CImg<char>(tmp,cimg::strlen(tmp)+1,1,1,1,false).transfer_to(arguments[ind-1]); 15.3736 + replace_text = arguments[ind-1].ptr(); 15.3737 + ncommand+=cimg::strlen(tmp) + 4 + std::sprintf(tmp2,"%d",ind); 15.3738 + has_arguments = true; 15.3739 + 15.3740 + // Any other expression starting by '$'. 15.3741 + } else { 15.3742 + replace_text = &(s_argument[0]='$'); 15.3743 + if (std::sscanf(ncommand,"%4095[^$]",s_argument+1)!=1) { s_argument[1] = 0; ++ncommand; } 15.3744 + else ncommand+=cimg::strlen(s_argument); 15.3745 + } 15.3746 + 15.3747 + const int replace_length = cimg::strlen(replace_text); 15.3748 + if (replace_length) { 15.3749 + lreplacement.insert(1); 15.3750 + CImg<char>(replace_text,replace_length,1,1,1,false).transfer_to(lreplacement.last()); 15.3751 + } 15.3752 + 15.3753 + } else { 15.3754 + std::sscanf(ncommand,"%4095[^$]",s_argument); 15.3755 + const int replace_length = cimg::strlen(s_argument); 15.3756 + if (replace_length) { 15.3757 + lreplacement.insert(1); 15.3758 + CImg<char>(s_argument,replace_length,1,1,1,false).transfer_to(lreplacement.last()); 15.3759 + ncommand+=cimg::strlen(s_argument); 15.3760 + } 15.3761 + } 15.3762 + const CImg<char> zero(1,1,1,1,0); 15.3763 + lreplacement.insert(zero).get_append('x').transfer_to(substituted_command); 15.3764 + 15.3765 + // Substitute macro expression in command line. 15.3766 + bool is_dquote = false; 15.3767 + cimg_foroff(substituted_command,k) 15.3768 + if (substituted_command[k]=='"') is_dquote = !is_dquote; 15.3769 + else if (is_dquote && substituted_command[k]==' ') substituted_command[k] = 30; 15.3770 + CImgList<char> command_items = substituted_command.get_split(' ',false,false); 15.3771 + cimglist_for(command_items,k) { 15.3772 + CImg<char> &item = command_items[k]; 15.3773 + cimg_foroff(item,l) if (item[l]==30) item[l]=' '; 15.3774 + } 15.3775 + cimglist_for(command_items,k) command_items[k].append(zero,'y'); 15.3776 + if (position<command_line.size && has_arguments) command_line.remove(position); 15.3777 + command_line.remove(--position); 15.3778 + command_line.insert(command_items,position); 15.3779 + break; 15.3780 + } 15.3781 + } 15.3782 + if (macro_found) continue; 15.3783 + } 15.3784 + } 15.3785 + 15.3786 + // Input. 15.3787 + if (!cimg::strcmp("-i",item0) || !cimg::strcmp("-input",item0)) ++position; 15.3788 + else { if (get_version) --item; argument = item; item1[0] = 0; } 15.3789 + if (!cimg::strlen(item1)) indices.assign(1,1,1,1,images.size); 15.3790 + CImgList<T> input_images; 15.3791 + CImgList<char> input_filenames; 15.3792 + bool obj3d = false; 15.3793 + char st_inds[4096] = { 0 }, stx[4096] = { 0 }, sty[4096] = { 0 }, stz[4096] = { 0 }, stv[4096] = { 0 }; 15.3794 + char end = 0, sep = 0, sepx = 0, sepy = 0, sepz = 0, sepv = 0; 15.3795 + int nb = 1, indx = no_ind, indy = no_ind, indz = no_ind, indv = no_ind; 15.3796 + float dx = 0, dy = 1, dz = 1, dv = 1; 15.3797 + 15.3798 + if (std::sscanf(argument,"[%4095[0-9%,:-]]%*c%d%c",st_inds,&nb,&end)==2 || 15.3799 + (std::sscanf(argument,"[%4095[0-9%,:-]%c%c",st_inds,&sep,&end)==2 && sep==']')) { 15.3800 + 15.3801 + // nb copies of existing sub-images. 15.3802 + const CImg<unsigned int> indices0 = indices2cimg(st_inds,images.size,"-input"); 15.3803 + char st_tmp[4096] = { 0 }; std::strcpy(st_tmp,indices2string(indices0,true)); 15.3804 + if (nb<=0) error("Input %d copies of image%s : Invalid argument '%s'.", 15.3805 + nb,st_tmp,argument_text); 15.3806 + if (nb!=1) print("Input %d copies of image%s at position%s",nb,st_tmp,gmic_inds); 15.3807 + else print("Input copy of image%s at position%s",st_tmp,gmic_inds); 15.3808 + for (int i = 0; i<nb; ++i) cimg_foroff(indices0,l) { 15.3809 + input_images.insert(images[indices0[l]]); 15.3810 + input_filenames.insert(filenames[indices0[l]]); 15.3811 + } 15.3812 + } else if (((std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%d%c", 15.3813 + stx,sty,stz,stv,&(nb=1),&end)==5 || 15.3814 + std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c", 15.3815 + stx,sty,stz,stv,&end)==4) && 15.3816 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || 15.3817 + (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%') || 15.3818 + (std::sscanf(stx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']')) && 15.3819 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || 15.3820 + (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%') || 15.3821 + (std::sscanf(sty,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']')) && 15.3822 + (std::sscanf(stz,"%f%c",&dz,&end)==1 || 15.3823 + (std::sscanf(stz,"%f%c%c",&dz,&sepz,&end)==2 && sepz=='%') || 15.3824 + (std::sscanf(stz,"[%d%c%c",&indz,&sepz,&end)==2 && sepz==']')) && 15.3825 + (std::sscanf(stv,"%f%c",&dv,&end)==1 || 15.3826 + (std::sscanf(stv,"%f%c%c",&dv,&sepv,&end)==2 && sepv=='%') || 15.3827 + (std::sscanf(stv,"[%d%c%c",&indv,&sepv,&end)==2 && sepv==']'))) || 15.3828 + (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",stx,sty,stz,&end)==3 && 15.3829 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || 15.3830 + (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%') || 15.3831 + (std::sscanf(stx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']')) && 15.3832 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || 15.3833 + (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%') || 15.3834 + (std::sscanf(sty,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']')) && 15.3835 + (std::sscanf(stz,"%f%c",&dz,&end)==1 || 15.3836 + (std::sscanf(stz,"%f%c%c",&dz,&sepz,&end)==2 && sepz=='%') || 15.3837 + (std::sscanf(stz,"[%d%c%c",&indz,&sepz,&end)==2 && sepz==']'))) || 15.3838 + (std::sscanf(argument,"%4095[][0-9.eE%+-]%*c%4095[][0-9.eE%+-]%c",stx,sty,&end)==2 && 15.3839 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || 15.3840 + (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%') || 15.3841 + (std::sscanf(stx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']')) && 15.3842 + (std::sscanf(sty,"%f%c",&dy,&end)==1 || 15.3843 + (std::sscanf(sty,"%f%c%c",&dy,&sepy,&end)==2 && sepy=='%') || 15.3844 + (std::sscanf(sty,"[%d%c%c",&indy,&sepy,&end)==2 && sepy==']'))) || 15.3845 + (std::sscanf(argument,"%4095[][0-9.eE%+-]%c",stx,&end)==1 && 15.3846 + (std::sscanf(stx,"%f%c",&dx,&end)==1 || 15.3847 + (std::sscanf(stx,"%f%c%c",&dx,&sepx,&end)==2 && sepx=='%') || 15.3848 + (std::sscanf(stx,"[%d%c%c",&indx,&sepx,&end)==2 && sepx==']')))) { 15.3849 + 15.3850 + // nb new black image. 15.3851 + if (indx!=no_ind) { gmic_check_indice(indx,"Input black image%s"); dx = (float)images[indx].dimx(); sepx = 0; } 15.3852 + if (indy!=no_ind) { gmic_check_indice(indy,"Input black image%s"); dy = (float)images[indy].dimy(); sepy = 0; } 15.3853 + if (indz!=no_ind) { gmic_check_indice(indz,"Input black image%s"); dz = (float)images[indz].dimz(); sepz = 0; } 15.3854 + if (indv!=no_ind) { gmic_check_indice(indv,"Input black image%s"); dv = (float)images[indv].dimv(); sepv = 0; } 15.3855 + if (sepx=='%') { dx = images.size?dx*images.last().dimx()/100:0; if (!(int)dx) ++dx; } 15.3856 + if (sepy=='%') { dy = images.size?dy*images.last().dimy()/100:0; if (!(int)dy) ++dy; } 15.3857 + if (sepz=='%') { dz = images.size?dz*images.last().dimz()/100:0; if (!(int)dz) ++dz; } 15.3858 + if (sepv=='%') { dv = images.size?dv*images.last().dimv()/100:0; if (!(int)dv) ++dv; } 15.3859 + 15.3860 + if (nb<=0) error("Input %d black image%s : Invalid number of copies.",nb,gmic_inds); 15.3861 + if (dx<=0 || dy<=0 || dz<=0 || dv<=0) 15.3862 + error("Input %d black image%s : Invalid image dimensions %gx%gx%gx%g.", 15.3863 + nb,gmic_inds,dx,dy,dz,dv); 15.3864 + if (nb!=1) print("Input %d black images at position%s",nb,gmic_inds); 15.3865 + else print("Input black image at position%s",gmic_inds); 15.3866 + CImg<T> empty((int)dx,(int)dy,(int)dz,(int)dv,0); 15.3867 + input_images.insert(nb-1,empty); input_images.insert(1); 15.3868 + input_images.last().swap(empty); 15.3869 + filenames.insert(input_images.size,CImg<char>("(gmic)",7,1,1,1,false)); 15.3870 + } else if (std::sscanf(argument,"(%4095[^)])x%d%c",stx,&(nb=1),&end)==2 || 15.3871 + (std::sscanf(argument,"(%4095[^)]%c%c",stx,&sep,&end)==2 && sep==')')) { 15.3872 + 15.3873 + // Insert nb IxJxKxL image(s) with specified values. 15.3874 + if (nb<=0) error("Input %d images : Invalid number of copies.",nb); 15.3875 + unsigned int cx = 0, cy = 0, cz = 0, cv = 0, maxcx = 0, maxcy = 0, maxcz = 0; 15.3876 + const char *nargument = 0; 15.3877 + for (nargument = argument+1; *nargument!=')'; ) { 15.3878 + char s_value[256] = { 0 }, separator = 0; double value = 0; 15.3879 + if (std::sscanf(nargument,"%255[0-9.eE+-]%c",s_value,&separator)==2 && std::sscanf(s_value,"%lf",&value)==1) { 15.3880 + if (cx>maxcx) maxcx = cx; 15.3881 + if (cy>maxcy) maxcy = cy; 15.3882 + if (cz>maxcz) maxcz = cz; 15.3883 + switch (separator) { 15.3884 + case '^' : cx = cy = cz = 0; ++cv; break; 15.3885 + case '/' : cx = cy = 0; ++cz; break; 15.3886 + case ';' : cx = 0; ++cy; break; 15.3887 + default : ++cx; 15.3888 + } 15.3889 + nargument+=cimg::strlen(s_value) + (separator==')'?0:1); 15.3890 + } else break; 15.3891 + } 15.3892 + if (*nargument!=')') error("Input %d images : Invalid input string '%s'.",nb,argument); 15.3893 + 15.3894 + CImg<T> img(maxcx+1,maxcy+1,maxcz+1,cv+1,0); 15.3895 + cx = cy = cz = cv = 0; 15.3896 + for (nargument = argument+1; *nargument; ) { 15.3897 + char s_value[256] = { 0 }, separator = 0; double value = 0; 15.3898 + if (std::sscanf(nargument,"%255[0-9.eE+-]%c",s_value,&separator)==2 && std::sscanf(s_value,"%lf",&value)==1) { 15.3899 + img(cx,cy,cz,cv) = (T)value; 15.3900 + switch (separator) { 15.3901 + case '^' : cx = cy = cz = 0; ++cv; break; 15.3902 + case '/' : cx = cy = 0; ++cz; break; 15.3903 + case ';' : cx = 0; ++cy; break; 15.3904 + default : ++cx; 15.3905 + } 15.3906 + nargument+=cimg::strlen(s_value) + (separator==')'?0:1); 15.3907 + } else break; 15.3908 + } 15.3909 + if (nb==1) print("Input image %dx%dx%dx%d",img.dimx(),img.dimy(),img.dimz(),img.dimv()); 15.3910 + else print("Input %d images %dx%d",nb,img.dimx(),img.dimy(),img.dimz(),img.dimv()); 15.3911 + input_images.insert(nb,img); filenames.insert(nb,CImg<char>("(gmic)",7,1,1,1,false)); 15.3912 + } else { 15.3913 + 15.3914 + // Insert image as a loaded filename. 15.3915 + char filename[4096] = { 0 }, options[4096] = { 0 }; const char *ext = 0, *basename = 0; 15.3916 + if (argument[0]!='-' || (argument[1] && argument[1]!='.')) { 15.3917 + std::FILE *file = std::fopen(argument,"r"); 15.3918 + if (file) { std::fclose(file); std::strcpy(filename,argument); } 15.3919 + else { 15.3920 + std::sscanf(argument,"%4095[^,],%s",filename,options); 15.3921 + if (!(file=std::fopen(filename,"r"))) { 15.3922 + if (filename[0]=='-') error("Input '%s' : Command not found.",filename); 15.3923 + else error("Input '%s' : File not found.",filename); 15.3924 + } 15.3925 + std::fclose(file); 15.3926 + } 15.3927 + } else std::strcpy(filename,argument); 15.3928 + basename = cimg::basename(filename); 15.3929 + ext = cimg::split_filename(filename); 15.3930 + 15.3931 + if (!cimg::strcasecmp("off",ext)) { // 3D object file. 15.3932 + print("Input 3D object '%s'",filename); 15.3933 + CImgList<unsigned int> primitives3d; 15.3934 + CImgList<unsigned char> colors3d; 15.3935 + CImg<float> opacities3d, points3d = CImg<float>::get_load_off(filename,primitives3d,colors3d); 15.3936 + opacities3d.assign(1,primitives3d.size,1,1,1); 15.3937 + points3d.object3dtoCImg3d(primitives3d,colors3d,opacities3d); 15.3938 + input_images.insert(1); points3d.transfer_to(input_images[0]); 15.3939 + input_filenames.insert(CImg<char>(is_fullpath?filename:basename, 15.3940 + cimg::strlen(is_fullpath?filename:basename)+1,1,1,1,false)); 15.3941 + obj3d = true; 15.3942 + } else if (!cimg::strcasecmp(ext,"avi") || 15.3943 + !cimg::strcasecmp(ext,"mov") || 15.3944 + !cimg::strcasecmp(ext,"asf") || 15.3945 + !cimg::strcasecmp(ext,"divx") || 15.3946 + !cimg::strcasecmp(ext,"flv") || 15.3947 + !cimg::strcasecmp(ext,"mpg") || 15.3948 + !cimg::strcasecmp(ext,"m1v") || 15.3949 + !cimg::strcasecmp(ext,"m2v") || 15.3950 + !cimg::strcasecmp(ext,"m4v") || 15.3951 + !cimg::strcasecmp(ext,"mjp") || 15.3952 + !cimg::strcasecmp(ext,"mkv") || 15.3953 + !cimg::strcasecmp(ext,"mpe") || 15.3954 + !cimg::strcasecmp(ext,"movie") || 15.3955 + !cimg::strcasecmp(ext,"ogm") || 15.3956 + !cimg::strcasecmp(ext,"qt") || 15.3957 + !cimg::strcasecmp(ext,"rm") || 15.3958 + !cimg::strcasecmp(ext,"vob") || 15.3959 + !cimg::strcasecmp(ext,"wmv") || 15.3960 + !cimg::strcasecmp(ext,"xvid") || 15.3961 + !cimg::strcasecmp(ext,"mpeg")) { 15.3962 + unsigned int value0 = 0, value1 = 0, step = 1; char sep0 = 0, sep1 = 0, end = 0; 15.3963 + if ((std::sscanf(options,"%u%c%*c%u%c%*c%u%c",&value0,&sep0,&value1,&sep1,&step,&end)==5 && sep0=='%' && sep1=='%') || 15.3964 + (std::sscanf(options,"%u%c%*c%u%*c%u%c",&value0,&sep0,&value1,&step,&end)==4 && sep0=='%') || 15.3965 + (std::sscanf(options,"%u%*c%u%c%*c%u%c",&value0,&value1,&sep1,&step,&end)==4 && sep1=='%') || 15.3966 + (std::sscanf(options,"%u%*c%u%*c%u%c",&value0,&value1,&step,&end)==3) || 15.3967 + (std::sscanf(options,"%u%c%*c%u%c%c",&value0,&sep0,&value1,&sep1,&end)==4 && sep0=='%' && sep1=='%') || 15.3968 + (std::sscanf(options,"%u%c%*c%u%c",&value0,&sep0,&value1,&end)==3 && sep0=='%') || 15.3969 + (std::sscanf(options,"%u%*c%u%c%c",&value0,&value1,&sep1,&end)==3 && sep1=='%') || 15.3970 + (std::sscanf(options,"%u%*c%u%c",&value0,&value1,&end)==2)) { // Read several frames 15.3971 + print("Input frames %u%s...%u%s with step %u of file '%s'", 15.3972 + value0,sep0=='%'?"%":"",value1,sep1=='%'?"%":"",step,filename); 15.3973 + if (sep0=='%' || sep1=='%') { 15.3974 + const unsigned int nb_frames = CImg<unsigned int>::get_load_ffmpeg(filename,0,0,0)[0]; 15.3975 + if (sep0=='%') value0 = value0*nb_frames/100; 15.3976 + if (sep1=='%') value1 = value1*nb_frames/100; 15.3977 + } 15.3978 + } else if ((std::sscanf(options,"%u%c%c",&value0,&sep0,&end)==2 && sep0=='%') || 15.3979 + (std::sscanf(options,"%u%c",&value0,&end)==1)) { // Read one frame 15.3980 + print("Input frame %u%s of file '%s'",value0,sep0=='%'?"%":"",filename); 15.3981 + if (sep0=='%') { 15.3982 + const unsigned int nb_frames = CImg<unsigned int>::get_load_ffmpeg(filename,0,0,0)[0]; 15.3983 + value0 = value0*nb_frames/100; 15.3984 + } 15.3985 + value1 = value0; step = 1; 15.3986 + } else { // Read all frames 15.3987 + print("Input all frames of file '%s'",filename); 15.3988 + value0 = 0; value1 = ~0U; sep0 = sep1 = 0; step = 1; 15.3989 + } 15.3990 + input_images.load_ffmpeg(filename,value0,value1,step); 15.3991 + if (input_images) 15.3992 + input_filenames.insert(input_images.size,CImg<char>(is_fullpath?filename:basename, 15.3993 + cimg::strlen(is_fullpath?filename:basename)+1,1,1,1,false)); 15.3994 + } else if (!cimg::strcasecmp("raw",ext)) { // Raw file. 15.3995 + int dx = 0, dy = 1, dz = 1, dv = 1; 15.3996 + if (std::sscanf(options,"%d%*c%d%*c%d%*c%d",&dx,&dy,&dz,&dv)>0) { 15.3997 + if (dx<=0 || dy<=0 || dz<=0 || dv<=0) 15.3998 + error("Input raw file '%s' : Invalid specified dimensions %dx%dx%dx%d.",filename,dx,dy,dz,dv); 15.3999 + print("Input raw file '%s'",filename); 15.4000 + input_images.insert(1); input_images[0].load_raw(filename,dx,dy,dz,dv); 15.4001 + input_filenames.insert(CImg<char>(is_fullpath?filename:basename, 15.4002 + cimg::strlen(is_fullpath?filename:basename)+1,1,1,1,false)); 15.4003 + } else error("Input raw file '%s' : Image dimensions must be specified.",filename); 15.4004 + } else if (!cimg::strcasecmp("yuv",ext)) { // YUV file. 15.4005 + int dx = 0, dy = 0; unsigned int first = 0, last = ~0U, step = 1; 15.4006 + if (std::sscanf(options,"%d%*c%d%*c%u%*c%u%*c%u",&dx,&dy,&first,&last,&step)>0) { 15.4007 + if (dx<=0 || dy<=0) 15.4008 + error("Input yuv file '%s' : Invalid specified dimensions %dx%d.",filename,dx,dy); 15.4009 + print("Input yuv file '%s'",filename); 15.4010 + input_images.load_yuv(filename,dx,dy,first,last,step); 15.4011 + input_filenames.insert(input_images.size,CImg<char>(is_fullpath?filename:basename, 15.4012 + cimg::strlen(is_fullpath?filename:basename)+1,1,1,1,false)); 15.4013 + } else error("Input yuv file '%s' : Image dimensions must be specified.",filename); 15.4014 + } else { // Other file type. 15.4015 + print("Input file '%s'",filename); 15.4016 + input_images.load(filename); 15.4017 + input_filenames.insert(input_images.size, 15.4018 + CImg<char>(is_fullpath?filename:basename, 15.4019 + cimg::strlen(is_fullpath?filename:basename)+1,1,1,1,false)); 15.4020 + } 15.4021 + } 15.4022 + 15.4023 + if (verbosity_level>=0) { 15.4024 + if (input_images) { 15.4025 + const unsigned int last = input_images.size-1; 15.4026 + if (obj3d) 15.4027 + std::fprintf(cimg_stdout," (%d points, %u primitives, %u colors).", 15.4028 + (unsigned int)input_images(0,6), 15.4029 + (unsigned int)input_images(0,7), 15.4030 + (unsigned int)input_images(0,8)); 15.4031 + else if (input_images.size==1) 15.4032 + std::fprintf(cimg_stdout," (1 image %ux%ux%ux%u).", 15.4033 + input_images[0].width,input_images[0].height,input_images[0].depth, 15.4034 + input_images[0].dim); 15.4035 + else std::fprintf(cimg_stdout," (%u images [0] = %ux%ux%ux%u, %s[%u] = %ux%ux%ux%u).", 15.4036 + input_images.size, 15.4037 + input_images[0].width,input_images[0].height,input_images[0].depth, 15.4038 + input_images[0].dim, 15.4039 + last==1?"":"...,", 15.4040 + last, 15.4041 + input_images[last].width,input_images[last].height,input_images[last].depth, 15.4042 + input_images[last].dim); 15.4043 + } else std::fprintf(cimg_stdout," (no available data)."); 15.4044 + } 15.4045 + 15.4046 + for (unsigned int l = 0, siz = indices.size()-1, off = 0; l<=siz; ++l) { 15.4047 + const unsigned int ind = indices[l] + off; 15.4048 + if (l!=siz) images.insert(input_images,ind); 15.4049 + else { 15.4050 + images.insert(input_images.size,ind); 15.4051 + cimglist_for(input_images,k) images[ind+k].swap(input_images[k]); 15.4052 + } 15.4053 + filenames.insert(input_filenames,ind); 15.4054 + off+=input_images.size; 15.4055 + } 15.4056 + 15.4057 + } catch (CImgException &e) { 15.4058 + const char *error_message = e.message; 15.4059 + char tmp[4096] = { 0 }, sep = 0; 15.4060 + if (std::sscanf(error_message,"%4095[^>]>:%c",tmp,&sep)==2 && sep==':') error_message+=cimg::strlen(tmp)+3; 15.4061 + error(error_message); 15.4062 + } 15.4063 + } 15.4064 + 15.4065 + // Check if command line has grown too much (possible recursive macro calls). 15.4066 + if (command_line.size>=command_line_maxsize) 15.4067 + error("Command line overflow : There are too much commands specified (possible recursive macro substitution)."); 15.4068 + 15.4069 + // Check if some loops have not been terminated. 15.4070 + if (dowhile) warning("A '-while' directive is missing somewhere."); 15.4071 + if (repeatdone) warning("A '-done' directive is missing somewhere."); 15.4072 + 15.4073 + // Display final result if necessary (not 'released' before). 15.4074 + if (images.size && !is_released) { 15.4075 + if (!display_objects3d(images,CImg<unsigned int>::sequence(images.size,0,images.size-1),false)) 15.4076 + display_images(images,CImg<unsigned int>::sequence(images.size,0,images.size-1),true); 15.4077 + } 15.4078 + 15.4079 + print("End G'MIC instance.\n"); 15.4080 + return *this; 15.4081 +} 15.4082 + 15.4083 +// Small hack to separate the compilation of G'MIC in different pixel types. 15.4084 +// (only intended to save computer memory when compiling !) 15.4085 +//-------------------------------------------------------------------------- 15.4086 +#ifdef gmic_minimal 15.4087 +gmic& gmic::parse_float(CImgList<float>& images) { return parse(images); } 15.4088 +template gmic::gmic(const int, const char *const *const, CImgList<float>&, const char *const custom_macros, const bool add_macros_at_start); 15.4089 +template gmic::gmic(const char* const, CImgList<float>&, const char *const custom_macros, const bool add_macros_at_start); 15.4090 +#else 15.4091 +#if defined(gmic_bool) || !defined(gmic_separate_compilation) 15.4092 +gmic& gmic::parse_bool(CImgList<bool>& images) { return parse(images); } 15.4093 +template gmic::gmic(const int, const char *const *const, CImgList<bool>&, const char *const custom_macros, const bool add_macros_at_start); 15.4094 +template gmic::gmic(const char* const, CImgList<bool>&, const char *const custom_macros, const bool add_macros_at_start); 15.4095 +#endif 15.4096 +#if defined(gmic_uchar) || !defined(gmic_separate_compilation) 15.4097 +gmic& gmic::parse_uchar(CImgList<unsigned char>& images) { return parse(images); } 15.4098 +template gmic::gmic(const int, const char *const *const, CImgList<unsigned char>&, const char *const custom_macros, const bool add_macros_at_start); 15.4099 +template gmic::gmic(const char* const, CImgList<unsigned char>&, const char *const custom_macros, const bool add_macros_at_start); 15.4100 +#endif 15.4101 +#if defined(gmic_char) || !defined(gmic_separate_compilation) 15.4102 +gmic& gmic::parse_char(CImgList<char>& images) { return parse(images); } 15.4103 +template gmic::gmic(const int, const char *const *const, CImgList<char>&, const char *const custom_macros, const bool add_macros_at_start); 15.4104 +template gmic::gmic(const char* const, CImgList<char>&, const char *const custom_macros, const bool add_macros_at_start); 15.4105 +#endif 15.4106 +#if defined(gmic_ushort) || !defined(gmic_separate_compilation) 15.4107 +gmic& gmic::parse_ushort(CImgList<unsigned short>& images) { return parse(images); } 15.4108 +template gmic::gmic(const int, const char *const *const, CImgList<unsigned short>&, const char *const custom_macros, const bool add_macros_at_start); 15.4109 +template gmic::gmic(const char* const, CImgList<unsigned short>&, const char *const custom_macros, const bool add_macros_at_start); 15.4110 +#endif 15.4111 +#if defined(gmic_short) || !defined(gmic_separate_compilation) 15.4112 +gmic& gmic::parse_short(CImgList<short>& images) { return parse(images); } 15.4113 +template gmic::gmic(const int, const char *const *const, CImgList<short>&, const char *const custom_macros, const bool add_macros_at_start); 15.4114 +template gmic::gmic(const char* const, CImgList<short>&, const char *const custom_macros, const bool add_macros_at_start); 15.4115 +#endif 15.4116 +#if defined(gmic_uint) || !defined(gmic_separate_compilation) 15.4117 +gmic& gmic::parse_uint(CImgList<unsigned int>& images) { return parse(images); } 15.4118 +template gmic::gmic(const int, const char *const *const, CImgList<unsigned int>&, const char *const custom_macros, const bool add_macros_at_start); 15.4119 +template gmic::gmic(const char* const, CImgList<unsigned int>&, const char *const custom_macros, const bool add_macros_at_start); 15.4120 +#endif 15.4121 +#if defined(gmic_int) || !defined(gmic_separate_compilation) 15.4122 +gmic& gmic::parse_int(CImgList<int>& images) { return parse(images); } 15.4123 +template gmic::gmic(const int, const char *const *const, CImgList<int>&, const char *const custom_macros, const bool add_macros_at_start); 15.4124 +template gmic::gmic(const char* const, CImgList<int>&, const char *const custom_macros, const bool add_macros_at_start); 15.4125 +#endif 15.4126 +#if defined(gmic_float) || !defined(gmic_separate_compilation) 15.4127 +gmic& gmic::parse_float(CImgList<float>& images) { return parse(images); } 15.4128 +template gmic::gmic(const int, const char *const *const, CImgList<float>&, const char *const custom_macros, const bool add_macros_at_start); 15.4129 +template gmic::gmic(const char* const, CImgList<float>&, const char *const custom_macros, const bool add_macros_at_start); 15.4130 +#endif 15.4131 +#if defined(gmic_double) || !defined(gmic_separate_compilation) 15.4132 +gmic& gmic::parse_double(CImgList<double>& images) { return parse(images); } 15.4133 +template gmic::gmic(const int, const char *const *const, CImgList<double>&, const char *const custom_macros, const bool add_macros_at_start); 15.4134 +template gmic::gmic(const char* const, CImgList<double>&, const char *const custom_macros, const bool add_macros_at_start); 15.4135 +#endif 15.4136 +#endif 15.4137 +#endif 15.4138 + 15.4139 +//----------------------- 15.4140 +// Start main procedure. 15.4141 +//----------------------- 15.4142 +#if defined(gmic_main) || (!defined(gmic_separate_compilation) && !defined(gmic_minimal)) 15.4143 +extern char data_def[]; 15.4144 + 15.4145 +int main(int argc, char **argv) { 15.4146 + 15.4147 + // Display help if necessary. 15.4148 + //--------------------------- 15.4149 + if (argc==1) { 15.4150 + std::fprintf(cimg_stdout,"<gmic> No options or data provided. Try '%s -h' for help.\n",cimg::basename(argv[0])); 15.4151 + std::exit(0); 15.4152 + } 15.4153 + 15.4154 + if (cimg_option("-h",false,0) || cimg_option("-help",false,0) || cimg_option("--help",false,0)) { 15.4155 + cimg_usage("GREYC's Magic Image Converter"); 15.4156 + 15.4157 + char version[1024] = { 0 }; 15.4158 + std::sprintf(version," Version %d.%d.%d.%d, Copyright (C) 2008-2009, David Tschumperle (http://gmic.sourceforge.net)", 15.4159 + gmic_version/1000,(gmic_version/100)%10,(gmic_version/10)%10,gmic_version%10); 15.4160 + cimg_help(version); 15.4161 + 15.4162 + cimg_help("\n Usage\n" 15.4163 + " -----"); 15.4164 + cimg_help(" gmic [file_1] [file_2] .. [file_n] [command_1] .. [command_n] [file_n+1] ...\n"); 15.4165 + cimg_help(" G'MIC is an interpreter of image processing macros whose goal is to convert, manipulate and"); 15.4166 + cimg_help(" visualize generic 1D/2D/3D multi-spectral image and video files. It follows these simple rules :\n"); 15.4167 + cimg_help(" - G'MIC handles a numbered list of images which are all stored in computer memory."); 15.4168 + cimg_help(" - The first image of the list has indice '[0]'."); 15.4169 + cimg_help(" - Negative indices are treated in a cyclic way (i.e. '[-1]' is the last image,"); 15.4170 + cimg_help(" '[-2]' the penultimate one, and so on...)."); 15.4171 + cimg_help(" - Command line items tell how to add/remove/manipulate/display images of the list."); 15.4172 + cimg_help(" - Items are read and executed in the order they appear on the command line, from the left to the right."); 15.4173 + cimg_help(" - Items can thus appear more than one time on the command line."); 15.4174 + cimg_help(" - An item starting by '-' is a G'MIC instruction."); 15.4175 + cimg_help(" - One instruction may have two equivalent names (regular and short)."); 15.4176 + cimg_help(" - A G'MIC instruction may have mandatory or optional arguments."); 15.4177 + cimg_help(" - When multiple arguments are needed, they are separated by commas ','."); 15.4178 + cimg_help(" - Items that are not instructions are considered either as input filenames or input strings."); 15.4179 + cimg_help(" - When an input filename is encountered, the corresponding image data are loaded"); 15.4180 + cimg_help(" and added to the end of the image list."); 15.4181 + cimg_help(" (see section 'Filename options' below for more informations on file input/output)."); 15.4182 + cimg_help(" - Special filenames '-' or '-.ext' mean 'standard input/output' (optionally. in 'ext' format)."); 15.4183 + cimg_help(" - Special input strings can be used to insert new images to the list. They can be :"); 15.4184 + cimg_help(" - 'width[%][xheight[%][xdepth[%][xdim[%][xN]]]]' : Insert 'N' black images with specified size."); 15.4185 + cimg_help(" (adding '%' to a dimension means 'percentage of to the same dimension in the last image'),"); 15.4186 + cimg_help(" - '[indice]' or '[indice]xN' : Insert 1 or N copies of the existing image [indice]."); 15.4187 + cimg_help(" - '(v1,v2,...)' or '(v1,v2,...)xN' : Insert 1 or N copies of the specified IxJxKxL image."); 15.4188 + cimg_help(" Separators inside '(..)' can be ',' (column), ';' (line), '/' (slice) or '^' (channel)."); 15.4189 + cimg_help(" - A G'MIC instruction may be restricted to a specific subset of the list, by adding '[subset]' to"); 15.4190 + cimg_help(" the instruction name. Several usual expressions are possible for 'subset', for instance : "); 15.4191 + cimg_help(" '-command[0,1,3]' : Apply instruction on images 0,1 and 3."); 15.4192 + cimg_help(" '-command[3-5]' : Apply instruction on images 3 to 5."); 15.4193 + cimg_help(" '-command[50%-100%] : Apply instruction on the second half of the image list."); 15.4194 + cimg_help(" '-command[0,-2,-1]' : Apply instruction on the first and two latest images."); 15.4195 + cimg_help(" '-command[0-9:3]' : Apply instruction on images 0 to 9, with a step of 3 (i.e. images 0,3,6,9)."); 15.4196 + cimg_help(" '-command[0,2-4,50%--1]' : Apply instruction on images 0,2,3,4 and the second half of the list."); 15.4197 + cimg_help(" - When no image subset is specified, a G'MIC instruction is applied on all images of the list."); 15.4198 + cimg_help(" - Native (non-macro) instructions starting with '--' instead of '-' do not act 'in-place' but"); 15.4199 + cimg_help(" insert their result as a new image at the end of the list."); 15.4200 + cimg_help(" - On the command line, any item of the form '@indice' or '@{indice}' is replaced"); 15.4201 + cimg_help(" by the values of the image '[indice]' separated by commas."); 15.4202 + cimg_help(" - Items '@?' (or '@{?}'), '@{?,max}' or '@{?,min,max}' are replaced by a float random value between [0,1], [0,max] or [min,max]."); 15.4203 + cimg_help(" - Items '@[?]', '@[?,max]' or '@[?,min,max]' do the same but return integer random values."); 15.4204 + cimg_help(" - Restrictions to a subset of image values can be specified with '@{indice,subset}' (as in '@{2,0-50%}')."); 15.4205 + cimg_help(" - Restriction to a particular pixel coordinate can be specified with '@(indice,x[,y[,z[,v[,borders]]]])'."); 15.4206 + cimg_help(" - On the command line, the item '@#' is replaced by the number of images in the list."); 15.4207 + cimg_help(" - Input filenames or commands may result to the generation of 3D objects."); 15.4208 + cimg_help(" - A 3D object viewer, based on software rendering, is included in G'MIC."); 15.4209 + cimg_help(" - A 3D object is stored as a single-column image containing all object data, in the following order :"); 15.4210 + cimg_help(" { magic header, vertices, faces, colors, opacities }."); 15.4211 + cimg_help(" - Custom user-defined G'MIC instructions can be defined with the use of a macro file."); 15.4212 + cimg_help(" - A macro file is a simple ASCII text file, each line being of the form"); 15.4213 + cimg_help(" 'instruction_name : substitution' or 'substitution (continuation)' or '# comment'."); 15.4214 + cimg_help(" - Each invoked macro instruction is substituted as its defined content on the command line."); 15.4215 + cimg_help(" - A macro file 'gmic_def.raw' is distributed within the G'MIC package."); 15.4216 + cimg_help(" - The macros defined in 'gmic_def.raw' are included by default in G'MIC."); 15.4217 + cimg_help(" - Macros arguments, separated by commas, can be added after the invokation of a macro instruction."); 15.4218 + cimg_help(" - In macros definitions, expressions starting with '$' are used to reference macro arguments :"); 15.4219 + cimg_help(" $i and ${i} are replaced by the value of the i-th macro argument."); 15.4220 + cimg_help(" $# and ${#} are replaced by the number of macro arguments."); 15.4221 + cimg_help(" $* and ${*} are replaced by the entire string of macro arguments."); 15.4222 + cimg_help(" ${i*} is replaced by all macro arguments following the i-th argument (included)."); 15.4223 + cimg_help(" ${i=$#} is replaced by $i if defined, or by its new value $# else."); 15.4224 + cimg_help(" ${i=$j} is replaced by $i if defined, or by its new value $j else."); 15.4225 + cimg_help(" ${i=default} is replaced by $i if defined, or by its new value 'default' else."); 15.4226 + cimg_help("\n A list of available native and macro instructions is available below."); 15.4227 + cimg_help(" A parameter specified in '[]' is optional, except when standing for '[indices]' where it"); 15.4228 + cimg_help(" corresponds to one or several indices of the image list, as described above. In this case, the '[' and ']'"); 15.4229 + cimg_help(" characters must explicitly appear when writting the item."); 15.4230 + 15.4231 + cimg_help("\n Global options\n" 15.4232 + " --------------"); 15.4233 + cimg_option("-help","(no args)","Display this help (eq. to '-h')."); 15.4234 + cimg_option("-verbose+","(no args)","Increment verbosity level (eq. to '-v+')."); 15.4235 + cimg_option("-verbose-","(no args)","Decrement verbosity level (eq. to '-v-')."); 15.4236 + cimg_option("-macros","'filename'","Load macro file from specified filename (eq. to '-m')."); 15.4237 + cimg_option("-debug","(no args)","Switch debug flag (when on, displays internal infos for debugging)."); 15.4238 + cimg_option("-fullpath","(no args)","Switch full path flag (when on, displays full filename paths)."); 15.4239 + 15.4240 + cimg_help("\n Arithmetic operators\n" 15.4241 + " --------------------"); 15.4242 + cimg_option("-add","'value', '[indice]' or (no args)","Add 'value' or '[indice]' to image(s)"); 15.4243 + cimg_help(" " 15.4244 + "or add image(s) together (eq. to '-+')."); 15.4245 + cimg_option("-sub","'value', '[indice]' or (no args)","Substract 'value' or '[indice]' to image(s)"); 15.4246 + cimg_help(" " 15.4247 + "or substract image(s) together (eq. to '--')."); 15.4248 + cimg_option("-mul","'value', '[indice]' or (no args)","Multiply image(s) by 'value' or '[indice]'"); 15.4249 + cimg_help(" " 15.4250 + "or multiply image(s) together (eq. to '-*')."); 15.4251 + cimg_option("-div","'value', '[indice]' or (no args)","Divide image(s) by 'value' or '[indice]'"); 15.4252 + cimg_help(" " 15.4253 + "or divide image(s) together (eq. to '-/')."); 15.4254 + cimg_option("-pow","'value', '[indice]' or (no args)","Compute image(s) to the power of 'value' or '[indice]'"); 15.4255 + cimg_help(" " 15.4256 + "or power of the image(s) together (eq. to '-^')."); 15.4257 + cimg_option("-min","'value', '[indice]' or (no args)","Compute minimum between image(s) and 'value' or '[indice]'"); 15.4258 + cimg_help(" " 15.4259 + "or minimum of image(s) together."); 15.4260 + cimg_option("-max","'value', '[indice]' or (no args)","Compute maximum between image(s) and 'value' or '[indice]'"); 15.4261 + cimg_help(" " 15.4262 + "or maximum of image(s) together."); 15.4263 + cimg_option("-mod","'value', '[indice]' or (no args)","Compute modulo of image(s) with 'value' or '[indice]'"); 15.4264 + cimg_help(" " 15.4265 + "or modulo with image(s) together."); 15.4266 + cimg_option("-and","'value', '[indice]' or (no args)","Compute bitwise AND of image(s) with 'value' or '[indice]'"); 15.4267 + cimg_help(" " 15.4268 + "or bitwise AND of image(s) together."); 15.4269 + cimg_option("-or","'value', '[indice]' or (no args)","Compute bitwise OR of image(s) with 'value' or '[indice]'"); 15.4270 + cimg_help(" " 15.4271 + "or bitwise OR of image(s) together."); 15.4272 + cimg_option("-xor","'value', '[indice]' or (no args)","Compute bitwise XOR of image(s) with 'value' '[indice]'"); 15.4273 + cimg_help(" " 15.4274 + "or bitwise XOR of image(s) together."); 15.4275 + cimg_option("-cos","(no args)","Compute cosine of image(s) values."); 15.4276 + cimg_option("-sin","(no args)","Compute sine of image(s) values."); 15.4277 + cimg_option("-tan","(no args)","Compute tangent of image(s) values."); 15.4278 + cimg_option("-acos","(no args)","Compute arccosine of image(s) values."); 15.4279 + cimg_option("-asin","(no args)","Compute arcsine of image(s) values."); 15.4280 + cimg_option("-atan","(no args)","Compute arctangent of image(s) values."); 15.4281 + cimg_option("-abs","(no args)","Compute absolute value of image(s) values."); 15.4282 + cimg_option("-sqr","(no args)","Compute square of image(s) values."); 15.4283 + cimg_option("-sqrt","(no args)","Compute square root of image(s) values."); 15.4284 + cimg_option("-exp","(no args)","Compute exponential of image(s) values."); 15.4285 + cimg_option("-log","(no args)","Compute logarithm of image(s) values."); 15.4286 + cimg_option("-log10","(no args)","Compute logarithm_10 of image(s) values."); 15.4287 + 15.4288 + cimg_help("\n Pointwise pixel manipulation\n" 15.4289 + " ----------------------------"); 15.4290 + cimg_option("-type","'value_type'","Cast all images into specified value type (eq. to '-t')."); 15.4291 + cimg_help(" " 15.4292 + "('value_type' can be 'bool','uchar','char','ushort','short',"); 15.4293 + cimg_help(" " 15.4294 + "'uint','int','float','double')."); 15.4295 + cimg_option("-set","'value[,x[,y[,z[,v]]]]'","Set scalar value in image(s) at specified position (eq. to '-=')."); 15.4296 + cimg_option("-endian","(no args)","Invert endianness of the image(s) buffers."); 15.4297 + cimg_option("-fill","'value1,value2,...'","Fill image(s) with scalar values in a repetitive way (eq. to '-f')."); 15.4298 + cimg_option("-threshold","'value[%][,soft]' or (noargs)","Threshold pixel values ((noargs) for interactive mode)."); 15.4299 + cimg_option("-cut","'{value1[%],[indice]},{value2[%],[indice]}' or (noargs)","Cut pixel values in specified range "); 15.4300 + cimg_help(" " 15.4301 + "((noargs) for interactive mode)."); 15.4302 + cimg_option("-normalize","'{value1[%],[indice]},{value2[%],[indice]}'", 15.4303 + "Normalize pixel values in specified range (eq. to '-n')."); 15.4304 + cimg_option("-round","'round_value[,round_type]'","Round pixel values."); 15.4305 + cimg_option("-equalize","'nb_levels'","Equalize image(s) histogram(s) using specified number of levels."); 15.4306 + cimg_option("-quantize","'nb_levels'","Quantize image(s) with 'nb_levels' levels."); 15.4307 + cimg_option("-noise","'std[%][,noise_type]'","Add noise with specified standard deviation"); 15.4308 + cimg_help(" " 15.4309 + "('noise_type' can be '{0=gaussian, 1=uniform, 2=salt&pepper, 3=poisson}'."); 15.4310 + cimg_option("-norm","(no args)","Compute pointwise L2-norm of vector-valued image(s)."); 15.4311 + cimg_option("-orientation","(no args)","Compute pointwise orientation of vector-valued image(s)."); 15.4312 + 15.4313 + cimg_help("\n Color bases conversions\n" 15.4314 + " -----------------------"); 15.4315 + cimg_option("-rgb2hsv","(no args)","Convert image(s) from RGB to HSV colorbases."); 15.4316 + cimg_option("-rgb2hsl","(no args)","Convert image(s) from RGB to HSL colorbases."); 15.4317 + cimg_option("-rgb2hsi","(no args)","Convert image(s) from RGB to HSI colorbases."); 15.4318 + cimg_option("-rgb2yuv","(no args)","Convert image(s) from RGB to YUV colorbases."); 15.4319 + cimg_option("-rgb2ycbcr","(no args)","Convert image(s) from RGB to YCbCr colorbases."); 15.4320 + cimg_option("-rgb2xyz","(no args)","Convert image(s) from RGB to XYZ colorbases."); 15.4321 + cimg_option("-rgb2lab","(no args)","Convert image(s) from RGB to Lab colorbases."); 15.4322 + cimg_option("-rgb2cmy","(no args)","Convert image(s) from RGB to CMY colorbases."); 15.4323 + cimg_option("-rgb2cmyk","(no args)","Convert image(s) from RGB to CMYK colorbases."); 15.4324 + cimg_option("-rgb2lut","'[indice][,dithering]' or 'LUT_type[,dithering]'","Index image(s) with color palette "); 15.4325 + cimg_help(" " 15.4326 + "('LUT_type' can be '{0=default, 1=rainbow, 2=contrast}'"); 15.4327 + cimg_help(" " 15.4328 + "'dithering' can be '{0=off, 1=on}')."); 15.4329 + cimg_option("-hsv2rgb","(no args)","Convert image(s) from HSV to RGB colorbases."); 15.4330 + cimg_option("-hsl2rgb","(no args)","Convert image(s) from HSL to RGB colorbases."); 15.4331 + cimg_option("-hsi2rgb","(no args)","Convert image(s) from HSI to RGB colorbases."); 15.4332 + cimg_option("-yuv2rgb","(no args)","Convert image(s) from YUV to RGB colorbases."); 15.4333 + cimg_option("-ycbcr2rgb","(no args)","Convert image(s) from YCbCr to RGB colorbases."); 15.4334 + cimg_option("-xyz2rgb","(no args)","Convert image(s) from XYZ to RGB colorbases."); 15.4335 + cimg_option("-lab2rgb","(no args)","Convert image(s) from Lab to RGB colorbases."); 15.4336 + cimg_option("-cmy2rgb","(no args)","Convert image(s) from CMY to RGB colorbases."); 15.4337 + cimg_option("-cmyk2rgb","(no args)","Convert image(s) from CMYK to RGB colorbases."); 15.4338 + cimg_option("-lut2rgb","'[indice]' or 'LUT_type'","Map color palette to image(s) "); 15.4339 + cimg_help(" " 15.4340 + "('LUT_type' can be '{0=default, 1=rainbow, 2=contrast}'."); 15.4341 + 15.4342 + cimg_help("\n Geometric manipulation\n" 15.4343 + " ----------------------"); 15.4344 + cimg_option("-resize","'[indice][,interpolation[,borders[,center]]]' or ",""); 15.4345 + cimg_help(" " 15.4346 + "'{[indice],width[%]}[x{[indice],height[%]}[x{[indice],depth[%]}[x{[indice],dim[%]}[,interpolation[,borders[,center]]]]]]'"); 15.4347 + cimg_help(" " 15.4348 + "or (noargs)"); 15.4349 + cimg_help(" " 15.4350 + "Resize image(s) to specified geometry ((noargs) for interactive mode) (eq. to '-r')"); 15.4351 + cimg_help(" " 15.4352 + "('interpolation' can be '{0=none, 1=nearest, 2=average, 3=linear, 4=grid, 5=cubic}')."); 15.4353 + cimg_option("-resize2x","(no args)","Resize image(s) with Scale2x."); 15.4354 + cimg_option("-resize3x","(no args)","Resize image(s) with Scale3x."); 15.4355 + cimg_option("-crop","'x0[%],x1[%][,border_conditions]' or 'x0[%],y0[%],x1[%],y1[%][,border_conditions]' or ",""); 15.4356 + cimg_help(" " 15.4357 + "'x0[%],y0[%],z0[%],x1[%],y1[%],z1[%][,border_conditions]' or "); 15.4358 + cimg_help(" " 15.4359 + "'x0[%],y0[%],z0[%],v0[%],x1[%],y1[%],z1[%],v1[%][,border_conditions]' or (noargs)."); 15.4360 + cimg_help(" " 15.4361 + "Crop image(s) using specified geometry ((noargs) for interactive mode) (eq. to '-c') "); 15.4362 + cimg_help(" " 15.4363 + "('border_conditions' can be '{0=zero, 1=nearest}')"); 15.4364 + cimg_help(" " 15.4365 + "((no args) for interactive mode)."); 15.4366 + cimg_option("-autocrop","'value1,value2,...'","Autocrop image(s) using specified background color."); 15.4367 + cimg_option("-channels","'{[ind0],v0[%]}[,{[ind1],v1[%]}]'","Select channels v0..v1 of multi-spectral image(s)."); 15.4368 + cimg_option("-slices","'{[ind0],z0[%]}[,{[ind1],z1[%]}]'","Select slices z0..z1 of volumetric image(s)."); 15.4369 + cimg_option("-lines","'{[ind0],y0[%]}[,{[ind1],y1[%]}]'","Select lines y0..y1 of image(s)."); 15.4370 + cimg_option("-columns","'{[ind0],x0[%]}[,{[ind1],x1[%]}]'","Select columns x0..x1 of image(s)."); 15.4371 + cimg_option("-rotate","'angle[,border_conditions]'","Rotate image(s) with a given angle "); 15.4372 + cimg_help(" " 15.4373 + "('border_conditions' can be '{-3=cyclic (in-place), -2=nearest(ip), -1=zero(ip), 0=zero, 1=nearest, 2=cyclic}'"); 15.4374 + cimg_help(" " 15.4375 + "and 'interpolation' can be '{0=none, 1=linear, 2=cubic}')."); 15.4376 + cimg_option("-mirror","'axis'", 15.4377 + "Mirror image(s) along specified axis ('axis' can be '{x,y,z,v}')."); 15.4378 + cimg_option("-translate","'tx[%][,ty[%][,tz[%][,tv[%][,border_conditions]]]]'", 15.4379 + "Translate image(s) by vector (dx,dy,dz,dv)"); 15.4380 + cimg_help(" " 15.4381 + "('border_conditions' can be '{0=zero, 1=nearest, 2=cyclic}')."); 15.4382 + cimg_option("-transpose","(no args)","Transpose image(s)."); 15.4383 + cimg_option("-invert","(no args)","Compute inverse matrix."); 15.4384 + cimg_option("-permute","'permutation'","Permute image axes by the specified permutation " 15.4385 + "('permutation' can be 'yxzv',...)."); 15.4386 + cimg_option("-unroll","'axis'", 15.4387 + "Unroll image(s) along specified axis ('axis' can be '{x,y,z,v}')."); 15.4388 + cimg_option("-split","'axis[,nb_parts]' or 'value[,keep]'", 15.4389 + "Split image(s) along specified axis or value ('axis' can be '{x,y,z,v}') (eq. to '-s')."); 15.4390 + cimg_option("-append","'axis,[alignement]'","Append image(s) along specified axis and alignement (eq. to '-a')"); 15.4391 + cimg_help(" " 15.4392 + "('axis' can be '{x,y,z,v}' and 'alignement' can be '{p=left, c=center, n=right)'."); 15.4393 + cimg_option("-warp","'[indice][,relative[,interpolation[,border_conditions[,nb_frames]]]]'", 15.4394 + "Warp image(s) in 'nb_frames' with field '[indice]' "); 15.4395 + cimg_help(" " 15.4396 + "('relative' can be '{0,1}', 'interpolation' can be '{0,1}', " 15.4397 + "'border_conditions' can be '{0=zero, 1=nearest}')."); 15.4398 + 15.4399 + cimg_help("\n Image filtering\n" 15.4400 + " ---------------"); 15.4401 + cimg_option("-blur","'std[,border_conditions]'", 15.4402 + "Apply gaussian blur of specified standard deviation"); 15.4403 + cimg_help(" " 15.4404 + "('border_conditions' can be '{0=zero, 1=nearest}')."); 15.4405 + cimg_option("-bilateral","'stdevs,stdevr'", 15.4406 + "Apply bilateral filtering with specified standard deviations 'stdevs' and 'stdevr'."); 15.4407 + cimg_option("-smooth","'amplitude[,sharpness[,anisotropy[,alpha[,sigma[,dl[,da[,prec[,interp[,fast]]]]]]]]]'",""); 15.4408 + cimg_help(" " 15.4409 + "Smooth image(s) anisotropically with specified parameters."); 15.4410 + cimg_option("-denoise","'patch_size[,stdev_p[,stdev_s[,lookup_size]]]'", 15.4411 + "Denoise image(s) with a patch-averaging procedure."); 15.4412 + cimg_option("-median","'size'","Apply median filter with specified size."); 15.4413 + cimg_option("-sharpen","'amplitude[,0]' or 'amplitude,1[,edge[,alpha[,sigma]]]'", 15.4414 + "Sharpen image(s) with inverse diffusion or shock filters."); 15.4415 + cimg_option("-convolve","'[indice][,border_conditions]'", 15.4416 + "Convolve image(s) by the specified mask"); 15.4417 + cimg_help(" " 15.4418 + "('border_conditions' can be '{0=zero, 1=nearest}')."); 15.4419 + cimg_option("-correlate","'[indice][,border_conditions]'", 15.4420 + "Correlate image(s) by the specified mask (same parameters as above)."); 15.4421 + cimg_option("-erode","'size[,border_conditions]' or '[indice][,border_conditions]'",""); 15.4422 + cimg_help(" " 15.4423 + "Erode image(s) by the specified mask (same parameters as above)')."); 15.4424 + cimg_option("-dilate","'size[,border_conditions]' or '[indice][,border_conditions]'",""); 15.4425 + cimg_help(" " 15.4426 + "Dilate image(s) by the specified mask (same parameters as above)."); 15.4427 + cimg_option("-gradient","'x', 'xy', 'xyz' or (no args)","Compute image gradient."); 15.4428 + cimg_option("-hessian","'{xx,xy,xz,yy,yz,zz}' or (no args)","Compute image Hessian."); 15.4429 + cimg_option("-fft","(no args)","Compute direct Fourier transform."); 15.4430 + cimg_option("-ifft","(no args)","Compute inverse Fourier transform."); 15.4431 + 15.4432 + cimg_help("\n Image creation and drawing\n" 15.4433 + " --------------------------"); 15.4434 + cimg_option("-dimensions","(no args)","Get dimensions of the image(s) as a 1x4 vector."); 15.4435 + cimg_option("-stats","(no args)","Get statistics of the image(s) as a 1x6 vector."); 15.4436 + cimg_option("-histogram","'nb_values[%]'","Compute histogram of image(s) with 'nb_values' values."); 15.4437 + cimg_option("-distance","'isovalue'","Compute distance function(s) to specified isovalue."); 15.4438 + cimg_option("-hamilton","'nb_iter[,band_size]'","Apply Hamilton-Jacobi PDE to compute distance to 0."); 15.4439 + cimg_option("-label","(no args)","Label connected components of image(s)."); 15.4440 + cimg_option("-displacement","'[indice][,smoothness[,precision[,nbscales[,itermax]]]]","Estimate smooth displacement field between image(s) " 15.4441 + "and specified target '[indice]'."); 15.4442 + cimg_option("-sort","(no args)","Sort values of image(s) in increasing order."); 15.4443 + cimg_option("-psnr","'max_value' or (noargs)","Compute PSNR between specified image(s)."); 15.4444 + cimg_option("-point","'x[%],y[%][,z[%][,opacity[,color]]]'","Draw 3D colored point on specified image(s)."); 15.4445 + cimg_option("-line","'x0[%],y0[%],x1[%],y1[%][,opacity[,color]]'","Draw 2D colored line on specified image(s)."); 15.4446 + cimg_option("-polygon","'N,x0[%],y0[%],..,xN[%],yN[%][,opacity[,color]]'","Draw a 2D colored N-vertices polygon on specified image(s)."); 15.4447 + cimg_option("-ellipse","'x[%],y[%],r,R[,u,v[,opacity[,color]]]'","Draw 2D colored ellipse on specified image(s)."); 15.4448 + cimg_option("-text","text,x[%],y[%],size[,opacity[,color]]'", 15.4449 + "Draw specified text at position (x,y) and with specified font size."); 15.4450 + cimg_option("-image","'[indice][,x[%][,y[%][,z[%][,opacity[,ind_mask]]]]]'","Draw sprite image on specified image(s)."); 15.4451 + cimg_option("-object3d","'[indice][,x[%][,y[%][,z[,opacity]]]]'","Draw 3D object on specified image(s)."); 15.4452 + cimg_option("-plasma","'alpha[,beta[,opacity]]'","Draw plasma on specified image(s)."); 15.4453 + cimg_option("-mandelbrot","'z0r,z0i,z1r,z1i[,itermax[,julia,c0r,c0i[,opacity]]]'","Draw Mandelbrot/Julia fractals on specified image(s)."); 15.4454 + cimg_option("-flood","'x[%][,y[%][,z[%][,tolerance[,opacity[,color]]]]]'", 15.4455 + "Flood-fill image(s) starting from (x,y,z) with specified tolerance."); 15.4456 + 15.4457 + cimg_help("\n List manipulation\n" 15.4458 + " -----------------"); 15.4459 + cimg_option("-remove","(no args)","Remove image(s) from list (eq. to '-rm')."); 15.4460 + cimg_option("-keep","(no args)","Keep only specified image(s) (eq. to '-k')."); 15.4461 + cimg_option("-move","'position'","Move image(s) at specified position (eq. to '-mv')."); 15.4462 + cimg_option("-reverse","(no args)","Reverse image(s) order."); 15.4463 + cimg_option("-name","\"name\"","Set display name of image(s)."); 15.4464 + 15.4465 + cimg_help("\n 3D Rendering\n" 15.4466 + " ------------"); 15.4467 + cimg_option("-cube3d","'size'","Insert a 3D cube at the end of the list."); 15.4468 + cimg_option("-cone3d","'radius[,height[,subdivisions]]'","Insert a 3D cube at the end of the list."); 15.4469 + cimg_option("-cylinder3d","'radius[,height[,subdivisions]]'","Insert a 3D cylinder at the end of the list."); 15.4470 + cimg_option("-torus3d","'radius1,radius2[,subdivisions1,subdivisions2]'","Insert a 3D torus at the end of the list."); 15.4471 + cimg_option("-plane3d","'sizex,sizey[,subdivisionsx,subdisivionsy]'","Insert a 3D plane at the end of the list."); 15.4472 + cimg_option("-sphere3d","'radius[,subdivisions]'","Insert a 3D sphere at the end of the list."); 15.4473 + cimg_option("-elevation3d","'z-factor' or '[indice]'", 15.4474 + "Generate 3D elevation(s) of image(s) using specified z-factor or elevation map."); 15.4475 + cimg_option("-isovalue3d","'value'","Generate 3D object(s) by retrieving isophote or isosurface of image(s)."); 15.4476 + cimg_option("-center3d","(no args)","Center 3D object(s) (eq. to '-c3d')."); 15.4477 + cimg_option("-normalize3d","(no args)","Normalize 3D object(s) to a unit size (eq. to '-n3d')."); 15.4478 + cimg_option("-rotate3d","'u,v,w,angle'","Rotate 3D object(s) around axis (u,v,w) with specified angle (eq. to '-rot3d')."); 15.4479 + cimg_option("-add3d","'[indice]' or 'tx,ty,tz' or (noargs)","Append or translate 3D object(s), or append 3D object(s) together (eq. to '-+3d')."); 15.4480 + cimg_option("-sub3d","'tx,ty,tz'","Translate 3D object(s) with the opposite of the specified vector (eq. to '--3d')."); 15.4481 + cimg_option("-mul3d","'fact' or 'factx,facty[,factz]'","Scale 3D object(s) with specified factor (eq. to '-*3d')."); 15.4482 + cimg_option("-div3d","'fact' or 'factx,facty[,factz]'","Scale 3D object(s) with specified inverse factor (eq. to '-/3d')."); 15.4483 + cimg_option("-color3d","'R,G,B[,opacity]'","Set color of 3D object(s) (eq. to '-col3d')."); 15.4484 + cimg_option("-opacity3d","'opacity'","Set opacity of 3D object(s) (eq. to '-opac3d')."); 15.4485 + cimg_option("-invert3d","(no args)","Invert primitive orientations of 3D object(s) (eq. to '-i3d')."); 15.4486 + cimg_option("-split3d","(no args)","Split 3D object data into 6 data vectors 'header,N,vertices,primitives,colors,opacities' (eq. to '-s3d')."); 15.4487 + cimg_option("-light3d","'posx,posy,posz'","Set the 3D position of the light for 3D rendering (eq. to '-l3d')."); 15.4488 + cimg_option("-focale3d","'value'","Set focale value for 3D rendering (eq. to '-f3d')."); 15.4489 + cimg_option("-specl3d","'value'","Set amount of specular light for 3D rendering (eq. to '-sl3d')."); 15.4490 + cimg_option("-specs3d","'value'","Set shininess of specular light for 3D rendering (eq. to '-ss3d')."); 15.4491 + cimg_option("-orient3d","(no args)","Switch double-sided mode for 3D rendering (eq. to '-o3d')."); 15.4492 + cimg_option("-render3d","'mode'","Set 3D rendering mode"); 15.4493 + cimg_help(" " 15.4494 + "(can be '{-1=bounding-box, 0=pointwise, 1=linear, 2=flat, 3=flat-shaded, 4=Gouraud-shaded, 5=Phong-shaded}') (eq. to '-r3d')."); 15.4495 + cimg_option("-renderd3d","'mode'","Set dynamic rendering mode in 3D viewer (same values as above) (eq. to '-rd3d')."); 15.4496 + cimg_option("-background3d","'R,G,B'","Define background color in 3D viewer (eq. to '-b3d')."); 15.4497 + 15.4498 + cimg_help("\n Program controls\n" 15.4499 + " ----------------"); 15.4500 + cimg_option("-nop","(no args)","Do nothing."); 15.4501 + cimg_option("-skip","(any args)","Do nothing but skip the next argument."); 15.4502 + cimg_option("-echo","'text'","Output specified message (eq. to '-e')."); 15.4503 + cimg_option("-print","(no args)","Print image(s) informations (eq. to '-p')."); 15.4504 + cimg_option("-quit","(no args)","Force interpreter to quit (eq. to '-q')."); 15.4505 + cimg_option("-do","(no args)","Start a 'do-while' code bloc."); 15.4506 + cimg_option("-while","'cond'","End a 'do-while' code bloc and go back to associated '-do' if 'cond' is a strictly positive value."); 15.4507 + cimg_option("-if","'cond'","Start a 'if-then-else' code bloc and test if 'cond' is a strictly positive value."); 15.4508 + cimg_option("-else","(no args)","Execute following commands if previous '-if' condition failed."); 15.4509 + cimg_option("-endif","(no args)","End a 'if-then-else' code bloc"); 15.4510 + cimg_option("-repeat","'N'","Start a 'repeat-done' code bloc."); 15.4511 + cimg_option("-done","(no args)","End a 'repeat-done' code bloc, and go to associated '-repeat' if iterations remain."); 15.4512 + cimg_option("-int","'arg1,...,argN'","Check if all specified arguments are integer. If not, print an error message and exit."); 15.4513 + cimg_option("-float","'arg1,...,argN","Check if all specified arguments are float values. If not, print an error message and exit."); 15.4514 + 15.4515 + cimg_help("\n Input/output\n" 15.4516 + " ------------"); 15.4517 + cimg_option("-input","'filename' or 'width[%][xheight[%][xdepth[%][xdim[%][xN]]]]'",""); 15.4518 + cimg_help(" " 15.4519 + "or '[indice][xN]' or '(v11{,;/^}v21...vLM)[xN]'"); 15.4520 + cimg_help(" " 15.4521 + "Input filename, empty image, image copy, or image with specified values (eq. to '-i' or (no args))."); 15.4522 + cimg_option("-output","'filename'","Output image(s) in specified filename (eq. to '-o')."); 15.4523 + cimg_option("-display","(no args)","Display image(s) (eq. to '-d')."); 15.4524 + cimg_option("-display3d","(no args)","Display 3D object(s) (eq. to '-d3d')."); 15.4525 + cimg_option("-plot","'[plot_type[,vertex_type[,xmin[,xmax[,ymin[,ymax]]]]]]'", 15.4526 + "Display image(s) as 1D plot(s)"); 15.4527 + cimg_help(" " 15.4528 + "('plot_type' can be '{0=none, 1=lines, 2=splines, 3=bar}')."); 15.4529 + cimg_help(" " 15.4530 + "('vertex_type' can be in '[0-7]')."); 15.4531 + cimg_option("-select","'select_type'","Select feature from image(s) in an interactive way"); 15.4532 + cimg_help(" " 15.4533 + "('select_type' can be in '{0=point, 1=line, 2=rectangle, 3=circle')."); 15.4534 + 15.4535 + // Print descriptions of default macros. 15.4536 + char line[256*1024] = { 0 }, name[4096] = { 0 }, args[4096] = { 0 }, desc[4096] = { 0 }; 15.4537 + bool first_description = true; 15.4538 + for (const char *data = data_def; *data; ) { 15.4539 + if (*data=='\n') ++data; 15.4540 + else { 15.4541 + if (std::sscanf(data,"%262143[^\n]",line)>0) data += cimg::strlen(line); 15.4542 + if (line[0]=='#' && std::sscanf(line,"#@gmic %4095[^:] : %4095[^:] : %4095[^:]",name,args,desc)>0) { 15.4543 + if (first_description) cimg_help("\n Commands : Default macros\n" 15.4544 + " -------------------------"); 15.4545 + std::fprintf(cimg_stdout,"%s %s-%-15s%s %-24s %s%s%s", 15.4546 + first_description?"":"\n", 15.4547 + cimg::t_bold,name,cimg::t_normal,args,cimg::t_green,desc,cimg::t_normal); 15.4548 + first_description = false; 15.4549 + } 15.4550 + } 15.4551 + } 15.4552 + 15.4553 + // Print descriptions of use-defined macros. 15.4554 + first_description = true; 15.4555 + for (int i = 1; i<argc-1; ++i) if (!cimg::strcmp("-m",argv[i]) || !cimg::strcmp("-macros",argv[i])) { 15.4556 + std::FILE *file = cimg::fopen(argv[i+1],"r"); 15.4557 + if (file) { 15.4558 + int err = 0; 15.4559 + while ((err=std::fscanf(file,"%262143[^\n] ",line)>=0)) { 15.4560 + if (err) { // Non empty-line 15.4561 + name[0] = args[0] = desc[0] = 0; 15.4562 + if (line[0]=='#' && std::sscanf(line,"#@gmic %4095[^:] : %4095[^:] : %4095[^:]",name,args,desc)>0) { 15.4563 + if (first_description) cimg_help("\n\n Commands : User-defined macros\n" 15.4564 + " ------------------------------"); 15.4565 + std::fprintf(cimg_stdout,"%s %s-%-15s%s %-24s %s%s%s", 15.4566 + first_description?"":"\n", 15.4567 + cimg::t_bold,name,cimg::t_normal,args,cimg::t_green,desc,cimg::t_normal); 15.4568 + first_description = false; 15.4569 + } 15.4570 + } 15.4571 + } 15.4572 + } 15.4573 + cimg::fclose(file); 15.4574 + } 15.4575 + 15.4576 + cimg_help("\n\n Viewers shortcuts\n" 15.4577 + " -----------------"); 15.4578 + cimg_help(" When displaying image(s) or 3D object(s) with G'MIC, you can use these shortcuts in viewers :"); 15.4579 + cimg_help(" - CTRL+D : Increase window size."); 15.4580 + cimg_help(" - CTRL+C : Decrease window size."); 15.4581 + cimg_help(" - CTRL+R : Reset window size."); 15.4582 + cimg_help(" - CTRL+F : Toggle fullscreen mode."); 15.4583 + cimg_help(" - CTRL+S : Save current window snapshot."); 15.4584 + cimg_help(" - CTRL+O : Save current instance of viewed image or 3D object.\n"); 15.4585 + cimg_help(" Specific options for the viewer of image(s) :"); 15.4586 + cimg_help(" - CTRL+P : Play stack of frames as a movie."); 15.4587 + cimg_help(" - CTRL+(mousewheel) : Zoom in/out."); 15.4588 + cimg_help(" - SHIFT+(mousewheel) : Go left/right."); 15.4589 + cimg_help(" - ALT+(mousewheel) : Go up/down."); 15.4590 + cimg_help(" - Numeric PAD : Zoom in/out (+/-) and move zoomed region (numbers)."); 15.4591 + cimg_help(" - BACKSPACE : Reset zoom.\n"); 15.4592 + cimg_help(" Specific options for the viewer of 3D object(s) :"); 15.4593 + cimg_help(" - (mouse) + (left mouse button) : Rotate object."); 15.4594 + cimg_help(" - (mouse) + (right mouse button) : Zoom object."); 15.4595 + cimg_help(" - (mouse) + (middle mouse button) : Translate object."); 15.4596 + cimg_help(" - (mousewheel) : Zoom in/out."); 15.4597 + cimg_help(" - CTRL + Z : Enable/disable Z-buffer rendering"); 15.4598 + 15.4599 + cimg_help("\n File options\n" 15.4600 + " ------------"); 15.4601 + cimg_help(" G'MIC is able to read/write most of the classical image file formats, including :"); 15.4602 + cimg_help(" - 2D grayscale/color images : PNG,JPEG,GIF,PNM,TIFF,BMP,...."); 15.4603 + cimg_help(" - 3D volumetric images : DICOM,HDR,NII,PAN,CIMG,INR,...."); 15.4604 + cimg_help(" - Video files : MPEG,AVI,MOV,OGG,FLV,..."); 15.4605 + cimg_help(" - Generic data files : DLM,ASC,RAW,TXT."); 15.4606 + cimg_help(" - 3D objects : OFF.\n"); 15.4607 + cimg_help(" Specific options :"); 15.4608 + cimg_help(" - For video files : you can read only sub-frames of the image sequence (recommended) with the expression"); 15.4609 + cimg_help(" 'video.ext,[first_frame[%][,last_frame[%][,step]]]'."); 15.4610 + cimg_help(" - For RAW files : you must specify the image dimensions with the expression"); 15.4611 + cimg_help(" 'file.raw,width[,height[,depth[,dim]]]]'."); 15.4612 + cimg_help(" - For YUV files : you must specify the image dimensions and can read only sub-frames of the image sequence with the expression"); 15.4613 + cimg_help(" 'file.yuv,width,height[,first_frame[,last_frame[,step]]]'."); 15.4614 + cimg_help(" - For JPEG files : you can specify the quality (in %) of an output jpeg file format with the expression"); 15.4615 + cimg_help(" 'file.jpg,30%'."); 15.4616 + 15.4617 + cimg_help("\n Examples of use\n" 15.4618 + " ---------------"); 15.4619 + cimg_help(" G'MIC is a simple but quite complete interpreter of image processing instructions, and can be used for a wide variety of"); 15.4620 + cimg_help(" image processing tasks. Here are (very few) examples of how the command line tool G'MIC can be used :\n"); 15.4621 + cimg_help(" - View image data : "); 15.4622 + cimg_help(" gmic file1.bmp file2.jpeg"); 15.4623 + cimg_help(" - Convert image files : "); 15.4624 + cimg_help(" gmic input.bmp -o output.jpg"); 15.4625 + cimg_help(" - Create volumetric image(s) from movie sequence : "); 15.4626 + cimg_help(" gmic input.mpg -a z -o output.hdr"); 15.4627 + cimg_help(" - Compute image gradient norm : "); 15.4628 + cimg_help(" gmic input.bmp -gradient_norm"); 15.4629 + cimg_help(" - Create G'MIC 3D logo : "); 15.4630 + cimg_help(" gmic 180x70x1x3 -text G\\'MIC,30,5,50,1,1 -blur 2 -n 0,100 [0] -plasma[1] \\"); 15.4631 + cimg_help(" -+ -blur 1 -elevation -0.1 -rd3d 4"); 15.4632 + cimg_help("\n See also the macros defined in the provided macro file 'gmic_def.raw' for other examples."); 15.4633 + 15.4634 + cimg_help("\n ** G'MIC comes with ABSOLUTELY NO WARRANTY; " 15.4635 + "for details visit http://gmic.sourceforge.net **"); 15.4636 + std::exit(0); 15.4637 + } 15.4638 + 15.4639 + // Launch G'MIC instance. 15.4640 + //----------------------- 15.4641 + CImgList<float> images; 15.4642 + try { 15.4643 + gmic(argc,argv,images); 15.4644 + } catch (gmic_exception &e) { 15.4645 + std::fprintf(cimg_stdout,"\n** Error occurred : %s **\n",e.message); 15.4646 + } 15.4647 + return 0; 15.4648 +} 15.4649 +#endif 15.4650 + 15.4651 +#endif // #ifdef cimg_plugin ... #else ...
16.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 16.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic.h Mon Aug 03 14:09:20 2009 +0100 16.3 @@ -0,0 +1,145 @@ 16.4 +/* 16.5 + # 16.6 + # File : gmic.h 16.7 + # ( C++ header file ) 16.8 + # 16.9 + # Description : GREYC's Magic Image Converter 16.10 + # ( http://gmic.sourceforge.net ) 16.11 + # This file is a part of the CImg Library project. 16.12 + # ( http://cimg.sourceforge.net ) 16.13 + # 16.14 + # Note : This file cannot be compiled on VC++ 6. 16.15 + # 16.16 + # Copyright : David Tschumperle 16.17 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 16.18 + # 16.19 + # License : CeCILL v2.0 16.20 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 16.21 + # 16.22 + # This software is governed by the CeCILL license under French law and 16.23 + # abiding by the rules of distribution of free software. You can use, 16.24 + # modify and/ or redistribute the software under the terms of the CeCILL 16.25 + # license as circulated by CEA, CNRS and INRIA at the following URL 16.26 + # "http://www.cecill.info". 16.27 + # 16.28 + # As a counterpart to the access to the source code and rights to copy, 16.29 + # modify and redistribute granted by the license, users are provided only 16.30 + # with a limited warranty and the software's author, the holder of the 16.31 + # economic rights, and the successive licensors have only limited 16.32 + # liability. 16.33 + # 16.34 + # In this respect, the user's attention is drawn to the risks associated 16.35 + # with loading, using, modifying and/or developing or reproducing the 16.36 + # software by the user in light of its specific status of free software, 16.37 + # that may mean that it is complicated to manipulate, and that also 16.38 + # therefore means that it is reserved for developers and experienced 16.39 + # professionals having in-depth computer knowledge. Users are therefore 16.40 + # encouraged to load and test the software's suitability as regards their 16.41 + # requirements in conditions enabling the security of their systems and/or 16.42 + # data to be ensured and, more generally, to use and operate it in the 16.43 + # same conditions as regards security. 16.44 + # 16.45 + # The fact that you are presently reading this means that you have had 16.46 + # knowledge of the CeCILL license and that you accept its terms. 16.47 + # 16.48 +*/ 16.49 + 16.50 +#ifndef gmic_version 16.51 +#include "CImg.h" 16.52 +#define gmic_version 1304 16.53 + 16.54 +// The lines below are necessary when using a non-standard compiler such as visualcpp6. 16.55 +#ifdef cimg_use_visualcpp6 16.56 +#define std 16.57 +#endif 16.58 +#ifdef min 16.59 +#undef min 16.60 +#undef max 16.61 +#endif 16.62 + 16.63 +// Define G'MIC Exception class. 16.64 +//------------------------------ 16.65 +struct gmic_exception { 16.66 + char message[4096]; 16.67 + gmic_exception(); 16.68 + gmic_exception(const char *format, ...); 16.69 + gmic_exception(const char *format, std::va_list ap); 16.70 +}; 16.71 + 16.72 +// Define G'MIC interpreter class. 16.73 +//-------------------------------- 16.74 +struct gmic { 16.75 + 16.76 + // Internal variables. 16.77 + cimg_library::CImgList<char> command_line, filenames, macros, commands; 16.78 + cimg_library::CImgList<int> dowhile, repeatdone; 16.79 + bool is_released, is_debug, is_fullpath, is_begin, is_oriented3d; 16.80 + int verbosity_level, render3d, renderd3d; 16.81 + float focale3d, light3d_x, light3d_y, light3d_z, specular_light3d, specular_shine3d; 16.82 + unsigned char background3d[3]; 16.83 + unsigned int position; 16.84 + 16.85 + // Constructors - Destructors. 16.86 + gmic(); 16.87 + template<typename T> gmic(const int argc, const char *const *const argv, cimg_library::CImgList<T>& images, 16.88 + const char *const custom_macros=0, const bool add_macros_at_start=true); 16.89 + template<typename T> gmic(const char *const command, cimg_library::CImgList<T>& images, 16.90 + const char *const custom_macros=0, const bool add_macros_at_start=true); 16.91 + gmic& assign(const unsigned int size, const char *const custom_macros=0, 16.92 + const bool add_macros_at_start=true); 16.93 + 16.94 + // Messages procedures. 16.95 + const gmic& error(const char *format, ...) const; 16.96 + const gmic& warning(const char *format, ...) const; 16.97 + const gmic& debug(const char *format, ...) const; 16.98 + const gmic& print(const char *format, ...) const; 16.99 + 16.100 + // Add macros. 16.101 + gmic& add_macros(const char *const data_macros, const unsigned int data_size, const bool add_macros_at_start=true); 16.102 + gmic& add_macros(std::FILE *const file, const bool add_macros_at_start=true); 16.103 + 16.104 + // Return indices of the images from a string. 16.105 + cimg_library::CImg<unsigned int> indices2cimg(const char *const string, const unsigned int indice_max, 16.106 + const char *const command) const; 16.107 + 16.108 + // Return stringified version of indices or filenames. 16.109 + char* indices2string(const cimg_library::CImg<unsigned int>& indices, const bool display_indices) const; 16.110 + 16.111 + // Display image data. 16.112 + template<typename T> 16.113 + bool display_images(const cimg_library::CImgList<T>& images, const cimg_library::CImg<unsigned int>& indices, 16.114 + const bool verbose) const; 16.115 + template<typename T> 16.116 + bool display_objects3d(const cimg_library::CImgList<T>& images, const cimg_library::CImg<unsigned int>& indices, 16.117 + const bool verbose) const; 16.118 + template<typename T> 16.119 + bool display_plots(const cimg_library::CImgList<T>& images, const cimg_library::CImg<unsigned int>& indices, 16.120 + const unsigned int plot_type, const unsigned int vertex_type, 16.121 + const double xmin, const double xmax, 16.122 + const double ymin, const double ymax, 16.123 + const bool verbose) const; 16.124 + 16.125 + // Substitute '@' expressions. 16.126 + template<typename T> 16.127 + cimg_library::CImg<char> substitute_arobace(const char *const argument, const cimg_library::CImgList<T>& images) const; 16.128 + 16.129 + // Main parsing procedure. 16.130 + template<typename T> 16.131 + gmic& parse(cimg_library::CImgList<T> &images); 16.132 + gmic& parse_bool(cimg_library::CImgList<bool>& images); 16.133 + gmic& parse_uchar(cimg_library::CImgList<unsigned char>& images); 16.134 + gmic& parse_char(cimg_library::CImgList<char>& images); 16.135 + gmic& parse_ushort(cimg_library::CImgList<unsigned short>& images); 16.136 + gmic& parse_short(cimg_library::CImgList<short>& images); 16.137 + gmic& parse_uint(cimg_library::CImgList<unsigned int>& images); 16.138 + gmic& parse_int(cimg_library::CImgList<int>& images); 16.139 + gmic& parse_float(cimg_library::CImgList<float>& images); 16.140 + gmic& parse_double(cimg_library::CImgList<double>& images); 16.141 + 16.142 +}; // End of the 'gmic' class. 16.143 + 16.144 +#endif 16.145 + 16.146 +// Local Variables: 16.147 +// mode: c++ 16.148 +// End:
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 17.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic4gimp.cpp Mon Aug 03 14:09:20 2009 +0100 17.3 @@ -0,0 +1,1132 @@ 17.4 +/* 17.5 + # 17.6 + # File : gmic4gimp.cpp 17.7 + # ( C++ source file ) 17.8 + # 17.9 + # Description : G'MIC for GIMP - A plug-in to allow the use 17.10 + # of G'MIC commands in GIMP. 17.11 + # This file is a part of the CImg Library project. 17.12 + # ( http://cimg.sourceforge.net ) 17.13 + # 17.14 + # Copyright : David Tschumperle (GREYCstoration API) 17.15 + # 17.16 + # License : CeCILL v2.0 17.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 17.18 + # 17.19 + # This software is governed by the CeCILL license under French law and 17.20 + # abiding by the rules of distribution of free software. You can use, 17.21 + # modify and/ or redistribute the software under the terms of the CeCILL 17.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 17.23 + # "http://www.cecill.info". 17.24 + # 17.25 + # As a counterpart to the access to the source code and rights to copy, 17.26 + # modify and redistribute granted by the license, users are provided only 17.27 + # with a limited warranty and the software's author, the holder of the 17.28 + # economic rights, and the successive licensors have only limited 17.29 + # liability. 17.30 + # 17.31 + # In this respect, the user's attention is drawn to the risks associated 17.32 + # with loading, using, modifying and/or developing or reproducing the 17.33 + # software by the user in light of its specific status of free software, 17.34 + # that may mean that it is complicated to manipulate, and that also 17.35 + # therefore means that it is reserved for developers and experienced 17.36 + # professionals having in-depth computer knowledge. Users are therefore 17.37 + # encouraged to load and test the software's suitability as regards their 17.38 + # requirements in conditions enabling the security of their systems and/or 17.39 + # data to be ensured and, more generally, to use and operate it in the 17.40 + # same conditions as regards security. 17.41 + # 17.42 + # The fact that you are presently reading this means that you have had 17.43 + # knowledge of the CeCILL license and that you accept its terms. 17.44 + # 17.45 +*/ 17.46 + 17.47 +// Include necessary header files. 17.48 +//-------------------------------- 17.49 +#define cimg_display_type 0 17.50 +#include "gmic.h" 17.51 +#include "gmic4gimp_def.h" 17.52 +#include <pthread.h> 17.53 +#include <locale> 17.54 +#include <gtk/gtk.h> 17.55 +#include <libgimp/gimp.h> 17.56 +#include <libgimp/gimpui.h> 17.57 +using namespace cimg_library; 17.58 + 17.59 +// Define plug-in global variables. 17.60 +//--------------------------------- 17.61 +CImgList<char> gmic_entries; // The list of recognized G'MIC menu entries (stored as 'char*' strings). 17.62 +CImgList<char> gmic_commands; // The list of corresponding G'MIC commands to process the image. 17.63 +CImgList<char> gmic_preview_commands; // The list of corresponding G'MIC commands to preview the image. 17.64 +CImgList<char> gmic_arguments; // The list of corresponding needed filter arguments. 17.65 +char *gmic_macros; // The array of customized G'MIC macros. 17.66 +GtkTreeStore *filter_store; // A list of available filter entries (used by the GtkTreeView). 17.67 +bool return_create_dialog; // Return value of the 'create_gui_dialog()' function (set by events handlers). 17.68 +void **event_infos; // Infos that are passed to the GUI callback functions. 17.69 +char *path_home; // The path where configuration files are looked for. 17.70 + 17.71 +// Replace '[]' by '()' in a C-string. 17.72 +//------------------------------------ 17.73 +void strparenthesis(char *const s) { 17.74 + for (char *ns = s; *ns; ++ns) if (*ns=='[') *ns = '('; else if (*ns==']') *ns = ')'; 17.75 +} 17.76 + 17.77 +// Set/get plug-in global variables in GIMP. 17.78 +//------------------------------------------ 17.79 +void set_current_filter(const unsigned int current_filter) { 17.80 + const unsigned int ncurrent_filter = current_filter>gmic_entries.size?0:current_filter; 17.81 + gimp_set_data("gmic_current_filter",&ncurrent_filter,sizeof(unsigned int)); 17.82 +} 17.83 + 17.84 +unsigned int get_current_filter() { 17.85 + unsigned int current_filter = 0; 17.86 + gimp_get_data("gmic_current_filter",¤t_filter); 17.87 + if (current_filter>gmic_entries.size) current_filter = 0; 17.88 + return current_filter; 17.89 +} 17.90 + 17.91 +void set_filter_nbparams(const unsigned int filter, const unsigned int nbparams) { 17.92 + char s_tmp[256] = { 0 }; 17.93 + std::sprintf(s_tmp,"gmic_filter%u_nbparams",filter); 17.94 + gimp_set_data(s_tmp,&nbparams,sizeof(unsigned int)); 17.95 +} 17.96 + 17.97 +unsigned int get_filter_nbparams(const unsigned int filter) { 17.98 + char s_tmp[256] = { 0 }; 17.99 + std::sprintf(s_tmp,"gmic_filter%u_nbparams",filter); 17.100 + unsigned int nbparams = 0; 17.101 + gimp_get_data(s_tmp,&nbparams); 17.102 + return nbparams; 17.103 +} 17.104 + 17.105 +void set_filter_parameter(const unsigned int filter, const unsigned int n, const char *const param) { 17.106 + char s_tmp[256] = { 0 }; 17.107 + std::sprintf(s_tmp,"gmic_filter%u_parameter%u",filter,n); 17.108 + gimp_set_data(s_tmp,param,cimg::strlen(param)+1); 17.109 +} 17.110 + 17.111 +const char *get_filter_parameter(const unsigned int filter, const unsigned int n) { 17.112 + char s_tmp[256] = { 0 }; 17.113 + std::sprintf(s_tmp,"gmic_filter%u_parameter%u",filter,n); 17.114 + static char res[4096] = { 0 }; 17.115 + res[0] = 0; 17.116 + gimp_get_data(s_tmp,res); 17.117 + return res; 17.118 +} 17.119 + 17.120 +unsigned int get_verbosity_level() { 17.121 + unsigned int verbosity = 0; 17.122 + gimp_get_data("gmic_verbosity",&verbosity); 17.123 + return verbosity; 17.124 +} 17.125 + 17.126 +void set_verbosity_level(const unsigned int verbosity) { 17.127 + gimp_set_data("gmic_verbosity",&verbosity,sizeof(unsigned int)); 17.128 +} 17.129 + 17.130 +// Return G'MIC command line needed to run the selected filter. 17.131 +//-------------------------------------------------------------- 17.132 +const char* get_commandline(const bool preview) { 17.133 + const unsigned int 17.134 + verbosity_level = get_verbosity_level(), 17.135 + filter = get_current_filter(), 17.136 + nbparams = get_filter_nbparams(filter); 17.137 + if (!filter) return 0; 17.138 + 17.139 + static CImg<char> res; 17.140 + 17.141 + CImgList<char> lres; 17.142 + switch (verbosity_level) { 17.143 + case 0: lres.insert(CImg<char>("-v- -",5)); break; 17.144 + case 1: lres.insert(CImg<char>("-",1)); break; 17.145 + default: lres.insert(CImg<char>("-v+ -debug -",12)); 17.146 + } 17.147 + 17.148 + const unsigned int N = filter - 1; 17.149 + const CImg<char> &command_item = (preview?gmic_preview_commands[N]:gmic_commands[N]); 17.150 + if (command_item) { 17.151 + lres.insert(command_item); 17.152 + if (nbparams) { 17.153 + lres[1].last() = ' '; 17.154 + for (unsigned int p = 0; p<nbparams; ++p) { 17.155 + const char *const param = get_filter_parameter(filter,p); 17.156 + if (param) lres.insert(CImg<char>(param,cimg::strlen(param)+1)).last().last() = ','; 17.157 + } 17.158 + } 17.159 + (res = lres.get_append('x')).last() = 0; 17.160 + } 17.161 + return res.ptr(); 17.162 +} 17.163 + 17.164 +// Process image region with G'MIC. 17.165 +//--------------------------------- 17.166 + 17.167 +// Define structure to store the arguments needed by the processing thread. 17.168 +struct st_process_thread { 17.169 + pthread_t thread; 17.170 + CImgList<float> images; 17.171 + const char *commandline; 17.172 + unsigned int verbosity_level; 17.173 + pthread_mutex_t is_running; 17.174 +}; 17.175 + 17.176 +// Thread that does the image processing part (call the G'MIC library). 17.177 +void *process_thread(void *arg) { 17.178 + st_process_thread &spt = *(st_process_thread*)arg; 17.179 + try { 17.180 + if (spt.verbosity_level>0) 17.181 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Running G'MIC to process the image, with command : %s\n",spt.commandline); 17.182 + std::setlocale(LC_NUMERIC,"C"); 17.183 + gmic(spt.commandline,spt.images,gmic_macros,false); 17.184 + if (spt.verbosity_level>0) 17.185 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : G'MIC successfully returned !\n"); 17.186 + } catch (gmic_exception &e) { 17.187 + if (spt.verbosity_level>0) 17.188 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Error encountered when running G'MIC :\n*** %s\n",e.message); 17.189 + spt.images.assign(); 17.190 + } 17.191 + pthread_mutex_unlock(&spt.is_running); 17.192 + pthread_exit(0); 17.193 + return 0; 17.194 +} 17.195 + 17.196 +// Routine called to process the current GIMP image. 17.197 +void process_image(GimpDrawable *drawable, const char *last_commandline) { 17.198 + const unsigned int filter = get_current_filter(); 17.199 + if (!last_commandline && !filter) return; 17.200 + const char *commandline = last_commandline?last_commandline:get_commandline(false); 17.201 + if (!commandline || !cimg::strcmp(commandline,"-v- -nop")) return; 17.202 + gimp_progress_init_printf(" G'MIC Toolbox : %s...",gmic_entries[filter-1].ptr()); 17.203 + 17.204 + // Read GIMP image region data and make a CImg<float> instance from it. 17.205 + GimpPixelRgn src_region; 17.206 + gint x1, y1, x2, y2; 17.207 + gimp_drawable_mask_bounds(drawable->drawable_id,&x1,&y1,&x2,&y2); // Get coordinates of the current layer selection. 17.208 + const gint width = x2 - x1, height = y2 - y1, channels = drawable->bpp; 17.209 + gimp_pixel_rgn_init(&src_region,drawable,x1,y1,width,height,false,false); 17.210 + guchar *const src_row = g_new(guchar,width*channels); 17.211 + CImg<float> img(width,height,1,channels); 17.212 + cimg_forY(img,y) { 17.213 + gimp_pixel_rgn_get_row(&src_region,src_row,x1,y1+y,width); 17.214 + const guchar *ptrs = src_row; 17.215 + cimg_forX(img,x) cimg_forV(img,k) img(x,y,k) = (float)*(ptrs++); 17.216 + } 17.217 + g_free(src_row); 17.218 + 17.219 + // Call G'MIC interpreter on the CImg<float> image in a new thread. 17.220 + st_process_thread spt; 17.221 + spt.images.assign(1); 17.222 + img.transfer_to(spt.images[0]); 17.223 + spt.commandline = commandline; 17.224 + spt.verbosity_level = get_verbosity_level(); 17.225 + pthread_mutex_init(&spt.is_running,0); 17.226 + pthread_mutex_lock(&spt.is_running); 17.227 + pthread_create(&(spt.thread),0,process_thread,(void*)&spt); 17.228 + 17.229 + // Do a small animation with the progress bar, while waiting for 17.230 + // the termination of the processing thread. 17.231 + while (pthread_mutex_trylock(&spt.is_running)) { gimp_progress_pulse(); cimg::wait(500); } 17.232 + gimp_progress_update(1.0); 17.233 + pthread_join(spt.thread,0); 17.234 + pthread_mutex_unlock(&spt.is_running); 17.235 + pthread_mutex_destroy(&spt.is_running); 17.236 + 17.237 + // Force the resulting images to have all the same 2D GRAY, GRAYA, RGB or RGBA format. 17.238 + if (!spt.images) { gimp_progress_end(); return; } 17.239 + unsigned int max_width = 0, max_height = 0, max_channels = 0; 17.240 + cimglist_for(spt.images,p) { 17.241 + const CImg<float>& img = spt.images[p]; 17.242 + if (img.width>max_width) max_width = img.width; 17.243 + if (img.height>max_height) max_height = img.height; 17.244 + if (img.dim>max_channels) max_channels = img.dim; 17.245 + } 17.246 + if (max_channels>4) max_channels = 4; 17.247 + cimglist_apply(spt.images,resize)(-100,-100,1,max_channels); 17.248 + 17.249 + // Transfer the result image back into GIMP. 17.250 + if (spt.images.size==1 && (int)max_width==width && (int)max_height==height && (int)max_channels==channels) { 17.251 + 17.252 + // When the result image has same dimensions than the source : 17.253 + // Replace the selected region of the original GIMP image. 17.254 + CImg<float> &res = spt.images[0]; 17.255 + GimpPixelRgn dest_region; 17.256 + guchar *const dest_row = g_new(guchar,res.dimx()*res.dimv()); 17.257 + gimp_pixel_rgn_init(&dest_region,drawable,0,0,drawable->width,drawable->height,true,true); 17.258 + cimg_forY(res,y) { 17.259 + guchar *ptrd = dest_row; 17.260 + cimg_forX(res,x) cimg_forV(res,k) *(ptrd++) = (guchar)res(x,y,k); 17.261 + gimp_pixel_rgn_set_row(&dest_region,dest_row,x1,y1+y,width); 17.262 + } 17.263 + g_free(dest_row); 17.264 + spt.images.assign(); 17.265 + gimp_drawable_flush(drawable); 17.266 + gimp_drawable_merge_shadow(drawable->drawable_id,true); 17.267 + gimp_drawable_update(drawable->drawable_id,x1,y1,x2-x1,y2-y1); 17.268 + gimp_displays_flush(); 17.269 + } else { 17.270 + 17.271 + // When the result image has different dimensions than the source : 17.272 + // Returns a new GIMP image. 17.273 + gint id_img = gimp_image_new(max_width,max_height,max_channels<=2?GIMP_GRAY:GIMP_RGB); 17.274 + gimp_image_undo_group_start(id_img); 17.275 + 17.276 + cimglist_for(spt.images,p) { 17.277 + CImg<float> &res = spt.images[p]; 17.278 + gint id_layer = gimp_layer_new(id_img,"image",res.dimx(),res.dimy(), 17.279 + res.dimv()==1?GIMP_GRAY_IMAGE: 17.280 + res.dimv()==2?GIMP_GRAYA_IMAGE: 17.281 + res.dimv()==3?GIMP_RGB_IMAGE: 17.282 + GIMP_RGBA_IMAGE, 17.283 + 100.0,GIMP_NORMAL_MODE); 17.284 + gimp_image_add_layer(id_img,id_layer,0); 17.285 + GimpDrawable *ndrawable = gimp_drawable_get(id_layer); 17.286 + 17.287 + GimpPixelRgn dest_region; 17.288 + guchar *const dest_row = g_new(guchar,res.dimx()*res.dimv()); 17.289 + gimp_pixel_rgn_init(&dest_region,ndrawable,0,0,ndrawable->width,ndrawable->height,true,true); 17.290 + cimg_forY(res,y) { 17.291 + guchar *ptrd = dest_row; 17.292 + cimg_forX(res,x) cimg_forV(res,k) *(ptrd++) = (guchar)res(x,y,k); 17.293 + gimp_pixel_rgn_set_row(&dest_region,dest_row,0,y,res.dimx()); 17.294 + } 17.295 + g_free(dest_row); 17.296 + res.assign(); 17.297 + gimp_drawable_flush(ndrawable); 17.298 + gimp_drawable_merge_shadow(ndrawable->drawable_id,true); 17.299 + gimp_drawable_update(ndrawable->drawable_id,0,0,ndrawable->width,ndrawable->height); 17.300 + gimp_drawable_detach(ndrawable); 17.301 + } 17.302 + gimp_display_new(id_img); 17.303 + gimp_image_undo_group_end(id_img); 17.304 + gimp_displays_flush(); 17.305 + } 17.306 + gimp_progress_end(); 17.307 +} 17.308 + 17.309 +// Process preview with G'MIC. 17.310 +//----------------------------- 17.311 +void process_preview(GimpPreview *preview) { 17.312 + const unsigned int filter = get_current_filter(); 17.313 + if (!filter) return; 17.314 + const char *const commandline = get_commandline(true); 17.315 + if (!commandline || !cimg::strcmp(commandline,"-v- -nop")) return; 17.316 + 17.317 + // Read GIMP image preview and make a CImg<float> instance from it. 17.318 + gint width, height, channels; 17.319 + guchar *const ptr0 = gimp_zoom_preview_get_source(GIMP_ZOOM_PREVIEW(preview),&width,&height,&channels), *ptrs = ptr0; 17.320 + CImg<float> img(width,height,1,channels); 17.321 + cimg_forXY(img,x,y) cimg_forV(img,k) img(x,y,k) = (float)*(ptrs++); 17.322 + 17.323 + // Call G'MIC interpreter on the preview image. 17.324 + CImgList<float> gmic_images(1); 17.325 + img.transfer_to(gmic_images[0]); 17.326 + try { 17.327 + if (get_verbosity_level()>0) 17.328 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Running G'MIC to process the preview, with command : %s\n",commandline); 17.329 + std::setlocale(LC_NUMERIC,"C"); 17.330 + gmic(commandline,gmic_images,gmic_macros,false); 17.331 + if (get_verbosity_level()>0) 17.332 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : G'MIC successfully returned !\n"); 17.333 + } catch (gmic_exception &e) { 17.334 + if (get_verbosity_level()>0) 17.335 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Error encountered when running G'MIC :\n*** %s\n",e.message); 17.336 + gmic_images.assign(); 17.337 + } 17.338 + 17.339 + // Get current image preview from the processed data. 17.340 + if (gmic_images.size && gmic_images[0]) { 17.341 + CImg<float>& res = gmic_images[0]; 17.342 + if (res.width>res.height) { 17.343 + const unsigned int _nheight = res.height*width/res.width, nheight = _nheight?_nheight:1; 17.344 + res.resize(width,nheight,1,-100,2); 17.345 + } else { 17.346 + const unsigned int _nwidth = res.width*height/res.height, nwidth = _nwidth?_nwidth:1; 17.347 + res.resize(nwidth,height,1,-100,2); 17.348 + } 17.349 + if (res.dimx()!=width || res.dimy()!=height) res.resize(width,height,1,-100,0,0,1); 17.350 + switch (channels) { 17.351 + case 1: 17.352 + switch (res.dim) { 17.353 + case 1: break; 17.354 + case 2: res.channel(0); break; 17.355 + case 3: res.channel(0); break; 17.356 + case 4: res.channel(0); break; 17.357 + default: res.channel(0); 17.358 + } break; 17.359 + case 2: 17.360 + switch (res.dim) { 17.361 + case 1: res.resize(-100,-100,1,2,0).get_shared_channel(1).fill(255); break; 17.362 + case 2: break; 17.363 + case 3: res.channels(0,1).get_shared_channel(1).fill(255); break; 17.364 + case 4: res.get_shared_channel(1) = res.get_shared_channel(3); res.channels(0,1); break; 17.365 + default: res.channels(0,1).get_shared_channel(1).fill(255); 17.366 + } break; 17.367 + case 3: 17.368 + switch (res.dim) { 17.369 + case 1: res.resize(-100,-100,1,3); break; 17.370 + case 2: res.channel(0).resize(-100,-100,1,3); break; 17.371 + case 3: break; 17.372 + case 4: res.channels(0,2); break; 17.373 + default: res.channels(0,2); 17.374 + } break; 17.375 + case 4: 17.376 + switch (res.dim) { 17.377 + case 1: res.resize(-100,-100,1,4).get_shared_channel(3).fill(255); break; 17.378 + case 2: 17.379 + res.resize(-100,-100,1,4,0); 17.380 + res.get_shared_channel(3) = res.get_shared_channel(1); 17.381 + res.get_shared_channel(1) = res.get_shared_channel(0); 17.382 + res.get_shared_channel(2) = res.get_shared_channel(0); 17.383 + break; 17.384 + case 3: res.resize(-100,-100,1,4,0).get_shared_channel(3).fill(255); break; 17.385 + case 4: break; 17.386 + default: res.resize(-100,-100,1,4,0); 17.387 + } break; 17.388 + } 17.389 + guchar *ptrd = ptr0; 17.390 + cimg_forXY(res,x,y) cimg_forV(res,k) *(ptrd++) = (guchar)res(x,y,k); 17.391 + gimp_preview_draw_buffer(preview,ptr0,width*channels); 17.392 + g_free(ptr0); 17.393 + } 17.394 +} 17.395 + 17.396 +// Define event functions for GUI. 17.397 +//-------------------------------- 17.398 + 17.399 +// Handle responses to the parameter widgets. 17.400 +void on_float_parameter_changed(GtkAdjustment *scale, gpointer user_data) { 17.401 + const unsigned int arg = *(unsigned int*)user_data; 17.402 + double value = 0; 17.403 + gimp_double_adjustment_update(scale,&value); 17.404 + char s_value[1024] = { 0 }; 17.405 + std::sprintf(s_value,"%g",value); 17.406 + set_filter_parameter(get_current_filter(),arg,s_value); 17.407 + return_create_dialog = true; 17.408 +} 17.409 + 17.410 +void on_int_parameter_changed(GtkAdjustment *scale, gpointer user_data) { 17.411 + const unsigned int arg = *(unsigned int*)user_data; 17.412 + int value = 0; 17.413 + gimp_int_adjustment_update(scale,&value); 17.414 + char s_value[1024] = { 0 }; 17.415 + std::sprintf(s_value,"%d",value); 17.416 + set_filter_parameter(get_current_filter(),arg,s_value); 17.417 + return_create_dialog = true; 17.418 +} 17.419 + 17.420 +void on_bool_parameter_changed(GtkCheckButton *checkbutton, gpointer user_data) { 17.421 + const unsigned int arg = *(unsigned int*)user_data; 17.422 + int value = 0; 17.423 + g_object_get(checkbutton,"active",&value,NULL); 17.424 + char s_value[1024] = { 0 }; 17.425 + std::sprintf(s_value,"%d",value?1:0); 17.426 + set_filter_parameter(get_current_filter(),arg,s_value); 17.427 + return_create_dialog = true; 17.428 +} 17.429 + 17.430 +void on_list_parameter_changed(GtkComboBox *combobox, gpointer user_data) { 17.431 + const unsigned int arg = *(unsigned int*)user_data; 17.432 + int value = 0; 17.433 + g_object_get(combobox,"active",&value,NULL); 17.434 + char s_value[1024] = { 0 }; 17.435 + std::sprintf(s_value,"%d",value); 17.436 + set_filter_parameter(get_current_filter(),arg,s_value); 17.437 + return_create_dialog = true; 17.438 +} 17.439 + 17.440 +void on_text_parameter_changed(GtkButton *button, gpointer user_data) { 17.441 + button = 0; 17.442 + const unsigned int arg = *(unsigned int*)user_data; 17.443 + GtkWidget *entry = *((GtkWidget**)user_data+1); 17.444 + const char *s_value = gtk_entry_get_text(GTK_ENTRY(entry)); 17.445 + set_filter_parameter(get_current_filter(),arg,s_value); 17.446 + return_create_dialog = true; 17.447 +} 17.448 + 17.449 +void on_file_parameter_changed(GtkFileChooserButton *widget, gpointer user_data){ 17.450 + const unsigned int arg = *(unsigned int*)user_data; 17.451 + const char 17.452 + *const filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)), 17.453 + *s_value = filename?filename:""; 17.454 + set_filter_parameter(get_current_filter(),arg,s_value); 17.455 + return_create_dialog = true; 17.456 +} 17.457 + 17.458 +void on_color_parameter_changed(GtkColorButton *widget, gpointer user_data){ 17.459 + const unsigned int arg = *(unsigned int*)user_data; 17.460 + GdkColor color; 17.461 + gtk_color_button_get_color(GTK_COLOR_BUTTON(widget),&color); 17.462 + char s_value[1024] = { 0 }; 17.463 + if (gtk_color_button_get_use_alpha(GTK_COLOR_BUTTON(widget))) 17.464 + std::sprintf(s_value,"%d,%d,%d,%d", 17.465 + color.red>>8,color.green>>8,color.blue>>8,gtk_color_button_get_alpha(GTK_COLOR_BUTTON(widget))>>8); 17.466 + else std::sprintf(s_value,"%d,%d,%d", 17.467 + color.red>>8,color.green>>8,color.blue>>8); 17.468 + set_filter_parameter(get_current_filter(),arg,s_value); 17.469 + return_create_dialog = true; 17.470 +} 17.471 + 17.472 +// Create parameter GUI for specific chosen filter. 17.473 +//-------------------------------------------------- 17.474 +void create_parameters_gui(const bool reset) { 17.475 + const unsigned int filter = get_current_filter(); 17.476 + 17.477 + // Remove widget in the current frame if necessary. 17.478 + GtkWidget *frame = 0; 17.479 + gimp_get_data("gmic_gui_frame",&frame); 17.480 + if (frame) { 17.481 + GtkWidget *child = GTK_WIDGET(gtk_bin_get_child(GTK_BIN(frame))); 17.482 + if (child) gtk_container_remove(GTK_CONTAINER(frame),child); 17.483 + } 17.484 + 17.485 + GtkWidget *table = 0; 17.486 + if (!filter) { // No filter selected -> Default message. 17.487 + table = gtk_table_new(1,1,false); 17.488 + gtk_widget_show(table); 17.489 + GtkWidget *label = gtk_label_new(NULL); 17.490 + gtk_label_set_markup(GTK_LABEL(label),"<i>Select a filter...</i>"); 17.491 + gtk_widget_show(label); 17.492 + gtk_table_attach(GTK_TABLE(table),label,0,1,0,1, 17.493 + (GtkAttachOptions)(GTK_EXPAND),(GtkAttachOptions)(GTK_EXPAND),0,0); 17.494 + gtk_misc_set_alignment (GTK_MISC(label),0,0.5); 17.495 + gtk_frame_set_label(GTK_FRAME(frame),NULL); 17.496 + } else { // Filter selected -> Build parameter table. 17.497 + GtkWidget *preview = 0; 17.498 + gimp_get_data("gmic_gui_preview",&preview); 17.499 + const unsigned int N = filter - 1; 17.500 + char nlabel[4096] = { 0 }; 17.501 + std::sprintf(nlabel,"<b> %s : </b>",gmic_entries[N].ptr()); 17.502 + GtkWidget *frame_title = gtk_label_new(NULL); 17.503 + gtk_widget_show(frame_title); 17.504 + gtk_label_set_markup(GTK_LABEL(frame_title),nlabel); 17.505 + gtk_frame_set_label_widget(GTK_FRAME(frame),frame_title); 17.506 + 17.507 + char argname[4096] = { 0 }, argtype[4096] = { 0 }, argarg[4096] = { 0 }; 17.508 + unsigned int nb_arguments = 0; 17.509 + for (const char *argument = gmic_arguments[N].ptr(); *argument; ) { 17.510 + if (std::sscanf(argument,"%4095[^=]=%4095[^(](%4095[^)]",argname,argtype,&(argarg[0]=0))>=2) { 17.511 + argument += cimg::strlen(argname) + cimg::strlen(argtype) + cimg::strlen(argarg) + 3; 17.512 + if (*argument) ++argument; 17.513 + ++nb_arguments; 17.514 + } else break; 17.515 + } 17.516 + 17.517 + if (!nb_arguments) { // Selected filter has no parameters -> Default message. 17.518 + table = gtk_table_new(1,1,false); 17.519 + gtk_widget_show(table); 17.520 + GtkWidget *label = gtk_label_new(NULL); 17.521 + gtk_label_set_markup(GTK_LABEL(label),"<i>No parameters to set...</i>"); 17.522 + gtk_widget_show(label); 17.523 + gtk_table_attach(GTK_TABLE(table),label,0,1,0,1, 17.524 + (GtkAttachOptions)(GTK_EXPAND),(GtkAttachOptions)(GTK_EXPAND),0,0); 17.525 + gtk_misc_set_alignment (GTK_MISC(label),0,0.5); 17.526 + } else { // Selected filter has parameters -> Create parameter table. 17.527 + 17.528 + // Create new table for putting parameters inside. 17.529 + table = gtk_table_new(3,nb_arguments,false); 17.530 + gtk_widget_show(table); 17.531 + gtk_table_set_row_spacings(GTK_TABLE(table),6); 17.532 + gtk_table_set_col_spacings(GTK_TABLE(table),6); 17.533 + gtk_container_set_border_width(GTK_CONTAINER(table),8); 17.534 + 17.535 + // Parse arguments list and add recognized one to the table. 17.536 + event_infos = new void*[2*nb_arguments]; 17.537 + int current_parameter = 0, current_line = 0; 17.538 + for (const char *argument = gmic_arguments[N].ptr(); *argument; ) { 17.539 + if (std::sscanf(argument,"%4095[^=]=%4095[^(](%4095[^)]",argname,argtype,&(argarg[0]=0))>=2) { 17.540 + argument += cimg::strlen(argname) + cimg::strlen(argtype) + cimg::strlen(argarg) + 3; 17.541 + if (*argument) ++argument; 17.542 + cimg::strclean(argname); 17.543 + cimg::strclean(argtype); 17.544 + const char *const s_value = get_filter_parameter(filter,current_parameter); 17.545 + 17.546 + // Check for a float-valued parameter -> Create GtkAdjustment. 17.547 + bool found_valid_item = false; 17.548 + if (!found_valid_item && !cimg::strcasecmp(argtype,"float")) { 17.549 + float initial_value = 0, min_value = 0, max_value = 100; 17.550 + std::setlocale(LC_NUMERIC,"C"); 17.551 + std::sscanf(argarg,"%f%*c%f%*c%f",&initial_value,&min_value,&max_value); 17.552 + if (!reset && std::sscanf(s_value,"%f",&initial_value)) {} 17.553 + GtkObject *scale = gimp_scale_entry_new(GTK_TABLE(table),0,current_line,argname,100,6, 17.554 + (gdouble)initial_value,(gdouble)min_value,(gdouble)max_value, 17.555 + 0.1,0.1,2,true,0,0,0,0); 17.556 + event_infos[2*current_parameter] = (void*)current_parameter; 17.557 + event_infos[2*current_parameter+1] = (void*)0; 17.558 + on_float_parameter_changed(GTK_ADJUSTMENT(scale),(void*)(event_infos+2*current_parameter)); 17.559 + g_signal_connect(scale,"value_changed",G_CALLBACK(on_float_parameter_changed), 17.560 + (void*)(event_infos+2*current_parameter)); 17.561 + g_signal_connect_swapped(scale,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 17.562 + found_valid_item = true; 17.563 + ++current_parameter; 17.564 + } 17.565 + 17.566 + // Check for an int-valued parameter -> Create GtkAdjustment. 17.567 + if (!found_valid_item && !cimg::strcasecmp(argtype,"int")) { 17.568 + float initial_value = 0, min_value = 0, max_value = 100; 17.569 + std::setlocale(LC_NUMERIC,"C"); 17.570 + std::sscanf(argarg,"%f%*c%f%*c%f",&initial_value,&min_value,&max_value); 17.571 + if (!reset && std::sscanf(s_value,"%f",&initial_value)) {} 17.572 + GtkObject *scale = gimp_scale_entry_new(GTK_TABLE(table),0,current_line,argname,100,6, 17.573 + (gdouble)(int)initial_value,(gdouble)(int)min_value, 17.574 + (gdouble)(int)max_value, 17.575 + 1,1,0,true,0,0,0,0); 17.576 + event_infos[2*current_parameter] = (void*)current_parameter; 17.577 + event_infos[2*current_parameter+1] = (void*)0; 17.578 + on_int_parameter_changed(GTK_ADJUSTMENT(scale),(void*)(event_infos+2*current_parameter)); 17.579 + g_signal_connect(scale,"value_changed",G_CALLBACK(on_int_parameter_changed), 17.580 + (void*)(event_infos+2*current_parameter)); 17.581 + g_signal_connect_swapped(scale,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 17.582 + found_valid_item = true; 17.583 + ++current_parameter; 17.584 + } 17.585 + 17.586 + // Check for a bool-valued parameter -> Create GtkCheckButton. 17.587 + if (!found_valid_item && !cimg::strcasecmp(argtype,"bool")) { 17.588 + unsigned int initial_value = 0; 17.589 + std::sscanf(argarg,"%u",&initial_value); 17.590 + if (!reset && std::sscanf(s_value,"%u",&initial_value)) {} 17.591 + GtkWidget *checkbutton = gtk_check_button_new_with_label(argname); 17.592 + gtk_widget_show(checkbutton); 17.593 + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbutton),initial_value?true:false); 17.594 + gtk_table_attach(GTK_TABLE(table),checkbutton,0,2,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.595 + event_infos[2*current_parameter] = (void*)current_parameter; 17.596 + event_infos[2*current_parameter+1] = (void*)0; 17.597 + on_bool_parameter_changed(GTK_CHECK_BUTTON(checkbutton),(void*)(event_infos+2*current_parameter)); 17.598 + g_signal_connect(checkbutton,"toggled",G_CALLBACK(on_bool_parameter_changed), 17.599 + (void*)(event_infos+2*current_parameter)); 17.600 + g_signal_connect_swapped(checkbutton,"toggled",G_CALLBACK(gimp_preview_invalidate),preview); 17.601 + found_valid_item = true; 17.602 + ++current_parameter; 17.603 + } 17.604 + 17.605 + // Check for a list-valued parameter -> Create GtkComboBox. 17.606 + if (!found_valid_item && !cimg::strcasecmp(argtype,"choice")) { 17.607 + GtkWidget *label = gtk_label_new(argname); 17.608 + gtk_widget_show(label); 17.609 + gtk_table_attach(GTK_TABLE(table),label,0,1,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.610 + gtk_misc_set_alignment(GTK_MISC(label),0,0.5); 17.611 + GtkWidget *combobox = gtk_combo_box_new_text(); 17.612 + gtk_widget_show(combobox); 17.613 + char s_entry[4096] = { 0 }, end = 0; int err2 = 0; 17.614 + unsigned int initial_value = 0; 17.615 + const char *entries = argarg; 17.616 + if (std::sscanf(entries,"%u",&initial_value)==1) entries+=std::sprintf(s_entry,"%u",initial_value) + 1; 17.617 + while (*entries) { 17.618 + if ((err2 = std::sscanf(entries,"%4095[^,]%c",s_entry,&end))>0) { 17.619 + entries += cimg::strlen(s_entry) + (err2==2?1:0); 17.620 + cimg::strclean(s_entry); 17.621 + strparenthesis(s_entry); 17.622 + gtk_combo_box_append_text(GTK_COMBO_BOX(combobox),s_entry); 17.623 + } else break; 17.624 + } 17.625 + if (!reset && std::sscanf(s_value,"%u",&initial_value)) {} 17.626 + gtk_combo_box_set_active(GTK_COMBO_BOX(combobox),initial_value); 17.627 + gtk_table_attach(GTK_TABLE(table),combobox,1,3,current_line,current_line+1, 17.628 + (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),(GtkAttachOptions)(GTK_FILL),0,0); 17.629 + event_infos[2*current_parameter] = (void*)current_parameter; 17.630 + event_infos[2*current_parameter+1] = (void*)0; 17.631 + on_list_parameter_changed(GTK_COMBO_BOX(combobox),(void*)(event_infos+2*current_parameter)); 17.632 + g_signal_connect(combobox,"changed",G_CALLBACK(on_list_parameter_changed), 17.633 + (void*)(event_infos+2*current_parameter)); 17.634 + g_signal_connect_swapped(combobox,"changed",G_CALLBACK(gimp_preview_invalidate),preview); 17.635 + found_valid_item = true; 17.636 + ++current_parameter; 17.637 + } 17.638 + 17.639 + // Check for a text-valued parameter -> Create GtkEntry. 17.640 + if (!found_valid_item && !cimg::strcasecmp(argtype,"text")) { 17.641 + GtkWidget *label = gtk_label_new(argname); 17.642 + gtk_widget_show(label); 17.643 + gtk_table_attach(GTK_TABLE(table),label,0,1,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.644 + gtk_misc_set_alignment(GTK_MISC(label),0,0.5); 17.645 + GtkWidget *entry = gtk_entry_new_with_max_length(4095); 17.646 + gtk_widget_show(entry); 17.647 + cimg::strclean(argarg); 17.648 + if (!reset && *s_value) gtk_entry_set_text(GTK_ENTRY(entry),s_value); 17.649 + else gtk_entry_set_text(GTK_ENTRY(entry),argarg); 17.650 + gtk_table_attach(GTK_TABLE(table),entry,1,2,current_line,current_line+1, 17.651 + (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),(GtkAttachOptions)0,0,0); 17.652 + GtkWidget *button = gtk_button_new_with_label("Update"); 17.653 + gtk_widget_show(button); 17.654 + gtk_table_attach(GTK_TABLE(table),button,2,3,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.655 + event_infos[2*current_parameter] = (void*)current_parameter; 17.656 + event_infos[2*current_parameter+1] = (void*)entry; 17.657 + on_text_parameter_changed(GTK_BUTTON(button),(void*)(event_infos+2*current_parameter)); 17.658 + g_signal_connect(button,"clicked",G_CALLBACK(on_text_parameter_changed), 17.659 + (void*)(event_infos+2*current_parameter)); 17.660 + g_signal_connect_swapped(button,"clicked",G_CALLBACK(gimp_preview_invalidate),preview); 17.661 + found_valid_item = true; 17.662 + ++current_parameter; 17.663 + } 17.664 + 17.665 + // Check for a filename parameter -> Create GtkFileChooserButton. 17.666 + if (!found_valid_item && !cimg::strcasecmp(argtype,"file")) { 17.667 + GtkWidget *label = gtk_label_new(argname); 17.668 + gtk_widget_show(label); 17.669 + gtk_table_attach(GTK_TABLE(table),label,0,1,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.670 + gtk_misc_set_alignment(GTK_MISC(label),0,0.5); 17.671 + GtkWidget *filechooser = gtk_file_chooser_button_new(argname,GTK_FILE_CHOOSER_ACTION_OPEN); 17.672 + gtk_widget_show(filechooser); 17.673 + cimg::strclean(argarg); 17.674 + if (!reset && *s_value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(filechooser),s_value); 17.675 + else gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(filechooser),argarg); 17.676 + gtk_table_attach(GTK_TABLE(table),filechooser,1,3,current_line,current_line+1, 17.677 + (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),(GtkAttachOptions)0,0,0); 17.678 + event_infos[2*current_parameter] = (void*)current_parameter; 17.679 + event_infos[2*current_parameter+1] = (void*)0; 17.680 + on_file_parameter_changed(GTK_FILE_CHOOSER_BUTTON(filechooser),(void*)(event_infos+2*current_parameter)); 17.681 + g_signal_connect(filechooser,"file-set",G_CALLBACK(on_file_parameter_changed), 17.682 + (void*)(event_infos+2*current_parameter)); 17.683 + g_signal_connect_swapped(filechooser,"file-set",G_CALLBACK(gimp_preview_invalidate),preview); 17.684 + found_valid_item = true; 17.685 + ++current_parameter; 17.686 + } 17.687 + 17.688 + // Check for a color -> Create GtkColorButton. 17.689 + if (!found_valid_item && !cimg::strcasecmp(argtype,"color")) { 17.690 + GtkWidget *hbox = gtk_hbox_new(false,6); 17.691 + gtk_widget_show(hbox); 17.692 + gtk_table_attach(GTK_TABLE(table),hbox,0,2,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.693 + GtkWidget *label = gtk_label_new(argname); 17.694 + gtk_widget_show(label); 17.695 + gtk_box_pack_start(GTK_BOX(hbox),label,false,false,0); 17.696 + GtkWidget *colorchooser = gtk_color_button_new(); 17.697 + gtk_widget_show(colorchooser); 17.698 + gtk_color_button_set_title(GTK_COLOR_BUTTON(colorchooser),argname); 17.699 + gtk_box_pack_start(GTK_BOX(hbox),colorchooser,false,false,0); 17.700 + event_infos[2*current_parameter] = (void*)current_parameter; 17.701 + event_infos[2*current_parameter+1] = (void*)0; 17.702 + cimg::strclean(argarg); 17.703 + unsigned int red = 0, green = 0, blue = 0, alpha = 255; 17.704 + const int err = std::sscanf(argarg,"%u%*c%u%*c%u%*c%u",&red,&green,&blue,&alpha); 17.705 + if (!reset && std::sscanf(s_value,"%u%*c%u%*c%u%*c%u",&red,&green,&blue,&alpha)==err) {} 17.706 + GdkColor col; 17.707 + col.pixel = 0; col.red = red<<8; col.green = green<<8; col.blue = blue<<8; 17.708 + gtk_color_button_set_color(GTK_COLOR_BUTTON(colorchooser),&col); 17.709 + if (err==4) { 17.710 + gtk_color_button_set_use_alpha(GTK_COLOR_BUTTON(colorchooser),true); 17.711 + gtk_color_button_set_alpha(GTK_COLOR_BUTTON(colorchooser),alpha<<8); 17.712 + } else gtk_color_button_set_use_alpha(GTK_COLOR_BUTTON(colorchooser),false); 17.713 + on_color_parameter_changed(GTK_COLOR_BUTTON(colorchooser),(void*)(event_infos+2*current_parameter)); 17.714 + g_signal_connect(colorchooser,"color-set",G_CALLBACK(on_color_parameter_changed), 17.715 + (void*)(event_infos+2*current_parameter)); 17.716 + g_signal_connect_swapped(colorchooser,"color-set",G_CALLBACK(gimp_preview_invalidate),preview); 17.717 + found_valid_item = true; 17.718 + ++current_parameter; 17.719 + } 17.720 + 17.721 + // Check for a note -> Create GtkLabel. 17.722 + if (!found_valid_item && !cimg::strcasecmp(argtype,"note")) { 17.723 + cimg::strclean(argarg); 17.724 + GtkWidget *label = gtk_label_new(NULL); 17.725 + cimg::strescape(argarg); 17.726 + strparenthesis(argarg); 17.727 + gtk_label_set_markup(GTK_LABEL(label),argarg); 17.728 + gtk_label_set_line_wrap(GTK_LABEL(label),true); 17.729 + gtk_widget_show(label); 17.730 + gtk_table_attach(GTK_TABLE(table),label,0,3,current_line,current_line+1,GTK_FILL,GTK_SHRINK,0,0); 17.731 + gtk_misc_set_alignment(GTK_MISC(label),0,0.5); 17.732 + found_valid_item = true; 17.733 + } 17.734 + 17.735 + if (!found_valid_item) { 17.736 + if (get_verbosity_level()>0) 17.737 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Found invalid parameter type '%s' for argument '%s'.\n",argtype,argname); 17.738 + } else ++current_line; 17.739 + } else break; 17.740 + } 17.741 + set_filter_nbparams(filter,current_parameter); 17.742 + } 17.743 + } 17.744 + gtk_container_add(GTK_CONTAINER(frame),table); 17.745 +} 17.746 + 17.747 +// Called when the selected filter changed (in the combo-box). 17.748 +void on_filter_changed(GtkTreeSelection *selection, gpointer user_data) { 17.749 + user_data = 0; 17.750 + GtkTreeIter iter; 17.751 + GtkTreeModel *model; 17.752 + unsigned int choice = 0; 17.753 + if (gtk_tree_selection_get_selected(selection,&model,&iter)) 17.754 + gtk_tree_model_get(model,&iter,0,&choice,-1); 17.755 + set_current_filter(choice); 17.756 + create_parameters_gui(false); 17.757 + return_create_dialog = true; 17.758 +} 17.759 + 17.760 +// Handle responses to the dialog window buttons. 17.761 +void on_verbosity_level_changed(GtkComboBox *combobox, gpointer user_data) { 17.762 + user_data = 0; 17.763 + int value = 0; 17.764 + g_object_get(combobox,"active",&value,NULL); 17.765 + set_verbosity_level(value); 17.766 +} 17.767 + 17.768 +void on_dialog_reset_clicked(GtkButton *widget, gpointer data) { 17.769 + widget = 0; data = 0; 17.770 + create_parameters_gui(true); 17.771 + return_create_dialog = true; 17.772 +} 17.773 + 17.774 +void on_dialog_cancel_clicked(GtkButton *widget, gpointer data) { 17.775 + widget = 0; data = 0; 17.776 + return_create_dialog = false; 17.777 + gtk_main_quit(); 17.778 +} 17.779 + 17.780 +void on_dialog_apply_clicked(GtkButton *widget, gpointer data) { 17.781 + widget = 0; 17.782 + GimpDrawable *drawable = (GimpDrawable*)data; 17.783 + process_image(drawable,0); 17.784 + return_create_dialog = false; 17.785 +} 17.786 + 17.787 +void on_dialog_ok_clicked(GtkButton *widget, gpointer data) { 17.788 + widget = 0; data = 0; 17.789 + gtk_main_quit(); 17.790 +} 17.791 + 17.792 +void on_update_button_clicked(GtkButton *widget, gpointer data) { 17.793 + widget = 0; 17.794 + GtkWidget *dialog = (GtkWidget*)data; 17.795 + char update_filename[1024] = { 0 }, update_command[1024] = { 0 }, src_filename[1024] = { 0 }, dest_filename[1024] = { 0 }; 17.796 + const char 17.797 + *const update_url = "http://www.greyc.ensicaen.fr/~dtschump", 17.798 + *const path_tmp = cimg::temporary_path(); 17.799 + std::sprintf(update_filename,"gmic4gimp_def.%d",gmic_version); 17.800 + std::sprintf(src_filename,"%s/%s",path_tmp,update_filename); 17.801 + std::sprintf(dest_filename,"%s/.%s",path_home,update_filename); 17.802 + if (get_verbosity_level()>0) { 17.803 + std::sprintf(update_command,"wget %s/%s -O %s",update_url,update_filename,src_filename); 17.804 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Running update procedure, with command : %s\n",update_command); 17.805 + } else std::sprintf(update_command,"wget --quiet %s/%s -O %s",update_url,update_filename,src_filename); 17.806 + int status = cimg::system(update_command); 17.807 + status = 0; 17.808 + std::FILE *file_s = std::fopen(src_filename,"r"); 17.809 + bool succeed = false; 17.810 + if (file_s) { 17.811 + unsigned int size_s = 0; 17.812 + std::fseek(file_s,0,SEEK_END); 17.813 + size_s = (unsigned int)std::ftell(file_s); 17.814 + std::rewind(file_s); 17.815 + if (size_s) { 17.816 + std::FILE *file_d = std::fopen(dest_filename,"w"); 17.817 + char *buffer = new char[size_s], sep = 0; 17.818 + if (file_d && 17.819 + std::fread(buffer,sizeof(char),size_s,file_s)==size_s && 17.820 + std::sscanf(buffer,"#@gim%c",&sep)==1 && sep=='p' && 17.821 + std::fwrite(buffer,sizeof(char),size_s,file_d)==size_s) { succeed = true; std::fclose(file_d); } 17.822 + delete[] buffer; 17.823 + } 17.824 + std::fclose(file_s); 17.825 + } 17.826 + if (!succeed) { 17.827 + GtkWidget *message = gtk_message_dialog_new_with_markup(GTK_WINDOW(dialog),GTK_DIALOG_MODAL,GTK_MESSAGE_ERROR,GTK_BUTTONS_OK, 17.828 + "<b>Filters update failed !</b>\n\n" 17.829 + "A valid version of the update file :\n\n" 17.830 + "<i>%s/%s</i>\n\n" 17.831 + " ...could not be retrieved from the G'MIC server.\n\n" 17.832 + "Please check your Internet connection or\n" 17.833 + "try a manual update instead.",update_url,update_filename); 17.834 + gtk_widget_show(message); 17.835 + gtk_dialog_run(GTK_DIALOG(message)); 17.836 + gtk_widget_destroy(message); 17.837 + } else { 17.838 + GtkWidget *message = gtk_message_dialog_new_with_markup(GTK_WINDOW(dialog),GTK_DIALOG_MODAL,GTK_MESSAGE_INFO,GTK_BUTTONS_OK, 17.839 + "<b>Filters update succeed !</b>\n\n" 17.840 + "The G'MIC Toolbox must be restarted now."); 17.841 + gtk_widget_show(message); 17.842 + gtk_dialog_run(GTK_DIALOG(message)); 17.843 + gtk_widget_destroy(message); 17.844 + return_create_dialog = false; 17.845 + set_current_filter(0); 17.846 + gtk_main_quit(); 17.847 + } 17.848 +} 17.849 + 17.850 +// Create main plug-in dialog window and wait for a response. 17.851 +//----------------------------------------------------------- 17.852 +bool create_dialog_gui(GimpDrawable *drawable) { 17.853 + 17.854 + // Init GUI_specific variables 17.855 + gimp_ui_init("gmic",true); 17.856 + event_infos = 0; 17.857 + 17.858 + // Create main plug-in dialog window. 17.859 + GtkWidget 17.860 + *dialog = gimp_dialog_new("The G'MIC Toolbox","gmic",0,(GtkDialogFlags)0,gimp_standard_help_func,"gmic",NULL), 17.861 + *cancel_button = gimp_dialog_add_button(GIMP_DIALOG(dialog),GTK_STOCK_CANCEL,GTK_RESPONSE_CANCEL), 17.862 + *reset_button = gimp_dialog_add_button(GIMP_DIALOG(dialog),GIMP_STOCK_RESET,1), 17.863 + *apply_button = gimp_dialog_add_button(GIMP_DIALOG(dialog),GTK_STOCK_APPLY,GTK_RESPONSE_APPLY), 17.864 + *ok_button = gimp_dialog_add_button(GIMP_DIALOG(dialog),GTK_STOCK_OK,GTK_RESPONSE_OK); 17.865 + gimp_window_set_transient(GTK_WINDOW(dialog)); 17.866 + g_signal_connect(dialog,"close",G_CALLBACK(on_dialog_cancel_clicked),0); 17.867 + g_signal_connect(dialog,"delete-event",G_CALLBACK(on_dialog_cancel_clicked),0); 17.868 + g_signal_connect(cancel_button,"clicked",G_CALLBACK(on_dialog_cancel_clicked),0); 17.869 + g_signal_connect(apply_button,"clicked",G_CALLBACK(on_dialog_apply_clicked),drawable); 17.870 + g_signal_connect(ok_button,"clicked",G_CALLBACK(on_dialog_ok_clicked),0); 17.871 + 17.872 + GtkWidget *dialog_hbox = gtk_hbox_new(false,0); 17.873 + gtk_widget_show(dialog_hbox); 17.874 + gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox),dialog_hbox); 17.875 + 17.876 + // Create the left pane, containing the preview, the show commmand and the update buttons and the author name. 17.877 + GtkWidget *left_pane = gtk_vbox_new(false,4); 17.878 + gtk_widget_show(left_pane); 17.879 + gtk_box_pack_start(GTK_BOX(dialog_hbox),left_pane,true,true,0); 17.880 + 17.881 + GtkWidget *preview = gimp_zoom_preview_new(drawable); 17.882 + gtk_widget_show(preview); 17.883 + gtk_box_pack_start(GTK_BOX(left_pane),preview,true,true,0); 17.884 + gimp_set_data("gmic_gui_preview",&preview,sizeof(GtkWidget*)); 17.885 + g_signal_connect(preview,"invalidated",G_CALLBACK(process_preview),0); 17.886 + g_signal_connect_swapped(apply_button,"clicked",G_CALLBACK(gimp_preview_invalidate),preview); 17.887 + 17.888 + GtkWidget *verbosity_hbuttonbox = gtk_hbutton_box_new(); 17.889 + gtk_widget_show(verbosity_hbuttonbox); 17.890 + gtk_box_pack_start(GTK_BOX(left_pane),verbosity_hbuttonbox,false,false,0); 17.891 + 17.892 + GtkWidget *verbosity_combobox = gtk_combo_box_new_text(); 17.893 + gtk_widget_show(verbosity_combobox); 17.894 + gtk_combo_box_append_text(GTK_COMBO_BOX(verbosity_combobox),"Quiet mode"); 17.895 + gtk_combo_box_append_text(GTK_COMBO_BOX(verbosity_combobox),"Verbose mode"); 17.896 + gtk_combo_box_append_text(GTK_COMBO_BOX(verbosity_combobox),"Debug mode"); 17.897 + gtk_combo_box_set_active(GTK_COMBO_BOX(verbosity_combobox),get_verbosity_level()); 17.898 + gtk_container_add(GTK_CONTAINER(verbosity_hbuttonbox),verbosity_combobox); 17.899 + g_signal_connect(verbosity_combobox,"changed",G_CALLBACK(on_verbosity_level_changed),0); 17.900 + 17.901 + GtkWidget *update_hbuttonbox = gtk_hbutton_box_new(); 17.902 + gtk_widget_show(update_hbuttonbox); 17.903 + gtk_box_pack_start(GTK_BOX(left_pane),update_hbuttonbox,false,false,0); 17.904 + GtkWidget 17.905 + *tmp_button = gtk_button_new_from_stock(GTK_STOCK_REFRESH), 17.906 + *update_image = gtk_button_get_image(GTK_BUTTON(tmp_button)), 17.907 + *update_button = gtk_button_new_with_mnemonic("_Update filters"); 17.908 + gtk_button_set_image(GTK_BUTTON(update_button),update_image); 17.909 + gtk_widget_show(update_button); 17.910 + gtk_container_add(GTK_CONTAINER(update_hbuttonbox),update_button); 17.911 + g_signal_connect(update_button,"clicked",G_CALLBACK(on_update_button_clicked),(void*)dialog); 17.912 + 17.913 + GtkWidget *about_label = gtk_label_new(NULL); 17.914 + gtk_label_set_markup(GTK_LABEL(about_label), 17.915 + "\n<span color=\"#666666\"><small>" 17.916 + "<b>G'MIC</b> is proposed to you\n" 17.917 + " by <i>David Tschumperle</i>" 17.918 + "</small></span>"); 17.919 + gtk_widget_show(about_label); 17.920 + gtk_box_pack_start(GTK_BOX(left_pane),about_label,false,false,0); 17.921 + 17.922 + const unsigned int logo_width = 102, logo_height = 22; 17.923 + GdkPixbuf *pixbuf = gdk_pixbuf_new_from_data(data_logo,GDK_COLORSPACE_RGB,false,8, 17.924 + logo_width,logo_height,3*logo_width,0,0); 17.925 + GtkWidget *image = gtk_image_new_from_pixbuf(pixbuf); 17.926 + gtk_widget_show(image); 17.927 + gtk_box_pack_start(GTK_BOX(left_pane),image,false,false,0); 17.928 + 17.929 + // Create the middle pane, which contains the filters treeview. 17.930 + GtkWidget *middle_pane = gtk_frame_new(NULL); 17.931 + gtk_widget_show(middle_pane); 17.932 + gtk_container_set_border_width(GTK_CONTAINER(middle_pane),4); 17.933 + gtk_widget_set_size_request(middle_pane,250,-1); 17.934 + gtk_box_pack_start(GTK_BOX(dialog_hbox),middle_pane,false,false,0); 17.935 + 17.936 + GtkWidget *scrolledwindow = gtk_scrolled_window_new(NULL,NULL); 17.937 + gtk_widget_show(scrolledwindow); 17.938 + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow),GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); 17.939 + gtk_container_add(GTK_CONTAINER(middle_pane),scrolledwindow); 17.940 + 17.941 + GtkWidget *treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(filter_store)); 17.942 + GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); 17.943 + GtkTreeViewColumn *column = gtk_tree_view_column_new_with_attributes(" Available filters :",renderer,"text",1,NULL); 17.944 + gtk_tree_view_append_column(GTK_TREE_VIEW(treeview),column); 17.945 + 17.946 + GtkTreeSelection *select = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); 17.947 + gtk_tree_selection_set_mode(select,GTK_SELECTION_SINGLE); 17.948 + g_signal_connect(G_OBJECT(select),"changed",G_CALLBACK(on_filter_changed),0); 17.949 + g_signal_connect_swapped(select,"changed",G_CALLBACK(gimp_preview_invalidate),preview); 17.950 + gtk_widget_show(treeview); 17.951 + gtk_container_add(GTK_CONTAINER(scrolledwindow),treeview); 17.952 + g_signal_connect(reset_button,"clicked",G_CALLBACK(on_dialog_reset_clicked),select); 17.953 + g_signal_connect_swapped(reset_button,"clicked",G_CALLBACK(gimp_preview_invalidate),preview); 17.954 + 17.955 + // Create the right pane which contains the parameters frame. 17.956 + GtkWidget *parameters_frame = gtk_frame_new(NULL); 17.957 + gtk_widget_show(parameters_frame); 17.958 + gtk_container_set_border_width(GTK_CONTAINER(parameters_frame),4); 17.959 + gtk_widget_set_size_request(parameters_frame,450,-1); 17.960 + gtk_box_pack_start(GTK_BOX(dialog_hbox),parameters_frame,false,false,0); 17.961 + gimp_set_data("gmic_gui_frame",¶meters_frame,sizeof(GtkWidget*)); 17.962 + create_parameters_gui(false); 17.963 + 17.964 + // Show dialog window and wait for user response. 17.965 + gtk_widget_show(dialog); 17.966 + gtk_main(); 17.967 + 17.968 + // Destroy dialog box widget and free resources. 17.969 + gtk_widget_destroy(dialog); 17.970 + gtk_widget_destroy(tmp_button); 17.971 + if (event_infos) delete[] event_infos; 17.972 + return return_create_dialog; 17.973 +} 17.974 + 17.975 +// 'Run' function needed by GIMP plug-in API. 17.976 +//------------------------------------------- 17.977 +void gmic_run(const gchar *name, gint nparams, const GimpParam *param, gint *nreturn_vals, GimpParam **return_vals) { 17.978 + 17.979 + // Init plug-in variables. 17.980 + static GimpParam values[1]; 17.981 + values[0].type = GIMP_PDB_STATUS; 17.982 + *return_vals = values; 17.983 + *nreturn_vals = 1; 17.984 + name = 0; 17.985 + nparams = 0; 17.986 + GimpRunMode run_mode; 17.987 + run_mode = (GimpRunMode)param[0].data.d_int32; 17.988 + if (run_mode==GIMP_RUN_NONINTERACTIVE) { 17.989 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : ERROR, this plug-in cannot be run in non-interactive mode.\n"); 17.990 + values[0].data.d_status = GIMP_PDB_CALLING_ERROR; 17.991 + return; 17.992 + } 17.993 + gmic_macros = 0; 17.994 + filter_store = 0; 17.995 + return_create_dialog = true; 17.996 + path_home = getenv(cimg_OS!=2?"HOME":"APPDATA"); 17.997 + 17.998 + // Check that no instance of the plug-in is already running. 17.999 + bool is_existing_instance = 0; 17.1000 + gimp_get_data("gmic_instance",&is_existing_instance); 17.1001 + if (is_existing_instance) { 17.1002 + std::fprintf(stderr,"\n*** Plug-in 'gmic4gimp' : Existing instance of the plug-in is already running.\n"); 17.1003 + return; 17.1004 + } 17.1005 + is_existing_instance = true; 17.1006 + gimp_set_data("gmic_instance",&is_existing_instance,sizeof(bool)); 17.1007 + 17.1008 + // Read user-defined configuration files '.gmic_def' and '.gmic', when possible. 17.1009 + unsigned size_update = 0, size_custom = 0, size_def = sizeof(data_gmic4gimp_def); 17.1010 + char filename_update[1024] = { 0 }, filename_custom[1024] = { 0 }; 17.1011 + std::sprintf(filename_update,"%s/.gmic4gimp_def.%d",path_home,gmic_version); 17.1012 + std::sprintf(filename_custom,"%s/.gmic4gimp",path_home); 17.1013 + std::FILE 17.1014 + *file_update = std::fopen(filename_update,"r"), 17.1015 + *file_custom = std::fopen(filename_custom,"r"); 17.1016 + if (file_update) { 17.1017 + std::fseek(file_update,0,SEEK_END); 17.1018 + size_update = (unsigned int)std::ftell(file_update); 17.1019 + std::rewind(file_update); 17.1020 + } 17.1021 + if (file_custom) { 17.1022 + std::fseek(file_custom,0,SEEK_END); 17.1023 + size_custom = (unsigned int)std::ftell(file_custom); 17.1024 + std::rewind(file_custom); 17.1025 + } 17.1026 + const unsigned int size_final = size_update + size_custom + size_def + 1; 17.1027 + char *ptrd = gmic_macros = new char[size_final]; 17.1028 + if (size_custom) { ptrd+=std::fread(ptrd,1,size_custom,file_custom); std::fclose(file_custom); } 17.1029 + if (size_update) { ptrd+=std::fread(ptrd,1,size_update,file_update); std::fclose(file_update); } 17.1030 + if (size_def) { std::memcpy(ptrd,data_gmic4gimp_def,size_def); ptrd+=size_def; } 17.1031 + *ptrd = 0; 17.1032 + 17.1033 + // Parse available G'MIC filters definitions. 17.1034 + GtkTreeIter iter, parent[16]; 17.1035 + filter_store = gtk_tree_store_new(2,G_TYPE_UINT,G_TYPE_STRING); 17.1036 + char line[256*1024] = { 0 }, entry[4096] = { 0 }, command[4096] = { 0 }; 17.1037 + char preview_command[4096] = { 0 }, arguments[4096] = { 0 }; 17.1038 + int level = 0; 17.1039 + for (const char *data = gmic_macros; *data; ) { 17.1040 + if (*data=='\n') ++data; 17.1041 + else { 17.1042 + if (std::sscanf(data,"%262143[^\n]\n",line)>0) data += cimg::strlen(line) + 1; 17.1043 + arguments[0] = 0; 17.1044 + if (line[0]=='#') { 17.1045 + const int err = std::sscanf(line,"#@gimp %4095[^:]: %4095[^, ]%*c %4095[^, ]%*c %4095[^\n]", 17.1046 + entry,command,preview_command,arguments); 17.1047 + strparenthesis(entry); 17.1048 + if (err==1) { // If entry is a menu folder. 17.1049 + cimg::strclean(entry); 17.1050 + char *nentry = entry; 17.1051 + while (*nentry=='_') { ++nentry; --level; } 17.1052 + if (level<0) level = 0; 17.1053 + if (level>15) level = 15; 17.1054 + cimg::strclean(nentry); 17.1055 + if (*nentry) { 17.1056 + gtk_tree_store_append(filter_store,&parent[level],level?&parent[level-1]:0); 17.1057 + gtk_tree_store_set(filter_store,&parent[level],0,0,1,nentry,-1); 17.1058 + ++level; 17.1059 + } 17.1060 + } else if (err>=2) { // If entry is a regular filter. 17.1061 + cimg::strclean(entry); 17.1062 + cimg::strclean(command); 17.1063 + gmic_entries.insert(CImg<char>(entry,cimg::strlen(entry)+1)); 17.1064 + gmic_commands.insert(CImg<char>(command,cimg::strlen(command)+1)); 17.1065 + gmic_arguments.insert(CImg<char>(arguments,cimg::strlen(arguments)+1)); 17.1066 + if (err>=3) { 17.1067 + cimg::strclean(preview_command); 17.1068 + gmic_preview_commands.insert(CImg<char>(preview_command,cimg::strlen(preview_command)+1)); 17.1069 + } 17.1070 + gtk_tree_store_append(filter_store,&iter,level?&parent[level-1]:0); 17.1071 + gtk_tree_store_set(filter_store,&iter,0,gmic_entries.size,1,entry,-1); 17.1072 + } 17.1073 + } 17.1074 + } 17.1075 + } 17.1076 + 17.1077 + // Get currenty selected drawable and run image filter on it. 17.1078 + GimpDrawable *drawable = gimp_drawable_get(param[2].data.d_drawable); 17.1079 + gimp_tile_cache_ntiles(2*(drawable->width/gimp_tile_width()+1)); 17.1080 + if (run_mode==GIMP_RUN_INTERACTIVE) { 17.1081 + if (create_dialog_gui(drawable)) { 17.1082 + process_image(drawable,0); 17.1083 + const char *commandline = get_commandline(false); 17.1084 + if (commandline) { // Remember command line for the next use of the filter. 17.1085 + char s_tmp[256] = { 0 }; 17.1086 + std::sprintf(s_tmp,"gmic_commandline%u",get_current_filter()); 17.1087 + gimp_set_data(s_tmp,commandline,cimg::strlen(commandline)); 17.1088 + } 17.1089 + } 17.1090 + } else if (run_mode==GIMP_RUN_WITH_LAST_VALS) { 17.1091 + const unsigned int filter = get_current_filter(); 17.1092 + if (filter) { 17.1093 + char s_tmp[256] = { 0 }; 17.1094 + std::sprintf(s_tmp,"gmic_commandline%u",filter); 17.1095 + char commandline[4096] = { 0 }; 17.1096 + gimp_get_data(s_tmp,&commandline); 17.1097 + process_image(drawable,commandline); 17.1098 + } 17.1099 + } 17.1100 + 17.1101 + // Free plug-in resources. 17.1102 + delete[] gmic_macros; 17.1103 + values[0].data.d_status = GIMP_PDB_SUCCESS; 17.1104 + is_existing_instance = false; 17.1105 + gimp_set_data("gmic_instance",&is_existing_instance,sizeof(bool)); 17.1106 +} 17.1107 + 17.1108 +// 'Query' function needed by GIMP plug-in API. 17.1109 +//--------------------------------------------- 17.1110 +void gmic_query() { 17.1111 + static const GimpParamDef args[] = { 17.1112 + {GIMP_PDB_INT32, "run_mode", "Interactive, non-interactive"}, 17.1113 + {GIMP_PDB_IMAGE, "image", "(unused)"}, 17.1114 + {GIMP_PDB_DRAWABLE, "drawable", "Drawable to draw on"} 17.1115 + }; 17.1116 + 17.1117 + gimp_install_procedure("gmic", // name 17.1118 + "G'MIC Toolbox", // blurb 17.1119 + "G'MIC Toolbox", // help 17.1120 + "David Tschumperle", // author 17.1121 + "David Tschumperle", // copyright 17.1122 + "2008-12-02", // date 17.1123 + "_G'MIC Toolbox...", // menu_path 17.1124 + "RGB*, GRAY*", // image_types 17.1125 + GIMP_PLUGIN, // type 17.1126 + G_N_ELEMENTS(args), // nparams 17.1127 + 0, // nreturn_vals 17.1128 + args, // params 17.1129 + 0); // return_vals 17.1130 + 17.1131 + gimp_plugin_menu_register("gmic", "<Image>/Filters"); 17.1132 +} 17.1133 + 17.1134 +GimpPlugInInfo PLUG_IN_INFO = { 0, 0, gmic_query, gmic_run }; 17.1135 +MAIN();
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 18.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic4gimp_def.h Mon Aug 03 14:09:20 2009 +0100 18.3 @@ -0,0 +1,2244 @@ 18.4 +/* Define image 'gmic4gimp_def' of size 29101x1x1x1 and type 'const char' */ 18.5 +const char data_gmic4gimp_def[] = { 18.6 + 35, 64, 103, 105, 109, 112, 10, 35, 10, 35, 32, 32, 70, 105, 108, 101, 18.7 + 32, 32, 32, 32, 32, 32, 32, 32, 58, 32, 103, 109, 105, 99, 52, 103, 18.8 + 105, 109, 112, 95, 100, 101, 102, 46, 114, 97, 119, 10, 35, 32, 32, 32, 18.9 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 71, 18.10 + 39, 77, 73, 67, 32, 102, 111, 114, 32, 71, 73, 77, 80, 32, 100, 101, 18.11 + 102, 97, 117, 108, 116, 32, 109, 97, 99, 114, 111, 115, 32, 97, 110, 100, 18.12 + 32, 109, 101, 110, 117, 32, 101, 110, 116, 114, 105, 101, 115, 41, 10, 35, 18.13 + 10, 35, 32, 32, 68, 101, 115, 99, 114, 105, 112, 116, 105, 111, 110, 32, 18.14 + 58, 32, 68, 101, 102, 105, 110, 101, 32, 109, 101, 110, 117, 32, 101, 110, 18.15 + 116, 114, 105, 101, 115, 32, 102, 111, 114, 32, 116, 104, 101, 32, 71, 73, 18.16 + 77, 80, 32, 112, 108, 117, 103, 45, 105, 110, 46, 10, 35, 32, 32, 32, 18.17 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 104, 18.18 + 116, 116, 112, 58, 47, 47, 103, 109, 105, 99, 46, 115, 111, 117, 114, 99, 18.19 + 101, 102, 111, 114, 103, 101, 46, 110, 101, 116, 32, 41, 10, 35, 32, 32, 18.20 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 104, 18.21 + 105, 115, 32, 102, 105, 108, 101, 32, 105, 115, 32, 97, 108, 115, 111, 32, 18.22 + 97, 32, 112, 97, 114, 116, 32, 111, 102, 32, 116, 104, 101, 32, 67, 73, 18.23 + 109, 103, 32, 76, 105, 98, 114, 97, 114, 121, 32, 112, 114, 111, 106, 101, 18.24 + 99, 116, 46, 10, 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.25 + 32, 32, 32, 32, 32, 40, 32, 104, 116, 116, 112, 58, 47, 47, 99, 105, 18.26 + 109, 103, 46, 115, 111, 117, 114, 99, 101, 102, 111, 114, 103, 101, 46, 110, 18.27 + 101, 116, 32, 41, 10, 35, 10, 35, 32, 32, 78, 111, 116, 101, 32, 32, 18.28 + 32, 32, 32, 32, 32, 32, 58, 32, 84, 104, 105, 115, 32, 102, 105, 108, 18.29 + 101, 32, 105, 115, 32, 104, 101, 114, 101, 32, 102, 111, 114, 32, 105, 108, 18.30 + 108, 117, 115, 116, 114, 97, 116, 105, 111, 110, 32, 112, 117, 114, 112, 111, 18.31 + 115, 101, 115, 44, 32, 115, 105, 110, 99, 101, 32, 99, 111, 109, 109, 97, 18.32 + 110, 100, 115, 32, 100, 101, 102, 105, 110, 101, 100, 32, 105, 110, 10, 35, 18.33 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.34 + 116, 104, 101, 32, 100, 101, 102, 97, 117, 108, 116, 32, 109, 97, 99, 114, 18.35 + 111, 32, 102, 105, 108, 101, 32, 97, 114, 101, 32, 97, 108, 114, 101, 97, 18.36 + 100, 121, 32, 112, 114, 101, 115, 101, 110, 116, 32, 98, 121, 32, 100, 101, 18.37 + 102, 97, 117, 108, 116, 32, 105, 110, 32, 71, 39, 77, 73, 67, 46, 10, 18.38 + 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.39 + 32, 84, 104, 101, 110, 44, 32, 101, 120, 112, 108, 105, 99, 105, 116, 32, 18.40 + 105, 110, 99, 108, 117, 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 105, 18.41 + 115, 32, 102, 105, 108, 101, 32, 40, 117, 115, 105, 110, 103, 32, 116, 104, 18.42 + 101, 32, 39, 45, 109, 39, 32, 111, 112, 116, 105, 111, 110, 41, 32, 105, 18.43 + 102, 10, 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.44 + 32, 32, 32, 117, 115, 101, 108, 101, 115, 115, 46, 10, 35, 10, 35, 32, 18.45 + 32, 67, 111, 112, 121, 114, 105, 103, 104, 116, 32, 32, 32, 58, 32, 68, 18.46 + 97, 118, 105, 100, 32, 84, 115, 99, 104, 117, 109, 112, 101, 114, 108, 101, 18.47 + 10, 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.48 + 32, 32, 40, 32, 104, 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 103, 18.49 + 114, 101, 121, 99, 46, 101, 110, 115, 105, 99, 97, 101, 110, 46, 102, 114, 18.50 + 47, 126, 100, 116, 115, 99, 104, 117, 109, 112, 47, 32, 41, 10, 35, 10, 18.51 + 35, 32, 32, 76, 105, 99, 101, 110, 115, 101, 32, 32, 32, 32, 32, 58, 18.52 + 32, 67, 101, 67, 73, 76, 76, 32, 118, 50, 46, 48, 10, 35, 32, 32, 18.53 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 18.54 + 104, 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 99, 101, 99, 105, 108, 18.55 + 108, 46, 105, 110, 102, 111, 47, 108, 105, 99, 101, 110, 99, 101, 115, 47, 18.56 + 76, 105, 99, 101, 110, 99, 101, 95, 67, 101, 67, 73, 76, 76, 95, 86, 18.57 + 50, 45, 101, 110, 46, 104, 116, 109, 108, 32, 41, 10, 35, 10, 35, 32, 18.58 + 32, 84, 104, 105, 115, 32, 115, 111, 102, 116, 119, 97, 114, 101, 32, 105, 18.59 + 115, 32, 103, 111, 118, 101, 114, 110, 101, 100, 32, 98, 121, 32, 116, 104, 18.60 + 101, 32, 67, 101, 67, 73, 76, 76, 32, 32, 108, 105, 99, 101, 110, 115, 18.61 + 101, 32, 117, 110, 100, 101, 114, 32, 70, 114, 101, 110, 99, 104, 32, 108, 18.62 + 97, 119, 32, 97, 110, 100, 10, 35, 32, 32, 97, 98, 105, 100, 105, 110, 18.63 + 103, 32, 98, 121, 32, 116, 104, 101, 32, 114, 117, 108, 101, 115, 32, 111, 18.64 + 102, 32, 100, 105, 115, 116, 114, 105, 98, 117, 116, 105, 111, 110, 32, 111, 18.65 + 102, 32, 102, 114, 101, 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 46, 18.66 + 32, 32, 89, 111, 117, 32, 99, 97, 110, 32, 32, 117, 115, 101, 44, 10, 18.67 + 35, 32, 32, 109, 111, 100, 105, 102, 121, 32, 97, 110, 100, 47, 32, 111, 18.68 + 114, 32, 114, 101, 100, 105, 115, 116, 114, 105, 98, 117, 116, 101, 32, 116, 18.69 + 104, 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 32, 117, 110, 100, 101, 18.70 + 114, 32, 116, 104, 101, 32, 116, 101, 114, 109, 115, 32, 111, 102, 32, 116, 18.71 + 104, 101, 32, 67, 101, 67, 73, 76, 76, 10, 35, 32, 32, 108, 105, 99, 18.72 + 101, 110, 115, 101, 32, 97, 115, 32, 99, 105, 114, 99, 117, 108, 97, 116, 18.73 + 101, 100, 32, 98, 121, 32, 67, 69, 65, 44, 32, 67, 78, 82, 83, 32, 18.74 + 97, 110, 100, 32, 73, 78, 82, 73, 65, 32, 97, 116, 32, 116, 104, 101, 18.75 + 32, 102, 111, 108, 108, 111, 119, 105, 110, 103, 32, 85, 82, 76, 10, 35, 18.76 + 32, 32, 34, 104, 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 99, 101, 18.77 + 99, 105, 108, 108, 46, 105, 110, 102, 111, 34, 46, 10, 35, 10, 35, 32, 18.78 + 32, 65, 115, 32, 97, 32, 99, 111, 117, 110, 116, 101, 114, 112, 97, 114, 18.79 + 116, 32, 116, 111, 32, 116, 104, 101, 32, 97, 99, 99, 101, 115, 115, 32, 18.80 + 116, 111, 32, 116, 104, 101, 32, 115, 111, 117, 114, 99, 101, 32, 99, 111, 18.81 + 100, 101, 32, 97, 110, 100, 32, 32, 114, 105, 103, 104, 116, 115, 32, 116, 18.82 + 111, 32, 99, 111, 112, 121, 44, 10, 35, 32, 32, 109, 111, 100, 105, 102, 18.83 + 121, 32, 97, 110, 100, 32, 114, 101, 100, 105, 115, 116, 114, 105, 98, 117, 18.84 + 116, 101, 32, 103, 114, 97, 110, 116, 101, 100, 32, 98, 121, 32, 116, 104, 18.85 + 101, 32, 108, 105, 99, 101, 110, 115, 101, 44, 32, 117, 115, 101, 114, 115, 18.86 + 32, 97, 114, 101, 32, 112, 114, 111, 118, 105, 100, 101, 100, 32, 111, 110, 18.87 + 108, 121, 10, 35, 32, 32, 119, 105, 116, 104, 32, 97, 32, 108, 105, 109, 18.88 + 105, 116, 101, 100, 32, 119, 97, 114, 114, 97, 110, 116, 121, 32, 32, 97, 18.89 + 110, 100, 32, 116, 104, 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 39, 18.90 + 115, 32, 97, 117, 116, 104, 111, 114, 44, 32, 32, 116, 104, 101, 32, 104, 18.91 + 111, 108, 100, 101, 114, 32, 111, 102, 32, 116, 104, 101, 10, 35, 32, 32, 18.92 + 101, 99, 111, 110, 111, 109, 105, 99, 32, 114, 105, 103, 104, 116, 115, 44, 18.93 + 32, 32, 97, 110, 100, 32, 116, 104, 101, 32, 115, 117, 99, 99, 101, 115, 18.94 + 115, 105, 118, 101, 32, 108, 105, 99, 101, 110, 115, 111, 114, 115, 32, 32, 18.95 + 104, 97, 118, 101, 32, 111, 110, 108, 121, 32, 32, 108, 105, 109, 105, 116, 18.96 + 101, 100, 10, 35, 32, 32, 108, 105, 97, 98, 105, 108, 105, 116, 121, 46, 18.97 + 10, 35, 10, 35, 32, 32, 73, 110, 32, 116, 104, 105, 115, 32, 114, 101, 18.98 + 115, 112, 101, 99, 116, 44, 32, 116, 104, 101, 32, 117, 115, 101, 114, 39, 18.99 + 115, 32, 97, 116, 116, 101, 110, 116, 105, 111, 110, 32, 105, 115, 32, 100, 18.100 + 114, 97, 119, 110, 32, 116, 111, 32, 116, 104, 101, 32, 114, 105, 115, 107, 18.101 + 115, 32, 97, 115, 115, 111, 99, 105, 97, 116, 101, 100, 10, 35, 32, 32, 18.102 + 119, 105, 116, 104, 32, 108, 111, 97, 100, 105, 110, 103, 44, 32, 32, 117, 18.103 + 115, 105, 110, 103, 44, 32, 32, 109, 111, 100, 105, 102, 121, 105, 110, 103, 18.104 + 32, 97, 110, 100, 47, 111, 114, 32, 100, 101, 118, 101, 108, 111, 112, 105, 18.105 + 110, 103, 32, 111, 114, 32, 114, 101, 112, 114, 111, 100, 117, 99, 105, 110, 18.106 + 103, 32, 116, 104, 101, 10, 35, 32, 32, 115, 111, 102, 116, 119, 97, 114, 18.107 + 101, 32, 98, 121, 32, 116, 104, 101, 32, 117, 115, 101, 114, 32, 105, 110, 18.108 + 32, 108, 105, 103, 104, 116, 32, 111, 102, 32, 105, 116, 115, 32, 115, 112, 18.109 + 101, 99, 105, 102, 105, 99, 32, 115, 116, 97, 116, 117, 115, 32, 111, 102, 18.110 + 32, 102, 114, 101, 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 44, 10, 18.111 + 35, 32, 32, 116, 104, 97, 116, 32, 109, 97, 121, 32, 109, 101, 97, 110, 18.112 + 32, 32, 116, 104, 97, 116, 32, 105, 116, 32, 105, 115, 32, 99, 111, 109, 18.113 + 112, 108, 105, 99, 97, 116, 101, 100, 32, 116, 111, 32, 109, 97, 110, 105, 18.114 + 112, 117, 108, 97, 116, 101, 44, 32, 32, 97, 110, 100, 32, 32, 116, 104, 18.115 + 97, 116, 32, 32, 97, 108, 115, 111, 10, 35, 32, 32, 116, 104, 101, 114, 18.116 + 101, 102, 111, 114, 101, 32, 109, 101, 97, 110, 115, 32, 32, 116, 104, 97, 18.117 + 116, 32, 105, 116, 32, 105, 115, 32, 114, 101, 115, 101, 114, 118, 101, 100, 18.118 + 32, 102, 111, 114, 32, 100, 101, 118, 101, 108, 111, 112, 101, 114, 115, 32, 18.119 + 32, 97, 110, 100, 32, 32, 101, 120, 112, 101, 114, 105, 101, 110, 99, 101, 18.120 + 100, 10, 35, 32, 32, 112, 114, 111, 102, 101, 115, 115, 105, 111, 110, 97, 18.121 + 108, 115, 32, 104, 97, 118, 105, 110, 103, 32, 105, 110, 45, 100, 101, 112, 18.122 + 116, 104, 32, 99, 111, 109, 112, 117, 116, 101, 114, 32, 107, 110, 111, 119, 18.123 + 108, 101, 100, 103, 101, 46, 32, 85, 115, 101, 114, 115, 32, 97, 114, 101, 18.124 + 32, 116, 104, 101, 114, 101, 102, 111, 114, 101, 10, 35, 32, 32, 101, 110, 18.125 + 99, 111, 117, 114, 97, 103, 101, 100, 32, 116, 111, 32, 108, 111, 97, 100, 18.126 + 32, 97, 110, 100, 32, 116, 101, 115, 116, 32, 116, 104, 101, 32, 115, 111, 18.127 + 102, 116, 119, 97, 114, 101, 39, 115, 32, 115, 117, 105, 116, 97, 98, 105, 18.128 + 108, 105, 116, 121, 32, 97, 115, 32, 114, 101, 103, 97, 114, 100, 115, 32, 18.129 + 116, 104, 101, 105, 114, 10, 35, 32, 32, 114, 101, 113, 117, 105, 114, 101, 18.130 + 109, 101, 110, 116, 115, 32, 105, 110, 32, 99, 111, 110, 100, 105, 116, 105, 18.131 + 111, 110, 115, 32, 101, 110, 97, 98, 108, 105, 110, 103, 32, 116, 104, 101, 18.132 + 32, 115, 101, 99, 117, 114, 105, 116, 121, 32, 111, 102, 32, 116, 104, 101, 18.133 + 105, 114, 32, 115, 121, 115, 116, 101, 109, 115, 32, 97, 110, 100, 47, 111, 18.134 + 114, 10, 35, 32, 32, 100, 97, 116, 97, 32, 116, 111, 32, 98, 101, 32, 18.135 + 101, 110, 115, 117, 114, 101, 100, 32, 97, 110, 100, 44, 32, 32, 109, 111, 18.136 + 114, 101, 32, 103, 101, 110, 101, 114, 97, 108, 108, 121, 44, 32, 116, 111, 18.137 + 32, 117, 115, 101, 32, 97, 110, 100, 32, 111, 112, 101, 114, 97, 116, 101, 18.138 + 32, 105, 116, 32, 105, 110, 32, 116, 104, 101, 10, 35, 32, 32, 115, 97, 18.139 + 109, 101, 32, 99, 111, 110, 100, 105, 116, 105, 111, 110, 115, 32, 97, 115, 18.140 + 32, 114, 101, 103, 97, 114, 100, 115, 32, 115, 101, 99, 117, 114, 105, 116, 18.141 + 121, 46, 10, 35, 10, 35, 32, 32, 84, 104, 101, 32, 102, 97, 99, 116, 18.142 + 32, 116, 104, 97, 116, 32, 121, 111, 117, 32, 97, 114, 101, 32, 112, 114, 18.143 + 101, 115, 101, 110, 116, 108, 121, 32, 114, 101, 97, 100, 105, 110, 103, 32, 18.144 + 116, 104, 105, 115, 32, 109, 101, 97, 110, 115, 32, 116, 104, 97, 116, 32, 18.145 + 121, 111, 117, 32, 104, 97, 118, 101, 32, 104, 97, 100, 10, 35, 32, 32, 18.146 + 107, 110, 111, 119, 108, 101, 100, 103, 101, 32, 111, 102, 32, 116, 104, 101, 18.147 + 32, 67, 101, 67, 73, 76, 76, 32, 108, 105, 99, 101, 110, 115, 101, 32, 18.148 + 97, 110, 100, 32, 116, 104, 97, 116, 32, 121, 111, 117, 32, 97, 99, 99, 18.149 + 101, 112, 116, 32, 105, 116, 115, 32, 116, 101, 114, 109, 115, 46, 10, 35, 18.150 + 10, 10, 35, 45, 45, 45, 32, 65, 98, 111, 117, 116, 32, 116, 104, 101, 18.151 + 32, 115, 121, 110, 116, 97, 120, 32, 111, 102, 32, 116, 104, 105, 115, 32, 18.152 + 102, 105, 108, 101, 32, 58, 32, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.153 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.154 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.155 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.156 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.157 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 32, 84, 104, 18.158 + 105, 115, 32, 102, 105, 108, 101, 32, 105, 115, 32, 97, 32, 114, 101, 103, 18.159 + 117, 108, 97, 114, 32, 71, 39, 77, 73, 67, 32, 109, 97, 99, 114, 111, 18.160 + 32, 102, 105, 108, 101, 32, 40, 115, 101, 101, 32, 71, 39, 77, 73, 67, 18.161 + 32, 104, 101, 108, 112, 32, 102, 111, 114, 32, 109, 111, 114, 101, 32, 105, 18.162 + 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 115, 10, 35, 32, 111, 110, 18.163 + 32, 119, 114, 105, 116, 116, 105, 110, 103, 32, 71, 39, 77, 73, 67, 32, 18.164 + 109, 97, 99, 114, 111, 115, 41, 46, 32, 69, 97, 99, 104, 32, 108, 105, 18.165 + 110, 101, 32, 98, 101, 103, 105, 110, 110, 105, 110, 103, 32, 119, 105, 116, 18.166 + 104, 32, 39, 35, 64, 103, 105, 109, 112, 39, 32, 100, 101, 102, 105, 110, 18.167 + 101, 115, 32, 97, 32, 102, 105, 108, 116, 101, 114, 32, 101, 110, 116, 114, 18.168 + 121, 10, 35, 32, 105, 110, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 18.169 + 32, 84, 111, 111, 108, 98, 111, 120, 32, 112, 108, 117, 103, 45, 105, 110, 18.170 + 32, 102, 111, 114, 32, 71, 73, 77, 80, 46, 10, 35, 10, 35, 32, 84, 18.171 + 104, 101, 32, 103, 101, 110, 101, 114, 97, 108, 32, 115, 121, 110, 116, 97, 18.172 + 120, 32, 111, 102, 32, 97, 32, 39, 35, 64, 103, 105, 109, 112, 39, 32, 18.173 + 108, 105, 110, 101, 32, 105, 115, 32, 58, 10, 35, 10, 35, 32, 39, 35, 18.174 + 64, 103, 105, 109, 112, 32, 34, 77, 101, 110, 117, 32, 110, 97, 109, 101, 18.175 + 34, 32, 58, 32, 99, 111, 109, 109, 97, 110, 100, 44, 32, 112, 114, 101, 18.176 + 118, 105, 101, 119, 95, 99, 111, 109, 109, 97, 110, 100, 44, 32, 112, 97, 18.177 + 114, 97, 109, 101, 116, 101, 114, 32, 61, 32, 116, 121, 112, 101, 100, 101, 18.178 + 102, 44, 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 50, 32, 61, 32, 18.179 + 116, 121, 112, 101, 100, 101, 102, 44, 32, 46, 46, 46, 39, 10, 35, 10, 18.180 + 35, 32, 119, 104, 101, 114, 101, 32, 39, 99, 111, 109, 109, 97, 110, 100, 18.181 + 39, 32, 105, 115, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 32, 99, 18.182 + 111, 109, 109, 97, 110, 100, 32, 110, 97, 109, 101, 32, 99, 97, 108, 108, 18.183 + 101, 100, 32, 116, 111, 32, 112, 114, 111, 99, 101, 115, 115, 32, 116, 104, 18.184 + 101, 32, 105, 109, 97, 103, 101, 44, 10, 35, 32, 97, 110, 100, 32, 39, 18.185 + 112, 114, 101, 118, 105, 101, 119, 95, 99, 111, 109, 109, 97, 110, 100, 39, 18.186 + 32, 105, 115, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 32, 99, 111, 18.187 + 109, 109, 97, 110, 100, 32, 110, 97, 109, 101, 32, 99, 97, 108, 108, 101, 18.188 + 100, 32, 116, 111, 32, 112, 114, 111, 99, 101, 115, 115, 32, 116, 104, 101, 18.189 + 32, 112, 114, 101, 118, 105, 101, 119, 46, 10, 35, 32, 39, 112, 97, 114, 18.190 + 97, 109, 101, 116, 101, 114, 61, 116, 121, 112, 101, 100, 101, 102, 39, 32, 18.191 + 116, 101, 108, 108, 115, 32, 97, 98, 111, 117, 116, 32, 116, 104, 101, 32, 18.192 + 110, 97, 109, 101, 32, 97, 110, 100, 32, 116, 121, 112, 101, 115, 32, 111, 18.193 + 102, 32, 116, 104, 101, 32, 102, 105, 108, 116, 101, 114, 32, 112, 97, 114, 18.194 + 97, 109, 101, 116, 101, 114, 115, 46, 32, 39, 116, 121, 112, 101, 100, 101, 18.195 + 102, 39, 32, 99, 97, 110, 32, 98, 101, 32, 58, 10, 35, 10, 35, 32, 18.196 + 45, 32, 39, 102, 108, 111, 97, 116, 40, 100, 101, 102, 97, 117, 108, 116, 18.197 + 95, 118, 97, 108, 117, 101, 44, 109, 105, 110, 95, 118, 97, 108, 117, 101, 18.198 + 44, 109, 97, 120, 95, 118, 97, 108, 117, 101, 41, 39, 32, 32, 32, 32, 18.199 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 58, 18.200 + 32, 97, 100, 100, 32, 97, 32, 102, 108, 111, 97, 116, 32, 115, 108, 105, 18.201 + 100, 101, 114, 32, 105, 110, 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 18.202 + 101, 116, 101, 114, 115, 32, 71, 85, 73, 46, 10, 35, 32, 45, 32, 39, 18.203 + 105, 110, 116, 40, 100, 101, 102, 97, 117, 108, 116, 95, 118, 97, 108, 117, 18.204 + 101, 44, 109, 105, 110, 95, 118, 97, 108, 117, 101, 44, 109, 97, 120, 95, 18.205 + 118, 97, 108, 117, 101, 41, 39, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.206 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 58, 32, 97, 100, 18.207 + 100, 32, 97, 32, 105, 110, 116, 32, 115, 108, 105, 100, 101, 114, 32, 105, 18.208 + 110, 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 18.209 + 32, 71, 85, 73, 10, 35, 32, 45, 32, 39, 98, 111, 111, 108, 40, 100, 18.210 + 101, 102, 97, 117, 108, 116, 95, 118, 97, 108, 117, 101, 41, 39, 32, 32, 18.211 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.212 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.213 + 32, 32, 32, 32, 32, 32, 58, 32, 97, 100, 100, 32, 97, 32, 99, 104, 18.214 + 101, 99, 107, 98, 117, 116, 116, 111, 110, 32, 105, 110, 32, 116, 104, 101, 18.215 + 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 32, 71, 85, 73, 46, 18.216 + 10, 35, 32, 45, 32, 39, 99, 104, 111, 105, 99, 101, 40, 91, 100, 101, 18.217 + 102, 97, 117, 108, 116, 95, 105, 110, 100, 105, 99, 101, 93, 44, 34, 67, 18.218 + 104, 111, 105, 99, 101, 48, 34, 44, 34, 67, 104, 111, 105, 99, 101, 49, 18.219 + 34, 44, 46, 46, 46, 44, 34, 67, 104, 111, 105, 99, 101, 78, 34, 41, 18.220 + 39, 32, 58, 32, 97, 100, 100, 32, 97, 32, 99, 111, 109, 98, 111, 98, 18.221 + 111, 120, 32, 105, 110, 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 101, 18.222 + 116, 101, 114, 115, 32, 71, 85, 73, 46, 10, 35, 32, 45, 32, 39, 116, 18.223 + 101, 120, 116, 40, 34, 100, 101, 102, 97, 117, 108, 116, 32, 116, 101, 120, 18.224 + 116, 34, 41, 39, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.225 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.226 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 58, 32, 97, 100, 100, 18.227 + 32, 97, 32, 116, 101, 120, 116, 32, 101, 110, 116, 114, 121, 32, 105, 110, 18.228 + 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 32, 18.229 + 71, 85, 73, 46, 10, 35, 32, 45, 32, 39, 102, 105, 108, 101, 40, 91, 18.230 + 34, 100, 101, 102, 97, 117, 108, 116, 95, 102, 105, 108, 101, 110, 97, 109, 18.231 + 101, 34, 93, 41, 39, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.232 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.233 + 32, 32, 32, 32, 32, 32, 58, 32, 97, 100, 100, 32, 97, 32, 102, 105, 18.234 + 108, 101, 32, 99, 104, 111, 111, 115, 101, 114, 32, 98, 117, 116, 116, 111, 18.235 + 110, 32, 105, 110, 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 101, 116, 18.236 + 101, 114, 115, 32, 71, 85, 73, 46, 10, 35, 32, 45, 32, 39, 99, 111, 18.237 + 108, 111, 114, 40, 100, 101, 102, 97, 117, 108, 116, 82, 44, 100, 101, 102, 18.238 + 97, 117, 108, 116, 71, 44, 100, 101, 102, 97, 117, 108, 116, 66, 91, 44, 18.239 + 100, 101, 102, 97, 117, 108, 116, 65, 93, 41, 39, 32, 32, 32, 32, 32, 18.240 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 58, 32, 97, 100, 100, 32, 18.241 + 97, 32, 99, 111, 108, 111, 114, 32, 99, 104, 111, 111, 115, 101, 114, 32, 18.242 + 98, 117, 116, 116, 111, 110, 32, 105, 110, 32, 116, 104, 101, 32, 112, 97, 18.243 + 114, 97, 109, 101, 116, 101, 114, 115, 32, 71, 85, 73, 46, 10, 35, 32, 18.244 + 45, 32, 39, 110, 111, 116, 101, 40, 34, 67, 111, 109, 109, 101, 110, 116, 18.245 + 34, 41, 39, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.246 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 18.247 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 58, 18.248 + 32, 97, 100, 100, 32, 97, 32, 99, 111, 109, 109, 101, 110, 116, 32, 105, 18.249 + 110, 32, 116, 104, 101, 32, 112, 97, 114, 97, 109, 101, 116, 101, 114, 115, 18.250 + 32, 71, 85, 73, 46, 10, 35, 10, 35, 32, 84, 111, 32, 109, 97, 107, 18.251 + 101, 32, 39, 40, 39, 32, 111, 114, 32, 39, 41, 39, 32, 97, 112, 112, 18.252 + 101, 97, 114, 105, 110, 103, 32, 105, 110, 32, 115, 116, 114, 105, 110, 103, 18.253 + 115, 44, 32, 114, 101, 112, 108, 97, 99, 101, 32, 116, 104, 101, 109, 32, 18.254 + 98, 121, 32, 39, 91, 39, 32, 97, 110, 100, 32, 39, 93, 39, 46, 10, 18.255 + 35, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.256 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.257 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.258 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.259 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.260 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.261 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.262 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 71, 101, 110, 18.263 + 101, 114, 97, 116, 101, 32, 97, 32, 39, 110, 111, 45, 112, 114, 101, 118, 18.264 + 105, 101, 119, 39, 32, 105, 109, 97, 103, 101, 46, 10, 103, 105, 109, 112, 18.265 + 95, 110, 111, 112, 114, 101, 118, 105, 101, 119, 32, 58, 10, 32, 32, 45, 18.266 + 118, 45, 32, 49, 49, 50, 120, 53, 50, 120, 49, 120, 51, 32, 45, 116, 18.267 + 101, 120, 116, 91, 45, 49, 93, 32, 34, 78, 111, 32, 112, 114, 101, 118, 18.268 + 105, 101, 119, 92, 110, 97, 118, 97, 105, 108, 97, 98, 108, 101, 34, 44, 18.269 + 48, 44, 48, 44, 50, 52, 44, 49, 44, 50, 53, 53, 32, 45, 114, 91, 18.270 + 45, 49, 93, 32, 91, 45, 50, 93, 44, 48, 44, 48, 44, 49, 10, 32, 18.271 + 32, 45, 102, 91, 45, 50, 93, 32, 48, 32, 45, 112, 111, 105, 110, 116, 18.272 + 91, 45, 50, 93, 32, 53, 48, 37, 44, 53, 48, 37, 44, 48, 44, 49, 18.273 + 44, 49, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 50, 93, 18.274 + 32, 49, 32, 45, 110, 91, 45, 50, 93, 32, 45, 49, 56, 48, 44, 48, 18.275 + 32, 45, 42, 91, 45, 50, 93, 32, 45, 49, 10, 32, 32, 45, 111, 114, 18.276 + 32, 45, 115, 107, 105, 112, 10, 10, 35, 32, 71, 101, 110, 101, 114, 97, 18.277 + 116, 101, 32, 97, 32, 71, 39, 77, 73, 67, 32, 108, 111, 103, 111, 32, 18.278 + 105, 109, 97, 103, 101, 46, 10, 103, 109, 105, 99, 52, 103, 105, 109, 112, 18.279 + 95, 108, 111, 103, 111, 32, 58, 10, 32, 32, 45, 114, 109, 32, 54, 53, 18.280 + 120, 51, 50, 120, 49, 120, 51, 32, 45, 116, 101, 120, 116, 32, 71, 92, 18.281 + 39, 77, 73, 67, 44, 51, 44, 50, 44, 51, 50, 44, 49, 44, 49, 32, 18.282 + 45, 114, 32, 50, 48, 48, 120, 49, 48, 48, 120, 49, 120, 51, 120, 53, 18.283 + 32, 45, 98, 108, 117, 114, 32, 52, 32, 45, 115, 104, 97, 114, 112, 101, 18.284 + 110, 32, 53, 32, 45, 45, 102, 32, 50, 53, 54, 32, 45, 112, 108, 97, 18.285 + 115, 109, 97, 91, 45, 49, 93, 32, 49, 48, 44, 51, 32, 45, 110, 91, 18.286 + 45, 49, 93, 32, 48, 44, 50, 53, 53, 10, 32, 32, 45, 99, 117, 116, 18.287 + 32, 48, 44, 50, 53, 53, 32, 45, 42, 32, 45, 101, 108, 101, 118, 97, 18.288 + 116, 105, 111, 110, 51, 100, 32, 45, 48, 46, 52, 32, 50, 51, 48, 120, 18.289 + 49, 50, 48, 120, 49, 120, 51, 32, 45, 114, 51, 100, 32, 51, 32, 45, 18.290 + 115, 108, 51, 100, 32, 48, 10, 32, 32, 45, 114, 111, 116, 97, 116, 101, 18.291 + 51, 100, 91, 45, 50, 93, 32, 49, 44, 48, 44, 48, 44, 49, 48, 32, 18.292 + 45, 42, 51, 100, 91, 45, 50, 93, 32, 48, 46, 57, 32, 45, 99, 51, 18.293 + 100, 91, 45, 50, 93, 32, 45, 111, 98, 106, 101, 99, 116, 51, 100, 91, 18.294 + 45, 49, 93, 32, 91, 45, 50, 93, 44, 53, 48, 37, 44, 52, 48, 37, 18.295 + 44, 48, 44, 49, 32, 45, 114, 109, 91, 45, 50, 93, 32, 45, 115, 113, 18.296 + 114, 116, 32, 45, 110, 32, 48, 44, 50, 53, 53, 10, 32, 32, 45, 116, 18.297 + 101, 120, 116, 32, 34, 84, 111, 111, 108, 98, 111, 120, 32, 102, 111, 114, 18.298 + 32, 71, 73, 77, 80, 34, 44, 49, 50, 37, 44, 55, 53, 37, 44, 50, 18.299 + 52, 44, 49, 44, 50, 53, 53, 10, 10, 35, 32, 70, 111, 114, 99, 101, 18.300 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 18.301 + 116, 111, 32, 98, 101, 32, 105, 110, 32, 82, 71, 66, 32, 102, 111, 114, 18.302 + 109, 97, 116, 46, 10, 116, 111, 95, 114, 103, 98, 32, 58, 10, 32, 32, 18.303 + 45, 45, 100, 105, 109, 101, 110, 115, 105, 111, 110, 115, 91, 45, 49, 93, 18.304 + 32, 45, 45, 91, 45, 49, 93, 32, 49, 10, 32, 32, 45, 105, 102, 32, 18.305 + 64, 123, 45, 49, 44, 51, 125, 32, 45, 45, 91, 45, 49, 93, 32, 49, 18.306 + 32, 45, 105, 102, 32, 64, 123, 45, 49, 44, 51, 125, 32, 45, 45, 91, 18.307 + 45, 49, 93, 32, 49, 32, 45, 105, 102, 32, 64, 123, 45, 49, 44, 51, 18.308 + 125, 32, 45, 99, 104, 97, 110, 110, 101, 108, 115, 91, 45, 50, 93, 32, 18.309 + 48, 44, 50, 32, 45, 101, 110, 100, 105, 102, 10, 32, 32, 45, 101, 108, 18.310 + 115, 101, 32, 45, 99, 104, 97, 110, 110, 101, 108, 115, 91, 45, 50, 93, 18.311 + 32, 48, 32, 45, 114, 91, 45, 50, 93, 32, 49, 48, 48, 37, 120, 49, 18.312 + 48, 48, 37, 120, 49, 120, 51, 32, 45, 101, 110, 100, 105, 102, 32, 45, 18.313 + 101, 108, 115, 101, 32, 45, 114, 91, 45, 50, 93, 32, 49, 48, 48, 37, 18.314 + 120, 49, 48, 48, 37, 120, 49, 120, 51, 10, 32, 32, 45, 101, 110, 100, 18.315 + 105, 102, 32, 45, 114, 109, 91, 45, 49, 93, 10, 10, 35, 64, 103, 105, 18.316 + 109, 112, 32, 84, 105, 108, 101, 115, 10, 35, 64, 45, 45, 45, 45, 45, 18.317 + 45, 45, 45, 45, 45, 45, 10, 10, 35, 64, 103, 105, 109, 112, 32, 82, 18.318 + 101, 103, 117, 108, 97, 114, 32, 116, 105, 108, 101, 115, 32, 58, 32, 103, 18.319 + 105, 109, 112, 95, 114, 101, 103, 117, 108, 97, 114, 95, 116, 105, 108, 101, 18.320 + 44, 32, 103, 105, 109, 112, 95, 114, 101, 103, 117, 108, 97, 114, 95, 116, 18.321 + 105, 108, 101, 48, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 18.322 + 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 88, 32, 61, 32, 18.323 + 105, 110, 116, 40, 50, 44, 49, 44, 49, 48, 41, 44, 32, 78, 117, 109, 18.324 + 98, 101, 114, 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 18.325 + 110, 103, 32, 89, 32, 61, 32, 105, 110, 116, 40, 50, 44, 49, 44, 49, 18.326 + 48, 41, 44, 32, 73, 109, 97, 103, 101, 32, 115, 105, 122, 101, 32, 61, 18.327 + 32, 99, 104, 111, 105, 99, 101, 40, 34, 83, 104, 114, 105, 110, 107, 34, 18.328 + 44, 32, 34, 69, 120, 112, 97, 110, 100, 34, 44, 32, 34, 82, 101, 112, 18.329 + 101, 97, 116, 32, 91, 77, 101, 109, 111, 114, 121, 32, 99, 111, 110, 115, 18.330 + 117, 109, 105, 110, 103, 32, 33, 93, 34, 41, 10, 103, 105, 109, 112, 95, 18.331 + 114, 101, 103, 117, 108, 97, 114, 95, 116, 105, 108, 101, 48, 32, 58, 10, 18.332 + 32, 32, 40, 49, 48, 48, 41, 32, 40, 36, 49, 44, 36, 50, 41, 32, 18.333 + 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 32, 45, 47, 91, 45, 50, 18.334 + 93, 32, 64, 123, 45, 49, 44, 49, 125, 32, 45, 114, 109, 91, 45, 49, 18.335 + 93, 32, 45, 114, 91, 45, 50, 93, 32, 64, 45, 49, 37, 44, 64, 45, 18.336 + 49, 37, 44, 49, 44, 49, 48, 48, 37, 44, 50, 32, 45, 114, 109, 91, 18.337 + 45, 49, 93, 32, 45, 97, 114, 114, 97, 121, 32, 36, 49, 44, 36, 50, 18.338 + 10, 103, 105, 109, 112, 95, 114, 101, 103, 117, 108, 97, 114, 95, 116, 105, 18.339 + 108, 101, 49, 32, 58, 10, 32, 32, 40, 49, 48, 48, 41, 32, 40, 36, 18.340 + 49, 44, 36, 50, 41, 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 18.341 + 32, 45, 47, 91, 45, 50, 93, 32, 64, 123, 45, 49, 44, 48, 125, 32, 18.342 + 45, 114, 109, 91, 45, 49, 93, 32, 45, 114, 91, 45, 50, 93, 32, 64, 18.343 + 45, 49, 37, 44, 64, 45, 49, 37, 44, 49, 44, 49, 48, 48, 37, 44, 18.344 + 50, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 97, 114, 114, 97, 121, 18.345 + 32, 36, 49, 44, 36, 50, 10, 103, 105, 109, 112, 95, 114, 101, 103, 117, 18.346 + 108, 97, 114, 95, 116, 105, 108, 101, 50, 32, 58, 10, 32, 32, 45, 97, 18.347 + 114, 114, 97, 121, 32, 36, 49, 44, 36, 50, 10, 103, 105, 109, 112, 95, 18.348 + 114, 101, 103, 117, 108, 97, 114, 95, 116, 105, 108, 101, 32, 58, 10, 32, 18.349 + 32, 45, 103, 105, 109, 112, 95, 114, 101, 103, 117, 108, 97, 114, 95, 116, 18.350 + 105, 108, 101, 36, 51, 32, 36, 49, 44, 36, 50, 10, 10, 35, 64, 103, 18.351 + 105, 109, 112, 32, 70, 97, 100, 101, 100, 32, 116, 105, 108, 101, 115, 32, 18.352 + 58, 32, 103, 105, 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 18.353 + 44, 32, 103, 105, 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 18.354 + 95, 112, 114, 101, 118, 105, 101, 119, 44, 32, 78, 117, 109, 98, 101, 114, 18.355 + 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 18.356 + 88, 32, 61, 32, 105, 110, 116, 40, 50, 44, 49, 44, 49, 48, 41, 44, 18.357 + 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 116, 105, 108, 101, 115, 18.358 + 32, 97, 108, 111, 110, 103, 32, 89, 32, 61, 32, 105, 110, 116, 40, 50, 18.359 + 44, 49, 44, 49, 48, 41, 44, 32, 73, 109, 97, 103, 101, 32, 115, 105, 18.360 + 122, 101, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 34, 83, 104, 114, 18.361 + 105, 110, 107, 34, 44, 32, 34, 69, 120, 112, 97, 110, 100, 34, 44, 32, 18.362 + 34, 82, 101, 112, 101, 97, 116, 32, 91, 77, 101, 109, 111, 114, 121, 32, 18.363 + 99, 111, 110, 115, 117, 109, 105, 110, 103, 32, 33, 93, 34, 41, 44, 32, 18.364 + 70, 97, 100, 105, 110, 103, 32, 115, 116, 97, 114, 116, 32, 61, 32, 102, 18.365 + 108, 111, 97, 116, 40, 56, 48, 44, 49, 44, 49, 48, 48, 41, 44, 32, 18.366 + 70, 97, 100, 105, 110, 103, 32, 101, 110, 100, 32, 61, 32, 102, 108, 111, 18.367 + 97, 116, 40, 57, 48, 44, 49, 44, 49, 48, 48, 41, 10, 103, 105, 109, 18.368 + 112, 95, 97, 114, 114, 97, 121, 95, 116, 105, 108, 101, 32, 58, 10, 32, 18.369 + 32, 45, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 18.370 + 32, 53, 48, 37, 120, 53, 48, 37, 120, 49, 120, 49, 44, 50, 32, 45, 18.371 + 109, 118, 91, 45, 49, 93, 32, 45, 50, 32, 45, 102, 97, 100, 101, 95, 18.372 + 100, 105, 97, 109, 111, 110, 100, 32, 36, 51, 44, 36, 52, 32, 45, 97, 18.373 + 114, 114, 97, 121, 32, 36, 49, 44, 36, 50, 10, 103, 105, 109, 112, 95, 18.374 + 102, 97, 100, 101, 95, 116, 105, 108, 101, 48, 32, 58, 10, 32, 32, 40, 18.375 + 49, 48, 48, 41, 32, 40, 36, 49, 44, 36, 50, 41, 32, 45, 115, 116, 18.376 + 97, 116, 115, 91, 45, 49, 93, 32, 45, 47, 91, 45, 50, 93, 32, 64, 18.377 + 123, 45, 49, 44, 49, 125, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 18.378 + 114, 91, 45, 50, 93, 32, 64, 45, 49, 37, 44, 64, 45, 49, 37, 44, 18.379 + 49, 44, 49, 48, 48, 37, 44, 50, 32, 45, 114, 109, 91, 45, 49, 93, 18.380 + 32, 45, 103, 105, 109, 112, 95, 97, 114, 114, 97, 121, 95, 116, 105, 108, 18.381 + 101, 32, 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 52, 10, 103, 105, 18.382 + 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 49, 32, 58, 10, 18.383 + 32, 32, 40, 49, 48, 48, 41, 32, 40, 36, 49, 44, 36, 50, 41, 32, 18.384 + 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 32, 45, 47, 91, 45, 50, 18.385 + 93, 32, 64, 123, 45, 49, 44, 48, 125, 32, 45, 114, 109, 91, 45, 49, 18.386 + 93, 32, 45, 114, 91, 45, 50, 93, 32, 64, 45, 49, 37, 44, 64, 45, 18.387 + 49, 37, 44, 49, 44, 49, 48, 48, 37, 44, 50, 32, 45, 114, 109, 91, 18.388 + 45, 49, 93, 32, 45, 103, 105, 109, 112, 95, 97, 114, 114, 97, 121, 95, 18.389 + 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 52, 18.390 + 10, 103, 105, 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 50, 18.391 + 32, 58, 10, 32, 32, 45, 103, 105, 109, 112, 95, 97, 114, 114, 97, 121, 18.392 + 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 18.393 + 52, 10, 103, 105, 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 18.394 + 95, 112, 114, 101, 118, 105, 101, 119, 32, 58, 10, 32, 32, 45, 103, 105, 18.395 + 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 48, 32, 36, 49, 18.396 + 44, 36, 50, 44, 36, 52, 44, 36, 53, 10, 103, 105, 109, 112, 95, 102, 18.397 + 97, 100, 101, 95, 116, 105, 108, 101, 32, 58, 10, 32, 32, 45, 103, 105, 18.398 + 109, 112, 95, 102, 97, 100, 101, 95, 116, 105, 108, 101, 36, 51, 32, 36, 18.399 + 49, 44, 36, 50, 44, 36, 52, 44, 36, 53, 10, 10, 35, 64, 103, 105, 18.400 + 109, 112, 32, 77, 105, 114, 114, 111, 114, 32, 116, 105, 108, 101, 115, 32, 18.401 + 58, 32, 103, 105, 109, 112, 95, 109, 105, 114, 114, 111, 114, 95, 116, 105, 18.402 + 108, 101, 44, 32, 103, 105, 109, 112, 95, 109, 105, 114, 114, 111, 114, 95, 18.403 + 116, 105, 108, 101, 48, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 18.404 + 32, 105, 116, 101, 114, 97, 116, 105, 111, 110, 115, 32, 61, 32, 105, 110, 18.405 + 116, 40, 50, 44, 50, 44, 49, 48, 41, 44, 32, 69, 120, 112, 97, 110, 18.406 + 100, 32, 115, 105, 122, 101, 32, 61, 32, 98, 111, 111, 108, 40, 48, 41, 18.407 + 10, 103, 105, 109, 112, 95, 109, 105, 114, 114, 111, 114, 95, 116, 105, 108, 18.408 + 101, 48, 32, 58, 10, 32, 32, 40, 50, 41, 32, 40, 36, 49, 41, 32, 18.409 + 45, 45, 91, 45, 49, 93, 32, 49, 32, 45, 112, 111, 119, 91, 45, 50, 18.410 + 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 18.411 + 45, 100, 105, 109, 101, 110, 115, 105, 111, 110, 115, 91, 45, 50, 93, 32, 18.412 + 45, 47, 91, 45, 49, 93, 32, 64, 45, 50, 32, 45, 114, 91, 45, 51, 18.413 + 93, 32, 64, 123, 45, 49, 44, 48, 125, 44, 64, 123, 45, 49, 44, 49, 18.414 + 125, 44, 49, 44, 49, 48, 48, 37, 44, 50, 32, 45, 114, 109, 91, 45, 18.415 + 49, 44, 45, 50, 93, 32, 45, 109, 105, 114, 114, 111, 114, 95, 116, 105, 18.416 + 108, 101, 32, 36, 49, 10, 103, 105, 109, 112, 95, 109, 105, 114, 114, 111, 18.417 + 114, 95, 116, 105, 108, 101, 49, 32, 58, 10, 32, 32, 45, 109, 105, 114, 18.418 + 114, 111, 114, 95, 116, 105, 108, 101, 32, 36, 49, 10, 103, 105, 109, 112, 18.419 + 95, 109, 105, 114, 114, 111, 114, 95, 116, 105, 108, 101, 32, 58, 10, 32, 18.420 + 32, 45, 103, 105, 109, 112, 95, 109, 105, 114, 114, 111, 114, 95, 116, 105, 18.421 + 108, 101, 36, 50, 32, 36, 49, 10, 10, 35, 64, 103, 105, 109, 112, 32, 18.422 + 73, 109, 97, 103, 101, 32, 103, 114, 105, 100, 32, 58, 32, 103, 105, 109, 18.423 + 112, 95, 105, 109, 97, 103, 101, 95, 103, 114, 105, 100, 44, 32, 103, 105, 18.424 + 109, 112, 95, 105, 109, 97, 103, 101, 95, 103, 114, 105, 100, 44, 32, 78, 18.425 + 117, 109, 98, 101, 114, 32, 111, 102, 32, 99, 101, 108, 108, 115, 32, 97, 18.426 + 108, 111, 110, 103, 32, 88, 32, 61, 32, 105, 110, 116, 40, 49, 48, 44, 18.427 + 49, 44, 49, 48, 48, 41, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 18.428 + 102, 32, 99, 101, 108, 108, 115, 32, 97, 108, 111, 110, 103, 32, 89, 32, 18.429 + 61, 32, 105, 110, 116, 40, 49, 48, 44, 49, 44, 49, 48, 48, 41, 10, 18.430 + 103, 105, 109, 112, 95, 105, 109, 97, 103, 101, 95, 103, 114, 105, 100, 32, 18.431 + 58, 10, 32, 32, 45, 45, 100, 105, 109, 101, 110, 115, 105, 111, 110, 115, 18.432 + 32, 40, 64, 123, 45, 49, 44, 48, 125, 41, 32, 40, 64, 123, 45, 50, 18.433 + 44, 49, 125, 41, 32, 45, 47, 91, 45, 50, 93, 32, 36, 49, 32, 45, 18.434 + 47, 91, 45, 49, 93, 32, 36, 50, 32, 45, 114, 111, 117, 110, 100, 91, 18.435 + 45, 50, 44, 45, 49, 93, 32, 49, 32, 45, 114, 109, 91, 45, 51, 93, 18.436 + 32, 45, 114, 101, 118, 101, 114, 115, 101, 10, 32, 32, 45, 103, 114, 105, 18.437 + 100, 32, 64, 45, 50, 44, 64, 45, 51, 32, 45, 114, 109, 91, 45, 51, 18.438 + 45, 45, 50, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 84, 105, 108, 18.439 + 101, 32, 114, 111, 116, 97, 116, 105, 111, 110, 32, 58, 32, 103, 105, 109, 18.440 + 112, 95, 116, 105, 108, 101, 95, 114, 111, 116, 97, 116, 105, 111, 110, 44, 18.441 + 32, 103, 105, 109, 112, 95, 116, 105, 108, 101, 95, 114, 111, 116, 97, 116, 18.442 + 105, 111, 110, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 99, 18.443 + 101, 108, 108, 115, 32, 97, 108, 111, 110, 103, 32, 88, 32, 61, 32, 105, 18.444 + 110, 116, 40, 53, 44, 49, 44, 56, 48, 41, 44, 32, 78, 117, 109, 98, 18.445 + 101, 114, 32, 111, 102, 32, 99, 101, 108, 108, 115, 32, 97, 108, 111, 110, 18.446 + 103, 32, 89, 32, 61, 32, 105, 110, 116, 40, 53, 44, 49, 44, 56, 48, 18.447 + 41, 44, 32, 82, 111, 116, 97, 116, 105, 111, 110, 32, 97, 110, 103, 108, 18.448 + 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 53, 44, 48, 44, 51, 54, 18.449 + 48, 41, 10, 103, 105, 109, 112, 95, 116, 105, 108, 101, 95, 114, 111, 116, 18.450 + 97, 116, 105, 111, 110, 32, 58, 10, 32, 32, 45, 45, 100, 105, 109, 101, 18.451 + 110, 115, 105, 111, 110, 115, 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 18.452 + 50, 32, 45, 115, 112, 108, 105, 116, 95, 116, 105, 108, 101, 32, 36, 49, 18.453 + 44, 36, 50, 32, 45, 114, 111, 116, 97, 116, 101, 91, 49, 45, 45, 49, 18.454 + 93, 32, 36, 51, 32, 45, 97, 112, 112, 101, 110, 100, 95, 116, 105, 108, 18.455 + 101, 32, 36, 49, 44, 36, 50, 32, 45, 114, 91, 45, 49, 93, 32, 64, 18.456 + 45, 50, 44, 50, 32, 45, 114, 109, 91, 45, 50, 93, 10, 10, 35, 64, 18.457 + 103, 105, 109, 112, 32, 80, 115, 121, 99, 104, 101, 100, 101, 108, 105, 99, 18.458 + 32, 102, 97, 100, 101, 100, 32, 116, 105, 108, 101, 115, 32, 58, 32, 103, 18.459 + 105, 109, 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 115, 44, 18.460 + 32, 103, 105, 109, 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 18.461 + 115, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 116, 105, 108, 18.462 + 101, 115, 32, 97, 108, 111, 110, 103, 32, 88, 32, 61, 32, 105, 110, 116, 18.463 + 40, 50, 44, 49, 44, 49, 48, 41, 44, 32, 78, 117, 109, 98, 101, 114, 18.464 + 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 18.465 + 89, 32, 61, 32, 105, 110, 116, 40, 50, 44, 49, 44, 49, 48, 41, 44, 18.466 + 32, 65, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 18.467 + 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 73, 109, 97, 103, 101, 32, 18.468 + 115, 105, 122, 101, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 34, 83, 18.469 + 104, 114, 105, 110, 107, 34, 44, 32, 34, 69, 120, 112, 97, 110, 100, 34, 18.470 + 44, 32, 34, 82, 101, 112, 101, 97, 116, 32, 91, 77, 101, 109, 111, 114, 18.471 + 121, 32, 99, 111, 110, 115, 117, 109, 105, 110, 103, 32, 33, 93, 34, 41, 18.472 + 10, 95, 103, 105, 109, 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 18.473 + 101, 115, 32, 58, 10, 32, 32, 45, 102, 102, 116, 32, 45, 116, 114, 97, 18.474 + 110, 115, 108, 97, 116, 101, 32, 53, 48, 37, 120, 53, 48, 37, 44, 48, 18.475 + 44, 48, 44, 50, 32, 45, 114, 111, 116, 97, 116, 101, 32, 36, 51, 32, 18.476 + 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 32, 45, 53, 48, 37, 44, 18.477 + 45, 53, 48, 37, 44, 48, 44, 48, 44, 50, 32, 45, 105, 102, 102, 116, 18.478 + 32, 45, 107, 91, 48, 93, 32, 45, 110, 32, 48, 44, 50, 53, 53, 32, 18.479 + 45, 97, 114, 114, 97, 121, 32, 36, 49, 44, 36, 50, 10, 103, 105, 109, 18.480 + 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 115, 48, 32, 58, 18.481 + 10, 32, 32, 40, 49, 48, 48, 41, 32, 40, 36, 49, 44, 36, 50, 41, 18.482 + 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 32, 45, 47, 91, 45, 18.483 + 50, 93, 32, 64, 123, 45, 49, 44, 49, 125, 32, 45, 114, 109, 91, 45, 18.484 + 49, 93, 32, 45, 114, 91, 45, 50, 93, 32, 64, 45, 49, 37, 44, 64, 18.485 + 45, 49, 37, 44, 49, 44, 49, 48, 48, 37, 44, 50, 32, 45, 114, 109, 18.486 + 91, 45, 49, 93, 32, 45, 95, 103, 105, 109, 112, 95, 112, 115, 121, 99, 18.487 + 104, 101, 116, 105, 108, 101, 115, 32, 36, 49, 44, 36, 50, 44, 36, 51, 18.488 + 10, 103, 105, 109, 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 18.489 + 115, 49, 32, 58, 10, 32, 32, 40, 49, 48, 48, 41, 32, 40, 36, 49, 18.490 + 44, 36, 50, 41, 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 32, 18.491 + 45, 47, 91, 45, 50, 93, 32, 64, 123, 45, 49, 44, 48, 125, 32, 45, 18.492 + 114, 109, 91, 45, 49, 93, 32, 45, 114, 91, 45, 50, 93, 32, 64, 45, 18.493 + 49, 37, 44, 64, 45, 49, 37, 44, 49, 44, 49, 48, 48, 37, 44, 50, 18.494 + 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 95, 103, 105, 109, 112, 95, 18.495 + 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 115, 32, 36, 49, 44, 36, 18.496 + 50, 44, 36, 51, 10, 103, 105, 109, 112, 95, 112, 115, 121, 99, 104, 101, 18.497 + 116, 105, 108, 101, 115, 50, 32, 58, 10, 32, 32, 45, 95, 103, 105, 109, 18.498 + 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 115, 32, 36, 49, 18.499 + 44, 36, 50, 44, 36, 51, 10, 103, 105, 109, 112, 95, 112, 115, 121, 99, 18.500 + 104, 101, 116, 105, 108, 101, 115, 32, 58, 10, 32, 32, 45, 103, 105, 109, 18.501 + 112, 95, 112, 115, 121, 99, 104, 101, 116, 105, 108, 101, 115, 36, 52, 32, 18.502 + 36, 49, 44, 36, 50, 44, 36, 51, 10, 10, 35, 64, 103, 105, 109, 112, 18.503 + 32, 84, 105, 108, 101, 32, 110, 111, 114, 109, 97, 108, 105, 122, 97, 116, 18.504 + 105, 111, 110, 32, 58, 32, 103, 105, 109, 112, 95, 116, 105, 108, 101, 95, 18.505 + 110, 111, 114, 109, 97, 108, 105, 122, 101, 44, 32, 103, 105, 109, 112, 95, 18.506 + 116, 105, 108, 101, 95, 110, 111, 114, 109, 97, 108, 105, 122, 101, 44, 32, 18.507 + 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 99, 101, 108, 108, 115, 32, 18.508 + 97, 108, 111, 110, 103, 32, 88, 32, 61, 32, 105, 110, 116, 40, 50, 53, 18.509 + 44, 49, 44, 56, 48, 41, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 18.510 + 102, 32, 99, 101, 108, 108, 115, 32, 97, 108, 111, 110, 103, 32, 89, 32, 18.511 + 61, 32, 105, 110, 116, 40, 50, 53, 44, 49, 44, 56, 48, 41, 10, 103, 18.512 + 105, 109, 112, 95, 116, 105, 108, 101, 95, 110, 111, 114, 109, 97, 108, 105, 18.513 + 122, 101, 32, 58, 10, 32, 32, 45, 45, 100, 105, 109, 101, 110, 115, 105, 18.514 + 111, 110, 115, 32, 45, 109, 118, 91, 45, 49, 93, 32, 48, 32, 45, 45, 18.515 + 99, 104, 97, 110, 110, 101, 108, 115, 91, 45, 49, 93, 32, 48, 44, 50, 18.516 + 32, 45, 99, 104, 97, 110, 110, 101, 108, 115, 91, 45, 50, 93, 32, 51, 18.517 + 10, 32, 32, 45, 115, 112, 108, 105, 116, 95, 116, 105, 108, 101, 32, 36, 18.518 + 49, 44, 36, 50, 32, 45, 110, 91, 50, 45, 45, 49, 93, 32, 48, 44, 18.519 + 50, 53, 53, 32, 45, 97, 112, 112, 101, 110, 100, 95, 116, 105, 108, 101, 18.520 + 32, 36, 49, 44, 36, 50, 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 18.521 + 50, 32, 45, 97, 91, 45, 50, 44, 45, 49, 93, 32, 118, 32, 45, 114, 18.522 + 91, 45, 49, 93, 32, 64, 45, 50, 44, 48, 44, 48, 44, 48, 32, 45, 18.523 + 114, 109, 91, 45, 50, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 84, 18.524 + 97, 113, 117, 105, 110, 32, 112, 117, 122, 122, 108, 101, 32, 58, 32, 116, 18.525 + 97, 113, 117, 105, 110, 44, 32, 116, 97, 113, 117, 105, 110, 44, 32, 78, 18.526 + 117, 109, 98, 101, 114, 32, 111, 102, 32, 88, 45, 115, 117, 98, 100, 105, 18.527 + 118, 105, 115, 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 55, 44, 18.528 + 49, 44, 50, 48, 41, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 18.529 + 32, 89, 45, 115, 117, 98, 100, 105, 118, 105, 115, 105, 111, 110, 115, 32, 18.530 + 61, 32, 105, 110, 116, 40, 55, 44, 49, 44, 50, 48, 41, 10, 10, 35, 18.531 + 64, 103, 105, 109, 112, 32, 82, 97, 110, 100, 111, 109, 32, 97, 114, 114, 18.532 + 97, 121, 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 58, 32, 103, 105, 18.533 + 109, 112, 95, 114, 97, 110, 100, 111, 109, 116, 105, 108, 101, 115, 44, 32, 18.534 + 103, 105, 109, 112, 95, 114, 97, 110, 100, 111, 109, 116, 105, 108, 101, 115, 18.535 + 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 115, 111, 117, 114, 18.536 + 99, 101, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 88, 18.537 + 32, 61, 32, 105, 110, 116, 40, 53, 44, 49, 44, 50, 48, 41, 44, 32, 18.538 + 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 115, 111, 117, 114, 99, 101, 18.539 + 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 89, 32, 61, 18.540 + 32, 105, 110, 116, 40, 53, 44, 49, 44, 50, 48, 41, 44, 32, 78, 117, 18.541 + 109, 98, 101, 114, 32, 111, 102, 32, 100, 101, 115, 116, 105, 110, 97, 116, 18.542 + 105, 111, 110, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 18.543 + 88, 32, 61, 32, 105, 110, 116, 40, 55, 44, 49, 44, 50, 48, 41, 44, 18.544 + 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 100, 101, 115, 116, 105, 18.545 + 110, 97, 116, 105, 111, 110, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 18.546 + 110, 103, 32, 89, 32, 61, 32, 105, 110, 116, 40, 55, 44, 49, 44, 50, 18.547 + 48, 41, 10, 103, 105, 109, 112, 95, 114, 97, 110, 100, 111, 109, 116, 105, 18.548 + 108, 101, 115, 32, 58, 10, 32, 32, 45, 115, 112, 108, 105, 116, 95, 116, 18.549 + 105, 108, 101, 32, 36, 49, 44, 36, 50, 32, 40, 36, 49, 41, 32, 45, 18.550 + 42, 91, 45, 49, 93, 32, 36, 50, 10, 32, 32, 45, 114, 101, 112, 101, 18.551 + 97, 116, 32, 36, 51, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 52, 18.552 + 32, 40, 64, 63, 41, 32, 45, 42, 91, 45, 49, 93, 32, 64, 45, 50, 18.553 + 32, 45, 114, 111, 117, 110, 100, 91, 45, 49, 93, 32, 49, 32, 45, 105, 18.554 + 91, 45, 51, 93, 32, 91, 64, 45, 49, 93, 32, 45, 114, 109, 91, 45, 18.555 + 49, 93, 32, 45, 100, 111, 110, 101, 32, 45, 100, 111, 110, 101, 10, 32, 18.556 + 32, 45, 45, 91, 45, 49, 93, 32, 49, 32, 45, 114, 109, 91, 48, 45, 18.557 + 64, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 97, 112, 18.558 + 112, 101, 110, 100, 95, 116, 105, 108, 101, 32, 36, 51, 44, 36, 52, 10, 18.559 + 10, 35, 64, 103, 105, 109, 112, 32, 84, 105, 108, 101, 115, 32, 116, 111, 18.560 + 32, 108, 97, 121, 101, 114, 115, 32, 58, 32, 103, 105, 109, 112, 95, 116, 18.561 + 105, 108, 101, 50, 108, 97, 121, 101, 114, 115, 44, 32, 103, 105, 109, 112, 18.562 + 95, 116, 105, 108, 101, 50, 108, 97, 121, 101, 114, 115, 95, 112, 114, 101, 18.563 + 118, 105, 101, 119, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 18.564 + 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 103, 32, 88, 32, 61, 32, 18.565 + 105, 110, 116, 40, 50, 44, 49, 44, 49, 48, 48, 41, 44, 32, 78, 117, 18.566 + 109, 98, 101, 114, 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 97, 108, 18.567 + 111, 110, 103, 32, 89, 32, 61, 32, 105, 110, 116, 40, 50, 44, 49, 44, 18.568 + 49, 48, 48, 41, 10, 103, 105, 109, 112, 95, 116, 105, 108, 101, 50, 108, 18.569 + 97, 121, 101, 114, 115, 32, 58, 10, 32, 32, 45, 115, 112, 108, 105, 116, 18.570 + 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 10, 10, 103, 105, 109, 18.571 + 112, 95, 116, 105, 108, 101, 50, 108, 97, 121, 101, 114, 115, 95, 112, 114, 18.572 + 101, 118, 105, 101, 119, 32, 58, 10, 32, 32, 45, 115, 112, 108, 105, 116, 18.573 + 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 32, 45, 107, 91, 53, 18.574 + 48, 37, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 95, 70, 114, 97, 18.575 + 109, 101, 115, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.576 + 45, 45, 45, 10, 10, 35, 64, 103, 105, 109, 112, 32, 82, 101, 103, 117, 18.577 + 108, 97, 114, 32, 102, 114, 97, 109, 101, 32, 58, 32, 103, 105, 109, 112, 18.578 + 95, 99, 111, 108, 111, 114, 95, 102, 114, 97, 109, 101, 44, 32, 103, 105, 18.579 + 109, 112, 95, 99, 111, 108, 111, 114, 95, 102, 114, 97, 109, 101, 44, 32, 18.580 + 70, 114, 97, 109, 101, 32, 119, 105, 100, 116, 104, 32, 61, 32, 102, 108, 18.581 + 111, 97, 116, 40, 50, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 70, 18.582 + 114, 97, 109, 101, 32, 104, 101, 105, 103, 104, 116, 32, 61, 32, 102, 108, 18.583 + 111, 97, 116, 40, 50, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 70, 18.584 + 114, 97, 109, 101, 32, 99, 111, 108, 111, 114, 32, 61, 32, 99, 111, 108, 18.585 + 111, 114, 40, 50, 53, 53, 44, 50, 53, 53, 44, 50, 53, 53, 44, 50, 18.586 + 53, 53, 41, 44, 32, 75, 101, 101, 112, 32, 111, 114, 105, 103, 105, 110, 18.587 + 97, 108, 32, 115, 105, 122, 101, 32, 61, 32, 98, 111, 111, 108, 40, 48, 18.588 + 41, 10, 103, 105, 109, 112, 95, 99, 111, 108, 111, 114, 95, 102, 114, 97, 18.589 + 109, 101, 32, 58, 10, 32, 45, 45, 100, 105, 109, 101, 110, 115, 105, 111, 18.590 + 110, 115, 32, 45, 109, 118, 91, 45, 49, 93, 32, 48, 10, 32, 45, 45, 18.591 + 114, 91, 45, 49, 93, 32, 36, 49, 37, 120, 49, 48, 48, 37, 120, 49, 18.592 + 120, 49, 48, 48, 37, 44, 48, 32, 40, 36, 51, 94, 36, 52, 94, 36, 18.593 + 53, 94, 36, 54, 41, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 18.594 + 93, 44, 49, 32, 45, 114, 109, 91, 45, 50, 93, 32, 91, 45, 49, 93, 18.595 + 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 51, 32, 45, 97, 91, 45, 18.596 + 51, 45, 45, 49, 93, 32, 120, 10, 32, 45, 45, 114, 91, 45, 49, 93, 18.597 + 32, 49, 48, 48, 37, 120, 36, 50, 37, 120, 49, 120, 49, 48, 48, 37, 18.598 + 44, 48, 32, 40, 36, 51, 94, 36, 52, 94, 36, 53, 94, 36, 54, 41, 18.599 + 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 49, 32, 45, 18.600 + 114, 109, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 109, 118, 91, 18.601 + 45, 49, 93, 32, 45, 51, 32, 45, 97, 91, 45, 51, 45, 45, 49, 93, 18.602 + 32, 121, 10, 32, 45, 105, 102, 32, 36, 55, 32, 45, 114, 91, 45, 49, 18.603 + 93, 32, 64, 45, 50, 44, 50, 32, 45, 101, 110, 100, 105, 102, 32, 45, 18.604 + 114, 109, 91, 48, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 70, 117, 18.605 + 122, 122, 121, 32, 102, 114, 97, 109, 101, 32, 58, 32, 103, 105, 109, 112, 18.606 + 95, 102, 114, 97, 109, 101, 95, 102, 117, 122, 122, 121, 44, 32, 103, 105, 18.607 + 109, 112, 95, 102, 114, 97, 109, 101, 95, 102, 117, 122, 122, 121, 44, 32, 18.608 + 70, 114, 97, 109, 101, 32, 119, 105, 100, 116, 104, 32, 61, 32, 102, 108, 18.609 + 111, 97, 116, 40, 50, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 70, 18.610 + 114, 97, 109, 101, 32, 104, 101, 105, 103, 104, 116, 32, 61, 32, 102, 108, 18.611 + 111, 97, 116, 40, 50, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 70, 18.612 + 114, 97, 109, 101, 32, 102, 117, 122, 122, 121, 110, 101, 115, 115, 32, 61, 18.613 + 32, 102, 108, 111, 97, 116, 40, 49, 48, 44, 48, 44, 52, 48, 41, 44, 18.614 + 32, 70, 114, 97, 109, 101, 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 18.615 + 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 44, 53, 41, 18.616 + 44, 32, 70, 114, 97, 109, 101, 32, 115, 104, 97, 100, 105, 110, 103, 32, 18.617 + 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 44, 53, 41, 44, 32, 18.618 + 70, 114, 97, 109, 101, 32, 99, 111, 108, 111, 114, 32, 61, 32, 99, 111, 18.619 + 108, 111, 114, 40, 50, 53, 53, 44, 50, 53, 53, 44, 50, 53, 53, 44, 18.620 + 50, 53, 53, 41, 10, 103, 105, 109, 112, 95, 102, 114, 97, 109, 101, 95, 18.621 + 102, 117, 122, 122, 121, 32, 58, 10, 32, 32, 49, 48, 48, 37, 120, 49, 18.622 + 48, 48, 37, 120, 49, 120, 49, 10, 32, 32, 45, 112, 111, 108, 121, 103, 18.623 + 111, 110, 91, 45, 49, 93, 32, 52, 44, 48, 44, 48, 44, 49, 48, 48, 18.624 + 37, 44, 48, 44, 49, 48, 48, 37, 44, 36, 50, 37, 44, 48, 44, 36, 18.625 + 50, 37, 44, 49, 44, 49, 10, 32, 32, 45, 112, 111, 108, 121, 103, 111, 18.626 + 110, 91, 45, 49, 93, 32, 52, 44, 48, 44, 48, 44, 36, 49, 37, 44, 18.627 + 48, 44, 36, 49, 37, 44, 49, 48, 48, 37, 44, 48, 44, 49, 48, 48, 18.628 + 37, 44, 49, 44, 49, 10, 32, 32, 45, 45, 109, 105, 114, 114, 111, 114, 18.629 + 91, 45, 49, 93, 32, 120, 32, 45, 109, 105, 114, 114, 111, 114, 91, 45, 18.630 + 49, 93, 32, 121, 32, 45, 111, 114, 91, 45, 50, 44, 45, 49, 93, 10, 18.631 + 32, 32, 45, 115, 112, 114, 101, 97, 100, 32, 36, 51, 32, 45, 98, 108, 18.632 + 117, 114, 91, 45, 49, 93, 32, 36, 52, 32, 45, 116, 104, 114, 101, 115, 18.633 + 104, 111, 108, 100, 91, 45, 49, 93, 32, 53, 48, 37, 32, 45, 98, 108, 18.634 + 117, 114, 91, 45, 49, 93, 32, 36, 53, 32, 45, 110, 91, 45, 49, 93, 18.635 + 32, 48, 44, 49, 10, 32, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 18.636 + 50, 93, 44, 49, 10, 32, 32, 45, 45, 42, 91, 45, 49, 93, 32, 45, 18.637 + 49, 32, 45, 43, 91, 45, 49, 93, 32, 49, 32, 45, 42, 91, 45, 51, 18.638 + 44, 45, 49, 93, 10, 32, 32, 40, 36, 54, 94, 36, 55, 94, 36, 56, 18.639 + 94, 36, 57, 41, 32, 45, 114, 91, 45, 49, 93, 32, 49, 120, 49, 120, 18.640 + 49, 120, 91, 45, 50, 93, 44, 48, 32, 45, 114, 91, 45, 49, 93, 32, 18.641 + 91, 45, 50, 93, 44, 49, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 18.642 + 10, 32, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 10, 10, 35, 64, 18.643 + 103, 105, 109, 112, 32, 95, 84, 101, 120, 116, 117, 114, 101, 115, 32, 97, 18.644 + 110, 100, 32, 112, 97, 116, 116, 101, 114, 110, 115, 10, 35, 45, 45, 45, 18.645 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.646 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 64, 103, 105, 109, 18.647 + 112, 32, 82, 97, 110, 100, 111, 109, 32, 112, 117, 122, 122, 108, 101, 32, 18.648 + 58, 32, 103, 105, 109, 112, 95, 112, 117, 122, 122, 108, 101, 44, 32, 103, 18.649 + 105, 109, 112, 95, 112, 117, 122, 122, 108, 101, 44, 32, 83, 99, 97, 108, 18.650 + 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 48, 44, 48, 44, 49, 18.651 + 48, 48, 41, 10, 103, 105, 109, 112, 95, 112, 117, 122, 122, 108, 101, 32, 18.652 + 58, 10, 32, 32, 91, 45, 49, 93, 32, 45, 114, 91, 45, 49, 93, 32, 18.653 + 36, 49, 120, 36, 49, 120, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 18.654 + 50, 32, 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 48, 46, 49, 18.655 + 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 114, 109, 18.656 + 91, 45, 50, 93, 10, 32, 32, 91, 45, 49, 93, 120, 50, 32, 45, 116, 18.657 + 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 32, 49, 44, 49, 18.658 + 32, 45, 45, 91, 45, 50, 44, 45, 49, 93, 32, 45, 110, 111, 114, 109, 18.659 + 91, 45, 49, 93, 32, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 18.660 + 45, 49, 93, 32, 48, 46, 48, 49, 32, 45, 42, 91, 45, 49, 93, 32, 18.661 + 45, 49, 10, 32, 32, 45, 43, 91, 45, 49, 93, 32, 49, 32, 45, 114, 18.662 + 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 42, 91, 45, 49, 44, 18.663 + 45, 50, 93, 32, 49, 48, 37, 120, 49, 48, 37, 120, 49, 48, 37, 120, 18.664 + 50, 32, 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 53, 44, 49, 18.665 + 10, 32, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 18.666 + 45, 50, 93, 44, 49, 44, 50, 44, 53, 32, 45, 119, 97, 114, 112, 91, 18.667 + 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 44, 49, 32, 45, 18.668 + 114, 109, 91, 45, 49, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 77, 18.669 + 111, 115, 97, 105, 99, 32, 112, 97, 116, 116, 101, 114, 110, 32, 58, 32, 18.670 + 109, 111, 115, 97, 105, 99, 44, 32, 109, 111, 115, 97, 105, 99, 44, 32, 18.671 + 68, 101, 110, 115, 105, 116, 121, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.672 + 50, 44, 48, 46, 49, 44, 49, 48, 41, 10, 10, 35, 64, 103, 105, 109, 18.673 + 112, 32, 87, 104, 105, 114, 108, 115, 32, 116, 101, 120, 116, 117, 114, 101, 18.674 + 32, 58, 32, 119, 104, 105, 114, 108, 115, 44, 32, 119, 104, 105, 114, 108, 18.675 + 115, 10, 10, 35, 64, 103, 105, 109, 112, 32, 80, 97, 112, 101, 114, 32, 18.676 + 116, 101, 120, 116, 117, 114, 101, 32, 58, 32, 112, 97, 112, 101, 114, 95, 18.677 + 116, 101, 120, 116, 117, 114, 101, 44, 32, 112, 97, 112, 101, 114, 95, 116, 18.678 + 101, 120, 116, 117, 114, 101, 10, 10, 35, 64, 103, 105, 109, 112, 32, 72, 18.679 + 101, 97, 114, 116, 115, 32, 58, 32, 103, 105, 109, 112, 95, 104, 101, 97, 18.680 + 114, 116, 115, 44, 32, 103, 105, 109, 112, 95, 104, 101, 97, 114, 116, 115, 18.681 + 44, 32, 68, 101, 110, 115, 105, 116, 121, 32, 61, 32, 102, 108, 111, 97, 18.682 + 116, 40, 49, 48, 44, 48, 44, 49, 48, 48, 41, 10, 103, 105, 109, 112, 18.683 + 95, 104, 101, 97, 114, 116, 115, 32, 58, 10, 32, 32, 49, 48, 48, 37, 18.684 + 120, 49, 48, 48, 37, 120, 49, 32, 45, 110, 111, 105, 115, 101, 91, 45, 18.685 + 49, 93, 32, 36, 49, 44, 50, 32, 45, 114, 91, 45, 49, 93, 32, 91, 18.686 + 45, 50, 93, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 32, 45, 18.687 + 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 95, 104, 101, 97, 114, 116, 18.688 + 57, 120, 55, 10, 32, 32, 45, 109, 105, 114, 114, 111, 114, 91, 45, 49, 18.689 + 93, 32, 121, 32, 45, 100, 105, 108, 97, 116, 101, 91, 45, 50, 93, 32, 18.690 + 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 10, 10, 35, 64, 18.691 + 103, 105, 109, 112, 32, 95, 65, 114, 116, 105, 115, 116, 105, 99, 10, 35, 18.692 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.693 + 10, 35, 64, 103, 105, 109, 112, 32, 80, 111, 108, 97, 114, 111, 105, 100, 18.694 + 32, 58, 32, 103, 105, 109, 112, 95, 112, 111, 108, 97, 114, 111, 105, 100, 18.695 + 44, 32, 103, 105, 109, 112, 95, 112, 111, 108, 97, 114, 111, 105, 100, 44, 18.696 + 32, 70, 114, 97, 109, 101, 32, 98, 111, 114, 100, 101, 114, 32, 115, 105, 18.697 + 122, 101, 32, 61, 32, 105, 110, 116, 40, 50, 48, 44, 49, 44, 52, 48, 18.698 + 48, 41, 44, 32, 66, 111, 116, 116, 111, 109, 32, 98, 111, 114, 100, 101, 18.699 + 114, 32, 115, 105, 122, 101, 32, 61, 32, 105, 110, 116, 40, 49, 50, 48, 18.700 + 44, 49, 44, 52, 48, 48, 41, 44, 32, 66, 97, 99, 107, 103, 114, 111, 18.701 + 117, 110, 100, 32, 115, 105, 122, 101, 32, 61, 32, 105, 110, 116, 40, 50, 18.702 + 48, 44, 49, 44, 52, 48, 48, 41, 44, 32, 82, 111, 116, 97, 116, 105, 18.703 + 111, 110, 32, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 18.704 + 40, 50, 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 110, 111, 116, 101, 18.705 + 32, 61, 32, 110, 111, 116, 101, 40, 34, 92, 110, 92, 110, 60, 115, 109, 18.706 + 97, 108, 108, 62, 60, 98, 62, 78, 111, 116, 101, 32, 58, 60, 47, 98, 18.707 + 62, 32, 65, 108, 108, 32, 115, 105, 122, 101, 115, 32, 97, 114, 101, 32, 18.708 + 101, 120, 112, 114, 101, 115, 115, 101, 100, 32, 105, 110, 32, 110, 117, 109, 18.709 + 98, 101, 114, 115, 32, 111, 102, 32, 112, 105, 120, 101, 108, 115, 46, 60, 18.710 + 47, 115, 109, 97, 108, 108, 62, 34, 41, 10, 103, 105, 109, 112, 95, 112, 18.711 + 111, 108, 97, 114, 111, 105, 100, 32, 58, 10, 32, 32, 45, 112, 111, 108, 18.712 + 97, 114, 111, 105, 100, 32, 36, 49, 44, 36, 50, 44, 36, 51, 32, 45, 18.713 + 114, 111, 116, 97, 116, 101, 32, 36, 52, 44, 49, 10, 10, 35, 64, 103, 18.714 + 105, 109, 112, 32, 79, 108, 100, 32, 112, 104, 111, 116, 111, 103, 114, 97, 18.715 + 112, 104, 32, 58, 32, 111, 108, 100, 95, 112, 104, 111, 116, 111, 44, 32, 18.716 + 111, 108, 100, 95, 112, 104, 111, 116, 111, 10, 10, 35, 64, 103, 105, 109, 18.717 + 112, 32, 68, 114, 111, 112, 32, 115, 104, 97, 100, 111, 119, 32, 58, 32, 18.718 + 103, 105, 109, 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 111, 119, 18.719 + 44, 32, 103, 105, 109, 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 18.720 + 111, 119, 44, 32, 73, 109, 97, 103, 101, 32, 101, 108, 101, 118, 97, 116, 18.721 + 105, 111, 110, 32, 61, 32, 105, 110, 116, 40, 49, 48, 44, 48, 44, 50, 18.722 + 53, 41, 44, 32, 83, 104, 97, 100, 111, 119, 32, 115, 109, 111, 111, 116, 18.723 + 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 48, 18.724 + 44, 48, 44, 50, 48, 41, 44, 32, 82, 111, 116, 97, 116, 105, 111, 110, 18.725 + 32, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 50, 18.726 + 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 83, 104, 97, 100, 111, 119, 18.727 + 32, 112, 111, 115, 105, 116, 105, 111, 110, 32, 61, 32, 99, 104, 111, 105, 18.728 + 99, 101, 40, 34, 66, 111, 116, 116, 111, 109, 32, 114, 105, 103, 104, 116, 18.729 + 34, 44, 32, 34, 66, 111, 116, 116, 111, 109, 32, 108, 101, 102, 116, 34, 18.730 + 44, 32, 34, 85, 112, 32, 114, 105, 103, 104, 116, 34, 44, 32, 34, 85, 18.731 + 112, 32, 108, 101, 102, 116, 34, 41, 10, 103, 105, 109, 112, 95, 100, 114, 18.732 + 111, 112, 95, 115, 104, 97, 100, 111, 119, 48, 32, 58, 10, 32, 32, 45, 18.733 + 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 51, 44, 45, 50, 93, 18.734 + 32, 36, 49, 44, 36, 49, 44, 48, 44, 48, 44, 49, 10, 103, 105, 109, 18.735 + 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 111, 119, 49, 32, 58, 18.736 + 10, 32, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 51, 18.737 + 44, 45, 50, 93, 32, 45, 36, 49, 44, 36, 49, 44, 48, 44, 48, 44, 18.738 + 49, 10, 103, 105, 109, 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 18.739 + 111, 119, 50, 32, 58, 10, 32, 32, 45, 116, 114, 97, 110, 115, 108, 97, 18.740 + 116, 101, 91, 45, 51, 44, 45, 50, 93, 32, 36, 49, 44, 45, 36, 49, 18.741 + 44, 48, 44, 48, 44, 49, 10, 103, 105, 109, 112, 95, 100, 114, 111, 112, 18.742 + 95, 115, 104, 97, 100, 111, 119, 51, 32, 58, 10, 32, 32, 45, 116, 114, 18.743 + 97, 110, 115, 108, 97, 116, 101, 91, 45, 51, 44, 45, 50, 93, 32, 45, 18.744 + 36, 49, 44, 45, 36, 49, 44, 48, 44, 48, 44, 49, 10, 103, 105, 109, 18.745 + 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 111, 119, 32, 58, 10, 18.746 + 32, 32, 45, 45, 102, 91, 45, 49, 93, 32, 48, 32, 45, 45, 91, 45, 18.747 + 49, 93, 32, 50, 53, 53, 32, 45, 114, 91, 45, 50, 44, 45, 49, 93, 18.748 + 32, 49, 53, 48, 37, 120, 49, 53, 48, 37, 120, 49, 120, 49, 48, 48, 18.749 + 37, 44, 48, 44, 48, 44, 49, 32, 45, 43, 91, 45, 49, 93, 32, 50, 18.750 + 53, 53, 32, 45, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 36, 50, 18.751 + 32, 45, 103, 105, 109, 112, 95, 100, 114, 111, 112, 95, 115, 104, 97, 100, 18.752 + 111, 119, 36, 52, 32, 36, 49, 10, 32, 32, 45, 42, 91, 45, 50, 44, 18.753 + 45, 49, 93, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 18.754 + 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 32, 45, 114, 111, 116, 97, 18.755 + 116, 101, 32, 36, 51, 44, 49, 10, 10, 35, 64, 103, 105, 109, 112, 32, 18.756 + 83, 112, 111, 110, 103, 101, 32, 101, 102, 102, 101, 99, 116, 32, 58, 32, 18.757 + 115, 112, 111, 110, 103, 101, 44, 32, 115, 112, 111, 110, 103, 101, 44, 32, 18.758 + 83, 112, 111, 110, 103, 101, 32, 115, 105, 122, 101, 32, 61, 32, 105, 110, 18.759 + 116, 40, 49, 51, 44, 51, 44, 50, 49, 41, 10, 10, 35, 64, 103, 105, 18.760 + 109, 112, 32, 67, 111, 108, 111, 114, 32, 101, 108, 108, 105, 112, 115, 101, 18.761 + 115, 32, 58, 32, 103, 105, 109, 112, 95, 99, 111, 108, 111, 114, 95, 101, 18.762 + 108, 108, 105, 112, 115, 101, 115, 44, 32, 103, 105, 109, 112, 95, 99, 111, 18.763 + 108, 111, 114, 95, 101, 108, 108, 105, 112, 115, 101, 115, 44, 32, 79, 112, 18.764 + 97, 99, 105, 116, 121, 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 46, 18.765 + 48, 55, 44, 48, 46, 48, 49, 44, 48, 46, 53, 41, 10, 103, 105, 109, 18.766 + 112, 95, 99, 111, 108, 111, 114, 95, 101, 108, 108, 105, 112, 115, 101, 115, 18.767 + 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 45, 99, 111, 18.768 + 108, 111, 114, 95, 101, 108, 108, 105, 112, 115, 101, 115, 32, 36, 49, 10, 18.769 + 10, 35, 64, 103, 105, 109, 112, 32, 69, 100, 103, 101, 115, 32, 58, 32, 18.770 + 103, 105, 109, 112, 95, 101, 100, 103, 101, 115, 44, 32, 103, 105, 109, 112, 18.771 + 95, 101, 100, 103, 101, 115, 44, 32, 69, 100, 103, 101, 32, 116, 104, 114, 18.772 + 101, 115, 104, 111, 108, 100, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 18.773 + 48, 44, 48, 44, 49, 53, 48, 41, 10, 103, 105, 109, 112, 95, 101, 100, 18.774 + 103, 101, 115, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 18.775 + 45, 101, 100, 103, 101, 115, 32, 36, 49, 10, 10, 35, 64, 103, 105, 109, 18.776 + 112, 32, 67, 97, 114, 116, 111, 111, 110, 32, 58, 32, 103, 105, 109, 112, 18.777 + 95, 99, 97, 114, 116, 111, 111, 110, 44, 32, 103, 105, 109, 112, 95, 99, 18.778 + 97, 114, 116, 111, 111, 110, 44, 32, 69, 100, 103, 101, 32, 116, 104, 114, 18.779 + 101, 115, 104, 111, 108, 100, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 18.780 + 48, 44, 48, 44, 49, 53, 48, 41, 44, 32, 83, 109, 111, 111, 116, 104, 18.781 + 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 18.782 + 44, 49, 48, 41, 10, 103, 105, 109, 112, 95, 99, 97, 114, 116, 111, 111, 18.783 + 110, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 91, 45, 18.784 + 49, 93, 120, 50, 32, 45, 101, 100, 103, 101, 115, 32, 36, 49, 32, 45, 18.785 + 114, 91, 45, 50, 93, 32, 56, 120, 56, 120, 49, 120, 51, 44, 50, 32, 18.786 + 45, 114, 91, 45, 51, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 18.787 + 120, 49, 48, 48, 37, 120, 51, 10, 32, 32, 45, 114, 103, 98, 50, 108, 18.788 + 117, 116, 91, 45, 51, 93, 32, 91, 45, 50, 93, 32, 45, 108, 117, 116, 18.789 + 50, 114, 103, 98, 91, 45, 51, 93, 32, 91, 45, 50, 93, 32, 45, 114, 18.790 + 109, 91, 45, 50, 93, 32, 45, 98, 108, 117, 114, 91, 45, 50, 93, 32, 18.791 + 36, 50, 32, 45, 42, 91, 45, 50, 45, 45, 49, 93, 32, 45, 110, 91, 18.792 + 45, 49, 93, 32, 48, 44, 50, 53, 53, 10, 10, 35, 64, 103, 105, 109, 18.793 + 112, 32, 80, 101, 110, 32, 100, 114, 97, 119, 105, 110, 103, 32, 58, 32, 18.794 + 103, 105, 109, 112, 95, 112, 101, 110, 95, 100, 114, 97, 119, 105, 110, 103, 18.795 + 44, 32, 103, 105, 109, 112, 95, 112, 101, 110, 95, 100, 114, 97, 119, 105, 18.796 + 110, 103, 10, 103, 105, 109, 112, 95, 112, 101, 110, 95, 100, 114, 97, 119, 18.797 + 105, 110, 103, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 18.798 + 45, 100, 114, 97, 119, 105, 110, 103, 10, 10, 35, 64, 103, 105, 109, 112, 18.799 + 32, 87, 104, 105, 114, 108, 32, 100, 114, 97, 119, 105, 110, 103, 32, 58, 18.800 + 32, 100, 114, 97, 119, 95, 119, 104, 105, 114, 108, 44, 32, 100, 114, 97, 18.801 + 119, 95, 119, 104, 105, 114, 108, 10, 10, 35, 64, 103, 105, 109, 112, 32, 18.802 + 67, 117, 98, 105, 115, 109, 32, 58, 32, 103, 105, 109, 112, 95, 99, 117, 18.803 + 98, 105, 115, 109, 44, 32, 103, 105, 109, 112, 95, 99, 117, 98, 105, 115, 18.804 + 109, 44, 32, 73, 116, 101, 114, 97, 116, 105, 111, 110, 115, 32, 61, 32, 18.805 + 105, 110, 116, 40, 49, 48, 48, 48, 44, 49, 44, 51, 48, 48, 48, 41, 18.806 + 44, 32, 66, 108, 111, 99, 32, 115, 105, 122, 101, 32, 61, 32, 102, 108, 18.807 + 111, 97, 116, 40, 51, 44, 48, 44, 49, 48, 41, 44, 32, 77, 97, 120, 18.808 + 105, 109, 117, 109, 32, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 18.809 + 97, 116, 40, 57, 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 79, 112, 18.810 + 97, 99, 105, 116, 121, 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 46, 18.811 + 55, 44, 48, 46, 48, 49, 44, 49, 41, 44, 32, 83, 109, 111, 111, 116, 18.812 + 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 44, 18.813 + 48, 44, 53, 41, 10, 103, 105, 109, 112, 95, 99, 117, 98, 105, 115, 109, 18.814 + 32, 58, 10, 32, 32, 45, 45, 100, 105, 109, 101, 110, 115, 105, 111, 110, 18.815 + 115, 32, 45, 42, 91, 45, 49, 93, 32, 36, 50, 32, 45, 47, 91, 45, 18.816 + 49, 93, 32, 49, 48, 48, 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 18.817 + 93, 32, 45, 114, 111, 117, 110, 100, 91, 45, 49, 93, 32, 49, 32, 45, 18.818 + 109, 118, 91, 45, 49, 93, 32, 48, 32, 45, 99, 117, 98, 105, 115, 109, 18.819 + 32, 36, 49, 44, 64, 123, 45, 50, 44, 49, 125, 44, 36, 51, 44, 36, 18.820 + 52, 44, 36, 53, 32, 45, 114, 109, 91, 48, 93, 10, 10, 35, 64, 103, 18.821 + 105, 109, 112, 32, 66, 87, 32, 115, 116, 101, 110, 99, 105, 108, 32, 58, 18.822 + 32, 103, 105, 109, 112, 95, 115, 116, 101, 110, 99, 105, 108, 98, 119, 44, 18.823 + 32, 103, 105, 109, 112, 95, 115, 116, 101, 110, 99, 105, 108, 98, 119, 44, 18.824 + 32, 69, 100, 103, 101, 32, 116, 104, 114, 101, 115, 104, 111, 108, 100, 32, 18.825 + 61, 32, 102, 108, 111, 97, 116, 40, 51, 48, 44, 48, 44, 49, 53, 48, 18.826 + 41, 44, 32, 83, 109, 111, 111, 116, 104, 110, 101, 115, 115, 32, 61, 32, 18.827 + 102, 108, 111, 97, 116, 40, 49, 48, 44, 48, 44, 51, 48, 41, 10, 103, 18.828 + 105, 109, 112, 95, 115, 116, 101, 110, 99, 105, 108, 98, 119, 32, 58, 10, 18.829 + 32, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 18.830 + 48, 37, 120, 49, 120, 49, 48, 48, 37, 32, 45, 116, 32, 102, 108, 111, 18.831 + 97, 116, 32, 91, 45, 49, 93, 32, 45, 101, 100, 103, 101, 115, 32, 36, 18.832 + 49, 32, 45, 113, 117, 97, 110, 116, 105, 122, 101, 91, 45, 50, 93, 32, 18.833 + 51, 32, 45, 98, 108, 117, 114, 91, 45, 50, 93, 32, 36, 50, 10, 32, 18.834 + 32, 45, 115, 104, 97, 114, 112, 101, 110, 91, 45, 50, 93, 32, 49, 48, 18.835 + 48, 48, 48, 48, 48, 32, 45, 110, 111, 114, 109, 91, 45, 50, 93, 32, 18.836 + 45, 110, 91, 45, 50, 93, 32, 48, 44, 49, 32, 45, 42, 91, 45, 49, 18.837 + 44, 45, 50, 93, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 18.838 + 53, 10, 10, 35, 64, 103, 105, 109, 112, 32, 66, 87, 32, 112, 101, 110, 18.839 + 99, 105, 108, 32, 58, 32, 103, 105, 109, 112, 95, 112, 101, 110, 99, 105, 18.840 + 108, 98, 119, 44, 32, 103, 105, 109, 112, 95, 112, 101, 110, 99, 105, 108, 18.841 + 98, 119, 44, 32, 80, 101, 110, 99, 105, 108, 32, 116, 121, 112, 101, 32, 18.842 + 61, 32, 102, 108, 111, 97, 116, 40, 48, 46, 51, 44, 48, 44, 53, 41, 18.843 + 44, 32, 65, 109, 112, 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 18.844 + 111, 97, 116, 40, 54, 48, 44, 48, 44, 50, 48, 48, 41, 10, 103, 105, 18.845 + 109, 112, 95, 112, 101, 110, 99, 105, 108, 98, 119, 32, 58, 10, 32, 32, 18.846 + 45, 116, 111, 95, 114, 103, 98, 32, 45, 110, 111, 114, 109, 32, 45, 98, 18.847 + 108, 117, 114, 32, 36, 49, 32, 45, 115, 104, 97, 114, 112, 101, 110, 32, 18.848 + 52, 48, 48, 48, 32, 45, 115, 109, 111, 111, 116, 104, 32, 36, 50, 44, 18.849 + 48, 44, 49, 32, 45, 101, 113, 117, 97, 108, 105, 122, 101, 32, 50, 53, 18.850 + 54, 10, 32, 32, 45, 115, 113, 114, 116, 32, 45, 110, 32, 48, 44, 50, 18.851 + 53, 53, 32, 45, 114, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 18.852 + 49, 120, 51, 10, 10, 35, 64, 103, 105, 109, 112, 32, 66, 87, 32, 100, 18.853 + 111, 116, 115, 32, 58, 32, 100, 111, 116, 115, 98, 119, 44, 32, 103, 105, 18.854 + 109, 112, 95, 100, 111, 116, 115, 98, 119, 95, 112, 114, 101, 118, 105, 101, 18.855 + 119, 10, 103, 105, 109, 112, 95, 100, 111, 116, 115, 98, 119, 95, 112, 114, 18.856 + 101, 118, 105, 101, 119, 32, 58, 10, 32, 32, 45, 114, 32, 51, 48, 48, 18.857 + 37, 120, 51, 48, 48, 37, 120, 49, 120, 51, 44, 51, 32, 45, 100, 111, 18.858 + 116, 115, 98, 119, 10, 10, 35, 64, 103, 105, 109, 112, 32, 66, 87, 32, 18.859 + 100, 105, 116, 104, 101, 114, 105, 110, 103, 32, 58, 32, 100, 105, 116, 104, 18.860 + 101, 114, 101, 100, 98, 119, 44, 32, 100, 105, 116, 104, 101, 114, 101, 100, 18.861 + 98, 119, 10, 10, 35, 64, 103, 105, 109, 112, 32, 87, 97, 114, 104, 111, 18.862 + 108, 32, 97, 114, 116, 119, 111, 114, 107, 32, 58, 32, 119, 97, 114, 104, 18.863 + 111, 108, 44, 32, 119, 97, 114, 104, 111, 108, 44, 32, 78, 117, 109, 98, 18.864 + 101, 114, 32, 111, 102, 32, 116, 105, 108, 101, 115, 32, 97, 108, 111, 110, 18.865 + 103, 32, 88, 32, 61, 32, 105, 110, 116, 40, 51, 44, 49, 44, 49, 48, 18.866 + 41, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 116, 105, 108, 18.867 + 101, 115, 32, 97, 108, 111, 110, 103, 32, 89, 32, 61, 32, 105, 110, 116, 18.868 + 40, 51, 44, 49, 44, 49, 48, 41, 10, 10, 35, 64, 103, 105, 109, 112, 18.869 + 32, 83, 111, 102, 116, 32, 103, 108, 111, 119, 32, 58, 32, 103, 108, 111, 18.870 + 119, 44, 32, 103, 108, 111, 119, 44, 32, 65, 109, 112, 108, 105, 116, 117, 18.871 + 100, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 44, 48, 44, 49, 18.872 + 48, 41, 10, 10, 35, 64, 103, 105, 109, 112, 32, 68, 105, 102, 102, 101, 18.873 + 114, 101, 110, 99, 101, 32, 111, 102, 32, 71, 97, 117, 115, 115, 105, 97, 18.874 + 110, 115, 32, 58, 32, 103, 105, 109, 112, 95, 100, 111, 103, 44, 32, 103, 18.875 + 105, 109, 112, 95, 100, 111, 103, 44, 32, 65, 108, 112, 104, 97, 32, 61, 18.876 + 32, 102, 108, 111, 97, 116, 40, 51, 44, 48, 44, 49, 48, 41, 44, 32, 18.877 + 66, 101, 116, 97, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 46, 50, 18.878 + 44, 48, 44, 49, 48, 41, 10, 103, 105, 109, 112, 95, 100, 111, 103, 32, 18.879 + 58, 10, 32, 32, 45, 100, 111, 103, 32, 36, 49, 44, 36, 50, 32, 45, 18.880 + 110, 32, 48, 44, 50, 53, 53, 10, 10, 35, 64, 103, 105, 109, 112, 32, 18.881 + 84, 101, 116, 114, 105, 115, 32, 101, 102, 102, 101, 99, 116, 32, 58, 32, 18.882 + 103, 105, 109, 112, 95, 116, 101, 116, 114, 105, 115, 44, 32, 103, 105, 109, 18.883 + 112, 95, 116, 101, 116, 114, 105, 115, 44, 32, 83, 99, 97, 108, 101, 32, 18.884 + 61, 32, 105, 110, 116, 40, 49, 48, 44, 49, 44, 49, 48, 48, 41, 10, 18.885 + 103, 105, 109, 112, 95, 116, 101, 116, 114, 105, 115, 32, 58, 10, 32, 32, 18.886 + 45, 116, 111, 95, 114, 103, 98, 32, 45, 116, 101, 116, 114, 105, 115, 32, 18.887 + 36, 49, 10, 10, 35, 64, 103, 105, 109, 112, 32, 95, 68, 101, 102, 111, 18.888 + 114, 109, 97, 116, 105, 111, 110, 115, 10, 35, 45, 45, 45, 45, 45, 45, 18.889 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 18.890 + 64, 103, 105, 109, 112, 32, 87, 97, 116, 101, 114, 32, 58, 32, 119, 97, 18.891 + 116, 101, 114, 44, 32, 119, 97, 116, 101, 114, 44, 32, 65, 109, 112, 108, 18.892 + 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 48, 18.893 + 44, 48, 44, 51, 48, 48, 41, 44, 32, 83, 109, 111, 111, 116, 104, 110, 18.894 + 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 46, 53, 44, 18.895 + 48, 44, 52, 41, 10, 10, 35, 64, 103, 105, 109, 112, 32, 87, 97, 116, 18.896 + 101, 114, 32, 114, 101, 102, 108, 101, 99, 116, 105, 111, 110, 32, 58, 32, 18.897 + 103, 105, 109, 112, 95, 114, 101, 102, 108, 101, 99, 116, 44, 32, 103, 105, 18.898 + 109, 112, 95, 114, 101, 102, 108, 101, 99, 116, 10, 103, 105, 109, 112, 95, 18.899 + 114, 101, 102, 108, 101, 99, 116, 32, 58, 10, 32, 32, 45, 116, 111, 95, 18.900 + 114, 103, 98, 32, 45, 114, 101, 102, 108, 101, 99, 116, 10, 10, 35, 64, 18.901 + 103, 105, 109, 112, 32, 87, 97, 118, 101, 32, 101, 102, 102, 101, 99, 116, 18.902 + 32, 58, 32, 103, 105, 109, 112, 95, 119, 97, 118, 101, 44, 32, 103, 105, 18.903 + 109, 112, 95, 119, 97, 118, 101, 44, 32, 65, 109, 112, 108, 105, 116, 117, 18.904 + 100, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 48, 44, 48, 44, 18.905 + 51, 48, 41, 32, 70, 114, 101, 113, 117, 101, 110, 99, 121, 32, 61, 32, 18.906 + 102, 108, 111, 97, 116, 40, 48, 46, 52, 44, 48, 44, 50, 41, 44, 32, 18.907 + 88, 45, 99, 101, 110, 116, 101, 114, 32, 61, 32, 102, 108, 111, 97, 116, 18.908 + 40, 53, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 89, 45, 99, 101, 18.909 + 110, 116, 101, 114, 32, 61, 32, 102, 108, 111, 97, 116, 40, 53, 48, 44, 18.910 + 48, 44, 49, 48, 48, 41, 10, 103, 105, 109, 112, 95, 119, 97, 118, 101, 18.911 + 32, 58, 10, 32, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 32, 45, 18.912 + 61, 91, 45, 49, 93, 32, 49, 44, 36, 51, 37, 44, 36, 52, 37, 32, 18.913 + 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 49, 93, 32, 49, 10, 18.914 + 32, 32, 45, 42, 91, 45, 49, 93, 32, 36, 50, 32, 45, 45, 115, 105, 18.915 + 110, 91, 45, 49, 93, 32, 45, 99, 111, 115, 91, 45, 50, 93, 32, 45, 18.916 + 97, 91, 45, 50, 44, 45, 49, 93, 32, 118, 32, 45, 42, 91, 45, 49, 18.917 + 93, 32, 36, 49, 10, 32, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 18.918 + 32, 91, 45, 49, 93, 44, 49, 32, 45, 114, 109, 91, 45, 49, 93, 10, 18.919 + 10, 35, 64, 103, 105, 109, 112, 32, 82, 97, 110, 100, 111, 109, 32, 100, 18.920 + 101, 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 58, 32, 100, 101, 102, 18.921 + 111, 114, 109, 44, 32, 100, 101, 102, 111, 114, 109, 44, 32, 65, 109, 112, 18.922 + 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 18.923 + 48, 44, 48, 44, 50, 48, 48, 41, 10, 10, 35, 64, 103, 105, 109, 112, 18.924 + 32, 70, 105, 115, 104, 45, 101, 121, 101, 32, 58, 32, 102, 105, 115, 104, 18.925 + 95, 101, 121, 101, 44, 32, 102, 105, 115, 104, 95, 101, 121, 101, 44, 32, 18.926 + 65, 109, 112, 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 111, 97, 18.927 + 116, 40, 50, 53, 48, 44, 48, 44, 49, 48, 48, 48, 41, 10, 10, 35, 18.928 + 64, 103, 105, 109, 112, 32, 95, 68, 101, 103, 114, 97, 100, 97, 116, 105, 18.929 + 111, 110, 115, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.930 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 64, 103, 105, 109, 18.931 + 112, 32, 78, 111, 105, 115, 101, 32, 58, 32, 103, 105, 109, 112, 95, 110, 18.932 + 111, 105, 115, 101, 44, 32, 103, 105, 109, 112, 95, 110, 111, 105, 115, 101, 18.933 + 44, 32, 65, 109, 112, 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 18.934 + 111, 97, 116, 40, 51, 48, 44, 48, 44, 50, 48, 48, 41, 44, 32, 78, 18.935 + 111, 105, 115, 101, 32, 116, 121, 112, 101, 32, 61, 32, 99, 104, 111, 105, 18.936 + 99, 101, 40, 34, 71, 97, 117, 115, 115, 105, 97, 110, 34, 44, 34, 85, 18.937 + 110, 105, 102, 111, 114, 109, 34, 44, 34, 83, 97, 108, 116, 32, 97, 110, 18.938 + 100, 32, 112, 101, 112, 112, 101, 114, 34, 44, 34, 80, 111, 105, 115, 115, 18.939 + 111, 110, 34, 41, 44, 32, 86, 97, 108, 117, 101, 32, 114, 97, 110, 103, 18.940 + 101, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 34, 67, 117, 116, 34, 18.941 + 44, 34, 78, 111, 114, 109, 97, 108, 105, 122, 101, 34, 41, 44, 32, 67, 18.942 + 104, 97, 110, 110, 101, 108, 115, 32, 61, 32, 99, 104, 111, 105, 99, 101, 18.943 + 40, 34, 82, 71, 66, 91, 65, 93, 34, 44, 34, 76, 117, 109, 105, 110, 18.944 + 97, 110, 99, 101, 34, 44, 34, 66, 108, 117, 101, 32, 97, 110, 100, 32, 18.945 + 82, 101, 100, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 115, 18.946 + 34, 44, 34, 66, 108, 117, 101, 32, 99, 104, 114, 111, 109, 105, 110, 97, 18.947 + 110, 99, 101, 34, 44, 34, 82, 101, 100, 32, 99, 104, 114, 111, 109, 105, 18.948 + 110, 97, 110, 99, 101, 34, 41, 10, 103, 105, 109, 112, 95, 110, 111, 105, 18.949 + 115, 101, 48, 32, 58, 10, 32, 32, 45, 110, 111, 105, 115, 101, 91, 45, 18.950 + 49, 93, 32, 36, 49, 44, 36, 50, 10, 103, 105, 109, 112, 95, 110, 111, 18.951 + 105, 115, 101, 49, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 18.952 + 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 115, 32, 118, 18.953 + 32, 45, 110, 111, 105, 115, 101, 91, 45, 51, 93, 32, 36, 49, 44, 36, 18.954 + 50, 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 18.955 + 98, 10, 103, 105, 109, 112, 95, 110, 111, 105, 115, 101, 50, 32, 58, 10, 18.956 + 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 45, 114, 103, 98, 50, 121, 18.957 + 99, 98, 99, 114, 32, 45, 115, 32, 118, 32, 45, 110, 111, 105, 115, 101, 18.958 + 91, 45, 50, 44, 45, 49, 93, 32, 36, 49, 44, 36, 50, 32, 45, 97, 18.959 + 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 10, 103, 105, 18.960 + 109, 112, 95, 110, 111, 105, 115, 101, 51, 32, 58, 10, 32, 32, 45, 116, 18.961 + 111, 95, 114, 103, 98, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 18.962 + 32, 45, 115, 32, 118, 32, 45, 110, 111, 105, 115, 101, 91, 45, 50, 93, 18.963 + 32, 36, 49, 44, 36, 50, 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 18.964 + 99, 114, 50, 114, 103, 98, 10, 103, 105, 109, 112, 95, 110, 111, 105, 115, 18.965 + 101, 52, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 45, 18.966 + 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 115, 32, 118, 32, 45, 18.967 + 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 36, 49, 44, 36, 50, 32, 18.968 + 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 10, 18.969 + 103, 105, 109, 112, 95, 110, 111, 105, 115, 101, 32, 58, 10, 32, 32, 45, 18.970 + 103, 105, 109, 112, 95, 110, 111, 105, 115, 101, 36, 52, 32, 36, 49, 44, 18.971 + 36, 50, 32, 45, 105, 102, 32, 36, 51, 32, 45, 110, 32, 48, 44, 50, 18.972 + 53, 53, 32, 45, 101, 108, 115, 101, 32, 45, 99, 117, 116, 32, 48, 44, 18.973 + 50, 53, 53, 32, 45, 101, 110, 100, 105, 102, 10, 10, 35, 64, 103, 105, 18.974 + 109, 112, 32, 82, 97, 110, 100, 111, 109, 32, 115, 104, 97, 100, 101, 32, 18.975 + 115, 116, 114, 105, 112, 101, 115, 32, 58, 32, 103, 105, 109, 112, 95, 115, 18.976 + 104, 97, 100, 101, 95, 115, 116, 114, 105, 112, 101, 115, 44, 32, 103, 105, 18.977 + 109, 112, 95, 115, 104, 97, 100, 101, 95, 115, 116, 114, 105, 112, 101, 115, 18.978 + 44, 32, 70, 114, 101, 113, 117, 101, 110, 99, 121, 32, 61, 32, 102, 108, 18.979 + 111, 97, 116, 40, 51, 48, 44, 49, 44, 49, 48, 48, 41, 44, 32, 83, 18.980 + 116, 114, 105, 112, 101, 115, 32, 111, 114, 105, 101, 110, 116, 97, 116, 105, 18.981 + 111, 110, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 72, 111, 114, 105, 18.982 + 122, 111, 110, 116, 97, 108, 44, 86, 101, 114, 116, 105, 99, 97, 108, 41, 18.983 + 44, 32, 68, 97, 114, 107, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 18.984 + 97, 116, 40, 48, 46, 56, 44, 48, 44, 51, 41, 44, 32, 76, 105, 103, 18.985 + 104, 116, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 50, 18.986 + 44, 48, 44, 51, 41, 10, 103, 105, 109, 112, 95, 115, 104, 97, 100, 101, 18.987 + 95, 115, 116, 114, 105, 112, 101, 115, 32, 58, 10, 32, 32, 45, 110, 32, 18.988 + 48, 44, 50, 53, 53, 10, 32, 32, 45, 105, 102, 32, 36, 50, 32, 49, 18.989 + 48, 48, 37, 32, 45, 101, 108, 115, 101, 32, 49, 120, 49, 48, 48, 37, 18.990 + 32, 45, 101, 110, 100, 105, 102, 10, 32, 32, 45, 110, 111, 105, 115, 101, 18.991 + 91, 45, 49, 93, 32, 36, 49, 44, 50, 32, 45, 100, 105, 115, 116, 97, 18.992 + 110, 99, 101, 91, 45, 49, 93, 32, 49, 10, 32, 32, 45, 114, 91, 45, 18.993 + 49, 93, 32, 91, 45, 50, 93, 32, 45, 110, 91, 45, 49, 93, 32, 36, 18.994 + 51, 44, 36, 52, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 18.995 + 99, 117, 116, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 10, 10, 35, 18.996 + 64, 103, 105, 109, 112, 32, 79, 108, 100, 45, 109, 111, 118, 105, 101, 32, 18.997 + 115, 116, 114, 105, 112, 101, 115, 32, 58, 32, 115, 116, 114, 105, 112, 101, 18.998 + 115, 121, 44, 32, 115, 116, 114, 105, 112, 101, 115, 121, 44, 32, 70, 114, 18.999 + 101, 113, 117, 101, 110, 99, 121, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1000 + 49, 48, 44, 48, 44, 49, 48, 48, 41, 10, 10, 35, 64, 103, 105, 109, 18.1001 + 112, 32, 68, 97, 109, 112, 32, 112, 97, 116, 99, 104, 32, 58, 32, 100, 18.1002 + 97, 109, 112, 95, 112, 97, 116, 99, 104, 44, 32, 100, 97, 109, 112, 95, 18.1003 + 112, 97, 116, 99, 104, 44, 32, 79, 112, 97, 99, 105, 116, 121, 32, 61, 18.1004 + 32, 102, 108, 111, 97, 116, 40, 48, 46, 55, 44, 48, 44, 49, 41, 10, 18.1005 + 10, 35, 64, 103, 105, 109, 112, 32, 76, 105, 103, 104, 116, 32, 112, 97, 18.1006 + 116, 99, 104, 32, 58, 32, 108, 105, 103, 104, 116, 95, 112, 97, 116, 99, 18.1007 + 104, 44, 32, 108, 105, 103, 104, 116, 95, 112, 97, 116, 99, 104, 44, 32, 18.1008 + 68, 97, 114, 107, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 18.1009 + 40, 48, 46, 55, 44, 48, 44, 49, 41, 44, 32, 76, 105, 103, 104, 116, 18.1010 + 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 50, 46, 53, 18.1011 + 44, 49, 44, 52, 41, 10, 10, 35, 64, 103, 105, 109, 112, 32, 95, 73, 18.1012 + 109, 97, 103, 101, 32, 101, 110, 104, 97, 110, 99, 101, 109, 101, 110, 116, 18.1013 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1014 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 64, 103, 18.1015 + 105, 109, 112, 32, 65, 110, 105, 115, 111, 116, 114, 111, 112, 105, 99, 32, 18.1016 + 115, 109, 111, 111, 116, 104, 105, 110, 103, 32, 58, 32, 103, 105, 109, 112, 18.1017 + 95, 97, 110, 105, 115, 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 18.1018 + 116, 101, 114, 44, 32, 103, 105, 109, 112, 95, 97, 110, 105, 115, 111, 116, 18.1019 + 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 114, 44, 32, 65, 109, 18.1020 + 112, 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1021 + 54, 48, 44, 48, 44, 49, 48, 48, 48, 41, 44, 32, 69, 100, 103, 101, 18.1022 + 32, 112, 114, 101, 115, 101, 114, 118, 97, 116, 105, 111, 110, 32, 61, 32, 18.1023 + 102, 108, 111, 97, 116, 40, 48, 46, 55, 44, 48, 44, 50, 41, 44, 32, 18.1024 + 65, 110, 105, 115, 111, 116, 114, 111, 112, 121, 32, 61, 32, 102, 108, 111, 18.1025 + 97, 116, 40, 48, 46, 51, 44, 48, 44, 49, 41, 44, 32, 71, 114, 97, 18.1026 + 100, 105, 101, 110, 116, 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 18.1027 + 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 46, 54, 44, 48, 44, 49, 18.1028 + 48, 41, 44, 32, 84, 101, 110, 115, 111, 114, 32, 115, 109, 111, 111, 116, 18.1029 + 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 46, 18.1030 + 49, 44, 48, 44, 49, 48, 41, 44, 32, 83, 112, 97, 116, 105, 97, 108, 18.1031 + 32, 112, 114, 101, 99, 105, 115, 105, 111, 110, 32, 61, 32, 102, 108, 111, 18.1032 + 97, 116, 40, 48, 46, 56, 44, 48, 46, 49, 44, 50, 41, 44, 32, 65, 18.1033 + 110, 103, 117, 108, 97, 114, 32, 112, 114, 101, 99, 105, 115, 105, 111, 110, 18.1034 + 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 48, 44, 49, 44, 49, 56, 18.1035 + 48, 41, 44, 32, 86, 97, 108, 117, 101, 32, 112, 114, 101, 99, 105, 115, 18.1036 + 105, 111, 110, 32, 61, 32, 102, 108, 111, 97, 116, 40, 50, 44, 48, 46, 18.1037 + 49, 44, 53, 41, 44, 32, 73, 110, 116, 101, 114, 112, 111, 108, 97, 116, 18.1038 + 105, 111, 110, 32, 116, 121, 112, 101, 32, 61, 32, 99, 104, 111, 105, 99, 18.1039 + 101, 40, 34, 78, 101, 97, 114, 101, 115, 116, 32, 110, 101, 105, 103, 104, 18.1040 + 98, 111, 114, 34, 44, 34, 76, 105, 110, 101, 97, 114, 34, 44, 34, 82, 18.1041 + 117, 110, 103, 101, 45, 75, 117, 116, 116, 97, 34, 41, 44, 32, 70, 97, 18.1042 + 115, 116, 32, 103, 97, 117, 115, 115, 105, 97, 110, 32, 97, 112, 112, 114, 18.1043 + 111, 120, 105, 109, 97, 116, 105, 111, 110, 32, 61, 32, 98, 111, 111, 108, 18.1044 + 40, 49, 41, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 18.1045 + 116, 101, 114, 97, 116, 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 18.1046 + 49, 44, 49, 44, 49, 48, 41, 44, 32, 67, 104, 97, 110, 110, 101, 108, 18.1047 + 115, 32, 112, 114, 111, 99, 101, 115, 115, 105, 110, 103, 32, 61, 32, 99, 18.1048 + 104, 111, 105, 99, 101, 40, 34, 82, 71, 66, 34, 44, 34, 76, 117, 109, 18.1049 + 105, 110, 97, 110, 99, 101, 34, 44, 34, 66, 108, 117, 101, 32, 97, 110, 18.1050 + 100, 32, 82, 101, 100, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 18.1051 + 101, 115, 34, 44, 34, 66, 108, 117, 101, 32, 99, 104, 114, 111, 109, 105, 18.1052 + 110, 97, 110, 99, 101, 34, 44, 34, 82, 101, 100, 32, 99, 104, 114, 111, 18.1053 + 109, 105, 110, 97, 110, 99, 101, 34, 41, 44, 32, 84, 105, 108, 101, 32, 18.1054 + 115, 117, 98, 100, 105, 118, 105, 115, 105, 111, 110, 115, 32, 61, 32, 105, 18.1055 + 110, 116, 40, 49, 44, 49, 44, 49, 48, 41, 44, 32, 110, 111, 116, 101, 18.1056 + 32, 61, 32, 110, 111, 116, 101, 40, 34, 92, 110, 60, 115, 109, 97, 108, 18.1057 + 108, 62, 60, 98, 62, 78, 111, 116, 101, 32, 58, 32, 60, 47, 98, 62, 18.1058 + 84, 104, 105, 115, 32, 102, 105, 108, 116, 101, 114, 32, 105, 115, 32, 97, 18.1059 + 32, 112, 97, 114, 116, 32, 111, 102, 32, 116, 104, 101, 32, 60, 98, 62, 18.1060 + 71, 82, 69, 89, 67, 115, 116, 111, 114, 97, 116, 105, 111, 110, 60, 47, 18.1061 + 98, 62, 32, 102, 114, 97, 109, 101, 119, 111, 114, 107, 44, 32, 115, 101, 18.1062 + 101, 32, 58, 92, 110, 60, 105, 62, 104, 116, 116, 112, 58, 47, 47, 99, 18.1063 + 105, 109, 103, 46, 115, 111, 117, 114, 99, 101, 102, 111, 114, 103, 101, 46, 18.1064 + 110, 101, 116, 47, 103, 114, 101, 121, 99, 115, 116, 111, 114, 97, 116, 105, 18.1065 + 111, 110, 47, 60, 47, 105, 62, 32, 102, 111, 114, 32, 109, 111, 114, 101, 18.1066 + 32, 100, 101, 116, 97, 105, 108, 115, 32, 97, 98, 111, 117, 116, 32, 105, 18.1067 + 116, 46, 60, 47, 115, 109, 97, 108, 108, 62, 34, 41, 10, 35, 32, 82, 18.1068 + 71, 66, 32, 118, 101, 114, 115, 105, 111, 110, 10, 103, 105, 109, 112, 95, 18.1069 + 97, 110, 105, 115, 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 18.1070 + 101, 114, 48, 32, 58, 10, 32, 32, 45, 115, 112, 108, 105, 116, 95, 116, 18.1071 + 105, 108, 101, 32, 36, 49, 50, 44, 36, 49, 50, 32, 45, 114, 101, 112, 18.1072 + 101, 97, 116, 32, 36, 49, 49, 32, 45, 115, 109, 111, 111, 116, 104, 32, 18.1073 + 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 52, 44, 36, 53, 44, 36, 18.1074 + 54, 44, 36, 55, 44, 36, 56, 44, 36, 57, 44, 36, 49, 48, 32, 45, 18.1075 + 100, 111, 110, 101, 32, 45, 97, 112, 112, 101, 110, 100, 95, 116, 105, 108, 18.1076 + 101, 32, 36, 49, 50, 44, 36, 49, 50, 32, 45, 99, 117, 116, 32, 48, 18.1077 + 44, 50, 53, 53, 10, 35, 32, 76, 117, 109, 105, 110, 97, 110, 99, 101, 18.1078 + 32, 118, 101, 114, 115, 105, 111, 110, 10, 103, 105, 109, 112, 95, 97, 110, 18.1079 + 105, 115, 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 114, 18.1080 + 49, 32, 58, 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 18.1081 + 32, 45, 115, 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 49, 18.1082 + 49, 32, 45, 115, 109, 111, 111, 116, 104, 91, 45, 51, 93, 32, 36, 49, 18.1083 + 44, 36, 50, 44, 36, 51, 44, 36, 52, 44, 36, 53, 44, 36, 54, 44, 18.1084 + 36, 55, 44, 36, 56, 44, 36, 57, 44, 36, 49, 48, 32, 45, 100, 111, 18.1085 + 110, 101, 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 18.1086 + 103, 98, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 18.1087 + 67, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 32, 118, 101, 114, 115, 18.1088 + 105, 111, 110, 10, 103, 105, 109, 112, 95, 97, 110, 105, 115, 111, 116, 114, 18.1089 + 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 114, 50, 32, 58, 10, 32, 18.1090 + 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 115, 32, 118, 18.1091 + 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 49, 49, 32, 45, 115, 109, 18.1092 + 111, 111, 116, 104, 91, 45, 50, 44, 45, 49, 93, 32, 36, 49, 44, 36, 18.1093 + 50, 44, 36, 51, 44, 36, 52, 44, 36, 53, 44, 36, 54, 44, 36, 55, 18.1094 + 44, 36, 56, 44, 36, 57, 44, 36, 49, 48, 32, 45, 100, 111, 110, 101, 18.1095 + 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 18.1096 + 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 66, 108, 18.1097 + 117, 101, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 32, 118, 18.1098 + 101, 114, 115, 105, 111, 110, 10, 103, 105, 109, 112, 95, 97, 110, 105, 115, 18.1099 + 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 114, 51, 32, 18.1100 + 58, 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 18.1101 + 115, 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 49, 49, 32, 18.1102 + 45, 115, 109, 111, 111, 116, 104, 91, 45, 50, 93, 32, 36, 49, 44, 36, 18.1103 + 50, 44, 36, 51, 44, 36, 52, 44, 36, 53, 44, 36, 54, 44, 36, 55, 18.1104 + 44, 36, 56, 44, 36, 57, 44, 36, 49, 48, 32, 45, 100, 111, 110, 101, 18.1105 + 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 18.1106 + 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 82, 101, 18.1107 + 100, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 32, 118, 101, 18.1108 + 114, 115, 105, 111, 110, 10, 103, 105, 109, 112, 95, 97, 110, 105, 115, 111, 18.1109 + 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 114, 52, 32, 58, 18.1110 + 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 115, 18.1111 + 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 49, 49, 32, 45, 18.1112 + 115, 109, 111, 111, 116, 104, 91, 45, 49, 93, 32, 36, 49, 44, 36, 50, 18.1113 + 44, 36, 51, 44, 36, 52, 44, 36, 53, 44, 36, 54, 44, 36, 55, 44, 18.1114 + 36, 56, 44, 36, 57, 44, 36, 49, 48, 32, 45, 100, 111, 110, 101, 32, 18.1115 + 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 32, 18.1116 + 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 71, 101, 110, 18.1117 + 101, 114, 105, 99, 32, 118, 101, 114, 115, 105, 111, 110, 10, 103, 105, 109, 18.1118 + 112, 95, 97, 110, 105, 115, 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 18.1119 + 108, 116, 101, 114, 32, 58, 10, 32, 32, 45, 103, 105, 109, 112, 95, 97, 18.1120 + 110, 105, 115, 111, 116, 114, 111, 112, 105, 99, 95, 102, 105, 108, 116, 101, 18.1121 + 114, 36, 49, 50, 32, 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 52, 18.1122 + 44, 36, 53, 44, 36, 54, 44, 36, 55, 44, 36, 56, 44, 36, 57, 44, 18.1123 + 36, 49, 48, 44, 36, 49, 49, 44, 36, 49, 51, 10, 10, 35, 64, 103, 18.1124 + 105, 109, 112, 32, 80, 97, 116, 99, 104, 45, 98, 97, 115, 101, 100, 32, 18.1125 + 115, 109, 111, 111, 116, 104, 105, 110, 103, 32, 58, 32, 103, 105, 109, 112, 18.1126 + 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 116, 101, 114, 44, 32, 103, 18.1127 + 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 116, 101, 114, 18.1128 + 44, 32, 80, 97, 116, 99, 104, 32, 115, 105, 122, 101, 32, 61, 32, 105, 18.1129 + 110, 116, 40, 51, 44, 50, 44, 50, 49, 41, 44, 32, 76, 111, 111, 107, 18.1130 + 117, 112, 32, 115, 105, 122, 101, 32, 61, 32, 105, 110, 116, 40, 53, 44, 18.1131 + 50, 44, 50, 49, 41, 44, 32, 80, 97, 116, 99, 104, 32, 118, 97, 114, 18.1132 + 105, 97, 110, 99, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 48, 18.1133 + 44, 48, 46, 49, 44, 50, 48, 48, 41, 44, 32, 86, 97, 108, 117, 101, 18.1134 + 32, 118, 97, 114, 105, 97, 110, 99, 101, 32, 61, 32, 102, 108, 111, 97, 18.1135 + 116, 40, 49, 48, 44, 48, 46, 49, 44, 50, 48, 48, 41, 44, 32, 78, 18.1136 + 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 97, 116, 105, 18.1137 + 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 49, 44, 49, 44, 49, 48, 18.1138 + 41, 44, 32, 67, 104, 97, 110, 110, 101, 108, 115, 32, 112, 114, 111, 99, 18.1139 + 101, 115, 115, 105, 110, 103, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 18.1140 + 34, 82, 71, 66, 34, 44, 34, 76, 117, 109, 105, 110, 97, 110, 99, 101, 18.1141 + 34, 44, 34, 66, 108, 117, 101, 32, 97, 110, 100, 32, 82, 101, 100, 32, 18.1142 + 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 115, 34, 44, 34, 66, 18.1143 + 108, 117, 101, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 101, 34, 18.1144 + 44, 34, 82, 101, 100, 32, 99, 104, 114, 111, 109, 105, 110, 97, 110, 99, 18.1145 + 101, 34, 41, 44, 32, 110, 111, 116, 101, 32, 61, 32, 110, 111, 116, 101, 18.1146 + 40, 34, 92, 110, 60, 115, 109, 97, 108, 108, 62, 60, 98, 62, 78, 111, 18.1147 + 116, 101, 32, 58, 32, 60, 47, 98, 62, 84, 104, 105, 115, 32, 102, 105, 18.1148 + 108, 116, 101, 114, 32, 105, 115, 32, 97, 32, 112, 97, 114, 116, 32, 111, 18.1149 + 102, 32, 116, 104, 101, 32, 60, 98, 62, 71, 82, 69, 89, 67, 115, 116, 18.1150 + 111, 114, 97, 116, 105, 111, 110, 60, 47, 98, 62, 32, 102, 114, 97, 109, 18.1151 + 101, 119, 111, 114, 107, 44, 32, 115, 101, 101, 32, 58, 92, 110, 60, 105, 18.1152 + 62, 104, 116, 116, 112, 58, 47, 47, 99, 105, 109, 103, 46, 115, 111, 117, 18.1153 + 114, 99, 101, 102, 111, 114, 103, 101, 46, 110, 101, 116, 47, 103, 114, 101, 18.1154 + 121, 99, 115, 116, 111, 114, 97, 116, 105, 111, 110, 47, 60, 47, 105, 62, 18.1155 + 32, 102, 111, 114, 32, 109, 111, 114, 101, 32, 100, 101, 116, 97, 105, 108, 18.1156 + 115, 32, 97, 98, 111, 117, 116, 32, 105, 116, 46, 60, 47, 115, 109, 97, 18.1157 + 108, 108, 62, 34, 41, 10, 35, 32, 82, 71, 66, 32, 118, 101, 114, 115, 18.1158 + 105, 111, 110, 10, 103, 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 18.1159 + 105, 108, 116, 101, 114, 48, 32, 58, 10, 32, 32, 45, 114, 101, 112, 101, 18.1160 + 97, 116, 32, 36, 53, 32, 45, 100, 101, 110, 111, 105, 115, 101, 32, 36, 18.1161 + 52, 44, 36, 51, 44, 36, 49, 44, 36, 50, 32, 45, 100, 111, 110, 101, 18.1162 + 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 76, 117, 18.1163 + 109, 105, 110, 97, 110, 99, 101, 32, 118, 101, 114, 115, 105, 111, 110, 10, 18.1164 + 103, 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 116, 101, 18.1165 + 114, 49, 32, 58, 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 18.1166 + 114, 32, 45, 115, 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 18.1167 + 53, 32, 45, 100, 101, 110, 111, 105, 115, 101, 91, 45, 51, 93, 32, 36, 18.1168 + 52, 44, 36, 51, 44, 36, 49, 44, 36, 50, 32, 45, 100, 111, 110, 101, 18.1169 + 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 18.1170 + 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 67, 104, 18.1171 + 114, 111, 109, 105, 110, 97, 110, 99, 101, 32, 118, 101, 114, 115, 105, 111, 18.1172 + 110, 10, 103, 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 18.1173 + 116, 101, 114, 50, 32, 58, 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 18.1174 + 98, 99, 114, 32, 45, 115, 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 18.1175 + 32, 36, 53, 32, 45, 100, 101, 110, 111, 105, 115, 101, 91, 45, 50, 44, 18.1176 + 45, 49, 93, 32, 36, 52, 44, 36, 51, 44, 36, 49, 44, 36, 50, 32, 18.1177 + 45, 100, 111, 110, 101, 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 18.1178 + 114, 50, 114, 103, 98, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 18.1179 + 10, 35, 32, 66, 108, 117, 101, 32, 99, 104, 114, 111, 109, 105, 110, 97, 18.1180 + 110, 99, 101, 32, 118, 101, 114, 115, 105, 111, 110, 10, 103, 105, 109, 112, 18.1181 + 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 116, 101, 114, 51, 32, 58, 18.1182 + 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 32, 45, 115, 18.1183 + 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 53, 32, 45, 100, 18.1184 + 101, 110, 111, 105, 115, 101, 91, 45, 50, 93, 32, 36, 52, 44, 36, 51, 18.1185 + 44, 36, 49, 44, 36, 50, 32, 45, 100, 111, 110, 101, 32, 45, 97, 32, 18.1186 + 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 32, 45, 99, 117, 18.1187 + 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 82, 101, 100, 32, 99, 104, 18.1188 + 114, 111, 109, 105, 110, 97, 110, 99, 101, 32, 118, 101, 114, 115, 105, 111, 18.1189 + 110, 10, 103, 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 18.1190 + 116, 101, 114, 52, 32, 58, 10, 32, 32, 45, 114, 103, 98, 50, 121, 99, 18.1191 + 98, 99, 114, 32, 45, 115, 32, 118, 32, 45, 114, 101, 112, 101, 97, 116, 18.1192 + 32, 36, 53, 32, 45, 100, 101, 110, 111, 105, 115, 101, 91, 45, 49, 93, 18.1193 + 32, 36, 52, 44, 36, 51, 44, 36, 49, 44, 36, 50, 32, 45, 100, 111, 18.1194 + 110, 101, 32, 45, 97, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 18.1195 + 103, 98, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 35, 32, 18.1196 + 71, 101, 110, 101, 114, 105, 99, 32, 118, 101, 114, 115, 105, 111, 110, 10, 18.1197 + 103, 105, 109, 112, 95, 112, 97, 116, 99, 104, 95, 102, 105, 108, 116, 101, 18.1198 + 114, 32, 58, 10, 32, 32, 45, 103, 105, 109, 112, 95, 112, 97, 116, 99, 18.1199 + 104, 95, 102, 105, 108, 116, 101, 114, 36, 54, 32, 36, 49, 44, 36, 50, 18.1200 + 44, 36, 51, 44, 36, 52, 44, 36, 53, 10, 10, 35, 64, 103, 105, 109, 18.1201 + 112, 32, 66, 105, 108, 97, 116, 101, 114, 97, 108, 32, 102, 105, 108, 116, 18.1202 + 101, 114, 105, 110, 103, 32, 58, 32, 103, 105, 109, 112, 95, 98, 105, 108, 18.1203 + 97, 116, 101, 114, 97, 108, 44, 32, 103, 105, 109, 112, 95, 98, 105, 108, 18.1204 + 97, 116, 101, 114, 97, 108, 44, 32, 83, 112, 97, 116, 105, 97, 108, 32, 18.1205 + 118, 97, 114, 105, 97, 110, 99, 101, 32, 61, 32, 102, 108, 111, 97, 116, 18.1206 + 40, 52, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 86, 97, 108, 117, 18.1207 + 101, 32, 118, 97, 114, 105, 97, 110, 99, 101, 32, 61, 32, 102, 108, 111, 18.1208 + 97, 116, 40, 51, 48, 44, 48, 44, 49, 48, 48, 41, 44, 32, 78, 117, 18.1209 + 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 97, 116, 105, 111, 18.1210 + 110, 115, 32, 61, 32, 105, 110, 116, 40, 49, 44, 49, 44, 49, 48, 41, 18.1211 + 10, 103, 105, 109, 112, 95, 98, 105, 108, 97, 116, 101, 114, 97, 108, 32, 18.1212 + 58, 10, 32, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 51, 32, 45, 18.1213 + 98, 105, 108, 97, 116, 101, 114, 97, 108, 32, 36, 49, 44, 36, 50, 32, 18.1214 + 45, 100, 111, 110, 101, 10, 10, 35, 64, 103, 105, 109, 112, 32, 77, 101, 18.1215 + 97, 110, 45, 99, 117, 114, 118, 97, 116, 117, 114, 101, 32, 114, 101, 103, 18.1216 + 117, 108, 97, 114, 105, 122, 97, 116, 105, 111, 110, 32, 58, 32, 103, 105, 18.1217 + 109, 112, 95, 109, 101, 97, 110, 99, 117, 114, 118, 97, 116, 117, 114, 101, 18.1218 + 95, 102, 108, 111, 119, 44, 32, 103, 105, 109, 112, 95, 109, 101, 97, 110, 18.1219 + 99, 117, 114, 118, 97, 116, 117, 114, 101, 95, 102, 108, 111, 119, 44, 32, 18.1220 + 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 97, 116, 18.1221 + 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 52, 44, 49, 44, 49, 18.1222 + 48, 41, 44, 32, 84, 105, 109, 101, 32, 115, 116, 101, 112, 32, 61, 32, 18.1223 + 102, 108, 111, 97, 116, 40, 51, 48, 44, 53, 44, 53, 48, 41, 10, 103, 18.1224 + 105, 109, 112, 95, 109, 101, 97, 110, 99, 117, 114, 118, 97, 116, 117, 114, 18.1225 + 101, 95, 102, 108, 111, 119, 32, 58, 10, 32, 32, 45, 109, 101, 97, 110, 18.1226 + 99, 117, 114, 118, 97, 116, 117, 114, 101, 95, 102, 108, 111, 119, 32, 36, 18.1227 + 49, 44, 36, 50, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 18.1228 + 10, 35, 64, 103, 105, 109, 112, 32, 84, 86, 32, 114, 101, 103, 117, 108, 18.1229 + 97, 114, 105, 122, 97, 116, 105, 111, 110, 32, 58, 32, 103, 105, 109, 112, 18.1230 + 95, 116, 118, 102, 108, 111, 119, 44, 32, 103, 105, 109, 112, 95, 116, 118, 18.1231 + 102, 108, 111, 119, 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 18.1232 + 105, 116, 101, 114, 97, 116, 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 18.1233 + 40, 52, 44, 49, 44, 52, 48, 41, 44, 32, 84, 105, 109, 101, 32, 115, 18.1234 + 116, 101, 112, 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 48, 44, 53, 18.1235 + 44, 49, 48, 48, 41, 10, 103, 105, 109, 112, 95, 116, 118, 102, 108, 111, 18.1236 + 119, 32, 58, 10, 32, 32, 45, 116, 118, 95, 102, 108, 111, 119, 32, 36, 18.1237 + 49, 44, 36, 50, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 10, 18.1238 + 10, 35, 64, 103, 105, 109, 112, 32, 73, 110, 118, 101, 114, 115, 101, 32, 18.1239 + 100, 105, 102, 102, 117, 115, 105, 111, 110, 32, 115, 104, 97, 114, 112, 101, 18.1240 + 110, 105, 110, 103, 32, 58, 32, 103, 105, 109, 112, 95, 115, 104, 97, 114, 18.1241 + 112, 101, 110, 48, 44, 32, 103, 105, 109, 112, 95, 115, 104, 97, 114, 112, 18.1242 + 101, 110, 48, 44, 32, 65, 109, 112, 108, 105, 116, 117, 100, 101, 32, 61, 18.1243 + 32, 102, 108, 111, 97, 116, 40, 53, 48, 44, 49, 44, 51, 48, 48, 41, 18.1244 + 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 18.1245 + 97, 116, 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 50, 44, 49, 18.1246 + 44, 49, 48, 41, 10, 103, 105, 109, 112, 95, 115, 104, 97, 114, 112, 101, 18.1247 + 110, 48, 32, 58, 10, 32, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 18.1248 + 50, 32, 45, 115, 104, 97, 114, 112, 101, 110, 32, 36, 49, 44, 48, 32, 18.1249 + 45, 100, 111, 110, 101, 32, 45, 99, 117, 116, 32, 48, 44, 50, 53, 53, 18.1250 + 10, 10, 35, 64, 103, 105, 109, 112, 32, 83, 104, 111, 99, 107, 32, 102, 18.1251 + 105, 108, 116, 101, 114, 115, 32, 115, 104, 97, 114, 112, 101, 110, 105, 110, 18.1252 + 103, 32, 58, 32, 103, 105, 109, 112, 95, 115, 104, 97, 114, 112, 101, 110, 18.1253 + 49, 44, 32, 103, 105, 109, 112, 95, 115, 104, 97, 114, 112, 101, 110, 49, 18.1254 + 44, 32, 65, 109, 112, 108, 105, 116, 117, 100, 101, 32, 61, 32, 102, 108, 18.1255 + 111, 97, 116, 40, 49, 53, 48, 44, 49, 44, 52, 48, 48, 41, 44, 32, 18.1256 + 69, 100, 103, 101, 32, 116, 104, 114, 101, 115, 104, 111, 108, 100, 32, 61, 18.1257 + 32, 102, 108, 111, 97, 116, 40, 48, 46, 49, 44, 48, 44, 48, 46, 55, 18.1258 + 41, 44, 32, 71, 114, 97, 100, 105, 101, 110, 116, 32, 115, 109, 111, 111, 18.1259 + 116, 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 18.1260 + 46, 56, 44, 48, 44, 49, 48, 41, 44, 32, 84, 101, 110, 115, 111, 114, 18.1261 + 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 18.1262 + 111, 97, 116, 40, 49, 46, 49, 44, 48, 44, 49, 48, 41, 44, 32, 78, 18.1263 + 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 97, 116, 105, 18.1264 + 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 49, 44, 49, 44, 49, 48, 18.1265 + 41, 10, 103, 105, 109, 112, 95, 115, 104, 97, 114, 112, 101, 110, 49, 32, 18.1266 + 58, 10, 32, 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 53, 32, 45, 18.1267 + 115, 104, 97, 114, 112, 101, 110, 32, 36, 49, 44, 49, 44, 36, 50, 44, 18.1268 + 36, 51, 44, 36, 52, 32, 45, 100, 111, 110, 101, 32, 45, 99, 117, 116, 18.1269 + 32, 48, 44, 50, 53, 53, 10, 10, 35, 64, 103, 105, 109, 112, 32, 68, 18.1270 + 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 32, 58, 32, 103, 105, 109, 18.1271 + 112, 95, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 44, 32, 103, 18.1272 + 105, 109, 112, 95, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 48, 18.1273 + 44, 32, 77, 101, 116, 104, 111, 100, 32, 61, 32, 99, 104, 111, 105, 99, 18.1274 + 101, 40, 34, 83, 105, 109, 112, 108, 101, 34, 44, 34, 77, 111, 116, 105, 18.1275 + 111, 110, 45, 99, 111, 109, 112, 101, 110, 115, 97, 116, 101, 100, 34, 41, 18.1276 + 10, 103, 105, 109, 112, 95, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 18.1277 + 101, 48, 32, 58, 10, 32, 32, 45, 100, 101, 105, 110, 116, 101, 114, 108, 18.1278 + 97, 99, 101, 32, 48, 10, 103, 105, 109, 112, 95, 100, 101, 105, 110, 116, 18.1279 + 101, 114, 108, 97, 99, 101, 32, 58, 10, 32, 32, 45, 100, 101, 105, 110, 18.1280 + 116, 101, 114, 108, 97, 99, 101, 32, 36, 49, 10, 10, 35, 64, 103, 105, 18.1281 + 109, 112, 32, 95, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 97, 110, 18.1282 + 100, 32, 115, 121, 110, 116, 104, 101, 115, 105, 115, 10, 35, 45, 45, 45, 18.1283 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1284 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 64, 18.1285 + 103, 105, 109, 112, 32, 51, 68, 32, 101, 108, 101, 118, 97, 116, 105, 111, 18.1286 + 110, 32, 91, 115, 116, 97, 116, 105, 99, 93, 32, 58, 32, 103, 105, 109, 18.1287 + 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 44, 32, 103, 105, 109, 18.1288 + 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 95, 112, 114, 101, 118, 18.1289 + 105, 101, 119, 44, 32, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 119, 18.1290 + 105, 100, 116, 104, 32, 61, 32, 105, 110, 116, 40, 53, 49, 50, 44, 56, 18.1291 + 44, 49, 48, 50, 52, 41, 44, 32, 82, 101, 110, 100, 101, 114, 105, 110, 18.1292 + 103, 32, 104, 101, 105, 103, 104, 116, 32, 61, 32, 105, 110, 116, 40, 53, 18.1293 + 49, 50, 44, 56, 44, 49, 48, 50, 52, 41, 44, 32, 86, 97, 108, 117, 18.1294 + 101, 32, 115, 99, 97, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1295 + 45, 48, 46, 49, 53, 44, 45, 48, 46, 55, 44, 48, 46, 55, 41, 44, 18.1296 + 32, 77, 97, 112, 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 32, 18.1297 + 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 44, 49, 48, 41, 44, 18.1298 + 32, 66, 97, 99, 107, 103, 114, 111, 117, 110, 100, 32, 99, 111, 108, 111, 18.1299 + 114, 32, 61, 32, 99, 111, 108, 111, 114, 40, 50, 53, 53, 44, 50, 53, 18.1300 + 53, 44, 50, 53, 53, 41, 44, 32, 88, 45, 97, 110, 103, 108, 101, 32, 18.1301 + 61, 32, 102, 108, 111, 97, 116, 40, 55, 48, 44, 48, 44, 51, 54, 48, 18.1302 + 41, 44, 32, 89, 45, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 18.1303 + 97, 116, 40, 50, 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 90, 111, 18.1304 + 111, 109, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 46, 49, 18.1305 + 44, 52, 41, 44, 32, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 116, 18.1306 + 121, 112, 101, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 52, 44, 34, 18.1307 + 80, 111, 105, 110, 116, 115, 34, 44, 34, 76, 105, 110, 101, 115, 34, 44, 18.1308 + 34, 70, 108, 97, 116, 34, 44, 34, 70, 108, 97, 116, 32, 115, 104, 97, 18.1309 + 100, 101, 100, 34, 44, 34, 71, 111, 117, 114, 97, 117, 100, 34, 44, 34, 18.1310 + 80, 104, 111, 110, 103, 34, 41, 44, 32, 79, 112, 97, 99, 105, 116, 121, 18.1311 + 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 44, 49, 41, 44, 18.1312 + 32, 70, 111, 99, 97, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1313 + 53, 48, 48, 44, 49, 48, 48, 44, 56, 48, 48, 41, 10, 103, 105, 109, 18.1314 + 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 32, 58, 10, 32, 32, 18.1315 + 45, 116, 111, 95, 114, 103, 98, 32, 45, 45, 98, 108, 117, 114, 32, 36, 18.1316 + 52, 32, 45, 42, 91, 45, 49, 93, 32, 36, 51, 32, 45, 114, 32, 36, 18.1317 + 49, 44, 36, 50, 44, 49, 44, 45, 49, 48, 48, 44, 50, 32, 45, 101, 18.1318 + 108, 101, 118, 97, 116, 105, 111, 110, 51, 100, 91, 48, 93, 32, 91, 45, 18.1319 + 49, 93, 32, 45, 114, 109, 91, 49, 93, 32, 45, 99, 51, 100, 91, 45, 18.1320 + 49, 93, 32, 45, 114, 51, 100, 32, 36, 49, 49, 32, 45, 102, 51, 100, 18.1321 + 32, 36, 49, 51, 10, 32, 32, 40, 36, 53, 94, 36, 54, 94, 36, 55, 18.1322 + 41, 32, 45, 114, 91, 45, 49, 93, 32, 36, 49, 120, 36, 50, 120, 49, 18.1323 + 120, 51, 10, 32, 32, 45, 114, 111, 116, 51, 100, 91, 48, 93, 32, 48, 18.1324 + 44, 48, 44, 49, 44, 36, 57, 32, 45, 114, 111, 116, 51, 100, 91, 48, 18.1325 + 93, 32, 49, 44, 48, 44, 48, 44, 36, 56, 32, 45, 42, 51, 100, 91, 18.1326 + 48, 93, 32, 36, 49, 48, 32, 45, 111, 98, 106, 101, 99, 116, 51, 100, 18.1327 + 91, 45, 49, 93, 32, 91, 48, 93, 44, 53, 48, 37, 44, 53, 48, 37, 18.1328 + 44, 48, 44, 36, 49, 50, 32, 45, 114, 109, 91, 48, 93, 10, 10, 103, 18.1329 + 105, 109, 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 95, 112, 114, 18.1330 + 101, 118, 105, 101, 119, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 18.1331 + 98, 32, 45, 45, 98, 108, 117, 114, 32, 36, 52, 32, 45, 42, 91, 45, 18.1332 + 49, 93, 32, 36, 51, 32, 45, 114, 32, 50, 48, 48, 44, 50, 48, 48, 18.1333 + 44, 49, 44, 45, 49, 48, 48, 44, 50, 32, 45, 101, 108, 101, 118, 97, 18.1334 + 116, 105, 111, 110, 51, 100, 91, 48, 93, 32, 91, 45, 49, 93, 32, 45, 18.1335 + 114, 109, 91, 45, 49, 93, 32, 45, 99, 51, 100, 91, 45, 49, 93, 32, 18.1336 + 45, 114, 51, 100, 32, 36, 49, 49, 32, 45, 102, 51, 100, 32, 36, 49, 18.1337 + 51, 10, 32, 32, 40, 36, 53, 94, 36, 54, 94, 36, 55, 41, 32, 45, 18.1338 + 114, 91, 45, 49, 93, 32, 50, 48, 48, 120, 50, 48, 48, 120, 49, 120, 18.1339 + 51, 10, 32, 32, 45, 114, 111, 116, 51, 100, 91, 48, 93, 32, 48, 44, 18.1340 + 48, 44, 49, 44, 36, 57, 32, 45, 114, 111, 116, 51, 100, 91, 48, 93, 18.1341 + 32, 49, 44, 48, 44, 48, 44, 36, 56, 32, 45, 42, 51, 100, 91, 48, 18.1342 + 93, 32, 36, 49, 48, 32, 45, 111, 98, 106, 101, 99, 116, 51, 100, 91, 18.1343 + 45, 49, 93, 32, 91, 48, 93, 44, 53, 48, 37, 44, 53, 48, 37, 44, 18.1344 + 48, 44, 36, 49, 50, 32, 45, 114, 109, 91, 48, 93, 10, 10, 35, 64, 18.1345 + 103, 105, 109, 112, 32, 51, 68, 32, 101, 108, 101, 118, 97, 116, 105, 111, 18.1346 + 110, 32, 91, 97, 110, 105, 109, 97, 116, 101, 100, 93, 32, 58, 32, 103, 18.1347 + 105, 109, 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 95, 97, 110, 18.1348 + 105, 109, 44, 32, 103, 105, 109, 112, 95, 101, 108, 101, 118, 97, 116, 105, 18.1349 + 111, 110, 95, 97, 110, 105, 109, 95, 112, 114, 101, 118, 105, 101, 119, 44, 18.1350 + 32, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 119, 105, 100, 116, 104, 18.1351 + 32, 61, 32, 105, 110, 116, 40, 53, 49, 50, 44, 56, 44, 49, 48, 50, 18.1352 + 52, 41, 44, 32, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 104, 101, 18.1353 + 105, 103, 104, 116, 32, 61, 32, 105, 110, 116, 40, 53, 49, 50, 44, 56, 18.1354 + 44, 49, 48, 50, 52, 41, 44, 32, 86, 97, 108, 117, 101, 32, 115, 99, 18.1355 + 97, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 45, 48, 46, 49, 18.1356 + 53, 44, 45, 48, 46, 55, 44, 48, 46, 55, 41, 44, 32, 77, 97, 112, 18.1357 + 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 32, 61, 32, 102, 108, 18.1358 + 111, 97, 116, 40, 49, 44, 48, 44, 49, 48, 41, 44, 32, 66, 97, 99, 18.1359 + 107, 103, 114, 111, 117, 110, 100, 32, 99, 111, 108, 111, 114, 32, 61, 32, 18.1360 + 99, 111, 108, 111, 114, 40, 50, 53, 53, 44, 50, 53, 53, 44, 50, 53, 18.1361 + 53, 41, 44, 32, 88, 45, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 18.1362 + 111, 97, 116, 40, 55, 48, 44, 48, 44, 51, 54, 48, 41, 44, 32, 82, 18.1363 + 111, 116, 97, 116, 105, 111, 110, 32, 115, 116, 101, 112, 32, 61, 32, 102, 18.1364 + 108, 111, 97, 116, 40, 53, 44, 49, 44, 51, 54, 48, 41, 44, 32, 90, 18.1365 + 111, 111, 109, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 46, 18.1366 + 49, 44, 52, 41, 44, 32, 82, 101, 110, 100, 101, 114, 105, 110, 103, 32, 18.1367 + 116, 121, 112, 101, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 52, 44, 18.1368 + 34, 80, 111, 105, 110, 116, 115, 34, 44, 34, 76, 105, 110, 101, 115, 34, 18.1369 + 44, 34, 70, 108, 97, 116, 34, 44, 34, 70, 108, 97, 116, 32, 115, 104, 18.1370 + 97, 100, 101, 100, 34, 44, 34, 71, 111, 117, 114, 97, 117, 100, 34, 44, 18.1371 + 34, 80, 104, 111, 110, 103, 34, 41, 44, 32, 79, 112, 97, 99, 105, 116, 18.1372 + 121, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 44, 48, 44, 49, 41, 18.1373 + 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 102, 114, 97, 109, 18.1374 + 101, 115, 32, 61, 32, 105, 110, 116, 40, 49, 48, 44, 49, 44, 51, 54, 18.1375 + 48, 41, 44, 32, 70, 111, 99, 97, 108, 101, 32, 61, 32, 102, 108, 111, 18.1376 + 97, 116, 40, 53, 48, 48, 44, 49, 48, 48, 44, 56, 48, 48, 41, 10, 18.1377 + 103, 105, 109, 112, 95, 101, 108, 101, 118, 97, 116, 105, 111, 110, 95, 97, 18.1378 + 110, 105, 109, 32, 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 18.1379 + 45, 45, 98, 108, 117, 114, 32, 36, 52, 32, 45, 42, 91, 49, 93, 32, 18.1380 + 36, 51, 32, 45, 114, 32, 36, 49, 44, 36, 50, 44, 49, 44, 45, 49, 18.1381 + 48, 48, 44, 50, 32, 45, 101, 108, 101, 118, 97, 116, 105, 111, 110, 51, 18.1382 + 100, 91, 48, 93, 32, 91, 49, 93, 32, 45, 114, 109, 91, 49, 93, 32, 18.1383 + 45, 99, 51, 100, 91, 45, 49, 93, 32, 45, 114, 51, 100, 32, 36, 49, 18.1384 + 49, 32, 45, 102, 51, 100, 32, 36, 49, 52, 10, 32, 32, 45, 114, 101, 18.1385 + 112, 101, 97, 116, 32, 36, 49, 51, 10, 32, 32, 40, 36, 53, 94, 36, 18.1386 + 54, 94, 36, 55, 41, 32, 45, 114, 91, 45, 49, 93, 32, 36, 49, 120, 18.1387 + 36, 50, 120, 49, 120, 51, 10, 32, 32, 45, 45, 114, 111, 116, 51, 100, 18.1388 + 91, 48, 93, 32, 49, 44, 48, 44, 48, 44, 36, 56, 32, 45, 42, 51, 18.1389 + 100, 91, 45, 49, 93, 32, 36, 49, 48, 32, 45, 111, 98, 106, 101, 99, 18.1390 + 116, 51, 100, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 53, 48, 37, 18.1391 + 44, 53, 48, 37, 44, 48, 44, 36, 49, 50, 32, 45, 114, 109, 91, 45, 18.1392 + 49, 93, 32, 45, 114, 111, 116, 51, 100, 91, 48, 93, 32, 48, 44, 48, 18.1393 + 44, 49, 44, 36, 57, 32, 45, 100, 111, 110, 101, 32, 45, 114, 109, 91, 18.1394 + 48, 93, 10, 10, 103, 105, 109, 112, 95, 101, 108, 101, 118, 97, 116, 105, 18.1395 + 111, 110, 95, 97, 110, 105, 109, 95, 112, 114, 101, 118, 105, 101, 119, 32, 18.1396 + 58, 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 45, 45, 98, 108, 18.1397 + 117, 114, 32, 36, 52, 32, 45, 42, 91, 49, 93, 32, 36, 51, 32, 45, 18.1398 + 114, 32, 50, 48, 48, 44, 50, 48, 48, 44, 49, 44, 45, 49, 48, 48, 18.1399 + 44, 50, 32, 45, 101, 108, 101, 118, 97, 116, 105, 111, 110, 51, 100, 91, 18.1400 + 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 18.1401 + 32, 45, 99, 51, 100, 91, 45, 49, 93, 32, 45, 114, 51, 100, 32, 36, 18.1402 + 49, 49, 32, 45, 102, 51, 100, 32, 36, 49, 52, 10, 32, 32, 40, 36, 18.1403 + 53, 94, 36, 54, 94, 36, 55, 41, 32, 45, 114, 91, 45, 49, 93, 32, 18.1404 + 50, 48, 48, 120, 50, 48, 48, 120, 49, 120, 51, 10, 32, 32, 45, 114, 18.1405 + 111, 116, 51, 100, 91, 48, 93, 32, 49, 44, 48, 44, 48, 44, 36, 56, 18.1406 + 32, 45, 42, 51, 100, 91, 48, 93, 32, 36, 49, 48, 32, 45, 111, 98, 18.1407 + 106, 101, 99, 116, 51, 100, 91, 45, 49, 93, 32, 91, 48, 93, 44, 53, 18.1408 + 48, 37, 44, 53, 48, 37, 44, 48, 44, 36, 49, 50, 32, 45, 114, 109, 18.1409 + 91, 48, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 73, 109, 97, 103, 18.1410 + 101, 32, 99, 117, 98, 101, 32, 58, 32, 103, 105, 109, 112, 95, 105, 109, 18.1411 + 97, 103, 101, 99, 117, 98, 101, 51, 100, 44, 32, 103, 105, 109, 112, 95, 18.1412 + 105, 109, 97, 103, 101, 99, 117, 98, 101, 51, 100, 44, 32, 82, 101, 110, 18.1413 + 100, 101, 114, 105, 110, 103, 32, 115, 105, 122, 101, 32, 61, 32, 105, 110, 18.1414 + 116, 40, 53, 49, 50, 44, 49, 44, 49, 48, 50, 52, 41, 44, 32, 73, 18.1415 + 109, 97, 103, 101, 32, 114, 101, 115, 111, 108, 117, 116, 105, 111, 110, 32, 18.1416 + 61, 32, 105, 110, 116, 40, 49, 50, 56, 44, 49, 44, 53, 49, 50, 41, 18.1417 + 44, 32, 67, 117, 98, 101, 32, 115, 105, 122, 101, 32, 61, 32, 102, 108, 18.1418 + 111, 97, 116, 40, 50, 53, 54, 44, 48, 44, 53, 49, 50, 41, 44, 32, 18.1419 + 88, 45, 97, 110, 103, 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1420 + 53, 55, 44, 48, 44, 51, 54, 48, 41, 44, 32, 89, 45, 97, 110, 103, 18.1421 + 108, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 52, 49, 44, 48, 44, 18.1422 + 51, 54, 48, 41, 44, 32, 90, 45, 97, 110, 103, 108, 101, 32, 61, 32, 18.1423 + 102, 108, 111, 97, 116, 40, 50, 49, 44, 48, 44, 51, 54, 48, 41, 44, 18.1424 + 32, 66, 97, 99, 107, 103, 114, 111, 117, 110, 100, 32, 116, 121, 112, 101, 18.1425 + 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 49, 44, 34, 67, 111, 108, 18.1426 + 111, 114, 34, 44, 34, 80, 108, 97, 115, 109, 97, 34, 41, 44, 32, 66, 18.1427 + 97, 99, 107, 103, 114, 111, 117, 110, 100, 32, 99, 111, 108, 111, 114, 32, 18.1428 + 61, 32, 99, 111, 108, 111, 114, 40, 50, 53, 53, 44, 50, 53, 53, 44, 18.1429 + 50, 53, 53, 41, 10, 95, 103, 105, 109, 112, 95, 105, 109, 97, 103, 101, 18.1430 + 99, 117, 98, 101, 51, 100, 48, 32, 58, 32, 40, 36, 49, 94, 36, 50, 18.1431 + 94, 36, 51, 41, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 18.1432 + 44, 49, 32, 45, 114, 109, 91, 45, 50, 93, 10, 95, 103, 105, 109, 112, 18.1433 + 95, 105, 109, 97, 103, 101, 99, 117, 98, 101, 51, 100, 49, 32, 58, 32, 18.1434 + 45, 112, 108, 97, 115, 109, 97, 91, 45, 49, 93, 32, 49, 48, 44, 49, 18.1435 + 48, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 50, 56, 32, 45, 18.1436 + 115, 107, 105, 112, 32, 36, 42, 10, 103, 105, 109, 112, 95, 105, 109, 97, 18.1437 + 103, 101, 99, 117, 98, 101, 51, 100, 32, 58, 10, 32, 32, 45, 116, 111, 18.1438 + 95, 114, 103, 98, 32, 45, 105, 109, 97, 103, 101, 99, 117, 98, 101, 51, 18.1439 + 100, 32, 36, 50, 32, 45, 42, 51, 100, 32, 36, 51, 32, 45, 114, 111, 18.1440 + 116, 51, 100, 32, 48, 44, 48, 44, 49, 44, 36, 54, 32, 45, 114, 111, 18.1441 + 116, 51, 100, 32, 48, 44, 49, 44, 48, 44, 36, 53, 32, 45, 114, 111, 18.1442 + 116, 51, 100, 32, 49, 44, 48, 44, 48, 44, 36, 52, 32, 36, 49, 120, 18.1443 + 36, 49, 120, 49, 120, 51, 10, 32, 32, 45, 95, 103, 105, 109, 112, 95, 18.1444 + 105, 109, 97, 103, 101, 99, 117, 98, 101, 51, 100, 36, 55, 32, 36, 56, 18.1445 + 44, 36, 57, 44, 36, 49, 48, 32, 45, 114, 51, 100, 32, 50, 32, 45, 18.1446 + 111, 51, 100, 32, 45, 111, 98, 106, 101, 99, 116, 51, 100, 91, 49, 93, 18.1447 + 32, 91, 48, 93, 44, 53, 48, 37, 44, 53, 48, 37, 32, 45, 107, 91, 18.1448 + 49, 93, 10, 10, 35, 64, 103, 105, 109, 112, 32, 82, 97, 110, 100, 111, 18.1449 + 109, 32, 51, 68, 32, 111, 98, 106, 101, 99, 116, 115, 32, 58, 32, 103, 18.1450 + 105, 109, 112, 95, 114, 97, 110, 100, 111, 109, 51, 100, 44, 32, 103, 105, 18.1451 + 109, 112, 95, 114, 97, 110, 100, 111, 109, 51, 100, 44, 32, 84, 121, 112, 18.1452 + 101, 32, 111, 102, 32, 111, 98, 106, 101, 99, 116, 115, 32, 61, 32, 99, 18.1453 + 104, 111, 105, 99, 101, 40, 34, 67, 117, 98, 101, 34, 44, 34, 67, 111, 18.1454 + 110, 101, 34, 44, 34, 67, 121, 108, 105, 110, 100, 101, 114, 34, 44, 34, 18.1455 + 83, 112, 104, 101, 114, 101, 34, 44, 34, 84, 111, 114, 117, 115, 34, 41, 18.1456 + 44, 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 111, 98, 106, 101, 18.1457 + 99, 116, 115, 32, 61, 32, 105, 110, 116, 40, 53, 48, 44, 49, 44, 51, 18.1458 + 48, 48, 41, 44, 32, 79, 98, 106, 101, 99, 116, 32, 115, 105, 122, 101, 18.1459 + 32, 61, 32, 102, 108, 111, 97, 116, 40, 51, 44, 49, 44, 50, 48, 41, 18.1460 + 44, 32, 90, 45, 114, 97, 110, 103, 101, 32, 61, 32, 102, 108, 111, 97, 18.1461 + 116, 40, 49, 48, 48, 44, 48, 44, 51, 48, 48, 41, 44, 32, 82, 101, 18.1462 + 110, 100, 101, 114, 105, 110, 103, 32, 116, 121, 112, 101, 32, 61, 32, 99, 18.1463 + 104, 111, 105, 99, 101, 40, 51, 44, 34, 80, 111, 105, 110, 116, 115, 34, 18.1464 + 44, 34, 76, 105, 110, 101, 115, 34, 44, 34, 70, 108, 97, 116, 34, 44, 18.1465 + 34, 70, 108, 97, 116, 32, 115, 104, 97, 100, 101, 100, 34, 44, 34, 71, 18.1466 + 111, 117, 114, 97, 117, 100, 34, 44, 34, 80, 104, 111, 110, 103, 34, 41, 18.1467 + 44, 32, 79, 112, 97, 99, 105, 116, 121, 32, 61, 32, 102, 108, 111, 97, 18.1468 + 116, 40, 49, 44, 48, 44, 49, 41, 10, 95, 103, 105, 109, 112, 95, 114, 18.1469 + 97, 110, 100, 111, 109, 51, 100, 48, 32, 58, 32, 45, 99, 117, 98, 101, 18.1470 + 51, 100, 32, 36, 49, 10, 95, 103, 105, 109, 112, 95, 114, 97, 110, 100, 18.1471 + 111, 109, 51, 100, 49, 32, 58, 32, 40, 36, 49, 41, 32, 45, 47, 91, 18.1472 + 45, 49, 93, 32, 50, 32, 45, 99, 111, 110, 101, 51, 100, 32, 64, 45, 18.1473 + 49, 44, 36, 49, 32, 45, 114, 109, 91, 45, 50, 93, 10, 95, 103, 105, 18.1474 + 109, 112, 95, 114, 97, 110, 100, 111, 109, 51, 100, 50, 32, 58, 32, 40, 18.1475 + 36, 49, 41, 32, 45, 47, 91, 45, 49, 93, 32, 50, 32, 45, 99, 121, 18.1476 + 108, 105, 110, 100, 101, 114, 51, 100, 32, 64, 45, 49, 44, 36, 49, 32, 18.1477 + 45, 114, 109, 91, 45, 50, 93, 10, 95, 103, 105, 109, 112, 95, 114, 97, 18.1478 + 110, 100, 111, 109, 51, 100, 51, 32, 58, 32, 45, 115, 112, 104, 101, 114, 18.1479 + 101, 51, 100, 32, 36, 49, 44, 50, 10, 95, 103, 105, 109, 112, 95, 114, 18.1480 + 97, 110, 100, 111, 109, 51, 100, 52, 32, 58, 32, 40, 36, 49, 41, 32, 18.1481 + 45, 47, 91, 45, 49, 93, 32, 51, 32, 45, 116, 111, 114, 117, 115, 51, 18.1482 + 100, 32, 36, 49, 44, 64, 45, 49, 32, 45, 114, 109, 91, 45, 50, 93, 18.1483 + 10, 103, 105, 109, 112, 95, 114, 97, 110, 100, 111, 109, 51, 100, 32, 58, 18.1484 + 10, 32, 32, 45, 116, 111, 95, 114, 103, 98, 32, 45, 45, 100, 105, 109, 18.1485 + 101, 110, 115, 105, 111, 110, 115, 32, 45, 47, 91, 45, 49, 93, 32, 50, 18.1486 + 32, 45, 114, 101, 112, 101, 97, 116, 32, 36, 50, 10, 32, 32, 40, 64, 18.1487 + 123, 49, 44, 48, 125, 41, 32, 45, 43, 91, 45, 49, 93, 32, 64, 123, 18.1488 + 49, 44, 49, 125, 32, 45, 42, 91, 45, 49, 93, 32, 36, 51, 32, 45, 18.1489 + 47, 91, 45, 49, 93, 32, 49, 48, 48, 32, 45, 112, 91, 45, 49, 93, 18.1490 + 32, 45, 118, 45, 32, 45, 95, 103, 105, 109, 112, 95, 114, 97, 110, 100, 18.1491 + 111, 109, 51, 100, 36, 49, 32, 64, 45, 49, 32, 45, 114, 109, 91, 45, 18.1492 + 50, 93, 10, 32, 32, 45, 114, 111, 116, 51, 100, 91, 45, 49, 93, 32, 18.1493 + 49, 44, 49, 44, 48, 44, 64, 123, 63, 44, 48, 44, 51, 54, 48, 125, 18.1494 + 10, 32, 32, 40, 64, 123, 63, 44, 45, 49, 44, 49, 125, 41, 32, 45, 18.1495 + 42, 91, 45, 49, 93, 32, 64, 123, 49, 44, 48, 125, 32, 40, 64, 123, 18.1496 + 63, 44, 45, 49, 44, 49, 125, 41, 32, 45, 42, 91, 45, 49, 93, 32, 18.1497 + 64, 123, 49, 44, 49, 125, 10, 32, 32, 45, 43, 51, 100, 91, 45, 51, 18.1498 + 93, 32, 64, 45, 50, 44, 64, 45, 49, 44, 64, 123, 63, 44, 45, 36, 18.1499 + 52, 44, 36, 52, 125, 32, 45, 114, 109, 91, 45, 50, 44, 45, 49, 93, 18.1500 + 10, 32, 32, 45, 99, 111, 108, 51, 100, 91, 45, 49, 93, 32, 64, 123, 18.1501 + 63, 44, 50, 53, 53, 125, 44, 64, 123, 63, 44, 50, 53, 53, 125, 44, 18.1502 + 64, 123, 63, 44, 50, 53, 53, 125, 32, 45, 100, 111, 110, 101, 32, 45, 18.1503 + 43, 51, 100, 91, 50, 45, 45, 49, 93, 32, 45, 114, 51, 100, 32, 36, 18.1504 + 53, 32, 45, 111, 51, 100, 32, 45, 111, 98, 106, 101, 99, 116, 51, 100, 18.1505 + 91, 48, 93, 32, 91, 45, 49, 93, 44, 53, 48, 37, 44, 53, 48, 37, 18.1506 + 44, 48, 44, 36, 54, 10, 32, 32, 45, 107, 91, 48, 93, 10, 10, 35, 18.1507 + 64, 103, 105, 109, 112, 32, 77, 97, 110, 100, 101, 108, 98, 114, 111, 116, 18.1508 + 32, 102, 114, 97, 99, 116, 97, 108, 32, 58, 32, 103, 105, 109, 112, 95, 18.1509 + 109, 97, 110, 100, 101, 108, 98, 114, 111, 116, 44, 32, 103, 105, 109, 112, 18.1510 + 95, 109, 97, 110, 100, 101, 108, 98, 114, 111, 116, 44, 32, 88, 45, 111, 18.1511 + 114, 105, 103, 105, 110, 32, 61, 32, 102, 108, 111, 97, 116, 40, 48, 44, 18.1512 + 45, 50, 44, 50, 41, 44, 32, 89, 45, 111, 114, 105, 103, 105, 110, 32, 18.1513 + 61, 32, 102, 108, 111, 97, 116, 40, 48, 44, 45, 50, 44, 50, 41, 44, 18.1514 + 32, 88, 45, 114, 97, 110, 103, 101, 32, 61, 32, 102, 108, 111, 97, 116, 18.1515 + 40, 50, 44, 48, 44, 50, 41, 44, 32, 89, 45, 114, 97, 110, 103, 101, 18.1516 + 32, 61, 32, 102, 108, 111, 97, 116, 40, 50, 44, 48, 44, 50, 41, 44, 18.1517 + 32, 78, 117, 109, 98, 101, 114, 32, 111, 102, 32, 105, 116, 101, 114, 97, 18.1518 + 116, 105, 111, 110, 115, 32, 61, 32, 105, 110, 116, 40, 49, 50, 56, 44, 18.1519 + 49, 44, 53, 49, 50, 41, 44, 32, 70, 114, 97, 99, 116, 97, 108, 32, 18.1520 + 115, 101, 116, 32, 61, 32, 99, 104, 111, 105, 99, 101, 40, 77, 97, 110, 18.1521 + 100, 101, 108, 98, 114, 111, 116, 44, 32, 74, 117, 108, 105, 97, 41, 44, 18.1522 + 32, 88, 45, 115, 101, 101, 100, 32, 61, 32, 102, 108, 111, 97, 116, 40, 18.1523 + 48, 44, 45, 50, 44, 50, 41, 44, 32, 89, 45, 115, 101, 101, 100, 32, 18.1524 + 61, 32, 102, 108, 111, 97, 116, 40, 48, 44, 45, 50, 44, 50, 41, 44, 18.1525 + 32, 80, 97, 108, 101, 116, 116, 101, 32, 61, 32, 99, 104, 111, 105, 99, 18.1526 + 101, 40, 71, 114, 97, 121, 115, 99, 97, 108, 101, 44, 66, 108, 117, 101, 18.1527 + 44, 72, 111, 116, 44, 67, 108, 117, 115, 116, 101, 114, 115, 41, 10, 103, 18.1528 + 105, 109, 112, 95, 109, 97, 110, 100, 101, 108, 98, 114, 111, 116, 32, 58, 18.1529 + 10, 32, 32, 40, 36, 49, 41, 32, 45, 45, 91, 45, 49, 93, 32, 36, 18.1530 + 51, 32, 40, 36, 50, 41, 32, 45, 45, 91, 45, 49, 93, 32, 36, 52, 18.1531 + 32, 40, 36, 49, 41, 32, 45, 43, 91, 45, 49, 93, 32, 36, 51, 32, 18.1532 + 40, 36, 50, 41, 32, 45, 43, 91, 45, 49, 93, 32, 36, 52, 32, 45, 18.1533 + 97, 91, 45, 52, 45, 45, 49, 93, 32, 120, 10, 32, 32, 45, 109, 97, 18.1534 + 110, 100, 101, 108, 98, 114, 111, 116, 91, 45, 50, 93, 32, 64, 45, 49, 18.1535 + 44, 36, 53, 44, 36, 54, 44, 36, 55, 44, 36, 56, 32, 45, 114, 109, 18.1536 + 91, 45, 49, 93, 10, 32, 32, 45, 105, 102, 32, 36, 57, 32, 40, 36, 18.1537 + 57, 41, 32, 45, 45, 91, 45, 49, 93, 32, 49, 32, 45, 108, 117, 116, 18.1538 + 50, 114, 103, 98, 91, 45, 50, 93, 32, 64, 45, 49, 32, 45, 114, 109, 18.1539 + 91, 45, 49, 93, 32, 45, 101, 108, 115, 101, 32, 45, 110, 111, 114, 109, 18.1540 + 32, 45, 110, 32, 48, 44, 50, 53, 53, 32, 45, 101, 110, 100, 105, 102, 18.1541 + 10, 10, 35, 64, 103, 105, 109, 112, 32, 95, 83, 101, 108, 101, 99, 116, 18.1542 + 105, 111, 110, 115, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1543 + 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 105, 109, 112, 32, 18.1544 + 71, 108, 111, 98, 97, 108, 32, 82, 71, 66, 32, 115, 101, 108, 101, 99, 18.1545 + 116, 105, 111, 110, 32, 58, 32, 103, 105, 109, 112, 95, 115, 101, 108, 101, 18.1546 + 99, 116, 114, 103, 98, 44, 32, 103, 105, 109, 112, 95, 115, 101, 108, 101, 18.1547 + 99, 116, 114, 103, 98, 44, 32, 83, 101, 108, 101, 99, 116, 101, 100, 32, 18.1548 + 99, 111, 108, 111, 114, 32, 61, 32, 99, 111, 108, 111, 114, 40, 50, 53, 18.1549 + 53, 44, 50, 53, 53, 44, 50, 53, 53, 41, 44, 32, 84, 111, 108, 101, 18.1550 + 114, 97, 110, 99, 101, 32, 61, 32, 102, 108, 111, 97, 116, 40, 49, 48, 18.1551 + 48, 44, 49, 44, 52, 53, 48, 41, 10, 103, 105, 109, 112, 95, 115, 101, 18.1552 + 108, 101, 99, 116, 114, 103, 98, 32, 58, 10, 32, 32, 45, 116, 111, 95, 18.1553 + 114, 103, 98, 32, 45, 115, 101, 108, 101, 99, 116, 95, 114, 103, 98, 32, 18.1554 + 36, 49, 44, 36, 50, 44, 36, 51, 44, 36, 52, 32, 45, 110, 32, 48, 18.1555 + 44, 50, 53, 53, 10, 10, 35, 64, 103, 105, 109, 112, 32, 95, 66, 117, 18.1556 + 108, 107, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 45, 45, 45, 45, 18.1557 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1558 + 10, 35, 64, 103, 105, 109, 112, 32, 70, 111, 117, 114, 105, 101, 114, 32, 18.1559 + 116, 114, 97, 110, 115, 102, 111, 114, 109, 32, 40, 99, 101, 110, 116, 101, 18.1560 + 114, 101, 100, 32, 108, 111, 103, 45, 109, 111, 100, 117, 108, 101, 41, 32, 18.1561 + 58, 32, 103, 105, 109, 112, 95, 102, 111, 117, 114, 105, 101, 114, 44, 32, 18.1562 + 103, 105, 109, 112, 95, 102, 111, 117, 114, 105, 101, 114, 10, 103, 105, 109, 18.1563 + 112, 95, 102, 111, 117, 114, 105, 101, 114, 32, 58, 10, 32, 32, 45, 102, 18.1564 + 102, 116, 32, 45, 115, 113, 114, 32, 45, 43, 32, 45, 115, 113, 114, 116, 18.1565 + 32, 45, 43, 32, 49, 32, 45, 108, 111, 103, 32, 45, 116, 114, 97, 110, 18.1566 + 115, 108, 97, 116, 101, 32, 53, 48, 37, 44, 53, 48, 37, 44, 48, 44, 18.1567 + 48, 44, 50, 32, 45, 110, 32, 48, 44, 50, 53, 53, 10, 10, 35, 64, 18.1568 + 103, 105, 109, 112, 32, 73, 109, 112, 111, 114, 116, 32, 105, 109, 97, 103, 18.1569 + 101, 32, 100, 97, 116, 97, 32, 58, 32, 103, 105, 109, 112, 95, 105, 109, 18.1570 + 112, 111, 114, 116, 95, 105, 109, 97, 103, 101, 44, 32, 103, 105, 109, 112, 18.1571 + 95, 105, 109, 112, 111, 114, 116, 95, 105, 109, 97, 103, 101, 44, 32, 70, 18.1572 + 105, 108, 101, 110, 97, 109, 101, 32, 61, 32, 102, 105, 108, 101, 40, 41, 18.1573 + 44, 32, 69, 110, 97, 98, 108, 101, 32, 110, 111, 114, 109, 97, 108, 105, 18.1574 + 122, 97, 116, 105, 111, 110, 32, 61, 32, 98, 111, 111, 108, 40, 49, 41, 18.1575 + 44, 32, 110, 111, 116, 101, 32, 61, 32, 110, 111, 116, 101, 40, 34, 92, 18.1576 + 110, 60, 115, 109, 97, 108, 108, 62, 60, 98, 62, 78, 111, 116, 101, 32, 18.1577 + 58, 32, 60, 47, 98, 62, 84, 104, 105, 115, 32, 102, 105, 108, 116, 101, 18.1578 + 114, 32, 109, 97, 121, 32, 98, 101, 32, 117, 115, 101, 102, 117, 108, 32, 18.1579 + 116, 111, 32, 105, 109, 112, 111, 114, 116, 32, 105, 109, 97, 103, 101, 32, 18.1580 + 100, 97, 116, 97, 32, 119, 105, 116, 104, 32, 101, 120, 111, 116, 105, 99, 18.1581 + 32, 102, 111, 114, 109, 97, 116, 115, 32, 58, 32, 80, 97, 110, 100, 111, 18.1582 + 114, 101, 44, 32, 67, 73, 109, 103, 44, 32, 73, 110, 114, 105, 109, 97, 18.1583 + 103, 101, 44, 32, 46, 46, 46, 60, 47, 115, 109, 97, 108, 108, 62, 34, 18.1584 + 41, 10, 103, 105, 109, 112, 95, 105, 109, 112, 111, 114, 116, 95, 105, 109, 18.1585 + 97, 103, 101, 32, 58, 10, 32, 32, 45, 114, 109, 32, 36, 49, 32, 45, 18.1586 + 115, 32, 122, 32, 45, 105, 102, 32, 36, 50, 32, 45, 110, 32, 48, 44, 18.1587 + 50, 53, 53, 32, 45, 101, 108, 115, 101, 32, 45, 99, 117, 116, 32, 48, 18.1588 + 44, 50, 53, 53, 32, 45, 101, 110, 100, 105, 102, 32, 45, 112, 10, 10, 18.1589 + 35, 64, 103, 105, 109, 112, 32, 67, 117, 115, 116, 111, 109, 32, 71, 39, 18.1590 + 77, 73, 67, 32, 99, 111, 109, 109, 97, 110, 100, 32, 58, 32, 103, 105, 18.1591 + 109, 112, 95, 99, 117, 115, 116, 111, 109, 44, 32, 103, 105, 109, 112, 95, 18.1592 + 99, 117, 115, 116, 111, 109, 44, 32, 67, 111, 109, 109, 97, 110, 100, 32, 18.1593 + 61, 32, 116, 101, 120, 116, 40, 34, 45, 45, 98, 108, 117, 114, 32, 50, 18.1594 + 32, 45, 120, 111, 114, 34, 41, 44, 32, 110, 111, 116, 101, 32, 61, 32, 18.1595 + 110, 111, 116, 101, 40, 34, 92, 110, 60, 115, 109, 97, 108, 108, 62, 60, 18.1596 + 98, 62, 78, 111, 116, 101, 32, 58, 32, 60, 47, 98, 62, 84, 104, 105, 18.1597 + 115, 32, 102, 105, 108, 116, 101, 114, 32, 99, 97, 110, 32, 101, 120, 101, 18.1598 + 99, 117, 116, 101, 32, 97, 110, 121, 32, 99, 111, 109, 109, 97, 110, 100, 18.1599 + 32, 117, 110, 100, 101, 114, 115, 116, 111, 111, 100, 32, 98, 121, 32, 116, 18.1600 + 104, 101, 32, 71, 39, 77, 73, 67, 32, 105, 110, 116, 101, 114, 112, 114, 18.1601 + 101, 116, 101, 114, 46, 32, 89, 111, 117, 32, 99, 97, 110, 32, 116, 104, 18.1602 + 101, 110, 32, 116, 101, 115, 116, 32, 115, 111, 109, 101, 32, 99, 111, 109, 18.1603 + 109, 97, 110, 100, 115, 32, 98, 101, 102, 111, 114, 101, 32, 99, 114, 101, 18.1604 + 97, 116, 105, 110, 103, 32, 121, 111, 117, 114, 32, 111, 119, 110, 32, 71, 18.1605 + 39, 77, 73, 67, 32, 109, 97, 99, 114, 111, 115, 32, 97, 110, 100, 32, 18.1606 + 109, 101, 110, 117, 32, 101, 110, 116, 114, 105, 101, 115, 46, 60, 47, 115, 18.1607 + 109, 97, 108, 108, 62, 34, 41, 10, 103, 105, 109, 112, 95, 99, 117, 115, 18.1608 + 116, 111, 109, 32, 58, 10, 32, 32, 45, 110, 111, 112, 10, 10, 35, 64, 18.1609 + 103, 105, 109, 112, 32, 95, 65, 100, 100, 105, 116, 105, 111, 110, 110, 97, 18.1610 + 108, 32, 105, 110, 102, 111, 114, 109, 97, 116, 105, 111, 110, 115, 10, 35, 18.1611 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1612 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1613 + 10, 35, 64, 103, 105, 109, 112, 32, 65, 98, 111, 117, 116, 32, 116, 104, 18.1614 + 101, 32, 71, 39, 77, 73, 67, 32, 84, 111, 111, 108, 98, 111, 120, 32, 18.1615 + 58, 32, 110, 111, 112, 44, 32, 103, 109, 105, 99, 52, 103, 105, 109, 112, 18.1616 + 95, 108, 111, 103, 111, 44, 32, 110, 111, 116, 101, 32, 61, 32, 110, 111, 18.1617 + 116, 101, 40, 34, 92, 110, 60, 98, 62, 84, 104, 101, 32, 71, 39, 77, 18.1618 + 73, 67, 32, 84, 111, 111, 108, 98, 111, 120, 32, 102, 111, 114, 32, 71, 18.1619 + 73, 77, 80, 60, 47, 98, 62, 92, 110, 91, 32, 60, 98, 62, 71, 60, 18.1620 + 47, 98, 62, 82, 69, 89, 67, 39, 115, 32, 60, 98, 62, 77, 60, 47, 18.1621 + 98, 62, 97, 103, 105, 99, 32, 60, 98, 62, 73, 60, 47, 98, 62, 109, 18.1622 + 97, 103, 101, 32, 60, 98, 62, 67, 60, 47, 98, 62, 111, 110, 118, 101, 18.1623 + 114, 116, 101, 114, 44, 32, 60, 105, 62, 118, 101, 114, 115, 105, 111, 110, 18.1624 + 32, 49, 46, 51, 46, 48, 46, 51, 93, 60, 47, 105, 62, 92, 110, 92, 18.1625 + 110, 32, 119, 114, 105, 116, 116, 101, 110, 32, 98, 121, 32, 60, 105, 62, 18.1626 + 68, 97, 118, 105, 100, 32, 84, 115, 99, 104, 117, 109, 112, 101, 114, 108, 18.1627 + 101, 60, 47, 105, 62, 92, 110, 92, 110, 84, 104, 105, 115, 32, 112, 108, 18.1628 + 117, 103, 45, 105, 110, 32, 105, 115, 32, 98, 97, 115, 101, 100, 32, 111, 18.1629 + 110, 32, 116, 104, 101, 32, 108, 105, 98, 114, 97, 114, 105, 101, 115, 32, 18.1630 + 60, 105, 62, 71, 39, 77, 73, 67, 60, 47, 105, 62, 32, 97, 110, 100, 18.1631 + 32, 60, 105, 62, 67, 73, 109, 103, 92, 110, 91, 67, 43, 43, 32, 84, 18.1632 + 101, 109, 112, 108, 97, 116, 101, 32, 73, 109, 97, 103, 101, 32, 80, 114, 18.1633 + 111, 99, 101, 115, 115, 105, 110, 103, 32, 76, 105, 98, 114, 97, 114, 121, 18.1634 + 93, 60, 47, 105, 62, 44, 32, 97, 118, 97, 105, 108, 97, 98, 108, 101, 18.1635 + 32, 97, 116, 32, 58, 92, 110, 92, 110, 32, 32, 32, 32, 32, 32, 45, 18.1636 + 32, 104, 116, 116, 112, 58, 47, 47, 103, 109, 105, 99, 46, 115, 111, 117, 18.1637 + 114, 99, 101, 102, 111, 114, 103, 101, 46, 110, 101, 116, 47, 32, 45, 32, 18.1638 + 32, 32, 32, 32, 32, 97, 110, 100, 92, 110, 32, 32, 32, 32, 32, 32, 18.1639 + 45, 32, 104, 116, 116, 112, 58, 47, 47, 99, 105, 109, 103, 46, 115, 111, 18.1640 + 117, 114, 99, 101, 102, 111, 114, 103, 101, 46, 110, 101, 116, 47, 32, 45, 18.1641 + 92, 110, 92, 110, 65, 108, 108, 32, 99, 111, 100, 101, 32, 97, 110, 100, 18.1642 + 32, 108, 105, 98, 114, 97, 114, 105, 101, 115, 32, 97, 114, 101, 32, 111, 18.1643 + 112, 101, 110, 45, 115, 111, 117, 114, 99, 101, 32, 97, 110, 100, 32, 104, 18.1644 + 97, 118, 101, 32, 98, 101, 101, 110, 32, 100, 101, 118, 101, 108, 111, 112, 18.1645 + 101, 100, 32, 105, 110, 32, 116, 104, 101, 32, 60, 105, 62, 73, 109, 97, 18.1646 + 103, 101, 32, 84, 101, 97, 109, 60, 47, 105, 62, 32, 97, 116, 32, 116, 18.1647 + 104, 101, 32, 60, 105, 62, 71, 82, 69, 89, 67, 32, 76, 97, 98, 111, 18.1648 + 114, 97, 116, 111, 114, 121, 60, 47, 105, 62, 32, 45, 32, 67, 78, 82, 18.1649 + 83, 32, 85, 77, 82, 32, 54, 48, 55, 50, 32, 45, 32, 105, 110, 32, 18.1650 + 67, 97, 101, 110, 47, 70, 114, 97, 110, 99, 101, 46, 92, 110, 92, 110, 18.1651 + 60, 115, 109, 97, 108, 108, 62, 73, 102, 32, 121, 111, 117, 32, 101, 110, 18.1652 + 106, 111, 121, 32, 117, 115, 105, 110, 103, 32, 71, 39, 77, 73, 67, 44, 18.1653 + 32, 105, 116, 32, 119, 111, 117, 108, 100, 32, 98, 101, 32, 110, 105, 99, 18.1654 + 101, 32, 116, 111, 32, 115, 101, 110, 100, 32, 117, 115, 32, 97, 32, 110, 18.1655 + 105, 99, 101, 32, 112, 111, 115, 116, 99, 97, 114, 100, 92, 110, 102, 114, 18.1656 + 111, 109, 32, 121, 111, 117, 114, 32, 112, 108, 97, 99, 101, 32, 97, 116, 18.1657 + 32, 116, 104, 101, 32, 102, 111, 108, 108, 111, 119, 105, 110, 103, 32, 97, 18.1658 + 100, 100, 114, 101, 115, 115, 32, 58, 92, 110, 92, 110, 60, 116, 116, 62, 18.1659 + 32, 32, 32, 68, 97, 118, 105, 100, 32, 84, 115, 99, 104, 117, 109, 112, 18.1660 + 101, 114, 108, 101, 44, 32, 71, 82, 69, 89, 67, 32, 73, 109, 97, 103, 18.1661 + 101, 44, 92, 110, 32, 32, 32, 54, 32, 66, 100, 32, 100, 117, 32, 77, 18.1662 + 97, 114, 101, 99, 104, 97, 108, 32, 74, 117, 105, 110, 44, 32, 49, 52, 18.1663 + 48, 53, 48, 32, 67, 97, 101, 110, 32, 67, 101, 100, 101, 120, 32, 47, 18.1664 + 32, 70, 114, 97, 110, 99, 101, 46, 60, 47, 116, 116, 62, 60, 47, 115, 18.1665 + 109, 97, 108, 108, 62, 34, 41, 10, 10, 35, 64, 103, 105, 109, 112, 32, 18.1666 + 82, 101, 108, 101, 97, 115, 101, 32, 110, 111, 116, 101, 115, 32, 58, 32, 18.1667 + 110, 111, 112, 44, 32, 103, 109, 105, 99, 52, 103, 105, 109, 112, 95, 108, 18.1668 + 111, 103, 111, 44, 32, 110, 111, 116, 101, 32, 61, 32, 110, 111, 116, 101, 18.1669 + 40, 34, 45, 32, 60, 98, 62, 50, 48, 48, 57, 47, 48, 49, 47, 49, 18.1670 + 51, 60, 47, 98, 62, 32, 58, 32, 118, 101, 114, 115, 105, 111, 110, 32, 18.1671 + 60, 105, 62, 49, 46, 51, 46, 48, 60, 47, 105, 62, 32, 91, 73, 110, 18.1672 + 105, 116, 105, 97, 108, 93, 46, 92, 110, 45, 32, 60, 98, 62, 50, 48, 18.1673 + 48, 57, 47, 48, 49, 47, 49, 54, 60, 47, 98, 62, 32, 58, 32, 118, 18.1674 + 101, 114, 115, 105, 111, 110, 32, 60, 105, 62, 49, 46, 51, 46, 48, 46, 18.1675 + 49, 60, 47, 105, 62, 46, 92, 110, 45, 32, 60, 98, 62, 50, 48, 48, 18.1676 + 57, 47, 48, 49, 47, 50, 50, 60, 47, 98, 62, 32, 58, 32, 118, 101, 18.1677 + 114, 115, 105, 111, 110, 32, 60, 105, 62, 49, 46, 51, 46, 48, 46, 50, 18.1678 + 60, 47, 105, 62, 46, 92, 110, 45, 32, 60, 98, 62, 50, 48, 48, 57, 18.1679 + 47, 48, 49, 47, 50, 54, 60, 47, 98, 62, 32, 58, 32, 118, 101, 114, 18.1680 + 115, 105, 111, 110, 32, 60, 105, 62, 49, 46, 51, 46, 48, 46, 51, 60, 18.1681 + 47, 105, 62, 46, 92, 110, 45, 32, 60, 98, 62, 50, 48, 48, 57, 47, 18.1682 + 48, 50, 47, 50, 48, 60, 47, 98, 62, 32, 58, 32, 118, 101, 114, 115, 18.1683 + 105, 111, 110, 32, 60, 105, 62, 49, 46, 51, 46, 48, 46, 52, 60, 47, 18.1684 + 105, 62, 32, 91, 99, 117, 114, 114, 101, 110, 116, 93, 46, 34, 41, 10, 18.1685 + 10, 35, 64, 103, 105, 109, 112, 32, 65, 100, 100, 105, 110, 103, 32, 117, 18.1686 + 115, 101, 114, 45, 100, 101, 102, 105, 110, 101, 100, 32, 102, 105, 108, 116, 18.1687 + 101, 114, 115, 32, 58, 32, 110, 111, 112, 44, 32, 103, 109, 105, 99, 52, 18.1688 + 103, 105, 109, 112, 95, 108, 111, 103, 111, 44, 32, 110, 111, 116, 101, 32, 18.1689 + 61, 32, 110, 111, 116, 101, 40, 34, 73, 116, 32, 105, 115, 32, 112, 111, 18.1690 + 115, 115, 105, 98, 108, 101, 32, 116, 111, 32, 97, 100, 100, 32, 121, 111, 18.1691 + 117, 114, 32, 111, 119, 110, 32, 60, 98, 62, 117, 115, 101, 114, 45, 100, 18.1692 + 101, 102, 105, 110, 101, 100, 32, 102, 105, 108, 116, 101, 114, 115, 60, 47, 18.1693 + 98, 62, 32, 116, 111, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 32, 18.1694 + 84, 111, 111, 108, 98, 111, 120, 32, 58, 92, 110, 92, 110, 67, 114, 101, 18.1695 + 97, 116, 101, 32, 97, 32, 60, 105, 62, 46, 103, 109, 105, 99, 52, 103, 18.1696 + 105, 109, 112, 60, 47, 105, 62, 32, 116, 101, 120, 116, 32, 102, 105, 108, 18.1697 + 101, 32, 105, 110, 32, 121, 111, 117, 114, 32, 104, 111, 109, 101, 32, 100, 18.1698 + 105, 114, 101, 99, 116, 111, 114, 121, 32, 91, 111, 114, 32, 97, 112, 112, 18.1699 + 100, 97, 116, 97, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 32, 111, 18.1700 + 110, 32, 87, 105, 110, 100, 111, 119, 115, 93, 46, 32, 84, 104, 101, 32, 18.1701 + 112, 108, 117, 103, 45, 105, 110, 32, 119, 105, 108, 108, 32, 114, 101, 97, 18.1702 + 100, 32, 105, 116, 92, 110, 101, 97, 99, 104, 32, 116, 105, 109, 101, 32, 18.1703 + 105, 116, 32, 105, 115, 32, 99, 97, 108, 108, 101, 100, 46, 32, 84, 104, 18.1704 + 105, 115, 32, 102, 105, 108, 101, 32, 109, 117, 115, 116, 32, 98, 101, 32, 18.1705 + 97, 32, 114, 101, 103, 117, 108, 97, 114, 92, 110, 60, 98, 62, 71, 39, 18.1706 + 77, 73, 67, 32, 109, 97, 99, 114, 111, 32, 102, 105, 108, 101, 60, 47, 18.1707 + 98, 62, 32, 99, 111, 110, 116, 97, 105, 110, 105, 110, 103, 32, 121, 111, 18.1708 + 117, 114, 32, 102, 105, 108, 116, 101, 114, 32, 100, 101, 102, 105, 110, 105, 18.1709 + 116, 105, 111, 110, 115, 32, 116, 104, 97, 116, 92, 110, 119, 105, 108, 108, 18.1710 + 32, 98, 101, 32, 97, 100, 100, 101, 100, 32, 116, 111, 32, 116, 104, 101, 18.1711 + 32, 108, 105, 115, 116, 32, 111, 102, 32, 101, 120, 105, 115, 116, 105, 110, 18.1712 + 103, 32, 111, 110, 101, 115, 46, 92, 110, 76, 111, 111, 107, 32, 97, 116, 18.1713 + 32, 116, 104, 101, 32, 100, 101, 102, 97, 117, 108, 116, 32, 102, 105, 108, 18.1714 + 116, 101, 114, 115, 32, 102, 105, 108, 101, 32, 58, 92, 110, 92, 110, 60, 18.1715 + 115, 109, 97, 108, 108, 62, 60, 105, 62, 104, 116, 116, 112, 58, 47, 47, 18.1716 + 103, 109, 105, 99, 46, 115, 111, 117, 114, 99, 101, 102, 111, 114, 103, 101, 18.1717 + 46, 110, 101, 116, 47, 46, 103, 109, 105, 99, 52, 103, 105, 109, 112, 95, 18.1718 + 100, 101, 102, 60, 47, 105, 62, 60, 47, 115, 109, 97, 108, 108, 62, 92, 18.1719 + 110, 92, 110, 32, 32, 46, 46, 46, 116, 111, 32, 115, 101, 101, 32, 104, 18.1720 + 111, 119, 32, 101, 120, 105, 115, 116, 105, 110, 103, 32, 102, 105, 108, 116, 18.1721 + 101, 114, 115, 32, 104, 97, 118, 101, 32, 98, 101, 101, 110, 32, 100, 101, 18.1722 + 102, 105, 110, 101, 100, 32, 97, 110, 100, 32, 92, 110, 97, 100, 100, 101, 18.1723 + 100, 32, 116, 111, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 32, 84, 18.1724 + 111, 111, 108, 98, 111, 120, 46, 32, 87, 114, 105, 116, 116, 105, 110, 103, 18.1725 + 32, 97, 32, 110, 101, 119, 32, 102, 105, 108, 116, 101, 114, 32, 99, 97, 18.1726 + 110, 32, 98, 101, 32, 103, 101, 110, 101, 114, 97, 108, 108, 121, 32, 100, 18.1727 + 111, 110, 101, 32, 105, 110, 32, 118, 101, 114, 121, 32, 102, 101, 119, 32, 18.1728 + 108, 105, 110, 101, 115, 32, 119, 105, 116, 104, 32, 71, 39, 77, 73, 67, 18.1729 + 46, 92, 110, 92, 110, 60, 115, 109, 97, 108, 108, 62, 60, 98, 62, 69, 18.1730 + 120, 97, 109, 112, 108, 101, 60, 47, 98, 62, 32, 111, 102, 32, 97, 32, 18.1731 + 118, 97, 108, 105, 100, 32, 60, 105, 62, 46, 103, 109, 105, 99, 52, 103, 18.1732 + 105, 109, 112, 60, 47, 105, 62, 32, 102, 105, 108, 101, 32, 58, 92, 110, 18.1733 + 92, 110, 60, 116, 116, 62, 35, 64, 103, 105, 109, 112, 32, 77, 121, 32, 18.1734 + 101, 102, 102, 101, 99, 116, 32, 58, 32, 109, 121, 95, 101, 102, 102, 101, 18.1735 + 99, 116, 44, 32, 109, 121, 95, 101, 102, 102, 101, 99, 116, 44, 32, 83, 18.1736 + 105, 103, 109, 97, 32, 61, 32, 102, 108, 111, 97, 116, 91, 50, 44, 48, 18.1737 + 44, 49, 48, 93, 92, 110, 109, 121, 95, 101, 102, 102, 101, 99, 116, 32, 18.1738 + 58, 92, 110, 32, 32, 45, 45, 98, 108, 117, 114, 32, 36, 49, 32, 45, 18.1739 + 110, 32, 48, 44, 50, 53, 53, 32, 45, 120, 111, 114, 60, 47, 116, 116, 18.1740 + 62, 92, 110, 92, 110, 66, 121, 32, 116, 104, 101, 32, 119, 97, 121, 44, 18.1741 + 32, 121, 111, 117, 32, 97, 114, 101, 32, 119, 101, 108, 99, 111, 109, 101, 18.1742 + 32, 116, 111, 32, 115, 117, 98, 109, 105, 116, 32, 97, 110, 100, 32, 115, 18.1743 + 104, 97, 114, 101, 32, 121, 111, 117, 114, 32, 110, 105, 99, 101, 32, 99, 18.1744 + 117, 115, 116, 111, 109, 32, 102, 105, 108, 116, 101, 114, 115, 32, 111, 110, 18.1745 + 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 32, 119, 101, 98, 112, 97, 18.1746 + 103, 101, 32, 102, 111, 114, 117, 109, 115, 46, 60, 47, 115, 109, 97, 108, 18.1747 + 108, 62, 34, 41, 10, 10, 35, 64, 103, 105, 109, 112, 32, 85, 112, 100, 18.1748 + 97, 116, 105, 110, 103, 32, 101, 120, 105, 115, 116, 105, 110, 103, 32, 71, 18.1749 + 39, 77, 73, 67, 32, 102, 105, 108, 116, 101, 114, 115, 32, 58, 32, 110, 18.1750 + 111, 112, 44, 32, 103, 109, 105, 99, 52, 103, 105, 109, 112, 95, 108, 111, 18.1751 + 103, 111, 44, 32, 110, 111, 116, 101, 32, 61, 32, 110, 111, 116, 101, 40, 18.1752 + 34, 84, 104, 101, 32, 71, 39, 77, 73, 67, 32, 84, 111, 111, 108, 98, 18.1753 + 111, 120, 32, 105, 115, 32, 97, 98, 108, 101, 32, 116, 111, 32, 60, 98, 18.1754 + 62, 117, 112, 100, 97, 116, 101, 60, 47, 98, 62, 32, 104, 105, 115, 32, 18.1755 + 108, 105, 115, 116, 32, 111, 102, 32, 102, 105, 108, 116, 101, 114, 115, 32, 18.1756 + 100, 101, 102, 105, 110, 105, 116, 105, 111, 110, 115, 46, 32, 67, 108, 105, 18.1757 + 99, 107, 32, 111, 110, 32, 116, 104, 101, 32, 60, 105, 62, 85, 112, 100, 18.1758 + 97, 116, 101, 32, 70, 105, 108, 116, 101, 114, 115, 60, 47, 105, 62, 32, 18.1759 + 98, 117, 116, 116, 111, 110, 32, 111, 110, 32, 116, 104, 101, 92, 110, 108, 18.1760 + 101, 102, 116, 32, 112, 97, 110, 101, 32, 116, 111, 32, 99, 111, 110, 110, 18.1761 + 101, 99, 116, 32, 116, 111, 32, 116, 104, 101, 32, 115, 101, 114, 118, 101, 18.1762 + 114, 32, 97, 110, 100, 32, 100, 111, 119, 110, 108, 111, 97, 100, 92, 110, 18.1763 + 116, 104, 101, 32, 117, 112, 100, 97, 116, 101, 32, 102, 105, 108, 101, 46, 18.1764 + 92, 110, 92, 110, 32, 66, 97, 115, 105, 99, 97, 108, 108, 121, 44, 32, 18.1765 + 116, 104, 101, 32, 117, 112, 100, 97, 116, 101, 32, 112, 114, 111, 99, 101, 18.1766 + 100, 117, 114, 101, 32, 100, 111, 119, 110, 108, 111, 97, 100, 115, 32, 97, 18.1767 + 32, 102, 105, 108, 101, 92, 110, 60, 105, 62, 46, 103, 109, 105, 99, 52, 18.1768 + 103, 105, 109, 112, 95, 100, 101, 102, 46, 120, 120, 120, 120, 60, 47, 105, 18.1769 + 62, 32, 105, 110, 116, 111, 32, 121, 111, 117, 114, 32, 104, 111, 109, 101, 18.1770 + 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 32, 91, 111, 114, 32, 97, 18.1771 + 112, 112, 100, 97, 116, 97, 32, 100, 105, 114, 101, 99, 116, 111, 114, 121, 18.1772 + 32, 111, 110, 32, 87, 105, 110, 100, 111, 119, 115, 93, 32, 119, 104, 101, 18.1773 + 114, 101, 32, 60, 105, 62, 120, 120, 120, 120, 60, 47, 105, 62, 32, 97, 18.1774 + 114, 101, 32, 116, 104, 101, 32, 102, 111, 117, 114, 32, 100, 105, 103, 105, 18.1775 + 116, 115, 92, 110, 111, 102, 32, 116, 104, 101, 32, 118, 101, 114, 115, 105, 18.1776 + 111, 110, 32, 110, 117, 109, 98, 101, 114, 32, 111, 102, 32, 121, 111, 117, 18.1777 + 114, 32, 71, 39, 77, 73, 67, 32, 112, 108, 117, 103, 45, 105, 110, 46, 18.1778 + 92, 110, 89, 111, 117, 32, 99, 97, 110, 32, 109, 97, 110, 117, 97, 108, 18.1779 + 108, 121, 32, 105, 110, 115, 116, 97, 108, 108, 32, 116, 104, 101, 32, 117, 18.1780 + 112, 100, 97, 116, 101, 32, 102, 105, 108, 101, 32, 102, 114, 111, 109, 32, 18.1781 + 58, 92, 110, 92, 110, 60, 115, 109, 97, 108, 108, 62, 60, 105, 62, 104, 18.1782 + 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 103, 114, 101, 121, 99, 46, 18.1783 + 101, 110, 115, 105, 99, 97, 101, 110, 46, 102, 114, 47, 126, 100, 116, 115, 18.1784 + 99, 104, 117, 109, 112, 47, 103, 109, 105, 99, 52, 103, 105, 109, 112, 95, 18.1785 + 100, 101, 102, 46, 120, 120, 120, 120, 60, 47, 105, 62, 60, 47, 115, 109, 18.1786 + 97, 108, 108, 62, 92, 110, 92, 110, 74, 117, 115, 116, 32, 99, 111, 112, 18.1787 + 121, 32, 97, 110, 100, 32, 114, 101, 110, 97, 109, 101, 32, 116, 104, 105, 18.1788 + 115, 32, 102, 105, 108, 101, 32, 97, 115, 32, 121, 111, 117, 114, 32, 102, 18.1789 + 105, 108, 101, 92, 110, 60, 105, 62, 46, 103, 109, 105, 99, 52, 103, 105, 18.1790 + 109, 112, 95, 100, 101, 102, 46, 120, 120, 120, 120, 60, 47, 105, 62, 32, 18.1791 + 97, 110, 100, 32, 116, 104, 101, 32, 117, 112, 100, 97, 116, 101, 32, 105, 18.1792 + 115, 32, 100, 111, 110, 101, 46, 92, 110, 66, 121, 32, 116, 104, 101, 32, 18.1793 + 119, 97, 121, 44, 32, 114, 101, 109, 111, 118, 105, 110, 103, 32, 116, 104, 18.1794 + 105, 115, 32, 108, 111, 99, 97, 108, 32, 102, 105, 108, 101, 32, 97, 108, 18.1795 + 115, 111, 32, 114, 101, 115, 101, 116, 115, 32, 97, 108, 108, 32, 116, 104, 18.1796 + 101, 92, 110, 102, 105, 108, 116, 101, 114, 32, 100, 101, 102, 105, 110, 105, 18.1797 + 116, 105, 111, 110, 115, 32, 116, 111, 32, 116, 104, 101, 105, 114, 32, 105, 18.1798 + 110, 105, 116, 105, 97, 108, 32, 115, 116, 97, 116, 101, 46, 34, 41, 10, 18.1799 + 10, 35, 64, 103, 105, 109, 112, 32, 73, 110, 105, 116, 105, 97, 108, 32, 18.1800 + 71, 39, 77, 73, 67, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 45, 18.1801 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 18.1802 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 105, 18.1803 + 109, 112, 32, 65, 98, 111, 117, 116, 32, 116, 104, 105, 115, 32, 115, 101, 18.1804 + 99, 116, 105, 111, 110, 32, 58, 32, 110, 111, 112, 44, 32, 103, 109, 105, 18.1805 + 99, 52, 103, 105, 109, 112, 95, 108, 111, 103, 111, 44, 32, 110, 111, 116, 18.1806 + 101, 32, 61, 32, 110, 111, 116, 101, 40, 34, 84, 104, 105, 115, 32, 115, 18.1807 + 101, 99, 116, 105, 111, 110, 32, 99, 111, 110, 116, 97, 105, 110, 115, 32, 18.1808 + 97, 108, 108, 32, 116, 104, 101, 32, 60, 105, 62, 105, 110, 105, 116, 105, 18.1809 + 97, 108, 60, 47, 105, 62, 32, 100, 101, 102, 105, 110, 105, 116, 105, 111, 18.1810 + 110, 115, 32, 111, 102, 32, 116, 104, 101, 32, 102, 105, 108, 116, 101, 114, 18.1811 + 115, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 71, 39, 77, 73, 67, 18.1812 + 32, 84, 111, 111, 108, 98, 111, 120, 44, 32, 105, 46, 101, 46, 32, 116, 18.1813 + 104, 101, 32, 111, 110, 101, 115, 32, 100, 101, 102, 105, 110, 101, 100, 32, 18.1814 + 97, 116, 32, 116, 104, 101, 32, 108, 97, 116, 101, 115, 116, 32, 114, 101, 18.1815 + 108, 101, 97, 115, 101, 32, 100, 97, 116, 101, 46, 32, 73, 102, 32, 110, 18.1816 + 111, 32, 102, 105, 108, 116, 101, 114, 115, 32, 97, 112, 112, 101, 97, 114, 18.1817 + 32, 98, 101, 108, 111, 119, 44, 32, 116, 104, 101, 110, 32, 121, 111, 117, 18.1818 + 32, 100, 105, 100, 32, 110, 111, 116, 32, 117, 112, 100, 97, 116, 101, 32, 18.1819 + 121, 111, 117, 114, 32, 102, 105, 108, 116, 101, 114, 32, 108, 105, 115, 116, 18.1820 + 32, 121, 101, 116, 46, 34, 41, 10, 10, 35, 32, 76, 111, 99, 97, 108, 18.1821 + 32, 86, 97, 114, 105, 97, 98, 108, 101, 115, 58, 10, 35, 32, 109, 111, 18.1822 + 100, 101, 58, 32, 115, 104, 10, 35, 32, 69, 110, 100, 58, 10, 35, 10, 18.1823 + 35, 32, 40, 69, 110, 100, 32, 111, 102, 32, 71, 39, 77, 73, 67, 32, 18.1824 + 109, 97, 99, 114, 111, 32, 102, 105, 108, 101, 41, 10, 10 }; 18.1825 +/* Define image 'logo' of size 3x102x22x1 and type 'unsigned const char' */ 18.1826 +unsigned const char data_logo[] = { 18.1827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1828 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1829 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1830 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1831 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1833 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1834 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1835 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1836 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1837 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1838 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1841 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1842 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1843 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1844 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.1846 + 0, 0, 0, 0, 0, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 18.1847 + 255, 254, 254, 254, 254, 254, 254, 244, 247, 248, 203, 211, 218, 176, 189, 201, 18.1848 + 182, 194, 205, 210, 217, 224, 247, 248, 249, 255, 255, 254, 255, 255, 255, 255, 18.1849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1851 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 228, 245, 219, 150, 222, 135, 76, 18.1852 + 198, 80, 29, 180, 68, 5, 161, 85, 64, 176, 149, 116, 188, 188, 211, 226, 18.1853 + 230, 253, 253, 253, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 18.1858 + 254, 254, 238, 248, 252, 201, 233, 247, 169, 220, 242, 141, 206, 236, 119, 193, 18.1859 + 230, 101, 182, 223, 87, 171, 217, 78, 162, 210, 73, 153, 204, 72, 147, 199, 18.1860 + 76, 143, 194, 85, 142, 192, 160, 188, 217, 254, 254, 254, 255, 255, 255, 255, 18.1861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1863 + 255, 255, 255, 119, 120, 124, 119, 120, 124, 118, 119, 123, 124, 125, 129, 121, 18.1864 + 122, 126, 135, 136, 140, 174, 174, 177, 143, 144, 147, 119, 120, 124, 119, 120, 18.1865 + 124, 0, 0, 0, 0, 0, 0, 255, 255, 255, 254, 254, 254, 254, 254, 254, 18.1866 + 254, 254, 253, 243, 245, 246, 139, 158, 175, 42, 75, 107, 20, 58, 93, 19, 18.1867 + 58, 94, 21, 60, 97, 28, 66, 102, 54, 88, 120, 130, 151, 171, 227, 232, 18.1868 + 235, 254, 254, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 18.1869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 18.1870 + 254, 254, 254, 254, 254, 242, 246, 214, 175, 219, 79, 87, 195, 5, 34, 172, 18.1871 + 21, 16, 147, 39, 18, 135, 60, 17, 128, 75, 11, 131, 99, 2, 132, 133, 18.1872 + 3, 95, 135, 98, 136, 172, 245, 247, 249, 254, 254, 254, 255, 255, 255, 255, 18.1873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1876 + 255, 255, 254, 254, 254, 252, 253, 254, 225, 243, 251, 177, 226, 245, 91, 205, 18.1877 + 238, 26, 181, 231, 3, 162, 225, 27, 166, 225, 54, 173, 226, 77, 179, 226, 18.1878 + 96, 184, 226, 111, 187, 225, 121, 188, 225, 128, 188, 223, 130, 185, 219, 129, 18.1879 + 180, 216, 123, 172, 210, 113, 161, 202, 161, 189, 217, 254, 254, 254, 255, 255, 18.1880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1882 + 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 119, 120, 124, 133, 134, 18.1883 + 137, 136, 137, 140, 173, 174, 176, 231, 231, 231, 166, 166, 169, 119, 120, 124, 18.1884 + 119, 120, 124, 0, 0, 0, 0, 0, 0, 255, 255, 255, 254, 254, 254, 254, 18.1885 + 254, 254, 225, 229, 234, 64, 94, 122, 14, 53, 89, 19, 58, 94, 24, 62, 18.1886 + 98, 26, 65, 101, 28, 68, 104, 31, 69, 105, 31, 70, 106, 30, 69, 105, 18.1887 + 45, 81, 114, 151, 169, 185, 247, 249, 249, 254, 254, 254, 254, 254, 254, 255, 18.1888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 254, 254, 254, 18.1889 + 254, 253, 253, 253, 237, 224, 139, 193, 212, 12, 95, 166, 33, 36, 107, 55, 18.1890 + 20, 78, 43, 13, 118, 32, 11, 121, 46, 73, 118, 91, 118, 137, 125, 76, 18.1891 + 113, 97, 13, 84, 95, 0, 58, 127, 76, 100, 157, 252, 252, 252, 254, 254, 18.1892 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 253, 254, 18.1895 + 254, 241, 249, 252, 215, 238, 249, 178, 224, 245, 169, 221, 244, 172, 224, 245, 18.1896 + 155, 224, 244, 144, 219, 243, 141, 213, 241, 117, 200, 236, 89, 187, 231, 65, 18.1897 + 174, 224, 46, 161, 217, 31, 149, 210, 21, 138, 202, 14, 127, 194, 12, 119, 18.1898 + 187, 13, 112, 181, 19, 107, 175, 29, 104, 172, 124, 163, 203, 254, 254, 254, 18.1899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1901 + 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 119, 120, 124, 18.1902 + 146, 147, 149, 173, 174, 176, 254, 254, 254, 223, 223, 224, 129, 130, 134, 123, 18.1903 + 124, 127, 119, 120, 124, 0, 0, 0, 0, 0, 0, 254, 254, 254, 254, 254, 18.1904 + 254, 230, 234, 238, 55, 87, 116, 15, 52, 88, 19, 58, 93, 23, 61, 98, 18.1905 + 27, 65, 102, 30, 69, 105, 34, 73, 109, 37, 75, 111, 38, 76, 112, 38, 18.1906 + 75, 112, 35, 74, 110, 33, 71, 107, 92, 120, 145, 237, 241, 243, 254, 254, 18.1907 + 254, 254, 255, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255, 254, 254, 254, 18.1908 + 253, 250, 247, 238, 179, 93, 192, 171, 14, 62, 122, 54, 21, 66, 43, 89, 18.1909 + 111, 95, 42, 151, 37, 26, 96, 56, 25, 69, 46, 47, 137, 89, 216, 223, 18.1910 + 219, 253, 253, 253, 225, 229, 227, 77, 113, 142, 0, 31, 120, 131, 149, 181, 18.1911 + 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 254, 18.1914 + 240, 248, 252, 235, 246, 251, 230, 244, 251, 214, 238, 249, 174, 223, 244, 112, 18.1915 + 203, 238, 38, 189, 233, 51, 189, 234, 83, 192, 234, 111, 198, 236, 134, 205, 18.1916 + 237, 143, 207, 236, 143, 204, 234, 143, 202, 232, 143, 199, 229, 143, 195, 226, 18.1917 + 143, 192, 223, 143, 189, 220, 143, 184, 216, 143, 180, 213, 184, 205, 226, 254, 18.1918 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 147, 18.1921 + 148, 151, 251, 251, 251, 254, 254, 254, 201, 202, 203, 130, 130, 134, 128, 129, 18.1922 + 133, 124, 125, 129, 119, 120, 124, 0, 0, 0, 0, 0, 0, 254, 254, 254, 18.1923 + 250, 251, 251, 86, 111, 135, 10, 49, 84, 20, 59, 93, 25, 63, 98, 26, 18.1924 + 64, 101, 31, 69, 105, 36, 75, 111, 40, 79, 114, 43, 80, 117, 46, 82, 18.1925 + 118, 48, 84, 119, 41, 79, 115, 38, 77, 113, 32, 70, 106, 84, 113, 139, 18.1926 + 243, 244, 246, 254, 254, 254, 254, 254, 254, 255, 255, 255, 254, 254, 254, 253, 18.1927 + 253, 252, 243, 145, 90, 191, 125, 17, 40, 97, 56, 35, 73, 28, 159, 180, 18.1928 + 128, 194, 233, 175, 36, 125, 51, 16, 72, 32, 79, 174, 104, 90, 158, 117, 18.1929 + 86, 142, 127, 119, 190, 181, 254, 254, 254, 249, 249, 249, 40, 70, 141, 7, 18.1930 + 42, 116, 206, 216, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 18.1933 + 253, 254, 244, 250, 253, 224, 241, 250, 211, 236, 249, 212, 237, 249, 205, 235, 18.1934 + 248, 186, 230, 246, 140, 220, 243, 92, 202, 238, 60, 183, 232, 32, 168, 226, 18.1935 + 9, 154, 219, 0, 146, 214, 0, 140, 209, 0, 134, 203, 1, 128, 198, 3, 18.1936 + 122, 191, 0, 112, 184, 0, 104, 177, 0, 94, 169, 0, 85, 161, 94, 143, 18.1937 + 191, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 127, 128, 18.1940 + 132, 214, 215, 216, 180, 180, 182, 192, 192, 194, 198, 198, 200, 132, 132, 136, 18.1941 + 131, 132, 136, 129, 129, 133, 119, 120, 124, 0, 0, 0, 0, 0, 0, 253, 18.1942 + 254, 253, 177, 189, 200, 8, 47, 82, 79, 107, 133, 201, 210, 218, 199, 208, 18.1943 + 216, 80, 114, 142, 78, 159, 187, 82, 166, 193, 81, 160, 189, 95, 128, 156, 18.1944 + 199, 209, 217, 199, 209, 219, 95, 152, 179, 83, 166, 194, 77, 156, 185, 31, 18.1945 + 71, 106, 139, 158, 177, 253, 254, 253, 254, 254, 253, 255, 255, 255, 254, 254, 18.1946 + 254, 251, 153, 139, 208, 78, 14, 41, 95, 56, 48, 76, 61, 188, 203, 132, 18.1947 + 100, 174, 37, 107, 168, 83, 29, 112, 36, 166, 175, 167, 48, 148, 83, 16, 18.1948 + 125, 70, 78, 165, 143, 34, 107, 77, 151, 165, 157, 254, 254, 254, 141, 155, 18.1949 + 190, 0, 31, 120, 92, 126, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1952 + 255, 252, 253, 254, 247, 251, 253, 238, 247, 252, 215, 238, 249, 178, 223, 245, 18.1953 + 156, 216, 242, 146, 215, 242, 128, 216, 242, 140, 218, 243, 143, 214, 241, 143, 18.1954 + 211, 240, 143, 209, 238, 143, 207, 236, 143, 204, 234, 143, 202, 232, 142, 198, 18.1955 + 229, 140, 194, 226, 143, 192, 223, 143, 188, 220, 143, 184, 217, 143, 180, 213, 18.1956 + 183, 205, 226, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 18.1959 + 126, 127, 130, 151, 152, 155, 120, 121, 125, 193, 193, 195, 171, 171, 173, 119, 18.1960 + 120, 124, 119, 120, 124, 119, 120, 124, 119, 120, 124, 0, 0, 0, 0, 0, 18.1961 + 0, 254, 253, 253, 87, 114, 136, 13, 51, 86, 199, 207, 215, 73, 103, 130, 18.1962 + 101, 126, 151, 181, 200, 211, 90, 180, 206, 77, 118, 148, 76, 144, 174, 129, 18.1963 + 182, 202, 195, 205, 216, 73, 108, 140, 88, 173, 200, 50, 94, 129, 48, 95, 18.1964 + 129, 32, 71, 107, 50, 85, 117, 241, 243, 245, 254, 254, 254, 255, 255, 255, 18.1965 + 252, 213, 211, 246, 26, 8, 71, 92, 54, 32, 66, 48, 222, 225, 223, 247, 18.1966 + 249, 233, 143, 206, 8, 70, 131, 53, 88, 178, 85, 28, 150, 48, 20, 133, 18.1967 + 63, 4, 153, 82, 19, 98, 65, 104, 130, 116, 222, 224, 223, 255, 255, 255, 18.1968 + 205, 214, 224, 17, 69, 93, 28, 79, 60, 255, 255, 255, 255, 255, 255, 255, 18.1969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1971 + 255, 255, 255, 251, 253, 254, 241, 249, 252, 237, 246, 252, 229, 244, 251, 217, 18.1972 + 239, 250, 187, 228, 246, 137, 212, 241, 50, 193, 235, 3, 174, 229, 10, 165, 18.1973 + 226, 27, 166, 225, 42, 168, 224, 54, 169, 223, 62, 168, 220, 66, 166, 217, 18.1974 + 69, 162, 213, 66, 155, 207, 61, 146, 200, 53, 135, 193, 41, 121, 183, 26, 18.1975 + 102, 170, 97, 145, 192, 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 18.1976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 18.1978 + 120, 124, 124, 125, 129, 119, 120, 124, 122, 123, 127, 178, 179, 181, 183, 183, 18.1979 + 185, 119, 120, 124, 119, 120, 124, 119, 120, 124, 119, 120, 124, 0, 0, 0, 18.1980 + 0, 0, 0, 246, 248, 249, 43, 78, 107, 35, 68, 100, 208, 216, 222, 20, 18.1981 + 59, 94, 30, 68, 103, 61, 100, 130, 81, 165, 193, 115, 140, 163, 74, 130, 18.1982 + 161, 132, 189, 210, 164, 180, 196, 60, 95, 130, 84, 164, 192, 75, 146, 176, 18.1983 + 46, 92, 127, 32, 70, 106, 24, 62, 98, 210, 217, 224, 254, 254, 254, 254, 18.1984 + 254, 254, 252, 82, 74, 162, 51, 33, 20, 68, 43, 174, 182, 177, 254, 254, 18.1985 + 254, 254, 254, 254, 170, 218, 79, 70, 159, 17, 169, 185, 176, 118, 152, 128, 18.1986 + 3, 153, 47, 17, 105, 57, 31, 76, 54, 198, 206, 201, 254, 254, 254, 255, 18.1987 + 255, 255, 254, 254, 254, 146, 164, 154, 131, 147, 137, 255, 255, 255, 255, 255, 18.1988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1990 + 255, 255, 255, 255, 255, 252, 253, 254, 241, 249, 252, 223, 241, 250, 212, 236, 18.1991 + 248, 207, 235, 248, 203, 235, 248, 186, 230, 246, 154, 224, 244, 143, 219, 242, 18.1992 + 133, 210, 240, 115, 200, 236, 100, 192, 232, 89, 184, 228, 81, 177, 223, 76, 18.1993 + 170, 218, 73, 164, 214, 77, 161, 210, 82, 158, 206, 90, 157, 204, 102, 159, 18.1994 + 203, 117, 163, 204, 175, 199, 223, 254, 254, 254, 255, 255, 255, 255, 255, 255, 18.1995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.1997 + 255, 119, 120, 124, 119, 120, 124, 125, 126, 130, 131, 132, 135, 166, 167, 169, 18.1998 + 192, 192, 193, 119, 120, 124, 119, 120, 124, 119, 120, 124, 119, 120, 124, 0, 18.1999 + 0, 0, 0, 0, 0, 246, 247, 248, 39, 74, 103, 38, 70, 101, 209, 217, 18.2000 + 223, 20, 59, 94, 26, 64, 100, 41, 83, 117, 81, 165, 193, 113, 139, 162, 18.2001 + 73, 129, 160, 131, 189, 210, 162, 178, 195, 57, 91, 128, 54, 94, 130, 71, 18.2002 + 136, 167, 86, 174, 200, 38, 84, 119, 20, 60, 97, 191, 201, 211, 254, 254, 18.2003 + 254, 251, 219, 216, 250, 6, 5, 60, 86, 56, 73, 95, 82, 252, 252, 252, 18.2004 + 254, 254, 254, 254, 254, 254, 213, 237, 174, 84, 192, 2, 81, 131, 93, 55, 18.2005 + 191, 63, 15, 117, 46, 23, 71, 47, 179, 192, 183, 254, 254, 254, 254, 254, 18.2006 + 254, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 18.2007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2009 + 255, 255, 255, 255, 255, 255, 255, 252, 253, 254, 247, 251, 253, 236, 246, 252, 18.2010 + 214, 237, 249, 181, 225, 245, 145, 212, 241, 121, 206, 239, 81, 202, 237, 83, 18.2011 + 199, 236, 100, 198, 236, 114, 199, 236, 124, 201, 235, 131, 202, 235, 135, 201, 18.2012 + 233, 137, 199, 231, 134, 194, 227, 130, 189, 223, 123, 181, 218, 112, 170, 211, 18.2013 + 99, 157, 202, 81, 139, 191, 131, 169, 206, 254, 255, 254, 255, 255, 255, 255, 18.2014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2016 + 255, 255, 255, 119, 120, 124, 119, 120, 124, 118, 119, 123, 119, 120, 124, 185, 18.2017 + 185, 187, 141, 142, 145, 153, 154, 157, 119, 120, 124, 119, 120, 124, 119, 120, 18.2018 + 124, 0, 0, 0, 0, 0, 0, 250, 250, 251, 56, 88, 115, 18, 55, 88, 18.2019 + 205, 213, 220, 42, 77, 108, 69, 100, 129, 168, 188, 202, 81, 165, 193, 112, 18.2020 + 138, 162, 71, 128, 159, 131, 188, 208, 159, 175, 192, 52, 88, 123, 53, 97, 18.2021 + 131, 41, 78, 114, 77, 154, 183, 48, 104, 136, 19, 58, 95, 200, 209, 217, 18.2022 + 254, 254, 254, 252, 139, 132, 212, 25, 16, 22, 75, 48, 175, 182, 178, 242, 18.2023 + 210, 155, 234, 218, 126, 226, 233, 138, 242, 248, 232, 99, 201, 23, 30, 175, 18.2024 + 10, 12, 131, 30, 12, 116, 49, 46, 145, 95, 116, 199, 181, 164, 207, 196, 18.2025 + 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 254, 244, 250, 253, 238, 18.2029 + 247, 252, 229, 244, 251, 218, 239, 249, 199, 233, 247, 161, 221, 243, 96, 207, 18.2030 + 239, 60, 192, 234, 43, 177, 230, 29, 166, 225, 18, 158, 221, 11, 151, 216, 18.2031 + 8, 144, 210, 7, 137, 205, 8, 132, 199, 12, 127, 194, 20, 123, 189, 30, 18.2032 + 122, 186, 44, 123, 184, 62, 126, 183, 142, 176, 210, 254, 254, 254, 255, 255, 18.2033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2035 + 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 119, 120, 124, 132, 133, 18.2036 + 137, 161, 161, 164, 213, 213, 214, 196, 196, 198, 119, 120, 124, 119, 120, 124, 18.2037 + 119, 120, 124, 0, 0, 0, 0, 0, 0, 253, 253, 254, 91, 117, 139, 5, 18.2038 + 45, 79, 120, 141, 160, 203, 211, 219, 206, 214, 221, 111, 141, 163, 77, 159, 18.2039 + 187, 111, 135, 159, 68, 124, 155, 124, 182, 203, 151, 169, 186, 46, 85, 120, 18.2040 + 81, 162, 189, 79, 160, 188, 80, 163, 191, 33, 75, 111, 30, 67, 102, 223, 18.2041 + 229, 233, 254, 254, 253, 253, 79, 75, 163, 49, 32, 29, 66, 46, 242, 237, 18.2042 + 229, 139, 118, 45, 28, 83, 55, 96, 141, 34, 99, 152, 84, 114, 193, 67, 18.2043 + 33, 157, 20, 21, 76, 46, 14, 142, 51, 27, 82, 53, 35, 82, 55, 32, 18.2044 + 75, 50, 192, 197, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 254, 239, 248, 18.2048 + 252, 223, 241, 250, 212, 237, 249, 203, 233, 248, 195, 232, 247, 188, 230, 246, 18.2049 + 174, 230, 247, 180, 230, 247, 192, 231, 247, 200, 233, 247, 206, 235, 248, 210, 18.2050 + 235, 247, 211, 235, 247, 208, 232, 245, 203, 229, 243, 195, 223, 240, 185, 216, 18.2051 + 235, 172, 206, 229, 156, 193, 221, 137, 176, 211, 169, 195, 220, 254, 254, 254, 18.2052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2054 + 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 119, 120, 124, 18.2055 + 143, 144, 147, 145, 146, 149, 192, 193, 195, 238, 239, 239, 130, 131, 134, 119, 18.2056 + 120, 124, 119, 120, 124, 0, 0, 0, 0, 0, 0, 254, 254, 254, 141, 159, 18.2057 + 174, 4, 42, 78, 10, 51, 84, 46, 80, 110, 49, 83, 114, 25, 64, 99, 18.2058 + 35, 79, 115, 107, 132, 156, 49, 88, 122, 51, 92, 126, 58, 92, 125, 38, 18.2059 + 76, 112, 39, 81, 116, 43, 91, 125, 32, 74, 109, 26, 64, 99, 67, 97, 18.2060 + 126, 249, 250, 250, 254, 253, 254, 252, 28, 23, 142, 59, 39, 57, 83, 69, 18.2061 + 247, 205, 176, 168, 120, 21, 149, 145, 33, 140, 179, 58, 26, 83, 50, 66, 18.2062 + 169, 5, 32, 123, 36, 29, 97, 45, 7, 155, 49, 33, 138, 86, 101, 179, 18.2063 + 155, 223, 229, 224, 251, 251, 250, 254, 254, 253, 254, 254, 254, 255, 255, 255, 18.2064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 18.2067 + 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 124, 119, 18.2074 + 120, 124, 129, 130, 133, 202, 202, 203, 245, 245, 245, 219, 219, 220, 206, 207, 18.2075 + 208, 119, 119, 124, 119, 120, 124, 0, 0, 0, 0, 0, 0, 254, 254, 254, 18.2076 + 206, 214, 220, 9, 46, 79, 7, 47, 82, 12, 51, 86, 16, 54, 90, 20, 18.2077 + 58, 94, 22, 61, 97, 104, 130, 154, 40, 77, 112, 32, 70, 107, 32, 71, 18.2078 + 107, 32, 70, 106, 31, 69, 105, 28, 66, 103, 26, 64, 100, 22, 60, 96, 18.2079 + 158, 175, 189, 253, 253, 253, 254, 254, 253, 253, 5, 3, 152, 51, 32, 81, 18.2080 + 104, 91, 224, 154, 107, 32, 90, 57, 135, 137, 30, 58, 102, 40, 87, 110, 18.2081 + 80, 84, 192, 2, 26, 92, 47, 29, 128, 41, 24, 101, 56, 43, 85, 64, 18.2082 + 50, 90, 69, 97, 119, 108, 249, 251, 251, 191, 207, 221, 254, 254, 254, 254, 18.2083 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 120, 124, 119, 120, 18.2093 + 124, 119, 120, 124, 181, 181, 183, 251, 251, 251, 200, 200, 202, 131, 132, 135, 18.2094 + 253, 253, 253, 135, 136, 139, 119, 120, 124, 0, 0, 0, 0, 0, 0, 255, 18.2095 + 255, 255, 252, 252, 253, 74, 98, 123, 4, 44, 79, 8, 48, 83, 13, 51, 18.2096 + 87, 17, 55, 91, 19, 57, 93, 101, 127, 150, 36, 72, 106, 27, 65, 101, 18.2097 + 27, 65, 101, 27, 65, 101, 26, 64, 100, 24, 62, 98, 21, 59, 95, 59, 18.2098 + 90, 120, 242, 244, 245, 254, 254, 253, 254, 254, 254, 251, 56, 51, 191, 29, 18.2099 + 18, 63, 95, 76, 166, 105, 56, 19, 66, 42, 216, 217, 178, 120, 153, 29, 18.2100 + 117, 160, 81, 79, 179, 10, 21, 72, 46, 25, 156, 36, 10, 125, 49, 106, 18.2101 + 185, 144, 156, 208, 189, 250, 251, 250, 136, 175, 195, 0, 59, 127, 86, 128, 18.2102 + 129, 243, 244, 243, 255, 255, 255, 219, 230, 240, 133, 169, 206, 133, 169, 206, 18.2103 + 133, 169, 206, 133, 169, 206, 170, 195, 220, 249, 250, 252, 133, 169, 205, 182, 18.2104 + 203, 225, 254, 254, 254, 255, 255, 255, 162, 189, 217, 161, 189, 217, 254, 254, 18.2105 + 254, 246, 249, 251, 158, 186, 215, 115, 156, 198, 132, 168, 205, 211, 224, 237, 18.2106 + 254, 254, 254, 211, 223, 237, 133, 169, 205, 234, 240, 246, 255, 255, 255, 237, 18.2107 + 242, 247, 147, 178, 211, 115, 155, 198, 145, 176, 210, 236, 241, 247, 255, 255, 18.2108 + 255, 255, 255, 255, 253, 253, 254, 141, 174, 208, 165, 191, 218, 255, 255, 255, 18.2109 + 255, 255, 255, 255, 255, 255, 160, 187, 216, 133, 169, 205, 133, 169, 206, 133, 18.2110 + 169, 206, 133, 169, 206, 228, 236, 244, 189, 208, 227, 134, 169, 206, 239, 244, 18.2111 + 248, 255, 255, 255, 226, 234, 243, 133, 169, 205, 221, 231, 241, 119, 120, 124, 18.2112 + 119, 120, 124, 183, 183, 186, 223, 223, 224, 194, 194, 196, 210, 211, 212, 121, 18.2113 + 122, 125, 254, 254, 254, 172, 173, 175, 119, 120, 124, 0, 0, 0, 0, 0, 18.2114 + 0, 255, 255, 255, 254, 254, 254, 193, 202, 210, 10, 45, 78, 5, 45, 80, 18.2115 + 8, 48, 83, 13, 51, 87, 14, 53, 88, 98, 124, 146, 31, 68, 102, 22, 18.2116 + 60, 96, 22, 60, 96, 22, 60, 96, 21, 60, 95, 19, 58, 93, 24, 61, 18.2117 + 96, 190, 201, 209, 254, 254, 254, 254, 255, 254, 254, 254, 254, 253, 115, 110, 18.2118 + 246, 3, 2, 54, 71, 48, 181, 199, 188, 92, 116, 103, 253, 254, 253, 175, 18.2119 + 198, 180, 95, 157, 27, 66, 153, 25, 34, 75, 53, 174, 205, 183, 41, 99, 18.2120 + 66, 24, 86, 55, 21, 76, 50, 70, 127, 124, 5, 95, 136, 14, 87, 102, 18.2121 + 25, 70, 46, 211, 216, 212, 255, 255, 255, 181, 202, 225, 0, 74, 153, 54, 18.2122 + 112, 174, 71, 124, 181, 71, 125, 181, 127, 164, 203, 243, 246, 250, 0, 74, 18.2123 + 152, 6, 78, 155, 191, 209, 228, 254, 254, 254, 61, 117, 177, 59, 116, 177, 18.2124 + 254, 254, 254, 78, 129, 183, 14, 84, 158, 88, 137, 188, 48, 108, 171, 27, 18.2125 + 93, 163, 232, 239, 245, 164, 190, 218, 0, 74, 152, 211, 224, 237, 226, 234, 18.2126 + 243, 28, 94, 163, 24, 91, 162, 83, 133, 185, 21, 89, 161, 44, 105, 169, 18.2127 + 249, 250, 252, 255, 255, 255, 176, 199, 223, 0, 74, 152, 6, 78, 154, 225, 18.2128 + 234, 242, 255, 255, 255, 255, 255, 255, 55, 113, 174, 17, 86, 159, 71, 124, 18.2129 + 181, 71, 124, 181, 71, 125, 181, 214, 226, 238, 117, 157, 199, 0, 74, 153, 18.2130 + 71, 124, 180, 250, 251, 252, 195, 212, 230, 0, 74, 152, 185, 206, 227, 119, 18.2131 + 120, 124, 137, 138, 141, 213, 213, 214, 121, 122, 126, 178, 178, 181, 225, 225, 18.2132 + 226, 137, 138, 141, 254, 254, 254, 189, 190, 191, 119, 120, 124, 0, 0, 0, 18.2133 + 0, 0, 0, 255, 255, 255, 254, 254, 254, 252, 252, 253, 129, 148, 164, 3, 18.2134 + 43, 77, 5, 45, 80, 8, 48, 83, 9, 49, 84, 96, 121, 144, 26, 63, 18.2135 + 96, 17, 55, 91, 17, 55, 91, 16, 55, 91, 16, 54, 90, 18, 56, 91, 18.2136 + 153, 169, 184, 253, 253, 253, 254, 254, 254, 255, 255, 255, 255, 255, 255, 252, 18.2137 + 208, 202, 253, 3, 2, 181, 31, 17, 156, 172, 162, 254, 254, 254, 254, 254, 18.2138 + 254, 253, 253, 252, 149, 201, 75, 36, 98, 49, 107, 128, 116, 254, 254, 254, 18.2139 + 254, 254, 254, 249, 251, 251, 122, 199, 185, 2, 136, 140, 12, 106, 111, 22, 18.2140 + 76, 49, 149, 160, 154, 254, 254, 254, 255, 255, 255, 181, 202, 225, 0, 74, 18.2141 + 152, 109, 151, 196, 143, 175, 209, 225, 234, 242, 255, 255, 255, 243, 246, 250, 18.2142 + 0, 74, 152, 10, 81, 155, 18, 87, 160, 216, 227, 239, 61, 117, 176, 59, 18.2143 + 116, 176, 254, 254, 254, 46, 107, 171, 26, 93, 163, 142, 175, 209, 194, 212, 18.2144 + 230, 233, 239, 246, 254, 254, 254, 164, 191, 218, 0, 74, 152, 211, 224, 237, 18.2145 + 114, 155, 198, 4, 77, 154, 224, 233, 242, 255, 255, 255, 232, 238, 245, 244, 18.2146 + 247, 250, 255, 255, 255, 254, 254, 254, 54, 112, 173, 59, 116, 176, 14, 84, 18.2147 + 158, 109, 151, 196, 255, 255, 255, 255, 255, 255, 55, 113, 175, 34, 98, 166, 18.2148 + 142, 175, 209, 169, 194, 220, 255, 255, 255, 255, 255, 255, 117, 157, 199, 2, 18.2149 + 76, 153, 8, 80, 155, 105, 148, 194, 194, 212, 230, 0, 75, 152, 185, 206, 18.2150 + 227, 119, 120, 124, 188, 188, 190, 153, 153, 156, 119, 120, 124, 189, 190, 192, 18.2151 + 239, 239, 240, 174, 174, 177, 255, 255, 255, 186, 187, 188, 119, 120, 124, 0, 18.2152 + 0, 0, 0, 0, 0, 255, 255, 255, 254, 254, 254, 254, 254, 254, 249, 249, 18.2153 + 251, 108, 131, 150, 4, 42, 76, 4, 44, 78, 6, 45, 80, 90, 116, 140, 18.2154 + 20, 58, 92, 11, 51, 86, 11, 51, 86, 11, 50, 85, 22, 60, 92, 158, 18.2155 + 175, 188, 252, 253, 253, 254, 254, 253, 254, 254, 254, 255, 255, 255, 255, 255, 18.2156 + 255, 253, 254, 253, 251, 101, 95, 250, 16, 0, 178, 80, 33, 231, 228, 219, 18.2157 + 254, 254, 254, 252, 253, 250, 150, 199, 92, 30, 89, 54, 199, 203, 200, 252, 18.2158 + 253, 252, 187, 229, 199, 55, 177, 120, 0, 153, 120, 15, 127, 106, 22, 75, 18.2159 + 49, 126, 141, 132, 253, 253, 253, 255, 255, 255, 255, 255, 255, 181, 202, 225, 18.2160 + 0, 74, 152, 47, 108, 171, 62, 118, 177, 205, 220, 235, 255, 255, 255, 243, 18.2161 + 246, 250, 0, 74, 152, 122, 161, 201, 46, 107, 171, 37, 100, 167, 48, 108, 18.2162 + 171, 59, 116, 176, 254, 254, 254, 214, 225, 238, 96, 142, 191, 38, 101, 167, 18.2163 + 1, 75, 152, 30, 96, 164, 219, 229, 240, 164, 191, 218, 0, 74, 152, 211, 18.2164 + 224, 237, 84, 134, 186, 21, 89, 160, 254, 254, 254, 255, 255, 255, 255, 255, 18.2165 + 255, 255, 255, 255, 255, 255, 255, 184, 204, 226, 0, 74, 152, 129, 166, 204, 18.2166 + 76, 128, 182, 9, 81, 156, 231, 238, 245, 255, 255, 255, 55, 113, 175, 15, 18.2167 + 85, 158, 62, 118, 177, 107, 150, 195, 255, 255, 255, 255, 255, 255, 117, 157, 18.2168 + 199, 6, 79, 155, 161, 188, 217, 1, 74, 152, 86, 135, 186, 0, 74, 152, 18.2169 + 185, 206, 227, 119, 120, 124, 208, 209, 210, 164, 164, 167, 119, 120, 124, 174, 18.2170 + 174, 176, 254, 254, 254, 248, 248, 248, 255, 255, 254, 164, 164, 167, 119, 120, 18.2171 + 124, 0, 0, 0, 0, 0, 0, 255, 255, 255, 254, 254, 255, 255, 254, 254, 18.2172 + 254, 255, 254, 249, 250, 250, 155, 168, 182, 31, 62, 94, 3, 40, 75, 8, 18.2173 + 46, 80, 5, 45, 80, 5, 45, 79, 12, 49, 83, 74, 99, 125, 204, 212, 18.2174 + 219, 253, 253, 253, 255, 254, 254, 255, 255, 254, 255, 255, 254, 255, 255, 255, 18.2175 + 255, 255, 255, 254, 254, 254, 253, 245, 245, 248, 89, 71, 240, 73, 0, 231, 18.2176 + 138, 19, 234, 213, 112, 235, 239, 170, 222, 238, 185, 121, 165, 97, 126, 208, 18.2177 + 110, 46, 191, 51, 0, 171, 46, 6, 155, 81, 22, 115, 78, 24, 69, 46, 18.2178 + 150, 161, 155, 253, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 18.2179 + 203, 225, 0, 74, 152, 187, 207, 227, 245, 248, 251, 245, 247, 250, 247, 249, 18.2180 + 251, 242, 246, 249, 0, 74, 152, 133, 169, 206, 225, 234, 242, 25, 92, 162, 18.2181 + 0, 74, 152, 59, 116, 176, 254, 254, 254, 178, 199, 223, 197, 214, 231, 253, 18.2182 + 253, 253, 179, 201, 224, 0, 74, 153, 148, 179, 211, 164, 191, 218, 0, 74, 18.2183 + 152, 211, 224, 237, 137, 171, 207, 0, 74, 152, 167, 193, 219, 253, 253, 254, 18.2184 + 167, 193, 219, 160, 187, 216, 251, 252, 253, 60, 117, 176, 6, 78, 154, 16, 18.2185 + 85, 158, 16, 86, 159, 1, 75, 153, 118, 157, 199, 254, 254, 254, 55, 113, 18.2186 + 174, 59, 116, 176, 245, 248, 250, 245, 247, 250, 245, 248, 251, 251, 252, 253, 18.2187 + 117, 157, 199, 6, 79, 155, 252, 252, 253, 126, 164, 203, 0, 74, 152, 0, 18.2188 + 74, 152, 185, 206, 227, 119, 120, 124, 190, 191, 192, 243, 243, 243, 153, 154, 18.2189 + 157, 183, 184, 186, 255, 255, 255, 255, 255, 255, 250, 250, 250, 127, 128, 132, 18.2190 + 119, 120, 124, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 18.2191 + 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 253, 235, 239, 241, 173, 186, 18.2192 + 197, 124, 144, 162, 114, 135, 154, 149, 166, 180, 207, 215, 221, 251, 252, 252, 18.2193 + 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2194 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 252, 251, 250, 242, 177, 18.2195 + 141, 219, 135, 20, 223, 183, 0, 198, 214, 0, 141, 205, 0, 85, 196, 0, 18.2196 + 32, 188, 2, 8, 165, 24, 19, 128, 55, 23, 80, 51, 72, 97, 84, 208, 18.2197 + 212, 209, 254, 254, 253, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 18.2198 + 255, 181, 202, 225, 0, 74, 152, 0, 74, 152, 0, 74, 152, 0, 74, 153, 18.2199 + 39, 102, 168, 242, 246, 249, 0, 74, 152, 133, 169, 206, 255, 255, 255, 203, 18.2200 + 217, 233, 10, 81, 156, 59, 117, 176, 245, 248, 251, 70, 123, 180, 0, 74, 18.2201 + 152, 10, 82, 156, 2, 77, 153, 34, 99, 166, 225, 234, 243, 164, 190, 218, 18.2202 + 0, 74, 152, 212, 224, 237, 245, 248, 251, 79, 130, 184, 0, 74, 152, 6, 18.2203 + 78, 155, 1, 75, 153, 99, 144, 192, 190, 209, 228, 0, 74, 152, 157, 186, 18.2204 + 215, 255, 255, 255, 254, 254, 254, 88, 137, 188, 13, 84, 158, 236, 242, 247, 18.2205 + 55, 113, 175, 0, 74, 152, 0, 74, 153, 0, 74, 152, 0, 74, 153, 161, 18.2206 + 188, 217, 117, 157, 199, 6, 78, 155, 252, 253, 254, 253, 253, 254, 90, 138, 18.2207 + 188, 0, 74, 152, 185, 206, 227, 119, 120, 124, 134, 135, 138, 246, 246, 246, 18.2208 + 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 199, 199, 201, 118, 18.2209 + 119, 123, 119, 120, 124, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 18.2210 + 255, 255, 255, 255, 255, 255, 255, 253, 254, 254, 253, 254, 253, 253, 254, 254, 18.2211 + 254, 254, 255, 254, 254, 254, 254, 254, 254, 254, 254, 255, 254, 254, 255, 254, 18.2212 + 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 18.2213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 18.2214 + 254, 254, 254, 231, 236, 230, 163, 176, 131, 101, 140, 55, 64, 127, 32, 40, 18.2215 + 114, 39, 24, 85, 44, 40, 80, 58, 102, 123, 110, 192, 197, 193, 252, 253, 18.2216 + 252, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18.2217 + 255, 255, 255, 243, 246, 250, 214, 226, 238, 214, 226, 238, 214, 226, 238, 214, 18.2218 + 226, 238, 220, 230, 241, 252, 253, 253, 214, 226, 238, 235, 241, 247, 255, 255, 18.2219 + 255, 255, 255, 255, 227, 235, 243, 224, 233, 242, 254, 254, 254, 254, 254, 254, 18.2220 + 224, 233, 242, 194, 211, 230, 208, 221, 235, 251, 252, 253, 255, 255, 255, 240, 18.2221 + 244, 248, 214, 226, 238, 248, 250, 252, 255, 255, 255, 254, 254, 254, 221, 231, 18.2222 + 241, 194, 211, 230, 225, 234, 242, 254, 254, 254, 233, 240, 246, 214, 226, 238, 18.2223 + 250, 251, 253, 255, 255, 255, 254, 254, 254, 238, 243, 247, 214, 226, 238, 242, 18.2224 + 246, 249, 223, 232, 242, 214, 226, 238, 214, 226, 238, 214, 226, 238, 214, 226, 18.2225 + 238, 240, 244, 249, 233, 239, 246, 215, 227, 238, 254, 254, 254, 255, 255, 255, 18.2226 + 248, 250, 252, 214, 226, 238, 244, 247, 250, 119, 120, 124, 119, 120, 124, 148, 18.2227 + 149, 152, 241, 241, 242, 255, 255, 255, 255, 255, 255, 242, 242, 243, 130, 131, 18.2228 + 135, 119, 120, 124, 119, 120, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2229 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2230 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2233 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2234 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2235 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2236 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2237 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2238 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2241 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2242 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2243 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2244 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2245 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2246 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18.2247 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 19.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic4gimp_def.raw Mon Aug 03 14:09:20 2009 +0100 19.3 @@ -0,0 +1,500 @@ 19.4 +#@gimp 19.5 +# 19.6 +# File : gmic4gimp_def.raw 19.7 +# ( G'MIC for GIMP default macros and menu entries) 19.8 +# 19.9 +# Description : Define menu entries for the GIMP plug-in. 19.10 +# ( http://gmic.sourceforge.net ) 19.11 +# This file is also a part of the CImg Library project. 19.12 +# ( http://cimg.sourceforge.net ) 19.13 +# 19.14 +# Note : This file is here for illustration purposes, since commands defined in 19.15 +# the default macro file are already present by default in G'MIC. 19.16 +# Then, explicit inclusion of this file (using the '-m' option) if 19.17 +# useless. 19.18 +# 19.19 +# Copyright : David Tschumperle 19.20 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 19.21 +# 19.22 +# License : CeCILL v2.0 19.23 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 19.24 +# 19.25 +# This software is governed by the CeCILL license under French law and 19.26 +# abiding by the rules of distribution of free software. You can use, 19.27 +# modify and/ or redistribute the software under the terms of the CeCILL 19.28 +# license as circulated by CEA, CNRS and INRIA at the following URL 19.29 +# "http://www.cecill.info". 19.30 +# 19.31 +# As a counterpart to the access to the source code and rights to copy, 19.32 +# modify and redistribute granted by the license, users are provided only 19.33 +# with a limited warranty and the software's author, the holder of the 19.34 +# economic rights, and the successive licensors have only limited 19.35 +# liability. 19.36 +# 19.37 +# In this respect, the user's attention is drawn to the risks associated 19.38 +# with loading, using, modifying and/or developing or reproducing the 19.39 +# software by the user in light of its specific status of free software, 19.40 +# that may mean that it is complicated to manipulate, and that also 19.41 +# therefore means that it is reserved for developers and experienced 19.42 +# professionals having in-depth computer knowledge. Users are therefore 19.43 +# encouraged to load and test the software's suitability as regards their 19.44 +# requirements in conditions enabling the security of their systems and/or 19.45 +# data to be ensured and, more generally, to use and operate it in the 19.46 +# same conditions as regards security. 19.47 +# 19.48 +# The fact that you are presently reading this means that you have had 19.49 +# knowledge of the CeCILL license and that you accept its terms. 19.50 +# 19.51 + 19.52 +#--- About the syntax of this file : ---------------------------------------------------------------------------------- 19.53 +# 19.54 +# This file is a regular G'MIC macro file (see G'MIC help for more informations 19.55 +# on writting G'MIC macros). Each line beginning with '#@gimp' defines a filter entry 19.56 +# in the G'MIC Toolbox plug-in for GIMP. 19.57 +# 19.58 +# The general syntax of a '#@gimp' line is : 19.59 +# 19.60 +# '#@gimp "Menu name" : command, preview_command, parameter = typedef, parameter2 = typedef, ...' 19.61 +# 19.62 +# where 'command' is the G'MIC command name called to process the image, 19.63 +# and 'preview_command' is the G'MIC command name called to process the preview. 19.64 +# 'parameter=typedef' tells about the name and types of the filter parameters. 'typedef' can be : 19.65 +# 19.66 +# - 'float(default_value,min_value,max_value)' : add a float slider in the parameters GUI. 19.67 +# - 'int(default_value,min_value,max_value)' : add a int slider in the parameters GUI 19.68 +# - 'bool(default_value)' : add a checkbutton in the parameters GUI. 19.69 +# - 'choice([default_indice],"Choice0","Choice1",...,"ChoiceN")' : add a combobox in the parameters GUI. 19.70 +# - 'text("default text")' : add a text entry in the parameters GUI. 19.71 +# - 'file(["default_filename"])' : add a file chooser button in the parameters GUI. 19.72 +# - 'color(defaultR,defaultG,defaultB[,defaultA])' : add a color chooser button in the parameters GUI. 19.73 +# - 'note("Comment")' : add a comment in the parameters GUI. 19.74 +# 19.75 +# To make '(' or ')' appearing in strings, replace them by '[' and ']'. 19.76 +# 19.77 +#---------------------------------------------------------------------------------------------------------------------- 19.78 + 19.79 +# Generate a 'no-preview' image. 19.80 +gimp_nopreview : 19.81 + -v- 112x52x1x3 -text[-1] "No preview\navailable",0,0,24,1,255 -r[-1] [-2],0,0,1 19.82 + -f[-2] 0 -point[-2] 50%,50%,0,1,1 -distance[-2] 1 -n[-2] -180,0 -*[-2] -1 19.83 + -or -skip 19.84 + 19.85 +# Generate a G'MIC logo image. 19.86 +gmic4gimp_logo : 19.87 + -rm 65x32x1x3 -text G\'MIC,3,2,32,1,1 -r 200x100x1x3x5 -blur 4 -sharpen 5 --f 256 -plasma[-1] 10,3 -n[-1] 0,255 19.88 + -cut 0,255 -* -elevation3d -0.4 230x120x1x3 -r3d 3 -sl3d 0 19.89 + -rotate3d[-2] 1,0,0,10 -*3d[-2] 0.9 -c3d[-2] -object3d[-1] [-2],50%,40%,0,1 -rm[-2] -sqrt -n 0,255 19.90 + -text "Toolbox for GIMP",12%,75%,24,1,255 19.91 + 19.92 +# Force the last image to be in RGB format. 19.93 +to_rgb : 19.94 + --dimensions[-1] --[-1] 1 19.95 + -if @{-1,3} --[-1] 1 -if @{-1,3} --[-1] 1 -if @{-1,3} -channels[-2] 0,2 -endif 19.96 + -else -channels[-2] 0 -r[-2] 100%x100%x1x3 -endif -else -r[-2] 100%x100%x1x3 19.97 + -endif -rm[-1] 19.98 + 19.99 +#@gimp Tiles 19.100 +#@----------- 19.101 + 19.102 +#@gimp Regular tiles : gimp_regular_tile, gimp_regular_tile0, Number of tiles along X = int(2,1,10), Number of tiles along Y = int(2,1,10), Image size = choice("Shrink", "Expand", "Repeat [Memory consuming !]") 19.103 +gimp_regular_tile0 : 19.104 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,1} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -array $1,$2 19.105 +gimp_regular_tile1 : 19.106 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,0} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -array $1,$2 19.107 +gimp_regular_tile2 : 19.108 + -array $1,$2 19.109 +gimp_regular_tile : 19.110 + -gimp_regular_tile$3 $1,$2 19.111 + 19.112 +#@gimp Faded tiles : gimp_fade_tile, gimp_fade_tile_preview, Number of tiles along X = int(2,1,10), Number of tiles along Y = int(2,1,10), Image size = choice("Shrink", "Expand", "Repeat [Memory consuming !]"), Fading start = float(80,1,100), Fading end = float(90,1,100) 19.113 +gimp_array_tile : 19.114 + --translate[-1] 50%x50%x1x1,2 -mv[-1] -2 -fade_diamond $3,$4 -array $1,$2 19.115 +gimp_fade_tile0 : 19.116 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,1} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -gimp_array_tile $1,$2,$3,$4 19.117 +gimp_fade_tile1 : 19.118 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,0} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -gimp_array_tile $1,$2,$3,$4 19.119 +gimp_fade_tile2 : 19.120 + -gimp_array_tile $1,$2,$3,$4 19.121 +gimp_fade_tile_preview : 19.122 + -gimp_fade_tile0 $1,$2,$4,$5 19.123 +gimp_fade_tile : 19.124 + -gimp_fade_tile$3 $1,$2,$4,$5 19.125 + 19.126 +#@gimp Mirror tiles : gimp_mirror_tile, gimp_mirror_tile0, Number of iterations = int(2,2,10), Expand size = bool(0) 19.127 +gimp_mirror_tile0 : 19.128 + (2) ($1) --[-1] 1 -pow[-2] [-1] -rm[-1] --dimensions[-2] -/[-1] @-2 -r[-3] @{-1,0},@{-1,1},1,100%,2 -rm[-1,-2] -mirror_tile $1 19.129 +gimp_mirror_tile1 : 19.130 + -mirror_tile $1 19.131 +gimp_mirror_tile : 19.132 + -gimp_mirror_tile$2 $1 19.133 + 19.134 +#@gimp Image grid : gimp_image_grid, gimp_image_grid, Number of cells along X = int(10,1,100), Number of cells along Y = int(10,1,100) 19.135 +gimp_image_grid : 19.136 + --dimensions (@{-1,0}) (@{-2,1}) -/[-2] $1 -/[-1] $2 -round[-2,-1] 1 -rm[-3] -reverse 19.137 + -grid @-2,@-3 -rm[-3--2] 19.138 + 19.139 +#@gimp Tile rotation : gimp_tile_rotation, gimp_tile_rotation, Number of cells along X = int(5,1,80), Number of cells along Y = int(5,1,80), Rotation angle = float(5,0,360) 19.140 +gimp_tile_rotation : 19.141 + --dimensions -mv[-1] -2 -split_tile $1,$2 -rotate[1--1] $3 -append_tile $1,$2 -r[-1] @-2,2 -rm[-2] 19.142 + 19.143 +#@gimp Psychedelic faded tiles : gimp_psychetiles, gimp_psychetiles, Number of tiles along X = int(2,1,10), Number of tiles along Y = int(2,1,10), Angle = float(10,0,360), Image size = choice("Shrink", "Expand", "Repeat [Memory consuming !]") 19.144 +_gimp_psychetiles : 19.145 + -fft -translate 50%x50%,0,0,2 -rotate $3 -translate -50%,-50%,0,0,2 -ifft -k[0] -n 0,255 -array $1,$2 19.146 +gimp_psychetiles0 : 19.147 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,1} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -_gimp_psychetiles $1,$2,$3 19.148 +gimp_psychetiles1 : 19.149 + (100) ($1,$2) -stats[-1] -/[-2] @{-1,0} -rm[-1] -r[-2] @-1%,@-1%,1,100%,2 -rm[-1] -_gimp_psychetiles $1,$2,$3 19.150 +gimp_psychetiles2 : 19.151 + -_gimp_psychetiles $1,$2,$3 19.152 +gimp_psychetiles : 19.153 + -gimp_psychetiles$4 $1,$2,$3 19.154 + 19.155 +#@gimp Tile normalization : gimp_tile_normalize, gimp_tile_normalize, Number of cells along X = int(25,1,80), Number of cells along Y = int(25,1,80) 19.156 +gimp_tile_normalize : 19.157 + --dimensions -mv[-1] 0 --channels[-1] 0,2 -channels[-2] 3 19.158 + -split_tile $1,$2 -n[2--1] 0,255 -append_tile $1,$2 -mv[-1] -2 -a[-2,-1] v -r[-1] @-2,0,0,0 -rm[-2] 19.159 + 19.160 +#@gimp Taquin puzzle : taquin, taquin, Number of X-subdivisions = int(7,1,20), Number of Y-subdivisions = int(7,1,20) 19.161 + 19.162 +#@gimp Random array of tiles : gimp_randomtiles, gimp_randomtiles, Number of source tiles along X = int(5,1,20), Number of source tiles along Y = int(5,1,20), Number of destination tiles along X = int(7,1,20), Number of destination tiles along Y = int(7,1,20) 19.163 +gimp_randomtiles : 19.164 + -split_tile $1,$2 ($1) -*[-1] $2 19.165 + -repeat $3 -repeat $4 (@?) -*[-1] @-2 -round[-1] 1 -i[-3] [@-1] -rm[-1] -done -done 19.166 + --[-1] 1 -rm[0-@-1] -rm[-1] -append_tile $3,$4 19.167 + 19.168 +#@gimp Tiles to layers : gimp_tile2layers, gimp_tile2layers_preview, Number of tiles along X = int(2,1,100), Number of tiles along Y = int(2,1,100) 19.169 +gimp_tile2layers : 19.170 + -split_tile $1,$2 19.171 + 19.172 +gimp_tile2layers_preview : 19.173 + -split_tile $1,$2 -k[50%] 19.174 + 19.175 +#@gimp _Frames 19.176 +#-------------- 19.177 + 19.178 +#@gimp Regular frame : gimp_color_frame, gimp_color_frame, Frame width = float(20,0,100), Frame height = float(20,0,100), Frame color = color(255,255,255,255), Keep original size = bool(0) 19.179 +gimp_color_frame : 19.180 + --dimensions -mv[-1] 0 19.181 + --r[-1] $1%x100%x1x100%,0 ($3^$4^$5^$6) -r[-1] [-2],1 -rm[-2] [-1] -mv[-1] -3 -a[-3--1] x 19.182 + --r[-1] 100%x$2%x1x100%,0 ($3^$4^$5^$6) -r[-1] [-2],1 -rm[-2] [-1] -mv[-1] -3 -a[-3--1] y 19.183 + -if $7 -r[-1] @-2,2 -endif -rm[0] 19.184 + 19.185 +#@gimp Fuzzy frame : gimp_frame_fuzzy, gimp_frame_fuzzy, Frame width = float(20,0,100), Frame height = float(20,0,100), Frame fuzzyness = float(10,0,40), Frame smoothness = float(1,0,5), Frame shading = float(1,0,5), Frame color = color(255,255,255,255) 19.186 +gimp_frame_fuzzy : 19.187 + 100%x100%x1x1 19.188 + -polygon[-1] 4,0,0,100%,0,100%,$2%,0,$2%,1,1 19.189 + -polygon[-1] 4,0,0,$1%,0,$1%,100%,0,100%,1,1 19.190 + --mirror[-1] x -mirror[-1] y -or[-2,-1] 19.191 + -spread $3 -blur[-1] $4 -threshold[-1] 50% -blur[-1] $5 -n[-1] 0,1 19.192 + -r[-1] [-2],1 19.193 + --*[-1] -1 -+[-1] 1 -*[-3,-1] 19.194 + ($6^$7^$8^$9) -r[-1] 1x1x1x[-2],0 -r[-1] [-2],1 -*[-2,-1] 19.195 + -+[-2,-1] 19.196 + 19.197 +#@gimp _Textures and patterns 19.198 +#---------------------------- 19.199 + 19.200 +#@gimp Random puzzle : gimp_puzzle, gimp_puzzle, Scale = float(10,0,100) 19.201 +gimp_puzzle : 19.202 + [-1] -r[-1] $1x$1x100%x100%x2 -noise[-1] 0.1 -r[-1] [-2] -rm[-2] 19.203 + [-1]x2 -translate[-1] 1,1 --[-2,-1] -norm[-1] -threshold[-1] 0.01 -*[-1] -1 19.204 + -+[-1] 1 -r[-1] [-2] -*[-1,-2] 10%x10%x10%x2 -noise[-1] 5,1 19.205 + -r[-1] [-2],[-2],1,2,5 -warp[-2] [-1],1,1,1 -rm[-1] 19.206 + 19.207 +#@gimp Mosaic pattern : mosaic, mosaic, Density = float(2,0.1,10) 19.208 + 19.209 +#@gimp Whirls texture : whirls, whirls 19.210 + 19.211 +#@gimp Paper texture : paper_texture, paper_texture 19.212 + 19.213 +#@gimp Hearts : gimp_hearts, gimp_hearts, Density = float(10,0,100) 19.214 +gimp_hearts : 19.215 + 100%x100%x1 -noise[-1] $1,2 -r[-1] [-2] -n[-1] 0,1 -*[-1,-2] -_heart9x7 19.216 + -mirror[-1] y -dilate[-2] [-1] -rm[-1] 19.217 + 19.218 +#@gimp _Artistic 19.219 +#---------------- 19.220 +#@gimp Polaroid : gimp_polaroid, gimp_polaroid, Frame border size = int(20,1,400), Bottom border size = int(120,1,400), Background size = int(20,1,400), Rotation angle = float(20,0,360), note = note("\n\n<small><b>Note :</b> All sizes are expressed in numbers of pixels.</small>") 19.221 +gimp_polaroid : 19.222 + -polaroid $1,$2,$3 -rotate $4,1 19.223 + 19.224 +#@gimp Old photograph : old_photo, old_photo 19.225 + 19.226 +#@gimp Drop shadow : gimp_drop_shadow, gimp_drop_shadow, Image elevation = int(10,0,25), Shadow smoothness = float(10,0,20), Rotation angle = float(20,0,360), Shadow position = choice("Bottom right", "Bottom left", "Up right", "Up left") 19.227 +gimp_drop_shadow0 : 19.228 + -translate[-3,-2] $1,$1,0,0,1 19.229 +gimp_drop_shadow1 : 19.230 + -translate[-3,-2] -$1,$1,0,0,1 19.231 +gimp_drop_shadow2 : 19.232 + -translate[-3,-2] $1,-$1,0,0,1 19.233 +gimp_drop_shadow3 : 19.234 + -translate[-3,-2] -$1,-$1,0,0,1 19.235 +gimp_drop_shadow : 19.236 + --f[-1] 0 --[-1] 255 -r[-2,-1] 150%x150%x1x100%,0,0,1 -+[-1] 255 --blur[-1] $2 -gimp_drop_shadow$4 $1 19.237 + -*[-2,-1] -n[-1] 0,255 -+[-2,-1] -rotate $3,1 19.238 + 19.239 +#@gimp Sponge effect : sponge, sponge, Sponge size = int(13,3,21) 19.240 + 19.241 +#@gimp Color ellipses : gimp_color_ellipses, gimp_color_ellipses, Opacity = float(0.07,0.01,0.5) 19.242 +gimp_color_ellipses : 19.243 + -to_rgb -color_ellipses $1 19.244 + 19.245 +#@gimp Edges : gimp_edges, gimp_edges, Edge threshold = float(30,0,150) 19.246 +gimp_edges : 19.247 + -to_rgb -edges $1 19.248 + 19.249 +#@gimp Cartoon : gimp_cartoon, gimp_cartoon, Edge threshold = float(30,0,150), Smoothness = float(1,0,10) 19.250 +gimp_cartoon : 19.251 + -to_rgb [-1]x2 -edges $1 -r[-2] 8x8x1x3,2 -r[-3] 100%x100%x100%x3 19.252 + -rgb2lut[-3] [-2] -lut2rgb[-3] [-2] -rm[-2] -blur[-2] $2 -*[-2--1] -n[-1] 0,255 19.253 + 19.254 +#@gimp Pen drawing : gimp_pen_drawing, gimp_pen_drawing 19.255 +gimp_pen_drawing : 19.256 + -to_rgb -drawing 19.257 + 19.258 +#@gimp Whirl drawing : draw_whirl, draw_whirl 19.259 + 19.260 +#@gimp Cubism : gimp_cubism, gimp_cubism, Iterations = int(1000,1,3000), Bloc size = float(3,0,10), Maximum angle = float(90,0,360), Opacity = float(0.7,0.01,1), Smoothness = float(0,0,5) 19.261 +gimp_cubism : 19.262 + --dimensions -*[-1] $2 -/[-1] 100 -stats[-1] -round[-1] 1 -mv[-1] 0 -cubism $1,@{-2,1},$3,$4,$5 -rm[0] 19.263 + 19.264 +#@gimp BW stencil : gimp_stencilbw, gimp_stencilbw, Edge threshold = float(30,0,150), Smoothness = float(10,0,30) 19.265 +gimp_stencilbw : 19.266 + -r[-1] 100%x100%x1x100% -t float [-1] -edges $1 -quantize[-2] 3 -blur[-2] $2 19.267 + -sharpen[-2] 1000000 -norm[-2] -n[-2] 0,1 -*[-1,-2] -n[-1] 0,255 19.268 + 19.269 +#@gimp BW pencil : gimp_pencilbw, gimp_pencilbw, Pencil type = float(0.3,0,5), Amplitude = float(60,0,200) 19.270 +gimp_pencilbw : 19.271 + -to_rgb -norm -blur $1 -sharpen 4000 -smooth $2,0,1 -equalize 256 19.272 + -sqrt -n 0,255 -r 100%x100%x1x3 19.273 + 19.274 +#@gimp BW dots : dotsbw, gimp_dotsbw_preview 19.275 +gimp_dotsbw_preview : 19.276 + -r 300%x300%x1x3,3 -dotsbw 19.277 + 19.278 +#@gimp BW dithering : ditheredbw, ditheredbw 19.279 + 19.280 +#@gimp Warhol artwork : warhol, warhol, Number of tiles along X = int(3,1,10), Number of tiles along Y = int(3,1,10) 19.281 + 19.282 +#@gimp Soft glow : glow, glow, Amplitude = float(3,0,10) 19.283 + 19.284 +#@gimp Difference of Gaussians : gimp_dog, gimp_dog, Alpha = float(3,0,10), Beta = float(3.2,0,10) 19.285 +gimp_dog : 19.286 + -dog $1,$2 -n 0,255 19.287 + 19.288 +#@gimp Tetris effect : gimp_tetris, gimp_tetris, Scale = int(10,1,100) 19.289 +gimp_tetris : 19.290 + -to_rgb -tetris $1 19.291 + 19.292 +#@gimp _Deformations 19.293 +#------------------- 19.294 + 19.295 +#@gimp Water : water, water, Amplitude = float(30,0,300), Smoothness = float(1.5,0,4) 19.296 + 19.297 +#@gimp Water reflection : gimp_reflect, gimp_reflect 19.298 +gimp_reflect : 19.299 + -to_rgb -reflect 19.300 + 19.301 +#@gimp Wave effect : gimp_wave, gimp_wave, Amplitude = float(10,0,30) Frequency = float(0.4,0,2), X-center = float(50,0,100), Y-center = float(50,0,100) 19.302 +gimp_wave : 19.303 + 100%x100% -=[-1] 1,$3%,$4% -distance[-1] 1 19.304 + -*[-1] $2 --sin[-1] -cos[-2] -a[-2,-1] v -*[-1] $1 19.305 + -warp[-2] [-1],1 -rm[-1] 19.306 + 19.307 +#@gimp Random deformation : deform, deform, Amplitude = float(10,0,200) 19.308 + 19.309 +#@gimp Fish-eye : fish_eye, fish_eye, Amplitude = float(250,0,1000) 19.310 + 19.311 +#@gimp _Degradations 19.312 +#-------------------- 19.313 + 19.314 +#@gimp Noise : gimp_noise, gimp_noise, Amplitude = float(30,0,200), Noise type = choice("Gaussian","Uniform","Salt and pepper","Poisson"), Value range = choice("Cut","Normalize"), Channels = choice("RGB[A]","Luminance","Blue and Red chrominances","Blue chrominance","Red chrominance") 19.315 +gimp_noise0 : 19.316 + -noise[-1] $1,$2 19.317 +gimp_noise1 : 19.318 + -to_rgb -rgb2ycbcr -s v -noise[-3] $1,$2 -a v -ycbcr2rgb 19.319 +gimp_noise2 : 19.320 + -to_rgb -rgb2ycbcr -s v -noise[-2,-1] $1,$2 -a v -ycbcr2rgb 19.321 +gimp_noise3 : 19.322 + -to_rgb -rgb2ycbcr -s v -noise[-2] $1,$2 -a v -ycbcr2rgb 19.323 +gimp_noise4 : 19.324 + -to_rgb -rgb2ycbcr -s v -noise[-1] $1,$2 -a v -ycbcr2rgb 19.325 +gimp_noise : 19.326 + -gimp_noise$4 $1,$2 -if $3 -n 0,255 -else -cut 0,255 -endif 19.327 + 19.328 +#@gimp Random shade stripes : gimp_shade_stripes, gimp_shade_stripes, Frequency = float(30,1,100), Stripes orientation = choice(Horizontal,Vertical), Darkness = float(0.8,0,3), Lightness = float(2,0,3) 19.329 +gimp_shade_stripes : 19.330 + -n 0,255 19.331 + -if $2 100% -else 1x100% -endif 19.332 + -noise[-1] $1,2 -distance[-1] 1 19.333 + -r[-1] [-2] -n[-1] $3,$4 -*[-1,-2] -cut[-1] 0,255 19.334 + 19.335 +#@gimp Old-movie stripes : stripesy, stripesy, Frequency = float(10,0,100) 19.336 + 19.337 +#@gimp Damp patch : damp_patch, damp_patch, Opacity = float(0.7,0,1) 19.338 + 19.339 +#@gimp Light patch : light_patch, light_patch, Darkness = float(0.7,0,1), Lightness = float(2.5,1,4) 19.340 + 19.341 +#@gimp _Image enhancement 19.342 +#------------------------- 19.343 + 19.344 +#@gimp Anisotropic smoothing : gimp_anisotropic_filter, gimp_anisotropic_filter, Amplitude = float(60,0,1000), Edge preservation = float(0.7,0,2), Anisotropy = float(0.3,0,1), Gradient smoothness = float(0.6,0,10), Tensor smoothness = float(1.1,0,10), Spatial precision = float(0.8,0.1,2), Angular precision = float(30,1,180), Value precision = float(2,0.1,5), Interpolation type = choice("Nearest neighbor","Linear","Runge-Kutta"), Fast gaussian approximation = bool(1), Number of iterations = int(1,1,10), Channels processing = choice("RGB","Luminance","Blue and Red chrominances","Blue chrominance","Red chrominance"), Tile subdivisions = int(1,1,10), note = note("\n<small><b>Note : </b>This filter is a part of the <b>GREYCstoration</b> framework, see :\n<i>http://cimg.sourceforge.net/greycstoration/</i> for more details about it.</small>") 19.345 +# RGB version 19.346 +gimp_anisotropic_filter0 : 19.347 + -split_tile $12,$12 -repeat $11 -smooth $1,$2,$3,$4,$5,$6,$7,$8,$9,$10 -done -append_tile $12,$12 -cut 0,255 19.348 +# Luminance version 19.349 +gimp_anisotropic_filter1 : 19.350 + -rgb2ycbcr -s v -repeat $11 -smooth[-3] $1,$2,$3,$4,$5,$6,$7,$8,$9,$10 -done -a v -ycbcr2rgb -cut 0,255 19.351 +# Chrominance version 19.352 +gimp_anisotropic_filter2 : 19.353 + -rgb2ycbcr -s v -repeat $11 -smooth[-2,-1] $1,$2,$3,$4,$5,$6,$7,$8,$9,$10 -done -a v -ycbcr2rgb -cut 0,255 19.354 +# Blue chrominance version 19.355 +gimp_anisotropic_filter3 : 19.356 + -rgb2ycbcr -s v -repeat $11 -smooth[-2] $1,$2,$3,$4,$5,$6,$7,$8,$9,$10 -done -a v -ycbcr2rgb -cut 0,255 19.357 +# Red chrominance version 19.358 +gimp_anisotropic_filter4 : 19.359 + -rgb2ycbcr -s v -repeat $11 -smooth[-1] $1,$2,$3,$4,$5,$6,$7,$8,$9,$10 -done -a v -ycbcr2rgb -cut 0,255 19.360 +# Generic version 19.361 +gimp_anisotropic_filter : 19.362 + -gimp_anisotropic_filter$12 $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$13 19.363 + 19.364 +#@gimp Patch-based smoothing : gimp_patch_filter, gimp_patch_filter, Patch size = int(3,2,21), Lookup size = int(5,2,21), Patch variance = float(10,0.1,200), Value variance = float(10,0.1,200), Number of iterations = int(1,1,10), Channels processing = choice("RGB","Luminance","Blue and Red chrominances","Blue chrominance","Red chrominance"), note = note("\n<small><b>Note : </b>This filter is a part of the <b>GREYCstoration</b> framework, see :\n<i>http://cimg.sourceforge.net/greycstoration/</i> for more details about it.</small>") 19.365 +# RGB version 19.366 +gimp_patch_filter0 : 19.367 + -repeat $5 -denoise $4,$3,$1,$2 -done -cut 0,255 19.368 +# Luminance version 19.369 +gimp_patch_filter1 : 19.370 + -rgb2ycbcr -s v -repeat $5 -denoise[-3] $4,$3,$1,$2 -done -a v -ycbcr2rgb -cut 0,255 19.371 +# Chrominance version 19.372 +gimp_patch_filter2 : 19.373 + -rgb2ycbcr -s v -repeat $5 -denoise[-2,-1] $4,$3,$1,$2 -done -a v -ycbcr2rgb -cut 0,255 19.374 +# Blue chrominance version 19.375 +gimp_patch_filter3 : 19.376 + -rgb2ycbcr -s v -repeat $5 -denoise[-2] $4,$3,$1,$2 -done -a v -ycbcr2rgb -cut 0,255 19.377 +# Red chrominance version 19.378 +gimp_patch_filter4 : 19.379 + -rgb2ycbcr -s v -repeat $5 -denoise[-1] $4,$3,$1,$2 -done -a v -ycbcr2rgb -cut 0,255 19.380 +# Generic version 19.381 +gimp_patch_filter : 19.382 + -gimp_patch_filter$6 $1,$2,$3,$4,$5 19.383 + 19.384 +#@gimp Bilateral filtering : gimp_bilateral, gimp_bilateral, Spatial variance = float(40,0,100), Value variance = float(30,0,100), Number of iterations = int(1,1,10) 19.385 +gimp_bilateral : 19.386 + -repeat $3 -bilateral $1,$2 -done 19.387 + 19.388 +#@gimp Mean-curvature regularization : gimp_meancurvature_flow, gimp_meancurvature_flow, Number of iterations = int(4,1,10), Time step = float(30,5,50) 19.389 +gimp_meancurvature_flow : 19.390 + -meancurvature_flow $1,$2 -cut 0,255 19.391 + 19.392 +#@gimp TV regularization : gimp_tvflow, gimp_tvflow, Number of iterations = int(4,1,40), Time step = float(30,5,100) 19.393 +gimp_tvflow : 19.394 + -tv_flow $1,$2 -cut 0,255 19.395 + 19.396 +#@gimp Inverse diffusion sharpening : gimp_sharpen0, gimp_sharpen0, Amplitude = float(50,1,300), Number of iterations = int(2,1,10) 19.397 +gimp_sharpen0 : 19.398 + -repeat $2 -sharpen $1,0 -done -cut 0,255 19.399 + 19.400 +#@gimp Shock filters sharpening : gimp_sharpen1, gimp_sharpen1, Amplitude = float(150,1,400), Edge threshold = float(0.1,0,0.7), Gradient smoothness = float(0.8,0,10), Tensor smoothness = float(1.1,0,10), Number of iterations = int(1,1,10) 19.401 +gimp_sharpen1 : 19.402 + -repeat $5 -sharpen $1,1,$2,$3,$4 -done -cut 0,255 19.403 + 19.404 +#@gimp Deinterlace : gimp_deinterlace, gimp_deinterlace0, Method = choice("Simple","Motion-compensated") 19.405 +gimp_deinterlace0 : 19.406 + -deinterlace 0 19.407 +gimp_deinterlace : 19.408 + -deinterlace $1 19.409 + 19.410 +#@gimp _Rendering and synthesis 19.411 +#------------------------------- 19.412 + 19.413 +#@gimp 3D elevation [static] : gimp_elevation, gimp_elevation_preview, Rendering width = int(512,8,1024), Rendering height = int(512,8,1024), Value scale = float(-0.15,-0.7,0.7), Map smoothness = float(1,0,10), Background color = color(255,255,255), X-angle = float(70,0,360), Y-angle = float(20,0,360), Zoom = float(1,0.1,4), Rendering type = choice(4,"Points","Lines","Flat","Flat shaded","Gouraud","Phong"), Opacity = float(1,0,1), Focale = float(500,100,800) 19.414 +gimp_elevation : 19.415 + -to_rgb --blur $4 -*[-1] $3 -r $1,$2,1,-100,2 -elevation3d[0] [-1] -rm[1] -c3d[-1] -r3d $11 -f3d $13 19.416 + ($5^$6^$7) -r[-1] $1x$2x1x3 19.417 + -rot3d[0] 0,0,1,$9 -rot3d[0] 1,0,0,$8 -*3d[0] $10 -object3d[-1] [0],50%,50%,0,$12 -rm[0] 19.418 + 19.419 +gimp_elevation_preview : 19.420 + -to_rgb --blur $4 -*[-1] $3 -r 200,200,1,-100,2 -elevation3d[0] [-1] -rm[-1] -c3d[-1] -r3d $11 -f3d $13 19.421 + ($5^$6^$7) -r[-1] 200x200x1x3 19.422 + -rot3d[0] 0,0,1,$9 -rot3d[0] 1,0,0,$8 -*3d[0] $10 -object3d[-1] [0],50%,50%,0,$12 -rm[0] 19.423 + 19.424 +#@gimp 3D elevation [animated] : gimp_elevation_anim, gimp_elevation_anim_preview, Rendering width = int(512,8,1024), Rendering height = int(512,8,1024), Value scale = float(-0.15,-0.7,0.7), Map smoothness = float(1,0,10), Background color = color(255,255,255), X-angle = float(70,0,360), Rotation step = float(5,1,360), Zoom = float(1,0.1,4), Rendering type = choice(4,"Points","Lines","Flat","Flat shaded","Gouraud","Phong"), Opacity = float(1,0,1), Number of frames = int(10,1,360), Focale = float(500,100,800) 19.425 +gimp_elevation_anim : 19.426 + -to_rgb --blur $4 -*[1] $3 -r $1,$2,1,-100,2 -elevation3d[0] [1] -rm[1] -c3d[-1] -r3d $11 -f3d $14 19.427 + -repeat $13 19.428 + ($5^$6^$7) -r[-1] $1x$2x1x3 19.429 + --rot3d[0] 1,0,0,$8 -*3d[-1] $10 -object3d[-2] [-1],50%,50%,0,$12 -rm[-1] -rot3d[0] 0,0,1,$9 -done -rm[0] 19.430 + 19.431 +gimp_elevation_anim_preview : 19.432 + -to_rgb --blur $4 -*[1] $3 -r 200,200,1,-100,2 -elevation3d[-2] [-1] -rm[-1] -c3d[-1] -r3d $11 -f3d $14 19.433 + ($5^$6^$7) -r[-1] 200x200x1x3 19.434 + -rot3d[0] 1,0,0,$8 -*3d[0] $10 -object3d[-1] [0],50%,50%,0,$12 -rm[0] 19.435 + 19.436 +#@gimp Image cube : gimp_imagecube3d, gimp_imagecube3d, Rendering size = int(512,1,1024), Image resolution = int(128,1,512), Cube size = float(256,0,512), X-angle = float(57,0,360), Y-angle = float(41,0,360), Z-angle = float(21,0,360), Background type = choice(1,"Color","Plasma"), Background color = color(255,255,255) 19.437 +_gimp_imagecube3d0 : ($1^$2^$3) -r[-1] [-2],1 -rm[-2] 19.438 +_gimp_imagecube3d1 : -plasma[-1] 10,10 -n[-1] 0,128 -skip $* 19.439 +gimp_imagecube3d : 19.440 + -to_rgb -imagecube3d $2 -*3d $3 -rot3d 0,0,1,$6 -rot3d 0,1,0,$5 -rot3d 1,0,0,$4 $1x$1x1x3 19.441 + -_gimp_imagecube3d$7 $8,$9,$10 -r3d 2 -o3d -object3d[1] [0],50%,50% -k[1] 19.442 + 19.443 +#@gimp Random 3D objects : gimp_random3d, gimp_random3d, Type of objects = choice("Cube","Cone","Cylinder","Sphere","Torus"), Number of objects = int(50,1,300), Object size = float(3,1,20), Z-range = float(100,0,300), Rendering type = choice(3,"Points","Lines","Flat","Flat shaded","Gouraud","Phong"), Opacity = float(1,0,1) 19.444 +_gimp_random3d0 : -cube3d $1 19.445 +_gimp_random3d1 : ($1) -/[-1] 2 -cone3d @-1,$1 -rm[-2] 19.446 +_gimp_random3d2 : ($1) -/[-1] 2 -cylinder3d @-1,$1 -rm[-2] 19.447 +_gimp_random3d3 : -sphere3d $1,2 19.448 +_gimp_random3d4 : ($1) -/[-1] 3 -torus3d $1,@-1 -rm[-2] 19.449 +gimp_random3d : 19.450 + -to_rgb --dimensions -/[-1] 2 -repeat $2 19.451 + (@{1,0}) -+[-1] @{1,1} -*[-1] $3 -/[-1] 100 -p[-1] -v- -_gimp_random3d$1 @-1 -rm[-2] 19.452 + -rot3d[-1] 1,1,0,@{?,0,360} 19.453 + (@{?,-1,1}) -*[-1] @{1,0} (@{?,-1,1}) -*[-1] @{1,1} 19.454 + -+3d[-3] @-2,@-1,@{?,-$4,$4} -rm[-2,-1] 19.455 + -col3d[-1] @{?,255},@{?,255},@{?,255} -done -+3d[2--1] -r3d $5 -o3d -object3d[0] [-1],50%,50%,0,$6 19.456 + -k[0] 19.457 + 19.458 +#@gimp Mandelbrot fractal : gimp_mandelbrot, gimp_mandelbrot, X-origin = float(0,-2,2), Y-origin = float(0,-2,2), X-range = float(2,0,2), Y-range = float(2,0,2), Number of iterations = int(128,1,512), Fractal set = choice(Mandelbrot, Julia), X-seed = float(0,-2,2), Y-seed = float(0,-2,2), Palette = choice(Grayscale,Blue,Hot,Clusters) 19.459 +gimp_mandelbrot : 19.460 + ($1) --[-1] $3 ($2) --[-1] $4 ($1) -+[-1] $3 ($2) -+[-1] $4 -a[-4--1] x 19.461 + -mandelbrot[-2] @-1,$5,$6,$7,$8 -rm[-1] 19.462 + -if $9 ($9) --[-1] 1 -lut2rgb[-2] @-1 -rm[-1] -else -norm -n 0,255 -endif 19.463 + 19.464 +#@gimp _Selections 19.465 +#------------------ 19.466 +#@gimp Global RGB selection : gimp_selectrgb, gimp_selectrgb, Selected color = color(255,255,255), Tolerance = float(100,1,450) 19.467 +gimp_selectrgb : 19.468 + -to_rgb -select_rgb $1,$2,$3,$4 -n 0,255 19.469 + 19.470 +#@gimp _Bulk filters 19.471 +#-------------------- 19.472 +#@gimp Fourier transform (centered log-module) : gimp_fourier, gimp_fourier 19.473 +gimp_fourier : 19.474 + -fft -sqr -+ -sqrt -+ 1 -log -translate 50%,50%,0,0,2 -n 0,255 19.475 + 19.476 +#@gimp Import image data : gimp_import_image, gimp_import_image, Filename = file(), Enable normalization = bool(1), note = note("\n<small><b>Note : </b>This filter may be useful to import image data with exotic formats : Pandore, CImg, Inrimage, ...</small>") 19.477 +gimp_import_image : 19.478 + -rm $1 -s z -if $2 -n 0,255 -else -cut 0,255 -endif -p 19.479 + 19.480 +#@gimp Custom G'MIC command : gimp_custom, gimp_custom, Command = text("--blur 2 -xor"), note = note("\n<small><b>Note : </b>This filter can execute any command understood by the G'MIC interpreter. You can then test some commands before creating your own G'MIC macros and menu entries.</small>") 19.481 +gimp_custom : 19.482 + -nop 19.483 + 19.484 +#@gimp _Additionnal informations 19.485 +#-------------------------------- 19.486 +#@gimp About the G'MIC Toolbox : nop, gmic4gimp_logo, note = note("\n<b>The G'MIC Toolbox for GIMP</b>\n[ <b>G</b>REYC's <b>M</b>agic <b>I</b>mage <b>C</b>onverter, <i>version 1.3.0.3]</i>\n\n written by <i>David Tschumperle</i>\n\nThis plug-in is based on the libraries <i>G'MIC</i> and <i>CImg\n[C++ Template Image Processing Library]</i>, available at :\n\n - http://gmic.sourceforge.net/ - and\n - http://cimg.sourceforge.net/ -\n\nAll code and libraries are open-source and have been developed in the <i>Image Team</i> at the <i>GREYC Laboratory</i> - CNRS UMR 6072 - in Caen/France.\n\n<small>If you enjoy using G'MIC, it would be nice to send us a nice postcard\nfrom your place at the following address :\n\n<tt> David Tschumperle, GREYC Image,\n 6 Bd du Marechal Juin, 14050 Caen Cedex / France.</tt></small>") 19.487 + 19.488 +#@gimp Release notes : nop, gmic4gimp_logo, note = note("- <b>2009/01/13</b> : version <i>1.3.0</i> [Initial].\n- <b>2009/01/16</b> : version <i>1.3.0.1</i>.\n- <b>2009/01/22</b> : version <i>1.3.0.2</i>.\n- <b>2009/01/26</b> : version <i>1.3.0.3</i>.\n- <b>2009/02/20</b> : version <i>1.3.0.4</i> [current].") 19.489 + 19.490 +#@gimp Adding user-defined filters : nop, gmic4gimp_logo, note = note("It is possible to add your own <b>user-defined filters</b> to the G'MIC Toolbox :\n\nCreate a <i>.gmic4gimp</i> text file in your home directory [or appdata directory on Windows]. The plug-in will read it\neach time it is called. This file must be a regular\n<b>G'MIC macro file</b> containing your filter definitions that\nwill be added to the list of existing ones.\nLook at the default filters file :\n\n<small><i>http://gmic.sourceforge.net/.gmic4gimp_def</i></small>\n\n ...to see how existing filters have been defined and \nadded to the G'MIC Toolbox. Writting a new filter can be generally done in very few lines with G'MIC.\n\n<small><b>Example</b> of a valid <i>.gmic4gimp</i> file :\n\n<tt>#@gimp My effect : my_effect, my_effect, Sigma = float[2,0,10]\nmy_effect :\n --blur $1 -n 0,255 -xor</tt>\n\nBy the way, you are welcome to submit and share your nice custom filters on the G'MIC webpage forums.</small>") 19.491 + 19.492 +#@gimp Updating existing G'MIC filters : nop, gmic4gimp_logo, note = note("The G'MIC Toolbox is able to <b>update</b> his list of filters definitions. Click on the <i>Update Filters</i> button on the\nleft pane to connect to the server and download\nthe update file.\n\n Basically, the update procedure downloads a file\n<i>.gmic4gimp_def.xxxx</i> into your home directory [or appdata directory on Windows] where <i>xxxx</i> are the four digits\nof the version number of your G'MIC plug-in.\nYou can manually install the update file from :\n\n<small><i>http://www.greyc.ensicaen.fr/~dtschump/gmic4gimp_def.xxxx</i></small>\n\nJust copy and rename this file as your file\n<i>.gmic4gimp_def.xxxx</i> and the update is done.\nBy the way, removing this local file also resets all the\nfilter definitions to their initial state.") 19.493 + 19.494 +#@gimp Initial G'MIC filters 19.495 +#---------------------------- 19.496 +#@gimp About this section : nop, gmic4gimp_logo, note = note("This section contains all the <i>initial</i> definitions of the filters from the G'MIC Toolbox, i.e. the ones defined at the latest release date. If no filters appear below, then you did not update your filter list yet.") 19.497 + 19.498 +# Local Variables: 19.499 +# mode: sh 19.500 +# End: 19.501 +# 19.502 +# (End of G'MIC macro file) 19.503 +
20.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 20.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic_def.h Mon Aug 03 14:09:20 2009 +0100 20.3 @@ -0,0 +1,2441 @@ 20.4 +/* Define image 'def' of size 39017x1x1x1 and type 'char' */ 20.5 +char data_def[] = { 20.6 + 35, 10, 35, 32, 32, 70, 105, 108, 101, 32, 32, 32, 32, 32, 32, 32, 20.7 + 32, 58, 32, 103, 109, 105, 99, 95, 100, 101, 102, 46, 114, 97, 119, 10, 20.8 + 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 20.9 + 32, 40, 32, 71, 39, 77, 73, 67, 32, 100, 101, 102, 97, 117, 108, 116, 20.10 + 32, 109, 97, 99, 114, 111, 32, 102, 105, 108, 101, 32, 41, 10, 35, 10, 20.11 + 35, 32, 32, 68, 101, 115, 99, 114, 105, 112, 116, 105, 111, 110, 32, 58, 20.12 + 32, 68, 101, 102, 105, 110, 101, 32, 97, 100, 100, 105, 116, 105, 111, 110, 20.13 + 97, 108, 32, 99, 111, 109, 109, 97, 110, 100, 115, 32, 102, 111, 114, 32, 20.14 + 71, 39, 77, 73, 67, 32, 40, 71, 82, 69, 89, 67, 39, 115, 32, 77, 20.15 + 97, 103, 105, 99, 32, 73, 109, 97, 103, 101, 32, 67, 111, 110, 118, 101, 20.16 + 114, 116, 101, 114, 41, 46, 10, 35, 32, 32, 32, 32, 32, 32, 32, 32, 20.17 + 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 104, 116, 116, 112, 58, 47, 20.18 + 47, 103, 109, 105, 99, 46, 115, 111, 117, 114, 99, 101, 102, 111, 114, 103, 20.19 + 101, 46, 110, 101, 116, 32, 41, 10, 35, 32, 32, 32, 32, 32, 32, 32, 20.20 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 104, 105, 115, 32, 102, 105, 20.21 + 108, 101, 32, 105, 115, 32, 97, 108, 115, 111, 32, 97, 32, 112, 97, 114, 20.22 + 116, 32, 111, 102, 32, 116, 104, 101, 32, 67, 73, 109, 103, 32, 76, 105, 20.23 + 98, 114, 97, 114, 121, 32, 112, 114, 111, 106, 101, 99, 116, 46, 10, 35, 20.24 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 20.25 + 40, 32, 104, 116, 116, 112, 58, 47, 47, 99, 105, 109, 103, 46, 115, 111, 20.26 + 117, 114, 99, 101, 102, 111, 114, 103, 101, 46, 110, 101, 116, 32, 41, 10, 20.27 + 35, 10, 35, 32, 32, 85, 115, 97, 103, 101, 32, 32, 32, 32, 32, 32, 20.28 + 32, 58, 32, 103, 109, 105, 99, 32, 91, 45, 109, 32, 103, 109, 105, 99, 20.29 + 95, 100, 101, 102, 46, 114, 97, 119, 93, 32, 40, 46, 46, 46, 41, 10, 20.30 + 35, 10, 35, 32, 32, 78, 111, 116, 101, 32, 32, 32, 32, 32, 32, 32, 20.31 + 32, 58, 32, 84, 104, 105, 115, 32, 102, 105, 108, 101, 32, 105, 115, 32, 20.32 + 104, 101, 114, 101, 32, 102, 111, 114, 32, 105, 108, 108, 117, 115, 116, 114, 20.33 + 97, 116, 105, 111, 110, 32, 112, 117, 114, 112, 111, 115, 101, 115, 44, 32, 20.34 + 115, 105, 110, 99, 101, 32, 99, 111, 109, 109, 97, 110, 100, 115, 32, 100, 20.35 + 101, 102, 105, 110, 101, 100, 32, 105, 110, 10, 35, 32, 32, 32, 32, 32, 20.36 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 116, 104, 101, 32, 100, 20.37 + 101, 102, 97, 117, 108, 116, 32, 109, 97, 99, 114, 111, 32, 102, 105, 108, 20.38 + 101, 32, 97, 114, 101, 32, 97, 108, 114, 101, 97, 100, 121, 32, 112, 114, 20.39 + 101, 115, 101, 110, 116, 32, 98, 121, 32, 100, 101, 102, 97, 117, 108, 116, 20.40 + 32, 105, 110, 32, 71, 39, 77, 73, 67, 46, 10, 35, 32, 32, 32, 32, 20.41 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 84, 104, 101, 110, 20.42 + 44, 32, 101, 120, 112, 108, 105, 99, 105, 116, 32, 105, 110, 99, 108, 117, 20.43 + 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 105, 115, 32, 102, 105, 108, 20.44 + 101, 32, 40, 117, 115, 105, 110, 103, 32, 116, 104, 101, 32, 39, 45, 109, 20.45 + 39, 32, 111, 112, 116, 105, 111, 110, 41, 32, 105, 102, 10, 35, 32, 32, 20.46 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 117, 115, 20.47 + 101, 108, 101, 115, 115, 46, 10, 35, 10, 35, 32, 32, 67, 111, 112, 121, 20.48 + 114, 105, 103, 104, 116, 32, 32, 32, 58, 32, 68, 97, 118, 105, 100, 32, 20.49 + 84, 115, 99, 104, 117, 109, 112, 101, 114, 108, 101, 10, 35, 32, 32, 32, 20.50 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 104, 20.51 + 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 103, 114, 101, 121, 99, 46, 20.52 + 101, 110, 115, 105, 99, 97, 101, 110, 46, 102, 114, 47, 126, 100, 116, 115, 20.53 + 99, 104, 117, 109, 112, 47, 32, 41, 10, 35, 10, 35, 32, 32, 76, 105, 20.54 + 99, 101, 110, 115, 101, 32, 32, 32, 32, 32, 58, 32, 67, 101, 67, 73, 20.55 + 76, 76, 32, 118, 50, 46, 48, 10, 35, 32, 32, 32, 32, 32, 32, 32, 20.56 + 32, 32, 32, 32, 32, 32, 32, 32, 32, 40, 32, 104, 116, 116, 112, 58, 20.57 + 47, 47, 119, 119, 119, 46, 99, 101, 99, 105, 108, 108, 46, 105, 110, 102, 20.58 + 111, 47, 108, 105, 99, 101, 110, 99, 101, 115, 47, 76, 105, 99, 101, 110, 20.59 + 99, 101, 95, 67, 101, 67, 73, 76, 76, 95, 86, 50, 45, 101, 110, 46, 20.60 + 104, 116, 109, 108, 32, 41, 10, 35, 10, 35, 32, 32, 84, 104, 105, 115, 20.61 + 32, 115, 111, 102, 116, 119, 97, 114, 101, 32, 105, 115, 32, 103, 111, 118, 20.62 + 101, 114, 110, 101, 100, 32, 98, 121, 32, 116, 104, 101, 32, 67, 101, 67, 20.63 + 73, 76, 76, 32, 32, 108, 105, 99, 101, 110, 115, 101, 32, 117, 110, 100, 20.64 + 101, 114, 32, 70, 114, 101, 110, 99, 104, 32, 108, 97, 119, 32, 97, 110, 20.65 + 100, 10, 35, 32, 32, 97, 98, 105, 100, 105, 110, 103, 32, 98, 121, 32, 20.66 + 116, 104, 101, 32, 114, 117, 108, 101, 115, 32, 111, 102, 32, 100, 105, 115, 20.67 + 116, 114, 105, 98, 117, 116, 105, 111, 110, 32, 111, 102, 32, 102, 114, 101, 20.68 + 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 46, 32, 32, 89, 111, 117, 20.69 + 32, 99, 97, 110, 32, 32, 117, 115, 101, 44, 10, 35, 32, 32, 109, 111, 20.70 + 100, 105, 102, 121, 32, 97, 110, 100, 47, 32, 111, 114, 32, 114, 101, 100, 20.71 + 105, 115, 116, 114, 105, 98, 117, 116, 101, 32, 116, 104, 101, 32, 115, 111, 20.72 + 102, 116, 119, 97, 114, 101, 32, 117, 110, 100, 101, 114, 32, 116, 104, 101, 20.73 + 32, 116, 101, 114, 109, 115, 32, 111, 102, 32, 116, 104, 101, 32, 67, 101, 20.74 + 67, 73, 76, 76, 10, 35, 32, 32, 108, 105, 99, 101, 110, 115, 101, 32, 20.75 + 97, 115, 32, 99, 105, 114, 99, 117, 108, 97, 116, 101, 100, 32, 98, 121, 20.76 + 32, 67, 69, 65, 44, 32, 67, 78, 82, 83, 32, 97, 110, 100, 32, 73, 20.77 + 78, 82, 73, 65, 32, 97, 116, 32, 116, 104, 101, 32, 102, 111, 108, 108, 20.78 + 111, 119, 105, 110, 103, 32, 85, 82, 76, 10, 35, 32, 32, 34, 104, 116, 20.79 + 116, 112, 58, 47, 47, 119, 119, 119, 46, 99, 101, 99, 105, 108, 108, 46, 20.80 + 105, 110, 102, 111, 34, 46, 10, 35, 10, 35, 32, 32, 65, 115, 32, 97, 20.81 + 32, 99, 111, 117, 110, 116, 101, 114, 112, 97, 114, 116, 32, 116, 111, 32, 20.82 + 116, 104, 101, 32, 97, 99, 99, 101, 115, 115, 32, 116, 111, 32, 116, 104, 20.83 + 101, 32, 115, 111, 117, 114, 99, 101, 32, 99, 111, 100, 101, 32, 97, 110, 20.84 + 100, 32, 32, 114, 105, 103, 104, 116, 115, 32, 116, 111, 32, 99, 111, 112, 20.85 + 121, 44, 10, 35, 32, 32, 109, 111, 100, 105, 102, 121, 32, 97, 110, 100, 20.86 + 32, 114, 101, 100, 105, 115, 116, 114, 105, 98, 117, 116, 101, 32, 103, 114, 20.87 + 97, 110, 116, 101, 100, 32, 98, 121, 32, 116, 104, 101, 32, 108, 105, 99, 20.88 + 101, 110, 115, 101, 44, 32, 117, 115, 101, 114, 115, 32, 97, 114, 101, 32, 20.89 + 112, 114, 111, 118, 105, 100, 101, 100, 32, 111, 110, 108, 121, 10, 35, 32, 20.90 + 32, 119, 105, 116, 104, 32, 97, 32, 108, 105, 109, 105, 116, 101, 100, 32, 20.91 + 119, 97, 114, 114, 97, 110, 116, 121, 32, 32, 97, 110, 100, 32, 116, 104, 20.92 + 101, 32, 115, 111, 102, 116, 119, 97, 114, 101, 39, 115, 32, 97, 117, 116, 20.93 + 104, 111, 114, 44, 32, 32, 116, 104, 101, 32, 104, 111, 108, 100, 101, 114, 20.94 + 32, 111, 102, 32, 116, 104, 101, 10, 35, 32, 32, 101, 99, 111, 110, 111, 20.95 + 109, 105, 99, 32, 114, 105, 103, 104, 116, 115, 44, 32, 32, 97, 110, 100, 20.96 + 32, 116, 104, 101, 32, 115, 117, 99, 99, 101, 115, 115, 105, 118, 101, 32, 20.97 + 108, 105, 99, 101, 110, 115, 111, 114, 115, 32, 32, 104, 97, 118, 101, 32, 20.98 + 111, 110, 108, 121, 32, 32, 108, 105, 109, 105, 116, 101, 100, 10, 35, 32, 20.99 + 32, 108, 105, 97, 98, 105, 108, 105, 116, 121, 46, 10, 35, 10, 35, 32, 20.100 + 32, 73, 110, 32, 116, 104, 105, 115, 32, 114, 101, 115, 112, 101, 99, 116, 20.101 + 44, 32, 116, 104, 101, 32, 117, 115, 101, 114, 39, 115, 32, 97, 116, 116, 20.102 + 101, 110, 116, 105, 111, 110, 32, 105, 115, 32, 100, 114, 97, 119, 110, 32, 20.103 + 116, 111, 32, 116, 104, 101, 32, 114, 105, 115, 107, 115, 32, 97, 115, 115, 20.104 + 111, 99, 105, 97, 116, 101, 100, 10, 35, 32, 32, 119, 105, 116, 104, 32, 20.105 + 108, 111, 97, 100, 105, 110, 103, 44, 32, 32, 117, 115, 105, 110, 103, 44, 20.106 + 32, 32, 109, 111, 100, 105, 102, 121, 105, 110, 103, 32, 97, 110, 100, 47, 20.107 + 111, 114, 32, 100, 101, 118, 101, 108, 111, 112, 105, 110, 103, 32, 111, 114, 20.108 + 32, 114, 101, 112, 114, 111, 100, 117, 99, 105, 110, 103, 32, 116, 104, 101, 20.109 + 10, 35, 32, 32, 115, 111, 102, 116, 119, 97, 114, 101, 32, 98, 121, 32, 20.110 + 116, 104, 101, 32, 117, 115, 101, 114, 32, 105, 110, 32, 108, 105, 103, 104, 20.111 + 116, 32, 111, 102, 32, 105, 116, 115, 32, 115, 112, 101, 99, 105, 102, 105, 20.112 + 99, 32, 115, 116, 97, 116, 117, 115, 32, 111, 102, 32, 102, 114, 101, 101, 20.113 + 32, 115, 111, 102, 116, 119, 97, 114, 101, 44, 10, 35, 32, 32, 116, 104, 20.114 + 97, 116, 32, 109, 97, 121, 32, 109, 101, 97, 110, 32, 32, 116, 104, 97, 20.115 + 116, 32, 105, 116, 32, 105, 115, 32, 99, 111, 109, 112, 108, 105, 99, 97, 20.116 + 116, 101, 100, 32, 116, 111, 32, 109, 97, 110, 105, 112, 117, 108, 97, 116, 20.117 + 101, 44, 32, 32, 97, 110, 100, 32, 32, 116, 104, 97, 116, 32, 32, 97, 20.118 + 108, 115, 111, 10, 35, 32, 32, 116, 104, 101, 114, 101, 102, 111, 114, 101, 20.119 + 32, 109, 101, 97, 110, 115, 32, 32, 116, 104, 97, 116, 32, 105, 116, 32, 20.120 + 105, 115, 32, 114, 101, 115, 101, 114, 118, 101, 100, 32, 102, 111, 114, 32, 20.121 + 100, 101, 118, 101, 108, 111, 112, 101, 114, 115, 32, 32, 97, 110, 100, 32, 20.122 + 32, 101, 120, 112, 101, 114, 105, 101, 110, 99, 101, 100, 10, 35, 32, 32, 20.123 + 112, 114, 111, 102, 101, 115, 115, 105, 111, 110, 97, 108, 115, 32, 104, 97, 20.124 + 118, 105, 110, 103, 32, 105, 110, 45, 100, 101, 112, 116, 104, 32, 99, 111, 20.125 + 109, 112, 117, 116, 101, 114, 32, 107, 110, 111, 119, 108, 101, 100, 103, 101, 20.126 + 46, 32, 85, 115, 101, 114, 115, 32, 97, 114, 101, 32, 116, 104, 101, 114, 20.127 + 101, 102, 111, 114, 101, 10, 35, 32, 32, 101, 110, 99, 111, 117, 114, 97, 20.128 + 103, 101, 100, 32, 116, 111, 32, 108, 111, 97, 100, 32, 97, 110, 100, 32, 20.129 + 116, 101, 115, 116, 32, 116, 104, 101, 32, 115, 111, 102, 116, 119, 97, 114, 20.130 + 101, 39, 115, 32, 115, 117, 105, 116, 97, 98, 105, 108, 105, 116, 121, 32, 20.131 + 97, 115, 32, 114, 101, 103, 97, 114, 100, 115, 32, 116, 104, 101, 105, 114, 20.132 + 10, 35, 32, 32, 114, 101, 113, 117, 105, 114, 101, 109, 101, 110, 116, 115, 20.133 + 32, 105, 110, 32, 99, 111, 110, 100, 105, 116, 105, 111, 110, 115, 32, 101, 20.134 + 110, 97, 98, 108, 105, 110, 103, 32, 116, 104, 101, 32, 115, 101, 99, 117, 20.135 + 114, 105, 116, 121, 32, 111, 102, 32, 116, 104, 101, 105, 114, 32, 115, 121, 20.136 + 115, 116, 101, 109, 115, 32, 97, 110, 100, 47, 111, 114, 10, 35, 32, 32, 20.137 + 100, 97, 116, 97, 32, 116, 111, 32, 98, 101, 32, 101, 110, 115, 117, 114, 20.138 + 101, 100, 32, 97, 110, 100, 44, 32, 32, 109, 111, 114, 101, 32, 103, 101, 20.139 + 110, 101, 114, 97, 108, 108, 121, 44, 32, 116, 111, 32, 117, 115, 101, 32, 20.140 + 97, 110, 100, 32, 111, 112, 101, 114, 97, 116, 101, 32, 105, 116, 32, 105, 20.141 + 110, 32, 116, 104, 101, 10, 35, 32, 32, 115, 97, 109, 101, 32, 99, 111, 20.142 + 110, 100, 105, 116, 105, 111, 110, 115, 32, 97, 115, 32, 114, 101, 103, 97, 20.143 + 114, 100, 115, 32, 115, 101, 99, 117, 114, 105, 116, 121, 46, 10, 35, 10, 20.144 + 35, 32, 32, 84, 104, 101, 32, 102, 97, 99, 116, 32, 116, 104, 97, 116, 20.145 + 32, 121, 111, 117, 32, 97, 114, 101, 32, 112, 114, 101, 115, 101, 110, 116, 20.146 + 108, 121, 32, 114, 101, 97, 100, 105, 110, 103, 32, 116, 104, 105, 115, 32, 20.147 + 109, 101, 97, 110, 115, 32, 116, 104, 97, 116, 32, 121, 111, 117, 32, 104, 20.148 + 97, 118, 101, 32, 104, 97, 100, 10, 35, 32, 32, 107, 110, 111, 119, 108, 20.149 + 101, 100, 103, 101, 32, 111, 102, 32, 116, 104, 101, 32, 67, 101, 67, 73, 20.150 + 76, 76, 32, 108, 105, 99, 101, 110, 115, 101, 32, 97, 110, 100, 32, 116, 20.151 + 104, 97, 116, 32, 121, 111, 117, 32, 97, 99, 99, 101, 112, 116, 32, 105, 20.152 + 116, 115, 32, 116, 101, 114, 109, 115, 46, 10, 35, 10, 10, 35, 45, 45, 20.153 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.154 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.155 + 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 32, 71, 101, 116, 32, 97, 20.156 + 110, 100, 32, 100, 105, 115, 112, 108, 97, 121, 32, 105, 109, 97, 103, 101, 20.157 + 32, 99, 104, 97, 114, 97, 99, 116, 101, 114, 105, 115, 116, 105, 99, 115, 20.158 + 10, 35, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.159 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.160 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 20.161 + 67, 111, 109, 112, 117, 116, 101, 32, 105, 109, 97, 103, 101, 32, 103, 114, 20.162 + 97, 100, 105, 101, 110, 116, 32, 110, 111, 114, 109, 46, 10, 35, 45, 45, 20.163 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.164 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 20.165 + 105, 99, 32, 103, 114, 97, 100, 105, 101, 110, 116, 95, 110, 111, 114, 109, 20.166 + 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 67, 20.167 + 111, 109, 112, 117, 116, 101, 32, 103, 114, 97, 100, 105, 101, 110, 116, 32, 20.168 + 110, 111, 114, 109, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.169 + 32, 105, 109, 97, 103, 101, 46, 10, 103, 114, 97, 100, 105, 101, 110, 116, 20.170 + 95, 110, 111, 114, 109, 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 20.171 + 109, 112, 117, 116, 101, 32, 103, 114, 97, 100, 105, 101, 110, 116, 32, 110, 20.172 + 111, 114, 109, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.173 + 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 20.174 + 32, 102, 108, 111, 97, 116, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 20.175 + 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 97, 91, 45, 51, 45, 45, 20.176 + 49, 93, 32, 118, 32, 45, 110, 111, 114, 109, 91, 45, 49, 93, 32, 45, 20.177 + 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 20.178 + 67, 111, 109, 112, 117, 116, 101, 32, 105, 109, 97, 103, 101, 32, 103, 114, 20.179 + 97, 100, 105, 101, 110, 116, 32, 111, 114, 105, 101, 110, 116, 97, 116, 105, 20.180 + 111, 110, 32, 105, 110, 32, 39, 78, 39, 45, 68, 46, 10, 35, 45, 45, 20.181 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.182 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.183 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 20.184 + 105, 99, 32, 103, 114, 97, 100, 105, 101, 110, 116, 95, 111, 114, 105, 101, 20.185 + 110, 116, 97, 116, 105, 111, 110, 32, 58, 32, 78, 61, 51, 32, 58, 32, 20.186 + 67, 111, 109, 112, 117, 116, 101, 32, 78, 45, 68, 32, 103, 114, 97, 100, 20.187 + 105, 101, 110, 116, 32, 111, 114, 105, 101, 110, 116, 97, 116, 105, 111, 110, 20.188 + 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.189 + 103, 101, 46, 10, 95, 103, 114, 97, 100, 105, 101, 110, 116, 95, 111, 114, 20.190 + 105, 101, 110, 116, 97, 116, 105, 111, 110, 51, 32, 58, 10, 32, 32, 32, 20.191 + 45, 103, 114, 97, 100, 105, 101, 110, 116, 91, 45, 49, 93, 32, 120, 121, 20.192 + 122, 32, 45, 45, 115, 113, 114, 91, 45, 51, 45, 45, 49, 93, 32, 45, 20.193 + 43, 91, 45, 51, 45, 45, 49, 93, 32, 45, 43, 91, 45, 49, 93, 32, 20.194 + 49, 101, 45, 56, 32, 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 20.195 + 47, 91, 45, 52, 44, 45, 51, 93, 32, 91, 45, 49, 93, 32, 45, 47, 20.196 + 91, 45, 50, 44, 45, 49, 93, 10, 95, 103, 114, 97, 100, 105, 101, 110, 20.197 + 116, 95, 111, 114, 105, 101, 110, 116, 97, 116, 105, 111, 110, 50, 32, 58, 20.198 + 10, 32, 32, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 91, 45, 49, 20.199 + 93, 32, 120, 121, 32, 45, 45, 115, 113, 114, 91, 45, 50, 44, 45, 49, 20.200 + 93, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 32, 45, 43, 91, 45, 20.201 + 49, 93, 32, 49, 101, 45, 56, 32, 45, 115, 113, 114, 116, 91, 45, 49, 20.202 + 93, 32, 45, 47, 91, 45, 51, 93, 32, 91, 45, 49, 93, 32, 45, 47, 20.203 + 91, 45, 50, 44, 45, 49, 93, 10, 95, 103, 114, 97, 100, 105, 101, 110, 20.204 + 116, 95, 111, 114, 105, 101, 110, 116, 97, 116, 105, 111, 110, 49, 32, 58, 20.205 + 10, 32, 32, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 91, 45, 49, 20.206 + 93, 32, 120, 32, 45, 45, 97, 98, 115, 91, 45, 49, 93, 32, 45, 43, 20.207 + 91, 45, 49, 93, 32, 49, 101, 45, 56, 32, 45, 47, 91, 45, 50, 44, 20.208 + 45, 49, 93, 10, 103, 114, 97, 100, 105, 101, 110, 116, 95, 111, 114, 105, 20.209 + 101, 110, 116, 97, 116, 105, 111, 110, 32, 58, 32, 45, 105, 110, 116, 32, 20.210 + 36, 123, 49, 61, 51, 125, 10, 32, 32, 45, 118, 45, 32, 45, 105, 102, 20.211 + 32, 36, 49, 32, 40, 52, 41, 32, 45, 45, 91, 45, 49, 93, 32, 36, 20.212 + 49, 32, 45, 105, 102, 32, 64, 45, 49, 32, 45, 114, 109, 91, 45, 49, 20.213 + 93, 10, 32, 32, 45, 118, 43, 32, 45, 101, 32, 34, 67, 111, 109, 112, 20.214 + 117, 116, 101, 32, 36, 49, 45, 68, 32, 103, 114, 97, 100, 105, 101, 110, 20.215 + 116, 32, 111, 114, 105, 101, 110, 116, 97, 116, 105, 111, 110, 32, 111, 102, 20.216 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.217 + 34, 32, 45, 118, 45, 10, 32, 32, 45, 116, 32, 102, 108, 111, 97, 116, 20.218 + 32, 45, 95, 103, 114, 97, 100, 105, 101, 110, 116, 95, 111, 114, 105, 101, 20.219 + 110, 116, 97, 116, 105, 111, 110, 36, 49, 32, 45, 101, 108, 115, 101, 32, 20.220 + 45, 118, 43, 32, 45, 101, 32, 34, 73, 110, 118, 97, 108, 105, 100, 32, 20.221 + 97, 114, 103, 117, 109, 101, 110, 116, 32, 39, 36, 49, 39, 44, 32, 115, 20.222 + 104, 111, 117, 108, 100, 32, 98, 101, 32, 39, 123, 49, 44, 50, 44, 51, 20.223 + 125, 39, 46, 34, 32, 45, 113, 10, 32, 32, 45, 101, 110, 100, 105, 102, 20.224 + 32, 45, 101, 108, 115, 101, 32, 45, 118, 43, 32, 45, 101, 32, 34, 73, 20.225 + 110, 118, 97, 108, 105, 100, 32, 97, 114, 103, 117, 109, 101, 110, 116, 32, 20.226 + 39, 36, 49, 39, 44, 32, 115, 104, 111, 117, 108, 100, 32, 98, 101, 32, 20.227 + 39, 123, 49, 44, 50, 44, 51, 125, 39, 46, 34, 32, 45, 113, 10, 32, 20.228 + 32, 45, 101, 110, 100, 105, 102, 32, 45, 118, 43, 10, 10, 35, 32, 67, 20.229 + 111, 109, 112, 117, 116, 101, 32, 105, 109, 97, 103, 101, 32, 108, 97, 112, 20.230 + 108, 97, 99, 105, 97, 110, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.231 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.232 + 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 108, 97, 112, 108, 97, 99, 20.233 + 105, 97, 110, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 20.234 + 58, 32, 67, 111, 109, 112, 117, 116, 101, 32, 76, 97, 112, 108, 97, 99, 20.235 + 105, 97, 110, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.236 + 105, 109, 97, 103, 101, 46, 10, 108, 97, 112, 108, 97, 99, 105, 97, 110, 20.237 + 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 101, 20.238 + 32, 105, 109, 97, 103, 101, 32, 108, 97, 112, 108, 97, 99, 105, 97, 110, 20.239 + 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.240 + 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 20.241 + 111, 97, 116, 32, 45, 104, 101, 115, 115, 105, 97, 110, 91, 45, 49, 93, 20.242 + 32, 120, 120, 121, 121, 122, 122, 32, 45, 43, 91, 45, 51, 45, 45, 49, 20.243 + 93, 32, 45, 118, 43, 10, 10, 35, 32, 67, 111, 109, 112, 117, 116, 101, 20.244 + 32, 111, 114, 105, 101, 110, 116, 101, 100, 32, 115, 101, 99, 111, 110, 100, 20.245 + 32, 100, 101, 114, 105, 118, 97, 116, 105, 118, 101, 32, 105, 110, 32, 116, 20.246 + 104, 101, 32, 103, 114, 97, 100, 105, 101, 110, 116, 32, 100, 105, 114, 101, 20.247 + 99, 116, 105, 111, 110, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.248 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.249 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.250 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.251 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 103, 114, 20.252 + 97, 100, 105, 101, 110, 116, 95, 50, 100, 101, 114, 105, 118, 97, 116, 105, 20.253 + 118, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 20.254 + 32, 67, 111, 109, 112, 117, 116, 101, 32, 103, 114, 97, 100, 105, 101, 110, 20.255 + 116, 45, 100, 105, 114, 101, 99, 116, 101, 100, 32, 50, 110, 100, 32, 100, 20.256 + 101, 114, 105, 118, 97, 116, 105, 118, 101, 32, 111, 102, 32, 116, 104, 101, 20.257 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 103, 114, 97, 20.258 + 100, 105, 101, 110, 116, 95, 50, 100, 101, 114, 105, 118, 97, 116, 105, 118, 20.259 + 101, 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 20.260 + 101, 32, 103, 114, 97, 100, 105, 101, 110, 116, 45, 100, 105, 114, 101, 99, 20.261 + 116, 101, 100, 32, 50, 110, 100, 32, 100, 101, 114, 105, 118, 97, 116, 105, 20.262 + 118, 101, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.263 + 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 20.264 + 102, 108, 111, 97, 116, 32, 45, 45, 103, 114, 97, 100, 105, 101, 110, 116, 20.265 + 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 104, 101, 115, 115, 105, 97, 20.266 + 110, 91, 45, 52, 93, 32, 120, 120, 120, 121, 120, 122, 121, 121, 121, 122, 20.267 + 122, 122, 10, 32, 32, 45, 45, 115, 113, 114, 91, 45, 51, 93, 32, 45, 20.268 + 42, 91, 45, 49, 48, 44, 45, 49, 93, 32, 45, 45, 115, 113, 114, 91, 20.269 + 45, 50, 93, 32, 45, 42, 91, 45, 55, 44, 45, 49, 93, 32, 45, 45, 20.270 + 115, 113, 114, 91, 45, 49, 93, 32, 45, 42, 91, 45, 53, 44, 45, 49, 20.271 + 93, 10, 32, 32, 45, 42, 91, 45, 56, 44, 45, 55, 44, 45, 53, 93, 20.272 + 32, 50, 32, 45, 42, 91, 45, 56, 93, 32, 91, 45, 51, 93, 32, 45, 20.273 + 42, 91, 45, 56, 93, 32, 91, 45, 50, 93, 32, 45, 42, 91, 45, 55, 20.274 + 93, 32, 91, 45, 51, 93, 32, 45, 42, 91, 45, 55, 93, 32, 91, 45, 20.275 + 49, 93, 32, 45, 42, 91, 45, 53, 93, 32, 91, 45, 50, 93, 32, 45, 20.276 + 42, 91, 45, 53, 93, 32, 91, 45, 49, 93, 10, 32, 32, 45, 43, 91, 20.277 + 45, 57, 45, 45, 52, 93, 32, 45, 115, 113, 114, 91, 45, 51, 45, 45, 20.278 + 49, 93, 32, 45, 43, 91, 45, 51, 45, 45, 49, 93, 32, 45, 43, 91, 20.279 + 45, 49, 93, 32, 49, 101, 45, 56, 32, 45, 47, 91, 45, 50, 44, 45, 20.280 + 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 68, 105, 102, 102, 101, 114, 20.281 + 101, 110, 99, 101, 32, 111, 102, 32, 71, 97, 117, 115, 115, 105, 97, 110, 20.282 + 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.283 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.284 + 103, 109, 105, 99, 32, 100, 111, 103, 32, 58, 32, 39, 115, 105, 103, 109, 20.285 + 97, 49, 61, 50, 39, 44, 39, 115, 105, 103, 109, 97, 50, 61, 51, 39, 20.286 + 32, 58, 32, 67, 111, 109, 112, 117, 116, 101, 32, 101, 100, 103, 101, 115, 20.287 + 32, 105, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.288 + 103, 101, 32, 98, 121, 32, 117, 115, 105, 110, 103, 32, 100, 105, 102, 102, 20.289 + 101, 114, 101, 110, 99, 101, 32, 111, 102, 32, 103, 97, 117, 115, 115, 105, 20.290 + 97, 110, 45, 102, 105, 108, 116, 101, 114, 101, 100, 32, 105, 109, 97, 103, 20.291 + 101, 115, 46, 10, 100, 111, 103, 32, 58, 32, 45, 102, 108, 111, 97, 116, 20.292 + 32, 36, 123, 49, 61, 50, 125, 44, 36, 123, 50, 61, 51, 125, 10, 32, 20.293 + 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 101, 32, 101, 100, 103, 20.294 + 101, 115, 32, 105, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.295 + 109, 97, 103, 101, 32, 98, 121, 32, 100, 105, 102, 102, 101, 114, 101, 110, 20.296 + 99, 101, 32, 111, 102, 32, 103, 97, 117, 115, 115, 105, 97, 110, 45, 102, 20.297 + 105, 108, 116, 101, 114, 101, 100, 32, 105, 109, 97, 103, 101, 115, 44, 32, 20.298 + 119, 105, 116, 104, 32, 115, 116, 97, 110, 100, 97, 114, 100, 32, 100, 101, 20.299 + 118, 105, 97, 116, 105, 111, 110, 115, 32, 36, 49, 32, 97, 110, 100, 32, 20.300 + 36, 50, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 20.301 + 111, 97, 116, 32, 45, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 36, 20.302 + 49, 32, 45, 98, 108, 117, 114, 91, 45, 50, 93, 32, 36, 50, 32, 45, 20.303 + 45, 91, 45, 49, 44, 45, 50, 93, 32, 45, 110, 111, 114, 109, 91, 45, 20.304 + 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 69, 115, 116, 105, 109, 97, 20.305 + 116, 101, 32, 105, 115, 111, 112, 104, 111, 116, 101, 32, 99, 117, 114, 118, 20.306 + 97, 116, 117, 114, 101, 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.307 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.308 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 99, 20.309 + 117, 114, 118, 97, 116, 117, 114, 101, 32, 58, 32, 40, 110, 111, 32, 97, 20.310 + 114, 103, 115, 41, 32, 58, 32, 69, 115, 116, 105, 109, 97, 116, 101, 32, 20.311 + 105, 115, 111, 112, 104, 111, 116, 101, 32, 99, 117, 114, 118, 97, 116, 117, 20.312 + 114, 101, 115, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.313 + 105, 109, 97, 103, 101, 46, 10, 99, 117, 114, 118, 97, 116, 117, 114, 101, 20.314 + 32, 58, 10, 32, 32, 45, 101, 32, 34, 69, 115, 116, 105, 109, 97, 116, 20.315 + 101, 32, 105, 115, 111, 112, 104, 111, 116, 101, 32, 99, 117, 114, 118, 97, 20.316 + 116, 117, 114, 101, 115, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 20.317 + 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 20.318 + 91, 45, 49, 93, 120, 50, 32, 45, 108, 97, 112, 108, 97, 99, 105, 97, 20.319 + 110, 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 50, 32, 45, 103, 114, 20.320 + 97, 100, 105, 101, 110, 116, 95, 50, 100, 101, 114, 105, 118, 97, 116, 105, 20.321 + 118, 101, 32, 45, 45, 91, 45, 50, 44, 45, 49, 93, 10, 32, 32, 45, 20.322 + 109, 118, 91, 45, 49, 93, 32, 45, 50, 32, 45, 103, 114, 97, 100, 105, 20.323 + 101, 110, 116, 95, 110, 111, 114, 109, 32, 45, 43, 91, 45, 49, 93, 32, 20.324 + 49, 101, 45, 56, 32, 45, 47, 91, 45, 50, 44, 45, 49, 93, 32, 45, 20.325 + 118, 43, 10, 10, 35, 32, 67, 111, 109, 112, 108, 101, 120, 60, 45, 62, 20.326 + 112, 111, 108, 97, 114, 32, 116, 114, 97, 110, 115, 102, 111, 114, 109, 32, 20.327 + 40, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 20.328 + 97, 103, 101, 115, 32, 103, 105, 118, 101, 32, 116, 104, 101, 32, 114, 101, 20.329 + 97, 108, 32, 97, 110, 100, 32, 105, 109, 97, 103, 105, 110, 97, 114, 121, 20.330 + 32, 112, 97, 114, 116, 115, 41, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.331 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.332 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.333 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.334 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.335 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.336 + 103, 109, 105, 99, 32, 99, 111, 109, 112, 108, 101, 120, 50, 112, 111, 108, 20.337 + 97, 114, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 20.338 + 32, 67, 111, 109, 112, 117, 116, 101, 32, 99, 111, 109, 112, 108, 101, 120, 20.339 + 45, 62, 112, 111, 108, 97, 114, 32, 116, 114, 97, 110, 115, 102, 111, 114, 20.340 + 109, 32, 40, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.341 + 101, 115, 32, 97, 114, 101, 32, 114, 101, 97, 108, 32, 97, 110, 100, 32, 20.342 + 105, 109, 97, 103, 105, 110, 97, 114, 121, 32, 112, 97, 114, 116, 115, 41, 20.343 + 46, 10, 99, 111, 109, 112, 108, 101, 120, 50, 112, 111, 108, 97, 114, 32, 20.344 + 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 101, 32, 20.345 + 99, 111, 109, 112, 108, 101, 120, 32, 116, 111, 32, 112, 111, 108, 97, 114, 20.346 + 32, 116, 114, 97, 110, 115, 102, 111, 114, 109, 46, 34, 10, 32, 32, 45, 20.347 + 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 43, 91, 45, 20.348 + 50, 93, 32, 49, 101, 45, 56, 32, 45, 45, 47, 91, 45, 49, 93, 32, 20.349 + 91, 45, 50, 93, 32, 45, 97, 116, 97, 110, 91, 45, 49, 93, 32, 45, 20.350 + 115, 113, 114, 91, 45, 51, 44, 45, 50, 93, 32, 45, 43, 91, 45, 51, 20.351 + 44, 45, 50, 93, 32, 45, 115, 113, 114, 116, 91, 45, 50, 93, 32, 45, 20.352 + 118, 43, 10, 10, 35, 64, 103, 109, 105, 99, 32, 112, 111, 108, 97, 114, 20.353 + 50, 99, 111, 109, 112, 108, 101, 120, 32, 58, 32, 40, 110, 111, 32, 97, 20.354 + 114, 103, 115, 41, 32, 58, 32, 67, 111, 109, 112, 117, 116, 101, 32, 112, 20.355 + 111, 108, 97, 114, 45, 62, 99, 111, 109, 112, 108, 101, 120, 32, 116, 114, 20.356 + 97, 110, 115, 102, 111, 114, 109, 32, 40, 116, 119, 111, 32, 108, 97, 115, 20.357 + 116, 32, 105, 109, 97, 103, 101, 115, 32, 97, 114, 101, 32, 114, 101, 97, 20.358 + 108, 32, 97, 110, 100, 32, 105, 109, 97, 103, 105, 110, 97, 114, 121, 32, 20.359 + 112, 97, 114, 116, 115, 41, 46, 10, 112, 111, 108, 97, 114, 50, 99, 111, 20.360 + 109, 112, 108, 101, 120, 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 20.361 + 109, 112, 117, 116, 101, 32, 112, 111, 108, 97, 114, 32, 116, 111, 32, 99, 20.362 + 111, 109, 112, 108, 101, 120, 32, 116, 114, 97, 110, 115, 102, 111, 114, 109, 20.363 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 20.364 + 116, 32, 91, 45, 49, 93, 32, 45, 99, 111, 115, 91, 45, 50, 93, 32, 20.365 + 45, 115, 105, 110, 91, 45, 49, 93, 32, 45, 42, 91, 45, 49, 93, 32, 20.366 + 91, 45, 51, 93, 32, 45, 42, 91, 45, 51, 44, 45, 50, 93, 32, 45, 20.367 + 45, 91, 45, 50, 93, 32, 49, 101, 45, 56, 32, 45, 118, 43, 10, 10, 20.368 + 35, 32, 70, 111, 117, 114, 105, 101, 114, 32, 116, 114, 97, 110, 115, 102, 20.369 + 111, 114, 109, 32, 118, 105, 101, 119, 101, 114, 32, 119, 105, 116, 104, 32, 20.370 + 99, 101, 110, 116, 101, 114, 101, 100, 32, 108, 111, 103, 45, 109, 111, 100, 20.371 + 117, 108, 101, 32, 97, 110, 100, 32, 99, 101, 110, 116, 101, 114, 101, 100, 20.372 + 32, 97, 114, 103, 117, 109, 101, 110, 116, 46, 10, 35, 45, 45, 45, 45, 20.373 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.374 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.375 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.376 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.377 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 105, 115, 20.378 + 112, 108, 97, 121, 95, 102, 102, 116, 32, 58, 32, 40, 110, 111, 32, 97, 20.379 + 114, 103, 115, 41, 32, 58, 32, 68, 105, 115, 112, 108, 97, 121, 32, 70, 20.380 + 111, 117, 114, 105, 101, 114, 32, 116, 114, 97, 110, 115, 102, 111, 114, 109, 20.381 + 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.382 + 103, 101, 32, 119, 105, 116, 104, 32, 99, 101, 110, 116, 101, 114, 101, 100, 20.383 + 32, 108, 111, 103, 45, 109, 111, 100, 117, 108, 101, 32, 97, 110, 100, 32, 20.384 + 97, 114, 103, 117, 109, 101, 110, 116, 32, 40, 101, 113, 46, 32, 116, 111, 20.385 + 32, 39, 45, 100, 102, 102, 116, 39, 41, 46, 10, 100, 105, 115, 112, 108, 20.386 + 97, 121, 95, 102, 102, 116, 32, 58, 10, 32, 32, 45, 101, 32, 34, 68, 20.387 + 105, 115, 112, 108, 97, 121, 32, 70, 111, 117, 114, 105, 101, 114, 32, 116, 20.388 + 114, 97, 110, 115, 102, 111, 114, 109, 32, 111, 102, 32, 116, 104, 101, 32, 20.389 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 20.390 + 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 102, 102, 116, 20.391 + 91, 45, 49, 93, 32, 45, 99, 111, 109, 112, 108, 101, 120, 50, 112, 111, 20.392 + 108, 97, 114, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 20.393 + 50, 44, 45, 49, 93, 32, 53, 48, 37, 44, 53, 48, 37, 44, 53, 48, 20.394 + 37, 44, 48, 44, 50, 32, 45, 108, 111, 103, 91, 45, 50, 93, 32, 45, 20.395 + 110, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 10, 100, 102, 102, 116, 20.396 + 32, 58, 10, 32, 32, 45, 100, 105, 115, 112, 108, 97, 121, 95, 102, 102, 20.397 + 116, 10, 10, 35, 32, 82, 101, 110, 100, 101, 114, 32, 97, 32, 82, 71, 20.398 + 66, 65, 32, 105, 109, 97, 103, 101, 32, 111, 118, 101, 114, 32, 97, 32, 20.399 + 117, 115, 101, 114, 45, 100, 101, 102, 105, 110, 101, 100, 32, 98, 97, 99, 20.400 + 107, 103, 114, 111, 117, 110, 100, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.401 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.402 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.403 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 20.404 + 64, 103, 109, 105, 99, 32, 99, 111, 109, 112, 111, 115, 101, 95, 114, 103, 20.405 + 98, 97, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 20.406 + 32, 82, 101, 110, 100, 101, 114, 32, 97, 32, 82, 71, 66, 65, 32, 105, 20.407 + 109, 97, 103, 101, 32, 40, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.408 + 41, 32, 111, 118, 101, 114, 32, 97, 32, 82, 71, 66, 32, 98, 97, 99, 20.409 + 107, 103, 114, 111, 117, 110, 100, 32, 40, 112, 101, 110, 117, 108, 116, 105, 20.410 + 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 41, 46, 10, 99, 111, 109, 20.411 + 112, 111, 115, 101, 95, 114, 103, 98, 97, 32, 58, 10, 32, 32, 45, 101, 20.412 + 32, 34, 67, 111, 109, 112, 111, 115, 101, 32, 82, 71, 66, 65, 32, 105, 20.413 + 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 82, 71, 66, 32, 98, 97, 20.414 + 99, 107, 103, 114, 111, 117, 110, 100, 46, 34, 10, 32, 32, 45, 118, 45, 20.415 + 32, 45, 45, 91, 45, 49, 93, 32, 50, 53, 53, 32, 45, 114, 91, 45, 20.416 + 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 52, 20.417 + 120, 48, 32, 45, 43, 91, 45, 49, 93, 32, 50, 53, 53, 32, 45, 114, 20.418 + 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 91, 20.419 + 45, 50, 93, 44, 52, 44, 48, 10, 32, 32, 45, 115, 91, 45, 49, 93, 20.420 + 32, 118, 32, 45, 97, 91, 45, 52, 45, 45, 50, 93, 32, 118, 32, 45, 20.421 + 47, 91, 45, 49, 93, 32, 50, 53, 53, 32, 91, 45, 49, 93, 32, 45, 20.422 + 110, 101, 103, 97, 116, 105, 118, 101, 32, 45, 114, 91, 45, 52, 45, 45, 20.423 + 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 51, 20.424 + 10, 32, 32, 45, 42, 91, 45, 52, 44, 45, 49, 93, 32, 45, 42, 91, 20.425 + 45, 50, 44, 45, 49, 93, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 20.426 + 32, 45, 118, 43, 10, 10, 35, 32, 82, 101, 110, 100, 101, 114, 32, 97, 20.427 + 32, 82, 71, 66, 65, 32, 105, 109, 97, 103, 101, 32, 111, 118, 101, 114, 20.428 + 32, 97, 32, 115, 121, 110, 116, 104, 101, 116, 105, 99, 32, 99, 104, 101, 20.429 + 99, 107, 101, 114, 98, 111, 97, 114, 100, 32, 98, 97, 99, 107, 103, 114, 20.430 + 111, 117, 110, 100, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.431 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.432 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.433 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.434 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 105, 115, 20.435 + 112, 108, 97, 121, 95, 114, 103, 98, 97, 32, 58, 32, 40, 110, 111, 32, 20.436 + 97, 114, 103, 115, 41, 32, 58, 32, 82, 101, 110, 100, 101, 114, 32, 97, 20.437 + 32, 82, 71, 66, 65, 32, 105, 109, 97, 103, 101, 32, 40, 108, 97, 115, 20.438 + 116, 32, 105, 109, 97, 103, 101, 41, 32, 111, 118, 101, 114, 32, 97, 32, 20.439 + 115, 121, 110, 116, 104, 101, 116, 105, 99, 32, 98, 97, 99, 107, 103, 114, 20.440 + 111, 117, 110, 100, 32, 40, 101, 113, 46, 32, 116, 111, 32, 39, 45, 100, 20.441 + 114, 103, 98, 97, 39, 41, 46, 10, 100, 105, 115, 112, 108, 97, 121, 95, 20.442 + 114, 103, 98, 97, 32, 58, 10, 32, 32, 45, 101, 32, 34, 82, 101, 110, 20.443 + 100, 101, 114, 32, 82, 71, 66, 65, 32, 105, 109, 97, 103, 101, 32, 111, 20.444 + 118, 101, 114, 32, 115, 121, 110, 116, 104, 101, 116, 105, 99, 32, 98, 97, 20.445 + 99, 107, 103, 114, 111, 117, 110, 100, 46, 34, 10, 32, 32, 45, 118, 45, 20.446 + 32, 50, 120, 50, 32, 45, 102, 91, 45, 49, 93, 32, 49, 54, 48, 44, 20.447 + 49, 50, 56, 44, 49, 50, 56, 44, 49, 54, 48, 32, 45, 109, 118, 91, 20.448 + 45, 49, 93, 32, 45, 50, 32, 45, 114, 91, 45, 50, 93, 32, 49, 54, 20.449 + 120, 49, 54, 32, 45, 114, 91, 45, 50, 93, 32, 91, 45, 49, 93, 120, 20.450 + 91, 45, 49, 93, 120, 49, 120, 51, 44, 48, 44, 50, 32, 45, 99, 111, 20.451 + 109, 112, 111, 115, 101, 95, 114, 103, 98, 97, 32, 45, 118, 43, 10, 100, 20.452 + 114, 103, 98, 97, 32, 58, 10, 32, 32, 45, 100, 105, 115, 112, 108, 97, 20.453 + 121, 95, 114, 103, 98, 97, 10, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.454 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.455 + 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 32, 71, 101, 111, 109, 101, 20.456 + 116, 114, 105, 99, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 10, 35, 20.457 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.458 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 20.459 + 32, 73, 109, 97, 103, 101, 32, 97, 114, 114, 97, 121, 46, 10, 35, 45, 20.460 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 20.461 + 109, 105, 99, 32, 97, 114, 114, 97, 121, 32, 58, 32, 39, 77, 61, 51, 20.462 + 44, 78, 61, 77, 39, 32, 58, 32, 67, 114, 101, 97, 116, 101, 32, 97, 20.463 + 32, 77, 120, 78, 32, 97, 114, 114, 97, 121, 32, 102, 114, 111, 109, 32, 20.464 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 20.465 + 97, 114, 114, 97, 121, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 20.466 + 61, 51, 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 32, 32, 45, 101, 20.467 + 32, 34, 67, 114, 101, 97, 116, 101, 32, 97, 32, 36, 49, 120, 36, 50, 20.468 + 32, 97, 114, 114, 97, 121, 32, 102, 114, 111, 109, 32, 108, 97, 115, 116, 20.469 + 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 91, 20.470 + 45, 49, 93, 120, 36, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 20.471 + 97, 91, 45, 36, 49, 45, 45, 49, 93, 32, 120, 32, 91, 45, 49, 93, 20.472 + 120, 36, 50, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 97, 91, 45, 20.473 + 36, 50, 45, 45, 49, 93, 32, 121, 32, 45, 118, 43, 10, 10, 35, 32, 20.474 + 84, 105, 108, 101, 100, 32, 97, 114, 114, 97, 121, 46, 10, 35, 45, 45, 20.475 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 20.476 + 105, 99, 32, 97, 114, 114, 97, 121, 95, 116, 105, 108, 101, 32, 58, 32, 20.477 + 39, 77, 61, 51, 44, 78, 61, 77, 39, 32, 58, 32, 67, 114, 101, 97, 20.478 + 116, 101, 32, 97, 32, 77, 120, 78, 32, 102, 97, 100, 101, 45, 116, 105, 20.479 + 108, 101, 100, 32, 97, 114, 114, 97, 121, 32, 102, 114, 111, 109, 32, 116, 20.480 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 97, 20.481 + 114, 114, 97, 121, 95, 116, 105, 108, 101, 32, 58, 32, 45, 105, 110, 116, 20.482 + 32, 36, 123, 49, 61, 51, 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 20.483 + 32, 32, 45, 101, 32, 34, 67, 114, 101, 97, 116, 101, 32, 97, 32, 36, 20.484 + 49, 120, 36, 50, 32, 102, 97, 100, 101, 45, 116, 105, 108, 101, 100, 32, 20.485 + 97, 114, 114, 97, 121, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 108, 20.486 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 20.487 + 45, 32, 45, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 20.488 + 93, 32, 53, 48, 37, 120, 53, 48, 37, 120, 49, 120, 49, 44, 50, 32, 20.489 + 45, 109, 118, 91, 45, 49, 93, 32, 45, 50, 32, 45, 102, 97, 100, 101, 20.490 + 95, 100, 105, 97, 109, 111, 110, 100, 32, 56, 48, 44, 57, 48, 32, 45, 20.491 + 97, 114, 114, 97, 121, 32, 36, 49, 44, 36, 50, 32, 45, 118, 43, 10, 20.492 + 10, 35, 32, 77, 105, 114, 114, 111, 114, 45, 116, 105, 108, 101, 100, 32, 20.493 + 105, 109, 97, 103, 101, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.494 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 20.495 + 109, 105, 99, 32, 109, 105, 114, 114, 111, 114, 95, 116, 105, 108, 101, 32, 20.496 + 58, 32, 39, 78, 61, 50, 39, 32, 58, 32, 67, 114, 101, 97, 116, 101, 20.497 + 32, 97, 32, 78, 120, 78, 32, 109, 105, 114, 114, 111, 114, 45, 116, 105, 20.498 + 108, 101, 100, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 20.499 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 20.500 + 109, 105, 114, 114, 111, 114, 95, 116, 105, 108, 101, 32, 58, 10, 32, 32, 20.501 + 91, 45, 49, 93, 120, 51, 32, 45, 109, 105, 114, 114, 111, 114, 91, 45, 20.502 + 51, 44, 45, 49, 93, 32, 120, 32, 45, 109, 105, 114, 114, 111, 114, 91, 20.503 + 45, 50, 44, 45, 49, 93, 32, 121, 32, 45, 97, 91, 45, 52, 44, 45, 20.504 + 51, 93, 32, 120, 32, 45, 97, 91, 45, 50, 44, 45, 49, 93, 32, 120, 20.505 + 32, 45, 97, 91, 45, 50, 44, 45, 49, 93, 32, 121, 10, 109, 105, 114, 20.506 + 114, 111, 114, 95, 116, 105, 108, 101, 32, 58, 32, 45, 105, 110, 116, 32, 20.507 + 36, 123, 49, 61, 50, 125, 10, 32, 32, 45, 101, 32, 34, 67, 114, 101, 20.508 + 97, 116, 101, 32, 97, 32, 36, 49, 120, 32, 109, 105, 114, 114, 111, 114, 20.509 + 45, 116, 105, 108, 101, 100, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 20.510 + 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.511 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 105, 91, 48, 93, 32, 40, 20.512 + 36, 49, 41, 32, 45, 45, 91, 48, 93, 32, 49, 32, 45, 114, 101, 112, 20.513 + 101, 97, 116, 32, 64, 48, 32, 45, 95, 109, 105, 114, 114, 111, 114, 95, 20.514 + 116, 105, 108, 101, 32, 45, 100, 111, 110, 101, 32, 45, 114, 109, 91, 48, 20.515 + 93, 32, 45, 118, 43, 10, 10, 35, 32, 84, 97, 113, 117, 105, 110, 32, 20.516 + 112, 117, 122, 122, 108, 101, 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.517 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 20.518 + 99, 32, 116, 97, 113, 117, 105, 110, 32, 58, 32, 39, 77, 61, 52, 44, 20.519 + 78, 61, 77, 39, 32, 58, 32, 67, 114, 101, 97, 116, 101, 32, 97, 32, 20.520 + 77, 120, 78, 32, 116, 97, 113, 117, 105, 110, 32, 112, 117, 122, 122, 108, 20.521 + 101, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.522 + 105, 109, 97, 103, 101, 46, 10, 95, 116, 97, 113, 117, 105, 110, 32, 58, 20.523 + 10, 32, 32, 45, 105, 32, 64, 48, 32, 45, 114, 97, 110, 100, 91, 45, 20.524 + 49, 93, 32, 64, 48, 44, 49, 32, 45, 42, 91, 45, 49, 93, 32, 45, 20.525 + 49, 32, 45, 114, 111, 117, 110, 100, 91, 45, 49, 93, 32, 49, 32, 45, 20.526 + 45, 91, 45, 49, 93, 32, 49, 32, 45, 114, 101, 118, 101, 114, 115, 101, 20.527 + 91, 64, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 10, 116, 97, 20.528 + 113, 117, 105, 110, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 20.529 + 52, 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 32, 45, 101, 32, 34, 20.530 + 67, 114, 101, 97, 116, 101, 32, 36, 49, 120, 36, 50, 32, 116, 97, 113, 20.531 + 117, 105, 110, 32, 112, 117, 122, 122, 108, 101, 32, 102, 114, 111, 109, 32, 20.532 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 20.533 + 10, 32, 45, 118, 45, 32, 45, 105, 91, 48, 93, 32, 40, 36, 49, 41, 20.534 + 32, 45, 42, 91, 48, 93, 32, 36, 50, 32, 45, 115, 112, 108, 105, 116, 20.535 + 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 32, 45, 114, 101, 112, 20.536 + 101, 97, 116, 32, 49, 48, 32, 45, 95, 116, 97, 113, 117, 105, 110, 32, 20.537 + 45, 100, 111, 110, 101, 32, 45, 114, 109, 91, 48, 93, 32, 45, 97, 112, 20.538 + 112, 101, 110, 100, 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 32, 20.539 + 45, 118, 43, 10, 10, 35, 32, 73, 109, 97, 103, 101, 32, 103, 114, 105, 20.540 + 100, 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.541 + 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 103, 114, 105, 100, 32, 58, 20.542 + 32, 39, 77, 61, 49, 48, 44, 78, 61, 77, 39, 32, 58, 32, 67, 114, 20.543 + 101, 97, 116, 101, 32, 97, 32, 77, 120, 78, 32, 103, 114, 105, 100, 32, 20.544 + 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 101, 32, 108, 20.545 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 103, 114, 105, 100, 32, 20.546 + 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 49, 48, 125, 44, 36, 20.547 + 123, 50, 61, 36, 49, 125, 10, 32, 32, 45, 101, 32, 34, 67, 114, 101, 20.548 + 97, 116, 101, 32, 36, 49, 120, 36, 50, 32, 103, 114, 105, 100, 32, 118, 20.549 + 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 20.550 + 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 20.551 + 32, 45, 105, 91, 45, 50, 93, 32, 36, 49, 120, 36, 50, 32, 45, 102, 20.552 + 91, 45, 50, 93, 32, 49, 32, 45, 45, 116, 114, 97, 110, 115, 108, 97, 20.553 + 116, 101, 91, 45, 50, 93, 32, 45, 49, 44, 45, 49, 32, 45, 45, 91, 20.554 + 45, 51, 44, 45, 49, 93, 32, 45, 42, 91, 45, 50, 93, 32, 45, 49, 20.555 + 10, 32, 32, 45, 43, 91, 45, 50, 93, 32, 49, 32, 45, 45, 100, 105, 20.556 + 109, 101, 110, 115, 105, 111, 110, 115, 91, 45, 49, 93, 32, 45, 115, 91, 20.557 + 45, 49, 93, 32, 121, 32, 45, 47, 91, 45, 52, 93, 32, 36, 49, 32, 20.558 + 45, 47, 91, 45, 51, 93, 32, 36, 50, 32, 40, 50, 41, 32, 45, 97, 20.559 + 91, 45, 53, 45, 45, 49, 93, 32, 121, 10, 32, 32, 45, 114, 111, 117, 20.560 + 110, 100, 91, 45, 49, 93, 32, 49, 44, 45, 49, 32, 45, 114, 91, 45, 20.561 + 50, 93, 32, 64, 45, 49, 32, 45, 115, 91, 45, 49, 93, 32, 121, 32, 20.562 + 45, 114, 109, 91, 45, 49, 93, 32, 45, 42, 91, 45, 52, 93, 32, 36, 20.563 + 49, 32, 45, 42, 91, 45, 51, 93, 32, 36, 50, 32, 45, 97, 91, 45, 20.564 + 52, 45, 45, 49, 93, 32, 121, 32, 45, 114, 91, 45, 50, 93, 32, 64, 20.565 + 45, 49, 10, 32, 32, 40, 48, 59, 50, 41, 32, 45, 97, 91, 45, 50, 20.566 + 44, 45, 49, 93, 32, 121, 32, 45, 114, 91, 45, 51, 93, 32, 64, 45, 20.567 + 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 114, 91, 45, 49, 93, 20.568 + 32, 91, 45, 50, 93, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 20.569 + 45, 118, 43, 10, 10, 35, 32, 73, 110, 115, 101, 114, 116, 32, 99, 111, 20.570 + 108, 111, 114, 101, 100, 32, 102, 114, 97, 109, 101, 115, 32, 97, 114, 111, 20.571 + 117, 110, 100, 32, 105, 109, 97, 103, 101, 46, 10, 35, 45, 45, 45, 45, 20.572 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.573 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.574 + 10, 35, 64, 103, 109, 105, 99, 32, 102, 114, 97, 109, 101, 32, 58, 32, 20.575 + 39, 87, 61, 50, 48, 44, 72, 61, 87, 44, 82, 61, 50, 53, 53, 44, 20.576 + 71, 61, 50, 53, 53, 44, 66, 61, 50, 53, 53, 39, 32, 58, 32, 73, 20.577 + 110, 115, 101, 114, 116, 32, 97, 32, 87, 120, 72, 32, 82, 71, 66, 45, 20.578 + 99, 111, 108, 111, 114, 101, 100, 32, 102, 114, 97, 109, 101, 32, 97, 114, 20.579 + 111, 117, 110, 100, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.580 + 97, 103, 101, 46, 10, 95, 102, 114, 97, 109, 101, 120, 32, 58, 10, 32, 20.581 + 32, 45, 105, 32, 49, 44, 49, 44, 49, 44, 51, 32, 45, 102, 91, 45, 20.582 + 49, 93, 32, 36, 50, 44, 36, 51, 44, 36, 52, 32, 45, 114, 91, 45, 20.583 + 49, 93, 32, 36, 49, 44, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 20.584 + 91, 45, 50, 93, 44, 49, 32, 45, 105, 91, 45, 51, 93, 32, 91, 45, 20.585 + 49, 93, 32, 45, 97, 91, 45, 51, 45, 45, 49, 93, 32, 120, 10, 95, 20.586 + 102, 114, 97, 109, 101, 121, 32, 58, 10, 32, 32, 45, 105, 32, 49, 44, 20.587 + 49, 44, 49, 44, 51, 32, 45, 102, 91, 45, 49, 93, 32, 36, 50, 44, 20.588 + 36, 51, 44, 36, 52, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 20.589 + 93, 44, 36, 49, 44, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 20.590 + 32, 45, 105, 91, 45, 51, 93, 32, 91, 45, 49, 93, 32, 45, 97, 91, 20.591 + 45, 51, 45, 45, 49, 93, 32, 121, 10, 102, 114, 97, 109, 101, 32, 58, 20.592 + 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 50, 48, 125, 44, 36, 123, 20.593 + 50, 61, 36, 49, 125, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 51, 20.594 + 61, 50, 53, 53, 125, 44, 36, 123, 52, 61, 36, 51, 125, 44, 36, 123, 20.595 + 53, 61, 36, 52, 125, 10, 32, 32, 45, 101, 32, 34, 73, 110, 115, 101, 20.596 + 114, 116, 32, 97, 32, 36, 49, 120, 36, 50, 32, 102, 114, 97, 109, 101, 20.597 + 32, 119, 105, 116, 104, 32, 82, 71, 66, 32, 99, 111, 108, 111, 114, 32, 20.598 + 40, 36, 51, 44, 36, 52, 44, 36, 53, 41, 32, 105, 110, 32, 116, 104, 20.599 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 20.600 + 32, 45, 118, 45, 32, 45, 95, 102, 114, 97, 109, 101, 120, 32, 36, 49, 20.601 + 44, 36, 51, 44, 36, 52, 44, 36, 53, 32, 45, 95, 102, 114, 97, 109, 20.602 + 101, 121, 32, 36, 50, 44, 36, 51, 44, 36, 52, 44, 36, 53, 32, 45, 20.603 + 118, 43, 10, 10, 35, 32, 68, 114, 97, 119, 32, 97, 32, 99, 111, 108, 20.604 + 111, 114, 101, 100, 32, 102, 117, 122, 122, 121, 32, 102, 114, 97, 109, 101, 20.605 + 32, 97, 114, 111, 117, 110, 100, 32, 105, 109, 97, 103, 101, 46, 10, 35, 20.606 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.607 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.608 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.609 + 32, 102, 114, 97, 109, 101, 95, 102, 117, 122, 122, 121, 32, 58, 32, 39, 20.610 + 87, 61, 50, 48, 44, 72, 61, 87, 44, 102, 117, 122, 122, 121, 110, 101, 20.611 + 115, 115, 61, 51, 44, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 61, 20.612 + 51, 44, 82, 61, 50, 53, 53, 44, 71, 61, 50, 53, 53, 44, 66, 61, 20.613 + 50, 53, 53, 39, 32, 58, 32, 68, 114, 97, 119, 32, 97, 32, 87, 120, 20.614 + 72, 32, 82, 71, 66, 45, 99, 111, 108, 111, 114, 101, 100, 32, 102, 117, 20.615 + 122, 122, 121, 32, 102, 114, 97, 109, 101, 32, 97, 114, 111, 117, 110, 100, 20.616 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.617 + 10, 102, 114, 97, 109, 101, 95, 102, 117, 122, 122, 121, 32, 58, 32, 45, 20.618 + 105, 110, 116, 32, 36, 123, 49, 61, 50, 48, 125, 44, 36, 123, 50, 61, 20.619 + 36, 49, 125, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 51, 61, 53, 20.620 + 125, 44, 36, 123, 52, 61, 49, 125, 44, 36, 123, 53, 61, 50, 53, 53, 20.621 + 125, 44, 36, 123, 54, 61, 36, 53, 125, 44, 36, 123, 55, 61, 36, 54, 20.622 + 125, 10, 32, 32, 45, 101, 32, 34, 68, 114, 97, 119, 32, 97, 32, 36, 20.623 + 49, 120, 36, 50, 32, 102, 117, 122, 122, 121, 32, 102, 114, 97, 109, 101, 20.624 + 32, 119, 105, 116, 104, 32, 82, 71, 66, 32, 99, 111, 108, 111, 114, 32, 20.625 + 40, 36, 53, 44, 36, 54, 44, 36, 55, 41, 44, 32, 102, 117, 122, 122, 20.626 + 121, 110, 101, 115, 115, 32, 36, 51, 32, 97, 110, 100, 32, 115, 109, 111, 20.627 + 111, 116, 104, 110, 101, 115, 115, 32, 36, 52, 32, 105, 110, 32, 116, 104, 20.628 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 20.629 + 32, 45, 118, 45, 32, 45, 105, 91, 48, 93, 32, 40, 36, 49, 59, 36, 20.630 + 50, 41, 32, 45, 42, 91, 48, 93, 32, 50, 32, 49, 120, 49, 120, 49, 20.631 + 120, 51, 32, 45, 102, 91, 45, 49, 93, 32, 36, 53, 44, 36, 54, 44, 20.632 + 36, 55, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 49, 20.633 + 48, 48, 37, 120, 49, 48, 48, 37, 10, 32, 32, 45, 112, 111, 108, 121, 20.634 + 103, 111, 110, 91, 45, 49, 93, 32, 52, 44, 48, 44, 48, 44, 49, 48, 20.635 + 48, 37, 44, 48, 44, 49, 48, 48, 37, 44, 64, 123, 48, 44, 49, 125, 20.636 + 44, 48, 44, 64, 123, 48, 44, 49, 125, 44, 49, 44, 49, 10, 32, 32, 20.637 + 45, 112, 111, 108, 121, 103, 111, 110, 91, 45, 49, 93, 32, 52, 44, 48, 20.638 + 44, 48, 44, 64, 123, 48, 44, 48, 125, 44, 48, 44, 64, 123, 48, 44, 20.639 + 48, 125, 44, 49, 48, 48, 37, 44, 48, 44, 49, 48, 48, 37, 44, 49, 20.640 + 44, 49, 10, 32, 32, 45, 114, 109, 91, 48, 93, 32, 45, 116, 114, 97, 20.641 + 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 32, 36, 49, 44, 36, 50, 20.642 + 44, 48, 44, 48, 44, 50, 32, 45, 115, 112, 114, 101, 97, 100, 32, 36, 20.643 + 51, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 36, 52, 32, 45, 20.644 + 95, 102, 97, 100, 101, 32, 53, 48, 44, 56, 48, 32, 45, 118, 43, 10, 20.645 + 10, 35, 32, 80, 111, 108, 97, 114, 111, 105, 100, 32, 101, 102, 102, 101, 20.646 + 99, 116, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.647 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 112, 111, 20.648 + 108, 97, 114, 111, 105, 100, 32, 58, 32, 39, 87, 49, 61, 51, 48, 44, 20.649 + 87, 50, 61, 49, 50, 48, 44, 87, 51, 61, 52, 48, 39, 32, 58, 32, 20.650 + 67, 114, 101, 97, 116, 101, 32, 112, 111, 108, 97, 114, 111, 105, 100, 32, 20.651 + 102, 114, 111, 109, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 20.652 + 32, 119, 105, 116, 104, 32, 115, 112, 101, 99, 105, 102, 105, 101, 100, 32, 20.653 + 98, 111, 114, 100, 101, 114, 32, 115, 105, 122, 101, 115, 46, 10, 112, 111, 20.654 + 108, 97, 114, 111, 105, 100, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 20.655 + 49, 61, 51, 48, 125, 44, 36, 123, 50, 61, 49, 50, 48, 125, 44, 36, 20.656 + 123, 51, 61, 52, 48, 125, 10, 32, 32, 45, 101, 32, 34, 67, 114, 101, 20.657 + 97, 116, 101, 32, 112, 111, 108, 97, 114, 111, 105, 100, 32, 101, 102, 102, 20.658 + 101, 99, 116, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 108, 97, 115, 20.659 + 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 98, 111, 114, 20.660 + 100, 101, 114, 115, 32, 36, 49, 44, 32, 36, 50, 32, 97, 110, 100, 32, 20.661 + 36, 51, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 102, 114, 97, 109, 20.662 + 101, 32, 36, 49, 44, 36, 49, 44, 50, 53, 53, 44, 50, 53, 53, 44, 20.663 + 50, 53, 53, 32, 91, 45, 49, 93, 44, 36, 50, 44, 49, 44, 51, 32, 20.664 + 45, 102, 91, 45, 49, 93, 32, 50, 53, 53, 32, 45, 97, 91, 45, 50, 20.665 + 44, 45, 49, 93, 32, 121, 10, 32, 32, 45, 45, 100, 105, 109, 101, 110, 20.666 + 115, 105, 111, 110, 115, 91, 45, 49, 93, 32, 45, 43, 91, 45, 49, 93, 20.667 + 32, 36, 51, 32, 45, 43, 91, 45, 49, 93, 32, 36, 51, 32, 45, 45, 20.668 + 102, 91, 45, 50, 93, 32, 45, 49, 32, 45, 114, 91, 45, 49, 93, 32, 20.669 + 64, 123, 45, 50, 44, 48, 45, 49, 125, 44, 49, 44, 51, 44, 48, 44, 20.670 + 48, 44, 49, 32, 45, 114, 109, 91, 45, 50, 93, 10, 32, 32, 45, 98, 20.671 + 108, 117, 114, 91, 45, 49, 93, 32, 53, 32, 45, 114, 91, 45, 50, 93, 20.672 + 32, 91, 45, 49, 93, 44, 48, 44, 48, 44, 49, 32, 45, 110, 91, 45, 20.673 + 49, 93, 32, 48, 44, 49, 56, 48, 32, 45, 111, 114, 91, 45, 50, 44, 20.674 + 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 68, 114, 111, 112, 32, 20.675 + 115, 104, 97, 100, 111, 119, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.676 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 114, 20.677 + 111, 112, 95, 115, 104, 97, 100, 111, 119, 32, 58, 32, 39, 40, 110, 111, 20.678 + 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 100, 100, 32, 97, 32, 100, 20.679 + 114, 111, 112, 32, 115, 104, 97, 100, 111, 119, 32, 98, 101, 104, 105, 110, 20.680 + 100, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.681 + 46, 10, 100, 114, 111, 112, 95, 115, 104, 97, 100, 111, 119, 32, 58, 10, 20.682 + 32, 32, 45, 101, 32, 34, 65, 100, 100, 32, 97, 32, 100, 114, 111, 112, 20.683 + 32, 115, 104, 97, 100, 111, 119, 32, 98, 101, 104, 105, 110, 100, 32, 116, 20.684 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 20.685 + 32, 32, 45, 118, 45, 32, 45, 45, 102, 91, 45, 49, 93, 32, 48, 32, 20.686 + 45, 45, 91, 45, 49, 93, 32, 50, 53, 53, 32, 45, 114, 91, 45, 50, 20.687 + 44, 45, 49, 93, 32, 49, 50, 48, 37, 120, 49, 50, 48, 37, 120, 49, 20.688 + 120, 49, 48, 48, 37, 44, 48, 44, 48, 44, 49, 32, 45, 43, 91, 45, 20.689 + 49, 93, 32, 50, 53, 53, 32, 45, 45, 98, 108, 117, 114, 91, 45, 49, 20.690 + 93, 32, 49, 48, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 20.691 + 45, 51, 44, 45, 50, 93, 32, 49, 48, 44, 49, 48, 44, 48, 44, 48, 20.692 + 44, 49, 10, 32, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 45, 20.693 + 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 43, 91, 45, 20.694 + 50, 44, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 83, 112, 108, 20.695 + 105, 116, 32, 105, 110, 116, 111, 32, 116, 105, 108, 101, 115, 46, 10, 35, 20.696 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.697 + 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 115, 112, 108, 105, 116, 95, 20.698 + 116, 105, 108, 101, 32, 58, 32, 39, 77, 61, 56, 44, 78, 61, 77, 39, 20.699 + 32, 58, 32, 83, 112, 108, 105, 116, 32, 108, 97, 115, 116, 32, 105, 109, 20.700 + 97, 103, 101, 32, 105, 110, 116, 111, 32, 77, 120, 78, 32, 114, 101, 103, 20.701 + 117, 108, 97, 114, 32, 116, 105, 108, 101, 115, 46, 10, 115, 112, 108, 105, 20.702 + 116, 95, 116, 105, 108, 101, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 20.703 + 49, 61, 56, 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 32, 32, 45, 20.704 + 101, 32, 34, 68, 101, 99, 111, 109, 112, 111, 115, 101, 32, 108, 97, 115, 20.705 + 116, 32, 105, 109, 97, 103, 101, 32, 105, 110, 116, 111, 32, 36, 49, 120, 20.706 + 36, 50, 32, 114, 101, 103, 117, 108, 97, 114, 32, 116, 105, 108, 101, 115, 20.707 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 105, 91, 48, 93, 32, 40, 20.708 + 36, 49, 41, 32, 45, 42, 91, 48, 93, 32, 36, 50, 32, 45, 115, 91, 20.709 + 45, 49, 93, 32, 120, 44, 36, 49, 32, 45, 115, 91, 45, 36, 49, 45, 20.710 + 45, 49, 93, 32, 121, 44, 36, 50, 32, 45, 114, 91, 45, 64, 48, 45, 20.711 + 45, 49, 93, 32, 91, 45, 64, 48, 93, 44, 48, 32, 45, 114, 109, 91, 20.712 + 48, 93, 32, 45, 118, 43, 10, 10, 35, 32, 65, 112, 112, 101, 110, 100, 20.713 + 32, 116, 105, 108, 101, 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.714 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 97, 20.715 + 112, 112, 101, 110, 100, 95, 116, 105, 108, 101, 32, 58, 32, 39, 77, 61, 20.716 + 56, 44, 78, 61, 77, 39, 32, 58, 32, 65, 112, 112, 101, 110, 100, 32, 20.717 + 108, 97, 115, 116, 32, 77, 120, 78, 32, 114, 101, 103, 117, 108, 97, 114, 20.718 + 32, 116, 105, 108, 101, 115, 32, 116, 111, 103, 101, 116, 104, 101, 114, 46, 20.719 + 10, 97, 112, 112, 101, 110, 100, 95, 116, 105, 108, 101, 32, 58, 32, 45, 20.720 + 105, 110, 116, 32, 36, 123, 49, 61, 56, 125, 44, 36, 123, 50, 61, 36, 20.721 + 49, 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 101, 110, 100, 32, 20.722 + 108, 97, 115, 116, 32, 36, 49, 120, 36, 50, 32, 114, 101, 103, 117, 108, 20.723 + 97, 114, 32, 116, 105, 108, 101, 115, 32, 116, 111, 103, 101, 116, 104, 101, 20.724 + 114, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 105, 91, 48, 93, 32, 20.725 + 40, 36, 49, 41, 32, 45, 42, 91, 48, 93, 32, 36, 50, 32, 45, 97, 20.726 + 91, 45, 64, 48, 45, 45, 49, 93, 32, 121, 32, 45, 115, 91, 45, 49, 20.727 + 93, 32, 121, 44, 36, 49, 32, 45, 97, 91, 45, 36, 49, 45, 45, 49, 20.728 + 93, 32, 120, 32, 45, 114, 109, 91, 48, 93, 32, 45, 118, 43, 10, 10, 20.729 + 35, 32, 82, 111, 116, 97, 116, 101, 32, 116, 105, 108, 101, 115, 46, 10, 20.730 + 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.731 + 10, 35, 64, 103, 109, 105, 99, 32, 114, 111, 116, 97, 116, 101, 95, 116, 20.732 + 105, 108, 101, 32, 58, 32, 39, 97, 110, 103, 108, 101, 61, 53, 44, 77, 20.733 + 61, 56, 44, 78, 61, 77, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 20.734 + 77, 120, 78, 32, 116, 105, 108, 101, 100, 45, 114, 111, 116, 97, 116, 105, 20.735 + 111, 110, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 20.736 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 114, 111, 116, 20.737 + 97, 116, 101, 95, 116, 105, 108, 101, 32, 58, 32, 45, 102, 108, 111, 97, 20.738 + 116, 32, 36, 123, 49, 61, 53, 125, 32, 45, 105, 110, 116, 32, 36, 123, 20.739 + 50, 61, 56, 125, 44, 36, 123, 51, 61, 36, 50, 125, 10, 32, 32, 45, 20.740 + 101, 32, 34, 65, 112, 112, 108, 121, 32, 36, 50, 120, 36, 51, 32, 116, 20.741 + 105, 108, 101, 100, 45, 114, 111, 116, 97, 116, 105, 111, 110, 32, 101, 102, 20.742 + 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.743 + 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 110, 103, 20.744 + 108, 101, 32, 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 105, 20.745 + 91, 48, 93, 32, 40, 36, 50, 41, 32, 45, 42, 91, 48, 93, 32, 36, 20.746 + 51, 32, 45, 115, 112, 108, 105, 116, 95, 116, 105, 108, 101, 32, 36, 50, 20.747 + 44, 36, 51, 32, 45, 114, 111, 116, 97, 116, 101, 91, 45, 64, 48, 45, 20.748 + 45, 49, 93, 32, 36, 49, 32, 45, 97, 112, 112, 101, 110, 100, 95, 116, 20.749 + 105, 108, 101, 32, 36, 50, 44, 36, 51, 32, 45, 118, 43, 10, 10, 35, 20.750 + 32, 84, 105, 108, 101, 100, 32, 115, 104, 105, 102, 116, 46, 10, 35, 45, 20.751 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 20.752 + 109, 105, 99, 32, 115, 104, 105, 102, 116, 95, 116, 105, 108, 101, 32, 58, 20.753 + 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 50, 48, 44, 77, 20.754 + 61, 56, 44, 78, 61, 77, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 20.755 + 77, 120, 78, 32, 116, 105, 108, 101, 100, 45, 115, 104, 105, 102, 116, 32, 20.756 + 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 20.757 + 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 115, 104, 105, 102, 116, 95, 20.758 + 116, 105, 108, 101, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 20.759 + 49, 61, 50, 48, 125, 32, 45, 105, 110, 116, 32, 36, 123, 50, 61, 56, 20.760 + 125, 44, 36, 123, 51, 61, 56, 125, 10, 32, 32, 45, 101, 32, 34, 65, 20.761 + 112, 112, 108, 121, 32, 36, 50, 120, 36, 51, 32, 116, 105, 108, 101, 100, 20.762 + 45, 115, 104, 105, 102, 116, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 20.763 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 20.764 + 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 105, 116, 117, 100, 101, 32, 20.765 + 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 20.766 + 111, 97, 116, 32, 36, 50, 120, 36, 51, 120, 49, 120, 50, 32, 45, 110, 20.767 + 111, 105, 115, 101, 91, 45, 49, 93, 32, 36, 49, 32, 45, 114, 91, 45, 20.768 + 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 50, 20.769 + 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 20.770 + 49, 44, 49, 44, 48, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 20.771 + 43, 10, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.772 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.773 + 45, 10, 35, 10, 35, 32, 68, 101, 102, 111, 114, 109, 97, 116, 105, 111, 20.774 + 110, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 10, 35, 45, 45, 45, 20.775 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.776 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 83, 112, 20.777 + 114, 101, 97, 100, 32, 112, 105, 120, 101, 108, 32, 118, 97, 108, 117, 101, 20.778 + 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.779 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.780 + 32, 115, 112, 114, 101, 97, 100, 32, 58, 32, 39, 100, 120, 61, 51, 44, 20.781 + 100, 121, 61, 100, 120, 44, 100, 122, 61, 48, 39, 32, 58, 32, 83, 112, 20.782 + 114, 101, 97, 100, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 20.783 + 112, 105, 120, 101, 108, 32, 118, 97, 108, 117, 101, 115, 32, 114, 97, 110, 20.784 + 100, 111, 109, 108, 121, 32, 97, 108, 111, 110, 103, 32, 120, 44, 121, 32, 20.785 + 97, 110, 100, 32, 122, 46, 10, 115, 112, 114, 101, 97, 100, 32, 58, 32, 20.786 + 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 51, 125, 44, 36, 123, 20.787 + 50, 61, 36, 49, 125, 44, 36, 123, 51, 61, 48, 125, 10, 32, 32, 45, 20.788 + 101, 32, 34, 83, 112, 114, 101, 97, 100, 32, 112, 105, 120, 101, 108, 32, 20.789 + 118, 97, 108, 117, 101, 115, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 20.790 + 115, 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 97, 109, 20.791 + 112, 108, 105, 116, 117, 100, 101, 115, 32, 40, 36, 49, 44, 36, 50, 44, 20.792 + 36, 51, 41, 41, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 20.793 + 102, 108, 111, 97, 116, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 20.794 + 49, 48, 48, 37, 120, 49, 120, 51, 32, 45, 110, 111, 105, 115, 101, 91, 20.795 + 45, 51, 93, 32, 36, 49, 44, 48, 32, 45, 110, 111, 105, 115, 101, 91, 20.796 + 45, 50, 93, 32, 36, 50, 44, 48, 10, 32, 32, 45, 110, 111, 105, 115, 20.797 + 101, 91, 45, 49, 93, 32, 36, 51, 44, 48, 32, 45, 97, 91, 45, 51, 20.798 + 45, 45, 49, 93, 32, 118, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 20.799 + 32, 91, 45, 49, 93, 44, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 20.800 + 45, 118, 43, 10, 10, 35, 32, 87, 97, 116, 101, 114, 32, 101, 102, 102, 20.801 + 101, 99, 116, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.802 + 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 119, 97, 116, 101, 20.803 + 114, 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 51, 20.804 + 48, 44, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 61, 49, 46, 53, 20.805 + 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 119, 97, 116, 101, 114, 32, 20.806 + 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 20.807 + 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 119, 97, 116, 101, 114, 32, 20.808 + 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 51, 48, 125, 20.809 + 44, 36, 123, 50, 61, 49, 46, 53, 125, 10, 32, 32, 45, 101, 32, 34, 20.810 + 65, 112, 112, 108, 121, 32, 119, 97, 116, 101, 114, 32, 101, 102, 102, 101, 20.811 + 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.812 + 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 105, 20.813 + 116, 117, 100, 101, 32, 36, 49, 32, 97, 110, 100, 32, 115, 109, 111, 111, 20.814 + 116, 104, 110, 101, 115, 115, 32, 36, 50, 46, 34, 10, 32, 32, 45, 118, 20.815 + 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 50, 53, 37, 120, 50, 20.816 + 53, 37, 120, 50, 53, 37, 120, 49, 32, 45, 110, 111, 105, 115, 101, 91, 20.817 + 45, 49, 93, 32, 36, 49, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 20.818 + 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 43, 91, 45, 49, 44, 45, 20.819 + 50, 44, 45, 51, 93, 10, 32, 32, 45, 98, 108, 117, 114, 91, 45, 49, 20.820 + 93, 32, 36, 50, 32, 45, 42, 91, 45, 49, 93, 32, 50, 32, 45, 119, 20.821 + 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 32, 45, 20.822 + 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 87, 97, 20.823 + 118, 101, 32, 101, 102, 102, 101, 99, 116, 46, 10, 35, 45, 45, 45, 45, 20.824 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.825 + 32, 119, 97, 118, 101, 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 20.826 + 100, 101, 61, 52, 44, 102, 114, 101, 113, 117, 101, 110, 99, 121, 61, 48, 20.827 + 46, 52, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 119, 97, 118, 101, 20.828 + 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 20.829 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 119, 97, 118, 101, 32, 20.830 + 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 52, 125, 44, 20.831 + 36, 123, 50, 61, 48, 46, 52, 125, 10, 32, 32, 45, 101, 32, 34, 65, 20.832 + 112, 112, 108, 121, 32, 119, 97, 118, 101, 32, 101, 102, 102, 101, 99, 116, 20.833 + 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.834 + 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 105, 116, 117, 20.835 + 100, 101, 32, 36, 49, 32, 97, 110, 100, 32, 102, 114, 101, 113, 117, 101, 20.836 + 110, 99, 121, 32, 36, 50, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 20.837 + 116, 32, 102, 108, 111, 97, 116, 32, 40, 49, 41, 32, 45, 114, 91, 45, 20.838 + 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 49, 20.839 + 44, 48, 44, 48, 44, 49, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 20.840 + 91, 45, 49, 93, 32, 49, 10, 32, 32, 45, 42, 91, 45, 49, 93, 32, 20.841 + 36, 50, 32, 91, 45, 49, 93, 32, 45, 99, 111, 115, 91, 45, 50, 93, 20.842 + 32, 45, 115, 105, 110, 91, 45, 49, 93, 32, 45, 97, 91, 45, 50, 44, 20.843 + 45, 49, 93, 32, 118, 32, 45, 42, 91, 45, 49, 93, 32, 36, 49, 10, 20.844 + 32, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 20.845 + 44, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 20.846 + 35, 32, 76, 105, 110, 101, 97, 114, 32, 98, 108, 117, 114, 46, 10, 35, 20.847 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.848 + 103, 109, 105, 99, 32, 98, 108, 117, 114, 95, 108, 105, 110, 101, 97, 114, 20.849 + 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 49, 48, 20.850 + 44, 118, 120, 61, 49, 44, 118, 121, 61, 48, 39, 32, 58, 32, 65, 112, 20.851 + 112, 108, 121, 32, 111, 114, 105, 101, 110, 116, 101, 100, 32, 108, 105, 110, 20.852 + 101, 97, 114, 32, 98, 108, 117, 114, 32, 111, 110, 32, 116, 104, 101, 32, 20.853 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 98, 108, 117, 20.854 + 114, 95, 108, 105, 110, 101, 97, 114, 32, 58, 10, 32, 32, 45, 45, 119, 20.855 + 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 20.856 + 44, 49, 32, 45, 42, 91, 45, 50, 93, 32, 45, 49, 32, 45, 119, 97, 20.857 + 114, 112, 91, 45, 51, 93, 32, 91, 45, 50, 93, 44, 49, 44, 49, 44, 20.858 + 49, 32, 45, 43, 91, 45, 51, 44, 45, 49, 93, 32, 45, 47, 91, 45, 20.859 + 50, 93, 32, 50, 32, 45, 42, 91, 45, 49, 93, 32, 45, 49, 10, 98, 20.860 + 108, 117, 114, 95, 108, 105, 110, 101, 97, 114, 32, 58, 32, 45, 105, 110, 20.861 + 116, 32, 36, 123, 49, 61, 49, 48, 125, 32, 45, 102, 108, 111, 97, 116, 20.862 + 32, 36, 123, 50, 61, 49, 125, 44, 36, 123, 51, 61, 48, 125, 10, 32, 20.863 + 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 108, 105, 110, 101, 97, 20.864 + 114, 32, 98, 108, 117, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 20.865 + 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 20.866 + 109, 112, 108, 105, 116, 117, 100, 101, 32, 36, 49, 32, 97, 110, 100, 32, 20.867 + 111, 114, 105, 101, 110, 116, 97, 116, 105, 111, 110, 32, 40, 36, 50, 44, 20.868 + 36, 51, 41, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 20.869 + 108, 111, 97, 116, 32, 49, 120, 49, 120, 49, 120, 50, 32, 45, 102, 91, 20.870 + 45, 49, 93, 32, 36, 50, 44, 36, 51, 32, 45, 114, 91, 45, 49, 93, 20.871 + 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 50, 32, 45, 20.872 + 114, 101, 112, 101, 97, 116, 32, 36, 49, 32, 45, 95, 98, 108, 117, 114, 20.873 + 95, 108, 105, 110, 101, 97, 114, 32, 45, 100, 111, 110, 101, 32, 45, 114, 20.874 + 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 82, 97, 100, 20.875 + 105, 97, 108, 32, 98, 108, 117, 114, 46, 10, 35, 45, 45, 45, 45, 45, 20.876 + 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 20.877 + 98, 108, 117, 114, 95, 114, 97, 100, 105, 97, 108, 32, 58, 32, 39, 97, 20.878 + 109, 112, 108, 105, 116, 117, 100, 101, 61, 49, 48, 44, 97, 110, 103, 108, 20.879 + 101, 61, 48, 46, 53, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 114, 20.880 + 97, 100, 105, 97, 108, 32, 98, 108, 117, 114, 32, 111, 110, 32, 116, 104, 20.881 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 98, 20.882 + 108, 117, 114, 95, 114, 97, 100, 105, 97, 108, 32, 58, 10, 32, 32, 45, 20.883 + 45, 114, 111, 116, 97, 116, 101, 91, 45, 49, 93, 32, 64, 45, 50, 44, 20.884 + 45, 50, 44, 48, 32, 45, 42, 91, 45, 51, 93, 32, 45, 49, 32, 45, 20.885 + 114, 111, 116, 97, 116, 101, 91, 45, 50, 93, 32, 64, 45, 51, 44, 45, 20.886 + 50, 44, 48, 32, 45, 42, 91, 45, 51, 93, 32, 45, 49, 32, 45, 43, 20.887 + 91, 45, 50, 44, 45, 49, 93, 32, 45, 47, 91, 45, 49, 93, 32, 50, 20.888 + 10, 98, 108, 117, 114, 95, 114, 97, 100, 105, 97, 108, 32, 58, 32, 45, 20.889 + 105, 110, 116, 32, 36, 123, 49, 61, 49, 48, 125, 32, 45, 102, 108, 111, 20.890 + 97, 116, 32, 36, 123, 50, 61, 48, 46, 53, 125, 10, 32, 32, 45, 101, 20.891 + 32, 34, 65, 112, 112, 108, 121, 32, 114, 97, 100, 105, 97, 108, 32, 98, 20.892 + 108, 117, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.893 + 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 20.894 + 105, 116, 117, 100, 101, 32, 36, 49, 32, 97, 110, 100, 32, 97, 110, 103, 20.895 + 108, 101, 32, 36, 50, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 20.896 + 32, 102, 108, 111, 97, 116, 32, 91, 45, 49, 93, 32, 45, 105, 91, 45, 20.897 + 50, 93, 32, 40, 36, 50, 41, 32, 45, 114, 101, 112, 101, 97, 116, 32, 20.898 + 36, 49, 32, 45, 95, 98, 108, 117, 114, 95, 114, 97, 100, 105, 97, 108, 20.899 + 32, 45, 43, 91, 45, 50, 93, 32, 36, 50, 32, 45, 100, 111, 110, 101, 20.900 + 32, 45, 118, 43, 10, 10, 35, 32, 90, 111, 111, 109, 32, 98, 108, 117, 20.901 + 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.902 + 35, 64, 103, 109, 105, 99, 32, 98, 108, 117, 114, 95, 122, 111, 111, 109, 20.903 + 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 53, 44, 20.904 + 122, 111, 111, 109, 95, 115, 116, 101, 112, 61, 49, 46, 53, 39, 32, 58, 20.905 + 32, 65, 112, 112, 108, 121, 32, 114, 97, 100, 105, 97, 108, 32, 98, 108, 20.906 + 117, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.907 + 109, 97, 103, 101, 46, 10, 95, 98, 108, 117, 114, 95, 122, 111, 111, 109, 20.908 + 32, 58, 10, 32, 32, 45, 45, 114, 91, 45, 49, 93, 32, 64, 48, 37, 20.909 + 120, 64, 48, 37, 120, 64, 48, 37, 120, 49, 48, 48, 37, 44, 50, 32, 20.910 + 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 48, 44, 49, 44, 20.911 + 49, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 32, 45, 47, 91, 45, 20.912 + 49, 93, 32, 50, 10, 98, 108, 117, 114, 95, 122, 111, 111, 109, 32, 58, 20.913 + 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 53, 125, 32, 45, 102, 108, 20.914 + 111, 97, 116, 32, 36, 123, 50, 61, 49, 46, 53, 125, 10, 32, 32, 45, 20.915 + 101, 32, 34, 65, 112, 112, 108, 121, 32, 122, 111, 111, 109, 32, 98, 108, 20.916 + 117, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.917 + 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 105, 20.918 + 116, 117, 100, 101, 32, 36, 49, 32, 97, 110, 100, 32, 115, 116, 101, 112, 20.919 + 32, 36, 50, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 20.920 + 108, 111, 97, 116, 32, 45, 105, 91, 48, 93, 32, 40, 36, 50, 41, 32, 20.921 + 45, 43, 91, 48, 93, 32, 49, 48, 48, 32, 45, 114, 101, 112, 101, 97, 20.922 + 116, 32, 36, 49, 32, 45, 95, 98, 108, 117, 114, 95, 122, 111, 111, 109, 20.923 + 32, 45, 100, 111, 110, 101, 32, 45, 114, 109, 91, 48, 93, 32, 45, 118, 20.924 + 43, 10, 10, 35, 32, 71, 101, 110, 101, 114, 105, 99, 32, 109, 97, 99, 20.925 + 114, 111, 32, 102, 111, 114, 32, 97, 112, 112, 108, 121, 105, 110, 103, 32, 20.926 + 97, 32, 80, 68, 69, 32, 102, 108, 111, 119, 46, 10, 35, 45, 45, 45, 20.927 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.928 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.929 + 45, 45, 45, 45, 10, 112, 100, 101, 95, 102, 108, 111, 119, 32, 58, 10, 20.930 + 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 20.931 + 114, 101, 112, 101, 97, 116, 32, 36, 50, 32, 45, 105, 102, 32, 36, 49, 20.932 + 32, 91, 45, 49, 93, 32, 45, 101, 110, 100, 105, 102, 10, 32, 32, 36, 20.933 + 52, 32, 36, 123, 53, 42, 125, 32, 40, 36, 51, 41, 32, 45, 45, 115, 20.934 + 116, 97, 116, 115, 91, 45, 50, 93, 32, 45, 114, 91, 45, 49, 93, 32, 20.935 + 49, 120, 50, 120, 49, 120, 49, 44, 48, 32, 45, 97, 98, 115, 91, 45, 20.936 + 49, 93, 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 32, 45, 105, 20.937 + 32, 40, 64, 123, 45, 49, 44, 49, 125, 41, 32, 45, 114, 109, 91, 45, 20.938 + 50, 93, 10, 32, 32, 45, 43, 91, 45, 49, 93, 32, 48, 46, 49, 32, 20.939 + 45, 47, 91, 45, 50, 44, 45, 49, 93, 32, 45, 42, 91, 45, 50, 93, 20.940 + 32, 64, 45, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 43, 91, 20.941 + 45, 50, 44, 45, 49, 93, 32, 45, 100, 111, 110, 101, 32, 45, 118, 43, 20.942 + 10, 10, 35, 32, 77, 101, 97, 110, 45, 99, 117, 114, 118, 97, 116, 117, 20.943 + 114, 101, 32, 102, 108, 111, 119, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.944 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.945 + 35, 64, 103, 109, 105, 99, 32, 109, 101, 97, 110, 99, 117, 114, 118, 97, 20.946 + 116, 117, 114, 101, 95, 102, 108, 111, 119, 32, 58, 32, 39, 110, 98, 95, 20.947 + 105, 116, 101, 114, 61, 53, 44, 32, 116, 105, 109, 101, 95, 115, 116, 101, 20.948 + 112, 61, 51, 48, 44, 32, 115, 101, 113, 61, 48, 39, 32, 58, 32, 65, 20.949 + 112, 112, 108, 121, 32, 105, 116, 101, 114, 97, 116, 105, 111, 110, 115, 32, 20.950 + 111, 102, 32, 116, 104, 101, 32, 109, 101, 97, 110, 32, 99, 117, 114, 118, 20.951 + 97, 116, 117, 114, 101, 32, 102, 108, 111, 119, 32, 111, 110, 32, 116, 104, 20.952 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 109, 20.953 + 101, 97, 110, 99, 117, 114, 118, 97, 116, 117, 114, 101, 95, 102, 108, 111, 20.954 + 119, 32, 58, 10, 32, 32, 91, 45, 49, 93, 120, 50, 32, 45, 108, 97, 20.955 + 112, 108, 97, 99, 105, 97, 110, 32, 45, 109, 118, 91, 45, 49, 93, 32, 20.956 + 45, 50, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 95, 50, 100, 101, 20.957 + 114, 105, 118, 97, 116, 105, 118, 101, 32, 45, 45, 91, 45, 50, 44, 45, 20.958 + 49, 93, 10, 109, 101, 97, 110, 99, 117, 114, 118, 97, 116, 117, 114, 101, 20.959 + 95, 102, 108, 111, 119, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 20.960 + 61, 53, 125, 44, 36, 123, 51, 61, 48, 125, 32, 45, 102, 108, 111, 97, 20.961 + 116, 32, 36, 123, 50, 61, 51, 48, 125, 10, 32, 32, 45, 101, 32, 34, 20.962 + 65, 112, 112, 108, 121, 32, 36, 49, 32, 105, 116, 101, 114, 97, 116, 105, 20.963 + 111, 110, 115, 32, 111, 102, 32, 116, 104, 101, 32, 109, 101, 97, 110, 32, 20.964 + 99, 117, 114, 118, 97, 116, 117, 114, 101, 32, 102, 108, 111, 119, 44, 32, 20.965 + 119, 105, 116, 104, 32, 116, 105, 109, 101, 32, 115, 116, 101, 112, 32, 36, 20.966 + 50, 46, 34, 10, 32, 32, 45, 112, 100, 101, 95, 102, 108, 111, 119, 32, 20.967 + 36, 51, 44, 36, 49, 44, 36, 50, 44, 45, 95, 109, 101, 97, 110, 99, 20.968 + 117, 114, 118, 97, 116, 117, 114, 101, 95, 102, 108, 111, 119, 10, 10, 35, 20.969 + 32, 84, 111, 116, 97, 108, 32, 118, 97, 114, 105, 97, 116, 105, 111, 110, 20.970 + 32, 102, 108, 111, 119, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.971 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.972 + 103, 109, 105, 99, 32, 116, 118, 95, 102, 108, 111, 119, 32, 58, 32, 39, 20.973 + 110, 98, 95, 105, 116, 101, 114, 61, 53, 44, 32, 116, 105, 109, 101, 95, 20.974 + 115, 116, 101, 112, 61, 50, 48, 44, 32, 115, 101, 113, 61, 48, 39, 32, 20.975 + 58, 32, 65, 112, 112, 108, 121, 32, 105, 116, 101, 114, 97, 116, 105, 111, 20.976 + 110, 115, 32, 111, 102, 32, 116, 104, 101, 32, 116, 111, 116, 97, 108, 32, 20.977 + 118, 97, 114, 105, 97, 116, 105, 111, 110, 32, 102, 108, 111, 119, 32, 111, 20.978 + 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.979 + 46, 10, 95, 116, 118, 95, 102, 108, 111, 119, 32, 58, 10, 32, 32, 91, 20.980 + 45, 49, 93, 120, 51, 32, 45, 108, 97, 112, 108, 97, 99, 105, 97, 110, 20.981 + 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 51, 32, 45, 103, 114, 97, 20.982 + 100, 105, 101, 110, 116, 95, 50, 100, 101, 114, 105, 118, 97, 116, 105, 118, 20.983 + 101, 32, 45, 45, 91, 45, 51, 44, 45, 49, 93, 32, 45, 103, 114, 97, 20.984 + 100, 105, 101, 110, 116, 95, 110, 111, 114, 109, 32, 45, 43, 91, 45, 49, 20.985 + 93, 32, 48, 46, 53, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 20.986 + 93, 32, 45, 47, 91, 45, 50, 44, 45, 49, 93, 10, 116, 118, 95, 102, 20.987 + 108, 111, 119, 32, 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 53, 20.988 + 125, 44, 36, 123, 51, 61, 48, 125, 32, 45, 102, 108, 111, 97, 116, 32, 20.989 + 36, 123, 50, 61, 50, 48, 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 20.990 + 112, 108, 121, 32, 36, 49, 32, 105, 116, 101, 114, 97, 116, 105, 111, 110, 20.991 + 115, 32, 111, 102, 32, 116, 104, 101, 32, 116, 111, 116, 97, 108, 32, 118, 20.992 + 97, 114, 105, 97, 116, 105, 111, 110, 32, 102, 108, 111, 119, 44, 32, 119, 20.993 + 105, 116, 104, 32, 116, 105, 109, 101, 32, 115, 116, 101, 112, 32, 36, 50, 20.994 + 46, 34, 10, 32, 32, 45, 112, 100, 101, 95, 102, 108, 111, 119, 32, 36, 20.995 + 51, 44, 36, 49, 44, 36, 50, 44, 45, 95, 116, 118, 95, 102, 108, 111, 20.996 + 119, 10, 10, 35, 32, 72, 117, 114, 108, 32, 110, 111, 105, 115, 101, 46, 20.997 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 20.998 + 64, 103, 109, 105, 99, 32, 110, 111, 105, 115, 101, 95, 104, 117, 114, 108, 20.999 + 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 39, 32, 58, 20.1000 + 32, 65, 100, 100, 32, 104, 117, 114, 108, 32, 110, 111, 105, 115, 101, 32, 20.1001 + 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1002 + 101, 46, 10, 110, 111, 105, 115, 101, 95, 104, 117, 114, 108, 32, 58, 32, 20.1003 + 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 49, 48, 125, 10, 32, 20.1004 + 32, 45, 101, 32, 34, 65, 100, 100, 32, 104, 117, 114, 108, 32, 110, 111, 20.1005 + 105, 115, 101, 32, 111, 102, 32, 97, 109, 112, 108, 105, 116, 117, 100, 101, 20.1006 + 32, 36, 49, 37, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1007 + 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 20.1008 + 45, 115, 116, 97, 116, 115, 32, 45, 45, 102, 91, 45, 50, 93, 32, 48, 20.1009 + 32, 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 49, 48, 32, 45, 20.1010 + 110, 91, 45, 49, 93, 32, 64, 123, 45, 50, 44, 48, 44, 49, 125, 32, 20.1011 + 45, 114, 109, 91, 45, 50, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 20.1012 + 37, 32, 45, 102, 91, 45, 49, 93, 32, 45, 50, 10, 32, 32, 45, 110, 20.1013 + 111, 105, 115, 101, 91, 45, 49, 93, 32, 36, 49, 44, 50, 32, 45, 116, 20.1014 + 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 49, 93, 32, 48, 32, 45, 20.1015 + 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 10, 32, 32, 45, 42, 91, 20.1016 + 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 42, 91, 45, 49, 93, 32, 20.1017 + 45, 49, 32, 45, 43, 91, 45, 49, 93, 32, 49, 32, 45, 42, 91, 45, 20.1018 + 51, 44, 45, 49, 93, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 32, 20.1019 + 45, 118, 43, 10, 10, 35, 32, 80, 105, 120, 101, 108, 105, 122, 101, 46, 20.1020 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 20.1021 + 109, 105, 99, 32, 112, 105, 120, 101, 108, 105, 122, 101, 32, 58, 32, 39, 20.1022 + 115, 120, 61, 51, 48, 44, 115, 121, 61, 115, 120, 39, 32, 58, 32, 80, 20.1023 + 105, 120, 101, 108, 105, 122, 101, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1024 + 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 115, 112, 101, 99, 20.1025 + 105, 102, 105, 101, 100, 32, 115, 99, 97, 108, 101, 115, 32, 40, 39, 115, 20.1026 + 120, 39, 32, 97, 110, 100, 32, 39, 115, 121, 39, 32, 105, 110, 32, 48, 20.1027 + 46, 46, 49, 48, 48, 41, 46, 10, 112, 105, 120, 101, 108, 105, 122, 101, 20.1028 + 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 50, 48, 20.1029 + 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 32, 32, 45, 101, 32, 34, 20.1030 + 80, 105, 120, 101, 108, 105, 122, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1031 + 97, 103, 101, 32, 119, 105, 116, 104, 32, 115, 99, 97, 108, 101, 115, 32, 20.1032 + 40, 36, 49, 37, 44, 36, 50, 37, 41, 46, 34, 10, 32, 32, 45, 118, 20.1033 + 45, 32, 45, 45, 100, 105, 109, 101, 110, 115, 105, 111, 110, 115, 91, 45, 20.1034 + 49, 93, 32, 45, 114, 91, 45, 50, 93, 32, 36, 49, 37, 120, 36, 50, 20.1035 + 37, 120, 49, 120, 51, 44, 50, 32, 45, 114, 91, 45, 50, 93, 32, 64, 20.1036 + 45, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 20.1037 + 35, 32, 68, 101, 102, 111, 114, 109, 105, 110, 103, 32, 102, 105, 108, 116, 20.1038 + 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1039 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 20.1040 + 101, 102, 111, 114, 109, 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 20.1041 + 100, 101, 61, 49, 48, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 114, 20.1042 + 97, 110, 100, 111, 109, 32, 115, 109, 111, 111, 116, 104, 32, 100, 101, 102, 20.1043 + 111, 114, 109, 97, 116, 105, 111, 110, 32, 111, 110, 32, 116, 104, 101, 32, 20.1044 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 100, 101, 102, 111, 20.1045 + 114, 109, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 20.1046 + 49, 48, 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 20.1047 + 114, 97, 110, 100, 111, 109, 32, 115, 109, 111, 111, 116, 104, 32, 100, 101, 20.1048 + 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 111, 110, 32, 116, 104, 101, 20.1049 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 20.1050 + 104, 32, 97, 109, 112, 108, 105, 116, 117, 100, 101, 32, 36, 49, 46, 34, 20.1051 + 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 20.1052 + 50, 37, 120, 50, 37, 120, 49, 120, 50, 32, 45, 110, 111, 105, 115, 101, 20.1053 + 91, 45, 49, 93, 32, 36, 49, 32, 45, 114, 91, 45, 49, 93, 32, 91, 20.1054 + 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 50, 44, 53, 10, 32, 20.1055 + 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 20.1056 + 49, 44, 49, 44, 49, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 20.1057 + 43, 10, 10, 35, 32, 80, 117, 122, 122, 108, 101, 32, 102, 105, 108, 116, 20.1058 + 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1059 + 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 112, 117, 122, 122, 20.1060 + 108, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 20.1061 + 32, 65, 112, 112, 108, 121, 32, 112, 117, 122, 122, 108, 101, 32, 101, 102, 20.1062 + 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1063 + 32, 105, 109, 97, 103, 101, 46, 10, 112, 117, 122, 122, 108, 101, 32, 58, 20.1064 + 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 112, 117, 122, 20.1065 + 122, 108, 101, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 20.1066 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 20.1067 + 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 91, 45, 20.1068 + 49, 93, 32, 45, 114, 91, 45, 49, 93, 32, 53, 37, 120, 53, 37, 120, 20.1069 + 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 50, 32, 45, 110, 111, 105, 20.1070 + 115, 101, 91, 45, 49, 93, 32, 48, 46, 49, 32, 45, 114, 91, 45, 49, 20.1071 + 93, 32, 91, 45, 50, 93, 32, 45, 114, 109, 91, 45, 50, 93, 10, 32, 20.1072 + 32, 91, 45, 49, 93, 120, 50, 32, 45, 116, 114, 97, 110, 115, 108, 97, 20.1073 + 116, 101, 91, 45, 49, 93, 32, 49, 44, 49, 32, 45, 45, 91, 45, 50, 20.1074 + 44, 45, 49, 93, 32, 45, 110, 111, 114, 109, 91, 45, 49, 93, 32, 45, 20.1075 + 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 49, 93, 32, 48, 46, 20.1076 + 48, 49, 32, 45, 42, 91, 45, 49, 93, 32, 45, 49, 10, 32, 32, 45, 20.1077 + 43, 91, 45, 49, 93, 32, 49, 32, 45, 114, 91, 45, 49, 93, 32, 91, 20.1078 + 45, 50, 93, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 32, 49, 48, 20.1079 + 37, 120, 49, 48, 37, 120, 49, 48, 37, 120, 50, 32, 45, 110, 111, 105, 20.1080 + 115, 101, 91, 45, 49, 93, 32, 53, 44, 49, 10, 32, 32, 45, 114, 91, 20.1081 + 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 20.1082 + 50, 44, 53, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 20.1083 + 49, 93, 44, 49, 44, 49, 44, 49, 32, 45, 114, 109, 91, 45, 49, 93, 20.1084 + 32, 45, 118, 43, 10, 10, 35, 32, 70, 105, 115, 104, 45, 101, 121, 101, 20.1085 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.1086 + 103, 109, 105, 99, 32, 102, 105, 115, 104, 95, 101, 121, 101, 32, 58, 32, 20.1087 + 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 50, 53, 48, 39, 32, 20.1088 + 58, 32, 65, 112, 112, 108, 121, 32, 70, 105, 115, 104, 45, 101, 121, 101, 20.1089 + 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 20.1090 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 102, 105, 115, 104, 95, 20.1091 + 101, 121, 101, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 20.1092 + 61, 50, 53, 48, 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 20.1093 + 121, 32, 70, 105, 115, 104, 45, 101, 121, 101, 32, 101, 102, 102, 101, 99, 20.1094 + 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1095 + 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 112, 108, 105, 116, 20.1096 + 117, 100, 101, 32, 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 20.1097 + 116, 32, 102, 108, 111, 97, 116, 32, 50, 120, 50, 120, 49, 120, 50, 32, 20.1098 + 45, 102, 91, 45, 49, 93, 32, 45, 49, 44, 49, 44, 45, 49, 44, 49, 20.1099 + 44, 45, 49, 44, 45, 49, 44, 49, 44, 49, 32, 45, 114, 91, 45, 49, 20.1100 + 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 49, 44, 50, 44, 20.1101 + 51, 32, 91, 45, 49, 93, 10, 32, 32, 45, 110, 111, 114, 109, 91, 45, 20.1102 + 50, 93, 32, 45, 110, 91, 45, 50, 93, 32, 48, 44, 49, 32, 45, 99, 20.1103 + 117, 116, 91, 45, 50, 93, 32, 48, 44, 48, 46, 55, 32, 45, 45, 91, 20.1104 + 45, 50, 93, 32, 48, 46, 55, 32, 45, 42, 91, 45, 50, 93, 32, 45, 20.1105 + 36, 49, 32, 45, 114, 91, 45, 50, 93, 32, 91, 45, 49, 93, 10, 32, 20.1106 + 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 45, 119, 97, 114, 112, 20.1107 + 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 44, 49, 32, 20.1108 + 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 45, 45, 20.1109 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1110 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 32, 20.1111 + 65, 114, 116, 105, 115, 116, 105, 99, 32, 102, 105, 108, 116, 101, 114, 115, 20.1112 + 10, 35, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1113 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1114 + 45, 10, 10, 35, 32, 65, 100, 100, 32, 115, 116, 114, 105, 112, 32, 115, 20.1115 + 104, 97, 100, 101, 115, 32, 97, 108, 111, 110, 103, 32, 120, 32, 111, 114, 20.1116 + 32, 121, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1117 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1118 + 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 115, 104, 97, 100, 20.1119 + 101, 95, 115, 116, 114, 105, 112, 101, 115, 32, 58, 32, 39, 102, 114, 101, 20.1120 + 113, 117, 101, 110, 99, 121, 61, 53, 44, 32, 100, 105, 114, 101, 99, 116, 20.1121 + 105, 111, 110, 61, 49, 39, 32, 58, 32, 65, 100, 100, 32, 104, 111, 114, 20.1122 + 105, 122, 111, 110, 116, 97, 108, 32, 111, 114, 32, 118, 101, 114, 116, 105, 20.1123 + 99, 97, 108, 32, 115, 104, 97, 100, 101, 100, 32, 115, 116, 114, 105, 112, 20.1124 + 101, 115, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.1125 + 109, 97, 103, 101, 46, 10, 95, 115, 104, 97, 100, 101, 95, 115, 116, 114, 20.1126 + 105, 112, 101, 115, 48, 32, 58, 10, 32, 32, 45, 118, 43, 32, 45, 101, 20.1127 + 32, 34, 65, 100, 100, 32, 104, 111, 114, 105, 122, 111, 110, 116, 97, 108, 20.1128 + 32, 115, 104, 97, 100, 101, 100, 32, 115, 116, 114, 105, 112, 101, 115, 32, 20.1129 + 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1130 + 101, 44, 32, 119, 105, 116, 104, 32, 102, 114, 101, 113, 117, 101, 110, 99, 20.1131 + 121, 32, 36, 49, 46, 34, 32, 45, 118, 45, 32, 49, 120, 49, 48, 48, 20.1132 + 37, 10, 95, 115, 104, 97, 100, 101, 95, 115, 116, 114, 105, 112, 101, 115, 20.1133 + 49, 32, 58, 10, 32, 32, 45, 118, 43, 32, 45, 101, 32, 34, 65, 100, 20.1134 + 100, 32, 118, 101, 114, 116, 105, 99, 97, 108, 32, 115, 104, 97, 100, 101, 20.1135 + 100, 32, 115, 116, 114, 105, 112, 101, 115, 32, 111, 110, 32, 116, 104, 101, 20.1136 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 20.1137 + 104, 32, 102, 114, 101, 113, 117, 101, 110, 99, 121, 32, 36, 49, 46, 34, 20.1138 + 32, 45, 118, 45, 32, 49, 48, 48, 37, 10, 115, 104, 97, 100, 101, 95, 20.1139 + 115, 116, 114, 105, 112, 101, 115, 32, 58, 32, 45, 102, 108, 111, 97, 116, 20.1140 + 32, 36, 123, 49, 61, 53, 125, 32, 45, 105, 110, 116, 32, 36, 123, 50, 20.1141 + 61, 49, 125, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 20.1142 + 97, 116, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 20.1143 + 45, 95, 115, 104, 97, 100, 101, 95, 115, 116, 114, 105, 112, 101, 115, 36, 20.1144 + 50, 32, 36, 49, 32, 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 20.1145 + 36, 49, 44, 50, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 20.1146 + 49, 93, 32, 49, 10, 32, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 20.1147 + 50, 93, 32, 45, 110, 91, 45, 49, 93, 32, 48, 46, 51, 44, 49, 46, 20.1148 + 53, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 99, 117, 116, 20.1149 + 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 10, 10, 20.1150 + 35, 32, 65, 100, 100, 32, 111, 108, 100, 45, 109, 111, 118, 105, 101, 32, 20.1151 + 115, 116, 114, 105, 112, 101, 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.1152 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1153 + 45, 10, 35, 64, 103, 109, 105, 99, 32, 115, 116, 114, 105, 112, 101, 115, 20.1154 + 121, 32, 58, 32, 39, 102, 114, 101, 113, 117, 101, 110, 99, 121, 61, 49, 20.1155 + 48, 39, 32, 58, 32, 65, 100, 100, 32, 118, 101, 114, 116, 105, 99, 97, 20.1156 + 108, 32, 115, 116, 114, 105, 112, 101, 115, 32, 111, 110, 32, 116, 104, 101, 20.1157 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 115, 116, 114, 20.1158 + 105, 112, 101, 115, 121, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 20.1159 + 123, 49, 61, 49, 48, 125, 10, 32, 32, 45, 101, 32, 34, 65, 100, 100, 20.1160 + 32, 118, 101, 114, 116, 105, 99, 97, 108, 32, 115, 116, 114, 105, 112, 101, 20.1161 + 115, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1162 + 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 102, 114, 101, 113, 117, 101, 20.1163 + 110, 99, 121, 32, 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 20.1164 + 116, 32, 102, 108, 111, 97, 116, 32, 45, 110, 91, 45, 49, 93, 32, 48, 20.1165 + 44, 50, 53, 53, 32, 49, 48, 48, 37, 32, 45, 110, 111, 105, 115, 101, 20.1166 + 91, 45, 49, 93, 32, 36, 49, 44, 50, 32, 45, 42, 91, 45, 49, 93, 20.1167 + 32, 50, 53, 53, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 20.1168 + 10, 32, 32, 45, 42, 91, 45, 49, 93, 32, 48, 46, 49, 53, 32, 45, 20.1169 + 43, 91, 45, 49, 44, 45, 50, 93, 32, 45, 99, 117, 116, 91, 45, 49, 20.1170 + 93, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 10, 10, 35, 32, 84, 20.1171 + 101, 116, 114, 105, 115, 32, 101, 102, 102, 101, 99, 116, 46, 10, 35, 45, 20.1172 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 20.1173 + 64, 103, 109, 105, 99, 32, 116, 101, 116, 114, 105, 115, 32, 58, 32, 39, 20.1174 + 115, 99, 97, 108, 101, 61, 49, 48, 39, 32, 58, 32, 65, 112, 112, 108, 20.1175 + 121, 32, 116, 101, 116, 114, 105, 115, 32, 101, 102, 102, 101, 99, 116, 32, 20.1176 + 111, 102, 32, 103, 105, 118, 101, 110, 32, 115, 105, 122, 101, 32, 111, 110, 20.1177 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.1178 + 10, 116, 101, 116, 114, 105, 115, 32, 58, 32, 45, 102, 108, 111, 97, 116, 20.1179 + 32, 36, 123, 49, 61, 49, 48, 125, 10, 32, 32, 45, 101, 32, 34, 65, 20.1180 + 112, 112, 108, 121, 32, 116, 101, 116, 114, 105, 115, 32, 101, 102, 102, 101, 20.1181 + 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 20.1182 + 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 115, 99, 97, 108, 101, 20.1183 + 32, 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 20.1184 + 108, 111, 97, 116, 32, 91, 45, 49, 93, 32, 45, 114, 91, 45, 49, 93, 20.1185 + 32, 36, 49, 37, 120, 36, 49, 37, 120, 36, 49, 37, 120, 51, 120, 50, 20.1186 + 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 113, 20.1187 + 117, 97, 110, 116, 105, 122, 101, 91, 45, 49, 93, 32, 49, 48, 10, 32, 20.1188 + 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 114, 109, 20.1189 + 91, 45, 50, 93, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 50, 20.1190 + 32, 45, 115, 104, 97, 114, 112, 101, 110, 91, 45, 49, 93, 32, 51, 48, 20.1191 + 48, 44, 49, 32, 45, 118, 43, 10, 10, 35, 32, 68, 97, 109, 112, 32, 20.1192 + 112, 97, 116, 99, 104, 32, 101, 102, 102, 101, 99, 116, 46, 10, 35, 45, 20.1193 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1194 + 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 97, 109, 112, 95, 112, 20.1195 + 97, 116, 99, 104, 32, 58, 32, 39, 111, 112, 97, 99, 105, 116, 121, 61, 20.1196 + 48, 46, 55, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 100, 97, 109, 20.1197 + 112, 32, 112, 97, 116, 99, 104, 32, 101, 102, 102, 101, 99, 116, 32, 111, 20.1198 + 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.1199 + 46, 10, 100, 97, 109, 112, 95, 112, 97, 116, 99, 104, 32, 58, 32, 45, 20.1200 + 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 48, 46, 55, 125, 10, 32, 20.1201 + 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 100, 97, 109, 112, 32, 20.1202 + 112, 97, 116, 99, 104, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 20.1203 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 20.1204 + 119, 105, 116, 104, 32, 111, 112, 97, 99, 105, 116, 121, 32, 36, 49, 46, 20.1205 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 20.1206 + 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 32, 45, 102, 91, 45, 49, 20.1207 + 93, 32, 49, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 20.1208 + 49, 93, 32, 50, 44, 50, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 20.1209 + 101, 91, 45, 49, 93, 32, 45, 49, 44, 45, 49, 10, 32, 32, 45, 112, 20.1210 + 108, 97, 115, 109, 97, 91, 45, 49, 93, 32, 51, 44, 48, 46, 51, 32, 20.1211 + 45, 97, 98, 115, 91, 45, 49, 93, 32, 45, 98, 108, 117, 114, 91, 45, 20.1212 + 49, 93, 32, 49, 32, 45, 99, 117, 116, 91, 45, 49, 93, 32, 51, 37, 20.1213 + 44, 49, 53, 37, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 20.1214 + 10, 32, 32, 45, 110, 91, 45, 49, 93, 32, 36, 49, 44, 49, 32, 45, 20.1215 + 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 118, 43, 10, 10, 35, 32, 20.1216 + 76, 105, 103, 104, 116, 32, 112, 97, 116, 99, 104, 32, 101, 102, 102, 101, 20.1217 + 99, 116, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1218 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.1219 + 32, 108, 105, 103, 104, 116, 95, 112, 97, 116, 99, 104, 32, 58, 32, 39, 20.1220 + 100, 97, 114, 107, 110, 101, 115, 115, 61, 48, 46, 57, 44, 108, 105, 103, 20.1221 + 104, 116, 110, 101, 115, 115, 61, 49, 46, 55, 39, 32, 58, 32, 65, 112, 20.1222 + 112, 108, 121, 32, 108, 105, 103, 104, 116, 32, 112, 97, 116, 99, 104, 32, 20.1223 + 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 20.1224 + 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 108, 105, 103, 104, 116, 95, 20.1225 + 112, 97, 116, 99, 104, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 20.1226 + 123, 49, 61, 48, 46, 57, 125, 44, 36, 123, 50, 61, 49, 46, 55, 125, 20.1227 + 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 108, 105, 103, 20.1228 + 104, 116, 32, 112, 97, 116, 99, 104, 32, 101, 102, 102, 101, 99, 116, 32, 20.1229 + 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1230 + 101, 44, 32, 119, 105, 116, 104, 32, 100, 97, 114, 107, 110, 101, 115, 115, 20.1231 + 32, 36, 49, 32, 97, 110, 100, 32, 108, 105, 103, 104, 116, 110, 101, 115, 20.1232 + 115, 32, 36, 50, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 20.1233 + 102, 108, 111, 97, 116, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 20.1234 + 53, 53, 32, 50, 37, 120, 50, 37, 32, 45, 110, 111, 105, 115, 101, 91, 20.1235 + 45, 49, 93, 32, 52, 48, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 20.1236 + 50, 93, 44, 53, 32, 45, 99, 117, 116, 91, 45, 49, 93, 32, 48, 44, 20.1237 + 50, 53, 53, 10, 32, 32, 45, 110, 91, 45, 49, 93, 32, 36, 49, 44, 20.1238 + 36, 50, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 45, 99, 117, 20.1239 + 116, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 10, 20.1240 + 10, 35, 32, 77, 111, 115, 97, 105, 99, 32, 112, 97, 116, 116, 101, 114, 20.1241 + 110, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1242 + 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 109, 111, 115, 97, 20.1243 + 105, 99, 32, 58, 32, 39, 100, 101, 110, 115, 105, 116, 121, 61, 48, 46, 20.1244 + 50, 39, 32, 58, 32, 65, 100, 100, 32, 109, 111, 115, 97, 105, 99, 32, 20.1245 + 112, 97, 116, 116, 101, 114, 110, 32, 116, 111, 32, 116, 104, 101, 32, 108, 20.1246 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 109, 111, 115, 97, 105, 20.1247 + 99, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 48, 20.1248 + 46, 50, 125, 10, 32, 32, 45, 101, 32, 34, 65, 100, 100, 32, 109, 111, 20.1249 + 115, 97, 105, 99, 32, 112, 97, 116, 116, 101, 114, 110, 32, 111, 110, 32, 20.1250 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 20.1251 + 119, 105, 116, 104, 32, 100, 101, 110, 115, 105, 116, 121, 32, 36, 49, 46, 20.1252 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 20.1253 + 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 49, 32, 45, 20.1254 + 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 36, 49, 44, 50, 32, 45, 20.1255 + 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 49, 93, 32, 49, 10, 32, 20.1256 + 32, 45, 115, 104, 97, 114, 112, 101, 110, 91, 45, 49, 93, 32, 49, 48, 20.1257 + 48, 48, 48, 32, 45, 42, 91, 45, 49, 93, 32, 45, 49, 32, 45, 98, 20.1258 + 108, 117, 114, 91, 45, 49, 93, 32, 48, 46, 53, 32, 45, 110, 91, 45, 20.1259 + 49, 93, 32, 48, 46, 51, 44, 49, 32, 45, 114, 91, 45, 49, 93, 32, 20.1260 + 91, 45, 50, 93, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 45, 20.1261 + 118, 43, 10, 10, 35, 32, 83, 112, 111, 110, 103, 101, 32, 102, 105, 108, 20.1262 + 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1263 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 115, 112, 111, 20.1264 + 110, 103, 101, 32, 58, 32, 39, 115, 105, 122, 101, 61, 49, 51, 39, 32, 20.1265 + 58, 32, 65, 112, 112, 108, 121, 32, 115, 112, 111, 110, 103, 101, 32, 102, 20.1266 + 105, 108, 116, 101, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1267 + 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 115, 112, 101, 20.1268 + 99, 105, 102, 105, 101, 100, 32, 98, 114, 117, 115, 104, 32, 115, 105, 122, 20.1269 + 101, 46, 10, 95, 99, 105, 114, 99, 108, 101, 32, 58, 10, 32, 32, 45, 20.1270 + 105, 32, 49, 32, 45, 43, 91, 45, 49, 93, 32, 49, 32, 45, 114, 91, 20.1271 + 45, 49, 93, 32, 36, 49, 120, 36, 49, 120, 49, 120, 49, 120, 48, 44, 20.1272 + 48, 44, 49, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 49, 20.1273 + 93, 32, 49, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 32, 45, 20.1274 + 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 99, 117, 116, 91, 45, 49, 20.1275 + 93, 32, 48, 46, 56, 53, 44, 48, 46, 56, 54, 32, 45, 42, 91, 45, 20.1276 + 49, 93, 32, 45, 49, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 20.1277 + 10, 115, 112, 111, 110, 103, 101, 32, 58, 32, 45, 105, 110, 116, 32, 36, 20.1278 + 123, 49, 61, 49, 51, 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 20.1279 + 108, 121, 32, 115, 112, 111, 110, 103, 101, 32, 102, 105, 108, 116, 101, 114, 20.1280 + 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.1281 + 103, 101, 44, 32, 119, 105, 116, 104, 32, 98, 114, 117, 115, 104, 32, 115, 20.1282 + 105, 122, 101, 32, 36, 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 49, 20.1283 + 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 49, 32, 45, 110, 111, 20.1284 + 105, 115, 101, 91, 45, 49, 93, 32, 50, 48, 44, 50, 32, 45, 114, 91, 20.1285 + 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 110, 91, 45, 49, 93, 32, 20.1286 + 48, 44, 49, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 10, 32, 32, 20.1287 + 45, 95, 99, 105, 114, 99, 108, 101, 32, 36, 49, 32, 45, 100, 105, 108, 20.1288 + 97, 116, 101, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 20.1289 + 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 72, 101, 97, 114, 20.1290 + 116, 32, 102, 105, 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 20.1291 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.1292 + 32, 104, 101, 97, 114, 116, 115, 32, 58, 32, 40, 110, 111, 32, 97, 114, 20.1293 + 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 121, 32, 104, 101, 97, 114, 20.1294 + 116, 32, 102, 105, 108, 116, 101, 114, 32, 111, 110, 32, 116, 104, 101, 32, 20.1295 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 104, 101, 97, 20.1296 + 114, 116, 57, 120, 55, 32, 58, 10, 32, 32, 45, 105, 32, 57, 120, 55, 20.1297 + 32, 45, 102, 91, 45, 49, 93, 32, 48, 44, 49, 44, 49, 44, 48, 44, 20.1298 + 48, 44, 48, 44, 49, 44, 49, 44, 48, 44, 49, 44, 49, 44, 49, 44, 20.1299 + 49, 44, 48, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 20.1300 + 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 48, 44, 20.1301 + 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 48, 44, 20.1302 + 48, 44, 48, 44, 49, 44, 49, 44, 49, 44, 49, 44, 49, 44, 48, 44, 20.1303 + 48, 44, 48, 44, 48, 44, 48, 44, 49, 44, 49, 44, 49, 44, 48, 44, 20.1304 + 48, 44, 48, 44, 48, 44, 48, 44, 48, 44, 48, 44, 49, 44, 48, 44, 20.1305 + 48, 44, 48, 44, 48, 10, 104, 101, 97, 114, 116, 115, 32, 58, 10, 32, 20.1306 + 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 104, 101, 97, 114, 116, 20.1307 + 32, 102, 105, 108, 116, 101, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 20.1308 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 20.1309 + 45, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 32, 45, 110, 20.1310 + 111, 105, 115, 101, 91, 45, 49, 93, 32, 49, 48, 44, 50, 32, 45, 114, 20.1311 + 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 110, 91, 45, 49, 93, 20.1312 + 32, 48, 44, 49, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 20.1313 + 95, 104, 101, 97, 114, 116, 57, 120, 55, 10, 32, 32, 45, 109, 105, 114, 20.1314 + 114, 111, 114, 91, 45, 49, 93, 32, 121, 32, 45, 100, 105, 108, 97, 116, 20.1315 + 101, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 20.1316 + 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 67, 111, 108, 111, 114, 32, 20.1317 + 101, 108, 108, 105, 112, 115, 101, 115, 46, 10, 35, 45, 45, 45, 45, 45, 20.1318 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 20.1319 + 105, 99, 32, 99, 111, 108, 111, 114, 95, 101, 108, 108, 105, 112, 115, 101, 20.1320 + 115, 32, 58, 32, 39, 111, 112, 97, 99, 105, 116, 121, 61, 48, 46, 48, 20.1321 + 55, 39, 32, 58, 32, 65, 100, 100, 32, 114, 97, 110, 100, 111, 109, 32, 20.1322 + 99, 111, 108, 111, 114, 101, 100, 32, 101, 108, 108, 105, 112, 115, 101, 115, 20.1323 + 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.1324 + 103, 101, 46, 10, 95, 99, 111, 108, 111, 114, 95, 101, 108, 108, 105, 112, 20.1325 + 115, 101, 115, 32, 58, 10, 32, 32, 45, 105, 32, 49, 48, 32, 45, 102, 20.1326 + 91, 45, 49, 93, 32, 64, 123, 45, 50, 44, 48, 45, 57, 125, 32, 45, 20.1327 + 101, 108, 108, 105, 112, 115, 101, 91, 45, 51, 93, 32, 64, 45, 49, 32, 20.1328 + 45, 114, 109, 91, 45, 49, 93, 32, 45, 116, 114, 97, 110, 115, 108, 97, 20.1329 + 116, 101, 91, 45, 49, 93, 32, 48, 44, 49, 10, 99, 111, 108, 111, 114, 20.1330 + 95, 101, 108, 108, 105, 112, 115, 101, 115, 32, 58, 32, 45, 102, 108, 111, 20.1331 + 97, 116, 32, 36, 123, 49, 61, 48, 46, 48, 55, 125, 10, 32, 32, 45, 20.1332 + 101, 32, 34, 65, 100, 100, 32, 114, 97, 110, 100, 111, 109, 32, 99, 111, 20.1333 + 108, 111, 114, 101, 100, 32, 101, 108, 108, 105, 112, 115, 101, 115, 32, 116, 20.1334 + 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.1335 + 44, 32, 119, 105, 116, 104, 32, 111, 112, 97, 99, 105, 116, 121, 32, 36, 20.1336 + 49, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 45, 100, 105, 109, 101, 20.1337 + 110, 115, 105, 111, 110, 115, 91, 45, 49, 93, 32, 45, 114, 91, 45, 49, 20.1338 + 93, 32, 50, 120, 50, 120, 49, 120, 49, 120, 48, 32, 45, 109, 105, 114, 20.1339 + 114, 111, 114, 91, 45, 49, 93, 32, 120, 32, 49, 120, 52, 48, 48, 32, 20.1340 + 45, 114, 97, 110, 100, 91, 45, 49, 93, 32, 64, 123, 45, 50, 44, 48, 20.1341 + 44, 49, 125, 32, 45, 45, 114, 97, 110, 100, 91, 45, 49, 93, 32, 64, 20.1342 + 123, 45, 50, 44, 50, 44, 51, 125, 10, 32, 32, 45, 114, 109, 91, 45, 20.1343 + 51, 93, 32, 50, 120, 91, 45, 49, 93, 32, 45, 45, 100, 105, 109, 101, 20.1344 + 110, 115, 105, 111, 110, 115, 91, 45, 52, 93, 32, 45, 114, 91, 45, 49, 20.1345 + 93, 32, 50, 120, 50, 120, 49, 120, 49, 120, 48, 32, 45, 115, 91, 45, 20.1346 + 49, 93, 32, 121, 10, 32, 32, 45, 43, 91, 45, 50, 44, 45, 49, 93, 20.1347 + 32, 45, 109, 105, 114, 114, 111, 114, 91, 45, 49, 93, 32, 120, 32, 45, 20.1348 + 114, 97, 110, 100, 91, 45, 50, 93, 32, 64, 123, 45, 49, 44, 48, 44, 20.1349 + 49, 125, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 47, 91, 45, 49, 20.1350 + 93, 32, 49, 48, 32, 45, 45, 114, 97, 110, 100, 91, 45, 49, 93, 32, 20.1351 + 45, 49, 44, 49, 10, 32, 32, 49, 120, 91, 45, 49, 93, 32, 45, 102, 20.1352 + 91, 45, 49, 93, 32, 36, 49, 32, 51, 120, 91, 45, 49, 93, 32, 45, 20.1353 + 114, 97, 110, 100, 91, 45, 49, 93, 32, 49, 48, 44, 50, 53, 53, 32, 20.1354 + 45, 97, 91, 45, 54, 45, 45, 49, 93, 32, 120, 32, 45, 114, 101, 112, 20.1355 + 101, 97, 116, 32, 52, 48, 48, 32, 45, 95, 99, 111, 108, 111, 114, 95, 20.1356 + 101, 108, 108, 105, 112, 115, 101, 115, 32, 45, 100, 111, 110, 101, 32, 45, 20.1357 + 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 87, 104, 20.1358 + 105, 114, 108, 115, 32, 116, 101, 120, 116, 117, 114, 101, 46, 10, 35, 45, 20.1359 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1360 + 35, 64, 103, 109, 105, 99, 32, 119, 104, 105, 114, 108, 115, 32, 58, 32, 20.1361 + 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 100, 100, 32, 20.1362 + 114, 97, 110, 100, 111, 109, 32, 119, 104, 105, 114, 108, 32, 116, 101, 120, 20.1363 + 116, 117, 114, 101, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1364 + 32, 105, 109, 97, 103, 101, 46, 10, 119, 104, 105, 114, 108, 115, 32, 58, 20.1365 + 10, 32, 32, 45, 101, 32, 34, 65, 100, 100, 32, 114, 97, 110, 100, 111, 20.1366 + 109, 32, 119, 104, 105, 114, 108, 32, 116, 101, 120, 116, 117, 114, 101, 32, 20.1367 + 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1368 + 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 110, 91, 45, 49, 93, 20.1369 + 32, 48, 44, 50, 53, 53, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 20.1370 + 91, 45, 49, 93, 32, 45, 102, 91, 45, 49, 93, 32, 48, 32, 45, 110, 20.1371 + 111, 105, 115, 101, 91, 45, 49, 93, 32, 48, 46, 51, 44, 50, 32, 45, 20.1372 + 98, 108, 117, 114, 91, 45, 49, 93, 32, 51, 10, 32, 32, 45, 103, 114, 20.1373 + 97, 100, 105, 101, 110, 116, 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 20.1374 + 97, 91, 45, 51, 45, 45, 49, 93, 32, 118, 32, 45, 110, 111, 114, 109, 20.1375 + 91, 45, 49, 93, 32, 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 20.1376 + 98, 108, 117, 114, 91, 45, 49, 93, 32, 51, 32, 45, 103, 114, 97, 100, 20.1377 + 105, 101, 110, 116, 91, 45, 49, 93, 32, 120, 121, 122, 10, 32, 32, 45, 20.1378 + 97, 91, 45, 51, 45, 45, 49, 93, 32, 118, 32, 45, 110, 111, 114, 109, 20.1379 + 91, 45, 49, 93, 32, 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 20.1380 + 98, 108, 117, 114, 91, 45, 49, 93, 32, 51, 32, 45, 103, 114, 97, 100, 20.1381 + 105, 101, 110, 116, 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 97, 91, 20.1382 + 45, 51, 45, 45, 49, 93, 32, 118, 10, 32, 32, 45, 110, 111, 114, 109, 20.1383 + 91, 45, 49, 93, 32, 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 20.1384 + 98, 108, 117, 114, 91, 45, 49, 93, 32, 51, 32, 45, 103, 114, 97, 100, 20.1385 + 105, 101, 110, 116, 91, 45, 49, 93, 32, 120, 121, 122, 32, 45, 97, 91, 20.1386 + 45, 51, 45, 45, 49, 93, 32, 118, 32, 45, 110, 111, 114, 109, 91, 45, 20.1387 + 49, 93, 10, 32, 32, 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 20.1388 + 110, 91, 45, 49, 93, 32, 48, 46, 56, 44, 49, 46, 53, 32, 45, 114, 20.1389 + 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 42, 91, 45, 50, 44, 20.1390 + 45, 49, 93, 32, 45, 99, 117, 116, 91, 45, 49, 93, 32, 48, 44, 50, 20.1391 + 53, 53, 32, 45, 118, 43, 10, 10, 35, 32, 65, 100, 100, 32, 119, 97, 20.1392 + 116, 101, 114, 32, 114, 101, 102, 108, 101, 99, 116, 105, 111, 110, 46, 10, 20.1393 + 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1394 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 114, 20.1395 + 101, 102, 108, 101, 99, 116, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 20.1396 + 115, 41, 32, 58, 32, 65, 100, 100, 32, 119, 97, 116, 101, 114, 32, 114, 20.1397 + 101, 102, 108, 101, 99, 116, 105, 111, 110, 32, 101, 102, 102, 101, 99, 116, 20.1398 + 32, 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.1399 + 103, 101, 46, 10, 114, 101, 102, 108, 101, 99, 116, 32, 58, 10, 32, 32, 20.1400 + 45, 101, 32, 34, 65, 100, 100, 32, 119, 97, 116, 101, 114, 32, 114, 101, 20.1401 + 102, 108, 101, 99, 116, 105, 111, 110, 32, 101, 102, 102, 101, 99, 116, 32, 20.1402 + 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1403 + 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 20.1404 + 97, 116, 32, 91, 45, 49, 93, 32, 45, 109, 105, 114, 114, 111, 114, 91, 20.1405 + 45, 49, 93, 32, 121, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 20.1406 + 37, 120, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 51, 32, 45, 115, 20.1407 + 91, 45, 49, 93, 32, 118, 32, 45, 42, 91, 45, 51, 93, 32, 48, 46, 20.1408 + 56, 10, 32, 32, 45, 42, 91, 45, 50, 93, 32, 48, 46, 57, 32, 45, 20.1409 + 97, 91, 45, 51, 45, 45, 49, 93, 32, 118, 32, 45, 119, 97, 116, 101, 20.1410 + 114, 32, 51, 48, 44, 49, 46, 53, 32, 49, 120, 50, 32, 45, 102, 91, 20.1411 + 45, 49, 93, 32, 49, 44, 48, 32, 45, 114, 91, 45, 49, 93, 32, 91, 20.1412 + 45, 50, 93, 120, 51, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 10, 20.1413 + 32, 32, 45, 97, 91, 45, 50, 44, 45, 49, 93, 32, 121, 32, 45, 118, 20.1414 + 43, 10, 10, 35, 32, 66, 38, 87, 32, 69, 100, 103, 101, 32, 102, 105, 20.1415 + 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1416 + 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 20.1417 + 101, 100, 103, 101, 115, 32, 58, 32, 39, 116, 104, 114, 101, 115, 104, 111, 20.1418 + 108, 100, 61, 51, 48, 39, 32, 58, 32, 69, 115, 116, 105, 109, 97, 116, 20.1419 + 101, 32, 105, 109, 97, 103, 101, 32, 99, 111, 110, 116, 111, 117, 114, 115, 20.1420 + 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.1421 + 103, 101, 46, 10, 101, 100, 103, 101, 115, 32, 58, 32, 45, 102, 108, 111, 20.1422 + 97, 116, 32, 36, 123, 49, 61, 51, 48, 125, 10, 32, 32, 45, 101, 32, 20.1423 + 34, 69, 115, 116, 105, 109, 97, 116, 101, 32, 108, 97, 115, 116, 32, 105, 20.1424 + 109, 97, 103, 101, 32, 99, 111, 110, 116, 111, 117, 114, 115, 44, 32, 119, 20.1425 + 105, 116, 104, 32, 116, 104, 114, 101, 115, 104, 111, 108, 100, 32, 36, 49, 20.1426 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 20.1427 + 116, 32, 91, 45, 49, 93, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 20.1428 + 50, 53, 53, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 95, 110, 111, 20.1429 + 114, 109, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 48, 46, 53, 20.1430 + 10, 32, 32, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 49, 20.1431 + 93, 32, 36, 49, 37, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 20.1432 + 45, 49, 93, 32, 48, 32, 45, 101, 113, 117, 97, 108, 105, 122, 101, 91, 20.1433 + 45, 49, 93, 32, 50, 53, 54, 32, 45, 42, 91, 45, 49, 93, 32, 45, 20.1434 + 49, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 10, 32, 20.1435 + 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 114, 109, 20.1436 + 91, 45, 50, 93, 32, 45, 118, 43, 10, 10, 35, 32, 67, 97, 114, 116, 20.1437 + 111, 111, 110, 32, 101, 102, 102, 101, 99, 116, 46, 10, 35, 45, 45, 45, 20.1438 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.1439 + 103, 109, 105, 99, 32, 99, 97, 114, 116, 111, 111, 110, 32, 58, 32, 39, 20.1440 + 116, 104, 114, 101, 115, 104, 111, 108, 100, 61, 51, 48, 39, 32, 58, 32, 20.1441 + 65, 112, 112, 108, 121, 32, 99, 97, 114, 116, 111, 111, 110, 32, 101, 102, 20.1442 + 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1443 + 32, 105, 109, 97, 103, 101, 46, 10, 99, 97, 114, 116, 111, 111, 110, 32, 20.1444 + 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 51, 48, 125, 20.1445 + 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 99, 97, 114, 20.1446 + 116, 111, 111, 110, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 20.1447 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 20.1448 + 105, 116, 104, 32, 116, 104, 114, 101, 115, 104, 111, 108, 100, 32, 36, 49, 20.1449 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 20.1450 + 116, 32, 91, 45, 49, 93, 120, 50, 32, 45, 101, 100, 103, 101, 115, 32, 20.1451 + 36, 49, 32, 45, 114, 91, 45, 50, 93, 32, 56, 120, 56, 120, 49, 120, 20.1452 + 51, 44, 50, 32, 45, 114, 91, 45, 51, 93, 32, 49, 48, 48, 37, 120, 20.1453 + 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 51, 10, 32, 32, 45, 114, 20.1454 + 103, 98, 50, 108, 117, 116, 91, 45, 51, 93, 32, 91, 45, 50, 93, 32, 20.1455 + 45, 108, 117, 116, 50, 114, 103, 98, 91, 45, 51, 93, 32, 91, 45, 50, 20.1456 + 93, 32, 45, 114, 109, 91, 45, 50, 93, 32, 45, 98, 108, 117, 114, 91, 20.1457 + 45, 50, 93, 32, 50, 32, 45, 42, 91, 45, 50, 45, 45, 49, 93, 32, 20.1458 + 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 20.1459 + 10, 10, 35, 32, 68, 114, 97, 119, 105, 110, 103, 32, 101, 102, 102, 101, 20.1460 + 99, 116, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1461 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 100, 114, 97, 20.1462 + 119, 105, 110, 103, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 20.1463 + 32, 58, 32, 65, 112, 112, 108, 121, 32, 100, 114, 97, 119, 105, 110, 103, 20.1464 + 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 20.1465 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 100, 114, 97, 119, 105, 20.1466 + 110, 103, 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 20.1467 + 32, 100, 114, 97, 119, 105, 110, 103, 32, 101, 102, 102, 101, 99, 116, 32, 20.1468 + 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1469 + 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 20.1470 + 97, 116, 32, 45, 115, 109, 111, 111, 116, 104, 91, 45, 49, 93, 32, 50, 20.1471 + 48, 48, 44, 48, 46, 50, 44, 49, 44, 51, 44, 51, 32, 45, 98, 108, 20.1472 + 117, 114, 91, 45, 49, 93, 32, 50, 32, 45, 115, 104, 97, 114, 112, 101, 20.1473 + 110, 91, 45, 49, 93, 32, 49, 48, 48, 48, 32, 91, 45, 49, 93, 10, 20.1474 + 32, 32, 45, 114, 91, 45, 50, 93, 32, 50, 48, 120, 50, 48, 120, 49, 20.1475 + 120, 51, 44, 50, 32, 45, 101, 113, 117, 97, 108, 105, 122, 101, 91, 45, 20.1476 + 50, 93, 32, 50, 53, 54, 32, 45, 114, 103, 98, 50, 108, 117, 116, 91, 20.1477 + 45, 49, 93, 32, 91, 45, 50, 93, 44, 49, 32, 45, 108, 117, 116, 50, 20.1478 + 114, 103, 98, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 114, 109, 20.1479 + 91, 45, 50, 93, 32, 45, 118, 43, 10, 10, 35, 32, 87, 104, 105, 114, 20.1480 + 108, 32, 100, 114, 97, 119, 105, 110, 103, 32, 101, 102, 102, 101, 99, 116, 20.1481 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1482 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.1483 + 32, 100, 114, 97, 119, 95, 119, 104, 105, 114, 108, 32, 58, 32, 40, 110, 20.1484 + 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 121, 32, 20.1485 + 119, 104, 105, 114, 108, 32, 100, 114, 97, 119, 105, 110, 103, 32, 101, 102, 20.1486 + 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1487 + 32, 105, 109, 97, 103, 101, 46, 10, 100, 114, 97, 119, 95, 119, 104, 105, 20.1488 + 114, 108, 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 20.1489 + 32, 119, 104, 105, 114, 108, 32, 100, 114, 97, 119, 105, 110, 103, 32, 101, 20.1490 + 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1491 + 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 20.1492 + 45, 116, 32, 102, 108, 111, 97, 116, 32, 49, 48, 48, 37, 120, 49, 48, 20.1493 + 48, 37, 32, 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 55, 48, 20.1494 + 44, 50, 32, 45, 42, 91, 45, 49, 93, 32, 50, 53, 53, 32, 45, 114, 20.1495 + 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 97, 110, 100, 91, 45, 20.1496 + 49, 44, 45, 50, 93, 32, 45, 115, 109, 111, 111, 116, 104, 91, 45, 49, 20.1497 + 93, 32, 49, 48, 48, 44, 48, 44, 49, 44, 50, 44, 50, 10, 32, 32, 20.1498 + 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 110, 91, 45, 49, 93, 20.1499 + 32, 48, 44, 50, 53, 53, 32, 45, 101, 113, 117, 97, 108, 105, 122, 101, 20.1500 + 91, 45, 49, 93, 32, 50, 53, 54, 32, 45, 118, 43, 10, 10, 35, 32, 20.1501 + 80, 97, 112, 101, 114, 32, 116, 101, 120, 116, 117, 114, 101, 46, 10, 35, 20.1502 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1503 + 35, 64, 103, 109, 105, 99, 32, 112, 97, 112, 101, 114, 95, 116, 101, 120, 20.1504 + 116, 117, 114, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 20.1505 + 32, 58, 32, 65, 100, 100, 32, 112, 97, 112, 101, 114, 32, 116, 101, 120, 20.1506 + 116, 117, 114, 101, 32, 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1507 + 32, 105, 109, 97, 103, 101, 46, 10, 112, 97, 112, 101, 114, 95, 116, 101, 20.1508 + 120, 116, 117, 114, 101, 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 100, 20.1509 + 100, 32, 112, 97, 112, 101, 114, 32, 116, 101, 120, 116, 117, 114, 101, 32, 20.1510 + 116, 111, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 20.1511 + 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 20.1512 + 97, 116, 32, 91, 45, 49, 93, 32, 51, 48, 37, 120, 51, 48, 37, 32, 20.1513 + 45, 110, 111, 105, 115, 101, 91, 45, 49, 93, 32, 49, 44, 50, 32, 45, 20.1514 + 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 93, 44, 20.1515 + 91, 45, 50, 93, 44, 49, 44, 48, 32, 45, 105, 102, 102, 116, 91, 45, 20.1516 + 49, 93, 10, 32, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 116, 114, 20.1517 + 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 32, 53, 48, 37, 120, 20.1518 + 53, 48, 37, 120, 53, 48, 37, 120, 48, 120, 50, 32, 45, 115, 104, 97, 20.1519 + 114, 112, 101, 110, 91, 45, 49, 93, 32, 49, 32, 45, 110, 91, 45, 49, 20.1520 + 93, 32, 49, 44, 49, 46, 50, 32, 45, 114, 91, 45, 49, 93, 32, 91, 20.1521 + 45, 50, 93, 10, 32, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 20.1522 + 45, 99, 117, 116, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 20.1523 + 50, 93, 32, 45, 114, 109, 91, 45, 50, 93, 32, 45, 118, 43, 10, 10, 20.1524 + 35, 32, 66, 38, 87, 32, 83, 116, 101, 110, 99, 105, 108, 32, 102, 105, 20.1525 + 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1526 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 20.1527 + 105, 99, 32, 115, 116, 101, 110, 99, 105, 108, 98, 119, 32, 58, 32, 40, 20.1528 + 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 121, 20.1529 + 32, 66, 38, 87, 32, 115, 116, 101, 110, 99, 105, 108, 32, 101, 102, 102, 20.1530 + 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.1531 + 105, 109, 97, 103, 101, 46, 10, 115, 116, 101, 110, 99, 105, 108, 98, 119, 20.1532 + 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 66, 20.1533 + 38, 87, 32, 115, 116, 101, 110, 99, 105, 108, 32, 101, 102, 102, 101, 99, 20.1534 + 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1535 + 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 114, 91, 45, 20.1536 + 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 49, 20.1537 + 48, 48, 37, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 91, 45, 49, 20.1538 + 93, 32, 45, 101, 100, 103, 101, 115, 32, 51, 48, 32, 45, 113, 117, 97, 20.1539 + 110, 116, 105, 122, 101, 91, 45, 50, 93, 32, 51, 32, 45, 98, 108, 117, 20.1540 + 114, 91, 45, 50, 93, 32, 49, 48, 10, 32, 32, 45, 115, 104, 97, 114, 20.1541 + 112, 101, 110, 91, 45, 50, 93, 32, 49, 48, 48, 48, 48, 48, 48, 32, 20.1542 + 45, 110, 111, 114, 109, 91, 45, 50, 93, 32, 45, 110, 91, 45, 50, 93, 20.1543 + 32, 48, 44, 49, 32, 45, 42, 91, 45, 49, 44, 45, 50, 93, 32, 45, 20.1544 + 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 118, 43, 10, 20.1545 + 10, 35, 32, 66, 38, 87, 32, 80, 101, 110, 99, 105, 108, 32, 102, 105, 20.1546 + 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1547 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 20.1548 + 99, 32, 112, 101, 110, 99, 105, 108, 98, 119, 32, 58, 32, 40, 110, 111, 20.1549 + 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 121, 32, 66, 20.1550 + 38, 87, 32, 112, 101, 110, 99, 105, 108, 32, 101, 102, 102, 101, 99, 116, 20.1551 + 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.1552 + 103, 101, 46, 10, 112, 101, 110, 99, 105, 108, 98, 119, 32, 58, 10, 32, 20.1553 + 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 66, 38, 87, 32, 112, 20.1554 + 101, 110, 99, 105, 108, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 20.1555 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 20.1556 + 32, 45, 118, 45, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 20.1557 + 120, 49, 48, 48, 37, 120, 49, 120, 49, 48, 48, 37, 10, 32, 32, 45, 20.1558 + 110, 111, 114, 109, 91, 45, 49, 93, 32, 45, 98, 108, 117, 114, 91, 45, 20.1559 + 49, 93, 32, 48, 46, 51, 32, 45, 115, 104, 97, 114, 112, 101, 110, 91, 20.1560 + 45, 49, 93, 32, 52, 48, 48, 48, 32, 45, 115, 109, 111, 111, 116, 104, 20.1561 + 91, 45, 49, 93, 32, 54, 48, 44, 48, 44, 49, 32, 45, 101, 113, 117, 20.1562 + 97, 108, 105, 122, 101, 91, 45, 49, 93, 32, 50, 53, 54, 10, 32, 32, 20.1563 + 45, 115, 113, 114, 116, 91, 45, 49, 93, 32, 45, 110, 91, 45, 49, 93, 20.1564 + 32, 48, 44, 50, 53, 53, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 20.1565 + 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 51, 32, 45, 118, 43, 10, 20.1566 + 10, 35, 32, 66, 38, 87, 32, 100, 105, 116, 104, 101, 114, 101, 100, 32, 20.1567 + 102, 105, 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.1568 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1569 + 35, 64, 103, 109, 105, 99, 32, 100, 105, 116, 104, 101, 114, 101, 100, 98, 20.1570 + 119, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 20.1571 + 67, 114, 101, 97, 116, 101, 32, 100, 105, 116, 104, 101, 114, 101, 100, 32, 20.1572 + 66, 38, 87, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 32, 116, 20.1573 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 100, 20.1574 + 105, 116, 104, 101, 114, 101, 100, 98, 119, 32, 58, 10, 32, 32, 45, 101, 20.1575 + 32, 34, 67, 114, 101, 97, 116, 101, 32, 100, 105, 116, 104, 101, 114, 101, 20.1576 + 100, 32, 66, 38, 87, 32, 118, 101, 114, 115, 105, 111, 110, 32, 111, 102, 20.1577 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.1578 + 34, 32, 45, 118, 45, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 50, 20.1579 + 53, 53, 10, 32, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 20.1580 + 120, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 51, 32, 45, 105, 32, 20.1581 + 50, 120, 49, 120, 49, 120, 51, 32, 45, 102, 91, 45, 49, 93, 32, 48, 20.1582 + 44, 50, 53, 53, 32, 45, 114, 103, 98, 50, 108, 117, 116, 91, 45, 50, 20.1583 + 93, 32, 91, 45, 49, 93, 44, 49, 10, 32, 32, 45, 108, 117, 116, 50, 20.1584 + 114, 103, 98, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 20.1585 + 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 66, 38, 87, 32, 20.1586 + 100, 111, 116, 115, 32, 101, 102, 102, 101, 99, 116, 46, 10, 35, 45, 45, 20.1587 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1588 + 35, 64, 103, 109, 105, 99, 32, 100, 111, 116, 115, 98, 119, 32, 58, 32, 20.1589 + 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 20.1590 + 121, 32, 66, 38, 87, 32, 100, 111, 116, 115, 32, 101, 102, 102, 101, 99, 20.1591 + 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1592 + 97, 103, 101, 46, 10, 100, 111, 116, 115, 98, 119, 32, 58, 10, 32, 32, 20.1593 + 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 66, 38, 87, 32, 100, 111, 20.1594 + 116, 115, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 20.1595 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 20.1596 + 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 110, 111, 20.1597 + 114, 109, 91, 45, 49, 93, 32, 45, 45, 114, 91, 45, 49, 93, 32, 49, 20.1598 + 48, 37, 120, 49, 48, 37, 120, 49, 120, 49, 120, 50, 32, 91, 45, 49, 20.1599 + 93, 120, 52, 32, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 20.1600 + 53, 93, 32, 49, 48, 37, 10, 32, 32, 45, 116, 104, 114, 101, 115, 104, 20.1601 + 111, 108, 100, 91, 45, 52, 93, 32, 51, 48, 37, 32, 45, 116, 104, 114, 20.1602 + 101, 115, 104, 111, 108, 100, 91, 45, 51, 93, 32, 53, 48, 37, 32, 45, 20.1603 + 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 50, 93, 32, 55, 48, 20.1604 + 37, 32, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 49, 93, 20.1605 + 32, 57, 48, 37, 10, 32, 32, 45, 114, 91, 45, 53, 45, 45, 49, 93, 20.1606 + 32, 91, 45, 54, 93, 44, 52, 32, 45, 116, 114, 97, 110, 115, 108, 97, 20.1607 + 116, 101, 91, 45, 53, 45, 45, 49, 93, 32, 45, 53, 44, 45, 53, 32, 20.1608 + 45, 114, 109, 91, 45, 54, 93, 32, 45, 95, 99, 105, 114, 99, 108, 101, 20.1609 + 32, 51, 32, 45, 100, 105, 108, 97, 116, 101, 91, 45, 54, 93, 32, 91, 20.1610 + 45, 49, 93, 10, 32, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 95, 20.1611 + 99, 105, 114, 99, 108, 101, 32, 53, 32, 45, 100, 105, 108, 97, 116, 101, 20.1612 + 91, 45, 53, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 20.1613 + 93, 32, 45, 95, 99, 105, 114, 99, 108, 101, 32, 55, 32, 45, 100, 105, 20.1614 + 108, 97, 116, 101, 91, 45, 52, 93, 32, 91, 45, 49, 93, 10, 32, 32, 20.1615 + 45, 114, 109, 91, 45, 49, 93, 32, 45, 95, 99, 105, 114, 99, 108, 101, 20.1616 + 32, 57, 32, 45, 100, 105, 108, 97, 116, 101, 91, 45, 51, 93, 32, 91, 20.1617 + 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 95, 99, 105, 20.1618 + 114, 99, 108, 101, 32, 49, 49, 32, 45, 100, 105, 108, 97, 116, 101, 91, 20.1619 + 45, 50, 93, 32, 91, 45, 49, 93, 10, 32, 32, 45, 114, 109, 91, 45, 20.1620 + 49, 93, 32, 45, 111, 114, 91, 45, 53, 45, 45, 49, 93, 32, 45, 110, 20.1621 + 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 114, 91, 45, 49, 20.1622 + 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 51, 32, 20.1623 + 45, 118, 43, 10, 10, 35, 32, 65, 110, 100, 121, 32, 87, 97, 114, 104, 20.1624 + 111, 108, 32, 115, 116, 121, 108, 101, 46, 10, 35, 45, 45, 45, 45, 45, 20.1625 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 20.1626 + 64, 103, 109, 105, 99, 32, 119, 97, 114, 104, 111, 108, 32, 58, 32, 39, 20.1627 + 77, 61, 51, 44, 78, 61, 77, 39, 32, 58, 32, 67, 114, 101, 97, 116, 20.1628 + 101, 32, 97, 32, 77, 120, 78, 32, 65, 110, 100, 121, 32, 87, 97, 114, 20.1629 + 104, 111, 108, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 20.1630 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 95, 119, 20.1631 + 97, 114, 104, 111, 108, 32, 58, 10, 32, 32, 91, 45, 49, 93, 32, 54, 20.1632 + 120, 49, 120, 49, 120, 49, 120, 51, 32, 45, 102, 91, 45, 51, 93, 32, 20.1633 + 48, 44, 49, 44, 50, 44, 51, 44, 52, 44, 53, 32, 45, 110, 91, 45, 20.1634 + 49, 93, 32, 48, 46, 50, 44, 48, 32, 45, 110, 91, 45, 51, 93, 32, 20.1635 + 48, 44, 50, 53, 53, 32, 45, 102, 91, 45, 50, 44, 45, 49, 93, 32, 20.1636 + 49, 50, 56, 32, 45, 110, 111, 105, 115, 101, 91, 45, 50, 44, 45, 49, 20.1637 + 93, 32, 54, 48, 44, 48, 32, 45, 97, 91, 45, 51, 45, 45, 49, 93, 20.1638 + 32, 118, 10, 32, 32, 45, 99, 117, 116, 91, 45, 49, 93, 32, 48, 44, 20.1639 + 50, 53, 53, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 91, 45, 20.1640 + 49, 93, 32, 45, 114, 91, 45, 49, 93, 32, 50, 53, 54, 120, 49, 120, 20.1641 + 49, 120, 51, 44, 51, 32, 45, 115, 113, 114, 91, 45, 49, 93, 32, 45, 20.1642 + 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 32, 45, 108, 117, 116, 20.1643 + 50, 114, 103, 98, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 20.1644 + 109, 91, 45, 49, 93, 32, 45, 109, 118, 91, 45, 49, 93, 32, 45, 50, 20.1645 + 10, 119, 97, 114, 104, 111, 108, 32, 58, 32, 45, 105, 110, 116, 32, 36, 20.1646 + 123, 49, 61, 51, 125, 44, 36, 123, 50, 61, 36, 49, 125, 10, 32, 32, 20.1647 + 45, 101, 32, 34, 67, 114, 101, 97, 116, 101, 32, 97, 32, 36, 49, 120, 20.1648 + 36, 50, 32, 65, 110, 100, 121, 32, 87, 97, 114, 104, 111, 108, 32, 101, 20.1649 + 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1650 + 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 20.1651 + 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 110, 111, 114, 109, 91, 45, 20.1652 + 49, 93, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 50, 32, 45, 20.1653 + 113, 117, 97, 110, 116, 105, 122, 101, 91, 45, 49, 93, 32, 54, 32, 45, 20.1654 + 110, 91, 45, 49, 93, 32, 48, 44, 50, 53, 53, 10, 32, 32, 45, 105, 20.1655 + 91, 48, 93, 32, 40, 36, 49, 41, 32, 45, 43, 91, 48, 93, 32, 36, 20.1656 + 50, 32, 45, 47, 91, 48, 93, 32, 50, 32, 45, 112, 111, 119, 91, 48, 20.1657 + 93, 32, 45, 49, 32, 45, 42, 91, 48, 93, 32, 49, 48, 48, 32, 45, 20.1658 + 114, 111, 117, 110, 100, 91, 48, 93, 32, 49, 44, 45, 49, 32, 45, 114, 20.1659 + 91, 45, 49, 93, 32, 64, 48, 37, 120, 64, 48, 37, 120, 49, 120, 49, 20.1660 + 44, 50, 10, 32, 32, 45, 102, 91, 48, 93, 32, 36, 49, 32, 45, 42, 20.1661 + 91, 48, 93, 32, 36, 50, 32, 45, 114, 101, 112, 101, 97, 116, 32, 64, 20.1662 + 48, 32, 45, 95, 119, 97, 114, 104, 111, 108, 32, 45, 100, 111, 110, 101, 20.1663 + 32, 45, 114, 109, 91, 48, 44, 45, 49, 93, 32, 45, 97, 112, 112, 101, 20.1664 + 110, 100, 95, 116, 105, 108, 101, 32, 36, 49, 44, 36, 50, 32, 45, 118, 20.1665 + 43, 10, 10, 35, 32, 67, 117, 98, 105, 115, 109, 46, 10, 35, 45, 45, 20.1666 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 99, 117, 20.1667 + 98, 105, 115, 109, 32, 58, 32, 39, 110, 98, 95, 105, 116, 101, 114, 61, 20.1668 + 49, 54, 48, 44, 98, 108, 111, 99, 95, 115, 105, 122, 101, 61, 51, 48, 20.1669 + 44, 109, 97, 120, 95, 97, 110, 103, 108, 101, 61, 55, 53, 44, 111, 112, 20.1670 + 97, 99, 105, 116, 121, 61, 48, 46, 55, 44, 115, 109, 111, 111, 116, 104, 20.1671 + 110, 101, 115, 115, 61, 48, 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 20.1672 + 99, 117, 98, 105, 115, 109, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 20.1673 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.1674 + 10, 95, 99, 117, 98, 105, 115, 109, 32, 58, 10, 32, 32, 32, 49, 120, 20.1675 + 49, 120, 49, 120, 49, 120, 50, 32, 45, 114, 97, 110, 100, 91, 45, 50, 20.1676 + 93, 32, 48, 44, 64, 123, 45, 51, 44, 48, 125, 32, 45, 114, 97, 110, 20.1677 + 100, 91, 45, 49, 93, 32, 48, 44, 64, 123, 45, 51, 44, 49, 125, 32, 20.1678 + 45, 97, 91, 45, 50, 44, 45, 49, 93, 32, 120, 32, 45, 114, 111, 117, 20.1679 + 110, 100, 91, 45, 49, 93, 32, 49, 32, 45, 45, 43, 91, 45, 49, 93, 20.1680 + 32, 36, 49, 32, 45, 45, 91, 45, 50, 93, 32, 36, 49, 10, 32, 32, 20.1681 + 32, 45, 45, 99, 114, 111, 112, 91, 45, 52, 93, 32, 64, 45, 50, 44, 20.1682 + 64, 45, 49, 44, 49, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 20.1683 + 36, 52, 32, 45, 45, 102, 91, 45, 49, 93, 32, 49, 32, 45, 114, 109, 20.1684 + 91, 45, 51, 93, 32, 49, 32, 45, 114, 97, 110, 100, 91, 45, 49, 93, 20.1685 + 32, 45, 36, 50, 44, 36, 50, 32, 45, 114, 111, 116, 97, 116, 101, 91, 20.1686 + 45, 51, 44, 45, 50, 93, 32, 64, 45, 49, 44, 48, 44, 48, 32, 45, 20.1687 + 114, 109, 91, 45, 49, 93, 10, 32, 32, 32, 45, 105, 109, 97, 103, 101, 20.1688 + 91, 45, 53, 93, 32, 91, 45, 50, 93, 44, 64, 45, 51, 44, 48, 44, 20.1689 + 36, 51, 44, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 51, 45, 45, 20.1690 + 49, 93, 10, 10, 99, 117, 98, 105, 115, 109, 32, 58, 32, 45, 105, 110, 20.1691 + 116, 32, 36, 123, 49, 61, 49, 54, 48, 125, 44, 36, 123, 50, 61, 51, 20.1692 + 48, 125, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 51, 61, 55, 53, 20.1693 + 125, 44, 36, 123, 52, 61, 48, 46, 55, 125, 44, 36, 123, 53, 61, 48, 20.1694 + 125, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 99, 117, 20.1695 + 98, 105, 115, 109, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 20.1696 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 20.1697 + 105, 116, 104, 32, 36, 49, 32, 105, 116, 101, 114, 97, 116, 105, 111, 110, 20.1698 + 115, 44, 32, 98, 108, 111, 99, 32, 115, 105, 122, 101, 32, 36, 50, 44, 20.1699 + 32, 109, 97, 120, 105, 109, 117, 109, 32, 97, 110, 103, 108, 101, 32, 36, 20.1700 + 51, 44, 32, 111, 112, 97, 99, 105, 116, 121, 32, 36, 52, 32, 97, 110, 20.1701 + 100, 32, 115, 109, 111, 111, 116, 104, 110, 101, 115, 115, 32, 36, 53, 46, 20.1702 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 45, 100, 105, 109, 101, 110, 115, 20.1703 + 105, 111, 110, 115, 91, 45, 49, 93, 32, 45, 114, 101, 112, 101, 97, 116, 20.1704 + 32, 36, 49, 32, 45, 95, 99, 117, 98, 105, 115, 109, 32, 36, 50, 44, 20.1705 + 36, 51, 44, 36, 52, 44, 36, 53, 32, 45, 100, 111, 110, 101, 32, 45, 20.1706 + 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 83, 111, 20.1707 + 102, 116, 32, 103, 108, 111, 119, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.1708 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 103, 108, 111, 20.1709 + 119, 32, 58, 32, 39, 97, 109, 112, 108, 105, 116, 117, 100, 101, 61, 51, 20.1710 + 39, 32, 58, 32, 65, 112, 112, 108, 121, 32, 103, 108, 111, 119, 32, 101, 20.1711 + 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1712 + 116, 32, 105, 109, 97, 103, 101, 46, 10, 103, 108, 111, 119, 32, 58, 32, 20.1713 + 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 51, 125, 10, 32, 32, 20.1714 + 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 103, 108, 111, 119, 32, 101, 20.1715 + 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1716 + 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 104, 32, 97, 109, 20.1717 + 112, 108, 105, 116, 117, 100, 101, 32, 36, 49, 46, 34, 10, 32, 32, 45, 20.1718 + 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 114, 91, 45, 20.1719 + 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 49, 120, 51, 20.1720 + 32, 45, 114, 103, 98, 50, 121, 99, 98, 99, 114, 91, 45, 49, 93, 32, 20.1721 + 45, 115, 91, 45, 49, 93, 32, 118, 32, 45, 45, 98, 108, 117, 114, 91, 20.1722 + 45, 51, 93, 32, 36, 49, 32, 45, 110, 91, 45, 49, 93, 32, 91, 45, 20.1723 + 52, 93, 32, 45, 43, 91, 45, 52, 44, 45, 49, 93, 32, 45, 47, 91, 20.1724 + 45, 51, 93, 32, 50, 10, 32, 32, 45, 97, 91, 45, 51, 45, 45, 49, 20.1725 + 93, 32, 118, 32, 45, 121, 99, 98, 99, 114, 50, 114, 103, 98, 91, 45, 20.1726 + 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 79, 108, 100, 32, 112, 104, 20.1727 + 111, 116, 111, 32, 102, 105, 108, 116, 101, 114, 46, 10, 35, 45, 45, 45, 20.1728 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1729 + 35, 64, 103, 109, 105, 99, 32, 111, 108, 100, 95, 112, 104, 111, 116, 111, 20.1730 + 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 20.1731 + 112, 112, 108, 121, 32, 111, 108, 100, 32, 112, 104, 111, 116, 111, 32, 101, 20.1732 + 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 20.1733 + 116, 32, 105, 109, 97, 103, 101, 46, 10, 111, 108, 100, 95, 112, 104, 111, 20.1734 + 116, 111, 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 20.1735 + 32, 111, 108, 100, 32, 112, 104, 111, 116, 111, 32, 101, 102, 102, 101, 99, 20.1736 + 116, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 20.1737 + 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 110, 111, 105, 20.1738 + 115, 101, 32, 50, 48, 32, 45, 98, 108, 117, 114, 32, 49, 32, 45, 115, 20.1739 + 104, 97, 114, 112, 101, 110, 32, 51, 48, 44, 49, 32, 45, 98, 108, 117, 20.1740 + 114, 32, 48, 46, 56, 32, 45, 102, 114, 97, 109, 101, 95, 102, 117, 122, 20.1741 + 122, 121, 32, 50, 48, 44, 50, 48, 44, 54, 44, 51, 32, 45, 100, 97, 20.1742 + 109, 112, 95, 112, 97, 116, 99, 104, 32, 48, 46, 55, 32, 45, 110, 32, 20.1743 + 48, 44, 50, 53, 53, 32, 45, 115, 101, 112, 105, 97, 32, 45, 118, 43, 20.1744 + 10, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1745 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 20.1746 + 32, 67, 111, 108, 111, 114, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 20.1747 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1748 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 67, 20.1749 + 111, 109, 112, 117, 116, 101, 32, 108, 117, 109, 105, 110, 97, 110, 99, 101, 20.1750 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1751 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 108, 117, 20.1752 + 109, 105, 110, 97, 110, 99, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 20.1753 + 103, 115, 41, 32, 58, 32, 67, 111, 109, 112, 117, 116, 101, 32, 108, 117, 20.1754 + 109, 105, 110, 97, 110, 99, 101, 32, 111, 102, 32, 116, 104, 101, 32, 108, 20.1755 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 108, 117, 109, 105, 110, 20.1756 + 97, 110, 99, 101, 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 20.1757 + 112, 117, 116, 101, 32, 108, 117, 109, 105, 110, 97, 110, 99, 101, 32, 111, 20.1758 + 102, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.1759 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 110, 91, 45, 49, 93, 32, 20.1760 + 48, 44, 50, 53, 53, 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 20.1761 + 37, 120, 49, 48, 48, 37, 120, 49, 120, 51, 32, 45, 114, 103, 98, 50, 20.1762 + 121, 99, 98, 99, 114, 91, 45, 49, 93, 32, 45, 99, 104, 97, 110, 110, 20.1763 + 101, 108, 115, 91, 45, 49, 93, 32, 48, 32, 45, 118, 43, 10, 10, 35, 20.1764 + 32, 65, 112, 112, 108, 121, 32, 97, 32, 51, 120, 51, 32, 116, 114, 97, 20.1765 + 110, 115, 102, 111, 114, 109, 97, 116, 105, 111, 110, 32, 109, 97, 116, 114, 20.1766 + 105, 120, 32, 116, 111, 32, 82, 71, 66, 32, 118, 101, 99, 116, 111, 114, 20.1767 + 115, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1768 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1769 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1770 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 109, 20.1771 + 105, 120, 95, 114, 103, 98, 32, 58, 32, 97, 49, 49, 44, 97, 49, 50, 20.1772 + 44, 97, 49, 51, 44, 97, 50, 49, 44, 97, 50, 50, 44, 97, 50, 51, 20.1773 + 44, 97, 51, 49, 44, 97, 51, 50, 44, 97, 51, 51, 32, 58, 32, 65, 20.1774 + 112, 112, 108, 121, 32, 51, 120, 51, 32, 115, 112, 101, 99, 105, 102, 105, 20.1775 + 101, 100, 32, 109, 97, 116, 114, 105, 120, 32, 116, 111, 32, 82, 71, 66, 20.1776 + 32, 99, 111, 108, 111, 114, 115, 46, 10, 109, 105, 120, 95, 114, 103, 98, 20.1777 + 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 49, 125, 20.1778 + 44, 36, 123, 50, 61, 48, 125, 44, 36, 123, 51, 61, 48, 125, 44, 36, 20.1779 + 123, 52, 61, 48, 125, 44, 36, 123, 53, 61, 49, 125, 44, 36, 123, 54, 20.1780 + 61, 48, 125, 44, 36, 123, 55, 61, 48, 125, 44, 36, 123, 56, 61, 48, 20.1781 + 125, 44, 36, 123, 57, 61, 49, 125, 10, 32, 32, 45, 101, 32, 34, 65, 20.1782 + 112, 112, 108, 121, 32, 109, 97, 116, 114, 105, 120, 32, 91, 32, 36, 49, 20.1783 + 32, 36, 50, 32, 36, 51, 32, 59, 32, 36, 52, 32, 36, 53, 32, 36, 20.1784 + 54, 32, 59, 32, 36, 55, 32, 36, 56, 32, 36, 57, 32, 93, 32, 116, 20.1785 + 111, 32, 82, 71, 66, 32, 112, 105, 120, 101, 108, 115, 32, 111, 102, 32, 20.1786 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 20.1787 + 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 20.1788 + 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 20.1789 + 120, 49, 120, 51, 44, 48, 44, 50, 32, 45, 115, 91, 45, 49, 93, 32, 20.1790 + 118, 10, 32, 32, 45, 45, 42, 91, 45, 51, 93, 32, 36, 52, 32, 45, 20.1791 + 45, 42, 91, 45, 51, 93, 32, 36, 53, 32, 45, 43, 91, 45, 49, 44, 20.1792 + 45, 50, 93, 32, 45, 45, 42, 91, 45, 50, 93, 32, 36, 54, 32, 45, 20.1793 + 43, 91, 45, 49, 44, 45, 50, 93, 10, 32, 32, 45, 45, 42, 91, 45, 20.1794 + 52, 93, 32, 36, 55, 32, 45, 45, 42, 91, 45, 52, 93, 32, 36, 56, 20.1795 + 32, 45, 43, 91, 45, 49, 44, 45, 50, 93, 32, 45, 45, 42, 91, 45, 20.1796 + 51, 93, 32, 36, 57, 32, 45, 43, 91, 45, 49, 44, 45, 50, 93, 10, 20.1797 + 32, 32, 45, 42, 91, 45, 53, 93, 32, 36, 49, 32, 45, 42, 91, 45, 20.1798 + 52, 93, 32, 36, 50, 32, 45, 42, 91, 45, 51, 93, 32, 36, 51, 32, 20.1799 + 45, 43, 91, 45, 53, 45, 45, 51, 93, 10, 32, 32, 45, 97, 91, 45, 20.1800 + 51, 45, 45, 49, 93, 32, 118, 32, 45, 118, 43, 10, 10, 35, 32, 83, 20.1801 + 111, 108, 97, 114, 105, 122, 101, 46, 10, 35, 45, 45, 45, 45, 45, 45, 20.1802 + 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 115, 111, 108, 97, 20.1803 + 114, 105, 122, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 20.1804 + 32, 58, 32, 65, 112, 112, 108, 121, 32, 115, 111, 108, 97, 114, 105, 122, 20.1805 + 97, 116, 105, 111, 110, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 20.1806 + 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 20.1807 + 115, 111, 108, 97, 114, 105, 122, 101, 32, 58, 10, 32, 32, 45, 101, 32, 20.1808 + 34, 65, 112, 112, 108, 121, 32, 115, 111, 108, 97, 114, 105, 122, 97, 116, 20.1809 + 105, 111, 110, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 20.1810 + 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 20.1811 + 32, 45, 118, 45, 32, 45, 108, 117, 109, 105, 110, 97, 110, 99, 101, 32, 20.1812 + 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 50, 56, 32, 45, 108, 117, 20.1813 + 116, 50, 114, 103, 98, 91, 45, 49, 93, 32, 49, 32, 45, 118, 43, 10, 20.1814 + 10, 35, 32, 83, 101, 112, 105, 97, 32, 102, 105, 108, 116, 101, 114, 46, 20.1815 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1816 + 10, 35, 64, 103, 109, 105, 99, 32, 115, 101, 112, 105, 97, 32, 58, 32, 20.1817 + 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 65, 112, 112, 108, 20.1818 + 121, 32, 115, 101, 112, 105, 97, 32, 116, 111, 110, 101, 115, 32, 102, 105, 20.1819 + 108, 116, 101, 114, 32, 111, 110, 32, 116, 104, 101, 32, 108, 97, 115, 116, 20.1820 + 32, 105, 109, 97, 103, 101, 46, 10, 95, 115, 101, 112, 105, 97, 32, 58, 20.1821 + 10, 32, 32, 45, 105, 32, 54, 120, 49, 120, 49, 120, 51, 32, 45, 102, 20.1822 + 91, 45, 49, 93, 32, 48, 44, 52, 52, 44, 49, 49, 53, 44, 49, 52, 20.1823 + 51, 44, 49, 57, 54, 44, 50, 52, 52, 44, 48, 44, 50, 48, 44, 56, 20.1824 + 52, 44, 49, 49, 57, 44, 49, 56, 52, 44, 50, 51, 53, 44, 48, 44, 20.1825 + 53, 44, 52, 52, 44, 55, 51, 44, 49, 52, 52, 44, 50, 48, 48, 32, 20.1826 + 45, 114, 91, 45, 49, 93, 32, 50, 53, 54, 120, 49, 120, 49, 120, 51, 20.1827 + 44, 51, 10, 115, 101, 112, 105, 97, 32, 58, 10, 32, 32, 45, 101, 32, 20.1828 + 34, 65, 112, 112, 108, 121, 32, 115, 101, 112, 105, 97, 32, 116, 111, 110, 20.1829 + 101, 115, 32, 102, 105, 108, 116, 101, 114, 32, 111, 110, 32, 116, 104, 101, 20.1830 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 20.1831 + 45, 118, 45, 32, 45, 108, 117, 109, 105, 110, 97, 110, 99, 101, 32, 45, 20.1832 + 95, 115, 101, 112, 105, 97, 32, 45, 108, 117, 116, 50, 114, 103, 98, 91, 20.1833 + 45, 50, 93, 32, 91, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 20.1834 + 32, 45, 118, 43, 10, 10, 35, 32, 78, 101, 103, 97, 116, 105, 118, 101, 20.1835 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.1836 + 103, 109, 105, 99, 32, 110, 101, 103, 97, 116, 105, 118, 101, 32, 58, 32, 20.1837 + 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 67, 111, 109, 112, 20.1838 + 117, 116, 101, 32, 110, 101, 103, 97, 116, 105, 118, 101, 32, 111, 102, 32, 20.1839 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 110, 101, 103, 97, 116, 20.1840 + 105, 118, 101, 46, 10, 110, 101, 103, 97, 116, 105, 118, 101, 32, 58, 10, 20.1841 + 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 101, 32, 110, 101, 20.1842 + 103, 97, 116, 105, 118, 101, 32, 111, 102, 32, 116, 104, 101, 32, 108, 97, 20.1843 + 115, 116, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 20.1844 + 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 42, 91, 45, 49, 93, 20.1845 + 32, 45, 49, 32, 91, 45, 49, 93, 32, 45, 115, 116, 97, 116, 115, 91, 20.1846 + 45, 49, 93, 32, 45, 99, 91, 45, 49, 93, 32, 48, 44, 48, 44, 48, 20.1847 + 44, 48, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 45, 20.1848 + 45, 91, 45, 49, 44, 45, 50, 93, 32, 45, 118, 43, 10, 10, 35, 32, 20.1849 + 83, 101, 108, 101, 99, 116, 32, 82, 71, 66, 32, 112, 105, 120, 101, 108, 20.1850 + 115, 32, 105, 110, 32, 97, 110, 32, 105, 109, 97, 103, 101, 46, 10, 35, 20.1851 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1852 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1853 + 10, 35, 64, 103, 109, 105, 99, 32, 115, 101, 108, 101, 99, 116, 95, 114, 20.1854 + 103, 98, 32, 58, 32, 39, 82, 61, 48, 44, 71, 61, 48, 44, 66, 61, 20.1855 + 48, 44, 116, 111, 108, 101, 114, 97, 110, 99, 101, 61, 49, 48, 39, 32, 20.1856 + 58, 32, 83, 101, 108, 101, 99, 116, 32, 82, 71, 66, 32, 99, 111, 108, 20.1857 + 111, 114, 101, 100, 32, 112, 105, 120, 101, 108, 115, 32, 105, 110, 32, 116, 20.1858 + 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 115, 20.1859 + 101, 108, 101, 99, 116, 95, 114, 103, 98, 32, 58, 10, 32, 32, 45, 101, 20.1860 + 32, 34, 83, 101, 108, 101, 99, 116, 32, 82, 71, 66, 32, 99, 111, 108, 20.1861 + 111, 114, 32, 40, 36, 40, 49, 61, 48, 41, 44, 36, 40, 50, 61, 48, 20.1862 + 41, 44, 36, 40, 51, 61, 48, 41, 41, 32, 105, 110, 32, 116, 104, 101, 20.1863 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 44, 32, 119, 105, 116, 20.1864 + 104, 32, 116, 111, 108, 101, 114, 97, 110, 99, 101, 32, 36, 40, 52, 61, 20.1865 + 51, 48, 41, 46, 34, 10, 32, 32, 45, 118, 45, 32, 49, 120, 49, 120, 20.1866 + 49, 120, 51, 32, 45, 102, 91, 45, 49, 93, 32, 36, 49, 44, 36, 50, 20.1867 + 44, 36, 51, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 32, 20.1868 + 45, 45, 91, 45, 50, 44, 45, 49, 93, 32, 45, 110, 111, 114, 109, 91, 20.1869 + 45, 49, 93, 32, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 20.1870 + 49, 93, 32, 36, 52, 32, 45, 110, 101, 103, 97, 116, 105, 118, 101, 32, 20.1871 + 45, 118, 43, 10, 10, 35, 32, 70, 105, 108, 108, 32, 105, 109, 97, 103, 20.1872 + 101, 32, 119, 105, 116, 104, 32, 82, 71, 66, 32, 99, 111, 108, 111, 114, 20.1873 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1874 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 20.1875 + 64, 103, 109, 105, 99, 32, 102, 105, 108, 108, 95, 114, 103, 98, 32, 58, 20.1876 + 32, 39, 82, 61, 48, 44, 71, 61, 48, 44, 66, 61, 48, 39, 32, 58, 20.1877 + 32, 70, 105, 108, 108, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 20.1878 + 32, 119, 105, 116, 104, 32, 115, 112, 101, 99, 105, 102, 105, 101, 100, 32, 20.1879 + 82, 71, 66, 32, 99, 111, 108, 111, 114, 46, 10, 102, 105, 108, 108, 95, 20.1880 + 114, 103, 98, 32, 58, 10, 32, 32, 45, 101, 32, 34, 70, 105, 108, 108, 20.1881 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 20.1882 + 32, 82, 71, 66, 32, 99, 111, 108, 111, 114, 32, 40, 36, 40, 49, 61, 20.1883 + 48, 41, 44, 36, 40, 50, 61, 36, 49, 41, 44, 36, 40, 51, 61, 36, 20.1884 + 50, 41, 41, 46, 34, 10, 32, 32, 45, 100, 105, 109, 101, 110, 115, 105, 20.1885 + 111, 110, 115, 91, 45, 49, 93, 32, 40, 36, 49, 94, 36, 50, 94, 36, 20.1886 + 51, 41, 32, 45, 114, 91, 45, 49, 93, 32, 64, 45, 50, 32, 45, 114, 20.1887 + 109, 91, 45, 50, 93, 10, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.1888 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1889 + 45, 10, 35, 10, 35, 32, 77, 111, 116, 105, 111, 110, 32, 114, 101, 108, 20.1890 + 97, 116, 101, 100, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 10, 35, 20.1891 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1892 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 67, 114, 111, 20.1893 + 115, 115, 45, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 32, 97, 20.1894 + 110, 100, 32, 110, 111, 114, 109, 97, 108, 105, 122, 101, 100, 32, 99, 114, 20.1895 + 111, 115, 115, 45, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 46, 20.1896 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1897 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1898 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1899 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 99, 20.1900 + 114, 111, 115, 115, 95, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 20.1901 + 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 67, 20.1902 + 111, 109, 112, 117, 116, 101, 32, 99, 114, 111, 115, 115, 45, 99, 111, 114, 20.1903 + 114, 101, 108, 97, 116, 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 110, 20.1904 + 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 20.1905 + 97, 103, 101, 115, 46, 10, 99, 114, 111, 115, 115, 95, 99, 111, 114, 114, 20.1906 + 101, 108, 97, 116, 105, 111, 110, 32, 58, 10, 32, 32, 45, 101, 32, 34, 20.1907 + 67, 111, 109, 112, 117, 116, 101, 32, 99, 114, 111, 115, 115, 45, 99, 111, 20.1908 + 114, 114, 101, 108, 97, 116, 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 20.1909 + 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 20.1910 + 109, 97, 103, 101, 115, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 20.1911 + 32, 102, 108, 111, 97, 116, 32, 45, 110, 111, 114, 109, 91, 45, 50, 44, 20.1912 + 45, 49, 93, 32, 45, 102, 102, 116, 91, 45, 50, 93, 32, 45, 102, 102, 20.1913 + 116, 91, 45, 49, 93, 32, 91, 45, 50, 44, 45, 49, 93, 32, 45, 109, 20.1914 + 117, 108, 91, 45, 50, 93, 32, 91, 45, 53, 93, 32, 45, 109, 117, 108, 20.1915 + 91, 45, 49, 93, 32, 91, 45, 54, 93, 10, 32, 32, 45, 45, 91, 45, 20.1916 + 50, 44, 45, 49, 93, 32, 45, 42, 91, 45, 53, 44, 45, 51, 93, 32, 20.1917 + 45, 42, 91, 45, 51, 44, 45, 50, 93, 32, 45, 43, 91, 45, 51, 44, 20.1918 + 45, 50, 93, 32, 45, 105, 102, 102, 116, 91, 45, 50, 44, 45, 49, 93, 20.1919 + 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 64, 20.1920 + 103, 109, 105, 99, 32, 110, 111, 114, 109, 97, 108, 105, 122, 101, 100, 95, 20.1921 + 99, 114, 111, 115, 115, 95, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 20.1922 + 110, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 20.1923 + 67, 111, 109, 112, 117, 116, 101, 32, 110, 111, 114, 109, 97, 108, 105, 122, 20.1924 + 101, 100, 32, 99, 114, 111, 115, 115, 45, 99, 111, 114, 114, 101, 108, 97, 20.1925 + 116, 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 20.1926 + 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 20.1927 + 46, 10, 110, 111, 114, 109, 97, 108, 105, 122, 101, 100, 95, 99, 114, 111, 20.1928 + 115, 115, 95, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 32, 58, 20.1929 + 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 101, 32, 110, 20.1930 + 111, 114, 109, 97, 108, 105, 122, 101, 100, 32, 99, 114, 111, 115, 115, 45, 20.1931 + 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 32, 98, 101, 116, 119, 20.1932 + 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 116, 20.1933 + 32, 105, 109, 97, 103, 101, 115, 46, 34, 10, 32, 32, 45, 118, 45, 32, 20.1934 + 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 110, 111, 114, 109, 91, 45, 20.1935 + 50, 44, 45, 49, 93, 32, 45, 102, 102, 116, 91, 45, 50, 93, 32, 45, 20.1936 + 102, 102, 116, 91, 45, 49, 93, 32, 91, 45, 50, 44, 45, 49, 93, 32, 20.1937 + 45, 109, 117, 108, 91, 45, 50, 93, 32, 91, 45, 53, 93, 32, 45, 109, 20.1938 + 117, 108, 91, 45, 49, 93, 32, 91, 45, 54, 93, 10, 32, 32, 45, 45, 20.1939 + 91, 45, 50, 44, 45, 49, 93, 32, 45, 42, 91, 45, 53, 44, 45, 51, 20.1940 + 93, 32, 45, 42, 91, 45, 51, 44, 45, 50, 93, 32, 45, 43, 91, 45, 20.1941 + 51, 44, 45, 50, 93, 32, 91, 45, 50, 44, 45, 49, 93, 32, 45, 97, 20.1942 + 91, 45, 50, 44, 45, 49, 93, 32, 118, 32, 45, 110, 111, 114, 109, 91, 20.1943 + 45, 49, 93, 10, 32, 32, 45, 47, 91, 45, 51, 93, 32, 91, 45, 49, 20.1944 + 93, 32, 45, 47, 91, 45, 50, 44, 45, 49, 93, 32, 45, 105, 102, 102, 20.1945 + 116, 91, 45, 50, 44, 45, 49, 93, 32, 45, 114, 109, 91, 45, 49, 93, 20.1946 + 32, 45, 118, 43, 10, 10, 35, 32, 80, 104, 97, 115, 101, 32, 99, 111, 20.1947 + 114, 114, 101, 108, 97, 116, 105, 111, 110, 46, 10, 35, 45, 45, 45, 45, 20.1948 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 20.1949 + 35, 64, 103, 109, 105, 99, 32, 112, 104, 97, 115, 101, 95, 99, 111, 114, 20.1950 + 114, 101, 108, 97, 116, 105, 111, 110, 32, 58, 32, 40, 110, 111, 32, 97, 20.1951 + 114, 103, 115, 41, 32, 58, 32, 69, 115, 116, 105, 109, 97, 116, 101, 32, 20.1952 + 116, 114, 97, 110, 115, 108, 97, 116, 105, 111, 110, 32, 118, 101, 99, 116, 20.1953 + 111, 114, 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 20.1954 + 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 32, 98, 20.1955 + 121, 32, 116, 104, 101, 32, 112, 104, 97, 115, 101, 32, 99, 111, 114, 114, 20.1956 + 101, 108, 97, 116, 105, 111, 110, 32, 109, 101, 116, 104, 111, 100, 46, 10, 20.1957 + 112, 104, 97, 115, 101, 95, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 20.1958 + 110, 32, 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 117, 116, 20.1959 + 101, 32, 112, 104, 97, 115, 101, 32, 99, 111, 114, 114, 101, 108, 97, 116, 20.1960 + 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 20.1961 + 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 46, 20.1962 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 110, 111, 114, 109, 97, 108, 105, 20.1963 + 122, 101, 100, 95, 99, 114, 111, 115, 115, 95, 99, 111, 114, 114, 101, 108, 20.1964 + 97, 116, 105, 111, 110, 32, 45, 115, 116, 97, 116, 115, 91, 45, 49, 93, 20.1965 + 32, 45, 99, 91, 45, 49, 93, 32, 48, 44, 56, 44, 48, 44, 49, 48, 20.1966 + 32, 45, 114, 91, 45, 49, 93, 32, 49, 44, 49, 44, 49, 44, 51, 44, 20.1967 + 45, 49, 32, 45, 118, 43, 10, 10, 35, 32, 67, 111, 109, 112, 117, 116, 20.1968 + 101, 32, 97, 32, 109, 111, 114, 112, 104, 105, 110, 103, 32, 115, 101, 113, 20.1969 + 117, 101, 110, 99, 101, 32, 40, 98, 101, 116, 119, 101, 101, 110, 32, 116, 20.1970 + 104, 101, 32, 116, 119, 111, 32, 108, 97, 116, 101, 115, 116, 32, 105, 109, 20.1971 + 97, 103, 101, 115, 41, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.1972 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1973 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1974 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.1975 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 109, 111, 114, 20.1976 + 112, 104, 32, 58, 32, 39, 78, 61, 49, 48, 44, 115, 109, 111, 111, 116, 20.1977 + 104, 110, 101, 115, 115, 61, 48, 46, 50, 39, 32, 58, 32, 67, 111, 109, 20.1978 + 112, 117, 116, 101, 32, 109, 111, 114, 112, 104, 105, 110, 103, 32, 115, 101, 20.1979 + 113, 117, 101, 110, 99, 101, 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 20.1980 + 104, 101, 32, 116, 119, 111, 32, 108, 97, 116, 101, 115, 116, 32, 105, 109, 20.1981 + 97, 103, 101, 115, 46, 10, 109, 111, 114, 112, 104, 32, 58, 32, 45, 105, 20.1982 + 110, 116, 32, 36, 123, 49, 61, 49, 48, 125, 32, 45, 102, 108, 111, 97, 20.1983 + 116, 32, 36, 123, 50, 61, 48, 46, 50, 125, 10, 32, 32, 45, 101, 32, 20.1984 + 34, 67, 111, 109, 112, 117, 116, 101, 32, 109, 111, 114, 112, 104, 105, 110, 20.1985 + 103, 32, 115, 101, 113, 117, 101, 110, 99, 101, 32, 119, 105, 116, 104, 32, 20.1986 + 36, 49, 32, 102, 114, 97, 109, 101, 115, 32, 97, 110, 100, 32, 115, 109, 20.1987 + 111, 111, 116, 104, 110, 101, 115, 115, 32, 36, 50, 46, 34, 10, 32, 32, 20.1988 + 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 114, 91, 20.1989 + 45, 49, 93, 32, 91, 45, 50, 93, 44, 51, 32, 91, 45, 50, 93, 32, 20.1990 + 45, 100, 105, 115, 112, 108, 97, 99, 101, 109, 101, 110, 116, 91, 45, 49, 20.1991 + 93, 32, 91, 45, 50, 93, 44, 36, 50, 10, 32, 32, 45, 119, 97, 114, 20.1992 + 112, 91, 45, 51, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 44, 49, 20.1993 + 44, 36, 49, 32, 45, 42, 91, 45, 49, 93, 32, 45, 49, 32, 45, 119, 20.1994 + 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 20.1995 + 44, 49, 44, 36, 49, 32, 45, 114, 109, 91, 45, 49, 93, 10, 32, 32, 20.1996 + 45, 97, 91, 45, 36, 49, 45, 45, 49, 93, 32, 122, 32, 45, 114, 101, 20.1997 + 118, 101, 114, 115, 101, 32, 45, 97, 91, 45, 36, 49, 45, 45, 49, 93, 20.1998 + 32, 122, 10, 32, 32, 49, 120, 49, 120, 50, 32, 45, 102, 91, 45, 49, 20.1999 + 93, 32, 48, 44, 49, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 20.2000 + 93, 44, 51, 32, 45, 42, 91, 45, 50, 93, 32, 91, 45, 49, 93, 32, 20.2001 + 45, 42, 91, 45, 49, 93, 32, 45, 49, 32, 45, 43, 91, 45, 49, 93, 20.2002 + 32, 49, 32, 45, 42, 91, 45, 51, 44, 45, 49, 93, 10, 32, 32, 45, 20.2003 + 43, 91, 45, 50, 44, 45, 49, 93, 32, 45, 115, 91, 45, 49, 93, 32, 20.2004 + 122, 32, 45, 114, 101, 118, 101, 114, 115, 101, 91, 45, 36, 49, 45, 45, 20.2005 + 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 82, 101, 103, 105, 115, 116, 20.2006 + 101, 114, 32, 116, 119, 111, 32, 108, 97, 116, 101, 115, 116, 32, 105, 109, 20.2007 + 97, 103, 101, 115, 32, 119, 105, 116, 104, 32, 97, 32, 114, 105, 103, 105, 20.2008 + 100, 32, 111, 114, 32, 110, 111, 110, 45, 114, 105, 103, 105, 100, 32, 119, 20.2009 + 97, 114, 112, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2010 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2011 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2012 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2013 + 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 114, 101, 103, 105, 115, 116, 20.2014 + 101, 114, 32, 58, 32, 39, 109, 101, 116, 104, 111, 100, 61, 48, 39, 32, 20.2015 + 58, 32, 82, 101, 103, 105, 115, 116, 101, 114, 32, 108, 97, 115, 116, 32, 20.2016 + 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 116, 104, 101, 32, 112, 20.2017 + 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 20.2018 + 32, 40, 39, 109, 101, 116, 104, 111, 100, 39, 32, 99, 97, 110, 32, 98, 20.2019 + 101, 32, 39, 123, 48, 61, 116, 114, 97, 110, 115, 108, 97, 116, 105, 111, 20.2020 + 110, 44, 32, 49, 61, 110, 111, 110, 45, 114, 105, 103, 105, 100, 32, 119, 20.2021 + 97, 114, 112, 125, 39, 41, 46, 10, 95, 114, 101, 103, 105, 115, 116, 101, 20.2022 + 114, 49, 32, 58, 10, 32, 32, 45, 101, 32, 34, 65, 108, 105, 103, 110, 20.2023 + 32, 108, 97, 115, 116, 32, 97, 110, 100, 32, 112, 101, 110, 117, 108, 116, 20.2024 + 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 115, 32, 119, 105, 116, 20.2025 + 104, 32, 110, 111, 110, 45, 114, 105, 103, 105, 100, 32, 119, 97, 114, 112, 20.2026 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 20.2027 + 116, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 51, 32, 20.2028 + 91, 45, 49, 93, 32, 45, 100, 105, 115, 112, 108, 97, 99, 101, 109, 101, 20.2029 + 110, 116, 91, 45, 49, 93, 32, 91, 45, 51, 93, 44, 49, 46, 50, 32, 20.2030 + 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 49, 20.2031 + 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 118, 43, 10, 95, 114, 101, 20.2032 + 103, 105, 115, 116, 101, 114, 48, 32, 58, 10, 32, 32, 45, 101, 32, 34, 20.2033 + 65, 108, 105, 103, 110, 32, 108, 97, 115, 116, 32, 97, 110, 100, 32, 112, 20.2034 + 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 20.2035 + 115, 32, 119, 105, 116, 104, 32, 116, 114, 97, 110, 115, 108, 97, 116, 105, 20.2036 + 111, 110, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 20.2037 + 111, 97, 116, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 20.2038 + 51, 32, 91, 45, 50, 44, 45, 49, 93, 32, 45, 98, 108, 117, 114, 91, 20.2039 + 45, 50, 44, 45, 49, 93, 32, 50, 32, 45, 101, 113, 117, 97, 108, 105, 20.2040 + 122, 101, 91, 45, 50, 44, 45, 49, 93, 32, 50, 53, 54, 32, 45, 112, 20.2041 + 104, 97, 115, 101, 95, 99, 111, 114, 114, 101, 108, 97, 116, 105, 111, 110, 20.2042 + 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 93, 44, 91, 45, 50, 20.2043 + 93, 10, 32, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 20.2044 + 49, 93, 44, 49, 44, 49, 44, 50, 44, 49, 32, 45, 114, 109, 91, 45, 20.2045 + 49, 93, 32, 45, 118, 43, 10, 114, 101, 103, 105, 115, 116, 101, 114, 32, 20.2046 + 58, 32, 45, 105, 110, 116, 32, 36, 123, 49, 61, 49, 125, 10, 32, 32, 20.2047 + 45, 105, 102, 32, 36, 49, 32, 45, 95, 114, 101, 103, 105, 115, 116, 101, 20.2048 + 114, 49, 32, 45, 101, 108, 115, 101, 32, 45, 95, 114, 101, 103, 105, 115, 20.2049 + 116, 101, 114, 48, 32, 45, 101, 110, 100, 105, 102, 10, 10, 35, 45, 45, 20.2050 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2051 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 10, 35, 32, 86, 105, 100, 101, 20.2052 + 111, 32, 114, 101, 108, 97, 116, 101, 100, 32, 102, 105, 108, 116, 101, 114, 20.2053 + 115, 10, 35, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2054 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 20.2055 + 35, 32, 68, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 32, 102, 114, 20.2056 + 97, 109, 101, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2057 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 20.2058 + 32, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 32, 58, 32, 39, 20.2059 + 109, 101, 116, 104, 111, 100, 61, 48, 39, 32, 58, 32, 68, 101, 105, 110, 20.2060 + 116, 101, 114, 108, 97, 99, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 20.2061 + 103, 101, 32, 98, 121, 32, 97, 32, 115, 105, 109, 112, 108, 101, 32, 97, 20.2062 + 108, 103, 111, 114, 105, 116, 104, 109, 32, 40, 39, 109, 101, 116, 104, 111, 20.2063 + 100, 39, 32, 99, 97, 110, 32, 98, 101, 32, 48, 61, 115, 105, 109, 112, 20.2064 + 108, 101, 32, 111, 114, 32, 49, 61, 109, 111, 116, 105, 111, 110, 45, 99, 20.2065 + 111, 109, 112, 101, 110, 115, 97, 116, 101, 100, 41, 46, 10, 95, 100, 101, 20.2066 + 105, 110, 116, 101, 114, 108, 97, 99, 101, 48, 32, 58, 10, 32, 32, 45, 20.2067 + 101, 32, 34, 68, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 32, 108, 20.2068 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 115, 20.2069 + 105, 109, 112, 108, 101, 32, 109, 101, 116, 104, 111, 100, 46, 34, 10, 32, 20.2070 + 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 107, 20.2071 + 91, 45, 49, 93, 32, 91, 45, 49, 93, 32, 45, 115, 91, 45, 49, 93, 20.2072 + 32, 121, 32, 45, 97, 91, 49, 45, 45, 49, 58, 50, 93, 32, 121, 32, 20.2073 + 45, 97, 91, 50, 45, 45, 49, 93, 32, 121, 32, 45, 114, 91, 45, 49, 20.2074 + 44, 45, 50, 93, 32, 91, 45, 51, 93, 120, 53, 32, 45, 43, 91, 45, 20.2075 + 49, 44, 45, 50, 93, 10, 32, 32, 45, 47, 91, 45, 49, 93, 32, 50, 20.2076 + 32, 45, 114, 109, 91, 45, 50, 93, 32, 45, 118, 43, 10, 95, 100, 101, 20.2077 + 105, 110, 116, 101, 114, 108, 97, 99, 101, 49, 32, 58, 10, 32, 32, 45, 20.2078 + 101, 32, 34, 68, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 32, 108, 20.2079 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 32, 109, 20.2080 + 111, 116, 105, 111, 110, 45, 99, 111, 109, 112, 101, 110, 115, 97, 116, 101, 20.2081 + 100, 32, 109, 101, 116, 104, 111, 100, 46, 34, 10, 32, 32, 45, 118, 45, 20.2082 + 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 107, 91, 45, 49, 93, 20.2083 + 32, 45, 115, 91, 45, 49, 93, 32, 121, 32, 45, 97, 91, 48, 45, 45, 20.2084 + 49, 58, 50, 93, 32, 121, 32, 45, 97, 91, 49, 45, 45, 49, 93, 32, 20.2085 + 121, 32, 45, 114, 91, 45, 50, 93, 32, 91, 45, 49, 93, 44, 48, 10, 20.2086 + 32, 32, 45, 114, 91, 45, 49, 44, 45, 50, 93, 32, 49, 48, 48, 37, 20.2087 + 120, 50, 48, 48, 37, 120, 49, 120, 49, 48, 48, 37, 120, 53, 32, 91, 20.2088 + 45, 50, 93, 32, 45, 100, 105, 115, 112, 108, 97, 99, 101, 109, 101, 110, 20.2089 + 116, 91, 45, 49, 93, 32, 91, 45, 50, 93, 120, 48, 46, 48, 49, 10, 20.2090 + 32, 32, 45, 119, 97, 114, 112, 91, 45, 51, 93, 32, 91, 45, 49, 93, 20.2091 + 44, 49, 44, 49, 44, 49, 44, 50, 32, 45, 42, 91, 45, 49, 93, 32, 20.2092 + 45, 49, 32, 45, 119, 97, 114, 112, 91, 45, 50, 93, 32, 91, 45, 49, 20.2093 + 93, 44, 49, 44, 49, 44, 49, 44, 50, 32, 45, 114, 109, 91, 45, 49, 20.2094 + 93, 32, 45, 107, 91, 45, 50, 44, 45, 52, 93, 32, 45, 43, 91, 45, 20.2095 + 49, 44, 45, 50, 93, 10, 32, 32, 45, 47, 91, 45, 49, 93, 32, 50, 20.2096 + 32, 45, 118, 43, 10, 100, 101, 105, 110, 116, 101, 114, 108, 97, 99, 101, 20.2097 + 32, 58, 10, 32, 32, 45, 95, 100, 101, 105, 110, 116, 101, 114, 108, 97, 20.2098 + 99, 101, 36, 123, 49, 61, 48, 93, 10, 10, 35, 32, 80, 114, 101, 100, 20.2099 + 97, 116, 111, 114, 32, 101, 102, 102, 101, 99, 116, 46, 32, 40, 102, 105, 20.2100 + 114, 115, 116, 32, 105, 109, 97, 103, 101, 32, 109, 117, 115, 116, 32, 98, 20.2101 + 101, 32, 116, 104, 101, 32, 114, 101, 102, 101, 114, 101, 110, 99, 101, 32, 20.2102 + 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 44, 32, 115, 101, 99, 111, 20.2103 + 110, 100, 32, 105, 109, 97, 103, 101, 32, 105, 115, 32, 116, 104, 101, 32, 20.2104 + 111, 110, 101, 32, 116, 111, 32, 112, 114, 111, 99, 101, 115, 115, 41, 46, 20.2105 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2106 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2107 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2108 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2109 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2110 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2111 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 112, 114, 101, 20.2112 + 100, 97, 116, 111, 114, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 20.2113 + 41, 32, 58, 32, 65, 112, 112, 108, 121, 32, 112, 114, 101, 100, 97, 116, 20.2114 + 111, 114, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 32, 116, 104, 101, 20.2115 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 117, 115, 105, 110, 20.2116 + 103, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 32, 97, 115, 32, 20.2117 + 116, 104, 101, 32, 112, 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 20.2118 + 105, 109, 97, 103, 101, 46, 10, 112, 114, 101, 100, 97, 116, 111, 114, 32, 20.2119 + 58, 10, 32, 32, 45, 101, 32, 34, 65, 112, 112, 108, 121, 32, 112, 114, 20.2120 + 101, 100, 97, 116, 111, 114, 32, 101, 102, 102, 101, 99, 116, 32, 111, 110, 20.2121 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 20.2122 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 20.2123 + 32, 45, 101, 113, 117, 97, 108, 105, 122, 101, 91, 45, 50, 45, 45, 49, 20.2124 + 93, 32, 50, 53, 54, 32, 45, 45, 91, 45, 49, 93, 32, 91, 45, 50, 20.2125 + 93, 32, 45, 115, 113, 114, 91, 45, 49, 93, 32, 45, 99, 117, 116, 91, 20.2126 + 45, 49, 93, 32, 50, 48, 37, 44, 49, 48, 48, 37, 10, 32, 32, 45, 20.2127 + 98, 108, 117, 114, 91, 45, 49, 93, 32, 49, 32, 45, 110, 91, 45, 49, 20.2128 + 93, 32, 48, 44, 51, 48, 32, 45, 99, 104, 97, 110, 110, 101, 108, 115, 20.2129 + 91, 45, 49, 93, 32, 48, 44, 49, 32, 45, 119, 97, 114, 112, 91, 45, 20.2130 + 50, 93, 32, 91, 45, 49, 93, 44, 49, 44, 49, 32, 45, 114, 109, 91, 20.2131 + 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 45, 45, 45, 45, 45, 45, 20.2132 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2133 + 45, 45, 45, 10, 35, 10, 35, 32, 79, 116, 104, 101, 114, 32, 118, 97, 20.2134 + 114, 105, 111, 117, 115, 32, 102, 105, 108, 116, 101, 114, 115, 10, 35, 10, 20.2135 + 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2136 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 10, 35, 32, 72, 111, 20.2137 + 114, 105, 122, 111, 110, 116, 97, 108, 32, 102, 97, 100, 105, 110, 103, 46, 20.2138 + 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2139 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 102, 97, 100, 20.2140 + 101, 95, 120, 32, 58, 32, 39, 115, 116, 97, 114, 116, 61, 51, 48, 44, 20.2141 + 101, 110, 100, 61, 55, 48, 39, 32, 58, 32, 67, 114, 101, 97, 116, 101, 20.2142 + 32, 97, 110, 32, 104, 111, 114, 105, 122, 111, 110, 116, 97, 108, 32, 102, 20.2143 + 97, 100, 105, 110, 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 20.2144 + 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 20.2145 + 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 32, 40, 39, 115, 20.2146 + 116, 97, 114, 116, 39, 32, 97, 110, 100, 32, 39, 101, 110, 100, 39, 32, 20.2147 + 105, 110, 32, 91, 48, 46, 46, 49, 48, 48, 93, 41, 46, 10, 95, 102, 20.2148 + 97, 100, 101, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 20.2149 + 61, 51, 48, 125, 44, 36, 123, 50, 61, 55, 48, 125, 10, 32, 32, 45, 20.2150 + 116, 32, 102, 108, 111, 97, 116, 32, 45, 114, 91, 45, 50, 93, 32, 91, 20.2151 + 45, 51, 93, 44, 53, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 50, 20.2152 + 93, 44, 51, 32, 45, 99, 117, 116, 91, 45, 49, 93, 32, 36, 49, 37, 20.2153 + 44, 36, 50, 37, 32, 45, 110, 91, 45, 49, 93, 32, 48, 44, 49, 32, 20.2154 + 45, 45, 42, 91, 45, 49, 93, 32, 45, 49, 32, 45, 43, 91, 45, 49, 20.2155 + 93, 32, 49, 32, 45, 42, 91, 45, 52, 44, 45, 49, 93, 32, 45, 42, 20.2156 + 91, 45, 50, 44, 45, 49, 93, 32, 45, 43, 91, 45, 50, 44, 45, 49, 20.2157 + 93, 10, 102, 97, 100, 101, 95, 120, 32, 58, 10, 32, 45, 101, 32, 34, 20.2158 + 67, 114, 101, 97, 116, 101, 32, 40, 36, 49, 37, 44, 36, 50, 37, 41, 20.2159 + 32, 104, 111, 114, 105, 122, 111, 110, 116, 97, 108, 32, 102, 97, 100, 105, 20.2160 + 110, 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 101, 20.2161 + 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 20.2162 + 115, 116, 32, 105, 109, 97, 103, 101, 115, 46, 34, 10, 32, 45, 118, 45, 20.2163 + 32, 50, 32, 45, 102, 91, 45, 49, 93, 32, 48, 44, 49, 32, 45, 95, 20.2164 + 102, 97, 100, 101, 32, 36, 49, 44, 36, 50, 32, 45, 118, 43, 10, 10, 20.2165 + 35, 32, 86, 101, 114, 116, 105, 99, 97, 108, 32, 102, 97, 100, 105, 110, 20.2166 + 103, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2167 + 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 102, 97, 100, 20.2168 + 101, 95, 121, 32, 58, 32, 39, 115, 116, 97, 114, 116, 61, 51, 48, 44, 20.2169 + 101, 110, 100, 61, 55, 48, 39, 32, 58, 32, 67, 114, 101, 97, 116, 101, 20.2170 + 32, 97, 32, 118, 101, 114, 116, 105, 99, 97, 108, 32, 102, 97, 100, 105, 20.2171 + 110, 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 101, 20.2172 + 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 20.2173 + 115, 116, 32, 105, 109, 97, 103, 101, 115, 32, 40, 39, 115, 116, 97, 114, 20.2174 + 116, 39, 32, 97, 110, 100, 32, 39, 101, 110, 100, 39, 32, 105, 110, 32, 20.2175 + 91, 48, 46, 46, 49, 48, 48, 93, 41, 46, 10, 102, 97, 100, 101, 95, 20.2176 + 121, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 61, 51, 20.2177 + 48, 125, 44, 36, 123, 50, 61, 55, 48, 125, 10, 32, 32, 45, 101, 32, 20.2178 + 34, 67, 114, 101, 97, 116, 101, 32, 40, 36, 49, 37, 44, 36, 50, 37, 20.2179 + 41, 32, 118, 101, 114, 116, 105, 99, 97, 108, 32, 102, 97, 100, 105, 110, 20.2180 + 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 101, 116, 20.2181 + 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 20.2182 + 116, 32, 105, 109, 97, 103, 101, 115, 46, 34, 10, 32, 32, 45, 118, 45, 20.2183 + 32, 49, 120, 50, 32, 45, 102, 91, 45, 49, 93, 32, 48, 44, 49, 32, 20.2184 + 45, 95, 102, 97, 100, 101, 32, 36, 49, 44, 36, 50, 32, 45, 118, 43, 20.2185 + 10, 10, 35, 32, 82, 97, 100, 105, 97, 108, 32, 102, 97, 100, 105, 110, 20.2186 + 103, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2187 + 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 102, 97, 100, 101, 95, 20.2188 + 114, 97, 100, 105, 97, 108, 32, 58, 32, 39, 115, 116, 97, 114, 116, 61, 20.2189 + 51, 48, 44, 101, 110, 100, 61, 55, 48, 39, 32, 58, 32, 67, 114, 101, 20.2190 + 97, 116, 101, 32, 114, 97, 100, 105, 97, 108, 32, 102, 97, 100, 105, 110, 20.2191 + 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 101, 116, 20.2192 + 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 20.2193 + 116, 32, 105, 109, 97, 103, 101, 115, 32, 40, 39, 115, 116, 97, 114, 116, 20.2194 + 39, 32, 97, 110, 100, 32, 39, 101, 110, 100, 39, 32, 105, 110, 32, 91, 20.2195 + 48, 46, 46, 49, 48, 48, 93, 41, 46, 10, 102, 97, 100, 101, 95, 114, 20.2196 + 97, 100, 105, 97, 108, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 20.2197 + 123, 49, 61, 51, 48, 125, 44, 36, 123, 50, 61, 55, 48, 125, 10, 32, 20.2198 + 32, 45, 101, 32, 34, 67, 114, 101, 97, 116, 101, 32, 40, 36, 49, 37, 20.2199 + 44, 36, 50, 37, 41, 32, 114, 97, 100, 105, 97, 108, 32, 102, 97, 100, 20.2200 + 105, 110, 103, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 20.2201 + 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 20.2202 + 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 46, 34, 10, 32, 32, 45, 20.2203 + 118, 45, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 32, 45, 112, 111, 20.2204 + 105, 110, 116, 32, 53, 48, 37, 44, 53, 48, 37, 44, 48, 44, 49, 44, 20.2205 + 49, 32, 45, 100, 105, 115, 116, 97, 110, 99, 101, 91, 45, 49, 93, 32, 20.2206 + 49, 32, 45, 95, 102, 97, 100, 101, 32, 36, 49, 44, 36, 50, 32, 45, 20.2207 + 118, 43, 10, 10, 35, 32, 68, 105, 97, 109, 111, 110, 100, 32, 102, 97, 20.2208 + 100, 105, 110, 103, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2209 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 102, 20.2210 + 97, 100, 101, 95, 100, 105, 97, 109, 111, 110, 100, 32, 58, 32, 39, 115, 20.2211 + 116, 97, 114, 116, 61, 55, 48, 44, 101, 110, 100, 61, 57, 48, 39, 32, 20.2212 + 58, 32, 67, 114, 101, 97, 116, 101, 32, 100, 105, 97, 109, 111, 110, 100, 20.2213 + 45, 115, 104, 97, 112, 101, 100, 32, 102, 97, 100, 105, 110, 103, 32, 116, 20.2214 + 114, 97, 110, 115, 105, 116, 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 20.2215 + 110, 32, 116, 104, 101, 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 20.2216 + 109, 97, 103, 101, 115, 32, 40, 39, 115, 116, 97, 114, 116, 39, 32, 97, 20.2217 + 110, 100, 32, 39, 101, 110, 100, 39, 32, 105, 110, 32, 91, 48, 46, 46, 20.2218 + 49, 48, 48, 93, 41, 46, 10, 102, 97, 100, 101, 95, 100, 105, 97, 109, 20.2219 + 111, 110, 100, 32, 58, 32, 45, 102, 108, 111, 97, 116, 32, 36, 123, 49, 20.2220 + 61, 55, 48, 125, 44, 36, 123, 50, 61, 57, 48, 125, 10, 32, 32, 45, 20.2221 + 101, 32, 34, 67, 114, 101, 97, 116, 101, 32, 40, 36, 49, 37, 44, 36, 20.2222 + 50, 37, 41, 32, 100, 105, 97, 109, 111, 110, 100, 45, 115, 104, 97, 112, 20.2223 + 101, 100, 32, 102, 97, 100, 105, 110, 103, 32, 116, 114, 97, 110, 115, 105, 20.2224 + 116, 105, 111, 110, 32, 98, 101, 116, 119, 101, 101, 110, 32, 116, 104, 101, 20.2225 + 32, 116, 119, 111, 32, 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 115, 20.2226 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 51, 120, 51, 32, 45, 102, 91, 20.2227 + 45, 49, 93, 32, 48, 44, 49, 44, 48, 44, 49, 44, 49, 44, 49, 44, 20.2228 + 48, 44, 49, 44, 48, 32, 45, 95, 102, 97, 100, 101, 32, 36, 49, 44, 20.2229 + 36, 50, 32, 45, 118, 43, 10, 10, 35, 32, 73, 109, 97, 103, 101, 32, 20.2230 + 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 32, 58, 32, 116, 114, 20.2231 + 121, 32, 116, 111, 32, 103, 101, 110, 101, 114, 97, 116, 101, 32, 97, 110, 20.2232 + 32, 105, 109, 97, 103, 101, 32, 99, 111, 110, 116, 97, 105, 110, 105, 110, 20.2233 + 103, 32, 97, 108, 108, 32, 100, 101, 116, 97, 105, 108, 115, 32, 111, 102, 20.2234 + 32, 97, 110, 32, 105, 109, 97, 103, 101, 32, 108, 105, 115, 116, 46, 10, 20.2235 + 35, 32, 85, 115, 97, 103, 101, 32, 58, 32, 103, 109, 105, 99, 32, 105, 20.2236 + 109, 97, 103, 101, 49, 46, 106, 112, 103, 32, 45, 99, 111, 109, 112, 111, 20.2237 + 115, 101, 95, 97, 100, 100, 32, 105, 109, 97, 103, 101, 50, 46, 106, 112, 20.2238 + 103, 32, 45, 99, 111, 109, 112, 111, 115, 101, 95, 97, 100, 100, 32, 46, 20.2239 + 46, 46, 32, 105, 109, 97, 103, 101, 78, 46, 106, 112, 103, 32, 32, 45, 20.2240 + 99, 111, 109, 112, 111, 115, 101, 95, 97, 100, 100, 32, 45, 99, 111, 109, 20.2241 + 112, 111, 115, 101, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2242 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2243 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2244 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2245 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2246 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2247 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 20.2248 + 99, 32, 99, 111, 109, 112, 111, 115, 101, 95, 97, 100, 100, 32, 58, 32, 20.2249 + 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 71, 101, 110, 101, 20.2250 + 114, 97, 116, 101, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 20.2251 + 32, 105, 109, 97, 103, 101, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 20.2252 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 32, 40, 116, 111, 32, 98, 20.2253 + 101, 32, 117, 115, 101, 100, 32, 119, 105, 116, 104, 32, 39, 45, 99, 111, 20.2254 + 109, 112, 111, 115, 101, 39, 41, 46, 10, 99, 111, 109, 112, 111, 115, 101, 20.2255 + 95, 97, 100, 100, 32, 58, 10, 32, 32, 45, 101, 32, 34, 71, 101, 110, 20.2256 + 101, 114, 97, 116, 101, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 20.2257 + 110, 32, 105, 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 20.2258 + 91, 45, 49, 93, 32, 45, 103, 114, 97, 100, 105, 101, 110, 116, 95, 110, 20.2259 + 111, 114, 109, 32, 45, 98, 108, 117, 114, 91, 45, 49, 93, 32, 50, 32, 20.2260 + 45, 110, 91, 45, 49, 93, 32, 49, 44, 49, 48, 32, 45, 115, 113, 114, 20.2261 + 91, 45, 49, 93, 32, 45, 115, 91, 45, 50, 93, 32, 118, 32, 45, 42, 20.2262 + 91, 45, 52, 93, 32, 91, 45, 49, 93, 10, 32, 32, 45, 42, 91, 45, 20.2263 + 51, 93, 32, 91, 45, 49, 93, 32, 45, 42, 91, 45, 50, 93, 32, 91, 20.2264 + 45, 49, 93, 32, 45, 97, 91, 45, 52, 45, 45, 49, 93, 32, 118, 32, 20.2265 + 45, 118, 43, 10, 10, 35, 64, 103, 109, 105, 99, 32, 99, 111, 109, 112, 20.2266 + 111, 115, 101, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 20.2267 + 58, 32, 67, 111, 109, 112, 111, 115, 101, 32, 105, 109, 97, 103, 101, 115, 20.2268 + 32, 111, 102, 32, 116, 104, 101, 32, 108, 105, 115, 116, 32, 116, 111, 103, 20.2269 + 101, 116, 104, 101, 114, 115, 46, 10, 99, 111, 109, 112, 111, 115, 101, 32, 20.2270 + 58, 10, 32, 32, 45, 101, 32, 34, 67, 111, 109, 112, 111, 115, 101, 32, 20.2271 + 97, 108, 108, 32, 105, 109, 97, 103, 101, 115, 32, 111, 102, 32, 116, 104, 20.2272 + 101, 32, 108, 105, 115, 116, 32, 116, 111, 103, 101, 116, 104, 101, 114, 115, 20.2273 + 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 114, 32, 91, 48, 93, 44, 20.2274 + 91, 48, 93, 44, 49, 44, 52, 44, 48, 32, 45, 114, 32, 91, 45, 49, 20.2275 + 93, 44, 51, 32, 45, 43, 32, 45, 115, 91, 45, 49, 93, 32, 118, 32, 20.2276 + 45, 47, 91, 45, 52, 93, 32, 91, 45, 49, 93, 32, 45, 47, 91, 45, 20.2277 + 51, 93, 32, 91, 45, 49, 93, 32, 45, 47, 91, 45, 50, 93, 32, 91, 20.2278 + 45, 49, 93, 10, 32, 32, 45, 114, 109, 91, 45, 49, 93, 32, 45, 97, 20.2279 + 32, 118, 32, 45, 118, 43, 10, 10, 35, 32, 77, 117, 108, 116, 105, 112, 20.2280 + 108, 121, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 10, 20.2281 + 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2282 + 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 99, 20.2283 + 111, 109, 112, 111, 115, 101, 95, 109, 117, 108, 116, 105, 112, 108, 121, 32, 20.2284 + 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 67, 111, 20.2285 + 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 112, 101, 110, 117, 108, 116, 20.2286 + 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 32, 119, 105, 116, 104, 20.2287 + 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 111, 110, 101, 44, 32, 117, 20.2288 + 115, 105, 110, 103, 32, 109, 117, 108, 116, 105, 112, 108, 121, 32, 99, 111, 20.2289 + 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 10, 99, 111, 109, 112, 111, 20.2290 + 115, 101, 95, 109, 117, 108, 116, 105, 112, 108, 121, 32, 58, 10, 32, 32, 20.2291 + 45, 101, 32, 34, 67, 111, 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 20.2292 + 112, 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 20.2293 + 101, 32, 119, 105, 116, 104, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.2294 + 111, 110, 101, 44, 32, 117, 115, 105, 110, 103, 32, 109, 117, 108, 116, 105, 20.2295 + 112, 108, 121, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 20.2296 + 34, 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 20.2297 + 32, 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 20.2298 + 37, 120, 49, 120, 91, 45, 50, 93, 32, 45, 114, 91, 45, 49, 93, 32, 20.2299 + 91, 45, 50, 93, 44, 51, 32, 45, 47, 91, 45, 49, 93, 32, 50, 53, 20.2300 + 53, 32, 45, 42, 91, 45, 50, 44, 45, 49, 93, 32, 45, 118, 43, 10, 20.2301 + 10, 35, 32, 83, 99, 114, 101, 101, 110, 32, 99, 111, 109, 112, 111, 115, 20.2302 + 105, 116, 105, 111, 110, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 20.2303 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 20.2304 + 103, 109, 105, 99, 32, 99, 111, 109, 112, 111, 115, 101, 95, 115, 99, 114, 20.2305 + 101, 101, 110, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 20.2306 + 58, 32, 67, 111, 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 112, 101, 20.2307 + 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 32, 20.2308 + 119, 105, 116, 104, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 111, 110, 20.2309 + 101, 44, 32, 117, 115, 105, 110, 103, 32, 115, 99, 114, 101, 101, 110, 32, 20.2310 + 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 10, 99, 111, 109, 20.2311 + 112, 111, 115, 101, 95, 115, 99, 114, 101, 101, 110, 32, 58, 10, 32, 32, 20.2312 + 45, 101, 32, 34, 67, 111, 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 20.2313 + 112, 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 20.2314 + 101, 32, 119, 105, 116, 104, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.2315 + 111, 110, 101, 44, 32, 117, 115, 105, 110, 103, 32, 115, 99, 114, 101, 101, 20.2316 + 110, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 34, 10, 20.2317 + 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 45, 20.2318 + 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 120, 20.2319 + 49, 120, 91, 45, 50, 93, 32, 45, 114, 91, 45, 49, 93, 32, 91, 45, 20.2320 + 50, 93, 44, 51, 32, 45, 47, 91, 45, 49, 93, 32, 50, 53, 53, 10, 20.2321 + 32, 32, 45, 42, 91, 45, 49, 93, 32, 49, 32, 45, 43, 91, 45, 49, 20.2322 + 93, 32, 49, 32, 45, 42, 91, 45, 50, 93, 32, 45, 49, 32, 45, 43, 20.2323 + 91, 45, 50, 93, 32, 50, 53, 53, 32, 45, 42, 91, 45, 50, 44, 45, 20.2324 + 49, 93, 32, 45, 42, 91, 45, 49, 93, 32, 45, 49, 32, 45, 43, 91, 20.2325 + 45, 49, 93, 32, 50, 53, 53, 32, 45, 118, 43, 10, 10, 35, 32, 79, 20.2326 + 118, 101, 114, 108, 97, 121, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 20.2327 + 111, 110, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2328 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 20.2329 + 99, 32, 99, 111, 109, 112, 111, 115, 101, 95, 111, 118, 101, 114, 108, 97, 20.2330 + 121, 32, 58, 32, 40, 110, 111, 32, 97, 114, 103, 115, 41, 32, 58, 32, 20.2331 + 67, 111, 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 112, 101, 110, 117, 20.2332 + 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 101, 32, 119, 105, 20.2333 + 116, 104, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 111, 110, 101, 44, 20.2334 + 32, 117, 115, 105, 110, 103, 32, 111, 118, 101, 114, 108, 97, 121, 32, 99, 20.2335 + 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 10, 99, 111, 109, 112, 20.2336 + 111, 115, 101, 95, 111, 118, 101, 114, 108, 97, 121, 32, 58, 10, 32, 32, 20.2337 + 45, 101, 32, 34, 67, 111, 109, 112, 111, 115, 101, 32, 116, 104, 101, 32, 20.2338 + 112, 101, 110, 117, 108, 116, 105, 109, 97, 116, 101, 32, 105, 109, 97, 103, 20.2339 + 101, 32, 119, 105, 116, 104, 32, 116, 104, 101, 32, 108, 97, 115, 116, 32, 20.2340 + 111, 110, 101, 44, 32, 117, 115, 105, 110, 103, 32, 111, 118, 101, 114, 108, 20.2341 + 97, 121, 32, 99, 111, 109, 112, 111, 115, 105, 116, 105, 111, 110, 46, 34, 20.2342 + 10, 32, 32, 45, 118, 45, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 20.2343 + 45, 114, 91, 45, 49, 93, 32, 49, 48, 48, 37, 120, 49, 48, 48, 37, 20.2344 + 120, 49, 120, 91, 45, 50, 93, 32, 45, 114, 91, 45, 49, 93, 32, 91, 20.2345 + 45, 50, 93, 44, 51, 32, 45, 47, 91, 45, 49, 93, 32, 50, 53, 53, 20.2346 + 10, 32, 32, 45, 45, 116, 104, 114, 101, 115, 104, 111, 108, 100, 91, 45, 20.2347 + 49, 93, 32, 48, 46, 53, 32, 45, 45, 42, 91, 45, 51, 93, 32, 52, 20.2348 + 32, 45, 43, 91, 45, 49, 93, 32, 53, 49, 48, 32, 45, 42, 91, 45, 20.2349 + 49, 93, 32, 91, 45, 51, 93, 32, 45, 45, 91, 45, 49, 93, 32, 50, 20.2350 + 53, 53, 10, 32, 32, 45, 42, 91, 45, 52, 93, 32, 50, 32, 45, 43, 20.2351 + 91, 45, 49, 93, 32, 91, 45, 52, 93, 32, 45, 42, 91, 45, 52, 44, 20.2352 + 45, 51, 93, 32, 45, 42, 91, 45, 51, 44, 45, 50, 93, 32, 45, 43, 20.2353 + 91, 45, 50, 44, 45, 49, 93, 32, 45, 118, 43, 10, 10, 35, 32, 80, 20.2354 + 114, 105, 110, 116, 32, 116, 104, 101, 32, 102, 97, 99, 116, 111, 114, 105, 20.2355 + 97, 108, 32, 111, 102, 32, 97, 110, 32, 105, 110, 116, 101, 103, 101, 114, 20.2356 + 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2357 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2358 + 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 99, 32, 102, 97, 20.2359 + 99, 116, 111, 114, 105, 97, 108, 32, 58, 32, 39, 78, 39, 32, 58, 32, 20.2360 + 80, 114, 105, 110, 116, 32, 116, 104, 101, 32, 102, 97, 99, 116, 111, 114, 20.2361 + 105, 97, 108, 32, 111, 102, 32, 116, 104, 101, 32, 105, 110, 116, 101, 103, 20.2362 + 101, 114, 32, 39, 78, 39, 46, 10, 102, 97, 99, 116, 111, 114, 105, 97, 20.2363 + 108, 32, 58, 32, 45, 105, 110, 116, 32, 36, 49, 10, 32, 32, 45, 118, 20.2364 + 45, 32, 40, 36, 49, 41, 32, 45, 43, 91, 45, 49, 93, 32, 49, 32, 20.2365 + 45, 105, 102, 32, 64, 45, 49, 32, 40, 49, 41, 32, 40, 49, 41, 32, 20.2366 + 45, 114, 101, 112, 101, 97, 116, 32, 36, 49, 32, 45, 42, 91, 45, 49, 20.2367 + 93, 32, 64, 45, 50, 32, 45, 43, 91, 45, 50, 93, 32, 49, 32, 45, 20.2368 + 100, 111, 110, 101, 32, 45, 118, 43, 32, 45, 101, 32, 34, 70, 97, 99, 20.2369 + 116, 111, 114, 105, 97, 108, 40, 36, 49, 41, 32, 61, 32, 64, 45, 49, 20.2370 + 34, 32, 45, 118, 45, 32, 45, 114, 109, 91, 45, 51, 45, 45, 49, 93, 20.2371 + 10, 32, 32, 45, 101, 108, 115, 101, 32, 45, 101, 99, 104, 111, 32, 34, 20.2372 + 70, 97, 99, 116, 111, 114, 105, 97, 108, 40, 36, 49, 41, 32, 105, 115, 20.2373 + 32, 117, 110, 100, 101, 102, 105, 110, 101, 100, 46, 34, 32, 45, 113, 32, 20.2374 + 45, 101, 110, 100, 105, 102, 32, 45, 118, 43, 10, 10, 35, 32, 84, 104, 20.2375 + 105, 115, 32, 105, 115, 32, 97, 32, 115, 117, 99, 107, 105, 110, 103, 32, 20.2376 + 101, 97, 115, 116, 101, 114, 45, 101, 103, 103, 32, 33, 32, 40, 82, 45, 20.2377 + 82, 97, 116, 101, 100, 41, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 20.2378 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2379 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2380 + 45, 45, 45, 10, 100, 105, 99, 107, 51, 100, 32, 58, 10, 32, 32, 45, 20.2381 + 101, 32, 34, 34, 10, 32, 32, 45, 101, 32, 34, 33, 33, 42, 42, 42, 20.2382 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2383 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2384 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2385 + 42, 42, 42, 42, 42, 33, 33, 34, 10, 32, 32, 45, 101, 32, 34, 33, 20.2386 + 33, 32, 67, 111, 110, 103, 114, 97, 116, 117, 108, 97, 116, 105, 111, 110, 20.2387 + 115, 32, 33, 32, 89, 111, 117, 32, 104, 97, 118, 101, 32, 102, 111, 117, 20.2388 + 110, 100, 32, 116, 104, 101, 32, 104, 105, 100, 100, 101, 110, 32, 69, 97, 20.2389 + 115, 116, 101, 114, 45, 101, 103, 103, 32, 33, 33, 34, 10, 32, 32, 45, 20.2390 + 101, 32, 34, 33, 33, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2391 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2392 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 20.2393 + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 33, 33, 34, 20.2394 + 10, 32, 32, 45, 101, 32, 34, 34, 10, 32, 32, 45, 118, 45, 32, 45, 20.2395 + 114, 109, 32, 45, 116, 32, 102, 108, 111, 97, 116, 32, 50, 32, 49, 120, 20.2396 + 50, 32, 49, 120, 49, 120, 50, 32, 45, 102, 32, 45, 49, 44, 49, 32, 20.2397 + 45, 114, 32, 49, 48, 48, 120, 49, 48, 48, 120, 49, 48, 48, 120, 49, 20.2398 + 120, 51, 32, 45, 115, 113, 114, 32, 45, 43, 32, 45, 42, 32, 45, 56, 20.2399 + 32, 45, 101, 120, 112, 10, 32, 32, 91, 48, 93, 120, 50, 32, 45, 116, 20.2400 + 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 32, 50, 48, 32, 20.2401 + 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 91, 45, 50, 93, 32, 45, 20.2402 + 50, 48, 32, 45, 43, 91, 45, 49, 44, 45, 50, 93, 32, 45, 116, 114, 20.2403 + 97, 110, 115, 108, 97, 116, 101, 91, 45, 49, 93, 32, 48, 44, 45, 50, 20.2404 + 48, 10, 32, 32, 45, 114, 91, 45, 50, 93, 32, 49, 48, 48, 120, 50, 20.2405 + 50, 48, 120, 49, 48, 48, 120, 49, 120, 51, 32, 45, 114, 91, 45, 50, 20.2406 + 93, 32, 49, 48, 48, 120, 49, 48, 48, 120, 49, 48, 48, 120, 51, 44, 20.2407 + 48, 44, 48, 44, 49, 32, 45, 116, 114, 97, 110, 115, 108, 97, 116, 101, 20.2408 + 91, 45, 50, 93, 32, 48, 44, 49, 48, 32, 45, 43, 10, 32, 32, 45, 20.2409 + 105, 115, 111, 118, 97, 108, 117, 101, 51, 100, 32, 48, 46, 53, 32, 45, 20.2410 + 114, 100, 51, 100, 32, 52, 32, 45, 100, 51, 100, 32, 45, 118, 43, 10, 20.2411 + 10, 35, 32, 67, 114, 101, 97, 116, 101, 32, 51, 68, 32, 99, 101, 110, 20.2412 + 116, 101, 114, 101, 100, 32, 117, 110, 105, 116, 32, 109, 97, 112, 112, 101, 20.2413 + 100, 32, 99, 117, 98, 101, 32, 102, 114, 111, 109, 32, 97, 110, 32, 105, 20.2414 + 109, 97, 103, 101, 46, 10, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2415 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2416 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 20.2417 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 10, 35, 64, 103, 109, 105, 20.2418 + 99, 32, 105, 109, 97, 103, 101, 99, 117, 98, 101, 51, 100, 32, 58, 32, 20.2419 + 39, 114, 101, 115, 111, 108, 117, 116, 105, 111, 110, 39, 32, 58, 32, 67, 20.2420 + 114, 101, 97, 116, 101, 32, 97, 32, 51, 68, 32, 109, 97, 112, 112, 101, 20.2421 + 100, 32, 99, 117, 98, 101, 32, 102, 114, 111, 109, 32, 116, 104, 101, 32, 20.2422 + 108, 97, 115, 116, 32, 105, 109, 97, 103, 101, 46, 10, 105, 109, 97, 103, 20.2423 + 101, 99, 117, 98, 101, 51, 100, 32, 58, 32, 45, 105, 110, 116, 32, 36, 20.2424 + 123, 49, 61, 49, 50, 56, 125, 10, 32, 32, 45, 101, 32, 34, 67, 114, 20.2425 + 101, 97, 116, 101, 32, 51, 68, 32, 109, 97, 112, 112, 101, 100, 32, 99, 20.2426 + 117, 98, 101, 32, 111, 102, 32, 115, 105, 122, 101, 32, 36, 49, 120, 36, 20.2427 + 49, 120, 36, 49, 32, 102, 114, 111, 109, 32, 108, 97, 115, 116, 32, 105, 20.2428 + 109, 97, 103, 101, 46, 34, 10, 32, 32, 45, 118, 45, 32, 45, 114, 91, 20.2429 + 45, 49, 93, 32, 36, 49, 44, 36, 49, 44, 49, 44, 45, 49, 48, 48, 20.2430 + 44, 50, 32, 45, 109, 105, 114, 114, 111, 114, 91, 45, 49, 93, 32, 120, 20.2431 + 32, 45, 101, 108, 101, 118, 97, 116, 105, 111, 110, 51, 100, 91, 45, 49, 20.2432 + 93, 32, 48, 32, 45, 99, 51, 100, 91, 45, 49, 93, 32, 45, 110, 51, 20.2433 + 100, 91, 45, 49, 93, 32, 45, 43, 51, 100, 91, 45, 49, 93, 32, 48, 20.2434 + 44, 48, 44, 48, 46, 53, 32, 45, 45, 114, 111, 116, 51, 100, 91, 45, 20.2435 + 49, 93, 32, 48, 44, 49, 44, 48, 44, 49, 56, 48, 10, 32, 32, 45, 20.2436 + 43, 51, 100, 91, 45, 50, 44, 45, 49, 93, 32, 45, 45, 114, 111, 116, 20.2437 + 51, 100, 91, 45, 49, 93, 32, 48, 44, 49, 44, 48, 44, 57, 48, 32, 20.2438 + 45, 45, 114, 111, 116, 51, 100, 91, 45, 50, 93, 32, 49, 44, 48, 44, 20.2439 + 48, 44, 57, 48, 32, 45, 43, 51, 100, 91, 45, 51, 45, 45, 49, 93, 20.2440 + 32, 45, 118, 43, 10, 10, 35, 32, 76, 111, 99, 97, 108, 32, 86, 97, 20.2441 + 114, 105, 97, 98, 108, 101, 115, 58, 10, 35, 32, 109, 111, 100, 101, 58, 20.2442 + 32, 115, 104, 10, 35, 32, 69, 110, 100, 58, 10, 35, 10, 35, 32, 40, 20.2443 + 69, 110, 100, 32, 111, 102, 32, 71, 39, 77, 73, 67, 32, 109, 97, 99, 20.2444 + 114, 111, 32, 102, 105, 108, 101, 41, 10, 0 };
21.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 21.2 +++ b/PTdecode/CImg-1.3.0/examples/gmic_def.raw Mon Aug 03 14:09:20 2009 +0100 21.3 @@ -0,0 +1,867 @@ 21.4 +# 21.5 +# File : gmic_def.raw 21.6 +# ( G'MIC default macro file ) 21.7 +# 21.8 +# Description : Define additional commands for G'MIC (GREYC's Magic Image Converter). 21.9 +# ( http://gmic.sourceforge.net ) 21.10 +# This file is also a part of the CImg Library project. 21.11 +# ( http://cimg.sourceforge.net ) 21.12 +# 21.13 +# Usage : gmic [-m gmic_def.raw] (...) 21.14 +# 21.15 +# Note : This file is here for illustration purposes, since commands defined in 21.16 +# the default macro file are already present by default in G'MIC. 21.17 +# Then, explicit inclusion of this file (using the '-m' option) if 21.18 +# useless. 21.19 +# 21.20 +# Copyright : David Tschumperle 21.21 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 21.22 +# 21.23 +# License : CeCILL v2.0 21.24 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 21.25 +# 21.26 +# This software is governed by the CeCILL license under French law and 21.27 +# abiding by the rules of distribution of free software. You can use, 21.28 +# modify and/ or redistribute the software under the terms of the CeCILL 21.29 +# license as circulated by CEA, CNRS and INRIA at the following URL 21.30 +# "http://www.cecill.info". 21.31 +# 21.32 +# As a counterpart to the access to the source code and rights to copy, 21.33 +# modify and redistribute granted by the license, users are provided only 21.34 +# with a limited warranty and the software's author, the holder of the 21.35 +# economic rights, and the successive licensors have only limited 21.36 +# liability. 21.37 +# 21.38 +# In this respect, the user's attention is drawn to the risks associated 21.39 +# with loading, using, modifying and/or developing or reproducing the 21.40 +# software by the user in light of its specific status of free software, 21.41 +# that may mean that it is complicated to manipulate, and that also 21.42 +# therefore means that it is reserved for developers and experienced 21.43 +# professionals having in-depth computer knowledge. Users are therefore 21.44 +# encouraged to load and test the software's suitability as regards their 21.45 +# requirements in conditions enabling the security of their systems and/or 21.46 +# data to be ensured and, more generally, to use and operate it in the 21.47 +# same conditions as regards security. 21.48 +# 21.49 +# The fact that you are presently reading this means that you have had 21.50 +# knowledge of the CeCILL license and that you accept its terms. 21.51 +# 21.52 + 21.53 +#---------------------------------------- 21.54 +# 21.55 +# Get and display image characteristics 21.56 +# 21.57 +#---------------------------------------- 21.58 + 21.59 +# Compute image gradient norm. 21.60 +#----------------------------- 21.61 +#@gmic gradient_norm : (no args) : Compute gradient norm of the last image. 21.62 +gradient_norm : 21.63 + -e "Compute gradient norm of the last image." 21.64 + -v- -t float -gradient[-1] xyz -a[-3--1] v -norm[-1] -sqrt[-1] -v+ 21.65 + 21.66 +# Compute image gradient orientation in 'N'-D. 21.67 +#--------------------------------------------- 21.68 +#@gmic gradient_orientation : N=3 : Compute N-D gradient orientation of the last image. 21.69 +_gradient_orientation3 : 21.70 + -gradient[-1] xyz --sqr[-3--1] -+[-3--1] -+[-1] 1e-8 -sqrt[-1] -/[-4,-3] [-1] -/[-2,-1] 21.71 +_gradient_orientation2 : 21.72 + -gradient[-1] xy --sqr[-2,-1] -+[-2,-1] -+[-1] 1e-8 -sqrt[-1] -/[-3] [-1] -/[-2,-1] 21.73 +_gradient_orientation1 : 21.74 + -gradient[-1] x --abs[-1] -+[-1] 1e-8 -/[-2,-1] 21.75 +gradient_orientation : -int ${1=3} 21.76 + -v- -if $1 (4) --[-1] $1 -if @-1 -rm[-1] 21.77 + -v+ -e "Compute $1-D gradient orientation of the last image." -v- 21.78 + -t float -_gradient_orientation$1 -else -v+ -e "Invalid argument '$1', should be '{1,2,3}'." -q 21.79 + -endif -else -v+ -e "Invalid argument '$1', should be '{1,2,3}'." -q 21.80 + -endif -v+ 21.81 + 21.82 +# Compute image laplacian. 21.83 +#------------------------- 21.84 +#@gmic laplacian : (no args) : Compute Laplacian of the last image. 21.85 +laplacian : 21.86 + -e "Compute image laplacian of the last image." 21.87 + -v- -t float -hessian[-1] xxyyzz -+[-3--1] -v+ 21.88 + 21.89 +# Compute oriented second derivative in the gradient direction. 21.90 +#-------------------------------------------------------------- 21.91 +#@gmic gradient_2derivative : (no args) : Compute gradient-directed 2nd derivative of the last image. 21.92 +gradient_2derivative : 21.93 + -e "Compute gradient-directed 2nd derivative of the last image." 21.94 + -v- -t float --gradient[-1] xyz -hessian[-4] xxxyxzyyyzzz 21.95 + --sqr[-3] -*[-10,-1] --sqr[-2] -*[-7,-1] --sqr[-1] -*[-5,-1] 21.96 + -*[-8,-7,-5] 2 -*[-8] [-3] -*[-8] [-2] -*[-7] [-3] -*[-7] [-1] -*[-5] [-2] -*[-5] [-1] 21.97 + -+[-9--4] -sqr[-3--1] -+[-3--1] -+[-1] 1e-8 -/[-2,-1] -v+ 21.98 + 21.99 +# Difference of Gaussians. 21.100 +#------------------------- 21.101 +#@gmic dog : 'sigma1=2','sigma2=3' : Compute edges in the last image by using difference of gaussian-filtered images. 21.102 +dog : -float ${1=2},${2=3} 21.103 + -e "Compute edges in the last image by difference of gaussian-filtered images, with standard deviations $1 and $2." 21.104 + -v- -t float --blur[-1] $1 -blur[-2] $2 --[-1,-2] -norm[-1] -v+ 21.105 + 21.106 +# Estimate isophote curvatures. 21.107 +#------------------------------ 21.108 +#@gmic curvature : (no args) : Estimate isophote curvatures of the last image. 21.109 +curvature : 21.110 + -e "Estimate isophote curvatures of the last image." 21.111 + -v- [-1]x2 -laplacian -mv[-1] -2 -gradient_2derivative --[-2,-1] 21.112 + -mv[-1] -2 -gradient_norm -+[-1] 1e-8 -/[-2,-1] -v+ 21.113 + 21.114 +# Complex<->polar transform (the two last images give the real and imaginary parts). 21.115 +#----------------------------------------------------------------------------------- 21.116 +#@gmic complex2polar : (no args) : Compute complex->polar transform (two last images are real and imaginary parts). 21.117 +complex2polar : 21.118 + -e "Compute complex to polar transform." 21.119 + -v- -t float -+[-2] 1e-8 --/[-1] [-2] -atan[-1] -sqr[-3,-2] -+[-3,-2] -sqrt[-2] -v+ 21.120 + 21.121 +#@gmic polar2complex : (no args) : Compute polar->complex transform (two last images are real and imaginary parts). 21.122 +polar2complex : 21.123 + -e "Compute polar to complex transform." 21.124 + -v- -t float [-1] -cos[-2] -sin[-1] -*[-1] [-3] -*[-3,-2] --[-2] 1e-8 -v+ 21.125 + 21.126 +# Fourier transform viewer with centered log-module and centered argument. 21.127 +#------------------------------------------------------------------------- 21.128 +#@gmic display_fft : (no args) : Display Fourier transform of the last image with centered log-module and argument (eq. to '-dfft'). 21.129 +display_fft : 21.130 + -e "Display Fourier transform of the last image." 21.131 + -v- -t float -fft[-1] -complex2polar -translate[-2,-1] 50%,50%,50%,0,2 -log[-2] -n 0,255 -v+ 21.132 +dfft : 21.133 + -display_fft 21.134 + 21.135 +# Render a RGBA image over a user-defined background. 21.136 +#---------------------------------------------------- 21.137 +#@gmic compose_rgba : (no args) : Render a RGBA image (last image) over a RGB background (penultimate image). 21.138 +compose_rgba : 21.139 + -e "Compose RGBA image with RGB background." 21.140 + -v- --[-1] 255 -r[-1] 100%x100%x1x4x0 -+[-1] 255 -r[-1] [-2],[-2],[-2],4,0 21.141 + -s[-1] v -a[-4--2] v -/[-1] 255 [-1] -negative -r[-4--1] 100%x100%x1x3 21.142 + -*[-4,-1] -*[-2,-1] -+[-2,-1] -v+ 21.143 + 21.144 +# Render a RGBA image over a synthetic checkerboard background. 21.145 +#-------------------------------------------------------------- 21.146 +#@gmic display_rgba : (no args) : Render a RGBA image (last image) over a synthetic background (eq. to '-drgba'). 21.147 +display_rgba : 21.148 + -e "Render RGBA image over synthetic background." 21.149 + -v- 2x2 -f[-1] 160,128,128,160 -mv[-1] -2 -r[-2] 16x16 -r[-2] [-1]x[-1]x1x3,0,2 -compose_rgba -v+ 21.150 +drgba : 21.151 + -display_rgba 21.152 + 21.153 +#----------------------------- 21.154 +# 21.155 +# Geometric filters 21.156 +# 21.157 +#----------------------------- 21.158 + 21.159 +# Image array. 21.160 +#------------- 21.161 +#@gmic array : 'M=3,N=M' : Create a MxN array from the last image. 21.162 +array : -int ${1=3},${2=$1} 21.163 + -e "Create a $1x$2 array from last image." 21.164 + -v- [-1]x$1 -rm[-1] -a[-$1--1] x [-1]x$2 -rm[-1] -a[-$2--1] y -v+ 21.165 + 21.166 +# Tiled array. 21.167 +#------------- 21.168 +#@gmic array_tile : 'M=3,N=M' : Create a MxN fade-tiled array from the last image. 21.169 +array_tile : -int ${1=3},${2=$1} 21.170 + -e "Create a $1x$2 fade-tiled array from the last image." 21.171 + -v- --translate[-1] 50%x50%x1x1,2 -mv[-1] -2 -fade_diamond 80,90 -array $1,$2 -v+ 21.172 + 21.173 +# Mirror-tiled image. 21.174 +#-------------------- 21.175 +#@gmic mirror_tile : 'N=2' : Create a NxN mirror-tiled version of the last image. 21.176 +_mirror_tile : 21.177 + [-1]x3 -mirror[-3,-1] x -mirror[-2,-1] y -a[-4,-3] x -a[-2,-1] x -a[-2,-1] y 21.178 +mirror_tile : -int ${1=2} 21.179 + -e "Create a $1x mirror-tiled version of the last image." 21.180 + -v- -i[0] ($1) --[0] 1 -repeat @0 -_mirror_tile -done -rm[0] -v+ 21.181 + 21.182 +# Taquin puzzles. 21.183 +#---------------- 21.184 +#@gmic taquin : 'M=4,N=M' : Create a MxN taquin puzzle from the last image. 21.185 +_taquin : 21.186 + -i @0 -rand[-1] @0,1 -*[-1] -1 -round[-1] 1 --[-1] 1 -reverse[@-1] -rm[-1] 21.187 +taquin : -int ${1=4},${2=$1} 21.188 + -e "Create $1x$2 taquin puzzle from the last image." 21.189 + -v- -i[0] ($1) -*[0] $2 -split_tile $1,$2 -repeat 10 -_taquin -done -rm[0] -append_tile $1,$2 -v+ 21.190 + 21.191 +# Image grids. 21.192 +#------------- 21.193 +#@gmic grid : 'M=10,N=M' : Create a MxN grid version of the last image. 21.194 +grid : -int ${1=10},${2=$1} 21.195 + -e "Create $1x$2 grid version of the last image." 21.196 + -v- -i[-2] $1x$2 -f[-2] 1 --translate[-2] -1,-1 --[-3,-1] -*[-2] -1 21.197 + -+[-2] 1 --dimensions[-1] -s[-1] y -/[-4] $1 -/[-3] $2 (2) -a[-5--1] y 21.198 + -round[-1] 1,-1 -r[-2] @-1 -s[-1] y -rm[-1] -*[-4] $1 -*[-3] $2 -a[-4--1] y -r[-2] @-1 21.199 + (0;2) -a[-2,-1] y -r[-3] @-1 -rm[-1] -r[-1] [-2] -*[-2,-1] -v+ 21.200 + 21.201 +# Insert colored frames around image. 21.202 +#------------------------------------ 21.203 +#@gmic frame : 'W=20,H=W,R=255,G=255,B=255' : Insert a WxH RGB-colored frame around the last image. 21.204 +_framex : 21.205 + -i 1,1,1,3 -f[-1] $2,$3,$4 -r[-1] $1,[-2],[-2],[-2],1 -i[-3] [-1] -a[-3--1] x 21.206 +_framey : 21.207 + -i 1,1,1,3 -f[-1] $2,$3,$4 -r[-1] [-2],$1,[-2],[-2],1 -i[-3] [-1] -a[-3--1] y 21.208 +frame : -int ${1=20},${2=$1} -float ${3=255},${4=$3},${5=$4} 21.209 + -e "Insert a $1x$2 frame with RGB color ($3,$4,$5) in the last image." 21.210 + -v- -_framex $1,$3,$4,$5 -_framey $2,$3,$4,$5 -v+ 21.211 + 21.212 +# Draw a colored fuzzy frame around image. 21.213 +#----------------------------------------- 21.214 +#@gmic frame_fuzzy : 'W=20,H=W,fuzzyness=3,smoothness=3,R=255,G=255,B=255' : Draw a WxH RGB-colored fuzzy frame around the last image. 21.215 +frame_fuzzy : -int ${1=20},${2=$1} -float ${3=5},${4=1},${5=255},${6=$5},${7=$6} 21.216 + -e "Draw a $1x$2 fuzzy frame with RGB color ($5,$6,$7), fuzzyness $3 and smoothness $4 in the last image." 21.217 + -v- -i[0] ($1;$2) -*[0] 2 1x1x1x3 -f[-1] $5,$6,$7 -r[-1] [-2] 100%x100% 21.218 + -polygon[-1] 4,0,0,100%,0,100%,@{0,1},0,@{0,1},1,1 21.219 + -polygon[-1] 4,0,0,@{0,0},0,@{0,0},100%,0,100%,1,1 21.220 + -rm[0] -translate[-1] $1,$2,0,0,2 -spread $3 -blur[-1] $4 -_fade 50,80 -v+ 21.221 + 21.222 +# Polaroid effect. 21.223 +#----------------- 21.224 +#@gmic polaroid : 'W1=30,W2=120,W3=40' : Create polaroid from last image, with specified border sizes. 21.225 +polaroid : -int ${1=30},${2=120},${3=40} 21.226 + -e "Create polaroid effect from the last image with borders $1, $2 and $3." 21.227 + -v- -frame $1,$1,255,255,255 [-1],$2,1,3 -f[-1] 255 -a[-2,-1] y 21.228 + --dimensions[-1] -+[-1] $3 -+[-1] $3 --f[-2] -1 -r[-1] @{-2,0-1},1,3,0,0,1 -rm[-2] 21.229 + -blur[-1] 5 -r[-2] [-1],0,0,1 -n[-1] 0,180 -or[-2,-1] -v+ 21.230 + 21.231 +# Drop shadow. 21.232 +#------------- 21.233 +#@gmic drop_shadow : '(no args) : Add a drop shadow behind the last image. 21.234 +drop_shadow : 21.235 + -e "Add a drop shadow behind the last image." 21.236 + -v- --f[-1] 0 --[-1] 255 -r[-2,-1] 120%x120%x1x100%,0,0,1 -+[-1] 255 --blur[-1] 10 -translate[-3,-2] 10,10,0,0,1 21.237 + -*[-2,-1] -n[-1] 0,255 -+[-2,-1] -v+ 21.238 + 21.239 +# Split into tiles. 21.240 +#------------------ 21.241 +#@gmic split_tile : 'M=8,N=M' : Split last image into MxN regular tiles. 21.242 +split_tile : -int ${1=8},${2=$1} 21.243 + -e "Decompose last image into $1x$2 regular tiles." 21.244 + -v- -i[0] ($1) -*[0] $2 -s[-1] x,$1 -s[-$1--1] y,$2 -r[-@0--1] [-@0],0 -rm[0] -v+ 21.245 + 21.246 +# Append tiles. 21.247 +#-------------- 21.248 +#@gmic append_tile : 'M=8,N=M' : Append last MxN regular tiles together. 21.249 +append_tile : -int ${1=8},${2=$1} 21.250 + -e "Append last $1x$2 regular tiles together." 21.251 + -v- -i[0] ($1) -*[0] $2 -a[-@0--1] y -s[-1] y,$1 -a[-$1--1] x -rm[0] -v+ 21.252 + 21.253 +# Rotate tiles. 21.254 +#--------------- 21.255 +#@gmic rotate_tile : 'angle=5,M=8,N=M' : Apply MxN tiled-rotation effect on the last image. 21.256 +rotate_tile : -float ${1=5} -int ${2=8},${3=$2} 21.257 + -e "Apply $2x$3 tiled-rotation effect on the last image, with angle $1." 21.258 + -v- -i[0] ($2) -*[0] $3 -split_tile $2,$3 -rotate[-@0--1] $1 -append_tile $2,$3 -v+ 21.259 + 21.260 +# Tiled shift. 21.261 +#------------- 21.262 +#@gmic shift_tile : 'amplitude=20,M=8,N=M' : Apply MxN tiled-shift effect on the last image. 21.263 +shift_tile : -float ${1=20} -int ${2=8},${3=8} 21.264 + -e "Apply $2x$3 tiled-shift effect on the last image, with amplitude $1." 21.265 + -v- -t float $2x$3x1x2 -noise[-1] $1 -r[-1] [-2],[-2],1,2 -warp[-2] [-1],1,1,0 -rm[-1] -v+ 21.266 + 21.267 +#----------------------------- 21.268 +# 21.269 +# Deformation filters 21.270 +# 21.271 +#----------------------------- 21.272 + 21.273 +# Spread pixel values. 21.274 +#--------------------- 21.275 +#@gmic spread : 'dx=3,dy=dx,dz=0' : Spread last image pixel values randomly along x,y and z. 21.276 +spread : -float ${1=3},${2=$1},${3=0} 21.277 + -e "Spread pixel values of the last image with amplitudes ($1,$2,$3))." 21.278 + -v- -t float 100%x100%x100%x1x3 -noise[-3] $1,0 -noise[-2] $2,0 21.279 + -noise[-1] $3,0 -a[-3--1] v -warp[-2] [-1],1 -rm[-1] -v+ 21.280 + 21.281 +# Water effect. 21.282 +#-------------- 21.283 +#@gmic water : 'amplitude=30,smoothness=1.5' : Apply water effect on the last image. 21.284 +water : -float ${1=30},${2=1.5} 21.285 + -e "Apply water effect on the last image, with amplitude $1 and smoothness $2." 21.286 + -v- -t float 25%x25%x25%x1 -noise[-1] $1 -gradient[-1] xyz -+[-1,-2,-3] 21.287 + -blur[-1] $2 -*[-1] 2 -warp[-2] [-1],1 -rm[-1] -v+ 21.288 + 21.289 +# Wave effect. 21.290 +#------------- 21.291 +#@gmic wave : 'amplitude=4,frequency=0.4' : Apply wave effect on the last image. 21.292 +wave : -float ${1=4},${2=0.4} 21.293 + -e "Apply wave effect on the last image, with amplitude $1 and frequency $2." 21.294 + -v- -t float (1) -r[-1] [-2],[-2],1,1,0,0,1 -distance[-1] 1 21.295 + -*[-1] $2 [-1] -cos[-2] -sin[-1] -a[-2,-1] v -*[-1] $1 21.296 + -warp[-2] [-1],1 -rm[-1] -v+ 21.297 + 21.298 +# Linear blur. 21.299 +#------------- 21.300 +#@gmic blur_linear : 'amplitude=10,vx=1,vy=0' : Apply oriented linear blur on the last image. 21.301 +_blur_linear : 21.302 + --warp[-2] [-1],1,1,1 -*[-2] -1 -warp[-3] [-2],1,1,1 -+[-3,-1] -/[-2] 2 -*[-1] -1 21.303 +blur_linear : -int ${1=10} -float ${2=1},${3=0} 21.304 + -e "Apply linear blur on the last image, with amplitude $1 and orientation ($2,$3)." 21.305 + -v- -t float 1x1x1x2 -f[-1] $2,$3 -r[-1] [-2],[-2],1,2 -repeat $1 -_blur_linear -done -rm[-1] -v+ 21.306 + 21.307 +# Radial blur. 21.308 +#------------- 21.309 +#@gmic blur_radial : 'amplitude=10,angle=0.5' : Apply radial blur on the last image. 21.310 +_blur_radial : 21.311 + --rotate[-1] @-2,-2,0 -*[-3] -1 -rotate[-2] @-3,-2,0 -*[-3] -1 -+[-2,-1] -/[-1] 2 21.312 +blur_radial : -int ${1=10} -float ${2=0.5} 21.313 + -e "Apply radial blur on the last image, with amplitude $1 and angle $2." 21.314 + -v- -t float [-1] -i[-2] ($2) -repeat $1 -_blur_radial -+[-2] $2 -done -v+ 21.315 + 21.316 +# Zoom blur. 21.317 +#----------- 21.318 +#@gmic blur_zoom : 'amplitude=5,zoom_step=1.5' : Apply radial blur on the last image. 21.319 +_blur_zoom : 21.320 + --r[-1] @0%x@0%x@0%x100%,2 -r[-1] [-2],0,1,1 -+[-2,-1] -/[-1] 2 21.321 +blur_zoom : -int ${1=5} -float ${2=1.5} 21.322 + -e "Apply zoom blur on the last image, with amplitude $1 and step $2." 21.323 + -v- -t float -i[0] ($2) -+[0] 100 -repeat $1 -_blur_zoom -done -rm[0] -v+ 21.324 + 21.325 +# Generic macro for applying a PDE flow. 21.326 +#--------------------------------------- 21.327 +pde_flow : 21.328 + -v- -t float -repeat $2 -if $1 [-1] -endif 21.329 + $4 ${5*} ($3) --stats[-2] -r[-1] 1x2x1x1,0 -abs[-1] -stats[-1] -i (@{-1,1}) -rm[-2] 21.330 + -+[-1] 0.1 -/[-2,-1] -*[-2] @-1 -rm[-1] -+[-2,-1] -done -v+ 21.331 + 21.332 +# Mean-curvature flow. 21.333 +#--------------------- 21.334 +#@gmic meancurvature_flow : 'nb_iter=5, time_step=30, seq=0' : Apply iterations of the mean curvature flow on the last image. 21.335 +_meancurvature_flow : 21.336 + [-1]x2 -laplacian -mv[-1] -2 -gradient_2derivative --[-2,-1] 21.337 +meancurvature_flow : -int ${1=5},${3=0} -float ${2=30} 21.338 + -e "Apply $1 iterations of the mean curvature flow, with time step $2." 21.339 + -pde_flow $3,$1,$2,-_meancurvature_flow 21.340 + 21.341 +# Total variation flow. 21.342 +#--------------------- 21.343 +#@gmic tv_flow : 'nb_iter=5, time_step=20, seq=0' : Apply iterations of the total variation flow on the last image. 21.344 +_tv_flow : 21.345 + [-1]x3 -laplacian -mv[-1] -3 -gradient_2derivative --[-3,-1] -gradient_norm -+[-1] 0.5 -r[-1] [-2] -/[-2,-1] 21.346 +tv_flow : -int ${1=5},${3=0} -float ${2=20} 21.347 + -e "Apply $1 iterations of the total variation flow, with time step $2." 21.348 + -pde_flow $3,$1,$2,-_tv_flow 21.349 + 21.350 +# Hurl noise. 21.351 +#------------ 21.352 +#@gmic noise_hurl : 'amplitude' : Add hurl noise to the last image. 21.353 +noise_hurl : -float ${1=10} 21.354 + -e "Add hurl noise of amplitude $1% on the last image." 21.355 + -v- --stats --f[-2] 0 -noise[-1] 10 -n[-1] @{-2,0,1} -rm[-2] 100%x100% -f[-1] -2 21.356 + -noise[-1] $1,2 -threshold[-1] 0 -r[-1] [-2] 21.357 + -*[-2] [-1] -*[-1] -1 -+[-1] 1 -*[-3,-1] -+[-2,-1] -v+ 21.358 + 21.359 +# Pixelize. 21.360 +#---------- 21.361 +#@gmic pixelize : 'sx=30,sy=sx' : Pixelize the last image with specified scales ('sx' and 'sy' in 0..100). 21.362 +pixelize : -float ${1=20},${2=$1} 21.363 + -e "Pixelize last image with scales ($1%,$2%)." 21.364 + -v- --dimensions[-1] -r[-2] $1%x$2%x1x3,2 -r[-2] @-1 -rm[-1] -v+ 21.365 + 21.366 +# Deforming filter. 21.367 +#------------------ 21.368 +#@gmic deform : 'amplitude=10' : Apply random smooth deformation on the last image. 21.369 +deform : -float ${1=10} 21.370 + -e "Apply random smooth deformation on the last image, with amplitude $1." 21.371 + -v- -t float 2%x2%x1x2 -noise[-1] $1 -r[-1] [-2],[-2],1,2,5 21.372 + -warp[-2] [-1],1,1,1 -rm[-1] -v+ 21.373 + 21.374 +# Puzzle filter. 21.375 +#--------------- 21.376 +#@gmic puzzle : (no args) : Apply puzzle effect on the last image. 21.377 +puzzle : 21.378 + -e "Apply puzzle effect on the last image." 21.379 + -v- -t float [-1] -r[-1] 5%x5%x100%x100%x2 -noise[-1] 0.1 -r[-1] [-2] -rm[-2] 21.380 + [-1]x2 -translate[-1] 1,1 --[-2,-1] -norm[-1] -threshold[-1] 0.01 -*[-1] -1 21.381 + -+[-1] 1 -r[-1] [-2] -*[-1,-2] 10%x10%x10%x2 -noise[-1] 5,1 21.382 + -r[-1] [-2],[-2],1,2,5 -warp[-2] [-1],1,1,1 -rm[-1] -v+ 21.383 + 21.384 +# Fish-eye. 21.385 +#---------- 21.386 +#@gmic fish_eye : 'amplitude=250' : Apply Fish-eye effect on the last image. 21.387 +fish_eye : -float ${1=250} 21.388 + -e "Apply Fish-eye effect on the last image, with amplitude $1." 21.389 + -v- -t float 2x2x1x2 -f[-1] -1,1,-1,1,-1,-1,1,1 -r[-1] [-2],[-2],1,2,3 [-1] 21.390 + -norm[-2] -n[-2] 0,1 -cut[-2] 0,0.7 --[-2] 0.7 -*[-2] -$1 -r[-2] [-1] 21.391 + -*[-2,-1] -warp[-2] [-1],1,1,1 -rm[-1] -v+ 21.392 + 21.393 +#----------------------------- 21.394 +# 21.395 +# Artistic filters 21.396 +# 21.397 +#----------------------------- 21.398 + 21.399 +# Add strip shades along x or y. 21.400 +#------------------------------- 21.401 +#@gmic shade_stripes : 'frequency=5, direction=1' : Add horizontal or vertical shaded stripes on the last image. 21.402 +_shade_stripes0 : 21.403 + -v+ -e "Add horizontal shaded stripes on the last image, with frequency $1." -v- 1x100% 21.404 +_shade_stripes1 : 21.405 + -v+ -e "Add vertical shaded stripes on the last image, with frequency $1." -v- 100% 21.406 +shade_stripes : -float ${1=5} -int ${2=1} 21.407 + -v- -t float -n[-1] 0,255 -_shade_stripes$2 $1 -noise[-1] $1,2 -distance[-1] 1 21.408 + -r[-1] [-2] -n[-1] 0.3,1.5 -*[-1,-2] -cut[-1] 0,255 -v+ 21.409 + 21.410 +# Add old-movie stripes. 21.411 +#----------------------- 21.412 +#@gmic stripesy : 'frequency=10' : Add vertical stripes on the last image. 21.413 +stripesy : -float ${1=10} 21.414 + -e "Add vertical stripes on the last image, with frequency $1." 21.415 + -v- -t float -n[-1] 0,255 100% -noise[-1] $1,2 -*[-1] 255 -r[-1] [-2] 21.416 + -*[-1] 0.15 -+[-1,-2] -cut[-1] 0,255 -v+ 21.417 + 21.418 +# Tetris effect. 21.419 +#--------------- 21.420 +#@gmic tetris : 'scale=10' : Apply tetris effect of given size on the last image. 21.421 +tetris : -float ${1=10} 21.422 + -e "Apply tetris effect on the last image, with scale $1." 21.423 + -v- -t float [-1] -r[-1] $1%x$1%x$1%x3x2 -n[-1] 0,255 -quantize[-1] 10 21.424 + -r[-1] [-2] -rm[-2] -blur[-1] 2 -sharpen[-1] 300,1 -v+ 21.425 + 21.426 +# Damp patch effect. 21.427 +#------------------- 21.428 +#@gmic damp_patch : 'opacity=0.7' : Apply damp patch effect on the last image. 21.429 +damp_patch : -float ${1=0.7} 21.430 + -e "Apply damp patch effect on the last image, with opacity $1." 21.431 + -v- -t float 100%x100% -f[-1] 1 -translate[-1] 2,2 -translate[-1] -1,-1 21.432 + -plasma[-1] 3,0.3 -abs[-1] -blur[-1] 1 -cut[-1] 3%,15% -r[-1] [-2] 21.433 + -n[-1] $1,1 -*[-1,-2] -v+ 21.434 + 21.435 +# Light patch effect. 21.436 +#-------------------- 21.437 +#@gmic light_patch : 'darkness=0.9,lightness=1.7' : Apply light patch effect on the last image. 21.438 +light_patch : -float ${1=0.9},${2=1.7} 21.439 + -e "Apply light patch effect on the last image, with darkness $1 and lightness $2." 21.440 + -v- -t float -n[-1] 0,255 2%x2% -noise[-1] 40 -r[-1] [-2],5 -cut[-1] 0,255 21.441 + -n[-1] $1,$2 -*[-2,-1] -cut[-1] 0,255 -v+ 21.442 + 21.443 +# Mosaic pattern. 21.444 +#---------------- 21.445 +#@gmic mosaic : 'density=0.2' : Add mosaic pattern to the last image. 21.446 +mosaic : -float ${1=0.2} 21.447 + -e "Add mosaic pattern on the last image, with density $1." 21.448 + -v- -t float 100%x100%x1x1 -noise[-1] $1,2 -distance[-1] 1 21.449 + -sharpen[-1] 10000 -*[-1] -1 -blur[-1] 0.5 -n[-1] 0.3,1 -r[-1] [-2] -*[-2,-1] -v+ 21.450 + 21.451 +# Sponge filter. 21.452 +#--------------- 21.453 +#@gmic sponge : 'size=13' : Apply sponge filter on the last image with specified brush size. 21.454 +_circle : 21.455 + -i 1 -+[-1] 1 -r[-1] $1x$1x1x1x0,0,1 -distance[-1] 1 -n[-1] 0,1 -sqrt[-1] -cut[-1] 0.85,0.86 -*[-1] -1 -n[-1] 0,1 21.456 +sponge : -int ${1=13} 21.457 + -e "Apply sponge filter on the last image, with brush size $1." 21.458 + -v- 100%x100%x1x1 -noise[-1] 20,2 -r[-1] [-2] -n[-1] 0,1 -*[-1,-2] 21.459 + -_circle $1 -dilate[-2] [-1] -rm[-1] -v+ 21.460 + 21.461 +# Heart filter. 21.462 +#-------------- 21.463 +#@gmic hearts : (no args) : Apply heart filter on the last image. 21.464 +_heart9x7 : 21.465 + -i 9x7 -f[-1] 0,1,1,0,0,0,1,1,0,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,0,0,0,0 21.466 +hearts : 21.467 + -e "Apply heart filter on the last image." 21.468 + -v- 100%x100%x1 -noise[-1] 10,2 -r[-1] [-2] -n[-1] 0,1 -*[-1,-2] -_heart9x7 21.469 + -mirror[-1] y -dilate[-2] [-1] -rm[-1] -v+ 21.470 + 21.471 +# Color ellipses. 21.472 +#---------------- 21.473 +#@gmic color_ellipses : 'opacity=0.07' : Add random colored ellipses on the last image. 21.474 +_color_ellipses : 21.475 + -i 10 -f[-1] @{-2,0-9} -ellipse[-3] @-1 -rm[-1] -translate[-1] 0,1 21.476 +color_ellipses : -float ${1=0.07} 21.477 + -e "Add random colored ellipses to the last image, with opacity $1." 21.478 + -v- --dimensions[-1] -r[-1] 2x2x1x1x0 -mirror[-1] x 1x400 -rand[-1] @{-2,0,1} --rand[-1] @{-2,2,3} 21.479 + -rm[-3] 2x[-1] --dimensions[-4] -r[-1] 2x2x1x1x0 -s[-1] y 21.480 + -+[-2,-1] -mirror[-1] x -rand[-2] @{-1,0,1} -rm[-1] -/[-1] 10 --rand[-1] -1,1 21.481 + 1x[-1] -f[-1] $1 3x[-1] -rand[-1] 10,255 -a[-6--1] x -repeat 400 -_color_ellipses -done -rm[-1] -v+ 21.482 + 21.483 +# Whirls texture. 21.484 +#---------------- 21.485 +#@gmic whirls : (no args) : Add random whirl texture on the last image. 21.486 +whirls : 21.487 + -e "Add random whirl texture to the last image." 21.488 + -v- -n[-1] 0,255 -t float [-1] -f[-1] 0 -noise[-1] 0.3,2 -blur[-1] 3 21.489 + -gradient[-1] xyz -a[-3--1] v -norm[-1] -sqrt[-1] -blur[-1] 3 -gradient[-1] xyz 21.490 + -a[-3--1] v -norm[-1] -sqrt[-1] -blur[-1] 3 -gradient[-1] xyz -a[-3--1] v 21.491 + -norm[-1] -sqrt[-1] -blur[-1] 3 -gradient[-1] xyz -a[-3--1] v -norm[-1] 21.492 + -sqrt[-1] -n[-1] 0.8,1.5 -r[-1] [-2] -*[-2,-1] -cut[-1] 0,255 -v+ 21.493 + 21.494 +# Add water reflection. 21.495 +#---------------------- 21.496 +#@gmic reflect : (no args) : Add water reflection effect to the last image. 21.497 +reflect : 21.498 + -e "Add water reflection effect to the last image." 21.499 + -v- -t float [-1] -mirror[-1] y -r[-1] 100%x100%x100%x3 -s[-1] v -*[-3] 0.8 21.500 + -*[-2] 0.9 -a[-3--1] v -water 30,1.5 1x2 -f[-1] 1,0 -r[-1] [-2]x3 -*[-2,-1] 21.501 + -a[-2,-1] y -v+ 21.502 + 21.503 +# B&W Edge filter. 21.504 +#----------------- 21.505 +#@gmic edges : 'threshold=30' : Estimate image contours of the last image. 21.506 +edges : -float ${1=30} 21.507 + -e "Estimate last image contours, with threshold $1." 21.508 + -v- -t float [-1] -n[-1] 0,255 -gradient_norm -blur[-1] 0.5 21.509 + -threshold[-1] $1% -distance[-1] 0 -equalize[-1] 256 -*[-1] -1 -n[-1] 0,255 21.510 + -r[-1] [-2] -rm[-2] -v+ 21.511 + 21.512 +# Cartoon effect. 21.513 +#---------------- 21.514 +#@gmic cartoon : 'threshold=30' : Apply cartoon effect on the last image. 21.515 +cartoon : -float ${1=30} 21.516 + -e "Apply cartoon effect on the last image, with threshold $1." 21.517 + -v- -t float [-1]x2 -edges $1 -r[-2] 8x8x1x3,2 -r[-3] 100%x100%x100%x3 21.518 + -rgb2lut[-3] [-2] -lut2rgb[-3] [-2] -rm[-2] -blur[-2] 2 -*[-2--1] -n[-1] 0,255 -v+ 21.519 + 21.520 +# Drawing effect. 21.521 +#---------------- 21.522 +#@gmic drawing : (no args) : Apply drawing effect on the last image. 21.523 +drawing : 21.524 + -e "Apply drawing effect on the last image." 21.525 + -v- -t float -smooth[-1] 200,0.2,1,3,3 -blur[-1] 2 -sharpen[-1] 1000 [-1] 21.526 + -r[-2] 20x20x1x3,2 -equalize[-2] 256 -rgb2lut[-1] [-2],1 -lut2rgb[-1] [-2] -rm[-2] -v+ 21.527 + 21.528 +# Whirl drawing effect. 21.529 +#---------------------- 21.530 +#@gmic draw_whirl : (no args) : Apply whirl drawing effect on the last image. 21.531 +draw_whirl : 21.532 + -e "Apply whirl drawing effect on the last image." 21.533 + -v- -t float 100%x100% -noise[-1] 70,2 -*[-1] 255 -r[-1] [-2] -and[-1,-2] -smooth[-1] 100,0,1,2,2 21.534 + -sqrt[-1] -n[-1] 0,255 -equalize[-1] 256 -v+ 21.535 + 21.536 +# Paper texture. 21.537 +#--------------- 21.538 +#@gmic paper_texture : (no args) : Add paper texture to the last image. 21.539 +paper_texture : 21.540 + -e "Add paper texture to the last image." 21.541 + -v- -t float [-1] 30%x30% -noise[-1] 1,2 -r[-1] [-2],[-2],[-2],1,0 -ifft[-1] 21.542 + -rm[-1] -translate[-1] 50%x50%x50%x0x2 -sharpen[-1] 1 -n[-1] 1,1.2 -r[-1] [-2] 21.543 + -*[-2,-1] -cut[-1] [-2],[-2] -rm[-2] -v+ 21.544 + 21.545 +# B&W Stencil filter. 21.546 +#-------------------- 21.547 +#@gmic stencilbw : (no args) : Apply B&W stencil effect on the last image. 21.548 +stencilbw : 21.549 + -e "Apply B&W stencil effect on the last image." 21.550 + -v- -r[-1] 100%x100%x1x100% -t float [-1] -edges 30 -quantize[-2] 3 -blur[-2] 10 21.551 + -sharpen[-2] 1000000 -norm[-2] -n[-2] 0,1 -*[-1,-2] -n[-1] 0,255 -v+ 21.552 + 21.553 +# B&W Pencil filter. 21.554 +#------------------- 21.555 +#@gmic pencilbw : (no args) : Apply B&W pencil effect on the last image. 21.556 +pencilbw : 21.557 + -e "Apply B&W pencil effect on the last image." -v- -r[-1] 100%x100%x1x100% 21.558 + -norm[-1] -blur[-1] 0.3 -sharpen[-1] 4000 -smooth[-1] 60,0,1 -equalize[-1] 256 21.559 + -sqrt[-1] -n[-1] 0,255 -r[-1] 100%x100%x1x3 -v+ 21.560 + 21.561 +# B&W dithered filter. 21.562 +#---------------------- 21.563 +#@gmic ditheredbw : (no args) : Create dithered B&W version of the last image. 21.564 +ditheredbw : 21.565 + -e "Create dithered B&W version of the last image." -v- -n[-1] 0,255 21.566 + -r[-1] 100%x100%x100%x3 -i 2x1x1x3 -f[-1] 0,255 -rgb2lut[-2] [-1],1 21.567 + -lut2rgb[-2] [-1] -rm[-1] -v+ 21.568 + 21.569 +# B&W dots effect. 21.570 +#----------------- 21.571 +#@gmic dotsbw : (no args) : Apply B&W dots effect on the last image. 21.572 +dotsbw : 21.573 + -e "Apply B&W dots effect on the last image." 21.574 + -v- -t float -norm[-1] --r[-1] 10%x10%x1x1x2 [-1]x4 -threshold[-5] 10% 21.575 + -threshold[-4] 30% -threshold[-3] 50% -threshold[-2] 70% -threshold[-1] 90% 21.576 + -r[-5--1] [-6],4 -translate[-5--1] -5,-5 -rm[-6] -_circle 3 -dilate[-6] [-1] 21.577 + -rm[-1] -_circle 5 -dilate[-5] [-1] -rm[-1] -_circle 7 -dilate[-4] [-1] 21.578 + -rm[-1] -_circle 9 -dilate[-3] [-1] -rm[-1] -_circle 11 -dilate[-2] [-1] 21.579 + -rm[-1] -or[-5--1] -n[-1] 0,255 -r[-1] 100%x100%x1x3 -v+ 21.580 + 21.581 +# Andy Warhol style. 21.582 +#------------------- 21.583 +#@gmic warhol : 'M=3,N=M' : Create a MxN Andy Warhol effect on the last image. 21.584 +_warhol : 21.585 + [-1] 6x1x1x1x3 -f[-3] 0,1,2,3,4,5 -n[-1] 0.2,0 -n[-3] 0,255 -f[-2,-1] 128 -noise[-2,-1] 60,0 -a[-3--1] v 21.586 + -cut[-1] 0,255 -ycbcr2rgb[-1] -r[-1] 256x1x1x3,3 -sqr[-1] -n[-1] 0,255 -lut2rgb[-2] [-1] -rm[-1] -mv[-1] -2 21.587 +warhol : -int ${1=3},${2=$1} 21.588 + -e "Create a $1x$2 Andy Warhol effect on the last image." 21.589 + -v- -t float -norm[-1] -blur[-1] 2 -quantize[-1] 6 -n[-1] 0,255 21.590 + -i[0] ($1) -+[0] $2 -/[0] 2 -pow[0] -1 -*[0] 100 -round[0] 1,-1 -r[-1] @0%x@0%x1x1,2 21.591 + -f[0] $1 -*[0] $2 -repeat @0 -_warhol -done -rm[0,-1] -append_tile $1,$2 -v+ 21.592 + 21.593 +# Cubism. 21.594 +#-------- 21.595 +#@gmic cubism : 'nb_iter=160,bloc_size=30,max_angle=75,opacity=0.7,smoothness=0' : Apply cubism effect on the last image. 21.596 +_cubism : 21.597 + 1x1x1x1x2 -rand[-2] 0,@{-3,0} -rand[-1] 0,@{-3,1} -a[-2,-1] x -round[-1] 1 --+[-1] $1 --[-2] $1 21.598 + --crop[-4] @-2,@-1,1 -blur[-1] $4 --f[-1] 1 -rm[-3] 1 -rand[-1] -$2,$2 -rotate[-3,-2] @-1,0,0 -rm[-1] 21.599 + -image[-5] [-2],@-3,0,$3,[-1] -rm[-3--1] 21.600 + 21.601 +cubism : -int ${1=160},${2=30} -float ${3=75},${4=0.7},${5=0} 21.602 + -e "Apply cubism effect on the last image, with $1 iterations, bloc size $2, maximum angle $3, opacity $4 and smoothness $5." 21.603 + -v- --dimensions[-1] -repeat $1 -_cubism $2,$3,$4,$5 -done -rm[-1] -v+ 21.604 + 21.605 +# Soft glow. 21.606 +#----------- 21.607 +#@gmic glow : 'amplitude=3' : Apply glow effect on the last image. 21.608 +glow : -float ${1=3} 21.609 + -e "Apply glow effect on the last image, with amplitude $1." 21.610 + -v- -t float -r[-1] 100%x100%x1x3 -rgb2ycbcr[-1] -s[-1] v --blur[-3] $1 -n[-1] [-4] -+[-4,-1] -/[-3] 2 21.611 + -a[-3--1] v -ycbcr2rgb[-1] -v+ 21.612 + 21.613 +# Old photo filter. 21.614 +#------------------ 21.615 +#@gmic old_photo : (no args) : Apply old photo effect on the last image. 21.616 +old_photo : 21.617 + -e "Apply old photo effect on the last image." 21.618 + -v- -noise 20 -blur 1 -sharpen 30,1 -blur 0.8 -frame_fuzzy 20,20,6,3 -damp_patch 0.7 -n 0,255 -sepia -v+ 21.619 + 21.620 +#------------------------- 21.621 +# 21.622 +# Color filters 21.623 +# 21.624 +#------------------------- 21.625 + 21.626 +# Compute luminance. 21.627 +#------------------- 21.628 +#@gmic luminance : (no args) : Compute luminance of the last image. 21.629 +luminance : 21.630 + -e "Compute luminance of the last image." 21.631 + -v- -n[-1] 0,255 -r[-1] 100%x100%x1x3 -rgb2ycbcr[-1] -channels[-1] 0 -v+ 21.632 + 21.633 +# Apply a 3x3 transformation matrix to RGB vectors. 21.634 +#--------------------------------------------------- 21.635 +#@gmic mix_rgb : a11,a12,a13,a21,a22,a23,a31,a32,a33 : Apply 3x3 specified matrix to RGB colors. 21.636 +mix_rgb : -float ${1=1},${2=0},${3=0},${4=0},${5=1},${6=0},${7=0},${8=0},${9=1} 21.637 + -e "Apply matrix [ $1 $2 $3 ; $4 $5 $6 ; $7 $8 $9 ] to RGB pixels of the last image." 21.638 + -v- -t float -r[-1] 100%x100%x1x3,0,2 -s[-1] v 21.639 + --*[-3] $4 --*[-3] $5 -+[-1,-2] --*[-2] $6 -+[-1,-2] 21.640 + --*[-4] $7 --*[-4] $8 -+[-1,-2] --*[-3] $9 -+[-1,-2] 21.641 + -*[-5] $1 -*[-4] $2 -*[-3] $3 -+[-5--3] 21.642 + -a[-3--1] v -v+ 21.643 + 21.644 +# Solarize. 21.645 +#---------- 21.646 +#@gmic solarize : (no args) : Apply solarization effect on the last image. 21.647 +solarize : 21.648 + -e "Apply solarization effect on the last image." 21.649 + -v- -luminance -n[-1] 0,128 -lut2rgb[-1] 1 -v+ 21.650 + 21.651 +# Sepia filter. 21.652 +#-------------- 21.653 +#@gmic sepia : (no args) : Apply sepia tones filter on the last image. 21.654 +_sepia : 21.655 + -i 6x1x1x3 -f[-1] 0,44,115,143,196,244,0,20,84,119,184,235,0,5,44,73,144,200 -r[-1] 256x1x1x3,3 21.656 +sepia : 21.657 + -e "Apply sepia tones filter on the last image." 21.658 + -v- -luminance -_sepia -lut2rgb[-2] [-1] -rm[-1] -v+ 21.659 + 21.660 +# Negative. 21.661 +#---------- 21.662 +#@gmic negative : (no args) : Compute negative of last image negative. 21.663 +negative : 21.664 + -e "Compute negative of the last image." 21.665 + -v- -t float -*[-1] -1 [-1] -stats[-1] -c[-1] 0,0,0,0 -r[-1] [-2] --[-1,-2] -v+ 21.666 + 21.667 +# Select RGB pixels in an image. 21.668 +#-------------------------------- 21.669 +#@gmic select_rgb : 'R=0,G=0,B=0,tolerance=10' : Select RGB colored pixels in the last image. 21.670 +select_rgb : 21.671 + -e "Select RGB color ($(1=0),$(2=0),$(3=0)) in the last image, with tolerance $(4=30)." 21.672 + -v- 1x1x1x3 -f[-1] $1,$2,$3 -r[-1] [-2] --[-2,-1] -norm[-1] -threshold[-1] $4 -negative -v+ 21.673 + 21.674 +# Fill image with RGB color. 21.675 +#--------------------------- 21.676 +#@gmic fill_rgb : 'R=0,G=0,B=0' : Fill last image with specified RGB color. 21.677 +fill_rgb : 21.678 + -e "Fill last image with RGB color ($(1=0),$(2=$1),$(3=$2))." 21.679 + -dimensions[-1] ($1^$2^$3) -r[-1] @-2 -rm[-2] 21.680 + 21.681 +#------------------------- 21.682 +# 21.683 +# Motion related filters 21.684 +# 21.685 +#------------------------- 21.686 + 21.687 +# Cross-correlation and normalized cross-correlation. 21.688 +#----------------------------------------------------- 21.689 +#@gmic cross_correlation : (no args) : Compute cross-correlation between the two last images. 21.690 +cross_correlation : 21.691 + -e "Compute cross-correlation between the two last images." 21.692 + -v- -t float -norm[-2,-1] -fft[-2] -fft[-1] [-2,-1] -mul[-2] [-5] -mul[-1] [-6] 21.693 + --[-2,-1] -*[-5,-3] -*[-3,-2] -+[-3,-2] -ifft[-2,-1] -rm[-1] -v+ 21.694 + 21.695 +#@gmic normalized_cross_correlation : (no args) : Compute normalized cross-correlation between the two last images. 21.696 +normalized_cross_correlation : 21.697 + -e "Compute normalized cross-correlation between the two last images." 21.698 + -v- -t float -norm[-2,-1] -fft[-2] -fft[-1] [-2,-1] -mul[-2] [-5] -mul[-1] [-6] 21.699 + --[-2,-1] -*[-5,-3] -*[-3,-2] -+[-3,-2] [-2,-1] -a[-2,-1] v -norm[-1] 21.700 + -/[-3] [-1] -/[-2,-1] -ifft[-2,-1] -rm[-1] -v+ 21.701 + 21.702 +# Phase correlation. 21.703 +#------------------- 21.704 +#@gmic phase_correlation : (no args) : Estimate translation vector between the two last images by the phase correlation method. 21.705 +phase_correlation : 21.706 + -e "Compute phase correlation between the two last images." 21.707 + -v- -normalized_cross_correlation -stats[-1] -c[-1] 0,8,0,10 -r[-1] 1,1,1,3,-1 -v+ 21.708 + 21.709 +# Compute a morphing sequence (between the two latest images). 21.710 +#------------------------------------------------------------- 21.711 +#@gmic morph : 'N=10,smoothness=0.2' : Compute morphing sequence between the two latest images. 21.712 +morph : -int ${1=10} -float ${2=0.2} 21.713 + -e "Compute morphing sequence with $1 frames and smoothness $2." 21.714 + -v- -t float -r[-1] [-2],3 [-2] -displacement[-1] [-2],$2 21.715 + -warp[-3] [-1],1,1,1,$1 -*[-1] -1 -warp[-2] [-1],1,1,1,$1 -rm[-1] 21.716 + -a[-$1--1] z -reverse -a[-$1--1] z 21.717 + 1x1x2 -f[-1] 0,1 -r[-1] [-2],3 -*[-2] [-1] -*[-1] -1 -+[-1] 1 -*[-3,-1] 21.718 + -+[-2,-1] -s[-1] z -reverse[-$1--1] -v+ 21.719 + 21.720 +# Register two latest images with a rigid or non-rigid warp. 21.721 +#------------------------------------------------------------ 21.722 +#@gmic register : 'method=0' : Register last image with the penultimate image ('method' can be '{0=translation, 1=non-rigid warp}'). 21.723 +_register1 : 21.724 + -e "Align last and penultimate images with non-rigid warp." 21.725 + -v- -t float -r[-1] [-2],3 [-1] -displacement[-1] [-3],1.2 -warp[-2] [-1],1 -rm[-1] -v+ 21.726 +_register0 : 21.727 + -e "Align last and penultimate images with translation." 21.728 + -v- -t float -r[-1] [-2],3 [-2,-1] -blur[-2,-1] 2 -equalize[-2,-1] 256 -phase_correlation -r[-1] [-2],[-2] 21.729 + -warp[-2] [-1],1,1,2,1 -rm[-1] -v+ 21.730 +register : -int ${1=1} 21.731 + -if $1 -_register1 -else -_register0 -endif 21.732 + 21.733 +#------------------------- 21.734 +# 21.735 +# Video related filters 21.736 +# 21.737 +#------------------------- 21.738 + 21.739 +# Deinterlace frame. 21.740 +#------------------- 21.741 +#@gmic deinterlace : 'method=0' : Deinterlace last image by a simple algorithm ('method' can be 0=simple or 1=motion-compensated). 21.742 +_deinterlace0 : 21.743 + -e "Deinterlace last image with simple method." 21.744 + -v- -t float -k[-1] [-1] -s[-1] y -a[1--1:2] y -a[2--1] y -r[-1,-2] [-3]x5 -+[-1,-2] 21.745 + -/[-1] 2 -rm[-2] -v+ 21.746 +_deinterlace1 : 21.747 + -e "Deinterlace last image with motion-compensated method." 21.748 + -v- -t float -k[-1] -s[-1] y -a[0--1:2] y -a[1--1] y -r[-2] [-1],0 21.749 + -r[-1,-2] 100%x200%x1x100%x5 [-2] -displacement[-1] [-2]x0.01 21.750 + -warp[-3] [-1],1,1,1,2 -*[-1] -1 -warp[-2] [-1],1,1,1,2 -rm[-1] -k[-2,-4] -+[-1,-2] 21.751 + -/[-1] 2 -v+ 21.752 +deinterlace : 21.753 + -_deinterlace${1=0] 21.754 + 21.755 +# Predator effect. (first image must be the reference background, second image is the one to process). 21.756 +#--------------------------------------------------------------------------------------------------- 21.757 +#@gmic predator : (no args) : Apply predator effect on the last image using background as the penultimate image. 21.758 +predator : 21.759 + -e "Apply predator effect on the last image." 21.760 + -v- -t float -equalize[-2--1] 256 --[-1] [-2] -sqr[-1] -cut[-1] 20%,100% 21.761 + -blur[-1] 1 -n[-1] 0,30 -channels[-1] 0,1 -warp[-2] [-1],1,1 -rm[-1] -v+ 21.762 + 21.763 +#------------------------- 21.764 +# 21.765 +# Other various filters 21.766 +# 21.767 +#------------------------- 21.768 + 21.769 +# Horizontal fading. 21.770 +#------------------- 21.771 +#@gmic fade_x : 'start=30,end=70' : Create an horizontal fading transition between the two last images ('start' and 'end' in [0..100]). 21.772 +_fade : -float ${1=30},${2=70} 21.773 + -t float -r[-2] [-3],5 -r[-1] [-2],3 -cut[-1] $1%,$2% -n[-1] 0,1 --*[-1] -1 -+[-1] 1 -*[-4,-1] -*[-2,-1] -+[-2,-1] 21.774 +fade_x : 21.775 + -e "Create ($1%,$2%) horizontal fading transition between the two last images." 21.776 + -v- 2 -f[-1] 0,1 -_fade $1,$2 -v+ 21.777 + 21.778 +# Vertical fading. 21.779 +#----------------- 21.780 +#@gmic fade_y : 'start=30,end=70' : Create a vertical fading transition between the two last images ('start' and 'end' in [0..100]). 21.781 +fade_y : -float ${1=30},${2=70} 21.782 + -e "Create ($1%,$2%) vertical fading transition between the two last images." 21.783 + -v- 1x2 -f[-1] 0,1 -_fade $1,$2 -v+ 21.784 + 21.785 +# Radial fading. 21.786 +#--------------- 21.787 +#@gmic fade_radial : 'start=30,end=70' : Create radial fading transition between the two last images ('start' and 'end' in [0..100]). 21.788 +fade_radial : -float ${1=30},${2=70} 21.789 + -e "Create ($1%,$2%) radial fading transition between the two last images." 21.790 + -v- 100%x100% -point 50%,50%,0,1,1 -distance[-1] 1 -_fade $1,$2 -v+ 21.791 + 21.792 +# Diamond fading. 21.793 +#---------------- 21.794 +#@gmic fade_diamond : 'start=70,end=90' : Create diamond-shaped fading transition between the two last images ('start' and 'end' in [0..100]). 21.795 +fade_diamond : -float ${1=70},${2=90} 21.796 + -e "Create ($1%,$2%) diamond-shaped fading transition between the two last images." 21.797 + -v- 3x3 -f[-1] 0,1,0,1,1,1,0,1,0 -_fade $1,$2 -v+ 21.798 + 21.799 +# Image composition : try to generate an image containing all details of an image list. 21.800 +# Usage : gmic image1.jpg -compose_add image2.jpg -compose_add ... imageN.jpg -compose_add -compose 21.801 +#---------------------------------------------------------------------------------------------------- 21.802 +#@gmic compose_add : (no args) : Generate composition image from the last image (to be used with '-compose'). 21.803 +compose_add : 21.804 + -e "Generate composition image." 21.805 + -v- [-1] -gradient_norm -blur[-1] 2 -n[-1] 1,10 -sqr[-1] -s[-2] v -*[-4] [-1] 21.806 + -*[-3] [-1] -*[-2] [-1] -a[-4--1] v -v+ 21.807 + 21.808 +#@gmic compose : (no args) : Compose images of the list togethers. 21.809 +compose : 21.810 + -e "Compose all images of the list togethers." 21.811 + -v- -r [0],[0],1,4,0 -r [-1],3 -+ -s[-1] v -/[-4] [-1] -/[-3] [-1] -/[-2] [-1] 21.812 + -rm[-1] -a v -v+ 21.813 + 21.814 +# Multiply composition. 21.815 +#---------------------- 21.816 +#@gmic compose_multiply : (no args) : Compose the penultimate image with the last one, using multiply composition. 21.817 +compose_multiply : 21.818 + -e "Compose the penultimate image with the last one, using multiply composition." 21.819 + -v- -t float -r[-1] 100%x100%x1x[-2] -r[-1] [-2],3 -/[-1] 255 -*[-2,-1] -v+ 21.820 + 21.821 +# Screen composition. 21.822 +#--------------------- 21.823 +#@gmic compose_screen : (no args) : Compose the penultimate image with the last one, using screen composition. 21.824 +compose_screen : 21.825 + -e "Compose the penultimate image with the last one, using screen composition." 21.826 + -v- -t float -r[-1] 100%x100%x1x[-2] -r[-1] [-2],3 -/[-1] 255 21.827 + -*[-1] 1 -+[-1] 1 -*[-2] -1 -+[-2] 255 -*[-2,-1] -*[-1] -1 -+[-1] 255 -v+ 21.828 + 21.829 +# Overlay composition. 21.830 +#--------------------- 21.831 +#@gmic compose_overlay : (no args) : Compose the penultimate image with the last one, using overlay composition. 21.832 +compose_overlay : 21.833 + -e "Compose the penultimate image with the last one, using overlay composition." 21.834 + -v- -t float -r[-1] 100%x100%x1x[-2] -r[-1] [-2],3 -/[-1] 255 21.835 + --threshold[-1] 0.5 --*[-3] 4 -+[-1] 510 -*[-1] [-3] --[-1] 255 21.836 + -*[-4] 2 -+[-1] [-4] -*[-4,-3] -*[-3,-2] -+[-2,-1] -v+ 21.837 + 21.838 +# Print the factorial of an integer. 21.839 +#----------------------------------- 21.840 +#@gmic factorial : 'N' : Print the factorial of the integer 'N'. 21.841 +factorial : -int $1 21.842 + -v- ($1) -+[-1] 1 -if @-1 (1) (1) -repeat $1 -*[-1] @-2 -+[-2] 1 -done -v+ -e "Factorial($1) = @-1" -v- -rm[-3--1] 21.843 + -else -echo "Factorial($1) is undefined." -q -endif -v+ 21.844 + 21.845 +# This is a sucking easter-egg ! (R-Rated). 21.846 +#------------------------------------------ 21.847 +dick3d : 21.848 + -e "" 21.849 + -e "!!********************************************************!!" 21.850 + -e "!! Congratulations ! You have found the hidden Easter-egg !!" 21.851 + -e "!!********************************************************!!" 21.852 + -e "" 21.853 + -v- -rm -t float 2 1x2 1x1x2 -f -1,1 -r 100x100x100x1x3 -sqr -+ -* -8 -exp 21.854 + [0]x2 -translate[-1] 20 -translate[-2] -20 -+[-1,-2] -translate[-1] 0,-20 21.855 + -r[-2] 100x220x100x1x3 -r[-2] 100x100x100x3,0,0,1 -translate[-2] 0,10 -+ 21.856 + -isovalue3d 0.5 -rd3d 4 -d3d -v+ 21.857 + 21.858 +# Create 3D centered unit mapped cube from an image. 21.859 +#--------------------------------------------------- 21.860 +#@gmic imagecube3d : 'resolution' : Create a 3D mapped cube from the last image. 21.861 +imagecube3d : -int ${1=128} 21.862 + -e "Create 3D mapped cube of size $1x$1x$1 from last image." 21.863 + -v- -r[-1] $1,$1,1,-100,2 -mirror[-1] x -elevation3d[-1] 0 -c3d[-1] -n3d[-1] -+3d[-1] 0,0,0.5 --rot3d[-1] 0,1,0,180 21.864 + -+3d[-2,-1] --rot3d[-1] 0,1,0,90 --rot3d[-2] 1,0,0,90 -+3d[-3--1] -v+ 21.865 + 21.866 +# Local Variables: 21.867 +# mode: sh 21.868 +# End: 21.869 +# 21.870 +# (End of G'MIC macro file)
22.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 22.2 +++ b/PTdecode/CImg-1.3.0/examples/greycstoration.cpp Mon Aug 03 14:09:20 2009 +0100 22.3 @@ -0,0 +1,576 @@ 22.4 +/* 22.5 + # 22.6 + # File : greycstoration.cpp 22.7 + # ( C++ source file ) 22.8 + # 22.9 + # Description : GREYCstoration - A tool to denoise, inpaint and resize images. 22.10 + # This file is a part of the CImg Library project. 22.11 + # ( http://cimg.sourceforge.net ) 22.12 + # See also the GREYCstoration web page 22.13 + # ( http://www.greyc.ensicaen.fr/~dtschump/greycstoration ) 22.14 + # 22.15 + # The GREYCstoration algorithm is an implementation of tensor-directed and 22.16 + # patch-based diffusion PDE's for image regularization and interpolation, 22.17 + # published in 22.18 + # 22.19 + # "Defining Some Variational Methods on the Space of Patches : 22.20 + # Application to Multi-Valued Image Denoising and Registration" 22.21 + # (D. Tschumperle, L. Brun) 22.22 + # Rapport de recherche : Les cahiers du GREYC No 08-01, Mars 2008. 22.23 + # 22.24 + # "Fast Anisotropic Smoothing of Multi-Valued Images 22.25 + # using Curvature-Preserving PDE's" 22.26 + # (D. Tschumperle) 22.27 + # International Journal of Computer Vision, May 2006. 22.28 + # 22.29 + # "Vector-Valued Image Regularization with PDE's : A Common Framework 22.30 + # for Different Applications" 22.31 + # (D. Tschumperle, R. Deriche). 22.32 + # IEEE Transactions on Pattern Analysis and Machine Intelligence, 22.33 + # Vol 27, No 4, pp 506-517, April 2005. 22.34 + # 22.35 + # Copyright : David Tschumperle 22.36 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 22.37 + # 22.38 + # License : CeCILL v2.0 22.39 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 22.40 + # 22.41 + # This software is governed by the CeCILL license under French law and 22.42 + # abiding by the rules of distribution of free software. You can use, 22.43 + # modify and/ or redistribute the software under the terms of the CeCILL 22.44 + # license as circulated by CEA, CNRS and INRIA at the following URL 22.45 + # "http://www.cecill.info". 22.46 + # 22.47 + # As a counterpart to the access to the source code and rights to copy, 22.48 + # modify and redistribute granted by the license, users are provided only 22.49 + # with a limited warranty and the software's author, the holder of the 22.50 + # economic rights, and the successive licensors have only limited 22.51 + # liability. 22.52 + # 22.53 + # In this respect, the user's attention is drawn to the risks associated 22.54 + # with loading, using, modifying and/or developing or reproducing the 22.55 + # software by the user in light of its specific status of free software, 22.56 + # that may mean that it is complicated to manipulate, and that also 22.57 + # therefore means that it is reserved for developers and experienced 22.58 + # professionals having in-depth computer knowledge. Users are therefore 22.59 + # encouraged to load and test the software's suitability as regards their 22.60 + # requirements in conditions enabling the security of their systems and/or 22.61 + # data to be ensured and, more generally, to use and operate it in the 22.62 + # same conditions as regards security. 22.63 + # 22.64 + # The fact that you are presently reading this means that you have had 22.65 + # knowledge of the CeCILL license and that you accept its terms. 22.66 + # 22.67 +*/ 22.68 + 22.69 +#define cimg_plugin "plugins/greycstoration.h" 22.70 +#ifndef cimg_debug 22.71 +#if defined(_MSC_VER) || defined(WIN32) || defined(_WIN32) || defined(__WIN32__) \ 22.72 + || defined(WIN64) || defined(_WIN64) || defined(__WIN64__) 22.73 +#define cimg_debug 2 22.74 +#else 22.75 +#define cimg_debug 1 22.76 +#endif 22.77 +#endif 22.78 +#include "CImg.h" 22.79 +#if cimg_OS!=2 22.80 +#include <pthread.h> 22.81 +#endif 22.82 +#define gprintf if (verbose) std::fprintf 22.83 +using namespace cimg_library; 22.84 + 22.85 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 22.86 +#ifdef cimg_use_visualcpp6 22.87 +#define std 22.88 +#endif 22.89 +#ifdef min 22.90 +#undef min 22.91 +#undef max 22.92 +#endif 22.93 + 22.94 +//----------- 22.95 +// get_geom() : read geometry from a string (for instance '320x256' or '200%x200%'). 22.96 +//----------- 22.97 +void get_geom(const char *geom, int &geom_w, int &geom_h) { 22.98 + char tmp[16]; 22.99 + std::sscanf(geom,"%d%7[^0-9]%d%7[^0-9]",&geom_w,tmp,&geom_h,tmp+1); 22.100 + if (tmp[0]=='%') geom_w=-geom_w; 22.101 + if (tmp[1]=='%') geom_h=-geom_h; 22.102 +} 22.103 + 22.104 +//-------------------------- 22.105 +// GREYCstoration main code 22.106 +//-------------------------- 22.107 +template<typename T> void greycstoration(int argc, char **argv, T pixel_type) { 22.108 + pixel_type = (T)0; 22.109 + cimg_usage(" Open Source Algorithms for Image Denoising and Interpolation."); 22.110 + cimg_help("-------------------------------------------------------------------------\n" 22.111 + " GREYCstoration v3.0, by David Tschumperle. \n" 22.112 + " ------------------------------------------------------------------------\n" 22.113 + " This program allows to denoise, inpaint and resize 2D color images. \n" 22.114 + " It is the result of the research work done in the IMAGE group of the \n" 22.115 + " GREYC Lab (CNRS, UMR 6072) (http://www.greyc.ensicaen.fr/EquipeImage/) \n" 22.116 + " by David Tschumperle (http://www.greyc.ensicaen.fr/~dtschump/). This \n" 22.117 + " program has been primarily released to help people processing image data\n" 22.118 + " and to allow comparisons between regularization algorithms. This is an \n" 22.119 + " open source software, distributed within the CImg Library package \n" 22.120 + " (http://cimg.sourceforge.net), and submitted to the CeCILL License. If \n" 22.121 + " you are interested to distribute it in a closed-source product, please \n" 22.122 + " read the licence file carefully. If you are using 'GREYCstored' images \n" 22.123 + " in your own publications, be kind to reference the GREYCstoration web \n" 22.124 + " site or the related scientific papers. More informations available at : \n" 22.125 + " ** http://cimg.sourceforge.net/greycstoration/ ** \n" 22.126 + "-------------------------------------------------------------------------\n"); 22.127 + 22.128 + // Read Global parameters 22.129 + //------------------------ 22.130 + cimg_help(" + Global parameters\n -----------------------"); 22.131 + const char *restore_mode = cimg_option("-restore",(char*)0,"Restore image specified after '-restore'"); 22.132 + const char *inpaint_mode = cimg_option("-inpaint",(char*)0,"Inpaint image specified after '-inpaint'"); 22.133 + const char *resize_mode = cimg_option("-resize",(char*)0,"Resize image specified after '-resize'"); 22.134 + const char *clean_mode = cimg_option("-clean",(char*)0,"Clean image specified after '-clean'"); 22.135 + const char *reference_image = cimg_option("-ref",(char*)0,"Reference image to compare with"); 22.136 + const char nb_bits = cimg_option("-bits",8,"Define input value type (8='uchar', 16='ushort', 32='float')"); 22.137 + const unsigned int value_factor = cimg_option("-fact",0,"Define input value factor (0=auto)"); 22.138 + const float noise_g = cimg_option("-ng",0.0f,"Add Gaussian noise before denoising"); 22.139 + const float noise_u = cimg_option("-nu",0.0f,"Add Uniform noise before denoising"); 22.140 + const float noise_s = cimg_option("-ns",0.0f,"Add Salt&Pepper noise before denoising"); 22.141 + const unsigned int color_base = cimg_option("-cbase",0,"Processed color base (0=RGB, 1=YCbCr)"); 22.142 + const char *channel_range = cimg_option("-crange",(char*)0,"Processed channels (ex: '0-2')"); 22.143 + const unsigned int saving_step = cimg_option("-save",0,"Iteration saving step (>=0)"); 22.144 + const bool visu = cimg_option("-visu",cimg_display?true:false,"Enable/Disable visualization windows (0 or 1)"); 22.145 + const char *file_o = cimg_option("-o",(char*)0,"Filename of output image"); 22.146 + const bool append_result = cimg_option("-append",false,"Append images in output file"); 22.147 + const bool verbose = cimg_option("-verbose",true,"Verbose mode"); 22.148 + const unsigned int jpg_quality = cimg_option("-quality",100,"Output compression quality (if JPEG format)"); 22.149 + unsigned int nb_iterations = cimg_option("-iter",(restore_mode||clean_mode)?1:(inpaint_mode?1000:3), 22.150 + "Number of iterations (>0)"); 22.151 + const float sdt = cimg_option("-sharp",(restore_mode||clean_mode)?0.0f:(inpaint_mode?0.0f:10.0f), 22.152 + "Sharpening strength (activate sharpening filter, >=0)"); 22.153 + const float sp = cimg_option("-se",(restore_mode||clean_mode)?0.5f:(inpaint_mode?0.5f:3.0f), 22.154 + "Sharpening edge threshold (>=0)"); 22.155 + const unsigned int tile_size = cimg_option("-tile",512,"Activate tiled mode and set tile size (>=0)"); 22.156 + const unsigned int tile_border = cimg_option("-btile",4,"Size of tile borders (>=0)"); 22.157 + const unsigned int nb_threads = cimg_option("-threads",1,"Number of threads used (*experimental*, tile mode only, >0)"); 22.158 + const bool fast_approx = cimg_option("-fast",true,"Try faster algorithm (true or false)"); 22.159 + 22.160 + // Declare specific algorithm parameters 22.161 + //-------------------------------------- 22.162 + float amplitude = 0, sharpness = 0, anisotropy = 0, alpha = 0, sigma = 0, gauss_prec = 0, dl = 0, da = 0, sigma_s = 0, sigma_p = 0; 22.163 + unsigned int interpolation = 0, patch_size = 0, lookup_size = 0; 22.164 + 22.165 + if (argc==1 || 22.166 + (!restore_mode && !inpaint_mode && !resize_mode && !clean_mode) || 22.167 + (restore_mode && inpaint_mode) || (restore_mode && resize_mode) || (restore_mode && clean_mode) || 22.168 + (inpaint_mode && resize_mode) || (inpaint_mode && clean_mode)) { 22.169 + std::fprintf(stderr,"\n%s : You must specify (only) one of the '-restore', '-inpaint', '-resize' or '-clean' options.\n" 22.170 + "(try option '-h', '-h -restore','-h -inpaint', '-h -resize' or '-h -clean' to get options relative to specific actions\n\n", 22.171 + cimg::basename(argv[0])); 22.172 + std::exit(0); 22.173 + } 22.174 + 22.175 + // Init variables 22.176 + //---------------- 22.177 + CImg<T> img0, img, imgr; 22.178 + CImg<unsigned char> mask; 22.179 + CImgDisplay disp; 22.180 + 22.181 + // Read specific parameters for image restoration 22.182 + //------------------------------------------------ 22.183 + if (restore_mode) { 22.184 + cimg_help("\n + Restoration mode parameters\n ---------------------------"); 22.185 + amplitude = cimg_option("-dt",40.0f,"Regularization strength per iteration (>=0)"); 22.186 + sharpness = cimg_option("-p",0.9f,"Contour preservation (>=0)"); 22.187 + anisotropy = cimg_option("-a",0.15f,"Smoothing anisotropy (0<=a<=1)"); 22.188 + alpha = cimg_option("-alpha",0.6f,"Noise scale (>=0)"); 22.189 + sigma = cimg_option("-sigma",1.1f,"Geometry regularity (>=0)"); 22.190 + gauss_prec = cimg_option("-prec",2.0f,"Computation precision (>0)"); 22.191 + dl = cimg_option("-dl",0.8f,"Spatial integration step (0<=dl<=1)"); 22.192 + da = cimg_option("-da",30.0f,"Angular integration step (0<=da<=90)"); 22.193 + interpolation = cimg_option("-interp",0,"Interpolation type (0=Nearest-neighbor, 1=Linear, 2=Runge-Kutta)"); 22.194 + 22.195 + gprintf(stderr,"- Image Restoration mode\n"); 22.196 + if (!cimg::strcmp("-restore",restore_mode)) { 22.197 + std::fprintf(stderr,"%s : You must specify a valid input image filename after the '-restore' flag.\n\n",cimg::basename(argv[0])); 22.198 + std::exit(0); 22.199 + } 22.200 + gprintf(stderr,"- Load input image '%s'...",cimg::basename(restore_mode)); 22.201 + img.load(restore_mode); 22.202 + gprintf(stderr,"\r- Input image : '%s' (size %dx%d, value range [%g,%g])\n", 22.203 + cimg::basename(restore_mode),img.dimx(),img.dimy(),(double)img.min(),(double)img.max()); 22.204 + if (noise_g || noise_u || noise_s) { 22.205 + img0 = img; 22.206 + img.noise(noise_g,0).noise(noise_u,1).noise(noise_s,2); 22.207 + gprintf(stderr,"\r- Noisy image : value range [%g,%g], PSNR Noisy / Original : %g\n", 22.208 + (double)img.min(),(double)img.max(),img.PSNR(img0)); 22.209 + } 22.210 + } 22.211 + 22.212 + // Specific parameters for image inpainting 22.213 + //----------------------------------------- 22.214 + if (inpaint_mode) { 22.215 + cimg_help("\n + Inpainting mode parameters\n --------------------------"); 22.216 + const char *file_m = cimg_option("-m",(char*)0,"Input inpainting mask"); 22.217 + const unsigned int dilate = cimg_option("-dilate",0,"Inpainting mask dilatation (>=0)"); 22.218 + const unsigned int init = cimg_option("-init",4,"Inpainting init (0=black, 1=white, 2=noise, 3=unchanged, 4=smart)"); 22.219 + amplitude = cimg_option("-dt",20.0f,"Regularization strength per iteration (>=0)"); 22.220 + sharpness = cimg_option("-p",0.3f,"Contour preservation (>=0)"); 22.221 + anisotropy = cimg_option("-a",1.0f,"Smoothing anisotropy (0<=a<=1)"); 22.222 + alpha = cimg_option("-alpha",0.8f,"Noise scale (>=0)"); 22.223 + sigma = cimg_option("-sigma",2.0f,"Geometry regularity (>=0)"); 22.224 + gauss_prec = cimg_option("-prec",2.0f,"Computation precision (>0)"); 22.225 + dl = cimg_option("-dl",0.8f,"Spatial integration step (0<=dl<=1)"); 22.226 + da = cimg_option("-da",30.0f,"Angular integration step (0<=da<=90)"); 22.227 + interpolation = cimg_option("-interp",0,"Interpolation type (0=Nearest-neighbor, 1=Linear, 2=Runge-Kutta)"); 22.228 + 22.229 + gprintf(stderr,"- Image Inpainting mode\n"); 22.230 + if (!cimg::strcmp("-inpaint",inpaint_mode)) { 22.231 + std::fprintf(stderr,"%s : You must specify a valid input image filename after the '-inpaint' flag.\n\n", 22.232 + cimg::basename(argv[0])); 22.233 + std::exit(0); 22.234 + } 22.235 + gprintf(stderr,"- Load input image '%s'...",cimg::basename(inpaint_mode)); 22.236 + img.load(inpaint_mode); 22.237 + gprintf(stderr,"\r- Input image : '%s' (size %dx%d, value range [%g,%g])\n", 22.238 + cimg::basename(inpaint_mode),img.dimx(),img.dimy(),(double)img.min(),(double)img.max()); 22.239 + if (noise_g || noise_u || noise_s) { 22.240 + img0 = img; 22.241 + img.noise(noise_g,0).noise(noise_u,1).noise(noise_s,2); 22.242 + gprintf(stderr,"\r- Noisy image : value range [%g,%g], PSNR Noisy / Original : %g\n", 22.243 + (double)img.min(),(double)img.max(),img.PSNR(img0)); 22.244 + } 22.245 + if (!file_m) { 22.246 + std::fprintf(stderr,"%s : You need to specify a valid inpainting mask filename after the '-m' flag.\n\n", 22.247 + cimg::basename(argv[0])); 22.248 + std::exit(0); 22.249 + } 22.250 + if (cimg::strncasecmp("block",file_m,5)) { 22.251 + gprintf(stderr,"- Load inpainting mask '%s'...",cimg::basename(file_m)); 22.252 + mask.load(file_m); 22.253 + gprintf(stderr,"\r- Inpainting mask : '%s' (size %dx%d)\n", 22.254 + cimg::basename(file_m),mask.dimx(),mask.dimy()); 22.255 + } 22.256 + else { 22.257 + unsigned int l = 16; std::sscanf(file_m,"block%u",&l); 22.258 + mask.assign(img.dimx()/l,img.dimy()/l); 22.259 + cimg_forXY(mask,x,y) mask(x,y) = (x+y)%2; 22.260 + img0 = img; 22.261 + } 22.262 + mask.resize(img.dimx(),img.dimy(),1,1); 22.263 + if (dilate) mask.dilate(dilate); 22.264 + switch (init) { 22.265 + case 0 : { cimg_forXYV(img,x,y,k) if (mask(x,y)) img(x,y,k) = 0; } break; 22.266 + case 1 : { cimg_forXYV(img,x,y,k) if (mask(x,y)) img(x,y,k) = 255; } break; 22.267 + case 2 : { cimg_forXYV(img,x,y,k) if (mask(x,y)) img(x,y,k) = (T)(255*cimg::rand()); } break; 22.268 + case 3 : break; 22.269 + default: { 22.270 + typedef unsigned char uchar; 22.271 + CImg<unsigned char> tmask(mask), ntmask(tmask); 22.272 + CImg_3x3(M,uchar); Mpp = Mnp = Mpn = Mnn = 0; 22.273 + CImg_3x3(I,T); Ipp = Inp = Icc = Ipn = Inn = 0; 22.274 + while (ntmask.max()>0) { 22.275 + cimg_for3x3(tmask,x,y,0,0,M) if (Mcc && (!Mpc || !Mnc || !Mcp || !Mcn)) { 22.276 + const float 22.277 + ccp = Mcp?0.0f:1.0f, cpc = Mpc?0.0f:1.0f, 22.278 + cnc = Mnc?0.0f:1.0f, ccn = Mcn?0.0f:1.0f, 22.279 + csum = ccp + cpc + cnc + ccn; 22.280 + cimg_forV(img,k) { 22.281 + cimg_get3x3(img,x,y,0,k,I); 22.282 + img(x,y,k) = (T)((ccp*Icp + cpc*Ipc + cnc*Inc + ccn*Icn)/csum); 22.283 + } 22.284 + ntmask(x,y) = 0; 22.285 + } 22.286 + tmask = ntmask; 22.287 + } 22.288 + } break; 22.289 + } 22.290 + } 22.291 + 22.292 + // Specific parameters for image resizing 22.293 + //---------------------------------------- 22.294 + if (resize_mode) { 22.295 + cimg_help("\n + Resizing mode parameters\n ------------------------"); 22.296 + const char *geom0 = cimg_option("-g0",(char*)0,"Input image geometry"); 22.297 + const char *geom = cimg_option("-g",(char*)0,"Output image geometry"); 22.298 + const bool anchor = cimg_option("-anchor",true,"Anchor original pixels (keep their original values)"); 22.299 + const unsigned int init = cimg_option("-init",3,"Initial estimate (1=block, 3=linear, 4=Moving average, 5=bicubic)"); 22.300 + amplitude = cimg_option("-dt",20.0f,"Regularization strength per iteration (>=0)"); 22.301 + sharpness = cimg_option("-p",0.2f,"Contour preservation (>=0)"); 22.302 + anisotropy = cimg_option("-a",0.9f,"Smoothing anisotropy (0<=a<=1)"); 22.303 + alpha = cimg_option("-alpha",0.1f,"Noise scale (>=0)"); 22.304 + sigma = cimg_option("-sigma",1.5f,"Geometry regularity (>=0)"); 22.305 + gauss_prec = cimg_option("-prec",2.0f,"Computation precision (>0)"); 22.306 + dl = cimg_option("-dl",0.8f,"Spatial integration step (0<=dl<=1)"); 22.307 + da = cimg_option("-da",30.0f,"Angular integration step (0<=da<=90)"); 22.308 + interpolation = cimg_option("-interp",0,"Interpolation type (0=Nearest-neighbor, 1=Linear, 2=Runge-Kutta)"); 22.309 + 22.310 + gprintf(stderr,"- Image Resizing mode\n"); 22.311 + if (!geom && !geom0) { 22.312 + std::fprintf(stderr,"%s : You need to specify an output geometry or an input geometry (option -g or -g0).\n\n", 22.313 + cimg::basename(argv[0])); 22.314 + std::exit(0); 22.315 + } 22.316 + if (!cimg::strcmp("-resize",resize_mode)) { 22.317 + std::fprintf(stderr,"%s : You must specify a valid input image filename after the '-resize' flag.\n\n", 22.318 + cimg::basename(argv[0])); 22.319 + std::exit(0); 22.320 + } 22.321 + gprintf(stderr,"- Load input image '%s'...",cimg::basename(resize_mode)); 22.322 + img.load(resize_mode); 22.323 + gprintf(stderr,"\r- Input image : '%s' (size %dx%d, value range [%g,%g])\n", 22.324 + cimg::basename(resize_mode),img.dimx(),img.dimy(),(double)img.min(),(double)img.max()); 22.325 + if (noise_g || noise_u || noise_s) { 22.326 + img0 = img; 22.327 + img.noise(noise_g,0).noise(noise_u,1).noise(noise_s,2); 22.328 + gprintf(stderr,"\r- Noisy image : value range [%g,%g], PSNR Noisy / Original : %g\n", 22.329 + (double)img.min(),(double)img.max(),img.PSNR(img0)); 22.330 + } 22.331 + int w, h; 22.332 + if (geom0) { 22.333 + int w0, h0; 22.334 + get_geom(geom0,w0,h0); 22.335 + w0 = w0>0?w0:-w0*img.dimx()/100; 22.336 + h0 = h0>0?h0:-h0*img.dimy()/100; 22.337 + gprintf(stderr,"- Reducing geometry to %dx%d using %s interpolation.\n",w0,h0, 22.338 + init==1?"bloc":(init==3?"linear":(init==5?"bicubic":"moving average"))); 22.339 + img0.assign(img); 22.340 + w = img.dimx(); 22.341 + h = img.dimy(); 22.342 + img.resize(w0,h0,-100,-100,5); 22.343 + } 22.344 + if (geom) { 22.345 + get_geom(geom,w,h); 22.346 + w = w>0?w:-w*img.dimx()/100; 22.347 + h = h>0?h:-h*img.dimy()/100; 22.348 + } 22.349 + mask.assign(img.dimx(),img.dimy(),1,1,255); 22.350 + if (!anchor) mask.resize(w,h,1,1,1); else mask = !mask.resize(w,h,1,1,4); 22.351 + img.resize(w,h,1,-100,init); 22.352 + if (img0) { gprintf(stderr,"\r- PSNR Original / Thumbnail : %g\n",img.PSNR(img0)); } 22.353 + } 22.354 + 22.355 + // Specific parameters for image cleaning 22.356 + //---------------------------------------- 22.357 + if (clean_mode) { 22.358 + cimg_help("\n + Cleaning mode parameters\n ------------------------"); 22.359 + patch_size = cimg_option("-p",4,"Patch size (>0)"); 22.360 + sigma_s = cimg_option("-ss",15.0f,"Spatial sigma (>0)"); 22.361 + sigma_p = cimg_option("-sp",10.0f,"Patch sigma (>0)"); 22.362 + lookup_size = cimg_option("-r",7,"Size of the lookup region (>0)"); 22.363 + 22.364 + gprintf(stderr,"- Image Cleaning mode\n"); 22.365 + if (!cimg::strcmp("-clean",clean_mode)) { 22.366 + std::fprintf(stderr,"%s : You must specify a valid input image filename after the '-clean' flag.\n\n", 22.367 + cimg::basename(argv[0])); 22.368 + std::exit(0); 22.369 + } 22.370 + gprintf(stderr,"- Load input image '%s'...",cimg::basename(clean_mode)); 22.371 + img.load(clean_mode); 22.372 + gprintf(stderr,"\r- Input image : '%s' (size %dx%d, value range [%g,%g])\n", 22.373 + cimg::basename(clean_mode),img.dimx(),img.dimy(),(double)img.min(),(double)img.max()); 22.374 + if (noise_g || noise_u || noise_s) { 22.375 + img0 = img; 22.376 + img.noise(noise_g,0).noise(noise_u,1).noise(noise_s,2); 22.377 + gprintf(stderr,"\r- Noisy image : value range [%g,%g], PSNR Noisy / Original : %g\n", 22.378 + (double)img.min(),(double)img.max(),img.PSNR(img0)); 22.379 + } 22.380 + } 22.381 + 22.382 + // Load reference image if any specified 22.383 + //-------------------------------------- 22.384 + if (reference_image) { 22.385 + gprintf(stderr,"- Load reference image '%s'...",cimg::basename(reference_image)); 22.386 + imgr.load(reference_image); 22.387 + gprintf(stderr,"\r- Reference image : '%s' (size %dx%d, value range [%g,%g])", 22.388 + cimg::basename(reference_image),imgr.dimx(),imgr.dimy(),(double)imgr.min(),(double)imgr.max()); 22.389 + if (img0) { imgr.resize(img0); gprintf(stderr,", PSNR Reference / Original : %g dB\n",imgr.PSNR(img0)); } 22.390 + else { imgr.resize(img); gprintf(stderr,"\n"); } 22.391 + } 22.392 + 22.393 + // Init images and display 22.394 + //------------------------- 22.395 + CImg<T> dest(img); 22.396 + unsigned int crange_beg = 0, crange_end = dest.dimv()-1U; 22.397 + if (color_base) { 22.398 + switch (nb_bits) { 22.399 + case 8: dest.RGBtoYCbCr(); break; 22.400 + case 16: (dest/=256).RGBtoYCbCr(); break; 22.401 + default: std::fprintf(stderr,"\n%s : YCbCr color base is not authorized for 32bits float-valued images.\n\n", 22.402 + cimg::basename(argv[0])); std::exit(0); 22.403 + } 22.404 + } 22.405 + if (channel_range) std::sscanf(channel_range,"%u%*c%u",&crange_beg,&crange_end); 22.406 + gprintf(stderr,"- Color base : %s, Channels range : %u-%u\n",color_base?"YCbCr":"RGB",crange_beg,crange_end); 22.407 + if (!visu && !append_result) img.assign(); 22.408 + if (visu) { 22.409 + const int sx = 2*CImgDisplay::screen_dimx()/3, sy = 2*CImgDisplay::screen_dimy()/3; 22.410 + int nwidth = dest.dimx(), nheight = dest.dimy(); 22.411 + if (nwidth>sx) { nheight = nheight*sx/nwidth; nwidth = sx; } 22.412 + if (nheight>sy) { nwidth = nwidth*sy/nheight; nheight = sy; } 22.413 + disp.assign(nwidth,nheight,"GREYCstoration"); 22.414 + if (color_base) { 22.415 + if (nb_bits==16) (dest.get_YCbCrtoRGB()*=256).display(disp); 22.416 + else dest.get_YCbCrtoRGB().display(disp); 22.417 + } 22.418 + else dest.display(disp); 22.419 + } 22.420 + const float gfact = (value_factor>0)?value_factor:((sizeof(T)==2)?1.0f/256:1.0f); 22.421 + 22.422 + //--------------------------------- 22.423 + // Begin GREYCstoration iterations 22.424 + //--------------------------------- 22.425 + bool stop_all = false; 22.426 + for (unsigned int iter=0; iter<nb_iterations && !stop_all; iter++) { 22.427 + bool stop_iteration = false; 22.428 + 22.429 + // Run one iteration of the GREYCstoration filter 22.430 + //------------------------------------------------ 22.431 + CImg<T> dest_range = dest.get_shared_channels(crange_beg,crange_end); 22.432 + if (restore_mode) 22.433 + dest_range.greycstoration_run(amplitude,sharpness,anisotropy,alpha,sigma,gfact,dl,da,gauss_prec, 22.434 + interpolation,fast_approx,tile_size,tile_border,nb_threads); 22.435 + if (clean_mode) 22.436 + dest_range.greycstoration_patch_run(patch_size,sigma_s,sigma_p,lookup_size, 22.437 + tile_size,tile_border,nb_threads,fast_approx); 22.438 + if (inpaint_mode || resize_mode) 22.439 + dest_range.greycstoration_run(mask,amplitude,sharpness,anisotropy,alpha,sigma,gfact,dl,da,gauss_prec, 22.440 + interpolation,fast_approx,tile_size,tile_border,nb_threads); 22.441 + do { 22.442 + const unsigned int progress = (unsigned int)dest_range.greycstoration_progress(); 22.443 + gprintf(stderr,"\r- Processing : Iteration %u/%u (%u%%)\t\t",1+iter,nb_iterations,progress); 22.444 + if (disp) { 22.445 + if (disp.is_resized) disp.resize(); 22.446 + disp.set_title("Processing : Iteration %u/%u (%u%%)",1+iter,nb_iterations,progress); 22.447 + if (disp.is_closed || disp.is_keyQ || disp.is_keyESC) { 22.448 + dest_range.greycstoration_stop(); 22.449 + stop_iteration = true; 22.450 + iter = nb_iterations-1; 22.451 + } 22.452 + } 22.453 + cimg::wait(200); 22.454 + } while (dest_range.greycstoration_is_running()); 22.455 + if (!stop_iteration && sdt>0) dest_range.sharpen(sdt,sp,alpha/3,sigma/3); 22.456 + dest_range.cut(cimg::type<T>::min(),cimg::type<T>::max()); 22.457 + 22.458 + // Prepare for next iteration 22.459 + //--------------------------- 22.460 + CImg<T> tmp_rgb = color_base?(nb_bits==16?dest.get_YCbCrtoRGB()*=256:dest.get_YCbCrtoRGB()):CImg<T>(), 22.461 + &dest_rgb = color_base?tmp_rgb:dest; 22.462 + if (disp && visu) dest_rgb.display(disp); 22.463 + if (file_o && saving_step && !(iter%saving_step)) dest_rgb.save(file_o,iter); 22.464 + 22.465 + // Display result and allows user interaction if needed. 22.466 + //------------------------------------------------------- 22.467 + if (iter==nb_iterations-1) { 22.468 + gprintf(stderr,"\r- Processing : Done ! \n"); 22.469 + if (img0) { gprintf(stderr,"- PSNR Restored / Original : %g dB\n",dest_rgb.PSNR(img0)); } 22.470 + if (disp) { 22.471 + static bool first_time = true; 22.472 + if (first_time) { 22.473 + first_time = false; 22.474 + gprintf(stderr, 22.475 + "- GREYCstoration interface :\n" 22.476 + " > You can now zoom to a particular rectangular region,\n" 22.477 + " or press one of the following key on the display window :\n" 22.478 + " SPACE : Swap views.\n" 22.479 + " S : Save a snapshot of the current image.\n" 22.480 + " I : Run another iteration.\n" 22.481 + " Q : Quit GREYCstoration.\n"); 22.482 + } 22.483 + 22.484 + CImgList<T> visu; 22.485 + visu.insert(img0,~0,true).insert(img,~0,true).insert(dest_rgb,~0,true).insert(imgr,~0U,true); 22.486 + const char *titles[4] = { "original", "noisy", "restored", "reference"}; 22.487 + unsigned int visupos = 2; 22.488 + CImgDisplay dispz; 22.489 + CImg<T> zoom; 22.490 + int snb = 0; 22.491 + bool stop_interact = false; 22.492 + while (!stop_interact) { 22.493 + disp.show().set_title("GREYCstoration (%s)",titles[visupos]); 22.494 + const CImg<int> s = visu(visupos).get_select(disp,2); 22.495 + if (disp.is_closed) stop_interact = true; 22.496 + switch (disp.key) { 22.497 + case cimg::keySPACE: do { visupos = (visupos+1)%visu.size; } while (!visu(visupos)); break; 22.498 + case cimg::keyBACKSPACE: do { visupos = (visupos-1+visu.size)%visu.size; } while (!visu(visupos)); break; 22.499 + case cimg::keyQ: stop_interact = stop_all = true; break; 22.500 + case cimg::keyI: 22.501 + stop_interact = true; 22.502 + gprintf(stderr,"- Perform iteration %u...\n",++nb_iterations); 22.503 + dest_rgb.display(disp); 22.504 + break; 22.505 + case cimg::keyS: 22.506 + if (!snb) { 22.507 + if (!append_result) dest_rgb.save(file_o?file_o:"GREYCstoration.bmp"); 22.508 + else CImgList<T>(img,dest_rgb).get_append('x').save(file_o?file_o:"GREYCstoration.bmp"); 22.509 + } 22.510 + if (zoom) zoom.save(file_o?file_o:"GREYCstoration.bmp",snb); 22.511 + gprintf(stderr,"- Snapshot %u : '%s' saved\n",snb++,file_o?file_o:"GREYCstoration.bmp"); 22.512 + break; 22.513 + } 22.514 + disp.key = 0; 22.515 + if (disp.is_resized) disp.resize().display(visu(visupos)); 22.516 + if (dispz && dispz.is_resized) dispz.resize().display(zoom); 22.517 + if (dispz && dispz.is_closed) dispz.assign(); 22.518 + 22.519 + if (s[0]>=0 && s[1]>=0 && s[3]>=0 && s[4]>=0) { 22.520 + const int x0 = s[0], y0 = s[1], x1 = s[3], y1 = s[4]; 22.521 + if (cimg::abs(x0-x1)>4 && cimg::abs(y0-y1)>4) { 22.522 + CImgList<T> tmp(img.get_crop(x0,y0,x1,y1), dest_rgb.get_crop(x0,y0,x1,y1)); 22.523 + if (img0) tmp.insert(img0.get_crop(x0,y0,x1,y1),0); 22.524 + if (imgr) tmp.insert(imgr.get_crop(x0,y0,x1,y1)); 22.525 + zoom = tmp.get_append('x','c'); 22.526 + if (!dispz) { 22.527 + const int sx = 5*CImgDisplay::screen_dimx()/6, sy = 5*CImgDisplay::screen_dimy()/6; 22.528 + int nwidth = zoom.dimx(), nheight = zoom.dimy(); 22.529 + if (nwidth>nheight) { nheight = nheight*sx/nwidth; nwidth = sx; } 22.530 + else { nwidth = nwidth*sy/nheight; nheight = sy; } 22.531 + dispz.assign(zoom.get_resize(nwidth,nheight)); 22.532 + dispz.set_title("GREYCstoration (zoom) : - %s %s %s %s", 22.533 + img0?"original -":"", 22.534 + img?"noisy -":"", 22.535 + dest?"restored -":"", 22.536 + imgr?"reference -":""); 22.537 + } else dispz.resize(dispz.dimx(),dispz.dimx()*zoom.dimy()/zoom.dimx(),false); 22.538 + dispz.display(zoom).show(); 22.539 + } 22.540 + } 22.541 + } 22.542 + } 22.543 + } 22.544 + } 22.545 + 22.546 + // Save result and exit 22.547 + //---------------------- 22.548 + if (file_o) { 22.549 + CImg<T> tmp_rgb = color_base?(nb_bits==16?dest.get_YCbCrtoRGB()*=256:dest.get_YCbCrtoRGB()):CImg<T>(), 22.550 + &dest_rgb = color_base?tmp_rgb:dest; 22.551 + if (jpg_quality) { 22.552 + gprintf(stderr,"\n- Saving output image '%s' (JPEG quality = %u%%)\n",file_o,jpg_quality); 22.553 + if (!append_result) dest_rgb.save_jpeg(file_o,jpg_quality); 22.554 + else CImgList<T>(img,dest_rgb).get_append('x').save_jpeg(file_o,jpg_quality); 22.555 + } else { 22.556 + gprintf(stderr,"\n- Saving output image '%s'\n",file_o); 22.557 + if (!append_result) dest_rgb.save(file_o); 22.558 + else CImgList<T>(img,dest_rgb).get_append('x').save(file_o); 22.559 + } 22.560 + } 22.561 + gprintf(stderr,"\n- Quit\n\n"); 22.562 +} 22.563 + 22.564 + 22.565 +/*----------------- 22.566 + Main procedure 22.567 + ----------------*/ 22.568 +int main(int argc,char **argv) { 22.569 + const unsigned int color_base = cimg_option("-cbase",0,0); 22.570 + switch (cimg_option("-bits",8,0)) { 22.571 + case 32: { float pixel_type = 0; greycstoration(argc,argv,pixel_type); } break; 22.572 + case 16: { 22.573 + if (!color_base) { float pixel_type = 0; greycstoration(argc,argv,pixel_type); } 22.574 + else { unsigned short pixel_type = 0; greycstoration(argc,argv,pixel_type); } 22.575 + } break; 22.576 + default: { unsigned char pixel_type = 0; greycstoration(argc,argv,pixel_type); } break; 22.577 + } 22.578 + return 0; 22.579 +}
23.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 23.2 +++ b/PTdecode/CImg-1.3.0/examples/greycstoration4gimp.cpp Mon Aug 03 14:09:20 2009 +0100 23.3 @@ -0,0 +1,649 @@ 23.4 +/* 23.5 + # 23.6 + # File : greycstoration4gimp.cpp 23.7 + # ( C++ source file ) 23.8 + # 23.9 + # Description : GREYCstoration - A tool to denoise, inpaint and resize images. 23.10 + # ( GIMP>=2.3.4 plug-in version ) 23.11 + # This file is a part of the CImg Library project. 23.12 + # ( http://cimg.sourceforge.net ) 23.13 + # 23.14 + # The GREYCstoration algorithm is an implementation of diffusion tensor-directed 23.15 + # diffusion PDE's for image regularization and interpolation, published in 23.16 + # 23.17 + # "Fast Anisotropic Smoothing of Multi-Valued Images 23.18 + # using Curvature-Preserving PDE's" 23.19 + # (D. Tschumperle) 23.20 + # International Journal of Computer Vision, May 2006. 23.21 + # (see also http://www.greyc.ensicaen.fr/~dtschump/greycstoration) 23.22 + # 23.23 + # "Vector-Valued Image Regularization with PDE's : A Common Framework 23.24 + # for Different Applications" 23.25 + # (D. Tschumperle, R. Deriche). 23.26 + # IEEE Transactions on Pattern Analysis and Machine Intelligence, 23.27 + # Vol 27, No 4, pp 506-517, April 2005. 23.28 + # 23.29 + # Copyright : Grzegorz Szwoch (Original GIMP plugin code) 23.30 + # David Tschumperle (GREYCstoration API) 23.31 + # Nikita Melnichenko (Bugs corrections) 23.32 + # Phillip Wood (Contribution) 23.33 + # 23.34 + # Plug-in version: 1.1 23.35 + # Version history: 23.36 + # 2008.12.05 23.37 + # - Support for denoising in YCrCb color space (patch by Phillip Wood) 23.38 + # 2.9 (2008.06.09) 23.39 + # - New version number, following the release number of CImg. 23.40 + # - Non-interactive mode allowed (patch by Nikita Melnichenko). 23.41 + # - Pdb description parameters re-ordered (patch by Nikita Melnichenko). 23.42 + # - Bug correction when dealing with 16 bits image processed in the 23.43 + # YUV color space. 23.44 + # 1.1 (2007.03.31) 23.45 + # - Added support for GimpZoomPreview (optional) 23.46 + # - Make plug-in work for 1 bpp images 23.47 + # - Added button to reset parameters to the initial state 23.48 + # 1.0 (2007.03.09) 23.49 + # - Initial release 23.50 + # 23.51 + # License : CeCILL v2.0 23.52 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 23.53 + # 23.54 + # This software is governed by the CeCILL license under French law and 23.55 + # abiding by the rules of distribution of free software. You can use, 23.56 + # modify and/ or redistribute the software under the terms of the CeCILL 23.57 + # license as circulated by CEA, CNRS and INRIA at the following URL 23.58 + # "http://www.cecill.info". 23.59 + # 23.60 + # As a counterpart to the access to the source code and rights to copy, 23.61 + # modify and redistribute granted by the license, users are provided only 23.62 + # with a limited warranty and the software's author, the holder of the 23.63 + # economic rights, and the successive licensors have only limited 23.64 + # liability. 23.65 + # 23.66 + # In this respect, the user's attention is drawn to the risks associated 23.67 + # with loading, using, modifying and/or developing or reproducing the 23.68 + # software by the user in light of its specific status of free software, 23.69 + # that may mean that it is complicated to manipulate, and that also 23.70 + # therefore means that it is reserved for developers and experienced 23.71 + # professionals having in-depth computer knowledge. Users are therefore 23.72 + # encouraged to load and test the software's suitability as regards their 23.73 + # requirements in conditions enabling the security of their systems and/or 23.74 + # data to be ensured and, more generally, to use and operate it in the 23.75 + # same conditions as regards security. 23.76 + # 23.77 + # The fact that you are presently reading this means that you have had 23.78 + # knowledge of the CeCILL license and that you accept its terms. 23.79 + # 23.80 +*/ 23.81 + 23.82 +/* HOW TO COMPILE THIS PLUG-IN ? 23.83 + *------------------------------ 23.84 + * g++ -o greycstoration4gimp greycstoration4gimp.cpp `gimptool-2.0 --cflags` `gimptool-2.0 --libs` -lpthread -O3 23.85 + * Then, copy the file 'greycstoration4gimp' into your GIMP plug-in directory. 23.86 + */ 23.87 + 23.88 +//---------------------------------- 23.89 +// Define static plug-in parameters 23.90 +//---------------------------------- 23.91 + 23.92 +// Comment the line below if you don't want to use preview with zoom (zoom feature needs GIMP >= 2.3.4) 23.93 +#define ZOOMPREVIEW 23.94 +// Uncomment this line to get a rough estimate of how long the plug-in takes to run 23.95 +// #define TIMER 23.96 + 23.97 +// Size of image tiles (in {0, 256, 512, 1024, 2048}) 23.98 +#define TILESIZE 256 23.99 + 23.100 +// Size of tile borders (in [0-16]). 23.101 +#define TILEBORDER 4 23.102 + 23.103 +// Number of simultaneous computation threads (in [1-16]). 23.104 +// Note : GREYCstoration multi-threading is HIGHLY experimental and may not work on your 23.105 +// computer. Please use it only if you checked that all is working correctly ! 23.106 +#define NTHREADS 1 23.107 + 23.108 +//----------------------------------------------------------------------- 23.109 +// Include necessary headers for GIMP, GTK and CImg + GREYCstoration API 23.110 +//----------------------------------------------------------------------- 23.111 +#if cimg_OS!=2 23.112 +#include <pthread.h> 23.113 +#endif 23.114 +#define cimg_plugin "plugins/greycstoration.h" 23.115 +#define cimg_display_type 0 23.116 +#include <gtk/gtk.h> 23.117 +#include <libgimp/gimp.h> 23.118 +#include <libgimp/gimpui.h> 23.119 +#include "plugins/../CImg.h" 23.120 +using namespace cimg_library; 23.121 + 23.122 +//---------------------------------------------------------- 23.123 +// Define algorithm parameters structure and default values 23.124 +//---------------------------------------------------------- 23.125 +struct Parameters { 23.126 + bool patch_based; // Select patch-based or non-patch method 23.127 + 23.128 + // Parameters for patch-based method 23.129 + gint patch_size; // Size of the patches 23.130 + gdouble sigma_p; // Sigma_p 23.131 + gdouble sigma_s; // Sigma_s 23.132 + gint lookup_size; // Lookup size 23.133 + 23.134 + // Parameters for non-patch method 23.135 + gdouble amplitude; // Regularization amplitude 23.136 + gdouble sharpness; // Contour preservation for regularization (sharpness) 23.137 + gdouble anisotropy; // Regularization anisotropy 23.138 + gdouble alpha; // Noise scale 23.139 + gdouble sigma; // Geometry regularity 23.140 + gdouble dl; // Spatial integration step for regularization 23.141 + gdouble da; // Angular integration step for regulatization 23.142 + gdouble gauss_prec; // Precision of the gaussian function for regularization 23.143 + gint interp; // Interpolation type 23.144 + bool fast_approx; // Use fast approximation for regularization 23.145 + gint channels; // Which channels to process 23.146 + gint iterations; // Number of regularization iterations 23.147 + gboolean update_preview; 23.148 +}; 23.149 + 23.150 +const Parameters defaults_parameters = { 23.151 + false, // patch_based 23.152 + 4, // patch_size 23.153 + 10.0f, // sigma_p 23.154 + 15.0f, // sigma_s 23.155 + 7, // Lookup size 23.156 + 60.0, // amplitude 23.157 + 0.7, // sharpness 23.158 + 0.3, // anisotropy 23.159 + 0.6, // alpha 23.160 + 1.1, // sigma 23.161 + 0.8, // dl 23.162 + 30.0, // da 23.163 + 2.0, // gauss_prec 23.164 + 0, // interp 23.165 + true, // fast_approx 23.166 + 0, // process RGB channels 23.167 + 1, // iterations 23.168 + true // default is to update the preview 23.169 +}; 23.170 + 23.171 +const gint nb_parameters = 20; // Number of parameters + 2 23.172 + 23.173 +//--------------------------- 23.174 +// GIMP plug-in declarations 23.175 +//--------------------------- 23.176 +typedef struct { 23.177 + gboolean run; 23.178 +} Interface; 23.179 + 23.180 +// Plug-in functions 23.181 +static void query(void); 23.182 +static void run(const gchar*name, gint nparams, const GimpParam *param, gint *nreturn_vals, GimpParam **return_vals); 23.183 +static void process(GimpPixelRgn *srcPTR, GimpPixelRgn *dstPTR, gint bytes, gint x1, gint x2, gint y1, gint y2, gboolean show_progress); 23.184 +static void callback_response(GtkWidget *widget, gint response_id, gpointer data); 23.185 +static void run_greycstoration(CImg<unsigned char>& img, const gboolean show_progress); 23.186 +static gboolean dialog(GimpDrawable *drawable); 23.187 +static void update_preview(GimpPreview *preview); 23.188 + 23.189 +// Plug-in global variables 23.190 +static gboolean runflag = FALSE; 23.191 +static Parameters params = defaults_parameters; 23.192 +GtkWidget *preview; 23.193 +GtkObject* adj_amplitude; 23.194 +GtkObject* adj_sharpness; 23.195 +GtkObject* adj_anisotropy; 23.196 +GtkObject* adj_alpha; 23.197 +GtkObject* adj_sigma; 23.198 +GtkObject* adj_dl; 23.199 +GtkObject* adj_da; 23.200 +GtkObject* adj_iterations; 23.201 +GtkObject* adj_patch_size; 23.202 +GtkObject* adj_sigma_s; 23.203 +GtkObject* adj_sigma_p; 23.204 +GtkObject* adj_lookup_size; 23.205 +GtkWidget* combo_interp; 23.206 +GtkWidget* combo_channels; 23.207 +GtkWidget* button_fast_approx; 23.208 +GtkWidget* button_patch_based; 23.209 +CImg<unsigned char> img; 23.210 + 23.211 +// Specific GIMP stuffs. 23.212 +GimpPlugInInfo PLUG_IN_INFO = { 0,0,query,run }; // { init_proc, quit_proc, query_proc, run_proc } 23.213 +MAIN () 23.214 + static void query(void) { 23.215 + static GimpParamDef args[] = { 23.216 + {GIMP_PDB_INT32, "run_mode", "Interactive, non-interactive"}, 23.217 + {GIMP_PDB_IMAGE, "image", "(unused)"}, 23.218 + {GIMP_PDB_DRAWABLE, "drawable", "Drawable to draw on"}, 23.219 + {GIMP_PDB_FLOAT, "amplitude", "Regularization strength for one iteration"}, 23.220 + {GIMP_PDB_FLOAT, "sharpness", "Contour preservation for regularization"}, 23.221 + {GIMP_PDB_FLOAT, "anisotropy", "Regularization anisotropy"}, 23.222 + {GIMP_PDB_FLOAT, "alpha", "Noise scale"}, 23.223 + {GIMP_PDB_FLOAT, "sigma", "Geometry regularity"} , 23.224 + {GIMP_PDB_FLOAT, "dl", "Spatial integration step for regularization"} , 23.225 + {GIMP_PDB_FLOAT, "da", "Angular integration step for regulatization"}, 23.226 + {GIMP_PDB_FLOAT, "gauss_prec", "Precision of the gaussian function for regularization"}, 23.227 + {GIMP_PDB_INT8, "interp", "Interpolation type"}, 23.228 + {GIMP_PDB_INT32, "patch_based", "Use patch-based intead of non-patch method"}, 23.229 + {GIMP_PDB_INT32, "patch_size", "Size of the patches (for patch-based method)"}, 23.230 + {GIMP_PDB_FLOAT, "sigma_p", "Sigma_p (for patch-based method)"}, 23.231 + {GIMP_PDB_FLOAT, "sigma_s", "Sigma_s (for patch-based method)"}, 23.232 + {GIMP_PDB_INT32, "lookup_size", "Lookup size (for patch-based method)"}, 23.233 + {GIMP_PDB_INT32, "fast_approx", "Use fast approximation for regularization"}, 23.234 + {GIMP_PDB_INT32, "channels", "Channels to process"}, 23.235 + {GIMP_PDB_INT32, "iterations", "Iterations accuracy"} 23.236 + }; 23.237 + gimp_install_procedure ("plug_in_greycstoration", 23.238 + "GREYCstoration Denoising Plugin", 23.239 + "GREYCstoration is an image regularization algorithm which is able to process" 23.240 + " a color image by locally removing small variations of pixel intensities" 23.241 + " while preserving significant global image features, such as edges and corners." 23.242 + " This plugin uses image regularization for image denoising.", 23.243 + "Grzegorz Szwoch & David Tschumperle", 23.244 + "Grzegorz Szwoch & David Tschumperle", 23.245 + "2008-06-02", 23.246 + "_GREYCstoration...", 23.247 + "RGB*, GRAY*", 23.248 + GIMP_PLUGIN,G_N_ELEMENTS(args),0,args, NULL); 23.249 + gimp_plugin_menu_register ("plug_in_greycstoration", "<Image>/Filters/Enhance"); 23.250 +} 23.251 + 23.252 +//------------------------------ 23.253 +// GIMP plug-in 'run' function 23.254 +//------------------------------ 23.255 +static void run(const gchar *name, gint nparams, const GimpParam *param, gint *nreturn_vals, GimpParam **return_vals) { 23.256 + name = 0; 23.257 + static GimpParam values[1]; 23.258 + GimpPDBStatusType status = GIMP_PDB_SUCCESS; 23.259 + GimpDrawable *drawable; 23.260 + GimpRunMode run_mode; 23.261 +#ifdef TIMER 23.262 + GTimer *timer = g_timer_new (); 23.263 +#endif 23.264 + run_mode = (GimpRunMode)param[0].data.d_int32; 23.265 + *return_vals = values; 23.266 + *nreturn_vals = 1; 23.267 + values[0].type = GIMP_PDB_STATUS; 23.268 + values[0].data.d_status = status; 23.269 + //INIT_I18N (); 23.270 + 23.271 + // Get drawable information 23.272 + drawable = gimp_drawable_get(param[2].data.d_drawable); 23.273 + 23.274 + // Make tile cache 23.275 + gimp_tile_cache_ntiles (2 * (drawable->width / gimp_tile_width () + 1)); 23.276 + 23.277 + switch (run_mode) { 23.278 + case GIMP_RUN_INTERACTIVE: 23.279 + gimp_get_data ("plug_in_greycstoration", ¶ms); // Reset default values show preview unmodified 23.280 + if (!dialog(drawable)) return; 23.281 + break; 23.282 + case GIMP_RUN_NONINTERACTIVE: 23.283 + if (nparams != nb_parameters) { status = GIMP_PDB_CALLING_ERROR; } 23.284 + else { 23.285 + params.amplitude = param[3].data.d_float; 23.286 + params.sharpness = param[4].data.d_float; 23.287 + params.anisotropy = param[5].data.d_float; 23.288 + params.alpha = param[6].data.d_float; 23.289 + params.sigma = param[7].data.d_float; 23.290 + params.dl = param[8].data.d_float; 23.291 + params.da = param[9].data.d_float; 23.292 + params.gauss_prec = param[10].data.d_float; 23.293 + params.interp = param[11].data.d_int32; 23.294 + params.patch_based = param[12].data.d_int32; 23.295 + params.patch_size = param[13].data.d_int32; 23.296 + params.sigma_p = param[14].data.d_float; 23.297 + params.sigma_s = param[15].data.d_float; 23.298 + params.lookup_size = param[16].data.d_int32; 23.299 + params.fast_approx = param[17].data.d_int32; 23.300 + params.channels = param[18].data.d_int32; 23.301 + params.iterations = param[19].data.d_int32; 23.302 + if((params.amplitude<0.0) || (params.sharpness<0.0)) status = GIMP_PDB_CALLING_ERROR; 23.303 + } 23.304 + break; 23.305 + case GIMP_RUN_WITH_LAST_VALS: 23.306 + gimp_get_data ("plug_in_greycstoration", ¶ms); 23.307 + break; 23.308 + default: 23.309 + break; 23.310 + } 23.311 + 23.312 + if(status==GIMP_PDB_SUCCESS) { 23.313 + drawable = gimp_drawable_get(param[2].data.d_drawable); 23.314 + 23.315 + // Process image 23.316 + GimpPixelRgn srcPR, destPR; 23.317 + gint x1, y1, x2, y2; 23.318 + 23.319 + // Initialize pixel regions 23.320 + gimp_pixel_rgn_init(&srcPR,drawable,0,0,drawable->width,drawable->height,false,false); 23.321 + gimp_pixel_rgn_init(&destPR,drawable,0,0,drawable->width,drawable->height,true,true); 23.322 + 23.323 + // Get the input 23.324 + gimp_drawable_mask_bounds(drawable->drawable_id,&x1,&y1,&x2,&y2); 23.325 + 23.326 + // Process region 23.327 + process(&srcPR,&destPR,drawable->bpp,x1,x2,y1,y2,true); 23.328 + 23.329 + // Update image and clean 23.330 + gimp_drawable_flush(drawable); 23.331 + gimp_drawable_merge_shadow(drawable->drawable_id,true); 23.332 + gimp_drawable_update(drawable->drawable_id,x1,y1,x2-x1,y2-y1); 23.333 + gimp_displays_flush(); 23.334 + 23.335 + // Set data for next use of filter 23.336 + gimp_set_data("plug_in_greycstoration",¶ms,sizeof(Parameters)); 23.337 + gimp_drawable_detach(drawable); 23.338 + values[0].data.d_status = status; 23.339 + } 23.340 + 23.341 +#ifdef TIMER 23.342 + g_printerr("%f seconds\n",g_timer_elapsed(timer,0)); 23.343 + g_timer_destroy(timer); 23.344 +#endif 23.345 +} 23.346 + 23.347 +//----------------------------------- 23.348 +// GIMP plug-in 'process' function 23.349 +//----------------------------------- 23.350 +static void process(GimpPixelRgn *srcPR, GimpPixelRgn *destPR, gint bytes, gint x1, gint x2, gint y1, gint y2, gboolean show_progress) { 23.351 + gint width = x2 - x1; 23.352 + gint height = y2 - y1; 23.353 + guchar* row, *row_ptr; 23.354 + if (show_progress) gimp_progress_init("GREYCstoration Filter..."); 23.355 + 23.356 + // Make CImg instance and fill it with image information 23.357 + const gint channels = (bytes<3)?1:3; 23.358 + img.assign(width,height,1,channels,0); 23.359 + row = g_new(guchar,width*bytes); 23.360 + cimg_forY(img,y) { 23.361 + gimp_pixel_rgn_get_row(srcPR,row,x1,y1+y,width); 23.362 + row_ptr = row; 23.363 + cimg_forX(img,x) { cimg_forV(img,k) img(x,y,k) = row_ptr[k]; row_ptr+=bytes; } 23.364 + } 23.365 + 23.366 + // run GREYCstoration processing 23.367 + run_greycstoration(img,show_progress); 23.368 + 23.369 + // Write processed image 23.370 + cimg_forY(img,y) { 23.371 + gimp_pixel_rgn_get_row(srcPR,row,x1,y1+y,width); 23.372 + row_ptr = row; 23.373 + cimg_forX(img,x) { cimg_forV(img,k) row_ptr[k] = img(x,y,k); row_ptr+=bytes; } 23.374 + gimp_pixel_rgn_set_row(destPR,row,x1,y1+y,width); 23.375 + } 23.376 + g_free(row); 23.377 +} 23.378 + 23.379 +//----------------------------------------- 23.380 +// Run GREYCstoration process on the image 23.381 +//----------------------------------------- 23.382 +static void run_greycstoration(CImg<unsigned char>& img, const gboolean show_progress) { 23.383 + guint crange_beg=0, crange_end = img.dimv()-1U; 23.384 + if (params.channels && img.dimv() > 1) { // Set up colour model and channel options 23.385 + img.RGBtoYCbCr(); 23.386 + if (params.channels == 1) { 23.387 + crange_beg=1; 23.388 + } else { 23.389 + crange_end=0; 23.390 + } 23.391 + } 23.392 + CImg<unsigned char> img_range = img.get_shared_channels(crange_beg, crange_end); 23.393 + 23.394 + for (gint iter=0; iter<params.iterations; ++iter) { 23.395 + if (params.patch_based) img_range.greycstoration_patch_run(params.patch_size, 23.396 + params.sigma_p, 23.397 + params.sigma_s, 23.398 + params.lookup_size, 23.399 + params.fast_approx, 23.400 + show_progress?TILESIZE:0, 23.401 + TILEBORDER, 23.402 + show_progress?NTHREADS:1); 23.403 + else img_range.greycstoration_run(params.amplitude, 23.404 + params.sharpness, 23.405 + params.anisotropy, 23.406 + params.alpha, 23.407 + params.sigma, 23.408 + 1.0f, 23.409 + params.dl, 23.410 + params.da, 23.411 + params.gauss_prec, 23.412 + params.interp, 23.413 + params.fast_approx, 23.414 + show_progress?TILESIZE:0, 23.415 + TILEBORDER, 23.416 + show_progress?NTHREADS:1); 23.417 + gint tick = 0; 23.418 + do { 23.419 + cimg::wait(100); 23.420 + ++tick; 23.421 + if (tick==10 && show_progress) { // Update progress bar 23.422 + const float pr_iteration = img_range.greycstoration_progress(); 23.423 + const unsigned int pr_global = (unsigned int)((iter*100 + pr_iteration) / params.iterations); 23.424 + gimp_progress_update(pr_global/100.0); 23.425 + tick = 0; 23.426 + } 23.427 + } while (img_range.greycstoration_is_running()); 23.428 + } 23.429 + if (params.channels && img.dimv() > 1) { // Convert back to RGB if required 23.430 + img.YCbCrtoRGB(); 23.431 + } 23.432 +} 23.433 + 23.434 +//---------------------- 23.435 +// Update image preview 23.436 +//---------------------- 23.437 +static void update_preview(GimpPreview *preview) { 23.438 +#ifdef ZOOMPREVIEW 23.439 + // Zoomable style preview 23.440 + //------------------------- 23.441 + gint width, height, bytes; 23.442 + guchar *src, *row_ptr; 23.443 + if (img.greycstoration_is_running()) img.greycstoration_stop(); 23.444 + src = gimp_zoom_preview_get_source(GIMP_ZOOM_PREVIEW(preview),&width,&height,&bytes); 23.445 + const gint channels = (bytes<3)?1:3; 23.446 + img.assign(width,height,1,channels,0); 23.447 + row_ptr = src; 23.448 + cimg_forY(img,y) { cimg_forX(img,x) { cimg_forV(img,k) img(x,y,k) = row_ptr[k]; row_ptr += bytes; }} 23.449 + run_greycstoration(img,false); 23.450 + row_ptr = src; 23.451 + cimg_forY(img,y) { cimg_forX(img,x) { cimg_forV(img,k) row_ptr[k] = img(x,y,k); row_ptr += bytes; }} 23.452 + gimp_preview_draw_buffer(preview,src,width*bytes); 23.453 + g_free(src); 23.454 + 23.455 +#else 23.456 + // Old style preview (without zoom) 23.457 + //---------------------------------- 23.458 + GimpDrawable *drawable; 23.459 + gint x, y, width, height; 23.460 + GimpPixelRgn srcPR, destPR; 23.461 + drawable = gimp_drawable_preview_get_drawable(GIMP_DRAWABLE_PREVIEW(preview)); 23.462 + gimp_pixel_rgn_init(&srcPR,drawable,0,0,drawable->width,drawable->height,false,false); 23.463 + gimp_pixel_rgn_init(&destPR,drawable,0,0,drawable->width,drawable->height,true,true); 23.464 + gimp_preview_get_position(preview,&x,&y); 23.465 + gimp_preview_get_size(preview,&width,&height); 23.466 + if(img.greycstoration_is_running()) img.greycstoration_stop(); 23.467 + process(&srcPR,&destPR,drawable->bpp,x,x+width,y,y+height,false); 23.468 + gimp_pixel_rgn_init(&destPR,drawable,x,y,width,height,false,true); 23.469 + gimp_drawable_preview_draw_region(GIMP_DRAWABLE_PREVIEW(preview),&destPR); 23.470 +#endif 23.471 +} 23.472 + 23.473 +//---------------------- 23.474 +// Define dialog window 23.475 +//---------------------- 23.476 +static gboolean dialog (GimpDrawable *drawable) { 23.477 + GtkWidget *dialog; 23.478 + GtkWidget *main_hbox; 23.479 + GtkWidget *table; 23.480 + 23.481 +#define SCALE_WIDTH 150 23.482 +#define ENTRY_WIDTH 4 23.483 +#define RESPONSE_RESET 1 23.484 + 23.485 + gimp_ui_init("greycstoration",true); 23.486 + runflag = false; 23.487 + dialog = gimp_dialog_new("GREYCstoration", "greycstoration",0,(GtkDialogFlags)0,gimp_standard_help_func,"plug-in-greycstoration", 23.488 + GIMP_STOCK_RESET,RESPONSE_RESET,GTK_STOCK_CANCEL,GTK_RESPONSE_CANCEL,GTK_STOCK_OK,GTK_RESPONSE_OK,NULL); 23.489 + gtk_dialog_set_alternative_button_order(GTK_DIALOG(dialog),RESPONSE_RESET,GTK_RESPONSE_OK,GTK_RESPONSE_CANCEL,-1); 23.490 + 23.491 +#ifdef ZOOMPREVIEW 23.492 + gimp_window_set_transient(GTK_WINDOW (dialog)); 23.493 +#endif 23.494 + 23.495 + g_signal_connect(dialog,"response",G_CALLBACK(callback_response),preview); 23.496 + g_signal_connect(dialog, "destroy",G_CALLBACK(gtk_main_quit),0); 23.497 + 23.498 + main_hbox = gtk_hbox_new(false,12); 23.499 + gtk_container_set_border_width(GTK_CONTAINER(main_hbox),12); 23.500 + gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox),main_hbox); 23.501 + gtk_widget_show(main_hbox); 23.502 + 23.503 +#ifdef ZOOMPREVIEW 23.504 + preview = gimp_zoom_preview_new(drawable); 23.505 +#else 23.506 + preview = gimp_drawable_preview_new(drawable,¶ms.update_preview); 23.507 +#endif 23.508 + gtk_box_pack_start(GTK_BOX(main_hbox),preview,true,true,0); 23.509 + gtk_widget_show(preview); 23.510 + g_signal_connect(preview,"invalidated",G_CALLBACK(update_preview),0); 23.511 + 23.512 + table = gtk_table_new(3,3,false); 23.513 + gtk_table_set_col_spacings(GTK_TABLE(table),6); 23.514 + gtk_table_set_row_spacings(GTK_TABLE(table),6); 23.515 + gtk_box_pack_start(GTK_BOX(main_hbox),table,false,false,0); 23.516 + gtk_widget_show(table); 23.517 + 23.518 + // 'Amplitude' slider 23.519 + adj_amplitude = gimp_scale_entry_new(GTK_TABLE(table),0,0,"_Strength :",SCALE_WIDTH,ENTRY_WIDTH, 23.520 + params.amplitude,0.0,200.0,1,10,1,true,0,0,0,0); 23.521 + g_signal_connect(adj_amplitude,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.amplitude); 23.522 + g_signal_connect_swapped(adj_amplitude,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.523 + 23.524 + // 'Sharpness' slider 23.525 + adj_sharpness = gimp_scale_entry_new(GTK_TABLE(table),0,1,"Contour preser_vation :",SCALE_WIDTH,ENTRY_WIDTH, 23.526 + params.sharpness,0.0,5.0,0.05,0.5,2,true,0,0,0,0); 23.527 + g_signal_connect(adj_sharpness,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.sharpness); 23.528 + g_signal_connect_swapped(adj_sharpness,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.529 + 23.530 + // 'Anisotropy' slider 23.531 + adj_anisotropy = gimp_scale_entry_new(GTK_TABLE(table),0,2,"_Anisotropy :",SCALE_WIDTH,ENTRY_WIDTH, 23.532 + params.anisotropy,0.0,1.0,0.05,0.5,2,true,0,0,0,0); 23.533 + g_signal_connect(adj_anisotropy,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.anisotropy); 23.534 + g_signal_connect_swapped(adj_anisotropy,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.535 + 23.536 + // 'Alpha' slider 23.537 + adj_alpha = gimp_scale_entry_new(GTK_TABLE(table),0,3,"_Noise scale :",SCALE_WIDTH,ENTRY_WIDTH, 23.538 + params.alpha,0.0,16.0,0.1,0.5, 1,true,0,0,0,0); 23.539 + g_signal_connect(adj_alpha,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.alpha); 23.540 + g_signal_connect_swapped(adj_alpha,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.541 + 23.542 + // 'Sigma' slider 23.543 + adj_sigma = gimp_scale_entry_new(GTK_TABLE(table),0,4,"Geometry _regularity :",SCALE_WIDTH,ENTRY_WIDTH, 23.544 + params.sigma,0,8.0,0.1,0.5,2,true,0,0,0,0); 23.545 + g_signal_connect(adj_sigma,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.sigma); 23.546 + g_signal_connect_swapped(adj_sigma,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.547 + 23.548 + // 'Spatial step' slider 23.549 + adj_dl = gimp_scale_entry_new(GTK_TABLE (table),0,5,"Spatial step :",SCALE_WIDTH,ENTRY_WIDTH, 23.550 + params.dl,0.1,1.0,0.01,0.1,2,true,0,0,0,0); 23.551 + g_signal_connect(adj_dl,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.dl); 23.552 + g_signal_connect_swapped(adj_dl,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.553 + 23.554 + // 'Angular step' slider 23.555 + adj_da = gimp_scale_entry_new(GTK_TABLE(table),0,6,"Angu_lar step :",SCALE_WIDTH,ENTRY_WIDTH, 23.556 + params.da,1.0,90.0,1.0,10.0,1,true,0,0,0,0); 23.557 + g_signal_connect(adj_da,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.da); 23.558 + g_signal_connect_swapped(adj_da,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.559 + 23.560 + // 'Interpolation' choice 23.561 + combo_interp = gimp_int_combo_box_new("Nearest neighbor",0,"Linear",1,"Runge-Kutta",2,NULL); 23.562 + gimp_int_combo_box_set_active(GIMP_INT_COMBO_BOX(combo_interp),params.interp); 23.563 + gimp_table_attach_aligned(GTK_TABLE(table),0,8,"Interpolation _type :",0.0,0.5,combo_interp,2,false); 23.564 + g_signal_connect(combo_interp,"changed",G_CALLBACK(gimp_int_combo_box_get_active),¶ms.interp); 23.565 + g_signal_connect_swapped(combo_interp,"changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.566 + 23.567 + // 'Patch-based' button 23.568 + button_patch_based = gtk_check_button_new_with_mnemonic("_Patch-based"); 23.569 + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button_patch_based),params.patch_based); 23.570 + gimp_table_attach_aligned(GTK_TABLE(table),0,9,"Patch-based :",0.0,0.5,button_patch_based,2,false); 23.571 + g_signal_connect(button_patch_based,"toggled",G_CALLBACK(gimp_toggle_button_update),¶ms.patch_based); 23.572 + g_signal_connect_swapped(button_patch_based,"toggled",G_CALLBACK(gimp_preview_invalidate),preview); 23.573 + 23.574 + // 'Patch size' slider 23.575 + adj_patch_size = gimp_scale_entry_new(GTK_TABLE(table),0,10,"Patch size :",SCALE_WIDTH,ENTRY_WIDTH, 23.576 + params.patch_size,1.0,9.0,1.0,1.0,0,true,0,0,0,0); 23.577 + g_signal_connect(adj_patch_size,"value_changed",G_CALLBACK(gimp_int_adjustment_update),¶ms.patch_size); 23.578 + g_signal_connect_swapped(adj_patch_size,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.579 + 23.580 + // 'Sigma_p' slider 23.581 + adj_sigma_p = gimp_scale_entry_new(GTK_TABLE(table),0,11,"_Sigma-p :",SCALE_WIDTH,ENTRY_WIDTH, 23.582 + params.sigma_p,0.0,30.0,0.1,0.5,1,true,0,0,0,0); 23.583 + g_signal_connect(adj_sigma_p,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.sigma_p); 23.584 + g_signal_connect_swapped(adj_sigma_p,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.585 + 23.586 + // 'Sigma_s' slider 23.587 + adj_sigma_s = gimp_scale_entry_new(GTK_TABLE(table),0,12,"_Sigma-s :",SCALE_WIDTH,ENTRY_WIDTH, 23.588 + params.sigma_s,0.0,30.0,0.1,0.5,1,true,0,0,0,0); 23.589 + g_signal_connect(adj_sigma_s,"value_changed",G_CALLBACK(gimp_double_adjustment_update),¶ms.sigma_s); 23.590 + g_signal_connect_swapped(adj_sigma_s,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.591 + 23.592 + // 'Lookup size' slider 23.593 + adj_lookup_size = gimp_scale_entry_new(GTK_TABLE(table),0,13,"Lookup size :",SCALE_WIDTH,ENTRY_WIDTH, 23.594 + params.lookup_size,1.0,40.0,1.0,1.0,0,true,0,0,0,0); 23.595 + g_signal_connect(adj_lookup_size,"value_changed",G_CALLBACK(gimp_int_adjustment_update),¶ms.lookup_size); 23.596 + g_signal_connect_swapped(adj_lookup_size,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.597 + 23.598 + // 'Fast approximation' button 23.599 + button_fast_approx = gtk_check_button_new_with_mnemonic("_Enable"); 23.600 + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button_fast_approx),params.fast_approx); 23.601 + gimp_table_attach_aligned(GTK_TABLE(table),0,14,"Approximation :",0.0,0.5,button_fast_approx,2,false); 23.602 + g_signal_connect(button_fast_approx,"toggled",G_CALLBACK(gimp_toggle_button_update),¶ms.fast_approx); 23.603 + g_signal_connect_swapped(button_fast_approx,"toggled",G_CALLBACK(gimp_preview_invalidate),preview); 23.604 + 23.605 + // 'Channels' choice 23.606 + combo_channels = gimp_int_combo_box_new("All",0,"Chroma",1,"Luminance",2,NULL); 23.607 + gimp_int_combo_box_set_active(GIMP_INT_COMBO_BOX(combo_channels),params.channels); 23.608 + gimp_table_attach_aligned(GTK_TABLE(table),0,15,"Channels",0.0,0.5,combo_channels,2,false); 23.609 + g_signal_connect(combo_channels,"changed",G_CALLBACK(gimp_int_combo_box_get_active),¶ms.channels); 23.610 + g_signal_connect_swapped(combo_channels,"changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.611 + if (drawable->bpp < 3) gtk_widget_set_sensitive(combo_channels, FALSE); 23.612 + 23.613 + // 'Number of iterations' slider 23.614 + adj_iterations = gimp_scale_entry_new(GTK_TABLE(table),0,16,"Number of _iterations :",SCALE_WIDTH,ENTRY_WIDTH, 23.615 + params.iterations,1.0,30.0,1.0,1.0,0,true,0,0,0,0); 23.616 + g_signal_connect(adj_iterations,"value_changed",G_CALLBACK(gimp_int_adjustment_update),¶ms.iterations); 23.617 + g_signal_connect_swapped(adj_iterations,"value_changed",G_CALLBACK(gimp_preview_invalidate),preview); 23.618 + 23.619 + // Show dialog window 23.620 + gtk_widget_show (dialog); 23.621 + gtk_main (); 23.622 + 23.623 + return runflag; 23.624 +} 23.625 + 23.626 +static void callback_response(GtkWidget *widget, gint response_id, gpointer data) { 23.627 + data = 0; 23.628 + switch (response_id) { 23.629 + case RESPONSE_RESET: // Reset parameters to default values & update window 23.630 + params = defaults_parameters; 23.631 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_amplitude), params.amplitude); 23.632 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_sharpness), params.sharpness); 23.633 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_anisotropy), params.anisotropy); 23.634 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_alpha), params.alpha); 23.635 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_sigma), params.sigma); 23.636 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_dl), params.dl); 23.637 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_da), params.da); 23.638 + gtk_adjustment_set_value(GTK_ADJUSTMENT(adj_iterations), params.iterations); 23.639 + gimp_int_combo_box_set_active(GIMP_INT_COMBO_BOX(combo_channels), params.channels); 23.640 + gimp_int_combo_box_set_active(GIMP_INT_COMBO_BOX(combo_interp), params.interp); 23.641 + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button_fast_approx), params.fast_approx); 23.642 + gimp_preview_invalidate((GimpPreview*)preview); 23.643 + break; 23.644 + case GTK_RESPONSE_OK: 23.645 + runflag = TRUE; 23.646 + gtk_widget_destroy (widget); 23.647 + break; 23.648 + default: 23.649 + gtk_widget_destroy (widget); 23.650 + break; 23.651 + } 23.652 +}
24.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 24.2 +++ b/PTdecode/CImg-1.3.0/examples/hough_transform.cpp Mon Aug 03 14:09:20 2009 +0100 24.3 @@ -0,0 +1,153 @@ 24.4 +/* 24.5 + # 24.6 + # File : hough_transform.cpp 24.7 + # ( C++ source file ) 24.8 + # 24.9 + # Description : Implementation of the Hough transform. 24.10 + # This file is a part of the CImg Library project. 24.11 + # ( http://cimg.sourceforge.net ) 24.12 + # 24.13 + # Copyright : David Tschumperle 24.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 24.15 + # 24.16 + # License : CeCILL v2.0 24.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 24.18 + # 24.19 + # This software is governed by the CeCILL license under French law and 24.20 + # abiding by the rules of distribution of free software. You can use, 24.21 + # modify and/ or redistribute the software under the terms of the CeCILL 24.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 24.23 + # "http://www.cecill.info". 24.24 + # 24.25 + # As a counterpart to the access to the source code and rights to copy, 24.26 + # modify and redistribute granted by the license, users are provided only 24.27 + # with a limited warranty and the software's author, the holder of the 24.28 + # economic rights, and the successive licensors have only limited 24.29 + # liability. 24.30 + # 24.31 + # In this respect, the user's attention is drawn to the risks associated 24.32 + # with loading, using, modifying and/or developing or reproducing the 24.33 + # software by the user in light of its specific status of free software, 24.34 + # that may mean that it is complicated to manipulate, and that also 24.35 + # therefore means that it is reserved for developers and experienced 24.36 + # professionals having in-depth computer knowledge. Users are therefore 24.37 + # encouraged to load and test the software's suitability as regards their 24.38 + # requirements in conditions enabling the security of their systems and/or 24.39 + # data to be ensured and, more generally, to use and operate it in the 24.40 + # same conditions as regards security. 24.41 + # 24.42 + # The fact that you are presently reading this means that you have had 24.43 + # knowledge of the CeCILL license and that you accept its terms. 24.44 + # 24.45 +*/ 24.46 + 24.47 +#include "CImg.h" 24.48 +using namespace cimg_library; 24.49 + 24.50 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 24.51 +#ifdef cimg_use_visualcpp6 24.52 +#define std 24.53 +#endif 24.54 +#ifdef min 24.55 +#undef min 24.56 +#undef max 24.57 +#endif 24.58 + 24.59 +#ifndef cimg_imagepath 24.60 +#define cimg_imagepath "img/" 24.61 +#endif 24.62 + 24.63 +int main(int argc,char **argv) { 24.64 + 24.65 + cimg_usage("Illustration of the Hough transform"); 24.66 + CImg<unsigned char> src(cimg_option("-i",cimg_imagepath "parrot_original.ppm","Input image")); 24.67 + CImg<> vote(500,400,1,1,0), img = CImg<>(src).get_pointwise_norm().normalize(0,255).resize(-100,-100,1,2,2); 24.68 + 24.69 + CImgDisplay disp(src,"Image"), dispvote(vote,"Hough Transform"); 24.70 + const unsigned char col1[3]={255,255,255}, col2[3]={0,0,0}; 24.71 + const double 24.72 + alpha = cimg_option("-a",1.5,"Gradient smoothing"), 24.73 + sigma = cimg_option("-s",0.5,"Hough Transform smoothing"), 24.74 + rhomax = std::sqrt((double)(img.dimx()*img.dimx()+img.dimy()*img.dimy()))/2, 24.75 + thetamax = 2*cimg::valuePI; 24.76 + 24.77 + if (cimg::dialog(cimg::basename(argv[0]), 24.78 + "Instructions : \n" 24.79 + "------------\n\n" 24.80 + "(1) When clicking on the image, all lines crossing the point\n" 24.81 + "will be voted in the Hough Transform image.\n\n" 24.82 + "(2) When clicking on the vote image, the corresponding line is drawn\n" 24.83 + "on the image.\n\n" 24.84 + "(3) When pressing the space bar, the image lines are detected from the\n" 24.85 + "image gradients.\n\n" 24.86 + "Note that a logarithmic scaling is performed for the vote image display.\n" 24.87 + "See also the available options (option '-h')\n","Start !","Quit",0,0,0,0, 24.88 + src.get_resize(100,100,1,3),true)) std::exit(0); 24.89 + 24.90 + while (!disp.is_closed && !dispvote.is_closed && !disp.is_keyQ && !dispvote.is_keyQ && !disp.is_keyESC && !dispvote.is_keyESC) { 24.91 + 24.92 + CImgDisplay::wait(disp,dispvote); 24.93 + 24.94 + // When pressing space bar, the vote is performed from the image gradients. 24.95 + if (dispvote.key==cimg::keySPACE || disp.key==cimg::keySPACE) { 24.96 + CImgList<> grad = img.get_gradient(); 24.97 + cimglist_for(grad,l) grad[l].blur((float)alpha); 24.98 + vote.fill(0); 24.99 + cimg_forXY(img,x,y) { 24.100 + const double 24.101 + X = (double)x-img.dimx()/2, 24.102 + Y = (double)y-img.dimy()/2, 24.103 + gx = grad[0](x,y), 24.104 + gy = grad[1](x,y); 24.105 + double 24.106 + theta = std::atan2(gy,gx), 24.107 + rho = std::sqrt(X*X+Y*Y)*std::cos(std::atan2(Y,X)-theta); 24.108 + if (rho<0) { rho=-rho; theta+=cimg::valuePI; } 24.109 + theta = cimg::mod(theta,thetamax); 24.110 + vote((int)(theta*dispvote.dimx()/thetamax),(int)(rho*dispvote.dimy()/rhomax))+=(float)std::sqrt(gx*gx+gy*gy); 24.111 + } 24.112 + vote.blur((float)sigma); 24.113 + CImg<> vote2(vote); { cimg_forXY(vote2,x,y) vote2(x,y) = (float)std::log(1+vote(x,y)); vote2.display(dispvote); } 24.114 + } 24.115 + 24.116 + // When clicking on the vote window. 24.117 + if (dispvote.button) { 24.118 + const double 24.119 + rho = dispvote.mouse_y*rhomax/dispvote.dimy(), 24.120 + theta = dispvote.mouse_x*thetamax/dispvote.dimx(), 24.121 + x = img.dimx()/2 + rho*std::cos(theta), 24.122 + y = img.dimy()/2 + rho*std::sin(theta); 24.123 + const int 24.124 + x0 = (int)(x+1000*std::sin(theta)), 24.125 + y0 = (int)(y-1000*std::cos(theta)), 24.126 + x1 = (int)(x-1000*std::sin(theta)), 24.127 + y1 = (int)(y+1000*std::cos(theta)); 24.128 + CImg<unsigned char>(src). 24.129 + draw_line(x0,y0,x1,y1,col1,1.0f,0xF0F0F0F0).draw_line(x0,y0,x1,y1,col2,1.0f,0x0F0F0F0F). 24.130 + draw_line(x0+1,y0,x1+1,y1,col1,1.0f,0xF0F0F0F0).draw_line(x0+1,y0,x1+1,y1,col2,1.0f,0x0F0F0F0F). 24.131 + draw_line(x0,y0+1,x1,y1+1,col1,1.0f,0xF0F0F0F0).draw_line(x0,y0+1,x1,y1+1,col2,1.0f,0x0F0F0F0F). 24.132 + display(disp); 24.133 + } 24.134 + 24.135 + // When clicking on the image. 24.136 + if (disp.button && disp.mouse_x>=0) { 24.137 + const double 24.138 + x0 = (double)disp.mouse_x-disp.dimx()/2, 24.139 + y0 = (double)disp.mouse_y-disp.dimy()/2, 24.140 + rho0 = std::sqrt(x0*x0+y0*y0), 24.141 + theta0 = std::atan2(y0,x0); 24.142 + 24.143 + for (double t=0; t<thetamax; t+=0.001) { 24.144 + double theta = t, rho = rho0*std::cos(theta0-t); 24.145 + if (rho<0) { rho=-rho; theta=cimg::mod(theta+cimg::valuePI,thetamax); } 24.146 + vote((int)(theta*vote.dimx()/thetamax),(int)(rho*vote.dimy()/rhomax))+=1; 24.147 + } 24.148 + CImg<> vote2(vote); cimg_forXY(vote2,x,y) vote2(x,y) = (float)std::log(1+vote(x,y)); vote2.display(dispvote); 24.149 + } 24.150 + dispvote.resize(dispvote); 24.151 + disp.resize(disp); 24.152 + } 24.153 + 24.154 + std::exit(0); 24.155 + return 0; 24.156 +}
25.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 25.2 +++ b/PTdecode/CImg-1.3.0/examples/image2ascii.cpp Mon Aug 03 14:09:20 2009 +0100 25.3 @@ -0,0 +1,164 @@ 25.4 +/* 25.5 + # 25.6 + # File : image2ascii.cpp 25.7 + # ( C++ source file ) 25.8 + # 25.9 + # Description : A basic image to ASCII-art converter. 25.10 + # This file is a part of the CImg Library project. 25.11 + # ( http://cimg.sourceforge.net ) 25.12 + # 25.13 + # Copyright : David Tschumperle 25.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 25.15 + # 25.16 + # License : CeCILL v2.0 25.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 25.18 + # 25.19 + # This software is governed by the CeCILL license under French law and 25.20 + # abiding by the rules of distribution of free software. You can use, 25.21 + # modify and/ or redistribute the software under the terms of the CeCILL 25.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 25.23 + # "http://www.cecill.info". 25.24 + # 25.25 + # As a counterpart to the access to the source code and rights to copy, 25.26 + # modify and redistribute granted by the license, users are provided only 25.27 + # with a limited warranty and the software's author, the holder of the 25.28 + # economic rights, and the successive licensors have only limited 25.29 + # liability. 25.30 + # 25.31 + # In this respect, the user's attention is drawn to the risks associated 25.32 + # with loading, using, modifying and/or developing or reproducing the 25.33 + # software by the user in light of its specific status of free software, 25.34 + # that may mean that it is complicated to manipulate, and that also 25.35 + # therefore means that it is reserved for developers and experienced 25.36 + # professionals having in-depth computer knowledge. Users are therefore 25.37 + # encouraged to load and test the software's suitability as regards their 25.38 + # requirements in conditions enabling the security of their systems and/or 25.39 + # data to be ensured and, more generally, to use and operate it in the 25.40 + # same conditions as regards security. 25.41 + # 25.42 + # The fact that you are presently reading this means that you have had 25.43 + # knowledge of the CeCILL license and that you accept its terms. 25.44 + # 25.45 +*/ 25.46 + 25.47 +// Tell CImg not to use display capabilities. 25.48 +#undef cimg_display 25.49 +#define cimg_display 0 25.50 +#include "CImg.h" 25.51 +using namespace cimg_library; 25.52 + 25.53 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 25.54 +#ifdef cimg_use_visualcpp6 25.55 +#define std 25.56 +#endif 25.57 +#ifdef min 25.58 +#undef min 25.59 +#undef max 25.60 +#endif 25.61 + 25.62 +/*--------------------------- 25.63 + 25.64 + Main procedure 25.65 + 25.66 + --------------------------*/ 25.67 +int main(int argc,char **argv) { 25.68 + cimg_usage("A simple image to ASCII-art converter.\n\nUsage : image2ascii [options] image"); 25.69 + 25.70 + // Read command line parameters 25.71 + const char *geom = cimg_option("-g","79x40","Output size"); 25.72 + const int alphabet = cimg_option("-a",0,"Alphabet type (0=full, 1=numbers, 2=letters, 3=signs, 4=minimal"); 25.73 + const bool invert = cimg_option("-invert",false,"Invert image intensities"); 25.74 + const float contour = (float)cimg_option("-contour",0.0f,"Use image contours higher than specified threshold"); 25.75 + const float blur = (float)cimg_option("-blur",0.8f,"Image pre-blur"); 25.76 + const float sigma = (float)cimg_option("-sigma",1.5f,"Font pre-blur"); 25.77 + const char *file_i = cimg_argument1(0,"-invert"); 25.78 + int w = 79, h = 40; 25.79 + std::sscanf(geom,"%d%*c%d",&w,&h); 25.80 + if (cimg_option("-h",false,0)) std::exit(0); 25.81 + 25.82 + // Init fonts 25.83 + const CImgList<> font_full = CImgList<>::font(11,false); 25.84 + const int fw = font_full['A'].dimx(), fh = font_full['A'].dimy(); 25.85 + CImgList<> font, font_blur; 25.86 + CImgList<unsigned char> font_code; 25.87 + 25.88 + switch (alphabet) { 25.89 + case 1: { 25.90 + font_code.insert(CImg<>::vector(' ')); 25.91 + for (unsigned char l='0'; l<='9'; l++) font_code.insert(CImg<>::vector(l)); 25.92 + } break; 25.93 + case 2: { 25.94 + font_code.insert(CImg<>::vector(' ')); 25.95 + for (unsigned char l='A'; l<='Z'; l++) font_code.insert(CImg<>::vector(l)); 25.96 + } break; 25.97 + case 3: { 25.98 + font_code.insert(CImg<>::vector(' ')); 25.99 + font_code.insert(CImg<>::vector('-')); 25.100 + font_code.insert(CImg<>::vector('_')); 25.101 + font_code.insert(CImg<>::vector('|')); 25.102 + font_code.insert(CImg<>::vector('/')); 25.103 + font_code.insert(CImg<>::vector('\\')); 25.104 + font_code.insert(CImg<>::vector('+')); 25.105 + font_code.insert(CImg<>::vector('.')); 25.106 + font_code.insert(CImg<>::vector('*')); 25.107 + font_code.insert(CImg<>::vector('=')); 25.108 + font_code.insert(CImg<>::vector(']')); 25.109 + font_code.insert(CImg<>::vector('[')); 25.110 + font_code.insert(CImg<>::vector('(')); 25.111 + font_code.insert(CImg<>::vector(')')); 25.112 + font_code.insert(CImg<>::vector('{')); 25.113 + font_code.insert(CImg<>::vector('}')); 25.114 + font_code.insert(CImg<>::vector('"')); 25.115 + font_code.insert(CImg<>::vector('!')); 25.116 + font_code.insert(CImg<>::vector('$')); 25.117 + } break; 25.118 + case 4: { 25.119 + font_code.insert(CImg<>::vector(' ')); 25.120 + font_code.insert(CImg<>::vector('.')); 25.121 + font_code.insert(CImg<>::vector('/')); 25.122 + font_code.insert(CImg<>::vector('\\')); 25.123 + font_code.insert(CImg<>::vector('_')); 25.124 + font_code.insert(CImg<>::vector('_')); 25.125 + font_code.insert(CImg<>::vector('|')); 25.126 + } break; 25.127 + default: { for (unsigned char l=' '; l<='~'; l++) font_code.insert(CImg<>::vector(l)); } break; 25.128 + } 25.129 + cimglist_for(font_code,l) { 25.130 + font.insert(font_full(font_code[l](0))); 25.131 + font_blur.insert(font[l].get_resize(fw,fh,1,1).blur(sigma).normalize(0,255)); 25.132 + } 25.133 + 25.134 + // Init images 25.135 + CImg<> img; 25.136 + if (!file_i) { float white[3] = { 255,255,255 }; img.assign().draw_text(0,0," CImg\nRocks !",white); } 25.137 + else img.assign(file_i); 25.138 + img.pointwise_norm().resize(fw*w,fh*h); 25.139 + if (blur) img.blur(blur); 25.140 + if (contour>0) { 25.141 + CImgList<> grad = img.get_gradient("xy",4); 25.142 + img = (grad[0].pow(2) + grad[1].pow(2)).sqrt().normalize(0,100).threshold(contour); 25.143 + } 25.144 + img.normalize(0,255); 25.145 + if (invert) img = 255.0f-img; 25.146 + CImg<unsigned char> dest(w,h,1,1,0); 25.147 + 25.148 + // Render ASCII-art image, using a simple correlation method. 25.149 + CImg<> neigh; 25.150 + cimg_forY(dest,y) { cimg_forX(dest,x) { 25.151 + neigh = img.get_crop(x*fw,y*fh,(x+1)*fw,(y+1)*fh); 25.152 + float scoremin = 2e28f; 25.153 + unsigned int best = 0; 25.154 + cimglist_for(font_code,l) { 25.155 + const CImg<>& letter = font_blur[l]; 25.156 + const float score = (float)((letter-neigh).pow(2).sum()); 25.157 + if (score<scoremin) { scoremin = score; best = l; } 25.158 + } 25.159 + dest(x,y) = best; 25.160 + std::fprintf(stdout,"%c",font_code[dest(x,y)](0)); 25.161 + } 25.162 + std::fprintf(stdout,"\n"); 25.163 + } 25.164 + 25.165 + std::exit(0); 25.166 + return 0; 25.167 +}
26.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 26.2 +++ b/PTdecode/CImg-1.3.0/examples/image_registration.cpp Mon Aug 03 14:09:20 2009 +0100 26.3 @@ -0,0 +1,237 @@ 26.4 +/* 26.5 + # 26.6 + # File : image_registration.cpp 26.7 + # ( C++ source file ) 26.8 + # 26.9 + # Description : Compute a motion field between two images, 26.10 + # with a multiscale and variational algorithm. 26.11 + # This file is a part of the CImg Library project. 26.12 + # ( http://cimg.sourceforge.net ) 26.13 + # 26.14 + # Copyright : David Tschumperle 26.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 26.16 + # 26.17 + # License : CeCILL v2.0 26.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 26.19 + # 26.20 + # This software is governed by the CeCILL license under French law and 26.21 + # abiding by the rules of distribution of free software. You can use, 26.22 + # modify and/ or redistribute the software under the terms of the CeCILL 26.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 26.24 + # "http://www.cecill.info". 26.25 + # 26.26 + # As a counterpart to the access to the source code and rights to copy, 26.27 + # modify and redistribute granted by the license, users are provided only 26.28 + # with a limited warranty and the software's author, the holder of the 26.29 + # economic rights, and the successive licensors have only limited 26.30 + # liability. 26.31 + # 26.32 + # In this respect, the user's attention is drawn to the risks associated 26.33 + # with loading, using, modifying and/or developing or reproducing the 26.34 + # software by the user in light of its specific status of free software, 26.35 + # that may mean that it is complicated to manipulate, and that also 26.36 + # therefore means that it is reserved for developers and experienced 26.37 + # professionals having in-depth computer knowledge. Users are therefore 26.38 + # encouraged to load and test the software's suitability as regards their 26.39 + # requirements in conditions enabling the security of their systems and/or 26.40 + # data to be ensured and, more generally, to use and operate it in the 26.41 + # same conditions as regards security. 26.42 + # 26.43 + # The fact that you are presently reading this means that you have had 26.44 + # knowledge of the CeCILL license and that you accept its terms. 26.45 + # 26.46 +*/ 26.47 + 26.48 +#include "CImg.h" 26.49 +using namespace cimg_library; 26.50 + 26.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 26.52 +#ifdef cimg_use_visualcpp6 26.53 +#define std 26.54 +#endif 26.55 +#ifdef min 26.56 +#undef min 26.57 +#undef max 26.58 +#endif 26.59 + 26.60 +#ifndef cimg_imagepath 26.61 +#define cimg_imagepath "img/" 26.62 +#endif 26.63 + 26.64 +// animate_warp() : Create warping animation from two images and a motion field 26.65 +//---------------- 26.66 +void animate_warp(const CImg<unsigned char>& src, const CImg<unsigned char>& dest, const CImg<>& u, 26.67 + const bool morph, const bool imode, const char *filename,int nb, CImgDisplay& disp) { 26.68 + CImg<unsigned char> visu = CImgList<unsigned char>(src,dest,src).get_append('x'), warp(src); 26.69 + float t=0; 26.70 + for (unsigned int iter=0; !disp || (!disp.is_closed && !disp.is_keyQ); iter++) { 26.71 + if (morph) cimg_forXYV(warp,x,y,k) { 26.72 + const float dx = u(x,y,0), dy = u(x,y,1), 26.73 + I1 = (float)src.linear_atXY(x-t*dx, y-t*dy, k), 26.74 + I2 = (float)dest.linear_atXY(x+(1-t)*dx,y+(1-t)*dy,k); 26.75 + warp(x,y,k) = (unsigned char)((1-t)*I1 + t*I2); 26.76 + } else cimg_forXYV(warp,x,y,k) { 26.77 + const float dx = u(x,y,0), dy = u(x,y,1), I1 = (float)src.linear_atXY(x-t*dx, y-t*dy, 0,k); 26.78 + warp(x,y,k) = (unsigned char)I1; 26.79 + } 26.80 + if (disp) visu.draw_image(2*src.dimx(),warp).display(disp.resize().wait(30)); 26.81 + if (filename && *filename && (imode || (int)iter<nb)) { 26.82 + std::fprintf(stderr,"\r > frame %d ",iter); 26.83 + warp.save(filename,iter); 26.84 + } 26.85 + t+=1.0f/nb; 26.86 + if (t<0) { t=0; nb=-nb; } 26.87 + if (t>1) { t=1; nb=-nb; if (filename && *filename) std::exit(0); } 26.88 + } 26.89 +} 26.90 + 26.91 +// get_warp() : Return the image src warped by the motion field u. 26.92 +//------------ 26.93 +template<typename T> CImg<T> getwarp(const CImg<T>& src, const CImg<>& u) { 26.94 + CImg<T> warp(src); 26.95 + cimg_forXY(warp,x,y) warp(x,y) = (T)src.linear_atXY(x - u(x,y,0), y - u(x,y,1)); 26.96 + return warp; 26.97 +} 26.98 + 26.99 +// optmonoflow() : Register images for one scale ( semi-implicite PDE scheme ) between I2->I1 26.100 +//--------------- 26.101 +CImg<> optmonoflow(const CImg<>& I1, const CImg<>& I2, const CImg<>& u0, 26.102 + const float smooth, const float precision, CImgDisplay& disp) { 26.103 + 26.104 + CImg<> u = u0.get_resize(I1.dimx(),I1.dimy(),1,2,3),dI(u); 26.105 + CImg_3x3(I,float); 26.106 + float dt=2,E=1e20f; 26.107 + 26.108 + // compute first derivatives of I2 26.109 + cimg_for3x3(I2,x,y,0,0,I) { 26.110 + dI(x,y,0) = 0.5f*(Inc-Ipc); 26.111 + dI(x,y,1) = 0.5f*(Icn-Icp); 26.112 + } 26.113 + 26.114 + // Main PDE iteration 26.115 + for (unsigned int iter=0; iter<100000; iter++) { 26.116 + std::fprintf(stderr,"\r- Iteration %d - E = %g",iter,E); std::fflush(stderr); 26.117 + const float Eold = E; 26.118 + E = 0; 26.119 + cimg_for3XY(u,x,y) { 26.120 + const float 26.121 + X = x + u(x,y,0), 26.122 + Y = y + u(x,y,1), 26.123 + deltaI = (float)(I2.linear_atXY(X,Y) - I1(x,y)); 26.124 + float tmpf = 0; 26.125 + cimg_forV(u,k) { 26.126 + const float 26.127 + ux = 0.5f*(u(_n1x,y,k)-u(_p1x,y,k)), 26.128 + uy = 0.5f*(u(x,_n1y,k)-u(x,_p1y,k)); 26.129 + u(x,y,k) = (float)( u(x,y,k) + 26.130 + dt*( 26.131 + -deltaI*dI.linear_atXY(X,Y,k) + 26.132 + smooth* ( u(_n1x,y,k) + u(_p1x,y,k) + u(x,_n1y,k) + u(x,_p1y,k) ) 26.133 + ) 26.134 + )/(1+4*smooth*dt); 26.135 + tmpf += ux*ux + uy*uy; 26.136 + } 26.137 + E += deltaI*deltaI + smooth * tmpf; 26.138 + } 26.139 + if (cimg::abs(Eold-E)<precision) break; 26.140 + if (Eold<E) dt*=0.5; 26.141 + if (disp) disp.resize(); 26.142 + if (disp && disp.is_closed) std::exit(0); 26.143 + if (disp && !(iter%300)) { 26.144 + const unsigned char white = 255; 26.145 + CImg<unsigned char> tmp = getwarp(I1,u).normalize(0,200); 26.146 + tmp.resize(disp.dimx(),disp.dimy()).draw_quiver(u,&white,0.7f,15,-14,0).display(disp); 26.147 + } 26.148 + } 26.149 + return u; 26.150 +} 26.151 + 26.152 +// optflow() : multiscale version of the image registration algorithm 26.153 +//----------- 26.154 +CImg<> optflow(const CImg<>& xsrc, const CImg<>& xdest, 26.155 + const float smooth, const float precision, const unsigned int pnb_scale, CImgDisplay& disp) { 26.156 + const CImg<> 26.157 + src = xsrc.get_pointwise_norm(1).resize(xdest.dimx(),xdest.dimy(),1,1,3).normalize(0,1), 26.158 + dest = xdest.get_pointwise_norm(1).resize(xdest.dimx(),xdest.dimy(),1,1,3).normalize(0,1); 26.159 + CImg<> u = CImg<>(src.dimx(),src.dimy(),1,2).fill(0); 26.160 + 26.161 + const unsigned int nb_scale = pnb_scale>0?pnb_scale:(unsigned int)(2*std::log((double)(cimg::max(src.dimx(),src.dimy())))); 26.162 + for (int scale=nb_scale-1; scale>=0; scale--) { 26.163 + const CImg<> I1 = src.get_resize((int)(src.dimx()/std::pow(1.5,scale)), (int)(src.dimy()/std::pow(1.5,scale)) ,1,1,3); 26.164 + const CImg<> I2 = dest.get_resize((int)(src.dimx()/std::pow(1.5,scale)), (int)(src.dimy()/std::pow(1.5,scale)) ,1,1,3); 26.165 + std::fprintf(stderr," * Scale %d\n",scale); 26.166 + u*=1.5; 26.167 + u = optmonoflow(I1,I2,u,smooth,(float)(precision/std::pow(2.25,1+scale)),disp); 26.168 + std::fprintf(stderr,"\n"); 26.169 + } 26.170 + return u; 26.171 +} 26.172 + 26.173 +/*------------------------ 26.174 + 26.175 + Main function 26.176 + 26.177 + ------------------------*/ 26.178 + 26.179 +int main(int argc,char **argv) { 26.180 + 26.181 + // Read command line parameters 26.182 + cimg_usage("Compute an optical flow between two 2D images, and create a warped animation"); 26.183 + const char 26.184 + *name_i1 = cimg_option("-i",cimg_imagepath "sh0r.pgm","Input Image 1 (Destination)"), 26.185 + *name_i2 = cimg_option("-i2",cimg_imagepath "sh1r.pgm","Input Image 2 (Source)"), 26.186 + *name_o = cimg_option("-o",(const char*)NULL,"Output 2D flow (inrimage)"), 26.187 + *name_seq = cimg_option("-o2",(const char*)NULL,"Output Warping Sequence"); 26.188 + const float 26.189 + smooth = cimg_option("-s",0.1f,"Flow Smoothness"), 26.190 + precision = cimg_option("-p",0.9f,"Convergence precision"); 26.191 + const unsigned int 26.192 + nb = cimg_option("-n",40,"Number of warped frames"), 26.193 + nbscale = cimg_option("-scale",0,"Number of scales (0=auto)"); 26.194 + const bool 26.195 + normalize = cimg_option("-equalize",true,"Histogram normalization of the images"), 26.196 + morph = cimg_option("-m",true,"Morphing mode"), 26.197 + imode = cimg_option("-c",true,"Complete interpolation (or last frame is missing)"), 26.198 + dispflag = !cimg_option("-novisu",false,"Visualization"); 26.199 + 26.200 + // Init images and display 26.201 + std::fprintf(stderr," - Init images.\n"); 26.202 + const CImg<> 26.203 + src(name_i1), 26.204 + dest(CImg<>(name_i2).resize(src,3)), 26.205 + src_blur = normalize?src.get_blur(0.5f).equalize(256):src.get_blur(0.5f), 26.206 + dest_blur = normalize?dest.get_blur(0.5f).equalize(256):dest.get_blur(0.5f); 26.207 + 26.208 + CImgDisplay disp; 26.209 + if (dispflag) { 26.210 + unsigned int w = src.dimx(), h = src.dimy(); 26.211 + const unsigned int dmin = cimg::min(w,h), minsiz = 512; 26.212 + if (dmin<minsiz) { w=w*minsiz/dmin; h=h*minsiz/dmin; } 26.213 + const unsigned int dmax = cimg::max(w,h), maxsiz = 1024; 26.214 + if (dmax>maxsiz) { w=w*maxsiz/dmax; h=h*maxsiz/dmax; } 26.215 + disp.assign(w,h,"Estimated Motion",0); 26.216 + } 26.217 + 26.218 + // Run Motion estimation algorithm 26.219 + std::fprintf(stderr," - Compute optical flow.\n"); 26.220 + const CImg<> u = optflow(src_blur,dest_blur,smooth,precision,nbscale,disp); 26.221 + if (name_o) u.save(name_o); 26.222 + u.print("Computed flow"); 26.223 + 26.224 + // Do morphing animation 26.225 + std::fprintf(stderr," - Create warped animation.\n"); 26.226 + CImgDisplay disp2; 26.227 + if (dispflag) { 26.228 + unsigned int w = src.dimx(), h = src.dimy(); 26.229 + const unsigned int dmin = cimg::min(w,h), minsiz = 100; 26.230 + if (dmin<minsiz) { w=w*minsiz/dmin; h=h*minsiz/dmin; } 26.231 + const unsigned int dmax = cimg::max(w,h), maxsiz = 1024/3; 26.232 + if (dmax>maxsiz) { w=w*maxsiz/dmax; h=h*maxsiz/dmax; } 26.233 + disp2.assign(3*w,h,"Source/Destination images and Motion animation",0); 26.234 + } 26.235 + 26.236 + animate_warp(src.get_normalize(0,255),dest.get_normalize(0,255),u,morph,imode,name_seq,nb,disp2); 26.237 + 26.238 + std::exit(0); 26.239 + return 0; 26.240 +}
27.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 27.2 +++ b/PTdecode/CImg-1.3.0/examples/image_surface.cpp Mon Aug 03 14:09:20 2009 +0100 27.3 @@ -0,0 +1,146 @@ 27.4 +/* 27.5 + # 27.6 + # File : image_surface.cpp 27.7 + # ( C++ source file ) 27.8 + # 27.9 + # Description : This tool allows to show an image as a 3D surface. 27.10 + # This file is a part of the CImg Library project. 27.11 + # ( http://cimg.sourceforge.net ) 27.12 + # 27.13 + # Copyright : David Tschumperle 27.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 27.15 + # 27.16 + # License : CeCILL v2.0 27.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 27.18 + # 27.19 + # This software is governed by the CeCILL license under French law and 27.20 + # abiding by the rules of distribution of free software. You can use, 27.21 + # modify and/ or redistribute the software under the terms of the CeCILL 27.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 27.23 + # "http://www.cecill.info". 27.24 + # 27.25 + # As a counterpart to the access to the source code and rights to copy, 27.26 + # modify and redistribute granted by the license, users are provided only 27.27 + # with a limited warranty and the software's author, the holder of the 27.28 + # economic rights, and the successive licensors have only limited 27.29 + # liability. 27.30 + # 27.31 + # In this respect, the user's attention is drawn to the risks associated 27.32 + # with loading, using, modifying and/or developing or reproducing the 27.33 + # software by the user in light of its specific status of free software, 27.34 + # that may mean that it is complicated to manipulate, and that also 27.35 + # therefore means that it is reserved for developers and experienced 27.36 + # professionals having in-depth computer knowledge. Users are therefore 27.37 + # encouraged to load and test the software's suitability as regards their 27.38 + # requirements in conditions enabling the security of their systems and/or 27.39 + # data to be ensured and, more generally, to use and operate it in the 27.40 + # same conditions as regards security. 27.41 + # 27.42 + # The fact that you are presently reading this means that you have had 27.43 + # knowledge of the CeCILL license and that you accept its terms. 27.44 + # 27.45 +*/ 27.46 + 27.47 +#include "CImg.h" 27.48 +using namespace cimg_library; 27.49 + 27.50 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 27.51 +#ifdef cimg_use_visualcpp6 27.52 +#define std 27.53 +#endif 27.54 +#ifdef min 27.55 +#undef min 27.56 +#undef max 27.57 +#endif 27.58 + 27.59 +#ifndef cimg_imagepath 27.60 +#define cimg_imagepath "img/" 27.61 +#endif 27.62 + 27.63 +// Main procedure 27.64 +//---------------- 27.65 +int main(int argc,char **argv) { 27.66 + 27.67 + // Read command line arguments. 27.68 + cimg_usage("Render an image as a surface"); 27.69 + const char *file_i = cimg_option("-i",cimg_imagepath "logo.bmp","Input image"); 27.70 + const char *file_o = cimg_option("-o",(char*)0,"Output 3D object"); 27.71 + const float sigma = cimg_option("-smooth",1.0f,"Amount of image smoothing"); 27.72 + const float ratioz = cimg_option("-z",0.25f,"Aspect ratio along z-axis"); 27.73 + const unsigned int di = cimg_option("-di",10,"Step for isophote skipping"); 27.74 + 27.75 + // Load 2D image file. 27.76 + std::fprintf(stderr,"\n- Load file '%s'",cimg::basename(file_i)); std::fflush(stderr); 27.77 + const CImg<unsigned char> 27.78 + img = CImg<>(file_i).blur(sigma).resize(-100,-100,1,3), 27.79 + norm = img.get_pointwise_norm().normalize(0,255); 27.80 + 27.81 + // Compute surface with triangles. 27.82 + std::fprintf(stderr,"\n- Create image surface"); std::fflush(stderr); 27.83 + CImgList<unsigned int> primitives; 27.84 + CImgList<unsigned char> colors; 27.85 + const CImg<> points = img.get_elevation3d(primitives,colors,norm*-ratioz); 27.86 + 27.87 + // Compute image isophotes. 27.88 + std::fprintf(stderr,"\n- Compute image isophotes"); std::fflush(stderr); 27.89 + CImgList<unsigned int> isoprimitives; 27.90 + CImgList<unsigned char> isocolors; 27.91 + CImg<> isopoints; 27.92 + for (unsigned int i = 0; i<255; i+=di) { 27.93 + CImgList<> prims; 27.94 + const CImg<> pts = norm.get_isovalue3d(prims,(float)i); 27.95 + isopoints.append_object3d(isoprimitives,pts,prims); 27.96 + } 27.97 + cimglist_for(isoprimitives,l) { 27.98 + const unsigned int i0 = isoprimitives(l,0); 27.99 + const float x0 = isopoints(i0,0), y0 = isopoints(i0,1); 27.100 + const unsigned char 27.101 + r = (unsigned char)img.linear_atXY(x0,y0,0), 27.102 + g = (unsigned char)img.linear_atXY(x0,y0,1), 27.103 + b = (unsigned char)img.linear_atXY(x0,y0,2); 27.104 + isocolors.insert(CImg<unsigned char>::vector(r,g,b)); 27.105 + } 27.106 + cimg_forX(isopoints,ll) isopoints(ll,2) = -ratioz*norm.linear_atXY(isopoints(ll,0),isopoints(ll,1)); 27.107 + 27.108 + // Save object if necessary 27.109 + if (file_o) { 27.110 + std::fprintf(stderr,"\n- Save 3d object as '%s'",cimg::basename(file_o)); std::fflush(stderr); 27.111 + points.save_off(file_o,primitives,colors); 27.112 + } 27.113 + 27.114 + // Enter event loop 27.115 + std::fprintf(stderr, 27.116 + "\n- Enter interactive loop.\n\n" 27.117 + "Reminder : \n" 27.118 + " + Use mouse to rotate and zoom object\n" 27.119 + " + key 'F' : Toggle fullscreen\n" 27.120 + " + key 'Q' or 'ESC' : Quit\n" 27.121 + " + Any other key : Change rendering type\n\n"); std::fflush(stderr); 27.122 + const char *const title = "Image viewed as a surface"; 27.123 + CImgDisplay disp(800,600,title,0); 27.124 + unsigned int rtype = 2; 27.125 + CImg<float> pose = CImg<float>::identity_matrix(4); 27.126 + 27.127 + while (!disp.is_closed) { 27.128 + const unsigned char white[3]={ 255, 255, 255 }; 27.129 + CImg<unsigned char> visu(disp.dimx(), disp.dimy(),1,3,0); 27.130 + visu.draw_text(10,10,"Render : %s",white,0,1,19, 27.131 + rtype==0?"Points":(rtype==1?"Lines":(rtype==2?"Faces":(rtype==3?"Flat-shaded faces": 27.132 + (rtype==4?"Gouraud-shaded faces":(rtype==5?"Phong-shaded faces":"Isophotes")))))); 27.133 + if (rtype==6) visu.display_object3d(disp,isopoints,isoprimitives,isocolors,true,1,-1,true,500.0f,0.0f,0.0f,true,pose.ptr()); 27.134 + else visu.display_object3d(disp,points,primitives,colors,true,rtype,-1,true,500.0f,0.0f,0.0f,true,pose.ptr()); 27.135 + switch (disp.key) { 27.136 + case 0: break; 27.137 + case cimg::keyBACKSPACE: rtype = (7+rtype-1)%7; break; 27.138 + case cimg::keyQ: 27.139 + case cimg::keyESC: disp.close(); break; 27.140 + case cimg::keyF: 27.141 + if (disp.is_fullscreen) disp.resize(800,600); else disp.resize(disp.screen_dimx(),disp.screen_dimy()); 27.142 + disp.toggle_fullscreen(); 27.143 + break; 27.144 + default: rtype = (rtype+1)%7; break; 27.145 + } 27.146 + } 27.147 + 27.148 + return 0; 27.149 +}
28.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 28.2 +++ b/PTdecode/CImg-1.3.0/examples/img/CImg_demo.h Mon Aug 03 14:09:20 2009 +0100 28.3 @@ -0,0 +1,31909 @@ 28.4 +/*------------------------------------------------------------ 28.5 + 28.6 + Define hard-coded color images used in the 'CImg_demo.cpp' 28.7 + example file, so that the corresponding executable does not 28.8 + depend on additional data files. 28.9 + 28.10 +--------------------------------------------------------------*/ 28.11 + 28.12 +/* Define image 'foot' of size 200x200x1x3 and type 'const unsigned char' */ 28.13 +const unsigned char data_foot[] = { 28.14 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.15 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.16 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.17 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.18 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 154, 68, 28.19 + 17, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.20 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 84, 255, 255, 255, 255, 255, 28.21 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.22 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.23 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.24 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.25 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.26 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.27 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.28 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.29 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.30 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.31 + 255, 230, 165, 84, 26, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.32 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.33 + 0, 25, 175, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 253, 255, 28.34 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.35 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.36 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.37 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.38 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.39 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.40 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.41 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.42 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.43 + 255, 255, 255, 255, 255, 255, 255, 215, 116, 26, 1, 0, 0, 0, 0, 0, 28.44 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.45 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.46 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 254, 254, 255, 255, 255, 255, 28.47 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.48 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.49 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.50 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.51 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.52 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.53 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.54 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.55 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 194, 74, 7, 28.56 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.57 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 28.58 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.59 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.60 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.61 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.62 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.63 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.64 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.65 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.66 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.67 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.68 + 255, 205, 133, 68, 22, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.69 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.70 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.71 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.72 + 252, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.73 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.74 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.75 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.76 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.77 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.78 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.79 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.80 + 255, 255, 255, 255, 255, 215, 144, 85, 33, 4, 0, 0, 0, 0, 0, 0, 28.81 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 28.82 + 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.83 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.84 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.85 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.86 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.87 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.88 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.89 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.90 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.91 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.92 + 255, 255, 255, 255, 255, 255, 255, 245, 194, 122, 67, 32, 5, 1, 0, 0, 28.93 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.94 + 0, 1, 0, 0, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.95 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.96 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.97 + 255, 255, 255, 255, 255, 255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255, 28.98 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.99 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 111, 39, 9, 28.105 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.106 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 255, 255, 255, 255, 28.107 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.110 + 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.117 + 255, 255, 255, 205, 58, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 238, 28.119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 28.123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 0, 0, 0, 0, 28.130 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.131 + 0, 0, 0, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.132 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.142 + 255, 255, 255, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.143 + 0, 0, 0, 0, 0, 0, 0, 28, 116, 215, 255, 255, 255, 255, 255, 255, 28.144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.148 + 251, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 0, 0, 0, 0, 28.155 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 28.156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.157 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.167 + 255, 255, 255, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 28.168 + 48, 105, 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.170 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.173 + 255, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 205, 72, 0, 0, 0, 28.180 + 0, 0, 27, 66, 122, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.182 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 28.192 + 242, 0, 0, 0, 0, 0, 108, 120, 171, 233, 253, 255, 255, 255, 255, 255, 28.193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.195 + 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.198 + 255, 255, 255, 255, 255, 255, 255, 248, 255, 255, 255, 255, 255, 255, 255, 255, 28.199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.204 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 0, 28.217 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.220 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 254, 255, 255, 255, 255, 28.224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.229 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.241 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 0, 255, 28.242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.245 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 28.249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.254 + 219, 219, 219, 219, 0, 0, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.266 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 28.267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.270 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.274 + 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 28.279 + 219, 219, 0, 0, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.283 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.291 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 28.292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.304 + 219, 0, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.308 + 255, 255, 155, 0, 0, 22, 88, 194, 245, 255, 255, 255, 255, 255, 255, 255, 28.309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.316 + 255, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 255, 28.317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 0, 0, 0, 0, 0, 0, 28.321 + 13, 110, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.328 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 28.329 + 0, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.333 + 255, 42, 0, 0, 0, 0, 0, 0, 0, 0, 11, 92, 205, 255, 255, 255, 28.334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.341 + 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 255, 255, 255, 28.342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.346 + 0, 0, 0, 0, 0, 62, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.353 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 28.354 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.358 + 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.359 + 156, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.366 + 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 28.367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.370 + 255, 255, 255, 255, 255, 255, 255, 194, 0, 0, 0, 0, 0, 0, 0, 0, 28.371 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 28.372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.378 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 28.379 + 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 0, 28.383 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.384 + 0, 27, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 28.391 + 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 28.392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.395 + 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.396 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 49, 0, 0, 0, 28.397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 28.400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.403 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 28.404 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 0, 0, 28.408 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.409 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 255, 255, 255, 255, 28.410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.416 + 219, 0, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.420 + 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.421 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.422 + 0, 0, 0, 0, 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 28.423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 32, 0, 10, 47, 28.425 + 156, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.428 + 255, 255, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 219, 219, 28.429 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 110, 0, 0, 0, 0, 28.433 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.434 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.435 + 0, 149, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.437 + 255, 255, 155, 0, 0, 0, 0, 0, 1, 32, 145, 245, 255, 255, 255, 255, 28.438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 0, 28.441 + 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.445 + 255, 245, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 28.446 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.447 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 194, 245, 255, 28.448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 0, 0, 0, 0, 0, 28.450 + 0, 0, 2, 76, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.453 + 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.454 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 0, 0, 0, 0, 0, 0, 28.458 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.459 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.460 + 0, 0, 0, 0, 0, 0, 0, 81, 165, 230, 255, 255, 255, 255, 255, 255, 28.461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.462 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 226, 255, 255, 28.463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.465 + 255, 255, 255, 255, 255, 255, 255, 198, 152, 119, 119, 152, 198, 0, 0, 219, 28.466 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.470 + 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.471 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.472 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.473 + 0, 0, 92, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.474 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 0, 28.475 + 0, 0, 0, 0, 0, 91, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 121, 28.478 + 33, 5, 4, 24, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.479 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.482 + 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 0, 0, 0, 0, 0, 28.483 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.484 + 0, 0, 0, 6, 11, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 205, 255, 28.486 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.487 + 255, 255, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 164, 255, 28.488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.490 + 255, 255, 255, 255, 255, 255, 152, 33, 0, 0, 0, 0, 0, 110, 219, 219, 28.491 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 28.495 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.496 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 7, 28.497 + 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.498 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 28.499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 19, 0, 0, 0, 28.500 + 0, 0, 0, 0, 0, 0, 25, 194, 255, 255, 255, 255, 255, 255, 255, 255, 28.501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 119, 3, 28.503 + 0, 0, 0, 0, 0, 16, 178, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.507 + 255, 255, 255, 255, 255, 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.508 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.509 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 28.510 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 28.511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.512 + 255, 255, 255, 255, 238, 147, 22, 0, 0, 0, 0, 0, 0, 0, 0, 58, 28.513 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.515 + 255, 255, 255, 255, 219, 219, 119, 1, 0, 0, 0, 0, 0, 0, 70, 198, 28.516 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 39, 0, 0, 28.520 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.523 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 0, 28.525 + 0, 0, 0, 0, 0, 0, 0, 2, 114, 255, 255, 255, 255, 255, 255, 255, 28.526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 152, 2, 28.528 + 0, 0, 0, 0, 0, 0, 5, 137, 219, 219, 219, 219, 219, 219, 219, 219, 28.529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.532 + 255, 255, 255, 207, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.533 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.534 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.536 + 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.537 + 255, 255, 255, 255, 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 28.538 + 11, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.540 + 255, 255, 219, 219, 219, 219, 198, 22, 0, 0, 0, 0, 0, 0, 0, 88, 28.541 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 68, 0, 0, 0, 0, 28.545 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.546 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.547 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.548 + 0, 0, 0, 0, 0, 0, 0, 0, 133, 255, 255, 255, 255, 255, 255, 255, 28.549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.550 + 115, 0, 0, 0, 0, 0, 0, 0, 0, 37, 230, 255, 255, 255, 255, 255, 28.551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 217, 0, 28.553 + 0, 0, 0, 0, 0, 0, 0, 27, 219, 219, 219, 219, 219, 219, 219, 255, 28.554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.557 + 255, 207, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.558 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.559 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.560 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.561 + 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.562 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 76, 0, 0, 0, 0, 0, 0, 28.563 + 0, 0, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.565 + 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 28.566 + 176, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.569 + 255, 255, 255, 255, 255, 255, 255, 255, 230, 79, 0, 0, 0, 0, 0, 0, 28.570 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.571 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.572 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.573 + 0, 0, 0, 0, 0, 0, 0, 0, 38, 255, 255, 255, 255, 255, 255, 255, 28.574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.575 + 255, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 255, 255, 255, 255, 28.576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.577 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 0, 0, 0, 28.578 + 0, 0, 0, 0, 0, 0, 0, 0, 103, 219, 219, 219, 219, 219, 219, 255, 28.579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 28.582 + 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.583 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.584 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.585 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.586 + 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 28.588 + 0, 0, 0, 5, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.590 + 219, 219, 219, 210, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.591 + 35, 210, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.594 + 255, 255, 255, 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 28.595 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.597 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.598 + 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 255, 28.599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.600 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 205, 255, 255, 28.601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.602 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 210, 120, 0, 0, 0, 0, 28.603 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 173, 219, 219, 219, 219, 255, 255, 28.604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 0, 28.607 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.608 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.609 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.610 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.611 + 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 28.613 + 0, 0, 0, 0, 0, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.615 + 219, 219, 137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.616 + 0, 115, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.619 + 255, 255, 255, 255, 255, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.620 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.621 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.622 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.623 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 245, 255, 255, 255, 255, 255, 255, 28.624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.625 + 255, 255, 255, 255, 212, 0, 0, 0, 0, 0, 0, 0, 0, 4, 205, 255, 28.626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.627 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 159, 0, 0, 0, 0, 0, 0, 28.628 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 219, 219, 219, 219, 255, 255, 28.629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 28.632 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.633 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.634 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.635 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.636 + 1, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 28.638 + 0, 0, 0, 0, 0, 0, 54, 245, 255, 255, 255, 255, 255, 255, 255, 255, 28.639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 28.640 + 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.641 + 0, 3, 176, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.644 + 255, 255, 255, 170, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.646 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.647 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.648 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 122, 255, 255, 255, 255, 255, 255, 28.649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.650 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 1, 100, 28.651 + 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.652 + 255, 255, 255, 219, 219, 219, 219, 219, 112, 0, 0, 0, 0, 0, 0, 0, 28.653 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 219, 219, 255, 255, 255, 28.654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 23, 0, 0, 0, 0, 28.657 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.658 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.659 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.660 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.661 + 0, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.663 + 0, 0, 0, 0, 0, 0, 0, 6, 150, 255, 255, 255, 255, 255, 255, 255, 28.664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 198, 152, 119, 28.665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.666 + 0, 0, 32, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.669 + 255, 215, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.670 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.671 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.672 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.673 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 255, 255, 255, 255, 255, 255, 28.674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.675 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.676 + 40, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.677 + 255, 255, 219, 219, 167, 62, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.678 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 198, 219, 255, 255, 255, 28.679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 0, 0, 0, 0, 0, 0, 28.682 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.684 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.685 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.686 + 0, 24, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.688 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 186, 255, 255, 255, 255, 255, 255, 28.689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 137, 19, 0, 0, 0, 28.690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.691 + 0, 0, 0, 110, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.694 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.695 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.696 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.697 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.698 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 28.699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.700 + 255, 255, 255, 255, 255, 255, 255, 255, 235, 0, 0, 0, 0, 0, 0, 0, 28.701 + 0, 57, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.702 + 219, 219, 146, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.703 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 198, 255, 255, 255, 28.704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.706 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.708 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.709 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.710 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.711 + 0, 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.713 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 3, 179, 255, 255, 255, 255, 255, 28.714 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 178, 27, 0, 0, 0, 0, 0, 28.715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.716 + 0, 0, 0, 1, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.718 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.719 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.720 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.721 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.722 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.723 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 255, 255, 255, 255, 255, 255, 28.724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 28.726 + 0, 0, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.727 + 178, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.728 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 185, 255, 255, 28.729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 28.731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 0, 0, 0, 0, 0, 0, 28.732 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.733 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.734 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.735 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.736 + 0, 1, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.738 + 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 5, 235, 255, 255, 255, 255, 28.739 + 255, 255, 255, 255, 255, 255, 219, 178, 58, 3, 0, 0, 0, 0, 0, 0, 28.740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.741 + 0, 0, 0, 0, 0, 37, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.743 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.744 + 255, 255, 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.745 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.746 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.747 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.748 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 194, 255, 255, 255, 255, 255, 28.749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.751 + 0, 0, 0, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 32, 28.752 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 255, 28.754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.755 + 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 28.757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.758 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.759 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.760 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.761 + 0, 1, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.763 + 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 205, 255, 255, 255, 255, 28.764 + 255, 255, 255, 255, 255, 164, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.766 + 0, 0, 0, 0, 0, 0, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.767 + 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.769 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.770 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.771 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.772 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.773 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 255, 255, 255, 255, 255, 28.774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 0, 0, 0, 28.776 + 0, 0, 4, 213, 255, 255, 255, 255, 255, 255, 255, 255, 238, 51, 1, 0, 28.777 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.779 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 28.780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 28.782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.783 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.784 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.785 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.786 + 0, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.788 + 255, 255, 255, 255, 106, 0, 0, 0, 0, 0, 76, 235, 255, 255, 255, 255, 28.789 + 255, 255, 255, 255, 120, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.791 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.794 + 255, 255, 255, 255, 255, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.795 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.796 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.797 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.798 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 0, 0, 28.801 + 6, 81, 235, 255, 255, 255, 255, 255, 255, 255, 255, 205, 10, 0, 0, 0, 28.802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 45, 0, 28.807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.808 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.809 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.810 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.811 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.813 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.814 + 255, 255, 255, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.816 + 0, 0, 0, 0, 0, 0, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.819 + 255, 255, 255, 255, 255, 255, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.821 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.822 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.823 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 255, 255, 255, 255, 255, 28.824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.826 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 6, 0, 0, 0, 0, 28.827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.828 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 255, 28.829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 83, 28.832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.833 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.834 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.835 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.836 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.838 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.839 + 255, 230, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.841 + 0, 0, 0, 0, 0, 0, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.844 + 255, 255, 255, 255, 255, 255, 255, 207, 29, 0, 0, 0, 0, 0, 0, 0, 28.845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.846 + 0, 0, 2, 1, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.847 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.848 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.851 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 160, 13, 0, 0, 0, 0, 0, 28.852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.853 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 194, 255, 28.854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.857 + 161, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.858 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 57, 22, 2, 0, 0, 28.859 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.860 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.861 + 0, 0, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.864 + 255, 88, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.865 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.866 + 0, 0, 0, 0, 0, 37, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.869 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 86, 0, 0, 0, 0, 0, 0, 28.870 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.871 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.872 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.873 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.876 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 31, 0, 0, 0, 0, 0, 0, 28.877 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.878 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, 255, 255, 28.879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.882 + 255, 229, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.883 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.884 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.885 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.886 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.889 + 205, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.890 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.891 + 0, 0, 0, 0, 15, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 27, 0, 0, 0, 0, 28.895 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.896 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.897 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.898 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.901 + 255, 255, 255, 0, 255, 255, 255, 255, 125, 0, 0, 0, 0, 0, 0, 0, 28.902 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.903 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 255, 255, 255, 28.904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.907 + 255, 255, 255, 163, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.908 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.909 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.910 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.911 + 0, 0, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.914 + 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.916 + 0, 0, 0, 17, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 101, 0, 0, 0, 28.920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.921 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.922 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.923 + 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.926 + 255, 255, 255, 0, 255, 255, 255, 255, 8, 0, 0, 0, 0, 0, 0, 0, 28.927 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.928 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 219, 255, 255, 255, 28.929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.932 + 255, 255, 255, 255, 221, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.933 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.934 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.935 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 28.936 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.939 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.940 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.941 + 0, 0, 41, 198, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 86, 0, 28.945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.946 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.947 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.948 + 0, 0, 1, 28, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.951 + 255, 255, 255, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.953 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 219, 219, 255, 255, 255, 28.954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 28.957 + 255, 255, 255, 255, 255, 255, 255, 83, 0, 0, 0, 0, 0, 0, 0, 0, 28.958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.959 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.960 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 34, 0, 0, 0, 0, 28.961 + 0, 0, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.964 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.965 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.966 + 0, 2, 210, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.969 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 245, 28.970 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.971 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.972 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.973 + 0, 4, 37, 4, 0, 0, 0, 0, 0, 0, 23, 255, 255, 255, 255, 255, 28.974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.976 + 255, 255, 255, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.977 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.978 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 151, 219, 219, 219, 255, 255, 255, 28.979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.982 + 255, 250, 253, 255, 255, 255, 255, 255, 221, 0, 0, 0, 0, 0, 0, 0, 28.983 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.984 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.985 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.986 + 0, 0, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.989 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.990 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.991 + 36, 204, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 240, 255, 255, 255, 255, 255, 28.995 + 255, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.996 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.997 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.998 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 255, 255, 255, 28.999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1001 + 255, 255, 255, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1002 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1003 + 0, 0, 0, 0, 0, 0, 0, 2, 157, 219, 219, 219, 219, 219, 255, 255, 28.1004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1007 + 255, 255, 250, 247, 255, 255, 255, 255, 255, 255, 196, 0, 0, 0, 0, 0, 28.1008 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1009 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1010 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1011 + 0, 0, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.1014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1015 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 28.1016 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 28.1020 + 255, 255, 255, 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1021 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1022 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1023 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 142, 255, 255, 255, 255, 255, 28.1024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1026 + 255, 255, 255, 0, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1027 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1028 + 0, 0, 0, 0, 0, 0, 0, 140, 219, 219, 219, 219, 219, 219, 219, 219, 28.1029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 0, 0, 0, 0, 28.1033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1034 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1035 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1036 + 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.1039 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1040 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 198, 28.1041 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.1042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1045 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1047 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1048 + 0, 0, 0, 0, 0, 0, 24, 84, 170, 230, 0, 0, 255, 255, 255, 255, 28.1049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1051 + 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1053 + 0, 0, 0, 0, 0, 0, 100, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 2, 28.1058 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1059 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1060 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 37, 111, 205, 255, 255, 28.1061 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1065 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 185, 219, 28.1066 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.1067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1070 + 255, 255, 255, 255, 255, 255, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1072 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 21, 28.1073 + 84, 165, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1076 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1077 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1078 + 0, 0, 0, 0, 0, 64, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1079 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.1083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1084 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1085 + 0, 11, 39, 53, 72, 125, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1086 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1090 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, 219, 219, 28.1091 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.1092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1095 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1097 + 0, 0, 0, 0, 2, 23, 87, 170, 230, 255, 255, 255, 255, 255, 255, 255, 28.1098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.1099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1101 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1103 + 0, 0, 0, 0, 9, 210, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1104 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1108 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1109 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 255, 255, 28.1110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1111 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 219, 219, 219, 28.1116 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.1117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 0, 28.1121 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 48, 105, 28.1122 + 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.1124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1126 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1127 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1128 + 0, 0, 0, 0, 128, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1129 + 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1133 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 28, 28.1134 + 49, 72, 111, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1136 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.1137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1140 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 198, 219, 219, 219, 28.1141 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.1142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.1146 + 0, 0, 30, 74, 144, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1149 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1151 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1153 + 0, 0, 0, 79, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1154 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1158 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.1162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 176, 219, 219, 219, 219, 28.1166 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 28.1167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1174 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1176 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1177 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1178 + 0, 0, 46, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1179 + 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1183 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.1187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 219, 219, 219, 219, 219, 28.1191 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 28.1192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.1196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1199 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1201 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1202 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1203 + 0, 0, 131, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1204 + 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1208 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.1212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1214 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 28.1216 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 28.1217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.1221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1224 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1226 + 255, 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1227 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1228 + 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1229 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.1230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1233 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.1237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.1239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 28.1241 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.1246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1249 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.1250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1251 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.1252 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 28.1253 + 0, 210, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1254 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.1255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1258 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.1262 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.1264 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 28.1265 + 0, 0, 0, 0, 0, 0, 0, 1, 0, 219, 219, 219, 219, 219, 219, 219, 28.1266 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1267 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.1271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1274 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.1275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1276 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 1, 1, 28.1277 + 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 28.1278 + 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1279 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 28.1280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1283 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1287 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 98, 20, 0, 98, 205, 28.1289 + 0, 0, 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, 1, 0, 0, 2, 28.1290 + 2, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1291 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1292 + 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1293 + 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 28.1294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.1296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.1300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1301 + 255, 176, 39, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 9, 3, 28.1302 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1303 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1304 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.1305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 28.1306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1308 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1312 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1313 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 26, 0, 0, 0, 0, 0, 15, 28.1314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1315 + 0, 0, 0, 0, 0, 0, 0, 90, 219, 219, 219, 219, 219, 219, 219, 219, 28.1316 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1317 + 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1318 + 255, 255, 255, 255, 255, 255, 238, 216, 255, 255, 255, 255, 255, 255, 255, 255, 28.1319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1320 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.1321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.1325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 111, 28.1326 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146, 28.1328 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1329 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 28.1330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 247, 251, 28.1331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1333 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1337 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1338 + 255, 255, 255, 255, 255, 215, 62, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.1339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1340 + 0, 0, 0, 0, 0, 0, 0, 198, 219, 219, 219, 219, 219, 219, 219, 219, 28.1341 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1342 + 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1345 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.1346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.1350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 128, 18, 0, 0, 28.1351 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 28.1352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1353 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1354 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 28.1355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.1358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1362 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1363 + 255, 230, 128, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1364 + 48, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1365 + 0, 0, 1, 15, 79, 176, 219, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1366 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1367 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.1368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1370 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.1371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.1375 + 255, 255, 255, 255, 255, 255, 255, 245, 141, 24, 1, 0, 0, 0, 0, 0, 28.1376 + 0, 0, 0, 0, 0, 0, 0, 0, 181, 47, 5, 0, 0, 0, 0, 0, 28.1377 + 0, 0, 1, 1, 1, 4, 23, 40, 57, 90, 146, 198, 219, 219, 219, 0, 28.1378 + 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1379 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1380 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.1383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1387 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 230, 137, 30, 28.1388 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1389 + 255, 215, 124, 79, 54, 47, 51, 62, 95, 152, 198, 219, 219, 219, 219, 219, 28.1390 + 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 28.1391 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1392 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 28.1393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1395 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1400 + 0, 0, 255, 238, 125, 18, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1401 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 219, 219, 219, 219, 219, 219, 28.1402 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1403 + 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1404 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1405 + 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.1408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 201, 30, 0, 0, 0, 0, 28.1413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 28.1414 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1415 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 28.1416 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1417 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.1418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1420 + 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1425 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.1426 + 20, 31, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1427 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1428 + 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1429 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1430 + 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.1433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1437 + 255, 255, 255, 255, 255, 255, 255, 230, 105, 1, 0, 0, 0, 0, 0, 0, 28.1438 + 0, 0, 0, 0, 0, 0, 0, 24, 198, 24, 0, 0, 0, 0, 0, 0, 28.1439 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1440 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 28.1441 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1442 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 28.1443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1445 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 28.1450 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1451 + 95, 3, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1452 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1453 + 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1454 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1455 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.1456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.1458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1462 + 255, 255, 255, 255, 255, 255, 255, 51, 0, 0, 0, 0, 0, 0, 0, 0, 28.1463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 28.1464 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1465 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 28.1466 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1467 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1468 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1470 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 2, 28.1475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1476 + 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1477 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1478 + 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1479 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1480 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.1481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.1483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1487 + 255, 255, 255, 255, 255, 251, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1489 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1490 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 28.1491 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1492 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1493 + 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1495 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 4, 0, 28.1500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1501 + 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 28.1502 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1503 + 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 28.1504 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1505 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.1506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.1508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1512 + 255, 255, 255, 255, 255, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1513 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1514 + 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1515 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1516 + 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1517 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1518 + 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1520 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 5, 0, 0, 28.1525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1526 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 219, 219, 219, 219, 219, 219, 219, 28.1527 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1528 + 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 28.1529 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1530 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 28.1531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.1533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1537 + 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1539 + 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1540 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1541 + 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1542 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1543 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1545 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 6, 0, 0, 0, 28.1550 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1551 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 219, 219, 219, 219, 219, 219, 28.1552 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1553 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 28.1554 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1555 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.1558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1562 + 255, 255, 255, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1563 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.1564 + 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1565 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1566 + 219, 219, 219, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1567 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1568 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.1569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1570 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 16, 0, 0, 0, 0, 28.1575 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1576 + 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 219, 219, 219, 219, 219, 219, 28.1577 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1578 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 28.1579 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1580 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1581 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.1583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1587 + 255, 255, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 28.1589 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1590 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1591 + 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1592 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1593 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 28.1594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1595 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 0, 0, 0, 0, 0, 28.1600 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1601 + 0, 0, 0, 0, 0, 0, 0, 84, 255, 255, 255, 219, 219, 219, 219, 219, 28.1602 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1603 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 28.1604 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1605 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1606 + 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1607 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.1608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1612 + 255, 184, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1613 + 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 144, 28.1614 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1615 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1616 + 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1617 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1618 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 28.1619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1620 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1624 + 255, 255, 255, 255, 255, 255, 255, 255, 238, 64, 0, 0, 0, 0, 0, 0, 28.1625 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1626 + 0, 0, 0, 0, 0, 0, 6, 215, 255, 255, 255, 255, 219, 219, 219, 219, 28.1627 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1628 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 28.1629 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1630 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1631 + 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 28.1632 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.1633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1637 + 196, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1638 + 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 40, 255, 28.1639 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1640 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1641 + 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 28.1642 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1643 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1644 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.1645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1649 + 255, 255, 255, 255, 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 28.1650 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 28.1651 + 0, 0, 0, 0, 0, 0, 105, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.1652 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1653 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1654 + 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1655 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1656 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 205, 133, 85, 28.1657 + 61, 63, 92, 144, 215, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.1658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 28.1662 + 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1663 + 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 1, 170, 255, 28.1664 + 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1665 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1666 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 219, 219, 219, 28.1667 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1668 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1669 + 219, 185, 124, 73, 28, 4, 0, 0, 0, 0, 1, 6, 5, 9, 0, 142, 28.1670 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1674 + 255, 255, 255, 255, 255, 255, 255, 110, 0, 0, 0, 0, 0, 0, 0, 0, 28.1675 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 28.1676 + 0, 0, 0, 0, 0, 10, 230, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.1677 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1678 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1679 + 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1680 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1681 + 219, 219, 217, 200, 155, 100, 54, 24, 3, 1, 0, 0, 0, 0, 0, 0, 28.1682 + 0, 0, 0, 0, 0, 0, 0, 1, 34, 170, 255, 255, 255, 255, 255, 255, 28.1683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 198, 20, 28.1687 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1688 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 255, 255, 28.1689 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1690 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1691 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 28.1692 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1693 + 219, 219, 219, 219, 219, 219, 219, 176, 114, 60, 22, 3, 1, 0, 0, 0, 28.1694 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1695 + 0, 18, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1699 + 255, 255, 219, 219, 219, 219, 110, 1, 0, 0, 0, 0, 0, 0, 0, 0, 28.1700 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.1701 + 0, 0, 0, 0, 0, 133, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 28.1702 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1703 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1704 + 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1705 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 210, 167, 105, 58, 25, 3, 1, 28.1706 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 185, 255, 255, 255, 255, 28.1708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1711 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 198, 20, 0, 28.1712 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1713 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 205, 255, 255, 28.1714 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1715 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1716 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 219, 219, 219, 28.1717 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 198, 28.1718 + 113, 27, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1719 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1720 + 0, 0, 0, 36, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.1724 + 219, 219, 219, 219, 219, 117, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1725 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1726 + 0, 0, 0, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.1727 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1728 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1729 + 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 210, 182, 148, 28.1730 + 125, 106, 79, 53, 33, 15, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1731 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1732 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 255, 255, 255, 28.1733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1736 + 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 210, 32, 0, 0, 28.1737 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1738 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 163, 255, 255, 255, 28.1739 + 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1740 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1741 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 28.1742 + 219, 192, 114, 40, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1743 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1744 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1745 + 0, 0, 0, 0, 3, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1748 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1749 + 219, 219, 219, 219, 167, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1750 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1751 + 0, 0, 0, 26, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.1752 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1753 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1754 + 219, 219, 219, 219, 198, 142, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 28.1755 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1756 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 164, 219, 28.1758 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.1761 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 64, 0, 0, 0, 28.1762 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1763 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 255, 255, 255, 255, 28.1764 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 28.1765 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1766 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 159, 43, 2, 0, 0, 28.1767 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1768 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1769 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1770 + 0, 0, 0, 0, 0, 0, 31, 185, 219, 219, 219, 219, 219, 219, 255, 255, 28.1771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.1773 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1774 + 219, 219, 219, 185, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1776 + 0, 0, 7, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1777 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1778 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1779 + 219, 219, 176, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1780 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1781 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 28.1783 + 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1784 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 28.1785 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1786 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 106, 0, 0, 0, 0, 28.1787 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 74, 255, 255, 255, 255, 255, 28.1789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 28.1790 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1791 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 114, 5, 0, 0, 0, 0, 28.1792 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1793 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1795 + 0, 0, 0, 0, 0, 0, 0, 3, 98, 219, 219, 219, 219, 219, 219, 219, 28.1796 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1797 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1798 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1799 + 219, 219, 210, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1800 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1801 + 0, 2, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1802 + 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1803 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1804 + 219, 219, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1805 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1806 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1808 + 9, 159, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1809 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1810 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1811 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 173, 2, 0, 0, 0, 0, 28.1812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 245, 255, 255, 255, 255, 255, 28.1814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.1815 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1816 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 52, 0, 0, 0, 0, 0, 28.1817 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1818 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1819 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 178, 219, 219, 219, 219, 219, 28.1821 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1822 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1823 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1824 + 219, 219, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1826 + 3, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1827 + 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1828 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1829 + 219, 219, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1830 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1831 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1833 + 0, 0, 58, 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1834 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1835 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1836 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 78, 0, 0, 0, 0, 0, 28.1837 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1838 + 0, 0, 0, 0, 0, 0, 0, 0, 58, 230, 255, 255, 255, 255, 255, 255, 28.1839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 28.1840 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1841 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 50, 0, 0, 0, 0, 0, 28.1842 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1843 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1844 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 88, 219, 219, 219, 219, 28.1846 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1847 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1848 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1849 + 219, 219, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1850 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 28.1851 + 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1852 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1853 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1854 + 219, 219, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1855 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1856 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1857 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1858 + 0, 0, 0, 6, 155, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1859 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1860 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1861 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 8, 0, 0, 0, 0, 0, 28.1862 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1863 + 0, 0, 0, 0, 0, 0, 1, 120, 255, 255, 255, 255, 255, 255, 255, 255, 28.1864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 28.1865 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1866 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 105, 0, 0, 0, 0, 0, 28.1867 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1868 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1869 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1870 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 185, 219, 219, 28.1871 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1872 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1873 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1874 + 219, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1875 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 230, 28.1876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1877 + 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1878 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1879 + 219, 219, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1880 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1881 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1882 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1883 + 0, 0, 0, 0, 0, 51, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1884 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1885 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1886 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 124, 0, 0, 0, 0, 0, 0, 28.1887 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1888 + 0, 0, 0, 0, 0, 2, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.1890 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1891 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 210, 0, 0, 0, 0, 0, 28.1892 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1893 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1894 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1895 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 198, 28.1896 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1897 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1898 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1899 + 219, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1900 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 215, 255, 28.1901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1902 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1903 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1904 + 219, 219, 219, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1905 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1906 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1907 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1908 + 0, 0, 0, 0, 0, 0, 1, 67, 198, 219, 219, 219, 219, 219, 219, 219, 28.1909 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1910 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1911 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 56, 0, 0, 0, 0, 0, 0, 28.1912 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1913 + 0, 0, 0, 0, 6, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 28.1915 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1916 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 25, 0, 0, 0, 0, 28.1917 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1918 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1919 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 28.1921 + 83, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1922 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1923 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1924 + 219, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1925 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 238, 255, 255, 28.1926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1927 + 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1928 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1929 + 219, 219, 219, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1930 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1931 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 10, 2, 0, 0, 0, 0, 28.1932 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1933 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 84, 198, 219, 219, 219, 219, 219, 28.1934 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1935 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1936 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 0, 0, 0, 28.1937 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1938 + 0, 0, 0, 18, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 28.1940 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1941 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 176, 2, 0, 0, 0, 28.1942 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1943 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1944 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1946 + 0, 2, 74, 190, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1947 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1948 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 28.1949 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1950 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 128, 255, 255, 255, 255, 28.1951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1952 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 28.1953 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1954 + 219, 219, 219, 219, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1955 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1956 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1957 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 82, 202, 219, 219, 219, 28.1959 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1960 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1961 + 219, 219, 219, 219, 0, 0, 0, 0, 219, 113, 0, 0, 0, 0, 0, 0, 28.1962 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1963 + 0, 0, 69, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 28.1965 + 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1966 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 73, 0, 0, 0, 28.1967 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1968 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1969 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1970 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1971 + 0, 0, 0, 5, 109, 210, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1972 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1973 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 219, 219, 219, 28.1974 + 219, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 215, 255, 255, 255, 255, 255, 28.1976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 28.1978 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1979 + 219, 219, 219, 219, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1980 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1981 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1982 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1983 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 139, 219, 219, 28.1984 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1985 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 28.1986 + 0, 0, 219, 219, 219, 219, 219, 219, 219, 148, 35, 0, 0, 0, 0, 0, 28.1987 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1988 + 25, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.1990 + 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1991 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 185, 7, 0, 0, 28.1992 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1993 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1994 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1995 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.1996 + 0, 0, 0, 0, 0, 12, 146, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1997 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1998 + 219, 219, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.1999 + 219, 182, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2000 + 0, 0, 0, 0, 0, 0, 0, 3, 151, 253, 255, 255, 255, 255, 255, 255, 28.2001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 28.2003 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2004 + 219, 219, 219, 219, 219, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2005 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2006 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2007 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2008 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 137, 28.2009 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2010 + 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 219, 219, 219, 219, 219, 28.2011 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 210, 125, 19, 0, 0, 0, 0, 28.2012 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 28.2013 + 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2015 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2016 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 167, 3, 0, 28.2017 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2018 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2019 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 28.2020 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2021 + 0, 0, 0, 0, 0, 0, 0, 14, 155, 219, 219, 219, 219, 219, 219, 219, 28.2022 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 28.2023 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2024 + 219, 219, 188, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2025 + 0, 0, 0, 0, 0, 0, 54, 229, 255, 255, 255, 255, 255, 255, 255, 255, 28.2026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.2028 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2029 + 219, 219, 219, 219, 219, 210, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2030 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2031 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2032 + 0, 1, 1, 10, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2034 + 22, 185, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2035 + 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2036 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 171, 37, 0, 0, 0, 28.2037 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 215, 255, 28.2038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2040 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2041 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 141, 1, 28.2042 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2043 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2044 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 9, 40, 2, 0, 0, 28.2045 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 219, 219, 219, 219, 219, 219, 28.2047 + 219, 219, 219, 219, 219, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 28.2048 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2049 + 219, 219, 219, 214, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2050 + 0, 0, 0, 0, 18, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 28.2053 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2054 + 219, 219, 219, 219, 219, 219, 200, 3, 0, 0, 0, 0, 0, 0, 0, 0, 28.2055 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2056 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2057 + 0, 1, 1, 1, 66, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2058 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2059 + 0, 6, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 219, 219, 28.2060 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2061 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28, 0, 0, 28.2062 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 159, 255, 255, 255, 28.2063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2065 + 255, 255, 255, 255, 255, 250, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2066 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 217, 37, 28.2067 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2068 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2069 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 5, 6, 0, 0, 0, 28.2070 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 219, 0, 28.2072 + 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2073 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2074 + 219, 219, 219, 219, 219, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2075 + 0, 0, 12, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2078 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2079 + 219, 219, 219, 219, 219, 219, 219, 110, 0, 0, 0, 0, 0, 0, 0, 0, 28.2080 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2081 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2082 + 1, 1, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2084 + 0, 0, 219, 0, 0, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2085 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2086 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 137, 1, 0, 28.2087 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 145, 255, 255, 255, 255, 255, 28.2088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2090 + 255, 255, 255, 255, 255, 255, 255, 248, 255, 219, 219, 219, 219, 219, 219, 219, 28.2091 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 185, 28.2092 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2093 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2094 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 28.2095 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 219, 219, 28.2097 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2098 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2099 + 219, 219, 219, 219, 219, 198, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2100 + 8, 113, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2103 + 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2104 + 219, 219, 219, 219, 219, 219, 219, 219, 64, 0, 0, 0, 0, 0, 0, 0, 28.2105 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2106 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2107 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2108 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2109 + 3, 122, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2110 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2111 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 110, 1, 28.2112 + 0, 0, 0, 0, 0, 0, 0, 3, 113, 209, 255, 255, 255, 255, 255, 255, 28.2113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 28.2116 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2117 + 167, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2119 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2120 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2121 + 0, 0, 0, 0, 0, 0, 0, 0, 67, 198, 219, 219, 219, 219, 219, 219, 28.2122 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2123 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2124 + 219, 219, 219, 219, 219, 219, 198, 37, 0, 0, 0, 0, 0, 0, 3, 94, 28.2125 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2128 + 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2129 + 219, 219, 219, 219, 219, 219, 219, 219, 210, 27, 0, 0, 0, 0, 0, 0, 28.2130 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2131 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2132 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2133 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 28.2134 + 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2135 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2136 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 159, 28.2137 + 39, 0, 0, 0, 1, 15, 106, 210, 219, 255, 255, 255, 255, 255, 255, 255, 28.2138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 219, 219, 219, 28.2141 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2142 + 219, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2143 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2144 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2145 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2146 + 0, 0, 0, 0, 0, 6, 113, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2147 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2148 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2149 + 219, 219, 219, 219, 219, 219, 219, 219, 176, 107, 69, 66, 100, 167, 210, 255, 28.2150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2153 + 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2154 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 168, 1, 0, 0, 0, 0, 0, 28.2155 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2156 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2157 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 149, 219, 219, 28.2159 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2160 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2161 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2162 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 255, 255, 28.2166 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2167 + 219, 204, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2168 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2169 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2170 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2171 + 0, 0, 0, 47, 176, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2172 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2173 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2174 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 28.2175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 219, 219, 28.2179 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 58, 0, 0, 0, 0, 0, 28.2180 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2181 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2182 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2183 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 113, 219, 219, 219, 219, 219, 28.2184 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2185 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2186 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2187 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 28.2191 + 247, 255, 219, 219, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 219, 219, 28.2192 + 219, 219, 140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2193 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2194 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2195 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2196 + 25, 149, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2197 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2198 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2199 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.2200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 28.2204 + 219, 219, 219, 219, 219, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2205 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2206 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2208 + 0, 0, 0, 0, 0, 0, 0, 47, 176, 219, 219, 219, 219, 219, 219, 219, 28.2209 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2210 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2211 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2212 + 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2216 + 255, 255, 253, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2217 + 219, 219, 219, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2218 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2219 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2220 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 219, 28.2221 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2222 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2223 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2224 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.2225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 219, 219, 28.2229 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 133, 0, 0, 0, 0, 28.2230 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2233 + 0, 0, 0, 0, 0, 142, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2234 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2235 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2236 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 28.2237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2241 + 255, 255, 255, 255, 254, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2242 + 219, 219, 219, 219, 107, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2243 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2244 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2245 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 219, 219, 219, 28.2246 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2247 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2248 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2249 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2254 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 176, 114, 47, 28.2255 + 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2256 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2257 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2258 + 0, 0, 1, 78, 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2259 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2260 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2261 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 28.2262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2266 + 255, 255, 255, 255, 255, 255, 255, 251, 255, 219, 219, 219, 219, 219, 219, 219, 28.2267 + 219, 219, 219, 219, 219, 219, 219, 219, 198, 142, 56, 8, 0, 0, 0, 0, 28.2268 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2269 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2270 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 198, 219, 219, 219, 219, 28.2271 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2272 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2273 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2274 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2279 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2280 + 219, 219, 219, 206, 126, 29, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2281 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2282 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2283 + 1, 65, 210, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2284 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2285 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2286 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.2287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 219, 219, 219, 28.2292 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 158, 46, 28.2293 + 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2294 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2295 + 0, 0, 0, 0, 0, 0, 0, 3, 70, 190, 219, 219, 219, 219, 219, 219, 28.2296 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2297 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2298 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2304 + 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2305 + 219, 219, 219, 219, 219, 219, 219, 204, 140, 52, 7, 0, 0, 0, 0, 0, 28.2306 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2307 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 75, 28.2308 + 190, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2309 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2310 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2311 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 28.2317 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2318 + 219, 219, 198, 110, 24, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2319 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2320 + 0, 0, 0, 0, 0, 3, 65, 190, 219, 219, 219, 219, 219, 219, 219, 219, 28.2321 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2322 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2323 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 28.2324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.2330 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 198, 142, 72, 22, 28.2331 + 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2332 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 70, 185, 219, 28.2333 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2334 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2335 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2336 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2342 + 255, 255, 252, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2343 + 219, 219, 219, 219, 219, 219, 219, 219, 198, 122, 46, 5, 1, 0, 0, 0, 28.2344 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2345 + 0, 0, 0, 3, 90, 204, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2346 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2347 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2348 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 28.2349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.2355 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2356 + 219, 219, 219, 219, 204, 168, 124, 80, 43, 17, 4, 0, 0, 0, 0, 0, 28.2357 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 98, 210, 219, 219, 219, 28.2358 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2359 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2360 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 28.2361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2367 + 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2368 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2369 + 219, 219, 219, 210, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2370 + 0, 19, 130, 210, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2371 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2372 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2373 + 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2380 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2381 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 185, 28.2382 + 0, 0, 0, 0, 0, 0, 0, 3, 50, 167, 219, 219, 219, 219, 219, 219, 28.2383 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2384 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2385 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.2386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 28.2393 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2394 + 219, 219, 219, 219, 219, 219, 219, 219, 204, 140, 58, 0, 0, 0, 42, 122, 28.2395 + 198, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2396 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2397 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 251, 28.2398 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2405 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2406 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2407 + 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2408 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2409 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2410 + 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 28.2418 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2419 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 28.2420 + 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2421 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2422 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 254, 255, 255, 255, 255, 28.2423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2430 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 28.2431 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2432 + 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 28.2433 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2434 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2443 + 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2444 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2445 + 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2446 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2447 + 219, 219, 219, 219, 219, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.2456 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2457 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 0, 219, 219, 28.2458 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2459 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 28.2460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2468 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 28.2469 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2470 + 219, 219, 219, 219, 219, 0, 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2471 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2472 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2481 + 255, 255, 255, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2482 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 0, 0, 28.2483 + 0, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2484 + 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 28.2494 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2495 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2496 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 255, 28.2497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 219, 219, 28.2507 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 28.2508 + 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 219, 255, 255, 255, 28.2509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2514 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2515 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2516 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2517 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2518 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2519 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2520 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 84, 0, 0, 0, 0, 0, 28.2521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2523 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2524 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2527 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2528 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2529 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2530 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2531 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2532 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2533 + 0, 25, 175, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 9, 0, 28.2534 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2536 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2537 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2539 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2540 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2541 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2542 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2543 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2544 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2545 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.2546 + 255, 255, 255, 255, 255, 255, 255, 255, 1, 1, 2, 0, 0, 0, 0, 0, 28.2547 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2548 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2549 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2550 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2551 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2552 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2553 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2554 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2555 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2556 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2557 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 28.2558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2559 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2560 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2561 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2562 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2563 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2564 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2565 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2566 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2567 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2568 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2569 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2570 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2572 + 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2573 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2574 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2575 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2576 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2577 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2578 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2579 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2580 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2581 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 28.2582 + 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 28.2585 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2586 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2587 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2590 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2591 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2592 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2593 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2594 + 0, 1, 0, 0, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.2595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2597 + 255, 255, 255, 255, 255, 255, 4, 6, 0, 0, 0, 0, 0, 0, 0, 0, 28.2598 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2599 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2600 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2601 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2602 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2603 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2604 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2605 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2606 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 255, 255, 255, 255, 28.2607 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2610 + 255, 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2611 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2612 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2613 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2614 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2615 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2616 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2617 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2618 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 238, 28.2619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.2620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 0, 0, 0, 28.2623 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2624 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2625 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2627 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2628 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2629 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2630 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2631 + 0, 0, 0, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2632 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2635 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2636 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2637 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2638 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2639 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2640 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2641 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2642 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2643 + 0, 0, 0, 0, 0, 0, 0, 28, 116, 215, 255, 255, 255, 255, 255, 255, 28.2644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.2645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2648 + 9, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2649 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2650 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2652 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2653 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2654 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2655 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 28.2656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2657 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.2658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.2661 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2662 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2663 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2666 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2667 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 28.2668 + 48, 105, 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.2670 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2673 + 255, 255, 255, 255, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2674 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2675 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2676 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2677 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2678 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2679 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 255, 205, 72, 0, 0, 0, 28.2680 + 0, 0, 27, 66, 122, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2682 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.2683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.2686 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2687 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2688 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2689 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2691 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 28.2692 + 6, 0, 0, 0, 0, 0, 108, 120, 171, 233, 253, 255, 255, 255, 255, 255, 28.2693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2695 + 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2698 + 255, 255, 255, 255, 255, 255, 255, 12, 0, 0, 0, 0, 0, 0, 0, 0, 28.2699 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2700 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2702 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2703 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2704 + 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.2705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.2708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2711 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2712 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2713 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2714 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2716 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 255, 255, 0, 28.2717 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2720 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 4, 0, 0, 0, 0, 28.2724 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2725 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2726 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2727 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2728 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2729 + 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.2730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.2733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2736 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2737 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2738 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2739 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2741 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 255, 28.2742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2745 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 4, 0, 0, 28.2749 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2750 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2752 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.2754 + 210, 210, 210, 210, 0, 0, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.2755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.2758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2761 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2762 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2763 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2764 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2766 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.2767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2770 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.2771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2774 + 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2776 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2777 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.2779 + 210, 210, 0, 0, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.2780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2783 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 28.2787 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2791 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.2792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.2796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2799 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2800 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2801 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.2804 + 210, 0, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.2805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2808 + 255, 255, 155, 0, 0, 22, 88, 194, 245, 255, 255, 255, 255, 255, 255, 255, 28.2809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 28.2812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2816 + 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 28.2817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 0, 0, 0, 0, 0, 0, 28.2821 + 13, 110, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2824 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2826 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2828 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 28.2829 + 0, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2833 + 255, 42, 0, 0, 0, 0, 0, 0, 0, 0, 11, 92, 205, 255, 255, 255, 28.2834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2837 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2838 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.2841 + 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 255, 255, 28.2842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.2846 + 0, 0, 0, 0, 0, 62, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.2850 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2851 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2853 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.2854 + 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2858 + 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2859 + 156, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2862 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2864 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2865 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.2866 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.2867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2870 + 255, 255, 255, 255, 255, 255, 255, 194, 0, 0, 0, 0, 0, 0, 0, 0, 28.2871 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 28.2872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.2875 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2876 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2877 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2878 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.2879 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 0, 28.2883 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2884 + 0, 27, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2887 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2888 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2889 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2890 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.2891 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.2892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2895 + 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2896 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 49, 0, 0, 0, 28.2897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 4, 0, 0, 0, 28.2900 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2901 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2902 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2903 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.2904 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 0, 0, 28.2908 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2909 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 255, 255, 255, 255, 28.2910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2912 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2914 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.2916 + 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.2917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2920 + 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2921 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2922 + 0, 0, 0, 0, 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 28.2923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 32, 0, 0, 0, 28.2925 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2926 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2927 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2928 + 0, 0, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 28.2929 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 110, 0, 0, 0, 0, 28.2933 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2934 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2935 + 0, 149, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2937 + 255, 255, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2938 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2939 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2940 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 0, 28.2941 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.2942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2945 + 255, 245, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 28.2946 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2947 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 194, 245, 255, 28.2948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 0, 0, 0, 0, 0, 28.2950 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2951 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2953 + 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.2954 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 0, 0, 0, 0, 0, 0, 28.2958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2959 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2960 + 0, 0, 0, 0, 0, 0, 0, 81, 165, 230, 255, 255, 255, 255, 255, 255, 28.2961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2962 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2963 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2964 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2965 + 0, 0, 0, 0, 0, 0, 0, 189, 146, 114, 114, 146, 189, 0, 0, 210, 28.2966 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.2967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2970 + 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2971 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2972 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2973 + 0, 0, 92, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2974 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 0, 28.2975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2976 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2977 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 189, 116, 28.2978 + 32, 5, 4, 23, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.2979 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2982 + 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 0, 0, 0, 0, 0, 28.2983 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2984 + 0, 0, 0, 6, 11, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2985 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 205, 255, 28.2986 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.2987 + 255, 255, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2988 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2989 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2990 + 0, 0, 0, 0, 0, 0, 146, 32, 0, 0, 0, 0, 0, 105, 210, 210, 28.2991 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.2992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.2994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 28.2995 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2996 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 7, 28.2997 + 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.2998 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 28.2999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 19, 0, 0, 0, 28.3000 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3001 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3002 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 114, 3, 28.3003 + 0, 0, 0, 0, 0, 16, 170, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3007 + 255, 255, 255, 255, 255, 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3008 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3009 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 28.3010 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 28.3011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3012 + 255, 255, 255, 255, 238, 147, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3013 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3015 + 0, 0, 0, 0, 210, 210, 114, 1, 0, 0, 0, 0, 0, 0, 67, 189, 28.3016 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 39, 0, 0, 28.3020 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3021 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3022 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3023 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.3024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 0, 28.3025 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3026 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3027 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 146, 2, 28.3028 + 0, 0, 0, 0, 0, 0, 5, 132, 210, 210, 210, 210, 210, 210, 210, 210, 28.3029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3032 + 255, 255, 255, 207, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3034 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3035 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3036 + 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3037 + 255, 255, 255, 255, 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 28.3038 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3039 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3040 + 0, 0, 210, 210, 210, 210, 189, 21, 0, 0, 0, 0, 0, 0, 0, 88, 28.3041 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 68, 0, 0, 0, 0, 28.3045 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3047 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3048 + 0, 0, 0, 0, 0, 0, 0, 0, 133, 255, 255, 255, 255, 255, 255, 255, 28.3049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3050 + 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3051 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 208, 0, 28.3053 + 0, 0, 0, 0, 0, 0, 0, 26, 210, 210, 210, 210, 210, 210, 210, 255, 28.3054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3057 + 255, 207, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3058 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3059 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3060 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3061 + 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3062 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 76, 0, 0, 0, 0, 0, 0, 28.3063 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3065 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 28.3066 + 169, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3069 + 255, 255, 255, 255, 255, 255, 255, 255, 230, 79, 0, 0, 0, 0, 0, 0, 28.3070 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3072 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3073 + 0, 0, 0, 0, 0, 0, 0, 0, 38, 255, 255, 255, 255, 255, 255, 255, 28.3074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3075 + 255, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3076 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3077 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 0, 0, 0, 28.3078 + 0, 0, 0, 0, 0, 0, 0, 0, 99, 210, 210, 210, 210, 210, 210, 255, 28.3079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 28.3082 + 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3084 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3085 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3086 + 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 28.3088 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.3090 + 210, 210, 210, 202, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3091 + 34, 202, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3094 + 255, 255, 255, 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 28.3095 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3097 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3098 + 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 255, 28.3099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3100 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3102 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 202, 115, 0, 0, 0, 0, 28.3103 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 166, 210, 210, 210, 210, 255, 255, 28.3104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 0, 28.3107 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3108 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3109 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3110 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3111 + 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 28.3113 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.3115 + 210, 210, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3116 + 0, 110, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3119 + 255, 255, 255, 255, 255, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3120 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3121 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3122 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3123 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 245, 255, 255, 255, 255, 255, 255, 28.3124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3125 + 255, 255, 255, 255, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3126 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3127 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 152, 0, 0, 0, 0, 0, 0, 28.3128 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 210, 210, 210, 210, 255, 255, 28.3129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 28.3132 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3133 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3134 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3135 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3136 + 1, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 28.3138 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.3140 + 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3141 + 0, 3, 169, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3144 + 255, 255, 255, 170, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3145 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3146 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3147 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3148 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 122, 255, 255, 255, 255, 255, 255, 28.3149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3150 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3152 + 0, 0, 0, 210, 210, 210, 210, 210, 107, 0, 0, 0, 0, 0, 0, 0, 28.3153 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 210, 210, 255, 255, 255, 28.3154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 23, 0, 0, 0, 0, 28.3157 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3159 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3160 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3161 + 0, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3163 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 189, 146, 114, 28.3165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3166 + 0, 0, 30, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3169 + 255, 215, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3170 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3171 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3172 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3173 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 255, 255, 255, 255, 255, 255, 28.3174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3175 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3177 + 0, 0, 210, 210, 160, 59, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3178 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 189, 210, 255, 255, 255, 28.3179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 0, 0, 0, 0, 0, 0, 28.3182 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3183 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3184 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3185 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3186 + 0, 24, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3188 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 131, 18, 0, 0, 0, 28.3190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3191 + 0, 0, 0, 105, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3194 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3195 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3196 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3197 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3198 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 28.3199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3200 + 255, 255, 255, 255, 255, 255, 255, 255, 235, 0, 0, 0, 0, 0, 0, 0, 28.3201 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3202 + 210, 210, 140, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3203 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 189, 255, 255, 255, 28.3204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3206 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3208 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3209 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3210 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3211 + 0, 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3213 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3214 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 170, 26, 0, 0, 0, 0, 0, 28.3215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3216 + 0, 0, 0, 1, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3218 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.3219 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3220 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3221 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3222 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3223 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 255, 255, 255, 255, 255, 255, 28.3224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 28.3226 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.3227 + 170, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3228 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 185, 255, 255, 28.3229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 28.3231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 0, 0, 0, 0, 0, 0, 28.3232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3233 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3234 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3235 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3236 + 0, 1, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3238 + 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3239 + 0, 0, 0, 0, 0, 0, 210, 170, 56, 2, 0, 0, 0, 0, 0, 0, 28.3240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3241 + 0, 0, 0, 0, 0, 37, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.3243 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3244 + 255, 255, 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3245 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3246 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3247 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3248 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 194, 255, 255, 255, 255, 255, 28.3249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.3251 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 152, 30, 28.3252 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3253 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 255, 28.3254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.3255 + 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 28.3257 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3258 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3259 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3260 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3261 + 0, 1, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3263 + 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3264 + 0, 0, 0, 0, 0, 157, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3265 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3266 + 0, 0, 0, 0, 0, 0, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3267 + 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3269 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3270 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3271 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3272 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3273 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 255, 255, 255, 255, 255, 28.3274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 0, 0, 0, 28.3276 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 1, 0, 28.3277 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3278 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.3279 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 28.3280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 28.3282 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3283 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3284 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3285 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3286 + 0, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3288 + 255, 255, 255, 255, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3289 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3290 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3291 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.3292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3294 + 255, 255, 255, 255, 255, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3295 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3296 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3297 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3298 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.3299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 0, 0, 28.3301 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3302 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3303 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.3304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 45, 0, 28.3307 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3308 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3309 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3310 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3311 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3313 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 28.3314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3315 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3316 + 0, 0, 0, 0, 0, 0, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3319 + 255, 255, 255, 255, 255, 255, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3320 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3321 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3322 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3323 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 255, 255, 255, 255, 255, 28.3324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3326 + 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3328 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 255, 28.3329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 83, 28.3332 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3333 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3334 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3335 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3336 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3338 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3340 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3341 + 0, 0, 0, 0, 0, 0, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3344 + 255, 255, 255, 255, 255, 255, 255, 207, 29, 0, 0, 0, 0, 0, 0, 0, 28.3345 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3346 + 0, 0, 2, 1, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3347 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3348 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.3349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3351 + 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3353 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 194, 255, 28.3354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3357 + 161, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3358 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 57, 22, 2, 0, 0, 28.3359 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3360 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3361 + 0, 0, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.3364 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3365 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3366 + 0, 0, 0, 0, 0, 37, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3369 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 86, 0, 0, 0, 0, 0, 0, 28.3370 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3371 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3372 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3373 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.3374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3376 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3377 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3378 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, 255, 255, 28.3379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3382 + 255, 229, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3383 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3384 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3385 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3386 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.3389 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3390 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3391 + 0, 0, 0, 0, 15, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 27, 0, 0, 0, 0, 28.3395 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3396 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3397 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3398 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.3399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3401 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3402 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3403 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 255, 255, 255, 28.3404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3407 + 255, 255, 255, 163, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3408 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3409 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3410 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.3411 + 0, 0, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.3414 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3415 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3416 + 0, 0, 0, 16, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 101, 0, 0, 0, 28.3420 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3421 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3422 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3423 + 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.3424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3426 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3427 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3428 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 210, 255, 255, 255, 28.3429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3432 + 255, 255, 255, 255, 221, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3433 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3434 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3435 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 28.3436 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 28.3439 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3440 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3441 + 0, 0, 40, 189, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 86, 0, 28.3445 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3446 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3447 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3448 + 0, 0, 1, 28, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.3449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3451 + 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3452 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3453 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 210, 210, 255, 255, 255, 28.3454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 28.3457 + 255, 255, 255, 255, 255, 255, 255, 83, 0, 0, 0, 0, 0, 0, 0, 0, 28.3458 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3459 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3460 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 34, 0, 0, 0, 0, 28.3461 + 0, 0, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 28.3464 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3465 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3466 + 0, 2, 202, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3469 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 245, 28.3470 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3471 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3472 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3473 + 0, 4, 37, 4, 0, 0, 0, 0, 0, 0, 23, 255, 255, 255, 255, 255, 28.3474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3476 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3477 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3478 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 145, 210, 210, 210, 255, 255, 255, 28.3479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3482 + 255, 250, 253, 255, 255, 255, 255, 255, 221, 0, 0, 0, 0, 0, 0, 0, 28.3483 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3484 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3486 + 0, 0, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 28.3489 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3490 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3491 + 35, 196, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 240, 255, 255, 255, 255, 255, 28.3495 + 255, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3496 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3497 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3498 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 255, 255, 255, 28.3499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3501 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3502 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3503 + 0, 0, 0, 0, 0, 0, 0, 2, 151, 210, 210, 210, 210, 210, 255, 255, 28.3504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3507 + 255, 255, 250, 247, 255, 255, 255, 255, 255, 255, 196, 0, 0, 0, 0, 0, 28.3508 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3509 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3510 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3511 + 0, 0, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 28.3514 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3515 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 28.3516 + 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 28.3520 + 255, 255, 255, 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3523 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 142, 255, 255, 255, 255, 255, 28.3524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3526 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3527 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3528 + 0, 0, 0, 0, 0, 0, 0, 134, 210, 210, 210, 210, 210, 210, 210, 210, 28.3529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 0, 0, 0, 0, 28.3533 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3534 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3536 + 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 0, 28.3539 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3540 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 189, 28.3541 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3545 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3546 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3547 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3548 + 0, 0, 0, 0, 0, 0, 24, 84, 170, 230, 0, 0, 255, 255, 255, 255, 28.3549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3551 + 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3552 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3553 + 0, 0, 0, 0, 0, 0, 96, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 2, 28.3558 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3559 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3560 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 37, 111, 205, 255, 255, 28.3561 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.3564 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3565 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 177, 210, 28.3566 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.3567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3570 + 255, 255, 255, 255, 255, 255, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3571 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3572 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 21, 28.3573 + 84, 165, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3576 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3577 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3578 + 0, 0, 0, 0, 0, 61, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3579 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3583 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3584 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3585 + 0, 11, 39, 53, 72, 125, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3586 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.3589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3590 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, 210, 210, 28.3591 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.3592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3595 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3597 + 0, 0, 0, 0, 2, 23, 87, 170, 230, 255, 255, 255, 255, 255, 255, 255, 28.3598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.3599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3601 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3602 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3603 + 0, 0, 0, 0, 8, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3604 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3608 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3609 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 255, 255, 28.3610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3611 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.3614 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3615 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 210, 210, 210, 28.3616 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.3617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 0, 28.3621 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 48, 105, 28.3622 + 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3626 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3627 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3628 + 0, 0, 0, 0, 123, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3629 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3633 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 28, 28.3634 + 49, 72, 111, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3636 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.3637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3639 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3640 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 189, 210, 210, 210, 28.3641 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.3642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.3646 + 0, 0, 30, 74, 144, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3649 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3651 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3652 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3653 + 0, 0, 0, 76, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3654 + 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3658 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.3662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 169, 210, 210, 210, 210, 28.3666 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 28.3667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3674 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3676 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3677 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3678 + 0, 0, 44, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3679 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3683 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.3687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3689 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 210, 210, 210, 210, 210, 28.3691 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.3692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.3696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3699 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3701 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3702 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3703 + 0, 0, 125, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3704 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3708 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.3712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3714 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.3716 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.3717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.3721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3724 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3726 + 255, 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3727 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3728 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3729 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3733 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.3737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.3739 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.3741 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.3746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3749 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.3750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3751 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.3752 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 28.3753 + 0, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3754 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.3755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3758 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3762 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.3764 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 28.3765 + 0, 0, 0, 0, 0, 0, 0, 1, 0, 210, 210, 210, 210, 210, 210, 210, 28.3766 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3767 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.3771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3774 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.3775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3776 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 1, 1, 28.3777 + 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 28.3778 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3779 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.3780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3783 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3787 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 98, 20, 0, 98, 205, 28.3789 + 0, 0, 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, 1, 0, 0, 2, 28.3790 + 2, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.3791 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3792 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3793 + 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 28.3794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.3796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.3800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3801 + 255, 176, 39, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 9, 3, 28.3802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3803 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3804 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.3805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 28.3806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3808 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3812 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3813 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 26, 0, 0, 0, 0, 0, 15, 28.3814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3815 + 0, 0, 0, 0, 0, 0, 0, 86, 210, 210, 210, 210, 210, 210, 210, 210, 28.3816 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3817 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3818 + 255, 255, 255, 255, 255, 255, 238, 216, 255, 255, 255, 255, 255, 255, 255, 255, 28.3819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3820 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.3821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.3825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 111, 28.3826 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 28.3828 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3829 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.3830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 247, 251, 28.3831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3833 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3837 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3838 + 255, 255, 255, 255, 255, 215, 62, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.3839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3840 + 0, 0, 0, 0, 0, 0, 0, 189, 210, 210, 210, 210, 210, 210, 210, 210, 28.3841 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3842 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3845 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.3846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.3850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 128, 18, 0, 0, 28.3851 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 28.3852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3853 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3854 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.3855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.3858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3862 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3863 + 255, 230, 128, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3864 + 48, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3865 + 0, 0, 1, 14, 76, 169, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.3866 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3867 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3870 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.3871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.3875 + 255, 255, 255, 255, 255, 255, 255, 245, 141, 24, 1, 0, 0, 0, 0, 0, 28.3876 + 0, 0, 0, 0, 0, 0, 0, 0, 181, 47, 5, 0, 0, 0, 0, 0, 28.3877 + 0, 0, 1, 1, 1, 4, 22, 39, 54, 86, 140, 189, 210, 210, 210, 0, 28.3878 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3879 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3880 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.3883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3887 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 230, 137, 30, 28.3888 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3889 + 255, 215, 119, 76, 52, 45, 49, 59, 91, 146, 189, 210, 210, 210, 210, 210, 28.3890 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.3891 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3892 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.3893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3895 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3900 + 0, 0, 255, 238, 125, 18, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3901 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 28.3902 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3903 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3904 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3905 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.3908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 201, 30, 0, 0, 0, 0, 28.3913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 28.3914 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3915 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.3916 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3917 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.3918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3920 + 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3925 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.3926 + 19, 30, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.3927 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3928 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3929 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3930 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.3933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3937 + 255, 255, 255, 255, 255, 255, 255, 230, 105, 1, 0, 0, 0, 0, 0, 0, 28.3938 + 0, 0, 0, 0, 0, 0, 0, 23, 189, 23, 0, 0, 0, 0, 0, 0, 28.3939 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3940 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.3941 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3942 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.3943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3945 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 28.3950 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3951 + 91, 3, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.3952 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3953 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3954 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3955 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.3956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.3958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3962 + 255, 255, 255, 255, 255, 255, 255, 51, 0, 0, 0, 0, 0, 0, 0, 0, 28.3963 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 28.3964 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3965 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 28.3966 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3967 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3968 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3970 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 2, 28.3975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3976 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.3977 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3978 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3979 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3980 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.3981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.3983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3987 + 255, 255, 255, 255, 255, 251, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3988 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.3989 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3990 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.3991 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3992 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.3993 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3995 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.3999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 4, 0, 28.4000 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4001 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.4002 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4003 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4004 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4005 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.4006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.4008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4012 + 255, 255, 255, 255, 255, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4013 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4014 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4015 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4016 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4017 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4018 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4020 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 5, 0, 0, 28.4025 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4026 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4027 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4028 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.4029 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4030 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.4031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.4033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4037 + 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4038 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4039 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4040 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4041 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4042 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4043 + 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4045 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 6, 0, 0, 0, 28.4050 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4051 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.4052 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4053 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 28.4054 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4055 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.4058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4062 + 255, 255, 255, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4063 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4064 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4065 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4066 + 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4067 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4068 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.4069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4070 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 16, 0, 0, 0, 0, 28.4075 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4076 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.4077 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4078 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.4079 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4080 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4081 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.4083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4087 + 255, 255, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4088 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4089 + 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4090 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4091 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4092 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4093 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.4094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4095 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 0, 0, 0, 0, 0, 28.4100 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 28.4102 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4103 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.4104 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4105 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4106 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4107 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.4108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4112 + 255, 184, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4113 + 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4114 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4115 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4116 + 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4117 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4118 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.4119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4120 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4124 + 255, 255, 255, 255, 255, 255, 255, 255, 238, 64, 0, 0, 0, 0, 0, 0, 28.4125 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4126 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 28.4127 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4128 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.4129 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4130 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4131 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.4132 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.4133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4137 + 196, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4138 + 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4139 + 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4140 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4141 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4142 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4143 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4144 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.4145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4149 + 255, 255, 255, 255, 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 28.4150 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 28.4151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 28.4152 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4153 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4154 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4155 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4156 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 205, 133, 85, 28.4157 + 61, 63, 92, 144, 215, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.4158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 28.4162 + 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4163 + 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4164 + 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4165 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4166 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 28.4167 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4168 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4169 + 210, 177, 119, 70, 27, 4, 0, 0, 0, 0, 1, 6, 5, 9, 0, 142, 28.4170 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4174 + 255, 255, 255, 255, 255, 255, 255, 105, 0, 0, 0, 0, 0, 0, 0, 0, 28.4175 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 28.4176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.4177 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4178 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4179 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4180 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4181 + 210, 210, 208, 192, 148, 96, 52, 23, 3, 1, 0, 0, 0, 0, 0, 0, 28.4182 + 0, 0, 0, 0, 0, 0, 0, 1, 34, 170, 255, 255, 255, 255, 255, 255, 28.4183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 189, 19, 28.4187 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4188 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4189 + 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4190 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4191 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 28.4192 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4193 + 210, 210, 210, 210, 210, 210, 210, 169, 110, 58, 21, 2, 1, 0, 0, 0, 28.4194 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4195 + 0, 18, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4199 + 255, 255, 210, 210, 210, 210, 105, 1, 0, 0, 0, 0, 0, 0, 0, 0, 28.4200 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.4201 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.4202 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4203 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4204 + 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4205 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 160, 100, 55, 24, 3, 1, 28.4206 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 185, 255, 255, 255, 255, 28.4208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4211 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 189, 19, 0, 28.4212 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4213 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4214 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4215 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4216 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 28.4217 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 189, 28.4218 + 108, 26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4219 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4220 + 0, 0, 0, 36, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 28.4224 + 210, 210, 210, 210, 210, 112, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4225 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4226 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 28.4227 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4228 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4229 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 202, 175, 142, 28.4230 + 119, 101, 76, 51, 32, 15, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 255, 255, 255, 28.4233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4236 + 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 30, 0, 0, 28.4237 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4238 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4239 + 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4240 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4241 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.4242 + 210, 184, 110, 38, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4243 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4244 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4245 + 0, 0, 0, 0, 3, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4248 + 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4249 + 210, 210, 210, 210, 160, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4250 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4251 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.4252 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4253 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4254 + 210, 210, 210, 210, 189, 136, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 28.4255 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4256 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4257 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 157, 210, 28.4258 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 210, 28.4261 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 61, 0, 0, 0, 28.4262 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4263 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4264 + 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 28.4265 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4266 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 41, 2, 0, 0, 28.4267 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4268 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4269 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4270 + 0, 0, 0, 0, 0, 0, 30, 177, 210, 210, 210, 210, 210, 210, 255, 255, 28.4271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.4272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 28.4273 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4274 + 210, 210, 210, 177, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4275 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4276 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.4277 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4278 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4279 + 210, 210, 169, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4280 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4281 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4282 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 28.4283 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4284 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 28.4285 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4286 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 102, 0, 0, 0, 0, 28.4287 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4288 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4289 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4290 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4291 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 110, 5, 0, 0, 0, 0, 28.4292 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4293 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4294 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4295 + 0, 0, 0, 0, 0, 0, 0, 2, 94, 210, 210, 210, 210, 210, 210, 210, 28.4296 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4297 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4298 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4299 + 210, 210, 202, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4300 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4301 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4302 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4303 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4304 + 210, 210, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4305 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4306 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4307 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4308 + 9, 152, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4309 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4310 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4311 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 166, 2, 0, 0, 0, 0, 28.4312 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4313 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 28.4315 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4316 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 50, 0, 0, 0, 0, 0, 28.4317 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4318 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4319 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4320 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 170, 210, 210, 210, 210, 210, 28.4321 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4322 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4323 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4324 + 210, 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4325 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4326 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4327 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4328 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4329 + 210, 210, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4330 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4331 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4332 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4333 + 0, 0, 55, 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4334 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4335 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4336 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 75, 0, 0, 0, 0, 0, 28.4337 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4338 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 28.4340 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4341 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 48, 0, 0, 0, 0, 0, 28.4342 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4343 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4344 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4345 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 84, 210, 210, 210, 210, 28.4346 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4347 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4348 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4349 + 210, 210, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4350 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4351 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4352 + 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4353 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4354 + 210, 210, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4355 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4356 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4357 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4358 + 0, 0, 0, 6, 149, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4359 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4360 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4361 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 7, 0, 0, 0, 0, 0, 28.4362 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4363 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4364 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 28.4365 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4366 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 100, 0, 0, 0, 0, 0, 28.4367 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4368 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4369 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4370 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 177, 210, 210, 28.4371 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4372 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4373 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4374 + 210, 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4375 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4376 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4377 + 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4378 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4379 + 210, 210, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4380 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4381 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4382 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4383 + 0, 0, 0, 0, 0, 49, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4384 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4385 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4386 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 119, 0, 0, 0, 0, 0, 0, 28.4387 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4388 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4389 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 28.4390 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4391 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 0, 0, 0, 0, 0, 28.4392 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4393 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4394 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4395 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 189, 28.4396 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4397 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4398 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4399 + 210, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4400 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4401 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4402 + 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4403 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4404 + 210, 210, 210, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4405 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4406 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4407 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4408 + 0, 0, 0, 0, 0, 0, 1, 64, 189, 210, 210, 210, 210, 210, 210, 210, 28.4409 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4410 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4411 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 54, 0, 0, 0, 0, 0, 0, 28.4412 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4414 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.4415 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4416 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 24, 0, 0, 0, 0, 28.4417 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4418 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4419 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4420 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 28.4421 + 80, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4422 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4423 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4424 + 210, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4425 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4426 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4427 + 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4428 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4429 + 210, 210, 210, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4430 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4431 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 10, 2, 0, 0, 0, 0, 28.4432 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4433 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 81, 189, 210, 210, 210, 210, 210, 28.4434 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4435 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4436 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.4437 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4438 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4439 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.4440 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4441 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 169, 2, 0, 0, 0, 28.4442 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4443 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4444 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4445 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4446 + 0, 2, 71, 182, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4447 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4448 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.4449 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4450 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4451 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4452 + 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 28.4453 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4454 + 210, 210, 210, 210, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4455 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4456 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4457 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4458 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 78, 194, 210, 210, 210, 28.4459 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4460 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4461 + 210, 210, 210, 210, 0, 0, 0, 0, 210, 108, 0, 0, 0, 0, 0, 0, 28.4462 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4464 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 28.4465 + 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4466 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 70, 0, 0, 0, 28.4467 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4468 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4469 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4470 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4471 + 0, 0, 0, 5, 105, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4472 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4473 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 28.4474 + 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4476 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4477 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4478 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4479 + 210, 210, 210, 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4480 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4481 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4482 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4483 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 133, 210, 210, 28.4484 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4485 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.4486 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 142, 34, 0, 0, 0, 0, 0, 28.4487 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4489 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4490 + 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4491 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 7, 0, 0, 28.4492 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4493 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4494 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4495 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4496 + 0, 0, 0, 0, 0, 12, 140, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4497 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4498 + 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4499 + 210, 175, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4501 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4502 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 28.4503 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4504 + 210, 210, 210, 210, 210, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4505 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4506 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4507 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4508 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 131, 28.4509 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4510 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 28.4511 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 119, 18, 0, 0, 0, 0, 28.4512 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4513 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4514 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4515 + 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4516 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 160, 2, 0, 28.4517 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4518 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4519 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 28.4520 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4521 + 0, 0, 0, 0, 0, 0, 0, 13, 149, 210, 210, 210, 210, 210, 210, 210, 28.4522 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.4523 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4524 + 210, 210, 180, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4527 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 28.4528 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4529 + 210, 210, 210, 210, 210, 202, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4530 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4531 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4532 + 0, 1, 1, 10, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4533 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4534 + 21, 177, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4535 + 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4536 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 164, 35, 0, 0, 0, 28.4537 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4539 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4540 + 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4541 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 135, 1, 28.4542 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4543 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4544 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 9, 39, 2, 0, 0, 28.4545 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4546 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 210, 210, 210, 210, 210, 210, 28.4547 + 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.4548 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4549 + 210, 210, 210, 205, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4550 + 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4551 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4552 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.4553 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4554 + 210, 210, 210, 210, 210, 210, 192, 3, 0, 0, 0, 0, 0, 0, 0, 0, 28.4555 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4556 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4557 + 0, 1, 1, 1, 63, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4558 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4559 + 0, 6, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 28.4560 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4561 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 27, 0, 0, 28.4562 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 28.4563 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4564 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4565 + 0, 0, 0, 0, 0, 49, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4566 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 208, 35, 28.4567 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4568 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4569 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 5, 6, 0, 0, 0, 28.4570 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4571 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 0, 28.4572 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4573 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4574 + 210, 210, 210, 210, 210, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4575 + 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4576 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4577 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.4578 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4579 + 210, 210, 210, 210, 210, 210, 210, 105, 0, 0, 0, 0, 0, 0, 0, 0, 28.4580 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4581 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4582 + 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4583 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4584 + 0, 0, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4585 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4586 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 132, 1, 0, 28.4587 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 139, 0, 0, 0, 0, 0, 28.4588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4590 + 0, 0, 0, 0, 0, 0, 0, 11, 255, 210, 210, 210, 210, 210, 210, 210, 28.4591 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 28.4592 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4593 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4594 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 28.4595 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.4597 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4598 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4599 + 210, 210, 210, 210, 210, 189, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4600 + 7, 109, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4601 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4602 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4603 + 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4604 + 210, 210, 210, 210, 210, 210, 210, 210, 61, 0, 0, 0, 0, 0, 0, 0, 28.4605 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4606 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4607 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4608 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4609 + 2, 117, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4610 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4611 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 105, 1, 28.4612 + 0, 0, 0, 0, 0, 0, 0, 3, 109, 200, 0, 0, 0, 0, 0, 0, 28.4613 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4614 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4615 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 28.4616 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4617 + 160, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4618 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4619 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4620 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4621 + 0, 0, 0, 0, 0, 0, 0, 0, 64, 189, 210, 210, 210, 210, 210, 210, 28.4622 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4623 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4624 + 210, 210, 210, 210, 210, 210, 189, 35, 0, 0, 0, 0, 0, 0, 2, 90, 28.4625 + 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4627 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4628 + 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4629 + 210, 210, 210, 210, 210, 210, 210, 210, 202, 26, 0, 0, 0, 0, 0, 0, 28.4630 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4631 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4632 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4633 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 28.4634 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4635 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4636 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 28.4637 + 37, 0, 0, 0, 1, 15, 102, 202, 210, 0, 0, 0, 0, 0, 0, 0, 28.4638 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4639 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4640 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 255, 255, 210, 210, 210, 28.4641 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4642 + 210, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4643 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4644 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4646 + 0, 0, 0, 0, 0, 6, 108, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4647 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4648 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4649 + 210, 210, 210, 210, 210, 210, 210, 210, 169, 103, 66, 63, 96, 160, 202, 0, 28.4650 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4652 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4653 + 0, 0, 0, 0, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4654 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 161, 1, 0, 0, 0, 0, 0, 28.4655 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4656 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4657 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4658 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 142, 210, 210, 28.4659 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4660 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4661 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4662 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4663 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 28.4666 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4667 + 210, 196, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4668 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4669 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4670 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4671 + 0, 0, 0, 45, 169, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4672 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4673 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4674 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.4675 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4676 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4677 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4678 + 0, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 210, 210, 28.4679 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 55, 0, 0, 0, 0, 0, 28.4680 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4681 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4682 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 108, 210, 210, 210, 210, 210, 28.4684 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4685 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4686 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4687 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4688 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4689 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 28.4691 + 153, 255, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.4692 + 210, 210, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4693 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4694 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4695 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4696 + 24, 142, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4697 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4698 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4699 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.4700 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4702 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4703 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 28.4704 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4705 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4706 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4708 + 0, 0, 0, 0, 0, 0, 0, 45, 169, 210, 210, 210, 210, 210, 210, 210, 28.4709 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4710 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4711 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4712 + 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4713 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4714 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4716 + 0, 0, 9, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4717 + 210, 210, 210, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4718 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4719 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4720 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 210, 28.4721 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4722 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4723 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4724 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.4725 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4726 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4727 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4728 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 255, 255, 210, 210, 28.4729 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 128, 0, 0, 0, 0, 28.4730 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4731 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4732 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4733 + 0, 0, 0, 0, 0, 136, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4734 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4735 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4736 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.4737 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4738 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4739 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4741 + 0, 0, 0, 0, 187, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4742 + 210, 210, 210, 210, 103, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4743 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4744 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4745 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 210, 210, 210, 28.4746 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4747 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4748 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4749 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4750 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4752 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 28.4754 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 169, 110, 45, 28.4755 + 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4756 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4758 + 0, 0, 1, 75, 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4759 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4760 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4761 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.4762 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4763 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4764 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4766 + 0, 0, 0, 0, 0, 0, 0, 154, 255, 210, 210, 210, 210, 210, 210, 210, 28.4767 + 210, 210, 210, 210, 210, 210, 210, 210, 189, 136, 54, 7, 0, 0, 0, 0, 28.4768 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4769 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4770 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 189, 210, 210, 210, 210, 28.4771 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4772 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4773 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4774 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4776 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4777 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4779 + 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4780 + 210, 210, 210, 198, 121, 28, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4781 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4783 + 1, 63, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4784 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4785 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4786 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 28.4787 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4791 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 255, 255, 210, 210, 210, 28.4792 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 44, 28.4793 + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4795 + 0, 0, 0, 0, 0, 0, 0, 3, 67, 182, 210, 210, 210, 210, 210, 210, 28.4796 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4797 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4798 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4799 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4800 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4801 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4804 + 0, 0, 0, 0, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4805 + 210, 210, 210, 210, 210, 210, 210, 196, 134, 50, 7, 0, 0, 0, 0, 0, 28.4806 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 72, 28.4808 + 182, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4809 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4810 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4811 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4816 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 255, 28.4817 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4818 + 210, 210, 189, 105, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4819 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4820 + 0, 0, 0, 0, 0, 2, 63, 182, 210, 210, 210, 210, 210, 210, 210, 210, 28.4821 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4822 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4823 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.4824 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4826 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4828 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4829 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 28.4830 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 189, 136, 69, 21, 28.4831 + 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 68, 177, 210, 28.4833 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4834 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4835 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4836 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4837 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4838 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4841 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4842 + 0, 0, 11, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4843 + 210, 210, 210, 210, 210, 210, 210, 210, 189, 117, 44, 5, 1, 0, 0, 0, 28.4844 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4845 + 0, 0, 0, 2, 86, 196, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4846 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4847 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4848 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.4849 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4850 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4851 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4853 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4854 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.4855 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4856 + 210, 210, 210, 210, 196, 161, 119, 77, 41, 16, 4, 0, 0, 0, 0, 0, 28.4857 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 94, 202, 210, 210, 210, 28.4858 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4859 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4860 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.4861 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4862 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4864 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4865 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4866 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4867 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4868 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4869 + 210, 210, 210, 202, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4870 + 0, 18, 124, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4871 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4872 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4873 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4874 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4875 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4876 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4877 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4878 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4879 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4880 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4881 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 28.4882 + 0, 0, 0, 0, 0, 0, 0, 3, 48, 160, 210, 210, 210, 210, 210, 210, 28.4883 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4884 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4885 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 28.4886 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4887 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4888 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4889 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4890 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4891 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4892 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.4893 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4894 + 210, 210, 210, 210, 210, 210, 210, 210, 196, 134, 55, 0, 0, 0, 40, 117, 28.4895 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4896 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4897 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 9, 28.4898 + 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4899 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4900 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4901 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4902 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4903 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4904 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4905 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4906 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4907 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4908 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4909 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4910 + 210, 210, 210, 210, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4911 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4912 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4914 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4916 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4917 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.4918 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4919 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.4920 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4921 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4922 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 1, 0, 0, 0, 0, 28.4923 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4924 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4925 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4926 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4927 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4928 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4929 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4930 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.4931 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4932 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.4933 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4934 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4935 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4936 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4937 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4938 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4939 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4940 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4941 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4942 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4943 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4944 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4945 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4946 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4947 + 210, 210, 210, 210, 210, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4948 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4949 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4950 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4951 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4953 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4954 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4955 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.4956 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4957 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 210, 210, 28.4958 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4959 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 0, 0, 0, 0, 0, 28.4960 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4961 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4962 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4963 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4964 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4965 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4966 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4967 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4968 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.4969 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4970 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4971 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4972 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4973 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4974 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4976 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4977 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4978 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4979 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4980 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4981 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4982 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.4983 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4984 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4985 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4986 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4987 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4988 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4989 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4990 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4991 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4992 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4993 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.4994 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4995 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.4996 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.4997 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4998 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.4999 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5000 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5001 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5002 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5003 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5004 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5005 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5006 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.5007 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.5008 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.5009 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5010 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5011 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5012 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5013 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5015 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5016 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5017 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5018 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5019 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5020 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 84, 0, 0, 0, 0, 0, 28.5021 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5022 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5023 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5024 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5025 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5026 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5027 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5028 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5029 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5030 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5031 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5032 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5033 + 0, 25, 175, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 8, 0, 28.5034 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5035 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5036 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5037 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5038 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5039 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5040 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5041 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5042 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5043 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5044 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5045 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.5046 + 255, 255, 255, 255, 255, 255, 255, 255, 1, 1, 1, 0, 0, 0, 0, 0, 28.5047 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5048 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5049 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5050 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5051 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5053 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5054 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5055 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5056 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5057 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 28.5058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5059 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5060 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5061 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5062 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5063 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5065 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5066 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5067 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5068 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5069 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5070 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5072 + 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5073 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5074 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5075 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5076 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5077 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5078 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5079 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5080 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5081 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 28.5082 + 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 28.5085 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5086 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5087 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5088 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5090 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5091 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5092 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5093 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5094 + 0, 1, 0, 0, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.5095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5097 + 255, 255, 255, 255, 255, 255, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0, 28.5098 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5099 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5100 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5103 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5104 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5105 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5106 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 230, 255, 255, 255, 255, 28.5107 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5110 + 255, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5111 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5112 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5113 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5116 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5117 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 238, 28.5119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.5120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 4, 0, 0, 0, 28.5123 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5124 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5125 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5126 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5127 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5128 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5129 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5130 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5131 + 0, 0, 0, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5132 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5135 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5136 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5137 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5138 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5140 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5141 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5142 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5143 + 0, 0, 0, 0, 0, 0, 0, 28, 116, 215, 255, 255, 255, 255, 255, 255, 28.5144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.5145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5148 + 8, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5149 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5150 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5153 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5154 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5155 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 28.5156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5157 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.5158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5161 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5162 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5163 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5166 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5167 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 28.5168 + 48, 105, 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.5170 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5173 + 255, 255, 255, 255, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5174 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5175 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5177 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5178 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5179 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 255, 205, 72, 0, 0, 0, 28.5180 + 0, 0, 27, 66, 122, 194, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5182 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.5183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.5186 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5187 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5188 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5191 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 28.5192 + 5, 0, 0, 0, 0, 0, 108, 120, 171, 233, 253, 255, 255, 255, 255, 255, 28.5193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5195 + 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5198 + 255, 255, 255, 255, 255, 255, 255, 10, 0, 0, 0, 0, 0, 0, 0, 0, 28.5199 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5200 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5201 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5202 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5203 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5204 + 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.5205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.5208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5211 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5212 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5213 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5214 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5216 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 0, 28.5217 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5220 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 3, 0, 0, 0, 0, 28.5224 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5225 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5226 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5227 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5228 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5229 + 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.5230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.5233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5236 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5237 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5238 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5241 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 255, 28.5242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5245 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 3, 0, 0, 28.5249 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5250 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5251 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5252 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5253 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.5254 + 210, 210, 210, 210, 0, 0, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.5255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.5258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5261 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5262 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5263 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5264 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5265 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5266 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.5267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5270 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.5271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5274 + 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5275 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5276 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5277 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5278 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.5279 + 210, 210, 0, 0, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.5280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5283 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 28.5287 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5288 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5289 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5290 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5291 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.5292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.5296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5299 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5300 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5301 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5302 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5303 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.5304 + 210, 0, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.5305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5308 + 255, 255, 155, 0, 0, 22, 88, 194, 245, 255, 255, 255, 255, 255, 255, 255, 28.5309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 28.5312 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5313 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5315 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5316 + 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 28.5317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 0, 0, 0, 0, 0, 0, 28.5321 + 13, 110, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5324 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5325 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5326 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5328 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 28.5329 + 0, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5333 + 255, 42, 0, 0, 0, 0, 0, 0, 0, 0, 11, 92, 205, 255, 255, 255, 28.5334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5337 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5338 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5340 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.5341 + 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 255, 255, 28.5342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.5346 + 0, 0, 0, 0, 0, 62, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.5350 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5351 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5353 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.5354 + 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5358 + 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5359 + 156, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5362 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5363 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5364 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5365 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.5366 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.5367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5370 + 255, 255, 255, 255, 255, 255, 255, 194, 0, 0, 0, 0, 0, 0, 0, 0, 28.5371 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 28.5372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5375 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5376 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5377 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5378 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.5379 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 0, 28.5383 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5384 + 0, 27, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5387 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5388 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5389 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5390 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.5391 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.5392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5395 + 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5396 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 49, 0, 0, 0, 28.5397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 3, 0, 0, 0, 28.5400 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5401 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5402 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5403 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.5404 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 0, 0, 28.5408 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5409 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 235, 255, 255, 255, 255, 28.5410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5412 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5414 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5415 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.5416 + 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.5417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5420 + 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5421 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5422 + 0, 0, 0, 0, 0, 0, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 28.5423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 32, 0, 0, 0, 28.5425 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5426 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5427 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5428 + 0, 0, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 28.5429 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 110, 0, 0, 0, 0, 28.5433 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5434 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5435 + 0, 149, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5437 + 255, 255, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5438 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5439 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5440 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 0, 28.5441 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.5442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5445 + 255, 245, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 28.5446 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5447 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 194, 245, 255, 28.5448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 0, 0, 0, 0, 0, 28.5450 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5451 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5452 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5453 + 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.5454 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 0, 0, 0, 0, 0, 0, 28.5458 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5459 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5460 + 0, 0, 0, 0, 0, 0, 0, 81, 165, 230, 255, 255, 255, 255, 255, 255, 28.5461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5462 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5464 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5465 + 0, 0, 0, 0, 0, 0, 0, 189, 146, 114, 114, 146, 189, 0, 0, 210, 28.5466 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.5467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5470 + 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5471 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5472 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5473 + 0, 0, 92, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5474 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 0, 28.5475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5476 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5477 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 189, 116, 28.5478 + 32, 5, 4, 23, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.5479 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5482 + 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 0, 0, 0, 0, 0, 28.5483 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5484 + 0, 0, 0, 6, 11, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90, 205, 255, 28.5486 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.5487 + 255, 255, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5489 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5490 + 0, 0, 0, 0, 0, 0, 146, 32, 0, 0, 0, 0, 0, 105, 210, 210, 28.5491 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.5492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 28.5495 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5496 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 7, 28.5497 + 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5498 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 28.5499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 19, 0, 0, 0, 28.5500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5501 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5502 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 114, 3, 28.5503 + 0, 0, 0, 0, 0, 16, 170, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.5504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5507 + 255, 255, 255, 255, 255, 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5508 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5509 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 28.5510 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 28.5511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5512 + 255, 255, 255, 255, 238, 147, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5513 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5514 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5515 + 0, 0, 0, 0, 210, 210, 114, 1, 0, 0, 0, 0, 0, 0, 67, 189, 28.5516 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.5517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 39, 0, 0, 28.5520 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5523 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.5524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 0, 28.5525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5527 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 146, 2, 28.5528 + 0, 0, 0, 0, 0, 0, 5, 132, 210, 210, 210, 210, 210, 210, 210, 210, 28.5529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5532 + 255, 255, 255, 207, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5533 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5534 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5536 + 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5537 + 255, 255, 255, 255, 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 28.5538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5539 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5540 + 0, 0, 210, 210, 210, 210, 189, 21, 0, 0, 0, 0, 0, 0, 0, 88, 28.5541 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.5542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 68, 0, 0, 0, 0, 28.5545 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5546 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5547 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5548 + 0, 0, 0, 0, 0, 0, 0, 0, 133, 255, 255, 255, 255, 255, 255, 255, 28.5549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5550 + 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5551 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5552 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 208, 0, 28.5553 + 0, 0, 0, 0, 0, 0, 0, 26, 210, 210, 210, 210, 210, 210, 210, 255, 28.5554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5557 + 255, 207, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5558 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5559 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5560 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5561 + 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5562 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 76, 0, 0, 0, 0, 0, 0, 28.5563 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5564 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5565 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 28.5566 + 169, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5569 + 255, 255, 255, 255, 255, 255, 255, 255, 230, 79, 0, 0, 0, 0, 0, 0, 28.5570 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5571 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5572 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5573 + 0, 0, 0, 0, 0, 0, 0, 0, 38, 255, 255, 255, 255, 255, 255, 255, 28.5574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5575 + 255, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5576 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5577 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 0, 0, 0, 28.5578 + 0, 0, 0, 0, 0, 0, 0, 0, 99, 210, 210, 210, 210, 210, 210, 255, 28.5579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 28.5582 + 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5583 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5584 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5585 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5586 + 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 28.5588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.5590 + 210, 210, 210, 202, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5591 + 34, 202, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5594 + 255, 255, 255, 255, 255, 255, 245, 124, 0, 0, 0, 0, 0, 0, 0, 0, 28.5595 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5597 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5598 + 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 255, 28.5599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5600 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5601 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5602 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 202, 115, 0, 0, 0, 0, 28.5603 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 166, 210, 210, 210, 210, 255, 255, 28.5604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 0, 28.5607 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5608 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5609 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5610 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5611 + 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 0, 28.5613 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5614 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.5615 + 210, 210, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5616 + 0, 110, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5619 + 255, 255, 255, 255, 255, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5620 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5621 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5622 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5623 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 245, 255, 255, 255, 255, 255, 255, 28.5624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5625 + 255, 255, 255, 255, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5627 + 0, 0, 0, 0, 210, 210, 210, 210, 210, 152, 0, 0, 0, 0, 0, 0, 28.5628 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 210, 210, 210, 210, 255, 255, 28.5629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 0, 0, 0, 28.5632 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5633 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5634 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5635 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5636 + 1, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 28.5638 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5639 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.5640 + 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5641 + 0, 3, 169, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5644 + 255, 255, 255, 170, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5646 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5647 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5648 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 122, 255, 255, 255, 255, 255, 255, 28.5649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5650 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5652 + 0, 0, 0, 210, 210, 210, 210, 210, 107, 0, 0, 0, 0, 0, 0, 0, 28.5653 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 210, 210, 255, 255, 255, 28.5654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 23, 0, 0, 0, 0, 28.5657 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5658 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5659 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5660 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5661 + 0, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.5663 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 189, 146, 114, 28.5665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5666 + 0, 0, 30, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5669 + 255, 215, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5670 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5671 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5672 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5673 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 255, 255, 255, 255, 255, 255, 28.5674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5675 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5676 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5677 + 0, 0, 210, 210, 160, 59, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5678 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 189, 210, 255, 255, 255, 28.5679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 0, 0, 0, 0, 0, 0, 28.5682 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5684 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5685 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5686 + 0, 24, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5688 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5689 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 131, 18, 0, 0, 0, 28.5690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5691 + 0, 0, 0, 105, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5694 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5695 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5696 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5697 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5698 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 255, 255, 255, 255, 255, 255, 28.5699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5700 + 255, 255, 255, 255, 255, 255, 255, 255, 235, 0, 0, 0, 0, 0, 0, 0, 28.5701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5702 + 210, 210, 140, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5703 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 189, 255, 255, 255, 28.5704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5706 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5708 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5709 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5710 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5711 + 0, 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5713 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5714 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 170, 26, 0, 0, 0, 0, 0, 28.5715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5716 + 0, 0, 0, 1, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5718 + 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.5719 + 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5720 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5721 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5722 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5723 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 255, 255, 255, 255, 255, 255, 28.5724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 28.5726 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.5727 + 170, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5728 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 185, 255, 255, 28.5729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 28.5731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 0, 0, 0, 0, 0, 0, 28.5732 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5733 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5734 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5735 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5736 + 0, 1, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5738 + 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5739 + 0, 0, 0, 0, 0, 0, 210, 170, 56, 2, 0, 0, 0, 0, 0, 0, 28.5740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5741 + 0, 0, 0, 0, 0, 37, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5743 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5744 + 255, 255, 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5745 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5746 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5747 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5748 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 194, 255, 255, 255, 255, 255, 28.5749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 152, 30, 28.5752 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 121, 255, 28.5754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.5755 + 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 28.5757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5758 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5759 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5760 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5761 + 0, 1, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5763 + 255, 255, 255, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5764 + 0, 0, 0, 0, 0, 157, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5766 + 0, 0, 0, 0, 0, 0, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5767 + 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5769 + 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5770 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5771 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5772 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5773 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 255, 255, 255, 255, 255, 28.5774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 0, 0, 0, 28.5776 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 1, 0, 28.5777 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.5779 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 28.5780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 0, 0, 28.5782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5783 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5784 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5785 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5786 + 0, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5788 + 255, 255, 255, 255, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5789 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5791 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 28.5792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5794 + 255, 255, 255, 255, 255, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5795 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5796 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5797 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5798 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.5799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 0, 0, 28.5801 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.5804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 45, 0, 28.5807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5808 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5809 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5810 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5811 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5813 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 28.5814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5816 + 0, 0, 0, 0, 0, 0, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5819 + 255, 255, 255, 255, 255, 255, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5821 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5822 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5823 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 255, 255, 255, 255, 255, 28.5824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.5826 + 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5828 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 255, 28.5829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 83, 28.5832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5833 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5834 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5835 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5836 + 0, 0, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5838 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.5839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5841 + 0, 0, 0, 0, 0, 0, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5844 + 255, 255, 255, 255, 255, 255, 255, 207, 29, 0, 0, 0, 0, 0, 0, 0, 28.5845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5846 + 0, 0, 2, 1, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5847 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5848 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 53, 255, 255, 255, 255, 255, 28.5849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5851 + 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5853 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 194, 255, 28.5854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5857 + 161, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5858 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 57, 22, 2, 0, 0, 28.5859 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5860 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5861 + 0, 0, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 28.5864 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5865 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5866 + 0, 0, 0, 0, 0, 37, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5869 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 86, 0, 0, 0, 0, 0, 0, 28.5870 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5871 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5872 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5873 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.5874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5876 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5877 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5878 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, 255, 255, 28.5879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5882 + 255, 229, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5883 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5884 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5885 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5886 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5889 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5890 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5891 + 0, 0, 0, 0, 15, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 27, 0, 0, 0, 0, 28.5895 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5896 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5897 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5898 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.5899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5901 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5902 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5903 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 255, 255, 255, 28.5904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5907 + 255, 255, 255, 163, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5908 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5909 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5910 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.5911 + 0, 0, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.5914 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5916 + 0, 0, 0, 16, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 101, 0, 0, 0, 28.5920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5921 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5922 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5923 + 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 55, 255, 255, 255, 255, 255, 28.5924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5926 + 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5927 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5928 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 210, 255, 255, 255, 28.5929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5932 + 255, 255, 255, 255, 221, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5933 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5934 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5935 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 28.5936 + 0, 0, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 28.5939 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5940 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5941 + 0, 0, 40, 189, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 86, 0, 28.5945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5946 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5947 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5948 + 0, 0, 1, 28, 0, 0, 0, 0, 0, 0, 52, 255, 255, 255, 255, 255, 28.5949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5951 + 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5953 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 210, 210, 255, 255, 255, 28.5954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 28.5957 + 255, 255, 255, 255, 255, 255, 255, 83, 0, 0, 0, 0, 0, 0, 0, 0, 28.5958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5959 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5960 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 34, 0, 0, 0, 0, 28.5961 + 0, 0, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 28.5964 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5965 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5966 + 0, 2, 202, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5969 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 245, 28.5970 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5971 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5972 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5973 + 0, 4, 37, 4, 0, 0, 0, 0, 0, 0, 23, 255, 255, 255, 255, 255, 28.5974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5976 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5977 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5978 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 145, 210, 210, 210, 255, 255, 255, 28.5979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5982 + 255, 250, 253, 255, 255, 255, 255, 255, 221, 0, 0, 0, 0, 0, 0, 0, 28.5983 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5984 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5985 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5986 + 0, 0, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 28.5989 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5990 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5991 + 35, 196, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.5994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 240, 255, 255, 255, 255, 255, 28.5995 + 255, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5996 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5997 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.5998 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 255, 255, 255, 255, 255, 28.5999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6001 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6002 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6003 + 0, 0, 0, 0, 0, 0, 0, 2, 151, 210, 210, 210, 210, 210, 255, 255, 28.6004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6007 + 255, 255, 250, 247, 255, 255, 255, 255, 255, 255, 196, 0, 0, 0, 0, 0, 28.6008 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6009 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6010 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6011 + 0, 0, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 28.6014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6015 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 28.6016 + 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 28.6020 + 255, 255, 255, 183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6021 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6022 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6023 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 142, 255, 255, 255, 255, 255, 28.6024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6026 + 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6027 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6028 + 0, 0, 0, 0, 0, 0, 0, 134, 210, 210, 210, 210, 210, 210, 210, 210, 28.6029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 0, 0, 0, 0, 28.6033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6034 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6035 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6036 + 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 0, 28.6039 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6040 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 189, 28.6041 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.6042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6045 + 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6047 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6048 + 0, 0, 0, 0, 0, 0, 24, 84, 170, 230, 0, 0, 255, 255, 255, 255, 28.6049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6051 + 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6053 + 0, 0, 0, 0, 0, 0, 96, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 0, 2, 28.6058 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6059 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6060 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 37, 111, 205, 255, 255, 28.6061 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.6064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6065 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 177, 210, 28.6066 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.6067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6070 + 255, 255, 255, 255, 255, 255, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6072 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 21, 28.6073 + 84, 165, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6076 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6077 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6078 + 0, 0, 0, 0, 0, 61, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6079 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.6083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6084 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6085 + 0, 11, 39, 53, 72, 125, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6086 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.6089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6090 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, 210, 210, 28.6091 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.6092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6095 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6097 + 0, 0, 0, 0, 2, 23, 87, 170, 230, 255, 255, 255, 255, 255, 255, 255, 28.6098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.6099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6101 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6103 + 0, 0, 0, 0, 8, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6104 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6108 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6109 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 12, 50, 111, 177, 230, 255, 255, 28.6110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6111 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 28.6114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 210, 210, 210, 28.6116 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.6117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 0, 0, 0, 0, 0, 0, 28.6121 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 48, 105, 28.6122 + 170, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.6124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6126 + 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6127 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6128 + 0, 0, 0, 0, 123, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6129 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6133 + 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 28, 28.6134 + 49, 72, 111, 177, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6136 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.6137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6140 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 189, 210, 210, 210, 28.6141 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.6142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 28.6146 + 0, 0, 30, 74, 144, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6149 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6151 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6153 + 0, 0, 0, 76, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6154 + 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6158 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.6162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 169, 210, 210, 210, 210, 28.6166 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 28.6167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6174 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6176 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6177 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6178 + 0, 0, 44, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6179 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6183 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 28.6187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 210, 210, 210, 210, 210, 28.6191 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.6192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.6196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6199 + 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6201 + 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6202 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6203 + 0, 0, 125, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6204 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6208 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 28.6212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6214 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.6216 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.6217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.6221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6224 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6226 + 255, 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6227 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6228 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6229 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.6230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6233 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.6237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.6239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.6241 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.6246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6249 + 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.6250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6251 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 28.6252 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 28.6253 + 0, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6254 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.6255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6258 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.6262 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.6264 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 28.6265 + 0, 0, 0, 0, 0, 0, 0, 1, 0, 210, 210, 210, 210, 210, 210, 210, 28.6266 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6267 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.6271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6274 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 28.6275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6276 + 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 0, 1, 1, 28.6277 + 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 28.6278 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6279 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.6280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6283 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6287 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 98, 20, 0, 98, 205, 28.6289 + 0, 0, 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, 1, 0, 0, 2, 28.6290 + 2, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6291 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6292 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6293 + 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 28.6294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.6296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.6300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6301 + 255, 176, 39, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 9, 3, 28.6302 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6303 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6304 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.6305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 28.6306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6308 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6312 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6313 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 26, 0, 0, 0, 0, 0, 15, 28.6314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6315 + 0, 0, 0, 0, 0, 0, 0, 86, 210, 210, 210, 210, 210, 210, 210, 210, 28.6316 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6317 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6318 + 255, 255, 255, 255, 255, 255, 238, 216, 255, 255, 255, 255, 255, 255, 255, 255, 28.6319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6320 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.6321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.6325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 111, 28.6326 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 28.6328 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6329 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.6330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 247, 251, 28.6331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6333 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6337 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6338 + 255, 255, 255, 255, 255, 215, 62, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.6339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6340 + 0, 0, 0, 0, 0, 0, 0, 189, 210, 210, 210, 210, 210, 210, 210, 210, 28.6341 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6342 + 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6345 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 28.6346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.6350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 128, 18, 0, 0, 28.6351 + 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 28.6352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6353 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6354 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.6355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.6358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6362 + 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6363 + 255, 230, 128, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6364 + 48, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6365 + 0, 0, 1, 14, 76, 169, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6366 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6367 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.6368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6370 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.6371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 28.6375 + 255, 255, 255, 255, 255, 255, 255, 245, 141, 24, 1, 0, 0, 0, 0, 0, 28.6376 + 0, 0, 0, 0, 0, 0, 0, 0, 181, 47, 5, 0, 0, 0, 0, 0, 28.6377 + 0, 0, 1, 1, 1, 4, 22, 39, 54, 86, 140, 189, 210, 210, 210, 0, 28.6378 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6379 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6380 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 28.6383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6387 + 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 230, 137, 30, 28.6388 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6389 + 255, 215, 119, 76, 52, 45, 49, 59, 91, 146, 189, 210, 210, 210, 210, 210, 28.6390 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.6391 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6392 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.6393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6395 + 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6400 + 0, 0, 255, 238, 125, 18, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6401 + 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 28.6402 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6403 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6404 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6405 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 28.6408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 201, 30, 0, 0, 0, 0, 28.6413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 28.6414 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6415 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 28.6416 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6417 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.6418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6420 + 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6425 + 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 28.6426 + 19, 30, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6427 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6428 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6429 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6430 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 28.6433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6437 + 255, 255, 255, 255, 255, 255, 255, 230, 105, 1, 0, 0, 0, 0, 0, 0, 28.6438 + 0, 0, 0, 0, 0, 0, 0, 23, 189, 23, 0, 0, 0, 0, 0, 0, 28.6439 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6440 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.6441 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6442 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 28.6443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6445 + 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 28.6450 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6451 + 91, 3, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6452 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6453 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6454 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6455 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.6456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 28.6458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6462 + 255, 255, 255, 255, 255, 255, 255, 51, 0, 0, 0, 0, 0, 0, 0, 0, 28.6463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 28.6464 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6465 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 28.6466 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6467 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6468 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6470 + 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 2, 28.6475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6476 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6477 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6478 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6479 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6480 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 28.6481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 28.6483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6487 + 255, 255, 255, 255, 255, 251, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6489 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6490 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.6491 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6492 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6493 + 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6495 + 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 4, 0, 28.6500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6501 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.6502 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6503 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.6504 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6505 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 28.6506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 28.6508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6512 + 255, 255, 255, 255, 255, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6513 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6514 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6515 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6516 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6517 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6518 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6520 + 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 5, 0, 0, 28.6525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.6527 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6528 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.6529 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6530 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.6531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 28.6533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6537 + 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6539 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6540 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6541 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6542 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6543 + 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6545 + 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 6, 0, 0, 0, 28.6550 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6551 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.6552 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6553 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 28.6554 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6555 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 28.6558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6562 + 255, 255, 255, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6563 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6564 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6565 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6566 + 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6567 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6568 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 28.6569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6570 + 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 16, 0, 0, 0, 0, 28.6575 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6576 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.6577 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6578 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 28.6579 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6580 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6581 + 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 28.6583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6587 + 255, 255, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6589 + 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6590 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6591 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6592 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6593 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 28.6594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6595 + 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 0, 0, 0, 0, 0, 28.6600 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6601 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 28.6602 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6603 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.6604 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6605 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6606 + 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6607 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 28.6608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6612 + 255, 184, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6613 + 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6614 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6615 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6616 + 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6617 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6618 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 28.6619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6620 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6624 + 255, 255, 255, 255, 255, 255, 255, 255, 238, 64, 0, 0, 0, 0, 0, 0, 28.6625 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 28.6627 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6628 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.6629 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6630 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6631 + 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 28.6632 + 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.6633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6637 + 196, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6638 + 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6639 + 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6640 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6641 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.6642 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6643 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6644 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 28.6645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6649 + 255, 255, 255, 255, 255, 255, 255, 255, 86, 0, 0, 0, 0, 0, 0, 0, 28.6650 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 28.6651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 28.6652 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6653 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6654 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6655 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6656 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 255, 205, 133, 85, 28.6657 + 61, 63, 92, 144, 215, 255, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 28.6658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 28.6662 + 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6663 + 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6664 + 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6665 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6666 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 210, 210, 210, 28.6667 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6668 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6669 + 210, 177, 119, 70, 27, 4, 0, 0, 0, 0, 1, 6, 5, 9, 0, 142, 28.6670 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6674 + 255, 255, 255, 255, 255, 255, 255, 105, 0, 0, 0, 0, 0, 0, 0, 0, 28.6675 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 28.6676 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.6677 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6678 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6679 + 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6680 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6681 + 210, 210, 208, 192, 148, 96, 52, 23, 3, 1, 0, 0, 0, 0, 0, 0, 28.6682 + 0, 0, 0, 0, 0, 0, 0, 1, 34, 170, 255, 255, 255, 255, 255, 255, 28.6683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 189, 19, 28.6687 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6688 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6689 + 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6690 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6691 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 28.6692 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6693 + 210, 210, 210, 210, 210, 210, 210, 169, 110, 58, 21, 2, 1, 0, 0, 0, 28.6694 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6695 + 0, 18, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6699 + 255, 255, 210, 210, 210, 210, 105, 1, 0, 0, 0, 0, 0, 0, 0, 0, 28.6700 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 28.6701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.6702 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6703 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6704 + 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6705 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 160, 100, 55, 24, 3, 1, 28.6706 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 185, 255, 255, 255, 255, 28.6708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6711 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 189, 19, 0, 28.6712 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6713 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6714 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6715 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6716 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 210, 210, 210, 28.6717 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 189, 28.6718 + 108, 26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6719 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6720 + 0, 0, 0, 36, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 28.6724 + 210, 210, 210, 210, 210, 112, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6725 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6726 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 28.6727 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6728 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6729 + 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 202, 175, 142, 28.6730 + 119, 101, 76, 51, 32, 15, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6731 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6732 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 255, 255, 255, 28.6733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6736 + 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 30, 0, 0, 28.6737 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6738 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6739 + 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6740 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6741 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 28.6742 + 210, 184, 110, 38, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6743 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6744 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6745 + 0, 0, 0, 0, 3, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6748 + 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6749 + 210, 210, 210, 210, 160, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6750 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.6752 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6753 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6754 + 210, 210, 210, 210, 189, 136, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 28.6755 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6756 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 157, 210, 28.6758 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 210, 28.6761 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 61, 0, 0, 0, 28.6762 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6763 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6764 + 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 28.6765 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6766 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 41, 2, 0, 0, 28.6767 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6768 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6769 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6770 + 0, 0, 0, 0, 0, 0, 30, 177, 210, 210, 210, 210, 210, 210, 255, 255, 28.6771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28.6772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 28.6773 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6774 + 210, 210, 210, 177, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6776 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.6777 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6778 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6779 + 210, 210, 169, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6780 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6781 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 28.6783 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6784 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 210, 210, 210, 210, 28.6785 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6786 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 102, 0, 0, 0, 0, 28.6787 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.6790 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6791 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 110, 5, 0, 0, 0, 0, 28.6792 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6793 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6795 + 0, 0, 0, 0, 0, 0, 0, 2, 94, 210, 210, 210, 210, 210, 210, 210, 28.6796 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6797 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6798 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6799 + 210, 210, 202, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6800 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6801 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6802 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6803 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6804 + 210, 210, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6805 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6806 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6808 + 9, 152, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6809 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6810 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6811 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 166, 2, 0, 0, 0, 0, 28.6812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 28.6815 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6816 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 50, 0, 0, 0, 0, 0, 28.6817 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6818 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6819 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 170, 210, 210, 210, 210, 210, 28.6821 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6822 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6823 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6824 + 210, 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6826 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6827 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6828 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6829 + 210, 210, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6830 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6831 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6833 + 0, 0, 55, 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6834 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6835 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6836 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 75, 0, 0, 0, 0, 0, 28.6837 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6838 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 28.6840 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6841 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 48, 0, 0, 0, 0, 0, 28.6842 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6843 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6844 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 84, 210, 210, 210, 210, 28.6846 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6847 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6848 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6849 + 210, 210, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6850 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6851 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6852 + 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6853 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6854 + 210, 210, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6855 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6856 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6857 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6858 + 0, 0, 0, 6, 149, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6859 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6860 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6861 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 7, 0, 0, 0, 0, 0, 28.6862 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6864 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 28.6865 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6866 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 100, 0, 0, 0, 0, 0, 28.6867 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6868 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6869 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6870 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 177, 210, 210, 28.6871 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6872 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6873 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6874 + 210, 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6875 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6876 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6877 + 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6878 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6879 + 210, 210, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6880 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6881 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6882 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6883 + 0, 0, 0, 0, 0, 49, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6884 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6885 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6886 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 119, 0, 0, 0, 0, 0, 0, 28.6887 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6888 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6889 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 28.6890 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6891 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 0, 0, 0, 0, 0, 28.6892 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6893 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6894 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6895 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 189, 28.6896 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6897 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6898 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6899 + 210, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6900 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6901 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6902 + 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6903 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6904 + 210, 210, 210, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6905 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6906 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6907 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6908 + 0, 0, 0, 0, 0, 0, 1, 64, 189, 210, 210, 210, 210, 210, 210, 210, 28.6909 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6910 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6911 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 54, 0, 0, 0, 0, 0, 0, 28.6912 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6914 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.6915 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6916 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 24, 0, 0, 0, 0, 28.6917 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6918 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6919 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 28.6921 + 80, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6922 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6923 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6924 + 210, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6925 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6926 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6927 + 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6928 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6929 + 210, 210, 210, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6930 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6931 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 10, 2, 0, 0, 0, 0, 28.6932 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6933 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 81, 189, 210, 210, 210, 210, 210, 28.6934 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6935 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6936 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.6937 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6938 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6939 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 28.6940 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6941 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 169, 2, 0, 0, 0, 28.6942 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6943 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6944 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6946 + 0, 2, 71, 182, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6947 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6948 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.6949 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6950 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6951 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6952 + 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 28.6953 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6954 + 210, 210, 210, 210, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6955 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6956 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6957 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 78, 194, 210, 210, 210, 28.6959 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6960 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6961 + 210, 210, 210, 210, 0, 0, 0, 0, 210, 108, 0, 0, 0, 0, 0, 0, 28.6962 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6963 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6964 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 28.6965 + 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6966 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 70, 0, 0, 0, 28.6967 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6968 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6969 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6970 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6971 + 0, 0, 0, 5, 105, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6972 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6973 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 28.6974 + 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6976 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6977 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.6978 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6979 + 210, 210, 210, 210, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6980 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6981 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6982 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6983 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 133, 210, 210, 28.6984 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6985 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.6986 + 0, 0, 210, 210, 210, 210, 210, 210, 210, 142, 34, 0, 0, 0, 0, 0, 28.6987 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6988 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6989 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6990 + 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6991 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 7, 0, 0, 28.6992 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6993 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6994 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6995 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.6996 + 0, 0, 0, 0, 0, 12, 140, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6997 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6998 + 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.6999 + 210, 175, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7000 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7001 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7002 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 28.7003 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7004 + 210, 210, 210, 210, 210, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7005 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7006 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7007 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7008 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 131, 28.7009 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7010 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 28.7011 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 202, 119, 18, 0, 0, 0, 0, 28.7012 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7013 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7015 + 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7016 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 160, 2, 0, 28.7017 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7018 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7019 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 28.7020 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7021 + 0, 0, 0, 0, 0, 0, 0, 13, 149, 210, 210, 210, 210, 210, 210, 210, 28.7022 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.7023 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7024 + 210, 210, 180, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7025 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7026 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7027 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 28.7028 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7029 + 210, 210, 210, 210, 210, 202, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7030 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7031 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7032 + 0, 1, 1, 10, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7034 + 21, 177, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7035 + 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7036 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 164, 35, 0, 0, 0, 28.7037 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7038 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7039 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7040 + 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7041 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 135, 1, 28.7042 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7043 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7044 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 9, 39, 2, 0, 0, 28.7045 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 210, 210, 210, 210, 210, 210, 28.7047 + 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 28.7048 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7049 + 210, 210, 210, 205, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7050 + 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7051 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 28.7053 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7054 + 210, 210, 210, 210, 210, 210, 192, 3, 0, 0, 0, 0, 0, 0, 0, 0, 28.7055 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7056 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7057 + 0, 1, 1, 1, 63, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7058 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7059 + 0, 6, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 210, 210, 28.7060 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7061 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 27, 0, 0, 28.7062 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 28.7063 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7065 + 0, 0, 0, 0, 0, 45, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7066 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 208, 35, 28.7067 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7068 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7069 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 5, 6, 0, 0, 0, 28.7070 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 0, 28.7072 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7073 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7074 + 210, 210, 210, 210, 210, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7075 + 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7076 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7077 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 28.7078 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7079 + 210, 210, 210, 210, 210, 210, 210, 105, 0, 0, 0, 0, 0, 0, 0, 0, 28.7080 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7081 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7082 + 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7084 + 0, 0, 210, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7085 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7086 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 132, 1, 0, 28.7087 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 139, 0, 0, 0, 0, 0, 28.7088 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7090 + 0, 0, 0, 0, 0, 0, 0, 9, 255, 210, 210, 210, 210, 210, 210, 210, 28.7091 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 28.7092 + 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7093 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7094 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 28.7095 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 28.7097 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7098 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7099 + 210, 210, 210, 210, 210, 189, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7100 + 7, 109, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7103 + 0, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7104 + 210, 210, 210, 210, 210, 210, 210, 210, 61, 0, 0, 0, 0, 0, 0, 0, 28.7105 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7106 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7107 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7108 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7109 + 2, 117, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7110 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7111 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 105, 1, 28.7112 + 0, 0, 0, 0, 0, 0, 0, 3, 109, 200, 0, 0, 0, 0, 0, 0, 28.7113 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 28.7116 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7117 + 160, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7119 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7120 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7121 + 0, 0, 0, 0, 0, 0, 0, 0, 64, 189, 210, 210, 210, 210, 210, 210, 28.7122 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7123 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7124 + 210, 210, 210, 210, 210, 210, 189, 35, 0, 0, 0, 0, 0, 0, 2, 90, 28.7125 + 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7126 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7127 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7128 + 0, 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7129 + 210, 210, 210, 210, 210, 210, 210, 210, 202, 26, 0, 0, 0, 0, 0, 0, 28.7130 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7131 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7132 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7133 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 28.7134 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7135 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7136 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 28.7137 + 37, 0, 0, 0, 1, 15, 102, 202, 210, 0, 0, 0, 0, 0, 0, 0, 28.7138 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7140 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 255, 255, 210, 210, 210, 28.7141 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7142 + 210, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7143 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7144 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7145 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7146 + 0, 0, 0, 0, 0, 6, 108, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7147 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7148 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7149 + 210, 210, 210, 210, 210, 210, 210, 210, 169, 103, 66, 63, 96, 160, 202, 0, 28.7150 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7153 + 0, 0, 0, 0, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7154 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 161, 1, 0, 0, 0, 0, 0, 28.7155 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7156 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7157 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 142, 210, 210, 28.7159 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7160 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7161 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7162 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7163 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 255, 255, 28.7166 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7167 + 210, 196, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7168 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7169 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7170 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7171 + 0, 0, 0, 45, 169, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7172 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7173 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7174 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.7175 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7177 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7178 + 0, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 210, 210, 28.7179 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 55, 0, 0, 0, 0, 0, 28.7180 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7181 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7182 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7183 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 108, 210, 210, 210, 210, 210, 28.7184 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7185 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7186 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7187 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7188 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 28.7191 + 152, 255, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.7192 + 210, 210, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7193 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7194 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7195 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7196 + 24, 142, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7197 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7198 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7199 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.7200 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7201 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7202 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7203 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 210, 210, 210, 210, 210, 28.7204 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7205 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7206 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7208 + 0, 0, 0, 0, 0, 0, 0, 45, 169, 210, 210, 210, 210, 210, 210, 210, 28.7209 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7210 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7211 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7212 + 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7213 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7214 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7216 + 0, 0, 7, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7217 + 210, 210, 210, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7218 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7219 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7220 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103, 210, 28.7221 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7222 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7223 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7224 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.7225 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7226 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7227 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7228 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 255, 255, 210, 210, 28.7229 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 128, 0, 0, 0, 0, 28.7230 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7233 + 0, 0, 0, 0, 0, 136, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7234 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7235 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7236 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.7237 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7238 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7241 + 0, 0, 0, 0, 186, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7242 + 210, 210, 210, 210, 103, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7243 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7244 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7245 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 210, 210, 210, 28.7246 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7247 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7248 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7249 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7250 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7251 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7252 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7253 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 28.7254 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 169, 110, 45, 28.7255 + 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7256 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7257 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7258 + 0, 0, 1, 75, 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7259 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7260 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7261 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.7262 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7263 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7264 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7265 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7266 + 0, 0, 0, 0, 0, 0, 0, 152, 255, 210, 210, 210, 210, 210, 210, 210, 28.7267 + 210, 210, 210, 210, 210, 210, 210, 210, 189, 136, 54, 7, 0, 0, 0, 0, 28.7268 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7269 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7270 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 189, 210, 210, 210, 210, 28.7271 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7272 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7273 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7274 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7275 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7276 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7277 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7278 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7279 + 0, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7280 + 210, 210, 210, 198, 121, 28, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7281 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7282 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7283 + 1, 63, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7284 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7285 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7286 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 28.7287 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7288 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7289 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7290 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7291 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 255, 255, 210, 210, 210, 28.7292 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 152, 44, 28.7293 + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7294 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7295 + 0, 0, 0, 0, 0, 0, 0, 3, 67, 182, 210, 210, 210, 210, 210, 210, 28.7296 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7297 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7298 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7299 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7300 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7301 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7302 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7303 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7304 + 0, 0, 0, 0, 255, 255, 255, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7305 + 210, 210, 210, 210, 210, 210, 210, 196, 134, 50, 7, 0, 0, 0, 0, 0, 28.7306 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7307 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 72, 28.7308 + 182, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7309 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7310 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7311 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7312 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7313 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7315 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7316 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 255, 28.7317 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7318 + 210, 210, 189, 105, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7319 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7320 + 0, 0, 0, 0, 0, 2, 63, 182, 210, 210, 210, 210, 210, 210, 210, 210, 28.7321 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7322 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7323 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.7324 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7325 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7326 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7328 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7329 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210, 210, 210, 210, 210, 28.7330 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 189, 136, 69, 21, 28.7331 + 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7332 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 68, 177, 210, 28.7333 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7334 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7335 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7336 + 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7337 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7338 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7340 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7341 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7342 + 0, 0, 9, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7343 + 210, 210, 210, 210, 210, 210, 210, 210, 189, 117, 44, 5, 1, 0, 0, 0, 28.7344 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7345 + 0, 0, 0, 2, 86, 196, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7346 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7347 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7348 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 28.7349 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7350 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7351 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7353 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7354 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.7355 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7356 + 210, 210, 210, 210, 196, 161, 119, 77, 41, 16, 4, 0, 0, 0, 0, 0, 28.7357 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 94, 202, 210, 210, 210, 28.7358 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7359 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7360 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 28.7361 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7362 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7363 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7364 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7365 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7366 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7367 + 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7368 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7369 + 210, 210, 210, 202, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7370 + 0, 18, 124, 202, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7371 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7372 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7373 + 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7374 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7375 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7376 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7377 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7378 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7379 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7380 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7381 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 177, 28.7382 + 0, 0, 0, 0, 0, 0, 0, 3, 48, 160, 210, 210, 210, 210, 210, 210, 28.7383 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7384 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7385 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 28.7386 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7387 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7388 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7389 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7390 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7391 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7392 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 28.7393 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7394 + 210, 210, 210, 210, 210, 210, 210, 210, 196, 134, 55, 0, 0, 0, 40, 117, 28.7395 + 189, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7396 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7397 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 8, 28.7398 + 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7399 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7400 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7401 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7402 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7403 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7404 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7405 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7406 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7407 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7408 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7409 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7410 + 210, 210, 210, 210, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7411 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7412 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7414 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7415 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7416 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7417 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.7418 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7419 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.7420 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7421 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7422 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 1, 0, 0, 0, 0, 28.7423 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7424 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7425 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7426 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7427 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7428 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7429 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7430 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.7431 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7432 + 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 28.7433 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7434 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7435 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7436 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7437 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7438 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7439 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7440 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7441 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7442 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7443 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7444 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7445 + 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7446 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7447 + 210, 210, 210, 210, 210, 4, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7448 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7449 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7450 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7451 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7452 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7453 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7454 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7455 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.7456 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7457 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 210, 210, 28.7458 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7459 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 255, 0, 0, 0, 0, 0, 28.7460 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7461 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7462 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7464 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7465 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7466 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7467 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7468 + 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 28.7469 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7470 + 210, 210, 210, 210, 210, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7471 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7472 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7473 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7474 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7476 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7477 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7478 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7479 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7480 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7481 + 0, 0, 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7482 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 28.7483 + 0, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7484 + 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7486 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7487 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7489 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7490 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7491 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7492 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7493 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 28.7494 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7495 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7496 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 0, 28.7497 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7498 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7499 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7501 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7502 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7503 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7504 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7505 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7506 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 210, 210, 210, 28.7507 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 28.7508 + 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, 0, 0, 0, 28.7509 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7510 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7511 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7512 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.7513 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; 28.7514 + 28.7515 +/* Define image 'lena' of size 256x256x1x1 and type 'const unsigned char' */ 28.7516 +const unsigned char data_lena[] = { 28.7517 + 254, 254, 254, 254, 254, 254, 254, 254, 162, 165, 155, 156, 158, 158, 158, 155, 28.7518 + 155, 156, 160, 162, 169, 169, 174, 177, 174, 169, 171, 162, 147, 155, 127, 114, 28.7519 + 86, 86, 76, 98, 98, 98, 98, 96, 108, 101, 98, 108, 103, 101, 105, 101, 28.7520 + 105, 105, 98, 98, 105, 117, 108, 119, 105, 117, 123, 119, 119, 125, 117, 133, 28.7521 + 129, 133, 125, 129, 135, 131, 129, 125, 133, 127, 133, 127, 125, 125, 133, 133, 28.7522 + 123, 125, 131, 131, 127, 125, 131, 131, 135, 133, 129, 129, 129, 137, 133, 133, 28.7523 + 133, 129, 133, 129, 135, 131, 133, 131, 141, 127, 133, 129, 131, 129, 131, 127, 28.7524 + 129, 135, 133, 129, 129, 127, 125, 127, 133, 129, 129, 133, 131, 131, 125, 131, 28.7525 + 137, 133, 131, 127, 129, 127, 131, 127, 127, 129, 121, 133, 127, 125, 125, 133, 28.7526 + 123, 127, 127, 131, 125, 121, 123, 123, 119, 121, 114, 119, 117, 110, 114, 98, 28.7527 + 96, 110, 119, 135, 139, 147, 156, 155, 164, 167, 169, 158, 149, 156, 158, 151, 28.7528 + 153, 156, 158, 156, 162, 156, 156, 153, 155, 156, 156, 155, 155, 153, 156, 156, 28.7529 + 156, 156, 162, 156, 158, 164, 160, 160, 158, 162, 200, 213, 219, 219, 224, 222, 28.7530 + 225, 218, 201, 158, 103, 96, 103, 98, 114, 119, 119, 123, 129, 117, 121, 121, 28.7531 + 123, 127, 121, 123, 117, 123, 121, 119, 123, 129, 121, 123, 125, 121, 123, 114, 28.7532 + 129, 125, 123, 123, 121, 129, 125, 117, 110, 112, 117, 119, 135, 171, 174, 158, 28.7533 + 164, 164, 165, 165, 167, 162, 158, 162, 162, 165, 155, 156, 158, 158, 158, 155, 28.7534 + 155, 156, 160, 162, 169, 169, 174, 177, 174, 169, 171, 162, 147, 155, 127, 114, 28.7535 + 86, 86, 76, 98, 98, 98, 98, 96, 108, 101, 98, 108, 103, 101, 105, 101, 28.7536 + 105, 105, 98, 98, 105, 117, 108, 119, 105, 117, 123, 119, 119, 125, 117, 133, 28.7537 + 129, 133, 125, 129, 135, 131, 129, 125, 133, 127, 133, 127, 125, 125, 133, 133, 28.7538 + 123, 125, 131, 131, 127, 125, 131, 131, 135, 133, 129, 129, 129, 137, 133, 133, 28.7539 + 133, 129, 133, 129, 135, 131, 133, 131, 141, 127, 133, 129, 131, 129, 131, 127, 28.7540 + 129, 135, 133, 129, 129, 127, 125, 127, 133, 129, 129, 133, 131, 131, 125, 131, 28.7541 + 137, 133, 131, 127, 129, 127, 131, 127, 127, 129, 121, 133, 127, 125, 125, 133, 28.7542 + 123, 127, 127, 131, 125, 121, 123, 123, 119, 121, 114, 119, 117, 110, 114, 98, 28.7543 + 96, 110, 119, 135, 139, 147, 156, 155, 164, 167, 169, 158, 149, 156, 158, 151, 28.7544 + 153, 156, 158, 156, 162, 156, 156, 153, 155, 156, 156, 155, 155, 153, 156, 156, 28.7545 + 156, 156, 162, 156, 158, 164, 160, 160, 158, 162, 200, 213, 219, 219, 224, 222, 28.7546 + 225, 218, 201, 158, 103, 96, 103, 98, 114, 119, 119, 123, 129, 117, 121, 121, 28.7547 + 123, 127, 121, 123, 117, 123, 121, 119, 123, 129, 121, 123, 125, 121, 123, 114, 28.7548 + 129, 125, 123, 123, 121, 129, 125, 117, 110, 112, 117, 119, 135, 171, 174, 158, 28.7549 + 164, 164, 165, 165, 167, 162, 158, 162, 162, 165, 155, 156, 158, 158, 158, 155, 28.7550 + 155, 156, 160, 162, 169, 169, 174, 177, 174, 169, 171, 162, 147, 155, 127, 114, 28.7551 + 86, 86, 76, 98, 98, 98, 98, 96, 108, 101, 98, 108, 103, 101, 105, 101, 28.7552 + 105, 105, 98, 98, 105, 117, 108, 119, 105, 117, 123, 119, 119, 125, 117, 133, 28.7553 + 129, 133, 125, 129, 135, 131, 129, 125, 133, 127, 133, 127, 125, 125, 133, 133, 28.7554 + 123, 125, 131, 131, 127, 125, 131, 131, 135, 133, 129, 129, 129, 137, 133, 133, 28.7555 + 133, 129, 133, 129, 135, 131, 133, 131, 141, 127, 133, 129, 131, 129, 131, 127, 28.7556 + 129, 135, 133, 129, 129, 127, 125, 127, 133, 129, 129, 133, 131, 131, 125, 131, 28.7557 + 137, 133, 131, 127, 129, 127, 131, 127, 127, 129, 121, 133, 127, 125, 125, 133, 28.7558 + 123, 127, 127, 131, 125, 121, 123, 123, 119, 121, 114, 119, 117, 110, 114, 98, 28.7559 + 96, 110, 119, 135, 139, 147, 156, 155, 164, 167, 169, 158, 149, 156, 158, 151, 28.7560 + 153, 156, 158, 156, 162, 156, 156, 153, 155, 156, 156, 155, 155, 153, 156, 156, 28.7561 + 156, 156, 162, 156, 158, 164, 160, 160, 158, 162, 200, 213, 219, 219, 224, 222, 28.7562 + 225, 218, 201, 158, 103, 96, 103, 98, 114, 119, 119, 123, 129, 117, 121, 121, 28.7563 + 123, 127, 121, 123, 117, 123, 121, 119, 123, 129, 121, 123, 125, 121, 123, 114, 28.7564 + 129, 125, 123, 123, 121, 129, 125, 117, 110, 112, 117, 119, 135, 171, 174, 158, 28.7565 + 162, 167, 162, 160, 162, 156, 156, 158, 155, 156, 160, 156, 158, 155, 151, 156, 28.7566 + 162, 156, 160, 167, 172, 172, 172, 174, 176, 171, 167, 160, 149, 135, 114, 98, 28.7567 + 86, 76, 86, 81, 86, 86, 98, 110, 94, 101, 103, 101, 91, 98, 103, 91, 28.7568 + 94, 101, 94, 112, 98, 103, 119, 108, 112, 114, 127, 121, 123, 114, 119, 125, 28.7569 + 129, 127, 135, 119, 123, 125, 129, 127, 129, 131, 127, 129, 121, 127, 125, 125, 28.7570 + 131, 135, 133, 133, 127, 131, 129, 137, 129, 125, 131, 129, 129, 125, 127, 129, 28.7571 + 133, 133, 129, 131, 135, 131, 129, 129, 137, 127, 133, 129, 131, 127, 131, 123, 28.7572 + 127, 133, 135, 125, 129, 125, 129, 129, 131, 125, 131, 131, 129, 127, 127, 127, 28.7573 + 127, 131, 131, 125, 125, 125, 121, 129, 123, 131, 125, 123, 123, 125, 125, 131, 28.7574 + 131, 127, 121, 125, 127, 127, 125, 121, 119, 123, 121, 117, 112, 110, 105, 98, 28.7575 + 96, 112, 119, 125, 133, 147, 145, 158, 164, 162, 167, 160, 156, 155, 153, 155, 28.7576 + 155, 158, 162, 156, 162, 158, 156, 156, 156, 153, 153, 158, 158, 160, 155, 153, 28.7577 + 156, 156, 158, 160, 160, 160, 158, 158, 155, 156, 181, 207, 216, 219, 222, 224, 28.7578 + 227, 222, 213, 187, 133, 103, 96, 108, 112, 114, 119, 117, 117, 121, 121, 129, 28.7579 + 121, 127, 119, 117, 125, 123, 127, 123, 125, 121, 127, 125, 123, 114, 125, 125, 28.7580 + 121, 125, 123, 117, 119, 123, 123, 125, 117, 112, 125, 129, 125, 123, 86, 49, 28.7581 + 156, 160, 162, 158, 165, 160, 164, 156, 156, 165, 160, 156, 162, 153, 153, 160, 28.7582 + 158, 155, 164, 171, 176, 177, 174, 174, 177, 171, 167, 160, 145, 135, 117, 103, 28.7583 + 86, 79, 76, 81, 86, 91, 98, 96, 96, 98, 94, 105, 96, 103, 103, 103, 28.7584 + 94, 114, 101, 96, 105, 105, 103, 117, 114, 117, 114, 125, 121, 129, 121, 125, 28.7585 + 114, 121, 127, 131, 129, 131, 127, 123, 131, 125, 127, 129, 127, 131, 127, 127, 28.7586 + 123, 129, 131, 129, 127, 131, 131, 129, 127, 133, 135, 127, 127, 143, 133, 129, 28.7587 + 129, 131, 129, 129, 129, 127, 123, 125, 133, 127, 133, 137, 127, 121, 119, 127, 28.7588 + 129, 137, 141, 131, 123, 125, 131, 131, 129, 127, 125, 129, 123, 129, 131, 133, 28.7589 + 127, 133, 133, 125, 127, 119, 127, 129, 121, 133, 125, 127, 119, 127, 127, 127, 28.7590 + 129, 127, 123, 125, 125, 123, 123, 125, 123, 119, 121, 121, 110, 110, 105, 108, 28.7591 + 96, 103, 110, 117, 131, 139, 143, 149, 156, 158, 167, 160, 158, 158, 155, 153, 28.7592 + 156, 158, 155, 156, 158, 156, 158, 162, 155, 160, 160, 153, 156, 155, 155, 158, 28.7593 + 158, 158, 158, 158, 153, 158, 158, 160, 155, 155, 162, 193, 210, 219, 219, 222, 28.7594 + 222, 225, 219, 206, 167, 112, 101, 105, 112, 112, 114, 125, 117, 117, 114, 125, 28.7595 + 117, 119, 117, 123, 117, 117, 119, 123, 125, 121, 121, 119, 121, 121, 119, 125, 28.7596 + 125, 121, 127, 121, 121, 125, 131, 125, 127, 123, 125, 123, 86, 52, 32, 26, 28.7597 + 158, 160, 158, 155, 160, 158, 162, 160, 156, 155, 162, 160, 155, 156, 156, 153, 28.7598 + 158, 158, 164, 171, 174, 171, 176, 177, 171, 165, 165, 160, 141, 131, 127, 108, 28.7599 + 86, 76, 79, 86, 103, 86, 91, 98, 94, 94, 94, 89, 94, 108, 91, 96, 28.7600 + 96, 94, 101, 103, 110, 105, 110, 119, 117, 121, 119, 119, 121, 121, 117, 127, 28.7601 + 119, 133, 123, 121, 129, 129, 123, 131, 125, 131, 133, 121, 123, 127, 125, 133, 28.7602 + 123, 133, 133, 137, 127, 127, 129, 129, 127, 131, 125, 123, 129, 131, 125, 127, 28.7603 + 123, 125, 127, 127, 131, 129, 131, 129, 125, 133, 135, 125, 131, 125, 121, 123, 28.7604 + 131, 123, 129, 125, 133, 125, 129, 123, 133, 125, 131, 125, 129, 125, 127, 123, 28.7605 + 127, 125, 131, 129, 125, 125, 127, 123, 125, 125, 123, 127, 121, 127, 125, 123, 28.7606 + 125, 125, 131, 125, 125, 125, 127, 127, 123, 117, 108, 112, 112, 112, 110, 108, 28.7607 + 108, 96, 108, 119, 125, 137, 143, 151, 156, 162, 165, 167, 158, 158, 156, 153, 28.7608 + 158, 156, 164, 162, 160, 158, 158, 160, 156, 156, 156, 156, 156, 160, 158, 155, 28.7609 + 153, 156, 155, 156, 156, 158, 153, 156, 160, 151, 153, 174, 201, 212, 219, 221, 28.7610 + 222, 224, 224, 215, 192, 149, 103, 96, 103, 108, 114, 114, 121, 114, 114, 123, 28.7611 + 121, 121, 114, 121, 117, 121, 117, 119, 121, 123, 119, 114, 121, 117, 123, 125, 28.7612 + 121, 123, 123, 127, 119, 121, 125, 131, 129, 131, 110, 84, 46, 32, 32, 38, 28.7613 + 158, 160, 158, 160, 164, 160, 156, 156, 158, 165, 158, 158, 153, 155, 155, 153, 28.7614 + 158, 167, 164, 171, 174, 174, 174, 169, 165, 172, 172, 162, 139, 135, 121, 101, 28.7615 + 94, 71, 76, 91, 74, 86, 91, 103, 94, 96, 98, 103, 103, 98, 94, 98, 28.7616 + 91, 98, 94, 98, 110, 101, 105, 108, 114, 112, 119, 121, 121, 117, 127, 121, 28.7617 + 119, 121, 123, 137, 125, 129, 125, 129, 127, 127, 125, 125, 125, 131, 121, 133, 28.7618 + 123, 127, 135, 125, 129, 125, 127, 131, 125, 127, 127, 131, 135, 129, 123, 127, 28.7619 + 123, 127, 125, 125, 133, 125, 133, 129, 129, 133, 129, 127, 129, 123, 127, 121, 28.7620 + 127, 129, 125, 129, 125, 129, 125, 127, 125, 133, 129, 129, 131, 127, 137, 127, 28.7621 + 125, 127, 125, 131, 125, 129, 125, 125, 125, 121, 125, 127, 127, 127, 125, 133, 28.7622 + 125, 119, 119, 125, 119, 125, 133, 125, 119, 121, 117, 119, 114, 108, 110, 110, 28.7623 + 101, 101, 96, 105, 117, 131, 133, 145, 151, 155, 167, 162, 162, 162, 158, 156, 28.7624 + 156, 160, 162, 162, 165, 162, 162, 158, 160, 156, 158, 158, 156, 158, 156, 158, 28.7625 + 155, 156, 155, 155, 155, 158, 158, 160, 167, 149, 155, 155, 189, 209, 216, 219, 28.7626 + 222, 222, 224, 224, 209, 176, 117, 98, 101, 105, 110, 117, 110, 121, 117, 119, 28.7627 + 123, 119, 121, 114, 125, 112, 117, 119, 131, 121, 119, 114, 119, 117, 125, 117, 28.7628 + 123, 125, 121, 121, 119, 119, 133, 129, 125, 123, 89, 46, 38, 29, 35, 38, 28.7629 + 160, 162, 156, 162, 156, 151, 156, 156, 156, 156, 153, 158, 155, 153, 156, 156, 28.7630 + 164, 169, 171, 174, 172, 172, 172, 174, 171, 169, 162, 160, 141, 131, 119, 105, 28.7631 + 91, 89, 79, 86, 86, 91, 94, 96, 96, 98, 96, 105, 96, 101, 91, 101, 28.7632 + 105, 96, 94, 98, 105, 103, 108, 108, 112, 112, 119, 119, 123, 119, 117, 129, 28.7633 + 123, 119, 127, 123, 121, 131, 129, 133, 129, 125, 127, 125, 125, 125, 129, 127, 28.7634 + 123, 123, 125, 125, 127, 127, 131, 129, 125, 127, 133, 133, 129, 127, 133, 123, 28.7635 + 125, 127, 135, 133, 131, 131, 121, 135, 129, 125, 131, 131, 133, 125, 129, 129, 28.7636 + 129, 131, 123, 131, 125, 123, 129, 127, 133, 127, 129, 133, 137, 127, 127, 129, 28.7637 + 125, 135, 127, 127, 125, 121, 135, 123, 127, 129, 127, 121, 123, 127, 121, 123, 28.7638 + 127, 119, 125, 127, 131, 125, 121, 121, 114, 119, 121, 119, 114, 117, 110, 108, 28.7639 + 98, 105, 96, 105, 114, 123, 139, 147, 151, 156, 160, 164, 165, 164, 164, 160, 28.7640 + 162, 162, 162, 169, 165, 167, 164, 160, 158, 160, 155, 156, 162, 160, 151, 155, 28.7641 + 156, 153, 153, 153, 153, 156, 155, 156, 155, 160, 155, 149, 167, 201, 212, 218, 28.7642 + 221, 225, 224, 225, 218, 200, 155, 98, 103, 101, 105, 110, 117, 110, 114, 121, 28.7643 + 121, 112, 123, 117, 121, 117, 110, 123, 125, 114, 121, 125, 119, 127, 129, 121, 28.7644 + 125, 119, 119, 125, 123, 125, 129, 127, 108, 84, 35, 38, 41, 38, 46, 35, 28.7645 + 156, 156, 158, 158, 156, 155, 160, 156, 153, 155, 158, 155, 156, 151, 151, 167, 28.7646 + 164, 167, 176, 169, 169, 172, 169, 169, 171, 169, 158, 160, 141, 137, 125, 98, 28.7647 + 91, 81, 79, 84, 81, 96, 96, 81, 96, 108, 105, 105, 86, 91, 98, 108, 28.7648 + 91, 94, 91, 98, 101, 108, 110, 108, 108, 117, 112, 121, 114, 121, 119, 125, 28.7649 + 125, 127, 123, 129, 123, 127, 131, 129, 131, 125, 123, 125, 129, 123, 125, 125, 28.7650 + 129, 129, 133, 131, 125, 141, 129, 129, 125, 131, 129, 129, 137, 127, 127, 125, 28.7651 + 123, 125, 123, 125, 127, 121, 131, 131, 129, 125, 131, 125, 133, 133, 129, 123, 28.7652 + 121, 131, 129, 129, 123, 127, 129, 129, 133, 137, 127, 141, 129, 127, 131, 127, 28.7653 + 129, 131, 125, 125, 127, 127, 127, 123, 129, 127, 125, 123, 125, 114, 125, 127, 28.7654 + 127, 127, 127, 123, 125, 123, 123, 123, 125, 123, 110, 119, 112, 112, 110, 125, 28.7655 + 108, 108, 103, 94, 112, 117, 135, 141, 149, 155, 158, 156, 160, 171, 162, 160, 28.7656 + 160, 164, 165, 165, 162, 162, 162, 165, 158, 160, 165, 162, 162, 158, 153, 153, 28.7657 + 155, 155, 158, 151, 158, 149, 156, 151, 151, 155, 151, 158, 151, 184, 206, 215, 28.7658 + 221, 222, 225, 225, 224, 213, 189, 125, 103, 91, 112, 103, 121, 112, 108, 117, 28.7659 + 119, 121, 121, 114, 114, 119, 117, 127, 119, 117, 125, 121, 119, 123, 127, 123, 28.7660 + 129, 131, 125, 129, 129, 133, 133, 108, 71, 23, 32, 23, 26, 38, 26, 35, 28.7661 + 158, 162, 158, 155, 160, 155, 162, 165, 162, 164, 156, 156, 155, 156, 164, 162, 28.7662 + 169, 171, 174, 167, 172, 171, 171, 165, 172, 165, 164, 153, 139, 131, 121, 101, 28.7663 + 84, 89, 89, 81, 86, 101, 89, 91, 91, 89, 105, 96, 94, 101, 98, 94, 28.7664 + 89, 98, 94, 103, 101, 112, 110, 108, 112, 110, 117, 121, 119, 123, 114, 125, 28.7665 + 123, 125, 121, 127, 125, 127, 129, 125, 119, 123, 127, 127, 127, 125, 125, 123, 28.7666 + 127, 127, 131, 125, 123, 127, 127, 127, 131, 135, 129, 123, 125, 133, 131, 127, 28.7667 + 125, 123, 129, 137, 125, 125, 127, 125, 127, 127, 135, 125, 139, 125, 125, 127, 28.7668 + 123, 135, 135, 123, 125, 121, 119, 125, 129, 131, 133, 133, 131, 127, 129, 127, 28.7669 + 131, 125, 131, 133, 129, 127, 123, 121, 125, 125, 129, 125, 127, 123, 121, 119, 28.7670 + 125, 123, 127, 121, 131, 117, 121, 127, 127, 127, 121, 123, 112, 112, 108, 114, 28.7671 + 108, 108, 94, 96, 105, 119, 125, 139, 141, 155, 156, 162, 162, 171, 162, 162, 28.7672 + 165, 162, 160, 167, 164, 165, 167, 167, 162, 160, 158, 164, 164, 155, 158, 155, 28.7673 + 156, 162, 155, 156, 155, 158, 153, 155, 158, 153, 155, 151, 147, 156, 193, 210, 28.7674 + 218, 224, 224, 225, 224, 219, 204, 164, 103, 98, 108, 105, 112, 108, 108, 121, 28.7675 + 117, 119, 125, 117, 129, 131, 119, 121, 121, 139, 123, 117, 127, 125, 131, 123, 28.7676 + 129, 133, 129, 131, 135, 125, 103, 79, 29, 20, 41, 29, 35, 38, 32, 29, 28.7677 + 160, 156, 156, 156, 160, 160, 160, 162, 158, 156, 153, 162, 155, 156, 160, 162, 28.7678 + 165, 171, 169, 171, 176, 167, 165, 169, 164, 165, 158, 156, 145, 131, 129, 129, 28.7679 + 98, 96, 76, 76, 86, 89, 91, 98, 98, 103, 96, 103, 96, 96, 98, 91, 28.7680 + 101, 91, 96, 89, 101, 105, 108, 105, 121, 110, 110, 114, 121, 121, 117, 127, 28.7681 + 119, 123, 123, 127, 127, 125, 127, 125, 119, 131, 125, 129, 129, 131, 131, 127, 28.7682 + 125, 123, 129, 133, 123, 121, 131, 125, 127, 121, 125, 125, 125, 125, 127, 127, 28.7683 + 135, 125, 127, 131, 125, 127, 129, 125, 129, 127, 123, 129, 129, 125, 139, 131, 28.7684 + 129, 129, 133, 127, 121, 125, 123, 123, 131, 133, 131, 129, 143, 131, 125, 125, 28.7685 + 133, 121, 123, 125, 141, 121, 131, 119, 125, 123, 125, 125, 129, 119, 119, 123, 28.7686 + 123, 123, 125, 127, 127, 123, 125, 123, 127, 119, 121, 119, 141, 114, 112, 112, 28.7687 + 103, 101, 103, 89, 105, 114, 127, 137, 147, 147, 155, 158, 160, 167, 164, 164, 28.7688 + 162, 162, 162, 169, 165, 171, 164, 164, 164, 156, 162, 162, 162, 169, 153, 160, 28.7689 + 158, 160, 155, 156, 153, 155, 156, 158, 155, 151, 155, 155, 160, 147, 176, 204, 28.7690 + 213, 221, 222, 225, 227, 224, 215, 192, 143, 94, 112, 103, 114, 108, 112, 114, 28.7691 + 112, 119, 119, 121, 121, 119, 112, 127, 112, 121, 121, 129, 125, 125, 125, 129, 28.7692 + 129, 133, 131, 141, 129, 105, 71, 41, 29, 46, 46, 29, 49, 32, 26, 26, 28.7693 + 160, 158, 155, 158, 156, 153, 158, 160, 162, 158, 160, 158, 149, 156, 158, 164, 28.7694 + 172, 171, 169, 164, 169, 172, 171, 164, 162, 162, 160, 151, 155, 135, 129, 119, 28.7695 + 89, 84, 84, 86, 84, 86, 89, 86, 137, 91, 98, 89, 91, 105, 89, 98, 28.7696 + 101, 98, 94, 96, 108, 117, 103, 114, 110, 123, 112, 117, 110, 121, 123, 119, 28.7697 + 121, 117, 123, 125, 131, 127, 129, 129, 129, 123, 131, 131, 125, 125, 123, 125, 28.7698 + 123, 129, 129, 131, 127, 125, 125, 127, 127, 125, 133, 131, 125, 121, 125, 125, 28.7699 + 127, 133, 123, 127, 127, 125, 125, 129, 125, 123, 127, 125, 127, 123, 125, 125, 28.7700 + 125, 125, 123, 121, 121, 125, 123, 125, 131, 127, 131, 133, 135, 127, 127, 127, 28.7701 + 129, 129, 129, 125, 129, 127, 127, 129, 121, 127, 119, 119, 119, 121, 119, 125, 28.7702 + 125, 123, 121, 125, 119, 117, 125, 123, 119, 117, 117, 121, 117, 119, 108, 108, 28.7703 + 103, 117, 101, 96, 101, 103, 125, 135, 145, 153, 155, 158, 162, 160, 165, 162, 28.7704 + 164, 165, 158, 164, 164, 165, 162, 167, 167, 167, 162, 153, 160, 156, 156, 156, 28.7705 + 153, 156, 151, 155, 153, 153, 153, 155, 155, 153, 155, 153, 141, 147, 153, 190, 28.7706 + 209, 216, 221, 224, 224, 225, 222, 210, 172, 108, 98, 103, 108, 114, 123, 121, 28.7707 + 114, 117, 110, 121, 125, 121, 121, 117, 123, 114, 129, 127, 135, 133, 131, 127, 28.7708 + 125, 131, 133, 131, 112, 55, 35, 20, 29, 29, 41, 32, 41, 32, 32, 38, 28.7709 + 158, 160, 153, 162, 162, 156, 158, 160, 162, 155, 160, 162, 153, 160, 164, 167, 28.7710 + 171, 167, 174, 167, 169, 169, 169, 156, 160, 162, 160, 155, 149, 137, 121, 108, 28.7711 + 94, 79, 81, 84, 89, 79, 96, 96, 105, 101, 98, 94, 94, 98, 94, 94, 28.7712 + 101, 94, 96, 98, 98, 105, 98, 105, 117, 114, 114, 121, 114, 110, 123, 121, 28.7713 + 127, 125, 119, 129, 123, 139, 119, 125, 125, 121, 125, 125, 123, 121, 127, 125, 28.7714 + 127, 127, 133, 125, 125, 129, 133, 127, 123, 125, 129, 129, 123, 125, 133, 131, 28.7715 + 125, 129, 119, 129, 123, 127, 121, 123, 121, 127, 121, 117, 123, 123, 117, 123, 28.7716 + 123, 123, 125, 127, 123, 127, 119, 123, 131, 125, 133, 129, 125, 133, 129, 125, 28.7717 + 131, 125, 133, 133, 125, 127, 119, 125, 125, 131, 125, 125, 121, 123, 117, 121, 28.7718 + 121, 127, 123, 125, 117, 121, 121, 123, 119, 117, 125, 117, 119, 112, 114, 105, 28.7719 + 108, 105, 101, 103, 110, 119, 123, 131, 143, 149, 151, 160, 158, 164, 167, 167, 28.7720 + 164, 171, 164, 156, 162, 164, 162, 160, 160, 164, 162, 158, 158, 164, 162, 155, 28.7721 + 162, 158, 151, 149, 156, 153, 153, 153, 156, 153, 153, 151, 151, 147, 145, 172, 28.7722 + 204, 213, 219, 224, 225, 225, 225, 218, 201, 158, 98, 98, 105, 112, 119, 123, 28.7723 + 114, 123, 112, 119, 121, 119, 119, 119, 117, 117, 121, 129, 125, 123, 125, 125, 28.7724 + 135, 137, 127, 108, 60, 79, 32, 26, 35, 38, 26, 29, 23, 35, 43, 41, 28.7725 + 155, 153, 155, 156, 160, 156, 162, 162, 160, 156, 160, 155, 156, 164, 164, 165, 28.7726 + 167, 169, 172, 171, 165, 164, 165, 162, 164, 164, 164, 149, 149, 137, 114, 101, 28.7727 + 81, 71, 60, 71, 81, 86, 91, 98, 96, 101, 101, 96, 98, 94, 96, 91, 28.7728 + 101, 91, 98, 101, 103, 101, 110, 105, 114, 121, 114, 121, 117, 119, 117, 123, 28.7729 + 121, 129, 125, 129, 121, 125, 127, 127, 117, 125, 125, 117, 125, 127, 125, 125, 28.7730 + 125, 127, 123, 119, 121, 127, 121, 117, 121, 127, 125, 119, 125, 135, 135, 129, 28.7731 + 135, 125, 129, 121, 125, 123, 119, 119, 119, 123, 117, 123, 123, 127, 125, 125, 28.7732 + 127, 114, 121, 121, 123, 123, 114, 125, 117, 121, 121, 131, 127, 123, 129, 125, 28.7733 + 125, 125, 127, 133, 125, 127, 125, 125, 121, 125, 125, 123, 135, 121, 123, 127, 28.7734 + 119, 125, 127, 121, 125, 125, 121, 121, 123, 123, 121, 117, 125, 127, 110, 101, 28.7735 + 108, 101, 96, 98, 101, 108, 117, 125, 137, 143, 155, 158, 158, 164, 162, 162, 28.7736 + 164, 164, 158, 162, 160, 158, 162, 164, 162, 164, 162, 162, 160, 158, 151, 155, 28.7737 + 158, 153, 153, 155, 151, 155, 158, 155, 155, 155, 156, 153, 151, 151, 145, 147, 28.7738 + 187, 212, 218, 222, 224, 227, 228, 225, 213, 189, 125, 101, 105, 108, 112, 114, 28.7739 + 125, 121, 125, 114, 123, 121, 117, 117, 119, 129, 123, 117, 123, 127, 125, 129, 28.7740 + 133, 135, 108, 71, 32, 32, 41, 18, 15, 29, 23, 26, 26, 41, 43, 26, 28.7741 + 160, 158, 165, 160, 158, 156, 160, 160, 160, 158, 162, 162, 160, 167, 167, 172, 28.7742 + 172, 172, 169, 169, 162, 160, 162, 162, 160, 164, 160, 155, 147, 137, 117, 105, 28.7743 + 84, 76, 74, 76, 86, 84, 91, 89, 94, 101, 98, 94, 101, 98, 101, 89, 28.7744 + 98, 91, 96, 101, 101, 105, 110, 110, 110, 123, 119, 112, 117, 125, 121, 123, 28.7745 + 125, 119, 114, 121, 133, 125, 123, 123, 123, 123, 127, 125, 131, 127, 117, 131, 28.7746 + 129, 125, 121, 127, 123, 123, 125, 129, 129, 123, 125, 121, 125, 127, 121, 131, 28.7747 + 129, 139, 137, 123, 123, 119, 117, 119, 119, 114, 117, 119, 117, 123, 125, 123, 28.7748 + 119, 123, 121, 119, 114, 123, 119, 127, 127, 123, 125, 123, 123, 129, 125, 131, 28.7749 + 127, 129, 127, 127, 125, 127, 125, 119, 125, 121, 123, 127, 117, 121, 121, 121, 28.7750 + 123, 119, 121, 121, 119, 125, 125, 121, 123, 117, 121, 123, 114, 117, 119, 114, 28.7751 + 110, 103, 98, 103, 110, 117, 127, 133, 141, 143, 156, 156, 162, 162, 171, 165, 28.7752 + 165, 162, 162, 160, 164, 158, 164, 156, 167, 158, 158, 158, 156, 156, 160, 156, 28.7753 + 160, 156, 158, 155, 155, 160, 155, 153, 155, 155, 156, 153, 149, 153, 147, 145, 28.7754 + 169, 203, 213, 222, 222, 224, 227, 227, 222, 206, 162, 96, 105, 110, 108, 112, 28.7755 + 114, 119, 114, 123, 121, 117, 121, 121, 119, 119, 123, 121, 121, 125, 131, 135, 28.7756 + 133, 108, 55, 20, 20, 35, 32, 23, 26, 26, 29, 26, 29, 46, 29, 43, 28.7757 + 158, 160, 162, 158, 158, 160, 162, 167, 162, 160, 160, 165, 165, 171, 171, 172, 28.7758 + 171, 169, 169, 169, 162, 162, 160, 160, 158, 165, 165, 158, 143, 135, 129, 110, 28.7759 + 86, 86, 76, 76, 81, 91, 86, 94, 101, 96, 110, 91, 98, 96, 96, 94, 28.7760 + 96, 94, 94, 91, 98, 101, 103, 110, 110, 112, 119, 121, 119, 125, 123, 117, 28.7761 + 125, 121, 123, 123, 125, 129, 127, 121, 123, 123, 127, 125, 125, 127, 125, 123, 28.7762 + 123, 125, 121, 125, 125, 127, 125, 121, 121, 127, 125, 119, 123, 117, 123, 129, 28.7763 + 131, 123, 125, 125, 127, 123, 119, 117, 114, 112, 117, 112, 121, 119, 123, 125, 28.7764 + 123, 125, 123, 123, 127, 121, 121, 121, 125, 129, 133, 125, 129, 129, 127, 131, 28.7765 + 131, 123, 127, 127, 127, 121, 125, 123, 125, 129, 125, 125, 127, 123, 112, 127, 28.7766 + 123, 117, 123, 121, 125, 129, 119, 123, 127, 131, 117, 119, 114, 110, 117, 112, 28.7767 + 108, 110, 105, 101, 101, 112, 121, 131, 133, 147, 153, 153, 160, 160, 162, 167, 28.7768 + 164, 164, 162, 156, 164, 156, 165, 160, 164, 158, 158, 160, 160, 158, 155, 156, 28.7769 + 162, 156, 153, 155, 158, 165, 153, 160, 151, 153, 151, 155, 151, 151, 151, 143, 28.7770 + 149, 185, 204, 216, 221, 222, 227, 227, 227, 218, 197, 131, 91, 114, 112, 119, 28.7771 + 112, 114, 110, 123, 112, 110, 117, 121, 119, 121, 114, 127, 129, 133, 131, 129, 28.7772 + 110, 55, 23, 29, 32, 29, 35, 20, 32, 20, 29, 38, 32, 32, 41, 46, 28.7773 + 158, 158, 162, 156, 158, 160, 160, 158, 162, 165, 158, 164, 172, 176, 172, 171, 28.7774 + 174, 171, 174, 167, 160, 160, 158, 158, 162, 162, 160, 158, 155, 139, 129, 101, 28.7775 + 94, 79, 74, 84, 91, 84, 94, 91, 94, 105, 103, 105, 105, 108, 91, 94, 28.7776 + 96, 86, 94, 96, 98, 103, 114, 105, 114, 110, 119, 117, 114, 114, 112, 117, 28.7777 + 121, 121, 127, 117, 123, 127, 125, 125, 127, 119, 121, 127, 121, 127, 123, 121, 28.7778 + 125, 123, 125, 129, 129, 127, 129, 129, 127, 125, 129, 125, 125, 119, 125, 123, 28.7779 + 121, 127, 131, 121, 123, 131, 125, 117, 123, 114, 117, 119, 121, 117, 121, 123, 28.7780 + 119, 114, 119, 121, 121, 117, 121, 119, 121, 125, 129, 123, 127, 129, 123, 121, 28.7781 + 129, 125, 131, 125, 129, 119, 119, 123, 127, 123, 123, 121, 127, 125, 112, 123, 28.7782 + 119, 119, 123, 121, 123, 121, 121, 127, 119, 125, 114, 112, 117, 112, 112, 105, 28.7783 + 101, 101, 98, 101, 96, 114, 131, 127, 133, 145, 147, 153, 158, 160, 162, 164, 28.7784 + 164, 165, 164, 162, 164, 160, 164, 162, 160, 165, 160, 160, 160, 162, 160, 158, 28.7785 + 156, 156, 160, 158, 160, 158, 160, 158, 156, 158, 158, 156, 158, 153, 147, 145, 28.7786 + 143, 153, 190, 209, 215, 222, 225, 228, 230, 227, 213, 193, 131, 101, 94, 108, 28.7787 + 114, 121, 114, 117, 114, 127, 125, 121, 125, 117, 123, 127, 127, 131, 135, 117, 28.7788 + 74, 23, 35, 15, 49, 32, 29, 23, 29, 32, 41, 35, 32, 29, 35, 46, 28.7789 + 164, 164, 160, 158, 164, 165, 162, 162, 164, 162, 165, 169, 171, 167, 171, 171, 28.7790 + 171, 169, 174, 164, 164, 162, 160, 160, 164, 162, 164, 155, 147, 129, 117, 103, 28.7791 + 84, 66, 86, 89, 81, 89, 84, 96, 94, 98, 96, 103, 91, 96, 96, 94, 28.7792 + 94, 96, 94, 94, 105, 103, 98, 110, 105, 108, 119, 119, 119, 123, 112, 127, 28.7793 + 123, 123, 125, 127, 123, 123, 125, 125, 121, 127, 123, 121, 119, 121, 121, 129, 28.7794 + 129, 129, 121, 119, 123, 127, 129, 129, 119, 125, 125, 125, 119, 127, 123, 125, 28.7795 + 127, 125, 133, 123, 119, 117, 119, 114, 119, 123, 117, 110, 119, 121, 121, 121, 28.7796 + 119, 129, 119, 117, 112, 123, 117, 121, 117, 121, 127, 123, 127, 131, 127, 125, 28.7797 + 125, 131, 131, 127, 123, 131, 117, 121, 127, 125, 121, 123, 125, 125, 117, 123, 28.7798 + 119, 125, 117, 119, 125, 121, 127, 123, 123, 123, 119, 117, 119, 112, 117, 110, 28.7799 + 110, 112, 105, 101, 108, 112, 121, 125, 131, 139, 145, 155, 151, 156, 160, 160, 28.7800 + 156, 167, 162, 162, 164, 160, 162, 158, 164, 162, 160, 160, 160, 164, 156, 158, 28.7801 + 158, 158, 156, 158, 156, 156, 155, 158, 156, 153, 156, 156, 155, 147, 153, 145, 28.7802 + 143, 143, 177, 209, 215, 222, 224, 228, 228, 228, 219, 203, 147, 103, 98, 101, 28.7803 + 96, 110, 114, 114, 114, 119, 121, 121, 119, 129, 123, 131, 129, 127, 110, 60, 28.7804 + 26, 20, 23, 23, 26, 46, 35, 32, 46, 20, 32, 29, 41, 38, 49, 35, 28.7805 + 160, 160, 158, 164, 160, 158, 165, 165, 169, 167, 167, 172, 169, 169, 171, 174, 28.7806 + 167, 171, 164, 162, 156, 156, 160, 162, 164, 162, 160, 156, 147, 131, 129, 96, 28.7807 + 89, 79, 71, 76, 96, 89, 91, 89, 86, 98, 98, 96, 96, 94, 96, 91, 28.7808 + 91, 103, 101, 98, 103, 103, 114, 101, 114, 110, 114, 114, 114, 110, 121, 117, 28.7809 + 117, 121, 121, 123, 123, 119, 121, 125, 123, 117, 117, 119, 117, 123, 129, 123, 28.7810 + 114, 117, 123, 123, 125, 119, 117, 121, 117, 127, 129, 123, 121, 123, 117, 127, 28.7811 + 121, 123, 123, 125, 114, 121, 114, 123, 127, 121, 119, 121, 123, 123, 121, 123, 28.7812 + 123, 123, 121, 114, 123, 119, 110, 121, 117, 117, 125, 127, 127, 125, 129, 125, 28.7813 + 129, 127, 131, 123, 125, 123, 119, 121, 125, 119, 119, 119, 121, 123, 117, 114, 28.7814 + 117, 121, 121, 123, 117, 119, 121, 121, 125, 114, 121, 119, 110, 110, 114, 108, 28.7815 + 112, 110, 101, 101, 105, 114, 117, 129, 135, 137, 143, 149, 158, 156, 156, 153, 28.7816 + 158, 164, 162, 160, 160, 162, 162, 162, 162, 158, 158, 155, 158, 160, 156, 164, 28.7817 + 158, 158, 158, 153, 156, 158, 153, 158, 158, 155, 151, 151, 151, 153, 155, 141, 28.7818 + 143, 145, 149, 193, 210, 219, 225, 228, 227, 228, 227, 212, 189, 127, 94, 98, 28.7819 + 103, 112, 108, 108, 117, 119, 121, 129, 127, 127, 121, 133, 123, 101, 60, 18, 28.7820 + 23, 23, 35, 35, 43, 46, 43, 43, 35, 32, 29, 32, 35, 49, 41, 32, 28.7821 + 160, 164, 167, 160, 164, 160, 160, 164, 167, 165, 167, 171, 171, 167, 171, 165, 28.7822 + 165, 167, 165, 165, 158, 158, 165, 164, 164, 162, 165, 153, 141, 139, 119, 105, 28.7823 + 81, 63, 79, 76, 76, 81, 91, 91, 103, 94, 94, 96, 96, 91, 98, 96, 28.7824 + 96, 96, 89, 96, 98, 103, 103, 110, 105, 112, 121, 114, 112, 110, 114, 121, 28.7825 + 117, 117, 121, 123, 119, 121, 121, 123, 119, 119, 117, 121, 125, 117, 119, 125, 28.7826 + 125, 119, 127, 125, 121, 121, 125, 125, 125, 117, 121, 121, 129, 119, 114, 121, 28.7827 + 127, 123, 123, 119, 117, 119, 121, 119, 117, 119, 112, 117, 119, 110, 119, 121, 28.7828 + 123, 119, 119, 112, 112, 112, 121, 114, 121, 121, 121, 119, 119, 121, 127, 127, 28.7829 + 133, 123, 129, 125, 123, 125, 127, 125, 123, 121, 123, 119, 123, 121, 119, 123, 28.7830 + 123, 119, 119, 119, 123, 121, 117, 121, 125, 119, 119, 112, 117, 112, 127, 125, 28.7831 + 114, 105, 96, 96, 101, 105, 121, 121, 133, 139, 143, 149, 151, 155, 155, 158, 28.7832 + 158, 162, 156, 160, 158, 162, 156, 160, 155, 164, 156, 156, 158, 156, 153, 155, 28.7833 + 155, 160, 156, 158, 155, 155, 153, 155, 160, 155, 153, 155, 156, 147, 147, 143, 28.7834 + 143, 137, 141, 167, 204, 216, 222, 227, 227, 228, 230, 224, 210, 165, 98, 91, 28.7835 + 101, 105, 108, 110, 108, 117, 114, 123, 121, 133, 135, 125, 105, 66, 23, 32, 28.7836 + 29, 20, 23, 32, 29, 35, 43, 55, 46, 41, 38, 32, 35, 23, 29, 38, 28.7837 + 167, 171, 167, 158, 164, 167, 162, 164, 169, 167, 174, 167, 167, 165, 162, 165, 28.7838 + 167, 169, 165, 156, 160, 160, 164, 164, 164, 164, 158, 155, 145, 131, 117, 91, 28.7839 + 84, 71, 66, 81, 81, 96, 101, 96, 98, 94, 91, 91, 94, 98, 94, 91, 28.7840 + 91, 98, 105, 98, 96, 114, 110, 112, 105, 117, 114, 121, 119, 123, 117, 119, 28.7841 + 123, 112, 117, 123, 125, 119, 121, 121, 121, 119, 114, 117, 117, 114, 121, 114, 28.7842 + 127, 127, 123, 117, 119, 129, 117, 121, 119, 119, 129, 121, 129, 125, 123, 119, 28.7843 + 127, 129, 119, 121, 119, 119, 121, 117, 129, 108, 114, 112, 119, 123, 110, 112, 28.7844 + 117, 117, 119, 117, 110, 114, 121, 114, 119, 112, 121, 123, 121, 125, 129, 125, 28.7845 + 131, 125, 123, 125, 123, 119, 119, 123, 123, 123, 119, 123, 121, 114, 123, 123, 28.7846 + 125, 123, 121, 125, 121, 117, 121, 125, 121, 119, 117, 110, 117, 108, 114, 114, 28.7847 + 105, 110, 110, 98, 101, 103, 121, 123, 129, 135, 143, 147, 149, 149, 153, 153, 28.7848 + 153, 164, 156, 165, 158, 155, 162, 155, 158, 151, 158, 155, 160, 156, 151, 153, 28.7849 + 156, 158, 158, 158, 158, 155, 160, 153, 151, 155, 155, 151, 151, 149, 143, 147, 28.7850 + 143, 145, 141, 149, 190, 212, 221, 225, 227, 227, 230, 227, 218, 201, 137, 94, 28.7851 + 103, 114, 103, 108, 108, 114, 119, 123, 125, 127, 129, 108, 63, 32, 18, 32, 28.7852 + 20, 26, 26, 26, 32, 38, 32, 29, 35, 35, 32, 26, 41, 26, 29, 29, 28.7853 + 162, 158, 164, 160, 156, 160, 164, 169, 172, 174, 171, 165, 162, 169, 158, 160, 28.7854 + 160, 160, 160, 165, 164, 158, 164, 162, 160, 164, 162, 153, 141, 133, 121, 96, 28.7855 + 81, 76, 66, 79, 74, 91, 94, 91, 94, 101, 94, 94, 96, 101, 86, 105, 28.7856 + 91, 101, 98, 94, 96, 103, 103, 110, 105, 114, 117, 112, 114, 117, 119, 125, 28.7857 + 119, 112, 117, 125, 114, 125, 127, 117, 117, 119, 123, 121, 121, 121, 131, 127, 28.7858 + 117, 117, 119, 125, 117, 125, 121, 123, 125, 121, 121, 125, 121, 119, 119, 127, 28.7859 + 125, 125, 121, 119, 119, 121, 131, 123, 117, 117, 123, 121, 119, 121, 112, 114, 28.7860 + 114, 117, 112, 114, 110, 114, 112, 112, 114, 112, 121, 125, 125, 121, 129, 127, 28.7861 + 127, 131, 125, 123, 117, 125, 125, 123, 114, 121, 129, 137, 119, 121, 129, 129, 28.7862 + 121, 123, 121, 117, 119, 125, 127, 125, 121, 123, 117, 117, 110, 117, 108, 112, 28.7863 + 110, 119, 103, 103, 105, 108, 112, 114, 133, 129, 141, 143, 147, 149, 151, 155, 28.7864 + 153, 151, 155, 160, 162, 155, 158, 158, 153, 156, 158, 155, 153, 155, 156, 155, 28.7865 + 155, 155, 156, 155, 156, 158, 156, 153, 153, 147, 155, 147, 149, 153, 141, 147, 28.7866 + 145, 137, 139, 141, 169, 204, 216, 224, 227, 228, 228, 230, 224, 210, 171, 105, 28.7867 + 98, 105, 98, 103, 105, 103, 110, 119, 133, 129, 108, 74, 26, 23, 20, 20, 28.7868 + 32, 23, 35, 46, 41, 49, 41, 38, 35, 29, 38, 32, 32, 26, 29, 15, 28.7869 + 164, 164, 165, 167, 162, 164, 164, 172, 177, 172, 169, 160, 158, 162, 156, 156, 28.7870 + 155, 156, 156, 164, 165, 164, 158, 160, 165, 164, 164, 153, 149, 127, 119, 98, 28.7871 + 89, 74, 79, 79, 79, 91, 94, 89, 98, 91, 101, 94, 91, 98, 98, 96, 28.7872 + 96, 101, 94, 91, 103, 96, 101, 108, 110, 114, 114, 117, 117, 123, 127, 117, 28.7873 + 125, 119, 123, 117, 117, 119, 119, 119, 117, 121, 121, 119, 119, 123, 125, 121, 28.7874 + 123, 117, 121, 121, 121, 123, 121, 127, 123, 125, 125, 125, 121, 123, 121, 119, 28.7875 + 125, 129, 119, 125, 117, 121, 127, 125, 127, 121, 117, 117, 114, 114, 123, 127, 28.7876 + 147, 127, 143, 119, 125, 114, 112, 112, 114, 112, 112, 123, 114, 112, 119, 123, 28.7877 + 119, 119, 117, 127, 125, 125, 125, 121, 117, 123, 127, 127, 123, 119, 125, 121, 28.7878 + 121, 123, 129, 121, 123, 119, 121, 119, 127, 117, 117, 119, 108, 119, 103, 112, 28.7879 + 114, 110, 105, 98, 103, 103, 105, 123, 131, 137, 135, 143, 143, 147, 149, 153, 28.7880 + 153, 153, 158, 156, 158, 162, 158, 155, 153, 158, 153, 153, 156, 155, 160, 156, 28.7881 + 158, 155, 153, 156, 158, 153, 151, 155, 151, 147, 143, 145, 145, 141, 145, 145, 28.7882 + 145, 141, 141, 145, 147, 189, 212, 218, 222, 228, 227, 230, 228, 218, 204, 139, 28.7883 + 94, 96, 103, 105, 110, 108, 119, 119, 129, 103, 66, 35, 23, 20, 32, 20, 28.7884 + 35, 38, 41, 46, 46, 49, 38, 43, 38, 35, 38, 23, 20, 29, 32, 20, 28.7885 + 167, 160, 167, 165, 162, 164, 167, 171, 169, 167, 169, 155, 155, 156, 153, 153, 28.7886 + 153, 153, 160, 164, 169, 167, 164, 158, 165, 162, 160, 155, 151, 139, 119, 96, 28.7887 + 79, 76, 71, 86, 76, 81, 96, 103, 96, 103, 96, 94, 98, 89, 98, 94, 28.7888 + 96, 96, 96, 94, 114, 108, 114, 112, 108, 121, 112, 117, 114, 123, 117, 117, 28.7889 + 112, 114, 117, 117, 119, 114, 119, 117, 114, 123, 123, 123, 119, 119, 121, 121, 28.7890 + 125, 125, 121, 121, 123, 149, 123, 127, 123, 125, 125, 119, 127, 119, 129, 114, 28.7891 + 123, 139, 125, 114, 125, 117, 121, 123, 129, 143, 141, 139, 133, 164, 153, 197, 28.7892 + 164, 197, 171, 189, 176, 195, 171, 179, 139, 125, 110, 114, 110, 114, 114, 121, 28.7893 + 114, 125, 119, 121, 119, 119, 112, 121, 119, 131, 129, 121, 123, 119, 123, 121, 28.7894 + 121, 121, 119, 121, 119, 127, 121, 121, 117, 119, 121, 112, 112, 110, 112, 103, 28.7895 + 117, 101, 108, 101, 103, 119, 112, 125, 129, 133, 139, 141, 143, 149, 143, 151, 28.7896 + 151, 153, 155, 156, 156, 160, 158, 158, 155, 155, 151, 153, 158, 153, 158, 155, 28.7897 + 156, 158, 153, 156, 149, 155, 149, 149, 147, 147, 153, 145, 143, 141, 143, 143, 28.7898 + 135, 145, 145, 143, 139, 160, 200, 213, 221, 227, 227, 230, 230, 225, 213, 181, 28.7899 + 108, 98, 103, 105, 114, 114, 127, 123, 101, 79, 29, 23, 26, 38, 26, 23, 28.7900 + 29, 32, 38, 49, 43, 43, 41, 43, 55, 20, 35, 43, 26, 29, 35, 26, 28.7901 + 165, 164, 164, 160, 162, 165, 172, 174, 176, 167, 162, 153, 149, 147, 149, 153, 28.7902 + 147, 155, 164, 167, 165, 167, 165, 158, 167, 165, 164, 155, 153, 133, 127, 101, 28.7903 + 81, 79, 68, 84, 84, 76, 81, 89, 94, 98, 98, 98, 94, 98, 103, 94, 28.7904 + 91, 94, 96, 96, 110, 108, 103, 103, 103, 112, 117, 117, 119, 119, 117, 119, 28.7905 + 121, 121, 119, 123, 123, 121, 112, 121, 117, 121, 125, 125, 123, 129, 121, 117, 28.7906 + 121, 121, 119, 121, 121, 121, 117, 127, 123, 131, 119, 117, 117, 123, 121, 121, 28.7907 + 121, 121, 125, 127, 129, 117, 162, 133, 162, 149, 147, 160, 171, 177, 179, 182, 28.7908 + 185, 189, 177, 190, 195, 187, 201, 182, 207, 195, 172, 171, 127, 119, 112, 114, 28.7909 + 112, 119, 114, 123, 123, 119, 125, 125, 121, 131, 131, 123, 129, 127, 129, 119, 28.7910 + 123, 114, 123, 121, 121, 129, 121, 117, 127, 119, 117, 112, 117, 114, 103, 105, 28.7911 + 110, 108, 108, 101, 101, 105, 114, 117, 123, 131, 143, 141, 143, 147, 147, 145, 28.7912 + 153, 147, 156, 158, 160, 156, 155, 155, 155, 155, 153, 153, 153, 156, 155, 156, 28.7913 + 156, 160, 155, 151, 151, 155, 151, 147, 145, 141, 155, 147, 147, 147, 147, 141, 28.7914 + 145, 149, 143, 141, 141, 143, 181, 209, 216, 224, 227, 228, 230, 228, 221, 206, 28.7915 + 156, 101, 103, 108, 110, 123, 121, 108, 68, 20, 32, 18, 23, 29, 23, 29, 28.7916 + 38, 49, 35, 49, 43, 46, 43, 35, 41, 29, 20, 29, 29, 20, 26, 32, 28.7917 + 164, 165, 160, 162, 160, 169, 172, 177, 171, 164, 160, 151, 145, 143, 141, 145, 28.7918 + 141, 153, 162, 165, 167, 160, 165, 162, 167, 167, 162, 158, 149, 129, 123, 103, 28.7919 + 76, 66, 84, 81, 84, 89, 89, 86, 91, 98, 98, 96, 94, 96, 96, 98, 28.7920 + 94, 94, 94, 103, 103, 108, 105, 101, 110, 114, 117, 119, 117, 112, 121, 117, 28.7921 + 129, 119, 119, 121, 119, 129, 119, 123, 123, 123, 123, 131, 121, 125, 119, 123, 28.7922 + 125, 121, 119, 112, 117, 119, 129, 121, 141, 123, 119, 133, 117, 117, 119, 110, 28.7923 + 117, 129, 155, 158, 153, 162, 169, 160, 155, 147, 167, 172, 187, 165, 189, 174, 28.7924 + 190, 184, 198, 177, 197, 187, 190, 198, 176, 197, 200, 203, 201, 182, 155, 131, 28.7925 + 112, 108, 103, 119, 112, 119, 119, 117, 123, 131, 129, 127, 125, 125, 133, 121, 28.7926 + 123, 119, 117, 119, 117, 114, 119, 121, 119, 121, 114, 110, 110, 114, 117, 103, 28.7927 + 108, 103, 105, 98, 101, 108, 114, 119, 127, 141, 139, 141, 145, 141, 143, 143, 28.7928 + 145, 151, 145, 149, 153, 156, 155, 155, 153, 156, 156, 155, 155, 155, 160, 151, 28.7929 + 158, 156, 149, 155, 156, 145, 143, 151, 141, 143, 141, 143, 139, 147, 141, 141, 28.7930 + 143, 141, 141, 141, 141, 149, 153, 195, 212, 221, 224, 228, 228, 233, 228, 216, 28.7931 + 192, 131, 103, 117, 129, 129, 98, 57, 29, 15, 23, 23, 26, 23, 29, 29, 28.7932 + 41, 32, 41, 41, 43, 49, 43, 43, 23, 32, 20, 23, 26, 29, 29, 29, 28.7933 + 162, 162, 158, 165, 158, 171, 174, 174, 167, 160, 155, 143, 141, 135, 145, 131, 28.7934 + 147, 153, 164, 165, 169, 164, 165, 162, 167, 164, 167, 153, 147, 133, 119, 101, 28.7935 + 86, 74, 71, 76, 86, 76, 91, 94, 89, 96, 101, 96, 96, 108, 91, 86, 28.7936 + 96, 94, 84, 91, 101, 98, 108, 110, 112, 112, 112, 121, 110, 117, 114, 119, 28.7937 + 123, 125, 125, 114, 119, 121, 114, 129, 119, 125, 123, 127, 121, 127, 125, 131, 28.7938 + 125, 123, 114, 117, 119, 121, 119, 125, 123, 123, 121, 123, 121, 117, 117, 141, 28.7939 + 143, 151, 165, 164, 156, 139, 155, 162, 151, 158, 182, 169, 193, 169, 184, 172, 28.7940 + 195, 181, 197, 184, 197, 193, 169, 187, 187, 203, 185, 197, 201, 203, 203, 198, 28.7941 + 189, 147, 117, 110, 114, 110, 114, 110, 123, 123, 123, 119, 117, 125, 125, 114, 28.7942 + 121, 125, 127, 127, 114, 117, 121, 117, 117, 108, 112, 114, 110, 121, 114, 105, 28.7943 + 108, 108, 103, 103, 98, 101, 117, 123, 131, 139, 137, 156, 141, 143, 141, 147, 28.7944 + 143, 153, 145, 155, 151, 156, 151, 156, 156, 151, 153, 151, 158, 153, 153, 153, 28.7945 + 151, 153, 147, 153, 143, 147, 143, 145, 149, 137, 137, 141, 145, 141, 141, 149, 28.7946 + 141, 147, 145, 143, 145, 143, 147, 172, 203, 215, 222, 227, 228, 233, 233, 225, 28.7947 + 212, 174, 117, 112, 117, 114, 63, 32, 23, 20, 29, 29, 26, 32, 20, 23, 28.7948 + 38, 41, 32, 46, 41, 38, 41, 35, 29, 26, 35, 29, 23, 32, 20, 26, 28.7949 + 160, 162, 160, 164, 169, 169, 174, 169, 162, 156, 147, 143, 125, 121, 129, 135, 28.7950 + 143, 156, 160, 165, 167, 167, 165, 165, 164, 164, 162, 160, 143, 135, 114, 103, 28.7951 + 84, 66, 79, 71, 89, 81, 96, 96, 91, 101, 96, 81, 94, 101, 94, 89, 28.7952 + 103, 91, 96, 101, 103, 105, 119, 112, 108, 117, 112, 123, 117, 119, 112, 117, 28.7953 + 114, 123, 127, 119, 121, 114, 121, 123, 125, 141, 121, 121, 123, 125, 125, 110, 28.7954 + 121, 117, 123, 112, 123, 121, 114, 123, 121, 117, 119, 121, 117, 129, 141, 158, 28.7955 + 139, 145, 151, 169, 139, 141, 139, 155, 153, 162, 156, 182, 167, 167, 181, 176, 28.7956 + 187, 182, 189, 198, 184, 189, 176, 193, 174, 195, 198, 184, 198, 206, 189, 201, 28.7957 + 203, 203, 192, 135, 110, 110, 105, 110, 110, 123, 121, 125, 119, 119, 123, 127, 28.7958 + 119, 121, 117, 123, 121, 119, 119, 110, 117, 114, 114, 112, 112, 103, 112, 105, 28.7959 + 105, 112, 105, 98, 96, 101, 119, 119, 133, 137, 141, 143, 147, 141, 145, 143, 28.7960 + 149, 145, 149, 149, 155, 155, 156, 160, 156, 156, 149, 151, 153, 149, 151, 147, 28.7961 + 143, 151, 149, 147, 147, 147, 139, 141, 149, 149, 139, 141, 139, 135, 137, 141, 28.7962 + 145, 139, 141, 143, 141, 141, 135, 137, 187, 210, 221, 227, 228, 228, 233, 233, 28.7963 + 224, 207, 151, 121, 108, 68, 29, 15, 35, 26, 29, 41, 32, 41, 29, 46, 28.7964 + 43, 43, 32, 29, 43, 35, 38, 18, 38, 35, 29, 35, 29, 26, 32, 29, 28.7965 + 162, 165, 160, 164, 171, 176, 172, 167, 158, 153, 143, 131, 121, 119, 121, 137, 28.7966 + 147, 156, 162, 169, 171, 167, 165, 169, 169, 167, 164, 164, 143, 133, 125, 98, 28.7967 + 81, 66, 63, 74, 76, 81, 86, 84, 98, 91, 101, 94, 91, 103, 98, 96, 28.7968 + 98, 94, 98, 91, 98, 103, 119, 108, 114, 112, 114, 114, 119, 110, 123, 112, 28.7969 + 119, 119, 117, 117, 121, 123, 125, 119, 121, 114, 125, 117, 125, 127, 125, 121, 28.7970 + 123, 121, 119, 125, 125, 119, 121, 123, 127, 129, 137, 133, 125, 141, 156, 151, 28.7971 + 137, 149, 162, 147, 156, 153, 156, 151, 141, 164, 151, 165, 164, 182, 160, 184, 28.7972 + 156, 192, 189, 195, 179, 200, 182, 177, 197, 182, 193, 198, 179, 198, 206, 193, 28.7973 + 200, 210, 210, 201, 177, 123, 103, 108, 117, 112, 121, 121, 119, 123, 125, 114, 28.7974 + 123, 119, 114, 121, 119, 117, 112, 117, 117, 117, 117, 110, 112, 110, 108, 103, 28.7975 + 110, 98, 108, 101, 108, 101, 119, 121, 135, 137, 139, 141, 145, 147, 139, 143, 28.7976 + 147, 149, 149, 149, 151, 149, 153, 151, 156, 155, 153, 149, 147, 149, 147, 151, 28.7977 + 139, 153, 147, 147, 141, 145, 141, 145, 143, 141, 145, 133, 141, 137, 137, 141, 28.7978 + 139, 143, 141, 141, 139, 139, 137, 139, 155, 201, 216, 225, 227, 230, 231, 233, 28.7979 + 231, 219, 190, 121, 71, 20, 20, 20, 23, 15, 41, 23, 32, 43, 35, 35, 28.7980 + 35, 38, 38, 41, 35, 29, 23, 46, 41, 35, 29, 20, 41, 20, 29, 26, 28.7981 + 162, 165, 167, 164, 169, 177, 172, 164, 156, 153, 141, 119, 112, 112, 117, 137, 28.7982 + 153, 156, 162, 165, 167, 171, 164, 165, 167, 167, 160, 155, 151, 129, 121, 96, 28.7983 + 76, 60, 63, 74, 76, 89, 81, 81, 86, 84, 91, 98, 91, 96, 96, 89, 28.7984 + 81, 98, 103, 94, 96, 103, 105, 114, 108, 119, 112, 117, 117, 112, 112, 119, 28.7985 + 119, 110, 121, 127, 114, 125, 119, 121, 121, 123, 121, 117, 123, 123, 117, 125, 28.7986 + 117, 108, 112, 117, 112, 139, 156, 151, 153, 141, 123, 110, 123, 129, 147, 143, 28.7987 + 149, 158, 145, 155, 147, 147, 169, 147, 158, 162, 155, 174, 149, 172, 177, 177, 28.7988 + 176, 169, 190, 185, 184, 181, 195, 179, 192, 201, 184, 198, 204, 187, 201, 204, 28.7989 + 204, 204, 201, 210, 204, 201, 141, 108, 103, 110, 121, 117, 121, 121, 125, 114, 28.7990 + 112, 112, 119, 119, 119, 121, 117, 117, 117, 110, 110, 105, 101, 103, 103, 98, 28.7991 + 103, 98, 96, 101, 103, 110, 110, 123, 125, 131, 145, 147, 145, 139, 141, 143, 28.7992 + 143, 151, 145, 151, 147, 145, 151, 153, 149, 155, 153, 149, 145, 149, 153, 149, 28.7993 + 141, 143, 147, 143, 151, 143, 139, 137, 147, 141, 143, 141, 139, 139, 131, 137, 28.7994 + 139, 135, 141, 135, 139, 137, 137, 135, 135, 177, 210, 219, 225, 228, 230, 231, 28.7995 + 233, 228, 212, 135, 23, 26, 23, 15, 38, 26, 38, 23, 41, 43, 32, 43, 28.7996 + 46, 32, 55, 49, 35, 38, 26, 29, 49, 38, 26, 32, 20, 32, 26, 23, 28.7997 + 160, 169, 172, 172, 172, 171, 165, 156, 151, 139, 121, 105, 101, 105, 121, 133, 28.7998 + 151, 158, 164, 172, 165, 171, 169, 167, 162, 167, 162, 160, 149, 139, 125, 98, 28.7999 + 74, 63, 71, 76, 94, 84, 89, 94, 101, 89, 96, 89, 89, 96, 89, 94, 28.8000 + 89, 101, 98, 103, 98, 98, 105, 105, 114, 123, 108, 114, 112, 119, 110, 110, 28.8001 + 108, 112, 125, 114, 121, 117, 119, 121, 117, 125, 119, 123, 119, 119, 114, 117, 28.8002 + 114, 112, 181, 158, 153, 160, 153, 147, 127, 129, 119, 121, 119, 121, 127, 141, 28.8003 + 145, 139, 139, 133, 141, 143, 162, 149, 158, 155, 164, 153, 172, 151, 185, 177, 28.8004 + 181, 177, 184, 162, 184, 189, 184, 195, 179, 198, 201, 189, 197, 200, 200, 197, 28.8005 + 206, 210, 198, 201, 206, 210, 204, 174, 110, 103, 121, 105, 117, 112, 112, 119, 28.8006 + 112, 121, 121, 123, 117, 114, 114, 112, 119, 108, 105, 105, 103, 112, 105, 105, 28.8007 + 96, 98, 91, 89, 98, 103, 108, 121, 125, 141, 139, 143, 143, 147, 137, 143, 28.8008 + 141, 143, 147, 145, 145, 149, 156, 158, 149, 155, 151, 149, 151, 143, 147, 141, 28.8009 + 143, 143, 145, 147, 145, 151, 141, 145, 139, 139, 141, 141, 139, 133, 141, 139, 28.8010 + 135, 139, 139, 141, 143, 145, 139, 139, 137, 147, 200, 212, 224, 225, 228, 233, 28.8011 + 236, 231, 221, 105, 12, 23, 20, 18, 29, 32, 41, 20, 41, 35, 32, 29, 28.8012 + 35, 41, 38, 29, 26, 32, 35, 81, 41, 41, 32, 46, 46, 29, 46, 35, 28.8013 + 162, 165, 174, 174, 174, 167, 158, 149, 145, 129, 108, 89, 89, 108, 125, 139, 28.8014 + 153, 160, 165, 169, 167, 164, 169, 165, 167, 167, 165, 158, 147, 131, 121, 105, 28.8015 + 74, 71, 63, 66, 84, 74, 89, 84, 86, 91, 91, 76, 86, 86, 91, 91, 28.8016 + 96, 89, 94, 96, 105, 112, 101, 112, 108, 112, 103, 121, 114, 117, 112, 110, 28.8017 + 114, 112, 114, 112, 117, 121, 114, 117, 114, 119, 121, 119, 117, 123, 112, 121, 28.8018 + 119, 123, 129, 147, 141, 137, 135, 117, 125, 117, 114, 117, 121, 127, 137, 147, 28.8019 + 137, 135, 121, 139, 139, 137, 145, 145, 155, 165, 171, 149, 167, 171, 174, 177, 28.8020 + 171, 162, 189, 184, 179, 192, 177, 190, 200, 193, 185, 203, 193, 185, 207, 203, 28.8021 + 189, 203, 209, 203, 203, 204, 215, 207, 195, 149, 114, 114, 105, 105, 117, 114, 28.8022 + 114, 112, 119, 114, 117, 114, 112, 114, 114, 114, 110, 105, 103, 103, 94, 101, 28.8023 + 108, 91, 91, 89, 96, 108, 112, 123, 133, 133, 141, 145, 145, 145, 143, 145, 28.8024 + 141, 145, 147, 151, 147, 145, 149, 151, 145, 153, 153, 147, 147, 145, 143, 139, 28.8025 + 137, 145, 145, 145, 143, 151, 145, 139, 139, 135, 145, 143, 141, 137, 139, 141, 28.8026 + 139, 143, 143, 139, 143, 143, 137, 141, 143, 139, 172, 203, 219, 225, 231, 233, 28.8027 + 234, 233, 204, 32, 18, 23, 26, 32, 20, 32, 35, 41, 43, 35, 32, 38, 28.8028 + 38, 38, 29, 26, 29, 35, 46, 26, 29, 29, 23, 26, 26, 23, 46, 46, 28.8029 + 169, 171, 177, 176, 171, 164, 160, 149, 139, 112, 94, 74, 74, 105, 121, 139, 28.8030 + 153, 164, 167, 167, 172, 165, 167, 165, 164, 167, 169, 158, 151, 141, 119, 98, 28.8031 + 86, 71, 60, 60, 63, 74, 89, 91, 89, 91, 79, 84, 91, 91, 89, 94, 28.8032 + 91, 96, 98, 96, 101, 103, 91, 101, 114, 108, 112, 103, 105, 112, 112, 108, 28.8033 + 119, 112, 117, 117, 110, 114, 121, 119, 117, 114, 117, 114, 117, 112, 114, 181, 28.8034 + 139, 105, 125, 121, 121, 125, 121, 114, 117, 119, 125, 117, 139, 131, 145, 137, 28.8035 + 131, 137, 133, 145, 135, 151, 141, 149, 153, 155, 141, 162, 167, 167, 169, 153, 28.8036 + 174, 155, 182, 193, 172, 181, 193, 201, 198, 200, 192, 185, 200, 203, 192, 198, 28.8037 + 209, 193, 197, 203, 209, 201, 200, 204, 212, 206, 172, 108, 103, 103, 108, 108, 28.8038 + 112, 112, 114, 112, 108, 117, 110, 108, 112, 108, 114, 112, 103, 110, 103, 105, 28.8039 + 96, 103, 94, 91, 101, 103, 110, 123, 129, 131, 141, 147, 147, 143, 143, 145, 28.8040 + 141, 145, 143, 143, 145, 141, 147, 145, 147, 153, 149, 153, 149, 139, 137, 145, 28.8041 + 139, 137, 139, 147, 143, 143, 141, 143, 143, 147, 141, 141, 139, 135, 137, 139, 28.8042 + 135, 141, 147, 143, 145, 153, 145, 137, 145, 137, 145, 184, 213, 224, 231, 233, 28.8043 + 230, 215, 121, 12, 26, 12, 15, 23, 41, 23, 38, 38, 38, 29, 29, 52, 28.8044 + 38, 32, 29, 26, 26, 35, 41, 46, 32, 20, 29, 32, 32, 43, 41, 32, 28.8045 + 171, 174, 181, 171, 167, 162, 155, 145, 129, 110, 84, 68, 74, 98, 127, 141, 28.8046 + 149, 165, 169, 167, 171, 165, 171, 162, 164, 167, 160, 155, 147, 135, 119, 105, 28.8047 + 74, 63, 55, 74, 74, 81, 81, 86, 84, 89, 91, 86, 84, 91, 89, 105, 28.8048 + 91, 89, 108, 96, 89, 94, 94, 101, 101, 110, 112, 108, 123, 105, 103, 114, 28.8049 + 114, 117, 117, 123, 117, 114, 112, 112, 123, 121, 125, 114, 114, 119, 139, 174, 28.8050 + 79, 98, 121, 123, 121, 108, 121, 112, 123, 121, 117, 121, 125, 139, 133, 129, 28.8051 + 139, 127, 135, 137, 141, 131, 141, 139, 131, 156, 149, 160, 158, 158, 160, 160, 28.8052 + 172, 197, 174, 171, 197, 181, 197, 201, 187, 197, 201, 200, 185, 206, 204, 185, 28.8053 + 192, 204, 206, 198, 206, 207, 207, 204, 203, 203, 206, 198, 129, 101, 103, 103, 28.8054 + 110, 112, 108, 108, 114, 108, 108, 112, 110, 112, 108, 105, 103, 96, 98, 101, 28.8055 + 101, 101, 91, 91, 91, 98, 108, 125, 133, 135, 143, 147, 151, 155, 149, 143, 28.8056 + 147, 141, 147, 151, 143, 143, 145, 143, 149, 145, 149, 153, 153, 145, 145, 139, 28.8057 + 135, 141, 137, 139, 145, 143, 147, 141, 137, 143, 141, 141, 141, 139, 139, 139, 28.8058 + 135, 143, 143, 143, 143, 147, 141, 139, 145, 147, 143, 151, 209, 219, 230, 228, 28.8059 + 216, 158, 29, 32, 18, 29, 26, 20, 29, 23, 43, 52, 35, 52, 43, 46, 28.8060 + 43, 26, 32, 32, 35, 41, 35, 20, 23, 32, 32, 29, 38, 49, 29, 12, 28.8061 + 171, 169, 174, 167, 165, 153, 149, 137, 123, 103, 63, 55, 71, 103, 127, 139, 28.8062 + 151, 169, 164, 176, 172, 167, 169, 169, 167, 167, 162, 151, 143, 125, 119, 101, 28.8063 + 71, 68, 49, 74, 71, 81, 86, 86, 81, 96, 98, 89, 89, 94, 96, 89, 28.8064 + 96, 94, 91, 91, 91, 103, 101, 103, 108, 112, 105, 108, 105, 108, 110, 108, 28.8065 + 114, 117, 114, 119, 114, 114, 117, 117, 117, 121, 117, 114, 114, 117, 149, 131, 28.8066 + 84, 103, 112, 110, 123, 112, 119, 121, 133, 121, 114, 112, 123, 133, 133, 139, 28.8067 + 131, 123, 141, 129, 139, 139, 143, 129, 141, 151, 155, 153, 139, 169, 147, 181, 28.8068 + 174, 174, 193, 181, 174, 195, 185, 182, 197, 197, 190, 193, 204, 190, 195, 204, 28.8069 + 200, 193, 203, 207, 203, 200, 209, 209, 203, 203, 204, 209, 207, 176, 108, 91, 28.8070 + 101, 101, 91, 101, 112, 110, 101, 110, 110, 103, 105, 110, 108, 103, 108, 98, 28.8071 + 103, 98, 103, 101, 96, 101, 108, 121, 131, 139, 149, 149, 151, 153, 147, 149, 28.8072 + 145, 147, 141, 149, 137, 149, 137, 139, 135, 139, 145, 151, 145, 143, 147, 143, 28.8073 + 137, 141, 137, 143, 139, 145, 141, 139, 139, 145, 137, 143, 141, 141, 135, 137, 28.8074 + 143, 143, 139, 149, 143, 145, 147, 149, 143, 149, 151, 143, 177, 212, 224, 212, 28.8075 + 160, 29, 18, 26, 32, 20, 29, 26, 23, 41, 32, 32, 41, 41, 38, 46, 28.8076 + 23, 29, 26, 35, 41, 35, 29, 26, 23, 23, 38, 41, 55, 55, 18, 6, 28.8077 + 171, 172, 176, 167, 160, 151, 141, 125, 110, 71, 60, 57, 76, 108, 127, 137, 28.8078 + 145, 162, 167, 169, 171, 165, 165, 171, 169, 171, 164, 156, 137, 135, 119, 101, 28.8079 + 63, 68, 43, 63, 71, 68, 89, 86, 91, 103, 101, 101, 89, 94, 89, 89, 28.8080 + 91, 91, 98, 98, 101, 98, 94, 108, 110, 108, 101, 105, 112, 112, 110, 112, 28.8081 + 119, 114, 112, 112, 119, 117, 123, 123, 121, 121, 114, 114, 119, 133, 108, 98, 28.8082 + 110, 101, 110, 114, 119, 110, 110, 127, 114, 121, 114, 117, 129, 135, 137, 141, 28.8083 + 123, 135, 129, 127, 147, 127, 139, 131, 145, 139, 117, 153, 153, 164, 169, 162, 28.8084 + 182, 177, 177, 198, 174, 177, 200, 184, 169, 201, 197, 181, 197, 201, 200, 193, 28.8085 + 209, 204, 193, 206, 209, 212, 206, 203, 207, 209, 207, 209, 212, 210, 185, 110, 28.8086 + 94, 89, 96, 98, 103, 105, 96, 108, 103, 103, 112, 108, 110, 108, 110, 98, 28.8087 + 101, 103, 91, 89, 94, 101, 103, 119, 133, 135, 147, 149, 149, 151, 149, 149, 28.8088 + 147, 141, 143, 137, 135, 137, 137, 141, 129, 137, 139, 145, 149, 145, 145, 139, 28.8089 + 137, 143, 141, 141, 147, 145, 145, 141, 139, 139, 137, 143, 141, 143, 141, 143, 28.8090 + 147, 143, 141, 143, 145, 141, 143, 145, 147, 143, 151, 151, 160, 204, 197, 139, 28.8091 + 29, 18, 29, 26, 35, 29, 29, 29, 35, 32, 38, 29, 41, 43, 38, 23, 28.8092 + 32, 46, 43, 43, 43, 43, 38, 29, 38, 32, 52, 55, 49, 20, 6, 18, 28.8093 + 174, 174, 172, 164, 162, 147, 135, 121, 91, 66, 63, 60, 86, 105, 123, 139, 28.8094 + 153, 164, 167, 167, 176, 167, 167, 169, 162, 162, 165, 155, 143, 135, 112, 96, 28.8095 + 66, 71, 57, 68, 74, 91, 79, 86, 96, 91, 89, 112, 98, 91, 81, 84, 28.8096 + 96, 91, 81, 86, 94, 98, 105, 101, 105, 105, 105, 112, 108, 112, 108, 103, 28.8097 + 119, 110, 105, 112, 114, 110, 121, 114, 121, 110, 114, 110, 119, 149, 101, 108, 28.8098 + 105, 119, 119, 112, 103, 101, 117, 119, 123, 121, 127, 133, 121, 143, 123, 135, 28.8099 + 121, 143, 125, 143, 145, 137, 117, 133, 149, 143, 153, 141, 158, 147, 162, 172, 28.8100 + 167, 189, 169, 181, 187, 185, 185, 200, 200, 182, 189, 206, 201, 195, 203, 209, 28.8101 + 195, 201, 209, 203, 201, 207, 207, 209, 197, 206, 210, 212, 210, 206, 212, 193, 28.8102 + 119, 76, 89, 91, 89, 96, 98, 96, 112, 103, 110, 96, 98, 96, 101, 103, 28.8103 + 110, 98, 94, 91, 89, 96, 103, 123, 129, 143, 143, 151, 153, 153, 151, 147, 28.8104 + 151, 145, 145, 141, 137, 133, 131, 133, 127, 125, 133, 141, 145, 149, 145, 143, 28.8105 + 143, 135, 137, 139, 145, 147, 143, 139, 139, 141, 141, 137, 139, 147, 139, 143, 28.8106 + 143, 139, 145, 145, 147, 143, 149, 151, 147, 147, 153, 153, 160, 162, 112, 29, 28.8107 + 23, 26, 43, 23, 26, 32, 35, 32, 35, 32, 32, 43, 29, 43, 32, 20, 28.8108 + 29, 52, 43, 38, 38, 26, 26, 49, 29, 55, 71, 60, 41, 12, 9, 38, 28.8109 + 177, 172, 167, 162, 158, 139, 121, 103, 76, 63, 63, 63, 94, 112, 123, 135, 28.8110 + 153, 162, 167, 174, 169, 169, 164, 164, 164, 165, 158, 151, 145, 129, 119, 105, 28.8111 + 71, 66, 57, 71, 76, 74, 86, 79, 81, 89, 91, 96, 96, 103, 94, 94, 28.8112 + 96, 91, 86, 101, 98, 98, 108, 105, 110, 108, 108, 114, 103, 105, 105, 114, 28.8113 + 110, 112, 112, 114, 117, 112, 121, 112, 121, 119, 112, 112, 187, 119, 103, 108, 28.8114 + 112, 105, 101, 98, 101, 105, 114, 119, 131, 125, 129, 105, 149, 129, 112, 141, 28.8115 + 129, 141, 125, 149, 119, 137, 133, 147, 125, 149, 131, 155, 129, 167, 145, 165, 28.8116 + 176, 165, 179, 167, 171, 195, 193, 182, 193, 197, 193, 187, 204, 206, 198, 198, 28.8117 + 206, 204, 198, 210, 206, 206, 201, 204, 207, 206, 204, 209, 207, 206, 209, 209, 28.8118 + 210, 121, 112, 98, 79, 86, 89, 96, 110, 98, 105, 103, 105, 98, 101, 98, 28.8119 + 96, 91, 98, 94, 96, 96, 98, 121, 131, 147, 149, 151, 149, 162, 151, 151, 28.8120 + 149, 145, 149, 143, 129, 127, 123, 125, 117, 119, 131, 139, 141, 155, 149, 143, 28.8121 + 143, 139, 143, 149, 145, 147, 147, 139, 137, 143, 139, 137, 145, 139, 145, 149, 28.8122 + 141, 141, 143, 147, 145, 149, 145, 147, 145, 149, 158, 156, 151, 108, 43, 29, 28.8123 + 38, 26, 15, 23, 18, 20, 35, 49, 63, 38, 32, 26, 32, 26, 15, 18, 28.8124 + 43, 38, 43, 49, 32, 46, 35, 41, 41, 60, 63, 29, 12, 12, 41, 127, 28.8125 + 172, 167, 160, 156, 151, 139, 110, 81, 66, 71, 63, 71, 86, 110, 125, 135, 28.8126 + 147, 162, 167, 171, 167, 172, 169, 164, 162, 160, 160, 153, 147, 131, 121, 91, 28.8127 + 68, 66, 55, 71, 68, 68, 86, 84, 94, 84, 86, 94, 89, 96, 91, 94, 28.8128 + 96, 96, 91, 101, 108, 89, 96, 103, 98, 108, 108, 108, 101, 112, 112, 123, 28.8129 + 119, 114, 117, 112, 121, 110, 110, 117, 114, 119, 112, 123, 174, 101, 108, 117, 28.8130 + 96, 103, 98, 103, 101, 117, 117, 108, 121, 117, 112, 133, 123, 125, 135, 129, 28.8131 + 145, 121, 133, 129, 147, 141, 143, 147, 133, 143, 131, 141, 169, 153, 158, 147, 28.8132 + 167, 167, 158, 190, 181, 181, 197, 197, 190, 190, 201, 200, 189, 201, 206, 200, 28.8133 + 197, 204, 206, 200, 200, 207, 207, 198, 201, 207, 201, 185, 197, 203, 215, 221, 28.8134 + 225, 224, 221, 207, 117, 71, 84, 91, 105, 98, 105, 108, 103, 101, 91, 91, 28.8135 + 101, 105, 98, 94, 91, 103, 110, 121, 137, 143, 149, 153, 155, 155, 160, 156, 28.8136 + 153, 151, 151, 139, 131, 123, 114, 114, 114, 112, 125, 127, 141, 145, 149, 147, 28.8137 + 145, 145, 141, 147, 151, 151, 147, 143, 141, 141, 141, 141, 141, 143, 143, 143, 28.8138 + 139, 145, 145, 143, 141, 143, 145, 145, 151, 153, 151, 158, 123, 57, 23, 32, 28.8139 + 26, 20, 32, 29, 20, 35, 43, 41, 41, 43, 35, 32, 23, 23, 35, 41, 28.8140 + 43, 60, 38, 32, 26, 38, 35, 38, 60, 57, 35, 20, 18, 38, 117, 151, 28.8141 + 164, 162, 156, 155, 139, 123, 96, 66, 66, 74, 71, 66, 79, 114, 123, 139, 28.8142 + 153, 160, 165, 171, 176, 169, 171, 167, 167, 164, 160, 156, 141, 135, 112, 108, 28.8143 + 79, 52, 68, 57, 89, 71, 81, 89, 114, 91, 89, 101, 103, 89, 91, 94, 28.8144 + 89, 94, 94, 103, 98, 98, 108, 105, 103, 112, 110, 105, 105, 105, 110, 108, 28.8145 + 114, 114, 114, 112, 117, 117, 114, 119, 114, 112, 114, 155, 121, 105, 103, 98, 28.8146 + 103, 94, 103, 105, 114, 119, 108, 114, 110, 125, 114, 137, 112, 123, 135, 127, 28.8147 + 133, 127, 135, 133, 143, 131, 151, 117, 153, 143, 143, 153, 151, 167, 143, 162, 28.8148 + 155, 174, 182, 162, 193, 200, 184, 197, 200, 203, 176, 200, 204, 190, 198, 198, 28.8149 + 209, 190, 203, 207, 206, 195, 203, 206, 193, 195, 203, 218, 218, 219, 221, 224, 28.8150 + 225, 231, 234, 234, 212, 84, 79, 79, 96, 96, 101, 105, 96, 91, 91, 98, 28.8151 + 96, 91, 96, 86, 101, 94, 98, 127, 135, 141, 147, 145, 160, 155, 156, 155, 28.8152 + 153, 156, 155, 149, 133, 121, 112, 98, 103, 108, 110, 119, 135, 139, 145, 149, 28.8153 + 143, 143, 143, 145, 141, 149, 143, 141, 141, 145, 143, 139, 139, 141, 145, 141, 28.8154 + 145, 137, 145, 143, 145, 149, 149, 149, 151, 149, 158, 139, 79, 35, 23, 32, 28.8155 + 41, 18, 26, 18, 20, 35, 32, 35, 38, 35, 29, 23, 26, 29, 32, 43, 28.8156 + 46, 43, 35, 29, 41, 35, 52, 46, 76, 55, 20, 26, 35, 91, 139, 167, 28.8157 + 162, 164, 151, 143, 129, 108, 89, 66, 74, 76, 76, 66, 86, 110, 131, 143, 28.8158 + 151, 160, 165, 172, 169, 169, 169, 171, 165, 164, 165, 153, 143, 133, 114, 101, 28.8159 + 76, 66, 46, 63, 66, 74, 86, 86, 79, 86, 89, 89, 96, 91, 84, 89, 28.8160 + 94, 91, 89, 89, 98, 101, 94, 105, 108, 105, 114, 105, 114, 110, 121, 112, 28.8161 + 117, 110, 121, 112, 114, 117, 110, 110, 114, 117, 125, 129, 117, 101, 103, 101, 28.8162 + 98, 105, 101, 108, 112, 110, 108, 108, 123, 123, 121, 123, 117, 135, 114, 135, 28.8163 + 123, 125, 127, 133, 131, 141, 133, 156, 114, 137, 129, 160, 141, 155, 165, 155, 28.8164 + 177, 153, 184, 193, 185, 185, 201, 203, 182, 198, 201, 192, 187, 201, 203, 198, 28.8165 + 195, 204, 204, 193, 200, 195, 190, 195, 212, 219, 216, 216, 225, 218, 218, 222, 28.8166 + 221, 225, 233, 236, 233, 177, 74, 71, 84, 91, 101, 96, 96, 96, 91, 94, 28.8167 + 84, 96, 98, 98, 101, 103, 112, 127, 131, 143, 147, 155, 153, 158, 158, 153, 28.8168 + 151, 153, 156, 141, 133, 121, 103, 94, 89, 91, 96, 117, 125, 129, 143, 155, 28.8169 + 145, 147, 141, 141, 141, 143, 145, 143, 139, 137, 141, 141, 143, 149, 143, 145, 28.8170 + 137, 135, 143, 139, 143, 141, 147, 151, 151, 156, 137, 103, 23, 32, 29, 32, 28.8171 + 20, 23, 43, 26, 20, 46, 26, 35, 29, 32, 38, 32, 20, 32, 35, 41, 28.8172 + 29, 29, 32, 29, 35, 38, 55, 71, 84, 52, 23, 35, 91, 141, 155, 171, 28.8173 + 164, 156, 151, 131, 114, 94, 60, 71, 66, 74, 76, 76, 84, 103, 127, 139, 28.8174 + 149, 158, 167, 174, 169, 167, 172, 167, 169, 164, 158, 155, 143, 135, 114, 89, 28.8175 + 74, 60, 60, 66, 74, 81, 81, 86, 81, 96, 112, 91, 98, 86, 86, 89, 28.8176 + 91, 96, 98, 101, 98, 94, 105, 105, 103, 101, 110, 105, 112, 112, 108, 114, 28.8177 + 112, 112, 117, 117, 121, 112, 114, 119, 119, 121, 129, 117, 103, 110, 96, 91, 28.8178 + 98, 105, 114, 114, 110, 119, 105, 125, 123, 114, 123, 121, 119, 117, 125, 125, 28.8179 + 123, 125, 125, 141, 129, 125, 131, 135, 145, 119, 147, 143, 139, 143, 147, 162, 28.8180 + 145, 185, 182, 174, 192, 206, 176, 190, 200, 197, 177, 201, 203, 190, 190, 204, 28.8181 + 204, 192, 185, 190, 184, 198, 216, 218, 221, 216, 221, 218, 216, 222, 218, 219, 28.8182 + 222, 221, 225, 230, 233, 215, 121, 60, 81, 89, 94, 89, 98, 91, 91, 89, 28.8183 + 96, 89, 94, 86, 86, 96, 105, 123, 137, 139, 143, 153, 153, 151, 158, 151, 28.8184 + 149, 151, 155, 143, 145, 125, 112, 76, 68, 71, 76, 96, 114, 129, 139, 145, 28.8185 + 147, 143, 145, 135, 141, 143, 143, 141, 139, 141, 145, 139, 141, 145, 145, 143, 28.8186 + 141, 143, 147, 147, 149, 145, 145, 156, 156, 145, 108, 38, 23, 35, 18, 20, 28.8187 + 20, 29, 35, 32, 29, 38, 35, 38, 41, 32, 23, 32, 23, 38, 38, 46, 28.8188 + 26, 46, 41, 26, 41, 52, 46, 66, 74, 46, 29, 81, 133, 153, 160, 162, 28.8189 + 153, 153, 141, 127, 108, 86, 66, 76, 79, 71, 71, 74, 91, 108, 121, 137, 28.8190 + 151, 156, 167, 172, 172, 171, 169, 171, 169, 164, 156, 156, 137, 127, 105, 117, 28.8191 + 66, 55, 55, 63, 74, 79, 94, 84, 91, 91, 94, 96, 98, 86, 101, 101, 28.8192 + 94, 91, 89, 96, 91, 94, 105, 105, 105, 112, 105, 105, 114, 108, 121, 117, 28.8193 + 114, 119, 121, 114, 117, 114, 123, 112, 114, 121, 117, 103, 105, 91, 101, 103, 28.8194 + 103, 114, 121, 108, 108, 112, 119, 119, 105, 119, 121, 112, 123, 114, 127, 112, 28.8195 + 133, 119, 139, 139, 153, 135, 145, 143, 123, 145, 129, 145, 133, 145, 156, 133, 28.8196 + 169, 155, 174, 181, 172, 182, 197, 195, 190, 198, 207, 201, 187, 206, 201, 193, 28.8197 + 181, 179, 185, 204, 216, 219, 213, 218, 219, 216, 215, 219, 215, 216, 219, 210, 28.8198 + 215, 221, 222, 230, 230, 233, 213, 84, 76, 76, 84, 89, 84, 94, 84, 91, 28.8199 + 94, 89, 96, 89, 86, 105, 103, 121, 127, 139, 145, 153, 156, 155, 151, 151, 28.8200 + 149, 151, 149, 143, 137, 129, 108, 81, 76, 52, 52, 81, 112, 127, 131, 145, 28.8201 + 149, 143, 145, 139, 141, 145, 145, 145, 139, 145, 147, 137, 139, 145, 143, 141, 28.8202 + 135, 141, 141, 145, 145, 145, 145, 155, 155, 121, 74, 35, 29, 15, 9, 20, 28.8203 + 43, 23, 38, 32, 41, 43, 32, 26, 29, 35, 26, 43, 29, 35, 41, 35, 28.8204 + 26, 38, 35, 35, 43, 63, 68, 57, 60, 55, 76, 123, 147, 153, 156, 162, 28.8205 + 145, 147, 133, 105, 89, 60, 71, 71, 79, 74, 71, 81, 74, 105, 123, 141, 28.8206 + 151, 164, 167, 171, 169, 172, 171, 169, 171, 164, 158, 156, 141, 129, 112, 98, 28.8207 + 76, 68, 76, 68, 84, 79, 74, 79, 86, 89, 86, 89, 96, 91, 105, 94, 28.8208 + 91, 91, 94, 94, 96, 96, 101, 103, 101, 105, 110, 103, 110, 108, 105, 110, 28.8209 + 114, 117, 119, 114, 117, 114, 129, 114, 123, 125, 110, 96, 94, 105, 108, 108, 28.8210 + 121, 119, 108, 110, 127, 117, 117, 119, 110, 121, 114, 127, 110, 125, 121, 137, 28.8211 + 129, 137, 125, 143, 129, 137, 143, 137, 145, 131, 147, 133, 143, 147, 151, 162, 28.8212 + 151, 164, 179, 160, 179, 204, 171, 187, 197, 190, 187, 204, 204, 174, 181, 174, 28.8213 + 190, 210, 215, 225, 215, 215, 215, 212, 216, 215, 218, 215, 216, 212, 218, 219, 28.8214 + 210, 215, 222, 221, 230, 227, 231, 181, 81, 66, 74, 94, 84, 89, 86, 84, 28.8215 + 101, 89, 89, 89, 86, 98, 105, 117, 129, 135, 151, 151, 155, 153, 151, 155, 28.8216 + 155, 149, 153, 141, 139, 125, 112, 89, 43, 35, 41, 74, 112, 119, 127, 135, 28.8217 + 145, 145, 147, 139, 139, 137, 143, 149, 139, 139, 141, 143, 141, 143, 141, 147, 28.8218 + 137, 143, 139, 135, 139, 143, 153, 156, 143, 84, 18, 15, 18, 20, 23, 15, 28.8219 + 20, 20, 26, 52, 55, 43, 43, 38, 26, 15, 29, 38, 35, 43, 32, 20, 28.8220 + 46, 38, 66, 74, 55, 66, 96, 68, 49, 71, 125, 147, 156, 149, 151, 153, 28.8221 + 145, 139, 117, 94, 79, 63, 76, 76, 81, 81, 68, 74, 94, 103, 123, 139, 28.8222 + 149, 160, 164, 167, 174, 167, 174, 172, 171, 169, 158, 155, 139, 131, 119, 98, 28.8223 + 76, 63, 52, 63, 63, 79, 79, 84, 79, 79, 84, 89, 101, 96, 98, 89, 28.8224 + 96, 86, 96, 98, 98, 98, 98, 112, 98, 101, 108, 110, 112, 101, 112, 119, 28.8225 + 114, 112, 117, 114, 114, 114, 117, 123, 117, 110, 105, 105, 96, 96, 110, 105, 28.8226 + 103, 117, 101, 127, 119, 108, 112, 119, 123, 105, 121, 105, 114, 125, 117, 133, 28.8227 + 119, 129, 139, 135, 145, 125, 139, 133, 121, 153, 133, 141, 147, 145, 158, 143, 28.8228 + 171, 155, 171, 184, 172, 179, 189, 193, 174, 195, 203, 185, 184, 164, 182, 203, 28.8229 + 218, 215, 219, 218, 218, 213, 209, 212, 216, 212, 213, 216, 212, 215, 213, 215, 28.8230 + 221, 213, 215, 219, 219, 231, 228, 227, 165, 68, 63, 74, 81, 81, 89, 91, 28.8231 + 94, 86, 94, 86, 86, 94, 108, 117, 131, 139, 149, 155, 153, 155, 155, 151, 28.8232 + 155, 145, 151, 143, 141, 129, 123, 94, 52, 29, 38, 46, 74, 112, 119, 137, 28.8233 + 139, 149, 153, 147, 137, 139, 139, 139, 145, 139, 143, 139, 137, 139, 139, 141, 28.8234 + 137, 145, 141, 141, 149, 153, 155, 149, 105, 32, 26, 18, 32, 18, 20, 32, 28.8235 + 32, 49, 46, 41, 38, 43, 41, 38, 23, 18, 38, 46, 38, 29, 23, 20, 28.8236 + 29, 41, 63, 55, 63, 71, 68, 55, 89, 131, 145, 155, 158, 147, 149, 143, 28.8237 + 129, 129, 105, 79, 71, 68, 74, 79, 81, 84, 74, 71, 89, 103, 119, 139, 28.8238 + 151, 156, 164, 167, 167, 171, 167, 169, 167, 171, 158, 149, 141, 125, 105, 96, 28.8239 + 76, 63, 57, 74, 89, 86, 84, 86, 89, 81, 98, 96, 96, 105, 98, 98, 28.8240 + 94, 86, 94, 94, 98, 103, 98, 98, 105, 105, 108, 110, 101, 114, 117, 121, 28.8241 + 121, 119, 114, 119, 114, 108, 119, 127, 110, 105, 91, 101, 101, 101, 112, 108, 28.8242 + 108, 117, 123, 117, 114, 108, 117, 114, 112, 110, 121, 121, 119, 125, 141, 121, 28.8243 + 123, 137, 143, 141, 125, 151, 141, 143, 149, 139, 143, 143, 156, 156, 141, 151, 28.8244 + 155, 160, 174, 153, 182, 197, 179, 189, 187, 201, 165, 164, 167, 192, 213, 215, 28.8245 + 216, 221, 215, 212, 207, 212, 218, 206, 215, 215, 213, 212, 216, 209, 216, 213, 28.8246 + 212, 216, 218, 224, 221, 227, 231, 224, 224, 117, 68, 68, 74, 84, 81, 84, 28.8247 + 98, 96, 91, 89, 89, 89, 105, 117, 129, 133, 147, 153, 158, 155, 153, 153, 28.8248 + 153, 151, 151, 151, 137, 131, 119, 94, 71, 26, 18, 29, 57, 94, 105, 121, 28.8249 + 131, 147, 139, 151, 141, 137, 141, 139, 141, 141, 141, 135, 143, 139, 135, 143, 28.8250 + 141, 147, 143, 141, 147, 151, 155, 119, 52, 20, 60, 81, 55, 23, 20, 38, 28.8251 + 41, 41, 38, 43, 49, 43, 38, 26, 29, 26, 41, 49, 43, 41, 26, 35, 28.8252 + 20, 60, 49, 49, 74, 71, 76, 86, 119, 139, 155, 156, 162, 145, 131, 155, 28.8253 + 123, 117, 91, 63, 76, 74, 84, 84, 84, 66, 81, 76, 84, 105, 119, 141, 28.8254 + 153, 156, 164, 167, 165, 169, 167, 169, 169, 164, 158, 153, 141, 131, 117, 89, 28.8255 + 84, 63, 52, 74, 71, 79, 91, 86, 86, 81, 84, 89, 89, 91, 91, 91, 28.8256 + 91, 94, 98, 94, 101, 96, 101, 103, 98, 98, 110, 108, 105, 114, 114, 112, 28.8257 + 121, 119, 117, 112, 119, 117, 123, 110, 103, 108, 94, 101, 105, 105, 108, 103, 28.8258 + 114, 114, 114, 114, 114, 117, 101, 117, 91, 114, 110, 131, 119, 137, 114, 139, 28.8259 + 125, 145, 141, 127, 153, 137, 143, 139, 131, 147, 139, 153, 153, 139, 145, 135, 28.8260 + 155, 151, 167, 187, 189, 174, 192, 187, 169, 169, 149, 198, 209, 212, 207, 215, 28.8261 + 210, 212, 210, 215, 221, 213, 210, 215, 206, 213, 212, 212, 210, 210, 206, 218, 28.8262 + 219, 222, 222, 224, 222, 230, 233, 231, 227, 206, 84, 66, 60, 74, 76, 81, 28.8263 + 81, 76, 79, 84, 84, 98, 110, 117, 127, 139, 149, 153, 160, 155, 151, 155, 28.8264 + 156, 156, 153, 141, 141, 137, 121, 96, 63, 23, 20, 23, 57, 94, 101, 108, 28.8265 + 127, 141, 143, 149, 147, 145, 151, 143, 141, 143, 141, 135, 141, 133, 143, 145, 28.8266 + 143, 139, 145, 145, 149, 155, 137, 74, 18, 41, 23, 26, 32, 26, 26, 26, 28.8267 + 41, 32, 26, 38, 43, 41, 32, 29, 32, 49, 46, 32, 29, 32, 32, 41, 28.8268 + 35, 38, 55, 57, 79, 84, 84, 112, 137, 145, 158, 156, 158, 139, 145, 162, 28.8269 + 112, 103, 68, 66, 76, 76, 96, 84, 84, 79, 68, 68, 94, 105, 121, 139, 28.8270 + 143, 153, 160, 164, 171, 167, 169, 172, 169, 160, 160, 156, 141, 129, 114, 96, 28.8271 + 74, 66, 79, 71, 86, 89, 86, 91, 94, 96, 98, 81, 86, 84, 98, 84, 28.8272 + 103, 89, 84, 98, 105, 94, 105, 108, 119, 98, 105, 108, 110, 119, 114, 114, 28.8273 + 117, 119, 121, 114, 119, 125, 117, 121, 98, 96, 103, 121, 110, 105, 123, 108, 28.8274 + 110, 114, 112, 110, 105, 108, 110, 108, 108, 119, 119, 129, 131, 114, 137, 121, 28.8275 + 149, 137, 149, 143, 129, 149, 141, 149, 156, 143, 158, 119, 153, 151, 139, 151, 28.8276 + 139, 167, 181, 156, 185, 185, 181, 169, 147, 167, 203, 215, 212, 215, 213, 203, 28.8277 + 209, 212, 212, 222, 213, 216, 210, 210, 206, 204, 204, 207, 210, 216, 227, 225, 28.8278 + 221, 215, 221, 215, 219, 225, 225, 234, 228, 233, 181, 81, 66, 57, 71, 79, 28.8279 + 81, 76, 81, 76, 84, 98, 108, 127, 131, 143, 149, 151, 155, 153, 155, 151, 28.8280 + 158, 156, 149, 147, 139, 129, 125, 86, 63, 23, 15, 23, 46, 68, 96, 114, 28.8281 + 121, 139, 143, 145, 147, 149, 143, 145, 135, 143, 139, 149, 139, 141, 139, 137, 28.8282 + 141, 143, 145, 145, 149, 151, 103, 38, 18, 18, 29, 26, 23, 35, 29, 41, 28.8283 + 41, 29, 55, 41, 29, 29, 12, 23, 41, 46, 57, 32, 35, 35, 41, 35, 28.8284 + 43, 41, 57, 81, 71, 94, 117, 141, 151, 156, 151, 155, 147, 141, 158, 172, 28.8285 + 96, 94, 63, 71, 76, 79, 79, 86, 76, 74, 76, 76, 84, 103, 125, 137, 28.8286 + 145, 160, 158, 164, 164, 167, 172, 169, 165, 167, 158, 155, 141, 137, 110, 98, 28.8287 + 76, 52, 74, 76, 81, 86, 86, 76, 86, 96, 84, 84, 89, 94, 89, 94, 28.8288 + 96, 96, 86, 98, 89, 91, 101, 108, 112, 105, 112, 117, 105, 110, 108, 112, 28.8289 + 112, 114, 117, 119, 121, 129, 112, 110, 105, 110, 105, 112, 103, 117, 105, 112, 28.8290 + 117, 112, 123, 103, 114, 105, 112, 112, 119, 112, 125, 119, 145, 119, 121, 143, 28.8291 + 127, 143, 133, 133, 153, 129, 151, 149, 149, 149, 133, 141, 147, 127, 149, 135, 28.8292 + 164, 156, 158, 181, 190, 158, 151, 147, 181, 210, 207, 212, 210, 210, 209, 209, 28.8293 + 209, 218, 209, 215, 213, 206, 209, 204, 213, 206, 215, 216, 216, 213, 219, 215, 28.8294 + 210, 209, 212, 213, 213, 218, 219, 221, 224, 227, 222, 172, 101, 76, 63, 74, 28.8295 + 63, 81, 86, 68, 71, 86, 103, 117, 133, 135, 145, 153, 155, 155, 155, 151, 28.8296 + 155, 156, 149, 149, 139, 133, 121, 91, 57, 20, 35, 43, 20, 76, 89, 98, 28.8297 + 125, 127, 139, 145, 145, 145, 139, 133, 139, 137, 137, 133, 137, 147, 143, 143, 28.8298 + 147, 143, 143, 151, 155, 129, 57, 41, 18, 12, 23, 26, 32, 32, 38, 38, 28.8299 + 55, 32, 46, 29, 20, 20, 15, 32, 41, 46, 23, 26, 46, 41, 32, 38, 28.8300 + 57, 49, 41, 66, 81, 121, 133, 149, 151, 156, 151, 149, 147, 160, 164, 171, 28.8301 + 86, 74, 74, 79, 76, 81, 81, 81, 79, 79, 71, 71, 96, 98, 123, 133, 28.8302 + 145, 155, 164, 165, 167, 167, 169, 169, 164, 165, 160, 151, 135, 125, 121, 96, 28.8303 + 79, 63, 60, 63, 76, 89, 89, 89, 91, 84, 89, 91, 89, 91, 84, 89, 28.8304 + 98, 98, 105, 96, 101, 110, 94, 105, 110, 105, 110, 112, 108, 108, 119, 119, 28.8305 + 119, 112, 112, 114, 135, 112, 105, 105, 110, 114, 103, 105, 98, 110, 105, 108, 28.8306 + 105, 121, 101, 127, 117, 123, 96, 123, 101, 121, 114, 143, 117, 141, 129, 119, 28.8307 + 137, 131, 139, 137, 121, 153, 131, 145, 151, 137, 151, 143, 145, 145, 143, 156, 28.8308 + 139, 158, 177, 171, 153, 125, 165, 192, 206, 204, 213, 209, 201, 210, 213, 216, 28.8309 + 209, 203, 210, 206, 198, 206, 201, 213, 213, 215, 212, 204, 206, 204, 207, 210, 28.8310 + 210, 213, 216, 216, 219, 219, 221, 218, 224, 225, 227, 233, 218, 160, 63, 52, 28.8311 + 63, 57, 81, 79, 74, 89, 103, 119, 127, 137, 149, 155, 153, 153, 155, 155, 28.8312 + 151, 151, 155, 145, 145, 133, 119, 91, 74, 26, 23, 32, 52, 26, 71, 84, 28.8313 + 119, 117, 131, 141, 143, 145, 145, 145, 141, 137, 135, 137, 141, 143, 143, 147, 28.8314 + 141, 143, 151, 151, 139, 98, 15, 15, 18, 20, 18, 35, 23, 63, 41, 38, 28.8315 + 41, 35, 32, 32, 26, 26, 23, 35, 43, 35, 35, 20, 46, 35, 43, 38, 28.8316 + 43, 46, 49, 60, 103, 133, 149, 149, 155, 158, 149, 143, 160, 171, 165, 172, 28.8317 + 76, 63, 66, 86, 76, 79, 71, 79, 79, 84, 74, 68, 84, 96, 117, 139, 28.8318 + 143, 162, 158, 164, 172, 172, 169, 169, 172, 167, 165, 153, 141, 131, 114, 98, 28.8319 + 76, 60, 63, 63, 76, 84, 84, 91, 86, 101, 91, 89, 89, 96, 86, 98, 28.8320 + 89, 96, 94, 96, 96, 96, 103, 103, 103, 105, 114, 110, 103, 121, 114, 110, 28.8321 + 129, 108, 114, 127, 141, 98, 98, 96, 101, 112, 112, 103, 98, 105, 110, 105, 28.8322 + 112, 108, 101, 123, 114, 123, 112, 129, 105, 121, 131, 121, 135, 129, 139, 129, 28.8323 + 131, 139, 137, 133, 145, 143, 145, 141, 137, 147, 125, 135, 141, 129, 143, 133, 28.8324 + 158, 169, 160, 153, 127, 182, 204, 201, 198, 203, 200, 210, 210, 203, 213, 213, 28.8325 + 210, 206, 206, 207, 204, 212, 206, 209, 206, 209, 207, 210, 212, 210, 216, 209, 28.8326 + 212, 216, 216, 218, 215, 218, 215, 219, 222, 222, 225, 227, 230, 230, 160, 110, 28.8327 + 41, 55, 68, 68, 76, 86, 101, 117, 129, 137, 155, 151, 153, 155, 158, 151, 28.8328 + 151, 153, 155, 172, 141, 131, 114, 96, 74, 23, 20, 20, 23, 29, 43, 66, 28.8329 + 89, 112, 123, 131, 143, 143, 143, 143, 137, 137, 135, 143, 141, 133, 141, 143, 28.8330 + 147, 149, 155, 149, 108, 23, 15, 20, 20, 20, 23, 23, 52, 29, 46, 57, 28.8331 + 41, 32, 35, 41, 23, 29, 46, 41, 38, 23, 38, 32, 49, 41, 35, 43, 28.8332 + 52, 57, 68, 86, 129, 139, 151, 145, 156, 158, 143, 155, 169, 172, 172, 169, 28.8333 + 86, 84, 68, 79, 91, 76, 79, 84, 84, 81, 71, 74, 81, 108, 121, 139, 28.8334 + 143, 158, 164, 167, 169, 169, 171, 169, 169, 164, 158, 153, 147, 125, 121, 101, 28.8335 + 86, 60, 55, 66, 71, 81, 86, 86, 94, 84, 91, 79, 86, 94, 86, 94, 28.8336 + 94, 94, 86, 98, 91, 108, 101, 105, 105, 112, 112, 114, 112, 110, 112, 112, 28.8337 + 117, 117, 114, 139, 119, 98, 112, 91, 108, 101, 110, 103, 105, 108, 112, 96, 28.8338 + 110, 101, 110, 112, 112, 114, 125, 108, 133, 137, 139, 137, 119, 143, 131, 143, 28.8339 + 153, 129, 149, 145, 125, 156, 131, 137, 135, 133, 139, 123, 141, 149, 133, 151, 28.8340 + 131, 155, 135, 139, 187, 207, 206, 204, 204, 203, 207, 197, 207, 204, 201, 207, 28.8341 + 206, 204, 206, 207, 210, 195, 206, 209, 215, 203, 215, 218, 212, 213, 213, 215, 28.8342 + 216, 215, 216, 218, 216, 216, 219, 213, 219, 221, 224, 219, 225, 231, 228, 164, 28.8343 + 52, 52, 55, 68, 74, 84, 98, 123, 135, 137, 147, 155, 155, 153, 153, 151, 28.8344 + 156, 153, 162, 155, 137, 131, 114, 96, 66, 26, 20, 23, 12, 20, 23, 49, 28.8345 + 79, 91, 127, 125, 139, 145, 145, 143, 141, 137, 137, 135, 141, 139, 145, 147, 28.8346 + 147, 151, 147, 133, 49, 32, 9, 15, 23, 23, 43, 35, 41, 43, 41, 35, 28.8347 + 41, 46, 26, 35, 32, 41, 43, 66, 41, 26, 46, 32, 38, 38, 43, 35, 28.8348 + 46, 52, 91, 127, 153, 149, 149, 151, 153, 145, 153, 165, 172, 171, 171, 171, 28.8349 + 74, 89, 86, 81, 86, 76, 89, 94, 79, 89, 76, 76, 89, 103, 121, 139, 28.8350 + 143, 158, 162, 158, 167, 167, 167, 167, 167, 165, 160, 155, 145, 131, 117, 103, 28.8351 + 91, 60, 63, 68, 81, 79, 89, 84, 86, 86, 84, 101, 98, 86, 94, 94, 28.8352 + 89, 98, 89, 101, 96, 94, 101, 103, 98, 108, 112, 110, 108, 117, 117, 114, 28.8353 + 110, 110, 147, 112, 108, 94, 96, 91, 98, 101, 121, 114, 105, 103, 110, 108, 28.8354 + 123, 119, 110, 110, 125, 105, 121, 125, 125, 139, 114, 139, 139, 133, 153, 139, 28.8355 + 137, 141, 141, 141, 147, 131, 145, 139, 133, 139, 131, 145, 133, 143, 149, 123, 28.8356 + 145, 127, 167, 187, 204, 200, 207, 210, 210, 195, 206, 200, 198, 204, 203, 197, 28.8357 + 203, 206, 204, 200, 203, 212, 213, 207, 215, 216, 204, 213, 213, 213, 213, 213, 28.8358 + 218, 219, 212, 207, 213, 215, 216, 212, 221, 221, 219, 219, 218, 222, 230, 225, 28.8359 + 121, 26, 46, 57, 74, 81, 103, 119, 129, 135, 151, 149, 155, 155, 151, 149, 28.8360 + 149, 153, 155, 151, 143, 133, 110, 91, 66, 29, 23, 20, 12, 18, 15, 26, 28.8361 + 63, 81, 119, 123, 127, 137, 143, 143, 141, 135, 139, 135, 135, 143, 137, 145, 28.8362 + 147, 147, 145, 89, 20, 26, 20, 32, 23, 26, 41, 32, 41, 49, 38, 32, 28.8363 + 41, 38, 32, 26, 29, 38, 29, 23, 23, 29, 35, 35, 57, 41, 38, 38, 28.8364 + 43, 81, 129, 145, 155, 153, 147, 143, 137, 145, 160, 169, 174, 171, 172, 169, 28.8365 + 71, 71, 76, 79, 84, 84, 86, 86, 84, 81, 71, 79, 98, 108, 127, 133, 28.8366 + 145, 156, 162, 167, 165, 164, 171, 176, 162, 165, 160, 153, 147, 135, 112, 101, 28.8367 + 76, 68, 66, 66, 74, 74, 91, 86, 81, 81, 94, 86, 96, 98, 89, 81, 28.8368 + 91, 81, 94, 96, 94, 101, 98, 108, 103, 101, 110, 114, 112, 105, 121, 110, 28.8369 + 105, 123, 203, 117, 89, 98, 94, 96, 96, 101, 108, 105, 108, 105, 103, 105, 28.8370 + 98, 108, 101, 112, 98, 127, 114, 135, 117, 123, 139, 125, 133, 143, 145, 141, 28.8371 + 129, 127, 141, 141, 143, 141, 139, 149, 133, 125, 127, 108, 141, 127, 121, 123, 28.8372 + 145, 190, 197, 179, 182, 204, 204, 209, 201, 204, 192, 207, 198, 193, 203, 207, 28.8373 + 187, 195, 197, 204, 210, 212, 212, 213, 201, 213, 215, 209, 213, 210, 215, 209, 28.8374 + 215, 216, 215, 213, 219, 216, 216, 215, 212, 224, 222, 222, 225, 228, 218, 228, 28.8375 + 209, 55, 52, 52, 66, 76, 101, 117, 127, 139, 145, 153, 153, 153, 153, 156, 28.8376 + 151, 153, 149, 145, 139, 129, 123, 103, 76, 35, 20, 18, 35, 23, 18, 20, 28.8377 + 46, 74, 84, 110, 127, 129, 141, 147, 145, 137, 137, 133, 135, 139, 141, 145, 28.8378 + 149, 151, 112, 35, 29, 26, 18, 23, 20, 18, 35, 35, 29, 38, 55, 35, 28.8379 + 43, 35, 26, 29, 35, 43, 35, 23, 32, 23, 35, 29, 32, 38, 41, 49, 28.8380 + 60, 112, 141, 155, 158, 143, 141, 141, 151, 160, 169, 172, 172, 176, 172, 169, 28.8381 + 86, 81, 86, 84, 89, 84, 76, 66, 76, 84, 79, 79, 94, 110, 125, 137, 28.8382 + 149, 158, 162, 162, 167, 164, 165, 165, 164, 162, 165, 155, 139, 131, 114, 103, 28.8383 + 89, 60, 66, 71, 79, 81, 86, 79, 86, 98, 94, 84, 94, 91, 94, 94, 28.8384 + 89, 89, 98, 98, 94, 96, 98, 103, 112, 105, 112, 105, 101, 110, 114, 110, 28.8385 + 108, 156, 174, 108, 86, 86, 91, 108, 96, 112, 110, 110, 108, 108, 98, 117, 28.8386 + 96, 112, 108, 108, 112, 119, 131, 98, 131, 127, 131, 129, 141, 151, 145, 133, 28.8387 + 112, 153, 131, 143, 143, 133, 147, 127, 139, 141, 114, 135, 131, 121, 119, 171, 28.8388 + 182, 204, 190, 187, 198, 197, 203, 204, 195, 201, 206, 192, 204, 203, 195, 193, 28.8389 + 195, 204, 207, 206, 209, 209, 213, 212, 215, 206, 219, 216, 195, 215, 218, 213, 28.8390 + 213, 218, 212, 213, 215, 213, 213, 215, 209, 213, 218, 224, 221, 230, 225, 230, 28.8391 + 231, 114, 84, 52, 52, 74, 101, 108, 123, 141, 145, 153, 153, 153, 153, 155, 28.8392 + 151, 156, 151, 147, 145, 129, 117, 101, 71, 41, 18, 29, 20, 15, 12, 9, 28.8393 + 23, 46, 81, 103, 117, 121, 133, 139, 143, 137, 135, 131, 137, 143, 143, 147, 28.8394 + 155, 129, 57, 20, 18, 26, 20, 23, 52, 26, 32, 32, 43, 49, 46, 38, 28.8395 + 52, 29, 32, 41, 41, 52, 38, 35, 38, 35, 46, 41, 41, 20, 29, 74, 28.8396 + 108, 141, 151, 153, 149, 145, 131, 149, 158, 167, 169, 169, 172, 172, 172, 172, 28.8397 + 84, 76, 84, 84, 89, 81, 79, 89, 79, 74, 68, 79, 89, 105, 125, 143, 28.8398 + 147, 162, 164, 164, 167, 167, 165, 162, 162, 164, 162, 153, 145, 141, 123, 96, 28.8399 + 68, 63, 63, 66, 74, 76, 79, 89, 86, 91, 98, 89, 96, 96, 94, 91, 28.8400 + 91, 94, 101, 94, 103, 98, 108, 103, 108, 103, 112, 110, 110, 114, 110, 98, 28.8401 + 110, 206, 176, 91, 98, 84, 114, 94, 98, 98, 98, 112, 101, 101, 112, 103, 28.8402 + 117, 114, 114, 119, 114, 119, 133, 129, 117, 133, 141, 133, 153, 141, 121, 143, 28.8403 + 145, 108, 156, 143, 137, 151, 121, 131, 129, 131, 121, 96, 110, 123, 184, 179, 28.8404 + 192, 189, 209, 198, 201, 187, 198, 189, 207, 203, 201, 207, 184, 195, 201, 206, 28.8405 + 207, 204, 207, 209, 203, 210, 210, 213, 213, 212, 210, 216, 209, 213, 213, 212, 28.8406 + 212, 215, 213, 212, 209, 213, 210, 215, 212, 218, 219, 221, 225, 222, 228, 233, 28.8407 + 233, 218, 114, 38, 55, 68, 91, 112, 127, 135, 143, 147, 149, 149, 156, 153, 28.8408 + 158, 156, 155, 149, 139, 123, 119, 96, 74, 41, 26, 23, 35, 15, 15, 18, 28.8409 + 15, 29, 46, 84, 101, 114, 123, 141, 162, 156, 149, 127, 137, 143, 153, 149, 28.8410 + 147, 91, 32, 23, 20, 32, 20, 32, 35, 26, 52, 43, 35, 41, 41, 41, 28.8411 + 38, 26, 38, 49, 41, 26, 38, 26, 41, 49, 29, 35, 18, 23, 32, 94, 28.8412 + 133, 151, 153, 149, 151, 137, 143, 160, 165, 164, 174, 171, 169, 167, 169, 169, 28.8413 + 74, 96, 74, 86, 81, 89, 89, 91, 84, 76, 68, 76, 86, 96, 123, 139, 28.8414 + 145, 155, 160, 167, 169, 165, 164, 167, 165, 169, 165, 153, 141, 129, 112, 103, 28.8415 + 81, 71, 55, 76, 76, 74, 76, 86, 84, 86, 76, 94, 89, 91, 101, 89, 28.8416 + 96, 89, 98, 98, 108, 94, 101, 110, 98, 110, 110, 117, 105, 110, 103, 103, 28.8417 + 147, 210, 143, 86, 96, 101, 101, 94, 105, 108, 91, 110, 98, 112, 105, 103, 28.8418 + 117, 108, 117, 117, 108, 133, 119, 121, 135, 133, 151, 135, 131, 127, 145, 123, 28.8419 + 139, 145, 131, 137, 147, 125, 135, 119, 127, 121, 105, 98, 155, 182, 185, 185, 28.8420 + 192, 200, 206, 204, 185, 193, 190, 201, 198, 203, 190, 172, 197, 206, 210, 200, 28.8421 + 212, 210, 201, 201, 207, 207, 213, 213, 212, 215, 206, 210, 212, 212, 215, 215, 28.8422 + 213, 200, 203, 210, 212, 216, 219, 218, 216, 215, 218, 218, 221, 219, 222, 230, 28.8423 + 231, 234, 210, 43, 43, 60, 89, 110, 123, 129, 147, 151, 147, 149, 153, 153, 28.8424 + 155, 155, 155, 160, 139, 125, 121, 105, 74, 46, 35, 23, 15, 29, 23, 35, 28.8425 + 15, 12, 20, 52, 74, 137, 204, 209, 225, 225, 218, 179, 176, 207, 176, 143, 28.8426 + 105, 29, 23, 18, 32, 23, 41, 35, 46, 23, 46, 41, 29, 43, 41, 52, 28.8427 + 38, 46, 32, 43, 38, 29, 43, 35, 35, 41, 32, 32, 20, 29, 79, 129, 28.8428 + 149, 155, 151, 139, 139, 137, 153, 164, 165, 169, 171, 167, 164, 162, 164, 169, 28.8429 + 79, 91, 81, 81, 84, 79, 74, 76, 74, 74, 68, 68, 81, 101, 125, 137, 28.8430 + 147, 149, 160, 167, 167, 164, 165, 167, 169, 164, 164, 155, 145, 139, 121, 103, 28.8431 + 86, 74, 68, 66, 68, 81, 79, 84, 84, 79, 86, 84, 103, 91, 98, 94, 28.8432 + 81, 96, 101, 121, 108, 103, 101, 94, 98, 101, 105, 108, 103, 108, 101, 94, 28.8433 + 201, 198, 155, 89, 89, 103, 89, 98, 101, 101, 103, 105, 105, 112, 94, 101, 28.8434 + 86, 123, 110, 110, 123, 114, 133, 114, 127, 137, 127, 129, 151, 137, 131, 141, 28.8435 + 127, 114, 139, 137, 143, 123, 105, 127, 119, 105, 114, 162, 167, 195, 193, 197, 28.8436 + 189, 195, 187, 187, 197, 197, 200, 192, 190, 169, 190, 193, 198, 203, 203, 209, 28.8437 + 203, 204, 209, 206, 203, 210, 204, 215, 210, 210, 209, 212, 207, 215, 209, 206, 28.8438 + 209, 212, 207, 212, 212, 215, 212, 219, 218, 210, 218, 221, 216, 222, 221, 231, 28.8439 + 231, 233, 231, 103, 29, 60, 81, 103, 127, 137, 145, 151, 147, 151, 153, 153, 28.8440 + 155, 151, 149, 153, 141, 137, 127, 89, 79, 38, 32, 20, 32, 26, 26, 12, 28.8441 + 18, 12, 20, 68, 187, 213, 225, 225, 218, 212, 203, 213, 225, 225, 225, 185, 28.8442 + 55, 20, 26, 41, 18, 63, 20, 35, 46, 38, 41, 38, 43, 46, 60, 49, 28.8443 + 35, 49, 38, 35, 29, 26, 41, 38, 41, 32, 23, 23, 41, 71, 119, 139, 28.8444 + 156, 151, 149, 143, 141, 149, 156, 167, 172, 171, 162, 169, 165, 169, 164, 164, 28.8445 + 81, 81, 84, 79, 89, 89, 76, 76, 71, 81, 71, 79, 79, 98, 112, 139, 28.8446 + 141, 160, 162, 165, 167, 164, 164, 165, 164, 165, 164, 149, 145, 131, 114, 101, 28.8447 + 89, 55, 55, 63, 66, 76, 71, 76, 76, 91, 91, 79, 91, 89, 84, 86, 28.8448 + 96, 101, 81, 94, 89, 98, 94, 108, 105, 112, 103, 101, 105, 96, 101, 121, 28.8449 + 222, 189, 110, 79, 96, 91, 84, 101, 103, 101, 114, 114, 103, 96, 110, 94, 28.8450 + 114, 101, 121, 110, 123, 129, 123, 135, 131, 129, 141, 131, 137, 143, 121, 119, 28.8451 + 135, 141, 141, 135, 105, 123, 127, 108, 112, 129, 184, 185, 171, 184, 207, 201, 28.8452 + 197, 181, 184, 181, 197, 206, 204, 177, 179, 195, 190, 201, 193, 201, 201, 204, 28.8453 + 209, 206, 206, 204, 207, 207, 203, 201, 212, 213, 210, 207, 207, 197, 212, 215, 28.8454 + 207, 219, 215, 204, 210, 215, 216, 215, 219, 213, 216, 219, 216, 219, 221, 222, 28.8455 + 230, 228, 231, 185, 29, 55, 81, 103, 123, 133, 141, 151, 149, 158, 155, 151, 28.8456 + 155, 156, 149, 155, 141, 137, 125, 103, 68, 38, 32, 29, 32, 29, 18, 23, 28.8457 + 41, 26, 68, 203, 219, 227, 219, 204, 193, 215, 215, 219, 222, 224, 224, 219, 28.8458 + 79, 15, 23, 29, 29, 35, 20, 46, 55, 52, 46, 46, 26, 43, 41, 29, 28.8459 + 38, 41, 43, 41, 29, 35, 49, 63, 38, 23, 15, 26, 55, 108, 143, 151, 28.8460 + 153, 149, 149, 139, 151, 162, 169, 179, 165, 165, 169, 169, 165, 164, 165, 164, 28.8461 + 94, 84, 86, 89, 81, 71, 74, 81, 81, 76, 68, 81, 68, 98, 123, 129, 28.8462 + 147, 153, 162, 165, 162, 165, 169, 162, 158, 165, 160, 153, 143, 133, 112, 103, 28.8463 + 68, 55, 60, 68, 74, 74, 86, 74, 89, 86, 89, 86, 86, 94, 89, 86, 28.8464 + 96, 96, 96, 98, 91, 94, 96, 101, 103, 103, 108, 101, 98, 89, 96, 169, 28.8465 + 216, 153, 117, 98, 94, 86, 98, 96, 108, 98, 108, 110, 103, 103, 110, 110, 28.8466 + 105, 127, 101, 121, 123, 125, 133, 121, 133, 135, 135, 139, 133, 121, 125, 139, 28.8467 + 137, 135, 125, 101, 121, 103, 86, 103, 151, 174, 167, 189, 193, 181, 207, 181, 28.8468 + 187, 190, 181, 184, 200, 189, 179, 195, 200, 195, 195, 189, 200, 201, 204, 198, 28.8469 + 201, 204, 195, 213, 203, 201, 207, 207, 206, 210, 200, 198, 204, 209, 215, 213, 28.8470 + 215, 209, 216, 216, 207, 210, 215, 218, 215, 218, 216, 218, 216, 218, 219, 221, 28.8471 + 225, 233, 233, 218, 71, 49, 71, 103, 117, 135, 143, 149, 149, 153, 153, 153, 28.8472 + 151, 153, 151, 155, 143, 133, 114, 94, 66, 35, 26, 20, 26, 23, 18, 23, 28.8473 + 35, 119, 210, 225, 224, 210, 189, 212, 213, 222, 231, 233, 233, 236, 233, 230, 28.8474 + 176, 29, 23, 29, 26, 29, 38, 49, 35, 38, 38, 49, 52, 43, 46, 35, 28.8475 + 35, 43, 49, 35, 38, 46, 35, 35, 41, 29, 23, 26, 84, 133, 151, 151, 28.8476 + 149, 149, 143, 151, 158, 174, 174, 179, 167, 167, 164, 169, 165, 162, 165, 165, 28.8477 + 76, 81, 79, 81, 81, 84, 74, 79, 84, 86, 76, 60, 79, 105, 119, 131, 28.8478 + 143, 155, 158, 165, 169, 162, 165, 164, 165, 167, 160, 155, 139, 129, 112, 98, 28.8479 + 57, 63, 49, 55, 60, 68, 76, 81, 86, 91, 86, 89, 86, 89, 91, 86, 28.8480 + 96, 89, 91, 103, 94, 91, 98, 103, 105, 101, 103, 98, 103, 94, 98, 221, 28.8481 + 201, 172, 131, 96, 84, 101, 101, 96, 105, 105, 96, 112, 103, 117, 98, 125, 28.8482 + 101, 117, 117, 105, 131, 119, 131, 127, 125, 119, 143, 114, 98, 135, 135, 129, 28.8483 + 133, 119, 137, 123, 101, 105, 110, 171, 182, 179, 182, 200, 182, 171, 185, 187, 28.8484 + 179, 181, 192, 192, 156, 176, 198, 195, 197, 187, 190, 198, 189, 203, 204, 200, 28.8485 + 206, 204, 206, 197, 207, 198, 204, 203, 201, 189, 206, 212, 210, 210, 209, 210, 28.8486 + 215, 209, 206, 215, 213, 206, 212, 213, 215, 216, 215, 215, 212, 213, 212, 216, 28.8487 + 224, 228, 233, 228, 176, 43, 79, 103, 117, 131, 143, 149, 158, 149, 155, 156, 28.8488 + 153, 149, 153, 155, 145, 135, 117, 94, 71, 29, 29, 20, 23, 18, 20, 41, 28.8489 + 151, 213, 227, 221, 193, 179, 218, 222, 227, 228, 230, 230, 230, 233, 237, 237, 28.8490 + 222, 32, 35, 32, 32, 26, 32, 38, 43, 41, 46, 32, 35, 32, 29, 29, 28.8491 + 32, 43, 29, 38, 32, 46, 35, 49, 35, 23, 52, 68, 121, 149, 156, 156, 28.8492 + 149, 145, 147, 158, 164, 171, 169, 171, 167, 167, 165, 167, 169, 169, 162, 162, 28.8493 + 79, 74, 84, 71, 79, 79, 79, 84, 86, 86, 79, 79, 84, 96, 121, 127, 28.8494 + 147, 153, 164, 162, 169, 171, 171, 169, 164, 165, 162, 156, 147, 125, 117, 91, 28.8495 + 74, 57, 52, 52, 68, 66, 81, 86, 81, 81, 86, 101, 89, 101, 86, 84, 28.8496 + 89, 98, 84, 91, 98, 103, 91, 94, 91, 110, 103, 105, 96, 89, 123, 218, 28.8497 + 195, 169, 110, 86, 84, 91, 94, 96, 96, 94, 105, 123, 101, 101, 110, 98, 28.8498 + 123, 96, 105, 123, 129, 127, 127, 110, 125, 127, 101, 119, 131, 135, 141, 137, 28.8499 + 121, 131, 121, 105, 98, 119, 165, 162, 177, 190, 185, 184, 177, 164, 174, 171, 28.8500 + 193, 201, 172, 179, 184, 195, 177, 195, 187, 198, 200, 192, 201, 193, 206, 193, 28.8501 + 201, 204, 203, 207, 198, 206, 195, 190, 203, 210, 206, 209, 212, 209, 212, 210, 28.8502 + 209, 207, 209, 203, 209, 207, 207, 216, 216, 212, 213, 213, 213, 213, 219, 216, 28.8503 + 215, 224, 233, 230, 222, 108, 57, 96, 117, 137, 133, 155, 155, 149, 156, 158, 28.8504 + 151, 151, 151, 149, 137, 129, 121, 103, 57, 20, 18, 12, 15, 23, 66, 195, 28.8505 + 216, 221, 213, 171, 195, 221, 224, 225, 222, 224, 225, 222, 228, 228, 230, 237, 28.8506 + 231, 63, 32, 32, 23, 26, 29, 29, 32, 43, 66, 23, 32, 35, 26, 38, 28.8507 + 49, 29, 29, 29, 35, 29, 35, 32, 26, 38, 60, 108, 143, 158, 158, 145, 28.8508 + 143, 145, 153, 164, 167, 169, 167, 169, 167, 165, 165, 167, 164, 160, 164, 162, 28.8509 + 79, 86, 86, 91, 81, 79, 79, 86, 86, 79, 76, 71, 74, 108, 114, 129, 28.8510 + 143, 153, 160, 165, 167, 169, 165, 164, 164, 165, 160, 149, 141, 131, 114, 96, 28.8511 + 71, 74, 57, 60, 49, 76, 71, 86, 84, 89, 91, 91, 86, 91, 86, 96, 28.8512 + 84, 98, 94, 94, 91, 94, 101, 94, 103, 105, 110, 117, 96, 89, 155, 219, 28.8513 + 200, 155, 110, 84, 89, 91, 96, 91, 101, 101, 112, 117, 105, 94, 125, 105, 28.8514 + 94, 123, 125, 123, 133, 119, 110, 125, 119, 108, 129, 131, 135, 131, 117, 123, 28.8515 + 119, 101, 108, 74, 133, 174, 182, 169, 187, 189, 171, 172, 181, 172, 155, 200, 28.8516 + 172, 160, 185, 197, 195, 189, 185, 169, 203, 193, 203, 198, 193, 203, 189, 206, 28.8517 + 192, 206, 204, 203, 201, 177, 201, 204, 203, 207, 210, 206, 204, 206, 210, 210, 28.8518 + 207, 209, 210, 209, 203, 210, 209, 210, 213, 218, 209, 218, 218, 218, 218, 216, 28.8519 + 218, 221, 225, 230, 230, 201, 63, 79, 119, 133, 141, 155, 156, 160, 160, 160, 28.8520 + 158, 153, 160, 153, 145, 135, 114, 89, 55, 23, 15, 18, 26, 86, 203, 219, 28.8521 + 224, 204, 162, 197, 218, 228, 224, 221, 219, 218, 224, 224, 218, 222, 227, 237, 28.8522 + 231, 123, 35, 26, 32, 32, 29, 32, 35, 46, 49, 38, 29, 29, 23, 20, 28.8523 + 23, 15, 46, 32, 43, 43, 43, 43, 46, 41, 84, 139, 156, 156, 155, 149, 28.8524 + 141, 155, 165, 167, 169, 169, 164, 167, 165, 169, 167, 165, 162, 164, 165, 160, 28.8525 + 81, 84, 91, 81, 91, 81, 81, 89, 91, 91, 86, 71, 84, 101, 114, 137, 28.8526 + 147, 155, 164, 174, 174, 167, 172, 167, 167, 171, 164, 155, 145, 129, 121, 101, 28.8527 + 68, 57, 66, 55, 68, 76, 81, 89, 89, 91, 86, 89, 86, 96, 98, 94, 28.8528 + 89, 94, 101, 91, 94, 94, 98, 110, 110, 101, 110, 108, 103, 96, 181, 216, 28.8529 + 187, 137, 103, 81, 89, 103, 91, 98, 91, 108, 103, 105, 76, 110, 103, 103, 28.8530 + 127, 121, 125, 131, 114, 123, 119, 105, 117, 131, 139, 131, 112, 108, 137, 121, 28.8531 + 108, 117, 98, 141, 160, 174, 182, 195, 184, 174, 164, 165, 171, 185, 192, 167, 28.8532 + 182, 195, 182, 189, 193, 190, 182, 190, 185, 206, 195, 206, 198, 189, 189, 193, 28.8533 + 204, 195, 193, 182, 189, 206, 207, 210, 203, 203, 206, 204, 200, 193, 204, 212, 28.8534 + 209, 206, 209, 210, 212, 209, 210, 210, 216, 216, 216, 218, 216, 212, 209, 213, 28.8535 + 213, 216, 216, 222, 224, 225, 145, 74, 114, 129, 145, 151, 155, 151, 155, 158, 28.8536 + 156, 155, 156, 151, 143, 127, 101, 91, 41, 20, 15, 32, 123, 212, 227, 218, 28.8537 + 190, 156, 207, 221, 227, 224, 221, 218, 218, 218, 219, 216, 209, 219, 227, 234, 28.8538 + 234, 158, 35, 26, 23, 18, 32, 32, 41, 29, 52, 32, 26, 26, 29, 20, 28.8539 + 15, 35, 35, 38, 46, 43, 46, 32, 35, 57, 112, 149, 162, 153, 151, 147, 28.8540 + 153, 162, 165, 167, 162, 164, 164, 164, 167, 162, 165, 162, 164, 164, 162, 164, 28.8541 + 84, 86, 91, 91, 86, 89, 94, 89, 84, 81, 103, 91, 89, 105, 114, 125, 28.8542 + 145, 158, 160, 169, 171, 167, 171, 172, 169, 167, 165, 158, 145, 137, 110, 94, 28.8543 + 71, 63, 68, 66, 66, 79, 84, 81, 84, 86, 89, 89, 84, 96, 91, 86, 28.8544 + 91, 96, 101, 94, 103, 94, 98, 103, 105, 105, 105, 96, 98, 96, 218, 206, 28.8545 + 176, 177, 103, 76, 98, 89, 103, 108, 103, 101, 110, 71, 110, 119, 117, 110, 28.8546 + 117, 127, 112, 119, 125, 101, 105, 127, 119, 129, 137, 117, 119, 133, 127, 108, 28.8547 + 103, 98, 153, 162, 165, 181, 177, 179, 177, 171, 156, 167, 190, 181, 162, 182, 28.8548 + 190, 192, 189, 182, 184, 185, 200, 193, 197, 189, 198, 185, 203, 195, 203, 185, 28.8549 + 193, 190, 182, 201, 198, 206, 206, 207, 207, 198, 203, 209, 207, 204, 193, 209, 28.8550 + 210, 209, 204, 209, 209, 218, 216, 215, 213, 209, 203, 210, 210, 213, 213, 215, 28.8551 + 213, 215, 215, 218, 222, 225, 209, 112, 114, 125, 143, 153, 153, 158, 158, 156, 28.8552 + 155, 155, 153, 151, 135, 119, 101, 66, 38, 26, 60, 167, 219, 224, 215, 179, 28.8553 + 176, 209, 222, 222, 221, 221, 221, 215, 210, 209, 212, 213, 218, 221, 225, 231, 28.8554 + 236, 162, 29, 26, 23, 26, 43, 55, 46, 29, 35, 20, 23, 35, 23, 23, 28.8555 + 29, 26, 29, 35, 41, 38, 29, 23, 35, 101, 145, 153, 156, 153, 147, 151, 28.8556 + 162, 164, 164, 164, 167, 164, 165, 164, 165, 164, 167, 164, 160, 162, 164, 165, 28.8557 + 86, 89, 84, 89, 94, 91, 98, 89, 81, 84, 91, 91, 86, 103, 110, 135, 28.8558 + 141, 155, 162, 165, 174, 172, 176, 174, 171, 169, 164, 158, 143, 135, 114, 96, 28.8559 + 68, 63, 57, 63, 74, 74, 76, 91, 98, 96, 81, 91, 81, 89, 89, 96, 28.8560 + 91, 86, 91, 101, 98, 94, 98, 101, 103, 108, 103, 98, 94, 103, 221, 218, 28.8561 + 192, 137, 103, 81, 98, 96, 84, 98, 94, 81, 74, 110, 108, 112, 105, 125, 28.8562 + 112, 110, 125, 114, 119, 125, 114, 105, 137, 127, 131, 153, 131, 125, 114, 89, 28.8563 + 103, 137, 160, 179, 165, 179, 172, 158, 164, 176, 174, 174, 167, 165, 197, 185, 28.8564 + 185, 187, 187, 179, 187, 198, 201, 185, 192, 192, 184, 200, 184, 201, 182, 192, 28.8565 + 160, 176, 204, 198, 197, 198, 204, 207, 209, 206, 197, 198, 206, 206, 207, 197, 28.8566 + 210, 210, 210, 206, 198, 215, 203, 189, 206, 206, 206, 212, 212, 215, 212, 216, 28.8567 + 213, 215, 215, 218, 216, 221, 224, 212, 149, 123, 137, 147, 156, 151, 155, 155, 28.8568 + 156, 153, 149, 149, 129, 114, 86, 52, 52, 123, 200, 225, 219, 206, 182, 195, 28.8569 + 213, 222, 221, 219, 221, 218, 215, 210, 206, 212, 209, 216, 218, 224, 225, 231, 28.8570 + 234, 155, 20, 26, 26, 26, 46, 43, 52, 35, 29, 26, 23, 23, 32, 20, 28.8571 + 35, 41, 32, 29, 41, 23, 12, 43, 63, 133, 156, 156, 149, 149, 147, 160, 28.8572 + 169, 165, 169, 164, 165, 164, 165, 165, 162, 167, 165, 164, 164, 156, 162, 162, 28.8573 + 84, 96, 91, 89, 89, 94, 89, 86, 91, 89, 86, 86, 84, 98, 121, 125, 28.8574 + 143, 156, 160, 171, 167, 167, 171, 172, 165, 171, 167, 156, 153, 139, 114, 98, 28.8575 + 71, 63, 60, 57, 66, 81, 91, 81, 89, 96, 84, 101, 86, 84, 101, 108, 28.8576 + 94, 89, 91, 96, 103, 101, 108, 98, 108, 101, 108, 94, 91, 117, 222, 201, 28.8577 + 158, 117, 89, 76, 86, 89, 94, 98, 86, 98, 105, 121, 105, 114, 108, 110, 28.8578 + 119, 119, 96, 105, 117, 123, 112, 129, 133, 129, 121, 125, 129, 117, 76, 110, 28.8579 + 160, 169, 147, 162, 189, 162, 145, 160, 162, 187, 181, 147, 171, 181, 177, 200, 28.8580 + 182, 179, 190, 197, 195, 187, 185, 200, 190, 190, 192, 177, 200, 182, 189, 171, 28.8581 + 184, 204, 197, 198, 189, 192, 203, 203, 204, 206, 207, 204, 201, 204, 204, 207, 28.8582 + 197, 212, 213, 207, 190, 158, 182, 207, 212, 210, 204, 213, 209, 210, 209, 207, 28.8583 + 210, 213, 212, 209, 213, 221, 221, 222, 224, 165, 129, 145, 145, 149, 153, 155, 28.8584 + 156, 149, 149, 139, 131, 105, 81, 89, 179, 218, 219, 212, 185, 185, 201, 216, 28.8585 + 221, 221, 216, 215, 218, 212, 213, 209, 209, 212, 212, 219, 221, 224, 227, 230, 28.8586 + 231, 131, 41, 32, 38, 35, 35, 38, 43, 29, 41, 35, 26, 29, 20, 23, 28.8587 + 35, 52, 41, 55, 18, 12, 18, 52, 108, 147, 158, 153, 151, 147, 151, 162, 28.8588 + 164, 169, 169, 162, 164, 162, 164, 165, 162, 164, 162, 167, 165, 160, 164, 160, 28.8589 + 91, 89, 91, 91, 91, 91, 96, 91, 86, 89, 84, 86, 86, 94, 114, 133, 28.8590 + 149, 155, 164, 167, 171, 169, 174, 169, 169, 174, 167, 156, 145, 143, 114, 101, 28.8591 + 74, 66, 66, 71, 86, 74, 86, 89, 91, 91, 94, 94, 86, 94, 89, 96, 28.8592 + 89, 86, 91, 94, 94, 96, 98, 101, 103, 114, 112, 94, 91, 147, 216, 212, 28.8593 + 145, 110, 105, 91, 81, 81, 98, 86, 105, 98, 105, 103, 105, 108, 81, 121, 28.8594 + 110, 86, 125, 123, 110, 123, 123, 110, 133, 117, 108, 129, 121, 98, 110, 141, 28.8595 + 155, 169, 176, 151, 145, 162, 143, 156, 190, 155, 153, 185, 192, 179, 174, 174, 28.8596 + 192, 189, 189, 198, 185, 177, 182, 182, 201, 187, 185, 189, 181, 171, 174, 192, 28.8597 + 189, 184, 198, 200, 198, 189, 198, 198, 200, 206, 206, 198, 207, 210, 206, 206, 28.8598 + 210, 207, 209, 204, 158, 179, 204, 203, 207, 209, 210, 215, 209, 210, 212, 212, 28.8599 + 209, 209, 203, 207, 212, 212, 216, 218, 222, 215, 153, 145, 153, 156, 149, 151, 28.8600 + 149, 153, 139, 131, 125, 105, 155, 209, 228, 215, 201, 200, 189, 209, 218, 219, 28.8601 + 219, 216, 215, 210, 215, 210, 210, 209, 213, 210, 213, 218, 222, 225, 225, 228, 28.8602 + 230, 86, 41, 18, 29, 35, 29, 23, 55, 43, 41, 35, 32, 29, 41, 35, 28.8603 + 32, 41, 29, 35, 18, 12, 26, 89, 135, 160, 160, 155, 147, 151, 158, 162, 28.8604 + 167, 169, 167, 165, 164, 172, 160, 164, 165, 162, 162, 158, 164, 164, 164, 164, 28.8605 + 94, 91, 96, 91, 89, 84, 91, 89, 91, 84, 89, 81, 89, 103, 119, 137, 28.8606 + 141, 151, 164, 167, 169, 169, 174, 172, 172, 169, 165, 160, 153, 141, 117, 105, 28.8607 + 74, 55, 63, 60, 74, 74, 84, 81, 96, 91, 86, 91, 91, 89, 91, 89, 28.8608 + 94, 84, 76, 86, 98, 94, 103, 101, 105, 110, 98, 94, 74, 190, 221, 192, 28.8609 + 143, 110, 117, 94, 81, 94, 81, 101, 91, 117, 86, 105, 103, 89, 114, 112, 28.8610 + 110, 119, 114, 112, 121, 131, 125, 133, 108, 114, 119, 110, 96, 112, 145, 167, 28.8611 + 162, 160, 169, 151, 139, 141, 171, 165, 127, 160, 176, 177, 185, 182, 182, 181, 28.8612 + 184, 197, 185, 174, 190, 182, 176, 193, 182, 200, 190, 179, 153, 165, 200, 197, 28.8613 + 192, 184, 185, 201, 198, 190, 193, 203, 200, 193, 203, 197, 200, 210, 207, 206, 28.8614 + 209, 210, 190, 155, 190, 204, 198, 200, 206, 210, 207, 210, 209, 213, 210, 210, 28.8615 + 207, 207, 206, 201, 207, 210, 212, 215, 215, 218, 198, 139, 156, 153, 147, 143, 28.8616 + 153, 153, 141, 129, 160, 203, 224, 218, 207, 197, 203, 197, 209, 221, 218, 218, 28.8617 + 216, 215, 209, 213, 210, 209, 209, 212, 207, 213, 219, 221, 222, 222, 225, 230, 28.8618 + 231, 35, 38, 35, 41, 38, 32, 26, 41, 46, 35, 26, 26, 26, 23, 41, 28.8619 + 29, 38, 49, 35, 9, 18, 43, 114, 156, 162, 153, 156, 145, 155, 167, 167, 28.8620 + 165, 167, 169, 160, 165, 162, 162, 162, 164, 162, 156, 164, 160, 162, 160, 155, 28.8621 + 89, 101, 96, 96, 96, 86, 89, 91, 96, 89, 89, 86, 89, 98, 117, 135, 28.8622 + 149, 149, 153, 171, 169, 169, 174, 177, 172, 171, 169, 162, 155, 137, 119, 108, 28.8623 + 76, 66, 63, 60, 76, 76, 79, 84, 81, 96, 94, 94, 94, 96, 86, 96, 28.8624 + 101, 81, 86, 96, 86, 94, 103, 98, 110, 101, 96, 89, 81, 198, 215, 182, 28.8625 + 135, 127, 112, 105, 101, 79, 101, 94, 94, 86, 96, 79, 94, 114, 117, 117, 28.8626 + 110, 98, 123, 121, 125, 119, 110, 103, 123, 110, 108, 98, 112, 135, 160, 156, 28.8627 + 171, 143, 143, 151, 151, 160, 147, 135, 155, 158, 179, 177, 172, 185, 189, 187, 28.8628 + 172, 174, 181, 179, 167, 200, 195, 179, 193, 174, 187, 167, 187, 189, 181, 197, 28.8629 + 189, 192, 192, 187, 184, 203, 197, 184, 190, 200, 197, 198, 198, 210, 209, 212, 28.8630 + 206, 187, 172, 187, 197, 197, 204, 209, 209, 207, 206, 207, 204, 209, 204, 207, 28.8631 + 209, 209, 209, 207, 201, 201, 206, 206, 215, 212, 215, 143, 151, 155, 149, 151, 28.8632 + 149, 141, 151, 203, 219, 221, 212, 195, 207, 179, 203, 213, 221, 218, 215, 215, 28.8633 + 212, 209, 210, 209, 209, 210, 212, 212, 215, 218, 219, 222, 224, 225, 227, 225, 28.8634 + 222, 35, 35, 29, 41, 32, 35, 26, 32, 32, 46, 35, 26, 29, 15, 32, 28.8635 + 41, 32, 32, 29, 23, 38, 94, 143, 153, 162, 155, 145, 153, 158, 160, 169, 28.8636 + 164, 167, 165, 164, 162, 160, 160, 165, 162, 167, 160, 162, 164, 165, 158, 158, 28.8637 + 86, 96, 84, 86, 89, 96, 96, 98, 96, 81, 86, 79, 98, 98, 119, 131, 28.8638 + 147, 153, 158, 167, 169, 176, 172, 176, 174, 176, 172, 164, 153, 139, 123, 101, 28.8639 + 86, 55, 60, 57, 76, 81, 79, 84, 94, 101, 91, 96, 89, 86, 94, 94, 28.8640 + 86, 86, 89, 91, 86, 96, 103, 101, 96, 98, 105, 86, 91, 222, 215, 158, 28.8641 + 149, 121, 123, 98, 98, 103, 94, 96, 81, 94, 84, 98, 89, 91, 110, 94, 28.8642 + 94, 123, 110, 114, 117, 105, 101, 129, 108, 110, 110, 123, 151, 143, 149, 160, 28.8643 + 160, 141, 143, 147, 179, 139, 127, 162, 172, 169, 153, 176, 179, 187, 192, 174, 28.8644 + 177, 171, 164, 162, 193, 187, 201, 197, 174, 158, 164, 192, 184, 187, 185, 172, 28.8645 + 200, 193, 185, 185, 182, 181, 187, 197, 179, 187, 201, 207, 204, 195, 207, 201, 28.8646 + 172, 185, 201, 206, 198, 201, 192, 198, 200, 203, 204, 206, 204, 204, 204, 200, 28.8647 + 200, 206, 206, 207, 203, 201, 206, 201, 204, 209, 219, 164, 151, 151, 149, 147, 28.8648 + 139, 181, 209, 225, 209, 198, 193, 203, 187, 209, 219, 218, 216, 215, 212, 210, 28.8649 + 209, 209, 210, 212, 212, 213, 210, 213, 213, 216, 221, 218, 222, 225, 227, 228, 28.8650 + 212, 35, 38, 43, 43, 43, 41, 38, 46, 29, 23, 41, 20, 18, 23, 35, 28.8651 + 35, 35, 32, 35, 35, 74, 127, 147, 162, 153, 153, 147, 153, 160, 169, 167, 28.8652 + 167, 169, 164, 164, 164, 167, 158, 162, 162, 162, 164, 162, 162, 158, 160, 155, 28.8653 + 91, 94, 98, 89, 86, 91, 98, 89, 94, 86, 91, 76, 94, 98, 127, 133, 28.8654 + 149, 155, 164, 164, 171, 171, 174, 174, 172, 177, 174, 164, 155, 139, 127, 96, 28.8655 + 74, 68, 66, 63, 74, 76, 76, 79, 94, 81, 89, 91, 98, 94, 96, 94, 28.8656 + 79, 96, 94, 91, 94, 98, 96, 98, 98, 96, 101, 81, 96, 225, 209, 179, 28.8657 + 135, 135, 121, 98, 101, 98, 103, 96, 103, 91, 96, 91, 98, 117, 101, 110, 28.8658 + 117, 110, 123, 114, 101, 112, 114, 123, 117, 103, 123, 164, 147, 153, 147, 149, 28.8659 + 143, 145, 156, 153, 135, 129, 153, 164, 165, 169, 164, 177, 185, 177, 177, 177, 28.8660 + 174, 171, 181, 189, 167, 198, 179, 187, 155, 164, 187, 182, 181, 184, 176, 185, 28.8661 + 177, 189, 192, 172, 190, 187, 176, 192, 195, 189, 200, 190, 190, 160, 172, 179, 28.8662 + 189, 200, 203, 197, 187, 192, 189, 201, 203, 200, 201, 206, 206, 200, 193, 203, 28.8663 + 198, 195, 200, 203, 201, 193, 197, 198, 193, 206, 210, 197, 141, 156, 153, 172, 28.8664 + 207, 215, 212, 200, 203, 210, 189, 207, 212, 219, 215, 213, 213, 206, 207, 212, 28.8665 + 210, 207, 209, 212, 212, 210, 209, 215, 213, 212, 215, 221, 227, 227, 225, 230, 28.8666 + 171, 46, 35, 41, 41, 41, 46, 23, 41, 32, 20, 20, 20, 41, 23, 35, 28.8667 + 29, 41, 46, 55, 60, 101, 149, 153, 151, 149, 145, 149, 165, 169, 167, 162, 28.8668 + 169, 169, 169, 167, 164, 164, 160, 165, 167, 162, 160, 153, 160, 158, 158, 158, 28.8669 + 91, 98, 89, 86, 98, 96, 86, 86, 96, 89, 91, 81, 89, 103, 117, 135, 28.8670 + 145, 160, 167, 169, 174, 169, 179, 177, 174, 181, 174, 169, 153, 139, 123, 94, 28.8671 + 81, 68, 66, 68, 84, 98, 76, 86, 86, 91, 91, 84, 89, 94, 89, 96, 28.8672 + 81, 94, 96, 91, 98, 98, 91, 94, 105, 98, 86, 81, 129, 222, 204, 160, 28.8673 + 174, 127, 129, 98, 84, 101, 86, 98, 94, 103, 91, 101, 94, 96, 103, 103, 28.8674 + 103, 117, 103, 98, 121, 119, 125, 119, 98, 123, 151, 147, 153, 160, 149, 137, 28.8675 + 135, 153, 158, 129, 137, 162, 169, 158, 153, 172, 177, 160, 149, 172, 172, 174, 28.8676 + 185, 174, 172, 190, 179, 156, 181, 153, 181, 184, 179, 190, 182, 190, 185, 182, 28.8677 + 182, 182, 177, 192, 177, 197, 189, 181, 201, 190, 197, 190, 165, 190, 193, 192, 28.8678 + 197, 192, 179, 179, 201, 200, 206, 197, 206, 204, 201, 203, 203, 197, 190, 193, 28.8679 + 201, 200, 195, 198, 198, 195, 192, 201, 195, 198, 200, 210, 172, 149, 192, 221, 28.8680 + 216, 200, 184, 209, 195, 201, 212, 215, 216, 215, 212, 213, 209, 207, 209, 212, 28.8681 + 207, 210, 213, 213, 212, 210, 212, 209, 207, 213, 218, 218, 224, 228, 227, 231, 28.8682 + 137, 23, 35, 38, 43, 60, 38, 43, 46, 35, 38, 26, 29, 35, 26, 23, 28.8683 + 26, 29, 52, 57, 81, 131, 151, 156, 156, 143, 149, 155, 164, 167, 167, 162, 28.8684 + 164, 164, 165, 164, 164, 158, 162, 164, 162, 160, 160, 162, 162, 160, 160, 160, 28.8685 + 89, 89, 94, 91, 101, 91, 81, 89, 86, 86, 96, 86, 91, 101, 123, 137, 28.8686 + 145, 155, 164, 167, 174, 176, 177, 179, 177, 176, 174, 165, 156, 143, 119, 101, 28.8687 + 79, 66, 52, 60, 71, 66, 76, 81, 81, 89, 86, 94, 94, 91, 84, 86, 28.8688 + 86, 84, 94, 89, 98, 98, 96, 98, 96, 91, 89, 71, 172, 225, 204, 190, 28.8689 + 147, 137, 121, 108, 108, 89, 105, 110, 101, 86, 101, 94, 101, 108, 110, 108, 28.8690 + 117, 108, 98, 119, 127, 121, 114, 98, 114, 155, 139, 149, 149, 153, 145, 133, 28.8691 + 141, 158, 121, 125, 151, 149, 143, 167, 171, 174, 167, 174, 164, 165, 160, 182, 28.8692 + 192, 187, 174, 164, 181, 162, 164, 181, 182, 185, 181, 174, 182, 192, 185, 179, 28.8693 + 182, 184, 179, 176, 192, 179, 198, 201, 200, 201, 184, 182, 189, 181, 185, 192, 28.8694 + 201, 201, 203, 189, 198, 201, 201, 204, 192, 203, 198, 190, 198, 195, 189, 195, 28.8695 + 197, 197, 195, 197, 198, 195, 187, 201, 193, 197, 195, 203, 198, 207, 215, 209, 28.8696 + 197, 200, 204, 198, 206, 215, 216, 210, 212, 213, 210, 210, 212, 212, 206, 207, 28.8697 + 207, 212, 212, 213, 209, 212, 207, 203, 206, 218, 218, 216, 227, 227, 230, 230, 28.8698 + 68, 20, 26, 20, 26, 23, 35, 76, 55, 29, 38, 18, 41, 26, 26, 43, 28.8699 + 43, 52, 71, 84, 123, 145, 155, 149, 149, 145, 156, 165, 165, 169, 169, 169, 28.8700 + 165, 162, 165, 164, 160, 164, 160, 164, 162, 158, 164, 162, 156, 158, 162, 164, 28.8701 + 89, 94, 86, 94, 98, 79, 98, 94, 98, 84, 86, 94, 94, 112, 123, 131, 28.8702 + 145, 160, 171, 174, 174, 177, 179, 177, 176, 179, 174, 167, 156, 141, 112, 112, 28.8703 + 71, 63, 68, 68, 71, 79, 76, 86, 81, 79, 84, 101, 94, 89, 86, 84, 28.8704 + 89, 86, 91, 89, 86, 86, 98, 94, 91, 89, 84, 74, 203, 218, 207, 169, 28.8705 + 156, 141, 137, 119, 101, 112, 101, 89, 84, 98, 98, 96, 98, 103, 114, 112, 28.8706 + 110, 133, 121, 119, 133, 114, 96, 105, 151, 156, 149, 143, 143, 141, 139, 162, 28.8707 + 141, 119, 131, 155, 145, 151, 153, 155, 179, 151, 153, 158, 164, 169, 182, 169, 28.8708 + 189, 193, 193, 167, 156, 162, 177, 200, 185, 171, 177, 182, 174, 177, 195, 174, 28.8709 + 181, 179, 179, 179, 177, 190, 185, 200, 190, 184, 189, 193, 193, 187, 197, 189, 28.8710 + 184, 197, 193, 201, 193, 198, 200, 197, 203, 193, 200, 189, 177, 184, 193, 193, 28.8711 + 197, 182, 198, 187, 195, 190, 181, 177, 195, 185, 193, 201, 207, 209, 203, 203, 28.8712 + 203, 201, 207, 212, 219, 215, 212, 209, 209, 210, 209, 209, 209, 206, 207, 210, 28.8713 + 212, 213, 210, 212, 212, 212, 198, 200, 209, 213, 216, 218, 224, 227, 228, 222, 28.8714 + 20, 12, 23, 20, 43, 26, 23, 32, 32, 32, 18, 23, 29, 29, 49, 35, 28.8715 + 32, 38, 60, 101, 137, 155, 155, 153, 149, 151, 156, 164, 167, 167, 167, 164, 28.8716 + 167, 162, 160, 167, 162, 164, 162, 164, 162, 164, 162, 162, 158, 158, 160, 162, 28.8717 + 98, 98, 84, 84, 84, 86, 89, 89, 86, 86, 89, 86, 101, 108, 117, 133, 28.8718 + 145, 156, 164, 172, 176, 177, 179, 174, 176, 179, 172, 169, 155, 135, 121, 105, 28.8719 + 79, 55, 60, 60, 76, 79, 79, 89, 81, 91, 81, 91, 84, 89, 86, 91, 28.8720 + 89, 81, 98, 91, 86, 91, 103, 94, 89, 103, 79, 79, 218, 219, 193, 201, 28.8721 + 141, 147, 125, 127, 117, 125, 108, 108, 101, 94, 101, 96, 103, 123, 94, 98, 28.8722 + 114, 108, 117, 123, 117, 108, 103, 141, 149, 149, 155, 141, 133, 143, 160, 137, 28.8723 + 135, 133, 158, 145, 151, 143, 155, 158, 131, 167, 149, 158, 172, 177, 182, 190, 28.8724 + 172, 165, 179, 153, 171, 185, 171, 185, 182, 172, 176, 184, 189, 172, 171, 187, 28.8725 + 179, 177, 184, 176, 177, 174, 193, 181, 181, 193, 197, 189, 181, 187, 195, 176, 28.8726 + 190, 193, 192, 203, 201, 197, 195, 201, 195, 189, 184, 189, 185, 176, 187, 193, 28.8727 + 197, 197, 181, 189, 189, 181, 172, 172, 182, 203, 216, 204, 192, 172, 195, 204, 28.8728 + 203, 207, 216, 218, 215, 215, 209, 200, 209, 209, 207, 210, 207, 206, 204, 212, 28.8729 + 209, 213, 210, 213, 215, 195, 184, 193, 207, 213, 216, 216, 219, 225, 225, 195, 28.8730 + 26, 9, 23, 29, 20, 26, 23, 32, 35, 29, 20, 26, 23, 46, 38, 23, 28.8731 + 18, 43, 89, 129, 149, 153, 153, 145, 143, 153, 164, 164, 167, 165, 164, 167, 28.8732 + 167, 167, 169, 164, 160, 165, 164, 164, 164, 158, 165, 164, 160, 164, 162, 160, 28.8733 + 84, 86, 84, 89, 86, 89, 89, 96, 86, 86, 86, 86, 89, 108, 112, 133, 28.8734 + 145, 156, 164, 171, 177, 176, 176, 176, 176, 177, 172, 167, 149, 143, 125, 108, 28.8735 + 81, 63, 57, 68, 74, 84, 89, 86, 84, 89, 89, 91, 91, 91, 84, 84, 28.8736 + 84, 91, 86, 86, 98, 98, 94, 98, 96, 91, 79, 76, 218, 213, 200, 158, 28.8737 + 162, 147, 133, 129, 105, 133, 114, 110, 91, 101, 91, 105, 103, 89, 96, 108, 28.8738 + 131, 110, 125, 105, 101, 110, 149, 127, 145, 155, 141, 141, 133, 162, 133, 105, 28.8739 + 137, 149, 153, 151, 153, 165, 164, 133, 145, 137, 167, 158, 167, 189, 176, 177, 28.8740 + 179, 147, 151, 185, 184, 184, 185, 162, 164, 182, 174, 182, 182, 189, 177, 174, 28.8741 + 189, 181, 182, 177, 176, 179, 174, 181, 187, 185, 189, 195, 185, 189, 192, 197, 28.8742 + 184, 195, 192, 200, 201, 198, 193, 187, 189, 192, 195, 185, 172, 189, 172, 195, 28.8743 + 190, 190, 171, 190, 164, 177, 167, 198, 210, 209, 197, 167, 200, 197, 207, 209, 28.8744 + 212, 216, 215, 213, 213, 206, 203, 207, 209, 210, 206, 210, 206, 207, 209, 212, 28.8745 + 212, 212, 213, 215, 200, 176, 174, 189, 201, 212, 212, 210, 219, 224, 225, 114, 28.8746 + 29, 20, 20, 23, 20, 26, 29, 35, 74, 26, 23, 29, 43, 32, 35, 20, 28.8747 + 15, 52, 117, 141, 156, 156, 149, 147, 156, 160, 169, 165, 165, 167, 165, 167, 28.8748 + 165, 169, 169, 164, 158, 164, 162, 160, 164, 165, 160, 164, 162, 164, 164, 167, 28.8749 + 84, 89, 98, 86, 76, 81, 86, 79, 94, 98, 81, 84, 91, 105, 114, 139, 28.8750 + 143, 155, 164, 171, 174, 172, 179, 177, 172, 176, 174, 165, 155, 141, 119, 110, 28.8751 + 84, 57, 66, 71, 76, 74, 86, 81, 84, 91, 91, 94, 91, 84, 91, 86, 28.8752 + 86, 91, 79, 89, 91, 94, 96, 101, 94, 91, 84, 81, 230, 216, 182, 190, 28.8753 + 156, 165, 125, 143, 117, 125, 125, 94, 110, 89, 98, 101, 91, 112, 98, 110, 28.8754 + 129, 108, 84, 89, 117, 151, 133, 141, 147, 137, 143, 133, 160, 121, 110, 129, 28.8755 + 151, 149, 147, 156, 151, 162, 149, 131, 143, 143, 149, 167, 160, 164, 182, 162, 28.8756 + 153, 151, 172, 181, 192, 181, 179, 171, 169, 169, 185, 182, 177, 179, 187, 177, 28.8757 + 172, 156, 181, 185, 176, 162, 179, 181, 179, 192, 174, 179, 184, 184, 193, 197, 28.8758 + 195, 177, 197, 200, 198, 197, 187, 182, 179, 187, 184, 190, 192, 169, 193, 169, 28.8759 + 189, 187, 179, 174, 160, 189, 209, 216, 200, 181, 200, 195, 203, 204, 210, 213, 28.8760 + 215, 212, 210, 213, 206, 206, 204, 207, 206, 207, 209, 207, 207, 212, 210, 212, 28.8761 + 212, 213, 210, 210, 182, 164, 172, 174, 195, 212, 200, 204, 218, 218, 219, 23, 28.8762 + 35, 26, 23, 29, 32, 35, 23, 41, 29, 38, 26, 35, 32, 32, 41, 32, 28.8763 + 23, 71, 131, 151, 153, 151, 147, 151, 162, 167, 165, 165, 167, 167, 165, 160, 28.8764 + 164, 169, 160, 162, 162, 164, 164, 165, 162, 167, 160, 171, 165, 164, 162, 162, 28.8765 + 91, 86, 89, 86, 89, 89, 86, 86, 84, 94, 81, 91, 101, 98, 123, 135, 28.8766 + 147, 158, 167, 176, 176, 174, 177, 176, 177, 176, 177, 165, 156, 139, 125, 103, 28.8767 + 68, 63, 60, 66, 81, 89, 86, 91, 89, 86, 98, 94, 96, 86, 89, 94, 28.8768 + 89, 81, 91, 94, 89, 86, 86, 96, 98, 89, 76, 74, 222, 210, 201, 167, 28.8769 + 177, 145, 177, 127, 160, 125, 114, 101, 110, 105, 84, 68, 105, 94, 103, 123, 28.8770 + 112, 96, 94, 110, 143, 147, 135, 133, 141, 143, 141, 160, 110, 117, 125, 143, 28.8771 + 151, 153, 151, 158, 153, 151, 139, 143, 155, 177, 145, 135, 176, 158, 153, 145, 28.8772 + 167, 182, 181, 177, 169, 172, 179, 176, 169, 169, 162, 174, 189, 176, 164, 172, 28.8773 + 172, 171, 167, 171, 179, 182, 176, 169, 172, 162, 181, 176, 181, 187, 184, 195, 28.8774 + 195, 187, 181, 190, 192, 185, 185, 184, 177, 190, 190, 195, 192, 184, 185, 165, 28.8775 + 187, 174, 167, 172, 203, 216, 200, 193, 197, 204, 206, 203, 210, 215, 210, 209, 28.8776 + 207, 204, 203, 204, 206, 206, 206, 210, 207, 207, 206, 212, 209, 207, 212, 210, 28.8777 + 215, 209, 215, 189, 174, 167, 160, 172, 198, 164, 177, 200, 210, 219, 177, 23, 28.8778 + 23, 57, 46, 43, 23, 32, 41, 52, 29, 20, 23, 26, 23, 32, 43, 66, 28.8779 + 57, 117, 147, 155, 155, 151, 149, 155, 167, 171, 169, 167, 169, 164, 165, 165, 28.8780 + 167, 172, 167, 160, 172, 160, 167, 164, 164, 162, 167, 169, 164, 162, 162, 165, 28.8781 + 84, 89, 81, 94, 86, 84, 86, 84, 86, 81, 81, 94, 94, 94, 123, 131, 28.8782 + 151, 158, 172, 174, 172, 172, 177, 176, 171, 176, 169, 164, 155, 141, 131, 98, 28.8783 + 81, 76, 63, 71, 81, 91, 81, 84, 89, 89, 89, 86, 91, 81, 89, 91, 28.8784 + 94, 86, 86, 98, 89, 89, 94, 89, 96, 91, 86, 84, 227, 210, 174, 189, 28.8785 + 141, 164, 131, 139, 137, 133, 121, 119, 114, 94, 76, 96, 79, 91, 123, 110, 28.8786 + 110, 84, 119, 139, 147, 139, 141, 123, 133, 129, 164, 112, 108, 127, 143, 153, 28.8787 + 145, 158, 155, 147, 151, 137, 164, 162, 153, 145, 143, 137, 153, 172, 139, 164, 28.8788 + 172, 174, 185, 177, 164, 169, 167, 177, 172, 177, 177, 164, 172, 182, 164, 167, 28.8789 + 174, 174, 171, 177, 165, 179, 177, 151, 167, 177, 182, 179, 177, 184, 185, 182, 28.8790 + 193, 193, 192, 184, 187, 187, 182, 182, 179, 171, 184, 193, 182, 182, 155, 169, 28.8791 + 167, 169, 195, 207, 201, 190, 192, 201, 201, 204, 210, 218, 213, 209, 206, 207, 28.8792 + 201, 195, 203, 204, 204, 201, 209, 207, 206, 207, 207, 209, 209, 210, 212, 215, 28.8793 + 215, 210, 207, 174, 155, 162, 177, 198, 149, 141, 172, 195, 204, 222, 49, 41, 28.8794 + 12, 55, 68, 38, 35, 41, 29, 32, 38, 18, 32, 23, 35, 38, 52, 71, 28.8795 + 103, 137, 149, 151, 151, 147, 151, 165, 164, 162, 167, 165, 167, 156, 164, 165, 28.8796 + 164, 164, 165, 167, 165, 164, 165, 160, 164, 167, 171, 169, 162, 164, 164, 162, 28.8797 + 89, 81, 91, 91, 86, 86, 81, 91, 91, 84, 91, 86, 86, 103, 123, 141, 28.8798 + 155, 162, 165, 172, 177, 171, 171, 176, 176, 172, 171, 164, 153, 141, 121, 103, 28.8799 + 76, 55, 66, 57, 79, 86, 79, 91, 84, 108, 96, 89, 84, 84, 89, 86, 28.8800 + 84, 79, 89, 91, 89, 84, 89, 98, 89, 94, 74, 89, 228, 192, 195, 156, 28.8801 + 181, 137, 189, 131, 153, 125, 141, 121, 101, 96, 101, 81, 86, 110, 96, 105, 28.8802 + 76, 117, 145, 143, 131, 137, 127, 137, 129, 158, 103, 117, 119, 133, 135, 149, 28.8803 + 156, 147, 147, 135, 149, 155, 160, 167, 139, 167, 167, 156, 141, 135, 179, 151, 28.8804 + 165, 174, 164, 169, 174, 171, 171, 176, 176, 167, 181, 169, 155, 158, 190, 171, 28.8805 + 165, 172, 176, 177, 164, 156, 169, 172, 172, 171, 177, 187, 174, 182, 172, 172, 28.8806 + 185, 193, 187, 182, 169, 177, 177, 184, 171, 181, 165, 189, 181, 174, 162, 160, 28.8807 + 181, 203, 209, 190, 185, 197, 187, 204, 207, 212, 213, 210, 209, 206, 198, 198, 28.8808 + 201, 200, 198, 203, 206, 206, 209, 209, 209, 209, 209, 213, 207, 213, 215, 212, 28.8809 + 213, 216, 172, 165, 160, 177, 195, 160, 127, 155, 181, 195, 213, 212, 18, 20, 28.8810 + 18, 18, 41, 32, 66, 41, 23, 15, 38, 35, 38, 26, 35, 41, 63, 84, 28.8811 + 127, 143, 156, 147, 149, 153, 153, 162, 165, 165, 165, 169, 167, 167, 167, 162, 28.8812 + 162, 164, 167, 165, 165, 162, 160, 160, 165, 164, 167, 162, 164, 164, 164, 162, 28.8813 + 79, 94, 86, 84, 89, 86, 91, 86, 86, 84, 86, 79, 89, 108, 123, 141, 28.8814 + 145, 160, 167, 171, 174, 176, 174, 172, 176, 176, 174, 167, 156, 145, 123, 101, 28.8815 + 84, 52, 66, 57, 71, 84, 86, 96, 86, 89, 91, 89, 94, 84, 84, 89, 28.8816 + 84, 91, 81, 91, 94, 86, 98, 86, 91, 84, 79, 89, 231, 206, 164, 192, 28.8817 + 145, 167, 135, 155, 139, 141, 123, 133, 94, 98, 89, 101, 103, 96, 101, 79, 28.8818 + 105, 145, 141, 135, 139, 119, 141, 139, 156, 101, 114, 112, 141, 153, 141, 145, 28.8819 + 147, 153, 131, 156, 139, 137, 143, 151, 155, 156, 162, 143, 137, 145, 177, 174, 28.8820 + 164, 149, 155, 153, 171, 182, 171, 165, 174, 162, 160, 172, 162, 167, 160, 176, 28.8821 + 177, 164, 156, 143, 179, 167, 171, 174, 172, 172, 177, 169, 184, 176, 165, 181, 28.8822 + 177, 181, 182, 181, 181, 174, 172, 182, 172, 171, 171, 181, 176, 164, 179, 200, 28.8823 + 212, 184, 169, 195, 192, 204, 206, 216, 215, 213, 212, 209, 203, 203, 201, 204, 28.8824 + 203, 201, 201, 206, 206, 207, 210, 210, 209, 207, 210, 209, 209, 212, 215, 215, 28.8825 + 213, 203, 160, 171, 176, 189, 156, 139, 149, 174, 185, 190, 222, 171, 15, 20, 28.8826 + 18, 20, 35, 41, 32, 32, 26, 26, 35, 26, 35, 23, 29, 60, 63, 105, 28.8827 + 143, 158, 153, 151, 147, 151, 164, 165, 164, 171, 162, 165, 172, 164, 165, 162, 28.8828 + 169, 165, 165, 164, 167, 167, 164, 167, 164, 160, 164, 167, 158, 160, 165, 162, 28.8829 + 91, 86, 94, 81, 81, 89, 89, 84, 86, 84, 91, 86, 86, 110, 125, 135, 28.8830 + 151, 158, 167, 172, 179, 174, 174, 174, 172, 176, 176, 164, 155, 141, 133, 101, 28.8831 + 84, 66, 63, 74, 71, 89, 81, 96, 89, 89, 89, 89, 84, 84, 94, 84, 28.8832 + 89, 86, 96, 101, 89, 89, 101, 91, 84, 79, 79, 112, 224, 185, 195, 160, 28.8833 + 187, 141, 176, 135, 143, 112, 141, 114, 112, 112, 103, 91, 94, 103, 79, 131, 28.8834 + 141, 145, 141, 131, 133, 123, 121, 164, 86, 131, 117, 143, 141, 141, 147, 139, 28.8835 + 133, 139, 139, 141, 151, 133, 153, 151, 160, 149, 139, 139, 160, 176, 156, 155, 28.8836 + 164, 162, 155, 164, 171, 160, 171, 162, 158, 160, 165, 171, 169, 176, 177, 162, 28.8837 + 171, 131, 158, 181, 164, 179, 171, 179, 169, 158, 179, 176, 182, 176, 167, 162, 28.8838 + 181, 164, 167, 172, 182, 179, 171, 176, 181, 162, 172, 153, 156, 184, 206, 200, 28.8839 + 172, 193, 193, 200, 206, 212, 210, 209, 209, 206, 203, 201, 200, 201, 203, 203, 28.8840 + 203, 204, 203, 207, 209, 213, 209, 210, 209, 210, 209, 212, 213, 213, 218, 218, 28.8841 + 218, 164, 158, 174, 190, 162, 139, 158, 174, 174, 179, 206, 228, 52, 20, 18, 28.8842 + 20, 20, 32, 29, 38, 71, 18, 26, 26, 38, 32, 20, 35, 63, 94, 131, 28.8843 + 153, 155, 151, 145, 147, 153, 160, 167, 169, 165, 174, 167, 158, 164, 162, 158, 28.8844 + 162, 167, 164, 162, 164, 167, 162, 162, 167, 164, 167, 162, 160, 158, 160, 160, 28.8845 + 89, 84, 101, 79, 79, 84, 91, 94, 91, 89, 79, 91, 96, 103, 121, 133, 28.8846 + 149, 162, 167, 172, 169, 176, 174, 172, 174, 172, 172, 162, 153, 149, 125, 103, 28.8847 + 76, 71, 60, 66, 79, 81, 79, 94, 89, 91, 96, 89, 94, 86, 96, 86, 28.8848 + 81, 89, 89, 89, 89, 84, 94, 96, 84, 79, 63, 119, 212, 209, 177, 203, 28.8849 + 171, 179, 149, 165, 141, 135, 131, 162, 114, 127, 105, 94, 98, 86, 117, 127, 28.8850 + 139, 141, 135, 133, 135, 145, 135, 101, 114, 117, 137, 153, 145, 139, 153, 143, 28.8851 + 133, 145, 153, 131, 129, 147, 155, 158, 151, 135, 141, 151, 162, 156, 167, 155, 28.8852 + 151, 158, 174, 155, 155, 164, 139, 147, 164, 165, 167, 177, 171, 174, 160, 137, 28.8853 + 162, 169, 165, 167, 177, 156, 171, 177, 176, 167, 164, 169, 162, 177, 164, 176, 28.8854 + 153, 179, 164, 169, 167, 177, 165, 167, 171, 156, 149, 184, 200, 210, 181, 181, 28.8855 + 192, 192, 206, 201, 209, 206, 206, 204, 197, 189, 200, 200, 200, 203, 204, 207, 28.8856 + 204, 201, 207, 209, 210, 210, 212, 212, 209, 212, 210, 212, 216, 215, 216, 216, 28.8857 + 190, 158, 164, 187, 149, 153, 172, 179, 162, 147, 181, 222, 212, 32, 20, 23, 28.8858 + 46, 41, 35, 38, 29, 32, 41, 32, 41, 43, 23, 35, 68, 60, 108, 145, 28.8859 + 158, 158, 149, 147, 155, 164, 162, 167, 169, 165, 167, 167, 162, 160, 160, 160, 28.8860 + 162, 160, 167, 162, 162, 164, 162, 158, 165, 165, 162, 162, 162, 164, 165, 165, 28.8861 + 86, 91, 96, 91, 86, 84, 98, 86, 91, 96, 89, 89, 96, 108, 125, 137, 28.8862 + 145, 158, 169, 177, 177, 177, 177, 177, 177, 177, 174, 165, 156, 145, 127, 112, 28.8863 + 96, 63, 52, 57, 81, 79, 86, 89, 84, 96, 86, 81, 86, 79, 89, 86, 28.8864 + 89, 89, 94, 89, 86, 89, 101, 94, 84, 79, 63, 167, 216, 195, 210, 177, 28.8865 + 195, 177, 158, 171, 145, 149, 143, 151, 129, 112, 94, 96, 79, 123, 135, 139, 28.8866 + 110, 135, 131, 119, 137, 147, 98, 119, 112, 141, 133, 137, 147, 156, 137, 137, 28.8867 + 141, 129, 112, 131, 149, 155, 143, 165, 131, 147, 162, 164, 155, 158, 164, 158, 28.8868 + 153, 143, 174, 171, 164, 171, 155, 147, 139, 129, 143, 135, 153, 147, 158, 165, 28.8869 + 162, 177, 172, 171, 160, 169, 167, 165, 176, 176, 176, 158, 179, 160, 179, 167, 28.8870 + 179, 158, 172, 172, 156, 169, 160, 155, 156, 165, 195, 209, 192, 176, 197, 179, 28.8871 + 201, 209, 213, 209, 200, 200, 193, 192, 193, 195, 197, 203, 204, 206, 203, 206, 28.8872 + 209, 207, 209, 210, 212, 210, 210, 210, 209, 213, 212, 213, 218, 218, 224, 213, 28.8873 + 155, 162, 187, 151, 155, 177, 169, 119, 127, 164, 204, 230, 135, 18, 23, 26, 28.8874 + 29, 43, 41, 35, 49, 29, 41, 68, 41, 52, 41, 26, 43, 81, 129, 153, 28.8875 + 153, 149, 151, 147, 158, 165, 164, 162, 158, 165, 160, 162, 167, 164, 160, 162, 28.8876 + 162, 160, 169, 164, 164, 162, 162, 164, 165, 164, 169, 162, 164, 162, 164, 160, 28.8877 + 84, 86, 91, 91, 91, 96, 86, 86, 89, 91, 98, 101, 101, 114, 119, 135, 28.8878 + 151, 162, 164, 174, 176, 177, 171, 177, 174, 172, 172, 164, 158, 151, 133, 98, 28.8879 + 81, 57, 60, 63, 68, 84, 91, 91, 84, 89, 86, 86, 86, 81, 96, 94, 28.8880 + 89, 86, 98, 89, 86, 84, 94, 84, 86, 66, 57, 145, 212, 213, 195, 200, 28.8881 + 192, 171, 177, 151, 160, 141, 141, 149, 145, 114, 98, 74, 89, 133, 139, 137, 28.8882 + 137, 117, 125, 131, 141, 96, 129, 114, 131, 151, 139, 133, 143, 135, 135, 145, 28.8883 + 117, 129, 121, 135, 147, 153, 155, 121, 125, 151, 153, 176, 158, 162, 155, 145, 28.8884 + 143, 156, 139, 155, 151, 158, 156, 131, 137, 151, 153, 112, 60, 147, 171, 158, 28.8885 + 164, 164, 160, 162, 162, 162, 165, 171, 164, 171, 172, 167, 160, 164, 156, 172, 28.8886 + 164, 169, 162, 172, 162, 141, 162, 151, 179, 203, 198, 185, 184, 182, 204, 204, 28.8887 + 201, 212, 209, 197, 198, 198, 201, 200, 198, 198, 207, 204, 204, 207, 207, 209, 28.8888 + 207, 207, 212, 212, 210, 209, 210, 212, 209, 213, 213, 216, 216, 218, 219, 181, 28.8889 + 164, 181, 145, 167, 147, 108, 74, 108, 127, 184, 221, 227, 41, 26, 12, 29, 28.8890 + 41, 43, 52, 26, 46, 38, 29, 71, 35, 32, 26, 38, 49, 103, 149, 162, 28.8891 + 153, 149, 151, 153, 160, 165, 167, 164, 165, 165, 162, 162, 160, 160, 160, 160, 28.8892 + 160, 164, 162, 160, 160, 164, 162, 162, 165, 162, 160, 167, 164, 156, 160, 160, 28.8893 + 96, 84, 89, 84, 86, 89, 94, 81, 94, 89, 94, 101, 98, 105, 123, 135, 28.8894 + 147, 160, 165, 172, 171, 177, 172, 176, 172, 177, 172, 167, 158, 143, 123, 105, 28.8895 + 79, 63, 55, 71, 71, 74, 96, 98, 89, 81, 84, 84, 84, 81, 91, 91, 28.8896 + 91, 86, 79, 84, 94, 89, 101, 84, 81, 68, 60, 164, 222, 201, 207, 195, 28.8897 + 174, 185, 149, 177, 155, 174, 135, 167, 139, 125, 89, 89, 114, 129, 123, 123, 28.8898 + 125, 121, 137, 143, 96, 119, 125, 127, 151, 143, 135, 141, 135, 139, 145, 105, 28.8899 + 123, 137, 141, 131, 143, 160, 121, 139, 153, 143, 155, 153, 149, 108, 84, 105, 28.8900 + 110, 101, 84, 86, 112, 129, 153, 108, 149, 137, 149, 153, 103, 112, 165, 167, 28.8901 + 167, 167, 172, 162, 149, 137, 147, 158, 162, 169, 169, 167, 151, 149, 158, 89, 28.8902 + 179, 164, 174, 141, 164, 145, 158, 189, 203, 193, 181, 184, 190, 203, 200, 210, 28.8903 + 204, 206, 203, 197, 197, 200, 201, 198, 203, 203, 204, 207, 206, 209, 209, 206, 28.8904 + 207, 212, 206, 213, 212, 213, 212, 212, 209, 213, 213, 216, 219, 218, 209, 164, 28.8905 + 177, 155, 162, 105, 68, 79, 84, 129, 165, 210, 228, 200, 18, 12, 12, 29, 28.8906 + 26, 23, 43, 29, 26, 26, 38, 46, 35, 43, 38, 46, 81, 133, 155, 160, 28.8907 + 149, 149, 149, 155, 158, 169, 165, 165, 164, 160, 167, 158, 164, 162, 162, 164, 28.8908 + 158, 162, 160, 158, 164, 162, 162, 164, 160, 165, 162, 164, 164, 158, 162, 158, 28.8909 + 89, 96, 84, 91, 84, 91, 91, 94, 86, 94, 91, 94, 94, 108, 121, 135, 28.8910 + 149, 162, 167, 171, 169, 177, 176, 174, 177, 177, 169, 172, 156, 149, 129, 105, 28.8911 + 81, 71, 49, 55, 79, 76, 79, 91, 86, 84, 89, 86, 86, 86, 86, 96, 28.8912 + 84, 86, 81, 89, 94, 91, 84, 89, 86, 76, 63, 153, 216, 216, 201, 204, 28.8913 + 197, 151, 176, 153, 165, 125, 177, 133, 164, 127, 117, 125, 112, 127, 119, 119, 28.8914 + 117, 133, 133, 127, 96, 121, 125, 145, 135, 143, 137, 131, 141, 133, 114, 125, 28.8915 + 121, 133, 139, 158, 133, 117, 135, 151, 164, 151, 147, 135, 86, 91, 160, 133, 28.8916 + 141, 114, 117, 108, 98, 71, 108, 79, 145, 174, 172, 167, 149, 117, 98, 91, 28.8917 + 112, 137, 137, 165, 160, 162, 158, 158, 105, 158, 147, 156, 167, 127, 137, 84, 28.8918 + 41, 133, 156, 153, 139, 167, 195, 207, 171, 185, 171, 204, 210, 210, 212, 204, 28.8919 + 201, 206, 203, 204, 198, 201, 206, 200, 206, 204, 206, 212, 207, 207, 209, 210, 28.8920 + 207, 210, 209, 212, 210, 210, 213, 212, 210, 215, 215, 219, 219, 218, 171, 167, 28.8921 + 164, 121, 68, 84, 84, 94, 110, 162, 201, 222, 228, 89, 18, 20, 15, 29, 28.8922 + 41, 23, 32, 23, 26, 38, 29, 38, 32, 35, 43, 55, 103, 145, 158, 156, 28.8923 + 149, 147, 155, 165, 165, 169, 164, 167, 164, 167, 164, 165, 164, 167, 165, 158, 28.8924 + 164, 165, 165, 164, 164, 164, 162, 162, 162, 162, 160, 160, 160, 156, 165, 160, 28.8925 + 94, 91, 86, 89, 89, 89, 84, 94, 94, 79, 89, 86, 94, 108, 127, 137, 28.8926 + 149, 158, 167, 177, 176, 179, 179, 176, 177, 172, 171, 167, 156, 139, 123, 105, 28.8927 + 79, 57, 66, 63, 71, 76, 79, 86, 86, 98, 86, 86, 96, 86, 91, 94, 28.8928 + 86, 91, 84, 89, 86, 89, 89, 94, 71, 68, 57, 141, 225, 206, 209, 209, 28.8929 + 187, 197, 162, 176, 119, 182, 131, 167, 135, 127, 110, 105, 129, 114, 103, 123, 28.8930 + 121, 133, 112, 127, 114, 127, 147, 139, 135, 131, 135, 133, 121, 112, 127, 133, 28.8931 + 133, 133, 141, 145, 131, 127, 151, 155, 145, 155, 145, 98, 121, 143, 141, 139, 28.8932 + 129, 119, 117, 105, 110, 89, 68, 79, 160, 176, 171, 172, 158, 123, 137, 112, 28.8933 + 133, 131, 105, 84, 123, 143, 153, 179, 145, 114, 105, 55, 105, 49, 114, 119, 28.8934 + 32, 35, 172, 151, 167, 203, 189, 156, 171, 176, 198, 192, 204, 204, 209, 200, 28.8935 + 201, 204, 203, 203, 206, 206, 200, 204, 204, 206, 207, 206, 209, 209, 209, 210, 28.8936 + 209, 212, 213, 215, 210, 210, 210, 210, 212, 212, 216, 219, 212, 179, 158, 153, 28.8937 + 79, 76, 81, 84, 89, 103, 137, 187, 218, 225, 189, 23, 23, 35, 20, 26, 28.8938 + 29, 26, 38, 26, 20, 43, 41, 43, 41, 29, 43, 81, 125, 149, 155, 149, 28.8939 + 143, 151, 156, 162, 172, 171, 167, 165, 167, 169, 169, 164, 160, 160, 165, 162, 28.8940 + 162, 160, 162, 160, 162, 160, 158, 160, 160, 162, 160, 160, 160, 158, 160, 158, 28.8941 + 89, 91, 98, 89, 86, 96, 79, 94, 105, 96, 96, 94, 105, 119, 131, 133, 28.8942 + 155, 155, 169, 176, 181, 172, 177, 179, 177, 174, 174, 164, 162, 143, 127, 103, 28.8943 + 74, 60, 55, 63, 68, 76, 89, 79, 84, 84, 91, 103, 96, 89, 81, 101, 28.8944 + 86, 94, 86, 84, 91, 89, 94, 89, 76, 71, 60, 123, 219, 216, 207, 198, 28.8945 + 210, 181, 189, 145, 172, 123, 156, 139, 167, 149, 101, 103, 96, 121, 108, 117, 28.8946 + 133, 112, 98, 123, 127, 143, 135, 133, 137, 135, 139, 133, 112, 129, 127, 125, 28.8947 + 139, 131, 127, 129, 125, 145, 137, 147, 156, 135, 114, 147, 149, 145, 135, 112, 28.8948 + 101, 101, 98, 63, 49, 49, 55, 57, 162, 151, 169, 167, 135, 149, 127, 137, 28.8949 + 129, 114, 98, 79, 89, 101, 63, 84, 76, 55, 60, 41, 26, 43, 23, 63, 28.8950 + 20, 26, 127, 189, 203, 169, 164, 164, 192, 203, 209, 206, 204, 207, 201, 200, 28.8951 + 204, 209, 204, 203, 203, 204, 204, 201, 206, 204, 209, 209, 206, 209, 207, 210, 28.8952 + 206, 209, 213, 213, 210, 213, 213, 212, 213, 215, 218, 190, 165, 133, 94, 74, 28.8953 + 74, 76, 86, 91, 94, 133, 185, 207, 219, 216, 35, 20, 15, 18, 35, 29, 28.8954 + 41, 32, 23, 23, 18, 26, 41, 41, 29, 29, 74, 105, 145, 155, 147, 149, 28.8955 + 147, 153, 160, 169, 169, 164, 171, 162, 169, 167, 162, 164, 162, 162, 162, 164, 28.8956 + 162, 164, 160, 162, 160, 160, 162, 162, 164, 160, 165, 162, 164, 162, 160, 158, 28.8957 + 94, 96, 91, 91, 94, 96, 89, 86, 91, 101, 98, 94, 91, 108, 125, 137, 28.8958 + 155, 160, 171, 176, 176, 179, 177, 179, 176, 177, 171, 171, 158, 145, 127, 105, 28.8959 + 81, 55, 46, 66, 74, 66, 89, 84, 94, 81, 91, 84, 89, 96, 84, 96, 28.8960 + 84, 86, 86, 84, 86, 81, 84, 79, 81, 79, 66, 103, 224, 215, 193, 210, 28.8961 + 181, 210, 171, 176, 121, 141, 112, 149, 153, 112, 103, 96, 110, 123, 112, 131, 28.8962 + 108, 89, 119, 112, 143, 135, 135, 125, 133, 149, 114, 129, 125, 135, 127, 137, 28.8963 + 129, 131, 127, 119, 137, 149, 139, 133, 139, 114, 123, 135, 155, 127, 98, 94, 28.8964 + 101, 96, 84, 89, 108, 71, 81, 96, 137, 156, 147, 143, 147, 135, 68, 55, 28.8965 + 60, 60, 43, 101, 139, 41, 63, 55, 41, 38, 43, 26, 32, 26, 35, 20, 28.8966 + 18, 81, 185, 200, 153, 160, 177, 203, 203, 206, 209, 203, 210, 203, 203, 201, 28.8967 + 206, 206, 204, 203, 203, 203, 203, 204, 203, 207, 207, 209, 209, 212, 207, 210, 28.8968 + 207, 213, 216, 215, 213, 213, 213, 215, 212, 184, 141, 108, 91, 84, 81, 76, 28.8969 + 79, 89, 89, 94, 137, 179, 197, 213, 225, 141, 32, 26, 26, 38, 29, 32, 28.8970 + 35, 26, 18, 41, 35, 38, 43, 26, 23, 32, 68, 129, 151, 149, 149, 147, 28.8971 + 151, 162, 165, 165, 167, 167, 167, 164, 165, 162, 167, 162, 167, 160, 164, 162, 28.8972 + 164, 155, 160, 162, 162, 164, 165, 164, 164, 162, 160, 156, 165, 158, 160, 162, 28.8973 + 89, 89, 94, 96, 91, 91, 94, 101, 84, 89, 101, 94, 94, 110, 121, 141, 28.8974 + 151, 165, 167, 176, 174, 177, 177, 176, 174, 174, 176, 167, 158, 151, 125, 110, 28.8975 + 79, 60, 46, 68, 71, 74, 81, 96, 84, 98, 96, 86, 84, 94, 84, 89, 28.8976 + 84, 94, 91, 94, 89, 86, 103, 86, 86, 71, 71, 81, 228, 207, 212, 189, 28.8977 + 216, 185, 204, 153, 153, 125, 133, 141, 131, 117, 112, 108, 103, 108, 133, 108, 28.8978 + 101, 105, 110, 131, 131, 141, 131, 137, 135, 137, 114, 131, 125, 129, 129, 127, 28.8979 + 141, 127, 117, 137, 141, 141, 137, 145, 103, 105, 141, 143, 127, 119, 105, 127, 28.8980 + 135, 105, 117, 149, 123, 110, 63, 86, 110, 84, 123, 153, 86, 71, 108, 46, 28.8981 + 41, 55, 127, 103, 46, 52, 66, 86, 26, 32, 18, 15, 23, 68, 23, 103, 28.8982 + 117, 195, 187, 137, 155, 193, 207, 209, 210, 206, 204, 201, 204, 200, 201, 201, 28.8983 + 203, 201, 203, 206, 200, 203, 203, 204, 201, 206, 207, 206, 210, 207, 209, 204, 28.8984 + 206, 218, 212, 212, 216, 216, 210, 158, 112, 81, 81, 81, 89, 86, 86, 79, 28.8985 + 76, 96, 110, 147, 185, 190, 204, 219, 193, 26, 35, 32, 18, 35, 38, 26, 28.8986 + 38, 26, 35, 20, 29, 35, 26, 26, 18, 43, 89, 143, 151, 149, 149, 147, 28.8987 + 153, 167, 176, 164, 165, 169, 164, 162, 164, 169, 167, 167, 160, 164, 167, 164, 28.8988 + 167, 164, 160, 160, 158, 158, 162, 162, 162, 162, 164, 162, 160, 165, 160, 158, 28.8989 + 89, 89, 94, 98, 103, 89, 89, 84, 89, 103, 96, 89, 91, 112, 121, 139, 28.8990 + 147, 164, 169, 176, 172, 176, 181, 174, 176, 176, 176, 165, 158, 143, 133, 110, 28.8991 + 84, 74, 57, 74, 71, 84, 81, 98, 86, 84, 91, 86, 86, 86, 98, 84, 28.8992 + 89, 89, 89, 89, 98, 84, 86, 81, 89, 76, 66, 55, 203, 219, 204, 218, 28.8993 + 190, 213, 184, 182, 121, 119, 98, 123, 133, 129, 108, 105, 108, 123, 123, 98, 28.8994 + 105, 112, 135, 133, 129, 131, 129, 135, 139, 101, 119, 125, 131, 133, 135, 127, 28.8995 + 121, 123, 135, 141, 131, 133, 141, 105, 108, 133, 131, 125, 125, 98, 125, 121, 28.8996 + 101, 103, 133, 121, 98, 55, 71, 71, 74, 79, 121, 96, 114, 68, 60, 68, 28.8997 + 84, 129, 55, 71, 96, 74, 79, 101, 43, 26, 18, 20, 12, 18, 35, 164, 28.8998 + 203, 165, 149, 158, 192, 207, 203, 210, 204, 203, 206, 203, 203, 204, 203, 201, 28.8999 + 203, 209, 203, 200, 203, 203, 206, 201, 201, 209, 203, 204, 209, 209, 213, 210, 28.9000 + 210, 218, 213, 215, 212, 133, 94, 76, 79, 84, 81, 76, 94, 79, 84, 94, 28.9001 + 96, 135, 158, 181, 203, 206, 206, 101, 32, 18, 20, 23, 29, 41, 35, 32, 28.9002 + 35, 26, 41, 38, 29, 43, 29, 23, 23, 49, 121, 156, 156, 149, 149, 155, 28.9003 + 164, 167, 171, 167, 172, 167, 164, 167, 169, 167, 169, 167, 165, 164, 167, 162, 28.9004 + 160, 162, 162, 162, 162, 162, 162, 164, 162, 164, 158, 164, 162, 160, 158, 160, 28.9005 + 86, 91, 105, 91, 101, 98, 94, 96, 84, 91, 86, 91, 96, 112, 127, 135, 28.9006 + 153, 162, 171, 177, 179, 176, 176, 172, 174, 177, 174, 167, 162, 145, 125, 105, 28.9007 + 76, 63, 55, 68, 71, 79, 76, 84, 81, 89, 89, 81, 84, 84, 91, 84, 28.9008 + 101, 86, 98, 79, 89, 81, 86, 84, 86, 84, 60, 55, 193, 210, 219, 195, 28.9009 + 216, 192, 200, 147, 155, 110, 91, 169, 133, 153, 117, 121, 131, 105, 81, 108, 28.9010 + 110, 127, 129, 145, 137, 139, 129, 125, 114, 121, 125, 127, 131, 135, 129, 125, 28.9011 + 123, 127, 137, 137, 141, 129, 117, 110, 135, 137, 135, 119, 98, 129, 137, 119, 28.9012 + 125, 76, 46, 43, 41, 43, 41, 43, 57, 94, 101, 137, 103, 121, 105, 137, 28.9013 + 117, 89, 149, 43, 41, 23, 46, 129, 32, 29, 46, 12, 18, 55, 162, 201, 28.9014 + 151, 112, 160, 207, 195, 200, 198, 200, 203, 207, 204, 198, 203, 201, 197, 201, 28.9015 + 200, 198, 206, 204, 201, 203, 201, 203, 203, 207, 206, 207, 210, 212, 210, 206, 28.9016 + 215, 216, 212, 184, 103, 81, 84, 81, 91, 81, 76, 81, 91, 96, 103, 121, 28.9017 + 149, 172, 185, 204, 204, 206, 46, 26, 18, 23, 29, 29, 43, 29, 35, 20, 28.9018 + 32, 23, 46, 35, 41, 41, 35, 26, 38, 89, 135, 153, 155, 145, 143, 155, 28.9019 + 160, 169, 169, 171, 169, 167, 164, 164, 172, 165, 167, 171, 164, 164, 164, 167, 28.9020 + 160, 165, 164, 160, 162, 158, 162, 162, 156, 160, 162, 158, 162, 162, 162, 158, 28.9021 + 98, 101, 101, 101, 101, 91, 89, 91, 89, 86, 94, 98, 98, 108, 129, 139, 28.9022 + 149, 156, 171, 172, 174, 174, 174, 179, 171, 176, 177, 164, 158, 145, 129, 101, 28.9023 + 81, 68, 63, 55, 71, 71, 81, 79, 76, 89, 96, 86, 89, 94, 86, 84, 28.9024 + 89, 86, 89, 86, 89, 84, 81, 84, 86, 86, 71, 68, 117, 228, 190, 218, 28.9025 + 193, 219, 189, 172, 123, 129, 153, 139, 162, 110, 155, 121, 110, 94, 94, 117, 28.9026 + 125, 127, 141, 127, 133, 137, 112, 112, 121, 117, 127, 125, 129, 133, 129, 117, 28.9027 + 131, 141, 137, 137, 127, 114, 94, 125, 127, 145, 119, 123, 94, 121, 98, 74, 28.9028 + 66, 60, 74, 49, 35, 57, 55, 52, 84, 112, 133, 117, 103, 76, 71, 101, 28.9029 + 55, 149, 101, 60, 76, 43, 43, 131, 18, 18, 18, 32, 89, 184, 193, 133, 28.9030 + 112, 162, 200, 207, 200, 197, 195, 190, 198, 203, 200, 198, 198, 204, 198, 193, 28.9031 + 200, 203, 195, 204, 195, 203, 204, 203, 204, 204, 204, 209, 207, 209, 204, 209, 28.9032 + 210, 197, 147, 127, 79, 84, 86, 86, 84, 81, 84, 81, 119, 133, 156, 160, 28.9033 + 165, 184, 200, 201, 218, 81, 15, 23, 29, 23, 20, 35, 26, 43, 23, 29, 28.9034 + 35, 29, 32, 32, 55, 46, 41, 43, 60, 114, 149, 147, 155, 147, 147, 164, 28.9035 + 171, 172, 172, 169, 169, 171, 162, 167, 169, 167, 172, 164, 164, 162, 164, 169, 28.9036 + 167, 167, 162, 164, 164, 162, 164, 160, 162, 162, 164, 164, 160, 156, 158, 156, 28.9037 + 101, 98, 98, 91, 94, 84, 94, 94, 91, 89, 89, 91, 98, 117, 121, 143, 28.9038 + 149, 156, 171, 177, 181, 176, 176, 174, 177, 176, 176, 164, 158, 145, 127, 101, 28.9039 + 76, 60, 55, 60, 71, 98, 81, 86, 86, 86, 89, 91, 81, 94, 89, 91, 28.9040 + 91, 86, 86, 91, 89, 81, 86, 96, 96, 86, 84, 52, 84, 218, 219, 197, 28.9041 + 212, 192, 210, 149, 160, 131, 131, 149, 133, 145, 127, 131, 89, 96, 114, 112, 28.9042 + 145, 125, 125, 141, 133, 135, 110, 125, 125, 123, 123, 131, 131, 119, 121, 131, 28.9043 + 147, 135, 135, 125, 121, 96, 133, 131, 135, 117, 114, 91, 68, 55, 43, 63, 28.9044 + 96, 81, 60, 38, 23, 35, 26, 63, 147, 89, 131, 105, 38, 35, 35, 86, 28.9045 + 114, 66, 74, 114, 57, 9, 41, 114, 18, 15, 15, 96, 177, 181, 137, 117, 28.9046 + 171, 192, 201, 198, 190, 189, 190, 195, 200, 200, 200, 200, 200, 195, 195, 198, 28.9047 + 201, 197, 201, 198, 201, 201, 201, 203, 201, 204, 204, 206, 209, 210, 209, 197, 28.9048 + 125, 89, 147, 137, 119, 96, 89, 74, 81, 98, 119, 139, 158, 160, 172, 171, 28.9049 + 182, 187, 201, 215, 94, 18, 23, 26, 29, 23, 41, 38, 38, 32, 32, 20, 28.9050 + 23, 23, 26, 29, 32, 46, 89, 35, 76, 135, 156, 155, 151, 145, 158, 171, 28.9051 + 171, 171, 176, 167, 165, 167, 164, 165, 165, 165, 167, 169, 167, 169, 165, 165, 28.9052 + 167, 165, 162, 160, 162, 160, 164, 160, 162, 162, 164, 156, 164, 156, 158, 151, 28.9053 + 101, 98, 98, 98, 98, 94, 98, 98, 98, 94, 91, 98, 103, 108, 121, 141, 28.9054 + 149, 158, 167, 171, 174, 172, 172, 177, 171, 172, 176, 164, 155, 149, 129, 103, 28.9055 + 79, 66, 66, 66, 71, 74, 71, 79, 89, 81, 86, 84, 96, 76, 81, 94, 28.9056 + 98, 81, 98, 86, 103, 84, 86, 91, 89, 89, 79, 63, 57, 209, 207, 215, 28.9057 + 187, 210, 181, 201, 149, 139, 112, 155, 133, 155, 145, 96, 79, 114, 114, 139, 28.9058 + 125, 133, 133, 131, 112, 110, 119, 123, 117, 119, 125, 131, 135, 119, 108, 135, 28.9059 + 133, 135, 133, 127, 133, 98, 135, 135, 123, 94, 74, 43, 35, 63, 117, 96, 28.9060 + 57, 38, 38, 20, 41, 29, 35, 131, 121, 141, 105, 18, 18, 32, 57, 143, 28.9061 + 41, 79, 137, 46, 18, 12, 74, 60, 32, 20, 110, 185, 169, 127, 137, 179, 28.9062 + 206, 198, 198, 192, 189, 192, 197, 197, 195, 200, 197, 198, 193, 195, 198, 195, 28.9063 + 198, 198, 201, 197, 198, 201, 204, 204, 203, 207, 209, 207, 207, 201, 145, 71, 28.9064 + 117, 98, 139, 155, 129, 108, 112, 121, 143, 160, 165, 174, 167, 167, 165, 174, 28.9065 + 182, 200, 215, 79, 29, 23, 23, 32, 23, 41, 43, 35, 43, 46, 35, 32, 28.9066 + 18, 26, 35, 49, 76, 41, 43, 41, 114, 145, 155, 151, 143, 141, 165, 174, 28.9067 + 176, 172, 172, 172, 172, 172, 174, 171, 167, 172, 165, 167, 165, 167, 162, 162, 28.9068 + 167, 162, 164, 160, 164, 167, 162, 164, 162, 164, 160, 162, 160, 158, 160, 160, 28.9069 + 103, 101, 89, 91, 105, 96, 98, 91, 89, 94, 91, 86, 101, 108, 121, 137, 28.9070 + 149, 156, 169, 171, 176, 171, 172, 177, 171, 172, 174, 167, 158, 145, 127, 98, 28.9071 + 84, 63, 60, 60, 76, 66, 74, 84, 94, 86, 84, 98, 91, 94, 86, 86, 28.9072 + 84, 94, 94, 84, 86, 84, 86, 86, 91, 91, 84, 68, 60, 129, 225, 193, 28.9073 + 213, 187, 210, 182, 182, 155, 137, 129, 167, 114, 143, 103, 98, 108, 129, 135, 28.9074 + 131, 133, 131, 125, 89, 121, 127, 125, 127, 133, 114, 121, 123, 117, 145, 137, 28.9075 + 131, 129, 131, 139, 153, 110, 112, 131, 84, 63, 43, 41, 103, 121, 43, 32, 28.9076 + 26, 32, 49, 20, 32, 20, 94, 133, 127, 84, 26, 32, 26, 52, 149, 76, 28.9077 + 71, 89, 79, 15, 38, 18, 121, 66, 38, 133, 185, 158, 121, 131, 189, 207, 28.9078 + 204, 201, 195, 190, 189, 190, 192, 193, 190, 192, 195, 198, 197, 190, 195, 198, 28.9079 + 195, 200, 201, 203, 200, 200, 204, 206, 206, 206, 212, 204, 156, 60, 98, 74, 28.9080 + 121, 112, 129, 151, 151, 165, 164, 160, 169, 165, 169, 167, 177, 172, 172, 184, 28.9081 + 200, 219, 96, 20, 18, 12, 29, 35, 49, 41, 41, 49, 29, 29, 35, 29, 28.9082 + 43, 32, 41, 32, 26, 26, 41, 91, 127, 156, 153, 155, 141, 147, 174, 171, 28.9083 + 171, 172, 174, 169, 176, 174, 169, 165, 165, 167, 169, 165, 165, 165, 164, 171, 28.9084 + 165, 164, 162, 164, 165, 162, 158, 158, 164, 165, 164, 156, 160, 156, 158, 156, 28.9085 + 108, 101, 96, 98, 98, 101, 98, 89, 94, 94, 96, 98, 101, 105, 119, 137, 28.9086 + 151, 160, 167, 177, 176, 176, 171, 174, 171, 174, 176, 167, 158, 141, 131, 103, 28.9087 + 79, 63, 49, 57, 79, 71, 84, 89, 91, 89, 86, 89, 86, 89, 86, 94, 28.9088 + 96, 86, 81, 84, 86, 89, 86, 89, 89, 86, 86, 71, 63, 86, 224, 213, 28.9089 + 189, 212, 197, 203, 197, 156, 182, 133, 172, 129, 91, 98, 119, 121, 131, 129, 28.9090 + 137, 133, 114, 89, 114, 119, 121, 119, 123, 129, 121, 119, 103, 133, 133, 94, 28.9091 + 81, 117, 133, 137, 139, 108, 79, 89, 57, 41, 43, 108, 76, 35, 38, 20, 28.9092 + 41, 60, 23, 12, 41, 35, 123, 101, 74, 57, 23, 29, 60, 145, 103, 63, 28.9093 + 91, 55, 18, 35, 26, 32, 153, 35, 139, 187, 151, 114, 143, 193, 203, 207, 28.9094 + 200, 192, 193, 185, 192, 192, 193, 192, 192, 189, 190, 190, 187, 198, 192, 193, 28.9095 + 197, 200, 204, 200, 200, 203, 203, 206, 207, 209, 176, 94, 29, 49, 131, 119, 28.9096 + 96, 110, 110, 147, 158, 167, 160, 171, 171, 171, 167, 174, 176, 182, 192, 206, 28.9097 + 216, 125, 32, 29, 15, 18, 23, 29, 41, 41, 43, 35, 52, 32, 29, 23, 28.9098 + 43, 35, 38, 35, 18, 55, 32, 103, 143, 155, 147, 153, 147, 164, 174, 171, 28.9099 + 172, 169, 171, 172, 176, 172, 169, 167, 171, 164, 169, 171, 169, 165, 162, 169, 28.9100 + 167, 164, 165, 164, 169, 162, 162, 162, 162, 158, 164, 158, 165, 162, 156, 160, 28.9101 + 101, 98, 105, 98, 96, 98, 101, 89, 89, 94, 86, 89, 96, 112, 123, 135, 28.9102 + 149, 156, 164, 171, 177, 176, 174, 176, 174, 177, 174, 164, 158, 145, 127, 108, 28.9103 + 79, 60, 55, 60, 81, 74, 84, 86, 74, 81, 96, 91, 84, 86, 81, 89, 28.9104 + 94, 84, 76, 94, 89, 89, 94, 96, 91, 89, 89, 76, 66, 71, 210, 206, 28.9105 + 218, 201, 206, 200, 155, 185, 162, 179, 135, 160, 86, 114, 121, 127, 139, 135, 28.9106 + 131, 127, 96, 119, 119, 121, 127, 125, 119, 125, 123, 114, 119, 141, 133, 141, 28.9107 + 119, 96, 60, 117, 129, 117, 84, 46, 55, 91, 79, 55, 49, 43, 41, 29, 28.9108 + 74, 29, 9, 18, 35, 105, 121, 46, 46, 23, 29, 38, 133, 71, 89, 129, 28.9109 + 96, 12, 23, 133, 3, 20, 165, 153, 177, 139, 123, 145, 197, 189, 204, 206, 28.9110 + 198, 190, 179, 190, 197, 193, 197, 185, 192, 190, 187, 192, 189, 190, 198, 198, 28.9111 + 198, 195, 198, 197, 203, 204, 204, 203, 203, 91, 35, 86, 91, 52, 147, 137, 28.9112 + 105, 127, 101, 147, 155, 165, 162, 171, 172, 174, 174, 179, 185, 192, 200, 213, 28.9113 + 131, 20, 20, 20, 26, 26, 32, 29, 46, 32, 43, 38, 43, 32, 26, 26, 28.9114 + 32, 32, 32, 38, 35, 38, 66, 123, 149, 149, 145, 145, 151, 167, 176, 172, 28.9115 + 172, 172, 171, 167, 174, 172, 171, 171, 169, 172, 174, 167, 167, 165, 169, 165, 28.9116 + 169, 162, 162, 164, 165, 165, 160, 162, 164, 164, 164, 160, 164, 158, 160, 156, 28.9117 + 94, 98, 94, 98, 96, 94, 96, 91, 94, 91, 91, 108, 89, 101, 121, 135, 28.9118 + 147, 160, 171, 172, 179, 171, 174, 174, 172, 174, 174, 171, 160, 143, 137, 108, 28.9119 + 84, 52, 60, 68, 71, 86, 79, 86, 84, 86, 86, 81, 79, 81, 94, 98, 28.9120 + 84, 89, 81, 91, 86, 79, 98, 96, 98, 94, 91, 86, 91, 79, 114, 228, 28.9121 + 209, 212, 212, 189, 167, 172, 193, 160, 127, 86, 89, 123, 129, 117, 121, 133, 28.9122 + 114, 89, 125, 127, 123, 133, 108, 119, 105, 121, 112, 121, 137, 143, 135, 133, 28.9123 + 103, 91, 114, 84, 68, 76, 68, 66, 52, 79, 81, 74, 55, 43, 32, 91, 28.9124 + 71, 15, 15, 20, 49, 71, 123, 26, 46, 43, 38, 141, 63, 81, 127, 81, 28.9125 + 23, 29, 143, 84, 12, 63, 172, 184, 123, 121, 147, 197, 207, 204, 197, 200, 28.9126 + 200, 189, 189, 190, 190, 192, 189, 189, 189, 182, 182, 189, 184, 187, 192, 203, 28.9127 + 195, 204, 201, 203, 198, 207, 204, 184, 86, 29, 23, 96, 121, 68, 98, 158, 28.9128 + 117, 133, 121, 139, 156, 151, 153, 169, 172, 177, 179, 185, 190, 206, 200, 103, 28.9129 + 29, 18, 20, 20, 26, 29, 38, 32, 38, 43, 35, 41, 43, 32, 29, 23, 28.9130 + 20, 41, 35, 38, 26, 35, 94, 137, 151, 149, 141, 149, 162, 169, 169, 176, 28.9131 + 174, 177, 172, 172, 172, 171, 172, 174, 169, 165, 169, 169, 167, 169, 164, 162, 28.9132 + 167, 165, 162, 165, 165, 162, 160, 165, 160, 162, 162, 158, 162, 156, 162, 156, 28.9133 + 98, 105, 98, 112, 103, 98, 96, 91, 98, 89, 101, 91, 84, 108, 125, 135, 28.9134 + 149, 160, 167, 176, 174, 174, 174, 176, 174, 176, 177, 162, 160, 147, 129, 112, 28.9135 + 81, 55, 49, 57, 74, 76, 76, 76, 86, 76, 86, 86, 84, 84, 81, 86, 28.9136 + 84, 94, 84, 81, 86, 84, 91, 96, 91, 98, 89, 94, 86, 74, 76, 207, 28.9137 + 219, 218, 203, 195, 165, 181, 174, 184, 165, 84, 98, 141, 125, 129, 121, 129, 28.9138 + 114, 108, 125, 117, 131, 121, 121, 117, 121, 121, 112, 141, 133, 135, 139, 119, 28.9139 + 94, 35, 38, 52, 74, 86, 55, 71, 84, 86, 57, 60, 23, 20, 81, 108, 28.9140 + 23, 18, 26, 29, 86, 43, 57, 20, 26, 38, 46, 89, 60, 52, 108, 49, 28.9141 + 15, 108, 164, 15, 26, 158, 156, 125, 121, 158, 197, 203, 207, 204, 200, 198, 28.9142 + 200, 197, 193, 195, 190, 187, 190, 190, 185, 185, 184, 192, 197, 187, 192, 200, 28.9143 + 203, 203, 201, 200, 193, 192, 176, 112, 74, 71, 84, 60, 108, 123, 94, 123, 28.9144 + 153, 114, 139, 101, 151, 158, 155, 171, 169, 177, 172, 193, 212, 185, 32, 23, 28.9145 + 20, 6, 23, 23, 23, 29, 32, 43, 52, 35, 66, 41, 43, 32, 35, 29, 28.9146 + 35, 29, 46, 38, 35, 60, 108, 141, 141, 141, 133, 149, 169, 176, 172, 169, 28.9147 + 171, 177, 171, 172, 169, 169, 172, 169, 172, 169, 169, 169, 167, 171, 167, 164, 28.9148 + 169, 165, 167, 160, 165, 167, 165, 164, 164, 165, 162, 160, 158, 158, 158, 158, 28.9149 + 94, 103, 105, 108, 112, 105, 96, 96, 84, 91, 94, 94, 91, 108, 123, 137, 28.9150 + 145, 160, 167, 169, 174, 177, 172, 177, 176, 179, 176, 164, 155, 147, 131, 108, 28.9151 + 71, 63, 60, 63, 71, 66, 81, 84, 84, 84, 94, 91, 86, 91, 86, 86, 28.9152 + 86, 94, 84, 89, 89, 86, 91, 91, 96, 105, 91, 89, 89, 84, 68, 98, 28.9153 + 225, 209, 222, 195, 187, 177, 185, 198, 151, 96, 127, 131, 125, 127, 119, 117, 28.9154 + 101, 112, 123, 133, 127, 129, 117, 125, 112, 117, 137, 133, 112, 96, 101, 121, 28.9155 + 103, 110, 81, 76, 68, 49, 52, 103, 71, 63, 35, 26, 20, 49, 121, 110, 28.9156 + 9, 15, 20, 43, 98, 32, 26, 20, 41, 41, 43, 35, 32, 55, 125, 15, 28.9157 + 15, 153, 119, 57, 105, 135, 121, 103, 172, 200, 206, 203, 203, 203, 201, 195, 28.9158 + 195, 189, 192, 185, 192, 193, 195, 193, 182, 176, 189, 195, 190, 193, 197, 198, 28.9159 + 197, 200, 195, 192, 190, 197, 192, 172, 91, 60, 81, 112, 71, 96, 98, 84, 28.9160 + 151, 131, 123, 105, 127, 160, 151, 164, 176, 185, 200, 212, 151, 38, 23, 43, 28.9161 + 32, 20, 26, 29, 32, 32, 35, 46, 38, 57, 43, 38, 23, 49, 20, 29, 28.9162 + 38, 41, 43, 41, 57, 76, 123, 141, 135, 137, 127, 155, 174, 176, 174, 177, 28.9163 + 167, 176, 167, 172, 169, 167, 171, 169, 172, 172, 172, 171, 169, 167, 169, 169, 28.9164 + 167, 167, 169, 167, 165, 169, 165, 165, 162, 162, 165, 162, 164, 156, 156, 160, 28.9165 + 103, 105, 103, 94, 96, 98, 98, 94, 86, 91, 76, 81, 89, 101, 117, 131, 28.9166 + 147, 160, 167, 167, 177, 177, 177, 177, 176, 177, 177, 176, 158, 147, 131, 110, 28.9167 + 76, 55, 60, 63, 68, 76, 81, 81, 76, 94, 89, 94, 89, 89, 86, 91, 28.9168 + 89, 81, 84, 86, 94, 94, 86, 96, 96, 98, 98, 94, 94, 81, 79, 68, 28.9169 + 155, 228, 212, 195, 203, 187, 192, 181, 91, 131, 135, 110, 129, 131, 127, 112, 28.9170 + 114, 121, 125, 123, 133, 125, 121, 110, 108, 108, 137, 131, 121, 121, 127, 114, 28.9171 + 119, 86, 91, 68, 49, 60, 98, 96, 55, 29, 18, 20, 23, 52, 121, 76, 28.9172 + 18, 23, 29, 29, 68, 52, 41, 20, 46, 35, 29, 35, 20, 55, 119, 18, 28.9173 + 43, 155, 101, 153, 151, 55, 105, 139, 203, 197, 203, 200, 200, 201, 190, 192, 28.9174 + 190, 189, 190, 192, 189, 197, 193, 185, 179, 182, 192, 195, 192, 192, 195, 195, 28.9175 + 193, 187, 182, 193, 197, 198, 192, 176, 127, 81, 68, 57, 133, 89, 103, 94, 28.9176 + 105, 156, 127, 127, 125, 155, 155, 181, 190, 209, 195, 117, 32, 32, 15, 23, 28.9177 + 32, 23, 38, 38, 38, 46, 32, 32, 38, 43, 46, 35, 32, 26, 26, 23, 28.9178 + 32, 43, 46, 46, 63, 98, 133, 145, 133, 123, 135, 160, 174, 174, 174, 176, 28.9179 + 171, 167, 171, 165, 176, 167, 171, 172, 171, 171, 171, 169, 167, 165, 167, 171, 28.9180 + 164, 160, 169, 169, 171, 169, 165, 165, 164, 165, 164, 162, 162, 158, 160, 160, 28.9181 + 101, 98, 105, 98, 98, 96, 98, 94, 84, 89, 86, 81, 81, 98, 114, 135, 28.9182 + 141, 162, 169, 177, 176, 174, 172, 174, 179, 184, 172, 174, 164, 147, 127, 103, 28.9183 + 79, 60, 57, 60, 68, 84, 74, 79, 79, 91, 94, 81, 81, 86, 86, 91, 28.9184 + 86, 96, 86, 96, 89, 91, 91, 98, 98, 96, 103, 98, 105, 98, 81, 74, 28.9185 + 76, 219, 209, 200, 204, 197, 204, 158, 96, 156, 119, 103, 127, 123, 114, 117, 28.9186 + 127, 119, 129, 125, 117, 127, 114, 133, 127, 129, 112, 86, 129, 129, 103, 81, 28.9187 + 49, 89, 60, 74, 76, 81, 96, 76, 41, 35, 38, 20, 26, 79, 117, 41, 28.9188 + 12, 18, 96, 23, 38, 43, 35, 46, 68, 84, 79, 84, 35, 96, 81, 55, 28.9189 + 101, 127, 129, 125, 137, 76, 164, 164, 195, 198, 198, 195, 203, 198, 197, 193, 28.9190 + 193, 187, 197, 185, 195, 189, 184, 184, 189, 181, 189, 192, 192, 192, 197, 187, 28.9191 + 193, 190, 197, 197, 203, 201, 197, 184, 147, 98, 79, 89, 63, 149, 112, 101, 28.9192 + 91, 143, 145, 147, 129, 153, 167, 190, 200, 153, 41, 38, 35, 26, 32, 20, 28.9193 + 18, 23, 35, 35, 49, 38, 32, 46, 35, 43, 35, 23, 20, 29, 29, 35, 28.9194 + 41, 41, 41, 49, 66, 123, 139, 141, 133, 129, 145, 167, 174, 181, 174, 177, 28.9195 + 172, 171, 172, 172, 171, 169, 172, 171, 174, 165, 171, 171, 171, 167, 167, 167, 28.9196 + 169, 165, 167, 167, 167, 162, 171, 165, 162, 165, 165, 160, 162, 156, 164, 155, 28.9197 + 98, 101, 103, 103, 96, 89, 98, 101, 94, 91, 84, 81, 81, 91, 119, 127, 28.9198 + 145, 164, 165, 171, 176, 176, 182, 179, 174, 179, 179, 174, 160, 149, 137, 108, 28.9199 + 79, 60, 43, 57, 60, 68, 76, 79, 84, 84, 84, 86, 89, 86, 86, 86, 28.9200 + 91, 84, 89, 89, 86, 98, 96, 101, 96, 103, 108, 96, 103, 98, 94, 76, 28.9201 + 68, 165, 227, 207, 197, 198, 210, 158, 131, 123, 119, 108, 112, 110, 91, 110, 28.9202 + 125, 127, 133, 112, 117, 98, 105, 119, 127, 131, 131, 139, 112, 112, 55, 41, 28.9203 + 76, 66, 60, 86, 71, 108, 103, 57, 41, 35, 41, 20, 41, 79, 66, 63, 28.9204 + 29, 38, 112, 20, 35, 41, 29, 32, 43, 55, 57, 41, 41, 84, 46, 74, 28.9205 + 52, 110, 81, 149, 127, 164, 181, 176, 197, 193, 189, 193, 197, 192, 190, 184, 28.9206 + 182, 184, 184, 185, 184, 190, 189, 184, 182, 181, 185, 189, 190, 187, 195, 197, 28.9207 + 197, 201, 197, 200, 200, 206, 203, 197, 169, 137, 84, 84, 71, 55, 139, 79, 28.9208 + 81, 55, 149, 143, 145, 145, 160, 158, 131, 74, 15, 20, 15, 32, 20, 38, 28.9209 + 38, 26, 29, 43, 41, 41, 41, 41, 41, 49, 35, 23, 23, 35, 35, 35, 28.9210 + 38, 20, 35, 55, 84, 131, 137, 137, 131, 129, 155, 174, 179, 177, 174, 172, 28.9211 + 171, 171, 174, 174, 169, 177, 172, 172, 167, 167, 165, 171, 172, 171, 171, 169, 28.9212 + 167, 165, 169, 169, 169, 169, 165, 164, 167, 165, 167, 162, 160, 162, 156, 160, 28.9213 + 101, 101, 103, 94, 94, 103, 91, 91, 86, 84, 91, 79, 81, 98, 110, 135, 28.9214 + 149, 156, 160, 165, 174, 179, 176, 174, 179, 176, 177, 169, 158, 145, 127, 112, 28.9215 + 79, 66, 52, 55, 68, 60, 76, 76, 89, 81, 86, 86, 89, 84, 84, 79, 28.9216 + 81, 86, 91, 89, 89, 94, 94, 101, 91, 98, 108, 103, 98, 101, 89, 84, 28.9217 + 68, 135, 222, 228, 206, 204, 200, 172, 139, 121, 121, 127, 112, 94, 108, 123, 28.9218 + 119, 129, 125, 108, 98, 121, 133, 119, 121, 114, 81, 141, 129, 105, 71, 57, 28.9219 + 66, 41, 43, 60, 55, 86, 89, 68, 41, 32, 29, 23, 60, 55, 55, 96, 28.9220 + 86, 57, 20, 29, 26, 23, 26, 29, 32, 35, 32, 20, 12, 55, 49, 71, 28.9221 + 74, 89, 81, 125, 125, 149, 155, 176, 190, 187, 182, 193, 192, 187, 184, 184, 28.9222 + 177, 184, 189, 181, 184, 181, 189, 185, 181, 189, 181, 185, 187, 195, 203, 195, 28.9223 + 197, 195, 200, 201, 197, 201, 201, 201, 185, 149, 103, 81, 46, 49, 49, 127, 28.9224 + 101, 57, 133, 143, 147, 139, 156, 141, 117, 84, 15, 20, 29, 32, 26, 26, 28.9225 + 35, 20, 38, 46, 43, 41, 38, 41, 52, 46, 32, 32, 20, 32, 43, 35, 28.9226 + 32, 32, 55, 66, 112, 137, 139, 129, 121, 135, 160, 174, 174, 172, 176, 174, 28.9227 + 174, 172, 176, 169, 171, 174, 172, 172, 176, 169, 165, 171, 171, 172, 167, 169, 28.9228 + 167, 174, 171, 167, 162, 165, 171, 167, 162, 165, 162, 162, 164, 160, 156, 162, 28.9229 + 98, 101, 96, 98, 103, 91, 101, 94, 91, 91, 89, 76, 71, 96, 108, 129, 28.9230 + 147, 151, 165, 171, 172, 174, 176, 176, 179, 176, 176, 167, 162, 149, 127, 110, 28.9231 + 84, 60, 52, 66, 55, 68, 84, 84, 81, 86, 91, 91, 98, 94, 96, 86, 28.9232 + 84, 84, 89, 89, 94, 94, 98, 94, 101, 110, 103, 103, 108, 108, 94, 86, 28.9233 + 68, 123, 224, 218, 219, 206, 207, 189, 131, 121, 121, 121, 119, 98, 119, 119, 28.9234 + 117, 117, 96, 129, 127, 133, 121, 117, 127, 114, 86, 114, 101, 96, 52, 57, 28.9235 + 52, 38, 46, 23, 49, 101, 76, 55, 71, 52, 52, 35, 63, 46, 38, 112, 28.9236 + 105, 63, 18, 29, 38, 38, 35, 29, 41, 38, 32, 26, 23, 55, 84, 123, 28.9237 + 79, 94, 94, 156, 153, 171, 176, 185, 189, 184, 192, 195, 193, 179, 182, 172, 28.9238 + 179, 185, 185, 190, 189, 184, 177, 185, 187, 182, 171, 193, 192, 197, 204, 198, 28.9239 + 198, 201, 203, 203, 200, 198, 207, 198, 189, 153, 110, 81, 74, 46, 23, 55, 28.9240 + 81, 71, 55, 143, 139, 160, 165, 149, 110, 57, 32, 23, 20, 18, 35, 23, 28.9241 + 43, 49, 41, 35, 43, 57, 46, 43, 57, 41, 41, 35, 20, 26, 29, 35, 28.9242 + 32, 43, 46, 89, 133, 145, 133, 127, 131, 145, 160, 171, 176, 174, 174, 172, 28.9243 + 174, 176, 172, 167, 172, 171, 169, 169, 169, 174, 171, 167, 171, 171, 164, 165, 28.9244 + 167, 171, 169, 165, 169, 162, 167, 165, 164, 169, 165, 160, 164, 158, 165, 158, 28.9245 + 105, 105, 103, 96, 91, 98, 96, 89, 89, 81, 89, 74, 79, 98, 121, 129, 28.9246 + 141, 156, 162, 174, 181, 172, 179, 177, 179, 176, 177, 174, 160, 151, 137, 114, 28.9247 + 81, 57, 49, 57, 63, 71, 84, 79, 89, 84, 84, 89, 96, 91, 86, 89, 28.9248 + 84, 89, 79, 79, 89, 89, 94, 94, 96, 103, 101, 108, 108, 94, 91, 89, 28.9249 + 74, 121, 222, 218, 224, 216, 201, 131, 101, 112, 125, 121, 110, 121, 117, 119, 28.9250 + 98, 101, 114, 135, 131, 129, 131, 125, 114, 94, 66, 91, 66, 38, 81, 74, 28.9251 + 35, 29, 29, 26, 38, 68, 76, 84, 63, 94, 46, 15, 68, 52, 26, 86, 28.9252 + 135, 94, 20, 32, 23, 35, 41, 26, 35, 26, 9, 26, 43, 79, 145, 74, 28.9253 + 74, 108, 133, 162, 174, 192, 182, 190, 190, 193, 201, 195, 193, 182, 171, 179, 28.9254 + 179, 182, 189, 193, 184, 181, 167, 184, 174, 179, 192, 201, 201, 201, 206, 198, 28.9255 + 201, 198, 203, 201, 204, 200, 200, 203, 187, 169, 129, 81, 63, 57, 29, 20, 28.9256 + 117, 81, 84, 145, 147, 145, 156, 151, 125, 46, 23, 18, 20, 23, 26, 23, 28.9257 + 23, 52, 38, 49, 41, 49, 49, 41, 43, 35, 60, 35, 23, 23, 32, 32, 28.9258 + 26, 29, 68, 112, 137, 147, 135, 125, 131, 158, 169, 169, 169, 176, 172, 172, 28.9259 + 171, 171, 169, 169, 169, 172, 171, 169, 165, 171, 171, 172, 167, 169, 167, 169, 28.9260 + 172, 169, 165, 167, 169, 165, 176, 165, 164, 165, 160, 164, 164, 158, 155, 156, 28.9261 + 103, 103, 96, 105, 103, 101, 91, 96, 96, 96, 86, 86, 76, 94, 121, 125, 28.9262 + 143, 155, 165, 169, 171, 176, 176, 179, 177, 176, 176, 172, 160, 151, 133, 110, 28.9263 + 76, 66, 55, 55, 79, 71, 86, 84, 94, 91, 86, 96, 91, 89, 86, 86, 28.9264 + 86, 86, 96, 89, 91, 96, 96, 101, 103, 110, 112, 108, 108, 105, 96, 81, 28.9265 + 66, 125, 221, 224, 213, 224, 177, 110, 86, 114, 123, 110, 119, 117, 117, 103, 28.9266 + 91, 108, 135, 125, 137, 127, 110, 110, 127, 89, 38, 43, 26, 46, 98, 38, 28.9267 + 23, 38, 23, 29, 38, 68, 86, 49, 63, 84, 49, 32, 66, 55, 18, 66, 28.9268 + 125, 137, 46, 23, 29, 32, 38, 29, 29, 9, 15, 20, 96, 127, 123, 60, 28.9269 + 119, 176, 129, 162, 193, 189, 187, 192, 195, 197, 197, 192, 179, 174, 169, 169, 28.9270 + 172, 181, 190, 190, 182, 162, 172, 172, 187, 190, 193, 200, 204, 204, 207, 201, 28.9271 + 204, 200, 200, 203, 207, 206, 207, 200, 193, 169, 129, 91, 63, 52, 29, 29, 28.9272 + 41, 79, 63, 91, 155, 143, 156, 162, 86, 20, 38, 32, 32, 29, 32, 26, 28.9273 + 35, 29, 49, 52, 46, 71, 57, 55, 41, 29, 29, 35, 20, 26, 35, 32, 28.9274 + 26, 41, 89, 125, 153, 143, 133, 127, 147, 162, 162, 169, 171, 171, 177, 176, 28.9275 + 174, 171, 171, 172, 169, 171, 169, 167, 174, 167, 171, 171, 171, 174, 169, 165, 28.9276 + 167, 165, 169, 169, 162, 162, 165, 165, 160, 165, 167, 162, 162, 164, 162, 158, 28.9277 + 94, 98, 96, 98, 94, 98, 105, 94, 86, 86, 89, 84, 71, 91, 114, 129, 28.9278 + 143, 156, 164, 171, 172, 176, 176, 177, 176, 172, 174, 169, 164, 149, 133, 112, 28.9279 + 86, 60, 46, 63, 68, 76, 76, 86, 86, 91, 91, 96, 79, 98, 91, 86, 28.9280 + 86, 86, 96, 86, 91, 98, 98, 94, 101, 101, 108, 103, 108, 103, 101, 86, 28.9281 + 76, 101, 227, 218, 218, 221, 137, 91, 91, 105, 110, 103, 108, 117, 108, 108, 28.9282 + 114, 121, 117, 123, 127, 127, 105, 125, 119, 89, 26, 20, 46, 60, 63, 35, 28.9283 + 32, 23, 29, 35, 29, 35, 89, 76, 52, 74, 68, 26, 52, 79, 12, 41, 28.9284 + 81, 147, 108, 91, 89, 38, 12, 26, 15, 15, 15, 89, 162, 117, 74, 117, 28.9285 + 189, 172, 127, 160, 195, 192, 189, 195, 201, 204, 198, 189, 177, 174, 171, 174, 28.9286 + 181, 182, 193, 189, 176, 169, 174, 172, 189, 187, 193, 203, 198, 200, 207, 203, 28.9287 + 203, 203, 207, 207, 206, 207, 209, 209, 200, 177, 145, 98, 71, 57, 26, 26, 28.9288 + 15, 89, 68, 66, 156, 139, 167, 162, 79, 26, 23, 20, 23, 29, 32, 32, 28.9289 + 29, 35, 35, 43, 43, 52, 52, 49, 20, 26, 29, 26, 32, 41, 29, 35, 28.9290 + 29, 52, 105, 139, 147, 141, 131, 145, 153, 162, 155, 160, 160, 164, 177, 172, 28.9291 + 174, 172, 172, 172, 171, 171, 169, 172, 169, 169, 167, 172, 172, 172, 172, 169, 28.9292 + 164, 165, 169, 162, 165, 165, 165, 169, 162, 165, 165, 160, 160, 162, 155, 155, 28.9293 + 91, 103, 103, 94, 98, 86, 96, 89, 94, 96, 79, 79, 79, 94, 117, 131, 28.9294 + 145, 160, 165, 167, 182, 177, 174, 181, 172, 177, 177, 169, 156, 153, 133, 117, 28.9295 + 94, 55, 57, 71, 68, 74, 84, 79, 89, 86, 96, 94, 89, 89, 96, 94, 28.9296 + 84, 86, 86, 91, 96, 96, 94, 103, 101, 110, 112, 112, 101, 101, 101, 96, 28.9297 + 94, 86, 213, 222, 222, 209, 96, 96, 98, 96, 101, 117, 110, 119, 105, 121, 28.9298 + 121, 129, 123, 101, 117, 105, 110, 117, 103, 105, 26, 20, 46, 101, 23, 20, 28.9299 + 15, 26, 35, 23, 32, 38, 43, 84, 60, 55, 68, 52, 63, 86, 29, 49, 28.9300 + 32, 158, 86, 52, 74, 55, 23, 20, 15, 9, 84, 162, 133, 105, 121, 190, 28.9301 + 164, 169, 137, 155, 198, 185, 172, 197, 197, 198, 190, 179, 171, 171, 171, 169, 28.9302 + 189, 193, 187, 167, 156, 169, 167, 177, 190, 189, 193, 201, 198, 203, 206, 206, 28.9303 + 206, 204, 206, 206, 212, 213, 212, 212, 207, 189, 164, 103, 71, 60, 20, 20, 28.9304 + 32, 52, 81, 49, 155, 153, 181, 160, 63, 23, 38, 20, 29, 23, 23, 35, 28.9305 + 32, 41, 46, 57, 49, 55, 63, 43, 29, 23, 32, 38, 29, 52, 18, 26, 28.9306 + 41, 74, 123, 151, 141, 137, 131, 155, 164, 162, 158, 158, 164, 160, 162, 165, 28.9307 + 169, 169, 176, 171, 169, 169, 171, 174, 167, 169, 167, 171, 171, 171, 169, 167, 28.9308 + 171, 167, 167, 167, 164, 162, 167, 165, 167, 169, 167, 164, 162, 158, 162, 153, 28.9309 + 98, 101, 98, 101, 103, 96, 96, 96, 89, 94, 86, 86, 84, 101, 112, 129, 28.9310 + 143, 158, 167, 169, 176, 172, 176, 172, 179, 176, 179, 171, 165, 158, 137, 112, 28.9311 + 89, 68, 46, 66, 66, 74, 81, 84, 79, 89, 98, 89, 86, 86, 94, 89, 28.9312 + 91, 91, 94, 94, 91, 96, 94, 94, 105, 119, 103, 108, 103, 101, 103, 108, 28.9313 + 89, 76, 174, 227, 225, 192, 105, 103, 108, 105, 103, 112, 101, 86, 119, 139, 28.9314 + 112, 114, 125, 103, 81, 84, 63, 49, 52, 55, 38, 23, 84, 98, 26, 18, 28.9315 + 18, 35, 23, 43, 35, 32, 35, 55, 68, 52, 60, 55, 63, 74, 29, 46, 28.9316 + 26, 149, 91, 20, 15, 23, 15, 6, 9, 57, 174, 133, 91, 137, 189, 181, 28.9317 + 171, 169, 151, 139, 181, 182, 167, 200, 192, 179, 182, 182, 179, 172, 169, 171, 28.9318 + 187, 189, 143, 162, 164, 181, 179, 190, 189, 197, 198, 209, 204, 204, 206, 207, 28.9319 + 204, 206, 207, 210, 212, 213, 215, 216, 209, 197, 167, 119, 86, 63, 23, 12, 28.9320 + 29, 29, 57, 55, 121, 164, 184, 164, 66, 29, 29, 29, 26, 57, 43, 41, 28.9321 + 46, 32, 38, 46, 57, 41, 55, 35, 38, 32, 23, 35, 35, 43, 20, 26, 28.9322 + 38, 98, 135, 155, 139, 125, 149, 162, 171, 164, 156, 164, 160, 156, 153, 162, 28.9323 + 160, 160, 167, 165, 172, 164, 165, 171, 169, 167, 167, 171, 177, 171, 174, 165, 28.9324 + 169, 167, 167, 169, 164, 162, 160, 164, 165, 165, 160, 164, 164, 158, 155, 156, 28.9325 + 86, 94, 105, 91, 108, 101, 91, 96, 94, 91, 94, 86, 84, 91, 110, 129, 28.9326 + 145, 156, 164, 172, 171, 177, 177, 176, 177, 177, 174, 177, 162, 149, 133, 110, 28.9327 + 94, 76, 52, 63, 57, 68, 81, 76, 89, 84, 101, 91, 94, 103, 91, 101, 28.9328 + 86, 96, 89, 89, 94, 86, 96, 101, 193, 101, 98, 112, 112, 105, 96, 101, 28.9329 + 101, 86, 123, 231, 228, 169, 108, 96, 112, 114, 110, 94, 89, 129, 129, 127, 28.9330 + 127, 121, 63, 84, 74, 63, 84, 38, 32, 71, 32, 23, 108, 66, 29, 20, 28.9331 + 29, 63, 46, 49, 20, 26, 29, 38, 38, 52, 46, 38, 89, 101, 63, 41, 28.9332 + 26, 84, 137, 23, 26, 15, 15, 12, 38, 169, 141, 98, 121, 187, 179, 172, 28.9333 + 172, 172, 158, 153, 187, 177, 187, 203, 198, 190, 176, 174, 177, 181, 181, 182, 28.9334 + 177, 147, 164, 162, 171, 177, 177, 190, 192, 200, 195, 200, 203, 204, 204, 204, 28.9335 + 204, 206, 210, 213, 209, 213, 210, 213, 209, 200, 181, 131, 96, 74, 26, 29, 28.9336 + 26, 20, 38, 76, 55, 160, 171, 174, 98, 41, 57, 32, 35, 35, 29, 41, 28.9337 + 43, 41, 43, 49, 60, 60, 52, 43, 29, 23, 32, 32, 35, 38, 23, 23, 28.9338 + 43, 121, 151, 147, 139, 135, 151, 167, 171, 164, 158, 158, 158, 156, 155, 158, 28.9339 + 156, 158, 160, 158, 160, 158, 172, 167, 167, 169, 167, 171, 167, 164, 169, 171, 28.9340 + 172, 165, 169, 162, 169, 160, 167, 164, 162, 165, 164, 158, 164, 158, 160, 155, 28.9341 + 101, 98, 94, 101, 91, 96, 98, 96, 94, 96, 84, 79, 79, 89, 112, 133, 28.9342 + 143, 155, 164, 172, 176, 176, 179, 179, 174, 181, 176, 177, 162, 149, 133, 117, 28.9343 + 96, 71, 66, 46, 63, 74, 86, 91, 89, 89, 91, 94, 98, 101, 89, 98, 28.9344 + 96, 89, 94, 91, 84, 84, 98, 176, 110, 105, 112, 108, 110, 101, 112, 110, 28.9345 + 105, 108, 108, 198, 228, 176, 96, 108, 110, 110, 117, 89, 125, 121, 129, 117, 28.9346 + 127, 135, 117, 105, 98, 79, 57, 26, 29, 20, 18, 38, 114, 55, 23, 29, 28.9347 + 57, 60, 26, 46, 26, 41, 55, 41, 29, 57, 41, 35, 52, 117, 127, 76, 28.9348 + 20, 41, 149, 23, 18, 18, 9, 43, 156, 151, 121, 119, 192, 176, 190, 181, 28.9349 + 172, 182, 158, 155, 192, 182, 182, 198, 201, 192, 176, 181, 182, 177, 179, 167, 28.9350 + 147, 149, 165, 171, 169, 176, 185, 195, 195, 189, 198, 204, 204, 201, 206, 206, 28.9351 + 206, 206, 212, 210, 215, 212, 215, 216, 209, 198, 189, 151, 103, 63, 35, 29, 28.9352 + 12, 15, 35, 68, 32, 165, 165, 174, 119, 43, 32, 55, 29, 41, 38, 41, 28.9353 + 41, 43, 46, 49, 60, 57, 38, 35, 29, 20, 38, 43, 46, 46, 26, 20, 28.9354 + 68, 127, 145, 145, 135, 145, 162, 171, 174, 167, 164, 162, 160, 160, 158, 162, 28.9355 + 160, 156, 155, 156, 164, 160, 164, 160, 160, 162, 165, 165, 165, 167, 172, 167, 28.9356 + 167, 169, 167, 165, 165, 169, 162, 164, 164, 162, 160, 167, 164, 158, 156, 153, 28.9357 + 98, 96, 101, 96, 94, 96, 91, 96, 89, 91, 89, 84, 79, 101, 112, 131, 28.9358 + 139, 153, 164, 176, 172, 179, 179, 174, 174, 184, 181, 169, 156, 153, 133, 129, 28.9359 + 96, 74, 55, 71, 74, 74, 79, 91, 96, 91, 91, 94, 94, 89, 89, 89, 28.9360 + 94, 86, 89, 89, 101, 98, 98, 114, 105, 105, 105, 114, 110, 108, 105, 112, 28.9361 + 112, 103, 89, 119, 231, 207, 105, 112, 105, 91, 110, 119, 127, 114, 108, 131, 28.9362 + 119, 125, 96, 96, 66, 46, 35, 38, 57, 20, 20, 12, 89, 52, 23, 20, 28.9363 + 55, 26, 41, 32, 32, 41, 41, 35, 26, 46, 26, 49, 81, 89, 57, 103, 28.9364 + 76, 46, 181, 117, 12, 9, 23, 145, 160, 117, 121, 182, 190, 179, 189, 182, 28.9365 + 184, 187, 172, 156, 176, 177, 190, 207, 210, 185, 176, 184, 176, 171, 164, 143, 28.9366 + 155, 158, 167, 174, 172, 174, 187, 192, 197, 195, 197, 201, 204, 207, 206, 207, 28.9367 + 207, 207, 212, 213, 212, 213, 213, 213, 212, 206, 190, 160, 103, 68, 52, 18, 28.9368 + 20, 12, 15, 57, 52, 155, 169, 181, 96, 43, 35, 38, 43, 46, 29, 41, 28.9369 + 46, 41, 49, 57, 57, 60, 55, 32, 41, 35, 26, 38, 41, 32, 29, 41, 28.9370 + 96, 139, 151, 143, 133, 149, 164, 177, 176, 164, 164, 162, 162, 158, 160, 160, 28.9371 + 156, 160, 153, 153, 156, 156, 155, 160, 160, 151, 156, 160, 160, 164, 165, 167, 28.9372 + 169, 167, 167, 164, 164, 162, 164, 162, 160, 164, 164, 160, 158, 153, 156, 153, 28.9373 + 101, 101, 96, 103, 94, 84, 89, 98, 81, 96, 86, 81, 89, 91, 108, 123, 28.9374 + 143, 153, 165, 167, 174, 179, 179, 181, 179, 181, 177, 174, 162, 147, 135, 119, 28.9375 + 89, 76, 71, 74, 81, 81, 84, 89, 89, 86, 98, 96, 98, 94, 89, 98, 28.9376 + 96, 98, 86, 86, 98, 86, 103, 112, 105, 105, 105, 110, 108, 112, 110, 105, 28.9377 + 112, 108, 98, 98, 207, 212, 121, 114, 103, 101, 119, 125, 119, 123, 137, 123, 28.9378 + 127, 94, 84, 91, 38, 49, 29, 79, 29, 20, 12, 18, 63, 86, 63, 76, 28.9379 + 23, 29, 57, 32, 29, 41, 35, 35, 63, 46, 12, 23, 110, 52, 55, 79, 28.9380 + 43, 38, 174, 76, 12, 9, 129, 176, 117, 114, 169, 187, 174, 179, 190, 197, 28.9381 + 187, 190, 158, 156, 176, 171, 193, 207, 200, 181, 172, 169, 174, 155, 153, 158, 28.9382 + 165, 171, 171, 174, 171, 184, 185, 192, 198, 200, 201, 203, 203, 204, 207, 207, 28.9383 + 210, 207, 210, 210, 213, 215, 216, 216, 218, 210, 198, 162, 117, 81, 60, 32, 28.9384 + 23, 20, 23, 32, 94, 98, 172, 177, 94, 71, 35, 26, 35, 43, 38, 35, 28.9385 + 49, 52, 41, 49, 57, 52, 41, 26, 26, 41, 32, 46, 55, 29, 26, 71, 28.9386 + 127, 149, 147, 145, 137, 155, 172, 172, 171, 172, 169, 174, 169, 169, 164, 162, 28.9387 + 162, 162, 162, 156, 158, 160, 158, 156, 151, 156, 158, 156, 153, 155, 164, 165, 28.9388 + 165, 164, 165, 164, 158, 165, 160, 158, 164, 162, 160, 162, 155, 158, 155, 153, 28.9389 + 98, 96, 94, 101, 91, 91, 94, 91, 84, 86, 86, 81, 68, 89, 110, 125, 28.9390 + 143, 155, 167, 176, 179, 179, 179, 181, 181, 179, 179, 169, 156, 145, 135, 112, 28.9391 + 94, 66, 66, 57, 81, 76, 84, 89, 96, 96, 94, 89, 94, 89, 91, 101, 28.9392 + 89, 96, 94, 91, 89, 94, 96, 129, 110, 112, 105, 117, 114, 108, 121, 119, 28.9393 + 110, 105, 114, 110, 129, 216, 121, 119, 89, 103, 131, 139, 121, 125, 129, 131, 28.9394 + 125, 101, 55, 20, 46, 26, 119, 108, 15, 20, 29, 18, 38, 114, 41, 23, 28.9395 + 32, 76, 66, 23, 38, 43, 23, 35, 81, 32, 18, 23, 86, 23, 71, 52, 28.9396 + 20, 6, 71, 131, 9, 105, 165, 117, 125, 153, 177, 172, 182, 181, 197, 195, 28.9397 + 195, 195, 153, 135, 185, 185, 200, 201, 185, 174, 164, 177, 147, 158, 156, 156, 28.9398 + 169, 169, 176, 176, 176, 179, 189, 187, 200, 195, 193, 203, 201, 203, 210, 209, 28.9399 + 206, 209, 212, 213, 212, 210, 216, 216, 218, 210, 204, 171, 135, 86, 74, 38, 28.9400 + 32, 23, 23, 35, 79, 66, 177, 184, 86, 41, 23, 38, 41, 49, 35, 43, 28.9401 + 43, 41, 52, 43, 52, 41, 32, 35, 23, 26, 49, 41, 32, 32, 26, 79, 28.9402 + 137, 151, 145, 139, 147, 164, 174, 177, 176, 172, 169, 171, 172, 167, 165, 164, 28.9403 + 169, 167, 162, 162, 160, 158, 160, 153, 158, 156, 156, 153, 158, 155, 155, 155, 28.9404 + 158, 156, 158, 162, 160, 160, 158, 160, 160, 158, 162, 160, 156, 155, 158, 155, 28.9405 + 94, 96, 101, 86, 91, 96, 89, 91, 91, 91, 79, 84, 76, 98, 119, 131, 28.9406 + 145, 149, 158, 172, 177, 179, 181, 176, 179, 174, 179, 172, 162, 155, 139, 110, 28.9407 + 91, 60, 57, 60, 76, 84, 91, 89, 98, 89, 89, 89, 98, 98, 98, 98, 28.9408 + 91, 96, 91, 94, 91, 101, 94, 110, 112, 110, 103, 105, 117, 108, 112, 117, 28.9409 + 123, 117, 110, 121, 125, 158, 103, 117, 98, 131, 135, 123, 145, 125, 119, 123, 28.9410 + 89, 57, 26, 71, 32, 18, 60, 63, 20, 35, 38, 29, 15, 43, 98, 26, 28.9411 + 49, 86, 46, 20, 41, 43, 23, 52, 52, 60, 35, 38, 26, 49, 76, 52, 28.9412 + 9, 9, 29, 137, 89, 162, 133, 103, 133, 184, 167, 160, 171, 189, 198, 193, 28.9413 + 200, 193, 169, 121, 177, 197, 201, 184, 171, 160, 162, 155, 155, 153, 165, 162, 28.9414 + 171, 174, 171, 177, 177, 179, 184, 184, 197, 198, 201, 198, 203, 200, 203, 204, 28.9415 + 206, 206, 209, 210, 215, 215, 216, 215, 215, 213, 207, 181, 141, 96, 86, 63, 28.9416 + 35, 23, 23, 18, 66, 52, 169, 181, 103, 55, 60, 32, 52, 35, 46, 43, 28.9417 + 60, 57, 46, 52, 49, 38, 32, 41, 35, 35, 43, 35, 23, 32, 60, 119, 28.9418 + 141, 149, 141, 131, 147, 172, 171, 172, 172, 171, 172, 172, 167, 167, 174, 176, 28.9419 + 165, 172, 171, 169, 167, 165, 160, 162, 162, 149, 151, 155, 160, 156, 156, 149, 28.9420 + 151, 149, 156, 149, 153, 156, 160, 160, 158, 158, 160, 162, 160, 156, 156, 155, 28.9421 + 91, 96, 89, 94, 101, 91, 94, 86, 89, 101, 89, 79, 79, 86, 112, 127, 28.9422 + 141, 153, 165, 179, 179, 176, 179, 176, 179, 184, 177, 172, 158, 155, 135, 108, 28.9423 + 86, 66, 71, 68, 68, 79, 84, 91, 96, 84, 96, 89, 101, 96, 101, 98, 28.9424 + 98, 91, 94, 96, 98, 98, 96, 98, 110, 112, 108, 98, 98, 101, 103, 96, 28.9425 + 89, 91, 125, 151, 74, 74, 119, 94, 131, 119, 127, 131, 121, 131, 123, 94, 28.9426 + 68, 26, 32, 89, 18, 15, 81, 63, 23, 103, 23, 43, 15, 18, 38, 71, 28.9427 + 110, 49, 41, 18, 43, 26, 20, 84, 26, 26, 46, 41, 29, 26, 103, 96, 28.9428 + 9, 6, 12, 52, 155, 131, 108, 137, 198, 160, 167, 164, 167, 179, 195, 195, 28.9429 + 197, 197, 187, 153, 182, 198, 174, 174, 169, 156, 156, 165, 164, 156, 162, 160, 28.9430 + 169, 172, 176, 177, 176, 182, 179, 187, 193, 195, 200, 201, 200, 198, 204, 200, 28.9431 + 207, 206, 206, 207, 210, 210, 213, 213, 216, 210, 207, 193, 153, 105, 76, 63, 28.9432 + 35, 15, 23, 23, 41, 55, 158, 182, 135, 79, 41, 26, 20, 46, 35, 46, 28.9433 + 41, 63, 55, 57, 46, 35, 20, 35, 32, 46, 43, 38, 23, 35, 81, 129, 28.9434 + 147, 149, 141, 137, 153, 167, 171, 174, 169, 169, 167, 167, 165, 169, 171, 174, 28.9435 + 172, 169, 176, 172, 167, 167, 164, 162, 160, 155, 153, 155, 160, 158, 156, 153, 28.9436 + 155, 151, 151, 151, 147, 147, 153, 155, 156, 164, 164, 156, 158, 158, 155, 153, 28.9437 + 94, 94, 96, 91, 86, 91, 96, 84, 89, 89, 96, 71, 76, 94, 112, 133, 28.9438 + 145, 160, 167, 176, 172, 176, 179, 177, 182, 182, 174, 172, 160, 147, 131, 105, 28.9439 + 86, 74, 52, 66, 74, 68, 89, 84, 94, 94, 94, 91, 89, 86, 98, 91, 28.9440 + 86, 96, 91, 94, 101, 101, 103, 101, 108, 112, 112, 112, 110, 110, 108, 114, 28.9441 + 119, 119, 149, 52, 91, 153, 137, 94, 121, 114, 123, 137, 131, 119, 123, 108, 28.9442 + 74, 26, 101, 71, 18, 15, 91, 89, 52, 35, 20, 23, 52, 43, 63, 119, 28.9443 + 41, 41, 12, 32, 46, 20, 15, 114, 15, 26, 94, 43, 46, 26, 131, 20, 28.9444 + 23, 12, 26, 131, 123, 86, 121, 195, 167, 169, 171, 160, 165, 174, 198, 203, 28.9445 + 193, 197, 193, 182, 195, 181, 176, 176, 153, 162, 171, 164, 165, 162, 164, 169, 28.9446 + 174, 184, 176, 177, 179, 179, 174, 179, 192, 193, 197, 201, 198, 200, 197, 197, 28.9447 + 204, 204, 206, 207, 207, 212, 210, 215, 213, 212, 209, 201, 162, 105, 84, 71, 28.9448 + 35, 15, 26, 20, 35, 57, 123, 177, 153, 86, 43, 32, 46, 68, 52, 55, 28.9449 + 49, 46, 63, 57, 49, 46, 29, 43, 29, 38, 38, 38, 26, 38, 108, 143, 28.9450 + 145, 143, 131, 145, 158, 171, 169, 171, 171, 172, 167, 174, 171, 169, 167, 172, 28.9451 + 172, 174, 176, 176, 174, 169, 167, 167, 165, 160, 158, 158, 158, 158, 155, 151, 28.9452 + 155, 149, 153, 155, 151, 153, 149, 149, 153, 156, 158, 158, 158, 156, 155, 156, 28.9453 + 91, 94, 89, 91, 96, 89, 94, 86, 76, 86, 81, 81, 81, 91, 112, 131, 28.9454 + 143, 156, 167, 174, 177, 172, 176, 181, 184, 182, 182, 177, 160, 153, 135, 108, 28.9455 + 94, 74, 52, 68, 68, 76, 86, 84, 94, 86, 84, 89, 86, 96, 101, 89, 28.9456 + 89, 91, 94, 86, 96, 101, 103, 105, 105, 114, 103, 108, 112, 114, 114, 114, 28.9457 + 112, 108, 174, 141, 127, 131, 193, 151, 108, 117, 131, 133, 119, 110, 125, 81, 28.9458 + 23, 43, 94, 52, 20, 15, 79, 101, 41, 6, 41, 15, 41, 79, 117, 76, 28.9459 + 60, 35, 26, 26, 52, 35, 26, 121, 18, 12, 105, 43, 15, 96, 20, 35, 28.9460 + 32, 15, 103, 158, 79, 98, 189, 181, 174, 182, 181, 172, 167, 176, 197, 200, 28.9461 + 197, 200, 193, 192, 185, 182, 145, 129, 145, 149, 158, 160, 164, 164, 177, 167, 28.9462 + 177, 179, 179, 182, 184, 182, 179, 184, 187, 189, 193, 198, 198, 198, 200, 197, 28.9463 + 200, 203, 206, 207, 203, 210, 213, 215, 215, 209, 209, 200, 165, 119, 84, 49, 28.9464 + 26, 15, 18, 32, 38, 49, 129, 184, 155, 66, 57, 41, 52, 71, 60, 32, 28.9465 + 46, 52, 60, 52, 38, 32, 38, 29, 38, 57, 43, 29, 43, 68, 121, 141, 28.9466 + 143, 139, 133, 153, 164, 171, 174, 169, 172, 171, 172, 167, 171, 171, 172, 169, 28.9467 + 172, 169, 179, 176, 172, 172, 171, 164, 164, 165, 164, 158, 162, 156, 160, 156, 28.9468 + 153, 153, 153, 153, 147, 153, 147, 147, 145, 149, 149, 149, 149, 156, 158, 156, 28.9469 + 98, 98, 108, 89, 89, 89, 86, 89, 89, 89, 84, 84, 71, 96, 105, 135, 28.9470 + 131, 158, 167, 176, 176, 176, 177, 177, 177, 177, 174, 171, 165, 147, 135, 110, 28.9471 + 81, 68, 55, 68, 74, 66, 76, 86, 86, 89, 91, 105, 94, 89, 94, 96, 28.9472 + 91, 96, 98, 98, 94, 94, 103, 103, 101, 112, 105, 114, 110, 108, 105, 117, 28.9473 + 176, 158, 165, 26, 43, 49, 74, 112, 133, 129, 131, 123, 105, 125, 108, 29, 28.9474 + 35, 94, 131, 9, 20, 32, 94, 112, 12, 12, 43, 38, 68, 55, 35, 63, 28.9475 + 18, 15, 23, 26, 35, 43, 35, 63, 12, 29, 110, 49, 15, 117, 60, 49, 28.9476 + 12, 57, 164, 112, 94, 177, 193, 174, 177, 185, 181, 160, 153, 172, 192, 201, 28.9477 + 200, 200, 201, 192, 179, 63, 66, 110, 117, 133, 139, 145, 155, 158, 172, 176, 28.9478 + 171, 182, 182, 182, 181, 174, 179, 181, 182, 184, 192, 200, 203, 198, 198, 192, 28.9479 + 198, 201, 203, 207, 204, 207, 212, 210, 212, 207, 204, 192, 162, 117, 49, 32, 28.9480 + 29, 23, 23, 29, 20, 81, 94, 184, 160, 94, 57, 38, 55, 49, 74, 52, 28.9481 + 52, 57, 84, 57, 41, 32, 43, 32, 38, 52, 29, 38, 35, 84, 133, 145, 28.9482 + 143, 133, 139, 155, 167, 171, 165, 164, 167, 171, 165, 167, 167, 171, 165, 169, 28.9483 + 172, 174, 171, 176, 171, 174, 167, 165, 165, 165, 164, 164, 162, 160, 164, 156, 28.9484 + 156, 155, 156, 155, 155, 153, 153, 147, 149, 153, 153, 149, 151, 143, 149, 147, 28.9485 + 86, 96, 91, 94, 94, 94, 89, 96, 94, 89, 84, 89, 79, 91, 108, 133, 28.9486 + 145, 155, 165, 167, 177, 179, 181, 179, 179, 181, 177, 176, 164, 151, 137, 117, 28.9487 + 91, 84, 57, 63, 76, 68, 79, 81, 84, 91, 101, 94, 98, 105, 94, 91, 28.9488 + 96, 91, 94, 89, 98, 91, 96, 101, 101, 114, 112, 110, 114, 114, 108, 181, 28.9489 + 207, 103, 76, 18, 12, 18, 15, 151, 156, 182, 114, 101, 94, 101, 32, 35, 28.9490 + 91, 57, 98, 15, 23, 49, 143, 110, 6, 26, 23, 26, 35, 49, 35, 46, 28.9491 + 23, 23, 41, 43, 35, 41, 26, 60, 18, 43, 68, 46, 38, 63, 15, 6, 28.9492 + 26, 145, 131, 81, 147, 201, 171, 181, 187, 200, 181, 165, 164, 182, 198, 203, 28.9493 + 206, 201, 200, 127, 68, 76, 89, 94, 79, 98, 94, 91, 110, 119, 141, 164, 28.9494 + 177, 182, 185, 182, 179, 179, 176, 176, 177, 189, 190, 198, 197, 197, 192, 195, 28.9495 + 200, 193, 198, 203, 203, 204, 209, 209, 209, 201, 182, 169, 131, 94, 46, 35, 28.9496 + 18, 15, 18, 23, 26, 94, 46, 193, 164, 125, 32, 35, 63, 66, 38, 41, 28.9497 + 60, 63, 66, 46, 41, 35, 32, 35, 38, 41, 32, 35, 46, 101, 139, 145, 28.9498 + 139, 131, 147, 158, 171, 167, 167, 167, 164, 165, 169, 167, 167, 165, 164, 162, 28.9499 + 167, 167, 172, 169, 171, 174, 172, 169, 162, 165, 167, 164, 169, 165, 160, 162, 28.9500 + 158, 155, 158, 155, 158, 153, 147, 153, 145, 147, 147, 149, 143, 145, 143, 141, 28.9501 + 91, 96, 96, 91, 98, 91, 98, 86, 91, 91, 81, 86, 76, 86, 108, 127, 28.9502 + 145, 155, 160, 169, 176, 176, 179, 179, 179, 181, 181, 172, 165, 155, 139, 108, 28.9503 + 84, 66, 66, 68, 79, 74, 91, 89, 91, 96, 91, 91, 94, 98, 98, 101, 28.9504 + 94, 94, 98, 91, 96, 96, 96, 112, 108, 108, 108, 117, 114, 114, 119, 181, 28.9505 + 184, 98, 35, 23, 15, 23, 76, 145, 189, 201, 121, 74, 52, 68, 35, 55, 28.9506 + 101, 141, 23, 26, 20, 89, 133, 123, 9, 26, 12, 35, 52, 63, 52, 68, 28.9507 + 43, 23, 46, 32, 23, 29, 55, 105, 57, 52, 29, 76, 29, 29, 20, 15, 28.9508 + 125, 165, 81, 125, 193, 171, 179, 184, 200, 204, 174, 164, 164, 190, 197, 203, 28.9509 + 204, 195, 119, 117, 135, 137, 139, 123, 112, 103, 81, 46, 55, 60, 76, 103, 28.9510 + 141, 165, 179, 177, 177, 182, 182, 174, 172, 181, 189, 197, 197, 198, 192, 192, 28.9511 + 195, 197, 198, 206, 203, 204, 209, 203, 193, 171, 139, 119, 96, 71, 43, 38, 28.9512 + 18, 15, 20, 23, 29, 71, 35, 184, 177, 135, 29, 26, 46, 68, 46, 55, 28.9513 + 52, 52, 43, 49, 32, 26, 46, 29, 49, 35, 35, 35, 63, 110, 139, 141, 28.9514 + 141, 131, 151, 162, 177, 171, 165, 167, 167, 164, 164, 167, 164, 167, 162, 165, 28.9515 + 167, 167, 169, 169, 171, 169, 171, 164, 158, 162, 165, 167, 164, 165, 162, 164, 28.9516 + 158, 164, 160, 160, 153, 156, 158, 155, 155, 149, 149, 145, 147, 143, 139, 139, 28.9517 + 98, 91, 94, 96, 98, 86, 91, 98, 94, 94, 89, 81, 71, 84, 108, 127, 28.9518 + 141, 156, 169, 174, 179, 171, 179, 177, 182, 179, 176, 174, 162, 147, 141, 119, 28.9519 + 91, 60, 63, 74, 76, 74, 76, 79, 84, 94, 108, 89, 94, 86, 91, 84, 28.9520 + 94, 89, 96, 89, 91, 96, 101, 105, 105, 101, 110, 117, 119, 125, 131, 135, 28.9521 + 155, 151, 55, 29, 12, 26, 68, 141, 147, 79, 105, 43, 63, 79, 35, 57, 28.9522 + 76, 81, 32, 41, 63, 89, 52, 139, 12, 20, 20, 76, 57, 26, 91, 38, 28.9523 + 84, 18, 52, 20, 23, 9, 23, 76, 84, 117, 15, 91, 32, 15, 18, 74, 28.9524 + 167, 110, 114, 198, 172, 176, 185, 197, 206, 189, 164, 162, 179, 197, 201, 206, 28.9525 + 189, 110, 125, 143, 151, 151, 143, 162, 149, 141, 114, 86, 68, 63, 49, 35, 28.9526 + 66, 94, 151, 172, 172, 174, 167, 171, 177, 176, 189, 189, 195, 195, 193, 187, 28.9527 + 197, 198, 193, 198, 190, 192, 176, 147, 112, 81, 79, 60, 76, 84, 74, 71, 28.9528 + 29, 23, 26, 26, 29, 52, 29, 182, 169, 139, 55, 38, 38, 74, 57, 57, 28.9529 + 57, 55, 43, 23, 41, 35, 32, 23, 43, 43, 35, 32, 71, 137, 145, 139, 28.9530 + 129, 137, 155, 172, 165, 171, 167, 167, 167, 165, 164, 162, 165, 169, 164, 162, 28.9531 + 160, 165, 167, 171, 167, 171, 171, 160, 164, 165, 162, 165, 165, 164, 169, 162, 28.9532 + 165, 162, 164, 162, 160, 164, 156, 153, 151, 155, 153, 147, 151, 139, 141, 141, 28.9533 + 94, 89, 94, 89, 101, 105, 96, 89, 96, 86, 91, 81, 74, 86, 108, 125, 28.9534 + 147, 153, 162, 174, 177, 172, 181, 177, 176, 181, 182, 176, 162, 155, 137, 121, 28.9535 + 84, 63, 66, 74, 74, 68, 81, 86, 91, 91, 96, 96, 96, 86, 94, 86, 28.9536 + 79, 94, 86, 96, 98, 98, 98, 96, 91, 103, 114, 117, 141, 156, 143, 141, 28.9537 + 137, 129, 29, 49, 55, 15, 79, 131, 141, 63, 63, 105, 57, 41, 52, 108, 28.9538 + 96, 26, 35, 41, 123, 76, 29, 151, 26, 20, 18, 66, 55, 32, 26, 43, 28.9539 + 96, 46, 29, 12, 20, 18, 18, 32, 91, 145, 12, 74, 18, 6, 38, 151, 28.9540 + 153, 105, 176, 192, 171, 184, 193, 207, 206, 177, 160, 177, 195, 203, 209, 169, 28.9541 + 101, 127, 125, 131, 145, 147, 108, 141, 164, 153, 121, 135, 74, 74, 71, 63, 28.9542 + 66, 60, 84, 131, 167, 167, 169, 169, 174, 177, 184, 187, 195, 193, 193, 190, 28.9543 + 190, 193, 189, 190, 171, 141, 89, 79, 94, 76, 98, 96, 137, 114, 105, 84, 28.9544 + 41, 38, 18, 15, 20, 52, 32, 179, 171, 137, 81, 41, 43, 68, 46, 49, 28.9545 + 49, 57, 41, 35, 29, 29, 38, 46, 43, 46, 43, 38, 91, 137, 143, 137, 28.9546 + 129, 145, 160, 167, 172, 164, 167, 171, 164, 164, 162, 164, 162, 162, 162, 164, 28.9547 + 162, 160, 162, 165, 167, 165, 165, 162, 167, 160, 167, 162, 162, 162, 165, 165, 28.9548 + 162, 165, 165, 160, 160, 158, 164, 158, 155, 153, 153, 149, 149, 143, 143, 141, 28.9549 + 89, 101, 91, 91, 103, 89, 94, 91, 91, 89, 89, 79, 68, 84, 105, 121, 28.9550 + 145, 153, 165, 176, 177, 177, 176, 182, 181, 184, 185, 176, 162, 156, 137, 117, 28.9551 + 89, 68, 55, 76, 76, 79, 98, 84, 96, 98, 94, 89, 94, 89, 91, 89, 28.9552 + 86, 94, 84, 86, 89, 94, 98, 98, 103, 98, 101, 143, 156, 156, 151, 145, 28.9553 + 137, 193, 129, 105, 145, 71, 103, 125, 147, 119, 46, 76, 32, 32, 63, 117, 28.9554 + 105, 52, 60, 91, 103, 15, 15, 123, 60, 32, 23, 84, 32, 18, 23, 35, 28.9555 + 103, 89, 18, 20, 18, 29, 15, 20, 29, 46, 101, 18, 18, 12, 131, 158, 28.9556 + 103, 165, 201, 169, 177, 193, 200, 207, 197, 171, 167, 192, 203, 210, 137, 84, 28.9557 + 103, 103, 110, 121, 108, 125, 68, 79, 149, 135, 81, 119, 68, 108, 103, 89, 28.9558 + 86, 89, 91, 114, 149, 153, 155, 165, 165, 172, 187, 187, 195, 197, 197, 193, 28.9559 + 193, 190, 174, 174, 129, 103, 91, 110, 123, 86, 105, 112, 103, 79, 63, 71, 28.9560 + 38, 68, 29, 32, 20, 63, 23, 164, 177, 135, 89, 35, 38, 46, 35, 60, 28.9561 + 55, 55, 35, 46, 32, 32, 35, 35, 41, 26, 46, 57, 117, 139, 145, 135, 28.9562 + 129, 145, 164, 167, 165, 167, 165, 164, 165, 164, 160, 162, 162, 162, 160, 158, 28.9563 + 165, 160, 165, 164, 164, 167, 169, 165, 164, 167, 162, 165, 162, 160, 162, 162, 28.9564 + 165, 165, 165, 164, 167, 164, 160, 156, 160, 160, 156, 153, 149, 145, 145, 141, 28.9565 + 81, 94, 91, 94, 96, 94, 89, 94, 91, 89, 86, 68, 63, 84, 108, 121, 28.9566 + 143, 153, 164, 174, 179, 181, 174, 177, 181, 177, 179, 174, 164, 155, 139, 112, 28.9567 + 94, 63, 55, 63, 71, 68, 81, 81, 86, 91, 98, 91, 91, 89, 86, 86, 28.9568 + 86, 98, 76, 89, 96, 86, 96, 98, 105, 121, 133, 141, 149, 160, 155, 149, 28.9569 + 147, 193, 190, 172, 169, 139, 98, 68, 81, 35, 55, 20, 35, 76, 103, 139, 28.9570 + 20, 84, 79, 108, 98, 12, 12, 86, 117, 32, 29, 81, 29, 32, 15, 41, 28.9571 + 96, 117, 38, 32, 23, 23, 35, 29, 20, 29, 23, 52, 6, 49, 167, 98, 28.9572 + 125, 206, 169, 172, 184, 200, 207, 212, 189, 176, 181, 198, 212, 101, 74, 89, 28.9573 + 89, 91, 60, 52, 68, 68, 29, 35, 101, 60, 23, 52, 76, 119, 66, 121, 28.9574 + 117, 103, 105, 112, 127, 143, 155, 160, 155, 167, 176, 193, 197, 203, 200, 193, 28.9575 + 192, 195, 171, 141, 135, 127, 119, 71, 57, 29, 35, 43, 43, 55, 49, 49, 28.9576 + 55, 49, 29, 15, 26, 68, 20, 164, 185, 117, 105, 26, 29, 52, 49, 57, 28.9577 + 57, 41, 32, 29, 26, 26, 32, 41, 41, 26, 35, 86, 129, 143, 143, 129, 28.9578 + 137, 160, 167, 164, 162, 165, 167, 158, 160, 162, 164, 162, 164, 160, 158, 160, 28.9579 + 164, 164, 164, 165, 165, 165, 164, 165, 165, 162, 164, 158, 162, 162, 165, 164, 28.9580 + 167, 162, 164, 165, 162, 156, 155, 153, 158, 155, 156, 155, 153, 147, 145, 143, 28.9581 + 89, 98, 94, 94, 91, 86, 86, 89, 94, 86, 89, 79, 68, 81, 110, 129, 28.9582 + 143, 153, 160, 169, 177, 179, 177, 187, 179, 182, 181, 174, 164, 155, 137, 119, 28.9583 + 94, 71, 74, 57, 63, 74, 81, 84, 89, 89, 89, 94, 91, 94, 89, 84, 28.9584 + 89, 81, 98, 86, 89, 86, 89, 141, 149, 162, 143, 143, 149, 156, 151, 147, 28.9585 + 151, 153, 117, 114, 158, 121, 20, 23, 12, 20, 57, 76, 76, 84, 151, 60, 28.9586 + 46, 74, 74, 117, 68, 26, 23, 96, 79, 26, 20, 101, 29, 18, 12, 35, 28.9587 + 49, 139, 105, 32, 15, 26, 43, 29, 18, 15, 23, 15, 23, 156, 135, 94, 28.9588 + 197, 174, 176, 182, 195, 207, 209, 203, 197, 192, 200, 210, 84, 66, 60, 52, 28.9589 + 43, 41, 35, 38, 26, 26, 35, 35, 29, 23, 23, 15, 18, 49, 101, 137, 28.9590 + 119, 110, 121, 110, 131, 141, 147, 156, 158, 169, 181, 195, 197, 200, 201, 201, 28.9591 + 197, 187, 155, 112, 89, 60, 23, 32, 41, 26, 26, 20, 38, 35, 46, 57, 28.9592 + 60, 20, 32, 15, 15, 66, 20, 165, 184, 127, 112, 76, 32, 49, 66, 55, 28.9593 + 63, 49, 26, 35, 43, 29, 32, 43, 41, 18, 29, 96, 139, 147, 139, 139, 28.9594 + 143, 156, 164, 167, 164, 165, 164, 162, 162, 162, 160, 164, 171, 162, 160, 164, 28.9595 + 162, 160, 164, 164, 167, 169, 167, 158, 156, 162, 162, 156, 164, 164, 158, 158, 28.9596 + 164, 165, 162, 162, 162, 164, 153, 158, 155, 155, 155, 151, 151, 149, 149, 149, 28.9597 + 91, 101, 96, 84, 91, 91, 84, 86, 81, 94, 84, 74, 66, 66, 101, 127, 28.9598 + 141, 156, 167, 171, 176, 176, 182, 181, 181, 179, 176, 172, 160, 149, 139, 114, 28.9599 + 89, 84, 60, 57, 68, 71, 74, 74, 96, 81, 101, 86, 86, 86, 89, 86, 28.9600 + 86, 91, 76, 76, 76, 81, 117, 165, 210, 197, 133, 145, 151, 149, 153, 153, 28.9601 + 156, 149, 108, 55, 74, 103, 15, 18, 15, 55, 125, 89, 74, 112, 96, 101, 28.9602 + 60, 112, 66, 135, 81, 20, 18, 98, 18, 84, 29, 94, 26, 26, 12, 15, 28.9603 + 9, 41, 129, 123, 55, 18, 15, 32, 38, 9, 29, 9, 89, 181, 96, 160, 28.9604 + 203, 171, 185, 189, 192, 207, 204, 203, 198, 195, 207, 84, 43, 57, 23, 38, 28.9605 + 26, 29, 41, 20, 29, 23, 23, 35, 55, 68, 32, 20, 18, 29, 23, 103, 28.9606 + 133, 121, 125, 117, 119, 139, 141, 143, 155, 164, 182, 193, 200, 201, 206, 206, 28.9607 + 192, 162, 79, 41, 46, 38, 41, 41, 43, 23, 32, 29, 35, 60, 32, 46, 28.9608 + 26, 26, 29, 29, 26, 66, 23, 156, 187, 133, 103, 63, 68, 38, 49, 49, 28.9609 + 55, 35, 26, 29, 38, 26, 41, 32, 41, 23, 23, 105, 149, 145, 137, 139, 28.9610 + 155, 171, 169, 171, 162, 164, 167, 158, 165, 160, 160, 158, 158, 155, 167, 162, 28.9611 + 158, 158, 164, 158, 164, 164, 162, 162, 162, 162, 165, 162, 160, 162, 164, 164, 28.9612 + 160, 162, 160, 158, 160, 153, 160, 153, 156, 153, 151, 153, 153, 153, 147, 145, 28.9613 + 84, 81, 91, 81, 81, 81, 84, 79, 86, 89, 79, 63, 60, 68, 103, 121, 28.9614 + 141, 151, 169, 174, 176, 179, 177, 181, 177, 181, 181, 172, 162, 153, 133, 117, 28.9615 + 86, 63, 63, 57, 71, 76, 74, 79, 89, 86, 84, 94, 81, 79, 86, 81, 28.9616 + 89, 84, 74, 71, 66, 103, 213, 181, 216, 131, 137, 139, 143, 149, 158, 147, 28.9617 + 139, 147, 86, 32, 74, 26, 9, 12, 41, 141, 94, 26, 81, 105, 43, 91, 28.9618 + 74, 84, 76, 162, 74, 18, 38, 81, 23, 49, 81, 101, 63, 29, 35, 15, 28.9619 + 23, 23, 57, 129, 119, 76, 20, 18, 18, 12, 12, 35, 153, 108, 127, 209, 28.9620 + 172, 174, 182, 195, 203, 212, 201, 197, 206, 206, 81, 57, 38, 49, 26, 35, 28.9621 + 23, 23, 23, 26, 20, 26, 26, 60, 147, 160, 103, 41, 18, 20, 20, 52, 28.9622 + 110, 131, 121, 119, 127, 129, 137, 145, 149, 160, 182, 192, 207, 207, 212, 207, 28.9623 + 165, 35, 43, 29, 43, 32, 43, 76, 129, 86, 23, 20, 32, 29, 38, 41, 28.9624 + 23, 38, 35, 20, 29, 74, 18, 155, 192, 155, 89, 63, 52, 55, 71, 46, 28.9625 + 46, 29, 29, 32, 29, 32, 43, 35, 41, 29, 55, 127, 151, 143, 143, 141, 28.9626 + 160, 167, 165, 165, 164, 162, 165, 160, 158, 160, 155, 160, 162, 160, 160, 167, 28.9627 + 165, 158, 158, 165, 164, 160, 164, 160, 164, 158, 165, 162, 160, 167, 162, 160, 28.9628 + 160, 160, 160, 160, 158, 155, 153, 155, 153, 149, 149, 145, 149, 145, 145, 143, 28.9629 + 84, 91, 89, 84, 81, 86, 79, 79, 79, 76, 63, 84, 60, 68, 94, 125, 28.9630 + 139, 155, 164, 176, 179, 177, 177, 182, 179, 179, 181, 172, 164, 151, 139, 117, 28.9631 + 89, 71, 55, 57, 68, 74, 84, 76, 86, 84, 86, 91, 89, 89, 84, 89, 28.9632 + 81, 79, 74, 71, 63, 131, 203, 193, 189, 114, 133, 143, 151, 155, 155, 91, 28.9633 + 127, 129, 74, 81, 26, 15, 32, 26, 141, 98, 15, 43, 131, 18, 9, 52, 28.9634 + 112, 98, 105, 131, 46, 32, 26, 57, 20, 32, 26, 74, 105, 32, 32, 29, 28.9635 + 35, 23, 35, 52, 26, 57, 91, 29, 15, 9, 12, 117, 165, 86, 184, 185, 28.9636 + 172, 187, 182, 192, 210, 209, 203, 207, 206, 103, 68, 74, 49, 23, 15, 32, 28.9637 + 49, 49, 23, 41, 15, 20, 84, 84, 182, 210, 185, 167, 55, 20, 63, 41, 28.9638 + 98, 121, 110, 108, 129, 133, 141, 141, 151, 164, 169, 197, 209, 218, 216, 189, 28.9639 + 71, 29, 23, 35, 26, 35, 162, 57, 171, 139, 66, 20, 20, 38, 35, 41, 28.9640 + 23, 26, 35, 15, 20, 74, 12, 147, 190, 153, 84, 86, 55, 55, 57, 46, 28.9641 + 49, 32, 23, 32, 38, 46, 32, 29, 26, 29, 94, 133, 151, 145, 139, 149, 28.9642 + 164, 167, 164, 165, 165, 164, 165, 160, 158, 162, 158, 158, 155, 160, 162, 160, 28.9643 + 158, 158, 165, 153, 158, 158, 162, 160, 158, 160, 156, 164, 164, 160, 162, 156, 28.9644 + 156, 162, 160, 156, 153, 149, 147, 149, 147, 153, 141, 141, 143, 141, 145, 145, 28.9645 + 89, 94, 86, 81, 94, 86, 79, 86, 79, 71, 66, 71, 52, 68, 103, 131, 28.9646 + 135, 155, 165, 179, 176, 184, 179, 179, 181, 179, 182, 182, 160, 153, 135, 119, 28.9647 + 86, 60, 57, 68, 74, 84, 89, 91, 81, 91, 94, 79, 86, 86, 96, 96, 28.9648 + 84, 79, 81, 71, 66, 81, 200, 197, 187, 147, 135, 147, 149, 149, 153, 98, 28.9649 + 155, 129, 29, 74, 32, 20, 66, 119, 46, 32, 46, 110, 57, 20, 20, 81, 28.9650 + 143, 84, 84, 119, 38, 29, 32, 26, 12, 38, 26, 41, 153, 38, 38, 15, 28.9651 + 18, 26, 26, 35, 23, 26, 55, 23, 29, 63, 43, 156, 94, 147, 209, 171, 28.9652 + 190, 193, 193, 200, 213, 207, 209, 212, 127, 84, 74, 46, 38, 32, 20, 38, 28.9653 + 86, 81, 43, 91, 23, 23, 119, 38, 164, 207, 201, 200, 149, 49, 79, 101, 28.9654 + 74, 114, 105, 101, 123, 129, 129, 131, 149, 165, 182, 201, 221, 222, 209, 110, 28.9655 + 52, 35, 60, 43, 18, 43, 103, 60, 185, 167, 86, 41, 26, 68, 23, 49, 28.9656 + 35, 26, 23, 18, 15, 96, 18, 141, 181, 155, 68, 103, 55, 66, 52, 46, 28.9657 + 41, 29, 29, 55, 26, 38, 26, 26, 38, 57, 110, 145, 145, 149, 145, 160, 28.9658 + 172, 162, 160, 160, 164, 164, 160, 160, 160, 160, 156, 158, 158, 160, 158, 160, 28.9659 + 156, 162, 158, 156, 160, 158, 153, 165, 158, 160, 158, 160, 155, 156, 155, 153, 28.9660 + 158, 156, 158, 153, 149, 153, 151, 149, 145, 137, 141, 143, 141, 139, 135, 141, 28.9661 + 89, 91, 91, 79, 94, 81, 84, 84, 81, 74, 74, 63, 55, 68, 103, 127, 28.9662 + 137, 153, 169, 176, 179, 179, 179, 184, 185, 184, 182, 177, 164, 151, 137, 117, 28.9663 + 98, 68, 52, 57, 76, 86, 79, 91, 91, 91, 94, 86, 98, 91, 105, 86, 28.9664 + 94, 81, 86, 76, 23, 66, 197, 74, 117, 200, 187, 149, 147, 153, 137, 84, 28.9665 + 114, 52, 20, 23, 12, 43, 129, 71, 18, 46, 86, 32, 74, 32, 32, 57, 28.9666 + 137, 71, 108, 119, 29, 35, 23, 32, 29, 26, 20, 32, 135, 63, 23, 26, 28.9667 + 23, 26, 35, 26, 15, 18, 26, 20, 18, 29, 108, 114, 103, 198, 176, 156, 28.9668 + 156, 181, 198, 210, 212, 201, 209, 158, 94, 108, 98, 68, 68, 41, 12, 43, 28.9669 + 86, 123, 55, 81, 79, 91, 57, 55, 207, 212, 216, 212, 189, 101, 49, 119, 28.9670 + 74, 103, 96, 108, 110, 123, 131, 135, 155, 164, 187, 203, 218, 216, 176, 74, 28.9671 + 101, 41, 94, 86, 49, 110, 60, 79, 182, 158, 112, 41, 18, 20, 20, 26, 28.9672 + 26, 15, 32, 18, 23, 98, 18, 127, 182, 160, 68, 105, 68, 91, 35, 60, 28.9673 + 29, 26, 35, 38, 38, 38, 38, 35, 38, 63, 121, 147, 147, 139, 145, 158, 28.9674 + 165, 167, 169, 162, 162, 167, 162, 160, 164, 155, 162, 156, 155, 158, 158, 158, 28.9675 + 158, 162, 156, 156, 162, 160, 158, 158, 158, 156, 155, 158, 155, 156, 155, 155, 28.9676 + 155, 158, 149, 153, 149, 149, 145, 139, 141, 139, 131, 141, 137, 147, 153, 160, 28.9677 + 98, 89, 91, 89, 91, 91, 101, 84, 84, 76, 68, 63, 49, 66, 94, 123, 28.9678 + 141, 156, 165, 172, 182, 181, 179, 185, 184, 185, 182, 179, 165, 151, 133, 117, 28.9679 + 91, 76, 52, 71, 66, 74, 86, 86, 91, 98, 91, 91, 98, 79, 101, 98, 28.9680 + 108, 105, 57, 49, 29, 20, 167, 114, 147, 182, 216, 213, 185, 160, 35, 20, 28.9681 + 20, 32, 18, 32, 52, 98, 60, 41, 26, 57, 49, 41, 63, 43, 49, 86, 28.9682 + 149, 91, 141, 125, 32, 35, 32, 29, 43, 29, 23, 18, 86, 74, 26, 32, 28.9683 + 23, 23, 43, 29, 29, 20, 23, 32, 18, 52, 147, 74, 147, 176, 160, 181, 28.9684 + 197, 203, 206, 207, 204, 209, 164, 94, 105, 121, 121, 110, 105, 91, 20, 23, 28.9685 + 79, 112, 114, 49, 38, 41, 71, 172, 213, 213, 213, 203, 181, 127, 76, 119, 28.9686 + 108, 101, 108, 105, 110, 117, 129, 135, 153, 169, 190, 216, 221, 221, 131, 98, 28.9687 + 129, 119, 52, 105, 94, 74, 63, 169, 177, 155, 101, 52, 20, 38, 20, 20, 28.9688 + 18, 23, 29, 18, 41, 105, 18, 105, 172, 162, 79, 91, 68, 84, 43, 41, 28.9689 + 32, 55, 32, 32, 55, 38, 26, 29, 35, 86, 135, 155, 143, 141, 149, 160, 28.9690 + 164, 167, 165, 164, 165, 162, 158, 160, 156, 158, 164, 156, 162, 158, 156, 160, 28.9691 + 153, 164, 158, 155, 156, 160, 162, 164, 158, 156, 156, 151, 151, 155, 151, 158, 28.9692 + 151, 155, 151, 143, 143, 143, 143, 139, 139, 137, 137, 143, 153, 158, 167, 176, 28.9693 + 91, 101, 91, 86, 84, 91, 96, 84, 81, 81, 68, 63, 49, 71, 101, 119, 28.9694 + 141, 155, 162, 174, 181, 181, 184, 184, 181, 182, 182, 177, 164, 155, 137, 112, 28.9695 + 98, 76, 66, 63, 79, 84, 91, 89, 84, 101, 103, 96, 91, 86, 96, 91, 28.9696 + 110, 38, 49, 26, 43, 79, 149, 155, 171, 187, 227, 246, 215, 38, 68, 20, 28.9697 + 35, 15, 18, 35, 101, 74, 81, 89, 35, 55, 86, 66, 76, 101, 91, 101, 28.9698 + 112, 66, 119, 147, 43, 23, 41, 29, 55, 23, 26, 20, 52, 43, 18, 55, 28.9699 + 18, 18, 32, 35, 18, 32, 12, 26, 57, 143, 91, 98, 204, 153, 181, 185, 28.9700 + 197, 203, 209, 207, 206, 167, 101, 110, 101, 117, 127, 125, 133, 112, 63, 52, 28.9701 + 89, 112, 121, 123, 96, 119, 176, 203, 207, 210, 210, 204, 149, 141, 145, 96, 28.9702 + 127, 103, 110, 114, 114, 121, 121, 127, 143, 171, 201, 221, 225, 213, 123, 84, 28.9703 + 127, 155, 114, 84, 66, 96, 167, 187, 177, 153, 96, 49, 43, 26, 20, 26, 28.9704 + 41, 18, 43, 26, 38, 86, 32, 86, 174, 172, 96, 76, 84, 98, 66, 35, 28.9705 + 38, 38, 35, 23, 41, 46, 38, 23, 35, 103, 143, 143, 143, 137, 155, 171, 28.9706 + 165, 164, 160, 162, 164, 160, 162, 160, 158, 158, 160, 156, 172, 164, 164, 162, 28.9707 + 165, 162, 162, 165, 160, 160, 164, 160, 155, 162, 160, 158, 160, 155, 153, 149, 28.9708 + 149, 147, 149, 149, 143, 141, 141, 135, 137, 143, 153, 160, 171, 172, 179, 190, 28.9709 + 89, 86, 96, 91, 86, 94, 91, 79, 79, 81, 79, 55, 60, 68, 101, 121, 28.9710 + 137, 155, 167, 177, 179, 181, 184, 184, 185, 184, 184, 177, 165, 153, 131, 123, 28.9711 + 91, 74, 74, 66, 79, 71, 89, 91, 96, 101, 91, 101, 96, 125, 43, 26, 28.9712 + 18, 35, 68, 123, 137, 155, 171, 195, 160, 221, 230, 147, 55, 38, 119, 26, 28.9713 + 20, 29, 55, 127, 139, 114, 29, 32, 12, 60, 41, 89, 79, 55, 66, 112, 28.9714 + 129, 26, 127, 145, 89, 71, 29, 18, 46, 15, 18, 35, 26, 23, 46, 43, 28.9715 + 26, 29, 71, 26, 23, 20, 15, 23, 117, 153, 91, 181, 200, 169, 181, 195, 28.9716 + 206, 210, 209, 203, 155, 86, 114, 117, 123, 121, 131, 145, 137, 139, 121, 96, 28.9717 + 91, 52, 114, 135, 151, 156, 172, 184, 195, 201, 189, 167, 155, 137, 112, 105, 28.9718 + 119, 117, 108, 110, 117, 121, 117, 137, 151, 174, 197, 224, 227, 209, 123, 91, 28.9719 + 81, 114, 143, 141, 147, 167, 177, 182, 162, 119, 84, 26, 32, 46, 38, 32, 28.9720 + 43, 35, 41, 35, 38, 84, 43, 89, 171, 187, 110, 84, 84, 66, 49, 35, 28.9721 + 29, 29, 26, 35, 38, 43, 23, 29, 57, 123, 143, 141, 139, 145, 164, 165, 28.9722 + 162, 160, 162, 160, 160, 160, 162, 160, 155, 158, 162, 160, 160, 171, 158, 160, 28.9723 + 156, 160, 160, 162, 158, 155, 155, 155, 160, 153, 153, 153, 149, 156, 153, 151, 28.9724 + 147, 143, 149, 147, 139, 143, 141, 145, 167, 167, 171, 181, 185, 189, 192, 197, 28.9725 + 103, 98, 89, 96, 89, 103, 86, 79, 81, 71, 74, 60, 52, 63, 89, 123, 28.9726 + 139, 153, 169, 174, 182, 181, 184, 189, 184, 185, 184, 182, 165, 156, 137, 117, 28.9727 + 98, 74, 63, 74, 86, 86, 91, 98, 98, 108, 103, 103, 98, 182, 12, 9, 28.9728 + 35, 66, 133, 164, 145, 158, 156, 171, 151, 185, 74, 46, 26, 15, 71, 94, 28.9729 + 94, 123, 147, 84, 68, 86, 15, 18, 20, 98, 29, 103, 79, 74, 74, 96, 28.9730 + 164, 74, 143, 119, 123, 43, 101, 26, 29, 20, 23, 29, 43, 32, 29, 20, 28.9731 + 20, 26, 26, 15, 15, 18, 12, 43, 162, 79, 133, 209, 171, 177, 189, 198, 28.9732 + 210, 210, 204, 147, 86, 105, 123, 114, 133, 129, 127, 137, 137, 137, 139, 112, 28.9733 + 121, 123, 96, 94, 101, 117, 131, 156, 151, 165, 165, 167, 176, 174, 179, 147, 28.9734 + 123, 121, 117, 112, 110, 117, 121, 135, 145, 172, 193, 222, 228, 206, 179, 171, 28.9735 + 169, 133, 141, 139, 123, 155, 162, 137, 114, 79, 43, 23, 79, 66, 38, 29, 28.9736 + 41, 18, 71, 41, 46, 68, 23, 79, 160, 190, 133, 66, 86, 66, 63, 35, 28.9737 + 35, 35, 29, 18, 46, 43, 29, 46, 86, 125, 151, 137, 137, 145, 165, 165, 28.9738 + 164, 164, 162, 158, 158, 162, 162, 156, 158, 156, 158, 160, 165, 189, 158, 156, 28.9739 + 153, 164, 164, 160, 165, 162, 158, 155, 149, 156, 155, 149, 145, 155, 151, 143, 28.9740 + 139, 149, 141, 143, 139, 143, 151, 171, 176, 182, 185, 190, 193, 193, 198, 198, 28.9741 + 91, 96, 96, 98, 86, 98, 79, 74, 76, 68, 63, 68, 49, 55, 91, 119, 28.9742 + 143, 155, 169, 177, 177, 182, 182, 189, 189, 182, 187, 179, 171, 160, 137, 123, 28.9743 + 96, 71, 66, 68, 81, 94, 94, 91, 105, 103, 101, 96, 103, 177, 18, 35, 28.9744 + 105, 137, 165, 156, 133, 127, 131, 177, 167, 55, 55, 63, 35, 32, 41, 127, 28.9745 + 127, 43, 29, 66, 133, 20, 15, 26, 41, 98, 41, 79, 112, 29, 74, 112, 28.9746 + 139, 117, 145, 101, 96, 141, 76, 15, 26, 26, 18, 20, 26, 29, 35, 18, 28.9747 + 49, 29, 23, 18, 15, 15, 18, 133, 127, 81, 187, 182, 179, 187, 192, 203, 28.9748 + 212, 209, 164, 68, 94, 119, 125, 127, 137, 133, 137, 137, 141, 135, 145, 135, 28.9749 + 137, 125, 98, 123, 98, 127, 137, 141, 108, 119, 127, 155, 158, 165, 153, 133, 28.9750 + 117, 108, 114, 125, 112, 119, 119, 133, 143, 165, 184, 219, 230, 210, 174, 162, 28.9751 + 151, 143, 139, 125, 108, 108, 91, 81, 38, 38, 76, 74, 74, 68, 35, 23, 28.9752 + 29, 9, 32, 49, 68, 79, 38, 68, 158, 198, 147, 79, 96, 79, 41, 23, 28.9753 + 29, 41, 29, 38, 43, 41, 32, 57, 108, 135, 143, 139, 145, 151, 172, 171, 28.9754 + 164, 165, 158, 160, 162, 160, 162, 158, 158, 155, 155, 155, 158, 160, 156, 156, 28.9755 + 156, 156, 156, 164, 162, 158, 155, 155, 147, 151, 149, 149, 149, 149, 145, 143, 28.9756 + 149, 141, 143, 145, 158, 162, 176, 182, 187, 193, 197, 197, 198, 198, 197, 197, 28.9757 + 94, 98, 96, 101, 86, 98, 79, 79, 68, 74, 71, 57, 55, 49, 91, 123, 28.9758 + 137, 155, 167, 172, 179, 185, 181, 187, 187, 185, 192, 181, 169, 156, 141, 125, 28.9759 + 98, 76, 63, 68, 79, 84, 94, 103, 103, 108, 110, 96, 98, 143, 96, 121, 28.9760 + 137, 123, 121, 149, 156, 114, 49, 84, 79, 86, 49, 32, 26, 32, 15, 55, 28.9761 + 167, 137, 74, 141, 108, 74, 66, 43, 18, 81, 57, 71, 114, 74, 43, 121, 28.9762 + 103, 129, 123, 121, 151, 127, 15, 35, 35, 23, 35, 35, 20, 35, 23, 23, 28.9763 + 41, 35, 26, 20, 6, 15, 89, 169, 89, 110, 193, 169, 187, 187, 197, 209, 28.9764 + 209, 172, 68, 79, 94, 119, 125, 125, 141, 133, 141, 147, 151, 145, 139, 139, 28.9765 + 147, 139, 123, 131, 114, 123, 133, 125, 112, 147, 145, 153, 151, 149, 141, 151, 28.9766 + 125, 110, 121, 123, 114, 123, 112, 125, 139, 160, 193, 218, 230, 215, 187, 160, 28.9767 + 151, 139, 131, 119, 125, 121, 125, 112, 74, 84, 68, 91, 79, 68, 35, 38, 28.9768 + 23, 9, 35, 32, 74, 79, 20, 74, 160, 197, 151, 91, 79, 52, 29, 41, 28.9769 + 26, 29, 18, 49, 41, 43, 23, 76, 127, 143, 139, 133, 143, 167, 169, 160, 28.9770 + 165, 162, 162, 158, 162, 160, 162, 160, 164, 158, 158, 162, 155, 158, 155, 162, 28.9771 + 160, 158, 158, 155, 160, 155, 155, 156, 145, 156, 149, 147, 147, 149, 139, 143, 28.9772 + 143, 137, 143, 162, 171, 182, 192, 195, 197, 200, 200, 201, 201, 200, 195, 195, 28.9773 + 91, 94, 89, 91, 86, 86, 86, 81, 71, 76, 71, 55, 41, 63, 86, 112, 28.9774 + 141, 151, 171, 176, 177, 179, 184, 187, 184, 189, 184, 184, 167, 160, 141, 125, 28.9775 + 96, 63, 52, 66, 76, 84, 89, 91, 98, 98, 94, 94, 86, 110, 164, 137, 28.9776 + 165, 169, 167, 125, 86, 74, 79, 57, 108, 79, 29, 32, 29, 41, 15, 41, 28.9777 + 55, 164, 153, 139, 137, 137, 63, 41, 18, 35, 84, 57, 105, 112, 66, 89, 28.9778 + 66, 123, 121, 147, 133, 89, 41, 26, 20, 23, 29, 23, 32, 32, 38, 29, 28.9779 + 23, 20, 18, 26, 9, 26, 139, 131, 94, 174, 176, 179, 192, 190, 209, 212, 28.9780 + 182, 55, 76, 101, 103, 119, 133, 133, 145, 145, 151, 153, 151, 147, 153, 145, 28.9781 + 139, 141, 145, 137, 135, 137, 139, 149, 149, 151, 156, 164, 165, 158, 164, 151, 28.9782 + 121, 119, 125, 129, 125, 119, 119, 117, 129, 164, 192, 213, 227, 215, 190, 181, 28.9783 + 165, 156, 143, 135, 129, 129, 117, 119, 86, 94, 96, 94, 86, 81, 38, 46, 28.9784 + 18, 18, 35, 32, 49, 60, 26, 63, 158, 193, 145, 94, 49, 68, 49, 41, 28.9785 + 35, 32, 32, 60, 41, 29, 26, 71, 137, 141, 141, 135, 151, 167, 165, 167, 28.9786 + 162, 156, 164, 160, 162, 155, 155, 156, 162, 158, 156, 156, 156, 153, 158, 153, 28.9787 + 156, 162, 158, 158, 153, 151, 155, 155, 155, 151, 151, 151, 145, 141, 147, 139, 28.9788 + 137, 145, 167, 182, 189, 193, 201, 201, 201, 203, 200, 198, 197, 200, 197, 197, 28.9789 + 96, 91, 94, 79, 84, 79, 79, 79, 68, 74, 66, 43, 32, 38, 79, 127, 28.9790 + 133, 147, 164, 174, 176, 181, 185, 185, 184, 187, 189, 177, 169, 158, 139, 125, 28.9791 + 94, 63, 74, 66, 81, 79, 86, 98, 98, 101, 101, 96, 103, 98, 143, 165, 28.9792 + 172, 137, 114, 110, 60, 52, 60, 110, 89, 41, 20, 18, 52, 49, 49, 57, 28.9793 + 76, 101, 117, 114, 101, 66, 35, 20, 12, 52, 71, 63, 41, 127, 125, 71, 28.9794 + 96, 108, 89, 160, 52, 94, 55, 35, 32, 29, 26, 29, 23, 29, 38, 32, 28.9795 + 35, 32, 23, 12, 15, 103, 165, 89, 121, 197, 190, 187, 193, 206, 213, 200, 28.9796 + 38, 66, 86, 101, 110, 121, 129, 135, 147, 151, 151, 149, 153, 162, 162, 156, 28.9797 + 151, 149, 149, 151, 145, 158, 155, 165, 164, 165, 172, 169, 162, 167, 169, 139, 28.9798 + 121, 123, 133, 127, 112, 119, 119, 119, 133, 158, 184, 209, 225, 219, 195, 190, 28.9799 + 174, 165, 153, 153, 141, 125, 121, 119, 114, 98, 103, 108, 101, 89, 35, 43, 28.9800 + 32, 23, 35, 46, 38, 79, 35, 60, 169, 197, 145, 98, 60, 71, 46, 26, 28.9801 + 35, 23, 35, 46, 32, 20, 23, 103, 135, 143, 137, 131, 147, 164, 165, 162, 28.9802 + 162, 160, 158, 164, 155, 162, 156, 158, 156, 156, 158, 160, 158, 156, 156, 160, 28.9803 + 160, 156, 156, 160, 153, 151, 151, 155, 149, 151, 143, 151, 139, 143, 133, 133, 28.9804 + 149, 174, 187, 198, 200, 201, 203, 203, 203, 201, 200, 198, 198, 200, 198, 198, 28.9805 + 96, 84, 81, 76, 86, 71, 71, 66, 66, 74, 57, 52, 43, 43, 76, 117, 28.9806 + 137, 155, 165, 172, 182, 181, 184, 182, 182, 184, 185, 181, 169, 156, 143, 121, 28.9807 + 94, 81, 55, 63, 81, 84, 86, 105, 103, 101, 98, 108, 101, 98, 112, 129, 28.9808 + 108, 98, 108, 66, 52, 66, 91, 101, 32, 49, 26, 35, 84, 60, 71, 110, 28.9809 + 119, 117, 49, 35, 117, 84, 18, 23, 35, 26, 55, 91, 41, 46, 147, 162, 28.9810 + 143, 98, 55, 71, 125, 149, 26, 29, 23, 20, 35, 26, 32, 29, 32, 55, 28.9811 + 32, 35, 29, 29, 46, 149, 103, 91, 167, 177, 189, 198, 206, 216, 209, 49, 28.9812 + 55, 84, 103, 105, 105, 125, 131, 129, 147, 149, 155, 147, 162, 167, 164, 164, 28.9813 + 172, 172, 167, 165, 164, 162, 171, 176, 171, 177, 165, 174, 164, 177, 158, 133, 28.9814 + 127, 139, 137, 127, 125, 117, 119, 114, 131, 167, 181, 210, 225, 219, 200, 189, 28.9815 + 181, 164, 156, 153, 151, 135, 125, 125, 123, 108, 105, 101, 105, 84, 35, 43, 28.9816 + 35, 35, 32, 52, 43, 52, 23, 49, 165, 193, 158, 96, 52, 81, 29, 32, 28.9817 + 35, 18, 35, 46, 23, 23, 38, 110, 141, 141, 141, 139, 158, 165, 160, 160, 28.9818 + 165, 158, 160, 160, 158, 160, 158, 160, 156, 158, 158, 156, 160, 156, 156, 158, 28.9819 + 156, 155, 155, 156, 155, 158, 155, 151, 153, 151, 149, 145, 141, 141, 139, 153, 28.9820 + 176, 187, 197, 203, 203, 204, 203, 201, 201, 201, 200, 198, 198, 200, 198, 198, 28.9821 + 89, 81, 86, 74, 84, 71, 76, 63, 74, 68, 49, 49, 38, 57, 79, 112, 28.9822 + 133, 155, 160, 169, 177, 182, 181, 184, 187, 182, 187, 179, 171, 164, 139, 123, 28.9823 + 96, 74, 57, 68, 79, 86, 81, 94, 96, 105, 98, 105, 101, 108, 117, 91, 28.9824 + 110, 145, 105, 114, 158, 156, 127, 52, 43, 32, 29, 38, 117, 68, 112, 125, 28.9825 + 123, 94, 55, 117, 117, 32, 15, 20, 32, 46, 98, 139, 86, 52, 71, 84, 28.9826 + 143, 76, 91, 123, 187, 49, 41, 35, 35, 35, 38, 46, 23, 26, 29, 29, 28.9827 + 38, 29, 41, 18, 119, 162, 103, 133, 201, 187, 200, 197, 204, 215, 74, 49, 28.9828 + 71, 86, 101, 114, 110, 117, 133, 131, 143, 145, 147, 155, 158, 172, 158, 160, 28.9829 + 174, 182, 172, 162, 164, 164, 176, 176, 176, 167, 167, 176, 172, 164, 151, 137, 28.9830 + 129, 135, 131, 123, 119, 123, 114, 114, 127, 147, 184, 204, 224, 221, 203, 184, 28.9831 + 185, 174, 165, 151, 149, 137, 133, 133, 119, 114, 114, 119, 108, 89, 49, 38, 28.9832 + 29, 26, 35, 41, 46, 66, 9, 41, 164, 189, 172, 112, 46, 71, 15, 41, 28.9833 + 23, 29, 41, 41, 23, 26, 55, 117, 145, 139, 139, 145, 165, 172, 172, 164, 28.9834 + 164, 164, 158, 155, 156, 160, 160, 158, 156, 156, 158, 156, 155, 153, 155, 156, 28.9835 + 158, 156, 153, 153, 151, 147, 151, 147, 145, 149, 149, 143, 145, 137, 153, 176, 28.9836 + 190, 198, 204, 207, 209, 204, 203, 201, 201, 201, 198, 197, 197, 198, 198, 200, 28.9837 + 74, 84, 81, 74, 71, 74, 74, 76, 74, 66, 43, 35, 41, 49, 76, 108, 28.9838 + 131, 149, 167, 176, 181, 179, 182, 182, 184, 182, 187, 179, 171, 156, 137, 123, 28.9839 + 91, 79, 63, 63, 84, 84, 84, 84, 96, 96, 98, 105, 110, 133, 129, 145, 28.9840 + 160, 177, 177, 164, 155, 108, 68, 49, 55, 66, 57, 52, 133, 63, 119, 123, 28.9841 + 86, 117, 108, 123, 68, 23, 23, 18, 35, 32, 46, 96, 121, 103, 114, 91, 28.9842 + 71, 165, 176, 169, 66, 112, 94, 76, 68, 15, 23, 35, 20, 35, 23, 32, 28.9843 + 32, 29, 23, 63, 162, 103, 98, 169, 172, 197, 195, 206, 216, 135, 29, 52, 28.9844 + 66, 96, 101, 110, 110, 119, 125, 135, 137, 149, 147, 155, 158, 165, 169, 169, 28.9845 + 176, 177, 176, 177, 177, 177, 171, 172, 165, 177, 181, 181, 169, 155, 151, 143, 28.9846 + 131, 133, 139, 129, 125, 119, 110, 108, 119, 153, 177, 204, 224, 227, 207, 187, 28.9847 + 181, 177, 165, 147, 139, 139, 129, 133, 125, 117, 119, 114, 108, 101, 63, 32, 28.9848 + 35, 32, 43, 29, 41, 46, 9, 35, 165, 177, 174, 125, 35, 46, 15, 57, 28.9849 + 23, 23, 43, 32, 26, 26, 89, 133, 145, 141, 137, 153, 167, 164, 167, 164, 28.9850 + 167, 158, 164, 162, 156, 164, 164, 156, 162, 158, 160, 160, 160, 156, 151, 155, 28.9851 + 158, 153, 156, 155, 151, 151, 151, 149, 147, 145, 143, 143, 135, 153, 171, 192, 28.9852 + 200, 203, 207, 206, 206, 204, 204, 200, 198, 201, 200, 198, 200, 200, 198, 201, 28.9853 + 79, 81, 101, 76, 74, 74, 74, 71, 60, 55, 55, 41, 35, 52, 94, 119, 28.9854 + 137, 153, 162, 171, 177, 181, 182, 182, 185, 187, 182, 181, 165, 156, 135, 127, 28.9855 + 98, 68, 60, 71, 84, 74, 86, 89, 86, 105, 151, 169, 164, 160, 155, 156, 28.9856 + 151, 147, 55, 41, 68, 89, 43, 46, 52, 57, 60, 79, 110, 68, 129, 76, 28.9857 + 101, 137, 129, 86, 32, 23, 20, 20, 18, 23, 29, 57, 79, 66, 125, 135, 28.9858 + 133, 114, 57, 38, 38, 143, 137, 98, 96, 29, 38, 38, 52, 32, 35, 29, 28.9859 + 35, 23, 20, 119, 153, 96, 117, 201, 187, 197, 203, 218, 184, 26, 26, 57, 28.9860 + 74, 103, 105, 110, 117, 112, 129, 135, 139, 143, 149, 155, 162, 165, 176, 174, 28.9861 + 174, 184, 176, 169, 179, 179, 184, 179, 179, 176, 179, 179, 172, 164, 151, 141, 28.9862 + 145, 139, 139, 135, 123, 121, 112, 121, 123, 139, 169, 204, 222, 224, 209, 190, 28.9863 + 177, 171, 169, 160, 147, 135, 129, 119, 121, 114, 119, 114, 110, 98, 49, 35, 28.9864 + 32, 32, 66, 43, 46, 41, 35, 23, 162, 185, 164, 149, 29, 49, 29, 46, 28.9865 + 20, 26, 46, 23, 26, 32, 105, 145, 139, 143, 135, 160, 167, 167, 165, 164, 28.9866 + 158, 160, 165, 158, 158, 156, 158, 158, 155, 156, 164, 160, 158, 151, 153, 147, 28.9867 + 153, 155, 158, 153, 149, 153, 143, 147, 147, 145, 153, 141, 147, 174, 189, 198, 28.9868 + 201, 206, 206, 204, 203, 201, 203, 200, 201, 200, 201, 200, 200, 200, 201, 203, 28.9869 + 81, 68, 79, 81, 71, 57, 66, 63, 63, 55, 60, 41, 41, 52, 81, 117, 28.9870 + 143, 151, 167, 172, 177, 176, 179, 181, 184, 189, 189, 184, 171, 160, 147, 123, 28.9871 + 96, 71, 63, 71, 68, 76, 91, 114, 141, 137, 123, 108, 127, 133, 129, 112, 28.9872 + 71, 41, 35, 91, 74, 55, 60, 49, 71, 35, 66, 103, 63, 94, 127, 119, 28.9873 + 149, 158, 46, 43, 41, 41, 20, 38, 29, 26, 35, 35, 66, 86, 43, 60, 28.9874 + 117, 29, 20, 38, 57, 133, 147, 121, 57, 43, 29, 38, 32, 32, 32, 35, 28.9875 + 20, 23, 49, 153, 112, 117, 147, 176, 200, 203, 213, 213, 29, 12, 32, 74, 28.9876 + 86, 103, 117, 112, 119, 119, 117, 127, 143, 141, 147, 155, 155, 165, 167, 176, 28.9877 + 172, 177, 177, 177, 182, 184, 176, 177, 181, 181, 181, 171, 167, 160, 155, 153, 28.9878 + 143, 143, 143, 135, 117, 125, 119, 119, 114, 137, 167, 207, 218, 224, 212, 187, 28.9879 + 174, 165, 165, 164, 151, 141, 131, 127, 123, 121, 117, 112, 117, 96, 52, 49, 28.9880 + 29, 23, 46, 38, 52, 41, 26, 29, 156, 177, 153, 164, 29, 29, 20, 26, 28.9881 + 18, 32, 29, 23, 26, 57, 119, 139, 147, 139, 145, 158, 169, 165, 165, 167, 28.9882 + 164, 164, 164, 162, 160, 164, 158, 158, 162, 158, 155, 158, 153, 164, 153, 153, 28.9883 + 153, 156, 149, 151, 156, 155, 145, 147, 143, 143, 139, 143, 167, 189, 197, 203, 28.9884 + 203, 204, 206, 203, 204, 204, 203, 203, 203, 200, 200, 201, 201, 204, 204, 209, 28.9885 + 66, 79, 66, 74, 60, 57, 63, 71, 63, 57, 57, 38, 49, 41, 79, 117, 28.9886 + 137, 149, 167, 174, 179, 179, 182, 181, 187, 185, 187, 179, 167, 156, 141, 119, 28.9887 + 101, 79, 52, 71, 71, 84, 86, 98, 103, 103, 110, 110, 129, 121, 101, 105, 28.9888 + 108, 91, 79, 89, 94, 43, 55, 29, 46, 68, 119, 49, 71, 119, 133, 156, 28.9889 + 76, 55, 86, 32, 52, 32, 38, 32, 32, 29, 32, 49, 26, 60, 94, 26, 28.9890 + 96, 23, 23, 15, 94, 108, 149, 108, 103, 41, 23, 23, 35, 18, 38, 38, 28.9891 + 12, 29, 129, 155, 101, 117, 210, 189, 195, 198, 221, 60, 20, 41, 32, 76, 28.9892 + 94, 108, 110, 114, 110, 110, 123, 131, 141, 141, 149, 147, 155, 160, 167, 176, 28.9893 + 176, 177, 181, 184, 182, 179, 174, 176, 181, 176, 172, 177, 167, 162, 153, 141, 28.9894 + 151, 141, 143, 133, 131, 129, 117, 119, 119, 141, 162, 200, 224, 228, 215, 187, 28.9895 + 172, 164, 164, 155, 155, 141, 137, 125, 125, 123, 123, 119, 110, 84, 38, 35, 28.9896 + 26, 41, 35, 38, 79, 35, 20, 18, 147, 177, 129, 169, 55, 38, 9, 20, 28.9897 + 49, 29, 35, 20, 20, 71, 125, 149, 141, 137, 151, 169, 169, 165, 164, 162, 28.9898 + 164, 164, 164, 156, 155, 158, 162, 156, 155, 149, 160, 155, 158, 155, 155, 153, 28.9899 + 151, 149, 155, 147, 151, 151, 147, 141, 141, 139, 137, 153, 182, 195, 201, 203, 28.9900 + 203, 204, 203, 203, 204, 201, 203, 203, 203, 203, 201, 203, 204, 207, 209, 210, 28.9901 + 74, 68, 71, 68, 63, 60, 63, 71, 57, 63, 57, 68, 35, 52, 76, 117, 28.9902 + 131, 151, 162, 172, 177, 182, 182, 184, 184, 184, 182, 177, 171, 151, 143, 133, 28.9903 + 94, 76, 66, 79, 79, 81, 91, 108, 94, 103, 98, 105, 129, 103, 89, 60, 28.9904 + 76, 68, 105, 71, 86, 74, 29, 46, 81, 121, 94, 32, 60, 156, 119, 103, 28.9905 + 60, 60, 117, 43, 35, 18, 20, 49, 38, 35, 35, 49, 29, 55, 38, 46, 28.9906 + 81, 38, 12, 6, 84, 103, 137, 133, 139, 38, 29, 23, 23, 18, 35, 26, 28.9907 + 6, 43, 153, 105, 119, 165, 198, 201, 197, 213, 162, 18, 29, 26, 55, 79, 28.9908 + 91, 103, 103, 114, 121, 108, 119, 123, 129, 141, 145, 141, 149, 158, 167, 169, 28.9909 + 172, 172, 179, 182, 185, 187, 176, 176, 172, 169, 169, 169, 162, 153, 156, 143, 28.9910 + 147, 145, 135, 133, 123, 127, 119, 125, 127, 137, 164, 197, 221, 227, 219, 187, 28.9911 + 172, 165, 165, 158, 149, 149, 133, 127, 127, 119, 121, 121, 110, 84, 41, 41, 28.9912 + 26, 52, 32, 41, 91, 29, 12, 20, 141, 181, 125, 172, 79, 29, 23, 18, 28.9913 + 74, 38, 41, 23, 20, 86, 137, 143, 143, 143, 158, 171, 169, 165, 164, 158, 28.9914 + 156, 158, 158, 160, 158, 156, 153, 158, 156, 160, 156, 155, 153, 156, 156, 155, 28.9915 + 153, 149, 153, 151, 151, 153, 143, 145, 135, 131, 139, 174, 192, 198, 206, 204, 28.9916 + 201, 201, 201, 203, 203, 203, 203, 206, 206, 201, 206, 206, 212, 210, 212, 212, 28.9917 + 71, 76, 60, 55, 55, 57, 60, 57, 57, 46, 46, 43, 32, 52, 74, 121, 28.9918 + 137, 151, 164, 174, 174, 182, 181, 182, 182, 179, 181, 174, 165, 158, 139, 127, 28.9919 + 98, 63, 55, 66, 79, 76, 103, 98, 94, 101, 103, 103, 108, 91, 55, 123, 28.9920 + 105, 143, 96, 60, 129, 89, 60, 91, 127, 81, 29, 38, 81, 112, 139, 94, 28.9921 + 112, 55, 46, 49, 23, 26, 52, 41, 38, 35, 41, 41, 29, 76, 32, 18, 28.9922 + 55, 41, 15, 32, 81, 112, 105, 158, 155, 84, 20, 9, 15, 18, 12, 9, 28.9923 + 18, 121, 145, 112, 112, 204, 195, 204, 207, 206, 43, 23, 46, 38, 41, 76, 28.9924 + 101, 108, 110, 108, 121, 121, 121, 123, 133, 141, 135, 139, 145, 155, 160, 160, 28.9925 + 165, 177, 179, 185, 179, 184, 177, 176, 172, 174, 171, 169, 165, 155, 145, 137, 28.9926 + 135, 143, 137, 133, 125, 117, 117, 117, 119, 141, 160, 181, 218, 224, 219, 197, 28.9927 + 174, 171, 162, 164, 153, 141, 139, 131, 121, 114, 114, 121, 110, 71, 35, 38, 28.9928 + 26, 38, 29, 38, 94, 29, 15, 15, 145, 179, 147, 169, 114, 23, 18, 15, 28.9929 + 57, 43, 38, 20, 26, 108, 141, 141, 149, 151, 158, 176, 169, 167, 164, 160, 28.9930 + 164, 162, 158, 158, 156, 158, 156, 156, 151, 160, 155, 153, 156, 156, 153, 155, 28.9931 + 151, 149, 149, 151, 149, 145, 139, 139, 137, 131, 160, 185, 198, 201, 204, 204, 28.9932 + 201, 204, 200, 204, 204, 204, 203, 204, 206, 209, 210, 210, 212, 213, 213, 213, 28.9933 + 60, 66, 66, 57, 60, 66, 63, 55, 55, 55, 55, 35, 38, 52, 68, 110, 28.9934 + 141, 149, 156, 171, 174, 181, 179, 177, 177, 185, 179, 177, 174, 158, 141, 127, 28.9935 + 91, 66, 60, 68, 91, 91, 81, 91, 91, 101, 101, 103, 105, 68, 133, 160, 28.9936 + 167, 91, 57, 108, 117, 49, 91, 145, 71, 52, 55, 60, 43, 74, 160, 91, 28.9937 + 131, 38, 52, 43, 38, 35, 55, 26, 26, 38, 26, 29, 32, 29, 94, 38, 28.9938 + 15, 57, 26, 18, 71, 114, 91, 76, 171, 160, 57, 23, 23, 23, 12, 18, 28.9939 + 32, 147, 96, 112, 147, 197, 203, 210, 219, 66, 18, 23, 52, 29, 46, 63, 28.9940 + 94, 98, 114, 112, 114, 123, 121, 125, 129, 137, 141, 145, 149, 147, 155, 158, 28.9941 + 165, 174, 174, 179, 177, 179, 176, 172, 172, 174, 167, 165, 160, 155, 143, 137, 28.9942 + 129, 129, 127, 127, 123, 121, 114, 121, 121, 139, 155, 179, 210, 227, 222, 197, 28.9943 + 171, 167, 160, 158, 149, 145, 139, 133, 123, 127, 114, 112, 98, 60, 46, 23, 28.9944 + 35, 20, 26, 43, 96, 26, 12, 6, 125, 184, 153, 160, 153, 15, 20, 15, 28.9945 + 55, 46, 35, 23, 55, 123, 149, 143, 137, 147, 182, 189, 162, 164, 165, 160, 28.9946 + 165, 158, 164, 158, 160, 156, 156, 156, 155, 158, 155, 155, 153, 153, 151, 147, 28.9947 + 149, 153, 155, 153, 151, 145, 141, 133, 139, 153, 177, 192, 200, 204, 206, 203, 28.9948 + 203, 201, 201, 201, 201, 203, 206, 207, 210, 212, 213, 213, 212, 212, 212, 212, 28.9949 + 57, 66, 76, 66, 66, 68, 68, 57, 60, 63, 41, 43, 38, 35, 76, 112, 28.9950 + 139, 156, 160, 177, 177, 179, 179, 174, 177, 177, 184, 171, 165, 147, 143, 125, 28.9951 + 103, 60, 49, 74, 79, 133, 94, 91, 98, 91, 89, 110, 139, 165, 156, 84, 28.9952 + 29, 66, 114, 133, 74, 86, 149, 49, 41, 49, 63, 86, 52, 76, 156, 119, 28.9953 + 149, 60, 41, 46, 52, 38, 66, 38, 38, 23, 23, 26, 20, 35, 74, 35, 28.9954 + 29, 46, 26, 23, 91, 123, 137, 63, 143, 153, 160, 35, 32, 23, 23, 15, 28.9955 + 96, 156, 94, 119, 201, 204, 209, 218, 184, 15, 18, 38, 63, 38, 55, 68, 28.9956 + 89, 96, 103, 119, 121, 114, 119, 127, 133, 131, 147, 147, 147, 153, 153, 153, 28.9957 + 172, 176, 172, 177, 176, 174, 177, 167, 174, 167, 167, 162, 156, 153, 139, 131, 28.9958 + 131, 125, 129, 127, 117, 121, 114, 110, 129, 135, 145, 171, 206, 224, 222, 206, 28.9959 + 164, 164, 160, 155, 147, 145, 127, 133, 125, 125, 123, 110, 98, 55, 32, 32, 28.9960 + 41, 35, 38, 55, 94, 20, 12, 9, 112, 176, 162, 158, 149, 35, 18, 20, 28.9961 + 46, 49, 26, 18, 89, 133, 147, 143, 139, 164, 167, 172, 167, 165, 165, 162, 28.9962 + 156, 162, 160, 160, 156, 156, 158, 155, 158, 153, 155, 153, 155, 153, 149, 158, 28.9963 + 153, 149, 151, 147, 149, 145, 141, 139, 141, 162, 185, 198, 203, 203, 203, 197, 28.9964 + 203, 198, 203, 203, 203, 206, 207, 210, 212, 218, 216, 215, 215, 210, 212, 209, 28.9965 + 79, 68, 57, 63, 63, 76, 60, 66, 57, 46, 38, 29, 23, 49, 84, 112, 28.9966 + 137, 147, 160, 169, 172, 176, 177, 174, 179, 184, 185, 179, 164, 153, 139, 119, 28.9967 + 103, 63, 63, 57, 86, 139, 81, 84, 94, 108, 169, 177, 153, 110, 23, 41, 28.9968 + 38, 108, 165, 119, 81, 137, 35, 38, 26, 127, 71, 86, 43, 169, 143, 141, 28.9969 + 98, 117, 35, 35, 49, 55, 60, 23, 15, 18, 23, 23, 18, 26, 76, 68, 28.9970 + 57, 41, 38, 63, 86, 169, 155, 86, 35, 114, 184, 101, 9, 20, 9, 18, 28.9971 + 147, 125, 103, 149, 213, 212, 213, 213, 35, 20, 18, 18, 79, 26, 32, 71, 28.9972 + 91, 101, 103, 119, 121, 117, 127, 123, 125, 129, 143, 143, 149, 149, 155, 162, 28.9973 + 156, 160, 162, 181, 169, 172, 174, 172, 174, 165, 158, 167, 158, 153, 141, 125, 28.9974 + 127, 125, 127, 125, 119, 112, 108, 112, 121, 121, 153, 174, 206, 224, 225, 210, 28.9975 + 167, 167, 156, 156, 141, 143, 133, 125, 125, 119, 119, 114, 91, 49, 29, 18, 28.9976 + 41, 38, 41, 49, 81, 26, 15, 23, 98, 167, 158, 158, 145, 68, 23, 29, 28.9977 + 41, 41, 26, 29, 103, 139, 141, 141, 143, 164, 172, 172, 169, 164, 165, 162, 28.9978 + 167, 158, 160, 160, 164, 158, 156, 156, 155, 153, 155, 155, 151, 153, 155, 151, 28.9979 + 153, 149, 149, 143, 151, 139, 137, 137, 153, 181, 198, 203, 207, 204, 203, 200, 28.9980 + 200, 203, 201, 203, 204, 207, 212, 212, 216, 218, 216, 215, 215, 209, 209, 207, 28.9981 + 74, 63, 66, 71, 74, 71, 68, 66, 49, 57, 41, 29, 26, 41, 71, 114, 28.9982 + 135, 145, 160, 171, 176, 177, 176, 176, 177, 177, 176, 174, 167, 156, 139, 123, 28.9983 + 89, 57, 57, 52, 71, 155, 103, 89, 147, 171, 127, 112, 143, 79, 23, 35, 28.9984 + 91, 133, 137, 76, 131, 46, 46, 49, 46, 123, 76, 112, 76, 162, 105, 156, 28.9985 + 55, 165, 49, 57, 57, 38, 46, 26, 15, 20, 12, 9, 41, 66, 108, 76, 28.9986 + 66, 26, 74, 60, 135, 172, 185, 141, 20, 71, 145, 84, 9, 6, 6, 89, 28.9987 + 169, 110, 110, 172, 207, 210, 216, 68, 15, 12, 18, 23, 86, 43, 35, 68, 28.9988 + 94, 94, 108, 117, 125, 121, 117, 121, 125, 133, 137, 141, 153, 155, 149, 153, 28.9989 + 164, 160, 158, 169, 164, 171, 167, 171, 167, 165, 162, 160, 153, 149, 137, 127, 28.9990 + 125, 123, 127, 121, 114, 112, 108, 114, 114, 131, 151, 172, 195, 216, 230, 221, 28.9991 + 160, 164, 155, 153, 145, 141, 135, 127, 121, 127, 121, 108, 81, 57, 23, 29, 28.9992 + 38, 38, 52, 74, 81, 18, 18, 15, 79, 167, 167, 151, 143, 79, 6, 18, 28.9993 + 46, 38, 15, 41, 114, 147, 137, 145, 149, 162, 167, 169, 164, 164, 162, 160, 28.9994 + 158, 160, 160, 158, 158, 165, 156, 160, 153, 158, 158, 153, 155, 151, 149, 147, 28.9995 + 145, 147, 145, 145, 145, 135, 135, 141, 167, 192, 200, 204, 206, 204, 201, 200, 28.9996 + 203, 201, 203, 206, 209, 212, 215, 215, 216, 216, 218, 215, 215, 209, 209, 209, 28.9997 + 68, 68, 66, 66, 60, 57, 63, 60, 60, 43, 38, 38, 20, 32, 71, 121, 28.9998 + 135, 153, 162, 172, 171, 181, 176, 176, 171, 179, 184, 172, 164, 158, 135, 121, 28.9999 + 86, 68, 46, 55, 55, 101, 162, 133, 139, 103, 105, 135, 119, 76, 41, 71, 28.10000 + 156, 114, 60, 117, 79, 112, 57, 41, 114, 71, 133, 71, 91, 131, 103, 165, 28.10001 + 84, 156, 68, 43, 32, 41, 43, 35, 15, 20, 18, 46, 35, 46, 117, 108, 28.10002 + 41, 41, 60, 123, 119, 189, 192, 160, 23, 26, 121, 12, 12, 9, 15, 139, 28.10003 + 121, 121, 117, 206, 213, 215, 153, 20, 18, 6, 20, 20, 89, 32, 49, 57, 28.10004 + 84, 94, 103, 123, 112, 117, 127, 123, 129, 129, 129, 149, 139, 147, 149, 160, 28.10005 + 160, 158, 158, 162, 162, 169, 164, 169, 165, 169, 167, 158, 153, 141, 131, 133, 28.10006 + 123, 121, 125, 121, 112, 108, 108, 112, 112, 129, 145, 162, 187, 216, 233, 225, 28.10007 + 172, 162, 153, 149, 145, 141, 133, 135, 119, 121, 117, 98, 76, 26, 18, 23, 28.10008 + 32, 43, 57, 68, 57, 29, 12, 12, 60, 158, 172, 133, 147, 86, 9, 29, 28.10009 + 26, 29, 20, 76, 129, 149, 143, 139, 158, 169, 165, 164, 165, 165, 153, 160, 28.10010 + 164, 164, 164, 160, 160, 162, 160, 153, 156, 153, 158, 156, 153, 155, 151, 145, 28.10011 + 145, 145, 147, 149, 139, 141, 139, 153, 184, 197, 203, 204, 204, 203, 201, 203, 28.10012 + 200, 203, 203, 209, 213, 215, 216, 216, 216, 216, 216, 216, 215, 212, 212, 212, 28.10013 + 68, 79, 79, 63, 68, 55, 63, 66, 55, 55, 35, 29, 32, 20, 66, 112, 28.10014 + 131, 151, 158, 169, 176, 177, 174, 181, 181, 181, 181, 177, 167, 158, 141, 121, 28.10015 + 96, 66, 57, 49, 60, 81, 105, 114, 117, 123, 108, 125, 129, 96, 29, 32, 28.10016 + 123, 105, 71, 79, 79, 68, 41, 86, 86, 96, 131, 79, 94, 101, 121, 176, 28.10017 + 89, 71, 81, 29, 26, 18, 32, 32, 26, 29, 12, 38, 43, 68, 76, 91, 28.10018 + 32, 108, 135, 110, 74, 71, 176, 156, 29, 15, 43, 26, 9, 6, 60, 164, 28.10019 + 108, 110, 176, 213, 213, 197, 23, 26, 20, 12, 12, 23, 96, 41, 60, 66, 28.10020 + 86, 94, 108, 110, 117, 119, 117, 125, 125, 131, 149, 139, 137, 149, 149, 149, 28.10021 + 151, 156, 153, 151, 156, 162, 167, 162, 156, 160, 158, 156, 145, 141, 129, 125, 28.10022 + 123, 117, 123, 127, 112, 110, 119, 103, 121, 131, 145, 162, 179, 215, 233, 225, 28.10023 + 192, 156, 155, 149, 147, 155, 133, 137, 129, 123, 114, 91, 57, 26, 26, 23, 28.10024 + 35, 49, 49, 66, 71, 32, 9, 9, 63, 158, 177, 131, 151, 112, 18, 26, 28.10025 + 18, 18, 46, 96, 147, 141, 143, 141, 165, 171, 167, 165, 162, 164, 155, 164, 28.10026 + 153, 160, 158, 160, 165, 156, 156, 158, 158, 156, 160, 156, 151, 149, 147, 151, 28.10027 + 153, 145, 153, 143, 135, 139, 149, 176, 192, 201, 206, 204, 201, 201, 200, 203, 28.10028 + 201, 204, 207, 210, 216, 216, 218, 215, 215, 213, 216, 216, 215, 215, 213, 213, 28.10029 + 74, 71, 71, 60, 63, 68, 68, 71, 49, 46, 38, 26, 26, 26, 74, 108, 28.10030 + 131, 149, 164, 169, 177, 177, 182, 177, 176, 181, 182, 176, 165, 160, 143, 119, 28.10031 + 89, 74, 57, 57, 71, 79, 81, 101, 129, 103, 135, 147, 123, 84, 41, 60, 28.10032 + 81, 74, 103, 98, 105, 43, 98, 84, 52, 135, 66, 74, 98, 81, 114, 165, 28.10033 + 110, 38, 139, 18, 29, 35, 23, 23, 26, 49, 35, 26, 35, 108, 49, 71, 28.10034 + 71, 137, 110, 94, 49, 60, 98, 49, 26, 32, 43, 6, 15, 74, 110, 117, 28.10035 + 129, 125, 207, 210, 167, 55, 9, 18, 23, 18, 12, 26, 110, 41, 49, 66, 28.10036 + 68, 96, 105, 108, 117, 119, 119, 125, 133, 117, 129, 131, 141, 145, 149, 147, 28.10037 + 149, 143, 151, 156, 156, 156, 164, 156, 165, 155, 156, 149, 145, 139, 133, 114, 28.10038 + 101, 114, 127, 133, 123, 114, 112, 114, 117, 127, 141, 160, 177, 209, 233, 228, 28.10039 + 200, 153, 151, 151, 151, 141, 129, 129, 119, 119, 125, 101, 32, 20, 26, 23, 28.10040 + 20, 43, 52, 76, 52, 57, 15, 9, 55, 141, 171, 141, 158, 137, 23, 32, 28.10041 + 20, 15, 55, 105, 145, 151, 141, 145, 162, 165, 162, 164, 162, 158, 162, 160, 28.10042 + 158, 156, 153, 160, 164, 160, 156, 156, 155, 155, 158, 153, 155, 151, 153, 151, 28.10043 + 153, 149, 143, 135, 137, 135, 160, 181, 198, 206, 204, 203, 204, 201, 203, 203, 28.10044 + 204, 209, 212, 216, 216, 216, 216, 213, 215, 215, 215, 216, 215, 216, 215, 215, 28.10045 + 74, 63, 66, 63, 71, 71, 66, 55, 49, 38, 32, 26, 15, 23, 66, 112, 28.10046 + 125, 149, 162, 169, 177, 176, 172, 177, 181, 179, 184, 176, 167, 158, 141, 117, 28.10047 + 98, 63, 49, 55, 71, 94, 121, 125, 101, 105, 103, 108, 105, 35, 55, 84, 28.10048 + 79, 66, 137, 98, 55, 94, 60, 52, 68, 160, 35, 49, 127, 81, 105, 155, 28.10049 + 141, 46, 151, 26, 18, 35, 23, 76, 52, 20, 12, 18, 43, 89, 41, 114, 28.10050 + 68, 179, 167, 112, 94, 110, 91, 32, 15, 18, 20, 6, 74, 137, 121, 101, 28.10051 + 108, 151, 185, 147, 165, 86, 26, 15, 12, 20, 9, 29, 114, 49, 55, 63, 28.10052 + 84, 91, 103, 105, 117, 110, 112, 121, 123, 131, 127, 137, 141, 137, 153, 147, 28.10053 + 149, 151, 147, 155, 156, 162, 153, 158, 162, 160, 153, 149, 143, 135, 119, 101, 28.10054 + 101, 119, 125, 129, 131, 133, 123, 112, 117, 127, 133, 158, 177, 209, 233, 227, 28.10055 + 200, 147, 143, 147, 149, 139, 131, 129, 127, 121, 110, 89, 29, 29, 23, 49, 28.10056 + 26, 57, 60, 66, 60, 32, 9, 12, 23, 135, 179, 165, 165, 143, 18, 23, 28.10057 + 15, 26, 76, 121, 151, 155, 143, 145, 164, 165, 164, 162, 162, 160, 156, 155, 28.10058 + 160, 162, 155, 155, 160, 153, 158, 162, 160, 160, 158, 155, 153, 151, 162, 149, 28.10059 + 149, 145, 147, 139, 143, 141, 167, 195, 201, 207, 204, 203, 203, 204, 203, 204, 28.10060 + 206, 210, 213, 215, 216, 215, 215, 212, 213, 216, 212, 213, 215, 215, 215, 215, 28.10061 + 79, 76, 68, 68, 68, 71, 63, 57, 49, 43, 32, 20, 20, 18, 63, 114, 28.10062 + 129, 149, 162, 169, 174, 174, 179, 179, 179, 181, 179, 179, 172, 158, 145, 117, 28.10063 + 86, 63, 41, 68, 103, 139, 129, 98, 98, 98, 108, 110, 101, 55, 49, 91, 28.10064 + 60, 127, 141, 52, 96, 68, 81, 29, 133, 98, 32, 43, 123, 101, 68, 165, 28.10065 + 156, 32, 89, 63, 35, 49, 74, 41, 20, 43, 15, 12, 38, 76, 176, 167, 28.10066 + 46, 52, 81, 112, 49, 26, 23, 12, 15, 32, 12, 29, 185, 171, 160, 156, 28.10067 + 133, 121, 172, 198, 153, 26, 12, 20, 35, 12, 18, 23, 117, 86, 52, 55, 28.10068 + 74, 98, 105, 114, 105, 119, 114, 125, 121, 125, 131, 139, 137, 139, 143, 147, 28.10069 + 147, 145, 162, 156, 155, 156, 158, 162, 156, 155, 158, 147, 141, 135, 117, 86, 28.10070 + 103, 125, 135, 135, 131, 135, 137, 123, 108, 114, 133, 153, 182, 203, 225, 225, 28.10071 + 197, 139, 149, 141, 139, 129, 129, 121, 123, 119, 112, 49, 15, 23, 18, 26, 28.10072 + 32, 49, 52, 60, 63, 26, 20, 9, 12, 123, 181, 165, 149, 143, 52, 32, 28.10073 + 15, 15, 89, 129, 149, 149, 145, 151, 167, 167, 164, 165, 165, 162, 158, 160, 28.10074 + 162, 155, 155, 156, 158, 160, 155, 155, 155, 155, 151, 158, 153, 155, 155, 153, 28.10075 + 149, 143, 139, 135, 137, 151, 174, 198, 203, 206, 206, 204, 203, 204, 200, 204, 28.10076 + 209, 213, 215, 215, 216, 213, 213, 213, 216, 213, 216, 216, 216, 216, 216, 213, 28.10077 + 84, 76, 71, 63, 68, 60, 66, 57, 49, 49, 49, 20, 18, 35, 74, 110, 28.10078 + 127, 149, 164, 171, 174, 172, 179, 174, 181, 181, 185, 177, 179, 156, 139, 121, 28.10079 + 105, 79, 108, 129, 129, 96, 81, 91, 91, 108, 114, 112, 81, 71, 55, 86, 28.10080 + 94, 108, 117, 81, 66, 38, 46, 57, 160, 74, 38, 32, 117, 105, 55, 143, 28.10081 + 176, 43, 60, 153, 35, 46, 43, 35, 35, 74, 20, 12, 26, 68, 43, 32, 28.10082 + 20, 20, 57, 139, 119, 26, 15, 20, 32, 9, 3, 103, 165, 179, 184, 179, 28.10083 + 181, 187, 197, 145, 68, 23, 18, 23, 20, 38, 12, 35, 108, 79, 32, 68, 28.10084 + 79, 98, 105, 114, 117, 114, 117, 119, 123, 119, 139, 125, 135, 135, 147, 145, 28.10085 + 141, 145, 147, 151, 153, 151, 155, 156, 156, 155, 153, 147, 143, 135, 119, 91, 28.10086 + 112, 125, 127, 129, 121, 135, 123, 123, 105, 101, 123, 145, 176, 200, 209, 215, 28.10087 + 174, 145, 143, 143, 139, 141, 131, 121, 121, 114, 79, 32, 23, 29, 23, 46, 28.10088 + 32, 49, 66, 46, 68, 18, 26, 15, 12, 105, 172, 174, 149, 127, 71, 29, 28.10089 + 23, 15, 89, 149, 149, 149, 149, 164, 165, 165, 164, 162, 160, 162, 164, 160, 28.10090 + 162, 158, 158, 155, 164, 158, 160, 156, 155, 158, 155, 158, 155, 156, 151, 149, 28.10091 + 147, 145, 145, 135, 137, 169, 185, 200, 207, 203, 203, 203, 201, 201, 204, 209, 28.10092 + 213, 213, 213, 215, 216, 213, 215, 215, 213, 213, 215, 218, 216, 218, 216, 215, 28.10093 + 79, 86, 68, 74, 71, 66, 66, 71, 49, 49, 38, 32, 29, 38, 84, 110, 28.10094 + 139, 149, 162, 169, 172, 176, 174, 176, 179, 181, 184, 177, 169, 155, 135, 123, 28.10095 + 98, 98, 68, 63, 79, 81, 84, 94, 89, 101, 112, 151, 89, 60, 46, 81, 28.10096 + 94, 119, 125, 74, 60, 9, 46, 162, 117, 76, 79, 23, 94, 117, 81, 125, 28.10097 + 197, 91, 46, 181, 43, 38, 26, 71, 43, 96, 20, 18, 46, 46, 71, 35, 28.10098 + 26, 81, 151, 60, 15, 18, 18, 29, 18, 6, 6, 179, 182, 182, 187, 192, 28.10099 + 192, 187, 174, 46, 15, 6, 9, 23, 32, 15, 18, 29, 114, 86, 66, 74, 28.10100 + 86, 94, 105, 108, 112, 112, 117, 112, 121, 129, 131, 129, 137, 137, 143, 141, 28.10101 + 151, 147, 155, 151, 153, 156, 156, 156, 156, 155, 158, 155, 141, 135, 129, 105, 28.10102 + 127, 125, 133, 68, 29, 52, 89, 101, 119, 110, 117, 121, 158, 190, 204, 197, 28.10103 + 156, 149, 141, 143, 135, 131, 125, 119, 123, 110, 41, 20, 18, 38, 29, 49, 28.10104 + 35, 55, 74, 35, 71, 26, 35, 12, 15, 86, 160, 174, 147, 149, 96, 23, 28.10105 + 23, 26, 110, 151, 153, 147, 149, 164, 169, 167, 162, 162, 165, 164, 155, 153, 28.10106 + 158, 158, 156, 156, 158, 158, 156, 147, 155, 156, 153, 151, 153, 153, 155, 153, 28.10107 + 147, 143, 141, 135, 143, 172, 192, 201, 206, 206, 204, 204, 203, 204, 209, 213, 28.10108 + 213, 213, 213, 215, 213, 213, 215, 215, 215, 218, 218, 218, 218, 216, 215, 215, 28.10109 + 71, 71, 76, 74, 60, 66, 68, 57, 52, 52, 52, 38, 38, 49, 94, 123, 28.10110 + 137, 153, 162, 167, 174, 174, 176, 177, 177, 184, 185, 174, 171, 160, 143, 121, 28.10111 + 105, 81, 57, 63, 76, 84, 81, 94, 96, 103, 108, 105, 41, 81, 38, 94, 28.10112 + 79, 149, 119, 71, 52, 9, 49, 176, 79, 35, 117, 26, 71, 117, 101, 123, 28.10113 + 176, 127, 41, 167, 46, 26, 18, 60, 89, 63, 29, 15, 20, 15, 29, 68, 28.10114 + 68, 101, 177, 46, 29, 26, 26, 38, 12, 6, 35, 177, 179, 189, 190, 200, 28.10115 + 200, 185, 38, 9, 20, 15, 18, 23, 32, 29, 12, 26, 114, 103, 57, 79, 28.10116 + 86, 94, 105, 112, 108, 114, 117, 119, 119, 125, 125, 133, 141, 143, 143, 149, 28.10117 + 145, 141, 147, 143, 153, 156, 155, 153, 155, 155, 158, 147, 149, 145, 131, 112, 28.10118 + 110, 121, 123, 74, 38, 66, 79, 68, 74, 103, 105, 114, 145, 184, 203, 174, 28.10119 + 169, 145, 147, 145, 129, 135, 129, 121, 119, 86, 23, 32, 23, 26, 32, 35, 28.10120 + 35, 55, 63, 57, 74, 32, 29, 35, 9, 46, 153, 181, 127, 160, 94, 12, 28.10121 + 49, 52, 127, 153, 149, 145, 155, 164, 165, 164, 160, 162, 164, 160, 155, 158, 28.10122 + 158, 155, 158, 160, 156, 156, 156, 153, 155, 153, 153, 147, 153, 153, 155, 151, 28.10123 + 145, 145, 141, 143, 153, 174, 197, 203, 207, 204, 206, 203, 206, 206, 212, 213, 28.10124 + 213, 215, 213, 215, 213, 215, 215, 218, 218, 218, 218, 219, 218, 218, 216, 213, 28.10125 + 68, 76, 68, 63, 66, 66, 60, 57, 46, 66, 55, 43, 46, 68, 103, 125, 28.10126 + 147, 155, 169, 171, 171, 177, 172, 176, 177, 177, 181, 179, 172, 164, 137, 125, 28.10127 + 96, 74, 57, 71, 68, 81, 86, 94, 103, 103, 110, 103, 63, 91, 52, 91, 28.10128 + 79, 71, 86, 79, 15, 43, 156, 121, 49, 68, 121, 29, 74, 129, 112, 129, 28.10129 + 131, 167, 49, 158, 94, 12, 12, 26, 26, 86, 127, 32, 26, 23, 9, 20, 28.10130 + 89, 141, 79, 23, 35, 52, 38, 18, 29, 43, 112, 141, 158, 179, 184, 201, 28.10131 + 200, 139, 15, 12, 20, 23, 41, 20, 26, 15, 23, 29, 114, 96, 63, 91, 28.10132 + 89, 108, 98, 105, 112, 114, 119, 119, 125, 127, 123, 135, 137, 131, 135, 143, 28.10133 + 147, 145, 155, 151, 155, 151, 151, 156, 160, 155, 156, 155, 149, 147, 139, 121, 28.10134 + 101, 112, 117, 119, 112, 121, 119, 110, 98, 81, 112, 110, 125, 179, 184, 176, 28.10135 + 165, 151, 145, 135, 137, 141, 119, 129, 108, 49, 29, 35, 46, 26, 23, 32, 28.10136 + 46, 57, 79, 41, 68, 23, 23, 52, 18, 32, 155, 177, 151, 162, 114, 32, 28.10137 + 20, 81, 139, 153, 155, 151, 151, 167, 165, 162, 164, 162, 162, 156, 156, 158, 28.10138 + 158, 155, 156, 156, 156, 155, 156, 156, 156, 153, 155, 149, 147, 147, 143, 149, 28.10139 + 149, 141, 137, 139, 160, 182, 201, 203, 204, 206, 204, 200, 207, 207, 215, 215, 28.10140 + 215, 215, 216, 216, 213, 215, 218, 218, 218, 218, 219, 216, 218, 215, 213, 213, 28.10141 + 60, 68, 57, 71, 66, 55, 57, 63, 52, 43, 49, 49, 63, 74, 103, 129, 28.10142 + 141, 153, 165, 169, 172, 171, 176, 176, 176, 179, 184, 182, 172, 156, 141, 127, 28.10143 + 101, 71, 57, 66, 71, 76, 89, 91, 86, 119, 108, 91, 101, 35, 49, 91, 28.10144 + 84, 76, 63, 18, 23, 119, 123, 74, 96, 91, 79, 52, 66, 145, 66, 108, 28.10145 + 121, 185, 86, 139, 135, 9, 26, 41, 12, 108, 169, 68, 38, 12, 20, 18, 28.10146 + 123, 114, 26, 15, 71, 55, 101, 96, 112, 112, 105, 125, 133, 123, 162, 193, 28.10147 + 108, 20, 15, 15, 55, 79, 71, 26, 23, 15, 52, 23, 114, 101, 71, 79, 28.10148 + 91, 98, 105, 105, 114, 114, 117, 127, 125, 123, 125, 131, 133, 141, 139, 149, 28.10149 + 143, 143, 145, 141, 155, 141, 149, 155, 155, 162, 155, 156, 147, 147, 143, 135, 28.10150 + 129, 119, 108, 114, 117, 123, 125, 112, 105, 110, 129, 156, 184, 197, 185, 171, 28.10151 + 162, 156, 145, 137, 133, 129, 131, 121, 101, 26, 32, 32, 41, 35, 32, 32, 28.10152 + 38, 71, 66, 38, 79, 32, 20, 26, 15, 20, 151, 184, 149, 153, 101, 46, 28.10153 + 20, 112, 145, 153, 153, 147, 162, 165, 167, 164, 160, 164, 160, 158, 158, 158, 28.10154 + 155, 155, 160, 158, 158, 160, 160, 151, 155, 153, 155, 151, 149, 153, 147, 153, 28.10155 + 147, 145, 137, 147, 165, 192, 201, 204, 204, 203, 204, 204, 210, 210, 216, 216, 28.10156 + 213, 213, 216, 215, 213, 218, 218, 219, 216, 216, 219, 216, 215, 215, 216, 215, 28.10157 + 57, 71, 74, 68, 57, 74, 74, 57, 49, 43, 60, 63, 76, 79, 121, 135, 28.10158 + 149, 155, 165, 171, 171, 172, 174, 174, 181, 179, 184, 177, 172, 158, 141, 127, 28.10159 + 103, 68, 60, 63, 74, 84, 86, 86, 94, 117, 105, 103, 52, 20, 32, 98, 28.10160 + 89, 71, 49, 15, 89, 131, 68, 32, 68, 94, 63, 112, 68, 123, 81, 129, 28.10161 + 108, 147, 127, 145, 153, 38, 18, 52, 18, 108, 164, 169, 35, 9, 9, 52, 28.10162 + 101, 38, 63, 35, 91, 108, 101, 129, 169, 184, 98, 98, 105, 137, 219, 204, 28.10163 + 18, 26, 15, 20, 32, 52, 41, 29, 29, 15, 15, 26, 123, 89, 55, 74, 28.10164 + 91, 105, 103, 103, 110, 114, 119, 121, 114, 123, 123, 127, 131, 133, 137, 139, 28.10165 + 139, 141, 147, 141, 151, 149, 151, 151, 151, 156, 162, 149, 151, 155, 156, 141, 28.10166 + 137, 135, 125, 133, 117, 125, 139, 139, 125, 160, 190, 204, 198, 193, 176, 167, 28.10167 + 156, 149, 145, 143, 135, 131, 123, 114, 46, 35, 32, 41, 26, 29, 38, 43, 28.10168 + 52, 76, 71, 74, 52, 43, 29, 20, 18, 9, 139, 181, 145, 151, 81, 46, 28.10169 + 29, 129, 149, 149, 149, 151, 165, 167, 162, 167, 165, 160, 153, 160, 160, 164, 28.10170 + 155, 156, 153, 155, 153, 158, 155, 155, 155, 158, 155, 155, 153, 149, 149, 143, 28.10171 + 143, 143, 139, 143, 169, 195, 203, 204, 204, 204, 204, 207, 212, 212, 215, 216, 28.10172 + 215, 213, 216, 213, 215, 216, 218, 216, 218, 218, 225, 216, 216, 215, 216, 216, 28.10173 + 60, 66, 60, 60, 74, 66, 71, 66, 52, 57, 52, 60, 79, 91, 119, 133, 28.10174 + 155, 156, 164, 167, 172, 174, 171, 177, 172, 181, 181, 177, 171, 162, 147, 129, 28.10175 + 103, 84, 57, 60, 74, 94, 86, 89, 89, 91, 112, 145, 81, 15, 35, 91, 28.10176 + 52, 60, 46, 76, 156, 79, 26, 32, 74, 81, 55, 127, 123, 110, 114, 133, 28.10177 + 81, 86, 158, 143, 153, 91, 29, 41, 18, 74, 137, 108, 60, 23, 38, 91, 28.10178 + 35, 71, 101, 101, 117, 110, 145, 185, 197, 84, 114, 103, 125, 179, 221, 46, 28.10179 + 29, 41, 46, 32, 46, 57, 43, 32, 38, 29, 32, 41, 123, 91, 66, 79, 28.10180 + 98, 103, 112, 108, 110, 114, 110, 114, 127, 119, 123, 137, 131, 133, 137, 135, 28.10181 + 135, 137, 145, 141, 149, 151, 153, 158, 155, 160, 155, 156, 153, 155, 149, 149, 28.10182 + 147, 139, 137, 135, 131, 139, 165, 187, 153, 162, 193, 203, 200, 198, 184, 165, 28.10183 + 158, 149, 141, 137, 127, 127, 127, 114, 43, 41, 38, 32, 23, 38, 26, 55, 28.10184 + 38, 91, 55, 79, 71, 38, 49, 18, 26, 6, 117, 174, 155, 149, 79, 60, 28.10185 + 63, 133, 151, 147, 147, 151, 169, 162, 158, 156, 164, 164, 156, 158, 162, 153, 28.10186 + 156, 158, 155, 156, 155, 162, 155, 153, 151, 153, 156, 153, 153, 155, 153, 151, 28.10187 + 145, 145, 139, 151, 179, 193, 203, 204, 203, 203, 204, 209, 212, 215, 218, 215, 28.10188 + 216, 215, 213, 215, 216, 216, 218, 218, 218, 216, 218, 216, 218, 218, 218, 216, 28.10189 + 76, 66, 63, 55, 68, 74, 66, 55, 49, 49, 43, 55, 81, 94, 119, 135, 28.10190 + 145, 158, 164, 169, 172, 174, 171, 177, 179, 179, 184, 177, 174, 160, 147, 133, 28.10191 + 98, 71, 57, 60, 74, 94, 89, 86, 96, 110, 139, 149, 79, 32, 43, 103, 28.10192 + 71, 81, 96, 164, 94, 52, 41, 43, 71, 86, 66, 79, 114, 112, 121, 139, 28.10193 + 112, 76, 176, 96, 164, 139, 71, 60, 71, 66, 108, 110, 46, 55, 79, 29, 28.10194 + 23, 46, 137, 139, 139, 164, 182, 195, 155, 96, 81, 119, 165, 216, 129, 43, 28.10195 + 41, 60, 57, 43, 43, 38, 52, 38, 20, 29, 26, 35, 117, 89, 74, 81, 28.10196 + 96, 105, 112, 108, 121, 117, 117, 121, 123, 121, 133, 129, 133, 137, 129, 137, 28.10197 + 135, 139, 147, 153, 153, 149, 149, 151, 153, 153, 155, 155, 151, 145, 151, 149, 28.10198 + 145, 149, 143, 141, 145, 158, 190, 203, 171, 167, 192, 204, 200, 198, 182, 164, 28.10199 + 151, 141, 139, 139, 129, 133, 129, 52, 41, 41, 41, 43, 43, 41, 41, 66, 28.10200 + 35, 91, 66, 66, 52, 49, 63, 41, 23, 12, 84, 169, 160, 151, 76, 86, 28.10201 + 103, 143, 153, 149, 153, 151, 165, 164, 167, 162, 162, 162, 158, 156, 158, 160, 28.10202 + 156, 156, 156, 158, 156, 151, 155, 158, 155, 153, 156, 153, 155, 149, 151, 149, 28.10203 + 143, 141, 135, 162, 181, 198, 204, 204, 203, 206, 207, 212, 215, 216, 218, 215, 28.10204 + 212, 212, 213, 216, 215, 215, 215, 216, 218, 219, 218, 218, 216, 219, 218, 216, 28.10205 + 63, 66, 52, 57, 60, 55, 66, 60, 52, 49, 41, 49, 76, 94, 125, 135, 28.10206 + 153, 160, 164, 172, 169, 172, 174, 176, 177, 184, 184, 179, 171, 158, 145, 125, 28.10207 + 98, 79, 66, 60, 79, 76, 79, 81, 98, 143, 143, 105, 81, 35, 46, 86, 28.10208 + 52, 123, 137, 103, 46, 20, 35, 35, 74, 57, 74, 49, 98, 66, 89, 98, 28.10209 + 127, 76, 147, 91, 167, 129, 81, 57, 94, 81, 98, 91, 52, 32, 55, 23, 28.10210 + 38, 135, 184, 145, 176, 179, 182, 185, 76, 108, 79, 98, 206, 164, 29, 18, 28.10211 + 38, 38, 26, 35, 26, 41, 55, 52, 26, 26, 20, 12, 117, 114, 94, 86, 28.10212 + 98, 103, 108, 110, 123, 114, 114, 108, 121, 123, 123, 129, 141, 135, 137, 129, 28.10213 + 133, 131, 139, 141, 145, 147, 147, 153, 145, 155, 153, 156, 151, 147, 155, 147, 28.10214 + 143, 145, 141, 145, 147, 171, 203, 206, 185, 171, 197, 204, 200, 204, 177, 164, 28.10215 + 151, 143, 149, 135, 129, 133, 114, 41, 43, 38, 29, 35, 29, 32, 41, 60, 28.10216 + 43, 86, 60, 66, 52, 35, 55, 26, 18, 9, 55, 162, 171, 143, 81, 114, 28.10217 + 108, 145, 153, 143, 155, 158, 165, 162, 162, 160, 158, 158, 156, 164, 155, 156, 28.10218 + 155, 155, 155, 151, 149, 149, 151, 158, 155, 151, 153, 158, 149, 149, 151, 147, 28.10219 + 147, 137, 141, 164, 182, 200, 203, 204, 204, 207, 210, 213, 215, 218, 216, 213, 28.10220 + 215, 213, 213, 215, 216, 216, 216, 216, 218, 218, 218, 224, 216, 219, 218, 218, 28.10221 + 68, 71, 55, 63, 55, 55, 66, 57, 49, 43, 35, 49, 84, 101, 127, 135, 28.10222 + 151, 160, 162, 169, 174, 174, 169, 174, 176, 179, 185, 181, 174, 162, 151, 131, 28.10223 + 96, 81, 52, 60, 68, 74, 81, 94, 137, 139, 103, 125, 71, 38, 52, 63, 28.10224 + 123, 149, 35, 35, 71, 35, 49, 41, 79, 49, 76, 49, 91, 63, 94, 129, 28.10225 + 74, 76, 98, 137, 151, 127, 103, 38, 123, 110, 66, 46, 15, 6, 49, 57, 28.10226 + 81, 160, 160, 151, 176, 190, 203, 143, 110, 84, 81, 151, 195, 32, 15, 23, 28.10227 + 35, 32, 26, 32, 26, 32, 68, 41, 29, 35, 15, 29, 121, 110, 112, 81, 28.10228 + 94, 101, 110, 108, 117, 114, 125, 123, 112, 123, 131, 125, 133, 127, 137, 131, 28.10229 + 133, 131, 135, 137, 143, 145, 143, 149, 149, 149, 149, 158, 151, 147, 137, 149, 28.10230 + 155, 139, 151, 155, 160, 172, 210, 210, 192, 176, 201, 210, 203, 200, 182, 162, 28.10231 + 147, 141, 143, 133, 129, 129, 57, 38, 35, 43, 35, 43, 32, 43, 52, 63, 28.10232 + 49, 68, 60, 55, 57, 57, 41, 35, 9, 9, 41, 155, 172, 135, 98, 105, 28.10233 + 119, 147, 151, 149, 153, 158, 165, 162, 162, 164, 162, 158, 158, 160, 156, 156, 28.10234 + 151, 162, 162, 158, 155, 147, 151, 151, 153, 153, 153, 151, 151, 149, 151, 151, 28.10235 + 143, 139, 135, 165, 189, 201, 203, 204, 203, 209, 212, 218, 216, 216, 215, 213, 28.10236 + 215, 215, 216, 215, 216, 215, 215, 216, 218, 219, 219, 218, 219, 218, 216, 219, 28.10237 + 60, 55, 57, 57, 52, 46, 49, 52, 46, 55, 52, 52, 68, 94, 121, 141, 28.10238 + 149, 156, 167, 165, 174, 176, 177, 177, 174, 179, 181, 181, 172, 164, 149, 125, 28.10239 + 101, 71, 55, 63, 76, 63, 68, 119, 147, 105, 117, 117, 43, 52, 57, 114, 28.10240 + 131, 121, 23, 35, 49, 52, 60, 49, 68, 52, 96, 55, 63, 63, 52, 135, 28.10241 + 43, 71, 127, 145, 119, 131, 147, 38, 169, 71, 41, 18, 52, 29, 52, 103, 28.10242 + 96, 117, 151, 169, 184, 204, 190, 89, 79, 81, 117, 206, 52, 20, 26, 32, 28.10243 + 38, 43, 32, 35, 20, 49, 66, 49, 20, 38, 23, 18, 98, 103, 127, 63, 28.10244 + 96, 98, 110, 108, 114, 117, 119, 129, 114, 121, 131, 125, 129, 133, 131, 127, 28.10245 + 131, 129, 135, 133, 135, 145, 141, 145, 145, 147, 143, 155, 141, 151, 139, 141, 28.10246 + 147, 156, 153, 153, 164, 177, 215, 210, 203, 169, 187, 207, 201, 198, 179, 155, 28.10247 + 139, 143, 135, 131, 133, 121, 26, 46, 38, 26, 29, 46, 35, 35, 60, 41, 28.10248 + 79, 86, 60, 57, 41, 63, 29, 29, 18, 18, 60, 145, 182, 119, 101, 121, 28.10249 + 131, 147, 145, 151, 153, 167, 162, 162, 158, 162, 164, 160, 156, 155, 153, 158, 28.10250 + 155, 156, 158, 158, 155, 155, 151, 153, 156, 149, 158, 151, 145, 151, 141, 141, 28.10251 + 139, 143, 133, 172, 190, 204, 206, 203, 206, 212, 213, 218, 218, 215, 215, 215, 28.10252 + 215, 218, 216, 215, 216, 213, 215, 218, 219, 221, 219, 219, 216, 219, 216, 219, 28.10253 + 68, 60, 55, 46, 46, 52, 52, 57, 46, 46, 49, 68, 71, 86, 114, 129, 28.10254 + 151, 160, 165, 167, 174, 169, 176, 177, 182, 179, 185, 182, 176, 160, 145, 127, 28.10255 + 110, 71, 49, 66, 74, 76, 105, 160, 96, 91, 133, 119, 38, 55, 101, 96, 28.10256 + 133, 89, 23, 46, 38, 89, 55, 74, 66, 52, 60, 71, 68, 74, 57, 101, 28.10257 + 103, 46, 41, 125, 147, 114, 131, 133, 164, 18, 29, 20, 20, 121, 108, 91, 28.10258 + 91, 135, 155, 165, 200, 203, 74, 94, 76, 96, 200, 55, 26, 23, 29, 76, 28.10259 + 35, 35, 32, 38, 41, 41, 57, 79, 41, 26, 12, 15, 110, 103, 114, 68, 28.10260 + 86, 91, 96, 123, 108, 121, 121, 119, 114, 123, 129, 125, 127, 135, 129, 129, 28.10261 + 131, 127, 131, 129, 133, 131, 137, 141, 143, 143, 135, 147, 139, 143, 147, 141, 28.10262 + 147, 149, 151, 153, 156, 177, 212, 212, 195, 177, 204, 215, 209, 197, 182, 153, 28.10263 + 133, 139, 137, 135, 125, 66, 23, 29, 32, 52, 38, 35, 29, 63, 52, 46, 28.10264 + 63, 66, 60, 66, 35, 55, 43, 20, 23, 12, 41, 131, 182, 119, 121, 114, 28.10265 + 129, 141, 143, 153, 165, 164, 162, 165, 171, 164, 156, 162, 158, 156, 155, 158, 28.10266 + 158, 156, 158, 160, 155, 151, 153, 151, 153, 155, 153, 153, 155, 147, 145, 141, 28.10267 + 141, 139, 139, 171, 195, 204, 204, 203, 210, 212, 216, 216, 216, 215, 216, 215, 28.10268 + 218, 218, 216, 213, 215, 215, 216, 218, 219, 219, 221, 219, 218, 218, 219, 219, 28.10269 + 66, 46, 38, 43, 43, 46, 52, 63, 49, 46, 55, 46, 68, 86, 121, 133, 28.10270 + 149, 156, 165, 171, 167, 172, 176, 176, 181, 182, 187, 182, 177, 165, 149, 127, 28.10271 + 110, 66, 52, 55, 66, 84, 147, 108, 86, 86, 133, 103, 46, 84, 32, 81, 28.10272 + 110, 63, 43, 38, 71, 57, 57, 84, 46, 81, 76, 94, 74, 49, 68, 86, 28.10273 + 86, 96, 26, 46, 141, 141, 135, 172, 91, 12, 23, 32, 110, 133, 171, 156, 28.10274 + 141, 143, 193, 193, 206, 103, 110, 79, 105, 151, 172, 26, 29, 18, 52, 98, 28.10275 + 41, 35, 23, 52, 29, 35, 57, 79, 63, 32, 20, 15, 98, 98, 114, 86, 28.10276 + 68, 89, 96, 108, 117, 121, 117, 127, 119, 123, 127, 129, 127, 125, 131, 131, 28.10277 + 127, 129, 133, 135, 137, 135, 135, 139, 137, 131, 133, 135, 143, 141, 135, 135, 28.10278 + 145, 153, 158, 164, 165, 171, 182, 193, 209, 212, 195, 177, 174, 189, 185, 137, 28.10279 + 127, 127, 131, 141, 117, 52, 26, 18, 29, 43, 41, 32, 38, 43, 49, 60, 28.10280 + 68, 74, 55, 60, 57, 57, 60, 23, 15, 12, 26, 129, 184, 125, 131, 133, 28.10281 + 145, 149, 143, 153, 160, 164, 165, 162, 162, 158, 158, 160, 160, 162, 151, 156, 28.10282 + 156, 164, 158, 155, 153, 156, 145, 153, 153, 149, 151, 153, 151, 149, 145, 141, 28.10283 + 139, 133, 141, 177, 193, 201, 204, 210, 212, 215, 216, 218, 218, 216, 215, 215, 28.10284 + 216, 218, 216, 216, 215, 215, 218, 218, 222, 221, 219, 219, 221, 218, 218, 218, 28.10285 + 57, 41, 41, 43, 52, 43, 52, 55, 55, 43, 46, 49, 74, 91, 123, 137, 28.10286 + 149, 162, 164, 174, 176, 172, 167, 179, 181, 184, 184, 182, 179, 164, 153, 127, 28.10287 + 96, 68, 60, 57, 68, 133, 117, 86, 79, 86, 129, 103, 60, 43, 20, 123, 28.10288 + 135, 63, 49, 35, 55, 57, 41, 79, 57, 57, 125, 79, 96, 86, 79, 76, 28.10289 + 55, 119, 84, 49, 60, 91, 119, 141, 143, 32, 12, 79, 86, 105, 167, 206, 28.10290 + 204, 198, 209, 209, 135, 91, 84, 86, 133, 209, 23, 23, 18, 23, 49, 117, 28.10291 + 38, 20, 20, 43, 35, 38, 46, 63, 52, 26, 20, 18, 81, 71, 108, 81, 28.10292 + 68, 84, 101, 112, 114, 110, 119, 125, 117, 125, 121, 129, 129, 129, 135, 131, 28.10293 + 135, 131, 127, 135, 129, 125, 129, 121, 125, 131, 131, 135, 137, 141, 143, 145, 28.10294 + 143, 137, 139, 129, 135, 127, 133, 137, 147, 160, 149, 137, 133, 149, 158, 121, 28.10295 + 119, 131, 137, 137, 79, 35, 23, 35, 41, 38, 35, 41, 43, 38, 57, 63, 28.10296 + 46, 66, 60, 57, 71, 49, 60, 35, 15, 12, 26, 133, 172, 119, 139, 127, 28.10297 + 143, 155, 147, 151, 155, 165, 160, 165, 162, 160, 156, 164, 160, 158, 156, 153, 28.10298 + 155, 160, 153, 155, 158, 158, 155, 153, 158, 153, 153, 149, 147, 149, 147, 143, 28.10299 + 139, 131, 147, 171, 197, 203, 206, 210, 213, 216, 218, 216, 218, 215, 215, 216, 28.10300 + 218, 218, 216, 215, 216, 218, 219, 219, 221, 221, 221, 221, 218, 221, 221, 218, 28.10301 + 49, 52, 41, 41, 46, 43, 52, 49, 49, 35, 38, 55, 68, 86, 121, 139, 28.10302 + 156, 165, 165, 172, 172, 179, 179, 177, 181, 184, 185, 182, 174, 162, 147, 129, 28.10303 + 103, 74, 55, 63, 105, 145, 79, 71, 96, 108, 147, 96, 38, 26, 35, 84, 28.10304 + 119, 71, 41, 57, 57, 57, 49, 43, 46, 60, 141, 84, 114, 105, 86, 66, 28.10305 + 63, 60, 133, 74, 52, 117, 103, 141, 98, 133, 86, 143, 135, 121, 165, 195, 28.10306 + 216, 206, 212, 174, 89, 110, 79, 121, 201, 57, 15, 12, 32, 29, 26, 81, 28.10307 + 26, 26, 26, 38, 26, 46, 46, 46, 68, 18, 20, 20, 96, 68, 89, 71, 28.10308 + 68, 84, 101, 103, 105, 119, 117, 117, 117, 114, 123, 123, 123, 123, 129, 137, 28.10309 + 139, 133, 131, 149, 131, 105, 91, 110, 119, 125, 125, 133, 127, 129, 125, 121, 28.10310 + 114, 110, 125, 121, 105, 108, 105, 125, 141, 137, 119, 84, 101, 112, 84, 86, 28.10311 + 112, 135, 145, 129, 32, 35, 26, 26, 43, 32, 29, 29, 46, 32, 79, 38, 28.10312 + 55, 49, 55, 76, 43, 29, 60, 55, 18, 20, 20, 117, 169, 127, 143, 133, 28.10313 + 153, 147, 153, 145, 164, 167, 164, 162, 160, 156, 164, 156, 160, 160, 155, 155, 28.10314 + 155, 155, 153, 156, 156, 156, 153, 156, 155, 151, 153, 151, 155, 151, 147, 145, 28.10315 + 137, 127, 151, 177, 193, 203, 210, 215, 215, 219, 215, 216, 218, 216, 218, 215, 28.10316 + 215, 218, 215, 216, 218, 218, 221, 219, 221, 221, 221, 219, 219, 221, 219, 222, 28.10317 + 38, 41, 43, 41, 46, 46, 60, 46, 38, 38, 52, 66, 74, 91, 125, 143, 28.10318 + 153, 156, 165, 176, 177, 174, 177, 182, 181, 182, 181, 184, 176, 162, 147, 123, 28.10319 + 98, 68, 46, 105, 156, 101, 71, 68, 105, 145, 169, 86, 49, 41, 101, 38, 28.10320 + 41, 63, 49, 63, 71, 79, 52, 35, 49, 79, 160, 133, 117, 96, 110, 91, 28.10321 + 74, 55, 74, 131, 103, 133, 46, 108, 101, 43, 141, 160, 129, 145, 190, 195, 28.10322 + 215, 216, 193, 66, 110, 91, 96, 177, 190, 15, 35, 35, 49, 18, 23, 71, 28.10323 + 46, 15, 35, 20, 26, 41, 32, 55, 74, 18, 15, 23, 81, 43, 84, 84, 28.10324 + 49, 74, 96, 110, 108, 123, 123, 123, 114, 114, 121, 117, 131, 131, 129, 133, 28.10325 + 133, 137, 135, 141, 121, 74, 68, 52, 49, 68, 81, 89, 89, 89, 98, 84, 28.10326 + 76, 79, 76, 57, 68, 79, 96, 103, 114, 103, 76, 66, 86, 101, 103, 105, 28.10327 + 137, 141, 137, 96, 23, 29, 18, 32, 55, 26, 38, 29, 46, 49, 66, 38, 28.10328 + 71, 49, 57, 81, 57, 18, 52, 60, 29, 18, 23, 101, 165, 137, 151, 129, 28.10329 + 149, 143, 151, 155, 162, 160, 174, 162, 162, 156, 162, 158, 158, 158, 156, 160, 28.10330 + 153, 156, 160, 153, 153, 155, 156, 153, 153, 147, 155, 151, 155, 147, 143, 141, 28.10331 + 135, 135, 153, 182, 197, 204, 213, 215, 218, 219, 218, 219, 216, 216, 216, 215, 28.10332 + 215, 218, 218, 218, 218, 218, 219, 218, 218, 224, 221, 221, 221, 221, 221, 218, 28.10333 + 41, 38, 32, 32, 41, 46, 55, 46, 46, 38, 41, 74, 76, 96, 119, 143, 28.10334 + 151, 162, 167, 176, 177, 181, 185, 182, 181, 182, 185, 185, 177, 160, 143, 125, 28.10335 + 103, 63, 71, 162, 114, 74, 66, 74, 137, 158, 133, 79, 26, 79, 52, 29, 28.10336 + 20, 49, 76, 98, 63, 66, 41, 55, 43, 63, 156, 151, 101, 91, 108, 105, 28.10337 + 110, 86, 81, 89, 156, 129, 41, 79, 29, 60, 121, 135, 131, 129, 197, 222, 28.10338 + 218, 210, 143, 86, 76, 86, 158, 209, 41, 35, 26, 35, 35, 26, 26, 41, 28.10339 + 55, 23, 43, 29, 35, 41, 32, 49, 79, 38, 20, 12, 84, 55, 76, 89, 28.10340 + 66, 79, 86, 103, 110, 117, 119, 119, 114, 114, 121, 123, 127, 131, 127, 135, 28.10341 + 137, 141, 143, 141, 121, 112, 114, 103, 94, 76, 74, 79, 91, 98, 101, 91, 28.10342 + 101, 91, 89, 94, 98, 91, 96, 112, 123, 119, 119, 112, 110, 127, 127, 125, 28.10343 + 143, 145, 133, 35, 29, 29, 26, 38, 46, 26, 26, 29, 26, 63, 55, 35, 28.10344 + 84, 60, 46, 79, 55, 18, 38, 74, 32, 15, 23, 76, 160, 149, 145, 139, 28.10345 + 156, 147, 156, 153, 165, 164, 165, 160, 160, 162, 162, 160, 158, 155, 162, 158, 28.10346 + 153, 158, 158, 158, 162, 156, 156, 153, 153, 156, 155, 153, 155, 147, 145, 139, 28.10347 + 135, 135, 156, 182, 200, 209, 215, 218, 221, 219, 219, 218, 218, 216, 218, 216, 28.10348 + 216, 218, 221, 218, 219, 216, 219, 219, 221, 222, 222, 221, 221, 219, 219, 218, 28.10349 + 41, 35, 35, 43, 41, 38, 49, 52, 38, 35, 52, 89, 94, 105, 123, 141, 28.10350 + 153, 162, 169, 174, 181, 179, 177, 181, 179, 185, 181, 181, 171, 158, 147, 123, 28.10351 + 94, 91, 162, 119, 68, 57, 76, 105, 147, 117, 125, 91, 43, 66, 57, 41, 28.10352 + 26, 43, 43, 32, 57, 60, 49, 103, 46, 52, 182, 155, 68, 103, 103, 98, 28.10353 + 108, 112, 108, 98, 86, 84, 105, 57, 68, 103, 151, 141, 121, 117, 145, 231, 28.10354 + 219, 176, 81, 110, 86, 147, 209, 86, 26, 38, 38, 41, 32, 29, 23, 43, 28.10355 + 43, 26, 29, 32, 41, 38, 49, 46, 71, 55, 23, 20, 76, 55, 74, 81, 28.10356 + 66, 71, 86, 101, 105, 110, 114, 110, 112, 117, 119, 117, 123, 125, 131, 127, 28.10357 + 141, 145, 143, 141, 137, 129, 114, 117, 119, 108, 105, 101, 101, 110, 121, 125, 28.10358 + 112, 127, 133, 129, 141, 141, 151, 162, 172, 179, 158, 125, 119, 141, 147, 139, 28.10359 + 147, 141, 66, 29, 32, 32, 26, 43, 26, 38, 35, 35, 52, 76, 32, 43, 28.10360 + 98, 55, 76, 76, 71, 23, 46, 98, 32, 35, 20, 74, 156, 158, 137, 141, 28.10361 + 158, 145, 151, 156, 165, 164, 165, 162, 155, 165, 164, 160, 162, 156, 160, 156, 28.10362 + 156, 156, 153, 153, 153, 155, 156, 156, 155, 156, 153, 149, 160, 147, 151, 141, 28.10363 + 135, 129, 158, 185, 203, 210, 216, 219, 219, 221, 219, 216, 216, 218, 218, 216, 28.10364 + 218, 219, 219, 218, 219, 221, 219, 221, 219, 221, 218, 219, 219, 218, 219, 218, 28.10365 + 43, 49, 49, 41, 43, 43, 49, 46, 41, 32, 49, 81, 94, 96, 119, 139, 28.10366 + 153, 156, 165, 174, 176, 179, 182, 182, 185, 184, 189, 184, 174, 162, 149, 119, 28.10367 + 110, 151, 129, 66, 57, 63, 79, 131, 141, 108, 108, 94, 60, 55, 81, 71, 28.10368 + 60, 23, 38, 23, 66, 68, 49, 103, 29, 57, 197, 147, 71, 49, 101, 119, 28.10369 + 117, 91, 74, 108, 52, 52, 123, 81, 121, 137, 145, 149, 125, 112, 117, 222, 28.10370 + 198, 108, 105, 108, 131, 195, 174, 46, 46, 26, 43, 46, 29, 18, 18, 32, 28.10371 + 35, 35, 20, 35, 52, 29, 52, 38, 52, 43, 20, 32, 76, 68, 81, 68, 28.10372 + 66, 63, 86, 96, 103, 105, 105, 105, 108, 125, 121, 112, 119, 121, 127, 131, 28.10373 + 141, 145, 141, 139, 145, 135, 123, 123, 112, 117, 110, 110, 101, 103, 108, 125, 28.10374 + 123, 145, 169, 187, 174, 195, 187, 200, 206, 198, 158, 123, 127, 141, 141, 137, 28.10375 + 135, 119, 26, 23, 23, 29, 35, 38, 26, 23, 20, 35, 32, 35, 32, 52, 28.10376 + 103, 52, 71, 74, 32, 23, 57, 91, 35, 20, 20, 74, 164, 165, 143, 151, 28.10377 + 155, 145, 155, 156, 162, 165, 169, 165, 156, 164, 162, 156, 158, 162, 158, 158, 28.10378 + 158, 165, 160, 156, 164, 155, 155, 156, 156, 158, 151, 155, 149, 153, 141, 143, 28.10379 + 137, 135, 160, 190, 206, 213, 219, 221, 218, 218, 218, 218, 218, 218, 218, 216, 28.10380 + 218, 219, 219, 219, 219, 219, 221, 219, 221, 219, 219, 219, 218, 218, 218, 216, 28.10381 + 35, 41, 38, 41, 41, 35, 38, 46, 49, 32, 55, 81, 86, 96, 117, 141, 28.10382 + 155, 160, 165, 171, 177, 179, 185, 174, 187, 182, 182, 177, 172, 164, 153, 123, 28.10383 + 145, 123, 60, 55, 60, 71, 101, 153, 98, 96, 91, 79, 63, 38, 155, 63, 28.10384 + 26, 20, 35, 23, 108, 60, 43, 86, 49, 66, 193, 139, 74, 26, 79, 91, 28.10385 + 119, 131, 96, 101, 52, 49, 89, 94, 153, 139, 153, 143, 127, 103, 160, 219, 28.10386 + 108, 108, 110, 169, 189, 172, 35, 41, 26, 41, 32, 41, 35, 26, 20, 23, 28.10387 + 46, 38, 35, 20, 38, 41, 52, 49, 63, 60, 23, 18, 55, 57, 89, 86, 28.10388 + 41, 66, 76, 94, 98, 108, 108, 108, 108, 110, 105, 108, 114, 127, 119, 129, 28.10389 + 129, 127, 139, 141, 145, 143, 131, 131, 114, 110, 103, 117, 117, 121, 105, 108, 28.10390 + 112, 137, 141, 149, 156, 156, 147, 153, 162, 158, 135, 127, 141, 151, 149, 141, 28.10391 + 139, 41, 23, 20, 23, 26, 60, 23, 23, 23, 20, 23, 66, 26, 18, 41, 28.10392 + 117, 52, 71, 79, 63, 41, 43, 89, 38, 32, 23, 74, 156, 164, 145, 156, 28.10393 + 164, 145, 158, 155, 167, 169, 164, 162, 164, 165, 165, 162, 156, 158, 162, 160, 28.10394 + 156, 164, 155, 160, 155, 151, 155, 153, 155, 151, 147, 153, 149, 149, 147, 137, 28.10395 + 143, 129, 164, 190, 209, 216, 222, 221, 219, 219, 219, 216, 218, 218, 218, 219, 28.10396 + 219, 219, 219, 221, 221, 219, 221, 221, 221, 218, 216, 218, 216, 216, 216, 215, 28.10397 + 43, 41, 32, 29, 38, 26, 43, 46, 32, 32, 57, 68, 91, 89, 117, 137, 28.10398 + 151, 156, 162, 172, 176, 181, 181, 184, 184, 184, 187, 182, 177, 169, 185, 158, 28.10399 + 117, 68, 43, 49, 66, 76, 143, 137, 98, 98, 110, 38, 52, 63, 165, 66, 28.10400 + 38, 41, 32, 32, 114, 43, 98, 41, 96, 105, 187, 119, 143, 41, 71, 94, 28.10401 + 57, 94, 141, 91, 121, 98, 108, 103, 151, 158, 137, 156, 105, 119, 222, 200, 28.10402 + 89, 125, 181, 206, 158, 41, 29, 35, 29, 32, 41, 43, 49, 32, 26, 38, 28.10403 + 43, 49, 41, 29, 32, 68, 46, 43, 57, 66, 26, 26, 71, 84, 68, 81, 28.10404 + 41, 60, 79, 89, 98, 101, 110, 103, 108, 112, 110, 119, 119, 125, 121, 123, 28.10405 + 121, 133, 135, 139, 143, 139, 133, 129, 125, 129, 114, 112, 110, 114, 117, 112, 28.10406 + 108, 127, 125, 127, 137, 139, 133, 131, 129, 137, 125, 137, 147, 153, 143, 137, 28.10407 + 101, 29, 32, 32, 32, 32, 49, 32, 35, 26, 38, 20, 60, 26, 26, 49, 28.10408 + 110, 43, 60, 79, 52, 55, 46, 81, 43, 32, 38, 66, 153, 169, 156, 160, 28.10409 + 164, 149, 156, 158, 162, 164, 165, 164, 164, 164, 165, 164, 160, 160, 165, 158, 28.10410 + 164, 158, 160, 162, 158, 156, 155, 158, 153, 155, 153, 155, 155, 149, 147, 141, 28.10411 + 131, 131, 164, 197, 213, 219, 222, 222, 219, 221, 219, 219, 216, 218, 221, 219, 28.10412 + 221, 219, 221, 222, 222, 222, 219, 218, 218, 216, 215, 215, 216, 213, 213, 213, 28.10413 + 35, 26, 32, 38, 35, 43, 41, 38, 35, 38, 63, 68, 94, 84, 110, 135, 28.10414 + 149, 158, 164, 171, 179, 184, 184, 185, 185, 182, 190, 184, 169, 156, 153, 125, 28.10415 + 96, 60, 57, 57, 66, 137, 164, 98, 89, 110, 105, 43, 32, 105, 153, 35, 28.10416 + 18, 43, 23, 63, 121, 26, 94, 68, 94, 153, 156, 112, 153, 86, 74, 121, 28.10417 + 76, 49, 89, 139, 121, 149, 149, 129, 117, 160, 174, 153, 98, 121, 200, 149, 28.10418 + 127, 162, 174, 197, 108, 35, 49, 29, 43, 35, 52, 38, 63, 49, 38, 49, 28.10419 + 35, 32, 38, 35, 43, 35, 57, 46, 63, 60, 38, 23, 57, 84, 57, 60, 28.10420 + 43, 49, 63, 79, 91, 94, 96, 98, 105, 105, 112, 123, 114, 125, 127, 125, 28.10421 + 127, 127, 125, 131, 135, 139, 137, 129, 131, 123, 123, 117, 121, 117, 108, 112, 28.10422 + 110, 114, 123, 121, 131, 133, 129, 121, 119, 117, 131, 151, 143, 143, 139, 125, 28.10423 + 63, 18, 32, 29, 38, 38, 43, 43, 55, 32, 43, 29, 55, 41, 23, 57, 28.10424 + 103, 41, 60, 84, 71, 57, 38, 91, 38, 41, 35, 55, 151, 167, 153, 164, 28.10425 + 160, 155, 162, 171, 162, 169, 160, 165, 158, 162, 164, 162, 162, 164, 165, 164, 28.10426 + 162, 158, 160, 156, 160, 155, 156, 155, 156, 153, 149, 145, 153, 149, 141, 141, 28.10427 + 129, 129, 162, 200, 212, 221, 222, 222, 221, 221, 221, 219, 221, 221, 222, 222, 28.10428 + 222, 221, 224, 221, 222, 219, 216, 213, 215, 212, 213, 212, 213, 213, 212, 212, 28.10429 + 60, 38, 23, 32, 38, 49, 38, 46, 32, 29, 60, 94, 81, 74, 108, 127, 28.10430 + 145, 155, 164, 171, 182, 185, 182, 181, 181, 185, 187, 182, 177, 160, 149, 125, 28.10431 + 96, 68, 52, 43, 79, 160, 103, 89, 94, 123, 66, 38, 38, 131, 155, 15, 28.10432 + 35, 29, 12, 101, 101, 41, 35, 76, 79, 185, 145, 101, 94, 153, 114, 135, 28.10433 + 103, 71, 57, 108, 147, 155, 114, 143, 103, 143, 147, 149, 105, 145, 213, 151, 28.10434 + 162, 143, 224, 96, 49, 41, 46, 55, 41, 52, 52, 60, 55, 38, 43, 55, 28.10435 + 43, 38, 43, 49, 60, 43, 66, 46, 52, 55, 43, 32, 49, 74, 43, 81, 28.10436 + 55, 60, 57, 68, 84, 101, 89, 94, 103, 101, 110, 105, 112, 117, 123, 119, 28.10437 + 129, 125, 125, 137, 133, 137, 131, 131, 123, 125, 119, 121, 125, 119, 123, 105, 28.10438 + 108, 98, 108, 105, 108, 105, 103, 94, 119, 149, 149, 147, 139, 139, 129, 38, 28.10439 + 49, 29, 29, 26, 18, 32, 23, 29, 43, 46, 32, 38, 49, 32, 26, 74, 28.10440 + 84, 63, 49, 81, 74, 43, 38, 74, 46, 26, 26, 52, 141, 176, 143, 160, 28.10441 + 158, 155, 158, 169, 164, 162, 164, 165, 160, 162, 162, 158, 164, 164, 160, 165, 28.10442 + 160, 160, 158, 164, 158, 158, 153, 155, 153, 153, 151, 151, 145, 145, 139, 141, 28.10443 + 125, 133, 162, 204, 215, 222, 222, 222, 221, 221, 221, 221, 221, 221, 221, 224, 28.10444 + 222, 224, 222, 219, 218, 216, 215, 215, 213, 213, 213, 213, 215, 216, 216, 216, 28.10445 + 35, 32, 32, 38, 26, 41, 29, 26, 29, 35, 74, 94, 86, 79, 105, 127, 28.10446 + 149, 149, 158, 172, 179, 181, 182, 182, 184, 187, 187, 179, 176, 162, 145, 127, 28.10447 + 101, 66, 41, 46, 94, 167, 96, 94, 108, 105, 32, 41, 46, 123, 127, 29, 28.10448 + 29, 32, 26, 105, 55, 41, 23, 57, 98, 201, 151, 103, 52, 160, 123, 133, 28.10449 + 117, 74, 81, 76, 155, 156, 129, 98, 101, 119, 127, 127, 108, 171, 215, 133, 28.10450 + 187, 210, 151, 35, 32, 35, 23, 43, 32, 32, 46, 38, 46, 29, 20, 43, 28.10451 + 35, 43, 76, 43, 43, 63, 32, 46, 46, 55, 43, 41, 38, 68, 46, 89, 28.10452 + 52, 43, 63, 63, 66, 86, 94, 94, 103, 91, 108, 108, 108, 114, 121, 123, 28.10453 + 123, 127, 135, 131, 133, 137, 135, 129, 125, 127, 125, 119, 125, 119, 127, 121, 28.10454 + 121, 114, 108, 114, 117, 119, 119, 139, 151, 155, 151, 133, 137, 139, 89, 38, 28.10455 + 43, 23, 29, 20, 23, 29, 29, 46, 38, 60, 38, 41, 43, 52, 23, 68, 28.10456 + 86, 55, 49, 103, 60, 46, 46, 71, 55, 43, 35, 49, 141, 185, 153, 169, 28.10457 + 160, 155, 156, 167, 162, 167, 162, 171, 165, 162, 162, 164, 162, 158, 167, 164, 28.10458 + 167, 162, 158, 164, 160, 156, 158, 153, 158, 155, 151, 149, 149, 147, 143, 133, 28.10459 + 127, 123, 164, 206, 218, 224, 225, 224, 221, 221, 222, 221, 221, 222, 224, 224, 28.10460 + 224, 221, 221, 218, 218, 215, 215, 216, 216, 218, 216, 218, 216, 218, 216, 216, 28.10461 + 23, 26, 32, 35, 32, 32, 32, 29, 20, 43, 117, 94, 94, 96, 110, 125, 28.10462 + 137, 149, 158, 174, 181, 177, 182, 181, 181, 184, 185, 179, 174, 160, 149, 129, 28.10463 + 101, 55, 41, 46, 91, 169, 86, 89, 91, 68, 71, 38, 68, 133, 55, 38, 28.10464 + 35, 18, 38, 89, 43, 57, 49, 18, 117, 203, 137, 145, 79, 114, 151, 153, 28.10465 + 125, 103, 123, 125, 86, 129, 127, 110, 68, 129, 145, 105, 101, 156, 213, 172, 28.10466 + 192, 172, 43, 41, 38, 43, 41, 43, 38, 49, 43, 49, 52, 43, 43, 43, 28.10467 + 41, 43, 38, 32, 49, 52, 46, 55, 57, 49, 60, 46, 41, 55, 35, 74, 28.10468 + 66, 43, 63, 74, 76, 81, 89, 96, 101, 98, 103, 114, 117, 117, 121, 119, 28.10469 + 125, 129, 129, 133, 127, 131, 133, 133, 127, 125, 133, 129, 129, 127, 129, 137, 28.10470 + 135, 137, 141, 149, 141, 143, 145, 151, 149, 156, 131, 135, 137, 135, 15, 49, 28.10471 + 41, 32, 26, 29, 32, 32, 43, 43, 41, 60, 38, 32, 20, 43, 20, 60, 28.10472 + 84, 66, 57, 96, 52, 43, 43, 71, 76, 23, 35, 32, 143, 176, 160, 171, 28.10473 + 158, 151, 164, 158, 164, 165, 162, 165, 160, 162, 165, 167, 162, 160, 164, 164, 28.10474 + 164, 160, 162, 162, 156, 155, 153, 156, 153, 155, 153, 151, 153, 149, 137, 133, 28.10475 + 133, 127, 164, 201, 218, 225, 227, 225, 222, 221, 222, 222, 224, 222, 222, 224, 28.10476 + 221, 221, 218, 216, 218, 216, 216, 216, 216, 216, 216, 218, 218, 219, 218, 218, 28.10477 + 38, 38, 26, 41, 26, 29, 29, 32, 15, 60, 96, 108, 98, 98, 105, 131, 28.10478 + 133, 141, 155, 164, 176, 179, 182, 185, 181, 181, 181, 182, 174, 165, 149, 131, 28.10479 + 101, 63, 41, 46, 76, 145, 103, 91, 81, 86, 55, 63, 68, 110, 26, 43, 28.10480 + 32, 20, 43, 103, 41, 57, 38, 68, 117, 203, 143, 96, 149, 86, 179, 145, 28.10481 + 110, 108, 145, 63, 86, 139, 125, 119, 38, 98, 133, 119, 125, 181, 224, 185, 28.10482 + 203, 74, 29, 20, 29, 52, 29, 43, 29, 29, 43, 26, 43, 35, 35, 57, 28.10483 + 23, 38, 43, 32, 32, 43, 46, 41, 38, 43, 46, 41, 23, 38, 49, 55, 28.10484 + 68, 46, 43, 60, 49, 71, 79, 86, 91, 98, 101, 103, 110, 114, 119, 123, 28.10485 + 131, 129, 135, 129, 125, 133, 133, 129, 139, 131, 131, 135, 137, 137, 143, 151, 28.10486 + 149, 158, 160, 162, 156, 155, 156, 155, 155, 147, 141, 141, 143, 81, 23, 81, 28.10487 + 38, 12, 23, 35, 26, 38, 43, 60, 43, 52, 35, 38, 23, 49, 26, 76, 28.10488 + 96, 66, 49, 84, 66, 55, 55, 71, 66, 35, 41, 18, 147, 181, 169, 167, 28.10489 + 155, 149, 165, 162, 169, 165, 169, 165, 164, 158, 165, 162, 164, 162, 162, 164, 28.10490 + 162, 162, 158, 160, 158, 158, 158, 155, 156, 155, 153, 155, 153, 141, 137, 137, 28.10491 + 123, 125, 167, 204, 218, 224, 225, 225, 222, 224, 222, 222, 221, 221, 221, 227, 28.10492 + 219, 219, 216, 216, 216, 218, 219, 219, 219, 218, 218, 218, 218, 218, 218, 215, 28.10493 + 32, 35, 23, 32, 38, 35, 26, 35, 32, 68, 98, 96, 98, 101, 117, 121, 28.10494 + 139, 141, 156, 169, 176, 177, 181, 181, 179, 182, 182, 177, 165, 164, 151, 125, 28.10495 + 101, 79, 55, 46, 76, 121, 121, 103, 84, 71, 57, 96, 89, 98, 41, 38, 28.10496 + 23, 23, 57, 94, 23, 35, 49, 35, 71, 181, 119, 103, 108, 127, 131, 158, 28.10497 + 114, 131, 110, 74, 91, 91, 145, 127, 86, 123, 112, 108, 89, 177, 224, 219, 28.10498 + 79, 32, 29, 41, 43, 55, 55, 43, 26, 38, 43, 43, 41, 29, 29, 57, 28.10499 + 35, 38, 49, 29, 29, 23, 46, 43, 35, 41, 66, 38, 29, 32, 49, 46, 28.10500 + 68, 41, 29, 55, 41, 46, 74, 84, 86, 94, 98, 103, 98, 114, 114, 117, 28.10501 + 123, 133, 131, 127, 135, 133, 137, 137, 135, 133, 141, 147, 145, 141, 139, 151, 28.10502 + 160, 165, 169, 169, 160, 158, 153, 158, 153, 149, 143, 151, 145, 18, 18, 60, 28.10503 + 41, 26, 29, 38, 32, 35, 43, 57, 57, 43, 29, 41, 29, 35, 26, 96, 28.10504 + 94, 63, 63, 66, 66, 55, 68, 84, 55, 38, 43, 29, 139, 185, 172, 172, 28.10505 + 155, 155, 167, 171, 167, 165, 165, 169, 165, 164, 169, 162, 160, 162, 158, 162, 28.10506 + 165, 162, 158, 156, 162, 158, 153, 156, 151, 155, 149, 149, 149, 141, 139, 129, 28.10507 + 129, 121, 172, 207, 221, 227, 227, 225, 225, 221, 221, 221, 221, 218, 218, 219, 28.10508 + 219, 219, 222, 219, 219, 221, 221, 219, 216, 218, 216, 216, 216, 213, 212, 215, 28.10509 + 26, 32, 32, 26, 46, 41, 29, 35, 38, 68, 101, 98, 94, 96, 117, 129, 28.10510 + 139, 153, 158, 167, 177, 177, 181, 179, 182, 181, 181, 184, 171, 167, 149, 127, 28.10511 + 103, 71, 43, 52, 68, 101, 105, 91, 98, 66, 57, 94, 96, 89, 41, 41, 28.10512 + 23, 23, 71, 91, 26, 32, 46, 55, 60, 185, 98, 84, 123, 129, 112, 158, 28.10513 + 133, 131, 119, 117, 76, 74, 149, 127, 81, 125, 105, 81, 105, 125, 197, 129, 28.10514 + 43, 49, 35, 38, 49, 35, 29, 32, 26, 41, 57, 35, 43, 29, 32, 52, 28.10515 + 29, 35, 46, 29, 26, 32, 29, 38, 38, 43, 57, 38, 29, 32, 46, 38, 28.10516 + 43, 35, 26, 57, 55, 23, 49, 57, 79, 81, 91, 96, 96, 105, 114, 121, 28.10517 + 123, 123, 129, 131, 133, 135, 135, 139, 135, 145, 145, 155, 156, 155, 153, 158, 28.10518 + 169, 169, 171, 169, 167, 156, 165, 164, 160, 147, 149, 149, 114, 20, 18, 68, 28.10519 + 29, 35, 29, 26, 32, 46, 55, 49, 46, 29, 43, 66, 26, 32, 20, 89, 28.10520 + 98, 74, 71, 79, 68, 55, 66, 89, 32, 49, 35, 26, 149, 182, 169, 171, 28.10521 + 147, 155, 162, 174, 169, 171, 160, 165, 164, 167, 167, 162, 162, 164, 162, 162, 28.10522 + 164, 162, 155, 162, 156, 160, 158, 153, 155, 151, 149, 153, 143, 149, 137, 131, 28.10523 + 129, 131, 179, 213, 222, 225, 225, 225, 224, 222, 224, 219, 221, 219, 219, 219, 28.10524 + 221, 219, 221, 221, 219, 219, 218, 218, 215, 216, 216, 213, 215, 212, 216, 210, 28.10525 + 32, 29, 23, 23, 32, 26, 41, 32, 32, 79, 98, 105, 101, 89, 110, 133, 28.10526 + 135, 147, 158, 165, 179, 179, 177, 184, 177, 179, 184, 182, 172, 162, 153, 125, 28.10527 + 101, 66, 46, 49, 71, 101, 105, 103, 79, 43, 79, 38, 101, 96, 32, 43, 28.10528 + 41, 18, 60, 81, 23, 29, 43, 68, 74, 169, 119, 66, 60, 68, 135, 131, 28.10529 + 147, 137, 131, 131, 112, 63, 127, 147, 74, 141, 110, 49, 89, 129, 209, 81, 28.10530 + 46, 55, 29, 41, 46, 43, 35, 46, 29, 43, 57, 46, 41, 18, 32, 41, 28.10531 + 38, 29, 38, 38, 35, 32, 35, 32, 35, 49, 49, 52, 35, 38, 60, 43, 28.10532 + 57, 49, 23, 60, 66, 29, 29, 35, 52, 71, 91, 84, 89, 98, 105, 117, 28.10533 + 114, 119, 123, 123, 135, 137, 141, 141, 139, 149, 147, 162, 167, 169, 162, 162, 28.10534 + 164, 167, 162, 160, 169, 165, 165, 169, 158, 139, 156, 147, 43, 26, 35, 55, 28.10535 + 35, 35, 43, 32, 43, 41, 66, 46, 57, 20, 41, 49, 35, 35, 35, 94, 28.10536 + 108, 91, 66, 74, 57, 68, 57, 68, 35, 84, 26, 29, 155, 185, 164, 165, 28.10537 + 145, 162, 156, 167, 167, 169, 167, 164, 156, 160, 158, 162, 158, 158, 160, 160, 28.10538 + 162, 160, 162, 164, 156, 158, 153, 153, 153, 149, 153, 143, 139, 145, 139, 135, 28.10539 + 123, 135, 190, 213, 225, 230, 224, 225, 222, 219, 219, 219, 221, 218, 221, 221, 28.10540 + 221, 222, 221, 219, 216, 215, 218, 215, 213, 213, 213, 215, 213, 213, 212, 212, 28.10541 + 29, 26, 35, 35, 26, 23, 26, 38, 35, 79, 79, 89, 91, 94, 119, 129, 28.10542 + 133, 149, 155, 172, 177, 181, 181, 179, 181, 181, 185, 179, 174, 165, 145, 129, 28.10543 + 105, 71, 55, 57, 71, 91, 91, 76, 66, 52, 63, 29, 131, 81, 43, 55, 28.10544 + 38, 35, 63, 81, 26, 43, 43, 46, 94, 167, 108, 66, 38, 41, 71, 121, 28.10545 + 151, 156, 112, 139, 143, 110, 105, 156, 114, 145, 127, 91, 68, 89, 94, 46, 28.10546 + 119, 38, 43, 41, 57, 38, 29, 46, 43, 43, 46, 49, 52, 32, 29, 52, 28.10547 + 32, 46, 26, 49, 35, 32, 41, 38, 49, 35, 43, 38, 38, 43, 46, 46, 28.10548 + 43, 55, 38, 46, 63, 49, 38, 20, 26, 46, 66, 68, 76, 91, 108, 110, 28.10549 + 119, 123, 127, 127, 133, 127, 139, 139, 141, 143, 155, 156, 169, 179, 167, 165, 28.10550 + 167, 165, 167, 165, 169, 176, 179, 165, 156, 145, 156, 135, 26, 26, 38, 41, 28.10551 + 43, 52, 43, 38, 43, 38, 55, 68, 35, 20, 41, 43, 29, 35, 35, 86, 28.10552 + 105, 68, 71, 68, 66, 74, 63, 84, 26, 81, 43, 18, 139, 184, 165, 171, 28.10553 + 149, 156, 165, 171, 169, 169, 169, 165, 162, 158, 162, 162, 167, 165, 164, 160, 28.10554 + 160, 164, 164, 160, 160, 158, 155, 153, 151, 149, 151, 151, 143, 141, 147, 133, 28.10555 + 127, 137, 195, 216, 225, 228, 227, 222, 219, 219, 218, 218, 219, 221, 221, 222, 28.10556 + 221, 222, 219, 218, 216, 213, 210, 218, 212, 210, 210, 212, 210, 209, 206, 201, 28.10557 + 32, 23, 29, 38, 35, 29, 29, 26, 52, 66, 74, 86, 96, 94, 117, 131, 28.10558 + 141, 145, 160, 174, 176, 184, 181, 181, 182, 181, 182, 182, 172, 162, 149, 125, 28.10559 + 96, 63, 49, 55, 68, 89, 123, 38, 38, 43, 41, 41, 141, 103, 23, 49, 28.10560 + 60, 38, 46, 63, 38, 35, 26, 20, 105, 164, 137, 86, 38, 63, 57, 98, 28.10561 + 112, 141, 131, 139, 147, 121, 119, 135, 143, 147, 101, 105, 86, 133, 49, 63, 28.10562 + 43, 43, 35, 43, 46, 52, 38, 41, 32, 35, 43, 52, 32, 26, 49, 66, 28.10563 + 38, 38, 41, 60, 41, 32, 32, 29, 38, 41, 49, 26, 57, 35, 43, 43, 28.10564 + 38, 63, 41, 35, 55, 55, 20, 29, 23, 26, 41, 66, 71, 79, 96, 110, 28.10565 + 112, 114, 125, 127, 127, 129, 131, 147, 133, 141, 147, 147, 153, 167, 160, 169, 28.10566 + 169, 172, 171, 165, 171, 171, 171, 156, 141, 145, 139, 110, 18, 23, 60, 32, 28.10567 + 46, 49, 52, 46, 41, 49, 49, 74, 38, 32, 41, 41, 35, 23, 46, 108, 28.10568 + 105, 60, 68, 57, 55, 74, 68, 66, 38, 84, 32, 26, 141, 184, 167, 164, 28.10569 + 151, 155, 160, 165, 165, 165, 167, 160, 155, 160, 162, 158, 162, 165, 162, 155, 28.10570 + 164, 156, 160, 156, 153, 153, 153, 153, 147, 147, 149, 145, 145, 137, 133, 131, 28.10571 + 127, 143, 200, 219, 231, 228, 225, 221, 219, 218, 221, 219, 221, 222, 222, 222, 28.10572 + 221, 219, 219, 215, 215, 210, 213, 215, 212, 209, 207, 206, 201, 192, 187, 167, 28.10573 + 38, 38, 29, 32, 26, 20, 26, 46, 35, 43, 74, 86, 91, 105, 127, 125, 28.10574 + 137, 151, 158, 172, 172, 177, 176, 176, 179, 179, 182, 181, 177, 165, 151, 133, 28.10575 + 101, 68, 38, 55, 46, 103, 94, 52, 32, 35, 60, 49, 112, 96, 32, 55, 28.10576 + 66, 43, 71, 60, 38, 35, 41, 23, 74, 165, 133, 125, 46, 74, 71, 108, 28.10577 + 103, 91, 133, 135, 164, 147, 156, 117, 143, 145, 174, 76, 71, 96, 94, 57, 28.10578 + 49, 57, 46, 49, 49, 46, 43, 41, 52, 52, 55, 68, 35, 26, 26, 60, 28.10579 + 29, 35, 49, 35, 43, 29, 29, 38, 29, 35, 52, 38, 49, 63, 38, 49, 28.10580 + 49, 60, 41, 49, 74, 63, 46, 41, 38, 26, 26, 29, 66, 74, 86, 91, 28.10581 + 98, 103, 119, 117, 127, 121, 133, 131, 135, 145, 141, 149, 155, 156, 165, 165, 28.10582 + 164, 174, 164, 165, 165, 165, 158, 151, 143, 147, 141, 101, 26, 32, 55, 43, 28.10583 + 52, 55, 55, 57, 49, 49, 41, 74, 43, 43, 29, 32, 43, 41, 55, 101, 28.10584 + 103, 84, 68, 63, 66, 71, 79, 81, 52, 96, 46, 26, 139, 181, 160, 167, 28.10585 + 147, 151, 149, 156, 155, 156, 156, 156, 162, 160, 156, 160, 162, 160, 160, 155, 28.10586 + 155, 160, 156, 160, 158, 153, 156, 151, 149, 151, 147, 147, 147, 141, 135, 131, 28.10587 + 127, 156, 206, 219, 228, 228, 225, 221, 218, 218, 221, 221, 221, 222, 221, 221, 28.10588 + 219, 219, 216, 216, 212, 213, 212, 210, 209, 203, 190, 182, 158, 135, 98, 46, 28.10589 + 23, 26, 32, 32, 41, 32, 20, 43, 29, 41, 63, 91, 96, 103, 117, 123, 28.10590 + 137, 155, 160, 169, 174, 176, 179, 172, 181, 177, 181, 177, 177, 165, 145, 125, 28.10591 + 94, 71, 32, 49, 98, 133, 81, 86, 35, 26, 63, 98, 74, 71, 52, 46, 28.10592 + 66, 52, 86, 46, 38, 26, 43, 12, 38, 181, 129, 143, 55, 57, 74, 63, 28.10593 + 86, 129, 139, 91, 110, 167, 121, 133, 131, 160, 169, 121, 129, 125, 139, 63, 28.10594 + 43, 35, 41, 57, 41, 38, 43, 38, 41, 41, 52, 74, 29, 35, 35, 71, 28.10595 + 41, 35, 35, 43, 43, 38, 35, 41, 23, 35, 46, 41, 49, 49, 38, 49, 28.10596 + 55, 57, 41, 41, 49, 63, 60, 43, 29, 20, 20, 41, 43, 49, 52, 55, 28.10597 + 46, 60, 84, 84, 108, 117, 117, 114, 131, 129, 137, 145, 147, 149, 155, 162, 28.10598 + 167, 164, 164, 149, 153, 153, 158, 143, 139, 137, 135, 84, 23, 29, 46, 41, 28.10599 + 52, 43, 46, 52, 41, 32, 43, 52, 35, 41, 38, 29, 41, 57, 46, 96, 28.10600 + 103, 81, 68, 71, 63, 81, 76, 86, 35, 89, 43, 26, 153, 179, 158, 162, 28.10601 + 151, 141, 135, 139, 147, 149, 149, 151, 151, 153, 158, 164, 160, 160, 167, 155, 28.10602 + 164, 158, 156, 158, 160, 158, 155, 151, 149, 151, 151, 145, 147, 137, 133, 127, 28.10603 + 129, 174, 209, 221, 227, 227, 222, 221, 218, 219, 219, 219, 221, 219, 221, 218, 28.10604 + 218, 215, 215, 213, 212, 209, 204, 200, 193, 176, 149, 105, 49, 35, 35, 23, 28.10605 + 32, 32, 26, 35, 23, 20, 29, 43, 18, 52, 52, 91, 94, 81, 112, 127, 28.10606 + 135, 149, 160, 167, 176, 179, 177, 174, 177, 179, 184, 179, 169, 162, 145, 123, 28.10607 + 94, 46, 55, 108, 185, 153, 98, 172, 32, 26, 35, 76, 66, 49, 57, 49, 28.10608 + 35, 68, 49, 32, 43, 35, 29, 18, 29, 176, 151, 169, 91, 76, 101, 57, 28.10609 + 57, 125, 123, 114, 74, 149, 94, 141, 155, 179, 156, 149, 164, 185, 165, 143, 28.10610 + 49, 35, 35, 38, 49, 41, 49, 46, 38, 63, 57, 68, 38, 26, 29, 89, 28.10611 + 35, 32, 38, 32, 43, 41, 35, 38, 32, 32, 41, 29, 43, 52, 52, 57, 28.10612 + 49, 49, 52, 38, 38, 57, 71, 60, 57, 41, 38, 49, 38, 49, 52, 66, 28.10613 + 91, 74, 89, 96, 96, 105, 114, 110, 123, 121, 125, 133, 145, 143, 145, 153, 28.10614 + 162, 162, 158, 145, 137, 149, 145, 133, 133, 133, 123, 84, 52, 41, 43, 41, 28.10615 + 49, 52, 49, 60, 43, 49, 43, 55, 46, 41, 26, 41, 29, 57, 46, 89, 28.10616 + 112, 74, 81, 79, 68, 63, 71, 96, 52, 63, 57, 41, 149, 185, 158, 153, 28.10617 + 145, 133, 114, 125, 127, 141, 139, 137, 147, 143, 153, 151, 156, 155, 153, 155, 28.10618 + 158, 160, 156, 160, 156, 156, 155, 149, 153, 145, 143, 143, 139, 131, 129, 123, 28.10619 + 129, 190, 213, 221, 227, 224, 221, 218, 218, 219, 219, 218, 219, 219, 216, 216, 28.10620 + 216, 215, 212, 209, 206, 198, 185, 165, 139, 91, 43, 20, 12, 23, 26, 20, 28.10621 + 26, 29, 32, 26, 20, 20, 26, 23, 18, 32, 63, 79, 89, 89, 94, 121, 28.10622 + 141, 149, 164, 169, 177, 181, 174, 176, 176, 181, 179, 174, 169, 162, 141, 114, 28.10623 + 81, 57, 123, 210, 172, 63, 60, 162, 41, 23, 20, 68, 91, 35, 38, 63, 28.10624 + 43, 68, 49, 41, 29, 32, 26, 20, 32, 165, 145, 164, 151, 81, 84, 60, 28.10625 + 38, 91, 155, 131, 57, 114, 141, 79, 156, 162, 158, 129, 68, 117, 162, 174, 28.10626 + 117, 57, 35, 23, 32, 43, 35, 35, 35, 76, 63, 68, 35, 23, 35, 63, 28.10627 + 41, 35, 38, 29, 43, 46, 23, 38, 35, 20, 38, 35, 41, 46, 49, 52, 28.10628 + 57, 43, 46, 46, 35, 57, 76, 71, 52, 60, 76, 108, 105, 105, 112, 129, 28.10629 + 117, 131, 129, 141, 131, 131, 135, 143, 133, 147, 143, 169, 156, 165, 160, 164, 28.10630 + 167, 171, 172, 174, 177, 177, 177, 162, 165, 171, 153, 112, 66, 57, 46, 46, 28.10631 + 66, 55, 55, 43, 49, 43, 46, 55, 46, 38, 29, 29, 26, 66, 43, 91, 28.10632 + 121, 74, 84, 76, 74, 71, 81, 79, 55, 63, 49, 46, 158, 182, 164, 145, 28.10633 + 127, 133, 114, 112, 119, 125, 127, 129, 131, 151, 135, 139, 147, 145, 149, 149, 28.10634 + 151, 156, 162, 160, 155, 155, 155, 149, 155, 147, 143, 145, 141, 135, 123, 125, 28.10635 + 143, 198, 216, 224, 227, 222, 218, 218, 219, 218, 218, 216, 215, 216, 216, 213, 28.10636 + 216, 212, 207, 200, 190, 176, 143, 94, 49, 38, 23, 23, 23, 23, 29, 35, 28.10637 + 35, 52, 43, 35, 32, 18, 26, 20, 26, 35, 55, 66, 71, 63, 96, 125, 28.10638 + 137, 153, 160, 169, 172, 174, 176, 176, 174, 177, 177, 181, 169, 156, 139, 110, 28.10639 + 94, 137, 215, 171, 91, 49, 94, 155, 60, 66, 18, 63, 91, 63, 60, 60, 28.10640 + 63, 38, 38, 55, 35, 35, 32, 35, 43, 158, 129, 121, 167, 98, 74, 76, 28.10641 + 46, 57, 91, 91, 81, 153, 171, 96, 86, 167, 179, 151, 66, 55, 55, 176, 28.10642 + 172, 160, 68, 26, 29, 29, 29, 41, 38, 63, 74, 57, 29, 20, 41, 74, 28.10643 + 35, 26, 23, 29, 35, 38, 26, 32, 32, 26, 35, 35, 38, 43, 49, 38, 28.10644 + 52, 43, 35, 29, 32, 32, 57, 74, 81, 79, 101, 103, 117, 117, 125, 125, 28.10645 + 123, 129, 143, 135, 135, 137, 135, 139, 135, 137, 135, 151, 155, 160, 155, 153, 28.10646 + 151, 158, 156, 160, 164, 160, 172, 176, 185, 195, 203, 203, 190, 155, 96, 66, 28.10647 + 57, 49, 41, 60, 41, 38, 49, 52, 38, 41, 20, 43, 32, 68, 43, 86, 28.10648 + 112, 79, 84, 74, 66, 76, 74, 94, 66, 71, 55, 57, 164, 164, 169, 135, 28.10649 + 117, 125, 119, 101, 114, 110, 114, 127, 125, 125, 114, 129, 129, 133, 135, 141, 28.10650 + 143, 145, 153, 151, 149, 149, 151, 153, 147, 147, 147, 137, 139, 133, 131, 123, 28.10651 + 155, 201, 219, 224, 224, 216, 215, 216, 216, 215, 221, 216, 215, 215, 215, 212, 28.10652 + 212, 207, 200, 184, 176, 145, 98, 41, 23, 38, 32, 55, 23, 32, 57, 52, 28.10653 + 43, 38, 41, 68, 49, 35, 26, 26, 20, 43, 46, 60, 63, 60, 91, 125, 28.10654 + 135, 151, 156, 169, 174, 176, 177, 179, 174, 182, 182, 177, 171, 155, 135, 123, 28.10655 + 160, 222, 167, 52, 76, 57, 84, 89, 20, 29, 23, 52, 101, 71, 43, 55, 28.10656 + 84, 43, 46, 94, 49, 35, 32, 38, 52, 141, 133, 119, 151, 158, 96, 68, 28.10657 + 23, 26, 79, 137, 119, 172, 123, 86, 101, 137, 169, 125, 147, 89, 43, 89, 28.10658 + 182, 185, 165, 60, 38, 41, 43, 41, 43, 57, 84, 49, 41, 38, 49, 96, 28.10659 + 29, 35, 38, 41, 35, 43, 35, 23, 26, 29, 41, 35, 41, 43, 46, 35, 28.10660 + 29, 55, 38, 23, 38, 23, 55, 71, 74, 96, 105, 112, 125, 123, 123, 117, 28.10661 + 125, 125, 127, 131, 131, 137, 135, 133, 139, 139, 147, 151, 151, 156, 155, 149, 28.10662 + 151, 149, 149, 149, 151, 162, 172, 179, 185, 200, 198, 204, 206, 204, 206, 177, 28.10663 + 114, 66, 43, 49, 41, 29, 35, 46, 29, 29, 23, 32, 38, 38, 49, 86, 28.10664 + 119, 66, 81, 71, 60, 71, 71, 86, 63, 74, 60, 49, 169, 158, 165, 127, 28.10665 + 121, 123, 123, 112, 112, 117, 112, 121, 110, 117, 117, 121, 117, 125, 121, 125, 28.10666 + 131, 139, 137, 141, 143, 147, 149, 147, 143, 151, 143, 135, 137, 133, 125, 123, 28.10667 + 165, 207, 218, 224, 221, 215, 215, 215, 215, 218, 216, 215, 215, 213, 210, 212, 28.10668 + 206, 201, 193, 181, 155, 117, 57, 29, 20, 18, 18, 35, 46, 57, 71, 71, 28.10669 + 55, 52, 71, 60, 43, 32, 35, 29, 23, 23, 43, 66, 57, 63, 81, 114, 28.10670 + 127, 139, 155, 164, 174, 176, 176, 174, 171, 172, 179, 171, 167, 160, 141, 160, 28.10671 + 212, 108, 32, 71, 66, 32, 171, 35, 20, 26, 12, 46, 91, 66, 60, 52, 28.10672 + 63, 29, 41, 63, 89, 52, 26, 38, 49, 86, 143, 143, 108, 147, 149, 74, 28.10673 + 32, 52, 91, 141, 162, 177, 60, 105, 86, 103, 129, 143, 79, 119, 71, 74, 28.10674 + 145, 141, 177, 167, 43, 29, 32, 43, 71, 57, 96, 43, 35, 26, 46, 79, 28.10675 + 41, 32, 43, 41, 29, 35, 46, 46, 26, 41, 43, 52, 46, 35, 49, 55, 28.10676 + 43, 41, 35, 52, 26, 38, 66, 79, 74, 94, 114, 114, 127, 127, 123, 114, 28.10677 + 121, 125, 135, 127, 129, 133, 135, 131, 129, 137, 139, 145, 153, 149, 141, 143, 28.10678 + 145, 141, 139, 143, 149, 162, 177, 177, 190, 200, 203, 204, 204, 204, 210, 212, 28.10679 + 212, 187, 121, 71, 57, 49, 43, 46, 52, 38, 46, 55, 41, 55, 86, 89, 28.10680 + 123, 66, 74, 81, 60, 79, 68, 86, 66, 76, 79, 63, 185, 151, 153, 133, 28.10681 + 133, 139, 129, 137, 119, 125, 114, 117, 119, 117, 114, 117, 114, 114, 112, 114, 28.10682 + 114, 114, 125, 123, 127, 133, 127, 133, 141, 141, 139, 137, 133, 133, 125, 121, 28.10683 + 174, 206, 216, 222, 219, 213, 213, 213, 215, 218, 215, 213, 215, 216, 210, 206, 28.10684 + 198, 197, 182, 165, 123, 66, 26, 15, 29, 35, 43, 46, 63, 79, 79, 66, 28.10685 + 94, 79, 63, 68, 46, 32, 41, 41, 35, 32, 55, 63, 38, 38, 71, 98, 28.10686 + 121, 141, 156, 167, 177, 176, 171, 171, 176, 174, 179, 176, 171, 160, 185, 212, 28.10687 + 117, 57, 38, 63, 38, 105, 179, 38, 23, 26, 15, 43, 91, 71, 26, 41, 28.10688 + 52, 41, 49, 60, 108, 63, 52, 57, 43, 41, 71, 143, 135, 79, 145, 147, 28.10689 + 133, 129, 129, 171, 185, 98, 79, 79, 133, 89, 96, 141, 137, 60, 101, 121, 28.10690 + 174, 125, 86, 184, 139, 57, 32, 41, 43, 52, 74, 32, 20, 23, 49, 94, 28.10691 + 41, 29, 46, 32, 32, 26, 43, 35, 29, 46, 41, 23, 43, 32, 52, 49, 28.10692 + 43, 41, 46, 35, 43, 32, 55, 76, 84, 96, 101, 121, 121, 121, 114, 121, 28.10693 + 114, 119, 119, 127, 127, 131, 129, 135, 135, 137, 137, 147, 141, 135, 143, 139, 28.10694 + 141, 143, 141, 151, 151, 169, 176, 184, 193, 198, 200, 204, 206, 204, 207, 209, 28.10695 + 209, 209, 207, 193, 131, 60, 41, 26, 41, 20, 41, 23, 35, 38, 79, 68, 28.10696 + 125, 57, 68, 76, 66, 74, 76, 74, 57, 74, 68, 68, 189, 155, 151, 131, 28.10697 + 137, 143, 137, 139, 137, 131, 131, 125, 129, 114, 114, 105, 110, 103, 112, 108, 28.10698 + 105, 110, 112, 119, 117, 125, 123, 123, 125, 121, 125, 123, 131, 121, 117, 123, 28.10699 + 172, 207, 215, 218, 213, 212, 213, 213, 215, 216, 218, 215, 216, 215, 212, 204, 28.10700 + 193, 182, 155, 114, 60, 12, 18, 26, 41, 49, 49, 60, 74, 81, 81, 91, 28.10701 + 131, 125, 101, 94, 76, 66, 55, 41, 35, 35, 41, 35, 32, 29, 49, 81, 28.10702 + 110, 133, 155, 165, 171, 171, 172, 169, 176, 177, 172, 179, 184, 193, 176, 125, 28.10703 + 101, 63, 57, 91, 81, 165, 84, 29, 35, 38, 23, 23, 46, 84, 49, 66, 28.10704 + 26, 29, 41, 49, 112, 79, 68, 52, 79, 29, 18, 125, 147, 125, 89, 57, 28.10705 + 96, 133, 135, 176, 147, 52, 79, 112, 71, 123, 119, 112, 127, 103, 127, 160, 28.10706 + 207, 129, 91, 63, 193, 89, 23, 26, 29, 49, 81, 41, 29, 41, 43, 91, 28.10707 + 29, 32, 38, 23, 35, 23, 32, 38, 35, 26, 41, 29, 38, 38, 52, 52, 28.10708 + 43, 43, 35, 41, 46, 32, 46, 63, 74, 103, 117, 119, 103, 121, 117, 121, 28.10709 + 121, 117, 119, 123, 139, 135, 129, 129, 135, 133, 133, 139, 133, 139, 135, 135, 28.10710 + 139, 141, 141, 147, 153, 169, 176, 187, 192, 195, 203, 203, 206, 206, 207, 207, 28.10711 + 209, 207, 209, 212, 212, 193, 129, 57, 38, 23, 26, 18, 23, 32, 76, 68, 28.10712 + 123, 52, 76, 71, 63, 71, 76, 66, 49, 66, 63, 76, 187, 156, 151, 131, 28.10713 + 139, 145, 137, 139, 151, 133, 133, 131, 131, 119, 117, 110, 112, 105, 105, 94, 28.10714 + 96, 101, 96, 89, 98, 105, 105, 105, 103, 110, 110, 112, 110, 101, 108, 98, 28.10715 + 169, 201, 213, 216, 213, 210, 209, 213, 215, 215, 215, 215, 215, 215, 212, 201, 28.10716 + 187, 160, 94, 32, 26, 29, 32, 46, 46, 55, 55, 76, 71, 68, 79, 79, 28.10717 + 139, 137, 137, 117, 94, 84, 76, 60, 46, 55, 46, 29, 29, 29, 52, 76, 28.10718 + 103, 133, 151, 162, 172, 172, 176, 179, 177, 172, 177, 193, 195, 165, 155, 125, 28.10719 + 103, 66, 71, 121, 193, 96, 29, 18, 23, 23, 20, 29, 26, 57, 101, 121, 28.10720 + 6, 18, 35, 41, 127, 101, 74, 57, 117, 15, 12, 46, 145, 143, 129, 89, 28.10721 + 74, 101, 84, 155, 46, 110, 103, 103, 103, 105, 137, 121, 121, 121, 119, 101, 28.10722 + 189, 79, 86, 76, 76, 164, 38, 32, 35, 46, 86, 38, 32, 15, 46, 96, 28.10723 + 29, 29, 32, 23, 38, 32, 38, 41, 43, 35, 32, 26, 35, 46, 38, 52, 28.10724 + 38, 63, 52, 32, 41, 29, 35, 68, 86, 101, 103, 108, 114, 121, 114, 119, 28.10725 + 117, 121, 125, 123, 129, 131, 125, 127, 133, 137, 139, 131, 145, 139, 137, 137, 28.10726 + 147, 141, 147, 153, 160, 176, 182, 190, 193, 200, 200, 203, 201, 203, 207, 206, 28.10727 + 209, 209, 207, 210, 209, 213, 215, 185, 98, 49, 23, 18, 18, 38, 66, 91, 28.10728 + 114, 55, 68, 68, 66, 66, 71, 66, 55, 63, 74, 91, 182, 153, 153, 135, 28.10729 + 151, 147, 143, 145, 143, 143, 143, 141, 139, 131, 139, 131, 123, 112, 117, 105, 28.10730 + 108, 96, 98, 96, 96, 101, 96, 86, 98, 94, 114, 119, 105, 91, 71, 86, 28.10731 + 149, 201, 213, 215, 213, 210, 212, 215, 216, 213, 215, 212, 213, 209, 203, 189, 28.10732 + 165, 105, 20, 23, 23, 55, 49, 57, 55, 71, 74, 79, 74, 71, 74, 74, 28.10733 + 153, 145, 139, 149, 123, 112, 89, 79, 63, 71, 63, 41, 35, 26, 52, 84, 28.10734 + 103, 135, 155, 162, 167, 171, 171, 172, 172, 169, 181, 181, 176, 164, 147, 123, 28.10735 + 96, 76, 131, 81, 218, 41, 32, 29, 23, 35, 29, 26, 23, 43, 79, 137, 28.10736 + 15, 18, 20, 35, 131, 117, 68, 76, 131, 41, 32, 20, 52, 137, 143, 153, 28.10737 + 110, 94, 127, 162, 60, 46, 135, 119, 110, 131, 68, 167, 125, 131, 143, 135, 28.10738 + 149, 179, 76, 26, 108, 108, 137, 38, 35, 49, 76, 41, 26, 18, 49, 71, 28.10739 + 41, 35, 52, 26, 41, 26, 43, 46, 43, 49, 49, 35, 41, 41, 43, 41, 28.10740 + 60, 66, 55, 35, 46, 35, 43, 66, 101, 98, 105, 105, 110, 117, 114, 121, 28.10741 + 125, 123, 131, 129, 125, 135, 127, 135, 129, 139, 135, 131, 135, 137, 135, 139, 28.10742 + 139, 147, 151, 164, 164, 171, 177, 190, 193, 197, 200, 197, 197, 200, 206, 204, 28.10743 + 206, 207, 207, 207, 209, 212, 215, 215, 210, 149, 49, 26, 20, 46, 57, 89, 28.10744 + 105, 55, 63, 63, 66, 63, 60, 43, 68, 55, 60, 103, 172, 149, 141, 143, 28.10745 + 153, 156, 145, 151, 147, 151, 145, 141, 137, 141, 141, 137, 129, 129, 127, 117, 28.10746 + 114, 112, 101, 96, 101, 96, 98, 89, 89, 98, 123, 121, 117, 94, 68, 76, 28.10747 + 151, 203, 213, 215, 213, 209, 213, 218, 216, 213, 215, 212, 210, 200, 187, 162, 28.10748 + 117, 55, 23, 41, 57, 71, 71, 66, 71, 63, 76, 84, 74, 74, 84, 84, 28.10749 + 153, 149, 155, 149, 143, 129, 114, 96, 84, 81, 74, 60, 29, 20, 49, 74, 28.10750 + 103, 133, 156, 165, 169, 174, 176, 174, 172, 176, 177, 177, 172, 165, 149, 125, 28.10751 + 105, 114, 169, 108, 167, 32, 20, 32, 23, 29, 26, 26, 55, 98, 89, 110, 28.10752 + 20, 15, 15, 55, 149, 101, 66, 119, 66, 38, 32, 26, 105, 94, 43, 91, 28.10753 + 117, 131, 149, 76, 57, 84, 57, 143, 125, 121, 96, 119, 179, 125, 143, 129, 28.10754 + 103, 141, 165, 38, 35, 101, 179, 63, 46, 55, 46, 43, 29, 32, 41, 66, 28.10755 + 29, 38, 46, 41, 49, 38, 35, 41, 52, 68, 38, 38, 26, 43, 38, 41, 28.10756 + 49, 60, 79, 43, 41, 35, 41, 81, 84, 91, 117, 114, 105, 108, 110, 114, 28.10757 + 117, 125, 117, 119, 131, 129, 131, 137, 135, 139, 141, 135, 135, 127, 135, 141, 28.10758 + 141, 145, 155, 158, 171, 179, 182, 187, 192, 198, 197, 197, 193, 201, 203, 201, 28.10759 + 204, 206, 207, 210, 209, 212, 213, 213, 218, 216, 177, 68, 35, 23, 43, 43, 28.10760 + 101, 63, 74, 76, 66, 76, 89, 63, 66, 43, 57, 121, 167, 153, 137, 147, 28.10761 + 153, 153, 155, 155, 149, 149, 141, 149, 141, 141, 141, 139, 137, 135, 133, 127, 28.10762 + 129, 121, 117, 105, 103, 114, 94, 79, 108, 103, 135, 131, 112, 108, 63, 74, 28.10763 + 160, 203, 215, 215, 213, 212, 218, 219, 218, 216, 215, 213, 203, 176, 141, 84, 28.10764 + 26, 18, 38, 55, 71, 74, 71, 79, 79, 79, 79, 79, 91, 79, 74, 68, 28.10765 + 149, 139, 155, 155, 156, 145, 135, 119, 96, 98, 79, 68, 26, 18, 41, 74, 28.10766 + 110, 131, 149, 164, 169, 176, 172, 172, 174, 174, 179, 174, 171, 158, 141, 121, 28.10767 + 149, 153, 105, 129, 84, 23, 32, 32, 32, 20, 15, 18, 26, 105, 143, 135, 28.10768 + 114, 91, 108, 147, 114, 49, 57, 60, 81, 32, 29, 98, 127, 46, 46, 84, 28.10769 + 145, 121, 79, 52, 84, 76, 84, 79, 127, 133, 121, 145, 151, 153, 137, 158, 28.10770 + 46, 43, 135, 135, 35, 38, 105, 158, 35, 49, 57, 46, 43, 29, 57, 66, 28.10771 + 46, 46, 52, 41, 41, 29, 52, 49, 46, 60, 46, 43, 38, 35, 52, 55, 28.10772 + 60, 38, 74, 60, 38, 49, 29, 86, 89, 94, 105, 108, 112, 108, 110, 125, 28.10773 + 121, 117, 121, 123, 127, 133, 135, 141, 143, 141, 133, 127, 129, 133, 137, 141, 28.10774 + 145, 151, 160, 165, 167, 172, 177, 184, 189, 197, 193, 195, 197, 197, 198, 201, 28.10775 + 201, 204, 209, 209, 209, 210, 212, 210, 213, 216, 219, 195, 79, 35, 32, 29, 28.10776 + 96, 52, 63, 60, 43, 57, 68, 63, 55, 29, 66, 141, 155, 149, 143, 158, 28.10777 + 155, 156, 156, 155, 155, 149, 147, 153, 151, 145, 145, 143, 145, 139, 145, 135, 28.10778 + 133, 123, 123, 125, 119, 110, 108, 96, 91, 110, 129, 139, 119, 94, 68, 94, 28.10779 + 165, 207, 215, 218, 216, 218, 218, 219, 218, 216, 215, 212, 193, 149, 76, 60, 28.10780 + 15, 35, 71, 76, 84, 71, 68, 63, 71, 81, 81, 98, 79, 79, 63, 74, 28.10781 + 141, 139, 155, 160, 167, 162, 151, 137, 121, 110, 86, 63, 38, 20, 35, 76, 28.10782 + 112, 137, 153, 165, 169, 176, 176, 174, 176, 177, 177, 179, 172, 160, 141, 125, 28.10783 + 200, 207, 55, 94, 79, 43, 38, 23, 20, 23, 35, 20, 23, 52, 63, 68, 28.10784 + 96, 127, 133, 101, 68, 81, 52, 52, 66, 49, 108, 143, 52, 29, 52, 137, 28.10785 + 89, 46, 68, 43, 46, 79, 105, 76, 105, 125, 137, 147, 145, 143, 155, 156, 28.10786 + 112, 23, 49, 192, 101, 26, 89, 192, 60, 52, 41, 32, 38, 38, 41, 66, 28.10787 + 60, 32, 38, 41, 41, 26, 32, 38, 55, 49, 49, 46, 35, 38, 49, 43, 28.10788 + 68, 49, 81, 91, 46, 26, 32, 84, 68, 105, 108, 108, 110, 119, 114, 123, 28.10789 + 119, 119, 131, 133, 127, 129, 137, 137, 135, 135, 143, 135, 137, 137, 137, 141, 28.10790 + 147, 156, 160, 167, 165, 172, 172, 181, 185, 190, 190, 190, 198, 198, 197, 197, 28.10791 + 198, 203, 204, 209, 207, 209, 210, 213, 215, 216, 218, 219, 201, 79, 32, 29, 28.10792 + 86, 49, 43, 66, 49, 63, 76, 49, 49, 18, 35, 141, 155, 155, 139, 155, 28.10793 + 153, 158, 155, 153, 153, 147, 155, 155, 155, 153, 145, 145, 147, 141, 143, 135, 28.10794 + 139, 135, 131, 129, 121, 127, 137, 105, 117, 121, 137, 141, 123, 96, 74, 121, 28.10795 + 185, 212, 219, 218, 218, 218, 219, 219, 216, 215, 210, 206, 172, 123, 43, 20, 28.10796 + 52, 74, 84, 89, 84, 76, 74, 71, 96, 98, 98, 94, 91, 76, 76, 86, 28.10797 + 135, 147, 151, 158, 167, 165, 164, 153, 141, 123, 103, 60, 46, 20, 38, 74, 28.10798 + 105, 131, 158, 167, 176, 174, 179, 174, 179, 176, 181, 177, 169, 160, 137, 137, 28.10799 + 219, 179, 84, 57, 46, 52, 46, 29, 23, 26, 20, 23, 38, 81, 43, 20, 28.10800 + 38, 76, 52, 55, 49, 38, 46, 81, 110, 123, 114, 68, 29, 15, 84, 172, 28.10801 + 38, 41, 55, 86, 57, 55, 108, 110, 89, 91, 123, 145, 145, 143, 181, 147, 28.10802 + 176, 35, 18, 151, 203, 46, 96, 103, 135, 41, 29, 32, 38, 35, 46, 76, 28.10803 + 46, 41, 41, 41, 46, 49, 35, 29, 46, 55, 43, 35, 38, 38, 46, 55, 28.10804 + 41, 60, 84, 89, 55, 26, 38, 68, 60, 110, 110, 105, 114, 127, 123, 103, 28.10805 + 110, 127, 131, 135, 129, 131, 127, 131, 129, 137, 137, 133, 131, 135, 137, 145, 28.10806 + 155, 153, 162, 167, 162, 169, 172, 177, 182, 187, 185, 192, 192, 192, 195, 195, 28.10807 + 198, 203, 203, 203, 206, 210, 212, 209, 213, 213, 218, 219, 221, 201, 76, 41, 28.10808 + 76, 57, 60, 63, 52, 74, 81, 68, 52, 26, 43, 153, 149, 158, 145, 158, 28.10809 + 164, 160, 153, 153, 151, 151, 162, 153, 156, 151, 147, 149, 143, 143, 149, 147, 28.10810 + 139, 137, 141, 135, 129, 129, 131, 117, 121, 129, 137, 139, 117, 112, 89, 143, 28.10811 + 198, 210, 219, 219, 218, 218, 221, 218, 218, 212, 204, 193, 155, 81, 23, 23, 28.10812 + 63, 74, 91, 81, 76, 71, 71, 89, 103, 101, 98, 91, 86, 91, 79, 98, 28.10813 + 141, 133, 139, 156, 167, 169, 167, 162, 143, 145, 119, 84, 52, 15, 38, 71, 28.10814 + 105, 131, 153, 165, 176, 182, 182, 177, 174, 181, 184, 172, 167, 164, 147, 156, 28.10815 + 222, 137, 149, 174, 15, 20, 18, 35, 49, 46, 38, 41, 52, 74, 55, 29, 28.10816 + 43, 101, 57, 41, 55, 57, 60, 41, 52, 41, 35, 35, 35, 26, 89, 160, 28.10817 + 76, 23, 46, 86, 76, 68, 63, 119, 91, 79, 94, 137, 160, 139, 156, 151, 28.10818 + 164, 121, 38, 60, 171, 160, 129, 55, 198, 43, 41, 32, 46, 43, 52, 66, 28.10819 + 41, 43, 41, 52, 52, 43, 52, 55, 55, 60, 46, 43, 46, 49, 55, 68, 28.10820 + 46, 66, 91, 98, 81, 41, 23, 49, 68, 112, 108, 114, 108, 114, 108, 105, 28.10821 + 129, 123, 127, 131, 131, 131, 129, 133, 137, 137, 133, 135, 133, 143, 145, 145, 28.10822 + 155, 156, 165, 165, 165, 174, 171, 171, 181, 182, 185, 182, 187, 193, 195, 197, 28.10823 + 200, 200, 201, 206, 209, 207, 212, 213, 215, 216, 215, 218, 221, 222, 193, 49, 28.10824 + 43, 52, 29, 49, 35, 55, 57, 68, 71, 23, 43, 171, 143, 155, 143, 156, 28.10825 + 155, 156, 156, 156, 155, 149, 155, 149, 149, 151, 147, 145, 145, 149, 149, 143, 28.10826 + 139, 141, 139, 137, 135, 137, 129, 131, 125, 131, 133, 137, 131, 110, 108, 165, 28.10827 + 204, 216, 219, 221, 218, 219, 216, 221, 215, 210, 198, 176, 139, 57, 38, 41, 28.10828 + 79, 81, 79, 86, 94, 84, 76, 96, 103, 112, 103, 89, 89, 76, 81, 89, 28.10829 + 108, 114, 135, 149, 155, 160, 167, 169, 158, 160, 137, 103, 55, 20, 32, 81, 28.10830 + 105, 131, 153, 167, 182, 176, 181, 182, 182, 177, 184, 177, 171, 162, 145, 137, 28.10831 + 215, 103, 74, 207, 15, 20, 26, 32, 41, 43, 26, 38, 79, 63, 60, 41, 28.10832 + 41, 46, 38, 32, 66, 94, 68, 49, 38, 26, 26, 57, 43, 29, 41, 86, 28.10833 + 127, 38, 41, 66, 57, 63, 68, 76, 127, 98, 76, 127, 156, 143, 145, 137, 28.10834 + 112, 141, 125, 96, 129, 165, 94, 35, 185, 86, 35, 41, 32, 29, 46, 63, 28.10835 + 60, 46, 38, 49, 41, 29, 29, 43, 52, 63, 35, 52, 35, 38, 41, 60, 28.10836 + 55, 66, 101, 103, 86, 46, 18, 49, 57, 119, 110, 112, 110, 108, 123, 125, 28.10837 + 127, 123, 129, 131, 131, 135, 133, 135, 145, 129, 137, 141, 137, 141, 149, 147, 28.10838 + 151, 162, 164, 162, 167, 169, 171, 172, 182, 176, 179, 182, 184, 184, 190, 189, 28.10839 + 195, 198, 198, 203, 206, 210, 209, 209, 210, 215, 218, 218, 219, 222, 224, 177, 28.10840 + 32, 41, 18, 29, 41, 68, 43, 57, 63, 29, 57, 179, 143, 143, 149, 160, 28.10841 + 156, 160, 158, 160, 155, 151, 151, 149, 155, 153, 147, 151, 147, 149, 147, 141, 28.10842 + 141, 141, 131, 139, 133, 135, 131, 135, 127, 131, 141, 139, 127, 114, 127, 184, 28.10843 + 209, 219, 219, 219, 218, 221, 221, 221, 215, 206, 187, 155, 119, 57, 46, 74, 28.10844 + 94, 94, 79, 86, 86, 81, 89, 103, 114, 110, 101, 94, 86, 81, 96, 101, 28.10845 + 66, 76, 117, 137, 151, 167, 176, 177, 174, 171, 147, 117, 63, 18, 38, 79, 28.10846 + 105, 135, 158, 167, 181, 181, 181, 179, 176, 182, 187, 174, 172, 160, 145, 137, 28.10847 + 169, 114, 55, 91, 20, 18, 38, 32, 26, 38, 35, 29, 66, 41, 46, 55, 28.10848 + 23, 41, 29, 26, 76, 105, 57, 57, 43, 20, 29, 49, 94, 32, 23, 55, 28.10849 + 121, 110, 32, 49, 76, 74, 66, 66, 108, 127, 86, 123, 167, 137, 143, 151, 28.10850 + 123, 158, 108, 108, 71, 110, 190, 26, 121, 172, 15, 20, 29, 20, 49, 63, 28.10851 + 46, 41, 41, 26, 46, 32, 35, 35, 55, 68, 43, 38, 32, 23, 43, 68, 28.10852 + 66, 68, 98, 117, 103, 46, 32, 29, 79, 103, 101, 105, 101, 117, 129, 125, 28.10853 + 119, 131, 131, 135, 137, 133, 139, 133, 131, 131, 129, 133, 143, 139, 141, 149, 28.10854 + 149, 151, 164, 160, 160, 165, 167, 172, 177, 182, 176, 184, 184, 185, 189, 190, 28.10855 + 193, 197, 201, 203, 207, 209, 209, 212, 213, 215, 215, 218, 221, 221, 222, 224, 28.10856 + 137, 46, 26, 20, 29, 57, 29, 43, 43, 18, 49, 182, 143, 149, 153, 156, 28.10857 + 156, 156, 158, 156, 156, 153, 155, 149, 147, 155, 151, 149, 147, 149, 149, 145, 28.10858 + 141, 145, 139, 143, 133, 135, 133, 135, 129, 135, 143, 139, 131, 121, 135, 198, 28.10859 + 213, 219, 221, 219, 221, 219, 218, 218, 212, 200, 167, 133, 81, 55, 68, 79, 28.10860 + 94, 84, 79, 84, 84, 94, 103, 108, 110, 110, 94, 86, 81, 79, 94, 101, 28.10861 + 38, 43, 101, 127, 147, 162, 179, 177, 177, 167, 149, 131, 84, 18, 35, 74, 28.10862 + 101, 137, 158, 169, 182, 181, 177, 179, 182, 182, 184, 177, 174, 156, 160, 141, 28.10863 + 203, 131, 68, 52, 23, 23, 23, 23, 26, 43, 32, 55, 76, 35, 52, 41, 28.10864 + 41, 26, 32, 35, 98, 112, 35, 76, 60, 20, 26, 43, 129, 38, 35, 35, 28.10865 + 96, 86, 105, 35, 63, 74, 71, 71, 60, 127, 94, 131, 131, 127, 129, 164, 28.10866 + 135, 179, 155, 145, 46, 52, 207, 86, 81, 216, 32, 18, 29, 32, 41, 57, 28.10867 + 55, 46, 41, 41, 46, 29, 41, 49, 55, 60, 41, 52, 41, 23, 43, 66, 28.10868 + 49, 71, 103, 114, 96, 60, 23, 35, 79, 89, 89, 89, 125, 125, 135, 125, 28.10869 + 121, 127, 135, 129, 135, 127, 137, 131, 137, 131, 133, 137, 137, 141, 141, 147, 28.10870 + 153, 153, 158, 164, 158, 162, 165, 167, 171, 179, 174, 182, 187, 184, 187, 197, 28.10871 + 193, 197, 195, 201, 203, 203, 209, 207, 212, 213, 212, 218, 218, 218, 224, 225, 28.10872 + 218, 81, 35, 26, 29, 52, 23, 41, 52, 20, 71, 177, 139, 143, 149, 155, 28.10873 + 153, 156, 158, 155, 153, 153, 153, 158, 156, 151, 155, 149, 151, 155, 149, 143, 28.10874 + 137, 147, 143, 137, 137, 137, 139, 133, 133, 139, 145, 147, 143, 135, 156, 201, 28.10875 + 216, 224, 221, 218, 219, 219, 219, 216, 212, 197, 155, 103, 57, 57, 76, 96, 28.10876 + 86, 81, 98, 86, 96, 105, 110, 119, 112, 96, 89, 91, 84, 101, 96, 103, 28.10877 + 18, 29, 76, 121, 139, 167, 179, 179, 182, 172, 158, 137, 84, 20, 29, 76, 28.10878 + 105, 139, 160, 169, 174, 181, 185, 182, 181, 184, 184, 176, 171, 165, 147, 137, 28.10879 + 219, 112, 60, 101, 18, 15, 35, 23, 23, 46, 32, 84, 41, 41, 32, 71, 28.10880 + 38, 38, 20, 35, 105, 112, 35, 55, 52, 26, 23, 20, 103, 81, 32, 26, 28.10881 + 114, 52, 84, 98, 32, 101, 98, 86, 57, 94, 103, 129, 94, 112, 119, 149, 28.10882 + 131, 181, 174, 123, 26, 20, 86, 153, 79, 219, 29, 15, 15, 18, 43, 49, 28.10883 + 57, 55, 32, 38, 35, 26, 23, 32, 66, 60, 43, 43, 57, 26, 23, 41, 28.10884 + 35, 86, 110, 123, 110, 71, 9, 15, 63, 98, 96, 110, 112, 123, 131, 127, 28.10885 + 133, 127, 133, 129, 127, 131, 135, 137, 139, 137, 139, 133, 133, 137, 141, 147, 28.10886 + 153, 153, 156, 158, 160, 165, 164, 167, 172, 171, 182, 179, 184, 181, 189, 190, 28.10887 + 193, 197, 195, 203, 203, 206, 204, 209, 209, 213, 212, 215, 218, 219, 219, 227, 28.10888 + 227, 192, 35, 18, 23, 49, 23, 32, 32, 15, 91, 171, 145, 147, 151, 158, 28.10889 + 162, 151, 156, 153, 153, 153, 153, 147, 151, 155, 149, 147, 153, 147, 147, 145, 28.10890 + 143, 153, 143, 145, 135, 143, 133, 133, 131, 135, 135, 141, 141, 139, 176, 206, 28.10891 + 218, 222, 221, 218, 221, 218, 218, 215, 210, 189, 139, 76, 60, 68, 76, 91, 28.10892 + 79, 89, 96, 86, 96, 108, 110, 108, 91, 84, 94, 89, 91, 96, 101, 98, 28.10893 + 12, 20, 35, 76, 123, 164, 185, 184, 184, 176, 160, 145, 96, 18, 23, 66, 28.10894 + 105, 139, 156, 169, 177, 182, 181, 179, 181, 185, 184, 182, 172, 167, 147, 129, 28.10895 + 135, 162, 68, 129, 15, 15, 46, 32, 26, 35, 41, 84, 43, 26, 38, 41, 28.10896 + 35, 35, 23, 35, 119, 123, 23, 41, 49, 29, 23, 15, 49, 98, 66, 18, 28.10897 + 105, 60, 46, 105, 86, 74, 105, 110, 94, 55, 84, 127, 94, 119, 143, 112, 28.10898 + 141, 158, 182, 129, 43, 12, 23, 149, 76, 227, 38, 41, 29, 20, 49, 60, 28.10899 + 46, 63, 32, 35, 26, 26, 38, 41, 38, 91, 32, 41, 35, 29, 41, 41, 28.10900 + 55, 94, 114, 112, 96, 71, 18, 20, 55, 103, 110, 101, 121, 125, 131, 121, 28.10901 + 129, 125, 123, 129, 135, 139, 135, 129, 135, 137, 137, 147, 137, 143, 141, 149, 28.10902 + 143, 147, 151, 156, 165, 164, 169, 171, 167, 172, 179, 181, 185, 182, 189, 187, 28.10903 + 192, 198, 200, 200, 203, 203, 207, 209, 209, 212, 213, 215, 213, 218, 222, 227, 28.10904 + 227, 222, 108, 26, 18, 29, 15, 41, 18, 12, 105, 158, 139, 145, 156, 162, 28.10905 + 153, 155, 153, 153, 153, 151, 153, 151, 145, 149, 147, 145, 151, 147, 149, 147, 28.10906 + 147, 149, 145, 143, 139, 135, 137, 129, 123, 135, 145, 156, 169, 171, 190, 206, 28.10907 + 219, 222, 219, 222, 221, 216, 215, 215, 206, 171, 108, 66, 71, 76, 86, 76, 28.10908 + 91, 89, 103, 105, 101, 112, 98, 98, 76, 79, 86, 98, 94, 101, 105, 108, 28.10909 + 6, 9, 32, 46, 112, 160, 182, 182, 184, 176, 167, 139, 103, 15, 15, 52, 28.10910 + 114, 139, 156, 165, 177, 184, 182, 179, 177, 179, 182, 185, 172, 167, 151, 135, 28.10911 + 98, 212, 63, 52, 23, 26, 29, 20, 38, 43, 74, 41, 26, 29, 41, 35, 28.10912 + 29, 35, 32, 29, 125, 123, 26, 35, 84, 52, 23, 12, 29, 26, 98, 89, 28.10913 + 57, 71, 29, 79, 91, 86, 98, 127, 125, 119, 57, 94, 89, 110, 160, 129, 28.10914 + 164, 165, 158, 52, 74, 12, 38, 145, 133, 225, 71, 12, 26, 20, 46, 63, 28.10915 + 43, 71, 43, 26, 38, 29, 41, 41, 49, 60, 38, 43, 41, 26, 32, 32, 28.10916 + 79, 84, 94, 110, 101, 86, 32, 18, 63, 94, 114, 114, 119, 119, 123, 119, 28.10917 + 127, 131, 121, 119, 131, 129, 145, 135, 143, 135, 139, 133, 149, 147, 149, 149, 28.10918 + 143, 149, 155, 155, 158, 167, 167, 162, 171, 174, 179, 177, 179, 184, 189, 185, 28.10919 + 192, 197, 197, 200, 204, 203, 207, 207, 210, 212, 215, 213, 216, 219, 222, 221, 28.10920 + 224, 227, 200, 26, 18, 26, 12, 29, 9, 18, 139, 158, 133, 149, 156, 156, 28.10921 + 151, 153, 153, 155, 156, 153, 156, 155, 147, 153, 149, 147, 145, 141, 149, 149, 28.10922 + 145, 141, 143, 141, 133, 139, 127, 127, 135, 137, 158, 171, 185, 195, 207, 213, 28.10923 + 219, 221, 221, 219, 219, 219, 215, 212, 195, 153, 94, 68, 81, 91, 86, 79, 28.10924 + 84, 96, 101, 108, 110, 114, 101, 84, 81, 86, 76, 98, 98, 103, 101, 96, 28.10925 + 20, 20, 26, 43, 117, 164, 181, 185, 187, 184, 174, 153, 89, 12, 20, 46, 28.10926 + 103, 143, 155, 167, 182, 182, 182, 184, 179, 182, 184, 181, 177, 167, 156, 133, 28.10927 + 96, 127, 121, 29, 23, 29, 38, 26, 35, 52, 52, 49, 35, 41, 41, 43, 28.10928 + 23, 35, 26, 43, 143, 125, 23, 32, 98, 41, 18, 23, 68, 26, 55, 94, 28.10929 + 98, 98, 26, 74, 49, 112, 68, 123, 121, 114, 76, 79, 79, 91, 162, 176, 28.10930 + 158, 169, 164, 49, 26, 81, 29, 114, 182, 219, 41, 12, 15, 12, 63, 46, 28.10931 + 38, 86, 32, 32, 41, 20, 26, 43, 38, 60, 38, 32, 49, 57, 41, 38, 28.10932 + 81, 103, 108, 94, 86, 81, 35, 41, 74, 89, 117, 114, 123, 119, 119, 112, 28.10933 + 127, 123, 129, 129, 139, 133, 137, 131, 135, 137, 133, 139, 139, 149, 141, 139, 28.10934 + 151, 149, 151, 155, 151, 160, 160, 162, 167, 169, 176, 176, 179, 187, 181, 189, 28.10935 + 193, 193, 197, 198, 204, 203, 207, 209, 209, 215, 213, 218, 215, 216, 218, 222, 28.10936 + 224, 225, 224, 98, 18, 23, 18, 20, 9, 18, 156, 155, 137, 147, 162, 156, 28.10937 + 153, 149, 160, 156, 153, 156, 158, 149, 149, 149, 155, 151, 141, 147, 141, 147, 28.10938 + 145, 137, 141, 141, 135, 129, 129, 125, 131, 160, 177, 190, 198, 204, 210, 216, 28.10939 + 222, 224, 222, 221, 222, 215, 218, 206, 182, 127, 81, 86, 84, 94, 86, 81, 28.10940 + 94, 94, 103, 110, 110, 108, 98, 86, 81, 94, 94, 110, 103, 98, 91, 105, 28.10941 + 12, 20, 26, 41, 101, 160, 177, 187, 189, 187, 174, 147, 79, 20, 15, 57, 28.10942 + 108, 141, 156, 164, 177, 187, 185, 184, 181, 182, 184, 179, 177, 169, 156, 143, 28.10943 + 110, 103, 190, 32, 38, 35, 35, 35, 52, 60, 32, 43, 32, 32, 43, 35, 28.10944 + 32, 41, 18, 76, 164, 117, 18, 20, 68, 63, 12, 20, 49, 12, 49, 43, 28.10945 + 43, 74, 26, 79, 49, 89, 86, 110, 108, 105, 66, 98, 68, 103, 158, 160, 28.10946 + 162, 133, 182, 108, 15, 63, 20, 108, 200, 207, 32, 15, 26, 18, 71, 71, 28.10947 + 43, 105, 38, 43, 43, 41, 20, 29, 52, 46, 29, 20, 43, 26, 49, 55, 28.10948 + 89, 108, 89, 89, 101, 91, 29, 32, 76, 76, 108, 114, 131, 129, 125, 119, 28.10949 + 127, 129, 133, 135, 131, 131, 133, 129, 135, 137, 139, 135, 139, 137, 143, 145, 28.10950 + 147, 153, 153, 158, 155, 156, 162, 164, 165, 165, 181, 176, 184, 181, 182, 192, 28.10951 + 189, 193, 195, 197, 200, 206, 207, 209, 209, 213, 212, 215, 216, 218, 219, 222, 28.10952 + 224, 225, 225, 189, 12, 12, 9, 18, 6, 26, 155, 160, 153, 155, 158, 160, 28.10953 + 160, 164, 149, 156, 155, 155, 155, 151, 153, 153, 145, 147, 147, 145, 147, 145, 28.10954 + 143, 141, 137, 141, 133, 129, 129, 127, 155, 181, 195, 204, 201, 209, 213, 219, 28.10955 + 221, 221, 222, 219, 219, 215, 210, 197, 156, 96, 86, 89, 84, 89, 86, 96, 28.10956 + 103, 103, 108, 110, 110, 96, 81, 76, 79, 86, 91, 108, 105, 89, 105, 96, 28.10957 + 12, 12, 32, 57, 101, 155, 171, 185, 187, 182, 169, 143, 79, 9, 9, 43, 28.10958 + 103, 143, 155, 171, 179, 182, 181, 179, 182, 187, 189, 185, 177, 167, 156, 135, 28.10959 + 151, 135, 114, 41, 41, 32, 20, 35, 60, 32, 35, 41, 23, 18, 26, 41, 28.10960 + 35, 38, 38, 112, 162, 103, 15, 18, 57, 74, 23, 38, 57, 38, 55, 49, 28.10961 + 18, 35, 57, 41, 86, 63, 117, 94, 129, 94, 94, 84, 52, 105, 153, 158, 28.10962 + 114, 143, 174, 125, 41, 35, 20, 84, 200, 172, 29, 12, 20, 23, 86, 81, 28.10963 + 46, 81, 26, 43, 38, 43, 35, 32, 60, 55, 41, 23, 26, 46, 29, 76, 28.10964 + 84, 79, 86, 112, 117, 89, 35, 32, 101, 89, 108, 121, 123, 121, 117, 121, 28.10965 + 131, 129, 129, 133, 131, 135, 125, 129, 129, 135, 129, 131, 143, 151, 145, 145, 28.10966 + 143, 147, 149, 155, 151, 153, 160, 164, 167, 171, 174, 177, 172, 181, 185, 187, 28.10967 + 187, 192, 197, 198, 200, 203, 203, 204, 210, 212, 212, 215, 218, 216, 218, 221, 28.10968 + 222, 225, 227, 221, 55, 15, 12, 12, 9, 35, 151, 156, 149, 147, 158, 153, 28.10969 + 156, 162, 156, 158, 151, 153, 151, 149, 151, 151, 149, 149, 141, 141, 143, 141, 28.10970 + 141, 143, 135, 135, 127, 137, 123, 141, 184, 203, 209, 209, 209, 210, 213, 221, 28.10971 + 225, 224, 222, 221, 219, 213, 206, 177, 137, 86, 81, 86, 81, 91, 84, 96, 28.10972 + 101, 108, 105, 117, 108, 86, 89, 84, 89, 94, 91, 105, 101, 96, 121, 114, 28.10973 + 12, 12, 6, 29, 94, 151, 167, 179, 182, 185, 172, 149, 94, 15, 15, 43, 28.10974 + 101, 133, 155, 169, 181, 185, 181, 185, 184, 182, 185, 184, 184, 172, 153, 135, 28.10975 + 160, 117, 123, 26, 49, 32, 23, 60, 38, 32, 29, 41, 35, 23, 49, 20, 28.10976 + 20, 23, 46, 137, 151, 84, 18, 35, 26, 63, 26, 52, 46, 41, 43, 52, 28.10977 + 29, 35, 35, 29, 74, 38, 112, 101, 125, 103, 81, 91, 35, 103, 167, 143, 28.10978 + 114, 171, 174, 137, 127, 38, 29, 108, 189, 86, 117, 23, 26, 20, 76, 68, 28.10979 + 57, 68, 38, 43, 23, 35, 35, 29, 43, 41, 49, 38, 32, 49, 35, 66, 28.10980 + 84, 96, 112, 114, 114, 91, 20, 23, 91, 101, 103, 125, 127, 125, 125, 129, 28.10981 + 131, 127, 129, 133, 129, 131, 133, 125, 129, 127, 127, 135, 141, 141, 139, 145, 28.10982 + 139, 147, 149, 151, 156, 153, 160, 162, 164, 169, 167, 172, 177, 181, 181, 181, 28.10983 + 189, 195, 193, 193, 200, 203, 203, 207, 210, 212, 212, 215, 216, 216, 218, 219, 28.10984 + 219, 224, 224, 227, 167, 23, 12, 6, 6, 43, 153, 143, 143, 158, 160, 158, 28.10985 + 158, 158, 156, 156, 158, 158, 151, 153, 147, 149, 149, 143, 145, 139, 145, 143, 28.10986 + 135, 137, 139, 139, 139, 125, 125, 164, 201, 213, 219, 216, 210, 210, 213, 219, 28.10987 + 225, 222, 222, 221, 219, 210, 195, 158, 110, 86, 86, 86, 81, 79, 96, 94, 28.10988 + 101, 110, 105, 110, 98, 91, 84, 84, 94, 103, 101, 105, 101, 91, 105, 103, 28.10989 + 9, 18, 12, 23, 89, 145, 167, 179, 187, 185, 176, 153, 89, 12, 15, 35, 28.10990 + 103, 131, 158, 171, 179, 182, 185, 185, 182, 187, 190, 181, 174, 169, 153, 135, 28.10991 + 143, 141, 29, 20, 43, 20, 38, 49, 29, 20, 23, 29, 20, 15, 32, 20, 28.10992 + 20, 20, 125, 143, 149, 105, 20, 18, 23, 43, 46, 63, 38, 46, 18, 35, 28.10993 + 29, 43, 29, 35, 68, 41, 103, 76, 149, 127, 49, 49, 43, 74, 176, 151, 28.10994 + 149, 171, 108, 57, 167, 121, 112, 182, 164, 84, 209, 60, 20, 29, 68, 63, 28.10995 + 55, 43, 41, 49, 35, 52, 35, 32, 38, 35, 38, 46, 49, 41, 60, 84, 28.10996 + 105, 110, 114, 129, 108, 94, 20, 35, 76, 98, 105, 125, 123, 127, 131, 131, 28.10997 + 129, 131, 135, 127, 127, 131, 129, 133, 133, 127, 129, 135, 137, 141, 143, 141, 28.10998 + 143, 145, 149, 151, 153, 155, 160, 165, 164, 167, 167, 165, 176, 179, 182, 185, 28.10999 + 185, 193, 193, 195, 198, 201, 204, 207, 209, 210, 215, 216, 213, 219, 218, 221, 28.11000 + 219, 221, 227, 227, 209, 15, 6, 6, 6, 74, 147, 145, 139, 171, 158, 160, 28.11001 + 155, 153, 156, 151, 160, 149, 153, 153, 145, 147, 147, 151, 145, 143, 141, 141, 28.11002 + 135, 135, 139, 127, 135, 125, 131, 182, 212, 219, 222, 222, 216, 212, 215, 221, 28.11003 + 224, 222, 224, 221, 216, 206, 184, 137, 98, 86, 84, 84, 79, 89, 86, 103, 28.11004 + 105, 105, 110, 110, 91, 81, 79, 79, 96, 101, 110, 108, 101, 103, 101, 101, 28.11005 + 9, 15, 9, 23, 71, 135, 167, 181, 187, 184, 174, 156, 98, 15, 12, 32, 28.11006 + 105, 135, 158, 167, 182, 184, 184, 184, 182, 184, 187, 187, 177, 167, 158, 137, 28.11007 + 123, 129, 32, 29, 35, 46, 55, 20, 26, 18, 23, 23, 29, 38, 32, 23, 28.11008 + 26, 81, 156, 76, 127, 55, 15, 23, 29, 29, 49, 74, 18, 49, 9, 20, 28.11009 + 32, 43, 46, 23, 57, 55, 41, 41, 119, 147, 60, 60, 84, 101, 153, 155, 28.11010 + 158, 169, 165, 63, 149, 55, 121, 181, 172, 165, 190, 32, 32, 32, 68, 38, 28.11011 + 46, 29, 60, 46, 43, 66, 29, 41, 35, 29, 43, 55, 57, 43, 74, 105, 28.11012 + 114, 117, 117, 112, 117, 79, 26, 68, 91, 105, 110, 114, 127, 119, 133, 135, 28.11013 + 137, 125, 133, 131, 131, 129, 129, 133, 131, 129, 131, 131, 133, 137, 139, 141, 28.11014 + 143, 143, 147, 149, 156, 158, 160, 162, 165, 171, 164, 167, 179, 181, 174, 187, 28.11015 + 187, 192, 193, 195, 198, 200, 201, 206, 209, 213, 212, 215, 213, 218, 216, 219, 28.11016 + 219, 221, 222, 227, 222, 71, 15, 6, 9, 89, 139, 145, 145, 169, 153, 160, 28.11017 + 155, 156, 145, 151, 155, 153, 151, 153, 147, 147, 149, 149, 141, 139, 149, 137, 28.11018 + 141, 135, 131, 133, 123, 123, 133, 193, 216, 224, 225, 222, 216, 216, 219, 222, 28.11019 + 224, 224, 224, 219, 213, 197, 162, 119, 91, 86, 84, 86, 68, 96, 84, 105, 28.11020 + 110, 114, 108, 96, 94, 86, 81, 94, 108, 101, 103, 105, 110, 98, 112, 81, 28.11021 + 6, 9, 6, 26, 71, 133, 169, 184, 192, 189, 172, 156, 110, 23, 15, 35, 28.11022 + 96, 137, 151, 172, 181, 179, 181, 177, 184, 182, 182, 185, 177, 171, 155, 139, 28.11023 + 123, 119, 41, 38, 63, 38, 38, 26, 35, 57, 26, 23, 32, 26, 18, 26, 28.11024 + 98, 133, 60, 57, 117, 55, 35, 29, 23, 41, 66, 66, 20, 41, 20, 35, 28.11025 + 32, 46, 49, 18, 35, 68, 35, 55, 135, 125, 117, 81, 114, 101, 149, 147, 28.11026 + 164, 143, 155, 149, 141, 131, 203, 179, 57, 23, 23, 20, 74, 46, 71, 32, 28.11027 + 49, 43, 43, 32, 35, 46, 32, 57, 35, 35, 32, 38, 71, 63, 76, 114, 28.11028 + 114, 119, 117, 108, 108, 84, 23, 79, 86, 98, 112, 114, 121, 125, 129, 131, 28.11029 + 131, 131, 131, 129, 133, 135, 133, 133, 137, 141, 135, 129, 139, 139, 143, 141, 28.11030 + 143, 143, 147, 149, 156, 153, 158, 160, 160, 162, 164, 167, 169, 177, 177, 185, 28.11031 + 189, 187, 192, 197, 203, 203, 203, 206, 209, 212, 212, 212, 212, 213, 215, 216, 28.11032 + 221, 218, 221, 224, 224, 164, 9, 6, 18, 121, 131, 145, 151, 167, 155, 153, 28.11033 + 156, 153, 155, 149, 155, 151, 143, 149, 147, 149, 151, 145, 147, 145, 141, 141, 28.11034 + 139, 139, 131, 133, 123, 123, 145, 201, 218, 222, 222, 221, 213, 215, 221, 222, 28.11035 + 222, 221, 219, 215, 206, 184, 147, 108, 98, 96, 94, 86, 81, 89, 96, 101, 28.11036 + 114, 110, 101, 91, 81, 86, 89, 103, 101, 108, 108, 108, 91, 103, 84, 91, 28.11037 + 9, 15, 6, 20, 79, 139, 165, 181, 190, 184, 174, 158, 121, 20, 12, 26, 28.11038 + 91, 135, 162, 171, 182, 182, 181, 182, 181, 184, 184, 184, 177, 165, 156, 145, 28.11039 + 117, 110, 57, 49, 63, 26, 26, 26, 32, 29, 29, 29, 32, 29, 46, 49, 28.11040 + 94, 32, 23, 98, 84, 86, 43, 35, 41, 35, 84, 63, 35, 26, 35, 29, 28.11041 + 23, 43, 74, 18, 29, 101, 32, 38, 79, 81, 123, 139, 141, 121, 143, 156, 28.11042 + 160, 74, 84, 141, 145, 172, 195, 147, 89, 29, 26, 94, 35, 60, 46, 35, 28.11043 + 74, 23, 49, 52, 46, 46, 20, 52, 32, 35, 32, 32, 55, 71, 91, 112, 28.11044 + 117, 112, 117, 121, 110, 57, 20, 81, 81, 96, 110, 121, 119, 125, 119, 125, 28.11045 + 135, 133, 133, 141, 127, 127, 137, 133, 133, 129, 131, 131, 129, 133, 139, 131, 28.11046 + 141, 143, 141, 143, 151, 151, 160, 158, 160, 164, 164, 169, 174, 174, 179, 182, 28.11047 + 182, 185, 195, 197, 198, 201, 201, 203, 207, 213, 212, 213, 212, 215, 216, 216, 28.11048 + 218, 219, 221, 222, 225, 204, 3, 9, 9, 125, 131, 137, 156, 153, 160, 153, 28.11049 + 158, 158, 153, 156, 151, 145, 155, 151, 145, 149, 151, 149, 147, 147, 143, 141, 28.11050 + 141, 135, 137, 129, 127, 133, 153, 204, 218, 222, 221, 215, 212, 215, 219, 224, 28.11051 + 224, 224, 219, 212, 195, 162, 137, 108, 98, 98, 103, 94, 96, 91, 89, 112, 28.11052 + 112, 112, 101, 105, 94, 84, 86, 91, 101, 96, 103, 98, 89, 94, 84, 79, 28.11053 + 12, 15, 15, 20, 57, 141, 165, 181, 187, 184, 176, 160, 127, 41, 12, 43, 28.11054 + 94, 129, 153, 174, 177, 177, 174, 174, 176, 174, 174, 176, 172, 164, 153, 139, 28.11055 + 129, 133, 66, 26, 49, 29, 35, 35, 20, 23, 41, 38, 32, 49, 98, 49, 28.11056 + 41, 20, 49, 105, 74, 96, 46, 49, 18, 43, 84, 60, 43, 26, 32, 18, 28.11057 + 29, 55, 35, 35, 32, 98, 55, 32, 29, 41, 63, 129, 155, 139, 139, 145, 28.11058 + 135, 112, 81, 108, 123, 169, 129, 182, 193, 153, 119, 119, 41, 79, 41, 35, 28.11059 + 52, 38, 43, 84, 38, 43, 29, 46, 35, 35, 29, 52, 49, 71, 94, 112, 28.11060 + 121, 110, 114, 117, 119, 38, 26, 76, 94, 105, 117, 119, 127, 125, 123, 125, 28.11061 + 133, 131, 141, 139, 137, 127, 133, 127, 121, 127, 127, 131, 135, 137, 137, 141, 28.11062 + 139, 141, 141, 143, 145, 153, 151, 158, 164, 158, 162, 165, 169, 174, 176, 172, 28.11063 + 181, 190, 195, 200, 198, 200, 203, 204, 207, 210, 209, 212, 213, 215, 215, 216, 28.11064 + 219, 219, 219, 221, 224, 218, 52, 6, 12, 133, 147, 143, 153, 160, 167, 155, 28.11065 + 149, 155, 149, 149, 151, 145, 158, 151, 149, 149, 149, 149, 149, 141, 149, 135, 28.11066 + 137, 141, 127, 131, 125, 133, 158, 209, 219, 222, 218, 213, 210, 213, 221, 224, 28.11067 + 222, 221, 216, 209, 181, 145, 117, 112, 112, 96, 89, 91, 86, 98, 91, 105, 28.11068 + 110, 112, 96, 84, 79, 84, 96, 103, 98, 108, 91, 94, 101, 86, 81, 74, 28.11069 + 9, 6, 18, 15, 60, 119, 164, 182, 185, 185, 177, 160, 129, 35, 9, 35, 28.11070 + 86, 129, 155, 171, 177, 182, 177, 177, 176, 177, 181, 181, 174, 164, 155, 133, 28.11071 + 137, 153, 49, 76, 35, 23, 29, 23, 26, 26, 29, 35, 26, 46, 68, 23, 28.11072 + 35, 35, 38, 98, 91, 86, 46, 43, 38, 52, 23, 43, 46, 46, 29, 32, 28.11073 + 38, 32, 71, 46, 63, 105, 35, 43, 15, 26, 57, 127, 156, 149, 141, 156, 28.11074 + 133, 101, 121, 18, 20, 43, 89, 52, 84, 66, 149, 151, 149, 141, 117, 110, 28.11075 + 103, 91, 105, 46, 46, 26, 26, 46, 32, 29, 26, 57, 66, 79, 103, 117, 28.11076 + 112, 114, 121, 114, 117, 63, 32, 76, 105, 110, 112, 117, 127, 129, 125, 119, 28.11077 + 125, 133, 139, 133, 129, 137, 131, 131, 121, 127, 129, 131, 135, 139, 141, 137, 28.11078 + 137, 137, 145, 153, 147, 155, 156, 156, 158, 164, 162, 165, 169, 174, 171, 176, 28.11079 + 189, 192, 189, 197, 197, 200, 201, 204, 204, 209, 212, 210, 209, 215, 216, 216, 28.11080 + 218, 219, 221, 222, 221, 222, 125, 9, 12, 133, 145, 145, 149, 158, 162, 155, 28.11081 + 153, 151, 149, 151, 155, 149, 145, 151, 149, 147, 153, 149, 155, 149, 147, 137, 28.11082 + 131, 127, 131, 135, 131, 131, 169, 210, 218, 221, 216, 213, 210, 215, 221, 224, 28.11083 + 224, 219, 216, 198, 162, 127, 114, 114, 112, 101, 94, 96, 89, 89, 101, 110, 28.11084 + 105, 105, 79, 79, 81, 91, 86, 108, 103, 96, 96, 89, 94, 79, 96, 91, 28.11085 + 12, 9, 9, 20, 66, 119, 165, 176, 190, 189, 181, 167, 131, 43, 23, 41, 28.11086 + 94, 129, 156, 167, 177, 177, 185, 181, 182, 182, 185, 179, 181, 171, 155, 137, 28.11087 + 153, 108, 46, 60, 29, 41, 20, 55, 29, 38, 41, 35, 29, 35, 38, 41, 28.11088 + 55, 43, 32, 76, 86, 68, 38, 41, 63, 35, 20, 32, 55, 46, 35, 26, 28.11089 + 18, 46, 52, 23, 86, 112, 20, 71, 12, 49, 57, 103, 151, 86, 155, 117, 28.11090 + 114, 145, 105, 76, 12, 23, 135, 18, 29, 76, 18, 15, 74, 96, 57, 129, 28.11091 + 182, 119, 108, 49, 60, 41, 57, 41, 23, 41, 41, 60, 74, 84, 105, 117, 28.11092 + 112, 123, 119, 123, 110, 60, 43, 79, 101, 108, 127, 117, 127, 131, 129, 127, 28.11093 + 135, 131, 137, 133, 133, 127, 129, 131, 129, 127, 129, 131, 131, 125, 137, 139, 28.11094 + 141, 139, 145, 141, 147, 153, 153, 153, 158, 156, 158, 164, 169, 176, 171, 176, 28.11095 + 187, 187, 189, 192, 195, 198, 200, 203, 203, 207, 210, 210, 212, 215, 213, 215, 28.11096 + 216, 218, 218, 221, 221, 224, 189, 6, 26, 137, 145, 147, 149, 156, 156, 164, 28.11097 + 155, 153, 149, 153, 151, 145, 149, 145, 145, 151, 151, 149, 145, 149, 143, 133, 28.11098 + 133, 139, 141, 139, 129, 131, 177, 207, 218, 224, 216, 210, 210, 213, 222, 225, 28.11099 + 224, 216, 207, 189, 143, 117, 105, 110, 110, 98, 98, 81, 86, 98, 101, 108, 28.11100 + 101, 98, 84, 79, 71, 91, 101, 105, 105, 86, 91, 96, 81, 81, 94, 89, 28.11101 + 9, 12, 18, 18, 29, 105, 158, 174, 187, 187, 187, 169, 125, 63, 18, 60, 28.11102 + 86, 135, 153, 169, 174, 182, 177, 184, 184, 184, 185, 182, 181, 171, 158, 137, 28.11103 + 158, 108, 38, 26, 29, 41, 32, 32, 32, 32, 38, 32, 32, 46, 38, 60, 28.11104 + 41, 35, 49, 66, 68, 46, 38, 43, 55, 32, 38, 43, 66, 26, 20, 20, 28.11105 + 18, 52, 23, 26, 94, 105, 18, 32, 86, 57, 84, 101, 133, 101, 143, 143, 28.11106 + 105, 133, 133, 153, 23, 26, 135, 18, 18, 63, 15, 20, 55, 49, 46, 71, 28.11107 + 79, 43, 108, 137, 57, 43, 41, 43, 23, 23, 66, 63, 76, 96, 112, 112, 28.11108 + 123, 121, 125, 129, 96, 43, 66, 94, 94, 121, 127, 125, 129, 121, 133, 133, 28.11109 + 131, 133, 127, 135, 139, 137, 141, 129, 123, 125, 127, 133, 135, 131, 135, 135, 28.11110 + 135, 133, 145, 141, 147, 149, 147, 160, 160, 158, 158, 167, 165, 172, 176, 177, 28.11111 + 179, 181, 189, 192, 198, 198, 198, 201, 204, 207, 210, 215, 212, 212, 215, 213, 28.11112 + 216, 218, 218, 218, 219, 221, 212, 12, 29, 129, 149, 141, 147, 156, 156, 167, 28.11113 + 151, 151, 151, 153, 149, 153, 145, 147, 145, 147, 151, 149, 145, 147, 143, 137, 28.11114 + 141, 133, 135, 135, 131, 133, 172, 200, 215, 221, 213, 209, 207, 216, 224, 225, 28.11115 + 221, 215, 204, 176, 129, 117, 119, 110, 110, 98, 101, 89, 74, 94, 98, 101, 28.11116 + 91, 79, 81, 76, 86, 96, 105, 105, 98, 94, 101, 94, 89, 81, 96, 96, 28.11117 + 20, 12, 20, 23, 32, 114, 153, 169, 182, 185, 182, 169, 131, 35, 29, 57, 28.11118 + 91, 129, 153, 169, 177, 181, 184, 184, 182, 182, 185, 181, 181, 167, 155, 133, 28.11119 + 171, 108, 32, 43, 38, 41, 23, 38, 26, 29, 46, 20, 35, 38, 71, 63, 28.11120 + 35, 41, 38, 57, 57, 52, 43, 60, 26, 29, 26, 46, 74, 29, 23, 32, 28.11121 + 26, 74, 20, 49, 98, 57, 96, 20, 94, 84, 79, 123, 117, 129, 137, 114, 28.11122 + 101, 125, 131, 156, 110, 26, 119, 23, 32, 20, 23, 52, 46, 57, 29, 71, 28.11123 + 26, 55, 52, 71, 60, 41, 32, 18, 23, 41, 60, 76, 86, 94, 112, 123, 28.11124 + 117, 127, 127, 123, 74, 38, 74, 101, 98, 121, 125, 127, 127, 131, 131, 131, 28.11125 + 131, 135, 137, 137, 141, 137, 129, 123, 127, 129, 127, 137, 129, 133, 135, 135, 28.11126 + 137, 137, 143, 143, 139, 153, 151, 149, 160, 158, 158, 164, 167, 172, 171, 172, 28.11127 + 181, 181, 184, 192, 192, 200, 197, 200, 206, 204, 206, 210, 212, 212, 213, 215, 28.11128 + 213, 218, 218, 216, 218, 221, 219, 52, 41, 121, 153, 151, 156, 165, 160, 153, 28.11129 + 156, 151, 151, 149, 160, 149, 155, 151, 151, 147, 151, 147, 143, 149, 145, 141, 28.11130 + 133, 139, 143, 137, 137, 131, 156, 189, 209, 212, 210, 209, 206, 216, 225, 225, 28.11131 + 221, 212, 200, 167, 117, 114, 114, 108, 105, 108, 101, 81, 89, 91, 101, 86, 28.11132 + 89, 63, 79, 101, 98, 103, 96, 96, 91, 89, 101, 91, 86, 94, 91, 96, 28.11133 + 12, 15, 12, 9, 38, 98, 151, 167, 182, 185, 177, 169, 133, 71, 29, 41, 28.11134 + 79, 123, 151, 169, 172, 184, 182, 182, 181, 182, 185, 185, 182, 171, 151, 151, 28.11135 + 162, 123, 41, 41, 23, 46, 35, 29, 18, 32, 52, 23, 52, 76, 66, 49, 28.11136 + 32, 41, 29, 66, 49, 41, 63, 43, 38, 41, 38, 35, 57, 43, 18, 29, 28.11137 + 26, 66, 26, 81, 84, 49, 105, 79, 32, 101, 110, 68, 86, 101, 158, 125, 28.11138 + 103, 49, 110, 141, 162, 74, 94, 46, 38, 15, 26, 66, 55, 26, 15, 68, 28.11139 + 63, 32, 41, 38, 43, 41, 29, 20, 29, 35, 68, 71, 98, 89, 110, 105, 28.11140 + 125, 123, 121, 119, 63, 26, 71, 94, 108, 125, 127, 123, 131, 135, 133, 133, 28.11141 + 131, 131, 139, 137, 137, 131, 133, 133, 131, 133, 125, 129, 139, 135, 129, 137, 28.11142 + 137, 135, 145, 143, 147, 141, 147, 155, 158, 158, 160, 164, 164, 171, 171, 172, 28.11143 + 174, 177, 190, 187, 193, 197, 201, 200, 206, 207, 207, 207, 209, 210, 212, 216, 28.11144 + 216, 218, 218, 218, 218, 219, 221, 153, 68, 119, 151, 149, 149, 162, 160, 153, 28.11145 + 151, 151, 151, 153, 147, 153, 155, 155, 151, 153, 149, 149, 149, 151, 151, 141, 28.11146 + 139, 141, 143, 141, 137, 137, 139, 162, 193, 198, 200, 201, 209, 218, 225, 224, 28.11147 + 218, 213, 198, 156, 123, 110, 103, 110, 101, 98, 81, 86, 79, 98, 96, 81, 28.11148 + 55, 63, 86, 101, 101, 101, 103, 103, 89, 91, 91, 81, 98, 103, 94, 96, 28.11149 + 29, 23, 23, 18, 32, 89, 143, 169, 184, 182, 184, 167, 137, 86, 35, 52, 28.11150 + 81, 131, 151, 167, 176, 181, 181, 181, 177, 182, 181, 187, 174, 167, 156, 135, 28.11151 + 165, 131, 41, 84, 43, 52, 23, 35, 29, 32, 32, 68, 103, 68, 35, 41, 28.11152 + 26, 29, 49, 63, 55, 46, 43, 32, 52, 43, 49, 32, 49, 110, 26, 35, 28.11153 + 41, 52, 43, 91, 52, 46, 74, 123, 23, 20, 149, 165, 143, 158, 96, 141, 28.11154 + 114, 91, 60, 125, 117, 143, 112, 49, 143, 23, 26, 49, 41, 49, 32, 46, 28.11155 + 60, 41, 32, 41, 41, 38, 15, 26, 43, 63, 79, 79, 103, 101, 110, 117, 28.11156 + 119, 114, 119, 112, 55, 49, 84, 96, 114, 123, 125, 125, 133, 135, 141, 133, 28.11157 + 133, 137, 133, 129, 131, 135, 129, 131, 131, 127, 133, 135, 127, 133, 133, 135, 28.11158 + 137, 141, 143, 145, 147, 153, 153, 153, 155, 156, 156, 162, 160, 165, 167, 171, 28.11159 + 177, 176, 181, 182, 193, 190, 200, 198, 201, 204, 203, 210, 209, 212, 210, 216, 28.11160 + 215, 218, 218, 216, 218, 218, 219, 201, 81, 131, 149, 151, 131, 147, 153, 155, 28.11161 + 149, 153, 153, 162, 156, 155, 155, 153, 156, 149, 151, 151, 153, 147, 145, 141, 28.11162 + 145, 143, 141, 141, 143, 141, 145, 143, 158, 172, 181, 187, 209, 221, 230, 222, 28.11163 + 218, 207, 189, 141, 117, 103, 101, 96, 103, 91, 76, 86, 96, 91, 89, 84, 28.11164 + 68, 74, 94, 112, 105, 94, 98, 84, 81, 98, 94, 94, 84, 98, 108, 89, 28.11165 + 26, 18, 15, 9, 18, 79, 139, 172, 179, 185, 181, 169, 149, 98, 46, 55, 28.11166 + 81, 133, 151, 165, 174, 177, 179, 181, 182, 176, 184, 184, 174, 165, 153, 141, 28.11167 + 167, 133, 49, 96, 46, 38, 23, 26, 26, 76, 91, 76, 63, 32, 38, 29, 28.11168 + 23, 26, 60, 38, 68, 32, 32, 41, 63, 60, 74, 41, 29, 68, 38, 52, 28.11169 + 29, 29, 101, 49, 35, 41, 43, 114, 94, 15, 32, 114, 89, 153, 123, 145, 28.11170 + 86, 49, 55, 101, 137, 171, 131, 123, 187, 18, 43, 29, 35, 32, 32, 43, 28.11171 + 26, 32, 35, 29, 23, 35, 29, 26, 38, 60, 81, 86, 101, 110, 114, 121, 28.11172 + 114, 114, 117, 89, 35, 52, 89, 110, 114, 127, 129, 129, 131, 139, 137, 127, 28.11173 + 139, 141, 141, 135, 133, 133, 133, 131, 133, 125, 133, 127, 125, 131, 125, 133, 28.11174 + 141, 133, 139, 147, 143, 153, 143, 153, 155, 156, 156, 164, 160, 169, 165, 169, 28.11175 + 172, 177, 181, 189, 190, 192, 197, 197, 201, 204, 206, 206, 209, 212, 212, 213, 28.11176 + 216, 216, 215, 216, 216, 218, 219, 210, 101, 139, 149, 143, 119, 125, 137, 137, 28.11177 + 141, 141, 147, 149, 158, 158, 156, 153, 153, 158, 155, 155, 156, 153, 145, 145, 28.11178 + 153, 139, 145, 147, 153, 141, 141, 145, 133, 145, 151, 182, 210, 224, 227, 222, 28.11179 + 216, 206, 177, 135, 112, 103, 101, 91, 84, 76, 81, 84, 86, 94, 76, 66, 28.11180 + 71, 76, 101, 108, 103, 94, 91, 84, 84, 86, 91, 98, 94, 98, 91, 76, 28.11181 + 20, 18, 9, 32, 23, 66, 127, 167, 179, 177, 182, 171, 143, 108, 32, 46, 28.11182 + 74, 125, 147, 165, 177, 181, 177, 179, 181, 181, 182, 184, 174, 167, 153, 131, 28.11183 + 149, 149, 43, 91, 35, 41, 26, 29, 41, 52, 49, 41, 52, 32, 26, 43, 28.11184 + 29, 41, 60, 41, 68, 43, 38, 55, 55, 43, 43, 55, 35, 63, 60, 29, 28.11185 + 20, 57, 123, 41, 23, 26, 41, 117, 98, 63, 26, 35, 32, 46, 105, 167, 28.11186 + 119, 49, 32, 52, 71, 133, 193, 197, 119, 29, 32, 49, 29, 29, 52, 46, 28.11187 + 38, 35, 43, 20, 26, 29, 18, 23, 49, 68, 74, 103, 101, 110, 117, 121, 28.11188 + 114, 117, 114, 71, 26, 79, 76, 110, 123, 129, 125, 127, 135, 135, 135, 137, 28.11189 + 133, 137, 149, 141, 127, 129, 135, 133, 139, 131, 129, 127, 129, 137, 131, 133, 28.11190 + 139, 135, 139, 145, 145, 147, 147, 151, 155, 155, 158, 160, 160, 160, 162, 165, 28.11191 + 167, 179, 179, 185, 189, 192, 195, 200, 200, 203, 206, 207, 207, 212, 215, 215, 28.11192 + 213, 215, 216, 218, 218, 218, 219, 221, 153, 145, 143, 123, 98, 114, 108, 117, 28.11193 + 123, 135, 135, 141, 145, 149, 153, 155, 156, 155, 155, 149, 156, 153, 147, 153, 28.11194 + 145, 153, 153, 149, 149, 149, 145, 147, 137, 137, 149, 192, 213, 227, 227, 222, 28.11195 + 215, 200, 167, 129, 105, 108, 103, 103, 81, 66, 81, 96, 98, 76, 79, 63, 28.11196 + 76, 86, 101, 105, 98, 91, 94, 74, 94, 81, 94, 94, 89, 101, 94, 63, 28.11197 + 23, 20, 20, 15, 18, 74, 143, 167, 177, 181, 172, 165, 149, 103, 57, 43, 28.11198 + 71, 119, 145, 162, 171, 177, 179, 182, 179, 179, 181, 181, 179, 165, 155, 135, 28.11199 + 135, 153, 43, 91, 29, 41, 26, 23, 29, 29, 26, 41, 35, 26, 29, 57, 28.11200 + 26, 55, 41, 60, 49, 46, 49, 76, 63, 32, 41, 32, 57, 46, 29, 20, 28.11201 + 23, 68, 81, 38, 38, 26, 66, 135, 131, 63, 98, 26, 55, 23, 15, 103, 28.11202 + 165, 35, 46, 89, 63, 57, 143, 143, 18, 35, 29, 38, 18, 23, 55, 38, 28.11203 + 38, 23, 32, 26, 32, 32, 26, 29, 60, 71, 96, 101, 101, 108, 110, 125, 28.11204 + 117, 123, 98, 49, 32, 86, 101, 119, 125, 137, 133, 127, 133, 131, 131, 131, 28.11205 + 137, 141, 135, 141, 137, 137, 135, 135, 135, 133, 131, 131, 129, 133, 135, 135, 28.11206 + 141, 145, 137, 139, 145, 145, 141, 149, 151, 149, 151, 156, 158, 162, 165, 165, 28.11207 + 174, 177, 176, 189, 184, 190, 195, 197, 201, 203, 206, 209, 209, 209, 212, 213, 28.11208 + 215, 218, 216, 219, 218, 216, 219, 222, 195, 139, 114, 108, 68, 98, 86, 94, 28.11209 + 103, 105, 112, 125, 133, 137, 139, 149, 145, 149, 151, 151, 149, 155, 153, 151, 28.11210 + 145, 149, 158, 151, 153, 153, 149, 143, 139, 139, 153, 200, 215, 227, 227, 221, 28.11211 + 210, 190, 153, 112, 103, 103, 89, 86, 76, 84, 89, 94, 91, 68, 74, 74, 28.11212 + 81, 101, 103, 98, 96, 96, 84, 79, 86, 96, 103, 96, 98, 89, 74, 35, 28.11213 + 18, 23, 15, 15, 23, 63, 125, 162, 177, 190, 184, 177, 153, 96, 46, 49, 28.11214 + 81, 127, 149, 165, 179, 177, 181, 181, 177, 182, 182, 184, 181, 164, 158, 135, 28.11215 + 119, 141, 63, 98, 46, 20, 26, 38, 38, 38, 41, 46, 35, 26, 29, 32, 28.11216 + 41, 68, 38, 71, 43, 32, 52, 81, 71, 32, 26, 23, 35, 46, 29, 20, 28.11217 + 18, 81, 29, 38, 57, 35, 49, 133, 131, 149, 41, 74, 29, 12, 32, 57, 28.11218 + 103, 63, 20, 94, 137, 89, 86, 139, 12, 32, 49, 35, 46, 38, 23, 38, 28.11219 + 35, 26, 23, 18, 18, 35, 49, 60, 55, 74, 98, 103, 112, 105, 114, 121, 28.11220 + 117, 117, 74, 38, 43, 84, 103, 135, 125, 131, 127, 125, 135, 137, 135, 139, 28.11221 + 141, 139, 141, 145, 141, 133, 135, 137, 131, 131, 135, 139, 137, 129, 133, 127, 28.11222 + 135, 137, 147, 143, 149, 147, 145, 151, 156, 156, 156, 155, 162, 167, 162, 165, 28.11223 + 171, 172, 177, 179, 187, 189, 195, 193, 197, 201, 203, 206, 207, 212, 212, 215, 28.11224 + 213, 219, 218, 221, 218, 218, 218, 224, 216, 131, 81, 71, 60, 68, 68, 76, 28.11225 + 81, 101, 98, 103, 108, 119, 123, 127, 129, 133, 141, 143, 145, 149, 149, 155, 28.11226 + 156, 151, 164, 164, 151, 145, 141, 137, 137, 145, 172, 207, 219, 225, 225, 215, 28.11227 + 207, 182, 139, 112, 98, 96, 74, 66, 63, 81, 98, 91, 74, 52, 63, 68, 28.11228 + 94, 96, 94, 91, 96, 91, 94, 94, 96, 103, 101, 94, 81, 76, 52, 57, 28.11229 + 20, 20, 15, 15, 20, 49, 114, 167, 187, 190, 187, 182, 160, 114, 55, 38, 28.11230 + 68, 117, 139, 162, 172, 174, 181, 177, 181, 182, 182, 187, 177, 174, 162, 145, 28.11231 + 121, 110, 71, 76, 79, 26, 20, 38, 46, 38, 26, 26, 32, 32, 32, 55, 28.11232 + 63, 41, 52, 60, 35, 38, 49, 46, 86, 41, 35, 29, 23, 18, 41, 26, 28.11233 + 23, 52, 46, 46, 63, 101, 98, 84, 145, 164, 84, 29, 60, 68, 23, 60, 28.11234 + 52, 29, 46, 84, 79, 89, 105, 81, 18, 29, 29, 26, 20, 38, 41, 38, 28.11235 + 26, 18, 35, 15, 32, 29, 66, 60, 68, 81, 103, 105, 114, 103, 110, 121, 28.11236 + 117, 103, 20, 32, 74, 84, 121, 125, 125, 127, 129, 127, 133, 137, 135, 139, 28.11237 + 141, 143, 133, 133, 131, 137, 141, 133, 139, 137, 129, 125, 133, 129, 129, 133, 28.11238 + 137, 131, 137, 145, 141, 143, 151, 151, 153, 147, 153, 156, 160, 160, 162, 169, 28.11239 + 171, 174, 174, 182, 177, 187, 195, 195, 200, 197, 200, 207, 209, 212, 213, 215, 28.11240 + 215, 216, 215, 218, 216, 221, 219, 224, 222, 135, 63, 71, 63, 79, 52, 60, 28.11241 + 68, 68, 89, 81, 84, 94, 96, 112, 108, 114, 125, 125, 137, 133, 143, 143, 28.11242 + 153, 160, 169, 165, 158, 155, 129, 131, 137, 151, 190, 213, 222, 225, 221, 215, 28.11243 + 195, 158, 127, 103, 89, 76, 68, 74, 74, 101, 96, 81, 60, 57, 74, 94, 28.11244 + 101, 94, 94, 98, 89, 84, 86, 89, 101, 110, 98, 94, 94, 71, 41, 46, 28.11245 + 12, 9, 9, 15, 41, 38, 105, 172, 181, 192, 190, 184, 158, 129, 41, 43, 28.11246 + 71, 119, 141, 158, 174, 177, 179, 182, 184, 182, 181, 185, 177, 171, 160, 143, 28.11247 + 121, 114, 91, 68, 96, 18, 26, 29, 60, 35, 32, 29, 29, 32, 26, 57, 28.11248 + 43, 41, 63, 52, 29, 46, 52, 55, 68, 49, 38, 26, 35, 32, 41, 41, 28.11249 + 38, 29, 32, 131, 12, 76, 129, 101, 133, 112, 176, 86, 38, 71, 63, 60, 28.11250 + 63, 71, 63, 167, 55, 52, 86, 35, 20, 35, 35, 15, 38, 29, 26, 23, 28.11251 + 35, 20, 18, 18, 43, 35, 60, 66, 74, 96, 105, 114, 114, 114, 112, 114, 28.11252 + 123, 57, 15, 49, 79, 108, 121, 127, 121, 133, 123, 123, 131, 145, 137, 137, 28.11253 + 135, 137, 137, 131, 137, 141, 137, 131, 131, 129, 127, 129, 135, 135, 131, 129, 28.11254 + 137, 137, 137, 137, 133, 141, 139, 145, 145, 151, 155, 156, 156, 160, 162, 165, 28.11255 + 171, 177, 172, 176, 179, 181, 195, 195, 197, 198, 201, 206, 207, 210, 212, 210, 28.11256 + 212, 215, 216, 218, 216, 218, 221, 222, 224, 174, 60, 79, 60, 94, 63, 74, 28.11257 + 71, 74, 79, 63, 76, 86, 79, 76, 89, 89, 94, 98, 103, 105, 117, 129, 28.11258 + 143, 155, 167, 171, 160, 149, 155, 156, 145, 155, 197, 218, 224, 227, 219, 204, 28.11259 + 176, 139, 117, 86, 74, 71, 66, 63, 81, 96, 91, 74, 57, 71, 94, 94, 28.11260 + 108, 89, 91, 98, 91, 89, 94, 103, 108, 103, 89, 96, 68, 66, 41, 35, 28.11261 + 20, 18, 15, 6, 15, 29, 121, 165, 184, 189, 190, 184, 164, 137, 57, 49, 28.11262 + 76, 114, 145, 160, 171, 176, 177, 181, 179, 177, 184, 184, 179, 167, 164, 141, 28.11263 + 105, 114, 91, 91, 96, 23, 18, 38, 26, 23, 29, 23, 29, 32, 60, 66, 28.11264 + 41, 32, 52, 60, 41, 35, 57, 55, 66, 43, 41, 49, 26, 18, 29, 32, 28.11265 + 38, 35, 38, 91, 12, 23, 110, 68, 105, 137, 160, 165, 123, 26, 46, 105, 28.11266 + 114, 121, 55, 89, 29, 38, 35, 43, 29, 32, 26, 18, 32, 35, 29, 26, 28.11267 + 23, 18, 43, 20, 26, 41, 60, 63, 81, 108, 117, 117, 108, 108, 110, 110, 28.11268 + 94, 23, 15, 55, 105, 117, 123, 127, 127, 127, 125, 131, 123, 131, 143, 133, 28.11269 + 135, 139, 133, 127, 133, 137, 135, 137, 133, 135, 131, 133, 137, 129, 123, 131, 28.11270 + 127, 133, 139, 133, 143, 131, 141, 145, 149, 143, 151, 153, 153, 162, 160, 165, 28.11271 + 169, 176, 174, 172, 172, 182, 187, 189, 193, 197, 200, 204, 209, 207, 212, 212, 28.11272 + 213, 216, 216, 215, 218, 218, 221, 221, 224, 206, 68, 81, 74, 96, 86, 84, 28.11273 + 84, 79, 84, 74, 63, 71, 66, 49, 60, 66, 63, 66, 79, 71, 86, 105, 28.11274 + 125, 143, 147, 151, 156, 169, 172, 162, 156, 172, 206, 218, 227, 224, 215, 193, 28.11275 + 156, 123, 89, 66, 52, 43, 55, 66, 81, 81, 81, 57, 63, 89, 96, 110, 28.11276 + 79, 86, 96, 94, 91, 86, 86, 101, 108, 84, 101, 94, 79, 52, 43, 32, 28.11277 + 20, 12, 12, 9, 12, 32, 110, 171, 184, 190, 195, 182, 174, 137, 63, 43, 28.11278 + 68, 112, 137, 162, 172, 177, 179, 182, 182, 181, 187, 185, 177, 172, 162, 139, 28.11279 + 57, 127, 98, 76, 89, 18, 38, 49, 23, 26, 23, 18, 32, 52, 55, 49, 28.11280 + 23, 29, 81, 43, 41, 29, 57, 49, 66, 57, 63, 35, 41, 23, 43, 23, 28.11281 + 41, 41, 32, 18, 18, 38, 23, 103, 91, 131, 121, 143, 158, 105, 119, 84, 28.11282 + 84, 135, 94, 32, 20, 26, 32, 41, 49, 23, 20, 32, 29, 26, 18, 29, 28.11283 + 26, 20, 20, 29, 38, 43, 84, 74, 96, 112, 105, 110, 110, 114, 114, 101, 28.11284 + 26, 12, 32, 79, 108, 125, 129, 133, 133, 127, 125, 129, 133, 131, 133, 135, 28.11285 + 133, 135, 129, 137, 141, 139, 143, 129, 135, 133, 133, 139, 133, 129, 131, 133, 28.11286 + 127, 137, 139, 133, 141, 143, 141, 141, 143, 145, 151, 151, 151, 155, 165, 162, 28.11287 + 167, 167, 172, 171, 174, 181, 187, 190, 193, 195, 200, 206, 204, 207, 215, 212, 28.11288 + 213, 212, 216, 216, 216, 216, 219, 221, 222, 218, 76, 68, 86, 91, 98, 96, 28.11289 + 91, 98, 81, 86, 81, 68, 68, 52, 55, 49, 46, 43, 35, 38, 49, 68, 28.11290 + 91, 108, 117, 139, 184, 197, 193, 169, 160, 185, 209, 218, 224, 219, 212, 184, 28.11291 + 141, 98, 71, 55, 41, 41, 79, 71, 84, 60, 57, 66, 89, 110, 114, 101, 28.11292 + 91, 94, 89, 89, 84, 89, 91, 103, 112, 98, 94, 89, 57, 52, 43, 38, 28.11293 + 35, 32, 29, 38, 41, 35, 114, 171, 182, 190, 193, 187, 179, 155, 71, 46, 28.11294 + 76, 121, 145, 162, 169, 176, 182, 177, 179, 179, 189, 185, 179, 174, 164, 139, 28.11295 + 60, 127, 86, 57, 60, 26, 43, 35, 20, 29, 29, 23, 43, 66, 46, 41, 28.11296 + 43, 38, 60, 41, 29, 35, 81, 57, 49, 41, 49, 43, 52, 41, 41, 32, 28.11297 + 23, 49, 55, 23, 38, 35, 15, 32, 105, 117, 151, 162, 108, 160, 112, 117, 28.11298 + 89, 43, 119, 86, 26, 23, 35, 43, 32, 23, 35, 35, 29, 26, 29, 23, 28.11299 + 9, 23, 23, 20, 41, 55, 74, 84, 98, 105, 110, 112, 108, 114, 103, 52, 28.11300 + 23, 20, 71, 101, 117, 127, 125, 129, 143, 129, 131, 133, 133, 133, 133, 135, 28.11301 + 129, 137, 139, 139, 135, 141, 137, 137, 135, 137, 137, 137, 133, 131, 131, 131, 28.11302 + 131, 135, 135, 129, 135, 141, 139, 147, 149, 153, 153, 155, 156, 156, 162, 164, 28.11303 + 167, 167, 165, 174, 177, 182, 179, 190, 193, 195, 195, 203, 203, 204, 207, 210, 28.11304 + 212, 212, 215, 216, 218, 216, 219, 219, 221, 222, 143, 71, 94, 96, 103, 103, 28.11305 + 108, 81, 86, 86, 84, 74, 68, 55, 49, 43, 35, 29, 29, 35, 29, 35, 28.11306 + 49, 94, 114, 174, 203, 203, 200, 179, 169, 192, 212, 221, 222, 218, 201, 167, 28.11307 + 121, 76, 60, 41, 35, 43, 68, 71, 66, 63, 66, 91, 103, 114, 117, 101, 28.11308 + 89, 84, 86, 76, 89, 86, 101, 108, 98, 103, 86, 71, 52, 46, 32, 26, 28.11309 + 26, 41, 57, 57, 55, 60, 108, 158, 181, 192, 197, 190, 189, 145, 86, 52, 28.11310 + 81, 114, 145, 158, 169, 176, 182, 184, 179, 182, 184, 190, 184, 176, 165, 125, 28.11311 + 86, 133, 103, 55, 32, 23, 35, 18, 20, 23, 32, 55, 26, 38, 38, 46, 28.11312 + 26, 29, 35, 52, 26, 41, 63, 49, 57, 46, 41, 57, 38, 63, 32, 23, 28.11313 + 15, 20, 60, 46, 23, 49, 32, 32, 18, 101, 110, 174, 160, 123, 156, 68, 28.11314 + 98, 129, 131, 84, 20, 20, 35, 43, 20, 15, 20, 18, 26, 20, 15, 20, 28.11315 + 20, 18, 32, 41, 66, 63, 81, 96, 103, 105, 110, 108, 125, 117, 71, 23, 28.11316 + 26, 43, 86, 110, 123, 125, 129, 135, 131, 129, 131, 127, 129, 131, 129, 133, 28.11317 + 127, 135, 137, 139, 137, 137, 141, 139, 137, 135, 131, 133, 129, 129, 131, 127, 28.11318 + 131, 135, 133, 135, 133, 141, 137, 143, 149, 147, 147, 155, 149, 155, 156, 160, 28.11319 + 160, 165, 169, 174, 176, 182, 182, 189, 190, 193, 198, 201, 200, 204, 210, 210, 28.11320 + 212, 215, 212, 215, 219, 218, 219, 219, 221, 221, 192, 76, 89, 103, 110, 103, 28.11321 + 98, 103, 103, 94, 89, 86, 71, 76, 68, 49, 41, 41, 29, 20, 12, 18, 28.11322 + 29, 52, 145, 200, 210, 210, 198, 167, 165, 201, 215, 221, 221, 212, 193, 147, 28.11323 + 89, 52, 38, 49, 49, 68, 76, 76, 57, 52, 76, 84, 98, 108, 103, 89, 28.11324 + 81, 74, 74, 71, 96, 94, 108, 103, 105, 91, 89, 63, 43, 38, 46, 35, 28.11325 + 63, 81, 71, 74, 74, 81, 108, 151, 181, 192, 198, 195, 185, 153, 105, 57, 28.11326 + 76, 110, 141, 162, 169, 177, 182, 184, 179, 181, 184, 187, 181, 174, 158, 98, 28.11327 + 94, 141, 117, 60, 43, 18, 41, 32, 43, 66, 68, 29, 23, 29, 32, 57, 28.11328 + 46, 35, 43, 55, 38, 55, 55, 43, 71, 43, 46, 49, 38, 32, 23, 26, 28.11329 + 41, 20, 29, 49, 32, 94, 41, 41, 32, 18, 79, 143, 131, 156, 149, 108, 28.11330 + 98, 101, 94, 125, 29, 32, 38, 26, 43, 35, 32, 26, 26, 29, 15, 26, 28.11331 + 32, 18, 23, 66, 68, 84, 96, 105, 105, 110, 108, 112, 110, 89, 29, 32, 28.11332 + 23, 74, 105, 123, 125, 127, 127, 133, 127, 131, 133, 131, 133, 137, 133, 131, 28.11333 + 135, 135, 135, 135, 133, 137, 139, 139, 135, 141, 137, 131, 131, 133, 131, 127, 28.11334 + 131, 135, 129, 129, 131, 135, 137, 137, 149, 145, 145, 147, 156, 158, 160, 156, 28.11335 + 158, 162, 165, 169, 172, 177, 176, 187, 184, 189, 197, 200, 203, 204, 206, 207, 28.11336 + 212, 213, 215, 213, 216, 216, 219, 218, 219, 224, 212, 79, 86, 98, 96, 110, 28.11337 + 105, 114, 117, 103, 96, 101, 81, 84, 76, 63, 49, 41, 18, 35, 35, 18, 28.11338 + 15, 55, 160, 206, 213, 215, 192, 158, 182, 207, 216, 221, 216, 203, 164, 91, 28.11339 + 60, 52, 26, 46, 60, 68, 66, 74, 55, 66, 84, 101, 114, 121, 86, 89, 28.11340 + 81, 84, 79, 79, 84, 101, 110, 119, 103, 84, 86, 66, 60, 55, 38, 46, 28.11341 + 96, 91, 86, 79, 91, 89, 123, 149, 181, 192, 195, 193, 182, 158, 114, 57, 28.11342 + 79, 112, 141, 160, 172, 174, 182, 182, 182, 182, 185, 192, 181, 176, 165, 103, 28.11343 + 91, 135, 91, 84, 18, 23, 35, 52, 57, 52, 35, 29, 41, 29, 41, 41, 28.11344 + 38, 43, 49, 43, 46, 68, 29, 55, 74, 49, 52, 52, 35, 35, 35, 26, 28.11345 + 46, 43, 18, 46, 63, 52, 46, 35, 26, 32, 63, 63, 141, 143, 189, 145, 28.11346 + 96, 84, 123, 151, 43, 32, 23, 23, 29, 20, 32, 29, 32, 20, 9, 18, 28.11347 + 20, 20, 46, 71, 60, 74, 96, 108, 103, 105, 110, 117, 96, 20, 23, 23, 28.11348 + 71, 91, 114, 123, 127, 129, 127, 129, 127, 131, 139, 137, 129, 129, 129, 137, 28.11349 + 131, 133, 125, 143, 133, 139, 139, 137, 135, 139, 135, 131, 135, 141, 131, 135, 28.11350 + 129, 133, 135, 137, 141, 127, 133, 139, 147, 149, 141, 143, 155, 156, 158, 158, 28.11351 + 153, 165, 158, 171, 177, 172, 179, 181, 187, 193, 197, 200, 201, 204, 204, 210, 28.11352 + 212, 215, 213, 215, 212, 218, 216, 219, 221, 221, 222, 119, 79, 84, 108, 112, 28.11353 + 101, 108, 110, 105, 98, 96, 76, 94, 84, 63, 66, 49, 52, 29, 20, 20, 28.11354 + 29, 52, 158, 204, 212, 212, 184, 165, 192, 206, 213, 215, 204, 176, 114, 46, 28.11355 + 46, 35, 49, 63, 63, 66, 55, 57, 66, 84, 101, 110, 101, 91, 84, 76, 28.11356 + 66, 76, 68, 86, 86, 108, 119, 114, 108, 98, 76, 63, 63, 52, 43, 49, 28.11357 + 79, 86, 86, 89, 103, 101, 135, 156, 181, 190, 195, 195, 187, 165, 127, 60, 28.11358 + 94, 105, 141, 156, 172, 181, 182, 182, 184, 182, 189, 190, 185, 176, 164, 96, 28.11359 + 91, 129, 91, 76, 26, 26, 43, 32, 23, 32, 43, 26, 32, 26, 46, 41, 28.11360 + 57, 41, 41, 29, 32, 32, 35, 57, 76, 41, 43, 52, 52, 26, 35, 35, 28.11361 + 32, 57, 43, 15, 55, 49, 57, 52, 43, 55, 49, 68, 57, 74, 141, 158, 28.11362 + 137, 105, 98, 66, 32, 38, 23, 23, 23, 29, 29, 38, 15, 18, 15, 26, 28.11363 + 23, 35, 57, 66, 68, 98, 96, 117, 108, 101, 110, 91, 20, 15, 23, 63, 28.11364 + 91, 117, 117, 121, 125, 125, 131, 127, 127, 133, 131, 137, 129, 133, 129, 135, 28.11365 + 131, 127, 135, 141, 139, 135, 141, 135, 145, 141, 133, 139, 137, 135, 133, 129, 28.11366 + 133, 133, 135, 137, 135, 131, 133, 139, 143, 141, 143, 149, 155, 153, 149, 158, 28.11367 + 160, 164, 165, 169, 169, 172, 174, 181, 185, 189, 195, 198, 200, 203, 206, 206, 28.11368 + 209, 213, 213, 213, 213, 216, 219, 216, 216, 218, 221, 172, 66, 86, 96, 112, 28.11369 + 112, 108, 112, 108, 105, 98, 103, 96, 81, 74, 76, 63, 63, 41, 26, 43, 28.11370 + 46, 57, 149, 193, 207, 209, 197, 195, 195, 210, 207, 204, 172, 123, 46, 38, 28.11371 + 32, 35, 41, 60, 68, 57, 49, 68, 76, 94, 103, 108, 91, 76, 63, 66, 28.11372 + 71, 66, 79, 94, 96, 110, 117, 110, 96, 81, 81, 86, 74, 49, 43, 60, 28.11373 + 86, 94, 81, 101, 103, 114, 143, 155, 182, 190, 193, 197, 190, 169, 131, 63, 28.11374 + 86, 110, 137, 156, 176, 179, 179, 182, 184, 187, 190, 189, 184, 177, 171, 81, 28.11375 + 110, 119, 91, 68, 29, 29, 35, 26, 29, 29, 49, 29, 32, 29, 43, 49, 28.11376 + 46, 29, 41, 46, 32, 26, 35, 52, 63, 46, 32, 68, 79, 43, 38, 35, 28.11377 + 20, 63, 86, 43, 32, 43, 86, 41, 32, 68, 94, 29, 86, 66, 131, 71, 28.11378 + 131, 158, 119, 26, 29, 41, 23, 38, 35, 26, 23, 26, 23, 12, 20, 26, 28.11379 + 35, 52, 66, 49, 84, 96, 101, 114, 105, 110, 76, 20, 15, 35, 66, 89, 28.11380 + 108, 117, 119, 123, 127, 119, 131, 131, 131, 139, 127, 133, 135, 133, 135, 135, 28.11381 + 131, 133, 133, 135, 137, 141, 139, 133, 143, 147, 133, 137, 137, 135, 133, 131, 28.11382 + 127, 133, 129, 139, 135, 137, 133, 135, 145, 139, 143, 145, 151, 147, 149, 160, 28.11383 + 156, 164, 165, 172, 165, 167, 174, 185, 184, 185, 190, 198, 197, 200, 204, 207, 28.11384 + 209, 213, 212, 215, 215, 218, 215, 215, 218, 219, 221, 209, 68, 84, 86, 103, 28.11385 + 110, 114, 112, 105, 103, 98, 98, 86, 84, 86, 76, 74, 68, 57, 52, 43, 28.11386 + 41, 60, 129, 190, 207, 209, 209, 201, 200, 198, 184, 165, 121, 71, 52, 38, 28.11387 + 46, 43, 60, 68, 46, 52, 57, 76, 96, 101, 101, 96, 96, 84, 60, 66, 28.11388 + 74, 81, 79, 96, 105, 119, 112, 96, 94, 84, 79, 79, 63, 43, 68, 66, 28.11389 + 66, 84, 101, 110, 114, 129, 143, 155, 182, 189, 195, 190, 185, 169, 135, 68, 28.11390 + 94, 110, 137, 160, 171, 179, 179, 181, 185, 189, 189, 189, 184, 176, 164, 76, 28.11391 + 127, 119, 91, 35, 23, 43, 41, 43, 29, 32, 20, 29, 46, 26, 49, 41, 28.11392 + 43, 32, 41, 29, 35, 38, 57, 57, 86, 26, 38, 81, 89, 35, 35, 38, 28.11393 + 23, 38, 91, 94, 38, 35, 84, 23, 49, 55, 121, 38, 60, 125, 153, 46, 28.11394 + 81, 103, 112, 49, 32, 29, 32, 35, 23, 38, 23, 23, 18, 38, 32, 32, 28.11395 + 52, 66, 71, 89, 91, 84, 98, 110, 94, 35, 18, 9, 32, 79, 96, 96, 28.11396 + 117, 114, 125, 114, 121, 123, 129, 131, 129, 139, 131, 135, 139, 133, 135, 129, 28.11397 + 133, 135, 133, 137, 141, 139, 141, 141, 137, 141, 139, 137, 137, 135, 143, 137, 28.11398 + 131, 137, 135, 143, 137, 133, 131, 131, 141, 143, 143, 149, 147, 147, 153, 153, 28.11399 + 155, 160, 164, 165, 165, 172, 177, 172, 179, 177, 190, 192, 197, 200, 203, 206, 28.11400 + 206, 209, 212, 215, 213, 218, 219, 215, 215, 216, 221, 219, 103, 84, 94, 98, 28.11401 + 101, 108, 110, 108, 101, 96, 91, 103, 89, 91, 81, 76, 81, 63, 68, 74, 28.11402 + 66, 81, 131, 192, 210, 216, 219, 207, 195, 167, 151, 114, 66, 60, 35, 35, 28.11403 + 63, 57, 60, 63, 49, 57, 74, 84, 108, 112, 105, 96, 81, 81, 63, 66, 28.11404 + 68, 74, 101, 108, 119, 114, 105, 94, 96, 91, 76, 74, 55, 57, 66, 43, 28.11405 + 55, 81, 91, 119, 125, 123, 139, 155, 181, 185, 190, 190, 187, 167, 129, 74, 28.11406 + 94, 110, 135, 160, 171, 182, 179, 179, 182, 185, 187, 189, 179, 172, 162, 98, 28.11407 + 108, 125, 105, 23, 35, 38, 23, 63, 26, 57, 29, 49, 38, 26, 35, 43, 28.11408 + 52, 38, 35, 29, 35, 46, 91, 55, 105, 38, 55, 66, 89, 84, 26, 29, 28.11409 + 26, 26, 94, 68, 68, 52, 41, 103, 35, 66, 41, 79, 66, 96, 171, 110, 28.11410 + 86, 18, 79, 60, 43, 26, 32, 29, 41, 20, 20, 29, 12, 15, 15, 32, 28.11411 + 63, 63, 74, 91, 105, 91, 68, 35, 12, 9, 23, 60, 81, 94, 103, 110, 28.11412 + 117, 112, 125, 127, 127, 125, 125, 129, 127, 133, 133, 133, 133, 133, 145, 133, 28.11413 + 131, 135, 137, 135, 137, 137, 139, 145, 135, 141, 139, 137, 135, 139, 137, 141, 28.11414 + 129, 139, 133, 139, 135, 131, 131, 133, 137, 141, 141, 149, 145, 147, 149, 151, 28.11415 + 156, 164, 160, 165, 162, 171, 176, 172, 176, 181, 184, 192, 193, 197, 201, 203, 28.11416 + 207, 206, 209, 210, 215, 215, 216, 218, 216, 221, 218, 221, 149, 81, 89, 94, 28.11417 + 105, 98, 108, 103, 110, 101, 105, 101, 91, 98, 86, 79, 81, 86, 89, 86, 28.11418 + 74, 86, 143, 190, 213, 219, 216, 201, 169, 133, 86, 68, 52, 46, 41, 35, 28.11419 + 60, 66, 66, 55, 52, 81, 81, 98, 105, 108, 96, 81, 68, 63, 68, 76, 28.11420 + 71, 94, 91, 117, 121, 110, 108, 94, 94, 89, 84, 43, 57, 66, 74, 57, 28.11421 + 41, 74, 94, 121, 123, 114, 121, 147, 176, 187, 190, 189, 184, 164, 129, 84, 28.11422 + 91, 105, 143, 158, 171, 179, 182, 184, 184, 184, 189, 187, 185, 177, 171, 108, 28.11423 + 81, 112, 98, 29, 20, 32, 32, 38, 32, 57, 29, 49, 46, 26, 29, 26, 28.11424 + 74, 66, 38, 29, 32, 43, 79, 55, 101, 35, 43, 79, 105, 81, 52, 26, 28.11425 + 32, 29, 98, 66, 29, 32, 32, 137, 55, 52, 57, 94, 84, 66, 156, 141, 28.11426 + 79, 20, 71, 84, 23, 18, 20, 32, 32, 15, 15, 29, 23, 20, 23, 63, 28.11427 + 71, 76, 89, 66, 38, 74, 20, 18, 32, 49, 84, 89, 96, 105, 112, 108, 28.11428 + 119, 117, 114, 125, 125, 125, 129, 129, 131, 127, 127, 125, 127, 141, 133, 137, 28.11429 + 133, 129, 143, 137, 135, 139, 137, 143, 149, 143, 149, 143, 143, 137, 139, 137, 28.11430 + 139, 133, 135, 137, 129, 135, 137, 133, 137, 141, 143, 145, 147, 145, 149, 153, 28.11431 + 156, 156, 160, 164, 160, 171, 176, 177, 174, 181, 185, 192, 193, 197, 203, 201, 28.11432 + 206, 206, 212, 212, 215, 216, 218, 218, 215, 219, 218, 219, 189, 68, 81, 101, 28.11433 + 96, 108, 103, 98, 101, 105, 98, 108, 98, 108, 103, 86, 86, 84, 91, 94, 28.11434 + 86, 81, 139, 184, 209, 212, 203, 177, 121, 89, 66, 71, 52, 41, 55, 63, 28.11435 + 81, 66, 63, 66, 86, 96, 110, 112, 108, 105, 86, 66, 66, 57, 52, 71, 28.11436 + 84, 94, 110, 119, 108, 114, 105, 98, 96, 71, 55, 46, 68, 60, 68, 46, 28.11437 + 23, 49, 79, 98, 105, 98, 110, 139, 171, 184, 193, 193, 190, 169, 145, 89, 28.11438 + 91, 110, 133, 149, 171, 179, 179, 182, 182, 185, 187, 192, 181, 172, 165, 119, 28.11439 + 76, 94, 89, 23, 32, 23, 41, 41, 32, 46, 23, 68, 55, 29, 43, 35, 28.11440 + 76, 43, 35, 35, 32, 35, 84, 55, 103, 23, 49, 84, 117, 79, 94, 32, 28.11441 + 32, 26, 41, 108, 20, 32, 55, 71, 149, 35, 32, 46, 68, 108, 121, 181, 28.11442 + 135, 20, 63, 43, 32, 15, 29, 29, 23, 38, 18, 26, 20, 32, 38, 41, 28.11443 + 32, 35, 26, 20, 18, 23, 32, 74, 76, 81, 91, 98, 105, 110, 125, 117, 28.11444 + 114, 114, 125, 123, 125, 121, 125, 131, 131, 135, 135, 143, 127, 133, 135, 135, 28.11445 + 131, 133, 143, 139, 137, 141, 141, 143, 145, 139, 141, 151, 139, 141, 139, 139, 28.11446 + 141, 141, 131, 131, 137, 139, 137, 135, 139, 139, 149, 141, 143, 149, 149, 151, 28.11447 + 149, 156, 162, 165, 162, 169, 174, 171, 181, 181, 185, 185, 190, 195, 197, 201, 28.11448 + 207, 206, 207, 210, 213, 213, 216, 215, 216, 219, 218, 218, 213, 84, 84, 89, 28.11449 + 94, 103, 105, 103, 112, 114, 103, 112, 110, 103, 98, 94, 108, 105, 112, 101, 28.11450 + 96, 86, 123, 167, 187, 190, 177, 129, 79, 79, 81, 71, 55, 66, 74, 68, 28.11451 + 63, 66, 57, 60, 94, 105, 121, 108, 96, 89, 76, 84, 66, 55, 49, 71, 28.11452 + 98, 108, 114, 117, 119, 110, 108, 103, 89, 57, 46, 63, 71, 55, 55, 49, 28.11453 + 26, 43, 55, 76, 96, 108, 112, 137, 165, 189, 192, 192, 187, 174, 139, 101, 28.11454 + 91, 103, 131, 153, 167, 176, 181, 181, 187, 185, 185, 190, 185, 181, 169, 137, 28.11455 + 57, 89, 43, 41, 41, 20, 32, 35, 35, 43, 49, 66, 66, 32, 35, 41, 28.11456 + 81, 41, 20, 41, 32, 43, 60, 74, 76, 23, 38, 101, 114, 129, 125, 66, 28.11457 + 55, 52, 29, 114, 60, 79, 29, 46, 133, 71, 89, 38, 81, 131, 117, 145, 28.11458 + 160, 103, 49, 29, 41, 15, 32, 32, 23, 41, 41, 26, 23, 23, 12, 29, 28.11459 + 20, 26, 43, 41, 55, 81, 68, 84, 84, 105, 110, 117, 125, 121, 125, 119, 28.11460 + 127, 121, 125, 123, 125, 129, 131, 131, 125, 141, 127, 127, 137, 137, 135, 135, 28.11461 + 129, 131, 133, 135, 131, 135, 145, 145, 139, 143, 141, 143, 141, 139, 147, 135, 28.11462 + 137, 139, 143, 127, 133, 135, 141, 139, 135, 137, 141, 147, 143, 143, 149, 149, 28.11463 + 158, 158, 160, 160, 164, 167, 167, 172, 181, 184, 184, 189, 190, 193, 198, 198, 28.11464 + 203, 206, 206, 210, 210, 215, 216, 216, 216, 218, 219, 219, 216, 112, 79, 89, 28.11465 + 91, 91, 96, 101, 105, 108, 103, 112, 110, 105, 105, 101, 108, 108, 114, 112, 28.11466 + 98, 101, 105, 141, 155, 147, 121, 84, 81, 63, 63, 74, 66, 79, 79, 63, 28.11467 + 66, 63, 74, 74, 89, 110, 117, 103, 91, 57, 57, 57, 55, 55, 63, 96, 28.11468 + 105, 110, 119, 129, 119, 108, 103, 91, 66, 63, 57, 49, 52, 52, 43, 32, 28.11469 + 41, 35, 55, 63, 91, 91, 91, 125, 160, 181, 189, 190, 187, 172, 143, 127, 28.11470 + 98, 112, 131, 153, 169, 181, 181, 187, 185, 184, 189, 190, 187, 167, 165, 153, 28.11471 + 46, 76, 29, 32, 23, 18, 38, 38, 29, 35, 49, 52, 52, 55, 32, 41, 28.11472 + 89, 52, 32, 43, 38, 68, 68, 105, 60, 15, 29, 94, 112, 127, 105, 76, 28.11473 + 29, 15, 94, 84, 137, 12, 9, 52, 35, 123, 49, 74, 41, 141, 114, 105, 28.11474 + 110, 117, 110, 23, 23, 35, 35, 29, 29, 20, 15, 23, 20, 15, 29, 29, 28.11475 + 52, 41, 71, 68, 79, 74, 86, 98, 114, 110, 117, 110, 112, 112, 117, 121, 28.11476 + 125, 121, 121, 125, 125, 119, 129, 127, 119, 129, 127, 133, 135, 131, 129, 135, 28.11477 + 129, 135, 137, 141, 139, 133, 143, 141, 143, 145, 143, 147, 143, 139, 137, 137, 28.11478 + 145, 135, 145, 141, 131, 137, 135, 141, 139, 137, 141, 139, 141, 149, 149, 151, 28.11479 + 153, 155, 160, 162, 156, 167, 169, 169, 177, 181, 182, 190, 192, 198, 197, 200, 28.11480 + 203, 204, 206, 207, 210, 212, 215, 218, 216, 218, 216, 219, 221, 169, 63, 79, 28.11481 + 86, 96, 103, 101, 103, 110, 108, 110, 119, 110, 108, 101, 117, 121, 114, 114, 28.11482 + 108, 114, 108, 108, 119, 112, 98, 86, 81, 76, 79, 76, 89, 76, 79, 68, 28.11483 + 49, 55, 76, 91, 98, 112, 86, 81, 66, 63, 55, 46, 49, 55, 74, 110, 28.11484 + 105, 112, 117, 129, 125, 114, 110, 86, 63, 63, 52, 55, 52, 49, 41, 38, 28.11485 + 35, 49, 41, 57, 74, 89, 84, 129, 149, 179, 189, 193, 189, 176, 147, 131, 28.11486 + 98, 112, 129, 149, 165, 176, 177, 184, 185, 185, 182, 189, 182, 174, 167, 149, 28.11487 + 43, 79, 35, 49, 29, 32, 46, 43, 23, 32, 46, 63, 74, 60, 46, 49, 28.11488 + 60, 94, 20, 32, 32, 46, 86, 101, 46, 29, 23, 71, 121, 71, 135, 110, 28.11489 + 18, 15, 38, 94, 127, 76, 12, 57, 89, 49, 129, 38, 71, 110, 103, 135, 28.11490 + 49, 121, 103, 43, 32, 29, 32, 23, 20, 9, 18, 26, 41, 41, 55, 63, 28.11491 + 74, 79, 89, 94, 89, 98, 110, 114, 110, 110, 114, 117, 119, 121, 119, 125, 28.11492 + 127, 127, 119, 125, 119, 121, 117, 133, 131, 133, 127, 129, 127, 125, 131, 141, 28.11493 + 137, 129, 133, 135, 137, 137, 133, 137, 135, 143, 139, 139, 141, 133, 145, 137, 28.11494 + 141, 137, 149, 139, 133, 137, 133, 139, 135, 139, 135, 137, 141, 149, 143, 151, 28.11495 + 145, 153, 156, 156, 162, 164, 169, 172, 171, 182, 181, 184, 185, 193, 197, 195, 28.11496 + 198, 201, 207, 206, 209, 210, 215, 215, 216, 216, 219, 221, 218, 198, 74, 68, 28.11497 + 86, 81, 96, 103, 103, 112, 114, 123, 117, 112, 114, 119, 123, 119, 112, 108, 28.11498 + 114, 117, 103, 110, 98, 101, 94, 89, 86, 96, 91, 101, 91, 76, 84, 71, 28.11499 + 76, 71, 86, 105, 103, 101, 81, 94, 76, 66, 66, 57, 49, 74, 91, 108, 28.11500 + 112, 125, 129, 121, 112, 108, 105, 81, 71, 57, 41, 49, 57, 43, 49, 46, 28.11501 + 38, 63, 55, 57, 63, 76, 76, 121, 155, 181, 192, 203, 200, 185, 151, 133, 28.11502 + 94, 105, 131, 153, 169, 177, 185, 181, 184, 182, 190, 189, 185, 176, 165, 117, 28.11503 + 60, 66, 55, 74, 35, 20, 43, 35, 35, 43, 41, 60, 46, 49, 55, 55, 28.11504 + 38, 108, 41, 32, 32, 32, 66, 101, 35, 32, 20, 66, 119, 52, 129, 137, 28.11505 + 41, 23, 15, 103, 108, 117, 32, 15, 26, 98, 127, 68, 41, 66, 121, 127, 28.11506 + 127, 84, 66, 66, 23, 18, 18, 32, 23, 32, 52, 20, 35, 41, 49, 63, 28.11507 + 71, 89, 101, 103, 103, 103, 101, 110, 112, 117, 121, 125, 117, 123, 117, 125, 28.11508 + 117, 121, 125, 117, 121, 121, 133, 127, 131, 135, 129, 135, 133, 129, 131, 133, 28.11509 + 137, 135, 137, 133, 133, 135, 139, 141, 135, 147, 141, 143, 141, 139, 143, 147, 28.11510 + 143, 137, 141, 145, 137, 137, 145, 147, 137, 143, 145, 145, 141, 147, 147, 153, 28.11511 + 147, 153, 156, 160, 160, 164, 165, 165, 172, 172, 176, 184, 181, 184, 192, 195, 28.11512 + 195, 203, 203, 204, 209, 207, 213, 216, 215, 215, 216, 218, 221, 213, 79, 66, 28.11513 + 81, 94, 94, 103, 108, 110, 117, 112, 114, 117, 117, 121, 121, 125, 119, 112, 28.11514 + 114, 110, 103, 103, 105, 96, 98, 91, 89, 105, 103, 98, 94, 79, 74, 74, 28.11515 + 79, 76, 96, 101, 79, 86, 79, 55, 68, 68, 81, 68, 55, 81, 98, 117, 28.11516 + 119, 129, 127, 112, 119, 98, 81, 63, 46, 43, 41, 49, 35, 32, 38, 26, 28.11517 + 41, 46, 49, 41, 60, 49, 63, 110, 155, 192, 207, 209, 207, 206, 177, 137, 28.11518 + 105, 119, 133, 156, 167, 181, 181, 185, 185, 185, 187, 192, 185, 177, 131, 57, 28.11519 + 32, 46, 43, 49, 38, 49, 52, 32, 29, 46, 43, 60, 46, 46, 43, 63, 28.11520 + 32, 84, 84, 20, 35, 18, 91, 119, 66, 43, 32, 46, 114, 52, 84, 143, 28.11521 + 105, 49, 23, 89, 108, 127, 74, 15, 15, 60, 76, 145, 26, 26, 89, 98, 28.11522 + 129, 57, 29, 55, 23, 43, 20, 20, 41, 29, 29, 26, 38, 68, 68, 81, 28.11523 + 89, 103, 101, 108, 110, 105, 108, 112, 114, 119, 117, 119, 112, 117, 123, 123, 28.11524 + 127, 121, 125, 125, 117, 123, 131, 121, 131, 133, 127, 133, 131, 133, 131, 131, 28.11525 + 133, 131, 127, 139, 133, 137, 141, 137, 137, 141, 135, 137, 141, 139, 145, 143, 28.11526 + 139, 141, 145, 145, 141, 143, 139, 141, 141, 143, 141, 145, 145, 145, 147, 149, 28.11527 + 153, 149, 156, 162, 158, 169, 167, 169, 171, 176, 182, 182, 187, 190, 193, 192, 28.11528 + 192, 200, 206, 206, 207, 207, 212, 215, 215, 215, 213, 219, 216, 216, 123, 55, 28.11529 + 86, 89, 96, 108, 110, 110, 117, 117, 114, 121, 123, 125, 121, 123, 108, 117, 28.11530 + 110, 110, 110, 103, 101, 98, 89, 91, 108, 108, 110, 101, 84, 81, 76, 68, 28.11531 + 89, 98, 96, 94, 84, 68, 60, 49, 63, 57, 84, 63, 68, 103, 117, 125, 28.11532 + 127, 121, 123, 108, 98, 94, 84, 63, 57, 41, 49, 60, 38, 43, 35, 32, 28.11533 + 35, 49, 55, 38, 55, 52, 71, 114, 156, 203, 209, 212, 209, 209, 197, 153, 28.11534 + 103, 114, 129, 155, 167, 176, 184, 184, 187, 182, 189, 189, 185, 174, 143, 105, 28.11535 + 52, 46, 46, 38, 55, 26, 35, 38, 32, 43, 43, 52, 49, 38, 46, 60, 28.11536 + 38, 52, 117, 18, 26, 35, 125, 103, 35, 38, 41, 52, 110, 68, 55, 156, 28.11537 + 147, 55, 23, 20, 79, 129, 32, 60, 12, 32, 71, 123, 105, 18, 43, 60, 28.11538 + 112, 123, 76, 46, 38, 29, 23, 15, 32, 35, 29, 35, 63, 76, 86, 91, 28.11539 + 91, 105, 105, 110, 114, 110, 105, 110, 112, 119, 119, 121, 119, 123, 121, 117, 28.11540 + 123, 125, 125, 123, 129, 123, 123, 123, 123, 127, 127, 129, 133, 133, 127, 127, 28.11541 + 131, 133, 137, 129, 129, 129, 131, 133, 139, 145, 133, 141, 147, 147, 143, 145, 28.11542 + 143, 147, 153, 141, 147, 147, 141, 149, 145, 139, 145, 143, 151, 147, 147, 147, 28.11543 + 153, 149, 155, 158, 156, 162, 167, 167, 172, 174, 176, 185, 189, 185, 189, 195, 28.11544 + 192, 197, 203, 206, 206, 207, 210, 212, 213, 215, 213, 216, 218, 218, 171, 71, 28.11545 + 76, 84, 84, 94, 84, 108, 117, 105, 110, 127, 129, 125, 127, 117, 121, 119, 28.11546 + 112, 114, 114, 112, 101, 101, 98, 108, 114, 114, 110, 103, 91, 89, 79, 89, 28.11547 + 91, 98, 103, 89, 81, 57, 68, 57, 55, 66, 60, 74, 86, 108, 121, 129, 28.11548 + 129, 127, 112, 110, 91, 71, 63, 46, 38, 46, 46, 41, 38, 41, 41, 60, 28.11549 + 35, 41, 43, 41, 52, 46, 49, 112, 165, 204, 209, 212, 213, 209, 200, 179, 28.11550 + 98, 112, 127, 153, 167, 176, 181, 184, 185, 182, 189, 187, 181, 174, 149, 137, 28.11551 + 79, 46, 29, 32, 60, 35, 57, 35, 57, 91, 49, 38, 41, 38, 52, 55, 28.11552 + 55, 35, 94, 52, 35, 23, 155, 79, 35, 32, 32, 84, 123, 43, 81, 114, 28.11553 + 162, 81, 23, 23, 35, 110, 71, 55, 49, 20, 76, 60, 121, 43, 35, 63, 28.11554 + 91, 110, 103, 121, 26, 20, 6, 15, 20, 26, 41, 60, 66, 71, 91, 103, 28.11555 + 101, 105, 98, 103, 112, 119, 110, 103, 117, 121, 125, 121, 119, 123, 117, 121, 28.11556 + 119, 121, 125, 121, 125, 123, 119, 129, 125, 127, 127, 123, 133, 133, 127, 131, 28.11557 + 131, 135, 131, 131, 137, 135, 137, 129, 141, 135, 137, 141, 137, 139, 151, 141, 28.11558 + 141, 143, 139, 147, 147, 143, 137, 147, 143, 141, 145, 151, 143, 149, 149, 153, 28.11559 + 155, 147, 149, 160, 158, 164, 169, 167, 172, 171, 182, 184, 181, 184, 190, 193, 28.11560 + 198, 197, 198, 203, 212, 210, 210, 212, 212, 215, 216, 216, 218, 219, 200, 55, 28.11561 + 68, 76, 96, 114, 105, 114, 96, 117, 110, 129, 123, 127, 117, 121, 121, 112, 28.11562 + 112, 110, 103, 108, 105, 108, 110, 112, 121, 123, 112, 98, 89, 84, 94, 105, 28.11563 + 101, 101, 91, 81, 79, 84, 71, 79, 68, 57, 81, 86, 108, 125, 131, 131, 28.11564 + 133, 123, 112, 96, 84, 71, 46, 38, 41, 35, 46, 52, 43, 49, 63, 63, 28.11565 + 38, 49, 41, 35, 55, 43, 55, 112, 171, 206, 209, 210, 210, 207, 201, 182, 28.11566 + 108, 117, 131, 151, 165, 179, 182, 182, 184, 182, 184, 182, 181, 182, 129, 131, 28.11567 + 91, 35, 32, 26, 46, 20, 49, 26, 43, 41, 46, 46, 41, 46, 84, 84, 28.11568 + 79, 52, 49, 74, 43, 46, 151, 71, 38, 32, 43, 79, 112, 15, 94, 76, 28.11569 + 149, 139, 35, 15, 46, 133, 139, 38, 71, 43, 49, 91, 60, 91, 18, 71, 28.11570 + 79, 133, 84, 129, 127, 38, 18, 15, 18, 32, 41, 57, 76, 79, 84, 91, 28.11571 + 98, 103, 108, 108, 114, 112, 112, 108, 112, 117, 123, 121, 119, 117, 121, 125, 28.11572 + 121, 125, 123, 125, 129, 123, 119, 114, 137, 127, 131, 129, 125, 129, 127, 129, 28.11573 + 135, 137, 129, 131, 131, 133, 135, 139, 137, 141, 143, 149, 145, 145, 133, 139, 28.11574 + 145, 139, 141, 139, 147, 147, 147, 147, 155, 147, 141, 145, 145, 155, 149, 155, 28.11575 + 156, 156, 155, 155, 164, 164, 167, 165, 162, 172, 172, 182, 177, 185, 192, 192, 28.11576 + 190, 197, 200, 204, 206, 207, 207, 210, 212, 213, 216, 216, 216, 218, 213, 89, 28.11577 + 76, 79, 86, 86, 94, 110, 103, 108, 121, 117, 123, 123, 121, 123, 129, 112, 28.11578 + 112, 114, 108, 117, 114, 105, 117, 121, 121, 119, 108, 101, 86, 89, 91, 96, 28.11579 + 81, 84, 74, 89, 79, 84, 89, 66, 68, 71, 89, 108, 121, 135, 133, 133, 28.11580 + 125, 114, 98, 89, 68, 55, 60, 26, 32, 43, 43, 63, 43, 63, 96, 76, 28.11581 + 32, 38, 41, 35, 46, 46, 46, 89, 169, 206, 206, 209, 209, 204, 197, 184, 28.11582 + 98, 108, 133, 155, 164, 176, 181, 182, 182, 185, 185, 185, 184, 177, 112, 98, 28.11583 + 74, 41, 57, 20, 18, 29, 55, 35, 52, 49, 79, 43, 41, 55, 71, 96, 28.11584 + 71, 35, 43, 55, 60, 79, 149, 35, 52, 38, 52, 79, 129, 23, 71, 68, 28.11585 + 76, 135, 105, 23, 46, 145, 137, 49, 15, 26, 49, 91, 68, 41, 29, 26, 28.11586 + 41, 103, 71, 86, 143, 139, 35, 43, 32, 57, 66, 68, 76, 79, 96, 101, 28.11587 + 103, 105, 110, 103, 108, 121, 114, 114, 123, 114, 123, 119, 121, 119, 127, 117, 28.11588 + 121, 125, 119, 119, 127, 123, 119, 127, 131, 127, 127, 127, 131, 133, 125, 125, 28.11589 + 131, 131, 137, 133, 131, 139, 135, 137, 143, 139, 141, 137, 141, 147, 137, 147, 28.11590 + 143, 145, 147, 141, 147, 149, 147, 143, 153, 147, 153, 139, 145, 153, 147, 149, 28.11591 + 153, 155, 156, 158, 160, 162, 171, 165, 169, 169, 172, 174, 179, 184, 185, 192, 28.11592 + 193, 197, 200, 200, 203, 207, 206, 210, 212, 212, 213, 210, 216, 221, 221, 127, 28.11593 + 71, 81, 94, 96, 89, 98, 94, 117, 110, 121, 119, 121, 129, 129, 123, 123, 28.11594 + 121, 114, 114, 119, 125, 129, 135, 129, 121, 110, 110, 86, 94, 91, 76, 84, 28.11595 + 79, 81, 68, 91, 86, 84, 84, 81, 71, 81, 91, 114, 133, 139, 137, 131, 28.11596 + 131, 105, 89, 76, 49, 43, 41, 38, 41, 41, 43, 52, 68, 84, 94, 91, 28.11597 + 32, 46, 43, 38, 52, 29, 38, 79, 156, 206, 206, 206, 209, 204, 197, 174, 28.11598 + 108, 121, 133, 155, 167, 169, 176, 185, 184, 182, 185, 185, 179, 182, 129, 94, 28.11599 + 66, 38, 32, 18, 18, 43, 68, 15, 46, 23, 71, 55, 41, 55, 63, 63, 28.11600 + 63, 55, 38, 68, 96, 149, 96, 38, 71, 18, 46, 66, 123, 35, 35, 76, 28.11601 + 60, 55, 151, 91, 35, 137, 98, 29, 38, 35, 32, 57, 79, 63, 66, 23, 28.11602 + 38, 74, 98, 18, 103, 71, 129, 35, 60, 66, 68, 84, 79, 81, 89, 96, 28.11603 + 103, 101, 101, 108, 110, 114, 112, 117, 114, 119, 127, 127, 119, 123, 119, 123, 28.11604 + 119, 121, 123, 129, 125, 127, 123, 123, 123, 121, 129, 131, 133, 129, 125, 125, 28.11605 + 127, 125, 131, 133, 133, 137, 133, 131, 137, 139, 141, 139, 137, 141, 137, 137, 28.11606 + 141, 139, 141, 141, 145, 145, 147, 149, 147, 147, 147, 147, 153, 151, 149, 149, 28.11607 + 162, 167, 158, 155, 160, 165, 164, 171, 165, 167, 174, 172, 177, 181, 184, 192, 28.11608 + 192, 198, 198, 203, 200, 203, 206, 207, 210, 212, 213, 212, 216, 215, 218, 160, 28.11609 + 108, 101, 98, 96, 94, 94, 96, 101, 108, 108, 125, 133, 133, 135, 129, 123, 28.11610 + 117, 121, 123, 121, 131, 137, 139, 133, 119, 117, 91, 76, 84, 76, 74, 71, 28.11611 + 68, 60, 84, 89, 91, 91, 81, 76, 79, 96, 101, 125, 133, 139, 137, 131, 28.11612 + 121, 101, 71, 49, 49, 38, 26, 20, 26, 35, 60, 74, 94, 94, 91, 96 }; 28.11613 + 28.11614 +/* Define image 'milla' of size 211x242x1x3 and type 'const unsigned char' */ 28.11615 +const unsigned char data_milla[] = { 28.11616 + 93, 92, 92, 91, 91, 90, 90, 90, 92, 90, 92, 91, 91, 92, 92, 92, 28.11617 + 93, 99, 97, 95, 101, 95, 89, 93, 92, 92, 94, 96, 97, 95, 95, 94, 28.11618 + 96, 96, 96, 96, 96, 96, 96, 96, 93, 94, 95, 96, 97, 98, 98, 98, 28.11619 + 94, 98, 98, 95, 96, 99, 99, 97, 99, 98, 98, 97, 97, 98, 98, 100, 28.11620 + 103, 103, 103, 102, 102, 103, 102, 102, 100, 101, 102, 101, 101, 101, 101, 100, 28.11621 + 102, 103, 103, 104, 103, 104, 104, 104, 104, 102, 104, 103, 103, 104, 104, 104, 28.11622 + 103, 103, 105, 104, 106, 105, 107, 105, 110, 107, 108, 105, 108, 107, 111, 110, 28.11623 + 108, 111, 108, 104, 112, 109, 108, 112, 112, 111, 115, 113, 113, 111, 115, 114, 28.11624 + 109, 108, 109, 110, 110, 110, 110, 109, 104, 111, 109, 105, 111, 108, 106, 112, 28.11625 + 107, 105, 104, 103, 104, 106, 109, 110, 110, 112, 108, 116, 112, 106, 108, 84, 28.11626 + 14, 31, 62, 66, 85, 85, 103, 106, 107, 109, 103, 105, 116, 114, 105, 109, 28.11627 + 112, 110, 110, 113, 113, 111, 112, 115, 116, 115, 113, 113, 115, 115, 113, 112, 28.11628 + 111, 112, 112, 112, 112, 111, 110, 109, 113, 113, 113, 112, 112, 111, 111, 111, 28.11629 + 114, 113, 113, 94, 94, 94, 93, 92, 91, 91, 91, 85, 85, 88, 88, 89, 28.11630 + 90, 88, 89, 93, 94, 94, 93, 92, 93, 95, 97, 93, 94, 96, 94, 93, 28.11631 + 92, 94, 94, 95, 95, 96, 95, 94, 92, 89, 88, 93, 93, 93, 93, 93, 28.11632 + 94, 96, 96, 96, 96, 96, 97, 97, 98, 98, 98, 100, 99, 99, 98, 98, 28.11633 + 99, 99, 100, 98, 100, 102, 100, 99, 98, 98, 99, 100, 103, 104, 100, 100, 28.11634 + 103, 102, 99, 101, 101, 101, 102, 102, 103, 103, 103, 105, 104, 105, 105, 105, 28.11635 + 106, 106, 106, 102, 105, 106, 102, 104, 106, 107, 104, 104, 103, 104, 104, 105, 28.11636 + 105, 106, 105, 105, 106, 109, 108, 108, 106, 108, 108, 106, 109, 110, 106, 108, 28.11637 + 110, 111, 108, 112, 110, 106, 107, 111, 112, 109, 107, 110, 109, 107, 105, 106, 28.11638 + 106, 109, 110, 106, 109, 109, 106, 106, 109, 109, 106, 114, 109, 111, 110, 116, 28.11639 + 99, 108, 78, 9, 30, 59, 64, 90, 88, 99, 105, 107, 111, 104, 104, 114, 28.11640 + 112, 104, 104, 109, 107, 107, 110, 111, 108, 108, 112, 113, 113, 113, 113, 113, 28.11641 + 113, 113, 113, 110, 112, 114, 114, 112, 111, 111, 112, 114, 114, 112, 111, 111, 28.11642 + 111, 111, 111, 109, 116, 113, 93, 94, 92, 92, 91, 90, 90, 88, 89, 88, 28.11643 + 89, 90, 89, 89, 89, 91, 92, 94, 94, 93, 92, 93, 94, 97, 91, 92, 28.11644 + 92, 92, 90, 90, 91, 92, 93, 93, 94, 94, 94, 93, 92, 92, 96, 95, 28.11645 + 94, 93, 93, 93, 94, 94, 96, 96, 96, 97, 97, 98, 98, 98, 100, 99, 28.11646 + 99, 98, 98, 99, 99, 100, 98, 99, 101, 101, 100, 98, 99, 100, 100, 104, 28.11647 + 104, 101, 101, 104, 103, 99, 101, 101, 102, 102, 102, 103, 103, 103, 105, 105, 28.11648 + 105, 106, 106, 107, 107, 106, 102, 105, 105, 102, 103, 106, 106, 104, 103, 103, 28.11649 + 104, 104, 104, 105, 105, 105, 104, 107, 109, 109, 108, 107, 108, 109, 106, 109, 28.11650 + 109, 106, 107, 110, 111, 108, 111, 110, 107, 108, 110, 111, 109, 108, 109, 109, 28.11651 + 107, 106, 106, 107, 108, 108, 108, 111, 111, 108, 108, 111, 111, 108, 113, 109, 28.11652 + 111, 109, 116, 100, 109, 78, 9, 30, 58, 62, 90, 88, 99, 105, 107, 109, 28.11653 + 103, 103, 114, 113, 104, 107, 110, 108, 108, 112, 112, 109, 110, 113, 113, 113, 28.11654 + 113, 113, 113, 113, 113, 113, 110, 112, 114, 114, 112, 111, 111, 112, 114, 113, 28.11655 + 112, 111, 111, 111, 111, 112, 109, 116, 113, 92, 91, 91, 91, 90, 89, 87, 28.11656 + 87, 91, 91, 89, 89, 87, 89, 91, 92, 92, 94, 94, 94, 93, 93, 94, 28.11657 + 96, 91, 93, 92, 92, 91, 90, 91, 92, 92, 92, 92, 92, 93, 93, 94, 28.11658 + 95, 97, 96, 95, 94, 93, 93, 93, 93, 96, 96, 96, 97, 97, 98, 98, 28.11659 + 98, 100, 99, 99, 98, 98, 99, 99, 100, 98, 100, 102, 102, 100, 99, 100, 28.11660 + 101, 101, 104, 105, 102, 101, 103, 102, 98, 101, 102, 102, 102, 103, 103, 103, 28.11661 + 103, 105, 105, 105, 106, 106, 107, 107, 106, 102, 105, 105, 102, 103, 106, 106, 28.11662 + 104, 103, 104, 104, 104, 105, 105, 105, 105, 105, 108, 110, 110, 109, 108, 109, 28.11663 + 110, 106, 109, 109, 107, 107, 110, 111, 108, 109, 110, 110, 109, 109, 108, 109, 28.11664 + 110, 109, 109, 107, 107, 107, 107, 108, 108, 109, 112, 112, 109, 109, 112, 112, 28.11665 + 109, 111, 108, 110, 108, 116, 102, 110, 77, 10, 30, 59, 63, 90, 88, 99, 28.11666 + 105, 105, 108, 102, 102, 115, 114, 106, 108, 111, 109, 109, 113, 113, 110, 111, 28.11667 + 114, 113, 113, 113, 113, 113, 113, 113, 113, 110, 112, 114, 114, 112, 111, 111, 28.11668 + 112, 114, 113, 112, 111, 111, 111, 112, 112, 109, 116, 113, 92, 92, 91, 91, 28.11669 + 90, 90, 88, 88, 91, 90, 87, 86, 84, 86, 89, 91, 92, 94, 95, 94, 28.11670 + 93, 93, 94, 96, 94, 95, 95, 94, 93, 93, 94, 95, 94, 93, 92, 91, 28.11671 + 91, 93, 95, 96, 96, 96, 95, 94, 94, 94, 95, 95, 96, 96, 96, 97, 28.11672 + 97, 98, 98, 98, 100, 99, 99, 98, 98, 99, 99, 100, 99, 101, 103, 103, 28.11673 + 101, 100, 101, 102, 102, 105, 105, 102, 101, 103, 102, 98, 102, 102, 102, 103, 28.11674 + 103, 103, 104, 104, 105, 105, 105, 106, 106, 107, 107, 106, 102, 105, 105, 102, 28.11675 + 103, 106, 106, 104, 104, 104, 104, 105, 105, 105, 106, 106, 106, 108, 110, 111, 28.11676 + 109, 109, 109, 111, 106, 109, 110, 107, 107, 111, 111, 108, 108, 111, 111, 110, 28.11677 + 108, 107, 108, 111, 109, 109, 108, 107, 107, 108, 108, 108, 108, 111, 111, 108, 28.11678 + 108, 111, 111, 108, 110, 108, 109, 107, 116, 103, 111, 75, 11, 31, 60, 63, 28.11679 + 90, 88, 99, 105, 106, 109, 103, 102, 114, 113, 105, 107, 110, 108, 109, 112, 28.11680 + 112, 110, 110, 113, 114, 114, 113, 113, 113, 113, 112, 112, 110, 112, 114, 114, 28.11681 + 112, 111, 111, 112, 113, 113, 112, 111, 111, 111, 112, 113, 109, 116, 113, 92, 28.11682 + 92, 92, 92, 92, 92, 90, 90, 92, 91, 88, 86, 87, 88, 89, 90, 91, 28.11683 + 93, 95, 95, 94, 93, 93, 95, 94, 96, 95, 95, 94, 94, 94, 96, 96, 28.11684 + 95, 93, 91, 91, 92, 93, 94, 93, 93, 93, 94, 95, 96, 98, 99, 96, 28.11685 + 96, 96, 97, 97, 98, 98, 98, 100, 99, 99, 98, 98, 99, 99, 100, 99, 28.11686 + 101, 103, 103, 101, 100, 101, 102, 101, 104, 105, 102, 101, 103, 102, 98, 102, 28.11687 + 102, 103, 103, 103, 104, 104, 104, 105, 105, 105, 106, 106, 107, 107, 106, 102, 28.11688 + 105, 105, 102, 103, 106, 106, 104, 104, 104, 105, 105, 105, 106, 106, 106, 106, 28.11689 + 108, 110, 111, 109, 109, 109, 111, 107, 110, 110, 108, 108, 111, 112, 109, 108, 28.11690 + 111, 111, 110, 108, 107, 108, 111, 109, 109, 108, 109, 109, 108, 108, 108, 107, 28.11691 + 110, 110, 107, 107, 110, 110, 107, 109, 108, 110, 106, 116, 105, 110, 72, 12, 28.11692 + 32, 60, 64, 91, 88, 98, 105, 108, 111, 104, 103, 114, 112, 103, 105, 109, 28.11693 + 107, 107, 111, 111, 108, 109, 112, 114, 114, 114, 113, 113, 112, 112, 112, 110, 28.11694 + 112, 114, 114, 112, 111, 111, 112, 113, 112, 111, 111, 111, 112, 113, 113, 109, 28.11695 + 116, 113, 91, 92, 92, 92, 92, 93, 91, 91, 94, 93, 91, 90, 90, 91, 28.11696 + 93, 93, 91, 93, 95, 95, 94, 94, 93, 94, 92, 94, 93, 93, 92, 92, 28.11697 + 92, 94, 95, 94, 93, 93, 92, 92, 92, 92, 92, 93, 93, 94, 96, 98, 28.11698 + 99, 100, 96, 96, 96, 97, 97, 98, 98, 98, 100, 99, 99, 98, 98, 99, 28.11699 + 99, 100, 98, 100, 102, 102, 100, 99, 100, 101, 100, 103, 104, 101, 101, 104, 28.11700 + 103, 100, 103, 103, 103, 103, 104, 104, 104, 105, 105, 105, 105, 106, 106, 107, 28.11701 + 107, 106, 102, 105, 105, 102, 103, 106, 106, 104, 105, 105, 105, 105, 106, 106, 28.11702 + 106, 107, 105, 108, 110, 110, 109, 108, 109, 110, 107, 110, 111, 108, 108, 112, 28.11703 + 112, 109, 109, 110, 110, 109, 109, 108, 109, 110, 109, 109, 109, 109, 109, 109, 28.11704 + 108, 108, 106, 109, 109, 106, 106, 109, 109, 106, 110, 109, 110, 105, 115, 105, 28.11705 + 110, 68, 13, 33, 61, 64, 91, 88, 98, 105, 109, 111, 105, 103, 114, 111, 28.11706 + 102, 104, 108, 106, 107, 110, 110, 108, 108, 111, 115, 115, 114, 113, 113, 112, 28.11707 + 111, 111, 110, 112, 114, 114, 112, 111, 111, 112, 112, 112, 111, 111, 111, 112, 28.11708 + 113, 114, 109, 116, 113, 90, 90, 91, 89, 89, 90, 90, 90, 93, 93, 93, 28.11709 + 93, 93, 92, 92, 92, 90, 93, 95, 96, 95, 94, 93, 94, 93, 94, 94, 28.11710 + 93, 92, 92, 92, 94, 92, 92, 93, 94, 94, 94, 93, 93, 94, 94, 94, 28.11711 + 95, 96, 97, 98, 99, 96, 96, 96, 97, 97, 98, 98, 98, 100, 99, 99, 28.11712 + 98, 98, 99, 99, 100, 98, 99, 101, 101, 100, 98, 99, 100, 98, 102, 103, 28.11713 + 101, 102, 105, 105, 102, 103, 103, 103, 104, 104, 104, 105, 105, 105, 105, 105, 28.11714 + 106, 106, 107, 107, 106, 102, 105, 105, 102, 103, 106, 106, 104, 105, 105, 105, 28.11715 + 106, 106, 106, 107, 107, 104, 107, 109, 109, 108, 107, 108, 109, 107, 110, 111, 28.11716 + 108, 109, 112, 112, 109, 111, 110, 107, 108, 110, 111, 109, 108, 109, 109, 109, 28.11717 + 110, 110, 109, 108, 108, 107, 110, 110, 107, 107, 110, 110, 107, 111, 111, 111, 28.11718 + 104, 115, 106, 108, 64, 13, 34, 62, 65, 91, 88, 98, 104, 108, 110, 104, 28.11719 + 103, 114, 112, 103, 106, 109, 107, 108, 111, 111, 109, 109, 112, 115, 115, 114, 28.11720 + 113, 113, 112, 111, 111, 110, 112, 114, 114, 112, 111, 111, 112, 112, 111, 111, 28.11721 + 111, 111, 112, 113, 114, 109, 116, 113, 87, 87, 87, 88, 88, 89, 89, 89, 28.11722 + 90, 91, 91, 92, 92, 91, 90, 90, 90, 93, 95, 96, 95, 94, 93, 94, 28.11723 + 95, 97, 96, 96, 95, 94, 95, 96, 88, 89, 92, 94, 95, 96, 95, 95, 28.11724 + 96, 96, 95, 95, 95, 96, 97, 97, 96, 96, 96, 97, 97, 98, 98, 98, 28.11725 + 100, 99, 99, 98, 98, 99, 99, 100, 97, 99, 101, 100, 99, 98, 98, 99, 28.11726 + 97, 101, 102, 101, 102, 106, 106, 103, 103, 103, 103, 104, 104, 105, 105, 105, 28.11727 + 105, 105, 105, 106, 106, 107, 107, 106, 102, 105, 105, 102, 103, 106, 106, 104, 28.11728 + 105, 105, 105, 106, 106, 107, 107, 107, 104, 106, 108, 108, 107, 106, 107, 108, 28.11729 + 107, 111, 111, 108, 109, 112, 112, 110, 112, 110, 106, 107, 111, 112, 109, 107, 28.11730 + 108, 109, 110, 111, 111, 110, 108, 107, 109, 112, 112, 109, 109, 112, 112, 109, 28.11731 + 111, 112, 112, 104, 115, 106, 108, 62, 14, 34, 62, 65, 91, 88, 98, 104, 28.11732 + 105, 108, 102, 102, 114, 113, 105, 108, 110, 109, 109, 112, 113, 110, 110, 114, 28.11733 + 115, 115, 114, 113, 113, 112, 111, 111, 110, 112, 114, 114, 112, 111, 111, 112, 28.11734 + 111, 111, 111, 111, 111, 112, 114, 114, 109, 116, 113, 91, 91, 92, 92, 92, 28.11735 + 91, 90, 90, 92, 91, 90, 91, 93, 94, 93, 92, 94, 94, 94, 94, 94, 28.11736 + 94, 93, 93, 95, 96, 94, 95, 95, 94, 93, 92, 94, 91, 91, 94, 94, 28.11737 + 91, 91, 94, 97, 96, 96, 96, 96, 97, 98, 99, 101, 100, 98, 96, 95, 28.11738 + 95, 96, 96, 99, 100, 101, 102, 102, 100, 99, 98, 100, 99, 99, 99, 99, 28.11739 + 100, 101, 102, 106, 105, 103, 102, 101, 101, 102, 103, 104, 104, 104, 105, 105, 28.11740 + 106, 106, 106, 106, 106, 107, 107, 107, 108, 108, 107, 107, 105, 104, 104, 106, 28.11741 + 106, 105, 104, 110, 104, 107, 109, 103, 106, 111, 106, 108, 108, 108, 109, 109, 28.11742 + 110, 110, 110, 111, 110, 110, 110, 110, 110, 109, 109, 115, 114, 110, 110, 110, 28.11743 + 110, 111, 112, 110, 110, 109, 109, 109, 109, 109, 109, 110, 112, 111, 107, 107, 28.11744 + 111, 112, 110, 117, 109, 114, 111, 113, 102, 107, 58, 13, 37, 65, 65, 92, 28.11745 + 92, 102, 106, 113, 106, 104, 108, 113, 111, 106, 106, 110, 109, 110, 112, 111, 28.11746 + 107, 108, 112, 116, 115, 113, 111, 109, 108, 108, 107, 110, 114, 115, 112, 112, 28.11747 + 114, 112, 108, 117, 115, 111, 108, 108, 110, 113, 115, 108, 117, 115, 90, 90, 28.11748 + 91, 92, 91, 91, 91, 90, 92, 91, 90, 91, 93, 94, 95, 94, 94, 94, 28.11749 + 94, 94, 94, 94, 93, 93, 95, 96, 94, 95, 95, 94, 93, 92, 95, 92, 28.11750 + 92, 95, 95, 92, 92, 95, 97, 96, 96, 96, 96, 97, 98, 99, 96, 96, 28.11751 + 96, 96, 97, 98, 99, 100, 99, 100, 100, 101, 101, 100, 100, 99, 100, 100, 28.11752 + 99, 99, 100, 100, 101, 102, 104, 103, 102, 102, 102, 103, 104, 105, 104, 104, 28.11753 + 104, 105, 105, 106, 106, 106, 106, 106, 106, 106, 107, 107, 107, 107, 106, 104, 28.11754 + 102, 103, 105, 105, 104, 103, 109, 103, 107, 109, 103, 106, 110, 105, 108, 108, 28.11755 + 108, 109, 109, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 111, 112, 111, 28.11756 + 108, 108, 108, 108, 108, 109, 110, 110, 109, 109, 109, 109, 109, 109, 109, 112, 28.11757 + 111, 108, 108, 111, 112, 109, 113, 107, 112, 109, 114, 104, 109, 60, 14, 37, 28.11758 + 65, 65, 92, 92, 102, 106, 113, 106, 104, 108, 113, 111, 106, 106, 110, 109, 28.11759 + 110, 112, 111, 107, 108, 113, 114, 114, 113, 112, 111, 111, 112, 112, 111, 114, 28.11760 + 114, 111, 111, 113, 112, 109, 116, 114, 111, 109, 109, 110, 112, 114, 112, 116, 28.11761 + 112, 90, 88, 90, 90, 90, 90, 91, 91, 92, 91, 92, 93, 95, 96, 96, 28.11762 + 94, 94, 94, 94, 94, 94, 95, 94, 94, 95, 96, 94, 95, 95, 94, 93, 28.11763 + 92, 95, 92, 92, 95, 95, 92, 92, 95, 97, 96, 96, 96, 96, 97, 98, 28.11764 + 99, 95, 95, 96, 98, 99, 99, 99, 99, 100, 100, 100, 99, 99, 100, 100, 28.11765 + 101, 100, 100, 99, 99, 100, 101, 102, 102, 102, 102, 101, 102, 103, 104, 105, 28.11766 + 106, 104, 104, 104, 105, 105, 106, 106, 106, 105, 105, 105, 106, 106, 107, 107, 28.11767 + 106, 105, 103, 102, 102, 104, 105, 103, 102, 109, 103, 106, 108, 102, 105, 110, 28.11768 + 105, 108, 108, 108, 109, 109, 110, 110, 110, 109, 109, 109, 110, 111, 111, 112, 28.11769 + 112, 112, 111, 109, 108, 108, 109, 108, 109, 110, 110, 109, 109, 109, 109, 109, 28.11770 + 109, 108, 111, 112, 109, 109, 112, 111, 108, 110, 105, 110, 108, 114, 107, 112, 28.11771 + 60, 14, 38, 66, 66, 92, 92, 102, 105, 113, 106, 104, 108, 113, 111, 106, 28.11772 + 106, 110, 109, 110, 113, 111, 108, 109, 113, 112, 112, 112, 112, 113, 114, 115, 28.11773 + 116, 112, 115, 114, 110, 110, 113, 113, 110, 114, 113, 112, 111, 111, 111, 112, 28.11774 + 112, 114, 116, 109, 90, 88, 89, 89, 90, 90, 92, 92, 92, 91, 92, 93, 28.11775 + 95, 96, 96, 94, 96, 94, 94, 95, 95, 95, 94, 95, 95, 96, 94, 95, 28.11776 + 95, 94, 93, 92, 95, 92, 92, 95, 95, 92, 92, 95, 97, 96, 96, 96, 28.11777 + 96, 97, 98, 99, 97, 98, 99, 100, 99, 98, 96, 95, 101, 100, 99, 98, 28.11778 + 98, 100, 101, 102, 101, 100, 100, 100, 100, 101, 102, 103, 102, 102, 102, 102, 28.11779 + 103, 104, 104, 105, 104, 104, 104, 105, 105, 106, 106, 106, 105, 105, 105, 105, 28.11780 + 106, 106, 107, 106, 106, 104, 103, 103, 105, 105, 104, 103, 108, 103, 106, 108, 28.11781 + 102, 105, 109, 105, 108, 108, 108, 109, 109, 110, 110, 110, 108, 109, 109, 110, 28.11782 + 111, 112, 113, 113, 113, 113, 111, 111, 111, 111, 110, 110, 111, 111, 110, 110, 28.11783 + 110, 110, 110, 110, 107, 111, 112, 110, 110, 112, 111, 107, 109, 105, 110, 107, 28.11784 + 114, 108, 112, 57, 15, 38, 66, 66, 93, 92, 102, 105, 113, 106, 104, 108, 28.11785 + 113, 111, 106, 106, 109, 109, 110, 113, 112, 108, 110, 114, 112, 112, 111, 112, 28.11786 + 112, 113, 115, 115, 113, 115, 113, 109, 109, 112, 113, 111, 112, 113, 113, 113, 28.11787 + 112, 112, 111, 110, 113, 116, 110, 90, 87, 87, 87, 89, 90, 93, 93, 92, 28.11788 + 91, 92, 93, 96, 97, 96, 94, 96, 94, 94, 95, 95, 96, 95, 96, 95, 28.11789 + 96, 94, 95, 95, 94, 93, 92, 96, 93, 93, 96, 96, 93, 93, 96, 97, 28.11790 + 96, 96, 96, 96, 97, 98, 99, 97, 98, 99, 100, 100, 99, 97, 96, 100, 28.11791 + 100, 99, 98, 99, 100, 102, 103, 101, 101, 100, 100, 101, 101, 102, 103, 104, 28.11792 + 104, 104, 104, 103, 102, 102, 101, 104, 104, 104, 105, 105, 106, 106, 106, 105, 28.11793 + 105, 105, 106, 106, 107, 107, 106, 108, 106, 105, 105, 107, 107, 106, 105, 109, 28.11794 + 103, 106, 108, 102, 105, 110, 105, 108, 108, 108, 109, 109, 110, 110, 110, 109, 28.11795 + 109, 110, 111, 112, 113, 113, 114, 113, 113, 111, 111, 111, 111, 110, 110, 111, 28.11796 + 111, 110, 110, 110, 110, 110, 110, 107, 111, 112, 110, 110, 112, 111, 107, 111, 28.11797 + 108, 112, 106, 113, 108, 109, 52, 16, 39, 67, 67, 93, 92, 102, 105, 113, 28.11798 + 106, 104, 108, 113, 111, 106, 106, 109, 109, 110, 113, 112, 109, 111, 115, 113, 28.11799 + 112, 111, 111, 110, 111, 111, 111, 113, 115, 113, 109, 109, 112, 113, 111, 112, 28.11800 + 112, 113, 113, 113, 112, 111, 110, 109, 117, 114, 88, 87, 86, 86, 89, 90, 28.11801 + 93, 95, 92, 91, 92, 93, 96, 97, 96, 95, 96, 94, 95, 95, 96, 97, 28.11802 + 96, 96, 95, 96, 94, 95, 95, 94, 93, 92, 96, 93, 93, 96, 96, 93, 28.11803 + 93, 96, 97, 96, 96, 96, 96, 97, 98, 99, 94, 95, 97, 99, 100, 101, 28.11804 + 102, 102, 99, 99, 99, 99, 100, 101, 102, 103, 101, 101, 101, 101, 101, 102, 28.11805 + 103, 103, 104, 104, 105, 104, 103, 102, 101, 100, 104, 104, 104, 105, 105, 106, 28.11806 + 106, 106, 106, 106, 107, 107, 107, 108, 108, 107, 109, 107, 105, 106, 108, 108, 28.11807 + 107, 106, 110, 104, 107, 109, 103, 106, 111, 106, 108, 108, 108, 109, 109, 110, 28.11808 + 110, 110, 110, 110, 111, 111, 112, 113, 113, 113, 110, 111, 109, 110, 110, 109, 28.11809 + 108, 107, 112, 112, 111, 111, 111, 111, 111, 111, 108, 111, 112, 109, 109, 112, 28.11810 + 111, 108, 112, 110, 113, 106, 113, 108, 108, 47, 17, 40, 68, 67, 93, 92, 28.11811 + 102, 105, 113, 106, 104, 108, 113, 111, 106, 106, 109, 109, 110, 114, 113, 110, 28.11812 + 111, 116, 114, 113, 112, 110, 109, 109, 109, 109, 112, 115, 114, 110, 110, 113, 28.11813 + 113, 110, 112, 113, 113, 113, 113, 112, 111, 110, 108, 117, 116, 88, 86, 86, 28.11814 + 85, 88, 90, 93, 95, 92, 93, 92, 93, 96, 97, 97, 95, 96, 94, 95, 28.11815 + 95, 96, 97, 97, 97, 95, 96, 94, 95, 95, 94, 93, 92, 96, 93, 93, 28.11816 + 96, 96, 93, 93, 96, 97, 96, 96, 96, 96, 97, 98, 99, 95, 96, 96, 28.11817 + 97, 99, 101, 103, 104, 97, 98, 99, 100, 101, 102, 102, 102, 102, 101, 101, 28.11818 + 101, 101, 102, 103, 104, 102, 103, 104, 104, 104, 103, 102, 101, 104, 104, 104, 28.11819 + 105, 105, 106, 106, 106, 107, 107, 108, 108, 109, 109, 109, 108, 108, 106, 105, 28.11820 + 105, 107, 108, 106, 105, 111, 105, 109, 110, 105, 107, 112, 107, 108, 108, 108, 28.11821 + 109, 109, 110, 110, 110, 111, 112, 112, 112, 112, 112, 112, 112, 110, 110, 109, 28.11822 + 110, 110, 109, 107, 107, 112, 112, 111, 111, 111, 111, 111, 111, 109, 112, 111, 28.11823 + 108, 108, 111, 112, 109, 112, 110, 113, 105, 113, 109, 108, 45, 18, 41, 68, 28.11824 + 68, 93, 92, 102, 105, 113, 106, 104, 108, 113, 111, 106, 106, 109, 109, 110, 28.11825 + 114, 113, 110, 112, 117, 115, 114, 113, 111, 111, 110, 110, 110, 111, 114, 114, 28.11826 + 111, 111, 113, 112, 109, 113, 113, 113, 112, 112, 111, 111, 111, 110, 117, 113, 28.11827 + 90, 87, 88, 87, 88, 90, 93, 96, 92, 93, 92, 93, 95, 96, 96, 94, 28.11828 + 94, 94, 95, 96, 97, 97, 97, 98, 95, 96, 94, 95, 95, 94, 94, 92, 28.11829 + 97, 94, 94, 97, 97, 94, 94, 97, 97, 96, 96, 97, 97, 98, 99, 100, 28.11830 + 100, 99, 98, 97, 97, 99, 100, 101, 96, 97, 99, 101, 102, 102, 101, 101, 28.11831 + 102, 101, 101, 100, 101, 101, 103, 103, 99, 100, 102, 103, 104, 104, 103, 103, 28.11832 + 105, 105, 105, 106, 106, 107, 107, 106, 108, 108, 108, 108, 108, 109, 109, 107, 28.11833 + 107, 106, 105, 104, 107, 106, 105, 104, 112, 106, 110, 111, 105, 108, 113, 108, 28.11834 + 108, 108, 108, 109, 109, 110, 111, 111, 114, 114, 113, 113, 113, 112, 112, 111, 28.11835 + 112, 112, 112, 113, 113, 112, 109, 109, 112, 112, 111, 111, 111, 111, 111, 111, 28.11836 + 110, 112, 111, 107, 107, 111, 112, 110, 110, 109, 112, 104, 113, 111, 109, 45, 28.11837 + 17, 41, 69, 70, 94, 93, 104, 106, 113, 105, 104, 108, 111, 111, 108, 108, 28.11838 + 110, 109, 111, 114, 113, 111, 112, 117, 115, 114, 113, 112, 112, 112, 113, 113, 28.11839 + 110, 114, 115, 112, 112, 114, 112, 108, 114, 113, 112, 111, 111, 111, 112, 112, 28.11840 + 114, 116, 109, 91, 91, 89, 90, 90, 91, 91, 91, 92, 91, 91, 91, 91, 28.11841 + 92, 92, 93, 92, 92, 92, 93, 93, 94, 94, 94, 96, 96, 96, 97, 97, 28.11842 + 98, 98, 96, 92, 93, 94, 95, 95, 95, 96, 95, 95, 96, 98, 100, 98, 28.11843 + 98, 100, 101, 99, 98, 98, 99, 99, 100, 100, 100, 102, 102, 102, 101, 101, 28.11844 + 100, 100, 100, 99, 106, 103, 98, 104, 99, 98, 103, 98, 102, 100, 96, 96, 28.11845 + 103, 105, 105, 109, 112, 112, 113, 111, 110, 109, 106, 106, 113, 108, 104, 106, 28.11846 + 103, 98, 108, 103, 108, 109, 105, 108, 110, 106, 98, 114, 110, 108, 110, 110, 28.11847 + 107, 107, 111, 109, 108, 107, 109, 110, 112, 113, 113, 113, 114, 114, 114, 115, 28.11848 + 112, 112, 111, 112, 112, 113, 113, 111, 111, 111, 112, 110, 111, 111, 110, 109, 28.11849 + 110, 112, 115, 107, 110, 112, 111, 108, 106, 107, 109, 112, 104, 112, 107, 108, 28.11850 + 105, 108, 41, 16, 44, 67, 77, 94, 102, 105, 109, 115, 104, 100, 108, 113, 28.11851 + 110, 107, 110, 112, 110, 110, 113, 114, 111, 111, 115, 112, 114, 116, 115, 113, 28.11852 + 112, 114, 116, 111, 115, 115, 112, 111, 113, 112, 108, 114, 113, 112, 111, 111, 28.11853 + 111, 111, 112, 110, 111, 112, 92, 92, 92, 92, 92, 93, 91, 91, 93, 93, 28.11854 + 91, 91, 92, 93, 92, 92, 92, 92, 93, 93, 93, 94, 94, 94, 96, 96, 28.11855 + 96, 97, 97, 98, 98, 96, 93, 91, 93, 94, 94, 95, 96, 96, 95, 97, 28.11856 + 100, 100, 100, 99, 101, 101, 99, 98, 98, 99, 99, 100, 100, 100, 102, 102, 28.11857 + 102, 101, 101, 100, 100, 100, 100, 107, 103, 100, 104, 101, 98, 105, 98, 101, 28.11858 + 100, 97, 98, 103, 104, 104, 109, 110, 110, 109, 109, 107, 107, 106, 99, 105, 28.11859 + 102, 98, 102, 99, 96, 105, 101, 104, 104, 100, 103, 106, 105, 100, 108, 104, 28.11860 + 101, 103, 102, 98, 98, 101, 105, 105, 106, 108, 111, 111, 112, 110, 115, 115, 28.11861 + 115, 113, 114, 113, 113, 114, 109, 110, 111, 110, 107, 107, 108, 109, 110, 111, 28.11862 + 111, 110, 110, 111, 113, 116, 108, 111, 113, 112, 109, 107, 108, 109, 114, 107, 28.11863 + 114, 108, 108, 104, 106, 37, 17, 44, 67, 78, 96, 104, 106, 109, 114, 103, 28.11864 + 99, 106, 112, 109, 108, 110, 112, 110, 110, 113, 114, 111, 111, 115, 112, 114, 28.11865 + 116, 115, 113, 112, 114, 116, 110, 114, 114, 111, 111, 113, 113, 109, 114, 113, 28.11866 + 112, 111, 111, 111, 111, 112, 112, 113, 113, 92, 93, 92, 92, 93, 93, 91, 28.11867 + 91, 94, 94, 93, 93, 93, 94, 93, 93, 92, 93, 93, 93, 94, 94, 94, 28.11868 + 94, 96, 96, 96, 97, 97, 98, 98, 96, 94, 92, 93, 92, 93, 94, 97, 28.11869 + 98, 95, 97, 100, 100, 100, 100, 101, 102, 99, 98, 98, 99, 99, 100, 100, 28.11870 + 100, 102, 102, 101, 101, 101, 101, 100, 100, 103, 110, 107, 104, 108, 105, 100, 28.11871 + 107, 101, 104, 105, 103, 103, 106, 106, 103, 107, 104, 102, 100, 100, 101, 103, 28.11872 + 104, 97, 104, 102, 98, 103, 101, 98, 105, 106, 106, 104, 101, 104, 108, 108, 28.11873 + 106, 110, 107, 106, 108, 108, 105, 106, 108, 102, 104, 105, 107, 108, 109, 108, 28.11874 + 108, 113, 113, 111, 108, 108, 107, 108, 108, 111, 111, 111, 110, 108, 109, 112, 28.11875 + 112, 109, 110, 111, 112, 113, 114, 116, 118, 111, 112, 113, 113, 111, 109, 110, 28.11876 + 110, 117, 109, 116, 110, 109, 104, 105, 35, 17, 44, 67, 79, 96, 104, 106, 28.11877 + 109, 112, 101, 98, 105, 112, 109, 107, 110, 112, 110, 110, 113, 114, 111, 111, 28.11878 + 115, 113, 114, 115, 115, 113, 113, 114, 115, 109, 113, 113, 111, 111, 114, 114, 28.11879 + 110, 114, 113, 112, 111, 111, 111, 111, 112, 114, 114, 114, 93, 93, 92, 93, 28.11880 + 93, 93, 92, 92, 94, 94, 93, 92, 93, 94, 93, 93, 93, 93, 93, 94, 28.11881 + 94, 94, 95, 95, 96, 96, 96, 97, 97, 98, 98, 96, 95, 92, 92, 91, 28.11882 + 92, 94, 97, 99, 96, 97, 101, 100, 100, 100, 101, 102, 99, 98, 98, 99, 28.11883 + 99, 100, 100, 100, 101, 101, 101, 101, 101, 101, 101, 102, 103, 111, 108, 105, 28.11884 + 109, 106, 103, 109, 104, 104, 108, 107, 107, 108, 107, 103, 103, 99, 97, 95, 28.11885 + 95, 97, 100, 102, 101, 108, 104, 101, 106, 105, 101, 106, 102, 99, 100, 100, 28.11886 + 103, 105, 105, 104, 108, 105, 105, 108, 109, 108, 111, 113, 111, 112, 114, 114, 28.11887 + 114, 115, 116, 117, 118, 117, 115, 113, 111, 110, 111, 111, 113, 114, 113, 111, 28.11888 + 108, 108, 112, 115, 106, 108, 112, 112, 114, 116, 119, 120, 112, 112, 113, 113, 28.11889 + 112, 112, 111, 111, 116, 109, 116, 110, 109, 105, 106, 35, 18, 45, 68, 79, 28.11890 + 96, 104, 106, 109, 111, 100, 97, 105, 111, 108, 107, 110, 112, 110, 110, 113, 28.11891 + 114, 111, 111, 115, 114, 114, 114, 114, 114, 114, 114, 114, 108, 112, 113, 111, 28.11892 + 112, 115, 115, 111, 114, 113, 112, 111, 111, 111, 111, 112, 114, 114, 113, 93, 28.11893 + 93, 93, 93, 93, 94, 92, 92, 93, 93, 92, 92, 92, 93, 92, 92, 93, 28.11894 + 93, 94, 94, 94, 95, 95, 95, 96, 96, 96, 97, 97, 98, 98, 96, 96, 28.11895 + 94, 92, 91, 93, 95, 97, 99, 96, 98, 101, 101, 100, 99, 101, 102, 99, 28.11896 + 98, 98, 99, 99, 100, 100, 100, 101, 101, 101, 101, 101, 101, 101, 102, 104, 28.11897 + 113, 110, 107, 111, 108, 105, 110, 107, 106, 109, 110, 111, 109, 108, 104, 99, 28.11898 + 93, 91, 90, 92, 95, 99, 102, 101, 107, 104, 102, 110, 109, 104, 110, 112, 28.11899 + 112, 115, 118, 120, 119, 117, 116, 121, 117, 118, 121, 121, 118, 119, 123, 122, 28.11900 + 122, 123, 121, 120, 121, 125, 128, 123, 123, 121, 122, 122, 123, 124, 124, 120, 28.11901 + 120, 117, 112, 108, 106, 107, 108, 104, 107, 112, 113, 115, 116, 119, 120, 115, 28.11902 + 112, 112, 113, 113, 113, 112, 111, 113, 106, 115, 110, 110, 106, 106, 36, 19, 28.11903 + 46, 69, 80, 97, 104, 106, 109, 111, 100, 97, 104, 111, 109, 107, 110, 112, 28.11904 + 110, 110, 113, 114, 111, 111, 115, 114, 114, 114, 114, 114, 114, 114, 114, 108, 28.11905 + 112, 113, 111, 112, 115, 115, 111, 114, 113, 112, 111, 111, 111, 111, 112, 112, 28.11906 + 112, 112, 94, 94, 93, 93, 94, 94, 92, 93, 93, 93, 91, 91, 92, 93, 28.11907 + 92, 92, 94, 94, 94, 94, 95, 95, 95, 96, 96, 96, 96, 97, 97, 98, 28.11908 + 98, 96, 95, 94, 93, 92, 94, 95, 97, 98, 96, 98, 101, 101, 100, 100, 28.11909 + 101, 101, 98, 98, 98, 99, 99, 100, 100, 100, 100, 100, 101, 101, 101, 101, 28.11910 + 102, 103, 103, 110, 108, 105, 109, 106, 103, 110, 109, 107, 107, 111, 111, 108, 28.11911 + 107, 105, 98, 94, 92, 93, 94, 98, 101, 105, 107, 112, 110, 110, 119, 119, 28.11912 + 116, 123, 125, 126, 128, 133, 135, 131, 130, 130, 132, 130, 128, 130, 129, 124, 28.11913 + 123, 126, 123, 124, 124, 121, 120, 121, 125, 128, 121, 122, 123, 126, 127, 129, 28.11914 + 131, 129, 133, 132, 128, 125, 117, 112, 108, 106, 105, 107, 111, 112, 114, 117, 28.11915 + 118, 118, 113, 111, 111, 112, 114, 114, 113, 111, 111, 105, 114, 110, 110, 105, 28.11916 + 105, 35, 20, 47, 70, 80, 97, 104, 106, 109, 111, 100, 97, 105, 112, 110, 28.11917 + 108, 112, 112, 110, 110, 113, 114, 111, 111, 115, 115, 114, 113, 113, 115, 115, 28.11918 + 114, 113, 109, 113, 113, 111, 111, 114, 114, 110, 114, 113, 112, 111, 111, 111, 28.11919 + 111, 112, 112, 111, 111, 94, 94, 93, 94, 94, 94, 93, 93, 94, 94, 93, 28.11920 + 93, 93, 94, 93, 94, 94, 94, 94, 95, 95, 95, 96, 96, 96, 96, 96, 28.11921 + 97, 97, 98, 98, 96, 94, 94, 94, 95, 95, 96, 97, 97, 97, 98, 100, 28.11922 + 99, 98, 98, 99, 101, 98, 98, 98, 99, 99, 100, 100, 100, 100, 100, 100, 28.11923 + 101, 101, 102, 102, 102, 100, 106, 104, 101, 105, 102, 99, 106, 110, 105, 105, 28.11924 + 108, 108, 105, 105, 107, 102, 100, 102, 103, 105, 107, 110, 113, 117, 123, 118, 28.11925 + 117, 126, 125, 120, 126, 124, 123, 122, 127, 130, 126, 125, 127, 132, 130, 129, 28.11926 + 131, 130, 127, 128, 131, 131, 137, 141, 140, 136, 134, 136, 139, 134, 135, 136, 28.11927 + 138, 138, 137, 134, 128, 137, 134, 134, 133, 126, 120, 116, 112, 106, 107, 111, 28.11928 + 112, 112, 114, 115, 115, 112, 110, 109, 111, 114, 114, 113, 110, 111, 105, 114, 28.11929 + 109, 109, 103, 102, 31, 21, 47, 70, 81, 97, 105, 105, 109, 111, 101, 98, 28.11930 + 106, 113, 111, 110, 113, 112, 110, 110, 113, 114, 111, 111, 115, 116, 114, 112, 28.11931 + 113, 115, 116, 114, 112, 110, 114, 114, 111, 111, 113, 113, 109, 114, 113, 112, 28.11932 + 111, 111, 111, 111, 112, 114, 113, 112, 94, 94, 93, 94, 94, 95, 93, 93, 28.11933 + 96, 96, 94, 94, 94, 95, 94, 95, 94, 94, 94, 95, 95, 96, 96, 96, 28.11934 + 96, 96, 96, 97, 97, 98, 98, 98, 94, 94, 95, 96, 96, 96, 97, 96, 28.11935 + 97, 98, 100, 100, 98, 98, 100, 101, 98, 98, 98, 99, 99, 100, 100, 100, 28.11936 + 100, 100, 100, 101, 101, 102, 102, 101, 96, 101, 98, 97, 101, 99, 96, 105, 28.11937 + 109, 105, 103, 107, 106, 103, 104, 111, 109, 112, 113, 117, 118, 120, 123, 125, 28.11938 + 127, 131, 123, 120, 126, 121, 114, 121, 139, 137, 134, 138, 139, 137, 136, 140, 28.11939 + 149, 148, 149, 155, 156, 155, 157, 161, 152, 159, 165, 166, 164, 158, 158, 158, 28.11940 + 157, 157, 157, 156, 152, 147, 142, 133, 130, 127, 132, 133, 131, 126, 122, 118, 28.11941 + 111, 111, 111, 112, 111, 110, 111, 112, 111, 109, 108, 110, 113, 114, 112, 109, 28.11942 + 113, 106, 115, 109, 107, 101, 99, 28, 21, 48, 70, 81, 97, 105, 105, 109, 28.11943 + 112, 101, 98, 106, 114, 112, 111, 114, 112, 110, 110, 113, 114, 111, 111, 115, 28.11944 + 116, 114, 112, 113, 115, 116, 114, 112, 111, 115, 115, 112, 111, 113, 112, 108, 28.11945 + 114, 113, 112, 111, 111, 111, 111, 112, 116, 115, 113, 95, 97, 97, 96, 94, 28.11946 + 93, 92, 94, 92, 93, 94, 96, 96, 96, 93, 92, 93, 92, 90, 90, 91, 28.11947 + 93, 96, 98, 99, 98, 97, 95, 95, 96, 97, 98, 99, 97, 95, 96, 100, 28.11948 + 101, 99, 97, 97, 98, 99, 99, 97, 97, 99, 100, 100, 101, 101, 102, 102, 28.11949 + 101, 101, 100, 96, 99, 102, 102, 99, 98, 99, 99, 98, 94, 94, 96, 97, 28.11950 + 99, 100, 103, 97, 103, 107, 106, 103, 101, 102, 110, 120, 121, 127, 129, 122, 28.11951 + 125, 131, 128, 119, 121, 117, 119, 128, 124, 123, 137, 147, 148, 152, 155, 150, 28.11952 + 158, 164, 155, 172, 171, 169, 172, 173, 169, 169, 173, 166, 179, 177, 184, 178, 28.11953 + 167, 183, 188, 186, 178, 179, 160, 170, 157, 161, 144, 139, 138, 133, 122, 121, 28.11954 + 134, 138, 133, 121, 122, 112, 106, 108, 106, 103, 113, 109, 110, 111, 112, 112, 28.11955 + 113, 114, 114, 114, 108, 115, 107, 108, 107, 106, 32, 20, 53, 67, 84, 101, 28.11956 + 101, 110, 107, 113, 96, 97, 109, 111, 112, 115, 112, 111, 114, 107, 116, 116, 28.11957 + 107, 114, 111, 113, 113, 114, 114, 114, 113, 112, 112, 112, 113, 113, 114, 114, 28.11958 + 113, 113, 112, 114, 113, 113, 112, 112, 113, 113, 114, 109, 111, 112, 92, 94, 28.11959 + 94, 93, 91, 91, 90, 91, 94, 95, 94, 94, 94, 93, 91, 90, 95, 94, 28.11960 + 93, 93, 94, 96, 98, 99, 98, 97, 97, 96, 96, 97, 97, 98, 99, 97, 28.11961 + 95, 97, 99, 101, 99, 97, 97, 98, 99, 99, 97, 97, 99, 100, 100, 100, 28.11962 + 101, 101, 101, 101, 100, 100, 102, 104, 105, 104, 101, 100, 101, 100, 95, 92, 28.11963 + 93, 95, 96, 97, 99, 102, 100, 103, 110, 113, 112, 111, 111, 118, 136, 133, 28.11964 + 130, 126, 118, 119, 127, 125, 125, 133, 134, 139, 148, 145, 143, 157, 157, 157, 28.11965 + 162, 162, 158, 164, 169, 161, 181, 178, 177, 180, 181, 178, 178, 182, 175, 180, 28.11966 + 173, 182, 181, 173, 185, 185, 178, 173, 176, 161, 172, 162, 169, 157, 151, 147, 28.11967 + 141, 137, 130, 127, 130, 132, 138, 132, 117, 111, 116, 111, 104, 108, 112, 112, 28.11968 + 112, 112, 112, 112, 112, 112, 115, 110, 117, 109, 108, 105, 103, 28, 21, 53, 28.11969 + 68, 84, 101, 101, 110, 107, 113, 96, 98, 109, 111, 112, 115, 112, 111, 114, 28.11970 + 107, 116, 116, 107, 114, 111, 112, 113, 113, 114, 114, 113, 113, 112, 112, 113, 28.11971 + 113, 114, 114, 113, 113, 112, 114, 113, 113, 112, 112, 113, 113, 114, 110, 112, 28.11972 + 113, 92, 93, 93, 93, 91, 91, 90, 92, 96, 95, 93, 92, 91, 91, 89, 28.11973 + 89, 94, 94, 94, 95, 96, 97, 97, 98, 96, 97, 97, 98, 98, 97, 97, 28.11974 + 97, 100, 99, 98, 99, 101, 102, 99, 98, 96, 97, 99, 99, 96, 96, 98, 28.11975 + 99, 99, 99, 100, 100, 100, 100, 99, 99, 105, 105, 105, 104, 101, 101, 102, 28.11976 + 100, 95, 94, 96, 98, 101, 103, 105, 108, 114, 116, 117, 117, 117, 112, 107, 28.11977 + 113, 137, 135, 133, 133, 128, 134, 140, 137, 135, 144, 147, 153, 161, 157, 156, 28.11978 + 167, 159, 156, 160, 159, 155, 160, 165, 158, 168, 166, 166, 169, 169, 168, 169, 28.11979 + 172, 172, 171, 158, 168, 174, 168, 176, 170, 163, 164, 169, 156, 163, 156, 164, 28.11980 + 159, 163, 153, 150, 151, 140, 124, 124, 131, 141, 139, 130, 122, 120, 111, 104, 28.11981 + 111, 114, 114, 114, 113, 112, 111, 111, 110, 115, 111, 119, 111, 109, 105, 100, 28.11982 + 23, 22, 54, 68, 84, 100, 101, 110, 107, 112, 97, 99, 110, 111, 111, 114, 28.11983 + 111, 111, 114, 107, 116, 116, 107, 114, 111, 112, 112, 113, 114, 114, 113, 113, 28.11984 + 112, 112, 113, 113, 114, 114, 113, 113, 112, 114, 113, 113, 112, 112, 113, 113, 28.11985 + 114, 111, 113, 114, 95, 96, 97, 96, 95, 95, 94, 96, 95, 94, 91, 90, 28.11986 + 90, 91, 90, 91, 91, 92, 93, 94, 95, 95, 94, 94, 95, 96, 97, 99, 28.11987 + 99, 98, 97, 96, 99, 99, 99, 100, 100, 101, 99, 99, 96, 97, 99, 99, 28.11988 + 96, 96, 98, 99, 98, 99, 99, 100, 100, 99, 99, 98, 102, 102, 101, 100, 28.11989 + 100, 100, 101, 102, 102, 103, 106, 109, 112, 113, 115, 118, 121, 119, 117, 116, 28.11990 + 114, 113, 107, 112, 137, 139, 142, 151, 151, 156, 157, 148, 149, 154, 150, 153, 28.11991 + 162, 158, 156, 163, 156, 153, 157, 156, 148, 153, 158, 150, 155, 152, 152, 155, 28.11992 + 156, 154, 155, 158, 165, 163, 149, 159, 163, 159, 167, 162, 159, 162, 165, 156, 28.11993 + 154, 153, 155, 157, 167, 163, 159, 158, 152, 140, 135, 132, 127, 139, 141, 133, 28.11994 + 122, 109, 107, 119, 114, 114, 113, 113, 113, 112, 112, 112, 113, 110, 119, 112, 28.11995 + 111, 105, 99, 21, 23, 55, 68, 84, 100, 101, 110, 108, 112, 97, 100, 111, 28.11996 + 111, 110, 113, 111, 111, 114, 107, 116, 116, 107, 114, 111, 111, 112, 113, 114, 28.11997 + 114, 114, 113, 113, 112, 113, 113, 114, 114, 113, 113, 112, 114, 113, 113, 112, 28.11998 + 112, 113, 113, 114, 112, 114, 114, 95, 97, 98, 97, 96, 96, 96, 97, 92, 28.11999 + 91, 90, 90, 91, 93, 93, 94, 92, 93, 94, 95, 95, 95, 94, 94, 94, 28.12000 + 95, 97, 98, 99, 98, 97, 97, 100, 100, 101, 101, 100, 100, 99, 99, 96, 28.12001 + 97, 98, 98, 96, 96, 96, 99, 98, 99, 99, 100, 100, 99, 99, 98, 100, 28.12002 + 100, 99, 100, 101, 102, 102, 105, 112, 116, 116, 116, 117, 117, 119, 122, 119, 28.12003 + 117, 115, 117, 122, 125, 128, 134, 156, 155, 157, 162, 159, 161, 159, 147, 162, 28.12004 + 157, 147, 148, 161, 160, 155, 158, 154, 150, 155, 153, 144, 150, 155, 149, 151, 28.12005 + 148, 149, 151, 152, 149, 150, 154, 153, 156, 148, 155, 155, 147, 158, 157, 158, 28.12006 + 163, 162, 158, 150, 153, 151, 154, 164, 168, 163, 158, 159, 162, 155, 139, 127, 28.12007 + 135, 137, 134, 132, 123, 117, 123, 113, 112, 113, 113, 113, 114, 114, 114, 111, 28.12008 + 108, 118, 112, 111, 105, 99, 21, 25, 56, 69, 84, 100, 101, 111, 108, 111, 28.12009 + 98, 102, 112, 111, 109, 112, 111, 111, 114, 107, 116, 116, 107, 114, 111, 111, 28.12010 + 112, 113, 114, 114, 114, 114, 114, 112, 113, 113, 114, 114, 113, 113, 112, 114, 28.12011 + 113, 113, 112, 112, 113, 113, 114, 112, 114, 114, 93, 94, 95, 95, 94, 94, 28.12012 + 94, 96, 90, 90, 90, 91, 93, 95, 94, 95, 97, 97, 97, 97, 97, 97, 28.12013 + 97, 97, 94, 95, 96, 97, 98, 98, 98, 98, 99, 100, 102, 102, 99, 99, 28.12014 + 99, 100, 96, 97, 98, 98, 96, 96, 96, 97, 99, 99, 100, 100, 100, 100, 28.12015 + 99, 99, 101, 101, 101, 102, 104, 104, 103, 107, 117, 120, 119, 117, 114, 115, 28.12016 + 116, 119, 126, 127, 126, 129, 133, 140, 145, 151, 173, 168, 167, 167, 161, 165, 28.12017 + 168, 161, 166, 159, 147, 147, 159, 159, 156, 162, 156, 155, 161, 159, 149, 153, 28.12018 + 159, 154, 155, 152, 151, 153, 153, 150, 151, 154, 150, 156, 151, 158, 157, 146, 28.12019 + 159, 160, 158, 165, 159, 162, 153, 162, 157, 160, 157, 165, 165, 159, 164, 174, 28.12020 + 168, 150, 146, 139, 126, 127, 142, 143, 129, 121, 115, 112, 112, 113, 114, 115, 28.12021 + 115, 116, 111, 108, 118, 111, 110, 105, 99, 21, 26, 57, 69, 84, 99, 101, 28.12022 + 111, 109, 110, 98, 103, 114, 111, 108, 111, 110, 111, 114, 107, 116, 116, 107, 28.12023 + 114, 111, 110, 111, 112, 113, 114, 114, 114, 114, 112, 113, 113, 114, 114, 113, 28.12024 + 113, 112, 114, 113, 113, 112, 112, 113, 113, 114, 111, 113, 114, 90, 92, 93, 28.12025 + 93, 92, 93, 92, 94, 91, 92, 92, 94, 95, 95, 93, 93, 99, 98, 96, 28.12026 + 96, 95, 96, 97, 98, 95, 95, 95, 96, 97, 98, 99, 100, 98, 101, 102, 28.12027 + 102, 99, 99, 98, 101, 96, 97, 98, 98, 96, 96, 96, 97, 100, 100, 101, 28.12028 + 101, 101, 101, 100, 100, 102, 101, 101, 103, 104, 103, 98, 102, 113, 118, 116, 28.12029 + 114, 113, 116, 122, 126, 136, 143, 147, 149, 153, 155, 160, 164, 175, 170, 171, 28.12030 + 173, 167, 170, 176, 172, 159, 159, 152, 151, 155, 151, 152, 165, 158, 162, 169, 28.12031 + 167, 157, 161, 166, 161, 163, 160, 159, 160, 160, 157, 156, 159, 156, 163, 159, 28.12032 + 168, 167, 156, 167, 169, 166, 172, 161, 169, 159, 172, 164, 164, 157, 160, 166, 28.12033 + 167, 168, 170, 171, 167, 161, 149, 129, 125, 138, 141, 134, 129, 119, 114, 114, 28.12034 + 114, 114, 114, 114, 114, 114, 110, 119, 110, 109, 103, 97, 19, 27, 58, 70, 28.12035 + 84, 99, 101, 111, 109, 109, 98, 104, 114, 111, 108, 111, 110, 111, 114, 107, 28.12036 + 116, 116, 107, 114, 111, 110, 111, 112, 113, 114, 115, 115, 114, 112, 113, 113, 28.12037 + 114, 114, 113, 113, 112, 114, 113, 113, 112, 112, 113, 113, 114, 110, 112, 113, 28.12038 + 89, 91, 93, 93, 93, 91, 93, 95, 93, 93, 94, 96, 96, 93, 92, 91, 28.12039 + 98, 96, 94, 92, 92, 94, 96, 97, 96, 96, 95, 95, 96, 98, 100, 101, 28.12040 + 97, 101, 103, 102, 100, 98, 100, 103, 97, 98, 99, 98, 96, 94, 96, 97, 28.12041 + 100, 102, 102, 103, 102, 101, 100, 99, 100, 100, 101, 105, 108, 106, 101, 106, 28.12042 + 112, 119, 116, 117, 120, 126, 133, 140, 134, 144, 155, 161, 164, 168, 172, 177, 28.12043 + 171, 170, 178, 179, 171, 169, 168, 162, 156, 161, 160, 156, 153, 145, 146, 163, 28.12044 + 159, 161, 169, 167, 158, 162, 170, 165, 174, 170, 168, 169, 169, 164, 164, 167, 28.12045 + 162, 168, 164, 175, 175, 167, 175, 172, 171, 175, 163, 173, 162, 177, 168, 165, 28.12046 + 161, 161, 170, 177, 172, 163, 169, 181, 165, 161, 144, 131, 131, 133, 140, 147, 28.12047 + 127, 119, 116, 115, 114, 113, 111, 111, 117, 112, 120, 110, 108, 102, 96, 18, 28.12048 + 27, 59, 69, 84, 99, 101, 111, 111, 109, 99, 105, 115, 111, 107, 110, 110, 28.12049 + 111, 114, 107, 116, 116, 107, 114, 111, 110, 111, 112, 113, 114, 115, 115, 115, 28.12050 + 112, 113, 113, 114, 114, 113, 113, 112, 114, 113, 113, 112, 112, 113, 113, 114, 28.12051 + 109, 111, 112, 92, 92, 92, 92, 93, 94, 95, 94, 94, 94, 94, 91, 90, 28.12052 + 92, 96, 98, 94, 94, 94, 95, 95, 96, 96, 96, 92, 93, 94, 94, 95, 28.12053 + 96, 97, 97, 99, 101, 102, 103, 103, 104, 103, 103, 105, 103, 99, 97, 96, 28.12054 + 95, 95, 97, 97, 100, 101, 102, 101, 99, 97, 95, 105, 93, 102, 117, 118, 28.12055 + 112, 110, 110, 127, 131, 131, 133, 137, 137, 137, 136, 141, 148, 156, 160, 163, 28.12056 + 166, 173, 181, 176, 175, 179, 198, 170, 178, 176, 176, 166, 173, 159, 163, 167, 28.12057 + 154, 161, 166, 156, 171, 174, 164, 161, 168, 169, 161, 177, 172, 175, 175, 167, 28.12058 + 164, 168, 163, 173, 180, 176, 173, 177, 175, 171, 178, 181, 177, 173, 172, 174, 28.12059 + 176, 178, 174, 158, 167, 173, 169, 167, 170, 172, 167, 160, 159, 158, 150, 139, 28.12060 + 136, 150, 154, 142, 116, 110, 115, 119, 116, 110, 109, 112, 109, 110, 112, 104, 28.12061 + 111, 98, 24, 30, 60, 70, 85, 101, 103, 112, 109, 111, 93, 106, 112, 110, 28.12062 + 115, 108, 112, 111, 107, 114, 116, 109, 111, 116, 112, 114, 114, 115, 115, 115, 28.12063 + 114, 113, 113, 113, 114, 114, 114, 114, 113, 112, 111, 115, 115, 115, 114, 114, 28.12064 + 113, 113, 113, 111, 111, 112, 92, 92, 91, 90, 90, 90, 90, 90, 94, 94, 28.12065 + 93, 92, 91, 92, 94, 96, 94, 94, 94, 95, 95, 96, 96, 96, 93, 93, 28.12066 + 94, 95, 96, 96, 97, 97, 99, 99, 101, 101, 101, 103, 103, 104, 106, 104, 28.12067 + 100, 98, 97, 95, 93, 97, 102, 104, 105, 105, 103, 101, 99, 98, 98, 96, 28.12068 + 106, 116, 114, 112, 118, 120, 136, 140, 138, 140, 143, 146, 146, 145, 151, 153, 28.12069 + 157, 160, 165, 167, 170, 172, 177, 173, 181, 183, 177, 173, 180, 182, 169, 177, 28.12070 + 164, 167, 170, 157, 161, 165, 155, 163, 167, 164, 168, 175, 176, 172, 172, 168, 28.12071 + 175, 176, 168, 170, 175, 171, 176, 183, 179, 176, 180, 176, 173, 179, 177, 173, 28.12072 + 169, 171, 174, 176, 172, 167, 173, 174, 174, 173, 174, 177, 174, 166, 162, 162, 28.12073 + 161, 157, 147, 142, 152, 150, 138, 130, 129, 121, 117, 118, 118, 110, 110, 109, 28.12074 + 109, 113, 104, 112, 100, 23, 30, 57, 69, 84, 101, 104, 113, 110, 114, 95, 28.12075 + 107, 113, 110, 114, 106, 109, 111, 108, 114, 116, 109, 111, 116, 112, 111, 112, 28.12076 + 112, 113, 113, 112, 111, 111, 114, 115, 115, 115, 115, 114, 113, 112, 115, 115, 28.12077 + 115, 114, 114, 113, 113, 113, 111, 111, 112, 94, 93, 92, 91, 90, 90, 89, 28.12078 + 89, 94, 95, 94, 94, 92, 92, 92, 94, 94, 94, 94, 95, 95, 96, 96, 28.12079 + 96, 94, 94, 94, 95, 96, 96, 97, 97, 98, 97, 97, 98, 99, 100, 102, 28.12080 + 103, 102, 102, 101, 99, 97, 96, 93, 95, 104, 105, 104, 103, 103, 102, 101, 28.12081 + 102, 98, 103, 112, 111, 103, 107, 121, 125, 137, 140, 139, 140, 145, 149, 152, 28.12082 + 154, 156, 156, 157, 162, 169, 170, 167, 165, 176, 174, 181, 167, 184, 168, 180, 28.12083 + 187, 168, 177, 166, 170, 173, 159, 163, 166, 159, 160, 163, 167, 173, 177, 179, 28.12084 + 178, 172, 168, 174, 176, 169, 171, 178, 175, 176, 183, 179, 175, 179, 175, 171, 28.12085 + 178, 173, 171, 169, 172, 176, 175, 170, 163, 181, 176, 172, 172, 178, 180, 173, 28.12086 + 162, 165, 161, 160, 158, 151, 143, 144, 139, 125, 134, 142, 125, 115, 117, 117, 28.12087 + 108, 110, 109, 109, 113, 105, 110, 98, 22, 29, 57, 69, 84, 102, 105, 114, 28.12088 + 111, 115, 96, 108, 113, 110, 113, 105, 108, 112, 108, 114, 117, 110, 111, 116, 28.12089 + 112, 111, 111, 112, 113, 113, 112, 112, 111, 115, 116, 116, 116, 116, 115, 114, 28.12090 + 113, 115, 115, 115, 114, 114, 113, 113, 113, 111, 111, 112, 95, 95, 94, 93, 28.12091 + 93, 93, 93, 93, 93, 95, 95, 95, 93, 92, 91, 92, 94, 94, 94, 95, 28.12092 + 95, 96, 96, 96, 94, 95, 95, 96, 96, 97, 97, 97, 98, 97, 96, 95, 28.12093 + 97, 99, 102, 103, 100, 99, 100, 100, 99, 97, 94, 95, 99, 100, 100, 101, 28.12094 + 103, 102, 103, 104, 107, 111, 114, 104, 98, 110, 129, 131, 139, 143, 142, 142, 28.12095 + 146, 150, 155, 158, 157, 158, 160, 165, 168, 168, 164, 163, 174, 179, 176, 164, 28.12096 + 183, 168, 172, 185, 165, 174, 164, 170, 175, 162, 166, 169, 165, 160, 159, 167, 28.12097 + 172, 172, 172, 174, 175, 170, 176, 176, 168, 170, 177, 173, 173, 180, 176, 172, 28.12098 + 175, 171, 167, 174, 170, 172, 174, 175, 176, 175, 174, 172, 179, 174, 171, 170, 28.12099 + 175, 176, 170, 162, 168, 162, 160, 158, 153, 146, 143, 134, 118, 130, 142, 133, 28.12100 + 122, 121, 117, 110, 110, 107, 108, 113, 105, 109, 96, 19, 29, 57, 69, 85, 28.12101 + 102, 105, 115, 112, 115, 95, 108, 113, 110, 113, 106, 109, 112, 109, 115, 117, 28.12102 + 110, 111, 116, 111, 113, 113, 114, 115, 115, 115, 114, 114, 115, 115, 116, 116, 28.12103 + 115, 114, 113, 113, 115, 115, 115, 114, 114, 113, 113, 113, 112, 112, 112, 93, 28.12104 + 93, 93, 93, 94, 95, 96, 97, 93, 95, 95, 95, 93, 92, 91, 92, 94, 28.12105 + 94, 94, 95, 95, 96, 96, 96, 95, 96, 96, 96, 96, 97, 97, 97, 98, 28.12106 + 96, 95, 95, 96, 98, 102, 102, 98, 98, 100, 101, 99, 98, 95, 94, 95, 28.12107 + 96, 98, 101, 105, 106, 109, 111, 116, 111, 108, 98, 99, 118, 137, 137, 143, 28.12108 + 146, 145, 145, 146, 150, 154, 159, 152, 158, 165, 167, 166, 166, 165, 167, 172, 28.12109 + 183, 169, 174, 175, 174, 162, 179, 168, 177, 166, 172, 175, 160, 163, 166, 169, 28.12110 + 162, 161, 166, 171, 170, 169, 170, 177, 171, 175, 175, 168, 170, 177, 174, 172, 28.12111 + 179, 175, 172, 175, 171, 168, 174, 167, 173, 178, 177, 173, 173, 178, 183, 175, 28.12112 + 171, 172, 172, 172, 172, 171, 171, 174, 165, 159, 158, 157, 151, 147, 140, 128, 28.12113 + 128, 138, 145, 141, 129, 122, 116, 111, 107, 108, 111, 101, 105, 92, 16, 28, 28.12114 + 58, 70, 85, 103, 105, 115, 112, 112, 93, 106, 112, 110, 114, 108, 111, 113, 28.12115 + 110, 116, 118, 110, 111, 116, 111, 112, 113, 114, 115, 115, 115, 115, 115, 114, 28.12116 + 114, 114, 114, 114, 113, 112, 111, 115, 115, 115, 114, 114, 113, 113, 113, 112, 28.12117 + 112, 113, 89, 89, 90, 91, 92, 94, 95, 96, 94, 95, 94, 94, 92, 92, 28.12118 + 92, 94, 94, 94, 94, 95, 95, 96, 96, 96, 96, 96, 96, 97, 97, 97, 28.12119 + 97, 96, 97, 96, 96, 96, 97, 99, 101, 101, 98, 98, 99, 98, 99, 98, 28.12120 + 98, 96, 94, 96, 101, 106, 110, 112, 115, 117, 117, 105, 101, 101, 105, 125, 28.12121 + 141, 141, 147, 148, 150, 150, 150, 150, 155, 159, 153, 161, 167, 168, 167, 165, 28.12122 + 167, 170, 170, 179, 166, 179, 168, 174, 159, 170, 171, 179, 167, 169, 172, 158, 28.12123 + 161, 164, 167, 166, 165, 166, 169, 171, 172, 171, 173, 168, 172, 173, 167, 171, 28.12124 + 179, 177, 172, 179, 176, 172, 176, 173, 170, 177, 164, 171, 177, 175, 170, 170, 28.12125 + 177, 183, 172, 171, 176, 176, 173, 170, 174, 180, 176, 167, 160, 159, 159, 155, 28.12126 + 152, 148, 137, 128, 130, 142, 147, 137, 126, 120, 114, 109, 107, 109, 97, 103, 28.12127 + 90, 13, 30, 59, 71, 86, 103, 105, 114, 111, 111, 93, 106, 112, 111, 115, 28.12128 + 109, 112, 114, 111, 116, 118, 111, 111, 116, 111, 109, 110, 111, 112, 113, 113, 28.12129 + 113, 113, 113, 113, 114, 114, 113, 113, 112, 111, 115, 115, 115, 114, 114, 113, 28.12130 + 113, 113, 113, 113, 113, 91, 91, 91, 91, 92, 94, 94, 95, 94, 94, 93, 28.12131 + 92, 91, 92, 94, 96, 94, 94, 94, 95, 95, 96, 96, 96, 97, 97, 97, 28.12132 + 97, 97, 97, 97, 96, 96, 94, 97, 98, 99, 100, 101, 101, 98, 98, 98, 28.12133 + 97, 98, 98, 99, 98, 94, 98, 104, 109, 112, 115, 116, 117, 113, 101, 103, 28.12134 + 113, 120, 133, 145, 146, 149, 151, 154, 154, 155, 156, 158, 161, 161, 164, 167, 28.12135 + 169, 170, 169, 169, 169, 173, 166, 167, 175, 168, 168, 167, 164, 168, 176, 164, 28.12136 + 167, 171, 158, 163, 167, 162, 168, 170, 163, 162, 168, 172, 168, 171, 165, 171, 28.12137 + 171, 164, 168, 176, 174, 169, 176, 173, 170, 175, 172, 169, 176, 166, 169, 172, 28.12138 + 173, 172, 171, 172, 173, 175, 174, 176, 178, 174, 170, 174, 183, 175, 168, 163, 28.12139 + 164, 162, 157, 154, 153, 144, 138, 133, 133, 138, 140, 134, 122, 119, 112, 107, 28.12140 + 107, 94, 100, 86, 12, 31, 61, 73, 86, 103, 104, 113, 110, 113, 94, 107, 28.12141 + 113, 110, 114, 107, 110, 115, 111, 117, 119, 111, 111, 116, 111, 109, 110, 111, 28.12142 + 112, 113, 113, 113, 113, 114, 114, 115, 115, 114, 113, 113, 112, 115, 115, 115, 28.12143 + 114, 114, 113, 113, 113, 113, 113, 113, 95, 95, 94, 94, 94, 95, 95, 96, 28.12144 + 94, 94, 92, 91, 90, 92, 95, 98, 94, 94, 94, 95, 95, 96, 96, 96, 28.12145 + 97, 97, 97, 97, 97, 97, 97, 96, 96, 95, 98, 100, 101, 101, 101, 101, 28.12146 + 99, 99, 96, 96, 97, 99, 101, 101, 95, 98, 106, 112, 116, 116, 115, 117, 28.12147 + 112, 102, 111, 128, 134, 139, 149, 152, 150, 154, 158, 159, 158, 158, 162, 164, 28.12148 + 171, 169, 168, 169, 173, 173, 171, 167, 176, 156, 172, 167, 170, 160, 175, 162, 28.12149 + 161, 168, 157, 163, 170, 161, 170, 175, 158, 170, 170, 157, 155, 163, 166, 160, 28.12150 + 175, 169, 170, 169, 162, 165, 172, 169, 164, 171, 169, 166, 172, 169, 168, 174, 28.12151 + 171, 169, 171, 174, 178, 176, 170, 163, 177, 173, 174, 176, 174, 169, 172, 179, 28.12152 + 174, 169, 168, 168, 166, 158, 153, 154, 155, 158, 147, 132, 134, 149, 148, 130, 28.12153 + 125, 116, 109, 107, 95, 97, 83, 11, 32, 62, 73, 87, 103, 104, 112, 109, 28.12154 + 115, 96, 108, 113, 110, 113, 105, 108, 115, 112, 117, 119, 111, 111, 116, 111, 28.12155 + 111, 112, 113, 114, 115, 116, 116, 116, 115, 116, 116, 116, 116, 115, 114, 113, 28.12156 + 115, 115, 115, 114, 114, 113, 113, 113, 113, 113, 113, 89, 94, 95, 92, 91, 28.12157 + 94, 94, 93, 95, 95, 93, 94, 94, 95, 94, 94, 97, 96, 95, 94, 94, 28.12158 + 94, 95, 95, 91, 96, 99, 99, 100, 102, 101, 95, 97, 95, 95, 98, 99, 28.12159 + 96, 94, 98, 99, 97, 96, 96, 98, 99, 98, 97, 102, 107, 110, 111, 119, 28.12160 + 125, 119, 105, 109, 113, 118, 125, 135, 144, 151, 155, 158, 156, 154, 154, 158, 28.12161 + 160, 162, 162, 166, 172, 176, 170, 167, 168, 168, 164, 179, 170, 164, 165, 169, 28.12162 + 166, 164, 163, 165, 162, 163, 164, 164, 161, 165, 171, 169, 165, 169, 169, 160, 28.12163 + 158, 163, 161, 170, 166, 166, 169, 168, 164, 166, 172, 166, 171, 173, 165, 164, 28.12164 + 165, 173, 173, 167, 170, 174, 171, 174, 175, 176, 171, 175, 178, 166, 175, 181, 28.12165 + 178, 183, 174, 168, 174, 171, 165, 165, 159, 153, 161, 161, 156, 148, 140, 136, 28.12166 + 137, 140, 140, 135, 119, 111, 124, 96, 98, 71, 11, 33, 60, 72, 88, 104, 28.12167 + 102, 111, 110, 112, 98, 111, 113, 109, 115, 109, 110, 113, 114, 116, 115, 113, 28.12168 + 111, 111, 112, 116, 116, 115, 114, 114, 113, 112, 112, 115, 115, 115, 114, 114, 28.12169 + 113, 113, 113, 114, 114, 114, 114, 114, 114, 114, 114, 116, 115, 115, 89, 94, 28.12170 + 95, 92, 91, 94, 94, 93, 95, 95, 93, 94, 94, 95, 94, 94, 94, 94, 28.12171 + 94, 94, 94, 95, 97, 97, 93, 97, 99, 98, 98, 101, 101, 97, 99, 95, 28.12172 + 95, 98, 99, 96, 95, 98, 96, 97, 98, 101, 103, 104, 104, 103, 100, 108, 28.12173 + 117, 121, 123, 121, 112, 103, 116, 121, 124, 129, 137, 144, 151, 153, 156, 156, 28.12174 + 155, 155, 157, 158, 162, 163, 157, 164, 169, 167, 166, 170, 170, 168, 174, 166, 28.12175 + 162, 163, 165, 162, 161, 160, 167, 163, 162, 164, 164, 163, 165, 168, 168, 165, 28.12176 + 171, 173, 163, 160, 163, 158, 163, 161, 164, 168, 167, 162, 164, 169, 164, 167, 28.12177 + 167, 165, 167, 171, 171, 168, 168, 171, 172, 170, 170, 173, 172, 169, 175, 177, 28.12178 + 167, 174, 178, 173, 179, 169, 176, 179, 171, 168, 172, 168, 161, 166, 157, 158, 28.12179 + 155, 148, 138, 135, 136, 136, 146, 132, 119, 125, 100, 107, 74, 11, 33, 60, 28.12180 + 72, 89, 105, 103, 110, 110, 111, 97, 111, 113, 109, 115, 109, 111, 112, 113, 28.12181 + 115, 115, 113, 112, 112, 113, 114, 114, 114, 114, 114, 114, 114, 114, 115, 115, 28.12182 + 115, 114, 114, 113, 113, 113, 114, 114, 114, 114, 114, 114, 114, 114, 115, 115, 28.12183 + 114, 90, 94, 96, 92, 91, 94, 95, 93, 95, 95, 93, 94, 94, 95, 94, 28.12184 + 94, 93, 93, 93, 94, 95, 96, 98, 99, 95, 98, 98, 96, 97, 101, 101, 28.12185 + 98, 100, 96, 96, 100, 99, 96, 97, 100, 94, 97, 102, 105, 106, 105, 106, 28.12186 + 108, 107, 112, 118, 122, 119, 111, 107, 112, 123, 126, 128, 132, 136, 143, 148, 28.12187 + 151, 153, 156, 158, 157, 156, 156, 160, 163, 154, 160, 165, 165, 165, 168, 170, 28.12188 + 170, 168, 164, 164, 165, 165, 161, 161, 162, 167, 161, 159, 160, 162, 158, 158, 28.12189 + 160, 163, 162, 171, 175, 166, 163, 165, 156, 157, 158, 163, 167, 166, 162, 162, 28.12190 + 165, 162, 163, 162, 163, 169, 174, 171, 164, 168, 171, 170, 166, 165, 168, 169, 28.12191 + 166, 172, 175, 165, 172, 174, 169, 174, 165, 175, 174, 166, 164, 172, 169, 160, 28.12192 + 161, 154, 159, 162, 154, 142, 134, 133, 131, 150, 139, 129, 126, 102, 115, 74, 28.12193 + 13, 33, 61, 73, 90, 106, 103, 110, 109, 110, 95, 110, 112, 109, 115, 110, 28.12194 + 112, 110, 112, 114, 114, 113, 112, 113, 114, 112, 112, 113, 114, 114, 115, 116, 28.12195 + 116, 115, 115, 114, 114, 114, 114, 113, 113, 114, 114, 114, 114, 114, 114, 114, 28.12196 + 114, 113, 113, 114, 90, 95, 96, 93, 92, 94, 95, 93, 95, 95, 93, 94, 28.12197 + 94, 95, 94, 94, 94, 93, 93, 94, 95, 96, 97, 98, 96, 99, 98, 95, 28.12198 + 96, 100, 101, 99, 100, 97, 98, 100, 100, 97, 97, 100, 96, 100, 103, 105, 28.12199 + 104, 104, 106, 110, 125, 118, 113, 114, 112, 108, 116, 129, 129, 130, 131, 134, 28.12200 + 136, 142, 144, 147, 150, 156, 160, 159, 156, 156, 160, 165, 162, 165, 168, 168, 28.12201 + 168, 167, 168, 168, 165, 164, 166, 168, 167, 161, 162, 165, 168, 161, 158, 158, 28.12202 + 159, 156, 155, 157, 157, 157, 166, 169, 163, 164, 166, 157, 154, 156, 159, 160, 28.12203 + 160, 161, 162, 164, 161, 163, 163, 162, 165, 170, 168, 163, 164, 166, 165, 161, 28.12204 + 161, 165, 166, 164, 167, 171, 161, 167, 169, 164, 171, 163, 165, 169, 162, 160, 28.12205 + 167, 166, 159, 163, 158, 162, 163, 157, 148, 142, 138, 134, 142, 143, 139, 128, 28.12206 + 105, 116, 67, 12, 33, 61, 74, 91, 107, 103, 110, 108, 108, 94, 109, 112, 28.12207 + 109, 116, 110, 112, 109, 112, 114, 114, 113, 113, 114, 115, 113, 113, 113, 114, 28.12208 + 114, 115, 115, 115, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 28.12209 + 114, 114, 114, 114, 112, 113, 113, 91, 95, 97, 93, 92, 95, 95, 94, 95, 28.12210 + 95, 93, 94, 94, 95, 94, 94, 96, 95, 95, 94, 94, 95, 95, 96, 97, 28.12211 + 99, 99, 95, 96, 100, 100, 98, 103, 100, 100, 102, 102, 98, 99, 102, 100, 28.12212 + 102, 103, 104, 106, 107, 111, 117, 130, 119, 110, 111, 116, 117, 127, 140, 132, 28.12213 + 132, 135, 135, 138, 140, 143, 145, 150, 156, 161, 160, 157, 156, 160, 165, 165, 28.12214 + 166, 168, 169, 169, 163, 165, 166, 166, 166, 167, 170, 168, 162, 163, 166, 171, 28.12215 + 165, 162, 161, 161, 157, 157, 157, 154, 154, 160, 161, 157, 164, 169, 158, 154, 28.12216 + 157, 157, 155, 155, 158, 162, 165, 161, 165, 165, 159, 157, 160, 164, 164, 158, 28.12217 + 160, 159, 156, 157, 162, 164, 162, 161, 166, 158, 165, 167, 162, 171, 164, 162, 28.12218 + 170, 167, 163, 168, 166, 165, 172, 163, 158, 156, 153, 153, 150, 146, 140, 136, 28.12219 + 142, 148, 135, 111, 117, 59, 16, 35, 62, 75, 91, 106, 103, 110, 108, 108, 28.12220 + 94, 108, 111, 108, 115, 110, 112, 109, 112, 114, 114, 113, 113, 114, 115, 115, 28.12221 + 115, 115, 114, 114, 113, 113, 113, 114, 114, 114, 114, 114, 114, 114, 114, 114, 28.12222 + 114, 114, 114, 114, 114, 114, 114, 112, 113, 113, 91, 95, 97, 94, 93, 95, 28.12223 + 96, 94, 95, 95, 93, 94, 94, 95, 94, 94, 97, 96, 95, 94, 94, 94, 28.12224 + 94, 95, 96, 99, 99, 97, 97, 100, 100, 99, 104, 101, 102, 104, 104, 100, 28.12225 + 100, 102, 102, 102, 102, 105, 110, 114, 114, 119, 118, 117, 115, 119, 127, 132, 28.12226 + 137, 140, 135, 135, 135, 137, 138, 140, 142, 145, 150, 157, 161, 162, 161, 160, 28.12227 + 163, 165, 164, 164, 166, 169, 167, 163, 163, 166, 168, 166, 165, 167, 166, 163, 28.12228 + 161, 164, 166, 163, 160, 159, 156, 152, 152, 156, 155, 151, 157, 153, 152, 163, 28.12229 + 168, 158, 156, 157, 157, 151, 151, 156, 163, 164, 161, 165, 165, 157, 153, 155, 28.12230 + 160, 163, 154, 157, 158, 155, 157, 161, 163, 161, 156, 163, 155, 163, 164, 160, 28.12231 + 169, 164, 160, 170, 168, 165, 168, 166, 166, 176, 162, 154, 149, 149, 153, 155, 28.12232 + 150, 144, 136, 139, 151, 140, 119, 120, 53, 23, 37, 64, 75, 90, 105, 102, 28.12233 + 111, 110, 108, 94, 108, 111, 108, 114, 109, 111, 110, 112, 114, 114, 113, 112, 28.12234 + 113, 114, 116, 116, 115, 114, 114, 113, 112, 112, 113, 113, 114, 114, 114, 114, 28.12235 + 115, 115, 114, 114, 114, 114, 114, 114, 114, 114, 113, 113, 114, 91, 96, 97, 28.12236 + 94, 93, 96, 96, 95, 95, 95, 93, 94, 94, 95, 94, 94, 95, 95, 94, 28.12237 + 94, 94, 95, 96, 96, 95, 99, 100, 98, 98, 100, 99, 97, 106, 103, 102, 28.12238 + 104, 105, 100, 100, 103, 105, 102, 103, 106, 113, 112, 107, 107, 101, 113, 121, 28.12239 + 125, 132, 137, 142, 140, 137, 135, 137, 138, 139, 140, 141, 145, 152, 157, 159, 28.12240 + 162, 163, 164, 164, 164, 165, 164, 166, 170, 169, 163, 163, 168, 175, 168, 164, 28.12241 + 167, 167, 165, 163, 164, 163, 164, 163, 161, 155, 148, 152, 160, 156, 154, 157, 28.12242 + 152, 149, 160, 163, 152, 155, 158, 158, 153, 151, 156, 161, 160, 156, 159, 159, 28.12243 + 154, 153, 157, 158, 156, 154, 157, 158, 156, 157, 160, 160, 157, 156, 163, 156, 28.12244 + 162, 163, 157, 167, 162, 162, 167, 164, 160, 165, 163, 162, 168, 157, 153, 151, 28.12245 + 152, 155, 155, 153, 147, 142, 134, 141, 135, 123, 121, 47, 26, 40, 65, 74, 28.12246 + 89, 103, 102, 111, 112, 109, 95, 109, 111, 107, 113, 107, 109, 112, 113, 115, 28.12247 + 115, 113, 112, 112, 113, 114, 114, 114, 114, 114, 114, 114, 114, 113, 113, 113, 28.12248 + 114, 114, 115, 115, 115, 114, 114, 114, 114, 114, 114, 114, 114, 115, 115, 114, 28.12249 + 91, 95, 97, 93, 93, 95, 96, 95, 95, 95, 93, 94, 94, 95, 94, 94, 28.12250 + 92, 93, 93, 94, 95, 96, 98, 99, 94, 99, 101, 99, 99, 99, 97, 96, 28.12251 + 106, 105, 102, 102, 102, 98, 96, 100, 103, 102, 103, 109, 118, 116, 104, 99, 28.12252 + 102, 124, 132, 127, 126, 134, 139, 139, 133, 134, 136, 137, 141, 143, 144, 149, 28.12253 + 154, 157, 159, 162, 166, 167, 166, 164, 172, 169, 171, 175, 172, 165, 164, 169, 28.12254 + 182, 173, 167, 169, 172, 169, 167, 166, 170, 170, 172, 169, 159, 154, 160, 169, 28.12255 + 159, 157, 160, 154, 150, 160, 161, 145, 154, 159, 160, 155, 154, 158, 159, 155, 28.12256 + 152, 151, 152, 152, 156, 160, 157, 150, 156, 160, 161, 158, 158, 160, 158, 154, 28.12257 + 155, 162, 154, 160, 159, 153, 164, 161, 169, 170, 163, 160, 169, 168, 164, 164, 28.12258 + 155, 154, 159, 158, 157, 155, 154, 152, 147, 131, 134, 133, 129, 132, 54, 36, 28.12259 + 49, 73, 78, 92, 103, 101, 110, 110, 108, 94, 107, 110, 107, 113, 107, 109, 28.12260 + 113, 114, 116, 115, 113, 111, 111, 112, 112, 112, 113, 114, 114, 115, 116, 116, 28.12261 + 113, 113, 113, 114, 114, 115, 115, 115, 114, 114, 114, 114, 114, 114, 114, 114, 28.12262 + 116, 115, 115, 92, 89, 91, 89, 92, 92, 94, 95, 96, 92, 90, 94, 95, 28.12263 + 93, 91, 92, 92, 98, 94, 92, 98, 96, 93, 99, 98, 101, 101, 98, 99, 28.12264 + 101, 102, 101, 102, 104, 103, 100, 94, 89, 86, 88, 96, 99, 105, 117, 125, 28.12265 + 122, 118, 120, 137, 143, 143, 136, 133, 131, 130, 130, 132, 128, 134, 139, 140, 28.12266 + 150, 158, 154, 157, 169, 168, 164, 170, 173, 171, 176, 175, 177, 176, 175, 176, 28.12267 + 177, 170, 162, 194, 174, 178, 185, 173, 169, 174, 166, 181, 169, 161, 164, 166, 28.12268 + 165, 162, 165, 170, 159, 154, 155, 163, 165, 163, 162, 169, 165, 159, 157, 158, 28.12269 + 160, 159, 156, 150, 149, 151, 148, 145, 145, 148, 153, 159, 159, 160, 152, 150, 28.12270 + 164, 167, 149, 155, 146, 155, 164, 155, 147, 152, 157, 168, 166, 166, 166, 169, 28.12271 + 171, 173, 170, 168, 160, 154, 153, 157, 159, 155, 151, 156, 140, 133, 132, 131, 28.12272 + 124, 98, 53, 74, 88, 99, 98, 104, 105, 100, 102, 103, 87, 102, 106, 106, 28.12273 + 112, 109, 113, 112, 112, 115, 115, 113, 113, 117, 118, 113, 113, 113, 114, 113, 28.12274 + 114, 114, 114, 116, 115, 113, 111, 110, 110, 110, 111, 113, 113, 113, 113, 113, 28.12275 + 113, 113, 113, 115, 115, 114, 93, 92, 92, 91, 92, 94, 95, 96, 96, 91, 28.12276 + 90, 94, 95, 93, 92, 93, 92, 97, 94, 92, 98, 96, 94, 98, 94, 97, 28.12277 + 98, 94, 94, 96, 96, 96, 104, 106, 102, 97, 92, 87, 86, 90, 91, 103, 28.12278 + 114, 117, 114, 114, 125, 146, 153, 155, 148, 140, 134, 131, 129, 127, 133, 126, 28.12279 + 133, 139, 139, 144, 149, 145, 160, 168, 163, 156, 162, 165, 167, 173, 161, 162, 28.12280 + 162, 162, 165, 168, 165, 159, 168, 154, 159, 165, 159, 163, 172, 164, 154, 153, 28.12281 + 156, 165, 165, 160, 158, 161, 157, 155, 154, 154, 150, 146, 149, 155, 148, 146, 28.12282 + 145, 146, 149, 150, 148, 145, 143, 144, 145, 144, 144, 144, 149, 153, 135, 139, 28.12283 + 149, 152, 149, 155, 152, 134, 150, 140, 146, 157, 151, 148, 156, 160, 157, 156, 28.12284 + 158, 159, 162, 163, 163, 159, 152, 152, 155, 159, 164, 164, 160, 156, 153, 148, 28.12285 + 148, 141, 127, 125, 122, 102, 95, 98, 103, 108, 116, 111, 103, 104, 98, 86, 28.12286 + 105, 110, 108, 113, 111, 116, 112, 112, 115, 115, 113, 113, 115, 116, 113, 113, 28.12287 + 113, 114, 113, 114, 113, 113, 116, 115, 113, 112, 111, 111, 111, 112, 113, 113, 28.12288 + 113, 113, 113, 113, 113, 113, 115, 114, 113, 94, 93, 93, 92, 92, 93, 94, 28.12289 + 94, 96, 91, 90, 94, 96, 93, 92, 94, 92, 98, 94, 92, 99, 97, 93, 28.12290 + 98, 93, 95, 96, 91, 91, 94, 94, 92, 104, 102, 99, 95, 92, 91, 92, 28.12291 + 97, 101, 107, 112, 111, 107, 112, 131, 154, 149, 146, 140, 135, 135, 133, 132, 28.12292 + 129, 139, 127, 128, 136, 134, 137, 148, 147, 141, 153, 158, 158, 163, 159, 150, 28.12293 + 149, 152, 153, 153, 153, 156, 160, 157, 152, 165, 158, 156, 150, 140, 143, 146, 28.12294 + 134, 142, 147, 155, 162, 163, 158, 160, 161, 157, 152, 153, 152, 147, 141, 142, 28.12295 + 147, 161, 160, 158, 156, 154, 148, 141, 137, 131, 134, 135, 134, 134, 135, 137, 28.12296 + 139, 136, 130, 133, 136, 131, 136, 139, 135, 137, 127, 128, 136, 132, 133, 141, 28.12297 + 142, 137, 141, 148, 154, 156, 152, 145, 140, 153, 152, 151, 152, 152, 154, 155, 28.12298 + 156, 154, 153, 156, 147, 130, 129, 139, 130, 111, 106, 108, 116, 128, 122, 113, 28.12299 + 115, 99, 89, 109, 112, 107, 112, 109, 113, 111, 111, 114, 114, 112, 112, 114, 28.12300 + 115, 112, 112, 113, 113, 113, 113, 114, 114, 116, 115, 114, 113, 112, 112, 112, 28.12301 + 113, 113, 113, 113, 113, 113, 113, 113, 113, 114, 114, 113, 92, 91, 91, 91, 28.12302 + 90, 90, 91, 91, 96, 91, 90, 94, 96, 94, 93, 95, 93, 98, 95, 93, 28.12303 + 99, 97, 93, 98, 95, 96, 96, 93, 93, 97, 97, 94, 99, 96, 92, 91, 28.12304 + 92, 95, 99, 104, 116, 108, 103, 109, 121, 132, 142, 148, 143, 138, 135, 136, 28.12305 + 139, 137, 136, 134, 139, 122, 122, 133, 134, 143, 162, 171, 177, 190, 197, 199, 28.12306 + 205, 200, 189, 187, 189, 191, 191, 190, 191, 192, 186, 178, 185, 188, 186, 176, 28.12307 + 173, 182, 185, 177, 185, 186, 185, 184, 184, 187, 194, 199, 193, 183, 181, 183, 28.12308 + 186, 180, 176, 173, 177, 176, 179, 179, 180, 177, 175, 173, 178, 179, 181, 179, 28.12309 + 178, 175, 175, 175, 179, 166, 166, 166, 159, 158, 164, 168, 168, 156, 153, 156, 28.12310 + 155, 155, 159, 157, 169, 158, 144, 131, 126, 127, 132, 139, 148, 151, 150, 149, 28.12311 + 148, 150, 154, 155, 161, 153, 155, 154, 148, 148, 148, 130, 120, 121, 119, 118, 28.12312 + 128, 130, 127, 127, 110, 97, 110, 109, 105, 112, 108, 109, 110, 111, 113, 113, 28.12313 + 112, 112, 114, 115, 113, 113, 113, 113, 113, 113, 113, 113, 116, 115, 115, 114, 28.12314 + 114, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 112, 91, 28.12315 + 91, 91, 91, 91, 91, 90, 90, 96, 91, 91, 95, 97, 95, 94, 96, 94, 28.12316 + 100, 96, 94, 99, 97, 93, 96, 94, 96, 97, 94, 95, 96, 96, 93, 94, 28.12317 + 91, 90, 92, 98, 103, 109, 115, 117, 108, 106, 118, 137, 148, 148, 142, 141, 28.12318 + 134, 135, 142, 144, 140, 138, 136, 137, 125, 131, 143, 147, 158, 176, 183, 174, 28.12319 + 178, 171, 165, 172, 178, 182, 190, 198, 201, 203, 203, 204, 202, 193, 183, 195, 28.12320 + 204, 201, 191, 193, 201, 201, 199, 201, 198, 191, 187, 189, 194, 201, 204, 193, 28.12321 + 190, 193, 195, 193, 186, 186, 189, 192, 190, 189, 186, 184, 181, 181, 180, 176, 28.12322 + 174, 173, 172, 171, 170, 171, 170, 184, 177, 186, 191, 183, 175, 173, 172, 197, 28.12323 + 184, 180, 180, 179, 181, 184, 178, 178, 173, 164, 154, 142, 131, 119, 118, 123, 28.12324 + 134, 141, 148, 153, 155, 155, 155, 162, 152, 155, 160, 159, 159, 156, 138, 125, 28.12325 + 137, 134, 121, 125, 137, 138, 136, 127, 108, 114, 109, 105, 115, 107, 104, 108, 28.12326 + 109, 111, 111, 111, 111, 113, 114, 112, 112, 113, 113, 113, 113, 114, 114, 115, 28.12327 + 115, 115, 115, 114, 114, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 112, 28.12328 + 112, 111, 92, 92, 93, 94, 94, 94, 93, 93, 95, 91, 91, 95, 97, 96, 28.12329 + 95, 97, 95, 100, 96, 94, 100, 97, 91, 96, 92, 95, 95, 92, 91, 94, 28.12330 + 94, 91, 91, 89, 91, 98, 107, 113, 115, 119, 107, 113, 123, 135, 144, 145, 28.12331 + 147, 145, 134, 128, 133, 140, 138, 132, 129, 131, 136, 137, 151, 163, 163, 169, 28.12332 + 178, 173, 169, 174, 168, 162, 170, 176, 180, 189, 176, 180, 183, 184, 187, 187, 28.12333 + 179, 169, 187, 196, 190, 182, 186, 185, 182, 186, 185, 186, 185, 182, 182, 187, 28.12334 + 189, 187, 175, 186, 197, 196, 182, 173, 182, 197, 199, 197, 193, 188, 184, 183, 28.12335 + 185, 184, 179, 174, 172, 173, 175, 177, 178, 178, 174, 170, 176, 176, 168, 168, 28.12336 + 171, 169, 185, 175, 175, 176, 176, 179, 182, 174, 171, 177, 186, 189, 183, 167, 28.12337 + 146, 139, 128, 130, 123, 121, 126, 134, 142, 146, 151, 149, 155, 161, 154, 155, 28.12338 + 164, 160, 135, 148, 143, 128, 129, 137, 139, 139, 136, 119, 125, 115, 109, 118, 28.12339 + 110, 106, 108, 109, 111, 111, 109, 109, 113, 114, 113, 113, 113, 113, 113, 113, 28.12340 + 113, 113, 113, 113, 114, 114, 114, 114, 113, 112, 113, 113, 113, 113, 113, 113, 28.12341 + 113, 113, 111, 111, 111, 90, 91, 93, 94, 95, 95, 94, 93, 95, 91, 91, 28.12342 + 95, 98, 96, 96, 97, 97, 102, 97, 95, 100, 97, 91, 96, 91, 92, 92, 28.12343 + 89, 92, 95, 96, 90, 89, 87, 92, 100, 111, 116, 116, 117, 113, 126, 138, 28.12344 + 149, 150, 145, 146, 147, 129, 122, 127, 133, 131, 123, 127, 133, 145, 153, 167, 28.12345 + 169, 163, 170, 173, 159, 161, 173, 176, 175, 182, 182, 177, 180, 179, 181, 182, 28.12346 + 183, 187, 190, 186, 179, 179, 189, 187, 189, 200, 196, 193, 208, 192, 199, 202, 28.12347 + 197, 194, 196, 197, 195, 198, 204, 211, 211, 202, 196, 201, 212, 189, 191, 193, 28.12348 + 195, 198, 203, 211, 215, 187, 182, 178, 178, 181, 184, 187, 188, 191, 188, 188, 28.12349 + 177, 167, 178, 191, 185, 178, 171, 174, 176, 175, 179, 182, 174, 189, 183, 174, 28.12350 + 169, 171, 177, 182, 192, 169, 157, 136, 124, 124, 127, 131, 134, 139, 139, 149, 28.12351 + 158, 153, 154, 165, 167, 153, 153, 147, 144, 146, 137, 131, 139, 132, 122, 136, 28.12352 + 126, 112, 116, 111, 108, 110, 111, 113, 113, 109, 109, 111, 112, 111, 111, 113, 28.12353 + 112, 113, 112, 113, 113, 111, 112, 113, 114, 114, 113, 112, 111, 113, 113, 113, 28.12354 + 113, 113, 113, 113, 113, 111, 110, 110, 87, 88, 90, 92, 93, 93, 92, 92, 28.12355 + 95, 91, 91, 95, 98, 96, 96, 98, 97, 103, 97, 94, 100, 95, 91, 96, 28.12356 + 90, 93, 93, 92, 93, 97, 97, 94, 89, 88, 95, 105, 114, 117, 115, 115, 28.12357 + 133, 137, 146, 154, 156, 151, 147, 144, 130, 123, 127, 133, 127, 121, 129, 142, 28.12358 + 152, 158, 168, 159, 153, 164, 170, 157, 168, 178, 174, 169, 175, 178, 178, 184, 28.12359 + 185, 185, 182, 181, 185, 190, 189, 184, 193, 199, 193, 192, 199, 183, 174, 192, 28.12360 + 194, 203, 206, 195, 185, 185, 191, 194, 209, 199, 193, 198, 206, 205, 200, 196, 28.12361 + 208, 208, 206, 200, 194, 191, 192, 193, 200, 192, 188, 186, 188, 191, 193, 194, 28.12362 + 186, 195, 201, 191, 179, 186, 190, 174, 172, 168, 173, 176, 172, 177, 179, 169, 28.12363 + 168, 169, 171, 173, 175, 172, 166, 166, 190, 184, 174, 168, 165, 155, 138, 127, 28.12364 + 130, 125, 134, 149, 153, 155, 155, 151, 167, 152, 144, 160, 163, 136, 126, 140, 28.12365 + 125, 125, 147, 134, 115, 116, 111, 111, 112, 113, 114, 113, 111, 109, 111, 112, 28.12366 + 111, 111, 113, 112, 113, 112, 113, 113, 110, 111, 112, 113, 114, 113, 112, 111, 28.12367 + 113, 113, 113, 113, 113, 113, 113, 113, 110, 110, 110, 90, 94, 94, 91, 92, 28.12368 + 95, 95, 93, 96, 96, 97, 97, 97, 98, 98, 98, 102, 101, 98, 96, 95, 28.12369 + 91, 91, 90, 96, 94, 92, 92, 94, 97, 100, 101, 93, 97, 110, 113, 107, 28.12370 + 111, 129, 137, 138, 152, 161, 157, 150, 147, 139, 130, 126, 134, 136, 124, 115, 28.12371 + 123, 142, 156, 164, 160, 163, 165, 166, 165, 168, 170, 166, 170, 176, 183, 184, 28.12372 + 181, 181, 185, 190, 182, 177, 181, 192, 199, 199, 195, 194, 193, 194, 192, 190, 28.12373 + 191, 196, 198, 198, 199, 201, 203, 205, 206, 208, 205, 203, 194, 190, 194, 199, 28.12374 + 199, 197, 195, 208, 201, 208, 203, 184, 191, 205, 200, 197, 206, 209, 203, 198, 28.12375 + 197, 195, 192, 194, 204, 203, 190, 184, 191, 198, 193, 182, 169, 167, 169, 168, 28.12376 + 176, 184, 180, 180, 175, 168, 170, 180, 184, 177, 168, 166, 164, 164, 172, 178, 28.12377 + 175, 160, 149, 129, 121, 120, 131, 138, 134, 138, 153, 155, 160, 158, 153, 149, 28.12378 + 147, 145, 142, 136, 117, 114, 132, 135, 122, 114, 117, 119, 120, 116, 108, 107, 28.12379 + 110, 111, 110, 110, 111, 113, 112, 111, 111, 114, 116, 113, 114, 114, 114, 114, 28.12380 + 113, 112, 111, 114, 114, 114, 113, 113, 112, 112, 112, 113, 113, 113, 91, 94, 28.12381 + 94, 91, 92, 95, 96, 93, 94, 94, 94, 95, 95, 96, 96, 96, 99, 99, 28.12382 + 96, 95, 94, 93, 93, 94, 89, 94, 99, 101, 100, 101, 102, 102, 104, 99, 28.12383 + 105, 108, 105, 115, 130, 134, 146, 153, 153, 148, 143, 140, 136, 129, 129, 128, 28.12384 + 128, 130, 139, 149, 153, 148, 156, 155, 160, 163, 168, 170, 174, 176, 172, 171, 28.12385 + 176, 182, 187, 183, 185, 185, 185, 179, 179, 181, 191, 194, 194, 188, 194, 195, 28.12386 + 197, 196, 194, 192, 194, 195, 196, 198, 200, 202, 205, 207, 211, 207, 196, 195, 28.12387 + 197, 200, 201, 200, 199, 199, 201, 196, 204, 205, 195, 201, 208, 198, 202, 208, 28.12388 + 207, 201, 199, 204, 206, 204, 183, 199, 210, 204, 200, 197, 190, 178, 187, 176, 28.12389 + 178, 174, 162, 164, 173, 172, 187, 183, 179, 179, 180, 179, 173, 162, 155, 151, 28.12390 + 151, 157, 166, 171, 168, 165, 177, 150, 126, 120, 126, 127, 124, 130, 145, 148, 28.12391 + 147, 152, 158, 158, 147, 135, 139, 129, 124, 131, 136, 135, 129, 124, 119, 121, 28.12392 + 121, 115, 111, 110, 112, 110, 110, 111, 113, 112, 111, 111, 114, 116, 113, 114, 28.12393 + 114, 114, 114, 113, 112, 111, 114, 114, 114, 113, 113, 112, 112, 112, 113, 113, 28.12394 + 113, 91, 94, 94, 92, 92, 95, 96, 93, 94, 94, 95, 95, 95, 96, 96, 28.12395 + 96, 96, 96, 95, 95, 95, 95, 96, 97, 91, 97, 102, 105, 106, 105, 108, 28.12396 + 111, 116, 107, 106, 110, 115, 130, 143, 144, 156, 157, 154, 146, 139, 135, 128, 28.12397 + 120, 121, 123, 129, 140, 154, 163, 157, 143, 149, 151, 155, 161, 167, 171, 176, 28.12398 + 177, 175, 169, 173, 177, 183, 180, 182, 182, 179, 177, 181, 182, 187, 186, 187, 28.12399 + 182, 188, 191, 193, 193, 190, 187, 188, 187, 190, 192, 193, 196, 199, 203, 207, 28.12400 + 207, 191, 195, 202, 203, 199, 196, 195, 196, 209, 203, 204, 202, 196, 200, 202, 28.12401 + 190, 204, 209, 211, 212, 213, 214, 210, 204, 187, 195, 199, 190, 189, 194, 196, 28.12402 + 194, 183, 182, 187, 180, 164, 164, 178, 183, 176, 177, 178, 179, 179, 177, 174, 28.12403 + 168, 162, 155, 153, 154, 160, 162, 163, 162, 166, 175, 174, 156, 129, 109, 108, 28.12404 + 121, 142, 142, 138, 138, 145, 148, 144, 138, 139, 138, 133, 127, 132, 143, 143, 28.12405 + 134, 122, 126, 127, 122, 115, 113, 112, 112, 110, 111, 111, 112, 111, 111, 114, 28.12406 + 116, 113, 114, 114, 114, 114, 113, 112, 111, 114, 114, 114, 113, 113, 112, 112, 28.12407 + 112, 113, 113, 113, 91, 94, 95, 92, 92, 96, 96, 93, 97, 97, 97, 98, 28.12408 + 98, 98, 99, 99, 97, 95, 94, 94, 96, 96, 96, 98, 101, 101, 102, 104, 28.12409 + 106, 110, 113, 117, 117, 110, 112, 120, 126, 143, 159, 160, 159, 159, 154, 145, 28.12410 + 133, 123, 114, 108, 116, 131, 147, 154, 154, 154, 150, 145, 149, 150, 156, 162, 28.12411 + 167, 171, 175, 176, 173, 169, 173, 174, 175, 170, 175, 178, 179, 178, 182, 180, 28.12412 + 182, 180, 182, 183, 183, 185, 187, 187, 185, 184, 183, 184, 188, 188, 189, 191, 28.12413 + 193, 197, 199, 201, 194, 199, 203, 201, 197, 195, 194, 193, 217, 212, 206, 198, 28.12414 + 194, 199, 204, 201, 198, 195, 195, 192, 196, 195, 194, 188, 202, 200, 190, 177, 28.12415 + 173, 182, 193, 200, 187, 187, 192, 187, 171, 173, 187, 192, 177, 174, 174, 177, 28.12416 + 179, 178, 177, 175, 165, 162, 162, 161, 159, 155, 152, 150, 160, 165, 169, 166, 28.12417 + 158, 144, 121, 107, 121, 130, 131, 132, 134, 138, 143, 146, 140, 142, 141, 131, 28.12418 + 129, 137, 145, 144, 132, 130, 131, 126, 120, 119, 116, 110, 112, 111, 111, 110, 28.12419 + 111, 111, 114, 116, 113, 114, 114, 114, 114, 113, 112, 111, 114, 114, 114, 113, 28.12420 + 113, 112, 112, 112, 113, 113, 113, 92, 95, 95, 93, 93, 96, 97, 94, 97, 28.12421 + 97, 98, 98, 99, 99, 99, 99, 98, 97, 96, 95, 96, 95, 96, 96, 105, 28.12422 + 103, 103, 108, 114, 116, 112, 112, 112, 113, 122, 129, 133, 147, 161, 164, 152, 28.12423 + 150, 144, 133, 120, 110, 110, 111, 129, 143, 159, 164, 157, 154, 155, 153, 157, 28.12424 + 160, 164, 168, 171, 174, 176, 176, 172, 173, 178, 178, 171, 165, 170, 179, 179, 28.12425 + 179, 179, 176, 175, 174, 179, 182, 182, 183, 184, 183, 181, 182, 185, 188, 188, 28.12426 + 188, 188, 188, 190, 191, 192, 194, 202, 207, 207, 203, 203, 207, 207, 203, 209, 28.12427 + 215, 212, 205, 205, 211, 218, 224, 227, 214, 202, 196, 199, 204, 212, 215, 203, 28.12428 + 203, 198, 189, 183, 181, 179, 178, 199, 197, 198, 194, 181, 182, 188, 188, 195, 28.12429 + 184, 176, 179, 181, 179, 175, 175, 169, 168, 167, 167, 162, 159, 159, 158, 159, 28.12430 + 159, 156, 156, 160, 160, 147, 137, 102, 109, 115, 125, 137, 143, 144, 144, 144, 28.12431 + 144, 144, 140, 130, 127, 140, 149, 142, 135, 133, 128, 126, 124, 117, 109, 113, 28.12432 + 113, 111, 110, 111, 111, 114, 116, 113, 114, 114, 114, 114, 113, 112, 111, 114, 28.12433 + 114, 114, 113, 113, 112, 112, 112, 113, 113, 113, 92, 95, 96, 93, 93, 97, 28.12434 + 97, 94, 95, 96, 96, 96, 97, 97, 97, 98, 100, 99, 98, 96, 96, 94, 28.12435 + 95, 97, 100, 101, 106, 114, 119, 115, 103, 101, 117, 126, 138, 143, 142, 148, 28.12436 + 162, 161, 154, 144, 134, 126, 119, 121, 133, 139, 146, 145, 151, 156, 160, 166, 28.12437 + 163, 155, 162, 165, 169, 171, 171, 172, 174, 175, 174, 176, 184, 183, 178, 170, 28.12438 + 176, 183, 182, 179, 178, 174, 174, 173, 178, 181, 185, 187, 188, 185, 186, 188, 28.12439 + 193, 197, 189, 189, 189, 190, 189, 188, 187, 188, 196, 202, 202, 198, 201, 209, 28.12440 + 211, 206, 195, 211, 212, 207, 210, 208, 207, 214, 201, 195, 196, 197, 201, 197, 28.12441 + 197, 199, 198, 197, 197, 195, 192, 188, 184, 184, 197, 191, 195, 193, 186, 189, 28.12442 + 194, 189, 192, 180, 173, 178, 183, 180, 177, 179, 184, 180, 174, 167, 164, 163, 28.12443 + 165, 167, 153, 161, 167, 164, 156, 151, 154, 165, 138, 122, 105, 105, 123, 139, 28.12444 + 142, 140, 146, 147, 148, 147, 137, 128, 136, 144, 139, 135, 135, 132, 129, 126, 28.12445 + 120, 111, 113, 113, 111, 110, 110, 111, 114, 116, 113, 114, 114, 114, 114, 113, 28.12446 + 112, 111, 114, 114, 114, 113, 113, 112, 112, 112, 113, 113, 113, 92, 95, 96, 28.12447 + 93, 94, 97, 97, 94, 96, 96, 96, 97, 97, 97, 98, 98, 100, 99, 98, 28.12448 + 96, 96, 95, 97, 99, 99, 103, 108, 109, 107, 101, 97, 101, 131, 140, 151, 28.12449 + 156, 151, 156, 164, 162, 154, 140, 131, 133, 141, 149, 159, 160, 146, 139, 142, 28.12450 + 147, 159, 168, 167, 160, 169, 171, 172, 174, 172, 170, 169, 171, 177, 177, 182, 28.12451 + 186, 188, 183, 184, 187, 187, 184, 184, 182, 183, 182, 184, 184, 190, 192, 194, 28.12452 + 194, 194, 193, 196, 198, 193, 194, 196, 197, 196, 194, 190, 186, 187, 196, 200, 28.12453 + 194, 193, 199, 201, 197, 192, 208, 205, 199, 205, 201, 192, 200, 202, 204, 212, 28.12454 + 219, 218, 208, 202, 202, 204, 199, 196, 196, 197, 198, 200, 201, 192, 188, 195, 28.12455 + 197, 191, 193, 199, 194, 179, 170, 171, 180, 182, 176, 175, 185, 196, 193, 183, 28.12456 + 175, 170, 168, 166, 163, 172, 159, 152, 163, 173, 167, 155, 149, 171, 151, 124, 28.12457 + 111, 116, 127, 139, 145, 147, 152, 151, 146, 143, 143, 142, 132, 124, 127, 139, 28.12458 + 137, 130, 125, 118, 114, 114, 113, 111, 110, 110, 110, 113, 115, 113, 114, 114, 28.12459 + 114, 114, 113, 112, 111, 114, 114, 114, 113, 113, 112, 112, 112, 113, 113, 113, 28.12460 + 91, 95, 95, 92, 94, 97, 99, 97, 100, 100, 101, 101, 101, 100, 100, 100, 28.12461 + 99, 97, 97, 96, 94, 95, 98, 101, 103, 110, 111, 106, 97, 95, 101, 116, 28.12462 + 140, 144, 153, 156, 153, 158, 164, 155, 144, 128, 123, 136, 153, 161, 162, 153, 28.12463 + 144, 143, 149, 151, 155, 164, 169, 171, 175, 177, 180, 180, 179, 176, 174, 177, 28.12464 + 175, 172, 173, 183, 191, 191, 187, 184, 189, 188, 188, 189, 190, 190, 188, 186, 28.12465 + 188, 191, 195, 195, 195, 194, 194, 194, 193, 195, 197, 199, 199, 196, 193, 187, 28.12466 + 190, 205, 213, 204, 195, 196, 198, 195, 200, 212, 202, 195, 210, 211, 203, 211, 28.12467 + 218, 212, 206, 203, 198, 194, 200, 211, 209, 208, 205, 206, 204, 199, 193, 191, 28.12468 + 199, 197, 203, 203, 189, 187, 191, 187, 181, 179, 183, 191, 187, 174, 172, 183, 28.12469 + 184, 185, 180, 178, 179, 175, 167, 161, 168, 164, 166, 168, 156, 143, 149, 168, 28.12470 + 152, 155, 152, 140, 124, 118, 126, 139, 134, 146, 143, 137, 144, 159, 153, 125, 28.12471 + 115, 129, 149, 147, 134, 123, 120, 119, 117, 117, 114, 112, 108, 108, 109, 111, 28.12472 + 112, 113, 113, 113, 113, 112, 111, 110, 113, 113, 113, 112, 112, 111, 111, 111, 28.12473 + 113, 113, 113, 90, 90, 90, 92, 94, 96, 99, 100, 101, 101, 100, 101, 99, 28.12474 + 99, 97, 97, 100, 100, 99, 97, 94, 97, 99, 104, 114, 110, 105, 104, 112, 28.12475 + 121, 128, 132, 137, 145, 157, 157, 150, 153, 152, 136, 125, 125, 129, 144, 163, 28.12476 + 160, 147, 144, 147, 148, 154, 158, 161, 165, 169, 171, 173, 173, 174, 175, 177, 28.12477 + 179, 182, 181, 170, 175, 181, 182, 180, 179, 182, 186, 193, 185, 187, 189, 184, 28.12478 + 184, 183, 173, 181, 186, 192, 191, 187, 185, 189, 193, 185, 198, 206, 199, 187, 28.12479 + 186, 193, 197, 197, 198, 195, 192, 195, 203, 207, 206, 206, 202, 199, 200, 206, 28.12480 + 209, 208, 206, 203, 199, 201, 208, 205, 196, 195, 202, 207, 211, 211, 205, 200, 28.12481 + 200, 200, 198, 204, 203, 202, 199, 192, 187, 193, 203, 188, 189, 186, 180, 178, 28.12482 + 181, 182, 182, 187, 180, 171, 167, 169, 171, 167, 163, 169, 168, 165, 164, 162, 28.12483 + 158, 156, 153, 156, 159, 157, 153, 151, 141, 118, 99, 106, 122, 130, 131, 140, 28.12484 + 152, 153, 136, 143, 131, 134, 142, 144, 135, 125, 123, 121, 120, 118, 114, 110, 28.12485 + 106, 101, 104, 107, 110, 110, 110, 110, 110, 110, 110, 111, 111, 111, 110, 110, 28.12486 + 109, 109, 109, 113, 113, 113, 89, 89, 90, 92, 94, 97, 100, 101, 103, 103, 28.12487 + 103, 102, 101, 100, 98, 97, 101, 98, 96, 97, 100, 102, 106, 110, 108, 108, 28.12488 + 107, 110, 120, 130, 137, 141, 153, 150, 153, 151, 145, 146, 147, 133, 120, 130, 28.12489 + 137, 146, 155, 152, 143, 145, 148, 150, 152, 156, 160, 163, 165, 166, 175, 175, 28.12490 + 176, 177, 179, 180, 180, 180, 173, 175, 178, 179, 180, 180, 183, 186, 182, 174, 28.12491 + 176, 182, 181, 185, 186, 177, 183, 185, 186, 186, 185, 184, 184, 184, 184, 191, 28.12492 + 193, 189, 185, 188, 192, 194, 195, 200, 205, 205, 207, 207, 203, 196, 203, 205, 28.12493 + 209, 215, 220, 221, 217, 213, 198, 198, 203, 210, 211, 208, 209, 212, 199, 207, 28.12494 + 210, 206, 202, 203, 205, 206, 204, 197, 193, 198, 201, 196, 190, 186, 190, 193, 28.12495 + 192, 185, 183, 184, 185, 184, 181, 175, 170, 170, 173, 173, 168, 162, 171, 168, 28.12496 + 165, 164, 164, 162, 156, 153, 150, 152, 151, 149, 148, 144, 134, 124, 106, 105, 28.12497 + 111, 129, 139, 138, 141, 146, 138, 130, 127, 133, 138, 136, 133, 126, 123, 120, 28.12498 + 119, 114, 110, 105, 101, 103, 107, 110, 110, 110, 110, 110, 110, 110, 111, 111, 28.12499 + 111, 110, 110, 109, 109, 109, 112, 112, 112, 90, 89, 90, 93, 94, 97, 99, 28.12500 + 100, 104, 103, 101, 100, 99, 98, 98, 96, 96, 93, 93, 97, 104, 109, 110, 28.12501 + 114, 103, 107, 109, 117, 128, 138, 144, 147, 152, 148, 156, 162, 156, 146, 137, 28.12502 + 119, 123, 146, 158, 156, 155, 151, 146, 148, 155, 153, 153, 157, 163, 166, 166, 28.12503 + 164, 174, 175, 177, 178, 178, 177, 176, 174, 177, 176, 177, 178, 179, 181, 183, 28.12504 + 184, 181, 171, 173, 180, 182, 189, 191, 181, 191, 189, 187, 188, 189, 189, 186, 28.12505 + 183, 193, 193, 191, 188, 191, 197, 197, 193, 197, 199, 198, 195, 195, 199, 201, 28.12506 + 199, 201, 205, 209, 211, 209, 207, 204, 202, 212, 214, 214, 207, 201, 196, 192, 28.12507 + 187, 200, 208, 212, 207, 202, 202, 203, 203, 204, 197, 194, 198, 203, 198, 189, 28.12508 + 184, 186, 193, 195, 188, 184, 183, 184, 184, 179, 175, 173, 175, 178, 176, 169, 28.12509 + 162, 172, 168, 164, 165, 167, 167, 161, 156, 152, 153, 151, 150, 152, 155, 157, 28.12510 + 157, 136, 115, 104, 114, 130, 134, 133, 136, 132, 129, 123, 121, 126, 133, 134, 28.12511 + 128, 121, 117, 114, 112, 110, 109, 108, 108, 112, 112, 112, 112, 112, 112, 113, 28.12512 + 113, 114, 114, 114, 113, 114, 113, 113, 112, 111, 111, 111, 91, 91, 93, 94, 28.12513 + 95, 97, 98, 98, 100, 100, 100, 97, 98, 97, 95, 93, 90, 87, 92, 100, 28.12514 + 106, 110, 108, 110, 107, 112, 120, 127, 138, 146, 151, 153, 166, 154, 152, 152, 28.12515 + 140, 134, 136, 131, 130, 158, 170, 161, 156, 153, 149, 149, 161, 158, 156, 160, 28.12516 + 168, 172, 171, 168, 170, 171, 174, 176, 176, 175, 173, 171, 177, 174, 173, 174, 28.12517 + 177, 180, 181, 181, 191, 180, 179, 184, 185, 191, 191, 180, 190, 190, 190, 190, 28.12518 + 189, 189, 187, 185, 195, 195, 193, 192, 195, 200, 197, 191, 190, 193, 193, 190, 28.12519 + 191, 197, 201, 202, 202, 204, 204, 200, 195, 194, 198, 203, 203, 209, 210, 204, 28.12520 + 204, 212, 214, 210, 198, 201, 203, 201, 201, 203, 201, 197, 201, 200, 201, 198, 28.12521 + 193, 187, 192, 201, 177, 187, 192, 187, 181, 180, 181, 182, 177, 175, 174, 176, 28.12522 + 178, 177, 170, 165, 172, 167, 163, 164, 168, 169, 164, 158, 161, 158, 156, 151, 28.12523 + 149, 150, 155, 161, 149, 147, 129, 108, 106, 121, 126, 124, 135, 139, 130, 119, 28.12524 + 119, 127, 133, 130, 119, 113, 110, 109, 110, 112, 115, 114, 114, 113, 113, 113, 28.12525 + 113, 114, 114, 116, 117, 117, 117, 116, 117, 116, 116, 115, 112, 111, 111, 93, 28.12526 + 93, 94, 94, 95, 95, 97, 97, 96, 96, 96, 93, 94, 93, 91, 90, 87, 28.12527 + 88, 94, 103, 109, 111, 109, 109, 118, 125, 133, 139, 146, 150, 152, 153, 153, 28.12528 + 149, 156, 153, 135, 125, 125, 121, 137, 159, 166, 158, 158, 159, 153, 153, 162, 28.12529 + 159, 156, 160, 168, 172, 172, 169, 166, 168, 171, 174, 176, 176, 175, 173, 178, 28.12530 + 176, 174, 175, 178, 180, 181, 181, 196, 185, 185, 188, 187, 190, 189, 178, 184, 28.12531 + 188, 191, 190, 186, 184, 186, 189, 183, 189, 193, 192, 194, 196, 194, 190, 178, 28.12532 + 190, 202, 207, 206, 204, 198, 191, 199, 203, 205, 204, 201, 204, 212, 220, 221, 28.12533 + 224, 217, 202, 194, 197, 197, 192, 197, 196, 195, 197, 205, 211, 207, 199, 198, 28.12534 + 199, 203, 201, 195, 190, 196, 205, 172, 182, 191, 188, 181, 180, 183, 184, 178, 28.12535 + 176, 173, 173, 175, 175, 172, 169, 169, 165, 161, 162, 166, 168, 165, 160, 161, 28.12536 + 157, 156, 152, 147, 144, 146, 152, 145, 163, 160, 129, 102, 96, 105, 116, 134, 28.12537 + 144, 139, 127, 117, 121, 130, 133, 119, 110, 106, 105, 110, 115, 122, 121, 117, 28.12538 + 114, 114, 114, 114, 116, 116, 117, 118, 118, 120, 119, 120, 119, 119, 116, 114, 28.12539 + 111, 111, 95, 95, 95, 95, 95, 95, 95, 95, 95, 94, 93, 92, 91, 91, 28.12540 + 90, 90, 90, 94, 102, 107, 111, 111, 112, 116, 126, 134, 139, 144, 147, 148, 28.12541 + 147, 147, 136, 137, 144, 138, 122, 121, 127, 117, 145, 157, 157, 153, 161, 164, 28.12542 + 159, 160, 158, 156, 154, 156, 160, 164, 165, 164, 165, 167, 170, 173, 176, 177, 28.12543 + 178, 178, 179, 177, 178, 178, 179, 180, 181, 182, 189, 181, 185, 189, 186, 188, 28.12544 + 188, 179, 186, 192, 197, 195, 190, 187, 190, 195, 178, 186, 193, 194, 194, 197, 28.12545 + 198, 197, 184, 194, 201, 201, 198, 197, 195, 191, 193, 199, 205, 207, 204, 203, 28.12546 + 205, 208, 194, 196, 196, 194, 197, 207, 216, 220, 210, 206, 200, 198, 204, 209, 28.12547 + 203, 194, 199, 194, 195, 202, 207, 202, 195, 189, 176, 184, 192, 188, 184, 184, 28.12548 + 187, 186, 179, 176, 173, 172, 173, 174, 174, 174, 166, 164, 162, 162, 164, 165, 28.12549 + 164, 163, 157, 153, 153, 156, 152, 149, 149, 155, 159, 151, 147, 148, 134, 108, 28.12550 + 90, 97, 126, 136, 137, 130, 121, 117, 126, 134, 122, 111, 105, 103, 110, 117, 28.12551 + 125, 125, 117, 113, 113, 114, 114, 116, 116, 117, 118, 120, 120, 120, 120, 120, 28.12552 + 120, 118, 114, 111, 111, 96, 96, 96, 95, 95, 94, 94, 92, 94, 93, 93, 28.12553 + 91, 92, 92, 93, 93, 97, 102, 106, 107, 108, 110, 118, 127, 134, 140, 143, 28.12554 + 144, 144, 141, 140, 139, 148, 140, 128, 111, 110, 142, 170, 167, 160, 162, 157, 28.12555 + 156, 163, 163, 158, 163, 156, 155, 153, 152, 152, 154, 155, 156, 163, 164, 166, 28.12556 + 168, 171, 173, 175, 176, 175, 177, 180, 180, 178, 177, 179, 182, 179, 177, 185, 28.12557 + 191, 186, 187, 189, 182, 192, 194, 196, 195, 192, 190, 190, 192, 186, 191, 193, 28.12558 + 192, 192, 197, 199, 198, 194, 197, 194, 186, 183, 189, 197, 202, 194, 197, 199, 28.12559 + 198, 194, 191, 191, 192, 219, 216, 214, 213, 210, 208, 211, 217, 214, 213, 208, 28.12560 + 201, 200, 203, 201, 196, 202, 196, 195, 201, 205, 199, 190, 184, 185, 190, 192, 28.12561 + 189, 187, 188, 187, 185, 178, 176, 175, 174, 175, 175, 175, 175, 163, 164, 164, 28.12562 + 163, 161, 161, 163, 166, 159, 155, 156, 160, 159, 155, 154, 157, 165, 145, 136, 28.12563 + 147, 154, 135, 103, 94, 119, 123, 127, 134, 132, 122, 123, 130, 130, 116, 107, 28.12564 + 105, 109, 116, 125, 125, 116, 112, 112, 113, 113, 114, 114, 116, 117, 118, 118, 28.12565 + 119, 119, 119, 119, 116, 113, 110, 110, 98, 98, 96, 95, 94, 92, 92, 92, 28.12566 + 94, 94, 94, 95, 95, 97, 97, 100, 104, 109, 110, 108, 104, 108, 120, 133, 28.12567 + 138, 140, 141, 140, 136, 133, 130, 127, 117, 127, 141, 150, 163, 195, 201, 176, 28.12568 + 171, 167, 159, 158, 163, 157, 153, 163, 158, 157, 155, 152, 148, 148, 150, 152, 28.12569 + 160, 160, 161, 163, 165, 167, 169, 171, 168, 173, 178, 177, 173, 171, 173, 177, 28.12570 + 178, 176, 188, 193, 187, 186, 190, 184, 191, 189, 187, 186, 187, 185, 182, 179, 28.12571 + 195, 194, 189, 184, 185, 190, 192, 189, 188, 195, 198, 195, 192, 196, 202, 204, 28.12572 + 198, 197, 194, 191, 191, 193, 199, 203, 203, 198, 200, 206, 206, 199, 201, 210, 28.12573 + 198, 203, 205, 200, 198, 204, 210, 214, 200, 201, 202, 199, 191, 183, 185, 192, 28.12574 + 190, 193, 192, 187, 186, 187, 185, 181, 177, 177, 177, 177, 178, 178, 177, 176, 28.12575 + 163, 166, 167, 165, 160, 159, 164, 168, 166, 160, 159, 163, 163, 156, 152, 155, 28.12576 + 145, 157, 158, 146, 138, 135, 124, 119, 116, 110, 115, 133, 139, 127, 124, 129, 28.12577 + 139, 125, 112, 107, 109, 114, 122, 123, 113, 110, 110, 110, 112, 112, 113, 113, 28.12578 + 115, 115, 117, 116, 117, 116, 118, 115, 112, 109, 109, 99, 98, 96, 95, 94, 28.12579 + 92, 92, 90, 90, 91, 94, 99, 102, 101, 99, 100, 119, 113, 106, 105, 111, 28.12580 + 120, 128, 136, 136, 137, 135, 128, 127, 132, 139, 138, 167, 171, 181, 185, 183, 28.12581 + 180, 180, 179, 164, 161, 160, 160, 162, 163, 165, 166, 163, 164, 163, 160, 155, 28.12582 + 151, 149, 150, 143, 147, 152, 154, 155, 158, 162, 166, 170, 164, 165, 173, 178, 28.12583 + 175, 178, 185, 182, 178, 175, 180, 188, 191, 187, 182, 206, 202, 198, 193, 190, 28.12584 + 190, 191, 193, 193, 194, 196, 197, 192, 186, 189, 195, 184, 190, 197, 201, 199, 28.12585 + 195, 191, 189, 192, 195, 197, 197, 195, 195, 197, 200, 199, 204, 204, 202, 212, 28.12586 + 225, 224, 213, 203, 195, 191, 200, 210, 210, 203, 198, 211, 194, 184, 189, 194, 28.12587 + 190, 189, 193, 191, 189, 182, 182, 188, 181, 175, 184, 159, 174, 180, 171, 166, 28.12588 + 171, 173, 168, 176, 171, 167, 169, 172, 169, 157, 146, 161, 158, 162, 170, 170, 28.12589 + 163, 158, 159, 155, 155, 153, 152, 149, 146, 145, 148, 134, 104, 105, 132, 139, 28.12590 + 127, 129, 137, 139, 139, 124, 105, 105, 112, 117, 119, 111, 109, 107, 105, 109, 28.12591 + 113, 113, 107, 112, 112, 112, 112, 113, 114, 114, 114, 106, 113, 111, 98, 98, 28.12592 + 98, 95, 94, 92, 91, 91, 95, 97, 101, 102, 101, 101, 106, 119, 118, 115, 28.12593 + 109, 115, 123, 128, 129, 130, 122, 133, 143, 148, 152, 164, 175, 178, 179, 179, 28.12594 + 183, 182, 174, 169, 164, 164, 157, 155, 154, 156, 157, 158, 159, 159, 161, 159, 28.12595 + 157, 157, 158, 156, 152, 148, 143, 145, 145, 143, 142, 143, 148, 151, 158, 163, 28.12596 + 173, 179, 175, 168, 172, 181, 181, 179, 179, 184, 190, 193, 192, 189, 189, 189, 28.12597 + 189, 190, 191, 192, 194, 195, 193, 194, 197, 199, 196, 191, 193, 199, 198, 196, 28.12598 + 193, 190, 188, 191, 197, 201, 195, 198, 200, 200, 198, 197, 198, 200, 203, 210, 28.12599 + 210, 202, 201, 208, 210, 204, 194, 192, 195, 203, 206, 203, 199, 198, 196, 189, 28.12600 + 191, 200, 202, 193, 190, 192, 203, 197, 186, 181, 186, 183, 178, 181, 179, 172, 28.12601 + 175, 185, 182, 167, 159, 162, 164, 165, 163, 159, 154, 154, 159, 164, 165, 163, 28.12602 + 165, 170, 170, 163, 161, 164, 166, 156, 147, 145, 150, 149, 142, 134, 141, 137, 28.12603 + 134, 120, 116, 129, 136, 117, 133, 144, 138, 124, 118, 113, 107, 104, 106, 110, 28.12604 + 111, 107, 106, 108, 106, 103, 108, 108, 109, 109, 109, 109, 110, 110, 109, 116, 28.12605 + 112, 96, 97, 97, 95, 94, 93, 92, 94, 99, 99, 101, 105, 108, 110, 111, 28.12606 + 116, 112, 117, 116, 117, 120, 122, 133, 141, 169, 181, 191, 189, 181, 180, 184, 28.12607 + 183, 172, 172, 174, 171, 166, 159, 158, 160, 161, 161, 160, 160, 160, 161, 163, 28.12608 + 163, 166, 161, 159, 162, 167, 167, 161, 154, 153, 151, 148, 142, 138, 137, 139, 28.12609 + 142, 153, 152, 154, 158, 164, 171, 176, 181, 179, 180, 182, 186, 188, 190, 191, 28.12610 + 191, 186, 187, 189, 190, 190, 190, 189, 188, 191, 192, 196, 200, 198, 194, 195, 28.12611 + 200, 194, 202, 212, 218, 216, 209, 201, 196, 197, 199, 201, 201, 199, 198, 197, 28.12612 + 197, 197, 208, 213, 205, 198, 203, 209, 211, 212, 208, 204, 199, 193, 189, 194, 28.12613 + 202, 205, 196, 190, 189, 185, 176, 176, 182, 185, 182, 177, 174, 179, 183, 180, 28.12614 + 175, 190, 171, 162, 167, 166, 156, 149, 151, 158, 163, 168, 168, 163, 158, 157, 28.12615 + 160, 163, 165, 167, 169, 166, 160, 162, 168, 171, 163, 154, 150, 152, 149, 142, 28.12616 + 135, 142, 154, 152, 125, 113, 132, 136, 108, 120, 134, 133, 125, 123, 119, 118, 28.12617 + 121, 105, 111, 116, 113, 108, 110, 110, 109, 109, 109, 109, 109, 109, 109, 111, 28.12618 + 111, 111, 117, 114, 95, 96, 95, 94, 95, 93, 94, 95, 98, 96, 98, 111, 28.12619 + 123, 122, 106, 98, 116, 128, 130, 123, 113, 120, 147, 172, 173, 181, 188, 185, 28.12620 + 177, 172, 172, 165, 161, 160, 162, 161, 158, 157, 158, 160, 166, 168, 166, 166, 28.12621 + 166, 166, 168, 168, 167, 164, 164, 167, 170, 170, 165, 159, 161, 159, 155, 149, 28.12622 + 143, 139, 137, 137, 133, 138, 145, 152, 158, 162, 168, 173, 173, 177, 180, 183, 28.12623 + 182, 182, 184, 187, 190, 190, 191, 191, 190, 189, 188, 187, 189, 190, 194, 198, 28.12624 + 196, 192, 192, 196, 198, 198, 198, 196, 194, 194, 196, 198, 196, 198, 199, 199, 28.12625 + 198, 195, 194, 192, 191, 203, 211, 207, 203, 205, 210, 213, 194, 201, 212, 218, 28.12626 + 211, 195, 184, 181, 197, 191, 188, 191, 195, 195, 199, 205, 202, 204, 209, 208, 28.12627 + 205, 209, 209, 197, 187, 188, 183, 174, 176, 185, 181, 169, 166, 162, 161, 166, 28.12628 + 172, 170, 160, 151, 156, 161, 165, 164, 160, 157, 159, 164, 162, 168, 172, 164, 28.12629 + 152, 142, 144, 147, 143, 141, 149, 148, 137, 133, 126, 108, 122, 131, 129, 121, 28.12630 + 121, 117, 113, 113, 108, 112, 115, 113, 111, 113, 115, 112, 113, 112, 112, 111, 28.12631 + 111, 111, 111, 112, 110, 117, 115, 95, 96, 95, 94, 95, 93, 94, 98, 97, 28.12632 + 100, 109, 118, 123, 120, 105, 99, 131, 135, 134, 129, 124, 135, 160, 181, 166, 28.12633 + 167, 167, 166, 166, 168, 165, 158, 169, 166, 166, 163, 159, 158, 157, 158, 164, 28.12634 + 164, 164, 164, 164, 165, 166, 167, 162, 164, 166, 166, 164, 162, 160, 159, 160, 28.12635 + 159, 157, 153, 148, 142, 135, 132, 117, 128, 144, 154, 152, 145, 150, 160, 163, 28.12636 + 169, 174, 177, 177, 178, 180, 186, 185, 185, 185, 187, 189, 191, 194, 195, 192, 28.12637 + 191, 193, 196, 195, 191, 190, 194, 193, 193, 193, 191, 189, 190, 192, 195, 198, 28.12638 + 197, 197, 197, 197, 195, 193, 191, 194, 201, 207, 208, 206, 205, 203, 200, 217, 28.12639 + 204, 190, 185, 187, 194, 208, 220, 202, 200, 203, 212, 215, 206, 193, 183, 175, 28.12640 + 170, 173, 165, 147, 146, 150, 139, 136, 151, 163, 165, 172, 182, 182, 174, 174, 28.12641 + 163, 152, 150, 157, 162, 162, 159, 152, 160, 165, 164, 159, 157, 158, 160, 154, 28.12642 + 164, 172, 168, 156, 145, 146, 149, 148, 137, 145, 159, 151, 135, 122, 112, 99, 28.12643 + 111, 113, 115, 125, 124, 118, 118, 117, 117, 114, 111, 113, 118, 117, 111, 113, 28.12644 + 112, 109, 109, 107, 107, 106, 107, 109, 116, 115, 94, 95, 94, 94, 92, 93, 28.12645 + 95, 98, 97, 110, 121, 118, 109, 105, 111, 125, 135, 129, 124, 133, 144, 155, 28.12646 + 161, 160, 173, 168, 164, 160, 163, 167, 165, 158, 167, 166, 165, 165, 164, 164, 28.12647 + 163, 162, 165, 165, 165, 165, 164, 165, 165, 166, 166, 168, 169, 167, 163, 161, 28.12648 + 161, 162, 160, 160, 159, 158, 155, 148, 139, 133, 137, 109, 93, 108, 132, 142, 28.12649 + 148, 159, 153, 158, 164, 170, 173, 177, 181, 185, 183, 183, 183, 183, 184, 186, 28.12650 + 189, 190, 195, 192, 192, 195, 195, 192, 192, 195, 186, 193, 202, 207, 206, 200, 28.12651 + 194, 191, 200, 198, 196, 196, 196, 196, 195, 193, 188, 192, 197, 201, 204, 203, 28.12652 + 199, 194, 191, 192, 202, 215, 219, 208, 192, 182, 193, 186, 179, 175, 170, 156, 28.12653 + 137, 122, 132, 111, 107, 98, 74, 72, 85, 81, 74, 70, 79, 94, 101, 107, 28.12654 + 126, 149, 166, 169, 170, 166, 159, 155, 157, 159, 152, 160, 164, 162, 160, 159, 28.12655 + 161, 159, 156, 156, 158, 158, 161, 154, 146, 142, 147, 141, 144, 148, 144, 147, 28.12656 + 144, 131, 110, 115, 106, 101, 112, 119, 124, 133, 132, 130, 125, 122, 123, 127, 28.12657 + 124, 115, 119, 117, 116, 113, 113, 111, 110, 111, 112, 118, 115, 96, 96, 95, 28.12658 + 94, 92, 92, 94, 96, 103, 111, 115, 109, 101, 104, 119, 136, 133, 130, 129, 28.12659 + 141, 156, 161, 158, 151, 148, 146, 146, 144, 150, 159, 165, 165, 161, 162, 165, 28.12660 + 167, 171, 172, 173, 171, 173, 171, 170, 168, 166, 166, 165, 166, 173, 172, 169, 28.12661 + 168, 167, 167, 167, 166, 165, 163, 162, 161, 158, 153, 144, 139, 145, 83, 40, 28.12662 + 54, 90, 110, 128, 148, 147, 150, 155, 162, 166, 171, 173, 175, 181, 182, 183, 28.12663 + 183, 184, 184, 183, 183, 194, 190, 188, 191, 192, 191, 193, 197, 195, 192, 187, 28.12664 + 183, 183, 188, 196, 203, 200, 197, 193, 192, 194, 195, 195, 194, 188, 189, 191, 28.12665 + 195, 197, 196, 194, 193, 194, 189, 187, 189, 186, 176, 165, 159, 148, 142, 135, 28.12666 + 130, 131, 130, 126, 121, 89, 54, 50, 54, 35, 33, 47, 42, 46, 36, 33, 28.12667 + 38, 42, 51, 76, 104, 129, 141, 158, 167, 167, 161, 155, 152, 154, 157, 159, 28.12668 + 156, 157, 161, 161, 157, 159, 156, 154, 154, 158, 155, 149, 145, 148, 145, 145, 28.12669 + 141, 136, 142, 149, 143, 155, 157, 142, 121, 110, 103, 103, 116, 133, 135, 136, 28.12670 + 135, 136, 136, 132, 126, 127, 125, 123, 121, 120, 119, 117, 117, 113, 119, 116, 28.12671 + 93, 91, 91, 91, 91, 94, 96, 100, 110, 107, 103, 103, 111, 121, 130, 133, 28.12672 + 138, 142, 146, 151, 152, 152, 161, 167, 161, 162, 160, 152, 150, 153, 160, 163, 28.12673 + 169, 170, 170, 172, 175, 176, 174, 171, 172, 170, 169, 169, 167, 165, 165, 164, 28.12674 + 175, 168, 162, 162, 167, 170, 168, 164, 166, 163, 159, 157, 155, 151, 144, 140, 28.12675 + 110, 69, 42, 51, 55, 52, 81, 124, 147, 149, 153, 157, 162, 165, 164, 167, 28.12676 + 170, 174, 181, 186, 192, 193, 192, 192, 192, 187, 184, 187, 190, 191, 194, 199, 28.12677 + 191, 195, 200, 203, 203, 202, 201, 201, 200, 195, 190, 189, 192, 194, 195, 194, 28.12678 + 201, 200, 198, 195, 189, 183, 182, 184, 176, 166, 156, 150, 145, 139, 137, 140, 28.12679 + 141, 145, 149, 149, 148, 145, 141, 137, 80, 38, 38, 55, 42, 35, 41, 29, 28.12680 + 29, 38, 40, 31, 30, 41, 48, 46, 86, 91, 105, 128, 152, 166, 166, 160, 28.12681 + 156, 157, 155, 150, 153, 160, 160, 156, 159, 162, 164, 159, 153, 148, 151, 158, 28.12682 + 160, 148, 148, 151, 135, 126, 130, 137, 137, 157, 163, 153, 136, 112, 99, 106, 28.12683 + 116, 127, 139, 142, 144, 143, 140, 135, 129, 127, 123, 120, 120, 119, 118, 120, 28.12684 + 115, 122, 119, 80, 84, 89, 89, 89, 94, 99, 104, 119, 108, 101, 109, 126, 28.12685 + 138, 145, 145, 135, 145, 143, 138, 147, 156, 163, 171, 157, 160, 161, 159, 155, 28.12686 + 158, 169, 174, 180, 176, 173, 170, 170, 169, 170, 170, 167, 172, 167, 163, 170, 28.12687 + 169, 167, 171, 172, 168, 163, 161, 161, 163, 163, 163, 159, 165, 157, 149, 162, 28.12688 + 139, 159, 133, 65, 31, 38, 43, 41, 37, 35, 75, 107, 128, 149, 157, 160, 28.12689 + 166, 173, 175, 183, 176, 185, 192, 188, 187, 192, 190, 197, 190, 202, 202, 174, 28.12690 + 171, 193, 204, 207, 194, 187, 192, 198, 194, 188, 186, 189, 188, 187, 185, 183, 28.12691 + 180, 178, 177, 169, 168, 166, 164, 163, 162, 161, 161, 161, 159, 156, 155, 156, 28.12692 + 157, 156, 155, 154, 177, 135, 157, 160, 133, 158, 114, 32, 32, 33, 33, 32, 28.12693 + 30, 28, 27, 29, 32, 35, 33, 28, 28, 33, 39, 47, 52, 70, 88, 124, 28.12694 + 153, 154, 169, 159, 169, 165, 154, 153, 153, 156, 166, 157, 163, 170, 164, 160, 28.12695 + 156, 156, 156, 152, 151, 154, 156, 151, 143, 138, 141, 146, 157, 151, 147, 150, 28.12696 + 136, 103, 84, 90, 93, 115, 140, 149, 152, 150, 140, 137, 123, 124, 127, 118, 28.12697 + 114, 123, 125, 121, 121, 120, 79, 80, 83, 90, 96, 100, 104, 107, 100, 103, 28.12698 + 112, 126, 138, 144, 147, 146, 148, 156, 151, 144, 148, 151, 155, 162, 170, 169, 28.12699 + 166, 163, 164, 168, 176, 179, 179, 176, 173, 171, 169, 168, 168, 168, 168, 173, 28.12700 + 168, 165, 171, 170, 168, 173, 168, 165, 161, 160, 160, 161, 160, 160, 162, 143, 28.12701 + 177, 149, 146, 147, 144, 64, 42, 28, 40, 38, 36, 35, 27, 45, 46, 75, 28.12702 + 115, 143, 161, 168, 165, 158, 159, 158, 170, 179, 173, 174, 182, 185, 192, 177, 28.12703 + 181, 187, 175, 173, 171, 156, 163, 165, 169, 171, 171, 173, 177, 182, 173, 173, 28.12704 + 173, 172, 171, 170, 169, 167, 166, 166, 165, 164, 164, 164, 164, 165, 170, 167, 28.12705 + 165, 164, 165, 166, 165, 165, 167, 155, 169, 154, 161, 143, 156, 52, 36, 36, 28.12706 + 36, 35, 34, 32, 30, 30, 33, 33, 32, 31, 30, 30, 32, 33, 37, 42, 28.12707 + 52, 53, 84, 121, 133, 153, 159, 168, 164, 161, 167, 164, 152, 148, 155, 161, 28.12708 + 164, 162, 159, 159, 158, 155, 157, 153, 152, 151, 150, 144, 144, 150, 139, 150, 28.12709 + 149, 147, 151, 146, 131, 130, 121, 104, 102, 119, 135, 150, 155, 145, 145, 124, 28.12710 + 117, 114, 106, 112, 123, 123, 133, 129, 125, 84, 85, 90, 101, 109, 111, 104, 28.12711 + 100, 91, 104, 120, 134, 141, 140, 145, 146, 142, 151, 151, 152, 158, 159, 161, 28.12712 + 167, 176, 172, 164, 161, 164, 168, 174, 174, 176, 174, 172, 170, 169, 168, 168, 28.12713 + 168, 168, 173, 167, 164, 169, 167, 163, 169, 163, 161, 159, 159, 159, 158, 157, 28.12714 + 155, 159, 142, 160, 154, 129, 150, 85, 25, 33, 37, 47, 35, 33, 40, 31, 28.12715 + 28, 38, 43, 52, 62, 80, 102, 119, 126, 122, 121, 132, 136, 122, 119, 128, 28.12716 + 133, 136, 111, 93, 87, 86, 101, 106, 93, 69, 105, 141, 155, 155, 158, 162, 28.12717 + 163, 170, 170, 170, 171, 171, 171, 172, 172, 178, 177, 176, 175, 174, 174, 174, 28.12718 + 174, 177, 175, 173, 173, 174, 175, 174, 173, 174, 161, 163, 168, 153, 159, 104, 28.12719 + 22, 37, 36, 35, 33, 32, 31, 30, 30, 35, 32, 29, 28, 30, 31, 29, 28.12720 + 27, 31, 37, 42, 31, 50, 84, 101, 128, 150, 160, 160, 160, 169, 169, 162, 28.12721 + 161, 154, 157, 158, 157, 159, 161, 157, 152, 157, 152, 151, 151, 150, 148, 147, 28.12722 + 151, 144, 156, 153, 147, 148, 149, 148, 159, 156, 133, 118, 113, 113, 124, 132, 28.12723 + 127, 131, 123, 125, 127, 124, 129, 131, 121, 120, 118, 116, 97, 98, 104, 113, 28.12724 + 117, 111, 102, 99, 109, 117, 126, 134, 137, 136, 144, 148, 132, 141, 147, 152, 28.12725 + 161, 162, 165, 174, 175, 173, 165, 161, 161, 164, 169, 171, 174, 173, 172, 171, 28.12726 + 170, 170, 169, 169, 167, 172, 166, 162, 167, 163, 158, 163, 160, 159, 158, 158, 28.12727 + 158, 157, 154, 151, 155, 150, 139, 135, 142, 101, 32, 42, 39, 44, 44, 32, 28.12728 + 30, 38, 37, 32, 30, 31, 34, 36, 40, 45, 50, 51, 57, 52, 59, 61, 28.12729 + 47, 42, 48, 49, 52, 52, 52, 49, 47, 54, 55, 46, 46, 99, 152, 168, 28.12730 + 170, 174, 178, 173, 182, 180, 181, 181, 182, 182, 184, 183, 192, 191, 189, 186, 28.12731 + 184, 182, 181, 181, 179, 178, 176, 176, 177, 178, 177, 175, 175, 178, 147, 164, 28.12732 + 166, 123, 46, 40, 32, 30, 29, 27, 27, 28, 29, 30, 32, 31, 30, 29, 28.12733 + 30, 30, 29, 28, 32, 33, 40, 34, 42, 56, 67, 102, 122, 144, 156, 159, 28.12734 + 164, 163, 162, 168, 158, 158, 156, 155, 159, 161, 156, 148, 152, 150, 153, 157, 28.12735 + 157, 152, 147, 148, 150, 159, 153, 144, 143, 143, 146, 163, 159, 157, 156, 140, 28.12736 + 112, 100, 106, 106, 105, 105, 117, 121, 119, 126, 131, 119, 128, 129, 128, 119, 28.12737 + 117, 115, 114, 111, 104, 105, 111, 126, 127, 129, 133, 136, 136, 142, 141, 140, 28.12738 + 144, 145, 149, 156, 155, 158, 169, 175, 177, 174, 168, 161, 160, 167, 174, 171, 28.12739 + 171, 171, 172, 172, 171, 171, 171, 168, 173, 167, 163, 167, 162, 156, 161, 158, 28.12740 + 157, 156, 157, 157, 156, 152, 149, 149, 148, 144, 121, 137, 37, 34, 53, 40, 28.12741 + 38, 32, 31, 30, 28, 34, 33, 24, 31, 41, 45, 42, 34, 27, 25, 43, 28.12742 + 34, 36, 43, 40, 41, 45, 42, 31, 41, 43, 41, 42, 44, 45, 48, 85, 28.12743 + 126, 163, 166, 167, 176, 186, 180, 187, 184, 185, 182, 184, 182, 185, 186, 192, 28.12744 + 191, 188, 186, 184, 182, 182, 181, 181, 179, 178, 178, 179, 178, 176, 174, 175, 28.12745 + 173, 169, 145, 169, 49, 43, 43, 26, 26, 25, 25, 25, 27, 29, 30, 26, 28.12746 + 30, 33, 32, 29, 28, 30, 34, 34, 25, 34, 39, 42, 37, 42, 86, 100, 28.12747 + 124, 140, 150, 161, 159, 151, 151, 163, 161, 157, 155, 159, 161, 155, 146, 151, 28.12748 + 148, 151, 156, 158, 153, 149, 150, 151, 154, 147, 144, 148, 148, 149, 160, 147, 28.12749 + 159, 172, 162, 126, 105, 101, 95, 78, 75, 78, 77, 74, 86, 107, 109, 112, 28.12750 + 119, 126, 132, 123, 112, 106, 102, 101, 114, 130, 129, 128, 131, 137, 141, 140, 28.12751 + 140, 134, 143, 142, 141, 145, 152, 150, 156, 171, 170, 175, 174, 167, 159, 156, 28.12752 + 164, 171, 169, 170, 171, 172, 173, 173, 172, 172, 171, 176, 171, 167, 170, 165, 28.12753 + 159, 162, 156, 155, 154, 155, 155, 153, 150, 147, 139, 153, 138, 148, 63, 31, 28.12754 + 46, 40, 34, 33, 25, 38, 39, 25, 31, 29, 37, 34, 33, 30, 28, 27, 28.12755 + 34, 44, 32, 20, 20, 29, 29, 33, 35, 30, 40, 37, 22, 18, 28, 31, 28.12756 + 35, 50, 106, 138, 163, 166, 167, 177, 179, 173, 186, 185, 183, 181, 180, 181, 28.12757 + 182, 182, 187, 187, 186, 185, 185, 186, 187, 187, 184, 183, 181, 181, 181, 179, 28.12758 + 176, 175, 169, 171, 180, 157, 100, 26, 52, 24, 26, 26, 26, 27, 28, 29, 28.12759 + 31, 32, 24, 29, 34, 33, 29, 27, 31, 36, 37, 24, 31, 38, 42, 35, 28.12760 + 37, 78, 108, 114, 113, 120, 145, 160, 162, 164, 165, 164, 160, 156, 158, 160, 28.12761 + 155, 147, 159, 151, 148, 149, 152, 151, 152, 155, 151, 153, 145, 145, 150, 145, 28.12762 + 139, 148, 151, 157, 164, 163, 143, 126, 109, 87, 63, 56, 61, 65, 59, 63, 28.12763 + 79, 84, 72, 84, 97, 122, 113, 106, 109, 113, 113, 124, 138, 136, 136, 137, 28.12764 + 141, 142, 140, 141, 136, 134, 133, 133, 140, 151, 150, 157, 174, 169, 171, 169, 28.12765 + 165, 160, 158, 161, 164, 166, 167, 169, 171, 172, 172, 172, 171, 169, 175, 170, 28.12766 + 166, 170, 164, 157, 161, 154, 152, 151, 151, 151, 150, 147, 145, 137, 153, 128, 28.12767 + 137, 15, 48, 39, 34, 35, 39, 28, 42, 43, 28, 34, 25, 29, 26, 29, 28.12768 + 34, 33, 27, 24, 26, 41, 30, 32, 37, 31, 32, 36, 32, 23, 27, 26, 28.12769 + 36, 48, 37, 33, 53, 131, 153, 175, 181, 184, 189, 187, 180, 187, 186, 184, 28.12770 + 182, 182, 183, 184, 186, 189, 188, 188, 188, 189, 190, 191, 192, 187, 185, 183, 28.12771 + 182, 182, 179, 175, 173, 168, 180, 165, 155, 32, 46, 36, 26, 31, 31, 32, 28.12772 + 32, 32, 32, 31, 29, 26, 29, 32, 32, 30, 28, 29, 30, 37, 33, 39, 28.12773 + 37, 43, 43, 36, 58, 113, 118, 110, 107, 124, 143, 158, 173, 163, 163, 160, 28.12774 + 156, 157, 159, 156, 149, 161, 151, 145, 147, 150, 151, 151, 153, 151, 153, 147, 28.12775 + 148, 149, 139, 132, 141, 153, 150, 156, 160, 156, 149, 126, 94, 70, 55, 62, 28.12776 + 77, 76, 71, 72, 72, 76, 79, 82, 106, 101, 104, 119, 132, 131, 131, 138, 28.12777 + 151, 149, 145, 142, 137, 137, 144, 143, 134, 130, 132, 138, 146, 145, 151, 169, 28.12778 + 175, 175, 171, 168, 168, 165, 166, 163, 165, 167, 169, 171, 172, 173, 172, 172, 28.12779 + 167, 173, 168, 165, 168, 163, 156, 160, 152, 150, 148, 147, 148, 147, 145, 144, 28.12780 + 146, 136, 141, 70, 42, 33, 33, 40, 35, 44, 27, 33, 33, 26, 36, 21, 28.12781 + 40, 30, 27, 32, 36, 33, 30, 30, 30, 23, 27, 31, 22, 22, 29, 29, 28.12782 + 28, 32, 27, 31, 40, 33, 52, 99, 159, 168, 173, 171, 170, 176, 182, 184, 28.12783 + 187, 186, 184, 183, 183, 185, 187, 189, 191, 190, 189, 188, 188, 188, 188, 189, 28.12784 + 187, 185, 183, 182, 181, 177, 173, 170, 175, 178, 158, 109, 28, 49, 15, 44, 28.12785 + 32, 33, 33, 33, 32, 30, 28, 26, 30, 28, 28, 29, 30, 29, 26, 23, 28.12786 + 28, 37, 46, 34, 40, 47, 28, 28, 98, 123, 134, 125, 116, 112, 123, 143, 28.12787 + 159, 161, 159, 156, 156, 158, 156, 152, 155, 148, 147, 152, 155, 152, 148, 145, 28.12788 + 146, 150, 149, 151, 152, 142, 138, 150, 136, 138, 150, 161, 163, 163, 148, 119, 28.12789 + 89, 59, 55, 73, 77, 74, 77, 80, 80, 75, 71, 113, 119, 123, 128, 134, 28.12790 + 139, 146, 149, 154, 153, 151, 148, 141, 136, 138, 137, 148, 144, 135, 133, 148, 28.12791 + 159, 166, 174, 176, 179, 175, 170, 171, 170, 167, 162, 157, 158, 162, 168, 173, 28.12792 + 176, 175, 173, 171, 168, 166, 165, 164, 162, 156, 151, 155, 148, 151, 154, 146, 28.12793 + 145, 146, 140, 162, 119, 125, 48, 34, 46, 28, 35, 38, 36, 35, 38, 41, 28.12794 + 40, 33, 26, 22, 31, 32, 30, 31, 26, 26, 38, 30, 31, 30, 28, 26, 28.12795 + 27, 27, 30, 30, 26, 25, 40, 57, 67, 100, 148, 172, 175, 179, 181, 182, 28.12796 + 183, 184, 186, 187, 187, 187, 187, 187, 187, 186, 186, 192, 192, 191, 190, 190, 28.12797 + 189, 188, 188, 188, 191, 189, 182, 176, 176, 175, 174, 186, 160, 164, 58, 44, 28.12798 + 33, 31, 32, 32, 30, 38, 42, 32, 30, 32, 26, 33, 25, 32, 32, 23, 28.12799 + 34, 42, 27, 34, 36, 38, 40, 41, 40, 38, 36, 81, 126, 122, 130, 134, 28.12800 + 130, 103, 129, 136, 154, 166, 163, 157, 157, 163, 165, 160, 154, 152, 155, 154, 28.12801 + 148, 147, 150, 152, 150, 148, 149, 148, 144, 141, 141, 130, 139, 143, 141, 147, 28.12802 + 151, 146, 136, 81, 53, 66, 89, 81, 80, 84, 70, 78, 74, 71, 118, 121, 28.12803 + 124, 128, 133, 139, 146, 148, 154, 154, 152, 150, 143, 138, 141, 140, 140, 148, 28.12804 + 147, 142, 144, 145, 154, 167, 187, 186, 175, 167, 164, 168, 171, 169, 171, 170, 28.12805 + 167, 166, 168, 170, 171, 171, 170, 168, 166, 166, 166, 163, 158, 154, 149, 143, 28.12806 + 147, 150, 145, 146, 149, 143, 145, 139, 97, 38, 39, 39, 32, 35, 34, 32, 28.12807 + 31, 33, 36, 35, 28, 23, 26, 31, 28, 26, 28, 23, 21, 31, 27, 29, 28.12808 + 31, 32, 32, 32, 29, 29, 34, 27, 35, 79, 132, 153, 156, 166, 168, 171, 28.12809 + 175, 178, 179, 180, 182, 183, 190, 190, 190, 190, 189, 189, 189, 190, 190, 190, 28.12810 + 189, 189, 189, 188, 188, 188, 185, 185, 181, 177, 177, 179, 176, 172, 174, 164, 28.12811 + 132, 31, 31, 31, 27, 37, 28, 28, 30, 26, 20, 28, 37, 36, 19, 26, 28.12812 + 40, 40, 30, 30, 31, 24, 32, 34, 36, 38, 39, 39, 38, 37, 60, 119, 28.12813 + 123, 128, 132, 129, 124, 122, 125, 137, 147, 151, 153, 159, 162, 161, 156, 149, 28.12814 + 146, 149, 150, 147, 146, 148, 148, 150, 151, 149, 145, 140, 140, 143, 137, 139, 28.12815 + 140, 142, 146, 149, 142, 135, 123, 90, 80, 83, 73, 72, 81, 81, 83, 80, 28.12816 + 77, 125, 128, 131, 133, 137, 143, 149, 151, 148, 147, 147, 146, 141, 137, 142, 28.12817 + 142, 170, 175, 171, 162, 163, 161, 164, 172, 178, 182, 181, 178, 174, 171, 167, 28.12818 + 157, 165, 164, 164, 166, 170, 173, 174, 174, 166, 165, 164, 164, 164, 161, 156, 28.12819 + 153, 148, 142, 145, 148, 144, 147, 149, 141, 135, 153, 62, 34, 45, 36, 40, 28.12820 + 36, 31, 31, 31, 33, 33, 32, 27, 23, 29, 29, 21, 22, 28, 22, 18, 28.12821 + 26, 41, 37, 32, 29, 27, 29, 31, 33, 28, 47, 75, 115, 157, 169, 164, 28.12822 + 166, 170, 174, 179, 182, 183, 184, 186, 188, 191, 191, 191, 191, 191, 191, 191, 28.12823 + 191, 188, 188, 188, 188, 188, 187, 187, 187, 184, 181, 177, 175, 180, 184, 179, 28.12824 + 172, 174, 170, 99, 24, 31, 37, 25, 36, 42, 42, 35, 28, 35, 46, 41, 28.12825 + 23, 26, 32, 28, 26, 33, 36, 34, 35, 32, 33, 36, 38, 40, 40, 40, 28.12826 + 37, 37, 99, 127, 126, 131, 130, 144, 118, 126, 131, 137, 145, 155, 164, 165, 28.12827 + 162, 162, 154, 149, 151, 155, 154, 152, 151, 146, 152, 155, 151, 143, 139, 141, 28.12828 + 146, 142, 137, 136, 141, 147, 144, 137, 134, 123, 98, 77, 74, 71, 67, 69, 28.12829 + 75, 67, 67, 66, 128, 133, 136, 140, 145, 147, 149, 151, 148, 144, 145, 146, 28.12830 + 142, 139, 143, 144, 163, 174, 172, 160, 152, 149, 155, 169, 168, 175, 178, 179, 28.12831 + 174, 171, 164, 154, 156, 159, 166, 172, 177, 176, 171, 167, 165, 165, 165, 164, 28.12832 + 162, 158, 153, 150, 153, 147, 149, 149, 144, 147, 147, 136, 140, 129, 34, 36, 28.12833 + 41, 37, 40, 31, 32, 33, 32, 34, 33, 33, 29, 26, 27, 26, 19, 23, 28.12834 + 32, 26, 21, 29, 29, 29, 31, 35, 39, 42, 42, 41, 73, 110, 139, 152, 28.12835 + 159, 159, 164, 177, 174, 175, 182, 183, 187, 186, 190, 190, 190, 189, 191, 189, 28.12836 + 191, 190, 192, 192, 191, 190, 190, 189, 188, 187, 186, 186, 184, 184, 181, 179, 28.12837 + 182, 185, 181, 175, 167, 144, 61, 33, 34, 42, 29, 33, 18, 38, 40, 29, 28.12838 + 32, 40, 34, 22, 32, 43, 34, 27, 36, 34, 31, 44, 32, 33, 35, 38, 28.12839 + 40, 41, 41, 39, 30, 66, 131, 127, 132, 137, 147, 125, 137, 137, 139, 143, 28.12840 + 152, 160, 163, 164, 166, 159, 154, 153, 158, 158, 157, 152, 149, 154, 155, 151, 28.12841 + 146, 145, 145, 145, 143, 134, 130, 140, 145, 139, 133, 135, 133, 111, 82, 75, 28.12842 + 83, 80, 72, 79, 67, 70, 70, 126, 130, 137, 141, 144, 144, 141, 142, 150, 28.12843 + 147, 146, 148, 147, 144, 146, 145, 150, 174, 181, 171, 159, 153, 166, 188, 173, 28.12844 + 173, 168, 160, 160, 165, 172, 173, 173, 173, 175, 177, 176, 170, 161, 155, 168, 28.12845 + 169, 170, 169, 165, 159, 154, 151, 156, 152, 154, 153, 148, 151, 148, 132, 144, 28.12846 + 78, 23, 42, 30, 38, 32, 25, 33, 34, 33, 34, 35, 34, 30, 28, 26, 28.12847 + 25, 19, 26, 32, 25, 22, 34, 34, 47, 68, 89, 103, 106, 101, 96, 133, 28.12848 + 154, 162, 163, 168, 172, 172, 180, 171, 175, 180, 182, 185, 185, 188, 189, 190, 28.12849 + 190, 191, 191, 192, 192, 193, 192, 195, 194, 192, 191, 189, 187, 186, 185, 183, 28.12850 + 186, 186, 182, 179, 180, 178, 175, 162, 108, 33, 39, 29, 40, 39, 48, 87, 28.12851 + 111, 97, 51, 25, 22, 32, 46, 19, 44, 51, 47, 45, 29, 21, 38, 33, 28.12852 + 34, 36, 38, 40, 41, 42, 41, 37, 37, 126, 128, 134, 144, 137, 139, 140, 28.12853 + 140, 139, 139, 140, 145, 153, 161, 165, 160, 156, 153, 157, 158, 156, 150, 152, 28.12854 + 153, 151, 147, 148, 151, 147, 141, 143, 134, 132, 140, 146, 140, 134, 138, 155, 28.12855 + 126, 84, 66, 74, 73, 67, 73, 71, 74, 72, 132, 135, 140, 145, 144, 143, 28.12856 + 140, 137, 144, 140, 139, 142, 143, 141, 141, 143, 133, 138, 133, 134, 149, 154, 28.12857 + 152, 152, 165, 167, 164, 160, 160, 166, 175, 175, 185, 181, 176, 173, 170, 168, 28.12858 + 165, 162, 171, 173, 175, 174, 169, 163, 159, 156, 156, 154, 158, 157, 153, 156, 28.12859 + 149, 129, 131, 43, 31, 48, 31, 40, 32, 28, 31, 32, 32, 32, 32, 32, 28.12860 + 29, 28, 26, 26, 22, 26, 29, 21, 27, 49, 91, 101, 116, 130, 142, 151, 28.12861 + 157, 161, 154, 164, 164, 162, 168, 169, 167, 173, 175, 179, 183, 185, 186, 187, 28.12862 + 188, 190, 191, 191, 192, 193, 193, 194, 195, 195, 195, 194, 193, 191, 189, 187, 28.12863 + 186, 185, 181, 186, 187, 182, 177, 175, 174, 172, 184, 122, 53, 45, 30, 38, 28.12864 + 43, 82, 130, 167, 177, 164, 148, 104, 45, 18, 43, 39, 32, 35, 45, 42, 28.12865 + 32, 32, 35, 35, 36, 38, 39, 41, 42, 40, 43, 29, 103, 127, 136, 146, 28.12866 + 133, 149, 141, 141, 142, 140, 136, 136, 146, 159, 162, 163, 161, 158, 158, 160, 28.12867 + 158, 154, 151, 151, 146, 142, 146, 152, 147, 136, 144, 142, 140, 144, 145, 140, 28.12868 + 138, 140, 144, 117, 90, 76, 74, 70, 65, 60, 68, 72, 72, 139, 139, 142, 28.12869 + 142, 142, 140, 140, 137, 135, 132, 132, 137, 142, 140, 141, 144, 152, 138, 110, 28.12870 + 109, 133, 149, 147, 142, 150, 159, 163, 163, 164, 167, 169, 167, 175, 171, 168, 28.12871 + 168, 169, 171, 172, 172, 167, 171, 175, 175, 171, 166, 162, 161, 159, 159, 163, 28.12872 + 161, 155, 156, 146, 121, 89, 37, 41, 41, 37, 34, 33, 34, 30, 32, 31, 28.12873 + 31, 31, 30, 29, 29, 27, 28, 24, 26, 26, 23, 44, 80, 129, 132, 134, 28.12874 + 134, 135, 143, 158, 170, 165, 176, 178, 177, 176, 169, 169, 184, 180, 184, 188, 28.12875 + 190, 190, 190, 191, 192, 191, 191, 192, 192, 193, 194, 195, 194, 191, 191, 190, 28.12876 + 190, 189, 188, 188, 187, 182, 185, 184, 180, 179, 178, 174, 169, 191, 163, 98, 28.12877 + 43, 39, 41, 37, 121, 161, 172, 159, 156, 178, 164, 126, 114, 110, 78, 55, 28.12878 + 49, 48, 49, 45, 36, 36, 36, 37, 37, 38, 40, 41, 40, 39, 42, 69, 28.12879 + 123, 137, 140, 144, 149, 146, 145, 147, 147, 140, 135, 139, 150, 157, 164, 167, 28.12880 + 164, 162, 164, 164, 159, 150, 154, 151, 145, 147, 153, 149, 141, 144, 150, 148, 28.12881 + 144, 140, 139, 138, 139, 139, 121, 118, 111, 92, 84, 82, 71, 85, 87, 88, 28.12882 + 141, 138, 136, 134, 134, 135, 136, 137, 138, 135, 136, 142, 146, 145, 146, 148, 28.12883 + 137, 137, 115, 93, 91, 105, 131, 157, 163, 166, 162, 154, 153, 158, 165, 168, 28.12884 + 165, 164, 166, 169, 172, 172, 169, 167, 162, 167, 172, 174, 170, 166, 163, 163, 28.12885 + 164, 164, 167, 163, 155, 154, 140, 112, 45, 38, 40, 25, 37, 20, 28, 31, 28.12886 + 29, 30, 31, 31, 30, 29, 29, 30, 26, 29, 26, 27, 28, 30, 63, 110, 28.12887 + 136, 146, 158, 161, 157, 155, 160, 165, 175, 174, 171, 175, 185, 181, 177, 187, 28.12888 + 179, 182, 185, 187, 186, 186, 187, 188, 186, 187, 187, 188, 189, 190, 191, 191, 28.12889 + 188, 188, 188, 188, 189, 189, 189, 189, 186, 185, 182, 180, 184, 185, 178, 169, 28.12890 + 159, 173, 114, 25, 41, 43, 27, 145, 149, 175, 174, 171, 185, 173, 159, 178, 28.12891 + 162, 147, 140, 114, 60, 32, 38, 40, 36, 36, 36, 36, 36, 36, 39, 36, 28.12892 + 30, 56, 41, 117, 134, 132, 157, 145, 148, 146, 147, 149, 142, 132, 129, 135, 28.12893 + 143, 154, 163, 160, 158, 160, 159, 158, 149, 156, 157, 149, 147, 154, 153, 147, 28.12894 + 142, 152, 152, 142, 135, 137, 137, 134, 145, 125, 123, 109, 74, 72, 87, 82, 28.12895 + 93, 93, 89, 141, 138, 132, 133, 137, 142, 143, 140, 137, 131, 137, 140, 137, 28.12896 + 141, 146, 138, 143, 136, 122, 112, 98, 84, 98, 129, 174, 168, 161, 158, 154, 28.12897 + 149, 149, 154, 169, 168, 164, 165, 168, 171, 171, 169, 166, 168, 170, 169, 168, 28.12898 + 167, 172, 173, 172, 167, 160, 152, 157, 166, 134, 79, 33, 38, 36, 28, 28, 28.12899 + 34, 34, 29, 30, 26, 23, 22, 25, 30, 35, 37, 34, 32, 29, 31, 51, 28.12900 + 82, 112, 123, 142, 146, 150, 154, 155, 159, 166, 172, 173, 181, 186, 182, 181, 28.12901 + 183, 182, 177, 185, 190, 188, 184, 183, 188, 190, 190, 184, 188, 188, 187, 185, 28.12902 + 186, 188, 190, 190, 189, 186, 186, 190, 190, 189, 187, 187, 181, 183, 186, 180, 28.12903 + 181, 179, 173, 163, 112, 81, 44, 40, 33, 32, 121, 164, 163, 170, 182, 188, 28.12904 + 184, 186, 194, 173, 185, 183, 171, 145, 84, 36, 33, 34, 34, 43, 47, 37, 28.12905 + 31, 39, 36, 38, 33, 47, 94, 135, 136, 137, 151, 143, 151, 156, 151, 142, 28.12906 + 138, 135, 132, 133, 146, 160, 163, 161, 159, 158, 155, 149, 148, 149, 146, 144, 28.12907 + 142, 143, 142, 148, 143, 144, 149, 148, 143, 139, 141, 147, 131, 128, 93, 81, 28.12908 + 87, 78, 93, 94, 92, 91, 142, 145, 145, 145, 142, 140, 140, 140, 144, 137, 28.12909 + 140, 143, 138, 141, 144, 137, 128, 133, 133, 133, 125, 103, 89, 94, 121, 152, 28.12910 + 166, 147, 139, 154, 155, 141, 159, 163, 163, 161, 160, 160, 163, 166, 165, 169, 28.12911 + 170, 167, 162, 161, 169, 173, 179, 172, 168, 162, 157, 147, 100, 40, 47, 45, 28.12912 + 44, 42, 37, 29, 28, 32, 28, 26, 28, 30, 32, 29, 23, 19, 41, 30, 28.12913 + 43, 80, 111, 121, 130, 141, 142, 148, 158, 164, 164, 166, 168, 170, 176, 181, 28.12914 + 183, 180, 181, 183, 185, 183, 183, 186, 184, 182, 185, 189, 189, 184, 193, 184, 28.12915 + 177, 174, 176, 180, 178, 176, 190, 189, 185, 185, 187, 189, 188, 187, 188, 181, 28.12916 + 183, 184, 178, 179, 178, 170, 174, 128, 86, 33, 32, 39, 36, 99, 164, 153, 28.12917 + 156, 174, 182, 173, 169, 174, 164, 174, 179, 184, 183, 149, 85, 38, 57, 37, 28.12918 + 26, 31, 38, 36, 36, 37, 37, 23, 41, 67, 121, 136, 137, 141, 142, 148, 28.12919 + 152, 147, 142, 139, 135, 130, 137, 127, 142, 165, 167, 160, 160, 159, 151, 149, 28.12920 + 148, 147, 149, 149, 150, 149, 147, 143, 145, 150, 150, 145, 141, 141, 147, 136, 28.12921 + 123, 90, 63, 80, 77, 97, 100, 99, 97, 138, 146, 151, 151, 144, 139, 138, 28.12922 + 139, 145, 138, 139, 142, 138, 141, 144, 136, 131, 136, 130, 126, 126, 116, 101, 28.12923 + 95, 91, 114, 143, 160, 161, 155, 147, 139, 151, 156, 160, 156, 152, 152, 158, 28.12924 + 165, 158, 162, 165, 161, 156, 156, 164, 172, 157, 165, 172, 157, 128, 112, 102, 28.12925 + 86, 47, 46, 38, 30, 35, 45, 37, 19, 33, 27, 23, 23, 29, 35, 40, 28.12926 + 43, 40, 44, 73, 115, 140, 139, 140, 145, 150, 156, 163, 169, 170, 172, 175, 28.12927 + 178, 178, 181, 182, 178, 178, 181, 185, 186, 186, 188, 187, 186, 189, 190, 187, 28.12928 + 181, 176, 177, 181, 184, 186, 184, 179, 176, 188, 187, 183, 183, 185, 188, 188, 28.12929 + 187, 189, 181, 182, 182, 176, 177, 176, 168, 168, 129, 82, 26, 33, 47, 24, 28.12930 + 40, 105, 152, 174, 152, 149, 175, 184, 167, 185, 182, 177, 169, 170, 165, 113, 28.12931 + 42, 27, 45, 45, 32, 37, 44, 38, 26, 38, 18, 38, 40, 97, 138, 140, 28.12932 + 136, 144, 147, 149, 146, 145, 144, 139, 132, 137, 118, 131, 155, 160, 165, 168, 28.12933 + 154, 157, 152, 148, 149, 151, 154, 155, 152, 148, 144, 145, 149, 150, 145, 141, 28.12934 + 141, 144, 144, 124, 97, 45, 65, 60, 76, 81, 87, 89, 135, 142, 147, 148, 28.12935 + 144, 141, 139, 139, 142, 135, 137, 140, 136, 140, 143, 136, 135, 140, 128, 117, 28.12936 + 124, 126, 120, 116, 88, 83, 97, 126, 146, 148, 144, 143, 151, 152, 156, 153, 28.12937 + 149, 148, 153, 157, 153, 153, 156, 156, 155, 157, 164, 168, 176, 157, 149, 151, 28.12938 + 156, 163, 160, 145, 148, 117, 78, 48, 33, 31, 38, 46, 32, 34, 38, 37, 28.12939 + 34, 31, 31, 31, 58, 89, 120, 127, 128, 136, 145, 146, 154, 156, 158, 158, 28.12940 + 161, 166, 178, 185, 180, 180, 181, 180, 178, 180, 184, 186, 187, 189, 189, 185, 28.12941 + 184, 185, 183, 179, 181, 182, 181, 177, 171, 171, 183, 196, 185, 185, 184, 186, 28.12942 + 187, 188, 186, 186, 189, 181, 181, 181, 174, 175, 174, 167, 176, 158, 123, 64, 28.12943 + 48, 50, 32, 40, 54, 79, 124, 160, 164, 149, 151, 169, 167, 166, 170, 165, 28.12944 + 163, 182, 172, 127, 36, 52, 51, 41, 45, 41, 33, 30, 38, 24, 35, 30, 28.12945 + 65, 139, 142, 141, 149, 149, 149, 148, 151, 152, 146, 137, 133, 129, 135, 135, 28.12946 + 137, 165, 177, 148, 159, 153, 148, 147, 151, 154, 152, 147, 145, 141, 142, 147, 28.12947 + 148, 144, 142, 142, 134, 145, 128, 114, 44, 62, 54, 64, 66, 76, 82, 141, 28.12948 + 140, 139, 141, 143, 144, 140, 138, 139, 133, 135, 139, 136, 141, 144, 136, 125, 28.12949 + 140, 138, 126, 128, 126, 115, 109, 100, 101, 90, 80, 102, 144, 167, 160, 153, 28.12950 + 149, 150, 148, 146, 144, 142, 142, 148, 147, 146, 148, 154, 156, 155, 153, 163, 28.12951 + 153, 158, 171, 176, 178, 173, 158, 155, 138, 145, 156, 120, 51, 19, 30, 29, 28.12952 + 32, 36, 34, 35, 47, 69, 86, 115, 139, 154, 144, 134, 140, 152, 156, 151, 28.12953 + 152, 154, 152, 153, 156, 166, 173, 172, 175, 178, 180, 181, 181, 184, 185, 179, 28.12954 + 185, 186, 180, 176, 177, 180, 180, 179, 182, 189, 194, 191, 180, 176, 176, 178, 28.12955 + 182, 185, 189, 189, 188, 185, 184, 188, 181, 181, 181, 174, 175, 174, 165, 161, 28.12956 + 165, 149, 89, 37, 16, 20, 47, 39, 43, 78, 133, 168, 164, 152, 150, 167, 28.12957 + 167, 180, 180, 167, 170, 166, 141, 123, 78, 41, 40, 47, 35, 33, 45, 31, 28.12958 + 33, 31, 34, 36, 128, 142, 151, 151, 150, 150, 149, 153, 155, 149, 140, 139, 28.12959 + 137, 139, 130, 128, 153, 171, 157, 163, 156, 150, 149, 152, 152, 149, 144, 141, 28.12960 + 138, 139, 145, 147, 144, 143, 144, 129, 141, 128, 128, 54, 65, 65, 68, 67, 28.12961 + 75, 77, 149, 144, 140, 140, 143, 144, 141, 137, 141, 133, 137, 141, 137, 141, 28.12962 + 144, 137, 123, 138, 138, 129, 128, 126, 119, 117, 119, 119, 111, 100, 97, 114, 28.12963 + 138, 149, 153, 146, 149, 151, 148, 144, 141, 137, 149, 145, 143, 143, 145, 145, 28.12964 + 145, 143, 139, 158, 182, 182, 159, 150, 160, 165, 152, 152, 149, 144, 132, 106, 28.12965 + 68, 37, 41, 51, 64, 74, 89, 113, 145, 168, 160, 154, 155, 159, 158, 152, 28.12966 + 153, 159, 157, 161, 166, 166, 163, 159, 160, 160, 163, 164, 168, 175, 177, 177, 28.12967 + 181, 185, 177, 180, 182, 179, 177, 182, 184, 184, 181, 173, 176, 193, 204, 198, 28.12968 + 183, 173, 175, 179, 183, 187, 188, 186, 183, 183, 186, 179, 181, 183, 176, 176, 28.12969 + 174, 165, 174, 175, 167, 139, 100, 68, 51, 43, 34, 57, 63, 63, 97, 152, 28.12970 + 175, 162, 147, 145, 155, 166, 169, 172, 171, 162, 160, 137, 100, 55, 27, 39, 28.12971 + 50, 35, 26, 36, 27, 38, 25, 101, 144, 156, 151, 150, 150, 148, 151, 154, 28.12972 + 149, 141, 146, 140, 137, 143, 140, 132, 143, 167, 164, 161, 158, 157, 157, 153, 28.12973 + 147, 143, 142, 138, 139, 144, 147, 144, 143, 145, 142, 140, 125, 128, 57, 51, 28.12974 + 61, 58, 52, 60, 63, 144, 143, 141, 141, 140, 141, 140, 139, 141, 134, 137, 28.12975 + 139, 135, 137, 140, 132, 130, 136, 131, 124, 127, 129, 129, 139, 123, 114, 119, 28.12976 + 126, 111, 88, 91, 105, 132, 131, 143, 149, 148, 145, 144, 145, 148, 147, 146, 28.12977 + 142, 139, 140, 147, 153, 178, 170, 168, 168, 170, 179, 178, 160, 155, 172, 167, 28.12978 + 150, 155, 160, 118, 55, 94, 113, 138, 157, 164, 161, 157, 154, 166, 157, 155, 28.12979 + 161, 167, 164, 160, 161, 167, 171, 176, 176, 173, 169, 167, 167, 163, 160, 163, 28.12980 + 168, 169, 169, 172, 178, 177, 178, 179, 180, 184, 186, 179, 170, 170, 145, 127, 28.12981 + 127, 141, 157, 180, 195, 175, 176, 179, 181, 181, 181, 182, 184, 184, 178, 182, 28.12982 + 185, 179, 178, 175, 165, 164, 160, 152, 150, 144, 125, 86, 39, 52, 32, 26, 28.12983 + 39, 46, 59, 106, 159, 171, 173, 164, 158, 163, 162, 156, 156, 150, 162, 162, 28.12984 + 99, 29, 42, 64, 30, 26, 33, 29, 36, 35, 69, 153, 157, 152, 153, 153, 28.12985 + 150, 152, 154, 150, 143, 145, 149, 144, 149, 149, 117, 108, 147, 163, 163, 164, 28.12986 + 163, 160, 154, 147, 144, 145, 143, 143, 146, 147, 144, 142, 144, 152, 135, 125, 28.12987 + 132, 70, 41, 56, 43, 39, 46, 51, 131, 136, 140, 141, 138, 137, 140, 141, 28.12988 + 142, 134, 135, 137, 131, 132, 134, 126, 131, 133, 129, 127, 133, 128, 124, 131, 28.12989 + 137, 142, 137, 125, 120, 122, 120, 103, 104, 112, 132, 142, 142, 142, 148, 153, 28.12990 + 147, 151, 151, 145, 139, 142, 158, 172, 168, 166, 167, 164, 162, 172, 170, 152, 28.12991 + 152, 148, 154, 163, 158, 144, 144, 157, 165, 162, 157, 155, 158, 162, 166, 167, 28.12992 + 157, 174, 178, 165, 163, 176, 180, 171, 171, 173, 175, 173, 172, 172, 175, 177, 28.12993 + 168, 162, 160, 162, 162, 158, 163, 170, 176, 172, 170, 173, 181, 181, 164, 147, 28.12994 + 99, 95, 95, 99, 96, 100, 122, 145, 175, 175, 175, 175, 175, 177, 181, 185, 28.12995 + 182, 177, 182, 187, 181, 180, 176, 165, 165, 172, 165, 156, 149, 150, 137, 96, 28.12996 + 64, 47, 43, 52, 48, 39, 53, 83, 123, 148, 151, 145, 158, 161, 157, 163, 28.12997 + 170, 138, 149, 135, 61, 36, 57, 49, 31, 30, 34, 33, 51, 50, 162, 156, 28.12998 + 155, 157, 157, 154, 154, 155, 152, 147, 135, 162, 155, 145, 147, 112, 87, 112, 28.12999 + 161, 165, 168, 168, 161, 153, 147, 145, 150, 148, 146, 149, 148, 144, 142, 143, 28.13000 + 147, 124, 126, 143, 94, 51, 67, 47, 45, 53, 59, 137, 139, 139, 136, 136, 28.13001 + 141, 141, 139, 138, 137, 137, 136, 134, 133, 131, 131, 132, 132, 133, 131, 132, 28.13002 + 132, 134, 137, 138, 140, 140, 136, 135, 133, 126, 108, 104, 73, 117, 161, 139, 28.13003 + 139, 162, 152, 151, 159, 147, 135, 148, 167, 170, 165, 166, 161, 157, 159, 161, 28.13004 + 161, 152, 145, 161, 152, 145, 145, 146, 147, 156, 168, 160, 159, 158, 157, 158, 28.13005 + 161, 165, 167, 171, 173, 178, 179, 178, 174, 171, 168, 189, 181, 176, 177, 184, 28.13006 + 188, 184, 178, 181, 177, 170, 168, 167, 164, 162, 158, 158, 161, 155, 148, 161, 28.13007 + 169, 130, 79, 87, 99, 70, 79, 89, 102, 111, 117, 154, 173, 174, 165, 168, 28.13008 + 174, 177, 183, 177, 175, 174, 177, 182, 183, 175, 169, 171, 172, 168, 157, 151, 28.13009 + 151, 148, 142, 121, 92, 58, 42, 44, 48, 43, 37, 49, 108, 160, 159, 145, 28.13010 + 143, 153, 155, 155, 160, 170, 137, 123, 57, 30, 60, 41, 27, 34, 44, 32, 28.13011 + 73, 153, 167, 150, 162, 163, 151, 149, 158, 157, 146, 139, 149, 148, 145, 149, 28.13012 + 137, 108, 92, 132, 179, 178, 179, 170, 157, 155, 141, 149, 150, 146, 141, 141, 28.13013 + 143, 140, 135, 135, 129, 127, 139, 102, 56, 64, 78, 62, 72, 92, 138, 140, 28.13014 + 139, 136, 136, 138, 140, 138, 136, 136, 136, 136, 134, 133, 132, 129, 132, 131, 28.13015 + 132, 130, 131, 133, 137, 140, 136, 140, 143, 143, 145, 146, 144, 129, 121, 89, 28.13016 + 105, 131, 138, 160, 172, 143, 132, 121, 115, 138, 165, 171, 176, 192, 149, 145, 28.13017 + 145, 151, 155, 158, 157, 153, 154, 152, 154, 158, 158, 153, 152, 158, 162, 164, 28.13018 + 167, 168, 169, 170, 171, 171, 174, 175, 179, 179, 178, 176, 174, 172, 183, 178, 28.13019 + 174, 176, 184, 185, 183, 179, 183, 180, 177, 175, 175, 172, 166, 162, 160, 157, 28.13020 + 152, 142, 133, 122, 105, 88, 75, 92, 95, 83, 79, 89, 95, 100, 107, 137, 28.13021 + 160, 169, 179, 180, 172, 171, 183, 182, 180, 177, 175, 173, 170, 170, 169, 172, 28.13022 + 170, 162, 159, 160, 157, 152, 143, 144, 131, 96, 57, 34, 37, 48, 33, 50, 28.13023 + 81, 120, 153, 164, 153, 138, 170, 159, 158, 152, 164, 113, 41, 24, 31, 30, 28.13024 + 32, 39, 46, 95, 163, 169, 151, 158, 162, 156, 154, 158, 155, 146, 141, 146, 28.13025 + 143, 141, 144, 134, 107, 91, 55, 133, 163, 166, 159, 155, 164, 155, 145, 148, 28.13026 + 147, 143, 144, 145, 141, 135, 147, 133, 122, 135, 111, 76, 76, 75, 89, 92, 28.13027 + 100, 139, 142, 139, 135, 134, 138, 138, 135, 135, 135, 135, 135, 135, 134, 133, 28.13028 + 131, 132, 131, 131, 130, 131, 134, 139, 144, 138, 143, 145, 145, 149, 153, 153, 28.13029 + 143, 135, 122, 112, 98, 92, 106, 107, 80, 57, 81, 123, 169, 187, 164, 141, 28.13030 + 144, 148, 150, 154, 160, 165, 167, 169, 169, 157, 158, 163, 167, 166, 160, 156, 28.13031 + 156, 162, 166, 170, 173, 175, 174, 171, 169, 173, 174, 174, 174, 174, 173, 172, 28.13032 + 171, 175, 176, 174, 176, 180, 181, 181, 179, 181, 182, 184, 186, 186, 183, 176, 28.13033 + 172, 168, 160, 159, 156, 134, 101, 83, 82, 77, 79, 54, 70, 69, 90, 79, 28.13034 + 116, 123, 148, 165, 173, 184, 188, 185, 187, 184, 185, 183, 179, 173, 173, 175, 28.13035 + 181, 171, 173, 173, 169, 167, 167, 164, 159, 151, 156, 156, 140, 118, 102, 100, 28.13036 + 105, 92, 64, 50, 70, 98, 118, 139, 161, 149, 148, 145, 151, 159, 134, 59, 28.13037 + 34, 26, 36, 30, 41, 77, 128, 174, 171, 154, 154, 157, 159, 160, 157, 151, 28.13038 + 147, 146, 144, 140, 139, 140, 132, 112, 97, 71, 92, 116, 159, 183, 162, 162, 28.13039 + 166, 144, 148, 148, 145, 145, 145, 142, 136, 134, 126, 118, 130, 116, 94, 98, 28.13040 + 91, 103, 100, 94, 140, 143, 140, 136, 135, 137, 136, 132, 134, 134, 134, 135, 28.13041 + 135, 135, 134, 132, 131, 131, 131, 130, 132, 135, 142, 147, 142, 146, 147, 145, 28.13042 + 149, 153, 152, 145, 141, 145, 132, 105, 95, 97, 87, 73, 59, 120, 163, 164, 28.13043 + 158, 154, 150, 148, 160, 165, 171, 174, 173, 171, 171, 171, 167, 165, 166, 165, 28.13044 + 167, 166, 167, 169, 167, 171, 174, 177, 178, 177, 174, 172, 176, 177, 177, 176, 28.13045 + 176, 177, 178, 178, 175, 176, 178, 178, 178, 178, 178, 180, 178, 180, 185, 188, 28.13046 + 190, 189, 185, 183, 181, 167, 164, 165, 156, 129, 108, 99, 82, 100, 87, 60, 28.13047 + 76, 79, 118, 102, 142, 156, 160, 159, 167, 174, 178, 188, 189, 190, 188, 184, 28.13048 + 179, 177, 179, 183, 176, 178, 179, 178, 175, 172, 168, 165, 171, 164, 159, 159, 28.13049 + 162, 159, 149, 139, 141, 121, 107, 104, 97, 92, 108, 132, 145, 157, 156, 159, 28.13050 + 145, 133, 66, 43, 29, 38, 28, 58, 121, 160, 177, 172, 159, 150, 151, 158, 28.13051 + 160, 153, 147, 147, 148, 144, 144, 145, 139, 133, 125, 115, 112, 80, 78, 120, 28.13052 + 171, 153, 145, 153, 148, 150, 149, 145, 143, 143, 142, 138, 135, 139, 134, 133, 28.13053 + 104, 81, 88, 84, 94, 98, 94, 140, 141, 140, 136, 135, 137, 135, 131, 133, 28.13054 + 133, 134, 135, 133, 133, 132, 132, 130, 131, 131, 130, 132, 137, 142, 147, 146, 28.13055 + 149, 149, 146, 149, 153, 153, 148, 156, 155, 139, 127, 130, 115, 91, 77, 92, 28.13056 + 149, 172, 144, 135, 154, 166, 165, 159, 166, 172, 173, 169, 162, 159, 157, 167, 28.13057 + 166, 167, 165, 168, 172, 176, 178, 178, 179, 180, 181, 181, 183, 182, 182, 184, 28.13058 + 184, 183, 183, 183, 186, 187, 188, 180, 182, 184, 182, 180, 178, 179, 179, 178, 28.13059 + 179, 181, 182, 183, 184, 183, 183, 184, 175, 164, 159, 162, 165, 158, 148, 117, 28.13060 + 115, 52, 126, 65, 77, 121, 135, 135, 150, 157, 161, 170, 172, 171, 178, 196, 28.13061 + 194, 191, 189, 185, 182, 176, 174, 182, 183, 185, 187, 186, 182, 178, 176, 170, 28.13062 + 170, 169, 165, 160, 157, 158, 159, 159, 153, 148, 144, 136, 126, 114, 107, 121, 28.13063 + 126, 126, 140, 142, 143, 72, 28, 31, 36, 32, 85, 159, 177, 175, 174, 164, 28.13064 + 150, 146, 153, 157, 150, 145, 147, 145, 140, 147, 149, 137, 134, 138, 136, 105, 28.13065 + 103, 103, 91, 130, 143, 154, 151, 151, 153, 150, 143, 139, 140, 140, 138, 126, 28.13066 + 133, 130, 129, 102, 83, 90, 84, 89, 96, 96, 137, 140, 140, 137, 136, 137, 28.13067 + 135, 131, 134, 134, 135, 135, 133, 132, 131, 131, 130, 131, 132, 133, 134, 136, 28.13068 + 141, 144, 145, 148, 149, 149, 151, 158, 158, 155, 157, 157, 150, 142, 131, 104, 28.13069 + 87, 89, 117, 146, 160, 157, 160, 162, 154, 147, 159, 165, 169, 171, 166, 161, 28.13070 + 157, 156, 159, 164, 169, 171, 173, 178, 178, 178, 183, 182, 181, 181, 181, 183, 28.13071 + 183, 184, 182, 184, 184, 184, 185, 187, 188, 189, 188, 187, 188, 187, 185, 183, 28.13072 + 182, 181, 180, 181, 182, 180, 179, 176, 176, 177, 172, 182, 181, 169, 165, 172, 28.13073 + 172, 163, 170, 156, 179, 255, 90, 69, 131, 126, 148, 160, 163, 167, 176, 177, 28.13074 + 176, 185, 186, 187, 188, 191, 191, 190, 184, 181, 186, 186, 189, 194, 195, 192, 28.13075 + 190, 191, 175, 175, 172, 167, 163, 163, 167, 171, 164, 163, 159, 147, 144, 149, 28.13076 + 146, 138, 139, 130, 131, 137, 145, 151, 96, 54, 37, 45, 54, 116, 177, 176, 28.13077 + 172, 176, 169, 154, 146, 149, 154, 150, 145, 143, 143, 133, 144, 151, 137, 136, 28.13078 + 150, 149, 114, 108, 123, 104, 140, 139, 146, 148, 148, 151, 150, 143, 139, 139, 28.13079 + 139, 138, 128, 126, 118, 125, 108, 89, 90, 77, 71, 78, 77, 136, 139, 140, 28.13080 + 137, 136, 137, 136, 132, 135, 135, 135, 135, 132, 131, 130, 129, 129, 132, 134, 28.13081 + 135, 135, 136, 138, 142, 142, 146, 147, 148, 152, 156, 157, 155, 148, 155, 158, 28.13082 + 151, 133, 125, 138, 154, 169, 168, 161, 158, 168, 167, 161, 165, 162, 166, 165, 28.13083 + 164, 162, 161, 163, 165, 160, 168, 173, 174, 179, 184, 184, 181, 181, 181, 181, 28.13084 + 181, 180, 183, 183, 183, 182, 183, 184, 185, 186, 188, 189, 188, 191, 190, 190, 28.13085 + 190, 190, 189, 187, 184, 182, 185, 189, 188, 186, 181, 180, 180, 175, 188, 193, 28.13086 + 183, 175, 174, 167, 158, 159, 186, 150, 72, 167, 157, 169, 162, 159, 164, 158, 28.13087 + 158, 167, 172, 177, 191, 183, 189, 194, 196, 195, 193, 192, 193, 189, 187, 190, 28.13088 + 196, 197, 193, 190, 193, 201, 190, 177, 173, 175, 175, 168, 161, 153, 165, 172, 28.13089 + 166, 157, 157, 156, 154, 156, 138, 143, 121, 112, 97, 60, 27, 53, 76, 99, 28.13090 + 147, 176, 166, 170, 175, 170, 159, 150, 150, 155, 155, 146, 137, 148, 129, 140, 28.13091 + 152, 141, 144, 158, 151, 128, 91, 114, 120, 171, 144, 124, 128, 140, 145, 149, 28.13092 + 145, 141, 140, 139, 137, 146, 140, 128, 131, 102, 69, 63, 54, 60, 65, 73, 28.13093 + 135, 139, 140, 137, 136, 138, 136, 131, 136, 136, 136, 133, 132, 131, 129, 129, 28.13094 + 130, 133, 136, 138, 138, 137, 138, 141, 141, 145, 146, 147, 150, 153, 153, 149, 28.13095 + 169, 156, 143, 136, 132, 148, 169, 171, 158, 165, 161, 153, 160, 165, 165, 172, 28.13096 + 161, 158, 155, 152, 152, 154, 160, 162, 171, 176, 177, 174, 178, 187, 191, 188, 28.13097 + 183, 184, 187, 188, 187, 187, 185, 185, 188, 189, 190, 192, 194, 195, 195, 194, 28.13098 + 190, 188, 189, 190, 192, 192, 190, 185, 180, 187, 195, 198, 198, 194, 191, 192, 28.13099 + 195, 192, 183, 177, 179, 181, 180, 174, 180, 139, 166, 175, 155, 175, 157, 163, 28.13100 + 157, 164, 166, 172, 184, 189, 192, 205, 200, 206, 211, 205, 194, 185, 187, 192, 28.13101 + 189, 188, 189, 194, 194, 188, 185, 189, 182, 180, 178, 179, 183, 185, 184, 181, 28.13102 + 180, 174, 167, 163, 164, 164, 165, 168, 170, 150, 171, 155, 158, 130, 92, 49, 28.13103 + 71, 108, 139, 167, 169, 157, 169, 172, 171, 162, 155, 153, 158, 159, 147, 133, 28.13104 + 154, 128, 137, 155, 147, 154, 163, 149, 119, 99, 132, 128, 185, 171, 149, 133, 28.13105 + 133, 141, 149, 149, 145, 143, 140, 135, 118, 121, 126, 133, 100, 61, 69, 75, 28.13106 + 90, 89, 95, 138, 138, 138, 137, 136, 135, 134, 133, 133, 133, 134, 132, 129, 28.13107 + 128, 128, 128, 133, 136, 138, 140, 140, 140, 141, 144, 144, 151, 155, 151, 149, 28.13108 + 152, 152, 147, 145, 147, 123, 129, 144, 174, 164, 156, 161, 166, 156, 167, 150, 28.13109 + 137, 112, 126, 130, 138, 144, 145, 148, 159, 168, 173, 166, 171, 178, 181, 185, 28.13110 + 186, 188, 190, 182, 182, 184, 184, 185, 187, 189, 190, 185, 191, 194, 193, 193, 28.13111 + 195, 196, 193, 194, 193, 196, 192, 189, 188, 187, 188, 190, 197, 196, 195, 198, 28.13112 + 194, 190, 195, 200, 196, 190, 185, 182, 178, 175, 172, 171, 169, 167, 167, 170, 28.13113 + 170, 167, 164, 173, 176, 178, 172, 167, 169, 178, 188, 205, 211, 207, 191, 182, 28.13114 + 183, 185, 180, 174, 178, 184, 188, 184, 179, 182, 189, 187, 185, 182, 177, 177, 28.13115 + 176, 176, 177, 174, 184, 186, 177, 175, 183, 186, 184, 174, 169, 172, 172, 161, 28.13116 + 149, 127, 96, 116, 136, 158, 168, 172, 173, 170, 165, 179, 163, 153, 157, 165, 28.13117 + 161, 148, 137, 144, 150, 141, 130, 152, 185, 177, 142, 127, 70, 105, 147, 166, 28.13118 + 157, 168, 174, 146, 131, 144, 155, 144, 140, 139, 127, 126, 121, 125, 133, 84, 28.13119 + 89, 91, 85, 92, 102, 105, 137, 137, 137, 137, 137, 137, 136, 136, 130, 132, 28.13120 + 132, 131, 129, 128, 127, 130, 135, 139, 141, 142, 141, 141, 142, 143, 148, 153, 28.13121 + 154, 150, 149, 150, 149, 144, 157, 143, 133, 164, 162, 163, 148, 154, 138, 160, 28.13122 + 171, 129, 101, 72, 48, 67, 71, 95, 126, 147, 159, 166, 167, 164, 175, 178, 28.13123 + 183, 184, 185, 184, 184, 186, 185, 186, 186, 187, 188, 190, 191, 192, 191, 196, 28.13124 + 198, 196, 194, 196, 196, 193, 194, 194, 196, 196, 194, 191, 192, 191, 187, 193, 28.13125 + 193, 191, 197, 192, 188, 194, 192, 190, 188, 186, 183, 181, 175, 172, 171, 170, 28.13126 + 169, 171, 176, 177, 179, 178, 178, 179, 180, 179, 178, 175, 174, 174, 182, 195, 28.13127 + 200, 193, 187, 185, 181, 173, 178, 176, 180, 186, 188, 184, 181, 182, 185, 184, 28.13128 + 182, 181, 180, 180, 181, 181, 177, 186, 188, 180, 177, 183, 183, 178, 193, 185, 28.13129 + 183, 180, 172, 172, 165, 146, 146, 158, 169, 170, 170, 170, 170, 167, 177, 168, 28.13130 + 165, 169, 171, 164, 150, 139, 131, 142, 154, 155, 159, 162, 154, 142, 120, 74, 28.13131 + 113, 148, 165, 157, 165, 168, 187, 151, 137, 144, 147, 152, 146, 125, 122, 116, 28.13132 + 122, 134, 88, 87, 92, 91, 112, 116, 118, 136, 136, 137, 138, 137, 138, 138, 28.13133 + 138, 131, 132, 133, 133, 131, 131, 130, 134, 135, 140, 142, 142, 142, 142, 142, 28.13134 + 144, 147, 149, 150, 146, 146, 148, 149, 145, 155, 136, 146, 187, 172, 167, 158, 28.13135 + 160, 161, 167, 152, 62, 54, 54, 76, 120, 116, 135, 157, 165, 168, 168, 169, 28.13136 + 167, 174, 177, 180, 181, 181, 179, 180, 180, 188, 189, 190, 190, 192, 193, 195, 28.13137 + 196, 194, 199, 201, 198, 197, 199, 200, 197, 193, 195, 199, 200, 199, 195, 194, 28.13138 + 193, 186, 193, 191, 189, 194, 191, 187, 193, 185, 185, 185, 186, 186, 183, 176, 28.13139 + 172, 172, 170, 170, 173, 179, 184, 189, 191, 190, 184, 181, 180, 184, 183, 177, 28.13140 + 170, 170, 183, 191, 189, 187, 185, 181, 171, 179, 172, 172, 181, 190, 190, 185, 28.13141 + 180, 182, 182, 182, 183, 183, 183, 184, 184, 180, 188, 190, 184, 181, 184, 182, 28.13142 + 176, 187, 180, 178, 173, 167, 174, 179, 168, 166, 171, 176, 174, 172, 170, 168, 28.13143 + 166, 171, 168, 171, 176, 175, 164, 150, 141, 130, 137, 156, 169, 165, 149, 142, 28.13144 + 148, 111, 92, 139, 157, 160, 150, 164, 172, 186, 150, 129, 130, 139, 146, 139, 28.13145 + 119, 122, 118, 125, 131, 87, 80, 89, 93, 98, 101, 103, 138, 138, 138, 138, 28.13146 + 137, 138, 137, 137, 133, 134, 135, 135, 134, 134, 135, 139, 135, 140, 142, 143, 28.13147 + 144, 143, 145, 146, 142, 142, 143, 143, 146, 150, 152, 148, 149, 140, 156, 187, 28.13148 + 164, 177, 173, 156, 161, 160, 107, 49, 60, 59, 81, 106, 141, 153, 164, 164, 28.13149 + 163, 168, 177, 182, 170, 173, 177, 179, 181, 181, 183, 187, 191, 191, 192, 192, 28.13150 + 194, 195, 197, 198, 195, 200, 202, 199, 198, 201, 203, 201, 194, 196, 199, 200, 28.13151 + 199, 196, 192, 191, 191, 198, 195, 191, 195, 190, 187, 192, 186, 184, 186, 187, 28.13152 + 187, 185, 178, 174, 171, 170, 170, 173, 178, 185, 192, 195, 198, 189, 180, 177, 28.13153 + 180, 183, 182, 179, 180, 184, 186, 181, 179, 180, 181, 177, 177, 168, 166, 175, 28.13154 + 185, 187, 186, 183, 180, 181, 182, 182, 183, 183, 183, 183, 183, 189, 192, 189, 28.13155 + 188, 189, 185, 179, 188, 185, 188, 185, 177, 181, 186, 177, 166, 170, 177, 180, 28.13156 + 181, 178, 174, 170, 170, 166, 170, 177, 178, 168, 155, 145, 145, 137, 144, 161, 28.13157 + 167, 159, 153, 154, 119, 106, 143, 147, 156, 154, 161, 162, 143, 130, 125, 127, 28.13158 + 130, 131, 125, 117, 122, 126, 128, 110, 74, 71, 82, 81, 88, 95, 100, 139, 28.13159 + 139, 138, 137, 136, 135, 134, 133, 132, 133, 134, 134, 132, 134, 136, 139, 134, 28.13160 + 138, 141, 143, 144, 145, 148, 149, 142, 139, 140, 142, 147, 149, 151, 149, 151, 28.13161 + 142, 159, 188, 167, 179, 173, 152, 150, 140, 54, 55, 66, 58, 76, 85, 133, 28.13162 + 148, 162, 166, 167, 168, 172, 172, 175, 178, 182, 186, 188, 189, 192, 196, 192, 28.13163 + 193, 193, 194, 195, 197, 198, 199, 200, 204, 205, 200, 198, 201, 202, 199, 198, 28.13164 + 200, 203, 202, 201, 196, 193, 190, 194, 200, 196, 191, 194, 188, 186, 190, 188, 28.13165 + 185, 184, 182, 182, 180, 177, 174, 173, 172, 171, 172, 174, 180, 186, 191, 195, 28.13166 + 189, 183, 177, 177, 179, 180, 181, 185, 186, 183, 177, 176, 178, 181, 180, 177, 28.13167 + 171, 169, 173, 177, 179, 180, 184, 180, 180, 180, 180, 180, 180, 181, 181, 181, 28.13168 + 186, 189, 191, 192, 192, 188, 183, 188, 187, 192, 189, 179, 182, 186, 177, 167, 28.13169 + 166, 171, 177, 183, 183, 180, 179, 174, 165, 164, 171, 177, 173, 162, 152, 148, 28.13170 + 144, 146, 151, 162, 166, 161, 152, 130, 112, 134, 135, 160, 162, 150, 131, 116, 28.13171 + 123, 127, 129, 132, 129, 124, 124, 119, 131, 126, 87, 64, 71, 84, 76, 88, 28.13172 + 102, 113, 140, 139, 138, 137, 135, 134, 131, 131, 130, 131, 131, 130, 129, 130, 28.13173 + 133, 137, 134, 139, 141, 143, 144, 144, 147, 148, 146, 140, 140, 145, 149, 146, 28.13174 + 145, 142, 136, 126, 143, 186, 172, 173, 164, 161, 159, 119, 29, 54, 58, 69, 28.13175 + 107, 132, 151, 161, 169, 171, 171, 170, 170, 167, 180, 183, 187, 187, 188, 188, 28.13176 + 190, 194, 193, 194, 194, 195, 196, 198, 199, 200, 205, 208, 207, 201, 197, 198, 28.13177 + 199, 197, 203, 204, 206, 205, 202, 199, 195, 194, 193, 197, 194, 189, 192, 188, 28.13178 + 184, 188, 189, 185, 182, 181, 180, 178, 175, 173, 174, 173, 172, 171, 170, 172, 28.13179 + 179, 182, 188, 190, 192, 188, 184, 180, 180, 180, 179, 178, 178, 178, 179, 180, 28.13180 + 178, 177, 180, 175, 174, 173, 172, 170, 173, 179, 179, 178, 177, 176, 177, 178, 28.13181 + 180, 181, 178, 180, 184, 188, 191, 191, 188, 184, 183, 179, 181, 177, 169, 175, 28.13182 + 182, 174, 169, 161, 157, 162, 169, 172, 174, 177, 171, 160, 155, 160, 168, 167, 28.13183 + 160, 152, 138, 150, 157, 156, 156, 157, 153, 144, 115, 122, 155, 145, 153, 139, 28.13184 + 129, 125, 126, 130, 123, 123, 134, 134, 126, 127, 126, 134, 124, 80, 76, 86, 28.13185 + 102, 91, 89, 105, 116, 137, 136, 135, 134, 133, 132, 131, 131, 133, 134, 132, 28.13186 + 130, 129, 131, 134, 137, 137, 139, 143, 143, 143, 142, 143, 144, 149, 142, 138, 28.13187 + 145, 150, 147, 144, 137, 124, 130, 141, 169, 160, 166, 159, 167, 153, 89, 60, 28.13188 + 77, 89, 103, 120, 139, 152, 156, 159, 161, 169, 178, 184, 183, 182, 183, 186, 28.13189 + 185, 185, 185, 189, 190, 194, 195, 196, 196, 197, 199, 201, 202, 204, 208, 207, 28.13190 + 201, 199, 201, 202, 201, 202, 204, 205, 204, 201, 199, 199, 197, 190, 196, 193, 28.13191 + 189, 194, 191, 189, 193, 189, 186, 186, 186, 185, 182, 178, 175, 175, 176, 175, 28.13192 + 173, 170, 170, 174, 177, 179, 181, 185, 184, 184, 183, 186, 187, 179, 177, 178, 28.13193 + 178, 180, 179, 179, 179, 181, 175, 176, 177, 177, 173, 173, 177, 177, 175, 174, 28.13194 + 173, 175, 178, 183, 185, 180, 179, 181, 187, 191, 191, 188, 185, 188, 184, 186, 28.13195 + 184, 178, 184, 189, 179, 169, 157, 152, 156, 163, 164, 165, 167, 170, 161, 157, 28.13196 + 159, 162, 160, 156, 153, 143, 151, 158, 158, 153, 149, 145, 139, 107, 127, 165, 28.13197 + 147, 141, 121, 123, 140, 136, 144, 130, 121, 132, 132, 124, 130, 134, 128, 117, 28.13198 + 87, 101, 100, 113, 107, 105, 117, 125, 133, 133, 133, 133, 133, 132, 132, 132, 28.13199 + 137, 138, 135, 133, 132, 133, 137, 140, 140, 141, 144, 143, 141, 139, 140, 140, 28.13200 + 145, 139, 137, 145, 151, 149, 146, 137, 134, 162, 160, 151, 138, 160, 159, 161, 28.13201 + 152, 61, 87, 91, 127, 162, 161, 174, 168, 170, 173, 175, 181, 185, 182, 176, 28.13202 + 184, 186, 188, 188, 188, 189, 193, 196, 197, 197, 197, 198, 199, 201, 202, 203, 28.13203 + 199, 203, 204, 201, 201, 206, 209, 209, 200, 201, 201, 200, 199, 198, 199, 200, 28.13204 + 191, 196, 193, 192, 197, 197, 196, 202, 190, 189, 192, 194, 194, 190, 184, 180, 28.13205 + 177, 178, 179, 174, 171, 170, 172, 175, 170, 167, 165, 167, 174, 181, 189, 193, 28.13206 + 191, 183, 178, 176, 177, 177, 183, 183, 177, 172, 174, 181, 184, 181, 178, 178, 28.13207 + 177, 174, 172, 171, 174, 180, 186, 190, 184, 182, 183, 188, 192, 192, 189, 187, 28.13208 + 182, 180, 186, 188, 182, 185, 183, 168, 170, 160, 158, 167, 174, 170, 165, 163, 28.13209 + 175, 170, 169, 169, 166, 161, 160, 160, 157, 150, 148, 151, 156, 152, 144, 138, 28.13210 + 127, 122, 140, 125, 142, 135, 132, 141, 136, 153, 148, 131, 133, 127, 124, 139, 28.13211 + 135, 115, 103, 87, 111, 96, 104, 106, 112, 119, 121, 131, 133, 134, 132, 132, 28.13212 + 134, 135, 131, 136, 132, 130, 132, 137, 141, 140, 138, 142, 137, 136, 137, 143, 28.13213 + 144, 142, 137, 149, 147, 157, 149, 143, 145, 140, 140, 153, 168, 157, 146, 141, 28.13214 + 136, 151, 154, 145, 81, 100, 134, 142, 155, 156, 168, 167, 171, 176, 182, 186, 28.13215 + 186, 185, 183, 186, 188, 190, 191, 195, 196, 197, 198, 203, 207, 208, 207, 205, 28.13216 + 204, 205, 206, 210, 207, 205, 204, 205, 205, 204, 202, 210, 207, 203, 197, 194, 28.13217 + 192, 192, 191, 194, 195, 196, 195, 193, 192, 197, 200, 192, 195, 194, 194, 171, 28.13218 + 190, 180, 177, 175, 178, 181, 178, 176, 179, 186, 188, 183, 183, 174, 168, 172, 28.13219 + 170, 174, 186, 185, 188, 189, 183, 176, 173, 179, 183, 178, 185, 188, 180, 175, 28.13220 + 178, 181, 180, 173, 175, 175, 174, 174, 176, 177, 181, 182, 183, 186, 189, 192, 28.13221 + 192, 189, 186, 190, 187, 184, 181, 177, 175, 176, 178, 166, 158, 161, 175, 183, 28.13222 + 177, 174, 178, 163, 167, 173, 174, 171, 168, 167, 165, 159, 146, 152, 159, 154, 28.13223 + 147, 144, 136, 130, 116, 139, 137, 136, 149, 142, 147, 152, 154, 148, 133, 127, 28.13224 + 131, 134, 133, 129, 112, 102, 90, 97, 104, 99, 114, 107, 119, 125, 129, 133, 28.13225 + 134, 132, 132, 134, 135, 131, 136, 136, 136, 135, 136, 138, 142, 144, 143, 141, 28.13226 + 140, 138, 140, 140, 142, 142, 154, 147, 156, 146, 142, 147, 141, 139, 165, 175, 28.13227 + 159, 148, 142, 135, 145, 146, 145, 103, 123, 140, 142, 162, 167, 168, 172, 174, 28.13228 + 178, 182, 185, 184, 183, 182, 188, 188, 190, 192, 195, 196, 197, 198, 199, 202, 28.13229 + 204, 204, 203, 203, 205, 207, 207, 205, 203, 203, 204, 204, 203, 202, 209, 207, 28.13230 + 203, 198, 195, 193, 193, 193, 196, 193, 192, 194, 196, 197, 198, 196, 187, 189, 28.13231 + 185, 189, 175, 190, 174, 173, 180, 170, 172, 178, 182, 188, 187, 174, 171, 179, 28.13232 + 180, 180, 184, 176, 164, 167, 176, 180, 183, 182, 179, 176, 178, 180, 180, 185, 28.13233 + 189, 184, 181, 181, 183, 182, 178, 178, 176, 175, 175, 175, 175, 177, 178, 182, 28.13234 + 188, 194, 197, 198, 197, 197, 183, 184, 185, 184, 181, 176, 173, 170, 168, 159, 28.13235 + 162, 176, 183, 174, 164, 161, 173, 175, 178, 174, 168, 162, 159, 156, 156, 150, 28.13236 + 157, 163, 154, 145, 145, 140, 121, 116, 142, 145, 144, 155, 147, 153, 146, 149, 28.13237 + 145, 133, 130, 136, 138, 135, 131, 103, 95, 90, 96, 105, 100, 109, 110, 119, 28.13238 + 124, 129, 132, 133, 130, 131, 134, 133, 130, 137, 139, 142, 139, 136, 137, 143, 28.13239 + 148, 139, 140, 141, 139, 138, 140, 147, 152, 150, 142, 149, 141, 139, 146, 139, 28.13240 + 137, 175, 178, 159, 148, 145, 140, 145, 140, 135, 121, 139, 142, 140, 164, 173, 28.13241 + 167, 177, 180, 181, 183, 184, 183, 182, 181, 188, 189, 191, 192, 195, 196, 198, 28.13242 + 199, 197, 201, 203, 203, 204, 205, 208, 211, 206, 204, 203, 203, 205, 205, 204, 28.13243 + 203, 206, 205, 200, 198, 196, 194, 195, 194, 197, 192, 190, 194, 197, 200, 198, 28.13244 + 192, 184, 191, 182, 187, 183, 185, 169, 170, 172, 164, 176, 179, 166, 174, 192, 28.13245 + 190, 181, 186, 183, 181, 187, 181, 173, 175, 169, 172, 177, 181, 183, 182, 180, 28.13246 + 176, 181, 185, 189, 188, 185, 185, 184, 183, 184, 181, 177, 176, 174, 174, 174, 28.13247 + 173, 174, 180, 187, 190, 188, 185, 184, 184, 184, 184, 183, 181, 177, 174, 171, 28.13248 + 166, 167, 159, 163, 178, 188, 183, 174, 170, 169, 170, 172, 169, 165, 162, 160, 28.13249 + 160, 157, 155, 164, 168, 153, 144, 142, 137, 112, 121, 147, 152, 151, 157, 152, 28.13250 + 157, 146, 147, 144, 135, 132, 138, 138, 136, 132, 91, 90, 96, 95, 105, 105, 28.13251 + 108, 121, 126, 125, 128, 132, 132, 130, 131, 134, 134, 131, 137, 139, 142, 142, 28.13252 + 140, 140, 142, 143, 133, 133, 136, 140, 143, 149, 154, 157, 146, 141, 148, 141, 28.13253 + 138, 145, 142, 142, 172, 175, 154, 147, 151, 149, 152, 144, 133, 131, 142, 146, 28.13254 + 147, 165, 175, 167, 177, 179, 179, 180, 181, 181, 182, 182, 189, 189, 191, 192, 28.13255 + 195, 197, 198, 200, 204, 206, 208, 208, 208, 210, 212, 215, 205, 204, 204, 205, 28.13256 + 207, 207, 206, 204, 202, 199, 198, 196, 195, 194, 195, 193, 196, 194, 194, 195, 28.13257 + 197, 197, 194, 190, 187, 200, 186, 187, 188, 177, 169, 168, 175, 167, 184, 188, 28.13258 + 166, 165, 178, 172, 185, 190, 184, 179, 187, 189, 185, 187, 172, 172, 175, 180, 28.13259 + 184, 185, 182, 176, 179, 183, 188, 188, 187, 186, 185, 183, 187, 183, 178, 176, 28.13260 + 175, 176, 174, 173, 185, 192, 199, 200, 195, 189, 188, 189, 193, 189, 181, 172, 28.13261 + 168, 169, 169, 165, 152, 150, 156, 169, 179, 177, 174, 174, 163, 163, 165, 163, 28.13262 + 162, 161, 160, 160, 164, 160, 166, 167, 153, 144, 138, 128, 109, 130, 149, 153, 28.13263 + 153, 152, 149, 157, 149, 150, 145, 134, 133, 138, 136, 133, 128, 83, 93, 104, 28.13264 + 95, 103, 113, 113, 104, 108, 106, 128, 129, 132, 129, 129, 133, 135, 132, 136, 28.13265 + 136, 139, 142, 145, 144, 140, 135, 133, 131, 133, 142, 150, 155, 154, 150, 148, 28.13266 + 146, 155, 143, 136, 143, 140, 144, 168, 171, 155, 153, 160, 159, 161, 153, 149, 28.13267 + 143, 141, 155, 161, 165, 170, 168, 174, 176, 176, 177, 179, 181, 183, 183, 189, 28.13268 + 191, 193, 195, 197, 198, 199, 200, 209, 212, 214, 214, 213, 212, 213, 214, 204, 28.13269 + 203, 203, 204, 206, 206, 204, 201, 197, 196, 196, 196, 196, 196, 197, 196, 197, 28.13270 + 199, 202, 199, 196, 192, 191, 191, 187, 201, 190, 188, 188, 174, 178, 163, 124, 28.13271 + 115, 134, 165, 180, 187, 183, 164, 172, 183, 186, 185, 193, 192, 181, 178, 179, 28.13272 + 176, 173, 175, 180, 182, 181, 176, 177, 179, 184, 187, 186, 185, 183, 182, 186, 28.13273 + 183, 179, 178, 176, 177, 176, 177, 180, 187, 196, 198, 195, 192, 192, 194, 195, 28.13274 + 192, 182, 171, 167, 169, 167, 159, 155, 160, 174, 185, 188, 182, 177, 177, 169, 28.13275 + 167, 167, 164, 161, 159, 156, 156, 164, 157, 159, 160, 153, 148, 139, 123, 109, 28.13276 + 139, 149, 151, 156, 151, 152, 159, 150, 150, 144, 133, 132, 137, 135, 129, 116, 28.13277 + 81, 99, 107, 94, 101, 115, 120, 118, 123, 123, 129, 129, 131, 128, 129, 133, 28.13278 + 135, 133, 137, 135, 137, 140, 145, 144, 138, 131, 139, 136, 136, 143, 150, 153, 28.13279 + 148, 141, 148, 144, 152, 140, 131, 135, 130, 130, 165, 174, 164, 164, 166, 160, 28.13280 + 165, 158, 160, 152, 138, 158, 169, 158, 163, 165, 172, 174, 176, 177, 180, 182, 28.13281 + 184, 187, 190, 191, 194, 195, 197, 198, 199, 201, 208, 212, 215, 215, 213, 210, 28.13282 + 209, 208, 200, 200, 200, 201, 203, 202, 200, 196, 195, 195, 196, 197, 198, 198, 28.13283 + 199, 199, 199, 201, 203, 200, 194, 190, 191, 194, 184, 194, 187, 186, 186, 175, 28.13284 + 188, 143, 57, 60, 75, 105, 137, 154, 167, 178, 174, 188, 187, 180, 185, 187, 28.13285 + 183, 184, 183, 178, 173, 172, 175, 177, 177, 174, 176, 175, 178, 185, 186, 183, 28.13286 + 182, 184, 183, 183, 183, 180, 176, 176, 178, 180, 178, 182, 187, 187, 184, 181, 28.13287 + 180, 181, 188, 190, 187, 179, 175, 175, 165, 151, 153, 164, 182, 196, 202, 196, 28.13288 + 188, 184, 167, 166, 166, 166, 166, 165, 162, 160, 161, 153, 153, 153, 150, 151, 28.13289 + 144, 124, 108, 146, 148, 150, 160, 153, 156, 162, 146, 148, 143, 133, 131, 133, 28.13290 + 127, 117, 99, 81, 100, 102, 92, 102, 113, 122, 116, 120, 120, 129, 129, 131, 28.13291 + 128, 129, 133, 136, 134, 138, 138, 139, 139, 141, 140, 138, 135, 141, 140, 140, 28.13292 + 144, 146, 147, 144, 142, 146, 137, 142, 133, 131, 135, 126, 119, 158, 173, 169, 28.13293 + 167, 167, 157, 162, 158, 158, 159, 140, 157, 168, 159, 167, 168, 173, 176, 179, 28.13294 + 181, 184, 185, 187, 187, 191, 191, 194, 195, 197, 199, 200, 201, 204, 210, 214, 28.13295 + 216, 214, 210, 207, 205, 202, 201, 201, 203, 203, 202, 199, 195, 197, 197, 198, 28.13296 + 201, 203, 203, 204, 204, 202, 201, 200, 198, 197, 195, 196, 197, 190, 190, 187, 28.13297 + 188, 189, 181, 194, 108, 53, 69, 64, 64, 77, 77, 95, 140, 174, 188, 185, 28.13298 + 172, 174, 181, 186, 193, 183, 180, 177, 175, 176, 177, 178, 176, 178, 174, 175, 28.13299 + 183, 185, 182, 182, 186, 183, 185, 187, 183, 175, 174, 177, 183, 195, 195, 194, 28.13300 + 192, 189, 186, 183, 182, 184, 189, 187, 180, 179, 180, 170, 153, 148, 150, 158, 28.13301 + 170, 182, 186, 183, 177, 162, 161, 163, 165, 168, 167, 163, 161, 160, 155, 155, 28.13302 + 152, 147, 147, 143, 126, 108, 152, 147, 150, 163, 152, 153, 155, 143, 146, 145, 28.13303 + 137, 132, 125, 112, 94, 90, 87, 97, 94, 97, 112, 115, 124, 128, 134, 134, 28.13304 + 126, 128, 128, 125, 126, 131, 135, 134, 137, 139, 141, 138, 135, 134, 138, 141, 28.13305 + 140, 140, 141, 143, 141, 142, 143, 145, 148, 133, 135, 131, 140, 148, 133, 122, 28.13306 + 147, 168, 169, 168, 165, 154, 158, 157, 153, 165, 147, 158, 173, 168, 182, 181, 28.13307 + 175, 177, 181, 183, 186, 187, 186, 187, 190, 191, 194, 195, 198, 199, 200, 201, 28.13308 + 203, 209, 215, 218, 217, 212, 208, 206, 205, 205, 205, 206, 207, 205, 201, 197, 28.13309 + 197, 198, 199, 202, 204, 206, 207, 206, 203, 199, 195, 195, 199, 202, 201, 199, 28.13310 + 199, 191, 189, 191, 191, 187, 195, 80, 52, 70, 57, 56, 78, 65, 59, 96, 28.13311 + 147, 172, 182, 177, 180, 181, 179, 181, 184, 183, 182, 181, 180, 180, 180, 179, 28.13312 + 179, 173, 175, 182, 185, 182, 183, 186, 183, 187, 189, 185, 174, 171, 177, 185, 28.13313 + 187, 186, 184, 185, 186, 186, 185, 183, 187, 189, 184, 175, 176, 182, 177, 162, 28.13314 + 179, 168, 157, 158, 171, 183, 186, 181, 167, 165, 165, 165, 164, 159, 152, 147, 28.13315 + 165, 161, 162, 154, 140, 140, 138, 124, 109, 158, 149, 151, 166, 149, 146, 145, 28.13316 + 149, 156, 156, 147, 138, 124, 100, 78, 92, 96, 101, 90, 104, 121, 116, 123, 28.13317 + 121, 129, 133, 124, 124, 127, 129, 132, 132, 133, 132, 138, 137, 135, 133, 134, 28.13318 + 136, 139, 141, 139, 138, 140, 140, 141, 141, 142, 142, 138, 138, 136, 132, 129, 28.13319 + 127, 126, 117, 135, 170, 168, 157, 157, 152, 160, 162, 156, 156, 148, 149, 167, 28.13320 + 177, 180, 189, 178, 179, 182, 182, 181, 182, 184, 186, 191, 186, 187, 194, 199, 28.13321 + 200, 200, 204, 212, 211, 210, 209, 209, 208, 205, 203, 196, 196, 197, 199, 203, 28.13322 + 203, 201, 197, 192, 192, 195, 198, 200, 201, 201, 199, 209, 204, 198, 194, 193, 28.13323 + 195, 196, 196, 201, 183, 189, 184, 186, 181, 169, 51, 53, 75, 60, 57, 53, 28.13324 + 65, 52, 65, 119, 176, 185, 171, 171, 188, 166, 183, 180, 186, 184, 178, 178, 28.13325 + 185, 180, 168, 185, 183, 178, 174, 177, 183, 188, 189, 192, 189, 185, 181, 178, 28.13326 + 179, 183, 186, 186, 190, 194, 193, 188, 183, 181, 180, 187, 184, 181, 182, 183, 28.13327 + 179, 171, 164, 160, 171, 169, 146, 174, 171, 179, 181, 165, 161, 166, 167, 158, 28.13328 + 159, 163, 159, 168, 156, 155, 150, 135, 139, 140, 120, 121, 156, 154, 145, 158, 28.13329 + 155, 141, 153, 162, 159, 145, 126, 114, 109, 104, 99, 107, 105, 101, 101, 106, 28.13330 + 113, 122, 127, 131, 125, 121, 124, 125, 128, 129, 130, 131, 131, 132, 135, 137, 28.13331 + 137, 137, 138, 139, 142, 140, 135, 134, 135, 135, 135, 136, 137, 137, 136, 135, 28.13332 + 133, 129, 124, 121, 122, 113, 132, 165, 167, 159, 157, 155, 164, 167, 165, 164, 28.13333 + 155, 155, 169, 176, 178, 185, 181, 184, 187, 189, 187, 183, 184, 183, 192, 188, 28.13334 + 188, 192, 195, 195, 194, 196, 207, 205, 207, 205, 207, 204, 204, 200, 203, 203, 28.13335 + 206, 203, 201, 197, 199, 198, 197, 195, 195, 196, 197, 198, 199, 200, 202, 201, 28.13336 + 200, 200, 200, 198, 194, 190, 189, 180, 184, 183, 188, 178, 155, 52, 67, 65, 28.13337 + 50, 65, 66, 70, 48, 54, 95, 177, 187, 179, 178, 185, 166, 181, 181, 187, 28.13338 + 187, 183, 184, 189, 184, 172, 180, 177, 176, 174, 177, 181, 185, 184, 183, 181, 28.13339 + 179, 176, 174, 177, 186, 192, 195, 196, 196, 193, 188, 184, 184, 185, 191, 187, 28.13340 + 184, 184, 184, 181, 174, 167, 161, 168, 159, 145, 169, 177, 180, 181, 167, 161, 28.13341 + 163, 162, 153, 155, 161, 160, 168, 157, 155, 148, 134, 135, 136, 117, 119, 156, 28.13342 + 162, 156, 167, 156, 135, 142, 118, 121, 116, 107, 105, 108, 109, 107, 112, 109, 28.13343 + 105, 104, 108, 116, 127, 132, 134, 129, 126, 133, 131, 131, 131, 131, 132, 133, 28.13344 + 133, 133, 134, 136, 139, 140, 140, 139, 136, 133, 132, 133, 133, 133, 133, 132, 28.13345 + 131, 127, 126, 125, 122, 118, 116, 118, 110, 123, 152, 158, 157, 153, 149, 160, 28.13346 + 162, 166, 168, 161, 161, 173, 177, 176, 180, 182, 188, 193, 194, 192, 185, 182, 28.13347 + 179, 185, 181, 183, 191, 197, 199, 201, 204, 203, 202, 204, 204, 204, 201, 201, 28.13348 + 198, 193, 197, 202, 199, 196, 195, 202, 207, 200, 198, 196, 196, 196, 197, 199, 28.13349 + 200, 201, 200, 200, 200, 200, 198, 194, 190, 185, 184, 187, 188, 197, 178, 140, 28.13350 + 59, 75, 58, 52, 79, 70, 68, 54, 60, 80, 186, 184, 178, 177, 173, 167, 28.13351 + 180, 181, 186, 186, 184, 187, 193, 186, 175, 176, 174, 175, 175, 177, 179, 183, 28.13352 + 183, 179, 179, 178, 175, 173, 177, 188, 197, 201, 199, 195, 190, 185, 183, 185, 28.13353 + 187, 192, 188, 184, 183, 183, 181, 175, 171, 165, 167, 148, 145, 157, 178, 175, 28.13354 + 179, 169, 161, 161, 157, 148, 151, 160, 160, 166, 158, 154, 147, 134, 133, 131, 28.13355 + 118, 119, 146, 149, 140, 142, 128, 106, 107, 102, 108, 107, 102, 105, 110, 113, 28.13356 + 112, 111, 109, 105, 105, 110, 119, 129, 133, 132, 128, 126, 139, 137, 135, 134, 28.13357 + 134, 134, 135, 136, 135, 134, 135, 135, 136, 134, 133, 131, 130, 129, 128, 128, 28.13358 + 127, 126, 123, 121, 123, 122, 121, 119, 117, 116, 118, 113, 112, 138, 149, 157, 28.13359 + 152, 146, 157, 156, 157, 161, 159, 162, 174, 176, 174, 179, 183, 187, 192, 194, 28.13360 + 190, 187, 183, 180, 178, 178, 181, 188, 195, 197, 201, 206, 203, 204, 206, 204, 28.13361 + 202, 198, 197, 196, 190, 193, 196, 195, 195, 197, 205, 208, 197, 196, 196, 197, 28.13362 + 197, 198, 198, 198, 203, 199, 195, 192, 193, 194, 195, 195, 185, 189, 186, 187, 28.13363 + 198, 175, 121, 65, 73, 60, 65, 87, 60, 63, 66, 75, 89, 196, 174, 166, 28.13364 + 167, 161, 168, 181, 180, 182, 180, 179, 183, 188, 184, 177, 180, 176, 176, 175, 28.13365 + 177, 177, 182, 186, 184, 185, 184, 179, 176, 179, 191, 200, 196, 194, 190, 185, 28.13366 + 182, 181, 182, 184, 187, 184, 181, 180, 180, 179, 177, 174, 170, 170, 147, 149, 28.13367 + 145, 171, 169, 176, 169, 161, 161, 158, 148, 151, 159, 158, 160, 155, 150, 144, 28.13368 + 136, 131, 128, 124, 108, 124, 119, 106, 105, 95, 84, 87, 97, 103, 103, 100, 28.13369 + 101, 104, 106, 104, 107, 108, 108, 110, 114, 119, 125, 126, 126, 125, 124, 145, 28.13370 + 142, 139, 138, 136, 135, 136, 137, 138, 136, 133, 131, 130, 129, 129, 127, 117, 28.13371 + 117, 118, 120, 118, 118, 117, 113, 124, 123, 122, 121, 118, 116, 118, 114, 99, 28.13372 + 119, 137, 156, 154, 148, 161, 154, 150, 158, 160, 163, 174, 176, 173, 179, 183, 28.13373 + 186, 191, 192, 190, 187, 187, 187, 185, 182, 185, 188, 190, 188, 190, 194, 203, 28.13374 + 204, 206, 200, 196, 190, 191, 190, 202, 198, 199, 196, 199, 198, 201, 197, 190, 28.13375 + 192, 195, 198, 200, 199, 197, 195, 198, 195, 191, 189, 190, 192, 193, 193, 185, 28.13376 + 189, 183, 181, 188, 170, 103, 61, 67, 66, 76, 91, 64, 69, 69, 69, 107, 28.13377 + 196, 165, 162, 163, 162, 173, 182, 183, 181, 176, 174, 178, 184, 184, 181, 185, 28.13378 + 177, 175, 173, 172, 172, 180, 188, 187, 187, 186, 183, 180, 184, 195, 203, 189, 28.13379 + 188, 186, 185, 184, 183, 182, 181, 181, 180, 179, 179, 180, 180, 180, 179, 170, 28.13380 + 169, 152, 155, 139, 162, 168, 178, 166, 161, 163, 163, 153, 154, 160, 156, 154, 28.13381 + 153, 144, 140, 138, 133, 129, 133, 92, 99, 97, 92, 93, 93, 93, 98, 94, 28.13382 + 102, 104, 101, 102, 105, 109, 108, 104, 106, 111, 117, 122, 124, 126, 124, 123, 28.13383 + 122, 123, 140, 138, 137, 136, 135, 133, 131, 131, 129, 125, 122, 120, 118, 117, 28.13384 + 118, 115, 108, 107, 113, 115, 119, 120, 120, 119, 118, 118, 116, 113, 109, 108, 28.13385 + 107, 105, 91, 101, 120, 148, 149, 146, 160, 151, 153, 160, 163, 167, 177, 175, 28.13386 + 171, 176, 184, 188, 189, 189, 188, 189, 192, 194, 189, 187, 189, 194, 196, 193, 28.13387 + 199, 205, 205, 205, 203, 196, 189, 184, 186, 187, 196, 195, 196, 198, 202, 202, 28.13388 + 200, 195, 189, 192, 197, 201, 202, 201, 197, 195, 190, 191, 193, 195, 197, 195, 28.13389 + 190, 187, 189, 190, 184, 180, 180, 173, 103, 59, 68, 69, 72, 90, 78, 83, 28.13390 + 64, 53, 124, 182, 163, 169, 169, 175, 178, 183, 188, 184, 179, 176, 179, 183, 28.13391 + 183, 181, 183, 175, 171, 170, 169, 167, 178, 190, 186, 185, 184, 183, 185, 189, 28.13392 + 197, 202, 187, 187, 186, 187, 188, 187, 183, 181, 179, 180, 181, 182, 182, 182, 28.13393 + 182, 181, 167, 160, 155, 156, 141, 156, 172, 179, 163, 160, 165, 166, 157, 157, 28.13394 + 161, 156, 150, 151, 140, 135, 139, 133, 131, 144, 87, 92, 98, 99, 100, 101, 28.13395 + 100, 100, 99, 107, 109, 105, 104, 107, 111, 111, 109, 112, 118, 125, 132, 133, 28.13396 + 131, 128, 125, 125, 127, 127, 127, 128, 128, 126, 124, 121, 119, 113, 111, 110, 28.13397 + 110, 108, 107, 107, 104, 102, 102, 108, 112, 116, 116, 116, 115, 105, 105, 105, 28.13398 + 103, 100, 98, 100, 101, 102, 101, 114, 143, 144, 142, 157, 145, 153, 163, 165, 28.13399 + 168, 177, 173, 169, 176, 184, 186, 188, 188, 188, 188, 190, 192, 186, 187, 192, 28.13400 + 198, 202, 203, 210, 218, 206, 206, 204, 194, 188, 184, 189, 191, 192, 195, 204, 28.13401 + 207, 211, 207, 206, 203, 195, 196, 200, 202, 203, 201, 199, 197, 190, 191, 194, 28.13402 + 197, 199, 197, 192, 188, 194, 191, 189, 185, 178, 185, 110, 61, 67, 70, 65, 28.13403 + 88, 85, 80, 58, 69, 149, 173, 170, 180, 172, 185, 182, 188, 191, 185, 182, 28.13404 + 182, 184, 183, 179, 177, 179, 171, 170, 172, 172, 169, 180, 193, 190, 187, 184, 28.13405 + 185, 189, 193, 197, 197, 190, 188, 187, 187, 188, 187, 183, 180, 178, 180, 182, 28.13406 + 183, 182, 180, 178, 177, 169, 153, 158, 152, 148, 152, 173, 170, 162, 158, 164, 28.13407 + 166, 158, 158, 162, 158, 151, 152, 138, 133, 139, 132, 132, 153, 92, 92, 100, 28.13408 + 106, 102, 102, 101, 95, 95, 103, 105, 100, 97, 102, 107, 107, 121, 123, 127, 28.13409 + 131, 134, 134, 133, 130, 128, 130, 131, 113, 113, 115, 114, 113, 111, 107, 104, 28.13410 + 102, 102, 105, 106, 107, 106, 103, 100, 92, 91, 95, 98, 100, 99, 97, 95, 28.13411 + 93, 95, 95, 97, 98, 100, 102, 105, 124, 116, 121, 148, 146, 145, 161, 146, 28.13412 + 150, 160, 163, 166, 175, 174, 168, 176, 180, 183, 186, 186, 185, 185, 185, 186, 28.13413 + 187, 188, 191, 196, 198, 197, 203, 210, 210, 209, 206, 197, 190, 187, 194, 199, 28.13414 + 205, 213, 224, 225, 221, 212, 209, 208, 201, 202, 202, 203, 202, 201, 200, 199, 28.13415 + 197, 195, 193, 193, 195, 196, 197, 196, 189, 185, 187, 185, 173, 189, 113, 57, 28.13416 + 65, 68, 61, 85, 80, 67, 58, 101, 173, 173, 178, 185, 167, 186, 183, 196, 28.13417 + 189, 185, 183, 185, 186, 182, 175, 171, 176, 169, 172, 177, 177, 174, 184, 198, 28.13418 + 199, 193, 188, 189, 193, 195, 194, 191, 193, 189, 185, 184, 185, 184, 181, 178, 28.13419 + 176, 178, 181, 181, 179, 175, 172, 171, 175, 150, 159, 149, 152, 149, 171, 159, 28.13420 + 161, 157, 162, 163, 156, 158, 163, 160, 151, 153, 136, 131, 139, 131, 132, 156, 28.13421 + 92, 90, 97, 104, 101, 103, 109, 104, 100, 107, 113, 112, 112, 120, 128, 130, 28.13422 + 133, 133, 133, 131, 130, 129, 128, 126, 130, 131, 132, 104, 105, 106, 105, 103, 28.13423 + 97, 92, 88, 93, 100, 94, 84, 81, 74, 70, 75, 63, 71, 77, 82, 89, 28.13424 + 83, 82, 96, 97, 95, 94, 100, 109, 115, 118, 121, 138, 135, 135, 140, 143, 28.13425 + 144, 145, 149, 155, 159, 164, 167, 169, 168, 167, 169, 176, 179, 181, 183, 185, 28.13426 + 186, 187, 187, 190, 188, 189, 194, 196, 194, 196, 200, 202, 202, 204, 204, 207, 28.13427 + 206, 208, 207, 208, 208, 212, 213, 216, 216, 216, 215, 208, 204, 201, 198, 199, 28.13428 + 201, 205, 207, 202, 197, 191, 187, 187, 189, 191, 194, 198, 191, 176, 185, 186, 28.13429 + 188, 159, 58, 78, 59, 68, 85, 76, 67, 92, 126, 168, 176, 183, 187, 188, 28.13430 + 189, 191, 193, 182, 187, 191, 190, 184, 178, 175, 174, 179, 176, 177, 176, 179, 28.13431 + 179, 180, 178, 197, 191, 186, 186, 192, 197, 199, 198, 189, 187, 184, 182, 182, 28.13432 + 182, 180, 178, 178, 172, 175, 179, 175, 177, 180, 172, 166, 168, 166, 157, 159, 28.13433 + 140, 166, 170, 161, 161, 160, 158, 160, 162, 158, 149, 149, 142, 141, 137, 140, 28.13434 + 116, 149, 161, 99, 95, 111, 107, 100, 107, 102, 101, 113, 117, 123, 129, 134, 28.13435 + 136, 137, 135, 140, 139, 135, 130, 125, 122, 124, 127, 129, 129, 129, 86, 85, 28.13436 + 82, 78, 77, 76, 75, 75, 66, 74, 74, 69, 66, 57, 52, 54, 60, 65, 28.13437 + 66, 79, 96, 96, 91, 97, 97, 105, 115, 121, 122, 121, 120, 124, 126, 127, 28.13438 + 129, 133, 137, 139, 144, 151, 150, 154, 160, 164, 167, 167, 168, 170, 172, 174, 28.13439 + 179, 182, 184, 186, 188, 188, 187, 185, 187, 192, 194, 192, 192, 196, 197, 199, 28.13440 + 201, 203, 203, 202, 200, 199, 203, 204, 206, 208, 209, 211, 211, 211, 213, 211, 28.13441 + 208, 205, 204, 205, 207, 208, 210, 209, 206, 201, 196, 192, 189, 190, 187, 187, 28.13442 + 183, 195, 192, 190, 167, 87, 68, 70, 81, 75, 57, 72, 126, 171, 177, 182, 28.13443 + 187, 189, 188, 189, 192, 195, 190, 191, 191, 189, 183, 177, 173, 172, 176, 176, 28.13444 + 177, 175, 175, 178, 187, 192, 192, 188, 187, 190, 196, 199, 199, 196, 189, 186, 28.13445 + 184, 183, 182, 182, 180, 178, 179, 172, 176, 179, 174, 175, 177, 169, 171, 169, 28.13446 + 163, 154, 159, 145, 175, 180, 166, 166, 164, 161, 162, 164, 159, 150, 148, 146, 28.13447 + 136, 135, 134, 123, 148, 156, 101, 97, 115, 117, 120, 137, 137, 137, 147, 145, 28.13448 + 146, 146, 144, 141, 138, 136, 136, 136, 133, 130, 127, 126, 129, 131, 135, 136, 28.13449 + 135, 77, 76, 72, 68, 67, 64, 62, 62, 56, 58, 63, 62, 61, 56, 56, 28.13450 + 58, 73, 80, 83, 89, 100, 96, 91, 99, 93, 104, 116, 115, 107, 98, 100, 28.13451 + 108, 123, 124, 127, 130, 132, 134, 142, 151, 146, 150, 157, 162, 165, 167, 169, 28.13452 + 172, 171, 173, 176, 178, 180, 182, 182, 183, 183, 181, 185, 190, 192, 189, 189, 28.13453 + 192, 192, 194, 198, 200, 199, 196, 192, 190, 199, 199, 200, 201, 203, 204, 206, 28.13454 + 207, 216, 214, 212, 210, 208, 207, 207, 207, 204, 207, 209, 206, 197, 188, 182, 28.13455 + 182, 190, 191, 193, 201, 192, 188, 180, 131, 105, 100, 91, 76, 81, 120, 164, 28.13456 + 180, 181, 189, 193, 198, 199, 199, 199, 199, 201, 198, 191, 186, 181, 177, 173, 28.13457 + 169, 185, 184, 183, 174, 170, 172, 184, 192, 186, 186, 188, 194, 199, 200, 197, 28.13458 + 193, 188, 186, 184, 183, 183, 182, 180, 178, 179, 172, 176, 178, 173, 174, 174, 28.13459 + 166, 173, 170, 165, 158, 166, 151, 177, 178, 164, 164, 161, 158, 159, 160, 154, 28.13460 + 145, 145, 150, 131, 134, 125, 132, 148, 153, 106, 97, 112, 119, 129, 147, 145, 28.13461 + 144, 138, 136, 135, 134, 132, 130, 127, 126, 130, 129, 129, 127, 126, 125, 128, 28.13462 + 132, 134, 135, 134, 56, 58, 59, 61, 61, 61, 58, 57, 72, 65, 68, 71, 28.13463 + 67, 71, 82, 87, 93, 105, 106, 99, 93, 81, 78, 90, 82, 89, 95, 91, 28.13464 + 83, 83, 91, 103, 127, 130, 132, 133, 131, 131, 139, 149, 144, 149, 155, 160, 28.13465 + 163, 165, 168, 170, 173, 173, 174, 176, 176, 177, 176, 176, 180, 179, 183, 188, 28.13466 + 190, 188, 187, 189, 190, 190, 192, 193, 193, 192, 190, 188, 197, 197, 196, 197, 28.13467 + 198, 201, 204, 205, 211, 210, 210, 209, 208, 206, 205, 204, 213, 220, 226, 225, 28.13468 + 218, 210, 207, 209, 207, 200, 197, 197, 187, 185, 186, 170, 169, 151, 134, 127, 28.13469 + 144, 180, 189, 172, 183, 191, 197, 205, 209, 209, 207, 206, 204, 198, 187, 182, 28.13470 + 179, 177, 173, 169, 189, 184, 179, 172, 170, 173, 183, 189, 187, 187, 190, 195, 28.13471 + 198, 198, 194, 190, 188, 186, 184, 184, 183, 182, 180, 177, 178, 172, 176, 179, 28.13472 + 173, 174, 174, 166, 172, 172, 171, 168, 175, 153, 169, 162, 161, 161, 159, 156, 28.13473 + 156, 157, 152, 142, 138, 153, 131, 135, 118, 138, 152, 155, 105, 90, 105, 116, 28.13474 + 127, 142, 134, 128, 130, 127, 126, 125, 125, 126, 126, 126, 121, 122, 122, 121, 28.13475 + 119, 120, 122, 125, 121, 125, 127, 83, 82, 85, 89, 95, 100, 106, 109, 90, 28.13476 + 76, 80, 86, 81, 85, 99, 101, 96, 102, 97, 89, 90, 86, 83, 92, 86, 28.13477 + 90, 93, 95, 99, 106, 120, 130, 132, 132, 134, 135, 132, 131, 138, 148, 147, 28.13478 + 151, 156, 160, 161, 163, 166, 169, 171, 171, 172, 173, 173, 174, 173, 174, 181, 28.13479 + 179, 182, 188, 189, 188, 188, 190, 188, 188, 188, 188, 189, 190, 192, 193, 197, 28.13480 + 197, 196, 197, 198, 201, 204, 204, 203, 203, 204, 205, 205, 204, 203, 203, 197, 28.13481 + 203, 209, 209, 204, 200, 201, 207, 214, 204, 201, 196, 188, 189, 189, 190, 196, 28.13482 + 193, 198, 199, 194, 199, 203, 197, 194, 196, 197, 199, 201, 206, 209, 211, 200, 28.13483 + 194, 187, 182, 179, 178, 175, 171, 177, 170, 166, 166, 174, 182, 190, 191, 192, 28.13484 + 192, 192, 194, 194, 193, 191, 189, 187, 186, 184, 184, 184, 183, 179, 177, 177, 28.13485 + 171, 176, 180, 174, 175, 175, 166, 169, 170, 170, 168, 174, 150, 164, 155, 163, 28.13486 + 163, 161, 158, 159, 160, 155, 145, 132, 154, 135, 136, 119, 141, 156, 159, 99, 28.13487 + 83, 98, 114, 129, 143, 131, 123, 128, 123, 120, 116, 114, 112, 114, 114, 115, 28.13488 + 115, 115, 114, 112, 111, 112, 114, 113, 119, 121, 98, 92, 86, 82, 84, 91, 28.13489 + 100, 104, 94, 77, 86, 98, 86, 86, 94, 86, 86, 82, 72, 76, 98, 110, 28.13490 + 106, 103, 104, 108, 113, 119, 125, 129, 135, 136, 130, 129, 131, 134, 133, 132, 28.13491 + 137, 144, 148, 151, 155, 158, 159, 161, 164, 166, 165, 166, 168, 171, 172, 174, 28.13492 + 176, 176, 182, 180, 181, 185, 188, 186, 188, 190, 188, 186, 185, 185, 186, 189, 28.13493 + 192, 194, 194, 194, 195, 196, 198, 200, 201, 202, 199, 199, 201, 202, 203, 204, 28.13494 + 204, 204, 208, 211, 212, 211, 208, 207, 209, 213, 208, 201, 206, 200, 198, 200, 28.13495 + 190, 197, 195, 195, 210, 218, 207, 202, 209, 214, 207, 201, 191, 185, 185, 193, 28.13496 + 202, 208, 194, 191, 188, 185, 181, 179, 177, 174, 176, 167, 163, 164, 175, 183, 28.13497 + 187, 184, 195, 194, 194, 193, 191, 190, 189, 188, 187, 186, 185, 185, 185, 183, 28.13498 + 179, 176, 176, 171, 176, 179, 173, 173, 172, 163, 164, 164, 163, 158, 165, 146, 28.13499 + 166, 164, 162, 162, 159, 156, 156, 157, 151, 143, 133, 149, 136, 134, 129, 141, 28.13500 + 159, 157, 103, 84, 100, 116, 128, 137, 124, 117, 113, 111, 107, 104, 102, 100, 28.13501 + 101, 101, 108, 109, 111, 110, 107, 108, 108, 110, 112, 115, 117, 121, 114, 105, 28.13502 + 98, 95, 95, 97, 98, 97, 75, 86, 101, 86, 85, 94, 83, 83, 87, 83, 28.13503 + 88, 110, 122, 118, 117, 117, 122, 128, 133, 134, 134, 135, 132, 134, 129, 131, 28.13504 + 135, 136, 132, 133, 136, 145, 148, 152, 155, 157, 160, 162, 164, 163, 164, 166, 28.13505 + 170, 173, 175, 177, 177, 182, 179, 179, 184, 185, 184, 188, 191, 189, 186, 186, 28.13506 + 186, 187, 188, 189, 190, 190, 191, 193, 195, 197, 198, 198, 197, 197, 196, 197, 28.13507 + 198, 199, 201, 202, 203, 200, 199, 197, 196, 194, 194, 194, 196, 203, 203, 215, 28.13508 + 203, 203, 207, 191, 203, 197, 189, 195, 202, 204, 207, 208, 201, 206, 201, 191, 28.13509 + 185, 187, 192, 195, 197, 191, 193, 193, 191, 185, 181, 179, 176, 181, 172, 167, 28.13510 + 165, 170, 176, 181, 180, 193, 193, 194, 194, 192, 189, 189, 188, 186, 185, 185, 28.13511 + 185, 185, 183, 179, 175, 178, 172, 176, 178, 170, 168, 165, 155, 155, 158, 160, 28.13512 + 156, 162, 144, 167, 168, 163, 162, 158, 153, 152, 151, 144, 136, 141, 144, 132, 28.13513 + 129, 141, 140, 157, 148, 109, 86, 97, 109, 117, 124, 110, 107, 107, 106, 105, 28.13514 + 104, 103, 103, 104, 104, 101, 103, 105, 106, 104, 104, 106, 107, 108, 108, 109, 28.13515 + 117, 115, 116, 114, 112, 106, 102, 97, 105, 79, 89, 103, 88, 90, 105, 96, 28.13516 + 97, 114, 120, 116, 119, 119, 120, 126, 121, 125, 132, 134, 134, 135, 140, 142, 28.13517 + 141, 134, 133, 136, 137, 132, 129, 128, 141, 145, 149, 152, 155, 159, 163, 165, 28.13518 + 166, 166, 168, 171, 172, 172, 175, 175, 180, 177, 177, 181, 181, 182, 185, 190, 28.13519 + 187, 186, 187, 187, 187, 186, 185, 184, 186, 187, 190, 192, 194, 194, 195, 193, 28.13520 + 197, 194, 194, 195, 196, 197, 199, 200, 205, 203, 201, 200, 200, 200, 199, 199, 28.13521 + 207, 210, 221, 200, 197, 204, 191, 208, 201, 198, 202, 202, 199, 208, 208, 194, 28.13522 + 196, 196, 195, 196, 198, 196, 192, 187, 189, 194, 197, 194, 189, 182, 178, 178, 28.13523 + 174, 170, 167, 164, 168, 174, 185, 190, 188, 191, 194, 193, 194, 191, 188, 187, 28.13524 + 186, 185, 185, 185, 185, 183, 179, 175, 179, 172, 175, 176, 167, 163, 160, 149, 28.13525 + 146, 154, 162, 161, 166, 143, 164, 163, 169, 168, 163, 157, 154, 151, 144, 135, 28.13526 + 150, 139, 130, 125, 149, 139, 155, 137, 104, 79, 87, 98, 104, 113, 103, 103, 28.13527 + 99, 98, 97, 95, 93, 90, 89, 88, 89, 92, 96, 97, 97, 98, 99, 101, 28.13528 + 96, 97, 98, 131, 128, 126, 124, 123, 121, 122, 120, 124, 110, 108, 137, 124, 28.13529 + 138, 131, 122, 126, 124, 124, 125, 129, 135, 135, 134, 135, 138, 135, 131, 131, 28.13530 + 138, 140, 139, 139, 136, 133, 133, 136, 135, 134, 131, 130, 141, 148, 148, 152, 28.13531 + 159, 163, 161, 165, 160, 162, 165, 169, 169, 172, 172, 176, 177, 176, 176, 178, 28.13532 + 182, 186, 188, 189, 188, 187, 186, 185, 185, 184, 184, 188, 189, 190, 190, 192, 28.13533 + 192, 193, 192, 199, 199, 199, 199, 199, 197, 196, 195, 201, 200, 198, 198, 199, 28.13534 + 201, 204, 207, 211, 208, 203, 204, 206, 205, 201, 195, 204, 200, 197, 203, 211, 28.13535 + 213, 205, 197, 192, 191, 189, 192, 197, 198, 197, 193, 188, 186, 184, 181, 178, 28.13536 + 176, 172, 171, 180, 166, 159, 161, 166, 167, 176, 185, 184, 188, 193, 192, 188, 28.13537 + 183, 183, 187, 187, 186, 185, 184, 183, 181, 177, 173, 177, 176, 179, 176, 163, 28.13538 + 157, 150, 135, 144, 152, 149, 148, 160, 164, 163, 164, 169, 162, 156, 153, 150, 28.13539 + 147, 147, 147, 141, 160, 102, 143, 138, 157, 158, 151, 96, 83, 77, 85, 86, 28.13540 + 78, 78, 90, 88, 86, 88, 79, 85, 85, 70, 78, 79, 75, 83, 90, 86, 28.13541 + 88, 89, 82, 90, 91, 95, 126, 125, 127, 129, 130, 130, 129, 127, 124, 123, 28.13542 + 124, 130, 119, 127, 130, 131, 130, 128, 128, 129, 132, 135, 137, 136, 141, 141, 28.13543 + 140, 134, 132, 134, 133, 127, 133, 134, 137, 141, 144, 141, 134, 128, 130, 143, 28.13544 + 151, 147, 144, 152, 163, 170, 169, 165, 166, 168, 171, 171, 171, 172, 175, 174, 28.13545 + 174, 174, 176, 179, 184, 186, 187, 187, 186, 185, 185, 186, 185, 186, 186, 186, 28.13546 + 187, 189, 190, 191, 191, 192, 197, 198, 199, 200, 201, 201, 201, 200, 199, 199, 28.13547 + 199, 201, 204, 208, 212, 214, 213, 210, 206, 207, 209, 209, 203, 199, 203, 200, 28.13548 + 198, 203, 209, 211, 207, 201, 200, 198, 195, 196, 197, 198, 194, 192, 191, 190, 28.13549 + 188, 186, 181, 179, 177, 176, 173, 164, 160, 160, 165, 170, 181, 187, 187, 189, 28.13550 + 192, 191, 186, 183, 184, 186, 188, 186, 185, 184, 183, 181, 177, 173, 174, 170, 28.13551 + 173, 170, 160, 158, 155, 140, 143, 152, 151, 146, 152, 154, 156, 161, 165, 158, 28.13552 + 153, 151, 150, 147, 141, 137, 138, 146, 119, 145, 154, 153, 153, 143, 88, 73, 28.13553 + 69, 81, 82, 71, 62, 67, 74, 75, 89, 82, 76, 77, 69, 74, 77, 69, 28.13554 + 70, 71, 68, 76, 87, 87, 85, 87, 92, 128, 131, 134, 135, 136, 134, 132, 28.13555 + 128, 126, 131, 126, 109, 117, 121, 129, 131, 131, 131, 131, 131, 131, 130, 132, 28.13556 + 132, 129, 132, 134, 131, 131, 134, 133, 130, 131, 135, 139, 143, 145, 143, 137, 28.13557 + 132, 132, 140, 146, 146, 147, 154, 163, 166, 165, 165, 167, 168, 172, 173, 173, 28.13558 + 173, 173, 172, 173, 172, 173, 175, 179, 181, 182, 182, 182, 183, 184, 185, 186, 28.13559 + 187, 184, 185, 187, 189, 190, 191, 191, 191, 192, 193, 195, 197, 200, 201, 202, 28.13560 + 202, 200, 200, 200, 202, 205, 209, 212, 214, 211, 208, 206, 207, 209, 210, 205, 28.13561 + 202, 201, 200, 199, 202, 206, 208, 207, 206, 208, 204, 202, 201, 199, 198, 193, 28.13562 + 191, 190, 189, 187, 184, 180, 178, 175, 174, 170, 170, 168, 162, 166, 175, 184, 28.13563 + 188, 190, 190, 191, 189, 186, 184, 186, 188, 189, 187, 186, 185, 184, 181, 177, 28.13564 + 173, 170, 168, 173, 172, 163, 161, 156, 139, 137, 148, 148, 143, 149, 153, 159, 28.13565 + 169, 164, 160, 156, 155, 154, 150, 142, 134, 141, 132, 134, 141, 160, 148, 147, 28.13566 + 140, 79, 65, 63, 77, 87, 80, 71, 73, 68, 65, 93, 90, 72, 74, 73, 28.13567 + 74, 79, 69, 67, 66, 64, 74, 88, 92, 91, 91, 92, 123, 124, 127, 130, 28.13568 + 132, 131, 132, 130, 129, 131, 118, 87, 121, 126, 131, 122, 130, 130, 132, 133, 28.13569 + 131, 126, 127, 130, 127, 129, 130, 129, 131, 134, 134, 131, 134, 133, 133, 133, 28.13570 + 135, 137, 138, 139, 131, 131, 136, 143, 155, 162, 159, 154, 158, 160, 164, 165, 28.13571 + 169, 173, 174, 170, 172, 172, 171, 172, 172, 174, 176, 178, 176, 176, 177, 178, 28.13572 + 180, 183, 185, 186, 187, 187, 188, 189, 190, 189, 189, 189, 188, 190, 192, 195, 28.13573 + 197, 198, 199, 200, 203, 203, 202, 202, 202, 203, 205, 205, 206, 204, 203, 204, 28.13574 + 206, 207, 203, 201, 200, 201, 201, 201, 202, 205, 207, 209, 209, 207, 205, 202, 28.13575 + 199, 197, 193, 190, 191, 189, 187, 181, 178, 175, 172, 170, 172, 178, 176, 167, 28.13576 + 168, 179, 187, 186, 192, 191, 190, 187, 185, 185, 187, 189, 189, 188, 186, 185, 28.13577 + 184, 181, 176, 173, 170, 170, 177, 178, 169, 164, 153, 132, 142, 150, 148, 144, 28.13578 + 153, 159, 165, 172, 160, 161, 160, 155, 151, 149, 144, 138, 147, 127, 137, 139, 28.13579 + 148, 148, 146, 147, 81, 70, 66, 78, 84, 82, 79, 82, 73, 62, 93, 93, 28.13580 + 67, 73, 75, 69, 74, 68, 72, 75, 71, 76, 86, 87, 94, 95, 93, 103, 28.13581 + 102, 104, 108, 114, 119, 123, 124, 121, 128, 113, 80, 110, 114, 118, 109, 116, 28.13582 + 116, 121, 128, 129, 125, 125, 127, 134, 134, 130, 124, 122, 124, 124, 123, 131, 28.13583 + 132, 132, 132, 133, 135, 137, 139, 129, 128, 133, 140, 149, 155, 157, 158, 156, 28.13584 + 160, 163, 162, 167, 172, 171, 166, 171, 172, 171, 171, 171, 173, 174, 176, 174, 28.13585 + 174, 175, 177, 180, 183, 185, 187, 192, 192, 192, 192, 191, 190, 188, 188, 190, 28.13586 + 191, 193, 195, 197, 197, 198, 198, 205, 205, 204, 203, 202, 202, 201, 201, 203, 28.13587 + 202, 202, 202, 202, 202, 202, 201, 199, 200, 201, 201, 200, 202, 206, 210, 206, 28.13588 + 205, 203, 200, 196, 194, 192, 191, 196, 193, 190, 184, 180, 175, 172, 171, 172, 28.13589 + 178, 177, 168, 171, 182, 189, 186, 193, 191, 188, 186, 185, 185, 187, 189, 189, 28.13590 + 187, 185, 184, 183, 179, 175, 171, 172, 169, 172, 172, 165, 163, 156, 136, 152, 28.13591 + 155, 148, 145, 159, 165, 164, 165, 152, 157, 157, 148, 140, 140, 142, 141, 143, 28.13592 + 127, 134, 145, 138, 153, 146, 144, 85, 81, 84, 88, 86, 78, 76, 78, 86, 28.13593 + 66, 89, 87, 66, 74, 74, 63, 66, 63, 69, 71, 65, 67, 76, 77, 91, 28.13594 + 93, 93, 105, 104, 102, 101, 103, 106, 108, 110, 110, 123, 118, 87, 86, 88, 28.13595 + 97, 99, 97, 97, 104, 119, 126, 123, 120, 122, 119, 120, 117, 112, 110, 115, 28.13596 + 118, 117, 127, 133, 136, 139, 139, 137, 136, 135, 127, 132, 139, 138, 134, 134, 28.13597 + 148, 165, 158, 164, 166, 163, 167, 172, 169, 162, 170, 170, 169, 170, 169, 170, 28.13598 + 170, 173, 173, 174, 176, 178, 181, 184, 187, 189, 192, 192, 192, 192, 191, 189, 28.13599 + 188, 187, 193, 194, 196, 197, 198, 198, 198, 198, 203, 203, 203, 204, 204, 205, 28.13600 + 205, 205, 204, 204, 204, 204, 202, 203, 203, 203, 200, 201, 201, 201, 200, 201, 28.13601 + 204, 205, 201, 201, 199, 195, 192, 189, 190, 192, 192, 190, 186, 183, 178, 175, 28.13602 + 172, 171, 170, 169, 168, 169, 174, 185, 190, 189, 191, 189, 186, 185, 185, 185, 28.13603 + 186, 186, 188, 186, 184, 183, 181, 178, 173, 169, 173, 164, 161, 159, 156, 163, 28.13604 + 165, 151, 144, 147, 143, 146, 165, 173, 169, 167, 155, 160, 157, 144, 137, 140, 28.13605 + 144, 143, 131, 129, 135, 154, 143, 158, 151, 124, 79, 87, 101, 112, 109, 97, 28.13606 + 87, 85, 96, 76, 87, 82, 71, 77, 72, 63, 63, 58, 61, 60, 52, 57, 28.13607 + 68, 72, 93, 94, 95, 120, 117, 114, 111, 109, 107, 104, 104, 111, 117, 112, 28.13608 + 95, 68, 76, 86, 92, 92, 91, 99, 117, 127, 121, 114, 111, 103, 107, 108, 28.13609 + 107, 110, 117, 119, 121, 128, 135, 140, 142, 139, 137, 136, 136, 131, 131, 136, 28.13610 + 139, 136, 131, 138, 149, 150, 160, 162, 160, 164, 172, 170, 162, 167, 168, 167, 28.13611 + 167, 166, 167, 167, 166, 170, 170, 173, 175, 178, 181, 183, 185, 187, 188, 190, 28.13612 + 190, 190, 190, 189, 189, 190, 191, 192, 194, 195, 196, 196, 196, 197, 198, 200, 28.13613 + 202, 203, 204, 205, 205, 203, 204, 204, 203, 203, 202, 201, 202, 202, 201, 200, 28.13614 + 200, 201, 202, 201, 201, 199, 198, 197, 193, 189, 186, 188, 191, 186, 185, 182, 28.13615 + 180, 178, 176, 173, 172, 175, 168, 165, 172, 182, 187, 190, 192, 189, 188, 185, 28.13616 + 184, 185, 185, 186, 186, 187, 185, 183, 181, 179, 176, 171, 167, 168, 160, 158, 28.13617 + 159, 160, 170, 174, 160, 137, 145, 146, 151, 168, 175, 170, 169, 164, 164, 157, 28.13618 + 143, 140, 146, 144, 136, 127, 133, 142, 151, 153, 150, 161, 102, 75, 88, 105, 28.13619 + 123, 128, 121, 112, 104, 104, 93, 96, 87, 85, 88, 76, 74, 70, 66, 67, 28.13620 + 66, 58, 65, 78, 84, 99, 97, 94, 114, 115, 116, 118, 117, 118, 116, 115, 28.13621 + 119, 111, 98, 98, 64, 84, 88, 87, 99, 95, 101, 120, 129, 120, 107, 102, 28.13622 + 112, 117, 119, 119, 121, 125, 123, 123, 133, 137, 137, 133, 131, 132, 137, 139, 28.13623 + 136, 126, 127, 140, 150, 143, 128, 120, 139, 150, 155, 155, 161, 173, 173, 164, 28.13624 + 164, 165, 164, 164, 163, 162, 161, 162, 164, 164, 165, 169, 172, 175, 178, 180, 28.13625 + 183, 184, 187, 188, 189, 190, 190, 189, 184, 185, 187, 190, 191, 193, 193, 194, 28.13626 + 195, 196, 197, 199, 200, 201, 201, 201, 202, 203, 204, 203, 201, 200, 200, 201, 28.13627 + 203, 201, 199, 200, 202, 203, 199, 197, 198, 198, 197, 190, 186, 184, 186, 188, 28.13628 + 186, 184, 184, 183, 183, 183, 181, 181, 187, 172, 167, 177, 189, 190, 189, 191, 28.13629 + 188, 186, 184, 184, 185, 185, 185, 184, 186, 184, 182, 180, 178, 175, 170, 166, 28.13630 + 164, 159, 164, 170, 172, 179, 177, 159, 147, 158, 160, 160, 168, 167, 159, 158, 28.13631 + 166, 162, 150, 138, 140, 146, 138, 122, 131, 137, 148, 141, 158, 139, 171, 91, 28.13632 + 85, 91, 105, 120, 130, 128, 118, 111, 111, 108, 111, 99, 102, 101, 83, 89, 28.13633 + 81, 79, 85, 88, 80, 84, 93, 96, 100, 96, 93, 120, 117, 109, 104, 104, 28.13634 + 110, 110, 105, 110, 104, 101, 115, 99, 78, 87, 91, 100, 113, 116, 117, 121, 28.13635 + 115, 108, 113, 113, 115, 119, 118, 117, 119, 125, 131, 134, 133, 141, 142, 132, 28.13636 + 131, 135, 128, 130, 126, 129, 137, 146, 147, 144, 142, 124, 139, 143, 147, 163, 28.13637 + 172, 166, 164, 162, 167, 172, 174, 172, 170, 170, 172, 167, 169, 168, 168, 168, 28.13638 + 170, 175, 181, 178, 180, 184, 187, 189, 189, 188, 187, 195, 190, 188, 189, 189, 28.13639 + 188, 190, 194, 191, 189, 193, 199, 199, 194, 195, 201, 201, 202, 204, 204, 202, 28.13640 + 200, 197, 195, 199, 200, 200, 198, 198, 197, 196, 196, 191, 192, 190, 190, 189, 28.13641 + 190, 193, 195, 195, 192, 186, 179, 181, 184, 179, 170, 173, 165, 166, 177, 188, 28.13642 + 190, 188, 187, 188, 188, 189, 189, 189, 186, 185, 184, 182, 183, 184, 181, 175, 28.13643 + 171, 170, 171, 163, 169, 174, 180, 163, 160, 168, 137, 156, 156, 157, 161, 168, 28.13644 + 173, 173, 168, 160, 150, 149, 133, 134, 144, 131, 126, 141, 148, 140, 152, 171, 28.13645 + 129, 173, 92, 90, 95, 115, 132, 130, 127, 125, 116, 109, 112, 113, 112, 113, 28.13646 + 112, 106, 97, 97, 94, 93, 94, 97, 98, 97, 97, 95, 94, 93, 126, 124, 28.13647 + 116, 108, 103, 102, 96, 88, 98, 92, 85, 96, 88, 79, 97, 98, 101, 104, 28.13648 + 98, 95, 104, 105, 102, 108, 102, 104, 109, 112, 115, 119, 124, 128, 130, 128, 28.13649 + 135, 135, 129, 128, 133, 128, 132, 131, 126, 125, 133, 145, 147, 145, 143, 146, 28.13650 + 136, 128, 136, 144, 151, 163, 170, 172, 173, 171, 168, 166, 167, 170, 169, 170, 28.13651 + 170, 167, 165, 166, 172, 175, 172, 173, 178, 181, 183, 185, 186, 186, 190, 186, 28.13652 + 186, 188, 189, 187, 189, 193, 194, 192, 195, 200, 200, 196, 197, 203, 199, 201, 28.13653 + 203, 203, 201, 199, 197, 194, 199, 200, 198, 197, 197, 195, 194, 192, 191, 192, 28.13654 + 190, 189, 187, 188, 190, 193, 189, 188, 182, 175, 178, 184, 185, 180, 167, 165, 28.13655 + 173, 184, 187, 186, 184, 188, 185, 186, 187, 187, 187, 184, 184, 182, 181, 179, 28.13656 + 177, 175, 174, 172, 169, 166, 167, 187, 165, 170, 188, 160, 147, 161, 163, 160, 28.13657 + 161, 167, 172, 173, 171, 167, 164, 151, 149, 134, 131, 138, 127, 129, 142, 140, 28.13658 + 143, 145, 134, 146, 151, 79, 90, 99, 121, 135, 132, 128, 124, 119, 118, 121, 28.13659 + 121, 117, 116, 116, 110, 101, 97, 95, 92, 93, 96, 95, 95, 93, 94, 92, 28.13660 + 93, 123, 125, 122, 118, 114, 112, 104, 96, 96, 94, 86, 94, 91, 89, 104, 28.13661 + 94, 100, 99, 90, 88, 100, 103, 103, 108, 108, 108, 112, 117, 122, 126, 128, 28.13662 + 128, 129, 125, 130, 130, 124, 125, 131, 127, 122, 129, 129, 126, 131, 144, 149, 28.13663 + 145, 149, 151, 144, 138, 140, 136, 137, 149, 149, 156, 166, 174, 175, 174, 171, 28.13664 + 169, 167, 167, 168, 165, 163, 163, 166, 169, 168, 168, 171, 172, 174, 179, 181, 28.13665 + 182, 185, 182, 183, 187, 188, 186, 187, 191, 194, 193, 195, 197, 197, 195, 198, 28.13666 + 203, 198, 199, 200, 200, 199, 198, 195, 193, 198, 196, 196, 196, 194, 192, 191, 28.13667 + 190, 190, 189, 189, 187, 185, 185, 187, 189, 181, 183, 182, 177, 178, 180, 181, 28.13668 + 178, 163, 169, 181, 189, 188, 183, 183, 188, 186, 186, 187, 186, 186, 186, 184, 28.13669 + 182, 187, 182, 177, 175, 175, 174, 168, 163, 171, 178, 179, 187, 174, 159, 170, 28.13670 + 164, 170, 164, 167, 176, 179, 172, 167, 167, 167, 151, 149, 134, 128, 131, 124, 28.13671 + 135, 152, 154, 151, 151, 139, 171, 110, 89, 90, 107, 130, 139, 136, 130, 126, 28.13672 + 124, 119, 121, 118, 114, 113, 113, 109, 101, 98, 94, 93, 93, 96, 95, 95, 28.13673 + 92, 89, 86, 87, 118, 123, 124, 123, 124, 124, 120, 113, 107, 111, 106, 113, 28.13674 + 109, 106, 108, 80, 101, 107, 106, 108, 116, 115, 111, 114, 122, 122, 122, 125, 28.13675 + 129, 129, 126, 122, 130, 123, 126, 126, 119, 122, 129, 125, 121, 125, 126, 124, 28.13676 + 123, 131, 144, 157, 155, 158, 155, 155, 156, 144, 136, 144, 138, 143, 149, 155, 28.13677 + 160, 161, 164, 164, 162, 162, 164, 162, 162, 162, 167, 170, 167, 167, 166, 168, 28.13678 + 169, 172, 175, 177, 180, 179, 180, 186, 187, 186, 186, 189, 192, 192, 192, 192, 28.13679 + 191, 192, 195, 199, 196, 197, 197, 197, 197, 196, 193, 193, 192, 193, 193, 193, 28.13680 + 192, 191, 191, 190, 187, 188, 187, 185, 183, 182, 184, 185, 175, 178, 181, 181, 28.13681 + 177, 173, 169, 166, 166, 174, 183, 188, 186, 182, 183, 187, 188, 188, 188, 188, 28.13682 + 189, 188, 186, 185, 187, 184, 179, 175, 171, 168, 164, 161, 162, 182, 197, 188, 28.13683 + 155, 163, 192, 163, 173, 166, 170, 181, 182, 171, 166, 168, 166, 149, 147, 132, 28.13684 + 124, 127, 126, 145, 149, 158, 132, 144, 161, 156, 65, 91, 90, 116, 135, 142, 28.13685 + 141, 134, 129, 133, 129, 130, 125, 121, 119, 122, 118, 113, 115, 112, 111, 112, 28.13686 + 115, 116, 116, 112, 106, 102, 102, 121, 125, 125, 120, 119, 120, 117, 114, 120, 28.13687 + 125, 120, 126, 124, 120, 116, 81, 107, 120, 125, 125, 130, 124, 120, 127, 129, 28.13688 + 128, 126, 127, 128, 126, 122, 114, 124, 115, 117, 118, 114, 119, 126, 122, 129, 28.13689 + 122, 119, 117, 109, 108, 129, 155, 168, 165, 152, 147, 151, 148, 146, 155, 157, 28.13690 + 150, 139, 132, 131, 134, 144, 150, 153, 155, 157, 157, 158, 160, 166, 170, 168, 28.13691 + 167, 165, 165, 165, 168, 171, 172, 176, 174, 176, 182, 184, 182, 183, 186, 187, 28.13692 + 189, 189, 187, 186, 188, 191, 195, 194, 194, 195, 195, 193, 193, 192, 192, 189, 28.13693 + 189, 190, 191, 191, 192, 191, 191, 186, 187, 185, 184, 182, 181, 183, 183, 179, 28.13694 + 179, 178, 178, 174, 170, 169, 168, 176, 179, 181, 182, 184, 185, 185, 186, 187, 28.13695 + 187, 187, 186, 188, 186, 186, 185, 177, 179, 179, 173, 165, 161, 162, 165, 170, 28.13696 + 205, 179, 157, 170, 172, 174, 174, 170, 167, 172, 182, 183, 173, 168, 168, 162, 28.13697 + 147, 145, 129, 122, 129, 133, 153, 158, 153, 130, 147, 160, 134, 95, 88, 86, 28.13698 + 120, 138, 140, 143, 136, 129, 136, 124, 122, 118, 112, 108, 109, 105, 99, 107, 28.13699 + 104, 103, 102, 107, 110, 111, 107, 103, 101, 101, 120, 125, 125, 120, 117, 120, 28.13700 + 121, 120, 125, 124, 117, 124, 125, 126, 128, 100, 115, 126, 127, 123, 125, 120, 28.13701 + 123, 135, 127, 126, 127, 129, 129, 127, 124, 118, 114, 103, 108, 112, 110, 117, 28.13702 + 125, 121, 119, 117, 122, 125, 116, 103, 102, 109, 150, 159, 155, 151, 157, 159, 28.13703 + 156, 160, 160, 156, 151, 146, 144, 142, 139, 137, 139, 141, 145, 147, 147, 150, 28.13704 + 155, 160, 163, 163, 162, 162, 162, 164, 166, 167, 173, 172, 173, 177, 179, 178, 28.13705 + 179, 183, 186, 189, 190, 187, 186, 189, 191, 191, 192, 192, 192, 192, 191, 191, 28.13706 + 191, 191, 188, 189, 189, 190, 191, 191, 191, 191, 185, 185, 184, 183, 180, 181, 28.13707 + 181, 184, 186, 179, 172, 170, 170, 173, 179, 185, 185, 181, 178, 177, 181, 186, 28.13708 + 186, 183, 184, 183, 182, 181, 183, 182, 182, 182, 173, 178, 181, 176, 167, 164, 28.13709 + 170, 177, 204, 184, 151, 161, 178, 171, 173, 168, 168, 170, 176, 180, 180, 175, 28.13710 + 172, 168, 158, 148, 145, 124, 120, 136, 141, 156, 174, 150, 148, 156, 136, 129, 28.13711 + 164, 89, 86, 123, 136, 134, 141, 135, 126, 134, 117, 116, 109, 102, 97, 95, 28.13712 + 90, 83, 89, 85, 83, 84, 86, 91, 92, 89, 83, 83, 85, 119, 125, 128, 28.13713 + 126, 125, 128, 130, 130, 128, 123, 114, 125, 126, 127, 137, 116, 118, 124, 124, 28.13714 + 119, 121, 118, 120, 131, 124, 126, 129, 131, 131, 130, 130, 128, 116, 104, 108, 28.13715 + 111, 109, 115, 122, 116, 109, 119, 127, 127, 128, 121, 95, 67, 93, 130, 155, 28.13716 + 160, 167, 168, 158, 154, 150, 153, 159, 165, 167, 161, 152, 144, 139, 141, 143, 28.13717 + 143, 142, 144, 146, 149, 155, 155, 155, 157, 157, 160, 162, 164, 171, 169, 169, 28.13718 + 172, 173, 173, 175, 179, 182, 187, 189, 186, 184, 188, 188, 186, 191, 191, 189, 28.13719 + 189, 189, 189, 188, 188, 191, 192, 191, 191, 190, 189, 188, 188, 184, 184, 184, 28.13720 + 183, 181, 182, 183, 185, 186, 176, 168, 170, 175, 178, 183, 187, 185, 184, 180, 28.13721 + 176, 180, 185, 185, 181, 180, 180, 180, 179, 181, 180, 180, 180, 176, 178, 179, 28.13722 + 175, 169, 167, 171, 176, 192, 153, 152, 188, 181, 172, 185, 159, 168, 177, 182, 28.13723 + 178, 176, 178, 175, 166, 156, 151, 147, 121, 119, 143, 147, 155, 160, 145, 144, 28.13724 + 148, 131, 133, 168, 101, 94, 132, 138, 131, 143, 137, 124, 132, 129, 129, 123, 28.13725 + 117, 114, 111, 106, 99, 101, 98, 95, 94, 95, 98, 99, 97, 91, 90, 92, 28.13726 + 123, 129, 133, 129, 126, 126, 126, 124, 132, 125, 120, 132, 132, 128, 135, 118, 28.13727 + 117, 123, 122, 120, 125, 121, 116, 121, 117, 123, 127, 127, 126, 126, 129, 129, 28.13728 + 126, 114, 115, 117, 112, 117, 119, 111, 122, 130, 121, 105, 117, 133, 109, 64, 28.13729 + 47, 102, 141, 150, 157, 164, 159, 156, 161, 157, 153, 151, 154, 158, 160, 159, 28.13730 + 153, 154, 154, 152, 149, 147, 149, 151, 145, 146, 148, 150, 152, 155, 157, 160, 28.13731 + 168, 164, 162, 165, 168, 168, 171, 176, 176, 184, 187, 183, 181, 184, 184, 180, 28.13732 + 189, 189, 186, 186, 186, 187, 186, 187, 194, 193, 193, 190, 190, 186, 186, 183, 28.13733 + 183, 183, 183, 182, 181, 180, 184, 185, 179, 169, 168, 175, 182, 180, 179, 177, 28.13734 + 180, 185, 184, 179, 179, 183, 184, 181, 184, 183, 182, 181, 181, 181, 182, 182, 28.13735 + 176, 174, 171, 166, 162, 160, 161, 162, 131, 162, 171, 188, 202, 179, 168, 169, 28.13736 + 169, 183, 187, 177, 174, 180, 178, 164, 156, 154, 149, 119, 118, 147, 151, 152, 28.13737 + 147, 162, 144, 148, 170, 154, 139, 135, 100, 136, 139, 130, 143, 138, 125, 134, 28.13738 + 125, 126, 125, 120, 120, 119, 117, 110, 109, 106, 101, 99, 99, 100, 100, 98, 28.13739 + 98, 96, 96, 121, 123, 125, 126, 125, 124, 123, 124, 123, 121, 123, 121, 121, 28.13740 + 121, 121, 120, 110, 119, 118, 117, 120, 116, 113, 120, 105, 111, 114, 112, 114, 28.13741 + 122, 125, 124, 120, 120, 122, 121, 117, 116, 117, 120, 119, 122, 121, 108, 119, 28.13742 + 115, 115, 67, 35, 56, 90, 124, 148, 157, 153, 149, 157, 157, 157, 157, 159, 28.13743 + 160, 160, 159, 149, 148, 148, 151, 156, 158, 157, 157, 159, 161, 160, 155, 146, 28.13744 + 140, 137, 137, 151, 154, 158, 162, 166, 164, 160, 156, 170, 174, 178, 184, 183, 28.13745 + 181, 183, 186, 183, 183, 181, 177, 178, 184, 187, 187, 184, 185, 188, 188, 188, 28.13746 + 183, 179, 175, 183, 180, 178, 177, 180, 180, 178, 175, 151, 163, 176, 179, 177, 28.13747 + 176, 180, 185, 183, 181, 180, 182, 184, 185, 186, 185, 188, 185, 181, 179, 181, 28.13748 + 181, 180, 179, 180, 176, 169, 163, 161, 158, 150, 143, 164, 157, 177, 187, 175, 28.13749 + 179, 179, 154, 170, 182, 192, 189, 180, 172, 168, 164, 142, 149, 154, 139, 116, 28.13750 + 151, 151, 154, 164, 148, 145, 158, 162, 152, 144, 149, 104, 125, 120, 128, 133, 28.13751 + 122, 130, 129, 132, 130, 136, 134, 122, 121, 120, 105, 115, 110, 108, 107, 108, 28.13752 + 106, 103, 102, 101, 104, 102, 126, 127, 127, 125, 122, 120, 120, 120, 121, 120, 28.13753 + 119, 117, 116, 116, 116, 117, 116, 124, 123, 119, 123, 120, 116, 122, 116, 118, 28.13754 + 116, 108, 104, 107, 109, 108, 110, 113, 115, 115, 112, 112, 115, 117, 117, 116, 28.13755 + 115, 111, 121, 110, 117, 85, 37, 45, 54, 67, 86, 115, 145, 167, 166, 164, 28.13756 + 158, 154, 153, 156, 156, 152, 157, 156, 156, 157, 161, 164, 167, 167, 161, 161, 28.13757 + 159, 155, 152, 150, 150, 151, 152, 150, 146, 145, 150, 156, 159, 163, 159, 162, 28.13758 + 167, 176, 179, 180, 184, 190, 183, 183, 182, 177, 179, 182, 185, 182, 190, 189, 28.13759 + 188, 184, 181, 178, 178, 177, 176, 176, 178, 179, 181, 176, 169, 161, 169, 174, 28.13760 + 179, 181, 180, 179, 180, 180, 186, 185, 186, 188, 190, 190, 187, 184, 188, 185, 28.13761 + 182, 180, 180, 180, 179, 178, 167, 171, 172, 166, 159, 159, 164, 170, 160, 176, 28.13762 + 184, 185, 184, 179, 172, 170, 190, 195, 196, 187, 178, 174, 174, 171, 160, 155, 28.13763 + 145, 127, 111, 155, 163, 169, 150, 145, 151, 166, 173, 162, 151, 146, 125, 109, 28.13764 + 125, 112, 135, 126, 130, 130, 128, 124, 128, 128, 124, 128, 126, 112, 120, 115, 28.13765 + 107, 100, 96, 95, 101, 104, 95, 100, 102, 126, 126, 125, 124, 122, 119, 121, 28.13766 + 122, 125, 122, 119, 117, 116, 114, 115, 116, 115, 122, 120, 118, 123, 119, 116, 28.13767 + 121, 116, 118, 114, 106, 103, 106, 110, 111, 119, 121, 123, 123, 121, 122, 124, 28.13768 + 125, 119, 113, 115, 117, 127, 112, 123, 101, 32, 38, 41, 41, 44, 65, 98, 28.13769 + 123, 136, 145, 155, 161, 166, 169, 164, 156, 162, 161, 160, 158, 158, 160, 165, 28.13770 + 168, 163, 163, 163, 164, 164, 163, 160, 159, 157, 153, 146, 143, 145, 152, 157, 28.13771 + 161, 158, 157, 160, 165, 167, 169, 173, 178, 179, 178, 180, 174, 176, 177, 179, 28.13772 + 173, 182, 182, 184, 180, 178, 175, 178, 179, 180, 174, 168, 165, 166, 169, 170, 28.13773 + 170, 184, 182, 180, 180, 182, 181, 181, 180, 187, 188, 190, 192, 193, 191, 186, 28.13774 + 182, 187, 185, 182, 180, 180, 180, 178, 176, 169, 169, 167, 161, 156, 156, 161, 28.13775 + 168, 163, 193, 192, 182, 189, 179, 168, 186, 192, 193, 190, 182, 176, 174, 173, 28.13776 + 168, 157, 152, 147, 137, 125, 164, 158, 155, 142, 145, 153, 163, 171, 166, 154, 28.13777 + 143, 149, 99, 125, 104, 134, 127, 127, 127, 134, 125, 125, 122, 117, 120, 117, 28.13778 + 103, 95, 104, 113, 113, 109, 101, 95, 93, 95, 98, 101, 115, 116, 122, 122, 28.13779 + 123, 124, 125, 126, 127, 125, 122, 117, 117, 118, 121, 121, 117, 122, 120, 117, 28.13780 + 123, 120, 116, 122, 116, 115, 115, 114, 114, 116, 121, 124, 130, 131, 131, 131, 28.13781 + 128, 128, 128, 129, 121, 120, 120, 118, 129, 118, 125, 92, 27, 39, 49, 49, 28.13782 + 42, 41, 50, 60, 136, 143, 145, 142, 145, 159, 170, 174, 166, 167, 167, 164, 28.13783 + 159, 157, 160, 163, 165, 166, 169, 173, 174, 170, 160, 152, 162, 161, 158, 157, 28.13784 + 157, 156, 154, 154, 158, 155, 156, 159, 161, 162, 167, 172, 183, 186, 187, 184, 28.13785 + 184, 187, 185, 181, 177, 182, 185, 184, 178, 173, 172, 172, 172, 167, 161, 159, 28.13786 + 162, 168, 177, 182, 182, 179, 178, 176, 178, 181, 184, 184, 186, 186, 187, 190, 28.13787 + 191, 190, 186, 183, 186, 183, 181, 179, 179, 178, 176, 174, 178, 165, 154, 154, 28.13788 + 160, 162, 157, 155, 178, 196, 193, 181, 180, 176, 174, 187, 179, 181, 182, 179, 28.13789 + 179, 178, 172, 163, 151, 150, 152, 147, 132, 160, 146, 138, 164, 168, 169, 167, 28.13790 + 172, 175, 169, 157, 157, 110, 111, 112, 131, 123, 128, 123, 134, 128, 126, 120, 28.13791 + 112, 114, 112, 100, 108, 105, 99, 90, 86, 90, 95, 97, 95, 96, 96, 103, 28.13792 + 107, 115, 119, 121, 121, 121, 120, 120, 118, 116, 114, 114, 117, 120, 121, 119, 28.13793 + 123, 119, 116, 123, 120, 116, 121, 118, 118, 119, 120, 118, 113, 115, 117, 121, 28.13794 + 122, 122, 123, 121, 122, 121, 121, 119, 126, 123, 110, 123, 121, 117, 64, 32, 28.13795 + 38, 41, 43, 41, 40, 41, 44, 50, 85, 121, 144, 155, 160, 155, 147, 169, 28.13796 + 173, 175, 174, 169, 166, 166, 167, 168, 167, 167, 168, 169, 167, 160, 154, 165, 28.13797 + 166, 165, 167, 166, 163, 158, 155, 151, 149, 149, 154, 160, 163, 169, 173, 169, 28.13798 + 171, 174, 173, 174, 176, 175, 171, 184, 185, 183, 178, 171, 166, 165, 165, 155, 28.13799 + 160, 167, 172, 176, 177, 177, 175, 178, 179, 180, 177, 176, 177, 183, 189, 186, 28.13800 + 185, 184, 186, 188, 190, 189, 188, 183, 181, 179, 178, 177, 175, 172, 170, 168, 28.13801 + 157, 152, 159, 168, 170, 168, 169, 200, 191, 192, 186, 169, 176, 188, 180, 180, 28.13802 + 181, 181, 180, 182, 183, 178, 169, 162, 156, 150, 136, 114, 147, 148, 156, 166, 28.13803 + 171, 169, 162, 164, 170, 167, 156, 153, 139, 96, 132, 131, 121, 133, 123, 125, 28.13804 + 123, 127, 125, 118, 121, 124, 117, 121, 115, 104, 96, 94, 97, 91, 84, 87, 28.13805 + 84, 82, 102, 106, 112, 115, 115, 112, 111, 111, 111, 109, 108, 108, 109, 111, 28.13806 + 113, 115, 113, 117, 111, 107, 115, 114, 110, 114, 110, 111, 114, 115, 114, 109, 28.13807 + 108, 112, 115, 116, 116, 119, 120, 122, 123, 122, 114, 124, 120, 102, 115, 116, 28.13808 + 107, 44, 36, 38, 37, 40, 43, 44, 42, 41, 34, 47, 55, 61, 82, 120, 28.13809 + 150, 162, 160, 166, 171, 174, 174, 173, 172, 172, 171, 166, 161, 158, 159, 162, 28.13810 + 165, 166, 167, 165, 163, 163, 165, 166, 167, 165, 151, 145, 143, 146, 151, 151, 28.13811 + 154, 156, 165, 168, 172, 170, 172, 174, 175, 170, 171, 166, 161, 156, 158, 162, 28.13812 + 169, 172, 164, 167, 172, 176, 177, 177, 178, 178, 180, 181, 183, 181, 177, 177, 28.13813 + 180, 185, 186, 185, 184, 185, 188, 190, 191, 190, 180, 178, 176, 175, 174, 172, 28.13814 + 169, 166, 154, 155, 161, 166, 163, 160, 168, 183, 210, 189, 192, 190, 170, 183, 28.13815 + 197, 177, 190, 188, 183, 177, 177, 179, 179, 173, 163, 157, 151, 136, 111, 144, 28.13816 + 154, 170, 153, 160, 163, 162, 164, 166, 161, 150, 151, 164, 92, 140, 137, 128, 28.13817 + 137, 129, 128, 128, 134, 132, 126, 129, 130, 118, 69, 73, 78, 82, 86, 81, 28.13818 + 62, 40, 80, 72, 67, 110, 109, 111, 111, 110, 109, 110, 110, 110, 108, 108, 28.13819 + 108, 109, 108, 109, 110, 108, 111, 104, 102, 111, 110, 105, 109, 105, 102, 105, 28.13820 + 111, 111, 107, 108, 115, 116, 116, 116, 119, 121, 124, 124, 123, 110, 116, 113, 28.13821 + 101, 113, 109, 103, 49, 36, 38, 42, 45, 45, 42, 36, 31, 40, 42, 37, 28.13822 + 37, 61, 103, 128, 131, 154, 155, 158, 162, 167, 169, 169, 168, 166, 164, 161, 28.13823 + 158, 157, 160, 165, 169, 165, 164, 162, 163, 167, 168, 168, 168, 159, 152, 147, 28.13824 + 147, 147, 144, 143, 144, 136, 137, 140, 136, 139, 140, 142, 137, 153, 148, 148, 28.13825 + 151, 162, 170, 178, 177, 178, 175, 173, 171, 170, 174, 182, 186, 181, 180, 181, 28.13826 + 180, 180, 180, 179, 178, 184, 183, 184, 185, 188, 188, 186, 184, 177, 176, 174, 28.13827 + 173, 172, 170, 166, 162, 159, 160, 166, 168, 160, 154, 166, 186, 199, 194, 192, 28.13828 + 188, 184, 190, 191, 183, 190, 190, 186, 179, 176, 176, 176, 171, 156, 154, 155, 28.13829 + 145, 121, 148, 152, 165, 163, 168, 173, 177, 180, 176, 171, 164, 153, 169, 100, 28.13830 + 122, 143, 138, 133, 135, 140, 134, 135, 136, 130, 129, 119, 98, 95, 92, 84, 28.13831 + 75, 78, 87, 88, 77, 75, 65, 58, 117, 115, 114, 112, 110, 112, 114, 118, 28.13832 + 114, 114, 114, 114, 112, 112, 112, 112, 114, 116, 109, 107, 115, 115, 111, 115, 28.13833 + 112, 108, 108, 112, 109, 105, 107, 115, 113, 112, 111, 112, 114, 115, 114, 112, 28.13834 + 110, 110, 110, 105, 116, 104, 105, 63, 38, 40, 41, 41, 39, 39, 38, 38, 28.13835 + 38, 34, 28, 36, 79, 133, 160, 160, 156, 154, 154, 157, 163, 167, 168, 166, 28.13836 + 161, 165, 169, 169, 166, 162, 162, 163, 164, 165, 168, 170, 171, 169, 164, 162, 28.13837 + 162, 156, 153, 155, 157, 155, 153, 154, 155, 158, 157, 154, 154, 156, 156, 153, 28.13838 + 156, 155, 159, 169, 180, 184, 179, 172, 169, 173, 178, 180, 180, 177, 179, 181, 28.13839 + 178, 176, 174, 178, 183, 184, 179, 173, 180, 180, 182, 185, 186, 184, 180, 176, 28.13840 + 176, 174, 173, 172, 171, 168, 164, 160, 172, 163, 161, 166, 169, 169, 177, 193, 28.13841 + 181, 199, 190, 183, 197, 193, 180, 188, 184, 190, 193, 190, 185, 181, 176, 169, 28.13842 + 163, 156, 153, 142, 118, 146, 149, 162, 164, 163, 166, 169, 171, 166, 164, 163, 28.13843 + 156, 161, 109, 100, 146, 145, 127, 137, 143, 131, 129, 131, 130, 129, 111, 82, 28.13844 + 93, 94, 88, 73, 68, 73, 69, 59, 66, 57, 53, 109, 110, 109, 105, 103, 28.13845 + 108, 110, 110, 109, 112, 116, 118, 116, 115, 115, 115, 117, 120, 112, 107, 112, 28.13846 + 113, 113, 121, 113, 114, 112, 106, 104, 106, 107, 105, 109, 110, 109, 110, 111, 28.13847 + 112, 111, 110, 106, 120, 120, 110, 110, 117, 103, 78, 37, 38, 42, 44, 38, 28.13848 + 30, 32, 42, 38, 37, 33, 43, 84, 136, 164, 166, 171, 172, 171, 167, 162, 28.13849 + 159, 158, 158, 160, 161, 162, 163, 163, 165, 167, 169, 169, 168, 168, 167, 167, 28.13850 + 167, 168, 169, 165, 160, 152, 149, 152, 155, 156, 155, 159, 159, 159, 160, 161, 28.13851 + 161, 162, 162, 164, 164, 166, 169, 172, 176, 179, 181, 175, 173, 173, 173, 174, 28.13852 + 176, 178, 179, 180, 180, 178, 178, 178, 179, 180, 181, 181, 181, 182, 184, 185, 28.13853 + 184, 181, 178, 177, 177, 173, 167, 161, 159, 163, 167, 163, 166, 167, 165, 170, 28.13854 + 181, 187, 190, 191, 179, 180, 187, 189, 193, 190, 175, 191, 185, 180, 179, 181, 28.13855 + 180, 176, 171, 174, 162, 153, 141, 121, 154, 154, 162, 167, 164, 166, 170, 172, 28.13856 + 167, 167, 168, 156, 148, 119, 95, 128, 127, 137, 135, 139, 133, 128, 123, 121, 28.13857 + 116, 106, 96, 106, 90, 77, 75, 80, 78, 62, 46, 78, 104, 65, 106, 106, 28.13858 + 106, 102, 101, 106, 109, 108, 106, 109, 113, 115, 115, 113, 116, 118, 126, 129, 28.13859 + 122, 116, 118, 112, 106, 110, 110, 110, 110, 106, 106, 108, 109, 107, 115, 116, 28.13860 + 114, 115, 115, 116, 115, 114, 111, 120, 119, 113, 116, 123, 116, 100, 45, 40, 28.13861 + 37, 37, 36, 41, 55, 71, 80, 83, 81, 82, 105, 143, 164, 165, 177, 180, 28.13862 + 181, 179, 176, 173, 173, 173, 169, 174, 177, 175, 171, 169, 173, 176, 180, 178, 28.13863 + 178, 178, 179, 181, 183, 184, 181, 177, 170, 162, 156, 155, 157, 161, 153, 155, 28.13864 + 159, 162, 164, 163, 162, 160, 164, 165, 168, 172, 176, 179, 182, 184, 182, 181, 28.13865 + 179, 178, 177, 178, 177, 178, 181, 181, 181, 180, 182, 181, 183, 183, 181, 181, 28.13866 + 182, 184, 186, 186, 184, 182, 174, 172, 170, 166, 163, 162, 164, 167, 167, 168, 28.13867 + 168, 170, 180, 191, 193, 191, 192, 196, 206, 204, 185, 181, 190, 192, 187, 185, 28.13868 + 184, 181, 177, 174, 175, 174, 166, 167, 167, 149, 115, 139, 148, 168, 167, 165, 28.13869 + 166, 171, 173, 169, 167, 167, 153, 143, 116, 94, 132, 135, 139, 132, 128, 127, 28.13870 + 125, 127, 128, 127, 121, 114, 95, 87, 76, 74, 76, 74, 68, 59, 39, 62, 28.13871 + 63, 103, 106, 106, 103, 102, 105, 108, 108, 104, 108, 112, 111, 109, 108, 113, 28.13872 + 118, 111, 118, 116, 113, 118, 113, 105, 108, 106, 109, 111, 107, 109, 112, 113, 28.13873 + 112, 120, 120, 118, 118, 117, 118, 117, 116, 113, 113, 110, 110, 114, 118, 116, 28.13874 + 111, 79, 72, 66, 66, 69, 81, 100, 115, 117, 126, 127, 120, 127, 147, 162, 28.13875 + 163, 177, 180, 183, 184, 183, 181, 180, 180, 177, 184, 189, 187, 178, 173, 176, 28.13876 + 182, 183, 182, 182, 182, 184, 187, 190, 192, 188, 186, 181, 170, 159, 153, 153, 28.13877 + 157, 156, 157, 159, 161, 163, 165, 165, 166, 162, 164, 166, 170, 173, 175, 177, 28.13878 + 177, 180, 179, 177, 175, 174, 174, 175, 176, 178, 178, 179, 179, 180, 179, 180, 28.13879 + 179, 180, 179, 178, 179, 180, 181, 179, 178, 172, 170, 167, 166, 167, 168, 169, 28.13880 + 168, 167, 168, 170, 177, 189, 200, 198, 192, 201, 196, 200, 199, 186, 185, 190, 28.13881 + 186, 180, 182, 183, 178, 171, 166, 170, 172, 167, 161, 156, 143, 118, 145, 146, 28.13882 + 155, 166, 164, 166, 171, 174, 169, 167, 166, 159, 143, 115, 89, 131, 141, 144, 28.13883 + 139, 143, 142, 141, 135, 129, 121, 112, 108, 108, 103, 96, 88, 81, 78, 76, 28.13884 + 74, 58, 60, 84, 108, 109, 111, 106, 104, 108, 110, 107, 106, 110, 111, 107, 28.13885 + 102, 101, 106, 111, 99, 107, 108, 109, 117, 113, 108, 112, 108, 111, 113, 113, 28.13886 + 114, 116, 117, 114, 120, 120, 117, 116, 115, 116, 116, 115, 115, 110, 105, 108, 28.13887 + 110, 109, 109, 110, 114, 112, 111, 114, 117, 123, 131, 137, 134, 144, 146, 140, 28.13888 + 142, 155, 165, 167, 175, 179, 183, 185, 185, 183, 182, 181, 181, 186, 190, 189, 28.13889 + 183, 179, 179, 181, 183, 182, 180, 180, 181, 184, 187, 190, 185, 185, 182, 176, 28.13890 + 167, 160, 156, 157, 163, 160, 157, 154, 155, 159, 164, 167, 162, 164, 165, 167, 28.13891 + 168, 169, 169, 168, 173, 172, 171, 171, 171, 172, 174, 175, 175, 176, 177, 178, 28.13892 + 178, 178, 177, 177, 181, 179, 177, 176, 176, 177, 176, 174, 175, 171, 169, 169, 28.13893 + 172, 174, 173, 170, 164, 170, 177, 184, 194, 202, 199, 193, 200, 188, 187, 189, 28.13894 + 186, 191, 193, 184, 183, 184, 184, 178, 172, 168, 171, 173, 167, 157, 152, 143, 28.13895 + 124, 154, 151, 157, 165, 162, 163, 170, 174, 169, 165, 163, 167, 148, 122, 85, 28.13896 + 124, 142, 147, 150, 136, 137, 140, 138, 134, 130, 124, 122, 123, 119, 115, 106, 28.13897 + 98, 94, 91, 88, 91, 70, 79, 116, 117, 119, 112, 110, 112, 113, 110, 111, 28.13898 + 113, 114, 108, 104, 104, 109, 114, 115, 120, 118, 115, 121, 116, 110, 115, 115, 28.13899 + 117, 119, 118, 118, 120, 120, 116, 123, 120, 117, 116, 114, 116, 116, 115, 119, 28.13900 + 113, 110, 114, 115, 111, 110, 114, 123, 126, 130, 133, 136, 137, 135, 133, 143, 28.13901 + 150, 152, 150, 152, 164, 173, 176, 180, 183, 187, 189, 188, 186, 185, 184, 184, 28.13902 + 184, 185, 186, 186, 185, 181, 178, 187, 186, 184, 182, 182, 184, 184, 186, 181, 28.13903 + 181, 181, 183, 183, 179, 171, 167, 164, 163, 160, 157, 156, 156, 158, 159, 163, 28.13904 + 163, 165, 166, 167, 167, 168, 167, 172, 171, 170, 170, 170, 172, 176, 177, 176, 28.13905 + 176, 177, 178, 178, 178, 178, 176, 178, 177, 175, 175, 177, 178, 178, 177, 175, 28.13906 + 172, 169, 170, 173, 175, 173, 171, 166, 177, 188, 193, 196, 200, 199, 198, 193, 28.13907 + 191, 197, 196, 183, 186, 196, 197, 192, 190, 186, 181, 178, 176, 176, 176, 160, 28.13908 + 165, 172, 157, 123, 147, 155, 175, 164, 160, 160, 167, 172, 168, 164, 161, 163, 28.13909 + 148, 132, 87, 119, 139, 140, 149, 135, 136, 139, 140, 138, 136, 135, 133, 126, 28.13910 + 123, 121, 120, 118, 117, 114, 108, 99, 92, 82, 118, 122, 122, 118, 116, 115, 28.13911 + 116, 114, 115, 115, 115, 114, 115, 115, 120, 123, 122, 127, 122, 119, 124, 120, 28.13912 + 115, 119, 120, 123, 124, 119, 119, 122, 122, 118, 125, 121, 118, 117, 116, 118, 28.13913 + 119, 119, 115, 113, 112, 115, 116, 115, 116, 119, 127, 134, 139, 139, 140, 143, 28.13914 + 143, 141, 149, 154, 155, 155, 157, 167, 172, 172, 181, 184, 187, 188, 187, 185, 28.13915 + 185, 185, 186, 183, 181, 184, 188, 188, 184, 179, 186, 185, 183, 182, 181, 180, 28.13916 + 179, 178, 177, 176, 178, 183, 188, 188, 182, 176, 173, 175, 176, 175, 172, 167, 28.13917 + 162, 158, 159, 159, 159, 160, 161, 163, 165, 166, 171, 168, 166, 165, 165, 165, 28.13918 + 169, 170, 169, 169, 168, 168, 168, 169, 172, 171, 168, 166, 167, 170, 174, 176, 28.13919 + 177, 176, 174, 172, 170, 170, 171, 173, 174, 174, 176, 189, 199, 200, 198, 200, 28.13920 + 200, 201, 201, 192, 192, 193, 187, 191, 195, 188, 192, 188, 183, 179, 176, 174, 28.13921 + 174, 173, 166, 166, 168, 154, 123, 148, 152, 167, 167, 160, 159, 164, 171, 168, 28.13922 + 164, 161, 153, 142, 139, 92, 120, 138, 129, 137, 142, 142, 141, 141, 139, 138, 28.13923 + 135, 134, 137, 134, 131, 133, 136, 133, 129, 121, 109, 125, 113, 116, 120, 122, 28.13924 + 119, 118, 120, 121, 117, 118, 117, 116, 117, 121, 125, 126, 126, 119, 125, 122, 28.13925 + 119, 126, 124, 119, 123, 122, 123, 123, 120, 121, 125, 125, 123, 125, 121, 118, 28.13926 + 117, 117, 120, 121, 122, 113, 115, 113, 111, 113, 117, 120, 121, 131, 141, 149, 28.13927 + 148, 147, 152, 157, 158, 154, 160, 164, 164, 161, 164, 166, 167, 178, 181, 183, 28.13928 + 184, 184, 183, 184, 186, 186, 184, 183, 183, 184, 184, 183, 181, 182, 184, 184, 28.13929 + 183, 180, 178, 176, 174, 177, 177, 178, 180, 182, 183, 182, 183, 190, 191, 189, 28.13930 + 187, 183, 179, 175, 173, 168, 166, 163, 161, 161, 162, 164, 165, 165, 164, 163, 28.13931 + 162, 163, 164, 166, 167, 167, 165, 163, 162, 163, 165, 169, 169, 166, 165, 166, 28.13932 + 169, 173, 174, 173, 172, 173, 173, 173, 172, 173, 176, 180, 184, 188, 196, 202, 28.13933 + 201, 199, 200, 199, 198, 205, 190, 185, 189, 189, 194, 192, 178, 188, 187, 185, 28.13934 + 178, 171, 167, 171, 174, 172, 163, 157, 147, 126, 155, 153, 159, 171, 163, 159, 28.13935 + 164, 171, 169, 167, 164, 156, 141, 139, 89, 120, 143, 129, 137, 129, 126, 126, 28.13936 + 131, 138, 144, 146, 146, 147, 144, 141, 140, 140, 138, 135, 130, 122, 138, 129, 28.13937 + 111, 116, 119, 117, 118, 121, 122, 121, 124, 120, 117, 119, 122, 126, 124, 121, 28.13938 + 122, 129, 127, 126, 129, 124, 117, 121, 122, 123, 122, 119, 121, 126, 128, 126, 28.13939 + 124, 121, 117, 117, 119, 121, 124, 124, 122, 124, 122, 115, 114, 122, 128, 126, 28.13940 + 128, 141, 153, 153, 152, 155, 159, 160, 161, 170, 177, 176, 171, 165, 166, 170, 28.13941 + 179, 181, 185, 185, 186, 186, 189, 191, 184, 185, 186, 182, 180, 178, 180, 182, 28.13942 + 182, 185, 186, 187, 184, 181, 178, 177, 182, 184, 184, 181, 177, 178, 183, 189, 28.13943 + 202, 196, 188, 179, 177, 177, 182, 184, 188, 183, 178, 171, 169, 167, 168, 168, 28.13944 + 162, 160, 163, 162, 164, 167, 171, 172, 172, 170, 167, 164, 165, 168, 171, 174, 28.13945 + 176, 176, 177, 178, 179, 178, 174, 171, 175, 176, 177, 176, 176, 180, 188, 194, 28.13946 + 195, 198, 199, 197, 197, 200, 196, 191, 191, 193, 202, 200, 185, 181, 194, 196, 28.13947 + 190, 194, 194, 185, 175, 170, 175, 183, 163, 168, 172, 157, 124, 150, 159, 180, 28.13948 + 174, 165, 160, 164, 170, 170, 167, 165, 167, 145, 135, 81, 114, 148, 136, 146, 28.13949 + 142, 135, 129, 127, 130, 131, 130, 126, 135, 134, 133, 133, 134, 136, 138, 139, 28.13950 + 142, 142, 134, 122, 119, 119, 117, 114, 115, 119, 122, 126, 126, 124, 123, 124, 28.13951 + 126, 128, 128, 125, 123, 123, 122, 122, 123, 124, 124, 132, 124, 119, 119, 123, 28.13952 + 125, 123, 120, 122, 124, 125, 125, 128, 130, 126, 118, 122, 128, 131, 112, 114, 28.13953 + 125, 122, 136, 143, 147, 154, 158, 159, 159, 163, 165, 174, 174, 176, 177, 177, 28.13954 + 175, 170, 166, 171, 175, 181, 183, 186, 185, 188, 188, 183, 183, 189, 192, 198, 28.13955 + 195, 191, 183, 186, 183, 180, 177, 176, 176, 178, 180, 174, 179, 185, 186, 183, 28.13956 + 180, 178, 178, 181, 188, 192, 181, 173, 172, 181, 185, 189, 190, 195, 192, 189, 28.13957 + 181, 178, 173, 176, 174, 173, 169, 167, 165, 163, 163, 161, 162, 164, 168, 174, 28.13958 + 180, 185, 188, 193, 188, 185, 185, 182, 174, 168, 167, 174, 178, 183, 185, 186, 28.13959 + 187, 189, 192, 194, 198, 202, 200, 198, 198, 196, 192, 187, 194, 194, 189, 191, 28.13960 + 199, 199, 190, 198, 196, 189, 181, 181, 184, 185, 182, 171, 169, 167, 154, 137, 28.13961 + 143, 155, 154, 170, 165, 163, 162, 165, 166, 166, 166, 157, 146, 140, 94, 107, 28.13962 + 128, 142, 135, 138, 134, 133, 127, 127, 125, 127, 127, 129, 130, 133, 136, 139, 28.13963 + 140, 141, 141, 131, 133, 135, 132, 128, 128, 125, 122, 120, 122, 124, 122, 121, 28.13964 + 121, 121, 125, 127, 130, 130, 124, 122, 121, 121, 122, 123, 124, 124, 120, 118, 28.13965 + 116, 117, 119, 120, 116, 113, 124, 123, 119, 113, 114, 121, 125, 124, 126, 120, 28.13966 + 122, 120, 127, 129, 118, 133, 145, 150, 157, 160, 161, 162, 164, 167, 165, 166, 28.13967 + 169, 173, 173, 170, 165, 161, 166, 171, 176, 180, 184, 185, 184, 183, 183, 184, 28.13968 + 186, 190, 194, 194, 191, 187, 190, 188, 185, 183, 181, 181, 182, 182, 181, 180, 28.13969 + 178, 174, 172, 174, 179, 184, 181, 186, 187, 182, 179, 182, 186, 187, 191, 190, 28.13970 + 188, 184, 180, 179, 181, 183, 182, 181, 179, 178, 178, 180, 183, 185, 183, 182, 28.13971 + 182, 182, 182, 184, 186, 188, 195, 190, 189, 191, 191, 187, 185, 185, 186, 188, 28.13972 + 190, 190, 189, 190, 194, 197, 196, 201, 202, 198, 196, 197, 197, 195, 197, 202, 28.13973 + 200, 193, 193, 199, 198, 189, 195, 195, 190, 183, 181, 183, 181, 176, 169, 165, 28.13974 + 161, 146, 130, 137, 152, 153, 167, 163, 162, 162, 164, 165, 164, 163, 158, 150, 28.13975 + 142, 104, 109, 134, 143, 139, 137, 136, 136, 134, 132, 130, 127, 126, 129, 129, 28.13976 + 128, 128, 129, 131, 133, 134, 132, 133, 134, 128, 127, 130, 126, 124, 121, 121, 28.13977 + 121, 124, 124, 124, 124, 125, 126, 128, 130, 122, 121, 121, 122, 123, 124, 126, 28.13978 + 127, 127, 127, 128, 128, 126, 123, 118, 115, 116, 116, 113, 105, 104, 111, 118, 28.13979 + 120, 114, 109, 118, 119, 116, 105, 102, 135, 148, 153, 160, 163, 163, 164, 165, 28.13980 + 167, 165, 167, 171, 176, 178, 176, 170, 166, 158, 161, 166, 175, 184, 189, 189, 28.13981 + 187, 185, 185, 185, 187, 191, 193, 193, 192, 188, 187, 186, 184, 182, 181, 179, 28.13982 + 179, 183, 180, 176, 171, 169, 171, 177, 182, 178, 181, 182, 182, 184, 189, 189, 28.13983 + 185, 190, 189, 186, 182, 180, 180, 184, 187, 189, 187, 186, 186, 188, 193, 197, 28.13984 + 201, 196, 194, 192, 190, 187, 187, 187, 187, 193, 188, 186, 190, 192, 191, 192, 28.13985 + 194, 197, 197, 196, 194, 192, 193, 196, 199, 199, 202, 201, 196, 193, 196, 197, 28.13986 + 196, 200, 203, 200, 192, 193, 198, 197, 191, 192, 193, 190, 185, 183, 183, 179, 28.13987 + 173, 173, 166, 160, 145, 129, 137, 156, 160, 163, 160, 160, 162, 164, 165, 164, 28.13988 + 163, 156, 154, 142, 114, 106, 139, 140, 140, 142, 143, 144, 144, 142, 138, 134, 28.13989 + 132, 136, 134, 131, 129, 128, 130, 132, 133, 132, 131, 131, 120, 122, 127, 127, 28.13990 + 126, 123, 122, 123, 128, 126, 126, 124, 123, 122, 122, 122, 121, 122, 122, 123, 28.13991 + 125, 127, 129, 130, 125, 127, 127, 125, 119, 114, 110, 107, 113, 117, 122, 118, 28.13992 + 115, 117, 118, 118, 119, 114, 117, 111, 109, 106, 104, 133, 149, 154, 160, 164, 28.13993 + 164, 164, 164, 166, 170, 171, 173, 178, 182, 182, 178, 176, 165, 165, 165, 172, 28.13994 + 182, 190, 191, 189, 187, 186, 185, 186, 188, 192, 195, 196, 187, 187, 187, 186, 28.13995 + 184, 182, 179, 177, 180, 180, 180, 178, 176, 173, 172, 171, 171, 176, 179, 179, 28.13996 + 182, 186, 186, 182, 185, 187, 189, 189, 187, 184, 184, 184, 190, 190, 189, 189, 28.13997 + 190, 193, 196, 198, 193, 192, 190, 189, 187, 188, 189, 191, 194, 188, 185, 187, 28.13998 + 188, 188, 190, 193, 198, 198, 197, 196, 195, 195, 195, 196, 197, 200, 200, 194, 28.13999 + 192, 194, 195, 193, 193, 194, 191, 187, 189, 196, 197, 194, 191, 191, 189, 184, 28.14000 + 183, 185, 182, 176, 174, 166, 160, 148, 133, 139, 157, 163, 160, 158, 159, 162, 28.14001 + 165, 166, 164, 162, 159, 161, 144, 121, 103, 142, 139, 144, 143, 144, 145, 145, 28.14002 + 144, 141, 138, 135, 139, 137, 135, 133, 132, 132, 134, 135, 132, 128, 126, 124, 28.14003 + 128, 134, 134, 133, 131, 130, 128, 125, 125, 123, 121, 120, 119, 119, 118, 124, 28.14004 + 125, 125, 127, 129, 131, 133, 134, 131, 132, 132, 129, 125, 121, 120, 119, 124, 28.14005 + 130, 137, 135, 132, 131, 130, 127, 121, 120, 119, 110, 118, 129, 119, 127, 147, 28.14006 + 153, 160, 164, 163, 163, 164, 166, 170, 170, 170, 173, 177, 179, 179, 178, 182, 28.14007 + 177, 171, 171, 177, 182, 183, 182, 185, 184, 184, 183, 185, 188, 192, 195, 191, 28.14008 + 191, 192, 191, 190, 187, 184, 182, 180, 180, 181, 180, 178, 173, 167, 163, 161, 28.14009 + 169, 176, 176, 177, 181, 185, 186, 188, 190, 191, 191, 188, 186, 185, 185, 189, 28.14010 + 190, 190, 192, 193, 193, 192, 192, 192, 192, 189, 189, 190, 192, 194, 195, 198, 28.14011 + 191, 187, 189, 190, 190, 192, 195, 194, 195, 197, 199, 199, 198, 196, 194, 191, 28.14012 + 196, 197, 193, 191, 192, 191, 189, 189, 188, 186, 184, 187, 193, 195, 193, 188, 28.14013 + 188, 184, 179, 180, 183, 183, 179, 169, 161, 159, 150, 135, 137, 153, 158, 159, 28.14014 + 158, 159, 162, 165, 166, 165, 163, 165, 168, 149, 123, 102, 140, 140, 147, 140, 28.14015 + 140, 140, 140, 139, 138, 137, 137, 135, 136, 136, 136, 136, 135, 134, 134, 133, 28.14016 + 131, 128, 132, 135, 138, 138, 134, 132, 131, 130, 126, 127, 126, 126, 127, 126, 28.14017 + 126, 127, 125, 128, 128, 129, 131, 133, 135, 137, 139, 139, 139, 139, 140, 140, 28.14018 + 140, 138, 132, 136, 136, 133, 132, 134, 135, 133, 86, 108, 126, 110, 107, 114, 28.14019 + 110, 129, 144, 151, 159, 163, 163, 162, 163, 165, 171, 171, 171, 173, 176, 178, 28.14020 + 177, 176, 179, 174, 169, 168, 173, 179, 184, 185, 180, 181, 182, 182, 181, 183, 28.14021 + 186, 189, 189, 189, 190, 190, 189, 187, 184, 183, 185, 181, 177, 174, 173, 171, 28.14022 + 169, 168, 156, 164, 170, 170, 171, 178, 186, 190, 193, 192, 189, 186, 183, 184, 28.14023 + 188, 191, 187, 189, 191, 194, 195, 195, 194, 192, 191, 190, 187, 187, 187, 189, 28.14024 + 191, 192, 194, 188, 185, 187, 190, 190, 193, 196, 194, 195, 198, 201, 203, 201, 28.14025 + 197, 193, 187, 192, 194, 191, 190, 191, 190, 188, 192, 190, 187, 186, 187, 189, 28.14026 + 189, 188, 185, 184, 181, 176, 176, 180, 181, 177, 170, 162, 161, 156, 140, 139, 28.14027 + 152, 157, 161, 159, 159, 162, 165, 166, 166, 164, 161, 163, 151, 117, 99, 128, 28.14028 + 132, 138, 139, 139, 139, 140, 141, 141, 141, 142, 138, 139, 140, 141, 141, 140, 28.14029 + 139, 138, 136, 135, 133, 132, 134, 136, 136, 134, 130, 130, 130, 130, 131, 131, 28.14030 + 132, 130, 129, 130, 130, 126, 126, 126, 127, 129, 130, 132, 133, 126, 125, 126, 28.14031 + 129, 133, 133, 129, 125, 130, 133, 130, 128, 129, 133, 134, 130, 82, 98, 116, 28.14032 + 104, 96, 93, 97, 129, 142, 149, 158, 163, 164, 164, 164, 166, 172, 172, 175, 28.14033 + 179, 181, 180, 175, 171, 171, 170, 170, 171, 174, 179, 184, 187, 179, 182, 185, 28.14034 + 185, 183, 182, 183, 185, 186, 186, 186, 186, 185, 185, 184, 183, 188, 183, 177, 28.14035 + 175, 176, 178, 178, 177, 163, 165, 164, 162, 166, 175, 181, 182, 189, 189, 188, 28.14036 + 187, 186, 187, 190, 193, 185, 187, 188, 190, 192, 191, 191, 191, 189, 188, 187, 28.14037 + 186, 184, 185, 186, 187, 188, 183, 181, 184, 187, 187, 188, 192, 196, 196, 196, 28.14038 + 199, 201, 200, 196, 192, 188, 192, 192, 188, 187, 190, 192, 192, 193, 190, 188, 28.14039 + 187, 187, 185, 183, 182, 186, 187, 184, 180, 180, 181, 179, 173, 174, 164, 163, 28.14040 + 158, 142, 139, 152, 158, 165, 161, 160, 161, 164, 166, 166, 166, 156, 157, 156, 28.14041 + 113, 103, 118, 126, 126, 134, 136, 140, 143, 145, 145, 144, 143, 145, 145, 144, 28.14042 + 144, 143, 143, 143, 141, 136, 136, 136, 128, 130, 133, 136, 136, 134, 135, 136, 28.14043 + 129, 128, 128, 127, 124, 123, 122, 121, 123, 122, 123, 123, 125, 126, 128, 128, 28.14044 + 128, 125, 127, 130, 134, 131, 124, 116, 128, 131, 132, 131, 135, 138, 135, 128, 28.14045 + 132, 104, 91, 92, 112, 116, 104, 122, 142, 149, 158, 164, 165, 165, 166, 167, 28.14046 + 168, 171, 175, 180, 182, 178, 169, 164, 179, 180, 180, 178, 176, 174, 175, 176, 28.14047 + 181, 185, 189, 190, 187, 185, 185, 185, 188, 188, 188, 188, 188, 188, 188, 188, 28.14048 + 186, 184, 182, 183, 186, 187, 185, 183, 172, 167, 158, 153, 158, 168, 170, 167, 28.14049 + 177, 182, 188, 192, 192, 190, 188, 187, 187, 184, 183, 183, 183, 184, 184, 185, 28.14050 + 192, 190, 189, 188, 186, 187, 189, 190, 191, 186, 183, 186, 187, 186, 186, 189, 28.14051 + 198, 196, 194, 194, 196, 196, 193, 190, 190, 192, 191, 186, 185, 191, 195, 196, 28.14052 + 190, 187, 185, 186, 186, 183, 180, 179, 190, 192, 191, 187, 186, 185, 179, 171, 28.14053 + 172, 160, 158, 153, 136, 133, 147, 154, 167, 163, 161, 161, 164, 166, 167, 167, 28.14054 + 159, 160, 168, 119, 115, 120, 130, 125, 121, 126, 132, 137, 140, 139, 136, 134, 28.14055 + 145, 143, 140, 137, 135, 136, 138, 139, 134, 135, 137, 131, 133, 134, 136, 135, 28.14056 + 133, 131, 128, 138, 132, 116, 129, 117, 122, 115, 123, 116, 104, 97, 97, 104, 28.14057 + 107, 106, 101, 113, 120, 124, 116, 111, 112, 116, 118, 126, 127, 128, 129, 132, 28.14058 + 132, 132, 133, 140, 140, 132, 120, 107, 91, 94, 116, 140, 152, 156, 161, 167, 28.14059 + 163, 159, 166, 167, 172, 178, 181, 178, 175, 171, 170, 177, 178, 178, 177, 175, 28.14060 + 175, 177, 179, 178, 183, 189, 194, 195, 191, 186, 182, 181, 182, 184, 188, 190, 28.14061 + 188, 183, 179, 179, 186, 191, 188, 179, 173, 173, 176, 181, 177, 163, 159, 164, 28.14062 + 161, 158, 167, 172, 178, 187, 193, 190, 182, 178, 178, 180, 182, 188, 194, 188, 28.14063 + 179, 178, 182, 192, 187, 181, 181, 186, 190, 191, 191, 192, 187, 183, 183, 187, 28.14064 + 192, 194, 194, 198, 199, 198, 196, 193, 191, 192, 194, 192, 192, 191, 190, 190, 28.14065 + 189, 188, 188, 190, 189, 189, 190, 189, 186, 180, 176, 185, 181, 179, 182, 183, 28.14066 + 179, 176, 177, 171, 168, 163, 155, 142, 135, 140, 149, 161, 158, 158, 160, 163, 28.14067 + 165, 166, 166, 153, 154, 163, 98, 132, 121, 121, 133, 127, 128, 129, 133, 135, 28.14068 + 135, 133, 130, 133, 130, 127, 126, 127, 131, 135, 139, 131, 133, 135, 129, 128, 28.14069 + 128, 129, 130, 128, 126, 123, 122, 127, 116, 119, 105, 113, 103, 100, 113, 108, 28.14070 + 100, 91, 84, 83, 88, 93, 85, 90, 92, 91, 94, 100, 101, 98, 101, 109, 28.14071 + 121, 136, 140, 134, 133, 137, 119, 135, 138, 134, 135, 131, 125, 130, 140, 151, 28.14072 + 155, 159, 164, 161, 158, 165, 167, 171, 177, 179, 177, 174, 172, 172, 176, 178, 28.14073 + 179, 179, 178, 178, 179, 181, 175, 178, 183, 187, 190, 190, 189, 188, 187, 183, 28.14074 + 178, 177, 179, 182, 185, 186, 183, 177, 174, 178, 186, 187, 180, 172, 172, 180, 28.14075 + 180, 172, 163, 149, 144, 152, 163, 176, 179, 172, 179, 196, 194, 178, 182, 185, 28.14076 + 190, 192, 183, 179, 186, 198, 184, 184, 185, 184, 185, 187, 190, 192, 199, 194, 28.14077 + 187, 185, 186, 189, 190, 191, 192, 193, 194, 193, 192, 192, 194, 195, 192, 192, 28.14078 + 191, 190, 190, 189, 188, 188, 191, 190, 189, 187, 185, 180, 173, 168, 177, 173, 28.14079 + 173, 177, 178, 175, 172, 173, 175, 170, 163, 152, 141, 136, 144, 155, 160, 159, 28.14080 + 161, 164, 166, 166, 164, 162, 156, 158, 153, 110, 136, 124, 122, 130, 130, 129, 28.14081 + 128, 130, 132, 132, 131, 129, 132, 133, 134, 134, 132, 130, 128, 127, 131, 132, 28.14082 + 134, 124, 122, 123, 124, 125, 125, 126, 126, 119, 141, 137, 127, 96, 105, 101, 28.14083 + 103, 82, 77, 77, 77, 79, 83, 90, 95, 100, 99, 95, 93, 95, 96, 90, 28.14084 + 85, 104, 102, 109, 121, 123, 119, 124, 136, 138, 151, 145, 129, 131, 131, 124, 28.14085 + 120, 140, 153, 157, 159, 165, 163, 158, 165, 167, 171, 174, 177, 177, 176, 176, 28.14086 + 176, 176, 178, 181, 182, 181, 180, 180, 181, 177, 178, 179, 181, 183, 186, 188, 28.14087 + 190, 189, 184, 177, 173, 174, 178, 181, 183, 175, 179, 183, 183, 181, 180, 182, 28.14088 + 185, 183, 180, 175, 173, 173, 166, 152, 140, 146, 149, 160, 175, 180, 179, 188, 28.14089 + 202, 190, 182, 177, 179, 182, 181, 177, 177, 179, 183, 188, 189, 187, 188, 192, 28.14090 + 196, 201, 196, 189, 185, 185, 187, 190, 191, 191, 193, 194, 194, 193, 192, 194, 28.14091 + 196, 192, 192, 191, 190, 190, 189, 188, 188, 194, 193, 191, 189, 186, 181, 175, 28.14092 + 171, 176, 174, 175, 180, 182, 179, 176, 176, 182, 175, 164, 151, 138, 135, 145, 28.14093 + 158, 159, 160, 165, 168, 169, 166, 162, 160, 159, 162, 136, 127, 141, 129, 127, 28.14094 + 129, 130, 129, 126, 126, 129, 131, 132, 133, 130, 132, 134, 136, 137, 137, 136, 28.14095 + 134, 132, 134, 136, 114, 112, 113, 114, 117, 121, 126, 127, 122, 129, 116, 115, 28.14096 + 92, 98, 92, 93, 85, 75, 72, 80, 92, 95, 84, 72, 80, 81, 83, 89, 28.14097 + 96, 101, 100, 98, 114, 106, 108, 119, 125, 118, 121, 132, 132, 141, 133, 124, 28.14098 + 123, 119, 113, 116, 140, 155, 158, 158, 164, 164, 160, 167, 167, 170, 172, 174, 28.14099 + 175, 176, 178, 179, 177, 180, 183, 184, 182, 180, 179, 179, 184, 183, 182, 181, 28.14100 + 181, 182, 182, 183, 185, 184, 182, 181, 180, 178, 174, 172, 172, 180, 186, 182, 28.14101 + 172, 168, 174, 184, 185, 174, 167, 165, 168, 173, 162, 141, 133, 131, 142, 162, 28.14102 + 171, 169, 175, 190, 194, 189, 187, 189, 191, 189, 183, 179, 181, 184, 187, 188, 28.14103 + 190, 193, 197, 201, 197, 193, 187, 184, 184, 188, 193, 196, 196, 198, 199, 198, 28.14104 + 195, 193, 194, 194, 191, 191, 191, 190, 190, 189, 189, 189, 189, 188, 188, 188, 28.14105 + 188, 186, 182, 179, 181, 178, 179, 184, 186, 182, 179, 179, 185, 178, 166, 152, 28.14106 + 138, 133, 142, 155, 161, 163, 167, 169, 168, 165, 162, 160, 160, 163, 121, 141, 28.14107 + 143, 136, 136, 135, 132, 128, 125, 124, 127, 131, 134, 136, 133, 132, 130, 129, 28.14108 + 130, 134, 137, 140, 133, 135, 138, 99, 96, 97, 98, 100, 105, 109, 111, 125, 28.14109 + 106, 87, 111, 112, 114, 91, 82, 93, 84, 82, 90, 100, 102, 91, 80, 78, 28.14110 + 80, 85, 91, 96, 99, 101, 104, 104, 101, 113, 136, 145, 135, 125, 122, 127, 28.14111 + 132, 135, 139, 131, 104, 87, 96, 134, 152, 157, 155, 159, 162, 162, 169, 167, 28.14112 + 170, 173, 175, 175, 176, 179, 181, 179, 181, 184, 184, 181, 178, 176, 176, 187, 28.14113 + 187, 186, 185, 184, 181, 179, 178, 181, 181, 182, 184, 184, 181, 176, 172, 180, 28.14114 + 174, 169, 169, 174, 174, 169, 165, 169, 175, 182, 170, 147, 145, 144, 127, 130, 28.14115 + 147, 146, 132, 150, 187, 193, 169, 176, 185, 193, 191, 183, 182, 188, 195, 184, 28.14116 + 182, 181, 184, 191, 197, 200, 201, 194, 191, 187, 184, 184, 187, 192, 196, 196, 28.14117 + 198, 199, 199, 196, 195, 194, 195, 191, 191, 190, 190, 190, 190, 189, 189, 183, 28.14118 + 182, 182, 183, 184, 183, 181, 178, 180, 177, 177, 181, 181, 177, 173, 173, 179, 28.14119 + 173, 164, 152, 139, 133, 141, 152, 163, 164, 167, 168, 165, 163, 162, 163, 159, 28.14120 + 159, 118, 149, 144, 145, 146, 146, 139, 135, 130, 127, 128, 130, 132, 132, 140, 28.14121 + 138, 134, 131, 128, 128, 129, 130, 134, 136, 137, 86, 84, 83, 84, 84, 88, 28.14122 + 93, 94, 103, 97, 99, 133, 124, 112, 93, 99, 85, 86, 89, 89, 88, 91, 28.14123 + 98, 105, 101, 99, 99, 101, 100, 96, 97, 101, 98, 97, 105, 119, 129, 124, 28.14124 + 115, 110, 139, 136, 134, 137, 125, 94, 80, 96, 127, 147, 153, 150, 154, 159, 28.14125 + 161, 168, 168, 171, 175, 177, 176, 177, 179, 181, 180, 182, 184, 183, 180, 178, 28.14126 + 177, 177, 183, 184, 186, 187, 186, 184, 182, 180, 181, 179, 178, 178, 181, 183, 28.14127 + 184, 184, 177, 178, 178, 179, 178, 178, 177, 178, 180, 181, 188, 176, 149, 139, 28.14128 + 118, 75, 86, 106, 111, 98, 99, 128, 160, 174, 185, 182, 176, 175, 181, 187, 28.14129 + 185, 178, 183, 180, 178, 183, 192, 198, 200, 199, 198, 196, 193, 188, 185, 185, 28.14130 + 188, 191, 189, 192, 195, 196, 196, 195, 196, 197, 190, 190, 190, 190, 190, 190, 28.14131 + 190, 190, 188, 186, 184, 184, 184, 182, 179, 177, 182, 177, 176, 178, 179, 175, 28.14132 + 172, 173, 171, 167, 161, 152, 140, 135, 142, 152, 162, 164, 167, 167, 164, 161, 28.14133 + 162, 164, 155, 151, 130, 153, 145, 153, 152, 156, 150, 145, 139, 135, 132, 130, 28.14134 + 128, 126, 136, 139, 142, 144, 144, 141, 138, 135, 133, 134, 135, 84, 84, 84, 28.14135 + 86, 90, 94, 98, 99, 87, 101, 111, 131, 107, 97, 87, 100, 98, 98, 98, 28.14136 + 91, 81, 80, 88, 97, 84, 79, 79, 87, 96, 99, 103, 107, 98, 101, 105, 28.14137 + 104, 106, 113, 117, 118, 130, 128, 122, 124, 126, 117, 115, 133, 125, 146, 153, 28.14138 + 149, 154, 161, 164, 171, 172, 175, 177, 179, 178, 178, 179, 180, 180, 182, 183, 28.14139 + 182, 181, 180, 181, 183, 182, 183, 184, 185, 186, 185, 184, 183, 183, 180, 177, 28.14140 + 176, 179, 182, 184, 185, 175, 186, 196, 194, 184, 179, 185, 195, 195, 182, 183, 28.14141 + 180, 164, 157, 116, 43, 52, 46, 54, 64, 53, 46, 82, 133, 178, 179, 180, 28.14142 + 184, 191, 195, 186, 173, 179, 182, 187, 193, 197, 200, 200, 200, 202, 202, 199, 28.14143 + 194, 188, 185, 186, 188, 188, 191, 195, 197, 197, 196, 196, 197, 190, 190, 190, 28.14144 + 190, 190, 190, 190, 190, 193, 191, 188, 186, 185, 183, 179, 177, 184, 179, 176, 28.14145 + 179, 180, 178, 177, 179, 173, 169, 162, 152, 139, 133, 140, 151, 157, 161, 167, 28.14146 + 168, 165, 161, 161, 162, 150, 143, 150, 157, 148, 159, 153, 158, 153, 151, 147, 28.14147 + 143, 140, 136, 131, 127, 129, 133, 140, 146, 150, 151, 150, 149, 136, 137, 137, 28.14148 + 96, 96, 99, 103, 109, 114, 119, 121, 129, 126, 111, 124, 118, 126, 104, 95, 28.14149 + 91, 90, 92, 96, 104, 109, 112, 114, 104, 91, 85, 92, 103, 106, 105, 103, 28.14150 + 94, 113, 128, 128, 129, 138, 143, 142, 134, 141, 138, 136, 144, 139, 129, 127, 28.14151 + 126, 148, 156, 151, 157, 165, 170, 175, 172, 176, 180, 181, 181, 179, 179, 180, 28.14152 + 179, 181, 182, 182, 182, 183, 186, 189, 184, 184, 183, 183, 183, 183, 183, 183, 28.14153 + 186, 182, 183, 180, 182, 180, 180, 176, 187, 184, 187, 188, 194, 191, 188, 183, 28.14154 + 182, 175, 185, 181, 159, 155, 121, 50, 89, 64, 49, 54, 60, 57, 58, 66, 28.14155 + 105, 147, 187, 190, 171, 162, 171, 181, 177, 186, 197, 203, 204, 201, 201, 202, 28.14156 + 203, 204, 202, 198, 191, 187, 187, 189, 194, 197, 200, 200, 199, 196, 195, 195, 28.14157 + 192, 190, 190, 190, 190, 190, 190, 190, 189, 187, 184, 182, 181, 180, 177, 176, 28.14158 + 182, 177, 174, 176, 178, 177, 178, 182, 182, 175, 165, 152, 137, 129, 136, 146, 28.14159 + 149, 158, 167, 171, 167, 162, 161, 161, 147, 140, 166, 160, 150, 161, 148, 153, 28.14160 + 146, 145, 144, 143, 141, 136, 132, 128, 125, 127, 128, 131, 135, 138, 144, 144, 28.14161 + 141, 141, 140, 127, 126, 126, 125, 126, 126, 126, 126, 131, 128, 125, 120, 120, 28.14162 + 121, 126, 127, 121, 120, 112, 109, 119, 123, 125, 135, 127, 121, 114, 109, 108, 28.14163 + 108, 111, 115, 137, 136, 133, 131, 127, 129, 138, 148, 143, 135, 132, 141, 142, 28.14164 + 132, 128, 128, 129, 150, 153, 144, 151, 162, 166, 167, 171, 176, 182, 183, 179, 28.14165 + 174, 175, 177, 177, 181, 185, 187, 186, 185, 185, 186, 184, 185, 186, 186, 187, 28.14166 + 187, 186, 186, 183, 182, 182, 179, 180, 180, 182, 182, 180, 185, 192, 192, 189, 28.14167 + 183, 179, 177, 186, 166, 167, 160, 157, 144, 99, 69, 116, 101, 76, 55, 43, 28.14168 + 40, 42, 48, 48, 83, 88, 143, 158, 180, 189, 183, 190, 195, 199, 196, 196, 28.14169 + 197, 197, 195, 207, 207, 206, 201, 192, 186, 191, 200, 191, 192, 193, 195, 196, 28.14170 + 197, 198, 198, 192, 193, 194, 194, 192, 192, 193, 195, 197, 189, 182, 184, 186, 28.14171 + 183, 180, 179, 181, 184, 178, 179, 184, 178, 172, 179, 177, 164, 171, 150, 145, 28.14172 + 129, 150, 145, 146, 152, 161, 159, 156, 169, 173, 158, 138, 156, 163, 148, 140, 28.14173 + 150, 153, 145, 149, 151, 149, 141, 129, 122, 122, 125, 125, 124, 125, 131, 135, 28.14174 + 135, 144, 152, 137, 160, 140, 129, 130, 129, 129, 128, 127, 126, 125, 120, 121, 28.14175 + 124, 125, 126, 127, 128, 126, 116, 120, 120, 119, 128, 129, 131, 140, 127, 133, 28.14176 + 139, 141, 139, 133, 129, 132, 133, 132, 136, 140, 144, 137, 133, 132, 132, 130, 28.14177 + 133, 141, 141, 135, 139, 147, 130, 149, 153, 145, 152, 162, 165, 167, 173, 177, 28.14178 + 183, 183, 179, 174, 175, 176, 176, 179, 183, 185, 185, 184, 185, 186, 187, 188, 28.14179 + 188, 188, 187, 186, 185, 184, 186, 185, 183, 182, 181, 182, 183, 183, 180, 183, 28.14180 + 187, 187, 184, 182, 181, 182, 188, 166, 166, 154, 153, 142, 122, 65, 97, 100, 28.14181 + 105, 107, 100, 84, 62, 51, 44, 48, 56, 142, 184, 195, 196, 197, 194, 200, 28.14182 + 202, 200, 198, 201, 201, 201, 201, 204, 206, 205, 198, 190, 191, 198, 191, 191, 28.14183 + 192, 192, 192, 192, 192, 192, 190, 192, 193, 192, 191, 190, 191, 193, 196, 189, 28.14184 + 184, 186, 188, 185, 181, 180, 174, 180, 177, 176, 178, 170, 168, 178, 176, 163, 28.14185 + 167, 144, 135, 123, 144, 146, 170, 169, 171, 165, 156, 159, 160, 148, 161, 154, 28.14186 + 157, 165, 158, 142, 141, 153, 148, 118, 97, 96, 102, 102, 105, 111, 125, 119, 28.14187 + 116, 120, 126, 131, 141, 147, 138, 156, 147, 129, 130, 131, 131, 128, 127, 125, 28.14188 + 124, 128, 128, 126, 124, 123, 122, 121, 117, 115, 108, 100, 105, 127, 134, 127, 28.14189 + 125, 123, 128, 131, 127, 119, 116, 120, 125, 141, 131, 125, 129, 137, 137, 134, 28.14190 + 132, 138, 140, 144, 142, 127, 110, 109, 118, 129, 148, 151, 144, 151, 160, 163, 28.14191 + 165, 172, 177, 181, 180, 178, 175, 176, 176, 175, 178, 182, 184, 184, 184, 185, 28.14192 + 186, 190, 190, 190, 189, 188, 186, 185, 184, 187, 186, 184, 182, 181, 181, 182, 28.14193 + 182, 181, 181, 182, 181, 180, 180, 183, 185, 183, 168, 174, 161, 161, 147, 122, 28.14194 + 48, 110, 101, 93, 90, 93, 97, 97, 98, 122, 96, 84, 143, 173, 173, 168, 28.14195 + 173, 190, 195, 198, 196, 194, 198, 199, 198, 195, 200, 207, 210, 204, 194, 192, 28.14196 + 195, 196, 196, 196, 195, 194, 193, 191, 190, 189, 190, 191, 190, 189, 188, 189, 28.14197 + 191, 194, 188, 186, 189, 190, 186, 181, 180, 179, 185, 183, 180, 178, 168, 167, 28.14198 + 179, 178, 169, 169, 145, 131, 126, 152, 158, 151, 150, 160, 167, 160, 156, 153, 28.14199 + 142, 151, 158, 160, 154, 152, 155, 150, 143, 126, 91, 74, 85, 96, 89, 87, 28.14200 + 95, 110, 111, 113, 123, 129, 130, 132, 133, 134, 139, 139, 129, 130, 133, 132, 28.14201 + 132, 128, 126, 125, 134, 127, 120, 112, 111, 113, 116, 115, 99, 112, 114, 108, 28.14202 + 107, 108, 118, 137, 125, 128, 126, 121, 117, 120, 125, 127, 123, 113, 104, 106, 28.14203 + 112, 113, 113, 114, 114, 121, 129, 132, 122, 110, 109, 114, 125, 144, 148, 144, 28.14204 + 151, 158, 160, 165, 171, 172, 177, 179, 179, 177, 179, 180, 176, 179, 182, 184, 28.14205 + 184, 185, 187, 188, 190, 191, 191, 190, 189, 188, 187, 186, 187, 186, 184, 182, 28.14206 + 180, 180, 181, 181, 183, 182, 181, 179, 179, 179, 181, 183, 179, 175, 177, 164, 28.14207 + 161, 157, 96, 69, 113, 105, 99, 97, 102, 106, 107, 106, 105, 102, 104, 138, 28.14208 + 165, 183, 197, 207, 185, 190, 193, 191, 189, 193, 195, 196, 196, 200, 206, 210, 28.14209 + 205, 195, 191, 193, 197, 197, 198, 197, 196, 193, 191, 190, 188, 190, 191, 190, 28.14210 + 188, 187, 188, 189, 191, 187, 187, 191, 192, 186, 181, 180, 187, 191, 185, 181, 28.14211 + 180, 171, 166, 176, 176, 172, 170, 149, 129, 132, 157, 168, 169, 160, 165, 169, 28.14212 + 157, 149, 146, 140, 142, 153, 152, 140, 139, 147, 142, 121, 104, 89, 85, 89, 28.14213 + 84, 75, 77, 89, 91, 98, 106, 112, 116, 117, 121, 123, 123, 120, 125, 132, 28.14214 + 133, 136, 134, 133, 132, 129, 128, 120, 115, 107, 105, 109, 115, 120, 121, 118, 28.14215 + 119, 112, 112, 124, 126, 122, 125, 111, 119, 124, 129, 135, 139, 131, 120, 126, 28.14216 + 125, 129, 133, 133, 126, 122, 121, 113, 114, 116, 119, 119, 117, 121, 125, 121, 28.14217 + 139, 145, 143, 151, 157, 159, 163, 166, 169, 174, 176, 179, 179, 181, 183, 177, 28.14218 + 179, 182, 183, 183, 184, 186, 188, 186, 187, 188, 188, 188, 188, 187, 187, 188, 28.14219 + 187, 185, 183, 182, 182, 183, 183, 185, 184, 182, 181, 180, 178, 176, 176, 177, 28.14220 + 181, 172, 157, 153, 160, 69, 118, 109, 105, 104, 106, 105, 102, 94, 88, 107, 28.14221 + 110, 132, 153, 170, 170, 174, 181, 190, 195, 196, 194, 193, 197, 199, 199, 201, 28.14222 + 201, 205, 206, 201, 193, 190, 192, 191, 192, 193, 193, 193, 191, 189, 187, 189, 28.14223 + 190, 191, 190, 188, 187, 188, 189, 188, 186, 187, 192, 192, 186, 182, 181, 189, 28.14224 + 187, 178, 176, 182, 175, 168, 173, 169, 170, 166, 149, 122, 129, 148, 157, 172, 28.14225 + 156, 150, 147, 139, 141, 152, 154, 154, 135, 129, 140, 138, 119, 111, 112, 99, 28.14226 + 96, 90, 73, 59, 61, 71, 80, 80, 87, 91, 87, 85, 88, 100, 110, 111, 28.14227 + 114, 119, 136, 136, 136, 136, 134, 133, 131, 130, 120, 117, 116, 118, 123, 124, 28.14228 + 121, 118, 127, 122, 114, 120, 141, 141, 122, 110, 120, 123, 122, 119, 125, 131, 28.14229 + 122, 109, 114, 114, 117, 117, 113, 108, 110, 117, 135, 128, 118, 111, 109, 110, 28.14230 + 112, 112, 117, 135, 141, 143, 151, 157, 157, 165, 166, 167, 171, 175, 177, 181, 28.14231 + 183, 184, 180, 182, 183, 184, 184, 184, 186, 188, 185, 186, 187, 188, 188, 188, 28.14232 + 188, 187, 191, 190, 188, 187, 186, 187, 188, 189, 187, 185, 183, 182, 180, 177, 28.14233 + 172, 169, 163, 175, 171, 157, 149, 135, 45, 111, 105, 99, 93, 88, 90, 95, 28.14234 + 101, 106, 109, 92, 124, 152, 182, 177, 177, 194, 194, 198, 198, 195, 194, 197, 28.14235 + 200, 199, 204, 201, 201, 201, 197, 191, 190, 193, 190, 191, 193, 195, 194, 193, 28.14236 + 191, 189, 189, 190, 191, 190, 187, 186, 187, 188, 188, 186, 189, 193, 193, 187, 28.14237 + 184, 185, 189, 185, 175, 176, 186, 183, 175, 179, 170, 173, 164, 149, 117, 128, 28.14238 + 139, 144, 142, 138, 143, 146, 143, 147, 153, 148, 132, 123, 118, 122, 122, 114, 28.14239 + 110, 108, 94, 93, 85, 71, 66, 72, 69, 60, 67, 81, 92, 90, 83, 80, 28.14240 + 82, 84, 93, 108, 114, 137, 137, 134, 133, 131, 131, 131, 131, 133, 130, 129, 28.14241 + 130, 132, 130, 124, 119, 106, 130, 141, 133, 120, 109, 116, 137, 136, 137, 128, 28.14242 + 115, 116, 124, 125, 114, 118, 113, 109, 105, 101, 102, 114, 127, 118, 116, 113, 28.14243 + 111, 114, 116, 115, 112, 114, 131, 139, 142, 150, 155, 158, 167, 169, 169, 171, 28.14244 + 173, 177, 181, 182, 183, 181, 183, 184, 183, 182, 182, 184, 186, 186, 187, 187, 28.14245 + 187, 187, 186, 186, 185, 189, 188, 187, 186, 187, 188, 189, 190, 188, 184, 181, 28.14246 + 179, 178, 175, 170, 167, 154, 164, 164, 147, 138, 97, 67, 88, 93, 96, 100, 28.14247 + 102, 104, 105, 107, 111, 124, 107, 138, 147, 176, 177, 179, 195, 192, 196, 198, 28.14248 + 193, 192, 195, 198, 197, 201, 198, 197, 198, 196, 191, 190, 194, 192, 194, 196, 28.14249 + 197, 197, 195, 192, 190, 188, 189, 189, 188, 185, 184, 184, 186, 190, 189, 191, 28.14250 + 195, 194, 189, 188, 190, 191, 188, 179, 179, 186, 182, 178, 184, 175, 177, 163, 28.14251 + 151, 117, 134, 143, 146, 154, 158, 167, 163, 151, 147, 138, 117, 104, 112, 108, 28.14252 + 97, 97, 107, 108, 95, 84, 83, 81, 81, 82, 81, 73, 63, 70, 80, 88, 28.14253 + 90, 88, 88, 82, 74, 83, 91, 90, 137, 136, 132, 131, 129, 130, 131, 132, 28.14254 + 133, 125, 121, 122, 127, 131, 129, 126, 139, 130, 112, 110, 127, 132, 125, 124, 28.14255 + 107, 116, 121, 116, 116, 122, 120, 108, 95, 91, 95, 98, 98, 95, 98, 105, 28.14256 + 105, 112, 121, 126, 126, 120, 109, 102, 110, 129, 137, 142, 151, 155, 158, 168, 28.14257 + 172, 172, 173, 173, 177, 180, 180, 180, 182, 183, 183, 182, 180, 180, 182, 184, 28.14258 + 188, 188, 188, 187, 186, 185, 183, 182, 185, 184, 183, 183, 184, 185, 187, 189, 28.14259 + 187, 183, 178, 175, 174, 173, 170, 168, 166, 159, 149, 122, 116, 72, 126, 106, 28.14260 + 98, 98, 94, 88, 82, 81, 87, 94, 98, 115, 164, 150, 172, 183, 185, 183, 28.14261 + 195, 199, 200, 194, 193, 195, 198, 197, 198, 195, 195, 197, 196, 192, 191, 194, 28.14262 + 190, 192, 194, 195, 193, 191, 187, 185, 186, 187, 188, 186, 184, 182, 182, 184, 28.14263 + 193, 192, 194, 197, 196, 191, 191, 194, 189, 189, 181, 177, 179, 171, 168, 178, 28.14264 + 172, 174, 156, 149, 117, 140, 148, 150, 146, 145, 144, 130, 121, 128, 130, 114, 28.14265 + 112, 94, 88, 94, 90, 74, 74, 87, 86, 79, 77, 77, 75, 72, 82, 95, 28.14266 + 90, 84, 73, 65, 72, 87, 94, 95, 84, 77, 66, 137, 138, 137, 137, 135, 28.14267 + 134, 132, 130, 131, 128, 125, 113, 98, 103, 108, 102, 96, 112, 118, 119, 119, 28.14268 + 113, 111, 118, 127, 120, 121, 125, 119, 101, 89, 90, 103, 97, 94, 90, 91, 28.14269 + 95, 102, 108, 102, 108, 115, 119, 121, 122, 127, 132, 118, 127, 138, 147, 152, 28.14270 + 156, 157, 160, 173, 173, 175, 176, 178, 182, 185, 189, 186, 185, 184, 183, 183, 28.14271 + 184, 185, 186, 185, 185, 186, 187, 188, 190, 191, 192, 184, 181, 187, 188, 179, 28.14272 + 181, 188, 187, 183, 186, 186, 180, 176, 174, 170, 165, 168, 133, 144, 124, 90, 28.14273 + 111, 123, 98, 111, 105, 101, 96, 93, 90, 92, 94, 84, 126, 154, 162, 172, 28.14274 + 177, 180, 186, 193, 196, 199, 198, 195, 194, 196, 199, 207, 202, 196, 194, 194, 28.14275 + 193, 190, 186, 187, 189, 192, 194, 194, 193, 191, 190, 194, 190, 186, 186, 189, 28.14276 + 191, 189, 187, 198, 197, 196, 197, 197, 194, 188, 183, 192, 189, 185, 179, 174, 28.14277 + 172, 173, 174, 174, 156, 165, 139, 95, 150, 150, 160, 145, 143, 142, 137, 126, 28.14278 + 116, 110, 107, 107, 102, 97, 92, 86, 79, 81, 88, 82, 79, 75, 75, 80, 28.14279 + 83, 82, 79, 86, 89, 92, 89, 77, 70, 79, 92, 80, 73, 68, 138, 138, 28.14280 + 137, 135, 133, 131, 129, 128, 129, 125, 124, 117, 107, 114, 119, 112, 104, 111, 28.14281 + 107, 105, 114, 117, 121, 132, 116, 118, 117, 115, 114, 115, 114, 108, 92, 97, 28.14282 + 104, 105, 102, 96, 93, 93, 104, 114, 130, 136, 130, 115, 99, 91, 130, 125, 28.14283 + 128, 137, 144, 145, 150, 156, 166, 169, 174, 176, 178, 180, 182, 184, 188, 187, 28.14284 + 187, 185, 186, 186, 188, 188, 187, 187, 188, 187, 187, 184, 183, 182, 193, 186, 28.14285 + 192, 192, 190, 190, 196, 188, 191, 187, 182, 173, 173, 172, 169, 161, 149, 145, 28.14286 + 144, 118, 105, 114, 111, 114, 110, 109, 108, 106, 102, 100, 98, 98, 97, 133, 28.14287 + 159, 166, 175, 181, 182, 188, 192, 194, 198, 199, 199, 198, 198, 199, 197, 196, 28.14288 + 195, 195, 195, 192, 189, 186, 190, 189, 188, 187, 187, 188, 190, 191, 192, 186, 28.14289 + 179, 177, 180, 188, 196, 200, 200, 200, 199, 195, 190, 187, 186, 186, 188, 183, 28.14290 + 177, 175, 175, 176, 176, 174, 191, 171, 170, 126, 102, 149, 145, 146, 136, 130, 28.14291 + 126, 120, 118, 125, 135, 142, 121, 112, 107, 104, 102, 94, 90, 93, 91, 90, 28.14292 + 88, 89, 92, 97, 101, 105, 110, 109, 110, 107, 96, 80, 73, 70, 80, 98, 28.14293 + 91, 138, 137, 137, 136, 135, 133, 131, 130, 132, 125, 125, 123, 118, 124, 129, 28.14294 + 121, 116, 113, 98, 91, 97, 97, 95, 101, 108, 119, 123, 116, 115, 120, 114, 28.14295 + 100, 108, 101, 89, 78, 78, 88, 108, 121, 132, 124, 112, 102, 104, 115, 132, 28.14296 + 146, 123, 117, 121, 133, 143, 148, 157, 166, 164, 169, 177, 180, 182, 182, 181, 28.14297 + 181, 188, 187, 189, 186, 188, 187, 189, 188, 185, 184, 189, 188, 190, 186, 186, 28.14298 + 185, 191, 182, 185, 188, 187, 190, 191, 180, 186, 185, 183, 180, 181, 176, 164, 28.14299 + 148, 145, 156, 134, 103, 121, 124, 103, 126, 121, 122, 124, 123, 123, 119, 115, 28.14300 + 113, 110, 142, 160, 167, 178, 185, 184, 188, 191, 192, 197, 200, 203, 202, 199, 28.14301 + 196, 187, 191, 195, 196, 195, 191, 188, 187, 190, 190, 188, 187, 187, 188, 189, 28.14302 + 189, 182, 185, 189, 192, 193, 195, 197, 198, 204, 205, 203, 197, 190, 188, 191, 28.14303 + 196, 189, 181, 174, 173, 178, 180, 177, 173, 171, 162, 160, 108, 124, 160, 156, 28.14304 + 149, 143, 135, 126, 113, 100, 91, 87, 84, 112, 106, 102, 107, 111, 107, 103, 28.14305 + 104, 105, 111, 113, 114, 113, 116, 119, 125, 100, 97, 98, 104, 105, 97, 88, 28.14306 + 78, 75, 103, 98, 137, 135, 136, 136, 136, 136, 135, 133, 136, 128, 128, 129, 28.14307 + 125, 127, 130, 120, 126, 125, 115, 107, 109, 103, 95, 98, 83, 91, 97, 100, 28.14308 + 107, 117, 123, 117, 119, 115, 111, 108, 105, 101, 95, 93, 102, 111, 122, 128, 28.14309 + 128, 119, 108, 101, 104, 113, 122, 123, 130, 142, 152, 154, 161, 166, 175, 179, 28.14310 + 181, 179, 181, 181, 187, 187, 187, 187, 187, 187, 187, 188, 184, 185, 186, 186, 28.14311 + 186, 186, 185, 185, 191, 184, 188, 192, 188, 190, 192, 184, 198, 193, 183, 175, 28.14312 + 174, 180, 181, 177, 158, 153, 123, 96, 125, 135, 111, 126, 128, 130, 132, 134, 28.14313 + 133, 130, 126, 125, 122, 145, 160, 168, 181, 186, 184, 188, 192, 192, 195, 200, 28.14314 + 204, 202, 196, 190, 187, 191, 195, 196, 192, 189, 189, 190, 189, 191, 193, 194, 28.14315 + 194, 192, 190, 188, 183, 189, 196, 199, 197, 194, 193, 194, 205, 204, 201, 197, 28.14316 + 194, 193, 195, 197, 191, 186, 181, 178, 179, 179, 177, 177, 171, 172, 168, 103, 28.14317 + 144, 155, 147, 131, 123, 122, 124, 125, 123, 119, 116, 112, 98, 94, 93, 98, 28.14318 + 103, 101, 102, 106, 107, 113, 117, 119, 119, 115, 112, 109, 119, 113, 109, 112, 28.14319 + 113, 110, 102, 93, 84, 94, 93, 132, 132, 133, 134, 136, 136, 138, 136, 137, 28.14320 + 128, 130, 131, 127, 128, 129, 120, 107, 114, 114, 112, 117, 114, 111, 118, 128, 28.14321 + 114, 102, 95, 89, 84, 88, 96, 109, 113, 122, 135, 142, 133, 112, 94, 125, 28.14322 + 122, 116, 113, 114, 119, 124, 128, 127, 146, 148, 127, 122, 140, 151, 144, 157, 28.14323 + 161, 167, 171, 173, 175, 178, 180, 186, 186, 186, 187, 187, 186, 186, 186, 188, 28.14324 + 187, 184, 182, 181, 180, 179, 180, 183, 180, 187, 189, 181, 183, 188, 185, 186, 28.14325 + 195, 200, 196, 190, 185, 179, 174, 156, 140, 133, 120, 128, 142, 132, 133, 131, 28.14326 + 131, 132, 132, 132, 131, 130, 129, 130, 149, 162, 172, 187, 191, 191, 194, 196, 28.14327 + 194, 195, 199, 201, 199, 192, 187, 194, 196, 196, 193, 189, 188, 190, 194, 193, 28.14328 + 193, 193, 193, 193, 192, 192, 192, 195, 193, 189, 184, 181, 185, 194, 202, 206, 28.14329 + 201, 197, 196, 198, 197, 191, 185, 185, 186, 185, 181, 178, 175, 178, 183, 170, 28.14330 + 176, 166, 101, 151, 152, 154, 142, 155, 146, 136, 124, 113, 106, 102, 97, 107, 28.14331 + 105, 103, 103, 101, 98, 102, 108, 120, 117, 115, 115, 119, 118, 113, 108, 114, 28.14332 + 115, 118, 119, 119, 118, 114, 107, 96, 90, 82, 129, 128, 130, 132, 133, 133, 28.14333 + 134, 135, 134, 125, 128, 134, 128, 128, 132, 127, 106, 109, 104, 98, 100, 99, 28.14334 + 98, 107, 106, 100, 105, 119, 123, 115, 114, 123, 116, 108, 104, 108, 121, 127, 28.14335 + 125, 120, 98, 103, 112, 125, 137, 145, 149, 149, 144, 159, 153, 124, 116, 135, 28.14336 + 149, 144, 157, 158, 163, 167, 171, 174, 179, 183, 185, 186, 186, 187, 187, 186, 28.14337 + 186, 185, 184, 184, 183, 183, 183, 184, 184, 186, 179, 177, 186, 185, 179, 179, 28.14338 + 190, 187, 181, 192, 203, 195, 181, 162, 149, 137, 143, 133, 157, 154, 136, 144, 28.14339 + 148, 147, 139, 138, 138, 137, 136, 137, 137, 137, 136, 154, 167, 179, 194, 195, 28.14340 + 195, 202, 199, 199, 199, 197, 198, 196, 192, 189, 201, 199, 195, 191, 188, 189, 28.14341 + 192, 195, 197, 194, 189, 186, 186, 190, 196, 200, 193, 192, 190, 189, 190, 194, 28.14342 + 199, 204, 212, 205, 200, 201, 205, 202, 191, 180, 175, 180, 183, 181, 176, 174, 28.14343 + 182, 188, 164, 166, 147, 92, 141, 144, 160, 158, 152, 150, 149, 147, 146, 141, 28.14344 + 136, 131, 121, 119, 120, 121, 118, 117, 123, 132, 112, 102, 92, 89, 95, 101, 28.14345 + 103, 102, 108, 119, 129, 134, 136, 134, 129, 122, 121, 118, 102, 132, 131, 131, 28.14346 + 132, 133, 133, 134, 133, 134, 126, 131, 137, 131, 130, 137, 135, 134, 133, 120, 28.14347 + 109, 110, 104, 98, 102, 113, 118, 131, 141, 142, 133, 123, 117, 133, 128, 123, 28.14348 + 117, 115, 108, 100, 93, 100, 103, 108, 118, 127, 132, 132, 131, 133, 135, 130, 28.14349 + 119, 118, 127, 135, 135, 148, 152, 157, 163, 168, 171, 176, 179, 179, 180, 181, 28.14350 + 182, 182, 181, 180, 180, 174, 175, 177, 178, 177, 175, 171, 169, 173, 167, 172, 28.14351 + 173, 170, 174, 184, 181, 184, 179, 166, 147, 138, 141, 150, 155, 149, 142, 164, 28.14352 + 161, 148, 151, 150, 153, 150, 149, 149, 150, 149, 149, 148, 147, 140, 156, 171, 28.14353 + 183, 195, 195, 195, 204, 202, 201, 201, 199, 195, 195, 196, 198, 202, 198, 192, 28.14354 + 189, 189, 191, 193, 194, 194, 193, 191, 191, 192, 194, 198, 200, 188, 191, 197, 28.14355 + 203, 207, 207, 203, 200, 206, 203, 200, 202, 204, 201, 193, 186, 173, 176, 181, 28.14356 + 180, 178, 178, 184, 187, 182, 172, 143, 101, 133, 129, 143, 135, 132, 135, 139, 28.14357 + 143, 144, 140, 129, 122, 129, 127, 130, 136, 140, 142, 147, 151, 145, 135, 129, 28.14358 + 126, 129, 134, 140, 142, 151, 158, 161, 158, 154, 147, 136, 125, 148, 155, 140, 28.14359 + 139, 136, 137, 135, 136, 135, 134, 134, 138, 130, 135, 140, 132, 129, 138, 138, 28.14360 + 135, 132, 122, 121, 129, 126, 115, 115, 121, 129, 131, 124, 126, 135, 138, 132, 28.14361 + 138, 139, 137, 132, 125, 122, 121, 123, 122, 120, 119, 124, 132, 139, 143, 143, 28.14362 + 149, 139, 137, 148, 154, 149, 144, 144, 136, 140, 148, 155, 160, 165, 167, 170, 28.14363 + 175, 176, 178, 179, 179, 178, 176, 176, 172, 173, 173, 170, 162, 151, 139, 132, 28.14364 + 135, 127, 127, 130, 131, 137, 146, 139, 129, 137, 146, 153, 161, 168, 169, 165, 28.14365 + 171, 158, 154, 147, 154, 161, 145, 151, 154, 154, 155, 156, 154, 153, 151, 148, 28.14366 + 140, 158, 174, 184, 194, 191, 191, 203, 203, 203, 202, 197, 194, 194, 199, 204, 28.14367 + 201, 196, 191, 189, 192, 195, 195, 193, 186, 191, 198, 204, 205, 203, 198, 195, 28.14368 + 197, 195, 193, 195, 200, 204, 205, 204, 190, 190, 191, 193, 194, 193, 191, 189, 28.14369 + 181, 181, 181, 181, 181, 182, 182, 181, 177, 162, 137, 118, 146, 144, 150, 138, 28.14370 + 148, 144, 138, 137, 138, 140, 141, 140, 139, 134, 134, 142, 149, 148, 147, 144, 28.14371 + 144, 143, 145, 144, 143, 142, 142, 146, 150, 152, 151, 147, 148, 151, 145, 137, 28.14372 + 134, 142, 138, 138, 129, 128, 130, 136, 134, 133, 133, 139, 136, 135, 138, 140, 28.14373 + 135, 138, 138, 136, 135, 134, 130, 127, 126, 129, 133, 137, 138, 135, 134, 135, 28.14374 + 140, 142, 144, 141, 144, 148, 150, 148, 144, 138, 134, 127, 135, 134, 130, 136, 28.14375 + 139, 145, 157, 148, 149, 151, 153, 154, 155, 155, 153, 160, 154, 147, 142, 144, 28.14376 + 152, 161, 168, 172, 172, 170, 165, 161, 163, 171, 179, 168, 161, 146, 130, 126, 28.14377 + 133, 142, 148, 161, 164, 167, 167, 164, 161, 164, 165, 170, 170, 170, 171, 169, 28.14378 + 169, 170, 170, 166, 166, 166, 166, 165, 164, 162, 161, 163, 158, 156, 157, 157, 28.14379 + 154, 156, 158, 151, 161, 173, 180, 188, 200, 203, 201, 199, 195, 195, 200, 200, 28.14380 + 196, 194, 201, 205, 198, 189, 187, 192, 195, 193, 188, 191, 197, 199, 195, 194, 28.14381 + 197, 195, 189, 187, 196, 203, 202, 196, 194, 200, 207, 201, 194, 188, 191, 198, 28.14382 + 200, 194, 187, 180, 180, 180, 182, 183, 181, 179, 175, 165, 172, 101, 150, 140, 28.14383 + 142, 152, 155, 153, 151, 150, 148, 147, 144, 143, 140, 145, 143, 141, 141, 143, 28.14384 + 148, 154, 156, 150, 149, 150, 150, 150, 149, 147, 147, 149, 150, 158, 162, 158, 28.14385 + 157, 147, 125, 122, 130, 153, 136, 134, 136, 140, 139, 135, 134, 138, 139, 136, 28.14386 + 137, 139, 139, 136, 136, 137, 132, 134, 136, 138, 136, 136, 138, 139, 143, 143, 28.14387 + 143, 143, 144, 148, 150, 150, 145, 146, 148, 149, 148, 147, 148, 147, 138, 149, 28.14388 + 151, 149, 152, 148, 146, 154, 154, 154, 154, 155, 156, 158, 160, 161, 159, 159, 28.14389 + 159, 159, 159, 159, 159, 159, 150, 152, 153, 149, 145, 145, 150, 154, 143, 152, 28.14390 + 161, 166, 172, 176, 174, 169, 171, 172, 173, 173, 170, 170, 172, 173, 173, 173, 28.14391 + 172, 171, 170, 169, 168, 168, 168, 167, 166, 165, 163, 162, 159, 159, 166, 163, 28.14392 + 162, 165, 162, 158, 158, 160, 157, 157, 169, 186, 198, 200, 203, 208, 199, 195, 28.14393 + 194, 197, 197, 192, 192, 198, 199, 196, 190, 187, 189, 193, 196, 198, 195, 199, 28.14394 + 200, 197, 197, 200, 199, 194, 191, 195, 198, 199, 198, 198, 201, 205, 203, 197, 28.14395 + 191, 190, 192, 191, 185, 179, 179, 179, 180, 179, 179, 177, 173, 171, 171, 159, 28.14396 + 112, 149, 145, 148, 154, 149, 153, 153, 151, 152, 154, 155, 155, 155, 152, 150, 28.14397 + 145, 142, 142, 144, 146, 148, 152, 150, 152, 149, 150, 149, 153, 153, 168, 157, 28.14398 + 153, 144, 141, 149, 158, 148, 107, 136, 159, 128, 129, 135, 139, 135, 129, 130, 28.14399 + 137, 138, 135, 135, 139, 141, 138, 139, 141, 133, 137, 142, 145, 143, 140, 140, 28.14400 + 139, 142, 143, 146, 147, 148, 150, 151, 152, 144, 143, 142, 142, 144, 147, 149, 28.14401 + 151, 145, 156, 157, 156, 158, 152, 147, 153, 156, 155, 154, 153, 155, 157, 160, 28.14402 + 162, 162, 164, 167, 170, 170, 167, 164, 162, 173, 176, 179, 178, 175, 172, 173, 28.14403 + 174, 173, 178, 180, 178, 177, 176, 172, 166, 180, 179, 175, 175, 177, 179, 178, 28.14404 + 178, 181, 180, 178, 176, 174, 173, 169, 169, 177, 175, 172, 170, 166, 165, 164, 28.14405 + 164, 166, 164, 166, 170, 168, 163, 161, 162, 162, 153, 163, 187, 200, 195, 197, 28.14406 + 208, 199, 195, 193, 194, 194, 191, 192, 196, 194, 194, 192, 188, 185, 188, 195, 28.14407 + 201, 196, 199, 198, 195, 196, 200, 200, 199, 199, 198, 197, 197, 198, 199, 200, 28.14408 + 199, 205, 202, 197, 194, 192, 188, 184, 181, 181, 179, 180, 181, 181, 180, 176, 28.14409 + 172, 166, 135, 126, 145, 149, 155, 160, 148, 155, 155, 154, 154, 156, 158, 160, 28.14410 + 161, 160, 158, 154, 151, 150, 150, 149, 150, 157, 157, 158, 154, 152, 152, 158, 28.14411 + 161, 153, 152, 161, 162, 155, 152, 150, 135, 142, 104, 137, 124, 125, 129, 134, 28.14412 + 134, 131, 132, 136, 136, 133, 135, 140, 143, 141, 142, 145, 139, 142, 145, 145, 28.14413 + 144, 140, 138, 137, 138, 140, 143, 147, 148, 149, 149, 149, 146, 145, 143, 143, 28.14414 + 146, 149, 152, 154, 151, 159, 157, 154, 159, 158, 156, 165, 159, 159, 160, 160, 28.14415 + 161, 163, 165, 166, 172, 171, 170, 170, 172, 174, 176, 178, 170, 173, 175, 175, 28.14416 + 172, 170, 169, 169, 180, 180, 177, 171, 172, 178, 182, 182, 187, 182, 177, 177, 28.14417 + 179, 181, 180, 179, 183, 181, 180, 179, 177, 176, 172, 172, 182, 180, 177, 174, 28.14418 + 170, 171, 172, 173, 166, 164, 165, 169, 167, 163, 161, 163, 166, 157, 161, 178, 28.14419 + 189, 190, 193, 201, 201, 197, 195, 192, 192, 190, 191, 193, 194, 195, 193, 190, 28.14420 + 187, 188, 192, 195, 194, 194, 192, 191, 192, 195, 198, 198, 203, 201, 199, 197, 28.14421 + 196, 196, 195, 195, 199, 199, 197, 195, 191, 188, 187, 187, 179, 178, 178, 178, 28.14422 + 180, 179, 175, 173, 160, 117, 142, 142, 148, 155, 157, 145, 159, 158, 156, 154, 28.14423 + 153, 154, 155, 157, 161, 161, 159, 159, 159, 159, 158, 158, 159, 161, 161, 157, 28.14424 + 152, 152, 155, 160, 161, 157, 159, 157, 146, 145, 148, 139, 135, 127, 120, 133, 28.14425 + 128, 127, 133, 138, 140, 142, 144, 140, 137, 138, 143, 144, 141, 140, 143, 142, 28.14426 + 143, 143, 142, 140, 139, 139, 140, 137, 139, 143, 145, 147, 147, 146, 147, 153, 28.14427 + 152, 152, 153, 153, 154, 156, 157, 156, 163, 160, 159, 167, 166, 164, 171, 163, 28.14428 + 165, 168, 171, 172, 172, 171, 170, 176, 174, 171, 170, 171, 174, 178, 181, 180, 28.14429 + 181, 181, 180, 179, 178, 178, 179, 167, 173, 178, 180, 183, 186, 184, 181, 189, 28.14430 + 184, 179, 176, 177, 179, 177, 174, 175, 175, 175, 173, 172, 172, 171, 171, 176, 28.14431 + 174, 170, 168, 168, 169, 170, 172, 169, 165, 162, 164, 165, 162, 164, 168, 165, 28.14432 + 164, 163, 166, 177, 190, 197, 198, 200, 200, 198, 194, 193, 193, 192, 192, 192, 28.14433 + 191, 189, 190, 192, 193, 190, 189, 193, 191, 189, 189, 190, 192, 194, 197, 196, 28.14434 + 199, 200, 198, 194, 192, 195, 198, 189, 191, 191, 189, 186, 184, 184, 186, 179, 28.14435 + 178, 176, 173, 173, 170, 166, 164, 161, 121, 160, 145, 147, 147, 149, 143, 160, 28.14436 + 161, 159, 156, 153, 152, 153, 155, 155, 156, 155, 156, 157, 158, 157, 157, 152, 28.14437 + 154, 156, 156, 153, 151, 153, 154, 160, 154, 157, 157, 148, 147, 151, 145, 138, 28.14438 + 131, 162, 140, 132, 128, 134, 141, 144, 146, 146, 145, 142, 142, 144, 142, 137, 28.14439 + 134, 136, 139, 139, 139, 137, 137, 138, 141, 145, 140, 142, 145, 147, 148, 148, 28.14440 + 147, 147, 153, 153, 154, 155, 155, 155, 155, 155, 152, 161, 162, 164, 171, 166, 28.14441 + 158, 161, 160, 163, 167, 171, 172, 171, 168, 166, 173, 173, 173, 173, 172, 171, 28.14442 + 170, 169, 172, 171, 169, 168, 168, 170, 171, 172, 176, 180, 182, 180, 178, 177, 28.14443 + 174, 168, 186, 183, 179, 177, 177, 175, 174, 173, 174, 173, 173, 173, 174, 174, 28.14444 + 175, 175, 171, 173, 170, 169, 169, 171, 171, 172, 173, 168, 164, 166, 167, 165, 28.14445 + 168, 172, 166, 170, 169, 162, 169, 186, 197, 197, 197, 198, 197, 194, 193, 194, 28.14446 + 191, 188, 185, 184, 184, 188, 193, 196, 193, 191, 196, 192, 189, 191, 192, 191, 28.14447 + 193, 197, 187, 192, 197, 197, 194, 194, 197, 200, 190, 190, 190, 188, 185, 182, 28.14448 + 182, 183, 186, 185, 180, 175, 170, 164, 158, 154, 150, 126, 161, 149, 153, 152, 28.14449 + 157, 157, 157, 160, 162, 161, 157, 156, 157, 160, 157, 157, 155, 155, 155, 156, 28.14450 + 155, 155, 149, 150, 152, 155, 156, 156, 155, 155, 148, 143, 151, 159, 154, 150, 28.14451 + 150, 139, 134, 126, 139, 137, 133, 132, 136, 138, 136, 138, 142, 142, 140, 141, 28.14452 + 143, 141, 135, 132, 133, 138, 138, 140, 137, 138, 138, 141, 145, 144, 145, 145, 28.14453 + 146, 146, 146, 146, 146, 148, 148, 148, 149, 151, 152, 152, 152, 150, 157, 159, 28.14454 + 160, 167, 163, 154, 157, 158, 160, 163, 165, 167, 166, 165, 164, 171, 172, 173, 28.14455 + 173, 172, 170, 168, 167, 173, 172, 171, 172, 174, 175, 175, 175, 172, 173, 171, 28.14456 + 167, 170, 178, 183, 184, 181, 181, 182, 179, 177, 176, 176, 175, 176, 176, 176, 28.14457 + 176, 176, 177, 177, 177, 175, 175, 175, 175, 173, 173, 173, 173, 170, 166, 166, 28.14458 + 170, 169, 167, 168, 172, 171, 171, 170, 167, 168, 171, 182, 191, 190, 195, 197, 28.14459 + 193, 192, 193, 191, 184, 183, 182, 183, 184, 185, 188, 193, 197, 197, 192, 191, 28.14460 + 194, 194, 191, 192, 197, 188, 190, 194, 196, 197, 197, 195, 194, 192, 191, 189, 28.14461 + 188, 187, 185, 183, 183, 184, 181, 175, 169, 163, 156, 152, 148, 144, 139, 152, 28.14462 + 148, 157, 156, 160, 165, 155, 160, 163, 164, 160, 158, 159, 161, 161, 160, 158, 28.14463 + 157, 157, 158, 158, 156, 152, 147, 144, 145, 149, 150, 148, 144, 155, 137, 130, 28.14464 + 130, 127, 132, 142, 140, 135, 57, 89, 136, 136, 139, 140, 136, 131, 133, 137, 28.14465 + 135, 134, 136, 140, 140, 136, 134, 136, 142, 143, 142, 141, 138, 138, 138, 140, 28.14466 + 144, 144, 144, 144, 144, 144, 144, 144, 150, 150, 149, 149, 152, 154, 156, 158, 28.14467 + 158, 161, 157, 155, 164, 165, 163, 169, 164, 164, 166, 167, 168, 169, 170, 170, 28.14468 + 174, 173, 171, 170, 170, 173, 175, 177, 169, 169, 170, 172, 175, 175, 174, 173, 28.14469 + 176, 179, 179, 176, 176, 179, 179, 176, 176, 179, 182, 182, 179, 176, 178, 180, 28.14470 + 175, 174, 174, 174, 174, 172, 172, 172, 176, 177, 177, 176, 174, 173, 172, 171, 28.14471 + 166, 164, 167, 171, 171, 167, 166, 169, 178, 171, 170, 176, 169, 156, 163, 180, 28.14472 + 187, 192, 195, 192, 192, 193, 191, 182, 183, 184, 187, 181, 177, 178, 190, 198, 28.14473 + 198, 191, 193, 194, 194, 189, 190, 195, 196, 193, 193, 196, 200, 198, 191, 184, 28.14474 + 187, 185, 183, 183, 184, 184, 182, 182, 170, 168, 163, 158, 153, 149, 144, 140, 28.14475 + 154, 156, 151, 149, 156, 151, 149, 152, 154, 159, 164, 164, 160, 156, 156, 158, 28.14476 + 159, 158, 156, 156, 157, 159, 160, 159, 151, 142, 133, 131, 134, 135, 131, 126, 28.14477 + 131, 120, 126, 137, 132, 124, 116, 102, 117, 84, 109, 134, 134, 136, 136, 137, 28.14478 + 135, 130, 123, 126, 128, 132, 135, 137, 137, 136, 136, 140, 141, 141, 142, 141, 28.14479 + 141, 142, 142, 137, 142, 146, 147, 144, 144, 147, 150, 148, 148, 149, 150, 150, 28.14480 + 151, 154, 154, 154, 152, 151, 150, 152, 155, 161, 164, 158, 162, 166, 168, 167, 28.14481 + 166, 166, 167, 166, 167, 167, 168, 170, 171, 172, 172, 168, 169, 170, 170, 170, 28.14482 + 172, 176, 179, 179, 175, 171, 172, 176, 178, 176, 173, 179, 170, 174, 178, 170, 28.14483 + 168, 175, 176, 180, 176, 172, 170, 169, 169, 171, 173, 171, 172, 173, 173, 172, 28.14484 + 170, 166, 164, 165, 163, 165, 170, 172, 169, 168, 172, 172, 172, 171, 172, 175, 28.14485 + 172, 168, 163, 182, 177, 175, 176, 182, 186, 186, 183, 180, 179, 180, 169, 166, 28.14486 + 181, 189, 171, 184, 191, 191, 187, 190, 186, 187, 196, 195, 194, 192, 190, 188, 28.14487 + 187, 187, 187, 187, 185, 183, 181, 179, 177, 175, 174, 172, 166, 155, 147, 146, 28.14488 + 149, 157, 162, 161, 161, 161, 157, 155, 155, 160, 164, 160, 158, 156, 160, 164, 28.14489 + 164, 157, 151, 155, 156, 157, 160, 160, 153, 140, 128, 114, 115, 115, 116, 120, 28.14490 + 125, 122, 116, 120, 118, 120, 126, 134, 134, 127, 117, 107, 93, 88, 138, 135, 28.14491 + 133, 132, 133, 134, 133, 130, 140, 138, 135, 131, 133, 134, 136, 139, 141, 142, 28.14492 + 143, 144, 143, 144, 144, 144, 141, 141, 142, 144, 146, 146, 146, 145, 148, 148, 28.14493 + 149, 150, 151, 151, 154, 154, 152, 152, 153, 154, 155, 157, 161, 162, 158, 161, 28.14494 + 165, 166, 167, 167, 168, 169, 170, 170, 170, 170, 170, 171, 171, 171, 170, 171, 28.14495 + 172, 172, 171, 172, 174, 176, 177, 174, 170, 172, 175, 177, 175, 172, 180, 169, 28.14496 + 172, 179, 175, 173, 174, 168, 172, 171, 168, 166, 166, 168, 170, 172, 173, 175, 28.14497 + 174, 173, 172, 171, 169, 169, 169, 166, 168, 172, 172, 169, 167, 170, 174, 176, 28.14498 + 177, 179, 181, 181, 177, 175, 174, 165, 155, 153, 158, 166, 172, 175, 179, 173, 28.14499 + 169, 161, 159, 175, 186, 177, 185, 193, 193, 190, 194, 190, 185, 190, 188, 188, 28.14500 + 188, 189, 189, 190, 190, 190, 185, 181, 178, 180, 186, 188, 185, 181, 162, 161, 28.14501 + 156, 152, 151, 155, 160, 162, 164, 165, 164, 161, 157, 154, 155, 157, 161, 159, 28.14502 + 158, 162, 167, 168, 164, 159, 163, 161, 157, 156, 157, 158, 157, 154, 131, 126, 28.14503 + 119, 114, 116, 123, 126, 124, 136, 135, 137, 140, 141, 132, 116, 102, 116, 118, 28.14504 + 116, 133, 129, 128, 129, 130, 130, 130, 129, 138, 135, 132, 129, 129, 130, 131, 28.14505 + 135, 138, 140, 141, 142, 143, 144, 145, 145, 146, 143, 141, 144, 148, 148, 147, 28.14506 + 141, 148, 148, 148, 149, 151, 152, 152, 152, 151, 153, 155, 157, 159, 159, 159, 28.14507 + 158, 159, 161, 164, 165, 165, 166, 169, 171, 171, 171, 170, 169, 168, 168, 169, 28.14508 + 169, 171, 173, 175, 174, 173, 171, 172, 173, 176, 173, 171, 172, 175, 176, 174, 28.14509 + 171, 179, 167, 170, 178, 177, 175, 172, 162, 167, 165, 163, 163, 164, 165, 168, 28.14510 + 171, 175, 176, 174, 172, 169, 170, 171, 171, 173, 170, 171, 173, 172, 168, 167, 28.14511 + 170, 168, 173, 177, 179, 179, 178, 178, 179, 181, 177, 174, 173, 175, 174, 171, 28.14512 + 165, 173, 161, 159, 159, 156, 161, 170, 168, 167, 175, 177, 181, 192, 191, 184, 28.14513 + 186, 183, 184, 186, 187, 188, 188, 187, 186, 184, 176, 170, 171, 176, 177, 170, 28.14514 + 163, 156, 157, 158, 161, 163, 164, 166, 166, 166, 168, 169, 167, 164, 161, 157, 28.14515 + 157, 157, 156, 154, 158, 163, 166, 164, 162, 165, 164, 160, 158, 158, 161, 166, 28.14516 + 167, 162, 157, 149, 142, 142, 147, 149, 148, 145, 137, 128, 123, 122, 120, 115, 28.14517 + 110, 120, 129, 125, 116, 114, 116, 121, 124, 121, 119, 118, 119, 121, 125, 128, 28.14518 + 129, 130, 128, 128, 135, 136, 139, 140, 141, 142, 143, 143, 147, 146, 145, 147, 28.14519 + 149, 149, 147, 143, 149, 148, 149, 149, 151, 152, 153, 153, 153, 154, 156, 158, 28.14520 + 160, 160, 160, 159, 162, 163, 164, 164, 164, 165, 167, 170, 167, 167, 165, 165, 28.14521 + 165, 165, 166, 167, 170, 172, 175, 175, 174, 172, 172, 172, 175, 173, 172, 173, 28.14522 + 175, 176, 174, 171, 177, 169, 172, 177, 173, 173, 172, 161, 164, 163, 162, 161, 28.14523 + 161, 163, 166, 167, 172, 174, 173, 173, 170, 170, 170, 169, 174, 171, 170, 173, 28.14524 + 173, 169, 169, 171, 167, 173, 178, 177, 175, 175, 177, 180, 176, 177, 180, 183, 28.14525 + 182, 178, 170, 164, 172, 161, 165, 171, 164, 159, 160, 157, 160, 165, 166, 171, 28.14526 + 185, 184, 177, 178, 182, 183, 184, 183, 182, 179, 175, 173, 179, 173, 167, 165, 28.14527 + 165, 163, 157, 152, 159, 163, 166, 169, 171, 172, 172, 173, 169, 170, 171, 169, 28.14528 + 168, 166, 166, 164, 158, 156, 154, 156, 160, 163, 163, 163, 164, 168, 170, 170, 28.14529 + 167, 165, 165, 163, 157, 158, 160, 156, 155, 153, 150, 143, 143, 132, 121, 112, 28.14530 + 112, 114, 116, 114, 109, 115, 117, 108, 101, 102, 107, 110, 108, 109, 114, 113, 28.14531 + 115, 122, 127, 130, 131, 131, 132, 136, 136, 138, 139, 140, 140, 143, 143, 147, 28.14532 + 150, 152, 153, 150, 149, 149, 149, 149, 148, 149, 150, 151, 151, 153, 153, 155, 28.14533 + 154, 156, 156, 157, 158, 160, 161, 164, 165, 166, 165, 163, 163, 165, 167, 165, 28.14534 + 164, 163, 163, 164, 166, 168, 170, 167, 169, 172, 173, 172, 171, 171, 172, 173, 28.14535 + 173, 173, 174, 175, 175, 173, 171, 174, 168, 173, 173, 166, 167, 170, 164, 165, 28.14536 + 163, 162, 161, 161, 160, 161, 164, 169, 171, 173, 175, 175, 173, 169, 167, 172, 28.14537 + 169, 169, 172, 173, 171, 170, 175, 176, 179, 182, 181, 178, 177, 179, 182, 176, 28.14538 + 174, 171, 171, 174, 178, 181, 183, 196, 185, 191, 200, 192, 183, 184, 184, 176, 28.14539 + 177, 172, 169, 177, 174, 165, 167, 174, 175, 175, 174, 171, 167, 163, 161, 164, 28.14540 + 165, 166, 166, 166, 165, 167, 170, 168, 169, 170, 172, 175, 176, 175, 176, 171, 28.14541 + 170, 169, 167, 166, 166, 166, 167, 165, 163, 160, 160, 162, 164, 165, 165, 165, 28.14542 + 170, 174, 175, 172, 167, 165, 163, 151, 155, 161, 160, 159, 156, 151, 143, 148, 28.14543 + 145, 143, 139, 136, 126, 117, 108, 106, 105, 113, 114, 102, 96, 99, 103, 104, 28.14544 + 111, 120, 121, 122, 122, 125, 127, 132, 137, 142, 140, 141, 141, 142, 143, 143, 28.14545 + 146, 146, 146, 151, 156, 156, 152, 149, 152, 154, 150, 149, 149, 150, 151, 152, 28.14546 + 153, 154, 155, 155, 156, 155, 156, 157, 160, 161, 163, 165, 166, 166, 164, 164, 28.14547 + 165, 166, 167, 166, 165, 165, 166, 169, 172, 172, 166, 167, 170, 170, 170, 170, 28.14548 + 171, 172, 171, 172, 173, 174, 174, 173, 172, 171, 169, 168, 174, 171, 162, 164, 28.14549 + 169, 162, 163, 163, 162, 162, 160, 160, 160, 163, 167, 171, 175, 178, 178, 175, 28.14550 + 169, 166, 169, 166, 166, 170, 171, 171, 171, 177, 179, 180, 181, 180, 178, 177, 28.14551 + 177, 178, 180, 180, 180, 180, 180, 179, 177, 178, 172, 161, 164, 169, 162, 160, 28.14552 + 167, 171, 176, 178, 171, 165, 173, 168, 165, 169, 173, 174, 175, 174, 173, 171, 28.14553 + 169, 168, 162, 166, 171, 171, 169, 170, 175, 179, 172, 172, 170, 171, 172, 173, 28.14554 + 173, 174, 174, 171, 168, 165, 164, 163, 161, 160, 165, 164, 161, 160, 160, 161, 28.14555 + 161, 162, 162, 163, 163, 164, 163, 163, 163, 165, 161, 165, 168, 164, 164, 164, 28.14556 + 166, 162, 163, 160, 158, 153, 149, 141, 134, 127, 125, 110, 107, 104, 92, 89, 28.14557 + 96, 99, 96, 101, 110, 118, 118, 119, 121, 126, 130, 136, 140, 141, 143, 143, 28.14558 + 143, 143, 144, 146, 146, 147, 151, 153, 153, 154, 153, 155, 152, 150, 148, 149, 28.14559 + 149, 151, 152, 154, 154, 153, 153, 156, 157, 157, 157, 157, 157, 159, 162, 165, 28.14560 + 167, 166, 166, 167, 168, 170, 169, 167, 165, 166, 168, 171, 171, 168, 168, 169, 28.14561 + 168, 166, 166, 168, 170, 167, 169, 172, 173, 172, 170, 169, 168, 167, 166, 171, 28.14562 + 170, 162, 166, 167, 155, 160, 160, 158, 159, 159, 160, 161, 163, 165, 168, 171, 28.14563 + 173, 173, 171, 167, 165, 167, 163, 164, 167, 167, 166, 169, 175, 175, 174, 172, 28.14564 + 171, 172, 172, 171, 170, 168, 172, 178, 179, 176, 168, 159, 155, 180, 174, 177, 28.14565 + 178, 171, 171, 180, 181, 168, 174, 170, 167, 173, 171, 170, 178, 175, 175, 175, 28.14566 + 175, 175, 175, 175, 175, 169, 171, 173, 172, 171, 171, 173, 174, 171, 170, 171, 28.14567 + 170, 170, 170, 171, 173, 174, 170, 168, 167, 167, 165, 161, 158, 161, 161, 160, 28.14568 + 160, 159, 159, 159, 160, 160, 159, 157, 158, 161, 163, 162, 162, 159, 164, 166, 28.14569 + 159, 159, 160, 166, 164, 172, 165, 160, 152, 151, 148, 150, 147, 136, 127, 117, 28.14570 + 77, 71, 77, 88, 90, 80, 78, 82, 98, 103, 110, 117, 122, 126, 126, 127, 28.14571 + 138, 140, 139, 139, 139, 140, 140, 141, 148, 146, 145, 149, 154, 155, 152, 148, 28.14572 + 150, 148, 150, 151, 152, 155, 156, 156, 153, 155, 158, 160, 160, 158, 155, 153, 28.14573 + 153, 157, 162, 165, 166, 166, 167, 168, 171, 169, 166, 164, 164, 165, 168, 169, 28.14574 + 171, 170, 169, 166, 164, 163, 165, 167, 164, 167, 170, 171, 170, 168, 167, 166, 28.14575 + 168, 165, 169, 171, 169, 171, 166, 148, 157, 156, 157, 157, 159, 160, 162, 164, 28.14576 + 163, 166, 167, 166, 168, 165, 164, 163, 168, 163, 163, 166, 167, 164, 167, 173, 28.14577 + 174, 171, 167, 167, 170, 172, 170, 168, 172, 172, 171, 170, 169, 170, 173, 177, 28.14578 + 175, 177, 183, 183, 173, 175, 177, 171, 177, 185, 181, 178, 180, 176, 173, 181, 28.14579 + 174, 173, 173, 172, 172, 172, 172, 173, 176, 174, 173, 176, 179, 182, 181, 179, 28.14580 + 172, 172, 172, 173, 173, 171, 171, 170, 170, 168, 170, 172, 174, 172, 167, 162, 28.14581 + 164, 164, 165, 164, 164, 163, 164, 165, 166, 166, 166, 170, 174, 173, 166, 163, 28.14582 + 161, 167, 171, 166, 165, 165, 168, 166, 166, 166, 167, 164, 160, 152, 144, 138, 28.14583 + 130, 143, 145, 86, 83, 84, 85, 84, 86, 72, 45, 91, 100, 104, 104, 104, 28.14584 + 107, 111, 113, 116, 129, 129, 129, 134, 132, 133, 143, 135, 144, 152, 153, 149, 28.14585 + 147, 147, 150, 151, 147, 148, 155, 156, 154, 156, 160, 161, 163, 166, 166, 163, 28.14586 + 161, 160, 158, 161, 160, 158, 159, 160, 160, 158, 157, 163, 164, 165, 167, 168, 28.14587 + 170, 173, 173, 167, 166, 164, 163, 163, 164, 165, 166, 166, 168, 167, 163, 163, 28.14588 + 168, 170, 168, 169, 175, 179, 175, 169, 168, 171, 177, 168, 167, 165, 162, 159, 28.14589 + 159, 160, 165, 166, 171, 172, 169, 170, 170, 166, 159, 163, 165, 168, 167, 165, 28.14590 + 166, 170, 175, 176, 174, 173, 175, 177, 176, 172, 169, 165, 168, 172, 175, 177, 28.14591 + 177, 175, 175, 178, 180, 180, 180, 179, 180, 182, 184, 184, 184, 183, 182, 180, 28.14592 + 179, 179, 176, 179, 179, 179, 178, 176, 174, 172, 171, 173, 171, 170, 172, 175, 28.14593 + 178, 179, 179, 177, 175, 173, 171, 170, 170, 171, 172, 173, 171, 169, 167, 166, 28.14594 + 165, 166, 166, 169, 172, 168, 159, 160, 164, 166, 163, 168, 165, 163, 165, 169, 28.14595 + 171, 169, 166, 167, 168, 170, 165, 164, 161, 166, 167, 161, 160, 163, 160, 158, 28.14596 + 149, 143, 138, 141, 144, 149, 79, 76, 82, 83, 78, 73, 62, 40, 88, 98, 28.14597 + 104, 102, 98, 101, 105, 109, 121, 130, 127, 127, 138, 138, 135, 139, 146, 147, 28.14598 + 149, 147, 146, 144, 144, 144, 152, 149, 150, 156, 159, 156, 157, 161, 159, 160, 28.14599 + 162, 161, 158, 156, 154, 155, 155, 154, 153, 155, 157, 158, 159, 158, 158, 159, 28.14600 + 161, 162, 163, 164, 167, 167, 170, 169, 167, 166, 165, 166, 166, 167, 164, 167, 28.14601 + 168, 165, 166, 169, 169, 168, 170, 173, 176, 173, 169, 168, 171, 173, 166, 165, 28.14602 + 165, 162, 160, 158, 161, 165, 165, 175, 175, 171, 168, 170, 171, 171, 171, 170, 28.14603 + 168, 168, 168, 170, 170, 170, 171, 170, 170, 171, 174, 174, 172, 169, 169, 170, 28.14604 + 173, 174, 175, 175, 174, 174, 178, 181, 183, 182, 181, 179, 178, 178, 180, 180, 28.14605 + 181, 181, 181, 180, 179, 179, 176, 176, 176, 175, 175, 175, 175, 175, 184, 181, 28.14606 + 178, 177, 178, 178, 177, 176, 178, 178, 178, 177, 175, 173, 170, 169, 169, 168, 28.14607 + 167, 166, 165, 166, 167, 168, 165, 168, 169, 165, 165, 169, 169, 165, 166, 165, 28.14608 + 164, 165, 167, 169, 169, 166, 170, 171, 172, 170, 167, 165, 167, 169, 173, 168, 28.14609 + 165, 165, 166, 163, 155, 150, 153, 152, 149, 81, 78, 89, 96, 87, 79, 74, 28.14610 + 67, 84, 95, 106, 107, 107, 112, 118, 125, 130, 136, 132, 134, 148, 149, 145, 28.14611 + 149, 145, 142, 141, 144, 151, 157, 160, 160, 157, 155, 156, 160, 161, 160, 161, 28.14612 + 163, 157, 158, 159, 158, 155, 154, 153, 155, 151, 150, 150, 152, 156, 158, 158, 28.14613 + 157, 161, 161, 162, 163, 163, 164, 164, 164, 166, 165, 164, 163, 163, 163, 163, 28.14614 + 163, 162, 167, 169, 168, 168, 170, 168, 164, 172, 172, 172, 171, 170, 169, 169, 28.14615 + 170, 166, 165, 165, 163, 161, 160, 163, 168, 166, 176, 178, 172, 168, 170, 175, 28.14616 + 179, 178, 173, 168, 169, 171, 172, 170, 166, 173, 172, 172, 174, 177, 177, 176, 28.14617 + 175, 174, 174, 174, 174, 174, 174, 173, 173, 174, 176, 180, 181, 180, 178, 174, 28.14618 + 172, 176, 177, 179, 180, 181, 180, 179, 178, 176, 175, 175, 175, 176, 178, 180, 28.14619 + 182, 188, 185, 182, 180, 179, 178, 176, 174, 173, 175, 177, 178, 176, 172, 167, 28.14620 + 164, 164, 163, 163, 163, 163, 164, 165, 166, 160, 165, 171, 169, 170, 171, 169, 28.14621 + 165, 166, 167, 166, 165, 165, 166, 168, 169, 163, 164, 165, 164, 162, 160, 160, 28.14622 + 160, 170, 162, 155, 155, 160, 160, 153, 146, 149, 145, 140, 94, 90, 101, 108, 28.14623 + 95, 82, 85, 88, 97, 103, 104, 99, 93, 90, 87, 87, 93, 101, 99, 102, 28.14624 + 115, 118, 116, 120, 117, 119, 121, 126, 134, 142, 149, 152, 156, 155, 155, 157, 28.14625 + 159, 158, 160, 161, 159, 160, 161, 158, 156, 154, 156, 157, 153, 152, 151, 153, 28.14626 + 157, 159, 158, 157, 164, 164, 165, 165, 165, 165, 164, 164, 163, 163, 163, 163, 28.14627 + 163, 164, 164, 165, 165, 169, 171, 169, 169, 172, 171, 167, 175, 172, 170, 170, 28.14628 + 172, 172, 172, 169, 167, 166, 165, 164, 164, 164, 167, 171, 169, 176, 176, 173, 28.14629 + 170, 173, 176, 176, 177, 174, 170, 170, 170, 171, 170, 168, 175, 175, 175, 176, 28.14630 + 177, 177, 177, 177, 177, 176, 175, 174, 174, 175, 176, 177, 171, 172, 173, 175, 28.14631 + 178, 177, 175, 173, 175, 176, 178, 181, 181, 180, 178, 177, 178, 177, 176, 176, 28.14632 + 177, 180, 183, 185, 181, 179, 177, 177, 178, 178, 177, 174, 168, 168, 171, 172, 28.14633 + 171, 168, 165, 163, 162, 162, 161, 161, 161, 161, 161, 162, 163, 166, 169, 170, 28.14634 + 170, 168, 167, 165, 164, 165, 167, 166, 165, 164, 167, 170, 167, 168, 169, 169, 28.14635 + 167, 165, 163, 162, 167, 162, 157, 157, 158, 157, 152, 146, 147, 146, 145, 103, 28.14636 + 97, 103, 103, 85, 74, 80, 86, 77, 82, 88, 96, 106, 117, 122, 121, 115, 28.14637 + 127, 128, 128, 135, 134, 135, 143, 139, 145, 150, 151, 150, 151, 156, 160, 148, 28.14638 + 148, 148, 149, 150, 152, 154, 153, 159, 159, 159, 157, 155, 155, 157, 159, 157, 28.14639 + 155, 154, 155, 158, 159, 158, 157, 161, 161, 162, 162, 162, 162, 161, 161, 163, 28.14640 + 164, 165, 167, 169, 170, 171, 171, 169, 171, 171, 167, 168, 172, 173, 171, 176, 28.14641 + 172, 169, 169, 172, 171, 171, 166, 163, 163, 164, 163, 163, 164, 167, 171, 171, 28.14642 + 173, 173, 172, 174, 177, 173, 166, 170, 172, 172, 171, 169, 169, 171, 174, 173, 28.14643 + 173, 173, 172, 171, 171, 171, 172, 177, 176, 175, 175, 175, 177, 180, 180, 174, 28.14644 + 171, 169, 169, 173, 174, 175, 174, 174, 174, 175, 176, 175, 173, 171, 172, 178, 28.14645 + 179, 177, 177, 177, 179, 182, 184, 178, 177, 177, 178, 179, 180, 179, 174, 167, 28.14646 + 166, 166, 167, 167, 168, 168, 168, 165, 164, 164, 163, 161, 160, 158, 160, 167, 28.14647 + 168, 167, 167, 167, 165, 164, 165, 161, 163, 166, 166, 164, 163, 165, 166, 163, 28.14648 + 162, 162, 162, 161, 159, 156, 154, 154, 155, 157, 155, 151, 147, 143, 143, 139, 28.14649 + 139, 140, 99, 92, 97, 98, 85, 83, 92, 94, 116, 119, 120, 119, 121, 125, 28.14650 + 123, 119, 128, 141, 141, 138, 141, 137, 137, 146, 135, 143, 149, 149, 143, 140, 28.14651 + 143, 146, 147, 148, 150, 148, 150, 155, 156, 153, 154, 156, 156, 156, 155, 153, 28.14652 + 156, 156, 159, 158, 157, 158, 160, 161, 160, 159, 163, 163, 165, 165, 165, 165, 28.14653 + 165, 164, 162, 163, 165, 167, 169, 170, 171, 171, 171, 173, 171, 167, 167, 172, 28.14654 + 174, 173, 172, 169, 166, 165, 167, 168, 166, 163, 160, 161, 161, 160, 161, 162, 28.14655 + 164, 169, 171, 171, 170, 171, 175, 179, 172, 162, 167, 171, 173, 172, 169, 168, 28.14656 + 173, 177, 174, 175, 175, 173, 170, 170, 171, 172, 175, 175, 174, 174, 175, 177, 28.14657 + 179, 179, 179, 173, 168, 167, 171, 171, 171, 168, 170, 170, 170, 168, 168, 167, 28.14658 + 166, 168, 175, 176, 175, 174, 174, 175, 176, 177, 180, 179, 179, 179, 180, 180, 28.14659 + 177, 172, 171, 166, 167, 164, 166, 166, 171, 171, 167, 165, 167, 163, 163, 159, 28.14660 + 159, 159, 172, 170, 165, 166, 164, 163, 164, 167, 164, 166, 170, 172, 172, 169, 28.14661 + 169, 166, 159, 156, 154, 153, 153, 152, 149, 147, 146, 151, 156, 154, 148, 143, 28.14662 + 142, 143, 143, 144, 143, 89, 88, 93, 94, 92, 99, 106, 100, 91, 102, 109, 28.14663 + 110, 112, 118, 123, 127, 131, 141, 138, 136, 143, 140, 136, 144, 144, 148, 151, 28.14664 + 153, 151, 150, 152, 151, 145, 148, 150, 147, 149, 154, 157, 153, 149, 151, 156, 28.14665 + 157, 155, 152, 154, 153, 156, 155, 154, 156, 161, 162, 162, 161, 164, 164, 165, 28.14666 + 166, 166, 166, 166, 166, 161, 162, 163, 165, 166, 166, 165, 165, 167, 170, 170, 28.14667 + 167, 168, 171, 172, 170, 172, 169, 167, 165, 165, 165, 164, 164, 162, 162, 163, 28.14668 + 162, 161, 162, 166, 169, 169, 170, 169, 169, 173, 177, 172, 166, 172, 172, 173, 28.14669 + 173, 173, 174, 176, 177, 174, 175, 175, 174, 171, 171, 174, 176, 174, 173, 173, 28.14670 + 173, 173, 173, 174, 173, 179, 173, 171, 171, 174, 174, 172, 167, 170, 169, 168, 28.14671 + 166, 167, 168, 169, 171, 172, 172, 173, 173, 173, 174, 174, 175, 178, 177, 177, 28.14672 + 177, 178, 177, 175, 171, 172, 170, 168, 165, 166, 166, 169, 169, 169, 168, 169, 28.14673 + 167, 167, 164, 162, 162, 172, 169, 165, 168, 167, 165, 166, 171, 166, 168, 171, 28.14674 + 174, 176, 173, 169, 165, 163, 158, 155, 154, 154, 154, 152, 149, 150, 151, 153, 28.14675 + 153, 151, 150, 151, 152, 156, 157, 157, 87, 87, 90, 88, 86, 96, 95, 79, 28.14676 + 83, 97, 109, 107, 105, 107, 118, 125, 128, 134, 129, 131, 144, 144, 139, 141, 28.14677 + 145, 143, 142, 141, 143, 143, 141, 136, 137, 139, 142, 139, 142, 148, 150, 146, 28.14678 + 147, 150, 155, 156, 155, 155, 154, 154, 153, 152, 153, 155, 159, 164, 164, 163, 28.14679 + 160, 160, 160, 162, 162, 163, 163, 163, 166, 166, 167, 168, 168, 166, 165, 164, 28.14680 + 163, 168, 170, 168, 169, 171, 169, 163, 172, 172, 170, 166, 165, 164, 164, 165, 28.14681 + 164, 167, 166, 165, 165, 165, 169, 171, 167, 170, 171, 169, 170, 175, 176, 175, 28.14682 + 178, 174, 171, 172, 176, 178, 177, 174, 167, 169, 170, 169, 167, 168, 171, 175, 28.14683 + 173, 173, 172, 171, 170, 169, 169, 167, 174, 171, 171, 174, 180, 180, 175, 169, 28.14684 + 172, 171, 170, 168, 169, 172, 175, 177, 172, 172, 175, 175, 177, 177, 178, 177, 28.14685 + 174, 172, 174, 174, 177, 176, 175, 172, 172, 170, 169, 165, 165, 163, 164, 163, 28.14686 + 168, 168, 170, 169, 170, 167, 166, 167, 170, 166, 166, 170, 171, 169, 168, 173, 28.14687 + 159, 160, 162, 168, 171, 169, 163, 154, 147, 142, 137, 135, 136, 137, 135, 133, 28.14688 + 131, 128, 126, 127, 131, 135, 136, 136, 132, 137, 142, 85, 88, 92, 100, 105, 28.14689 + 107, 102, 99, 78, 106, 120, 106, 100, 109, 116, 111, 126, 128, 130, 131, 134, 28.14690 + 134, 134, 134, 137, 141, 141, 136, 134, 138, 137, 131, 132, 133, 135, 134, 132, 28.14691 + 131, 137, 141, 141, 144, 148, 149, 150, 152, 153, 154, 153, 153, 152, 153, 154, 28.14692 + 158, 160, 162, 161, 165, 164, 158, 156, 162, 165, 164, 162, 160, 159, 163, 169, 28.14693 + 171, 170, 167, 173, 167, 166, 171, 173, 169, 168, 172, 169, 168, 165, 162, 161, 28.14694 + 158, 156, 154, 163, 163, 164, 163, 162, 164, 171, 176, 171, 171, 172, 172, 172, 28.14695 + 170, 168, 167, 170, 171, 174, 175, 175, 174, 172, 169, 168, 172, 175, 174, 169, 28.14696 + 167, 170, 174, 171, 172, 173, 174, 174, 173, 171, 170, 175, 175, 176, 177, 177, 28.14697 + 176, 176, 174, 175, 174, 174, 174, 175, 180, 183, 184, 176, 173, 174, 175, 180, 28.14698 + 179, 178, 173, 179, 172, 169, 168, 173, 173, 173, 167, 171, 168, 169, 167, 171, 28.14699 + 170, 172, 170, 172, 171, 175, 173, 173, 166, 163, 159, 169, 162, 166, 168, 159, 28.14700 + 159, 166, 168, 166, 164, 153, 139, 133, 142, 151, 152, 146, 143, 141, 139, 135, 28.14701 + 132, 135, 140, 132, 132, 132, 132, 131, 131, 131, 131, 131, 129, 129, 90, 90, 28.14702 + 91, 92, 93, 88, 82, 76, 83, 102, 110, 105, 104, 114, 117, 113, 118, 120, 28.14703 + 122, 124, 125, 126, 128, 127, 119, 124, 126, 124, 126, 132, 133, 127, 122, 122, 28.14704 + 124, 124, 125, 126, 130, 132, 132, 135, 138, 141, 142, 145, 149, 153, 153, 152, 28.14705 + 152, 151, 152, 153, 156, 157, 161, 165, 165, 159, 158, 160, 160, 157, 161, 163, 28.14706 + 165, 166, 167, 168, 169, 170, 172, 167, 166, 170, 172, 169, 168, 170, 168, 167, 28.14707 + 164, 161, 159, 157, 156, 155, 157, 159, 162, 162, 164, 166, 169, 173, 168, 168, 28.14708 + 169, 169, 168, 166, 164, 163, 171, 171, 174, 174, 174, 173, 171, 170, 166, 170, 28.14709 + 175, 175, 171, 168, 168, 170, 165, 166, 167, 169, 169, 170, 170, 170, 173, 173, 28.14710 + 176, 177, 177, 177, 178, 177, 174, 174, 173, 172, 173, 175, 179, 179, 176, 174, 28.14711 + 172, 173, 175, 176, 173, 171, 169, 167, 165, 168, 173, 174, 171, 168, 168, 172, 28.14712 + 173, 170, 166, 165, 167, 170, 169, 171, 173, 175, 175, 173, 171, 169, 177, 169, 28.14713 + 171, 171, 160, 158, 165, 163, 148, 152, 160, 160, 147, 134, 138, 148, 143, 137, 28.14714 + 136, 140, 145, 143, 136, 129, 131, 131, 130, 129, 128, 127, 126, 126, 130, 130, 28.14715 + 131, 102, 103, 104, 106, 104, 101, 97, 93, 96, 100, 103, 105, 110, 117, 116, 28.14716 + 111, 118, 118, 119, 121, 121, 121, 123, 121, 116, 119, 121, 120, 120, 122, 121, 28.14717 + 115, 118, 117, 116, 117, 120, 122, 124, 124, 132, 134, 136, 138, 142, 146, 151, 28.14718 + 156, 155, 155, 154, 153, 153, 154, 157, 157, 158, 162, 164, 161, 161, 161, 160, 28.14719 + 157, 160, 165, 168, 167, 164, 164, 167, 171, 167, 163, 161, 165, 166, 164, 163, 28.14720 + 164, 169, 167, 163, 159, 156, 153, 153, 152, 153, 155, 159, 161, 161, 162, 164, 28.14721 + 165, 163, 162, 163, 164, 165, 165, 165, 165, 173, 173, 174, 174, 174, 173, 172, 28.14722 + 170, 167, 171, 177, 178, 175, 172, 170, 171, 170, 170, 170, 170, 170, 171, 172, 28.14723 + 173, 172, 172, 176, 175, 175, 176, 175, 175, 177, 178, 176, 175, 175, 176, 178, 28.14724 + 177, 180, 177, 175, 175, 175, 176, 175, 173, 174, 173, 172, 174, 176, 175, 170, 28.14725 + 165, 170, 174, 176, 171, 164, 161, 164, 169, 163, 164, 166, 167, 168, 168, 168, 28.14726 + 168, 171, 161, 163, 164, 154, 150, 156, 152, 156, 147, 150, 158, 152, 136, 141, 28.14727 + 156, 157, 150, 144, 141, 143, 143, 140, 136, 140, 139, 138, 137, 135, 134, 132, 28.14728 + 132, 125, 127, 129, 99, 101, 103, 104, 106, 106, 105, 104, 108, 103, 101, 107, 28.14729 + 112, 111, 111, 110, 116, 116, 116, 116, 115, 114, 113, 112, 114, 114, 116, 114, 28.14730 + 114, 111, 110, 106, 118, 114, 111, 112, 115, 117, 117, 115, 132, 135, 140, 141, 28.14731 + 145, 148, 151, 155, 155, 155, 155, 155, 156, 156, 159, 159, 158, 161, 163, 162, 28.14732 + 163, 164, 165, 165, 163, 165, 166, 165, 163, 163, 165, 168, 167, 164, 163, 164, 28.14733 + 165, 165, 163, 163, 169, 168, 164, 159, 152, 148, 147, 146, 148, 152, 156, 158, 28.14734 + 158, 156, 156, 155, 158, 159, 161, 163, 165, 167, 170, 170, 171, 171, 172, 172, 28.14735 + 174, 174, 174, 173, 168, 170, 174, 175, 173, 171, 171, 171, 176, 175, 173, 172, 28.14736 + 171, 172, 173, 174, 173, 174, 174, 174, 173, 172, 172, 172, 176, 175, 174, 173, 28.14737 + 172, 172, 173, 171, 174, 172, 170, 169, 169, 170, 171, 172, 171, 170, 169, 170, 28.14738 + 171, 171, 169, 167, 173, 174, 176, 171, 168, 165, 167, 169, 166, 164, 164, 162, 28.14739 + 162, 161, 162, 161, 168, 159, 162, 164, 158, 156, 161, 160, 164, 141, 130, 138, 28.14740 + 147, 149, 149, 151, 147, 151, 154, 147, 143, 142, 146, 146, 149, 147, 148, 146, 28.14741 + 146, 144, 144, 144, 144, 146, 147, 105, 104, 104, 103, 102, 99, 98, 98, 107, 28.14742 + 104, 105, 111, 111, 108, 108, 113, 106, 104, 105, 105, 105, 105, 104, 104, 104, 28.14743 + 103, 106, 108, 109, 108, 108, 108, 112, 110, 107, 109, 111, 114, 115, 113, 128, 28.14744 + 134, 141, 144, 146, 146, 148, 148, 147, 148, 149, 151, 152, 153, 155, 155, 160, 28.14745 + 159, 159, 158, 158, 159, 162, 168, 166, 163, 160, 161, 163, 165, 164, 163, 170, 28.14746 + 169, 168, 167, 168, 169, 168, 166, 168, 169, 166, 161, 154, 150, 149, 150, 145, 28.14747 + 147, 151, 155, 158, 158, 156, 155, 159, 160, 160, 162, 164, 166, 168, 169, 168, 28.14748 + 168, 170, 172, 173, 175, 178, 177, 168, 168, 168, 167, 167, 168, 169, 171, 172, 28.14749 + 171, 170, 169, 169, 171, 172, 173, 176, 175, 173, 171, 168, 166, 165, 164, 165, 28.14750 + 164, 162, 161, 159, 159, 159, 160, 160, 161, 160, 160, 160, 162, 165, 167, 161, 28.14751 + 159, 158, 159, 162, 167, 170, 171, 168, 165, 164, 162, 167, 166, 166, 162, 166, 28.14752 + 163, 163, 159, 159, 157, 158, 157, 158, 147, 151, 155, 151, 152, 155, 153, 141, 28.14753 + 134, 127, 128, 141, 150, 147, 139, 126, 135, 145, 147, 150, 152, 150, 142, 148, 28.14754 + 147, 148, 147, 148, 147, 148, 149, 152, 154, 155, 109, 107, 108, 105, 103, 101, 28.14755 + 102, 103, 100, 101, 106, 109, 110, 109, 112, 117, 99, 98, 100, 102, 104, 105, 28.14756 + 105, 106, 106, 104, 103, 106, 106, 103, 103, 107, 110, 109, 109, 110, 114, 117, 28.14757 + 119, 120, 126, 132, 141, 146, 148, 148, 148, 149, 149, 150, 152, 154, 155, 156, 28.14758 + 158, 158, 165, 161, 158, 157, 155, 152, 155, 160, 165, 162, 158, 158, 163, 165, 28.14759 + 164, 161, 166, 166, 165, 162, 163, 165, 164, 160, 165, 168, 170, 166, 160, 156, 28.14760 + 156, 158, 144, 144, 147, 152, 158, 161, 162, 162, 164, 163, 162, 161, 161, 161, 28.14761 + 162, 163, 168, 168, 169, 171, 172, 175, 179, 178, 173, 171, 170, 169, 169, 172, 28.14762 + 174, 176, 169, 169, 170, 171, 172, 174, 176, 176, 174, 172, 169, 166, 162, 159, 28.14763 + 158, 157, 156, 155, 155, 152, 151, 150, 150, 150, 152, 156, 158, 158, 159, 159, 28.14764 + 163, 164, 168, 165, 161, 157, 157, 158, 162, 163, 160, 152, 150, 150, 158, 159, 28.14765 + 158, 152, 154, 151, 152, 150, 152, 150, 152, 151, 150, 139, 141, 146, 141, 141, 28.14766 + 145, 139, 133, 138, 136, 125, 122, 134, 147, 152, 150, 145, 137, 132, 144, 154, 28.14767 + 154, 141, 148, 146, 149, 147, 150, 149, 151, 152, 146, 146, 147, 96, 95, 96, 28.14768 + 94, 93, 93, 97, 99, 96, 101, 104, 106, 107, 112, 114, 113, 103, 103, 104, 28.14769 + 106, 105, 106, 106, 106, 105, 99, 95, 97, 96, 93, 94, 101, 107, 110, 111, 28.14770 + 109, 109, 110, 112, 116, 123, 129, 138, 142, 146, 149, 151, 154, 154, 155, 158, 28.14771 + 160, 161, 161, 162, 161, 164, 160, 161, 161, 157, 151, 152, 158, 163, 162, 160, 28.14772 + 160, 161, 164, 165, 166, 161, 163, 161, 157, 158, 161, 160, 155, 165, 170, 173, 28.14773 + 169, 161, 156, 154, 155, 148, 146, 144, 147, 154, 158, 159, 160, 163, 164, 163, 28.14774 + 162, 162, 163, 165, 166, 170, 170, 170, 170, 171, 173, 176, 176, 175, 173, 172, 28.14775 + 172, 174, 176, 177, 177, 172, 172, 173, 173, 174, 173, 173, 172, 167, 164, 162, 28.14776 + 159, 156, 153, 152, 150, 149, 148, 146, 145, 143, 142, 141, 143, 146, 152, 157, 28.14777 + 155, 156, 153, 157, 157, 168, 164, 162, 155, 152, 148, 150, 149, 147, 143, 141, 28.14778 + 141, 146, 147, 147, 144, 138, 138, 139, 139, 141, 140, 141, 142, 152, 141, 143, 28.14779 + 148, 143, 143, 145, 139, 138, 138, 134, 124, 115, 119, 138, 157, 161, 159, 149, 28.14780 + 134, 136, 147, 152, 147, 150, 149, 150, 149, 151, 150, 151, 151, 153, 151, 153, 28.14781 + 100, 98, 99, 95, 92, 91, 93, 97, 99, 103, 105, 102, 106, 112, 112, 103, 28.14782 + 108, 106, 106, 103, 100, 96, 93, 91, 76, 71, 69, 74, 78, 80, 85, 94, 28.14783 + 100, 104, 104, 98, 93, 90, 91, 95, 110, 115, 122, 129, 135, 141, 148, 152, 28.14784 + 155, 156, 159, 160, 160, 159, 159, 158, 163, 160, 162, 165, 164, 155, 156, 162, 28.14785 + 162, 165, 166, 164, 161, 162, 167, 172, 166, 168, 166, 162, 162, 166, 165, 158, 28.14786 + 164, 169, 171, 169, 158, 150, 147, 146, 155, 150, 145, 144, 147, 150, 151, 153, 28.14787 + 161, 163, 163, 164, 167, 169, 172, 175, 172, 170, 169, 168, 166, 167, 168, 169, 28.14788 + 165, 163, 164, 166, 168, 169, 167, 166, 170, 169, 168, 167, 164, 161, 157, 153, 28.14789 + 158, 156, 154, 152, 148, 147, 147, 145, 137, 136, 135, 136, 135, 133, 132, 134, 28.14790 + 136, 141, 145, 145, 142, 141, 141, 143, 141, 141, 142, 141, 140, 140, 141, 141, 28.14791 + 138, 138, 138, 137, 136, 136, 138, 139, 133, 134, 135, 133, 136, 133, 134, 134, 28.14792 + 130, 119, 120, 127, 124, 124, 126, 121, 126, 118, 119, 128, 125, 110, 109, 123, 28.14793 + 115, 145, 163, 157, 143, 141, 144, 146, 147, 147, 146, 146, 145, 145, 145, 145, 28.14794 + 149, 149, 147, 104, 98, 96, 98, 98, 93, 91, 94, 104, 98, 100, 108, 112, 28.14795 + 109, 105, 106, 102, 95, 104, 91, 87, 78, 54, 72, 62, 61, 61, 60, 60, 28.14796 + 61, 62, 67, 89, 84, 84, 88, 85, 78, 80, 87, 92, 89, 95, 112, 129, 28.14797 + 136, 140, 145, 150, 155, 158, 158, 156, 156, 160, 163, 167, 166, 164, 161, 161, 28.14798 + 160, 161, 163, 165, 167, 168, 168, 168, 168, 169, 169, 162, 161, 161, 165, 169, 28.14799 + 170, 167, 161, 168, 167, 164, 163, 162, 161, 161, 162, 153, 156, 158, 157, 153, 28.14800 + 152, 159, 165, 171, 168, 167, 164, 163, 164, 167, 169, 163, 162, 164, 164, 163, 28.14801 + 162, 158, 157, 153, 155, 157, 157, 155, 156, 159, 162, 159, 154, 151, 151, 153, 28.14802 + 154, 149, 145, 145, 140, 141, 144, 142, 136, 135, 137, 133, 131, 129, 130, 132, 28.14803 + 131, 129, 128, 136, 143, 143, 139, 139, 144, 143, 140, 144, 137, 134, 135, 133, 28.14804 + 128, 126, 132, 131, 132, 132, 132, 128, 126, 123, 122, 122, 120, 118, 115, 117, 28.14805 + 116, 120, 121, 118, 128, 110, 102, 116, 87, 113, 129, 123, 129, 129, 118, 112, 28.14806 + 107, 91, 78, 89, 108, 139, 170, 151, 146, 122, 143, 140, 137, 142, 151, 152, 28.14807 + 144, 144, 148, 151, 151, 151, 58, 59, 59, 58, 58, 57, 57, 57, 59, 60, 28.14808 + 59, 61, 61, 62, 62, 62, 60, 66, 64, 62, 68, 64, 58, 62, 61, 63, 28.14809 + 65, 67, 68, 68, 68, 68, 70, 70, 70, 70, 70, 70, 70, 70, 67, 68, 28.14810 + 69, 70, 71, 72, 72, 72, 69, 73, 73, 70, 71, 74, 74, 72, 74, 73, 28.14811 + 73, 72, 72, 73, 73, 73, 74, 74, 74, 76, 76, 77, 78, 78, 77, 78, 28.14812 + 79, 81, 81, 81, 81, 80, 79, 79, 78, 79, 80, 81, 81, 81, 81, 82, 28.14813 + 81, 83, 83, 84, 84, 84, 82, 82, 82, 83, 83, 84, 84, 84, 87, 86, 28.14814 + 85, 84, 85, 86, 88, 89, 85, 91, 85, 84, 89, 89, 85, 92, 89, 91, 28.14815 + 92, 93, 90, 91, 92, 93, 90, 92, 93, 94, 94, 94, 94, 93, 88, 95, 28.14816 + 93, 90, 95, 93, 90, 97, 92, 90, 88, 88, 88, 91, 93, 95, 94, 97, 28.14817 + 92, 101, 96, 91, 92, 69, 4, 24, 59, 67, 90, 92, 108, 108, 103, 102, 28.14818 + 91, 92, 102, 102, 97, 101, 104, 101, 101, 104, 104, 102, 103, 106, 107, 106, 28.14819 + 104, 104, 106, 106, 104, 103, 103, 104, 104, 104, 104, 103, 102, 101, 105, 105, 28.14820 + 105, 104, 104, 103, 103, 103, 104, 103, 103, 59, 59, 59, 58, 59, 58, 58, 28.14821 + 58, 55, 56, 58, 59, 60, 62, 62, 60, 62, 63, 63, 62, 61, 62, 64, 28.14822 + 68, 64, 65, 67, 67, 66, 65, 67, 69, 70, 71, 71, 71, 69, 68, 64, 28.14823 + 64, 68, 69, 68, 69, 68, 70, 71, 71, 71, 71, 71, 72, 72, 73, 73, 28.14824 + 73, 75, 74, 74, 73, 73, 74, 74, 75, 71, 73, 75, 75, 74, 73, 73, 28.14825 + 74, 75, 78, 79, 77, 77, 80, 79, 76, 77, 77, 77, 78, 78, 79, 79, 28.14826 + 79, 80, 81, 80, 82, 82, 83, 83, 83, 81, 86, 85, 83, 83, 87, 86, 28.14827 + 85, 83, 84, 83, 85, 84, 86, 85, 86, 84, 87, 88, 89, 87, 87, 87, 28.14828 + 89, 85, 90, 89, 87, 87, 91, 90, 89, 93, 91, 89, 90, 94, 95, 94, 28.14829 + 92, 95, 94, 92, 92, 91, 93, 94, 95, 91, 94, 94, 91, 91, 94, 94, 28.14830 + 91, 99, 94, 96, 95, 101, 84, 93, 66, 1, 25, 58, 67, 97, 95, 105, 28.14831 + 107, 103, 101, 92, 90, 102, 102, 98, 101, 102, 100, 100, 103, 104, 101, 101, 28.14832 + 105, 106, 106, 106, 106, 106, 106, 106, 106, 102, 104, 106, 106, 104, 103, 103, 28.14833 + 104, 106, 106, 104, 103, 103, 103, 103, 103, 101, 108, 105, 58, 58, 57, 57, 28.14834 + 58, 57, 57, 58, 59, 59, 60, 61, 63, 63, 65, 65, 63, 63, 63, 62, 28.14835 + 61, 62, 65, 68, 62, 63, 65, 65, 63, 63, 65, 67, 68, 68, 69, 69, 28.14836 + 69, 68, 67, 67, 71, 70, 69, 68, 68, 68, 69, 69, 71, 71, 71, 72, 28.14837 + 72, 73, 73, 73, 75, 74, 74, 73, 73, 74, 74, 75, 73, 74, 76, 76, 28.14838 + 75, 73, 74, 75, 75, 79, 79, 76, 76, 79, 78, 75, 77, 77, 78, 78, 28.14839 + 78, 79, 79, 79, 80, 80, 80, 81, 81, 82, 82, 83, 81, 86, 86, 83, 28.14840 + 84, 87, 87, 85, 84, 84, 85, 85, 85, 86, 86, 86, 85, 88, 90, 90, 28.14841 + 89, 88, 89, 90, 87, 90, 90, 87, 88, 91, 92, 89, 92, 91, 90, 91, 28.14842 + 93, 94, 94, 93, 94, 94, 94, 93, 93, 94, 95, 95, 93, 96, 96, 93, 28.14843 + 93, 96, 96, 93, 98, 94, 96, 94, 101, 85, 94, 66, 1, 27, 59, 67, 28.14844 + 98, 96, 105, 107, 100, 99, 90, 90, 102, 105, 101, 104, 104, 101, 101, 105, 28.14845 + 105, 102, 103, 106, 106, 106, 106, 106, 106, 106, 106, 106, 102, 104, 106, 106, 28.14846 + 104, 103, 103, 104, 106, 105, 104, 103, 103, 103, 103, 104, 101, 108, 105, 57, 28.14847 + 56, 56, 56, 57, 56, 57, 57, 61, 61, 60, 60, 61, 63, 65, 66, 63, 28.14848 + 64, 63, 63, 62, 62, 65, 67, 62, 64, 65, 65, 64, 63, 66, 67, 67, 28.14849 + 67, 67, 67, 68, 68, 69, 70, 72, 71, 70, 69, 68, 68, 68, 68, 71, 28.14850 + 71, 71, 72, 72, 73, 73, 73, 75, 74, 74, 73, 73, 74, 74, 75, 73, 28.14851 + 75, 77, 77, 75, 74, 75, 76, 76, 79, 80, 77, 76, 78, 77, 74, 77, 28.14852 + 78, 78, 78, 79, 79, 79, 79, 80, 80, 80, 81, 81, 82, 82, 83, 81, 28.14853 + 86, 86, 83, 84, 87, 87, 85, 84, 85, 85, 85, 86, 86, 86, 86, 86, 28.14854 + 89, 91, 91, 90, 89, 90, 91, 87, 90, 90, 88, 88, 91, 92, 89, 90, 28.14855 + 91, 93, 92, 92, 91, 94, 95, 94, 94, 94, 94, 94, 94, 95, 95, 94, 28.14856 + 97, 97, 94, 94, 97, 97, 94, 96, 93, 95, 93, 101, 87, 95, 65, 2, 28.14857 + 27, 60, 68, 98, 96, 105, 107, 98, 98, 89, 89, 103, 106, 103, 105, 105, 28.14858 + 102, 102, 106, 106, 103, 104, 107, 106, 106, 106, 106, 106, 106, 106, 106, 102, 28.14859 + 104, 106, 106, 104, 103, 103, 104, 106, 105, 104, 103, 103, 103, 104, 104, 101, 28.14860 + 108, 105, 57, 57, 56, 56, 57, 57, 58, 58, 61, 60, 58, 57, 58, 60, 28.14861 + 63, 65, 62, 64, 64, 63, 62, 62, 65, 67, 65, 66, 68, 67, 66, 66, 28.14862 + 69, 70, 69, 68, 67, 66, 66, 68, 70, 71, 71, 71, 70, 69, 69, 69, 28.14863 + 70, 70, 71, 71, 71, 72, 72, 73, 73, 73, 75, 74, 74, 73, 73, 74, 28.14864 + 74, 75, 74, 76, 78, 78, 76, 75, 76, 77, 77, 80, 80, 77, 76, 78, 28.14865 + 77, 74, 78, 78, 78, 79, 79, 79, 80, 80, 80, 80, 80, 81, 81, 82, 28.14866 + 82, 83, 81, 86, 86, 83, 84, 87, 87, 85, 85, 85, 85, 86, 86, 86, 28.14867 + 87, 87, 87, 89, 91, 92, 90, 90, 90, 92, 87, 90, 91, 88, 88, 92, 28.14868 + 92, 89, 89, 92, 94, 93, 91, 90, 93, 96, 94, 94, 95, 94, 94, 95, 28.14869 + 95, 95, 93, 96, 96, 93, 93, 96, 96, 93, 95, 93, 94, 92, 101, 88, 28.14870 + 96, 63, 3, 28, 61, 68, 98, 96, 105, 107, 99, 99, 90, 89, 102, 105, 28.14871 + 102, 104, 104, 101, 102, 105, 105, 103, 103, 106, 107, 107, 106, 106, 106, 106, 28.14872 + 105, 105, 102, 104, 106, 106, 104, 103, 103, 104, 105, 105, 104, 103, 103, 103, 28.14873 + 104, 105, 101, 108, 105, 57, 57, 59, 59, 59, 59, 60, 60, 62, 61, 59, 28.14874 + 57, 58, 59, 63, 64, 61, 63, 65, 65, 63, 62, 64, 66, 65, 67, 68, 28.14875 + 68, 67, 67, 69, 71, 71, 70, 68, 66, 66, 67, 68, 69, 68, 68, 68, 28.14876 + 69, 70, 71, 73, 74, 71, 71, 71, 72, 72, 73, 73, 73, 75, 74, 74, 28.14877 + 73, 73, 74, 74, 75, 74, 76, 78, 78, 76, 75, 76, 77, 76, 79, 80, 28.14878 + 77, 76, 78, 77, 74, 78, 78, 79, 79, 79, 80, 80, 80, 80, 80, 80, 28.14879 + 81, 81, 82, 82, 83, 81, 86, 86, 83, 84, 87, 87, 85, 85, 85, 86, 28.14880 + 86, 86, 87, 87, 87, 87, 89, 91, 92, 90, 90, 90, 92, 88, 91, 91, 28.14881 + 89, 89, 92, 93, 90, 89, 92, 94, 93, 91, 90, 93, 96, 94, 94, 95, 28.14882 + 96, 96, 95, 95, 95, 92, 95, 95, 92, 92, 95, 95, 92, 94, 93, 95, 28.14883 + 91, 101, 90, 95, 60, 4, 29, 61, 69, 99, 96, 104, 107, 101, 101, 91, 28.14884 + 90, 102, 104, 100, 102, 103, 100, 100, 104, 104, 101, 102, 105, 107, 107, 107, 28.14885 + 106, 106, 105, 105, 105, 102, 104, 106, 106, 104, 103, 103, 104, 105, 104, 103, 28.14886 + 103, 103, 104, 105, 105, 101, 108, 105, 58, 59, 59, 59, 59, 60, 61, 61, 28.14887 + 64, 63, 62, 61, 61, 62, 64, 64, 61, 63, 65, 65, 63, 63, 64, 65, 28.14888 + 63, 65, 66, 66, 65, 65, 67, 69, 70, 69, 68, 68, 67, 67, 67, 67, 28.14889 + 67, 68, 68, 69, 71, 73, 74, 75, 71, 71, 71, 72, 72, 73, 73, 73, 28.14890 + 75, 74, 74, 73, 73, 74, 74, 75, 73, 75, 77, 77, 75, 74, 75, 76, 28.14891 + 75, 78, 79, 76, 76, 79, 78, 76, 79, 79, 79, 79, 80, 80, 80, 81, 28.14892 + 80, 80, 80, 81, 81, 82, 82, 83, 81, 86, 86, 83, 84, 87, 87, 85, 28.14893 + 86, 86, 86, 86, 87, 87, 87, 88, 86, 89, 91, 91, 90, 89, 90, 91, 28.14894 + 88, 91, 92, 89, 89, 93, 93, 90, 90, 91, 93, 92, 92, 91, 94, 95, 28.14895 + 94, 94, 96, 96, 96, 96, 95, 95, 91, 94, 94, 91, 91, 94, 94, 91, 28.14896 + 95, 94, 95, 90, 100, 90, 95, 56, 5, 30, 62, 69, 99, 96, 104, 107, 28.14897 + 102, 101, 92, 90, 102, 103, 99, 101, 102, 99, 100, 103, 103, 101, 101, 104, 28.14898 + 108, 108, 107, 106, 106, 105, 104, 104, 102, 104, 106, 106, 104, 103, 103, 104, 28.14899 + 104, 104, 103, 103, 103, 104, 105, 106, 101, 108, 105, 57, 57, 58, 59, 59, 28.14900 + 60, 60, 60, 63, 63, 63, 63, 63, 63, 63, 63, 60, 63, 65, 66, 65, 28.14901 + 64, 64, 65, 64, 65, 67, 66, 65, 65, 67, 69, 67, 67, 68, 69, 69, 28.14902 + 69, 68, 68, 69, 69, 69, 70, 71, 72, 73, 74, 71, 71, 71, 72, 72, 28.14903 + 73, 73, 73, 75, 74, 74, 73, 73, 74, 74, 75, 73, 74, 76, 76, 75, 28.14904 + 73, 74, 75, 73, 77, 78, 76, 77, 80, 80, 78, 79, 79, 79, 80, 80, 28.14905 + 80, 81, 81, 80, 80, 80, 81, 81, 82, 82, 83, 81, 86, 86, 83, 84, 28.14906 + 87, 87, 85, 86, 86, 86, 87, 87, 87, 88, 88, 85, 88, 90, 90, 89, 28.14907 + 88, 89, 90, 88, 91, 92, 89, 90, 93, 93, 90, 92, 91, 90, 91, 93, 28.14908 + 94, 94, 93, 94, 94, 96, 97, 97, 96, 95, 95, 92, 95, 95, 92, 92, 28.14909 + 95, 95, 92, 96, 96, 96, 89, 100, 91, 93, 52, 5, 31, 63, 70, 99, 28.14910 + 96, 104, 106, 101, 100, 91, 90, 102, 104, 100, 103, 103, 100, 101, 104, 104, 28.14911 + 102, 102, 105, 108, 108, 107, 106, 106, 105, 104, 104, 102, 104, 106, 106, 104, 28.14912 + 103, 103, 104, 104, 103, 103, 103, 103, 104, 105, 106, 101, 108, 105, 57, 57, 28.14913 + 57, 58, 58, 59, 59, 59, 60, 61, 61, 62, 62, 61, 60, 60, 60, 63, 28.14914 + 65, 66, 65, 64, 64, 65, 66, 68, 69, 69, 68, 67, 70, 71, 63, 64, 28.14915 + 67, 69, 70, 71, 70, 70, 71, 71, 70, 70, 70, 71, 72, 72, 71, 71, 28.14916 + 71, 72, 72, 73, 73, 73, 75, 74, 74, 73, 73, 74, 74, 75, 72, 74, 28.14917 + 76, 75, 74, 73, 73, 74, 72, 76, 77, 76, 77, 81, 81, 79, 79, 79, 28.14918 + 79, 80, 80, 81, 81, 81, 80, 80, 80, 81, 81, 82, 82, 83, 81, 86, 28.14919 + 86, 83, 84, 87, 87, 85, 86, 86, 86, 87, 87, 88, 88, 88, 85, 87, 28.14920 + 89, 89, 88, 87, 88, 89, 88, 92, 92, 89, 90, 93, 93, 91, 93, 91, 28.14921 + 89, 90, 94, 95, 94, 92, 93, 94, 97, 98, 98, 97, 95, 94, 94, 97, 28.14922 + 97, 94, 94, 97, 97, 94, 96, 97, 97, 89, 100, 91, 93, 50, 6, 31, 28.14923 + 63, 70, 99, 96, 104, 106, 98, 98, 89, 89, 102, 105, 102, 105, 104, 102, 28.14924 + 102, 105, 106, 103, 103, 107, 108, 108, 107, 106, 106, 105, 104, 104, 102, 104, 28.14925 + 106, 106, 104, 103, 103, 104, 103, 103, 103, 103, 103, 104, 106, 106, 101, 108, 28.14926 + 105, 61, 61, 62, 62, 62, 61, 60, 60, 62, 61, 60, 61, 63, 64, 63, 28.14927 + 62, 64, 64, 64, 64, 64, 64, 64, 64, 66, 67, 68, 69, 68, 67, 68, 28.14928 + 67, 69, 66, 66, 69, 69, 66, 66, 69, 72, 71, 71, 71, 71, 72, 73, 28.14929 + 74, 76, 75, 73, 71, 70, 70, 71, 71, 74, 75, 76, 77, 77, 75, 74, 28.14930 + 73, 75, 74, 74, 74, 74, 75, 76, 77, 81, 80, 78, 77, 76, 76, 77, 28.14931 + 79, 80, 80, 80, 81, 81, 82, 82, 82, 81, 81, 82, 82, 82, 83, 83, 28.14932 + 84, 86, 86, 85, 85, 87, 87, 86, 85, 91, 85, 88, 90, 84, 87, 92, 28.14933 + 87, 89, 89, 89, 90, 90, 91, 91, 91, 92, 91, 91, 91, 91, 91, 90, 28.14934 + 90, 96, 95, 93, 93, 93, 93, 96, 97, 95, 95, 96, 96, 96, 96, 96, 28.14935 + 96, 95, 97, 96, 92, 92, 96, 97, 95, 102, 94, 99, 96, 98, 87, 92, 28.14936 + 46, 5, 34, 66, 70, 100, 100, 108, 108, 106, 96, 91, 95, 101, 103, 103, 28.14937 + 103, 104, 102, 103, 105, 104, 100, 101, 105, 109, 108, 106, 104, 102, 101, 101, 28.14938 + 100, 102, 106, 107, 104, 104, 106, 104, 100, 109, 107, 103, 100, 100, 102, 105, 28.14939 + 107, 100, 109, 107, 61, 61, 61, 62, 61, 61, 61, 60, 62, 61, 60, 61, 28.14940 + 63, 64, 62, 61, 64, 64, 64, 64, 64, 64, 64, 64, 66, 67, 68, 69, 28.14941 + 68, 67, 68, 67, 70, 67, 67, 70, 70, 67, 67, 70, 72, 71, 71, 71, 28.14942 + 71, 72, 73, 74, 71, 71, 71, 71, 72, 73, 74, 75, 74, 75, 75, 76, 28.14943 + 76, 75, 75, 74, 75, 75, 74, 74, 75, 75, 76, 77, 79, 78, 77, 77, 28.14944 + 77, 78, 79, 81, 80, 80, 80, 81, 81, 82, 82, 82, 81, 81, 81, 81, 28.14945 + 82, 82, 82, 84, 85, 85, 83, 84, 86, 86, 85, 84, 90, 84, 88, 90, 28.14946 + 84, 87, 91, 86, 89, 89, 89, 90, 90, 91, 91, 91, 91, 91, 91, 91, 28.14947 + 91, 91, 91, 92, 93, 92, 91, 91, 91, 91, 93, 94, 95, 95, 96, 96, 28.14948 + 96, 96, 96, 96, 94, 97, 96, 93, 93, 96, 97, 94, 98, 92, 97, 94, 28.14949 + 99, 89, 94, 48, 6, 34, 66, 70, 100, 100, 108, 108, 106, 96, 91, 95, 28.14950 + 101, 103, 103, 103, 104, 102, 103, 105, 104, 100, 101, 106, 107, 107, 106, 105, 28.14951 + 104, 104, 105, 105, 103, 106, 106, 103, 103, 105, 104, 101, 108, 106, 103, 101, 28.14952 + 101, 102, 104, 106, 104, 108, 104, 61, 62, 61, 61, 61, 61, 61, 61, 62, 28.14953 + 61, 59, 60, 62, 63, 61, 61, 64, 64, 64, 64, 64, 65, 66, 66, 66, 28.14954 + 67, 68, 69, 69, 68, 69, 68, 70, 67, 67, 70, 70, 67, 67, 70, 72, 28.14955 + 71, 71, 71, 71, 72, 73, 74, 70, 70, 71, 73, 74, 74, 74, 74, 75, 28.14956 + 75, 75, 74, 74, 75, 75, 76, 75, 75, 74, 74, 75, 76, 77, 77, 77, 28.14957 + 77, 76, 77, 78, 79, 80, 82, 80, 80, 80, 81, 81, 82, 82, 82, 80, 28.14958 + 80, 80, 81, 81, 82, 82, 83, 84, 84, 83, 83, 85, 86, 84, 83, 90, 28.14959 + 84, 87, 89, 83, 86, 91, 86, 89, 89, 89, 90, 90, 91, 91, 91, 90, 28.14960 + 90, 90, 91, 92, 92, 93, 93, 93, 92, 92, 91, 91, 92, 93, 94, 95, 28.14961 + 95, 96, 96, 96, 96, 96, 96, 93, 96, 97, 94, 94, 97, 96, 93, 95, 28.14962 + 90, 95, 93, 99, 92, 97, 48, 6, 35, 67, 71, 100, 100, 108, 107, 106, 28.14963 + 96, 91, 95, 101, 103, 103, 103, 104, 102, 103, 106, 104, 101, 102, 106, 105, 28.14964 + 105, 105, 105, 106, 107, 108, 109, 104, 107, 106, 102, 102, 105, 105, 102, 106, 28.14965 + 105, 104, 103, 103, 103, 104, 104, 106, 108, 101, 61, 62, 60, 60, 61, 61, 28.14966 + 62, 62, 62, 61, 59, 60, 62, 63, 61, 61, 63, 64, 64, 65, 65, 65, 28.14967 + 66, 67, 66, 67, 68, 69, 69, 68, 69, 68, 70, 67, 67, 70, 70, 67, 28.14968 + 67, 70, 72, 71, 71, 71, 71, 72, 73, 74, 72, 73, 74, 75, 74, 73, 28.14969 + 71, 70, 76, 75, 74, 73, 73, 75, 76, 77, 76, 75, 75, 75, 75, 76, 28.14970 + 77, 78, 77, 77, 77, 77, 78, 79, 79, 81, 80, 80, 80, 81, 81, 82, 28.14971 + 82, 82, 80, 80, 80, 80, 81, 81, 82, 83, 85, 85, 84, 84, 86, 86, 28.14972 + 85, 84, 89, 84, 87, 89, 83, 86, 90, 86, 89, 89, 89, 90, 90, 91, 28.14973 + 91, 91, 89, 90, 90, 91, 92, 93, 94, 94, 94, 94, 94, 94, 94, 94, 28.14974 + 95, 95, 96, 96, 97, 97, 97, 97, 97, 97, 92, 96, 97, 95, 95, 97, 28.14975 + 96, 92, 94, 90, 95, 92, 99, 93, 97, 45, 7, 35, 67, 71, 101, 100, 28.14976 + 108, 107, 106, 96, 91, 95, 101, 103, 103, 103, 103, 102, 103, 106, 105, 101, 28.14977 + 103, 107, 105, 105, 104, 105, 105, 106, 108, 108, 105, 107, 105, 101, 101, 104, 28.14978 + 105, 103, 104, 105, 105, 105, 104, 104, 103, 102, 105, 108, 102, 61, 61, 61, 28.14979 + 61, 60, 61, 63, 63, 62, 61, 59, 60, 61, 62, 61, 61, 63, 64, 64, 28.14980 + 65, 65, 66, 67, 68, 66, 67, 68, 69, 69, 68, 69, 68, 71, 68, 68, 28.14981 + 71, 71, 68, 68, 71, 72, 71, 71, 71, 71, 72, 73, 74, 72, 73, 74, 28.14982 + 75, 75, 74, 72, 71, 75, 75, 74, 73, 74, 75, 77, 78, 76, 76, 75, 28.14983 + 75, 76, 76, 77, 78, 79, 79, 79, 79, 78, 77, 77, 77, 80, 80, 80, 28.14984 + 81, 81, 82, 82, 82, 80, 80, 80, 81, 81, 82, 82, 83, 87, 87, 86, 28.14985 + 86, 88, 88, 87, 86, 90, 84, 87, 89, 83, 86, 91, 86, 89, 89, 89, 28.14986 + 90, 90, 91, 91, 91, 90, 90, 91, 92, 93, 94, 94, 95, 94, 94, 94, 28.14987 + 94, 94, 94, 95, 95, 96, 96, 97, 97, 97, 97, 97, 97, 92, 96, 97, 28.14988 + 95, 95, 97, 96, 92, 96, 93, 97, 91, 98, 93, 94, 40, 8, 36, 68, 28.14989 + 72, 101, 100, 108, 107, 106, 96, 91, 95, 101, 103, 103, 103, 103, 102, 103, 28.14990 + 106, 105, 102, 104, 108, 106, 105, 104, 104, 103, 104, 104, 104, 105, 107, 105, 28.14991 + 101, 101, 104, 105, 103, 104, 104, 105, 105, 105, 104, 103, 102, 101, 109, 106, 28.14992 + 62, 61, 60, 60, 60, 61, 63, 65, 62, 61, 59, 60, 61, 62, 61, 61, 28.14993 + 63, 64, 65, 65, 66, 67, 68, 68, 66, 67, 68, 69, 69, 68, 69, 68, 28.14994 + 71, 68, 68, 71, 71, 68, 68, 71, 72, 71, 71, 71, 71, 72, 73, 74, 28.14995 + 69, 70, 72, 74, 75, 76, 77, 77, 74, 74, 74, 74, 75, 76, 77, 78, 28.14996 + 76, 76, 76, 76, 76, 77, 78, 78, 79, 79, 80, 79, 78, 77, 76, 76, 28.14997 + 80, 80, 80, 81, 81, 82, 82, 82, 81, 81, 82, 82, 82, 83, 83, 84, 28.14998 + 88, 88, 86, 87, 89, 89, 88, 87, 91, 85, 88, 90, 84, 87, 92, 87, 28.14999 + 89, 89, 89, 90, 90, 91, 91, 91, 91, 91, 92, 92, 93, 94, 94, 94, 28.15000 + 91, 92, 92, 93, 93, 92, 93, 92, 97, 97, 98, 98, 98, 98, 98, 98, 28.15001 + 93, 96, 97, 94, 94, 97, 96, 93, 97, 95, 98, 91, 98, 93, 93, 35, 28.15002 + 9, 37, 69, 72, 101, 100, 108, 107, 106, 96, 91, 95, 101, 103, 103, 103, 28.15003 + 103, 102, 103, 107, 106, 103, 104, 109, 107, 106, 105, 103, 102, 102, 102, 102, 28.15004 + 104, 107, 106, 102, 102, 105, 105, 102, 104, 105, 105, 105, 105, 104, 103, 102, 28.15005 + 100, 109, 108, 62, 62, 60, 59, 59, 61, 64, 65, 62, 60, 59, 60, 61, 28.15006 + 62, 61, 61, 63, 64, 65, 65, 66, 67, 69, 69, 67, 68, 68, 69, 69, 28.15007 + 68, 69, 68, 71, 68, 68, 71, 71, 68, 68, 71, 72, 71, 71, 71, 71, 28.15008 + 72, 73, 74, 70, 71, 71, 72, 74, 76, 78, 79, 72, 73, 74, 75, 76, 28.15009 + 77, 77, 77, 77, 76, 76, 76, 76, 77, 78, 79, 77, 78, 79, 79, 79, 28.15010 + 78, 77, 77, 80, 80, 80, 81, 81, 82, 82, 82, 82, 82, 83, 83, 84, 28.15011 + 84, 84, 85, 87, 87, 86, 86, 88, 89, 87, 86, 92, 86, 90, 91, 86, 28.15012 + 88, 93, 88, 89, 89, 89, 90, 90, 91, 91, 91, 92, 93, 93, 93, 93, 28.15013 + 93, 93, 93, 91, 91, 92, 93, 93, 92, 92, 92, 97, 97, 98, 98, 98, 28.15014 + 98, 98, 98, 94, 97, 96, 93, 93, 96, 97, 94, 97, 95, 98, 90, 98, 28.15015 + 94, 93, 33, 10, 38, 69, 73, 101, 100, 108, 107, 106, 96, 91, 95, 101, 28.15016 + 103, 103, 103, 103, 102, 103, 107, 106, 103, 105, 110, 108, 107, 106, 104, 104, 28.15017 + 103, 103, 103, 103, 106, 106, 103, 103, 105, 104, 101, 105, 105, 105, 104, 104, 28.15018 + 103, 103, 103, 102, 109, 105, 61, 61, 59, 58, 59, 61, 64, 66, 62, 60, 28.15019 + 59, 60, 62, 63, 61, 61, 64, 64, 65, 66, 67, 67, 69, 70, 67, 68, 28.15020 + 68, 69, 69, 68, 68, 68, 73, 69, 69, 72, 72, 69, 69, 72, 72, 71, 28.15021 + 71, 70, 70, 71, 72, 73, 75, 74, 73, 72, 72, 74, 75, 76, 71, 72, 28.15022 + 74, 76, 77, 77, 76, 76, 77, 76, 76, 77, 76, 78, 78, 80, 76, 77, 28.15023 + 79, 80, 81, 81, 80, 78, 79, 79, 79, 80, 80, 81, 81, 82, 83, 83, 28.15024 + 85, 85, 85, 86, 86, 86, 86, 85, 84, 85, 86, 87, 86, 85, 93, 87, 28.15025 + 91, 92, 86, 89, 94, 89, 89, 89, 89, 90, 90, 91, 90, 90, 93, 93, 28.15026 + 92, 92, 92, 93, 93, 92, 93, 93, 95, 96, 96, 95, 94, 94, 97, 97, 28.15027 + 98, 98, 98, 98, 97, 98, 95, 97, 96, 92, 92, 96, 97, 95, 95, 94, 28.15028 + 97, 89, 98, 96, 94, 33, 11, 38, 70, 73, 100, 99, 107, 106, 106, 97, 28.15029 + 91, 95, 101, 103, 102, 102, 103, 102, 104, 107, 106, 104, 105, 110, 108, 107, 28.15030 + 106, 105, 105, 105, 106, 106, 102, 106, 107, 104, 104, 106, 104, 100, 106, 105, 28.15031 + 104, 103, 103, 103, 104, 104, 106, 108, 101, 58, 58, 58, 59, 59, 60, 60, 28.15032 + 60, 61, 60, 60, 60, 60, 61, 63, 64, 64, 64, 64, 65, 65, 66, 66, 28.15033 + 66, 68, 68, 68, 69, 69, 70, 70, 70, 69, 70, 71, 72, 72, 72, 72, 28.15034 + 71, 69, 70, 72, 71, 69, 69, 71, 72, 72, 73, 73, 74, 74, 75, 75, 28.15035 + 75, 77, 77, 77, 76, 76, 75, 75, 75, 76, 83, 80, 78, 81, 79, 75, 28.15036 + 83, 78, 82, 81, 77, 77, 84, 86, 82, 78, 79, 79, 80, 80, 79, 80, 28.15037 + 79, 81, 90, 87, 83, 87, 84, 81, 89, 80, 85, 86, 84, 85, 89, 85, 28.15038 + 77, 93, 89, 89, 91, 91, 88, 88, 92, 93, 93, 91, 91, 92, 92, 90, 28.15039 + 90, 88, 89, 91, 91, 91, 91, 91, 92, 93, 96, 97, 97, 94, 94, 96, 28.15040 + 97, 95, 96, 96, 95, 94, 95, 96, 100, 92, 95, 97, 96, 93, 91, 92, 28.15041 + 94, 97, 89, 97, 92, 92, 89, 92, 29, 12, 43, 67, 79, 94, 103, 103, 28.15042 + 106, 109, 96, 92, 98, 103, 100, 99, 102, 102, 101, 101, 104, 105, 102, 102, 28.15043 + 106, 103, 105, 107, 106, 104, 103, 105, 107, 103, 107, 107, 104, 103, 105, 104, 28.15044 + 100, 106, 105, 104, 103, 103, 103, 103, 104, 102, 104, 104, 57, 57, 59, 59, 28.15045 + 59, 60, 60, 60, 62, 62, 62, 62, 63, 64, 66, 66, 63, 64, 65, 65, 28.15046 + 65, 66, 66, 66, 68, 68, 68, 69, 69, 70, 70, 70, 70, 71, 70, 71, 28.15047 + 71, 72, 72, 72, 69, 71, 71, 71, 69, 68, 70, 72, 72, 73, 73, 74, 28.15048 + 74, 75, 75, 75, 77, 77, 77, 76, 76, 75, 75, 75, 75, 82, 80, 77, 28.15049 + 81, 78, 75, 82, 78, 81, 81, 78, 79, 84, 85, 81, 80, 79, 79, 80, 28.15050 + 80, 81, 80, 81, 76, 85, 83, 82, 85, 82, 81, 88, 82, 83, 83, 81, 28.15051 + 82, 87, 86, 81, 89, 85, 85, 87, 86, 82, 82, 85, 91, 92, 92, 93, 28.15052 + 93, 91, 89, 87, 90, 90, 92, 92, 93, 94, 94, 95, 93, 94, 95, 94, 28.15053 + 92, 92, 93, 96, 95, 96, 96, 95, 93, 94, 96, 99, 93, 96, 98, 97, 28.15054 + 94, 92, 93, 94, 99, 92, 98, 92, 92, 88, 90, 26, 13, 45, 67, 78, 28.15055 + 94, 102, 103, 106, 108, 97, 91, 98, 102, 99, 98, 100, 102, 101, 101, 104, 28.15056 + 105, 102, 102, 106, 103, 105, 107, 106, 104, 103, 105, 107, 102, 106, 106, 103, 28.15057 + 103, 105, 105, 101, 106, 105, 104, 103, 103, 103, 103, 104, 105, 106, 106, 57, 28.15058 + 58, 59, 59, 60, 60, 60, 60, 63, 63, 64, 64, 64, 65, 67, 67, 63, 28.15059 + 65, 65, 65, 66, 66, 66, 66, 68, 68, 68, 69, 69, 70, 70, 70, 71, 28.15060 + 72, 70, 69, 70, 71, 73, 74, 69, 71, 71, 71, 69, 69, 70, 73, 72, 28.15061 + 73, 73, 74, 74, 75, 75, 75, 77, 77, 76, 76, 76, 76, 75, 75, 74, 28.15062 + 81, 78, 75, 79, 76, 73, 80, 76, 79, 80, 78, 80, 83, 83, 80, 84, 28.15063 + 84, 82, 82, 82, 83, 84, 85, 81, 88, 86, 83, 88, 86, 83, 90, 91, 28.15064 + 91, 89, 88, 89, 95, 95, 93, 95, 92, 91, 93, 93, 90, 91, 95, 90, 28.15065 + 92, 93, 93, 93, 91, 90, 88, 93, 93, 92, 92, 91, 92, 93, 93, 95, 28.15066 + 95, 96, 95, 95, 96, 99, 101, 96, 97, 96, 95, 93, 92, 94, 97, 94, 28.15067 + 97, 98, 98, 96, 94, 95, 95, 102, 94, 100, 94, 93, 88, 89, 24, 13, 28.15068 + 45, 67, 79, 94, 102, 103, 106, 106, 95, 90, 97, 102, 99, 97, 100, 102, 28.15069 + 101, 101, 104, 105, 102, 102, 106, 104, 105, 106, 106, 104, 104, 105, 106, 101, 28.15070 + 105, 105, 103, 103, 106, 106, 102, 106, 105, 104, 103, 103, 103, 103, 104, 107, 28.15071 + 107, 107, 58, 58, 59, 60, 60, 60, 61, 61, 63, 63, 64, 63, 64, 65, 28.15072 + 67, 67, 64, 65, 65, 66, 66, 66, 67, 67, 68, 68, 68, 69, 69, 70, 28.15073 + 70, 70, 72, 72, 69, 68, 69, 71, 73, 75, 70, 71, 72, 71, 69, 69, 28.15074 + 70, 73, 72, 73, 73, 74, 74, 75, 75, 75, 76, 76, 76, 76, 76, 76, 28.15075 + 76, 75, 74, 80, 77, 74, 78, 75, 72, 80, 75, 77, 79, 80, 80, 81, 28.15076 + 80, 80, 87, 87, 85, 83, 83, 85, 86, 88, 87, 92, 88, 85, 90, 86, 28.15077 + 82, 87, 83, 83, 81, 81, 84, 86, 86, 85, 87, 84, 84, 87, 88, 87, 28.15078 + 88, 93, 91, 93, 92, 92, 90, 89, 90, 91, 91, 90, 90, 90, 90, 91, 28.15079 + 92, 92, 92, 93, 94, 95, 95, 98, 101, 104, 95, 97, 97, 95, 92, 92, 28.15080 + 93, 96, 95, 97, 98, 98, 97, 97, 96, 96, 101, 94, 100, 94, 93, 89, 28.15081 + 90, 24, 14, 46, 68, 79, 94, 102, 103, 106, 105, 94, 89, 97, 101, 98, 28.15082 + 97, 100, 102, 101, 101, 104, 105, 102, 102, 106, 105, 105, 105, 105, 105, 105, 28.15083 + 105, 105, 100, 104, 105, 103, 104, 107, 107, 103, 106, 105, 104, 103, 103, 103, 28.15084 + 103, 104, 107, 107, 106, 58, 58, 60, 60, 60, 61, 61, 61, 62, 62, 63, 28.15085 + 63, 63, 64, 66, 66, 64, 64, 65, 65, 65, 66, 66, 66, 67, 67, 67, 28.15086 + 68, 68, 69, 69, 70, 72, 71, 69, 68, 69, 71, 73, 75, 70, 72, 72, 28.15087 + 72, 71, 70, 72, 73, 72, 73, 73, 74, 74, 75, 75, 75, 76, 76, 76, 28.15088 + 76, 76, 76, 76, 75, 73, 79, 76, 73, 77, 74, 71, 79, 76, 77, 78, 28.15089 + 81, 82, 80, 79, 81, 90, 90, 88, 85, 84, 86, 87, 88, 85, 88, 84, 28.15090 + 82, 87, 84, 79, 83, 81, 81, 81, 84, 86, 85, 81, 80, 84, 80, 78, 28.15091 + 81, 81, 78, 77, 81, 81, 81, 79, 77, 74, 75, 79, 82, 77, 79, 79, 28.15092 + 82, 85, 87, 88, 90, 89, 91, 92, 92, 92, 93, 97, 100, 95, 96, 97, 28.15093 + 96, 94, 92, 91, 94, 96, 97, 97, 98, 98, 98, 97, 96, 98, 91, 99, 28.15094 + 94, 94, 90, 90, 25, 15, 47, 69, 80, 95, 102, 103, 106, 105, 94, 89, 28.15095 + 96, 101, 99, 97, 100, 102, 101, 101, 104, 105, 102, 102, 106, 105, 105, 105, 28.15096 + 105, 105, 105, 105, 105, 100, 104, 105, 103, 104, 107, 107, 103, 106, 105, 104, 28.15097 + 103, 103, 103, 103, 104, 105, 105, 105, 59, 59, 60, 60, 61, 61, 61, 62, 28.15098 + 62, 62, 62, 62, 63, 64, 66, 66, 65, 65, 65, 65, 66, 66, 66, 67, 28.15099 + 67, 67, 67, 68, 68, 69, 69, 70, 71, 71, 70, 69, 70, 71, 73, 74, 28.15100 + 70, 72, 72, 72, 71, 71, 72, 75, 73, 73, 73, 74, 74, 75, 75, 75, 28.15101 + 75, 75, 76, 76, 76, 76, 77, 76, 74, 81, 77, 74, 78, 75, 72, 79, 28.15102 + 80, 78, 78, 82, 82, 79, 78, 82, 89, 89, 87, 86, 85, 84, 85, 85, 28.15103 + 82, 85, 79, 76, 83, 82, 76, 78, 73, 69, 71, 76, 76, 72, 69, 67, 28.15104 + 69, 64, 62, 63, 60, 55, 54, 57, 52, 53, 51, 48, 44, 45, 49, 55, 28.15105 + 48, 50, 54, 59, 64, 68, 70, 72, 85, 88, 91, 91, 90, 91, 93, 96, 28.15106 + 94, 96, 97, 97, 94, 93, 92, 94, 96, 96, 96, 97, 99, 99, 98, 96, 28.15107 + 96, 90, 98, 94, 94, 89, 89, 24, 16, 48, 70, 80, 95, 102, 103, 106, 28.15108 + 105, 94, 89, 97, 102, 100, 98, 102, 102, 101, 101, 104, 105, 102, 102, 106, 28.15109 + 106, 105, 104, 104, 106, 106, 105, 104, 101, 105, 105, 103, 103, 106, 106, 102, 28.15110 + 106, 105, 104, 103, 103, 103, 103, 104, 105, 104, 104, 59, 59, 60, 61, 61, 28.15111 + 61, 62, 62, 63, 63, 64, 64, 64, 65, 67, 68, 65, 65, 65, 66, 66, 28.15112 + 66, 67, 67, 67, 67, 67, 68, 68, 69, 69, 70, 70, 70, 70, 71, 71, 28.15113 + 72, 71, 71, 71, 72, 74, 73, 72, 72, 73, 75, 73, 73, 73, 74, 74, 28.15114 + 75, 75, 75, 75, 75, 75, 76, 76, 77, 77, 77, 75, 83, 79, 76, 80, 28.15115 + 77, 74, 81, 83, 78, 78, 81, 81, 78, 78, 84, 84, 85, 84, 83, 83, 28.15116 + 81, 79, 78, 78, 79, 70, 65, 71, 67, 59, 59, 40, 33, 32, 37, 37, 28.15117 + 32, 28, 30, 33, 28, 26, 28, 25, 22, 20, 23, 22, 25, 28, 27, 23, 28.15118 + 21, 24, 27, 22, 26, 31, 35, 39, 40, 40, 41, 64, 71, 77, 83, 86, 28.15119 + 89, 93, 96, 93, 97, 98, 99, 97, 94, 94, 95, 95, 95, 94, 96, 99, 28.15120 + 99, 98, 95, 96, 90, 98, 93, 93, 87, 86, 20, 17, 48, 70, 81, 95, 28.15121 + 103, 102, 106, 105, 95, 90, 98, 103, 101, 100, 103, 102, 101, 101, 104, 105, 28.15122 + 102, 102, 106, 107, 105, 103, 104, 106, 107, 105, 103, 102, 106, 106, 103, 103, 28.15123 + 105, 105, 101, 106, 105, 104, 103, 103, 103, 103, 104, 106, 105, 104, 59, 59, 28.15124 + 60, 61, 61, 62, 62, 62, 65, 65, 65, 65, 65, 66, 68, 69, 65, 65, 28.15125 + 65, 66, 66, 67, 67, 67, 67, 67, 67, 68, 68, 69, 69, 69, 68, 70, 28.15126 + 71, 72, 72, 72, 71, 70, 71, 72, 74, 74, 72, 72, 74, 75, 73, 73, 28.15127 + 73, 74, 74, 75, 75, 75, 75, 75, 75, 76, 76, 77, 77, 78, 77, 85, 28.15128 + 82, 78, 82, 79, 76, 82, 86, 80, 78, 82, 81, 78, 79, 85, 79, 79, 28.15129 + 78, 78, 77, 75, 73, 71, 66, 66, 54, 47, 48, 42, 32, 28, 30, 19, 28.15130 + 16, 20, 19, 14, 13, 16, 23, 19, 18, 22, 23, 20, 22, 24, 13, 18, 28.15131 + 24, 25, 21, 17, 17, 19, 18, 20, 24, 25, 26, 23, 19, 19, 33, 43, 28.15132 + 54, 64, 73, 80, 86, 91, 90, 95, 98, 99, 97, 96, 96, 97, 96, 94, 28.15133 + 93, 95, 98, 99, 97, 94, 98, 91, 99, 93, 91, 85, 83, 17, 17, 49, 28.15134 + 70, 81, 95, 103, 102, 106, 106, 95, 90, 98, 104, 102, 101, 104, 102, 101, 28.15135 + 101, 104, 105, 102, 102, 106, 107, 105, 103, 104, 106, 107, 105, 103, 103, 107, 28.15136 + 107, 104, 103, 105, 104, 100, 106, 105, 104, 103, 103, 103, 103, 104, 108, 107, 28.15137 + 105, 60, 62, 64, 63, 61, 60, 61, 63, 61, 62, 65, 67, 67, 67, 67, 28.15138 + 66, 64, 63, 61, 61, 62, 64, 67, 69, 70, 69, 68, 66, 66, 67, 68, 28.15139 + 69, 73, 71, 69, 70, 74, 75, 73, 71, 71, 72, 75, 75, 73, 73, 75, 28.15140 + 76, 76, 77, 77, 78, 78, 77, 77, 76, 72, 75, 78, 78, 75, 74, 75, 28.15141 + 79, 84, 84, 84, 83, 83, 83, 84, 84, 77, 80, 82, 81, 76, 74, 75, 28.15142 + 75, 70, 64, 67, 67, 56, 54, 56, 49, 33, 31, 23, 21, 25, 19, 15, 28.15143 + 21, 19, 12, 16, 16, 11, 17, 21, 10, 25, 21, 19, 21, 19, 15, 15, 28.15144 + 17, 8, 18, 16, 23, 16, 6, 22, 27, 28, 22, 28, 10, 25, 14, 20, 28.15145 + 11, 19, 29, 32, 30, 42, 67, 86, 91, 90, 99, 96, 93, 97, 97, 97, 28.15146 + 104, 96, 95, 96, 97, 97, 98, 99, 99, 99, 93, 99, 91, 92, 91, 90, 28.15147 + 21, 16, 54, 67, 84, 99, 99, 107, 104, 107, 90, 89, 101, 101, 102, 105, 28.15148 + 102, 101, 105, 98, 107, 107, 98, 105, 102, 104, 104, 105, 105, 105, 104, 103, 28.15149 + 103, 104, 105, 105, 106, 106, 105, 105, 104, 106, 105, 105, 104, 104, 105, 105, 28.15150 + 106, 101, 103, 104, 57, 59, 61, 60, 58, 58, 59, 60, 63, 64, 65, 65, 28.15151 + 65, 64, 65, 64, 66, 65, 64, 64, 65, 67, 69, 70, 69, 68, 68, 67, 28.15152 + 67, 68, 68, 69, 73, 71, 69, 71, 73, 75, 73, 71, 71, 72, 75, 75, 28.15153 + 73, 73, 75, 76, 76, 76, 77, 77, 77, 77, 76, 76, 78, 80, 81, 80, 28.15154 + 77, 76, 77, 80, 82, 84, 83, 82, 82, 81, 80, 79, 75, 76, 79, 79, 28.15155 + 78, 76, 74, 71, 65, 50, 44, 39, 26, 26, 29, 22, 18, 21, 19, 19, 28.15156 + 24, 19, 17, 26, 18, 14, 17, 17, 11, 17, 19, 10, 27, 22, 21, 23, 28.15157 + 21, 18, 18, 20, 10, 15, 6, 15, 14, 6, 18, 18, 13, 11, 19, 5, 28.15158 + 18, 12, 19, 14, 16, 19, 21, 25, 31, 40, 58, 74, 92, 96, 92, 92, 28.15159 + 103, 105, 100, 102, 99, 97, 97, 97, 97, 97, 97, 97, 100, 95, 101, 93, 28.15160 + 92, 89, 87, 17, 17, 54, 68, 84, 99, 99, 107, 104, 107, 90, 90, 101, 28.15161 + 101, 102, 105, 102, 101, 105, 98, 107, 107, 98, 105, 102, 103, 104, 104, 105, 28.15162 + 105, 104, 104, 103, 104, 105, 105, 106, 106, 105, 105, 104, 106, 105, 105, 104, 28.15163 + 104, 105, 105, 106, 102, 104, 105, 57, 58, 60, 60, 58, 58, 59, 61, 65, 28.15164 + 64, 64, 63, 62, 62, 63, 63, 65, 65, 65, 66, 67, 68, 68, 69, 67, 28.15165 + 68, 68, 69, 69, 68, 68, 68, 71, 70, 69, 70, 72, 73, 73, 72, 72, 28.15166 + 73, 75, 75, 73, 73, 75, 76, 75, 75, 76, 76, 76, 76, 75, 75, 81, 28.15167 + 81, 81, 80, 77, 77, 78, 80, 79, 81, 82, 82, 81, 80, 78, 77, 79, 28.15168 + 76, 73, 71, 67, 62, 55, 46, 44, 27, 22, 21, 13, 17, 21, 14, 7, 28.15169 + 14, 14, 17, 22, 16, 15, 26, 18, 15, 19, 18, 12, 17, 20, 11, 21, 28.15170 + 16, 16, 18, 18, 14, 15, 18, 16, 13, 0, 10, 13, 7, 15, 12, 6, 28.15171 + 8, 15, 5, 14, 11, 19, 16, 18, 13, 14, 23, 22, 19, 31, 52, 76, 28.15172 + 87, 90, 92, 101, 101, 98, 105, 101, 99, 99, 98, 97, 96, 96, 95, 100, 28.15173 + 96, 103, 95, 93, 89, 84, 12, 18, 55, 68, 84, 98, 99, 107, 104, 106, 28.15174 + 91, 91, 102, 101, 101, 104, 101, 101, 105, 98, 107, 107, 98, 105, 102, 103, 28.15175 + 103, 104, 105, 105, 104, 104, 103, 104, 105, 105, 106, 106, 105, 105, 104, 106, 28.15176 + 105, 105, 104, 104, 105, 105, 106, 103, 105, 106, 60, 61, 64, 63, 62, 62, 28.15177 + 63, 65, 64, 63, 62, 61, 61, 62, 64, 65, 62, 63, 64, 65, 66, 66, 28.15178 + 65, 65, 66, 67, 68, 70, 70, 69, 68, 67, 70, 70, 70, 71, 71, 72, 28.15179 + 73, 73, 72, 73, 75, 75, 73, 73, 75, 76, 74, 75, 75, 76, 76, 75, 28.15180 + 75, 74, 78, 78, 77, 76, 76, 76, 77, 78, 79, 78, 79, 80, 78, 76, 28.15181 + 73, 72, 69, 62, 54, 49, 45, 40, 34, 24, 22, 10, 13, 19, 19, 22, 28.15182 + 21, 10, 9, 11, 7, 8, 15, 11, 6, 16, 15, 14, 18, 17, 9, 12, 28.15183 + 17, 9, 12, 9, 7, 10, 9, 7, 8, 11, 15, 13, 0, 7, 11, 4, 28.15184 + 13, 8, 8, 12, 15, 9, 9, 10, 15, 14, 20, 14, 14, 19, 19, 18, 28.15185 + 23, 33, 43, 67, 84, 88, 91, 88, 92, 108, 99, 99, 98, 98, 98, 97, 28.15186 + 97, 97, 98, 95, 103, 96, 95, 89, 83, 10, 19, 56, 68, 84, 98, 99, 28.15187 + 107, 105, 106, 91, 92, 103, 101, 100, 103, 101, 101, 105, 98, 107, 107, 98, 28.15188 + 105, 102, 102, 103, 104, 105, 105, 105, 104, 104, 104, 105, 105, 106, 106, 105, 28.15189 + 105, 104, 106, 105, 105, 104, 104, 105, 105, 106, 104, 106, 106, 60, 62, 65, 28.15190 + 64, 63, 63, 65, 66, 61, 60, 61, 61, 62, 64, 67, 68, 63, 64, 65, 28.15191 + 66, 66, 66, 65, 65, 65, 66, 68, 69, 70, 69, 68, 68, 69, 69, 70, 28.15192 + 70, 71, 71, 73, 73, 72, 73, 75, 75, 73, 73, 76, 76, 74, 75, 75, 28.15193 + 76, 76, 75, 75, 74, 76, 76, 75, 76, 77, 78, 78, 76, 77, 74, 72, 28.15194 + 68, 65, 60, 56, 53, 43, 35, 27, 24, 25, 26, 25, 21, 22, 11, 13, 28.15195 + 18, 15, 17, 14, 2, 15, 10, 0, 1, 11, 10, 5, 11, 14, 14, 19, 28.15196 + 17, 8, 11, 16, 10, 12, 9, 9, 11, 12, 9, 10, 13, 12, 14, 3, 28.15197 + 10, 9, 0, 11, 10, 11, 18, 17, 15, 10, 14, 15, 16, 17, 19, 16, 28.15198 + 13, 18, 27, 27, 21, 22, 45, 61, 73, 84, 87, 90, 102, 96, 97, 98, 28.15199 + 98, 98, 99, 99, 99, 96, 93, 102, 96, 95, 89, 83, 10, 21, 57, 69, 28.15200 + 84, 98, 99, 108, 105, 105, 92, 94, 104, 101, 99, 102, 101, 101, 105, 98, 28.15201 + 107, 107, 98, 105, 102, 102, 103, 104, 105, 105, 105, 105, 105, 104, 105, 105, 28.15202 + 106, 106, 105, 105, 104, 106, 105, 105, 104, 104, 105, 105, 106, 104, 106, 106, 28.15203 + 58, 59, 62, 62, 61, 61, 63, 65, 59, 59, 61, 62, 64, 66, 68, 69, 28.15204 + 68, 68, 68, 68, 68, 68, 68, 68, 65, 66, 67, 68, 69, 69, 69, 69, 28.15205 + 68, 69, 71, 71, 70, 70, 73, 74, 72, 73, 75, 75, 73, 73, 76, 77, 28.15206 + 75, 75, 76, 76, 76, 76, 75, 75, 77, 77, 77, 78, 80, 80, 79, 74, 28.15207 + 69, 63, 58, 52, 45, 39, 34, 31, 29, 24, 17, 13, 13, 16, 16, 16, 28.15208 + 27, 15, 14, 14, 11, 15, 19, 12, 17, 12, 0, 0, 12, 14, 9, 17, 28.15209 + 13, 15, 21, 19, 9, 13, 19, 14, 15, 12, 11, 13, 13, 10, 11, 13, 28.15210 + 10, 16, 9, 16, 11, 0, 12, 13, 11, 18, 14, 19, 10, 22, 19, 20, 28.15211 + 14, 20, 18, 12, 17, 29, 27, 17, 23, 30, 33, 49, 79, 92, 89, 91, 28.15212 + 94, 97, 97, 98, 99, 100, 100, 101, 96, 93, 102, 95, 94, 89, 83, 10, 28.15213 + 22, 58, 69, 84, 97, 99, 108, 106, 104, 92, 95, 106, 101, 98, 101, 100, 28.15214 + 101, 105, 98, 107, 107, 98, 105, 102, 101, 102, 103, 104, 105, 105, 105, 105, 28.15215 + 104, 105, 105, 106, 106, 105, 105, 104, 106, 105, 105, 104, 104, 105, 105, 106, 28.15216 + 103, 105, 106, 55, 57, 60, 60, 59, 60, 61, 63, 60, 61, 63, 65, 66, 28.15217 + 66, 67, 67, 70, 69, 67, 67, 66, 67, 68, 69, 66, 66, 66, 67, 68, 28.15218 + 69, 70, 71, 67, 70, 71, 71, 70, 70, 72, 75, 72, 73, 75, 75, 73, 28.15219 + 73, 76, 77, 76, 76, 77, 77, 77, 77, 76, 76, 78, 77, 77, 79, 80, 28.15220 + 79, 74, 66, 52, 45, 38, 32, 26, 23, 20, 18, 20, 19, 16, 12, 9, 28.15221 + 9, 10, 10, 20, 14, 16, 18, 14, 20, 27, 23, 13, 14, 9, 8, 15, 28.15222 + 12, 11, 22, 11, 13, 20, 18, 8, 12, 19, 14, 16, 13, 12, 13, 13, 28.15223 + 10, 11, 14, 12, 18, 13, 22, 17, 6, 15, 15, 12, 18, 10, 18, 10, 28.15224 + 25, 18, 19, 17, 21, 23, 20, 19, 19, 21, 24, 26, 26, 21, 32, 62, 28.15225 + 78, 82, 89, 95, 99, 99, 99, 99, 99, 99, 99, 99, 95, 103, 94, 93, 28.15226 + 87, 81, 8, 23, 59, 70, 84, 97, 99, 108, 106, 103, 92, 96, 106, 101, 28.15227 + 98, 101, 100, 101, 105, 98, 107, 107, 98, 105, 102, 101, 102, 103, 104, 105, 28.15228 + 106, 106, 105, 104, 105, 105, 106, 106, 105, 105, 104, 106, 105, 105, 104, 104, 28.15229 + 105, 105, 106, 102, 103, 104, 56, 58, 60, 60, 60, 60, 62, 64, 62, 64, 28.15230 + 65, 67, 67, 67, 66, 65, 69, 67, 65, 63, 63, 65, 67, 68, 67, 67, 28.15231 + 66, 65, 66, 68, 70, 71, 68, 70, 72, 71, 69, 69, 71, 74, 71, 72, 28.15232 + 75, 75, 73, 74, 76, 77, 75, 75, 76, 77, 78, 77, 78, 77, 78, 78, 28.15233 + 75, 76, 75, 69, 62, 52, 33, 26, 22, 18, 15, 17, 17, 17, 3, 7, 28.15234 + 11, 14, 12, 12, 14, 17, 11, 11, 19, 23, 16, 16, 17, 11, 7, 15, 28.15235 + 15, 13, 13, 5, 5, 20, 10, 10, 18, 16, 7, 11, 19, 14, 23, 19, 28.15236 + 17, 19, 18, 14, 14, 17, 15, 20, 14, 25, 23, 13, 19, 16, 15, 19, 28.15237 + 7, 17, 8, 26, 14, 16, 20, 20, 27, 30, 21, 9, 15, 31, 21, 28, 28.15238 + 24, 23, 36, 50, 66, 90, 95, 99, 99, 98, 99, 98, 97, 97, 103, 98, 28.15239 + 104, 94, 90, 84, 78, 5, 24, 60, 70, 84, 97, 99, 107, 105, 103, 92, 28.15240 + 97, 107, 101, 97, 100, 100, 101, 105, 98, 107, 107, 98, 105, 102, 101, 102, 28.15241 + 102, 103, 104, 105, 105, 105, 104, 105, 105, 106, 106, 105, 105, 104, 106, 105, 28.15242 + 105, 104, 104, 105, 105, 106, 101, 103, 103, 61, 61, 61, 61, 62, 63, 64, 28.15243 + 65, 65, 65, 65, 65, 64, 66, 70, 74, 68, 68, 68, 69, 69, 70, 70, 28.15244 + 69, 65, 66, 67, 67, 68, 69, 69, 70, 72, 72, 73, 72, 73, 71, 70, 28.15245 + 70, 75, 74, 73, 73, 73, 75, 76, 76, 69, 70, 71, 73, 75, 77, 78, 28.15246 + 78, 88, 74, 74, 81, 68, 51, 38, 23, 22, 15, 12, 13, 14, 12, 8, 28.15247 + 3, 5, 7, 13, 15, 13, 17, 22, 26, 16, 14, 18, 38, 10, 21, 21, 28.15248 + 21, 12, 22, 8, 13, 17, 7, 14, 19, 10, 22, 25, 15, 12, 19, 20, 28.15249 + 12, 26, 21, 24, 23, 13, 12, 16, 11, 19, 26, 22, 19, 23, 19, 15, 28.15250 + 22, 25, 21, 17, 16, 18, 22, 22, 22, 10, 19, 23, 17, 13, 14, 16, 28.15251 + 16, 13, 18, 24, 25, 22, 27, 47, 73, 95, 90, 86, 94, 102, 102, 99, 28.15252 + 98, 101, 98, 96, 96, 83, 89, 75, 6, 27, 62, 71, 84, 98, 99, 106, 28.15253 + 101, 103, 83, 96, 102, 102, 107, 100, 104, 101, 98, 105, 107, 99, 101, 106, 28.15254 + 102, 104, 104, 105, 105, 105, 104, 103, 103, 103, 104, 104, 104, 104, 103, 102, 28.15255 + 101, 105, 105, 105, 104, 104, 103, 103, 103, 101, 101, 102, 61, 61, 60, 59, 28.15256 + 59, 59, 61, 61, 65, 65, 67, 66, 65, 66, 70, 72, 68, 69, 69, 70, 28.15257 + 69, 70, 70, 70, 66, 66, 67, 68, 68, 68, 69, 69, 72, 72, 72, 72, 28.15258 + 71, 70, 70, 71, 73, 74, 74, 74, 74, 77, 77, 76, 74, 73, 75, 75, 28.15259 + 77, 79, 80, 81, 81, 75, 76, 72, 52, 36, 27, 16, 15, 11, 9, 9, 28.15260 + 12, 12, 11, 8, 10, 10, 12, 15, 18, 20, 21, 19, 18, 12, 20, 22, 28.15261 + 17, 13, 23, 25, 14, 23, 10, 16, 19, 6, 11, 16, 9, 17, 21, 18, 28.15262 + 19, 26, 27, 23, 21, 17, 21, 22, 13, 15, 20, 17, 21, 28, 24, 21, 28.15263 + 25, 21, 17, 23, 21, 17, 13, 15, 18, 20, 16, 12, 21, 24, 22, 19, 28.15264 + 18, 21, 18, 12, 12, 16, 21, 23, 20, 21, 32, 54, 80, 93, 97, 93, 28.15265 + 96, 103, 105, 101, 101, 100, 97, 99, 86, 89, 74, 5, 27, 62, 70, 85, 28.15266 + 98, 100, 106, 102, 104, 85, 97, 103, 102, 106, 98, 101, 101, 99, 105, 107, 28.15267 + 99, 101, 106, 102, 101, 102, 102, 103, 103, 102, 101, 101, 104, 105, 105, 105, 28.15268 + 105, 104, 103, 102, 105, 105, 105, 104, 104, 103, 103, 103, 101, 101, 102, 63, 28.15269 + 62, 61, 60, 59, 59, 60, 60, 65, 66, 68, 68, 66, 66, 68, 70, 68, 28.15270 + 69, 68, 69, 69, 70, 70, 70, 67, 67, 67, 68, 68, 68, 69, 69, 72, 28.15271 + 72, 70, 69, 69, 70, 72, 73, 72, 74, 75, 77, 77, 78, 77, 76, 78, 28.15272 + 77, 76, 76, 77, 78, 79, 81, 77, 75, 76, 61, 34, 25, 23, 15, 14, 28.15273 + 9, 8, 9, 11, 14, 15, 15, 15, 13, 12, 15, 20, 21, 16, 12, 17, 28.15274 + 13, 20, 6, 25, 9, 23, 30, 13, 24, 12, 19, 22, 10, 13, 17, 10, 28.15275 + 11, 14, 18, 24, 28, 28, 27, 21, 17, 20, 22, 15, 17, 22, 19, 21, 28.15276 + 28, 24, 20, 24, 20, 16, 23, 17, 15, 13, 16, 20, 19, 14, 8, 29, 28.15277 + 26, 20, 18, 22, 24, 17, 8, 14, 15, 19, 22, 21, 19, 23, 36, 56, 28.15278 + 85, 96, 88, 85, 96, 102, 97, 101, 100, 99, 101, 88, 92, 75, 4, 26, 28.15279 + 62, 70, 85, 99, 101, 107, 103, 105, 86, 98, 103, 102, 105, 97, 100, 102, 28.15280 + 99, 105, 108, 101, 102, 106, 102, 101, 101, 102, 103, 103, 102, 102, 101, 105, 28.15281 + 106, 106, 106, 106, 105, 104, 103, 105, 105, 105, 104, 104, 103, 103, 103, 101, 28.15282 + 101, 102, 64, 64, 63, 62, 62, 62, 64, 64, 64, 66, 69, 69, 67, 66, 28.15283 + 67, 68, 68, 69, 68, 69, 69, 70, 70, 70, 67, 68, 68, 69, 68, 69, 28.15284 + 69, 69, 72, 72, 69, 69, 68, 70, 72, 75, 72, 73, 76, 78, 79, 79, 28.15285 + 78, 76, 77, 76, 74, 74, 74, 76, 78, 79, 78, 75, 69, 46, 20, 19, 28.15286 + 23, 14, 12, 9, 8, 8, 11, 13, 16, 17, 14, 13, 13, 15, 19, 17, 28.15287 + 13, 8, 15, 18, 15, 5, 24, 12, 15, 30, 12, 23, 13, 21, 26, 13, 28.15288 + 17, 20, 16, 11, 10, 18, 23, 23, 21, 23, 24, 19, 22, 22, 14, 16, 28.15289 + 21, 17, 18, 25, 21, 17, 20, 16, 12, 19, 15, 16, 18, 19, 20, 19, 28.15290 + 18, 18, 27, 22, 17, 16, 19, 21, 15, 8, 17, 15, 16, 21, 22, 19, 28.15291 + 19, 25, 37, 66, 84, 84, 84, 91, 98, 97, 101, 101, 101, 103, 90, 92, 28.15292 + 75, 3, 26, 62, 70, 86, 99, 101, 108, 104, 105, 85, 98, 103, 102, 105, 28.15293 + 98, 101, 103, 100, 106, 108, 101, 102, 106, 101, 103, 103, 104, 105, 105, 105, 28.15294 + 104, 104, 105, 105, 106, 106, 105, 104, 103, 103, 105, 105, 105, 104, 104, 103, 28.15295 + 103, 103, 102, 102, 102, 62, 62, 62, 62, 63, 64, 67, 68, 64, 66, 69, 28.15296 + 69, 67, 66, 67, 68, 68, 68, 68, 69, 69, 70, 70, 70, 68, 69, 69, 28.15297 + 69, 69, 70, 69, 69, 72, 73, 70, 69, 70, 72, 74, 76, 72, 74, 76, 28.15298 + 79, 79, 80, 79, 77, 75, 75, 74, 74, 74, 76, 77, 77, 78, 66, 52, 28.15299 + 30, 10, 16, 20, 12, 12, 11, 10, 8, 9, 10, 13, 15, 7, 11, 15, 28.15300 + 16, 15, 12, 11, 12, 13, 25, 11, 15, 16, 18, 6, 24, 15, 27, 15, 28.15301 + 23, 26, 14, 17, 20, 20, 13, 12, 17, 21, 20, 18, 19, 24, 18, 21, 28.15302 + 21, 13, 14, 21, 19, 16, 23, 19, 16, 19, 15, 11, 17, 10, 16, 21, 28.15303 + 20, 16, 16, 21, 27, 21, 20, 18, 18, 17, 15, 14, 16, 21, 16, 14, 28.15304 + 19, 22, 21, 20, 23, 30, 45, 63, 81, 90, 91, 95, 99, 100, 101, 101, 28.15305 + 104, 91, 93, 75, 2, 28, 63, 71, 86, 100, 101, 108, 104, 102, 83, 96, 28.15306 + 102, 102, 106, 100, 103, 104, 101, 107, 109, 101, 102, 106, 101, 102, 103, 104, 28.15307 + 105, 105, 105, 105, 105, 104, 104, 104, 104, 104, 103, 102, 101, 105, 105, 105, 28.15308 + 104, 104, 103, 103, 103, 102, 102, 103, 58, 58, 59, 60, 61, 63, 66, 67, 28.15309 + 65, 66, 68, 68, 66, 66, 68, 70, 68, 68, 68, 69, 69, 70, 70, 70, 28.15310 + 69, 69, 69, 70, 70, 70, 69, 70, 74, 73, 71, 72, 73, 75, 75, 77, 28.15311 + 74, 76, 77, 78, 79, 80, 79, 79, 77, 76, 77, 77, 77, 76, 74, 74, 28.15312 + 68, 49, 34, 19, 8, 12, 15, 7, 11, 11, 10, 10, 9, 9, 11, 13, 28.15313 + 6, 11, 16, 17, 13, 11, 12, 15, 14, 21, 8, 23, 12, 20, 4, 17, 28.15314 + 21, 30, 18, 23, 26, 12, 15, 18, 18, 17, 16, 17, 19, 21, 21, 20, 28.15315 + 20, 15, 18, 19, 12, 16, 23, 22, 16, 23, 20, 16, 20, 17, 13, 20, 28.15316 + 7, 14, 20, 18, 13, 13, 20, 28, 18, 20, 22, 23, 18, 13, 17, 25, 28.15317 + 23, 18, 15, 18, 22, 21, 21, 25, 24, 25, 39, 63, 81, 86, 90, 96, 28.15318 + 99, 100, 100, 102, 90, 93, 75, 4, 30, 64, 72, 87, 100, 101, 107, 103, 28.15319 + 101, 83, 96, 102, 103, 107, 101, 104, 105, 102, 107, 109, 102, 102, 106, 101, 28.15320 + 99, 100, 101, 102, 103, 103, 103, 103, 103, 103, 104, 104, 103, 103, 102, 101, 28.15321 + 105, 105, 105, 104, 104, 103, 103, 103, 103, 103, 103, 60, 60, 60, 60, 61, 28.15322 + 63, 65, 66, 65, 65, 67, 66, 65, 66, 70, 72, 68, 68, 68, 69, 69, 28.15323 + 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 73, 74, 74, 75, 77, 28.15324 + 78, 77, 79, 76, 76, 76, 77, 78, 80, 80, 82, 77, 79, 79, 78, 75, 28.15325 + 71, 66, 63, 53, 33, 24, 20, 12, 10, 10, 6, 9, 11, 13, 13, 11, 28.15326 + 10, 12, 14, 14, 14, 16, 15, 15, 14, 14, 14, 17, 10, 11, 19, 12, 28.15327 + 14, 14, 14, 18, 27, 15, 21, 25, 13, 18, 22, 16, 22, 21, 14, 13, 28.15328 + 19, 21, 17, 20, 14, 18, 18, 10, 14, 22, 20, 14, 21, 18, 15, 20, 28.15329 + 17, 14, 21, 11, 14, 17, 18, 17, 16, 17, 18, 21, 20, 22, 25, 19, 28.15330 + 15, 19, 28, 22, 17, 16, 21, 23, 20, 19, 22, 17, 18, 24, 38, 60, 28.15331 + 78, 88, 91, 98, 99, 98, 100, 87, 90, 75, 5, 32, 66, 74, 87, 100, 28.15332 + 100, 106, 102, 103, 84, 97, 103, 102, 106, 99, 102, 106, 102, 108, 110, 102, 28.15333 + 102, 107, 102, 99, 100, 101, 102, 103, 103, 103, 103, 104, 104, 105, 105, 104, 28.15334 + 103, 103, 102, 105, 105, 105, 104, 104, 103, 103, 103, 103, 103, 103, 64, 64, 28.15335 + 63, 63, 63, 64, 66, 67, 65, 65, 66, 65, 64, 66, 71, 74, 68, 68, 28.15336 + 68, 69, 69, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 73, 75, 28.15337 + 75, 77, 79, 79, 79, 79, 77, 77, 76, 76, 77, 79, 80, 82, 76, 77, 28.15338 + 76, 75, 70, 64, 57, 52, 41, 23, 21, 26, 18, 9, 8, 7, 5, 10, 28.15339 + 14, 15, 12, 12, 15, 17, 21, 18, 14, 15, 18, 18, 16, 12, 20, 0, 28.15340 + 16, 13, 16, 8, 25, 14, 12, 22, 11, 19, 25, 16, 25, 30, 13, 24, 28.15341 + 23, 11, 6, 14, 17, 11, 24, 18, 19, 18, 8, 11, 18, 15, 11, 18, 28.15342 + 14, 13, 17, 16, 13, 21, 16, 16, 16, 21, 23, 23, 15, 10, 23, 19, 28.15343 + 21, 23, 19, 14, 17, 26, 21, 19, 19, 23, 22, 19, 16, 17, 17, 24, 28.15344 + 23, 24, 43, 75, 91, 88, 95, 97, 95, 98, 85, 90, 75, 6, 33, 67, 28.15345 + 74, 88, 100, 100, 105, 101, 105, 86, 98, 103, 102, 105, 97, 100, 106, 103, 28.15346 + 108, 110, 102, 102, 107, 102, 101, 102, 103, 104, 105, 106, 106, 106, 105, 106, 28.15347 + 106, 106, 106, 105, 104, 103, 105, 105, 105, 104, 104, 103, 103, 103, 103, 103, 28.15348 + 103, 58, 63, 64, 61, 60, 63, 65, 64, 66, 66, 67, 68, 68, 69, 70, 28.15349 + 70, 71, 70, 69, 68, 68, 68, 68, 68, 64, 69, 72, 72, 73, 75, 74, 28.15350 + 70, 74, 72, 72, 75, 77, 74, 75, 79, 77, 75, 74, 74, 75, 76, 75, 28.15351 + 74, 79, 80, 75, 65, 65, 63, 48, 28, 26, 23, 19, 15, 11, 9, 9, 28.15352 + 8, 12, 10, 8, 8, 10, 12, 12, 12, 15, 21, 22, 16, 13, 14, 13, 28.15353 + 9, 25, 16, 10, 12, 16, 16, 14, 14, 16, 16, 17, 19, 19, 18, 22, 28.15354 + 28, 26, 20, 24, 24, 13, 11, 16, 14, 21, 17, 17, 20, 17, 13, 15, 28.15355 + 21, 15, 20, 20, 14, 11, 14, 20, 22, 14, 19, 21, 20, 21, 24, 23, 28.15356 + 20, 24, 27, 15, 24, 28, 25, 30, 21, 15, 24, 22, 18, 19, 15, 12, 28.15357 + 19, 14, 14, 14, 19, 32, 50, 71, 85, 95, 92, 90, 108, 84, 91, 64, 28.15358 + 6, 34, 65, 73, 89, 101, 98, 104, 102, 102, 88, 101, 103, 101, 107, 101, 28.15359 + 102, 104, 106, 108, 107, 104, 102, 102, 103, 107, 107, 105, 104, 104, 103, 102, 28.15360 + 102, 105, 105, 105, 104, 104, 103, 103, 103, 104, 104, 104, 104, 104, 104, 104, 28.15361 + 104, 106, 105, 105, 58, 63, 64, 61, 60, 63, 65, 64, 66, 66, 67, 68, 28.15362 + 68, 69, 70, 70, 68, 68, 68, 68, 68, 69, 70, 70, 66, 70, 72, 71, 28.15363 + 71, 74, 74, 70, 74, 72, 72, 75, 77, 74, 76, 79, 74, 75, 76, 77, 28.15364 + 79, 78, 77, 76, 71, 73, 73, 66, 58, 45, 30, 15, 22, 19, 16, 12, 28.15365 + 10, 8, 5, 6, 10, 10, 9, 9, 9, 10, 12, 13, 6, 13, 15, 13, 28.15366 + 12, 16, 16, 13, 20, 13, 9, 13, 15, 13, 12, 14, 21, 18, 17, 21, 28.15367 + 21, 20, 22, 28, 25, 21, 27, 29, 19, 16, 17, 13, 18, 16, 17, 21, 28.15368 + 20, 15, 15, 20, 15, 18, 18, 16, 18, 22, 22, 19, 19, 22, 23, 21, 28.15369 + 21, 24, 23, 20, 26, 28, 16, 23, 27, 23, 29, 19, 26, 30, 24, 21, 28.15370 + 26, 22, 17, 20, 6, 10, 15, 18, 24, 36, 54, 69, 94, 92, 89, 104, 28.15371 + 84, 97, 67, 9, 34, 65, 73, 90, 102, 99, 103, 102, 101, 87, 101, 103, 28.15372 + 101, 107, 101, 103, 103, 105, 107, 107, 104, 103, 103, 104, 105, 105, 104, 104, 28.15373 + 104, 104, 104, 104, 105, 105, 105, 104, 104, 103, 103, 103, 104, 104, 104, 104, 28.15374 + 104, 104, 104, 104, 105, 105, 104, 59, 63, 65, 61, 60, 63, 66, 64, 66, 28.15375 + 66, 67, 68, 68, 69, 70, 70, 66, 66, 66, 67, 68, 69, 71, 72, 68, 28.15376 + 71, 71, 69, 70, 74, 74, 71, 73, 71, 71, 76, 77, 74, 75, 78, 72, 28.15377 + 75, 78, 79, 77, 76, 75, 74, 70, 66, 64, 57, 41, 23, 13, 10, 18, 28.15378 + 16, 13, 11, 9, 7, 5, 4, 7, 10, 12, 11, 8, 8, 13, 16, 4, 28.15379 + 10, 14, 14, 14, 17, 19, 17, 15, 11, 11, 15, 15, 12, 12, 16, 21, 28.15380 + 16, 14, 17, 19, 18, 17, 21, 22, 21, 30, 34, 25, 22, 21, 12, 13, 28.15381 + 15, 17, 22, 21, 17, 15, 18, 15, 16, 15, 16, 22, 27, 24, 17, 21, 28.15382 + 24, 23, 19, 19, 22, 23, 20, 25, 28, 16, 23, 25, 20, 25, 16, 26, 28.15383 + 28, 19, 17, 25, 23, 14, 15, 3, 11, 17, 20, 19, 24, 39, 52, 83, 28.15384 + 87, 87, 96, 82, 101, 64, 8, 34, 66, 74, 91, 103, 99, 103, 101, 100, 28.15385 + 85, 100, 102, 101, 107, 102, 104, 101, 104, 106, 106, 105, 104, 104, 105, 103, 28.15386 + 103, 104, 105, 105, 106, 106, 106, 105, 105, 104, 104, 104, 104, 103, 103, 104, 28.15387 + 104, 104, 104, 104, 104, 104, 104, 103, 103, 104, 59, 64, 65, 62, 61, 63, 28.15388 + 66, 64, 66, 66, 67, 68, 68, 69, 70, 70, 67, 66, 66, 67, 68, 69, 28.15389 + 70, 71, 69, 72, 71, 68, 69, 73, 74, 72, 73, 70, 71, 76, 76, 75, 28.15390 + 75, 78, 74, 76, 77, 76, 73, 71, 70, 70, 78, 62, 46, 37, 22, 9, 28.15391 + 8, 17, 14, 13, 12, 10, 9, 7, 6, 5, 5, 10, 14, 13, 8, 8, 28.15392 + 13, 18, 12, 15, 18, 18, 17, 18, 17, 17, 14, 14, 15, 19, 18, 15, 28.15393 + 15, 20, 23, 18, 15, 17, 18, 17, 16, 18, 20, 19, 28, 31, 25, 27, 28.15394 + 26, 17, 14, 15, 18, 19, 19, 18, 18, 20, 17, 19, 19, 18, 21, 26, 28.15395 + 24, 20, 21, 23, 22, 18, 18, 22, 23, 21, 22, 26, 16, 22, 24, 19, 28.15396 + 26, 18, 20, 22, 15, 13, 19, 18, 13, 15, 10, 14, 18, 20, 19, 22, 28.15397 + 30, 40, 62, 76, 86, 90, 77, 99, 55, 7, 34, 66, 75, 92, 104, 99, 28.15398 + 103, 100, 98, 84, 99, 102, 101, 108, 102, 104, 100, 104, 106, 106, 105, 105, 28.15399 + 105, 106, 104, 104, 104, 105, 105, 106, 105, 105, 104, 104, 104, 104, 104, 104, 28.15400 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 102, 103, 103, 60, 64, 66, 28.15401 + 62, 61, 64, 66, 65, 66, 66, 67, 68, 68, 69, 70, 70, 69, 68, 68, 28.15402 + 67, 67, 68, 68, 69, 70, 72, 73, 69, 70, 74, 74, 71, 73, 71, 71, 28.15403 + 76, 76, 74, 75, 78, 76, 76, 74, 74, 71, 70, 71, 71, 74, 53, 33, 28.15404 + 23, 14, 8, 11, 19, 11, 11, 11, 11, 10, 9, 8, 7, 5, 10, 15, 28.15405 + 14, 11, 10, 14, 19, 18, 19, 21, 22, 20, 16, 16, 17, 15, 15, 16, 28.15406 + 21, 19, 15, 16, 21, 26, 21, 18, 20, 20, 18, 17, 20, 18, 18, 24, 28.15407 + 25, 21, 28, 31, 20, 16, 17, 17, 15, 15, 17, 21, 24, 19, 23, 23, 28.15408 + 17, 15, 19, 23, 23, 17, 19, 18, 15, 16, 22, 24, 22, 17, 22, 14, 28.15409 + 22, 24, 19, 28, 21, 19, 25, 21, 17, 20, 18, 17, 25, 18, 16, 14, 28.15410 + 16, 19, 24, 28, 32, 42, 62, 85, 87, 76, 95, 45, 9, 36, 67, 76, 28.15411 + 92, 103, 99, 103, 100, 98, 84, 98, 101, 100, 107, 102, 104, 101, 104, 106, 28.15412 + 106, 105, 105, 106, 107, 106, 106, 106, 105, 105, 104, 104, 104, 104, 104, 104, 28.15413 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 102, 103, 103, 28.15414 + 60, 64, 66, 63, 62, 64, 67, 65, 66, 66, 67, 68, 68, 69, 70, 70, 28.15415 + 70, 69, 68, 67, 67, 67, 67, 68, 69, 72, 73, 71, 71, 74, 74, 70, 28.15416 + 73, 70, 71, 75, 75, 74, 74, 78, 76, 74, 72, 72, 73, 75, 72, 69, 28.15417 + 53, 40, 27, 22, 18, 13, 12, 13, 8, 9, 11, 13, 12, 12, 11, 9, 28.15418 + 8, 11, 15, 16, 15, 14, 17, 19, 17, 17, 19, 22, 20, 16, 16, 19, 28.15419 + 19, 15, 16, 17, 19, 16, 16, 18, 22, 19, 19, 19, 16, 12, 15, 20, 28.15420 + 20, 19, 22, 21, 17, 28, 33, 22, 20, 21, 19, 14, 14, 19, 23, 24, 28.15421 + 21, 25, 25, 17, 13, 15, 20, 23, 14, 18, 19, 16, 18, 22, 24, 22, 28.15422 + 15, 22, 14, 22, 23, 19, 28, 24, 19, 26, 24, 19, 20, 18, 17, 29, 28.15423 + 22, 17, 12, 12, 16, 22, 24, 26, 31, 49, 77, 83, 78, 94, 37, 17, 28.15424 + 38, 69, 76, 91, 102, 98, 104, 102, 98, 84, 98, 101, 100, 106, 101, 103, 28.15425 + 102, 104, 106, 106, 105, 104, 105, 106, 107, 107, 106, 105, 105, 104, 103, 103, 28.15426 + 103, 103, 104, 104, 104, 104, 105, 105, 104, 104, 104, 104, 104, 104, 104, 104, 28.15427 + 103, 103, 104, 60, 65, 66, 63, 62, 65, 67, 66, 66, 66, 67, 68, 68, 28.15428 + 69, 70, 70, 68, 68, 67, 67, 67, 68, 69, 69, 68, 72, 74, 72, 72, 28.15429 + 74, 73, 68, 72, 69, 71, 75, 76, 74, 74, 77, 77, 74, 70, 71, 74, 28.15430 + 71, 62, 52, 30, 30, 27, 20, 14, 12, 11, 8, 5, 8, 11, 14, 14, 28.15431 + 15, 15, 13, 12, 13, 15, 18, 19, 20, 20, 20, 20, 19, 21, 25, 24, 28.15432 + 18, 18, 21, 25, 18, 14, 17, 20, 18, 17, 18, 19, 20, 21, 21, 15, 28.15433 + 11, 15, 24, 23, 23, 24, 21, 16, 28, 31, 17, 20, 24, 22, 17, 15, 28.15434 + 20, 24, 23, 18, 21, 21, 16, 15, 19, 20, 19, 17, 20, 21, 19, 20, 28.15435 + 23, 23, 20, 16, 23, 16, 23, 24, 18, 28, 23, 23, 26, 20, 15, 18, 28.15436 + 16, 13, 23, 21, 19, 16, 15, 16, 18, 20, 23, 28, 35, 61, 72, 77, 28.15437 + 93, 29, 20, 41, 70, 75, 90, 100, 98, 104, 104, 99, 85, 99, 101, 99, 28.15438 + 105, 99, 101, 104, 105, 107, 107, 105, 104, 104, 105, 105, 105, 105, 105, 105, 28.15439 + 105, 105, 105, 103, 103, 103, 104, 104, 105, 105, 105, 104, 104, 104, 104, 104, 28.15440 + 104, 104, 104, 105, 105, 104, 60, 66, 66, 64, 62, 66, 67, 66, 66, 66, 28.15441 + 67, 68, 68, 69, 70, 70, 67, 66, 66, 67, 68, 69, 71, 72, 67, 72, 28.15442 + 75, 73, 73, 75, 73, 67, 72, 70, 71, 76, 78, 76, 77, 81, 79, 74, 28.15443 + 68, 68, 68, 60, 43, 27, 12, 21, 25, 14, 6, 9, 12, 12, 6, 8, 28.15444 + 11, 15, 16, 16, 15, 14, 13, 12, 14, 17, 21, 22, 21, 19, 26, 23, 28.15445 + 25, 29, 26, 19, 18, 22, 32, 21, 15, 18, 21, 21, 21, 20, 25, 28, 28.15446 + 32, 31, 23, 18, 24, 34, 26, 26, 27, 23, 17, 27, 28, 12, 19, 24, 28.15447 + 25, 20, 17, 22, 23, 20, 17, 18, 17, 17, 21, 25, 22, 15, 20, 24, 28.15448 + 25, 22, 22, 25, 22, 18, 19, 26, 18, 24, 24, 18, 27, 22, 30, 29, 28.15449 + 19, 14, 21, 20, 13, 17, 19, 23, 24, 21, 18, 16, 18, 22, 27, 23, 28.15450 + 44, 56, 71, 86, 19, 13, 39, 68, 73, 87, 99, 97, 106, 106, 102, 88, 28.15451 + 101, 102, 99, 105, 97, 99, 104, 106, 108, 107, 105, 102, 102, 103, 103, 103, 28.15452 + 104, 105, 105, 105, 106, 106, 103, 103, 103, 104, 104, 105, 105, 105, 104, 104, 28.15453 + 104, 104, 104, 104, 104, 104, 106, 105, 105, 63, 63, 62, 63, 63, 66, 68, 28.15454 + 69, 70, 66, 64, 68, 69, 67, 65, 68, 67, 73, 69, 67, 73, 71, 66, 28.15455 + 72, 73, 76, 76, 73, 74, 78, 79, 75, 67, 69, 74, 78, 79, 80, 81, 28.15456 + 81, 82, 75, 69, 66, 57, 40, 26, 15, 14, 14, 14, 11, 9, 12, 13, 28.15457 + 14, 16, 12, 16, 16, 11, 16, 20, 12, 11, 22, 20, 17, 22, 26, 24, 28.15458 + 29, 28, 30, 29, 28, 29, 30, 23, 13, 41, 18, 22, 32, 21, 20, 27, 28.15459 + 20, 38, 28, 24, 29, 33, 32, 31, 32, 37, 26, 18, 22, 27, 29, 27, 28.15460 + 26, 33, 29, 23, 21, 22, 24, 23, 23, 23, 26, 26, 23, 20, 18, 22, 28.15461 + 25, 28, 28, 28, 20, 15, 29, 32, 17, 27, 20, 28, 37, 23, 13, 16, 28.15462 + 20, 28, 25, 20, 19, 19, 19, 19, 20, 28, 25, 19, 17, 18, 20, 19, 28.15463 + 18, 32, 25, 28, 39, 48, 51, 31, 0, 41, 68, 82, 85, 96, 101, 101, 28.15464 + 105, 107, 89, 103, 104, 99, 102, 94, 99, 103, 105, 106, 106, 104, 104, 105, 28.15465 + 106, 104, 103, 103, 104, 105, 106, 106, 106, 108, 107, 105, 103, 102, 102, 102, 28.15466 + 103, 105, 105, 105, 105, 105, 105, 105, 105, 107, 107, 106, 67, 66, 66, 65, 28.15467 + 66, 68, 69, 70, 70, 65, 64, 68, 69, 67, 66, 67, 68, 74, 69, 67, 28.15468 + 73, 71, 67, 73, 69, 72, 73, 71, 71, 76, 76, 72, 74, 73, 76, 79, 28.15469 + 80, 83, 83, 83, 76, 74, 69, 55, 33, 16, 16, 23, 18, 15, 12, 10, 28.15470 + 8, 11, 13, 16, 21, 14, 18, 22, 15, 18, 19, 15, 32, 41, 36, 29, 28.15471 + 35, 38, 40, 46, 34, 35, 35, 35, 38, 41, 38, 30, 32, 18, 23, 31, 28.15472 + 27, 34, 43, 38, 31, 32, 39, 50, 53, 49, 47, 50, 49, 47, 45, 46, 28.15473 + 41, 38, 40, 47, 39, 38, 36, 38, 40, 42, 39, 38, 40, 43, 44, 43, 28.15474 + 42, 42, 44, 47, 27, 29, 39, 40, 37, 40, 37, 19, 38, 28, 34, 42, 28.15475 + 33, 28, 32, 34, 27, 25, 22, 22, 23, 22, 19, 18, 16, 18, 20, 24, 28.15476 + 28, 28, 24, 22, 23, 24, 32, 31, 24, 29, 32, 26, 42, 61, 70, 84, 28.15477 + 100, 101, 100, 107, 102, 90, 107, 108, 101, 103, 96, 102, 102, 105, 106, 106, 28.15478 + 104, 104, 105, 106, 103, 103, 103, 104, 105, 106, 106, 107, 108, 107, 105, 104, 28.15479 + 103, 103, 103, 104, 105, 105, 105, 105, 105, 105, 105, 105, 107, 106, 105, 68, 28.15480 + 67, 67, 66, 66, 67, 68, 68, 70, 65, 64, 68, 70, 67, 66, 68, 68, 28.15481 + 73, 69, 67, 74, 72, 68, 73, 68, 72, 73, 71, 71, 75, 75, 72, 78, 28.15482 + 76, 77, 77, 78, 79, 80, 79, 75, 68, 56, 38, 18, 8, 16, 30, 19, 28.15483 + 14, 10, 8, 8, 9, 10, 11, 22, 12, 17, 27, 27, 31, 42, 48, 50, 28.15484 + 67, 72, 72, 77, 73, 64, 63, 66, 67, 67, 67, 70, 74, 71, 64, 73, 28.15485 + 64, 62, 58, 49, 55, 58, 50, 60, 67, 78, 86, 87, 85, 87, 94, 98, 28.15486 + 97, 98, 97, 92, 86, 87, 92, 106, 105, 103, 101, 99, 93, 86, 80, 71, 28.15487 + 73, 74, 73, 71, 70, 72, 72, 66, 59, 62, 63, 58, 61, 64, 55, 51, 28.15488 + 37, 38, 44, 39, 37, 41, 40, 31, 34, 37, 40, 41, 35, 25, 19, 27, 28.15489 + 25, 21, 18, 17, 17, 18, 20, 19, 23, 30, 27, 14, 19, 33, 38, 41, 28.15490 + 53, 59, 75, 95, 98, 97, 106, 96, 87, 107, 108, 101, 104, 99, 103, 103, 28.15491 + 105, 107, 107, 105, 105, 106, 107, 104, 104, 105, 105, 105, 105, 105, 106, 108, 28.15492 + 107, 106, 105, 104, 104, 104, 105, 105, 105, 105, 105, 105, 105, 105, 105, 106, 28.15493 + 106, 105, 66, 65, 65, 65, 64, 64, 65, 65, 70, 65, 64, 68, 70, 68, 28.15494 + 67, 69, 69, 73, 70, 68, 74, 72, 68, 75, 72, 76, 76, 74, 74, 78, 28.15495 + 78, 75, 79, 76, 74, 73, 74, 75, 75, 74, 75, 54, 32, 23, 20, 19, 28.15496 + 20, 22, 18, 13, 10, 10, 11, 11, 9, 11, 22, 11, 19, 36, 45, 60, 28.15497 + 85, 103, 121, 140, 147, 149, 155, 150, 139, 137, 139, 141, 141, 140, 141, 142, 28.15498 + 136, 127, 132, 132, 130, 123, 120, 131, 135, 127, 138, 141, 142, 143, 143, 146, 28.15499 + 155, 164, 169, 165, 161, 165, 166, 162, 156, 155, 157, 158, 159, 161, 160, 159, 28.15500 + 155, 153, 153, 152, 152, 150, 147, 144, 143, 143, 144, 130, 127, 127, 118, 117, 28.15501 + 123, 121, 111, 93, 87, 90, 85, 83, 86, 81, 89, 77, 58, 44, 36, 38, 28.15502 + 41, 42, 38, 33, 30, 25, 21, 19, 19, 18, 24, 18, 21, 23, 18, 23, 28.15503 + 24, 19, 31, 47, 51, 59, 77, 90, 94, 103, 94, 85, 102, 103, 99, 106, 28.15504 + 99, 101, 104, 105, 107, 107, 105, 105, 106, 107, 105, 105, 105, 105, 105, 105, 28.15505 + 104, 105, 108, 107, 107, 106, 106, 105, 105, 105, 105, 105, 105, 105, 105, 105, 28.15506 + 105, 105, 105, 105, 104, 65, 65, 65, 65, 65, 65, 64, 64, 70, 65, 65, 28.15507 + 69, 71, 69, 68, 70, 68, 73, 69, 67, 74, 72, 70, 76, 74, 77, 78, 28.15508 + 75, 76, 80, 80, 77, 80, 77, 74, 74, 73, 72, 70, 65, 56, 35, 18, 28.15509 + 17, 24, 24, 18, 14, 18, 14, 14, 18, 18, 13, 11, 14, 21, 19, 38, 28.15510 + 65, 81, 102, 128, 146, 151, 161, 154, 148, 155, 161, 165, 173, 181, 184, 186, 28.15511 + 186, 187, 185, 176, 166, 176, 183, 180, 172, 174, 182, 184, 182, 186, 183, 179, 28.15512 + 175, 177, 183, 190, 195, 189, 190, 191, 195, 191, 186, 184, 189, 190, 190, 187, 28.15513 + 186, 182, 181, 179, 180, 177, 175, 173, 172, 169, 168, 167, 166, 178, 171, 177, 28.15514 + 182, 173, 165, 163, 156, 167, 148, 143, 143, 137, 138, 139, 131, 129, 122, 111, 28.15515 + 99, 85, 72, 58, 47, 33, 32, 35, 38, 37, 33, 28, 23, 26, 15, 15, 28.15516 + 20, 18, 19, 16, 8, 16, 41, 42, 37, 51, 74, 88, 96, 94, 84, 98, 28.15517 + 97, 97, 109, 103, 100, 105, 106, 108, 108, 105, 105, 107, 108, 106, 106, 105, 28.15518 + 105, 105, 105, 104, 104, 107, 107, 107, 107, 106, 106, 105, 105, 105, 105, 105, 28.15519 + 105, 105, 105, 105, 105, 104, 104, 103, 66, 66, 67, 68, 68, 68, 67, 67, 28.15520 + 69, 65, 65, 69, 71, 70, 69, 71, 68, 73, 69, 67, 75, 74, 71, 77, 28.15521 + 73, 76, 76, 73, 75, 78, 78, 77, 81, 79, 77, 75, 73, 69, 60, 52, 28.15522 + 28, 21, 18, 20, 20, 15, 11, 12, 13, 11, 13, 18, 16, 9, 10, 17, 28.15523 + 33, 45, 74, 102, 117, 136, 152, 158, 164, 173, 167, 161, 169, 175, 179, 188, 28.15524 + 175, 179, 182, 183, 186, 186, 178, 168, 186, 195, 189, 181, 185, 184, 181, 187, 28.15525 + 186, 187, 186, 183, 186, 191, 193, 191, 179, 190, 201, 200, 186, 177, 186, 201, 28.15526 + 203, 201, 197, 192, 188, 187, 189, 192, 190, 188, 186, 184, 186, 188, 188, 188, 28.15527 + 182, 179, 181, 182, 172, 172, 175, 169, 176, 162, 160, 161, 157, 160, 161, 152, 28.15528 + 146, 151, 157, 158, 151, 132, 111, 92, 60, 48, 37, 29, 29, 28, 28, 24, 28.15529 + 24, 15, 18, 20, 10, 9, 16, 20, 10, 31, 32, 23, 35, 53, 68, 80, 28.15530 + 87, 82, 98, 97, 97, 112, 107, 103, 105, 106, 108, 108, 106, 106, 107, 108, 28.15531 + 107, 107, 105, 105, 105, 105, 103, 103, 105, 105, 106, 106, 106, 106, 105, 104, 28.15532 + 105, 105, 105, 105, 105, 105, 105, 105, 103, 103, 103, 64, 65, 67, 68, 69, 28.15533 + 69, 68, 67, 69, 65, 65, 69, 72, 70, 70, 71, 68, 73, 70, 68, 75, 28.15534 + 74, 71, 77, 72, 76, 76, 73, 73, 76, 77, 76, 81, 79, 76, 73, 69, 28.15535 + 59, 44, 30, 14, 14, 18, 21, 17, 9, 7, 12, 5, 4, 9, 16, 16, 28.15536 + 12, 21, 39, 62, 82, 110, 127, 135, 153, 163, 157, 160, 174, 177, 176, 183, 28.15537 + 183, 178, 181, 180, 182, 183, 184, 188, 191, 187, 180, 180, 190, 188, 190, 201, 28.15538 + 197, 194, 209, 193, 200, 203, 198, 195, 197, 198, 196, 196, 202, 209, 209, 200, 28.15539 + 194, 199, 210, 187, 189, 191, 193, 196, 201, 209, 216, 196, 193, 189, 187, 190, 28.15540 + 193, 194, 196, 196, 193, 191, 181, 171, 182, 192, 186, 179, 172, 175, 177, 173, 28.15541 + 177, 177, 168, 180, 173, 164, 157, 157, 161, 166, 167, 123, 101, 74, 56, 48, 28.15542 + 44, 38, 33, 28, 19, 22, 24, 13, 10, 19, 23, 16, 19, 17, 23, 33, 28.15543 + 34, 41, 61, 67, 72, 98, 98, 94, 107, 105, 105, 104, 105, 107, 107, 106, 28.15544 + 106, 108, 109, 108, 108, 107, 106, 105, 104, 103, 103, 103, 104, 105, 106, 106, 28.15545 + 105, 104, 103, 105, 105, 105, 105, 105, 105, 105, 105, 103, 102, 102, 61, 62, 28.15546 + 64, 66, 67, 67, 66, 66, 69, 65, 65, 69, 72, 70, 70, 72, 68, 74, 28.15547 + 70, 69, 75, 75, 71, 77, 74, 77, 77, 73, 74, 77, 77, 75, 76, 75, 28.15548 + 72, 68, 62, 48, 28, 12, 17, 13, 12, 17, 19, 14, 10, 10, 4, 5, 28.15549 + 12, 22, 24, 27, 45, 70, 91, 112, 132, 136, 137, 157, 169, 158, 167, 177, 28.15550 + 173, 168, 174, 177, 177, 183, 184, 184, 181, 180, 184, 189, 188, 183, 194, 200, 28.15551 + 194, 193, 200, 184, 175, 193, 193, 202, 205, 194, 184, 184, 189, 192, 207, 197, 28.15552 + 191, 196, 204, 203, 198, 194, 206, 206, 204, 198, 192, 189, 190, 193, 205, 199, 28.15553 + 193, 191, 193, 196, 198, 197, 190, 196, 202, 192, 180, 187, 190, 175, 180, 178, 28.15554 + 183, 186, 181, 183, 183, 173, 170, 169, 171, 172, 171, 168, 162, 156, 168, 153, 28.15555 + 137, 125, 114, 96, 69, 48, 39, 24, 25, 32, 28, 24, 21, 14, 26, 11, 28.15556 + 7, 26, 38, 21, 20, 46, 45, 60, 94, 96, 87, 98, 99, 104, 103, 104, 28.15557 + 107, 107, 105, 106, 108, 109, 108, 108, 107, 106, 105, 104, 103, 103, 102, 103, 28.15558 + 104, 105, 106, 105, 104, 103, 105, 105, 105, 105, 105, 105, 105, 105, 102, 102, 28.15559 + 102, 64, 68, 68, 65, 66, 69, 69, 67, 70, 70, 71, 71, 71, 72, 72, 28.15560 + 72, 73, 72, 71, 71, 70, 71, 71, 71, 77, 75, 73, 72, 71, 72, 75, 28.15561 + 76, 74, 74, 76, 65, 40, 27, 27, 21, 9, 17, 21, 17, 13, 11, 8, 28.15562 + 3, 1, 15, 25, 23, 27, 49, 85, 111, 131, 139, 148, 155, 161, 164, 167, 28.15563 + 169, 164, 165, 171, 178, 179, 176, 176, 180, 185, 177, 172, 176, 187, 194, 194, 28.15564 + 190, 192, 193, 192, 190, 188, 189, 191, 193, 192, 193, 195, 197, 199, 200, 199, 28.15565 + 201, 208, 203, 199, 203, 208, 208, 206, 204, 217, 210, 217, 212, 193, 200, 214, 28.15566 + 206, 198, 205, 208, 202, 197, 196, 195, 190, 192, 199, 199, 186, 180, 187, 192, 28.15567 + 192, 188, 180, 178, 180, 177, 185, 190, 185, 185, 177, 170, 172, 181, 185, 178, 28.15568 + 167, 162, 155, 152, 153, 153, 141, 118, 97, 64, 45, 34, 37, 35, 25, 23, 28.15569 + 30, 20, 19, 18, 17, 17, 22, 28, 35, 41, 35, 49, 79, 97, 94, 92, 28.15570 + 101, 105, 106, 104, 99, 100, 104, 108, 107, 107, 108, 107, 106, 103, 103, 104, 28.15571 + 106, 105, 106, 106, 106, 106, 105, 104, 103, 106, 106, 106, 105, 105, 104, 104, 28.15572 + 104, 105, 105, 105, 65, 68, 68, 65, 66, 69, 70, 67, 68, 68, 68, 69, 28.15573 + 69, 70, 70, 70, 70, 70, 69, 70, 71, 73, 74, 75, 70, 74, 76, 76, 28.15574 + 73, 72, 71, 71, 73, 64, 57, 45, 25, 18, 16, 7, 9, 11, 11, 8, 28.15575 + 8, 13, 12, 9, 10, 17, 27, 42, 67, 96, 117, 126, 146, 153, 161, 167, 28.15576 + 169, 170, 171, 173, 170, 170, 172, 181, 183, 182, 181, 184, 181, 178, 175, 180, 28.15577 + 187, 193, 190, 187, 194, 195, 196, 195, 193, 191, 190, 191, 192, 192, 194, 196, 28.15578 + 199, 201, 202, 206, 206, 208, 210, 213, 214, 213, 212, 212, 214, 209, 217, 218, 28.15579 + 208, 214, 221, 208, 204, 206, 205, 199, 197, 202, 204, 203, 182, 198, 206, 203, 28.15580 + 196, 193, 186, 177, 192, 186, 184, 181, 168, 171, 178, 177, 189, 186, 181, 182, 28.15581 + 183, 182, 174, 167, 164, 160, 156, 157, 161, 157, 147, 135, 135, 99, 62, 48, 28.15582 + 46, 41, 33, 26, 22, 14, 13, 18, 26, 28, 23, 18, 32, 34, 44, 63, 28.15583 + 83, 92, 95, 96, 97, 103, 105, 101, 99, 103, 106, 107, 107, 108, 107, 106, 28.15584 + 103, 103, 104, 106, 105, 106, 106, 106, 106, 105, 104, 103, 106, 106, 106, 105, 28.15585 + 105, 104, 104, 104, 105, 105, 105, 64, 67, 67, 65, 65, 68, 69, 66, 67, 28.15586 + 67, 68, 68, 68, 69, 69, 69, 67, 67, 68, 70, 72, 75, 77, 78, 71, 28.15587 + 74, 77, 76, 72, 70, 68, 69, 70, 53, 41, 31, 18, 18, 18, 8, 14, 28.15588 + 15, 13, 11, 13, 17, 16, 14, 16, 26, 42, 68, 101, 128, 139, 139, 155, 28.15589 + 162, 167, 171, 171, 170, 171, 172, 175, 174, 175, 182, 185, 185, 184, 187, 181, 28.15590 + 182, 183, 187, 189, 191, 189, 187, 193, 196, 198, 198, 195, 192, 190, 189, 192, 28.15591 + 193, 194, 197, 200, 204, 206, 210, 201, 209, 215, 217, 212, 210, 208, 210, 222, 28.15592 + 217, 217, 216, 209, 214, 215, 202, 210, 214, 216, 217, 218, 219, 215, 209, 192, 28.15593 + 200, 202, 195, 192, 197, 199, 197, 186, 185, 188, 181, 165, 165, 179, 184, 177, 28.15594 + 178, 179, 180, 180, 178, 174, 173, 175, 172, 168, 167, 166, 164, 158, 151, 147, 28.15595 + 145, 134, 106, 71, 45, 38, 40, 39, 27, 19, 17, 19, 21, 18, 14, 22, 28.15596 + 31, 38, 46, 63, 84, 93, 91, 89, 99, 105, 102, 99, 101, 104, 106, 107, 28.15597 + 108, 107, 106, 103, 103, 104, 106, 105, 106, 106, 106, 106, 105, 104, 103, 106, 28.15598 + 106, 106, 105, 105, 104, 104, 104, 105, 105, 105, 64, 67, 68, 65, 65, 69, 28.15599 + 69, 66, 70, 70, 70, 71, 71, 71, 72, 72, 68, 68, 69, 71, 73, 76, 28.15600 + 77, 78, 78, 76, 73, 70, 69, 68, 67, 65, 55, 38, 29, 23, 17, 20, 28.15601 + 25, 18, 14, 16, 19, 19, 16, 17, 17, 16, 29, 53, 81, 101, 118, 132, 28.15602 + 145, 150, 162, 167, 171, 174, 173, 170, 170, 171, 178, 179, 180, 184, 182, 180, 28.15603 + 182, 188, 186, 188, 189, 190, 189, 190, 189, 190, 190, 192, 194, 194, 192, 191, 28.15604 + 190, 191, 193, 193, 194, 196, 198, 202, 204, 206, 201, 209, 213, 211, 207, 205, 28.15605 + 204, 203, 227, 222, 216, 208, 204, 209, 214, 211, 208, 204, 202, 202, 203, 205, 28.15606 + 201, 198, 212, 210, 200, 187, 183, 192, 203, 208, 188, 186, 191, 186, 170, 172, 28.15607 + 186, 191, 176, 173, 173, 176, 178, 177, 176, 178, 176, 178, 178, 176, 172, 164, 28.15608 + 157, 151, 152, 151, 145, 135, 120, 100, 72, 46, 40, 36, 30, 25, 18, 16, 28.15609 + 17, 20, 16, 25, 31, 35, 43, 62, 78, 87, 89, 97, 101, 99, 100, 103, 28.15610 + 104, 102, 106, 108, 107, 106, 103, 103, 104, 106, 105, 106, 106, 106, 106, 105, 28.15611 + 104, 103, 106, 106, 106, 105, 105, 104, 104, 104, 105, 105, 105, 65, 68, 68, 28.15612 + 66, 66, 69, 70, 67, 70, 70, 71, 71, 72, 72, 72, 72, 71, 70, 71, 28.15613 + 72, 73, 75, 76, 76, 80, 74, 69, 68, 70, 68, 60, 50, 31, 20, 20, 28.15614 + 18, 9, 14, 21, 19, 10, 13, 15, 16, 15, 18, 27, 38, 67, 91, 116, 28.15615 + 129, 135, 142, 151, 158, 168, 173, 176, 179, 177, 175, 174, 176, 178, 184, 188, 28.15616 + 189, 181, 176, 180, 190, 189, 190, 189, 187, 185, 185, 189, 192, 189, 190, 191, 28.15617 + 190, 191, 192, 195, 198, 195, 195, 195, 195, 197, 198, 199, 199, 204, 208, 208, 28.15618 + 204, 204, 208, 208, 204, 210, 216, 213, 206, 206, 212, 219, 226, 233, 225, 211, 28.15619 + 207, 208, 215, 222, 226, 214, 215, 210, 201, 195, 193, 191, 188, 200, 193, 194, 28.15620 + 190, 177, 178, 187, 187, 194, 183, 177, 180, 182, 180, 176, 176, 172, 173, 174, 28.15621 + 174, 171, 168, 165, 163, 159, 154, 145, 138, 136, 130, 113, 93, 44, 39, 35, 28.15622 + 35, 33, 29, 22, 16, 13, 16, 24, 29, 29, 36, 54, 78, 89, 94, 96, 28.15623 + 95, 99, 104, 103, 99, 105, 107, 107, 106, 103, 103, 104, 106, 105, 106, 106, 28.15624 + 106, 106, 105, 104, 103, 106, 106, 106, 105, 105, 104, 104, 104, 105, 105, 105, 28.15625 + 65, 68, 69, 66, 66, 70, 70, 67, 68, 69, 69, 69, 70, 70, 70, 71, 28.15626 + 73, 72, 73, 73, 73, 74, 75, 74, 73, 70, 69, 70, 69, 60, 45, 28, 28.15627 + 21, 16, 21, 20, 8, 9, 16, 16, 13, 11, 13, 18, 25, 39, 61, 82, 28.15628 + 106, 118, 129, 137, 148, 158, 159, 155, 167, 171, 175, 177, 177, 177, 176, 177, 28.15629 + 180, 186, 190, 193, 184, 180, 182, 193, 188, 189, 184, 184, 180, 183, 184, 188, 28.15630 + 190, 189, 190, 190, 191, 193, 198, 202, 194, 196, 195, 197, 195, 195, 193, 193, 28.15631 + 198, 202, 202, 198, 201, 209, 211, 206, 195, 211, 212, 207, 210, 208, 207, 216, 28.15632 + 207, 204, 202, 206, 207, 206, 206, 208, 207, 208, 208, 206, 203, 200, 196, 191, 28.15633 + 198, 190, 191, 192, 185, 188, 193, 189, 192, 180, 173, 180, 185, 182, 179, 179, 28.15634 + 179, 175, 171, 166, 166, 168, 171, 173, 157, 161, 163, 156, 142, 133, 133, 135, 28.15635 + 99, 73, 44, 31, 32, 33, 24, 12, 13, 12, 17, 23, 22, 22, 38, 60, 28.15636 + 78, 87, 91, 95, 99, 104, 102, 99, 105, 107, 107, 106, 104, 103, 104, 106, 28.15637 + 105, 106, 106, 106, 106, 105, 104, 103, 106, 106, 106, 105, 105, 104, 104, 104, 28.15638 + 105, 105, 105, 65, 68, 69, 66, 67, 70, 70, 67, 69, 69, 69, 70, 70, 28.15639 + 70, 71, 71, 73, 72, 73, 73, 73, 75, 74, 74, 70, 69, 68, 63, 55, 28.15640 + 43, 32, 22, 25, 18, 24, 23, 11, 11, 16, 15, 16, 11, 16, 32, 55, 28.15641 + 77, 98, 117, 130, 135, 136, 141, 153, 162, 161, 154, 164, 167, 173, 176, 177, 28.15642 + 177, 178, 177, 179, 179, 182, 188, 188, 185, 184, 189, 187, 186, 184, 184, 183, 28.15643 + 184, 184, 184, 186, 188, 190, 190, 190, 192, 194, 197, 191, 194, 196, 197, 196, 28.15644 + 194, 192, 190, 193, 205, 209, 203, 202, 208, 210, 206, 201, 217, 214, 208, 214, 28.15645 + 210, 201, 206, 203, 205, 212, 220, 218, 210, 204, 204, 206, 204, 201, 201, 202, 28.15646 + 203, 205, 206, 192, 188, 193, 197, 191, 193, 199, 196, 180, 174, 175, 184, 188, 28.15647 + 182, 181, 185, 182, 175, 168, 164, 165, 166, 167, 167, 176, 160, 152, 159, 164, 28.15648 + 155, 139, 129, 146, 119, 79, 50, 35, 30, 24, 19, 12, 14, 14, 14, 19, 28.15649 + 26, 32, 38, 56, 76, 91, 96, 97, 98, 100, 100, 104, 107, 107, 106, 104, 28.15650 + 104, 104, 107, 105, 106, 106, 106, 106, 105, 104, 103, 106, 106, 106, 105, 105, 28.15651 + 104, 104, 104, 105, 105, 105, 66, 70, 70, 67, 67, 70, 70, 68, 71, 71, 28.15652 + 72, 72, 72, 74, 74, 73, 72, 72, 72, 73, 74, 75, 75, 74, 72, 70, 28.15653 + 63, 49, 32, 22, 22, 22, 23, 15, 20, 21, 13, 14, 19, 17, 13, 10, 28.15654 + 20, 50, 83, 105, 117, 127, 138, 147, 151, 151, 154, 160, 163, 162, 167, 172, 28.15655 + 176, 181, 181, 183, 184, 183, 177, 172, 173, 183, 191, 191, 187, 184, 189, 188, 28.15656 + 188, 189, 190, 190, 188, 184, 184, 187, 189, 191, 191, 190, 190, 190, 191, 193, 28.15657 + 197, 199, 199, 196, 193, 191, 199, 215, 223, 214, 205, 206, 208, 205, 210, 222, 28.15658 + 212, 205, 220, 221, 213, 220, 219, 212, 205, 203, 198, 194, 201, 212, 211, 210, 28.15659 + 209, 210, 209, 204, 198, 196, 201, 199, 205, 205, 193, 191, 195, 191, 185, 183, 28.15660 + 189, 197, 193, 180, 178, 183, 170, 167, 165, 167, 171, 171, 167, 162, 169, 165, 28.15661 + 166, 166, 152, 134, 139, 156, 137, 135, 121, 94, 63, 41, 33, 33, 16, 21, 28.15662 + 17, 10, 19, 36, 32, 19, 33, 63, 89, 98, 93, 93, 96, 101, 103, 105, 28.15663 + 106, 106, 104, 104, 107, 109, 106, 107, 107, 107, 107, 106, 105, 104, 107, 107, 28.15664 + 107, 106, 106, 105, 105, 105, 105, 105, 105, 70, 70, 70, 69, 68, 67, 66, 28.15665 + 65, 66, 66, 67, 68, 69, 70, 71, 71, 75, 74, 73, 74, 73, 74, 74, 28.15666 + 75, 77, 63, 44, 31, 25, 24, 20, 16, 13, 15, 24, 22, 15, 17, 20, 28.15667 + 11, 13, 27, 46, 81, 117, 129, 126, 134, 146, 150, 154, 158, 161, 164, 168, 28.15668 + 170, 172, 172, 173, 175, 177, 181, 184, 186, 175, 181, 187, 188, 184, 183, 186, 28.15669 + 190, 194, 186, 188, 190, 185, 185, 184, 174, 183, 188, 192, 193, 189, 187, 191, 28.15670 + 195, 187, 200, 208, 201, 189, 188, 195, 201, 203, 204, 201, 198, 201, 209, 213, 28.15671 + 212, 212, 208, 205, 206, 212, 215, 214, 212, 209, 205, 207, 214, 211, 202, 201, 28.15672 + 208, 213, 217, 217, 211, 206, 206, 206, 204, 210, 209, 208, 205, 198, 193, 199, 28.15673 + 207, 192, 193, 190, 184, 182, 185, 186, 184, 183, 175, 166, 163, 168, 170, 167, 28.15674 + 163, 169, 168, 165, 164, 161, 157, 152, 147, 145, 144, 138, 128, 116, 96, 63, 28.15675 + 33, 27, 31, 29, 20, 21, 27, 22, 13, 38, 42, 55, 78, 93, 97, 95, 28.15676 + 96, 99, 100, 101, 104, 106, 110, 112, 113, 108, 107, 107, 107, 107, 107, 107, 28.15677 + 107, 108, 108, 108, 107, 107, 106, 106, 106, 106, 106, 106, 71, 70, 70, 69, 28.15678 + 68, 66, 65, 65, 67, 67, 69, 69, 71, 72, 72, 73, 78, 77, 75, 76, 28.15679 + 77, 77, 75, 73, 61, 47, 31, 22, 17, 16, 14, 12, 22, 17, 18, 17, 28.15680 + 11, 15, 22, 18, 17, 43, 69, 96, 124, 136, 137, 145, 148, 150, 152, 156, 28.15681 + 160, 163, 165, 166, 175, 175, 176, 177, 179, 180, 180, 182, 179, 184, 187, 188, 28.15682 + 186, 186, 189, 192, 186, 178, 180, 186, 185, 189, 190, 181, 187, 189, 190, 190, 28.15683 + 189, 188, 188, 188, 188, 195, 197, 193, 189, 192, 196, 198, 199, 204, 209, 209, 28.15684 + 211, 211, 207, 200, 207, 209, 213, 219, 224, 225, 221, 219, 204, 207, 212, 219, 28.15685 + 220, 217, 218, 221, 208, 216, 219, 215, 211, 212, 214, 215, 213, 206, 202, 207, 28.15686 + 210, 205, 196, 192, 195, 198, 197, 190, 185, 186, 187, 186, 181, 175, 170, 170, 28.15687 + 173, 173, 168, 162, 171, 168, 165, 164, 164, 162, 156, 151, 145, 145, 142, 137, 28.15688 + 132, 122, 102, 82, 52, 37, 29, 33, 30, 19, 14, 21, 22, 26, 37, 57, 28.15689 + 79, 92, 96, 98, 99, 100, 102, 104, 106, 109, 112, 112, 108, 107, 107, 107, 28.15690 + 107, 107, 107, 107, 108, 108, 108, 107, 107, 106, 106, 106, 105, 105, 105, 70, 28.15691 + 70, 70, 68, 68, 66, 66, 65, 69, 70, 71, 71, 73, 74, 76, 76, 80, 28.15692 + 78, 77, 77, 77, 75, 70, 64, 40, 31, 20, 15, 14, 15, 13, 11, 12, 28.15693 + 8, 16, 26, 21, 18, 16, 11, 29, 68, 98, 113, 130, 139, 144, 152, 155, 28.15694 + 153, 153, 157, 163, 166, 166, 164, 174, 175, 177, 178, 178, 177, 176, 176, 182, 28.15695 + 182, 183, 184, 185, 187, 189, 190, 185, 175, 177, 184, 186, 193, 195, 185, 195, 28.15696 + 193, 191, 192, 193, 193, 190, 187, 197, 197, 195, 192, 195, 201, 201, 197, 201, 28.15697 + 203, 202, 199, 199, 203, 205, 203, 205, 209, 213, 215, 213, 211, 208, 208, 218, 28.15698 + 223, 223, 216, 210, 205, 201, 196, 209, 217, 221, 216, 211, 211, 212, 212, 213, 28.15699 + 206, 203, 207, 209, 204, 195, 190, 191, 198, 200, 193, 186, 185, 186, 186, 179, 28.15700 + 175, 173, 175, 178, 176, 169, 162, 172, 168, 164, 165, 167, 167, 161, 156, 152, 28.15701 + 151, 149, 144, 142, 139, 133, 123, 92, 59, 34, 32, 35, 29, 22, 21, 16, 28.15702 + 18, 24, 37, 58, 83, 96, 102, 103, 105, 104, 106, 106, 107, 106, 106, 106, 28.15703 + 106, 106, 106, 106, 106, 105, 105, 106, 106, 106, 105, 104, 103, 103, 104, 105, 28.15704 + 104, 104, 71, 71, 70, 69, 69, 68, 67, 67, 70, 71, 71, 73, 74, 75, 28.15705 + 76, 78, 78, 78, 76, 77, 75, 68, 56, 45, 29, 22, 16, 14, 14, 16, 28.15706 + 15, 13, 24, 12, 14, 17, 9, 11, 25, 33, 46, 90, 119, 126, 137, 148, 28.15707 + 151, 155, 163, 158, 156, 160, 168, 172, 171, 168, 170, 171, 174, 176, 176, 175, 28.15708 + 173, 173, 182, 180, 179, 180, 183, 186, 187, 187, 195, 184, 183, 188, 189, 195, 28.15709 + 195, 184, 194, 194, 194, 194, 193, 193, 191, 189, 199, 199, 197, 196, 199, 204, 28.15710 + 201, 195, 194, 197, 197, 194, 195, 201, 205, 206, 206, 208, 208, 204, 199, 198, 28.15711 + 202, 207, 209, 218, 219, 213, 213, 221, 223, 219, 207, 210, 212, 210, 210, 212, 28.15712 + 210, 206, 210, 209, 210, 207, 199, 193, 198, 207, 182, 192, 197, 192, 183, 182, 28.15713 + 183, 184, 177, 175, 174, 176, 178, 177, 170, 165, 172, 167, 163, 164, 168, 169, 28.15714 + 164, 160, 162, 162, 157, 151, 145, 142, 140, 137, 118, 103, 73, 42, 30, 35, 28.15715 + 34, 23, 21, 24, 25, 27, 41, 66, 91, 102, 106, 108, 109, 107, 106, 104, 28.15716 + 102, 101, 104, 105, 105, 105, 105, 104, 104, 104, 104, 105, 104, 104, 103, 102, 28.15717 + 102, 103, 104, 105, 105, 70, 70, 69, 69, 68, 68, 68, 68, 70, 72, 72, 28.15718 + 73, 74, 75, 76, 78, 80, 79, 79, 77, 70, 56, 40, 27, 21, 17, 14, 28.15719 + 14, 14, 15, 16, 15, 11, 10, 20, 24, 14, 14, 27, 35, 67, 104, 127, 28.15720 + 134, 146, 158, 160, 159, 164, 159, 156, 160, 168, 172, 172, 169, 166, 168, 171, 28.15721 + 174, 176, 176, 175, 175, 183, 181, 179, 180, 183, 185, 186, 186, 200, 189, 189, 28.15722 + 192, 191, 194, 193, 182, 188, 192, 195, 194, 190, 188, 190, 193, 187, 193, 197, 28.15723 + 196, 198, 200, 198, 194, 182, 194, 206, 211, 210, 208, 202, 195, 203, 207, 209, 28.15724 + 208, 205, 208, 216, 224, 227, 230, 223, 208, 200, 203, 203, 198, 203, 202, 201, 28.15725 + 203, 211, 217, 213, 205, 207, 208, 209, 207, 201, 196, 201, 210, 177, 187, 193, 28.15726 + 190, 183, 182, 183, 184, 178, 176, 173, 173, 175, 175, 172, 169, 169, 165, 161, 28.15727 + 162, 166, 168, 165, 162, 167, 166, 162, 156, 149, 143, 141, 141, 126, 134, 120, 28.15728 + 81, 43, 32, 34, 34, 28, 29, 29, 24, 27, 47, 77, 101, 106, 109, 111, 28.15729 + 109, 106, 102, 98, 97, 102, 104, 104, 104, 104, 103, 103, 103, 103, 104, 103, 28.15730 + 102, 101, 100, 100, 102, 106, 108, 108, 70, 70, 70, 70, 70, 70, 71, 71, 28.15731 + 71, 71, 73, 74, 76, 76, 77, 77, 81, 81, 78, 71, 59, 44, 28, 18, 28.15732 + 16, 15, 13, 13, 14, 15, 16, 16, 4, 9, 20, 22, 16, 27, 45, 50, 28.15733 + 92, 116, 131, 139, 156, 166, 166, 167, 160, 156, 154, 156, 160, 164, 165, 164, 28.15734 + 165, 167, 170, 173, 176, 177, 178, 178, 181, 182, 183, 183, 184, 185, 186, 187, 28.15735 + 193, 185, 189, 193, 190, 192, 192, 183, 190, 196, 201, 199, 194, 191, 194, 199, 28.15736 + 182, 190, 197, 198, 198, 201, 202, 201, 188, 198, 205, 205, 202, 201, 199, 195, 28.15737 + 197, 203, 209, 211, 208, 207, 209, 212, 200, 202, 202, 200, 203, 213, 222, 226, 28.15738 + 216, 212, 206, 204, 210, 215, 209, 200, 208, 203, 201, 208, 213, 208, 200, 194, 28.15739 + 181, 189, 194, 190, 186, 186, 187, 186, 179, 176, 173, 172, 173, 174, 174, 174, 28.15740 + 166, 164, 162, 162, 164, 165, 164, 165, 163, 162, 162, 162, 158, 151, 150, 150, 28.15741 + 148, 133, 122, 114, 94, 62, 40, 31, 32, 28, 27, 24, 21, 31, 61, 90, 28.15742 + 103, 109, 110, 111, 107, 103, 97, 97, 102, 104, 104, 104, 104, 103, 103, 102, 28.15743 + 103, 103, 103, 101, 101, 99, 99, 101, 106, 108, 108, 69, 69, 69, 70, 70, 28.15744 + 71, 71, 72, 74, 75, 75, 75, 77, 77, 78, 78, 78, 77, 70, 58, 41, 28.15745 + 28, 20, 17, 14, 14, 14, 17, 19, 20, 22, 24, 36, 32, 26, 18, 27, 28.15746 + 70, 110, 120, 124, 136, 142, 149, 162, 166, 165, 170, 158, 156, 154, 153, 153, 28.15747 + 155, 156, 157, 164, 165, 167, 169, 172, 174, 176, 177, 176, 179, 182, 182, 180, 28.15748 + 179, 181, 184, 184, 182, 189, 195, 190, 191, 193, 186, 196, 198, 200, 199, 196, 28.15749 + 194, 194, 196, 190, 195, 197, 196, 196, 201, 203, 202, 198, 201, 198, 190, 187, 28.15750 + 193, 201, 206, 198, 201, 203, 202, 198, 195, 195, 196, 225, 222, 220, 219, 216, 28.15751 + 214, 217, 223, 220, 219, 214, 207, 206, 209, 207, 202, 208, 203, 202, 208, 210, 28.15752 + 204, 195, 189, 187, 192, 194, 191, 188, 189, 188, 186, 180, 178, 177, 176, 177, 28.15753 + 177, 177, 177, 165, 166, 166, 165, 163, 163, 165, 168, 165, 161, 162, 166, 165, 28.15754 + 160, 156, 158, 160, 135, 121, 127, 128, 105, 71, 46, 44, 30, 23, 25, 21, 28.15755 + 21, 42, 71, 96, 103, 108, 110, 107, 104, 100, 100, 103, 105, 105, 104, 104, 28.15756 + 103, 103, 103, 104, 103, 103, 101, 101, 100, 100, 101, 105, 107, 106, 68, 68, 28.15757 + 69, 70, 71, 72, 72, 72, 76, 76, 76, 77, 77, 77, 77, 76, 72, 69, 28.15758 + 59, 43, 25, 15, 14, 17, 16, 18, 20, 23, 25, 28, 32, 35, 30, 46, 28.15759 + 67, 82, 105, 146, 162, 147, 151, 156, 154, 158, 164, 160, 158, 168, 159, 158, 28.15760 + 156, 153, 149, 149, 151, 153, 161, 161, 162, 164, 166, 168, 170, 172, 169, 174, 28.15761 + 179, 179, 175, 173, 175, 179, 180, 181, 192, 197, 191, 190, 194, 188, 195, 193, 28.15762 + 191, 190, 191, 189, 186, 183, 199, 198, 193, 188, 189, 194, 196, 193, 192, 199, 28.15763 + 202, 199, 196, 200, 206, 208, 202, 201, 198, 195, 195, 197, 203, 207, 209, 204, 28.15764 + 206, 212, 212, 205, 207, 216, 204, 209, 211, 206, 204, 210, 216, 220, 207, 208, 28.15765 + 209, 206, 196, 188, 190, 197, 192, 195, 194, 189, 187, 188, 186, 182, 179, 179, 28.15766 + 179, 179, 180, 180, 179, 178, 165, 168, 169, 167, 162, 161, 166, 170, 171, 165, 28.15767 + 164, 168, 168, 161, 157, 157, 144, 152, 150, 134, 122, 116, 104, 85, 59, 36, 28.15768 + 24, 30, 26, 16, 28, 53, 90, 99, 105, 108, 107, 106, 102, 103, 104, 106, 28.15769 + 106, 106, 105, 105, 104, 104, 104, 105, 104, 103, 102, 101, 100, 102, 103, 105, 28.15770 + 105, 69, 68, 69, 70, 71, 71, 72, 71, 71, 72, 74, 76, 78, 75, 70, 28.15771 + 64, 68, 52, 35, 26, 21, 17, 19, 21, 19, 25, 28, 30, 37, 51, 64, 28.15772 + 71, 109, 121, 135, 145, 151, 156, 162, 168, 159, 160, 161, 163, 163, 164, 166, 28.15773 + 167, 164, 165, 164, 161, 156, 152, 150, 151, 144, 148, 153, 155, 156, 159, 163, 28.15774 + 167, 169, 163, 164, 174, 179, 176, 179, 187, 184, 180, 180, 185, 194, 197, 193, 28.15775 + 188, 210, 206, 202, 197, 194, 194, 195, 197, 197, 198, 200, 201, 196, 190, 193, 28.15776 + 199, 188, 194, 201, 205, 203, 199, 195, 193, 196, 199, 201, 201, 199, 199, 201, 28.15777 + 204, 204, 209, 209, 207, 217, 230, 229, 218, 208, 200, 196, 205, 215, 215, 208, 28.15778 + 203, 216, 199, 189, 194, 199, 195, 192, 196, 194, 192, 183, 183, 187, 180, 174, 28.15779 + 185, 161, 176, 182, 173, 168, 173, 175, 170, 178, 173, 169, 171, 174, 171, 159, 28.15780 + 148, 162, 159, 163, 171, 172, 165, 160, 159, 154, 151, 147, 143, 139, 134, 130, 28.15781 + 127, 100, 52, 32, 40, 30, 13, 22, 46, 73, 99, 105, 98, 102, 106, 103, 28.15782 + 106, 107, 107, 105, 103, 105, 109, 106, 101, 103, 104, 103, 104, 103, 104, 104, 28.15783 + 104, 99, 106, 104, 68, 68, 68, 70, 71, 71, 72, 72, 75, 77, 77, 73, 28.15784 + 68, 66, 69, 69, 50, 34, 23, 22, 25, 25, 23, 24, 19, 36, 56, 70, 28.15785 + 85, 105, 125, 136, 147, 154, 161, 163, 163, 161, 163, 165, 160, 160, 160, 159, 28.15786 + 158, 158, 159, 159, 162, 160, 158, 158, 159, 157, 153, 149, 144, 146, 146, 144, 28.15787 + 143, 144, 149, 152, 157, 162, 172, 178, 174, 169, 173, 182, 183, 181, 184, 189, 28.15788 + 196, 199, 198, 195, 193, 193, 193, 194, 195, 196, 198, 199, 197, 198, 201, 203, 28.15789 + 200, 195, 197, 203, 202, 200, 197, 194, 192, 195, 201, 205, 199, 202, 204, 204, 28.15790 + 202, 201, 202, 204, 208, 215, 215, 207, 206, 213, 215, 209, 199, 197, 200, 208, 28.15791 + 211, 208, 204, 203, 201, 194, 196, 205, 207, 198, 193, 195, 206, 200, 187, 182, 28.15792 + 185, 182, 177, 182, 181, 174, 177, 187, 184, 169, 161, 164, 166, 167, 165, 161, 28.15793 + 156, 156, 161, 166, 164, 162, 164, 169, 169, 163, 161, 164, 165, 155, 143, 141, 28.15794 + 144, 143, 133, 123, 125, 108, 80, 45, 16, 19, 26, 20, 57, 91, 108, 108, 28.15795 + 111, 107, 98, 96, 103, 108, 109, 105, 104, 105, 103, 100, 102, 102, 103, 103, 28.15796 + 103, 103, 102, 102, 100, 107, 103, 66, 67, 67, 69, 70, 72, 73, 73, 76, 28.15797 + 74, 70, 68, 67, 64, 61, 54, 26, 19, 17, 17, 19, 25, 37, 51, 87, 28.15798 + 107, 128, 136, 139, 146, 154, 162, 161, 167, 170, 170, 167, 164, 165, 167, 168, 28.15799 + 166, 166, 163, 161, 161, 160, 160, 165, 162, 160, 163, 168, 168, 162, 155, 154, 28.15800 + 152, 149, 143, 139, 138, 140, 141, 150, 149, 151, 157, 163, 170, 177, 182, 181, 28.15801 + 182, 187, 191, 194, 196, 197, 197, 190, 191, 193, 194, 194, 194, 193, 192, 195, 28.15802 + 196, 200, 204, 202, 198, 199, 204, 198, 206, 216, 222, 220, 213, 205, 200, 201, 28.15803 + 203, 205, 205, 203, 202, 201, 201, 199, 210, 215, 207, 200, 205, 211, 213, 214, 28.15804 + 210, 206, 201, 195, 191, 196, 204, 210, 201, 195, 194, 188, 179, 179, 185, 186, 28.15805 + 183, 176, 173, 178, 182, 179, 176, 192, 176, 167, 172, 171, 161, 154, 156, 163, 28.15806 + 168, 173, 173, 168, 163, 162, 162, 162, 161, 163, 165, 162, 159, 161, 167, 170, 28.15807 + 162, 152, 148, 148, 145, 138, 132, 140, 141, 118, 67, 32, 36, 36, 12, 41, 28.15808 + 72, 92, 98, 107, 110, 109, 114, 100, 108, 113, 110, 105, 105, 105, 104, 106, 28.15809 + 106, 106, 106, 106, 106, 106, 105, 101, 107, 104, 65, 66, 68, 68, 71, 72, 28.15810 + 73, 74, 73, 65, 61, 65, 71, 64, 44, 21, 17, 18, 21, 20, 16, 30, 28.15811 + 67, 102, 113, 131, 148, 155, 156, 157, 159, 161, 164, 167, 169, 168, 165, 164, 28.15812 + 165, 167, 171, 171, 169, 167, 166, 166, 165, 165, 166, 165, 165, 168, 171, 171, 28.15813 + 166, 160, 162, 160, 156, 150, 144, 140, 138, 136, 130, 133, 140, 149, 155, 161, 28.15814 + 167, 174, 175, 179, 185, 188, 188, 188, 190, 193, 194, 194, 195, 195, 194, 193, 28.15815 + 192, 191, 193, 194, 198, 202, 200, 196, 196, 200, 202, 202, 202, 200, 198, 198, 28.15816 + 200, 202, 200, 202, 203, 203, 202, 199, 198, 197, 193, 205, 213, 209, 205, 207, 28.15817 + 212, 215, 196, 203, 214, 220, 213, 197, 186, 183, 202, 196, 193, 196, 198, 198, 28.15818 + 202, 208, 203, 205, 208, 207, 204, 208, 208, 198, 189, 193, 188, 179, 181, 190, 28.15819 + 186, 174, 171, 167, 166, 171, 177, 175, 165, 153, 157, 160, 164, 163, 159, 156, 28.15820 + 158, 163, 161, 167, 170, 164, 150, 142, 142, 148, 147, 140, 129, 109, 77, 58, 28.15821 + 43, 25, 47, 69, 81, 87, 97, 100, 97, 102, 97, 104, 107, 105, 103, 105, 28.15822 + 107, 106, 107, 107, 107, 106, 106, 106, 106, 106, 99, 105, 102, 65, 66, 68, 28.15823 + 68, 71, 72, 73, 73, 67, 64, 63, 63, 60, 48, 29, 11, 21, 20, 25, 28.15824 + 29, 37, 59, 98, 134, 129, 140, 151, 156, 161, 165, 165, 161, 177, 176, 173, 28.15825 + 171, 164, 161, 160, 159, 165, 164, 164, 164, 164, 165, 166, 167, 163, 165, 167, 28.15826 + 167, 165, 163, 161, 160, 161, 160, 158, 154, 149, 143, 136, 132, 112, 123, 139, 28.15827 + 151, 149, 144, 149, 161, 165, 171, 179, 182, 183, 184, 189, 192, 189, 189, 189, 28.15828 + 191, 193, 195, 198, 199, 196, 195, 197, 200, 199, 195, 194, 198, 197, 197, 197, 28.15829 + 195, 193, 194, 196, 199, 202, 201, 201, 201, 201, 199, 197, 196, 196, 203, 209, 28.15830 + 210, 208, 207, 205, 202, 219, 206, 192, 187, 189, 196, 210, 222, 205, 203, 206, 28.15831 + 215, 218, 209, 194, 184, 176, 171, 173, 165, 144, 143, 147, 138, 138, 156, 168, 28.15832 + 170, 177, 187, 187, 179, 179, 168, 157, 155, 162, 167, 167, 164, 154, 161, 166, 28.15833 + 165, 160, 158, 159, 161, 155, 165, 172, 170, 156, 147, 146, 151, 154, 137, 134, 28.15834 + 135, 116, 89, 67, 51, 39, 52, 62, 72, 88, 95, 92, 95, 99, 99, 98, 28.15835 + 95, 99, 104, 103, 99, 101, 102, 102, 102, 102, 102, 101, 100, 97, 104, 100, 28.15836 + 67, 67, 68, 70, 71, 72, 72, 71, 66, 70, 69, 55, 36, 23, 23, 26, 28.15837 + 20, 11, 17, 37, 67, 93, 115, 131, 156, 162, 164, 165, 168, 172, 171, 166, 28.15838 + 175, 174, 171, 168, 164, 161, 158, 157, 160, 160, 160, 162, 164, 166, 168, 169, 28.15839 + 167, 169, 170, 168, 164, 162, 162, 163, 161, 161, 160, 159, 156, 149, 140, 133, 28.15840 + 132, 102, 86, 103, 127, 139, 147, 158, 154, 160, 169, 175, 179, 183, 190, 194, 28.15841 + 187, 187, 187, 187, 188, 190, 193, 194, 199, 196, 196, 199, 199, 196, 196, 199, 28.15842 + 190, 197, 206, 211, 210, 204, 198, 195, 204, 202, 200, 200, 200, 200, 199, 198, 28.15843 + 190, 194, 199, 203, 206, 205, 201, 196, 193, 194, 204, 217, 221, 210, 194, 185, 28.15844 + 196, 189, 182, 178, 173, 159, 138, 123, 133, 112, 107, 98, 71, 69, 82, 80, 28.15845 + 76, 75, 84, 99, 106, 112, 131, 154, 171, 174, 175, 171, 164, 160, 162, 164, 28.15846 + 157, 165, 169, 167, 165, 164, 163, 161, 158, 158, 160, 163, 163, 159, 151, 144, 28.15847 + 148, 140, 141, 139, 131, 126, 114, 93, 64, 65, 55, 52, 65, 76, 86, 100, 28.15848 + 104, 104, 101, 98, 102, 106, 104, 98, 102, 102, 102, 102, 102, 102, 101, 100, 28.15849 + 99, 105, 100, 69, 68, 69, 70, 71, 71, 70, 69, 67, 66, 58, 40, 22, 28.15850 + 14, 22, 30, 16, 12, 24, 53, 86, 111, 127, 136, 148, 155, 158, 159, 163, 28.15851 + 171, 173, 171, 163, 162, 162, 163, 162, 161, 160, 158, 159, 160, 161, 163, 166, 28.15852 + 169, 171, 172, 176, 173, 170, 169, 168, 168, 168, 167, 166, 164, 163, 162, 159, 28.15853 + 154, 145, 139, 138, 76, 33, 49, 85, 107, 127, 147, 148, 152, 160, 167, 172, 28.15854 + 177, 182, 184, 185, 186, 187, 187, 188, 188, 187, 187, 198, 194, 192, 195, 196, 28.15855 + 195, 197, 201, 199, 196, 191, 187, 187, 192, 200, 207, 204, 201, 197, 196, 198, 28.15856 + 199, 199, 199, 190, 192, 194, 198, 200, 199, 197, 196, 197, 192, 190, 192, 189, 28.15857 + 179, 168, 162, 151, 145, 138, 133, 132, 131, 127, 122, 89, 54, 50, 54, 32, 28.15858 + 30, 44, 41, 51, 42, 39, 44, 48, 57, 82, 110, 135, 147, 164, 173, 173, 28.15859 + 167, 161, 158, 163, 168, 169, 166, 164, 168, 166, 162, 164, 161, 159, 161, 163, 28.15860 + 162, 156, 147, 144, 139, 144, 143, 139, 143, 142, 126, 126, 118, 93, 68, 55, 28.15861 + 48, 53, 70, 95, 101, 104, 103, 106, 109, 106, 102, 106, 106, 106, 106, 105, 28.15862 + 104, 104, 104, 99, 105, 101, 72, 71, 71, 71, 71, 70, 69, 66, 68, 55, 28.15863 + 36, 24, 18, 18, 18, 17, 16, 27, 50, 78, 99, 120, 142, 161, 165, 172, 28.15864 + 175, 168, 163, 163, 162, 162, 166, 165, 165, 165, 164, 162, 159, 156, 158, 159, 28.15865 + 160, 162, 164, 166, 168, 170, 177, 170, 164, 163, 168, 171, 169, 165, 167, 164, 28.15866 + 160, 158, 157, 153, 146, 140, 106, 62, 38, 47, 50, 49, 78, 123, 146, 149, 28.15867 + 153, 159, 164, 167, 169, 169, 172, 176, 181, 188, 192, 195, 194, 194, 194, 189, 28.15868 + 186, 189, 192, 193, 196, 201, 193, 197, 202, 205, 205, 204, 203, 203, 202, 197, 28.15869 + 192, 191, 194, 196, 197, 196, 203, 203, 201, 198, 192, 186, 185, 187, 179, 169, 28.15870 + 159, 153, 148, 142, 140, 143, 144, 148, 150, 150, 149, 147, 143, 139, 80, 38, 28.15871 + 38, 55, 39, 32, 38, 28, 31, 43, 45, 36, 35, 46, 53, 51, 91, 96, 28.15872 + 110, 133, 157, 171, 171, 166, 165, 168, 165, 160, 160, 167, 167, 163, 164, 169, 28.15873 + 169, 166, 158, 155, 158, 160, 154, 142, 148, 156, 145, 133, 131, 130, 118, 128, 28.15874 + 123, 108, 88, 63, 52, 62, 75, 86, 97, 100, 99, 101, 103, 101, 102, 104, 28.15875 + 104, 104, 104, 103, 102, 102, 97, 105, 102, 73, 77, 80, 78, 74, 70, 67, 28.15876 + 62, 64, 41, 19, 12, 14, 15, 15, 14, 8, 36, 63, 85, 119, 142, 155, 28.15877 + 165, 152, 160, 166, 168, 164, 160, 160, 164, 172, 171, 168, 165, 162, 161, 160, 28.15878 + 161, 160, 165, 160, 158, 166, 166, 164, 171, 172, 168, 163, 161, 161, 163, 162, 28.15879 + 162, 158, 165, 157, 149, 162, 140, 160, 134, 66, 32, 39, 43, 41, 34, 31, 28.15880 + 71, 102, 123, 144, 152, 156, 162, 167, 169, 178, 172, 180, 188, 183, 184, 189, 28.15881 + 187, 197, 190, 202, 202, 175, 173, 194, 205, 208, 195, 188, 193, 199, 195, 189, 28.15882 + 187, 190, 188, 187, 185, 183, 180, 178, 178, 172, 171, 169, 167, 166, 165, 164, 28.15883 + 164, 164, 162, 159, 158, 159, 160, 159, 158, 155, 178, 134, 157, 160, 133, 159, 28.15884 + 115, 33, 33, 34, 34, 32, 30, 28, 26, 29, 34, 37, 35, 30, 30, 35, 28.15885 + 41, 49, 54, 72, 90, 126, 155, 156, 171, 164, 174, 170, 159, 158, 158, 161, 28.15886 + 171, 159, 168, 172, 169, 162, 161, 161, 158, 151, 150, 153, 157, 152, 142, 135, 28.15887 + 134, 135, 139, 130, 123, 125, 108, 75, 54, 50, 45, 62, 82, 87, 91, 96, 28.15888 + 94, 102, 97, 106, 112, 102, 95, 100, 101, 97, 98, 97, 74, 75, 76, 76, 28.15889 + 76, 72, 63, 54, 34, 25, 17, 18, 18, 13, 11, 10, 22, 53, 81, 105, 28.15890 + 133, 148, 151, 156, 161, 163, 167, 169, 168, 166, 163, 164, 170, 171, 168, 166, 28.15891 + 164, 163, 163, 163, 163, 168, 163, 160, 167, 166, 164, 171, 168, 166, 161, 160, 28.15892 + 160, 161, 159, 159, 161, 143, 177, 149, 147, 148, 145, 66, 45, 31, 42, 40, 28.15893 + 36, 34, 23, 41, 40, 68, 105, 134, 152, 159, 155, 148, 151, 150, 162, 171, 28.15894 + 166, 167, 177, 180, 189, 174, 178, 184, 175, 173, 171, 156, 163, 164, 168, 170, 28.15895 + 170, 172, 176, 181, 172, 172, 172, 171, 170, 169, 168, 168, 169, 169, 168, 167, 28.15896 + 167, 167, 167, 168, 173, 170, 168, 167, 168, 169, 168, 168, 166, 154, 168, 154, 28.15897 + 161, 144, 157, 53, 37, 37, 37, 36, 34, 32, 30, 29, 33, 33, 32, 31, 28.15898 + 30, 30, 32, 33, 37, 42, 52, 53, 84, 121, 133, 153, 161, 170, 166, 163, 28.15899 + 169, 166, 154, 150, 157, 163, 166, 164, 161, 161, 160, 157, 158, 154, 151, 150, 28.15900 + 146, 140, 139, 142, 132, 141, 138, 133, 138, 131, 116, 107, 84, 57, 48, 56, 28.15901 + 67, 83, 94, 94, 106, 98, 99, 99, 90, 92, 98, 97, 107, 104, 100, 73, 28.15902 + 71, 73, 77, 79, 70, 53, 38, 17, 17, 21, 24, 18, 11, 10, 16, 23, 28.15903 + 57, 90, 118, 147, 158, 157, 161, 165, 163, 164, 165, 168, 168, 163, 162, 171, 28.15904 + 170, 168, 166, 165, 164, 165, 165, 165, 170, 164, 161, 166, 164, 160, 167, 163, 28.15905 + 162, 159, 159, 159, 158, 156, 154, 158, 142, 160, 154, 130, 151, 86, 27, 36, 28.15906 + 40, 49, 37, 33, 39, 27, 24, 32, 37, 43, 53, 71, 93, 109, 116, 114, 28.15907 + 114, 125, 129, 117, 114, 123, 128, 133, 108, 90, 84, 86, 101, 106, 92, 70, 28.15908 + 106, 142, 156, 156, 159, 163, 164, 171, 171, 171, 172, 172, 172, 173, 173, 181, 28.15909 + 180, 179, 178, 177, 177, 177, 177, 180, 178, 176, 176, 177, 178, 177, 176, 173, 28.15910 + 160, 163, 168, 153, 160, 105, 23, 38, 37, 36, 33, 32, 31, 30, 29, 35, 28.15911 + 32, 29, 28, 30, 31, 29, 27, 31, 37, 42, 31, 50, 84, 101, 128, 152, 28.15912 + 162, 162, 162, 171, 171, 164, 163, 156, 159, 160, 159, 161, 163, 159, 154, 159, 28.15913 + 154, 152, 152, 149, 144, 144, 146, 137, 147, 144, 136, 137, 136, 135, 140, 123, 28.15914 + 93, 69, 59, 53, 62, 77, 79, 96, 97, 107, 111, 106, 106, 104, 92, 94, 28.15915 + 93, 92, 76, 72, 73, 76, 72, 55, 36, 22, 22, 19, 21, 20, 14, 10, 28.15916 + 13, 23, 24, 57, 91, 123, 153, 163, 161, 165, 163, 162, 163, 166, 166, 166, 28.15917 + 164, 163, 169, 169, 168, 167, 166, 166, 166, 166, 164, 169, 163, 159, 164, 160, 28.15918 + 155, 160, 160, 159, 158, 158, 158, 157, 153, 150, 154, 150, 139, 135, 143, 102, 28.15919 + 33, 43, 42, 46, 46, 34, 29, 37, 33, 28, 24, 25, 25, 27, 31, 37, 28.15920 + 40, 41, 50, 45, 52, 54, 42, 37, 43, 44, 49, 48, 48, 45, 46, 53, 28.15921 + 54, 47, 46, 101, 152, 170, 171, 176, 179, 175, 183, 182, 182, 184, 183, 185, 28.15922 + 185, 186, 195, 194, 192, 189, 187, 185, 184, 184, 182, 181, 179, 179, 180, 181, 28.15923 + 180, 178, 175, 178, 147, 164, 167, 124, 47, 41, 33, 31, 29, 27, 27, 27, 28.15924 + 28, 29, 32, 31, 30, 29, 30, 30, 29, 28, 32, 33, 40, 34, 42, 56, 28.15925 + 67, 102, 124, 146, 158, 161, 166, 165, 164, 170, 160, 160, 158, 157, 161, 163, 28.15926 + 158, 150, 154, 152, 154, 158, 158, 151, 146, 145, 145, 152, 146, 135, 134, 132, 28.15927 + 135, 146, 134, 124, 115, 93, 60, 48, 57, 64, 71, 80, 97, 103, 99, 103, 28.15928 + 102, 90, 102, 103, 104, 84, 76, 68, 61, 47, 31, 22, 20, 24, 19, 15, 28.15929 + 14, 13, 11, 16, 24, 42, 70, 100, 128, 153, 157, 154, 159, 160, 165, 170, 28.15930 + 170, 168, 165, 166, 169, 167, 167, 167, 168, 168, 167, 168, 168, 165, 170, 164, 28.15931 + 160, 164, 159, 153, 158, 158, 157, 156, 157, 157, 156, 152, 149, 149, 148, 144, 28.15932 + 121, 138, 38, 35, 54, 40, 38, 32, 30, 29, 27, 30, 29, 18, 25, 35, 28.15933 + 39, 34, 26, 19, 18, 36, 27, 31, 38, 35, 36, 41, 38, 27, 37, 42, 28.15934 + 40, 40, 42, 45, 48, 87, 130, 165, 171, 169, 181, 188, 185, 190, 189, 188, 28.15935 + 188, 187, 188, 188, 189, 195, 194, 191, 189, 187, 185, 185, 184, 184, 182, 181, 28.15936 + 181, 182, 181, 179, 177, 175, 173, 169, 146, 170, 50, 44, 44, 27, 27, 25, 28.15937 + 25, 25, 26, 28, 29, 26, 30, 33, 32, 29, 28, 30, 34, 34, 25, 34, 28.15938 + 39, 42, 37, 42, 86, 102, 126, 142, 152, 163, 161, 153, 153, 165, 163, 159, 28.15939 + 157, 161, 163, 157, 148, 156, 153, 153, 158, 160, 154, 148, 147, 148, 149, 142, 28.15940 + 137, 141, 139, 140, 149, 128, 134, 141, 125, 86, 62, 59, 58, 48, 49, 57, 28.15941 + 57, 51, 61, 76, 78, 83, 93, 102, 83, 67, 50, 36, 22, 12, 14, 24, 28.15942 + 14, 9, 8, 12, 16, 15, 17, 23, 52, 79, 105, 129, 153, 155, 152, 159, 28.15943 + 153, 160, 168, 169, 166, 164, 165, 168, 166, 166, 167, 168, 169, 169, 169, 169, 28.15944 + 168, 173, 168, 164, 167, 162, 156, 159, 156, 155, 154, 155, 155, 153, 150, 147, 28.15945 + 139, 153, 138, 148, 64, 32, 47, 41, 34, 32, 24, 37, 38, 24, 27, 25, 28.15946 + 31, 28, 27, 25, 20, 19, 27, 37, 25, 13, 15, 24, 24, 28, 31, 26, 28.15947 + 36, 33, 20, 16, 26, 29, 34, 51, 110, 142, 167, 170, 171, 182, 184, 178, 28.15948 + 191, 190, 189, 187, 186, 187, 188, 188, 190, 190, 189, 188, 188, 189, 190, 190, 28.15949 + 187, 186, 184, 184, 184, 182, 179, 177, 170, 172, 181, 158, 101, 27, 53, 25, 28.15950 + 27, 26, 26, 27, 27, 28, 30, 31, 22, 29, 34, 33, 29, 27, 31, 36, 28.15951 + 37, 24, 31, 38, 42, 35, 37, 78, 110, 116, 115, 122, 147, 162, 164, 166, 28.15952 + 167, 166, 162, 158, 160, 162, 157, 149, 164, 156, 150, 151, 154, 153, 153, 154, 28.15953 + 151, 150, 142, 140, 146, 141, 135, 141, 140, 139, 143, 135, 112, 93, 75, 56, 28.15954 + 36, 32, 37, 42, 34, 36, 48, 53, 43, 57, 72, 58, 40, 27, 22, 15, 28.15955 + 7, 9, 17, 9, 6, 7, 11, 15, 17, 21, 30, 52, 75, 102, 130, 153, 28.15956 + 155, 153, 162, 150, 155, 164, 168, 168, 166, 164, 164, 165, 166, 168, 170, 171, 28.15957 + 171, 171, 170, 169, 175, 170, 166, 170, 164, 157, 161, 154, 152, 151, 151, 151, 28.15958 + 150, 147, 145, 137, 153, 128, 137, 16, 49, 40, 35, 32, 35, 24, 38, 39, 28.15959 + 24, 30, 21, 25, 22, 24, 29, 28, 22, 19, 21, 36, 25, 27, 32, 27, 28.15960 + 28, 32, 28, 21, 25, 24, 34, 47, 36, 32, 53, 135, 158, 180, 187, 190, 28.15961 + 195, 193, 187, 194, 193, 192, 190, 190, 191, 192, 192, 192, 191, 191, 191, 192, 28.15962 + 193, 194, 195, 190, 188, 186, 185, 185, 182, 178, 175, 169, 179, 164, 153, 30, 28.15963 + 44, 34, 24, 29, 28, 29, 29, 29, 28, 27, 28, 25, 28, 31, 31, 29, 28.15964 + 27, 28, 29, 36, 32, 38, 36, 42, 42, 35, 58, 115, 120, 112, 109, 126, 28.15965 + 145, 160, 175, 165, 165, 162, 158, 159, 161, 158, 151, 166, 158, 150, 152, 155, 28.15966 + 153, 154, 154, 152, 153, 147, 145, 146, 136, 129, 136, 148, 140, 142, 142, 135, 28.15967 + 126, 102, 71, 47, 33, 38, 53, 49, 41, 41, 41, 49, 54, 56, 28, 14, 28.15968 + 11, 19, 22, 12, 4, 4, 15, 12, 9, 11, 10, 14, 23, 38, 54, 77, 28.15969 + 103, 130, 151, 150, 145, 154, 154, 156, 163, 171, 176, 176, 170, 165, 164, 166, 28.15970 + 168, 170, 171, 172, 171, 171, 167, 173, 168, 165, 168, 163, 156, 160, 152, 150, 28.15971 + 148, 147, 148, 147, 145, 144, 146, 136, 141, 70, 43, 34, 34, 40, 31, 40, 28.15972 + 23, 29, 29, 22, 32, 17, 36, 26, 22, 27, 31, 28, 25, 25, 25, 18, 28.15973 + 22, 26, 18, 18, 25, 25, 26, 30, 24, 30, 39, 32, 50, 99, 162, 173, 28.15974 + 178, 177, 176, 182, 188, 191, 194, 194, 192, 191, 191, 193, 196, 197, 194, 193, 28.15975 + 192, 191, 191, 191, 191, 192, 190, 188, 186, 185, 184, 180, 176, 172, 176, 177, 28.15976 + 157, 108, 26, 47, 13, 42, 29, 30, 30, 30, 28, 26, 24, 22, 29, 27, 28.15977 + 27, 28, 29, 28, 25, 22, 27, 36, 45, 33, 39, 46, 27, 28, 99, 125, 28.15978 + 136, 127, 118, 114, 125, 145, 161, 163, 161, 158, 158, 160, 158, 154, 160, 155, 28.15979 + 152, 157, 160, 157, 151, 148, 147, 151, 150, 151, 152, 142, 138, 150, 135, 134, 28.15980 + 145, 153, 152, 150, 131, 101, 70, 38, 30, 47, 49, 44, 45, 48, 53, 49, 28.15981 + 45, 23, 19, 17, 15, 13, 12, 10, 9, 12, 11, 14, 14, 11, 11, 19, 28.15982 + 32, 66, 88, 104, 123, 150, 164, 160, 159, 156, 160, 167, 173, 179, 181, 173, 28.15983 + 164, 156, 157, 161, 167, 172, 175, 174, 172, 171, 168, 166, 165, 164, 162, 156, 28.15984 + 151, 155, 148, 151, 154, 146, 145, 146, 140, 162, 120, 126, 49, 35, 47, 29, 28.15985 + 35, 34, 30, 29, 32, 36, 35, 29, 23, 19, 28, 29, 27, 28, 23, 23, 28.15986 + 35, 27, 28, 27, 25, 22, 23, 25, 28, 28, 24, 24, 39, 55, 67, 100, 28.15987 + 148, 175, 180, 184, 187, 188, 189, 190, 193, 194, 195, 195, 195, 195, 195, 195, 28.15988 + 194, 195, 195, 194, 193, 193, 192, 191, 191, 191, 194, 192, 185, 179, 179, 178, 28.15989 + 176, 185, 158, 161, 55, 41, 30, 27, 28, 28, 25, 33, 37, 27, 25, 27, 28.15990 + 22, 32, 24, 31, 31, 22, 33, 41, 26, 33, 35, 37, 39, 40, 39, 37, 28.15991 + 36, 82, 129, 125, 133, 137, 133, 106, 132, 139, 157, 169, 166, 160, 160, 166, 28.15992 + 168, 165, 159, 157, 160, 159, 153, 150, 153, 155, 153, 151, 150, 150, 146, 143, 28.15993 + 142, 130, 139, 143, 142, 144, 147, 137, 124, 65, 31, 40, 62, 53, 50, 54, 28.15994 + 40, 50, 48, 45, 14, 11, 9, 7, 6, 5, 6, 6, 9, 9, 12, 14, 28.15995 + 13, 13, 20, 33, 54, 86, 112, 128, 143, 147, 146, 151, 167, 167, 170, 170, 28.15996 + 175, 179, 177, 171, 172, 169, 166, 165, 167, 169, 170, 170, 170, 168, 166, 166, 28.15997 + 166, 163, 158, 154, 148, 142, 147, 150, 145, 146, 149, 144, 146, 140, 98, 39, 28.15998 + 40, 40, 33, 32, 29, 26, 25, 28, 31, 30, 25, 20, 23, 28, 25, 23, 28.15999 + 25, 19, 17, 27, 24, 26, 28, 28, 28, 28, 27, 27, 32, 26, 34, 78, 28.16000 + 132, 153, 156, 166, 171, 176, 180, 184, 185, 186, 188, 190, 197, 197, 198, 198, 28.16001 + 197, 197, 197, 196, 193, 193, 192, 192, 192, 191, 191, 191, 188, 188, 184, 180, 28.16002 + 180, 182, 179, 174, 173, 162, 129, 28, 28, 27, 23, 33, 23, 23, 25, 21, 28.16003 + 15, 23, 32, 31, 15, 25, 39, 39, 29, 29, 30, 23, 31, 33, 35, 37, 28.16004 + 38, 38, 37, 36, 61, 122, 126, 131, 135, 132, 127, 125, 128, 140, 150, 154, 28.16005 + 156, 162, 165, 164, 161, 154, 151, 154, 155, 152, 149, 151, 151, 153, 154, 152, 28.16006 + 147, 142, 142, 144, 137, 141, 145, 147, 151, 150, 139, 128, 109, 70, 54, 56, 28.16007 + 45, 44, 53, 53, 57, 54, 51, 13, 10, 8, 7, 6, 8, 9, 9, 6, 28.16008 + 5, 7, 10, 9, 10, 16, 28, 74, 103, 126, 141, 158, 160, 154, 156, 158, 28.16009 + 166, 176, 181, 185, 182, 171, 159, 166, 165, 165, 167, 171, 174, 175, 175, 167, 28.16010 + 166, 165, 165, 166, 163, 158, 154, 147, 141, 145, 148, 144, 147, 149, 142, 136, 28.16011 + 154, 63, 35, 45, 36, 40, 33, 26, 22, 22, 25, 28, 27, 22, 18, 26, 28.16012 + 26, 20, 21, 27, 21, 17, 25, 37, 33, 28, 25, 26, 28, 29, 31, 28, 28.16013 + 46, 74, 116, 158, 169, 164, 167, 174, 178, 183, 186, 187, 189, 191, 193, 196, 28.16014 + 196, 197, 197, 197, 197, 197, 197, 191, 191, 191, 191, 191, 190, 190, 190, 187, 28.16015 + 184, 180, 178, 183, 187, 182, 174, 173, 167, 96, 21, 28, 33, 21, 32, 37, 28.16016 + 37, 30, 23, 30, 41, 36, 18, 22, 28, 24, 22, 29, 32, 30, 31, 28, 28.16017 + 29, 32, 34, 36, 36, 36, 36, 38, 102, 130, 129, 134, 133, 147, 121, 129, 28.16018 + 134, 140, 148, 158, 167, 168, 165, 164, 156, 151, 153, 157, 156, 155, 154, 149, 28.16019 + 155, 158, 154, 146, 142, 144, 147, 143, 139, 141, 150, 157, 151, 140, 131, 113, 28.16020 + 80, 53, 46, 44, 40, 45, 51, 43, 42, 42, 8, 9, 10, 11, 11, 12, 28.16021 + 12, 11, 8, 7, 7, 10, 10, 9, 13, 22, 56, 90, 117, 130, 141, 144, 28.16022 + 145, 155, 149, 161, 175, 182, 184, 179, 166, 154, 157, 160, 167, 173, 178, 177, 28.16023 + 172, 168, 166, 166, 166, 165, 164, 160, 155, 151, 152, 146, 148, 149, 144, 147, 28.16024 + 148, 137, 141, 130, 35, 37, 41, 37, 40, 28, 27, 25, 24, 26, 28, 28, 28.16025 + 24, 21, 24, 23, 18, 22, 31, 24, 19, 27, 25, 25, 27, 31, 38, 41, 28.16026 + 40, 39, 73, 110, 140, 153, 160, 160, 165, 178, 175, 179, 184, 188, 189, 191, 28.16027 + 192, 195, 193, 194, 194, 195, 194, 196, 195, 195, 194, 193, 193, 192, 191, 190, 28.16028 + 189, 189, 187, 187, 184, 182, 185, 188, 184, 177, 165, 141, 58, 30, 30, 38, 28.16029 + 25, 28, 13, 33, 35, 24, 27, 36, 30, 18, 29, 39, 30, 23, 32, 30, 28.16030 + 27, 40, 28, 29, 31, 34, 36, 37, 37, 38, 31, 69, 134, 130, 135, 140, 28.16031 + 150, 128, 140, 140, 142, 146, 155, 163, 166, 167, 168, 161, 155, 155, 159, 160, 28.16032 + 158, 155, 152, 157, 158, 154, 149, 148, 148, 146, 142, 133, 135, 150, 158, 151, 28.16033 + 140, 135, 124, 94, 58, 47, 56, 55, 52, 59, 45, 46, 46, 2, 4, 8, 28.16034 + 12, 13, 13, 10, 8, 16, 13, 12, 14, 12, 9, 11, 17, 31, 75, 116, 28.16035 + 133, 141, 146, 155, 174, 157, 161, 164, 165, 167, 171, 172, 170, 172, 174, 176, 28.16036 + 178, 177, 171, 162, 156, 169, 170, 171, 170, 167, 161, 156, 152, 155, 151, 153, 28.16037 + 153, 148, 151, 149, 133, 145, 79, 24, 43, 30, 38, 32, 22, 25, 24, 25, 28.16038 + 27, 28, 27, 26, 24, 23, 22, 18, 25, 32, 25, 21, 34, 32, 46, 67, 28.16039 + 88, 102, 105, 101, 96, 133, 154, 164, 164, 172, 176, 176, 182, 173, 177, 180, 28.16040 + 184, 186, 187, 189, 191, 191, 192, 192, 194, 193, 195, 194, 195, 198, 197, 195, 28.16041 + 194, 192, 190, 189, 188, 186, 189, 189, 185, 182, 183, 181, 177, 158, 102, 27, 28.16042 + 33, 22, 33, 32, 40, 79, 103, 90, 44, 18, 15, 26, 42, 16, 40, 47, 28.16043 + 43, 41, 25, 17, 34, 29, 30, 32, 34, 36, 37, 38, 40, 38, 40, 129, 28.16044 + 131, 137, 147, 140, 142, 143, 143, 142, 142, 143, 148, 156, 164, 166, 161, 155, 28.16045 + 154, 156, 159, 155, 151, 153, 154, 152, 148, 150, 153, 149, 141, 138, 131, 135, 28.16046 + 150, 159, 153, 144, 141, 146, 109, 59, 39, 48, 52, 51, 57, 49, 50, 48, 28.16047 + 3, 6, 11, 16, 18, 17, 13, 10, 14, 10, 9, 10, 8, 5, 5, 8, 28.16048 + 4, 29, 58, 88, 125, 143, 141, 141, 151, 157, 163, 165, 167, 171, 172, 170, 28.16049 + 184, 182, 177, 174, 171, 169, 166, 163, 172, 174, 176, 175, 171, 165, 161, 157, 28.16050 + 155, 153, 157, 157, 153, 157, 150, 130, 132, 44, 32, 49, 31, 40, 32, 25, 28.16051 + 24, 23, 25, 25, 25, 25, 25, 24, 23, 23, 21, 25, 29, 20, 26, 48, 28.16052 + 89, 100, 115, 129, 141, 150, 157, 161, 154, 164, 166, 164, 173, 174, 172, 175, 28.16053 + 176, 180, 184, 186, 187, 188, 189, 191, 192, 192, 193, 194, 194, 195, 196, 196, 28.16054 + 198, 197, 196, 194, 192, 190, 189, 188, 184, 189, 190, 185, 180, 178, 177, 174, 28.16055 + 180, 116, 47, 38, 23, 31, 35, 74, 122, 159, 170, 157, 141, 98, 39, 12, 28.16056 + 38, 35, 28, 31, 41, 38, 28, 28, 31, 31, 32, 34, 35, 37, 38, 39, 28.16057 + 44, 32, 106, 130, 139, 149, 136, 152, 144, 144, 145, 143, 139, 139, 149, 160, 28.16058 + 161, 162, 160, 157, 157, 159, 157, 153, 151, 152, 147, 143, 148, 154, 149, 136, 28.16059 + 137, 135, 141, 152, 158, 156, 150, 146, 137, 102, 67, 52, 51, 51, 50, 45, 28.16060 + 48, 48, 48, 9, 11, 13, 16, 17, 17, 17, 16, 12, 7, 5, 7, 6, 28.16061 + 2, 0, 3, 14, 19, 27, 55, 105, 136, 136, 131, 138, 151, 164, 170, 171, 28.16062 + 169, 164, 159, 174, 172, 169, 169, 170, 172, 173, 173, 168, 172, 176, 176, 173, 28.16063 + 168, 164, 162, 158, 158, 162, 161, 155, 157, 147, 122, 90, 38, 42, 42, 37, 28.16064 + 34, 33, 31, 23, 23, 24, 24, 24, 23, 25, 25, 24, 25, 23, 24, 25, 28.16065 + 22, 43, 79, 127, 130, 132, 132, 135, 143, 158, 170, 167, 178, 180, 179, 181, 28.16066 + 174, 174, 187, 181, 183, 187, 189, 189, 189, 190, 191, 190, 190, 191, 191, 192, 28.16067 + 193, 194, 195, 194, 194, 193, 193, 192, 191, 191, 190, 185, 188, 187, 183, 182, 28.16068 + 181, 177, 171, 187, 157, 91, 36, 32, 34, 29, 113, 153, 164, 152, 149, 172, 28.16069 + 158, 120, 108, 105, 73, 50, 44, 43, 44, 40, 31, 31, 31, 32, 32, 33, 28.16070 + 35, 36, 37, 40, 45, 72, 126, 140, 143, 147, 152, 149, 148, 150, 150, 143, 28.16071 + 138, 142, 151, 153, 160, 163, 160, 158, 160, 161, 158, 150, 154, 151, 145, 147, 28.16072 + 153, 151, 138, 135, 141, 148, 152, 154, 155, 151, 145, 132, 106, 95, 87, 70, 28.16073 + 67, 71, 59, 65, 63, 64, 8, 7, 7, 8, 9, 10, 13, 14, 15, 10, 28.16074 + 9, 12, 12, 9, 8, 10, 0, 14, 20, 23, 43, 70, 100, 129, 139, 148, 28.16075 + 154, 155, 155, 160, 164, 164, 161, 163, 165, 168, 171, 171, 168, 166, 161, 167, 28.16076 + 171, 174, 170, 166, 163, 162, 163, 163, 167, 163, 155, 154, 141, 113, 46, 39, 28.16077 + 41, 26, 37, 20, 28, 28, 24, 25, 26, 26, 26, 25, 26, 27, 23, 25, 28.16078 + 25, 25, 26, 29, 60, 107, 134, 145, 157, 160, 156, 154, 159, 164, 176, 175, 28.16079 + 172, 178, 188, 184, 180, 190, 179, 182, 184, 186, 185, 185, 186, 187, 187, 188, 28.16080 + 188, 189, 190, 191, 192, 192, 189, 189, 189, 191, 190, 192, 192, 192, 189, 188, 28.16081 + 185, 183, 187, 188, 181, 171, 156, 169, 110, 21, 36, 35, 19, 137, 141, 168, 28.16082 + 165, 162, 177, 165, 152, 171, 156, 140, 133, 107, 53, 28, 34, 35, 31, 31, 28.16083 + 31, 31, 31, 32, 34, 35, 32, 61, 46, 122, 139, 137, 160, 148, 151, 149, 28.16084 + 150, 152, 145, 135, 132, 136, 142, 153, 159, 157, 154, 157, 158, 157, 150, 159, 28.16085 + 158, 150, 149, 154, 153, 144, 133, 145, 152, 148, 147, 151, 147, 140, 141, 112, 28.16086 + 104, 89, 55, 55, 75, 67, 71, 66, 63, 10, 4, 1, 2, 7, 12, 13, 28.16087 + 13, 10, 4, 7, 10, 7, 11, 14, 8, 17, 16, 13, 13, 11, 8, 27, 28.16088 + 68, 123, 129, 137, 144, 150, 154, 158, 159, 165, 159, 158, 159, 164, 167, 167, 28.16089 + 165, 162, 165, 166, 165, 163, 162, 163, 168, 172, 169, 162, 154, 159, 168, 136, 28.16090 + 81, 35, 40, 38, 30, 28, 34, 34, 29, 29, 27, 24, 23, 24, 29, 34, 28.16091 + 36, 33, 31, 25, 27, 46, 80, 107, 121, 141, 146, 150, 151, 152, 156, 162, 28.16092 + 168, 168, 178, 183, 182, 181, 185, 183, 178, 185, 187, 188, 184, 183, 188, 191, 28.16093 + 191, 187, 191, 193, 192, 192, 193, 195, 195, 191, 188, 185, 187, 189, 191, 190, 28.16094 + 188, 188, 182, 186, 189, 183, 185, 185, 176, 164, 111, 78, 41, 37, 28, 27, 28.16095 + 114, 157, 154, 160, 172, 175, 172, 174, 182, 165, 179, 177, 165, 138, 79, 30, 28.16096 + 27, 30, 29, 40, 43, 33, 29, 34, 36, 42, 39, 53, 100, 141, 142, 142, 28.16097 + 156, 148, 156, 159, 154, 145, 141, 138, 135, 136, 149, 161, 163, 158, 159, 159, 28.16098 + 158, 157, 158, 157, 154, 147, 142, 138, 137, 145, 143, 145, 152, 153, 148, 145, 28.16099 + 142, 143, 123, 116, 80, 65, 70, 61, 72, 65, 61, 60, 11, 11, 11, 11, 28.16100 + 11, 9, 9, 9, 14, 7, 10, 13, 11, 14, 17, 12, 7, 14, 16, 19, 28.16101 + 18, 2, 0, 13, 54, 100, 127, 123, 127, 153, 161, 147, 155, 154, 154, 156, 28.16102 + 155, 156, 159, 162, 161, 165, 166, 163, 156, 155, 160, 168, 179, 174, 170, 164, 28.16103 + 159, 149, 102, 42, 49, 47, 46, 44, 37, 29, 28, 32, 29, 28, 29, 31, 28.16104 + 33, 30, 23, 18, 40, 29, 39, 76, 107, 117, 124, 137, 142, 148, 156, 160, 28.16105 + 160, 159, 161, 163, 167, 174, 179, 177, 178, 183, 185, 183, 180, 183, 184, 182, 28.16106 + 185, 189, 189, 185, 196, 190, 183, 180, 184, 188, 186, 181, 189, 185, 184, 184, 28.16107 + 186, 188, 189, 188, 189, 182, 186, 187, 182, 183, 184, 176, 175, 129, 85, 32, 28.16108 + 29, 36, 31, 94, 155, 144, 146, 161, 168, 159, 155, 162, 154, 167, 172, 177, 28.16109 + 177, 143, 80, 32, 50, 32, 21, 27, 34, 34, 34, 36, 42, 31, 49, 75, 28.16110 + 127, 142, 143, 147, 147, 153, 155, 150, 145, 142, 138, 133, 143, 133, 145, 166, 28.16111 + 167, 160, 161, 165, 161, 161, 160, 157, 152, 149, 145, 144, 148, 146, 148, 153, 28.16112 + 153, 148, 142, 141, 144, 130, 115, 78, 50, 63, 59, 71, 68, 66, 65, 7, 28.16113 + 12, 17, 17, 13, 8, 7, 8, 15, 8, 12, 15, 11, 14, 17, 11, 10, 28.16114 + 17, 13, 10, 16, 12, 6, 10, 18, 53, 97, 126, 140, 144, 142, 138, 147, 28.16115 + 152, 156, 155, 151, 151, 159, 166, 160, 164, 166, 162, 156, 156, 162, 171, 159, 28.16116 + 169, 176, 160, 130, 114, 104, 88, 49, 48, 38, 30, 35, 45, 37, 19, 32, 28.16117 + 28, 22, 22, 28, 34, 39, 39, 36, 40, 67, 110, 134, 134, 132, 140, 146, 28.16118 + 152, 159, 163, 164, 164, 166, 169, 168, 172, 175, 174, 175, 181, 185, 186, 183, 28.16119 + 185, 184, 183, 186, 190, 187, 181, 177, 178, 182, 187, 189, 187, 182, 177, 187, 28.16120 + 183, 182, 182, 184, 187, 189, 188, 190, 182, 185, 185, 179, 180, 182, 174, 169, 28.16121 + 130, 81, 26, 30, 44, 19, 35, 96, 143, 163, 142, 136, 162, 169, 155, 174, 28.16122 + 175, 170, 161, 164, 158, 106, 36, 20, 40, 40, 28, 33, 40, 34, 26, 43, 28.16123 + 26, 46, 48, 103, 144, 146, 142, 149, 152, 152, 149, 148, 147, 142, 135, 143, 28.16124 + 124, 134, 156, 160, 165, 169, 160, 165, 162, 158, 157, 157, 155, 152, 149, 149, 28.16125 + 147, 148, 152, 153, 148, 142, 141, 141, 138, 116, 85, 32, 48, 42, 53, 52, 28.16126 + 55, 60, 4, 8, 13, 14, 13, 10, 8, 8, 12, 5, 10, 13, 9, 13, 28.16127 + 16, 11, 14, 21, 11, 2, 10, 19, 20, 25, 7, 12, 38, 80, 110, 119, 28.16128 + 122, 129, 143, 149, 153, 152, 150, 151, 156, 162, 158, 160, 161, 161, 160, 162, 28.16129 + 166, 170, 179, 160, 152, 154, 158, 165, 162, 147, 150, 119, 78, 48, 33, 31, 28.16130 + 38, 46, 31, 33, 34, 33, 30, 27, 26, 26, 53, 84, 112, 119, 120, 129, 28.16131 + 136, 139, 148, 150, 150, 150, 151, 156, 165, 172, 167, 170, 172, 173, 174, 177, 28.16132 + 181, 183, 184, 186, 186, 182, 181, 182, 180, 176, 178, 179, 181, 177, 171, 171, 28.16133 + 183, 196, 181, 181, 183, 185, 186, 187, 187, 187, 190, 182, 184, 184, 177, 178, 28.16134 + 180, 173, 177, 159, 123, 64, 45, 47, 27, 35, 47, 70, 113, 149, 151, 136, 28.16135 + 138, 156, 159, 158, 162, 157, 156, 175, 164, 119, 29, 45, 44, 36, 40, 37, 28.16136 + 29, 28, 42, 32, 43, 38, 71, 145, 148, 147, 154, 154, 152, 151, 154, 155, 28.16137 + 149, 140, 139, 132, 136, 136, 137, 166, 178, 151, 167, 161, 156, 155, 157, 157, 28.16138 + 153, 148, 146, 144, 145, 150, 151, 147, 143, 142, 131, 139, 120, 102, 31, 45, 28.16139 + 36, 41, 38, 47, 54, 10, 9, 8, 10, 12, 13, 10, 8, 9, 3, 8, 28.16140 + 12, 9, 14, 19, 13, 5, 21, 19, 9, 13, 15, 10, 9, 9, 18, 17, 28.16141 + 18, 47, 98, 126, 130, 139, 144, 147, 148, 147, 147, 147, 149, 158, 157, 156, 28.16142 + 158, 160, 162, 161, 160, 166, 156, 161, 174, 179, 181, 174, 159, 156, 139, 145, 28.16143 + 156, 117, 48, 16, 27, 25, 28, 31, 29, 30, 42, 61, 79, 108, 132, 145, 28.16144 + 135, 125, 131, 142, 146, 141, 143, 142, 140, 139, 142, 149, 156, 158, 161, 165, 28.16145 + 170, 172, 174, 177, 181, 175, 181, 182, 176, 172, 173, 176, 176, 175, 178, 185, 28.16146 + 190, 184, 173, 169, 171, 174, 178, 184, 188, 188, 187, 186, 185, 189, 182, 184, 28.16147 + 184, 177, 178, 180, 171, 163, 167, 151, 91, 37, 16, 17, 42, 32, 36, 69, 28.16148 + 124, 157, 153, 141, 140, 158, 159, 171, 171, 158, 160, 158, 133, 114, 71, 34, 28.16149 + 33, 40, 30, 28, 44, 35, 41, 39, 42, 42, 134, 148, 157, 156, 155, 153, 28.16150 + 152, 156, 158, 152, 143, 142, 140, 140, 131, 129, 154, 172, 160, 166, 162, 156, 28.16151 + 155, 158, 158, 152, 147, 144, 141, 142, 148, 150, 147, 144, 144, 126, 135, 120, 28.16152 + 116, 41, 48, 47, 47, 41, 49, 54, 18, 13, 9, 9, 12, 13, 11, 7, 28.16153 + 11, 6, 10, 14, 10, 14, 19, 14, 3, 19, 19, 10, 11, 11, 8, 12, 28.16154 + 17, 23, 24, 20, 26, 49, 77, 100, 128, 136, 140, 144, 145, 145, 144, 142, 28.16155 + 156, 155, 153, 153, 154, 154, 151, 150, 144, 161, 185, 185, 162, 153, 161, 166, 28.16156 + 153, 152, 149, 141, 129, 103, 63, 32, 33, 43, 56, 66, 79, 104, 134, 157, 28.16157 + 150, 144, 142, 147, 146, 140, 141, 147, 144, 148, 150, 150, 145, 141, 140, 142, 28.16158 + 145, 147, 154, 162, 167, 168, 172, 178, 170, 176, 178, 175, 173, 175, 177, 175, 28.16159 + 172, 164, 167, 184, 193, 187, 172, 164, 170, 175, 182, 186, 187, 185, 184, 184, 28.16160 + 187, 180, 184, 186, 179, 179, 180, 171, 176, 177, 169, 141, 100, 68, 48, 40, 28.16161 + 29, 50, 56, 53, 87, 142, 163, 151, 137, 136, 145, 156, 159, 162, 163, 154, 28.16162 + 151, 128, 93, 48, 20, 32, 45, 34, 30, 44, 35, 46, 31, 107, 150, 162, 28.16163 + 156, 155, 153, 151, 154, 157, 152, 144, 149, 141, 138, 144, 141, 133, 144, 168, 28.16164 + 165, 162, 159, 160, 160, 159, 155, 151, 145, 141, 142, 147, 150, 147, 144, 145, 28.16165 + 139, 134, 117, 116, 44, 34, 43, 37, 30, 38, 41, 12, 11, 9, 9, 10, 28.16166 + 11, 10, 9, 14, 7, 10, 14, 10, 12, 15, 9, 10, 17, 10, 3, 8, 28.16167 + 9, 14, 25, 13, 8, 17, 30, 21, 2, 10, 39, 92, 108, 122, 132, 135, 28.16168 + 138, 141, 146, 150, 152, 153, 149, 146, 147, 152, 158, 181, 173, 171, 171, 171, 28.16169 + 180, 178, 160, 155, 169, 164, 146, 151, 156, 111, 48, 85, 102, 127, 146, 153, 28.16170 + 151, 144, 141, 152, 143, 141, 148, 151, 148, 144, 146, 150, 154, 157, 157, 151, 28.16171 + 147, 145, 145, 141, 140, 145, 151, 155, 156, 162, 170, 170, 171, 172, 173, 177, 28.16172 + 177, 170, 160, 160, 135, 114, 114, 126, 142, 163, 182, 167, 173, 178, 180, 180, 28.16173 + 180, 183, 185, 185, 179, 185, 188, 182, 181, 181, 171, 166, 162, 154, 152, 144, 28.16174 + 125, 86, 36, 49, 27, 21, 31, 38, 51, 96, 149, 162, 165, 156, 150, 155, 28.16175 + 153, 147, 147, 141, 153, 153, 90, 22, 35, 57, 27, 30, 41, 37, 44, 41, 28.16176 + 75, 159, 163, 157, 158, 156, 153, 155, 157, 153, 146, 146, 150, 145, 152, 152, 28.16177 + 118, 108, 144, 160, 160, 161, 163, 161, 160, 157, 154, 151, 146, 146, 149, 150, 28.16178 + 147, 143, 144, 149, 129, 117, 120, 57, 24, 38, 22, 17, 27, 32, 0, 4, 28.16179 + 8, 9, 8, 7, 10, 14, 15, 7, 10, 12, 6, 7, 9, 2, 10, 14, 28.16180 + 8, 6, 12, 7, 4, 11, 20, 26, 25, 18, 16, 20, 20, 18, 48, 72, 28.16181 + 97, 111, 117, 123, 134, 145, 143, 150, 153, 147, 141, 145, 161, 175, 171, 169, 28.16182 + 170, 165, 163, 172, 170, 149, 149, 144, 147, 156, 149, 135, 135, 148, 152, 147, 28.16183 + 142, 140, 143, 148, 149, 151, 139, 157, 161, 148, 145, 158, 162, 153, 150, 152, 28.16184 + 152, 150, 146, 146, 149, 153, 144, 140, 140, 144, 145, 144, 150, 160, 167, 165, 28.16185 + 161, 164, 172, 171, 154, 134, 86, 80, 80, 82, 79, 81, 103, 130, 168, 172, 28.16186 + 174, 174, 174, 176, 182, 186, 183, 178, 185, 190, 184, 183, 182, 171, 169, 174, 28.16187 + 167, 158, 149, 150, 137, 96, 61, 44, 39, 47, 42, 33, 47, 75, 116, 141, 28.16188 + 142, 138, 149, 154, 148, 154, 161, 129, 140, 126, 54, 29, 50, 46, 35, 38, 28.16189 + 42, 41, 57, 56, 168, 162, 160, 162, 160, 157, 157, 158, 155, 150, 135, 163, 28.16190 + 158, 148, 150, 113, 84, 107, 152, 154, 159, 161, 161, 159, 157, 157, 156, 151, 28.16191 + 149, 152, 151, 147, 143, 143, 144, 118, 118, 131, 81, 34, 49, 26, 26, 34, 28.16192 + 40, 7, 9, 9, 6, 6, 11, 14, 12, 11, 12, 12, 11, 10, 9, 7, 28.16193 + 7, 11, 13, 12, 10, 8, 8, 10, 13, 14, 18, 20, 18, 19, 17, 11, 28.16194 + 7, 29, 13, 61, 111, 97, 105, 136, 132, 137, 149, 142, 131, 145, 164, 167, 28.16195 + 165, 167, 162, 158, 159, 161, 158, 149, 141, 154, 145, 136, 137, 136, 137, 146, 28.16196 + 155, 143, 142, 139, 138, 140, 143, 146, 148, 152, 155, 157, 158, 158, 154, 149, 28.16197 + 146, 164, 156, 149, 150, 157, 160, 156, 150, 153, 150, 148, 148, 150, 150, 148, 28.16198 + 145, 148, 153, 145, 138, 151, 156, 117, 65, 73, 82, 53, 60, 70, 82, 91, 28.16199 + 100, 147, 170, 174, 165, 168, 174, 178, 184, 178, 176, 177, 180, 185, 186, 180, 28.16200 + 175, 174, 176, 170, 159, 153, 153, 149, 143, 120, 91, 57, 38, 40, 44, 39, 28.16201 + 31, 44, 103, 153, 154, 138, 139, 146, 148, 148, 153, 164, 131, 117, 51, 24, 28.16202 + 57, 45, 35, 42, 52, 38, 79, 159, 173, 155, 167, 166, 154, 152, 161, 160, 28.16203 + 149, 139, 150, 151, 151, 155, 138, 105, 83, 117, 161, 160, 165, 163, 158, 165, 28.16204 + 153, 155, 153, 149, 144, 144, 146, 141, 135, 132, 123, 119, 127, 89, 39, 46, 28.16205 + 57, 43, 53, 73, 8, 10, 9, 6, 6, 11, 13, 11, 11, 11, 11, 11, 28.16206 + 10, 9, 8, 8, 11, 12, 11, 9, 7, 9, 12, 15, 10, 14, 17, 17, 28.16207 + 19, 22, 18, 15, 29, 8, 30, 65, 79, 111, 133, 112, 107, 102, 103, 128, 28.16208 + 157, 164, 169, 187, 146, 145, 145, 148, 152, 154, 150, 146, 145, 142, 141, 146, 28.16209 + 144, 139, 138, 141, 144, 144, 145, 146, 147, 148, 148, 148, 151, 153, 154, 155, 28.16210 + 154, 152, 148, 146, 157, 150, 146, 147, 153, 156, 154, 150, 153, 153, 153, 155, 28.16211 + 157, 155, 152, 148, 147, 147, 139, 130, 120, 110, 91, 74, 58, 75, 76, 65, 28.16212 + 59, 69, 75, 83, 100, 134, 160, 169, 179, 180, 173, 172, 184, 183, 183, 180, 28.16213 + 178, 176, 175, 175, 172, 176, 172, 164, 161, 161, 158, 153, 144, 145, 130, 96, 28.16214 + 56, 33, 35, 47, 29, 47, 78, 117, 150, 161, 150, 134, 166, 155, 151, 146, 28.16215 + 158, 107, 35, 21, 35, 38, 40, 47, 52, 101, 169, 175, 156, 163, 165, 159, 28.16216 + 157, 161, 158, 149, 141, 147, 146, 147, 150, 135, 102, 77, 34, 107, 137, 145, 28.16217 + 145, 152, 172, 165, 151, 151, 150, 146, 147, 148, 142, 135, 144, 127, 114, 123, 28.16218 + 98, 59, 58, 54, 68, 70, 78, 9, 12, 12, 8, 7, 11, 11, 9, 9, 28.16219 + 9, 11, 11, 11, 10, 9, 10, 11, 12, 10, 9, 7, 10, 13, 17, 11, 28.16220 + 13, 15, 15, 19, 23, 21, 19, 25, 22, 19, 12, 16, 43, 56, 39, 24, 28.16221 + 56, 104, 155, 176, 153, 132, 137, 144, 147, 151, 156, 158, 160, 160, 159, 144, 28.16222 + 144, 146, 151, 148, 142, 137, 137, 140, 143, 147, 150, 149, 148, 146, 144, 146, 28.16223 + 148, 148, 148, 146, 146, 145, 143, 147, 145, 143, 145, 147, 150, 150, 150, 152, 28.16224 + 154, 157, 164, 166, 167, 162, 158, 154, 148, 145, 142, 120, 87, 66, 66, 60, 28.16225 + 63, 36, 52, 51, 72, 61, 102, 116, 145, 165, 173, 184, 188, 186, 188, 185, 28.16226 + 186, 186, 182, 175, 175, 180, 186, 174, 176, 176, 172, 170, 170, 167, 162, 153, 28.16227 + 158, 157, 142, 118, 102, 100, 105, 91, 63, 49, 69, 97, 118, 139, 158, 146, 28.16228 + 146, 141, 147, 155, 130, 55, 34, 30, 44, 38, 49, 83, 134, 180, 177, 159, 28.16229 + 159, 160, 162, 163, 160, 154, 150, 146, 145, 146, 147, 146, 133, 105, 79, 42, 28.16230 + 57, 80, 127, 163, 155, 165, 176, 150, 151, 151, 148, 148, 148, 143, 136, 131, 28.16231 + 120, 110, 118, 103, 77, 80, 70, 80, 77, 71, 10, 13, 13, 9, 8, 10, 28.16232 + 10, 6, 8, 8, 10, 11, 11, 11, 10, 11, 11, 11, 9, 9, 8, 11, 28.16233 + 16, 20, 15, 16, 15, 13, 14, 18, 17, 15, 17, 29, 22, 5, 7, 21, 28.16234 + 25, 23, 22, 91, 141, 148, 144, 143, 139, 139, 153, 158, 164, 167, 164, 161, 28.16235 + 158, 159, 150, 149, 146, 146, 145, 144, 144, 146, 142, 144, 147, 150, 151, 149, 28.16236 + 146, 144, 148, 147, 147, 146, 146, 145, 146, 146, 145, 146, 146, 146, 146, 145, 28.16237 + 147, 149, 149, 152, 159, 166, 170, 173, 171, 169, 167, 153, 148, 151, 142, 115, 28.16238 + 92, 83, 66, 84, 71, 44, 58, 63, 100, 88, 135, 153, 160, 159, 167, 174, 28.16239 + 179, 189, 190, 191, 191, 187, 181, 179, 184, 188, 179, 181, 182, 181, 178, 175, 28.16240 + 171, 168, 173, 166, 161, 161, 164, 161, 151, 141, 143, 123, 110, 107, 100, 93, 28.16241 + 109, 133, 145, 157, 156, 157, 143, 131, 62, 43, 33, 46, 36, 66, 127, 166, 28.16242 + 183, 178, 164, 155, 154, 161, 163, 156, 150, 150, 148, 145, 150, 153, 145, 134, 28.16243 + 116, 94, 76, 37, 33, 79, 142, 139, 146, 161, 151, 153, 152, 148, 146, 146, 28.16244 + 143, 138, 132, 133, 126, 121, 91, 64, 70, 61, 68, 71, 66, 10, 14, 13, 28.16245 + 9, 8, 10, 9, 5, 9, 9, 10, 11, 12, 12, 11, 11, 10, 11, 11, 28.16246 + 10, 10, 13, 18, 21, 19, 19, 17, 14, 14, 18, 17, 14, 22, 25, 17, 28.16247 + 17, 32, 33, 23, 24, 50, 118, 150, 128, 121, 143, 157, 158, 150, 157, 163, 28.16248 + 163, 156, 148, 142, 141, 148, 147, 144, 142, 142, 146, 149, 151, 150, 151, 152, 28.16249 + 153, 153, 153, 152, 152, 154, 152, 151, 151, 151, 152, 153, 154, 148, 151, 152, 28.16250 + 150, 148, 146, 146, 148, 149, 153, 158, 163, 165, 168, 169, 169, 168, 159, 146, 28.16251 + 143, 146, 149, 142, 132, 101, 99, 36, 112, 49, 63, 105, 123, 129, 148, 157, 28.16252 + 161, 170, 172, 172, 179, 197, 195, 193, 191, 187, 184, 181, 179, 184, 185, 187, 28.16253 + 189, 188, 184, 180, 178, 175, 175, 174, 170, 165, 162, 163, 164, 164, 158, 153, 28.16254 + 149, 141, 129, 117, 110, 123, 128, 128, 140, 142, 143, 70, 29, 37, 44, 40, 28.16255 + 93, 165, 183, 181, 180, 169, 155, 149, 156, 160, 153, 148, 150, 145, 141, 155, 28.16256 + 159, 145, 135, 127, 110, 62, 52, 50, 41, 95, 123, 149, 154, 154, 156, 153, 28.16257 + 146, 142, 143, 141, 138, 123, 127, 122, 117, 89, 66, 72, 61, 62, 67, 64, 28.16258 + 10, 13, 13, 10, 9, 10, 9, 5, 10, 10, 11, 11, 12, 11, 10, 9, 28.16259 + 10, 11, 12, 13, 12, 14, 17, 20, 19, 21, 19, 17, 19, 23, 22, 17, 28.16260 + 15, 19, 19, 24, 26, 16, 15, 31, 74, 115, 138, 141, 149, 153, 147, 140, 28.16261 + 150, 155, 159, 159, 152, 145, 139, 137, 137, 141, 143, 144, 146, 149, 149, 147, 28.16262 + 153, 152, 151, 151, 151, 152, 151, 152, 150, 150, 150, 150, 151, 151, 152, 153, 28.16263 + 154, 156, 157, 156, 153, 151, 150, 150, 151, 155, 159, 161, 161, 163, 162, 163, 28.16264 + 156, 164, 163, 151, 147, 156, 156, 147, 154, 142, 165, 252, 76, 57, 119, 116, 28.16265 + 144, 158, 163, 167, 176, 177, 177, 186, 187, 188, 190, 193, 193, 192, 189, 186, 28.16266 + 188, 188, 191, 196, 197, 194, 192, 193, 180, 180, 177, 172, 168, 168, 172, 178, 28.16267 + 171, 173, 166, 154, 151, 154, 152, 144, 142, 133, 133, 139, 147, 151, 96, 55, 28.16268 + 43, 53, 62, 124, 183, 182, 178, 182, 174, 159, 149, 152, 157, 153, 148, 146, 28.16269 + 143, 134, 152, 161, 145, 137, 136, 119, 67, 50, 63, 48, 99, 115, 137, 149, 28.16270 + 151, 154, 153, 146, 142, 142, 140, 138, 125, 120, 110, 113, 95, 72, 72, 54, 28.16271 + 42, 45, 44, 8, 11, 12, 9, 10, 11, 10, 6, 11, 11, 11, 11, 10, 28.16272 + 9, 8, 7, 8, 11, 13, 14, 14, 16, 16, 18, 18, 20, 20, 18, 20, 28.16273 + 24, 23, 17, 2, 10, 23, 29, 26, 34, 64, 96, 126, 137, 141, 147, 161, 28.16274 + 163, 159, 161, 154, 154, 153, 150, 148, 145, 144, 143, 137, 142, 146, 145, 148, 28.16275 + 153, 153, 149, 150, 150, 150, 150, 149, 149, 149, 149, 148, 147, 148, 149, 150, 28.16276 + 150, 151, 152, 157, 159, 159, 159, 158, 157, 155, 153, 153, 159, 166, 169, 168, 28.16277 + 168, 166, 166, 157, 169, 174, 165, 157, 156, 151, 142, 146, 173, 137, 60, 155, 28.16278 + 148, 160, 155, 155, 162, 158, 158, 167, 172, 178, 192, 184, 190, 196, 198, 197, 28.16279 + 195, 197, 198, 191, 189, 191, 198, 199, 195, 195, 198, 206, 195, 184, 180, 183, 28.16280 + 183, 176, 169, 163, 177, 182, 176, 167, 165, 164, 162, 162, 144, 146, 124, 115, 28.16281 + 99, 62, 30, 59, 84, 107, 155, 182, 172, 176, 181, 175, 164, 153, 153, 158, 28.16282 + 158, 149, 140, 148, 130, 148, 162, 149, 144, 143, 119, 77, 29, 48, 60, 126, 28.16283 + 114, 113, 128, 141, 148, 152, 148, 144, 143, 140, 137, 143, 134, 120, 119, 89, 28.16284 + 52, 45, 29, 29, 30, 36, 8, 12, 12, 9, 10, 12, 10, 7, 12, 12, 28.16285 + 12, 11, 10, 9, 7, 7, 8, 11, 14, 16, 16, 15, 16, 17, 17, 19, 28.16286 + 19, 17, 18, 21, 19, 11, 24, 15, 15, 21, 36, 71, 108, 124, 126, 144, 28.16287 + 146, 144, 153, 161, 161, 166, 148, 144, 138, 135, 134, 136, 138, 139, 145, 149, 28.16288 + 148, 145, 147, 154, 158, 156, 152, 153, 153, 154, 153, 153, 151, 151, 152, 153, 28.16289 + 154, 156, 156, 157, 157, 158, 159, 158, 158, 160, 162, 162, 159, 157, 153, 161, 28.16290 + 172, 179, 180, 178, 177, 176, 176, 170, 161, 158, 160, 164, 163, 158, 164, 126, 28.16291 + 153, 163, 143, 166, 148, 156, 151, 160, 162, 168, 181, 186, 192, 205, 199, 207, 28.16292 + 212, 207, 196, 190, 192, 197, 193, 190, 191, 196, 196, 190, 190, 194, 187, 185, 28.16293 + 183, 186, 188, 190, 190, 188, 190, 184, 177, 173, 171, 171, 172, 173, 175, 155, 28.16294 + 174, 158, 161, 133, 93, 52, 77, 117, 148, 176, 175, 163, 175, 178, 176, 167, 28.16295 + 157, 156, 161, 162, 150, 136, 155, 131, 145, 163, 153, 151, 148, 119, 74, 46, 28.16296 + 76, 77, 146, 145, 135, 130, 133, 143, 151, 150, 148, 146, 141, 136, 115, 117, 28.16297 + 118, 121, 84, 44, 48, 50, 62, 58, 62, 11, 11, 11, 10, 10, 9, 10, 28.16298 + 9, 9, 12, 12, 12, 9, 8, 8, 8, 9, 12, 14, 16, 16, 16, 17, 28.16299 + 19, 19, 24, 25, 20, 18, 18, 17, 11, 8, 18, 11, 36, 72, 123, 129, 28.16300 + 136, 147, 158, 148, 159, 140, 127, 102, 113, 113, 119, 123, 124, 127, 136, 143, 28.16301 + 146, 140, 143, 149, 152, 154, 155, 157, 158, 148, 148, 148, 148, 149, 151, 153, 28.16302 + 154, 149, 155, 158, 157, 157, 159, 160, 159, 164, 165, 165, 164, 161, 160, 160, 28.16303 + 161, 164, 174, 174, 173, 179, 176, 172, 177, 178, 172, 166, 163, 160, 159, 156, 28.16304 + 155, 154, 154, 151, 154, 157, 158, 155, 152, 161, 163, 165, 162, 158, 162, 174, 28.16305 + 183, 202, 210, 208, 193, 184, 187, 189, 186, 181, 183, 189, 193, 189, 184, 187, 28.16306 + 194, 189, 187, 184, 182, 179, 178, 178, 179, 179, 189, 191, 182, 180, 188, 191, 28.16307 + 186, 176, 171, 174, 174, 163, 151, 129, 101, 122, 145, 167, 177, 178, 179, 176, 28.16308 + 171, 184, 168, 155, 159, 167, 163, 150, 139, 149, 157, 147, 133, 152, 178, 162, 28.16309 + 121, 99, 40, 75, 119, 145, 142, 158, 169, 142, 129, 142, 155, 145, 141, 142, 28.16310 + 128, 126, 117, 117, 121, 69, 71, 69, 60, 70, 81, 82, 10, 10, 10, 10, 28.16311 + 11, 11, 12, 12, 9, 11, 12, 11, 9, 8, 10, 10, 11, 14, 16, 17, 28.16312 + 16, 16, 17, 18, 22, 27, 25, 19, 15, 17, 14, 10, 25, 21, 31, 83, 28.16313 + 104, 126, 128, 145, 135, 157, 165, 121, 89, 58, 34, 50, 52, 74, 102, 123, 28.16314 + 135, 141, 140, 137, 147, 150, 154, 155, 154, 153, 153, 154, 151, 150, 150, 151, 28.16315 + 152, 154, 155, 156, 155, 160, 162, 160, 158, 160, 160, 159, 163, 166, 168, 168, 28.16316 + 165, 164, 165, 165, 161, 170, 170, 169, 175, 173, 169, 174, 168, 166, 164, 162, 28.16317 + 161, 160, 157, 154, 154, 153, 152, 155, 160, 164, 163, 162, 161, 162, 163, 165, 28.16318 + 165, 165, 165, 167, 177, 192, 199, 194, 189, 190, 185, 179, 185, 183, 185, 191, 28.16319 + 193, 189, 186, 187, 187, 186, 184, 183, 182, 182, 181, 181, 179, 188, 190, 182, 28.16320 + 179, 185, 185, 180, 195, 187, 185, 182, 174, 174, 167, 150, 152, 167, 178, 179, 28.16321 + 176, 176, 176, 173, 182, 173, 167, 171, 173, 166, 152, 144, 138, 152, 160, 156, 28.16322 + 155, 153, 141, 125, 103, 57, 95, 133, 154, 148, 157, 161, 181, 148, 135, 144, 28.16323 + 148, 153, 149, 126, 122, 112, 114, 121, 71, 66, 66, 67, 91, 99, 100, 9, 28.16324 + 9, 10, 11, 11, 12, 14, 14, 10, 11, 13, 13, 11, 11, 13, 14, 14, 28.16325 + 17, 19, 19, 17, 17, 17, 19, 20, 22, 20, 16, 15, 17, 15, 13, 28, 28.16326 + 20, 48, 110, 118, 132, 138, 151, 155, 164, 145, 53, 40, 37, 59, 101, 95, 28.16327 + 114, 133, 142, 143, 143, 142, 140, 146, 149, 151, 152, 150, 148, 148, 148, 154, 28.16328 + 153, 154, 154, 156, 157, 159, 160, 158, 163, 165, 162, 161, 163, 164, 163, 161, 28.16329 + 164, 168, 169, 168, 167, 167, 168, 160, 170, 168, 167, 172, 169, 165, 171, 163, 28.16330 + 163, 163, 164, 164, 162, 158, 154, 154, 153, 153, 156, 162, 168, 171, 173, 172, 28.16331 + 168, 165, 166, 172, 173, 168, 163, 166, 180, 190, 190, 188, 187, 183, 176, 184, 28.16332 + 178, 177, 186, 195, 195, 187, 182, 184, 184, 184, 185, 185, 185, 186, 186, 182, 28.16333 + 190, 192, 186, 183, 186, 184, 178, 189, 182, 180, 175, 169, 176, 181, 172, 172, 28.16334 + 180, 185, 183, 178, 176, 174, 172, 176, 173, 173, 178, 177, 166, 152, 146, 140, 28.16335 + 147, 162, 172, 162, 142, 132, 133, 96, 77, 124, 144, 149, 141, 156, 167, 182, 28.16336 + 148, 127, 130, 140, 149, 142, 120, 122, 114, 115, 115, 69, 58, 61, 67, 76, 28.16337 + 83, 82, 11, 11, 11, 11, 11, 12, 13, 13, 12, 13, 15, 15, 14, 14, 28.16338 + 18, 19, 14, 17, 19, 20, 19, 18, 20, 21, 15, 15, 13, 13, 14, 18, 28.16339 + 20, 20, 28, 32, 64, 115, 113, 144, 155, 147, 155, 154, 98, 37, 43, 41, 28.16340 + 63, 86, 121, 133, 141, 141, 138, 144, 150, 156, 142, 146, 148, 151, 150, 151, 28.16341 + 151, 153, 155, 155, 156, 156, 158, 159, 161, 162, 159, 164, 166, 163, 162, 165, 28.16342 + 167, 165, 160, 164, 167, 169, 167, 165, 164, 164, 164, 172, 169, 168, 172, 169, 28.16343 + 164, 170, 164, 164, 163, 165, 165, 164, 159, 156, 153, 152, 152, 154, 159, 166, 28.16344 + 173, 176, 179, 171, 162, 161, 166, 171, 172, 170, 173, 180, 183, 181, 178, 181, 28.16345 + 182, 180, 180, 174, 171, 180, 190, 192, 188, 185, 182, 183, 184, 184, 185, 185, 28.16346 + 185, 185, 185, 191, 194, 191, 190, 191, 187, 181, 190, 187, 190, 187, 179, 183, 28.16347 + 188, 181, 172, 179, 186, 189, 187, 184, 180, 176, 175, 171, 172, 179, 180, 170, 28.16348 + 157, 150, 155, 149, 152, 164, 167, 155, 144, 144, 106, 93, 130, 136, 147, 147, 28.16349 + 156, 159, 140, 130, 125, 128, 133, 134, 128, 118, 119, 120, 116, 93, 52, 45, 28.16350 + 52, 54, 64, 75, 78, 14, 13, 12, 11, 10, 9, 10, 9, 11, 12, 13, 28.16351 + 13, 12, 14, 16, 20, 14, 15, 18, 20, 19, 20, 21, 22, 15, 12, 10, 28.16352 + 12, 17, 19, 21, 23, 36, 41, 73, 122, 119, 149, 157, 143, 144, 133, 42, 28.16353 + 41, 48, 38, 56, 63, 110, 126, 140, 144, 143, 145, 146, 146, 148, 151, 154, 28.16354 + 155, 156, 157, 160, 162, 156, 156, 156, 157, 158, 160, 161, 162, 163, 167, 168, 28.16355 + 163, 161, 164, 165, 163, 162, 166, 169, 170, 166, 164, 162, 162, 166, 173, 169, 28.16356 + 165, 168, 165, 160, 167, 168, 167, 164, 162, 163, 161, 158, 156, 152, 151, 150, 28.16357 + 151, 153, 159, 165, 169, 173, 170, 164, 159, 159, 163, 166, 169, 175, 177, 176, 28.16358 + 173, 171, 175, 178, 180, 180, 174, 172, 176, 180, 182, 183, 187, 182, 182, 182, 28.16359 + 182, 182, 182, 183, 183, 183, 188, 191, 193, 194, 194, 190, 185, 190, 189, 194, 28.16360 + 191, 181, 184, 188, 181, 173, 175, 180, 186, 189, 189, 186, 185, 179, 170, 166, 28.16361 + 173, 179, 175, 164, 157, 159, 156, 154, 157, 164, 163, 154, 143, 120, 103, 125, 28.16362 + 128, 155, 159, 147, 130, 117, 125, 128, 132, 135, 132, 125, 124, 115, 122, 110, 28.16363 + 66, 38, 41, 53, 45, 63, 81, 90, 14, 13, 12, 11, 9, 8, 7, 7, 28.16364 + 9, 10, 10, 9, 9, 10, 13, 16, 14, 17, 18, 20, 19, 19, 20, 21, 28.16365 + 19, 13, 10, 14, 18, 18, 17, 20, 29, 34, 66, 126, 131, 146, 148, 154, 28.16366 + 152, 110, 15, 38, 38, 47, 85, 110, 129, 139, 147, 149, 148, 147, 144, 142, 28.16367 + 153, 155, 156, 157, 156, 156, 158, 160, 157, 157, 157, 158, 159, 161, 162, 163, 28.16368 + 168, 171, 170, 164, 160, 161, 162, 160, 166, 168, 170, 171, 168, 164, 163, 163, 28.16369 + 162, 169, 166, 162, 165, 162, 158, 165, 169, 166, 164, 163, 161, 159, 156, 155, 28.16370 + 153, 152, 151, 149, 147, 149, 153, 159, 165, 168, 170, 169, 165, 162, 164, 166, 28.16371 + 167, 168, 170, 172, 172, 173, 174, 174, 182, 178, 175, 176, 175, 173, 176, 182, 28.16372 + 181, 180, 179, 178, 179, 180, 182, 183, 180, 182, 186, 190, 193, 193, 190, 186, 28.16373 + 185, 181, 183, 179, 171, 177, 184, 178, 175, 170, 166, 171, 175, 178, 180, 183, 28.16374 + 176, 165, 157, 162, 170, 169, 162, 157, 149, 162, 167, 162, 158, 157, 149, 137, 28.16375 + 108, 115, 148, 141, 150, 139, 128, 126, 129, 136, 128, 126, 137, 137, 127, 125, 28.16376 + 120, 122, 107, 58, 49, 55, 67, 58, 63, 82, 93, 11, 12, 11, 10, 9, 28.16377 + 8, 7, 7, 9, 10, 11, 9, 8, 10, 13, 16, 17, 20, 21, 21, 19, 28.16378 + 17, 16, 17, 19, 12, 10, 17, 22, 21, 17, 20, 26, 48, 71, 114, 122, 28.16379 + 141, 145, 160, 146, 77, 44, 58, 65, 79, 96, 115, 130, 135, 136, 138, 143, 28.16380 + 153, 157, 156, 154, 155, 156, 155, 153, 154, 155, 156, 158, 158, 159, 159, 160, 28.16381 + 162, 164, 165, 167, 171, 170, 164, 162, 164, 165, 164, 165, 167, 168, 168, 165, 28.16382 + 165, 165, 165, 158, 165, 162, 161, 166, 164, 162, 170, 169, 169, 168, 168, 167, 28.16383 + 165, 159, 157, 154, 154, 153, 148, 145, 145, 147, 151, 156, 160, 164, 165, 165, 28.16384 + 166, 169, 171, 166, 165, 166, 168, 170, 171, 171, 173, 178, 177, 176, 178, 178, 28.16385 + 174, 174, 178, 180, 178, 176, 175, 177, 180, 185, 187, 182, 181, 183, 189, 193, 28.16386 + 193, 190, 187, 190, 186, 188, 186, 180, 186, 191, 184, 175, 166, 161, 165, 169, 28.16387 + 170, 171, 173, 175, 166, 159, 161, 164, 162, 158, 158, 153, 163, 168, 164, 156, 28.16388 + 151, 143, 135, 103, 123, 161, 144, 141, 122, 124, 143, 143, 151, 137, 126, 135, 28.16389 + 133, 124, 126, 127, 115, 97, 61, 70, 65, 75, 72, 77, 93, 101, 9, 9, 28.16390 + 9, 9, 9, 8, 8, 8, 13, 14, 14, 12, 11, 12, 16, 19, 20, 22, 28.16391 + 22, 21, 17, 14, 13, 13, 15, 9, 9, 19, 24, 24, 21, 25, 44, 89, 28.16392 + 99, 103, 105, 140, 147, 154, 143, 49, 69, 69, 103, 135, 134, 148, 145, 149, 28.16393 + 150, 153, 156, 160, 155, 150, 156, 159, 158, 158, 157, 158, 159, 161, 160, 160, 28.16394 + 160, 161, 162, 164, 165, 166, 162, 166, 167, 164, 164, 169, 172, 172, 160, 162, 28.16395 + 164, 163, 162, 162, 163, 166, 156, 164, 162, 161, 169, 169, 167, 176, 170, 172, 28.16396 + 174, 176, 177, 173, 166, 159, 155, 156, 154, 149, 144, 143, 145, 148, 144, 144, 28.16397 + 144, 146, 153, 162, 170, 176, 175, 170, 165, 164, 165, 168, 171, 175, 173, 172, 28.16398 + 174, 181, 184, 182, 179, 179, 178, 177, 174, 173, 176, 182, 188, 192, 186, 184, 28.16399 + 185, 190, 194, 194, 191, 189, 184, 182, 188, 190, 184, 187, 185, 173, 176, 169, 28.16400 + 167, 176, 180, 176, 171, 169, 180, 175, 171, 171, 168, 163, 162, 165, 167, 160, 28.16401 + 156, 159, 159, 154, 144, 138, 125, 122, 137, 125, 143, 138, 135, 146, 143, 163, 28.16402 + 155, 136, 136, 129, 122, 133, 127, 100, 81, 60, 78, 60, 65, 71, 83, 94, 28.16403 + 97, 7, 11, 12, 10, 10, 12, 11, 7, 12, 8, 6, 8, 13, 18, 17, 28.16404 + 15, 22, 17, 13, 14, 18, 18, 12, 7, 19, 17, 29, 23, 18, 23, 17, 28.16405 + 32, 69, 103, 102, 104, 114, 119, 139, 147, 136, 67, 81, 112, 119, 129, 130, 28.16406 + 142, 144, 149, 154, 160, 161, 162, 159, 157, 158, 158, 158, 160, 161, 162, 163, 28.16407 + 163, 166, 167, 168, 167, 165, 164, 165, 166, 170, 167, 165, 164, 165, 165, 164, 28.16408 + 162, 170, 168, 164, 160, 157, 157, 156, 157, 159, 163, 165, 164, 162, 164, 169, 28.16409 + 174, 172, 177, 176, 176, 152, 171, 159, 156, 153, 156, 156, 153, 149, 152, 157, 28.16410 + 161, 157, 160, 151, 147, 151, 151, 155, 169, 168, 172, 173, 170, 163, 161, 166, 28.16411 + 174, 174, 182, 185, 180, 175, 178, 181, 181, 174, 176, 178, 177, 176, 178, 182, 28.16412 + 186, 184, 185, 188, 191, 194, 194, 191, 188, 192, 189, 186, 183, 179, 177, 178, 28.16413 + 183, 172, 167, 170, 184, 189, 183, 180, 184, 168, 172, 175, 176, 173, 170, 169, 28.16414 + 170, 166, 156, 160, 167, 157, 150, 146, 138, 130, 118, 139, 139, 137, 152, 145, 28.16415 + 154, 162, 164, 155, 138, 130, 131, 131, 126, 116, 94, 78, 61, 64, 69, 60, 28.16416 + 77, 78, 94, 102, 7, 11, 12, 10, 10, 12, 11, 7, 12, 12, 12, 11, 28.16417 + 13, 15, 19, 21, 23, 21, 17, 15, 14, 13, 12, 12, 24, 19, 28, 21, 28.16418 + 20, 26, 20, 33, 88, 116, 110, 110, 117, 121, 135, 137, 133, 90, 104, 118, 28.16419 + 119, 136, 141, 145, 150, 152, 156, 160, 161, 160, 157, 154, 158, 158, 159, 161, 28.16420 + 161, 162, 163, 163, 162, 162, 164, 164, 163, 163, 165, 167, 167, 165, 163, 163, 28.16421 + 164, 164, 163, 162, 169, 168, 164, 161, 158, 158, 157, 159, 161, 161, 161, 163, 28.16422 + 165, 169, 170, 170, 165, 171, 166, 170, 156, 169, 153, 152, 158, 148, 147, 153, 28.16423 + 155, 161, 160, 147, 148, 156, 157, 159, 163, 155, 145, 148, 159, 163, 167, 166, 28.16424 + 163, 163, 165, 168, 174, 182, 186, 181, 178, 181, 183, 182, 179, 179, 179, 178, 28.16425 + 177, 177, 180, 182, 180, 184, 190, 196, 199, 200, 199, 199, 185, 186, 187, 186, 28.16426 + 183, 178, 175, 175, 174, 168, 171, 185, 189, 180, 170, 167, 178, 180, 180, 176, 28.16427 + 170, 164, 161, 161, 163, 157, 165, 169, 157, 148, 147, 142, 123, 118, 144, 147, 28.16428 + 147, 158, 152, 160, 156, 159, 152, 139, 132, 134, 132, 127, 116, 83, 70, 61, 28.16429 + 62, 67, 61, 72, 81, 96, 101, 7, 11, 12, 10, 9, 12, 11, 8, 13, 28.16430 + 15, 17, 14, 11, 12, 18, 25, 19, 20, 18, 16, 11, 13, 17, 20, 20, 28.16431 + 14, 21, 16, 19, 28, 23, 35, 102, 125, 114, 114, 125, 126, 135, 131, 123, 28.16432 + 105, 120, 120, 117, 141, 150, 144, 155, 156, 157, 159, 158, 157, 154, 153, 158, 28.16433 + 159, 159, 160, 161, 162, 162, 163, 160, 161, 163, 163, 164, 165, 168, 171, 166, 28.16434 + 164, 163, 163, 165, 165, 164, 163, 166, 166, 163, 161, 159, 158, 159, 160, 162, 28.16435 + 160, 159, 163, 169, 172, 169, 166, 163, 172, 161, 166, 162, 163, 147, 148, 150, 28.16436 + 142, 151, 154, 140, 148, 166, 164, 158, 165, 162, 160, 166, 162, 154, 156, 152, 28.16437 + 155, 160, 166, 168, 167, 165, 164, 173, 181, 185, 184, 181, 182, 184, 183, 185, 28.16438 + 182, 180, 179, 179, 179, 179, 178, 176, 182, 189, 192, 190, 187, 186, 186, 186, 28.16439 + 186, 185, 183, 179, 176, 173, 171, 173, 168, 172, 187, 194, 189, 180, 176, 174, 28.16440 + 175, 174, 171, 167, 164, 162, 162, 162, 160, 170, 171, 156, 146, 144, 139, 114, 28.16441 + 123, 149, 154, 154, 160, 155, 162, 153, 157, 152, 138, 133, 135, 131, 124, 116, 28.16442 + 70, 65, 66, 61, 67, 66, 70, 93, 104, 103, 7, 11, 11, 9, 9, 12, 28.16443 + 12, 9, 13, 15, 17, 17, 15, 15, 17, 20, 12, 14, 15, 15, 16, 19, 28.16444 + 22, 25, 15, 10, 22, 16, 18, 29, 28, 45, 105, 126, 114, 117, 132, 136, 28.16445 + 142, 135, 121, 115, 123, 124, 124, 144, 154, 146, 155, 155, 155, 156, 155, 155, 28.16446 + 154, 154, 159, 159, 159, 160, 161, 163, 162, 163, 164, 166, 168, 168, 168, 170, 28.16447 + 172, 175, 165, 164, 164, 165, 167, 167, 166, 164, 162, 162, 161, 161, 159, 160, 28.16448 + 161, 161, 164, 163, 163, 167, 169, 170, 167, 165, 164, 177, 163, 165, 166, 155, 28.16449 + 147, 146, 153, 145, 159, 162, 140, 139, 152, 149, 163, 169, 162, 160, 168, 170, 28.16450 + 166, 168, 155, 155, 158, 163, 169, 170, 167, 163, 171, 176, 181, 184, 183, 182, 28.16451 + 182, 183, 187, 184, 181, 179, 180, 181, 179, 178, 187, 194, 201, 202, 197, 191, 28.16452 + 190, 191, 195, 191, 183, 174, 170, 171, 171, 170, 158, 159, 165, 178, 185, 183, 28.16453 + 180, 180, 168, 168, 167, 165, 164, 163, 162, 162, 165, 161, 167, 168, 155, 146, 28.16454 + 140, 130, 111, 132, 151, 155, 156, 155, 152, 160, 156, 158, 151, 138, 131, 133, 28.16455 + 128, 118, 111, 62, 67, 74, 61, 68, 74, 78, 78, 88, 83, 7, 11, 11, 28.16456 + 8, 9, 13, 13, 10, 12, 12, 14, 17, 18, 18, 14, 10, 14, 12, 12, 28.16457 + 17, 23, 25, 22, 18, 16, 15, 29, 21, 19, 27, 29, 49, 103, 126, 119, 28.16458 + 125, 141, 146, 151, 144, 135, 125, 122, 133, 140, 144, 152, 150, 152, 152, 152, 28.16459 + 153, 153, 155, 155, 155, 159, 159, 158, 160, 161, 162, 163, 162, 169, 170, 172, 28.16460 + 172, 171, 170, 171, 172, 162, 161, 161, 162, 164, 164, 162, 161, 160, 160, 160, 28.16461 + 160, 160, 162, 162, 164, 165, 168, 171, 170, 167, 165, 164, 166, 162, 176, 165, 28.16462 + 163, 163, 150, 154, 139, 102, 93, 112, 142, 157, 163, 159, 142, 150, 164, 167, 28.16463 + 168, 175, 175, 164, 161, 162, 159, 157, 159, 164, 166, 166, 163, 167, 170, 175, 28.16464 + 180, 182, 181, 180, 182, 186, 184, 182, 181, 181, 182, 183, 182, 182, 189, 198, 28.16465 + 200, 197, 194, 194, 196, 197, 194, 184, 173, 169, 171, 169, 164, 161, 169, 183, 28.16466 + 194, 194, 188, 183, 183, 174, 172, 169, 166, 163, 161, 158, 157, 163, 156, 159, 28.16467 + 160, 153, 148, 141, 125, 111, 141, 151, 153, 157, 152, 153, 162, 156, 156, 148, 28.16468 + 135, 129, 130, 124, 113, 96, 58, 70, 77, 60, 66, 77, 86, 94, 104, 103, 28.16469 + 8, 11, 10, 7, 8, 13, 13, 12, 13, 11, 12, 15, 19, 18, 12, 6, 28.16470 + 20, 16, 14, 17, 23, 23, 16, 9, 16, 13, 26, 18, 14, 21, 19, 38, 28.16471 + 103, 132, 128, 136, 149, 150, 155, 149, 146, 134, 119, 136, 148, 139, 146, 147, 28.16472 + 150, 150, 152, 153, 154, 156, 156, 156, 158, 159, 159, 160, 161, 162, 163, 163, 28.16473 + 167, 170, 173, 173, 171, 168, 167, 166, 158, 158, 158, 159, 161, 160, 158, 156, 28.16474 + 158, 159, 160, 163, 164, 166, 167, 169, 168, 173, 174, 173, 167, 165, 165, 169, 28.16475 + 157, 168, 161, 160, 160, 151, 164, 119, 35, 38, 52, 82, 113, 132, 144, 158, 28.16476 + 154, 170, 169, 162, 167, 169, 166, 167, 166, 161, 157, 156, 159, 161, 162, 161, 28.16477 + 166, 166, 169, 176, 179, 179, 179, 181, 183, 184, 184, 183, 181, 181, 185, 187, 28.16478 + 180, 184, 189, 189, 186, 183, 182, 183, 190, 192, 189, 181, 177, 177, 167, 156, 28.16479 + 159, 173, 191, 205, 208, 202, 194, 190, 172, 171, 168, 168, 168, 167, 164, 161, 28.16480 + 157, 150, 150, 153, 150, 151, 144, 126, 110, 148, 150, 152, 161, 154, 157, 163, 28.16481 + 149, 152, 145, 134, 128, 127, 115, 101, 80, 58, 71, 72, 60, 68, 78, 90, 28.16482 + 93, 104, 101, 8, 11, 10, 7, 8, 13, 14, 13, 14, 14, 14, 14, 15, 28.16483 + 14, 12, 10, 21, 20, 18, 18, 18, 16, 12, 7, 14, 7, 16, 12, 16, 28.16484 + 24, 17, 29, 97, 132, 135, 142, 150, 147, 152, 149, 144, 141, 121, 135, 149, 28.16485 + 141, 152, 152, 151, 151, 152, 154, 156, 157, 156, 156, 159, 159, 159, 160, 160, 28.16486 + 162, 163, 163, 163, 168, 172, 174, 172, 168, 165, 163, 160, 159, 159, 161, 161, 28.16487 + 160, 157, 155, 159, 161, 164, 167, 168, 171, 172, 173, 171, 173, 171, 171, 170, 28.16488 + 169, 170, 172, 162, 162, 159, 161, 161, 155, 168, 84, 31, 47, 43, 42, 55, 28.16489 + 57, 75, 120, 154, 170, 167, 156, 158, 165, 170, 177, 167, 164, 161, 159, 160, 28.16490 + 161, 162, 163, 165, 164, 166, 174, 178, 178, 179, 183, 183, 187, 188, 186, 181, 28.16491 + 180, 184, 190, 198, 198, 197, 195, 192, 189, 186, 185, 187, 192, 190, 183, 182, 28.16492 + 183, 173, 158, 154, 159, 167, 179, 188, 192, 189, 183, 167, 166, 165, 167, 170, 28.16493 + 169, 165, 162, 156, 150, 150, 149, 144, 147, 143, 126, 110, 154, 147, 150, 163, 28.16494 + 152, 152, 156, 147, 150, 146, 136, 127, 117, 98, 77, 69, 63, 71, 64, 65, 28.16495 + 78, 80, 91, 107, 119, 117, 9, 11, 10, 7, 8, 13, 15, 14, 16, 18, 28.16496 + 17, 15, 10, 9, 13, 18, 19, 20, 20, 17, 14, 12, 12, 14, 18, 7, 28.16497 + 14, 14, 27, 39, 29, 33, 88, 128, 135, 143, 146, 141, 148, 147, 141, 151, 28.16498 + 129, 141, 154, 151, 167, 164, 154, 155, 156, 158, 159, 159, 158, 156, 159, 159, 28.16499 + 159, 160, 161, 163, 164, 163, 162, 167, 173, 176, 175, 170, 166, 164, 163, 163, 28.16500 + 163, 164, 165, 163, 159, 157, 161, 163, 167, 170, 173, 175, 176, 178, 175, 171, 28.16501 + 168, 168, 173, 176, 175, 174, 173, 164, 163, 165, 165, 161, 169, 56, 30, 49, 28.16502 + 38, 38, 60, 48, 41, 78, 128, 154, 164, 161, 162, 165, 163, 165, 168, 167, 28.16503 + 166, 165, 164, 164, 164, 165, 166, 163, 165, 173, 178, 178, 180, 186, 183, 188, 28.16504 + 192, 188, 179, 176, 182, 190, 190, 189, 187, 188, 189, 189, 188, 185, 189, 191, 28.16505 + 186, 177, 178, 184, 179, 167, 185, 174, 163, 164, 177, 189, 191, 186, 172, 170, 28.16506 + 167, 167, 166, 161, 154, 148, 160, 156, 157, 151, 140, 141, 138, 124, 110, 156, 28.16507 + 145, 147, 162, 147, 143, 142, 145, 150, 147, 136, 123, 106, 79, 53, 66, 67, 28.16508 + 71, 60, 72, 89, 84, 95, 100, 112, 116, 12, 13, 15, 17, 17, 17, 17, 28.16509 + 16, 20, 17, 13, 12, 10, 12, 15, 18, 19, 18, 17, 17, 16, 16, 16, 28.16510 + 16, 17, 18, 21, 21, 23, 24, 28, 36, 81, 132, 134, 129, 137, 138, 147, 28.16511 + 152, 148, 146, 136, 135, 151, 160, 163, 172, 159, 160, 161, 161, 158, 156, 157, 28.16512 + 158, 160, 154, 152, 158, 161, 162, 162, 163, 171, 170, 169, 168, 168, 168, 165, 28.16513 + 164, 157, 157, 158, 160, 164, 163, 161, 160, 160, 164, 167, 170, 172, 173, 173, 28.16514 + 172, 182, 177, 171, 167, 166, 168, 169, 171, 177, 162, 168, 163, 162, 160, 147, 28.16515 + 31, 35, 58, 44, 43, 42, 54, 42, 53, 101, 155, 165, 153, 152, 171, 149, 28.16516 + 166, 165, 171, 168, 162, 164, 171, 165, 153, 171, 169, 165, 164, 168, 178, 185, 28.16517 + 188, 193, 191, 187, 183, 180, 181, 185, 188, 188, 192, 196, 195, 190, 185, 183, 28.16518 + 182, 189, 186, 183, 184, 185, 181, 173, 166, 165, 176, 174, 151, 179, 176, 181, 28.16519 + 183, 167, 163, 168, 169, 160, 161, 165, 160, 164, 152, 155, 153, 140, 144, 143, 28.16520 + 120, 118, 149, 146, 134, 149, 148, 135, 143, 144, 136, 118, 98, 82, 75, 68, 28.16521 + 60, 69, 67, 66, 67, 74, 85, 96, 103, 111, 106, 101, 12, 13, 13, 14, 28.16522 + 15, 15, 15, 14, 17, 17, 17, 16, 17, 18, 18, 19, 15, 15, 15, 14, 28.16523 + 14, 15, 15, 17, 19, 21, 24, 24, 24, 26, 28, 35, 81, 130, 134, 132, 28.16524 + 137, 138, 151, 157, 156, 156, 145, 143, 155, 160, 159, 166, 162, 165, 168, 167, 28.16525 + 164, 160, 157, 156, 161, 156, 153, 156, 159, 157, 157, 158, 166, 166, 165, 167, 28.16526 + 166, 167, 164, 163, 164, 167, 167, 166, 162, 160, 159, 162, 166, 168, 168, 169, 28.16527 + 170, 171, 172, 173, 175, 174, 173, 173, 173, 171, 167, 165, 168, 161, 165, 164, 28.16528 + 167, 157, 135, 31, 48, 49, 36, 55, 56, 62, 42, 44, 77, 156, 166, 159, 28.16529 + 159, 166, 149, 164, 166, 172, 171, 167, 170, 174, 169, 157, 163, 163, 162, 164, 28.16530 + 168, 176, 181, 185, 183, 183, 181, 178, 176, 179, 187, 193, 197, 198, 198, 195, 28.16531 + 190, 186, 186, 187, 193, 189, 186, 186, 185, 182, 175, 169, 163, 170, 161, 147, 28.16532 + 171, 179, 182, 183, 169, 163, 165, 164, 155, 157, 163, 161, 166, 155, 157, 153, 28.16533 + 141, 142, 139, 118, 114, 145, 147, 140, 152, 145, 126, 129, 92, 88, 79, 69, 28.16534 + 63, 64, 64, 61, 68, 67, 66, 69, 78, 90, 103, 112, 115, 110, 106, 11, 28.16535 + 10, 11, 11, 11, 10, 11, 12, 12, 13, 15, 15, 16, 17, 16, 15, 16, 28.16536 + 17, 16, 16, 15, 15, 16, 16, 15, 18, 21, 22, 23, 26, 30, 36, 74, 28.16537 + 119, 128, 130, 133, 132, 147, 152, 158, 160, 151, 149, 159, 161, 157, 161, 163, 28.16538 + 166, 171, 172, 169, 162, 155, 152, 154, 150, 151, 156, 161, 163, 165, 168, 164, 28.16539 + 165, 165, 167, 166, 165, 164, 163, 156, 162, 165, 164, 159, 159, 165, 172, 172, 28.16540 + 171, 169, 169, 169, 170, 172, 173, 174, 173, 173, 173, 173, 171, 167, 165, 164, 28.16541 + 165, 166, 167, 176, 157, 118, 38, 56, 40, 35, 66, 59, 60, 48, 50, 62, 28.16542 + 165, 163, 158, 158, 154, 150, 163, 164, 169, 170, 168, 170, 176, 171, 160, 159, 28.16543 + 160, 161, 165, 168, 174, 179, 184, 179, 181, 180, 177, 175, 179, 189, 198, 203, 28.16544 + 201, 197, 192, 187, 185, 187, 189, 194, 190, 186, 185, 185, 183, 176, 173, 167, 28.16545 + 169, 150, 147, 159, 180, 177, 181, 171, 163, 163, 159, 150, 153, 162, 161, 164, 28.16546 + 156, 155, 152, 141, 138, 133, 116, 111, 134, 131, 120, 124, 111, 90, 90, 73, 28.16547 + 73, 70, 65, 64, 67, 69, 66, 67, 67, 67, 71, 80, 93, 105, 113, 116, 28.16548 + 113, 110, 11, 11, 9, 8, 8, 10, 11, 12, 11, 13, 14, 14, 15, 15, 28.16549 + 14, 15, 19, 20, 19, 18, 17, 16, 15, 15, 19, 22, 26, 29, 31, 35, 28.16550 + 39, 46, 68, 105, 119, 130, 132, 129, 144, 146, 147, 153, 149, 150, 161, 160, 28.16551 + 155, 160, 161, 165, 169, 171, 167, 161, 156, 153, 150, 147, 149, 156, 160, 163, 28.16552 + 167, 171, 168, 168, 169, 169, 165, 163, 161, 162, 154, 159, 160, 161, 159, 163, 28.16553 + 169, 176, 169, 169, 169, 170, 170, 171, 171, 171, 176, 172, 168, 165, 166, 167, 28.16554 + 168, 170, 164, 170, 165, 166, 177, 154, 99, 43, 52, 42, 48, 74, 49, 53, 28.16555 + 58, 65, 71, 175, 154, 146, 148, 142, 151, 164, 163, 165, 164, 163, 166, 171, 28.16556 + 169, 162, 163, 162, 162, 165, 168, 172, 179, 187, 184, 187, 186, 181, 178, 181, 28.16557 + 192, 201, 198, 196, 192, 187, 184, 183, 184, 186, 189, 186, 183, 182, 182, 181, 28.16558 + 178, 176, 172, 172, 149, 151, 147, 173, 171, 178, 171, 163, 163, 160, 150, 153, 28.16559 + 161, 159, 160, 155, 153, 149, 141, 136, 128, 118, 97, 106, 98, 82, 81, 73, 28.16560 + 63, 65, 64, 67, 66, 60, 58, 59, 60, 59, 64, 66, 70, 76, 84, 93, 28.16561 + 101, 107, 111, 112, 110, 10, 10, 9, 8, 9, 10, 12, 13, 17, 17, 17, 28.16562 + 15, 16, 17, 17, 19, 17, 19, 20, 21, 22, 22, 22, 23, 36, 40, 42, 28.16563 + 44, 46, 49, 53, 57, 59, 89, 109, 132, 134, 131, 147, 144, 140, 148, 148, 28.16564 + 151, 161, 160, 154, 157, 160, 163, 165, 166, 164, 161, 160, 160, 157, 154, 154, 28.16565 + 158, 158, 156, 158, 162, 170, 171, 170, 167, 161, 158, 156, 158, 168, 166, 165, 28.16566 + 164, 164, 166, 166, 166, 163, 166, 169, 172, 174, 173, 171, 169, 172, 169, 165, 28.16567 + 163, 164, 166, 167, 168, 163, 168, 159, 157, 164, 146, 81, 39, 46, 47, 58, 28.16568 + 77, 51, 59, 61, 58, 88, 172, 142, 140, 144, 143, 154, 164, 166, 164, 160, 28.16569 + 158, 162, 167, 167, 164, 168, 163, 161, 163, 163, 167, 177, 189, 187, 189, 188, 28.16570 + 185, 182, 186, 196, 204, 192, 191, 189, 188, 186, 185, 184, 183, 183, 182, 181, 28.16571 + 181, 182, 182, 182, 181, 172, 171, 154, 157, 141, 164, 170, 180, 168, 163, 165, 28.16572 + 165, 155, 156, 162, 159, 156, 155, 150, 145, 143, 136, 127, 126, 75, 77, 70, 28.16573 + 63, 63, 66, 67, 70, 58, 62, 65, 60, 59, 61, 64, 63, 61, 67, 76, 28.16574 + 85, 94, 100, 103, 105, 110, 111, 112, 9, 11, 9, 10, 11, 13, 14, 16, 28.16575 + 16, 16, 16, 16, 16, 17, 18, 22, 23, 27, 30, 35, 39, 41, 43, 45, 28.16576 + 48, 51, 53, 52, 53, 55, 56, 60, 56, 71, 94, 124, 130, 130, 146, 139, 28.16577 + 141, 150, 151, 153, 161, 159, 152, 155, 161, 162, 163, 163, 162, 163, 165, 167, 28.16578 + 161, 159, 161, 166, 166, 165, 169, 174, 173, 173, 170, 165, 156, 153, 154, 157, 28.16579 + 164, 165, 164, 167, 170, 171, 167, 164, 162, 166, 171, 175, 176, 175, 171, 169, 28.16580 + 164, 165, 167, 169, 171, 169, 164, 162, 167, 169, 160, 156, 156, 149, 78, 37, 28.16581 + 45, 50, 54, 76, 65, 72, 54, 42, 105, 159, 140, 147, 150, 156, 159, 165, 28.16582 + 171, 167, 162, 160, 163, 166, 166, 164, 166, 161, 157, 160, 160, 162, 175, 191, 28.16583 + 186, 187, 186, 185, 187, 191, 198, 203, 190, 190, 189, 190, 190, 189, 185, 183, 28.16584 + 181, 182, 183, 184, 184, 184, 184, 183, 169, 162, 157, 158, 143, 158, 174, 181, 28.16585 + 165, 162, 167, 168, 159, 159, 163, 159, 153, 154, 147, 142, 144, 134, 127, 132, 28.16586 + 66, 64, 64, 64, 65, 67, 69, 69, 62, 68, 68, 65, 62, 63, 68, 68, 28.16587 + 67, 75, 85, 96, 104, 109, 111, 112, 112, 114, 116, 9, 11, 12, 14, 15, 28.16588 + 17, 18, 18, 17, 19, 22, 25, 27, 28, 28, 30, 37, 41, 46, 51, 55, 28.16589 + 58, 59, 61, 55, 58, 60, 60, 62, 64, 67, 69, 72, 74, 88, 121, 125, 28.16590 + 126, 143, 133, 141, 151, 151, 154, 161, 157, 150, 155, 158, 159, 161, 161, 161, 28.16591 + 161, 163, 165, 159, 160, 166, 172, 174, 177, 182, 190, 177, 177, 172, 165, 157, 28.16592 + 156, 158, 163, 161, 167, 173, 179, 180, 178, 175, 174, 168, 170, 174, 176, 177, 28.16593 + 175, 173, 171, 164, 165, 168, 171, 173, 171, 166, 163, 170, 167, 163, 159, 152, 28.16594 + 159, 83, 36, 44, 49, 46, 71, 70, 69, 48, 55, 130, 150, 147, 158, 150, 28.16595 + 163, 163, 169, 172, 168, 165, 164, 166, 165, 162, 160, 162, 157, 156, 162, 163, 28.16596 + 164, 177, 194, 191, 189, 186, 187, 191, 195, 198, 198, 193, 191, 190, 190, 191, 28.16597 + 190, 185, 182, 180, 182, 184, 185, 184, 182, 180, 179, 171, 155, 160, 154, 150, 28.16598 + 154, 175, 172, 164, 160, 166, 168, 160, 160, 164, 161, 154, 158, 145, 140, 144, 28.16599 + 133, 125, 137, 67, 61, 64, 65, 61, 63, 64, 60, 59, 65, 65, 60, 58, 28.16600 + 60, 65, 68, 84, 88, 95, 103, 109, 112, 113, 114, 115, 117, 118, 12, 13, 28.16601 + 15, 19, 21, 22, 22, 24, 26, 31, 37, 43, 46, 47, 46, 46, 45, 49, 28.16602 + 53, 56, 58, 58, 60, 60, 62, 66, 69, 72, 75, 79, 84, 86, 100, 91, 28.16603 + 98, 127, 127, 127, 145, 132, 136, 146, 149, 153, 159, 157, 151, 155, 154, 156, 28.16604 + 159, 159, 158, 158, 158, 159, 160, 161, 165, 170, 172, 171, 177, 184, 183, 181, 28.16605 + 177, 170, 161, 160, 166, 173, 177, 187, 196, 198, 192, 185, 180, 181, 175, 176, 28.16606 + 176, 177, 176, 175, 174, 173, 171, 169, 167, 167, 169, 170, 171, 171, 165, 159, 28.16607 + 161, 159, 147, 163, 87, 30, 40, 47, 42, 69, 66, 54, 47, 88, 152, 150, 28.16608 + 156, 163, 145, 164, 164, 177, 170, 166, 166, 168, 168, 164, 158, 154, 160, 155, 28.16609 + 158, 167, 168, 170, 181, 199, 200, 195, 190, 191, 195, 198, 195, 192, 196, 192, 28.16610 + 188, 187, 188, 187, 183, 180, 178, 180, 183, 183, 181, 177, 174, 173, 177, 152, 28.16611 + 161, 151, 154, 151, 173, 161, 163, 159, 164, 165, 158, 160, 165, 163, 157, 161, 28.16612 + 146, 138, 144, 132, 124, 139, 66, 56, 56, 61, 58, 63, 70, 68, 64, 71, 28.16613 + 75, 74, 74, 83, 91, 95, 100, 101, 104, 106, 108, 109, 110, 110, 116, 117, 28.16614 + 118, 28, 28, 31, 33, 32, 31, 30, 30, 39, 51, 49, 43, 44, 40, 37, 28.16615 + 45, 35, 45, 51, 59, 66, 62, 64, 80, 81, 81, 83, 89, 99, 107, 110, 28.16616 + 108, 118, 113, 113, 119, 124, 127, 129, 133, 139, 143, 148, 151, 152, 151, 150, 28.16617 + 150, 153, 154, 156, 158, 160, 161, 162, 162, 165, 163, 164, 169, 172, 170, 172, 28.16618 + 175, 176, 176, 177, 179, 180, 181, 182, 183, 181, 183, 185, 188, 189, 190, 188, 28.16619 + 189, 182, 181, 178, 175, 176, 178, 182, 184, 179, 174, 168, 164, 164, 166, 168, 28.16620 + 168, 171, 163, 148, 157, 158, 160, 131, 31, 53, 36, 46, 67, 59, 54, 81, 28.16621 + 113, 148, 152, 159, 163, 166, 167, 170, 172, 163, 168, 172, 171, 166, 160, 157, 28.16622 + 156, 163, 162, 163, 166, 170, 175, 177, 179, 198, 193, 188, 188, 195, 200, 200, 28.16623 + 199, 192, 190, 187, 185, 185, 185, 183, 181, 180, 174, 177, 181, 177, 179, 182, 28.16624 + 174, 168, 170, 168, 159, 161, 142, 168, 172, 163, 163, 162, 160, 162, 164, 160, 28.16625 + 154, 157, 152, 151, 144, 145, 116, 139, 144, 71, 60, 70, 64, 57, 69, 66, 28.16626 + 67, 80, 85, 91, 97, 102, 104, 105, 106, 111, 111, 110, 108, 105, 106, 108, 28.16627 + 111, 111, 111, 111, 30, 29, 28, 28, 29, 32, 36, 38, 33, 45, 49, 49, 28.16628 + 49, 43, 38, 41, 47, 52, 56, 69, 85, 87, 84, 93, 93, 102, 112, 118, 28.16629 + 120, 119, 118, 117, 110, 107, 109, 115, 120, 122, 128, 135, 134, 138, 144, 148, 28.16630 + 150, 150, 151, 152, 150, 152, 154, 157, 159, 161, 163, 163, 162, 160, 162, 167, 28.16631 + 170, 168, 168, 171, 171, 173, 175, 178, 178, 177, 176, 175, 178, 179, 181, 183, 28.16632 + 183, 185, 185, 185, 190, 188, 185, 182, 181, 182, 184, 185, 187, 186, 183, 178, 28.16633 + 173, 169, 166, 164, 160, 159, 155, 167, 164, 162, 139, 59, 41, 47, 59, 57, 28.16634 + 40, 58, 113, 157, 154, 158, 163, 165, 166, 167, 171, 174, 171, 172, 172, 170, 28.16635 + 165, 159, 155, 154, 160, 163, 163, 165, 167, 174, 184, 193, 193, 190, 189, 193, 28.16636 + 199, 202, 200, 197, 192, 189, 187, 186, 185, 185, 183, 181, 181, 174, 178, 181, 28.16637 + 176, 177, 179, 171, 173, 171, 165, 156, 161, 147, 177, 182, 168, 168, 166, 163, 28.16638 + 164, 166, 161, 155, 155, 156, 146, 142, 139, 123, 138, 139, 73, 62, 74, 77, 28.16639 + 82, 101, 104, 107, 118, 119, 120, 120, 118, 116, 114, 112, 114, 114, 113, 112, 28.16640 + 111, 112, 115, 117, 117, 117, 116, 43, 41, 39, 38, 38, 40, 42, 44, 42, 28.16641 + 48, 55, 58, 59, 58, 58, 59, 71, 77, 80, 88, 99, 96, 91, 100, 94, 28.16642 + 105, 116, 115, 106, 97, 97, 100, 108, 107, 110, 114, 116, 117, 125, 134, 128, 28.16643 + 132, 139, 144, 148, 150, 152, 154, 150, 153, 154, 156, 158, 160, 160, 161, 158, 28.16644 + 156, 158, 163, 165, 162, 162, 165, 167, 169, 173, 175, 174, 172, 168, 166, 175, 28.16645 + 174, 175, 176, 177, 178, 180, 181, 193, 191, 189, 187, 185, 184, 184, 184, 181, 28.16646 + 184, 186, 183, 174, 165, 159, 156, 162, 160, 162, 170, 162, 158, 149, 103, 78, 28.16647 + 74, 68, 57, 63, 106, 150, 163, 159, 163, 170, 175, 176, 176, 177, 177, 179, 28.16648 + 176, 172, 167, 162, 158, 154, 151, 169, 171, 169, 164, 162, 168, 181, 193, 187, 28.16649 + 189, 191, 197, 202, 203, 198, 194, 191, 189, 187, 186, 186, 185, 183, 181, 182, 28.16650 + 175, 178, 180, 175, 176, 176, 168, 175, 172, 167, 160, 168, 153, 179, 180, 166, 28.16651 + 166, 163, 160, 161, 162, 156, 150, 152, 160, 141, 141, 130, 132, 140, 136, 80, 28.16652 + 63, 76, 83, 95, 117, 119, 122, 118, 117, 116, 115, 113, 112, 111, 110, 114, 28.16653 + 115, 115, 114, 113, 115, 118, 119, 116, 116, 117, 37, 39, 41, 45, 48, 49, 28.16654 + 51, 51, 69, 66, 71, 75, 76, 82, 93, 97, 98, 109, 110, 103, 97, 87, 28.16655 + 84, 96, 86, 92, 95, 90, 80, 78, 85, 94, 115, 115, 117, 117, 115, 115, 28.16656 + 122, 132, 127, 131, 137, 142, 146, 148, 151, 153, 155, 155, 156, 156, 156, 155, 28.16657 + 154, 154, 155, 154, 156, 161, 163, 160, 159, 161, 163, 165, 167, 169, 169, 168, 28.16658 + 166, 164, 173, 173, 171, 172, 172, 175, 178, 179, 188, 187, 187, 186, 185, 183, 28.16659 + 182, 181, 190, 197, 203, 202, 195, 187, 184, 183, 179, 169, 166, 166, 155, 153, 28.16660 + 155, 139, 141, 126, 111, 108, 126, 163, 175, 155, 159, 165, 174, 182, 186, 186, 28.16661 + 185, 184, 182, 176, 168, 163, 160, 158, 154, 152, 171, 171, 165, 162, 162, 169, 28.16662 + 180, 190, 188, 190, 193, 198, 201, 201, 195, 191, 191, 189, 187, 187, 186, 185, 28.16663 + 183, 180, 181, 175, 178, 181, 175, 176, 176, 168, 174, 174, 173, 170, 177, 155, 28.16664 + 171, 164, 163, 163, 161, 158, 158, 159, 154, 147, 146, 163, 141, 142, 123, 137, 28.16665 + 143, 139, 80, 60, 72, 83, 99, 118, 116, 114, 117, 116, 115, 114, 114, 115, 28.16666 + 117, 117, 112, 114, 114, 113, 111, 112, 114, 115, 107, 110, 112, 73, 74, 77, 28.16667 + 83, 90, 98, 104, 109, 92, 81, 88, 96, 90, 97, 111, 112, 105, 111, 105, 28.16668 + 97, 98, 93, 90, 97, 89, 91, 90, 90, 90, 95, 105, 115, 118, 119, 121, 28.16669 + 121, 116, 115, 120, 129, 128, 132, 137, 141, 144, 146, 149, 152, 155, 155, 156, 28.16670 + 155, 155, 154, 153, 152, 156, 154, 155, 159, 160, 157, 157, 159, 161, 162, 162, 28.16671 + 162, 163, 164, 166, 167, 171, 171, 169, 170, 171, 173, 176, 178, 180, 181, 182, 28.16672 + 183, 183, 182, 181, 181, 175, 181, 187, 187, 182, 178, 179, 181, 186, 172, 169, 28.16673 + 164, 156, 157, 157, 159, 168, 166, 172, 177, 174, 183, 189, 181, 171, 170, 171, 28.16674 + 173, 178, 183, 186, 188, 178, 172, 165, 160, 160, 159, 156, 154, 160, 157, 152, 28.16675 + 156, 166, 178, 187, 192, 193, 195, 195, 197, 197, 196, 193, 191, 190, 189, 187, 28.16676 + 187, 187, 186, 182, 180, 180, 174, 179, 183, 176, 177, 177, 168, 171, 172, 172, 28.16677 + 170, 176, 152, 166, 157, 165, 165, 163, 160, 161, 162, 157, 150, 140, 162, 142, 28.16678 + 143, 124, 140, 149, 146, 78, 57, 72, 90, 109, 127, 121, 119, 124, 122, 119, 28.16679 + 115, 113, 111, 110, 111, 112, 112, 112, 111, 107, 107, 108, 108, 103, 106, 111, 28.16680 + 91, 89, 82, 81, 83, 91, 100, 107, 98, 83, 95, 107, 96, 96, 104, 98, 28.16681 + 95, 93, 83, 87, 108, 120, 113, 108, 106, 107, 108, 110, 111, 114, 116, 118, 28.16682 + 116, 116, 118, 121, 117, 116, 119, 126, 129, 132, 136, 139, 142, 144, 147, 149, 28.16683 + 150, 152, 154, 155, 156, 156, 156, 156, 157, 153, 152, 156, 157, 155, 155, 159, 28.16684 + 160, 160, 159, 159, 160, 163, 166, 168, 168, 168, 169, 169, 171, 173, 173, 176, 28.16685 + 176, 177, 179, 180, 181, 182, 182, 182, 186, 189, 190, 189, 186, 185, 187, 190, 28.16686 + 177, 169, 174, 168, 166, 168, 158, 165, 164, 168, 184, 197, 188, 184, 192, 196, 28.16687 + 184, 175, 165, 159, 162, 170, 179, 185, 172, 169, 166, 163, 162, 160, 158, 157, 28.16688 + 159, 154, 150, 155, 167, 179, 184, 185, 196, 197, 197, 196, 194, 193, 191, 190, 28.16689 + 190, 189, 188, 188, 188, 186, 182, 179, 179, 174, 179, 182, 175, 175, 174, 165, 28.16690 + 166, 166, 165, 160, 167, 148, 168, 166, 164, 164, 161, 158, 158, 159, 153, 146, 28.16691 + 139, 157, 143, 141, 131, 140, 152, 145, 85, 63, 77, 96, 114, 129, 122, 118, 28.16692 + 117, 115, 111, 108, 106, 104, 104, 104, 111, 112, 112, 109, 106, 105, 105, 106, 28.16693 + 106, 109, 112, 115, 112, 105, 98, 95, 95, 97, 99, 98, 79, 91, 106, 91, 28.16694 + 90, 99, 90, 93, 99, 95, 99, 121, 133, 127, 123, 119, 120, 122, 121, 118, 28.16695 + 114, 110, 111, 119, 119, 118, 122, 120, 116, 115, 118, 126, 129, 133, 136, 138, 28.16696 + 141, 145, 149, 151, 153, 155, 156, 157, 157, 157, 157, 157, 152, 150, 153, 152, 28.16697 + 151, 152, 158, 158, 158, 158, 159, 160, 161, 162, 163, 163, 163, 165, 167, 168, 28.16698 + 169, 169, 169, 174, 174, 175, 176, 177, 179, 180, 181, 178, 177, 175, 174, 172, 28.16699 + 172, 172, 173, 172, 171, 180, 168, 168, 172, 159, 171, 166, 160, 168, 179, 182, 28.16700 + 189, 191, 183, 183, 175, 165, 159, 161, 166, 172, 174, 168, 170, 171, 169, 166, 28.16701 + 162, 161, 159, 164, 159, 154, 156, 162, 172, 178, 181, 194, 196, 197, 197, 195, 28.16702 + 192, 191, 190, 189, 188, 188, 188, 188, 186, 182, 178, 181, 175, 179, 181, 172, 28.16703 + 170, 167, 157, 157, 160, 162, 158, 164, 146, 169, 170, 165, 164, 160, 155, 154, 28.16704 + 153, 146, 139, 147, 150, 139, 136, 143, 139, 150, 136, 92, 66, 78, 93, 107, 28.16705 + 120, 114, 114, 115, 115, 114, 113, 113, 113, 112, 112, 107, 107, 108, 107, 105, 28.16706 + 104, 103, 104, 104, 107, 109, 108, 110, 111, 111, 107, 102, 96, 93, 101, 75, 28.16707 + 86, 100, 85, 87, 102, 96, 100, 120, 126, 121, 124, 124, 122, 128, 118, 120, 28.16708 + 123, 120, 117, 116, 119, 123, 128, 124, 122, 125, 123, 118, 113, 111, 124, 126, 28.16709 + 130, 133, 136, 140, 144, 148, 154, 156, 156, 157, 156, 156, 155, 155, 158, 152, 28.16710 + 148, 150, 150, 149, 152, 157, 157, 159, 160, 160, 160, 159, 158, 157, 159, 159, 28.16711 + 162, 165, 165, 167, 166, 166, 171, 171, 171, 172, 173, 174, 176, 177, 182, 180, 28.16712 + 178, 177, 177, 177, 176, 173, 176, 178, 186, 165, 162, 172, 159, 177, 170, 169, 28.16713 + 175, 176, 176, 186, 189, 175, 173, 170, 169, 170, 172, 173, 169, 165, 167, 172, 28.16714 + 175, 175, 170, 165, 161, 161, 158, 157, 153, 155, 160, 170, 183, 192, 191, 194, 28.16715 + 197, 199, 197, 194, 191, 190, 189, 188, 188, 188, 188, 186, 182, 178, 182, 175, 28.16716 + 178, 179, 169, 165, 162, 151, 148, 156, 164, 163, 168, 145, 166, 165, 171, 171, 28.16717 + 165, 160, 157, 154, 147, 138, 153, 145, 135, 130, 152, 139, 148, 128, 89, 63, 28.16718 + 73, 89, 103, 119, 117, 121, 113, 112, 111, 109, 107, 104, 103, 102, 102, 103, 28.16719 + 105, 105, 103, 103, 102, 104, 99, 101, 104, 113, 113, 111, 111, 108, 108, 107, 28.16720 + 106, 110, 96, 94, 123, 110, 124, 116, 108, 114, 115, 115, 115, 119, 125, 126, 28.16721 + 125, 126, 127, 123, 119, 119, 123, 125, 125, 130, 127, 124, 124, 124, 123, 119, 28.16722 + 116, 115, 124, 131, 131, 133, 140, 144, 142, 150, 148, 147, 150, 153, 153, 151, 28.16723 + 151, 154, 152, 149, 148, 150, 151, 155, 157, 162, 161, 160, 159, 158, 158, 158, 28.16724 + 158, 162, 163, 164, 166, 166, 168, 167, 166, 173, 173, 172, 173, 172, 170, 169, 28.16725 + 168, 174, 173, 171, 171, 172, 174, 177, 178, 180, 176, 171, 172, 174, 174, 170, 28.16726 + 167, 176, 171, 170, 176, 185, 187, 179, 171, 165, 164, 165, 168, 173, 176, 175, 28.16727 + 174, 169, 168, 167, 165, 162, 160, 159, 158, 164, 152, 145, 151, 158, 163, 174, 28.16728 + 187, 187, 194, 199, 200, 194, 189, 189, 190, 190, 189, 188, 187, 186, 184, 180, 28.16729 + 176, 180, 179, 182, 179, 166, 160, 153, 138, 149, 157, 154, 153, 165, 169, 166, 28.16730 + 167, 172, 165, 157, 154, 151, 148, 148, 150, 144, 163, 105, 146, 140, 155, 152, 28.16731 + 142, 83, 70, 70, 86, 96, 97, 107, 120, 113, 108, 110, 100, 106, 109, 93, 28.16732 + 101, 100, 95, 102, 107, 103, 103, 103, 95, 100, 102, 106, 104, 106, 108, 110, 28.16733 + 111, 111, 110, 109, 106, 105, 106, 112, 101, 109, 112, 113, 112, 112, 112, 113, 28.16734 + 116, 120, 122, 122, 127, 129, 128, 124, 121, 123, 122, 119, 126, 127, 130, 134, 28.16735 + 134, 131, 122, 116, 115, 128, 134, 130, 127, 133, 144, 153, 154, 153, 151, 153, 28.16736 + 154, 154, 153, 151, 153, 152, 149, 147, 148, 151, 153, 156, 160, 160, 159, 158, 28.16737 + 158, 159, 159, 160, 160, 160, 163, 165, 166, 167, 167, 166, 169, 170, 171, 172, 28.16738 + 173, 173, 173, 172, 171, 171, 171, 173, 175, 179, 183, 186, 182, 178, 174, 175, 28.16739 + 178, 178, 175, 171, 174, 171, 171, 176, 182, 184, 180, 175, 173, 171, 171, 172, 28.16740 + 175, 176, 175, 173, 173, 172, 172, 170, 168, 166, 166, 164, 156, 150, 146, 150, 28.16741 + 157, 166, 179, 189, 190, 195, 200, 199, 194, 191, 190, 192, 191, 189, 188, 187, 28.16742 + 186, 184, 180, 176, 177, 173, 176, 173, 163, 161, 158, 145, 148, 159, 156, 151, 28.16743 + 157, 159, 159, 164, 168, 161, 154, 152, 152, 149, 143, 139, 142, 150, 122, 148, 28.16744 + 154, 151, 145, 131, 75, 62, 63, 83, 97, 95, 95, 101, 104, 101, 114, 109, 28.16745 + 103, 105, 96, 101, 105, 96, 95, 96, 91, 99, 108, 107, 100, 100, 105, 109, 28.16746 + 112, 115, 117, 118, 116, 114, 113, 110, 115, 110, 93, 103, 107, 115, 117, 117, 28.16747 + 116, 116, 116, 116, 117, 118, 121, 117, 122, 124, 123, 123, 126, 125, 122, 124, 28.16748 + 125, 129, 133, 133, 131, 125, 120, 117, 125, 131, 131, 132, 137, 146, 151, 152, 28.16749 + 152, 152, 153, 155, 156, 155, 152, 151, 150, 148, 147, 146, 148, 151, 153, 154, 28.16750 + 155, 155, 156, 157, 158, 158, 159, 158, 159, 161, 163, 164, 165, 165, 165, 164, 28.16751 + 165, 167, 169, 172, 173, 174, 174, 172, 172, 172, 174, 176, 180, 183, 186, 180, 28.16752 + 177, 175, 176, 178, 179, 177, 174, 172, 171, 172, 175, 179, 181, 181, 180, 181, 28.16753 + 180, 178, 177, 177, 176, 174, 172, 172, 171, 171, 168, 167, 165, 164, 162, 153, 28.16754 + 156, 154, 152, 158, 171, 184, 190, 193, 196, 199, 197, 192, 190, 192, 194, 192, 28.16755 + 190, 189, 188, 187, 184, 180, 176, 173, 171, 176, 175, 166, 164, 159, 144, 142, 28.16756 + 155, 153, 148, 154, 158, 162, 172, 167, 163, 157, 156, 156, 152, 144, 136, 145, 28.16757 + 136, 137, 144, 160, 146, 140, 128, 64, 52, 54, 78, 97, 100, 100, 104, 98, 28.16758 + 93, 121, 119, 100, 103, 102, 103, 108, 99, 96, 94, 91, 102, 115, 116, 107, 28.16759 + 104, 105, 103, 106, 109, 112, 114, 115, 116, 116, 117, 118, 105, 77, 111, 118, 28.16760 + 121, 112, 117, 117, 119, 120, 118, 115, 116, 120, 117, 122, 122, 121, 123, 128, 28.16761 + 128, 125, 124, 123, 123, 123, 123, 125, 126, 127, 119, 119, 121, 131, 142, 149, 28.16762 + 146, 141, 145, 147, 149, 150, 152, 156, 156, 152, 151, 150, 149, 147, 147, 147, 28.16763 + 149, 150, 148, 149, 149, 151, 152, 155, 157, 158, 161, 161, 162, 163, 164, 163, 28.16764 + 163, 163, 160, 162, 164, 167, 169, 170, 171, 172, 175, 175, 174, 174, 173, 174, 28.16765 + 176, 177, 175, 173, 172, 173, 175, 176, 175, 173, 171, 172, 174, 174, 175, 178, 28.16766 + 181, 183, 185, 183, 181, 178, 177, 175, 174, 172, 173, 173, 171, 168, 165, 162, 28.16767 + 161, 158, 158, 164, 163, 157, 160, 175, 187, 190, 195, 197, 198, 195, 191, 191, 28.16768 + 193, 195, 192, 191, 189, 188, 187, 184, 179, 176, 173, 173, 180, 181, 172, 167, 28.16769 + 156, 137, 147, 157, 153, 149, 158, 164, 168, 175, 163, 164, 161, 156, 153, 151, 28.16770 + 146, 140, 151, 131, 140, 141, 148, 144, 137, 134, 64, 53, 55, 72, 90, 97, 28.16771 + 103, 110, 102, 90, 121, 122, 97, 102, 107, 101, 106, 100, 105, 106, 102, 107, 28.16772 + 117, 114, 112, 108, 106, 85, 87, 88, 92, 98, 105, 110, 114, 113, 120, 107, 28.16773 + 74, 106, 112, 114, 105, 107, 105, 110, 117, 118, 116, 115, 120, 127, 128, 124, 28.16774 + 118, 115, 119, 119, 117, 121, 120, 120, 120, 121, 123, 125, 127, 117, 117, 121, 28.16775 + 129, 138, 144, 146, 147, 145, 149, 150, 149, 152, 157, 154, 148, 153, 151, 150, 28.16776 + 149, 149, 148, 149, 149, 146, 146, 147, 149, 152, 155, 157, 159, 164, 164, 164, 28.16777 + 164, 163, 162, 160, 160, 162, 163, 165, 167, 169, 169, 170, 170, 177, 177, 176, 28.16778 + 175, 173, 173, 172, 173, 172, 171, 171, 171, 174, 174, 174, 173, 172, 173, 174, 28.16779 + 174, 174, 176, 180, 184, 183, 181, 179, 176, 174, 172, 173, 173, 178, 177, 174, 28.16780 + 171, 167, 163, 160, 159, 160, 165, 164, 160, 165, 180, 189, 190, 196, 197, 196, 28.16781 + 194, 191, 191, 193, 195, 192, 190, 188, 187, 186, 182, 178, 174, 175, 172, 175, 28.16782 + 175, 168, 166, 159, 141, 157, 162, 153, 150, 164, 170, 167, 168, 155, 160, 158, 28.16783 + 149, 142, 142, 144, 143, 146, 130, 137, 147, 138, 149, 137, 129, 67, 64, 68, 28.16784 + 80, 87, 88, 93, 101, 111, 92, 115, 115, 95, 104, 106, 97, 100, 97, 104, 28.16785 + 106, 99, 102, 109, 105, 111, 108, 108, 89, 88, 86, 87, 89, 93, 98, 102, 28.16786 + 104, 119, 115, 87, 86, 90, 98, 99, 92, 90, 97, 112, 119, 116, 113, 116, 28.16787 + 113, 114, 111, 106, 105, 110, 113, 111, 115, 119, 124, 127, 127, 125, 124, 125, 28.16788 + 116, 121, 128, 130, 126, 128, 142, 157, 147, 153, 153, 150, 152, 157, 154, 145, 28.16789 + 153, 152, 151, 149, 148, 148, 148, 148, 146, 148, 148, 150, 153, 156, 159, 161, 28.16790 + 164, 164, 164, 164, 163, 161, 160, 159, 165, 166, 168, 169, 170, 170, 170, 170, 28.16791 + 175, 175, 175, 176, 175, 176, 176, 177, 173, 173, 173, 173, 174, 175, 175, 175, 28.16792 + 173, 174, 174, 174, 174, 175, 178, 182, 178, 177, 175, 173, 170, 170, 172, 174, 28.16793 + 176, 174, 173, 170, 166, 163, 160, 159, 158, 159, 158, 161, 170, 183, 190, 193, 28.16794 + 197, 195, 194, 193, 191, 191, 192, 192, 191, 189, 187, 186, 184, 181, 176, 172, 28.16795 + 176, 167, 164, 162, 159, 166, 168, 156, 149, 154, 148, 151, 170, 178, 172, 170, 28.16796 + 158, 163, 158, 145, 139, 142, 146, 145, 134, 132, 138, 155, 143, 152, 139, 107, 28.16797 + 59, 66, 81, 98, 104, 100, 99, 103, 116, 97, 109, 106, 96, 106, 102, 96, 28.16798 + 97, 92, 96, 95, 88, 92, 104, 103, 113, 109, 110, 104, 103, 99, 98, 96, 28.16799 + 96, 98, 100, 108, 117, 113, 99, 72, 82, 93, 96, 91, 86, 94, 112, 121, 28.16800 + 115, 108, 107, 98, 102, 103, 102, 105, 112, 117, 115, 116, 121, 126, 128, 127, 28.16801 + 125, 126, 126, 120, 123, 128, 133, 130, 126, 133, 143, 142, 149, 151, 149, 151, 28.16802 + 159, 157, 147, 152, 151, 150, 149, 148, 146, 146, 145, 145, 145, 146, 148, 151, 28.16803 + 154, 156, 158, 160, 161, 162, 162, 162, 162, 161, 161, 164, 165, 166, 168, 169, 28.16804 + 170, 170, 170, 170, 171, 173, 175, 176, 177, 178, 178, 175, 176, 176, 175, 175, 28.16805 + 174, 174, 175, 175, 174, 175, 175, 175, 176, 178, 178, 176, 176, 175, 171, 167, 28.16806 + 167, 170, 173, 170, 169, 169, 167, 166, 164, 164, 163, 165, 158, 157, 166, 178, 28.16807 + 188, 192, 196, 195, 194, 193, 192, 191, 191, 189, 189, 190, 188, 186, 184, 182, 28.16808 + 179, 174, 170, 171, 163, 161, 162, 163, 173, 177, 165, 142, 152, 151, 156, 173, 28.16809 + 180, 173, 172, 167, 167, 158, 144, 142, 148, 146, 138, 130, 136, 145, 152, 153, 28.16810 + 144, 149, 85, 54, 65, 84, 106, 118, 119, 117, 115, 117, 107, 112, 107, 106, 28.16811 + 113, 102, 104, 101, 97, 101, 101, 93, 98, 111, 112, 119, 113, 110, 99, 100, 28.16812 + 103, 105, 106, 109, 110, 112, 119, 112, 102, 104, 71, 91, 98, 94, 100, 91, 28.16813 + 97, 116, 125, 116, 103, 98, 107, 112, 114, 114, 116, 120, 121, 117, 123, 123, 28.16814 + 123, 121, 119, 122, 127, 132, 128, 120, 121, 136, 145, 141, 126, 115, 130, 138, 28.16815 + 143, 144, 150, 160, 160, 151, 151, 150, 149, 147, 146, 145, 144, 144, 141, 142, 28.16816 + 142, 144, 147, 150, 153, 153, 156, 157, 159, 160, 161, 162, 162, 163, 158, 159, 28.16817 + 161, 164, 165, 167, 167, 168, 168, 169, 170, 172, 173, 174, 174, 174, 174, 175, 28.16818 + 176, 175, 173, 172, 173, 174, 176, 176, 174, 175, 176, 177, 176, 174, 177, 176, 28.16819 + 175, 171, 167, 167, 168, 172, 170, 171, 171, 171, 171, 171, 172, 171, 177, 164, 28.16820 + 161, 173, 187, 191, 193, 197, 194, 192, 192, 192, 191, 191, 188, 187, 189, 187, 28.16821 + 185, 183, 181, 178, 173, 169, 167, 162, 167, 173, 175, 182, 180, 164, 152, 165, 28.16822 + 165, 165, 173, 172, 162, 161, 169, 165, 151, 139, 142, 148, 140, 124, 134, 140, 28.16823 + 151, 142, 158, 133, 159, 73, 61, 66, 81, 100, 115, 121, 118, 115, 116, 116, 28.16824 + 120, 112, 116, 118, 104, 114, 106, 105, 114, 118, 110, 114, 124, 123, 120, 112, 28.16825 + 109, 105, 102, 96, 91, 93, 101, 104, 102, 110, 105, 105, 121, 106, 85, 97, 28.16826 + 98, 100, 112, 115, 116, 119, 113, 106, 111, 111, 113, 114, 113, 112, 114, 120, 28.16827 + 125, 124, 121, 129, 132, 122, 121, 125, 121, 124, 122, 125, 135, 144, 145, 142, 28.16828 + 140, 117, 130, 134, 138, 154, 160, 154, 153, 151, 154, 159, 159, 157, 155, 155, 28.16829 + 157, 148, 148, 147, 145, 145, 148, 153, 156, 153, 155, 157, 160, 163, 163, 162, 28.16830 + 161, 169, 166, 164, 165, 165, 164, 166, 170, 166, 164, 168, 174, 174, 169, 170, 28.16831 + 174, 173, 174, 176, 176, 176, 174, 170, 168, 174, 175, 175, 176, 175, 174, 173, 28.16832 + 173, 170, 171, 171, 171, 170, 173, 176, 179, 179, 179, 172, 167, 169, 174, 169, 28.16833 + 160, 165, 159, 160, 173, 189, 192, 192, 193, 194, 196, 197, 197, 195, 192, 188, 28.16834 + 187, 185, 186, 187, 184, 178, 174, 173, 174, 166, 172, 177, 183, 166, 163, 171, 28.16835 + 142, 161, 163, 162, 166, 173, 178, 176, 171, 163, 153, 150, 134, 136, 146, 133, 28.16836 + 128, 142, 149, 141, 153, 171, 123, 161, 74, 66, 69, 89, 108, 111, 116, 120, 28.16837 + 115, 108, 113, 116, 117, 121, 123, 120, 115, 115, 114, 115, 118, 121, 123, 122, 28.16838 + 121, 115, 112, 112, 111, 109, 103, 95, 92, 93, 90, 83, 98, 93, 89, 102, 28.16839 + 94, 86, 104, 103, 101, 103, 97, 94, 102, 103, 100, 106, 100, 102, 104, 108, 28.16840 + 110, 115, 119, 122, 120, 118, 125, 128, 119, 121, 126, 122, 128, 127, 124, 123, 28.16841 + 131, 143, 147, 143, 136, 137, 127, 119, 127, 135, 142, 154, 158, 161, 162, 160, 28.16842 + 157, 155, 156, 157, 154, 153, 151, 148, 146, 148, 151, 154, 150, 151, 153, 156, 28.16843 + 159, 159, 160, 160, 166, 162, 162, 164, 165, 163, 165, 169, 169, 167, 170, 175, 28.16844 + 175, 171, 172, 178, 172, 173, 175, 175, 175, 173, 170, 169, 174, 175, 176, 175, 28.16845 + 174, 172, 171, 171, 170, 171, 171, 170, 170, 171, 174, 177, 176, 175, 170, 166, 28.16846 + 168, 174, 175, 172, 161, 161, 169, 182, 189, 190, 190, 194, 193, 194, 195, 195, 28.16847 + 193, 190, 187, 185, 184, 182, 180, 178, 177, 175, 172, 169, 170, 190, 168, 173, 28.16848 + 191, 163, 150, 166, 168, 167, 166, 172, 177, 178, 174, 170, 167, 154, 150, 135, 28.16849 + 133, 140, 129, 131, 143, 141, 144, 144, 131, 140, 139, 61, 66, 73, 93, 109, 28.16850 + 112, 113, 118, 114, 112, 117, 118, 118, 119, 122, 120, 113, 110, 110, 109, 112, 28.16851 + 113, 114, 113, 113, 112, 112, 111, 108, 110, 109, 105, 103, 103, 98, 92, 91, 28.16852 + 91, 86, 95, 92, 93, 108, 97, 100, 99, 89, 87, 99, 102, 99, 104, 104, 28.16853 + 104, 106, 111, 116, 120, 122, 122, 122, 118, 123, 125, 117, 119, 125, 123, 118, 28.16854 + 125, 127, 124, 129, 142, 147, 143, 142, 143, 136, 131, 133, 129, 130, 142, 140, 28.16855 + 147, 157, 166, 167, 166, 163, 161, 156, 154, 152, 149, 146, 146, 147, 151, 147, 28.16856 + 147, 149, 150, 152, 154, 157, 158, 161, 158, 159, 163, 164, 162, 163, 167, 169, 28.16857 + 168, 170, 172, 172, 170, 173, 178, 171, 173, 174, 174, 173, 172, 170, 168, 173, 28.16858 + 174, 174, 174, 173, 171, 170, 169, 169, 171, 171, 169, 168, 168, 171, 173, 168, 28.16859 + 170, 170, 167, 168, 172, 173, 170, 157, 165, 179, 190, 190, 187, 189, 196, 194, 28.16860 + 194, 195, 194, 192, 189, 187, 185, 190, 185, 180, 178, 178, 177, 171, 166, 174, 28.16861 + 181, 182, 190, 177, 162, 173, 169, 175, 171, 172, 181, 184, 177, 170, 170, 170, 28.16862 + 154, 150, 135, 130, 133, 126, 137, 152, 154, 150, 150, 136, 164, 98, 71, 66, 28.16863 + 81, 102, 114, 116, 116, 117, 118, 111, 114, 113, 112, 113, 116, 114, 110, 108, 28.16864 + 106, 105, 107, 108, 109, 108, 108, 107, 109, 107, 105, 108, 111, 110, 111, 113, 28.16865 + 111, 107, 101, 106, 103, 110, 108, 105, 107, 81, 102, 107, 105, 107, 115, 114, 28.16866 + 107, 110, 118, 117, 116, 120, 123, 124, 119, 117, 125, 119, 122, 122, 115, 118, 28.16867 + 125, 121, 117, 121, 124, 122, 121, 129, 142, 152, 148, 150, 147, 147, 148, 137, 28.16868 + 129, 137, 131, 136, 142, 148, 153, 156, 157, 157, 153, 153, 152, 150, 149, 149, 28.16869 + 151, 155, 150, 149, 148, 148, 149, 150, 153, 155, 156, 155, 156, 162, 163, 162, 28.16870 + 162, 165, 167, 167, 167, 167, 166, 167, 170, 174, 169, 171, 171, 171, 171, 170, 28.16871 + 168, 168, 170, 171, 171, 171, 171, 170, 170, 169, 169, 170, 169, 168, 166, 167, 28.16872 + 168, 172, 162, 166, 171, 171, 169, 165, 161, 160, 162, 172, 184, 190, 190, 189, 28.16873 + 191, 195, 196, 196, 196, 196, 192, 191, 189, 188, 190, 187, 182, 178, 174, 171, 28.16874 + 167, 164, 165, 185, 200, 191, 158, 166, 195, 168, 178, 173, 175, 186, 187, 176, 28.16875 + 169, 171, 169, 152, 148, 133, 126, 129, 128, 145, 146, 155, 131, 143, 158, 149, 28.16876 + 53, 74, 66, 90, 109, 119, 122, 120, 121, 125, 120, 121, 120, 118, 119, 123, 28.16877 + 124, 120, 124, 122, 121, 122, 125, 126, 126, 126, 124, 125, 125, 108, 111, 111, 28.16878 + 107, 106, 107, 107, 104, 109, 116, 114, 120, 118, 115, 111, 78, 106, 119, 124, 28.16879 + 124, 126, 120, 115, 122, 124, 121, 119, 120, 121, 119, 112, 107, 120, 114, 116, 28.16880 + 117, 113, 118, 125, 121, 127, 120, 115, 113, 104, 103, 124, 150, 160, 157, 146, 28.16881 + 141, 145, 142, 140, 149, 151, 144, 133, 127, 126, 131, 139, 145, 147, 148, 150, 28.16882 + 150, 149, 152, 155, 157, 153, 152, 149, 147, 147, 148, 151, 152, 155, 153, 155, 28.16883 + 161, 163, 161, 161, 164, 165, 167, 167, 165, 164, 166, 169, 170, 167, 168, 169, 28.16884 + 169, 169, 169, 167, 167, 167, 167, 169, 170, 170, 171, 170, 170, 168, 169, 168, 28.16885 + 167, 165, 166, 167, 170, 166, 167, 168, 168, 166, 162, 160, 161, 172, 177, 182, 28.16886 + 184, 188, 192, 193, 194, 195, 195, 195, 194, 191, 189, 187, 186, 180, 182, 182, 28.16887 + 176, 168, 164, 165, 168, 173, 208, 182, 160, 173, 175, 177, 179, 175, 174, 177, 28.16888 + 187, 188, 178, 171, 171, 165, 150, 146, 130, 124, 131, 135, 153, 155, 150, 129, 28.16889 + 146, 157, 127, 83, 71, 65, 96, 112, 117, 124, 122, 121, 131, 117, 117, 115, 28.16890 + 110, 110, 113, 112, 109, 116, 115, 114, 115, 117, 120, 122, 122, 121, 124, 124, 28.16891 + 107, 111, 111, 106, 104, 107, 108, 107, 112, 113, 106, 113, 114, 115, 119, 94, 28.16892 + 112, 125, 126, 122, 121, 116, 118, 130, 120, 119, 120, 120, 120, 118, 115, 111, 28.16893 + 113, 106, 109, 113, 110, 117, 124, 120, 117, 115, 118, 121, 111, 98, 97, 104, 28.16894 + 142, 151, 149, 145, 151, 153, 150, 154, 154, 150, 145, 143, 141, 139, 136, 134, 28.16895 + 136, 138, 139, 141, 141, 143, 147, 149, 152, 151, 147, 146, 146, 146, 149, 150, 28.16896 + 153, 151, 152, 156, 158, 157, 157, 161, 164, 167, 168, 165, 164, 167, 169, 169, 28.16897 + 165, 166, 166, 166, 167, 167, 166, 166, 166, 167, 168, 169, 170, 170, 170, 170, 28.16898 + 167, 167, 167, 166, 165, 166, 168, 171, 174, 167, 162, 160, 162, 165, 170, 178, 28.16899 + 181, 182, 180, 181, 185, 193, 194, 191, 192, 191, 190, 189, 186, 185, 183, 183, 28.16900 + 176, 181, 184, 179, 170, 167, 173, 180, 207, 187, 154, 164, 181, 174, 176, 173, 28.16901 + 173, 177, 181, 185, 185, 180, 175, 171, 161, 151, 146, 125, 122, 138, 143, 156, 28.16902 + 171, 146, 145, 155, 133, 125, 154, 74, 66, 100, 112, 112, 123, 123, 118, 130, 28.16903 + 113, 114, 110, 104, 101, 103, 100, 94, 100, 98, 96, 97, 99, 101, 102, 104, 28.16904 + 103, 106, 108, 106, 111, 114, 112, 111, 114, 116, 116, 113, 110, 101, 112, 113, 28.16905 + 114, 124, 107, 113, 123, 121, 116, 116, 113, 113, 124, 115, 117, 120, 120, 120, 28.16906 + 119, 119, 122, 115, 109, 111, 114, 112, 118, 122, 116, 107, 117, 123, 123, 122, 28.16907 + 115, 89, 60, 87, 124, 149, 154, 161, 162, 155, 151, 147, 150, 156, 162, 164, 28.16908 + 160, 151, 143, 137, 139, 140, 140, 139, 139, 139, 141, 144, 143, 143, 142, 143, 28.16909 + 144, 146, 147, 151, 148, 148, 151, 152, 152, 153, 157, 160, 165, 167, 164, 162, 28.16910 + 166, 166, 164, 164, 165, 165, 165, 165, 165, 166, 166, 169, 170, 170, 170, 169, 28.16911 + 168, 167, 167, 166, 166, 168, 167, 166, 167, 170, 172, 174, 164, 158, 160, 167, 28.16912 + 170, 176, 183, 183, 185, 182, 180, 184, 192, 193, 189, 191, 191, 188, 187, 184, 28.16913 + 183, 181, 181, 179, 181, 182, 178, 172, 170, 174, 179, 195, 156, 155, 191, 184, 28.16914 + 175, 188, 164, 173, 184, 187, 183, 181, 183, 178, 169, 159, 154, 148, 122, 121, 28.16915 + 145, 149, 155, 156, 141, 141, 145, 128, 129, 158, 86, 74, 109, 114, 109, 125, 28.16916 + 125, 116, 129, 129, 131, 127, 123, 121, 122, 120, 114, 116, 113, 110, 108, 109, 28.16917 + 111, 112, 111, 111, 114, 116, 109, 115, 119, 115, 112, 112, 112, 109, 117, 112, 28.16918 + 105, 119, 119, 115, 122, 107, 112, 120, 117, 115, 120, 116, 109, 114, 111, 114, 28.16919 + 118, 118, 117, 117, 118, 123, 125, 117, 118, 120, 115, 117, 119, 111, 120, 128, 28.16920 + 119, 103, 112, 128, 104, 59, 41, 96, 135, 143, 150, 157, 155, 152, 157, 153, 28.16921 + 150, 149, 152, 157, 159, 158, 151, 152, 152, 150, 146, 144, 144, 144, 137, 138, 28.16922 + 137, 139, 142, 143, 145, 146, 150, 147, 145, 148, 148, 148, 151, 156, 156, 162, 28.16923 + 165, 161, 159, 162, 162, 158, 164, 164, 164, 164, 164, 165, 165, 166, 173, 172, 28.16924 + 172, 172, 169, 168, 165, 165, 165, 167, 167, 167, 166, 167, 171, 173, 167, 159, 28.16925 + 158, 167, 174, 173, 172, 173, 180, 186, 186, 181, 183, 190, 190, 187, 192, 191, 28.16926 + 188, 187, 184, 184, 183, 183, 179, 177, 174, 169, 165, 163, 164, 165, 134, 167, 28.16927 + 174, 193, 207, 184, 173, 174, 176, 190, 192, 182, 179, 185, 181, 167, 159, 157, 28.16928 + 150, 120, 120, 149, 153, 152, 144, 159, 141, 147, 167, 150, 131, 124, 84, 119, 28.16929 + 120, 112, 129, 128, 117, 130, 125, 128, 127, 124, 126, 129, 127, 121, 123, 120, 28.16930 + 114, 112, 112, 113, 113, 113, 116, 119, 119, 107, 109, 111, 111, 110, 109, 110, 28.16931 + 111, 110, 110, 110, 110, 110, 110, 110, 111, 103, 112, 111, 110, 113, 109, 106, 28.16932 + 113, 98, 106, 109, 107, 109, 117, 120, 119, 116, 119, 121, 120, 116, 115, 115, 28.16933 + 118, 119, 122, 121, 108, 119, 115, 115, 66, 29, 49, 83, 117, 141, 150, 148, 28.16934 + 144, 154, 154, 155, 155, 157, 161, 161, 158, 147, 145, 145, 148, 153, 155, 154, 28.16935 + 152, 154, 156, 155, 150, 141, 134, 131, 131, 140, 142, 146, 150, 151, 149, 144, 28.16936 + 140, 152, 153, 158, 162, 161, 156, 158, 164, 162, 164, 162, 158, 159, 165, 168, 28.16937 + 168, 165, 166, 169, 171, 169, 166, 160, 158, 166, 163, 161, 162, 165, 167, 165, 28.16938 + 163, 142, 155, 170, 175, 173, 172, 176, 183, 183, 183, 182, 184, 186, 189, 190, 28.16939 + 189, 192, 189, 185, 183, 183, 183, 182, 181, 183, 179, 172, 166, 164, 161, 156, 28.16940 + 149, 170, 165, 183, 195, 183, 187, 186, 161, 177, 189, 197, 194, 185, 177, 171, 28.16941 + 167, 145, 152, 155, 140, 118, 153, 153, 156, 165, 149, 146, 159, 162, 149, 140, 28.16942 + 143, 96, 114, 109, 117, 123, 112, 122, 121, 127, 126, 132, 132, 123, 123, 122, 28.16943 + 109, 121, 118, 116, 118, 119, 118, 115, 114, 116, 121, 119, 112, 113, 112, 110, 28.16944 + 107, 107, 107, 109, 110, 109, 108, 108, 107, 107, 107, 108, 107, 115, 114, 112, 28.16945 + 116, 113, 109, 117, 111, 115, 113, 105, 101, 104, 106, 105, 106, 109, 111, 111, 28.16946 + 111, 111, 113, 115, 117, 116, 117, 113, 123, 112, 119, 84, 33, 38, 47, 60, 28.16947 + 79, 108, 140, 162, 163, 161, 155, 151, 153, 157, 157, 153, 155, 153, 153, 154, 28.16948 + 158, 161, 164, 164, 158, 158, 157, 153, 150, 148, 148, 149, 146, 142, 138, 137, 28.16949 + 139, 144, 147, 148, 143, 144, 149, 156, 157, 158, 162, 169, 164, 167, 165, 161, 28.16950 + 162, 166, 168, 166, 173, 173, 171, 168, 164, 162, 161, 161, 159, 161, 163, 166, 28.16951 + 168, 164, 157, 152, 161, 168, 175, 179, 177, 176, 177, 180, 188, 187, 188, 190, 28.16952 + 192, 192, 189, 186, 190, 187, 184, 182, 182, 182, 181, 180, 171, 175, 176, 170, 28.16953 + 163, 163, 170, 176, 168, 184, 192, 193, 194, 189, 182, 180, 197, 202, 201, 192, 28.16954 + 183, 179, 177, 174, 163, 158, 146, 128, 113, 157, 165, 171, 153, 148, 154, 169, 28.16955 + 173, 162, 149, 144, 119, 104, 118, 105, 126, 118, 121, 121, 120, 116, 120, 123, 28.16956 + 121, 126, 127, 114, 125, 121, 115, 111, 107, 107, 113, 118, 108, 115, 117, 112, 28.16957 + 113, 112, 111, 109, 109, 110, 111, 114, 113, 110, 108, 107, 108, 108, 109, 108, 28.16958 + 115, 113, 111, 116, 114, 111, 118, 113, 115, 111, 105, 102, 105, 109, 110, 115, 28.16959 + 117, 119, 119, 120, 121, 123, 124, 119, 113, 117, 119, 129, 114, 125, 100, 28, 28.16960 + 31, 34, 34, 39, 60, 93, 118, 132, 142, 152, 158, 166, 169, 164, 157, 160, 28.16961 + 159, 158, 156, 157, 159, 164, 167, 162, 162, 162, 163, 163, 162, 159, 157, 152, 28.16962 + 146, 140, 135, 137, 141, 146, 149, 143, 141, 144, 147, 149, 148, 153, 160, 162, 28.16963 + 165, 164, 161, 160, 164, 163, 160, 166, 169, 168, 167, 162, 162, 162, 166, 164, 28.16964 + 161, 155, 152, 153, 157, 161, 162, 176, 176, 176, 177, 179, 181, 181, 180, 189, 28.16965 + 190, 192, 194, 195, 193, 188, 184, 189, 187, 184, 182, 182, 182, 180, 178, 173, 28.16966 + 173, 171, 165, 160, 160, 167, 174, 171, 201, 200, 190, 199, 189, 178, 196, 199, 28.16967 + 200, 195, 187, 181, 179, 176, 171, 160, 155, 148, 138, 127, 166, 160, 157, 145, 28.16968 + 148, 156, 166, 171, 166, 152, 141, 143, 94, 118, 97, 125, 119, 118, 118, 125, 28.16969 + 117, 117, 117, 113, 118, 117, 104, 101, 111, 122, 127, 122, 116, 112, 109, 110, 28.16970 + 113, 116, 102, 106, 109, 112, 113, 114, 114, 117, 118, 116, 113, 111, 111, 112, 28.16971 + 114, 116, 110, 117, 113, 112, 118, 117, 113, 119, 113, 114, 114, 113, 113, 117, 28.16972 + 120, 123, 126, 127, 127, 127, 127, 127, 127, 128, 121, 120, 122, 120, 131, 120, 28.16973 + 127, 91, 24, 32, 42, 42, 37, 36, 45, 55, 132, 139, 141, 139, 145, 159, 28.16974 + 170, 174, 164, 165, 165, 162, 157, 156, 159, 162, 164, 165, 168, 172, 173, 169, 28.16975 + 159, 151, 160, 156, 153, 151, 151, 148, 146, 143, 146, 143, 141, 144, 145, 146, 28.16976 + 149, 155, 170, 174, 175, 172, 172, 175, 173, 169, 165, 170, 173, 172, 166, 161, 28.16977 + 160, 160, 160, 156, 149, 147, 150, 159, 169, 176, 176, 175, 175, 176, 178, 181, 28.16978 + 184, 185, 188, 188, 189, 192, 193, 192, 188, 185, 188, 185, 183, 181, 181, 180, 28.16979 + 178, 176, 182, 169, 158, 158, 164, 166, 163, 161, 186, 204, 201, 189, 190, 186, 28.16980 + 184, 197, 186, 188, 187, 184, 184, 183, 175, 166, 154, 153, 153, 148, 134, 162, 28.16981 + 148, 139, 167, 171, 172, 170, 172, 175, 166, 155, 151, 105, 104, 105, 122, 115, 28.16982 + 119, 114, 125, 119, 118, 115, 108, 111, 113, 103, 114, 115, 111, 105, 104, 109, 28.16983 + 114, 115, 113, 112, 112, 93, 99, 105, 111, 113, 113, 112, 114, 114, 112, 110, 28.16984 + 109, 109, 112, 115, 118, 114, 120, 114, 113, 120, 119, 115, 120, 117, 119, 120, 28.16985 + 121, 119, 117, 116, 118, 120, 118, 118, 119, 120, 121, 120, 120, 119, 126, 126, 28.16986 + 113, 125, 123, 119, 63, 29, 32, 37, 39, 36, 35, 37, 40, 46, 81, 120, 28.16987 + 143, 154, 159, 156, 147, 167, 171, 173, 172, 167, 164, 164, 166, 167, 166, 166, 28.16988 + 167, 168, 166, 159, 153, 164, 163, 162, 162, 161, 158, 151, 147, 143, 138, 137, 28.16989 + 142, 145, 148, 154, 161, 158, 162, 165, 164, 165, 167, 166, 162, 175, 176, 174, 28.16990 + 169, 162, 157, 156, 156, 146, 151, 158, 165, 169, 171, 171, 171, 174, 176, 177, 28.16991 + 177, 175, 178, 184, 190, 188, 187, 186, 188, 190, 192, 191, 190, 185, 183, 181, 28.16992 + 180, 179, 177, 174, 172, 172, 161, 156, 163, 171, 173, 174, 175, 208, 199, 199, 28.16993 + 193, 179, 186, 198, 190, 187, 188, 186, 185, 187, 188, 181, 172, 165, 159, 151, 28.16994 + 137, 116, 149, 150, 157, 169, 173, 172, 165, 164, 170, 164, 154, 147, 134, 88, 28.16995 + 125, 122, 113, 124, 114, 113, 114, 119, 119, 114, 120, 127, 123, 131, 128, 121, 28.16996 + 114, 116, 120, 117, 109, 107, 103, 102, 92, 98, 104, 107, 107, 106, 105, 105, 28.16997 + 105, 105, 103, 103, 104, 108, 110, 112, 110, 114, 108, 106, 114, 113, 109, 115, 28.16998 + 111, 112, 115, 119, 118, 113, 112, 113, 114, 112, 112, 115, 119, 121, 122, 121, 28.16999 + 114, 124, 123, 105, 117, 118, 109, 43, 33, 32, 33, 36, 38, 39, 38, 37, 28.17000 + 30, 43, 53, 59, 80, 119, 150, 163, 160, 164, 169, 172, 172, 171, 170, 170, 28.17001 + 169, 165, 160, 157, 158, 161, 164, 165, 166, 164, 162, 162, 162, 164, 162, 160, 28.17002 + 144, 139, 135, 138, 140, 140, 143, 148, 158, 163, 165, 165, 165, 169, 168, 165, 28.17003 + 164, 161, 154, 151, 151, 157, 162, 166, 157, 161, 166, 170, 171, 173, 174, 176, 28.17004 + 177, 181, 183, 182, 178, 178, 183, 188, 188, 187, 186, 187, 190, 192, 193, 192, 28.17005 + 182, 180, 178, 177, 176, 174, 171, 168, 158, 159, 165, 170, 166, 163, 174, 189, 28.17006 + 218, 197, 199, 197, 180, 193, 207, 187, 197, 195, 188, 182, 182, 184, 182, 176, 28.17007 + 166, 160, 152, 137, 113, 146, 156, 171, 156, 162, 166, 165, 163, 166, 158, 148, 28.17008 + 145, 159, 84, 133, 128, 120, 127, 120, 116, 116, 125, 126, 121, 128, 132, 126, 28.17009 + 80, 89, 98, 105, 111, 109, 90, 68, 104, 96, 91, 102, 104, 105, 105, 104, 28.17010 + 103, 104, 106, 106, 105, 105, 105, 106, 108, 108, 109, 107, 110, 103, 101, 110, 28.17011 + 111, 106, 110, 106, 106, 109, 115, 115, 113, 114, 119, 115, 113, 113, 116, 120, 28.17012 + 123, 123, 122, 110, 116, 116, 104, 116, 112, 106, 49, 33, 34, 38, 41, 42, 28.17013 + 38, 32, 27, 38, 40, 35, 35, 61, 103, 128, 131, 154, 155, 158, 162, 167, 28.17014 + 170, 170, 169, 167, 165, 162, 159, 158, 161, 166, 170, 166, 165, 163, 164, 166, 28.17015 + 167, 167, 165, 154, 147, 140, 141, 140, 138, 136, 137, 131, 134, 134, 133, 133, 28.17016 + 137, 136, 134, 147, 145, 142, 148, 156, 167, 172, 174, 172, 172, 169, 167, 166, 28.17017 + 172, 180, 186, 181, 181, 182, 183, 183, 183, 182, 181, 186, 185, 186, 187, 190, 28.17018 + 190, 188, 186, 179, 178, 176, 175, 174, 172, 168, 164, 162, 163, 169, 171, 163, 28.17019 + 157, 172, 192, 206, 201, 199, 195, 194, 200, 201, 193, 197, 197, 191, 184, 181, 28.17020 + 181, 179, 174, 159, 157, 156, 146, 123, 150, 154, 166, 166, 170, 175, 180, 179, 28.17021 + 176, 168, 162, 147, 164, 92, 115, 134, 130, 123, 126, 128, 122, 126, 128, 125, 28.17022 + 128, 123, 105, 107, 109, 104, 99, 105, 117, 118, 109, 104, 94, 87, 109, 110, 28.17023 + 108, 106, 104, 106, 110, 114, 111, 111, 111, 111, 112, 112, 111, 111, 113, 115, 28.17024 + 108, 106, 116, 116, 112, 116, 116, 112, 112, 116, 115, 111, 113, 119, 112, 109, 28.17025 + 108, 109, 113, 114, 113, 111, 110, 110, 113, 108, 119, 107, 108, 65, 37, 37, 28.17026 + 37, 37, 36, 35, 34, 34, 36, 32, 26, 35, 78, 132, 160, 160, 156, 154, 28.17027 + 154, 157, 163, 167, 168, 167, 162, 166, 170, 170, 167, 163, 163, 164, 167, 168, 28.17028 + 169, 171, 172, 170, 165, 161, 161, 153, 150, 153, 154, 153, 151, 151, 152, 155, 28.17029 + 154, 151, 151, 153, 153, 150, 153, 152, 156, 166, 177, 181, 176, 169, 165, 171, 28.17030 + 176, 178, 178, 177, 179, 181, 179, 177, 177, 181, 186, 187, 182, 176, 182, 182, 28.17031 + 184, 187, 188, 186, 182, 178, 178, 176, 175, 174, 173, 170, 166, 162, 175, 166, 28.17032 + 164, 169, 172, 172, 183, 199, 188, 206, 197, 190, 207, 203, 190, 198, 191, 197, 28.17033 + 198, 195, 190, 186, 179, 172, 166, 159, 154, 143, 120, 148, 151, 163, 167, 165, 28.17034 + 168, 171, 170, 166, 161, 161, 150, 156, 101, 93, 137, 137, 117, 128, 129, 119, 28.17035 + 117, 123, 125, 127, 114, 88, 105, 110, 108, 98, 96, 102, 101, 92, 101, 92, 28.17036 + 88, 101, 105, 103, 99, 97, 102, 106, 106, 106, 109, 113, 115, 116, 115, 114, 28.17037 + 114, 116, 119, 111, 106, 113, 114, 114, 122, 117, 118, 116, 110, 110, 112, 113, 28.17038 + 109, 108, 107, 106, 107, 110, 111, 110, 109, 107, 121, 123, 113, 113, 120, 106, 28.17039 + 80, 36, 36, 40, 41, 35, 26, 31, 40, 36, 35, 32, 42, 83, 137, 165, 28.17040 + 166, 171, 172, 171, 167, 162, 159, 158, 158, 160, 162, 163, 164, 164, 166, 168, 28.17041 + 170, 171, 172, 170, 170, 169, 170, 171, 170, 166, 159, 151, 148, 151, 154, 155, 28.17042 + 154, 158, 158, 158, 159, 160, 160, 161, 161, 163, 163, 165, 168, 171, 175, 178, 28.17043 + 179, 173, 173, 173, 173, 174, 176, 178, 181, 182, 182, 181, 181, 181, 182, 183, 28.17044 + 184, 183, 183, 184, 186, 187, 186, 183, 180, 179, 179, 175, 169, 163, 161, 165, 28.17045 + 169, 166, 169, 170, 168, 173, 184, 192, 195, 198, 186, 187, 194, 199, 203, 200, 28.17046 + 185, 198, 192, 185, 184, 186, 185, 179, 174, 177, 165, 154, 142, 123, 156, 156, 28.17047 + 163, 169, 166, 168, 172, 171, 167, 164, 166, 150, 143, 111, 88, 119, 118, 127, 28.17048 + 126, 125, 121, 116, 115, 116, 114, 109, 102, 118, 106, 97, 98, 107, 107, 94, 28.17049 + 79, 116, 145, 103, 96, 101, 100, 96, 95, 100, 103, 104, 102, 106, 110, 112, 28.17050 + 112, 113, 115, 117, 125, 128, 121, 115, 117, 113, 107, 111, 111, 114, 114, 110, 28.17051 + 110, 114, 115, 111, 114, 113, 111, 112, 114, 115, 114, 113, 112, 121, 122, 116, 28.17052 + 119, 126, 119, 102, 44, 38, 35, 34, 33, 37, 54, 69, 78, 83, 81, 82, 28.17053 + 106, 144, 165, 167, 178, 180, 181, 179, 176, 173, 173, 173, 169, 174, 177, 176, 28.17054 + 172, 170, 174, 178, 182, 182, 180, 180, 181, 183, 185, 187, 182, 178, 171, 163, 28.17055 + 157, 156, 158, 160, 152, 154, 158, 161, 163, 162, 161, 159, 163, 164, 167, 171, 28.17056 + 175, 178, 181, 182, 183, 181, 179, 178, 177, 178, 179, 180, 183, 183, 183, 183, 28.17057 + 183, 184, 184, 185, 183, 183, 184, 186, 188, 188, 186, 184, 176, 174, 172, 168, 28.17058 + 165, 164, 166, 169, 170, 171, 171, 173, 183, 194, 198, 196, 199, 203, 213, 211, 28.17059 + 195, 191, 200, 202, 194, 192, 189, 186, 182, 179, 178, 177, 169, 170, 168, 150, 28.17060 + 117, 141, 150, 169, 169, 167, 168, 173, 172, 168, 164, 165, 147, 138, 108, 87, 28.17061 + 123, 126, 129, 123, 116, 115, 116, 119, 123, 126, 123, 121, 105, 100, 95, 95, 28.17062 + 99, 101, 96, 91, 77, 101, 102, 93, 98, 98, 95, 94, 99, 102, 102, 98, 28.17063 + 104, 107, 106, 104, 105, 110, 115, 108, 115, 113, 112, 117, 112, 104, 109, 107, 28.17064 + 110, 112, 111, 113, 116, 117, 113, 120, 117, 115, 115, 116, 117, 116, 115, 114, 28.17065 + 114, 113, 113, 117, 121, 119, 113, 78, 70, 64, 63, 69, 80, 99, 114, 117, 28.17066 + 126, 127, 122, 129, 149, 164, 165, 178, 181, 184, 185, 184, 183, 182, 182, 179, 28.17067 + 186, 191, 189, 180, 175, 178, 184, 185, 184, 184, 184, 186, 189, 192, 194, 190, 28.17068 + 188, 183, 173, 162, 156, 156, 158, 154, 155, 157, 159, 161, 163, 163, 164, 160, 28.17069 + 162, 164, 168, 171, 173, 175, 175, 181, 179, 177, 175, 174, 174, 175, 176, 178, 28.17070 + 178, 179, 181, 180, 181, 180, 181, 182, 181, 180, 181, 182, 183, 181, 180, 174, 28.17071 + 172, 169, 168, 169, 170, 171, 170, 170, 171, 173, 180, 192, 203, 203, 197, 208, 28.17072 + 203, 207, 206, 195, 194, 199, 195, 187, 189, 188, 183, 176, 171, 173, 175, 170, 28.17073 + 164, 157, 144, 120, 147, 148, 156, 168, 166, 168, 173, 173, 168, 164, 163, 153, 28.17074 + 137, 107, 82, 122, 132, 134, 129, 134, 133, 132, 129, 124, 120, 114, 111, 115, 28.17075 + 113, 109, 104, 99, 97, 97, 99, 91, 95, 119, 95, 101, 101, 98, 96, 100, 28.17076 + 101, 101, 100, 104, 105, 102, 97, 96, 101, 108, 94, 104, 103, 106, 114, 112, 28.17077 + 107, 111, 107, 112, 114, 114, 115, 120, 118, 115, 120, 117, 114, 113, 114, 115, 28.17078 + 115, 114, 116, 111, 108, 111, 113, 112, 112, 112, 113, 110, 109, 111, 117, 122, 28.17079 + 130, 136, 134, 144, 148, 142, 144, 157, 168, 170, 176, 180, 184, 186, 186, 184, 28.17080 + 183, 183, 183, 188, 192, 191, 185, 181, 181, 183, 185, 184, 182, 182, 183, 186, 28.17081 + 189, 192, 187, 187, 184, 178, 169, 163, 159, 158, 161, 158, 155, 152, 153, 157, 28.17082 + 162, 165, 160, 162, 163, 165, 166, 167, 167, 166, 174, 172, 171, 171, 171, 172, 28.17083 + 174, 175, 175, 177, 177, 179, 178, 179, 177, 177, 183, 181, 179, 178, 178, 179, 28.17084 + 178, 176, 177, 173, 171, 171, 174, 176, 175, 172, 167, 173, 180, 187, 197, 205, 28.17085 + 204, 198, 207, 195, 194, 196, 195, 200, 202, 193, 190, 191, 189, 183, 177, 173, 28.17086 + 174, 176, 170, 160, 153, 144, 126, 156, 153, 158, 167, 164, 165, 172, 173, 168, 28.17087 + 162, 160, 161, 142, 114, 78, 115, 133, 136, 140, 127, 129, 132, 132, 130, 127, 28.17088 + 124, 124, 126, 126, 123, 118, 111, 107, 106, 107, 116, 99, 108, 102, 107, 106, 28.17089 + 102, 100, 102, 102, 101, 102, 104, 105, 102, 98, 98, 102, 109, 108, 115, 111, 28.17090 + 110, 116, 113, 107, 112, 112, 116, 118, 117, 117, 121, 119, 115, 120, 117, 114, 28.17091 + 113, 114, 116, 115, 114, 120, 114, 113, 117, 118, 114, 113, 116, 124, 126, 130, 28.17092 + 133, 136, 136, 136, 134, 144, 151, 154, 153, 158, 170, 179, 179, 181, 184, 188, 28.17093 + 190, 189, 187, 186, 185, 185, 186, 187, 188, 188, 187, 183, 180, 187, 186, 184, 28.17094 + 182, 182, 184, 186, 188, 183, 183, 183, 185, 185, 181, 173, 168, 162, 160, 157, 28.17095 + 154, 153, 153, 155, 156, 160, 160, 162, 163, 164, 164, 165, 165, 173, 172, 171, 28.17096 + 171, 171, 173, 174, 175, 174, 174, 175, 176, 176, 176, 176, 177, 180, 179, 177, 28.17097 + 177, 179, 180, 180, 179, 177, 174, 171, 172, 175, 177, 175, 173, 169, 180, 191, 28.17098 + 196, 199, 203, 204, 203, 200, 198, 203, 202, 192, 195, 205, 206, 199, 197, 191, 28.17099 + 186, 183, 181, 179, 179, 163, 168, 173, 158, 125, 149, 157, 176, 166, 162, 162, 28.17100 + 169, 171, 167, 161, 158, 157, 142, 124, 79, 109, 130, 129, 139, 127, 131, 134, 28.17101 + 135, 134, 133, 132, 132, 126, 125, 124, 125, 125, 124, 121, 119, 115, 110, 99, 28.17102 + 104, 109, 109, 105, 103, 105, 105, 103, 104, 106, 106, 105, 106, 109, 113, 116, 28.17103 + 115, 120, 115, 112, 117, 115, 110, 116, 117, 120, 121, 118, 118, 121, 121, 117, 28.17104 + 122, 118, 115, 114, 116, 118, 118, 118, 116, 114, 115, 118, 119, 118, 119, 121, 28.17105 + 128, 134, 139, 139, 140, 143, 144, 142, 150, 155, 158, 158, 163, 173, 178, 178, 28.17106 + 182, 185, 188, 189, 188, 186, 186, 186, 187, 184, 183, 186, 190, 190, 186, 181, 28.17107 + 186, 184, 183, 182, 181, 180, 180, 180, 179, 178, 180, 185, 190, 190, 184, 177, 28.17108 + 171, 172, 173, 172, 169, 164, 159, 155, 156, 156, 156, 157, 158, 160, 162, 163, 28.17109 + 169, 169, 167, 166, 166, 166, 167, 168, 167, 167, 166, 166, 166, 168, 169, 169, 28.17110 + 169, 168, 169, 172, 176, 178, 179, 178, 176, 174, 172, 172, 173, 175, 176, 176, 28.17111 + 179, 192, 202, 203, 201, 203, 205, 206, 208, 199, 198, 199, 196, 200, 204, 197, 28.17112 + 199, 195, 188, 184, 181, 179, 177, 176, 169, 169, 169, 155, 125, 150, 154, 168, 28.17113 + 169, 162, 161, 166, 170, 167, 161, 158, 147, 136, 131, 84, 110, 129, 118, 129, 28.17114 + 137, 137, 136, 136, 135, 134, 132, 131, 136, 133, 131, 133, 136, 136, 129, 123, 28.17115 + 114, 133, 120, 100, 106, 107, 104, 103, 107, 108, 106, 107, 106, 105, 108, 112, 28.17116 + 116, 117, 117, 110, 116, 113, 112, 119, 117, 112, 118, 117, 120, 120, 117, 118, 28.17117 + 122, 122, 120, 122, 118, 115, 114, 117, 120, 120, 121, 114, 116, 116, 114, 116, 28.17118 + 120, 123, 124, 132, 141, 149, 148, 148, 153, 158, 159, 157, 163, 167, 167, 167, 28.17119 + 171, 173, 174, 179, 182, 184, 185, 185, 184, 185, 187, 187, 185, 185, 185, 186, 28.17120 + 186, 185, 183, 182, 181, 181, 180, 179, 178, 176, 174, 179, 179, 180, 182, 184, 28.17121 + 185, 184, 184, 188, 187, 185, 183, 179, 175, 171, 169, 164, 162, 159, 157, 157, 28.17122 + 158, 160, 161, 163, 162, 161, 160, 161, 162, 164, 166, 164, 162, 160, 159, 160, 28.17123 + 162, 163, 166, 167, 167, 168, 171, 175, 176, 175, 174, 175, 175, 175, 174, 175, 28.17124 + 178, 182, 186, 191, 199, 205, 204, 202, 203, 204, 203, 212, 197, 191, 195, 198, 28.17125 + 203, 201, 187, 195, 194, 190, 183, 176, 172, 174, 177, 175, 166, 158, 148, 128, 28.17126 + 157, 155, 160, 173, 165, 161, 166, 170, 168, 164, 161, 149, 135, 131, 81, 110, 28.17127 + 134, 118, 129, 124, 123, 123, 128, 135, 140, 142, 142, 143, 140, 137, 136, 136, 28.17128 + 135, 131, 127, 118, 137, 127, 95, 102, 105, 103, 104, 106, 109, 108, 111, 107, 28.17129 + 104, 106, 111, 115, 113, 110, 113, 120, 118, 117, 122, 118, 110, 115, 115, 118, 28.17130 + 117, 114, 116, 121, 123, 121, 120, 117, 113, 113, 115, 118, 119, 121, 119, 123, 28.17131 + 121, 114, 113, 123, 127, 126, 126, 141, 153, 153, 152, 156, 160, 161, 162, 173, 28.17132 + 180, 179, 175, 172, 173, 174, 180, 182, 184, 186, 185, 187, 188, 192, 184, 186, 28.17133 + 186, 184, 180, 180, 180, 182, 182, 182, 183, 184, 184, 181, 178, 177, 184, 186, 28.17134 + 186, 183, 179, 180, 185, 189, 200, 194, 184, 177, 173, 175, 178, 182, 184, 181, 28.17135 + 174, 169, 165, 165, 164, 166, 160, 161, 161, 163, 165, 168, 172, 173, 170, 168, 28.17136 + 165, 162, 163, 167, 169, 172, 178, 178, 179, 180, 181, 180, 176, 173, 177, 178, 28.17137 + 179, 178, 178, 182, 190, 197, 198, 201, 202, 200, 200, 203, 201, 196, 198, 200, 28.17138 + 209, 206, 191, 190, 200, 202, 197, 199, 199, 190, 177, 172, 178, 186, 166, 171, 28.17139 + 173, 158, 126, 152, 161, 181, 176, 167, 162, 166, 170, 170, 166, 165, 163, 139, 28.17140 + 128, 73, 107, 139, 125, 138, 137, 131, 124, 123, 125, 127, 125, 121, 129, 129, 28.17141 + 127, 128, 128, 131, 132, 133, 136, 136, 127, 104, 105, 105, 103, 102, 102, 106, 28.17142 + 109, 113, 111, 109, 108, 108, 110, 112, 114, 114, 114, 114, 113, 113, 114, 115, 28.17143 + 115, 123, 118, 113, 113, 117, 119, 117, 114, 113, 115, 115, 115, 118, 121, 115, 28.17144 + 109, 113, 119, 122, 105, 107, 120, 115, 130, 139, 144, 151, 155, 156, 159, 163, 28.17145 + 166, 175, 175, 177, 180, 180, 178, 173, 169, 171, 175, 178, 183, 183, 185, 185, 28.17146 + 188, 180, 183, 186, 192, 195, 195, 188, 183, 186, 183, 180, 177, 176, 176, 178, 28.17147 + 180, 174, 179, 185, 186, 183, 180, 178, 178, 182, 189, 190, 182, 171, 172, 179, 28.17148 + 185, 186, 190, 192, 192, 186, 181, 175, 173, 176, 176, 173, 171, 169, 167, 165, 28.17149 + 165, 164, 165, 167, 171, 177, 184, 188, 191, 196, 191, 188, 188, 185, 177, 171, 28.17150 + 170, 177, 181, 186, 188, 189, 190, 192, 195, 197, 203, 207, 205, 203, 203, 201, 28.17151 + 197, 192, 199, 199, 194, 196, 206, 204, 195, 200, 198, 191, 183, 182, 185, 186, 28.17152 + 183, 172, 170, 168, 155, 139, 145, 157, 155, 172, 170, 168, 167, 167, 168, 168, 28.17153 + 169, 157, 144, 137, 89, 100, 119, 131, 124, 130, 128, 125, 121, 119, 119, 119, 28.17154 + 119, 120, 122, 124, 128, 130, 132, 132, 132, 125, 127, 130, 112, 115, 113, 111, 28.17155 + 108, 108, 108, 110, 108, 107, 105, 105, 107, 109, 112, 114, 111, 112, 110, 111, 28.17156 + 111, 113, 113, 114, 109, 108, 105, 107, 108, 110, 105, 102, 113, 112, 106, 100, 28.17157 + 101, 108, 112, 111, 113, 107, 111, 109, 117, 119, 108, 127, 141, 147, 154, 157, 28.17158 + 158, 159, 164, 167, 166, 167, 170, 174, 176, 173, 168, 162, 166, 168, 173, 177, 28.17159 + 181, 182, 181, 180, 180, 181, 183, 187, 191, 191, 188, 184, 190, 188, 185, 183, 28.17160 + 181, 181, 182, 182, 181, 180, 178, 174, 172, 174, 179, 185, 182, 187, 188, 183, 28.17161 + 179, 182, 186, 187, 191, 190, 188, 184, 180, 179, 181, 183, 183, 182, 180, 179, 28.17162 + 181, 183, 186, 188, 189, 188, 188, 188, 190, 192, 194, 196, 198, 193, 192, 194, 28.17163 + 194, 190, 188, 188, 189, 191, 193, 193, 192, 193, 197, 200, 201, 206, 207, 203, 28.17164 + 201, 202, 202, 200, 202, 207, 205, 198, 198, 204, 203, 194, 196, 196, 191, 184, 28.17165 + 182, 184, 182, 177, 170, 166, 162, 147, 132, 139, 154, 156, 170, 168, 167, 167, 28.17166 + 168, 169, 169, 168, 159, 150, 140, 99, 103, 127, 132, 128, 128, 127, 127, 125, 28.17167 + 123, 121, 118, 117, 120, 120, 119, 119, 120, 122, 124, 125, 126, 127, 129, 108, 28.17168 + 112, 112, 111, 108, 107, 105, 107, 110, 110, 108, 108, 109, 110, 112, 114, 108, 28.17169 + 108, 108, 109, 110, 111, 113, 114, 114, 114, 115, 115, 113, 110, 105, 102, 105, 28.17170 + 105, 100, 92, 89, 96, 103, 105, 101, 96, 107, 108, 106, 98, 95, 129, 144, 28.17171 + 150, 157, 160, 160, 161, 165, 167, 165, 167, 172, 177, 179, 177, 173, 167, 158, 28.17172 + 158, 163, 172, 181, 186, 186, 184, 182, 182, 182, 184, 188, 190, 190, 189, 188, 28.17173 + 187, 186, 184, 182, 181, 179, 179, 183, 180, 176, 171, 169, 171, 177, 183, 179, 28.17174 + 182, 183, 183, 184, 189, 189, 185, 190, 189, 186, 182, 180, 180, 184, 187, 190, 28.17175 + 188, 187, 187, 189, 194, 200, 204, 202, 200, 198, 196, 195, 195, 195, 195, 196, 28.17176 + 191, 189, 193, 195, 194, 195, 197, 200, 200, 199, 197, 195, 196, 199, 202, 204, 28.17177 + 207, 206, 201, 198, 201, 202, 201, 205, 208, 205, 197, 198, 203, 202, 196, 193, 28.17178 + 194, 191, 186, 184, 184, 180, 174, 174, 167, 161, 146, 131, 139, 158, 163, 166, 28.17179 + 165, 165, 167, 169, 170, 169, 168, 157, 154, 140, 109, 100, 132, 129, 129, 132, 28.17180 + 133, 134, 134, 132, 128, 124, 122, 126, 124, 121, 119, 118, 120, 122, 125, 126, 28.17181 + 125, 125, 100, 104, 107, 109, 108, 107, 106, 107, 112, 112, 110, 108, 107, 108, 28.17182 + 107, 108, 107, 108, 108, 109, 111, 113, 115, 116, 111, 113, 113, 111, 105, 100, 28.17183 + 96, 94, 99, 106, 108, 105, 100, 102, 103, 103, 106, 101, 106, 102, 102, 101, 28.17184 + 98, 128, 145, 151, 157, 161, 161, 161, 164, 166, 170, 171, 174, 179, 183, 183, 28.17185 + 181, 177, 165, 162, 162, 169, 179, 187, 188, 186, 184, 183, 182, 183, 185, 189, 28.17186 + 192, 193, 187, 187, 187, 186, 184, 182, 179, 177, 180, 180, 180, 178, 176, 173, 28.17187 + 172, 171, 172, 177, 180, 180, 182, 186, 186, 182, 185, 187, 189, 189, 187, 184, 28.17188 + 184, 184, 191, 191, 190, 190, 191, 194, 199, 201, 199, 198, 196, 195, 195, 196, 28.17189 + 197, 197, 197, 191, 188, 190, 191, 191, 193, 196, 201, 201, 200, 199, 198, 198, 28.17190 + 198, 199, 202, 205, 205, 199, 197, 199, 200, 198, 198, 199, 196, 192, 194, 201, 28.17191 + 202, 199, 192, 192, 190, 185, 184, 186, 183, 177, 175, 167, 161, 149, 135, 141, 28.17192 + 159, 166, 163, 163, 164, 167, 170, 171, 169, 167, 160, 161, 142, 116, 97, 135, 28.17193 + 128, 134, 133, 134, 135, 135, 134, 131, 128, 125, 129, 127, 125, 123, 122, 122, 28.17194 + 124, 125, 124, 122, 120, 104, 108, 111, 114, 113, 113, 111, 112, 109, 109, 108, 28.17195 + 106, 105, 106, 106, 105, 110, 111, 111, 113, 115, 117, 119, 120, 117, 118, 118, 28.17196 + 115, 111, 107, 106, 106, 110, 118, 123, 121, 117, 116, 115, 112, 108, 107, 108, 28.17197 + 101, 113, 126, 115, 125, 143, 149, 156, 160, 160, 160, 161, 163, 170, 170, 172, 28.17198 + 175, 179, 181, 181, 180, 182, 174, 168, 168, 174, 179, 180, 179, 182, 181, 181, 28.17199 + 180, 182, 185, 189, 192, 191, 191, 192, 191, 190, 187, 184, 182, 180, 180, 181, 28.17200 + 180, 178, 173, 167, 163, 162, 170, 177, 177, 178, 182, 185, 186, 188, 190, 191, 28.17201 + 191, 188, 186, 185, 185, 189, 190, 191, 193, 194, 194, 195, 195, 195, 195, 195, 28.17202 + 195, 196, 198, 200, 201, 201, 194, 190, 192, 193, 193, 195, 198, 197, 198, 200, 28.17203 + 202, 202, 201, 199, 197, 196, 201, 202, 198, 196, 197, 196, 194, 194, 193, 191, 28.17204 + 189, 192, 198, 200, 198, 189, 189, 185, 180, 181, 184, 184, 180, 170, 162, 160, 28.17205 + 151, 137, 139, 155, 161, 162, 163, 164, 167, 170, 171, 170, 168, 166, 168, 147, 28.17206 + 118, 96, 133, 129, 137, 130, 130, 130, 130, 129, 128, 127, 127, 125, 126, 126, 28.17207 + 126, 126, 125, 124, 124, 125, 123, 120, 109, 112, 115, 115, 114, 112, 111, 111, 28.17208 + 110, 111, 111, 113, 114, 115, 115, 116, 114, 115, 115, 116, 118, 120, 122, 124, 28.17209 + 126, 126, 126, 126, 127, 127, 127, 127, 120, 124, 124, 119, 116, 119, 120, 118, 28.17210 + 71, 95, 115, 104, 102, 111, 109, 127, 140, 147, 155, 159, 160, 159, 160, 162, 28.17211 + 171, 171, 171, 175, 178, 180, 179, 178, 176, 171, 166, 165, 170, 176, 181, 182, 28.17212 + 177, 178, 179, 179, 178, 180, 183, 186, 189, 189, 190, 190, 189, 187, 184, 183, 28.17213 + 185, 181, 177, 174, 173, 171, 169, 168, 157, 165, 171, 171, 172, 179, 187, 191, 28.17214 + 193, 192, 189, 186, 183, 184, 188, 191, 187, 189, 192, 195, 196, 196, 195, 195, 28.17215 + 194, 193, 193, 193, 193, 195, 197, 198, 197, 191, 188, 190, 193, 193, 196, 199, 28.17216 + 197, 198, 201, 204, 206, 204, 200, 196, 192, 197, 199, 196, 195, 196, 195, 193, 28.17217 + 197, 195, 192, 191, 192, 194, 194, 193, 186, 185, 182, 177, 177, 181, 182, 178, 28.17218 + 171, 163, 162, 157, 142, 141, 154, 160, 164, 164, 164, 167, 170, 171, 171, 169, 28.17219 + 162, 163, 150, 112, 93, 121, 121, 128, 129, 129, 129, 130, 131, 131, 131, 132, 28.17220 + 128, 129, 130, 131, 131, 130, 129, 129, 128, 127, 125, 109, 111, 113, 113, 111, 28.17221 + 110, 110, 111, 114, 115, 116, 119, 121, 122, 123, 123, 119, 119, 119, 120, 122, 28.17222 + 123, 125, 126, 119, 118, 119, 122, 126, 126, 122, 118, 122, 122, 118, 113, 113, 28.17223 + 118, 117, 115, 68, 85, 106, 98, 91, 92, 98, 129, 138, 145, 154, 159, 160, 28.17224 + 160, 161, 163, 169, 172, 175, 179, 181, 180, 177, 173, 168, 167, 167, 168, 171, 28.17225 + 176, 181, 184, 176, 179, 182, 182, 180, 179, 180, 182, 186, 186, 186, 186, 185, 28.17226 + 185, 184, 183, 188, 183, 177, 175, 176, 178, 178, 177, 161, 163, 162, 160, 164, 28.17227 + 173, 179, 180, 187, 187, 186, 185, 183, 184, 187, 190, 185, 187, 188, 190, 192, 28.17228 + 192, 192, 192, 192, 191, 190, 189, 190, 191, 192, 193, 191, 186, 184, 187, 190, 28.17229 + 190, 191, 195, 199, 199, 199, 202, 204, 203, 199, 195, 193, 197, 197, 193, 192, 28.17230 + 195, 197, 197, 198, 195, 193, 192, 192, 190, 188, 187, 187, 188, 185, 181, 181, 28.17231 + 182, 180, 174, 175, 165, 164, 159, 144, 141, 154, 161, 168, 167, 165, 166, 169, 28.17232 + 171, 171, 171, 157, 157, 155, 108, 97, 112, 115, 116, 121, 124, 128, 131, 133, 28.17233 + 133, 132, 131, 133, 133, 132, 132, 131, 131, 131, 132, 129, 129, 129, 108, 110, 28.17234 + 113, 113, 113, 114, 115, 118, 113, 113, 115, 116, 117, 118, 116, 117, 121, 122, 28.17235 + 121, 123, 123, 126, 126, 128, 126, 125, 125, 130, 132, 131, 122, 114, 123, 123, 28.17236 + 121, 119, 121, 123, 118, 112, 118, 91, 81, 86, 107, 115, 105, 122, 139, 145, 28.17237 + 154, 160, 161, 161, 163, 164, 165, 168, 175, 180, 182, 178, 171, 164, 176, 177, 28.17238 + 177, 175, 173, 171, 172, 173, 178, 182, 186, 187, 184, 182, 182, 182, 188, 188, 28.17239 + 188, 188, 188, 188, 188, 188, 186, 184, 182, 183, 186, 187, 185, 183, 170, 165, 28.17240 + 156, 151, 156, 166, 168, 165, 175, 180, 186, 190, 189, 187, 185, 184, 184, 184, 28.17241 + 183, 183, 183, 184, 185, 186, 193, 193, 192, 191, 192, 193, 195, 196, 194, 189, 28.17242 + 186, 189, 190, 189, 189, 192, 201, 199, 197, 197, 199, 199, 196, 193, 195, 197, 28.17243 + 196, 191, 190, 196, 200, 201, 195, 192, 190, 191, 191, 188, 185, 184, 191, 193, 28.17244 + 192, 188, 187, 186, 180, 172, 173, 161, 159, 154, 138, 135, 149, 157, 170, 169, 28.17245 + 166, 166, 169, 171, 172, 172, 160, 161, 167, 114, 110, 114, 119, 115, 109, 114, 28.17246 + 120, 125, 128, 127, 124, 122, 133, 131, 128, 125, 123, 124, 126, 127, 125, 128, 28.17247 + 130, 112, 114, 115, 116, 115, 113, 111, 110, 122, 117, 105, 120, 111, 118, 113, 28.17248 + 125, 120, 113, 103, 106, 110, 116, 112, 110, 119, 129, 130, 125, 117, 121, 122, 28.17249 + 122, 124, 121, 121, 121, 120, 118, 117, 117, 124, 126, 119, 112, 102, 90, 95, 28.17250 + 116, 137, 145, 149, 154, 163, 159, 155, 162, 165, 170, 176, 179, 178, 175, 171, 28.17251 + 170, 175, 176, 176, 175, 173, 173, 175, 177, 176, 181, 187, 192, 193, 189, 184, 28.17252 + 180, 181, 182, 184, 188, 190, 188, 183, 179, 179, 186, 191, 188, 179, 173, 173, 28.17253 + 176, 179, 173, 159, 155, 161, 158, 155, 164, 169, 175, 183, 189, 186, 178, 173, 28.17254 + 175, 177, 179, 185, 191, 188, 179, 178, 183, 193, 188, 184, 184, 189, 193, 194, 28.17255 + 194, 195, 190, 186, 186, 190, 195, 197, 197, 201, 202, 201, 199, 196, 194, 195, 28.17256 + 197, 197, 197, 196, 195, 195, 194, 193, 193, 195, 194, 194, 195, 194, 191, 185, 28.17257 + 181, 186, 182, 180, 183, 184, 180, 177, 178, 172, 169, 164, 156, 144, 137, 142, 28.17258 + 152, 164, 164, 163, 165, 168, 170, 171, 172, 155, 155, 162, 93, 127, 115, 111, 28.17259 + 123, 115, 116, 117, 121, 123, 123, 121, 118, 121, 118, 115, 114, 115, 119, 123, 28.17260 + 127, 122, 125, 127, 112, 113, 113, 113, 111, 109, 108, 107, 106, 112, 105, 112, 28.17261 + 101, 111, 102, 103, 123, 121, 113, 104, 97, 96, 101, 106, 98, 103, 105, 104, 28.17262 + 107, 113, 114, 110, 104, 107, 118, 129, 129, 123, 118, 121, 103, 119, 125, 126, 28.17263 + 129, 128, 124, 128, 134, 144, 148, 152, 160, 157, 154, 161, 165, 169, 175, 177, 28.17264 + 177, 174, 172, 172, 174, 176, 177, 177, 176, 176, 177, 179, 173, 176, 181, 185, 28.17265 + 188, 188, 187, 186, 187, 183, 178, 177, 179, 182, 185, 186, 183, 177, 174, 178, 28.17266 + 186, 187, 180, 172, 168, 176, 176, 169, 160, 146, 141, 149, 160, 173, 176, 168, 28.17267 + 175, 191, 189, 173, 179, 182, 187, 189, 183, 179, 186, 198, 185, 185, 186, 187, 28.17268 + 188, 190, 193, 195, 202, 197, 190, 188, 189, 192, 193, 194, 195, 196, 197, 196, 28.17269 + 195, 195, 197, 198, 197, 197, 196, 195, 195, 194, 193, 193, 196, 195, 194, 192, 28.17270 + 190, 185, 178, 173, 178, 174, 174, 178, 179, 176, 173, 174, 176, 171, 164, 153, 28.17271 + 143, 138, 146, 158, 163, 165, 166, 169, 171, 171, 169, 168, 158, 159, 152, 106, 28.17272 + 131, 118, 112, 121, 118, 117, 116, 118, 120, 120, 119, 117, 120, 121, 122, 122, 28.17273 + 120, 118, 116, 115, 119, 124, 126, 113, 113, 113, 111, 111, 111, 112, 112, 104, 28.17274 + 128, 128, 121, 94, 104, 102, 109, 95, 96, 96, 96, 98, 102, 109, 114, 119, 28.17275 + 118, 114, 112, 114, 115, 109, 100, 111, 105, 110, 118, 117, 107, 109, 120, 120, 28.17276 + 136, 131, 119, 122, 126, 121, 116, 134, 144, 150, 152, 158, 156, 154, 161, 163, 28.17277 + 167, 172, 175, 175, 174, 174, 174, 174, 176, 179, 180, 179, 178, 178, 179, 175, 28.17278 + 176, 177, 179, 181, 184, 186, 188, 189, 184, 177, 173, 174, 178, 181, 183, 175, 28.17279 + 179, 183, 183, 181, 180, 182, 185, 179, 176, 171, 170, 170, 163, 150, 138, 144, 28.17280 + 146, 157, 171, 176, 174, 183, 197, 187, 179, 174, 176, 179, 178, 177, 177, 179, 28.17281 + 184, 189, 190, 188, 189, 195, 199, 204, 199, 192, 188, 188, 190, 193, 194, 194, 28.17282 + 196, 197, 197, 196, 195, 197, 199, 197, 197, 196, 195, 195, 194, 193, 193, 199, 28.17283 + 198, 196, 194, 191, 186, 180, 176, 177, 175, 176, 181, 183, 180, 177, 177, 183, 28.17284 + 176, 165, 152, 140, 137, 147, 161, 162, 166, 171, 174, 174, 171, 167, 166, 161, 28.17285 + 163, 135, 123, 136, 123, 117, 120, 118, 116, 113, 113, 116, 118, 119, 120, 117, 28.17286 + 119, 121, 123, 124, 124, 123, 122, 120, 122, 125, 110, 109, 109, 108, 109, 111, 28.17287 + 114, 115, 109, 118, 109, 109, 90, 100, 95, 101, 102, 95, 92, 100, 112, 115, 28.17288 + 104, 92, 100, 101, 103, 109, 116, 121, 120, 117, 127, 113, 111, 120, 120, 108, 28.17289 + 108, 116, 114, 123, 117, 110, 113, 113, 108, 110, 132, 146, 151, 151, 157, 157, 28.17290 + 156, 163, 163, 166, 170, 172, 173, 174, 176, 177, 175, 178, 181, 182, 180, 178, 28.17291 + 177, 177, 182, 181, 180, 179, 179, 180, 180, 181, 185, 184, 182, 181, 180, 178, 28.17292 + 174, 172, 172, 180, 186, 182, 172, 168, 174, 182, 181, 170, 163, 162, 165, 171, 28.17293 + 160, 139, 131, 129, 139, 158, 167, 164, 170, 185, 189, 186, 184, 186, 188, 186, 28.17294 + 183, 179, 181, 184, 188, 189, 191, 194, 200, 204, 200, 196, 190, 187, 187, 191, 28.17295 + 196, 199, 199, 201, 202, 201, 198, 196, 197, 197, 196, 196, 196, 195, 195, 194, 28.17296 + 194, 194, 194, 193, 193, 193, 193, 191, 187, 184, 182, 179, 180, 185, 187, 183, 28.17297 + 180, 180, 186, 179, 167, 153, 140, 135, 144, 158, 164, 169, 173, 175, 173, 170, 28.17298 + 167, 166, 162, 164, 120, 137, 138, 130, 126, 126, 118, 115, 112, 111, 114, 118, 28.17299 + 121, 123, 120, 119, 117, 116, 117, 121, 124, 127, 121, 123, 126, 100, 100, 97, 28.17300 + 96, 96, 97, 100, 102, 115, 97, 80, 107, 111, 115, 95, 92, 110, 104, 102, 28.17301 + 110, 120, 122, 111, 100, 98, 100, 105, 111, 116, 119, 121, 123, 121, 114, 121, 28.17302 + 138, 143, 128, 112, 106, 109, 114, 117, 123, 118, 93, 80, 90, 127, 144, 149, 28.17303 + 147, 153, 156, 156, 163, 163, 166, 169, 171, 173, 174, 177, 179, 177, 179, 182, 28.17304 + 182, 179, 176, 174, 174, 185, 185, 184, 183, 182, 179, 177, 176, 181, 181, 182, 28.17305 + 184, 184, 181, 176, 172, 180, 174, 169, 169, 174, 174, 169, 163, 165, 168, 176, 28.17306 + 164, 142, 140, 139, 123, 125, 142, 140, 126, 143, 180, 185, 164, 171, 180, 188, 28.17307 + 186, 180, 179, 185, 192, 184, 182, 182, 185, 192, 198, 201, 202, 197, 194, 190, 28.17308 + 187, 187, 190, 195, 199, 199, 201, 202, 202, 199, 198, 197, 198, 196, 196, 195, 28.17309 + 195, 195, 195, 194, 194, 188, 187, 187, 188, 189, 188, 186, 183, 181, 178, 178, 28.17310 + 182, 182, 178, 174, 174, 180, 174, 165, 153, 141, 135, 143, 155, 166, 170, 173, 28.17311 + 174, 170, 168, 168, 169, 161, 160, 117, 145, 139, 139, 136, 137, 126, 122, 117, 28.17312 + 114, 115, 117, 119, 119, 127, 125, 121, 118, 115, 115, 116, 117, 121, 123, 124, 28.17313 + 94, 92, 89, 86, 84, 84, 85, 86, 95, 91, 94, 129, 123, 115, 97, 109, 28.17314 + 100, 105, 108, 108, 107, 110, 117, 124, 120, 118, 118, 120, 119, 115, 116, 120, 28.17315 + 117, 114, 117, 126, 128, 118, 104, 94, 121, 116, 114, 118, 110, 81, 71, 89, 28.17316 + 120, 139, 145, 142, 148, 153, 155, 162, 164, 167, 171, 173, 174, 175, 177, 179, 28.17317 + 178, 180, 182, 181, 178, 176, 175, 175, 181, 182, 184, 185, 184, 182, 180, 178, 28.17318 + 181, 179, 178, 178, 181, 183, 184, 184, 177, 178, 178, 179, 178, 178, 177, 176, 28.17319 + 176, 174, 182, 170, 144, 134, 114, 71, 81, 101, 106, 92, 92, 121, 152, 166, 28.17320 + 180, 177, 171, 170, 178, 184, 182, 175, 183, 180, 179, 184, 193, 199, 201, 200, 28.17321 + 201, 199, 196, 191, 188, 188, 191, 194, 192, 195, 198, 199, 199, 198, 199, 200, 28.17322 + 195, 195, 195, 195, 195, 195, 195, 195, 193, 191, 189, 189, 189, 187, 184, 182, 28.17323 + 183, 178, 177, 179, 180, 176, 173, 174, 172, 168, 162, 153, 142, 137, 144, 155, 28.17324 + 165, 170, 173, 173, 169, 166, 168, 170, 157, 152, 129, 149, 140, 147, 142, 144, 28.17325 + 137, 132, 126, 122, 119, 117, 115, 113, 123, 126, 129, 131, 131, 128, 125, 122, 28.17326 + 119, 120, 122, 96, 96, 94, 93, 92, 92, 93, 94, 81, 95, 106, 129, 109, 28.17327 + 99, 90, 107, 111, 115, 114, 108, 97, 97, 104, 114, 100, 96, 95, 104, 112, 28.17328 + 116, 119, 123, 119, 121, 118, 112, 108, 109, 106, 102, 110, 106, 100, 104, 110, 28.17329 + 102, 104, 123, 116, 138, 145, 141, 146, 153, 158, 165, 166, 169, 173, 175, 176, 28.17330 + 176, 177, 178, 178, 180, 181, 180, 179, 178, 179, 181, 180, 181, 182, 183, 184, 28.17331 + 183, 182, 181, 183, 180, 177, 176, 179, 182, 184, 185, 175, 186, 196, 194, 184, 28.17332 + 179, 185, 193, 191, 175, 177, 174, 159, 152, 112, 39, 48, 41, 49, 58, 46, 28.17333 + 39, 74, 125, 173, 174, 175, 179, 188, 192, 183, 170, 179, 182, 187, 193, 198, 28.17334 + 201, 201, 201, 205, 205, 202, 197, 191, 188, 189, 191, 191, 194, 198, 200, 200, 28.17335 + 199, 199, 200, 195, 195, 195, 195, 195, 195, 195, 195, 198, 196, 193, 191, 190, 28.17336 + 188, 184, 182, 185, 180, 177, 180, 181, 179, 178, 180, 174, 170, 163, 153, 141, 28.17337 + 135, 142, 154, 161, 167, 173, 174, 170, 166, 167, 168, 152, 144, 149, 153, 143, 28.17338 + 153, 143, 146, 140, 136, 132, 128, 125, 121, 116, 112, 114, 118, 125, 131, 135, 28.17339 + 136, 135, 134, 122, 123, 124, 102, 102, 103, 105, 107, 110, 111, 113, 121, 117, 28.17340 + 104, 118, 116, 125, 105, 97, 99, 100, 102, 106, 112, 117, 120, 120, 110, 97, 28.17341 + 91, 100, 111, 114, 113, 114, 105, 124, 135, 130, 125, 129, 128, 123, 114, 119, 28.17342 + 115, 116, 125, 122, 114, 115, 117, 140, 148, 143, 149, 157, 162, 169, 166, 170, 28.17343 + 174, 178, 177, 177, 177, 178, 177, 179, 180, 180, 180, 181, 184, 187, 182, 182, 28.17344 + 181, 181, 181, 181, 181, 181, 184, 183, 181, 181, 180, 181, 178, 177, 185, 184, 28.17345 + 185, 188, 192, 191, 186, 181, 178, 171, 181, 177, 157, 154, 120, 52, 90, 65, 28.17346 + 50, 54, 60, 56, 57, 65, 100, 143, 183, 186, 168, 159, 168, 181, 177, 186, 28.17347 + 197, 204, 205, 204, 204, 205, 206, 207, 205, 201, 194, 190, 190, 192, 197, 200, 28.17348 + 203, 203, 202, 199, 198, 198, 195, 196, 196, 196, 196, 196, 195, 195, 194, 192, 28.17349 + 189, 187, 186, 185, 182, 179, 183, 178, 175, 177, 179, 178, 179, 183, 183, 176, 28.17350 + 166, 153, 139, 131, 138, 149, 157, 166, 175, 177, 173, 168, 165, 165, 148, 139, 28.17351 + 164, 156, 145, 157, 142, 145, 136, 134, 133, 132, 130, 127, 121, 118, 115, 114, 28.17352 + 116, 117, 120, 123, 127, 129, 127, 128, 128, 118, 117, 115, 114, 113, 113, 111, 28.17353 + 111, 116, 114, 111, 109, 108, 111, 116, 121, 120, 122, 111, 107, 115, 117, 118, 28.17354 + 126, 118, 112, 105, 102, 101, 103, 105, 110, 128, 123, 120, 116, 111, 110, 118, 28.17355 + 128, 120, 112, 112, 120, 121, 113, 109, 112, 118, 141, 143, 135, 141, 155, 158, 28.17356 + 160, 163, 170, 176, 177, 173, 171, 172, 174, 175, 180, 183, 185, 184, 183, 183, 28.17357 + 184, 182, 183, 184, 184, 185, 185, 184, 184, 182, 181, 179, 178, 177, 179, 179, 28.17358 + 180, 177, 183, 188, 190, 185, 181, 175, 175, 183, 166, 167, 161, 160, 149, 106, 28.17359 + 79, 127, 112, 89, 68, 54, 51, 53, 55, 48, 80, 84, 139, 156, 177, 189, 28.17360 + 183, 189, 196, 200, 199, 199, 203, 203, 201, 210, 209, 208, 203, 194, 188, 193, 28.17361 + 202, 193, 194, 195, 197, 198, 199, 200, 201, 195, 196, 197, 197, 195, 195, 196, 28.17362 + 198, 200, 192, 185, 187, 189, 186, 183, 182, 182, 183, 179, 180, 184, 178, 172, 28.17363 + 179, 179, 166, 174, 153, 148, 132, 154, 153, 158, 164, 171, 167, 162, 173, 176, 28.17364 + 160, 136, 155, 159, 144, 139, 149, 152, 144, 146, 147, 147, 139, 130, 124, 123, 28.17365 + 126, 124, 120, 118, 121, 119, 117, 123, 133, 127, 151, 132, 112, 113, 112, 112, 28.17366 + 111, 110, 109, 108, 103, 106, 109, 110, 111, 112, 113, 115, 110, 119, 115, 112, 28.17367 + 119, 119, 117, 124, 112, 118, 124, 127, 125, 120, 119, 119, 115, 113, 114, 121, 28.17368 + 122, 117, 113, 112, 112, 110, 114, 122, 122, 116, 120, 131, 117, 140, 144, 136, 28.17369 + 143, 155, 158, 160, 166, 171, 177, 177, 173, 171, 172, 173, 174, 178, 182, 184, 28.17370 + 183, 182, 183, 184, 185, 186, 186, 186, 185, 184, 183, 182, 183, 183, 181, 180, 28.17371 + 178, 179, 180, 180, 177, 180, 183, 183, 180, 178, 177, 178, 186, 166, 166, 157, 28.17372 + 158, 152, 133, 78, 112, 117, 122, 124, 117, 101, 80, 63, 46, 47, 53, 140, 28.17373 + 182, 195, 196, 198, 195, 201, 205, 203, 204, 207, 209, 207, 205, 206, 208, 207, 28.17374 + 200, 192, 193, 200, 193, 193, 194, 194, 194, 194, 194, 194, 194, 196, 197, 196, 28.17375 + 194, 193, 194, 196, 199, 192, 187, 189, 191, 188, 184, 183, 173, 179, 178, 177, 28.17376 + 178, 170, 168, 178, 178, 165, 170, 147, 138, 127, 150, 154, 182, 181, 181, 173, 28.17377 + 160, 162, 162, 148, 160, 153, 156, 164, 158, 145, 145, 156, 151, 123, 103, 105, 28.17378 + 113, 114, 116, 122, 132, 123, 115, 114, 115, 116, 123, 131, 132, 151, 141, 110, 28.17379 + 111, 112, 112, 112, 111, 108, 107, 113, 113, 111, 110, 109, 108, 107, 108, 111, 28.17380 + 107, 95, 99, 118, 124, 114, 111, 109, 114, 117, 114, 109, 107, 111, 117, 127, 28.17381 + 117, 110, 115, 121, 123, 120, 118, 124, 126, 130, 128, 113, 96, 94, 104, 118, 28.17382 + 139, 144, 137, 144, 153, 155, 159, 166, 171, 175, 177, 175, 172, 172, 174, 173, 28.17383 + 176, 180, 182, 182, 182, 183, 184, 188, 188, 188, 187, 186, 184, 183, 182, 184, 28.17384 + 184, 181, 179, 178, 178, 179, 179, 178, 178, 178, 177, 176, 176, 179, 181, 177, 28.17385 + 165, 171, 162, 163, 153, 130, 59, 124, 117, 110, 107, 110, 114, 114, 111, 125, 28.17386 + 97, 82, 144, 173, 175, 169, 174, 191, 198, 201, 199, 200, 204, 205, 204, 199, 28.17387 + 202, 209, 212, 206, 196, 194, 197, 198, 198, 198, 197, 196, 195, 193, 192, 193, 28.17388 + 194, 195, 194, 192, 191, 192, 194, 197, 191, 189, 192, 193, 189, 184, 183, 178, 28.17389 + 184, 184, 181, 178, 168, 167, 179, 178, 170, 172, 148, 134, 130, 156, 164, 159, 28.17390 + 158, 166, 171, 163, 158, 152, 142, 151, 158, 160, 156, 156, 160, 158, 152, 139, 28.17391 + 107, 90, 104, 116, 110, 107, 115, 126, 123, 123, 127, 128, 125, 124, 126, 130, 28.17392 + 138, 135, 110, 112, 113, 114, 113, 112, 110, 109, 119, 114, 106, 101, 100, 102, 28.17393 + 105, 108, 96, 109, 109, 103, 101, 100, 108, 128, 112, 115, 116, 113, 111, 114, 28.17394 + 120, 123, 118, 105, 96, 98, 104, 105, 105, 106, 106, 111, 119, 122, 112, 100, 28.17395 + 99, 105, 117, 137, 141, 137, 144, 152, 154, 159, 165, 169, 174, 176, 176, 175, 28.17396 + 177, 178, 174, 177, 180, 182, 182, 183, 185, 186, 188, 189, 189, 188, 187, 186, 28.17397 + 185, 184, 184, 183, 181, 179, 177, 177, 178, 178, 180, 179, 177, 175, 175, 175, 28.17398 + 177, 180, 173, 169, 173, 162, 163, 160, 104, 81, 126, 120, 114, 115, 120, 124, 28.17399 + 123, 120, 113, 105, 107, 141, 167, 187, 198, 210, 188, 193, 196, 194, 195, 199, 28.17400 + 201, 200, 198, 202, 208, 212, 207, 197, 193, 195, 199, 199, 200, 199, 198, 195, 28.17401 + 193, 192, 192, 194, 195, 194, 191, 190, 191, 192, 194, 190, 190, 194, 195, 189, 28.17402 + 184, 183, 188, 190, 186, 182, 180, 171, 166, 176, 176, 173, 173, 152, 133, 136, 28.17403 + 161, 172, 176, 167, 169, 172, 160, 151, 148, 142, 144, 156, 155, 144, 146, 158, 28.17404 + 153, 137, 126, 118, 113, 119, 115, 106, 108, 118, 119, 122, 124, 127, 125, 122, 28.17405 + 123, 125, 126, 122, 125, 112, 114, 114, 115, 115, 114, 113, 112, 105, 102, 96, 28.17406 + 96, 100, 106, 111, 114, 115, 116, 107, 108, 118, 120, 114, 117, 103, 111, 118, 28.17407 + 125, 132, 136, 130, 121, 128, 127, 131, 135, 133, 126, 120, 119, 111, 110, 112, 28.17408 + 115, 115, 113, 115, 119, 115, 133, 139, 137, 145, 151, 153, 160, 162, 165, 170, 28.17409 + 174, 177, 179, 181, 183, 177, 180, 182, 184, 183, 184, 186, 188, 186, 187, 188, 28.17410 + 188, 188, 188, 187, 188, 187, 186, 184, 182, 181, 180, 181, 181, 183, 182, 180, 28.17411 + 179, 178, 176, 174, 173, 170, 172, 165, 153, 153, 163, 75, 128, 122, 121, 120, 28.17412 + 122, 124, 121, 113, 104, 117, 118, 139, 160, 176, 176, 177, 184, 193, 198, 199, 28.17413 + 197, 196, 200, 203, 201, 203, 203, 207, 208, 203, 195, 192, 194, 193, 194, 195, 28.17414 + 195, 195, 193, 191, 189, 193, 194, 195, 194, 191, 190, 191, 192, 191, 189, 190, 28.17415 + 195, 195, 189, 185, 184, 190, 188, 179, 177, 182, 175, 168, 173, 170, 171, 167, 28.17416 + 151, 124, 131, 151, 160, 177, 161, 153, 150, 142, 144, 155, 158, 158, 141, 139, 28.17417 + 152, 151, 136, 127, 137, 133, 136, 129, 114, 102, 104, 114, 120, 118, 121, 121, 28.17418 + 114, 106, 106, 114, 122, 121, 123, 126, 114, 115, 115, 114, 115, 115, 116, 116, 28.17419 + 107, 107, 107, 112, 116, 119, 116, 113, 124, 119, 110, 116, 137, 137, 118, 106, 28.17420 + 116, 119, 119, 119, 126, 132, 125, 114, 124, 125, 127, 127, 120, 114, 116, 121, 28.17421 + 139, 129, 118, 111, 109, 110, 109, 109, 112, 129, 135, 137, 145, 151, 154, 162, 28.17422 + 162, 165, 169, 173, 177, 181, 183, 184, 180, 182, 183, 184, 184, 184, 186, 188, 28.17423 + 185, 186, 187, 188, 188, 188, 188, 188, 189, 189, 187, 186, 184, 185, 186, 187, 28.17424 + 185, 183, 181, 180, 178, 175, 170, 166, 156, 166, 164, 154, 148, 140, 51, 121, 28.17425 + 120, 115, 109, 107, 109, 117, 123, 125, 123, 104, 133, 161, 190, 183, 183, 200, 28.17426 + 197, 201, 201, 198, 197, 200, 202, 201, 206, 203, 203, 203, 199, 193, 192, 195, 28.17427 + 192, 193, 195, 197, 196, 195, 193, 191, 193, 194, 195, 194, 190, 189, 190, 191, 28.17428 + 191, 189, 192, 196, 196, 190, 187, 188, 190, 186, 176, 177, 186, 183, 175, 180, 28.17429 + 171, 174, 166, 151, 119, 131, 140, 147, 145, 141, 146, 151, 147, 154, 159, 156, 28.17430 + 144, 136, 134, 140, 143, 138, 135, 139, 135, 140, 134, 119, 116, 122, 118, 108, 28.17431 + 113, 123, 130, 124, 113, 107, 105, 105, 112, 124, 127, 115, 114, 113, 112, 112, 28.17432 + 114, 116, 117, 120, 120, 120, 124, 127, 127, 120, 116, 103, 128, 139, 131, 117, 28.17433 + 106, 113, 134, 136, 137, 129, 118, 121, 129, 130, 123, 133, 129, 124, 120, 114, 28.17434 + 115, 125, 136, 125, 121, 116, 114, 115, 117, 116, 112, 109, 126, 134, 137, 147, 28.17435 + 152, 155, 164, 167, 167, 169, 173, 177, 181, 182, 183, 181, 183, 184, 183, 182, 28.17436 + 182, 184, 186, 187, 188, 188, 188, 188, 187, 187, 186, 187, 186, 185, 184, 185, 28.17437 + 186, 187, 188, 186, 182, 179, 177, 176, 173, 168, 164, 148, 157, 159, 146, 138, 28.17438 + 103, 75, 101, 109, 115, 120, 125, 127, 129, 131, 132, 140, 121, 150, 159, 187, 28.17439 + 185, 187, 203, 197, 201, 201, 196, 194, 197, 198, 197, 203, 200, 199, 200, 198, 28.17440 + 193, 192, 196, 194, 196, 198, 199, 199, 197, 194, 192, 192, 193, 193, 192, 188, 28.17441 + 187, 187, 189, 193, 192, 194, 198, 197, 192, 191, 193, 192, 189, 180, 180, 187, 28.17442 + 183, 177, 183, 174, 177, 163, 152, 118, 135, 142, 148, 157, 163, 172, 170, 160, 28.17443 + 158, 151, 132, 123, 133, 133, 124, 127, 141, 141, 132, 130, 132, 133, 133, 135, 28.17444 + 134, 125, 115, 119, 126, 132, 130, 125, 121, 113, 104, 109, 116, 112, 116, 114, 28.17445 + 111, 110, 110, 113, 116, 118, 120, 117, 115, 118, 124, 128, 128, 125, 136, 128, 28.17446 + 110, 108, 124, 132, 125, 125, 108, 119, 124, 121, 123, 129, 126, 118, 110, 110, 28.17447 + 113, 116, 114, 111, 112, 118, 115, 121, 127, 130, 129, 123, 112, 102, 108, 124, 28.17448 + 132, 137, 148, 152, 155, 165, 170, 170, 171, 173, 177, 180, 180, 180, 182, 183, 28.17449 + 183, 182, 180, 180, 182, 185, 189, 189, 189, 188, 187, 186, 184, 183, 183, 182, 28.17450 + 181, 181, 182, 183, 185, 187, 185, 181, 176, 173, 172, 171, 168, 165, 160, 153, 28.17451 + 144, 122, 120, 80, 138, 121, 116, 117, 116, 112, 106, 107, 112, 117, 113, 129, 28.17452 + 177, 163, 183, 194, 193, 191, 200, 204, 203, 197, 195, 197, 198, 197, 200, 197, 28.17453 + 197, 199, 198, 194, 193, 196, 192, 194, 196, 197, 195, 193, 189, 187, 190, 191, 28.17454 + 192, 190, 187, 185, 185, 187, 196, 195, 197, 200, 199, 194, 194, 197, 190, 190, 28.17455 + 182, 178, 180, 172, 167, 177, 172, 174, 156, 147, 116, 139, 147, 152, 151, 152, 28.17456 + 153, 141, 133, 144, 149, 136, 138, 123, 121, 130, 127, 115, 115, 129, 133, 128, 28.17457 + 126, 128, 127, 124, 131, 145, 138, 131, 116, 106, 111, 123, 129, 127, 116, 108, 28.17458 + 96, 116, 116, 116, 116, 116, 117, 117, 118, 121, 120, 119, 109, 95, 100, 107, 28.17459 + 101, 93, 110, 115, 116, 119, 114, 112, 121, 130, 125, 126, 131, 125, 107, 98, 28.17460 + 100, 118, 116, 111, 107, 106, 110, 116, 120, 112, 116, 120, 124, 125, 126, 129, 28.17461 + 132, 116, 122, 133, 142, 147, 151, 154, 157, 170, 171, 173, 174, 176, 180, 185, 28.17462 + 189, 184, 183, 182, 181, 181, 182, 183, 184, 183, 183, 184, 186, 186, 189, 190, 28.17463 + 191, 181, 178, 184, 185, 176, 178, 185, 184, 180, 183, 183, 177, 173, 171, 167, 28.17464 + 162, 162, 130, 143, 127, 94, 119, 135, 115, 129, 128, 124, 121, 118, 118, 117, 28.17465 + 118, 102, 140, 166, 174, 180, 185, 186, 192, 196, 199, 200, 199, 195, 194, 196, 28.17466 + 199, 209, 204, 198, 196, 196, 195, 192, 188, 189, 191, 194, 196, 196, 195, 193, 28.17467 + 192, 198, 194, 190, 190, 192, 194, 192, 190, 201, 200, 199, 200, 200, 197, 191, 28.17468 + 186, 195, 192, 186, 180, 175, 173, 172, 173, 171, 154, 163, 136, 92, 148, 148, 28.17469 + 159, 153, 154, 155, 151, 143, 137, 135, 135, 138, 136, 135, 134, 129, 124, 127, 28.17470 + 134, 127, 122, 118, 121, 126, 129, 126, 122, 130, 131, 132, 127, 113, 104, 112, 28.17471 + 126, 116, 111, 106, 116, 117, 116, 116, 116, 116, 115, 116, 119, 117, 118, 112, 28.17472 + 104, 111, 118, 111, 101, 108, 104, 105, 115, 121, 124, 137, 121, 122, 123, 121, 28.17473 + 120, 121, 120, 118, 105, 111, 119, 120, 115, 109, 105, 102, 112, 122, 135, 140, 28.17474 + 132, 117, 101, 91, 126, 121, 122, 133, 139, 140, 145, 153, 163, 166, 171, 174, 28.17475 + 176, 178, 179, 182, 186, 185, 183, 183, 182, 184, 184, 186, 184, 186, 185, 186, 28.17476 + 184, 183, 181, 179, 190, 183, 186, 189, 184, 187, 190, 185, 185, 184, 177, 170, 28.17477 + 168, 169, 164, 158, 146, 143, 145, 122, 111, 124, 124, 130, 130, 131, 130, 128, 28.17478 + 126, 124, 122, 119, 112, 145, 168, 175, 183, 187, 188, 191, 195, 197, 199, 200, 28.17479 + 199, 198, 198, 199, 199, 198, 197, 197, 197, 194, 191, 188, 192, 191, 190, 189, 28.17480 + 189, 190, 192, 193, 196, 190, 183, 181, 183, 191, 199, 203, 203, 203, 202, 198, 28.17481 + 193, 190, 189, 189, 191, 186, 178, 176, 176, 177, 175, 174, 188, 169, 167, 123, 28.17482 + 100, 144, 141, 146, 144, 143, 138, 136, 138, 148, 161, 172, 154, 149, 147, 147, 28.17483 + 145, 139, 137, 138, 129, 127, 125, 127, 130, 134, 139, 141, 147, 145, 143, 139, 28.17484 + 126, 111, 102, 102, 117, 138, 129, 119, 118, 118, 119, 117, 118, 117, 118, 122, 28.17485 + 117, 119, 118, 115, 121, 126, 118, 113, 110, 98, 90, 98, 100, 100, 107, 114, 28.17486 + 125, 129, 122, 120, 125, 119, 106, 118, 110, 98, 87, 86, 96, 113, 126, 136, 28.17487 + 128, 114, 104, 104, 115, 132, 144, 117, 112, 114, 127, 137, 142, 151, 161, 159, 28.17488 + 163, 171, 177, 178, 178, 177, 177, 184, 183, 183, 182, 182, 184, 183, 185, 180, 28.17489 + 182, 184, 186, 185, 184, 181, 180, 186, 177, 178, 183, 180, 185, 184, 175, 179, 28.17490 + 180, 176, 175, 174, 171, 158, 143, 142, 154, 134, 107, 127, 134, 115, 139, 136, 28.17491 + 139, 141, 143, 141, 137, 133, 130, 122, 150, 167, 174, 184, 189, 187, 189, 192, 28.17492 + 193, 197, 200, 203, 202, 199, 196, 189, 193, 197, 198, 197, 193, 190, 189, 192, 28.17493 + 192, 190, 189, 189, 190, 191, 191, 186, 189, 193, 196, 196, 198, 200, 201, 207, 28.17494 + 208, 206, 200, 193, 191, 194, 199, 192, 184, 177, 176, 179, 181, 176, 173, 169, 28.17495 + 158, 154, 103, 119, 154, 151, 147, 151, 148, 138, 129, 120, 114, 114, 114, 146, 28.17496 + 141, 139, 147, 151, 149, 145, 144, 137, 139, 142, 143, 143, 145, 149, 153, 129, 28.17497 + 125, 124, 129, 129, 122, 111, 105, 107, 139, 134, 119, 120, 121, 121, 121, 122, 28.17498 + 123, 123, 128, 119, 122, 123, 120, 124, 125, 117, 123, 124, 114, 108, 112, 107, 28.17499 + 101, 104, 89, 97, 103, 104, 110, 120, 124, 120, 122, 119, 115, 112, 108, 104, 28.17500 + 98, 93, 102, 110, 121, 127, 124, 115, 104, 96, 97, 107, 113, 116, 123, 135, 28.17501 + 144, 148, 154, 161, 168, 173, 175, 175, 175, 175, 181, 179, 179, 179, 179, 180, 28.17502 + 180, 181, 177, 179, 180, 180, 180, 180, 179, 179, 183, 175, 179, 184, 179, 182, 28.17503 + 184, 176, 190, 185, 175, 167, 166, 172, 174, 171, 153, 150, 122, 97, 129, 141, 28.17504 + 119, 136, 140, 142, 144, 146, 145, 141, 137, 134, 126, 148, 163, 171, 183, 188, 28.17505 + 185, 189, 191, 191, 195, 200, 204, 202, 196, 190, 189, 193, 197, 198, 194, 191, 28.17506 + 191, 192, 191, 193, 195, 196, 196, 194, 192, 190, 187, 193, 200, 203, 200, 197, 28.17507 + 196, 197, 208, 207, 204, 200, 197, 196, 198, 200, 194, 189, 184, 181, 180, 180, 28.17508 + 177, 174, 167, 169, 162, 98, 138, 149, 142, 130, 128, 131, 135, 138, 139, 139, 28.17509 + 139, 139, 127, 124, 124, 132, 137, 136, 136, 137, 133, 135, 139, 142, 140, 137, 28.17510 + 133, 131, 139, 133, 129, 130, 131, 127, 119, 113, 111, 124, 123, 116, 118, 119, 28.17511 + 120, 122, 123, 125, 126, 129, 119, 121, 125, 121, 123, 122, 115, 103, 113, 113, 28.17512 + 112, 119, 118, 116, 123, 133, 120, 106, 98, 89, 83, 85, 93, 107, 111, 120, 28.17513 + 133, 140, 131, 110, 90, 121, 116, 110, 107, 108, 113, 118, 122, 118, 137, 137, 28.17514 + 118, 113, 131, 141, 137, 149, 155, 159, 164, 166, 169, 170, 172, 176, 177, 176, 28.17515 + 178, 178, 177, 178, 178, 180, 179, 177, 175, 174, 173, 172, 173, 172, 169, 176, 28.17516 + 178, 170, 172, 177, 174, 175, 185, 190, 186, 180, 175, 169, 164, 149, 134, 129, 28.17517 + 118, 126, 141, 134, 136, 136, 136, 137, 135, 135, 133, 132, 131, 129, 148, 160, 28.17518 + 170, 185, 189, 188, 194, 193, 193, 195, 199, 201, 199, 192, 187, 196, 198, 198, 28.17519 + 195, 191, 190, 192, 196, 195, 195, 195, 195, 195, 194, 194, 194, 199, 197, 193, 28.17520 + 188, 184, 188, 197, 205, 209, 204, 200, 199, 201, 200, 194, 188, 188, 189, 188, 28.17521 + 184, 179, 176, 178, 181, 166, 173, 161, 95, 144, 145, 147, 139, 155, 150, 141, 28.17522 + 132, 125, 120, 119, 117, 129, 127, 126, 126, 125, 122, 124, 130, 138, 136, 132, 28.17523 + 132, 134, 133, 127, 123, 127, 129, 130, 131, 131, 129, 125, 121, 114, 109, 103, 28.17524 + 114, 115, 117, 119, 120, 123, 123, 124, 125, 116, 119, 125, 122, 122, 125, 122, 28.17525 + 102, 109, 104, 100, 104, 103, 103, 112, 111, 104, 107, 119, 119, 110, 109, 118, 28.17526 + 109, 102, 96, 102, 113, 121, 119, 113, 90, 95, 103, 116, 128, 136, 140, 140, 28.17527 + 134, 149, 143, 113, 105, 124, 138, 134, 147, 150, 155, 159, 162, 167, 171, 174, 28.17528 + 173, 174, 174, 175, 175, 175, 175, 174, 173, 174, 173, 174, 174, 175, 175, 174, 28.17529 + 167, 164, 171, 172, 164, 167, 175, 175, 166, 180, 189, 184, 167, 151, 135, 126, 28.17530 + 133, 123, 148, 148, 129, 139, 144, 143, 138, 137, 134, 132, 131, 130, 130, 130, 28.17531 + 131, 148, 161, 173, 187, 191, 190, 199, 196, 196, 196, 197, 198, 196, 192, 189, 28.17532 + 203, 201, 197, 193, 190, 191, 194, 197, 199, 196, 191, 188, 188, 192, 198, 202, 28.17533 + 197, 196, 194, 193, 193, 197, 202, 207, 215, 208, 203, 204, 208, 205, 194, 183, 28.17534 + 178, 183, 186, 184, 177, 175, 179, 186, 160, 160, 140, 86, 134, 137, 154, 152, 28.17535 + 148, 149, 149, 150, 150, 149, 145, 143, 134, 134, 135, 134, 132, 129, 135, 145, 28.17536 + 127, 117, 106, 103, 106, 112, 113, 112, 115, 127, 136, 142, 142, 142, 135, 129, 28.17537 + 131, 129, 112, 119, 120, 120, 121, 122, 122, 123, 124, 125, 117, 122, 128, 122, 28.17538 + 121, 128, 128, 133, 133, 120, 111, 114, 109, 103, 107, 116, 122, 131, 140, 137, 28.17539 + 126, 114, 108, 121, 118, 111, 106, 102, 97, 89, 82, 88, 91, 98, 108, 117, 28.17540 + 122, 122, 120, 121, 122, 117, 106, 105, 116, 124, 123, 136, 141, 146, 152, 156, 28.17541 + 162, 167, 170, 167, 167, 168, 169, 169, 168, 167, 168, 162, 163, 165, 167, 166, 28.17542 + 164, 160, 158, 158, 152, 155, 158, 153, 159, 168, 167, 168, 165, 150, 133, 123, 28.17543 + 127, 135, 140, 136, 129, 151, 149, 136, 142, 140, 145, 142, 141, 139, 137, 135, 28.17544 + 133, 132, 132, 129, 149, 163, 175, 186, 188, 188, 199, 197, 198, 198, 196, 195, 28.17545 + 195, 196, 198, 204, 200, 194, 191, 191, 193, 195, 196, 196, 195, 193, 193, 194, 28.17546 + 196, 200, 202, 192, 195, 201, 207, 210, 210, 206, 203, 209, 206, 203, 205, 207, 28.17547 + 204, 196, 189, 178, 181, 184, 183, 179, 179, 181, 185, 178, 166, 136, 95, 126, 28.17548 + 122, 134, 126, 123, 126, 133, 140, 143, 140, 132, 126, 135, 133, 137, 141, 144, 28.17549 + 143, 149, 156, 156, 151, 142, 139, 140, 145, 148, 150, 157, 164, 167, 163, 157, 28.17550 + 152, 139, 128, 148, 156, 142, 126, 127, 126, 126, 125, 126, 125, 125, 129, 121, 28.17551 + 126, 131, 121, 120, 127, 131, 131, 130, 122, 121, 131, 128, 117, 115, 121, 128, 28.17552 + 126, 118, 117, 125, 126, 119, 125, 124, 122, 117, 110, 107, 106, 108, 106, 104, 28.17553 + 106, 111, 119, 126, 129, 129, 134, 124, 123, 134, 140, 135, 129, 131, 121, 126, 28.17554 + 134, 141, 145, 150, 155, 158, 160, 159, 162, 163, 163, 162, 160, 161, 157, 158, 28.17555 + 158, 155, 148, 137, 125, 118, 118, 107, 107, 110, 112, 120, 127, 123, 113, 121, 28.17556 + 130, 137, 145, 152, 153, 150, 154, 142, 138, 131, 140, 147, 132, 138, 141, 141, 28.17557 + 140, 138, 136, 134, 132, 130, 128, 146, 162, 174, 184, 182, 184, 196, 198, 200, 28.17558 + 199, 197, 194, 196, 201, 206, 201, 197, 191, 190, 192, 195, 195, 195, 188, 193, 28.17559 + 200, 206, 207, 205, 200, 197, 201, 199, 197, 199, 203, 207, 208, 207, 193, 193, 28.17560 + 194, 196, 197, 196, 194, 192, 186, 186, 184, 184, 184, 183, 182, 181, 173, 159, 28.17561 + 132, 112, 139, 135, 141, 128, 135, 131, 128, 129, 132, 135, 138, 137, 139, 134, 28.17562 + 134, 140, 145, 145, 142, 143, 150, 153, 153, 152, 149, 148, 148, 148, 152, 154, 28.17563 + 152, 148, 149, 151, 145, 136, 130, 137, 135, 128, 124, 120, 124, 127, 125, 124, 28.17564 + 123, 127, 124, 123, 126, 126, 124, 124, 129, 131, 131, 129, 125, 122, 121, 123, 28.17565 + 124, 127, 126, 123, 121, 120, 123, 125, 128, 125, 128, 130, 132, 130, 126, 120, 28.17566 + 116, 109, 117, 113, 109, 115, 118, 124, 139, 129, 130, 132, 134, 135, 136, 136, 28.17567 + 135, 141, 136, 129, 124, 126, 134, 143, 150, 152, 151, 149, 145, 141, 143, 151, 28.17568 + 160, 149, 142, 127, 111, 108, 115, 124, 127, 138, 141, 144, 144, 141, 140, 141, 28.17569 + 144, 149, 149, 149, 150, 150, 150, 151, 152, 148, 149, 149, 149, 147, 146, 146, 28.17570 + 144, 146, 141, 139, 140, 140, 137, 139, 142, 137, 148, 160, 168, 179, 192, 196, 28.17571 + 194, 195, 192, 195, 201, 203, 199, 200, 205, 206, 196, 187, 185, 190, 193, 191, 28.17572 + 189, 192, 198, 199, 195, 196, 199, 197, 191, 190, 199, 206, 205, 199, 197, 203, 28.17573 + 210, 204, 197, 191, 194, 201, 203, 197, 190, 183, 183, 185, 187, 188, 187, 182, 28.17574 + 178, 165, 170, 99, 144, 131, 131, 139, 141, 139, 137, 136, 136, 135, 134, 133, 28.17575 + 132, 137, 135, 133, 134, 136, 141, 147, 152, 148, 148, 149, 149, 149, 148, 146, 28.17576 + 144, 146, 146, 154, 158, 154, 152, 142, 120, 117, 125, 148, 127, 126, 128, 132, 28.17577 + 130, 126, 125, 126, 127, 124, 123, 125, 125, 122, 122, 126, 125, 127, 129, 129, 28.17578 + 127, 126, 125, 127, 129, 128, 126, 126, 126, 128, 130, 132, 129, 129, 130, 131, 28.17579 + 130, 129, 127, 126, 117, 128, 128, 126, 129, 125, 123, 131, 133, 133, 133, 134, 28.17580 + 135, 137, 139, 140, 138, 138, 138, 138, 138, 138, 138, 138, 126, 128, 129, 125, 28.17581 + 121, 122, 127, 131, 120, 130, 139, 144, 150, 154, 153, 148, 145, 146, 147, 147, 28.17582 + 147, 147, 149, 150, 151, 151, 150, 149, 149, 148, 147, 148, 148, 147, 146, 145, 28.17583 + 143, 142, 141, 141, 148, 145, 145, 148, 148, 144, 144, 145, 142, 142, 154, 173, 28.17584 + 186, 191, 195, 201, 195, 192, 194, 198, 200, 198, 198, 202, 197, 193, 187, 184, 28.17585 + 186, 190, 194, 196, 196, 200, 200, 197, 199, 202, 201, 196, 194, 198, 201, 202, 28.17586 + 201, 201, 204, 208, 206, 200, 194, 193, 195, 194, 188, 182, 182, 182, 183, 184, 28.17587 + 184, 183, 179, 174, 173, 160, 110, 143, 136, 137, 140, 135, 137, 137, 137, 138, 28.17588 + 140, 141, 143, 143, 140, 138, 136, 133, 133, 135, 139, 141, 145, 146, 145, 145, 28.17589 + 143, 144, 146, 148, 160, 152, 145, 139, 133, 143, 149, 142, 101, 132, 154, 116, 28.17590 + 120, 126, 130, 125, 118, 119, 123, 124, 121, 121, 125, 126, 123, 124, 128, 124, 28.17591 + 128, 133, 134, 132, 130, 127, 127, 128, 128, 129, 130, 132, 132, 133, 134, 127, 28.17592 + 126, 125, 125, 126, 129, 131, 133, 124, 135, 134, 133, 135, 129, 124, 130, 135, 28.17593 + 134, 133, 132, 134, 136, 139, 141, 141, 143, 146, 149, 149, 146, 143, 141, 149, 28.17594 + 152, 155, 154, 151, 149, 150, 151, 150, 156, 158, 156, 155, 154, 151, 145, 154, 28.17595 + 153, 152, 152, 154, 156, 156, 156, 159, 158, 157, 155, 153, 152, 151, 151, 157, 28.17596 + 155, 152, 150, 148, 147, 146, 146, 150, 148, 149, 153, 154, 149, 147, 147, 147, 28.17597 + 139, 149, 175, 189, 186, 189, 202, 195, 193, 193, 196, 196, 194, 195, 198, 192, 28.17598 + 191, 188, 184, 183, 186, 193, 199, 196, 199, 200, 197, 198, 202, 202, 201, 202, 28.17599 + 201, 200, 200, 201, 202, 203, 202, 208, 205, 200, 197, 195, 191, 187, 184, 182, 28.17600 + 182, 183, 184, 184, 183, 179, 176, 169, 134, 121, 138, 140, 145, 146, 134, 140, 28.17601 + 140, 140, 140, 142, 144, 148, 149, 148, 146, 145, 142, 141, 141, 142, 143, 150, 28.17602 + 150, 149, 147, 143, 144, 149, 153, 143, 144, 151, 154, 144, 143, 139, 126, 138, 28.17603 + 102, 133, 111, 112, 116, 120, 120, 116, 117, 123, 121, 119, 121, 127, 128, 126, 28.17604 + 127, 132, 128, 131, 135, 135, 131, 127, 126, 125, 125, 127, 128, 130, 131, 132, 28.17605 + 132, 132, 129, 128, 126, 126, 128, 131, 134, 136, 130, 138, 134, 131, 136, 135, 28.17606 + 133, 142, 138, 138, 139, 139, 140, 142, 144, 145, 151, 150, 149, 149, 151, 153, 28.17607 + 155, 157, 146, 149, 151, 151, 149, 147, 146, 146, 157, 158, 155, 149, 150, 156, 28.17608 + 160, 161, 164, 159, 154, 154, 156, 159, 158, 157, 161, 161, 159, 158, 156, 155, 28.17609 + 154, 154, 161, 160, 156, 154, 152, 153, 154, 155, 150, 148, 148, 152, 153, 149, 28.17610 + 147, 148, 150, 142, 145, 164, 177, 179, 184, 193, 195, 193, 193, 192, 192, 192, 28.17611 + 193, 193, 192, 192, 189, 186, 185, 186, 190, 193, 194, 194, 194, 193, 194, 197, 28.17612 + 200, 200, 206, 204, 202, 200, 199, 199, 198, 198, 202, 202, 200, 198, 194, 191, 28.17613 + 190, 190, 180, 179, 179, 181, 181, 181, 177, 176, 161, 115, 138, 135, 138, 143, 28.17614 + 143, 132, 144, 143, 142, 140, 139, 140, 143, 145, 149, 149, 150, 150, 150, 150, 28.17615 + 151, 151, 150, 152, 152, 148, 143, 142, 145, 150, 151, 147, 149, 146, 135, 134, 28.17616 + 137, 133, 135, 129, 120, 118, 113, 112, 118, 123, 124, 126, 129, 123, 122, 123, 28.17617 + 129, 130, 127, 126, 129, 129, 130, 130, 130, 126, 125, 125, 126, 124, 126, 128, 28.17618 + 130, 133, 133, 132, 130, 136, 135, 135, 136, 136, 137, 138, 139, 135, 142, 139, 28.17619 + 138, 144, 143, 141, 148, 142, 144, 147, 150, 151, 151, 150, 149, 155, 153, 150, 28.17620 + 149, 150, 153, 157, 160, 158, 159, 159, 158, 157, 156, 157, 158, 146, 152, 158, 28.17621 + 160, 163, 166, 164, 159, 166, 161, 156, 154, 155, 157, 155, 154, 155, 155, 154, 28.17622 + 155, 154, 154, 153, 153, 155, 153, 152, 150, 150, 151, 154, 156, 153, 149, 148, 28.17623 + 150, 151, 149, 150, 154, 150, 148, 146, 151, 161, 175, 184, 186, 190, 192, 192, 28.17624 + 190, 189, 191, 190, 190, 188, 187, 187, 188, 190, 191, 190, 189, 193, 191, 191, 28.17625 + 191, 191, 193, 197, 200, 199, 202, 203, 201, 197, 195, 198, 201, 192, 194, 194, 28.17626 + 192, 189, 187, 187, 189, 180, 178, 176, 175, 173, 170, 167, 163, 159, 117, 155, 28.17627 + 139, 137, 135, 136, 128, 145, 146, 146, 143, 140, 139, 141, 143, 143, 144, 146, 28.17628 + 147, 148, 149, 150, 150, 143, 145, 146, 146, 143, 141, 143, 144, 149, 143, 146, 28.17629 + 146, 137, 136, 140, 139, 143, 138, 167, 123, 115, 111, 117, 123, 126, 128, 130, 28.17630 + 129, 126, 128, 130, 128, 123, 120, 123, 125, 125, 124, 123, 122, 124, 127, 131, 28.17631 + 127, 129, 130, 132, 133, 133, 132, 133, 136, 136, 137, 138, 138, 138, 137, 137, 28.17632 + 131, 140, 141, 143, 148, 143, 135, 138, 139, 142, 146, 150, 151, 150, 147, 145, 28.17633 + 152, 152, 152, 152, 151, 150, 149, 148, 150, 149, 147, 146, 146, 148, 150, 151, 28.17634 + 155, 159, 161, 160, 158, 157, 154, 148, 164, 161, 157, 155, 155, 155, 154, 153, 28.17635 + 154, 155, 155, 155, 156, 156, 157, 157, 152, 152, 151, 151, 151, 153, 154, 156, 28.17636 + 157, 152, 150, 153, 154, 152, 155, 158, 149, 152, 150, 146, 152, 170, 182, 184, 28.17637 + 185, 189, 189, 188, 187, 188, 187, 184, 181, 180, 182, 186, 191, 194, 193, 191, 28.17638 + 196, 192, 191, 193, 193, 192, 196, 200, 190, 195, 200, 200, 197, 197, 200, 203, 28.17639 + 193, 193, 193, 191, 188, 185, 185, 184, 186, 182, 177, 173, 168, 162, 155, 152, 28.17640 + 146, 121, 155, 141, 141, 139, 143, 143, 142, 145, 149, 148, 144, 143, 145, 148, 28.17641 + 145, 145, 146, 146, 146, 147, 148, 147, 141, 142, 144, 147, 148, 148, 146, 146, 28.17642 + 139, 134, 142, 150, 145, 141, 141, 136, 140, 137, 147, 118, 115, 113, 117, 119, 28.17643 + 118, 120, 124, 126, 124, 125, 128, 128, 122, 119, 120, 123, 123, 122, 122, 120, 28.17644 + 123, 126, 130, 129, 130, 132, 133, 133, 133, 133, 133, 134, 134, 134, 135, 134, 28.17645 + 135, 135, 135, 132, 139, 138, 139, 146, 142, 133, 136, 137, 139, 142, 144, 146, 28.17646 + 145, 144, 143, 150, 151, 152, 152, 151, 149, 147, 146, 151, 150, 149, 150, 152, 28.17647 + 154, 154, 154, 151, 152, 150, 146, 150, 158, 163, 164, 159, 159, 160, 159, 157, 28.17648 + 156, 156, 157, 158, 158, 158, 159, 159, 160, 160, 160, 156, 156, 156, 156, 156, 28.17649 + 156, 156, 156, 156, 152, 153, 157, 157, 156, 157, 159, 154, 154, 152, 151, 152, 28.17650 + 156, 166, 176, 177, 183, 185, 184, 182, 185, 183, 178, 177, 179, 180, 181, 183, 28.17651 + 186, 191, 195, 197, 192, 191, 194, 196, 193, 194, 199, 189, 191, 195, 197, 198, 28.17652 + 198, 196, 195, 193, 192, 190, 189, 188, 186, 184, 183, 181, 177, 171, 166, 160, 28.17653 + 153, 147, 142, 137, 130, 144, 139, 145, 143, 146, 151, 140, 145, 150, 151, 147, 28.17654 + 145, 147, 149, 149, 148, 149, 148, 148, 149, 150, 151, 148, 145, 141, 142, 146, 28.17655 + 147, 145, 141, 152, 134, 127, 127, 124, 129, 139, 141, 146, 72, 101, 117, 117, 28.17656 + 120, 123, 118, 113, 115, 121, 119, 118, 121, 127, 127, 123, 121, 123, 125, 126, 28.17657 + 125, 124, 121, 121, 123, 125, 129, 129, 131, 131, 131, 131, 130, 131, 136, 136, 28.17658 + 135, 135, 135, 137, 139, 141, 140, 143, 136, 134, 143, 144, 142, 148, 143, 143, 28.17659 + 145, 146, 147, 148, 149, 149, 153, 152, 150, 149, 149, 152, 154, 156, 148, 147, 28.17660 + 148, 150, 154, 154, 153, 152, 155, 158, 158, 155, 155, 159, 159, 156, 156, 159, 28.17661 + 162, 162, 159, 158, 160, 162, 157, 158, 157, 157, 157, 158, 158, 158, 159, 158, 28.17662 + 158, 157, 157, 156, 155, 154, 152, 150, 153, 158, 159, 156, 155, 156, 162, 152, 28.17663 + 153, 158, 151, 140, 146, 164, 172, 179, 182, 181, 180, 184, 179, 173, 177, 181, 28.17664 + 181, 178, 174, 176, 187, 196, 196, 192, 191, 195, 194, 191, 190, 195, 196, 193, 28.17665 + 193, 196, 200, 198, 191, 184, 187, 185, 183, 183, 184, 184, 182, 180, 164, 160, 28.17666 + 156, 151, 146, 143, 137, 133, 145, 146, 139, 137, 143, 139, 135, 138, 140, 144, 28.17667 + 151, 151, 147, 143, 144, 146, 147, 146, 147, 147, 148, 150, 152, 154, 151, 144, 28.17668 + 135, 133, 135, 136, 132, 127, 132, 121, 127, 138, 133, 125, 117, 108, 129, 101, 28.17669 + 124, 117, 119, 121, 121, 122, 120, 114, 109, 112, 114, 118, 123, 125, 126, 125, 28.17670 + 123, 123, 123, 122, 123, 124, 124, 125, 125, 122, 127, 131, 132, 130, 130, 133, 28.17671 + 137, 134, 134, 135, 136, 136, 137, 137, 137, 137, 135, 133, 132, 134, 137, 140, 28.17672 + 143, 137, 141, 145, 147, 146, 145, 145, 146, 145, 146, 146, 147, 149, 150, 151, 28.17673 + 151, 149, 150, 151, 151, 151, 153, 158, 161, 161, 157, 153, 154, 158, 160, 158, 28.17674 + 155, 161, 152, 156, 160, 152, 150, 157, 160, 163, 162, 158, 156, 155, 156, 158, 28.17675 + 159, 154, 154, 155, 156, 155, 153, 152, 150, 151, 149, 153, 158, 160, 157, 159, 28.17676 + 161, 156, 154, 153, 155, 157, 156, 151, 147, 166, 162, 160, 164, 170, 175, 174, 28.17677 + 172, 173, 174, 173, 164, 161, 178, 184, 168, 181, 190, 188, 185, 188, 187, 185, 28.17678 + 194, 193, 192, 190, 188, 186, 185, 185, 185, 185, 183, 181, 179, 177, 175, 173, 28.17679 + 171, 165, 157, 147, 139, 135, 139, 146, 152, 148, 149, 148, 144, 141, 141, 146, 28.17680 + 150, 146, 144, 143, 147, 151, 151, 145, 139, 143, 144, 148, 151, 151, 144, 132, 28.17681 + 124, 118, 123, 123, 124, 128, 133, 130, 124, 128, 126, 128, 134, 142, 142, 135, 28.17682 + 128, 122, 110, 105, 125, 123, 121, 120, 121, 122, 120, 117, 127, 126, 123, 122, 28.17683 + 121, 123, 125, 126, 124, 124, 125, 126, 126, 127, 127, 127, 126, 126, 127, 129, 28.17684 + 131, 132, 131, 130, 134, 134, 135, 136, 137, 137, 137, 137, 135, 135, 135, 136, 28.17685 + 137, 139, 140, 141, 137, 140, 144, 145, 146, 146, 147, 148, 149, 149, 149, 149, 28.17686 + 149, 150, 150, 150, 151, 152, 153, 153, 152, 153, 156, 158, 159, 156, 152, 154, 28.17687 + 157, 159, 157, 154, 162, 151, 154, 161, 157, 157, 158, 154, 158, 157, 154, 154, 28.17688 + 153, 155, 157, 159, 158, 157, 156, 155, 155, 154, 155, 155, 155, 154, 156, 160, 28.17689 + 160, 157, 157, 158, 158, 158, 159, 162, 163, 163, 161, 158, 159, 149, 141, 139, 28.17690 + 144, 154, 160, 163, 172, 165, 161, 155, 153, 169, 180, 172, 180, 188, 188, 188, 28.17691 + 191, 188, 182, 187, 183, 183, 182, 184, 183, 185, 184, 185, 179, 176, 172, 175, 28.17692 + 180, 183, 179, 176, 154, 150, 146, 140, 140, 141, 145, 148, 149, 150, 150, 147, 28.17693 + 143, 140, 141, 143, 147, 145, 145, 149, 154, 155, 152, 147, 151, 149, 148, 147, 28.17694 + 148, 149, 149, 150, 137, 136, 129, 124, 126, 133, 136, 134, 146, 146, 147, 151, 28.17695 + 152, 143, 127, 114, 131, 133, 131, 125, 124, 123, 124, 124, 124, 124, 123, 130, 28.17696 + 127, 124, 121, 120, 121, 122, 124, 124, 123, 124, 125, 126, 127, 128, 128, 129, 28.17697 + 126, 124, 127, 131, 133, 129, 126, 134, 136, 136, 137, 137, 138, 138, 138, 134, 28.17698 + 136, 138, 140, 141, 141, 141, 140, 138, 140, 143, 144, 144, 145, 148, 150, 150, 28.17699 + 150, 149, 148, 147, 147, 148, 148, 153, 155, 157, 156, 155, 153, 154, 155, 158, 28.17700 + 155, 153, 154, 157, 158, 156, 153, 163, 151, 154, 162, 161, 161, 158, 148, 153, 28.17701 + 153, 150, 150, 151, 154, 157, 158, 160, 159, 157, 155, 154, 155, 157, 157, 160, 28.17702 + 158, 159, 163, 162, 158, 157, 158, 155, 157, 161, 162, 162, 163, 162, 163, 166, 28.17703 + 162, 159, 160, 162, 161, 158, 154, 162, 152, 150, 150, 147, 154, 163, 161, 160, 28.17704 + 169, 171, 177, 188, 187, 180, 182, 177, 178, 180, 181, 182, 182, 181, 180, 178, 28.17705 + 170, 164, 165, 170, 171, 164, 155, 146, 146, 147, 148, 148, 148, 148, 148, 149, 28.17706 + 151, 152, 150, 147, 144, 143, 143, 143, 142, 141, 145, 150, 153, 152, 150, 153, 28.17707 + 152, 151, 149, 148, 151, 158, 163, 168, 167, 159, 152, 152, 157, 160, 159, 156, 28.17708 + 148, 139, 134, 133, 131, 126, 121, 132, 141, 137, 116, 116, 118, 123, 124, 121, 28.17709 + 116, 115, 114, 117, 119, 123, 124, 123, 121, 119, 121, 122, 122, 123, 124, 125, 28.17710 + 126, 126, 130, 129, 128, 128, 130, 130, 128, 126, 135, 136, 137, 137, 137, 138, 28.17711 + 139, 139, 136, 137, 139, 141, 142, 142, 142, 141, 141, 142, 143, 143, 143, 144, 28.17712 + 146, 149, 146, 146, 144, 144, 144, 144, 145, 146, 152, 154, 157, 157, 156, 154, 28.17713 + 154, 154, 157, 155, 154, 155, 157, 158, 156, 154, 161, 153, 156, 161, 159, 159, 28.17714 + 158, 149, 152, 151, 149, 150, 150, 152, 155, 156, 158, 157, 156, 156, 155, 155, 28.17715 + 156, 155, 161, 158, 159, 163, 162, 158, 158, 161, 154, 157, 162, 163, 161, 160, 28.17716 + 162, 164, 162, 163, 166, 169, 169, 166, 158, 152, 159, 148, 152, 161, 153, 148, 28.17717 + 149, 148, 151, 159, 160, 165, 178, 177, 170, 171, 173, 174, 174, 174, 172, 170, 28.17718 + 165, 164, 169, 164, 157, 156, 155, 154, 147, 143, 148, 150, 153, 155, 156, 154, 28.17719 + 153, 152, 148, 149, 150, 151, 150, 149, 149, 150, 144, 142, 141, 143, 147, 150, 28.17720 + 151, 151, 152, 156, 161, 161, 157, 155, 157, 159, 161, 166, 166, 164, 161, 161, 28.17721 + 156, 151, 150, 140, 128, 121, 119, 123, 123, 123, 117, 125, 127, 116, 111, 109, 28.17722 + 114, 115, 113, 112, 115, 112, 114, 119, 123, 126, 126, 126, 125, 123, 123, 123, 28.17723 + 124, 126, 126, 126, 126, 128, 131, 133, 132, 129, 128, 128, 130, 135, 136, 137, 28.17724 + 138, 139, 139, 139, 139, 141, 140, 139, 139, 140, 141, 142, 143, 143, 144, 145, 28.17725 + 144, 142, 142, 144, 146, 144, 143, 142, 142, 143, 145, 147, 149, 149, 153, 155, 28.17726 + 156, 155, 154, 154, 155, 156, 156, 156, 157, 158, 158, 156, 154, 158, 154, 159, 28.17727 + 159, 152, 153, 158, 152, 152, 152, 151, 150, 150, 152, 153, 153, 155, 157, 159, 28.17728 + 161, 161, 159, 156, 154, 159, 156, 158, 161, 162, 160, 162, 164, 162, 166, 168, 28.17729 + 169, 165, 164, 166, 168, 162, 160, 159, 159, 162, 167, 170, 172, 182, 171, 177, 28.17730 + 186, 178, 171, 172, 172, 163, 167, 162, 161, 169, 166, 157, 159, 164, 165, 164, 28.17731 + 164, 160, 157, 152, 151, 153, 155, 155, 156, 155, 155, 156, 157, 156, 155, 156, 28.17732 + 157, 156, 155, 154, 154, 149, 148, 147, 146, 148, 149, 149, 150, 151, 149, 148, 28.17733 + 148, 149, 151, 153, 153, 153, 158, 165, 165, 162, 157, 157, 157, 148, 157, 161, 28.17734 + 162, 159, 158, 151, 145, 148, 147, 144, 142, 137, 129, 118, 110, 110, 111, 119, 28.17735 + 128, 118, 110, 113, 114, 113, 117, 125, 124, 123, 121, 122, 124, 128, 131, 134, 28.17736 + 128, 128, 128, 129, 129, 129, 129, 129, 127, 132, 135, 133, 129, 126, 127, 133, 28.17737 + 136, 137, 137, 138, 139, 140, 139, 140, 141, 141, 139, 138, 139, 140, 142, 143, 28.17738 + 142, 144, 145, 145, 143, 143, 144, 145, 146, 145, 144, 144, 145, 148, 151, 154, 28.17739 + 148, 151, 153, 153, 153, 153, 154, 155, 154, 155, 156, 157, 157, 156, 155, 154, 28.17740 + 155, 154, 160, 157, 148, 150, 157, 150, 152, 152, 151, 151, 152, 152, 152, 152, 28.17741 + 155, 157, 161, 164, 164, 161, 156, 153, 156, 153, 155, 159, 160, 159, 162, 166, 28.17742 + 167, 168, 169, 168, 165, 164, 164, 165, 167, 167, 169, 169, 169, 169, 167, 166, 28.17743 + 158, 146, 149, 154, 147, 147, 154, 158, 163, 166, 159, 156, 161, 159, 153, 157, 28.17744 + 161, 160, 161, 160, 159, 157, 155, 154, 148, 152, 157, 157, 155, 156, 161, 165, 28.17745 + 159, 157, 156, 154, 151, 151, 151, 151, 151, 148, 144, 142, 143, 144, 144, 143, 28.17746 + 151, 150, 149, 148, 147, 148, 149, 150, 150, 151, 153, 154, 153, 153, 155, 157, 28.17747 + 155, 161, 162, 160, 158, 160, 160, 158, 158, 157, 153, 150, 144, 138, 129, 124, 28.17748 + 125, 114, 111, 124, 114, 108, 113, 114, 109, 111, 119, 122, 121, 119, 120, 123, 28.17749 + 127, 132, 135, 132, 131, 132, 132, 130, 129, 129, 129, 129, 130, 130, 130, 130, 28.17750 + 129, 128, 129, 136, 138, 139, 139, 139, 140, 140, 140, 139, 139, 139, 140, 140, 28.17751 + 140, 140, 139, 138, 141, 144, 146, 145, 145, 146, 147, 149, 148, 146, 144, 145, 28.17752 + 147, 150, 153, 150, 152, 153, 152, 149, 149, 151, 153, 150, 152, 155, 156, 155, 28.17753 + 153, 152, 151, 153, 152, 157, 156, 150, 154, 155, 143, 149, 149, 150, 151, 151, 28.17754 + 152, 153, 152, 153, 154, 157, 159, 159, 157, 154, 152, 156, 152, 152, 155, 158, 28.17755 + 157, 160, 163, 163, 162, 160, 161, 161, 161, 160, 159, 157, 161, 167, 169, 166, 28.17756 + 158, 149, 143, 164, 157, 160, 161, 154, 157, 166, 167, 153, 161, 157, 156, 160, 28.17757 + 159, 157, 165, 160, 160, 160, 160, 160, 160, 160, 160, 154, 156, 158, 157, 156, 28.17758 + 156, 158, 159, 156, 156, 155, 152, 150, 149, 148, 147, 148, 147, 144, 144, 146, 28.17759 + 146, 143, 141, 147, 147, 148, 148, 146, 146, 147, 148, 148, 147, 147, 148, 151, 28.17760 + 153, 153, 153, 148, 153, 153, 149, 146, 150, 153, 155, 160, 156, 148, 143, 139, 28.17761 + 139, 138, 140, 132, 126, 118, 102, 95, 99, 109, 109, 99, 93, 95, 108, 112, 28.17762 + 117, 122, 126, 127, 127, 127, 133, 133, 132, 131, 131, 129, 127, 126, 131, 127, 28.17763 + 126, 128, 131, 132, 129, 127, 136, 137, 137, 138, 138, 138, 139, 139, 134, 137, 28.17764 + 139, 142, 143, 141, 138, 136, 135, 139, 144, 147, 148, 147, 148, 149, 150, 148, 28.17765 + 145, 143, 143, 144, 147, 148, 153, 154, 153, 150, 147, 146, 148, 150, 147, 150, 28.17766 + 153, 154, 153, 151, 150, 149, 151, 149, 152, 154, 152, 157, 152, 134, 144, 145, 28.17767 + 146, 149, 151, 152, 154, 153, 149, 150, 151, 152, 151, 151, 150, 150, 155, 152, 28.17768 + 151, 154, 155, 155, 158, 161, 161, 159, 157, 156, 159, 161, 159, 157, 161, 161, 28.17769 + 160, 160, 159, 160, 163, 165, 157, 156, 164, 165, 155, 157, 160, 154, 160, 168, 28.17770 + 167, 164, 165, 161, 158, 166, 156, 155, 155, 154, 154, 154, 154, 155, 158, 157, 28.17771 + 155, 159, 162, 165, 164, 162, 155, 155, 154, 153, 151, 149, 148, 147, 144, 144, 28.17772 + 146, 149, 153, 153, 148, 145, 147, 150, 151, 152, 150, 150, 151, 152, 153, 153, 28.17773 + 154, 158, 161, 160, 156, 150, 147, 153, 155, 152, 149, 151, 153, 152, 151, 153, 28.17774 + 152, 151, 145, 139, 129, 125, 121, 135, 139, 109, 106, 109, 110, 109, 111, 96, 28.17775 + 69, 113, 120, 124, 121, 120, 122, 123, 121, 119, 128, 128, 126, 131, 128, 126, 28.17776 + 134, 126, 132, 139, 138, 134, 129, 129, 132, 138, 134, 133, 137, 137, 132, 133, 28.17777 + 137, 136, 140, 143, 145, 144, 144, 143, 144, 145, 144, 141, 142, 143, 143, 141, 28.17778 + 140, 144, 145, 146, 148, 149, 151, 152, 152, 149, 148, 146, 145, 145, 146, 147, 28.17779 + 148, 148, 150, 149, 145, 145, 150, 152, 150, 148, 152, 156, 154, 148, 147, 152, 28.17780 + 158, 151, 153, 152, 151, 151, 151, 154, 154, 149, 153, 154, 153, 152, 153, 149, 28.17781 + 145, 148, 152, 155, 155, 153, 154, 158, 163, 163, 161, 160, 162, 164, 163, 159, 28.17782 + 156, 152, 155, 159, 162, 164, 164, 162, 161, 156, 156, 156, 156, 157, 158, 160, 28.17783 + 162, 162, 162, 162, 161, 159, 158, 158, 157, 160, 160, 160, 159, 157, 155, 153, 28.17784 + 152, 154, 152, 151, 153, 156, 159, 160, 160, 156, 154, 152, 148, 147, 147, 148, 28.17785 + 149, 149, 148, 146, 144, 143, 144, 144, 144, 152, 155, 151, 145, 143, 150, 152, 28.17786 + 149, 154, 151, 148, 150, 154, 156, 153, 151, 152, 153, 153, 150, 147, 147, 149, 28.17787 + 153, 144, 146, 146, 146, 141, 135, 126, 121, 123, 126, 132, 102, 99, 105, 109, 28.17788 + 103, 100, 88, 68, 114, 122, 128, 124, 118, 119, 121, 121, 127, 132, 129, 129, 28.17789 + 137, 135, 130, 134, 139, 138, 137, 135, 132, 130, 129, 129, 138, 135, 135, 138, 28.17790 + 137, 132, 131, 135, 131, 135, 139, 139, 139, 139, 140, 141, 141, 140, 139, 141, 28.17791 + 142, 143, 141, 140, 140, 141, 142, 143, 144, 145, 146, 146, 152, 151, 149, 148, 28.17792 + 147, 148, 148, 149, 146, 149, 150, 147, 148, 151, 151, 147, 147, 150, 151, 150, 28.17793 + 146, 147, 150, 154, 149, 151, 151, 149, 149, 150, 153, 155, 148, 154, 157, 153, 28.17794 + 150, 152, 154, 154, 156, 155, 155, 155, 156, 158, 158, 158, 158, 157, 157, 158, 28.17795 + 161, 161, 159, 156, 156, 157, 160, 161, 162, 162, 161, 159, 158, 158, 159, 160, 28.17796 + 159, 157, 156, 156, 158, 158, 160, 160, 160, 159, 158, 158, 157, 157, 157, 156, 28.17797 + 156, 156, 156, 156, 165, 162, 159, 159, 160, 160, 159, 158, 157, 157, 157, 156, 28.17798 + 154, 152, 149, 148, 148, 147, 146, 145, 144, 145, 146, 147, 146, 151, 150, 148, 28.17799 + 148, 152, 153, 149, 150, 148, 147, 148, 150, 151, 151, 151, 155, 157, 158, 156, 28.17800 + 153, 151, 153, 155, 159, 154, 151, 151, 152, 149, 141, 133, 132, 130, 128, 102, 28.17801 + 101, 112, 122, 112, 106, 100, 93, 108, 119, 128, 127, 124, 128, 134, 136, 132, 28.17802 + 135, 131, 133, 145, 146, 140, 142, 136, 133, 129, 131, 136, 142, 145, 145, 143, 28.17803 + 141, 141, 142, 142, 138, 137, 139, 132, 135, 136, 136, 136, 137, 139, 141, 139, 28.17804 + 138, 138, 139, 141, 143, 143, 142, 143, 143, 143, 144, 144, 145, 145, 145, 148, 28.17805 + 147, 146, 145, 145, 145, 145, 145, 144, 149, 151, 150, 150, 152, 150, 146, 151, 28.17806 + 151, 149, 150, 149, 150, 150, 151, 149, 151, 151, 150, 150, 152, 155, 158, 149, 28.17807 + 155, 160, 154, 150, 152, 158, 162, 163, 158, 155, 156, 159, 160, 158, 154, 160, 28.17808 + 159, 159, 161, 164, 164, 163, 162, 161, 161, 161, 161, 161, 161, 160, 160, 159, 28.17809 + 161, 162, 163, 162, 160, 156, 155, 157, 158, 160, 161, 163, 162, 161, 159, 157, 28.17810 + 156, 156, 156, 157, 159, 161, 163, 169, 167, 164, 162, 161, 160, 158, 156, 156, 28.17811 + 158, 160, 161, 159, 155, 150, 147, 147, 146, 146, 146, 146, 147, 148, 149, 141, 28.17812 + 146, 150, 151, 152, 153, 151, 147, 149, 150, 151, 150, 150, 150, 152, 155, 149, 28.17813 + 150, 151, 150, 148, 146, 146, 146, 156, 148, 141, 141, 146, 146, 139, 131, 132, 28.17814 + 126, 123, 115, 112, 122, 131, 117, 107, 109, 112, 121, 125, 124, 116, 109, 104, 28.17815 + 101, 97, 95, 99, 97, 101, 112, 113, 109, 113, 108, 107, 108, 113, 119, 127, 28.17816 + 134, 139, 144, 143, 141, 142, 141, 139, 138, 139, 137, 138, 139, 139, 139, 140, 28.17817 + 142, 144, 141, 140, 138, 140, 142, 144, 143, 142, 146, 146, 145, 146, 146, 146, 28.17818 + 145, 145, 144, 145, 144, 145, 144, 146, 145, 147, 146, 151, 152, 151, 150, 154, 28.17819 + 152, 148, 156, 153, 151, 151, 153, 155, 153, 152, 150, 152, 152, 151, 151, 153, 28.17820 + 156, 158, 151, 155, 158, 155, 152, 155, 159, 159, 162, 159, 157, 157, 158, 159, 28.17821 + 158, 156, 162, 162, 162, 163, 164, 164, 164, 164, 164, 163, 162, 161, 161, 162, 28.17822 + 163, 164, 159, 160, 161, 163, 165, 164, 162, 160, 161, 162, 164, 164, 164, 163, 28.17823 + 161, 160, 159, 158, 157, 157, 158, 161, 164, 167, 163, 161, 159, 159, 160, 160, 28.17824 + 159, 158, 154, 155, 158, 159, 158, 155, 152, 150, 149, 149, 148, 148, 148, 148, 28.17825 + 148, 148, 142, 143, 146, 149, 149, 150, 149, 147, 147, 151, 152, 151, 149, 150, 28.17826 + 152, 157, 157, 158, 159, 159, 157, 155, 153, 152, 157, 152, 147, 147, 148, 147, 28.17827 + 142, 136, 133, 132, 131, 124, 116, 121, 124, 107, 96, 102, 108, 98, 103, 108, 28.17828 + 113, 122, 131, 134, 129, 115, 123, 124, 125, 130, 129, 128, 136, 130, 133, 137, 28.17829 + 138, 135, 137, 142, 147, 139, 139, 139, 137, 137, 137, 136, 135, 140, 142, 142, 28.17830 + 142, 141, 142, 144, 146, 144, 144, 143, 144, 145, 145, 144, 143, 145, 146, 144, 28.17831 + 144, 145, 145, 144, 144, 146, 147, 148, 150, 152, 153, 154, 154, 152, 154, 154, 28.17832 + 150, 151, 155, 156, 154, 159, 155, 152, 152, 155, 156, 154, 151, 148, 150, 151, 28.17833 + 150, 150, 151, 154, 157, 153, 155, 155, 154, 157, 160, 156, 149, 155, 157, 159, 28.17834 + 158, 156, 156, 158, 161, 160, 160, 160, 159, 158, 158, 158, 159, 164, 163, 162, 28.17835 + 162, 162, 164, 167, 169, 166, 164, 162, 162, 165, 166, 164, 163, 161, 162, 163, 28.17836 + 162, 161, 159, 157, 155, 159, 158, 156, 156, 156, 158, 161, 163, 157, 156, 156, 28.17837 + 157, 158, 160, 159, 158, 155, 156, 156, 157, 157, 158, 158, 158, 155, 154, 154, 28.17838 + 153, 151, 150, 148, 146, 146, 144, 143, 145, 145, 144, 146, 147, 144, 148, 151, 28.17839 + 152, 149, 150, 151, 155, 156, 157, 157, 157, 156, 154, 151, 149, 149, 150, 152, 28.17840 + 150, 146, 142, 138, 136, 130, 130, 131, 117, 111, 115, 116, 106, 105, 114, 116, 28.17841 + 137, 138, 137, 134, 135, 136, 133, 125, 128, 137, 137, 134, 136, 132, 129, 139, 28.17842 + 126, 131, 137, 136, 130, 127, 129, 135, 140, 143, 143, 141, 141, 143, 143, 140, 28.17843 + 139, 141, 143, 143, 142, 142, 143, 145, 148, 147, 146, 146, 146, 147, 146, 145, 28.17844 + 147, 147, 147, 147, 147, 148, 148, 147, 145, 146, 147, 150, 151, 153, 153, 154, 28.17845 + 153, 156, 153, 150, 149, 155, 156, 156, 157, 154, 151, 152, 154, 155, 153, 150, 28.17846 + 147, 148, 148, 147, 146, 147, 149, 152, 154, 153, 152, 153, 158, 162, 155, 145, 28.17847 + 152, 156, 160, 159, 156, 155, 160, 164, 161, 162, 162, 160, 157, 157, 158, 159, 28.17848 + 162, 162, 161, 161, 162, 164, 166, 168, 172, 169, 164, 163, 164, 165, 163, 160, 28.17849 + 160, 160, 158, 156, 154, 153, 152, 151, 156, 155, 154, 153, 153, 154, 155, 156, 28.17850 + 159, 158, 158, 158, 160, 160, 157, 156, 159, 158, 157, 156, 156, 158, 161, 163, 28.17851 + 157, 157, 157, 155, 153, 151, 149, 145, 150, 143, 141, 142, 142, 142, 146, 150, 28.17852 + 149, 152, 156, 159, 158, 158, 157, 158, 154, 154, 152, 151, 151, 150, 147, 145, 28.17853 + 144, 149, 154, 152, 146, 141, 140, 141, 138, 138, 137, 107, 105, 109, 112, 110, 28.17854 + 119, 126, 119, 110, 119, 126, 125, 126, 129, 133, 133, 131, 137, 134, 132, 137, 28.17855 + 135, 131, 136, 137, 139, 142, 142, 140, 139, 139, 143, 142, 146, 147, 144, 144, 28.17856 + 149, 150, 146, 140, 142, 144, 146, 144, 144, 143, 145, 148, 146, 145, 147, 149, 28.17857 + 150, 149, 148, 150, 150, 150, 151, 151, 151, 152, 151, 143, 144, 145, 147, 148, 28.17858 + 148, 147, 147, 149, 152, 152, 149, 150, 153, 154, 152, 157, 156, 154, 154, 154, 28.17859 + 154, 153, 153, 151, 151, 150, 149, 146, 147, 149, 152, 152, 153, 152, 152, 156, 28.17860 + 160, 158, 152, 158, 158, 158, 158, 158, 159, 161, 162, 161, 162, 162, 161, 158, 28.17861 + 158, 161, 163, 161, 160, 160, 160, 160, 160, 161, 162, 173, 169, 165, 165, 166, 28.17862 + 166, 162, 157, 158, 157, 154, 152, 150, 151, 152, 153, 153, 153, 155, 155, 155, 28.17863 + 156, 156, 157, 160, 159, 159, 159, 160, 159, 158, 155, 160, 160, 156, 155, 154, 28.17864 + 156, 157, 159, 157, 158, 157, 157, 155, 154, 150, 148, 150, 142, 141, 144, 145, 28.17865 + 144, 148, 154, 151, 154, 158, 163, 166, 166, 161, 158, 161, 159, 156, 155, 155, 28.17866 + 155, 153, 150, 151, 152, 154, 154, 152, 151, 152, 153, 154, 155, 155, 103, 102, 28.17867 + 106, 104, 103, 113, 114, 98, 100, 114, 124, 122, 116, 118, 125, 131, 128, 131, 28.17868 + 126, 128, 140, 140, 135, 137, 140, 138, 135, 134, 134, 134, 133, 132, 135, 141, 28.17869 + 143, 140, 140, 146, 147, 143, 142, 145, 148, 149, 148, 146, 145, 145, 144, 143, 28.17870 + 144, 146, 150, 151, 151, 150, 146, 146, 146, 147, 147, 148, 149, 148, 148, 148, 28.17871 + 149, 150, 150, 148, 147, 146, 145, 150, 152, 150, 151, 153, 151, 148, 159, 159, 28.17872 + 159, 158, 157, 156, 156, 157, 156, 156, 155, 152, 150, 150, 152, 154, 150, 153, 28.17873 + 154, 152, 153, 158, 162, 161, 164, 160, 156, 157, 161, 163, 162, 159, 154, 156, 28.17874 + 157, 156, 154, 155, 158, 162, 160, 160, 159, 158, 157, 156, 156, 156, 166, 165, 28.17875 + 163, 166, 170, 170, 163, 157, 158, 157, 153, 151, 152, 154, 157, 159, 153, 155, 28.17876 + 157, 158, 159, 160, 160, 161, 156, 156, 156, 158, 159, 160, 158, 156, 158, 158, 28.17877 + 155, 153, 151, 151, 150, 151, 154, 156, 156, 157, 156, 155, 152, 150, 148, 142, 28.17878 + 142, 148, 149, 148, 151, 158, 145, 147, 151, 158, 163, 163, 156, 151, 147, 143, 28.17879 + 138, 136, 137, 138, 136, 134, 132, 129, 127, 128, 132, 136, 137, 137, 134, 139, 28.17880 + 142, 101, 103, 108, 116, 122, 124, 121, 118, 94, 122, 135, 121, 111, 120, 123, 28.17881 + 116, 127, 128, 130, 131, 131, 131, 131, 132, 135, 139, 137, 133, 131, 135, 134, 28.17882 + 129, 134, 138, 140, 139, 137, 136, 139, 142, 139, 142, 145, 146, 145, 145, 146, 28.17883 + 147, 146, 145, 144, 145, 146, 148, 150, 152, 148, 152, 152, 144, 143, 149, 152, 28.17884 + 151, 147, 144, 143, 147, 153, 155, 154, 151, 157, 151, 150, 155, 157, 153, 152, 28.17885 + 157, 156, 155, 153, 153, 152, 151, 149, 147, 156, 156, 155, 151, 149, 149, 153, 28.17886 + 159, 156, 156, 157, 157, 157, 155, 154, 153, 156, 157, 157, 158, 158, 157, 155, 28.17887 + 155, 155, 159, 162, 161, 156, 154, 157, 161, 158, 159, 160, 161, 161, 160, 158, 28.17888 + 157, 164, 165, 166, 167, 165, 164, 162, 160, 158, 157, 155, 155, 156, 159, 162, 28.17889 + 163, 159, 159, 157, 161, 163, 165, 161, 159, 163, 158, 153, 154, 157, 160, 157, 28.17890 + 154, 154, 154, 152, 153, 154, 156, 155, 156, 155, 157, 158, 159, 156, 152, 146, 28.17891 + 142, 147, 140, 144, 147, 141, 142, 151, 155, 156, 156, 146, 133, 128, 137, 145, 28.17892 + 150, 147, 145, 143, 141, 137, 134, 137, 142, 134, 134, 134, 134, 133, 133, 133, 28.17893 + 133, 133, 131, 130, 106, 106, 107, 110, 110, 108, 101, 95, 102, 118, 126, 120, 28.17894 + 117, 125, 126, 120, 124, 124, 126, 128, 129, 130, 129, 131, 121, 126, 128, 126, 28.17895 + 128, 134, 135, 132, 128, 130, 132, 132, 133, 134, 137, 139, 137, 137, 139, 139, 28.17896 + 138, 140, 144, 145, 145, 144, 144, 143, 144, 144, 145, 146, 148, 152, 152, 147, 28.17897 + 144, 147, 147, 144, 146, 147, 149, 150, 151, 152, 153, 154, 156, 151, 150, 154, 28.17898 + 156, 153, 152, 155, 155, 154, 152, 152, 152, 153, 152, 152, 153, 155, 155, 153, 28.17899 + 151, 151, 154, 158, 153, 153, 154, 154, 153, 151, 150, 149, 157, 157, 157, 157, 28.17900 + 157, 156, 154, 153, 151, 157, 162, 162, 158, 155, 155, 157, 152, 153, 154, 156, 28.17901 + 156, 157, 157, 157, 160, 161, 162, 163, 163, 163, 161, 160, 157, 155, 154, 153, 28.17902 + 154, 156, 157, 160, 161, 161, 159, 160, 162, 164, 160, 159, 157, 155, 153, 156, 28.17903 + 161, 162, 159, 154, 154, 155, 156, 153, 149, 148, 150, 153, 152, 154, 156, 158, 28.17904 + 158, 156, 154, 152, 159, 151, 153, 154, 146, 145, 152, 154, 140, 146, 155, 156, 28.17905 + 145, 133, 135, 146, 144, 139, 138, 142, 147, 145, 138, 131, 133, 133, 132, 131, 28.17906 + 130, 129, 128, 128, 132, 132, 133, 120, 121, 122, 124, 124, 123, 118, 114, 116, 28.17907 + 119, 119, 120, 123, 128, 125, 121, 128, 128, 129, 131, 131, 131, 130, 131, 123, 28.17908 + 126, 128, 127, 127, 130, 128, 125, 130, 129, 128, 129, 132, 134, 134, 134, 140, 28.17909 + 140, 140, 140, 140, 142, 147, 150, 149, 149, 148, 147, 147, 148, 148, 148, 147, 28.17910 + 152, 154, 152, 149, 150, 149, 146, 147, 151, 154, 153, 150, 150, 153, 157, 153, 28.17911 + 149, 147, 151, 152, 150, 149, 150, 154, 154, 151, 150, 149, 149, 150, 151, 150, 28.17912 + 152, 155, 154, 152, 150, 149, 150, 148, 149, 150, 151, 152, 152, 150, 150, 156, 28.17913 + 156, 157, 157, 156, 155, 154, 153, 152, 158, 164, 165, 162, 159, 157, 158, 157, 28.17914 + 157, 157, 157, 157, 158, 159, 160, 158, 158, 159, 161, 161, 161, 160, 160, 162, 28.17915 + 161, 158, 157, 157, 158, 160, 162, 167, 166, 163, 164, 164, 165, 164, 162, 163, 28.17916 + 163, 162, 164, 166, 165, 160, 155, 155, 159, 161, 156, 149, 146, 149, 154, 148, 28.17917 + 149, 151, 152, 153, 153, 153, 153, 157, 148, 150, 151, 143, 141, 147, 147, 152, 28.17918 + 144, 146, 156, 151, 137, 139, 156, 158, 152, 146, 143, 145, 145, 142, 138, 142, 28.17919 + 141, 140, 139, 137, 136, 134, 134, 125, 127, 129, 117, 119, 121, 124, 128, 127, 28.17920 + 126, 125, 128, 123, 120, 123, 127, 124, 122, 121, 130, 130, 130, 130, 129, 128, 28.17921 + 127, 126, 128, 129, 130, 129, 128, 126, 123, 121, 132, 129, 126, 127, 131, 133, 28.17922 + 131, 129, 144, 145, 146, 145, 145, 145, 148, 150, 149, 149, 149, 149, 150, 150, 28.17923 + 150, 150, 147, 151, 153, 153, 151, 152, 154, 154, 150, 151, 152, 151, 149, 149, 28.17924 + 151, 154, 153, 150, 149, 150, 151, 151, 149, 149, 154, 153, 151, 147, 145, 145, 28.17925 + 146, 148, 150, 151, 153, 154, 151, 147, 143, 142, 145, 146, 148, 150, 152, 154, 28.17926 + 155, 155, 154, 154, 155, 155, 156, 156, 156, 156, 154, 157, 161, 162, 160, 158, 28.17927 + 158, 158, 163, 162, 160, 159, 158, 159, 160, 161, 159, 160, 160, 159, 160, 159, 28.17928 + 159, 159, 164, 163, 162, 161, 160, 160, 161, 162, 165, 165, 163, 162, 162, 163, 28.17929 + 164, 165, 164, 164, 163, 164, 165, 165, 163, 159, 161, 162, 162, 159, 154, 153, 28.17930 + 153, 157, 152, 152, 150, 150, 148, 149, 148, 149, 160, 151, 154, 157, 151, 151, 28.17931 + 158, 156, 161, 141, 129, 138, 149, 150, 150, 153, 148, 153, 154, 149, 143, 144, 28.17932 + 146, 148, 149, 149, 148, 148, 146, 146, 144, 144, 144, 146, 145, 123, 125, 125, 28.17933 + 125, 124, 123, 122, 122, 130, 124, 124, 127, 126, 121, 122, 127, 123, 124, 125, 28.17934 + 125, 125, 125, 124, 123, 123, 124, 125, 128, 128, 128, 126, 126, 128, 126, 124, 28.17935 + 126, 130, 133, 132, 130, 143, 145, 148, 149, 147, 145, 145, 145, 142, 143, 144, 28.17936 + 146, 147, 148, 148, 149, 151, 151, 151, 150, 149, 150, 154, 157, 153, 150, 147, 28.17937 + 148, 150, 152, 151, 150, 157, 156, 155, 154, 155, 156, 155, 151, 150, 149, 151, 28.17938 + 149, 147, 147, 150, 153, 148, 150, 152, 154, 153, 151, 147, 143, 147, 148, 148, 28.17939 + 150, 151, 153, 153, 154, 151, 151, 152, 154, 155, 157, 157, 159, 154, 155, 155, 28.17940 + 154, 154, 155, 156, 158, 159, 158, 157, 156, 156, 158, 159, 160, 163, 162, 162, 28.17941 + 159, 159, 157, 158, 157, 160, 159, 159, 158, 157, 157, 157, 156, 157, 156, 155, 28.17942 + 155, 155, 158, 160, 163, 157, 155, 154, 155, 158, 163, 166, 167, 163, 160, 156, 28.17943 + 157, 159, 161, 158, 157, 158, 158, 155, 154, 151, 152, 150, 152, 153, 144, 148, 28.17944 + 154, 150, 150, 156, 154, 143, 135, 127, 130, 143, 153, 149, 141, 127, 136, 144, 28.17945 + 148, 149, 153, 149, 143, 147, 148, 147, 148, 147, 148, 147, 148, 150, 152, 151, 28.17946 + 127, 130, 130, 130, 127, 127, 127, 128, 123, 124, 127, 128, 127, 124, 127, 132, 28.17947 + 121, 123, 125, 127, 128, 129, 129, 130, 131, 129, 128, 130, 130, 127, 127, 129, 28.17948 + 128, 128, 128, 131, 134, 138, 140, 139, 142, 147, 150, 153, 151, 148, 147, 145, 28.17949 + 144, 145, 147, 149, 150, 151, 151, 151, 156, 152, 150, 149, 146, 143, 147, 152, 28.17950 + 153, 149, 145, 145, 150, 152, 151, 148, 153, 153, 152, 149, 150, 152, 151, 145, 28.17951 + 145, 148, 152, 152, 153, 153, 157, 161, 150, 150, 150, 153, 155, 156, 155, 153, 28.17952 + 152, 151, 150, 149, 148, 148, 147, 148, 151, 151, 151, 153, 154, 157, 158, 160, 28.17953 + 159, 158, 157, 156, 156, 159, 161, 163, 156, 156, 157, 158, 159, 161, 163, 165, 28.17954 + 166, 164, 162, 159, 158, 156, 155, 156, 157, 158, 157, 157, 158, 157, 157, 155, 28.17955 + 153, 154, 155, 156, 156, 158, 160, 163, 165, 164, 158, 156, 155, 157, 160, 162, 28.17956 + 158, 153, 148, 151, 156, 160, 156, 153, 152, 152, 150, 151, 150, 151, 150, 152, 28.17957 + 151, 140, 144, 149, 144, 144, 147, 144, 137, 142, 139, 127, 125, 137, 150, 154, 28.17958 + 150, 144, 133, 131, 140, 153, 150, 140, 144, 145, 145, 146, 146, 148, 147, 148, 28.17959 + 142, 142, 141, 114, 118, 118, 119, 117, 119, 122, 126, 121, 124, 127, 127, 126, 28.17960 + 129, 129, 130, 128, 129, 130, 132, 133, 133, 133, 133, 131, 125, 123, 125, 124, 28.17961 + 121, 121, 126, 129, 130, 131, 132, 132, 133, 135, 137, 142, 145, 148, 151, 150, 28.17962 + 149, 149, 150, 150, 152, 153, 155, 156, 156, 155, 154, 158, 154, 153, 153, 150, 28.17963 + 144, 145, 150, 152, 149, 147, 147, 148, 151, 152, 153, 148, 150, 148, 144, 145, 28.17964 + 148, 147, 140, 143, 148, 153, 155, 154, 153, 155, 158, 154, 152, 150, 150, 153, 28.17965 + 155, 154, 153, 154, 152, 151, 150, 149, 150, 150, 151, 153, 153, 152, 152, 153, 28.17966 + 155, 155, 158, 161, 160, 159, 159, 161, 163, 164, 164, 159, 159, 160, 160, 161, 28.17967 + 160, 160, 161, 163, 161, 159, 156, 155, 154, 155, 156, 156, 157, 157, 158, 158, 28.17968 + 157, 158, 155, 151, 153, 155, 156, 154, 154, 155, 158, 167, 165, 161, 157, 151, 28.17969 + 150, 149, 150, 152, 150, 146, 148, 151, 154, 152, 151, 143, 145, 144, 146, 146, 28.17970 + 147, 146, 147, 157, 147, 148, 153, 148, 148, 150, 146, 144, 143, 139, 128, 119, 28.17971 + 122, 141, 158, 158, 156, 144, 131, 131, 144, 147, 144, 145, 146, 145, 146, 146, 28.17972 + 147, 146, 146, 148, 146, 144, 120, 123, 124, 121, 118, 117, 120, 124, 124, 128, 28.17973 + 129, 126, 127, 132, 129, 122, 132, 133, 133, 132, 130, 128, 126, 126, 110, 105, 28.17974 + 105, 110, 114, 113, 118, 126, 127, 127, 128, 125, 120, 119, 120, 122, 135, 136, 28.17975 + 140, 143, 143, 145, 148, 150, 151, 153, 154, 155, 155, 154, 152, 151, 156, 154, 28.17976 + 156, 160, 156, 150, 149, 153, 149, 150, 151, 149, 146, 147, 152, 157, 151, 153, 28.17977 + 151, 147, 147, 151, 150, 143, 146, 151, 156, 155, 151, 147, 146, 147, 158, 153, 28.17978 + 148, 145, 146, 147, 146, 146, 152, 151, 151, 152, 154, 156, 159, 160, 157, 155, 28.17979 + 154, 154, 153, 154, 155, 156, 153, 154, 155, 157, 159, 160, 158, 157, 161, 162, 28.17980 + 161, 160, 157, 154, 150, 148, 159, 159, 157, 155, 153, 154, 156, 156, 150, 151, 28.17981 + 152, 153, 153, 154, 153, 150, 144, 146, 150, 150, 147, 146, 146, 148, 146, 148, 28.17982 + 149, 148, 147, 147, 148, 150, 149, 150, 150, 149, 148, 148, 150, 151, 145, 146, 28.17983 + 147, 148, 148, 148, 146, 146, 142, 131, 132, 138, 135, 135, 136, 131, 136, 127, 28.17984 + 130, 138, 135, 122, 121, 132, 117, 142, 160, 154, 140, 138, 141, 143, 144, 144, 28.17985 + 143, 143, 142, 142, 140, 140, 144, 141, 139, 130, 124, 122, 125, 125, 120, 117, 28.17986 + 120, 130, 124, 124, 132, 136, 131, 127, 127, 125, 119, 131, 122, 120, 114, 96, 28.17987 + 117, 109, 110, 110, 109, 107, 106, 107, 108, 120, 114, 115, 122, 123, 117, 119, 28.17988 + 127, 128, 121, 122, 134, 144, 145, 146, 148, 147, 150, 153, 153, 151, 151, 155, 28.17989 + 158, 162, 161, 159, 156, 155, 155, 155, 155, 150, 149, 150, 150, 150, 150, 151, 28.17990 + 151, 144, 143, 143, 147, 151, 152, 149, 146, 154, 155, 155, 154, 154, 156, 156, 28.17991 + 157, 150, 153, 155, 152, 148, 147, 151, 158, 162, 160, 156, 153, 151, 152, 155, 28.17992 + 157, 151, 153, 157, 159, 160, 160, 159, 158, 151, 153, 155, 155, 155, 156, 159, 28.17993 + 162, 159, 156, 153, 153, 155, 156, 154, 152, 153, 151, 152, 155, 154, 151, 150, 28.17994 + 153, 149, 149, 150, 151, 153, 153, 151, 149, 150, 153, 153, 149, 151, 156, 157, 28.17995 + 155, 159, 153, 150, 151, 151, 146, 147, 153, 148, 149, 149, 149, 148, 146, 143, 28.17996 + 142, 144, 142, 140, 139, 139, 140, 142, 143, 140, 150, 132, 122, 133, 104, 128, 28.17997 + 144, 139, 148, 149, 141, 136, 133, 120, 100, 100, 111, 140, 171, 152, 147, 123, 28.17998 + 144, 139, 136, 141, 150, 151, 143, 141, 145, 146, 146, 146, 26, 28, 28, 27, 28.17999 + 25, 24, 24, 24, 24, 24, 24, 25, 25, 24, 26, 26, 27, 35, 33, 31, 28.18000 + 37, 33, 27, 31, 30, 31, 33, 37, 38, 38, 38, 35, 37, 35, 37, 35, 28.18001 + 37, 35, 37, 35, 34, 33, 36, 35, 38, 37, 39, 39, 38, 42, 42, 39, 28.18002 + 40, 43, 43, 41, 43, 42, 42, 41, 41, 42, 42, 43, 42, 42, 42, 43, 28.18003 + 43, 44, 44, 44, 43, 44, 45, 46, 46, 46, 46, 45, 45, 45, 47, 48, 28.18004 + 48, 49, 49, 49, 49, 49, 49, 50, 50, 51, 51, 51, 51, 51, 51, 52, 28.18005 + 52, 53, 53, 53, 56, 55, 54, 53, 54, 55, 57, 58, 54, 58, 54, 51, 28.18006 + 58, 56, 54, 59, 58, 58, 61, 60, 59, 58, 61, 62, 58, 59, 60, 61, 28.18007 + 61, 61, 61, 60, 55, 62, 60, 57, 62, 60, 57, 66, 63, 61, 62, 59, 28.18008 + 62, 62, 67, 66, 68, 68, 66, 72, 70, 62, 66, 46, 0, 16, 54, 62, 28.18009 + 86, 85, 101, 97, 91, 86, 75, 76, 89, 90, 86, 90, 91, 86, 86, 89, 28.18010 + 89, 87, 88, 91, 92, 91, 89, 89, 91, 91, 89, 88, 90, 91, 91, 91, 28.18011 + 91, 90, 89, 88, 92, 92, 92, 91, 91, 90, 90, 90, 92, 91, 91, 27, 28.18012 + 27, 27, 26, 26, 25, 25, 25, 21, 22, 24, 25, 26, 25, 27, 26, 31, 28.18013 + 32, 32, 31, 30, 31, 35, 38, 34, 35, 37, 38, 37, 36, 38, 39, 39, 28.18014 + 37, 40, 37, 38, 34, 33, 30, 37, 35, 37, 35, 37, 36, 40, 40, 40, 28.18015 + 40, 40, 41, 41, 42, 42, 42, 44, 43, 43, 42, 42, 43, 43, 44, 41, 28.18016 + 43, 45, 44, 43, 42, 42, 43, 44, 47, 48, 45, 45, 48, 47, 42, 43, 28.18017 + 41, 43, 44, 44, 45, 45, 45, 49, 49, 50, 51, 51, 52, 52, 52, 52, 28.18018 + 56, 56, 53, 54, 57, 57, 55, 54, 54, 54, 55, 55, 56, 56, 56, 55, 28.18019 + 55, 59, 57, 58, 55, 58, 57, 56, 58, 60, 55, 58, 59, 61, 59, 63, 28.18020 + 61, 59, 60, 64, 65, 63, 61, 64, 63, 61, 60, 60, 61, 63, 64, 60, 28.18021 + 63, 65, 60, 62, 63, 65, 60, 70, 63, 67, 64, 72, 53, 64, 42, 0, 28.18022 + 19, 53, 60, 89, 87, 95, 96, 92, 91, 80, 79, 90, 90, 84, 86, 86, 28.18023 + 84, 84, 87, 88, 85, 85, 89, 90, 90, 90, 90, 90, 90, 90, 90, 89, 28.18024 + 91, 93, 93, 91, 90, 90, 91, 93, 93, 91, 90, 90, 90, 90, 90, 90, 28.18025 + 97, 94, 26, 26, 25, 25, 25, 24, 24, 24, 25, 25, 26, 27, 28, 28, 28.18026 + 29, 30, 31, 32, 32, 31, 30, 31, 35, 38, 32, 33, 36, 36, 36, 36, 28.18027 + 38, 37, 37, 37, 38, 38, 38, 37, 36, 36, 40, 39, 38, 37, 37, 37, 28.18028 + 38, 38, 40, 40, 40, 41, 41, 42, 42, 42, 44, 43, 43, 42, 42, 43, 28.18029 + 43, 44, 42, 43, 45, 45, 44, 42, 43, 44, 44, 48, 48, 45, 45, 48, 28.18030 + 47, 41, 43, 41, 42, 42, 44, 45, 45, 45, 49, 49, 50, 51, 51, 52, 28.18031 + 52, 52, 52, 56, 56, 53, 54, 57, 57, 55, 54, 54, 55, 55, 55, 56, 28.18032 + 56, 56, 55, 58, 60, 60, 59, 58, 59, 60, 57, 60, 60, 57, 58, 61, 28.18033 + 62, 59, 62, 61, 60, 61, 63, 64, 63, 62, 63, 63, 62, 61, 61, 62, 28.18034 + 63, 63, 62, 65, 65, 62, 62, 65, 65, 62, 67, 63, 65, 63, 70, 54, 28.18035 + 63, 42, 0, 22, 53, 60, 87, 85, 93, 96, 90, 90, 81, 81, 90, 92, 28.18036 + 84, 87, 88, 85, 85, 89, 89, 86, 87, 90, 90, 90, 90, 90, 90, 90, 28.18037 + 90, 90, 89, 91, 93, 93, 91, 90, 90, 91, 93, 92, 91, 90, 90, 90, 28.18038 + 90, 91, 90, 97, 94, 25, 24, 24, 24, 24, 23, 23, 23, 27, 27, 26, 28.18039 + 26, 26, 28, 30, 31, 29, 30, 32, 32, 31, 31, 35, 37, 32, 34, 36, 28.18040 + 36, 35, 34, 36, 37, 36, 36, 36, 36, 37, 37, 38, 39, 41, 40, 39, 28.18041 + 38, 37, 37, 37, 37, 40, 40, 40, 41, 41, 42, 42, 42, 44, 43, 43, 28.18042 + 42, 42, 43, 43, 44, 42, 44, 46, 46, 44, 43, 44, 45, 45, 48, 49, 28.18043 + 46, 45, 47, 46, 40, 43, 42, 42, 42, 45, 45, 45, 45, 49, 49, 50, 28.18044 + 51, 51, 52, 52, 52, 52, 56, 56, 53, 54, 57, 57, 55, 54, 55, 55, 28.18045 + 55, 56, 56, 56, 56, 56, 59, 61, 61, 60, 59, 60, 61, 57, 60, 60, 28.18046 + 58, 58, 61, 62, 59, 60, 61, 63, 62, 62, 61, 63, 64, 63, 63, 62, 28.18047 + 62, 62, 62, 63, 63, 63, 66, 66, 63, 63, 66, 66, 63, 65, 62, 64, 28.18048 + 62, 70, 56, 64, 41, 0, 22, 54, 61, 87, 85, 93, 96, 88, 89, 80, 28.18049 + 80, 91, 93, 86, 88, 89, 86, 86, 90, 90, 87, 88, 91, 90, 90, 90, 28.18050 + 90, 90, 90, 90, 90, 89, 91, 93, 93, 91, 90, 90, 91, 93, 92, 91, 28.18051 + 90, 90, 90, 91, 91, 90, 97, 94, 25, 25, 24, 24, 24, 24, 24, 24, 28.18052 + 27, 26, 24, 23, 23, 25, 28, 30, 28, 30, 33, 32, 31, 31, 35, 37, 28.18053 + 35, 36, 39, 38, 37, 37, 39, 40, 38, 37, 36, 35, 35, 37, 39, 40, 28.18054 + 40, 40, 39, 38, 38, 38, 39, 39, 40, 40, 40, 41, 41, 42, 42, 42, 28.18055 + 44, 43, 43, 42, 42, 43, 43, 44, 43, 45, 47, 47, 45, 44, 45, 46, 28.18056 + 46, 49, 49, 46, 45, 47, 46, 40, 44, 42, 42, 43, 45, 45, 46, 46, 28.18057 + 49, 49, 50, 51, 51, 52, 52, 52, 52, 56, 56, 53, 54, 57, 57, 55, 28.18058 + 55, 55, 55, 56, 56, 56, 57, 57, 57, 59, 61, 62, 60, 60, 60, 62, 28.18059 + 57, 60, 61, 58, 58, 62, 62, 59, 59, 62, 64, 63, 61, 60, 62, 65, 28.18060 + 63, 63, 63, 62, 62, 63, 63, 63, 62, 65, 65, 62, 62, 65, 65, 62, 28.18061 + 64, 62, 63, 61, 70, 57, 65, 39, 0, 23, 55, 61, 87, 85, 93, 96, 28.18062 + 89, 90, 81, 80, 90, 92, 85, 87, 88, 85, 86, 89, 89, 87, 87, 90, 28.18063 + 91, 91, 90, 90, 90, 90, 89, 89, 89, 91, 93, 93, 91, 90, 90, 91, 28.18064 + 92, 92, 91, 90, 90, 90, 91, 92, 90, 97, 94, 25, 25, 26, 26, 26, 28.18065 + 26, 26, 26, 28, 27, 25, 23, 24, 25, 28, 29, 27, 29, 31, 31, 32, 28.18066 + 31, 32, 34, 35, 37, 38, 38, 38, 38, 39, 41, 40, 39, 37, 35, 35, 28.18067 + 36, 37, 38, 37, 37, 37, 38, 39, 40, 42, 43, 40, 40, 40, 41, 41, 28.18068 + 42, 42, 42, 44, 43, 43, 42, 42, 43, 43, 44, 43, 45, 47, 47, 45, 28.18069 + 44, 45, 46, 45, 48, 49, 46, 45, 47, 46, 40, 44, 42, 43, 43, 45, 28.18070 + 46, 46, 46, 49, 49, 50, 51, 51, 52, 52, 52, 52, 56, 56, 53, 54, 28.18071 + 57, 57, 55, 55, 55, 56, 56, 56, 57, 57, 57, 57, 59, 61, 62, 60, 28.18072 + 60, 60, 62, 58, 61, 61, 59, 59, 62, 63, 60, 59, 62, 64, 63, 61, 28.18073 + 60, 62, 65, 63, 63, 63, 64, 64, 63, 63, 63, 61, 64, 64, 61, 61, 28.18074 + 64, 64, 61, 63, 62, 64, 60, 70, 59, 64, 36, 0, 24, 55, 62, 88, 28.18075 + 85, 92, 96, 91, 92, 82, 81, 90, 91, 83, 85, 87, 84, 84, 88, 88, 28.18076 + 85, 86, 89, 91, 91, 91, 90, 90, 89, 89, 89, 89, 91, 93, 93, 91, 28.18077 + 90, 90, 91, 92, 91, 90, 90, 90, 91, 92, 92, 90, 97, 94, 25, 26, 28.18078 + 26, 26, 26, 27, 27, 27, 30, 29, 28, 27, 27, 28, 30, 30, 27, 29, 28.18079 + 31, 31, 32, 32, 32, 33, 33, 35, 36, 36, 36, 36, 37, 39, 39, 38, 28.18080 + 37, 37, 36, 36, 36, 36, 36, 37, 37, 38, 40, 42, 43, 44, 40, 40, 28.18081 + 40, 41, 41, 42, 42, 42, 44, 43, 43, 42, 42, 43, 43, 44, 42, 44, 28.18082 + 46, 46, 44, 43, 44, 45, 44, 47, 48, 45, 45, 48, 47, 42, 45, 43, 28.18083 + 43, 43, 46, 46, 46, 47, 49, 49, 50, 51, 51, 52, 52, 52, 52, 56, 28.18084 + 56, 53, 54, 57, 57, 55, 56, 56, 56, 56, 57, 57, 57, 58, 56, 59, 28.18085 + 61, 61, 60, 59, 60, 61, 58, 61, 62, 59, 59, 63, 63, 60, 60, 61, 28.18086 + 63, 62, 62, 61, 63, 64, 63, 63, 64, 64, 64, 64, 63, 63, 60, 63, 28.18087 + 63, 60, 60, 63, 63, 60, 64, 63, 64, 59, 69, 59, 64, 32, 0, 25, 28.18088 + 56, 62, 88, 85, 92, 96, 92, 92, 83, 81, 90, 90, 82, 84, 86, 83, 28.18089 + 84, 87, 87, 85, 85, 88, 92, 92, 91, 90, 90, 89, 88, 88, 89, 91, 28.18090 + 93, 93, 91, 90, 90, 91, 91, 91, 90, 90, 90, 91, 92, 93, 90, 97, 28.18091 + 94, 24, 24, 25, 25, 25, 26, 26, 26, 29, 29, 29, 29, 29, 29, 29, 28.18092 + 29, 24, 27, 31, 32, 31, 30, 32, 33, 32, 33, 37, 36, 35, 35, 36, 28.18093 + 38, 36, 36, 37, 38, 38, 38, 37, 37, 38, 38, 38, 39, 40, 41, 42, 28.18094 + 43, 40, 40, 40, 41, 41, 42, 42, 42, 44, 43, 43, 42, 42, 43, 43, 28.18095 + 44, 42, 43, 45, 45, 44, 42, 43, 44, 42, 46, 47, 45, 46, 49, 49, 28.18096 + 44, 45, 43, 43, 44, 46, 46, 47, 47, 49, 49, 50, 51, 51, 52, 52, 28.18097 + 52, 52, 56, 56, 53, 54, 57, 57, 55, 56, 56, 56, 57, 57, 57, 58, 28.18098 + 58, 55, 58, 60, 60, 59, 58, 59, 60, 58, 61, 62, 59, 60, 63, 63, 28.18099 + 60, 62, 61, 60, 61, 63, 64, 63, 62, 63, 63, 64, 65, 65, 64, 63, 28.18100 + 63, 61, 64, 64, 61, 61, 64, 64, 61, 65, 65, 65, 58, 69, 60, 62, 28.18101 + 28, 0, 26, 57, 63, 88, 85, 92, 95, 91, 91, 82, 81, 90, 91, 83, 28.18102 + 86, 87, 84, 85, 88, 88, 86, 86, 89, 92, 92, 91, 90, 90, 89, 88, 28.18103 + 88, 89, 91, 93, 93, 91, 90, 90, 91, 91, 90, 90, 90, 90, 91, 92, 28.18104 + 93, 90, 97, 94, 23, 23, 23, 24, 24, 25, 25, 25, 26, 27, 27, 28, 28.18105 + 28, 27, 26, 26, 24, 27, 31, 32, 31, 30, 32, 33, 34, 36, 39, 39, 28.18106 + 38, 37, 39, 40, 32, 33, 36, 38, 39, 40, 39, 39, 40, 40, 39, 39, 28.18107 + 39, 40, 41, 41, 40, 40, 40, 41, 41, 42, 42, 42, 44, 43, 43, 42, 28.18108 + 42, 43, 43, 44, 41, 43, 45, 44, 43, 42, 42, 43, 41, 45, 46, 45, 28.18109 + 46, 50, 50, 45, 45, 43, 43, 44, 46, 47, 47, 47, 49, 49, 50, 51, 28.18110 + 51, 52, 52, 52, 52, 56, 56, 53, 54, 57, 57, 55, 56, 56, 56, 57, 28.18111 + 57, 58, 58, 58, 55, 57, 59, 59, 58, 57, 58, 59, 58, 62, 62, 59, 28.18112 + 60, 63, 63, 61, 63, 61, 59, 60, 64, 65, 63, 61, 62, 63, 65, 66, 28.18113 + 66, 65, 63, 62, 63, 66, 66, 63, 63, 66, 66, 63, 65, 66, 66, 58, 28.18114 + 69, 60, 62, 26, 0, 26, 57, 63, 88, 85, 92, 95, 88, 89, 80, 80, 28.18115 + 90, 92, 85, 88, 88, 86, 86, 89, 90, 87, 87, 91, 92, 92, 91, 90, 28.18116 + 90, 89, 88, 88, 89, 91, 93, 93, 91, 90, 90, 91, 90, 90, 90, 90, 28.18117 + 90, 91, 93, 93, 90, 97, 94, 27, 27, 28, 28, 28, 27, 26, 26, 28, 28.18118 + 27, 26, 27, 29, 30, 29, 28, 28, 28, 28, 28, 28, 28, 30, 30, 34, 28.18119 + 35, 35, 36, 38, 37, 37, 36, 38, 35, 35, 38, 38, 35, 35, 38, 41, 28.18120 + 40, 40, 40, 40, 41, 42, 43, 45, 44, 42, 40, 39, 39, 40, 40, 43, 28.18121 + 44, 45, 46, 46, 44, 43, 42, 44, 43, 43, 43, 43, 44, 45, 46, 50, 28.18122 + 49, 47, 46, 45, 45, 46, 45, 46, 44, 44, 45, 47, 48, 48, 48, 50, 28.18123 + 50, 52, 52, 52, 53, 53, 53, 57, 56, 55, 55, 57, 57, 56, 55, 61, 28.18124 + 55, 58, 60, 54, 57, 62, 57, 59, 59, 59, 60, 60, 61, 61, 61, 62, 28.18125 + 61, 61, 61, 61, 61, 60, 60, 66, 65, 63, 63, 63, 63, 65, 66, 64, 28.18126 + 64, 64, 64, 64, 64, 64, 64, 64, 66, 65, 61, 61, 65, 66, 64, 71, 28.18127 + 63, 68, 65, 67, 56, 61, 22, 0, 29, 60, 63, 89, 89, 96, 97, 96, 28.18128 + 87, 82, 86, 89, 90, 86, 86, 88, 86, 87, 89, 88, 84, 85, 89, 93, 28.18129 + 92, 90, 88, 86, 85, 85, 84, 89, 93, 94, 91, 91, 93, 91, 87, 96, 28.18130 + 94, 90, 87, 87, 89, 92, 94, 89, 98, 96, 27, 27, 27, 28, 27, 27, 28.18131 + 27, 26, 28, 27, 26, 27, 29, 30, 29, 28, 28, 28, 28, 28, 28, 28, 28.18132 + 30, 30, 34, 35, 35, 36, 38, 37, 37, 36, 39, 36, 36, 39, 39, 36, 28.18133 + 36, 39, 41, 40, 40, 40, 40, 41, 42, 43, 40, 40, 40, 40, 41, 42, 28.18134 + 43, 44, 43, 44, 44, 45, 45, 44, 44, 43, 44, 44, 43, 43, 44, 44, 28.18135 + 45, 46, 48, 47, 46, 46, 46, 47, 48, 47, 46, 44, 44, 45, 47, 48, 28.18136 + 48, 48, 50, 50, 51, 51, 52, 52, 52, 53, 56, 55, 53, 54, 56, 56, 28.18137 + 55, 54, 60, 54, 58, 60, 54, 57, 61, 56, 59, 59, 59, 60, 60, 61, 28.18138 + 61, 61, 61, 61, 61, 61, 61, 61, 61, 62, 63, 62, 61, 61, 61, 61, 28.18139 + 62, 63, 64, 64, 64, 64, 64, 64, 64, 64, 63, 66, 65, 62, 62, 65, 28.18140 + 66, 63, 67, 61, 66, 63, 68, 58, 63, 24, 0, 29, 60, 63, 89, 89, 28.18141 + 96, 97, 96, 87, 82, 86, 89, 90, 86, 86, 88, 86, 87, 89, 88, 84, 28.18142 + 85, 90, 91, 91, 90, 89, 88, 88, 89, 89, 90, 93, 93, 90, 90, 92, 28.18143 + 91, 88, 95, 93, 90, 88, 88, 89, 91, 93, 93, 97, 93, 27, 27, 27, 28.18144 + 27, 27, 27, 27, 27, 28, 27, 26, 27, 29, 30, 29, 28, 28, 26, 26, 28.18145 + 26, 28, 29, 29, 29, 32, 33, 35, 36, 36, 35, 35, 34, 39, 36, 36, 28.18146 + 39, 39, 36, 36, 39, 41, 40, 40, 40, 40, 41, 42, 43, 39, 39, 40, 28.18147 + 42, 43, 43, 43, 43, 44, 44, 44, 43, 43, 44, 44, 45, 44, 44, 43, 28.18148 + 43, 44, 45, 46, 46, 46, 46, 45, 46, 47, 48, 49, 48, 46, 44, 44, 28.18149 + 45, 47, 48, 48, 48, 49, 49, 50, 51, 51, 52, 52, 52, 55, 54, 53, 28.18150 + 53, 55, 56, 54, 53, 60, 54, 57, 59, 53, 56, 61, 56, 59, 59, 59, 28.18151 + 60, 60, 61, 61, 61, 60, 60, 60, 61, 62, 62, 63, 63, 63, 62, 62, 28.18152 + 61, 61, 62, 62, 63, 64, 64, 64, 64, 64, 64, 64, 64, 62, 65, 66, 28.18153 + 63, 63, 66, 65, 62, 64, 59, 64, 62, 68, 61, 66, 24, 0, 30, 61, 28.18154 + 64, 89, 89, 96, 96, 96, 87, 82, 86, 89, 90, 86, 86, 88, 86, 87, 28.18155 + 90, 88, 85, 86, 90, 89, 89, 89, 89, 90, 91, 92, 93, 91, 94, 93, 28.18156 + 89, 89, 92, 92, 89, 93, 92, 91, 90, 90, 90, 91, 91, 95, 97, 90, 28.18157 + 27, 27, 26, 26, 27, 27, 28, 28, 28, 27, 26, 27, 29, 30, 29, 26, 28.18158 + 28, 26, 26, 27, 29, 29, 29, 30, 32, 33, 35, 36, 36, 35, 35, 34, 28.18159 + 39, 36, 36, 39, 39, 36, 36, 39, 41, 40, 40, 40, 40, 41, 42, 43, 28.18160 + 41, 42, 43, 44, 43, 42, 40, 39, 45, 44, 43, 42, 42, 44, 45, 46, 28.18161 + 45, 44, 44, 44, 44, 45, 46, 47, 46, 46, 46, 46, 47, 48, 48, 47, 28.18162 + 46, 44, 44, 45, 47, 48, 48, 48, 49, 49, 50, 50, 51, 51, 52, 52, 28.18163 + 56, 55, 54, 54, 56, 56, 55, 54, 59, 54, 57, 59, 53, 56, 60, 56, 28.18164 + 59, 59, 59, 60, 60, 61, 61, 61, 59, 60, 60, 61, 62, 63, 64, 64, 28.18165 + 64, 64, 64, 64, 64, 64, 64, 64, 65, 65, 65, 65, 65, 65, 65, 65, 28.18166 + 61, 65, 66, 64, 64, 66, 65, 61, 63, 59, 64, 61, 68, 62, 66, 21, 28.18167 + 0, 30, 61, 64, 90, 89, 96, 96, 96, 87, 82, 86, 89, 90, 86, 86, 28.18168 + 87, 86, 87, 90, 89, 85, 87, 91, 89, 89, 88, 89, 89, 90, 92, 92, 28.18169 + 92, 94, 92, 88, 88, 91, 92, 90, 91, 92, 92, 92, 91, 91, 90, 89, 28.18170 + 94, 97, 91, 27, 26, 26, 26, 26, 27, 29, 29, 28, 27, 26, 27, 29, 28.18171 + 30, 29, 26, 28, 26, 26, 27, 27, 28, 30, 31, 32, 33, 33, 34, 36, 28.18172 + 35, 35, 34, 40, 37, 37, 40, 40, 37, 37, 40, 41, 40, 40, 40, 40, 28.18173 + 41, 42, 43, 41, 42, 43, 44, 44, 43, 41, 40, 44, 44, 43, 42, 43, 28.18174 + 44, 46, 47, 45, 45, 44, 44, 45, 45, 46, 47, 48, 48, 48, 48, 47, 28.18175 + 46, 46, 43, 46, 44, 44, 45, 47, 48, 48, 48, 49, 49, 50, 51, 51, 28.18176 + 52, 52, 52, 58, 57, 56, 56, 58, 58, 57, 56, 60, 54, 57, 59, 53, 28.18177 + 56, 61, 56, 59, 59, 59, 60, 60, 61, 61, 61, 60, 60, 61, 62, 63, 28.18178 + 64, 64, 65, 64, 64, 64, 64, 64, 64, 64, 64, 65, 65, 65, 65, 65, 28.18179 + 65, 65, 65, 61, 65, 66, 64, 64, 66, 65, 61, 65, 62, 66, 60, 67, 28.18180 + 62, 63, 16, 0, 31, 62, 65, 90, 89, 96, 96, 96, 87, 82, 86, 89, 28.18181 + 90, 86, 86, 87, 86, 87, 90, 89, 86, 88, 92, 90, 89, 88, 88, 87, 28.18182 + 88, 88, 88, 92, 94, 92, 88, 88, 91, 92, 90, 91, 91, 92, 92, 92, 28.18183 + 91, 90, 89, 90, 98, 95, 27, 26, 25, 25, 26, 27, 29, 31, 28, 27, 28.18184 + 26, 27, 29, 30, 29, 26, 28, 26, 27, 27, 28, 29, 31, 31, 32, 33, 28.18185 + 33, 34, 36, 35, 35, 34, 40, 37, 37, 40, 40, 37, 37, 40, 41, 40, 28.18186 + 40, 40, 40, 41, 42, 43, 38, 39, 41, 43, 44, 45, 46, 46, 43, 43, 28.18187 + 43, 43, 44, 45, 46, 47, 45, 45, 45, 45, 45, 46, 47, 47, 48, 48, 28.18188 + 49, 48, 47, 46, 45, 42, 46, 44, 44, 45, 47, 48, 48, 48, 50, 50, 28.18189 + 52, 52, 52, 53, 53, 53, 59, 58, 56, 57, 59, 59, 58, 57, 61, 55, 28.18190 + 58, 60, 54, 57, 62, 57, 59, 59, 59, 60, 60, 61, 61, 61, 61, 61, 28.18191 + 62, 62, 63, 64, 64, 64, 61, 62, 62, 63, 63, 62, 62, 61, 66, 66, 28.18192 + 66, 66, 66, 66, 66, 66, 62, 65, 66, 63, 63, 66, 65, 62, 66, 64, 28.18193 + 67, 60, 67, 62, 62, 11, 0, 32, 63, 65, 90, 89, 96, 96, 96, 87, 28.18194 + 82, 86, 89, 90, 86, 86, 87, 86, 87, 91, 90, 87, 88, 93, 91, 90, 28.18195 + 89, 87, 86, 86, 86, 86, 91, 94, 93, 89, 89, 92, 92, 89, 91, 92, 28.18196 + 92, 92, 92, 91, 90, 89, 89, 98, 97, 27, 26, 25, 24, 25, 27, 30, 28.18197 + 31, 28, 27, 26, 27, 29, 30, 29, 26, 28, 26, 27, 27, 28, 29, 32, 28.18198 + 32, 30, 31, 33, 34, 34, 33, 35, 34, 40, 37, 37, 40, 40, 37, 37, 28.18199 + 40, 41, 40, 40, 40, 40, 41, 42, 43, 39, 40, 40, 41, 43, 45, 47, 28.18200 + 48, 41, 42, 43, 44, 45, 46, 46, 46, 46, 45, 45, 45, 45, 46, 47, 28.18201 + 48, 46, 47, 48, 48, 48, 47, 46, 43, 46, 44, 44, 45, 47, 48, 48, 28.18202 + 48, 51, 51, 53, 53, 54, 54, 54, 54, 58, 57, 56, 56, 58, 59, 57, 28.18203 + 56, 62, 56, 60, 61, 56, 58, 63, 58, 59, 59, 59, 60, 60, 61, 61, 28.18204 + 61, 62, 63, 63, 63, 63, 63, 63, 63, 61, 61, 62, 63, 63, 62, 61, 28.18205 + 61, 66, 66, 66, 66, 66, 66, 66, 66, 63, 66, 65, 62, 62, 65, 66, 28.18206 + 63, 66, 64, 67, 59, 67, 63, 62, 9, 0, 33, 63, 66, 90, 89, 96, 28.18207 + 96, 96, 87, 82, 86, 89, 90, 86, 86, 87, 86, 87, 91, 90, 87, 89, 28.18208 + 94, 92, 91, 90, 88, 88, 87, 87, 87, 90, 93, 93, 90, 90, 92, 91, 28.18209 + 88, 92, 92, 92, 91, 91, 90, 90, 90, 91, 98, 94, 27, 26, 25, 24, 28.18210 + 25, 27, 30, 32, 28, 27, 26, 27, 29, 30, 29, 28, 28, 26, 27, 28, 28.18211 + 29, 29, 32, 33, 30, 31, 33, 34, 34, 33, 33, 34, 39, 38, 38, 41, 28.18212 + 41, 38, 38, 41, 41, 40, 40, 40, 40, 41, 42, 43, 44, 43, 42, 41, 28.18213 + 41, 43, 44, 45, 40, 41, 43, 45, 46, 46, 45, 45, 46, 45, 45, 45, 28.18214 + 45, 46, 47, 48, 44, 45, 47, 48, 49, 49, 48, 47, 46, 44, 44, 45, 28.18215 + 47, 48, 48, 48, 52, 52, 54, 54, 54, 55, 55, 55, 57, 56, 55, 55, 28.18216 + 57, 57, 56, 55, 63, 57, 61, 62, 56, 59, 64, 57, 57, 57, 57, 58, 28.18217 + 58, 59, 59, 59, 62, 64, 63, 63, 63, 63, 63, 62, 63, 63, 65, 66, 28.18218 + 66, 65, 63, 63, 66, 66, 66, 66, 66, 66, 68, 66, 64, 66, 65, 61, 28.18219 + 61, 65, 66, 64, 64, 63, 66, 58, 69, 67, 65, 9, 0, 33, 64, 64, 28.18220 + 90, 87, 96, 94, 96, 86, 82, 86, 89, 90, 88, 88, 87, 86, 88, 91, 28.18221 + 90, 88, 89, 94, 92, 91, 90, 89, 89, 89, 90, 90, 89, 93, 94, 91, 28.18222 + 91, 93, 91, 87, 93, 92, 91, 90, 90, 90, 91, 91, 93, 95, 90, 27, 28.18223 + 27, 27, 28, 28, 29, 29, 29, 30, 29, 29, 29, 29, 30, 31, 30, 27, 28.18224 + 27, 27, 28, 28, 29, 29, 29, 31, 31, 31, 32, 32, 33, 33, 35, 35, 28.18225 + 36, 37, 38, 38, 38, 38, 37, 36, 37, 39, 39, 37, 37, 39, 42, 42, 28.18226 + 43, 43, 44, 44, 45, 45, 45, 47, 47, 47, 46, 46, 45, 45, 45, 44, 28.18227 + 51, 48, 45, 49, 46, 43, 50, 45, 49, 48, 44, 44, 51, 53, 50, 47, 28.18228 + 48, 48, 49, 49, 48, 50, 49, 50, 58, 56, 52, 57, 54, 51, 59, 49, 28.18229 + 54, 55, 53, 54, 58, 54, 46, 62, 58, 57, 59, 59, 56, 56, 59, 57, 28.18230 + 54, 55, 55, 56, 57, 58, 58, 57, 59, 60, 60, 63, 62, 62, 62, 61, 28.18231 + 63, 64, 64, 64, 64, 65, 66, 66, 67, 67, 66, 65, 66, 70, 71, 61, 28.18232 + 64, 66, 65, 62, 60, 63, 65, 68, 60, 68, 63, 66, 63, 66, 7, 1, 28.18233 + 38, 59, 68, 82, 89, 90, 91, 95, 83, 79, 86, 93, 90, 88, 91, 90, 28.18234 + 86, 86, 89, 90, 87, 87, 91, 88, 90, 92, 91, 89, 88, 90, 92, 90, 28.18235 + 94, 94, 91, 90, 92, 91, 87, 93, 92, 91, 90, 90, 90, 90, 91, 89, 28.18236 + 88, 91, 27, 27, 28, 28, 28, 29, 29, 29, 31, 31, 30, 30, 31, 32, 28.18237 + 33, 31, 29, 27, 28, 28, 28, 29, 29, 29, 31, 31, 31, 32, 32, 33, 28.18238 + 33, 33, 36, 36, 36, 37, 37, 38, 38, 38, 36, 38, 39, 39, 38, 37, 28.18239 + 39, 40, 43, 43, 43, 44, 44, 45, 45, 45, 47, 47, 47, 46, 46, 45, 28.18240 + 45, 45, 44, 51, 48, 45, 49, 46, 43, 50, 45, 48, 48, 45, 46, 51, 28.18241 + 52, 49, 48, 48, 48, 48, 48, 48, 50, 50, 44, 52, 51, 49, 55, 52, 28.18242 + 50, 58, 50, 52, 52, 49, 51, 55, 54, 49, 57, 53, 52, 54, 53, 49, 28.18243 + 49, 51, 52, 50, 53, 54, 55, 54, 55, 53, 59, 59, 61, 61, 64, 64, 28.18244 + 64, 65, 60, 61, 62, 61, 61, 61, 62, 64, 66, 67, 67, 66, 67, 68, 28.18245 + 70, 71, 64, 65, 67, 66, 63, 61, 64, 65, 70, 63, 72, 66, 66, 62, 28.18246 + 65, 6, 2, 37, 59, 66, 82, 89, 88, 91, 92, 81, 78, 85, 92, 89, 28.18247 + 89, 90, 90, 86, 86, 89, 90, 87, 87, 91, 88, 90, 92, 91, 89, 88, 28.18248 + 90, 92, 89, 93, 93, 90, 90, 92, 92, 88, 93, 92, 91, 90, 90, 90, 28.18249 + 90, 91, 89, 90, 90, 27, 28, 28, 28, 29, 29, 29, 29, 32, 32, 32, 28.18250 + 32, 32, 33, 34, 32, 29, 28, 28, 28, 29, 29, 29, 29, 31, 31, 31, 28.18251 + 32, 32, 33, 33, 33, 37, 37, 36, 35, 36, 37, 39, 40, 36, 38, 39, 28.18252 + 39, 38, 38, 39, 41, 43, 43, 43, 44, 44, 45, 45, 45, 47, 47, 46, 28.18253 + 46, 46, 46, 45, 45, 44, 51, 48, 45, 49, 46, 43, 50, 45, 48, 49, 28.18254 + 47, 48, 51, 51, 48, 50, 47, 47, 46, 46, 47, 51, 52, 47, 54, 53, 28.18255 + 50, 55, 53, 50, 57, 58, 58, 56, 54, 56, 61, 61, 59, 62, 59, 58, 28.18256 + 60, 60, 57, 58, 60, 50, 50, 53, 54, 54, 53, 54, 53, 60, 60, 60, 28.18257 + 59, 61, 61, 62, 62, 62, 62, 63, 62, 61, 62, 67, 69, 64, 65, 67, 28.18258 + 67, 68, 68, 70, 70, 66, 66, 67, 67, 65, 63, 66, 66, 73, 65, 74, 28.18259 + 68, 67, 62, 64, 4, 2, 37, 59, 67, 82, 89, 88, 91, 90, 79, 77, 28.18260 + 84, 92, 89, 88, 90, 90, 86, 86, 89, 90, 87, 87, 91, 89, 90, 91, 28.18261 + 91, 89, 89, 90, 91, 88, 92, 92, 90, 90, 93, 93, 89, 93, 92, 91, 28.18262 + 90, 90, 90, 90, 91, 91, 91, 91, 28, 28, 28, 29, 29, 29, 30, 30, 28.18263 + 32, 32, 32, 31, 32, 33, 34, 34, 30, 28, 28, 29, 29, 29, 30, 30, 28.18264 + 31, 31, 31, 32, 32, 33, 33, 35, 38, 37, 35, 34, 35, 37, 39, 41, 28.18265 + 37, 38, 40, 39, 38, 38, 39, 41, 43, 43, 43, 44, 44, 45, 45, 45, 28.18266 + 46, 46, 46, 46, 46, 46, 46, 46, 44, 51, 48, 45, 49, 46, 43, 50, 28.18267 + 45, 47, 49, 50, 50, 51, 50, 46, 51, 47, 47, 45, 45, 47, 51, 53, 28.18268 + 52, 58, 55, 52, 57, 54, 50, 55, 51, 50, 49, 49, 52, 54, 54, 53, 28.18269 + 56, 53, 53, 56, 57, 56, 57, 60, 54, 53, 55, 55, 54, 54, 57, 58, 28.18270 + 61, 60, 60, 59, 61, 61, 62, 60, 61, 62, 62, 62, 61, 63, 69, 72, 28.18271 + 63, 65, 68, 67, 68, 68, 70, 70, 65, 66, 67, 67, 66, 66, 67, 67, 28.18272 + 72, 65, 74, 68, 67, 63, 65, 4, 3, 38, 60, 67, 82, 89, 88, 91, 28.18273 + 89, 78, 76, 84, 91, 88, 88, 90, 90, 86, 86, 89, 90, 87, 87, 91, 28.18274 + 90, 90, 90, 90, 90, 90, 90, 90, 87, 91, 92, 90, 91, 94, 94, 90, 28.18275 + 93, 92, 91, 90, 90, 90, 90, 91, 91, 91, 90, 28, 28, 29, 29, 29, 28.18276 + 30, 30, 30, 31, 31, 31, 31, 31, 32, 33, 33, 30, 30, 31, 31, 31, 28.18277 + 32, 32, 32, 33, 33, 33, 34, 34, 35, 35, 35, 38, 37, 35, 34, 35, 28.18278 + 37, 39, 41, 37, 39, 40, 40, 39, 38, 40, 41, 43, 43, 43, 44, 44, 28.18279 + 45, 45, 45, 46, 46, 46, 46, 46, 46, 46, 46, 44, 51, 48, 45, 49, 28.18280 + 46, 43, 50, 47, 47, 49, 51, 52, 50, 49, 47, 51, 47, 45, 43, 45, 28.18281 + 47, 49, 51, 51, 55, 51, 49, 56, 54, 49, 54, 53, 53, 54, 57, 59, 28.18282 + 58, 55, 54, 58, 54, 53, 56, 56, 53, 53, 56, 53, 51, 50, 48, 48, 28.18283 + 49, 53, 56, 53, 54, 55, 57, 59, 61, 62, 63, 61, 61, 61, 59, 59, 28.18284 + 59, 62, 64, 62, 64, 68, 68, 67, 66, 67, 69, 66, 66, 66, 67, 67, 28.18285 + 67, 68, 67, 69, 62, 73, 68, 68, 64, 65, 5, 4, 39, 61, 68, 83, 28.18286 + 89, 88, 91, 89, 78, 76, 83, 91, 89, 88, 90, 90, 86, 86, 89, 90, 28.18287 + 87, 87, 91, 90, 90, 90, 90, 90, 90, 90, 90, 87, 91, 92, 90, 91, 28.18288 + 94, 94, 90, 93, 92, 91, 90, 90, 90, 90, 91, 89, 89, 89, 29, 29, 28.18289 + 29, 29, 30, 30, 30, 31, 31, 31, 30, 30, 31, 32, 33, 33, 31, 31, 28.18290 + 31, 31, 32, 32, 32, 33, 33, 33, 33, 34, 34, 35, 35, 35, 37, 37, 28.18291 + 36, 35, 36, 37, 39, 40, 37, 39, 40, 40, 39, 39, 40, 42, 42, 43, 28.18292 + 43, 44, 44, 45, 45, 45, 45, 45, 46, 46, 46, 46, 47, 47, 44, 51, 28.18293 + 48, 45, 49, 46, 43, 50, 50, 48, 48, 52, 52, 49, 48, 48, 48, 47, 28.18294 + 45, 44, 46, 47, 49, 50, 51, 55, 50, 48, 57, 56, 51, 55, 52, 50, 28.18295 + 52, 57, 58, 54, 51, 50, 52, 48, 46, 47, 45, 40, 39, 41, 34, 33, 28.18296 + 32, 29, 28, 29, 33, 38, 33, 35, 39, 43, 47, 50, 52, 53, 62, 63, 28.18297 + 64, 63, 61, 60, 60, 61, 62, 64, 68, 68, 67, 67, 67, 68, 66, 65, 28.18298 + 65, 66, 68, 68, 69, 67, 67, 61, 72, 68, 68, 63, 64, 4, 5, 40, 28.18299 + 62, 68, 83, 89, 88, 91, 89, 78, 76, 84, 92, 90, 89, 92, 90, 86, 28.18300 + 86, 89, 90, 87, 87, 91, 91, 90, 89, 89, 91, 91, 90, 89, 88, 92, 28.18301 + 92, 90, 90, 93, 93, 89, 93, 92, 91, 90, 90, 90, 90, 91, 89, 88, 28.18302 + 88, 29, 29, 29, 30, 30, 30, 31, 31, 32, 32, 32, 32, 32, 33, 34, 28.18303 + 35, 31, 31, 31, 32, 32, 32, 33, 33, 33, 33, 33, 34, 34, 35, 35, 28.18304 + 35, 36, 36, 36, 37, 37, 38, 38, 38, 38, 39, 41, 40, 39, 39, 40, 28.18305 + 42, 42, 42, 42, 43, 43, 44, 44, 44, 44, 44, 44, 45, 45, 46, 46, 28.18306 + 46, 44, 51, 48, 45, 49, 46, 43, 50, 53, 48, 48, 51, 51, 48, 48, 28.18307 + 50, 46, 44, 46, 46, 46, 46, 48, 48, 49, 52, 47, 43, 50, 47, 40, 28.18308 + 42, 29, 24, 23, 28, 29, 24, 21, 23, 27, 23, 21, 23, 21, 18, 17, 28.18309 + 20, 17, 21, 24, 23, 19, 17, 22, 25, 20, 23, 27, 30, 33, 33, 32, 28.18310 + 31, 49, 53, 57, 60, 60, 60, 62, 63, 59, 62, 66, 67, 68, 67, 67, 28.18311 + 68, 65, 64, 63, 65, 68, 68, 69, 66, 67, 61, 72, 67, 67, 61, 61, 28.18312 + 0, 6, 40, 62, 69, 83, 90, 87, 91, 89, 79, 77, 85, 93, 91, 91, 28.18313 + 93, 90, 86, 86, 89, 90, 87, 87, 91, 92, 90, 88, 89, 91, 92, 90, 28.18314 + 88, 89, 93, 93, 90, 90, 92, 92, 88, 93, 92, 91, 90, 90, 90, 90, 28.18315 + 91, 93, 92, 91, 29, 29, 29, 30, 30, 31, 31, 31, 34, 34, 33, 33, 28.18316 + 33, 34, 35, 36, 31, 31, 31, 32, 32, 33, 33, 33, 33, 33, 33, 34, 28.18317 + 34, 35, 35, 35, 35, 36, 37, 38, 38, 38, 38, 37, 38, 39, 41, 41, 28.18318 + 39, 39, 41, 42, 42, 42, 42, 43, 43, 44, 44, 44, 44, 44, 44, 45, 28.18319 + 45, 46, 46, 46, 44, 51, 48, 45, 49, 46, 43, 50, 54, 49, 47, 51, 28.18320 + 50, 47, 48, 52, 45, 44, 46, 47, 47, 46, 48, 47, 45, 46, 38, 32, 28.18321 + 35, 29, 20, 20, 27, 19, 16, 20, 20, 16, 15, 18, 26, 23, 23, 27, 28.18322 + 28, 26, 28, 31, 18, 24, 30, 31, 27, 23, 25, 26, 25, 27, 29, 30, 28.18323 + 29, 25, 21, 18, 26, 32, 41, 48, 53, 56, 60, 62, 59, 62, 66, 67, 28.18324 + 68, 67, 67, 68, 65, 63, 62, 64, 67, 68, 68, 65, 69, 62, 73, 67, 28.18325 + 65, 59, 58, 0, 6, 41, 62, 69, 83, 90, 87, 91, 90, 79, 77, 85, 28.18326 + 94, 92, 92, 94, 90, 86, 86, 89, 90, 87, 87, 91, 92, 90, 88, 89, 28.18327 + 91, 92, 90, 88, 90, 94, 94, 91, 90, 92, 91, 87, 93, 92, 91, 90, 28.18328 + 90, 90, 90, 91, 95, 94, 92, 30, 32, 33, 32, 30, 29, 30, 32, 30, 28.18329 + 31, 33, 35, 35, 35, 34, 33, 32, 31, 29, 29, 30, 32, 35, 37, 38, 28.18330 + 37, 36, 34, 34, 35, 36, 37, 40, 38, 36, 37, 41, 42, 40, 38, 38, 28.18331 + 39, 41, 41, 39, 39, 41, 42, 42, 43, 43, 44, 44, 43, 43, 42, 38, 28.18332 + 41, 44, 44, 41, 40, 41, 44, 49, 48, 48, 48, 48, 49, 50, 51, 44, 28.18333 + 48, 51, 50, 46, 44, 45, 45, 43, 37, 41, 42, 32, 32, 37, 32, 20, 28.18334 + 20, 13, 12, 20, 15, 12, 21, 20, 16, 20, 21, 16, 23, 27, 17, 33, 28.18335 + 30, 28, 30, 29, 25, 25, 28, 22, 33, 31, 38, 31, 21, 37, 42, 42, 28.18336 + 35, 37, 19, 32, 20, 26, 14, 18, 24, 24, 19, 29, 50, 64, 66, 62, 28.18337 + 68, 63, 59, 65, 64, 63, 71, 64, 64, 65, 66, 66, 67, 70, 70, 70, 28.18338 + 64, 73, 65, 66, 65, 65, 1, 5, 46, 59, 72, 87, 86, 92, 89, 91, 28.18339 + 74, 76, 88, 91, 92, 96, 92, 89, 90, 83, 92, 92, 83, 90, 87, 89, 28.18340 + 89, 90, 90, 90, 89, 88, 88, 91, 92, 92, 93, 93, 92, 92, 91, 93, 28.18341 + 92, 92, 91, 91, 92, 92, 93, 88, 90, 91, 27, 29, 30, 29, 27, 27, 28.18342 + 28, 29, 32, 33, 33, 33, 33, 32, 32, 31, 34, 33, 32, 32, 33, 35, 28.18343 + 37, 38, 37, 36, 36, 35, 35, 36, 36, 37, 40, 38, 36, 38, 40, 42, 28.18344 + 40, 38, 38, 39, 41, 41, 39, 39, 41, 42, 42, 42, 43, 43, 43, 43, 28.18345 + 42, 42, 44, 46, 47, 46, 43, 42, 43, 45, 47, 47, 47, 47, 47, 47, 28.18346 + 47, 47, 44, 46, 50, 51, 50, 48, 47, 45, 45, 32, 27, 22, 11, 11, 28.18347 + 18, 13, 12, 17, 16, 18, 26, 22, 20, 31, 23, 20, 24, 24, 19, 25, 28.18348 + 28, 19, 37, 33, 32, 34, 33, 30, 30, 33, 26, 31, 23, 32, 31, 23, 28.18349 + 35, 35, 29, 26, 30, 16, 28, 21, 28, 20, 20, 20, 20, 21, 25, 30, 28.18350 + 43, 54, 69, 70, 62, 60, 71, 71, 65, 68, 67, 66, 66, 66, 66, 66, 28.18351 + 68, 68, 71, 66, 75, 67, 66, 63, 62, 0, 6, 46, 60, 72, 87, 86, 28.18352 + 92, 89, 91, 74, 77, 88, 91, 92, 96, 92, 89, 90, 83, 92, 92, 83, 28.18353 + 90, 87, 88, 89, 89, 90, 90, 89, 89, 88, 91, 92, 92, 93, 93, 92, 28.18354 + 92, 91, 93, 92, 92, 91, 91, 92, 92, 93, 89, 91, 92, 27, 28, 29, 28.18355 + 29, 27, 27, 28, 30, 34, 33, 32, 31, 30, 30, 30, 30, 35, 35, 35, 28.18356 + 36, 37, 38, 38, 39, 37, 38, 38, 39, 39, 38, 38, 38, 39, 38, 37, 28.18357 + 38, 40, 41, 40, 39, 38, 39, 41, 41, 39, 39, 41, 42, 41, 41, 42, 28.18358 + 42, 42, 42, 41, 41, 47, 47, 47, 46, 43, 43, 44, 45, 45, 46, 47, 28.18359 + 48, 48, 48, 48, 48, 51, 50, 48, 47, 44, 39, 33, 27, 29, 15, 11, 28.18360 + 10, 6, 10, 15, 9, 6, 14, 17, 21, 27, 22, 21, 32, 24, 21, 25, 28.18361 + 24, 18, 23, 27, 19, 29, 25, 25, 27, 27, 24, 25, 28, 29, 28, 15, 28.18362 + 25, 29, 23, 30, 26, 17, 19, 25, 14, 20, 16, 24, 20, 23, 16, 18, 28.18363 + 24, 20, 13, 23, 39, 58, 65, 65, 64, 69, 66, 64, 71, 69, 68, 68, 28.18364 + 67, 66, 65, 67, 66, 71, 67, 77, 69, 67, 63, 59, 0, 7, 47, 60, 28.18365 + 72, 86, 86, 92, 89, 90, 75, 78, 89, 91, 91, 95, 91, 89, 90, 83, 28.18366 + 92, 92, 83, 90, 87, 88, 88, 89, 90, 90, 89, 89, 88, 91, 92, 92, 28.18367 + 93, 93, 92, 92, 91, 93, 92, 92, 91, 91, 92, 92, 93, 92, 94, 95, 28.18368 + 30, 31, 33, 32, 31, 31, 32, 34, 33, 32, 30, 29, 29, 30, 31, 32, 28.18369 + 32, 33, 34, 35, 36, 36, 35, 35, 36, 37, 38, 40, 40, 39, 38, 37, 28.18370 + 38, 38, 38, 39, 39, 40, 40, 40, 38, 39, 41, 41, 39, 39, 41, 42, 28.18371 + 40, 41, 41, 42, 42, 41, 41, 40, 44, 44, 43, 42, 42, 42, 43, 44, 28.18372 + 47, 47, 49, 50, 50, 49, 48, 48, 47, 42, 36, 32, 29, 25, 19, 12, 28.18373 + 15, 5, 8, 15, 17, 21, 21, 10, 12, 15, 13, 15, 23, 19, 15, 24, 28.18374 + 21, 19, 23, 22, 14, 18, 23, 15, 18, 15, 14, 17, 17, 15, 16, 19, 28.18375 + 27, 25, 11, 20, 24, 18, 25, 20, 17, 21, 24, 17, 14, 14, 18, 18, 28.18376 + 26, 20, 21, 24, 22, 17, 21, 27, 32, 52, 65, 65, 63, 57, 61, 76, 28.18377 + 68, 68, 67, 67, 67, 66, 68, 68, 69, 66, 77, 70, 69, 63, 58, 0, 28.18378 + 8, 48, 60, 72, 86, 86, 92, 90, 90, 75, 79, 90, 91, 90, 94, 91, 28.18379 + 89, 90, 83, 92, 92, 83, 90, 87, 87, 88, 89, 90, 90, 90, 89, 89, 28.18380 + 91, 92, 92, 93, 93, 92, 92, 91, 93, 92, 92, 91, 91, 92, 92, 93, 28.18381 + 93, 95, 95, 30, 32, 34, 33, 32, 32, 34, 35, 30, 29, 29, 29, 30, 28.18382 + 32, 34, 35, 33, 34, 35, 36, 36, 36, 35, 35, 35, 36, 38, 39, 40, 28.18383 + 39, 38, 38, 38, 38, 39, 39, 39, 39, 40, 40, 38, 39, 41, 41, 39, 28.18384 + 39, 41, 42, 38, 39, 39, 40, 40, 39, 39, 38, 40, 40, 39, 40, 41, 28.18385 + 42, 42, 44, 49, 49, 47, 45, 43, 40, 38, 37, 29, 23, 17, 16, 18, 28.18386 + 20, 20, 17, 21, 11, 13, 18, 15, 17, 17, 5, 21, 16, 6, 7, 20, 28.18387 + 19, 14, 19, 17, 16, 21, 19, 10, 14, 19, 13, 15, 12, 12, 14, 15, 28.18388 + 12, 13, 19, 21, 26, 16, 23, 20, 11, 21, 20, 19, 25, 22, 19, 13, 28.18389 + 17, 15, 16, 23, 25, 22, 18, 24, 31, 28, 19, 18, 36, 47, 54, 62, 28.18390 + 61, 61, 71, 66, 66, 67, 67, 67, 68, 70, 70, 67, 64, 76, 70, 69, 28.18391 + 63, 58, 0, 10, 49, 61, 72, 86, 86, 93, 90, 89, 76, 81, 91, 91, 28.18392 + 89, 93, 91, 89, 90, 83, 92, 92, 83, 90, 87, 87, 88, 89, 90, 90, 28.18393 + 90, 90, 90, 91, 92, 92, 93, 93, 92, 92, 91, 93, 92, 92, 91, 91, 28.18394 + 92, 92, 93, 93, 95, 95, 28, 29, 31, 31, 30, 30, 32, 34, 28, 28, 28.18395 + 29, 30, 32, 34, 35, 36, 38, 38, 38, 38, 38, 38, 38, 38, 35, 36, 28.18396 + 37, 38, 39, 39, 39, 39, 37, 38, 40, 40, 38, 38, 40, 41, 38, 39, 28.18397 + 41, 41, 39, 39, 41, 42, 39, 39, 40, 40, 40, 40, 39, 39, 41, 41, 28.18398 + 41, 42, 44, 44, 43, 41, 46, 43, 39, 34, 29, 25, 22, 21, 22, 19, 28.18399 + 14, 13, 14, 18, 20, 20, 30, 18, 17, 17, 13, 17, 23, 16, 23, 18, 28.18400 + 6, 6, 20, 21, 17, 24, 17, 18, 24, 22, 12, 16, 22, 17, 18, 15, 28.18401 + 14, 16, 16, 13, 14, 19, 19, 27, 21, 28, 22, 11, 22, 23, 19, 26, 28.18402 + 19, 23, 14, 25, 19, 21, 18, 25, 24, 18, 25, 36, 33, 20, 25, 27, 28.18403 + 25, 36, 62, 71, 64, 63, 65, 66, 66, 67, 68, 69, 71, 72, 67, 64, 28.18404 + 76, 69, 68, 63, 58, 0, 11, 50, 61, 72, 85, 86, 93, 91, 88, 76, 28.18405 + 82, 93, 91, 88, 92, 90, 89, 90, 83, 92, 92, 83, 90, 87, 86, 87, 28.18406 + 88, 89, 90, 90, 90, 90, 91, 92, 92, 93, 93, 92, 92, 91, 93, 92, 28.18407 + 92, 91, 91, 92, 92, 93, 92, 94, 95, 25, 27, 29, 29, 28, 29, 30, 28.18408 + 32, 29, 30, 31, 33, 34, 34, 34, 34, 40, 39, 37, 37, 36, 37, 38, 28.18409 + 39, 36, 36, 36, 37, 38, 39, 40, 41, 36, 39, 40, 40, 38, 38, 39, 28.18410 + 42, 38, 39, 41, 41, 39, 39, 41, 42, 40, 40, 41, 41, 41, 41, 40, 28.18411 + 40, 42, 41, 41, 43, 44, 43, 38, 34, 33, 30, 25, 20, 16, 15, 15, 28.18412 + 15, 20, 21, 21, 19, 18, 19, 21, 20, 26, 18, 20, 22, 17, 22, 31, 28.18413 + 27, 16, 17, 13, 12, 18, 15, 17, 28, 17, 19, 26, 24, 14, 18, 25, 28.18414 + 20, 22, 19, 18, 19, 19, 16, 16, 21, 22, 31, 26, 35, 29, 18, 27, 28.18415 + 27, 22, 28, 17, 25, 16, 31, 21, 22, 20, 24, 27, 26, 25, 26, 30, 28.18416 + 30, 32, 28, 18, 24, 49, 61, 61, 64, 67, 68, 68, 68, 68, 68, 70, 28.18417 + 70, 70, 66, 77, 68, 67, 61, 56, 0, 12, 51, 62, 72, 85, 86, 93, 28.18418 + 91, 87, 76, 83, 93, 91, 88, 92, 90, 89, 90, 83, 92, 92, 83, 90, 28.18419 + 87, 86, 87, 88, 89, 90, 91, 91, 90, 91, 92, 92, 93, 93, 92, 92, 28.18420 + 91, 93, 92, 92, 91, 91, 92, 92, 93, 91, 94, 95, 25, 27, 29, 29, 28.18421 + 29, 29, 31, 33, 31, 32, 33, 35, 35, 34, 33, 32, 37, 35, 33, 31, 28.18422 + 31, 33, 37, 38, 37, 37, 36, 37, 38, 40, 42, 43, 38, 39, 41, 40, 28.18423 + 38, 37, 39, 40, 38, 39, 41, 41, 39, 39, 41, 44, 44, 45, 43, 44, 28.18424 + 42, 41, 39, 38, 39, 39, 40, 42, 42, 40, 33, 28, 20, 18, 14, 12, 28.18425 + 11, 14, 17, 19, 8, 14, 20, 24, 24, 23, 28, 29, 19, 16, 24, 27, 28.18426 + 20, 19, 22, 16, 11, 18, 20, 17, 16, 8, 11, 26, 16, 15, 25, 23, 28.18427 + 14, 18, 26, 21, 30, 26, 24, 28, 27, 23, 23, 26, 25, 32, 26, 37, 28.18428 + 35, 25, 32, 29, 26, 30, 18, 28, 18, 35, 22, 22, 26, 26, 33, 38, 28.18429 + 30, 19, 25, 40, 30, 33, 25, 21, 30, 42, 55, 73, 72, 72, 71, 68, 28.18430 + 68, 67, 68, 68, 74, 69, 78, 68, 66, 60, 56, 0, 15, 54, 62, 74, 28.18431 + 85, 86, 95, 91, 89, 76, 84, 94, 91, 87, 91, 90, 89, 90, 83, 92, 28.18432 + 92, 83, 90, 87, 86, 87, 90, 91, 92, 93, 93, 93, 91, 92, 92, 93, 28.18433 + 93, 92, 92, 91, 93, 92, 92, 91, 91, 92, 92, 93, 90, 92, 94, 30, 28.18434 + 30, 30, 30, 31, 32, 33, 33, 33, 33, 33, 32, 31, 33, 37, 38, 33, 28.18435 + 31, 31, 32, 34, 35, 37, 39, 35, 37, 38, 40, 41, 42, 45, 43, 43, 28.18436 + 42, 41, 41, 39, 38, 37, 35, 41, 40, 38, 37, 39, 40, 43, 45, 45, 28.18437 + 46, 45, 43, 42, 38, 36, 35, 44, 32, 37, 49, 43, 32, 24, 14, 19, 28.18438 + 16, 14, 15, 17, 16, 12, 8, 9, 13, 19, 22, 22, 23, 31, 34, 24, 28.18439 + 20, 26, 46, 18, 28, 29, 29, 20, 29, 17, 22, 26, 15, 22, 25, 13, 28.18440 + 24, 29, 19, 16, 23, 26, 18, 35, 30, 33, 35, 25, 24, 28, 23, 27, 28.18441 + 34, 30, 27, 33, 30, 26, 33, 38, 34, 30, 29, 31, 34, 36, 35, 22, 28.18442 + 31, 34, 29, 25, 25, 27, 25, 23, 26, 31, 31, 28, 30, 50, 69, 79, 28.18443 + 67, 62, 67, 74, 73, 67, 66, 71, 68, 69, 71, 62, 68, 57, 0, 20, 28.18444 + 57, 66, 79, 89, 88, 94, 88, 90, 71, 84, 90, 91, 96, 89, 93, 89, 28.18445 + 83, 90, 92, 87, 89, 94, 90, 92, 92, 95, 95, 95, 94, 93, 93, 91, 28.18446 + 92, 92, 92, 92, 91, 90, 89, 93, 93, 93, 92, 92, 91, 91, 91, 89, 28.18447 + 89, 92, 30, 30, 29, 28, 28, 28, 29, 29, 33, 33, 34, 33, 32, 33, 28.18448 + 36, 36, 31, 29, 29, 30, 32, 35, 37, 37, 37, 37, 40, 41, 44, 44, 28.18449 + 47, 45, 45, 42, 42, 40, 37, 37, 35, 36, 38, 38, 39, 38, 40, 41, 28.18450 + 44, 47, 52, 52, 51, 47, 44, 40, 38, 37, 35, 32, 38, 43, 31, 23, 28.18451 + 22, 15, 20, 16, 14, 15, 18, 19, 17, 15, 16, 16, 19, 22, 24, 26, 28.18452 + 27, 24, 23, 18, 28, 30, 25, 21, 32, 34, 22, 31, 20, 25, 28, 15, 28.18453 + 20, 22, 12, 18, 22, 19, 23, 30, 33, 29, 30, 26, 33, 34, 27, 29, 28.18454 + 34, 29, 27, 32, 30, 27, 33, 29, 28, 34, 34, 30, 26, 29, 32, 34, 28.18455 + 30, 28, 36, 36, 35, 31, 31, 32, 29, 22, 23, 26, 30, 32, 29, 30, 28.18456 + 42, 56, 69, 75, 76, 71, 69, 74, 73, 68, 70, 69, 71, 73, 66, 71, 28.18457 + 59, 0, 20, 58, 65, 79, 91, 89, 96, 91, 92, 73, 85, 91, 91, 95, 28.18458 + 87, 88, 89, 84, 90, 92, 87, 89, 94, 90, 91, 92, 92, 93, 94, 93, 28.18459 + 92, 91, 94, 93, 93, 93, 93, 92, 91, 90, 93, 93, 93, 92, 92, 91, 28.18460 + 91, 91, 89, 89, 90, 32, 31, 30, 29, 28, 28, 28, 28, 33, 34, 35, 28.18461 + 35, 33, 33, 34, 34, 31, 29, 31, 32, 34, 35, 37, 37, 38, 38, 40, 28.18462 + 41, 44, 44, 47, 45, 45, 41, 40, 37, 35, 36, 36, 37, 36, 37, 40, 28.18463 + 40, 42, 42, 44, 46, 55, 55, 52, 47, 44, 40, 38, 38, 34, 35, 40, 28.18464 + 34, 18, 14, 20, 16, 19, 15, 14, 15, 18, 21, 22, 22, 21, 19, 19, 28.18465 + 23, 26, 27, 23, 17, 22, 18, 26, 12, 30, 14, 30, 37, 19, 29, 20, 28.18466 + 26, 29, 16, 22, 23, 14, 13, 16, 20, 28, 32, 33, 32, 28, 24, 30, 28.18467 + 32, 27, 29, 35, 30, 27, 32, 28, 24, 30, 26, 24, 31, 28, 26, 24, 28.18468 + 29, 33, 32, 27, 22, 42, 38, 33, 30, 35, 35, 28, 16, 23, 25, 28, 28.18469 + 32, 31, 27, 32, 39, 49, 71, 80, 69, 61, 69, 71, 65, 70, 69, 72, 28.18470 + 75, 68, 72, 59, 0, 19, 58, 65, 79, 92, 90, 97, 92, 93, 74, 86, 28.18471 + 91, 91, 94, 86, 87, 90, 84, 90, 93, 86, 87, 94, 90, 91, 91, 92, 28.18472 + 93, 94, 93, 93, 91, 95, 94, 94, 94, 94, 93, 92, 91, 93, 93, 93, 28.18473 + 92, 92, 91, 91, 91, 89, 89, 90, 33, 33, 32, 31, 31, 31, 32, 32, 28.18474 + 32, 34, 36, 36, 34, 33, 33, 32, 31, 29, 31, 32, 34, 35, 37, 37, 28.18475 + 37, 39, 41, 42, 44, 45, 47, 45, 45, 41, 39, 36, 34, 36, 36, 38, 28.18476 + 35, 36, 40, 41, 44, 43, 45, 46, 53, 52, 49, 45, 42, 39, 38, 38, 28.18477 + 38, 39, 38, 22, 7, 14, 25, 20, 19, 16, 15, 15, 18, 21, 23, 25, 28.18478 + 20, 20, 21, 24, 25, 24, 20, 14, 20, 23, 20, 10, 29, 16, 22, 36, 28.18479 + 17, 28, 20, 27, 32, 19, 23, 26, 20, 13, 12, 20, 27, 27, 26, 28, 28.18480 + 31, 26, 32, 32, 24, 28, 34, 28, 24, 29, 25, 21, 26, 22, 20, 27, 28.18481 + 23, 27, 29, 30, 31, 30, 31, 30, 39, 34, 29, 26, 30, 29, 23, 16, 28.18482 + 24, 23, 25, 29, 30, 28, 27, 30, 33, 56, 72, 67, 63, 67, 68, 65, 28.18483 + 70, 69, 72, 76, 67, 72, 58, 0, 19, 58, 65, 80, 92, 90, 98, 93, 28.18484 + 93, 73, 86, 91, 91, 94, 87, 88, 88, 85, 91, 93, 86, 87, 94, 89, 28.18485 + 93, 93, 94, 95, 96, 96, 95, 94, 93, 93, 94, 94, 93, 92, 91, 91, 28.18486 + 93, 93, 93, 92, 92, 91, 91, 91, 90, 90, 90, 31, 31, 31, 31, 32, 28.18487 + 33, 35, 36, 32, 34, 36, 36, 34, 33, 33, 32, 31, 31, 31, 32, 34, 28.18488 + 35, 37, 37, 38, 39, 40, 40, 42, 43, 45, 45, 45, 41, 39, 36, 35, 28.18489 + 37, 37, 39, 35, 36, 40, 42, 44, 44, 46, 47, 48, 48, 46, 44, 43, 28.18490 + 40, 39, 40, 42, 33, 27, 11, 2, 14, 26, 20, 20, 18, 17, 16, 17, 28.18491 + 19, 21, 24, 14, 19, 24, 25, 22, 20, 19, 18, 17, 26, 12, 19, 20, 28.18492 + 21, 10, 28, 18, 29, 20, 27, 30, 17, 20, 23, 22, 15, 14, 19, 23, 28.18493 + 22, 23, 24, 29, 23, 29, 29, 21, 25, 32, 27, 20, 26, 23, 20, 23, 28.18494 + 19, 18, 24, 17, 25, 30, 29, 25, 25, 32, 38, 31, 29, 28, 26, 25, 28.18495 + 22, 21, 22, 26, 22, 21, 26, 29, 29, 27, 29, 31, 41, 57, 69, 73, 28.18496 + 68, 68, 69, 68, 69, 72, 76, 66, 71, 57, 0, 20, 59, 66, 80, 93, 28.18497 + 90, 98, 93, 90, 71, 84, 90, 91, 95, 89, 90, 89, 84, 92, 94, 86, 28.18498 + 87, 94, 89, 90, 91, 94, 95, 95, 95, 95, 95, 92, 92, 92, 92, 92, 28.18499 + 91, 90, 89, 93, 93, 93, 92, 92, 91, 91, 91, 90, 90, 91, 27, 27, 28.18500 + 28, 29, 30, 32, 34, 35, 33, 34, 35, 35, 33, 33, 34, 36, 33, 31, 28.18501 + 31, 32, 34, 35, 37, 37, 39, 39, 40, 41, 43, 43, 45, 43, 43, 41, 28.18502 + 40, 38, 37, 39, 38, 39, 36, 37, 40, 41, 44, 44, 47, 49, 49, 49, 28.18503 + 49, 47, 46, 44, 42, 40, 38, 22, 15, 7, 2, 14, 26, 18, 21, 19, 28.18504 + 19, 19, 18, 18, 20, 23, 14, 20, 25, 26, 21, 19, 20, 21, 17, 22, 28.18505 + 9, 24, 15, 22, 8, 20, 23, 32, 22, 26, 29, 15, 18, 21, 20, 19, 28.18506 + 18, 19, 21, 23, 26, 25, 25, 20, 26, 27, 20, 24, 34, 30, 20, 26, 28.18507 + 24, 20, 24, 21, 20, 27, 14, 21, 29, 27, 22, 22, 29, 36, 28, 27, 28.18508 + 30, 28, 24, 20, 24, 31, 28, 22, 20, 24, 29, 28, 29, 30, 28, 28, 28.18509 + 36, 56, 67, 67, 66, 68, 68, 67, 71, 73, 64, 68, 54, 0, 22, 60, 28.18510 + 67, 81, 93, 90, 97, 92, 89, 71, 84, 90, 92, 96, 90, 91, 90, 85, 28.18511 + 92, 94, 87, 87, 94, 89, 87, 88, 91, 92, 93, 93, 93, 93, 91, 91, 28.18512 + 92, 92, 91, 91, 90, 89, 93, 93, 93, 92, 92, 91, 91, 91, 91, 91, 28.18513 + 91, 29, 29, 29, 29, 30, 32, 33, 34, 33, 33, 34, 33, 32, 33, 36, 28.18514 + 38, 33, 33, 33, 34, 36, 37, 37, 37, 40, 40, 41, 41, 43, 43, 43, 28.18515 + 43, 42, 41, 42, 41, 40, 41, 39, 40, 37, 37, 39, 40, 43, 44, 48, 28.18516 + 49, 47, 49, 49, 49, 46, 42, 39, 35, 29, 12, 9, 12, 10, 15, 24, 28.18517 + 19, 20, 20, 22, 22, 21, 21, 22, 24, 22, 23, 25, 25, 23, 22, 22, 28.18518 + 20, 20, 11, 12, 20, 13, 14, 16, 15, 20, 29, 17, 22, 28, 16, 21, 28.18519 + 25, 19, 25, 25, 18, 17, 23, 26, 22, 25, 19, 23, 23, 18, 22, 30, 28.18520 + 28, 18, 25, 22, 19, 24, 21, 18, 25, 15, 18, 23, 24, 23, 22, 23, 28.18521 + 24, 29, 28, 30, 30, 25, 19, 23, 32, 25, 22, 22, 27, 30, 27, 26, 28.18522 + 30, 26, 27, 27, 36, 50, 63, 65, 63, 69, 67, 69, 71, 61, 65, 53, 28.18523 + 0, 24, 62, 69, 81, 93, 89, 96, 91, 91, 72, 85, 91, 91, 95, 88, 28.18524 + 89, 91, 85, 91, 93, 85, 85, 92, 87, 87, 88, 89, 90, 93, 93, 93, 28.18525 + 93, 92, 92, 93, 93, 92, 91, 91, 90, 93, 93, 93, 92, 92, 91, 91, 28.18526 + 91, 91, 91, 91, 33, 33, 32, 32, 32, 33, 34, 35, 33, 33, 33, 32, 28.18527 + 31, 33, 37, 40, 33, 33, 33, 34, 36, 37, 37, 37, 40, 40, 41, 41, 28.18528 + 43, 43, 43, 43, 42, 42, 43, 43, 42, 42, 40, 40, 38, 38, 39, 39, 28.18529 + 42, 44, 49, 50, 44, 46, 48, 48, 44, 40, 33, 30, 21, 8, 12, 22, 28.18530 + 21, 19, 24, 22, 18, 20, 24, 25, 23, 23, 25, 27, 30, 27, 24, 25, 28.18531 + 26, 26, 24, 18, 23, 1, 17, 13, 16, 7, 26, 14, 14, 23, 12, 19, 28.18532 + 28, 19, 28, 33, 16, 27, 29, 14, 12, 18, 23, 15, 29, 23, 24, 23, 28.18533 + 16, 19, 26, 23, 16, 21, 18, 16, 21, 19, 17, 24, 20, 19, 22, 26, 28.18534 + 29, 28, 21, 15, 31, 27, 26, 28, 23, 18, 21, 29, 24, 21, 25, 28, 28.18535 + 31, 26, 24, 27, 30, 35, 31, 24, 38, 64, 72, 64, 69, 67, 66, 69, 28.18536 + 58, 64, 52, 0, 25, 63, 69, 82, 93, 89, 95, 90, 93, 74, 86, 91, 28.18537 + 91, 94, 86, 87, 91, 86, 91, 93, 85, 85, 92, 87, 89, 90, 91, 92, 28.18538 + 95, 96, 96, 96, 93, 94, 94, 94, 94, 93, 92, 91, 93, 93, 93, 92, 28.18539 + 92, 91, 91, 91, 91, 91, 91, 27, 32, 33, 30, 29, 32, 33, 32, 34, 28.18540 + 34, 34, 35, 35, 36, 36, 36, 38, 37, 36, 35, 35, 35, 38, 38, 34, 28.18541 + 39, 42, 42, 44, 46, 45, 40, 43, 40, 40, 41, 40, 37, 35, 39, 38, 28.18542 + 36, 37, 37, 41, 42, 44, 43, 48, 50, 47, 41, 41, 42, 30, 12, 12, 28.18543 + 14, 14, 16, 19, 23, 25, 26, 25, 21, 19, 19, 22, 24, 23, 23, 24, 28.18544 + 30, 32, 26, 21, 22, 21, 15, 27, 16, 12, 14, 18, 17, 16, 16, 18, 28.18545 + 17, 20, 22, 22, 20, 24, 30, 30, 25, 31, 29, 21, 17, 24, 20, 27, 28.18546 + 23, 23, 26, 24, 20, 22, 28, 20, 25, 25, 19, 16, 19, 25, 27, 19, 28.18547 + 24, 26, 25, 26, 29, 26, 25, 31, 34, 20, 29, 31, 28, 33, 24, 18, 28.18548 + 26, 28, 24, 29, 24, 21, 31, 30, 28, 25, 24, 31, 41, 56, 65, 70, 28.18549 + 65, 63, 82, 58, 63, 38, 0, 26, 61, 68, 83, 94, 87, 94, 91, 90, 28.18550 + 76, 89, 91, 90, 96, 90, 89, 87, 87, 89, 88, 87, 85, 85, 86, 92, 28.18551 + 92, 93, 92, 92, 91, 90, 90, 93, 93, 93, 92, 92, 91, 91, 91, 92, 28.18552 + 92, 92, 92, 92, 92, 92, 92, 94, 93, 93, 27, 32, 33, 30, 29, 32, 28.18553 + 33, 32, 34, 34, 34, 35, 35, 36, 36, 36, 35, 35, 35, 35, 35, 36, 28.18554 + 40, 40, 36, 40, 42, 41, 42, 45, 45, 41, 44, 40, 40, 41, 40, 37, 28.18555 + 36, 39, 35, 36, 39, 41, 45, 45, 48, 47, 41, 45, 48, 45, 38, 29, 28.18556 + 16, 5, 14, 15, 16, 18, 21, 22, 24, 24, 23, 21, 20, 20, 21, 22, 28.18557 + 23, 24, 15, 22, 25, 23, 20, 24, 24, 19, 22, 15, 11, 14, 16, 15, 28.18558 + 14, 15, 22, 21, 20, 23, 23, 22, 26, 31, 31, 30, 36, 38, 28, 25, 28.18559 + 27, 20, 25, 21, 25, 27, 26, 21, 21, 26, 21, 24, 24, 22, 24, 28, 28.18560 + 28, 23, 23, 26, 27, 25, 25, 28, 25, 24, 32, 34, 23, 28, 32, 25, 28.18561 + 31, 21, 28, 34, 30, 29, 36, 32, 27, 33, 23, 26, 26, 26, 24, 31, 28.18562 + 43, 53, 73, 67, 63, 77, 58, 70, 41, 0, 26, 61, 68, 84, 95, 88, 28.18563 + 93, 91, 89, 75, 89, 91, 90, 96, 90, 90, 86, 86, 88, 88, 87, 86, 28.18564 + 86, 87, 90, 90, 92, 92, 92, 92, 92, 92, 93, 93, 93, 92, 92, 91, 28.18565 + 91, 91, 92, 92, 92, 92, 92, 92, 92, 92, 93, 93, 92, 28, 32, 34, 28.18566 + 30, 29, 32, 34, 32, 34, 34, 34, 35, 35, 36, 36, 36, 36, 36, 36, 28.18567 + 37, 38, 39, 41, 42, 38, 41, 41, 39, 40, 44, 44, 41, 44, 40, 40, 28.18568 + 42, 40, 37, 36, 39, 33, 36, 42, 44, 45, 44, 47, 47, 43, 40, 40, 28.18569 + 37, 28, 13, 5, 6, 15, 17, 16, 18, 20, 21, 23, 22, 20, 21, 23, 28.18570 + 22, 20, 20, 23, 26, 13, 19, 23, 23, 21, 24, 26, 22, 18, 14, 14, 28.18571 + 17, 17, 16, 16, 19, 24, 21, 19, 21, 23, 21, 23, 26, 31, 30, 39, 28.18572 + 43, 34, 31, 31, 21, 22, 21, 27, 29, 28, 24, 23, 26, 23, 24, 23, 28.18573 + 24, 30, 35, 32, 23, 27, 30, 29, 25, 22, 25, 26, 23, 31, 34, 22, 28.18574 + 27, 29, 24, 29, 20, 30, 31, 25, 25, 35, 34, 27, 28, 20, 27, 30, 28.18575 + 29, 22, 23, 31, 39, 67, 66, 65, 72, 57, 75, 39, 0, 26, 62, 69, 28.18576 + 85, 96, 88, 93, 90, 88, 73, 88, 90, 90, 96, 91, 91, 84, 85, 87, 28.18577 + 87, 86, 85, 87, 88, 86, 86, 89, 90, 90, 91, 94, 94, 93, 93, 92, 28.18578 + 92, 92, 92, 91, 91, 92, 92, 92, 92, 92, 92, 92, 92, 91, 91, 92, 28.18579 + 28, 33, 34, 31, 30, 32, 34, 32, 34, 34, 34, 35, 35, 36, 36, 36, 28.18580 + 37, 36, 36, 37, 38, 39, 40, 41, 39, 42, 41, 38, 39, 43, 44, 42, 28.18581 + 44, 40, 41, 42, 40, 38, 36, 39, 35, 38, 42, 42, 42, 40, 44, 44, 28.18582 + 52, 39, 27, 21, 13, 3, 6, 16, 17, 19, 18, 20, 20, 21, 22, 21, 28.18583 + 18, 21, 25, 24, 20, 20, 23, 28, 21, 24, 27, 27, 24, 24, 24, 24, 28.18584 + 19, 16, 20, 23, 22, 18, 21, 25, 28, 24, 21, 23, 24, 22, 23, 25, 28.18585 + 30, 32, 41, 44, 38, 37, 37, 26, 23, 24, 27, 27, 27, 24, 27, 29, 28.18586 + 26, 29, 29, 28, 31, 35, 33, 26, 27, 27, 26, 22, 22, 24, 25, 25, 28.18587 + 29, 33, 23, 27, 29, 22, 29, 21, 23, 28, 23, 23, 31, 32, 26, 31, 28.18588 + 26, 28, 31, 28, 24, 24, 27, 32, 51, 60, 68, 67, 55, 73, 29, 0, 28.18589 + 26, 62, 70, 86, 97, 88, 93, 89, 86, 72, 87, 90, 90, 97, 91, 91, 28.18590 + 83, 85, 87, 87, 86, 86, 88, 89, 87, 87, 89, 90, 90, 91, 93, 93, 28.18591 + 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 28.18592 + 90, 91, 91, 29, 33, 35, 31, 30, 33, 34, 33, 34, 34, 34, 35, 35, 28.18593 + 36, 36, 36, 39, 38, 38, 37, 37, 38, 38, 39, 40, 42, 40, 36, 37, 28.18594 + 41, 41, 41, 45, 41, 41, 43, 41, 38, 37, 40, 38, 39, 40, 40, 41, 28.18595 + 41, 46, 47, 51, 31, 17, 11, 9, 5, 12, 24, 18, 18, 21, 22, 23, 28.18596 + 23, 23, 22, 18, 21, 26, 25, 22, 21, 24, 29, 26, 27, 29, 30, 26, 28.18597 + 22, 22, 23, 22, 20, 23, 27, 25, 21, 24, 28, 33, 30, 27, 28, 28, 28.18598 + 25, 26, 28, 30, 32, 38, 39, 35, 40, 44, 33, 29, 28, 28, 24, 24, 28.18599 + 25, 30, 33, 31, 35, 35, 29, 27, 28, 32, 31, 25, 25, 24, 21, 22, 28.18600 + 25, 27, 25, 26, 31, 23, 28, 30, 23, 32, 25, 23, 32, 31, 28, 34, 28.18601 + 34, 33, 41, 33, 28, 26, 24, 26, 27, 28, 29, 34, 51, 70, 67, 56, 28.18602 + 71, 19, 0, 28, 63, 71, 86, 96, 88, 93, 89, 86, 72, 86, 89, 89, 28.18603 + 96, 91, 91, 82, 83, 85, 85, 86, 86, 87, 88, 89, 89, 91, 90, 90, 28.18604 + 89, 89, 89, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 28.18605 + 92, 92, 92, 90, 91, 91, 29, 33, 35, 32, 31, 33, 35, 33, 34, 34, 28.18606 + 34, 35, 35, 36, 36, 36, 40, 39, 38, 37, 37, 37, 37, 38, 39, 42, 28.18607 + 40, 38, 38, 41, 41, 38, 45, 41, 42, 43, 41, 39, 37, 40, 39, 37, 28.18608 + 38, 39, 44, 46, 48, 46, 33, 22, 15, 13, 15, 15, 18, 20, 17, 20, 28.18609 + 22, 24, 24, 25, 25, 23, 20, 22, 26, 27, 26, 25, 27, 29, 25, 25, 28.18610 + 27, 30, 26, 22, 22, 25, 25, 22, 22, 26, 27, 24, 23, 28, 31, 28, 28.18611 + 28, 28, 25, 21, 23, 30, 35, 33, 39, 35, 32, 42, 47, 36, 34, 33, 28.18612 + 32, 24, 24, 27, 32, 35, 34, 38, 38, 30, 26, 26, 31, 32, 23, 25, 28.18613 + 26, 21, 23, 27, 29, 27, 24, 31, 23, 30, 31, 25, 34, 27, 25, 35, 28.18614 + 34, 32, 36, 34, 36, 47, 35, 27, 20, 20, 23, 27, 27, 26, 27, 40, 28.18615 + 66, 66, 60, 71, 12, 0, 30, 65, 71, 85, 95, 87, 94, 91, 86, 72, 28.18616 + 86, 89, 89, 95, 90, 90, 83, 83, 85, 85, 86, 85, 86, 87, 90, 90, 28.18617 + 91, 90, 90, 89, 88, 88, 91, 91, 92, 92, 92, 92, 93, 93, 92, 92, 28.18618 + 92, 92, 92, 92, 92, 92, 91, 91, 92, 29, 34, 35, 32, 31, 34, 35, 28.18619 + 34, 34, 34, 34, 35, 35, 36, 36, 36, 38, 39, 38, 38, 37, 38, 39, 28.18620 + 39, 38, 42, 41, 39, 39, 41, 40, 36, 45, 41, 42, 43, 42, 39, 37, 28.18621 + 40, 40, 37, 37, 39, 45, 43, 39, 31, 10, 12, 15, 14, 14, 16, 19, 28.18622 + 19, 18, 19, 23, 25, 28, 29, 29, 27, 23, 23, 25, 28, 29, 30, 29, 28.18623 + 29, 27, 26, 28, 32, 29, 23, 23, 27, 34, 27, 23, 28, 30, 28, 27, 28.18624 + 29, 29, 30, 33, 32, 26, 21, 25, 36, 40, 39, 43, 37, 33, 42, 45, 28.18625 + 31, 34, 35, 34, 29, 27, 30, 34, 33, 33, 36, 36, 31, 30, 32, 33, 28.18626 + 29, 27, 28, 29, 26, 27, 30, 30, 27, 25, 32, 25, 30, 31, 23, 33, 28.18627 + 28, 30, 34, 30, 28, 34, 34, 33, 40, 33, 28, 23, 23, 23, 25, 23, 28.18628 + 23, 27, 29, 52, 57, 61, 71, 5, 0, 33, 66, 70, 84, 93, 87, 94, 28.18629 + 93, 87, 73, 87, 89, 88, 94, 88, 88, 85, 84, 86, 86, 86, 85, 85, 28.18630 + 86, 88, 88, 88, 88, 90, 90, 90, 90, 91, 91, 91, 92, 92, 93, 93, 28.18631 + 93, 92, 92, 92, 92, 92, 92, 92, 92, 93, 93, 92, 29, 32, 35, 30, 28.18632 + 31, 32, 35, 32, 34, 32, 34, 33, 35, 34, 36, 36, 36, 37, 37, 38, 28.18633 + 38, 39, 41, 42, 37, 42, 42, 40, 40, 41, 39, 35, 44, 42, 40, 41, 28.18634 + 42, 39, 37, 41, 41, 37, 36, 38, 43, 37, 24, 12, 1, 12, 19, 10, 28.18635 + 8, 15, 21, 23, 17, 20, 25, 28, 32, 33, 33, 31, 29, 25, 29, 30, 28.18636 + 36, 35, 34, 32, 37, 34, 36, 40, 36, 29, 28, 32, 44, 34, 30, 33, 28.18637 + 36, 35, 34, 33, 40, 42, 45, 44, 35, 30, 38, 49, 45, 44, 48, 41, 28.18638 + 36, 46, 45, 29, 34, 39, 40, 34, 33, 36, 37, 34, 32, 35, 32, 32, 28.18639 + 36, 40, 36, 29, 32, 36, 37, 32, 32, 32, 32, 28, 31, 38, 28, 34, 28.18640 + 31, 25, 34, 29, 37, 37, 29, 27, 35, 36, 30, 33, 29, 29, 31, 28, 28.18641 + 25, 21, 22, 24, 26, 20, 36, 46, 57, 70, 0, 0, 30, 64, 69, 81, 28.18642 + 90, 86, 94, 94, 88, 74, 87, 89, 88, 94, 87, 87, 87, 87, 89, 88, 28.18643 + 86, 85, 85, 86, 86, 88, 89, 90, 90, 93, 94, 94, 91, 91, 91, 92, 28.18644 + 92, 93, 93, 93, 92, 92, 92, 92, 92, 92, 92, 92, 94, 93, 93, 29, 28.18645 + 26, 28, 26, 29, 29, 33, 32, 35, 29, 29, 31, 34, 30, 30, 32, 36, 28.18646 + 42, 38, 36, 42, 40, 36, 42, 42, 45, 45, 42, 43, 46, 47, 42, 35, 28.18647 + 37, 40, 39, 38, 37, 39, 39, 43, 39, 37, 39, 36, 26, 15, 11, 16, 28.18648 + 19, 19, 15, 17, 18, 21, 23, 27, 25, 32, 34, 33, 40, 46, 38, 34, 28.18649 + 41, 42, 36, 44, 45, 43, 48, 47, 49, 48, 47, 48, 49, 42, 33, 62, 28.18650 + 40, 44, 53, 42, 40, 46, 39, 58, 47, 42, 46, 50, 49, 47, 51, 58, 28.18651 + 47, 42, 43, 49, 51, 49, 48, 55, 51, 45, 41, 44, 44, 43, 42, 42, 28.18652 + 44, 44, 41, 36, 35, 36, 40, 44, 42, 42, 34, 30, 43, 47, 31, 40, 28.18653 + 32, 39, 48, 34, 24, 26, 30, 37, 33, 30, 29, 30, 31, 31, 31, 37, 28.18654 + 32, 25, 21, 23, 23, 21, 19, 30, 22, 25, 34, 42, 44, 23, 0, 34, 28.18655 + 61, 74, 76, 85, 89, 85, 88, 92, 75, 89, 91, 89, 93, 87, 90, 88, 28.18656 + 87, 89, 89, 87, 89, 91, 92, 89, 91, 91, 92, 92, 95, 95, 95, 95, 28.18657 + 94, 92, 90, 89, 89, 89, 90, 92, 92, 92, 92, 92, 92, 92, 92, 94, 28.18658 + 94, 93, 32, 29, 29, 28, 29, 31, 32, 33, 33, 28, 27, 31, 32, 30, 28.18659 + 29, 32, 34, 42, 38, 36, 42, 40, 37, 42, 38, 41, 42, 39, 39, 43, 28.18660 + 43, 38, 40, 38, 39, 39, 38, 38, 40, 41, 37, 40, 40, 32, 16, 5, 28.18661 + 11, 25, 25, 26, 22, 20, 19, 21, 22, 25, 33, 28, 35, 41, 39, 42, 28.18662 + 47, 41, 55, 62, 57, 50, 56, 59, 61, 67, 55, 56, 56, 56, 59, 62, 28.18663 + 59, 52, 56, 42, 47, 55, 50, 56, 65, 59, 51, 51, 57, 67, 69, 65, 28.18664 + 63, 66, 65, 63, 64, 62, 60, 54, 59, 63, 58, 54, 55, 54, 59, 58, 28.18665 + 58, 56, 57, 59, 60, 57, 56, 56, 58, 61, 42, 42, 52, 54, 51, 55, 28.18666 + 52, 34, 52, 42, 46, 55, 45, 40, 43, 45, 37, 33, 32, 30, 30, 30, 28.18667 + 28, 26, 26, 27, 27, 30, 32, 30, 26, 23, 23, 24, 32, 32, 25, 30, 28.18668 + 32, 26, 38, 53, 63, 74, 87, 89, 85, 90, 87, 75, 93, 95, 91, 94, 28.18669 + 89, 93, 90, 89, 91, 91, 89, 89, 93, 94, 91, 91, 93, 94, 94, 95, 28.18670 + 96, 95, 97, 94, 92, 91, 90, 90, 90, 91, 92, 92, 92, 92, 92, 92, 28.18671 + 92, 92, 94, 93, 92, 33, 30, 30, 29, 29, 30, 31, 31, 33, 28, 27, 28.18672 + 31, 33, 30, 29, 33, 34, 42, 38, 36, 43, 41, 37, 42, 37, 40, 41, 28.18673 + 38, 38, 42, 42, 37, 43, 41, 40, 39, 39, 39, 40, 41, 40, 37, 31, 28.18674 + 19, 4, 0, 11, 30, 27, 25, 20, 17, 19, 20, 23, 25, 38, 29, 36, 28.18675 + 46, 47, 51, 64, 68, 67, 80, 85, 85, 90, 86, 77, 76, 79, 80, 80, 28.18676 + 80, 83, 87, 84, 78, 88, 80, 78, 73, 64, 69, 72, 63, 72, 78, 88, 28.18677 + 96, 97, 94, 96, 103, 104, 102, 104, 102, 98, 91, 93, 97, 112, 110, 109, 28.18678 + 106, 105, 98, 92, 87, 79, 81, 82, 81, 80, 78, 80, 81, 74, 67, 70, 28.18679 + 70, 65, 68, 71, 64, 62, 49, 50, 57, 50, 49, 53, 51, 41, 42, 46, 28.18680 + 48, 48, 43, 34, 28, 38, 36, 31, 27, 24, 24, 25, 24, 23, 25, 33, 28.18681 + 29, 17, 22, 37, 41, 41, 49, 55, 69, 86, 88, 84, 91, 81, 72, 94, 28.18682 + 96, 89, 93, 90, 93, 90, 89, 91, 91, 89, 89, 93, 94, 91, 91, 94, 28.18683 + 94, 94, 94, 96, 95, 97, 94, 93, 92, 91, 91, 91, 92, 92, 92, 92, 28.18684 + 92, 92, 92, 92, 92, 93, 93, 92, 31, 28, 28, 28, 27, 27, 28, 28, 28.18685 + 33, 28, 27, 31, 33, 31, 30, 34, 35, 42, 39, 37, 43, 41, 37, 43, 28.18686 + 40, 43, 43, 41, 41, 45, 45, 42, 44, 39, 38, 35, 38, 38, 39, 40, 28.18687 + 45, 28, 12, 8, 10, 13, 17, 23, 24, 21, 18, 21, 24, 25, 26, 29, 28.18688 + 40, 30, 38, 55, 63, 76, 101, 116, 132, 149, 156, 158, 164, 159, 148, 146, 28.18689 + 148, 150, 150, 149, 150, 151, 145, 136, 142, 143, 141, 133, 130, 140, 144, 136, 28.18690 + 146, 148, 149, 149, 149, 152, 160, 168, 169, 163, 162, 163, 167, 160, 157, 153, 28.18691 + 158, 156, 160, 159, 161, 157, 156, 154, 156, 157, 157, 155, 152, 149, 148, 146, 28.18692 + 148, 134, 130, 130, 122, 121, 127, 127, 120, 104, 99, 100, 96, 94, 95, 91, 28.18693 + 98, 86, 67, 52, 45, 44, 48, 51, 49, 45, 42, 36, 30, 27, 26, 26, 28.18694 + 31, 24, 28, 29, 26, 29, 32, 25, 33, 46, 50, 55, 73, 82, 85, 91, 28.18695 + 81, 73, 89, 91, 87, 94, 90, 90, 90, 89, 91, 91, 89, 89, 93, 94, 28.18696 + 92, 92, 94, 94, 94, 94, 95, 94, 97, 94, 94, 93, 93, 92, 92, 92, 28.18697 + 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 91, 30, 30, 30, 30, 30, 28.18698 + 30, 29, 29, 35, 30, 30, 34, 36, 34, 33, 35, 35, 43, 39, 37, 43, 28.18699 + 41, 38, 43, 41, 44, 45, 42, 43, 46, 46, 43, 45, 40, 40, 38, 42, 28.18700 + 41, 41, 40, 35, 18, 4, 7, 18, 22, 18, 15, 23, 23, 23, 29, 32, 28.18701 + 30, 32, 35, 42, 41, 57, 81, 95, 115, 140, 154, 157, 167, 160, 154, 161, 28.18702 + 167, 171, 179, 187, 190, 192, 192, 193, 191, 182, 172, 182, 190, 187, 178, 180, 28.18703 + 188, 190, 188, 191, 188, 183, 179, 181, 187, 194, 198, 190, 188, 192, 193, 192, 28.18704 + 184, 185, 187, 191, 188, 188, 184, 183, 179, 180, 180, 179, 177, 175, 174, 172, 28.18705 + 171, 168, 167, 180, 171, 178, 183, 172, 164, 162, 157, 175, 158, 151, 151, 147, 28.18706 + 147, 146, 139, 135, 129, 117, 104, 91, 78, 65, 55, 45, 46, 49, 51, 48, 28.18707 + 44, 39, 34, 36, 23, 24, 29, 27, 28, 27, 18, 21, 43, 45, 37, 50, 28.18708 + 69, 81, 88, 85, 72, 85, 85, 84, 95, 91, 88, 90, 89, 91, 91, 89, 28.18709 + 89, 93, 94, 92, 92, 94, 94, 94, 94, 95, 94, 96, 94, 94, 94, 93, 28.18710 + 93, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 91, 91, 90, 33, 31, 28.18711 + 32, 33, 33, 33, 32, 32, 34, 30, 30, 34, 36, 35, 34, 36, 38, 43, 28.18712 + 39, 37, 44, 42, 38, 44, 40, 43, 43, 40, 41, 44, 44, 42, 45, 43, 28.18713 + 42, 43, 45, 44, 39, 33, 13, 10, 12, 15, 20, 15, 13, 17, 20, 20, 28.18714 + 25, 31, 31, 27, 30, 40, 54, 66, 92, 117, 130, 145, 161, 165, 170, 178, 28.18715 + 172, 166, 174, 180, 184, 193, 180, 184, 187, 188, 191, 191, 183, 173, 191, 200, 28.18716 + 194, 186, 190, 189, 186, 191, 190, 191, 190, 187, 189, 194, 196, 194, 180, 191, 28.18717 + 202, 201, 187, 178, 187, 202, 204, 202, 198, 193, 189, 188, 190, 194, 192, 189, 28.18718 + 189, 186, 188, 190, 190, 189, 184, 178, 184, 182, 173, 171, 176, 171, 181, 169, 28.18719 + 167, 166, 163, 164, 166, 155, 150, 154, 161, 163, 154, 136, 115, 98, 71, 62, 28.18720 + 50, 42, 40, 40, 38, 35, 35, 26, 28, 29, 20, 20, 28, 29, 18, 37, 28.18721 + 38, 27, 36, 53, 66, 76, 80, 73, 87, 85, 83, 98, 92, 88, 88, 89, 28.18722 + 91, 91, 89, 89, 93, 94, 93, 93, 94, 94, 94, 94, 94, 93, 94, 92, 28.18723 + 93, 93, 93, 93, 92, 91, 92, 92, 92, 92, 92, 92, 92, 92, 90, 90, 28.18724 + 90, 31, 30, 32, 33, 34, 34, 33, 32, 34, 30, 30, 34, 37, 35, 35, 28.18725 + 36, 38, 43, 40, 38, 44, 42, 38, 44, 39, 42, 42, 39, 40, 43, 44, 28.18726 + 41, 45, 43, 43, 44, 45, 39, 29, 20, 8, 12, 19, 22, 22, 13, 12, 28.18727 + 19, 15, 16, 23, 32, 33, 29, 41, 57, 80, 100, 125, 139, 147, 161, 171, 28.18728 + 162, 166, 179, 182, 181, 188, 188, 183, 186, 185, 187, 188, 189, 193, 196, 192, 28.18729 + 185, 185, 195, 193, 195, 206, 202, 199, 214, 198, 205, 208, 203, 200, 202, 203, 28.18730 + 200, 199, 205, 212, 212, 203, 197, 202, 213, 190, 192, 194, 196, 199, 204, 212, 28.18731 + 220, 201, 197, 195, 192, 195, 198, 200, 199, 200, 196, 196, 184, 174, 183, 196, 28.18732 + 190, 183, 176, 179, 179, 176, 180, 181, 170, 183, 174, 165, 157, 157, 162, 166, 28.18733 + 170, 133, 112, 85, 67, 58, 54, 48, 41, 37, 28, 31, 33, 22, 20, 29, 28.18734 + 33, 24, 28, 27, 30, 39, 37, 41, 59, 63, 65, 89, 87, 82, 92, 89, 28.18735 + 88, 88, 89, 91, 91, 89, 89, 93, 94, 93, 93, 95, 94, 94, 93, 94, 28.18736 + 93, 92, 91, 92, 93, 93, 92, 91, 90, 92, 92, 92, 92, 92, 92, 92, 28.18737 + 92, 90, 89, 89, 28, 27, 29, 31, 32, 32, 31, 31, 34, 30, 30, 34, 28.18738 + 37, 35, 35, 39, 38, 44, 40, 38, 44, 42, 38, 44, 40, 43, 43, 40, 28.18739 + 41, 44, 44, 42, 42, 41, 41, 42, 41, 33, 18, 7, 17, 15, 19, 25, 28.18740 + 27, 22, 17, 19, 18, 21, 29, 38, 41, 43, 60, 84, 106, 123, 144, 146, 28.18741 + 147, 165, 175, 163, 173, 182, 178, 173, 179, 182, 182, 188, 189, 189, 186, 185, 28.18742 + 189, 194, 193, 188, 198, 204, 198, 197, 204, 188, 179, 197, 198, 207, 210, 199, 28.18743 + 189, 189, 194, 197, 210, 198, 192, 197, 205, 204, 199, 195, 207, 207, 205, 199, 28.18744 + 193, 190, 191, 195, 209, 205, 199, 197, 197, 200, 202, 202, 193, 200, 206, 196, 28.18745 + 182, 189, 192, 177, 182, 179, 182, 185, 180, 183, 184, 172, 169, 167, 169, 170, 28.18746 + 170, 165, 159, 155, 171, 159, 144, 132, 121, 102, 74, 53, 46, 30, 31, 38, 28.18747 + 34, 30, 28, 22, 35, 20, 17, 35, 46, 26, 24, 47, 44, 56, 88, 87, 28.18748 + 76, 84, 83, 88, 88, 89, 91, 91, 89, 89, 93, 94, 93, 93, 95, 94, 28.18749 + 94, 93, 94, 93, 91, 90, 91, 92, 93, 92, 91, 90, 92, 92, 92, 92, 28.18750 + 92, 92, 92, 92, 89, 89, 89, 31, 35, 35, 32, 33, 36, 36, 34, 37, 28.18751 + 37, 38, 38, 38, 39, 39, 39, 43, 42, 41, 40, 39, 38, 38, 38, 44, 28.18752 + 42, 40, 39, 39, 41, 44, 45, 41, 42, 48, 42, 24, 17, 23, 22, 14, 28.18753 + 24, 32, 28, 23, 21, 16, 14, 17, 35, 44, 39, 43, 62, 94, 118, 138, 28.18754 + 144, 155, 163, 168, 172, 175, 177, 169, 169, 175, 182, 183, 180, 180, 184, 189, 28.18755 + 181, 176, 180, 191, 198, 198, 194, 195, 195, 195, 193, 191, 192, 195, 197, 196, 28.18756 + 197, 199, 201, 203, 204, 204, 202, 204, 198, 194, 198, 203, 203, 201, 199, 212, 28.18757 + 205, 212, 207, 188, 195, 209, 204, 200, 210, 213, 207, 202, 201, 197, 193, 195, 28.18758 + 203, 200, 187, 181, 188, 192, 190, 186, 176, 174, 176, 174, 182, 188, 181, 181, 28.18759 + 172, 165, 167, 176, 179, 172, 163, 161, 156, 154, 155, 156, 142, 120, 99, 68, 28.18760 + 49, 37, 38, 38, 28, 26, 33, 27, 28, 29, 27, 28, 30, 36, 41, 45, 28.18761 + 37, 45, 73, 86, 82, 78, 86, 92, 93, 90, 84, 84, 88, 93, 92, 92, 28.18762 + 93, 95, 94, 92, 92, 95, 96, 94, 93, 93, 93, 93, 92, 91, 90, 93, 28.18763 + 93, 93, 92, 92, 91, 91, 91, 92, 92, 92, 32, 35, 35, 32, 33, 36, 28.18764 + 37, 34, 35, 35, 35, 36, 36, 37, 37, 37, 40, 40, 39, 39, 39, 40, 28.18765 + 41, 42, 37, 41, 44, 45, 43, 42, 42, 42, 44, 36, 34, 27, 14, 12, 28.18766 + 16, 14, 19, 25, 25, 21, 22, 24, 22, 21, 29, 36, 45, 58, 79, 104, 28.18767 + 121, 128, 147, 154, 163, 170, 174, 178, 180, 180, 173, 168, 171, 179, 182, 180, 28.18768 + 180, 182, 180, 176, 174, 178, 186, 191, 189, 185, 192, 193, 194, 193, 191, 189, 28.18769 + 189, 190, 191, 192, 194, 196, 199, 201, 203, 204, 198, 198, 201, 203, 205, 203, 28.18770 + 203, 202, 205, 199, 208, 208, 199, 204, 212, 200, 203, 207, 206, 200, 198, 203, 28.18771 + 205, 201, 180, 196, 205, 199, 193, 190, 183, 173, 186, 178, 180, 174, 164, 164, 28.18772 + 174, 171, 184, 179, 176, 175, 176, 175, 168, 160, 159, 157, 152, 155, 158, 156, 28.18773 + 146, 133, 136, 98, 62, 49, 45, 40, 32, 27, 27, 23, 22, 29, 37, 38, 28.18774 + 33, 27, 38, 38, 45, 60, 75, 83, 83, 84, 84, 91, 92, 88, 85, 87, 28.18775 + 92, 92, 92, 93, 95, 94, 92, 92, 95, 96, 94, 93, 93, 93, 93, 92, 28.18776 + 91, 90, 93, 93, 93, 92, 92, 91, 91, 91, 92, 92, 92, 34, 37, 37, 28.18777 + 35, 35, 38, 39, 36, 37, 37, 38, 38, 38, 39, 39, 39, 37, 37, 38, 28.18778 + 39, 40, 42, 44, 45, 38, 42, 46, 46, 44, 42, 42, 44, 44, 29, 21, 28.18779 + 16, 11, 17, 22, 18, 28, 31, 29, 26, 27, 29, 28, 26, 33, 45, 59, 28.18780 + 82, 109, 132, 139, 136, 151, 158, 165, 172, 174, 176, 178, 178, 173, 168, 170, 28.18781 + 176, 180, 179, 179, 181, 176, 176, 178, 181, 184, 185, 184, 181, 187, 190, 192, 28.18782 + 192, 189, 186, 185, 184, 187, 188, 189, 192, 195, 199, 202, 203, 192, 196, 205, 28.18783 + 204, 202, 197, 198, 197, 212, 204, 207, 203, 199, 201, 205, 192, 206, 210, 212, 28.18784 + 213, 214, 213, 209, 203, 186, 193, 195, 188, 185, 188, 190, 188, 179, 178, 183, 28.18785 + 175, 160, 159, 174, 178, 171, 170, 173, 172, 172, 170, 166, 166, 168, 164, 161, 28.18786 + 160, 162, 159, 154, 147, 143, 143, 132, 105, 69, 43, 36, 39, 42, 32, 25, 28.18787 + 26, 30, 32, 30, 25, 31, 37, 42, 45, 58, 78, 84, 82, 80, 90, 94, 28.18788 + 91, 86, 87, 91, 92, 92, 93, 95, 94, 92, 92, 95, 96, 94, 93, 93, 28.18789 + 93, 93, 92, 91, 90, 93, 93, 93, 92, 92, 91, 91, 91, 92, 92, 92, 28.18790 + 34, 37, 38, 35, 35, 39, 39, 36, 40, 40, 40, 41, 41, 41, 42, 42, 28.18791 + 38, 38, 38, 39, 41, 43, 44, 45, 46, 45, 43, 42, 42, 43, 43, 41, 28.18792 + 32, 16, 13, 14, 12, 22, 32, 32, 31, 34, 36, 33, 32, 29, 28, 27, 28.18793 + 46, 69, 95, 111, 122, 134, 142, 146, 155, 161, 168, 172, 173, 175, 176, 175, 28.18794 + 174, 170, 172, 175, 174, 171, 174, 179, 178, 179, 181, 181, 181, 181, 181, 182, 28.18795 + 182, 184, 186, 186, 184, 183, 182, 183, 186, 186, 187, 189, 191, 195, 197, 199, 28.18796 + 193, 200, 204, 202, 198, 196, 195, 194, 218, 213, 207, 199, 195, 200, 205, 202, 28.18797 + 200, 199, 195, 194, 196, 197, 194, 189, 203, 201, 191, 176, 172, 181, 192, 197, 28.18798 + 182, 181, 186, 181, 165, 167, 181, 186, 171, 168, 168, 171, 173, 172, 171, 171, 28.18799 + 168, 168, 168, 169, 165, 159, 153, 146, 149, 148, 143, 133, 117, 97, 68, 45, 28.18800 + 39, 37, 34, 31, 27, 27, 29, 32, 27, 34, 40, 39, 44, 57, 72, 80, 28.18801 + 83, 90, 93, 90, 89, 90, 92, 89, 92, 93, 95, 94, 92, 92, 95, 96, 28.18802 + 94, 93, 93, 93, 93, 92, 91, 90, 93, 93, 93, 92, 92, 91, 91, 91, 28.18803 + 92, 92, 92, 35, 38, 38, 36, 36, 39, 40, 37, 40, 40, 41, 41, 42, 28.18804 + 42, 42, 42, 41, 40, 40, 40, 41, 42, 43, 43, 49, 44, 41, 42, 45, 28.18805 + 45, 38, 29, 12, 3, 8, 9, 9, 19, 30, 34, 26, 31, 33, 32, 30, 28.18806 + 29, 37, 47, 80, 103, 125, 135, 137, 142, 148, 154, 162, 166, 172, 175, 175, 28.18807 + 177, 177, 176, 174, 176, 180, 181, 173, 168, 172, 182, 181, 182, 181, 179, 177, 28.18808 + 177, 181, 184, 182, 183, 184, 183, 183, 184, 187, 190, 188, 188, 188, 188, 190, 28.18809 + 191, 192, 193, 199, 203, 203, 199, 199, 203, 203, 199, 205, 211, 208, 201, 201, 28.18810 + 207, 214, 221, 229, 219, 206, 201, 203, 207, 214, 218, 206, 205, 200, 191, 185, 28.18811 + 181, 179, 177, 194, 190, 191, 187, 174, 175, 183, 183, 190, 179, 172, 175, 177, 28.18812 + 175, 171, 171, 165, 166, 166, 167, 166, 163, 161, 159, 157, 151, 143, 136, 134, 28.18813 + 128, 112, 92, 42, 37, 34, 37, 40, 39, 35, 31, 27, 29, 34, 36, 33, 28.18814 + 35, 53, 74, 85, 90, 90, 88, 90, 93, 92, 87, 92, 93, 95, 94, 92, 28.18815 + 92, 95, 96, 94, 93, 93, 93, 93, 92, 91, 90, 93, 93, 93, 92, 92, 28.18816 + 91, 91, 91, 92, 92, 92, 35, 38, 39, 36, 36, 40, 40, 37, 38, 39, 28.18817 + 39, 39, 40, 40, 40, 41, 43, 42, 42, 41, 41, 41, 42, 42, 43, 41, 28.18818 + 42, 45, 46, 39, 25, 11, 5, 3, 11, 13, 9, 16, 27, 31, 29, 28, 28.18819 + 30, 34, 39, 51, 72, 89, 114, 123, 132, 139, 148, 156, 158, 153, 163, 167, 28.18820 + 171, 173, 175, 173, 175, 174, 176, 178, 186, 185, 180, 172, 178, 185, 184, 181, 28.18821 + 180, 176, 176, 175, 180, 181, 186, 184, 187, 184, 187, 187, 194, 196, 190, 189, 28.18822 + 191, 190, 191, 188, 189, 189, 195, 202, 202, 198, 201, 209, 211, 206, 195, 211, 28.18823 + 212, 207, 210, 208, 207, 215, 205, 201, 200, 203, 205, 201, 201, 203, 202, 200, 28.18824 + 200, 198, 195, 190, 186, 183, 193, 186, 190, 190, 183, 186, 191, 187, 190, 178, 28.18825 + 173, 179, 184, 181, 178, 177, 175, 169, 164, 161, 161, 164, 169, 173, 158, 161, 28.18826 + 162, 154, 142, 133, 132, 133, 92, 66, 41, 32, 39, 43, 38, 27, 30, 27, 28.18827 + 31, 33, 29, 26, 39, 58, 77, 85, 88, 89, 91, 93, 92, 87, 92, 93, 28.18828 + 95, 94, 92, 92, 95, 96, 94, 93, 93, 93, 93, 92, 91, 90, 93, 93, 28.18829 + 93, 92, 92, 91, 91, 91, 92, 92, 92, 35, 38, 39, 36, 37, 40, 40, 28.18830 + 37, 39, 39, 39, 40, 40, 40, 41, 41, 43, 42, 42, 41, 41, 42, 42, 28.18831 + 43, 40, 41, 42, 39, 33, 23, 14, 5, 11, 7, 15, 18, 12, 18, 28, 28.18832 + 31, 32, 29, 33, 48, 68, 88, 106, 124, 131, 134, 136, 141, 153, 162, 161, 28.18833 + 154, 161, 164, 168, 171, 173, 170, 173, 173, 176, 176, 182, 185, 188, 182, 184, 28.18834 + 186, 187, 183, 184, 181, 183, 181, 184, 182, 187, 187, 191, 189, 191, 190, 195, 28.18835 + 195, 192, 192, 196, 195, 196, 192, 191, 189, 193, 204, 208, 202, 201, 207, 209, 28.18836 + 205, 200, 216, 213, 207, 213, 209, 200, 206, 205, 207, 214, 222, 220, 209, 203, 28.18837 + 203, 205, 200, 197, 197, 198, 197, 199, 202, 190, 186, 194, 197, 191, 193, 199, 28.18838 + 195, 182, 175, 176, 185, 188, 182, 181, 185, 179, 171, 165, 162, 162, 167, 169, 28.18839 + 170, 179, 164, 154, 160, 167, 157, 140, 128, 139, 108, 73, 49, 41, 39, 37, 28.18840 + 33, 29, 30, 30, 27, 29, 32, 35, 39, 57, 75, 89, 92, 90, 89, 90, 28.18841 + 89, 92, 93, 95, 94, 92, 92, 95, 96, 94, 93, 93, 93, 93, 92, 91, 28.18842 + 90, 93, 93, 93, 92, 92, 91, 91, 91, 92, 92, 92, 35, 39, 39, 36, 28.18843 + 37, 40, 40, 36, 41, 39, 40, 40, 40, 41, 41, 43, 42, 42, 42, 41, 28.18844 + 41, 42, 43, 44, 43, 44, 40, 29, 14, 7, 9, 12, 14, 9, 15, 18, 28.18845 + 16, 23, 32, 32, 29, 26, 37, 63, 94, 116, 124, 130, 138, 146, 148, 149, 28.18846 + 152, 159, 163, 163, 165, 169, 173, 176, 176, 176, 176, 179, 174, 172, 173, 183, 28.18847 + 191, 191, 187, 184, 189, 188, 188, 189, 190, 190, 190, 185, 185, 188, 191, 192, 28.18848 + 192, 191, 191, 191, 192, 194, 197, 199, 199, 196, 193, 190, 198, 214, 224, 213, 28.18849 + 206, 205, 209, 204, 211, 221, 213, 204, 221, 220, 214, 219, 223, 214, 210, 205, 28.18850 + 200, 196, 203, 214, 210, 209, 208, 209, 205, 200, 194, 192, 200, 198, 204, 204, 28.18851 + 192, 190, 196, 192, 186, 184, 189, 197, 193, 180, 178, 183, 169, 165, 162, 165, 28.18852 + 169, 172, 169, 164, 173, 169, 168, 169, 153, 137, 140, 156, 132, 128, 118, 94, 28.18853 + 68, 49, 43, 45, 30, 35, 29, 21, 27, 41, 37, 23, 37, 65, 89, 94, 28.18854 + 87, 85, 86, 91, 92, 93, 95, 94, 92, 92, 95, 96, 92, 93, 93, 93, 28.18855 + 93, 92, 91, 90, 93, 93, 93, 92, 92, 91, 91, 91, 94, 94, 94, 35, 28.18856 + 37, 37, 37, 35, 35, 35, 33, 36, 34, 34, 35, 35, 36, 36, 38, 45, 28.18857 + 47, 46, 43, 42, 43, 43, 45, 48, 37, 25, 16, 15, 17, 18, 16, 11, 28.18858 + 13, 25, 26, 22, 29, 34, 27, 29, 42, 62, 92, 127, 135, 131, 135, 144, 28.18859 + 147, 152, 156, 159, 162, 166, 168, 170, 170, 171, 173, 175, 178, 181, 182, 171, 28.18860 + 177, 183, 184, 183, 182, 185, 189, 196, 188, 190, 192, 187, 187, 188, 176, 182, 28.18861 + 187, 192, 192, 188, 186, 190, 194, 186, 199, 207, 200, 188, 187, 194, 200, 201, 28.18862 + 202, 201, 196, 201, 207, 213, 210, 212, 206, 205, 204, 212, 213, 214, 210, 209, 28.18863 + 203, 207, 212, 209, 200, 199, 206, 211, 215, 215, 209, 204, 204, 204, 202, 206, 28.18864 + 205, 204, 201, 194, 189, 197, 206, 191, 192, 189, 183, 181, 184, 185, 181, 180, 28.18865 + 172, 163, 160, 166, 168, 167, 163, 169, 168, 165, 164, 159, 155, 151, 147, 149, 28.18866 + 147, 142, 132, 120, 101, 68, 37, 32, 36, 35, 26, 27, 33, 28, 18, 45, 28.18867 + 46, 58, 76, 89, 88, 85, 87, 88, 89, 91, 94, 94, 96, 96, 96, 92, 28.18868 + 90, 90, 90, 90, 90, 90, 90, 91, 91, 91, 90, 90, 89, 89, 91, 96, 28.18869 + 98, 98, 35, 37, 37, 37, 35, 35, 33, 33, 35, 35, 34, 34, 35, 35, 28.18870 + 35, 37, 47, 48, 46, 45, 46, 47, 46, 46, 35, 26, 17, 12, 12, 16, 28.18871 + 17, 17, 27, 20, 24, 24, 22, 29, 38, 35, 34, 59, 82, 107, 130, 139, 28.18872 + 139, 145, 146, 148, 150, 154, 158, 161, 163, 164, 173, 173, 174, 175, 177, 178, 28.18873 + 178, 179, 175, 179, 182, 183, 184, 184, 187, 190, 187, 179, 181, 187, 188, 192, 28.18874 + 193, 182, 188, 188, 189, 189, 188, 187, 187, 187, 187, 194, 196, 192, 188, 191, 28.18875 + 195, 197, 198, 203, 208, 208, 210, 210, 206, 199, 206, 208, 212, 218, 223, 224, 28.18876 + 220, 217, 202, 204, 209, 216, 217, 214, 215, 218, 205, 213, 216, 212, 208, 209, 28.18877 + 211, 212, 208, 201, 197, 202, 205, 200, 192, 188, 191, 194, 193, 186, 182, 183, 28.18878 + 184, 183, 179, 173, 168, 168, 171, 171, 166, 160, 169, 166, 163, 162, 162, 160, 28.18879 + 154, 152, 151, 152, 147, 141, 135, 124, 103, 83, 52, 38, 31, 35, 35, 23, 28.18880 + 21, 27, 31, 33, 39, 57, 73, 83, 87, 87, 87, 89, 92, 92, 94, 95, 28.18881 + 96, 95, 92, 90, 90, 90, 90, 90, 90, 90, 91, 91, 91, 90, 90, 89, 28.18882 + 89, 91, 95, 97, 97, 35, 37, 37, 37, 35, 35, 35, 35, 37, 37, 37, 28.18883 + 37, 36, 36, 37, 39, 46, 45, 44, 44, 47, 47, 44, 41, 22, 17, 12, 28.18884 + 11, 14, 20, 21, 21, 21, 17, 27, 38, 36, 33, 33, 27, 45, 82, 108, 28.18885 + 122, 134, 141, 145, 151, 153, 151, 151, 155, 161, 164, 164, 162, 172, 173, 175, 28.18886 + 176, 176, 175, 174, 173, 178, 178, 179, 180, 181, 183, 187, 188, 184, 174, 178, 28.18887 + 185, 189, 196, 198, 186, 196, 192, 190, 191, 192, 192, 189, 186, 196, 196, 194, 28.18888 + 191, 194, 200, 200, 196, 200, 202, 201, 198, 198, 202, 204, 202, 204, 208, 212, 28.18889 + 214, 212, 210, 207, 206, 216, 220, 220, 213, 207, 202, 198, 193, 206, 214, 218, 28.18890 + 213, 208, 208, 209, 209, 208, 201, 198, 202, 205, 200, 191, 186, 187, 194, 196, 28.18891 + 189, 183, 182, 183, 183, 177, 173, 171, 173, 176, 174, 167, 160, 170, 166, 162, 28.18892 + 163, 165, 165, 159, 156, 154, 156, 152, 146, 143, 139, 133, 122, 91, 58, 34, 28.18893 + 34, 39, 33, 28, 28, 25, 25, 27, 37, 55, 76, 85, 89, 89, 91, 92, 28.18894 + 92, 94, 94, 94, 93, 92, 92, 92, 92, 92, 92, 92, 92, 93, 93, 93, 28.18895 + 92, 92, 91, 91, 91, 93, 94, 94, 36, 38, 38, 38, 36, 36, 36, 36, 28.18896 + 36, 37, 37, 37, 36, 36, 36, 39, 40, 39, 40, 43, 46, 43, 34, 27, 28.18897 + 16, 14, 13, 16, 22, 26, 27, 26, 40, 28, 29, 32, 27, 29, 41, 48, 28.18898 + 59, 101, 126, 130, 139, 145, 148, 151, 160, 156, 154, 158, 166, 170, 169, 166, 28.18899 + 168, 169, 172, 174, 174, 173, 171, 170, 178, 176, 175, 176, 179, 182, 185, 185, 28.18900 + 194, 183, 184, 189, 192, 198, 198, 185, 193, 193, 193, 193, 192, 192, 190, 188, 28.18901 + 198, 198, 196, 195, 198, 203, 200, 194, 193, 196, 196, 193, 194, 200, 204, 205, 28.18902 + 205, 207, 207, 203, 198, 197, 201, 206, 207, 215, 216, 210, 210, 218, 220, 216, 28.18903 + 204, 207, 209, 207, 207, 209, 207, 203, 205, 204, 205, 202, 195, 189, 194, 203, 28.18904 + 178, 188, 193, 188, 180, 179, 180, 181, 175, 173, 172, 174, 176, 175, 168, 163, 28.18905 + 170, 165, 161, 162, 166, 167, 162, 159, 164, 163, 159, 151, 144, 139, 137, 135, 28.18906 + 115, 100, 72, 43, 32, 38, 37, 27, 29, 31, 29, 28, 39, 61, 79, 88, 28.18907 + 89, 89, 91, 92, 94, 93, 94, 93, 94, 92, 94, 92, 94, 92, 94, 92, 28.18908 + 95, 93, 95, 92, 94, 91, 93, 91, 93, 91, 93, 36, 38, 38, 38, 38, 28.18909 + 38, 36, 36, 37, 38, 36, 36, 37, 37, 35, 36, 38, 38, 40, 42, 41, 28.18910 + 35, 24, 16, 15, 17, 20, 22, 27, 29, 30, 31, 33, 31, 40, 44, 33, 28.18911 + 31, 42, 48, 77, 110, 130, 134, 146, 154, 153, 155, 161, 157, 154, 158, 166, 28.18912 + 170, 170, 167, 164, 166, 169, 172, 174, 174, 173, 172, 177, 175, 173, 174, 179, 28.18913 + 181, 182, 182, 199, 188, 190, 193, 192, 195, 194, 183, 187, 191, 194, 193, 189, 28.18914 + 187, 189, 192, 186, 192, 196, 195, 197, 199, 197, 193, 181, 193, 205, 210, 209, 28.18915 + 207, 201, 194, 202, 206, 208, 207, 204, 207, 215, 223, 225, 228, 221, 206, 198, 28.18916 + 201, 201, 196, 201, 200, 199, 201, 209, 215, 211, 203, 202, 203, 205, 203, 197, 28.18917 + 192, 197, 206, 173, 183, 190, 187, 180, 179, 181, 182, 176, 174, 171, 171, 173, 28.18918 + 173, 170, 167, 167, 163, 159, 160, 164, 166, 163, 161, 167, 165, 162, 155, 146, 28.18919 + 139, 137, 137, 122, 130, 118, 79, 45, 33, 38, 38, 32, 34, 32, 27, 27, 28.18920 + 44, 69, 88, 89, 89, 91, 92, 94, 93, 94, 93, 95, 94, 95, 94, 95, 28.18921 + 94, 95, 94, 96, 95, 96, 94, 95, 93, 94, 93, 93, 91, 93, 39, 39, 28.18922 + 39, 39, 39, 39, 37, 37, 37, 37, 36, 36, 37, 37, 35, 35, 38, 39, 28.18923 + 40, 37, 35, 27, 18, 15, 19, 21, 25, 27, 31, 32, 32, 34, 27, 32, 28.18924 + 44, 43, 36, 43, 59, 59, 98, 120, 132, 136, 152, 161, 159, 160, 157, 154, 28.18925 + 152, 154, 158, 162, 163, 162, 163, 165, 168, 171, 174, 175, 176, 176, 176, 176, 28.18926 + 177, 177, 180, 181, 182, 183, 192, 184, 190, 194, 191, 193, 193, 184, 189, 195, 28.18927 + 200, 198, 193, 190, 193, 198, 181, 189, 196, 197, 197, 200, 201, 200, 187, 197, 28.18928 + 204, 204, 201, 200, 198, 194, 196, 202, 208, 210, 207, 206, 208, 211, 198, 200, 28.18929 + 200, 198, 201, 211, 220, 224, 214, 210, 204, 202, 208, 213, 207, 196, 203, 198, 28.18930 + 197, 204, 209, 204, 196, 190, 177, 185, 191, 187, 183, 183, 185, 184, 177, 174, 28.18931 + 171, 170, 171, 172, 172, 172, 164, 162, 160, 160, 162, 163, 162, 162, 161, 159, 28.18932 + 159, 158, 154, 146, 145, 146, 144, 129, 118, 113, 94, 64, 43, 33, 33, 28, 28.18933 + 30, 26, 23, 30, 55, 79, 86, 88, 90, 90, 92, 94, 94, 94, 95, 95, 28.18934 + 95, 95, 95, 95, 95, 95, 96, 96, 96, 95, 95, 94, 94, 94, 93, 91, 28.18935 + 93, 39, 40, 40, 40, 39, 39, 39, 39, 39, 39, 39, 39, 38, 38, 39, 28.18936 + 37, 36, 37, 34, 28, 22, 16, 17, 20, 23, 26, 32, 34, 35, 35, 38, 28.18937 + 41, 58, 55, 48, 37, 43, 82, 118, 126, 126, 137, 139, 143, 157, 159, 157, 28.18938 + 162, 153, 151, 149, 148, 148, 150, 151, 152, 159, 160, 162, 164, 167, 169, 171, 28.18939 + 172, 171, 174, 177, 177, 175, 174, 178, 181, 180, 178, 188, 194, 191, 192, 194, 28.18940 + 187, 195, 197, 199, 198, 195, 193, 193, 195, 189, 194, 196, 195, 195, 200, 202, 28.18941 + 201, 197, 200, 197, 189, 186, 192, 200, 205, 197, 200, 202, 201, 197, 194, 194, 28.18942 + 195, 221, 218, 216, 215, 212, 210, 213, 219, 216, 215, 210, 203, 202, 205, 203, 28.18943 + 198, 204, 196, 195, 201, 204, 198, 189, 183, 182, 187, 189, 186, 183, 184, 183, 28.18944 + 181, 177, 175, 174, 173, 174, 174, 174, 174, 162, 163, 163, 162, 160, 160, 162, 28.18945 + 165, 161, 157, 158, 162, 161, 154, 151, 153, 156, 133, 118, 126, 129, 107, 74, 28.18946 + 46, 39, 25, 24, 28, 27, 25, 41, 65, 84, 86, 90, 90, 92, 92, 95, 28.18947 + 96, 95, 97, 97, 97, 97, 97, 97, 97, 98, 98, 98, 97, 97, 96, 96, 28.18948 + 94, 94, 92, 94, 40, 40, 40, 40, 39, 39, 39, 39, 40, 40, 40, 41, 28.18949 + 39, 40, 40, 38, 34, 33, 28, 21, 12, 10, 16, 26, 29, 33, 39, 41, 28.18950 + 41, 42, 45, 48, 47, 65, 84, 97, 117, 152, 167, 149, 150, 152, 148, 150, 28.18951 + 158, 153, 151, 161, 154, 153, 151, 148, 144, 144, 146, 148, 156, 156, 157, 159, 28.18952 + 161, 163, 165, 167, 164, 169, 174, 174, 170, 168, 172, 176, 177, 177, 191, 196, 28.18953 + 192, 191, 195, 189, 194, 192, 190, 189, 190, 188, 185, 182, 198, 197, 192, 187, 28.18954 + 188, 193, 195, 192, 191, 198, 201, 198, 195, 199, 205, 207, 201, 200, 197, 194, 28.18955 + 194, 196, 202, 206, 205, 200, 202, 208, 208, 201, 203, 212, 200, 205, 207, 202, 28.18956 + 200, 206, 212, 216, 200, 201, 202, 199, 190, 182, 184, 191, 187, 190, 189, 184, 28.18957 + 182, 183, 181, 177, 176, 176, 176, 176, 177, 177, 176, 175, 162, 165, 166, 164, 28.18958 + 159, 158, 163, 167, 167, 161, 160, 164, 164, 157, 151, 152, 140, 149, 148, 134, 28.18959 + 123, 118, 106, 84, 52, 27, 21, 33, 32, 23, 32, 53, 83, 86, 87, 90, 28.18960 + 92, 93, 95, 96, 95, 95, 97, 95, 97, 95, 97, 95, 98, 96, 98, 95, 28.18961 + 97, 94, 96, 94, 94, 93, 94, 41, 42, 40, 40, 40, 40, 39, 38, 38, 28.18962 + 39, 39, 42, 44, 42, 38, 32, 37, 24, 13, 11, 13, 18, 25, 34, 35, 28.18963 + 41, 46, 45, 49, 60, 71, 80, 121, 132, 145, 153, 156, 156, 162, 166, 155, 28.18964 + 155, 153, 154, 155, 156, 158, 159, 158, 159, 158, 155, 150, 146, 144, 145, 138, 28.18965 + 142, 147, 149, 150, 153, 157, 161, 164, 158, 159, 168, 174, 171, 174, 182, 181, 28.18966 + 177, 176, 181, 192, 195, 191, 186, 209, 205, 201, 196, 193, 193, 194, 196, 196, 28.18967 + 197, 199, 200, 195, 189, 192, 198, 187, 193, 200, 204, 202, 198, 194, 192, 195, 28.18968 + 198, 200, 200, 198, 198, 200, 203, 200, 205, 205, 203, 213, 226, 225, 214, 204, 28.18969 + 196, 192, 201, 211, 211, 204, 199, 210, 192, 182, 187, 192, 188, 185, 189, 187, 28.18970 + 185, 177, 177, 182, 175, 169, 180, 158, 173, 179, 170, 165, 170, 172, 167, 175, 28.18971 + 170, 166, 168, 171, 168, 156, 145, 157, 154, 158, 166, 169, 162, 157, 157, 152, 28.18972 + 150, 147, 144, 140, 136, 133, 124, 88, 38, 25, 41, 36, 23, 32, 53, 74, 28.18973 + 91, 91, 80, 85, 90, 92, 97, 95, 94, 93, 90, 94, 97, 96, 89, 94, 28.18974 + 93, 94, 93, 94, 94, 95, 95, 89, 96, 96, 40, 42, 40, 40, 40, 40, 28.18975 + 40, 39, 42, 44, 43, 41, 37, 36, 40, 42, 27, 15, 8, 14, 24, 29, 28.18976 + 33, 38, 36, 53, 72, 83, 94, 111, 128, 138, 152, 158, 164, 165, 161, 158, 28.18977 + 158, 159, 153, 153, 150, 150, 150, 150, 151, 151, 156, 154, 152, 152, 153, 151, 28.18978 + 147, 143, 138, 140, 140, 138, 137, 138, 143, 146, 152, 157, 167, 173, 170, 164, 28.18979 + 168, 177, 180, 178, 180, 185, 194, 197, 196, 193, 192, 192, 192, 193, 194, 195, 28.18980 + 197, 198, 196, 197, 200, 202, 199, 194, 196, 202, 201, 199, 196, 193, 191, 194, 28.18981 + 200, 204, 198, 201, 203, 203, 201, 200, 201, 203, 204, 211, 211, 203, 202, 209, 28.18982 + 211, 205, 195, 193, 196, 204, 207, 204, 200, 197, 194, 187, 189, 198, 200, 191, 28.18983 + 186, 188, 199, 193, 181, 176, 180, 177, 172, 176, 178, 171, 174, 184, 181, 166, 28.18984 + 158, 161, 163, 164, 162, 158, 153, 153, 158, 163, 160, 158, 160, 165, 167, 161, 28.18985 + 159, 162, 163, 153, 144, 142, 146, 145, 136, 121, 110, 90, 70, 42, 24, 30, 28.18986 + 39, 31, 61, 87, 98, 93, 95, 91, 83, 83, 88, 93, 94, 90, 89, 90, 28.18987 + 88, 85, 88, 88, 89, 89, 89, 89, 89, 91, 91, 98, 94, 38, 41, 41, 28.18988 + 42, 42, 41, 41, 42, 44, 43, 41, 41, 39, 38, 36, 33, 11, 10, 11, 28.18989 + 15, 23, 32, 49, 63, 101, 120, 139, 144, 141, 145, 152, 159, 159, 164, 167, 28.18990 + 166, 162, 158, 157, 159, 160, 159, 156, 154, 153, 153, 153, 153, 160, 156, 154, 28.18991 + 157, 162, 162, 156, 149, 148, 146, 143, 137, 133, 132, 134, 136, 143, 142, 146, 28.18992 + 152, 158, 165, 172, 177, 176, 177, 183, 187, 190, 192, 195, 195, 189, 190, 192, 28.18993 + 193, 193, 193, 192, 191, 194, 195, 199, 203, 201, 197, 198, 203, 197, 205, 215, 28.18994 + 221, 219, 212, 204, 199, 200, 202, 204, 204, 202, 201, 200, 200, 196, 205, 210, 28.18995 + 202, 195, 200, 206, 208, 209, 205, 201, 196, 190, 186, 191, 199, 203, 194, 188, 28.18996 + 187, 181, 172, 172, 178, 180, 177, 171, 168, 173, 177, 174, 170, 189, 172, 163, 28.18997 + 168, 167, 157, 150, 152, 159, 164, 169, 169, 164, 159, 158, 159, 158, 158, 160, 28.18998 + 162, 161, 157, 159, 165, 168, 160, 153, 149, 149, 146, 139, 127, 125, 124, 108, 28.18999 + 65, 38, 47, 48, 24, 47, 73, 86, 87, 92, 93, 92, 96, 81, 89, 94, 28.19000 + 91, 86, 86, 86, 85, 87, 87, 87, 87, 87, 87, 87, 89, 89, 97, 94, 28.19001 + 39, 40, 41, 41, 43, 43, 42, 43, 42, 36, 34, 41, 47, 42, 23, 5, 28.19002 + 11, 17, 24, 24, 23, 40, 78, 113, 125, 140, 156, 157, 155, 152, 153, 152, 28.19003 + 157, 159, 162, 160, 158, 156, 157, 159, 164, 164, 160, 159, 158, 158, 158, 158, 28.19004 + 161, 159, 159, 162, 165, 165, 160, 154, 156, 154, 150, 144, 138, 134, 132, 131, 28.19005 + 123, 127, 136, 144, 150, 156, 163, 169, 170, 174, 181, 184, 184, 184, 188, 191, 28.19006 + 193, 193, 194, 194, 193, 192, 191, 190, 192, 193, 197, 201, 199, 195, 195, 199, 28.19007 + 201, 201, 201, 199, 197, 197, 199, 201, 199, 201, 202, 202, 201, 198, 197, 193, 28.19008 + 190, 200, 208, 204, 200, 202, 207, 210, 191, 198, 209, 215, 208, 192, 181, 178, 28.19009 + 195, 189, 186, 189, 191, 191, 195, 201, 197, 199, 203, 202, 199, 203, 203, 192, 28.19010 + 184, 189, 184, 175, 177, 186, 182, 170, 167, 163, 162, 167, 173, 171, 161, 150, 28.19011 + 152, 156, 160, 159, 157, 154, 156, 161, 159, 165, 171, 164, 151, 142, 143, 143, 28.19012 + 133, 122, 120, 104, 79, 65, 53, 35, 52, 70, 77, 78, 85, 84, 82, 84, 28.19013 + 77, 83, 86, 84, 82, 84, 86, 84, 85, 85, 85, 84, 84, 84, 84, 84, 28.19014 + 81, 89, 86, 39, 42, 41, 41, 43, 43, 42, 43, 39, 38, 39, 42, 42, 28.19015 + 33, 15, 1, 22, 25, 31, 37, 46, 71, 109, 142, 137, 147, 152, 155, 157, 28.19016 + 158, 155, 150, 166, 165, 165, 160, 157, 152, 151, 151, 157, 156, 156, 156, 156, 28.19017 + 157, 158, 159, 155, 157, 159, 159, 157, 155, 153, 152, 153, 152, 150, 146, 141, 28.19018 + 135, 128, 124, 106, 117, 133, 144, 144, 139, 144, 155, 160, 166, 173, 176, 179, 28.19019 + 180, 184, 188, 188, 188, 188, 190, 192, 194, 197, 198, 195, 194, 196, 199, 198, 28.19020 + 194, 193, 197, 196, 196, 196, 194, 192, 193, 195, 198, 201, 200, 200, 200, 200, 28.19021 + 198, 196, 192, 193, 198, 204, 205, 203, 202, 200, 197, 214, 201, 187, 182, 184, 28.19022 + 191, 205, 217, 198, 194, 197, 206, 209, 200, 186, 176, 168, 163, 165, 157, 137, 28.19023 + 136, 140, 133, 133, 152, 164, 166, 173, 183, 183, 175, 175, 164, 153, 151, 158, 28.19024 + 163, 163, 160, 149, 156, 161, 160, 155, 153, 154, 156, 150, 160, 170, 167, 154, 28.19025 + 144, 144, 146, 144, 125, 128, 131, 114, 91, 70, 56, 41, 54, 59, 66, 79, 28.19026 + 81, 79, 79, 77, 75, 73, 70, 73, 78, 77, 73, 75, 75, 74, 74, 73, 28.19027 + 73, 72, 72, 73, 80, 77, 40, 43, 41, 42, 42, 43, 41, 42, 38, 45, 28.19028 + 47, 37, 21, 11, 13, 21, 27, 23, 27, 48, 77, 104, 125, 136, 162, 164, 28.19029 + 164, 161, 162, 165, 161, 153, 164, 163, 161, 159, 156, 154, 152, 151, 154, 154, 28.19030 + 154, 155, 156, 158, 159, 160, 159, 161, 162, 160, 156, 154, 154, 155, 153, 153, 28.19031 + 152, 151, 148, 141, 132, 125, 126, 96, 80, 97, 123, 134, 142, 153, 149, 155, 28.19032 + 163, 169, 175, 179, 185, 189, 186, 186, 186, 186, 187, 189, 192, 193, 198, 195, 28.19033 + 195, 198, 198, 195, 195, 198, 189, 196, 205, 210, 209, 203, 197, 194, 203, 201, 28.19034 + 199, 199, 199, 199, 198, 194, 185, 189, 194, 198, 201, 200, 196, 191, 188, 189, 28.19035 + 199, 212, 216, 205, 189, 178, 187, 180, 173, 169, 164, 150, 130, 115, 125, 104, 28.19036 + 99, 90, 64, 62, 75, 75, 71, 71, 80, 95, 102, 108, 127, 150, 167, 170, 28.19037 + 171, 167, 160, 156, 158, 160, 151, 159, 163, 161, 159, 158, 158, 156, 153, 153, 28.19038 + 155, 157, 160, 153, 147, 139, 142, 135, 136, 134, 125, 121, 112, 92, 64, 64, 28.19039 + 52, 47, 59, 67, 75, 85, 82, 79, 75, 72, 75, 79, 77, 70, 74, 73, 28.19040 + 73, 72, 72, 71, 70, 70, 67, 73, 69, 42, 44, 44, 44, 42, 42, 42, 28.19041 + 42, 41, 43, 38, 24, 9, 5, 15, 30, 25, 26, 38, 65, 97, 120, 133, 28.19042 + 141, 150, 154, 156, 154, 154, 161, 162, 161, 152, 152, 153, 154, 155, 155, 154, 28.19043 + 152, 156, 156, 156, 157, 158, 160, 161, 162, 167, 165, 162, 161, 160, 160, 160, 28.19044 + 159, 158, 156, 155, 154, 151, 146, 137, 131, 132, 70, 27, 43, 79, 100, 122, 28.19045 + 142, 143, 147, 154, 161, 168, 173, 177, 179, 184, 185, 186, 186, 187, 187, 186, 28.19046 + 186, 197, 193, 191, 194, 195, 194, 196, 200, 198, 195, 190, 186, 186, 191, 199, 28.19047 + 206, 203, 200, 196, 195, 197, 198, 198, 195, 185, 185, 187, 191, 193, 192, 190, 28.19048 + 189, 190, 185, 183, 185, 182, 172, 161, 155, 142, 136, 129, 124, 124, 123, 119, 28.19049 + 114, 81, 46, 42, 46, 25, 23, 37, 36, 45, 38, 35, 40, 44, 53, 78, 28.19050 + 106, 131, 143, 160, 169, 169, 163, 157, 154, 158, 162, 161, 158, 157, 161, 160, 28.19051 + 156, 158, 155, 153, 153, 157, 154, 149, 142, 143, 139, 140, 138, 132, 135, 134, 28.19052 + 119, 120, 113, 89, 64, 52, 43, 44, 57, 74, 76, 79, 78, 80, 82, 79, 28.19053 + 74, 77, 76, 76, 75, 74, 73, 72, 70, 62, 66, 62, 45, 44, 44, 44, 28.19054 + 44, 42, 42, 41, 44, 34, 19, 11, 10, 13, 16, 20, 29, 44, 64, 89, 28.19055 + 107, 125, 146, 163, 166, 173, 172, 165, 156, 155, 157, 157, 159, 159, 159, 159, 28.19056 + 160, 159, 156, 153, 155, 155, 155, 156, 157, 158, 159, 160, 166, 159, 153, 155, 28.19057 + 160, 163, 161, 157, 159, 156, 152, 150, 146, 142, 135, 128, 97, 54, 29, 38, 28.19058 + 44, 42, 73, 119, 144, 147, 151, 156, 161, 164, 165, 166, 169, 173, 179, 185, 28.19059 + 190, 192, 191, 191, 191, 186, 183, 186, 189, 188, 193, 198, 190, 194, 199, 202, 28.19060 + 202, 201, 200, 200, 199, 196, 191, 190, 193, 195, 196, 193, 198, 196, 194, 191, 28.19061 + 185, 179, 178, 180, 172, 162, 152, 146, 141, 135, 133, 136, 137, 141, 142, 142, 28.19062 + 141, 136, 132, 128, 70, 28, 28, 45, 30, 25, 31, 23, 26, 39, 41, 32, 28.19063 + 31, 42, 49, 47, 87, 92, 106, 129, 153, 167, 167, 162, 160, 162, 157, 152, 28.19064 + 153, 160, 160, 156, 158, 162, 163, 158, 152, 147, 151, 155, 154, 142, 146, 150, 28.19065 + 137, 125, 123, 122, 112, 124, 121, 105, 84, 59, 46, 51, 57, 64, 75, 78, 28.19066 + 76, 77, 76, 73, 72, 72, 71, 70, 70, 70, 69, 66, 57, 62, 59, 44, 28.19067 + 48, 51, 48, 45, 44, 44, 40, 44, 25, 8, 6, 12, 17, 17, 22, 27, 28.19068 + 55, 76, 91, 118, 141, 153, 167, 156, 162, 169, 167, 163, 159, 163, 165, 170, 28.19069 + 167, 164, 161, 159, 158, 158, 156, 154, 159, 154, 152, 157, 157, 155, 161, 160, 28.19070 + 156, 151, 151, 153, 155, 157, 157, 153, 157, 149, 139, 150, 126, 144, 116, 50, 28.19071 + 16, 25, 31, 31, 29, 28, 72, 106, 127, 148, 156, 157, 163, 167, 169, 175, 28.19072 + 169, 177, 185, 179, 179, 184, 182, 189, 182, 194, 194, 167, 162, 186, 197, 202, 28.19073 + 189, 183, 188, 194, 190, 184, 182, 185, 186, 185, 183, 181, 178, 176, 173, 165, 28.19074 + 162, 160, 158, 157, 156, 155, 155, 155, 153, 150, 149, 150, 151, 150, 151, 150, 28.19075 + 173, 129, 149, 150, 121, 145, 101, 17, 17, 20, 20, 20, 20, 20, 21, 27, 28.19076 + 33, 36, 34, 29, 29, 34, 40, 48, 53, 71, 89, 125, 154, 155, 170, 160, 28.19077 + 170, 166, 155, 154, 154, 157, 167, 156, 164, 169, 163, 159, 155, 157, 153, 149, 28.19078 + 146, 149, 152, 147, 137, 130, 128, 129, 135, 127, 119, 121, 104, 71, 46, 38, 28.19079 + 31, 48, 68, 72, 72, 72, 68, 70, 62, 68, 73, 66, 62, 68, 67, 59, 28.19080 + 56, 55, 44, 46, 47, 49, 49, 48, 43, 36, 20, 13, 11, 16, 19, 18, 28.19081 + 15, 20, 43, 74, 92, 108, 130, 143, 148, 156, 164, 167, 169, 169, 169, 167, 28.19082 + 170, 169, 171, 168, 165, 163, 161, 160, 159, 159, 157, 162, 157, 154, 158, 157, 28.19083 + 155, 159, 156, 152, 149, 150, 152, 153, 154, 155, 156, 135, 169, 137, 133, 130, 28.19084 + 127, 45, 24, 12, 28, 27, 28, 29, 22, 42, 44, 75, 113, 139, 155, 160, 28.19085 + 156, 147, 148, 147, 159, 168, 160, 161, 171, 174, 182, 165, 171, 175, 165, 163, 28.19086 + 161, 146, 155, 159, 163, 165, 165, 167, 171, 176, 168, 168, 170, 169, 168, 165, 28.19087 + 166, 163, 162, 160, 159, 158, 158, 158, 158, 159, 164, 161, 159, 158, 159, 160, 28.19088 + 159, 161, 162, 150, 163, 146, 149, 130, 141, 37, 19, 21, 21, 22, 22, 22, 28.19089 + 22, 24, 31, 33, 32, 31, 30, 30, 32, 33, 37, 42, 52, 53, 84, 121, 28.19090 + 133, 153, 158, 167, 163, 160, 166, 163, 151, 147, 154, 160, 163, 161, 158, 158, 28.19091 + 157, 154, 153, 149, 147, 146, 143, 137, 135, 139, 126, 136, 134, 130, 132, 126, 28.19092 + 111, 101, 76, 47, 38, 47, 56, 67, 75, 67, 75, 61, 61, 60, 54, 57, 28.19093 + 67, 64, 70, 63, 60, 45, 44, 47, 53, 55, 50, 34, 23, 6, 10, 16, 28.19094 + 23, 20, 15, 16, 26, 43, 75, 98, 119, 143, 153, 154, 161, 169, 166, 164, 28.19095 + 164, 167, 166, 167, 164, 168, 167, 165, 163, 162, 161, 160, 160, 158, 163, 157, 28.19096 + 154, 157, 155, 151, 155, 151, 148, 147, 149, 151, 150, 151, 149, 153, 134, 152, 28.19097 + 142, 116, 133, 68, 6, 17, 23, 35, 24, 25, 35, 26, 25, 36, 41, 48, 28.19098 + 56, 74, 94, 110, 115, 111, 108, 119, 123, 113, 110, 119, 124, 128, 101, 85, 28.19099 + 77, 78, 93, 98, 87, 64, 101, 137, 151, 151, 154, 158, 159, 166, 166, 166, 28.19100 + 167, 167, 166, 168, 167, 172, 171, 170, 169, 168, 168, 168, 168, 171, 169, 167, 28.19101 + 167, 168, 169, 168, 167, 168, 155, 155, 158, 141, 146, 89, 7, 22, 21, 22, 28.19102 + 21, 22, 23, 22, 25, 33, 32, 29, 28, 30, 31, 29, 27, 31, 37, 42, 28.19103 + 31, 50, 84, 101, 128, 149, 159, 159, 159, 168, 168, 161, 160, 153, 156, 157, 28.19104 + 156, 158, 160, 156, 151, 154, 149, 147, 147, 145, 141, 139, 142, 131, 142, 139, 28.19105 + 132, 131, 130, 129, 134, 116, 85, 62, 49, 42, 47, 57, 56, 66, 62, 71, 28.19106 + 75, 70, 72, 74, 60, 57, 53, 54, 49, 49, 52, 57, 53, 40, 22, 12, 28.19107 + 15, 16, 18, 20, 16, 13, 18, 31, 40, 73, 100, 125, 150, 158, 160, 166, 28.19108 + 167, 166, 164, 162, 162, 161, 161, 161, 166, 166, 165, 164, 163, 163, 161, 161, 28.19109 + 157, 162, 156, 152, 155, 151, 146, 151, 148, 147, 148, 148, 150, 149, 148, 145, 28.19110 + 149, 142, 129, 123, 129, 86, 15, 25, 25, 32, 33, 23, 24, 33, 32, 29, 28.19111 + 26, 27, 28, 28, 32, 35, 39, 39, 44, 39, 46, 48, 38, 33, 39, 40, 28.19112 + 44, 45, 45, 42, 42, 49, 50, 42, 44, 98, 150, 165, 166, 171, 174, 170, 28.19113 + 178, 177, 177, 177, 177, 176, 179, 177, 186, 185, 183, 180, 178, 176, 175, 175, 28.19114 + 173, 172, 170, 170, 171, 172, 171, 169, 167, 170, 137, 152, 153, 110, 31, 25, 28.19115 + 17, 17, 17, 17, 19, 22, 23, 25, 30, 31, 30, 29, 30, 30, 29, 28, 28.19116 + 32, 33, 40, 34, 42, 56, 67, 102, 121, 143, 155, 158, 163, 162, 161, 167, 28.19117 + 157, 157, 155, 154, 158, 160, 155, 147, 149, 147, 149, 153, 153, 147, 141, 140, 28.19118 + 139, 146, 140, 130, 127, 126, 129, 139, 127, 117, 109, 85, 49, 35, 40, 42, 28.19119 + 44, 49, 64, 67, 64, 69, 72, 58, 67, 68, 68, 62, 58, 50, 45, 35, 28.19120 + 22, 14, 15, 22, 19, 15, 16, 16, 15, 19, 32, 57, 85, 105, 127, 148, 28.19121 + 152, 153, 160, 165, 169, 169, 167, 161, 158, 161, 165, 164, 164, 164, 165, 165, 28.19122 + 164, 163, 163, 158, 163, 157, 153, 155, 150, 144, 149, 146, 145, 146, 147, 149, 28.19123 + 148, 144, 141, 141, 140, 134, 109, 124, 22, 17, 38, 28, 28, 24, 25, 24, 28.19124 + 23, 29, 28, 18, 25, 35, 39, 32, 23, 16, 12, 30, 21, 25, 32, 31, 28.19125 + 32, 38, 35, 24, 36, 40, 38, 41, 43, 47, 50, 86, 129, 164, 167, 166, 28.19126 + 177, 183, 179, 183, 182, 181, 178, 178, 176, 179, 180, 186, 185, 182, 180, 178, 28.19127 + 176, 176, 175, 175, 173, 172, 172, 173, 172, 170, 166, 165, 161, 157, 132, 156, 28.19128 + 34, 28, 28, 13, 13, 13, 15, 17, 21, 24, 27, 26, 30, 33, 32, 29, 28.19129 + 28, 30, 34, 34, 25, 34, 39, 42, 37, 42, 86, 99, 123, 139, 149, 160, 28.19130 + 158, 150, 150, 162, 160, 156, 154, 158, 160, 154, 145, 150, 147, 148, 153, 155, 28.19131 + 149, 143, 142, 141, 143, 136, 131, 133, 132, 133, 143, 122, 129, 136, 119, 78, 28.19132 + 53, 45, 39, 24, 22, 26, 24, 19, 30, 47, 49, 51, 60, 68, 66, 52, 28.19133 + 37, 26, 15, 8, 12, 24, 17, 13, 11, 16, 20, 19, 20, 29, 67, 90, 28.19134 + 109, 129, 148, 149, 151, 161, 159, 163, 168, 164, 158, 153, 157, 161, 161, 163, 28.19135 + 164, 165, 166, 166, 164, 164, 161, 166, 161, 157, 158, 153, 147, 150, 144, 143, 28.19136 + 144, 145, 147, 145, 142, 139, 131, 143, 126, 136, 50, 16, 31, 27, 24, 27, 28.19137 + 19, 33, 34, 20, 26, 24, 31, 28, 27, 22, 17, 16, 21, 31, 19, 7, 28.19138 + 9, 18, 20, 25, 28, 25, 35, 34, 21, 19, 31, 34, 40, 55, 113, 143, 28.19139 + 168, 169, 170, 178, 180, 172, 184, 183, 179, 175, 174, 175, 176, 176, 181, 181, 28.19140 + 180, 179, 179, 180, 181, 181, 178, 177, 175, 175, 175, 173, 170, 166, 156, 156, 28.19141 + 165, 142, 85, 11, 37, 11, 13, 14, 16, 19, 22, 24, 28, 29, 23, 29, 28.19142 + 34, 33, 29, 27, 31, 36, 37, 24, 31, 38, 42, 35, 37, 76, 107, 113, 28.19143 + 112, 119, 144, 159, 161, 163, 164, 163, 159, 155, 157, 159, 154, 146, 158, 150, 28.19144 + 145, 146, 149, 148, 147, 149, 143, 143, 135, 134, 137, 132, 126, 133, 136, 135, 28.19145 + 140, 131, 107, 84, 63, 38, 15, 6, 9, 11, 4, 6, 19, 24, 13, 27, 28.19146 + 42, 46, 31, 20, 15, 12, 7, 12, 22, 16, 14, 15, 19, 22, 20, 23, 28.19147 + 34, 64, 87, 107, 128, 148, 151, 152, 164, 154, 158, 161, 161, 157, 153, 153, 28.19148 + 154, 160, 162, 164, 166, 167, 167, 166, 165, 161, 167, 162, 158, 160, 154, 147, 28.19149 + 151, 144, 142, 141, 141, 141, 140, 137, 135, 127, 143, 116, 125, 2, 33, 24, 28.19150 + 21, 27, 32, 21, 37, 38, 23, 29, 20, 22, 19, 21, 25, 24, 16, 13, 28.19151 + 15, 30, 19, 23, 28, 24, 25, 31, 29, 22, 28, 29, 39, 53, 42, 40, 28.19152 + 61, 138, 161, 183, 187, 188, 191, 189, 180, 186, 185, 181, 177, 177, 176, 177, 28.19153 + 178, 181, 182, 182, 182, 183, 184, 185, 186, 181, 179, 177, 176, 176, 173, 169, 28.19154 + 164, 153, 161, 146, 138, 15, 29, 21, 11, 17, 19, 22, 24, 24, 25, 26, 28.19155 + 26, 23, 26, 29, 29, 27, 25, 26, 27, 34, 30, 36, 34, 40, 40, 33, 28.19156 + 56, 112, 115, 107, 104, 121, 140, 155, 170, 160, 160, 157, 153, 154, 156, 153, 28.19157 + 146, 160, 151, 144, 146, 149, 148, 147, 148, 144, 145, 139, 138, 137, 127, 120, 28.19158 + 130, 144, 138, 141, 138, 130, 118, 92, 57, 29, 10, 14, 27, 22, 13, 13, 28.19159 + 13, 20, 24, 29, 18, 7, 6, 17, 23, 16, 11, 13, 25, 22, 19, 19, 28.19160 + 17, 19, 28, 43, 65, 87, 107, 127, 145, 146, 145, 157, 159, 158, 160, 162, 28.19161 + 163, 160, 156, 154, 159, 162, 164, 166, 167, 168, 166, 166, 159, 165, 160, 157, 28.19162 + 158, 153, 146, 150, 142, 140, 138, 137, 138, 137, 135, 134, 136, 124, 129, 58, 28.19163 + 29, 20, 18, 28, 28, 39, 22, 28, 28, 21, 31, 14, 33, 23, 18, 23, 28.19164 + 25, 22, 19, 19, 19, 12, 18, 22, 15, 17, 26, 26, 29, 35, 31, 36, 28.19165 + 47, 40, 61, 107, 167, 176, 181, 177, 176, 180, 184, 184, 187, 183, 181, 178, 28.19166 + 176, 178, 179, 182, 183, 184, 183, 182, 182, 182, 182, 183, 181, 179, 177, 176, 28.19167 + 175, 171, 167, 159, 158, 157, 139, 90, 11, 32, 0, 30, 20, 23, 25, 25, 28.19168 + 25, 23, 23, 21, 27, 25, 25, 26, 27, 26, 23, 20, 25, 34, 43, 31, 28.19169 + 37, 44, 25, 26, 94, 120, 131, 122, 113, 109, 120, 140, 156, 158, 156, 153, 28.19170 + 153, 155, 153, 149, 154, 148, 146, 151, 154, 151, 144, 141, 139, 143, 142, 143, 28.19171 + 142, 132, 128, 142, 131, 133, 142, 150, 146, 142, 123, 89, 55, 19, 10, 24, 28.19172 + 25, 18, 20, 23, 26, 22, 20, 15, 17, 17, 17, 18, 19, 20, 20, 24, 28.19173 + 23, 24, 23, 19, 17, 23, 39, 80, 99, 109, 121, 145, 158, 160, 162, 158, 28.19174 + 162, 164, 164, 166, 165, 159, 151, 151, 153, 157, 163, 168, 171, 169, 167, 163, 28.19175 + 160, 158, 157, 154, 152, 146, 141, 147, 140, 143, 146, 136, 135, 134, 128, 150, 28.19176 + 106, 112, 35, 21, 33, 15, 23, 31, 32, 29, 32, 33, 32, 26, 18, 14, 28.19177 + 23, 24, 22, 23, 18, 18, 30, 22, 23, 22, 20, 19, 22, 26, 29, 31, 28.19178 + 29, 30, 47, 66, 77, 112, 158, 180, 183, 187, 187, 188, 187, 186, 186, 187, 28.19179 + 184, 184, 182, 180, 180, 178, 179, 184, 186, 185, 184, 184, 183, 182, 182, 182, 28.19180 + 185, 183, 176, 170, 170, 169, 163, 167, 137, 142, 38, 26, 15, 15, 17, 19, 28.19181 + 19, 29, 33, 24, 22, 24, 19, 30, 22, 29, 29, 20, 31, 39, 24, 31, 28.19182 + 33, 35, 37, 38, 37, 35, 34, 77, 122, 118, 126, 130, 126, 99, 125, 132, 28.19183 + 150, 162, 159, 153, 153, 159, 161, 159, 153, 151, 154, 153, 147, 143, 146, 146, 28.19184 + 144, 142, 142, 139, 135, 132, 134, 128, 139, 141, 137, 139, 138, 128, 112, 52, 28.19185 + 17, 23, 43, 31, 26, 28, 14, 26, 23, 22, 11, 10, 12, 12, 13, 14, 28.19186 + 17, 18, 22, 22, 23, 24, 21, 19, 27, 41, 67, 99, 116, 127, 138, 142, 28.19187 + 144, 154, 169, 169, 166, 161, 161, 163, 163, 158, 166, 165, 162, 161, 163, 165, 28.19188 + 165, 165, 162, 160, 158, 158, 156, 153, 148, 146, 143, 137, 139, 142, 135, 136, 28.19189 + 137, 130, 132, 126, 84, 25, 26, 26, 19, 23, 26, 26, 25, 25, 28, 26, 28.19190 + 20, 15, 18, 23, 20, 18, 20, 16, 14, 24, 19, 21, 23, 25, 27, 27, 28.19191 + 28, 28, 35, 31, 40, 86, 140, 163, 166, 174, 176, 179, 183, 184, 183, 182, 28.19192 + 184, 183, 189, 189, 187, 185, 184, 182, 182, 182, 182, 184, 183, 183, 183, 182, 28.19193 + 182, 182, 179, 179, 175, 171, 171, 173, 170, 161, 155, 141, 110, 11, 13, 15, 28.19194 + 12, 24, 17, 17, 21, 17, 11, 19, 28, 28, 12, 23, 37, 37, 27, 27, 28.19195 + 28, 21, 29, 31, 33, 35, 36, 36, 35, 32, 55, 115, 119, 124, 128, 125, 28.19196 + 120, 118, 121, 133, 143, 147, 149, 155, 158, 157, 155, 148, 145, 148, 149, 146, 28.19197 + 142, 144, 142, 144, 145, 143, 136, 131, 131, 136, 135, 140, 141, 143, 145, 144, 28.19198 + 130, 118, 98, 59, 41, 39, 24, 22, 29, 29, 34, 31, 28, 11, 10, 11, 28.19199 + 11, 12, 15, 20, 21, 18, 17, 20, 22, 20, 19, 27, 38, 88, 115, 131, 28.19200 + 140, 152, 155, 153, 157, 160, 167, 172, 172, 171, 166, 157, 148, 160, 160, 160, 28.19201 + 162, 166, 169, 169, 169, 159, 158, 157, 157, 155, 152, 147, 146, 142, 136, 137, 28.19202 + 140, 134, 137, 137, 128, 122, 138, 49, 21, 33, 24, 28, 24, 23, 23, 23, 28.19203 + 23, 25, 23, 18, 12, 19, 19, 15, 16, 23, 19, 15, 23, 34, 30, 25, 28.19204 + 22, 24, 26, 30, 32, 30, 51, 79, 121, 163, 177, 172, 172, 177, 179, 184, 28.19205 + 185, 186, 185, 187, 187, 189, 189, 187, 185, 185, 185, 185, 185, 182, 182, 182, 28.19206 + 182, 182, 181, 181, 181, 178, 175, 171, 169, 174, 178, 173, 161, 155, 148, 79, 28.19207 + 4, 13, 21, 10, 23, 31, 33, 26, 19, 26, 35, 30, 12, 19, 25, 21, 28.19208 + 19, 26, 29, 27, 28, 25, 26, 29, 31, 33, 33, 33, 32, 32, 95, 123, 28.19209 + 122, 127, 126, 140, 114, 122, 127, 133, 141, 151, 160, 161, 158, 159, 151, 146, 28.19210 + 148, 152, 151, 148, 147, 140, 146, 149, 145, 135, 131, 133, 139, 138, 136, 137, 28.19211 + 145, 149, 143, 131, 122, 103, 70, 41, 32, 25, 19, 21, 27, 19, 20, 18, 28.19212 + 9, 11, 14, 16, 18, 19, 22, 22, 19, 17, 20, 22, 21, 19, 25, 35, 28.19213 + 72, 105, 123, 130, 135, 138, 143, 155, 151, 161, 170, 175, 173, 166, 155, 144, 28.19214 + 151, 155, 162, 168, 173, 172, 166, 162, 158, 158, 158, 157, 153, 149, 144, 143, 28.19215 + 147, 142, 143, 141, 134, 135, 134, 123, 125, 114, 21, 23, 29, 25, 28, 19, 28.19216 + 23, 23, 22, 23, 24, 22, 18, 15, 17, 16, 13, 18, 29, 25, 20, 28, 28.19217 + 24, 22, 24, 28, 36, 39, 41, 40, 73, 112, 142, 157, 164, 164, 169, 182, 28.19218 + 177, 178, 183, 184, 186, 187, 187, 189, 186, 187, 187, 185, 185, 184, 186, 186, 28.19219 + 185, 184, 184, 183, 182, 181, 180, 180, 178, 178, 175, 173, 176, 179, 175, 166, 28.19220 + 150, 124, 41, 15, 18, 27, 16, 22, 9, 29, 31, 18, 21, 27, 21, 9, 28.19221 + 24, 36, 27, 20, 29, 27, 24, 37, 25, 26, 28, 31, 33, 34, 34, 34, 28.19222 + 25, 62, 127, 123, 128, 133, 143, 121, 133, 133, 135, 139, 148, 156, 159, 160, 28.19223 + 163, 156, 150, 150, 154, 155, 152, 148, 143, 148, 149, 145, 138, 137, 137, 138, 28.19224 + 137, 129, 129, 142, 149, 141, 132, 127, 115, 86, 48, 35, 39, 35, 28, 35, 28.19225 + 22, 22, 22, 4, 7, 12, 16, 19, 19, 18, 17, 25, 22, 23, 25, 26, 28.19226 + 23, 25, 32, 51, 93, 122, 132, 137, 140, 153, 173, 158, 161, 161, 158, 159, 28.19227 + 161, 164, 163, 167, 169, 171, 173, 172, 166, 156, 150, 161, 162, 163, 162, 156, 28.19228 + 150, 145, 144, 150, 147, 148, 145, 138, 139, 135, 117, 129, 63, 8, 29, 18, 28.19229 + 26, 22, 13, 22, 22, 22, 21, 22, 19, 17, 15, 16, 15, 13, 21, 32, 28.19230 + 27, 26, 36, 33, 44, 65, 86, 100, 103, 99, 94, 131, 154, 163, 166, 173, 28.19231 + 177, 177, 181, 170, 174, 178, 179, 181, 182, 184, 186, 186, 187, 187, 187, 187, 28.19232 + 186, 188, 186, 189, 188, 186, 185, 183, 181, 180, 179, 177, 180, 180, 176, 173, 28.19233 + 174, 172, 166, 146, 88, 13, 21, 12, 25, 26, 37, 76, 100, 84, 38, 10, 28.19234 + 5, 14, 31, 11, 37, 44, 40, 38, 22, 14, 31, 26, 27, 29, 31, 33, 28.19235 + 34, 35, 36, 32, 31, 120, 122, 128, 138, 131, 133, 134, 134, 133, 133, 134, 28.19236 + 139, 147, 157, 161, 156, 151, 149, 152, 154, 150, 145, 145, 146, 144, 140, 139, 28.19237 + 142, 138, 131, 132, 126, 128, 141, 149, 143, 135, 132, 139, 102, 52, 28, 33, 28.19238 + 33, 28, 32, 26, 26, 24, 7, 10, 15, 20, 22, 21, 20, 17, 22, 18, 28.19239 + 19, 21, 22, 19, 19, 25, 26, 48, 65, 88, 121, 137, 137, 139, 151, 156, 28.19240 + 159, 159, 159, 164, 167, 166, 180, 177, 172, 169, 166, 164, 160, 157, 164, 166, 28.19241 + 168, 167, 160, 154, 150, 149, 150, 149, 152, 149, 143, 143, 136, 114, 116, 28, 28.19242 + 16, 33, 19, 28, 22, 18, 18, 18, 19, 17, 17, 17, 16, 15, 16, 18, 28.19243 + 17, 23, 31, 25, 32, 53, 90, 98, 113, 127, 139, 148, 155, 159, 152, 162, 28.19244 + 163, 161, 169, 170, 168, 172, 171, 175, 179, 181, 182, 183, 184, 186, 187, 187, 28.19245 + 188, 189, 189, 189, 191, 190, 189, 188, 187, 185, 183, 181, 180, 179, 175, 180, 28.19246 + 181, 176, 171, 169, 168, 163, 168, 102, 35, 28, 15, 25, 32, 71, 119, 156, 28.19247 + 164, 149, 131, 86, 25, 0, 32, 32, 25, 28, 38, 35, 25, 25, 28, 28, 28.19248 + 29, 31, 32, 34, 35, 34, 36, 23, 97, 121, 130, 140, 127, 143, 135, 135, 28.19249 + 136, 134, 130, 130, 140, 152, 157, 158, 156, 153, 153, 155, 152, 148, 143, 144, 28.19250 + 139, 135, 137, 143, 138, 126, 129, 127, 133, 141, 148, 145, 140, 136, 131, 95, 28.19251 + 59, 40, 37, 34, 29, 22, 24, 24, 22, 11, 12, 17, 19, 21, 20, 20, 28.19252 + 21, 17, 15, 14, 17, 20, 17, 17, 22, 37, 39, 35, 55, 101, 128, 132, 28.19253 + 129, 138, 149, 159, 163, 164, 164, 161, 157, 170, 167, 164, 164, 165, 167, 167, 28.19254 + 167, 160, 164, 168, 168, 162, 157, 153, 154, 154, 154, 157, 153, 145, 143, 133, 28.19255 + 106, 72, 20, 26, 26, 25, 22, 23, 24, 17, 18, 18, 16, 16, 13, 14, 28.19256 + 16, 17, 20, 19, 25, 30, 28, 51, 85, 130, 131, 133, 133, 133, 141, 156, 28.19257 + 168, 162, 173, 175, 174, 175, 168, 168, 180, 175, 178, 182, 184, 184, 184, 185, 28.19258 + 186, 186, 186, 189, 189, 190, 189, 192, 190, 187, 185, 184, 184, 183, 182, 182, 28.19259 + 181, 176, 179, 178, 174, 173, 172, 168, 160, 176, 145, 81, 26, 24, 28, 26, 28.19260 + 111, 150, 161, 146, 141, 160, 144, 104, 94, 99, 69, 46, 40, 39, 40, 36, 28.19261 + 27, 27, 27, 28, 28, 29, 31, 32, 32, 32, 36, 63, 117, 131, 134, 138, 28.19262 + 143, 140, 139, 141, 141, 134, 129, 133, 143, 150, 157, 160, 157, 155, 157, 156, 28.19263 + 153, 142, 146, 143, 137, 137, 143, 140, 129, 126, 132, 138, 139, 141, 142, 141, 28.19264 + 135, 126, 99, 89, 77, 57, 49, 49, 35, 41, 39, 38, 13, 12, 11, 12, 28.19265 + 13, 14, 16, 19, 20, 18, 18, 22, 23, 23, 23, 26, 20, 32, 28, 25, 28.19266 + 41, 66, 98, 128, 139, 148, 151, 150, 150, 155, 160, 161, 158, 159, 161, 164, 28.19267 + 167, 167, 163, 161, 156, 159, 166, 166, 162, 158, 155, 157, 158, 158, 159, 153, 28.19268 + 145, 142, 127, 97, 30, 23, 27, 12, 25, 10, 18, 21, 18, 19, 20, 20, 28.19269 + 17, 16, 17, 20, 18, 22, 23, 26, 31, 35, 69, 114, 135, 141, 155, 156, 28.19270 + 152, 150, 155, 160, 170, 169, 166, 171, 181, 175, 173, 181, 171, 174, 179, 181, 28.19271 + 180, 180, 181, 182, 181, 183, 183, 184, 185, 186, 187, 187, 183, 183, 183, 184, 28.19272 + 184, 183, 183, 183, 180, 179, 176, 174, 178, 177, 172, 160, 147, 158, 101, 12, 28.19273 + 30, 32, 16, 134, 138, 162, 158, 153, 166, 152, 136, 155, 144, 130, 123, 97, 28.19274 + 43, 19, 25, 29, 25, 27, 27, 27, 28, 29, 31, 31, 27, 54, 40, 115, 28.19275 + 132, 130, 153, 141, 144, 140, 141, 143, 136, 126, 123, 128, 137, 148, 156, 152, 28.19276 + 151, 152, 153, 152, 142, 150, 150, 142, 138, 144, 143, 135, 124, 135, 142, 136, 28.19277 + 135, 138, 138, 130, 132, 104, 97, 78, 41, 37, 53, 44, 48, 45, 40, 16, 28.19278 + 11, 7, 10, 15, 20, 21, 20, 17, 11, 15, 18, 15, 21, 25, 18, 28, 28.19279 + 26, 19, 18, 17, 12, 33, 73, 128, 132, 137, 143, 147, 150, 153, 155, 164, 28.19280 + 160, 158, 159, 161, 164, 164, 162, 159, 160, 163, 162, 160, 159, 164, 165, 164, 28.19281 + 156, 149, 141, 146, 155, 123, 68, 22, 27, 25, 17, 18, 24, 24, 21, 24, 28.19282 + 21, 18, 17, 19, 24, 30, 32, 31, 29, 26, 28, 50, 83, 113, 122, 136, 28.19283 + 136, 142, 142, 143, 147, 153, 159, 162, 171, 176, 174, 173, 174, 175, 170, 177, 28.19284 + 180, 180, 176, 175, 180, 183, 183, 178, 184, 186, 185, 184, 185, 187, 188, 186, 28.19285 + 184, 181, 182, 185, 185, 184, 182, 180, 174, 175, 178, 172, 171, 173, 165, 156, 28.19286 + 106, 73, 36, 32, 24, 23, 108, 149, 145, 151, 162, 166, 160, 162, 166, 144, 28.19287 + 155, 155, 143, 119, 60, 16, 15, 21, 23, 35, 40, 32, 30, 38, 38, 43, 28.19288 + 37, 53, 98, 139, 138, 138, 150, 142, 149, 152, 147, 136, 132, 129, 126, 127, 28.19289 + 140, 155, 155, 153, 151, 151, 149, 146, 147, 146, 143, 138, 134, 132, 131, 136, 28.19290 + 133, 137, 143, 146, 141, 135, 134, 134, 112, 104, 64, 49, 52, 41, 53, 47, 28.19291 + 43, 42, 19, 20, 20, 20, 19, 17, 17, 17, 22, 15, 18, 21, 18, 21, 28.19292 + 24, 18, 14, 20, 24, 27, 26, 10, 7, 20, 61, 104, 130, 123, 127, 151, 28.19293 + 157, 143, 154, 155, 155, 153, 152, 153, 156, 159, 158, 162, 163, 160, 156, 155, 28.19294 + 163, 165, 169, 160, 156, 151, 146, 136, 89, 29, 38, 36, 35, 33, 27, 19, 28.19295 + 18, 24, 23, 23, 24, 26, 28, 25, 21, 16, 38, 27, 40, 75, 108, 118, 28.19296 + 126, 134, 132, 136, 144, 149, 149, 149, 151, 153, 160, 166, 170, 168, 169, 173, 28.19297 + 175, 173, 173, 176, 176, 174, 177, 181, 181, 177, 187, 180, 173, 170, 173, 177, 28.19298 + 175, 174, 185, 184, 182, 182, 182, 184, 183, 182, 181, 174, 175, 176, 168, 169, 28.19299 + 170, 164, 169, 124, 81, 27, 24, 31, 25, 88, 148, 135, 137, 152, 159, 150, 28.19300 + 146, 146, 129, 138, 144, 151, 153, 121, 61, 18, 40, 26, 17, 24, 35, 37, 28.19301 + 39, 41, 45, 33, 51, 77, 127, 140, 141, 143, 141, 147, 148, 143, 136, 133, 28.19302 + 129, 124, 133, 123, 136, 158, 159, 152, 153, 155, 150, 149, 148, 146, 143, 141, 28.19303 + 139, 138, 140, 137, 139, 144, 146, 141, 134, 131, 135, 118, 102, 62, 33, 45, 28.19304 + 39, 54, 53, 51, 50, 15, 21, 26, 26, 21, 16, 15, 16, 23, 16, 19, 28.19305 + 22, 18, 21, 24, 17, 15, 23, 21, 19, 25, 21, 14, 17, 25, 58, 100, 28.19306 + 127, 139, 142, 139, 134, 144, 149, 153, 151, 147, 146, 153, 160, 155, 159, 161, 28.19307 + 157, 154, 154, 163, 167, 148, 155, 162, 149, 119, 103, 93, 77, 38, 37, 28, 28.19308 + 20, 27, 37, 29, 11, 27, 23, 18, 18, 24, 30, 35, 36, 33, 37, 67, 28.19309 + 107, 134, 131, 130, 136, 135, 140, 147, 151, 152, 153, 157, 160, 159, 163, 165, 28.19310 + 163, 166, 171, 175, 176, 176, 178, 177, 176, 179, 182, 179, 173, 169, 170, 174, 28.19311 + 178, 180, 178, 173, 171, 183, 182, 180, 180, 180, 183, 183, 182, 182, 174, 174, 28.19312 + 174, 168, 169, 168, 162, 161, 124, 76, 18, 23, 37, 13, 29, 89, 136, 157, 28.19313 + 133, 128, 154, 162, 141, 152, 149, 144, 138, 142, 139, 90, 24, 10, 34, 36, 28.19314 + 25, 32, 41, 35, 28, 46, 28, 48, 50, 103, 142, 144, 138, 143, 146, 145, 28.19315 + 142, 139, 138, 133, 126, 133, 114, 125, 148, 152, 157, 161, 150, 154, 151, 147, 28.19316 + 146, 147, 147, 145, 142, 141, 138, 139, 143, 146, 141, 134, 131, 132, 126, 103, 28.19317 + 69, 15, 30, 22, 35, 38, 42, 46, 12, 17, 22, 23, 21, 18, 16, 16, 28.19318 + 20, 13, 17, 20, 16, 20, 23, 17, 19, 25, 17, 9, 18, 27, 28, 32, 28.19319 + 14, 18, 44, 83, 112, 121, 124, 128, 140, 144, 148, 147, 144, 144, 149, 155, 28.19320 + 152, 153, 155, 155, 156, 158, 165, 165, 170, 149, 141, 143, 147, 154, 151, 136, 28.19321 + 139, 108, 68, 38, 25, 23, 30, 38, 27, 29, 31, 30, 27, 24, 23, 22, 28.19322 + 49, 80, 109, 116, 117, 123, 131, 131, 136, 136, 139, 139, 141, 146, 156, 164, 28.19323 + 159, 161, 163, 163, 165, 168, 172, 174, 177, 179, 179, 175, 174, 175, 173, 169, 28.19324 + 171, 172, 173, 169, 163, 163, 175, 188, 178, 180, 181, 181, 182, 183, 181, 181, 28.19325 + 182, 174, 173, 173, 166, 167, 166, 161, 169, 151, 115, 56, 38, 40, 21, 29, 28.19326 + 39, 63, 107, 143, 145, 130, 132, 147, 140, 135, 141, 136, 137, 157, 151, 108, 28.19327 + 19, 37, 38, 32, 37, 34, 28, 29, 43, 34, 45, 40, 71, 143, 146, 143, 28.19328 + 148, 148, 145, 144, 145, 146, 140, 131, 129, 123, 128, 128, 129, 158, 170, 142, 28.19329 + 156, 150, 145, 144, 147, 148, 145, 140, 138, 135, 136, 141, 144, 140, 135, 132, 28.19330 + 122, 127, 107, 86, 14, 27, 16, 23, 24, 33, 40, 18, 17, 16, 18, 20, 28.19331 + 21, 18, 16, 17, 11, 15, 19, 16, 21, 25, 18, 7, 25, 23, 15, 20, 28.19332 + 22, 17, 17, 18, 26, 24, 23, 52, 101, 130, 130, 136, 138, 140, 140, 139, 28.19333 + 138, 140, 141, 150, 149, 148, 150, 156, 158, 157, 153, 157, 147, 152, 165, 170, 28.19334 + 172, 166, 151, 148, 131, 137, 148, 110, 41, 9, 20, 22, 25, 28, 26, 26, 28.19335 + 38, 58, 73, 102, 126, 138, 128, 116, 122, 133, 136, 129, 128, 130, 128, 128, 28.19336 + 131, 139, 148, 149, 152, 156, 160, 163, 164, 167, 170, 166, 172, 173, 167, 163, 28.19337 + 164, 167, 167, 166, 169, 176, 181, 176, 165, 161, 165, 171, 175, 180, 184, 184, 28.19338 + 182, 180, 179, 181, 174, 175, 175, 166, 167, 168, 159, 152, 156, 140, 80, 27, 28.19339 + 6, 10, 36, 26, 30, 64, 119, 153, 149, 137, 131, 143, 140, 154, 154, 143, 28.19340 + 148, 145, 122, 105, 63, 26, 27, 34, 26, 25, 42, 36, 43, 41, 44, 42, 28.19341 + 132, 146, 153, 150, 149, 146, 145, 147, 149, 143, 134, 133, 131, 132, 123, 121, 28.19342 + 146, 164, 151, 157, 152, 146, 145, 148, 148, 143, 138, 135, 132, 133, 139, 143, 28.19343 + 140, 136, 134, 117, 123, 107, 100, 24, 30, 27, 28, 26, 36, 40, 26, 21, 28.19344 + 17, 17, 20, 21, 19, 15, 19, 13, 17, 21, 17, 21, 25, 19, 5, 21, 28.19345 + 23, 14, 17, 18, 15, 19, 28, 34, 33, 29, 34, 55, 84, 103, 124, 127, 28.19346 + 133, 136, 138, 137, 137, 135, 149, 147, 145, 145, 149, 149, 147, 143, 137, 152, 28.19347 + 176, 176, 153, 144, 153, 158, 145, 144, 141, 134, 122, 96, 57, 26, 30, 40, 28.19348 + 54, 63, 77, 99, 130, 151, 141, 135, 133, 135, 134, 126, 127, 133, 128, 132, 28.19349 + 135, 137, 133, 129, 129, 132, 135, 139, 145, 153, 158, 159, 163, 168, 162, 167, 28.19350 + 169, 166, 164, 167, 169, 168, 165, 157, 160, 177, 187, 181, 166, 157, 166, 172, 28.19351 + 178, 182, 182, 180, 178, 178, 179, 172, 175, 177, 168, 168, 168, 159, 165, 166, 28.19352 + 158, 130, 90, 58, 41, 33, 23, 44, 50, 51, 85, 140, 163, 147, 127, 121, 28.19353 + 133, 144, 147, 152, 152, 143, 142, 119, 85, 40, 12, 26, 39, 30, 31, 46, 28.19354 + 37, 48, 31, 105, 148, 158, 150, 149, 146, 144, 145, 148, 143, 135, 140, 133, 28.19355 + 130, 136, 133, 125, 136, 160, 157, 154, 151, 151, 151, 149, 144, 140, 136, 132, 28.19356 + 133, 138, 143, 140, 136, 135, 130, 122, 104, 100, 27, 16, 23, 20, 16, 24, 28.19357 + 27, 23, 22, 20, 20, 20, 21, 20, 19, 23, 16, 19, 22, 18, 20, 23, 28.19358 + 14, 12, 19, 15, 8, 14, 18, 21, 33, 22, 18, 28, 41, 31, 11, 17, 28.19359 + 43, 90, 102, 117, 125, 129, 132, 136, 140, 145, 146, 146, 142, 139, 140, 146, 28.19360 + 151, 174, 166, 164, 164, 163, 172, 170, 152, 147, 162, 155, 137, 142, 147, 103, 28.19361 + 42, 80, 98, 125, 142, 147, 142, 136, 132, 141, 132, 128, 132, 136, 132, 128, 28.19362 + 127, 134, 138, 142, 143, 138, 134, 132, 134, 130, 131, 135, 141, 146, 147, 152, 28.19363 + 159, 160, 161, 162, 163, 167, 168, 161, 151, 151, 126, 106, 106, 119, 135, 156, 28.19364 + 176, 164, 168, 173, 175, 175, 175, 177, 179, 179, 173, 176, 179, 173, 172, 171, 28.19365 + 159, 153, 149, 141, 139, 134, 115, 78, 29, 44, 23, 17, 29, 36, 49, 97, 28.19366 + 147, 153, 154, 145, 139, 144, 144, 138, 138, 132, 144, 144, 81, 12, 27, 49, 28.19367 + 22, 29, 43, 39, 46, 41, 73, 157, 159, 151, 152, 149, 146, 146, 148, 144, 28.19368 + 137, 138, 142, 137, 143, 143, 110, 100, 137, 153, 153, 154, 155, 153, 150, 146, 28.19369 + 143, 141, 137, 137, 140, 143, 140, 135, 134, 140, 117, 104, 104, 40, 6, 18, 28.19370 + 5, 3, 13, 18, 10, 15, 19, 20, 18, 17, 20, 23, 24, 16, 18, 20, 28.19371 + 14, 15, 17, 10, 15, 16, 13, 11, 19, 14, 13, 20, 29, 37, 37, 28, 28.19372 + 27, 31, 30, 25, 49, 70, 93, 108, 113, 119, 131, 142, 140, 146, 148, 142, 28.19373 + 136, 138, 154, 168, 164, 162, 163, 159, 155, 164, 162, 142, 142, 135, 139, 146, 28.19374 + 142, 126, 128, 141, 146, 142, 137, 135, 136, 139, 139, 138, 127, 141, 145, 130, 28.19375 + 125, 138, 140, 131, 131, 133, 136, 134, 131, 133, 136, 141, 132, 129, 131, 134, 28.19376 + 137, 135, 141, 150, 158, 155, 152, 155, 163, 162, 145, 126, 78, 73, 73, 75, 28.19377 + 72, 75, 97, 123, 162, 167, 169, 169, 169, 171, 176, 180, 177, 172, 176, 181, 28.19378 + 175, 174, 172, 159, 155, 160, 154, 145, 139, 140, 129, 88, 56, 39, 36, 44, 28.19379 + 42, 33, 47, 73, 110, 133, 135, 130, 142, 144, 139, 145, 152, 120, 131, 117, 28.19380 + 44, 19, 40, 39, 34, 40, 44, 43, 57, 54, 166, 158, 154, 156, 153, 150, 28.19381 + 148, 149, 146, 141, 127, 155, 149, 139, 141, 105, 77, 101, 147, 150, 154, 155, 28.19382 + 153, 149, 146, 145, 146, 142, 140, 143, 144, 140, 135, 133, 135, 106, 105, 115, 28.19383 + 64, 16, 29, 9, 11, 20, 26, 17, 19, 19, 16, 16, 21, 23, 21, 20, 28.19384 + 20, 20, 19, 18, 17, 15, 15, 16, 17, 17, 15, 16, 16, 18, 23, 24, 28.19385 + 29, 30, 30, 32, 30, 24, 15, 33, 13, 62, 112, 99, 106, 137, 133, 137, 28.19386 + 148, 139, 128, 140, 159, 162, 157, 161, 156, 150, 151, 153, 151, 140, 132, 146, 28.19387 + 135, 127, 126, 127, 127, 137, 147, 136, 135, 132, 131, 130, 131, 132, 133, 137, 28.19388 + 135, 138, 137, 134, 130, 125, 122, 142, 136, 132, 133, 140, 146, 142, 138, 142, 28.19389 + 139, 137, 137, 140, 139, 139, 136, 138, 142, 135, 128, 141, 147, 108, 56, 64, 28.19390 + 74, 45, 53, 63, 75, 84, 93, 141, 163, 166, 157, 160, 166, 172, 178, 172, 28.19391 + 170, 170, 173, 178, 179, 173, 165, 163, 162, 157, 146, 142, 142, 141, 135, 115, 28.19392 + 87, 55, 37, 39, 43, 40, 31, 40, 97, 147, 148, 132, 130, 138, 140, 138, 28.19393 + 143, 152, 119, 105, 39, 12, 48, 44, 37, 44, 54, 38, 77, 157, 169, 149, 28.19394 + 161, 159, 147, 143, 152, 151, 140, 131, 142, 142, 141, 145, 130, 98, 78, 114, 28.19395 + 159, 158, 162, 157, 150, 154, 141, 145, 144, 140, 135, 137, 139, 133, 125, 123, 28.19396 + 111, 106, 111, 72, 21, 26, 40, 28, 38, 58, 18, 20, 19, 16, 16, 20, 28.19397 + 22, 20, 19, 19, 19, 19, 18, 17, 16, 15, 18, 16, 18, 16, 15, 17, 28.19398 + 20, 23, 21, 25, 29, 29, 31, 33, 32, 25, 34, 14, 35, 69, 85, 115, 28.19399 + 138, 117, 111, 104, 103, 127, 154, 158, 163, 181, 139, 137, 137, 141, 145, 145, 28.19400 + 142, 136, 136, 132, 132, 134, 133, 128, 127, 131, 134, 133, 134, 133, 134, 134, 28.19401 + 132, 132, 133, 132, 132, 131, 130, 126, 123, 121, 134, 129, 125, 129, 135, 140, 28.19402 + 138, 136, 142, 142, 141, 144, 147, 145, 143, 139, 138, 135, 130, 118, 111, 98, 28.19403 + 82, 63, 50, 65, 69, 55, 52, 60, 68, 75, 92, 127, 152, 161, 171, 172, 28.19404 + 167, 166, 178, 177, 176, 173, 171, 169, 168, 168, 161, 162, 161, 153, 150, 153, 28.19405 + 150, 147, 139, 140, 128, 94, 54, 31, 36, 45, 26, 42, 73, 112, 143, 154, 28.19406 + 143, 125, 157, 144, 141, 134, 146, 95, 21, 12, 34, 40, 42, 49, 52, 99, 28.19407 + 167, 171, 150, 157, 158, 152, 148, 152, 149, 140, 133, 139, 137, 137, 140, 127, 28.19408 + 96, 74, 33, 108, 138, 144, 142, 145, 161, 154, 141, 142, 141, 137, 140, 141, 28.19409 + 134, 125, 135, 115, 101, 107, 81, 41, 38, 35, 51, 56, 64, 21, 24, 23, 28.19410 + 19, 18, 22, 22, 20, 20, 20, 21, 21, 21, 20, 19, 19, 20, 18, 19, 28.19411 + 18, 17, 20, 24, 28, 22, 25, 27, 27, 31, 35, 35, 30, 34, 30, 27, 28.19412 + 21, 26, 52, 65, 47, 31, 60, 106, 155, 174, 149, 127, 129, 135, 138, 142, 28.19413 + 147, 150, 150, 151, 149, 135, 133, 136, 138, 136, 130, 123, 123, 126, 127, 131, 28.19414 + 134, 134, 131, 126, 124, 125, 125, 125, 123, 122, 119, 118, 119, 123, 124, 122, 28.19415 + 124, 128, 132, 132, 134, 138, 142, 146, 151, 155, 154, 151, 147, 143, 134, 134, 28.19416 + 129, 109, 74, 56, 53, 50, 50, 26, 40, 41, 60, 51, 91, 106, 136, 155, 28.19417 + 163, 176, 180, 178, 180, 179, 180, 179, 175, 170, 170, 174, 179, 165, 165, 167, 28.19418 + 163, 161, 163, 160, 155, 148, 153, 152, 137, 116, 100, 98, 103, 87, 59, 44, 28.19419 + 64, 92, 110, 131, 149, 137, 134, 130, 136, 143, 118, 43, 24, 29, 46, 40, 28.19420 + 51, 83, 132, 178, 173, 153, 153, 153, 155, 154, 151, 145, 141, 138, 137, 136, 28.19421 + 136, 136, 125, 99, 77, 44, 61, 84, 130, 162, 149, 156, 165, 140, 142, 142, 28.19422 + 139, 141, 141, 135, 126, 122, 108, 97, 102, 86, 59, 60, 51, 64, 61, 55, 28.19423 + 22, 25, 24, 20, 19, 21, 21, 17, 19, 19, 20, 21, 21, 21, 20, 20, 28.19424 + 20, 20, 20, 18, 18, 21, 27, 31, 26, 28, 28, 26, 28, 32, 31, 27, 28.19425 + 27, 38, 33, 17, 19, 34, 36, 32, 30, 96, 144, 148, 143, 139, 133, 132, 28.19426 + 145, 150, 156, 157, 155, 151, 149, 147, 140, 136, 135, 132, 132, 130, 130, 130, 28.19427 + 122, 125, 128, 131, 130, 128, 124, 122, 126, 123, 123, 122, 120, 120, 121, 121, 28.19428 + 119, 120, 123, 123, 125, 126, 127, 131, 133, 138, 146, 153, 159, 160, 160, 158, 28.19429 + 154, 140, 135, 138, 129, 102, 79, 70, 53, 71, 58, 31, 46, 50, 88, 77, 28.19430 + 125, 144, 150, 149, 159, 166, 171, 181, 184, 185, 184, 180, 176, 174, 178, 182, 28.19431 + 172, 174, 175, 174, 171, 168, 164, 161, 168, 161, 156, 156, 159, 156, 148, 136, 28.19432 + 138, 118, 103, 100, 93, 87, 101, 125, 135, 147, 144, 145, 131, 118, 50, 33, 28.19433 + 32, 48, 38, 68, 127, 164, 181, 174, 158, 149, 147, 154, 154, 147, 141, 141, 28.19434 + 140, 137, 140, 142, 135, 126, 111, 93, 80, 44, 40, 85, 144, 136, 138, 150, 28.19435 + 142, 144, 143, 139, 139, 139, 135, 128, 123, 121, 113, 105, 74, 46, 50, 43, 28.19436 + 51, 54, 52, 22, 25, 24, 20, 19, 21, 20, 16, 19, 19, 20, 21, 21, 28.19437 + 21, 20, 20, 20, 21, 23, 20, 21, 24, 29, 33, 30, 31, 30, 27, 28, 28.19438 + 32, 29, 25, 33, 37, 30, 30, 47, 47, 36, 34, 60, 124, 153, 128, 120, 28.19439 + 139, 150, 148, 141, 148, 154, 153, 147, 137, 132, 128, 134, 132, 130, 126, 127, 28.19440 + 129, 132, 132, 128, 127, 128, 129, 129, 129, 128, 128, 130, 127, 126, 126, 126, 28.19441 + 127, 128, 129, 123, 123, 127, 125, 125, 125, 127, 130, 133, 138, 144, 148, 151, 28.19442 + 153, 156, 156, 155, 146, 134, 130, 133, 136, 129, 119, 88, 86, 23, 99, 36, 28.19443 + 50, 92, 111, 117, 136, 147, 151, 160, 162, 164, 171, 191, 189, 188, 186, 184, 28.19444 + 181, 177, 175, 179, 180, 182, 184, 183, 179, 175, 173, 169, 169, 167, 163, 158, 28.19445 + 155, 157, 157, 157, 151, 146, 142, 134, 122, 108, 101, 112, 117, 117, 128, 130, 28.19446 + 131, 58, 21, 35, 46, 42, 95, 165, 181, 179, 176, 163, 149, 142, 149, 151, 28.19447 + 144, 139, 141, 137, 133, 144, 148, 134, 127, 123, 111, 69, 61, 60, 50, 99, 28.19448 + 122, 143, 145, 145, 147, 144, 137, 135, 136, 133, 128, 114, 115, 109, 101, 72, 28.19449 + 48, 52, 43, 45, 49, 49, 21, 24, 24, 21, 20, 21, 20, 16, 20, 20, 28.19450 + 21, 21, 21, 20, 19, 20, 22, 23, 24, 25, 25, 25, 28, 31, 31, 32, 28.19451 + 31, 30, 32, 37, 34, 30, 29, 32, 33, 38, 41, 32, 29, 43, 84, 121, 28.19452 + 141, 141, 145, 146, 137, 130, 141, 145, 149, 147, 141, 132, 127, 123, 123, 125, 28.19453 + 128, 127, 129, 131, 131, 126, 127, 124, 123, 123, 123, 124, 126, 127, 125, 125, 28.19454 + 125, 125, 126, 127, 128, 129, 127, 128, 129, 128, 128, 128, 129, 130, 133, 138, 28.19455 + 143, 146, 147, 147, 149, 150, 143, 152, 151, 139, 135, 143, 143, 134, 141, 129, 28.19456 + 152, 239, 63, 43, 105, 104, 132, 146, 153, 157, 166, 167, 169, 178, 181, 182, 28.19457 + 185, 188, 190, 189, 185, 182, 185, 185, 190, 193, 194, 191, 189, 188, 174, 174, 28.19458 + 170, 165, 161, 161, 165, 170, 163, 164, 158, 146, 143, 147, 142, 134, 131, 122, 28.19459 + 122, 128, 134, 139, 84, 47, 41, 55, 64, 126, 183, 180, 176, 178, 168, 153, 28.19460 + 142, 145, 148, 144, 139, 137, 135, 126, 141, 150, 134, 129, 133, 121, 75, 62, 28.19461 + 75, 59, 105, 115, 132, 141, 142, 145, 144, 137, 135, 135, 132, 128, 116, 108, 28.19462 + 97, 97, 78, 54, 52, 36, 24, 26, 27, 21, 24, 25, 22, 22, 23, 22, 28.19463 + 18, 22, 22, 22, 22, 21, 20, 19, 18, 23, 26, 28, 29, 29, 28, 29, 28.19464 + 29, 29, 32, 31, 30, 33, 37, 34, 30, 15, 25, 38, 44, 42, 49, 79, 28.19465 + 108, 136, 143, 143, 145, 155, 154, 147, 149, 143, 142, 141, 139, 137, 132, 130, 28.19466 + 129, 121, 125, 129, 127, 130, 133, 133, 126, 122, 121, 121, 121, 120, 121, 122, 28.19467 + 122, 121, 121, 122, 123, 126, 127, 128, 126, 129, 130, 130, 131, 133, 134, 134, 28.19468 + 133, 135, 142, 150, 154, 154, 152, 153, 153, 143, 155, 160, 151, 143, 142, 136, 28.19469 + 127, 130, 157, 121, 44, 139, 131, 143, 139, 143, 150, 146, 146, 157, 162, 170, 28.19470 + 184, 178, 184, 191, 193, 194, 192, 193, 194, 190, 188, 193, 197, 198, 192, 191, 28.19471 + 194, 200, 189, 176, 172, 172, 172, 165, 158, 154, 167, 173, 167, 156, 154, 153, 28.19472 + 151, 152, 134, 135, 113, 104, 88, 51, 23, 57, 86, 109, 157, 182, 170, 174, 28.19473 + 177, 169, 158, 146, 146, 149, 149, 140, 131, 140, 122, 137, 151, 138, 136, 140, 28.19474 + 122, 86, 42, 62, 72, 133, 116, 109, 120, 133, 139, 143, 139, 137, 136, 132, 28.19475 + 127, 134, 122, 107, 103, 72, 34, 25, 9, 9, 10, 18, 19, 23, 25, 22, 28.19476 + 22, 24, 22, 18, 23, 23, 23, 22, 21, 20, 18, 18, 21, 26, 27, 29, 28.19477 + 29, 28, 27, 28, 27, 30, 28, 27, 29, 32, 28, 24, 41, 32, 30, 34, 28.19478 + 48, 81, 116, 130, 129, 143, 143, 139, 145, 150, 149, 154, 139, 135, 130, 125, 28.19479 + 124, 124, 125, 125, 130, 132, 132, 127, 129, 135, 139, 133, 124, 122, 125, 126, 28.19480 + 125, 125, 123, 123, 126, 127, 128, 130, 133, 134, 134, 132, 131, 130, 130, 134, 28.19481 + 138, 138, 138, 136, 134, 144, 156, 164, 166, 163, 164, 163, 162, 157, 148, 144, 28.19482 + 146, 148, 147, 142, 148, 109, 137, 147, 127, 149, 131, 140, 139, 149, 151, 157, 28.19483 + 172, 177, 184, 197, 194, 201, 207, 202, 193, 186, 188, 193, 192, 189, 190, 195, 28.19484 + 193, 187, 186, 190, 181, 179, 177, 178, 181, 183, 180, 180, 181, 176, 169, 165, 28.19485 + 163, 163, 164, 166, 168, 148, 165, 149, 152, 124, 85, 45, 75, 116, 147, 175, 28.19486 + 175, 161, 171, 174, 170, 161, 152, 149, 154, 155, 143, 129, 147, 122, 134, 152, 28.19487 + 143, 144, 145, 119, 81, 56, 87, 86, 151, 146, 132, 123, 123, 132, 140, 142, 28.19488 + 139, 139, 135, 128, 106, 106, 105, 105, 68, 24, 29, 30, 41, 38, 43, 20, 28.19489 + 20, 22, 21, 21, 20, 20, 19, 19, 21, 23, 22, 19, 18, 18, 18, 19, 28.19490 + 22, 24, 26, 24, 24, 25, 27, 25, 31, 33, 28, 24, 25, 24, 23, 26, 28.19491 + 38, 27, 46, 76, 122, 125, 127, 138, 147, 137, 148, 130, 117, 90, 104, 106, 28.19492 + 115, 118, 119, 122, 130, 136, 137, 127, 129, 133, 134, 136, 135, 137, 137, 123, 28.19493 + 120, 122, 122, 123, 125, 127, 128, 123, 129, 132, 131, 131, 133, 134, 134, 140, 28.19494 + 143, 144, 142, 140, 139, 141, 144, 147, 158, 160, 160, 165, 162, 160, 165, 167, 28.19495 + 162, 154, 150, 146, 142, 139, 137, 136, 135, 135, 137, 141, 142, 141, 138, 149, 28.19496 + 154, 156, 152, 149, 152, 165, 177, 197, 205, 203, 188, 181, 186, 188, 182, 174, 28.19497 + 177, 183, 187, 183, 178, 181, 188, 184, 182, 179, 178, 176, 175, 175, 176, 175, 28.19498 + 185, 187, 178, 176, 184, 187, 183, 173, 168, 171, 171, 160, 148, 126, 97, 120, 28.19499 + 142, 164, 174, 176, 175, 172, 167, 180, 164, 152, 154, 162, 158, 145, 134, 142, 28.19500 + 149, 137, 124, 142, 170, 157, 116, 98, 40, 75, 118, 144, 139, 156, 163, 130, 28.19501 + 116, 129, 143, 137, 135, 135, 122, 118, 108, 106, 107, 50, 51, 46, 38, 49, 28.19502 + 62, 64, 19, 19, 19, 19, 22, 22, 22, 22, 18, 20, 22, 21, 19, 18, 28.19503 + 19, 19, 19, 22, 24, 25, 22, 22, 23, 24, 26, 31, 30, 25, 22, 22, 28.19504 + 21, 21, 46, 42, 45, 90, 103, 118, 117, 130, 118, 140, 151, 108, 77, 47, 28.19505 + 23, 42, 48, 71, 100, 119, 131, 136, 133, 128, 135, 136, 138, 137, 136, 133, 28.19506 + 133, 133, 126, 124, 124, 125, 126, 128, 129, 130, 129, 134, 136, 134, 132, 134, 28.19507 + 134, 134, 142, 145, 147, 147, 147, 145, 148, 148, 146, 154, 156, 156, 162, 159, 28.19508 + 155, 163, 158, 156, 154, 150, 147, 143, 137, 134, 134, 133, 134, 139, 145, 148, 28.19509 + 150, 149, 151, 152, 153, 156, 156, 156, 156, 159, 171, 187, 194, 189, 186, 186, 28.19510 + 184, 175, 177, 175, 178, 184, 186, 182, 180, 181, 182, 181, 181, 180, 181, 181, 28.19511 + 181, 181, 178, 187, 189, 181, 178, 184, 184, 179, 194, 186, 184, 181, 173, 173, 28.19512 + 166, 149, 148, 162, 173, 174, 172, 172, 172, 169, 178, 169, 164, 168, 170, 163, 28.19513 + 149, 138, 131, 143, 150, 148, 146, 146, 133, 118, 96, 50, 91, 128, 150, 143, 28.19514 + 154, 155, 169, 133, 122, 132, 140, 147, 142, 120, 114, 103, 103, 105, 53, 45, 28.19515 + 43, 43, 70, 79, 80, 18, 20, 21, 22, 22, 23, 24, 24, 19, 20, 23, 28.19516 + 23, 21, 21, 22, 23, 19, 22, 24, 24, 23, 23, 23, 25, 27, 29, 28, 28.19517 + 24, 23, 23, 24, 26, 47, 39, 61, 116, 118, 126, 127, 136, 139, 147, 129, 28.19518 + 38, 29, 27, 49, 94, 90, 109, 129, 136, 138, 136, 133, 129, 134, 135, 135, 28.19519 + 134, 130, 127, 127, 125, 129, 127, 128, 128, 130, 131, 133, 134, 132, 137, 139, 28.19520 + 136, 135, 137, 138, 138, 138, 143, 147, 148, 148, 146, 148, 148, 143, 154, 152, 28.19521 + 153, 158, 155, 151, 158, 152, 152, 152, 151, 150, 145, 138, 134, 134, 133, 135, 28.19522 + 138, 146, 152, 157, 159, 160, 155, 152, 155, 160, 163, 159, 155, 157, 173, 185, 28.19523 + 185, 183, 182, 180, 170, 177, 168, 170, 179, 188, 188, 182, 177, 179, 179, 181, 28.19524 + 182, 182, 182, 183, 183, 181, 189, 191, 185, 182, 185, 183, 177, 188, 181, 179, 28.19525 + 174, 168, 175, 180, 171, 168, 175, 180, 178, 174, 172, 170, 168, 172, 169, 170, 28.19526 + 175, 174, 163, 149, 140, 132, 138, 152, 163, 153, 134, 123, 126, 89, 70, 119, 28.19527 + 138, 145, 136, 153, 161, 171, 135, 115, 120, 132, 142, 135, 114, 114, 103, 103, 28.19528 + 99, 49, 35, 37, 42, 53, 61, 61, 20, 22, 22, 22, 22, 23, 23, 23, 28.19529 + 21, 22, 25, 25, 24, 24, 27, 28, 19, 20, 22, 25, 25, 24, 26, 27, 28.19530 + 22, 22, 21, 23, 25, 29, 31, 33, 45, 48, 75, 119, 112, 137, 143, 132, 28.19531 + 139, 138, 83, 23, 33, 31, 53, 77, 114, 126, 135, 133, 131, 134, 139, 143, 28.19532 + 128, 129, 130, 130, 129, 127, 128, 128, 129, 129, 130, 130, 132, 133, 135, 136, 28.19533 + 133, 138, 140, 137, 136, 139, 141, 139, 135, 141, 144, 148, 146, 145, 143, 145, 28.19534 + 145, 155, 152, 152, 156, 152, 150, 156, 153, 155, 155, 154, 152, 147, 142, 136, 28.19535 + 133, 132, 132, 137, 142, 151, 158, 162, 165, 157, 150, 148, 153, 159, 162, 161, 28.19536 + 163, 171, 176, 173, 173, 175, 176, 173, 171, 164, 164, 173, 183, 185, 183, 180, 28.19537 + 177, 178, 181, 181, 182, 182, 182, 182, 184, 190, 193, 190, 189, 190, 186, 180, 28.19538 + 189, 186, 189, 186, 178, 182, 187, 180, 168, 174, 181, 184, 183, 180, 176, 172, 28.19539 + 171, 167, 169, 176, 177, 167, 154, 144, 147, 139, 141, 155, 157, 146, 135, 135, 28.19540 + 98, 85, 124, 130, 142, 141, 152, 152, 131, 118, 115, 120, 126, 127, 121, 110, 28.19541 + 110, 108, 102, 75, 29, 20, 24, 25, 38, 50, 54, 22, 24, 23, 22, 21, 28.19542 + 20, 20, 19, 20, 21, 22, 22, 21, 23, 25, 26, 16, 17, 20, 23, 23, 28.19543 + 24, 28, 29, 24, 21, 20, 24, 29, 31, 33, 37, 53, 57, 84, 126, 117, 28.19544 + 141, 144, 128, 128, 117, 28, 28, 36, 27, 45, 52, 102, 115, 129, 131, 131, 28.19545 + 131, 131, 129, 129, 130, 133, 134, 133, 132, 135, 137, 130, 130, 130, 131, 132, 28.19546 + 134, 135, 136, 137, 141, 142, 137, 135, 138, 139, 137, 136, 141, 144, 147, 144, 28.19547 + 143, 141, 141, 145, 154, 150, 148, 151, 147, 145, 153, 157, 157, 155, 151, 149, 28.19548 + 144, 141, 136, 131, 130, 129, 132, 134, 142, 148, 155, 159, 155, 150, 145, 145, 28.19549 + 150, 153, 157, 165, 168, 166, 164, 165, 168, 171, 172, 171, 165, 163, 167, 173, 28.19550 + 175, 176, 180, 177, 177, 177, 177, 179, 179, 180, 180, 182, 187, 190, 192, 193, 28.19551 + 193, 189, 184, 189, 188, 193, 190, 180, 183, 187, 180, 169, 170, 175, 181, 185, 28.19552 + 185, 182, 181, 175, 166, 163, 170, 176, 172, 161, 151, 151, 146, 143, 147, 153, 28.19553 + 154, 144, 134, 111, 94, 118, 120, 149, 152, 142, 125, 109, 114, 120, 123, 128, 28.19554 + 125, 117, 114, 104, 107, 94, 45, 13, 13, 24, 14, 33, 50, 59, 25, 24, 28.19555 + 23, 22, 20, 19, 17, 17, 18, 19, 19, 18, 18, 19, 22, 21, 15, 16, 28.19556 + 20, 22, 23, 23, 27, 28, 28, 22, 22, 28, 32, 31, 32, 35, 45, 47, 28.19557 + 74, 128, 127, 137, 135, 138, 136, 95, 2, 25, 27, 36, 74, 99, 116, 126, 28.19558 + 134, 135, 134, 131, 127, 122, 132, 133, 135, 133, 131, 131, 133, 133, 131, 131, 28.19559 + 131, 132, 133, 135, 136, 137, 142, 145, 144, 138, 134, 135, 136, 134, 140, 142, 28.19560 + 144, 146, 143, 142, 140, 142, 141, 148, 145, 143, 146, 145, 141, 149, 158, 159, 28.19561 + 154, 151, 147, 142, 139, 135, 132, 131, 130, 128, 129, 131, 136, 143, 149, 154, 28.19562 + 156, 154, 150, 148, 149, 153, 155, 156, 159, 160, 162, 163, 163, 165, 171, 169, 28.19563 + 167, 167, 168, 166, 169, 175, 176, 175, 174, 173, 176, 177, 179, 180, 179, 181, 28.19564 + 185, 189, 192, 192, 189, 185, 184, 180, 182, 178, 170, 176, 183, 177, 171, 165, 28.19565 + 161, 166, 171, 174, 176, 179, 172, 161, 154, 159, 167, 166, 159, 151, 141, 152, 28.19566 + 156, 152, 147, 147, 138, 127, 98, 105, 140, 132, 143, 131, 123, 120, 122, 126, 28.19567 + 121, 119, 130, 128, 119, 113, 106, 106, 87, 35, 22, 24, 35, 23, 30, 48, 28.19568 + 59, 22, 23, 22, 21, 20, 19, 17, 17, 19, 20, 20, 18, 15, 17, 20, 28.19569 + 21, 18, 16, 20, 20, 21, 21, 23, 24, 29, 24, 23, 30, 37, 35, 34, 28.19570 + 36, 39, 60, 79, 117, 119, 134, 132, 144, 130, 63, 29, 44, 53, 67, 84, 28.19571 + 103, 116, 118, 120, 120, 126, 133, 138, 135, 132, 131, 132, 129, 128, 126, 128, 28.19572 + 129, 132, 132, 133, 133, 134, 136, 138, 139, 141, 145, 144, 138, 136, 138, 139, 28.19573 + 138, 138, 140, 141, 142, 139, 140, 140, 142, 135, 144, 141, 140, 145, 145, 143, 28.19574 + 154, 158, 161, 158, 156, 153, 147, 142, 137, 133, 131, 130, 126, 125, 125, 128, 28.19575 + 134, 140, 143, 147, 148, 148, 150, 153, 156, 150, 151, 154, 156, 158, 158, 160, 28.19576 + 161, 169, 166, 168, 170, 170, 166, 168, 172, 173, 171, 171, 170, 172, 175, 180, 28.19577 + 182, 179, 178, 180, 186, 190, 190, 187, 184, 187, 183, 185, 183, 177, 183, 188, 28.19578 + 180, 171, 161, 156, 160, 165, 166, 167, 169, 171, 162, 156, 158, 161, 159, 155, 28.19579 + 152, 145, 153, 157, 154, 145, 140, 131, 124, 92, 112, 152, 135, 133, 114, 118, 28.19580 + 136, 135, 143, 130, 119, 128, 125, 112, 114, 111, 96, 73, 36, 41, 33, 39, 28.19581 + 34, 40, 55, 65, 20, 20, 20, 20, 20, 19, 18, 18, 23, 24, 23, 19, 28.19582 + 18, 19, 23, 24, 19, 18, 21, 20, 19, 18, 20, 22, 27, 21, 22, 33, 28.19583 + 41, 40, 37, 39, 56, 98, 104, 103, 100, 131, 133, 138, 128, 35, 55, 56, 28.19584 + 91, 124, 123, 135, 129, 130, 132, 132, 136, 138, 134, 127, 132, 132, 132, 132, 28.19585 + 129, 130, 131, 133, 134, 134, 134, 135, 136, 138, 139, 140, 136, 140, 141, 138, 28.19586 + 138, 143, 146, 145, 134, 133, 137, 136, 136, 136, 139, 141, 134, 141, 141, 140, 28.19587 + 148, 148, 149, 159, 159, 162, 164, 164, 161, 155, 146, 138, 132, 133, 132, 127, 28.19588 + 125, 124, 126, 131, 127, 128, 127, 129, 136, 145, 155, 160, 160, 154, 149, 148, 28.19589 + 151, 153, 157, 162, 162, 162, 166, 173, 176, 174, 173, 173, 172, 170, 169, 168, 28.19590 + 171, 177, 183, 187, 183, 181, 182, 187, 191, 191, 188, 186, 181, 179, 185, 187, 28.19591 + 181, 184, 182, 169, 172, 164, 162, 171, 176, 172, 167, 165, 176, 171, 168, 168, 28.19592 + 165, 160, 159, 159, 159, 151, 145, 148, 148, 143, 132, 126, 113, 110, 128, 115, 28.19593 + 135, 129, 128, 139, 136, 155, 148, 129, 127, 118, 109, 117, 108, 79, 57, 31, 28.19594 + 47, 24, 26, 31, 43, 54, 59, 18, 24, 25, 23, 21, 23, 22, 18, 22, 28.19595 + 18, 14, 16, 21, 23, 22, 18, 23, 16, 15, 16, 22, 22, 20, 17, 31, 28.19596 + 29, 42, 37, 34, 38, 35, 47, 82, 111, 107, 105, 107, 109, 125, 131, 121, 28.19597 + 54, 67, 99, 105, 116, 117, 127, 126, 128, 133, 137, 139, 138, 136, 132, 134, 28.19598 + 132, 133, 132, 134, 135, 135, 135, 140, 142, 143, 142, 140, 139, 140, 141, 145, 28.19599 + 142, 140, 139, 140, 140, 139, 136, 144, 139, 135, 131, 130, 129, 130, 132, 137, 28.19600 + 140, 144, 143, 142, 143, 148, 157, 161, 167, 164, 162, 137, 154, 140, 135, 130, 28.19601 + 133, 134, 131, 130, 133, 141, 144, 140, 142, 135, 130, 134, 134, 138, 151, 152, 28.19602 + 156, 157, 153, 147, 145, 150, 159, 163, 173, 176, 170, 165, 168, 173, 173, 168, 28.19603 + 170, 171, 170, 171, 173, 176, 180, 181, 182, 185, 188, 191, 191, 188, 185, 189, 28.19604 + 186, 183, 180, 176, 174, 175, 179, 168, 162, 165, 179, 185, 179, 176, 180, 164, 28.19605 + 168, 172, 173, 170, 167, 166, 164, 159, 147, 149, 156, 146, 139, 133, 125, 118, 28.19606 + 105, 129, 128, 129, 143, 138, 146, 154, 156, 147, 131, 121, 119, 116, 108, 97, 28.19607 + 70, 50, 29, 29, 31, 19, 35, 38, 53, 61, 20, 24, 25, 23, 23, 23, 28.19608 + 22, 18, 22, 22, 20, 19, 18, 20, 24, 24, 24, 22, 19, 18, 18, 20, 28.19609 + 22, 22, 36, 32, 43, 35, 35, 41, 37, 47, 98, 122, 113, 109, 112, 110, 28.19610 + 123, 122, 119, 74, 90, 104, 105, 123, 128, 129, 129, 129, 133, 137, 137, 136, 28.19611 + 132, 130, 132, 132, 131, 133, 134, 135, 135, 135, 136, 137, 139, 139, 138, 138, 28.19612 + 140, 142, 142, 140, 138, 138, 139, 139, 138, 136, 143, 139, 135, 132, 131, 130, 28.19613 + 131, 134, 139, 138, 140, 142, 145, 148, 149, 153, 152, 159, 152, 155, 139, 150, 28.19614 + 132, 131, 135, 125, 125, 133, 136, 144, 143, 130, 130, 138, 141, 142, 146, 138, 28.19615 + 128, 131, 143, 147, 151, 150, 147, 146, 148, 152, 162, 173, 177, 172, 169, 171, 28.19616 + 175, 174, 173, 173, 172, 171, 172, 172, 174, 176, 177, 181, 187, 193, 196, 197, 28.19617 + 196, 196, 182, 183, 184, 183, 180, 175, 172, 171, 170, 163, 166, 180, 185, 176, 28.19618 + 166, 163, 174, 176, 177, 173, 167, 161, 158, 155, 156, 149, 154, 159, 146, 137, 28.19619 + 134, 129, 110, 105, 133, 136, 138, 149, 145, 152, 148, 150, 144, 129, 121, 121, 28.19620 + 116, 108, 95, 58, 40, 27, 25, 28, 20, 30, 41, 55, 60, 20, 26, 27, 28.19621 + 22, 22, 25, 22, 19, 23, 25, 25, 22, 17, 18, 22, 28, 21, 22, 21, 28.19622 + 21, 18, 20, 27, 31, 32, 27, 36, 30, 31, 40, 36, 48, 111, 131, 117, 28.19623 + 112, 118, 115, 123, 116, 109, 90, 106, 106, 103, 125, 134, 126, 132, 132, 133, 28.19624 + 135, 135, 134, 130, 129, 132, 133, 134, 135, 134, 135, 136, 137, 134, 136, 138, 28.19625 + 138, 139, 140, 143, 146, 141, 139, 138, 138, 140, 140, 139, 137, 140, 137, 136, 28.19626 + 134, 133, 132, 135, 135, 140, 137, 138, 142, 148, 151, 151, 149, 146, 157, 144, 28.19627 + 147, 143, 142, 126, 125, 127, 119, 131, 134, 123, 133, 151, 149, 142, 148, 145, 28.19628 + 143, 149, 145, 137, 139, 134, 137, 142, 147, 149, 148, 146, 148, 162, 170, 174, 28.19629 + 173, 172, 173, 174, 173, 177, 174, 173, 172, 172, 172, 172, 171, 171, 177, 184, 28.19630 + 187, 185, 182, 181, 181, 181, 181, 180, 178, 174, 171, 168, 165, 169, 163, 167, 28.19631 + 182, 190, 185, 176, 172, 170, 171, 171, 168, 164, 161, 159, 157, 156, 153, 160, 28.19632 + 162, 145, 135, 131, 126, 101, 110, 138, 143, 145, 151, 148, 155, 145, 148, 141, 28.19633 + 127, 119, 120, 113, 102, 91, 41, 34, 32, 24, 28, 25, 31, 54, 65, 64, 28.19634 + 22, 26, 26, 24, 22, 25, 23, 20, 23, 23, 25, 23, 21, 19, 21, 23, 28.19635 + 17, 18, 20, 21, 25, 29, 33, 38, 29, 24, 36, 30, 30, 40, 38, 54, 28.19636 + 112, 130, 115, 115, 125, 127, 130, 120, 107, 100, 108, 110, 108, 127, 137, 127, 28.19637 + 132, 131, 131, 132, 132, 132, 130, 130, 135, 133, 134, 135, 136, 136, 138, 137, 28.19638 + 139, 141, 143, 143, 143, 145, 147, 150, 140, 139, 139, 140, 142, 142, 141, 139, 28.19639 + 136, 135, 134, 133, 133, 133, 136, 136, 141, 142, 142, 146, 148, 149, 148, 145, 28.19640 + 146, 159, 145, 144, 145, 132, 124, 123, 130, 122, 139, 145, 125, 126, 139, 135, 28.19641 + 149, 152, 148, 143, 153, 153, 149, 151, 137, 137, 140, 145, 150, 151, 148, 146, 28.19642 + 160, 166, 171, 173, 174, 173, 173, 173, 179, 176, 174, 172, 173, 174, 172, 171, 28.19643 + 182, 189, 196, 197, 192, 186, 185, 186, 190, 186, 178, 169, 165, 166, 166, 164, 28.19644 + 154, 154, 160, 173, 181, 179, 176, 176, 164, 164, 164, 162, 161, 160, 159, 157, 28.19645 + 160, 155, 159, 160, 144, 135, 127, 117, 98, 119, 140, 144, 147, 146, 145, 153, 28.19646 + 148, 147, 139, 124, 116, 114, 107, 95, 85, 31, 34, 38, 24, 30, 35, 38, 28.19647 + 41, 51, 49, 22, 27, 26, 23, 21, 25, 24, 21, 22, 20, 22, 23, 25, 28.19648 + 22, 18, 14, 20, 18, 19, 25, 34, 37, 35, 31, 30, 29, 41, 32, 28, 28.19649 + 36, 36, 57, 109, 131, 119, 122, 134, 137, 139, 129, 122, 111, 107, 119, 123, 28.19650 + 127, 132, 128, 129, 128, 128, 129, 130, 132, 133, 131, 135, 136, 136, 138, 139, 28.19651 + 138, 141, 139, 144, 146, 148, 148, 147, 146, 147, 148, 138, 137, 137, 138, 140, 28.19652 + 140, 138, 136, 134, 134, 134, 134, 136, 137, 140, 141, 144, 147, 151, 152, 149, 28.19653 + 146, 147, 146, 142, 154, 143, 141, 141, 126, 130, 115, 79, 70, 91, 124, 143, 28.19654 + 151, 149, 131, 137, 149, 153, 152, 161, 159, 148, 145, 146, 143, 141, 143, 148, 28.19655 + 150, 147, 146, 157, 161, 166, 170, 171, 170, 171, 172, 178, 176, 173, 172, 174, 28.19656 + 175, 175, 175, 177, 184, 193, 195, 192, 189, 189, 191, 192, 189, 179, 168, 164, 28.19657 + 166, 164, 158, 157, 164, 178, 189, 190, 184, 179, 179, 170, 168, 166, 163, 160, 28.19658 + 158, 155, 152, 159, 151, 151, 152, 143, 138, 128, 112, 98, 128, 140, 142, 149, 28.19659 + 144, 147, 155, 146, 144, 134, 121, 112, 111, 102, 88, 69, 27, 38, 41, 23, 28.19660 + 28, 38, 48, 58, 71, 70, 23, 27, 25, 22, 23, 25, 24, 21, 23, 19, 28.19661 + 18, 21, 23, 22, 15, 10, 26, 25, 25, 28, 34, 35, 29, 22, 30, 27, 28.19662 + 38, 29, 23, 29, 26, 43, 108, 136, 128, 133, 141, 140, 143, 134, 133, 120, 28.19663 + 104, 122, 131, 122, 126, 125, 127, 126, 128, 129, 131, 133, 134, 135, 135, 136, 28.19664 + 137, 138, 139, 140, 141, 142, 145, 146, 149, 149, 147, 144, 143, 142, 134, 134, 28.19665 + 134, 135, 137, 136, 134, 131, 132, 133, 134, 136, 139, 141, 144, 145, 147, 152, 28.19666 + 156, 154, 148, 145, 148, 149, 136, 145, 138, 135, 137, 127, 140, 95, 12, 17, 28.19667 + 34, 66, 101, 121, 136, 149, 143, 156, 155, 148, 153, 155, 150, 151, 150, 145, 28.19668 + 141, 140, 143, 145, 143, 145, 156, 157, 160, 167, 169, 168, 170, 172, 175, 176, 28.19669 + 176, 174, 174, 174, 177, 179, 175, 179, 184, 184, 181, 178, 177, 178, 185, 187, 28.19670 + 184, 176, 172, 172, 162, 150, 155, 168, 186, 200, 204, 198, 190, 186, 168, 167, 28.19671 + 165, 165, 165, 164, 161, 156, 154, 145, 143, 145, 140, 141, 132, 113, 97, 135, 28.19672 + 139, 141, 153, 146, 151, 155, 138, 138, 131, 118, 109, 105, 91, 75, 50, 26, 28.19673 + 39, 36, 22, 30, 40, 52, 61, 71, 71, 23, 27, 27, 22, 23, 25, 25, 28.19674 + 22, 24, 22, 20, 20, 19, 18, 15, 14, 30, 30, 31, 30, 31, 30, 26, 28.19675 + 22, 27, 19, 27, 21, 23, 30, 22, 31, 102, 136, 136, 138, 142, 137, 140, 28.19676 + 134, 131, 127, 106, 121, 132, 121, 131, 129, 128, 129, 131, 133, 134, 135, 135, 28.19677 + 135, 138, 138, 139, 140, 141, 143, 144, 142, 141, 144, 148, 150, 148, 144, 141, 28.19678 + 139, 136, 135, 135, 137, 137, 136, 133, 130, 136, 137, 139, 142, 146, 148, 151, 28.19679 + 152, 151, 152, 153, 152, 153, 152, 155, 152, 140, 138, 135, 134, 137, 130, 143, 28.19680 + 60, 8, 26, 24, 28, 44, 48, 68, 113, 143, 158, 155, 143, 143, 150, 155, 28.19681 + 162, 152, 149, 145, 143, 144, 145, 146, 147, 156, 155, 157, 165, 168, 167, 170, 28.19682 + 174, 173, 176, 180, 177, 171, 170, 176, 182, 191, 191, 190, 188, 185, 182, 179, 28.19683 + 178, 180, 185, 183, 176, 175, 176, 166, 152, 150, 154, 162, 174, 184, 188, 185, 28.19684 + 179, 163, 162, 162, 164, 167, 166, 162, 157, 153, 146, 144, 142, 135, 137, 131, 28.19685 + 114, 97, 141, 137, 140, 155, 144, 147, 148, 133, 135, 130, 118, 107, 94, 72, 28.19686 + 49, 38, 29, 36, 28, 27, 40, 42, 56, 76, 88, 89, 25, 27, 26, 23, 28.19687 + 24, 27, 27, 24, 25, 25, 25, 20, 16, 15, 17, 23, 26, 29, 29, 28, 28.19688 + 25, 24, 26, 28, 30, 18, 23, 22, 33, 42, 30, 35, 90, 129, 134, 139, 28.19689 + 139, 132, 138, 135, 127, 138, 115, 125, 137, 133, 148, 144, 135, 134, 136, 138, 28.19690 + 138, 138, 137, 135, 138, 138, 139, 140, 142, 141, 142, 142, 140, 145, 151, 154, 28.19691 + 151, 146, 142, 139, 138, 138, 138, 139, 140, 139, 135, 132, 137, 141, 144, 147, 28.19692 + 152, 154, 155, 157, 154, 150, 149, 149, 156, 159, 158, 154, 148, 137, 136, 138, 28.19693 + 138, 136, 144, 32, 7, 30, 21, 24, 50, 41, 37, 74, 121, 144, 154, 148, 28.19694 + 148, 150, 147, 149, 152, 151, 150, 149, 149, 149, 151, 152, 157, 154, 156, 164, 28.19695 + 168, 169, 171, 178, 175, 180, 185, 181, 172, 169, 175, 183, 183, 182, 180, 181, 28.19696 + 182, 182, 181, 180, 184, 186, 181, 172, 173, 179, 174, 161, 181, 170, 159, 160, 28.19697 + 173, 185, 187, 182, 168, 166, 164, 164, 163, 158, 151, 143, 156, 150, 151, 144, 28.19698 + 132, 133, 128, 112, 96, 143, 133, 135, 151, 135, 134, 133, 133, 134, 130, 118, 28.19699 + 102, 82, 52, 23, 33, 33, 35, 22, 34, 51, 46, 58, 69, 82, 86, 26, 28.19700 + 29, 31, 31, 32, 30, 30, 27, 32, 27, 24, 21, 20, 20, 23, 23, 21, 28.19701 + 20, 20, 22, 22, 24, 27, 27, 26, 27, 28, 27, 25, 25, 27, 33, 79, 28.19702 + 129, 132, 125, 130, 129, 138, 142, 137, 136, 124, 122, 136, 144, 147, 156, 144, 28.19703 + 145, 144, 144, 140, 139, 138, 137, 140, 133, 132, 136, 140, 139, 139, 141, 151, 28.19704 + 152, 149, 148, 146, 143, 139, 135, 128, 128, 129, 131, 135, 137, 135, 134, 139, 28.19705 + 143, 146, 149, 151, 152, 152, 153, 163, 158, 152, 148, 147, 149, 150, 149, 151, 28.19706 + 133, 139, 134, 136, 133, 123, 7, 15, 42, 31, 34, 36, 52, 41, 53, 99, 28.19707 + 150, 158, 143, 138, 155, 131, 148, 146, 152, 152, 147, 151, 162, 158, 146, 162, 28.19708 + 160, 157, 155, 161, 172, 180, 184, 188, 188, 184, 180, 175, 176, 180, 183, 183, 28.19709 + 187, 191, 190, 185, 180, 178, 179, 186, 183, 180, 181, 184, 180, 172, 165, 161, 28.19710 + 170, 168, 145, 173, 170, 176, 178, 162, 158, 163, 164, 155, 156, 160, 154, 155, 28.19711 + 141, 147, 144, 134, 137, 134, 108, 101, 131, 127, 116, 132, 132, 121, 131, 130, 28.19712 + 122, 101, 77, 59, 48, 36, 27, 32, 30, 28, 29, 36, 48, 61, 67, 78, 28.19713 + 73, 66, 24, 27, 28, 29, 28, 28, 28, 26, 29, 27, 27, 25, 26, 25, 28.19714 + 26, 26, 17, 17, 17, 19, 21, 24, 26, 27, 28, 29, 30, 29, 26, 24, 28.19715 + 26, 31, 77, 124, 129, 125, 130, 130, 143, 148, 147, 145, 133, 129, 142, 145, 28.19716 + 144, 151, 148, 151, 153, 153, 148, 142, 140, 137, 141, 135, 133, 134, 135, 134, 28.19717 + 131, 135, 148, 149, 149, 148, 144, 141, 138, 134, 135, 135, 138, 137, 133, 133, 28.19718 + 133, 138, 146, 149, 149, 150, 151, 152, 153, 154, 156, 155, 154, 154, 154, 152, 28.19719 + 148, 143, 141, 131, 135, 134, 140, 130, 111, 10, 31, 34, 25, 46, 54, 60, 28.19720 + 42, 45, 77, 153, 161, 150, 145, 149, 131, 144, 145, 151, 155, 152, 159, 167, 28.19721 + 164, 152, 155, 152, 153, 155, 161, 170, 178, 180, 181, 182, 180, 177, 173, 176, 28.19722 + 182, 188, 192, 193, 193, 190, 185, 181, 183, 184, 192, 188, 185, 185, 187, 184, 28.19723 + 177, 168, 160, 165, 156, 142, 166, 174, 177, 178, 164, 158, 160, 159, 150, 152, 28.19724 + 158, 155, 154, 143, 146, 146, 134, 135, 130, 104, 95, 125, 124, 117, 131, 125, 28.19725 + 109, 113, 77, 71, 61, 48, 39, 35, 31, 25, 29, 27, 27, 31, 40, 53, 28.19726 + 69, 77, 82, 77, 71, 24, 25, 23, 23, 23, 21, 22, 21, 21, 20, 22, 28.19727 + 23, 24, 22, 21, 20, 22, 24, 24, 25, 27, 29, 29, 31, 29, 31, 30, 28.19728 + 30, 27, 26, 29, 33, 69, 110, 120, 123, 126, 124, 139, 143, 147, 149, 139, 28.19729 + 135, 146, 146, 142, 146, 148, 152, 157, 158, 153, 144, 138, 133, 134, 129, 130, 28.19730 + 134, 137, 139, 141, 146, 147, 147, 148, 148, 145, 141, 138, 135, 129, 132, 138, 28.19731 + 136, 132, 133, 139, 150, 151, 152, 150, 150, 150, 151, 153, 154, 155, 154, 154, 28.19732 + 154, 154, 152, 148, 143, 137, 135, 139, 140, 149, 130, 95, 17, 39, 26, 25, 28.19733 + 58, 55, 58, 48, 49, 62, 162, 158, 149, 144, 137, 132, 143, 144, 149, 154, 28.19734 + 153, 160, 169, 166, 155, 151, 149, 152, 156, 161, 168, 176, 179, 177, 178, 177, 28.19735 + 174, 172, 176, 184, 193, 198, 196, 192, 187, 182, 180, 184, 186, 191, 187, 185, 28.19736 + 184, 184, 182, 178, 172, 164, 164, 145, 142, 154, 175, 172, 176, 166, 158, 158, 28.19737 + 154, 145, 148, 157, 155, 152, 144, 147, 145, 134, 131, 122, 103, 92, 112, 107, 28.19738 + 95, 100, 91, 74, 74, 57, 54, 51, 39, 36, 35, 34, 30, 28, 27, 28, 28.19739 + 33, 42, 56, 71, 80, 83, 80, 77, 24, 23, 21, 20, 20, 20, 21, 20, 28.19740 + 19, 18, 19, 19, 20, 19, 16, 18, 25, 26, 25, 27, 28, 27, 28, 27, 28.19741 + 30, 30, 32, 31, 30, 31, 32, 38, 59, 96, 111, 121, 123, 121, 135, 136, 28.19742 + 137, 140, 137, 136, 145, 145, 140, 145, 147, 151, 155, 155, 151, 144, 137, 134, 28.19743 + 129, 127, 128, 133, 138, 138, 142, 149, 149, 152, 153, 150, 146, 141, 137, 135, 28.19744 + 128, 132, 134, 134, 135, 138, 147, 155, 148, 150, 150, 151, 151, 152, 152, 152, 28.19745 + 157, 153, 149, 146, 147, 148, 149, 148, 137, 140, 138, 139, 150, 127, 76, 22, 28.19746 + 35, 28, 38, 66, 45, 51, 56, 64, 69, 172, 147, 137, 134, 125, 133, 144, 28.19747 + 143, 145, 148, 148, 156, 163, 164, 157, 155, 151, 153, 156, 161, 166, 174, 182, 28.19748 + 182, 184, 183, 178, 175, 178, 187, 196, 193, 191, 187, 182, 179, 178, 181, 183, 28.19749 + 186, 183, 182, 181, 181, 180, 180, 175, 169, 167, 144, 146, 142, 168, 166, 173, 28.19750 + 166, 158, 158, 155, 145, 148, 156, 153, 148, 143, 144, 142, 135, 129, 118, 104, 28.19751 + 77, 82, 71, 54, 55, 50, 44, 44, 45, 45, 40, 34, 26, 26, 24, 20, 28.19752 + 22, 24, 31, 38, 46, 56, 67, 74, 80, 80, 81, 25, 23, 21, 20, 20, 28.19753 + 18, 20, 21, 24, 21, 20, 16, 16, 16, 16, 19, 17, 20, 21, 24, 24, 28.19754 + 24, 26, 25, 35, 36, 35, 34, 32, 32, 33, 40, 47, 78, 98, 122, 123, 28.19755 + 121, 136, 132, 128, 136, 136, 137, 145, 145, 139, 143, 144, 147, 150, 151, 149, 28.19756 + 144, 141, 141, 136, 133, 133, 134, 135, 133, 133, 139, 153, 156, 154, 148, 141, 28.19757 + 135, 134, 133, 143, 141, 140, 139, 142, 143, 146, 146, 144, 149, 152, 155, 157, 28.19758 + 156, 154, 152, 155, 152, 148, 146, 147, 149, 150, 148, 139, 141, 133, 131, 138, 28.19759 + 120, 58, 18, 27, 32, 46, 68, 45, 57, 59, 56, 84, 168, 136, 129, 130, 28.19760 + 126, 137, 144, 146, 144, 144, 143, 149, 159, 160, 157, 158, 152, 152, 154, 156, 28.19761 + 161, 172, 184, 185, 186, 185, 182, 177, 181, 191, 199, 185, 184, 182, 181, 181, 28.19762 + 180, 179, 178, 180, 179, 180, 180, 181, 181, 181, 180, 169, 166, 149, 152, 136, 28.19763 + 159, 165, 175, 163, 158, 160, 160, 150, 151, 157, 152, 145, 144, 140, 138, 137, 28.19764 + 129, 115, 110, 55, 53, 41, 33, 35, 39, 44, 46, 34, 36, 36, 28, 25, 28.19765 + 24, 25, 22, 19, 24, 36, 46, 55, 62, 69, 72, 78, 81, 84, 23, 22, 28.19766 + 22, 21, 21, 22, 22, 23, 20, 19, 16, 15, 14, 15, 16, 17, 16, 18, 28.19767 + 22, 28, 32, 34, 35, 36, 36, 35, 35, 31, 28, 24, 25, 31, 37, 60, 28.19768 + 81, 112, 116, 117, 135, 127, 129, 138, 137, 140, 146, 143, 137, 138, 145, 147, 28.19769 + 148, 148, 145, 146, 146, 148, 140, 138, 139, 144, 142, 141, 145, 153, 158, 160, 28.19770 + 155, 147, 137, 132, 133, 133, 141, 141, 141, 146, 149, 151, 148, 146, 145, 149, 28.19771 + 154, 158, 159, 158, 154, 152, 147, 148, 150, 152, 154, 152, 147, 142, 143, 142, 28.19772 + 134, 130, 130, 123, 56, 16, 27, 35, 42, 67, 59, 68, 52, 40, 101, 153, 28.19773 + 132, 136, 136, 141, 142, 145, 151, 149, 146, 145, 150, 156, 158, 156, 156, 148, 28.19774 + 146, 150, 151, 156, 170, 186, 184, 184, 183, 182, 182, 186, 193, 198, 183, 183, 28.19775 + 182, 183, 185, 184, 180, 178, 178, 179, 182, 183, 183, 183, 183, 180, 166, 157, 28.19776 + 152, 153, 138, 153, 169, 176, 160, 157, 162, 163, 154, 154, 158, 152, 142, 143, 28.19777 + 139, 134, 138, 128, 116, 118, 45, 40, 36, 32, 35, 39, 41, 41, 33, 37, 28.19778 + 36, 30, 24, 24, 26, 26, 25, 33, 44, 56, 65, 71, 76, 78, 80, 84, 28.19779 + 86, 21, 20, 23, 22, 22, 23, 22, 22, 19, 20, 20, 22, 23, 23, 23, 28.19780 + 21, 19, 20, 25, 32, 36, 38, 39, 37, 28, 28, 27, 25, 23, 19, 22, 28.19781 + 30, 48, 57, 73, 107, 111, 111, 130, 119, 129, 139, 138, 141, 146, 141, 135, 28.19782 + 138, 143, 142, 144, 144, 144, 144, 144, 146, 138, 139, 143, 149, 152, 152, 158, 28.19783 + 168, 161, 163, 157, 147, 137, 134, 137, 141, 140, 145, 152, 158, 160, 160, 157, 28.19784 + 158, 151, 153, 157, 159, 160, 158, 156, 154, 147, 148, 151, 154, 156, 154, 149, 28.19785 + 143, 146, 141, 138, 134, 127, 134, 62, 16, 26, 32, 32, 61, 63, 63, 46, 28.19786 + 52, 124, 144, 139, 147, 137, 149, 146, 152, 155, 150, 149, 150, 154, 155, 154, 28.19787 + 152, 152, 144, 145, 152, 154, 158, 172, 188, 186, 184, 181, 182, 186, 190, 192, 28.19788 + 192, 186, 184, 183, 183, 184, 183, 180, 177, 175, 177, 181, 182, 181, 179, 179, 28.19789 + 176, 168, 150, 155, 149, 145, 149, 170, 167, 159, 155, 161, 163, 155, 155, 159, 28.19790 + 154, 145, 146, 137, 133, 138, 127, 115, 122, 45, 33, 32, 33, 29, 32, 35, 28.19791 + 30, 27, 29, 30, 24, 19, 20, 23, 25, 42, 46, 54, 63, 69, 73, 78, 28.19792 + 80, 81, 85, 86, 20, 21, 23, 25, 26, 26, 25, 25, 26, 29, 34, 38, 28.19793 + 41, 41, 39, 34, 25, 25, 29, 32, 36, 36, 34, 32, 33, 32, 34, 32, 28.19794 + 33, 32, 36, 43, 72, 71, 80, 110, 112, 113, 130, 119, 123, 133, 136, 137, 28.19795 + 143, 141, 133, 138, 137, 139, 142, 142, 141, 141, 139, 140, 139, 140, 142, 147, 28.19796 + 149, 148, 152, 161, 166, 167, 161, 151, 143, 139, 144, 150, 155, 164, 175, 179, 28.19797 + 174, 168, 164, 164, 158, 159, 159, 160, 159, 158, 157, 156, 154, 152, 150, 150, 28.19798 + 152, 153, 154, 151, 141, 134, 136, 134, 122, 138, 64, 9, 20, 30, 28, 56, 28.19799 + 57, 46, 43, 82, 147, 142, 145, 150, 131, 150, 147, 160, 153, 149, 150, 152, 28.19800 + 154, 152, 148, 144, 147, 142, 147, 157, 159, 161, 174, 193, 195, 190, 185, 186, 28.19801 + 190, 191, 189, 186, 189, 185, 181, 180, 181, 180, 178, 175, 173, 175, 180, 180, 28.19802 + 178, 174, 173, 170, 172, 147, 156, 146, 149, 146, 168, 156, 158, 154, 159, 160, 28.19803 + 153, 155, 160, 156, 147, 150, 137, 131, 138, 124, 113, 123, 43, 28, 24, 27, 28.19804 + 24, 28, 39, 36, 30, 35, 39, 37, 35, 41, 49, 53, 59, 60, 64, 66, 28.19805 + 69, 72, 74, 74, 81, 82, 83, 32, 34, 36, 37, 36, 33, 31, 29, 37, 28.19806 + 47, 44, 37, 36, 31, 28, 34, 21, 28, 34, 41, 50, 45, 44, 57, 58, 28.19807 + 54, 55, 57, 64, 68, 71, 73, 91, 90, 92, 100, 107, 111, 114, 118, 124, 28.19808 + 128, 133, 136, 136, 135, 132, 133, 135, 134, 136, 138, 140, 141, 142, 142, 143, 28.19809 + 141, 142, 147, 148, 146, 148, 153, 159, 161, 160, 159, 161, 159, 159, 159, 160, 28.19810 + 161, 166, 168, 172, 175, 174, 174, 167, 165, 162, 159, 160, 162, 166, 168, 163, 28.19811 + 158, 152, 148, 148, 150, 152, 151, 150, 141, 124, 133, 134, 136, 109, 10, 33, 28.19812 + 18, 32, 55, 51, 46, 75, 105, 141, 142, 149, 151, 152, 153, 153, 155, 146, 28.19813 + 151, 157, 156, 152, 148, 145, 144, 150, 149, 152, 156, 161, 166, 170, 173, 193, 28.19814 + 188, 183, 183, 188, 193, 194, 191, 183, 181, 178, 176, 178, 178, 176, 174, 175, 28.19815 + 169, 172, 176, 174, 176, 179, 171, 163, 165, 163, 154, 156, 137, 163, 167, 158, 28.19816 + 158, 157, 155, 157, 159, 155, 147, 146, 141, 142, 137, 139, 108, 129, 128, 49, 28.19817 + 32, 38, 29, 22, 33, 32, 32, 45, 47, 53, 58, 63, 63, 64, 64, 71, 28.19818 + 72, 70, 69, 68, 70, 72, 75, 73, 73, 73, 29, 30, 28, 27, 27, 29, 28.19819 + 31, 32, 26, 37, 42, 40, 39, 32, 29, 32, 39, 44, 47, 60, 79, 80, 28.19820 + 76, 82, 81, 87, 95, 99, 99, 94, 93, 89, 84, 82, 85, 93, 100, 104, 28.19821 + 112, 120, 119, 123, 129, 133, 134, 134, 133, 132, 129, 131, 134, 137, 139, 141, 28.19822 + 143, 143, 140, 138, 140, 145, 146, 144, 144, 149, 154, 156, 158, 158, 156, 155, 28.19823 + 152, 151, 156, 157, 161, 163, 168, 170, 172, 172, 174, 172, 169, 166, 165, 166, 28.19824 + 168, 169, 171, 170, 167, 162, 157, 153, 150, 147, 139, 137, 131, 143, 140, 138, 28.19825 + 117, 37, 22, 29, 45, 43, 30, 49, 105, 148, 146, 146, 151, 153, 152, 153, 28.19826 + 154, 157, 154, 155, 157, 155, 151, 145, 141, 140, 145, 147, 150, 153, 156, 165, 28.19827 + 177, 187, 188, 185, 184, 186, 192, 195, 192, 189, 183, 180, 178, 177, 178, 178, 28.19828 + 176, 174, 176, 169, 173, 176, 173, 174, 176, 168, 168, 166, 160, 151, 156, 142, 28.19829 + 172, 177, 163, 163, 161, 158, 159, 161, 156, 148, 147, 145, 138, 135, 133, 115, 28.19830 + 128, 123, 51, 34, 42, 41, 45, 65, 69, 71, 84, 84, 83, 83, 81, 76, 28.19831 + 76, 74, 75, 75, 76, 74, 75, 77, 80, 80, 79, 77, 76, 34, 35, 32, 28.19832 + 30, 30, 30, 33, 34, 31, 36, 44, 46, 46, 44, 45, 51, 72, 84, 87, 28.19833 + 94, 107, 104, 99, 105, 99, 109, 118, 115, 104, 92, 92, 89, 85, 79, 84, 28.19834 + 89, 93, 97, 107, 118, 114, 118, 125, 130, 132, 134, 134, 134, 129, 129, 131, 28.19835 + 133, 135, 137, 137, 138, 136, 134, 137, 142, 144, 141, 141, 144, 147, 149, 153, 28.19836 + 153, 152, 148, 144, 142, 151, 152, 155, 156, 162, 163, 167, 168, 179, 177, 175, 28.19837 + 173, 171, 170, 170, 170, 167, 170, 172, 169, 160, 151, 145, 141, 141, 139, 141, 28.19838 + 149, 138, 134, 128, 81, 59, 57, 52, 43, 53, 97, 141, 153, 148, 150, 156, 28.19839 + 161, 162, 162, 163, 163, 165, 162, 157, 152, 147, 143, 139, 137, 154, 155, 156, 28.19840 + 152, 151, 159, 174, 185, 181, 182, 184, 190, 195, 194, 190, 186, 180, 178, 178, 28.19841 + 177, 177, 176, 176, 174, 175, 168, 173, 175, 170, 171, 171, 163, 170, 167, 162, 28.19842 + 155, 163, 148, 174, 175, 161, 161, 158, 155, 156, 157, 151, 143, 144, 149, 133, 28.19843 + 134, 124, 124, 129, 120, 57, 35, 42, 47, 58, 79, 82, 85, 83, 84, 83, 28.19844 + 82, 80, 76, 77, 74, 78, 78, 78, 79, 78, 80, 83, 84, 76, 74, 74, 28.19845 + 20, 25, 27, 30, 32, 33, 35, 35, 54, 50, 54, 58, 59, 65, 76, 86, 28.19846 + 101, 118, 119, 114, 108, 99, 96, 108, 97, 101, 105, 98, 87, 84, 89, 89, 28.19847 + 91, 84, 88, 91, 90, 92, 102, 114, 111, 117, 123, 128, 130, 132, 133, 133, 28.19848 + 133, 131, 132, 132, 132, 132, 131, 131, 133, 132, 135, 140, 142, 139, 138, 140, 28.19849 + 142, 143, 145, 145, 145, 144, 142, 140, 149, 149, 149, 152, 155, 160, 165, 166, 28.19850 + 174, 173, 173, 172, 171, 169, 168, 167, 176, 183, 189, 188, 181, 173, 170, 168, 28.19851 + 158, 148, 145, 145, 132, 130, 134, 118, 120, 106, 95, 93, 114, 153, 166, 145, 28.19852 + 147, 152, 160, 168, 172, 172, 171, 170, 168, 162, 153, 148, 145, 143, 139, 136, 28.19853 + 157, 155, 152, 150, 151, 158, 171, 182, 182, 183, 186, 191, 192, 192, 187, 183, 28.19854 + 180, 178, 178, 178, 177, 176, 176, 173, 174, 168, 173, 176, 170, 171, 171, 163, 28.19855 + 169, 169, 168, 165, 172, 150, 166, 159, 158, 158, 156, 153, 153, 154, 149, 140, 28.19856 + 135, 152, 132, 135, 117, 132, 134, 124, 58, 32, 39, 48, 62, 80, 78, 79, 28.19857 + 85, 86, 85, 82, 84, 83, 84, 84, 79, 78, 78, 77, 75, 76, 78, 79, 28.19858 + 68, 69, 71, 48, 51, 54, 59, 68, 75, 81, 85, 70, 58, 65, 72, 69, 28.19859 + 75, 89, 95, 100, 110, 107, 99, 101, 99, 96, 103, 96, 96, 97, 96, 95, 28.19860 + 99, 110, 110, 92, 85, 89, 92, 91, 92, 100, 112, 113, 117, 122, 126, 128, 28.19861 + 130, 131, 132, 132, 130, 131, 131, 131, 130, 129, 129, 136, 134, 136, 141, 142, 28.19862 + 139, 139, 139, 140, 139, 139, 139, 140, 139, 141, 142, 146, 148, 148, 151, 154, 28.19863 + 159, 164, 165, 166, 167, 168, 169, 169, 168, 167, 167, 161, 167, 173, 173, 168, 28.19864 + 164, 165, 166, 165, 151, 148, 143, 133, 134, 136, 138, 147, 147, 157, 163, 163, 28.19865 + 170, 178, 168, 157, 155, 156, 158, 164, 169, 172, 174, 164, 158, 151, 146, 143, 28.19866 + 142, 139, 136, 144, 141, 139, 144, 155, 167, 178, 184, 187, 188, 188, 190, 188, 28.19867 + 187, 182, 180, 179, 178, 176, 176, 178, 177, 173, 171, 173, 167, 172, 176, 171, 28.19868 + 172, 172, 163, 166, 167, 167, 165, 171, 147, 161, 152, 160, 160, 158, 155, 156, 28.19869 + 157, 152, 143, 129, 151, 134, 136, 118, 135, 139, 130, 57, 30, 39, 54, 72, 28.19870 + 91, 85, 84, 95, 94, 91, 85, 85, 81, 81, 80, 81, 81, 79, 78, 75, 28.19871 + 72, 73, 72, 67, 71, 75, 62, 58, 53, 51, 53, 63, 72, 78, 71, 55, 28.19872 + 68, 80, 71, 71, 79, 74, 76, 77, 67, 73, 97, 111, 106, 102, 101, 103, 28.19873 + 104, 105, 108, 109, 112, 106, 87, 81, 84, 89, 91, 91, 97, 106, 112, 117, 28.19874 + 121, 124, 126, 128, 129, 129, 127, 126, 128, 130, 131, 132, 132, 132, 137, 134, 28.19875 + 134, 138, 139, 137, 138, 139, 138, 137, 136, 134, 135, 136, 139, 141, 143, 143, 28.19876 + 146, 148, 154, 156, 159, 163, 162, 163, 165, 166, 167, 168, 168, 168, 172, 175, 28.19877 + 176, 175, 172, 171, 173, 174, 157, 148, 153, 147, 143, 145, 137, 144, 144, 149, 28.19878 + 167, 180, 174, 172, 182, 184, 170, 160, 150, 144, 148, 156, 165, 171, 158, 155, 28.19879 + 152, 149, 145, 143, 141, 139, 143, 137, 134, 140, 154, 168, 175, 177, 190, 190, 28.19880 + 190, 189, 185, 184, 180, 179, 179, 178, 177, 177, 179, 177, 173, 170, 172, 167, 28.19881 + 172, 175, 170, 170, 169, 160, 161, 161, 160, 155, 162, 143, 163, 161, 159, 159, 28.19882 + 156, 153, 153, 154, 148, 139, 129, 146, 135, 134, 126, 135, 142, 131, 63, 36, 28.19883 + 45, 61, 77, 92, 84, 86, 90, 92, 86, 83, 81, 79, 77, 77, 82, 81, 28.19884 + 81, 78, 75, 72, 72, 71, 72, 77, 80, 81, 74, 69, 62, 59, 61, 63, 28.19885 + 65, 66, 46, 59, 74, 61, 60, 69, 57, 56, 61, 59, 65, 89, 101, 98, 28.19886 + 95, 95, 97, 98, 97, 95, 90, 88, 84, 86, 83, 84, 90, 94, 91, 93, 28.19887 + 98, 109, 112, 118, 121, 121, 124, 127, 128, 125, 125, 127, 129, 132, 133, 133, 28.19888 + 133, 137, 133, 132, 135, 135, 134, 136, 139, 137, 134, 134, 132, 133, 134, 135, 28.19889 + 134, 136, 139, 143, 146, 152, 153, 155, 155, 160, 160, 161, 162, 163, 165, 166, 28.19890 + 167, 164, 163, 161, 160, 158, 158, 158, 157, 152, 150, 160, 148, 146, 150, 136, 28.19891 + 150, 146, 142, 151, 163, 169, 177, 181, 171, 167, 158, 150, 144, 148, 153, 158, 28.19892 + 160, 154, 156, 157, 155, 149, 145, 141, 141, 148, 142, 138, 141, 149, 161, 169, 28.19893 + 173, 188, 189, 190, 190, 186, 183, 180, 179, 178, 177, 177, 177, 177, 175, 173, 28.19894 + 169, 172, 166, 172, 174, 167, 165, 162, 152, 152, 155, 157, 153, 159, 141, 164, 28.19895 + 165, 160, 159, 155, 150, 149, 148, 141, 132, 137, 140, 131, 129, 138, 134, 140, 28.19896 + 122, 72, 39, 46, 59, 71, 83, 79, 81, 91, 94, 93, 92, 89, 89, 88, 28.19897 + 88, 81, 80, 79, 76, 73, 70, 70, 71, 75, 79, 81, 69, 70, 71, 70, 28.19898 + 69, 64, 60, 56, 66, 40, 51, 67, 52, 54, 71, 60, 57, 74, 82, 80, 28.19899 + 84, 84, 85, 91, 85, 88, 92, 91, 89, 86, 90, 93, 94, 89, 90, 95, 28.19900 + 96, 92, 90, 91, 106, 109, 113, 116, 119, 123, 127, 128, 130, 129, 130, 131, 28.19901 + 131, 131, 131, 131, 137, 132, 130, 132, 132, 130, 135, 138, 133, 132, 133, 133, 28.19902 + 133, 132, 129, 128, 132, 135, 140, 144, 147, 148, 150, 149, 154, 153, 155, 154, 28.19903 + 157, 158, 160, 161, 166, 164, 162, 161, 161, 161, 160, 156, 156, 157, 166, 145, 28.19904 + 140, 149, 136, 156, 150, 151, 156, 159, 162, 173, 175, 161, 159, 155, 156, 157, 28.19905 + 159, 159, 155, 151, 153, 158, 161, 160, 153, 147, 143, 143, 142, 141, 140, 140, 28.19906 + 147, 158, 171, 181, 182, 185, 190, 189, 188, 185, 180, 179, 178, 177, 179, 177, 28.19907 + 179, 177, 173, 169, 173, 166, 171, 172, 164, 160, 157, 146, 143, 151, 159, 158, 28.19908 + 163, 140, 161, 160, 166, 164, 160, 153, 150, 147, 140, 131, 142, 133, 128, 123, 28.19909 + 145, 131, 138, 113, 70, 38, 46, 60, 75, 93, 92, 99, 96, 97, 98, 96, 28.19910 + 94, 91, 90, 87, 85, 86, 84, 82, 77, 73, 73, 73, 72, 74, 76, 73, 28.19911 + 72, 70, 69, 67, 66, 68, 67, 73, 59, 57, 88, 75, 89, 83, 73, 76, 28.19912 + 76, 76, 79, 84, 90, 93, 94, 97, 99, 97, 93, 93, 100, 102, 99, 101, 28.19913 + 98, 95, 95, 98, 99, 96, 93, 94, 104, 111, 113, 116, 123, 127, 125, 129, 28.19914 + 124, 124, 127, 130, 130, 130, 130, 131, 130, 128, 127, 129, 130, 135, 136, 135, 28.19915 + 132, 131, 130, 131, 131, 131, 131, 135, 136, 139, 142, 143, 144, 144, 143, 150, 28.19916 + 150, 151, 150, 151, 149, 148, 147, 155, 154, 152, 152, 155, 157, 160, 160, 160, 28.19917 + 155, 150, 151, 153, 153, 149, 146, 155, 153, 151, 159, 168, 172, 164, 158, 154, 28.19918 + 153, 153, 156, 161, 163, 162, 160, 155, 154, 151, 149, 146, 144, 142, 141, 151, 28.19919 + 141, 134, 139, 147, 151, 162, 176, 176, 182, 189, 189, 184, 179, 179, 181, 181, 28.19920 + 180, 181, 178, 179, 177, 173, 169, 173, 172, 175, 172, 159, 153, 146, 131, 143, 28.19921 + 151, 148, 147, 159, 163, 159, 160, 165, 156, 151, 146, 143, 140, 140, 139, 133, 28.19922 + 152, 94, 137, 129, 143, 138, 127, 66, 51, 51, 70, 85, 91, 105, 120, 109, 28.19923 + 105, 108, 101, 109, 113, 99, 107, 103, 94, 98, 97, 87, 82, 78, 67, 73, 28.19924 + 72, 76, 63, 64, 66, 68, 69, 71, 70, 69, 68, 67, 68, 76, 65, 73, 28.19925 + 76, 77, 76, 78, 78, 79, 83, 89, 93, 93, 100, 103, 104, 99, 99, 101, 28.19926 + 102, 96, 100, 99, 102, 106, 109, 106, 98, 92, 94, 107, 114, 110, 109, 116, 28.19927 + 127, 135, 133, 131, 130, 132, 134, 134, 131, 130, 130, 129, 127, 126, 126, 129, 28.19928 + 132, 132, 133, 131, 130, 129, 131, 132, 132, 133, 133, 133, 137, 139, 140, 141, 28.19929 + 141, 141, 145, 146, 147, 148, 149, 149, 151, 150, 150, 150, 150, 152, 157, 161, 28.19930 + 165, 165, 162, 157, 153, 154, 157, 157, 154, 150, 156, 153, 152, 157, 165, 167, 28.19931 + 163, 160, 162, 162, 161, 162, 162, 163, 161, 159, 159, 158, 156, 154, 151, 149, 28.19932 + 148, 148, 146, 141, 137, 140, 146, 154, 167, 176, 179, 183, 187, 186, 183, 180, 28.19933 + 180, 182, 184, 182, 181, 180, 179, 177, 173, 169, 170, 166, 169, 166, 156, 154, 28.19934 + 151, 138, 142, 152, 150, 145, 151, 153, 152, 157, 159, 152, 146, 144, 141, 138, 28.19935 + 132, 128, 128, 136, 111, 137, 142, 138, 132, 115, 58, 44, 47, 72, 92, 97, 28.19936 + 104, 110, 106, 102, 119, 116, 114, 119, 113, 118, 117, 105, 99, 93, 81, 83, 28.19937 + 89, 82, 71, 70, 75, 69, 72, 75, 77, 78, 78, 76, 74, 74, 79, 74, 28.19938 + 59, 68, 72, 80, 82, 82, 83, 83, 83, 85, 85, 89, 93, 91, 95, 99, 28.19939 + 100, 102, 105, 104, 99, 98, 98, 102, 106, 109, 107, 101, 96, 96, 104, 110, 28.19940 + 110, 113, 119, 128, 132, 133, 133, 131, 132, 135, 136, 133, 131, 130, 129, 126, 28.19941 + 125, 125, 127, 130, 131, 130, 128, 128, 129, 130, 131, 134, 135, 133, 134, 136, 28.19942 + 138, 139, 140, 140, 140, 140, 141, 143, 145, 148, 149, 152, 152, 151, 151, 151, 28.19943 + 153, 158, 162, 165, 165, 160, 156, 154, 155, 157, 158, 156, 153, 154, 153, 153, 28.19944 + 156, 162, 164, 164, 165, 170, 170, 166, 165, 164, 163, 160, 158, 158, 157, 155, 28.19945 + 152, 150, 148, 146, 146, 143, 147, 145, 142, 147, 159, 172, 177, 182, 184, 186, 28.19946 + 184, 182, 180, 182, 184, 185, 183, 182, 181, 180, 177, 173, 169, 166, 164, 169, 28.19947 + 168, 159, 157, 152, 137, 136, 148, 147, 142, 148, 152, 155, 165, 158, 154, 149, 28.19948 + 148, 145, 141, 133, 125, 131, 122, 126, 133, 148, 133, 124, 112, 45, 33, 37, 28.19949 + 64, 89, 98, 104, 109, 100, 94, 125, 127, 112, 117, 118, 119, 122, 109, 102, 28.19950 + 95, 84, 88, 98, 94, 80, 74, 75, 66, 66, 71, 74, 76, 79, 80, 79, 28.19951 + 79, 83, 70, 41, 76, 81, 86, 77, 83, 85, 87, 88, 86, 85, 88, 93, 28.19952 + 90, 96, 99, 98, 102, 106, 106, 101, 99, 96, 96, 96, 99, 101, 102, 103, 28.19953 + 97, 97, 100, 109, 123, 130, 127, 122, 126, 128, 130, 129, 132, 136, 136, 130, 28.19954 + 130, 129, 128, 125, 125, 126, 128, 128, 124, 122, 125, 124, 128, 131, 133, 134, 28.19955 + 136, 136, 137, 138, 139, 138, 138, 138, 136, 138, 140, 143, 145, 146, 149, 150, 28.19956 + 154, 154, 153, 153, 155, 156, 158, 156, 155, 152, 151, 152, 154, 155, 154, 152, 28.19957 + 153, 154, 155, 155, 158, 161, 164, 168, 173, 173, 169, 166, 164, 162, 160, 158, 28.19958 + 159, 158, 155, 151, 148, 145, 143, 142, 147, 155, 154, 147, 149, 163, 175, 176, 28.19959 + 184, 185, 185, 182, 181, 181, 183, 185, 185, 184, 182, 181, 180, 177, 172, 169, 28.19960 + 166, 166, 173, 174, 165, 160, 149, 130, 141, 150, 147, 143, 152, 158, 161, 168, 28.19961 + 154, 155, 153, 148, 142, 140, 135, 129, 137, 117, 129, 130, 136, 132, 122, 117, 28.19962 + 44, 33, 35, 56, 78, 90, 103, 111, 100, 91, 124, 128, 107, 116, 122, 116, 28.19963 + 119, 111, 112, 108, 97, 99, 102, 95, 86, 78, 76, 49, 48, 52, 56, 62, 28.19964 + 70, 75, 78, 76, 84, 71, 38, 71, 74, 79, 70, 74, 75, 80, 87, 88, 28.19965 + 87, 88, 94, 101, 104, 100, 96, 96, 99, 99, 95, 96, 94, 94, 94, 97, 28.19966 + 99, 101, 103, 95, 95, 99, 107, 118, 124, 126, 127, 127, 129, 131, 130, 133, 28.19967 + 136, 134, 128, 133, 130, 129, 128, 128, 128, 127, 128, 124, 122, 125, 125, 130, 28.19968 + 133, 135, 137, 142, 142, 142, 142, 141, 140, 138, 138, 138, 139, 141, 143, 145, 28.19969 + 145, 148, 148, 156, 156, 155, 154, 155, 155, 154, 152, 152, 150, 150, 150, 152, 28.19970 + 152, 153, 152, 153, 154, 155, 155, 157, 159, 163, 169, 169, 169, 167, 164, 161, 28.19971 + 159, 159, 159, 164, 162, 159, 155, 151, 147, 144, 145, 148, 156, 155, 149, 153, 28.19972 + 167, 177, 176, 185, 185, 183, 181, 181, 181, 183, 185, 185, 183, 181, 180, 179, 28.19973 + 175, 171, 167, 168, 165, 168, 168, 161, 159, 152, 134, 151, 155, 147, 144, 158, 28.19974 + 164, 160, 161, 146, 151, 150, 141, 131, 131, 133, 132, 135, 119, 128, 136, 126, 28.19975 + 137, 120, 110, 43, 38, 43, 59, 71, 77, 85, 95, 107, 89, 116, 119, 103, 28.19976 + 114, 119, 109, 112, 107, 110, 108, 98, 95, 100, 90, 86, 79, 79, 55, 52, 28.19977 + 52, 52, 54, 59, 63, 66, 68, 84, 80, 51, 50, 53, 64, 65, 60, 61, 28.19978 + 68, 83, 91, 88, 87, 90, 89, 90, 89, 84, 85, 90, 93, 89, 91, 93, 28.19979 + 98, 101, 103, 101, 100, 100, 94, 99, 106, 107, 105, 106, 120, 136, 129, 135, 28.19980 + 136, 131, 133, 138, 135, 125, 133, 132, 131, 128, 127, 127, 127, 126, 125, 125, 28.19981 + 127, 128, 131, 134, 137, 139, 142, 142, 142, 142, 141, 139, 138, 137, 141, 142, 28.19982 + 144, 145, 146, 146, 148, 148, 154, 154, 154, 155, 157, 158, 158, 156, 153, 152, 28.19983 + 152, 152, 152, 153, 154, 154, 154, 155, 155, 155, 157, 158, 161, 166, 164, 165, 28.19984 + 163, 160, 157, 156, 158, 160, 161, 159, 157, 154, 150, 147, 144, 145, 146, 149, 28.19985 + 148, 150, 158, 170, 178, 179, 185, 183, 181, 180, 181, 181, 182, 182, 184, 182, 28.19986 + 180, 179, 177, 174, 169, 165, 169, 160, 157, 155, 152, 159, 161, 149, 143, 147, 28.19987 + 142, 145, 164, 172, 165, 163, 149, 154, 150, 137, 128, 131, 135, 134, 123, 121, 28.19988 + 129, 147, 133, 140, 123, 87, 34, 39, 54, 72, 82, 83, 85, 91, 105, 90, 28.19989 + 106, 106, 100, 112, 110, 105, 106, 101, 100, 97, 84, 86, 94, 87, 88, 80, 28.19990 + 81, 71, 68, 66, 64, 62, 64, 64, 65, 73, 83, 79, 64, 37, 46, 59, 28.19991 + 63, 60, 57, 65, 83, 95, 89, 82, 82, 76, 80, 83, 82, 85, 92, 96, 28.19992 + 93, 92, 95, 100, 102, 103, 101, 101, 101, 98, 100, 105, 109, 108, 104, 111, 28.19993 + 121, 123, 131, 133, 131, 134, 140, 138, 128, 133, 131, 130, 129, 128, 127, 127, 28.19994 + 124, 125, 123, 127, 127, 130, 133, 135, 137, 139, 140, 140, 140, 140, 140, 139, 28.19995 + 139, 139, 140, 141, 143, 144, 145, 147, 147, 149, 150, 152, 154, 157, 158, 159, 28.19996 + 157, 154, 154, 154, 153, 153, 152, 153, 154, 156, 155, 155, 155, 158, 159, 160, 28.19997 + 162, 162, 162, 161, 157, 153, 152, 156, 159, 155, 154, 153, 151, 152, 150, 149, 28.19998 + 148, 153, 148, 146, 154, 166, 174, 179, 182, 183, 182, 180, 179, 181, 181, 180, 28.19999 + 180, 183, 181, 179, 177, 175, 172, 167, 163, 164, 156, 154, 155, 156, 166, 170, 28.20000 + 158, 136, 145, 145, 150, 167, 174, 166, 165, 158, 158, 150, 136, 131, 137, 135, 28.20001 + 127, 121, 127, 138, 144, 143, 132, 133, 65, 27, 34, 53, 76, 91, 96, 97, 28.20002 + 98, 100, 92, 101, 98, 101, 110, 103, 106, 104, 100, 102, 97, 87, 89, 100, 28.20003 + 97, 94, 86, 83, 68, 67, 69, 71, 74, 76, 76, 77, 85, 78, 67, 68, 28.20004 + 37, 57, 63, 60, 69, 62, 70, 89, 98, 89, 78, 73, 85, 90, 94, 94, 28.20005 + 96, 100, 100, 95, 98, 97, 97, 95, 95, 97, 102, 106, 105, 96, 97, 111, 28.20006 + 123, 118, 103, 95, 113, 122, 127, 126, 132, 143, 143, 132, 132, 131, 130, 127, 28.20007 + 126, 125, 124, 124, 123, 121, 124, 124, 127, 128, 131, 132, 135, 136, 138, 138, 28.20008 + 139, 140, 140, 140, 133, 134, 136, 139, 140, 142, 144, 145, 147, 148, 149, 151, 28.20009 + 154, 155, 155, 153, 153, 153, 154, 153, 151, 150, 152, 153, 157, 156, 154, 155, 28.20010 + 159, 160, 158, 156, 160, 162, 161, 156, 152, 151, 154, 157, 155, 155, 155, 155, 28.20011 + 157, 157, 157, 159, 167, 153, 149, 161, 174, 177, 179, 183, 182, 180, 179, 179, 28.20012 + 181, 181, 179, 178, 182, 180, 178, 176, 174, 171, 166, 162, 160, 155, 160, 166, 28.20013 + 168, 175, 173, 157, 146, 158, 159, 159, 167, 166, 155, 154, 160, 156, 143, 131, 28.20014 + 131, 137, 129, 113, 125, 131, 144, 134, 150, 121, 143, 51, 33, 35, 47, 67, 28.20015 + 84, 93, 94, 92, 94, 93, 101, 95, 103, 108, 97, 110, 103, 102, 109, 110, 28.20016 + 100, 102, 109, 104, 95, 85, 82, 74, 71, 64, 59, 61, 68, 72, 69, 76, 28.20017 + 71, 72, 87, 72, 51, 63, 65, 72, 84, 87, 88, 94, 88, 81, 86, 88, 28.20018 + 90, 92, 91, 90, 92, 98, 101, 99, 95, 103, 105, 97, 96, 100, 95, 100, 28.20019 + 97, 100, 110, 121, 122, 119, 119, 99, 115, 119, 121, 137, 144, 138, 135, 133, 28.20020 + 135, 140, 140, 138, 136, 136, 138, 131, 129, 130, 127, 127, 127, 132, 136, 133, 28.20021 + 133, 136, 139, 140, 140, 139, 138, 144, 140, 138, 139, 139, 138, 142, 146, 144, 28.20022 + 142, 146, 152, 154, 149, 150, 153, 152, 152, 154, 154, 153, 151, 149, 147, 154, 28.20023 + 155, 155, 155, 157, 156, 155, 155, 153, 154, 154, 154, 155, 157, 160, 163, 164, 28.20024 + 163, 159, 153, 157, 162, 157, 148, 154, 147, 148, 161, 175, 178, 178, 179, 182, 28.20025 + 183, 184, 184, 185, 182, 179, 178, 178, 179, 180, 177, 171, 167, 166, 167, 159, 28.20026 + 165, 170, 176, 159, 156, 164, 135, 155, 156, 156, 160, 167, 172, 169, 164, 154, 28.20027 + 144, 142, 126, 125, 135, 122, 117, 134, 141, 135, 145, 163, 111, 145, 52, 38, 28.20028 + 36, 52, 72, 78, 86, 91, 87, 78, 82, 89, 94, 100, 106, 105, 101, 103, 28.20029 + 103, 102, 104, 105, 104, 103, 99, 90, 86, 84, 80, 78, 71, 63, 60, 60, 28.20030 + 58, 51, 64, 59, 56, 68, 60, 52, 71, 71, 73, 75, 69, 66, 77, 78, 28.20031 + 75, 81, 75, 77, 82, 83, 88, 90, 97, 98, 95, 91, 98, 100, 94, 95, 28.20032 + 100, 96, 103, 102, 99, 98, 108, 120, 123, 122, 118, 122, 112, 104, 112, 118, 28.20033 + 125, 137, 142, 143, 144, 140, 137, 135, 136, 138, 135, 135, 136, 131, 129, 128, 28.20034 + 132, 133, 129, 130, 131, 134, 135, 136, 137, 137, 140, 136, 136, 138, 139, 137, 28.20035 + 141, 145, 147, 145, 148, 153, 155, 151, 152, 156, 151, 151, 153, 153, 152, 150, 28.20036 + 149, 147, 154, 155, 155, 154, 156, 154, 153, 152, 153, 154, 154, 153, 154, 155, 28.20037 + 158, 161, 160, 159, 156, 151, 156, 162, 163, 159, 149, 149, 157, 169, 175, 175, 28.20038 + 176, 180, 180, 181, 182, 182, 183, 180, 178, 176, 177, 175, 173, 171, 170, 168, 28.20039 + 165, 162, 163, 183, 161, 166, 184, 156, 143, 159, 162, 160, 160, 166, 171, 172, 28.20040 + 167, 163, 158, 145, 142, 127, 122, 129, 118, 120, 135, 133, 138, 139, 124, 128, 28.20041 + 123, 39, 38, 38, 56, 72, 77, 80, 86, 82, 76, 80, 85, 86, 90, 96, 28.20042 + 96, 93, 92, 91, 90, 92, 94, 92, 91, 88, 88, 85, 85, 77, 77, 75, 28.20043 + 71, 71, 70, 64, 57, 59, 58, 52, 61, 60, 60, 75, 66, 72, 71, 61, 28.20044 + 59, 71, 74, 72, 77, 77, 77, 82, 85, 92, 94, 98, 96, 94, 90, 95, 28.20045 + 96, 91, 93, 99, 96, 93, 100, 102, 99, 106, 119, 124, 122, 126, 130, 123, 28.20046 + 115, 117, 113, 114, 124, 123, 130, 140, 147, 148, 147, 144, 142, 138, 137, 137, 28.20047 + 133, 130, 128, 130, 131, 128, 126, 126, 127, 129, 132, 133, 134, 135, 132, 133, 28.20048 + 137, 138, 136, 139, 143, 147, 146, 148, 150, 152, 150, 153, 156, 150, 150, 151, 28.20049 + 151, 150, 149, 148, 146, 153, 153, 153, 153, 154, 152, 151, 150, 150, 151, 151, 28.20050 + 149, 150, 150, 155, 157, 152, 154, 156, 155, 156, 159, 162, 159, 145, 153, 166, 28.20051 + 176, 176, 172, 175, 181, 181, 181, 182, 181, 182, 180, 178, 176, 183, 178, 173, 28.20052 + 171, 171, 170, 164, 159, 167, 174, 175, 183, 170, 155, 166, 162, 169, 164, 166, 28.20053 + 175, 178, 171, 163, 163, 161, 145, 142, 127, 119, 122, 115, 126, 144, 146, 145, 28.20054 + 145, 129, 154, 84, 49, 38, 48, 63, 74, 79, 81, 84, 82, 72, 72, 73, 28.20055 + 74, 79, 85, 84, 83, 83, 82, 81, 82, 84, 83, 82, 82, 81, 81, 80, 28.20056 + 71, 75, 77, 76, 77, 81, 78, 73, 69, 74, 70, 77, 77, 74, 76, 49, 28.20057 + 71, 79, 77, 79, 87, 86, 80, 83, 91, 88, 90, 91, 97, 95, 93, 88, 28.20058 + 96, 90, 93, 93, 88, 91, 98, 94, 92, 96, 99, 97, 98, 106, 119, 132, 28.20059 + 132, 137, 134, 134, 135, 121, 113, 121, 115, 118, 124, 130, 135, 136, 138, 139, 28.20060 + 136, 136, 136, 134, 133, 132, 135, 136, 130, 129, 126, 124, 125, 127, 129, 131, 28.20061 + 130, 129, 130, 136, 137, 136, 138, 141, 145, 145, 145, 145, 146, 147, 150, 152, 28.20062 + 148, 148, 148, 148, 148, 147, 146, 146, 149, 150, 150, 150, 152, 151, 151, 150, 28.20063 + 149, 150, 149, 148, 148, 148, 152, 155, 146, 152, 159, 159, 156, 152, 150, 148, 28.20064 + 150, 159, 170, 176, 175, 173, 176, 180, 183, 183, 183, 183, 183, 182, 180, 179, 28.20065 + 183, 180, 175, 171, 167, 164, 160, 157, 158, 178, 193, 184, 151, 159, 188, 161, 28.20066 + 172, 166, 169, 180, 181, 170, 162, 164, 160, 143, 140, 125, 115, 118, 117, 135, 28.20067 + 139, 148, 126, 138, 151, 139, 39, 54, 40, 57, 72, 78, 82, 83, 85, 88, 28.20068 + 79, 78, 78, 77, 81, 89, 90, 89, 95, 95, 94, 95, 98, 99, 99, 100, 28.20069 + 98, 99, 97, 74, 76, 76, 72, 71, 73, 72, 69, 77, 83, 80, 86, 86, 28.20070 + 83, 79, 47, 76, 89, 94, 94, 97, 91, 86, 93, 95, 92, 91, 91, 93, 28.20071 + 90, 85, 79, 91, 84, 86, 87, 85, 90, 97, 93, 102, 95, 90, 88, 82, 28.20072 + 81, 102, 130, 147, 146, 134, 127, 131, 128, 126, 133, 135, 128, 117, 108, 107, 28.20073 + 112, 120, 126, 131, 132, 134, 132, 132, 133, 137, 138, 132, 131, 126, 125, 123, 28.20074 + 124, 126, 127, 128, 126, 128, 134, 136, 134, 137, 140, 142, 144, 144, 142, 143, 28.20075 + 145, 148, 148, 146, 145, 146, 146, 145, 145, 145, 145, 146, 146, 148, 149, 151, 28.20076 + 152, 151, 151, 146, 147, 148, 147, 147, 147, 151, 153, 150, 153, 156, 156, 155, 28.20077 + 151, 151, 151, 160, 164, 168, 170, 173, 176, 178, 179, 182, 182, 182, 181, 182, 28.20078 + 180, 179, 178, 173, 175, 175, 169, 161, 157, 158, 161, 166, 201, 175, 153, 166, 28.20079 + 168, 170, 172, 169, 167, 171, 181, 182, 172, 164, 164, 156, 141, 138, 122, 113, 28.20080 + 120, 124, 143, 146, 143, 124, 141, 150, 117, 69, 51, 38, 62, 75, 76, 84, 28.20081 + 85, 84, 93, 75, 75, 72, 71, 71, 78, 78, 75, 85, 85, 84, 85, 90, 28.20082 + 93, 92, 93, 95, 98, 98, 72, 76, 76, 71, 69, 72, 74, 73, 80, 81, 28.20083 + 74, 81, 84, 85, 88, 62, 81, 95, 96, 92, 92, 87, 89, 100, 91, 90, 28.20084 + 91, 91, 91, 87, 86, 82, 83, 75, 78, 82, 82, 89, 96, 92, 92, 90, 28.20085 + 93, 96, 89, 76, 75, 84, 129, 140, 137, 133, 137, 139, 136, 140, 138, 134, 28.20086 + 129, 126, 122, 120, 117, 117, 121, 123, 125, 125, 125, 125, 128, 131, 132, 129, 28.20087 + 124, 123, 121, 122, 123, 124, 126, 124, 125, 129, 131, 130, 133, 137, 141, 144, 28.20088 + 145, 142, 143, 146, 148, 146, 144, 143, 143, 143, 143, 143, 144, 144, 145, 146, 28.20089 + 147, 148, 151, 151, 151, 151, 145, 145, 147, 146, 146, 147, 151, 154, 160, 153, 28.20090 + 150, 148, 151, 154, 161, 168, 169, 168, 166, 166, 170, 177, 179, 176, 179, 178, 28.20091 + 177, 176, 177, 176, 175, 175, 169, 174, 177, 172, 163, 160, 166, 173, 200, 180, 28.20092 + 147, 157, 174, 167, 169, 166, 167, 170, 175, 179, 179, 174, 168, 164, 152, 142, 28.20093 + 138, 117, 111, 127, 132, 146, 162, 137, 138, 150, 126, 114, 142, 55, 39, 68, 28.20094 + 76, 73, 85, 85, 82, 93, 75, 73, 70, 65, 64, 66, 66, 62, 68, 68, 28.20095 + 66, 69, 71, 74, 75, 75, 76, 80, 82, 71, 74, 77, 75, 76, 79, 81, 28.20096 + 81, 80, 76, 67, 78, 81, 82, 92, 76, 83, 92, 90, 85, 86, 83, 84, 28.20097 + 95, 86, 86, 89, 90, 90, 87, 89, 90, 84, 77, 80, 83, 83, 89, 94, 28.20098 + 88, 82, 92, 98, 98, 100, 93, 67, 41, 73, 112, 137, 142, 149, 150, 140, 28.20099 + 136, 132, 135, 139, 145, 147, 142, 131, 125, 122, 124, 125, 123, 122, 120, 120, 28.20100 + 122, 124, 121, 119, 119, 117, 119, 120, 121, 124, 121, 121, 124, 125, 125, 129, 28.20101 + 133, 137, 142, 144, 141, 141, 145, 145, 141, 143, 142, 141, 141, 141, 141, 143, 28.20102 + 143, 148, 149, 149, 149, 150, 149, 148, 148, 144, 144, 145, 144, 145, 148, 153, 28.20103 + 155, 160, 150, 146, 148, 156, 159, 166, 172, 170, 171, 168, 165, 169, 176, 178, 28.20104 + 174, 177, 177, 175, 174, 175, 174, 173, 173, 172, 174, 175, 171, 165, 163, 167, 28.20105 + 172, 188, 149, 148, 184, 177, 168, 181, 157, 167, 177, 181, 177, 175, 177, 171, 28.20106 + 162, 150, 145, 140, 114, 110, 134, 138, 145, 145, 132, 134, 140, 121, 118, 146, 28.20107 + 67, 49, 77, 78, 70, 87, 87, 80, 94, 91, 92, 90, 87, 87, 88, 87, 28.20108 + 83, 85, 84, 81, 82, 83, 85, 86, 85, 86, 90, 90, 74, 78, 82, 80, 28.20109 + 77, 77, 77, 76, 84, 78, 72, 87, 87, 83, 90, 77, 82, 89, 87, 85, 28.20110 + 90, 86, 80, 85, 79, 83, 87, 87, 86, 84, 88, 91, 94, 86, 87, 89, 28.20111 + 86, 89, 91, 83, 95, 103, 94, 78, 90, 106, 82, 39, 27, 84, 123, 133, 28.20112 + 140, 147, 143, 140, 145, 141, 135, 134, 137, 139, 141, 140, 136, 137, 137, 135, 28.20113 + 129, 127, 125, 125, 118, 117, 115, 117, 117, 119, 119, 120, 126, 121, 119, 122, 28.20114 + 123, 123, 127, 132, 132, 139, 142, 138, 138, 141, 141, 137, 142, 142, 141, 141, 28.20115 + 141, 142, 144, 145, 154, 153, 153, 152, 150, 148, 148, 145, 145, 144, 144, 146, 28.20116 + 145, 148, 154, 157, 153, 147, 146, 156, 163, 163, 162, 162, 168, 172, 172, 167, 28.20117 + 168, 174, 176, 173, 179, 178, 176, 175, 173, 173, 175, 175, 170, 168, 165, 160, 28.20118 + 156, 154, 155, 156, 127, 160, 167, 186, 200, 177, 166, 167, 169, 183, 186, 176, 28.20119 + 173, 179, 174, 160, 150, 148, 142, 112, 109, 138, 142, 142, 135, 150, 134, 142, 28.20120 + 160, 141, 118, 106, 61, 91, 87, 76, 92, 92, 81, 93, 87, 89, 90, 87, 28.20121 + 90, 94, 93, 87, 90, 87, 84, 82, 82, 83, 83, 84, 90, 91, 91, 72, 28.20122 + 74, 76, 78, 77, 76, 76, 79, 78, 78, 78, 80, 80, 80, 80, 82, 74, 28.20123 + 83, 82, 81, 84, 80, 77, 84, 69, 76, 79, 77, 79, 85, 90, 89, 87, 28.20124 + 89, 93, 92, 88, 87, 90, 93, 93, 96, 97, 84, 95, 91, 91, 45, 15, 28.20125 + 39, 73, 109, 133, 142, 142, 138, 145, 145, 143, 143, 144, 145, 143, 140, 132, 28.20126 + 130, 130, 131, 136, 138, 135, 133, 135, 136, 135, 128, 119, 112, 109, 107, 118, 28.20127 + 120, 124, 128, 128, 126, 121, 117, 130, 132, 134, 139, 138, 134, 136, 143, 143, 28.20128 + 147, 145, 141, 142, 148, 151, 151, 148, 149, 152, 153, 152, 148, 145, 140, 146, 28.20129 + 143, 141, 143, 146, 150, 148, 147, 127, 142, 158, 164, 162, 163, 167, 171, 171, 28.20130 + 170, 169, 171, 173, 175, 176, 175, 178, 175, 171, 169, 170, 170, 171, 170, 172, 28.20131 + 168, 161, 155, 153, 150, 144, 137, 160, 154, 173, 184, 172, 176, 178, 153, 170, 28.20132 + 182, 191, 188, 179, 171, 164, 160, 136, 143, 147, 132, 107, 142, 142, 145, 157, 28.20133 + 141, 140, 153, 154, 140, 128, 127, 77, 92, 81, 85, 88, 76, 83, 82, 89, 28.20134 + 88, 94, 93, 83, 84, 83, 72, 83, 79, 77, 78, 79, 78, 75, 78, 83, 28.20135 + 89, 87, 77, 78, 79, 77, 74, 73, 75, 77, 78, 77, 78, 77, 76, 76, 28.20136 + 78, 79, 78, 86, 85, 83, 87, 84, 80, 87, 81, 84, 82, 74, 70, 73, 28.20137 + 75, 74, 77, 80, 84, 84, 83, 83, 88, 90, 91, 90, 93, 89, 99, 88, 28.20138 + 95, 63, 21, 28, 39, 52, 73, 102, 136, 158, 158, 154, 148, 142, 141, 143, 28.20139 + 141, 137, 140, 138, 136, 137, 141, 144, 145, 145, 139, 139, 136, 132, 129, 127, 28.20140 + 127, 128, 124, 121, 117, 116, 117, 122, 125, 127, 120, 122, 127, 132, 134, 135, 28.20141 + 139, 148, 147, 151, 149, 145, 146, 150, 152, 150, 157, 157, 155, 152, 148, 146, 28.20142 + 145, 145, 141, 142, 144, 147, 151, 148, 141, 137, 148, 156, 164, 167, 168, 167, 28.20143 + 168, 170, 175, 174, 175, 177, 179, 179, 176, 173, 177, 174, 171, 169, 169, 169, 28.20144 + 168, 167, 157, 161, 162, 156, 149, 149, 158, 164, 155, 171, 181, 182, 183, 178, 28.20145 + 173, 171, 190, 195, 195, 186, 177, 173, 170, 167, 154, 149, 138, 120, 102, 146, 28.20146 + 154, 160, 146, 141, 147, 162, 165, 152, 137, 129, 103, 84, 92, 76, 93, 81, 28.20147 + 82, 80, 81, 77, 81, 83, 80, 87, 87, 75, 85, 83, 76, 71, 67, 67, 28.20148 + 73, 82, 78, 86, 88, 77, 78, 78, 77, 75, 74, 78, 79, 82, 80, 79, 28.20149 + 77, 76, 76, 79, 80, 79, 86, 84, 82, 87, 84, 81, 87, 82, 84, 80, 28.20150 + 74, 71, 74, 78, 79, 86, 88, 90, 90, 92, 93, 95, 96, 93, 87, 93, 28.20151 + 95, 105, 90, 101, 79, 16, 21, 26, 26, 33, 54, 89, 115, 129, 137, 147, 28.20152 + 151, 156, 157, 152, 143, 145, 144, 143, 141, 139, 141, 146, 149, 142, 142, 142, 28.20153 + 143, 142, 141, 138, 136, 132, 127, 118, 114, 116, 121, 124, 127, 122, 118, 121, 28.20154 + 125, 127, 127, 129, 138, 146, 149, 149, 145, 145, 148, 148, 144, 151, 153, 153, 28.20155 + 151, 147, 146, 147, 149, 148, 144, 138, 135, 137, 141, 146, 149, 163, 164, 165, 28.20156 + 168, 172, 173, 173, 170, 176, 177, 179, 181, 182, 180, 175, 171, 176, 174, 171, 28.20157 + 169, 169, 169, 167, 165, 159, 159, 157, 151, 146, 146, 155, 162, 160, 190, 189, 28.20158 + 179, 190, 180, 169, 187, 192, 193, 189, 181, 175, 173, 169, 164, 151, 146, 140, 28.20159 + 130, 116, 155, 149, 146, 138, 141, 149, 159, 163, 156, 140, 128, 127, 74, 92, 28.20160 + 68, 92, 82, 79, 77, 86, 78, 80, 79, 75, 80, 81, 70, 67, 78, 91, 28.20161 + 94, 92, 85, 80, 82, 87, 94, 97, 67, 70, 75, 77, 78, 79, 82, 84, 28.20162 + 85, 83, 82, 79, 79, 80, 85, 86, 81, 87, 84, 82, 88, 86, 82, 88, 28.20163 + 82, 83, 83, 82, 82, 85, 89, 92, 97, 98, 98, 98, 99, 99, 99, 100, 28.20164 + 95, 94, 98, 96, 107, 96, 103, 70, 9, 22, 34, 34, 31, 32, 42, 52, 28.20165 + 129, 136, 138, 134, 137, 151, 160, 162, 151, 150, 150, 147, 142, 138, 141, 144, 28.20166 + 146, 145, 148, 152, 153, 148, 138, 130, 139, 136, 133, 129, 129, 127, 125, 121, 28.20167 + 124, 121, 120, 121, 122, 123, 127, 135, 153, 158, 159, 156, 156, 159, 157, 153, 28.20168 + 149, 154, 157, 156, 150, 145, 144, 144, 144, 138, 133, 131, 134, 144, 156, 164, 28.20169 + 164, 164, 166, 166, 170, 173, 176, 177, 177, 175, 176, 179, 180, 179, 175, 172, 28.20170 + 175, 172, 170, 168, 168, 167, 165, 163, 168, 155, 144, 144, 150, 152, 151, 149, 28.20171 + 175, 193, 190, 178, 181, 177, 175, 188, 179, 181, 181, 178, 178, 177, 168, 159, 28.20172 + 145, 144, 145, 140, 123, 151, 137, 131, 160, 164, 165, 163, 164, 165, 157, 142, 28.20173 + 135, 85, 78, 76, 89, 78, 80, 73, 86, 80, 81, 77, 71, 76, 81, 72, 28.20174 + 86, 88, 87, 82, 82, 89, 94, 99, 101, 102, 102, 57, 62, 70, 75, 77, 28.20175 + 77, 79, 80, 80, 78, 78, 77, 77, 80, 85, 87, 84, 89, 84, 82, 89, 28.20176 + 88, 84, 89, 86, 87, 88, 89, 87, 84, 84, 86, 90, 89, 89, 90, 90, 28.20177 + 91, 92, 92, 93, 100, 99, 86, 101, 99, 95, 42, 14, 20, 26, 30, 30, 28.20178 + 31, 34, 39, 45, 80, 118, 141, 150, 155, 150, 139, 155, 158, 160, 157, 152, 28.20179 + 149, 149, 148, 149, 148, 148, 147, 148, 146, 139, 133, 144, 144, 143, 142, 141, 28.20180 + 138, 132, 126, 122, 116, 115, 120, 124, 127, 133, 139, 140, 145, 148, 147, 148, 28.20181 + 150, 149, 145, 158, 159, 157, 152, 145, 140, 139, 139, 129, 134, 143, 149, 153, 28.20182 + 157, 157, 159, 163, 167, 168, 169, 170, 172, 178, 182, 177, 174, 173, 175, 177, 28.20183 + 179, 178, 177, 172, 170, 168, 167, 166, 164, 161, 159, 158, 147, 142, 149, 160, 28.20184 + 162, 162, 163, 197, 188, 191, 185, 170, 177, 189, 181, 180, 181, 180, 179, 181, 28.20185 + 182, 174, 165, 156, 150, 143, 129, 105, 138, 139, 149, 162, 168, 165, 158, 156, 28.20186 + 160, 155, 141, 131, 114, 65, 97, 89, 76, 85, 75, 73, 75, 82, 83, 79, 28.20187 + 89, 98, 97, 107, 108, 103, 100, 104, 110, 108, 105, 108, 107, 103, 56, 61, 28.20188 + 68, 71, 71, 70, 71, 71, 71, 70, 71, 71, 72, 75, 79, 81, 79, 83, 28.20189 + 77, 75, 83, 82, 78, 83, 79, 80, 83, 86, 85, 80, 79, 81, 84, 83, 28.20190 + 83, 86, 89, 91, 94, 93, 88, 98, 96, 78, 93, 94, 85, 22, 18, 20, 28.20191 + 22, 27, 32, 36, 37, 36, 31, 44, 54, 60, 81, 117, 148, 157, 150, 151, 28.20192 + 156, 159, 159, 156, 155, 155, 154, 147, 142, 139, 140, 141, 144, 145, 146, 144, 28.20193 + 142, 142, 143, 143, 142, 140, 125, 117, 114, 115, 120, 118, 123, 127, 140, 144, 28.20194 + 147, 146, 147, 150, 150, 146, 146, 142, 136, 132, 133, 138, 144, 150, 141, 145, 28.20195 + 152, 156, 157, 161, 162, 164, 168, 171, 175, 174, 172, 172, 176, 179, 177, 174, 28.20196 + 173, 174, 177, 179, 180, 179, 169, 167, 165, 164, 163, 161, 158, 155, 144, 145, 28.20197 + 151, 156, 155, 152, 162, 177, 207, 186, 191, 189, 171, 184, 198, 178, 190, 188, 28.20198 + 182, 176, 176, 178, 175, 169, 157, 151, 144, 129, 102, 135, 145, 163, 149, 157, 28.20199 + 159, 158, 158, 158, 149, 135, 129, 139, 61, 105, 95, 84, 91, 81, 76, 76, 28.20200 + 86, 90, 89, 98, 108, 103, 63, 76, 89, 99, 108, 110, 93, 72, 114, 108, 28.20201 + 101, 65, 66, 69, 69, 68, 67, 70, 71, 71, 70, 72, 72, 73, 74, 77, 28.20202 + 78, 76, 79, 72, 70, 79, 79, 74, 78, 74, 73, 76, 82, 82, 79, 80, 28.20203 + 86, 84, 82, 82, 85, 90, 93, 93, 92, 82, 88, 89, 77, 89, 85, 79, 28.20204 + 25, 16, 22, 27, 32, 35, 35, 31, 28, 41, 43, 38, 38, 63, 105, 130, 28.20205 + 129, 144, 143, 146, 150, 155, 156, 156, 153, 151, 149, 146, 141, 140, 143, 148, 28.20206 + 152, 148, 147, 145, 146, 148, 147, 147, 146, 135, 127, 121, 119, 121, 116, 117, 28.20207 + 118, 112, 117, 118, 116, 117, 120, 120, 117, 131, 128, 126, 131, 140, 150, 156, 28.20208 + 157, 158, 157, 157, 155, 154, 160, 168, 176, 171, 173, 174, 174, 176, 176, 175, 28.20209 + 172, 175, 172, 173, 174, 177, 177, 175, 173, 166, 165, 163, 162, 161, 159, 155, 28.20210 + 151, 151, 152, 158, 160, 152, 146, 162, 182, 198, 193, 191, 187, 186, 192, 193, 28.20211 + 185, 190, 190, 185, 178, 175, 175, 172, 167, 150, 148, 148, 138, 112, 139, 143, 28.20212 + 158, 159, 165, 170, 173, 174, 168, 159, 150, 133, 145, 69, 87, 103, 94, 87, 28.20213 + 87, 88, 82, 87, 92, 95, 100, 100, 89, 95, 101, 102, 101, 112, 125, 129, 28.20214 + 122, 120, 112, 105, 72, 72, 72, 70, 68, 70, 75, 79, 76, 76, 78, 78, 28.20215 + 78, 78, 80, 80, 82, 84, 77, 75, 84, 84, 80, 84, 83, 79, 79, 83, 28.20216 + 81, 77, 79, 86, 81, 78, 77, 78, 83, 84, 83, 81, 82, 82, 86, 81, 28.20217 + 92, 80, 81, 41, 19, 22, 26, 28, 29, 32, 33, 35, 39, 35, 31, 40, 28.20218 + 83, 137, 162, 158, 148, 142, 142, 145, 151, 155, 156, 153, 148, 150, 154, 154, 28.20219 + 151, 145, 145, 146, 150, 151, 153, 153, 156, 152, 147, 141, 143, 134, 131, 132, 28.20220 + 135, 132, 130, 132, 135, 138, 137, 134, 134, 136, 136, 133, 136, 135, 139, 149, 28.20221 + 160, 164, 159, 154, 153, 158, 163, 165, 166, 165, 169, 171, 171, 169, 168, 172, 28.20222 + 179, 180, 175, 167, 171, 169, 171, 174, 175, 173, 169, 165, 165, 163, 162, 161, 28.20223 + 160, 157, 153, 149, 164, 155, 153, 158, 161, 161, 173, 189, 180, 198, 189, 182, 28.20224 + 199, 195, 182, 190, 184, 190, 192, 189, 184, 180, 172, 165, 157, 150, 146, 135, 28.20225 + 109, 137, 140, 155, 160, 160, 163, 166, 165, 158, 154, 149, 136, 137, 78, 65, 28.20226 + 106, 101, 81, 89, 90, 79, 79, 87, 95, 102, 93, 74, 95, 107, 109, 103, 28.20227 + 107, 116, 116, 109, 121, 112, 108, 64, 67, 67, 63, 61, 66, 71, 71, 71, 28.20228 + 74, 80, 82, 82, 81, 83, 83, 85, 88, 80, 75, 81, 82, 82, 90, 84, 28.20229 + 85, 83, 77, 76, 78, 79, 76, 77, 76, 75, 76, 79, 80, 80, 79, 76, 28.20230 + 90, 94, 84, 84, 91, 79, 56, 18, 21, 28, 32, 28, 23, 29, 41, 39, 28.20231 + 38, 37, 47, 88, 141, 167, 164, 163, 162, 161, 157, 152, 147, 146, 146, 148, 28.20232 + 148, 149, 150, 150, 150, 152, 154, 157, 157, 156, 153, 155, 153, 154, 152, 150, 28.20233 + 141, 133, 128, 133, 134, 135, 134, 140, 140, 140, 141, 142, 142, 143, 143, 145, 28.20234 + 145, 147, 150, 153, 157, 160, 164, 160, 161, 161, 161, 164, 166, 168, 170, 171, 28.20235 + 171, 172, 172, 172, 173, 174, 175, 172, 170, 171, 173, 174, 173, 170, 167, 166, 28.20236 + 166, 162, 156, 150, 148, 152, 156, 155, 158, 161, 159, 164, 175, 185, 188, 190, 28.20237 + 178, 180, 187, 191, 195, 192, 177, 191, 185, 179, 178, 180, 179, 172, 167, 168, 28.20238 + 156, 146, 134, 112, 145, 145, 155, 164, 163, 163, 167, 166, 159, 157, 154, 136, 28.20239 + 124, 90, 62, 90, 85, 92, 87, 86, 81, 78, 79, 86, 89, 88, 88, 108, 28.20240 + 103, 98, 104, 118, 121, 109, 96, 135, 163, 122, 60, 63, 64, 60, 59, 64, 28.20241 + 69, 69, 67, 71, 77, 79, 79, 79, 84, 86, 94, 97, 90, 84, 86, 81, 28.20242 + 75, 79, 79, 81, 81, 77, 77, 80, 81, 78, 83, 82, 80, 81, 83, 84, 28.20243 + 84, 83, 81, 90, 93, 87, 90, 97, 92, 78, 26, 25, 23, 25, 26, 34, 28.20244 + 52, 70, 81, 85, 83, 84, 108, 146, 167, 164, 172, 170, 171, 169, 166, 163, 28.20245 + 163, 161, 157, 162, 165, 162, 158, 156, 160, 164, 168, 167, 167, 166, 168, 169, 28.20246 + 171, 170, 166, 162, 155, 145, 139, 138, 140, 142, 134, 136, 140, 143, 145, 144, 28.20247 + 143, 141, 145, 146, 149, 153, 157, 160, 163, 167, 169, 169, 167, 166, 167, 168, 28.20248 + 168, 169, 172, 172, 172, 172, 175, 173, 176, 174, 170, 170, 171, 173, 175, 175, 28.20249 + 173, 171, 163, 161, 159, 155, 152, 151, 153, 156, 159, 160, 162, 164, 174, 185, 28.20250 + 191, 189, 191, 195, 206, 204, 187, 183, 192, 194, 187, 185, 183, 180, 176, 173, 28.20251 + 171, 170, 160, 161, 160, 142, 106, 130, 139, 161, 164, 164, 163, 168, 168, 163, 28.20252 + 157, 153, 133, 119, 87, 61, 94, 93, 94, 84, 76, 75, 77, 83, 93, 98, 28.20253 + 101, 105, 94, 93, 93, 98, 107, 110, 108, 104, 90, 116, 117, 57, 61, 62, 28.20254 + 59, 58, 63, 68, 68, 64, 69, 75, 74, 72, 72, 79, 84, 77, 84, 82, 28.20255 + 81, 86, 81, 73, 77, 75, 78, 80, 78, 80, 83, 84, 81, 86, 84, 82, 28.20256 + 82, 85, 86, 85, 84, 83, 83, 82, 82, 88, 92, 90, 89, 60, 57, 52, 28.20257 + 54, 61, 76, 97, 112, 117, 126, 127, 121, 128, 146, 161, 160, 172, 173, 176, 28.20258 + 177, 176, 172, 171, 171, 168, 173, 178, 176, 167, 161, 164, 170, 172, 171, 173, 28.20259 + 171, 175, 176, 179, 180, 176, 174, 169, 156, 145, 139, 139, 142, 139, 140, 142, 28.20260 + 144, 146, 148, 148, 149, 145, 147, 149, 153, 156, 158, 160, 160, 167, 167, 165, 28.20261 + 163, 162, 162, 163, 164, 166, 166, 167, 168, 170, 168, 170, 168, 169, 168, 167, 28.20262 + 168, 169, 170, 168, 167, 161, 159, 156, 155, 156, 157, 158, 157, 159, 162, 164, 28.20263 + 171, 185, 196, 196, 190, 201, 196, 200, 199, 190, 189, 194, 190, 180, 182, 182, 28.20264 + 177, 170, 165, 166, 168, 161, 155, 149, 136, 109, 136, 137, 148, 163, 163, 165, 28.20265 + 168, 169, 163, 157, 154, 141, 121, 86, 56, 93, 99, 99, 93, 95, 92, 93, 28.20266 + 93, 92, 90, 90, 90, 99, 102, 102, 101, 99, 101, 102, 104, 96, 101, 125, 28.20267 + 60, 64, 66, 62, 60, 64, 68, 67, 66, 70, 73, 70, 65, 64, 71, 77, 28.20268 + 64, 73, 73, 75, 83, 81, 76, 80, 76, 80, 82, 82, 83, 87, 86, 83, 28.20269 + 86, 84, 81, 80, 83, 84, 84, 83, 85, 80, 77, 80, 84, 83, 83, 88, 28.20270 + 95, 97, 97, 102, 109, 117, 126, 134, 132, 142, 145, 139, 139, 152, 161, 163, 28.20271 + 170, 174, 176, 178, 178, 176, 175, 172, 172, 177, 181, 178, 172, 168, 168, 170, 28.20272 + 174, 173, 171, 171, 172, 175, 178, 179, 174, 173, 170, 164, 155, 146, 142, 142, 28.20273 + 146, 143, 140, 137, 138, 142, 147, 150, 145, 147, 148, 150, 151, 152, 152, 151, 28.20274 + 160, 160, 159, 159, 159, 160, 162, 163, 163, 163, 165, 165, 166, 165, 165, 165, 28.20275 + 170, 168, 166, 165, 165, 166, 165, 163, 164, 160, 158, 158, 161, 163, 162, 159, 28.20276 + 158, 164, 171, 178, 190, 198, 197, 191, 200, 188, 187, 189, 190, 195, 197, 188, 28.20277 + 183, 184, 183, 177, 171, 167, 167, 169, 161, 151, 145, 136, 115, 145, 142, 150, 28.20278 + 162, 161, 162, 169, 169, 163, 157, 151, 149, 126, 93, 52, 86, 102, 104, 104, 28.20279 + 88, 90, 95, 96, 95, 96, 96, 100, 105, 108, 108, 106, 102, 100, 101, 103, 28.20280 + 112, 95, 106, 67, 71, 72, 67, 65, 67, 70, 68, 69, 71, 74, 70, 66, 28.20281 + 66, 73, 79, 79, 85, 82, 80, 86, 82, 76, 81, 81, 85, 87, 86, 86, 28.20282 + 89, 88, 84, 87, 84, 81, 80, 80, 82, 84, 83, 88, 82, 82, 86, 87, 28.20283 + 83, 84, 92, 108, 114, 120, 123, 128, 131, 131, 129, 139, 146, 149, 146, 148, 28.20284 + 160, 167, 168, 175, 178, 182, 184, 183, 179, 178, 177, 177, 175, 176, 177, 177, 28.20285 + 174, 170, 167, 179, 178, 176, 174, 174, 174, 175, 177, 172, 170, 170, 172, 172, 28.20286 + 167, 159, 154, 147, 145, 142, 139, 138, 138, 140, 141, 145, 145, 147, 148, 149, 28.20287 + 149, 150, 150, 159, 158, 157, 157, 157, 159, 161, 162, 161, 159, 162, 161, 163, 28.20288 + 161, 163, 163, 167, 166, 164, 164, 166, 167, 167, 166, 164, 161, 158, 159, 162, 28.20289 + 164, 162, 160, 160, 171, 184, 189, 192, 196, 198, 197, 193, 191, 199, 198, 187, 28.20290 + 190, 200, 201, 192, 190, 185, 180, 177, 175, 172, 172, 154, 159, 165, 150, 114, 28.20291 + 138, 146, 168, 163, 161, 159, 166, 167, 162, 156, 149, 145, 126, 105, 56, 82, 28.20292 + 99, 97, 103, 88, 91, 96, 97, 97, 98, 101, 102, 100, 101, 103, 105, 107, 28.20293 + 108, 105, 103, 102, 98, 89, 69, 74, 75, 71, 69, 70, 73, 71, 72, 73, 28.20294 + 75, 74, 75, 77, 84, 87, 86, 91, 86, 83, 88, 85, 80, 85, 86, 89, 28.20295 + 90, 87, 87, 90, 90, 86, 89, 85, 82, 81, 82, 84, 87, 87, 84, 82, 28.20296 + 84, 87, 88, 87, 90, 97, 112, 122, 129, 129, 132, 135, 138, 137, 145, 149, 28.20297 + 151, 149, 151, 159, 164, 164, 174, 179, 182, 183, 182, 180, 178, 178, 179, 176, 28.20298 + 172, 175, 179, 179, 173, 170, 178, 179, 175, 174, 173, 172, 172, 169, 168, 167, 28.20299 + 167, 172, 177, 177, 170, 163, 158, 157, 158, 157, 154, 149, 144, 140, 141, 141, 28.20300 + 141, 142, 143, 145, 147, 148, 156, 155, 153, 152, 152, 152, 154, 153, 152, 152, 28.20301 + 151, 151, 151, 150, 154, 154, 155, 155, 156, 159, 163, 165, 166, 165, 163, 161, 28.20302 + 159, 159, 160, 162, 163, 165, 170, 183, 195, 196, 194, 196, 199, 200, 201, 192, 28.20303 + 194, 195, 191, 195, 199, 192, 192, 188, 182, 178, 175, 173, 170, 169, 160, 160, 28.20304 + 161, 147, 114, 139, 143, 160, 166, 161, 158, 163, 168, 163, 156, 149, 135, 120, 28.20305 + 112, 61, 83, 98, 86, 92, 99, 97, 98, 98, 97, 97, 97, 98, 105, 103, 28.20306 + 103, 105, 110, 109, 103, 99, 92, 112, 102, 66, 71, 74, 71, 70, 73, 76, 28.20307 + 74, 75, 74, 75, 77, 81, 85, 88, 88, 81, 87, 84, 83, 90, 88, 83, 28.20308 + 88, 87, 89, 89, 86, 87, 91, 91, 89, 89, 83, 80, 79, 83, 86, 89, 28.20309 + 90, 82, 84, 85, 83, 85, 89, 92, 97, 116, 129, 139, 138, 140, 145, 152, 28.20310 + 153, 150, 154, 158, 156, 153, 155, 155, 158, 171, 177, 179, 180, 179, 178, 179, 28.20311 + 181, 179, 177, 174, 174, 175, 175, 174, 172, 174, 176, 176, 175, 174, 170, 168, 28.20312 + 166, 168, 168, 169, 171, 171, 172, 171, 170, 175, 175, 173, 171, 167, 163, 159, 28.20313 + 157, 152, 150, 147, 145, 145, 146, 148, 149, 148, 147, 146, 145, 146, 147, 149, 28.20314 + 148, 147, 145, 143, 142, 143, 143, 147, 149, 153, 154, 155, 158, 162, 163, 162, 28.20315 + 161, 162, 162, 162, 161, 162, 165, 169, 175, 182, 192, 198, 197, 195, 196, 198, 28.20316 + 197, 205, 190, 187, 191, 195, 200, 198, 182, 188, 187, 184, 177, 170, 166, 167, 28.20317 + 170, 166, 157, 150, 140, 117, 146, 144, 152, 170, 164, 160, 163, 168, 164, 159, 28.20318 + 152, 139, 121, 112, 58, 83, 103, 86, 92, 86, 82, 82, 87, 94, 102, 104, 28.20319 + 105, 106, 105, 102, 101, 101, 100, 96, 94, 89, 109, 104, 59, 65, 70, 68, 28.20320 + 69, 73, 75, 74, 79, 75, 72, 74, 79, 83, 81, 80, 82, 89, 89, 86, 28.20321 + 93, 86, 81, 83, 86, 86, 87, 82, 86, 89, 93, 89, 85, 82, 78, 78, 28.20322 + 80, 85, 87, 88, 86, 92, 90, 84, 83, 92, 97, 102, 111, 131, 143, 143, 28.20323 + 144, 148, 154, 155, 154, 164, 169, 168, 161, 156, 157, 160, 172, 176, 180, 180, 28.20324 + 180, 181, 183, 186, 176, 178, 176, 173, 170, 169, 170, 172, 174, 175, 176, 177, 28.20325 + 176, 173, 170, 167, 173, 175, 175, 172, 166, 167, 172, 177, 187, 181, 172, 164, 28.20326 + 161, 162, 166, 170, 173, 169, 163, 157, 154, 153, 153, 153, 147, 147, 148, 149, 28.20327 + 151, 154, 156, 157, 155, 153, 150, 147, 148, 149, 154, 157, 165, 165, 168, 167, 28.20328 + 170, 167, 165, 160, 166, 165, 168, 165, 167, 169, 179, 186, 189, 194, 195, 193, 28.20329 + 193, 196, 195, 190, 191, 193, 202, 202, 187, 185, 196, 198, 190, 193, 193, 184, 28.20330 + 172, 167, 171, 179, 157, 162, 165, 150, 115, 141, 150, 173, 171, 166, 161, 165, 28.20331 + 168, 168, 161, 157, 154, 125, 110, 52, 79, 108, 93, 102, 99, 93, 86, 85, 28.20332 + 87, 89, 87, 83, 93, 91, 91, 90, 92, 93, 96, 97, 102, 104, 99, 66, 28.20333 + 66, 68, 66, 64, 67, 71, 74, 79, 78, 76, 75, 74, 76, 78, 79, 82, 28.20334 + 81, 83, 80, 82, 81, 84, 82, 92, 84, 81, 79, 85, 85, 85, 80, 80, 28.20335 + 82, 80, 80, 83, 88, 83, 76, 80, 88, 93, 76, 79, 91, 89, 108, 127, 28.20336 + 137, 144, 148, 149, 151, 155, 158, 167, 167, 169, 171, 169, 167, 162, 158, 163, 28.20337 + 167, 173, 175, 176, 177, 178, 180, 173, 175, 179, 184, 188, 187, 181, 173, 176, 28.20338 + 173, 170, 167, 166, 166, 168, 168, 162, 167, 173, 174, 171, 168, 166, 166, 168, 28.20339 + 173, 177, 168, 159, 160, 167, 175, 177, 180, 183, 182, 177, 171, 166, 163, 166, 28.20340 + 165, 163, 160, 158, 156, 154, 154, 153, 154, 156, 160, 166, 170, 177, 180, 185, 28.20341 + 180, 179, 177, 176, 166, 162, 159, 168, 170, 177, 177, 180, 179, 183, 186, 190, 28.20342 + 196, 200, 198, 196, 196, 194, 190, 185, 192, 192, 188, 190, 199, 198, 189, 195, 28.20343 + 193, 186, 178, 177, 180, 180, 177, 164, 162, 160, 147, 128, 134, 146, 147, 167, 28.20344 + 166, 164, 163, 166, 165, 165, 162, 149, 132, 122, 69, 74, 90, 101, 92, 94, 28.20345 + 92, 89, 85, 83, 83, 83, 83, 87, 86, 91, 92, 97, 96, 99, 99, 91, 28.20346 + 95, 100, 75, 73, 74, 72, 71, 70, 73, 75, 73, 72, 71, 71, 71, 73, 28.20347 + 76, 78, 77, 77, 78, 76, 79, 78, 81, 79, 77, 73, 73, 72, 76, 75, 28.20348 + 73, 70, 81, 80, 74, 66, 67, 74, 78, 77, 81, 75, 81, 81, 90, 92, 28.20349 + 83, 105, 130, 140, 147, 150, 151, 152, 156, 159, 158, 159, 162, 166, 167, 164, 28.20350 + 159, 154, 158, 161, 166, 170, 174, 175, 174, 173, 173, 174, 176, 180, 184, 184, 28.20351 + 181, 175, 180, 176, 173, 171, 169, 169, 170, 170, 169, 168, 166, 162, 160, 162, 28.20352 + 167, 171, 168, 171, 174, 169, 167, 170, 176, 177, 183, 182, 180, 176, 172, 171, 28.20353 + 171, 173, 175, 174, 172, 171, 172, 174, 177, 179, 179, 178, 178, 178, 179, 181, 28.20354 + 183, 185, 189, 184, 183, 185, 185, 181, 179, 179, 180, 182, 184, 184, 183, 184, 28.20355 + 188, 191, 194, 199, 200, 196, 194, 195, 195, 193, 195, 200, 198, 191, 191, 197, 28.20356 + 196, 187, 191, 191, 186, 179, 177, 179, 176, 171, 162, 158, 154, 139, 121, 128, 28.20357 + 143, 147, 163, 162, 163, 163, 167, 168, 165, 162, 153, 140, 125, 79, 79, 98, 28.20358 + 102, 96, 95, 94, 94, 92, 90, 88, 85, 84, 87, 87, 86, 86, 87, 89, 28.20359 + 91, 92, 92, 93, 97, 71, 73, 74, 72, 72, 70, 71, 72, 75, 75, 74, 28.20360 + 74, 75, 76, 78, 80, 73, 73, 74, 74, 76, 76, 79, 79, 80, 79, 81, 28.20361 + 80, 79, 75, 71, 68, 73, 73, 68, 60, 58, 65, 70, 72, 69, 64, 77, 28.20362 + 80, 79, 70, 69, 107, 133, 143, 150, 153, 153, 154, 157, 159, 157, 159, 164, 28.20363 + 169, 171, 169, 164, 159, 150, 151, 156, 165, 174, 179, 179, 177, 175, 175, 175, 28.20364 + 177, 181, 183, 183, 180, 178, 175, 174, 172, 170, 169, 167, 167, 171, 168, 164, 28.20365 + 159, 157, 159, 165, 169, 165, 166, 169, 169, 172, 177, 179, 175, 180, 179, 178, 28.20366 + 174, 172, 172, 176, 179, 182, 180, 179, 179, 181, 186, 191, 195, 192, 190, 188, 28.20367 + 186, 184, 184, 184, 184, 187, 182, 180, 184, 186, 185, 186, 188, 191, 191, 190, 28.20368 + 188, 186, 187, 190, 193, 197, 200, 199, 194, 191, 194, 195, 194, 198, 201, 198, 28.20369 + 190, 191, 196, 195, 189, 188, 189, 186, 181, 179, 179, 174, 168, 166, 159, 153, 28.20370 + 138, 120, 128, 147, 154, 159, 158, 159, 161, 165, 166, 165, 162, 151, 144, 125, 28.20371 + 89, 76, 103, 99, 97, 97, 98, 99, 99, 97, 93, 89, 87, 91, 89, 86, 28.20372 + 84, 83, 85, 87, 89, 90, 91, 91, 65, 66, 70, 71, 72, 71, 72, 73, 28.20373 + 78, 77, 76, 74, 73, 73, 74, 73, 72, 73, 73, 74, 76, 78, 80, 81, 28.20374 + 76, 78, 78, 76, 70, 65, 61, 60, 70, 76, 79, 73, 69, 71, 70, 70, 28.20375 + 74, 69, 76, 71, 73, 72, 72, 106, 133, 144, 150, 154, 154, 154, 156, 158, 28.20376 + 162, 163, 166, 171, 175, 175, 172, 169, 157, 155, 155, 162, 172, 180, 181, 179, 28.20377 + 177, 176, 175, 176, 178, 182, 185, 184, 175, 175, 175, 174, 172, 170, 167, 165, 28.20378 + 168, 168, 168, 166, 164, 161, 160, 159, 158, 161, 166, 166, 170, 174, 176, 172, 28.20379 + 175, 177, 181, 181, 179, 176, 176, 176, 183, 183, 182, 182, 183, 186, 190, 192, 28.20380 + 189, 188, 186, 185, 184, 185, 186, 187, 188, 182, 179, 181, 182, 182, 184, 187, 28.20381 + 192, 192, 191, 190, 189, 189, 189, 190, 195, 198, 198, 192, 190, 192, 193, 191, 28.20382 + 191, 192, 189, 185, 187, 194, 195, 192, 187, 187, 185, 180, 179, 181, 177, 171, 28.20383 + 167, 159, 153, 141, 124, 130, 148, 155, 156, 156, 158, 161, 166, 167, 165, 161, 28.20384 + 154, 149, 127, 96, 71, 106, 98, 99, 98, 99, 100, 100, 99, 96, 93, 90, 28.20385 + 94, 92, 90, 88, 87, 87, 89, 90, 88, 86, 84, 69, 73, 77, 79, 78, 28.20386 + 77, 78, 78, 75, 75, 75, 73, 72, 72, 74, 71, 75, 76, 76, 78, 80, 28.20387 + 82, 84, 85, 82, 83, 83, 80, 76, 72, 71, 72, 83, 92, 96, 92, 88, 28.20388 + 85, 82, 79, 74, 73, 76, 70, 83, 95, 86, 102, 131, 140, 147, 151, 151, 28.20389 + 151, 152, 154, 160, 160, 161, 164, 168, 170, 170, 169, 172, 165, 159, 159, 165, 28.20390 + 170, 171, 170, 173, 172, 172, 171, 173, 176, 180, 183, 179, 179, 180, 179, 178, 28.20391 + 175, 172, 170, 168, 168, 169, 168, 166, 161, 155, 151, 148, 156, 163, 163, 164, 28.20392 + 168, 173, 174, 176, 178, 181, 181, 180, 178, 177, 177, 181, 182, 183, 185, 186, 28.20393 + 186, 186, 186, 186, 186, 185, 185, 186, 188, 190, 191, 192, 185, 181, 183, 184, 28.20394 + 184, 186, 189, 188, 189, 191, 193, 193, 192, 190, 188, 189, 194, 195, 191, 189, 28.20395 + 190, 189, 187, 187, 186, 184, 182, 185, 191, 193, 191, 184, 184, 180, 175, 176, 28.20396 + 179, 178, 174, 162, 154, 152, 143, 126, 128, 144, 150, 155, 156, 158, 161, 166, 28.20397 + 167, 164, 161, 158, 156, 132, 98, 70, 104, 97, 102, 95, 94, 94, 94, 93, 28.20398 + 92, 91, 91, 89, 90, 90, 90, 90, 89, 88, 88, 88, 86, 83, 75, 78, 28.20399 + 81, 81, 79, 77, 78, 78, 76, 77, 78, 81, 82, 85, 85, 84, 82, 81, 28.20400 + 83, 82, 86, 86, 90, 90, 94, 92, 94, 92, 95, 93, 95, 97, 94, 100, 28.20401 + 98, 92, 90, 90, 89, 85, 38, 61, 83, 70, 70, 80, 79, 102, 128, 138, 28.20402 + 146, 150, 151, 150, 151, 153, 161, 161, 161, 164, 167, 169, 168, 167, 167, 162, 28.20403 + 157, 156, 161, 167, 172, 173, 168, 169, 170, 170, 169, 171, 174, 177, 177, 177, 28.20404 + 178, 178, 177, 175, 172, 171, 173, 169, 165, 162, 161, 159, 157, 156, 143, 151, 28.20405 + 157, 157, 158, 165, 173, 177, 181, 180, 177, 176, 175, 176, 180, 183, 179, 181, 28.20406 + 184, 187, 188, 188, 187, 186, 185, 184, 183, 183, 183, 185, 187, 188, 188, 182, 28.20407 + 179, 181, 184, 184, 187, 190, 188, 189, 192, 195, 197, 195, 191, 187, 185, 190, 28.20408 + 192, 189, 188, 189, 188, 186, 190, 188, 185, 184, 185, 187, 187, 186, 181, 180, 28.20409 + 177, 172, 172, 176, 176, 172, 163, 155, 154, 149, 131, 130, 143, 149, 155, 157, 28.20410 + 158, 161, 166, 167, 165, 162, 154, 151, 132, 92, 67, 92, 89, 93, 93, 93, 28.20411 + 93, 94, 95, 95, 95, 96, 92, 93, 94, 95, 95, 94, 93, 90, 89, 88, 28.20412 + 86, 77, 79, 81, 81, 77, 75, 75, 78, 80, 82, 85, 87, 90, 93, 94, 28.20413 + 94, 90, 90, 91, 91, 94, 94, 97, 97, 91, 89, 91, 93, 98, 97, 94, 28.20414 + 90, 99, 102, 96, 90, 87, 89, 87, 82, 33, 50, 71, 64, 59, 61, 67, 28.20415 + 103, 126, 136, 145, 150, 151, 151, 152, 154, 160, 162, 165, 169, 171, 170, 166, 28.20416 + 162, 159, 158, 158, 159, 162, 167, 172, 175, 167, 170, 173, 173, 171, 170, 171, 28.20417 + 173, 174, 174, 174, 174, 173, 173, 172, 171, 176, 171, 165, 163, 164, 166, 166, 28.20418 + 165, 148, 150, 149, 147, 149, 158, 164, 165, 174, 174, 174, 173, 174, 177, 180, 28.20419 + 185, 177, 179, 180, 182, 184, 184, 184, 184, 183, 182, 181, 180, 180, 181, 182, 28.20420 + 183, 182, 177, 175, 178, 181, 181, 182, 186, 190, 190, 190, 193, 195, 194, 190, 28.20421 + 186, 186, 190, 190, 186, 185, 188, 190, 190, 191, 188, 186, 185, 185, 183, 181, 28.20422 + 180, 182, 183, 180, 176, 176, 177, 174, 168, 167, 157, 156, 151, 133, 130, 143, 28.20423 + 150, 159, 157, 158, 159, 163, 165, 165, 164, 149, 145, 137, 88, 71, 80, 83, 28.20424 + 81, 86, 86, 90, 93, 95, 95, 94, 93, 95, 95, 94, 94, 93, 93, 93, 28.20425 + 93, 87, 87, 87, 75, 77, 80, 81, 81, 79, 80, 82, 80, 80, 83, 86, 28.20426 + 88, 89, 90, 92, 98, 98, 100, 99, 102, 102, 105, 104, 105, 101, 104, 106, 28.20427 + 111, 107, 101, 93, 104, 104, 101, 97, 95, 94, 88, 79, 83, 56, 46, 50, 28.20428 + 75, 84, 74, 96, 124, 136, 145, 151, 152, 152, 154, 155, 156, 159, 165, 170, 28.20429 + 172, 168, 160, 154, 167, 168, 168, 166, 164, 162, 163, 164, 169, 173, 177, 178, 28.20430 + 175, 173, 173, 173, 176, 176, 176, 176, 176, 176, 176, 176, 174, 172, 170, 171, 28.20431 + 174, 175, 173, 171, 157, 152, 143, 138, 141, 151, 153, 150, 160, 165, 173, 178, 28.20432 + 180, 178, 180, 179, 177, 176, 175, 175, 175, 176, 177, 178, 185, 184, 183, 182, 28.20433 + 182, 183, 185, 186, 185, 180, 177, 180, 181, 180, 180, 183, 192, 190, 188, 188, 28.20434 + 190, 190, 187, 184, 188, 190, 189, 184, 183, 189, 193, 194, 188, 185, 183, 184, 28.20435 + 184, 181, 178, 177, 186, 188, 187, 183, 182, 181, 174, 166, 165, 153, 151, 146, 28.20436 + 127, 124, 138, 146, 161, 159, 159, 159, 163, 165, 166, 165, 152, 147, 149, 92, 28.20437 + 81, 82, 87, 79, 71, 76, 82, 87, 90, 89, 86, 84, 95, 93, 90, 87, 28.20438 + 85, 86, 88, 87, 82, 84, 86, 80, 82, 83, 83, 82, 80, 76, 74, 89, 28.20439 + 86, 75, 91, 85, 93, 90, 103, 103, 96, 89, 89, 96, 99, 98, 93, 105, 28.20440 + 112, 116, 108, 103, 104, 108, 107, 109, 105, 103, 100, 96, 91, 86, 84, 90, 28.20441 + 89, 84, 76, 70, 59, 64, 90, 122, 135, 139, 144, 152, 148, 144, 151, 153, 28.20442 + 158, 164, 167, 166, 163, 159, 158, 163, 164, 164, 163, 161, 161, 163, 165, 164, 28.20443 + 169, 175, 180, 181, 177, 172, 168, 169, 170, 172, 176, 178, 176, 171, 167, 167, 28.20444 + 174, 179, 176, 167, 161, 161, 164, 167, 162, 147, 143, 146, 141, 138, 147, 152, 28.20445 + 160, 171, 178, 177, 169, 169, 170, 170, 172, 178, 184, 180, 171, 170, 175, 185, 28.20446 + 180, 175, 175, 180, 184, 185, 185, 186, 181, 177, 177, 181, 186, 188, 188, 192, 28.20447 + 193, 192, 190, 187, 185, 186, 188, 190, 190, 189, 188, 188, 187, 186, 186, 188, 28.20448 + 187, 187, 188, 187, 184, 178, 174, 181, 177, 175, 178, 179, 175, 171, 172, 164, 28.20449 + 161, 156, 148, 133, 126, 131, 141, 155, 154, 156, 158, 162, 164, 164, 162, 144, 28.20450 + 141, 144, 71, 98, 83, 76, 87, 77, 76, 77, 81, 83, 83, 81, 78, 81, 28.20451 + 78, 75, 74, 75, 79, 83, 87, 79, 79, 81, 82, 82, 80, 80, 78, 76, 28.20452 + 72, 71, 73, 81, 75, 84, 76, 88, 81, 86, 112, 111, 104, 94, 88, 86, 28.20453 + 92, 96, 89, 93, 96, 94, 98, 103, 105, 100, 93, 94, 103, 110, 107, 95, 28.20454 + 87, 87, 67, 83, 90, 89, 95, 95, 93, 103, 120, 134, 138, 142, 149, 146, 28.20455 + 143, 150, 153, 157, 163, 165, 165, 162, 160, 160, 162, 164, 165, 165, 164, 164, 28.20456 + 165, 167, 161, 164, 169, 173, 176, 176, 175, 174, 175, 171, 166, 165, 167, 170, 28.20457 + 173, 174, 171, 165, 162, 166, 174, 175, 168, 160, 157, 165, 164, 154, 143, 127, 28.20458 + 122, 130, 141, 156, 161, 156, 164, 185, 185, 169, 172, 175, 180, 182, 175, 171, 28.20459 + 178, 190, 177, 177, 178, 178, 179, 181, 184, 186, 193, 188, 181, 179, 180, 183, 28.20460 + 184, 185, 186, 187, 188, 187, 186, 186, 188, 189, 190, 190, 189, 188, 188, 187, 28.20461 + 186, 186, 189, 188, 187, 185, 183, 178, 171, 166, 173, 169, 169, 173, 174, 171, 28.20462 + 167, 168, 168, 163, 156, 145, 132, 127, 135, 147, 154, 155, 159, 162, 165, 165, 28.20463 + 162, 158, 147, 145, 132, 81, 102, 86, 77, 82, 78, 77, 76, 78, 80, 80, 28.20464 + 79, 77, 80, 81, 82, 82, 80, 78, 76, 73, 77, 78, 80, 81, 80, 78, 28.20465 + 77, 76, 76, 75, 75, 71, 96, 99, 95, 71, 83, 84, 95, 86, 90, 92, 28.20466 + 90, 94, 96, 105, 108, 115, 112, 110, 106, 110, 109, 105, 93, 103, 94, 96, 28.20467 + 101, 93, 81, 78, 86, 84, 97, 94, 83, 89, 94, 90, 91, 120, 135, 140, 28.20468 + 142, 148, 146, 143, 150, 152, 156, 160, 163, 163, 162, 162, 162, 162, 164, 167, 28.20469 + 168, 167, 166, 166, 167, 163, 164, 165, 167, 169, 172, 174, 176, 177, 172, 165, 28.20470 + 161, 162, 166, 169, 171, 163, 167, 171, 171, 169, 168, 170, 173, 168, 165, 159, 28.20471 + 155, 153, 144, 129, 117, 123, 127, 142, 159, 165, 168, 179, 193, 180, 172, 167, 28.20472 + 169, 172, 171, 169, 169, 171, 176, 181, 182, 180, 181, 186, 190, 195, 190, 183, 28.20473 + 179, 179, 181, 184, 185, 185, 187, 188, 188, 187, 186, 188, 190, 190, 190, 189, 28.20474 + 188, 188, 187, 186, 186, 192, 191, 189, 187, 184, 179, 173, 169, 172, 170, 171, 28.20475 + 176, 178, 175, 171, 171, 175, 168, 157, 144, 129, 126, 136, 150, 151, 154, 161, 28.20476 + 164, 167, 164, 160, 156, 150, 149, 115, 98, 107, 89, 82, 81, 78, 74, 71, 28.20477 + 71, 74, 76, 77, 78, 75, 77, 79, 81, 82, 82, 81, 80, 78, 80, 80, 28.20478 + 75, 76, 74, 72, 72, 75, 76, 77, 75, 86, 80, 83, 67, 79, 78, 88, 28.20479 + 96, 93, 90, 98, 110, 113, 102, 90, 98, 99, 101, 107, 114, 119, 118, 113, 28.20480 + 120, 105, 100, 104, 98, 81, 76, 82, 78, 85, 81, 75, 78, 81, 78, 86, 28.20481 + 119, 137, 141, 141, 147, 147, 145, 152, 152, 155, 158, 160, 161, 162, 164, 165, 28.20482 + 163, 166, 169, 170, 168, 166, 165, 165, 170, 169, 168, 167, 167, 168, 168, 169, 28.20483 + 173, 172, 170, 169, 168, 166, 162, 160, 160, 168, 174, 170, 160, 156, 162, 170, 28.20484 + 170, 159, 151, 147, 148, 150, 137, 116, 110, 108, 122, 146, 156, 158, 166, 181, 28.20485 + 185, 179, 177, 179, 181, 179, 175, 171, 173, 176, 180, 181, 183, 186, 191, 195, 28.20486 + 191, 187, 181, 178, 178, 182, 187, 190, 190, 192, 193, 192, 189, 187, 188, 188, 28.20487 + 189, 189, 189, 188, 188, 187, 187, 187, 187, 186, 186, 186, 186, 184, 180, 177, 28.20488 + 177, 174, 175, 180, 182, 178, 174, 174, 178, 171, 159, 145, 129, 124, 133, 147, 28.20489 + 153, 157, 163, 165, 166, 163, 160, 156, 151, 148, 99, 112, 108, 96, 91, 87, 28.20490 + 79, 73, 70, 69, 72, 76, 79, 81, 78, 77, 75, 74, 75, 79, 82, 85, 28.20491 + 79, 81, 84, 66, 65, 61, 58, 58, 60, 61, 63, 80, 64, 52, 82, 90, 28.20492 + 97, 80, 81, 104, 102, 100, 108, 118, 120, 109, 98, 96, 98, 103, 109, 114, 28.20493 + 117, 119, 119, 115, 105, 110, 124, 122, 100, 80, 72, 73, 76, 81, 89, 84, 28.20494 + 63, 51, 64, 111, 133, 138, 136, 141, 144, 144, 151, 151, 154, 157, 159, 160, 28.20495 + 161, 164, 166, 164, 166, 169, 169, 166, 163, 161, 161, 172, 172, 171, 170, 169, 28.20496 + 166, 164, 163, 169, 169, 170, 172, 172, 169, 164, 160, 168, 162, 157, 157, 162, 28.20497 + 162, 157, 151, 156, 158, 164, 148, 123, 120, 117, 98, 103, 122, 124, 112, 133, 28.20498 + 174, 182, 160, 167, 174, 182, 180, 173, 172, 178, 185, 176, 174, 174, 177, 184, 28.20499 + 190, 193, 194, 188, 185, 181, 178, 178, 181, 186, 190, 190, 192, 193, 193, 190, 28.20500 + 189, 188, 189, 189, 189, 188, 188, 188, 188, 187, 187, 181, 180, 180, 181, 182, 28.20501 + 181, 179, 176, 176, 173, 173, 177, 177, 173, 168, 168, 172, 166, 157, 145, 130, 28.20502 + 124, 132, 144, 155, 158, 163, 164, 163, 161, 158, 157, 148, 144, 96, 120, 109, 28.20503 + 105, 100, 96, 84, 78, 73, 70, 71, 73, 75, 75, 83, 81, 77, 74, 71, 28.20504 + 71, 72, 75, 79, 81, 82, 57, 55, 53, 47, 46, 46, 46, 47, 59, 57, 28.20505 + 65, 104, 103, 98, 83, 98, 95, 101, 106, 104, 105, 106, 115, 120, 118, 114, 28.20506 + 116, 116, 117, 111, 114, 116, 113, 106, 107, 110, 107, 92, 74, 60, 85, 79, 28.20507 + 79, 85, 77, 49, 42, 63, 104, 128, 134, 131, 136, 141, 143, 150, 152, 155, 28.20508 + 159, 161, 161, 162, 164, 166, 165, 167, 169, 168, 165, 163, 162, 162, 168, 169, 28.20509 + 171, 172, 171, 169, 167, 165, 169, 167, 166, 166, 169, 171, 172, 172, 165, 166, 28.20510 + 166, 167, 166, 166, 165, 164, 167, 164, 170, 154, 125, 112, 89, 46, 59, 81, 28.20511 + 87, 78, 82, 115, 149, 163, 176, 171, 165, 164, 171, 177, 175, 168, 175, 172, 28.20512 + 171, 176, 185, 191, 193, 192, 192, 190, 187, 182, 179, 179, 182, 185, 183, 186, 28.20513 + 189, 190, 190, 189, 190, 191, 188, 188, 188, 188, 188, 188, 188, 188, 186, 184, 28.20514 + 182, 182, 182, 180, 177, 175, 178, 173, 172, 174, 175, 171, 167, 168, 164, 160, 28.20515 + 154, 145, 131, 126, 133, 144, 154, 158, 163, 163, 162, 159, 158, 158, 144, 136, 28.20516 + 108, 124, 110, 113, 106, 104, 95, 88, 82, 78, 75, 73, 71, 69, 79, 82, 28.20517 + 85, 87, 87, 84, 81, 80, 80, 81, 80, 58, 58, 57, 52, 53, 53, 53, 28.20518 + 54, 45, 61, 77, 104, 88, 85, 79, 99, 104, 109, 111, 102, 94, 91, 101, 28.20519 + 108, 97, 90, 92, 98, 109, 110, 116, 120, 114, 112, 108, 97, 87, 82, 76, 28.20520 + 68, 73, 67, 63, 69, 77, 71, 76, 98, 101, 127, 134, 130, 135, 142, 146, 28.20521 + 153, 154, 157, 161, 163, 163, 163, 164, 165, 165, 167, 168, 167, 166, 165, 166, 28.20522 + 168, 167, 168, 169, 170, 171, 170, 169, 168, 171, 168, 165, 164, 167, 170, 172, 28.20523 + 173, 163, 174, 184, 182, 172, 167, 173, 181, 182, 165, 165, 158, 140, 130, 87, 28.20524 + 12, 23, 19, 30, 44, 36, 33, 71, 122, 169, 168, 169, 173, 181, 185, 176, 28.20525 + 163, 171, 174, 179, 185, 190, 193, 193, 193, 196, 196, 193, 188, 182, 179, 180, 28.20526 + 182, 182, 185, 189, 191, 191, 190, 190, 191, 188, 188, 188, 188, 188, 188, 188, 28.20527 + 188, 191, 189, 186, 184, 183, 181, 177, 175, 180, 175, 172, 175, 176, 174, 172, 28.20528 + 174, 166, 162, 155, 145, 130, 124, 131, 143, 147, 155, 163, 164, 163, 159, 157, 28.20529 + 156, 139, 128, 128, 128, 113, 117, 107, 106, 98, 93, 89, 85, 82, 78, 73, 28.20530 + 69, 71, 75, 82, 88, 92, 93, 92, 93, 83, 84, 82, 66, 66, 68, 68, 28.20531 + 69, 73, 74, 76, 85, 84, 75, 92, 95, 105, 89, 84, 88, 91, 91, 95, 28.20532 + 101, 104, 107, 108, 98, 83, 79, 87, 98, 101, 100, 100, 91, 108, 117, 109, 28.20533 + 100, 100, 97, 90, 77, 82, 81, 83, 93, 92, 85, 91, 100, 127, 137, 130, 28.20534 + 138, 144, 151, 155, 154, 156, 162, 163, 165, 164, 164, 165, 164, 164, 167, 167, 28.20535 + 167, 168, 171, 174, 169, 169, 168, 168, 168, 168, 168, 168, 171, 169, 168, 167, 28.20536 + 167, 167, 165, 163, 172, 172, 173, 176, 180, 179, 174, 169, 169, 162, 170, 165, 28.20537 + 142, 136, 100, 31, 72, 47, 36, 42, 52, 51, 53, 60, 94, 134, 174, 177, 28.20538 + 159, 152, 161, 173, 169, 178, 189, 196, 197, 195, 195, 194, 197, 196, 196, 190, 28.20539 + 185, 179, 181, 181, 188, 189, 194, 192, 193, 188, 189, 189, 186, 186, 186, 186, 28.20540 + 186, 186, 188, 188, 187, 185, 182, 180, 179, 178, 175, 172, 178, 173, 170, 172, 28.20541 + 174, 173, 174, 177, 177, 170, 158, 145, 128, 120, 127, 138, 144, 153, 164, 167, 28.20542 + 163, 156, 151, 150, 132, 119, 141, 129, 115, 122, 106, 109, 101, 102, 101, 100, 28.20543 + 98, 94, 89, 83, 80, 79, 78, 78, 79, 80, 84, 86, 90, 93, 90, 87, 28.20544 + 86, 85, 84, 81, 81, 80, 80, 85, 85, 82, 81, 82, 84, 91, 97, 99, 28.20545 + 101, 90, 84, 90, 91, 90, 97, 89, 81, 76, 73, 73, 74, 79, 81, 97, 28.20546 + 91, 88, 83, 78, 77, 85, 93, 86, 78, 79, 89, 92, 83, 79, 87, 100, 28.20547 + 126, 131, 120, 129, 139, 145, 144, 150, 154, 162, 161, 159, 156, 157, 159, 160, 28.20548 + 162, 168, 170, 169, 168, 168, 169, 167, 168, 171, 171, 172, 172, 171, 169, 162, 28.20549 + 161, 160, 158, 160, 161, 164, 165, 162, 170, 176, 177, 173, 168, 164, 163, 174, 28.20550 + 158, 159, 155, 153, 142, 98, 70, 119, 104, 80, 61, 48, 45, 47, 47, 36, 28.20551 + 65, 72, 127, 144, 168, 181, 175, 184, 190, 192, 190, 188, 191, 191, 187, 199, 28.20552 + 196, 197, 190, 183, 175, 182, 189, 182, 181, 184, 184, 187, 186, 189, 190, 184, 28.20553 + 185, 186, 186, 184, 184, 187, 189, 191, 183, 176, 178, 182, 179, 176, 175, 177, 28.20554 + 179, 174, 175, 182, 176, 170, 177, 176, 161, 167, 144, 137, 121, 140, 140, 148, 28.20555 + 154, 160, 154, 148, 156, 157, 138, 113, 127, 132, 115, 108, 118, 121, 116, 127, 28.20556 + 135, 134, 126, 116, 110, 109, 110, 104, 95, 89, 86, 83, 77, 80, 91, 92, 28.20557 + 118, 96, 82, 83, 82, 82, 81, 80, 81, 80, 75, 77, 80, 81, 82, 83, 28.20558 + 84, 87, 84, 91, 86, 83, 88, 84, 82, 88, 73, 79, 85, 90, 90, 86, 28.20559 + 84, 84, 77, 73, 75, 81, 85, 80, 78, 77, 79, 77, 82, 90, 90, 84, 28.20560 + 90, 105, 100, 125, 129, 121, 128, 139, 142, 144, 150, 155, 161, 161, 157, 154, 28.20561 + 157, 158, 159, 160, 164, 166, 168, 167, 168, 169, 170, 171, 173, 173, 172, 171, 28.20562 + 170, 167, 164, 160, 160, 159, 159, 160, 163, 163, 162, 165, 171, 171, 168, 166, 28.20563 + 166, 167, 174, 154, 156, 148, 151, 144, 127, 71, 107, 111, 114, 116, 107, 91, 28.20564 + 68, 49, 32, 29, 38, 125, 170, 183, 188, 190, 189, 195, 196, 194, 192, 195, 28.20565 + 194, 193, 191, 193, 195, 194, 187, 179, 180, 187, 180, 180, 181, 181, 181, 181, 28.20566 + 181, 181, 180, 182, 183, 182, 183, 182, 183, 185, 190, 183, 178, 180, 184, 181, 28.20567 + 177, 176, 169, 175, 173, 172, 176, 168, 168, 178, 175, 160, 163, 138, 127, 113, 28.20568 + 136, 141, 172, 171, 170, 158, 143, 143, 140, 122, 132, 125, 126, 136, 130, 118, 28.20569 + 118, 135, 142, 119, 101, 102, 109, 110, 112, 116, 124, 109, 95, 90, 87, 83, 28.20570 + 85, 95, 100, 121, 109, 78, 79, 80, 80, 79, 78, 78, 77, 82, 82, 82, 28.20571 + 81, 80, 79, 80, 79, 82, 77, 66, 67, 85, 89, 79, 74, 72, 77, 80, 28.20572 + 79, 74, 74, 78, 81, 90, 78, 71, 76, 85, 86, 83, 81, 87, 89, 95, 28.20573 + 93, 78, 61, 61, 75, 98, 124, 128, 121, 128, 137, 142, 145, 152, 157, 161, 28.20574 + 162, 160, 157, 160, 159, 158, 161, 165, 167, 167, 167, 170, 171, 175, 175, 175, 28.20575 + 174, 173, 171, 171, 167, 165, 163, 162, 160, 159, 159, 162, 162, 163, 163, 166, 28.20576 + 165, 165, 165, 168, 169, 161, 146, 154, 146, 149, 139, 117, 45, 111, 104, 94, 28.20577 + 91, 92, 96, 95, 91, 108, 79, 67, 128, 161, 162, 161, 166, 185, 191, 192, 28.20578 + 190, 188, 192, 191, 190, 185, 189, 196, 199, 193, 183, 181, 184, 185, 185, 185, 28.20579 + 184, 183, 182, 180, 179, 179, 180, 181, 180, 181, 180, 181, 183, 188, 182, 180, 28.20580 + 183, 186, 182, 177, 176, 173, 179, 179, 176, 176, 166, 165, 177, 176, 165, 165, 28.20581 + 139, 123, 116, 142, 150, 146, 145, 152, 156, 144, 137, 131, 118, 125, 132, 136, 28.20582 + 132, 133, 138, 135, 135, 130, 104, 89, 102, 115, 111, 108, 114, 125, 119, 114, 28.20583 + 113, 110, 105, 101, 100, 103, 110, 106, 77, 76, 78, 78, 80, 78, 76, 76, 28.20584 + 86, 82, 77, 71, 70, 72, 77, 79, 65, 78, 79, 71, 67, 64, 72, 89, 28.20585 + 77, 80, 80, 77, 77, 82, 88, 88, 80, 66, 57, 59, 67, 68, 68, 69, 28.20586 + 69, 75, 83, 86, 76, 64, 63, 74, 96, 121, 125, 121, 128, 136, 140, 145, 28.20587 + 151, 154, 159, 161, 161, 162, 164, 165, 161, 162, 167, 167, 169, 170, 172, 173, 28.20588 + 175, 176, 176, 175, 174, 173, 173, 171, 167, 164, 162, 160, 158, 160, 161, 161, 28.20589 + 165, 164, 165, 163, 164, 164, 166, 165, 151, 145, 148, 139, 141, 139, 83, 61, 28.20590 + 106, 99, 93, 91, 96, 98, 97, 95, 92, 86, 90, 124, 154, 173, 190, 201, 28.20591 + 181, 186, 187, 185, 183, 187, 187, 186, 185, 189, 195, 199, 194, 184, 180, 182, 28.20592 + 186, 186, 187, 186, 185, 182, 180, 179, 178, 180, 181, 180, 180, 179, 180, 181, 28.20593 + 185, 181, 181, 185, 188, 182, 177, 176, 182, 185, 181, 177, 178, 169, 164, 174, 28.20594 + 174, 168, 164, 141, 119, 121, 146, 157, 160, 151, 152, 155, 141, 130, 126, 120, 28.20595 + 123, 135, 136, 127, 130, 142, 139, 126, 123, 116, 114, 119, 118, 109, 113, 124, 28.20596 + 123, 126, 124, 124, 120, 115, 112, 111, 107, 100, 101, 75, 74, 75, 75, 77, 28.20597 + 78, 77, 78, 72, 70, 66, 65, 71, 77, 82, 85, 84, 83, 75, 73, 82, 28.20598 + 84, 78, 80, 67, 75, 82, 90, 99, 105, 99, 89, 91, 90, 94, 98, 97, 28.20599 + 90, 82, 81, 73, 73, 75, 78, 78, 76, 79, 87, 93, 117, 123, 121, 131, 28.20600 + 137, 139, 145, 150, 153, 158, 161, 164, 167, 169, 171, 165, 166, 170, 170, 171, 28.20601 + 172, 174, 176, 174, 175, 176, 176, 176, 176, 175, 174, 169, 168, 166, 164, 163, 28.20602 + 165, 166, 166, 170, 169, 167, 166, 166, 164, 162, 156, 144, 143, 136, 124, 125, 28.20603 + 136, 49, 103, 96, 94, 93, 93, 94, 89, 81, 75, 93, 97, 121, 142, 162, 28.20604 + 162, 168, 175, 186, 191, 190, 188, 185, 189, 189, 188, 190, 190, 194, 195, 190, 28.20605 + 182, 179, 181, 180, 181, 182, 182, 182, 180, 178, 176, 179, 180, 181, 180, 180, 28.20606 + 179, 180, 181, 182, 180, 181, 186, 188, 182, 178, 177, 184, 182, 174, 172, 180, 28.20607 + 173, 166, 171, 165, 165, 159, 140, 111, 117, 134, 141, 157, 141, 134, 131, 123, 28.20608 + 125, 136, 141, 143, 127, 128, 142, 144, 130, 124, 134, 134, 138, 134, 118, 109, 28.20609 + 111, 123, 132, 129, 131, 131, 121, 111, 110, 115, 118, 110, 106, 108, 75, 72, 28.20610 + 72, 73, 75, 77, 77, 79, 72, 72, 74, 80, 87, 89, 86, 83, 91, 84, 28.20611 + 75, 81, 100, 100, 81, 69, 81, 84, 86, 85, 94, 101, 94, 82, 90, 91, 28.20612 + 93, 93, 87, 80, 82, 86, 104, 95, 84, 75, 73, 74, 74, 78, 92, 113, 28.20613 + 119, 121, 131, 137, 139, 147, 150, 152, 156, 160, 165, 169, 171, 172, 168, 170, 28.20614 + 171, 172, 172, 172, 174, 176, 173, 174, 175, 176, 176, 176, 176, 174, 174, 171, 28.20615 + 169, 168, 169, 170, 171, 172, 172, 170, 168, 167, 166, 163, 158, 149, 130, 135, 28.20616 + 135, 123, 118, 110, 23, 94, 91, 86, 80, 75, 77, 81, 87, 93, 98, 82, 28.20617 + 114, 142, 175, 169, 173, 190, 190, 194, 192, 189, 186, 189, 189, 188, 193, 190, 28.20618 + 190, 190, 186, 180, 179, 182, 179, 180, 182, 184, 183, 182, 180, 178, 179, 180, 28.20619 + 181, 180, 179, 178, 179, 180, 182, 180, 183, 187, 189, 183, 180, 181, 184, 180, 28.20620 + 171, 172, 184, 181, 173, 175, 165, 166, 155, 138, 105, 114, 122, 126, 124, 120, 28.20621 + 125, 131, 130, 136, 145, 143, 134, 129, 131, 140, 144, 142, 140, 144, 141, 146, 28.20622 + 141, 129, 127, 133, 132, 122, 128, 137, 143, 134, 123, 114, 111, 108, 106, 114, 28.20623 + 117, 74, 70, 68, 69, 69, 71, 77, 80, 85, 85, 87, 92, 97, 96, 91, 28.20624 + 85, 68, 90, 101, 93, 82, 71, 78, 99, 102, 103, 97, 87, 89, 99, 100, 28.20625 + 94, 104, 102, 95, 91, 86, 85, 95, 105, 94, 89, 85, 83, 83, 85, 84, 28.20626 + 84, 89, 107, 115, 118, 130, 135, 140, 149, 154, 154, 157, 161, 167, 171, 172, 28.20627 + 173, 171, 173, 172, 171, 170, 170, 172, 174, 173, 174, 174, 174, 174, 173, 173, 28.20628 + 172, 172, 171, 170, 169, 170, 171, 172, 173, 173, 169, 166, 164, 163, 160, 155, 28.20629 + 147, 124, 128, 130, 118, 112, 77, 51, 75, 82, 87, 92, 96, 98, 97, 99, 28.20630 + 101, 114, 98, 130, 139, 171, 170, 176, 192, 190, 194, 192, 187, 183, 186, 186, 28.20631 + 185, 190, 187, 186, 187, 185, 180, 179, 183, 181, 183, 185, 186, 186, 184, 181, 28.20632 + 179, 178, 179, 179, 178, 177, 176, 176, 178, 184, 183, 185, 189, 190, 185, 184, 28.20633 + 186, 186, 183, 175, 175, 182, 178, 173, 179, 169, 169, 151, 138, 102, 117, 122, 28.20634 + 127, 136, 143, 152, 152, 143, 144, 141, 125, 119, 134, 137, 131, 137, 153, 156, 28.20635 + 148, 143, 146, 146, 147, 149, 148, 139, 129, 133, 139, 143, 138, 131, 126, 116, 28.20636 + 104, 108, 112, 109, 73, 67, 66, 65, 67, 70, 75, 79, 85, 80, 81, 83, 28.20637 + 93, 97, 98, 94, 101, 90, 72, 70, 89, 96, 91, 91, 76, 88, 93, 91, 28.20638 + 92, 98, 98, 91, 87, 88, 89, 92, 88, 85, 86, 92, 88, 94, 99, 103, 28.20639 + 100, 94, 83, 76, 87, 104, 113, 118, 129, 135, 138, 150, 155, 157, 159, 161, 28.20640 + 167, 170, 170, 170, 172, 173, 171, 170, 168, 168, 170, 171, 175, 175, 175, 172, 28.20641 + 173, 170, 168, 167, 168, 167, 166, 166, 167, 168, 170, 172, 170, 166, 163, 158, 28.20642 + 159, 156, 155, 148, 138, 129, 122, 98, 97, 57, 116, 100, 94, 95, 93, 86, 28.20643 + 80, 78, 83, 89, 90, 106, 157, 143, 167, 178, 182, 180, 193, 197, 194, 188, 28.20644 + 184, 186, 186, 185, 187, 184, 184, 186, 185, 181, 180, 183, 179, 181, 183, 184, 28.20645 + 182, 180, 176, 174, 176, 177, 178, 176, 176, 174, 174, 176, 187, 186, 188, 191, 28.20646 + 192, 187, 187, 190, 184, 184, 177, 173, 175, 167, 163, 172, 164, 164, 144, 132, 28.20647 + 98, 119, 126, 130, 131, 134, 136, 125, 119, 133, 143, 134, 139, 129, 130, 142, 28.20648 + 143, 133, 135, 151, 151, 143, 143, 145, 141, 138, 146, 156, 148, 137, 122, 108, 28.20649 + 110, 119, 123, 122, 115, 110, 98, 73, 69, 71, 71, 73, 74, 76, 78, 85, 28.20650 + 83, 85, 74, 64, 69, 77, 70, 58, 72, 80, 81, 85, 80, 80, 90, 99, 28.20651 + 95, 96, 103, 97, 79, 69, 75, 97, 97, 92, 88, 87, 89, 93, 98, 88, 28.20652 + 93, 97, 101, 100, 101, 105, 108, 93, 100, 113, 122, 127, 132, 135, 140, 155, 28.20653 + 156, 160, 161, 164, 168, 175, 179, 172, 171, 170, 169, 169, 170, 170, 171, 170, 28.20654 + 168, 169, 168, 171, 171, 172, 173, 166, 163, 169, 170, 161, 163, 168, 167, 163, 28.20655 + 166, 168, 160, 158, 154, 152, 145, 146, 111, 125, 110, 79, 104, 121, 99, 115, 28.20656 + 112, 106, 102, 99, 96, 96, 96, 80, 117, 146, 154, 165, 170, 176, 182, 189, 28.20657 + 192, 192, 191, 185, 184, 184, 187, 196, 191, 185, 183, 183, 182, 179, 175, 176, 28.20658 + 178, 181, 183, 183, 182, 180, 179, 184, 180, 176, 176, 181, 183, 181, 179, 192, 28.20659 + 191, 190, 191, 193, 190, 184, 179, 188, 185, 180, 174, 170, 168, 167, 168, 164, 28.20660 + 142, 150, 121, 73, 127, 125, 138, 132, 137, 138, 138, 133, 130, 132, 136, 143, 28.20661 + 146, 148, 150, 148, 145, 150, 157, 148, 141, 135, 137, 141, 142, 137, 128, 131, 28.20662 + 129, 124, 116, 99, 87, 91, 110, 114, 114, 109, 75, 72, 71, 73, 72, 73, 28.20663 + 76, 78, 83, 81, 84, 80, 73, 80, 88, 80, 66, 73, 69, 71, 81, 88, 28.20664 + 93, 107, 91, 95, 95, 93, 92, 93, 92, 91, 85, 94, 100, 101, 97, 89, 28.20665 + 85, 81, 91, 99, 113, 117, 110, 95, 79, 67, 101, 96, 98, 108, 117, 120, 28.20666 + 125, 134, 146, 151, 156, 161, 164, 166, 170, 170, 174, 173, 172, 171, 171, 171, 28.20667 + 172, 171, 169, 168, 168, 166, 165, 163, 160, 160, 173, 166, 172, 172, 170, 170, 28.20668 + 174, 166, 169, 165, 158, 151, 149, 150, 145, 141, 131, 128, 131, 108, 99, 113, 28.20669 + 114, 119, 119, 119, 118, 115, 112, 108, 106, 100, 91, 123, 149, 156, 168, 173, 28.20670 + 178, 182, 188, 190, 191, 192, 189, 188, 186, 187, 186, 185, 184, 184, 184, 181, 28.20671 + 178, 175, 179, 178, 177, 176, 176, 177, 179, 180, 182, 176, 169, 167, 172, 180, 28.20672 + 188, 192, 194, 194, 193, 189, 186, 183, 182, 182, 184, 179, 172, 170, 171, 171, 28.20673 + 170, 166, 179, 157, 152, 106, 79, 122, 116, 122, 123, 125, 124, 125, 129, 142, 28.20674 + 158, 174, 161, 158, 159, 163, 162, 158, 157, 159, 148, 143, 141, 140, 141, 142, 28.20675 + 142, 139, 139, 133, 126, 118, 100, 80, 71, 78, 110, 140, 132, 79, 75, 75, 28.20676 + 76, 77, 79, 78, 80, 86, 81, 85, 86, 84, 90, 95, 87, 80, 77, 64, 28.20677 + 59, 67, 71, 70, 79, 86, 97, 101, 94, 90, 95, 89, 78, 94, 89, 77, 28.20678 + 66, 63, 73, 91, 103, 113, 105, 92, 80, 80, 91, 108, 119, 91, 83, 88, 28.20679 + 101, 113, 118, 129, 141, 140, 147, 157, 162, 166, 166, 166, 166, 173, 171, 171, 28.20680 + 170, 170, 169, 169, 168, 161, 161, 164, 165, 163, 161, 159, 158, 167, 158, 162, 28.20681 + 164, 164, 166, 166, 155, 161, 160, 157, 155, 155, 151, 136, 123, 127, 141, 122, 28.20682 + 93, 115, 123, 105, 130, 129, 129, 131, 131, 129, 123, 119, 114, 102, 129, 149, 28.20683 + 156, 170, 175, 178, 181, 186, 187, 189, 192, 193, 192, 187, 184, 176, 180, 184, 28.20684 + 185, 184, 180, 177, 176, 179, 179, 177, 176, 176, 177, 178, 178, 172, 175, 179, 28.20685 + 182, 185, 187, 189, 190, 198, 199, 197, 191, 186, 184, 187, 192, 185, 177, 170, 28.20686 + 169, 173, 175, 171, 165, 157, 146, 138, 84, 97, 130, 122, 122, 128, 130, 124, 28.20687 + 116, 109, 106, 109, 114, 148, 147, 148, 157, 163, 161, 159, 156, 148, 150, 150, 28.20688 + 149, 145, 143, 141, 141, 111, 103, 97, 97, 93, 82, 69, 72, 96, 137, 132, 28.20689 + 81, 79, 80, 80, 82, 85, 85, 87, 92, 86, 90, 91, 90, 93, 95, 86, 28.20690 + 92, 93, 84, 77, 83, 80, 75, 78, 63, 71, 75, 77, 81, 91, 93, 91, 28.20691 + 93, 92, 88, 85, 79, 75, 69, 65, 74, 82, 93, 99, 97, 88, 75, 67, 28.20692 + 68, 75, 84, 87, 95, 109, 121, 126, 135, 142, 152, 159, 161, 163, 163, 163, 28.20693 + 169, 166, 168, 166, 166, 164, 164, 163, 158, 157, 158, 156, 156, 154, 153, 155, 28.20694 + 164, 158, 162, 165, 162, 163, 165, 155, 169, 164, 154, 144, 143, 149, 148, 147, 28.20695 + 133, 133, 104, 81, 114, 127, 106, 125, 128, 130, 132, 132, 131, 125, 121, 117, 28.20696 + 109, 129, 146, 154, 170, 175, 177, 181, 186, 186, 187, 192, 194, 192, 184, 178, 28.20697 + 176, 180, 184, 185, 181, 178, 178, 179, 178, 180, 182, 183, 183, 181, 179, 177, 28.20698 + 173, 179, 186, 189, 189, 186, 185, 186, 199, 198, 195, 191, 190, 189, 191, 193, 28.20699 + 187, 182, 177, 174, 174, 172, 169, 165, 156, 154, 146, 78, 114, 123, 112, 100, 28.20700 + 105, 110, 118, 121, 126, 128, 131, 134, 123, 124, 126, 133, 139, 138, 138, 139, 28.20701 + 132, 133, 136, 136, 131, 124, 116, 110, 114, 105, 94, 92, 91, 85, 75, 76, 28.20702 + 92, 114, 115, 82, 81, 82, 83, 87, 88, 90, 91, 93, 86, 90, 93, 89, 28.20703 + 91, 93, 85, 74, 83, 85, 86, 95, 93, 93, 100, 110, 94, 79, 71, 61, 28.20704 + 53, 54, 60, 69, 72, 81, 94, 102, 93, 72, 53, 84, 80, 74, 71, 72, 28.20705 + 77, 82, 86, 85, 104, 107, 87, 84, 102, 114, 111, 126, 133, 140, 146, 150, 28.20706 + 155, 157, 159, 164, 162, 164, 163, 163, 160, 159, 157, 159, 156, 151, 147, 146, 28.20707 + 145, 144, 147, 152, 151, 158, 158, 152, 152, 157, 152, 153, 160, 165, 161, 153, 28.20708 + 148, 142, 137, 121, 108, 104, 95, 105, 121, 113, 117, 116, 116, 117, 114, 114, 28.20709 + 111, 110, 109, 109, 130, 145, 155, 173, 177, 181, 186, 188, 188, 187, 191, 191, 28.20710 + 189, 180, 175, 183, 185, 185, 182, 178, 177, 179, 183, 182, 182, 182, 182, 182, 28.20711 + 181, 181, 181, 185, 183, 179, 174, 173, 177, 186, 194, 200, 195, 191, 190, 194, 28.20712 + 193, 187, 181, 181, 182, 181, 177, 171, 168, 170, 169, 154, 156, 142, 73, 118, 28.20713 + 117, 118, 108, 129, 127, 118, 111, 105, 103, 103, 105, 117, 115, 116, 116, 112, 28.20714 + 109, 112, 117, 122, 117, 114, 113, 113, 110, 101, 94, 97, 94, 94, 93, 91, 28.20715 + 89, 85, 85, 88, 89, 84, 81, 81, 83, 85, 86, 88, 91, 92, 92, 83, 28.20716 + 88, 94, 90, 90, 96, 92, 75, 83, 78, 76, 81, 80, 81, 90, 89, 81, 28.20717 + 83, 91, 90, 80, 77, 80, 63, 52, 47, 54, 66, 73, 71, 67, 44, 49, 28.20718 + 60, 73, 85, 93, 97, 99, 98, 114, 108, 81, 73, 94, 110, 107, 122, 127, 28.20719 + 134, 140, 145, 151, 158, 159, 159, 160, 160, 159, 159, 157, 155, 152, 151, 149, 28.20720 + 146, 145, 145, 144, 146, 148, 145, 145, 152, 153, 145, 145, 154, 151, 143, 154, 28.20721 + 163, 156, 140, 123, 108, 96, 98, 88, 115, 116, 100, 110, 115, 116, 110, 109, 28.20722 + 107, 103, 102, 101, 101, 102, 111, 132, 147, 159, 177, 180, 184, 192, 191, 191, 28.20723 + 189, 189, 188, 186, 180, 177, 190, 188, 184, 180, 177, 178, 181, 184, 186, 183, 28.20724 + 178, 175, 175, 179, 185, 189, 183, 182, 180, 179, 182, 186, 191, 196, 206, 199, 28.20725 + 194, 195, 201, 198, 187, 176, 171, 176, 179, 177, 169, 167, 170, 174, 148, 144, 28.20726 + 122, 64, 108, 108, 122, 120, 119, 121, 121, 123, 127, 126, 124, 123, 114, 113, 28.20727 + 114, 114, 109, 105, 111, 119, 96, 86, 73, 70, 74, 78, 79, 77, 81, 90, 28.20728 + 102, 105, 106, 105, 101, 95, 97, 97, 85, 87, 88, 88, 89, 90, 90, 93, 28.20729 + 93, 94, 86, 91, 97, 91, 90, 97, 99, 105, 107, 96, 89, 91, 87, 83, 28.20730 + 85, 95, 99, 107, 112, 108, 97, 81, 67, 69, 59, 53, 50, 47, 41, 33, 28.20731 + 28, 36, 39, 47, 57, 68, 73, 73, 74, 81, 87, 82, 72, 73, 86, 96, 28.20732 + 97, 112, 119, 126, 134, 140, 145, 152, 155, 153, 151, 152, 152, 152, 149, 148, 28.20733 + 146, 138, 137, 139, 139, 136, 132, 130, 130, 135, 131, 135, 137, 133, 136, 145, 28.20734 + 141, 143, 138, 124, 104, 94, 98, 106, 107, 94, 85, 107, 107, 96, 103, 104, 28.20735 + 109, 106, 105, 104, 102, 100, 97, 96, 101, 109, 133, 150, 162, 177, 178, 182, 28.20736 + 193, 193, 193, 191, 189, 185, 185, 184, 186, 191, 187, 181, 178, 178, 180, 182, 28.20737 + 183, 183, 182, 180, 180, 181, 183, 187, 189, 178, 181, 187, 193, 199, 199, 195, 28.20738 + 192, 200, 197, 194, 196, 200, 197, 189, 182, 171, 174, 177, 176, 171, 171, 172, 28.20739 + 173, 166, 150, 117, 71, 98, 93, 103, 93, 90, 95, 101, 109, 113, 112, 105, 28.20740 + 99, 107, 105, 106, 109, 111, 109, 112, 116, 114, 106, 98, 95, 97, 103, 107, 28.20741 + 111, 119, 128, 133, 131, 126, 122, 112, 97, 112, 116, 105, 94, 94, 94, 93, 28.20742 + 95, 95, 94, 96, 100, 92, 97, 102, 93, 89, 97, 102, 104, 105, 96, 97, 28.20743 + 107, 104, 93, 91, 95, 100, 97, 86, 84, 89, 88, 75, 72, 65, 65, 60, 28.20744 + 53, 50, 49, 53, 54, 52, 54, 59, 67, 74, 80, 82, 91, 85, 84, 97, 28.20745 + 105, 100, 96, 99, 92, 97, 107, 115, 122, 127, 133, 136, 139, 139, 139, 140, 28.20746 + 140, 137, 134, 132, 128, 127, 125, 122, 113, 100, 88, 83, 88, 80, 80, 83, 28.20747 + 82, 90, 97, 90, 80, 88, 96, 103, 111, 118, 119, 111, 108, 91, 89, 82, 28.20748 + 93, 102, 88, 96, 99, 99, 99, 98, 96, 92, 90, 94, 104, 130, 148, 162, 28.20749 + 174, 173, 176, 190, 192, 193, 192, 189, 184, 185, 188, 193, 189, 183, 179, 176, 28.20750 + 180, 183, 183, 182, 175, 180, 187, 193, 194, 192, 187, 184, 187, 185, 183, 185, 28.20751 + 192, 196, 197, 196, 184, 184, 185, 187, 188, 187, 187, 185, 179, 179, 177, 177, 28.20752 + 175, 175, 174, 169, 161, 142, 112, 88, 111, 104, 108, 93, 101, 97, 93, 93, 28.20753 + 98, 103, 105, 104, 105, 100, 98, 102, 107, 104, 100, 97, 102, 103, 104, 103, 28.20754 + 103, 102, 104, 108, 113, 117, 118, 116, 118, 123, 119, 106, 92, 95, 94, 92, 28.20755 + 86, 84, 88, 94, 94, 95, 96, 101, 98, 97, 100, 100, 96, 97, 100, 102, 28.20756 + 102, 100, 96, 92, 89, 91, 91, 92, 88, 83, 79, 77, 79, 79, 79, 74, 28.20757 + 77, 80, 82, 80, 76, 70, 68, 61, 69, 66, 62, 68, 71, 79, 93, 86, 28.20758 + 87, 89, 92, 93, 94, 94, 95, 101, 96, 89, 86, 88, 96, 105, 114, 119, 28.20759 + 120, 118, 112, 108, 108, 114, 120, 109, 100, 84, 68, 62, 69, 76, 80, 94, 28.20760 + 97, 100, 100, 99, 97, 99, 101, 106, 106, 106, 107, 107, 107, 108, 106, 98, 28.20761 + 97, 97, 97, 97, 98, 97, 98, 100, 95, 95, 96, 96, 94, 96, 106, 110, 28.20762 + 129, 143, 152, 164, 179, 186, 186, 186, 185, 187, 193, 192, 188, 188, 191, 192, 28.20763 + 181, 174, 170, 177, 180, 178, 175, 178, 184, 187, 183, 183, 186, 186, 180, 179, 28.20764 + 188, 195, 194, 188, 186, 192, 199, 193, 186, 180, 183, 190, 192, 188, 181, 176, 28.20765 + 176, 178, 180, 181, 177, 173, 167, 153, 155, 78, 120, 102, 101, 105, 106, 104, 28.20766 + 100, 99, 98, 97, 98, 97, 95, 98, 96, 94, 92, 94, 97, 103, 105, 100, 28.20767 + 100, 103, 103, 103, 104, 102, 103, 105, 108, 117, 123, 119, 120, 110, 88, 79, 28.20768 + 85, 110, 88, 87, 89, 95, 97, 95, 96, 100, 101, 98, 97, 99, 99, 95, 28.20769 + 95, 98, 96, 98, 100, 98, 94, 91, 90, 87, 90, 85, 82, 80, 78, 78, 28.20770 + 80, 82, 80, 83, 84, 85, 84, 83, 82, 81, 72, 83, 84, 82, 85, 81, 28.20771 + 79, 87, 88, 88, 88, 89, 90, 92, 94, 95, 93, 93, 93, 93, 93, 93, 28.20772 + 93, 95, 88, 92, 93, 87, 83, 81, 85, 87, 76, 83, 90, 95, 100, 104, 28.20773 + 100, 95, 94, 95, 96, 96, 97, 97, 99, 100, 102, 102, 101, 100, 102, 101, 28.20774 + 100, 98, 97, 94, 95, 94, 92, 91, 91, 91, 100, 97, 99, 102, 103, 99, 28.20775 + 99, 106, 113, 119, 133, 154, 170, 176, 184, 191, 184, 183, 186, 190, 189, 186, 28.20776 + 186, 188, 184, 178, 172, 169, 171, 175, 181, 183, 182, 186, 188, 185, 186, 189, 28.20777 + 190, 185, 183, 187, 190, 191, 190, 190, 193, 197, 195, 189, 183, 182, 184, 183, 28.20778 + 177, 173, 175, 175, 176, 177, 177, 173, 169, 163, 159, 142, 89, 117, 107, 105, 28.20779 + 105, 98, 101, 101, 98, 99, 101, 102, 103, 103, 98, 96, 93, 90, 90, 92, 28.20780 + 93, 95, 99, 101, 101, 100, 99, 102, 104, 108, 121, 114, 108, 101, 97, 107, 28.20781 + 116, 108, 65, 94, 116, 76, 79, 85, 91, 90, 86, 89, 96, 97, 94, 94, 28.20782 + 96, 97, 92, 93, 96, 93, 97, 102, 102, 100, 95, 92, 87, 89, 85, 85, 28.20783 + 84, 83, 84, 85, 86, 81, 80, 79, 79, 80, 83, 85, 87, 79, 90, 90, 28.20784 + 89, 91, 85, 80, 86, 90, 89, 88, 87, 89, 91, 94, 96, 96, 98, 101, 28.20785 + 104, 104, 101, 98, 98, 111, 116, 117, 116, 113, 108, 108, 107, 106, 109, 109, 28.20786 + 107, 105, 104, 98, 92, 103, 102, 100, 100, 104, 106, 106, 106, 110, 109, 110, 28.20787 + 108, 106, 105, 103, 103, 107, 104, 102, 100, 98, 97, 98, 98, 101, 99, 103, 28.20788 + 107, 107, 102, 100, 106, 114, 112, 123, 153, 171, 169, 176, 190, 184, 181, 183, 28.20789 + 185, 185, 183, 184, 185, 179, 176, 176, 172, 170, 173, 181, 187, 184, 187, 189, 28.20790 + 186, 187, 191, 191, 190, 193, 192, 191, 191, 192, 193, 194, 193, 199, 196, 191, 28.20791 + 188, 186, 182, 178, 175, 176, 175, 176, 177, 175, 174, 168, 162, 152, 114, 99, 28.20792 + 110, 109, 110, 109, 95, 101, 101, 101, 101, 103, 105, 108, 109, 106, 104, 102, 28.20793 + 99, 98, 98, 98, 99, 106, 108, 108, 105, 102, 105, 110, 116, 107, 108, 116, 28.20794 + 118, 112, 110, 107, 93, 101, 64, 96, 69, 70, 74, 81, 85, 83, 86, 91, 28.20795 + 92, 90, 92, 95, 97, 93, 94, 98, 96, 99, 100, 100, 97, 92, 88, 85, 28.20796 + 83, 85, 85, 86, 85, 86, 86, 86, 83, 82, 80, 80, 82, 85, 88, 90, 28.20797 + 85, 93, 90, 87, 92, 91, 89, 98, 93, 93, 94, 94, 95, 97, 99, 100, 28.20798 + 106, 105, 104, 104, 106, 108, 110, 114, 108, 113, 113, 113, 108, 106, 104, 104, 28.20799 + 113, 111, 106, 100, 100, 106, 110, 108, 112, 107, 102, 102, 106, 109, 108, 107, 28.20800 + 112, 111, 112, 111, 109, 108, 106, 106, 114, 110, 109, 104, 104, 105, 106, 107, 28.20801 + 101, 99, 102, 106, 106, 100, 100, 105, 116, 111, 119, 138, 155, 161, 167, 180, 28.20802 + 183, 182, 181, 182, 182, 181, 182, 181, 179, 177, 177, 174, 172, 173, 178, 181, 28.20803 + 182, 182, 183, 182, 183, 186, 189, 189, 197, 195, 193, 191, 190, 190, 189, 189, 28.20804 + 193, 193, 191, 189, 185, 182, 181, 181, 174, 173, 173, 172, 173, 170, 164, 159, 28.20805 + 143, 94, 111, 106, 103, 105, 104, 90, 105, 104, 103, 101, 100, 101, 103, 105, 28.20806 + 107, 107, 107, 107, 107, 107, 107, 109, 109, 111, 113, 109, 104, 106, 109, 114, 28.20807 + 116, 112, 114, 114, 103, 102, 105, 99, 97, 90, 82, 75, 70, 69, 77, 84, 28.20808 + 88, 92, 96, 93, 89, 90, 94, 95, 90, 89, 92, 94, 95, 95, 92, 89, 28.20809 + 88, 86, 87, 82, 84, 85, 87, 88, 88, 87, 84, 90, 89, 89, 90, 90, 28.20810 + 91, 92, 93, 90, 97, 94, 93, 100, 99, 97, 104, 97, 99, 102, 105, 106, 28.20811 + 106, 105, 104, 110, 108, 105, 104, 105, 108, 112, 117, 117, 120, 120, 119, 116, 28.20812 + 115, 114, 115, 101, 105, 108, 110, 113, 115, 113, 109, 116, 111, 106, 104, 105, 28.20813 + 107, 106, 104, 105, 105, 107, 107, 106, 106, 107, 107, 110, 106, 106, 102, 104, 28.20814 + 103, 105, 107, 104, 100, 99, 101, 102, 97, 101, 107, 111, 114, 116, 122, 136, 28.20815 + 154, 167, 170, 178, 181, 180, 179, 178, 179, 178, 178, 176, 175, 174, 175, 178, 28.20816 + 179, 178, 177, 183, 181, 180, 180, 183, 185, 188, 191, 192, 195, 196, 194, 190, 28.20817 + 188, 191, 194, 185, 187, 187, 185, 182, 180, 180, 182, 172, 170, 168, 164, 163, 28.20818 + 158, 151, 145, 138, 92, 125, 105, 101, 95, 94, 85, 104, 105, 104, 101, 98, 28.20819 + 97, 99, 101, 103, 104, 105, 106, 107, 108, 108, 108, 104, 106, 110, 110, 107, 28.20820 + 106, 108, 109, 117, 111, 114, 116, 107, 106, 110, 105, 103, 97, 127, 79, 71, 28.20821 + 68, 74, 83, 88, 92, 96, 95, 92, 93, 93, 91, 84, 81, 81, 86, 86, 28.20822 + 85, 84, 83, 85, 88, 92, 85, 87, 87, 89, 90, 90, 89, 88, 90, 90, 28.20823 + 91, 92, 92, 92, 91, 91, 86, 95, 96, 98, 104, 99, 91, 94, 94, 97, 28.20824 + 101, 105, 106, 105, 102, 100, 107, 107, 107, 107, 106, 105, 104, 105, 109, 110, 28.20825 + 108, 105, 105, 107, 107, 108, 110, 114, 114, 110, 108, 107, 103, 97, 114, 111, 28.20826 + 107, 105, 105, 104, 104, 103, 104, 105, 107, 107, 108, 108, 111, 111, 109, 109, 28.20827 + 108, 105, 105, 107, 108, 107, 108, 103, 101, 101, 102, 100, 103, 109, 106, 114, 28.20828 + 117, 113, 124, 145, 161, 167, 169, 174, 176, 174, 175, 176, 175, 172, 169, 168, 28.20829 + 169, 173, 179, 182, 181, 179, 186, 182, 180, 182, 185, 184, 187, 191, 183, 188, 28.20830 + 193, 193, 190, 190, 193, 196, 186, 186, 186, 184, 181, 178, 178, 176, 178, 173, 28.20831 + 168, 161, 155, 147, 138, 131, 121, 92, 121, 104, 101, 97, 98, 98, 99, 104, 28.20832 + 107, 106, 102, 101, 103, 106, 105, 105, 105, 105, 105, 106, 106, 108, 104, 105, 28.20833 + 108, 111, 112, 112, 113, 113, 106, 101, 111, 119, 114, 110, 110, 103, 102, 95, 28.20834 + 106, 75, 69, 70, 75, 79, 80, 84, 88, 90, 88, 89, 89, 86, 78, 75, 28.20835 + 76, 82, 82, 82, 81, 80, 82, 85, 89, 88, 89, 90, 91, 91, 91, 91, 28.20836 + 89, 89, 87, 87, 88, 88, 89, 89, 89, 86, 93, 93, 94, 101, 97, 88, 28.20837 + 91, 92, 94, 97, 99, 101, 100, 99, 98, 105, 106, 107, 107, 106, 104, 102, 28.20838 + 103, 110, 109, 108, 109, 111, 111, 111, 111, 106, 107, 103, 99, 100, 108, 113, 28.20839 + 114, 109, 109, 110, 108, 107, 106, 106, 107, 110, 110, 112, 113, 113, 114, 114, 28.20840 + 116, 114, 114, 114, 113, 112, 110, 110, 110, 107, 103, 101, 105, 105, 102, 103, 28.20841 + 107, 110, 111, 114, 115, 119, 127, 141, 155, 160, 167, 171, 169, 170, 172, 170, 28.20842 + 164, 163, 164, 165, 166, 170, 173, 178, 182, 185, 180, 179, 182, 185, 182, 183, 28.20843 + 188, 181, 183, 187, 189, 190, 190, 188, 187, 185, 184, 182, 181, 180, 178, 176, 28.20844 + 175, 172, 166, 159, 151, 143, 134, 125, 116, 108, 97, 107, 98, 103, 98, 99, 28.20845 + 104, 97, 102, 108, 109, 105, 103, 105, 107, 109, 108, 108, 107, 107, 108, 111, 28.20846 + 111, 111, 107, 106, 107, 111, 112, 112, 108, 119, 101, 94, 94, 91, 96, 106, 28.20847 + 107, 106, 31, 61, 74, 74, 77, 80, 78, 75, 79, 85, 83, 82, 82, 85, 28.20848 + 85, 79, 76, 78, 81, 82, 82, 81, 78, 78, 82, 84, 88, 88, 89, 89, 28.20849 + 89, 89, 91, 89, 91, 89, 88, 88, 89, 91, 93, 95, 94, 97, 91, 89, 28.20850 + 98, 99, 97, 103, 98, 98, 100, 101, 102, 103, 104, 104, 108, 107, 105, 104, 28.20851 + 104, 107, 109, 111, 105, 106, 107, 109, 111, 111, 110, 109, 110, 113, 111, 108, 28.20852 + 108, 109, 109, 106, 106, 108, 111, 111, 109, 108, 110, 112, 109, 109, 111, 111, 28.20853 + 111, 111, 111, 113, 116, 118, 116, 115, 114, 112, 111, 108, 105, 101, 104, 106, 28.20854 + 107, 102, 101, 104, 113, 109, 110, 118, 115, 107, 118, 139, 151, 160, 165, 163, 28.20855 + 164, 167, 163, 156, 161, 164, 165, 161, 159, 161, 172, 181, 183, 178, 178, 181, 28.20856 + 182, 178, 178, 183, 186, 183, 183, 186, 190, 188, 181, 174, 177, 175, 173, 173, 28.20857 + 174, 174, 172, 168, 152, 147, 140, 133, 127, 121, 111, 104, 112, 110, 99, 95, 28.20858 + 98, 91, 86, 91, 95, 101, 109, 109, 105, 101, 102, 104, 107, 106, 106, 106, 28.20859 + 107, 109, 113, 116, 115, 107, 98, 96, 101, 102, 98, 93, 98, 87, 93, 104, 28.20860 + 99, 91, 83, 72, 89, 59, 83, 74, 76, 78, 80, 81, 81, 78, 72, 75, 28.20861 + 77, 79, 81, 83, 81, 79, 78, 79, 77, 79, 80, 80, 80, 82, 82, 79, 28.20862 + 84, 90, 91, 91, 91, 94, 95, 89, 87, 88, 89, 89, 90, 91, 91, 91, 28.20863 + 89, 87, 86, 88, 91, 95, 98, 92, 96, 100, 102, 101, 100, 100, 101, 100, 28.20864 + 101, 101, 102, 104, 105, 106, 106, 106, 107, 108, 108, 108, 110, 112, 115, 115, 28.20865 + 111, 107, 106, 110, 112, 110, 105, 111, 102, 106, 110, 102, 100, 109, 111, 117, 28.20866 + 115, 111, 109, 110, 111, 113, 114, 111, 114, 115, 113, 112, 109, 107, 103, 104, 28.20867 + 100, 103, 106, 108, 105, 104, 107, 105, 106, 107, 112, 119, 122, 121, 121, 141, 28.20868 + 139, 139, 142, 148, 153, 152, 152, 154, 154, 154, 144, 142, 159, 165, 149, 164, 28.20869 + 172, 173, 170, 173, 171, 170, 179, 180, 179, 177, 175, 173, 172, 172, 172, 172, 28.20870 + 170, 168, 166, 164, 162, 160, 156, 149, 140, 128, 118, 113, 112, 116, 117, 113, 28.20871 + 109, 106, 99, 94, 92, 97, 103, 101, 99, 99, 103, 107, 107, 103, 97, 103, 28.20872 + 104, 109, 112, 112, 105, 95, 86, 81, 86, 86, 87, 91, 96, 93, 87, 91, 28.20873 + 89, 91, 97, 103, 103, 96, 88, 81, 68, 63, 83, 81, 81, 80, 83, 84, 28.20874 + 85, 82, 92, 88, 85, 81, 79, 78, 80, 81, 78, 78, 79, 80, 82, 83, 28.20875 + 84, 84, 83, 83, 86, 88, 90, 93, 92, 89, 89, 87, 88, 89, 90, 90, 28.20876 + 91, 91, 89, 89, 89, 90, 91, 93, 95, 96, 92, 95, 99, 100, 101, 101, 28.20877 + 102, 103, 104, 104, 104, 104, 104, 105, 105, 105, 108, 109, 110, 110, 109, 110, 28.20878 + 110, 112, 113, 110, 106, 108, 109, 111, 109, 106, 112, 101, 104, 111, 107, 106, 28.20879 + 109, 105, 111, 110, 107, 106, 108, 110, 112, 114, 115, 117, 116, 115, 112, 111, 28.20880 + 110, 110, 108, 106, 108, 110, 110, 105, 104, 106, 107, 108, 111, 118, 123, 125, 28.20881 + 127, 128, 130, 123, 115, 113, 118, 128, 134, 137, 146, 142, 138, 131, 129, 147, 28.20882 + 158, 150, 158, 168, 168, 167, 172, 167, 163, 168, 164, 164, 166, 165, 167, 166, 28.20883 + 168, 166, 163, 157, 156, 156, 164, 164, 163, 157, 133, 128, 121, 114, 112, 112, 28.20884 + 112, 111, 110, 107, 105, 100, 96, 91, 92, 96, 100, 100, 101, 105, 110, 111, 28.20885 + 110, 105, 111, 109, 109, 108, 109, 110, 112, 113, 99, 99, 92, 87, 89, 96, 28.20886 + 99, 97, 109, 106, 110, 111, 112, 101, 87, 74, 90, 92, 90, 86, 84, 85, 28.20887 + 86, 88, 88, 88, 87, 94, 91, 87, 82, 79, 78, 79, 79, 79, 77, 80, 28.20888 + 81, 82, 83, 84, 84, 86, 83, 81, 84, 88, 92, 89, 83, 89, 88, 88, 28.20889 + 89, 90, 91, 91, 91, 88, 90, 92, 94, 95, 95, 95, 94, 93, 95, 98, 28.20890 + 99, 99, 100, 103, 105, 105, 105, 104, 103, 102, 102, 103, 103, 107, 109, 111, 28.20891 + 110, 109, 107, 108, 109, 112, 109, 107, 108, 111, 112, 110, 105, 112, 100, 105, 28.20892 + 113, 112, 112, 111, 101, 106, 105, 105, 105, 106, 108, 111, 113, 117, 116, 114, 28.20893 + 112, 111, 112, 112, 112, 115, 110, 111, 114, 113, 107, 106, 108, 103, 106, 112, 28.20894 + 116, 119, 122, 126, 129, 133, 131, 128, 128, 130, 129, 126, 122, 132, 123, 121, 28.20895 + 121, 118, 126, 135, 133, 132, 143, 145, 150, 163, 160, 155, 157, 153, 154, 158, 28.20896 + 157, 160, 158, 159, 156, 156, 146, 142, 141, 148, 147, 142, 132, 119, 118, 117, 28.20897 + 116, 115, 114, 110, 108, 106, 107, 106, 104, 101, 98, 96, 96, 96, 95, 96, 28.20898 + 100, 106, 109, 110, 108, 113, 112, 112, 110, 112, 115, 122, 126, 130, 130, 122, 28.20899 + 115, 115, 120, 120, 119, 116, 106, 99, 92, 91, 88, 84, 79, 92, 103, 99, 28.20900 + 78, 77, 81, 86, 90, 87, 83, 82, 82, 82, 83, 85, 84, 81, 79, 76, 28.20901 + 76, 77, 78, 79, 80, 81, 82, 82, 87, 86, 85, 86, 88, 88, 86, 83, 28.20902 + 90, 88, 89, 89, 90, 91, 92, 92, 90, 91, 93, 95, 96, 96, 96, 95, 28.20903 + 96, 97, 98, 98, 98, 99, 101, 104, 101, 101, 99, 99, 99, 99, 100, 101, 28.20904 + 106, 108, 111, 111, 110, 108, 108, 108, 111, 109, 108, 109, 111, 112, 110, 108, 28.20905 + 112, 102, 107, 112, 110, 110, 111, 101, 104, 103, 104, 104, 104, 106, 109, 110, 28.20906 + 113, 113, 113, 113, 112, 112, 111, 110, 116, 113, 113, 114, 116, 112, 112, 112, 28.20907 + 102, 106, 113, 116, 116, 117, 123, 128, 127, 128, 131, 134, 134, 128, 120, 114, 28.20908 + 124, 114, 118, 126, 121, 116, 117, 115, 120, 127, 128, 133, 149, 148, 141, 142, 28.20909 + 144, 145, 147, 145, 145, 141, 138, 135, 142, 135, 130, 127, 128, 125, 120, 114, 28.20910 + 116, 116, 118, 118, 117, 114, 111, 109, 103, 102, 103, 103, 104, 103, 103, 103, 28.20911 + 97, 95, 96, 98, 103, 106, 109, 109, 112, 116, 122, 122, 121, 119, 121, 122, 28.20912 + 124, 129, 130, 127, 125, 122, 118, 110, 109, 99, 87, 78, 77, 78, 81, 80, 28.20913 + 78, 88, 90, 79, 74, 75, 80, 83, 81, 81, 84, 81, 83, 86, 88, 89, 28.20914 + 88, 88, 83, 79, 79, 80, 81, 81, 81, 82, 82, 85, 88, 90, 89, 86, 28.20915 + 85, 85, 87, 88, 88, 89, 90, 91, 91, 92, 92, 94, 93, 93, 93, 94, 28.20916 + 95, 96, 97, 98, 99, 100, 99, 97, 97, 99, 101, 99, 98, 97, 97, 98, 28.20917 + 100, 102, 104, 101, 104, 109, 110, 109, 108, 108, 109, 110, 110, 112, 113, 114, 28.20918 + 114, 112, 108, 109, 105, 110, 110, 103, 104, 110, 104, 107, 106, 105, 104, 105, 28.20919 + 106, 107, 107, 110, 110, 114, 116, 116, 114, 111, 109, 115, 112, 113, 115, 117, 28.20920 + 115, 116, 118, 113, 114, 119, 121, 120, 120, 124, 129, 123, 121, 119, 119, 120, 28.20921 + 122, 125, 127, 143, 132, 138, 147, 141, 133, 134, 134, 128, 131, 126, 124, 133, 28.20922 + 130, 121, 123, 129, 130, 132, 129, 128, 122, 120, 116, 121, 120, 123, 121, 123, 28.20923 + 120, 124, 123, 118, 116, 117, 116, 113, 110, 107, 107, 100, 99, 100, 99, 102, 28.20924 + 105, 105, 106, 104, 102, 100, 100, 104, 107, 111, 111, 113, 118, 126, 129, 127, 28.20925 + 122, 121, 121, 113, 120, 125, 125, 123, 119, 113, 106, 110, 107, 104, 99, 95, 28.20926 + 84, 76, 70, 73, 75, 83, 92, 82, 77, 80, 84, 84, 89, 95, 95, 92, 28.20927 + 90, 89, 89, 91, 95, 95, 86, 84, 84, 85, 84, 84, 85, 85, 84, 89, 28.20928 + 92, 91, 87, 82, 86, 88, 89, 89, 89, 90, 91, 92, 92, 93, 94, 94, 28.20929 + 93, 92, 93, 94, 96, 97, 97, 99, 100, 100, 98, 98, 99, 100, 101, 100, 28.20930 + 99, 99, 100, 103, 106, 108, 100, 102, 107, 107, 107, 107, 108, 109, 108, 109, 28.20931 + 112, 113, 113, 112, 111, 108, 108, 105, 111, 108, 99, 101, 109, 102, 106, 106, 28.20932 + 105, 105, 106, 106, 106, 106, 107, 110, 114, 117, 119, 116, 111, 108, 112, 109, 28.20933 + 110, 114, 115, 117, 119, 121, 119, 116, 119, 120, 120, 119, 120, 123, 125, 125, 28.20934 + 124, 124, 123, 120, 118, 118, 113, 103, 106, 111, 104, 103, 112, 116, 121, 124, 28.20935 + 119, 115, 121, 118, 115, 119, 123, 123, 124, 123, 122, 120, 118, 117, 111, 115, 28.20936 + 120, 120, 118, 119, 124, 126, 117, 114, 111, 108, 104, 102, 102, 101, 101, 98, 28.20937 + 96, 98, 100, 102, 101, 100, 104, 103, 101, 100, 102, 103, 107, 108, 110, 111, 28.20938 + 117, 118, 118, 118, 119, 121, 121, 126, 128, 123, 122, 123, 124, 120, 120, 116, 28.20939 + 113, 107, 102, 95, 87, 83, 89, 79, 76, 89, 78, 76, 81, 85, 81, 84, 28.20940 + 92, 97, 94, 91, 90, 90, 92, 97, 97, 91, 89, 87, 87, 86, 86, 85, 28.20941 + 85, 83, 85, 86, 86, 86, 83, 85, 85, 89, 89, 90, 90, 91, 92, 93, 28.20942 + 93, 92, 92, 93, 94, 94, 94, 94, 93, 93, 96, 99, 101, 100, 100, 101, 28.20943 + 102, 104, 103, 101, 99, 100, 102, 105, 107, 102, 103, 104, 103, 103, 103, 105, 28.20944 + 107, 104, 106, 111, 112, 111, 109, 108, 105, 106, 103, 108, 107, 102, 106, 107, 28.20945 + 95, 103, 103, 103, 104, 105, 106, 107, 106, 105, 105, 108, 110, 112, 110, 109, 28.20946 + 107, 111, 107, 110, 113, 115, 116, 119, 121, 115, 112, 112, 112, 115, 115, 115, 28.20947 + 114, 112, 116, 121, 120, 115, 105, 96, 91, 115, 111, 114, 115, 108, 110, 121, 28.20948 + 122, 110, 117, 113, 111, 118, 117, 115, 123, 121, 121, 121, 121, 121, 121, 121, 28.20949 + 121, 115, 117, 119, 118, 117, 117, 119, 118, 113, 109, 106, 102, 99, 96, 96, 28.20950 + 96, 97, 97, 96, 100, 103, 104, 103, 98, 100, 98, 100, 100, 101, 101, 105, 28.20951 + 106, 108, 107, 111, 112, 116, 118, 120, 120, 116, 121, 119, 114, 112, 114, 118, 28.20952 + 116, 122, 115, 108, 100, 97, 96, 96, 98, 97, 95, 86, 63, 59, 63, 76, 28.20953 + 77, 69, 64, 67, 81, 83, 86, 90, 93, 93, 93, 89, 91, 89, 86, 85, 28.20954 + 85, 84, 83, 83, 87, 84, 83, 85, 87, 88, 85, 82, 91, 91, 92, 93, 28.20955 + 93, 94, 95, 95, 91, 91, 96, 96, 97, 95, 92, 90, 89, 93, 98, 101, 28.20956 + 102, 104, 105, 106, 107, 105, 102, 100, 100, 99, 102, 103, 105, 105, 104, 101, 28.20957 + 101, 100, 102, 104, 101, 104, 107, 108, 109, 105, 106, 103, 105, 100, 106, 108, 28.20958 + 106, 110, 105, 87, 99, 99, 100, 102, 105, 106, 108, 107, 102, 101, 102, 103, 28.20959 + 105, 104, 105, 105, 111, 107, 109, 112, 115, 114, 119, 119, 116, 111, 108, 110, 28.20960 + 113, 115, 114, 112, 116, 116, 114, 111, 108, 109, 110, 115, 111, 111, 121, 119, 28.20961 + 109, 111, 116, 110, 116, 124, 122, 119, 122, 118, 115, 123, 116, 115, 115, 114, 28.20962 + 114, 114, 114, 115, 118, 114, 115, 116, 119, 122, 121, 119, 111, 109, 106, 103, 28.20963 + 102, 99, 98, 97, 95, 96, 100, 105, 110, 111, 108, 102, 103, 103, 104, 104, 28.20964 + 105, 105, 107, 108, 111, 111, 114, 120, 126, 125, 121, 116, 112, 118, 119, 115, 28.20965 + 113, 112, 114, 113, 110, 111, 109, 107, 102, 95, 86, 83, 82, 99, 103, 67, 28.20966 + 62, 67, 70, 70, 72, 60, 33, 77, 85, 89, 85, 83, 83, 85, 80, 74, 28.20967 + 82, 82, 81, 86, 83, 82, 91, 83, 90, 97, 97, 93, 89, 89, 92, 96, 28.20968 + 92, 92, 97, 95, 91, 92, 96, 96, 98, 102, 102, 101, 100, 99, 97, 96, 28.20969 + 95, 95, 96, 99, 100, 98, 97, 104, 105, 104, 106, 107, 108, 109, 107, 101, 28.20970 + 100, 98, 97, 97, 98, 99, 100, 100, 102, 101, 97, 99, 102, 106, 104, 103, 28.20971 + 108, 114, 111, 105, 104, 109, 115, 107, 108, 107, 105, 104, 104, 106, 108, 103, 28.20972 + 105, 106, 104, 106, 107, 105, 100, 105, 108, 113, 113, 111, 112, 118, 121, 119, 28.20973 + 116, 115, 118, 120, 119, 115, 112, 108, 111, 115, 117, 119, 119, 117, 116, 117, 28.20974 + 118, 120, 118, 118, 119, 119, 121, 121, 121, 119, 118, 116, 115, 115, 114, 118, 28.20975 + 120, 120, 119, 117, 115, 111, 110, 112, 109, 109, 110, 113, 116, 117, 117, 113, 28.20976 + 111, 107, 104, 103, 103, 104, 105, 105, 104, 102, 102, 101, 101, 103, 103, 108, 28.20977 + 111, 107, 100, 97, 103, 105, 102, 107, 106, 105, 107, 113, 117, 117, 112, 111, 28.20978 + 110, 110, 107, 104, 102, 105, 108, 100, 101, 102, 101, 97, 90, 82, 75, 77, 28.20979 + 80, 88, 56, 53, 61, 64, 63, 59, 49, 28, 77, 86, 92, 88, 81, 81, 28.20980 + 84, 81, 83, 85, 82, 82, 93, 92, 88, 92, 97, 97, 97, 95, 93, 91, 28.20981 + 90, 90, 99, 96, 96, 100, 98, 94, 94, 98, 92, 95, 98, 98, 96, 95, 28.20982 + 95, 94, 92, 91, 92, 96, 99, 100, 101, 100, 102, 103, 102, 103, 102, 103, 28.20983 + 103, 103, 106, 103, 101, 100, 99, 100, 100, 101, 98, 101, 102, 99, 100, 103, 28.20984 + 103, 102, 105, 108, 110, 108, 104, 104, 107, 111, 105, 106, 106, 104, 103, 103, 28.20985 + 106, 106, 102, 107, 109, 105, 104, 106, 110, 110, 113, 112, 113, 113, 114, 116, 28.20986 + 118, 116, 116, 113, 113, 114, 117, 117, 115, 112, 112, 113, 116, 117, 118, 118, 28.20987 + 117, 118, 121, 124, 125, 123, 122, 118, 117, 115, 117, 117, 117, 117, 117, 116, 28.20988 + 113, 115, 115, 117, 117, 116, 116, 114, 114, 113, 122, 119, 116, 113, 114, 114, 28.20989 + 113, 112, 114, 114, 114, 113, 111, 109, 106, 105, 105, 104, 103, 102, 101, 102, 28.20990 + 103, 104, 104, 107, 107, 102, 102, 106, 104, 100, 101, 102, 103, 105, 107, 111, 28.20991 + 113, 112, 112, 112, 113, 111, 108, 106, 108, 110, 114, 109, 106, 106, 107, 104, 28.20992 + 96, 89, 85, 83, 81, 59, 55, 68, 77, 72, 65, 61, 56, 72, 83, 92, 28.20993 + 92, 88, 91, 97, 96, 92, 91, 87, 89, 102, 103, 98, 100, 93, 90, 87, 28.20994 + 89, 95, 101, 104, 104, 104, 102, 102, 104, 102, 99, 99, 101, 92, 94, 95, 28.20995 + 95, 93, 93, 94, 94, 89, 88, 90, 94, 98, 100, 102, 103, 105, 105, 103, 28.20996 + 104, 102, 103, 102, 102, 102, 101, 100, 99, 99, 99, 99, 99, 98, 103, 105, 28.20997 + 104, 104, 106, 104, 100, 108, 108, 107, 107, 106, 107, 107, 108, 105, 106, 106, 28.20998 + 105, 104, 105, 108, 109, 103, 108, 112, 106, 104, 106, 114, 118, 120, 115, 113, 28.20999 + 114, 117, 118, 118, 112, 118, 115, 115, 117, 120, 120, 119, 118, 117, 117, 117, 28.21000 + 117, 117, 117, 116, 118, 120, 122, 124, 125, 124, 120, 116, 112, 115, 115, 117, 28.21001 + 118, 117, 116, 115, 116, 115, 114, 114, 114, 115, 117, 119, 120, 126, 121, 118, 28.21002 + 116, 115, 112, 110, 110, 112, 114, 116, 117, 115, 111, 106, 103, 103, 102, 102, 28.21003 + 102, 102, 103, 104, 105, 98, 103, 107, 105, 106, 105, 103, 99, 103, 104, 108, 28.21004 + 109, 111, 114, 118, 120, 110, 111, 112, 111, 109, 107, 107, 107, 117, 109, 102, 28.21005 + 102, 107, 107, 100, 90, 89, 84, 80, 72, 66, 79, 87, 78, 67, 73, 76, 28.21006 + 85, 89, 89, 82, 73, 69, 65, 60, 55, 58, 56, 57, 69, 71, 67, 71, 28.21007 + 65, 65, 66, 71, 78, 84, 91, 95, 102, 103, 102, 103, 101, 99, 99, 100, 28.21008 + 96, 97, 98, 97, 95, 95, 97, 99, 93, 92, 93, 96, 99, 103, 104, 103, 28.21009 + 108, 108, 108, 106, 104, 104, 102, 102, 101, 99, 101, 99, 101, 100, 102, 101, 28.21010 + 103, 105, 109, 105, 107, 108, 109, 105, 113, 110, 108, 108, 110, 111, 110, 108, 28.21011 + 106, 107, 107, 106, 106, 107, 110, 113, 105, 108, 110, 107, 106, 109, 115, 115, 28.21012 + 119, 116, 115, 115, 116, 117, 118, 114, 118, 118, 118, 119, 120, 120, 120, 120, 28.21013 + 120, 119, 118, 117, 117, 118, 119, 120, 117, 118, 121, 121, 123, 120, 118, 115, 28.21014 + 116, 117, 119, 118, 118, 117, 115, 114, 116, 116, 115, 115, 116, 118, 121, 121, 28.21015 + 117, 115, 113, 111, 112, 112, 111, 109, 107, 110, 113, 114, 113, 110, 107, 105, 28.21016 + 104, 104, 103, 103, 103, 103, 103, 103, 99, 99, 102, 104, 102, 102, 101, 101, 28.21017 + 101, 106, 111, 112, 113, 115, 121, 125, 122, 123, 124, 124, 122, 120, 118, 117, 28.21018 + 122, 117, 112, 112, 113, 112, 107, 100, 98, 95, 94, 81, 71, 79, 81, 68, 28.21019 + 57, 66, 72, 65, 70, 73, 79, 86, 96, 98, 92, 77, 85, 86, 84, 90, 28.21020 + 89, 86, 94, 87, 91, 93, 94, 92, 92, 97, 103, 96, 98, 98, 97, 95, 28.21021 + 96, 96, 95, 98, 99, 99, 99, 96, 97, 99, 101, 99, 98, 97, 99, 103, 28.21022 + 106, 105, 106, 109, 107, 106, 104, 102, 102, 100, 100, 102, 103, 105, 106, 109, 28.21023 + 109, 111, 110, 109, 110, 111, 106, 108, 111, 113, 111, 116, 112, 109, 109, 112, 28.21024 + 113, 111, 108, 105, 106, 107, 106, 106, 107, 110, 112, 107, 109, 109, 108, 111, 28.21025 + 114, 112, 105, 112, 114, 115, 114, 114, 114, 116, 119, 116, 116, 116, 115, 114, 28.21026 + 114, 114, 115, 120, 119, 118, 118, 118, 120, 123, 124, 120, 118, 118, 116, 119, 28.21027 + 120, 119, 117, 116, 114, 115, 115, 114, 110, 108, 109, 116, 115, 113, 113, 113, 28.21028 + 113, 116, 118, 112, 109, 109, 110, 111, 110, 109, 109, 107, 107, 107, 108, 108, 28.21029 + 109, 109, 109, 106, 105, 105, 104, 102, 101, 99, 99, 101, 98, 97, 98, 98, 28.21030 + 97, 100, 101, 100, 105, 112, 117, 116, 118, 124, 127, 128, 128, 128, 128, 127, 28.21031 + 125, 122, 120, 120, 121, 123, 121, 117, 113, 109, 107, 101, 99, 102, 75, 66, 28.21032 + 73, 76, 67, 67, 78, 80, 104, 106, 103, 101, 102, 102, 99, 89, 90, 99, 28.21033 + 100, 96, 98, 92, 90, 97, 85, 89, 95, 92, 86, 82, 84, 90, 96, 101, 28.21034 + 101, 99, 100, 101, 101, 98, 98, 98, 99, 99, 98, 96, 98, 99, 102, 102, 28.21035 + 101, 104, 107, 108, 109, 108, 111, 111, 109, 107, 107, 105, 104, 103, 102, 103, 28.21036 + 107, 107, 111, 110, 113, 111, 113, 113, 113, 107, 109, 112, 116, 113, 114, 111, 28.21037 + 108, 108, 110, 111, 109, 106, 103, 104, 104, 103, 103, 104, 106, 109, 110, 107, 28.21038 + 106, 107, 112, 116, 111, 101, 109, 113, 116, 115, 114, 113, 118, 122, 117, 118, 28.21039 + 118, 116, 113, 113, 114, 115, 118, 118, 117, 117, 118, 120, 122, 123, 126, 122, 28.21040 + 117, 116, 118, 117, 116, 113, 111, 111, 110, 108, 105, 104, 103, 105, 113, 112, 28.21041 + 111, 110, 108, 109, 110, 111, 112, 111, 111, 111, 110, 110, 107, 105, 109, 109, 28.21042 + 108, 107, 107, 109, 112, 114, 108, 108, 108, 106, 104, 102, 100, 98, 103, 98, 28.21043 + 95, 96, 95, 95, 100, 106, 106, 113, 121, 127, 129, 130, 133, 135, 132, 133, 28.21044 + 131, 130, 130, 129, 126, 124, 123, 128, 133, 131, 125, 120, 119, 120, 116, 114, 28.21045 + 115, 67, 63, 70, 72, 72, 82, 91, 87, 78, 87, 94, 92, 93, 95, 99, 28.21046 + 99, 95, 100, 99, 95, 101, 97, 93, 97, 95, 96, 99, 97, 95, 94, 94, 28.21047 + 97, 99, 105, 106, 103, 104, 107, 108, 102, 97, 99, 102, 101, 99, 98, 98, 28.21048 + 99, 102, 103, 102, 106, 109, 112, 114, 113, 115, 113, 111, 110, 110, 108, 107, 28.21049 + 108, 103, 104, 107, 107, 110, 108, 109, 107, 111, 112, 114, 109, 112, 113, 116, 28.21050 + 112, 114, 112, 110, 109, 109, 109, 108, 108, 106, 106, 106, 105, 103, 104, 106, 28.21051 + 109, 108, 109, 108, 108, 112, 116, 113, 107, 113, 113, 115, 115, 115, 116, 118, 28.21052 + 119, 117, 118, 118, 117, 114, 114, 117, 119, 117, 116, 116, 116, 116, 116, 117, 28.21053 + 117, 125, 121, 117, 117, 119, 117, 113, 108, 110, 109, 107, 105, 104, 105, 106, 28.21054 + 107, 110, 110, 109, 109, 109, 110, 108, 109, 112, 111, 109, 109, 110, 109, 106, 28.21055 + 104, 110, 111, 108, 106, 106, 107, 109, 110, 109, 109, 109, 108, 107, 105, 102, 28.21056 + 101, 103, 95, 93, 96, 98, 97, 102, 111, 110, 117, 124, 133, 139, 140, 140, 28.21057 + 139, 146, 145, 142, 141, 141, 141, 139, 136, 137, 138, 140, 140, 138, 137, 138, 28.21058 + 139, 139, 140, 140, 64, 61, 67, 67, 67, 79, 82, 66, 68, 82, 93, 91, 28.21059 + 84, 86, 92, 97, 94, 96, 91, 93, 105, 103, 98, 99, 100, 96, 93, 90, 28.21060 + 91, 91, 87, 87, 94, 101, 103, 98, 101, 105, 106, 100, 100, 103, 106, 105, 28.21061 + 104, 103, 102, 102, 101, 102, 103, 107, 111, 116, 116, 115, 111, 111, 109, 108, 28.21062 + 106, 105, 104, 105, 108, 110, 111, 112, 112, 110, 109, 108, 107, 112, 114, 112, 28.21063 + 113, 115, 113, 109, 117, 115, 114, 112, 111, 110, 110, 111, 110, 111, 110, 108, 28.21064 + 107, 107, 109, 111, 107, 109, 110, 108, 109, 114, 117, 116, 119, 115, 113, 114, 28.21065 + 118, 120, 119, 116, 110, 112, 113, 112, 110, 111, 114, 118, 116, 116, 115, 114, 28.21066 + 113, 112, 112, 111, 119, 117, 116, 119, 121, 121, 115, 109, 111, 110, 107, 105, 28.21067 + 106, 108, 111, 113, 110, 111, 111, 112, 113, 114, 112, 112, 108, 107, 106, 107, 28.21068 + 109, 109, 106, 105, 111, 110, 108, 105, 104, 103, 103, 103, 107, 108, 109, 109, 28.21069 + 109, 107, 105, 104, 101, 94, 94, 99, 102, 103, 107, 115, 108, 112, 121, 131, 28.21070 + 140, 141, 137, 134, 135, 135, 130, 128, 129, 130, 128, 126, 124, 121, 119, 120, 28.21071 + 124, 128, 129, 129, 123, 128, 132, 62, 62, 69, 79, 86, 90, 89, 86, 65, 28.21072 + 93, 104, 90, 79, 88, 90, 84, 95, 94, 96, 97, 98, 96, 96, 94, 97, 28.21073 + 100, 99, 92, 90, 92, 91, 88, 94, 98, 100, 98, 97, 95, 99, 100, 98, 28.21074 + 101, 104, 103, 103, 103, 104, 105, 104, 106, 105, 108, 109, 113, 115, 117, 114, 28.21075 + 117, 114, 105, 101, 105, 107, 107, 108, 108, 107, 111, 117, 119, 118, 115, 121, 28.21076 + 115, 114, 119, 121, 117, 116, 118, 114, 113, 111, 110, 109, 107, 105, 103, 112, 28.21077 + 112, 112, 109, 107, 108, 113, 116, 113, 113, 114, 114, 114, 112, 109, 108, 111, 28.21078 + 112, 113, 114, 114, 113, 111, 110, 111, 115, 118, 117, 112, 110, 113, 117, 114, 28.21079 + 115, 116, 117, 117, 116, 114, 113, 118, 116, 117, 118, 117, 116, 117, 115, 114, 28.21080 + 113, 112, 112, 113, 116, 119, 120, 115, 114, 113, 116, 117, 118, 115, 112, 114, 28.21081 + 109, 104, 105, 106, 108, 106, 102, 108, 109, 108, 108, 110, 111, 111, 111, 111, 28.21082 + 112, 114, 114, 112, 107, 102, 96, 100, 93, 97, 100, 95, 96, 108, 113, 120, 28.21083 + 120, 117, 107, 106, 118, 129, 137, 139, 140, 138, 136, 132, 129, 132, 137, 129, 28.21084 + 129, 129, 129, 128, 128, 128, 128, 128, 126, 125, 67, 67, 70, 72, 76, 73, 28.21085 + 69, 63, 72, 89, 97, 89, 87, 93, 95, 87, 90, 91, 91, 93, 94, 95, 28.21086 + 95, 96, 84, 89, 89, 87, 89, 94, 96, 92, 90, 93, 93, 93, 94, 95, 28.21087 + 96, 98, 97, 98, 99, 100, 100, 102, 106, 108, 108, 107, 107, 107, 108, 111, 28.21088 + 113, 114, 116, 118, 117, 107, 105, 103, 103, 100, 107, 111, 113, 114, 115, 116, 28.21089 + 117, 118, 120, 115, 114, 118, 120, 117, 116, 116, 113, 112, 110, 109, 108, 108, 28.21090 + 107, 107, 108, 110, 111, 110, 109, 110, 113, 117, 110, 110, 111, 111, 110, 108, 28.21091 + 105, 104, 112, 112, 113, 113, 113, 112, 110, 109, 108, 113, 118, 118, 114, 111, 28.21092 + 111, 113, 108, 109, 110, 112, 112, 113, 113, 113, 115, 113, 115, 116, 116, 118, 28.21093 + 117, 116, 113, 112, 112, 111, 112, 114, 116, 118, 118, 116, 115, 115, 117, 116, 28.21094 + 115, 111, 109, 105, 103, 106, 111, 110, 109, 105, 109, 111, 113, 109, 106, 104, 28.21095 + 107, 109, 109, 110, 113, 114, 115, 112, 111, 108, 113, 105, 107, 108, 101, 100, 28.21096 + 110, 113, 103, 112, 125, 131, 124, 115, 120, 134, 139, 136, 135, 139, 144, 142, 28.21097 + 135, 128, 130, 130, 129, 128, 127, 126, 125, 125, 129, 129, 132, 80, 81, 84, 28.21098 + 86, 89, 87, 85, 83, 88, 89, 90, 89, 93, 96, 94, 87, 93, 93, 94, 28.21099 + 96, 96, 96, 96, 96, 89, 92, 94, 93, 93, 93, 94, 90, 94, 93, 92, 28.21100 + 93, 94, 96, 97, 97, 101, 102, 103, 103, 102, 105, 110, 114, 113, 113, 112, 28.21101 + 113, 113, 116, 117, 115, 115, 117, 118, 111, 109, 105, 104, 101, 105, 112, 115, 28.21102 + 114, 111, 111, 114, 118, 114, 110, 108, 112, 113, 111, 110, 111, 113, 112, 109, 28.21103 + 107, 105, 104, 105, 105, 105, 107, 110, 110, 109, 108, 108, 109, 107, 107, 108, 28.21104 + 109, 108, 108, 107, 107, 112, 112, 111, 111, 110, 109, 108, 109, 109, 114, 120, 28.21105 + 121, 118, 115, 113, 114, 113, 113, 113, 113, 113, 114, 115, 116, 113, 113, 115, 28.21106 + 116, 116, 118, 117, 117, 119, 118, 118, 117, 117, 118, 120, 121, 125, 121, 121, 28.21107 + 119, 119, 119, 119, 116, 117, 114, 113, 115, 117, 114, 111, 106, 112, 116, 120, 28.21108 + 113, 108, 103, 108, 111, 107, 106, 110, 109, 112, 110, 112, 110, 112, 103, 105, 28.21109 + 106, 98, 98, 106, 107, 115, 111, 117, 133, 131, 119, 124, 144, 153, 151, 145, 28.21110 + 142, 144, 144, 141, 137, 141, 140, 139, 138, 136, 135, 133, 133, 125, 127, 131, 28.21111 + 79, 79, 83, 87, 92, 94, 95, 94, 100, 95, 90, 94, 96, 94, 90, 89, 28.21112 + 95, 94, 94, 94, 94, 93, 92, 93, 95, 96, 97, 96, 95, 95, 93, 90, 28.21113 + 99, 96, 93, 94, 95, 97, 96, 94, 108, 110, 112, 112, 111, 112, 115, 118, 28.21114 + 115, 115, 115, 117, 118, 118, 119, 119, 115, 116, 117, 114, 111, 110, 109, 109, 28.21115 + 108, 112, 113, 112, 110, 110, 112, 115, 114, 111, 110, 111, 112, 112, 110, 110, 28.21116 + 113, 112, 109, 105, 101, 100, 100, 101, 103, 105, 108, 109, 107, 104, 101, 100, 28.21117 + 103, 104, 106, 108, 108, 110, 112, 112, 110, 110, 109, 109, 110, 110, 110, 110, 28.21118 + 109, 113, 117, 118, 116, 114, 114, 114, 119, 118, 116, 115, 114, 115, 116, 117, 28.21119 + 114, 115, 115, 116, 116, 115, 115, 117, 122, 123, 122, 121, 120, 122, 123, 121, 28.21120 + 124, 121, 121, 118, 118, 117, 120, 119, 118, 116, 115, 114, 117, 115, 115, 112, 28.21121 + 119, 122, 123, 119, 115, 113, 114, 117, 113, 112, 111, 110, 109, 109, 109, 107, 28.21122 + 114, 105, 108, 113, 107, 109, 117, 118, 126, 107, 101, 114, 128, 132, 136, 142, 28.21123 + 143, 150, 154, 146, 143, 141, 146, 145, 149, 146, 148, 145, 146, 143, 144, 144, 28.21124 + 144, 148, 148, 85, 84, 86, 87, 88, 89, 90, 90, 101, 96, 94, 98, 95, 28.21125 + 91, 89, 94, 87, 87, 88, 88, 90, 90, 89, 91, 93, 93, 97, 100, 100, 28.21126 + 101, 100, 100, 101, 97, 92, 94, 98, 101, 98, 96, 110, 113, 115, 117, 116, 28.21127 + 115, 114, 114, 110, 111, 112, 116, 117, 118, 119, 117, 118, 115, 114, 111, 108, 28.21128 + 107, 108, 112, 111, 108, 105, 106, 108, 110, 109, 108, 115, 114, 113, 112, 113, 28.21129 + 114, 113, 110, 112, 112, 112, 109, 105, 104, 106, 108, 103, 105, 108, 110, 111, 28.21130 + 109, 106, 103, 107, 108, 106, 108, 109, 111, 110, 111, 107, 107, 106, 108, 107, 28.21131 + 109, 110, 113, 109, 111, 111, 110, 110, 111, 112, 114, 115, 114, 113, 112, 112, 28.21132 + 114, 115, 116, 119, 118, 117, 117, 116, 114, 114, 115, 118, 119, 118, 117, 116, 28.21133 + 118, 118, 118, 116, 114, 115, 113, 113, 113, 118, 118, 112, 108, 107, 107, 111, 28.21134 + 115, 119, 120, 121, 120, 117, 117, 120, 121, 119, 117, 119, 118, 116, 114, 112, 28.21135 + 112, 111, 112, 111, 99, 103, 110, 106, 109, 114, 114, 106, 103, 99, 106, 122, 28.21136 + 134, 135, 128, 121, 131, 142, 143, 147, 148, 147, 138, 145, 143, 145, 143, 145, 28.21137 + 143, 145, 146, 151, 153, 152, 89, 88, 92, 91, 93, 92, 95, 96, 94, 95, 28.21138 + 96, 98, 95, 93, 94, 99, 83, 84, 86, 88, 92, 95, 95, 98, 101, 100, 28.21139 + 99, 104, 106, 103, 105, 106, 102, 100, 100, 100, 106, 107, 109, 107, 113, 116, 28.21140 + 121, 122, 124, 120, 119, 116, 114, 113, 117, 119, 120, 121, 122, 122, 125, 119, 28.21141 + 114, 110, 105, 100, 101, 106, 111, 107, 103, 103, 108, 110, 109, 106, 111, 111, 28.21142 + 110, 107, 108, 110, 109, 104, 108, 111, 114, 113, 111, 110, 113, 116, 104, 104, 28.21143 + 105, 109, 112, 114, 113, 112, 112, 111, 108, 107, 106, 106, 104, 105, 107, 107, 28.21144 + 105, 107, 106, 109, 111, 114, 114, 114, 113, 112, 112, 115, 117, 119, 112, 112, 28.21145 + 113, 114, 115, 117, 119, 120, 120, 118, 118, 115, 113, 111, 112, 112, 115, 115, 28.21146 + 117, 116, 116, 116, 116, 115, 113, 113, 114, 115, 115, 114, 117, 119, 122, 118, 28.21147 + 113, 108, 107, 109, 112, 116, 117, 113, 109, 111, 117, 120, 117, 113, 113, 112, 28.21148 + 111, 111, 111, 111, 111, 112, 109, 96, 101, 106, 101, 101, 107, 104, 102, 109, 28.21149 + 110, 103, 104, 118, 133, 141, 142, 139, 130, 126, 137, 148, 147, 135, 141, 140, 28.21150 + 142, 141, 143, 143, 144, 145, 141, 141, 143, 76, 76, 80, 80, 83, 84, 90, 28.21151 + 95, 91, 95, 98, 96, 94, 97, 98, 96, 89, 90, 91, 93, 95, 98, 100, 28.21152 + 102, 102, 98, 98, 102, 102, 99, 102, 105, 106, 103, 104, 103, 104, 104, 106, 28.21153 + 106, 114, 116, 121, 122, 125, 123, 124, 123, 121, 121, 124, 126, 127, 127, 127, 28.21154 + 125, 126, 120, 117, 114, 108, 100, 99, 104, 107, 105, 103, 103, 104, 107, 108, 28.21155 + 109, 104, 106, 104, 100, 101, 104, 103, 99, 106, 111, 116, 116, 112, 110, 111, 28.21156 + 113, 108, 106, 104, 105, 109, 112, 112, 111, 113, 112, 109, 108, 107, 108, 107, 28.21157 + 108, 109, 109, 106, 106, 105, 107, 108, 112, 116, 116, 115, 115, 117, 119, 120, 28.21158 + 120, 115, 115, 116, 116, 117, 116, 116, 116, 118, 116, 116, 113, 111, 110, 112, 28.21159 + 112, 114, 114, 115, 115, 115, 116, 116, 115, 110, 113, 116, 116, 115, 112, 114, 28.21160 + 114, 123, 121, 117, 110, 105, 103, 103, 106, 111, 109, 106, 107, 111, 113, 112, 28.21161 + 110, 103, 104, 104, 105, 106, 106, 106, 106, 116, 103, 107, 112, 107, 107, 110, 28.21162 + 105, 108, 111, 109, 103, 96, 103, 124, 144, 149, 149, 140, 124, 127, 137, 143, 28.21163 + 137, 141, 139, 141, 139, 142, 140, 142, 142, 145, 143, 145, 83, 84, 85, 84, 28.21164 + 83, 82, 87, 91, 92, 96, 97, 94, 94, 97, 97, 90, 98, 100, 100, 101, 28.21165 + 102, 104, 105, 106, 93, 89, 91, 98, 102, 102, 107, 113, 112, 111, 112, 108, 28.21166 + 103, 101, 102, 103, 116, 117, 118, 120, 120, 122, 124, 125, 122, 122, 124, 125, 28.21167 + 125, 124, 124, 122, 127, 122, 122, 122, 119, 110, 107, 112, 107, 107, 108, 106, 28.21168 + 103, 104, 109, 114, 108, 110, 108, 104, 104, 108, 107, 102, 108, 113, 117, 116, 28.21169 + 109, 104, 102, 103, 113, 108, 103, 101, 102, 104, 104, 104, 111, 109, 109, 110, 28.21170 + 112, 114, 117, 117, 114, 112, 111, 109, 108, 109, 110, 112, 111, 113, 114, 116, 28.21171 + 118, 119, 117, 116, 120, 120, 119, 118, 115, 112, 108, 106, 117, 116, 114, 112, 28.21172 + 112, 112, 113, 113, 107, 108, 110, 111, 111, 113, 112, 111, 105, 106, 110, 110, 28.21173 + 107, 106, 106, 107, 105, 106, 107, 106, 103, 103, 104, 107, 109, 112, 112, 111, 28.21174 + 110, 110, 112, 113, 107, 108, 109, 109, 110, 109, 108, 106, 102, 91, 92, 98, 28.21175 + 95, 95, 99, 96, 102, 96, 100, 113, 111, 100, 99, 115, 106, 135, 153, 147, 28.21176 + 133, 131, 134, 136, 137, 137, 136, 136, 135, 135, 134, 136, 141, 139, 137, 95, 28.21177 + 89, 87, 90, 90, 85, 82, 85, 95, 89, 90, 96, 100, 93, 91, 94, 97, 28.21178 + 97, 112, 106, 111, 110, 95, 120, 115, 117, 117, 116, 113, 111, 112, 110, 122, 28.21179 + 116, 117, 124, 126, 122, 124, 129, 128, 116, 113, 121, 125, 124, 120, 119, 116, 28.21180 + 118, 121, 121, 119, 119, 125, 128, 132, 131, 127, 124, 123, 123, 123, 119, 111, 28.21181 + 109, 110, 110, 110, 110, 111, 111, 104, 103, 103, 107, 111, 112, 109, 105, 115, 28.21182 + 117, 116, 115, 115, 116, 116, 117, 109, 112, 114, 112, 108, 107, 112, 116, 119, 28.21183 + 114, 111, 108, 109, 110, 113, 117, 111, 112, 115, 119, 119, 119, 119, 118, 112, 28.21184 + 115, 117, 117, 117, 118, 121, 124, 121, 117, 114, 114, 116, 117, 114, 111, 114, 28.21185 + 111, 112, 115, 116, 112, 111, 114, 110, 109, 109, 110, 112, 114, 112, 110, 114, 28.21186 + 118, 118, 114, 115, 120, 121, 116, 120, 114, 111, 112, 111, 106, 106, 114, 112, 28.21187 + 115, 115, 115, 113, 111, 108, 107, 108, 106, 104, 103, 103, 104, 106, 107, 104, 28.21188 + 112, 96, 87, 101, 72, 99, 115, 112, 120, 122, 113, 110, 106, 92, 79, 86, 28.21189 + 104, 134, 165, 146, 141, 117, 138, 134, 131, 136, 145, 146, 138, 136, 140, 143, 28.21190 + 143, 143 }; 28.21191 + 28.21192 +/* Define image 'test' of size 555x103x1x3 and type 'unsigned char' */ 28.21193 +const unsigned char data_logo[] = { 28.21194 + 76, 77, 75, 75, 75, 99, 102, 72, 63, 0, 84, 115, 114, 110, 115, 80, 28.21195 + 81, 108, 112, 69, 38, 87, 115, 118, 96, 116, 84, 88, 85, 107, 83, 72, 28.21196 + 65, 0, 111, 131, 127, 72, 131, 75, 73, 77, 104, 102, 33, 56, 111, 110, 28.21197 + 111, 114, 116, 112, 87, 80, 104, 100, 106, 24, 96, 79, 71, 71, 104, 108, 28.21198 + 83, 69, 65, 57, 63, 32, 100, 120, 76, 79, 79, 65, 107, 67, 84, 69, 28.21199 + 59, 32, 65, 112, 67, 68, 69, 111, 103, 71, 103, 59, 61, 4, 107, 111, 28.21200 + 80, 118, 136, 80, 65, 106, 71, 96, 37, 38, 115, 123, 118, 57, 48, 57, 28.21201 + 83, 57, 87, 51, 49, 12, 100, 106, 118, 111, 96, 100, 96, 68, 65, 55, 28.21202 + 46, 0, 103, 106, 97, 103, 72, 65, 63, 93, 127, 68, 65, 17, 92, 126, 28.21203 + 106, 65, 64, 96, 68, 61, 57, 55, 36, 67, 131, 110, 67, 106, 93, 63, 28.21204 + 65, 63, 95, 130, 53, 0, 100, 79, 103, 99, 75, 59, 64, 93, 97, 89, 28.21205 + 14, 104, 106, 65, 71, 67, 68, 103, 69, 55, 63, 99, 16, 97, 96, 72, 28.21206 + 100, 99, 88, 75, 67, 69, 55, 52, 46, 1, 52, 123, 84, 87, 57, 85, 28.21207 + 48, 93, 52, 49, 45, 17, 95, 100, 64, 103, 77, 57, 53, 49, 48, 48, 28.21208 + 38, 5, 89, 93, 102, 99, 55, 59, 68, 52, 89, 36, 8, 136, 111, 112, 28.21209 + 80, 136, 111, 106, 76, 85, 76, 79, 69, 38, 61, 108, 93, 68, 59, 65, 28.21210 + 92, 59, 89, 52, 28, 52, 128, 147, 127, 154, 100, 93, 96, 128, 85, 88, 28.21211 + 26, 53, 93, 99, 89, 52, 56, 52, 103, 49, 49, 76, 22, 73, 103, 124, 28.21212 + 89, 132, 56, 51, 45, 52, 42, 53, 46, 12, 88, 55, 59, 59, 87, 57, 28.21213 + 48, 51, 84, 40, 49, 12, 123, 96, 87, 91, 92, 63, 65, 99, 49, 44, 28.21214 + 40, 4, 53, 118, 89, 111, 44, 46, 42, 73, 40, 41, 18, 81, 91, 88, 28.21215 + 87, 83, 49, 56, 93, 93, 46, 41, 33, 1, 93, 63, 93, 92, 46, 57, 28.21216 + 40, 44, 41, 80, 42, 1, 123, 95, 134, 69, 53, 84, 45, 41, 37, 36, 28.21217 + 17, 61, 91, 49, 102, 85, 38, 85, 87, 32, 36, 36, 5, 97, 142, 114, 28.21218 + 83, 72, 76, 143, 108, 69, 71, 64, 57, 1, 73, 79, 79, 48, 41, 42, 28.21219 + 48, 45, 44, 45, 44, 8, 79, 83, 38, 102, 68, 77, 30, 33, 30, 28, 28.21220 + 26, 2, 87, 107, 88, 93, 111, 34, 83, 88, 41, 36, 30, 20, 0, 108, 28.21221 + 115, 99, 91, 88, 69, 64, 60, 56, 61, 1, 115, 89, 116, 71, 26, 76, 28.21222 + 33, 84, 30, 26, 5, 75, 106, 53, 73, 32, 71, 24, 65, 97, 55, 26, 28.21223 + 20, 10, 48, 89, 80, 89, 85, 46, 21, 22, 30, 32, 22, 5, 77, 75, 28.21224 + 28, 71, 38, 79, 25, 20, 18, 16, 0, 114, 107, 95, 21, 24, 83, 69, 28.21225 + 73, 102, 30, 20, 16, 1, 85, 21, 21, 14, 16, 95, 75, 40, 17, 16, 28.21226 + 10, 1, 38, 80, 48, 77, 93, 10, 17, 21, 9, 14, 6, 0, 71, 76, 28.21227 + 21, 16, 9, 10, 22, 71, 16, 13, 6, 0, 38, 96, 67, 42, 29, 96, 28.21228 + 30, 30, 33, 24, 57, 18, 12, 97, 38, 114, 30, 110, 104, 110, 75, 75, 28.21229 + 93, 99, 77, 60, 0, 88, 120, 108, 103, 119, 87, 80, 106, 112, 63, 34, 28.21230 + 88, 106, 115, 108, 92, 84, 85, 84, 104, 89, 75, 65, 0, 107, 122, 118, 28.21231 + 76, 118, 76, 72, 88, 96, 91, 45, 61, 106, 107, 108, 93, 92, 76, 79, 28.21232 + 95, 81, 89, 97, 37, 92, 85, 71, 72, 77, 108, 99, 83, 67, 57, 60, 28.21233 + 42, 100, 124, 80, 77, 89, 75, 107, 77, 89, 67, 52, 29, 67, 112, 69, 28.21234 + 68, 69, 106, 99, 75, 99, 57, 59, 1, 106, 107, 96, 112, 130, 87, 65, 28.21235 + 102, 75, 87, 30, 42, 97, 114, 68, 49, 55, 63, 69, 72, 59, 46, 44, 28.21236 + 17, 96, 102, 97, 131, 106, 92, 95, 95, 64, 57, 48, 0, 99, 102, 110, 28.21237 + 96, 72, 67, 71, 87, 107, 84, 65, 18, 87, 120, 103, 71, 68, 91, 95, 28.21238 + 64, 53, 57, 34, 67, 119, 92, 67, 79, 80, 84, 63, 64, 87, 115, 48, 28.21239 + 0, 99, 87, 88, 97, 76, 63, 69, 85, 95, 85, 20, 111, 102, 72, 76, 28.21240 + 60, 95, 93, 64, 64, 55, 84, 25, 91, 96, 88, 93, 72, 73, 73, 65, 28.21241 + 80, 53, 53, 41, 0, 65, 107, 73, 57, 72, 75, 52, 77, 51, 51, 46, 28.21242 + 24, 89, 103, 68, 92, 88, 65, 73, 71, 57, 46, 44, 5, 84, 89, 87, 28.21243 + 64, 57, 80, 59, 61, 79, 41, 12, 126, 110, 111, 91, 107, 110, 99, 83, 28.21244 + 95, 77, 87, 69, 36, 63, 110, 95, 59, 69, 87, 81, 56, 85, 61, 26, 28.21245 + 56, 123, 136, 120, 135, 99, 88, 97, 122, 85, 85, 32, 61, 93, 97, 77, 28.21246 + 49, 63, 55, 92, 51, 49, 65, 21, 69, 106, 115, 91, 112, 67, 56, 49, 28.21247 + 48, 44, 52, 48, 18, 68, 63, 65, 89, 85, 67, 48, 48, 69, 45, 48, 28.21248 + 12, 118, 102, 73, 83, 53, 53, 71, 92, 42, 45, 41, 5, 64, 103, 84, 28.21249 + 110, 41, 46, 48, 65, 40, 40, 17, 77, 87, 88, 83, 57, 84, 84, 87, 28.21250 + 65, 46, 49, 33, 1, 93, 67, 89, 81, 48, 52, 51, 36, 51, 67, 40, 28.21251 + 2, 114, 112, 100, 65, 38, 81, 45, 44, 36, 34, 17, 64, 83, 87, 95, 28.21252 + 57, 36, 83, 84, 32, 36, 34, 8, 91, 128, 108, 103, 68, 68, 110, 103, 28.21253 + 67, 81, 67, 61, 8, 69, 73, 68, 44, 40, 41, 37, 42, 40, 41, 41, 28.21254 + 12, 77, 81, 52, 83, 59, 76, 30, 32, 37, 28, 22, 4, 83, 83, 83, 28.21255 + 93, 76, 38, 75, 81, 51, 36, 28, 20, 0, 115, 119, 89, 83, 67, 65, 28.21256 + 65, 57, 56, 55, 0, 102, 104, 115, 57, 28, 68, 37, 81, 36, 25, 6, 28.21257 + 72, 108, 63, 65, 33, 63, 24, 25, 22, 22, 28, 21, 10, 48, 97, 61, 28.21258 + 79, 81, 42, 24, 24, 59, 37, 28, 5, 75, 61, 36, 44, 49, 72, 28, 28.21259 + 20, 20, 13, 1, 102, 91, 76, 40, 24, 85, 75, 55, 49, 40, 21, 14, 28.21260 + 1, 83, 41, 28, 17, 13, 25, 84, 73, 17, 25, 10, 0, 51, 77, 60, 28.21261 + 88, 51, 26, 17, 24, 8, 8, 6, 0, 75, 72, 18, 18, 12, 10, 12, 28.21262 + 69, 21, 34, 6, 0, 34, 87, 61, 48, 28, 79, 34, 28, 29, 21, 51, 28.21263 + 16, 12, 104, 51, 104, 41, 84, 97, 85, 75, 75, 88, 100, 77, 69, 8, 28.21264 + 91, 115, 103, 110, 110, 89, 80, 93, 108, 67, 32, 88, 111, 108, 112, 88, 28.21265 + 87, 79, 85, 100, 87, 76, 64, 0, 106, 110, 81, 106, 92, 76, 73, 79, 28.21266 + 102, 91, 42, 64, 110, 96, 77, 79, 96, 96, 95, 88, 88, 85, 103, 36, 28.21267 + 85, 84, 73, 69, 71, 87, 100, 95, 76, 57, 57, 42, 102, 126, 79, 81, 28.21268 + 77, 77, 85, 91, 81, 69, 65, 28, 73, 97, 73, 69, 87, 104, 80, 91, 28.21269 + 92, 56, 59, 2, 92, 106, 83, 81, 79, 72, 67, 100, 77, 81, 28, 42, 28.21270 + 104, 108, 65, 41, 63, 42, 48, 46, 46, 51, 44, 17, 91, 100, 99, 100, 28.21271 + 116, 100, 80, 91, 67, 57, 48, 0, 97, 111, 104, 88, 79, 65, 67, 68, 28.21272 + 65, 76, 65, 24, 79, 118, 99, 69, 64, 76, 97, 60, 59, 59, 33, 68, 28.21273 + 115, 103, 100, 85, 81, 83, 81, 67, 81, 102, 60, 1, 88, 88, 96, 87, 28.21274 + 84, 68, 72, 80, 89, 79, 21, 104, 102, 69, 68, 93, 68, 59, 71, 65, 28.21275 + 51, 79, 28, 87, 96, 80, 75, 83, 77, 72, 72, 67, 52, 52, 53, 9, 28.21276 + 51, 103, 72, 63, 75, 71, 57, 69, 51, 49, 46, 26, 85, 102, 68, 91, 28.21277 + 76, 76, 63, 67, 59, 51, 42, 4, 80, 88, 76, 64, 77, 52, 59, 48, 28.21278 + 71, 32, 13, 118, 107, 108, 100, 88, 76, 80, 91, 77, 83, 83, 68, 33, 28.21279 + 64, 104, 91, 64, 68, 104, 84, 63, 73, 67, 28, 80, 122, 122, 119, 126, 28.21280 + 108, 96, 103, 119, 89, 87, 37, 59, 93, 95, 76, 55, 63, 56, 87, 49, 28.21281 + 46, 59, 20, 69, 100, 107, 92, 108, 80, 53, 51, 45, 44, 51, 48, 20, 28.21282 + 83, 68, 63, 100, 61, 59, 51, 48, 68, 45, 52, 20, 106, 96, 72, 80, 28.21283 + 104, 106, 104, 87, 45, 46, 34, 9, 65, 96, 83, 76, 41, 45, 56, 41, 28.21284 + 40, 41, 22, 68, 85, 87, 81, 63, 59, 48, 61, 49, 45, 45, 32, 9, 28.21285 + 100, 73, 103, 53, 37, 49, 51, 34, 44, 57, 40, 2, 107, 89, 112, 91, 28.21286 + 63, 89, 49, 45, 41, 30, 21, 75, 69, 96, 73, 37, 44, 80, 87, 33, 28.21287 + 34, 36, 8, 83, 128, 110, 95, 81, 72, 76, 69, 69, 76, 68, 60, 5, 28.21288 + 67, 79, 53, 37, 36, 34, 34, 37, 44, 37, 33, 10, 73, 84, 59, 71, 28.21289 + 52, 68, 32, 33, 34, 30, 26, 0, 80, 81, 87, 103, 49, 37, 63, 84, 28.21290 + 45, 37, 29, 20, 0, 95, 120, 89, 80, 65, 69, 65, 69, 53, 55, 0, 28.21291 + 96, 91, 60, 33, 59, 56, 60, 76, 30, 26, 8, 64, 99, 55, 85, 30, 28.21292 + 28, 22, 22, 22, 22, 28, 18, 9, 44, 87, 71, 76, 75, 44, 25, 26, 28.21293 + 30, 37, 25, 10, 67, 55, 57, 59, 51, 65, 26, 21, 20, 16, 1, 96, 28.21294 + 69, 61, 30, 22, 79, 75, 48, 42, 33, 34, 16, 0, 92, 22, 24, 25, 28.21295 + 16, 16, 14, 75, 49, 24, 10, 0, 51, 64, 72, 103, 24, 16, 37, 37, 28.21296 + 8, 8, 6, 0, 65, 72, 41, 30, 16, 9, 46, 32, 18, 18, 6, 0, 28.21297 + 33, 34, 63, 51, 24, 22, 25, 28, 25, 25, 42, 13, 16, 96, 63, 93, 28.21298 + 83, 80, 92, 85, 73, 75, 85, 93, 72, 68, 0, 92, 123, 100, 99, 110, 28.21299 + 106, 81, 91, 99, 65, 26, 87, 108, 100, 81, 81, 99, 89, 91, 93, 97, 28.21300 + 75, 63, 8, 104, 104, 77, 96, 80, 77, 73, 83, 88, 71, 42, 69, 106, 28.21301 + 92, 114, 88, 103, 95, 91, 87, 79, 88, 91, 40, 83, 96, 79, 69, 71, 28.21302 + 69, 75, 87, 64, 61, 53, 44, 106, 134, 67, 72, 75, 91, 80, 76, 67, 28.21303 + 65, 64, 24, 71, 103, 69, 72, 93, 84, 85, 85, 71, 59, 56, 2, 102, 28.21304 + 106, 100, 97, 93, 68, 84, 80, 89, 59, 25, 42, 92, 59, 42, 34, 36, 28.21305 + 29, 34, 34, 36, 45, 37, 17, 87, 100, 89, 93, 110, 112, 83, 72, 71, 28.21306 + 64, 41, 0, 95, 102, 102, 85, 83, 95, 79, 76, 71, 75, 67, 26, 76, 28.21307 + 97, 96, 72, 67, 71, 88, 71, 56, 44, 29, 65, 110, 97, 103, 111, 91, 28.21308 + 107, 95, 81, 75, 92, 57, 0, 84, 93, 79, 81, 83, 71, 65, 80, 75, 28.21309 + 73, 25, 99, 97, 73, 71, 69, 68, 57, 60, 67, 46, 71, 30, 83, 89, 28.21310 + 85, 87, 80, 76, 73, 75, 80, 52, 52, 52, 2, 63, 85, 63, 52, 72, 28.21311 + 63, 57, 67, 48, 51, 46, 30, 81, 100, 76, 89, 97, 59, 69, 65, 59, 28.21312 + 49, 38, 9, 65, 85, 93, 68, 42, 75, 60, 65, 67, 29, 12, 104, 111, 28.21313 + 107, 97, 79, 84, 85, 77, 75, 88, 87, 68, 28, 67, 103, 84, 60, 75, 28.21314 + 81, 69, 59, 69, 67, 28, 63, 120, 128, 112, 99, 95, 100, 115, 112, 89, 28.21315 + 87, 42, 59, 88, 103, 53, 65, 55, 52, 99, 49, 44, 51, 17, 69, 99, 28.21316 + 91, 84, 91, 96, 55, 61, 48, 44, 55, 48, 21, 73, 67, 71, 76, 65, 28.21317 + 67, 56, 49, 61, 45, 55, 21, 103, 96, 71, 83, 75, 79, 61, 60, 59, 28.21318 + 59, 32, 12, 67, 83, 84, 73, 41, 49, 55, 36, 38, 46, 24, 69, 83, 28.21319 + 84, 77, 88, 56, 55, 55, 64, 38, 44, 33, 2, 87, 61, 76, 79, 33, 28.21320 + 61, 64, 37, 41, 56, 41, 2, 92, 96, 110, 73, 60, 104, 56, 48, 38, 28.21321 + 34, 24, 73, 52, 88, 68, 36, 40, 73, 72, 32, 34, 36, 6, 88, 120, 28.21322 + 103, 69, 76, 72, 69, 65, 71, 83, 69, 57, 8, 52, 72, 40, 32, 30, 28.21323 + 25, 36, 34, 40, 29, 29, 10, 67, 67, 53, 57, 46, 61, 37, 45, 37, 28.21324 + 30, 28, 0, 77, 77, 77, 99, 37, 46, 57, 72, 57, 33, 30, 18, 0, 28.21325 + 103, 120, 80, 73, 65, 69, 65, 71, 52, 55, 0, 88, 95, 56, 26, 52, 28.21326 + 24, 44, 34, 52, 26, 9, 61, 75, 84, 61, 45, 22, 21, 22, 22, 22, 28.21327 + 33, 25, 8, 52, 81, 75, 65, 64, 56, 26, 26, 38, 38, 29, 9, 72, 28.21328 + 53, 53, 45, 52, 45, 25, 20, 18, 16, 1, 89, 60, 49, 34, 25, 76, 28.21329 + 83, 87, 57, 40, 24, 18, 0, 88, 41, 34, 33, 10, 14, 14, 16, 38, 28.21330 + 24, 10, 1, 57, 67, 57, 34, 10, 21, 21, 16, 8, 8, 6, 0, 60, 28.21331 + 71, 20, 30, 21, 9, 30, 25, 28, 20, 6, 0, 16, 56, 52, 51, 22, 28.21332 + 21, 21, 21, 14, 17, 26, 10, 18, 80, 63, 64, 92, 72, 75, 76, 75, 28.21333 + 75, 88, 89, 69, 60, 0, 89, 97, 99, 102, 104, 106, 85, 84, 84, 64, 28.21334 + 26, 84, 115, 110, 89, 96, 108, 96, 93, 95, 81, 71, 61, 0, 103, 106, 28.21335 + 75, 100, 79, 79, 73, 77, 91, 65, 44, 68, 102, 106, 91, 88, 99, 104, 28.21336 + 92, 92, 92, 85, 91, 41, 52, 88, 83, 69, 72, 69, 71, 69, 72, 57, 28.21337 + 56, 46, 102, 110, 76, 92, 81, 95, 88, 79, 71, 65, 53, 22, 72, 99, 28.21338 + 72, 89, 85, 79, 87, 89, 63, 57, 56, 12, 97, 92, 91, 80, 68, 83, 28.21339 + 71, 77, 92, 57, 22, 41, 93, 51, 28, 29, 34, 42, 25, 30, 37, 51, 28.21340 + 37, 21, 85, 99, 93, 89, 110, 88, 89, 73, 75, 53, 41, 0, 92, 89, 28.21341 + 108, 93, 68, 76, 81, 88, 84, 72, 69, 30, 44, 93, 103, 85, 64, 65, 28.21342 + 83, 75, 53, 42, 29, 64, 108, 100, 77, 88, 99, 89, 87, 89, 75, 93, 28.21343 + 48, 0, 91, 99, 97, 77, 83, 75, 73, 79, 77, 75, 28, 93, 96, 92, 28.21344 + 76, 77, 65, 55, 55, 68, 67, 72, 29, 81, 81, 77, 77, 83, 79, 85, 28.21345 + 83, 80, 53, 52, 42, 2, 48, 91, 60, 60, 67, 55, 64, 63, 52, 48, 28.21346 + 45, 30, 49, 91, 69, 96, 97, 63, 67, 56, 55, 41, 38, 9, 76, 80, 28.21347 + 72, 59, 75, 80, 80, 73, 71, 26, 10, 59, 114, 103, 89, 81, 85, 81, 28.21348 + 79, 79, 89, 67, 67, 26, 75, 100, 87, 68, 77, 65, 61, 64, 65, 56, 28.21349 + 28, 64, 120, 108, 122, 92, 118, 100, 111, 95, 88, 91, 46, 48, 84, 100, 28.21350 + 53, 64, 67, 72, 88, 51, 40, 48, 22, 69, 93, 75, 79, 68, 72, 64, 28.21351 + 56, 67, 42, 53, 48, 24, 75, 69, 69, 69, 60, 61, 65, 53, 48, 48, 28.21352 + 51, 24, 92, 92, 83, 79, 57, 75, 61, 67, 60, 46, 42, 12, 73, 93, 28.21353 + 75, 65, 38, 53, 49, 36, 37, 37, 24, 32, 77, 81, 79, 80, 53, 46, 28.21354 + 67, 52, 41, 41, 30, 4, 84, 84, 71, 75, 53, 68, 72, 34, 40, 53, 28.21355 + 40, 5, 89, 88, 104, 61, 88, 89, 71, 49, 34, 34, 25, 75, 69, 83, 28.21356 + 69, 65, 34, 67, 71, 32, 34, 37, 12, 75, 126, 97, 79, 72, 72, 79, 28.21357 + 76, 72, 77, 79, 53, 9, 38, 67, 33, 28, 37, 26, 32, 24, 32, 25, 28.21358 + 25, 10, 32, 68, 42, 73, 49, 51, 51, 51, 38, 42, 25, 0, 77, 80, 28.21359 + 81, 48, 67, 68, 52, 73, 67, 38, 44, 17, 0, 107, 115, 81, 73, 68, 28.21360 + 72, 67, 57, 52, 63, 4, 96, 83, 45, 36, 60, 56, 38, 46, 57, 26, 28.21361 + 14, 22, 64, 83, 85, 41, 32, 29, 24, 21, 21, 28, 21, 8, 46, 80, 28.21362 + 63, 63, 59, 51, 24, 22, 36, 42, 22, 10, 64, 57, 49, 44, 52, 67, 28.21363 + 26, 22, 18, 16, 1, 96, 73, 49, 20, 28, 20, 30, 32, 22, 38, 22, 28.21364 + 14, 2, 77, 33, 22, 14, 14, 10, 14, 14, 21, 14, 10, 0, 53, 61, 28.21365 + 57, 9, 28, 14, 59, 26, 21, 17, 5, 0, 48, 61, 28, 41, 36, 9, 28.21366 + 22, 33, 22, 16, 5, 0, 5, 12, 25, 36, 49, 37, 14, 12, 10, 36, 28.21367 + 17, 8, 26, 84, 68, 41, 32, 76, 79, 80, 75, 81, 81, 92, 77, 55, 28.21368 + 1, 84, 110, 92, 99, 107, 103, 85, 95, 95, 51, 24, 84, 110, 114, 93, 28.21369 + 93, 103, 103, 100, 95, 88, 84, 63, 0, 99, 110, 84, 100, 77, 73, 76, 28.21370 + 80, 88, 48, 41, 61, 84, 110, 95, 97, 83, 89, 88, 91, 79, 92, 69, 28.21371 + 44, 51, 79, 85, 79, 73, 72, 68, 77, 65, 56, 51, 49, 91, 128, 83, 28.21372 + 92, 83, 81, 93, 79, 67, 67, 46, 18, 76, 103, 68, 91, 76, 81, 95, 28.21373 + 87, 61, 52, 55, 5, 95, 96, 99, 89, 80, 87, 89, 77, 88, 56, 21, 28.21374 + 45, 91, 32, 49, 45, 51, 45, 22, 25, 34, 44, 33, 24, 51, 99, 93, 28.21375 + 84, 106, 102, 108, 96, 72, 51, 53, 0, 89, 96, 108, 91, 80, 76, 73, 28.21376 + 72, 75, 72, 68, 34, 38, 76, 83, 96, 63, 52, 73, 71, 49, 41, 25, 28.21377 + 56, 107, 95, 91, 88, 89, 83, 87, 72, 75, 92, 41, 0, 88, 88, 87, 28.21378 + 75, 84, 76, 67, 64, 84, 77, 34, 59, 81, 103, 87, 97, 75, 75, 79, 28.21379 + 83, 46, 69, 34, 55, 76, 79, 76, 75, 75, 71, 73, 57, 52, 55, 34, 28.21380 + 1, 48, 95, 65, 49, 49, 57, 45, 46, 46, 48, 45, 33, 38, 83, 91, 28.21381 + 92, 61, 67, 63, 53, 53, 44, 44, 8, 71, 76, 68, 48, 53, 40, 60, 28.21382 + 60, 81, 28, 12, 56, 112, 104, 89, 79, 80, 83, 93, 89, 89, 75, 56, 28.21383 + 21, 65, 95, 79, 68, 92, 65, 60, 63, 64, 52, 28, 57, 110, 108, 95, 28.21384 + 99, 91, 100, 107, 92, 87, 92, 49, 25, 72, 95, 49, 71, 67, 84, 73, 28.21385 + 44, 48, 45, 16, 68, 88, 81, 88, 67, 63, 68, 45, 48, 42, 52, 49, 28.21386 + 25, 65, 64, 71, 71, 64, 64, 60, 67, 49, 46, 53, 24, 45, 96, 85, 28.21387 + 63, 69, 77, 60, 75, 51, 48, 46, 12, 72, 92, 67, 38, 40, 56, 48, 28.21388 + 37, 38, 42, 30, 32, 72, 76, 75, 68, 57, 76, 42, 48, 40, 36, 30, 28.21389 + 4, 80, 69, 61, 56, 64, 37, 52, 34, 36, 49, 52, 8, 76, 104, 81, 28.21390 + 56, 52, 56, 75, 55, 33, 34, 22, 68, 61, 81, 77, 61, 37, 63, 36, 28.21391 + 34, 36, 37, 13, 88, 116, 93, 67, 64, 80, 63, 79, 75, 84, 71, 61, 28.21392 + 9, 60, 59, 28, 21, 26, 40, 24, 28, 20, 18, 24, 9, 24, 60, 87, 28.21393 + 53, 42, 29, 36, 48, 37, 33, 18, 5, 59, 80, 48, 51, 59, 52, 68, 28.21394 + 51, 51, 41, 32, 17, 0, 99, 107, 75, 72, 65, 68, 67, 56, 51, 51, 28.21395 + 4, 83, 88, 42, 26, 56, 57, 45, 33, 53, 24, 21, 17, 57, 81, 85, 28.21396 + 40, 21, 22, 20, 21, 25, 30, 21, 5, 69, 71, 59, 83, 56, 40, 26, 28.21397 + 26, 25, 44, 26, 10, 20, 65, 51, 46, 41, 41, 36, 22, 21, 12, 1, 28.21398 + 92, 61, 46, 28, 28, 37, 32, 26, 26, 41, 18, 14, 2, 75, 28, 14, 28.21399 + 10, 12, 13, 38, 25, 17, 13, 9, 0, 53, 55, 68, 30, 29, 40, 41, 28.21400 + 9, 22, 9, 5, 0, 34, 59, 32, 30, 30, 36, 37, 30, 22, 14, 5, 28.21401 + 0, 5, 4, 18, 21, 21, 33, 14, 9, 10, 24, 10, 4, 36, 72, 37, 28.21402 + 36, 32, 99, 92, 87, 84, 83, 81, 80, 81, 68, 16, 84, 96, 93, 92, 28.21403 + 93, 102, 96, 100, 95, 61, 20, 80, 103, 96, 96, 87, 92, 91, 95, 81, 28.21404 + 88, 79, 63, 0, 95, 102, 92, 79, 81, 96, 91, 93, 69, 56, 38, 80, 28.21405 + 91, 104, 104, 93, 65, 61, 65, 72, 72, 63, 64, 69, 63, 55, 61, 76, 28.21406 + 80, 79, 75, 64, 59, 52, 46, 56, 97, 124, 88, 96, 84, 93, 84, 67, 28.21407 + 76, 64, 63, 16, 75, 96, 67, 93, 93, 93, 83, 87, 73, 52, 56, 6, 28.21408 + 95, 96, 99, 87, 83, 93, 87, 89, 89, 41, 18, 40, 41, 22, 22, 45, 28.21409 + 37, 46, 26, 20, 24, 24, 49, 25, 40, 85, 93, 88, 85, 80, 84, 77, 28.21410 + 59, 55, 42, 1, 85, 80, 103, 83, 84, 79, 73, 69, 71, 67, 65, 63, 28.21411 + 61, 38, 42, 48, 53, 53, 63, 72, 56, 52, 28, 68, 102, 83, 83, 75, 28.21412 + 87, 85, 84, 87, 88, 91, 56, 1, 81, 88, 88, 79, 87, 84, 69, 80, 28.21413 + 80, 75, 37, 41, 48, 77, 75, 91, 85, 67, 61, 81, 63, 40, 34, 41, 28.21414 + 45, 73, 49, 52, 56, 52, 53, 52, 49, 55, 51, 14, 56, 84, 52, 48, 28.21415 + 44, 49, 46, 44, 49, 45, 45, 46, 32, 45, 71, 72, 51, 44, 59, 51, 28.21416 + 56, 51, 42, 5, 67, 73, 53, 67, 57, 57, 52, 56, 46, 25, 36, 40, 28.21417 + 110, 103, 93, 92, 85, 85, 84, 85, 87, 72, 65, 18, 69, 89, 76, 64, 28.21418 + 71, 73, 60, 60, 63, 55, 24, 92, 114, 92, 91, 99, 102, 100, 88, 96, 28.21419 + 96, 91, 53, 41, 61, 89, 51, 79, 73, 59, 53, 51, 49, 42, 16, 63, 28.21420 + 85, 68, 45, 45, 45, 46, 44, 45, 49, 53, 49, 26, 34, 75, 72, 71, 28.21421 + 65, 57, 56, 63, 48, 48, 51, 32, 38, 83, 84, 67, 75, 92, 71, 61, 28.21422 + 40, 46, 41, 16, 64, 69, 44, 38, 38, 38, 32, 36, 26, 34, 40, 26, 28.21423 + 36, 61, 60, 68, 45, 48, 41, 40, 40, 44, 28, 6, 71, 84, 89, 60, 28.21424 + 61, 61, 34, 57, 49, 45, 38, 6, 83, 88, 73, 93, 41, 40, 57, 53, 28.21425 + 42, 28, 20, 75, 65, 75, 69, 53, 37, 56, 37, 36, 34, 34, 14, 73, 28.21426 + 122, 99, 87, 76, 77, 80, 80, 76, 71, 71, 59, 9, 44, 17, 17, 14, 28.21427 + 6, 13, 14, 14, 14, 14, 20, 12, 28, 55, 42, 29, 30, 25, 30, 32, 28.21428 + 32, 36, 25, 1, 68, 68, 46, 45, 68, 53, 46, 45, 45, 45, 32, 16, 28.21429 + 0, 103, 107, 73, 72, 76, 68, 68, 76, 49, 49, 0, 76, 75, 46, 28, 28.21430 + 53, 53, 53, 38, 38, 25, 22, 14, 51, 68, 59, 18, 20, 26, 21, 25, 28.21431 + 28, 28, 22, 6, 49, 71, 76, 36, 45, 41, 26, 33, 40, 45, 32, 17, 28.21432 + 10, 36, 64, 61, 49, 53, 46, 36, 25, 16, 2, 81, 63, 44, 18, 26, 28.21433 + 28, 36, 32, 26, 41, 16, 18, 0, 69, 21, 14, 14, 12, 16, 30, 42, 28.21434 + 18, 16, 9, 1, 55, 79, 51, 32, 26, 48, 16, 24, 24, 9, 5, 0, 28.21435 + 16, 40, 44, 44, 33, 30, 36, 34, 29, 9, 5, 0, 5, 13, 6, 9, 28.21436 + 8, 8, 9, 9, 9, 21, 24, 4, 71, 85, 64, 46, 41, 76, 80, 75, 28.21437 + 80, 79, 87, 81, 69, 61, 0, 80, 81, 83, 81, 83, 81, 85, 80, 73, 28.21438 + 59, 14, 79, 83, 80, 77, 79, 77, 79, 85, 75, 76, 63, 61, 12, 89, 28.21439 + 96, 95, 92, 92, 84, 91, 89, 65, 53, 42, 68, 87, 96, 93, 65, 71, 28.21440 + 56, 55, 63, 71, 60, 57, 55, 59, 60, 63, 72, 67, 67, 65, 65, 51, 28.21441 + 53, 44, 56, 95, 95, 88, 75, 68, 73, 79, 63, 61, 63, 63, 13, 71, 28.21442 + 96, 87, 71, 67, 81, 89, 80, 69, 57, 56, 8, 89, 95, 104, 88, 89, 28.21443 + 96, 92, 87, 61, 49, 16, 49, 42, 14, 18, 13, 21, 16, 20, 20, 18, 28.21444 + 17, 21, 24, 52, 36, 44, 46, 46, 48, 49, 55, 60, 46, 36, 4, 77, 28.21445 + 83, 83, 80, 75, 52, 71, 44, 48, 51, 63, 46, 52, 55, 61, 55, 56, 28.21446 + 59, 59, 79, 57, 40, 21, 63, 67, 79, 68, 65, 65, 68, 69, 71, 63, 28.21447 + 57, 56, 1, 79, 77, 81, 76, 71, 69, 69, 69, 68, 61, 59, 59, 64, 28.21448 + 51, 49, 53, 52, 49, 63, 55, 60, 56, 53, 57, 56, 55, 45, 57, 56, 28.21449 + 48, 56, 57, 56, 53, 52, 4, 44, 75, 57, 45, 37, 37, 41, 42, 42, 28.21450 + 42, 46, 44, 46, 51, 49, 51, 49, 49, 51, 52, 52, 45, 37, 12, 57, 28.21451 + 63, 57, 53, 48, 44, 57, 40, 36, 32, 22, 38, 61, 100, 107, 69, 85, 28.21452 + 85, 88, 72, 73, 67, 65, 14, 61, 59, 61, 53, 55, 55, 59, 59, 63, 28.21453 + 56, 25, 68, 103, 95, 92, 83, 85, 83, 80, 72, 63, 65, 53, 41, 53, 28.21454 + 68, 64, 55, 53, 51, 52, 56, 44, 41, 13, 64, 81, 67, 63, 65, 57, 28.21455 + 63, 55, 60, 63, 59, 48, 51, 29, 33, 41, 59, 36, 40, 57, 61, 59, 28.21456 + 61, 46, 41, 32, 42, 88, 73, 71, 67, 40, 42, 49, 38, 30, 25, 59, 28.21457 + 76, 42, 32, 33, 34, 28, 28, 34, 28, 28, 33, 40, 40, 49, 42, 45, 28.21458 + 41, 42, 44, 45, 42, 30, 5, 68, 71, 77, 61, 38, 67, 59, 65, 49, 28.21459 + 48, 42, 9, 73, 88, 61, 57, 67, 65, 60, 59, 36, 34, 24, 73, 59, 28.21460 + 52, 42, 57, 34, 33, 36, 34, 33, 38, 10, 77, 104, 84, 53, 76, 72, 28.21461 + 53, 65, 69, 68, 65, 32, 12, 10, 13, 18, 8, 9, 14, 12, 13, 13, 28.21462 + 16, 16, 14, 22, 28, 26, 24, 24, 28, 29, 26, 26, 25, 25, 0, 56, 28.21463 + 60, 56, 53, 51, 49, 48, 38, 41, 40, 28, 16, 0, 93, 103, 72, 71, 28.21464 + 68, 71, 69, 75, 46, 49, 6, 63, 75, 44, 26, 20, 29, 22, 24, 16, 28.21465 + 18, 22, 16, 16, 18, 20, 22, 26, 25, 25, 24, 26, 25, 20, 6, 18, 28.21466 + 49, 45, 20, 28, 40, 37, 22, 30, 30, 30, 17, 12, 14, 25, 20, 20, 28.21467 + 18, 18, 24, 25, 16, 2, 53, 60, 53, 45, 42, 42, 37, 26, 32, 41, 28.21468 + 17, 17, 0, 65, 37, 14, 12, 10, 29, 25, 25, 20, 17, 10, 1, 49, 28.21469 + 75, 30, 30, 6, 29, 28, 8, 9, 20, 4, 0, 13, 22, 36, 10, 10, 28.21470 + 16, 25, 21, 10, 10, 5, 0, 4, 10, 10, 9, 8, 8, 8, 10, 8, 28.21471 + 17, 10, 2, 56, 85, 42, 24, 24, 56, 55, 63, 52, 51, 46, 63, 45, 28.21472 + 18, 0, 33, 41, 38, 40, 45, 42, 42, 44, 48, 42, 17, 44, 51, 49, 28.21473 + 46, 44, 42, 40, 41, 40, 38, 37, 30, 0, 33, 36, 34, 42, 42, 37, 28.21474 + 38, 49, 45, 34, 45, 38, 60, 65, 38, 37, 46, 38, 36, 37, 34, 36, 28.21475 + 32, 33, 30, 30, 34, 38, 41, 42, 44, 48, 49, 53, 41, 46, 64, 63, 28.21476 + 55, 49, 53, 60, 51, 48, 56, 51, 32, 12, 37, 55, 65, 55, 59, 57, 28.21477 + 64, 57, 60, 53, 52, 9, 81, 92, 91, 91, 79, 75, 83, 73, 46, 45, 28.21478 + 12, 61, 26, 10, 14, 10, 10, 12, 17, 16, 13, 20, 16, 17, 21, 22, 28.21479 + 18, 30, 32, 34, 36, 36, 40, 42, 38, 1, 24, 36, 41, 26, 26, 26, 28.21480 + 28, 21, 21, 18, 26, 25, 18, 20, 26, 26, 28, 21, 51, 53, 52, 33, 28.21481 + 20, 36, 42, 41, 41, 41, 56, 51, 41, 37, 36, 32, 16, 30, 33, 37, 28.21482 + 45, 52, 40, 41, 45, 45, 45, 45, 46, 45, 49, 51, 55, 51, 51, 49, 28.21483 + 51, 51, 55, 48, 45, 44, 53, 48, 44, 41, 52, 41, 37, 36, 52, 36, 28.21484 + 8, 6, 41, 29, 29, 32, 20, 25, 17, 16, 18, 21, 18, 18, 20, 20, 28.21485 + 20, 20, 26, 28, 32, 33, 44, 36, 34, 12, 12, 13, 14, 13, 16, 10, 28.21486 + 14, 13, 17, 12, 12, 25, 46, 42, 49, 52, 49, 48, 51, 51, 51, 46, 28.21487 + 44, 13, 38, 44, 42, 45, 42, 42, 44, 55, 46, 45, 26, 18, 71, 81, 28.21488 + 60, 60, 65, 76, 61, 61, 67, 69, 59, 41, 36, 37, 42, 49, 52, 51, 28.21489 + 55, 63, 41, 37, 12, 56, 75, 75, 69, 55, 60, 60, 60, 51, 48, 46, 28.21490 + 40, 37, 41, 45, 45, 42, 44, 41, 44, 42, 41, 40, 38, 41, 42, 44, 28.21491 + 46, 49, 44, 42, 41, 41, 41, 34, 45, 17, 60, 33, 26, 25, 22, 21, 28.21492 + 24, 18, 17, 16, 17, 17, 17, 30, 16, 17, 17, 20, 18, 28, 30, 26, 28.21493 + 25, 6, 18, 64, 60, 26, 26, 52, 51, 26, 33, 44, 33, 9, 44, 72, 28.21494 + 67, 48, 46, 57, 56, 38, 36, 32, 25, 69, 59, 36, 34, 32, 32, 34, 28.21495 + 32, 33, 33, 36, 17, 65, 81, 73, 26, 21, 22, 22, 25, 18, 18, 12, 28.21496 + 36, 13, 0, 1, 8, 1, 8, 0, 4, 5, 8, 4, 10, 13, 18, 22, 28.21497 + 21, 16, 22, 21, 22, 14, 24, 22, 17, 0, 10, 13, 14, 13, 13, 12, 28.21498 + 13, 13, 13, 13, 13, 13, 0, 41, 89, 85, 83, 83, 81, 80, 73, 45, 28.21499 + 64, 8, 42, 61, 24, 26, 21, 22, 32, 26, 24, 22, 22, 21, 18, 12, 28.21500 + 10, 10, 8, 10, 9, 9, 8, 6, 6, 4, 9, 9, 9, 12, 10, 10, 28.21501 + 10, 10, 13, 12, 12, 13, 13, 14, 14, 16, 16, 16, 14, 14, 16, 14, 28.21502 + 2, 9, 17, 26, 12, 14, 17, 34, 34, 41, 21, 20, 12, 4, 60, 20, 28.21503 + 22, 21, 17, 18, 13, 17, 12, 9, 6, 2, 8, 14, 30, 2, 2, 1, 28.21504 + 4, 1, 1, 1, 13, 0, 2, 2, 1, 8, 4, 5, 4, 8, 10, 14, 28.21505 + 4, 0, 8, 2, 13, 4, 9, 12, 13, 9, 16, 17, 9, 5, 37, 85, 28.21506 + 30, 29, 25, 4, 1, 4, 12, 13, 1, 1, 18, 20, 6, 21, 17, 13, 28.21507 + 12, 10, 24, 9, 8, 6, 25, 20, 2, 21, 4, 2, 2, 13, 2, 2, 28.21508 + 2, 1, 1, 1, 2, 5, 8, 5, 9, 6, 6, 6, 12, 9, 9, 45, 28.21509 + 48, 51, 72, 72, 81, 81, 83, 89, 91, 87, 81, 83, 81, 81, 100, 80, 28.21510 + 83, 52, 55, 51, 49, 42, 42, 36, 25, 28, 24, 22, 18, 18, 17, 17, 28.21511 + 17, 18, 20, 20, 20, 22, 26, 26, 29, 33, 34, 37, 38, 41, 44, 48, 28.21512 + 16, 13, 34, 36, 36, 34, 36, 37, 37, 37, 33, 14, 33, 9, 24, 12, 28.21513 + 18, 12, 17, 36, 55, 69, 72, 59, 61, 75, 79, 88, 79, 72, 59, 53, 28.21514 + 44, 46, 18, 36, 2, 16, 18, 33, 33, 40, 48, 57, 65, 91, 81, 65, 28.21515 + 56, 88, 91, 77, 87, 88, 63, 48, 42, 33, 21, 10, 18, 16, 8, 10, 28.21516 + 10, 9, 5, 6, 6, 5, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 28.21517 + 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2, 0, 0, 28.21518 + 0, 8, 0, 0, 0, 13, 0, 0, 0, 21, 0, 0, 4, 12, 20, 25, 28.21519 + 24, 65, 89, 92, 99, 92, 85, 63, 72, 88, 85, 69, 83, 80, 73, 59, 28.21520 + 40, 34, 17, 26, 13, 1, 0, 12, 10, 0, 0, 8, 2, 4, 0, 2, 28.21521 + 4, 4, 0, 1, 1, 0, 2, 9, 10, 0, 4, 1, 1, 25, 28, 1, 28.21522 + 1, 14, 16, 16, 17, 24, 17, 30, 9, 9, 14, 10, 9, 10, 14, 9, 28.21523 + 9, 9, 14, 10, 10, 10, 32, 10, 10, 10, 13, 16, 20, 20, 37, 10, 28.21524 + 29, 48, 48, 30, 29, 44, 44, 29, 29, 30, 29, 28, 21, 21, 17, 10, 28.21525 + 13, 14, 16, 21, 21, 32, 32, 30, 28, 32, 30, 22, 21, 28, 22, 17, 28.21526 + 14, 26, 16, 36, 21, 32, 44, 56, 53, 57, 65, 85, 67, 49, 45, 34, 28.21527 + 34, 42, 71, 68, 71, 64, 48, 34, 28, 24, 18, 13, 14, 17, 25, 18, 28.21528 + 22, 14, 18, 21, 24, 16, 17, 13, 26, 25, 25, 26, 26, 25, 22, 25, 28.21529 + 25, 24, 24, 26, 65, 34, 26, 34, 28, 32, 28, 29, 25, 25, 26, 33, 28.21530 + 20, 26, 37, 42, 52, 53, 55, 55, 45, 52, 38, 29, 5, 25, 97, 69, 28.21531 + 63, 45, 22, 25, 17, 16, 4, 4, 4, 1, 8, 6, 2, 1, 8, 8, 28.21532 + 5, 1, 6, 8, 2, 1, 5, 6, 5, 0, 4, 1, 4, 0, 1, 1, 28.21533 + 0, 0, 20, 22, 26, 29, 32, 34, 37, 40, 44, 42, 6, 49, 16, 17, 28.21534 + 12, 10, 14, 12, 10, 9, 12, 6, 9, 29, 41, 45, 56, 57, 60, 61, 28.21535 + 52, 45, 38, 17, 6, 57, 69, 68, 49, 63, 57, 52, 21, 10, 10, 4, 28.21536 + 8, 8, 9, 8, 12, 10, 6, 4, 5, 4, 2, 2, 9, 8, 9, 6, 28.21537 + 6, 9, 12, 13, 14, 13, 13, 12, 0, 51, 2, 2, 5, 2, 1, 1, 28.21538 + 0, 1, 1, 0, 1, 4, 14, 29, 25, 26, 36, 40, 37, 33, 25, 6, 28.21539 + 0, 41, 69, 61, 61, 61, 56, 26, 16, 6, 4, 1, 0, 0, 2, 0, 28.21540 + 0, 4, 2, 2, 1, 2, 0, 6, 4, 24, 76, 42, 40, 29, 138, 130, 28.21541 + 122, 114, 106, 103, 99, 75, 36, 16, 52, 102, 108, 95, 81, 83, 87, 87, 28.21542 + 89, 68, 30, 40, 102, 106, 107, 102, 111, 108, 108, 99, 104, 92, 103, 99, 28.21543 + 108, 110, 114, 122, 118, 108, 111, 100, 59, 45, 53, 81, 108, 122, 111, 102, 28.21544 + 111, 110, 111, 100, 106, 111, 103, 71, 65, 77, 71, 83, 80, 79, 87, 81, 28.21545 + 41, 53, 41, 40, 102, 99, 89, 81, 88, 87, 76, 76, 77, 65, 65, 72, 28.21546 + 81, 93, 83, 84, 60, 51, 34, 22, 32, 22, 13, 17, 22, 12, 10, 13, 28.21547 + 28, 8, 6, 8, 37, 21, 21, 26, 56, 65, 69, 76, 69, 75, 84, 76, 28.21548 + 73, 81, 72, 63, 53, 67, 84, 68, 73, 71, 75, 69, 76, 60, 48, 4, 28.21549 + 36, 100, 103, 103, 107, 97, 92, 87, 84, 92, 83, 49, 76, 89, 100, 91, 28.21550 + 91, 85, 71, 81, 52, 44, 22, 33, 76, 80, 89, 92, 92, 79, 85, 97, 28.21551 + 99, 64, 63, 67, 111, 108, 111, 110, 108, 106, 111, 108, 102, 67, 71, 97, 28.21552 + 104, 107, 100, 85, 95, 106, 89, 91, 89, 91, 77, 16, 40, 91, 96, 71, 28.21553 + 79, 85, 93, 76, 81, 79, 28, 28, 36, 99, 85, 85, 92, 87, 83, 96, 28.21554 + 85, 60, 67, 52, 64, 72, 88, 80, 85, 76, 64, 65, 65, 41, 20, 2, 28.21555 + 26, 75, 84, 73, 65, 72, 64, 61, 57, 40, 20, 0, 37, 85, 107, 80, 28.21556 + 77, 76, 72, 87, 88, 87, 48, 33, 41, 95, 99, 87, 92, 93, 97, 68, 28.21557 + 77, 37, 40, 32, 75, 80, 81, 64, 65, 60, 55, 77, 64, 57, 25, 32, 28.21558 + 37, 67, 72, 65, 71, 40, 40, 17, 16, 12, 13, 18, 17, 26, 32, 25, 28.21559 + 26, 20, 20, 29, 34, 25, 25, 17, 9, 55, 81, 88, 71, 80, 64, 56, 28.21560 + 24, 22, 14, 9, 16, 29, 49, 53, 52, 52, 59, 51, 53, 44, 33, 49, 28.21561 + 73, 106, 114, 100, 99, 97, 93, 91, 88, 87, 34, 34, 61, 91, 89, 95, 28.21562 + 87, 84, 79, 88, 79, 59, 41, 40, 65, 65, 72, 67, 59, 55, 59, 48, 28.21563 + 26, 20, 13, 21, 21, 32, 32, 24, 12, 16, 12, 25, 8, 10, 29, 25, 28.21564 + 46, 63, 64, 77, 80, 87, 80, 85, 75, 40, 33, 55, 67, 71, 75, 71, 28.21565 + 73, 72, 75, 63, 80, 59, 44, 0, 76, 71, 64, 44, 71, 69, 60, 52, 28.21566 + 48, 64, 53, 44, 75, 83, 72, 76, 84, 76, 68, 61, 60, 52, 12, 0, 28.21567 + 20, 68, 96, 75, 67, 65, 72, 59, 56, 71, 56, 17, 0, 64, 75, 69, 28.21568 + 68, 61, 55, 18, 36, 32, 25, 1, 16, 26, 44, 51, 49, 59, 67, 72, 28.21569 + 59, 68, 55, 68, 55, 61, 65, 60, 57, 65, 61, 71, 56, 41, 18, 8, 28.21570 + 68, 69, 45, 48, 56, 38, 46, 41, 46, 41, 25, 33, 24, 60, 68, 67, 28.21571 + 57, 69, 64, 55, 52, 14, 2, 26, 59, 55, 41, 44, 44, 38, 12, 8, 28.21572 + 5, 5, 5, 0, 1, 32, 32, 30, 32, 40, 41, 42, 41, 41, 12, 2, 28.21573 + 38, 71, 67, 71, 67, 63, 56, 49, 44, 26, 8, 0, 49, 79, 59, 56, 28.21574 + 51, 60, 49, 55, 46, 25, 6, 0, 37, 52, 51, 13, 10, 8, 6, 13, 28.21575 + 6, 2, 6, 2, 71, 48, 106, 116, 120, 124, 115, 107, 110, 103, 106, 96, 28.21576 + 93, 41, 24, 107, 100, 93, 85, 97, 97, 92, 89, 87, 96, 32, 115, 118, 28.21577 + 118, 114, 110, 115, 112, 122, 110, 118, 108, 102, 93, 107, 100, 106, 104, 110, 28.21578 + 106, 106, 106, 102, 103, 55, 118, 112, 99, 95, 102, 93, 107, 92, 97, 93, 28.21579 + 67, 69, 57, 75, 88, 83, 85, 72, 71, 72, 77, 85, 57, 51, 85, 97, 28.21580 + 93, 97, 103, 92, 96, 93, 95, 89, 85, 72, 85, 80, 80, 80, 73, 80, 28.21581 + 69, 69, 73, 67, 71, 52, 12, 30, 81, 88, 67, 75, 76, 88, 79, 73, 28.21582 + 40, 18, 60, 85, 85, 92, 81, 89, 91, 102, 93, 81, 89, 73, 38, 68, 28.21583 + 89, 100, 96, 72, 83, 83, 76, 79, 64, 52, 5, 76, 110, 88, 89, 95, 28.21584 + 83, 93, 77, 81, 102, 80, 52, 76, 104, 102, 89, 96, 92, 96, 71, 85, 28.21585 + 49, 22, 76, 87, 95, 85, 88, 83, 89, 83, 96, 89, 96, 91, 81, 75, 28.21586 + 75, 73, 72, 73, 72, 72, 75, 77, 85, 79, 67, 80, 81, 80, 71, 88, 28.21587 + 87, 92, 92, 99, 93, 87, 16, 100, 114, 99, 95, 99, 91, 79, 80, 76, 28.21588 + 79, 34, 24, 75, 83, 87, 85, 89, 88, 91, 91, 81, 71, 60, 48, 63, 28.21589 + 91, 93, 88, 92, 87, 76, 71, 68, 45, 22, 6, 83, 87, 87, 80, 84, 28.21590 + 85, 79, 75, 75, 64, 21, 1, 115, 119, 119, 112, 116, 111, 106, 97, 116, 28.21591 + 110, 76, 34, 100, 118, 115, 106, 103, 89, 100, 92, 84, 53, 40, 75, 96, 28.21592 + 84, 80, 80, 89, 91, 81, 87, 84, 85, 72, 30, 64, 83, 85, 81, 81, 28.21593 + 77, 73, 65, 38, 24, 12, 42, 63, 40, 48, 55, 51, 61, 52, 46, 44, 28.21594 + 30, 28, 12, 8, 68, 88, 69, 61, 68, 72, 88, 71, 83, 67, 55, 72, 28.21595 + 53, 76, 80, 89, 76, 91, 71, 81, 57, 51, 59, 91, 115, 79, 83, 79, 28.21596 + 80, 64, 79, 69, 63, 67, 53, 85, 72, 77, 67, 64, 64, 75, 67, 64, 28.21597 + 57, 73, 61, 65, 69, 68, 55, 71, 69, 71, 57, 57, 60, 60, 81, 76, 28.21598 + 83, 83, 84, 85, 83, 89, 93, 93, 40, 41, 63, 116, 116, 118, 115, 118, 28.21599 + 114, 107, 111, 108, 67, 33, 53, 77, 73, 67, 64, 56, 57, 48, 44, 55, 28.21600 + 63, 30, 2, 51, 72, 61, 49, 44, 59, 38, 51, 46, 36, 41, 49, 49, 28.21601 + 55, 59, 51, 40, 45, 46, 53, 44, 63, 14, 0, 93, 97, 102, 103, 97, 28.21602 + 93, 91, 79, 87, 81, 64, 33, 0, 68, 67, 72, 75, 75, 69, 63, 55, 28.21603 + 48, 26, 6, 49, 81, 83, 85, 88, 87, 85, 76, 67, 63, 30, 55, 80, 28.21604 + 79, 80, 80, 71, 63, 49, 52, 56, 42, 22, 9, 67, 73, 44, 42, 34, 28.21605 + 40, 55, 45, 60, 49, 20, 16, 63, 80, 76, 76, 75, 65, 59, 67, 65, 28.21606 + 16, 4, 48, 60, 60, 60, 63, 55, 56, 42, 44, 37, 28, 8, 37, 67, 28.21607 + 81, 77, 76, 69, 72, 68, 60, 65, 44, 21, 2, 60, 61, 51, 48, 48, 28.21608 + 32, 34, 20, 30, 45, 10, 1, 32, 76, 61, 49, 33, 37, 36, 37, 55, 28.21609 + 42, 10, 0, 56, 56, 64, 52, 48, 30, 41, 46, 45, 5, 8, 0, 69, 28.21610 + 64, 85, 84, 92, 138, 136, 124, 120, 111, 110, 71, 71, 41, 22, 92, 99, 28.21611 + 83, 83, 87, 60, 83, 87, 84, 41, 34, 118, 132, 139, 150, 170, 178, 189, 28.21612 + 197, 205, 205, 212, 216, 220, 213, 218, 218, 216, 202, 193, 155, 128, 123, 120, 28.21613 + 93, 112, 108, 110, 104, 99, 104, 106, 84, 60, 60, 63, 59, 55, 76, 95, 28.21614 + 107, 85, 77, 87, 85, 88, 84, 77, 37, 96, 103, 91, 92, 83, 85, 87, 28.21615 + 84, 79, 85, 84, 77, 75, 91, 93, 92, 83, 80, 72, 72, 80, 83, 63, 28.21616 + 55, 16, 92, 88, 100, 99, 85, 95, 95, 88, 89, 73, 20, 73, 110, 96, 28.21617 + 76, 99, 91, 84, 83, 84, 95, 91, 69, 45, 68, 92, 100, 81, 80, 88, 28.21618 + 84, 91, 75, 64, 60, 4, 83, 103, 100, 91, 79, 85, 81, 96, 81, 91, 28.21619 + 87, 37, 71, 92, 93, 95, 79, 81, 75, 73, 80, 56, 28, 81, 72, 81, 28.21620 + 83, 75, 91, 88, 96, 97, 84, 77, 65, 93, 75, 91, 81, 84, 84, 84, 28.21621 + 77, 67, 65, 55, 55, 73, 89, 85, 87, 89, 88, 83, 88, 88, 87, 87, 28.21622 + 81, 16, 103, 112, 73, 72, 73, 67, 68, 64, 76, 75, 34, 25, 72, 92, 28.21623 + 87, 83, 73, 71, 75, 77, 88, 72, 65, 34, 57, 88, 77, 81, 89, 87, 28.21624 + 67, 60, 71, 49, 37, 9, 80, 83, 79, 76, 76, 68, 68, 68, 61, 65, 28.21625 + 28, 0, 100, 112, 114, 115, 111, 111, 114, 103, 103, 108, 85, 41, 110, 106, 28.21626 + 103, 84, 73, 79, 64, 72, 75, 89, 71, 92, 79, 73, 79, 65, 76, 52, 28.21627 + 57, 56, 60, 44, 46, 36, 84, 118, 80, 87, 84, 91, 81, 72, 84, 33, 28.21628 + 12, 52, 53, 36, 52, 38, 33, 52, 40, 36, 45, 26, 24, 14, 10, 69, 28.21629 + 97, 65, 57, 76, 64, 67, 65, 52, 71, 34, 48, 99, 92, 91, 97, 92, 28.21630 + 85, 79, 77, 67, 53, 55, 106, 108, 75, 77, 73, 64, 57, 71, 88, 83, 28.21631 + 85, 85, 95, 93, 104, 93, 93, 97, 124, 96, 103, 99, 102, 95, 102, 103, 28.21632 + 106, 97, 96, 103, 99, 102, 79, 60, 41, 85, 83, 77, 81, 76, 73, 64, 28.21633 + 73, 72, 69, 46, 30, 88, 122, 111, 110, 107, 112, 112, 118, 104, 87, 83, 28.21634 + 40, 56, 73, 72, 51, 48, 63, 51, 46, 63, 61, 56, 30, 4, 40, 73, 28.21635 + 63, 61, 51, 59, 53, 65, 61, 46, 41, 41, 64, 77, 65, 81, 80, 73, 28.21636 + 60, 80, 68, 59, 16, 4, 83, 96, 87, 88, 92, 89, 84, 83, 76, 93, 28.21637 + 67, 30, 0, 71, 75, 71, 52, 53, 41, 57, 69, 52, 14, 9, 45, 89, 28.21638 + 85, 73, 57, 48, 68, 45, 44, 36, 33, 65, 84, 68, 68, 53, 45, 52, 28.21639 + 67, 56, 45, 24, 20, 5, 65, 76, 65, 44, 45, 51, 55, 52, 46, 45, 28.21640 + 20, 36, 76, 77, 72, 57, 72, 52, 49, 57, 72, 14, 4, 56, 63, 37, 28.21641 + 37, 30, 22, 25, 20, 26, 46, 38, 8, 33, 72, 65, 72, 79, 59, 48, 28.21642 + 49, 67, 59, 56, 17, 2, 59, 44, 25, 55, 37, 37, 26, 20, 25, 21, 28.21643 + 8, 0, 48, 71, 48, 59, 44, 32, 32, 60, 41, 38, 12, 0, 24, 59, 28.21644 + 51, 59, 51, 55, 42, 52, 38, 13, 8, 1, 83, 103, 84, 75, 84, 112, 28.21645 + 99, 108, 103, 91, 77, 81, 93, 44, 36, 67, 93, 85, 73, 64, 60, 61, 28.21646 + 64, 68, 93, 102, 130, 204, 212, 222, 225, 225, 224, 226, 228, 233, 234, 237, 28.21647 + 237, 237, 233, 230, 230, 229, 226, 221, 222, 193, 147, 132, 122, 146, 161, 190, 28.21648 + 165, 140, 107, 85, 56, 61, 61, 60, 55, 97, 108, 99, 96, 84, 95, 100, 28.21649 + 102, 85, 95, 81, 89, 87, 89, 64, 91, 85, 92, 84, 87, 79, 79, 77, 28.21650 + 89, 106, 114, 99, 102, 97, 104, 100, 83, 69, 63, 56, 16, 100, 92, 97, 28.21651 + 96, 97, 84, 85, 79, 77, 71, 32, 80, 89, 99, 88, 84, 89, 79, 84, 28.21652 + 95, 96, 80, 65, 37, 64, 95, 107, 85, 80, 85, 91, 84, 76, 60, 46, 28.21653 + 5, 71, 95, 93, 91, 88, 85, 83, 65, 100, 99, 77, 45, 75, 93, 89, 28.21654 + 81, 81, 79, 67, 79, 81, 59, 38, 48, 75, 77, 84, 93, 102, 80, 81, 28.21655 + 84, 71, 72, 57, 84, 89, 71, 87, 83, 85, 68, 76, 76, 75, 51, 51, 28.21656 + 81, 85, 83, 81, 76, 80, 83, 61, 83, 83, 49, 53, 21, 64, 115, 75, 28.21657 + 71, 79, 59, 67, 69, 75, 72, 37, 22, 71, 85, 84, 67, 71, 71, 67, 28.21658 + 69, 84, 72, 60, 34, 63, 81, 72, 61, 91, 93, 67, 61, 73, 40, 37, 28.21659 + 9, 60, 88, 75, 72, 79, 64, 83, 77, 57, 61, 25, 4, 65, 111, 102, 28.21660 + 89, 85, 85, 93, 99, 88, 85, 88, 87, 91, 107, 104, 95, 83, 100, 71, 28.21661 + 83, 63, 69, 61, 71, 60, 72, 67, 63, 60, 67, 65, 64, 60, 67, 64, 28.21662 + 68, 76, 89, 97, 65, 72, 73, 107, 77, 73, 30, 9, 34, 45, 34, 42, 28.21663 + 51, 55, 48, 52, 36, 29, 32, 18, 10, 8, 64, 83, 60, 63, 76, 77, 28.21664 + 77, 71, 61, 64, 34, 87, 103, 96, 87, 75, 76, 73, 68, 77, 52, 51, 28.21665 + 65, 87, 107, 67, 76, 63, 68, 73, 116, 202, 205, 193, 206, 221, 222, 206, 28.21666 + 214, 228, 232, 228, 225, 232, 242, 226, 229, 224, 241, 221, 210, 216, 246, 222, 28.21667 + 155, 91, 57, 45, 85, 100, 114, 110, 106, 106, 93, 87, 88, 69, 46, 42, 28.21668 + 104, 115, 104, 103, 110, 108, 120, 114, 87, 95, 77, 45, 45, 72, 60, 51, 28.21669 + 45, 56, 51, 45, 45, 60, 53, 25, 1, 51, 84, 68, 88, 65, 52, 60, 28.21670 + 53, 51, 46, 40, 18, 69, 76, 63, 65, 69, 69, 44, 68, 67, 59, 13, 28.21671 + 4, 57, 91, 85, 77, 72, 71, 65, 69, 73, 84, 65, 29, 0, 68, 68, 28.21672 + 60, 34, 55, 57, 52, 55, 53, 25, 12, 56, 87, 67, 60, 60, 53, 64, 28.21673 + 33, 42, 38, 22, 60, 71, 56, 49, 48, 67, 45, 46, 37, 30, 34, 21, 28.21674 + 9, 64, 76, 67, 59, 68, 68, 34, 45, 38, 46, 12, 29, 80, 76, 69, 28.21675 + 41, 69, 55, 71, 68, 64, 16, 5, 55, 45, 30, 32, 21, 21, 21, 21, 28.21676 + 21, 41, 36, 9, 30, 67, 64, 69, 89, 61, 44, 49, 53, 45, 41, 16, 28.21677 + 2, 52, 56, 29, 63, 29, 41, 24, 25, 37, 21, 6, 0, 48, 72, 49, 28.21678 + 45, 40, 41, 37, 56, 36, 20, 10, 0, 45, 42, 49, 51, 34, 37, 36, 28.21679 + 26, 34, 28, 9, 1, 67, 61, 59, 28, 17, 81, 81, 88, 81, 87, 73, 28.21680 + 95, 85, 44, 32, 72, 96, 89, 65, 61, 56, 55, 102, 115, 162, 197, 214, 28.21681 + 226, 236, 233, 233, 230, 230, 225, 232, 237, 238, 237, 236, 233, 232, 228, 222, 28.21682 + 225, 226, 225, 221, 224, 218, 220, 212, 205, 208, 202, 194, 130, 106, 83, 56, 28.21683 + 61, 67, 68, 69, 123, 183, 193, 186, 187, 194, 199, 202, 198, 195, 194, 193, 28.21684 + 193, 136, 114, 106, 102, 103, 92, 89, 97, 99, 135, 170, 195, 201, 195, 193, 28.21685 + 189, 134, 97, 84, 53, 64, 46, 18, 65, 92, 84, 81, 80, 80, 71, 81, 28.21686 + 85, 73, 34, 55, 89, 100, 81, 84, 84, 79, 80, 85, 95, 79, 67, 36, 28.21687 + 71, 84, 100, 88, 77, 84, 88, 81, 76, 59, 51, 6, 61, 99, 104, 97, 28.21688 + 88, 96, 71, 85, 89, 88, 77, 36, 75, 84, 93, 75, 75, 85, 73, 91, 28.21689 + 76, 57, 37, 42, 89, 93, 73, 76, 77, 89, 77, 81, 76, 68, 51, 91, 28.21690 + 89, 79, 76, 73, 72, 75, 97, 87, 73, 64, 49, 85, 83, 91, 72, 80, 28.21691 + 81, 77, 81, 72, 80, 83, 76, 22, 64, 112, 79, 73, 67, 53, 57, 57, 28.21692 + 75, 73, 37, 20, 71, 84, 73, 61, 60, 60, 61, 63, 80, 65, 53, 36, 28.21693 + 52, 79, 76, 60, 77, 68, 56, 61, 71, 41, 21, 4, 60, 92, 68, 61, 28.21694 + 72, 77, 71, 63, 68, 56, 25, 2, 100, 102, 93, 92, 99, 99, 95, 96, 28.21695 + 130, 181, 193, 199, 209, 214, 221, 224, 230, 232, 249, 249, 246, 240, 240, 225, 28.21696 + 232, 236, 233, 230, 225, 228, 222, 224, 198, 202, 181, 205, 197, 228, 190, 182, 28.21697 + 174, 175, 199, 142, 83, 36, 14, 48, 28, 51, 55, 45, 41, 56, 30, 26, 28.21698 + 10, 34, 10, 8, 5, 61, 89, 64, 65, 80, 85, 81, 57, 55, 67, 24, 28.21699 + 88, 102, 87, 71, 71, 80, 87, 77, 84, 64, 40, 49, 81, 103, 65, 69, 28.21700 + 61, 64, 67, 127, 190, 195, 199, 205, 206, 212, 209, 209, 214, 217, 218, 220, 28.21701 + 222, 221, 218, 218, 216, 208, 208, 204, 199, 199, 193, 143, 85, 57, 12, 77, 28.21702 + 88, 92, 96, 95, 93, 111, 108, 76, 77, 49, 49, 76, 115, 103, 120, 118, 28.21703 + 102, 93, 72, 75, 87, 81, 46, 42, 76, 64, 45, 51, 51, 51, 44, 56, 28.21704 + 37, 52, 33, 0, 53, 83, 59, 67, 55, 64, 61, 80, 44, 42, 40, 32, 28.21705 + 63, 84, 72, 79, 81, 79, 77, 65, 55, 53, 14, 0, 60, 91, 76, 67, 28.21706 + 63, 69, 81, 83, 85, 91, 71, 28, 0, 65, 57, 51, 40, 69, 53, 55, 28.21707 + 57, 44, 20, 9, 41, 89, 72, 53, 52, 45, 63, 37, 36, 28, 22, 57, 28.21708 + 80, 48, 64, 71, 56, 46, 44, 48, 53, 32, 22, 14, 59, 64, 51, 57, 28.21709 + 45, 45, 36, 51, 38, 44, 12, 32, 76, 68, 52, 67, 59, 83, 68, 67, 28.21710 + 61, 18, 5, 42, 61, 34, 34, 24, 20, 17, 21, 21, 21, 25, 8, 2, 28.21711 + 64, 64, 77, 83, 42, 49, 51, 45, 56, 40, 21, 2, 45, 59, 30, 65, 28.21712 + 17, 40, 22, 20, 30, 18, 5, 0, 33, 68, 57, 60, 44, 44, 34, 53, 28.21713 + 42, 22, 10, 0, 41, 53, 48, 21, 26, 24, 25, 14, 29, 12, 8, 6, 28.21714 + 68, 60, 45, 56, 18, 77, 76, 79, 84, 77, 73, 95, 81, 44, 36, 97, 28.21715 + 88, 64, 61, 69, 91, 103, 177, 228, 233, 236, 237, 230, 229, 229, 229, 205, 28.21716 + 175, 162, 166, 170, 162, 146, 135, 128, 124, 112, 108, 116, 122, 135, 183, 205, 28.21717 + 218, 217, 214, 212, 202, 202, 187, 136, 103, 72, 55, 63, 53, 69, 116, 147, 28.21718 + 204, 201, 213, 201, 212, 218, 218, 216, 225, 222, 228, 225, 222, 217, 222, 220, 28.21719 + 217, 212, 202, 210, 214, 210, 217, 214, 202, 198, 189, 191, 134, 97, 79, 49, 28.21720 + 63, 49, 21, 65, 91, 73, 73, 102, 87, 87, 85, 76, 71, 34, 33, 84, 28.21721 + 93, 92, 88, 87, 93, 95, 96, 96, 79, 67, 36, 63, 106, 110, 80, 85, 28.21722 + 85, 89, 80, 75, 60, 46, 9, 77, 100, 92, 88, 81, 96, 77, 81, 92, 28.21723 + 77, 81, 36, 80, 81, 87, 80, 76, 88, 79, 83, 76, 57, 37, 33, 88, 28.21724 + 75, 72, 77, 85, 75, 87, 81, 68, 63, 48, 80, 91, 72, 69, 69, 81, 28.21725 + 77, 73, 76, 69, 49, 49, 85, 87, 97, 85, 83, 68, 88, 81, 68, 81, 28.21726 + 80, 79, 24, 67, 107, 81, 69, 67, 52, 53, 68, 79, 71, 37, 18, 77, 28.21727 + 79, 71, 61, 64, 59, 59, 64, 75, 63, 59, 37, 61, 76, 69, 60, 56, 28.21728 + 88, 79, 61, 65, 42, 21, 8, 69, 92, 75, 71, 72, 64, 63, 51, 67, 28.21729 + 76, 24, 2, 112, 114, 93, 95, 103, 91, 106, 179, 190, 202, 205, 205, 213, 28.21730 + 225, 225, 229, 233, 237, 246, 248, 248, 245, 244, 242, 226, 236, 241, 232, 225, 28.21731 + 225, 233, 226, 221, 228, 217, 213, 204, 210, 199, 195, 186, 206, 187, 157, 81, 28.21732 + 34, 13, 45, 26, 52, 45, 40, 46, 34, 36, 26, 13, 33, 12, 6, 5, 28.21733 + 64, 83, 65, 76, 71, 81, 84, 69, 56, 59, 22, 87, 96, 72, 83, 83, 28.21734 + 89, 99, 95, 91, 72, 51, 67, 77, 111, 72, 76, 76, 61, 63, 91, 131, 28.21735 + 178, 193, 197, 199, 195, 205, 194, 199, 206, 209, 210, 217, 217, 220, 209, 205, 28.21736 + 210, 202, 191, 190, 194, 166, 99, 76, 33, 21, 81, 95, 76, 89, 89, 97, 28.21737 + 96, 107, 80, 80, 49, 44, 77, 110, 96, 91, 71, 73, 77, 75, 80, 84, 28.21738 + 89, 60, 40, 71, 64, 56, 44, 46, 49, 52, 41, 55, 75, 30, 2, 75, 28.21739 + 59, 73, 52, 53, 60, 65, 59, 60, 44, 40, 30, 65, 85, 56, 79, 60, 28.21740 + 56, 56, 59, 64, 57, 13, 0, 93, 80, 71, 75, 77, 76, 76, 87, 85, 28.21741 + 83, 67, 40, 0, 61, 76, 48, 79, 45, 38, 52, 49, 44, 18, 4, 37, 28.21742 + 87, 69, 64, 60, 63, 60, 48, 33, 33, 22, 60, 76, 45, 56, 72, 59, 28.21743 + 46, 52, 51, 37, 33, 24, 18, 60, 79, 65, 67, 68, 48, 37, 41, 38, 28.21744 + 56, 16, 40, 73, 64, 44, 73, 79, 81, 61, 67, 52, 21, 5, 44, 55, 28.21745 + 41, 32, 21, 20, 33, 20, 24, 37, 46, 9, 2, 60, 57, 51, 42, 45, 28.21746 + 40, 40, 37, 38, 42, 20, 4, 37, 63, 38, 79, 17, 40, 16, 33, 26, 28.21747 + 22, 8, 2, 45, 67, 60, 55, 42, 33, 41, 44, 45, 30, 13, 0, 41, 28.21748 + 57, 28, 22, 10, 13, 14, 18, 25, 8, 8, 0, 63, 56, 34, 13, 2, 28.21749 + 102, 80, 75, 75, 73, 73, 99, 71, 48, 34, 99, 93, 64, 73, 97, 130, 28.21750 + 216, 236, 234, 232, 233, 236, 230, 217, 185, 151, 118, 107, 102, 103, 103, 103, 28.21751 + 103, 102, 100, 103, 100, 102, 99, 100, 99, 102, 115, 124, 151, 183, 191, 198, 28.21752 + 185, 140, 116, 84, 48, 52, 57, 60, 72, 128, 153, 226, 232, 202, 220, 212, 28.21753 + 224, 222, 226, 224, 221, 220, 226, 233, 229, 226, 224, 218, 217, 224, 217, 213, 28.21754 + 212, 212, 217, 209, 201, 201, 191, 118, 81, 68, 49, 59, 49, 24, 89, 89, 28.21755 + 84, 83, 92, 79, 87, 84, 88, 89, 68, 25, 80, 92, 103, 103, 103, 97, 28.21756 + 97, 91, 89, 76, 65, 36, 61, 92, 99, 89, 84, 88, 93, 83, 77, 77, 28.21757 + 49, 8, 71, 97, 92, 97, 89, 96, 92, 95, 95, 67, 65, 26, 76, 79, 28.21758 + 96, 73, 97, 81, 80, 75, 79, 68, 57, 32, 80, 77, 75, 72, 72, 77, 28.21759 + 77, 77, 67, 53, 45, 75, 83, 67, 65, 72, 81, 71, 71, 68, 64, 41, 28.21760 + 45, 75, 80, 88, 89, 79, 67, 81, 71, 80, 64, 81, 73, 26, 45, 67, 28.21761 + 108, 80, 65, 61, 53, 63, 79, 65, 38, 22, 64, 73, 68, 52, 56, 53, 28.21762 + 52, 71, 79, 73, 55, 30, 48, 65, 64, 55, 53, 83, 60, 64, 65, 46, 28.21763 + 30, 9, 71, 83, 67, 77, 71, 76, 71, 63, 69, 59, 25, 0, 92, 110, 28.21764 + 93, 96, 102, 91, 165, 190, 198, 201, 206, 210, 210, 217, 221, 229, 229, 232, 28.21765 + 241, 245, 244, 246, 245, 244, 238, 229, 238, 232, 228, 230, 220, 217, 221, 225, 28.21766 + 214, 213, 202, 198, 194, 190, 185, 189, 143, 120, 49, 33, 14, 45, 29, 41, 28.21767 + 56, 38, 34, 33, 24, 25, 13, 21, 17, 10, 6, 51, 95, 68, 81, 67, 28.21768 + 76, 79, 72, 64, 55, 29, 83, 81, 96, 104, 107, 118, 116, 114, 104, 87, 28.21769 + 77, 53, 92, 118, 80, 76, 60, 57, 64, 64, 79, 92, 104, 107, 107, 100, 28.21770 + 97, 93, 99, 97, 97, 99, 103, 108, 108, 104, 104, 106, 99, 96, 99, 96, 28.21771 + 92, 79, 71, 32, 38, 77, 91, 75, 73, 96, 89, 91, 99, 77, 75, 51, 28.21772 + 53, 72, 107, 108, 85, 85, 108, 93, 96, 102, 72, 80, 79, 40, 60, 77, 28.21773 + 61, 45, 48, 42, 51, 57, 56, 61, 29, 4, 46, 68, 65, 52, 52, 49, 28.21774 + 45, 57, 64, 51, 38, 30, 55, 92, 51, 84, 85, 69, 76, 73, 71, 48, 28.21775 + 17, 2, 92, 92, 79, 83, 73, 77, 76, 91, 83, 83, 65, 30, 0, 67, 28.21776 + 75, 55, 53, 52, 55, 44, 53, 29, 16, 10, 40, 84, 72, 46, 64, 55, 28.21777 + 46, 42, 36, 36, 26, 63, 77, 63, 63, 67, 55, 46, 46, 64, 40, 22, 28.21778 + 25, 12, 68, 73, 60, 48, 59, 55, 36, 48, 34, 42, 14, 59, 67, 45, 28.21779 + 68, 63, 61, 57, 67, 69, 56, 16, 6, 22, 41, 53, 32, 33, 20, 37, 28.21780 + 33, 21, 33, 45, 9, 22, 55, 64, 52, 40, 38, 42, 40, 40, 38, 38, 28.21781 + 21, 4, 38, 61, 29, 51, 20, 34, 16, 36, 28, 17, 6, 0, 57, 68, 28.21782 + 64, 63, 42, 38, 51, 46, 46, 34, 12, 0, 24, 41, 21, 9, 4, 1, 28.21783 + 2, 12, 18, 9, 8, 1, 64, 77, 28, 2, 25, 130, 88, 85, 84, 84, 28.21784 + 87, 88, 87, 48, 48, 75, 61, 75, 102, 165, 225, 240, 233, 234, 226, 216, 28.21785 + 195, 169, 126, 110, 103, 103, 103, 104, 104, 104, 104, 110, 104, 91, 77, 69, 28.21786 + 76, 84, 95, 124, 107, 100, 100, 97, 106, 108, 108, 108, 104, 100, 63, 48, 28.21787 + 52, 57, 51, 68, 111, 131, 182, 191, 191, 159, 124, 115, 120, 126, 123, 122, 28.21788 + 124, 135, 162, 190, 198, 205, 210, 216, 214, 206, 195, 197, 204, 202, 198, 183, 28.21789 + 138, 115, 92, 77, 45, 44, 56, 44, 24, 61, 85, 85, 83, 83, 93, 92, 28.21790 + 84, 84, 92, 53, 28, 68, 91, 88, 89, 95, 88, 91, 91, 88, 71, 65, 28.21791 + 30, 57, 85, 102, 104, 106, 97, 99, 83, 79, 64, 45, 6, 64, 92, 91, 28.21792 + 92, 84, 96, 88, 89, 84, 79, 48, 25, 75, 83, 91, 72, 84, 83, 84, 28.21793 + 76, 73, 77, 49, 32, 52, 84, 77, 84, 77, 76, 77, 72, 65, 49, 40, 28.21794 + 65, 89, 73, 68, 73, 76, 77, 72, 73, 68, 41, 40, 79, 77, 77, 75, 28.21795 + 76, 76, 81, 79, 81, 61, 51, 64, 32, 38, 68, 83, 95, 76, 61, 52, 28.21796 + 69, 71, 68, 41, 18, 60, 80, 65, 61, 52, 53, 64, 96, 68, 64, 51, 28.21797 + 24, 61, 75, 55, 49, 55, 51, 56, 57, 55, 40, 30, 10, 48, 91, 79, 28.21798 + 80, 69, 61, 63, 79, 65, 67, 24, 5, 69, 108, 95, 96, 106, 93, 93, 28.21799 + 138, 182, 191, 189, 169, 123, 114, 111, 110, 115, 112, 110, 104, 108, 108, 111, 28.21800 + 111, 111, 107, 103, 104, 106, 104, 103, 97, 97, 106, 110, 104, 102, 95, 89, 28.21801 + 93, 71, 63, 60, 56, 45, 16, 12, 41, 36, 45, 38, 45, 34, 29, 29, 28.21802 + 26, 10, 17, 14, 6, 5, 56, 71, 72, 63, 71, 77, 59, 65, 57, 48, 28.21803 + 33, 87, 89, 110, 132, 170, 179, 181, 162, 166, 144, 118, 102, 88, 115, 71, 28.21804 + 84, 71, 56, 59, 57, 72, 71, 64, 73, 79, 83, 80, 79, 81, 81, 81, 28.21805 + 83, 84, 84, 85, 87, 87, 85, 84, 85, 85, 81, 85, 81, 22, 13, 36, 28.21806 + 80, 85, 76, 85, 80, 80, 85, 102, 76, 71, 63, 42, 53, 92, 103, 83, 28.21807 + 69, 100, 104, 103, 77, 72, 80, 65, 44, 46, 63, 65, 49, 52, 52, 51, 28.21808 + 52, 53, 57, 21, 2, 41, 75, 69, 51, 55, 52, 45, 55, 65, 42, 37, 28.21809 + 14, 67, 84, 57, 67, 84, 85, 67, 83, 71, 44, 13, 2, 60, 77, 68, 28.21810 + 81, 87, 72, 77, 81, 81, 84, 63, 29, 1, 63, 53, 69, 53, 40, 32, 28.21811 + 45, 25, 24, 21, 14, 38, 77, 71, 63, 71, 57, 51, 46, 46, 26, 16, 28.21812 + 68, 72, 63, 71, 71, 48, 48, 61, 44, 34, 26, 24, 17, 71, 63, 48, 28.21813 + 61, 46, 38, 44, 52, 36, 42, 12, 38, 76, 72, 76, 57, 28, 60, 61, 28.21814 + 81, 57, 16, 8, 17, 42, 51, 37, 30, 29, 37, 18, 20, 36, 34, 10, 28.21815 + 18, 49, 63, 57, 45, 52, 45, 46, 45, 42, 40, 26, 6, 16, 57, 36, 28.21816 + 26, 22, 26, 18, 33, 33, 18, 5, 0, 30, 67, 45, 55, 38, 48, 36, 28.21817 + 37, 46, 20, 10, 0, 55, 49, 9, 9, 2, 13, 1, 6, 20, 14, 4, 28.21818 + 2, 64, 81, 20, 6, 51, 111, 112, 99, 104, 91, 100, 81, 81, 49, 46, 28.21819 + 63, 72, 114, 199, 234, 237, 234, 237, 236, 189, 146, 114, 104, 104, 106, 108, 28.21820 + 112, 100, 116, 115, 102, 73, 46, 30, 30, 29, 36, 30, 34, 37, 59, 77, 28.21821 + 119, 112, 100, 103, 99, 99, 96, 107, 95, 44, 41, 45, 53, 52, 71, 87, 28.21822 + 108, 103, 118, 104, 108, 92, 88, 87, 95, 89, 92, 87, 97, 93, 95, 102, 28.21823 + 103, 106, 103, 103, 103, 100, 97, 100, 106, 107, 95, 95, 85, 73, 40, 44, 28.21824 + 51, 53, 44, 25, 51, 81, 91, 84, 96, 85, 91, 91, 88, 84, 56, 32, 28.21825 + 56, 87, 85, 87, 81, 85, 89, 92, 84, 65, 63, 24, 63, 73, 85, 91, 28.21826 + 88, 84, 81, 84, 69, 69, 49, 8, 64, 85, 97, 92, 93, 88, 88, 89, 28.21827 + 80, 76, 59, 24, 68, 76, 91, 92, 77, 83, 71, 79, 59, 56, 45, 37, 28.21828 + 45, 44, 60, 57, 52, 55, 57, 59, 64, 60, 38, 72, 85, 67, 63, 73, 28.21829 + 73, 72, 72, 71, 69, 48, 36, 77, 75, 73, 69, 68, 71, 69, 73, 72, 28.21830 + 72, 72, 72, 51, 37, 73, 88, 77, 59, 49, 51, 72, 64, 65, 42, 17, 28.21831 + 71, 83, 71, 61, 51, 51, 65, 84, 68, 61, 51, 26, 51, 67, 53, 49, 28.21832 + 40, 42, 41, 51, 41, 38, 24, 10, 45, 88, 67, 42, 61, 72, 75, 56, 28.21833 + 61, 61, 22, 5, 97, 100, 95, 92, 96, 95, 99, 99, 102, 102, 102, 96, 28.21834 + 97, 97, 99, 97, 97, 95, 99, 97, 97, 96, 97, 96, 96, 92, 92, 89, 28.21835 + 88, 87, 88, 79, 84, 81, 80, 79, 77, 72, 72, 69, 61, 57, 42, 38, 28.21836 + 18, 12, 17, 37, 29, 41, 33, 29, 13, 17, 10, 2, 14, 16, 28, 6, 28.21837 + 2, 61, 95, 73, 65, 68, 65, 69, 59, 56, 25, 51, 91, 108, 174, 193, 28.21838 + 206, 206, 204, 189, 194, 194, 186, 174, 139, 112, 76, 53, 55, 60, 48, 55, 28.21839 + 44, 60, 56, 55, 64, 77, 87, 87, 89, 88, 85, 89, 93, 95, 95, 95, 28.21840 + 93, 92, 93, 93, 91, 97, 71, 18, 25, 14, 8, 72, 79, 87, 69, 77, 28.21841 + 68, 64, 61, 79, 67, 60, 41, 55, 73, 81, 77, 96, 88, 83, 73, 68, 28.21842 + 65, 69, 75, 45, 40, 51, 81, 75, 69, 63, 67, 69, 55, 53, 34, 1, 28.21843 + 49, 73, 75, 63, 55, 61, 52, 57, 73, 34, 37, 22, 55, 91, 65, 76, 28.21844 + 63, 46, 46, 57, 56, 51, 13, 1, 60, 85, 71, 72, 73, 75, 80, 83, 28.21845 + 76, 79, 72, 28, 1, 63, 69, 37, 30, 34, 29, 25, 37, 24, 17, 16, 28.21846 + 42, 73, 69, 73, 53, 42, 56, 51, 51, 29, 18, 52, 65, 56, 64, 52, 28.21847 + 49, 49, 48, 48, 46, 26, 25, 20, 75, 61, 57, 40, 42, 40, 33, 45, 28.21848 + 38, 20, 10, 63, 64, 77, 57, 33, 49, 44, 64, 45, 55, 13, 9, 13, 28.21849 + 38, 46, 42, 46, 40, 30, 20, 21, 24, 29, 8, 2, 52, 60, 64, 44, 28.21850 + 48, 48, 40, 34, 40, 42, 17, 8, 10, 53, 44, 24, 33, 30, 18, 25, 28.21851 + 22, 14, 5, 0, 49, 63, 55, 44, 32, 36, 36, 45, 46, 32, 26, 0, 28.21852 + 24, 38, 5, 17, 5, 16, 6, 8, 21, 9, 4, 12, 55, 52, 26, 42, 28.21853 + 95, 68, 67, 68, 64, 60, 61, 61, 52, 41, 76, 71, 112, 213, 240, 237, 28.21854 + 238, 236, 238, 197, 132, 107, 108, 108, 115, 115, 110, 115, 120, 115, 81, 44, 28.21855 + 26, 22, 24, 25, 26, 32, 32, 33, 36, 36, 49, 77, 108, 150, 112, 103, 28.21856 + 102, 102, 107, 89, 42, 37, 40, 49, 52, 55, 87, 84, 84, 79, 77, 91, 28.21857 + 92, 93, 93, 93, 95, 95, 92, 93, 92, 93, 95, 93, 92, 93, 91, 91, 28.21858 + 89, 87, 87, 91, 89, 87, 83, 61, 36, 38, 36, 51, 51, 46, 28, 34, 28.21859 + 79, 80, 91, 79, 55, 65, 57, 49, 45, 46, 55, 34, 51, 67, 79, 77, 28.21860 + 76, 76, 75, 80, 64, 63, 22, 61, 67, 87, 91, 89, 85, 81, 69, 65, 28.21861 + 63, 45, 12, 65, 69, 71, 71, 69, 69, 69, 71, 73, 63, 56, 24, 64, 28.21862 + 71, 85, 75, 57, 67, 64, 53, 55, 61, 55, 51, 55, 67, 51, 69, 61, 28.21863 + 64, 55, 64, 63, 44, 38, 59, 71, 76, 63, 65, 69, 69, 64, 68, 64, 28.21864 + 46, 34, 77, 73, 73, 64, 68, 67, 67, 61, 64, 60, 67, 56, 60, 34, 28.21865 + 48, 55, 53, 52, 53, 59, 60, 64, 63, 44, 14, 72, 64, 71, 59, 51, 28.21866 + 48, 46, 51, 56, 55, 44, 34, 48, 60, 41, 33, 36, 36, 37, 36, 37, 28.21867 + 36, 18, 12, 33, 64, 67, 48, 57, 67, 64, 61, 65, 72, 21, 2, 89, 28.21868 + 104, 97, 95, 93, 93, 95, 92, 92, 84, 88, 87, 76, 85, 72, 80, 85, 28.21869 + 81, 114, 111, 108, 111, 108, 108, 108, 107, 106, 103, 100, 102, 97, 93, 92, 28.21870 + 95, 89, 88, 91, 85, 67, 38, 18, 16, 13, 12, 10, 8, 17, 4, 8, 28.21871 + 9, 2, 1, 1, 2, 1, 2, 2, 9, 10, 5, 2, 46, 76, 81, 79, 28.21872 + 75, 83, 75, 60, 56, 22, 60, 100, 158, 214, 210, 206, 210, 195, 202, 205, 28.21873 + 197, 179, 174, 150, 73, 64, 68, 61, 64, 60, 57, 53, 61, 67, 38, 38, 28.21874 + 41, 75, 162, 107, 104, 111, 108, 124, 118, 120, 124, 131, 127, 128, 126, 107, 28.21875 + 84, 49, 14, 30, 16, 9, 56, 72, 79, 79, 77, 80, 76, 81, 77, 73, 28.21876 + 69, 67, 72, 75, 57, 57, 63, 56, 55, 56, 65, 67, 56, 51, 51, 48, 28.21877 + 45, 46, 44, 42, 42, 30, 41, 40, 42, 20, 4, 44, 53, 56, 59, 56, 28.21878 + 60, 51, 57, 61, 41, 34, 20, 79, 91, 65, 61, 41, 56, 59, 49, 48, 28.21879 + 51, 13, 1, 80, 80, 69, 73, 67, 77, 68, 72, 69, 73, 59, 42, 1, 28.21880 + 56, 65, 38, 45, 28, 32, 25, 28, 22, 16, 5, 44, 65, 63, 60, 36, 28.21881 + 40, 52, 52, 34, 28, 16, 48, 52, 53, 49, 49, 52, 49, 49, 52, 46, 28.21882 + 26, 32, 25, 80, 61, 41, 38, 42, 38, 30, 40, 34, 14, 10, 52, 38, 28.21883 + 52, 56, 52, 46, 38, 41, 38, 37, 14, 13, 12, 25, 34, 36, 20, 26, 28.21884 + 26, 33, 32, 32, 29, 10, 0, 44, 51, 48, 41, 36, 33, 32, 30, 26, 28.21885 + 26, 10, 10, 10, 9, 9, 9, 14, 16, 10, 28, 20, 18, 6, 5, 44, 28.21886 + 59, 51, 38, 33, 33, 33, 34, 34, 26, 14, 0, 45, 42, 5, 12, 9, 28.21887 + 16, 12, 12, 6, 5, 2, 0, 42, 60, 45, 38, 30, 44, 36, 46, 45, 28.21888 + 41, 38, 44, 55, 88, 67, 93, 194, 238, 236, 237, 237, 240, 189, 136, 107, 28.21889 + 115, 119, 118, 111, 103, 119, 124, 119, 80, 30, 20, 21, 20, 22, 30, 37, 28.21890 + 41, 40, 45, 40, 40, 41, 60, 85, 140, 155, 116, 115, 115, 108, 92, 38, 28.21891 + 34, 36, 46, 52, 41, 73, 81, 81, 81, 83, 88, 93, 95, 96, 100, 99, 28.21892 + 100, 102, 103, 103, 97, 96, 96, 96, 95, 99, 93, 93, 91, 89, 88, 93, 28.21893 + 79, 40, 34, 33, 32, 24, 28, 46, 45, 42, 29, 33, 38, 46, 53, 36, 28.21894 + 32, 30, 26, 28, 22, 24, 25, 36, 36, 48, 51, 55, 57, 63, 64, 64, 28.21895 + 55, 24, 53, 61, 77, 79, 73, 68, 55, 29, 33, 28, 17, 12, 38, 40, 28.21896 + 40, 42, 42, 42, 42, 46, 46, 45, 34, 29, 44, 46, 53, 32, 29, 29, 28.21897 + 32, 21, 13, 21, 18, 13, 12, 10, 12, 12, 12, 17, 18, 20, 21, 22, 28.21898 + 29, 17, 18, 18, 18, 18, 32, 33, 22, 28, 33, 56, 33, 56, 69, 56, 28.21899 + 52, 52, 52, 51, 51, 51, 49, 51, 49, 46, 48, 51, 55, 55, 56, 57, 28.21900 + 59, 59, 59, 61, 44, 18, 65, 64, 53, 46, 41, 45, 42, 40, 48, 48, 28.21901 + 36, 16, 44, 29, 25, 14, 13, 12, 12, 12, 12, 9, 9, 13, 17, 17, 28.21902 + 20, 17, 16, 17, 17, 26, 26, 36, 21, 0, 14, 51, 57, 56, 57, 61, 28.21903 + 67, 65, 68, 65, 68, 48, 68, 97, 106, 118, 122, 120, 123, 126, 119, 124, 28.21904 + 123, 124, 123, 123, 120, 119, 115, 114, 111, 108, 107, 102, 106, 95, 77, 52, 28.21905 + 17, 12, 12, 10, 8, 6, 6, 6, 20, 13, 10, 14, 13, 10, 6, 8, 28.21906 + 8, 6, 5, 8, 2, 8, 5, 29, 59, 61, 57, 64, 65, 51, 38, 57, 28.21907 + 21, 67, 118, 197, 216, 210, 210, 210, 216, 190, 165, 134, 127, 106, 87, 71, 28.21908 + 69, 46, 34, 52, 52, 46, 45, 49, 45, 32, 40, 34, 72, 173, 147, 108, 28.21909 + 108, 131, 123, 126, 128, 131, 140, 135, 136, 132, 110, 73, 18, 14, 10, 32, 28.21910 + 26, 34, 59, 57, 49, 53, 56, 53, 55, 57, 56, 57, 56, 59, 60, 61, 28.21911 + 61, 60, 60, 60, 61, 59, 59, 59, 57, 51, 51, 48, 46, 40, 57, 44, 28.21912 + 41, 32, 41, 40, 21, 4, 17, 45, 46, 25, 30, 46, 45, 36, 36, 40, 28.21913 + 30, 25, 59, 106, 46, 37, 45, 44, 28, 29, 36, 26, 20, 2, 65, 88, 28.21914 + 80, 84, 76, 80, 71, 69, 75, 71, 42, 30, 1, 59, 60, 33, 34, 24, 28.21915 + 20, 21, 21, 18, 12, 12, 34, 14, 18, 20, 21, 20, 20, 17, 12, 10, 28.21916 + 18, 16, 18, 20, 17, 17, 21, 32, 41, 41, 41, 21, 22, 14, 73, 57, 28.21917 + 38, 32, 36, 25, 24, 22, 20, 17, 14, 36, 18, 29, 16, 16, 33, 26, 28.21918 + 32, 26, 30, 28, 14, 9, 21, 26, 29, 24, 20, 17, 17, 14, 14, 13, 28.21919 + 9, 13, 17, 17, 8, 9, 12, 12, 9, 10, 10, 9, 10, 10, 8, 10, 28.21920 + 10, 10, 13, 14, 13, 14, 13, 16, 5, 0, 36, 33, 30, 28, 29, 28, 28.21921 + 26, 26, 26, 14, 17, 0, 37, 30, 1, 1, 0, 0, 0, 0, 1, 2, 28.21922 + 0, 0, 5, 9, 8, 12, 2, 102, 96, 89, 84, 80, 83, 79, 88, 67, 28.21923 + 76, 151, 234, 237, 237, 237, 236, 186, 135, 111, 114, 123, 112, 104, 100, 123, 28.21924 + 130, 124, 91, 34, 18, 20, 18, 20, 32, 37, 37, 33, 33, 28, 33, 18, 28.21925 + 24, 56, 77, 120, 165, 138, 116, 115, 110, 97, 37, 34, 36, 45, 48, 40, 28.21926 + 40, 42, 46, 48, 48, 51, 63, 110, 170, 114, 99, 100, 104, 102, 100, 95, 28.21927 + 95, 99, 100, 108, 108, 108, 102, 99, 103, 99, 71, 32, 28, 28, 21, 22, 28.21928 + 25, 22, 25, 28, 28, 29, 25, 25, 26, 24, 45, 49, 52, 55, 59, 60, 28.21929 + 56, 25, 75, 76, 52, 46, 45, 46, 41, 38, 44, 53, 20, 46, 29, 25, 28.21930 + 22, 21, 22, 16, 14, 14, 14, 16, 8, 12, 12, 9, 9, 10, 12, 12, 28.21931 + 12, 14, 16, 16, 32, 13, 24, 45, 48, 53, 45, 56, 64, 87, 69, 80, 28.21932 + 68, 89, 96, 88, 97, 96, 89, 83, 77, 63, 33, 29, 72, 106, 108, 81, 28.21933 + 77, 67, 51, 46, 41, 14, 12, 9, 8, 9, 9, 8, 8, 9, 9, 9, 28.21934 + 9, 12, 13, 13, 14, 14, 17, 20, 21, 22, 26, 29, 45, 46, 59, 45, 28.21935 + 21, 59, 41, 34, 25, 24, 24, 21, 24, 24, 21, 22, 17, 12, 30, 48, 28.21936 + 48, 52, 73, 81, 77, 85, 73, 40, 12, 53, 88, 87, 67, 46, 48, 48, 28.21937 + 34, 32, 12, 9, 1, 9, 9, 21, 16, 17, 17, 26, 24, 28, 28, 36, 28.21938 + 51, 75, 108, 171, 161, 111, 122, 140, 134, 131, 134, 132, 132, 130, 128, 127, 28.21939 + 126, 123, 122, 119, 114, 112, 102, 103, 92, 48, 16, 13, 10, 9, 10, 13, 28.21940 + 13, 16, 24, 14, 21, 42, 55, 59, 61, 64, 57, 56, 40, 36, 13, 10, 28.21941 + 5, 5, 20, 16, 17, 29, 30, 55, 56, 44, 46, 17, 76, 134, 204, 232, 28.21942 + 213, 213, 202, 151, 124, 92, 93, 85, 79, 77, 73, 28, 51, 40, 45, 42, 28.21943 + 34, 29, 33, 30, 32, 49, 55, 73, 181, 177, 114, 95, 112, 120, 131, 135, 28.21944 + 139, 144, 140, 140, 134, 112, 65, 16, 14, 13, 14, 10, 4, 4, 5, 2, 28.21945 + 1, 1, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.21946 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.21947 + 4, 9, 9, 10, 10, 10, 13, 14, 18, 21, 25, 36, 13, 40, 51, 48, 28.21948 + 32, 33, 41, 40, 25, 26, 33, 12, 2, 9, 36, 38, 33, 29, 40, 41, 28.21949 + 33, 29, 44, 41, 8, 1, 16, 46, 49, 14, 9, 6, 5, 6, 12, 33, 28.21950 + 21, 17, 29, 21, 33, 30, 36, 40, 40, 37, 29, 13, 45, 53, 60, 56, 28.21951 + 33, 12, 9, 13, 9, 17, 18, 30, 24, 56, 33, 32, 34, 30, 42, 51, 28.21952 + 44, 51, 33, 12, 49, 56, 59, 55, 30, 24, 24, 12, 16, 16, 8, 13, 28.21953 + 22, 20, 12, 16, 13, 13, 12, 10, 13, 8, 5, 5, 12, 1, 1, 0, 28.21954 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 2, 1, 4, 28.21955 + 6, 8, 8, 4, 0, 12, 5, 8, 5, 5, 5, 8, 5, 5, 5, 6, 28.21956 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 4, 1, 28.21957 + 0, 1, 110, 97, 99, 91, 89, 95, 89, 68, 73, 135, 222, 237, 237, 238, 28.21958 + 236, 187, 124, 112, 120, 127, 110, 104, 110, 126, 136, 131, 110, 44, 18, 17, 28.21959 + 16, 17, 26, 30, 29, 30, 32, 33, 48, 52, 68, 64, 57, 71, 111, 169, 28.21960 + 153, 120, 115, 116, 96, 38, 34, 34, 45, 49, 40, 48, 88, 97, 99, 92, 28.21961 + 97, 95, 111, 181, 153, 99, 97, 102, 96, 102, 111, 114, 127, 131, 134, 132, 28.21962 + 138, 135, 131, 103, 96, 36, 28, 26, 21, 20, 20, 22, 21, 20, 21, 28, 28.21963 + 28, 45, 60, 73, 84, 96, 100, 104, 103, 102, 93, 63, 41, 87, 92, 64, 28.21964 + 64, 68, 69, 61, 51, 48, 53, 20, 20, 28, 45, 48, 53, 83, 93, 103, 28.21965 + 72, 59, 55, 102, 100, 110, 88, 96, 83, 102, 87, 80, 87, 80, 32, 20, 28.21966 + 64, 104, 95, 106, 97, 81, 73, 83, 100, 79, 93, 85, 79, 68, 83, 96, 28.21967 + 92, 81, 84, 75, 92, 38, 28, 79, 115, 102, 100, 115, 111, 114, 118, 104, 28.21968 + 96, 48, 24, 85, 100, 93, 97, 96, 100, 106, 99, 97, 96, 91, 87, 85, 28.21969 + 92, 89, 96, 85, 84, 76, 49, 37, 38, 33, 45, 18, 24, 30, 52, 63, 28.21970 + 60, 65, 79, 69, 61, 52, 41, 33, 76, 100, 99, 97, 95, 97, 93, 87, 28.21971 + 83, 73, 41, 13, 68, 89, 89, 83, 84, 83, 83, 80, 59, 40, 33, 2, 28.21972 + 57, 71, 72, 63, 68, 76, 73, 71, 73, 69, 24, 44, 80, 102, 195, 170, 28.21973 + 120, 114, 126, 143, 143, 140, 144, 153, 153, 151, 153, 153, 144, 142, 118, 112, 28.21974 + 102, 118, 104, 88, 28, 16, 12, 12, 14, 14, 16, 24, 24, 25, 13, 34, 28.21975 + 68, 67, 79, 85, 89, 80, 79, 65, 61, 59, 46, 24, 4, 71, 75, 73, 28.21976 + 71, 30, 29, 24, 46, 46, 10, 85, 162, 214, 210, 218, 201, 138, 103, 93, 28.21977 + 85, 76, 77, 73, 80, 33, 28, 41, 49, 61, 64, 72, 57, 60, 59, 63, 28.21978 + 69, 93, 72, 190, 186, 150, 110, 108, 111, 131, 146, 139, 142, 146, 142, 132, 28.21979 + 116, 61, 16, 21, 18, 17, 10, 14, 45, 52, 51, 53, 51, 56, 45, 80, 28.21980 + 72, 42, 48, 92, 79, 96, 102, 97, 106, 104, 93, 108, 108, 103, 96, 77, 28.21981 + 80, 96, 97, 87, 87, 91, 87, 83, 55, 38, 17, 4, 46, 73, 63, 55, 28.21982 + 51, 38, 25, 26, 8, 17, 16, 18, 2, 1, 8, 2, 2, 0, 4, 0, 28.21983 + 1, 0, 2, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 28.21984 + 2, 10, 10, 14, 20, 36, 44, 26, 22, 37, 4, 24, 61, 73, 77, 75, 28.21985 + 71, 75, 76, 81, 51, 29, 14, 49, 63, 65, 77, 72, 61, 60, 55, 44, 28.21986 + 42, 40, 52, 37, 51, 59, 48, 51, 55, 64, 63, 71, 68, 32, 10, 61, 28.21987 + 55, 34, 65, 60, 56, 51, 42, 32, 24, 18, 12, 13, 5, 12, 29, 24, 28.21988 + 40, 40, 41, 29, 25, 20, 4, 9, 20, 68, 77, 60, 65, 69, 67, 59, 28.21989 + 61, 40, 44, 55, 63, 67, 79, 76, 71, 26, 5, 1, 0, 5, 0, 0, 28.21990 + 6, 6, 2, 4, 6, 5, 2, 4, 4, 0, 0, 8, 21, 24, 29, 18, 28.21991 + 29, 44, 53, 38, 25, 17, 1, 16, 68, 83, 69, 71, 83, 77, 80, 80, 28.21992 + 87, 85, 87, 72, 83, 126, 216, 230, 238, 236, 234, 177, 122, 114, 122, 130, 28.21993 + 107, 107, 119, 130, 143, 139, 128, 81, 25, 18, 17, 18, 26, 30, 32, 33, 28.21994 + 38, 79, 79, 75, 79, 79, 67, 63, 64, 85, 166, 173, 143, 112, 107, 91, 28.21995 + 36, 32, 32, 44, 46, 36, 83, 107, 114, 114, 110, 96, 85, 97, 193, 177, 28.21996 + 120, 96, 97, 108, 116, 131, 134, 136, 142, 143, 147, 146, 140, 134, 110, 84, 28.21997 + 28, 24, 21, 20, 24, 30, 36, 33, 34, 34, 36, 48, 96, 107, 110, 103, 28.21998 + 100, 102, 95, 88, 81, 65, 60, 22, 85, 85, 71, 65, 63, 71, 72, 77, 28.21999 + 48, 56, 20, 71, 102, 99, 102, 99, 107, 88, 107, 81, 108, 68, 72, 91, 28.22000 + 93, 95, 97, 83, 80, 85, 79, 93, 95, 40, 17, 84, 100, 104, 95, 96, 28.22001 + 96, 97, 84, 83, 89, 83, 57, 77, 91, 100, 97, 85, 93, 96, 89, 93, 28.22002 + 41, 38, 93, 114, 110, 85, 103, 100, 102, 95, 100, 111, 68, 25, 110, 118, 28.22003 + 118, 81, 72, 69, 71, 79, 79, 72, 96, 87, 51, 65, 77, 95, 81, 84, 28.22004 + 80, 85, 87, 72, 42, 49, 14, 44, 85, 91, 91, 87, 92, 84, 84, 83, 28.22005 + 61, 42, 28, 75, 96, 83, 77, 75, 73, 73, 72, 68, 76, 46, 14, 59, 28.22006 + 88, 93, 83, 76, 85, 87, 83, 76, 52, 33, 9, 80, 102, 99, 76, 71, 28.22007 + 60, 77, 72, 65, 69, 32, 42, 79, 97, 187, 202, 150, 110, 120, 140, 142, 28.22008 + 154, 159, 167, 170, 166, 170, 162, 155, 148, 115, 107, 122, 118, 107, 79, 21, 28.22009 + 12, 10, 16, 20, 18, 21, 30, 25, 34, 17, 55, 75, 84, 77, 73, 60, 28.22010 + 67, 61, 71, 73, 76, 60, 29, 4, 65, 71, 84, 77, 72, 65, 68, 48, 28.22011 + 45, 12, 85, 175, 216, 216, 208, 150, 108, 95, 83, 89, 73, 71, 85, 85, 28.22012 + 28, 21, 34, 29, 36, 36, 40, 41, 44, 38, 71, 102, 83, 91, 195, 191, 28.22013 + 178, 110, 106, 115, 136, 148, 144, 154, 151, 142, 132, 114, 48, 18, 10, 16, 28.22014 + 17, 16, 29, 71, 87, 72, 67, 65, 59, 68, 64, 65, 59, 69, 81, 102, 28.22015 + 95, 96, 91, 92, 77, 81, 100, 115, 84, 80, 77, 64, 75, 67, 69, 65, 28.22016 + 69, 64, 67, 69, 65, 20, 4, 44, 79, 71, 69, 55, 56, 56, 55, 38, 28.22017 + 37, 25, 17, 13, 83, 84, 65, 60, 61, 52, 49, 46, 36, 16, 4, 22, 28.22018 + 81, 73, 61, 64, 73, 72, 73, 60, 72, 59, 14, 2, 26, 59, 56, 21, 28.22019 + 25, 30, 33, 38, 26, 5, 45, 92, 84, 80, 64, 63, 49, 55, 40, 46, 28.22020 + 30, 14, 56, 69, 71, 59, 52, 49, 48, 44, 56, 64, 57, 46, 49, 63, 28.22021 + 67, 69, 64, 69, 77, 73, 57, 57, 30, 12, 59, 57, 56, 37, 45, 48, 28.22022 + 51, 55, 53, 41, 18, 18, 12, 49, 56, 49, 55, 41, 33, 12, 28, 30, 28.22023 + 16, 6, 2, 51, 67, 64, 55, 59, 55, 67, 48, 56, 48, 41, 42, 42, 28.22024 + 57, 53, 45, 49, 51, 48, 55, 48, 46, 37, 37, 63, 68, 79, 71, 81, 28.22025 + 79, 71, 69, 55, 63, 60, 65, 42, 45, 46, 56, 60, 30, 45, 32, 44, 28.22026 + 26, 5, 53, 84, 85, 61, 42, 28, 84, 87, 88, 79, 83, 71, 81, 85, 28.22027 + 185, 225, 229, 233, 233, 187, 126, 112, 124, 134, 115, 107, 131, 139, 144, 140, 28.22028 + 138, 115, 49, 18, 17, 20, 26, 36, 32, 28, 33, 77, 88, 87, 79, 76, 28.22029 + 85, 85, 63, 72, 79, 146, 178, 158, 116, 103, 84, 34, 30, 30, 44, 48, 28.22030 + 42, 96, 119, 99, 103, 92, 93, 92, 97, 198, 182, 166, 97, 97, 112, 123, 28.22031 + 135, 142, 148, 144, 148, 147, 150, 144, 128, 110, 55, 28, 22, 18, 30, 33, 28.22032 + 36, 38, 36, 40, 42, 38, 84, 115, 114, 107, 107, 92, 93, 77, 71, 76, 28.22033 + 59, 59, 26, 77, 91, 77, 60, 63, 67, 68, 77, 49, 57, 21, 76, 93, 28.22034 + 100, 95, 111, 80, 89, 93, 69, 81, 61, 87, 103, 99, 87, 87, 79, 81, 28.22035 + 80, 85, 87, 87, 34, 17, 99, 96, 93, 87, 95, 97, 88, 84, 85, 77, 28.22036 + 71, 49, 75, 97, 107, 93, 92, 92, 89, 84, 88, 40, 29, 85, 110, 111, 28.22037 + 103, 100, 85, 100, 87, 100, 93, 92, 29, 96, 89, 126, 115, 115, 114, 110, 28.22038 + 111, 107, 102, 85, 77, 52, 92, 103, 96, 103, 92, 91, 89, 87, 83, 61, 28.22039 + 52, 17, 72, 96, 88, 88, 69, 75, 63, 61, 75, 73, 44, 29, 63, 80, 28.22040 + 87, 79, 80, 76, 75, 76, 81, 71, 46, 16, 63, 73, 92, 80, 68, 79, 28.22041 + 75, 88, 87, 52, 36, 0, 80, 77, 88, 88, 97, 92, 88, 95, 73, 73, 28.22042 + 36, 40, 83, 100, 186, 213, 191, 128, 115, 130, 144, 151, 159, 171, 174, 173, 28.22043 + 171, 174, 166, 153, 116, 116, 130, 120, 110, 77, 18, 12, 13, 20, 22, 33, 28.22044 + 33, 25, 29, 29, 17, 64, 76, 81, 72, 55, 56, 52, 64, 52, 57, 65, 28.22045 + 67, 28, 4, 75, 73, 76, 67, 61, 65, 55, 30, 45, 20, 80, 182, 213, 28.22046 + 220, 190, 111, 92, 87, 89, 75, 72, 92, 91, 75, 28, 20, 24, 45, 33, 28.22047 + 34, 32, 41, 33, 34, 75, 97, 92, 87, 199, 205, 191, 110, 97, 114, 122, 28.22048 + 139, 144, 147, 154, 146, 132, 116, 53, 17, 9, 21, 26, 10, 40, 77, 63, 28.22049 + 67, 64, 63, 59, 68, 63, 51, 48, 64, 95, 108, 97, 85, 83, 76, 81, 28.22050 + 77, 87, 91, 91, 84, 59, 75, 87, 92, 92, 99, 93, 92, 75, 63, 29, 28.22051 + 21, 5, 56, 75, 69, 71, 68, 65, 49, 53, 51, 45, 24, 18, 53, 84, 28.22052 + 68, 65, 65, 61, 71, 64, 52, 55, 18, 2, 64, 81, 55, 46, 60, 65, 28.22053 + 56, 59, 65, 52, 53, 20, 2, 45, 49, 33, 20, 32, 18, 29, 40, 18, 28.22054 + 5, 34, 91, 69, 65, 40, 38, 37, 41, 42, 77, 29, 16, 46, 59, 45, 28.22055 + 69, 80, 61, 51, 56, 40, 45, 42, 26, 57, 68, 81, 81, 79, 91, 71, 28.22056 + 73, 37, 68, 34, 13, 56, 52, 55, 42, 30, 28, 32, 38, 32, 53, 25, 28.22057 + 18, 2, 56, 56, 56, 53, 29, 40, 26, 26, 29, 30, 5, 4, 67, 64, 28.22058 + 29, 40, 34, 42, 52, 59, 60, 48, 59, 16, 51, 41, 55, 45, 44, 44, 28.22059 + 33, 28, 41, 57, 14, 69, 77, 69, 69, 72, 64, 55, 64, 68, 67, 63, 28.22060 + 24, 26, 53, 79, 60, 60, 51, 37, 17, 48, 49, 33, 4, 63, 83, 61, 28.22061 + 55, 25, 10, 75, 75, 76, 97, 67, 83, 81, 127, 222, 225, 230, 234, 209, 28.22062 + 143, 116, 120, 132, 130, 107, 124, 146, 151, 147, 142, 132, 85, 25, 17, 16, 28.22063 + 22, 26, 38, 33, 17, 34, 81, 81, 87, 77, 71, 73, 71, 72, 67, 77, 28.22064 + 116, 183, 173, 122, 106, 79, 34, 30, 30, 44, 49, 42, 77, 114, 100, 102, 28.22065 + 97, 93, 102, 104, 202, 194, 178, 92, 99, 112, 131, 139, 150, 147, 157, 148, 28.22066 + 144, 148, 139, 127, 112, 33, 24, 21, 18, 32, 42, 42, 37, 41, 42, 38, 28.22067 + 53, 103, 112, 114, 106, 89, 87, 83, 80, 72, 69, 65, 55, 25, 76, 81, 28.22068 + 84, 77, 73, 68, 60, 61, 48, 55, 17, 84, 92, 111, 81, 79, 79, 76, 28.22069 + 83, 83, 80, 59, 83, 103, 95, 89, 89, 100, 92, 92, 84, 76, 81, 37, 28.22070 + 20, 77, 100, 84, 102, 85, 69, 91, 84, 80, 80, 71, 48, 76, 89, 107, 28.22071 + 89, 106, 95, 85, 93, 84, 44, 26, 85, 106, 103, 96, 96, 95, 84, 83, 28.22072 + 89, 93, 103, 33, 65, 110, 84, 107, 116, 100, 112, 106, 96, 107, 91, 67, 28.22073 + 51, 95, 100, 85, 75, 73, 65, 83, 88, 81, 75, 52, 22, 84, 88, 89, 28.22074 + 92, 68, 59, 60, 67, 71, 60, 40, 16, 72, 85, 75, 85, 81, 76, 83, 28.22075 + 80, 77, 60, 48, 22, 56, 77, 88, 84, 84, 65, 80, 75, 81, 48, 32, 28.22076 + 0, 80, 87, 83, 84, 92, 77, 103, 100, 104, 85, 41, 41, 81, 100, 183, 28.22077 + 205, 189, 130, 114, 127, 140, 144, 155, 171, 177, 178, 178, 170, 166, 148, 118, 28.22078 + 128, 132, 124, 116, 63, 17, 12, 16, 24, 33, 29, 25, 25, 30, 36, 20, 28.22079 + 68, 83, 80, 56, 64, 71, 67, 60, 56, 59, 61, 51, 28, 4, 75, 57, 28.22080 + 80, 72, 73, 65, 51, 32, 42, 14, 85, 178, 209, 216, 167, 102, 92, 83, 28.22081 + 85, 76, 77, 100, 93, 77, 26, 17, 16, 25, 36, 38, 29, 34, 32, 22, 28.22082 + 71, 97, 76, 93, 199, 193, 197, 108, 97, 104, 115, 130, 138, 153, 158, 150, 28.22083 + 134, 110, 49, 20, 8, 13, 26, 12, 40, 77, 80, 61, 53, 45, 48, 41, 28.22084 + 48, 44, 41, 14, 89, 104, 92, 80, 76, 76, 87, 91, 92, 79, 96, 83, 28.22085 + 57, 79, 89, 100, 91, 81, 71, 60, 76, 69, 67, 24, 6, 52, 55, 75, 28.22086 + 55, 49, 44, 44, 46, 56, 71, 26, 16, 68, 84, 46, 56, 41, 63, 68, 28.22087 + 72, 59, 55, 21, 2, 72, 80, 59, 49, 64, 77, 75, 72, 73, 59, 61, 28.22088 + 20, 2, 51, 41, 18, 20, 37, 20, 20, 28, 22, 4, 37, 75, 72, 40, 28.22089 + 57, 60, 38, 41, 46, 42, 45, 12, 40, 61, 48, 69, 51, 36, 44, 36, 28.22090 + 51, 49, 42, 30, 72, 60, 56, 49, 60, 71, 81, 60, 60, 52, 33, 14, 28.22091 + 52, 51, 67, 52, 37, 40, 36, 40, 40, 51, 44, 17, 22, 41, 65, 56, 28.22092 + 37, 34, 52, 26, 37, 22, 20, 5, 6, 28, 63, 59, 33, 33, 30, 29, 28.22093 + 20, 30, 25, 18, 13, 59, 49, 57, 36, 32, 29, 25, 26, 29, 57, 18, 28.22094 + 71, 73, 69, 52, 55, 42, 44, 49, 44, 42, 30, 25, 26, 55, 48, 42, 28.22095 + 37, 26, 16, 29, 30, 38, 40, 2, 25, 85, 55, 56, 13, 0, 110, 104, 28.22096 + 102, 76, 73, 83, 93, 178, 221, 234, 228, 220, 158, 126, 116, 131, 135, 120, 28.22097 + 112, 144, 155, 155, 147, 140, 120, 55, 18, 14, 18, 24, 32, 38, 33, 18, 28.22098 + 71, 91, 84, 77, 71, 76, 80, 69, 65, 65, 69, 111, 189, 181, 154, 104, 28.22099 + 75, 34, 28, 28, 40, 49, 42, 64, 118, 102, 97, 100, 92, 89, 95, 209, 28.22100 + 199, 178, 93, 103, 114, 126, 140, 148, 150, 150, 147, 148, 148, 136, 118, 112, 28.22101 + 30, 20, 18, 32, 38, 44, 42, 46, 41, 42, 37, 52, 106, 107, 110, 89, 28.22102 + 83, 84, 83, 77, 73, 68, 60, 67, 37, 83, 79, 68, 71, 69, 80, 57, 28.22103 + 71, 46, 55, 16, 77, 87, 92, 68, 84, 69, 89, 61, 80, 75, 51, 83, 28.22104 + 103, 89, 93, 91, 92, 99, 88, 88, 93, 75, 36, 18, 81, 93, 88, 102, 28.22105 + 93, 95, 85, 91, 76, 84, 69, 49, 75, 89, 92, 92, 107, 91, 79, 89, 28.22106 + 77, 49, 25, 87, 111, 111, 106, 93, 91, 89, 88, 87, 89, 103, 44, 37, 28.22107 + 108, 116, 119, 112, 108, 106, 104, 104, 115, 97, 75, 51, 89, 104, 83, 81, 28.22108 + 95, 73, 73, 73, 84, 65, 53, 20, 76, 104, 77, 83, 65, 60, 75, 60, 28.22109 + 64, 64, 41, 17, 60, 76, 77, 95, 76, 73, 72, 67, 64, 68, 51, 24, 28.22110 + 57, 85, 88, 89, 71, 75, 73, 79, 77, 49, 36, 4, 87, 76, 75, 93, 28.22111 + 95, 77, 91, 103, 107, 80, 34, 46, 83, 88, 148, 213, 195, 134, 110, 122, 28.22112 + 140, 144, 155, 167, 166, 169, 173, 174, 165, 130, 114, 131, 136, 126, 116, 44, 28.22113 + 14, 10, 20, 25, 33, 26, 25, 29, 32, 29, 25, 68, 81, 67, 65, 57, 28.22114 + 61, 53, 61, 65, 53, 60, 51, 26, 4, 55, 80, 73, 69, 65, 65, 44, 28.22115 + 33, 44, 16, 92, 193, 208, 208, 138, 103, 85, 91, 77, 71, 91, 93, 96, 28.22116 + 77, 25, 17, 21, 20, 38, 42, 38, 33, 36, 26, 63, 97, 92, 97, 201, 28.22117 + 205, 201, 106, 93, 102, 119, 123, 131, 151, 157, 151, 135, 106, 51, 21, 12, 28.22118 + 17, 17, 13, 33, 69, 68, 60, 46, 63, 56, 56, 56, 45, 38, 46, 102, 28.22119 + 106, 96, 81, 93, 83, 89, 89, 77, 75, 91, 75, 60, 80, 95, 92, 80, 28.22120 + 73, 69, 69, 75, 69, 64, 22, 6, 51, 72, 64, 45, 48, 48, 51, 42, 28.22121 + 56, 49, 25, 16, 36, 79, 44, 53, 57, 68, 57, 73, 63, 45, 22, 4, 28.22122 + 34, 80, 49, 60, 49, 60, 55, 53, 51, 48, 56, 17, 5, 44, 32, 24, 28.22123 + 25, 38, 18, 20, 21, 17, 5, 38, 79, 68, 52, 68, 79, 63, 41, 44, 28.22124 + 52, 29, 13, 36, 72, 48, 65, 51, 30, 41, 61, 45, 56, 41, 24, 75, 28.22125 + 67, 64, 61, 79, 75, 60, 32, 59, 55, 33, 14, 52, 46, 67, 73, 63, 28.22126 + 56, 51, 55, 44, 38, 24, 20, 22, 49, 67, 42, 41, 28, 42, 30, 49, 28.22127 + 20, 17, 4, 5, 28, 68, 60, 36, 26, 26, 26, 29, 29, 24, 20, 14, 28.22128 + 56, 30, 49, 46, 37, 32, 21, 24, 38, 33, 8, 52, 72, 63, 46, 40, 28.22129 + 34, 37, 42, 28, 49, 32, 17, 26, 59, 51, 57, 41, 37, 9, 33, 33, 28.22130 + 36, 24, 4, 26, 67, 55, 24, 1, 0, 108, 83, 92, 67, 81, 84, 127, 28.22131 + 210, 222, 225, 225, 181, 120, 120, 128, 135, 131, 108, 126, 151, 158, 154, 146, 28.22132 + 135, 99, 28, 16, 14, 20, 28, 29, 37, 34, 18, 80, 87, 81, 75, 75, 28.22133 + 79, 83, 73, 68, 71, 68, 93, 187, 183, 162, 104, 76, 30, 26, 29, 41, 28.22134 + 48, 44, 55, 112, 103, 99, 100, 95, 97, 91, 210, 199, 169, 99, 99, 111, 28.22135 + 124, 136, 136, 148, 146, 148, 148, 144, 131, 115, 114, 29, 18, 17, 32, 45, 28.22136 + 38, 40, 46, 49, 45, 40, 51, 107, 112, 107, 84, 77, 84, 71, 75, 80, 28.22137 + 68, 61, 63, 26, 80, 75, 85, 91, 85, 84, 57, 64, 45, 56, 20, 75, 28.22138 + 89, 106, 81, 79, 76, 65, 71, 76, 77, 52, 88, 97, 84, 92, 92, 99, 28.22139 + 83, 80, 83, 84, 75, 41, 17, 73, 89, 81, 102, 104, 100, 88, 85, 77, 28.22140 + 79, 68, 45, 76, 83, 85, 87, 102, 107, 103, 102, 77, 41, 26, 77, 108, 28.22141 + 108, 103, 91, 87, 85, 97, 83, 91, 99, 75, 37, 96, 112, 106, 102, 88, 28.22142 + 100, 108, 114, 92, 87, 67, 52, 91, 104, 73, 79, 83, 76, 76, 93, 83, 28.22143 + 60, 55, 22, 69, 85, 88, 81, 68, 57, 55, 73, 72, 59, 41, 22, 75, 28.22144 + 80, 81, 103, 85, 80, 65, 76, 83, 72, 64, 25, 59, 88, 73, 69, 72, 28.22145 + 65, 60, 68, 80, 51, 36, 4, 75, 77, 72, 79, 80, 83, 65, 88, 81, 28.22146 + 61, 48, 45, 68, 99, 136, 212, 212, 154, 107, 111, 138, 144, 157, 167, 173, 28.22147 + 178, 173, 165, 161, 123, 127, 139, 134, 127, 115, 25, 13, 10, 21, 30, 29, 28.22148 + 25, 29, 34, 34, 33, 25, 68, 79, 75, 68, 72, 53, 71, 60, 65, 53, 28.22149 + 59, 56, 28, 4, 71, 55, 68, 97, 65, 64, 60, 34, 41, 13, 84, 181, 28.22150 + 205, 205, 126, 89, 81, 81, 72, 77, 95, 95, 97, 91, 22, 17, 12, 17, 28.22151 + 36, 44, 36, 29, 36, 29, 71, 106, 81, 104, 205, 206, 201, 106, 100, 106, 28.22152 + 108, 123, 135, 147, 158, 153, 138, 119, 46, 20, 17, 14, 18, 16, 33, 65, 28.22153 + 64, 55, 42, 67, 36, 52, 69, 41, 42, 48, 103, 97, 83, 69, 84, 87, 28.22154 + 96, 75, 68, 75, 91, 67, 57, 75, 100, 83, 71, 73, 59, 65, 56, 77, 28.22155 + 79, 24, 6, 49, 64, 72, 41, 46, 51, 38, 45, 40, 46, 25, 14, 53, 28.22156 + 75, 34, 49, 53, 56, 73, 75, 51, 53, 22, 4, 32, 76, 49, 46, 46, 28.22157 + 48, 44, 45, 69, 53, 53, 18, 4, 56, 34, 21, 26, 38, 20, 17, 17, 28.22158 + 13, 5, 55, 81, 64, 73, 83, 85, 69, 51, 49, 49, 29, 16, 34, 76, 28.22159 + 57, 60, 51, 29, 32, 42, 34, 53, 46, 17, 79, 59, 64, 53, 67, 56, 28.22160 + 37, 32, 65, 46, 32, 16, 52, 46, 64, 40, 45, 49, 46, 49, 48, 36, 28.22161 + 25, 18, 6, 40, 67, 60, 26, 24, 41, 25, 38, 41, 32, 5, 4, 22, 28.22162 + 67, 56, 26, 32, 18, 24, 22, 25, 17, 17, 10, 51, 63, 36, 34, 32, 28.22163 + 44, 30, 22, 33, 41, 14, 53, 60, 55, 41, 22, 22, 34, 52, 37, 37, 28.22164 + 18, 22, 34, 53, 63, 32, 18, 24, 18, 33, 18, 42, 25, 6, 34, 57, 28.22165 + 41, 29, 0, 0, 127, 92, 73, 65, 83, 88, 174, 214, 226, 220, 208, 154, 28.22166 + 115, 116, 134, 138, 131, 114, 142, 158, 158, 153, 146, 132, 76, 20, 13, 14, 28.22167 + 24, 29, 36, 34, 34, 21, 87, 85, 84, 71, 80, 85, 77, 69, 72, 76, 28.22168 + 71, 99, 185, 186, 170, 108, 77, 34, 26, 29, 45, 51, 45, 42, 108, 107, 28.22169 + 97, 107, 97, 99, 96, 212, 194, 178, 103, 102, 112, 124, 132, 136, 144, 148, 28.22170 + 148, 148, 135, 130, 112, 111, 30, 17, 16, 33, 48, 46, 42, 40, 48, 45, 28.22171 + 37, 64, 102, 115, 92, 91, 80, 83, 81, 81, 75, 76, 59, 59, 26, 85, 28.22172 + 76, 71, 72, 75, 80, 56, 63, 46, 52, 18, 75, 88, 95, 71, 76, 71, 28.22173 + 76, 64, 63, 73, 53, 81, 95, 99, 93, 97, 81, 84, 87, 85, 83, 72, 28.22174 + 37, 16, 69, 89, 80, 77, 92, 92, 84, 85, 80, 77, 64, 38, 71, 88, 28.22175 + 99, 89, 103, 89, 87, 77, 87, 37, 28, 68, 108, 103, 97, 88, 91, 93, 28.22176 + 85, 83, 89, 95, 69, 30, 72, 110, 115, 91, 102, 107, 104, 92, 96, 81, 28.22177 + 61, 59, 91, 100, 71, 77, 87, 76, 75, 63, 75, 76, 55, 25, 73, 85, 28.22178 + 84, 88, 80, 59, 59, 56, 68, 67, 42, 26, 72, 88, 71, 76, 84, 68, 28.22179 + 79, 81, 80, 72, 56, 26, 59, 73, 83, 68, 67, 64, 73, 72, 69, 53, 28.22180 + 37, 0, 93, 81, 69, 57, 83, 77, 89, 85, 80, 71, 42, 37, 67, 99, 28.22181 + 87, 213, 217, 181, 110, 110, 132, 143, 154, 165, 170, 170, 169, 171, 150, 124, 28.22182 + 132, 143, 135, 127, 115, 21, 13, 12, 20, 33, 30, 29, 36, 41, 34, 30, 28.22183 + 25, 57, 79, 72, 76, 53, 68, 61, 60, 67, 52, 56, 56, 28, 4, 67, 28.22184 + 65, 69, 67, 93, 81, 68, 34, 41, 12, 75, 170, 195, 228, 142, 92, 75, 28.22185 + 83, 71, 89, 96, 96, 102, 76, 22, 17, 10, 22, 30, 40, 38, 29, 33, 28.22186 + 25, 75, 92, 88, 115, 210, 213, 199, 97, 92, 103, 115, 122, 138, 146, 159, 28.22187 + 154, 139, 130, 48, 25, 8, 17, 22, 17, 28, 67, 63, 56, 61, 52, 48, 28.22188 + 52, 44, 53, 33, 40, 92, 95, 92, 83, 88, 69, 65, 79, 72, 83, 85, 28.22189 + 56, 60, 81, 97, 79, 65, 69, 65, 61, 77, 68, 61, 25, 9, 51, 61, 28.22190 + 61, 36, 57, 37, 48, 44, 46, 38, 26, 14, 55, 83, 36, 44, 59, 59, 28.22191 + 63, 65, 44, 55, 24, 4, 34, 75, 55, 57, 55, 48, 55, 73, 42, 46, 28.22192 + 49, 17, 4, 42, 29, 24, 30, 36, 32, 16, 13, 9, 6, 46, 76, 53, 28.22193 + 75, 73, 72, 67, 79, 73, 51, 25, 13, 44, 69, 37, 65, 44, 32, 36, 28.22194 + 44, 45, 56, 42, 18, 69, 68, 77, 55, 57, 52, 44, 29, 28, 42, 29, 28.22195 + 14, 33, 42, 61, 55, 52, 51, 41, 51, 46, 49, 22, 18, 4, 40, 76, 28.22196 + 56, 46, 22, 38, 32, 36, 20, 24, 4, 4, 22, 64, 59, 38, 40, 24, 28.22197 + 22, 22, 21, 22, 34, 10, 40, 44, 17, 26, 25, 20, 28, 26, 28, 41, 28.22198 + 24, 60, 71, 68, 53, 16, 44, 38, 42, 32, 40, 28, 20, 38, 46, 26, 28.22199 + 51, 24, 12, 22, 21, 21, 16, 9, 4, 34, 52, 46, 18, 0, 0, 77, 28.22200 + 104, 73, 76, 84, 114, 199, 221, 214, 217, 170, 128, 115, 131, 135, 138, 120, 28.22201 + 126, 155, 159, 157, 151, 142, 124, 40, 16, 12, 17, 24, 34, 37, 42, 36, 28.22202 + 20, 95, 84, 79, 73, 87, 77, 75, 72, 73, 69, 65, 120, 183, 182, 178, 28.22203 + 106, 73, 33, 28, 29, 44, 48, 44, 40, 107, 106, 102, 108, 103, 96, 93, 28.22204 + 217, 191, 189, 104, 100, 111, 120, 131, 138, 142, 144, 148, 143, 135, 128, 111, 28.22205 + 110, 26, 16, 16, 33, 53, 44, 46, 44, 55, 46, 37, 67, 107, 114, 91, 28.22206 + 83, 88, 91, 81, 81, 84, 72, 57, 57, 26, 77, 81, 75, 73, 59, 63, 28.22207 + 67, 60, 48, 51, 17, 73, 93, 104, 77, 79, 81, 60, 77, 67, 73, 49, 28.22208 + 87, 97, 95, 85, 84, 92, 91, 91, 88, 83, 46, 44, 18, 65, 81, 85, 28.22209 + 81, 83, 85, 80, 79, 84, 76, 68, 34, 83, 87, 95, 92, 95, 96, 91, 28.22210 + 97, 85, 37, 28, 64, 95, 102, 93, 77, 95, 95, 77, 87, 87, 83, 76, 28.22211 + 38, 71, 107, 116, 110, 88, 96, 80, 92, 88, 79, 42, 68, 83, 99, 81, 28.22212 + 83, 67, 61, 67, 59, 65, 76, 55, 29, 49, 75, 93, 65, 56, 65, 71, 28.22213 + 61, 65, 51, 42, 10, 67, 80, 76, 69, 71, 60, 72, 80, 72, 67, 57, 28.22214 + 32, 36, 67, 79, 83, 85, 83, 81, 84, 69, 46, 33, 0, 79, 72, 68, 28.22215 + 69, 72, 88, 87, 84, 59, 87, 48, 51, 42, 96, 80, 218, 221, 213, 111, 28.22216 + 108, 131, 147, 150, 154, 170, 171, 170, 170, 140, 128, 147, 146, 135, 126, 115, 28.22217 + 22, 13, 9, 24, 38, 29, 32, 36, 45, 38, 36, 28, 48, 76, 71, 69, 28.22218 + 68, 71, 71, 65, 63, 60, 56, 60, 26, 5, 63, 57, 53, 67, 103, 71, 28.22219 + 63, 34, 37, 8, 57, 114, 182, 228, 147, 88, 84, 87, 88, 96, 92, 99, 28.22220 + 92, 48, 21, 18, 12, 21, 32, 40, 38, 36, 29, 17, 68, 89, 83, 108, 28.22221 + 210, 204, 202, 102, 95, 106, 119, 128, 138, 146, 158, 155, 148, 135, 49, 24, 28.22222 + 6, 12, 20, 14, 17, 59, 56, 63, 57, 55, 57, 51, 44, 49, 33, 9, 28.22223 + 93, 96, 76, 65, 71, 76, 79, 79, 80, 85, 88, 56, 63, 88, 77, 61, 28.22224 + 84, 61, 57, 63, 64, 68, 60, 28, 9, 41, 65, 69, 42, 40, 44, 42, 28.22225 + 41, 53, 55, 29, 12, 68, 75, 42, 52, 59, 56, 57, 59, 42, 41, 29, 28.22226 + 2, 37, 64, 55, 52, 49, 72, 72, 48, 41, 40, 53, 16, 4, 57, 33, 28.22227 + 21, 18, 17, 34, 13, 13, 9, 6, 38, 71, 64, 67, 65, 81, 63, 59, 28.22228 + 55, 46, 33, 12, 41, 71, 59, 59, 34, 32, 42, 44, 37, 61, 44, 21, 28.22229 + 67, 59, 79, 45, 45, 72, 38, 28, 36, 25, 33, 14, 24, 49, 37, 51, 28.22230 + 75, 63, 46, 45, 55, 45, 25, 17, 28, 40, 76, 44, 28, 33, 36, 22, 28.22231 + 10, 10, 9, 5, 5, 17, 37, 53, 34, 29, 33, 29, 25, 22, 24, 12, 28.22232 + 9, 25, 24, 22, 21, 25, 21, 33, 26, 30, 14, 17, 65, 68, 65, 60, 28.22233 + 24, 45, 26, 25, 48, 20, 28, 22, 44, 29, 17, 18, 10, 21, 5, 6, 28.22234 + 2, 16, 5, 5, 20, 51, 10, 12, 2, 0, 104, 79, 64, 83, 88, 138, 28.22235 + 198, 218, 212, 204, 135, 131, 127, 132, 138, 138, 114, 144, 162, 161, 158, 150, 28.22236 + 140, 116, 32, 16, 13, 18, 24, 30, 26, 37, 36, 18, 88, 80, 80, 81, 28.22237 + 73, 73, 72, 68, 69, 77, 65, 130, 183, 183, 166, 102, 68, 33, 26, 28, 28.22238 + 46, 55, 49, 46, 95, 116, 95, 102, 102, 92, 89, 220, 193, 198, 104, 100, 28.22239 + 111, 122, 130, 140, 144, 146, 146, 131, 132, 130, 115, 115, 25, 14, 13, 36, 28.22240 + 49, 40, 45, 41, 60, 46, 36, 68, 100, 100, 87, 56, 57, 75, 79, 61, 28.22241 + 61, 65, 63, 67, 40, 89, 80, 75, 60, 65, 57, 65, 56, 45, 48, 14, 28.22242 + 73, 81, 95, 67, 77, 80, 72, 79, 79, 69, 40, 81, 97, 106, 102, 102, 28.22243 + 95, 83, 73, 81, 59, 46, 41, 18, 52, 71, 75, 55, 65, 84, 75, 59, 28.22244 + 65, 73, 60, 36, 69, 80, 95, 97, 80, 71, 68, 67, 53, 45, 25, 59, 28.22245 + 103, 106, 100, 96, 87, 85, 84, 87, 80, 84, 83, 42, 56, 102, 112, 104, 28.22246 + 81, 103, 97, 88, 83, 75, 42, 56, 81, 99, 83, 77, 64, 65, 55, 60, 28.22247 + 61, 64, 56, 26, 48, 56, 55, 55, 55, 53, 57, 57, 64, 64, 41, 12, 28.22248 + 64, 80, 81, 71, 71, 68, 61, 68, 59, 59, 56, 34, 42, 60, 84, 83, 28.22249 + 92, 81, 73, 79, 46, 48, 38, 2, 80, 73, 65, 69, 56, 75, 79, 81, 28.22250 + 69, 77, 34, 46, 33, 89, 85, 221, 226, 214, 111, 106, 131, 146, 150, 153, 28.22251 + 163, 170, 167, 158, 128, 140, 146, 146, 139, 132, 118, 18, 13, 10, 21, 33, 28.22252 + 30, 32, 33, 41, 45, 37, 32, 37, 73, 77, 77, 63, 67, 69, 63, 63, 28.22253 + 59, 52, 48, 26, 6, 55, 59, 69, 67, 61, 57, 51, 45, 40, 8, 41, 28.22254 + 83, 139, 136, 95, 85, 73, 63, 79, 77, 83, 79, 45, 22, 20, 17, 14, 28.22255 + 17, 33, 37, 37, 34, 32, 18, 73, 88, 73, 69, 204, 216, 213, 104, 93, 28.22256 + 106, 120, 130, 139, 147, 161, 155, 135, 124, 46, 24, 9, 12, 20, 16, 16, 28.22257 + 42, 59, 55, 57, 55, 56, 53, 45, 53, 30, 29, 96, 91, 67, 73, 89, 28.22258 + 91, 85, 89, 87, 89, 83, 55, 69, 97, 75, 76, 77, 63, 65, 75, 67, 28.22259 + 64, 55, 28, 8, 48, 61, 65, 41, 36, 38, 34, 52, 57, 48, 28, 13, 28.22260 + 44, 71, 40, 33, 37, 38, 40, 38, 42, 49, 32, 5, 37, 36, 76, 69, 28.22261 + 72, 75, 76, 41, 49, 45, 49, 20, 6, 42, 22, 20, 14, 22, 20, 30, 28.22262 + 16, 12, 5, 33, 68, 63, 64, 81, 53, 57, 51, 42, 46, 28, 14, 41, 28.22263 + 68, 44, 38, 42, 67, 46, 63, 53, 48, 38, 20, 59, 57, 56, 57, 59, 28.22264 + 52, 49, 44, 30, 42, 37, 18, 21, 36, 48, 40, 28, 24, 24, 34, 29, 28.22265 + 26, 24, 18, 29, 60, 76, 46, 20, 4, 4, 14, 13, 2, 4, 9, 6, 28.22266 + 9, 24, 29, 26, 18, 20, 16, 16, 17, 21, 18, 17, 25, 25, 38, 25, 28.22267 + 29, 18, 18, 21, 24, 17, 22, 37, 60, 71, 45, 25, 21, 20, 22, 17, 28.22268 + 13, 14, 18, 20, 18, 18, 20, 18, 10, 32, 28, 33, 26, 13, 24, 26, 28.22269 + 34, 34, 28, 16, 10, 77, 79, 57, 80, 91, 147, 201, 212, 213, 151, 134, 28.22270 + 122, 132, 136, 142, 135, 119, 154, 165, 162, 157, 148, 136, 103, 25, 14, 12, 28.22271 + 17, 22, 34, 36, 44, 34, 22, 89, 79, 73, 80, 72, 69, 67, 68, 71, 28.22272 + 67, 69, 140, 178, 178, 163, 104, 65, 33, 28, 29, 46, 52, 49, 41, 83, 28.22273 + 114, 107, 91, 102, 93, 88, 220, 199, 206, 106, 103, 111, 124, 138, 136, 140, 28.22274 + 139, 132, 124, 130, 127, 116, 116, 22, 14, 12, 36, 44, 45, 40, 41, 38, 28.22275 + 56, 56, 61, 71, 73, 67, 63, 67, 61, 63, 65, 85, 76, 64, 57, 28, 28.22276 + 73, 80, 60, 53, 57, 56, 53, 51, 56, 53, 21, 73, 91, 87, 67, 64, 28.22277 + 63, 57, 67, 65, 64, 45, 63, 80, 96, 63, 68, 59, 57, 51, 44, 36, 28.22278 + 32, 45, 40, 44, 45, 44, 55, 40, 42, 41, 41, 42, 40, 34, 30, 51, 28.22279 + 51, 53, 46, 40, 40, 44, 42, 36, 36, 49, 51, 83, 93, 87, 72, 81, 28.22280 + 85, 88, 75, 75, 88, 81, 72, 52, 60, 100, 91, 69, 80, 80, 81, 80, 28.22281 + 68, 46, 52, 75, 76, 61, 60, 61, 68, 68, 59, 56, 57, 53, 52, 45, 28.22282 + 53, 53, 53, 45, 51, 44, 61, 53, 59, 42, 21, 69, 64, 65, 63, 61, 28.22283 + 60, 60, 60, 56, 56, 46, 53, 29, 33, 36, 40, 37, 40, 38, 38, 38, 28.22284 + 44, 37, 2, 28, 77, 72, 34, 49, 65, 69, 61, 56, 69, 61, 51, 38, 28.22285 + 60, 64, 212, 228, 217, 106, 103, 126, 140, 144, 144, 150, 162, 163, 158, 135, 28.22286 + 151, 151, 150, 142, 132, 118, 17, 12, 12, 18, 29, 33, 38, 37, 34, 36, 28.22287 + 40, 38, 30, 36, 53, 63, 57, 57, 55, 57, 59, 59, 52, 53, 28, 6, 28.22288 + 51, 63, 64, 49, 52, 42, 41, 41, 40, 16, 28, 41, 64, 83, 59, 29, 28.22289 + 20, 16, 14, 16, 16, 16, 16, 18, 17, 10, 10, 14, 34, 34, 36, 26, 28.22290 + 32, 20, 67, 75, 91, 69, 185, 214, 210, 102, 95, 110, 123, 134, 139, 148, 28.22291 + 161, 155, 136, 123, 42, 26, 25, 10, 20, 18, 16, 20, 36, 42, 41, 52, 28.22292 + 44, 53, 45, 42, 37, 38, 93, 83, 87, 84, 79, 80, 75, 76, 81, 77, 28.22293 + 63, 53, 57, 79, 87, 85, 77, 81, 75, 67, 42, 38, 37, 26, 9, 38, 28.22294 + 48, 55, 64, 75, 53, 63, 52, 40, 25, 30, 12, 42, 64, 63, 55, 53, 28.22295 + 51, 49, 42, 45, 40, 33, 5, 28, 21, 22, 28, 38, 41, 25, 28, 41, 28.22296 + 21, 25, 18, 6, 44, 22, 28, 26, 26, 20, 18, 18, 10, 10, 33, 29, 28.22297 + 24, 29, 20, 38, 46, 52, 46, 38, 25, 17, 21, 48, 38, 48, 34, 41, 28.22298 + 40, 45, 38, 33, 40, 12, 42, 55, 53, 34, 38, 42, 42, 33, 33, 36, 28.22299 + 32, 25, 30, 30, 28, 22, 24, 24, 22, 29, 22, 21, 20, 17, 2, 55, 28.22300 + 1, 22, 1, 20, 2, 4, 17, 16, 4, 5, 10, 10, 9, 8, 9, 9, 28.22301 + 9, 9, 12, 12, 10, 13, 10, 14, 18, 13, 20, 14, 13, 12, 14, 16, 28.22302 + 17, 14, 28, 41, 22, 37, 17, 21, 60, 65, 60, 29, 51, 48, 18, 17, 28.22303 + 12, 14, 18, 16, 17, 13, 9, 8, 12, 16, 37, 16, 14, 53, 57, 68, 28.22304 + 52, 53, 56, 83, 88, 165, 213, 157, 151, 144, 112, 142, 131, 138, 139, 131, 28.22305 + 131, 161, 165, 161, 155, 147, 132, 87, 20, 14, 13, 20, 26, 36, 36, 37, 28.22306 + 34, 13, 84, 79, 69, 69, 55, 61, 67, 60, 72, 69, 68, 154, 182, 177, 28.22307 + 163, 97, 61, 33, 29, 30, 48, 51, 56, 52, 59, 85, 106, 99, 97, 91, 28.22308 + 87, 218, 212, 214, 107, 102, 108, 123, 124, 124, 127, 126, 131, 134, 132, 131, 28.22309 + 122, 119, 21, 13, 13, 32, 36, 38, 44, 45, 41, 46, 44, 46, 55, 52, 28.22310 + 48, 53, 53, 53, 56, 55, 56, 57, 57, 56, 53, 59, 56, 55, 53, 53, 28.22311 + 55, 55, 51, 51, 45, 22, 67, 91, 60, 53, 49, 49, 52, 49, 48, 49, 28.22312 + 41, 48, 49, 46, 46, 44, 41, 40, 41, 38, 37, 33, 28, 18, 18, 17, 28.22313 + 18, 17, 14, 14, 14, 12, 13, 10, 10, 12, 10, 16, 17, 17, 13, 14, 28.22314 + 21, 32, 28, 30, 28, 41, 61, 60, 71, 80, 69, 65, 71, 73, 72, 71, 28.22315 + 72, 61, 56, 64, 57, 53, 46, 38, 38, 38, 45, 40, 32, 38, 41, 49, 28.22316 + 42, 42, 61, 60, 59, 42, 42, 36, 32, 38, 48, 53, 53, 53, 40, 32, 28.22317 + 34, 44, 48, 46, 41, 18, 34, 37, 32, 38, 37, 38, 37, 40, 40, 40, 28.22318 + 42, 44, 42, 48, 32, 33, 28, 18, 14, 13, 17, 20, 16, 0, 13, 14, 28.22319 + 21, 18, 21, 25, 29, 30, 38, 46, 65, 53, 51, 51, 76, 210, 229, 218, 28.22320 + 106, 100, 107, 118, 134, 143, 153, 150, 155, 151, 136, 153, 151, 148, 140, 128, 28.22321 + 116, 16, 12, 9, 14, 17, 25, 24, 28, 32, 33, 34, 30, 32, 41, 42, 28.22322 + 44, 41, 44, 44, 45, 44, 48, 49, 44, 26, 6, 56, 60, 41, 30, 32, 28.22323 + 28, 22, 33, 33, 17, 14, 16, 25, 20, 17, 16, 14, 13, 13, 17, 18, 28.22324 + 13, 14, 14, 16, 17, 18, 18, 18, 20, 20, 21, 29, 18, 29, 34, 41, 28.22325 + 73, 171, 217, 208, 103, 99, 110, 119, 132, 142, 150, 163, 154, 135, 120, 41, 28.22326 + 29, 8, 14, 14, 17, 16, 20, 20, 20, 18, 18, 18, 21, 20, 18, 30, 28.22327 + 25, 33, 67, 67, 53, 53, 60, 63, 53, 52, 53, 51, 45, 48, 46, 48, 28.22328 + 49, 57, 42, 44, 34, 32, 24, 36, 26, 29, 29, 29, 14, 29, 34, 22, 28.22329 + 30, 22, 21, 37, 28, 29, 28, 32, 29, 26, 25, 22, 22, 21, 36, 28, 28.22330 + 26, 2, 6, 6, 10, 10, 9, 10, 13, 10, 12, 18, 29, 18, 10, 18, 28.22331 + 17, 12, 16, 18, 14, 14, 34, 17, 22, 17, 21, 26, 22, 20, 18, 20, 28.22332 + 25, 22, 21, 21, 24, 21, 22, 22, 24, 22, 24, 22, 25, 24, 24, 20, 28.22333 + 13, 16, 25, 17, 17, 16, 25, 16, 17, 17, 20, 21, 16, 14, 17, 16, 28.22334 + 16, 16, 14, 14, 14, 14, 13, 12, 12, 1, 32, 32, 32, 29, 45, 41, 28.22335 + 41, 41, 46, 48, 49, 49, 59, 63, 67, 71, 81, 107, 127, 148, 162, 170, 28.22336 + 226, 224, 221, 208, 202, 202, 198, 202, 187, 185, 175, 158, 73, 26, 21, 17, 28.22337 + 18, 14, 68, 60, 153, 183, 162, 159, 158, 97, 80, 81, 59, 48, 46, 55, 28.22338 + 85, 110, 143, 161, 153, 115, 75, 42, 13, 8, 6, 87, 80, 83, 99, 107, 28.22339 + 179, 120, 139, 111, 112, 111, 128, 127, 138, 144, 138, 138, 165, 167, 158, 151, 28.22340 + 139, 126, 45, 17, 12, 14, 24, 28, 20, 32, 32, 28, 18, 40, 48, 45, 28.22341 + 46, 46, 46, 48, 49, 73, 63, 51, 136, 174, 175, 162, 97, 55, 32, 28, 28.22342 + 33, 46, 48, 49, 51, 55, 60, 57, 61, 64, 96, 72, 222, 217, 217, 106, 28.22343 + 99, 107, 122, 116, 116, 115, 118, 120, 132, 131, 134, 122, 116, 18, 10, 10, 28.22344 + 20, 18, 21, 22, 22, 18, 21, 26, 29, 34, 44, 44, 46, 49, 49, 48, 28.22345 + 53, 57, 60, 64, 57, 52, 64, 71, 60, 72, 79, 89, 123, 107, 52, 49, 28.22346 + 57, 51, 46, 45, 44, 42, 52, 44, 42, 33, 29, 30, 32, 26, 37, 34, 28.22347 + 36, 34, 40, 30, 36, 32, 61, 81, 108, 110, 106, 115, 102, 107, 97, 111, 28.22348 + 108, 93, 73, 77, 75, 80, 95, 95, 81, 72, 57, 41, 30, 26, 20, 16, 28.22349 + 14, 13, 12, 10, 10, 12, 13, 10, 12, 14, 14, 13, 13, 18, 24, 72, 28.22350 + 77, 83, 88, 93, 89, 61, 61, 40, 96, 95, 107, 81, 41, 38, 55, 33, 28.22351 + 34, 72, 79, 96, 84, 89, 97, 103, 99, 87, 67, 53, 44, 29, 30, 40, 28.22352 + 20, 10, 9, 9, 10, 8, 8, 9, 9, 6, 8, 8, 8, 8, 12, 29, 28.22353 + 34, 57, 72, 67, 68, 59, 33, 29, 0, 57, 91, 79, 60, 81, 60, 67, 28.22354 + 68, 49, 38, 37, 41, 42, 46, 65, 199, 216, 206, 95, 91, 102, 103, 97, 28.22355 + 111, 128, 143, 150, 155, 132, 147, 154, 150, 138, 131, 115, 14, 10, 9, 8, 28.22356 + 8, 8, 8, 8, 8, 8, 13, 12, 8, 9, 10, 21, 22, 25, 12, 13, 28.22357 + 13, 22, 14, 30, 10, 6, 61, 24, 18, 18, 20, 17, 21, 14, 13, 13, 28.22358 + 13, 16, 14, 12, 17, 16, 9, 9, 10, 10, 10, 12, 10, 10, 10, 10, 28.22359 + 12, 13, 18, 26, 30, 33, 30, 13, 61, 80, 79, 71, 171, 204, 193, 106, 28.22360 + 99, 111, 123, 131, 139, 153, 162, 155, 134, 104, 37, 32, 6, 12, 9, 12, 28.22361 + 4, 4, 4, 2, 2, 4, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 28.22362 + 4, 4, 4, 5, 6, 6, 8, 8, 10, 10, 13, 13, 13, 17, 18, 18, 28.22363 + 24, 48, 53, 45, 38, 44, 30, 28, 26, 25, 22, 24, 29, 36, 60, 67, 28.22364 + 77, 69, 64, 60, 57, 63, 67, 57, 46, 26, 29, 34, 14, 32, 75, 83, 28.22365 + 59, 51, 57, 32, 22, 16, 17, 13, 14, 12, 18, 29, 25, 21, 25, 26, 28.22366 + 21, 17, 24, 28, 30, 38, 33, 34, 30, 33, 28, 24, 17, 14, 12, 12, 28.22367 + 9, 10, 9, 10, 9, 10, 10, 10, 9, 10, 10, 38, 10, 8, 8, 8, 28.22368 + 6, 5, 5, 5, 4, 4, 2, 2, 2, 2, 1, 1, 0, 18, 1, 0, 28.22369 + 0, 1, 0, 2, 40, 37, 56, 60, 84, 107, 144, 148, 163, 171, 165, 151, 28.22370 + 140, 132, 119, 120, 130, 116, 110, 118, 123, 139, 153, 163, 175, 185, 182, 179, 28.22371 + 177, 178, 174, 173, 166, 159, 146, 147, 138, 20, 14, 12, 67, 33, 130, 189, 28.22372 + 195, 197, 194, 193, 198, 190, 187, 195, 199, 189, 195, 195, 204, 201, 189, 197, 28.22373 + 194, 136, 55, 48, 12, 9, 112, 114, 122, 116, 165, 159, 161, 157, 127, 146, 28.22374 + 103, 103, 108, 111, 111, 130, 138, 163, 163, 161, 147, 136, 122, 42, 16, 13, 28.22375 + 22, 26, 38, 37, 45, 32, 38, 40, 42, 55, 59, 61, 68, 73, 79, 71, 28.22376 + 59, 76, 56, 128, 171, 174, 123, 95, 52, 32, 28, 42, 48, 46, 42, 45, 28.22377 + 53, 59, 63, 69, 84, 88, 88, 220, 218, 218, 106, 99, 107, 115, 112, 122, 28.22378 + 128, 131, 131, 130, 132, 139, 124, 123, 22, 13, 10, 21, 32, 42, 42, 49, 28.22379 + 64, 153, 162, 177, 183, 183, 178, 189, 197, 202, 197, 197, 193, 190, 194, 195, 28.22380 + 194, 187, 189, 186, 183, 179, 185, 179, 183, 127, 99, 57, 67, 72, 102, 143, 28.22381 + 169, 182, 181, 169, 162, 151, 153, 154, 143, 134, 116, 104, 114, 111, 106, 114, 28.22382 + 118, 93, 132, 159, 178, 186, 193, 187, 179, 178, 174, 142, 114, 87, 99, 99, 28.22383 + 88, 103, 97, 107, 93, 108, 93, 89, 77, 52, 36, 21, 77, 96, 92, 85, 28.22384 + 85, 89, 93, 100, 89, 88, 80, 83, 85, 79, 76, 92, 92, 92, 92, 88, 28.22385 + 80, 65, 33, 100, 114, 87, 85, 114, 108, 104, 95, 84, 110, 138, 151, 159, 28.22386 + 151, 155, 155, 151, 143, 128, 104, 85, 79, 51, 44, 17, 33, 95, 104, 80, 28.22387 + 83, 69, 95, 81, 83, 76, 73, 65, 76, 91, 75, 71, 65, 75, 60, 63, 28.22388 + 71, 55, 32, 1, 71, 89, 96, 100, 72, 93, 89, 75, 81, 67, 51, 56, 28.22389 + 75, 75, 64, 218, 229, 221, 106, 102, 112, 110, 111, 110, 114, 112, 119, 118, 28.22390 + 136, 154, 155, 150, 136, 127, 110, 16, 12, 10, 18, 22, 22, 28, 18, 18, 28.22391 + 16, 30, 9, 12, 33, 76, 72, 65, 65, 65, 40, 22, 21, 16, 20, 20, 28.22392 + 18, 40, 59, 64, 65, 69, 79, 72, 65, 56, 64, 75, 84, 72, 65, 53, 28.22393 + 60, 51, 56, 29, 29, 25, 21, 22, 29, 37, 36, 36, 41, 51, 53, 48, 28.22394 + 51, 34, 14, 73, 73, 81, 77, 183, 214, 179, 104, 100, 110, 124, 132, 142, 28.22395 + 151, 165, 157, 157, 123, 44, 33, 6, 6, 17, 17, 32, 65, 71, 72, 72, 28.22396 + 71, 80, 76, 73, 71, 38, 24, 67, 84, 96, 88, 85, 89, 97, 93, 87, 28.22397 + 80, 84, 84, 97, 116, 104, 104, 104, 87, 79, 83, 96, 163, 174, 186, 170, 28.22398 + 146, 103, 67, 57, 57, 64, 76, 116, 136, 157, 143, 146, 140, 132, 140, 119, 28.22399 + 118, 111, 103, 69, 44, 36, 20, 10, 71, 85, 108, 111, 85, 89, 65, 59, 28.22400 + 64, 65, 55, 52, 72, 123, 136, 147, 148, 147, 151, 153, 144, 151, 161, 175, 28.22401 + 182, 181, 165, 150, 100, 81, 41, 41, 34, 33, 21, 9, 26, 65, 79, 57, 28.22402 + 65, 64, 55, 51, 41, 24, 9, 28, 71, 83, 71, 69, 85, 84, 68, 99, 28.22403 + 99, 99, 69, 76, 111, 119, 150, 150, 146, 154, 142, 134, 124, 77, 45, 42, 28.22404 + 65, 118, 155, 167, 182, 193, 193, 193, 197, 199, 190, 175, 187, 174, 159, 157, 28.22405 + 159, 148, 143, 144, 146, 142, 143, 139, 153, 150, 154, 179, 179, 163, 150, 161, 28.22406 + 147, 139, 132, 147, 134, 110, 115, 96, 48, 166, 212, 202, 218, 178, 218, 174, 28.22407 + 214, 204, 225, 206, 210, 195, 205, 201, 201, 195, 201, 198, 146, 64, 67, 61, 28.22408 + 61, 126, 136, 115, 135, 194, 195, 229, 189, 116, 104, 108, 123, 128, 135, 123, 28.22409 + 131, 147, 166, 165, 150, 142, 136, 122, 40, 17, 13, 38, 38, 53, 60, 63, 28.22410 + 65, 68, 85, 91, 99, 95, 103, 103, 106, 104, 106, 87, 76, 49, 79, 135, 28.22411 + 169, 110, 79, 38, 34, 33, 46, 63, 63, 61, 55, 56, 92, 106, 103, 103, 28.22412 + 91, 87, 225, 220, 218, 106, 99, 108, 118, 130, 135, 134, 135, 134, 134, 130, 28.22413 + 136, 124, 123, 22, 10, 10, 26, 45, 55, 122, 69, 128, 165, 185, 190, 190, 28.22414 + 193, 198, 204, 209, 210, 214, 222, 225, 225, 229, 228, 229, 226, 233, 224, 232, 28.22415 + 236, 234, 228, 222, 224, 216, 218, 217, 209, 209, 212, 208, 210, 202, 201, 190, 28.22416 + 186, 183, 183, 177, 167, 157, 142, 139, 97, 99, 127, 153, 171, 187, 198, 208, 28.22417 + 209, 206, 209, 206, 205, 202, 197, 190, 171, 122, 103, 89, 79, 81, 85, 91, 28.22418 + 97, 97, 97, 95, 71, 48, 22, 95, 88, 102, 95, 97, 96, 83, 81, 84, 28.22419 + 91, 91, 65, 63, 102, 107, 114, 114, 108, 88, 81, 93, 64, 36, 108, 108, 28.22420 + 108, 88, 119, 87, 96, 111, 130, 173, 202, 213, 210, 208, 206, 199, 194, 189, 28.22421 + 178, 174, 157, 144, 81, 44, 22, 93, 93, 76, 76, 84, 89, 93, 77, 76, 28.22422 + 87, 93, 83, 61, 81, 79, 72, 71, 68, 68, 69, 69, 63, 36, 0, 57, 28.22423 + 84, 85, 80, 65, 61, 76, 73, 60, 69, 76, 32, 65, 89, 68, 226, 234, 28.22424 + 221, 104, 96, 107, 123, 130, 134, 138, 138, 135, 136, 140, 155, 153, 144, 136, 28.22425 + 130, 116, 13, 12, 13, 18, 12, 20, 32, 29, 26, 17, 12, 10, 17, 61, 28.22426 + 84, 89, 84, 89, 81, 73, 68, 76, 73, 61, 65, 75, 79, 76, 79, 75, 28.22427 + 81, 88, 91, 68, 76, 76, 95, 115, 108, 100, 119, 120, 120, 75, 63, 59, 28.22428 + 51, 46, 45, 51, 46, 37, 24, 29, 30, 22, 18, 17, 30, 18, 73, 83, 28.22429 + 80, 75, 212, 217, 186, 100, 97, 107, 123, 134, 140, 151, 163, 157, 140, 128, 28.22430 + 45, 45, 49, 51, 52, 77, 72, 80, 83, 83, 79, 87, 64, 68, 67, 67, 28.22431 + 71, 30, 91, 84, 87, 99, 91, 126, 148, 163, 167, 170, 170, 174, 182, 189, 28.22432 + 189, 182, 183, 181, 181, 181, 183, 190, 190, 191, 189, 181, 171, 170, 144, 138, 28.22433 + 154, 139, 154, 177, 182, 195, 191, 185, 183, 183, 170, 171, 177, 173, 150, 69, 28.22434 + 32, 30, 14, 83, 102, 87, 107, 112, 93, 108, 104, 81, 102, 120, 159, 158, 28.22435 + 179, 183, 191, 185, 186, 186, 190, 194, 193, 197, 205, 205, 206, 204, 202, 195, 28.22436 + 175, 154, 102, 60, 49, 22, 6, 68, 77, 60, 71, 77, 61, 71, 60, 51, 28.22437 + 18, 14, 80, 167, 178, 181, 175, 181, 189, 198, 206, 201, 195, 198, 194, 195, 28.22438 + 194, 195, 177, 191, 193, 185, 148, 170, 136, 61, 46, 95, 150, 177, 185, 191, 28.22439 + 195, 199, 204, 201, 204, 201, 174, 202, 197, 155, 104, 95, 146, 167, 167, 163, 28.22440 + 150, 157, 153, 142, 120, 119, 106, 114, 112, 104, 147, 150, 95, 148, 157, 118, 28.22441 + 110, 106, 53, 34, 91, 155, 187, 143, 124, 97, 102, 108, 108, 136, 178, 183, 28.22442 + 183, 191, 171, 175, 187, 191, 111, 76, 65, 87, 102, 114, 108, 108, 116, 140, 28.22443 + 177, 202, 237, 208, 122, 103, 120, 130, 136, 147, 153, 158, 162, 161, 153, 151, 28.22444 + 142, 138, 122, 36, 16, 14, 34, 49, 53, 75, 67, 79, 89, 83, 87, 92, 28.22445 + 97, 100, 88, 104, 95, 96, 92, 76, 65, 68, 80, 151, 96, 63, 42, 36, 28.22446 + 30, 57, 56, 55, 52, 42, 84, 108, 104, 96, 93, 87, 85, 232, 224, 220, 28.22447 + 100, 97, 114, 122, 135, 132, 138, 140, 138, 132, 130, 134, 123, 120, 22, 10, 28.22448 + 12, 25, 40, 110, 49, 64, 76, 111, 169, 178, 185, 194, 197, 201, 205, 210, 28.22449 + 216, 218, 218, 225, 225, 228, 229, 229, 232, 226, 234, 233, 233, 228, 221, 213, 28.22450 + 208, 210, 210, 216, 217, 212, 208, 209, 202, 187, 189, 175, 166, 178, 167, 167, 28.22451 + 122, 87, 122, 139, 163, 183, 198, 199, 195, 190, 202, 209, 208, 210, 210, 210, 28.22452 + 206, 205, 201, 195, 190, 171, 147, 104, 81, 75, 81, 80, 79, 84, 81, 85, 28.22453 + 53, 29, 97, 91, 100, 91, 83, 72, 68, 69, 69, 68, 71, 52, 76, 114, 28.22454 + 95, 79, 111, 111, 102, 73, 71, 61, 37, 114, 112, 120, 111, 120, 126, 115, 28.22455 + 142, 201, 218, 226, 224, 213, 204, 194, 181, 155, 140, 116, 93, 73, 64, 132, 28.22456 + 55, 29, 100, 88, 92, 100, 95, 91, 83, 73, 85, 77, 65, 52, 84, 85, 28.22457 + 81, 59, 60, 73, 67, 59, 73, 46, 33, 0, 65, 61, 68, 69, 76, 79, 28.22458 + 85, 95, 88, 76, 79, 40, 63, 84, 61, 233, 236, 232, 107, 97, 110, 130, 28.22459 + 138, 144, 151, 151, 151, 154, 151, 148, 144, 142, 140, 132, 122, 17, 12, 14, 28.22460 + 13, 21, 12, 8, 18, 17, 21, 9, 12, 17, 65, 88, 91, 87, 83, 88, 28.22461 + 77, 81, 85, 100, 87, 67, 65, 79, 123, 158, 165, 177, 186, 197, 198, 193, 28.22462 + 198, 206, 212, 209, 212, 221, 221, 212, 206, 210, 189, 195, 195, 199, 190, 157, 28.22463 + 67, 28, 20, 24, 18, 18, 12, 32, 21, 65, 73, 83, 89, 218, 224, 213, 28.22464 + 96, 93, 107, 122, 132, 142, 151, 162, 162, 155, 169, 87, 76, 71, 71, 72, 28.22465 + 73, 73, 91, 92, 99, 77, 79, 75, 92, 76, 71, 67, 69, 59, 87, 79, 28.22466 + 68, 100, 173, 186, 187, 170, 183, 194, 189, 195, 185, 183, 198, 183, 197, 198, 28.22467 + 190, 185, 183, 177, 178, 181, 185, 193, 181, 171, 131, 138, 178, 193, 193, 190, 28.22468 + 185, 197, 183, 169, 134, 138, 122, 112, 122, 107, 81, 26, 26, 17, 67, 73, 28.22469 + 93, 77, 81, 100, 80, 76, 103, 146, 153, 174, 178, 179, 177, 170, 178, 182, 28.22470 + 189, 183, 181, 177, 171, 174, 179, 183, 194, 199, 201, 201, 198, 187, 123, 53, 28.22471 + 30, 8, 79, 75, 61, 56, 51, 46, 52, 71, 61, 29, 22, 115, 177, 181, 28.22472 + 173, 189, 202, 201, 201, 204, 204, 205, 198, 189, 183, 186, 179, 174, 166, 151, 28.22473 + 158, 148, 146, 122, 68, 53, 118, 154, 175, 183, 189, 195, 205, 205, 165, 165, 28.22474 + 147, 136, 139, 134, 112, 64, 68, 89, 162, 167, 151, 142, 130, 131, 127, 127, 28.22475 + 123, 119, 124, 126, 132, 132, 140, 142, 142, 144, 106, 96, 97, 111, 46, 57, 28.22476 + 72, 81, 77, 75, 72, 72, 73, 77, 76, 79, 79, 83, 87, 89, 91, 84, 28.22477 + 80, 75, 60, 88, 22, 18, 13, 100, 102, 119, 130, 193, 208, 199, 190, 139, 28.22478 + 107, 115, 134, 155, 158, 158, 162, 163, 159, 153, 147, 140, 138, 124, 34, 16, 28.22479 + 14, 37, 55, 55, 73, 75, 85, 65, 100, 104, 89, 87, 93, 85, 96, 96, 28.22480 + 96, 96, 79, 64, 37, 71, 147, 96, 63, 38, 33, 33, 57, 60, 52, 52, 28.22481 + 49, 95, 108, 102, 92, 89, 85, 85, 237, 228, 222, 108, 97, 114, 124, 132, 28.22482 + 134, 142, 139, 134, 127, 127, 131, 124, 119, 20, 10, 12, 22, 44, 60, 59, 28.22483 + 67, 119, 143, 174, 173, 130, 161, 138, 143, 142, 138, 134, 134, 132, 130, 126, 28.22484 + 126, 122, 120, 119, 127, 122, 116, 116, 118, 110, 107, 110, 110, 163, 178, 210, 28.22485 + 183, 174, 170, 154, 131, 108, 102, 102, 103, 107, 102, 99, 115, 118, 170, 197, 28.22486 + 198, 199, 205, 183, 167, 174, 171, 159, 148, 139, 143, 142, 144, 146, 167, 182, 28.22487 + 182, 186, 114, 92, 64, 79, 72, 49, 61, 71, 83, 60, 26, 73, 92, 104, 28.22488 + 83, 67, 76, 81, 69, 64, 59, 77, 48, 71, 116, 111, 84, 88, 102, 79, 28.22489 + 79, 76, 60, 48, 119, 123, 103, 115, 122, 127, 135, 205, 228, 233, 222, 213, 28.22490 + 185, 135, 108, 93, 87, 80, 76, 64, 42, 44, 63, 48, 17, 67, 85, 83, 28.22491 + 81, 71, 63, 56, 63, 61, 83, 67, 40, 77, 79, 73, 60, 72, 67, 65, 28.22492 + 63, 76, 49, 29, 0, 64, 72, 76, 72, 73, 65, 65, 75, 79, 81, 55, 28.22493 + 21, 69, 97, 49, 230, 237, 233, 110, 100, 108, 135, 142, 148, 148, 157, 157, 28.22494 + 161, 157, 158, 154, 144, 138, 134, 122, 13, 8, 9, 13, 26, 14, 5, 18, 28.22495 + 6, 44, 9, 10, 12, 57, 87, 85, 85, 89, 88, 80, 85, 76, 75, 60, 28.22496 + 42, 84, 92, 84, 151, 178, 189, 198, 201, 205, 209, 212, 214, 218, 221, 226, 28.22497 + 226, 225, 224, 222, 220, 222, 221, 218, 217, 212, 185, 79, 30, 26, 17, 34, 28.22498 + 13, 18, 32, 16, 45, 63, 80, 72, 226, 230, 224, 100, 93, 107, 122, 132, 28.22499 + 142, 151, 162, 165, 161, 136, 170, 119, 124, 179, 195, 198, 199, 198, 199, 198, 28.22500 + 195, 193, 197, 191, 185, 175, 110, 68, 72, 71, 48, 91, 103, 110, 183, 197, 28.22501 + 178, 194, 195, 198, 169, 157, 132, 144, 163, 185, 182, 182, 165, 167, 147, 158, 28.22502 + 155, 151, 150, 146, 130, 114, 163, 193, 195, 195, 189, 185, 155, 138, 111, 104, 28.22503 + 106, 100, 102, 99, 110, 37, 28, 25, 16, 77, 77, 95, 104, 73, 83, 96, 28.22504 + 72, 106, 143, 162, 183, 187, 169, 157, 134, 132, 132, 139, 134, 134, 126, 123, 28.22505 + 120, 127, 128, 144, 153, 154, 165, 175, 187, 169, 81, 42, 12, 49, 80, 61, 28.22506 + 51, 53, 51, 59, 60, 65, 28, 18, 107, 158, 183, 195, 195, 229, 193, 197, 28.22507 + 197, 197, 190, 179, 175, 187, 178, 171, 167, 103, 88, 84, 79, 87, 77, 71, 28.22508 + 63, 114, 161, 175, 187, 202, 171, 162, 143, 120, 126, 118, 115, 119, 110, 114, 28.22509 + 63, 48, 77, 99, 162, 161, 142, 155, 131, 127, 114, 131, 128, 132, 132, 131, 28.22510 + 131, 138, 139, 142, 132, 100, 88, 91, 108, 55, 60, 64, 67, 64, 71, 79, 28.22511 + 81, 77, 71, 76, 68, 80, 73, 76, 75, 77, 72, 69, 88, 77, 16, 12, 28.22512 + 12, 46, 84, 93, 110, 118, 191, 209, 232, 190, 119, 104, 126, 140, 154, 162, 28.22513 + 158, 159, 159, 161, 154, 150, 143, 136, 118, 29, 14, 14, 34, 51, 63, 71, 28.22514 + 76, 88, 69, 100, 100, 84, 92, 83, 85, 91, 107, 104, 87, 73, 67, 40, 28.22515 + 68, 136, 97, 85, 61, 40, 34, 53, 49, 52, 40, 40, 103, 112, 96, 99, 28.22516 + 92, 84, 80, 237, 228, 221, 107, 99, 112, 124, 130, 136, 136, 130, 127, 126, 28.22517 + 127, 126, 122, 115, 20, 10, 9, 22, 38, 44, 61, 42, 77, 110, 134, 108, 28.22518 + 142, 118, 107, 107, 110, 110, 99, 107, 111, 108, 100, 100, 100, 103, 100, 100, 28.22519 + 97, 100, 97, 97, 97, 96, 96, 97, 100, 103, 103, 99, 96, 95, 95, 95, 28.22520 + 96, 97, 100, 103, 106, 110, 112, 118, 118, 187, 195, 195, 198, 182, 150, 124, 28.22521 + 111, 106, 107, 104, 102, 106, 108, 108, 111, 114, 131, 132, 159, 155, 93, 64, 28.22522 + 87, 60, 73, 75, 69, 76, 53, 28, 89, 102, 97, 83, 84, 77, 102, 71, 28.22523 + 60, 56, 72, 45, 79, 116, 106, 84, 72, 75, 68, 75, 73, 60, 41, 110, 28.22524 + 120, 111, 135, 128, 136, 202, 226, 237, 234, 214, 155, 87, 76, 68, 68, 68, 28.22525 + 64, 55, 49, 36, 29, 45, 49, 28, 68, 81, 85, 67, 61, 59, 57, 56, 28.22526 + 60, 72, 59, 46, 80, 84, 63, 63, 79, 77, 60, 71, 75, 63, 28, 1, 28.22527 + 57, 81, 76, 64, 83, 95, 85, 83, 76, 71, 56, 22, 64, 71, 49, 236, 28.22528 + 240, 234, 110, 102, 110, 135, 144, 153, 153, 161, 166, 167, 165, 159, 154, 146, 28.22529 + 139, 131, 118, 10, 10, 13, 10, 20, 5, 8, 1, 18, 26, 13, 9, 17, 28.22530 + 53, 84, 83, 73, 81, 92, 77, 84, 64, 60, 53, 42, 83, 85, 107, 99, 28.22531 + 126, 151, 185, 199, 198, 206, 209, 217, 217, 224, 208, 230, 228, 225, 210, 224, 28.22532 + 228, 222, 197, 228, 228, 186, 77, 28, 14, 32, 29, 13, 21, 28, 24, 33, 28.22533 + 61, 79, 71, 229, 234, 228, 102, 93, 106, 119, 131, 144, 150, 162, 167, 167, 28.22534 + 159, 174, 181, 186, 191, 198, 198, 198, 198, 197, 194, 194, 190, 191, 187, 183, 28.22535 + 181, 177, 167, 103, 80, 76, 75, 59, 72, 99, 122, 108, 104, 110, 95, 93, 28.22536 + 91, 87, 96, 95, 103, 103, 103, 102, 103, 100, 99, 103, 108, 107, 106, 130, 28.22537 + 119, 161, 195, 193, 185, 186, 136, 114, 107, 106, 104, 111, 110, 111, 116, 87, 28.22538 + 29, 22, 16, 9, 75, 80, 89, 93, 93, 77, 103, 108, 116, 165, 163, 151, 28.22539 + 163, 153, 111, 93, 91, 92, 95, 96, 96, 95, 95, 99, 102, 103, 107, 110, 28.22540 + 115, 119, 124, 134, 171, 123, 57, 13, 57, 77, 60, 60, 57, 53, 49, 46, 28.22541 + 65, 29, 20, 40, 83, 143, 159, 155, 146, 135, 114, 106, 99, 85, 79, 84, 28.22542 + 80, 81, 79, 72, 69, 71, 65, 65, 65, 61, 76, 68, 118, 165, 175, 175, 28.22543 + 167, 128, 123, 102, 107, 119, 120, 128, 119, 124, 108, 61, 61, 56, 60, 96, 28.22544 + 185, 161, 153, 144, 138, 135, 132, 134, 135, 132, 131, 135, 135, 130, 118, 134, 28.22545 + 93, 33, 84, 84, 85, 89, 92, 53, 63, 97, 124, 110, 111, 100, 97, 88, 28.22546 + 89, 87, 81, 95, 79, 80, 93, 84, 25, 10, 9, 16, 21, 72, 87, 100, 28.22547 + 104, 185, 212, 238, 179, 123, 108, 126, 148, 158, 162, 162, 165, 169, 162, 155, 28.22548 + 150, 143, 134, 120, 32, 14, 17, 36, 48, 56, 60, 71, 80, 63, 91, 96, 28.22549 + 80, 102, 83, 76, 91, 76, 79, 77, 69, 67, 46, 77, 130, 128, 99, 76, 28.22550 + 60, 52, 53, 51, 48, 38, 68, 102, 106, 100, 95, 89, 80, 77, 241, 232, 28.22551 + 230, 102, 99, 111, 122, 130, 136, 128, 127, 126, 135, 134, 132, 127, 120, 20, 28.22552 + 9, 9, 22, 34, 44, 72, 63, 42, 72, 107, 111, 115, 122, 108, 110, 96, 28.22553 + 107, 112, 107, 104, 102, 106, 107, 108, 108, 108, 107, 108, 110, 110, 111, 115, 28.22554 + 118, 114, 111, 99, 97, 96, 97, 97, 100, 97, 102, 110, 112, 116, 119, 122, 28.22555 + 122, 119, 122, 112, 142, 201, 177, 151, 131, 104, 119, 119, 118, 116, 116, 118, 28.22556 + 118, 118, 116, 114, 112, 107, 108, 114, 135, 102, 67, 77, 61, 65, 68, 71, 28.22557 + 76, 56, 29, 88, 102, 99, 96, 95, 73, 99, 73, 59, 69, 72, 42, 72, 28.22558 + 107, 102, 88, 85, 83, 79, 75, 71, 60, 45, 118, 126, 139, 118, 130, 190, 28.22559 + 225, 238, 238, 226, 159, 103, 71, 56, 44, 38, 34, 40, 36, 36, 25, 29, 28.22560 + 33, 52, 28, 42, 91, 87, 61, 61, 61, 64, 61, 56, 68, 64, 44, 76, 28.22561 + 80, 60, 75, 79, 63, 59, 71, 69, 73, 32, 0, 68, 76, 81, 71, 65, 28.22562 + 61, 69, 76, 83, 65, 49, 32, 57, 87, 51, 228, 238, 237, 108, 97, 110, 28.22563 + 134, 147, 154, 161, 165, 175, 175, 173, 162, 158, 148, 142, 130, 120, 10, 8, 28.22564 + 10, 13, 22, 16, 8, 10, 30, 37, 14, 9, 16, 55, 79, 83, 83, 88, 28.22565 + 76, 81, 79, 64, 56, 65, 36, 72, 96, 77, 108, 110, 115, 120, 134, 142, 28.22566 + 135, 127, 126, 128, 131, 131, 153, 144, 139, 157, 167, 139, 132, 147, 165, 126, 28.22567 + 106, 75, 24, 21, 30, 37, 16, 18, 22, 34, 17, 59, 69, 68, 233, 234, 28.22568 + 232, 106, 95, 107, 120, 131, 143, 151, 163, 170, 169, 165, 161, 131, 175, 185, 28.22569 + 191, 199, 198, 199, 197, 195, 195, 194, 193, 191, 190, 185, 181, 170, 166, 150, 28.22570 + 144, 79, 72, 72, 59, 63, 72, 87, 75, 85, 83, 85, 84, 89, 89, 96, 28.22571 + 95, 96, 97, 99, 100, 103, 103, 106, 110, 112, 131, 122, 151, 186, 178, 181, 28.22572 + 120, 108, 112, 108, 119, 118, 120, 116, 120, 120, 76, 20, 18, 21, 12, 71, 28.22573 + 80, 87, 87, 97, 95, 79, 97, 132, 139, 148, 127, 119, 95, 85, 93, 102, 28.22574 + 99, 99, 102, 100, 104, 106, 107, 106, 108, 108, 108, 111, 111, 112, 114, 124, 28.22575 + 147, 67, 17, 51, 68, 52, 59, 59, 61, 55, 51, 53, 44, 26, 33, 36, 28.22576 + 61, 69, 73, 68, 77, 79, 68, 69, 67, 69, 67, 73, 75, 72, 69, 72, 28.22577 + 79, 106, 110, 112, 112, 81, 76, 122, 193, 182, 142, 110, 107, 119, 122, 128, 28.22578 + 131, 134, 132, 132, 134, 96, 48, 14, 48, 65, 53, 80, 178, 162, 148, 148, 28.22579 + 148, 143, 146, 146, 150, 148, 150, 150, 147, 136, 110, 100, 88, 89, 76, 73, 28.22580 + 76, 92, 81, 60, 95, 182, 183, 132, 132, 115, 118, 118, 110, 123, 123, 126, 28.22581 + 115, 112, 37, 16, 10, 20, 25, 40, 65, 87, 84, 110, 191, 214, 238, 161, 28.22582 + 128, 108, 127, 150, 157, 161, 166, 166, 170, 166, 162, 147, 142, 132, 122, 32, 28.22583 + 16, 16, 40, 44, 56, 71, 64, 79, 68, 97, 97, 75, 96, 87, 77, 75, 28.22584 + 111, 76, 77, 67, 65, 37, 65, 126, 123, 92, 96, 80, 67, 69, 48, 41, 28.22585 + 33, 71, 106, 99, 102, 87, 104, 106, 81, 238, 232, 233, 107, 95, 112, 123, 28.22586 + 132, 127, 136, 140, 142, 147, 146, 139, 128, 124, 20, 9, 9, 24, 37, 45, 28.22587 + 57, 49, 69, 40, 57, 108, 80, 89, 96, 107, 126, 135, 115, 118, 119, 139, 28.22588 + 119, 123, 126, 135, 123, 123, 124, 138, 128, 130, 139, 139, 134, 132, 124, 116, 28.22589 + 114, 114, 115, 116, 116, 120, 124, 131, 134, 138, 138, 139, 128, 124, 100, 116, 28.22590 + 132, 124, 102, 124, 124, 143, 140, 128, 127, 128, 127, 127, 128, 128, 126, 124, 28.22591 + 120, 119, 115, 111, 115, 71, 63, 73, 60, 65, 71, 71, 57, 34, 83, 95, 28.22592 + 95, 93, 95, 80, 103, 84, 57, 65, 60, 38, 67, 107, 103, 75, 84, 65, 28.22593 + 89, 88, 88, 79, 77, 119, 148, 142, 142, 178, 216, 237, 242, 234, 209, 119, 28.22594 + 77, 51, 29, 26, 32, 26, 25, 28, 32, 30, 32, 30, 93, 30, 36, 89, 28.22595 + 81, 61, 61, 65, 65, 64, 61, 61, 61, 42, 72, 83, 63, 76, 68, 59, 28.22596 + 59, 60, 73, 52, 30, 0, 67, 77, 65, 63, 63, 67, 67, 76, 73, 61, 28.22597 + 40, 40, 48, 83, 76, 238, 242, 238, 115, 97, 108, 132, 143, 154, 161, 167, 28.22598 + 175, 174, 173, 171, 161, 144, 140, 132, 122, 10, 10, 9, 13, 21, 12, 8, 28.22599 + 10, 32, 24, 4, 9, 14, 44, 65, 83, 83, 79, 84, 89, 63, 51, 45, 28.22600 + 44, 37, 83, 84, 76, 111, 108, 92, 100, 107, 108, 110, 116, 114, 108, 114, 28.22601 + 120, 118, 122, 124, 126, 124, 127, 115, 119, 112, 112, 91, 48, 16, 12, 34, 28.22602 + 28, 16, 20, 18, 30, 9, 53, 81, 71, 233, 240, 233, 107, 97, 110, 124, 28.22603 + 131, 143, 151, 163, 169, 171, 169, 162, 163, 144, 139, 138, 134, 132, 128, 127, 28.22604 + 124, 124, 123, 122, 120, 116, 114, 112, 104, 112, 110, 110, 89, 95, 72, 93, 28.22605 + 87, 92, 85, 88, 89, 91, 93, 93, 95, 99, 102, 102, 103, 104, 107, 110, 28.22606 + 110, 112, 114, 119, 120, 115, 122, 119, 163, 194, 123, 115, 120, 124, 128, 130, 28.22607 + 130, 127, 123, 126, 122, 65, 18, 18, 17, 8, 64, 79, 84, 89, 83, 84, 28.22608 + 81, 87, 81, 84, 79, 85, 87, 73, 68, 61, 68, 85, 85, 108, 108, 110, 28.22609 + 114, 116, 116, 118, 118, 120, 120, 122, 120, 119, 116, 161, 85, 30, 33, 53, 28.22610 + 73, 69, 57, 46, 48, 53, 42, 59, 28, 18, 53, 49, 65, 69, 79, 80, 28.22611 + 81, 81, 89, 88, 92, 95, 99, 102, 103, 106, 104, 108, 118, 122, 124, 122, 28.22612 + 91, 79, 115, 163, 155, 126, 106, 128, 134, 140, 138, 139, 138, 138, 139, 127, 28.22613 + 79, 14, 33, 44, 49, 51, 61, 103, 163, 162, 140, 131, 154, 154, 155, 155, 28.22614 + 159, 159, 161, 159, 155, 142, 122, 95, 40, 79, 81, 75, 73, 73, 53, 96, 28.22615 + 191, 179, 162, 161, 132, 126, 128, 134, 122, 128, 144, 124, 104, 38, 14, 8, 28.22616 + 22, 26, 8, 63, 80, 79, 100, 202, 220, 229, 162, 116, 108, 127, 147, 158, 28.22617 + 162, 165, 165, 170, 166, 162, 150, 139, 136, 124, 33, 14, 20, 40, 55, 61, 28.22618 + 67, 71, 73, 64, 92, 89, 76, 85, 88, 84, 75, 69, 75, 71, 67, 57, 28.22619 + 33, 63, 122, 112, 84, 87, 84, 63, 111, 75, 40, 32, 84, 104, 95, 95, 28.22620 + 85, 100, 89, 79, 240, 232, 234, 107, 95, 110, 123, 135, 138, 150, 154, 159, 28.22621 + 161, 154, 142, 131, 126, 20, 9, 10, 18, 30, 42, 41, 57, 85, 61, 41, 28.22622 + 53, 96, 96, 92, 167, 179, 161, 115, 134, 159, 126, 128, 138, 148, 134, 132, 28.22623 + 136, 147, 134, 138, 144, 138, 143, 144, 143, 140, 136, 134, 134, 132, 138, 139, 28.22624 + 140, 143, 146, 150, 150, 150, 150, 144, 127, 132, 99, 97, 132, 130, 102, 72, 28.22625 + 65, 79, 103, 119, 154, 131, 134, 153, 135, 135, 134, 131, 130, 126, 115, 131, 28.22626 + 89, 52, 69, 71, 68, 60, 79, 60, 33, 41, 91, 96, 108, 96, 79, 102, 28.22627 + 83, 52, 68, 56, 40, 93, 96, 103, 88, 97, 91, 107, 126, 144, 151, 161, 28.22628 + 190, 206, 212, 217, 221, 236, 242, 244, 233, 169, 92, 45, 52, 37, 46, 41, 28.22629 + 46, 41, 37, 36, 37, 37, 40, 40, 42, 29, 69, 77, 65, 68, 68, 67, 28.22630 + 73, 65, 65, 61, 40, 67, 72, 61, 75, 67, 61, 63, 65, 75, 57, 28, 28.22631 + 1, 60, 79, 73, 75, 72, 79, 76, 73, 77, 55, 25, 18, 49, 76, 53, 28.22632 + 237, 244, 241, 112, 99, 108, 135, 146, 151, 161, 166, 171, 173, 173, 171, 162, 28.22633 + 144, 136, 134, 122, 10, 8, 14, 9, 14, 8, 9, 2, 24, 10, 13, 6, 28.22634 + 14, 40, 61, 79, 89, 83, 79, 67, 63, 52, 52, 48, 32, 83, 83, 88, 28.22635 + 76, 80, 73, 76, 124, 130, 103, 116, 122, 128, 131, 130, 122, 123, 124, 126, 28.22636 + 122, 118, 120, 118, 116, 104, 87, 33, 17, 16, 28, 34, 16, 21, 22, 34, 28.22637 + 9, 56, 73, 75, 228, 238, 237, 108, 99, 111, 124, 134, 143, 153, 165, 169, 28.22638 + 170, 169, 155, 147, 116, 91, 85, 106, 100, 114, 112, 112, 108, 106, 102, 99, 28.22639 + 91, 88, 88, 88, 81, 80, 73, 67, 61, 57, 53, 56, 64, 53, 63, 170, 28.22640 + 99, 100, 97, 104, 103, 108, 111, 111, 112, 118, 122, 122, 123, 124, 126, 128, 28.22641 + 128, 130, 120, 122, 119, 118, 126, 135, 139, 138, 138, 135, 134, 132, 128, 110, 28.22642 + 41, 21, 13, 17, 12, 52, 79, 76, 84, 88, 88, 91, 79, 75, 65, 57, 28.22643 + 45, 41, 37, 29, 36, 36, 51, 65, 80, 93, 112, 110, 118, 116, 122, 115, 28.22644 + 119, 124, 130, 130, 128, 127, 124, 122, 59, 14, 51, 53, 42, 38, 55, 46, 28.22645 + 49, 42, 49, 28, 25, 49, 45, 45, 53, 52, 134, 89, 96, 102, 106, 104, 28.22646 + 108, 112, 111, 114, 115, 114, 114, 126, 128, 131, 131, 126, 85, 106, 151, 130, 28.22647 + 123, 134, 144, 140, 143, 139, 140, 144, 142, 140, 128, 61, 30, 29, 37, 30, 28.22648 + 42, 57, 63, 130, 170, 155, 134, 132, 153, 163, 163, 161, 166, 166, 170, 170, 28.22649 + 166, 148, 108, 77, 68, 40, 63, 71, 56, 60, 110, 191, 190, 177, 136, 150, 28.22650 + 134, 135, 135, 140, 147, 144, 118, 120, 30, 16, 20, 24, 8, 0, 57, 77, 28.22651 + 77, 96, 199, 221, 233, 139, 116, 107, 126, 140, 155, 161, 161, 163, 170, 166, 28.22652 + 165, 151, 143, 134, 126, 30, 14, 17, 36, 56, 64, 64, 84, 87, 56, 89, 28.22653 + 84, 77, 84, 84, 87, 75, 69, 69, 67, 65, 60, 33, 63, 128, 142, 93, 28.22654 + 91, 92, 92, 65, 76, 45, 25, 81, 100, 93, 93, 87, 93, 85, 76, 241, 28.22655 + 238, 233, 104, 96, 110, 124, 139, 147, 159, 165, 163, 165, 157, 144, 132, 126, 28.22656 + 17, 9, 9, 20, 38, 41, 41, 46, 64, 61, 45, 42, 80, 87, 91, 195, 28.22657 + 190, 124, 107, 118, 136, 134, 151, 157, 136, 138, 147, 151, 142, 146, 142, 148, 28.22658 + 148, 147, 159, 159, 163, 157, 148, 144, 146, 151, 155, 154, 158, 157, 161, 161, 28.22659 + 161, 159, 155, 140, 140, 140, 134, 106, 60, 38, 28, 30, 41, 77, 111, 130, 28.22660 + 170, 179, 177, 163, 170, 169, 155, 135, 132, 124, 115, 104, 57, 51, 68, 65, 28.22661 + 63, 64, 63, 46, 36, 83, 83, 73, 93, 84, 85, 61, 61, 57, 46, 61, 28.22662 + 91, 84, 126, 140, 171, 195, 218, 222, 237, 237, 244, 244, 246, 248, 246, 246, 28.22663 + 248, 248, 238, 213, 134, 89, 56, 29, 40, 38, 38, 41, 37, 38, 40, 44, 28.22664 + 44, 38, 40, 40, 34, 67, 85, 80, 79, 80, 76, 80, 72, 63, 56, 40, 28.22665 + 71, 77, 64, 67, 77, 72, 88, 75, 65, 61, 25, 0, 64, 88, 76, 87, 28.22666 + 83, 75, 81, 79, 71, 56, 26, 20, 45, 73, 51, 237, 244, 240, 110, 97, 28.22667 + 108, 132, 143, 151, 158, 162, 167, 174, 171, 171, 165, 146, 139, 132, 123, 10, 28.22668 + 10, 9, 12, 18, 20, 20, 8, 6, 10, 6, 6, 18, 29, 56, 56, 57, 28.22669 + 55, 57, 56, 44, 48, 49, 45, 33, 57, 77, 77, 69, 68, 65, 65, 73, 28.22670 + 57, 79, 157, 119, 112, 118, 134, 135, 140, 142, 147, 147, 150, 142, 147, 112, 28.22671 + 106, 89, 21, 12, 16, 20, 16, 29, 33, 17, 28, 20, 48, 69, 77, 216, 28.22672 + 238, 238, 107, 99, 108, 124, 135, 144, 153, 165, 169, 170, 166, 157, 124, 65, 28.22673 + 26, 24, 24, 64, 81, 108, 106, 111, 108, 108, 110, 110, 108, 112, 112, 111, 28.22674 + 108, 59, 55, 59, 56, 53, 52, 48, 51, 57, 174, 178, 108, 88, 114, 120, 28.22675 + 112, 115, 119, 119, 120, 126, 128, 131, 134, 135, 135, 135, 128, 127, 116, 112, 28.22676 + 138, 143, 143, 146, 140, 140, 139, 134, 135, 124, 79, 20, 17, 13, 17, 13, 28.22677 + 34, 73, 77, 75, 65, 55, 41, 45, 45, 45, 38, 49, 49, 48, 45, 61, 28.22678 + 59, 37, 32, 61, 99, 112, 167, 170, 166, 144, 153, 166, 151, 151, 147, 132, 28.22679 + 136, 126, 153, 91, 29, 18, 51, 51, 46, 41, 45, 44, 45, 55, 25, 21, 28.22680 + 37, 46, 52, 38, 45, 131, 158, 100, 99, 108, 119, 116, 118, 120, 122, 120, 28.22681 + 120, 123, 128, 138, 135, 136, 135, 131, 89, 89, 131, 143, 147, 147, 147, 146, 28.22682 + 138, 143, 143, 142, 138, 96, 41, 33, 32, 9, 34, 34, 55, 51, 57, 148, 28.22683 + 163, 139, 127, 136, 153, 161, 166, 169, 173, 173, 174, 175, 167, 138, 72, 67, 28.22684 + 48, 67, 61, 67, 60, 119, 202, 195, 212, 147, 153, 136, 135, 138, 139, 151, 28.22685 + 144, 118, 118, 26, 14, 6, 12, 8, 0, 56, 59, 67, 89, 208, 220, 234, 28.22686 + 140, 102, 111, 130, 144, 153, 157, 159, 165, 167, 166, 162, 155, 136, 131, 123, 28.22687 + 33, 16, 18, 37, 53, 53, 63, 65, 72, 55, 99, 97, 76, 65, 64, 67, 28.22688 + 64, 64, 61, 63, 65, 61, 44, 69, 87, 110, 95, 33, 44, 40, 38, 37, 28.22689 + 34, 24, 49, 79, 77, 69, 68, 87, 77, 75, 242, 240, 233, 103, 96, 108, 28.22690 + 123, 138, 150, 163, 166, 163, 166, 158, 143, 132, 124, 17, 9, 9, 18, 22, 28.22691 + 34, 37, 36, 41, 34, 38, 46, 79, 93, 87, 198, 195, 167, 112, 115, 123, 28.22692 + 139, 139, 144, 157, 154, 142, 155, 146, 150, 148, 148, 155, 166, 170, 178, 185, 28.22693 + 185, 179, 159, 158, 161, 167, 166, 167, 166, 167, 169, 169, 166, 162, 144, 144, 28.22694 + 142, 110, 60, 28, 28, 24, 20, 29, 57, 87, 119, 173, 177, 190, 181, 175, 28.22695 + 151, 170, 163, 150, 131, 119, 116, 71, 42, 49, 61, 64, 63, 59, 59, 51, 28.22696 + 44, 46, 52, 52, 55, 55, 55, 56, 49, 77, 88, 115, 177, 214, 234, 240, 28.22697 + 240, 245, 249, 252, 252, 252, 252, 252, 250, 252, 249, 248, 245, 233, 171, 122, 28.22698 + 93, 53, 26, 38, 36, 34, 34, 38, 37, 38, 38, 42, 37, 41, 38, 36, 28.22699 + 36, 52, 56, 52, 64, 56, 60, 57, 56, 59, 37, 67, 67, 67, 55, 60, 28.22700 + 59, 61, 56, 57, 44, 28, 2, 59, 65, 72, 77, 71, 71, 69, 71, 59, 28.22701 + 52, 25, 21, 36, 71, 46, 237, 242, 237, 108, 95, 108, 134, 144, 153, 158, 28.22702 + 159, 162, 171, 173, 171, 161, 151, 139, 131, 120, 9, 8, 9, 12, 14, 12, 28.22703 + 14, 16, 17, 16, 33, 24, 20, 32, 38, 44, 37, 37, 41, 45, 40, 44, 28.22704 + 49, 40, 28, 65, 72, 67, 64, 63, 65, 64, 65, 61, 59, 161, 167, 112, 28.22705 + 111, 122, 127, 135, 140, 147, 148, 144, 150, 147, 119, 107, 91, 21, 13, 17, 28.22706 + 13, 10, 20, 22, 12, 17, 24, 37, 51, 73, 224, 242, 238, 112, 99, 110, 28.22707 + 124, 136, 142, 150, 165, 170, 167, 178, 146, 77, 34, 16, 12, 9, 26, 73, 28.22708 + 123, 163, 167, 162, 119, 151, 154, 153, 150, 122, 119, 114, 80, 49, 63, 53, 28.22709 + 52, 49, 48, 40, 45, 161, 187, 161, 103, 103, 122, 123, 127, 127, 131, 131, 28.22710 + 134, 138, 138, 139, 139, 143, 140, 138, 136, 136, 148, 147, 151, 146, 142, 127, 28.22711 + 120, 110, 96, 95, 69, 30, 16, 10, 12, 17, 13, 25, 32, 37, 34, 38, 28.22712 + 40, 40, 51, 52, 57, 49, 63, 60, 60, 56, 57, 60, 60, 61, 77, 104, 28.22713 + 175, 187, 189, 179, 171, 171, 174, 170, 163, 167, 157, 143, 138, 126, 115, 63, 28.22714 + 16, 24, 59, 57, 40, 41, 40, 36, 52, 29, 21, 30, 48, 44, 40, 48, 28.22715 + 126, 166, 155, 97, 100, 120, 122, 126, 126, 124, 128, 128, 126, 142, 148, 151, 28.22716 + 148, 147, 139, 143, 151, 153, 150, 150, 144, 140, 132, 126, 116, 111, 108, 84, 28.22717 + 45, 26, 21, 30, 21, 26, 13, 28, 32, 20, 92, 169, 163, 132, 126, 136, 28.22718 + 153, 159, 167, 171, 174, 174, 177, 177, 161, 111, 56, 67, 77, 77, 65, 59, 28.22719 + 155, 204, 199, 187, 165, 162, 144, 140, 146, 150, 148, 144, 116, 114, 24, 9, 28.22720 + 5, 17, 13, 13, 53, 51, 59, 88, 197, 221, 234, 131, 97, 107, 128, 144, 28.22721 + 155, 158, 165, 166, 167, 159, 155, 157, 139, 132, 124, 36, 14, 20, 36, 37, 28.22722 + 56, 64, 60, 69, 57, 91, 84, 60, 61, 59, 64, 61, 60, 57, 65, 65, 28.22723 + 55, 41, 49, 37, 24, 22, 22, 22, 20, 17, 20, 20, 22, 29, 32, 37, 28.22724 + 44, 45, 57, 77, 76, 241, 240, 229, 103, 96, 108, 127, 139, 150, 162, 169, 28.22725 + 169, 162, 157, 142, 130, 122, 14, 8, 8, 16, 14, 32, 36, 28, 29, 30, 28.22726 + 28, 33, 48, 87, 87, 205, 198, 193, 114, 110, 122, 135, 165, 163, 144, 154, 28.22727 + 148, 150, 157, 161, 163, 167, 170, 174, 178, 169, 153, 174, 183, 190, 181, 163, 28.22728 + 178, 178, 175, 171, 183, 178, 175, 178, 174, 181, 150, 144, 100, 45, 28, 21, 28.22729 + 17, 17, 20, 48, 81, 114, 182, 190, 161, 165, 183, 179, 159, 155, 161, 135, 28.22730 + 124, 131, 80, 44, 42, 57, 59, 57, 52, 55, 53, 57, 55, 52, 56, 56, 28.22731 + 53, 57, 46, 87, 95, 140, 218, 241, 242, 244, 248, 249, 252, 252, 250, 241, 28.22732 + 236, 230, 229, 229, 222, 220, 213, 209, 175, 140, 128, 102, 55, 49, 38, 41, 28.22733 + 38, 38, 42, 40, 40, 41, 40, 40, 42, 40, 38, 42, 42, 42, 42, 42, 28.22734 + 45, 42, 42, 42, 42, 40, 41, 34, 40, 40, 49, 32, 36, 34, 32, 28, 28.22735 + 33, 4, 16, 28, 30, 33, 32, 33, 32, 42, 36, 22, 12, 34, 33, 64, 28.22736 + 53, 240, 242, 238, 110, 95, 103, 130, 140, 153, 158, 163, 170, 170, 173, 163, 28.22737 + 157, 148, 139, 131, 123, 8, 10, 10, 14, 14, 16, 22, 12, 14, 13, 10, 28.22738 + 16, 18, 18, 18, 28, 25, 24, 22, 22, 24, 25, 24, 38, 42, 40, 46, 28.22739 + 38, 30, 59, 60, 55, 57, 61, 52, 142, 173, 162, 112, 116, 130, 128, 136, 28.22740 + 143, 139, 146, 148, 150, 123, 112, 83, 18, 10, 9, 14, 12, 16, 26, 25, 28.22741 + 13, 16, 36, 49, 75, 233, 242, 241, 112, 100, 110, 124, 135, 144, 153, 166, 28.22742 + 170, 163, 157, 112, 40, 20, 9, 10, 12, 18, 59, 142, 179, 128, 162, 154, 28.22743 + 154, 158, 167, 140, 146, 122, 118, 107, 44, 41, 45, 51, 49, 45, 52, 38, 28.22744 + 89, 197, 179, 114, 104, 112, 136, 131, 134, 135, 136, 138, 140, 142, 143, 144, 28.22745 + 146, 148, 153, 155, 151, 153, 151, 136, 104, 65, 41, 22, 16, 16, 17, 14, 28.22746 + 13, 9, 13, 10, 18, 14, 30, 28, 30, 34, 44, 64, 106, 177, 195, 209, 28.22747 + 210, 208, 199, 186, 177, 103, 92, 85, 85, 108, 186, 213, 163, 191, 183, 185, 28.22748 + 182, 174, 178, 177, 170, 163, 155, 142, 132, 147, 91, 29, 16, 29, 34, 38, 28.22749 + 40, 37, 41, 42, 44, 28, 29, 40, 45, 29, 38, 104, 175, 173, 108, 100, 28.22750 + 110, 123, 132, 130, 130, 135, 143, 146, 153, 157, 157, 157, 154, 151, 155, 155, 28.22751 + 151, 146, 130, 95, 67, 38, 26, 20, 13, 21, 21, 22, 25, 25, 1, 4, 28.22752 + 4, 34, 36, 25, 22, 32, 118, 171, 146, 120, 122, 143, 154, 159, 166, 171, 28.22753 + 175, 178, 181, 177, 135, 68, 37, 45, 63, 75, 88, 187, 201, 202, 189, 161, 28.22754 + 151, 154, 153, 154, 155, 148, 147, 128, 110, 21, 10, 6, 9, 13, 10, 33, 28.22755 + 41, 40, 72, 190, 222, 221, 130, 107, 110, 128, 144, 154, 159, 162, 166, 165, 28.22756 + 151, 158, 150, 139, 132, 124, 44, 17, 18, 25, 29, 30, 37, 67, 65, 52, 28.22757 + 60, 60, 53, 41, 38, 40, 36, 32, 28, 21, 29, 29, 37, 17, 41, 45, 28.22758 + 48, 52, 55, 52, 61, 53, 37, 18, 59, 104, 104, 81, 87, 87, 83, 77, 28.22759 + 242, 237, 222, 104, 96, 107, 126, 134, 150, 162, 169, 167, 163, 158, 142, 127, 28.22760 + 126, 18, 9, 9, 13, 13, 10, 21, 25, 26, 24, 26, 30, 38, 88, 91, 28.22761 + 208, 206, 204, 116, 126, 116, 132, 161, 165, 151, 153, 154, 165, 173, 173, 173, 28.22762 + 171, 169, 178, 143, 89, 59, 80, 150, 183, 185, 169, 161, 174, 175, 177, 175, 28.22763 + 175, 179, 181, 183, 185, 154, 151, 95, 42, 25, 21, 17, 17, 20, 49, 73, 28.22764 + 106, 195, 197, 163, 186, 189, 187, 165, 181, 170, 140, 128, 118, 100, 53, 38, 28.22765 + 48, 44, 37, 32, 38, 36, 36, 37, 40, 40, 38, 42, 55, 68, 106, 165, 28.22766 + 236, 245, 246, 244, 250, 249, 238, 220, 191, 167, 124, 112, 115, 108, 111, 116, 28.22767 + 114, 110, 115, 131, 118, 124, 116, 89, 63, 20, 18, 16, 13, 12, 12, 10, 28.22768 + 9, 8, 9, 9, 5, 4, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 28.22769 + 0, 2, 6, 8, 6, 1, 1, 0, 2, 5, 6, 2, 16, 14, 14, 6, 28.22770 + 17, 16, 13, 13, 17, 18, 17, 30, 25, 24, 75, 57, 240, 244, 242, 114, 28.22771 + 96, 106, 130, 142, 154, 161, 169, 173, 171, 169, 159, 161, 144, 136, 132, 120, 28.22772 + 6, 9, 12, 10, 9, 9, 8, 9, 8, 10, 9, 9, 9, 14, 24, 57, 28.22773 + 64, 75, 71, 73, 67, 67, 63, 56, 56, 80, 85, 77, 48, 38, 37, 34, 28.22774 + 53, 67, 57, 76, 185, 179, 119, 115, 126, 128, 134, 135, 136, 150, 146, 146, 28.22775 + 116, 111, 84, 18, 8, 13, 17, 12, 20, 21, 24, 22, 28, 55, 51, 80, 28.22776 + 233, 244, 241, 107, 97, 108, 122, 134, 140, 154, 166, 169, 165, 144, 73, 26, 28.22777 + 14, 10, 10, 10, 28, 72, 185, 193, 162, 130, 159, 162, 150, 142, 131, 151, 28.22778 + 126, 120, 111, 41, 40, 41, 45, 46, 42, 51, 45, 75, 210, 201, 126, 103, 28.22779 + 115, 130, 139, 139, 138, 139, 138, 142, 144, 147, 147, 158, 162, 159, 155, 157, 28.22780 + 148, 100, 53, 16, 10, 9, 8, 8, 8, 9, 8, 9, 10, 13, 10, 21, 28.22781 + 29, 30, 46, 55, 72, 126, 185, 234, 242, 244, 244, 244, 242, 240, 240, 237, 28.22782 + 237, 236, 232, 224, 229, 229, 224, 208, 190, 183, 179, 179, 177, 175, 178, 174, 28.22783 + 170, 169, 150, 140, 127, 115, 61, 18, 21, 22, 28, 20, 25, 28, 26, 33, 28.22784 + 33, 32, 33, 29, 33, 42, 97, 186, 183, 120, 106, 107, 120, 130, 134, 138, 28.22785 + 153, 157, 162, 161, 159, 157, 159, 163, 159, 157, 153, 134, 91, 46, 13, 9, 28.22786 + 6, 8, 9, 10, 14, 12, 2, 6, 4, 6, 13, 5, 5, 10, 16, 8, 28.22787 + 20, 64, 151, 165, 128, 118, 132, 147, 155, 159, 167, 174, 177, 182, 185, 158, 28.22788 + 100, 75, 75, 76, 73, 112, 201, 205, 208, 194, 166, 157, 167, 155, 150, 157, 28.22789 + 146, 147, 123, 119, 21, 9, 10, 2, 2, 1, 144, 134, 128, 85, 186, 221, 28.22790 + 222, 140, 110, 107, 126, 144, 154, 158, 162, 163, 159, 159, 161, 140, 138, 132, 28.22791 + 127, 49, 17, 18, 24, 45, 41, 37, 37, 41, 46, 37, 44, 61, 73, 71, 28.22792 + 84, 89, 92, 100, 99, 91, 73, 22, 67, 79, 104, 110, 102, 93, 93, 91, 28.22793 + 68, 44, 17, 92, 104, 102, 100, 104, 104, 84, 84, 245, 233, 233, 104, 93, 28.22794 + 104, 127, 135, 148, 162, 166, 165, 161, 158, 143, 132, 127, 20, 10, 9, 16, 28.22795 + 12, 18, 32, 30, 38, 5, 36, 30, 84, 87, 99, 216, 212, 210, 130, 126, 28.22796 + 131, 123, 154, 162, 155, 153, 167, 177, 177, 177, 175, 167, 169, 155, 91, 34, 28.22797 + 36, 59, 108, 174, 197, 178, 157, 174, 179, 178, 181, 182, 183, 186, 187, 185, 28.22798 + 159, 155, 103, 48, 32, 24, 22, 20, 22, 52, 85, 103, 199, 204, 169, 166, 28.22799 + 170, 189, 189, 186, 173, 151, 134, 122, 126, 76, 37, 42, 49, 56, 52, 59, 28.22800 + 80, 88, 97, 91, 99, 95, 84, 96, 135, 183, 240, 242, 245, 249, 244, 221, 28.22801 + 186, 143, 118, 112, 104, 97, 107, 110, 111, 97, 115, 114, 110, 104, 123, 126, 28.22802 + 127, 122, 116, 76, 80, 61, 59, 60, 65, 60, 60, 57, 51, 55, 41, 49, 28.22803 + 73, 92, 95, 108, 102, 99, 111, 114, 97, 75, 69, 79, 122, 97, 100, 128, 28.22804 + 124, 99, 89, 91, 110, 83, 10, 0, 22, 45, 60, 32, 38, 33, 29, 26, 28.22805 + 5, 14, 21, 49, 77, 73, 65, 241, 244, 241, 112, 95, 110, 131, 143, 153, 28.22806 + 161, 170, 170, 171, 166, 162, 161, 143, 135, 132, 124, 8, 14, 12, 24, 48, 28.22807 + 61, 67, 71, 77, 75, 73, 63, 72, 72, 71, 83, 106, 97, 97, 80, 87, 28.22808 + 84, 89, 89, 80, 93, 103, 99, 79, 56, 49, 45, 42, 53, 59, 71, 193, 28.22809 + 187, 136, 115, 122, 132, 130, 132, 146, 148, 147, 146, 122, 110, 77, 16, 8, 28.22810 + 14, 22, 29, 36, 46, 45, 57, 57, 41, 77, 81, 233, 244, 240, 106, 97, 28.22811 + 108, 124, 135, 143, 155, 167, 166, 178, 134, 40, 20, 16, 13, 16, 8, 44, 28.22812 + 72, 195, 198, 187, 130, 154, 155, 157, 139, 130, 130, 127, 123, 112, 44, 34, 28.22813 + 38, 53, 49, 44, 45, 37, 65, 212, 209, 182, 110, 107, 122, 134, 143, 148, 28.22814 + 140, 144, 144, 151, 151, 158, 167, 162, 159, 159, 144, 83, 25, 9, 6, 9, 28.22815 + 9, 13, 14, 14, 14, 13, 13, 13, 12, 18, 22, 32, 42, 60, 107, 204, 28.22816 + 236, 240, 242, 242, 242, 240, 241, 241, 241, 240, 238, 236, 234, 233, 230, 230, 28.22817 + 230, 226, 222, 169, 165, 182, 183, 190, 173, 185, 178, 175, 171, 161, 146, 132, 28.22818 + 138, 87, 26, 26, 28, 36, 33, 45, 38, 33, 24, 18, 22, 29, 29, 36, 28.22819 + 53, 96, 191, 197, 166, 103, 104, 112, 127, 134, 148, 162, 162, 159, 161, 162, 28.22820 + 161, 162, 165, 159, 155, 138, 77, 17, 12, 5, 4, 0, 1, 1, 5, 4, 28.22821 + 10, 18, 13, 16, 14, 20, 26, 17, 17, 9, 9, 21, 37, 135, 162, 139, 28.22822 + 118, 118, 134, 151, 157, 165, 170, 177, 181, 183, 183, 131, 73, 65, 59, 89, 28.22823 + 146, 210, 208, 216, 206, 171, 161, 166, 151, 154, 154, 150, 148, 127, 118, 25, 28.22824 + 14, 12, 12, 34, 42, 103, 88, 93, 80, 155, 216, 224, 146, 110, 107, 126, 28.22825 + 140, 154, 159, 162, 163, 157, 159, 157, 140, 135, 132, 126, 57, 18, 20, 29, 28.22826 + 41, 55, 64, 64, 64, 45, 68, 99, 119, 112, 115, 122, 122, 116, 110, 116, 28.22827 + 104, 76, 22, 67, 138, 122, 123, 104, 106, 110, 80, 69, 44, 20, 100, 102, 28.22828 + 87, 80, 80, 96, 84, 85, 245, 236, 233, 104, 92, 106, 128, 134, 148, 162, 28.22829 + 169, 167, 162, 157, 143, 134, 128, 20, 10, 10, 13, 14, 26, 34, 24, 37, 28.22830 + 12, 29, 32, 84, 95, 106, 214, 216, 213, 131, 107, 114, 123, 134, 161, 158, 28.22831 + 162, 175, 178, 177, 179, 178, 173, 167, 122, 45, 30, 32, 37, 63, 153, 199, 28.22832 + 185, 158, 159, 174, 189, 190, 193, 194, 195, 195, 191, 185, 163, 134, 65, 34, 28.22833 + 26, 25, 21, 40, 65, 89, 97, 201, 209, 183, 166, 186, 189, 174, 187, 170, 28.22834 + 163, 136, 127, 119, 99, 45, 36, 51, 48, 81, 69, 76, 92, 96, 112, 87, 28.22835 + 100, 103, 139, 222, 241, 244, 245, 249, 230, 182, 136, 114, 108, 108, 111, 122, 28.22836 + 72, 41, 34, 37, 48, 99, 106, 114, 151, 174, 181, 171, 128, 124, 112, 91, 28.22837 + 63, 85, 83, 65, 69, 63, 64, 57, 76, 88, 59, 93, 112, 108, 107, 72, 28.22838 + 96, 118, 119, 100, 96, 80, 73, 112, 111, 119, 115, 120, 107, 110, 104, 96, 28.22839 + 93, 64, 0, 60, 52, 55, 65, 53, 46, 55, 45, 22, 18, 20, 77, 77, 28.22840 + 65, 76, 244, 244, 241, 103, 99, 110, 132, 142, 153, 162, 169, 169, 174, 165, 28.22841 + 159, 158, 142, 135, 132, 120, 8, 10, 17, 38, 60, 56, 60, 63, 64, 73, 28.22842 + 68, 77, 59, 80, 108, 88, 79, 77, 81, 93, 80, 79, 93, 134, 147, 199, 28.22843 + 185, 131, 96, 73, 59, 60, 57, 55, 55, 61, 199, 198, 169, 116, 120, 130, 28.22844 + 132, 130, 139, 153, 146, 151, 120, 112, 80, 17, 10, 16, 28, 48, 52, 51, 28.22845 + 49, 55, 34, 64, 91, 138, 234, 244, 238, 111, 99, 110, 126, 136, 143, 159, 28.22846 + 167, 165, 158, 114, 36, 20, 10, 12, 18, 9, 52, 83, 204, 202, 194, 158, 28.22847 + 151, 151, 159, 142, 144, 132, 128, 130, 118, 41, 37, 32, 42, 52, 55, 37, 28.22848 + 33, 59, 213, 206, 190, 108, 107, 115, 130, 140, 148, 148, 150, 165, 169, 167, 28.22849 + 169, 169, 161, 159, 146, 87, 20, 5, 6, 8, 9, 16, 14, 17, 17, 17, 28.22850 + 17, 17, 22, 22, 22, 20, 33, 48, 95, 221, 238, 238, 242, 241, 238, 229, 28.22851 + 218, 197, 194, 185, 186, 190, 201, 205, 208, 218, 221, 224, 220, 224, 210, 171, 28.22852 + 198, 197, 206, 205, 197, 178, 182, 175, 167, 150, 139, 132, 110, 55, 22, 20, 28.22853 + 48, 41, 46, 61, 60, 56, 49, 56, 64, 65, 64, 52, 104, 193, 201, 183, 28.22854 + 106, 104, 114, 127, 139, 151, 162, 165, 167, 165, 166, 163, 167, 165, 161, 136, 28.22855 + 77, 16, 12, 4, 2, 4, 6, 2, 4, 9, 6, 20, 30, 37, 30, 44, 28.22856 + 40, 41, 44, 48, 40, 41, 13, 42, 122, 159, 158, 118, 114, 128, 144, 154, 28.22857 + 159, 166, 173, 178, 185, 191, 178, 118, 56, 79, 102, 174, 212, 210, 210, 193, 28.22858 + 178, 166, 161, 158, 162, 155, 150, 148, 128, 119, 17, 12, 13, 22, 20, 6, 28.22859 + 103, 97, 93, 97, 107, 208, 213, 175, 114, 107, 120, 142, 151, 158, 161, 159, 28.22860 + 159, 157, 146, 128, 135, 131, 126, 81, 22, 20, 36, 45, 61, 68, 60, 63, 28.22861 + 34, 100, 116, 122, 118, 112, 134, 128, 131, 122, 123, 97, 73, 20, 84, 146, 28.22862 + 139, 142, 136, 126, 104, 92, 61, 41, 22, 93, 102, 87, 87, 83, 92, 83, 28.22863 + 81, 241, 230, 233, 102, 92, 107, 130, 136, 148, 162, 167, 170, 159, 158, 144, 28.22864 + 135, 128, 21, 12, 10, 12, 6, 29, 29, 14, 26, 12, 44, 21, 102, 95, 28.22865 + 143, 221, 220, 216, 115, 106, 114, 136, 135, 146, 157, 169, 178, 179, 179, 177, 28.22866 + 174, 170, 161, 92, 34, 29, 30, 37, 64, 126, 201, 198, 163, 153, 171, 177, 28.22867 + 189, 195, 198, 198, 198, 197, 191, 167, 155, 88, 41, 24, 25, 22, 53, 75, 28.22868 + 91, 100, 194, 214, 198, 170, 186, 187, 185, 186, 171, 170, 140, 132, 123, 116, 28.22869 + 68, 37, 49, 44, 46, 61, 95, 76, 81, 79, 88, 85, 104, 199, 244, 242, 28.22870 + 246, 248, 218, 158, 116, 111, 111, 115, 134, 120, 63, 32, 28, 32, 29, 48, 28.22871 + 97, 179, 193, 185, 159, 166, 166, 171, 130, 127, 118, 93, 49, 67, 64, 75, 28.22872 + 59, 61, 60, 61, 56, 63, 128, 123, 116, 107, 111, 106, 95, 100, 88, 76, 28.22873 + 69, 93, 123, 118, 107, 104, 99, 103, 103, 112, 100, 100, 76, 16, 69, 44, 28.22874 + 25, 17, 13, 21, 26, 49, 29, 12, 22, 75, 88, 72, 108, 244, 244, 238, 28.22875 + 106, 99, 111, 132, 142, 151, 161, 169, 169, 173, 163, 158, 142, 131, 134, 131, 28.22876 + 120, 9, 14, 18, 48, 49, 61, 60, 71, 56, 61, 61, 52, 37, 81, 104, 28.22877 + 91, 75, 73, 83, 81, 84, 87, 163, 224, 205, 217, 205, 161, 100, 80, 60, 28.22878 + 69, 57, 51, 55, 56, 199, 199, 187, 118, 120, 131, 139, 134, 135, 146, 140, 28.22879 + 135, 122, 115, 69, 18, 9, 21, 36, 48, 42, 45, 65, 40, 33, 64, 93, 28.22880 + 142, 234, 242, 240, 118, 102, 114, 127, 140, 147, 161, 167, 162, 154, 84, 32, 28.22881 + 17, 12, 13, 20, 8, 57, 89, 202, 206, 204, 124, 147, 150, 157, 128, 134, 28.22882 + 138, 127, 128, 115, 38, 29, 30, 38, 40, 46, 46, 38, 59, 218, 209, 193, 28.22883 + 107, 108, 114, 127, 140, 148, 154, 167, 170, 174, 175, 170, 167, 165, 150, 85, 28.22884 + 22, 5, 9, 10, 9, 14, 16, 24, 30, 28, 29, 25, 26, 22, 26, 32, 28.22885 + 25, 36, 65, 169, 238, 238, 238, 234, 230, 197, 175, 151, 150, 147, 151, 154, 28.22886 + 158, 163, 167, 171, 174, 178, 181, 191, 195, 204, 198, 199, 195, 194, 197, 198, 28.22887 + 195, 187, 178, 169, 154, 146, 128, 119, 75, 28, 32, 44, 49, 42, 51, 40, 28.22888 + 46, 55, 60, 59, 48, 44, 45, 88, 197, 205, 193, 107, 104, 114, 128, 138, 28.22889 + 154, 162, 165, 166, 167, 166, 169, 166, 165, 150, 96, 26, 13, 4, 6, 9, 28.22890 + 6, 8, 8, 14, 12, 9, 33, 40, 42, 41, 44, 32, 28, 22, 30, 33, 28.22891 + 45, 1, 44, 100, 143, 170, 134, 112, 120, 138, 148, 155, 162, 170, 177, 182, 28.22892 + 195, 194, 185, 138, 110, 148, 204, 204, 212, 208, 189, 191, 173, 179, 165, 162, 28.22893 + 161, 154, 150, 135, 119, 24, 12, 5, 30, 5, 59, 69, 89, 93, 81, 88, 28.22894 + 191, 216, 197, 114, 103, 116, 139, 151, 155, 158, 161, 157, 154, 138, 136, 135, 28.22895 + 131, 126, 97, 25, 22, 36, 48, 60, 64, 55, 69, 41, 103, 132, 126, 130, 28.22896 + 128, 122, 126, 124, 128, 112, 93, 76, 20, 91, 139, 166, 189, 162, 140, 116, 28.22897 + 103, 67, 44, 24, 87, 97, 89, 102, 84, 89, 79, 91, 240, 237, 232, 93, 28.22898 + 93, 106, 127, 134, 147, 162, 169, 167, 162, 157, 147, 138, 127, 18, 13, 10, 28.22899 + 10, 16, 29, 29, 17, 17, 14, 34, 21, 88, 100, 143, 226, 225, 217, 118, 28.22900 + 118, 114, 123, 136, 155, 158, 171, 177, 181, 181, 177, 174, 167, 143, 53, 29, 28.22901 + 25, 30, 49, 53, 107, 191, 204, 171, 150, 154, 173, 182, 191, 198, 198, 199, 28.22902 + 199, 195, 191, 169, 124, 51, 29, 25, 29, 55, 76, 91, 91, 190, 220, 212, 28.22903 + 175, 170, 185, 174, 185, 173, 166, 147, 136, 128, 131, 85, 36, 37, 45, 41, 28.22904 + 60, 83, 89, 93, 88, 77, 93, 130, 229, 237, 242, 245, 224, 146, 114, 114, 28.22905 + 114, 120, 139, 140, 83, 49, 26, 29, 32, 30, 51, 112, 197, 191, 162, 165, 28.22906 + 170, 169, 174, 134, 130, 115, 107, 84, 46, 56, 51, 56, 49, 60, 59, 52, 28.22907 + 22, 118, 128, 100, 115, 110, 116, 126, 120, 97, 76, 67, 88, 126, 111, 107, 28.22908 + 99, 97, 103, 100, 96, 99, 108, 42, 14, 44, 51, 38, 13, 16, 14, 20, 28.22909 + 37, 25, 13, 18, 75, 85, 67, 91, 242, 244, 240, 110, 100, 110, 132, 143, 28.22910 + 150, 161, 167, 170, 174, 162, 158, 136, 131, 131, 131, 119, 9, 14, 14, 25, 28.22911 + 51, 57, 72, 65, 52, 72, 55, 59, 41, 72, 108, 80, 95, 77, 69, 87, 28.22912 + 77, 95, 198, 226, 208, 213, 183, 139, 97, 67, 49, 53, 59, 49, 55, 57, 28.22913 + 206, 204, 194, 122, 123, 131, 136, 139, 140, 131, 146, 132, 120, 115, 59, 17, 28.22914 + 10, 20, 38, 46, 40, 44, 76, 41, 29, 63, 95, 138, 232, 241, 240, 120, 28.22915 + 103, 114, 126, 138, 146, 161, 165, 163, 144, 61, 24, 14, 12, 13, 24, 10, 28.22916 + 56, 85, 205, 208, 232, 127, 147, 147, 148, 139, 131, 130, 127, 124, 112, 34, 28.22917 + 30, 24, 38, 37, 46, 36, 42, 59, 222, 220, 204, 107, 106, 115, 126, 138, 28.22918 + 148, 154, 166, 173, 173, 171, 167, 163, 158, 111, 32, 6, 9, 9, 8, 9, 28.22919 + 17, 26, 33, 33, 33, 26, 28, 26, 28, 28, 34, 32, 42, 89, 218, 236, 28.22920 + 236, 229, 214, 179, 146, 134, 135, 140, 148, 157, 166, 173, 183, 193, 197, 201, 28.22921 + 202, 199, 183, 187, 191, 194, 195, 198, 202, 201, 205, 202, 182, 178, 163, 154, 28.22922 + 147, 132, 128, 95, 36, 30, 34, 41, 59, 46, 48, 52, 38, 33, 49, 60, 28.22923 + 60, 60, 76, 198, 210, 199, 110, 106, 115, 128, 139, 154, 162, 165, 167, 166, 28.22924 + 171, 169, 165, 157, 116, 40, 16, 6, 6, 9, 9, 8, 10, 12, 8, 9, 28.22925 + 5, 36, 42, 33, 26, 28, 33, 28, 18, 36, 37, 37, 4, 46, 91, 115, 28.22926 + 165, 146, 116, 110, 128, 136, 154, 161, 169, 173, 182, 187, 199, 198, 195, 182, 28.22927 + 204, 210, 210, 212, 212, 193, 181, 179, 173, 167, 169, 159, 153, 151, 135, 123, 28.22928 + 18, 12, 9, 20, 6, 1, 120, 81, 84, 80, 71, 130, 213, 205, 120, 102, 28.22929 + 112, 130, 144, 153, 158, 161, 159, 157, 147, 132, 136, 128, 128, 111, 32, 25, 28.22930 + 36, 44, 57, 68, 59, 76, 40, 77, 118, 126, 124, 120, 123, 123, 134, 119, 28.22931 + 115, 95, 77, 24, 118, 159, 210, 216, 225, 183, 140, 115, 81, 42, 22, 88, 28.22932 + 96, 97, 87, 85, 87, 80, 84, 238, 241, 225, 97, 92, 103, 122, 134, 146, 28.22933 + 162, 169, 167, 162, 158, 147, 138, 128, 20, 9, 16, 10, 14, 25, 33, 30, 28.22934 + 30, 8, 30, 29, 87, 96, 114, 228, 225, 221, 127, 118, 126, 122, 142, 138, 28.22935 + 162, 167, 179, 173, 181, 178, 169, 165, 123, 41, 28, 22, 32, 42, 55, 88, 28.22936 + 183, 208, 189, 151, 148, 167, 178, 187, 191, 198, 199, 201, 199, 195, 175, 157, 28.22937 + 69, 32, 24, 26, 55, 75, 89, 91, 170, 224, 216, 183, 185, 181, 186, 186, 28.22938 + 177, 161, 148, 139, 130, 122, 102, 44, 34, 45, 41, 56, 87, 96, 80, 80, 28.22939 + 92, 88, 181, 234, 241, 244, 233, 157, 116, 116, 120, 127, 143, 142, 146, 71, 28.22940 + 45, 26, 18, 34, 37, 68, 89, 202, 198, 165, 166, 170, 163, 165, 166, 132, 28.22941 + 124, 120, 93, 46, 44, 52, 55, 48, 51, 57, 56, 42, 122, 136, 106, 115, 28.22942 + 110, 116, 126, 107, 92, 88, 59, 99, 127, 116, 96, 102, 96, 108, 104, 102, 28.22943 + 106, 100, 60, 0, 53, 41, 25, 13, 30, 41, 51, 38, 13, 12, 16, 71, 28.22944 + 83, 61, 89, 244, 242, 232, 108, 99, 111, 131, 139, 154, 161, 166, 170, 173, 28.22945 + 161, 154, 146, 136, 131, 130, 115, 9, 14, 17, 32, 53, 65, 67, 63, 51, 28.22946 + 64, 55, 53, 38, 81, 97, 75, 84, 89, 80, 79, 75, 100, 214, 220, 224, 28.22947 + 218, 177, 115, 85, 49, 32, 53, 49, 49, 51, 60, 210, 208, 202, 126, 123, 28.22948 + 134, 138, 142, 139, 132, 150, 130, 116, 110, 46, 17, 10, 18, 38, 45, 38, 28.22949 + 45, 64, 42, 25, 77, 89, 95, 229, 241, 237, 119, 104, 114, 124, 135, 143, 28.22950 + 162, 163, 161, 142, 41, 17, 14, 14, 14, 17, 9, 53, 88, 205, 206, 208, 28.22951 + 146, 138, 143, 143, 139, 131, 130, 123, 122, 107, 29, 25, 24, 34, 37, 41, 28.22952 + 37, 34, 52, 228, 224, 210, 111, 106, 116, 127, 136, 147, 155, 166, 173, 173, 28.22953 + 169, 157, 161, 136, 49, 6, 10, 10, 9, 14, 16, 20, 38, 41, 36, 32, 28.22954 + 30, 33, 30, 29, 42, 30, 29, 63, 179, 216, 230, 218, 195, 159, 135, 124, 28.22955 + 132, 142, 157, 166, 175, 182, 190, 201, 210, 213, 216, 217, 216, 213, 198, 193, 28.22956 + 194, 189, 185, 183, 206, 206, 206, 183, 178, 161, 158, 150, 136, 128, 106, 52, 28.22957 + 30, 28, 49, 46, 56, 49, 44, 40, 42, 26, 38, 56, 33, 64, 195, 216, 28.22958 + 206, 108, 106, 115, 130, 138, 154, 161, 165, 167, 167, 170, 166, 162, 136, 53, 28.22959 + 14, 12, 9, 12, 9, 13, 13, 12, 8, 8, 9, 5, 41, 42, 24, 26, 28.22960 + 25, 30, 18, 22, 42, 29, 44, 5, 42, 73, 95, 126, 165, 124, 112, 116, 28.22961 + 132, 148, 158, 166, 170, 177, 186, 194, 201, 202, 205, 208, 205, 209, 221, 208, 28.22962 + 190, 183, 183, 175, 170, 163, 161, 153, 150, 135, 122, 16, 12, 5, 12, 63, 28.22963 + 72, 114, 68, 80, 83, 79, 95, 193, 206, 132, 103, 111, 124, 142, 150, 154, 28.22964 + 158, 163, 165, 158, 148, 126, 126, 127, 116, 44, 22, 34, 37, 55, 68, 59, 28.22965 + 65, 61, 51, 111, 126, 126, 130, 124, 126, 126, 123, 108, 99, 81, 34, 155, 28.22966 + 193, 226, 209, 204, 198, 209, 139, 102, 46, 24, 81, 89, 91, 79, 77, 81, 28.22967 + 72, 79, 240, 240, 230, 102, 95, 99, 118, 132, 148, 161, 170, 170, 162, 158, 28.22968 + 147, 138, 126, 17, 12, 13, 13, 12, 24, 29, 37, 34, 30, 26, 32, 79, 28.22969 + 89, 104, 226, 226, 222, 128, 104, 114, 124, 134, 136, 153, 163, 174, 181, 183, 28.22970 + 178, 167, 157, 100, 34, 26, 22, 32, 48, 60, 81, 171, 216, 198, 155, 144, 28.22971 + 158, 173, 182, 190, 193, 197, 201, 202, 198, 193, 174, 102, 36, 25, 28, 55, 28.22972 + 75, 80, 83, 144, 221, 221, 187, 169, 181, 187, 177, 165, 146, 140, 140, 134, 28.22973 + 123, 115, 60, 36, 40, 38, 55, 87, 97, 85, 85, 87, 79, 197, 238, 241, 28.22974 + 242, 190, 124, 118, 124, 130, 130, 144, 148, 148, 65, 26, 24, 22, 29, 36, 28.22975 + 55, 92, 205, 206, 183, 163, 169, 167, 165, 167, 136, 132, 119, 91, 40, 40, 28.22976 + 51, 44, 51, 55, 59, 40, 71, 111, 122, 106, 99, 97, 106, 102, 106, 89, 28.22977 + 72, 41, 107, 127, 116, 96, 106, 96, 106, 104, 103, 96, 97, 56, 0, 51, 28.22978 + 42, 33, 13, 16, 22, 16, 12, 24, 16, 17, 72, 83, 68, 85, 241, 240, 28.22979 + 226, 104, 99, 112, 132, 143, 153, 161, 167, 166, 173, 173, 161, 154, 139, 124, 28.22980 + 127, 112, 10, 16, 16, 46, 51, 57, 67, 73, 71, 69, 52, 56, 38, 75, 28.22981 + 97, 73, 72, 84, 67, 83, 76, 110, 218, 232, 222, 169, 118, 106, 61, 42, 28.22982 + 41, 48, 45, 42, 48, 60, 213, 216, 210, 130, 124, 135, 143, 158, 144, 144, 28.22983 + 148, 120, 115, 107, 33, 14, 10, 17, 38, 41, 38, 45, 64, 41, 22, 88, 28.22984 + 91, 71, 225, 240, 234, 120, 104, 114, 126, 138, 146, 162, 162, 158, 132, 34, 28.22985 + 16, 14, 13, 13, 17, 10, 44, 96, 209, 214, 206, 140, 135, 139, 144, 138, 28.22986 + 132, 132, 131, 115, 104, 25, 22, 18, 30, 32, 34, 45, 53, 55, 228, 228, 28.22987 + 216, 112, 108, 118, 127, 138, 148, 157, 161, 173, 169, 163, 159, 151, 96, 21, 28.22988 + 8, 10, 10, 9, 8, 14, 18, 38, 42, 60, 59, 57, 52, 42, 34, 30, 28.22989 + 40, 48, 122, 217, 225, 212, 179, 144, 126, 124, 136, 146, 157, 169, 175, 185, 28.22990 + 191, 199, 208, 199, 148, 116, 144, 193, 217, 214, 201, 193, 187, 195, 197, 206, 28.22991 + 204, 202, 183, 175, 163, 157, 147, 134, 127, 112, 71, 32, 22, 40, 44, 55, 28.22992 + 60, 45, 40, 42, 34, 41, 57, 20, 77, 204, 218, 213, 112, 107, 118, 131, 28.22993 + 138, 154, 161, 166, 169, 170, 170, 163, 153, 96, 25, 16, 12, 12, 10, 17, 28.22994 + 18, 13, 10, 10, 9, 12, 9, 40, 46, 30, 26, 16, 20, 22, 40, 33, 28.22995 + 25, 26, 2, 44, 63, 81, 104, 159, 158, 114, 106, 124, 142, 155, 162, 169, 28.22996 + 175, 185, 186, 191, 199, 197, 198, 212, 217, 209, 195, 189, 186, 179, 175, 170, 28.22997 + 163, 161, 153, 150, 132, 120, 13, 9, 9, 17, 5, 10, 97, 110, 87, 75, 28.22998 + 71, 64, 132, 204, 162, 104, 107, 118, 134, 144, 150, 158, 166, 161, 162, 153, 28.22999 + 126, 122, 128, 123, 61, 25, 28, 44, 49, 65, 63, 71, 59, 48, 106, 123, 28.23000 + 130, 126, 130, 130, 128, 124, 114, 102, 79, 34, 167, 206, 224, 216, 220, 201, 28.23001 + 179, 142, 100, 42, 25, 80, 97, 91, 93, 80, 83, 75, 96, 240, 241, 233, 28.23002 + 107, 93, 97, 112, 136, 146, 161, 167, 167, 163, 158, 147, 139, 128, 22, 14, 28.23003 + 8, 13, 14, 21, 21, 36, 33, 42, 16, 13, 79, 87, 103, 225, 225, 220, 28.23004 + 115, 103, 115, 127, 122, 127, 142, 158, 170, 177, 177, 174, 161, 147, 73, 29, 28.23005 + 26, 20, 34, 63, 53, 77, 153, 216, 206, 159, 142, 148, 167, 177, 183, 189, 28.23006 + 190, 195, 201, 201, 194, 181, 142, 48, 30, 24, 51, 72, 79, 84, 120, 218, 28.23007 + 224, 191, 171, 182, 182, 175, 154, 143, 136, 143, 139, 126, 124, 76, 34, 34, 28.23008 + 40, 53, 84, 102, 81, 72, 75, 85, 208, 232, 240, 238, 157, 118, 123, 131, 28.23009 + 135, 139, 148, 151, 154, 59, 28, 24, 17, 29, 34, 55, 81, 205, 212, 204, 28.23010 + 169, 170, 169, 165, 171, 142, 136, 116, 88, 33, 33, 42, 48, 44, 48, 51, 28.23011 + 46, 60, 120, 118, 108, 103, 103, 104, 100, 112, 88, 65, 56, 85, 108, 114, 28.23012 + 102, 104, 104, 104, 107, 103, 103, 95, 57, 13, 53, 40, 34, 8, 16, 40, 28.23013 + 12, 12, 25, 10, 18, 79, 81, 69, 89, 240, 236, 178, 100, 99, 112, 132, 28.23014 + 139, 148, 155, 163, 166, 173, 174, 169, 158, 144, 128, 126, 116, 10, 17, 18, 28.23015 + 49, 42, 59, 61, 64, 72, 55, 53, 48, 36, 83, 88, 73, 79, 80, 75, 28.23016 + 83, 77, 118, 230, 234, 221, 139, 107, 88, 49, 38, 33, 51, 45, 41, 55, 28.23017 + 67, 213, 216, 210, 131, 126, 139, 163, 162, 161, 154, 147, 118, 116, 107, 29, 28.23018 + 16, 12, 18, 37, 40, 38, 46, 52, 34, 22, 60, 89, 103, 224, 238, 236, 28.23019 + 123, 103, 115, 124, 138, 146, 163, 163, 159, 124, 30, 16, 13, 16, 13, 18, 28.23020 + 10, 48, 88, 209, 213, 228, 119, 132, 134, 140, 132, 136, 139, 134, 114, 92, 28.23021 + 25, 22, 22, 29, 32, 29, 38, 32, 53, 232, 221, 214, 111, 108, 119, 130, 28.23022 + 139, 151, 159, 161, 171, 167, 161, 159, 139, 52, 10, 10, 10, 10, 12, 14, 28.23023 + 16, 38, 40, 53, 46, 48, 55, 64, 42, 32, 26, 36, 73, 199, 222, 220, 28.23024 + 197, 136, 112, 124, 135, 147, 158, 167, 174, 182, 186, 195, 202, 202, 104, 64, 28.23025 + 59, 69, 106, 154, 218, 209, 204, 190, 197, 205, 208, 208, 195, 179, 175, 167, 28.23026 + 159, 147, 134, 122, 116, 83, 38, 40, 41, 46, 51, 48, 44, 38, 45, 41, 28.23027 + 37, 56, 34, 64, 217, 220, 216, 112, 108, 119, 131, 139, 153, 162, 165, 167, 28.23028 + 171, 166, 158, 136, 56, 14, 12, 13, 13, 21, 17, 16, 10, 9, 13, 10, 28.23029 + 13, 12, 45, 49, 32, 29, 34, 29, 33, 41, 20, 26, 29, 1, 41, 59, 28.23030 + 77, 81, 134, 171, 123, 104, 120, 135, 151, 161, 169, 174, 181, 187, 189, 189, 28.23031 + 187, 187, 190, 198, 199, 195, 193, 193, 182, 174, 171, 163, 162, 154, 151, 135, 28.23032 + 116, 12, 10, 6, 25, 9, 9, 95, 92, 93, 67, 72, 67, 96, 183, 189, 28.23033 + 108, 106, 114, 123, 140, 153, 159, 167, 165, 165, 154, 123, 123, 128, 126, 92, 28.23034 + 29, 26, 32, 37, 48, 69, 68, 64, 45, 87, 126, 127, 123, 128, 126, 128, 28.23035 + 124, 111, 97, 87, 28, 182, 213, 224, 217, 185, 163, 134, 107, 95, 40, 25, 28.23036 + 56, 93, 96, 100, 75, 81, 73, 85, 241, 242, 234, 107, 97, 96, 115, 130, 28.23037 + 143, 158, 166, 167, 165, 155, 144, 140, 127, 21, 16, 20, 14, 17, 32, 24, 28.23038 + 24, 29, 37, 25, 26, 69, 81, 96, 222, 233, 222, 126, 115, 115, 120, 120, 28.23039 + 126, 132, 146, 159, 177, 175, 162, 158, 140, 57, 30, 22, 20, 34, 55, 49, 28.23040 + 68, 138, 210, 212, 174, 138, 140, 159, 170, 175, 182, 186, 189, 194, 197, 195, 28.23041 + 181, 169, 79, 29, 25, 48, 63, 77, 81, 106, 213, 224, 194, 170, 181, 185, 28.23042 + 166, 150, 131, 128, 130, 136, 128, 126, 97, 44, 30, 38, 49, 81, 88, 80, 28.23043 + 75, 87, 88, 209, 232, 241, 218, 142, 122, 128, 135, 134, 150, 154, 159, 161, 28.23044 + 56, 28, 26, 22, 28, 38, 44, 75, 206, 216, 212, 171, 170, 174, 167, 170, 28.23045 + 143, 134, 118, 88, 29, 29, 38, 38, 37, 41, 45, 16, 64, 112, 111, 108, 28.23046 + 108, 107, 102, 99, 122, 91, 63, 51, 107, 123, 99, 106, 108, 116, 123, 114, 28.23047 + 106, 100, 102, 41, 16, 36, 37, 41, 10, 16, 14, 12, 12, 10, 13, 18, 28.23048 + 73, 81, 68, 81, 236, 236, 166, 99, 96, 111, 120, 132, 142, 151, 162, 166, 28.23049 + 175, 173, 169, 158, 146, 126, 128, 115, 12, 18, 16, 33, 41, 48, 60, 64, 28.23050 + 64, 56, 53, 52, 34, 64, 84, 73, 75, 72, 68, 72, 79, 157, 244, 236, 28.23051 + 210, 122, 103, 77, 34, 37, 37, 48, 44, 40, 49, 67, 216, 217, 210, 131, 28.23052 + 127, 139, 163, 157, 161, 148, 150, 116, 116, 106, 30, 14, 10, 20, 34, 38, 28.23053 + 37, 37, 48, 34, 17, 61, 95, 99, 224, 237, 236, 120, 104, 112, 126, 138, 28.23054 + 148, 165, 161, 163, 123, 26, 14, 14, 17, 13, 24, 12, 41, 79, 206, 214, 28.23055 + 210, 134, 127, 131, 140, 135, 132, 136, 132, 114, 85, 20, 20, 20, 26, 30, 28.23056 + 33, 34, 34, 76, 232, 233, 217, 112, 108, 119, 130, 139, 153, 159, 163, 170, 28.23057 + 165, 161, 157, 110, 30, 10, 12, 13, 9, 12, 9, 10, 44, 46, 55, 71, 28.23058 + 59, 44, 64, 41, 38, 34, 42, 132, 213, 218, 210, 167, 112, 119, 132, 142, 28.23059 + 157, 166, 170, 179, 179, 190, 194, 205, 165, 72, 37, 22, 28, 46, 103, 198, 28.23060 + 218, 209, 195, 186, 208, 206, 206, 204, 189, 175, 169, 158, 147, 131, 118, 118, 28.23061 + 92, 42, 40, 36, 53, 45, 48, 57, 37, 45, 36, 46, 51, 25, 72, 217, 28.23062 + 226, 217, 114, 110, 119, 131, 138, 154, 161, 161, 166, 166, 161, 155, 110, 33, 28.23063 + 14, 12, 17, 18, 24, 20, 13, 10, 12, 16, 9, 13, 9, 42, 37, 42, 28.23064 + 24, 37, 33, 33, 33, 33, 28, 24, 4, 36, 55, 64, 63, 92, 162, 138, 28.23065 + 103, 110, 131, 146, 157, 166, 173, 178, 185, 191, 191, 194, 193, 190, 189, 191, 28.23066 + 202, 193, 194, 185, 177, 169, 165, 165, 155, 148, 134, 120, 13, 9, 6, 18, 28.23067 + 12, 9, 69, 69, 72, 79, 63, 61, 67, 128, 185, 122, 102, 107, 115, 138, 28.23068 + 150, 158, 162, 167, 161, 147, 128, 123, 130, 124, 110, 36, 30, 41, 38, 44, 28.23069 + 67, 56, 72, 49, 81, 112, 122, 131, 128, 132, 126, 120, 103, 100, 88, 32, 28.23070 + 181, 224, 229, 218, 165, 124, 97, 92, 73, 34, 25, 44, 83, 93, 97, 77, 28.23071 + 76, 71, 87, 240, 241, 230, 103, 95, 99, 119, 131, 140, 158, 163, 167, 162, 28.23072 + 155, 146, 142, 124, 22, 18, 17, 14, 17, 26, 24, 13, 25, 26, 30, 36, 28.23073 + 56, 88, 112, 228, 230, 222, 127, 118, 123, 119, 118, 123, 136, 150, 146, 154, 28.23074 + 157, 153, 154, 131, 40, 26, 20, 20, 33, 37, 52, 67, 99, 202, 213, 183, 28.23075 + 138, 135, 151, 163, 170, 171, 175, 181, 189, 194, 194, 189, 181, 106, 34, 24, 28.23076 + 49, 56, 75, 80, 91, 205, 222, 204, 173, 179, 185, 167, 157, 147, 147, 143, 28.23077 + 130, 131, 122, 108, 53, 33, 36, 34, 68, 83, 76, 72, 85, 81, 208, 234, 28.23078 + 241, 187, 134, 127, 131, 136, 135, 147, 154, 159, 161, 55, 25, 24, 17, 25, 28.23079 + 41, 61, 72, 204, 218, 217, 171, 174, 173, 163, 171, 147, 134, 120, 84, 29, 28.23080 + 25, 30, 34, 36, 40, 48, 29, 84, 115, 120, 116, 108, 118, 104, 107, 92, 28.23081 + 88, 84, 45, 99, 115, 123, 119, 128, 118, 115, 107, 114, 108, 93, 61, 0, 28.23082 + 51, 36, 12, 14, 10, 6, 12, 10, 16, 14, 18, 59, 80, 61, 84, 233, 28.23083 + 230, 178, 103, 100, 108, 114, 126, 134, 148, 161, 167, 173, 174, 162, 157, 143, 28.23084 + 128, 132, 111, 13, 17, 18, 33, 40, 49, 57, 61, 56, 67, 53, 49, 34, 28.23085 + 63, 77, 79, 63, 77, 75, 69, 91, 197, 237, 237, 208, 122, 103, 63, 34, 28.23086 + 32, 36, 36, 42, 36, 48, 63, 212, 218, 206, 130, 128, 142, 167, 162, 154, 28.23087 + 148, 147, 119, 115, 102, 24, 14, 14, 22, 30, 38, 36, 45, 46, 37, 16, 28.23088 + 69, 89, 69, 221, 237, 232, 118, 106, 116, 126, 138, 153, 165, 162, 159, 116, 28.23089 + 32, 16, 14, 10, 17, 21, 12, 34, 67, 206, 212, 201, 130, 126, 130, 140, 28.23090 + 138, 130, 134, 132, 114, 85, 17, 16, 13, 24, 28, 34, 32, 30, 57, 233, 28.23091 + 226, 220, 112, 108, 119, 131, 140, 153, 161, 163, 169, 161, 155, 146, 75, 14, 28.23092 + 13, 14, 12, 12, 16, 13, 12, 38, 49, 55, 65, 68, 45, 59, 42, 40, 28.23093 + 34, 37, 158, 209, 216, 201, 135, 107, 120, 134, 147, 159, 163, 175, 181, 185, 28.23094 + 191, 197, 208, 130, 42, 20, 18, 22, 41, 81, 159, 221, 212, 206, 182, 206, 28.23095 + 210, 213, 205, 193, 177, 170, 161, 147, 134, 123, 122, 107, 52, 41, 32, 36, 28.23096 + 45, 48, 42, 21, 42, 29, 57, 44, 36, 60, 210, 226, 224, 112, 107, 118, 28.23097 + 131, 138, 153, 162, 158, 166, 165, 159, 144, 81, 21, 16, 16, 17, 21, 17, 28.23098 + 14, 14, 13, 14, 13, 12, 13, 9, 41, 42, 25, 38, 38, 34, 36, 34, 28.23099 + 34, 24, 21, 1, 29, 45, 51, 64, 79, 124, 155, 119, 100, 119, 139, 154, 28.23100 + 162, 173, 177, 183, 187, 183, 182, 186, 195, 191, 185, 189, 201, 194, 186, 179, 28.23101 + 173, 166, 165, 157, 150, 139, 120, 8, 12, 8, 10, 16, 2, 60, 59, 60, 28.23102 + 53, 48, 53, 55, 84, 174, 167, 102, 104, 115, 136, 148, 155, 157, 155, 151, 28.23103 + 148, 122, 123, 123, 126, 123, 65, 30, 30, 36, 40, 64, 64, 73, 55, 61, 28.23104 + 100, 111, 114, 116, 110, 114, 114, 107, 100, 89, 44, 186, 225, 233, 197, 150, 28.23105 + 102, 95, 95, 68, 34, 28, 34, 52, 60, 73, 65, 76, 67, 79, 238, 240, 28.23106 + 222, 104, 93, 102, 116, 126, 136, 157, 167, 165, 162, 155, 143, 142, 124, 22, 28.23107 + 20, 22, 13, 17, 8, 22, 24, 12, 29, 34, 28, 49, 81, 106, 226, 229, 28.23108 + 221, 128, 104, 111, 127, 128, 127, 138, 140, 139, 151, 150, 150, 148, 127, 41, 28.23109 + 29, 25, 21, 33, 42, 56, 69, 80, 191, 214, 193, 142, 132, 140, 157, 163, 28.23110 + 166, 169, 174, 181, 189, 190, 189, 182, 140, 49, 28, 42, 55, 69, 69, 79, 28.23111 + 194, 225, 212, 174, 175, 185, 173, 161, 157, 150, 147, 144, 130, 122, 120, 76, 28.23112 + 36, 36, 33, 63, 89, 100, 77, 80, 71, 187, 236, 241, 181, 128, 132, 139, 28.23113 + 142, 136, 148, 158, 162, 162, 53, 26, 21, 17, 24, 32, 49, 77, 213, 220, 28.23114 + 218, 173, 173, 174, 167, 171, 147, 135, 123, 85, 28, 25, 28, 32, 48, 33, 28.23115 + 46, 30, 80, 88, 77, 85, 84, 85, 84, 87, 83, 83, 60, 32, 96, 108, 28.23116 + 110, 100, 115, 106, 99, 95, 106, 102, 85, 40, 0, 44, 14, 18, 13, 24, 28.23117 + 12, 30, 12, 17, 17, 16, 60, 77, 71, 84, 237, 238, 220, 104, 100, 106, 28.23118 + 114, 114, 134, 153, 162, 173, 175, 167, 157, 147, 132, 127, 123, 107, 16, 20, 28.23119 + 20, 30, 44, 44, 53, 57, 57, 63, 51, 48, 34, 61, 80, 79, 69, 67, 28.23120 + 73, 72, 107, 220, 237, 241, 209, 126, 100, 52, 32, 26, 38, 29, 42, 41, 28.23121 + 38, 53, 214, 213, 206, 126, 128, 140, 159, 154, 153, 144, 136, 118, 114, 97, 28.23122 + 25, 12, 13, 18, 26, 37, 34, 38, 65, 36, 13, 76, 87, 80, 214, 234, 28.23123 + 226, 122, 107, 116, 127, 140, 154, 158, 161, 162, 131, 41, 16, 17, 17, 16, 28.23124 + 22, 12, 30, 60, 206, 205, 199, 122, 127, 130, 140, 131, 132, 130, 132, 114, 28.23125 + 80, 16, 17, 10, 29, 25, 26, 25, 29, 55, 230, 228, 220, 114, 107, 118, 28.23126 + 128, 139, 153, 162, 166, 166, 158, 155, 140, 53, 13, 13, 13, 13, 10, 9, 28.23127 + 16, 12, 49, 55, 49, 44, 38, 44, 41, 41, 38, 30, 37, 165, 208, 201, 28.23128 + 191, 119, 108, 120, 134, 147, 166, 166, 178, 182, 185, 191, 197, 201, 116, 37, 28.23129 + 24, 18, 18, 33, 60, 135, 222, 214, 208, 190, 204, 208, 209, 208, 201, 179, 28.23130 + 174, 161, 153, 135, 126, 119, 112, 72, 45, 45, 36, 40, 49, 42, 38, 29, 28.23131 + 25, 25, 26, 25, 57, 197, 225, 225, 115, 107, 118, 131, 136, 153, 159, 158, 28.23132 + 165, 162, 154, 136, 59, 17, 16, 16, 20, 18, 20, 16, 13, 13, 12, 12, 28.23133 + 12, 16, 13, 33, 36, 37, 42, 38, 38, 37, 34, 37, 20, 21, 1, 26, 28.23134 + 38, 52, 57, 71, 80, 162, 138, 102, 110, 135, 150, 159, 169, 177, 181, 181, 28.23135 + 182, 179, 183, 187, 197, 197, 183, 190, 194, 189, 183, 174, 167, 167, 157, 151, 28.23136 + 139, 120, 8, 9, 8, 18, 13, 5, 59, 46, 52, 60, 42, 41, 38, 48, 28.23137 + 100, 186, 114, 102, 112, 126, 142, 148, 155, 158, 150, 134, 122, 122, 122, 123, 28.23138 + 126, 99, 41, 36, 40, 42, 49, 53, 53, 57, 69, 84, 73, 75, 81, 77, 28.23139 + 80, 77, 108, 100, 85, 36, 170, 224, 236, 179, 120, 102, 95, 92, 67, 32, 28.23140 + 26, 34, 40, 42, 46, 48, 49, 75, 83, 240, 238, 229, 107, 88, 97, 115, 28.23141 + 116, 134, 148, 158, 163, 161, 154, 142, 140, 126, 24, 20, 9, 9, 12, 13, 28.23142 + 17, 5, 5, 20, 29, 30, 42, 80, 92, 224, 228, 228, 123, 99, 111, 122, 28.23143 + 130, 142, 143, 138, 134, 140, 135, 147, 144, 122, 45, 26, 26, 14, 36, 34, 28.23144 + 56, 53, 73, 182, 214, 195, 139, 130, 135, 150, 155, 162, 163, 169, 177, 183, 28.23145 + 187, 186, 181, 161, 73, 34, 34, 51, 60, 68, 79, 175, 226, 217, 179, 169, 28.23146 + 183, 187, 161, 169, 162, 154, 148, 144, 131, 122, 111, 52, 34, 32, 55, 85, 28.23147 + 89, 68, 69, 76, 177, 221, 240, 169, 126, 135, 142, 143, 136, 150, 166, 170, 28.23148 + 170, 61, 34, 20, 21, 24, 33, 65, 89, 221, 224, 221, 177, 175, 175, 169, 28.23149 + 170, 151, 138, 126, 81, 25, 28, 25, 28, 29, 28, 33, 40, 42, 64, 64, 28.23150 + 67, 68, 73, 69, 64, 77, 80, 42, 40, 37, 83, 75, 65, 60, 77, 63, 28.23151 + 53, 51, 72, 49, 9, 24, 16, 12, 10, 12, 17, 14, 13, 13, 22, 17, 28.23152 + 17, 55, 67, 73, 97, 238, 234, 226, 106, 104, 108, 114, 122, 135, 159, 161, 28.23153 + 167, 174, 170, 159, 146, 122, 130, 132, 103, 17, 21, 21, 26, 32, 37, 44, 28.23154 + 51, 53, 49, 49, 46, 32, 64, 69, 73, 63, 65, 65, 75, 130, 240, 245, 28.23155 + 240, 190, 120, 100, 44, 29, 28, 30, 34, 33, 36, 40, 48, 214, 218, 209, 28.23156 + 130, 130, 139, 153, 155, 154, 151, 119, 119, 114, 95, 20, 14, 10, 20, 24, 28.23157 + 32, 36, 37, 49, 30, 20, 42, 77, 76, 206, 230, 228, 122, 108, 118, 128, 28.23158 + 143, 154, 165, 163, 162, 139, 46, 16, 17, 17, 14, 18, 10, 49, 79, 199, 28.23159 + 212, 209, 128, 124, 124, 134, 134, 131, 128, 126, 112, 72, 16, 13, 12, 20, 28.23160 + 17, 22, 28, 30, 49, 230, 229, 225, 116, 110, 115, 124, 140, 154, 162, 166, 28.23161 + 167, 158, 154, 139, 45, 13, 16, 16, 25, 17, 12, 18, 17, 44, 52, 41, 28.23162 + 46, 46, 44, 41, 49, 41, 32, 34, 163, 202, 199, 167, 106, 111, 119, 130, 28.23163 + 148, 163, 166, 171, 175, 183, 189, 194, 208, 107, 37, 26, 21, 21, 21, 42, 28.23164 + 127, 225, 220, 210, 189, 194, 206, 206, 213, 208, 191, 174, 163, 153, 143, 134, 28.23165 + 119, 119, 88, 51, 52, 29, 30, 34, 29, 40, 21, 4, 18, 13, 22, 61, 28.23166 + 181, 221, 226, 115, 108, 119, 131, 135, 151, 159, 161, 163, 159, 151, 130, 52, 28.23167 + 20, 16, 18, 24, 20, 25, 14, 18, 18, 20, 18, 21, 20, 14, 14, 30, 28.23168 + 51, 17, 20, 29, 30, 26, 32, 24, 21, 1, 25, 29, 34, 32, 59, 61, 28.23169 + 99, 153, 104, 99, 127, 143, 157, 166, 173, 174, 177, 177, 181, 182, 185, 187, 28.23170 + 195, 194, 185, 189, 189, 185, 178, 170, 167, 158, 154, 140, 122, 9, 9, 6, 28.23171 + 10, 4, 2, 55, 63, 68, 64, 61, 72, 68, 64, 49, 148, 167, 110, 106, 28.23172 + 112, 130, 142, 147, 153, 147, 138, 127, 122, 115, 126, 127, 120, 63, 40, 30, 28.23173 + 33, 34, 36, 33, 33, 37, 40, 40, 48, 53, 60, 64, 65, 80, 97, 92, 28.23174 + 38, 171, 220, 230, 169, 112, 93, 93, 91, 65, 30, 20, 26, 36, 36, 36, 28.23175 + 42, 42, 68, 68, 240, 237, 226, 107, 99, 96, 115, 127, 127, 143, 155, 166, 28.23176 + 162, 151, 142, 142, 118, 24, 24, 24, 17, 17, 24, 21, 22, 22, 38, 21, 28.23177 + 25, 42, 72, 102, 224, 229, 224, 126, 111, 114, 123, 128, 140, 134, 136, 132, 28.23178 + 135, 135, 144, 140, 118, 41, 37, 25, 26, 51, 67, 63, 65, 68, 171, 209, 28.23179 + 205, 144, 126, 134, 146, 153, 155, 162, 165, 170, 178, 183, 185, 182, 173, 95, 28.23180 + 38, 26, 40, 55, 64, 73, 153, 226, 220, 183, 169, 177, 187, 183, 154, 169, 28.23181 + 159, 155, 143, 144, 130, 123, 85, 37, 37, 52, 59, 65, 60, 76, 72, 134, 28.23182 + 226, 240, 169, 131, 136, 146, 142, 143, 157, 167, 173, 175, 68, 41, 26, 22, 28.23183 + 49, 64, 65, 100, 222, 226, 224, 183, 175, 178, 171, 171, 155, 140, 124, 89, 28.23184 + 24, 22, 22, 8, 6, 5, 8, 8, 20, 18, 9, 9, 18, 20, 18, 17, 28.23185 + 24, 28, 26, 38, 13, 13, 8, 10, 13, 14, 4, 9, 13, 14, 2, 8, 28.23186 + 38, 5, 30, 42, 48, 49, 56, 55, 53, 51, 44, 18, 77, 72, 77, 108, 28.23187 + 237, 238, 226, 106, 104, 111, 116, 127, 140, 155, 158, 163, 167, 171, 158, 146, 28.23188 + 126, 130, 127, 99, 21, 24, 21, 24, 29, 28, 29, 32, 33, 38, 37, 33, 28.23189 + 32, 55, 60, 53, 55, 63, 75, 75, 190, 241, 245, 236, 166, 115, 97, 37, 28.23190 + 28, 24, 20, 22, 25, 29, 40, 53, 220, 222, 208, 128, 123, 123, 144, 151, 28.23191 + 151, 144, 116, 108, 118, 88, 18, 12, 12, 14, 21, 26, 29, 28, 30, 28, 28.23192 + 16, 21, 80, 81, 199, 226, 226, 123, 110, 119, 128, 142, 153, 165, 167, 166, 28.23193 + 146, 68, 24, 18, 18, 10, 17, 29, 59, 112, 208, 214, 197, 126, 122, 123, 28.23194 + 130, 130, 134, 130, 123, 111, 65, 13, 12, 9, 12, 14, 13, 29, 34, 45, 28.23195 + 229, 233, 228, 114, 106, 114, 124, 140, 154, 162, 169, 166, 157, 151, 140, 42, 28.23196 + 13, 16, 16, 20, 26, 24, 13, 12, 26, 29, 25, 28, 34, 33, 28, 28, 28.23197 + 34, 37, 41, 150, 201, 183, 144, 100, 110, 116, 130, 147, 165, 171, 178, 173, 28.23198 + 183, 185, 187, 204, 131, 42, 29, 17, 26, 30, 52, 131, 222, 221, 216, 191, 28.23199 + 178, 202, 208, 208, 206, 194, 174, 166, 157, 151, 136, 118, 119, 102, 56, 56, 28.23200 + 44, 37, 33, 29, 4, 16, 12, 17, 13, 21, 72, 174, 228, 224, 115, 110, 28.23201 + 120, 131, 135, 151, 159, 161, 165, 158, 151, 131, 51, 18, 20, 22, 17, 17, 28.23202 + 14, 13, 12, 12, 9, 9, 8, 5, 14, 14, 5, 14, 10, 9, 5, 6, 28.23203 + 14, 22, 22, 16, 2, 28, 29, 32, 29, 25, 33, 67, 136, 122, 95, 120, 28.23204 + 140, 153, 162, 167, 170, 170, 169, 170, 171, 174, 183, 191, 198, 187, 186, 193, 28.23205 + 186, 178, 170, 167, 158, 154, 142, 123, 6, 6, 6, 10, 5, 4, 143, 134, 28.23206 + 119, 119, 119, 111, 118, 75, 69, 89, 161, 114, 104, 107, 115, 128, 143, 143, 28.23207 + 142, 134, 140, 140, 128, 116, 123, 127, 108, 51, 45, 59, 64, 67, 60, 64, 28.23208 + 71, 77, 92, 81, 87, 81, 65, 68, 59, 68, 88, 42, 159, 222, 233, 189, 28.23209 + 114, 96, 95, 85, 53, 26, 25, 26, 49, 63, 73, 72, 69, 72, 81, 226, 28.23210 + 232, 224, 100, 91, 106, 118, 118, 120, 130, 151, 165, 157, 150, 139, 139, 122, 28.23211 + 25, 24, 26, 9, 21, 24, 24, 17, 29, 45, 26, 24, 75, 72, 124, 221, 28.23212 + 226, 222, 123, 112, 122, 130, 128, 138, 124, 146, 139, 138, 132, 143, 136, 111, 28.23213 + 41, 36, 22, 34, 60, 69, 67, 68, 69, 151, 214, 201, 150, 123, 130, 139, 28.23214 + 148, 151, 159, 162, 166, 174, 179, 181, 178, 175, 124, 44, 40, 41, 63, 68, 28.23215 + 85, 142, 221, 224, 183, 166, 173, 182, 186, 179, 154, 166, 162, 155, 146, 144, 28.23216 + 127, 116, 57, 37, 38, 40, 48, 67, 83, 72, 118, 217, 228, 173, 134, 142, 28.23217 + 151, 139, 140, 155, 175, 179, 179, 80, 32, 24, 16, 38, 64, 73, 147, 226, 28.23218 + 226, 224, 179, 179, 175, 169, 169, 155, 140, 126, 88, 28, 24, 24, 18, 30, 28.23219 + 20, 29, 18, 77, 83, 76, 65, 73, 75, 76, 69, 75, 72, 29, 17, 29, 28.23220 + 96, 88, 75, 73, 88, 84, 73, 68, 65, 63, 37, 4, 26, 81, 89, 93, 28.23221 + 83, 91, 84, 85, 53, 37, 16, 81, 81, 83, 163, 234, 238, 216, 104, 104, 28.23222 + 108, 118, 130, 143, 151, 151, 150, 155, 167, 159, 147, 130, 136, 138, 100, 25, 28.23223 + 26, 28, 36, 41, 44, 30, 42, 42, 40, 36, 46, 41, 51, 55, 65, 64, 28.23224 + 68, 79, 148, 234, 241, 244, 236, 144, 110, 95, 33, 25, 21, 24, 25, 32, 28.23225 + 36, 40, 63, 217, 221, 210, 126, 124, 127, 134, 139, 153, 142, 120, 114, 119, 28.23226 + 97, 20, 14, 13, 18, 21, 21, 24, 24, 20, 26, 12, 32, 67, 72, 195, 28.23227 + 222, 220, 126, 110, 119, 128, 139, 153, 159, 163, 165, 153, 91, 25, 20, 16, 28.23228 + 20, 20, 44, 69, 181, 221, 221, 206, 123, 122, 126, 127, 126, 138, 136, 118, 28.23229 + 111, 55, 13, 9, 9, 21, 21, 28, 34, 36, 56, 229, 228, 226, 115, 106, 28.23230 + 118, 130, 142, 153, 163, 167, 163, 155, 147, 142, 46, 17, 20, 29, 36, 42, 28.23231 + 40, 20, 17, 20, 18, 26, 18, 22, 20, 25, 16, 24, 20, 26, 138, 197, 28.23232 + 187, 131, 100, 112, 116, 128, 131, 162, 171, 169, 173, 177, 187, 191, 202, 150, 28.23233 + 56, 33, 24, 40, 32, 75, 135, 224, 222, 218, 189, 174, 193, 206, 205, 202, 28.23234 + 195, 178, 173, 157, 158, 142, 127, 120, 110, 67, 48, 57, 55, 48, 33, 5, 28.23235 + 21, 85, 115, 88, 85, 122, 194, 216, 221, 111, 110, 116, 130, 130, 147, 157, 28.23236 + 162, 159, 158, 148, 134, 55, 22, 24, 36, 42, 64, 76, 81, 81, 77, 88, 28.23237 + 84, 77, 33, 14, 45, 63, 61, 53, 57, 57, 38, 16, 8, 6, 17, 20, 28.23238 + 13, 17, 17, 24, 24, 17, 30, 102, 134, 100, 99, 134, 140, 150, 157, 153, 28.23239 + 155, 150, 151, 139, 146, 146, 183, 197, 205, 178, 191, 186, 177, 169, 166, 157, 28.23240 + 153, 143, 119, 6, 6, 6, 6, 22, 24, 144, 124, 136, 126, 124, 136, 89, 28.23241 + 103, 72, 36, 158, 140, 110, 106, 108, 108, 118, 130, 132, 143, 136, 134, 142, 28.23242 + 132, 122, 131, 122, 95, 49, 46, 37, 57, 65, 65, 80, 91, 115, 97, 102, 28.23243 + 103, 91, 83, 92, 96, 89, 60, 181, 230, 236, 186, 114, 92, 89, 71, 38, 28.23244 + 24, 25, 26, 59, 69, 69, 71, 67, 71, 83, 210, 225, 222, 95, 89, 106, 28.23245 + 119, 118, 118, 127, 139, 159, 157, 148, 136, 138, 123, 33, 29, 24, 20, 36, 28.23246 + 49, 67, 72, 73, 80, 76, 73, 60, 85, 191, 214, 221, 220, 120, 104, 114, 28.23247 + 115, 130, 139, 119, 130, 138, 142, 134, 140, 139, 115, 36, 29, 26, 32, 65, 28.23248 + 60, 63, 59, 68, 132, 206, 204, 158, 120, 128, 131, 140, 151, 157, 163, 163, 28.23249 + 171, 177, 177, 174, 174, 148, 69, 40, 37, 72, 75, 77, 120, 212, 221, 189, 28.23250 + 163, 169, 178, 186, 187, 163, 153, 165, 167, 157, 151, 139, 126, 100, 64, 60, 28.23251 + 63, 87, 91, 89, 79, 97, 199, 225, 175, 140, 144, 154, 138, 142, 157, 179, 28.23252 + 186, 185, 130, 56, 26, 13, 48, 71, 87, 175, 230, 229, 225, 179, 178, 177, 28.23253 + 170, 166, 155, 140, 126, 81, 25, 22, 22, 34, 32, 33, 32, 17, 91, 91, 28.23254 + 80, 63, 59, 68, 60, 67, 71, 75, 37, 13, 73, 93, 76, 81, 81, 77, 28.23255 + 84, 75, 81, 73, 77, 34, 4, 77, 91, 87, 87, 77, 79, 64, 76, 64, 28.23256 + 51, 14, 84, 85, 85, 186, 238, 240, 220, 104, 103, 107, 116, 132, 146, 157, 28.23257 + 154, 140, 150, 151, 147, 126, 126, 139, 140, 100, 28, 28, 25, 38, 29, 41, 28.23258 + 46, 46, 53, 57, 59, 53, 61, 72, 73, 80, 85, 92, 131, 204, 242, 244, 28.23259 + 241, 213, 122, 111, 68, 29, 22, 21, 26, 32, 30, 38, 41, 71, 220, 225, 28.23260 + 220, 119, 118, 128, 114, 130, 131, 131, 114, 119, 118, 103, 21, 13, 13, 20, 28.23261 + 25, 38, 34, 40, 30, 26, 9, 88, 80, 81, 173, 218, 214, 131, 112, 119, 28.23262 + 127, 138, 147, 162, 163, 167, 167, 130, 40, 24, 18, 24, 40, 53, 89, 194, 28.23263 + 222, 222, 208, 123, 122, 124, 122, 131, 128, 126, 118, 100, 29, 12, 8, 14, 28.23264 + 28, 32, 32, 37, 33, 67, 226, 229, 228, 116, 107, 116, 126, 140, 153, 162, 28.23265 + 167, 159, 150, 144, 132, 59, 25, 17, 30, 46, 53, 53, 38, 13, 28, 91, 28.23266 + 88, 85, 81, 91, 81, 81, 80, 80, 48, 122, 187, 183, 120, 100, 114, 119, 28.23267 + 123, 124, 150, 155, 173, 169, 166, 179, 189, 193, 194, 107, 46, 40, 46, 53, 28.23268 + 123, 194, 226, 224, 220, 183, 173, 187, 197, 198, 197, 195, 171, 171, 163, 154, 28.23269 + 154, 135, 120, 120, 72, 69, 88, 130, 118, 36, 10, 67, 123, 111, 120, 142, 28.23270 + 151, 210, 220, 208, 112, 108, 118, 127, 124, 143, 153, 161, 161, 154, 147, 132, 28.23271 + 61, 26, 21, 42, 73, 88, 85, 80, 84, 85, 85, 85, 88, 57, 20, 59, 28.23272 + 71, 69, 69, 64, 65, 60, 60, 48, 17, 8, 20, 36, 83, 89, 57, 72, 28.23273 + 77, 64, 34, 144, 122, 91, 112, 124, 132, 139, 142, 120, 122, 130, 67, 55, 28.23274 + 77, 162, 197, 209, 185, 182, 185, 175, 167, 165, 157, 148, 139, 114, 5, 8, 28.23275 + 9, 17, 57, 64, 123, 120, 99, 124, 122, 112, 79, 102, 71, 30, 143, 139, 28.23276 + 103, 107, 106, 106, 104, 106, 112, 132, 147, 139, 132, 140, 127, 120, 124, 116, 28.23277 + 84, 46, 55, 63, 34, 57, 76, 111, 102, 95, 97, 87, 83, 79, 92, 72, 28.23278 + 56, 123, 210, 234, 230, 199, 112, 88, 81, 59, 32, 22, 25, 24, 56, 71, 28.23279 + 63, 63, 57, 71, 115, 228, 222, 204, 100, 100, 108, 120, 124, 119, 126, 132, 28.23280 + 148, 153, 143, 128, 139, 124, 30, 30, 9, 61, 51, 59, 60, 73, 84, 76, 28.23281 + 75, 60, 80, 102, 221, 220, 220, 209, 123, 97, 107, 118, 142, 143, 127, 116, 28.23282 + 124, 131, 128, 139, 138, 114, 49, 26, 26, 33, 65, 65, 75, 52, 60, 110, 28.23283 + 197, 199, 165, 122, 127, 127, 140, 144, 154, 161, 157, 165, 169, 174, 170, 170, 28.23284 + 161, 92, 44, 30, 61, 73, 76, 102, 194, 218, 198, 163, 166, 177, 185, 189, 28.23285 + 182, 153, 154, 166, 170, 159, 150, 138, 128, 96, 87, 84, 87, 83, 77, 75, 28.23286 + 81, 179, 229, 178, 142, 150, 158, 138, 140, 169, 181, 187, 190, 158, 42, 26, 28.23287 + 25, 61, 80, 96, 186, 233, 230, 225, 179, 178, 170, 169, 166, 158, 140, 123, 28.23288 + 76, 24, 22, 21, 30, 41, 42, 30, 18, 84, 99, 85, 96, 83, 83, 99, 28.23289 + 83, 73, 73, 37, 34, 89, 99, 77, 83, 76, 64, 57, 77, 63, 49, 73, 28.23290 + 25, 1, 76, 95, 80, 65, 59, 67, 75, 80, 56, 41, 17, 84, 85, 91, 28.23291 + 208, 238, 233, 213, 108, 104, 110, 114, 126, 147, 157, 159, 159, 153, 138, 131, 28.23292 + 122, 134, 138, 144, 104, 56, 29, 28, 40, 34, 40, 53, 56, 48, 45, 49, 28.23293 + 48, 69, 85, 95, 100, 93, 126, 198, 241, 246, 244, 236, 155, 118, 108, 55, 28.23294 + 26, 24, 20, 29, 33, 32, 37, 41, 69, 221, 222, 217, 127, 128, 123, 131, 28.23295 + 116, 110, 106, 111, 122, 112, 102, 21, 17, 12, 22, 32, 40, 41, 42, 44, 28.23296 + 24, 10, 81, 92, 77, 139, 208, 216, 147, 114, 120, 128, 139, 146, 155, 162, 28.23297 + 159, 167, 150, 103, 48, 45, 49, 72, 100, 170, 197, 221, 214, 214, 123, 120, 28.23298 + 124, 124, 124, 131, 119, 114, 69, 17, 13, 6, 16, 26, 30, 38, 44, 40, 28.23299 + 79, 224, 226, 225, 114, 110, 119, 134, 142, 153, 163, 167, 158, 151, 147, 134, 28.23300 + 71, 26, 18, 34, 53, 46, 49, 55, 13, 99, 97, 88, 84, 80, 92, 91, 28.23301 + 84, 87, 75, 52, 59, 177, 175, 118, 103, 114, 118, 122, 127, 130, 162, 170, 28.23302 + 178, 158, 173, 179, 189, 202, 155, 76, 52, 68, 112, 135, 213, 222, 224, 220, 28.23303 + 185, 167, 174, 183, 179, 183, 185, 175, 171, 166, 162, 161, 151, 127, 120, 81, 28.23304 + 85, 127, 136, 131, 28, 5, 76, 126, 112, 136, 143, 158, 214, 221, 217, 108, 28.23305 + 107, 118, 128, 120, 134, 154, 165, 158, 151, 143, 131, 88, 32, 25, 45, 79, 28.23306 + 76, 81, 73, 84, 80, 69, 72, 85, 88, 18, 61, 68, 63, 41, 32, 29, 28.23307 + 32, 40, 59, 34, 9, 14, 79, 79, 79, 80, 83, 68, 61, 56, 41, 45, 28.23308 + 52, 72, 102, 97, 107, 89, 65, 42, 38, 28, 33, 65, 139, 197, 209, 191, 28.23309 + 175, 183, 174, 169, 166, 155, 148, 139, 106, 4, 8, 13, 26, 41, 44, 134, 28.23310 + 102, 96, 102, 83, 100, 81, 75, 64, 36, 139, 134, 97, 115, 107, 103, 106, 28.23311 + 104, 102, 108, 131, 150, 139, 128, 138, 123, 128, 120, 116, 79, 63, 60, 57, 28.23312 + 53, 73, 108, 89, 87, 83, 79, 80, 75, 76, 91, 132, 183, 226, 232, 229, 28.23313 + 185, 110, 88, 64, 36, 25, 21, 25, 24, 41, 65, 64, 52, 57, 85, 191, 28.23314 + 228, 225, 208, 104, 99, 108, 123, 124, 138, 126, 120, 135, 148, 146, 134, 138, 28.23315 + 114, 33, 29, 14, 51, 53, 51, 76, 59, 59, 61, 57, 57, 80, 153, 212, 28.23316 + 216, 220, 209, 123, 118, 106, 116, 132, 131, 142, 131, 115, 115, 124, 130, 138, 28.23317 + 116, 55, 24, 21, 33, 68, 81, 57, 56, 64, 92, 185, 199, 163, 124, 119, 28.23318 + 124, 136, 142, 150, 158, 155, 157, 159, 165, 169, 163, 163, 120, 53, 51, 68, 28.23319 + 67, 81, 89, 151, 217, 201, 162, 162, 173, 186, 186, 187, 173, 148, 153, 167, 28.23320 + 165, 159, 148, 132, 127, 119, 112, 92, 77, 81, 79, 68, 114, 216, 189, 147, 28.23321 + 148, 166, 140, 140, 174, 183, 194, 197, 179, 75, 32, 25, 30, 85, 104, 204, 28.23322 + 233, 233, 228, 175, 177, 171, 167, 170, 159, 139, 115, 48, 22, 22, 13, 33, 28.23323 + 32, 38, 34, 22, 52, 71, 95, 59, 84, 79, 77, 77, 81, 71, 40, 30, 28.23324 + 60, 97, 87, 91, 59, 59, 76, 53, 59, 64, 64, 26, 0, 76, 84, 65, 28.23325 + 73, 83, 73, 76, 63, 51, 46, 24, 71, 76, 102, 218, 237, 236, 210, 111, 28.23326 + 107, 111, 112, 122, 143, 155, 163, 157, 151, 150, 147, 130, 135, 144, 144, 111, 28.23327 + 87, 32, 29, 40, 32, 34, 34, 38, 41, 40, 40, 63, 68, 97, 102, 95, 28.23328 + 127, 185, 234, 244, 248, 245, 221, 128, 114, 100, 41, 24, 20, 21, 30, 30, 28.23329 + 30, 37, 55, 110, 205, 216, 217, 128, 112, 119, 123, 114, 118, 107, 107, 119, 28.23330 + 120, 102, 22, 14, 16, 17, 18, 40, 44, 40, 37, 29, 8, 88, 88, 75, 28.23331 + 95, 189, 213, 181, 118, 116, 128, 135, 144, 151, 162, 161, 171, 171, 151, 107, 28.23332 + 107, 128, 159, 187, 202, 197, 225, 209, 209, 124, 123, 124, 126, 132, 126, 114, 28.23333 + 92, 24, 9, 10, 9, 24, 21, 28, 41, 40, 40, 81, 218, 228, 222, 112, 28.23334 + 104, 114, 123, 142, 153, 161, 166, 158, 150, 143, 134, 111, 36, 18, 34, 45, 28.23335 + 48, 45, 41, 13, 102, 100, 115, 95, 85, 91, 73, 73, 79, 85, 72, 36, 28.23336 + 122, 174, 127, 97, 114, 119, 123, 130, 126, 150, 155, 167, 155, 166, 171, 183, 28.23337 + 191, 202, 165, 131, 150, 177, 213, 221, 224, 218, 218, 181, 166, 163, 173, 177, 28.23338 + 174, 179, 177, 177, 170, 162, 154, 161, 144, 124, 87, 93, 114, 143, 123, 24, 28.23339 + 5, 64, 108, 126, 124, 140, 171, 218, 216, 220, 110, 106, 116, 131, 126, 142, 28.23340 + 154, 163, 159, 151, 140, 134, 108, 42, 32, 45, 76, 76, 75, 83, 92, 89, 28.23341 + 83, 71, 87, 63, 28, 53, 67, 60, 34, 37, 36, 25, 24, 57, 45, 10, 28.23342 + 13, 83, 67, 73, 71, 64, 63, 49, 40, 41, 34, 37, 32, 34, 49, 44, 28.23343 + 29, 26, 29, 24, 18, 36, 64, 147, 205, 216, 194, 171, 181, 177, 170, 166, 28.23344 + 158, 144, 136, 97, 2, 6, 12, 28, 4, 2, 132, 97, 107, 107, 96, 89, 28.23345 + 119, 81, 64, 30, 142, 128, 100, 80, 104, 112, 106, 106, 106, 102, 111, 131, 28.23346 + 142, 139, 138, 135, 114, 123, 123, 114, 97, 84, 88, 79, 97, 96, 115, 93, 28.23347 + 84, 81, 83, 93, 132, 181, 214, 232, 236, 232, 208, 163, 96, 75, 46, 28, 28.23348 + 21, 21, 25, 28, 51, 60, 61, 59, 67, 122, 214, 218, 226, 204, 93, 93, 28.23349 + 111, 119, 120, 136, 115, 119, 123, 142, 136, 131, 136, 116, 37, 33, 45, 80, 28.23350 + 77, 49, 60, 51, 67, 53, 56, 52, 79, 165, 210, 213, 208, 191, 124, 104, 28.23351 + 112, 128, 142, 136, 144, 147, 135, 116, 112, 127, 132, 118, 49, 37, 37, 40, 28.23352 + 69, 73, 67, 52, 57, 64, 179, 201, 163, 116, 123, 123, 135, 140, 147, 157, 28.23353 + 161, 148, 148, 153, 153, 161, 162, 138, 84, 55, 40, 53, 75, 77, 127, 208, 28.23354 + 209, 163, 161, 171, 179, 185, 187, 187, 177, 146, 153, 171, 165, 154, 148, 138, 28.23355 + 128, 130, 132, 106, 83, 72, 72, 83, 181, 213, 163, 153, 165, 140, 143, 179, 28.23356 + 189, 201, 201, 194, 140, 69, 29, 30, 92, 148, 214, 233, 233, 229, 183, 178, 28.23357 + 166, 167, 167, 158, 134, 103, 29, 22, 21, 17, 40, 32, 34, 37, 25, 32, 28.23358 + 93, 99, 85, 89, 83, 80, 76, 73, 67, 38, 34, 63, 100, 69, 77, 63, 28.23359 + 80, 63, 52, 63, 64, 61, 34, 6, 79, 88, 61, 64, 64, 52, 67, 53, 28.23360 + 42, 40, 40, 72, 88, 157, 222, 241, 233, 208, 111, 110, 115, 107, 118, 138, 28.23361 + 151, 159, 165, 161, 154, 148, 142, 126, 131, 147, 130, 93, 33, 34, 33, 40, 28.23362 + 38, 53, 57, 51, 42, 46, 61, 77, 100, 96, 115, 175, 232, 241, 246, 246, 28.23363 + 242, 166, 116, 114, 87, 30, 21, 14, 21, 28, 29, 38, 40, 56, 171, 206, 28.23364 + 214, 204, 123, 116, 122, 127, 115, 115, 118, 102, 106, 119, 107, 28, 16, 13, 28.23365 + 16, 33, 41, 42, 34, 37, 29, 6, 80, 87, 80, 80, 115, 197, 197, 124, 28.23366 + 116, 124, 132, 140, 142, 150, 147, 174, 177, 175, 166, 182, 195, 198, 206, 205, 28.23367 + 213, 202, 209, 161, 124, 124, 132, 135, 130, 120, 114, 34, 13, 12, 8, 14, 28.23368 + 24, 25, 33, 36, 37, 41, 161, 221, 224, 222, 112, 99, 114, 120, 140, 148, 28.23369 + 159, 159, 162, 153, 147, 144, 138, 56, 30, 26, 48, 48, 45, 42, 16, 73, 28.23370 + 103, 115, 106, 97, 110, 91, 92, 84, 77, 84, 38, 61, 166, 143, 102, 103, 28.23371 + 118, 120, 124, 127, 131, 155, 157, 154, 163, 166, 178, 183, 199, 209, 205, 214, 28.23372 + 216, 221, 220, 218, 224, 204, 182, 161, 162, 142, 162, 167, 177, 177, 175, 177, 28.23373 + 167, 166, 159, 159, 140, 118, 96, 131, 139, 63, 20, 5, 56, 108, 108, 115, 28.23374 + 127, 155, 216, 226, 214, 110, 104, 115, 126, 120, 147, 155, 159, 155, 151, 143, 28.23375 + 136, 122, 63, 33, 51, 76, 72, 81, 81, 84, 83, 84, 87, 72, 75, 22, 28.23376 + 42, 65, 55, 26, 34, 18, 20, 29, 32, 36, 12, 16, 40, 63, 36, 52, 28.23377 + 53, 63, 38, 33, 29, 28, 22, 30, 29, 36, 24, 22, 25, 21, 24, 20, 28.23378 + 59, 65, 170, 212, 218, 182, 167, 179, 175, 170, 166, 158, 143, 132, 52, 2, 28.23379 + 6, 13, 38, 2, 1, 135, 111, 89, 100, 102, 87, 85, 88, 64, 26, 128, 28.23380 + 119, 96, 85, 71, 85, 115, 110, 106, 104, 102, 107, 132, 146, 143, 143, 136, 28.23381 + 118, 116, 119, 148, 126, 116, 115, 120, 124, 131, 132, 134, 134, 154, 186, 212, 28.23382 + 225, 236, 234, 229, 216, 186, 111, 84, 51, 30, 22, 18, 22, 26, 41, 55, 28.23383 + 48, 59, 61, 127, 182, 228, 225, 226, 212, 108, 93, 104, 115, 130, 132, 122, 28.23384 + 126, 119, 128, 130, 132, 135, 123, 91, 67, 37, 69, 80, 80, 60, 59, 64, 28.23385 + 77, 55, 65, 99, 185, 205, 209, 212, 155, 110, 112, 118, 126, 131, 143, 143, 28.23386 + 144, 143, 134, 111, 116, 130, 123, 95, 49, 44, 44, 73, 56, 59, 52, 56, 28.23387 + 55, 158, 198, 163, 114, 119, 123, 135, 143, 147, 154, 158, 146, 144, 139, 139, 28.23388 + 146, 154, 147, 100, 56, 29, 49, 68, 79, 107, 190, 209, 170, 158, 169, 178, 28.23389 + 181, 183, 185, 187, 177, 150, 154, 166, 163, 155, 147, 143, 132, 132, 131, 100, 28.23390 + 72, 77, 77, 127, 218, 175, 154, 162, 144, 179, 183, 199, 205, 204, 206, 186, 28.23391 + 110, 40, 45, 102, 179, 230, 232, 233, 222, 178, 177, 174, 169, 166, 146, 134, 28.23392 + 83, 24, 21, 21, 22, 37, 37, 32, 38, 29, 29, 81, 97, 84, 89, 77, 28.23393 + 76, 84, 75, 75, 46, 34, 64, 91, 76, 76, 57, 67, 52, 60, 56, 61, 28.23394 + 63, 32, 1, 84, 88, 52, 64, 53, 60, 44, 36, 45, 63, 59, 71, 96, 28.23395 + 206, 233, 228, 237, 197, 112, 115, 115, 116, 110, 127, 147, 157, 159, 161, 158, 28.23396 + 154, 150, 136, 139, 132, 154, 108, 89, 69, 65, 71, 73, 71, 69, 75, 75, 28.23397 + 69, 71, 91, 108, 96, 171, 228, 234, 238, 245, 241, 216, 122, 118, 108, 56, 28.23398 + 28, 21, 17, 25, 26, 34, 36, 49, 171, 208, 206, 216, 195, 110, 124, 132, 28.23399 + 123, 128, 130, 134, 123, 104, 120, 115, 41, 13, 12, 25, 29, 30, 40, 44, 28.23400 + 30, 26, 5, 79, 80, 75, 81, 84, 122, 195, 132, 118, 122, 126, 131, 134, 28.23401 + 134, 135, 138, 153, 182, 181, 190, 193, 204, 210, 212, 201, 206, 186, 124, 123, 28.23402 + 132, 134, 131, 122, 122, 57, 13, 10, 9, 5, 21, 26, 32, 41, 38, 38, 28.23403 + 65, 199, 213, 221, 218, 112, 102, 108, 118, 132, 144, 157, 159, 159, 155, 146, 28.23404 + 139, 124, 107, 46, 25, 28, 49, 46, 45, 20, 69, 103, 116, 93, 102, 110, 28.23405 + 71, 103, 83, 77, 76, 45, 37, 153, 175, 110, 95, 112, 122, 124, 123, 126, 28.23406 + 139, 140, 151, 163, 169, 170, 175, 181, 195, 194, 204, 210, 212, 216, 213, 206, 28.23407 + 189, 173, 161, 139, 139, 138, 142, 159, 167, 175, 174, 171, 161, 161, 162, 159, 28.23408 + 132, 102, 138, 91, 28, 8, 8, 53, 103, 111, 124, 138, 162, 216, 221, 217, 28.23409 + 115, 107, 114, 122, 122, 157, 157, 157, 155, 151, 143, 132, 123, 106, 44, 56, 28.23410 + 80, 85, 75, 75, 80, 80, 85, 84, 92, 84, 36, 37, 67, 55, 29, 21, 28.23411 + 29, 29, 32, 28, 33, 9, 16, 69, 60, 57, 49, 38, 40, 29, 34, 29, 28.23412 + 38, 29, 25, 36, 29, 28, 22, 22, 17, 21, 16, 53, 79, 199, 214, 217, 28.23413 + 162, 162, 179, 178, 170, 165, 157, 142, 130, 42, 2, 4, 12, 32, 4, 10, 28.23414 + 124, 116, 91, 93, 102, 107, 73, 92, 64, 30, 122, 119, 97, 91, 85, 69, 28.23415 + 68, 87, 111, 111, 107, 104, 106, 127, 144, 139, 130, 123, 119, 148, 165, 175, 28.23416 + 175, 183, 189, 185, 191, 189, 194, 206, 213, 225, 228, 232, 230, 218, 217, 177, 28.23417 + 127, 81, 52, 33, 24, 21, 22, 34, 42, 52, 46, 71, 120, 159, 183, 210, 28.23418 + 213, 220, 225, 206, 114, 87, 114, 107, 116, 130, 144, 147, 130, 122, 120, 136, 28.23419 + 135, 140, 119, 106, 108, 110, 116, 104, 84, 68, 55, 75, 53, 72, 140, 198, 28.23420 + 209, 209, 201, 153, 118, 107, 110, 126, 138, 143, 132, 147, 147, 140, 131, 110, 28.23421 + 123, 122, 108, 92, 57, 53, 75, 71, 59, 53, 44, 53, 124, 202, 177, 111, 28.23422 + 116, 124, 138, 142, 148, 157, 139, 134, 130, 127, 126, 128, 142, 146, 127, 92, 28.23423 + 60, 32, 56, 71, 93, 150, 204, 174, 155, 161, 171, 175, 179, 178, 181, 182, 28.23424 + 170, 151, 159, 166, 159, 155, 143, 132, 131, 127, 93, 75, 68, 72, 79, 178, 28.23425 + 210, 158, 155, 140, 185, 195, 204, 208, 210, 209, 208, 178, 124, 132, 182, 222, 28.23426 + 234, 233, 233, 214, 186, 179, 173, 170, 159, 136, 120, 46, 20, 18, 20, 25, 28.23427 + 41, 36, 45, 45, 36, 30, 85, 100, 64, 84, 77, 71, 83, 88, 77, 61, 28.23428 + 34, 48, 95, 65, 77, 56, 51, 51, 63, 57, 49, 65, 25, 4, 76, 81, 28.23429 + 51, 63, 42, 59, 59, 53, 61, 65, 75, 130, 201, 222, 234, 236, 228, 182, 28.23430 + 114, 119, 108, 119, 123, 112, 136, 148, 153, 155, 154, 155, 153, 151, 143, 127, 28.23431 + 142, 157, 108, 103, 103, 100, 97, 100, 96, 91, 91, 87, 83, 89, 128, 181, 28.23432 + 226, 230, 237, 241, 240, 230, 142, 116, 120, 104, 42, 22, 18, 21, 29, 33, 28.23433 + 32, 48, 175, 204, 209, 210, 205, 197, 119, 111, 124, 119, 138, 120, 126, 122, 28.23434 + 130, 112, 115, 95, 17, 22, 16, 16, 30, 41, 41, 34, 21, 10, 71, 80, 28.23435 + 76, 67, 72, 83, 103, 173, 170, 124, 124, 123, 126, 127, 128, 128, 130, 130, 28.23436 + 131, 140, 159, 163, 166, 177, 182, 159, 124, 128, 127, 126, 124, 122, 115, 46, 28.23437 + 13, 9, 8, 4, 6, 14, 21, 30, 40, 37, 44, 158, 213, 214, 217, 212, 28.23438 + 114, 103, 114, 120, 134, 143, 153, 161, 161, 157, 150, 151, 134, 136, 100, 63, 28.23439 + 40, 33, 34, 48, 21, 71, 103, 111, 110, 92, 93, 73, 79, 96, 73, 79, 28.23440 + 42, 29, 124, 167, 135, 95, 103, 118, 123, 126, 120, 122, 126, 150, 161, 158, 28.23441 + 167, 163, 162, 158, 153, 173, 185, 189, 197, 194, 183, 158, 136, 140, 139, 136, 28.23442 + 138, 139, 136, 139, 151, 157, 154, 151, 158, 148, 140, 114, 131, 91, 28, 0, 28.23443 + 9, 5, 46, 91, 120, 142, 138, 189, 205, 216, 216, 118, 106, 108, 123, 144, 28.23444 + 154, 166, 155, 153, 151, 142, 134, 124, 123, 91, 56, 44, 55, 73, 79, 87, 28.23445 + 80, 77, 89, 68, 103, 29, 20, 56, 37, 42, 30, 30, 37, 33, 25, 33, 28.23446 + 10, 12, 59, 61, 63, 65, 65, 57, 48, 44, 33, 40, 37, 18, 34, 37, 28.23447 + 37, 28, 25, 21, 20, 30, 40, 108, 210, 224, 217, 154, 157, 173, 177, 170, 28.23448 + 163, 157, 144, 128, 30, 2, 4, 10, 30, 4, 1, 118, 85, 85, 79, 81, 28.23449 + 73, 73, 72, 60, 30, 114, 112, 97, 84, 81, 80, 68, 53, 61, 84, 104, 28.23450 + 107, 103, 106, 112, 120, 128, 135, 135, 139, 139, 150, 171, 185, 194, 198, 208, 28.23451 + 204, 209, 216, 220, 221, 217, 217, 214, 197, 158, 118, 79, 48, 32, 24, 20, 28.23452 + 20, 30, 38, 53, 42, 128, 166, 202, 212, 199, 206, 208, 213, 209, 154, 110, 28.23453 + 89, 135, 116, 124, 131, 132, 126, 132, 139, 132, 127, 146, 135, 136, 130, 139, 28.23454 + 144, 159, 140, 127, 100, 80, 46, 45, 75, 163, 199, 202, 201, 206, 144, 119, 28.23455 + 115, 116, 144, 146, 138, 138, 132, 131, 132, 139, 128, 108, 123, 119, 106, 81, 28.23456 + 106, 91, 84, 51, 59, 48, 51, 89, 185, 187, 128, 108, 124, 135, 139, 138, 28.23457 + 138, 134, 127, 124, 118, 118, 116, 118, 132, 134, 108, 75, 26, 42, 65, 79, 28.23458 + 104, 179, 193, 151, 155, 163, 171, 174, 175, 175, 181, 179, 158, 150, 163, 165, 28.23459 + 153, 138, 136, 128, 103, 64, 41, 63, 68, 72, 99, 204, 170, 163, 147, 187, 28.23460 + 195, 209, 210, 213, 209, 216, 210, 205, 209, 226, 230, 230, 233, 232, 201, 181, 28.23461 + 182, 177, 166, 140, 131, 85, 25, 20, 18, 21, 30, 42, 38, 46, 41, 38, 28.23462 + 25, 71, 73, 92, 76, 85, 93, 91, 88, 77, 73, 33, 38, 64, 85, 88, 28.23463 + 49, 55, 49, 57, 63, 63, 60, 26, 1, 72, 73, 69, 52, 60, 53, 59, 28.23464 + 68, 106, 167, 187, 218, 216, 232, 221, 226, 224, 150, 116, 118, 124, 130, 142, 28.23465 + 123, 116, 135, 140, 142, 142, 144, 148, 148, 153, 142, 138, 148, 159, 146, 169, 28.23466 + 179, 189, 198, 204, 208, 212, 217, 220, 217, 222, 222, 226, 232, 237, 237, 224, 28.23467 + 154, 118, 122, 118, 81, 26, 18, 18, 21, 30, 36, 76, 150, 221, 206, 201, 28.23468 + 214, 216, 158, 124, 128, 135, 130, 131, 124, 138, 119, 122, 111, 112, 96, 67, 28.23469 + 48, 20, 17, 12, 36, 41, 32, 28, 9, 69, 71, 65, 65, 72, 61, 79, 28.23470 + 91, 99, 107, 112, 151, 155, 150, 147, 147, 143, 140, 136, 131, 131, 128, 128, 28.23471 + 128, 130, 127, 124, 124, 122, 120, 118, 81, 29, 12, 9, 9, 4, 4, 22, 28.23472 + 20, 32, 37, 38, 41, 136, 197, 206, 209, 214, 205, 108, 104, 107, 120, 134, 28.23473 + 136, 139, 146, 153, 153, 148, 140, 146, 138, 142, 112, 93, 79, 59, 32, 21, 28.23474 + 55, 104, 95, 107, 80, 99, 95, 93, 97, 73, 77, 59, 25, 81, 148, 177, 28.23475 + 114, 102, 110, 118, 119, 122, 123, 124, 127, 130, 132, 131, 132, 140, 130, 128, 28.23476 + 126, 128, 130, 127, 126, 128, 131, 131, 136, 136, 139, 142, 139, 139, 142, 135, 28.23477 + 130, 130, 128, 127, 123, 135, 138, 99, 26, 0, 5, 5, 5, 45, 89, 97, 28.23478 + 132, 191, 197, 195, 213, 206, 115, 111, 116, 120, 147, 151, 153, 144, 153, 150, 28.23479 + 143, 136, 127, 122, 120, 119, 97, 67, 63, 49, 84, 79, 75, 76, 65, 89, 28.23480 + 32, 13, 72, 26, 26, 28, 41, 36, 38, 25, 30, 12, 12, 51, 55, 56, 28.23481 + 52, 40, 42, 30, 24, 20, 24, 26, 18, 30, 41, 36, 29, 32, 34, 14, 28.23482 + 42, 51, 138, 220, 222, 210, 146, 151, 161, 173, 173, 163, 157, 143, 126, 25, 28.23483 + 4, 4, 12, 24, 6, 2, 77, 76, 75, 79, 73, 73, 80, 67, 61, 26, 28.23484 + 93, 104, 97, 88, 99, 85, 77, 68, 55, 48, 53, 71, 95, 104, 106, 104, 28.23485 + 104, 111, 108, 116, 118, 122, 127, 142, 165, 177, 186, 201, 205, 202, 202, 202, 28.23486 + 199, 181, 158, 118, 84, 65, 44, 30, 24, 18, 18, 21, 29, 38, 38, 104, 28.23487 + 225, 193, 202, 194, 206, 201, 210, 177, 140, 118, 104, 115, 115, 116, 112, 118, 28.23488 + 111, 116, 115, 120, 119, 123, 127, 120, 130, 142, 134, 138, 138, 135, 139, 148, 28.23489 + 79, 45, 63, 96, 216, 190, 193, 197, 202, 138, 122, 126, 136, 119, 140, 138, 28.23490 + 135, 123, 126, 123, 123, 123, 120, 120, 122, 108, 114, 108, 102, 77, 49, 51, 28.23491 + 52, 46, 57, 144, 191, 151, 106, 123, 127, 131, 134, 132, 127, 126, 119, 118, 28.23492 + 114, 110, 107, 103, 108, 122, 85, 72, 65, 49, 61, 77, 130, 197, 161, 151, 28.23493 + 158, 161, 159, 166, 169, 174, 178, 174, 155, 153, 159, 147, 136, 136, 115, 69, 28.23494 + 34, 33, 32, 71, 65, 63, 157, 182, 174, 134, 182, 197, 198, 205, 210, 217, 28.23495 + 217, 221, 220, 222, 230, 228, 230, 226, 217, 190, 186, 179, 175, 161, 134, 99, 28.23496 + 38, 22, 20, 18, 17, 34, 40, 37, 40, 45, 41, 26, 56, 79, 92, 89, 28.23497 + 73, 76, 71, 83, 65, 41, 33, 32, 64, 89, 73, 46, 60, 57, 59, 63, 28.23498 + 72, 38, 29, 4, 64, 69, 59, 67, 32, 52, 79, 185, 210, 205, 213, 234, 28.23499 + 212, 225, 240, 221, 190, 120, 118, 119, 138, 140, 131, 139, 131, 127, 127, 124, 28.23500 + 127, 130, 123, 127, 130, 136, 146, 143, 132, 167, 170, 182, 190, 198, 202, 208, 28.23501 + 213, 216, 218, 222, 224, 229, 229, 230, 226, 199, 138, 115, 118, 124, 114, 49, 28.23502 + 20, 17, 18, 28, 34, 83, 181, 190, 190, 202, 208, 228, 205, 140, 120, 111, 28.23503 + 119, 116, 131, 126, 115, 128, 115, 114, 126, 96, 83, 73, 63, 44, 16, 21, 28.23504 + 40, 28, 28, 8, 64, 73, 61, 46, 38, 48, 52, 53, 51, 56, 57, 75, 28.23505 + 96, 103, 106, 103, 100, 107, 111, 111, 112, 111, 110, 111, 118, 115, 114, 107, 28.23506 + 102, 72, 30, 17, 9, 8, 5, 2, 4, 8, 18, 22, 40, 37, 44, 140, 28.23507 + 190, 197, 198, 202, 209, 147, 108, 100, 110, 126, 122, 127, 135, 136, 144, 140, 28.23508 + 153, 148, 138, 143, 126, 138, 148, 144, 103, 67, 38, 24, 69, 106, 85, 100, 28.23509 + 79, 93, 89, 97, 71, 79, 73, 20, 69, 135, 144, 150, 144, 139, 136, 143, 28.23510 + 138, 116, 115, 118, 118, 123, 126, 126, 123, 122, 127, 119, 102, 96, 89, 81, 28.23511 + 85, 97, 114, 123, 130, 134, 135, 132, 127, 132, 132, 135, 138, 136, 132, 132, 28.23512 + 123, 96, 28, 9, 1, 2, 5, 6, 44, 99, 132, 194, 204, 201, 198, 214, 28.23513 + 187, 114, 106, 120, 128, 126, 140, 147, 150, 146, 147, 143, 139, 135, 128, 120, 28.23514 + 118, 114, 126, 111, 76, 53, 53, 56, 68, 61, 88, 29, 12, 67, 42, 28, 28.23515 + 33, 45, 28, 29, 32, 22, 14, 17, 55, 71, 49, 45, 34, 33, 32, 22, 28.23516 + 24, 32, 20, 38, 34, 28, 20, 20, 21, 26, 14, 42, 51, 158, 220, 225, 28.23517 + 208, 142, 146, 150, 163, 171, 163, 155, 143, 118, 13, 5, 2, 12, 24, 14, 28.23518 + 17, 72, 75, 76, 80, 72, 77, 84, 85, 59, 25, 99, 99, 93, 97, 84, 28.23519 + 80, 72, 67, 59, 55, 45, 38, 42, 48, 65, 83, 96, 97, 103, 103, 103, 28.23520 + 104, 106, 111, 119, 124, 128, 135, 153, 150, 144, 142, 115, 91, 76, 57, 34, 28.23521 + 29, 28, 22, 17, 18, 22, 21, 42, 49, 41, 146, 191, 212, 193, 194, 178, 28.23522 + 155, 134, 122, 108, 89, 83, 79, 81, 85, 88, 91, 91, 95, 99, 100, 99, 28.23523 + 102, 104, 110, 115, 119, 118, 116, 120, 126, 126, 114, 80, 42, 72, 154, 175, 28.23524 + 181, 155, 158, 135, 128, 107, 110, 115, 110, 116, 115, 119, 111, 122, 123, 114, 28.23525 + 127, 123, 118, 108, 106, 106, 102, 93, 45, 25, 33, 48, 41, 45, 100, 171, 28.23526 + 178, 104, 115, 112, 115, 116, 116, 114, 118, 112, 112, 108, 106, 103, 103, 100, 28.23527 + 99, 91, 80, 46, 42, 48, 60, 92, 155, 173, 147, 153, 157, 155, 150, 159, 28.23528 + 165, 166, 170, 167, 158, 140, 136, 139, 123, 85, 46, 32, 26, 26, 49, 63, 28.23529 + 65, 126, 195, 175, 151, 162, 182, 195, 198, 201, 201, 201, 199, 201, 198, 199, 28.23530 + 199, 201, 199, 191, 182, 177, 174, 165, 139, 111, 37, 18, 18, 18, 20, 20, 28.23531 + 34, 32, 34, 42, 40, 41, 34, 33, 36, 40, 49, 33, 36, 42, 36, 34, 28.23532 + 44, 42, 38, 37, 48, 52, 57, 44, 45, 44, 42, 41, 44, 22, 2, 24, 28.23533 + 52, 56, 36, 40, 61, 154, 202, 198, 204, 218, 242, 212, 206, 198, 148, 120, 28.23534 + 114, 122, 132, 135, 134, 136, 136, 134, 132, 126, 130, 131, 128, 127, 123, 120, 28.23535 + 122, 123, 124, 122, 122, 123, 123, 132, 140, 159, 182, 187, 201, 201, 198, 195, 28.23536 + 197, 198, 185, 158, 119, 114, 116, 123, 123, 97, 25, 16, 12, 28, 32, 59, 28.23537 + 165, 186, 191, 201, 193, 201, 170, 139, 127, 111, 128, 115, 116, 118, 124, 107, 28.23538 + 112, 100, 107, 100, 120, 100, 103, 89, 79, 20, 18, 38, 26, 25, 9, 72, 28.23539 + 67, 34, 30, 26, 30, 29, 34, 25, 26, 21, 20, 20, 22, 22, 18, 20, 28.23540 + 18, 17, 17, 16, 16, 13, 14, 18, 14, 13, 10, 10, 10, 6, 6, 6, 28.23541 + 2, 2, 5, 13, 20, 13, 41, 33, 52, 136, 181, 181, 178, 193, 201, 171, 28.23542 + 122, 104, 112, 122, 116, 120, 127, 126, 128, 126, 130, 139, 135, 124, 140, 135, 28.23543 + 118, 115, 116, 153, 130, 37, 25, 57, 53, 57, 59, 63, 64, 68, 68, 73, 28.23544 + 73, 56, 16, 38, 84, 97, 88, 87, 83, 91, 95, 99, 103, 103, 99, 99, 28.23545 + 111, 112, 103, 99, 96, 73, 34, 13, 8, 4, 4, 5, 12, 53, 91, 100, 28.23546 + 104, 106, 102, 95, 96, 100, 99, 96, 95, 92, 80, 38, 16, 2, 0, 1, 28.23547 + 12, 10, 14, 84, 140, 179, 195, 183, 181, 201, 199, 134, 110, 114, 124, 118, 28.23548 + 119, 118, 127, 128, 130, 134, 130, 122, 124, 123, 123, 120, 112, 112, 128, 114, 28.23549 + 96, 84, 85, 76, 75, 57, 46, 14, 38, 53, 60, 45, 46, 32, 28, 29, 28.23550 + 24, 10, 16, 51, 40, 26, 33, 22, 16, 14, 21, 21, 21, 26, 22, 18, 28.23551 + 17, 13, 18, 14, 17, 37, 48, 63, 178, 225, 225, 204, 138, 143, 148, 158, 28.23552 + 166, 161, 154, 139, 96, 8, 4, 2, 6, 16, 10, 5, 84, 80, 79, 80, 28.23553 + 79, 87, 80, 73, 56, 25, 88, 95, 77, 83, 75, 75, 64, 65, 57, 56, 28.23554 + 49, 45, 40, 38, 33, 32, 33, 41, 46, 57, 68, 88, 88, 89, 89, 85, 28.23555 + 85, 80, 77, 76, 72, 63, 42, 32, 28, 24, 24, 18, 16, 16, 25, 33, 28.23556 + 33, 29, 37, 26, 26, 80, 126, 144, 139, 134, 135, 87, 75, 64, 59, 44, 28.23557 + 25, 28, 28, 24, 22, 22, 25, 26, 28, 33, 33, 30, 37, 68, 77, 84, 28.23558 + 81, 80, 79, 95, 88, 61, 33, 46, 68, 130, 131, 142, 139, 143, 115, 92, 28.23559 + 81, 81, 96, 97, 96, 93, 99, 100, 106, 103, 102, 102, 104, 99, 92, 89, 28.23560 + 89, 83, 49, 22, 22, 20, 24, 44, 34, 42, 103, 122, 104, 110, 88, 106, 28.23561 + 107, 111, 108, 110, 107, 103, 96, 96, 89, 97, 89, 92, 91, 76, 24, 26, 28.23562 + 59, 40, 67, 93, 157, 166, 146, 153, 151, 151, 151, 154, 154, 153, 148, 143, 28.23563 + 138, 138, 123, 97, 49, 32, 30, 30, 32, 38, 68, 61, 161, 183, 178, 163, 28.23564 + 118, 150, 181, 183, 187, 190, 189, 187, 185, 182, 175, 174, 177, 178, 177, 174, 28.23565 + 159, 143, 131, 103, 40, 21, 18, 18, 24, 28, 25, 30, 22, 22, 33, 34, 28.23566 + 38, 37, 42, 42, 56, 44, 46, 44, 48, 46, 46, 44, 44, 42, 37, 45, 28.23567 + 44, 30, 26, 13, 13, 20, 20, 18, 18, 2, 9, 13, 21, 38, 33, 57, 28.23568 + 144, 193, 209, 197, 199, 173, 143, 128, 119, 111, 120, 114, 130, 128, 128, 128, 28.23569 + 130, 130, 130, 126, 126, 123, 122, 122, 120, 112, 118, 119, 119, 119, 119, 116, 28.23570 + 119, 116, 114, 112, 111, 111, 112, 115, 116, 116, 114, 111, 111, 110, 111, 111, 28.23571 + 118, 120, 126, 119, 49, 13, 14, 17, 28, 30, 128, 186, 171, 182, 197, 169, 28.23572 + 135, 128, 111, 110, 96, 103, 100, 97, 104, 100, 97, 88, 93, 93, 92, 89, 28.23573 + 97, 91, 83, 76, 20, 21, 33, 26, 20, 12, 61, 65, 30, 24, 24, 24, 28.23574 + 22, 22, 20, 17, 14, 12, 13, 12, 12, 10, 12, 9, 9, 9, 6, 6, 28.23575 + 6, 8, 6, 5, 4, 5, 2, 2, 2, 4, 8, 6, 9, 17, 13, 16, 28.23576 + 26, 41, 41, 87, 166, 173, 185, 177, 154, 140, 115, 104, 114, 110, 116, 110, 28.23577 + 114, 111, 110, 112, 119, 124, 126, 119, 116, 126, 126, 114, 111, 120, 126, 100, 28.23578 + 24, 46, 55, 52, 52, 46, 55, 53, 55, 51, 60, 56, 28, 17, 20, 24, 28.23579 + 21, 16, 13, 14, 12, 9, 9, 10, 9, 8, 6, 8, 5, 5, 5, 5, 28.23580 + 4, 2, 2, 2, 1, 1, 2, 4, 2, 4, 2, 1, 1, 2, 2, 1, 28.23581 + 1, 2, 1, 1, 1, 2, 0, 0, 0, 1, 4, 8, 12, 14, 89, 157, 28.23582 + 198, 189, 195, 185, 154, 126, 115, 108, 112, 115, 108, 106, 114, 118, 116, 120, 28.23583 + 123, 119, 115, 112, 112, 108, 100, 104, 114, 111, 106, 77, 69, 56, 60, 51, 28.23584 + 33, 29, 25, 26, 25, 29, 28, 28, 25, 36, 28, 24, 13, 9, 45, 41, 28.23585 + 20, 14, 40, 71, 115, 153, 140, 84, 18, 30, 34, 9, 14, 14, 22, 14, 28.23586 + 41, 36, 88, 202, 224, 230, 199, 135, 138, 143, 154, 163, 159, 148, 135, 60, 28.23587 + 2, 5, 2, 2, 1, 1, 0, 29, 29, 32, 51, 52, 53, 61, 57, 53, 28.23588 + 24, 38, 44, 40, 41, 42, 40, 38, 36, 34, 34, 33, 30, 26, 29, 25, 28.23589 + 24, 22, 24, 22, 25, 24, 21, 21, 21, 24, 22, 24, 22, 22, 22, 22, 28.23590 + 22, 22, 17, 14, 12, 14, 21, 33, 25, 34, 40, 37, 25, 25, 36, 26, 28.23591 + 14, 26, 34, 33, 30, 28, 18, 26, 28, 20, 14, 16, 16, 16, 14, 13, 28.23592 + 14, 13, 13, 13, 16, 14, 12, 8, 12, 14, 13, 13, 18, 22, 5, 9, 28.23593 + 20, 20, 25, 14, 32, 42, 44, 63, 29, 4, 5, 16, 16, 13, 13, 14, 28.23594 + 17, 13, 13, 16, 13, 13, 14, 16, 20, 20, 18, 18, 17, 22, 26, 34, 28.23595 + 44, 41, 34, 26, 33, 30, 24, 20, 9, 10, 16, 13, 12, 10, 10, 8, 28.23596 + 6, 10, 6, 5, 10, 14, 6, 6, 13, 10, 12, 16, 13, 25, 59, 91, 28.23597 + 151, 154, 142, 140, 144, 143, 146, 148, 146, 143, 138, 134, 123, 85, 44, 32, 28.23598 + 29, 29, 28, 18, 41, 64, 60, 147, 181, 194, 175, 132, 107, 108, 124, 119, 28.23599 + 119, 112, 127, 122, 118, 115, 115, 115, 118, 114, 112, 108, 65, 49, 28, 20, 28.23600 + 18, 20, 21, 18, 18, 10, 8, 18, 8, 8, 8, 8, 20, 6, 6, 5, 28.23601 + 6, 8, 6, 6, 8, 8, 6, 6, 10, 21, 22, 34, 37, 65, 75, 79, 28.23602 + 80, 64, 57, 30, 5, 45, 55, 52, 28, 34, 55, 88, 120, 139, 126, 124, 28.23603 + 110, 93, 92, 93, 99, 100, 102, 126, 126, 120, 124, 124, 126, 126, 124, 124, 28.23604 + 123, 120, 122, 122, 118, 120, 120, 120, 120, 118, 116, 116, 115, 116, 115, 115, 28.23605 + 115, 114, 112, 114, 114, 112, 112, 112, 114, 116, 119, 123, 126, 122, 88, 21, 28.23606 + 12, 13, 14, 20, 29, 87, 151, 173, 138, 131, 102, 88, 83, 84, 85, 88, 28.23607 + 89, 89, 91, 91, 93, 92, 91, 91, 92, 87, 87, 83, 81, 76, 48, 21, 28.23608 + 18, 20, 21, 21, 10, 59, 22, 22, 14, 14, 13, 17, 9, 10, 12, 10, 28.23609 + 6, 6, 5, 5, 5, 6, 6, 6, 6, 5, 5, 5, 6, 8, 9, 10, 28.23610 + 10, 10, 10, 12, 13, 16, 17, 25, 12, 17, 29, 49, 41, 51, 143, 140, 28.23611 + 130, 123, 118, 108, 107, 99, 93, 99, 100, 106, 103, 100, 102, 108, 106, 106, 28.23612 + 111, 110, 108, 108, 104, 100, 95, 93, 95, 92, 33, 38, 5, 4, 5, 4, 28.23613 + 2, 4, 2, 4, 4, 1, 4, 2, 1, 10, 9, 6, 2, 9, 4, 0, 28.23614 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 2, 28.23615 + 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.23616 + 0, 0, 1, 4, 4, 13, 9, 12, 17, 107, 150, 170, 154, 157, 131, 112, 28.23617 + 106, 100, 97, 100, 93, 99, 100, 96, 96, 106, 107, 110, 107, 106, 102, 96, 28.23618 + 96, 97, 95, 93, 87, 53, 20, 9, 5, 5, 5, 5, 4, 5, 4, 2, 28.23619 + 4, 5, 5, 5, 5, 6, 6, 13, 9, 41, 14, 32, 75, 138, 158, 171, 28.23620 + 186, 182, 169, 100, 21, 17, 49, 65, 56, 57, 48, 34, 60, 112, 214, 230, 28.23621 + 230, 189, 132, 138, 142, 154, 161, 158, 146, 130, 28, 2, 4, 5, 9, 14, 28.23622 + 29, 41, 85, 84, 83, 79, 57, 32, 40, 26, 38, 13, 0, 2, 2, 16, 28.23623 + 1, 2, 9, 12, 2, 2, 9, 10, 10, 6, 10, 10, 10, 5, 5, 14, 28.23624 + 13, 13, 12, 12, 12, 10, 9, 9, 9, 9, 9, 12, 10, 13, 20, 21, 28.23625 + 30, 28, 37, 42, 40, 44, 48, 51, 63, 59, 30, 34, 42, 52, 37, 33, 28.23626 + 29, 28, 32, 30, 28, 26, 28, 29, 29, 26, 25, 24, 22, 25, 29, 26, 28.23627 + 24, 22, 20, 17, 14, 20, 29, 33, 14, 24, 37, 17, 20, 17, 38, 34, 28.23628 + 44, 48, 46, 40, 33, 30, 34, 33, 30, 28, 32, 30, 30, 28, 29, 32, 28.23629 + 32, 29, 30, 30, 24, 26, 26, 30, 24, 29, 55, 48, 49, 49, 52, 46, 28.23630 + 33, 38, 33, 33, 36, 38, 36, 30, 32, 32, 30, 26, 29, 30, 28, 25, 28.23631 + 32, 32, 29, 28, 34, 41, 42, 53, 57, 48, 46, 92, 140, 148, 158, 142, 28.23632 + 147, 142, 146, 136, 139, 126, 114, 67, 36, 32, 30, 21, 20, 18, 32, 56, 28.23633 + 63, 128, 165, 190, 199, 171, 119, 81, 61, 59, 55, 51, 51, 41, 41, 38, 28.23634 + 42, 36, 38, 37, 37, 33, 36, 30, 30, 29, 32, 22, 36, 29, 33, 29, 28.23635 + 29, 29, 29, 28, 21, 20, 18, 6, 5, 26, 83, 110, 72, 77, 79, 79, 28.23636 + 73, 64, 69, 77, 83, 103, 89, 102, 103, 75, 81, 76, 84, 72, 45, 9, 28.23637 + 55, 49, 61, 57, 26, 41, 55, 73, 60, 60, 60, 52, 52, 44, 40, 37, 28.23638 + 32, 34, 32, 33, 28, 28, 25, 24, 22, 26, 22, 26, 24, 24, 22, 24, 28.23639 + 21, 22, 20, 22, 21, 26, 24, 25, 24, 21, 24, 29, 34, 55, 89, 104, 28.23640 + 114, 116, 118, 120, 120, 123, 124, 120, 106, 34, 13, 10, 12, 17, 28, 26, 28.23641 + 45, 53, 52, 56, 59, 60, 17, 12, 12, 12, 9, 9, 9, 9, 6, 8, 28.23642 + 8, 8, 9, 9, 9, 10, 9, 9, 10, 10, 8, 5, 8, 6, 8, 12, 28.23643 + 14, 30, 38, 37, 45, 51, 41, 36, 36, 36, 25, 5, 32, 46, 40, 38, 28.23644 + 26, 29, 25, 30, 20, 10, 16, 28, 49, 55, 52, 49, 45, 51, 45, 46, 28.23645 + 48, 41, 36, 8, 33, 49, 51, 41, 65, 88, 84, 93, 81, 76, 71, 69, 28.23646 + 68, 61, 38, 51, 36, 40, 36, 32, 28, 30, 29, 29, 28, 29, 28, 28, 28.23647 + 29, 29, 28, 32, 32, 28, 8, 10, 55, 60, 61, 67, 68, 61, 72, 60, 28.23648 + 56, 56, 21, 5, 53, 56, 63, 52, 56, 45, 51, 21, 12, 9, 8, 4, 28.23649 + 9, 9, 8, 6, 5, 4, 6, 5, 2, 5, 4, 4, 2, 9, 12, 10, 28.23650 + 5, 13, 10, 5, 2, 2, 5, 4, 6, 8, 8, 6, 6, 6, 8, 18, 28.23651 + 24, 10, 17, 13, 96, 99, 104, 95, 102, 88, 76, 52, 40, 38, 25, 24, 28.23652 + 22, 25, 18, 18, 18, 18, 13, 16, 14, 10, 9, 10, 13, 12, 10, 10, 28.23653 + 8, 9, 22, 24, 34, 36, 21, 32, 40, 46, 52, 48, 45, 24, 22, 17, 28.23654 + 12, 33, 34, 28, 13, 44, 81, 144, 189, 191, 187, 198, 186, 147, 100, 24, 28.23655 + 24, 49, 63, 53, 41, 51, 49, 81, 159, 220, 230, 232, 175, 130, 132, 140, 28.23656 + 151, 158, 153, 142, 106, 12, 4, 2, 5, 20, 41, 48, 55, 139, 128, 122, 28.23657 + 116, 88, 77, 71, 64, 42, 5, 26, 89, 103, 87, 83, 93, 104, 89, 85, 28.23658 + 84, 84, 84, 85, 91, 89, 89, 77, 65, 40, 33, 26, 18, 17, 16, 17, 28.23659 + 18, 25, 26, 24, 26, 29, 37, 36, 38, 41, 40, 38, 46, 57, 68, 75, 28.23660 + 72, 83, 76, 85, 71, 52, 25, 80, 68, 45, 41, 41, 37, 38, 37, 38, 28.23661 + 40, 37, 26, 34, 44, 46, 41, 40, 41, 44, 37, 29, 22, 18, 17, 10, 28.23662 + 13, 26, 28, 24, 21, 28, 26, 26, 30, 24, 5, 56, 45, 38, 37, 36, 28.23663 + 33, 41, 33, 29, 29, 32, 29, 28, 18, 21, 33, 26, 29, 30, 32, 25, 28.23664 + 32, 26, 25, 26, 51, 55, 48, 49, 49, 52, 49, 52, 44, 10, 67, 56, 28.23665 + 40, 41, 30, 34, 37, 33, 30, 33, 33, 32, 34, 34, 37, 37, 34, 36, 28.23666 + 37, 37, 46, 51, 53, 41, 48, 127, 136, 136, 140, 131, 128, 126, 124, 107, 28.23667 + 64, 49, 38, 36, 32, 34, 22, 18, 29, 56, 85, 76, 131, 186, 195, 201, 28.23668 + 158, 99, 51, 34, 29, 57, 34, 34, 32, 38, 40, 36, 33, 34, 36, 34, 28.23669 + 34, 28, 30, 26, 28, 25, 28, 24, 18, 24, 29, 29, 28, 32, 33, 28, 28.23670 + 36, 18, 6, 5, 91, 107, 97, 91, 77, 83, 79, 97, 88, 92, 52, 72, 28.23671 + 80, 77, 76, 84, 84, 73, 72, 80, 84, 44, 5, 34, 61, 57, 65, 48, 28.23672 + 25, 37, 41, 25, 20, 20, 34, 22, 24, 22, 22, 22, 22, 21, 17, 17, 28.23673 + 16, 20, 13, 14, 14, 17, 14, 17, 14, 14, 14, 14, 14, 13, 10, 13, 28.23674 + 13, 12, 12, 12, 12, 12, 12, 12, 13, 17, 22, 30, 41, 55, 69, 79, 28.23675 + 87, 87, 71, 33, 13, 13, 12, 17, 18, 32, 33, 34, 28, 29, 30, 25, 28.23676 + 33, 25, 25, 24, 20, 24, 21, 18, 17, 18, 17, 16, 16, 13, 14, 14, 28.23677 + 13, 13, 12, 12, 13, 12, 12, 18, 12, 18, 14, 56, 84, 87, 84, 81, 28.23678 + 87, 79, 76, 77, 49, 26, 1, 65, 51, 45, 41, 38, 49, 59, 40, 44, 28.23679 + 29, 16, 60, 71, 65, 63, 61, 68, 63, 63, 61, 55, 49, 36, 8, 55, 28.23680 + 48, 44, 63, 75, 64, 69, 61, 64, 61, 68, 45, 28, 29, 33, 29, 22, 28.23681 + 20, 18, 17, 17, 18, 16, 16, 16, 16, 12, 12, 10, 8, 12, 9, 9, 28.23682 + 6, 9, 12, 69, 71, 65, 64, 59, 55, 53, 56, 61, 72, 24, 5, 72, 28.23683 + 56, 42, 56, 46, 48, 45, 41, 37, 26, 12, 4, 18, 42, 36, 22, 26, 28.23684 + 37, 36, 22, 26, 33, 26, 16, 14, 26, 30, 29, 38, 34, 32, 26, 26, 28.23685 + 12, 2, 10, 22, 30, 24, 22, 26, 18, 21, 22, 22, 12, 17, 6, 69, 28.23686 + 77, 63, 45, 51, 48, 44, 26, 29, 29, 30, 20, 22, 20, 25, 18, 18, 28.23687 + 16, 16, 13, 17, 14, 13, 17, 20, 17, 17, 17, 21, 26, 24, 26, 32, 28.23688 + 38, 37, 26, 40, 57, 56, 26, 26, 49, 56, 51, 36, 34, 16, 12, 49, 28.23689 + 76, 134, 190, 189, 174, 187, 136, 112, 91, 99, 24, 26, 49, 76, 75, 80, 28.23690 + 65, 51, 88, 191, 222, 229, 228, 159, 128, 134, 139, 150, 151, 144, 134, 61, 28.23691 + 5, 5, 2, 4, 21, 44, 41, 69, 107, 107, 111, 108, 95, 108, 91, 83, 28.23692 + 45, 2, 107, 102, 93, 91, 91, 91, 85, 92, 89, 88, 83, 84, 85, 83, 28.23693 + 79, 80, 80, 79, 91, 84, 61, 40, 36, 24, 42, 57, 59, 56, 56, 53, 28.23694 + 52, 49, 52, 48, 42, 29, 36, 71, 80, 88, 83, 85, 81, 84, 87, 80, 28.23695 + 64, 28, 79, 69, 67, 61, 63, 61, 57, 56, 51, 49, 45, 26, 42, 56, 28.23696 + 65, 61, 60, 56, 59, 52, 42, 41, 38, 33, 10, 48, 49, 48, 59, 32, 28.23697 + 37, 55, 34, 32, 33, 12, 56, 71, 61, 64, 61, 49, 48, 36, 32, 38, 28.23698 + 30, 12, 21, 67, 36, 60, 45, 52, 38, 51, 38, 25, 17, 14, 26, 46, 28.23699 + 56, 55, 52, 52, 63, 52, 46, 40, 9, 67, 71, 41, 48, 40, 40, 40, 28.23700 + 40, 45, 37, 37, 26, 18, 32, 36, 45, 34, 40, 41, 48, 45, 46, 51, 28.23701 + 51, 41, 103, 132, 115, 84, 69, 65, 61, 51, 49, 42, 42, 34, 30, 33, 28.23702 + 26, 21, 37, 51, 55, 77, 79, 173, 186, 198, 197, 150, 97, 40, 34, 34, 28.23703 + 33, 34, 33, 36, 42, 41, 41, 59, 84, 124, 136, 154, 162, 153, 142, 97, 28.23704 + 52, 36, 29, 24, 26, 26, 21, 14, 17, 16, 21, 30, 21, 16, 17, 96, 28.23705 + 107, 68, 56, 55, 59, 55, 51, 75, 48, 63, 88, 88, 75, 95, 67, 69, 28.23706 + 63, 71, 73, 88, 41, 4, 45, 51, 72, 49, 41, 45, 25, 21, 21, 33, 28.23707 + 37, 13, 17, 14, 16, 18, 9, 14, 12, 12, 9, 6, 9, 9, 10, 12, 28.23708 + 12, 12, 10, 10, 10, 10, 12, 9, 12, 12, 12, 14, 14, 20, 14, 17, 28.23709 + 17, 20, 14, 13, 10, 13, 13, 14, 14, 16, 14, 14, 16, 13, 13, 12, 28.23710 + 12, 8, 17, 30, 40, 37, 30, 30, 28, 26, 24, 25, 24, 22, 28, 21, 28.23711 + 24, 21, 20, 20, 17, 17, 14, 14, 14, 14, 16, 13, 12, 14, 12, 14, 28.23712 + 16, 22, 26, 26, 22, 36, 67, 83, 79, 69, 68, 67, 69, 67, 75, 55, 28.23713 + 30, 2, 57, 53, 60, 33, 48, 48, 44, 40, 44, 34, 16, 63, 80, 84, 28.23714 + 79, 72, 77, 83, 77, 64, 64, 55, 38, 6, 55, 46, 51, 85, 88, 72, 28.23715 + 64, 87, 57, 26, 29, 32, 33, 36, 24, 21, 20, 17, 17, 17, 17, 16, 28.23716 + 13, 14, 14, 14, 12, 9, 9, 9, 10, 10, 8, 8, 10, 21, 68, 64, 28.23717 + 53, 56, 59, 52, 44, 44, 46, 91, 22, 6, 67, 64, 65, 64, 61, 60, 28.23718 + 53, 40, 41, 29, 12, 4, 37, 46, 45, 34, 32, 21, 26, 33, 24, 16, 28.23719 + 17, 9, 21, 40, 59, 53, 55, 41, 48, 42, 25, 14, 5, 42, 51, 32, 28.23720 + 32, 26, 26, 26, 25, 18, 16, 13, 17, 9, 48, 91, 65, 57, 42, 37, 28.23721 + 44, 29, 29, 29, 28, 21, 21, 24, 25, 17, 20, 20, 17, 20, 16, 16, 28.23722 + 18, 21, 18, 22, 24, 20, 21, 25, 26, 34, 25, 33, 13, 18, 57, 55, 28.23723 + 77, 51, 25, 22, 26, 18, 22, 18, 12, 46, 79, 85, 171, 189, 173, 170, 28.23724 + 139, 96, 89, 93, 68, 40, 32, 45, 69, 45, 51, 46, 63, 120, 204, 222, 28.23725 + 229, 222, 142, 127, 132, 139, 148, 147, 140, 112, 20, 4, 5, 1, 4, 22, 28.23726 + 41, 44, 59, 81, 88, 84, 77, 81, 79, 102, 79, 45, 10, 91, 108, 96, 28.23727 + 107, 92, 89, 91, 84, 80, 77, 61, 49, 64, 84, 97, 97, 91, 93, 72, 28.23728 + 80, 84, 67, 41, 29, 51, 63, 60, 63, 59, 61, 61, 57, 57, 61, 33, 28.23729 + 28, 57, 85, 92, 88, 87, 80, 85, 84, 76, 64, 53, 30, 75, 73, 67, 28.23730 + 67, 68, 63, 67, 56, 57, 59, 48, 28, 51, 55, 63, 63, 64, 75, 71, 28.23731 + 68, 56, 55, 41, 33, 13, 51, 60, 49, 59, 59, 53, 51, 55, 34, 30, 28.23732 + 9, 49, 69, 85, 88, 89, 64, 65, 53, 48, 34, 32, 9, 51, 75, 73, 28.23733 + 65, 63, 59, 59, 60, 49, 44, 28, 13, 34, 53, 59, 44, 42, 51, 55, 28.23734 + 53, 57, 28, 2, 75, 76, 71, 53, 33, 37, 28, 40, 34, 32, 36, 24, 28.23735 + 16, 30, 67, 56, 56, 55, 55, 49, 49, 48, 51, 59, 41, 119, 127, 108, 28.23736 + 85, 75, 61, 60, 53, 49, 41, 41, 33, 22, 21, 28, 33, 51, 53, 87, 28.23737 + 81, 112, 170, 198, 197, 201, 136, 96, 63, 59, 60, 49, 45, 49, 64, 80, 28.23738 + 112, 146, 179, 204, 216, 221, 225, 224, 217, 217, 208, 183, 153, 120, 65, 40, 28.23739 + 25, 22, 20, 20, 16, 12, 26, 17, 13, 4, 69, 107, 55, 45, 57, 60, 28.23740 + 56, 51, 71, 51, 67, 77, 85, 80, 85, 92, 83, 73, 75, 73, 81, 38, 28.23741 + 5, 45, 49, 57, 48, 41, 24, 25, 26, 22, 21, 20, 12, 55, 34, 26, 28.23742 + 24, 26, 40, 24, 30, 26, 25, 20, 21, 26, 16, 25, 29, 28, 25, 22, 28.23743 + 22, 21, 18, 18, 20, 20, 32, 28, 30, 28, 30, 28, 28, 25, 28, 18, 28.23744 + 16, 13, 14, 13, 10, 12, 12, 12, 13, 12, 13, 10, 5, 22, 37, 40, 28.23745 + 42, 45, 41, 44, 38, 38, 28, 26, 24, 52, 53, 34, 32, 30, 24, 25, 28.23746 + 29, 26, 10, 6, 25, 32, 36, 22, 17, 22, 29, 18, 33, 26, 30, 20, 28.23747 + 30, 65, 77, 69, 71, 73, 64, 64, 53, 61, 65, 22, 4, 37, 60, 56, 28.23748 + 55, 51, 61, 65, 44, 57, 29, 16, 59, 81, 81, 84, 80, 79, 85, 73, 28.23749 + 79, 63, 55, 45, 8, 53, 40, 45, 57, 68, 107, 83, 64, 29, 33, 30, 28.23750 + 46, 64, 61, 56, 40, 44, 44, 45, 37, 36, 25, 25, 24, 26, 22, 21, 28.23751 + 20, 17, 17, 16, 14, 18, 13, 12, 10, 51, 75, 84, 56, 40, 52, 73, 28.23752 + 49, 51, 71, 21, 8, 57, 63, 60, 56, 55, 49, 81, 36, 38, 37, 12, 28.23753 + 5, 41, 46, 32, 44, 28, 33, 17, 18, 20, 29, 14, 10, 38, 57, 63, 28.23754 + 60, 42, 30, 32, 53, 25, 16, 12, 46, 45, 29, 24, 25, 20, 32, 20, 28.23755 + 21, 12, 13, 16, 5, 51, 72, 44, 63, 49, 56, 56, 36, 28, 29, 32, 28.23756 + 25, 29, 28, 13, 20, 20, 20, 21, 18, 22, 21, 16, 21, 26, 26, 28, 28.23757 + 24, 25, 26, 30, 28, 45, 34, 22, 5, 46, 59, 51, 42, 42, 16, 26, 28.23758 + 16, 12, 21, 10, 51, 81, 102, 183, 179, 177, 146, 103, 93, 89, 110, 57, 28.23759 + 40, 29, 51, 56, 57, 48, 48, 64, 143, 212, 220, 226, 205, 131, 128, 134, 28.23760 + 140, 147, 143, 135, 71, 9, 5, 4, 1, 2, 22, 34, 26, 77, 77, 75, 28.23761 + 88, 88, 84, 80, 84, 65, 42, 20, 72, 102, 103, 96, 106, 92, 95, 91, 28.23762 + 93, 79, 60, 44, 83, 92, 93, 84, 77, 77, 80, 77, 79, 80, 49, 30, 28.23763 + 64, 72, 71, 72, 67, 67, 65, 60, 59, 69, 33, 26, 59, 88, 89, 95, 28.23764 + 93, 72, 73, 76, 75, 68, 45, 33, 73, 68, 65, 68, 64, 72, 67, 61, 28.23765 + 60, 64, 51, 36, 53, 63, 76, 65, 53, 76, 64, 80, 64, 57, 49, 37, 28.23766 + 14, 44, 64, 63, 53, 49, 49, 51, 55, 38, 34, 9, 60, 77, 83, 80, 28.23767 + 83, 88, 67, 73, 57, 48, 34, 6, 60, 73, 85, 73, 69, 68, 72, 65, 28.23768 + 64, 60, 26, 13, 57, 60, 67, 61, 45, 53, 72, 60, 52, 40, 8, 79, 28.23769 + 75, 64, 59, 44, 36, 37, 48, 51, 48, 44, 28, 13, 61, 69, 71, 68, 28.23770 + 67, 57, 59, 53, 55, 60, 57, 51, 108, 124, 111, 97, 84, 69, 63, 56, 28.23771 + 46, 41, 41, 24, 21, 30, 30, 49, 49, 63, 83, 71, 84, 182, 191, 208, 28.23772 + 177, 131, 99, 115, 119, 108, 118, 126, 150, 169, 194, 208, 218, 224, 225, 224, 28.23773 + 222, 220, 220, 220, 217, 212, 213, 206, 206, 175, 108, 42, 22, 21, 17, 24, 28.23774 + 18, 24, 32, 5, 4, 68, 103, 67, 51, 84, 59, 80, 67, 55, 42, 67, 28.23775 + 93, 89, 72, 83, 77, 93, 88, 65, 65, 76, 46, 8, 52, 48, 59, 52, 28.23776 + 52, 34, 33, 14, 24, 13, 29, 21, 41, 60, 52, 32, 36, 28, 38, 32, 28.23777 + 32, 32, 33, 20, 18, 32, 33, 34, 37, 30, 30, 30, 32, 32, 33, 28, 28.23778 + 26, 32, 38, 33, 34, 29, 32, 29, 30, 28, 18, 32, 37, 37, 37, 32, 28.23779 + 33, 20, 17, 17, 12, 13, 10, 6, 28, 40, 46, 41, 36, 37, 40, 44, 28.23780 + 41, 33, 26, 28, 48, 60, 38, 49, 46, 45, 33, 26, 28, 24, 8, 40, 28.23781 + 40, 37, 38, 38, 34, 32, 28, 28, 25, 25, 24, 21, 60, 75, 76, 69, 28.23782 + 68, 61, 63, 52, 59, 42, 29, 5, 53, 60, 72, 56, 48, 48, 53, 60, 28.23783 + 53, 33, 22, 71, 84, 77, 76, 79, 84, 87, 84, 83, 75, 61, 41, 6, 28.23784 + 53, 44, 55, 38, 52, 72, 93, 81, 29, 33, 28, 49, 67, 55, 52, 51, 28.23785 + 52, 49, 51, 52, 51, 33, 33, 22, 34, 33, 29, 28, 28, 24, 21, 25, 28.23786 + 25, 14, 12, 44, 65, 73, 60, 56, 48, 57, 48, 55, 53, 83, 28, 9, 28.23787 + 69, 64, 59, 76, 51, 53, 48, 53, 37, 37, 13, 4, 40, 52, 34, 71, 28.23788 + 40, 41, 40, 32, 24, 26, 14, 6, 49, 63, 64, 33, 26, 25, 26, 46, 28.23789 + 25, 12, 5, 38, 45, 30, 26, 22, 21, 16, 18, 17, 16, 16, 18, 10, 28.23790 + 57, 76, 64, 42, 49, 46, 60, 44, 46, 25, 24, 10, 8, 22, 18, 21, 28.23791 + 18, 21, 14, 17, 20, 10, 12, 21, 38, 41, 40, 44, 22, 16, 18, 22, 28.23792 + 29, 30, 25, 9, 52, 53, 49, 42, 32, 20, 24, 18, 14, 10, 10, 52, 28.23793 + 81, 106, 185, 179, 146, 112, 96, 85, 103, 100, 73, 37, 30, 38, 61, 52, 28.23794 + 40, 53, 96, 187, 216, 222, 228, 185, 124, 127, 132, 146, 143, 138, 114, 20, 28.23795 + 5, 5, 4, 1, 2, 12, 40, 21, 49, 108, 76, 76, 80, 73, 81, 81, 28.23796 + 88, 38, 2, 72, 108, 100, 97, 104, 99, 92, 89, 92, 71, 61, 42, 80, 28.23797 + 87, 76, 84, 85, 87, 103, 91, 80, 83, 60, 38, 71, 76, 80, 73, 80, 28.23798 + 73, 75, 64, 57, 64, 34, 24, 73, 91, 88, 89, 87, 71, 84, 77, 80, 28.23799 + 65, 56, 37, 69, 76, 61, 77, 76, 61, 64, 69, 67, 68, 55, 36, 59, 28.23800 + 72, 71, 68, 53, 65, 61, 75, 71, 64, 52, 37, 5, 46, 52, 63, 56, 28.23801 + 51, 49, 52, 55, 38, 34, 10, 55, 76, 79, 71, 67, 67, 68, 64, 63, 28.23802 + 49, 32, 8, 68, 85, 83, 73, 73, 67, 77, 75, 68, 59, 37, 14, 57, 28.23803 + 63, 69, 53, 64, 53, 65, 59, 49, 41, 6, 76, 67, 59, 53, 53, 41, 28.23804 + 42, 56, 59, 53, 44, 26, 13, 63, 65, 75, 69, 71, 59, 63, 63, 56, 28.23805 + 49, 46, 44, 95, 119, 116, 92, 96, 88, 72, 67, 52, 48, 25, 17, 25, 28.23806 + 45, 52, 52, 65, 53, 77, 69, 80, 155, 201, 204, 171, 119, 91, 111, 182, 28.23807 + 186, 191, 199, 204, 209, 218, 220, 220, 220, 213, 208, 193, 190, 190, 179, 170, 28.23808 + 159, 162, 166, 182, 198, 197, 151, 61, 29, 20, 16, 20, 20, 18, 1, 5, 28.23809 + 89, 114, 80, 56, 55, 67, 52, 65, 64, 37, 67, 88, 84, 68, 65, 67, 28.23810 + 68, 72, 72, 69, 71, 46, 9, 55, 34, 57, 44, 57, 52, 34, 30, 16, 28.23811 + 12, 21, 21, 49, 53, 37, 45, 45, 32, 38, 44, 46, 38, 29, 13, 30, 28.23812 + 48, 64, 60, 34, 34, 34, 40, 40, 38, 37, 21, 30, 57, 49, 51, 49, 28.23813 + 34, 33, 33, 30, 29, 21, 30, 44, 38, 42, 36, 36, 30, 28, 28, 25, 28.23814 + 25, 12, 5, 33, 40, 45, 51, 55, 55, 44, 30, 45, 34, 28, 22, 45, 28.23815 + 45, 61, 44, 41, 44, 41, 33, 34, 26, 4, 46, 40, 25, 41, 37, 22, 28.23816 + 24, 38, 30, 36, 28, 24, 16, 59, 75, 77, 59, 57, 51, 49, 61, 41, 28.23817 + 48, 30, 1, 55, 60, 69, 53, 42, 38, 42, 49, 63, 36, 24, 77, 85, 28.23818 + 93, 87, 80, 73, 75, 84, 85, 80, 67, 41, 6, 53, 40, 45, 36, 60, 28.23819 + 68, 67, 49, 30, 34, 33, 52, 63, 61, 53, 52, 49, 52, 46, 45, 52, 28.23820 + 52, 32, 26, 34, 37, 32, 30, 29, 29, 26, 30, 28, 17, 8, 59, 51, 28.23821 + 71, 42, 52, 51, 56, 53, 48, 53, 65, 32, 9, 68, 64, 72, 75, 76, 28.23822 + 75, 48, 53, 38, 37, 14, 4, 32, 53, 44, 46, 51, 38, 33, 38, 36, 28.23823 + 28, 14, 14, 53, 63, 59, 25, 24, 37, 37, 40, 24, 16, 5, 56, 33, 28.23824 + 36, 17, 17, 16, 17, 17, 20, 18, 16, 17, 8, 41, 85, 63, 55, 46, 28.23825 + 59, 37, 48, 40, 37, 26, 6, 10, 18, 29, 25, 16, 16, 14, 17, 21, 28.23826 + 12, 13, 42, 40, 40, 40, 30, 41, 36, 41, 28, 29, 25, 25, 16, 51, 28.23827 + 56, 44, 40, 32, 18, 12, 16, 16, 13, 12, 44, 77, 84, 178, 177, 131, 28.23828 + 102, 97, 95, 118, 112, 73, 25, 30, 40, 55, 52, 46, 72, 159, 202, 208, 28.23829 + 222, 217, 146, 122, 127, 139, 142, 136, 123, 48, 6, 4, 4, 2, 1, 4, 28.23830 + 20, 34, 25, 17, 108, 77, 76, 81, 85, 88, 83, 80, 37, 2, 80, 100, 28.23831 + 95, 104, 102, 100, 97, 97, 85, 71, 56, 38, 79, 75, 84, 83, 96, 93, 28.23832 + 95, 85, 87, 80, 72, 41, 75, 85, 87, 85, 77, 80, 71, 67, 61, 60, 28.23833 + 32, 48, 80, 87, 87, 76, 81, 61, 65, 65, 67, 67, 64, 38, 60, 73, 28.23834 + 63, 56, 61, 68, 72, 77, 64, 64, 65, 34, 59, 69, 67, 61, 60, 72, 28.23835 + 67, 79, 71, 71, 53, 37, 8, 42, 60, 65, 52, 67, 55, 51, 52, 38, 28.23836 + 36, 14, 56, 80, 72, 72, 72, 73, 72, 67, 67, 51, 32, 8, 63, 67, 28.23837 + 76, 76, 77, 77, 81, 77, 76, 59, 32, 25, 61, 60, 69, 59, 65, 65, 28.23838 + 79, 56, 46, 36, 6, 76, 76, 63, 57, 53, 69, 69, 69, 68, 63, 45, 28.23839 + 26, 10, 65, 72, 72, 67, 68, 64, 67, 72, 57, 59, 61, 40, 83, 111, 28.23840 + 112, 102, 84, 92, 77, 71, 56, 64, 29, 14, 38, 51, 65, 68, 65, 53, 28.23841 + 100, 72, 93, 108, 177, 197, 174, 115, 103, 111, 148, 183, 193, 195, 202, 205, 28.23842 + 206, 208, 199, 193, 185, 166, 147, 143, 143, 144, 136, 140, 136, 143, 146, 144, 28.23843 + 155, 179, 169, 73, 18, 16, 22, 18, 16, 12, 14, 91, 95, 81, 56, 57, 28.23844 + 65, 53, 64, 59, 37, 64, 88, 79, 69, 75, 68, 67, 63, 77, 76, 68, 28.23845 + 45, 9, 46, 33, 67, 72, 60, 40, 29, 22, 21, 13, 26, 9, 42, 59, 28.23846 + 44, 46, 34, 37, 42, 44, 44, 41, 28, 14, 42, 60, 59, 63, 65, 45, 28.23847 + 44, 42, 38, 44, 33, 22, 56, 52, 56, 52, 51, 48, 36, 34, 36, 32, 28.23848 + 21, 41, 40, 49, 44, 46, 42, 36, 29, 30, 30, 25, 12, 5, 37, 46, 28.23849 + 45, 42, 38, 44, 44, 30, 37, 37, 29, 18, 46, 45, 56, 52, 57, 60, 28.23850 + 44, 53, 32, 26, 4, 51, 41, 34, 40, 34, 44, 37, 44, 40, 41, 34, 28.23851 + 24, 29, 59, 83, 59, 60, 56, 65, 52, 55, 64, 42, 32, 1, 65, 60, 28.23852 + 55, 52, 61, 65, 67, 64, 51, 38, 21, 72, 80, 88, 99, 92, 85, 83, 28.23853 + 84, 77, 83, 67, 41, 5, 52, 48, 46, 42, 71, 26, 29, 28, 29, 36, 28.23854 + 30, 52, 61, 59, 63, 48, 61, 55, 53, 46, 49, 48, 40, 26, 30, 34, 28.23855 + 44, 41, 44, 38, 37, 36, 28, 18, 8, 51, 75, 69, 51, 55, 71, 64, 28.23856 + 63, 49, 45, 67, 24, 12, 64, 68, 55, 53, 56, 56, 56, 53, 37, 37, 28.23857 + 17, 5, 41, 61, 32, 40, 34, 55, 44, 45, 37, 24, 13, 20, 53, 67, 28.23858 + 38, 30, 26, 41, 42, 41, 22, 12, 5, 52, 57, 34, 30, 22, 25, 24, 28.23859 + 24, 26, 21, 18, 18, 9, 48, 72, 81, 59, 53, 42, 29, 36, 36, 33, 28.23860 + 22, 5, 22, 41, 38, 32, 26, 26, 25, 32, 22, 12, 8, 41, 34, 37, 28.23861 + 26, 36, 41, 28, 40, 32, 30, 25, 14, 16, 49, 65, 32, 34, 25, 20, 28.23862 + 14, 16, 14, 14, 10, 45, 67, 79, 127, 171, 143, 107, 99, 102, 126, 114, 28.23863 + 53, 44, 36, 45, 49, 41, 69, 134, 198, 208, 212, 220, 193, 124, 123, 128, 28.23864 + 143, 136, 128, 80, 10, 4, 8, 4, 2, 1, 2, 21, 34, 38, 18, 76, 28.23865 + 80, 85, 99, 96, 89, 81, 80, 38, 4, 92, 103, 97, 102, 102, 100, 91, 28.23866 + 99, 79, 68, 56, 36, 75, 100, 108, 100, 100, 97, 87, 83, 81, 81, 75, 28.23867 + 44, 45, 69, 75, 69, 73, 72, 72, 65, 64, 60, 32, 52, 85, 89, 72, 28.23868 + 69, 68, 71, 69, 71, 69, 64, 61, 38, 55, 80, 68, 65, 56, 67, 53, 28.23869 + 61, 53, 52, 65, 38, 63, 72, 68, 67, 71, 73, 71, 60, 63, 73, 53, 28.23870 + 36, 6, 46, 53, 65, 56, 56, 61, 52, 49, 42, 37, 9, 45, 79, 73, 28.23871 + 73, 75, 73, 69, 71, 63, 49, 33, 5, 44, 83, 71, 83, 77, 80, 81, 28.23872 + 80, 73, 72, 30, 10, 55, 67, 72, 65, 60, 61, 57, 59, 55, 28, 1, 28.23873 + 72, 69, 52, 63, 56, 52, 51, 56, 53, 60, 44, 25, 9, 67, 59, 65, 28.23874 + 65, 64, 65, 73, 85, 63, 59, 59, 46, 63, 107, 110, 100, 81, 88, 77, 28.23875 + 76, 68, 60, 34, 17, 45, 64, 67, 61, 57, 56, 100, 77, 102, 77, 147, 28.23876 + 205, 177, 107, 99, 100, 120, 130, 157, 166, 175, 178, 179, 173, 158, 140, 134, 28.23877 + 138, 139, 140, 144, 154, 157, 161, 146, 139, 134, 128, 135, 136, 173, 146, 69, 28.23878 + 16, 22, 16, 12, 8, 5, 75, 89, 79, 44, 55, 69, 57, 64, 55, 38, 28.23879 + 64, 84, 87, 79, 68, 75, 69, 68, 81, 75, 71, 44, 12, 38, 40, 42, 28.23880 + 46, 51, 51, 30, 22, 21, 13, 36, 8, 33, 48, 53, 52, 68, 65, 75, 28.23881 + 73, 69, 45, 34, 6, 46, 60, 55, 65, 55, 53, 55, 67, 71, 49, 37, 28.23882 + 20, 55, 49, 65, 52, 46, 52, 46, 45, 36, 33, 24, 42, 45, 45, 45, 28.23883 + 41, 41, 38, 36, 32, 29, 24, 13, 4, 37, 48, 40, 34, 44, 60, 37, 28.23884 + 40, 41, 34, 29, 18, 55, 52, 55, 46, 51, 51, 52, 55, 40, 21, 4, 28.23885 + 49, 48, 57, 45, 42, 45, 52, 40, 38, 37, 42, 29, 18, 41, 75, 81, 28.23886 + 81, 79, 73, 80, 81, 59, 55, 22, 0, 49, 61, 60, 68, 77, 64, 63, 28.23887 + 61, 48, 38, 21, 56, 85, 83, 85, 81, 83, 84, 85, 93, 88, 80, 41, 28.23888 + 5, 52, 36, 52, 65, 37, 56, 38, 44, 28, 36, 34, 51, 56, 69, 69, 28.23889 + 53, 56, 61, 64, 57, 59, 51, 48, 29, 34, 44, 38, 41, 45, 42, 41, 28.23890 + 41, 32, 17, 9, 64, 73, 67, 75, 59, 60, 57, 48, 48, 55, 68, 24, 28.23891 + 14, 36, 68, 57, 48, 56, 56, 52, 46, 37, 34, 14, 5, 45, 53, 44, 28.23892 + 40, 45, 46, 49, 37, 29, 20, 17, 12, 53, 64, 38, 25, 38, 33, 38, 28.23893 + 37, 22, 14, 4, 51, 38, 40, 33, 45, 44, 53, 51, 45, 26, 20, 20, 28.23894 + 9, 42, 76, 87, 85, 61, 64, 32, 32, 34, 28, 20, 14, 33, 33, 22, 28.23895 + 30, 40, 40, 41, 29, 18, 12, 9, 46, 33, 33, 18, 42, 41, 34, 38, 28.23896 + 28, 30, 29, 21, 9, 48, 63, 40, 32, 20, 20, 17, 30, 10, 17, 9, 28.23897 + 33, 52, 72, 95, 131, 166, 111, 99, 126, 136, 96, 45, 45, 57, 44, 53, 28.23898 + 71, 132, 186, 208, 209, 220, 209, 150, 120, 127, 138, 135, 124, 96, 20, 5, 28.23899 + 5, 5, 5, 2, 1, 1, 14, 33, 5, 28, 77, 79, 79, 77, 79, 81, 28.23900 + 83, 69, 33, 5, 65, 103, 96, 97, 96, 97, 100, 89, 71, 65, 57, 29, 28.23901 + 84, 83, 91, 81, 95, 84, 83, 76, 72, 72, 68, 67, 46, 51, 60, 59, 28.23902 + 69, 71, 72, 61, 63, 61, 28, 55, 81, 80, 69, 75, 76, 75, 69, 75, 28.23903 + 65, 81, 57, 42, 55, 79, 75, 77, 67, 72, 61, 59, 57, 67, 51, 42, 28.23904 + 67, 76, 71, 80, 63, 64, 73, 69, 71, 56, 53, 40, 10, 38, 60, 63, 28.23905 + 63, 57, 64, 55, 55, 44, 40, 13, 72, 80, 85, 87, 77, 73, 73, 72, 28.23906 + 68, 48, 33, 4, 61, 84, 72, 79, 81, 80, 88, 80, 76, 65, 42, 12, 28.23907 + 59, 73, 77, 63, 64, 61, 61, 65, 49, 44, 5, 67, 81, 67, 81, 69, 28.23908 + 81, 72, 71, 67, 63, 44, 25, 9, 71, 68, 69, 77, 64, 63, 61, 72, 28.23909 + 72, 57, 63, 45, 55, 99, 102, 97, 97, 84, 80, 79, 73, 65, 36, 17, 28.23910 + 53, 67, 68, 68, 69, 91, 75, 100, 65, 107, 84, 190, 189, 120, 108, 102, 28.23911 + 107, 114, 127, 131, 132, 136, 132, 130, 123, 115, 114, 112, 116, 130, 140, 150, 28.23912 + 154, 155, 158, 143, 140, 142, 139, 128, 138, 167, 80, 17, 16, 17, 13, 5, 28.23913 + 5, 67, 93, 75, 57, 59, 61, 59, 65, 49, 32, 61, 83, 93, 93, 81, 28.23914 + 80, 83, 83, 87, 73, 69, 44, 17, 37, 38, 51, 40, 37, 26, 24, 12, 28.23915 + 18, 24, 21, 28, 41, 69, 67, 65, 65, 59, 67, 51, 44, 45, 29, 9, 28.23916 + 44, 64, 67, 55, 56, 56, 53, 57, 55, 44, 37, 20, 72, 46, 69, 45, 28.23917 + 56, 49, 48, 46, 49, 36, 22, 37, 45, 38, 38, 38, 44, 36, 36, 33, 28.23918 + 33, 25, 14, 5, 37, 46, 40, 30, 40, 36, 36, 28, 29, 34, 26, 20, 28.23919 + 51, 61, 57, 48, 46, 48, 53, 55, 36, 28, 12, 49, 46, 45, 59, 46, 28.23920 + 45, 45, 48, 46, 51, 52, 40, 22, 38, 61, 71, 72, 69, 52, 56, 51, 28.23921 + 51, 44, 32, 4, 52, 60, 59, 64, 61, 57, 51, 49, 51, 44, 32, 36, 28.23922 + 73, 77, 79, 77, 76, 79, 79, 76, 77, 69, 46, 5, 49, 48, 33, 38, 28.23923 + 28, 33, 33, 33, 33, 37, 37, 33, 57, 46, 49, 45, 51, 46, 49, 46, 28.23924 + 51, 48, 48, 41, 32, 32, 32, 28, 32, 36, 37, 42, 32, 21, 9, 63, 28.23925 + 73, 61, 49, 48, 55, 48, 49, 57, 68, 69, 34, 12, 21, 63, 71, 63, 28.23926 + 71, 59, 53, 33, 34, 25, 14, 5, 38, 49, 53, 63, 49, 53, 46, 41, 28.23927 + 38, 18, 16, 18, 52, 76, 51, 24, 26, 41, 42, 53, 26, 10, 4, 33, 28.23928 + 51, 37, 36, 38, 30, 26, 30, 33, 40, 21, 22, 9, 38, 64, 77, 71, 28.23929 + 53, 55, 24, 32, 33, 29, 16, 13, 40, 29, 32, 26, 25, 20, 22, 26, 28.23930 + 20, 9, 9, 45, 26, 36, 38, 38, 32, 33, 33, 30, 30, 32, 22, 8, 28.23931 + 46, 53, 33, 17, 26, 20, 17, 12, 14, 9, 14, 34, 40, 34, 59, 77, 28.23932 + 155, 143, 100, 110, 132, 123, 56, 42, 52, 67, 107, 148, 185, 198, 204, 217, 28.23933 + 213, 162, 119, 123, 135, 131, 120, 87, 18, 6, 5, 6, 5, 4, 2, 1, 28.23934 + 1, 20, 25, 57, 65, 67, 65, 65, 65, 65, 65, 63, 61, 32, 13, 37, 28.23935 + 71, 103, 107, 87, 88, 71, 69, 69, 51, 51, 29, 79, 77, 75, 76, 76, 28.23936 + 79, 75, 64, 59, 57, 59, 56, 60, 71, 71, 61, 57, 57, 57, 55, 60, 28.23937 + 48, 26, 71, 80, 87, 69, 69, 61, 64, 61, 60, 59, 64, 63, 52, 45, 28.23938 + 61, 60, 55, 60, 59, 73, 64, 63, 67, 64, 57, 56, 55, 59, 68, 61, 28.23939 + 56, 55, 55, 53, 52, 49, 38, 5, 36, 60, 56, 55, 53, 53, 53, 55, 28.23940 + 56, 37, 16, 51, 68, 65, 67, 67, 68, 64, 77, 68, 48, 30, 6, 65, 28.23941 + 84, 79, 73, 72, 76, 68, 75, 73, 61, 34, 6, 56, 61, 72, 71, 63, 28.23942 + 71, 71, 64, 46, 42, 5, 61, 68, 67, 67, 64, 64, 63, 61, 59, 59, 28.23943 + 42, 24, 8, 65, 67, 72, 68, 73, 68, 75, 61, 68, 68, 60, 48, 45, 28.23944 + 76, 100, 87, 81, 71, 59, 61, 65, 63, 41, 16, 46, 64, 84, 75, 95, 28.23945 + 107, 77, 112, 112, 100, 69, 111, 174, 132, 100, 102, 108, 111, 112, 107, 120, 28.23946 + 116, 120, 112, 108, 104, 104, 108, 147, 153, 128, 148, 159, 154, 154, 162, 147, 28.23947 + 146, 143, 143, 139, 163, 81, 13, 12, 14, 13, 2, 4, 63, 85, 75, 60, 28.23948 + 55, 61, 59, 65, 52, 30, 63, 69, 83, 80, 73, 72, 68, 71, 68, 59, 28.23949 + 56, 45, 16, 8, 28, 26, 9, 5, 20, 21, 2, 5, 12, 14, 30, 44, 28.23950 + 60, 68, 56, 53, 48, 48, 45, 45, 49, 26, 9, 38, 59, 69, 61, 64, 28.23951 + 67, 57, 61, 59, 46, 38, 21, 52, 45, 60, 48, 40, 40, 33, 30, 40, 28.23952 + 37, 33, 33, 28, 32, 29, 29, 26, 25, 26, 28, 25, 24, 13, 4, 38, 28.23953 + 53, 22, 22, 25, 21, 22, 24, 24, 26, 24, 25, 25, 36, 48, 48, 36, 28.23954 + 34, 33, 32, 26, 29, 4, 46, 45, 42, 40, 40, 41, 42, 40, 40, 37, 28.23955 + 38, 37, 34, 26, 24, 30, 32, 30, 28, 30, 30, 30, 32, 34, 1, 26, 28.23956 + 52, 53, 51, 49, 49, 29, 26, 29, 33, 46, 48, 40, 52, 64, 57, 60, 28.23957 + 59, 63, 69, 68, 57, 41, 5, 41, 29, 26, 29, 29, 29, 32, 34, 20, 28.23958 + 18, 20, 38, 38, 41, 41, 45, 42, 44, 44, 45, 44, 45, 44, 44, 42, 28.23959 + 48, 42, 42, 40, 30, 32, 40, 30, 24, 12, 60, 75, 55, 60, 64, 48, 28.23960 + 67, 71, 57, 49, 46, 36, 13, 16, 59, 55, 59, 32, 29, 29, 20, 24, 28.23961 + 20, 14, 4, 36, 41, 36, 21, 34, 34, 37, 26, 26, 21, 16, 17, 49, 28.23962 + 61, 32, 33, 29, 38, 40, 56, 18, 13, 4, 48, 41, 42, 36, 32, 29, 28.23963 + 29, 29, 26, 24, 24, 25, 10, 21, 34, 57, 51, 34, 24, 29, 25, 22, 28.23964 + 29, 25, 13, 40, 30, 34, 24, 32, 25, 24, 21, 20, 10, 9, 38, 40, 28.23965 + 36, 32, 33, 33, 32, 25, 28, 24, 22, 14, 9, 40, 49, 24, 9, 10, 28.23966 + 13, 16, 14, 13, 10, 12, 24, 33, 32, 37, 57, 73, 170, 112, 107, 138, 28.23967 + 130, 124, 120, 123, 150, 177, 182, 193, 195, 209, 206, 162, 116, 122, 130, 119, 28.23968 + 111, 81, 22, 6, 6, 6, 5, 4, 4, 4, 1, 1, 12, 14, 12, 10, 28.23969 + 38, 36, 34, 30, 26, 25, 21, 20, 16, 18, 20, 26, 32, 30, 38, 40, 28.23970 + 48, 38, 48, 52, 42, 28, 42, 34, 40, 37, 30, 30, 36, 29, 28, 25, 28.23971 + 29, 28, 34, 28, 34, 34, 49, 67, 69, 69, 49, 38, 26, 61, 67, 69, 28.23972 + 61, 59, 53, 63, 60, 55, 64, 63, 59, 55, 59, 64, 72, 64, 63, 63, 28.23973 + 61, 61, 61, 59, 57, 57, 56, 56, 34, 36, 25, 18, 17, 17, 16, 16, 28.23974 + 13, 17, 5, 14, 16, 18, 20, 21, 25, 44, 52, 45, 37, 20, 5, 42, 28.23975 + 60, 32, 40, 46, 60, 32, 45, 44, 24, 6, 32, 44, 36, 36, 44, 44, 28.23976 + 37, 37, 45, 45, 18, 8, 32, 41, 30, 41, 37, 37, 28, 42, 34, 20, 28.23977 + 6, 16, 38, 38, 37, 36, 40, 40, 38, 38, 41, 40, 21, 8, 48, 71, 28.23978 + 65, 51, 49, 61, 61, 44, 49, 56, 61, 52, 56, 59, 53, 49, 56, 53, 28.23979 + 55, 48, 45, 45, 36, 16, 49, 75, 76, 65, 64, 79, 80, 76, 85, 107, 28.23980 + 108, 142, 174, 167, 112, 106, 97, 108, 99, 56, 45, 45, 46, 45, 42, 44, 28.23981 + 44, 81, 103, 163, 123, 126, 153, 155, 159, 157, 154, 161, 147, 147, 140, 162, 28.23982 + 91, 20, 12, 13, 2, 9, 8, 22, 42, 64, 83, 81, 75, 84, 55, 48, 28.23983 + 30, 55, 56, 71, 69, 65, 52, 46, 44, 40, 40, 30, 22, 21, 25, 10, 28.23984 + 13, 12, 10, 8, 9, 6, 6, 5, 5, 6, 14, 40, 46, 46, 44, 40, 28.23985 + 60, 46, 56, 42, 16, 9, 32, 55, 49, 42, 51, 52, 49, 46, 49, 46, 28.23986 + 38, 24, 63, 45, 37, 40, 38, 38, 38, 38, 36, 34, 33, 32, 33, 32, 28.23987 + 32, 32, 30, 29, 28, 28, 28, 25, 25, 4, 18, 21, 17, 17, 20, 21, 28.23988 + 20, 21, 21, 24, 21, 21, 24, 24, 25, 25, 24, 24, 24, 25, 24, 21, 28.23989 + 4, 25, 29, 26, 28, 28, 29, 29, 29, 30, 30, 32, 32, 26, 30, 33, 28.23990 + 32, 28, 34, 33, 29, 24, 34, 29, 22, 9, 33, 20, 17, 16, 20, 12, 28.23991 + 18, 21, 13, 13, 22, 13, 28, 34, 30, 28, 42, 48, 44, 33, 48, 49, 28.23992 + 29, 6, 37, 9, 10, 10, 10, 8, 8, 9, 9, 6, 6, 8, 6, 6, 28.23993 + 6, 8, 8, 8, 8, 10, 10, 9, 10, 12, 14, 14, 16, 18, 21, 40, 28.23994 + 38, 45, 32, 21, 9, 51, 69, 56, 67, 71, 64, 63, 51, 52, 36, 33, 28.23995 + 24, 20, 12, 18, 18, 20, 22, 21, 14, 14, 12, 10, 17, 6, 12, 12, 28.23996 + 12, 13, 13, 20, 28, 17, 14, 17, 16, 25, 32, 28, 21, 29, 20, 24, 28.23997 + 28, 25, 20, 12, 4, 38, 36, 38, 38, 33, 30, 29, 28, 29, 26, 25, 28.23998 + 26, 24, 25, 22, 22, 22, 22, 20, 22, 21, 22, 21, 20, 14, 36, 21, 28.23999 + 25, 24, 22, 21, 14, 18, 20, 12, 6, 5, 8, 6, 8, 8, 6, 5, 28.24000 + 6, 20, 18, 17, 9, 9, 33, 14, 9, 8, 10, 9, 5, 8, 8, 6, 28.24001 + 21, 24, 12, 26, 26, 37, 42, 88, 132, 112, 123, 148, 151, 159, 167, 174, 28.24002 + 181, 191, 194, 205, 198, 165, 120, 120, 119, 110, 96, 60, 18, 9, 6, 8, 28.24003 + 4, 5, 5, 6, 2, 4, 0, 0, 0, 0, 0, 65, 60, 75, 77, 69, 28.24004 + 63, 84, 80, 29, 6, 44, 73, 68, 52, 63, 57, 33, 29, 34, 32, 30, 28.24005 + 28, 17, 21, 40, 48, 63, 68, 81, 81, 96, 103, 84, 67, 85, 93, 85, 28.24006 + 76, 48, 37, 34, 30, 52, 45, 26, 42, 44, 36, 37, 29, 30, 22, 25, 28.24007 + 24, 22, 24, 21, 17, 16, 13, 13, 12, 12, 12, 12, 12, 12, 13, 12, 28.24008 + 10, 12, 21, 53, 69, 79, 77, 81, 80, 81, 75, 75, 42, 6, 79, 108, 28.24009 + 107, 89, 53, 52, 44, 28, 26, 37, 29, 5, 1, 13, 9, 10, 1, 10, 28.24010 + 6, 1, 1, 8, 6, 0, 0, 10, 2, 1, 1, 5, 2, 1, 4, 8, 28.24011 + 8, 1, 1, 4, 13, 1, 0, 4, 1, 2, 0, 0, 4, 0, 0, 0, 28.24012 + 1, 1, 1, 1, 1, 1, 2, 14, 5, 16, 13, 17, 16, 18, 24, 29, 28.24013 + 44, 44, 46, 55, 37, 36, 29, 33, 29, 28, 28, 22, 21, 32, 26, 28, 28.24014 + 18, 48, 52, 51, 60, 72, 72, 67, 96, 76, 110, 132, 146, 194, 189, 150, 28.24015 + 110, 100, 102, 100, 32, 29, 28, 37, 34, 32, 37, 36, 56, 95, 154, 161, 28.24016 + 126, 122, 150, 153, 155, 155, 162, 143, 144, 158, 151, 85, 17, 13, 10, 4, 28.24017 + 2, 13, 18, 20, 26, 18, 17, 29, 29, 37, 51, 30, 51, 52, 46, 33, 28.24018 + 34, 37, 34, 22, 24, 25, 18, 12, 6, 8, 9, 5, 4, 4, 2, 4, 28.24019 + 2, 2, 2, 1, 1, 1, 0, 0, 0, 0, 0, 2, 4, 5, 5, 5, 28.24020 + 6, 12, 14, 20, 18, 21, 21, 26, 34, 46, 49, 38, 25, 46, 34, 34, 28.24021 + 28, 21, 22, 20, 16, 14, 14, 10, 8, 8, 8, 5, 4, 4, 6, 2, 28.24022 + 2, 2, 6, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 2, 2, 28.24023 + 2, 4, 5, 1, 2, 8, 9, 1, 4, 12, 13, 10, 2, 10, 9, 1, 28.24024 + 1, 8, 1, 1, 5, 5, 0, 0, 0, 4, 1, 0, 2, 2, 0, 0, 28.24025 + 0, 2, 0, 0, 8, 10, 20, 40, 63, 42, 48, 57, 71, 60, 45, 25, 28.24026 + 17, 42, 60, 60, 45, 46, 22, 12, 12, 9, 13, 9, 5, 6, 26, 28, 28.24027 + 22, 22, 33, 29, 33, 26, 41, 20, 1, 16, 75, 96, 59, 69, 77, 88, 28.24028 + 67, 69, 64, 64, 60, 68, 76, 76, 65, 32, 22, 21, 21, 32, 18, 9, 28.24029 + 24, 22, 22, 21, 24, 21, 21, 22, 24, 22, 24, 21, 20, 16, 9, 6, 28.24030 + 14, 21, 10, 12, 38, 59, 64, 36, 6, 45, 59, 56, 22, 20, 18, 22, 28.24031 + 14, 20, 10, 34, 17, 12, 8, 8, 13, 8, 20, 17, 21, 13, 14, 17, 28.24032 + 6, 18, 18, 30, 14, 17, 16, 18, 16, 20, 20, 16, 16, 18, 18, 16, 28.24033 + 17, 20, 17, 16, 16, 21, 17, 6, 18, 36, 26, 26, 21, 25, 28, 30, 28.24034 + 41, 29, 21, 8, 45, 65, 65, 51, 64, 61, 59, 29, 21, 17, 8, 4, 28.24035 + 2, 9, 25, 33, 33, 36, 29, 32, 20, 28, 14, 14, 36, 75, 96, 65, 28.24036 + 63, 65, 53, 127, 151, 138, 146, 123, 126, 128, 144, 147, 154, 153, 155, 140, 28.24037 + 127, 131, 107, 72, 53, 29, 10, 9, 9, 8, 5, 9, 12, 18, 17, 21, 28.24038 + 1, 0, 18, 64, 64, 61, 115, 114, 110, 108, 96, 102, 96, 92, 61, 18, 28.24039 + 44, 59, 55, 59, 68, 63, 63, 64, 53, 55, 30, 18, 52, 112, 123, 115, 28.24040 + 116, 115, 114, 107, 103, 89, 102, 107, 106, 107, 99, 108, 106, 97, 87, 76, 28.24041 + 51, 48, 25, 28, 33, 42, 48, 61, 67, 91, 76, 83, 67, 48, 45, 53, 28.24042 + 100, 107, 100, 89, 112, 103, 80, 108, 95, 96, 88, 93, 91, 97, 112, 96, 28.24043 + 89, 76, 87, 91, 79, 87, 77, 45, 9, 80, 106, 106, 99, 107, 107, 83, 28.24044 + 93, 57, 38, 29, 42, 60, 60, 59, 51, 46, 34, 46, 36, 12, 14, 4, 28.24045 + 24, 108, 104, 72, 76, 99, 97, 76, 76, 73, 28, 2, 18, 67, 81, 53, 28.24046 + 56, 53, 52, 61, 52, 26, 10, 44, 57, 60, 46, 42, 46, 46, 44, 42, 28.24047 + 33, 29, 4, 6, 81, 99, 96, 80, 95, 69, 30, 21, 18, 17, 14, 16, 28.24048 + 20, 34, 52, 56, 61, 61, 65, 73, 71, 69, 51, 18, 85, 87, 88, 75, 28.24049 + 107, 80, 88, 75, 84, 126, 143, 199, 202, 190, 177, 119, 104, 100, 110, 30, 28.24050 + 28, 30, 29, 32, 26, 28, 42, 55, 92, 175, 177, 119, 126, 110, 127, 134, 28.24051 + 130, 126, 154, 150, 138, 97, 68, 17, 13, 5, 20, 16, 20, 69, 80, 63, 28.24052 + 63, 38, 30, 30, 28, 44, 22, 18, 29, 41, 44, 46, 37, 42, 41, 60, 28.24053 + 56, 59, 61, 96, 91, 100, 89, 97, 91, 84, 102, 97, 89, 91, 83, 81, 28.24054 + 84, 88, 100, 81, 85, 73, 44, 52, 41, 30, 2, 9, 69, 103, 108, 77, 28.24055 + 73, 61, 55, 45, 48, 30, 34, 26, 28, 42, 40, 44, 29, 41, 41, 64, 28.24056 + 36, 33, 37, 72, 96, 100, 83, 71, 84, 87, 80, 79, 85, 77, 13, 2, 28.24057 + 45, 104, 75, 77, 72, 80, 77, 85, 95, 91, 88, 77, 88, 89, 104, 88, 28.24058 + 87, 87, 88, 84, 81, 16, 5, 26, 91, 110, 84, 87, 89, 89, 87, 95, 28.24059 + 92, 93, 95, 89, 97, 108, 104, 102, 96, 92, 88, 80, 85, 80, 18, 1, 28.24060 + 44, 72, 83, 88, 81, 79, 83, 73, 80, 71, 34, 14, 44, 73, 59, 59, 28.24061 + 53, 51, 56, 48, 45, 36, 9, 28, 69, 79, 76, 75, 69, 64, 40, 42, 28.24062 + 53, 36, 22, 1, 80, 84, 67, 72, 68, 77, 65, 80, 63, 65, 59, 63, 28.24063 + 42, 59, 72, 60, 55, 65, 64, 57, 45, 26, 9, 8, 8, 6, 5, 6, 28.24064 + 6, 6, 5, 5, 6, 6, 6, 6, 13, 61, 76, 69, 61, 67, 57, 60, 28.24065 + 65, 64, 46, 6, 53, 69, 60, 55, 44, 42, 36, 48, 49, 38, 8, 13, 28.24066 + 63, 75, 72, 65, 59, 44, 22, 12, 12, 10, 4, 0, 0, 4, 2, 0, 28.24067 + 0, 2, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 6, 1, 1, 1, 28.24068 + 10, 2, 2, 17, 33, 49, 79, 80, 83, 81, 79, 73, 36, 26, 8, 53, 28.24069 + 65, 42, 48, 53, 45, 44, 42, 55, 46, 32, 10, 5, 45, 65, 73, 72, 28.24070 + 67, 75, 65, 65, 29, 16, 14, 100, 110, 88, 97, 85, 97, 89, 99, 41, 28.24071 + 61, 61, 88, 89, 99, 134, 135, 132, 127, 132, 131, 116, 84, 57, 22, 12, 28.24072 + 13, 14, 13, 8, 6, 10, 17, 13, 20, 29, 8, 1, 4, 42, 68, 83, 28.24073 + 84, 84, 91, 91, 103, 99, 104, 95, 100, 63, 18, 59, 61, 72, 52, 65, 28.24074 + 65, 48, 72, 72, 55, 29, 14, 103, 111, 104, 80, 85, 81, 75, 79, 84, 28.24075 + 79, 91, 67, 84, 89, 110, 111, 103, 106, 97, 97, 64, 59, 25, 69, 97, 28.24076 + 93, 97, 92, 97, 92, 106, 119, 83, 73, 73, 56, 72, 111, 103, 84, 89, 28.24077 + 104, 111, 118, 112, 96, 95, 97, 77, 79, 92, 92, 87, 88, 80, 76, 76, 28.24078 + 77, 80, 53, 6, 91, 108, 102, 104, 97, 97, 96, 102, 80, 56, 30, 53, 28.24079 + 65, 63, 68, 61, 60, 65, 75, 65, 30, 9, 12, 83, 107, 95, 89, 89, 28.24080 + 91, 96, 96, 93, 88, 33, 0, 89, 96, 100, 95, 88, 84, 88, 81, 76, 28.24081 + 51, 13, 67, 59, 56, 44, 48, 36, 37, 26, 25, 25, 32, 1, 5, 83, 28.24082 + 97, 99, 96, 93, 88, 85, 92, 84, 80, 67, 75, 59, 72, 89, 80, 88, 28.24083 + 84, 99, 100, 93, 84, 51, 18, 92, 104, 96, 112, 87, 100, 80, 83, 111, 28.24084 + 144, 197, 198, 194, 198, 170, 111, 104, 106, 110, 36, 28, 25, 30, 32, 28, 28.24085 + 46, 40, 60, 87, 186, 186, 123, 120, 127, 123, 92, 103, 99, 83, 76, 87, 28.24086 + 72, 49, 13, 13, 6, 18, 14, 45, 85, 77, 79, 71, 76, 76, 65, 68, 28.24087 + 36, 25, 42, 100, 104, 96, 95, 93, 104, 85, 99, 53, 83, 71, 69, 87, 28.24088 + 81, 93, 85, 77, 81, 88, 75, 72, 80, 73, 76, 65, 46, 33, 61, 38, 28.24089 + 42, 37, 36, 41, 33, 2, 8, 83, 118, 100, 96, 108, 107, 87, 96, 104, 28.24090 + 69, 52, 28, 55, 95, 99, 96, 95, 87, 95, 99, 93, 110, 89, 64, 61, 28.24091 + 65, 64, 61, 69, 76, 64, 77, 69, 76, 38, 4, 99, 91, 60, 71, 85, 28.24092 + 79, 85, 69, 81, 91, 88, 79, 59, 55, 61, 51, 46, 59, 59, 52, 48, 28.24093 + 18, 0, 97, 119, 115, 116, 112, 116, 111, 112, 106, 104, 108, 103, 80, 63, 28.24094 + 75, 77, 76, 81, 81, 81, 64, 63, 68, 18, 12, 60, 79, 80, 60, 52, 28.24095 + 61, 56, 57, 57, 76, 37, 20, 55, 71, 52, 59, 56, 69, 53, 34, 55, 28.24096 + 37, 9, 22, 73, 72, 57, 75, 61, 65, 71, 57, 36, 32, 22, 4, 79, 28.24097 + 79, 60, 59, 51, 64, 72, 72, 64, 73, 40, 32, 59, 72, 60, 57, 53, 28.24098 + 51, 49, 57, 32, 32, 12, 17, 80, 89, 71, 60, 81, 89, 85, 81, 85, 28.24099 + 77, 75, 68, 71, 75, 92, 93, 87, 83, 64, 60, 52, 59, 42, 8, 48, 28.24100 + 68, 65, 64, 61, 61, 56, 36, 30, 12, 8, 49, 104, 102, 110, 97, 100, 28.24101 + 89, 85, 77, 48, 22, 5, 57, 64, 75, 61, 76, 61, 69, 55, 65, 60, 28.24102 + 63, 51, 52, 85, 69, 83, 76, 83, 84, 63, 73, 100, 75, 25, 18, 60, 28.24103 + 83, 75, 72, 59, 57, 48, 57, 45, 21, 6, 51, 64, 67, 42, 48, 53, 28.24104 + 52, 48, 44, 41, 44, 13, 6, 55, 64, 72, 67, 67, 67, 59, 36, 22, 28.24105 + 12, 9, 108, 85, 96, 96, 95, 75, 130, 127, 56, 44, 36, 32, 38, 42, 28.24106 + 59, 65, 56, 59, 57, 51, 33, 18, 13, 10, 13, 13, 13, 2, 4, 9, 28.24107 + 20, 21, 13, 25, 10, 9, 0, 2, 38, 73, 55, 57, 77, 80, 87, 96, 28.24108 + 102, 96, 95, 97, 55, 8, 42, 59, 67, 60, 57, 52, 68, 63, 68, 49, 28.24109 + 29, 16, 107, 108, 83, 73, 87, 85, 102, 89, 73, 79, 83, 61, 81, 99, 28.24110 + 81, 97, 92, 97, 99, 96, 93, 57, 26, 87, 99, 104, 84, 80, 76, 76, 28.24111 + 71, 69, 64, 76, 71, 53, 108, 115, 106, 97, 103, 99, 97, 87, 100, 83, 28.24112 + 80, 60, 96, 99, 80, 75, 73, 79, 77, 81, 69, 77, 67, 49, 6, 84, 28.24113 + 97, 92, 104, 99, 96, 89, 92, 75, 57, 32, 59, 51, 72, 79, 77, 84, 28.24114 + 88, 80, 63, 33, 9, 2, 111, 104, 81, 84, 84, 81, 80, 75, 81, 77, 28.24115 + 33, 10, 95, 72, 77, 79, 83, 89, 88, 89, 71, 63, 17, 61, 49, 41, 28.24116 + 34, 21, 14, 34, 24, 13, 26, 34, 1, 2, 76, 96, 83, 79, 71, 77, 28.24117 + 89, 91, 83, 79, 52, 42, 87, 103, 99, 92, 85, 91, 87, 93, 93, 80, 28.24118 + 55, 20, 88, 93, 107, 99, 123, 104, 83, 91, 116, 173, 199, 197, 195, 194, 28.24119 + 138, 107, 106, 103, 97, 26, 24, 25, 28, 22, 36, 46, 36, 56, 88, 201, 28.24120 + 193, 175, 122, 124, 144, 135, 134, 134, 130, 130, 111, 100, 48, 13, 10, 6, 28.24121 + 21, 13, 48, 87, 69, 84, 75, 71, 65, 69, 61, 38, 22, 76, 88, 79, 28.24122 + 85, 88, 80, 72, 68, 65, 89, 73, 60, 83, 93, 95, 87, 75, 76, 60, 28.24123 + 67, 64, 76, 64, 61, 33, 52, 48, 28, 28, 30, 29, 41, 38, 45, 28, 28.24124 + 6, 6, 77, 123, 104, 108, 95, 93, 103, 103, 108, 112, 63, 29, 77, 100, 28.24125 + 103, 96, 107, 92, 99, 92, 81, 85, 57, 71, 88, 83, 80, 73, 68, 71, 28.24126 + 80, 80, 73, 75, 51, 5, 95, 57, 96, 88, 60, 64, 89, 75, 69, 69, 28.24127 + 72, 45, 64, 77, 88, 92, 81, 79, 80, 59, 57, 21, 8, 102, 115, 110, 28.24128 + 89, 93, 97, 104, 100, 107, 99, 104, 83, 61, 88, 89, 85, 80, 80, 81, 28.24129 + 69, 69, 64, 56, 25, 1, 59, 80, 71, 56, 59, 56, 72, 73, 67, 71, 28.24130 + 36, 18, 59, 64, 38, 57, 36, 44, 38, 36, 67, 37, 9, 21, 67, 65, 28.24131 + 61, 59, 57, 67, 64, 63, 36, 33, 21, 2, 51, 77, 64, 64, 48, 46, 28.24132 + 60, 45, 63, 48, 38, 29, 56, 72, 67, 59, 52, 61, 56, 48, 37, 32, 28.24133 + 12, 46, 92, 84, 83, 81, 84, 87, 84, 80, 71, 68, 64, 40, 72, 93, 28.24134 + 75, 61, 71, 64, 63, 67, 52, 69, 34, 9, 45, 51, 75, 38, 36, 37, 28.24135 + 22, 17, 22, 8, 5, 64, 104, 102, 84, 89, 91, 102, 95, 96, 68, 36, 28.24136 + 9, 49, 56, 33, 48, 63, 79, 44, 34, 56, 38, 37, 48, 57, 63, 85, 28.24137 + 99, 97, 95, 83, 81, 83, 93, 80, 46, 30, 64, 72, 55, 59, 59, 63, 28.24138 + 63, 64, 34, 22, 6, 55, 65, 65, 38, 38, 49, 37, 49, 51, 49, 41, 28.24139 + 12, 5, 57, 69, 63, 51, 57, 56, 52, 32, 18, 10, 6, 81, 97, 81, 28.24140 + 107, 115, 97, 97, 48, 65, 56, 51, 29, 33, 24, 24, 29, 20, 24, 20, 28.24141 + 21, 18, 16, 14, 10, 13, 5, 5, 13, 22, 21, 18, 17, 18, 26, 10, 28.24142 + 2, 0, 0, 44, 67, 48, 12, 112, 106, 102, 79, 80, 99, 91, 91, 55, 28.24143 + 6, 53, 64, 68, 81, 61, 57, 52, 60, 61, 34, 24, 14, 83, 111, 79, 28.24144 + 83, 69, 88, 76, 89, 73, 81, 85, 63, 77, 93, 75, 79, 87, 107, 100, 28.24145 + 87, 93, 65, 26, 83, 104, 79, 81, 75, 73, 73, 68, 65, 73, 71, 37, 28.24146 + 22, 111, 112, 100, 107, 95, 99, 95, 95, 107, 77, 81, 55, 91, 93, 77, 28.24147 + 79, 79, 73, 89, 89, 80, 72, 81, 45, 6, 80, 99, 93, 97, 92, 85, 28.24148 + 76, 106, 96, 59, 41, 37, 60, 61, 77, 69, 51, 63, 71, 57, 5, 9, 28.24149 + 2, 72, 103, 79, 84, 81, 88, 79, 87, 85, 84, 36, 1, 61, 85, 89, 28.24150 + 68, 67, 72, 73, 103, 84, 41, 20, 26, 46, 46, 33, 18, 24, 10, 17, 28.24151 + 16, 14, 22, 1, 4, 71, 92, 93, 72, 64, 69, 71, 69, 67, 51, 55, 28.24152 + 46, 102, 102, 91, 112, 83, 89, 87, 91, 93, 84, 60, 24, 93, 96, 92, 28.24153 + 69, 67, 85, 77, 103, 144, 202, 198, 198, 190, 140, 111, 100, 103, 114, 56, 28.24154 + 24, 24, 24, 25, 36, 38, 48, 46, 69, 92, 201, 202, 187, 122, 124, 128, 28.24155 + 143, 147, 148, 147, 143, 135, 116, 56, 12, 14, 5, 18, 10, 37, 83, 71, 28.24156 + 75, 73, 88, 87, 71, 67, 46, 24, 79, 81, 81, 72, 79, 85, 71, 68, 28.24157 + 71, 72, 69, 52, 79, 93, 69, 64, 81, 67, 71, 61, 61, 65, 68, 59, 28.24158 + 30, 49, 67, 64, 55, 34, 17, 46, 21, 22, 25, 6, 8, 91, 112, 95, 28.24159 + 99, 104, 106, 102, 99, 97, 93, 71, 36, 85, 102, 87, 84, 85, 83, 81, 28.24160 + 85, 77, 59, 52, 76, 91, 68, 76, 76, 75, 72, 73, 73, 76, 83, 32, 28.24161 + 5, 51, 87, 65, 79, 79, 76, 83, 87, 84, 76, 59, 41, 65, 77, 71, 28.24162 + 61, 52, 60, 61, 73, 65, 18, 6, 75, 115, 107, 114, 102, 100, 103, 108, 28.24163 + 106, 111, 93, 79, 60, 91, 95, 73, 81, 77, 79, 80, 81, 76, 52, 22, 28.24164 + 1, 57, 84, 69, 52, 53, 56, 61, 55, 60, 65, 38, 25, 44, 75, 42, 28.24165 + 44, 48, 42, 52, 41, 51, 29, 9, 21, 44, 68, 57, 49, 48, 59, 63, 28.24166 + 64, 36, 36, 22, 0, 49, 85, 52, 65, 46, 51, 56, 41, 63, 41, 33, 28.24167 + 21, 65, 73, 71, 61, 38, 45, 48, 60, 55, 45, 12, 63, 93, 77, 59, 28.24168 + 61, 64, 75, 64, 77, 68, 60, 42, 37, 72, 88, 69, 72, 68, 64, 55, 28.24169 + 53, 56, 64, 34, 10, 51, 57, 36, 38, 18, 25, 22, 24, 9, 6, 2, 28.24170 + 52, 102, 99, 83, 89, 88, 88, 84, 103, 75, 40, 6, 48, 49, 79, 64, 28.24171 + 73, 87, 34, 55, 57, 36, 44, 53, 42, 80, 97, 89, 88, 75, 84, 85, 28.24172 + 84, 81, 76, 55, 20, 72, 64, 61, 42, 46, 40, 46, 60, 44, 22, 9, 28.24173 + 49, 69, 72, 38, 37, 36, 41, 36, 33, 46, 26, 10, 4, 56, 60, 64, 28.24174 + 37, 42, 30, 30, 29, 21, 13, 9, 88, 93, 95, 79, 89, 68, 104, 64, 28.24175 + 67, 56, 53, 45, 36, 25, 24, 21, 21, 18, 17, 14, 16, 14, 13, 10, 28.24176 + 5, 6, 16, 21, 22, 30, 17, 14, 17, 30, 12, 21, 0, 0, 41, 67, 28.24177 + 37, 59, 77, 80, 80, 96, 80, 77, 89, 84, 60, 14, 52, 52, 64, 60, 28.24178 + 60, 63, 57, 69, 55, 40, 36, 13, 85, 103, 89, 71, 88, 77, 77, 72, 28.24179 + 75, 85, 75, 57, 87, 99, 93, 84, 93, 108, 95, 85, 102, 64, 32, 71, 28.24180 + 96, 75, 76, 71, 67, 84, 79, 77, 75, 68, 46, 20, 111, 112, 106, 99, 28.24181 + 92, 100, 83, 84, 88, 71, 73, 53, 91, 93, 79, 81, 79, 84, 69, 77, 28.24182 + 88, 71, 72, 48, 8, 83, 96, 85, 115, 100, 83, 89, 99, 88, 64, 42, 28.24183 + 55, 51, 56, 45, 32, 42, 45, 38, 49, 12, 6, 1, 71, 99, 76, 83, 28.24184 + 87, 85, 85, 89, 87, 80, 34, 1, 68, 81, 80, 76, 69, 67, 68, 83, 28.24185 + 77, 44, 18, 56, 65, 24, 29, 13, 32, 13, 12, 28, 24, 22, 0, 2, 28.24186 + 79, 93, 88, 69, 73, 76, 80, 75, 64, 55, 36, 42, 97, 106, 89, 97, 28.24187 + 77, 91, 103, 102, 91, 76, 56, 29, 79, 85, 93, 73, 68, 79, 67, 100, 28.24188 + 181, 198, 197, 194, 146, 115, 100, 107, 111, 65, 38, 21, 25, 25, 26, 36, 28.24189 + 41, 48, 48, 64, 89, 209, 206, 195, 120, 122, 128, 131, 139, 143, 146, 147, 28.24190 + 140, 120, 57, 10, 10, 5, 21, 9, 42, 84, 68, 73, 71, 87, 87, 68, 28.24191 + 79, 38, 24, 71, 79, 87, 96, 96, 100, 71, 63, 61, 71, 60, 49, 73, 28.24192 + 92, 75, 75, 61, 73, 75, 76, 60, 80, 65, 53, 36, 61, 57, 48, 28, 28.24193 + 21, 10, 16, 18, 25, 21, 4, 6, 91, 114, 111, 92, 114, 99, 97, 97, 28.24194 + 91, 96, 68, 42, 73, 97, 80, 77, 72, 95, 79, 67, 75, 63, 44, 79, 28.24195 + 93, 69, 68, 75, 67, 75, 69, 72, 76, 79, 33, 5, 55, 83, 92, 56, 28.24196 + 59, 81, 67, 68, 69, 71, 57, 38, 63, 93, 81, 48, 71, 87, 73, 56, 28.24197 + 56, 17, 0, 89, 110, 108, 106, 99, 100, 92, 93, 93, 102, 95, 75, 57, 28.24198 + 87, 85, 67, 69, 75, 79, 79, 81, 64, 61, 22, 1, 51, 75, 63, 60, 28.24199 + 52, 59, 45, 60, 60, 65, 42, 24, 48, 64, 34, 32, 46, 46, 45, 51, 28.24200 + 52, 29, 12, 18, 60, 67, 48, 75, 52, 68, 65, 41, 38, 37, 18, 1, 28.24201 + 73, 71, 57, 64, 44, 42, 52, 38, 73, 42, 33, 25, 56, 68, 80, 65, 28.24202 + 68, 56, 44, 42, 49, 32, 14, 53, 95, 88, 85, 67, 71, 52, 59, 59, 28.24203 + 65, 32, 30, 21, 67, 80, 59, 56, 53, 44, 52, 53, 65, 57, 37, 14, 28.24204 + 44, 61, 34, 29, 24, 38, 24, 25, 9, 6, 4, 56, 103, 100, 83, 99, 28.24205 + 89, 83, 81, 93, 67, 42, 6, 34, 41, 56, 67, 46, 51, 48, 57, 29, 28.24206 + 51, 49, 52, 8, 77, 95, 76, 88, 92, 84, 96, 100, 96, 81, 52, 22, 28.24207 + 63, 67, 51, 45, 44, 44, 59, 60, 65, 33, 8, 52, 55, 65, 38, 40, 28.24208 + 44, 41, 37, 53, 44, 40, 14, 2, 49, 76, 60, 41, 33, 42, 34, 28, 28.24209 + 24, 13, 8, 100, 104, 88, 91, 63, 65, 83, 64, 65, 52, 56, 55, 48, 28.24210 + 22, 33, 21, 24, 22, 21, 16, 14, 14, 17, 9, 2, 6, 17, 26, 29, 28.24211 + 26, 30, 22, 22, 21, 13, 5, 0, 6, 49, 61, 40, 30, 114, 114, 93, 28.24212 + 92, 96, 91, 89, 102, 63, 10, 34, 60, 65, 52, 75, 55, 59, 45, 57, 28.24213 + 36, 24, 12, 85, 108, 87, 89, 89, 77, 85, 84, 77, 84, 69, 56, 81, 28.24214 + 88, 85, 72, 93, 99, 93, 83, 100, 64, 34, 75, 96, 83, 83, 61, 69, 28.24215 + 83, 72, 69, 69, 68, 59, 41, 116, 120, 92, 104, 77, 92, 85, 88, 83, 28.24216 + 79, 77, 53, 92, 87, 80, 83, 87, 72, 81, 85, 85, 69, 73, 49, 8, 28.24217 + 79, 91, 97, 92, 102, 81, 85, 107, 81, 65, 36, 59, 69, 48, 55, 59, 28.24218 + 55, 53, 41, 32, 20, 5, 10, 77, 100, 91, 87, 89, 96, 97, 89, 92, 28.24219 + 79, 34, 0, 79, 83, 64, 77, 76, 67, 69, 72, 67, 53, 24, 51, 57, 28.24220 + 40, 24, 16, 29, 6, 13, 17, 16, 20, 0, 2, 83, 93, 88, 79, 79, 28.24221 + 72, 81, 88, 69, 55, 40, 53, 107, 99, 96, 84, 72, 92, 95, 84, 80, 28.24222 + 79, 56, 29, 81, 89, 96, 79, 91, 64, 61, 99, 190, 199, 193, 155, 116, 28.24223 + 97, 119, 57, 55, 37, 22, 24, 22, 26, 25, 32, 40, 42, 49, 75, 115, 28.24224 + 208, 205, 198, 118, 118, 126, 128, 131, 135, 143, 147, 140, 116, 48, 9, 8, 28.24225 + 5, 16, 13, 48, 83, 68, 72, 71, 88, 73, 80, 56, 44, 30, 71, 92, 28.24226 + 77, 93, 83, 81, 91, 80, 59, 68, 59, 46, 80, 92, 89, 55, 89, 65, 28.24227 + 71, 60, 79, 72, 65, 46, 40, 32, 53, 38, 24, 12, 12, 20, 20, 28, 28.24228 + 17, 1, 5, 95, 112, 92, 95, 103, 114, 103, 91, 103, 97, 72, 42, 64, 28.24229 + 102, 85, 79, 97, 84, 67, 75, 64, 53, 40, 79, 95, 69, 79, 88, 81, 28.24230 + 87, 92, 76, 72, 75, 38, 9, 60, 76, 84, 60, 73, 85, 77, 68, 76, 28.24231 + 68, 57, 36, 60, 76, 73, 65, 60, 59, 59, 59, 59, 18, 0, 88, 112, 28.24232 + 108, 108, 103, 107, 99, 93, 95, 99, 91, 52, 63, 89, 76, 67, 79, 89, 28.24233 + 88, 71, 63, 63, 56, 21, 17, 69, 76, 60, 56, 52, 68, 53, 64, 64, 28.24234 + 65, 44, 29, 52, 75, 34, 30, 51, 53, 55, 44, 44, 26, 10, 17, 57, 28.24235 + 64, 55, 65, 55, 64, 45, 41, 41, 40, 21, 8, 68, 67, 45, 56, 40, 28.24236 + 41, 55, 36, 56, 42, 32, 25, 51, 69, 67, 72, 72, 59, 34, 45, 46, 28.24237 + 32, 17, 41, 89, 81, 84, 63, 60, 63, 89, 65, 59, 33, 33, 34, 67, 28.24238 + 77, 61, 55, 52, 68, 71, 61, 68, 61, 42, 14, 44, 56, 37, 25, 12, 28.24239 + 18, 16, 33, 13, 6, 6, 65, 102, 96, 84, 99, 84, 84, 91, 95, 69, 28.24240 + 41, 6, 53, 44, 53, 57, 40, 51, 59, 38, 26, 37, 44, 25, 5, 79, 28.24241 + 93, 89, 96, 95, 85, 83, 84, 80, 81, 53, 26, 57, 69, 61, 40, 44, 28.24242 + 41, 49, 55, 56, 33, 6, 42, 63, 59, 38, 40, 33, 38, 33, 33, 42, 28.24243 + 34, 14, 4, 55, 63, 61, 40, 24, 33, 30, 18, 22, 12, 6, 102, 93, 28.24244 + 93, 64, 76, 81, 49, 65, 55, 59, 56, 52, 44, 26, 37, 25, 22, 16, 28.24245 + 18, 13, 22, 21, 17, 9, 4, 8, 17, 26, 21, 25, 29, 14, 20, 6, 28.24246 + 18, 5, 0, 1, 36, 63, 24, 18, 88, 100, 104, 97, 95, 88, 91, 88, 28.24247 + 59, 10, 46, 55, 61, 59, 52, 51, 55, 53, 56, 38, 25, 13, 77, 100, 28.24248 + 77, 77, 80, 80, 85, 81, 79, 67, 68, 45, 84, 89, 88, 65, 91, 83, 28.24249 + 83, 81, 87, 64, 36, 53, 89, 81, 87, 71, 75, 81, 81, 85, 80, 65, 28.24250 + 65, 38, 118, 106, 100, 108, 85, 102, 83, 88, 79, 83, 75, 56, 88, 87, 28.24251 + 80, 71, 76, 71, 87, 75, 81, 69, 63, 48, 8, 84, 81, 79, 92, 92, 28.24252 + 83, 84, 92, 81, 68, 37, 49, 44, 52, 41, 34, 34, 49, 48, 18, 10, 28.24253 + 8, 2, 76, 100, 77, 83, 99, 97, 83, 88, 93, 77, 36, 12, 83, 80, 28.24254 + 65, 79, 73, 64, 71, 69, 72, 64, 28, 56, 52, 61, 26, 18, 41, 12, 28.24255 + 12, 13, 28, 20, 0, 1, 83, 81, 92, 80, 75, 61, 77, 87, 71, 57, 28.24256 + 38, 63, 110, 96, 84, 80, 79, 97, 85, 77, 68, 71, 60, 30, 76, 91, 28.24257 + 89, 88, 65, 63, 72, 93, 183, 191, 166, 118, 99, 106, 56, 34, 24, 21, 28.24258 + 21, 22, 21, 25, 22, 33, 42, 44, 63, 81, 166, 210, 206, 199, 119, 119, 28.24259 + 126, 130, 130, 134, 143, 144, 138, 112, 26, 9, 9, 6, 16, 13, 44, 80, 28.24260 + 64, 73, 72, 83, 76, 77, 59, 40, 25, 72, 83, 85, 81, 73, 64, 64, 28.24261 + 65, 63, 65, 46, 42, 75, 89, 91, 65, 73, 61, 75, 73, 79, 68, 59, 28.24262 + 49, 30, 42, 52, 37, 37, 44, 46, 38, 28, 32, 16, 5, 4, 75, 112, 28.24263 + 91, 95, 87, 104, 114, 99, 93, 96, 69, 48, 64, 96, 79, 89, 87, 93, 28.24264 + 68, 71, 65, 52, 41, 83, 97, 79, 75, 91, 84, 85, 79, 76, 72, 67, 28.24265 + 51, 10, 69, 76, 84, 61, 72, 81, 72, 73, 71, 68, 53, 32, 53, 79, 28.24266 + 75, 81, 60, 65, 73, 63, 56, 20, 5, 89, 108, 118, 91, 85, 103, 100, 28.24267 + 99, 91, 93, 89, 46, 63, 95, 77, 71, 79, 97, 88, 77, 69, 55, 51, 28.24268 + 22, 2, 72, 75, 55, 53, 51, 64, 60, 64, 60, 64, 48, 22, 41, 71, 28.24269 + 41, 73, 37, 26, 38, 53, 40, 25, 9, 14, 63, 61, 45, 71, 51, 44, 28.24270 + 42, 38, 42, 38, 20, 5, 37, 56, 49, 38, 42, 40, 63, 36, 52, 40, 28.24271 + 30, 20, 55, 67, 77, 68, 76, 71, 57, 40, 44, 29, 16, 46, 85, 83, 28.24272 + 76, 49, 63, 53, 67, 57, 41, 37, 34, 32, 69, 71, 56, 61, 63, 51, 28.24273 + 45, 53, 48, 52, 38, 12, 38, 53, 41, 26, 21, 9, 9, 8, 14, 5, 28.24274 + 5, 67, 97, 96, 84, 88, 92, 85, 85, 100, 59, 41, 9, 48, 30, 51, 28.24275 + 40, 45, 36, 40, 41, 36, 38, 18, 37, 21, 77, 91, 89, 103, 77, 84, 28.24276 + 91, 87, 85, 77, 52, 28, 59, 61, 45, 30, 48, 59, 46, 56, 25, 28, 28.24277 + 8, 30, 38, 60, 32, 37, 41, 42, 32, 32, 38, 34, 12, 2, 53, 61, 28.24278 + 59, 34, 36, 29, 44, 21, 34, 10, 6, 59, 102, 79, 81, 79, 73, 59, 28.24279 + 65, 64, 63, 57, 61, 45, 28, 29, 25, 13, 28, 25, 24, 13, 16, 12, 28.24280 + 13, 4, 13, 20, 34, 37, 30, 25, 21, 8, 12, 12, 2, 0, 1, 49, 28.24281 + 38, 49, 20, 75, 106, 110, 89, 92, 95, 87, 81, 56, 5, 38, 61, 64, 28.24282 + 59, 56, 59, 68, 68, 48, 32, 24, 12, 72, 95, 79, 100, 80, 88, 80, 28.24283 + 72, 81, 73, 71, 41, 69, 103, 76, 63, 91, 87, 83, 83, 91, 65, 40, 28.24284 + 51, 89, 75, 89, 63, 76, 71, 75, 87, 75, 65, 41, 10, 115, 108, 95, 28.24285 + 89, 99, 88, 96, 92, 88, 76, 77, 52, 87, 84, 73, 77, 69, 71, 79, 28.24286 + 80, 75, 71, 67, 46, 8, 80, 93, 89, 95, 89, 73, 81, 87, 89, 69, 28.24287 + 53, 40, 51, 69, 60, 55, 61, 37, 33, 18, 1, 5, 1, 67, 96, 92, 28.24288 + 84, 87, 96, 85, 91, 83, 69, 37, 2, 60, 79, 61, 80, 73, 77, 59, 28.24289 + 68, 81, 52, 33, 16, 49, 49, 21, 20, 30, 13, 9, 17, 16, 16, 0, 28.24290 + 0, 79, 89, 89, 80, 80, 83, 81, 79, 68, 52, 41, 67, 108, 81, 91, 28.24291 + 92, 85, 85, 84, 97, 89, 67, 60, 32, 76, 87, 91, 88, 84, 75, 61, 28.24292 + 87, 170, 197, 162, 107, 89, 96, 44, 32, 24, 20, 25, 21, 20, 25, 22, 28.24293 + 45, 42, 41, 67, 93, 182, 217, 210, 204, 120, 119, 124, 130, 132, 138, 142, 28.24294 + 143, 130, 84, 13, 9, 8, 8, 16, 13, 51, 75, 65, 73, 75, 68, 80, 28.24295 + 71, 40, 46, 25, 65, 81, 76, 72, 71, 69, 81, 69, 64, 68, 57, 40, 28.24296 + 79, 80, 102, 72, 67, 68, 72, 73, 75, 59, 57, 30, 38, 28, 38, 33, 28.24297 + 32, 29, 29, 13, 18, 28, 18, 5, 4, 97, 114, 99, 88, 88, 88, 91, 28.24298 + 91, 89, 87, 81, 59, 67, 100, 79, 95, 83, 84, 61, 72, 53, 53, 38, 28.24299 + 77, 92, 73, 75, 81, 95, 76, 77, 75, 72, 64, 37, 9, 40, 56, 79, 28.24300 + 69, 83, 69, 68, 81, 68, 61, 48, 32, 48, 68, 69, 85, 80, 76, 59, 28.24301 + 63, 65, 18, 4, 76, 111, 110, 103, 99, 92, 97, 95, 95, 97, 72, 41, 28.24302 + 65, 88, 80, 63, 79, 99, 81, 72, 63, 57, 45, 24, 1, 57, 77, 53, 28.24303 + 46, 56, 55, 55, 60, 59, 61, 44, 36, 34, 63, 38, 36, 67, 26, 26, 28.24304 + 36, 32, 25, 8, 13, 56, 55, 48, 61, 61, 59, 48, 40, 48, 40, 22, 28.24305 + 5, 49, 67, 44, 37, 37, 32, 46, 46, 36, 38, 25, 14, 49, 63, 71, 28.24306 + 61, 69, 63, 60, 40, 42, 30, 17, 34, 73, 73, 103, 61, 68, 42, 37, 28.24307 + 44, 29, 28, 34, 28, 69, 69, 52, 45, 61, 49, 49, 44, 48, 44, 38, 28.24308 + 13, 37, 55, 42, 34, 26, 16, 26, 18, 8, 6, 2, 68, 96, 89, 92, 28.24309 + 95, 88, 75, 88, 103, 64, 42, 6, 49, 34, 63, 37, 25, 25, 57, 42, 28.24310 + 28, 25, 20, 45, 26, 81, 92, 92, 87, 87, 83, 83, 77, 83, 80, 73, 28.24311 + 29, 33, 64, 55, 46, 51, 49, 34, 30, 33, 25, 9, 20, 51, 56, 40, 28.24312 + 32, 29, 30, 34, 38, 36, 24, 9, 1, 41, 49, 53, 34, 44, 24, 30, 28.24313 + 22, 20, 10, 5, 89, 96, 76, 85, 80, 80, 65, 69, 69, 61, 57, 56, 28.24314 + 48, 28, 45, 30, 13, 13, 10, 9, 16, 10, 16, 8, 4, 17, 29, 28, 28.24315 + 13, 9, 10, 10, 8, 21, 13, 4, 0, 0, 22, 57, 21, 24, 80, 96, 28.24316 + 114, 107, 88, 83, 88, 81, 59, 8, 38, 56, 64, 69, 73, 65, 55, 52, 28.24317 + 45, 26, 17, 13, 71, 83, 97, 81, 100, 88, 81, 81, 80, 84, 65, 38, 28.24318 + 80, 89, 81, 80, 64, 71, 76, 71, 71, 69, 41, 53, 76, 73, 79, 80, 28.24319 + 76, 75, 75, 75, 75, 73, 46, 18, 106, 102, 77, 80, 88, 102, 100, 84, 28.24320 + 100, 75, 72, 46, 77, 85, 79, 72, 77, 73, 73, 76, 67, 69, 71, 46, 28.24321 + 9, 80, 83, 61, 75, 73, 59, 59, 75, 69, 72, 55, 34, 44, 30, 44, 28.24322 + 25, 28, 28, 34, 32, 1, 5, 8, 65, 92, 73, 80, 81, 80, 83, 93, 28.24323 + 87, 61, 36, 1, 59, 77, 64, 76, 77, 69, 68, 72, 69, 53, 22, 12, 28.24324 + 29, 21, 29, 21, 28, 24, 29, 22, 25, 16, 0, 0, 83, 92, 80, 83, 28.24325 + 85, 99, 89, 73, 59, 56, 29, 79, 108, 97, 102, 91, 93, 87, 72, 79, 28.24326 + 84, 77, 63, 34, 71, 85, 91, 87, 83, 61, 56, 69, 126, 198, 163, 114, 28.24327 + 97, 97, 49, 36, 22, 29, 29, 24, 24, 24, 24, 30, 42, 61, 83, 136, 28.24328 + 205, 216, 213, 198, 122, 119, 126, 131, 138, 143, 144, 139, 119, 41, 10, 8, 28.24329 + 5, 10, 21, 10, 42, 72, 71, 81, 76, 80, 77, 71, 53, 42, 24, 36, 28.24330 + 76, 79, 56, 61, 60, 52, 69, 67, 65, 52, 34, 68, 76, 79, 79, 73, 28.24331 + 73, 72, 71, 71, 64, 52, 32, 30, 45, 53, 57, 45, 42, 29, 45, 34, 28.24332 + 14, 13, 1, 2, 96, 110, 99, 68, 67, 67, 76, 63, 72, 73, 75, 60, 28.24333 + 55, 87, 83, 84, 83, 83, 59, 72, 51, 49, 32, 71, 85, 76, 75, 80, 28.24334 + 76, 76, 73, 76, 75, 72, 33, 9, 61, 73, 100, 79, 81, 79, 68, 65, 28.24335 + 63, 60, 49, 28, 38, 51, 60, 69, 76, 65, 72, 59, 64, 17, 10, 77, 28.24336 + 97, 102, 100, 92, 97, 99, 96, 95, 91, 73, 36, 61, 65, 91, 88, 95, 28.24337 + 88, 77, 65, 63, 51, 52, 21, 1, 67, 65, 55, 46, 53, 49, 48, 44, 28.24338 + 45, 45, 49, 37, 20, 44, 64, 49, 52, 18, 26, 38, 38, 26, 14, 10, 28.24339 + 57, 49, 44, 52, 46, 49, 46, 45, 45, 41, 20, 8, 48, 46, 42, 30, 28.24340 + 29, 26, 29, 33, 32, 36, 26, 14, 38, 57, 69, 68, 59, 49, 37, 42, 28.24341 + 44, 32, 18, 22, 46, 71, 68, 67, 34, 38, 36, 37, 34, 26, 25, 14, 28.24342 + 67, 69, 42, 56, 60, 56, 56, 41, 55, 46, 41, 21, 17, 52, 33, 36, 28.24343 + 14, 9, 16, 22, 20, 6, 14, 60, 91, 79, 93, 92, 91, 87, 88, 99, 28.24344 + 56, 41, 5, 48, 48, 52, 37, 24, 21, 18, 25, 36, 17, 33, 45, 4, 28.24345 + 68, 83, 81, 87, 79, 85, 76, 84, 79, 83, 64, 29, 33, 52, 53, 37, 28.24346 + 44, 33, 34, 36, 24, 29, 12, 16, 45, 25, 24, 17, 20, 25, 34, 37, 28.24347 + 25, 24, 14, 0, 44, 51, 61, 56, 38, 36, 37, 26, 21, 12, 4, 100, 28.24348 + 106, 72, 71, 73, 72, 73, 68, 68, 55, 59, 60, 48, 25, 22, 20, 10, 28.24349 + 9, 14, 16, 13, 10, 13, 9, 2, 17, 34, 9, 22, 40, 25, 26, 18, 28.24350 + 10, 9, 5, 0, 1, 45, 33, 30, 20, 81, 85, 88, 89, 99, 91, 91, 28.24351 + 73, 56, 6, 32, 48, 51, 49, 45, 48, 45, 46, 40, 29, 24, 12, 65, 28.24352 + 89, 97, 96, 87, 84, 85, 85, 84, 81, 57, 36, 77, 77, 81, 81, 83, 28.24353 + 72, 75, 72, 68, 68, 64, 60, 46, 48, 49, 46, 51, 49, 51, 55, 53, 28.24354 + 55, 56, 24, 116, 97, 92, 97, 88, 89, 89, 89, 88, 83, 76, 49, 89, 28.24355 + 87, 73, 73, 72, 64, 68, 61, 65, 64, 68, 46, 10, 77, 80, 73, 73, 28.24356 + 69, 84, 68, 65, 57, 71, 38, 33, 38, 28, 25, 24, 21, 21, 18, 17, 28.24357 + 13, 4, 1, 48, 91, 84, 84, 83, 91, 87, 91, 73, 73, 38, 1, 57, 28.24358 + 73, 63, 56, 77, 75, 71, 59, 61, 45, 40, 30, 18, 18, 12, 8, 5, 28.24359 + 5, 6, 5, 2, 4, 0, 1, 89, 89, 89, 83, 80, 77, 73, 73, 46, 28.24360 + 48, 29, 71, 103, 95, 84, 80, 80, 80, 72, 71, 71, 68, 63, 36, 46, 28.24361 + 76, 83, 77, 68, 44, 63, 59, 100, 182, 183, 143, 92, 119, 85, 44, 36, 28.24362 + 29, 33, 30, 30, 33, 38, 36, 65, 73, 116, 195, 216, 214, 216, 191, 120, 28.24363 + 120, 127, 135, 140, 146, 140, 128, 65, 12, 10, 8, 6, 9, 14, 16, 41, 28.24364 + 63, 67, 65, 64, 63, 59, 53, 56, 53, 30, 37, 72, 80, 55, 59, 64, 28.24365 + 60, 63, 61, 53, 48, 32, 46, 71, 75, 59, 56, 68, 71, 59, 59, 59, 28.24366 + 45, 29, 30, 29, 10, 14, 12, 25, 9, 12, 8, 4, 10, 0, 2, 84, 28.24367 + 97, 103, 96, 88, 87, 91, 88, 83, 81, 76, 75, 75, 52, 57, 63, 61, 28.24368 + 60, 72, 69, 64, 49, 29, 68, 84, 79, 81, 75, 76, 75, 77, 73, 72, 28.24369 + 68, 42, 13, 56, 59, 60, 60, 60, 60, 64, 57, 60, 49, 46, 25, 38, 28.24370 + 44, 57, 57, 52, 51, 51, 51, 44, 18, 0, 13, 48, 60, 49, 49, 57, 28.24371 + 67, 59, 56, 65, 57, 29, 26, 32, 34, 37, 41, 45, 41, 46, 44, 52, 28.24372 + 46, 18, 8, 64, 63, 64, 67, 59, 67, 56, 53, 49, 45, 41, 41, 20, 28.24373 + 18, 29, 37, 28, 20, 38, 37, 32, 25, 12, 9, 52, 45, 64, 49, 48, 28.24374 + 51, 49, 48, 46, 44, 24, 0, 38, 49, 25, 25, 28, 32, 30, 44, 33, 28.24375 + 38, 22, 14, 22, 45, 48, 37, 34, 38, 41, 32, 32, 37, 29, 18, 28, 28.24376 + 46, 45, 32, 32, 49, 36, 29, 32, 26, 25, 22, 60, 64, 63, 60, 55, 28.24377 + 60, 56, 49, 48, 53, 45, 17, 12, 38, 42, 42, 33, 12, 25, 25, 16, 28.24378 + 6, 6, 65, 93, 85, 88, 91, 92, 96, 88, 96, 69, 41, 5, 38, 45, 28.24379 + 36, 18, 25, 17, 17, 21, 17, 21, 25, 28, 12, 56, 68, 71, 49, 53, 28.24380 + 64, 64, 67, 59, 55, 46, 41, 42, 38, 33, 33, 32, 42, 30, 30, 25, 28.24381 + 25, 24, 10, 13, 16, 13, 17, 17, 20, 13, 37, 26, 17, 13, 0, 37, 28.24382 + 44, 42, 45, 41, 55, 24, 17, 20, 12, 2, 92, 92, 76, 65, 68, 60, 28.24383 + 59, 59, 60, 59, 55, 52, 44, 28, 30, 14, 22, 17, 13, 14, 10, 12, 28.24384 + 8, 8, 2, 20, 37, 44, 21, 16, 12, 8, 9, 8, 6, 4, 0, 0, 28.24385 + 32, 36, 25, 24, 72, 69, 69, 68, 69, 67, 69, 59, 41, 6, 29, 40, 28.24386 + 34, 25, 38, 40, 32, 29, 36, 32, 22, 10, 46, 89, 88, 85, 83, 63, 28.24387 + 56, 53, 64, 60, 51, 33, 53, 59, 59, 57, 56, 57, 60, 56, 56, 55, 28.24388 + 55, 51, 52, 37, 26, 21, 22, 32, 16, 12, 13, 10, 10, 21, 114, 77, 28.24389 + 92, 48, 88, 85, 83, 53, 84, 79, 72, 46, 81, 84, 65, 61, 57, 56, 28.24390 + 49, 53, 53, 53, 41, 21, 13, 44, 38, 41, 38, 37, 40, 37, 38, 36, 28.24391 + 33, 30, 26, 22, 21, 22, 20, 14, 13, 14, 12, 10, 12, 0, 18, 68, 28.24392 + 73, 51, 56, 77, 71, 64, 67, 65, 36, 16, 48, 64, 65, 61, 53, 51, 28.24393 + 49, 46, 42, 44, 18, 10, 6, 5, 9, 18, 22, 16, 8, 10, 10, 8, 28.24394 + 1, 0, 80, 51, 61, 59, 60, 64, 65, 71, 49, 42, 26, 63, 79, 85, 28.24395 + 83, 76, 79, 73, 69, 67, 71, 76, 67, 63, 64, 61, 41, 45, 59, 57, 28.24396 + 51, 56, 65, 162, 193, 157, 111, 111, 107, 72, 44, 30, 42, 41, 38, 36, 28.24397 + 40, 63, 73, 114, 183, 216, 216, 217, 213, 161, 119, 122, 128, 140, 143, 142, 28.24398 + 132, 92, 21, 10, 9, 8, 10, 10, 14, 17, 25, 52, 52, 48, 38, 51, 28.24399 + 49, 38, 41, 46, 36, 34, 67, 53, 51, 41, 40, 38, 37, 38, 40, 48, 28.24400 + 26, 16, 16, 22, 18, 17, 18, 24, 32, 44, 49, 34, 28, 8, 8, 5, 28.24401 + 5, 4, 4, 2, 0, 2, 4, 0, 5, 1, 10, 52, 63, 53, 53, 56, 28.24402 + 67, 60, 59, 61, 61, 61, 53, 63, 60, 63, 60, 67, 63, 65, 55, 48, 28.24403 + 34, 55, 75, 75, 77, 67, 64, 61, 60, 53, 56, 53, 38, 14, 24, 26, 28.24404 + 25, 26, 28, 30, 32, 36, 34, 36, 36, 24, 24, 13, 17, 17, 13, 9, 28.24405 + 9, 12, 12, 10, 2, 2, 5, 13, 5, 4, 12, 17, 8, 9, 16, 18, 28.24406 + 18, 16, 5, 13, 13, 12, 18, 26, 21, 26, 32, 32, 21, 0, 14, 24, 28.24407 + 28, 26, 26, 29, 30, 24, 25, 25, 22, 24, 20, 24, 33, 24, 22, 22, 28.24408 + 14, 22, 20, 24, 13, 16, 45, 40, 49, 46, 45, 44, 44, 40, 40, 38, 28.24409 + 18, 12, 34, 12, 16, 9, 9, 12, 14, 6, 5, 9, 13, 13, 9, 10, 28.24410 + 13, 12, 12, 14, 14, 17, 20, 28, 30, 30, 29, 32, 29, 26, 26, 28, 28.24411 + 26, 25, 24, 28, 28, 22, 57, 53, 51, 51, 41, 40, 38, 34, 33, 32, 28.24412 + 18, 21, 21, 18, 22, 16, 14, 9, 9, 9, 10, 5, 5, 61, 67, 83, 28.24413 + 85, 79, 76, 75, 81, 72, 53, 38, 8, 48, 33, 24, 21, 22, 20, 20, 28.24414 + 22, 22, 21, 22, 36, 17, 13, 14, 14, 13, 18, 21, 24, 24, 26, 34, 28.24415 + 38, 32, 29, 25, 26, 25, 25, 24, 25, 22, 22, 20, 18, 17, 20, 18, 28.24416 + 18, 16, 17, 16, 16, 12, 16, 16, 12, 0, 21, 29, 41, 17, 20, 25, 28.24417 + 36, 25, 16, 10, 2, 59, 92, 75, 63, 61, 61, 60, 55, 40, 38, 34, 28.24418 + 29, 29, 29, 16, 9, 20, 17, 13, 16, 13, 16, 10, 10, 2, 9, 18, 28.24419 + 16, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 28.24420 + 45, 42, 38, 32, 30, 29, 25, 22, 0, 4, 8, 8, 6, 8, 14, 12, 28.24421 + 13, 18, 30, 17, 9, 64, 34, 33, 32, 32, 44, 33, 25, 22, 40, 36, 28.24422 + 20, 17, 13, 16, 13, 13, 12, 16, 13, 12, 10, 13, 12, 13, 29, 42, 28.24423 + 52, 52, 57, 91, 76, 95, 76, 55, 8, 122, 83, 96, 75, 63, 56, 57, 28.24424 + 57, 71, 73, 71, 44, 45, 46, 46, 40, 36, 33, 28, 25, 21, 22, 16, 28.24425 + 13, 12, 10, 9, 8, 6, 6, 5, 5, 4, 4, 4, 2, 1, 5, 6, 28.24426 + 1, 0, 1, 4, 0, 0, 1, 2, 0, 17, 13, 13, 17, 16, 34, 61, 28.24427 + 37, 46, 55, 33, 1, 44, 14, 20, 16, 17, 12, 17, 12, 16, 9, 8, 28.24428 + 9, 10, 24, 49, 44, 57, 61, 67, 59, 68, 64, 38, 0, 92, 79, 77, 28.24429 + 68, 61, 59, 59, 45, 55, 44, 25, 48, 49, 52, 49, 49, 51, 52, 52, 28.24430 + 53, 49, 55, 52, 51, 51, 33, 25, 26, 28, 37, 64, 63, 65, 108, 181, 28.24431 + 171, 114, 81, 151, 100, 77, 76, 80, 81, 81, 80, 79, 102, 150, 197, 216, 28.24432 + 216, 214, 214, 199, 132, 119, 127, 139, 142, 139, 132, 103, 29, 12, 10, 8, 28.24433 + 10, 14, 16, 8, 17, 24, 21, 25, 28, 28, 28, 29, 30, 34, 42, 42, 28.24434 + 36, 38, 30, 33, 40, 33, 37, 45, 61, 52, 46, 32, 37, 79, 81, 71, 28.24435 + 63, 46, 45, 41, 37, 13, 9, 6, 4, 0, 13, 2, 1, 2, 9, 0, 28.24436 + 2, 4, 0, 0, 5, 8, 2, 2, 2, 6, 5, 5, 6, 8, 9, 10, 28.24437 + 12, 13, 16, 18, 25, 25, 29, 30, 36, 37, 45, 33, 37, 51, 51, 32, 28.24438 + 33, 36, 37, 22, 22, 26, 21, 12, 2, 8, 2, 13, 14, 8, 6, 12, 28.24439 + 12, 6, 8, 10, 13, 45, 57, 69, 68, 60, 72, 64, 68, 36, 32, 1, 28.24440 + 14, 102, 108, 72, 67, 84, 92, 60, 64, 61, 21, 10, 40, 89, 85, 48, 28.24441 + 45, 48, 26, 25, 20, 25, 13, 10, 4, 1, 0, 8, 1, 0, 0, 6, 28.24442 + 4, 0, 2, 9, 8, 10, 6, 12, 9, 8, 20, 14, 10, 13, 21, 5, 28.24443 + 8, 37, 8, 12, 8, 9, 9, 9, 6, 6, 4, 4, 9, 6, 22, 34, 28.24444 + 40, 40, 42, 52, 59, 48, 46, 24, 10, 51, 76, 85, 64, 65, 42, 29, 28.24445 + 24, 16, 16, 13, 12, 14, 12, 17, 10, 12, 14, 12, 14, 16, 17, 17, 28.24446 + 13, 25, 21, 30, 24, 24, 18, 22, 21, 20, 18, 18, 16, 13, 6, 2, 28.24447 + 1, 1, 2, 2, 2, 2, 6, 4, 12, 18, 25, 21, 36, 37, 33, 24, 28.24448 + 40, 44, 25, 6, 34, 18, 25, 21, 18, 20, 22, 29, 33, 34, 33, 45, 28.24449 + 1, 32, 103, 103, 65, 65, 57, 56, 48, 34, 17, 13, 10, 8, 8, 8, 28.24450 + 6, 6, 6, 5, 5, 4, 6, 6, 4, 1, 0, 0, 1, 0, 0, 0, 28.24451 + 0, 1, 1, 0, 0, 4, 2, 6, 4, 5, 5, 6, 6, 17, 10, 1, 28.24452 + 55, 87, 61, 53, 51, 46, 45, 45, 41, 40, 48, 37, 41, 13, 17, 25, 28.24453 + 16, 13, 6, 4, 2, 2, 2, 1, 1, 2, 1, 1, 1, 4, 4, 1, 28.24454 + 1, 2, 1, 0, 0, 0, 1, 0, 0, 0, 52, 63, 64, 56, 68, 57, 28.24455 + 68, 67, 52, 0, 32, 83, 80, 55, 60, 65, 53, 36, 25, 20, 12, 12, 28.24456 + 22, 53, 56, 48, 59, 65, 88, 76, 68, 64, 52, 14, 65, 87, 89, 80, 28.24457 + 69, 83, 73, 84, 80, 77, 36, 9, 68, 119, 115, 110, 108, 103, 102, 102, 28.24458 + 111, 88, 51, 10, 122, 84, 88, 123, 115, 99, 81, 84, 61, 45, 25, 38, 28.24459 + 44, 51, 53, 59, 59, 57, 65, 69, 68, 46, 64, 61, 112, 115, 115, 116, 28.24460 + 122, 118, 111, 115, 123, 110, 93, 89, 110, 106, 100, 108, 107, 102, 91, 83, 28.24461 + 102, 81, 20, 1, 65, 106, 104, 81, 67, 49, 40, 36, 20, 14, 10, 1, 28.24462 + 10, 44, 51, 56, 48, 57, 61, 64, 61, 65, 41, 1, 52, 111, 123, 126, 28.24463 + 122, 120, 104, 114, 103, 76, 37, 0, 88, 77, 92, 89, 96, 88, 87, 75, 28.24464 + 63, 44, 25, 9, 9, 9, 9, 10, 10, 10, 13, 12, 12, 12, 16, 17, 28.24465 + 18, 59, 61, 79, 79, 76, 103, 97, 76, 69, 120, 179, 128, 88, 114, 126, 28.24466 + 123, 135, 131, 118, 124, 138, 148, 191, 210, 214, 218, 216, 213, 212, 150, 122, 28.24467 + 126, 135, 138, 134, 126, 89, 28, 13, 13, 10, 16, 14, 12, 17, 25, 32, 28.24468 + 38, 73, 88, 80, 63, 61, 48, 45, 45, 36, 32, 29, 53, 84, 99, 91, 28.24469 + 104, 75, 76, 88, 67, 49, 29, 55, 99, 80, 65, 64, 80, 72, 73, 46, 28.24470 + 42, 36, 0, 16, 118, 110, 85, 73, 87, 85, 81, 76, 84, 65, 33, 0, 28.24471 + 30, 76, 88, 87, 88, 88, 91, 83, 81, 76, 69, 63, 75, 76, 77, 79, 28.24472 + 73, 51, 37, 30, 24, 24, 25, 17, 22, 42, 38, 49, 42, 51, 48, 55, 28.24473 + 56, 45, 33, 4, 18, 61, 67, 77, 69, 64, 65, 57, 65, 67, 60, 60, 28.24474 + 59, 80, 89, 93, 88, 87, 79, 65, 61, 34, 4, 91, 88, 67, 84, 72, 28.24475 + 80, 68, 81, 75, 61, 25, 6, 83, 100, 96, 93, 93, 88, 79, 57, 64, 28.24476 + 65, 26, 18, 4, 14, 100, 93, 60, 45, 91, 85, 61, 49, 61, 55, 24, 28.24477 + 2, 36, 89, 84, 48, 46, 41, 34, 25, 17, 9, 4, 6, 33, 34, 37, 28.24478 + 28, 41, 45, 36, 40, 40, 29, 0, 30, 92, 87, 83, 85, 88, 77, 79, 28.24479 + 75, 59, 24, 9, 59, 85, 63, 60, 80, 80, 79, 79, 56, 29, 22, 5, 28.24480 + 37, 122, 115, 75, 68, 67, 60, 51, 24, 10, 12, 5, 5, 6, 6, 4, 28.24481 + 5, 4, 4, 1, 4, 2, 2, 2, 5, 12, 55, 64, 65, 63, 49, 72, 28.24482 + 57, 16, 5, 40, 79, 72, 67, 29, 24, 16, 12, 10, 6, 9, 2, 14, 28.24483 + 34, 76, 75, 75, 77, 75, 79, 69, 72, 53, 45, 4, 85, 119, 111, 95, 28.24484 + 112, 99, 100, 99, 99, 89, 89, 68, 63, 81, 61, 45, 57, 69, 60, 57, 28.24485 + 46, 34, 2, 0, 14, 68, 95, 64, 59, 63, 79, 64, 60, 52, 4, 0, 28.24486 + 48, 64, 60, 38, 64, 53, 53, 12, 6, 10, 1, 64, 68, 72, 69, 76, 28.24487 + 73, 72, 72, 73, 75, 68, 38, 24, 18, 21, 45, 40, 34, 38, 37, 25, 28.24488 + 18, 9, 12, 4, 2, 14, 37, 40, 52, 38, 44, 45, 60, 60, 67, 56, 28.24489 + 72, 76, 83, 81, 83, 120, 103, 110, 104, 99, 100, 64, 68, 53, 0, 67, 28.24490 + 77, 95, 91, 84, 87, 83, 81, 80, 75, 33, 12, 73, 112, 114, 108, 106, 28.24491 + 97, 110, 107, 96, 67, 57, 16, 91, 92, 85, 76, 73, 92, 81, 77, 75, 28.24492 + 77, 41, 8, 96, 118, 93, 99, 108, 119, 99, 102, 83, 92, 57, 14, 130, 28.24493 + 106, 81, 79, 59, 80, 93, 111, 119, 104, 85, 99, 116, 106, 108, 116, 106, 28.24494 + 107, 112, 103, 108, 92, 102, 88, 76, 110, 97, 85, 93, 96, 83, 76, 72, 28.24495 + 76, 91, 64, 76, 93, 110, 114, 99, 99, 88, 83, 92, 91, 45, 0, 84, 28.24496 + 102, 127, 89, 95, 71, 80, 77, 71, 55, 33, 8, 69, 112, 108, 108, 100, 28.24497 + 99, 64, 84, 87, 71, 46, 1, 102, 124, 106, 91, 77, 100, 89, 81, 84, 28.24498 + 73, 36, 0, 104, 75, 81, 87, 83, 80, 83, 84, 71, 56, 25, 30, 100, 28.24499 + 81, 76, 80, 93, 93, 77, 75, 72, 68, 67, 63, 69, 65, 104, 108, 106, 28.24500 + 89, 89, 91, 85, 56, 73, 169, 146, 97, 79, 158, 169, 177, 190, 199, 205, 28.24501 + 206, 210, 213, 214, 213, 209, 212, 205, 155, 124, 130, 134, 130, 126, 99, 56, 28.24502 + 26, 16, 13, 10, 18, 13, 18, 25, 40, 25, 26, 64, 103, 114, 100, 103, 28.24503 + 106, 112, 111, 112, 92, 83, 84, 87, 102, 99, 83, 72, 83, 72, 71, 71, 28.24504 + 52, 32, 51, 97, 93, 81, 67, 63, 59, 73, 80, 52, 40, 0, 118, 120, 28.24505 + 95, 97, 92, 93, 89, 67, 64, 59, 55, 65, 0, 110, 104, 92, 93, 81, 28.24506 + 92, 77, 80, 80, 81, 77, 55, 49, 77, 80, 72, 72, 60, 59, 64, 72, 28.24507 + 40, 22, 41, 91, 89, 96, 85, 87, 87, 81, 85, 83, 64, 36, 2, 99, 28.24508 + 93, 102, 96, 85, 80, 73, 65, 71, 67, 48, 59, 95, 114, 108, 93, 93, 28.24509 + 79, 83, 85, 59, 36, 2, 104, 84, 83, 73, 65, 64, 63, 63, 69, 75, 28.24510 + 26, 9, 96, 108, 85, 51, 68, 55, 83, 76, 60, 38, 33, 20, 0, 104, 28.24511 + 115, 96, 48, 65, 84, 75, 61, 59, 59, 56, 29, 2, 87, 96, 75, 72, 28.24512 + 77, 68, 83, 45, 30, 21, 2, 36, 87, 96, 102, 88, 83, 75, 72, 76, 28.24513 + 71, 41, 14, 80, 97, 92, 83, 71, 73, 71, 72, 69, 75, 28, 8, 67, 28.24514 + 93, 63, 65, 52, 52, 55, 67, 71, 60, 25, 4, 106, 126, 104, 102, 108, 28.24515 + 104, 100, 73, 85, 83, 81, 81, 92, 99, 89, 87, 91, 80, 97, 87, 88, 28.24516 + 87, 71, 69, 75, 61, 63, 60, 68, 56, 75, 63, 60, 20, 5, 52, 104, 28.24517 + 72, 64, 71, 48, 57, 51, 36, 28, 14, 24, 63, 85, 89, 97, 88, 88, 28.24518 + 80, 84, 71, 65, 55, 33, 12, 100, 110, 115, 103, 103, 93, 76, 71, 80, 28.24519 + 68, 65, 76, 77, 67, 40, 41, 57, 61, 28, 34, 24, 59, 2, 0, 71, 28.24520 + 96, 63, 60, 55, 49, 57, 49, 55, 61, 9, 0, 56, 56, 45, 55, 69, 28.24521 + 52, 53, 52, 16, 10, 0, 91, 72, 67, 67, 65, 61, 38, 53, 64, 52, 28.24522 + 49, 30, 21, 16, 30, 37, 21, 24, 17, 20, 17, 25, 21, 2, 0, 34, 28.24523 + 64, 75, 75, 79, 71, 63, 53, 67, 52, 61, 56, 57, 46, 65, 84, 72, 28.24524 + 143, 128, 106, 114, 122, 108, 119, 67, 55, 0, 71, 85, 92, 89, 73, 76, 28.24525 + 53, 67, 65, 73, 38, 13, 97, 118, 107, 100, 97, 100, 104, 111, 106, 72, 28.24526 + 57, 18, 91, 102, 111, 122, 104, 112, 102, 99, 83, 79, 46, 8, 88, 116, 28.24527 + 95, 96, 79, 83, 88, 81, 68, 68, 52, 13, 130, 102, 99, 69, 77, 77, 28.24528 + 81, 84, 65, 84, 95, 91, 65, 64, 77, 77, 79, 60, 55, 80, 61, 64, 28.24529 + 95, 64, 111, 97, 104, 100, 88, 95, 92, 95, 91, 79, 81, 57, 103, 124, 28.24530 + 110, 92, 103, 97, 96, 102, 96, 91, 49, 1, 89, 104, 131, 88, 75, 93, 28.24531 + 67, 84, 68, 60, 37, 21, 88, 107, 96, 102, 102, 91, 85, 91, 88, 83, 28.24532 + 46, 0, 99, 124, 71, 80, 85, 85, 77, 103, 79, 85, 41, 0, 97, 71, 28.24533 + 79, 75, 73, 75, 73, 76, 76, 53, 25, 92, 93, 89, 77, 65, 83, 89, 28.24534 + 80, 72, 84, 72, 84, 65, 46, 103, 114, 97, 76, 68, 73, 89, 93, 53, 28.24535 + 55, 124, 154, 104, 73, 112, 118, 136, 154, 179, 191, 199, 204, 202, 204, 208, 28.24536 + 193, 170, 147, 119, 132, 128, 112, 92, 56, 28, 16, 17, 14, 13, 16, 13, 28.24537 + 17, 22, 34, 26, 29, 29, 64, 104, 112, 112, 110, 106, 100, 102, 104, 85, 28.24538 + 83, 64, 103, 95, 69, 72, 84, 87, 84, 73, 52, 67, 30, 52, 85, 80, 28.24539 + 69, 72, 69, 64, 71, 71, 52, 38, 0, 122, 118, 114, 87, 79, 77, 73, 28.24540 + 57, 57, 57, 73, 67, 0, 107, 87, 80, 84, 96, 88, 87, 97, 83, 81, 28.24541 + 63, 36, 69, 116, 87, 72, 67, 65, 63, 75, 71, 40, 30, 85, 89, 83, 28.24542 + 75, 64, 77, 88, 69, 71, 64, 53, 40, 9, 97, 76, 73, 76, 96, 84, 28.24543 + 69, 63, 67, 51, 42, 84, 118, 91, 77, 91, 81, 60, 48, 71, 42, 34, 28.24544 + 0, 68, 81, 71, 56, 45, 53, 68, 67, 87, 64, 28, 6, 85, 107, 64, 28.24545 + 57, 41, 46, 49, 60, 37, 30, 32, 18, 2, 88, 91, 84, 65, 69, 57, 28.24546 + 53, 64, 56, 80, 61, 30, 4, 91, 95, 61, 53, 55, 51, 53, 63, 34, 28.24547 + 29, 4, 75, 95, 91, 87, 79, 87, 84, 77, 52, 49, 29, 8, 80, 95, 28.24548 + 84, 68, 69, 59, 63, 63, 63, 56, 25, 8, 65, 88, 72, 69, 67, 52, 28.24549 + 51, 46, 57, 65, 24, 5, 93, 115, 112, 111, 97, 91, 81, 95, 80, 76, 28.24550 + 65, 72, 89, 89, 103, 69, 84, 88, 80, 80, 65, 83, 69, 46, 42, 83, 28.24551 + 91, 67, 61, 40, 34, 65, 48, 25, 5, 42, 102, 77, 65, 63, 53, 65, 28.24552 + 51, 52, 32, 16, 30, 65, 95, 84, 73, 69, 69, 71, 69, 76, 83, 37, 28.24553 + 40, 10, 89, 106, 112, 106, 100, 69, 71, 99, 96, 92, 81, 61, 34, 73, 28.24554 + 73, 44, 41, 30, 26, 9, 32, 41, 1, 4, 85, 85, 59, 61, 51, 68, 28.24555 + 69, 61, 55, 52, 10, 0, 38, 45, 41, 29, 22, 22, 18, 36, 32, 10, 28.24556 + 0, 102, 81, 59, 67, 46, 42, 33, 42, 45, 48, 42, 29, 16, 22, 40, 28.24557 + 33, 21, 8, 4, 4, 5, 12, 20, 0, 4, 53, 93, 95, 61, 67, 60, 28.24558 + 61, 68, 53, 33, 40, 44, 51, 89, 107, 131, 136, 84, 89, 115, 108, 79, 28.24559 + 95, 116, 68, 53, 0, 64, 99, 89, 67, 65, 75, 72, 64, 52, 65, 38, 28.24560 + 16, 80, 120, 103, 108, 99, 95, 93, 95, 111, 73, 60, 25, 59, 104, 104, 28.24561 + 89, 97, 111, 107, 79, 77, 77, 45, 6, 104, 110, 112, 88, 97, 97, 88, 28.24562 + 99, 75, 87, 57, 5, 124, 107, 97, 68, 65, 71, 87, 80, 81, 77, 61, 28.24563 + 67, 60, 97, 71, 69, 87, 80, 83, 80, 79, 61, 56, 37, 111, 100, 103, 28.24564 + 95, 83, 85, 76, 73, 92, 84, 75, 59, 119, 122, 93, 87, 83, 91, 96, 28.24565 + 88, 85, 104, 45, 0, 93, 110, 114, 71, 76, 91, 84, 100, 99, 81, 40, 28.24566 + 6, 106, 106, 110, 92, 104, 97, 88, 89, 85, 69, 46, 0, 93, 118, 69, 28.24567 + 81, 77, 93, 96, 97, 83, 67, 40, 0, 99, 80, 80, 87, 84, 73, 75, 28.24568 + 73, 79, 59, 25, 92, 89, 79, 84, 89, 85, 77, 79, 79, 71, 71, 57, 28.24569 + 38, 61, 110, 104, 96, 69, 72, 76, 64, 89, 56, 48, 108, 153, 104, 67, 28.24570 + 81, 99, 111, 118, 124, 150, 161, 170, 169, 163, 159, 139, 126, 126, 119, 100, 28.24571 + 77, 45, 29, 17, 14, 14, 13, 17, 13, 13, 24, 22, 29, 32, 32, 28, 28.24572 + 25, 67, 116, 119, 112, 88, 97, 88, 80, 72, 71, 52, 88, 107, 69, 75, 28.24573 + 97, 77, 69, 65, 73, 55, 69, 37, 42, 87, 83, 75, 87, 71, 83, 69, 28.24574 + 67, 60, 37, 0, 76, 111, 92, 97, 111, 88, 81, 76, 60, 59, 63, 36, 28.24575 + 4, 76, 75, 87, 96, 84, 85, 83, 77, 76, 55, 51, 34, 73, 108, 71, 28.24576 + 67, 84, 97, 92, 73, 60, 38, 21, 83, 88, 76, 64, 60, 56, 77, 76, 28.24577 + 63, 53, 49, 40, 2, 91, 65, 76, 57, 83, 97, 85, 64, 67, 41, 26, 28.24578 + 80, 119, 89, 85, 89, 79, 55, 65, 55, 46, 37, 0, 87, 91, 91, 42, 28.24579 + 57, 63, 59, 77, 72, 79, 29, 5, 88, 104, 59, 52, 41, 53, 53, 42, 28.24580 + 45, 29, 25, 20, 1, 77, 95, 53, 69, 75, 61, 56, 55, 51, 63, 53, 28.24581 + 41, 4, 79, 89, 59, 44, 61, 63, 59, 59, 56, 29, 0, 81, 100, 77, 28.24582 + 73, 73, 59, 53, 46, 40, 45, 28, 1, 76, 96, 76, 56, 69, 55, 53, 28.24583 + 57, 55, 63, 26, 5, 64, 88, 84, 65, 79, 79, 75, 53, 52, 49, 25, 28.24584 + 5, 81, 108, 111, 106, 110, 100, 107, 107, 104, 95, 64, 91, 106, 83, 63, 28.24585 + 57, 59, 64, 59, 46, 51, 55, 34, 30, 55, 96, 89, 33, 53, 55, 87, 28.24586 + 46, 49, 24, 6, 52, 95, 73, 48, 68, 71, 56, 64, 52, 38, 17, 26, 28.24587 + 64, 95, 80, 68, 68, 80, 80, 65, 64, 76, 38, 41, 1, 88, 102, 99, 28.24588 + 103, 108, 68, 75, 83, 93, 88, 79, 56, 60, 84, 63, 24, 44, 18, 29, 28.24589 + 28, 33, 34, 1, 0, 68, 72, 63, 60, 49, 56, 64, 61, 59, 44, 10, 28.24590 + 0, 65, 57, 26, 37, 34, 28, 17, 33, 44, 12, 0, 96, 64, 61, 65, 28.24591 + 42, 67, 36, 33, 57, 49, 36, 33, 16, 12, 40, 29, 8, 12, 16, 10, 28.24592 + 8, 9, 16, 0, 10, 73, 96, 61, 53, 60, 37, 51, 84, 57, 41, 51, 28.24593 + 38, 51, 93, 131, 77, 30, 111, 112, 120, 83, 92, 97, 110, 64, 53, 1, 28.24594 + 64, 95, 91, 56, 61, 64, 77, 51, 51, 71, 40, 17, 72, 110, 104, 100, 28.24595 + 110, 114, 93, 91, 97, 76, 61, 22, 100, 112, 103, 89, 93, 106, 106, 80, 28.24596 + 79, 80, 45, 6, 93, 110, 87, 96, 99, 91, 96, 85, 77, 75, 55, 5, 28.24597 + 122, 97, 95, 68, 71, 68, 92, 84, 84, 73, 53, 73, 92, 89, 95, 91, 28.24598 + 68, 71, 80, 68, 72, 76, 77, 32, 110, 110, 100, 83, 85, 77, 93, 73, 28.24599 + 84, 81, 77, 61, 118, 119, 77, 79, 84, 85, 72, 84, 85, 83, 48, 1, 28.24600 + 93, 107, 123, 83, 93, 76, 67, 68, 92, 59, 40, 0, 93, 97, 116, 96, 28.24601 + 106, 92, 91, 87, 69, 79, 48, 0, 106, 118, 79, 91, 89, 88, 79, 95, 28.24602 + 89, 77, 40, 0, 89, 89, 81, 81, 80, 75, 73, 73, 75, 56, 28, 57, 28.24603 + 76, 93, 81, 71, 85, 76, 75, 80, 75, 67, 56, 36, 87, 111, 102, 91, 28.24604 + 81, 65, 72, 77, 95, 63, 46, 99, 154, 115, 84, 60, 64, 64, 69, 89, 28.24605 + 110, 114, 118, 122, 118, 116, 112, 87, 65, 44, 29, 21, 18, 18, 14, 10, 28.24606 + 16, 17, 12, 25, 26, 28, 29, 36, 37, 32, 32, 25, 60, 112, 96, 83, 28.24607 + 71, 81, 87, 84, 69, 55, 51, 93, 97, 71, 87, 77, 77, 60, 56, 79, 28.24608 + 65, 72, 38, 34, 81, 80, 71, 71, 75, 68, 61, 63, 46, 38, 0, 80, 28.24609 + 108, 106, 119, 95, 51, 49, 64, 52, 72, 72, 37, 2, 79, 89, 87, 91, 28.24610 + 72, 76, 77, 76, 56, 67, 53, 32, 75, 115, 83, 63, 65, 57, 60, 79, 28.24611 + 64, 38, 21, 71, 87, 73, 79, 71, 56, 71, 65, 52, 53, 42, 37, 1, 28.24612 + 73, 80, 76, 56, 76, 92, 85, 60, 51, 42, 30, 83, 123, 71, 77, 65, 28.24613 + 76, 56, 56, 46, 52, 34, 2, 92, 88, 79, 45, 52, 67, 72, 64, 75, 28.24614 + 65, 30, 4, 103, 106, 56, 42, 41, 38, 49, 48, 36, 38, 26, 18, 0, 28.24615 + 83, 111, 75, 73, 67, 59, 44, 77, 55, 57, 59, 28, 1, 77, 93, 51, 28.24616 + 45, 52, 49, 48, 53, 33, 28, 0, 84, 93, 57, 75, 55, 46, 52, 41, 28.24617 + 44, 37, 28, 9, 85, 95, 68, 65, 49, 55, 53, 51, 41, 60, 26, 5, 28.24618 + 63, 83, 77, 56, 45, 53, 45, 48, 53, 49, 26, 2, 97, 120, 110, 115, 28.24619 + 88, 91, 92, 100, 92, 91, 42, 89, 91, 84, 65, 57, 46, 55, 52, 52, 28.24620 + 53, 34, 46, 28, 91, 104, 102, 29, 67, 65, 73, 42, 44, 41, 10, 53, 28.24621 + 99, 76, 67, 69, 72, 53, 49, 65, 52, 17, 9, 51, 93, 64, 56, 51, 28.24622 + 59, 65, 59, 55, 83, 49, 41, 2, 99, 103, 96, 103, 95, 76, 73, 67, 28.24623 + 103, 83, 79, 51, 64, 92, 51, 21, 33, 10, 18, 26, 28, 30, 1, 0, 28.24624 + 57, 83, 53, 51, 46, 46, 49, 48, 40, 49, 10, 0, 42, 44, 42, 37, 28.24625 + 51, 41, 17, 24, 36, 12, 0, 106, 61, 59, 65, 37, 72, 36, 33, 32, 28.24626 + 38, 30, 30, 14, 18, 34, 24, 2, 9, 2, 4, 1, 5, 20, 0, 32, 28.24627 + 85, 87, 45, 48, 60, 48, 41, 68, 32, 28, 42, 33, 71, 108, 107, 24, 28.24628 + 32, 116, 119, 80, 87, 95, 83, 103, 79, 52, 0, 69, 100, 91, 59, 57, 28.24629 + 64, 71, 52, 51, 65, 42, 18, 68, 115, 108, 104, 92, 103, 104, 92, 93, 28.24630 + 89, 64, 25, 99, 104, 103, 96, 81, 84, 92, 77, 79, 75, 45, 5, 95, 28.24631 + 114, 91, 92, 92, 89, 102, 91, 77, 80, 59, 6, 124, 111, 91, 71, 68, 28.24632 + 69, 69, 76, 85, 79, 51, 97, 102, 89, 88, 71, 69, 91, 99, 68, 88, 28.24633 + 83, 84, 46, 119, 95, 84, 79, 84, 73, 93, 72, 89, 79, 65, 65, 122, 28.24634 + 110, 79, 87, 71, 83, 88, 103, 81, 81, 51, 0, 89, 110, 123, 83, 81, 28.24635 + 79, 71, 69, 103, 57, 42, 5, 100, 112, 99, 87, 99, 81, 81, 87, 71, 28.24636 + 81, 49, 1, 102, 122, 79, 76, 87, 85, 88, 95, 88, 72, 41, 0, 92, 28.24637 + 83, 83, 89, 76, 75, 76, 71, 67, 56, 30, 60, 81, 85, 83, 80, 85, 28.24638 + 75, 67, 71, 65, 71, 60, 29, 89, 110, 104, 75, 84, 64, 75, 87, 77, 28.24639 + 69, 42, 89, 150, 123, 93, 77, 60, 52, 46, 48, 42, 41, 41, 41, 45, 28.24640 + 38, 33, 30, 22, 22, 20, 18, 16, 14, 14, 16, 10, 18, 29, 34, 44, 28.24641 + 44, 41, 38, 32, 33, 33, 25, 63, 116, 85, 88, 88, 83, 72, 95, 83, 28.24642 + 69, 37, 87, 100, 69, 91, 67, 55, 55, 53, 73, 67, 73, 41, 24, 83, 28.24643 + 87, 92, 87, 88, 81, 73, 63, 51, 40, 0, 76, 102, 85, 104, 51, 48, 28.24644 + 59, 64, 51, 60, 61, 59, 0, 106, 96, 68, 100, 72, 64, 61, 64, 55, 28.24645 + 80, 57, 30, 81, 103, 76, 75, 59, 61, 53, 75, 65, 40, 24, 68, 83, 28.24646 + 99, 112, 65, 53, 49, 52, 53, 56, 49, 37, 0, 114, 72, 65, 59, 72, 28.24647 + 71, 85, 59, 52, 46, 29, 81, 122, 89, 83, 60, 72, 51, 51, 44, 56, 28.24648 + 40, 0, 96, 88, 91, 48, 51, 52, 77, 80, 77, 75, 30, 5, 95, 110, 28.24649 + 59, 42, 33, 37, 34, 49, 28, 37, 28, 21, 1, 115, 115, 73, 88, 38, 28.24650 + 59, 79, 42, 48, 63, 53, 30, 0, 84, 87, 55, 41, 49, 102, 55, 65, 28.24651 + 32, 26, 0, 83, 96, 60, 69, 42, 60, 45, 40, 40, 52, 28, 16, 79, 28.24652 + 91, 56, 69, 52, 51, 49, 51, 45, 61, 26, 4, 57, 85, 65, 44, 44, 28.24653 + 53, 77, 49, 49, 59, 28, 2, 91, 126, 107, 102, 85, 89, 88, 88, 93, 28.24654 + 85, 41, 91, 103, 69, 96, 72, 53, 48, 51, 46, 38, 37, 44, 28, 89, 28.24655 + 95, 87, 37, 75, 83, 42, 44, 25, 22, 9, 55, 100, 60, 61, 64, 38, 28.24656 + 32, 28, 52, 59, 17, 12, 67, 92, 79, 53, 52, 49, 53, 48, 65, 75, 28.24657 + 51, 37, 5, 97, 115, 97, 97, 69, 68, 71, 65, 97, 77, 79, 45, 64, 28.24658 + 91, 57, 13, 32, 9, 20, 22, 28, 28, 0, 0, 71, 75, 59, 48, 44, 28.24659 + 60, 59, 49, 34, 51, 10, 0, 61, 46, 32, 29, 18, 53, 26, 26, 26, 28.24660 + 12, 0, 91, 75, 69, 36, 21, 75, 33, 30, 26, 48, 20, 30, 14, 14, 28.24661 + 26, 21, 13, 34, 20, 21, 6, 6, 13, 0, 41, 89, 79, 41, 46, 48, 28.24662 + 41, 55, 75, 32, 29, 33, 33, 63, 108, 46, 38, 33, 118, 107, 77, 89, 28.24663 + 95, 80, 104, 67, 55, 0, 60, 93, 84, 59, 65, 57, 77, 49, 63, 72, 28.24664 + 46, 21, 45, 102, 114, 100, 104, 100, 89, 85, 93, 96, 60, 29, 73, 110, 28.24665 + 87, 97, 102, 87, 96, 81, 77, 87, 49, 6, 95, 111, 81, 83, 107, 89, 28.24666 + 87, 75, 68, 71, 59, 5, 123, 110, 106, 72, 72, 68, 72, 72, 84, 76, 28.24667 + 49, 103, 99, 91, 73, 68, 77, 114, 68, 69, 68, 81, 96, 42, 108, 89, 28.24668 + 88, 85, 83, 76, 100, 72, 83, 76, 45, 71, 123, 123, 79, 112, 79, 77, 28.24669 + 89, 107, 79, 79, 57, 0, 88, 103, 112, 81, 89, 76, 71, 65, 99, 61, 28.24670 + 44, 13, 96, 112, 92, 92, 83, 79, 104, 87, 77, 72, 51, 0, 99, 123, 28.24671 + 68, 89, 85, 80, 83, 102, 79, 71, 41, 0, 88, 83, 85, 80, 68, 72, 28.24672 + 73, 71, 77, 52, 30, 57, 93, 64, 77, 81, 89, 77, 85, 84, 53, 76, 28.24673 + 51, 26, 100, 116, 102, 85, 83, 61, 65, 85, 73, 71, 44, 84, 143, 127, 28.24674 + 104, 92, 81, 75, 53, 44, 41, 37, 34, 34, 29, 29, 28, 25, 22, 20, 28.24675 + 18, 18, 18, 18, 17, 6, 17, 29, 46, 51, 41, 42, 42, 42, 42, 36, 28.24676 + 36, 30, 59, 127, 88, 76, 92, 85, 85, 80, 76, 75, 30, 88, 88, 71, 28.24677 + 68, 69, 55, 76, 64, 60, 65, 77, 41, 20, 69, 84, 93, 71, 64, 60, 28.24678 + 68, 60, 51, 40, 0, 92, 99, 89, 97, 48, 49, 73, 51, 51, 71, 72, 28.24679 + 60, 0, 100, 87, 75, 99, 64, 61, 69, 53, 51, 76, 55, 26, 73, 122, 28.24680 + 72, 63, 65, 63, 57, 76, 64, 40, 25, 61, 95, 96, 68, 56, 67, 49, 28.24681 + 71, 68, 59, 51, 40, 6, 104, 59, 77, 51, 72, 49, 100, 55, 53, 45, 28.24682 + 30, 79, 120, 77, 88, 67, 65, 68, 45, 44, 41, 36, 0, 89, 87, 87, 28.24683 + 45, 61, 45, 56, 59, 81, 57, 30, 4, 97, 111, 65, 55, 36, 33, 32, 28.24684 + 63, 29, 33, 30, 20, 0, 106, 124, 67, 80, 38, 61, 53, 64, 53, 52, 28.24685 + 49, 30, 2, 73, 102, 53, 49, 84, 79, 60, 55, 33, 29, 5, 88, 97, 28.24686 + 51, 57, 45, 45, 40, 53, 38, 52, 29, 6, 76, 95, 67, 72, 67, 73, 28.24687 + 71, 73, 45, 67, 28, 2, 68, 77, 59, 51, 89, 44, 42, 46, 48, 65, 28.24688 + 26, 4, 124, 122, 110, 91, 91, 104, 88, 91, 91, 91, 45, 95, 87, 92, 28.24689 + 68, 89, 61, 44, 49, 34, 37, 36, 49, 25, 95, 107, 83, 29, 71, 63, 28.24690 + 41, 40, 41, 26, 10, 59, 106, 45, 51, 36, 28, 28, 25, 26, 51, 17, 28.24691 + 28, 64, 92, 91, 52, 48, 48, 61, 48, 51, 69, 55, 37, 4, 92, 115, 28.24692 + 93, 91, 77, 68, 67, 71, 84, 77, 73, 41, 76, 96, 46, 16, 13, 5, 28.24693 + 18, 21, 21, 46, 0, 2, 73, 80, 53, 53, 56, 51, 36, 57, 44, 48, 28.24694 + 12, 0, 67, 56, 29, 33, 29, 20, 28, 28, 21, 12, 1, 77, 83, 46, 28.24695 + 53, 34, 75, 30, 28, 28, 38, 21, 26, 9, 16, 21, 22, 24, 16, 20, 28.24696 + 21, 5, 6, 6, 0, 41, 97, 65, 42, 51, 53, 46, 57, 96, 36, 34, 28.24697 + 34, 30, 76, 107, 41, 63, 63, 122, 81, 76, 88, 88, 77, 116, 64, 56, 28.24698 + 0, 61, 84, 91, 60, 79, 59, 68, 48, 53, 61, 52, 29, 52, 96, 114, 28.24699 + 112, 108, 88, 112, 96, 91, 100, 61, 30, 46, 108, 107, 89, 88, 89, 77, 28.24700 + 89, 81, 76, 51, 5, 104, 116, 83, 83, 80, 88, 92, 72, 68, 73, 59, 28.24701 + 2, 123, 110, 100, 71, 68, 65, 91, 75, 73, 73, 45, 108, 84, 75, 69, 28.24702 + 76, 107, 73, 69, 75, 81, 69, 80, 24, 112, 95, 80, 81, 72, 76, 103, 28.24703 + 68, 84, 72, 51, 85, 124, 110, 83, 108, 83, 72, 81, 111, 76, 75, 56, 28.24704 + 0, 88, 92, 122, 80, 77, 67, 72, 68, 114, 75, 53, 5, 99, 114, 85, 28.24705 + 85, 77, 77, 103, 80, 77, 67, 55, 0, 85, 123, 81, 76, 79, 79, 76, 28.24706 + 102, 72, 71, 41, 0, 96, 69, 80, 71, 68, 65, 72, 68, 71, 55, 32, 28.24707 + 26, 57, 104, 77, 71, 57, 71, 59, 59, 57, 79, 53, 22, 111, 112, 108, 28.24708 + 72, 92, 65, 63, 85, 67, 69, 46, 75, 130, 123, 127, 95, 91, 79, 71, 28.24709 + 57, 53, 44, 40, 34, 30, 30, 28, 30, 26, 29, 26, 26, 24, 20, 30, 28.24710 + 6, 28, 51, 49, 45, 57, 51, 59, 64, 61, 37, 34, 24, 55, 131, 88, 28.24711 + 99, 63, 91, 102, 65, 75, 72, 33, 80, 89, 72, 75, 59, 55, 87, 67, 28.24712 + 64, 64, 83, 44, 21, 75, 81, 84, 69, 60, 61, 67, 61, 48, 38, 0, 28.24713 + 93, 95, 85, 114, 48, 49, 61, 49, 49, 56, 57, 38, 1, 67, 81, 64, 28.24714 + 110, 67, 64, 67, 53, 53, 83, 59, 24, 67, 120, 65, 63, 68, 57, 67, 28.24715 + 60, 56, 41, 24, 73, 92, 102, 53, 52, 51, 64, 60, 51, 49, 46, 40, 28.24716 + 0, 100, 61, 69, 52, 77, 51, 84, 55, 53, 40, 16, 71, 120, 83, 92, 28.24717 + 67, 63, 53, 49, 49, 44, 36, 0, 91, 75, 106, 42, 48, 45, 45, 57, 28.24718 + 85, 60, 32, 2, 99, 118, 69, 73, 29, 42, 29, 73, 30, 29, 28, 20, 28.24719 + 0, 91, 99, 51, 93, 38, 59, 45, 68, 49, 53, 48, 30, 2, 87, 108, 28.24720 + 55, 38, 80, 52, 53, 57, 42, 30, 0, 79, 87, 57, 42, 42, 40, 38, 28.24721 + 72, 40, 68, 32, 1, 61, 91, 83, 51, 64, 59, 51, 44, 44, 73, 29, 28.24722 + 1, 63, 77, 56, 79, 95, 68, 41, 45, 46, 60, 28, 2, 108, 114, 108, 28.24723 + 85, 92, 107, 87, 87, 87, 89, 44, 100, 102, 75, 75, 81, 53, 38, 60, 28.24724 + 36, 36, 40, 37, 21, 97, 96, 37, 87, 38, 42, 51, 38, 41, 29, 13, 28.24725 + 32, 97, 46, 40, 28, 25, 26, 24, 25, 52, 20, 10, 56, 84, 99, 48, 28.24726 + 41, 46, 71, 48, 51, 83, 41, 41, 1, 93, 116, 95, 67, 69, 67, 67, 28.24727 + 97, 83, 72, 71, 34, 76, 88, 67, 13, 13, 10, 12, 22, 20, 26, 0, 28.24728 + 0, 48, 69, 38, 33, 30, 46, 37, 60, 36, 73, 12, 0, 53, 53, 25, 28.24729 + 17, 24, 30, 25, 17, 30, 13, 2, 25, 96, 41, 36, 30, 59, 26, 24, 28.24730 + 24, 48, 17, 18, 5, 20, 14, 2, 6, 5, 18, 6, 4, 13, 1, 0, 28.24731 + 45, 91, 55, 32, 51, 38, 45, 45, 81, 42, 37, 33, 25, 71, 111, 45, 28.24732 + 61, 5, 122, 79, 81, 87, 89, 73, 116, 65, 51, 0, 55, 77, 97, 56, 28.24733 + 87, 56, 64, 49, 56, 46, 59, 29, 33, 88, 118, 115, 119, 87, 108, 122, 28.24734 + 80, 107, 57, 33, 26, 119, 112, 76, 76, 81, 93, 92, 76, 75, 52, 4, 28.24735 + 108, 120, 84, 77, 80, 80, 73, 75, 68, 73, 60, 2, 123, 111, 111, 71, 28.24736 + 68, 68, 73, 76, 73, 68, 37, 112, 77, 72, 65, 110, 88, 68, 71, 75, 28.24737 + 84, 72, 67, 21, 99, 97, 77, 72, 72, 76, 112, 67, 79, 71, 46, 96, 28.24738 + 128, 115, 80, 110, 71, 77, 81, 114, 76, 76, 60, 0, 80, 88, 122, 68, 28.24739 + 81, 68, 77, 67, 134, 61, 51, 0, 110, 115, 81, 83, 75, 75, 111, 77, 28.24740 + 73, 68, 52, 0, 79, 122, 76, 76, 73, 71, 76, 112, 76, 75, 42, 0, 28.24741 + 84, 76, 75, 67, 64, 73, 67, 68, 64, 51, 34, 32, 56, 107, 106, 59, 28.24742 + 71, 61, 53, 56, 53, 96, 52, 21, 108, 118, 120, 75, 100, 97, 60, 77, 28.24743 + 69, 60, 45, 69, 115, 126, 118, 114, 93, 85, 76, 71, 63, 55, 41, 42, 28.24744 + 41, 37, 36, 36, 22, 24, 24, 22, 20, 20, 36, 5, 28, 55, 37, 63, 28.24745 + 44, 45, 63, 85, 81, 52, 36, 32, 48, 136, 79, 108, 64, 102, 77, 68, 28.24746 + 72, 60, 29, 80, 84, 68, 72, 60, 55, 99, 61, 65, 60, 97, 46, 24, 28.24747 + 79, 75, 59, 60, 61, 61, 61, 63, 48, 38, 0, 96, 80, 80, 130, 48, 28.24748 + 48, 56, 49, 51, 55, 64, 42, 0, 69, 85, 67, 110, 64, 64, 63, 53, 28.24749 + 49, 92, 52, 20, 69, 134, 60, 65, 61, 53, 55, 56, 56, 41, 25, 65, 28.24750 + 97, 60, 52, 51, 52, 49, 52, 55, 51, 41, 38, 1, 115, 63, 61, 51, 28.24751 + 92, 49, 100, 51, 46, 37, 17, 65, 119, 67, 102, 57, 57, 53, 44, 38, 28.24752 + 48, 37, 0, 104, 73, 93, 42, 51, 81, 84, 56, 96, 59, 33, 1, 115, 28.24753 + 127, 77, 75, 25, 32, 30, 81, 37, 26, 28, 20, 0, 89, 111, 63, 95, 28.24754 + 38, 52, 44, 77, 48, 53, 48, 32, 0, 91, 99, 51, 42, 88, 44, 57, 28.24755 + 55, 34, 30, 0, 89, 106, 53, 42, 41, 38, 38, 81, 40, 40, 29, 0, 28.24756 + 55, 96, 97, 46, 44, 42, 41, 38, 38, 85, 29, 1, 57, 65, 55, 83, 28.24757 + 110, 45, 40, 40, 45, 77, 29, 1, 112, 126, 120, 84, 85, 115, 85, 84, 28.24758 + 85, 87, 26, 104, 99, 93, 57, 92, 51, 38, 44, 33, 36, 33, 37, 17, 28.24759 + 102, 97, 36, 97, 37, 40, 38, 37, 37, 29, 14, 22, 97, 42, 30, 29, 28.24760 + 68, 26, 24, 26, 40, 20, 10, 51, 56, 107, 44, 44, 45, 56, 48, 48, 28.24761 + 68, 45, 38, 1, 84, 119, 87, 71, 67, 67, 64, 99, 80, 75, 72, 28, 28.24762 + 81, 89, 71, 16, 5, 12, 17, 10, 17, 22, 0, 0, 40, 68, 21, 17, 28.24763 + 17, 24, 33, 72, 34, 45, 13, 0, 45, 44, 29, 17, 25, 24, 22, 26, 28.24764 + 30, 13, 8, 5, 97, 45, 33, 29, 48, 28, 22, 22, 26, 18, 16, 8, 28.24765 + 6, 14, 1, 30, 1, 0, 2, 5, 4, 1, 0, 38, 83, 40, 37, 53, 28.24766 + 41, 33, 53, 91, 28, 26, 38, 21, 92, 106, 9, 8, 0, 162, 165, 161, 28.24767 + 159, 159, 170, 173, 154, 132, 0, 162, 179, 179, 175, 181, 155, 165, 177, 178, 28.24768 + 148, 84, 124, 179, 181, 165, 181, 163, 165, 165, 174, 159, 153, 140, 0, 170, 28.24769 + 185, 182, 151, 186, 155, 153, 155, 169, 161, 72, 100, 169, 169, 170, 174, 175, 28.24770 + 173, 161, 158, 170, 163, 169, 46, 161, 157, 150, 150, 165, 171, 154, 140, 139, 28.24771 + 122, 130, 65, 148, 170, 148, 150, 147, 131, 161, 131, 155, 142, 126, 68, 102, 28.24772 + 170, 138, 146, 146, 169, 165, 146, 163, 124, 130, 8, 163, 166, 143, 171, 185, 28.24773 + 151, 134, 165, 144, 153, 77, 73, 153, 158, 158, 120, 115, 123, 138, 124, 142, 28.24774 + 123, 115, 30, 155, 163, 170, 166, 153, 157, 153, 138, 135, 115, 100, 0, 150, 28.24775 + 157, 153, 159, 140, 138, 128, 153, 173, 139, 136, 37, 148, 171, 158, 135, 134, 28.24776 + 150, 130, 131, 120, 119, 79, 102, 174, 159, 135, 157, 148, 130, 132, 130, 147, 28.24777 + 171, 114, 1, 153, 139, 154, 153, 138, 123, 131, 146, 148, 142, 33, 151, 154, 28.24778 + 127, 132, 128, 126, 153, 132, 114, 128, 147, 34, 144, 147, 134, 150, 148, 142, 28.24779 + 135, 130, 128, 110, 110, 99, 4, 104, 151, 127, 135, 112, 132, 102, 135, 111, 28.24780 + 106, 96, 34, 142, 147, 123, 148, 132, 116, 112, 104, 100, 104, 85, 13, 135, 28.24781 + 136, 144, 143, 112, 115, 123, 107, 135, 84, 17, 169, 153, 153, 132, 171, 151, 28.24782 + 148, 123, 135, 130, 130, 115, 65, 91, 147, 138, 120, 112, 118, 138, 115, 132, 28.24783 + 97, 56, 73, 163, 177, 162, 182, 144, 139, 140, 163, 132, 128, 38, 106, 135, 28.24784 + 138, 131, 107, 104, 107, 139, 104, 104, 108, 49, 91, 136, 157, 130, 162, 106, 28.24785 + 103, 95, 103, 92, 104, 99, 28, 124, 104, 108, 103, 126, 106, 97, 100, 122, 28.24786 + 83, 99, 26, 150, 130, 124, 126, 127, 108, 110, 132, 93, 92, 83, 8, 91, 28.24787 + 139, 120, 140, 87, 89, 87, 107, 88, 88, 36, 114, 124, 123, 122, 119, 95, 28.24788 + 99, 126, 126, 92, 84, 69, 4, 122, 102, 123, 123, 88, 99, 80, 85, 83, 28.24789 + 110, 81, 4, 146, 123, 154, 107, 95, 115, 84, 80, 80, 77, 38, 76, 116, 28.24790 + 84, 127, 114, 72, 111, 114, 64, 75, 69, 8, 119, 161, 136, 114, 104, 107, 28.24791 + 161, 131, 102, 103, 89, 85, 2, 91, 97, 97, 57, 52, 51, 57, 53, 55, 28.24792 + 56, 49, 16, 104, 106, 73, 119, 92, 103, 63, 68, 63, 63, 61, 8, 110, 28.24793 + 127, 111, 114, 130, 65, 106, 111, 73, 68, 61, 40, 0, 123, 131, 118, 110, 28.24794 + 110, 91, 87, 84, 76, 81, 4, 124, 103, 128, 87, 53, 93, 61, 99, 57, 28.24795 + 52, 13, 92, 122, 76, 88, 56, 87, 45, 84, 111, 76, 53, 41, 25, 56, 28.24796 + 103, 96, 103, 102, 68, 46, 48, 53, 56, 44, 12, 89, 89, 52, 84, 56, 28.24797 + 91, 48, 45, 42, 37, 1, 123, 116, 107, 42, 44, 93, 83, 87, 111, 49, 28.24798 + 38, 33, 2, 91, 38, 38, 36, 36, 104, 84, 55, 32, 32, 26, 2, 51, 28.24799 + 84, 60, 84, 100, 22, 30, 36, 24, 29, 20, 0, 77, 83, 33, 26, 21, 28.24800 + 22, 34, 76, 25, 22, 13, 8, 40, 97, 68, 42, 29, 97, 30, 30, 33, 28.24801 + 24, 59, 18, 12, 97, 38, 114, 30, 181, 178, 181, 158, 159, 167, 173, 155, 28.24802 + 127, 1, 163, 183, 177, 170, 183, 161, 162, 175, 178, 134, 75, 128, 173, 179, 28.24803 + 177, 161, 162, 158, 162, 174, 162, 153, 140, 0, 167, 181, 178, 155, 179, 157, 28.24804 + 150, 162, 162, 154, 88, 103, 159, 167, 170, 159, 162, 153, 155, 163, 158, 157, 28.24805 + 162, 67, 155, 159, 150, 151, 153, 169, 167, 158, 136, 122, 126, 83, 150, 173, 28.24806 + 151, 148, 158, 144, 167, 143, 157, 139, 111, 64, 106, 170, 140, 144, 144, 166, 28.24807 + 162, 147, 159, 120, 122, 5, 157, 159, 155, 169, 181, 155, 135, 163, 147, 144, 28.24808 + 64, 73, 142, 150, 122, 115, 118, 124, 127, 131, 127, 122, 110, 46, 150, 159, 28.24809 + 158, 178, 163, 150, 151, 153, 135, 116, 104, 0, 146, 154, 165, 155, 140, 139, 28.24810 + 136, 147, 162, 148, 134, 42, 143, 167, 157, 136, 135, 147, 150, 126, 112, 119, 28.24811 + 75, 103, 166, 148, 134, 140, 142, 142, 130, 130, 140, 162, 102, 0, 151, 143, 28.24812 + 144, 151, 139, 128, 134, 140, 147, 140, 40, 155, 148, 135, 135, 118, 144, 146, 28.24813 + 119, 126, 115, 135, 52, 136, 147, 143, 144, 132, 132, 134, 128, 136, 110, 112, 28.24814 + 88, 2, 111, 139, 119, 108, 119, 120, 108, 124, 110, 108, 99, 48, 135, 150, 28.24815 + 126, 143, 139, 123, 127, 127, 115, 103, 97, 12, 131, 132, 132, 116, 114, 128, 28.24816 + 112, 115, 127, 91, 22, 158, 151, 151, 140, 150, 151, 144, 128, 142, 131, 135, 28.24817 + 115, 60, 93, 148, 136, 108, 119, 134, 130, 114, 128, 103, 55, 77, 159, 169, 28.24818 + 157, 167, 142, 136, 140, 158, 132, 126, 46, 111, 134, 136, 123, 106, 110, 108, 28.24819 + 132, 106, 102, 100, 48, 89, 136, 148, 130, 147, 114, 107, 100, 100, 93, 103, 28.24820 + 99, 40, 107, 110, 111, 127, 124, 111, 97, 99, 111, 89, 96, 26, 146, 134, 28.24821 + 114, 116, 100, 100, 112, 128, 87, 93, 84, 6, 99, 128, 114, 138, 83, 91, 28.24822 + 91, 99, 85, 84, 34, 108, 120, 122, 118, 102, 119, 119, 120, 104, 91, 85, 28.24823 + 68, 4, 122, 104, 120, 114, 89, 95, 92, 75, 92, 99, 76, 4, 138, 136, 28.24824 + 128, 103, 84, 115, 84, 84, 77, 76, 36, 80, 111, 112, 120, 89, 71, 108, 28.24825 + 111, 65, 75, 68, 9, 112, 150, 132, 128, 96, 97, 134, 127, 99, 108, 95, 28.24826 + 89, 14, 89, 92, 91, 55, 51, 51, 46, 53, 52, 51, 48, 20, 103, 106, 28.24827 + 79, 106, 89, 102, 64, 67, 71, 61, 51, 9, 106, 107, 107, 114, 102, 69, 28.24828 + 99, 104, 81, 68, 56, 40, 0, 130, 135, 110, 104, 89, 88, 87, 79, 75, 28.24829 + 75, 0, 114, 116, 126, 76, 53, 87, 64, 97, 63, 49, 17, 89, 123, 84, 28.24830 + 81, 56, 79, 46, 51, 49, 49, 53, 41, 22, 56, 110, 80, 95, 99, 63, 28.24831 + 49, 51, 77, 60, 49, 14, 88, 79, 57, 64, 68, 87, 49, 45, 42, 30, 28.24832 + 1, 111, 102, 91, 59, 45, 96, 88, 71, 65, 57, 38, 30, 2, 88, 55, 28.24833 + 46, 37, 34, 44, 93, 83, 33, 40, 25, 1, 61, 83, 68, 93, 63, 38, 28.24834 + 29, 37, 24, 22, 18, 0, 81, 80, 30, 30, 24, 22, 24, 76, 29, 42, 28.24835 + 13, 8, 36, 87, 63, 48, 28, 80, 34, 28, 29, 21, 52, 16, 12, 104, 28.24836 + 51, 104, 41, 169, 174, 169, 161, 159, 162, 173, 155, 147, 17, 162, 179, 173, 28.24837 + 173, 178, 162, 162, 169, 175, 140, 69, 131, 175, 175, 179, 166, 155, 151, 158, 28.24838 + 169, 159, 155, 138, 0, 165, 174, 157, 173, 165, 154, 153, 155, 166, 153, 84, 28.24839 + 110, 170, 163, 153, 155, 163, 166, 166, 161, 158, 154, 166, 71, 150, 158, 153, 28.24840 + 150, 148, 158, 159, 162, 146, 123, 120, 80, 153, 175, 150, 148, 143, 146, 148, 28.24841 + 157, 151, 140, 136, 60, 118, 162, 144, 144, 154, 165, 153, 157, 155, 118, 123, 28.24842 + 6, 153, 163, 147, 150, 148, 139, 136, 162, 147, 139, 57, 76, 139, 151, 126, 28.24843 + 106, 119, 110, 115, 120, 116, 116, 111, 48, 144, 159, 158, 158, 169, 159, 140, 28.24844 + 147, 135, 122, 102, 1, 146, 162, 161, 150, 144, 136, 139, 136, 131, 142, 134, 28.24845 + 52, 135, 166, 153, 136, 132, 138, 151, 116, 124, 122, 72, 107, 165, 157, 153, 28.24846 + 142, 142, 142, 139, 131, 136, 148, 123, 4, 144, 144, 148, 144, 144, 132, 135, 28.24847 + 136, 143, 135, 48, 148, 150, 127, 123, 143, 127, 110, 128, 127, 107, 130, 56, 28.24848 + 132, 146, 138, 135, 139, 136, 131, 131, 123, 108, 108, 112, 18, 99, 134, 114, 28.24849 + 119, 116, 116, 114, 116, 108, 107, 99, 53, 131, 147, 126, 140, 130, 128, 119, 28.24850 + 122, 116, 111, 95, 10, 127, 131, 123, 115, 127, 107, 114, 106, 123, 79, 32, 28.24851 + 150, 150, 150, 144, 136, 126, 128, 139, 131, 135, 130, 115, 56, 97, 144, 134, 28.24852 + 114, 118, 146, 132, 118, 119, 107, 55, 110, 159, 158, 154, 159, 150, 140, 144, 28.24853 + 157, 131, 128, 56, 107, 134, 135, 122, 106, 112, 108, 130, 104, 97, 95, 44, 28.24854 + 93, 132, 143, 131, 143, 123, 104, 102, 96, 92, 102, 99, 44, 116, 114, 107, 28.24855 + 135, 108, 107, 99, 97, 110, 91, 99, 40, 135, 128, 111, 118, 136, 138, 136, 28.24856 + 124, 88, 95, 73, 13, 99, 120, 110, 108, 81, 85, 95, 81, 84, 84, 46, 28.24857 + 102, 120, 122, 118, 104, 100, 92, 103, 92, 88, 85, 67, 14, 127, 110, 131, 28.24858 + 87, 76, 84, 88, 75, 84, 88, 76, 5, 134, 120, 136, 123, 103, 120, 87, 28.24859 + 84, 83, 64, 42, 92, 100, 120, 104, 71, 77, 108, 112, 68, 71, 68, 10, 28.24860 + 107, 150, 134, 122, 112, 100, 107, 99, 100, 106, 95, 84, 8, 88, 99, 71, 28.24861 + 49, 48, 46, 46, 48, 56, 49, 38, 20, 97, 107, 88, 95, 77, 95, 64, 28.24862 + 64, 67, 64, 61, 1, 103, 106, 110, 123, 79, 69, 88, 107, 76, 71, 59, 28.24863 + 40, 0, 112, 136, 108, 102, 88, 92, 88, 93, 72, 76, 0, 107, 103, 77, 28.24864 + 56, 81, 77, 80, 92, 57, 51, 20, 83, 115, 77, 102, 55, 49, 48, 48, 28.24865 + 48, 49, 53, 36, 20, 55, 100, 87, 91, 92, 65, 51, 52, 55, 60, 45, 28.24866 + 20, 80, 73, 75, 75, 69, 80, 48, 44, 44, 37, 2, 107, 85, 77, 51, 28.24867 + 44, 91, 88, 65, 60, 52, 48, 33, 0, 96, 38, 41, 44, 36, 34, 33, 28.24868 + 85, 61, 38, 25, 1, 60, 72, 77, 110, 37, 28, 51, 51, 22, 22, 18, 28.24869 + 0, 72, 79, 51, 40, 26, 21, 55, 41, 26, 26, 12, 6, 34, 36, 64, 28.24870 + 51, 25, 22, 25, 28, 25, 25, 44, 13, 16, 96, 63, 93, 83, 166, 171, 28.24871 + 169, 155, 158, 162, 169, 150, 142, 0, 162, 183, 169, 169, 178, 173, 159, 167, 28.24872 + 169, 138, 60, 132, 174, 165, 153, 154, 170, 166, 166, 167, 166, 153, 136, 17, 28.24873 + 163, 171, 154, 163, 159, 155, 150, 158, 158, 135, 81, 115, 166, 162, 174, 162, 28.24874 + 171, 166, 162, 157, 155, 159, 158, 79, 147, 165, 154, 148, 150, 144, 151, 158, 28.24875 + 130, 131, 111, 85, 159, 182, 135, 138, 143, 153, 139, 142, 136, 135, 134, 55, 28.24876 + 115, 165, 143, 146, 158, 154, 154, 153, 138, 122, 118, 8, 155, 162, 159, 158, 28.24877 + 155, 136, 153, 150, 154, 120, 53, 75, 131, 111, 114, 100, 103, 106, 107, 112, 28.24878 + 111, 112, 103, 53, 139, 158, 153, 154, 165, 167, 146, 134, 139, 119, 88, 1, 28.24879 + 143, 155, 159, 147, 147, 154, 144, 144, 140, 142, 135, 60, 131, 153, 151, 138, 28.24880 + 132, 136, 146, 134, 120, 92, 64, 108, 161, 153, 155, 159, 147, 158, 147, 138, 28.24881 + 132, 143, 118, 1, 142, 147, 135, 139, 143, 134, 124, 136, 127, 131, 55, 144, 28.24882 + 148, 127, 130, 130, 128, 111, 111, 127, 102, 122, 63, 128, 142, 140, 142, 138, 28.24883 + 132, 131, 132, 134, 110, 111, 110, 5, 103, 119, 108, 104, 114, 112, 108, 120, 28.24884 + 100, 107, 100, 61, 126, 146, 128, 140, 144, 110, 123, 122, 116, 107, 85, 20, 28.24885 + 116, 128, 139, 122, 100, 127, 115, 118, 120, 75, 29, 136, 153, 148, 142, 127, 28.24886 + 134, 136, 131, 128, 135, 132, 116, 48, 103, 143, 128, 108, 122, 127, 122, 112, 28.24887 + 116, 106, 55, 87, 155, 165, 148, 139, 139, 144, 154, 151, 134, 127, 63, 106, 28.24888 + 131, 140, 108, 112, 108, 104, 136, 106, 85, 88, 41, 93, 134, 130, 124, 130, 28.24889 + 135, 104, 108, 97, 95, 103, 97, 48, 110, 112, 114, 118, 110, 110, 104, 99, 28.24890 + 104, 91, 99, 44, 132, 130, 111, 119, 115, 119, 106, 103, 103, 102, 69, 20, 28.24891 + 96, 111, 118, 106, 81, 89, 92, 77, 84, 88, 49, 102, 118, 119, 115, 122, 28.24892 + 97, 95, 96, 103, 80, 84, 68, 6, 114, 100, 100, 114, 69, 102, 102, 76, 28.24893 + 73, 92, 79, 6, 122, 124, 135, 108, 99, 132, 93, 88, 81, 73, 45, 92, 28.24894 + 84, 114, 99, 72, 75, 100, 100, 65, 72, 65, 9, 111, 143, 127, 99, 107, 28.24895 + 103, 99, 95, 102, 110, 95, 83, 10, 68, 95, 55, 44, 48, 40, 51, 48, 28.24896 + 53, 41, 37, 18, 92, 87, 79, 83, 75, 88, 71, 73, 69, 63, 61, 0, 28.24897 + 100, 103, 102, 120, 69, 76, 85, 96, 87, 65, 59, 38, 0, 119, 136, 100, 28.24898 + 96, 88, 92, 88, 93, 71, 72, 0, 100, 106, 73, 51, 76, 51, 67, 59, 28.24899 + 73, 51, 24, 80, 93, 97, 77, 65, 46, 46, 48, 48, 48, 59, 42, 17, 28.24900 + 63, 96, 91, 81, 83, 76, 51, 52, 61, 60, 49, 21, 85, 72, 71, 63, 28.24901 + 69, 64, 46, 44, 41, 38, 2, 100, 77, 68, 53, 45, 89, 95, 97, 72, 28.24902 + 57, 40, 34, 0, 93, 55, 51, 45, 29, 34, 33, 33, 52, 38, 26, 2, 28.24903 + 65, 75, 65, 48, 21, 33, 33, 29, 22, 21, 17, 0, 67, 77, 32, 41, 28.24904 + 30, 21, 40, 34, 36, 28, 12, 5, 20, 59, 55, 52, 24, 21, 21, 21, 28.24905 + 14, 18, 28, 10, 18, 80, 63, 64, 92, 153, 159, 162, 158, 158, 163, 166, 28.24906 + 148, 126, 0, 161, 170, 167, 174, 175, 173, 163, 163, 148, 135, 57, 131, 177, 28.24907 + 177, 165, 169, 174, 169, 167, 166, 158, 146, 132, 0, 162, 166, 151, 167, 157, 28.24908 + 155, 151, 153, 159, 124, 81, 112, 162, 170, 165, 163, 167, 171, 163, 161, 163, 28.24909 + 157, 158, 84, 97, 157, 157, 147, 150, 148, 147, 144, 143, 122, 114, 88, 153, 28.24910 + 157, 146, 158, 150, 158, 154, 146, 139, 136, 112, 49, 115, 162, 143, 155, 155, 28.24911 + 148, 153, 154, 131, 120, 119, 24, 153, 154, 154, 147, 140, 148, 142, 148, 154, 28.24912 + 116, 48, 77, 134, 112, 95, 104, 104, 108, 104, 108, 106, 111, 103, 59, 138, 28.24913 + 157, 154, 151, 166, 150, 148, 135, 138, 112, 88, 0, 138, 146, 163, 153, 136, 28.24914 + 142, 146, 150, 148, 140, 136, 68, 89, 150, 155, 144, 131, 130, 142, 135, 114, 28.24915 + 91, 61, 110, 158, 155, 139, 147, 153, 144, 142, 146, 131, 142, 100, 0, 146, 28.24916 + 151, 150, 139, 143, 136, 135, 136, 131, 132, 60, 139, 144, 143, 126, 136, 118, 28.24917 + 106, 107, 128, 128, 123, 64, 127, 136, 134, 134, 136, 135, 138, 136, 134, 107, 28.24918 + 111, 89, 8, 93, 120, 103, 115, 110, 100, 110, 110, 108, 102, 99, 64, 84, 28.24919 + 140, 126, 144, 143, 118, 123, 108, 114, 92, 84, 20, 122, 123, 119, 108, 127, 28.24920 + 130, 131, 124, 124, 72, 29, 85, 154, 146, 138, 131, 135, 132, 130, 131, 135, 28.24921 + 111, 114, 44, 110, 142, 130, 118, 126, 116, 115, 115, 115, 97, 53, 85, 157, 28.24922 + 146, 155, 135, 155, 143, 150, 138, 132, 131, 71, 81, 128, 140, 107, 112, 116, 28.24923 + 118, 130, 104, 81, 83, 41, 93, 128, 119, 120, 114, 116, 110, 107, 112, 92, 28.24924 + 103, 97, 51, 111, 114, 112, 114, 106, 106, 110, 99, 96, 93, 96, 48, 123, 28.24925 + 127, 120, 116, 93, 114, 104, 108, 103, 92, 83, 17, 102, 116, 104, 97, 77, 28.24926 + 89, 85, 77, 80, 77, 48, 63, 112, 118, 115, 118, 95, 87, 106, 92, 81, 28.24927 + 81, 65, 8, 111, 116, 95, 104, 93, 106, 108, 72, 80, 88, 75, 10, 118, 28.24928 + 118, 131, 99, 118, 122, 104, 88, 73, 72, 46, 89, 97, 108, 99, 96, 69, 28.24929 + 96, 97, 65, 71, 65, 16, 99, 147, 123, 106, 103, 100, 107, 104, 103, 106, 28.24930 + 104, 77, 18, 57, 89, 49, 46, 52, 41, 46, 38, 44, 38, 37, 20, 49, 28.24931 + 96, 67, 102, 76, 81, 79, 77, 71, 72, 55, 0, 100, 104, 104, 77, 92, 28.24932 + 93, 80, 97, 93, 71, 69, 37, 0, 122, 131, 102, 96, 91, 93, 89, 79, 28.24933 + 69, 80, 8, 106, 95, 64, 56, 83, 79, 61, 67, 76, 49, 28, 38, 84, 28.24934 + 102, 100, 60, 55, 53, 48, 44, 46, 53, 38, 17, 59, 95, 81, 81, 77, 28.24935 + 72, 48, 46, 59, 63, 44, 21, 79, 75, 68, 61, 68, 81, 49, 46, 41, 28.24936 + 36, 2, 104, 87, 68, 41, 48, 41, 51, 52, 42, 56, 38, 30, 6, 81, 28.24937 + 46, 38, 26, 29, 26, 28, 29, 37, 29, 24, 2, 63, 69, 65, 21, 40, 28.24938 + 26, 69, 38, 34, 32, 16, 0, 53, 69, 38, 51, 44, 20, 32, 41, 30, 28.24939 + 24, 12, 5, 10, 16, 29, 38, 51, 38, 14, 12, 10, 38, 18, 8, 26, 28.24940 + 84, 68, 41, 32, 154, 158, 159, 157, 158, 158, 167, 155, 116, 2, 157, 175, 28.24941 + 163, 173, 177, 173, 165, 170, 167, 110, 51, 134, 174, 179, 167, 166, 171, 171, 28.24942 + 170, 169, 159, 158, 135, 1, 159, 173, 157, 167, 157, 150, 151, 155, 157, 95, 28.24943 + 79, 111, 142, 173, 157, 167, 157, 163, 161, 162, 144, 161, 130, 89, 96, 150, 28.24944 + 157, 153, 150, 148, 147, 150, 136, 120, 102, 96, 150, 178, 151, 158, 150, 144, 28.24945 + 158, 146, 135, 138, 99, 40, 122, 163, 142, 157, 147, 148, 159, 153, 128, 110, 28.24946 + 114, 13, 146, 150, 159, 154, 148, 153, 155, 148, 151, 114, 44, 77, 143, 106, 28.24947 + 111, 107, 128, 111, 99, 100, 104, 111, 96, 71, 89, 155, 154, 147, 162, 159, 28.24948 + 163, 157, 130, 107, 112, 1, 134, 153, 163, 151, 146, 143, 140, 139, 140, 139, 28.24949 + 135, 75, 80, 136, 142, 151, 130, 110, 135, 134, 104, 89, 55, 99, 158, 151, 28.24950 + 148, 146, 146, 139, 144, 131, 131, 144, 87, 0, 143, 143, 143, 135, 143, 138, 28.24951 + 128, 123, 140, 135, 71, 100, 130, 151, 132, 150, 123, 119, 134, 138, 100, 120, 28.24952 + 71, 93, 128, 134, 134, 128, 128, 127, 128, 108, 106, 112, 72, 4, 91, 122, 28.24953 + 119, 99, 93, 103, 97, 97, 97, 102, 96, 68, 75, 132, 140, 140, 108, 122, 28.24954 + 118, 104, 112, 95, 97, 18, 118, 119, 114, 102, 107, 97, 118, 115, 130, 72, 28.24955 + 32, 83, 153, 147, 136, 130, 131, 134, 140, 136, 138, 119, 96, 36, 106, 136, 28.24956 + 123, 118, 136, 115, 114, 112, 112, 95, 52, 81, 147, 144, 134, 139, 132, 140, 28.24957 + 146, 135, 131, 132, 72, 45, 120, 135, 106, 116, 115, 127, 122, 93, 85, 76, 28.24958 + 33, 92, 122, 123, 128, 114, 108, 112, 92, 96, 92, 102, 97, 53, 102, 110, 28.24959 + 115, 114, 108, 107, 106, 110, 99, 92, 99, 51, 71, 128, 122, 106, 111, 118, 28.24960 + 103, 114, 91, 92, 87, 16, 99, 116, 99, 75, 77, 91, 85, 80, 77, 81, 28.24961 + 65, 60, 107, 112, 112, 107, 97, 112, 84, 88, 79, 72, 64, 8, 110, 103, 28.24962 + 87, 96, 103, 75, 92, 73, 72, 83, 83, 13, 108, 131, 114, 95, 91, 93, 28.24963 + 108, 93, 72, 75, 42, 85, 91, 112, 103, 93, 71, 93, 68, 68, 72, 68, 28.24964 + 17, 108, 138, 122, 93, 87, 110, 88, 108, 104, 111, 96, 89, 13, 77, 81, 28.24965 + 48, 34, 37, 52, 37, 40, 37, 30, 33, 18, 45, 89, 110, 79, 69, 57, 28.24966 + 64, 80, 68, 64, 41, 13, 84, 103, 77, 80, 87, 80, 93, 80, 80, 73, 28.24967 + 60, 36, 0, 115, 122, 96, 95, 89, 91, 91, 77, 68, 68, 8, 93, 97, 28.24968 + 61, 48, 79, 79, 71, 56, 72, 49, 41, 33, 79, 99, 102, 60, 45, 46, 28.24969 + 44, 44, 49, 55, 37, 12, 81, 87, 79, 99, 75, 61, 48, 51, 49, 65, 28.24970 + 48, 24, 32, 81, 69, 65, 60, 59, 53, 46, 42, 28, 4, 103, 76, 65, 28.24971 + 48, 48, 56, 51, 46, 45, 59, 36, 30, 5, 79, 41, 29, 29, 26, 28, 28.24972 + 51, 37, 33, 29, 24, 2, 61, 61, 77, 44, 41, 52, 53, 24, 36, 22, 28.24973 + 16, 0, 38, 67, 41, 40, 40, 44, 46, 38, 30, 22, 10, 4, 10, 8, 28.24974 + 21, 24, 24, 34, 14, 10, 10, 26, 13, 4, 36, 72, 37, 36, 32, 171, 28.24975 + 167, 163, 162, 161, 159, 158, 158, 143, 33, 155, 167, 163, 166, 167, 174, 169, 28.24976 + 169, 167, 130, 44, 134, 171, 169, 169, 159, 167, 166, 169, 154, 158, 153, 134, 28.24977 + 1, 157, 167, 162, 153, 153, 163, 159, 163, 127, 116, 71, 124, 159, 169, 170, 28.24978 + 163, 127, 118, 130, 140, 140, 128, 130, 136, 128, 108, 119, 148, 153, 153, 150, 28.24979 + 130, 127, 114, 92, 108, 153, 175, 154, 159, 147, 158, 146, 134, 144, 132, 130, 28.24980 + 36, 128, 159, 139, 161, 157, 158, 151, 154, 140, 108, 116, 16, 150, 155, 159, 28.24981 + 153, 151, 158, 154, 154, 150, 87, 38, 77, 93, 87, 89, 106, 103, 108, 104, 28.24982 + 84, 88, 88, 111, 77, 83, 142, 151, 150, 148, 143, 142, 142, 123, 119, 91, 28.24983 + 4, 134, 130, 161, 147, 147, 143, 134, 130, 134, 128, 126, 123, 120, 83, 89, 28.24984 + 100, 111, 111, 127, 134, 120, 112, 60, 114, 154, 140, 142, 131, 140, 142, 142, 28.24985 + 140, 142, 142, 114, 5, 139, 143, 144, 131, 142, 140, 122, 139, 138, 132, 79, 28.24986 + 76, 89, 124, 120, 142, 131, 112, 104, 134, 110, 81, 73, 76, 87, 127, 96, 28.24987 + 97, 102, 100, 102, 102, 102, 114, 107, 29, 95, 114, 93, 95, 88, 103, 93, 28.24988 + 91, 104, 95, 95, 100, 68, 88, 123, 124, 96, 92, 106, 102, 115, 108, 95, 28.24989 + 13, 112, 118, 103, 119, 112, 112, 107, 112, 104, 67, 76, 69, 148, 144, 139, 28.24990 + 139, 131, 132, 130, 132, 131, 116, 111, 32, 110, 132, 123, 110, 115, 120, 110, 28.24991 + 110, 112, 97, 46, 127, 153, 131, 128, 139, 140, 140, 128, 136, 136, 131, 80, 28.24992 + 67, 112, 131, 104, 122, 119, 111, 108, 103, 85, 73, 30, 93, 119, 111, 93, 28.24993 + 95, 93, 96, 93, 96, 99, 102, 97, 57, 63, 112, 115, 114, 111, 102, 102, 28.24994 + 108, 95, 93, 93, 67, 65, 119, 119, 108, 112, 128, 111, 104, 83, 92, 81, 28.24995 + 20, 93, 96, 79, 76, 77, 77, 68, 76, 57, 71, 80, 56, 71, 97, 97, 28.24996 + 104, 81, 84, 79, 77, 79, 85, 60, 10, 100, 118, 122, 97, 102, 100, 71, 28.24997 + 96, 83, 76, 71, 12, 112, 118, 107, 124, 84, 83, 95, 91, 81, 59, 34, 28.24998 + 93, 93, 108, 97, 85, 72, 87, 72, 71, 71, 61, 18, 96, 143, 124, 114, 28.24999 + 103, 104, 108, 107, 103, 99, 97, 83, 14, 64, 37, 37, 34, 25, 34, 33, 28.25000 + 32, 33, 32, 28, 24, 44, 84, 65, 56, 57, 52, 59, 61, 63, 65, 57, 28.25001 + 2, 92, 95, 76, 75, 93, 83, 76, 76, 76, 75, 57, 33, 0, 118, 124, 28.25002 + 95, 93, 97, 91, 91, 97, 65, 71, 1, 88, 87, 63, 48, 77, 76, 76, 28.25003 + 60, 60, 48, 42, 32, 72, 87, 79, 41, 42, 52, 44, 46, 49, 52, 42, 28.25004 + 13, 64, 87, 93, 55, 64, 61, 45, 53, 60, 67, 52, 34, 24, 49, 79, 28.25005 + 77, 68, 69, 65, 55, 46, 37, 4, 93, 79, 63, 40, 46, 48, 55, 52, 28.25006 + 46, 57, 32, 33, 0, 75, 36, 28, 29, 25, 29, 42, 55, 33, 30, 22, 28.25007 + 4, 63, 88, 60, 44, 38, 59, 29, 37, 37, 22, 14, 0, 18, 49, 52, 28.25008 + 52, 41, 40, 44, 42, 37, 17, 10, 4, 9, 14, 9, 12, 10, 9, 10, 28.25009 + 10, 10, 24, 26, 4, 71, 85, 64, 46, 41, 151, 154, 151, 157, 155, 161, 28.25010 + 157, 144, 128, 0, 153, 159, 161, 157, 159, 159, 162, 158, 151, 124, 32, 135, 28.25011 + 144, 144, 140, 144, 142, 144, 151, 143, 143, 134, 131, 26, 151, 165, 165, 161, 28.25012 + 163, 153, 159, 157, 122, 110, 71, 119, 153, 166, 163, 127, 136, 118, 116, 128, 28.25013 + 138, 126, 122, 114, 122, 123, 130, 142, 139, 138, 136, 135, 111, 108, 83, 108, 28.25014 + 157, 157, 153, 139, 132, 140, 147, 127, 127, 130, 130, 28, 122, 161, 154, 142, 28.25015 + 139, 148, 155, 147, 138, 120, 114, 17, 144, 153, 162, 153, 154, 159, 155, 148, 28.25016 + 119, 106, 33, 83, 104, 73, 80, 72, 91, 81, 85, 85, 84, 80, 83, 84, 28.25017 + 110, 91, 97, 103, 107, 107, 108, 115, 127, 103, 77, 8, 128, 142, 143, 140, 28.25018 + 136, 104, 131, 93, 103, 104, 122, 99, 102, 115, 126, 115, 118, 123, 122, 138, 28.25019 + 122, 84, 46, 111, 122, 130, 123, 120, 124, 127, 128, 130, 123, 115, 114, 4, 28.25020 + 134, 135, 139, 134, 130, 128, 128, 127, 126, 119, 116, 118, 122, 102, 97, 102, 28.25021 + 103, 99, 112, 107, 118, 112, 110, 111, 111, 97, 93, 116, 112, 97, 115, 118, 28.25022 + 115, 112, 110, 10, 81, 107, 110, 95, 77, 80, 87, 88, 89, 91, 100, 92, 28.25023 + 96, 102, 106, 107, 106, 106, 107, 110, 111, 99, 81, 26, 106, 108, 106, 97, 28.25024 + 92, 87, 95, 81, 75, 67, 59, 68, 91, 139, 147, 108, 127, 127, 132, 114, 28.25025 + 115, 111, 111, 25, 106, 103, 106, 96, 100, 100, 108, 108, 111, 96, 48, 93, 28.25026 + 140, 130, 127, 116, 119, 119, 114, 106, 93, 96, 80, 67, 106, 116, 112, 107, 28.25027 + 104, 104, 104, 107, 77, 73, 26, 93, 120, 114, 107, 110, 103, 108, 102, 106, 28.25028 + 110, 102, 91, 93, 61, 68, 75, 99, 72, 76, 102, 104, 103, 104, 91, 83, 28.25029 + 60, 77, 124, 112, 111, 108, 80, 83, 93, 83, 65, 32, 84, 100, 81, 69, 28.25030 + 67, 65, 60, 60, 69, 59, 59, 68, 79, 81, 91, 85, 88, 83, 84, 85, 28.25031 + 87, 83, 64, 12, 93, 106, 114, 99, 69, 103, 99, 102, 83, 81, 77, 17, 28.25032 + 104, 118, 97, 88, 103, 102, 97, 97, 75, 72, 41, 93, 87, 83, 75, 87, 28.25033 + 68, 67, 72, 69, 68, 65, 14, 99, 130, 111, 75, 103, 102, 76, 92, 97, 28.25034 + 96, 92, 42, 18, 21, 36, 40, 25, 24, 36, 26, 28, 28, 34, 36, 26, 28.25035 + 38, 51, 53, 49, 51, 55, 57, 55, 56, 55, 56, 0, 80, 87, 84, 81, 28.25036 + 80, 79, 77, 67, 71, 69, 53, 30, 0, 108, 120, 93, 92, 91, 92, 91, 28.25037 + 97, 63, 65, 13, 77, 85, 60, 46, 41, 51, 45, 45, 32, 33, 42, 34, 28.25038 + 36, 38, 40, 46, 49, 48, 49, 46, 51, 49, 38, 12, 29, 65, 63, 38, 28.25039 + 45, 59, 56, 41, 49, 49, 51, 36, 28, 30, 41, 37, 37, 36, 37, 42, 28.25040 + 46, 36, 5, 64, 75, 69, 63, 60, 59, 56, 45, 51, 57, 34, 32, 1, 28.25041 + 71, 48, 28, 25, 24, 41, 37, 37, 33, 32, 24, 4, 57, 84, 41, 44, 28.25042 + 18, 41, 40, 20, 22, 33, 12, 0, 17, 30, 45, 17, 20, 25, 33, 30, 28.25043 + 18, 18, 9, 2, 8, 13, 12, 10, 9, 10, 9, 12, 9, 18, 12, 2, 28.25044 + 56, 85, 42, 24, 24, 119, 114, 132, 108, 106, 99, 131, 96, 40, 0, 72, 28.25045 + 88, 83, 84, 96, 92, 91, 93, 103, 91, 38, 92, 106, 103, 99, 92, 91, 28.25046 + 85, 87, 84, 83, 81, 67, 0, 72, 79, 76, 89, 91, 80, 83, 102, 97, 28.25047 + 73, 71, 79, 119, 123, 84, 80, 85, 76, 72, 71, 68, 72, 65, 67, 64, 28.25048 + 65, 75, 85, 89, 92, 96, 104, 107, 102, 80, 95, 114, 126, 110, 103, 110, 28.25049 + 122, 102, 100, 114, 103, 68, 25, 80, 110, 127, 115, 120, 119, 128, 122, 124, 28.25050 + 111, 110, 22, 138, 151, 153, 153, 140, 136, 144, 135, 97, 95, 25, 102, 79, 28.25051 + 61, 75, 61, 65, 64, 76, 68, 56, 67, 60, 59, 61, 60, 48, 75, 80, 28.25052 + 84, 88, 88, 93, 96, 81, 4, 53, 77, 81, 59, 57, 57, 61, 48, 45, 28.25053 + 41, 59, 56, 41, 40, 55, 56, 59, 45, 107, 114, 111, 71, 42, 75, 88, 28.25054 + 85, 83, 83, 97, 87, 79, 72, 72, 63, 34, 64, 67, 75, 91, 93, 84, 28.25055 + 84, 95, 93, 92, 93, 97, 95, 102, 104, 111, 107, 106, 104, 107, 106, 114, 28.25056 + 99, 95, 93, 114, 100, 93, 87, 110, 87, 80, 77, 110, 77, 18, 16, 79, 28.25057 + 63, 63, 65, 44, 55, 37, 34, 40, 48, 42, 41, 44, 44, 44, 44, 57, 28.25058 + 64, 71, 75, 96, 80, 75, 26, 40, 42, 48, 45, 51, 41, 48, 45, 53, 28.25059 + 41, 38, 59, 89, 77, 92, 96, 89, 85, 91, 91, 88, 80, 76, 22, 77, 28.25060 + 84, 85, 89, 85, 85, 89, 97, 89, 83, 46, 37, 107, 119, 96, 99, 102, 28.25061 + 114, 103, 102, 108, 112, 103, 76, 69, 75, 84, 91, 93, 95, 104, 110, 72, 28.25062 + 67, 24, 87, 110, 118, 114, 96, 103, 104, 103, 91, 91, 89, 80, 77, 84, 28.25063 + 89, 89, 88, 88, 85, 88, 88, 87, 80, 80, 85, 83, 85, 89, 91, 88, 28.25064 + 87, 85, 85, 84, 75, 81, 21, 84, 55, 49, 46, 42, 41, 45, 38, 34, 28.25065 + 33, 36, 34, 36, 52, 36, 37, 37, 41, 38, 57, 60, 55, 53, 13, 36, 28.25066 + 97, 95, 51, 53, 84, 84, 53, 64, 77, 65, 16, 72, 106, 102, 79, 81, 28.25067 + 96, 92, 73, 73, 69, 42, 91, 85, 67, 61, 56, 56, 59, 56, 57, 60, 28.25068 + 60, 24, 85, 107, 96, 38, 34, 34, 38, 40, 29, 30, 18, 51, 25, 1, 28.25069 + 2, 12, 4, 17, 2, 8, 10, 17, 14, 20, 29, 36, 48, 45, 36, 51, 28.25070 + 46, 49, 33, 53, 52, 40, 1, 25, 30, 32, 30, 30, 28, 29, 29, 29, 28.25071 + 29, 28, 26, 0, 51, 108, 106, 103, 103, 102, 100, 95, 60, 81, 16, 55, 28.25072 + 73, 40, 42, 38, 40, 49, 45, 44, 42, 42, 41, 40, 28, 25, 22, 20, 28.25073 + 21, 20, 18, 17, 16, 16, 9, 16, 14, 17, 21, 17, 20, 22, 24, 29, 28.25074 + 28, 24, 29, 28, 32, 30, 34, 34, 33, 30, 34, 36, 32, 6, 18, 30, 28.25075 + 41, 26, 30, 33, 51, 52, 59, 37, 34, 26, 9, 65, 32, 33, 36, 29, 28.25076 + 30, 26, 30, 24, 24, 18, 5, 14, 22, 38, 8, 8, 8, 9, 8, 5, 28.25077 + 5, 17, 0, 5, 5, 5, 9, 6, 8, 6, 16, 18, 22, 8, 2, 13, 28.25078 + 6, 16, 6, 10, 14, 14, 10, 17, 20, 12, 5, 37, 85, 30, 29, 25, 28.25079 + 8, 4, 8, 28, 29, 4, 4, 40, 42, 13, 44, 34, 26, 24, 21, 49, 28.25080 + 18, 17, 13, 53, 42, 5, 38, 9, 6, 5, 24, 6, 5, 4, 2, 4, 28.25081 + 2, 6, 12, 16, 10, 16, 14, 14, 16, 20, 20, 20, 79, 76, 73, 107, 28.25082 + 107, 123, 124, 126, 132, 138, 136, 131, 132, 131, 134, 151, 134, 134, 95, 95, 28.25083 + 93, 88, 80, 80, 67, 44, 46, 42, 40, 36, 36, 36, 34, 34, 37, 40, 28.25084 + 40, 42, 46, 55, 56, 63, 69, 73, 80, 81, 85, 92, 99, 34, 34, 73, 28.25085 + 76, 76, 73, 77, 77, 79, 77, 69, 28, 79, 41, 71, 40, 56, 37, 40, 28.25086 + 68, 85, 110, 112, 96, 100, 116, 126, 140, 130, 119, 103, 95, 87, 87, 42, 28.25087 + 76, 5, 32, 30, 51, 53, 61, 73, 89, 102, 138, 130, 102, 95, 135, 139, 28.25088 + 122, 134, 138, 107, 89, 81, 71, 44, 22, 40, 33, 17, 24, 24, 21, 12, 28.25089 + 13, 13, 10, 8, 5, 6, 4, 5, 2, 2, 1, 1, 0, 0, 0, 0, 28.25090 + 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 14, 0, 28.25091 + 0, 0, 25, 0, 0, 0, 38, 0, 0, 9, 26, 33, 38, 37, 92, 123, 28.25092 + 127, 134, 128, 122, 92, 106, 127, 126, 116, 124, 120, 112, 96, 72, 69, 36, 28.25093 + 59, 29, 2, 1, 26, 22, 1, 0, 17, 5, 8, 1, 6, 9, 9, 1, 28.25094 + 5, 4, 1, 6, 18, 21, 1, 8, 4, 2, 36, 37, 2, 2, 21, 22, 28.25095 + 25, 26, 33, 29, 59, 21, 20, 32, 24, 20, 22, 32, 22, 20, 22, 30, 28.25096 + 24, 22, 22, 56, 25, 24, 24, 30, 36, 45, 41, 65, 22, 59, 80, 79, 28.25097 + 61, 61, 75, 73, 59, 60, 64, 60, 55, 42, 46, 49, 37, 41, 41, 45, 28.25098 + 51, 46, 69, 69, 67, 63, 69, 67, 51, 48, 60, 48, 38, 34, 59, 34, 28.25099 + 52, 26, 44, 63, 75, 75, 76, 87, 111, 93, 69, 73, 61, 59, 64, 97, 28.25100 + 95, 97, 89, 72, 57, 46, 42, 36, 29, 29, 32, 46, 36, 44, 32, 36, 28.25101 + 44, 49, 33, 34, 26, 52, 51, 52, 56, 55, 52, 46, 53, 53, 52, 49, 28.25102 + 44, 88, 59, 45, 56, 44, 48, 45, 45, 40, 40, 42, 53, 29, 41, 56, 28.25103 + 63, 71, 72, 75, 73, 69, 75, 64, 51, 12, 34, 119, 83, 77, 60, 34, 28.25104 + 34, 28, 25, 10, 9, 8, 5, 16, 12, 6, 5, 17, 17, 13, 5, 17, 28.25105 + 17, 5, 4, 13, 14, 13, 1, 9, 2, 9, 1, 5, 2, 0, 0, 26, 28.25106 + 30, 36, 38, 42, 46, 49, 53, 59, 56, 13, 60, 28, 29, 22, 22, 25, 28.25107 + 24, 21, 18, 21, 14, 16, 38, 51, 56, 69, 71, 73, 75, 68, 60, 53, 28.25108 + 34, 12, 68, 80, 79, 57, 72, 67, 60, 26, 14, 13, 6, 10, 10, 10, 28.25109 + 9, 13, 12, 8, 5, 6, 6, 4, 6, 17, 14, 18, 12, 12, 17, 25, 28.25110 + 26, 29, 29, 28, 25, 1, 55, 9, 9, 16, 10, 8, 6, 6, 9, 5, 28.25111 + 4, 5, 10, 21, 36, 32, 33, 44, 48, 45, 42, 34, 17, 0, 48, 75, 28.25112 + 68, 67, 67, 61, 30, 20, 10, 6, 2, 2, 0, 4, 1, 1, 6, 6, 28.25113 + 6, 4, 6, 4, 9, 4, 24, 76, 42, 40, 29, 191, 187, 182, 177, 171, 28.25114 + 159, 166, 135, 73, 32, 80, 151, 161, 147, 136, 142, 139, 139, 144, 123, 57, 28.25115 + 68, 155, 161, 162, 157, 165, 163, 162, 157, 163, 147, 157, 150, 162, 165, 162, 28.25116 + 167, 167, 163, 161, 151, 96, 64, 80, 114, 157, 167, 162, 159, 165, 166, 163, 28.25117 + 155, 165, 167, 162, 124, 114, 131, 122, 143, 143, 136, 146, 139, 75, 100, 69, 28.25118 + 64, 154, 153, 140, 136, 139, 136, 126, 128, 126, 114, 106, 116, 134, 151, 143, 28.25119 + 138, 112, 88, 61, 45, 56, 41, 24, 37, 42, 36, 34, 41, 48, 37, 30, 28.25120 + 34, 57, 51, 64, 59, 87, 100, 108, 119, 111, 122, 131, 126, 118, 132, 118, 28.25121 + 119, 91, 107, 134, 116, 119, 122, 126, 123, 131, 106, 97, 9, 57, 148, 153, 28.25122 + 153, 157, 148, 143, 130, 131, 150, 138, 88, 116, 134, 154, 143, 140, 136, 122, 28.25123 + 135, 102, 89, 48, 67, 114, 119, 134, 135, 134, 115, 126, 139, 139, 96, 92, 28.25124 + 97, 153, 150, 155, 154, 153, 148, 154, 150, 144, 97, 106, 138, 143, 148, 142, 28.25125 + 130, 134, 147, 130, 130, 128, 136, 114, 33, 64, 132, 142, 103, 120, 128, 140, 28.25126 + 102, 124, 124, 60, 55, 53, 136, 124, 130, 132, 136, 132, 142, 135, 97, 107, 28.25127 + 91, 95, 110, 130, 123, 127, 120, 107, 108, 114, 79, 45, 6, 44, 108, 126, 28.25128 + 102, 96, 108, 99, 97, 93, 75, 42, 0, 52, 110, 142, 106, 107, 106, 103, 28.25129 + 116, 122, 118, 71, 48, 61, 132, 139, 127, 131, 134, 136, 99, 120, 56, 63, 28.25130 + 56, 112, 122, 120, 104, 107, 99, 95, 115, 108, 92, 51, 57, 64, 100, 108, 28.25131 + 100, 104, 71, 71, 34, 32, 26, 25, 36, 37, 45, 49, 45, 48, 48, 48, 28.25132 + 57, 61, 59, 55, 53, 21, 73, 110, 116, 89, 107, 84, 83, 40, 46, 33, 28.25133 + 21, 30, 46, 71, 77, 75, 80, 85, 83, 81, 72, 60, 68, 95, 127, 138, 28.25134 + 127, 123, 123, 116, 115, 114, 114, 59, 57, 87, 119, 116, 122, 116, 112, 107, 28.25135 + 114, 107, 81, 60, 57, 85, 87, 92, 88, 77, 72, 75, 63, 37, 29, 21, 28.25136 + 30, 29, 41, 41, 34, 18, 21, 18, 37, 16, 17, 42, 37, 61, 77, 79, 28.25137 + 93, 96, 103, 96, 104, 92, 57, 52, 72, 89, 96, 100, 97, 100, 100, 102, 28.25138 + 93, 108, 84, 69, 1, 99, 87, 83, 67, 93, 92, 79, 72, 67, 85, 71, 28.25139 + 64, 96, 107, 95, 99, 107, 100, 92, 88, 85, 79, 28, 0, 22, 81, 114, 28.25140 + 87, 81, 81, 85, 76, 65, 88, 72, 26, 0, 77, 92, 88, 87, 80, 63, 28.25141 + 24, 46, 42, 40, 2, 24, 33, 52, 57, 57, 69, 79, 84, 68, 81, 68, 28.25142 + 83, 68, 73, 79, 75, 71, 80, 77, 87, 72, 59, 37, 13, 79, 81, 59, 28.25143 + 64, 72, 52, 57, 53, 61, 55, 34, 44, 34, 69, 77, 79, 69, 80, 76, 28.25144 + 69, 68, 24, 6, 34, 71, 68, 53, 56, 56, 51, 21, 12, 9, 8, 6, 28.25145 + 1, 4, 34, 36, 36, 37, 45, 48, 49, 49, 51, 24, 6, 46, 80, 76, 28.25146 + 79, 76, 71, 67, 61, 56, 37, 17, 0, 56, 84, 68, 63, 59, 67, 57, 28.25147 + 61, 53, 30, 12, 1, 42, 59, 57, 17, 13, 12, 9, 16, 10, 5, 10, 28.25148 + 2, 71, 48, 106, 116, 120, 186, 179, 173, 174, 167, 173, 166, 161, 87, 42, 28.25149 + 162, 161, 158, 153, 161, 159, 159, 157, 154, 158, 57, 166, 173, 170, 170, 166, 28.25150 + 173, 167, 174, 166, 175, 161, 155, 150, 165, 158, 163, 162, 165, 157, 157, 161, 28.25151 + 154, 153, 85, 147, 169, 157, 162, 165, 157, 163, 158, 161, 155, 120, 131, 107, 28.25152 + 126, 140, 136, 139, 130, 131, 134, 134, 143, 103, 91, 127, 158, 155, 155, 161, 28.25153 + 151, 154, 151, 153, 150, 144, 130, 143, 142, 146, 144, 140, 144, 138, 138, 140, 28.25154 + 135, 138, 104, 28, 56, 127, 136, 120, 123, 127, 135, 130, 123, 84, 61, 93, 28.25155 + 131, 134, 138, 128, 144, 151, 154, 147, 131, 147, 134, 73, 112, 146, 158, 154, 28.25156 + 123, 138, 140, 131, 136, 116, 99, 12, 124, 158, 147, 144, 143, 135, 148, 124, 28.25157 + 128, 158, 143, 95, 119, 158, 154, 147, 151, 148, 151, 123, 138, 100, 45, 116, 28.25158 + 132, 143, 130, 134, 134, 140, 130, 143, 140, 143, 138, 126, 107, 111, 115, 119, 28.25159 + 115, 116, 118, 122, 120, 128, 124, 95, 123, 132, 120, 114, 127, 136, 134, 135, 28.25160 + 140, 143, 140, 34, 147, 158, 147, 144, 147, 140, 134, 135, 131, 130, 72, 45, 28.25161 + 104, 123, 128, 127, 136, 136, 139, 138, 132, 123, 111, 85, 93, 128, 139, 127, 28.25162 + 130, 130, 124, 116, 118, 88, 49, 20, 123, 134, 135, 126, 130, 132, 128, 124, 28.25163 + 123, 107, 48, 2, 153, 155, 151, 150, 153, 151, 146, 139, 154, 147, 108, 51, 28.25164 + 138, 153, 151, 143, 143, 132, 138, 130, 127, 87, 63, 114, 136, 122, 116, 114, 28.25165 + 131, 132, 126, 128, 127, 128, 119, 56, 100, 119, 122, 118, 116, 112, 108, 100, 28.25166 + 73, 51, 24, 80, 100, 81, 93, 96, 92, 102, 92, 92, 85, 76, 61, 46, 28.25167 + 17, 100, 119, 107, 104, 102, 108, 119, 100, 112, 95, 77, 99, 76, 96, 103, 28.25168 + 111, 100, 114, 97, 107, 84, 69, 75, 115, 138, 108, 111, 111, 107, 95, 110, 28.25169 + 104, 93, 99, 77, 112, 106, 111, 103, 102, 100, 108, 103, 99, 91, 103, 92, 28.25170 + 99, 100, 102, 88, 102, 96, 97, 87, 81, 80, 76, 107, 100, 103, 106, 110, 28.25171 + 112, 108, 114, 120, 122, 57, 63, 80, 136, 139, 140, 138, 140, 136, 131, 134, 28.25172 + 132, 88, 52, 79, 106, 102, 97, 96, 89, 91, 81, 79, 83, 93, 57, 10, 28.25173 + 72, 91, 81, 69, 69, 77, 65, 81, 77, 61, 65, 71, 64, 77, 80, 77, 28.25174 + 67, 73, 73, 77, 69, 91, 34, 0, 112, 118, 120, 122, 116, 114, 111, 100, 28.25175 + 108, 103, 84, 48, 0, 81, 89, 95, 97, 97, 92, 87, 77, 69, 40, 9, 28.25176 + 63, 95, 99, 102, 103, 102, 102, 93, 84, 81, 42, 64, 93, 95, 95, 96, 28.25177 + 89, 81, 71, 71, 73, 60, 42, 14, 80, 85, 61, 56, 49, 55, 72, 64, 28.25178 + 79, 69, 30, 24, 72, 93, 91, 91, 89, 80, 76, 83, 80, 29, 8, 57, 28.25179 + 75, 75, 75, 77, 71, 71, 60, 57, 52, 40, 17, 40, 75, 91, 88, 85, 28.25180 + 81, 83, 80, 69, 76, 55, 32, 6, 68, 71, 61, 59, 59, 45, 46, 34, 28.25181 + 44, 55, 21, 2, 40, 83, 71, 59, 42, 46, 45, 46, 61, 49, 17, 1, 28.25182 + 61, 61, 69, 59, 55, 38, 48, 53, 51, 9, 12, 1, 69, 64, 85, 84, 28.25183 + 92, 191, 191, 185, 178, 175, 175, 150, 134, 87, 46, 155, 161, 153, 153, 154, 28.25184 + 111, 153, 151, 148, 80, 64, 171, 183, 182, 190, 201, 205, 209, 214, 217, 220, 28.25185 + 224, 228, 230, 226, 226, 226, 226, 218, 209, 189, 173, 167, 161, 142, 167, 159, 28.25186 + 158, 154, 148, 151, 150, 135, 112, 118, 128, 114, 96, 130, 144, 157, 142, 139, 28.25187 + 143, 144, 146, 144, 139, 65, 151, 161, 153, 154, 148, 148, 151, 148, 144, 146, 28.25188 + 147, 138, 139, 150, 154, 153, 147, 144, 139, 138, 146, 147, 131, 111, 34, 142, 28.25189 + 146, 157, 157, 148, 153, 153, 150, 150, 131, 56, 118, 162, 154, 138, 157, 150, 28.25190 + 138, 138, 150, 150, 151, 132, 77, 110, 151, 159, 148, 147, 150, 150, 148, 132, 28.25191 + 119, 108, 9, 132, 153, 154, 143, 134, 143, 130, 147, 138, 151, 144, 76, 107, 28.25192 + 148, 142, 148, 140, 142, 126, 126, 136, 107, 57, 126, 122, 128, 138, 124, 139, 28.25193 + 140, 147, 146, 138, 127, 97, 130, 123, 139, 139, 140, 139, 135, 127, 114, 112, 28.25194 + 104, 88, 118, 144, 134, 135, 146, 143, 140, 144, 143, 142, 140, 135, 33, 150, 28.25195 + 158, 131, 127, 130, 124, 126, 120, 131, 128, 72, 46, 103, 128, 132, 126, 126, 28.25196 + 122, 127, 127, 135, 124, 115, 67, 85, 126, 118, 123, 131, 132, 119, 108, 112, 28.25197 + 95, 81, 29, 123, 127, 128, 127, 127, 120, 120, 120, 114, 110, 64, 1, 131, 28.25198 + 150, 151, 153, 148, 151, 153, 146, 143, 147, 124, 60, 146, 143, 142, 130, 123, 28.25199 + 126, 115, 120, 120, 127, 112, 132, 119, 112, 116, 106, 115, 92, 96, 95, 99, 28.25200 + 80, 79, 64, 123, 142, 116, 119, 118, 122, 112, 108, 110, 64, 22, 89, 96, 28.25201 + 85, 99, 91, 84, 95, 89, 84, 87, 69, 65, 56, 22, 97, 130, 104, 104, 28.25202 + 118, 106, 107, 104, 93, 103, 59, 67, 127, 122, 120, 128, 123, 118, 112, 106, 28.25203 + 93, 76, 71, 127, 132, 103, 106, 106, 99, 92, 103, 116, 111, 116, 112, 122, 28.25204 + 120, 130, 123, 122, 123, 147, 123, 128, 123, 127, 116, 126, 126, 128, 122, 120, 28.25205 + 123, 122, 122, 104, 85, 59, 108, 108, 106, 110, 106, 103, 92, 103, 102, 97, 28.25206 + 69, 48, 108, 143, 135, 132, 130, 136, 134, 140, 128, 111, 104, 61, 81, 100, 28.25207 + 103, 87, 85, 93, 84, 83, 91, 93, 85, 56, 10, 61, 95, 83, 93, 75, 28.25208 + 89, 79, 92, 92, 80, 68, 61, 81, 99, 92, 107, 104, 100, 88, 106, 93, 28.25209 + 85, 36, 9, 104, 116, 110, 110, 112, 111, 107, 106, 99, 114, 87, 42, 0, 28.25210 + 88, 96, 89, 79, 79, 67, 83, 91, 73, 29, 14, 60, 102, 103, 93, 77, 28.25211 + 71, 88, 68, 67, 52, 45, 76, 100, 87, 87, 73, 65, 71, 83, 75, 65, 28.25212 + 42, 37, 9, 79, 88, 80, 59, 60, 67, 72, 69, 67, 64, 32, 45, 88, 28.25213 + 92, 87, 73, 87, 69, 68, 72, 85, 29, 8, 65, 77, 56, 55, 49, 41, 28.25214 + 44, 40, 45, 63, 53, 18, 36, 81, 77, 84, 91, 72, 60, 61, 77, 68, 28.25215 + 67, 30, 8, 67, 57, 38, 63, 49, 48, 41, 34, 40, 33, 18, 0, 55, 28.25216 + 77, 59, 67, 55, 42, 44, 68, 49, 45, 18, 1, 30, 65, 57, 65, 57, 28.25217 + 61, 51, 57, 46, 20, 13, 1, 83, 103, 84, 75, 84, 179, 171, 175, 171, 28.25218 + 166, 154, 157, 166, 92, 68, 106, 158, 154, 127, 122, 119, 120, 122, 116, 153, 28.25219 + 154, 178, 221, 220, 228, 229, 226, 225, 226, 229, 233, 236, 238, 240, 240, 236, 28.25220 + 234, 236, 234, 234, 232, 232, 216, 178, 167, 161, 173, 179, 205, 179, 167, 148, 28.25221 + 138, 104, 119, 122, 111, 96, 146, 157, 150, 151, 143, 151, 157, 155, 143, 153, 28.25222 + 132, 150, 144, 151, 115, 155, 148, 153, 147, 153, 143, 143, 140, 146, 153, 155, 28.25223 + 147, 147, 143, 161, 158, 131, 123, 131, 107, 34, 148, 153, 155, 155, 157, 147, 28.25224 + 147, 148, 143, 130, 83, 126, 148, 153, 151, 148, 146, 134, 144, 148, 154, 140, 28.25225 + 127, 69, 103, 150, 163, 150, 146, 150, 153, 142, 132, 114, 95, 10, 116, 144, 28.25226 + 147, 143, 140, 143, 131, 118, 157, 157, 136, 83, 114, 150, 147, 139, 134, 131, 28.25227 + 124, 130, 140, 111, 80, 80, 126, 130, 138, 146, 151, 132, 134, 136, 123, 126, 28.25228 + 89, 122, 143, 127, 143, 139, 140, 127, 134, 135, 134, 95, 81, 127, 142, 131, 28.25229 + 139, 132, 139, 138, 112, 138, 139, 95, 97, 45, 99, 161, 132, 123, 127, 112, 28.25230 + 119, 123, 130, 126, 77, 42, 103, 123, 127, 116, 119, 120, 122, 124, 138, 123, 28.25231 + 108, 61, 92, 118, 114, 103, 134, 139, 119, 110, 118, 83, 81, 26, 93, 136, 28.25232 + 126, 124, 127, 116, 128, 128, 111, 102, 55, 6, 84, 148, 142, 134, 130, 130, 28.25233 + 135, 136, 128, 124, 130, 126, 131, 143, 144, 136, 127, 139, 120, 128, 110, 116, 28.25234 + 104, 115, 106, 116, 115, 110, 108, 112, 114, 111, 106, 110, 106, 108, 111, 122, 28.25235 + 130, 100, 108, 108, 132, 108, 106, 60, 20, 79, 89, 85, 92, 97, 99, 93, 28.25236 + 93, 88, 80, 71, 57, 51, 20, 95, 115, 100, 108, 118, 118, 118, 114, 104, 28.25237 + 103, 55, 111, 135, 130, 122, 111, 112, 110, 103, 106, 81, 75, 80, 110, 128, 28.25238 + 96, 107, 100, 99, 104, 136, 206, 209, 201, 213, 224, 224, 212, 221, 230, 234, 28.25239 + 230, 228, 233, 244, 229, 230, 225, 242, 221, 212, 216, 246, 222, 167, 112, 84, 28.25240 + 63, 107, 127, 139, 136, 132, 132, 122, 116, 115, 99, 71, 63, 123, 138, 130, 28.25241 + 128, 134, 134, 143, 138, 110, 122, 97, 69, 69, 100, 93, 87, 83, 88, 85, 28.25242 + 83, 83, 93, 83, 46, 6, 71, 108, 96, 112, 88, 79, 91, 85, 76, 77, 28.25243 + 68, 36, 89, 99, 91, 93, 96, 95, 73, 96, 95, 87, 32, 9, 68, 112, 28.25244 + 107, 100, 96, 96, 89, 93, 97, 107, 85, 41, 0, 84, 84, 80, 61, 81, 28.25245 + 80, 75, 77, 79, 44, 17, 72, 100, 87, 83, 81, 76, 83, 56, 64, 56, 28.25246 + 33, 72, 91, 77, 71, 68, 84, 67, 67, 57, 49, 52, 38, 13, 76, 88, 28.25247 + 80, 76, 83, 84, 56, 64, 60, 64, 22, 36, 92, 91, 84, 61, 81, 72, 28.25248 + 85, 83, 80, 30, 9, 67, 61, 51, 51, 41, 41, 41, 41, 41, 57, 51, 28.25249 + 20, 32, 76, 75, 81, 100, 75, 56, 61, 65, 56, 51, 30, 9, 60, 67, 28.25250 + 41, 71, 41, 52, 37, 40, 49, 34, 17, 0, 56, 77, 61, 55, 49, 52, 28.25251 + 48, 64, 44, 26, 18, 1, 49, 46, 56, 57, 42, 45, 44, 34, 42, 36, 28.25252 + 13, 2, 67, 61, 59, 28, 17, 163, 163, 166, 162, 162, 154, 169, 157, 93, 28.25253 + 59, 114, 161, 157, 127, 124, 110, 103, 161, 167, 197, 214, 222, 228, 236, 233, 28.25254 + 233, 229, 229, 224, 230, 237, 238, 238, 236, 234, 233, 230, 225, 229, 230, 232, 28.25255 + 229, 233, 230, 221, 225, 222, 209, 202, 216, 157, 144, 131, 106, 123, 123, 114, 28.25256 + 110, 163, 193, 198, 194, 198, 205, 209, 210, 208, 208, 204, 206, 208, 177, 166, 28.25257 + 162, 155, 159, 153, 150, 154, 151, 169, 185, 199, 205, 202, 195, 190, 155, 139, 28.25258 + 131, 108, 130, 103, 44, 104, 151, 146, 148, 146, 147, 140, 148, 153, 132, 84, 28.25259 + 96, 150, 159, 142, 144, 148, 136, 134, 138, 154, 140, 128, 67, 112, 148, 158, 28.25260 + 147, 146, 147, 151, 139, 138, 115, 103, 14, 112, 151, 157, 150, 143, 155, 124, 28.25261 + 148, 148, 148, 135, 67, 116, 139, 148, 134, 134, 139, 128, 143, 134, 111, 76, 28.25262 + 75, 140, 146, 127, 131, 132, 143, 131, 135, 128, 116, 81, 127, 143, 135, 134, 28.25263 + 131, 130, 134, 148, 140, 134, 120, 76, 130, 140, 140, 126, 138, 136, 135, 138, 28.25264 + 130, 136, 138, 128, 49, 102, 158, 135, 123, 118, 106, 114, 111, 127, 126, 77, 28.25265 + 38, 104, 123, 122, 112, 112, 112, 115, 119, 128, 116, 102, 65, 84, 112, 110, 28.25266 + 103, 124, 110, 103, 108, 114, 85, 48, 10, 95, 139, 118, 116, 124, 127, 122, 28.25267 + 118, 115, 100, 55, 4, 134, 142, 136, 134, 138, 135, 128, 132, 157, 194, 205, 28.25268 + 209, 218, 222, 230, 232, 236, 237, 248, 248, 246, 238, 238, 224, 232, 236, 232, 28.25269 + 230, 225, 228, 222, 224, 204, 205, 187, 206, 198, 228, 191, 182, 177, 178, 199, 28.25270 + 155, 114, 63, 26, 85, 77, 92, 99, 91, 89, 97, 79, 81, 55, 68, 49, 28.25271 + 42, 13, 93, 122, 106, 111, 122, 122, 119, 104, 92, 104, 42, 116, 132, 124, 28.25272 + 108, 107, 114, 118, 111, 115, 89, 71, 56, 106, 126, 93, 99, 96, 97, 97, 28.25273 + 142, 199, 205, 206, 213, 213, 217, 216, 213, 217, 221, 224, 225, 226, 225, 224, 28.25274 + 222, 221, 213, 214, 210, 208, 209, 202, 154, 106, 79, 22, 100, 118, 122, 126, 28.25275 + 124, 123, 136, 135, 107, 106, 72, 71, 97, 136, 128, 144, 140, 124, 120, 97, 28.25276 + 103, 110, 103, 67, 64, 104, 96, 83, 87, 85, 85, 83, 87, 75, 80, 60, 28.25277 + 1, 73, 108, 83, 97, 80, 89, 88, 107, 71, 71, 67, 46, 79, 104, 99, 28.25278 + 104, 106, 104, 103, 93, 81, 81, 32, 0, 71, 112, 99, 91, 88, 93, 104, 28.25279 + 104, 107, 111, 91, 40, 0, 79, 80, 77, 65, 95, 76, 76, 80, 64, 38, 28.25280 + 10, 60, 106, 92, 77, 72, 68, 83, 60, 59, 44, 34, 68, 97, 69, 83, 28.25281 + 87, 76, 68, 63, 68, 72, 49, 38, 18, 72, 77, 71, 75, 65, 65, 59, 28.25282 + 69, 57, 63, 24, 40, 89, 83, 69, 80, 75, 95, 83, 81, 77, 32, 12, 28.25283 + 55, 76, 53, 52, 42, 40, 38, 38, 40, 40, 40, 18, 2, 75, 76, 88, 28.25284 + 95, 56, 63, 64, 57, 67, 51, 33, 10, 53, 68, 41, 75, 29, 52, 37, 28.25285 + 34, 44, 30, 17, 0, 42, 75, 67, 69, 53, 55, 45, 63, 49, 29, 17, 28.25286 + 1, 46, 59, 55, 29, 34, 32, 33, 24, 37, 18, 13, 8, 68, 60, 45, 28.25287 + 56, 18, 161, 161, 162, 163, 161, 154, 167, 151, 93, 65, 153, 150, 123, 119, 28.25288 + 128, 158, 159, 205, 233, 234, 236, 237, 230, 228, 228, 228, 204, 175, 162, 167, 28.25289 + 170, 163, 147, 136, 131, 127, 116, 112, 120, 128, 143, 191, 214, 228, 228, 228, 28.25290 + 225, 221, 221, 209, 157, 139, 119, 106, 124, 104, 115, 151, 175, 206, 205, 213, 28.25291 + 204, 214, 220, 218, 216, 226, 224, 229, 226, 225, 222, 225, 221, 218, 213, 206, 28.25292 + 210, 214, 218, 216, 222, 214, 213, 208, 208, 155, 135, 126, 102, 127, 104, 48, 28.25293 + 106, 154, 139, 140, 161, 154, 153, 151, 147, 131, 85, 67, 142, 154, 153, 148, 28.25294 + 150, 155, 155, 155, 155, 139, 128, 63, 107, 162, 163, 144, 150, 147, 153, 139, 28.25295 + 138, 115, 96, 17, 126, 153, 144, 146, 140, 148, 138, 142, 151, 142, 138, 67, 28.25296 + 118, 138, 144, 136, 134, 140, 138, 139, 135, 110, 77, 61, 139, 131, 131, 134, 28.25297 + 140, 130, 142, 135, 120, 108, 77, 116, 139, 131, 127, 131, 139, 136, 134, 136, 28.25298 + 126, 95, 77, 131, 143, 150, 140, 139, 120, 143, 136, 127, 138, 135, 131, 53, 28.25299 + 104, 155, 138, 118, 116, 104, 107, 119, 128, 127, 80, 37, 111, 116, 118, 115, 28.25300 + 115, 110, 110, 120, 124, 115, 106, 64, 89, 108, 107, 97, 95, 132, 131, 106, 28.25301 + 111, 88, 48, 21, 106, 139, 124, 124, 123, 118, 116, 102, 115, 119, 51, 4, 28.25302 + 148, 148, 135, 132, 139, 127, 136, 199, 202, 216, 212, 214, 220, 232, 233, 234, 28.25303 + 238, 241, 245, 248, 248, 244, 242, 242, 226, 236, 240, 229, 224, 228, 233, 229, 28.25304 + 221, 226, 216, 213, 205, 214, 206, 201, 186, 212, 199, 169, 107, 61, 28, 83, 28.25305 + 76, 92, 93, 88, 93, 87, 85, 81, 59, 65, 48, 40, 12, 100, 119, 106, 28.25306 + 115, 112, 122, 122, 112, 93, 95, 37, 115, 128, 110, 119, 119, 120, 127, 122, 28.25307 + 119, 104, 76, 81, 103, 131, 100, 104, 107, 96, 95, 116, 144, 190, 201, 206, 28.25308 + 208, 204, 210, 201, 205, 212, 214, 216, 222, 222, 224, 216, 210, 217, 209, 201, 28.25309 + 197, 204, 178, 116, 97, 51, 33, 106, 122, 107, 120, 120, 126, 126, 134, 110, 28.25310 + 110, 73, 67, 99, 132, 120, 116, 97, 99, 103, 97, 103, 107, 114, 83, 61, 28.25311 + 100, 96, 89, 80, 84, 85, 85, 79, 87, 100, 57, 8, 95, 84, 99, 80, 28.25312 + 84, 91, 96, 87, 87, 75, 65, 45, 81, 108, 87, 103, 89, 87, 85, 87, 28.25313 + 92, 87, 29, 1, 114, 103, 95, 99, 102, 100, 100, 108, 107, 104, 88, 57, 28.25314 + 1, 77, 96, 73, 102, 75, 63, 77, 72, 65, 36, 6, 56, 103, 89, 85, 28.25315 + 80, 83, 81, 71, 55, 49, 33, 72, 95, 67, 75, 89, 77, 68, 71, 71, 28.25316 + 57, 53, 42, 24, 75, 91, 83, 84, 85, 68, 59, 63, 60, 75, 28, 48, 28.25317 + 85, 79, 63, 87, 92, 95, 77, 81, 69, 36, 10, 59, 71, 59, 51, 41, 28.25318 + 40, 51, 37, 42, 53, 60, 20, 4, 69, 69, 63, 56, 59, 56, 56, 53, 28.25319 + 55, 53, 34, 12, 46, 72, 51, 87, 28, 51, 32, 46, 40, 36, 20, 4, 28.25320 + 53, 73, 69, 64, 52, 45, 52, 52, 53, 38, 20, 0, 48, 63, 36, 30, 28.25321 + 18, 22, 22, 26, 33, 14, 13, 1, 63, 56, 34, 13, 2, 173, 161, 158, 28.25322 + 158, 154, 154, 170, 140, 102, 69, 153, 159, 122, 131, 159, 179, 225, 236, 233, 28.25323 + 232, 233, 234, 229, 216, 185, 150, 118, 107, 103, 104, 104, 104, 104, 104, 103, 28.25324 + 106, 106, 107, 104, 107, 108, 111, 126, 136, 166, 197, 206, 214, 202, 162, 140, 28.25325 + 124, 93, 104, 115, 110, 118, 159, 178, 232, 234, 218, 229, 224, 232, 228, 232, 28.25326 + 230, 225, 225, 230, 234, 232, 229, 226, 221, 220, 228, 222, 221, 222, 222, 225, 28.25327 + 220, 216, 216, 208, 146, 127, 116, 99, 122, 107, 55, 139, 150, 143, 150, 158, 28.25328 + 139, 150, 151, 154, 155, 126, 56, 135, 153, 159, 161, 161, 157, 157, 151, 150, 28.25329 + 135, 127, 63, 100, 154, 158, 150, 146, 146, 154, 142, 140, 132, 100, 16, 120, 28.25330 + 151, 147, 153, 146, 148, 151, 153, 154, 128, 116, 53, 112, 134, 147, 135, 146, 28.25331 + 139, 136, 134, 136, 120, 110, 63, 131, 132, 135, 132, 128, 132, 135, 134, 118, 28.25332 + 89, 69, 112, 131, 127, 123, 134, 140, 134, 132, 128, 120, 81, 72, 124, 138, 28.25333 + 142, 142, 135, 122, 138, 131, 138, 115, 136, 126, 59, 79, 108, 155, 136, 114, 28.25334 + 110, 107, 116, 132, 119, 80, 44, 99, 114, 115, 106, 107, 104, 103, 127, 127, 28.25335 + 122, 100, 61, 80, 102, 102, 95, 92, 131, 108, 106, 108, 91, 67, 25, 110, 28.25336 + 123, 118, 128, 123, 126, 123, 115, 118, 104, 57, 1, 118, 146, 134, 134, 132, 28.25337 + 126, 189, 201, 208, 214, 217, 221, 220, 225, 230, 234, 234, 237, 241, 245, 244, 28.25338 + 246, 245, 244, 238, 230, 240, 233, 230, 232, 222, 222, 225, 229, 220, 220, 209, 28.25339 + 205, 202, 199, 195, 202, 159, 138, 73, 63, 28, 83, 81, 87, 99, 92, 88, 28.25340 + 81, 76, 79, 59, 60, 55, 46, 14, 75, 127, 108, 118, 108, 114, 119, 112, 28.25341 + 106, 88, 45, 112, 119, 126, 131, 132, 143, 139, 135, 128, 120, 104, 87, 114, 28.25342 + 136, 106, 104, 88, 87, 99, 93, 104, 112, 122, 122, 120, 112, 110, 107, 110, 28.25343 + 108, 108, 108, 114, 118, 118, 114, 114, 116, 111, 108, 108, 107, 106, 92, 87, 28.25344 + 49, 53, 103, 119, 106, 106, 126, 119, 120, 124, 108, 104, 76, 73, 93, 130, 28.25345 + 132, 112, 112, 132, 118, 120, 126, 92, 102, 102, 57, 89, 106, 95, 81, 85, 28.25346 + 80, 85, 91, 87, 91, 53, 9, 67, 93, 89, 80, 81, 80, 76, 85, 91, 28.25347 + 79, 63, 45, 72, 111, 77, 108, 110, 96, 100, 97, 96, 75, 38, 8, 111, 28.25348 + 112, 102, 106, 97, 102, 100, 112, 106, 106, 87, 44, 1, 84, 96, 80, 80, 28.25349 + 75, 76, 65, 79, 49, 30, 16, 56, 97, 93, 71, 84, 77, 69, 67, 57, 28.25350 + 56, 37, 75, 95, 81, 81, 84, 75, 67, 67, 84, 60, 41, 42, 16, 81, 28.25351 + 87, 79, 65, 76, 72, 57, 67, 56, 63, 25, 68, 81, 63, 81, 80, 77, 28.25352 + 73, 83, 84, 72, 32, 14, 36, 56, 68, 52, 52, 40, 55, 52, 38, 49, 28.25353 + 60, 20, 24, 65, 76, 65, 55, 55, 59, 55, 55, 55, 51, 36, 13, 48, 28.25354 + 72, 42, 59, 32, 44, 32, 49, 41, 30, 17, 1, 64, 75, 72, 71, 52, 28.25355 + 48, 60, 56, 55, 41, 18, 0, 30, 48, 29, 18, 13, 10, 12, 20, 26, 28.25356 + 16, 13, 1, 64, 77, 28, 2, 25, 189, 165, 163, 163, 162, 159, 158, 162, 28.25357 + 102, 87, 118, 118, 134, 162, 198, 229, 240, 233, 233, 225, 216, 195, 170, 126, 28.25358 + 110, 103, 104, 104, 106, 104, 106, 106, 112, 111, 103, 92, 88, 93, 97, 107, 28.25359 + 128, 108, 111, 114, 114, 122, 126, 127, 130, 127, 131, 102, 87, 104, 116, 100, 28.25360 + 111, 143, 162, 204, 212, 208, 174, 142, 128, 134, 138, 134, 131, 134, 140, 167, 28.25361 + 195, 204, 210, 216, 221, 220, 213, 201, 206, 213, 216, 212, 201, 159, 138, 123, 28.25362 + 119, 89, 89, 120, 99, 55, 97, 147, 148, 150, 150, 157, 157, 151, 151, 157, 28.25363 + 103, 68, 122, 153, 151, 153, 155, 151, 153, 153, 151, 128, 130, 56, 96, 139, 28.25364 + 158, 158, 159, 154, 155, 143, 140, 120, 92, 16, 116, 146, 148, 151, 144, 150, 28.25365 + 146, 147, 144, 142, 89, 42, 112, 134, 146, 128, 138, 142, 139, 134, 128, 128, 28.25366 + 103, 61, 95, 138, 132, 139, 130, 132, 132, 126, 116, 88, 61, 106, 144, 132, 28.25367 + 126, 134, 135, 136, 132, 134, 123, 83, 65, 130, 127, 138, 135, 135, 134, 139, 28.25368 + 138, 136, 114, 97, 115, 67, 72, 111, 134, 147, 123, 110, 103, 118, 126, 123, 28.25369 + 88, 38, 96, 118, 110, 112, 103, 103, 123, 147, 118, 114, 95, 41, 88, 106, 28.25370 + 88, 87, 93, 93, 102, 102, 99, 81, 68, 28, 80, 138, 130, 131, 123, 112, 28.25371 + 114, 124, 114, 108, 51, 8, 88, 143, 134, 132, 139, 124, 122, 161, 201, 208, 28.25372 + 204, 183, 139, 130, 126, 123, 128, 123, 111, 106, 110, 111, 114, 114, 112, 110, 28.25373 + 106, 107, 110, 110, 107, 102, 103, 111, 116, 112, 111, 104, 99, 104, 84, 79, 28.25374 + 77, 76, 65, 33, 22, 80, 88, 92, 87, 91, 85, 80, 80, 79, 55, 56, 28.25375 + 49, 40, 12, 92, 108, 111, 106, 112, 118, 103, 108, 99, 79, 48, 115, 123, 28.25376 + 139, 153, 181, 187, 195, 178, 177, 158, 135, 123, 111, 135, 97, 110, 95, 84, 28.25377 + 87, 89, 104, 95, 87, 92, 96, 97, 96, 95, 96, 95, 95, 95, 96, 96, 28.25378 + 97, 99, 99, 96, 97, 99, 96, 93, 97, 96, 36, 29, 48, 104, 114, 107, 28.25379 + 116, 112, 112, 116, 128, 107, 102, 88, 60, 72, 115, 126, 108, 95, 122, 130, 28.25380 + 127, 102, 99, 103, 89, 64, 75, 95, 97, 85, 87, 87, 85, 85, 87, 87, 28.25381 + 41, 6, 64, 100, 93, 77, 85, 81, 76, 83, 92, 72, 63, 29, 89, 106, 28.25382 + 88, 91, 108, 111, 93, 107, 96, 72, 30, 6, 69, 102, 92, 104, 108, 96, 28.25383 + 102, 104, 104, 106, 84, 42, 2, 79, 75, 93, 80, 64, 55, 69, 45, 44, 28.25384 + 37, 18, 57, 91, 91, 83, 89, 77, 72, 68, 68, 44, 24, 84, 91, 83, 28.25385 + 89, 88, 69, 68, 79, 65, 55, 45, 41, 21, 83, 79, 65, 79, 67, 60, 28.25386 + 63, 69, 55, 57, 21, 48, 89, 87, 91, 73, 48, 76, 77, 95, 73, 29, 28.25387 + 16, 29, 56, 68, 55, 51, 48, 55, 36, 37, 51, 49, 22, 21, 59, 75, 28.25388 + 69, 61, 65, 59, 60, 60, 57, 52, 40, 14, 25, 67, 49, 37, 33, 38, 28.25389 + 33, 45, 46, 33, 17, 1, 40, 73, 56, 64, 48, 57, 46, 48, 55, 28, 28.25390 + 18, 0, 57, 55, 18, 17, 12, 21, 10, 16, 28, 22, 9, 2, 64, 81, 28.25391 + 20, 6, 51, 177, 178, 169, 173, 161, 170, 157, 158, 104, 81, 120, 128, 170, 28.25392 + 218, 236, 236, 234, 237, 236, 191, 143, 114, 106, 106, 107, 110, 114, 102, 118, 28.25393 + 116, 108, 87, 67, 53, 56, 53, 61, 60, 63, 67, 85, 97, 126, 115, 116, 28.25394 + 119, 119, 120, 120, 128, 126, 83, 77, 89, 110, 106, 116, 124, 140, 134, 142, 28.25395 + 127, 127, 110, 103, 100, 107, 99, 103, 96, 104, 100, 103, 110, 111, 115, 115, 28.25396 + 115, 114, 111, 112, 116, 122, 124, 118, 119, 112, 110, 81, 85, 108, 112, 99, 28.25397 + 57, 85, 134, 154, 151, 159, 153, 155, 155, 151, 146, 108, 80, 100, 144, 148, 28.25398 + 151, 146, 148, 151, 151, 147, 127, 124, 44, 104, 126, 150, 153, 150, 147, 142, 28.25399 + 146, 132, 126, 97, 18, 118, 142, 151, 148, 151, 148, 148, 151, 140, 138, 114, 28.25400 + 44, 110, 130, 146, 143, 135, 138, 127, 130, 106, 103, 97, 75, 83, 84, 107, 28.25401 + 104, 100, 103, 107, 107, 116, 108, 64, 114, 140, 128, 123, 131, 132, 132, 132, 28.25402 + 131, 127, 93, 57, 127, 127, 127, 124, 120, 128, 126, 131, 128, 130, 128, 126, 28.25403 + 96, 73, 112, 128, 123, 103, 99, 102, 119, 120, 120, 89, 33, 106, 124, 115, 28.25404 + 110, 102, 99, 123, 136, 116, 110, 96, 45, 80, 99, 88, 87, 80, 83, 85, 28.25405 + 92, 84, 79, 55, 29, 76, 136, 112, 83, 103, 119, 120, 103, 108, 110, 48, 28.25406 + 8, 128, 135, 132, 128, 131, 128, 131, 131, 130, 128, 126, 118, 116, 112, 112, 28.25407 + 111, 111, 106, 100, 97, 99, 97, 99, 99, 97, 95, 93, 92, 92, 91, 92, 28.25408 + 84, 88, 88, 87, 87, 88, 83, 83, 84, 77, 72, 56, 56, 32, 24, 30, 28.25409 + 77, 75, 88, 83, 72, 57, 60, 51, 40, 55, 51, 56, 41, 6, 93, 128, 28.25410 + 114, 110, 110, 108, 111, 103, 96, 49, 75, 124, 138, 186, 202, 213, 212, 205, 28.25411 + 197, 201, 201, 197, 178, 151, 132, 103, 79, 80, 87, 72, 81, 72, 84, 83, 28.25412 + 81, 92, 103, 103, 102, 103, 102, 99, 100, 104, 106, 107, 107, 104, 104, 106, 28.25413 + 106, 103, 107, 83, 30, 38, 32, 14, 96, 104, 115, 100, 110, 97, 93, 89, 28.25414 + 111, 95, 84, 61, 77, 96, 106, 100, 119, 108, 107, 96, 91, 88, 89, 99, 28.25415 + 67, 67, 83, 108, 103, 99, 92, 99, 100, 87, 83, 63, 5, 72, 100, 100, 28.25416 + 92, 84, 91, 83, 87, 100, 60, 63, 33, 69, 108, 93, 102, 89, 72, 75, 28.25417 + 84, 85, 80, 30, 2, 71, 108, 95, 97, 97, 97, 103, 106, 99, 100, 95, 28.25418 + 38, 2, 76, 89, 67, 55, 56, 49, 45, 59, 45, 34, 18, 60, 91, 89, 28.25419 + 93, 75, 67, 76, 72, 72, 48, 28, 63, 85, 76, 81, 72, 69, 71, 68, 28.25420 + 68, 67, 44, 41, 24, 87, 79, 75, 61, 63, 60, 56, 64, 59, 32, 20, 28.25421 + 73, 76, 92, 73, 53, 65, 61, 80, 63, 73, 26, 20, 24, 55, 61, 59, 28.25422 + 64, 57, 49, 38, 38, 40, 45, 18, 4, 63, 72, 75, 59, 61, 61, 53, 28.25423 + 49, 53, 56, 32, 20, 21, 63, 55, 37, 42, 41, 33, 40, 37, 26, 17, 28.25424 + 1, 56, 71, 65, 53, 41, 46, 45, 53, 55, 40, 32, 1, 30, 45, 14, 28.25425 + 25, 14, 24, 14, 16, 29, 17, 9, 13, 55, 52, 26, 42, 95, 144, 140, 28.25426 + 143, 135, 124, 130, 128, 110, 83, 142, 132, 169, 226, 241, 238, 238, 236, 240, 28.25427 + 198, 131, 108, 110, 111, 116, 116, 111, 115, 120, 118, 92, 61, 48, 44, 45, 28.25428 + 48, 48, 56, 57, 61, 64, 69, 81, 103, 119, 154, 115, 120, 122, 124, 132, 28.25429 + 118, 79, 75, 76, 97, 103, 85, 127, 120, 119, 114, 106, 114, 111, 110, 110, 28.25430 + 108, 107, 108, 106, 104, 104, 104, 106, 104, 103, 104, 103, 104, 104, 103, 104, 28.25431 + 110, 108, 108, 111, 95, 72, 76, 75, 106, 108, 99, 61, 72, 128, 143, 154, 28.25432 + 139, 107, 122, 108, 104, 97, 96, 107, 84, 103, 123, 140, 136, 139, 139, 139, 28.25433 + 142, 122, 127, 41, 103, 120, 148, 150, 150, 146, 144, 128, 124, 122, 92, 24, 28.25434 + 123, 128, 131, 130, 127, 127, 127, 132, 135, 116, 112, 44, 104, 126, 138, 131, 28.25435 + 104, 120, 118, 107, 108, 115, 106, 103, 108, 120, 102, 123, 116, 118, 104, 119, 28.25436 + 116, 75, 64, 97, 115, 131, 115, 122, 126, 126, 119, 126, 122, 91, 57, 128, 28.25437 + 126, 126, 119, 123, 123, 123, 119, 119, 115, 122, 112, 114, 76, 87, 95, 97, 28.25438 + 99, 102, 107, 110, 120, 119, 92, 30, 110, 107, 116, 107, 100, 97, 95, 100, 28.25439 + 107, 107, 85, 64, 77, 92, 79, 72, 75, 76, 79, 77, 79, 77, 40, 30, 28.25440 + 59, 110, 118, 89, 104, 115, 114, 108, 115, 120, 45, 4, 122, 139, 132, 131, 28.25441 + 126, 124, 128, 123, 119, 108, 111, 106, 89, 99, 81, 87, 93, 83, 115, 114, 28.25442 + 111, 112, 111, 111, 111, 111, 108, 107, 104, 107, 104, 100, 96, 103, 99, 97, 28.25443 + 102, 97, 77, 48, 32, 28, 24, 24, 21, 14, 34, 29, 40, 42, 37, 34, 28.25444 + 34, 37, 36, 38, 36, 42, 40, 34, 6, 68, 115, 118, 116, 114, 122, 115, 28.25445 + 102, 95, 42, 85, 130, 174, 217, 216, 209, 218, 206, 208, 214, 210, 194, 190, 28.25446 + 166, 102, 88, 96, 87, 92, 89, 88, 77, 88, 96, 57, 65, 64, 102, 163, 28.25447 + 110, 116, 122, 119, 131, 126, 128, 132, 134, 134, 134, 131, 116, 92, 61, 26, 28.25448 + 45, 33, 20, 75, 99, 104, 106, 104, 107, 104, 108, 104, 100, 96, 93, 99, 28.25449 + 100, 79, 79, 84, 77, 76, 79, 89, 91, 79, 72, 80, 79, 77, 80, 76, 28.25450 + 76, 75, 61, 73, 71, 73, 40, 9, 67, 81, 84, 88, 87, 87, 84, 87, 28.25451 + 85, 72, 59, 30, 102, 112, 92, 89, 68, 87, 87, 77, 76, 79, 29, 4, 28.25452 + 99, 103, 93, 97, 91, 100, 92, 96, 92, 96, 79, 59, 2, 75, 87, 59, 28.25453 + 68, 48, 53, 46, 49, 44, 32, 8, 60, 84, 83, 80, 60, 64, 73, 73, 28.25454 + 55, 44, 25, 60, 72, 73, 68, 68, 71, 71, 71, 72, 67, 45, 51, 30, 28.25455 + 92, 79, 61, 60, 61, 59, 49, 60, 52, 28, 20, 64, 52, 65, 72, 68, 28.25456 + 64, 55, 59, 56, 53, 29, 24, 20, 40, 51, 52, 36, 42, 42, 49, 46, 28.25457 + 46, 45, 24, 2, 57, 63, 60, 55, 51, 48, 45, 45, 41, 40, 28, 26, 28.25458 + 25, 20, 21, 20, 29, 29, 22, 40, 34, 33, 17, 8, 51, 67, 61, 48, 28.25459 + 42, 41, 41, 44, 42, 34, 22, 1, 51, 48, 14, 20, 17, 24, 20, 20, 28.25460 + 13, 13, 8, 1, 42, 60, 45, 38, 30, 91, 80, 92, 91, 88, 83, 88, 28.25461 + 102, 134, 123, 150, 217, 241, 237, 238, 237, 241, 191, 136, 108, 116, 122, 120, 28.25462 + 112, 103, 120, 127, 122, 89, 49, 40, 42, 38, 42, 55, 73, 79, 80, 87, 28.25463 + 84, 80, 76, 89, 106, 147, 159, 120, 119, 119, 132, 119, 73, 68, 69, 92, 28.25464 + 104, 83, 116, 127, 124, 122, 120, 119, 118, 116, 115, 119, 116, 115, 116, 118, 28.25465 + 118, 111, 108, 108, 108, 108, 111, 107, 110, 107, 108, 107, 115, 104, 72, 69, 28.25466 + 68, 67, 56, 60, 100, 99, 93, 59, 71, 83, 95, 103, 76, 69, 67, 59, 28.25467 + 57, 51, 52, 56, 80, 80, 96, 107, 111, 115, 122, 122, 126, 111, 42, 92, 28.25468 + 112, 138, 143, 135, 130, 97, 61, 71, 60, 38, 26, 83, 87, 87, 89, 92, 28.25469 + 91, 91, 95, 99, 96, 69, 60, 81, 91, 92, 65, 60, 59, 60, 45, 30, 28.25470 + 46, 37, 29, 28, 21, 25, 22, 22, 30, 33, 33, 36, 37, 48, 36, 38, 28.25471 + 38, 38, 40, 65, 68, 48, 56, 63, 97, 55, 99, 114, 106, 100, 102, 102, 28.25472 + 100, 102, 103, 103, 106, 102, 99, 100, 106, 111, 111, 112, 115, 115, 116, 115, 28.25473 + 114, 92, 37, 100, 106, 99, 95, 89, 95, 89, 80, 97, 97, 69, 32, 68, 28.25474 + 60, 44, 32, 29, 28, 25, 28, 26, 20, 21, 32, 38, 36, 44, 37, 36, 28.25475 + 37, 37, 52, 52, 65, 49, 0, 18, 73, 81, 80, 79, 84, 91, 88, 91, 28.25476 + 87, 87, 49, 81, 111, 122, 134, 135, 130, 126, 127, 120, 127, 126, 127, 127, 28.25477 + 126, 123, 123, 120, 119, 116, 115, 115, 110, 114, 104, 84, 60, 28, 21, 21, 28.25478 + 18, 12, 13, 12, 10, 37, 37, 33, 40, 38, 36, 29, 33, 33, 32, 29, 28.25479 + 37, 30, 34, 10, 44, 99, 103, 96, 106, 108, 89, 72, 92, 36, 93, 144, 28.25480 + 205, 220, 217, 216, 220, 225, 202, 177, 146, 140, 123, 106, 91, 89, 68, 56, 28.25481 + 73, 76, 73, 72, 76, 69, 53, 68, 60, 102, 174, 150, 111, 110, 135, 132, 28.25482 + 134, 136, 139, 144, 142, 140, 136, 119, 83, 29, 25, 21, 52, 40, 46, 83, 28.25483 + 83, 73, 80, 84, 80, 79, 84, 83, 84, 81, 83, 87, 89, 88, 89, 88, 28.25484 + 88, 89, 85, 88, 88, 84, 76, 80, 80, 77, 67, 87, 75, 68, 56, 73, 28.25485 + 71, 38, 8, 30, 73, 76, 51, 59, 79, 77, 64, 65, 69, 53, 42, 87, 28.25486 + 124, 73, 64, 73, 73, 53, 55, 63, 52, 44, 8, 83, 110, 103, 104, 97, 28.25487 + 102, 91, 91, 97, 93, 60, 41, 4, 77, 84, 53, 56, 44, 40, 42, 41, 28.25488 + 38, 21, 17, 53, 26, 32, 33, 36, 33, 32, 32, 24, 22, 29, 30, 34, 28.25489 + 34, 33, 32, 38, 51, 60, 61, 61, 38, 38, 20, 88, 73, 57, 52, 55, 28.25490 + 38, 36, 36, 32, 30, 24, 44, 26, 37, 25, 28, 45, 41, 46, 41, 42, 28.25491 + 41, 28, 16, 33, 40, 42, 37, 33, 32, 33, 32, 30, 28, 22, 16, 28, 28.25492 + 29, 21, 21, 25, 25, 22, 24, 24, 22, 26, 25, 24, 26, 25, 26, 28, 28.25493 + 29, 28, 30, 28, 30, 16, 1, 45, 44, 41, 37, 38, 37, 36, 36, 34, 28.25494 + 21, 24, 0, 42, 36, 9, 9, 8, 8, 8, 6, 8, 10, 5, 1, 5, 28.25495 + 9, 8, 12, 2, 143, 140, 136, 132, 130, 126, 128, 144, 126, 139, 190, 240, 28.25496 + 241, 240, 238, 238, 190, 135, 111, 115, 126, 114, 106, 100, 124, 131, 126, 97, 28.25497 + 49, 37, 37, 37, 37, 59, 69, 68, 60, 60, 52, 59, 33, 38, 93, 110, 28.25498 + 134, 170, 143, 122, 120, 135, 123, 69, 64, 67, 88, 97, 77, 55, 56, 61, 28.25499 + 61, 57, 60, 73, 135, 171, 115, 116, 118, 119, 115, 104, 99, 99, 103, 107, 28.25500 + 116, 118, 119, 114, 112, 118, 116, 93, 60, 59, 57, 46, 49, 56, 49, 57, 28.25501 + 63, 61, 67, 55, 55, 55, 51, 87, 91, 96, 99, 106, 111, 108, 53, 122, 28.25502 + 127, 100, 92, 89, 91, 85, 80, 95, 111, 38, 84, 65, 55, 51, 46, 46, 28.25503 + 34, 33, 34, 28, 32, 17, 22, 21, 18, 18, 21, 22, 24, 22, 26, 29, 28.25504 + 30, 64, 29, 36, 64, 71, 77, 73, 81, 93, 128, 108, 116, 111, 132, 142, 28.25505 + 130, 142, 142, 136, 130, 127, 110, 63, 48, 102, 144, 147, 116, 112, 97, 83, 28.25506 + 75, 69, 26, 25, 20, 18, 18, 18, 18, 17, 18, 20, 21, 21, 24, 28, 28.25507 + 29, 32, 30, 34, 41, 46, 49, 57, 63, 95, 99, 112, 93, 41, 95, 87, 28.25508 + 69, 55, 52, 48, 44, 46, 46, 40, 38, 29, 25, 44, 72, 71, 79, 111, 28.25509 + 122, 120, 130, 119, 79, 25, 84, 130, 130, 99, 77, 79, 80, 67, 67, 26, 28.25510 + 18, 2, 9, 9, 34, 20, 17, 18, 36, 28, 29, 29, 42, 61, 91, 126, 28.25511 + 175, 174, 124, 131, 144, 138, 135, 138, 136, 136, 134, 132, 132, 131, 130, 128, 28.25512 + 126, 120, 119, 106, 112, 102, 55, 24, 21, 16, 16, 17, 20, 24, 26, 45, 28.25513 + 38, 44, 71, 80, 87, 92, 95, 88, 84, 69, 65, 32, 29, 20, 10, 36, 28.25514 + 36, 37, 52, 55, 91, 93, 85, 85, 28, 103, 157, 209, 234, 220, 222, 213, 28.25515 + 163, 136, 111, 110, 104, 96, 95, 91, 49, 64, 55, 61, 59, 51, 46, 51, 28.25516 + 49, 52, 71, 75, 102, 182, 178, 115, 103, 114, 128, 139, 142, 147, 148, 146, 28.25517 + 146, 139, 120, 75, 26, 26, 26, 32, 24, 10, 9, 12, 6, 5, 4, 6, 28.25518 + 2, 1, 1, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 28.25519 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 9, 20, 20, 28.25520 + 22, 22, 22, 28, 29, 37, 40, 46, 61, 26, 60, 79, 76, 59, 59, 69, 28.25521 + 67, 51, 53, 61, 26, 6, 13, 52, 56, 48, 42, 56, 60, 48, 44, 63, 28.25522 + 57, 12, 4, 30, 71, 71, 32, 21, 17, 14, 13, 20, 44, 32, 25, 37, 28.25523 + 30, 45, 44, 49, 53, 55, 53, 48, 22, 63, 67, 75, 69, 44, 20, 17, 28.25524 + 25, 17, 33, 36, 46, 29, 72, 45, 44, 48, 42, 56, 64, 59, 65, 51, 28.25525 + 20, 60, 67, 71, 67, 40, 34, 36, 20, 25, 25, 17, 22, 36, 34, 25, 28.25526 + 28, 25, 24, 21, 20, 21, 17, 10, 12, 13, 4, 2, 2, 1, 1, 1, 28.25527 + 1, 0, 0, 0, 2, 5, 1, 5, 2, 5, 9, 8, 14, 18, 22, 22, 28.25528 + 13, 2, 18, 14, 16, 13, 12, 12, 13, 12, 10, 10, 12, 0, 4, 4, 28.25529 + 4, 4, 2, 2, 1, 1, 1, 1, 1, 2, 2, 4, 1, 1, 1, 173, 28.25530 + 165, 163, 159, 158, 161, 154, 127, 138, 181, 232, 241, 241, 241, 240, 191, 127, 28.25531 + 114, 123, 128, 110, 102, 108, 126, 139, 132, 115, 55, 36, 33, 30, 33, 48, 28.25532 + 60, 52, 48, 45, 52, 68, 76, 93, 95, 97, 107, 128, 174, 159, 127, 122, 28.25533 + 136, 122, 71, 64, 65, 87, 100, 61, 65, 128, 143, 144, 138, 143, 144, 143, 28.25534 + 182, 154, 116, 110, 103, 97, 103, 114, 118, 127, 132, 135, 134, 139, 138, 131, 28.25535 + 116, 114, 60, 55, 52, 45, 44, 42, 46, 46, 45, 45, 55, 56, 81, 96, 28.25536 + 112, 124, 140, 143, 146, 153, 144, 143, 115, 69, 138, 144, 123, 112, 116, 122, 28.25537 + 110, 100, 99, 110, 37, 42, 46, 71, 71, 81, 120, 135, 146, 112, 88, 85, 28.25538 + 150, 153, 159, 144, 148, 138, 150, 142, 138, 140, 135, 69, 36, 96, 157, 151, 28.25539 + 159, 153, 131, 122, 134, 154, 126, 143, 128, 128, 107, 131, 147, 144, 128, 134, 28.25540 + 127, 143, 75, 45, 110, 157, 146, 144, 161, 159, 162, 165, 150, 139, 81, 41, 28.25541 + 120, 136, 135, 136, 135, 138, 144, 138, 136, 138, 135, 127, 127, 134, 134, 139, 28.25542 + 132, 130, 124, 87, 72, 73, 64, 93, 37, 53, 56, 87, 97, 96, 103, 118, 28.25543 + 110, 103, 93, 83, 51, 111, 142, 144, 143, 142, 144, 142, 138, 134, 122, 84, 28.25544 + 30, 102, 134, 135, 128, 130, 128, 128, 124, 95, 77, 69, 6, 75, 96, 97, 28.25545 + 91, 96, 104, 104, 103, 108, 108, 48, 57, 102, 123, 197, 182, 132, 122, 128, 28.25546 + 147, 146, 143, 147, 155, 157, 155, 155, 155, 147, 144, 122, 116, 106, 126, 111, 28.25547 + 93, 36, 24, 18, 17, 22, 25, 29, 40, 46, 51, 40, 61, 100, 103, 118, 28.25548 + 124, 127, 119, 116, 106, 100, 95, 81, 60, 8, 100, 108, 108, 106, 55, 55, 28.25549 + 52, 87, 83, 21, 116, 178, 216, 218, 225, 210, 148, 119, 110, 102, 92, 93, 28.25550 + 89, 95, 55, 38, 72, 69, 79, 83, 89, 79, 81, 79, 83, 88, 116, 103, 28.25551 + 191, 187, 153, 111, 110, 118, 139, 148, 144, 148, 151, 146, 135, 123, 71, 25, 28.25552 + 32, 32, 37, 22, 24, 65, 73, 72, 76, 71, 76, 67, 106, 92, 61, 64, 28.25553 + 115, 99, 118, 124, 123, 128, 126, 118, 131, 131, 127, 120, 99, 102, 119, 120, 28.25554 + 112, 111, 116, 112, 110, 83, 64, 37, 9, 68, 100, 91, 79, 76, 59, 45, 28.25555 + 44, 17, 26, 26, 29, 5, 4, 17, 4, 4, 1, 10, 0, 2, 1, 5, 28.25556 + 4, 1, 4, 1, 0, 0, 1, 1, 0, 0, 0, 2, 0, 6, 20, 17, 28.25557 + 22, 30, 46, 61, 38, 32, 53, 10, 30, 75, 87, 93, 89, 88, 92, 96, 28.25558 + 100, 67, 49, 24, 67, 79, 83, 92, 85, 77, 75, 69, 56, 56, 48, 63, 28.25559 + 48, 64, 72, 60, 67, 67, 79, 76, 79, 81, 51, 20, 72, 69, 52, 80, 28.25560 + 76, 72, 67, 57, 45, 38, 30, 21, 21, 8, 14, 33, 28, 45, 46, 48, 28.25561 + 34, 30, 25, 10, 13, 28, 79, 88, 69, 75, 80, 76, 68, 71, 48, 53, 28.25562 + 64, 71, 73, 84, 83, 76, 33, 10, 5, 4, 10, 4, 2, 9, 9, 5, 28.25563 + 6, 9, 8, 5, 5, 4, 2, 2, 9, 21, 25, 29, 20, 30, 45, 55, 28.25564 + 40, 25, 18, 4, 17, 69, 85, 71, 72, 83, 155, 158, 158, 161, 155, 154, 28.25565 + 132, 150, 179, 229, 237, 241, 241, 238, 183, 126, 116, 124, 132, 107, 104, 118, 28.25566 + 130, 146, 142, 131, 88, 40, 34, 32, 34, 48, 63, 60, 51, 60, 114, 115, 28.25567 + 112, 115, 115, 102, 107, 104, 112, 174, 181, 150, 120, 126, 115, 65, 61, 64, 28.25568 + 87, 93, 56, 110, 155, 166, 166, 159, 153, 146, 134, 194, 178, 134, 108, 97, 28.25569 + 110, 119, 132, 136, 139, 144, 146, 151, 148, 143, 134, 122, 102, 53, 51, 45, 28.25570 + 42, 46, 63, 68, 65, 71, 69, 75, 80, 136, 153, 158, 157, 154, 157, 150, 28.25571 + 138, 135, 120, 120, 51, 138, 136, 126, 122, 115, 126, 128, 126, 96, 118, 38, 28.25572 + 107, 147, 150, 157, 154, 159, 128, 158, 127, 159, 126, 116, 140, 143, 144, 148, 28.25573 + 139, 139, 140, 132, 148, 150, 83, 32, 126, 155, 158, 153, 154, 154, 148, 134, 28.25574 + 128, 146, 142, 95, 123, 144, 151, 151, 142, 148, 151, 139, 143, 77, 64, 130, 28.25575 + 159, 155, 134, 153, 150, 151, 143, 150, 159, 110, 42, 151, 161, 161, 115, 108, 28.25576 + 107, 108, 118, 119, 112, 139, 124, 87, 96, 114, 139, 120, 123, 123, 127, 136, 28.25577 + 123, 83, 100, 33, 76, 126, 138, 140, 138, 140, 135, 135, 134, 106, 85, 45, 28.25578 + 110, 142, 134, 131, 130, 128, 128, 128, 112, 126, 93, 30, 96, 132, 136, 131, 28.25579 + 124, 130, 131, 128, 123, 95, 69, 21, 122, 144, 142, 110, 106, 100, 123, 108, 28.25580 + 102, 107, 63, 56, 103, 120, 191, 202, 162, 119, 122, 143, 144, 158, 162, 171, 28.25581 + 175, 171, 174, 166, 159, 153, 118, 108, 126, 123, 112, 84, 29, 20, 17, 25, 28.25582 + 32, 34, 38, 49, 51, 59, 44, 83, 108, 124, 120, 116, 108, 112, 107, 114, 28.25583 + 115, 116, 96, 67, 8, 95, 106, 120, 114, 110, 103, 104, 89, 83, 21, 118, 28.25584 + 189, 218, 224, 217, 162, 123, 111, 97, 104, 87, 84, 100, 102, 45, 36, 63, 28.25585 + 52, 63, 60, 64, 67, 69, 59, 92, 126, 111, 115, 195, 193, 181, 112, 107, 28.25586 + 116, 139, 151, 151, 157, 155, 146, 136, 120, 56, 29, 21, 29, 37, 29, 44, 28.25587 + 93, 112, 99, 92, 89, 89, 89, 91, 91, 84, 87, 96, 120, 114, 115, 111, 28.25588 + 115, 96, 100, 122, 135, 107, 99, 103, 83, 99, 95, 99, 96, 96, 93, 93, 28.25589 + 96, 93, 42, 9, 67, 106, 99, 100, 83, 87, 80, 84, 61, 61, 46, 26, 28.25590 + 20, 104, 107, 83, 81, 83, 73, 68, 71, 60, 33, 9, 33, 106, 97, 76, 28.25591 + 80, 97, 96, 89, 75, 95, 80, 30, 5, 37, 73, 71, 34, 38, 42, 46, 28.25592 + 49, 37, 12, 57, 110, 103, 100, 87, 85, 73, 79, 65, 64, 53, 25, 73, 28.25593 + 87, 89, 80, 71, 68, 65, 63, 69, 77, 71, 61, 64, 75, 80, 81, 73, 28.25594 + 79, 88, 85, 75, 72, 52, 21, 71, 73, 71, 59, 61, 64, 68, 72, 71, 28.25595 + 60, 33, 36, 18, 55, 63, 55, 60, 48, 38, 16, 33, 37, 20, 13, 6, 28.25596 + 61, 79, 75, 67, 71, 67, 77, 61, 68, 60, 53, 52, 51, 67, 63, 56, 28.25597 + 59, 60, 57, 63, 55, 52, 42, 42, 71, 73, 84, 76, 87, 84, 76, 76, 28.25598 + 60, 67, 64, 68, 51, 53, 53, 64, 67, 38, 53, 40, 51, 32, 8, 56, 28.25599 + 87, 88, 63, 44, 29, 161, 161, 162, 155, 151, 138, 153, 151, 212, 233, 237, 28.25600 + 238, 238, 194, 130, 116, 127, 138, 115, 104, 131, 140, 148, 143, 139, 119, 61, 28.25601 + 34, 32, 36, 51, 64, 67, 52, 56, 115, 127, 128, 126, 123, 148, 148, 111, 28.25602 + 116, 116, 158, 186, 167, 124, 122, 108, 64, 59, 61, 87, 95, 67, 140, 170, 28.25603 + 158, 162, 150, 154, 155, 139, 198, 182, 167, 108, 97, 114, 126, 138, 144, 151, 28.25604 + 147, 151, 150, 153, 147, 128, 122, 73, 51, 45, 42, 64, 69, 76, 77, 76, 28.25605 + 87, 85, 73, 120, 165, 166, 159, 158, 143, 151, 135, 127, 136, 114, 119, 56, 28.25606 + 131, 143, 135, 120, 123, 123, 126, 132, 99, 119, 40, 114, 146, 143, 142, 162, 28.25607 + 130, 144, 153, 128, 142, 99, 132, 158, 155, 148, 148, 143, 146, 144, 147, 144, 28.25608 + 144, 75, 33, 139, 151, 151, 146, 153, 155, 144, 143, 144, 140, 127, 87, 118, 28.25609 + 148, 159, 148, 148, 150, 148, 138, 142, 75, 48, 123, 151, 158, 151, 147, 134, 28.25610 + 148, 135, 151, 140, 140, 49, 135, 130, 167, 155, 162, 161, 157, 158, 154, 148, 28.25611 + 131, 122, 81, 138, 150, 143, 148, 142, 142, 142, 130, 128, 107, 106, 38, 104, 28.25612 + 142, 138, 130, 126, 127, 119, 116, 127, 119, 87, 45, 106, 132, 136, 126, 132, 28.25613 + 127, 124, 127, 128, 119, 95, 37, 100, 112, 136, 122, 122, 126, 116, 132, 132, 28.25614 + 96, 76, 0, 120, 126, 135, 135, 142, 138, 127, 138, 110, 112, 68, 51, 104, 28.25615 + 126, 190, 214, 197, 132, 116, 132, 147, 155, 163, 177, 179, 178, 177, 179, 170, 28.25616 + 157, 119, 119, 135, 126, 114, 85, 26, 20, 20, 33, 44, 53, 52, 49, 56, 28.25617 + 55, 41, 95, 114, 122, 116, 104, 104, 103, 110, 102, 104, 110, 107, 67, 8, 28.25618 + 107, 110, 108, 104, 102, 104, 89, 61, 85, 29, 111, 193, 214, 226, 201, 124, 28.25619 + 108, 102, 106, 87, 85, 107, 107, 91, 46, 37, 40, 69, 65, 60, 57, 73, 28.25620 + 68, 55, 96, 124, 119, 114, 199, 205, 193, 111, 103, 115, 127, 142, 148, 153, 28.25621 + 159, 150, 135, 122, 61, 26, 18, 36, 49, 21, 56, 106, 92, 95, 95, 97, 28.25622 + 95, 102, 97, 80, 75, 79, 112, 131, 122, 111, 108, 100, 110, 104, 115, 118, 28.25623 + 116, 110, 77, 100, 115, 119, 119, 124, 120, 119, 106, 91, 57, 44, 12, 79, 28.25624 + 102, 99, 100, 99, 96, 79, 81, 77, 71, 49, 28, 73, 107, 95, 92, 92, 28.25625 + 89, 99, 93, 77, 80, 37, 6, 84, 104, 83, 76, 87, 91, 83, 84, 89, 28.25626 + 79, 75, 37, 6, 59, 64, 48, 32, 45, 28, 41, 53, 26, 12, 48, 110, 28.25627 + 91, 87, 68, 67, 65, 68, 69, 97, 52, 28, 65, 75, 65, 89, 97, 83, 28.25628 + 71, 77, 60, 67, 59, 37, 67, 83, 92, 91, 88, 102, 84, 89, 55, 81, 28.25629 + 55, 24, 68, 67, 71, 63, 49, 46, 51, 57, 52, 71, 42, 37, 5, 60, 28.25630 + 63, 63, 59, 34, 45, 33, 32, 34, 36, 13, 9, 77, 75, 46, 55, 49, 28.25631 + 56, 65, 71, 71, 61, 68, 29, 59, 52, 64, 56, 55, 55, 45, 41, 52, 28.25632 + 67, 22, 75, 84, 75, 75, 79, 69, 61, 69, 75, 72, 67, 30, 34, 60, 28.25633 + 84, 67, 68, 59, 45, 28, 56, 56, 40, 5, 64, 85, 64, 56, 28, 13, 28.25634 + 155, 153, 154, 163, 132, 147, 153, 175, 233, 233, 238, 240, 218, 150, 122, 123, 28.25635 + 136, 132, 106, 123, 147, 154, 150, 144, 135, 93, 41, 30, 30, 40, 52, 68, 28.25636 + 67, 30, 53, 122, 135, 150, 146, 140, 142, 140, 123, 115, 120, 138, 193, 182, 28.25637 + 132, 124, 100, 63, 57, 60, 87, 99, 83, 106, 167, 159, 159, 159, 157, 161, 28.25638 + 146, 204, 194, 179, 102, 99, 114, 134, 142, 153, 150, 159, 151, 148, 153, 140, 28.25639 + 127, 124, 53, 45, 42, 41, 69, 83, 81, 79, 87, 87, 81, 92, 148, 163, 28.25640 + 163, 158, 139, 146, 142, 139, 132, 131, 127, 114, 53, 128, 134, 139, 132, 131, 28.25641 + 126, 116, 116, 100, 115, 33, 124, 142, 161, 132, 139, 140, 132, 140, 143, 140, 28.25642 + 97, 127, 159, 154, 150, 151, 157, 151, 153, 144, 135, 135, 80, 40, 118, 155, 28.25643 + 144, 155, 142, 118, 146, 144, 140, 140, 130, 81, 126, 143, 158, 147, 158, 151, 28.25644 + 140, 143, 139, 75, 48, 122, 151, 148, 146, 143, 144, 134, 131, 140, 144, 151, 28.25645 + 55, 93, 157, 119, 147, 154, 142, 161, 154, 143, 151, 140, 107, 77, 140, 147, 28.25646 + 134, 127, 126, 122, 135, 139, 128, 124, 106, 45, 124, 138, 134, 136, 123, 112, 28.25647 + 114, 120, 127, 106, 83, 28, 111, 132, 127, 135, 127, 126, 130, 127, 127, 108, 28.25648 + 96, 49, 92, 119, 135, 131, 131, 116, 130, 124, 126, 92, 67, 0, 116, 131, 28.25649 + 132, 132, 138, 126, 146, 144, 143, 131, 72, 60, 106, 127, 190, 206, 197, 132, 28.25650 + 115, 128, 143, 147, 159, 177, 182, 183, 182, 174, 170, 151, 119, 132, 138, 130, 28.25651 + 122, 69, 25, 20, 24, 49, 55, 52, 49, 53, 61, 64, 48, 100, 122, 123, 28.25652 + 106, 111, 115, 112, 107, 106, 106, 107, 89, 68, 8, 106, 93, 114, 110, 108, 28.25653 + 103, 87, 64, 80, 24, 116, 187, 210, 222, 179, 118, 108, 99, 99, 87, 91, 28.25654 + 115, 107, 93, 45, 32, 33, 52, 64, 69, 59, 68, 68, 46, 91, 122, 108, 28.25655 + 120, 199, 198, 198, 110, 102, 110, 119, 134, 140, 155, 162, 154, 138, 115, 59, 28.25656 + 29, 18, 25, 51, 25, 57, 106, 108, 93, 91, 85, 85, 76, 85, 76, 68, 28.25657 + 24, 104, 127, 118, 106, 104, 103, 114, 118, 119, 104, 120, 107, 76, 106, 116, 28.25658 + 126, 118, 110, 102, 93, 102, 96, 97, 46, 12, 76, 83, 103, 89, 84, 72, 28.25659 + 80, 83, 88, 99, 52, 25, 91, 107, 79, 87, 75, 91, 95, 97, 87, 80, 28.25660 + 41, 6, 97, 103, 87, 79, 91, 102, 97, 96, 99, 87, 87, 38, 5, 64, 28.25661 + 55, 30, 33, 48, 26, 28, 40, 34, 9, 49, 93, 92, 67, 81, 83, 67, 28.25662 + 68, 71, 63, 65, 24, 59, 79, 69, 88, 72, 60, 67, 59, 71, 71, 63, 28.25663 + 41, 87, 75, 72, 67, 77, 85, 95, 77, 75, 69, 53, 25, 65, 65, 79, 28.25664 + 67, 55, 57, 53, 57, 60, 67, 60, 36, 28, 46, 71, 61, 41, 38, 57, 28.25665 + 32, 42, 26, 24, 13, 10, 38, 75, 71, 46, 49, 46, 45, 36, 46, 41, 28.25666 + 32, 26, 67, 59, 65, 48, 44, 41, 37, 40, 41, 65, 28, 76, 80, 76, 28.25667 + 59, 63, 52, 51, 57, 51, 48, 36, 33, 36, 61, 56, 51, 45, 36, 25, 28.25668 + 38, 38, 46, 44, 5, 28, 88, 57, 57, 14, 0, 171, 169, 165, 150, 135, 28.25669 + 150, 157, 208, 232, 241, 236, 229, 169, 128, 122, 134, 139, 122, 110, 144, 159, 28.25670 + 159, 151, 143, 124, 65, 33, 28, 34, 46, 65, 69, 67, 30, 108, 134, 134, 28.25671 + 146, 140, 144, 148, 143, 122, 118, 112, 132, 199, 193, 165, 123, 97, 61, 55, 28.25672 + 59, 81, 99, 73, 92, 169, 161, 158, 159, 157, 154, 142, 209, 199, 178, 102, 28.25673 + 103, 116, 128, 143, 151, 154, 154, 150, 151, 153, 138, 123, 123, 49, 41, 40, 28.25674 + 68, 79, 83, 87, 91, 87, 87, 80, 89, 154, 161, 162, 144, 143, 140, 146, 28.25675 + 139, 135, 127, 123, 123, 65, 139, 132, 124, 131, 126, 138, 111, 120, 97, 115, 28.25676 + 30, 122, 134, 142, 126, 143, 128, 148, 114, 140, 134, 89, 130, 158, 150, 153, 28.25677 + 153, 154, 157, 148, 147, 146, 134, 80, 33, 124, 148, 147, 155, 153, 150, 144, 28.25678 + 148, 135, 142, 127, 84, 123, 142, 143, 148, 158, 147, 135, 140, 132, 81, 46, 28.25679 + 127, 154, 157, 151, 143, 142, 140, 135, 135, 135, 151, 73, 60, 155, 162, 162, 28.25680 + 154, 154, 155, 148, 151, 159, 144, 119, 75, 136, 144, 138, 136, 143, 131, 127, 28.25681 + 126, 132, 114, 108, 44, 111, 140, 123, 126, 122, 116, 126, 116, 122, 110, 84, 28.25682 + 29, 104, 128, 127, 142, 124, 122, 120, 115, 111, 120, 97, 52, 95, 130, 134, 28.25683 + 138, 123, 126, 124, 128, 122, 96, 77, 10, 123, 124, 122, 139, 140, 128, 134, 28.25684 + 142, 146, 122, 65, 68, 107, 120, 163, 214, 202, 136, 111, 123, 143, 147, 159, 28.25685 + 173, 171, 174, 178, 179, 169, 132, 115, 134, 142, 131, 122, 51, 22, 20, 37, 28.25686 + 49, 56, 53, 55, 60, 73, 60, 55, 102, 123, 114, 112, 107, 108, 103, 108, 28.25687 + 111, 100, 104, 87, 63, 6, 88, 111, 107, 107, 104, 104, 77, 67, 85, 29, 28.25688 + 120, 199, 210, 216, 153, 118, 100, 107, 91, 81, 103, 108, 111, 93, 44, 32, 28.25689 + 34, 41, 65, 71, 72, 65, 75, 46, 88, 123, 118, 122, 199, 206, 202, 108, 28.25690 + 97, 106, 120, 126, 135, 154, 161, 155, 139, 110, 59, 32, 21, 29, 38, 29, 28.25691 + 52, 96, 99, 92, 87, 97, 87, 87, 88, 77, 65, 61, 122, 128, 122, 111, 28.25692 + 119, 112, 116, 116, 104, 103, 116, 99, 79, 108, 122, 119, 110, 103, 97, 97, 28.25693 + 103, 96, 95, 48, 13, 75, 99, 95, 81, 83, 84, 85, 79, 88, 73, 51, 28.25694 + 25, 55, 99, 76, 84, 87, 95, 87, 100, 91, 73, 44, 9, 55, 103, 79, 28.25695 + 88, 79, 88, 83, 81, 80, 76, 83, 36, 10, 60, 46, 38, 40, 51, 24, 28.25696 + 28, 30, 25, 10, 51, 97, 91, 76, 91, 99, 85, 68, 69, 71, 51, 28, 28.25697 + 56, 88, 69, 83, 71, 56, 64, 81, 68, 76, 65, 37, 87, 83, 80, 77, 28.25698 + 93, 89, 77, 51, 76, 71, 53, 26, 64, 61, 80, 87, 76, 71, 68, 72, 28.25699 + 61, 57, 41, 38, 28, 56, 72, 48, 46, 32, 48, 37, 55, 24, 20, 10, 28.25700 + 9, 40, 79, 73, 51, 42, 41, 42, 44, 42, 36, 34, 26, 64, 40, 59, 28.25701 + 57, 48, 44, 34, 36, 49, 42, 16, 57, 77, 69, 56, 48, 44, 45, 51, 28.25702 + 37, 56, 40, 22, 32, 65, 59, 63, 51, 46, 20, 42, 41, 42, 30, 6, 28.25703 + 29, 69, 57, 26, 1, 0, 171, 161, 163, 131, 146, 155, 179, 226, 234, 236, 28.25704 + 236, 193, 128, 124, 131, 139, 132, 108, 124, 155, 162, 157, 148, 138, 106, 42, 28.25705 + 29, 29, 38, 52, 57, 68, 71, 30, 124, 138, 138, 147, 146, 151, 150, 143, 28.25706 + 126, 124, 112, 120, 199, 197, 174, 123, 96, 61, 55, 57, 85, 96, 88, 81, 28.25707 + 165, 162, 159, 158, 155, 155, 136, 212, 201, 174, 106, 100, 114, 127, 139, 139, 28.25708 + 153, 148, 153, 153, 147, 131, 120, 123, 46, 38, 36, 69, 85, 77, 83, 97, 28.25709 + 95, 91, 85, 85, 154, 163, 158, 142, 136, 148, 131, 135, 143, 130, 120, 123, 28.25710 + 53, 134, 132, 136, 146, 142, 142, 118, 118, 95, 120, 40, 122, 138, 158, 143, 28.25711 + 138, 142, 123, 132, 139, 139, 92, 131, 154, 147, 154, 153, 157, 146, 140, 143, 28.25712 + 140, 136, 87, 34, 119, 147, 143, 155, 159, 154, 146, 144, 139, 139, 123, 76, 28.25713 + 124, 136, 135, 146, 153, 157, 154, 153, 131, 76, 48, 116, 154, 155, 154, 142, 28.25714 + 139, 140, 151, 130, 142, 148, 118, 61, 140, 158, 143, 142, 131, 150, 158, 159, 28.25715 + 138, 132, 108, 80, 139, 144, 124, 132, 131, 127, 126, 143, 134, 106, 108, 51, 28.25716 + 107, 123, 132, 123, 122, 114, 114, 128, 126, 107, 87, 40, 115, 131, 131, 147, 28.25717 + 131, 132, 118, 124, 135, 123, 110, 55, 97, 132, 123, 119, 123, 122, 114, 118, 28.25718 + 122, 97, 76, 10, 115, 126, 120, 128, 131, 130, 116, 130, 126, 103, 80, 67, 28.25719 + 95, 127, 155, 213, 213, 158, 107, 112, 140, 148, 162, 173, 178, 183, 178, 169, 28.25720 + 163, 123, 128, 143, 138, 132, 119, 32, 22, 17, 34, 53, 57, 55, 61, 68, 28.25721 + 68, 67, 56, 102, 120, 119, 114, 116, 104, 116, 108, 112, 100, 106, 97, 65, 28.25722 + 8, 97, 92, 102, 132, 103, 103, 100, 69, 80, 26, 114, 190, 214, 214, 142, 28.25723 + 106, 96, 97, 84, 89, 108, 108, 112, 106, 38, 29, 28, 37, 63, 72, 68, 28.25724 + 57, 73, 49, 93, 130, 112, 127, 204, 208, 201, 107, 100, 107, 111, 123, 138, 28.25725 + 151, 162, 158, 142, 123, 56, 30, 30, 26, 42, 33, 52, 95, 96, 91, 83, 28.25726 + 95, 68, 80, 102, 69, 69, 64, 123, 122, 108, 99, 108, 112, 120, 99, 95, 28.25727 + 103, 118, 91, 73, 104, 126, 111, 97, 103, 89, 95, 88, 103, 107, 49, 14, 28.25728 + 72, 93, 100, 79, 81, 84, 73, 80, 71, 76, 52, 25, 71, 95, 68, 81, 28.25729 + 84, 87, 100, 99, 81, 81, 45, 10, 53, 99, 79, 77, 77, 79, 75, 76, 28.25730 + 95, 79, 76, 40, 9, 72, 51, 34, 41, 49, 26, 24, 25, 20, 9, 65, 28.25731 + 100, 87, 95, 103, 104, 91, 76, 75, 69, 51, 29, 55, 93, 77, 81, 72, 28.25732 + 55, 56, 67, 57, 73, 68, 26, 91, 76, 80, 72, 83, 73, 57, 51, 80, 28.25733 + 65, 53, 29, 65, 63, 77, 57, 64, 67, 63, 65, 65, 53, 44, 37, 12, 28.25734 + 46, 72, 67, 30, 29, 46, 30, 44, 46, 36, 12, 9, 34, 77, 69, 41, 28.25735 + 48, 34, 38, 37, 40, 30, 30, 24, 59, 72, 46, 46, 44, 55, 42, 34, 28.25736 + 44, 52, 21, 59, 67, 61, 52, 33, 32, 42, 59, 45, 42, 25, 28, 42, 28.25737 + 60, 69, 40, 29, 34, 29, 40, 28, 49, 32, 9, 38, 60, 44, 30, 0, 28.25738 + 0, 183, 163, 148, 131, 150, 155, 206, 229, 236, 232, 222, 159, 124, 123, 136, 28.25739 + 142, 132, 112, 143, 161, 161, 155, 148, 135, 84, 34, 26, 30, 46, 55, 72, 28.25740 + 67, 71, 34, 130, 138, 146, 143, 148, 154, 148, 140, 127, 128, 116, 126, 199, 28.25741 + 199, 185, 120, 100, 64, 55, 57, 89, 99, 89, 67, 158, 165, 157, 166, 158, 28.25742 + 159, 147, 213, 194, 177, 108, 103, 114, 127, 135, 139, 147, 151, 153, 153, 136, 28.25743 + 128, 116, 119, 45, 36, 36, 72, 91, 95, 85, 84, 92, 93, 79, 103, 154, 28.25744 + 162, 147, 143, 139, 144, 144, 147, 136, 138, 115, 120, 56, 136, 136, 130, 131, 28.25745 + 136, 138, 111, 116, 95, 110, 38, 123, 142, 143, 127, 138, 131, 136, 132, 122, 28.25746 + 134, 89, 130, 153, 157, 154, 157, 147, 144, 146, 143, 138, 132, 83, 33, 116, 28.25747 + 142, 143, 139, 147, 148, 143, 142, 139, 135, 120, 67, 114, 139, 154, 148, 155, 28.25748 + 147, 143, 131, 143, 72, 51, 106, 153, 150, 150, 139, 144, 148, 140, 130, 140, 28.25749 + 144, 114, 48, 111, 157, 161, 132, 143, 157, 146, 139, 144, 131, 95, 85, 138, 28.25750 + 142, 124, 130, 139, 130, 130, 116, 130, 130, 107, 55, 112, 132, 128, 131, 130, 28.25751 + 112, 111, 111, 123, 116, 88, 44, 115, 136, 122, 126, 134, 120, 130, 131, 132, 28.25752 + 122, 106, 56, 99, 116, 130, 120, 120, 119, 126, 122, 115, 99, 79, 0, 127, 28.25753 + 127, 116, 99, 132, 127, 136, 134, 127, 110, 77, 59, 89, 130, 120, 214, 217, 28.25754 + 183, 110, 111, 135, 146, 158, 170, 174, 174, 173, 175, 153, 124, 134, 148, 139, 28.25755 + 131, 119, 29, 22, 20, 33, 59, 65, 63, 71, 83, 71, 63, 57, 91, 119, 28.25756 + 118, 120, 104, 114, 108, 107, 112, 97, 103, 100, 68, 9, 96, 99, 102, 103, 28.25757 + 130, 115, 106, 69, 79, 21, 103, 181, 208, 233, 153, 106, 91, 97, 83, 103, 28.25758 + 110, 110, 115, 91, 37, 32, 25, 38, 57, 71, 73, 60, 72, 45, 99, 120, 28.25759 + 116, 136, 210, 216, 199, 102, 95, 106, 118, 124, 140, 150, 163, 158, 142, 132, 28.25760 + 57, 36, 18, 30, 46, 36, 48, 95, 95, 92, 96, 87, 81, 87, 76, 85, 28.25761 + 57, 53, 110, 118, 116, 110, 114, 96, 92, 106, 100, 110, 112, 77, 84, 111, 28.25762 + 124, 106, 95, 97, 97, 89, 103, 96, 93, 51, 17, 77, 88, 92, 73, 88, 28.25763 + 75, 83, 79, 76, 65, 53, 24, 75, 104, 69, 76, 87, 89, 91, 92, 71, 28.25764 + 81, 46, 8, 57, 97, 83, 87, 83, 77, 83, 99, 71, 72, 73, 37, 9, 28.25765 + 59, 44, 36, 45, 46, 41, 22, 18, 14, 10, 57, 96, 77, 96, 93, 93, 28.25766 + 89, 99, 95, 72, 48, 28, 61, 84, 59, 85, 67, 56, 59, 67, 67, 76, 28.25767 + 64, 25, 83, 84, 92, 73, 76, 71, 59, 49, 48, 60, 52, 28, 46, 59, 28.25768 + 75, 71, 67, 67, 59, 67, 64, 67, 42, 37, 8, 45, 81, 63, 51, 26, 28.25769 + 42, 37, 41, 22, 28, 10, 9, 36, 76, 71, 53, 53, 40, 38, 37, 36, 28.25770 + 34, 46, 22, 49, 55, 30, 37, 37, 32, 40, 37, 38, 51, 29, 68, 77, 28.25771 + 75, 61, 26, 52, 48, 49, 38, 46, 34, 25, 46, 55, 36, 57, 33, 21, 28.25772 + 30, 29, 29, 24, 14, 8, 38, 55, 49, 21, 0, 0, 157, 170, 150, 142, 28.25773 + 151, 170, 221, 233, 229, 232, 182, 135, 124, 134, 139, 142, 122, 126, 158, 163, 28.25774 + 161, 154, 144, 127, 52, 30, 26, 33, 48, 68, 72, 72, 72, 33, 138, 136, 28.25775 + 144, 142, 151, 146, 144, 142, 131, 126, 111, 146, 199, 197, 191, 124, 97, 64, 28.25776 + 56, 57, 87, 95, 85, 64, 161, 158, 162, 162, 161, 157, 146, 217, 191, 189, 28.25777 + 110, 102, 112, 123, 132, 140, 144, 147, 153, 146, 135, 128, 114, 116, 42, 34, 28.25778 + 33, 71, 96, 91, 93, 91, 99, 92, 80, 107, 161, 162, 148, 143, 150, 154, 28.25779 + 142, 144, 147, 134, 116, 116, 56, 132, 131, 132, 135, 115, 118, 119, 111, 96, 28.25780 + 107, 36, 126, 148, 150, 139, 139, 144, 116, 140, 134, 135, 83, 139, 155, 155, 28.25781 + 148, 146, 150, 146, 147, 146, 140, 99, 95, 38, 112, 135, 146, 144, 140, 146, 28.25782 + 143, 139, 140, 136, 123, 60, 128, 135, 150, 150, 151, 148, 144, 150, 140, 71, 28.25783 + 51, 99, 139, 150, 148, 127, 146, 144, 127, 139, 139, 128, 120, 64, 108, 154, 28.25784 + 162, 158, 128, 144, 123, 139, 134, 124, 69, 100, 135, 140, 135, 131, 119, 115, 28.25785 + 120, 114, 116, 127, 110, 60, 89, 122, 132, 111, 100, 111, 120, 112, 114, 100, 28.25786 + 89, 22, 112, 127, 126, 122, 120, 112, 120, 128, 123, 118, 107, 63, 68, 112, 28.25787 + 128, 130, 132, 130, 130, 128, 114, 92, 71, 0, 119, 122, 115, 118, 111, 136, 28.25788 + 134, 131, 103, 134, 83, 73, 61, 127, 118, 220, 222, 216, 111, 111, 134, 151, 28.25789 + 154, 158, 175, 177, 174, 174, 142, 128, 150, 151, 139, 130, 119, 29, 22, 17, 28.25790 + 38, 64, 60, 68, 72, 81, 76, 72, 63, 83, 115, 116, 115, 114, 115, 115, 28.25791 + 112, 108, 106, 103, 99, 63, 10, 93, 89, 87, 102, 138, 106, 100, 69, 76, 28.25792 + 16, 84, 136, 189, 234, 159, 106, 100, 100, 102, 110, 106, 112, 106, 63, 36, 28.25793 + 30, 26, 38, 57, 72, 72, 68, 71, 36, 93, 116, 112, 131, 209, 208, 205, 28.25794 + 104, 96, 108, 120, 131, 140, 150, 161, 161, 151, 139, 59, 33, 17, 25, 42, 28.25795 + 33, 37, 89, 88, 96, 91, 89, 92, 84, 75, 80, 56, 16, 107, 120, 102, 28.25796 + 92, 99, 104, 106, 107, 108, 112, 114, 77, 88, 116, 107, 88, 111, 91, 88, 28.25797 + 91, 92, 96, 91, 55, 17, 69, 93, 97, 80, 75, 77, 79, 75, 85, 85, 28.25798 + 57, 21, 91, 97, 75, 79, 87, 85, 87, 88, 72, 69, 51, 5, 61, 89, 28.25799 + 84, 81, 80, 97, 96, 73, 69, 68, 79, 36, 8, 71, 48, 33, 30, 29, 28.25800 + 46, 18, 20, 16, 10, 51, 89, 87, 89, 88, 102, 84, 80, 76, 69, 56, 28.25801 + 26, 57, 87, 76, 79, 59, 56, 65, 68, 60, 80, 65, 28, 81, 76, 93, 28.25802 + 65, 65, 88, 59, 49, 56, 48, 53, 29, 37, 65, 55, 67, 88, 77, 63, 28.25803 + 63, 71, 63, 44, 37, 32, 46, 81, 49, 30, 38, 40, 25, 13, 14, 14, 28.25804 + 14, 10, 30, 49, 67, 49, 44, 48, 42, 40, 37, 36, 26, 20, 37, 36, 28.25805 + 34, 33, 36, 33, 44, 37, 41, 26, 25, 72, 75, 72, 68, 33, 53, 36, 28.25806 + 34, 56, 28, 36, 29, 51, 37, 26, 28, 18, 29, 13, 14, 9, 21, 12, 28.25807 + 9, 25, 55, 14, 14, 2, 0, 167, 155, 128, 146, 154, 185, 218, 233, 228, 28.25808 + 218, 148, 136, 132, 136, 142, 140, 114, 144, 166, 165, 161, 153, 143, 120, 44, 28.25809 + 29, 26, 37, 49, 55, 55, 73, 69, 30, 135, 135, 150, 146, 144, 143, 144, 28.25810 + 135, 128, 132, 107, 155, 198, 201, 185, 122, 95, 64, 56, 60, 88, 102, 96, 28.25811 + 76, 136, 171, 158, 158, 161, 155, 144, 221, 193, 198, 111, 103, 112, 123, 132, 28.25812 + 143, 148, 150, 150, 132, 131, 130, 118, 122, 40, 32, 32, 76, 93, 87, 92, 28.25813 + 87, 103, 93, 76, 114, 154, 158, 146, 115, 116, 132, 140, 126, 123, 127, 123, 28.25814 + 123, 65, 144, 136, 130, 120, 120, 118, 122, 110, 93, 104, 29, 124, 135, 148, 28.25815 + 127, 142, 143, 135, 143, 143, 130, 73, 128, 155, 161, 158, 158, 150, 142, 132, 28.25816 + 140, 112, 100, 91, 41, 99, 124, 128, 107, 120, 138, 132, 112, 122, 130, 116, 28.25817 + 61, 119, 128, 150, 153, 132, 124, 122, 118, 102, 85, 44, 95, 146, 151, 148, 28.25818 + 146, 134, 131, 128, 136, 127, 134, 131, 71, 91, 151, 159, 146, 122, 151, 144, 28.25819 + 134, 127, 118, 69, 83, 132, 139, 132, 126, 115, 118, 112, 114, 112, 120, 110, 28.25820 + 59, 81, 100, 100, 100, 103, 100, 106, 104, 114, 114, 87, 25, 111, 128, 128, 28.25821 + 122, 123, 120, 115, 118, 111, 110, 107, 68, 81, 106, 128, 130, 138, 128, 120, 28.25822 + 127, 91, 96, 83, 8, 116, 120, 112, 119, 100, 122, 127, 130, 119, 124, 69, 28.25823 + 69, 52, 124, 123, 222, 228, 220, 112, 108, 134, 148, 153, 157, 169, 174, 171, 28.25824 + 162, 130, 142, 148, 150, 142, 136, 122, 26, 21, 18, 38, 63, 65, 67, 71, 28.25825 + 79, 79, 75, 64, 72, 110, 118, 120, 108, 112, 114, 107, 107, 103, 96, 83, 28.25826 + 61, 10, 84, 92, 103, 100, 100, 95, 84, 79, 80, 17, 65, 111, 155, 150, 28.25827 + 112, 99, 89, 76, 93, 92, 97, 92, 60, 37, 33, 29, 28, 36, 60, 69, 28.25828 + 72, 67, 71, 37, 97, 115, 104, 103, 202, 217, 213, 104, 95, 108, 122, 131, 28.25829 + 142, 150, 165, 159, 139, 130, 56, 34, 18, 24, 42, 37, 33, 68, 91, 88, 28.25830 + 92, 88, 89, 87, 79, 83, 55, 38, 119, 115, 95, 103, 115, 116, 114, 116, 28.25831 + 112, 116, 108, 73, 95, 123, 102, 103, 103, 92, 93, 102, 95, 96, 87, 55, 28.25832 + 17, 76, 91, 95, 77, 72, 72, 71, 83, 87, 77, 56, 25, 61, 92, 72, 28.25833 + 65, 69, 72, 72, 68, 73, 77, 55, 13, 61, 59, 100, 95, 97, 99, 100, 28.25834 + 65, 75, 72, 75, 44, 14, 60, 37, 32, 25, 36, 30, 40, 21, 20, 10, 28.25835 + 46, 88, 84, 85, 100, 76, 79, 75, 65, 71, 51, 30, 59, 85, 65, 61, 28.25836 + 64, 85, 67, 83, 73, 67, 60, 32, 73, 76, 73, 75, 77, 71, 68, 64, 28.25837 + 52, 63, 57, 36, 34, 51, 63, 56, 44, 40, 40, 52, 46, 44, 42, 37, 28.25838 + 33, 65, 81, 51, 24, 6, 8, 20, 18, 8, 9, 17, 16, 21, 36, 42, 28.25839 + 41, 34, 33, 32, 30, 32, 34, 33, 29, 37, 36, 49, 37, 40, 30, 32, 28.25840 + 34, 34, 29, 33, 45, 67, 79, 53, 34, 30, 29, 32, 26, 22, 22, 26, 28.25841 + 29, 26, 26, 29, 25, 17, 38, 34, 38, 33, 20, 28, 30, 38, 38, 30, 28.25842 + 18, 12, 157, 158, 116, 142, 157, 189, 222, 228, 229, 169, 140, 132, 135, 140, 28.25843 + 146, 138, 119, 158, 169, 166, 159, 151, 139, 107, 38, 28, 25, 36, 48, 69, 28.25844 + 73, 76, 73, 36, 138, 142, 143, 148, 143, 138, 134, 136, 130, 124, 115, 165, 28.25845 + 195, 198, 182, 123, 91, 64, 57, 63, 89, 102, 97, 72, 127, 169, 163, 144, 28.25846 + 161, 153, 140, 221, 199, 210, 111, 104, 112, 127, 140, 139, 143, 142, 134, 123, 28.25847 + 130, 128, 119, 122, 36, 30, 29, 79, 87, 83, 87, 87, 76, 110, 103, 111, 28.25848 + 122, 130, 122, 122, 126, 122, 120, 127, 140, 134, 122, 116, 57, 135, 134, 115, 28.25849 + 110, 114, 116, 111, 103, 104, 114, 45, 126, 142, 143, 132, 127, 124, 112, 130, 28.25850 + 126, 123, 83, 111, 135, 148, 118, 122, 114, 114, 110, 95, 79, 67, 96, 84, 28.25851 + 93, 93, 95, 97, 85, 87, 88, 88, 89, 81, 73, 55, 93, 93, 97, 91, 28.25852 + 77, 79, 84, 85, 73, 72, 88, 87, 126, 138, 132, 112, 128, 132, 136, 120, 28.25853 + 118, 136, 128, 118, 84, 96, 148, 139, 110, 130, 131, 131, 128, 107, 72, 76, 28.25854 + 119, 124, 108, 108, 111, 122, 123, 110, 107, 108, 104, 102, 92, 107, 108, 108, 28.25855 + 95, 104, 88, 107, 100, 110, 91, 38, 119, 112, 112, 112, 112, 111, 110, 112, 28.25856 + 107, 108, 89, 104, 61, 72, 76, 83, 79, 83, 83, 84, 83, 93, 77, 5, 28.25857 + 51, 124, 119, 68, 91, 110, 115, 107, 99, 112, 104, 83, 59, 81, 103, 213, 28.25858 + 229, 220, 107, 104, 128, 143, 148, 147, 154, 167, 169, 161, 135, 153, 155, 154, 28.25859 + 144, 136, 122, 25, 20, 20, 34, 59, 65, 71, 73, 71, 75, 80, 79, 63, 28.25860 + 73, 95, 103, 102, 100, 99, 102, 103, 103, 97, 96, 61, 12, 80, 93, 96, 28.25861 + 85, 88, 76, 77, 77, 77, 32, 49, 68, 87, 108, 79, 48, 41, 30, 29, 28.25862 + 32, 30, 30, 29, 33, 30, 25, 25, 32, 63, 65, 65, 55, 71, 40, 91, 28.25863 + 103, 119, 102, 189, 214, 212, 102, 96, 112, 124, 136, 140, 153, 165, 159, 140, 28.25864 + 128, 51, 36, 37, 22, 44, 42, 34, 42, 64, 72, 71, 79, 76, 85, 76, 28.25865 + 75, 65, 52, 118, 107, 111, 110, 103, 103, 97, 100, 106, 102, 85, 72, 83, 28.25866 + 103, 112, 107, 103, 107, 102, 96, 75, 67, 69, 53, 20, 64, 75, 85, 95, 28.25867 + 102, 85, 92, 83, 72, 53, 59, 24, 64, 84, 89, 80, 79, 77, 75, 65, 28.25868 + 71, 65, 56, 12, 51, 41, 44, 55, 64, 67, 49, 53, 65, 42, 49, 41, 28.25869 + 14, 60, 37, 42, 40, 40, 30, 28, 28, 20, 16, 45, 48, 45, 48, 38, 28.25870 + 57, 68, 71, 71, 61, 46, 36, 36, 67, 59, 68, 55, 61, 60, 65, 59, 28.25871 + 53, 61, 17, 60, 72, 69, 53, 59, 61, 61, 53, 53, 56, 52, 44, 49, 28.25872 + 51, 48, 44, 44, 44, 42, 48, 42, 40, 38, 37, 6, 60, 5, 28, 4, 28.25873 + 25, 6, 9, 24, 22, 9, 13, 18, 20, 20, 20, 21, 21, 21, 22, 24, 28.25874 + 24, 22, 28, 21, 26, 29, 26, 32, 28, 24, 24, 26, 28, 28, 25, 37, 28.25875 + 49, 32, 46, 28, 29, 65, 71, 65, 34, 55, 52, 26, 25, 21, 22, 26, 28.25876 + 24, 25, 20, 17, 14, 16, 20, 41, 18, 17, 56, 60, 71, 104, 106, 111, 28.25877 + 146, 150, 201, 230, 179, 171, 151, 124, 148, 143, 140, 143, 132, 131, 165, 169, 28.25878 + 165, 158, 150, 134, 93, 33, 26, 26, 40, 52, 71, 76, 72, 72, 21, 134, 28.25879 + 136, 136, 136, 108, 119, 126, 118, 132, 130, 116, 175, 202, 195, 182, 119, 89, 28.25880 + 65, 59, 63, 92, 97, 108, 97, 95, 132, 161, 148, 147, 144, 140, 221, 210, 28.25881 + 214, 112, 104, 110, 126, 126, 126, 127, 126, 131, 134, 132, 131, 124, 123, 34, 28.25882 + 29, 30, 69, 76, 81, 89, 91, 87, 96, 91, 97, 110, 110, 99, 106, 107, 28.25883 + 110, 112, 112, 115, 120, 118, 118, 112, 119, 115, 112, 111, 108, 106, 104, 97, 28.25884 + 106, 93, 51, 119, 147, 120, 112, 106, 107, 110, 104, 102, 103, 87, 102, 103, 28.25885 + 99, 99, 93, 89, 84, 85, 81, 77, 65, 53, 32, 33, 30, 30, 29, 26, 28.25886 + 25, 25, 22, 25, 21, 21, 22, 22, 29, 34, 33, 29, 32, 42, 61, 56, 28.25887 + 60, 57, 76, 107, 102, 122, 130, 118, 108, 122, 124, 123, 120, 120, 106, 95, 28.25888 + 107, 96, 91, 77, 64, 63, 63, 73, 63, 51, 69, 73, 81, 80, 79, 107, 28.25889 + 110, 108, 88, 85, 69, 64, 75, 83, 95, 97, 96, 79, 69, 72, 92, 100, 28.25890 + 99, 88, 37, 69, 77, 68, 79, 79, 80, 80, 84, 84, 87, 89, 89, 87, 28.25891 + 93, 67, 67, 57, 40, 29, 26, 36, 42, 33, 0, 26, 26, 38, 34, 40, 28.25892 + 44, 52, 55, 65, 77, 104, 88, 79, 73, 114, 212, 230, 220, 106, 103, 110, 28.25893 + 119, 135, 146, 157, 154, 159, 154, 138, 155, 155, 153, 143, 131, 119, 24, 20, 28.25894 + 18, 26, 36, 52, 51, 60, 65, 68, 71, 67, 67, 83, 85, 88, 85, 88, 28.25895 + 87, 89, 88, 93, 93, 87, 63, 16, 88, 92, 72, 63, 63, 57, 48, 68, 28.25896 + 64, 36, 32, 33, 53, 41, 37, 32, 34, 28, 29, 37, 36, 28, 28, 28, 28.25897 + 29, 38, 40, 40, 41, 44, 44, 45, 71, 36, 53, 56, 68, 104, 178, 217, 28.25898 + 208, 104, 100, 111, 120, 134, 144, 153, 167, 158, 139, 126, 52, 40, 16, 30, 28.25899 + 32, 36, 34, 41, 40, 41, 38, 40, 41, 44, 41, 40, 51, 34, 48, 91, 28.25900 + 91, 79, 77, 87, 89, 80, 77, 80, 77, 73, 77, 76, 77, 79, 85, 73, 28.25901 + 75, 64, 57, 46, 56, 51, 52, 56, 53, 32, 59, 59, 46, 63, 46, 41, 28.25902 + 60, 52, 52, 55, 56, 53, 51, 51, 45, 46, 41, 55, 38, 34, 6, 16, 28.25903 + 14, 24, 24, 21, 22, 29, 26, 28, 36, 51, 33, 22, 33, 32, 24, 26, 28.25904 + 29, 29, 28, 48, 33, 37, 29, 34, 40, 37, 33, 33, 41, 48, 45, 42, 28.25905 + 42, 45, 42, 44, 45, 46, 44, 44, 42, 44, 44, 42, 37, 18, 29, 45, 28.25906 + 32, 33, 33, 45, 32, 33, 34, 40, 38, 32, 30, 37, 34, 33, 32, 30, 28.25907 + 30, 30, 30, 29, 28, 26, 2, 37, 34, 34, 32, 46, 42, 41, 42, 46, 28.25908 + 48, 51, 51, 59, 64, 68, 72, 83, 107, 128, 150, 163, 171, 228, 226, 222, 28.25909 + 209, 202, 205, 199, 204, 191, 187, 178, 162, 80, 36, 32, 29, 29, 22, 73, 28.25910 + 65, 155, 185, 165, 161, 159, 100, 83, 83, 61, 51, 48, 57, 87, 111, 144, 28.25911 + 162, 154, 116, 76, 45, 16, 9, 9, 142, 139, 140, 161, 159, 205, 140, 147, 28.25912 + 130, 124, 127, 135, 132, 143, 148, 140, 139, 169, 170, 162, 154, 140, 128, 55, 28.25913 + 29, 25, 30, 45, 56, 40, 67, 67, 55, 29, 77, 95, 88, 91, 91, 93, 28.25914 + 93, 99, 140, 119, 91, 166, 193, 198, 182, 118, 83, 63, 59, 68, 91, 91, 28.25915 + 95, 96, 102, 108, 106, 112, 114, 150, 118, 225, 218, 218, 111, 102, 108, 123, 28.25916 + 116, 116, 115, 116, 119, 131, 131, 134, 124, 120, 29, 24, 25, 42, 38, 42, 28.25917 + 45, 48, 38, 40, 46, 53, 60, 77, 73, 80, 84, 85, 83, 89, 93, 97, 28.25918 + 102, 96, 87, 100, 106, 99, 104, 110, 116, 146, 132, 92, 99, 110, 108, 95, 28.25919 + 92, 87, 80, 79, 72, 72, 63, 56, 56, 57, 49, 64, 59, 57, 56, 63, 28.25920 + 56, 61, 56, 89, 112, 146, 150, 144, 155, 147, 153, 146, 158, 157, 136, 110, 28.25921 + 111, 107, 116, 136, 136, 120, 110, 93, 73, 60, 51, 42, 29, 29, 25, 25, 28.25922 + 21, 21, 22, 24, 20, 24, 26, 26, 25, 24, 29, 37, 107, 114, 120, 126, 28.25923 + 132, 128, 96, 106, 57, 134, 130, 143, 116, 68, 64, 84, 60, 63, 111, 118, 28.25924 + 124, 114, 115, 123, 128, 123, 112, 103, 92, 84, 60, 59, 84, 40, 22, 21, 28.25925 + 21, 22, 16, 16, 17, 20, 13, 14, 16, 16, 16, 18, 52, 60, 91, 107, 28.25926 + 103, 106, 97, 65, 61, 0, 84, 124, 114, 80, 115, 81, 92, 89, 68, 57, 28.25927 + 55, 63, 60, 63, 106, 201, 216, 208, 95, 92, 103, 104, 99, 112, 130, 147, 28.25928 + 154, 159, 132, 148, 158, 154, 140, 134, 118, 20, 17, 17, 14, 14, 14, 16, 28.25929 + 16, 14, 17, 28, 25, 17, 21, 42, 59, 41, 44, 25, 30, 28, 49, 33, 28.25930 + 71, 24, 16, 92, 48, 38, 37, 37, 33, 40, 32, 26, 29, 26, 28, 29, 28.25931 + 28, 34, 30, 24, 24, 26, 25, 26, 28, 26, 28, 26, 28, 30, 32, 36, 28.25932 + 46, 53, 56, 73, 34, 83, 104, 104, 103, 177, 202, 193, 107, 100, 112, 124, 28.25933 + 132, 142, 155, 166, 159, 136, 111, 46, 42, 14, 24, 17, 22, 6, 6, 6, 28.25934 + 4, 5, 5, 4, 4, 2, 2, 2, 2, 4, 5, 5, 5, 8, 9, 9, 28.25935 + 10, 13, 14, 16, 16, 21, 21, 26, 28, 29, 33, 36, 36, 45, 68, 73, 28.25936 + 64, 57, 63, 49, 49, 52, 48, 44, 48, 49, 55, 71, 76, 85, 77, 72, 28.25937 + 69, 67, 71, 76, 68, 63, 49, 52, 56, 26, 38, 88, 96, 69, 60, 65, 28.25938 + 40, 29, 22, 24, 20, 24, 18, 25, 37, 36, 29, 34, 34, 30, 25, 33, 28.25939 + 38, 42, 55, 46, 48, 42, 45, 40, 36, 28, 24, 21, 22, 18, 20, 18, 28.25940 + 18, 17, 20, 18, 20, 17, 21, 21, 51, 20, 16, 14, 14, 12, 10, 10, 28.25941 + 9, 8, 6, 5, 4, 5, 4, 1, 1, 0, 18, 1, 0, 0, 1, 1, 28.25942 + 8, 44, 40, 56, 60, 85, 108, 146, 150, 165, 174, 165, 151, 140, 132, 120, 28.25943 + 122, 131, 118, 108, 118, 124, 139, 155, 165, 177, 186, 185, 182, 178, 179, 175, 28.25944 + 174, 169, 159, 147, 150, 139, 28, 22, 18, 72, 40, 132, 189, 194, 197, 194, 28.25945 + 191, 198, 190, 187, 195, 201, 190, 197, 197, 204, 201, 189, 197, 195, 138, 59, 28.25946 + 51, 13, 10, 173, 173, 178, 170, 199, 169, 173, 163, 140, 151, 103, 103, 108, 28.25947 + 111, 111, 132, 140, 167, 167, 163, 150, 139, 124, 52, 29, 26, 41, 46, 63, 28.25948 + 64, 73, 60, 67, 67, 71, 87, 96, 99, 112, 119, 130, 120, 110, 135, 103, 28.25949 + 161, 193, 197, 147, 120, 83, 64, 59, 81, 87, 85, 76, 81, 93, 99, 99, 28.25950 + 110, 130, 147, 147, 221, 218, 218, 110, 100, 108, 115, 112, 122, 128, 131, 132, 28.25951 + 130, 132, 140, 126, 126, 33, 26, 26, 41, 55, 75, 77, 84, 99, 175, 185, 28.25952 + 193, 198, 198, 193, 201, 208, 210, 205, 202, 195, 191, 197, 197, 194, 189, 190, 28.25953 + 185, 182, 178, 183, 178, 183, 142, 120, 80, 88, 91, 119, 157, 178, 194, 191, 28.25954 + 182, 177, 169, 167, 174, 167, 161, 142, 134, 140, 143, 136, 148, 161, 130, 163, 28.25955 + 178, 190, 195, 199, 198, 193, 193, 189, 169, 148, 130, 150, 147, 140, 151, 150, 28.25956 + 155, 146, 154, 140, 139, 124, 97, 75, 45, 112, 135, 128, 124, 124, 130, 128, 28.25957 + 135, 130, 130, 122, 120, 122, 120, 116, 135, 134, 134, 140, 132, 115, 115, 53, 28.25958 + 138, 151, 122, 119, 150, 148, 144, 132, 116, 140, 163, 174, 179, 171, 175, 175, 28.25959 + 171, 165, 154, 131, 118, 112, 92, 85, 38, 52, 131, 140, 116, 119, 110, 132, 28.25960 + 118, 122, 115, 110, 103, 112, 128, 120, 112, 110, 122, 106, 108, 122, 93, 65, 28.25961 + 2, 110, 128, 136, 142, 104, 138, 135, 115, 119, 96, 80, 77, 99, 104, 108, 28.25962 + 220, 229, 222, 107, 103, 114, 111, 111, 111, 114, 114, 119, 118, 139, 157, 159, 28.25963 + 151, 139, 130, 111, 22, 20, 18, 37, 48, 48, 53, 51, 52, 51, 59, 51, 28.25964 + 30, 56, 107, 104, 89, 93, 95, 61, 38, 36, 40, 42, 46, 33, 61, 80, 28.25965 + 88, 88, 95, 103, 100, 87, 79, 87, 102, 110, 97, 89, 81, 83, 73, 75, 28.25966 + 44, 44, 40, 34, 37, 45, 55, 53, 53, 59, 73, 77, 72, 76, 77, 32, 28.25967 + 103, 103, 111, 108, 187, 213, 179, 106, 102, 111, 126, 134, 146, 154, 169, 161, 28.25968 + 159, 130, 55, 44, 12, 12, 21, 22, 41, 83, 87, 91, 92, 92, 99, 97, 28.25969 + 96, 93, 57, 36, 84, 106, 118, 111, 108, 111, 119, 115, 108, 104, 108, 104, 28.25970 + 116, 134, 123, 122, 119, 103, 95, 99, 110, 169, 179, 190, 175, 154, 115, 81, 28.25971 + 72, 71, 77, 87, 124, 143, 162, 146, 150, 144, 136, 144, 123, 120, 115, 110, 28.25972 + 77, 57, 55, 44, 20, 85, 102, 124, 127, 102, 106, 79, 72, 76, 80, 67, 28.25973 + 64, 85, 134, 144, 154, 155, 155, 157, 157, 150, 157, 165, 181, 187, 185, 170, 28.25974 + 155, 110, 91, 51, 49, 44, 44, 32, 12, 32, 77, 92, 68, 77, 75, 69, 28.25975 + 64, 52, 41, 18, 34, 83, 95, 84, 84, 97, 96, 81, 110, 110, 110, 80, 28.25976 + 85, 120, 128, 157, 157, 153, 158, 147, 140, 132, 84, 48, 45, 67, 120, 158, 28.25977 + 170, 183, 194, 193, 193, 198, 201, 190, 179, 189, 175, 161, 159, 161, 148, 142, 28.25978 + 143, 143, 138, 140, 135, 148, 147, 153, 179, 179, 162, 150, 159, 146, 139, 134, 28.25979 + 150, 136, 114, 119, 102, 53, 167, 212, 202, 220, 179, 218, 174, 214, 204, 224, 28.25980 + 206, 212, 195, 205, 202, 201, 195, 202, 198, 147, 67, 68, 63, 64, 182, 189, 28.25981 + 171, 183, 210, 197, 238, 198, 135, 104, 108, 124, 128, 136, 123, 132, 148, 170, 28.25982 + 167, 153, 144, 139, 126, 49, 29, 26, 67, 65, 83, 97, 106, 110, 108, 132, 28.25983 + 147, 154, 157, 162, 162, 165, 163, 166, 144, 135, 91, 127, 169, 195, 136, 108, 28.25984 + 72, 68, 67, 84, 107, 107, 103, 96, 91, 134, 155, 155, 157, 153, 142, 226, 28.25985 + 221, 220, 108, 100, 110, 116, 131, 136, 135, 136, 135, 134, 130, 138, 124, 124, 28.25986 + 33, 25, 26, 57, 80, 95, 151, 110, 170, 191, 201, 210, 208, 210, 212, 220, 28.25987 + 222, 222, 222, 230, 232, 232, 233, 234, 234, 230, 236, 225, 233, 237, 237, 229, 28.25988 + 225, 225, 220, 224, 224, 216, 216, 218, 216, 221, 216, 214, 205, 204, 201, 204, 28.25989 + 199, 195, 187, 174, 174, 134, 132, 157, 174, 181, 193, 202, 210, 212, 209, 213, 28.25990 + 210, 210, 208, 204, 199, 186, 151, 139, 130, 122, 139, 139, 143, 148, 148, 148, 28.25991 + 146, 118, 92, 46, 142, 134, 147, 140, 143, 142, 130, 128, 130, 136, 135, 115, 28.25992 + 93, 140, 151, 157, 153, 147, 138, 130, 136, 112, 56, 147, 148, 146, 124, 154, 28.25993 + 120, 131, 147, 159, 193, 213, 222, 221, 220, 218, 214, 210, 206, 195, 193, 181, 28.25994 + 171, 116, 85, 46, 131, 139, 123, 120, 130, 134, 138, 118, 115, 130, 132, 123, 28.25995 + 99, 126, 126, 126, 126, 123, 123, 123, 116, 110, 76, 0, 99, 124, 132, 127, 28.25996 + 100, 104, 124, 123, 102, 112, 116, 65, 102, 126, 110, 228, 236, 222, 106, 97, 28.25997 + 108, 124, 131, 136, 140, 139, 138, 138, 143, 159, 155, 147, 139, 131, 118, 20, 28.25998 + 20, 20, 46, 48, 60, 76, 71, 72, 64, 61, 55, 40, 91, 118, 124, 122, 28.25999 + 124, 118, 108, 99, 111, 104, 88, 93, 103, 110, 100, 104, 100, 107, 116, 118, 28.26000 + 96, 106, 102, 123, 140, 135, 128, 143, 142, 140, 100, 88, 84, 75, 72, 65, 28.26001 + 72, 67, 57, 45, 61, 65, 59, 57, 59, 77, 40, 102, 111, 111, 108, 210, 28.26002 + 217, 187, 102, 99, 108, 124, 135, 143, 155, 167, 161, 143, 135, 55, 56, 61, 28.26003 + 64, 65, 92, 88, 99, 102, 103, 102, 107, 89, 93, 93, 92, 95, 42, 112, 28.26004 + 108, 111, 122, 116, 143, 159, 171, 174, 179, 179, 181, 189, 194, 191, 186, 187, 28.26005 + 185, 185, 183, 186, 193, 194, 195, 193, 186, 177, 177, 153, 146, 159, 146, 158, 28.26006 + 181, 186, 199, 195, 190, 189, 187, 174, 175, 182, 177, 155, 80, 51, 55, 26, 28.26007 + 97, 118, 106, 123, 128, 110, 124, 120, 97, 118, 130, 165, 165, 182, 186, 193, 28.26008 + 186, 189, 187, 190, 194, 194, 199, 206, 206, 208, 205, 205, 198, 179, 159, 110, 28.26009 + 69, 59, 30, 9, 84, 93, 80, 89, 95, 80, 89, 79, 67, 33, 21, 93, 28.26010 + 170, 181, 185, 178, 182, 189, 198, 206, 202, 197, 199, 195, 197, 194, 195, 179, 28.26011 + 193, 193, 185, 148, 171, 140, 65, 46, 96, 153, 178, 186, 194, 195, 201, 205, 28.26012 + 204, 205, 202, 179, 204, 198, 161, 110, 104, 151, 170, 167, 165, 150, 157, 153, 28.26013 + 142, 122, 120, 106, 116, 112, 107, 146, 150, 97, 150, 158, 118, 112, 110, 59, 28.26014 + 41, 93, 157, 187, 144, 126, 97, 102, 110, 110, 138, 179, 185, 185, 193, 173, 28.26015 + 178, 189, 193, 112, 79, 67, 88, 103, 115, 163, 162, 173, 189, 187, 204, 242, 28.26016 + 216, 138, 104, 122, 131, 139, 151, 158, 162, 166, 163, 154, 153, 143, 139, 126, 28.26017 + 46, 28, 29, 63, 80, 91, 124, 115, 134, 142, 131, 136, 140, 159, 163, 157, 28.26018 + 166, 161, 159, 155, 140, 130, 116, 124, 181, 127, 96, 77, 69, 65, 99, 104, 28.26019 + 99, 95, 75, 124, 162, 159, 157, 153, 153, 148, 233, 224, 218, 103, 99, 115, 28.26020 + 122, 136, 132, 138, 140, 138, 132, 130, 135, 124, 123, 33, 25, 26, 57, 77, 28.26021 + 144, 95, 104, 119, 135, 189, 197, 202, 212, 213, 216, 218, 221, 225, 226, 226, 28.26022 + 232, 233, 234, 234, 233, 236, 229, 236, 237, 236, 232, 225, 218, 213, 216, 217, 28.26023 + 222, 224, 221, 218, 220, 214, 199, 202, 189, 181, 198, 186, 187, 143, 122, 150, 28.26024 + 163, 171, 186, 201, 202, 197, 191, 204, 209, 209, 213, 213, 212, 210, 208, 205, 28.26025 + 202, 197, 185, 167, 138, 120, 118, 139, 135, 135, 140, 136, 135, 100, 61, 146, 28.26026 + 143, 146, 139, 139, 131, 128, 130, 130, 128, 127, 92, 111, 153, 140, 127, 151, 28.26027 + 153, 147, 119, 111, 108, 56, 153, 147, 157, 148, 155, 158, 150, 169, 214, 225, 28.26028 + 234, 232, 222, 216, 206, 194, 171, 159, 136, 116, 99, 92, 159, 102, 60, 142, 28.26029 + 134, 139, 144, 140, 138, 134, 126, 134, 127, 115, 87, 123, 135, 131, 118, 118, 28.26030 + 126, 120, 114, 123, 89, 71, 0, 104, 95, 103, 119, 124, 123, 131, 139, 134, 28.26031 + 120, 116, 72, 99, 124, 110, 233, 237, 233, 108, 100, 111, 132, 140, 148, 154, 28.26032 + 155, 154, 157, 153, 151, 144, 143, 142, 135, 124, 21, 20, 21, 45, 65, 64, 28.26033 + 61, 71, 71, 73, 64, 63, 42, 99, 124, 130, 127, 123, 128, 115, 116, 120, 28.26034 + 130, 119, 100, 88, 108, 150, 179, 185, 194, 201, 210, 212, 205, 209, 216, 220, 28.26035 + 218, 218, 226, 226, 217, 210, 214, 194, 201, 199, 204, 195, 169, 85, 46, 41, 28.26036 + 57, 55, 60, 55, 77, 42, 91, 102, 112, 120, 217, 224, 213, 97, 95, 108, 28.26037 + 123, 135, 144, 154, 166, 167, 159, 171, 97, 88, 84, 85, 88, 92, 93, 111, 28.26038 + 115, 120, 103, 106, 102, 115, 102, 97, 93, 93, 75, 108, 102, 93, 118, 177, 28.26039 + 187, 187, 173, 182, 194, 189, 197, 185, 182, 198, 185, 198, 199, 190, 186, 185, 28.26040 + 178, 181, 182, 187, 195, 185, 178, 139, 144, 182, 197, 197, 195, 189, 201, 189, 28.26041 + 174, 140, 143, 127, 119, 127, 115, 91, 42, 52, 28, 83, 91, 111, 96, 100, 28.26042 + 118, 97, 92, 115, 151, 158, 178, 182, 181, 178, 170, 178, 183, 190, 183, 182, 28.26043 + 178, 171, 175, 179, 185, 195, 201, 202, 202, 201, 191, 128, 60, 38, 9, 92, 28.26044 + 92, 81, 77, 73, 68, 73, 88, 80, 46, 30, 122, 178, 181, 174, 190, 204, 28.26045 + 204, 204, 205, 204, 208, 199, 189, 183, 187, 179, 174, 167, 151, 158, 150, 146, 28.26046 + 123, 73, 55, 119, 155, 177, 185, 190, 197, 208, 208, 170, 169, 151, 140, 142, 28.26047 + 138, 116, 73, 77, 99, 167, 171, 154, 144, 134, 134, 130, 128, 126, 120, 126, 28.26048 + 127, 134, 134, 142, 143, 144, 146, 107, 99, 102, 114, 53, 61, 75, 83, 79, 28.26049 + 77, 75, 73, 75, 79, 77, 79, 80, 84, 88, 91, 92, 85, 81, 76, 63, 28.26050 + 89, 22, 18, 13, 155, 155, 177, 182, 202, 208, 201, 205, 144, 110, 115, 138, 28.26051 + 161, 162, 162, 166, 166, 161, 155, 148, 142, 139, 127, 45, 28, 29, 67, 88, 28.26052 + 97, 126, 130, 136, 110, 154, 159, 154, 155, 163, 154, 166, 166, 165, 157, 142, 28.26053 + 123, 75, 116, 178, 131, 99, 73, 68, 71, 102, 111, 96, 97, 85, 146, 166, 28.26054 + 158, 153, 150, 148, 148, 238, 228, 221, 110, 100, 115, 124, 134, 135, 143, 140, 28.26055 + 134, 127, 126, 131, 124, 120, 32, 24, 26, 57, 83, 104, 110, 108, 161, 158, 28.26056 + 175, 177, 142, 165, 146, 148, 146, 142, 138, 136, 134, 132, 130, 130, 126, 123, 28.26057 + 123, 128, 123, 119, 118, 119, 112, 110, 112, 115, 169, 186, 220, 193, 185, 181, 28.26058 + 166, 144, 120, 115, 118, 120, 127, 120, 123, 144, 140, 174, 198, 199, 201, 206, 28.26059 + 189, 173, 175, 171, 162, 153, 143, 146, 144, 148, 148, 171, 186, 187, 194, 143, 28.26060 + 126, 107, 120, 130, 102, 124, 131, 135, 107, 59, 118, 142, 151, 135, 130, 134, 28.26061 + 139, 128, 122, 116, 131, 83, 106, 154, 153, 131, 135, 144, 122, 122, 116, 108, 28.26062 + 65, 155, 155, 142, 155, 155, 159, 165, 218, 234, 240, 230, 221, 197, 148, 124, 28.26063 + 110, 106, 99, 96, 85, 69, 72, 93, 93, 38, 93, 132, 128, 132, 124, 119, 28.26064 + 114, 119, 115, 131, 119, 67, 116, 130, 126, 118, 126, 120, 119, 112, 123, 93, 28.26065 + 64, 0, 102, 104, 124, 122, 120, 110, 114, 122, 120, 126, 88, 53, 103, 134, 28.26066 + 99, 232, 238, 234, 111, 103, 111, 138, 144, 153, 151, 159, 159, 165, 159, 161, 28.26067 + 155, 146, 140, 136, 124, 18, 17, 18, 44, 69, 67, 63, 68, 71, 89, 64, 28.26068 + 63, 33, 92, 120, 120, 122, 128, 126, 122, 126, 114, 111, 97, 63, 111, 126, 28.26069 + 115, 173, 195, 204, 210, 212, 216, 217, 221, 222, 226, 226, 232, 232, 228, 228, 28.26070 + 225, 222, 225, 224, 221, 218, 214, 190, 96, 52, 48, 56, 65, 53, 63, 76, 28.26071 + 41, 67, 93, 111, 107, 226, 230, 222, 102, 93, 108, 122, 134, 144, 154, 166, 28.26072 + 170, 166, 139, 173, 130, 135, 185, 198, 202, 204, 204, 205, 204, 201, 199, 202, 28.26073 + 199, 193, 185, 128, 92, 95, 96, 65, 111, 120, 122, 187, 198, 179, 195, 198, 28.26074 + 198, 173, 157, 135, 147, 166, 185, 185, 182, 165, 167, 146, 158, 157, 154, 151, 28.26075 + 148, 134, 122, 167, 197, 201, 199, 193, 189, 162, 144, 118, 111, 111, 106, 107, 28.26076 + 106, 115, 52, 44, 48, 26, 91, 95, 112, 120, 92, 102, 114, 85, 115, 147, 28.26077 + 165, 186, 191, 169, 157, 134, 132, 132, 139, 134, 134, 126, 123, 120, 127, 128, 28.26078 + 146, 154, 155, 167, 177, 190, 173, 88, 49, 14, 59, 97, 81, 72, 75, 72, 28.26079 + 79, 79, 84, 48, 26, 115, 165, 186, 197, 199, 230, 194, 201, 201, 199, 193, 28.26080 + 181, 175, 189, 181, 171, 167, 102, 88, 84, 79, 87, 79, 75, 64, 115, 162, 28.26081 + 177, 190, 205, 175, 166, 147, 123, 130, 120, 118, 122, 114, 119, 69, 60, 88, 28.26082 + 107, 167, 165, 144, 158, 132, 128, 116, 132, 130, 134, 134, 134, 134, 139, 140, 28.26083 + 143, 134, 103, 91, 95, 111, 61, 65, 67, 69, 65, 72, 80, 83, 79, 72, 28.26084 + 77, 69, 81, 75, 77, 76, 77, 75, 71, 91, 79, 16, 12, 12, 46, 144, 28.26085 + 147, 167, 175, 199, 212, 240, 199, 131, 106, 127, 144, 158, 165, 161, 163, 162, 28.26086 + 163, 155, 153, 144, 139, 122, 41, 26, 29, 65, 83, 108, 122, 130, 143, 119, 28.26087 + 151, 158, 148, 158, 150, 158, 150, 171, 163, 148, 136, 132, 77, 108, 175, 135, 28.26088 + 124, 92, 76, 71, 99, 99, 95, 79, 68, 154, 167, 158, 157, 153, 148, 147, 28.26089 + 238, 228, 222, 108, 102, 114, 126, 131, 138, 138, 130, 126, 124, 127, 126, 123, 28.26090 + 116, 30, 24, 24, 56, 72, 85, 108, 95, 126, 151, 151, 126, 148, 130, 119, 28.26091 + 119, 119, 119, 108, 114, 115, 114, 107, 107, 106, 107, 104, 104, 100, 103, 99, 28.26092 + 99, 99, 97, 97, 97, 106, 108, 110, 107, 106, 104, 106, 106, 96, 97, 100, 28.26093 + 104, 106, 110, 112, 144, 136, 190, 197, 208, 206, 189, 158, 132, 118, 111, 114, 28.26094 + 108, 106, 110, 112, 111, 114, 116, 132, 136, 163, 169, 126, 104, 127, 123, 132, 28.26095 + 134, 128, 130, 104, 61, 136, 150, 147, 139, 142, 134, 154, 127, 118, 114, 127, 28.26096 + 79, 114, 155, 150, 134, 120, 122, 114, 119, 116, 103, 63, 146, 157, 147, 166, 28.26097 + 161, 166, 216, 232, 242, 240, 222, 169, 103, 92, 83, 85, 85, 84, 77, 73, 28.26098 + 61, 57, 72, 91, 63, 99, 124, 132, 122, 116, 114, 112, 111, 116, 122, 111, 28.26099 + 81, 118, 134, 119, 119, 128, 127, 115, 118, 124, 108, 63, 5, 100, 115, 126, 28.26100 + 116, 130, 138, 131, 127, 126, 118, 85, 51, 96, 116, 96, 237, 242, 236, 111, 28.26101 + 103, 111, 138, 148, 157, 155, 163, 169, 171, 167, 162, 157, 147, 142, 134, 120, 28.26102 + 16, 18, 21, 42, 65, 61, 67, 67, 79, 77, 68, 59, 45, 87, 120, 122, 28.26103 + 110, 119, 128, 120, 123, 108, 96, 89, 64, 107, 122, 138, 124, 146, 166, 201, 28.26104 + 213, 210, 214, 220, 226, 226, 229, 216, 236, 234, 232, 218, 230, 234, 229, 206, 28.26105 + 234, 234, 190, 95, 46, 37, 65, 68, 55, 65, 73, 53, 52, 97, 110, 106, 28.26106 + 229, 234, 228, 103, 95, 108, 119, 132, 147, 153, 165, 171, 171, 163, 178, 183, 28.26107 + 190, 197, 204, 204, 205, 204, 204, 201, 202, 198, 199, 197, 193, 190, 187, 178, 28.26108 + 123, 104, 100, 99, 75, 93, 112, 130, 116, 111, 115, 103, 100, 97, 95, 102, 28.26109 + 100, 107, 107, 106, 104, 104, 103, 102, 104, 110, 110, 108, 136, 124, 165, 199, 28.26110 + 198, 190, 191, 142, 119, 112, 111, 110, 115, 114, 116, 123, 93, 42, 36, 37, 28.26111 + 20, 89, 97, 107, 111, 110, 96, 118, 119, 124, 167, 166, 153, 165, 153, 115, 28.26112 + 99, 96, 97, 99, 100, 100, 99, 99, 102, 104, 106, 110, 111, 116, 120, 126, 28.26113 + 135, 174, 128, 63, 14, 68, 95, 80, 79, 77, 73, 71, 68, 84, 49, 29, 28.26114 + 51, 87, 148, 166, 161, 151, 139, 116, 108, 102, 87, 80, 85, 80, 83, 80, 28.26115 + 73, 69, 71, 67, 67, 67, 63, 79, 69, 118, 166, 177, 178, 170, 131, 126, 28.26116 + 104, 110, 123, 124, 131, 123, 130, 114, 67, 68, 67, 72, 106, 190, 163, 154, 28.26117 + 147, 140, 136, 135, 136, 138, 134, 134, 138, 138, 132, 119, 135, 95, 37, 88, 28.26118 + 88, 89, 93, 96, 59, 68, 99, 128, 112, 114, 102, 99, 88, 91, 88, 83, 28.26119 + 96, 81, 81, 96, 85, 25, 10, 9, 16, 21, 138, 139, 142, 165, 195, 213, 28.26120 + 244, 185, 130, 110, 128, 153, 162, 165, 165, 169, 173, 165, 158, 151, 144, 136, 28.26121 + 123, 41, 26, 32, 68, 76, 102, 104, 119, 130, 108, 148, 155, 143, 170, 150, 28.26122 + 148, 163, 147, 146, 130, 132, 128, 87, 119, 169, 171, 138, 119, 96, 95, 96, 28.26123 + 97, 91, 79, 107, 151, 165, 159, 155, 148, 143, 140, 242, 232, 230, 103, 100, 28.26124 + 114, 123, 131, 138, 128, 127, 124, 136, 135, 132, 127, 122, 30, 22, 24, 55, 28.26125 + 67, 84, 122, 115, 88, 119, 148, 134, 134, 138, 126, 124, 112, 122, 124, 118, 28.26126 + 115, 111, 115, 115, 115, 115, 114, 111, 112, 114, 112, 114, 118, 119, 115, 112, 28.26127 + 99, 99, 97, 97, 97, 99, 97, 102, 108, 112, 116, 119, 122, 122, 120, 146, 28.26128 + 131, 157, 201, 186, 163, 142, 114, 122, 122, 119, 119, 119, 120, 120, 120, 118, 28.26129 + 116, 115, 110, 110, 115, 138, 128, 103, 123, 123, 127, 130, 130, 128, 107, 63, 28.26130 + 136, 150, 150, 146, 148, 126, 150, 131, 115, 123, 127, 73, 106, 146, 143, 134, 28.26131 + 134, 130, 126, 120, 120, 108, 71, 153, 161, 170, 155, 162, 208, 232, 242, 244, 28.26132 + 233, 171, 118, 84, 75, 68, 64, 61, 65, 64, 64, 49, 59, 64, 92, 64, 28.26133 + 67, 136, 134, 119, 115, 115, 119, 116, 108, 119, 116, 79, 115, 131, 118, 127, 28.26134 + 130, 118, 115, 120, 118, 118, 68, 1, 107, 111, 130, 111, 116, 112, 118, 124, 28.26135 + 127, 107, 79, 63, 85, 126, 100, 229, 238, 237, 110, 99, 111, 136, 151, 158, 28.26136 + 163, 169, 179, 179, 177, 165, 161, 150, 143, 132, 122, 16, 16, 20, 41, 67, 28.26137 + 68, 64, 71, 76, 81, 67, 59, 45, 88, 116, 119, 120, 124, 118, 123, 120, 28.26138 + 107, 93, 97, 59, 100, 130, 115, 136, 135, 136, 138, 147, 154, 148, 139, 138, 28.26139 + 139, 140, 142, 159, 153, 148, 163, 173, 146, 142, 155, 171, 135, 118, 88, 40, 28.26140 + 41, 67, 68, 59, 64, 67, 72, 33, 88, 100, 104, 233, 234, 232, 107, 96, 28.26141 + 108, 120, 132, 147, 155, 167, 174, 174, 170, 165, 135, 178, 189, 195, 204, 204, 28.26142 + 205, 202, 202, 202, 201, 199, 198, 198, 194, 189, 181, 177, 163, 158, 103, 97, 28.26143 + 96, 75, 77, 85, 97, 84, 95, 92, 95, 93, 97, 96, 103, 102, 102, 103, 28.26144 + 104, 106, 107, 106, 108, 112, 115, 138, 128, 157, 190, 183, 185, 126, 114, 116, 28.26145 + 112, 123, 122, 124, 122, 127, 124, 83, 32, 32, 41, 24, 87, 97, 104, 104, 28.26146 + 114, 110, 92, 110, 138, 142, 148, 128, 126, 100, 92, 100, 107, 106, 104, 106, 28.26147 + 106, 110, 110, 111, 110, 112, 111, 111, 112, 114, 115, 115, 126, 151, 73, 18, 28.26148 + 61, 87, 75, 80, 79, 80, 76, 72, 75, 63, 42, 44, 46, 65, 73, 76, 28.26149 + 71, 79, 80, 71, 71, 68, 71, 68, 75, 75, 72, 69, 72, 80, 108, 112, 28.26150 + 115, 114, 85, 77, 123, 197, 186, 144, 111, 111, 123, 126, 134, 135, 138, 136, 28.26151 + 136, 138, 102, 55, 24, 57, 75, 65, 89, 183, 165, 150, 151, 151, 146, 148, 28.26152 + 147, 153, 151, 153, 153, 148, 139, 111, 100, 89, 92, 80, 77, 81, 96, 87, 28.26153 + 65, 97, 185, 187, 136, 135, 118, 120, 120, 112, 126, 127, 128, 118, 114, 37, 28.26154 + 16, 10, 20, 25, 40, 132, 136, 131, 169, 202, 216, 244, 171, 132, 110, 130, 28.26155 + 154, 161, 165, 169, 170, 174, 170, 165, 148, 143, 135, 124, 41, 28, 33, 75, 28.26156 + 72, 97, 120, 111, 130, 114, 151, 154, 136, 165, 151, 147, 143, 174, 144, 132, 28.26157 + 131, 123, 72, 103, 162, 159, 134, 139, 126, 104, 111, 96, 80, 67, 107, 163, 28.26158 + 159, 163, 150, 159, 162, 147, 240, 232, 233, 108, 96, 114, 123, 134, 127, 138, 28.26159 + 140, 143, 150, 148, 140, 130, 126, 30, 22, 24, 60, 72, 87, 102, 96, 123, 28.26160 + 84, 103, 150, 130, 132, 120, 128, 144, 150, 134, 134, 134, 147, 131, 134, 134, 28.26161 + 140, 130, 128, 131, 140, 134, 135, 142, 143, 138, 135, 126, 118, 114, 115, 116, 28.26162 + 116, 118, 122, 126, 132, 135, 140, 140, 142, 130, 126, 120, 134, 148, 138, 114, 28.26163 + 127, 128, 148, 147, 131, 130, 131, 130, 131, 131, 131, 128, 127, 123, 122, 118, 28.26164 + 114, 134, 102, 108, 131, 123, 124, 130, 126, 108, 73, 132, 147, 144, 144, 148, 28.26165 + 136, 154, 142, 112, 120, 112, 68, 104, 144, 144, 118, 128, 100, 135, 132, 132, 28.26166 + 120, 110, 155, 178, 171, 171, 198, 225, 242, 246, 240, 217, 132, 89, 71, 46, 28.26167 + 46, 55, 51, 51, 56, 64, 57, 63, 60, 127, 68, 61, 135, 131, 118, 119, 28.26168 + 120, 122, 120, 115, 111, 114, 73, 112, 132, 119, 127, 122, 116, 115, 114, 120, 28.26169 + 96, 65, 2, 106, 111, 107, 116, 116, 119, 119, 126, 120, 107, 65, 73, 91, 28.26170 + 122, 119, 241, 244, 238, 116, 100, 111, 135, 147, 158, 163, 170, 179, 178, 177, 28.26171 + 175, 163, 146, 142, 134, 123, 16, 17, 18, 40, 64, 65, 67, 71, 81, 76, 28.26172 + 67, 63, 42, 76, 106, 120, 122, 119, 123, 126, 107, 87, 85, 77, 59, 107, 28.26173 + 120, 115, 139, 139, 122, 126, 128, 127, 127, 131, 128, 124, 128, 132, 131, 134, 28.26174 + 135, 136, 135, 136, 126, 130, 124, 123, 99, 64, 34, 32, 68, 64, 59, 63, 28.26175 + 63, 68, 22, 85, 111, 107, 233, 241, 233, 110, 99, 111, 124, 134, 146, 155, 28.26176 + 167, 173, 175, 174, 166, 167, 148, 143, 143, 140, 138, 135, 134, 131, 132, 130, 28.26177 + 128, 128, 126, 122, 122, 116, 122, 120, 122, 108, 114, 97, 110, 103, 107, 103, 28.26178 + 103, 103, 104, 106, 104, 104, 108, 110, 108, 108, 111, 114, 115, 115, 116, 119, 28.26179 + 122, 124, 118, 127, 124, 167, 198, 130, 120, 124, 128, 132, 134, 135, 132, 130, 28.26180 + 131, 127, 72, 32, 32, 38, 14, 79, 95, 102, 107, 100, 100, 97, 102, 96, 28.26181 + 97, 92, 97, 97, 85, 80, 73, 79, 95, 95, 115, 114, 115, 118, 120, 120, 28.26182 + 122, 122, 124, 124, 124, 123, 122, 119, 163, 92, 37, 41, 73, 91, 87, 77, 28.26183 + 68, 71, 73, 64, 76, 48, 28, 63, 60, 69, 73, 83, 83, 84, 84, 92, 28.26184 + 89, 95, 97, 102, 103, 107, 108, 106, 111, 122, 124, 128, 124, 95, 80, 116, 28.26185 + 166, 158, 130, 108, 132, 136, 144, 142, 143, 142, 142, 142, 132, 83, 22, 40, 28.26186 + 53, 61, 60, 71, 110, 169, 165, 142, 132, 158, 157, 158, 158, 162, 162, 163, 28.26187 + 161, 157, 144, 123, 96, 44, 81, 85, 79, 79, 79, 59, 100, 194, 182, 166, 28.26188 + 163, 136, 130, 131, 136, 124, 132, 148, 126, 107, 38, 14, 8, 22, 26, 8, 28.26189 + 126, 130, 126, 165, 210, 221, 237, 166, 122, 110, 130, 151, 162, 166, 167, 169, 28.26190 + 173, 170, 165, 153, 140, 138, 127, 44, 28, 36, 69, 89, 108, 112, 119, 123, 28.26191 + 106, 147, 148, 139, 157, 153, 148, 144, 127, 131, 138, 130, 115, 65, 102, 155, 28.26192 + 157, 143, 150, 138, 122, 163, 128, 76, 61, 131, 162, 157, 155, 147, 157, 153, 28.26193 + 143, 241, 233, 234, 108, 96, 111, 123, 136, 139, 153, 158, 163, 165, 158, 144, 28.26194 + 132, 128, 30, 22, 25, 56, 63, 84, 85, 108, 136, 115, 83, 91, 142, 146, 28.26195 + 122, 174, 182, 162, 134, 148, 166, 142, 142, 148, 154, 143, 140, 144, 151, 142, 28.26196 + 144, 148, 143, 147, 148, 147, 144, 140, 136, 136, 135, 140, 143, 143, 147, 148, 28.26197 + 154, 154, 153, 154, 147, 128, 153, 116, 112, 136, 132, 112, 88, 81, 95, 119, 28.26198 + 134, 161, 134, 136, 159, 138, 138, 136, 134, 132, 128, 118, 134, 112, 85, 122, 28.26199 + 128, 127, 122, 132, 112, 73, 80, 143, 148, 154, 148, 132, 154, 142, 106, 123, 28.26200 + 106, 65, 132, 135, 142, 135, 136, 134, 147, 162, 174, 179, 186, 208, 217, 225, 28.26201 + 226, 229, 241, 246, 248, 238, 177, 104, 60, 73, 69, 81, 68, 83, 77, 75, 28.26202 + 72, 72, 72, 76, 72, 84, 57, 108, 127, 120, 122, 123, 122, 126, 120, 114, 28.26203 + 115, 68, 111, 126, 118, 127, 120, 116, 118, 118, 123, 102, 63, 4, 103, 115, 28.26204 + 120, 126, 122, 122, 123, 123, 123, 93, 45, 60, 83, 122, 106, 238, 245, 241, 28.26205 + 114, 102, 110, 136, 148, 155, 163, 170, 174, 177, 177, 175, 166, 146, 138, 135, 28.26206 + 123, 14, 16, 22, 37, 59, 63, 67, 68, 77, 68, 68, 57, 41, 69, 99, 28.26207 + 114, 127, 119, 116, 110, 107, 84, 88, 83, 46, 110, 119, 124, 115, 116, 108, 28.26208 + 110, 148, 150, 123, 134, 136, 142, 143, 142, 135, 135, 136, 136, 134, 130, 131, 28.26209 + 128, 126, 114, 97, 46, 33, 33, 64, 69, 59, 65, 65, 69, 28, 85, 104, 28.26210 + 108, 229, 238, 237, 110, 100, 112, 124, 135, 146, 157, 169, 173, 175, 174, 159, 28.26211 + 151, 120, 96, 89, 110, 107, 120, 119, 119, 116, 115, 112, 108, 102, 100, 102, 28.26212 + 102, 96, 96, 91, 88, 84, 83, 79, 83, 91, 83, 87, 174, 111, 108, 108, 28.26213 + 114, 112, 116, 118, 118, 119, 123, 127, 127, 128, 128, 131, 134, 132, 135, 126, 28.26214 + 127, 124, 124, 131, 140, 144, 144, 144, 142, 139, 138, 134, 115, 52, 32, 25, 28.26215 + 37, 22, 65, 95, 93, 102, 104, 104, 106, 95, 89, 80, 73, 61, 57, 51, 28.26216 + 45, 51, 52, 64, 77, 89, 102, 119, 116, 123, 123, 127, 122, 126, 130, 135, 28.26217 + 134, 131, 130, 127, 126, 65, 18, 65, 72, 61, 59, 73, 68, 71, 64, 68, 28.26218 + 48, 40, 64, 57, 55, 67, 63, 138, 93, 100, 106, 108, 108, 112, 116, 115, 28.26219 + 118, 118, 116, 116, 128, 132, 134, 134, 128, 87, 108, 153, 132, 126, 139, 148, 28.26220 + 144, 147, 144, 146, 148, 146, 146, 134, 67, 37, 36, 45, 44, 56, 67, 72, 28.26221 + 139, 174, 157, 134, 135, 157, 167, 167, 165, 170, 170, 174, 174, 169, 150, 111, 28.26222 + 81, 72, 45, 67, 76, 61, 65, 112, 193, 193, 182, 140, 153, 136, 139, 139, 28.26223 + 144, 151, 150, 120, 122, 30, 16, 20, 24, 8, 0, 119, 126, 123, 161, 210, 28.26224 + 224, 238, 148, 119, 108, 128, 144, 159, 165, 165, 166, 173, 170, 167, 154, 144, 28.26225 + 136, 130, 41, 28, 36, 64, 92, 111, 108, 144, 136, 95, 138, 144, 140, 158, 28.26226 + 158, 147, 140, 135, 135, 132, 131, 119, 63, 104, 167, 186, 147, 142, 144, 142, 28.26227 + 120, 131, 87, 53, 127, 159, 154, 157, 148, 151, 148, 142, 242, 238, 233, 107, 28.26228 + 97, 111, 126, 140, 150, 163, 169, 169, 169, 161, 147, 134, 128, 28, 22, 24, 28.26229 + 57, 73, 80, 84, 92, 120, 115, 91, 81, 131, 142, 127, 198, 193, 127, 124, 28.26230 + 132, 150, 146, 161, 163, 147, 148, 153, 155, 148, 151, 148, 153, 153, 150, 163, 28.26231 + 163, 167, 159, 153, 148, 150, 155, 159, 157, 162, 161, 163, 165, 165, 163, 159, 28.26232 + 142, 157, 157, 138, 110, 77, 59, 48, 51, 60, 96, 130, 143, 177, 182, 181, 28.26233 + 167, 174, 171, 161, 139, 135, 127, 116, 123, 85, 89, 118, 120, 120, 122, 116, 28.26234 + 95, 75, 136, 139, 120, 147, 138, 140, 112, 115, 111, 80, 95, 130, 132, 165, 28.26235 + 175, 197, 213, 230, 230, 242, 241, 248, 246, 250, 250, 249, 249, 250, 250, 244, 28.26236 + 220, 143, 102, 76, 42, 73, 79, 79, 75, 77, 76, 79, 83, 77, 73, 76, 28.26237 + 83, 72, 104, 134, 130, 130, 130, 126, 132, 124, 110, 108, 72, 111, 128, 118, 28.26238 + 120, 123, 119, 132, 122, 114, 108, 60, 6, 107, 128, 115, 134, 128, 124, 130, 28.26239 + 126, 116, 95, 46, 64, 88, 119, 103, 238, 245, 240, 111, 100, 110, 135, 147, 28.26240 + 154, 162, 167, 170, 177, 175, 175, 167, 147, 140, 135, 126, 13, 18, 18, 37, 28.26241 + 61, 63, 69, 67, 67, 71, 65, 59, 52, 57, 93, 96, 100, 96, 97, 97, 28.26242 + 80, 84, 87, 83, 53, 80, 115, 116, 108, 108, 104, 103, 112, 93, 106, 173, 28.26243 + 134, 127, 131, 146, 147, 151, 151, 155, 155, 158, 147, 153, 122, 114, 99, 37, 28.26244 + 28, 32, 56, 53, 68, 71, 56, 65, 41, 79, 100, 110, 220, 240, 238, 110, 28.26245 + 100, 111, 126, 138, 147, 157, 170, 174, 174, 170, 161, 130, 69, 38, 34, 34, 28.26246 + 73, 92, 111, 110, 114, 112, 112, 112, 112, 111, 115, 115, 114, 110, 64, 68, 28.26247 + 81, 79, 77, 76, 76, 80, 84, 177, 179, 118, 100, 122, 130, 120, 122, 126, 28.26248 + 126, 127, 132, 134, 136, 139, 140, 139, 139, 132, 132, 122, 119, 143, 148, 150, 28.26249 + 151, 146, 146, 144, 139, 140, 130, 85, 32, 26, 25, 36, 25, 46, 89, 92, 28.26250 + 91, 81, 69, 55, 59, 59, 60, 49, 61, 63, 61, 59, 73, 69, 52, 48, 28.26251 + 75, 107, 119, 171, 174, 170, 148, 157, 170, 155, 155, 151, 138, 140, 128, 155, 28.26252 + 96, 36, 28, 67, 72, 65, 60, 64, 65, 65, 73, 42, 36, 48, 60, 65, 28.26253 + 52, 59, 136, 163, 103, 103, 112, 123, 120, 122, 124, 124, 124, 124, 127, 131, 28.26254 + 140, 139, 140, 139, 134, 92, 91, 135, 147, 151, 151, 151, 151, 143, 147, 148, 28.26255 + 146, 143, 102, 46, 40, 37, 18, 46, 48, 64, 61, 67, 155, 166, 140, 128, 28.26256 + 140, 157, 163, 171, 174, 177, 178, 178, 178, 171, 140, 76, 69, 52, 71, 65, 28.26257 + 72, 65, 123, 204, 198, 216, 151, 155, 140, 138, 142, 142, 155, 148, 120, 120, 28.26258 + 26, 14, 6, 12, 8, 0, 110, 110, 111, 153, 222, 224, 240, 147, 103, 112, 28.26259 + 132, 147, 155, 159, 162, 169, 171, 170, 165, 157, 138, 132, 126, 42, 29, 37, 28.26260 + 67, 89, 91, 108, 118, 120, 92, 155, 153, 138, 131, 128, 130, 127, 127, 126, 28.26261 + 124, 132, 124, 81, 116, 134, 161, 143, 72, 88, 83, 83, 79, 67, 51, 92, 28.26262 + 130, 131, 126, 124, 147, 142, 139, 244, 240, 233, 104, 97, 110, 124, 139, 153, 28.26263 + 167, 171, 166, 169, 162, 146, 134, 127, 28, 21, 25, 55, 51, 72, 84, 79, 28.26264 + 91, 76, 83, 87, 112, 144, 126, 201, 198, 170, 127, 128, 136, 153, 150, 154, 28.26265 + 162, 159, 150, 159, 150, 151, 150, 151, 158, 170, 174, 181, 187, 187, 183, 163, 28.26266 + 162, 165, 171, 170, 171, 171, 171, 173, 173, 170, 165, 147, 159, 158, 114, 75, 28.26267 + 46, 46, 42, 38, 48, 77, 106, 136, 178, 181, 194, 185, 179, 155, 174, 167, 28.26268 + 154, 134, 120, 130, 93, 75, 95, 114, 119, 118, 112, 114, 102, 89, 95, 103, 28.26269 + 103, 106, 104, 104, 106, 83, 116, 126, 155, 201, 226, 238, 242, 242, 246, 250, 28.26270 + 253, 253, 253, 252, 253, 252, 252, 250, 250, 248, 238, 178, 138, 103, 73, 40, 28.26271 + 73, 69, 69, 69, 73, 73, 76, 76, 81, 75, 81, 79, 76, 75, 93, 99, 28.26272 + 97, 108, 104, 107, 106, 104, 111, 68, 106, 115, 115, 103, 108, 108, 111, 106, 28.26273 + 106, 93, 60, 5, 102, 114, 118, 122, 116, 115, 115, 115, 102, 92, 41, 69, 28.26274 + 84, 116, 96, 238, 242, 238, 110, 96, 110, 135, 147, 155, 161, 162, 163, 175, 28.26275 + 177, 175, 163, 153, 140, 132, 122, 12, 16, 17, 36, 57, 57, 56, 65, 68, 28.26276 + 65, 75, 68, 64, 64, 71, 77, 71, 73, 77, 81, 75, 80, 85, 73, 48, 28.26277 + 87, 108, 104, 102, 102, 103, 104, 104, 100, 91, 175, 179, 126, 124, 132, 136, 28.26278 + 146, 150, 155, 155, 150, 155, 151, 126, 115, 99, 34, 26, 30, 44, 45, 56, 28.26279 + 61, 49, 51, 48, 56, 80, 107, 228, 241, 237, 115, 100, 112, 126, 139, 144, 28.26280 + 154, 169, 174, 173, 182, 151, 83, 45, 26, 21, 18, 37, 85, 131, 165, 169, 28.26281 + 162, 120, 153, 155, 153, 151, 123, 120, 115, 83, 55, 79, 77, 76, 75, 76, 28.26282 + 73, 76, 163, 190, 169, 111, 112, 130, 131, 134, 134, 136, 138, 139, 142, 142, 28.26283 + 143, 143, 147, 144, 142, 140, 142, 154, 153, 155, 151, 146, 132, 126, 116, 103, 28.26284 + 100, 77, 40, 25, 22, 24, 36, 25, 38, 45, 51, 46, 52, 56, 55, 65, 28.26285 + 67, 71, 60, 77, 75, 75, 71, 71, 73, 73, 75, 87, 111, 179, 190, 191, 28.26286 + 183, 174, 174, 177, 173, 166, 170, 161, 147, 142, 128, 120, 67, 20, 34, 77, 28.26287 + 76, 59, 61, 59, 56, 71, 49, 37, 42, 60, 57, 56, 61, 131, 169, 159, 28.26288 + 102, 104, 124, 126, 130, 130, 128, 132, 131, 130, 144, 151, 155, 151, 150, 143, 28.26289 + 147, 157, 157, 154, 154, 150, 144, 136, 131, 122, 116, 112, 89, 49, 32, 28, 28.26290 + 37, 28, 38, 26, 41, 42, 33, 100, 171, 165, 134, 127, 140, 157, 162, 170, 28.26291 + 175, 178, 179, 182, 181, 165, 114, 60, 71, 80, 83, 71, 64, 158, 206, 202, 28.26292 + 191, 170, 165, 147, 144, 150, 153, 151, 148, 120, 116, 24, 9, 5, 17, 13, 28.26293 + 13, 114, 107, 97, 150, 214, 225, 240, 139, 99, 108, 132, 148, 158, 161, 167, 28.26294 + 170, 171, 161, 158, 158, 140, 134, 128, 45, 28, 37, 63, 67, 93, 112, 110, 28.26295 + 119, 96, 150, 138, 119, 122, 116, 124, 124, 122, 115, 130, 134, 110, 73, 88, 28.26296 + 76, 53, 51, 51, 49, 44, 42, 45, 45, 46, 57, 63, 72, 80, 84, 110, 28.26297 + 138, 140, 242, 240, 229, 104, 97, 111, 130, 140, 153, 167, 174, 173, 165, 159, 28.26298 + 144, 132, 123, 24, 20, 22, 49, 56, 63, 73, 65, 67, 76, 65, 73, 85, 28.26299 + 139, 128, 208, 201, 197, 126, 122, 132, 147, 170, 169, 153, 159, 150, 153, 159, 28.26300 + 165, 167, 171, 174, 178, 181, 173, 161, 179, 187, 193, 185, 167, 183, 182, 181, 28.26301 + 177, 189, 182, 179, 183, 178, 186, 166, 159, 106, 61, 46, 38, 36, 34, 36, 28.26302 + 67, 102, 134, 189, 193, 165, 169, 186, 183, 163, 159, 165, 138, 126, 132, 99, 28.26303 + 68, 77, 95, 110, 108, 104, 104, 102, 112, 110, 104, 107, 106, 104, 108, 77, 28.26304 + 126, 135, 175, 228, 244, 244, 244, 248, 249, 252, 253, 252, 245, 240, 234, 234, 28.26305 + 233, 229, 225, 220, 216, 183, 147, 138, 110, 69, 69, 67, 75, 72, 75, 79, 28.26306 + 77, 80, 81, 80, 81, 84, 81, 79, 89, 89, 91, 91, 89, 92, 91, 91, 28.26307 + 88, 87, 83, 84, 73, 84, 84, 84, 68, 76, 73, 68, 59, 65, 8, 33, 28.26308 + 57, 63, 67, 65, 67, 64, 79, 69, 44, 24, 88, 69, 108, 104, 241, 244, 28.26309 + 238, 110, 95, 104, 131, 144, 157, 162, 166, 173, 174, 177, 165, 159, 148, 140, 28.26310 + 134, 126, 13, 18, 18, 42, 45, 48, 49, 45, 51, 45, 42, 49, 51, 49, 28.26311 + 51, 61, 59, 56, 56, 53, 55, 56, 53, 63, 71, 64, 71, 61, 59, 93, 28.26312 + 97, 92, 95, 100, 84, 155, 185, 173, 124, 127, 138, 136, 146, 150, 148, 150, 28.26313 + 154, 154, 130, 119, 91, 30, 24, 25, 42, 41, 46, 61, 60, 45, 45, 55, 28.26314 + 77, 108, 234, 244, 241, 115, 103, 114, 126, 138, 147, 157, 170, 174, 169, 161, 28.26315 + 116, 48, 30, 20, 24, 21, 32, 71, 148, 179, 131, 163, 155, 155, 159, 169, 28.26316 + 143, 147, 124, 119, 110, 51, 51, 65, 75, 73, 72, 80, 69, 111, 199, 189, 28.26317 + 120, 111, 120, 144, 139, 142, 142, 142, 144, 146, 146, 148, 148, 150, 153, 157, 28.26318 + 161, 157, 157, 155, 142, 108, 71, 49, 30, 24, 24, 25, 24, 22, 20, 24, 28.26319 + 22, 34, 24, 46, 41, 45, 48, 57, 77, 116, 183, 201, 212, 214, 212, 204, 28.26320 + 190, 181, 112, 100, 95, 95, 116, 191, 216, 166, 194, 187, 189, 186, 177, 182, 28.26321 + 181, 173, 166, 159, 146, 135, 150, 95, 32, 22, 45, 52, 57, 60, 57, 60, 28.26322 + 63, 63, 45, 40, 53, 61, 41, 52, 112, 178, 177, 112, 103, 114, 127, 138, 28.26323 + 134, 134, 138, 147, 150, 157, 161, 161, 161, 158, 157, 159, 159, 155, 150, 134, 28.26324 + 99, 72, 42, 32, 25, 18, 26, 26, 28, 32, 30, 9, 12, 12, 44, 46, 28.26325 + 37, 34, 42, 124, 175, 147, 122, 123, 147, 158, 163, 170, 175, 179, 183, 185, 28.26326 + 179, 138, 71, 41, 49, 67, 79, 92, 190, 204, 205, 194, 166, 155, 157, 155, 28.26327 + 157, 158, 153, 151, 131, 112, 21, 10, 6, 9, 13, 10, 53, 63, 69, 120, 28.26328 + 208, 228, 232, 139, 110, 110, 132, 147, 157, 163, 166, 170, 169, 154, 161, 151, 28.26329 + 139, 134, 127, 52, 30, 34, 49, 53, 55, 67, 114, 112, 87, 114, 112, 106, 28.26330 + 83, 75, 84, 76, 67, 59, 44, 60, 60, 68, 33, 68, 72, 79, 87, 89, 28.26331 + 85, 100, 93, 80, 40, 99, 153, 150, 124, 131, 135, 143, 140, 244, 240, 222, 28.26332 + 106, 97, 108, 126, 135, 151, 166, 173, 170, 166, 162, 143, 127, 127, 29, 22, 28.26333 + 24, 51, 56, 55, 68, 69, 69, 67, 69, 69, 69, 135, 128, 212, 210, 206, 28.26334 + 127, 132, 128, 142, 166, 170, 159, 155, 157, 167, 178, 178, 178, 177, 173, 182, 28.26335 + 150, 99, 76, 97, 162, 189, 187, 173, 165, 178, 179, 181, 179, 179, 183, 183, 28.26336 + 189, 190, 169, 165, 100, 57, 44, 38, 34, 34, 36, 71, 97, 130, 202, 199, 28.26337 + 166, 190, 191, 191, 169, 185, 174, 143, 131, 119, 114, 76, 68, 85, 72, 67, 28.26338 + 59, 63, 57, 60, 57, 61, 61, 61, 67, 84, 97, 144, 191, 240, 245, 246, 28.26339 + 244, 252, 250, 242, 225, 197, 173, 130, 118, 120, 112, 115, 120, 118, 115, 120, 28.26340 + 136, 126, 131, 124, 97, 83, 25, 22, 20, 17, 14, 14, 14, 12, 10, 13, 28.26341 + 13, 8, 5, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 4, 10, 28.26342 + 12, 9, 2, 2, 8, 6, 9, 10, 8, 30, 28, 30, 13, 30, 32, 30, 28.26343 + 26, 33, 34, 33, 81, 51, 48, 115, 103, 241, 244, 242, 114, 97, 106, 132, 28.26344 + 146, 158, 165, 173, 177, 177, 173, 162, 165, 146, 138, 134, 122, 10, 16, 21, 28.26345 + 25, 17, 14, 14, 17, 16, 17, 18, 20, 20, 25, 36, 76, 83, 96, 91, 28.26346 + 97, 91, 93, 88, 81, 79, 108, 115, 108, 75, 63, 64, 63, 88, 104, 95, 28.26347 + 100, 195, 189, 130, 124, 135, 136, 142, 144, 144, 154, 150, 148, 123, 118, 91, 28.26348 + 29, 22, 26, 38, 24, 36, 40, 42, 37, 48, 83, 77, 111, 234, 245, 241, 28.26349 + 111, 99, 110, 123, 136, 143, 157, 170, 173, 169, 148, 77, 37, 24, 22, 25, 28.26350 + 18, 38, 85, 186, 194, 165, 132, 162, 165, 153, 143, 132, 153, 127, 122, 112, 28.26351 + 46, 49, 57, 64, 68, 67, 80, 75, 97, 212, 202, 132, 111, 122, 138, 147, 28.26352 + 146, 144, 144, 143, 146, 147, 151, 151, 162, 167, 165, 161, 161, 153, 104, 57, 28.26353 + 22, 17, 16, 14, 14, 16, 16, 17, 20, 22, 22, 24, 38, 45, 44, 63, 28.26354 + 71, 85, 135, 190, 236, 242, 245, 245, 244, 242, 240, 240, 237, 238, 237, 233, 28.26355 + 225, 230, 229, 225, 210, 191, 186, 182, 182, 179, 178, 181, 178, 174, 171, 153, 28.26356 + 144, 130, 119, 65, 21, 29, 36, 44, 36, 41, 45, 44, 52, 52, 52, 53, 28.26357 + 48, 44, 56, 104, 189, 187, 124, 108, 111, 126, 134, 138, 140, 155, 161, 167, 28.26358 + 166, 165, 162, 165, 169, 163, 161, 157, 138, 93, 51, 17, 13, 10, 12, 13, 28.26359 + 14, 18, 16, 8, 10, 9, 14, 18, 13, 13, 17, 28, 22, 32, 71, 157, 28.26360 + 166, 130, 119, 135, 151, 159, 163, 171, 178, 181, 186, 187, 161, 102, 77, 77, 28.26361 + 81, 79, 116, 204, 208, 210, 201, 171, 161, 170, 158, 154, 159, 148, 151, 127, 28.26362 + 122, 21, 9, 10, 2, 2, 1, 194, 189, 183, 143, 209, 228, 230, 150, 112, 28.26363 + 108, 128, 148, 157, 161, 166, 166, 161, 162, 163, 140, 136, 135, 130, 57, 30, 28.26364 + 36, 49, 83, 76, 71, 68, 75, 80, 73, 77, 99, 115, 112, 130, 136, 136, 28.26365 + 144, 148, 140, 128, 42, 96, 119, 144, 153, 142, 138, 135, 134, 107, 93, 37, 28.26366 + 140, 158, 158, 158, 161, 162, 144, 147, 246, 233, 236, 106, 95, 104, 128, 136, 28.26367 + 151, 165, 171, 169, 163, 161, 144, 134, 130, 30, 24, 25, 57, 59, 73, 87, 28.26368 + 100, 108, 72, 100, 65, 127, 138, 138, 218, 213, 213, 136, 131, 136, 134, 159, 28.26369 + 167, 158, 155, 170, 182, 182, 181, 179, 171, 173, 159, 103, 55, 57, 81, 128, 28.26370 + 183, 199, 182, 161, 178, 183, 182, 183, 186, 187, 190, 191, 189, 162, 170, 108, 28.26371 + 60, 51, 44, 40, 38, 38, 69, 110, 127, 206, 205, 173, 170, 174, 191, 193, 28.26372 + 190, 175, 155, 136, 123, 134, 93, 61, 75, 89, 92, 88, 89, 119, 127, 134, 28.26373 + 132, 140, 132, 115, 134, 174, 205, 242, 244, 245, 250, 246, 225, 190, 147, 122, 28.26374 + 115, 108, 103, 111, 114, 115, 103, 118, 116, 115, 111, 127, 128, 130, 127, 123, 28.26375 + 87, 102, 80, 79, 83, 91, 84, 84, 84, 79, 77, 68, 69, 99, 124, 127, 28.26376 + 143, 132, 124, 143, 147, 130, 102, 93, 103, 155, 126, 127, 163, 161, 126, 116, 28.26377 + 116, 144, 106, 16, 0, 48, 92, 110, 75, 76, 73, 72, 71, 46, 59, 44, 28.26378 + 76, 116, 115, 112, 242, 244, 241, 114, 96, 111, 134, 147, 155, 165, 174, 174, 28.26379 + 175, 169, 165, 163, 144, 135, 135, 127, 12, 20, 21, 32, 63, 80, 85, 93, 28.26380 + 100, 99, 97, 87, 93, 95, 91, 107, 131, 123, 124, 108, 114, 116, 118, 120, 28.26381 + 108, 122, 126, 123, 102, 91, 79, 76, 69, 92, 93, 95, 202, 197, 147, 124, 28.26382 + 131, 140, 135, 139, 150, 151, 150, 148, 127, 115, 87, 26, 21, 28, 40, 51, 28.26383 + 57, 71, 72, 83, 83, 68, 103, 114, 234, 245, 241, 107, 99, 111, 126, 138, 28.26384 + 146, 159, 171, 170, 182, 136, 48, 30, 25, 26, 28, 16, 56, 84, 197, 199, 28.26385 + 189, 132, 157, 158, 158, 140, 131, 131, 128, 124, 115, 48, 42, 52, 72, 68, 28.26386 + 67, 72, 67, 88, 213, 210, 189, 116, 114, 128, 140, 151, 155, 146, 148, 148, 28.26387 + 155, 155, 162, 171, 166, 163, 163, 148, 87, 30, 17, 14, 16, 17, 21, 21, 28.26388 + 22, 22, 22, 22, 25, 25, 37, 36, 48, 60, 75, 119, 208, 237, 240, 242, 28.26389 + 242, 244, 241, 242, 244, 244, 242, 241, 237, 237, 234, 232, 233, 233, 229, 224, 28.26390 + 170, 167, 185, 187, 193, 177, 187, 181, 178, 174, 163, 148, 135, 140, 91, 29, 28.26391 + 32, 37, 45, 42, 56, 48, 42, 34, 28, 32, 38, 40, 46, 65, 103, 194, 28.26392 + 201, 170, 107, 107, 116, 132, 138, 151, 166, 166, 163, 166, 166, 163, 166, 170, 28.26393 + 163, 158, 140, 80, 21, 16, 9, 8, 5, 6, 5, 8, 8, 18, 24, 17, 28.26394 + 18, 18, 24, 33, 24, 24, 14, 17, 32, 45, 142, 163, 139, 119, 119, 135, 28.26395 + 157, 161, 169, 174, 179, 186, 186, 186, 134, 76, 68, 64, 92, 148, 213, 209, 28.26396 + 218, 212, 175, 165, 170, 154, 158, 158, 153, 154, 130, 120, 25, 14, 12, 12, 28.26397 + 34, 42, 165, 157, 157, 136, 193, 225, 232, 157, 114, 108, 128, 144, 157, 162, 28.26398 + 165, 166, 158, 162, 158, 140, 135, 135, 128, 64, 32, 37, 57, 73, 103, 115, 28.26399 + 119, 115, 87, 104, 146, 167, 162, 167, 177, 178, 171, 170, 174, 157, 132, 45, 28.26400 + 99, 183, 170, 169, 155, 157, 157, 128, 111, 95, 42, 148, 161, 151, 148, 142, 28.26401 + 154, 146, 144, 246, 234, 234, 106, 93, 107, 131, 136, 151, 166, 173, 170, 165, 28.26402 + 161, 146, 135, 130, 32, 24, 25, 57, 67, 79, 106, 92, 106, 88, 99, 64, 28.26403 + 131, 134, 143, 217, 218, 214, 136, 115, 122, 131, 142, 165, 161, 166, 179, 183, 28.26404 + 182, 183, 182, 175, 173, 128, 63, 52, 53, 60, 85, 167, 202, 189, 162, 163, 28.26405 + 179, 194, 195, 198, 199, 202, 202, 197, 189, 177, 138, 75, 49, 46, 45, 40, 28.26406 + 57, 84, 116, 127, 208, 210, 186, 169, 189, 191, 177, 190, 173, 166, 139, 130, 28.26407 + 120, 111, 67, 63, 85, 89, 120, 108, 107, 131, 134, 147, 127, 138, 151, 175, 28.26408 + 230, 244, 244, 245, 250, 233, 187, 139, 116, 112, 111, 114, 126, 80, 60, 57, 28.26409 + 60, 69, 115, 120, 128, 158, 178, 185, 175, 131, 130, 118, 97, 87, 112, 111, 28.26410 + 93, 95, 91, 89, 85, 107, 123, 84, 123, 153, 148, 151, 104, 135, 155, 158, 28.26411 + 135, 128, 112, 96, 142, 147, 157, 154, 157, 146, 147, 144, 131, 128, 92, 0, 28.26412 + 108, 107, 111, 118, 108, 104, 108, 88, 72, 68, 38, 116, 116, 112, 116, 244, 28.26413 + 244, 241, 104, 100, 112, 135, 144, 157, 166, 173, 171, 177, 166, 162, 159, 143, 28.26414 + 135, 134, 123, 10, 18, 38, 53, 84, 81, 89, 92, 95, 100, 97, 104, 92, 28.26415 + 102, 135, 122, 116, 115, 119, 124, 114, 114, 122, 155, 165, 208, 195, 147, 116, 28.26416 + 99, 92, 93, 91, 91, 92, 85, 208, 208, 179, 124, 128, 135, 138, 134, 140, 28.26417 + 155, 147, 154, 126, 116, 85, 28, 22, 34, 46, 72, 80, 84, 85, 91, 59, 28.26418 + 87, 122, 158, 236, 244, 238, 114, 100, 112, 127, 139, 146, 163, 171, 169, 162, 28.26419 + 118, 42, 30, 21, 25, 32, 18, 63, 95, 205, 205, 197, 161, 154, 154, 159, 28.26420 + 142, 146, 134, 128, 131, 119, 45, 42, 41, 60, 72, 75, 68, 68, 85, 214, 28.26421 + 212, 197, 115, 114, 122, 136, 147, 154, 154, 154, 169, 173, 171, 173, 174, 165, 28.26422 + 163, 150, 92, 25, 13, 14, 16, 17, 26, 22, 28, 28, 28, 29, 29, 38, 28.26423 + 40, 44, 33, 49, 64, 107, 224, 240, 238, 244, 242, 240, 230, 220, 199, 197, 28.26424 + 186, 189, 193, 204, 206, 209, 220, 222, 226, 222, 225, 213, 175, 201, 199, 209, 28.26425 + 209, 199, 181, 185, 179, 170, 153, 140, 135, 112, 57, 26, 28, 59, 53, 59, 28.26426 + 73, 73, 68, 61, 69, 76, 77, 77, 63, 111, 195, 204, 187, 108, 107, 118, 28.26427 + 131, 143, 154, 166, 170, 171, 169, 169, 169, 171, 169, 165, 140, 80, 20, 14, 28.26428 + 9, 8, 9, 12, 8, 9, 17, 9, 24, 37, 45, 37, 51, 48, 49, 53, 28.26429 + 57, 48, 49, 26, 49, 127, 162, 158, 118, 115, 130, 148, 159, 163, 171, 177, 28.26430 + 182, 189, 194, 181, 120, 59, 83, 106, 178, 213, 212, 213, 198, 183, 170, 165, 28.26431 + 161, 165, 158, 154, 154, 131, 122, 17, 12, 13, 22, 20, 6, 166, 161, 155, 28.26432 + 153, 161, 224, 222, 186, 120, 108, 123, 146, 155, 161, 165, 161, 162, 158, 146, 28.26433 + 128, 135, 134, 128, 87, 37, 38, 65, 76, 116, 132, 118, 114, 71, 147, 174, 28.26434 + 181, 178, 171, 190, 186, 186, 179, 182, 148, 128, 37, 120, 189, 179, 175, 174, 28.26435 + 165, 151, 143, 104, 89, 46, 142, 159, 150, 151, 148, 153, 147, 148, 241, 229, 28.26436 + 234, 102, 92, 107, 131, 139, 151, 166, 171, 173, 162, 161, 147, 138, 131, 32, 28.26437 + 26, 29, 59, 57, 84, 102, 92, 93, 87, 107, 49, 147, 135, 173, 224, 221, 28.26438 + 217, 123, 114, 120, 140, 143, 154, 159, 173, 183, 185, 183, 182, 179, 174, 165, 28.26439 + 100, 52, 48, 52, 59, 89, 148, 205, 201, 167, 157, 175, 182, 194, 201, 204, 28.26440 + 205, 204, 204, 197, 178, 167, 95, 55, 44, 46, 41, 73, 102, 118, 132, 204, 28.26441 + 216, 201, 174, 190, 191, 186, 190, 175, 174, 144, 135, 126, 126, 84, 61, 80, 28.26442 + 83, 84, 99, 131, 126, 131, 127, 134, 132, 151, 213, 245, 244, 246, 248, 222, 28.26443 + 163, 119, 115, 114, 118, 138, 126, 75, 55, 49, 57, 49, 68, 115, 183, 195, 28.26444 + 189, 163, 170, 170, 174, 131, 131, 122, 99, 64, 97, 99, 108, 96, 95, 95, 28.26445 + 99, 88, 89, 165, 162, 158, 153, 150, 144, 136, 144, 128, 114, 95, 119, 161, 28.26446 + 159, 151, 150, 144, 148, 148, 155, 144, 142, 106, 29, 115, 104, 93, 87, 85, 28.26447 + 91, 95, 107, 83, 63, 41, 116, 127, 119, 144, 245, 244, 238, 107, 100, 114, 28.26448 + 135, 144, 154, 165, 171, 173, 175, 165, 161, 142, 131, 134, 134, 122, 13, 22, 28.26449 + 38, 71, 77, 95, 95, 103, 87, 92, 97, 87, 57, 106, 132, 124, 114, 110, 28.26450 + 119, 115, 118, 119, 179, 228, 216, 218, 208, 174, 119, 103, 85, 103, 91, 87, 28.26451 + 92, 83, 206, 208, 195, 126, 128, 138, 144, 138, 139, 147, 140, 139, 126, 120, 28.26452 + 77, 28, 22, 42, 57, 75, 76, 83, 96, 73, 57, 85, 123, 163, 236, 244, 28.26453 + 240, 120, 104, 115, 128, 144, 151, 165, 171, 166, 158, 88, 40, 26, 24, 28, 28.26454 + 33, 18, 69, 104, 204, 208, 204, 128, 150, 153, 158, 128, 135, 138, 128, 130, 28.26455 + 116, 45, 37, 41, 55, 60, 67, 75, 72, 87, 220, 214, 199, 114, 114, 119, 28.26456 + 132, 147, 155, 159, 171, 175, 178, 179, 175, 171, 169, 154, 89, 28, 13, 17, 28.26457 + 17, 17, 24, 24, 34, 42, 45, 46, 42, 45, 41, 45, 51, 41, 53, 80, 28.26458 + 175, 240, 240, 241, 237, 232, 197, 177, 154, 153, 151, 155, 158, 162, 167, 171, 28.26459 + 175, 179, 183, 186, 197, 198, 206, 201, 202, 199, 199, 201, 202, 199, 191, 181, 28.26460 + 171, 157, 148, 131, 122, 77, 30, 38, 53, 59, 55, 65, 51, 60, 69, 71, 28.26461 + 71, 59, 56, 56, 97, 199, 208, 197, 110, 107, 116, 132, 142, 158, 166, 170, 28.26462 + 170, 171, 170, 173, 170, 169, 153, 99, 29, 16, 9, 12, 12, 12, 13, 13, 28.26463 + 22, 18, 12, 40, 49, 53, 51, 53, 42, 40, 34, 44, 46, 56, 12, 51, 28.26464 + 107, 146, 170, 132, 112, 122, 142, 153, 159, 166, 173, 179, 186, 199, 198, 187, 28.26465 + 139, 114, 153, 208, 206, 214, 212, 195, 197, 178, 183, 169, 165, 163, 157, 154, 28.26466 + 138, 122, 24, 12, 5, 30, 5, 59, 146, 155, 155, 146, 147, 214, 226, 208, 28.26467 + 122, 106, 118, 143, 154, 159, 161, 162, 159, 155, 136, 136, 135, 132, 127, 103, 28.26468 + 40, 42, 67, 88, 118, 126, 111, 123, 83, 151, 190, 186, 189, 187, 183, 186, 28.26469 + 186, 187, 171, 144, 130, 36, 127, 182, 194, 204, 186, 171, 157, 148, 114, 92, 28.26470 + 51, 134, 154, 151, 159, 150, 148, 142, 153, 241, 236, 232, 93, 93, 106, 128, 28.26471 + 136, 148, 165, 173, 170, 165, 161, 150, 139, 130, 32, 28, 25, 60, 71, 84, 28.26472 + 104, 95, 95, 87, 103, 51, 136, 142, 175, 229, 226, 220, 124, 120, 119, 128, 28.26473 + 142, 158, 162, 175, 182, 186, 186, 182, 179, 171, 147, 67, 49, 44, 52, 77, 28.26474 + 83, 135, 198, 206, 175, 154, 157, 177, 187, 198, 204, 204, 205, 205, 201, 197, 28.26475 + 181, 131, 63, 48, 44, 52, 76, 106, 122, 128, 201, 221, 213, 178, 174, 189, 28.26476 + 177, 189, 175, 169, 151, 138, 130, 134, 97, 57, 67, 83, 80, 96, 120, 140, 28.26477 + 143, 135, 126, 146, 167, 233, 238, 244, 245, 228, 148, 116, 116, 118, 123, 142, 28.26478 + 144, 92, 63, 48, 41, 53, 52, 73, 131, 199, 194, 167, 169, 174, 171, 178, 28.26479 + 142, 135, 118, 111, 89, 61, 85, 83, 92, 83, 93, 95, 83, 37, 154, 166, 28.26480 + 143, 159, 153, 159, 166, 162, 143, 114, 93, 112, 165, 155, 153, 146, 144, 148, 28.26481 + 147, 144, 146, 151, 65, 30, 81, 106, 100, 88, 88, 88, 91, 99, 68, 63, 28.26482 + 38, 118, 128, 115, 131, 242, 245, 241, 111, 102, 112, 134, 146, 151, 165, 171, 28.26483 + 174, 178, 165, 161, 136, 130, 131, 132, 120, 13, 22, 26, 42, 79, 92, 107, 28.26484 + 103, 92, 106, 89, 95, 61, 93, 136, 115, 127, 115, 107, 120, 115, 126, 208, 28.26485 + 228, 213, 217, 195, 153, 115, 89, 75, 85, 92, 87, 93, 85, 213, 210, 202, 28.26486 + 130, 130, 136, 140, 143, 144, 134, 147, 136, 123, 119, 65, 28, 24, 41, 63, 28.26487 + 75, 75, 81, 106, 76, 52, 84, 124, 159, 234, 242, 240, 123, 106, 116, 127, 28.26488 + 140, 148, 166, 169, 167, 147, 67, 33, 25, 25, 29, 38, 24, 69, 102, 205, 28.26489 + 209, 233, 130, 150, 150, 150, 140, 134, 130, 128, 124, 114, 40, 37, 34, 56, 28.26490 + 56, 67, 65, 75, 88, 224, 221, 209, 114, 111, 120, 131, 144, 155, 159, 171, 28.26491 + 177, 178, 177, 173, 169, 162, 115, 37, 14, 17, 17, 14, 18, 24, 36, 46, 28.26492 + 52, 52, 45, 46, 45, 46, 49, 49, 52, 59, 100, 220, 237, 237, 230, 217, 28.26493 + 181, 147, 135, 138, 143, 151, 161, 170, 178, 190, 199, 202, 206, 208, 205, 189, 28.26494 + 193, 198, 199, 202, 205, 209, 208, 209, 206, 185, 181, 166, 157, 150, 135, 131, 28.26495 + 97, 37, 36, 44, 51, 68, 60, 61, 65, 48, 45, 64, 72, 71, 73, 87, 28.26496 + 201, 213, 202, 112, 108, 118, 132, 143, 157, 166, 170, 171, 171, 175, 174, 170, 28.26497 + 161, 119, 42, 20, 10, 12, 14, 16, 13, 14, 17, 17, 17, 8, 44, 52, 28.26498 + 45, 40, 41, 46, 41, 34, 48, 51, 48, 14, 53, 96, 120, 166, 144, 116, 28.26499 + 112, 131, 140, 158, 165, 171, 177, 186, 193, 204, 201, 199, 185, 208, 213, 213, 28.26500 + 214, 216, 199, 187, 185, 178, 171, 173, 163, 157, 155, 139, 127, 18, 12, 9, 28.26501 + 20, 6, 1, 169, 146, 148, 143, 124, 175, 225, 217, 130, 104, 114, 132, 148, 28.26502 + 155, 161, 162, 162, 159, 147, 131, 136, 130, 131, 115, 46, 45, 65, 75, 112, 28.26503 + 130, 116, 135, 81, 120, 179, 187, 185, 183, 183, 185, 190, 181, 169, 148, 134, 28.26504 + 42, 157, 194, 218, 218, 226, 197, 167, 153, 131, 91, 49, 135, 154, 158, 151, 28.26505 + 147, 148, 142, 148, 240, 241, 225, 99, 92, 103, 122, 135, 148, 166, 171, 171, 28.26506 + 165, 162, 151, 140, 131, 33, 28, 33, 61, 69, 79, 89, 107, 108, 76, 99, 28.26507 + 69, 131, 139, 157, 230, 226, 224, 131, 122, 128, 128, 146, 143, 166, 171, 185, 28.26508 + 178, 186, 183, 173, 169, 130, 56, 45, 37, 52, 65, 85, 119, 193, 209, 191, 28.26509 + 155, 153, 171, 183, 194, 197, 204, 205, 208, 205, 201, 186, 167, 79, 48, 42, 28.26510 + 49, 79, 106, 122, 130, 186, 225, 218, 187, 187, 185, 189, 189, 179, 163, 151, 28.26511 + 140, 131, 123, 111, 64, 61, 80, 79, 91, 126, 146, 123, 123, 136, 140, 201, 28.26512 + 237, 241, 245, 234, 159, 119, 119, 123, 130, 146, 144, 150, 81, 60, 46, 33, 28.26513 + 59, 57, 88, 112, 205, 201, 169, 170, 174, 166, 169, 169, 135, 128, 124, 99, 28.26514 + 60, 65, 81, 85, 81, 84, 95, 92, 64, 159, 173, 148, 159, 154, 158, 166, 28.26515 + 151, 138, 132, 81, 131, 166, 158, 143, 147, 144, 154, 150, 148, 150, 144, 92, 28.26516 + 0, 102, 102, 91, 85, 89, 106, 110, 93, 65, 63, 34, 108, 124, 110, 130, 28.26517 + 245, 242, 232, 110, 100, 114, 132, 142, 157, 165, 169, 174, 175, 162, 157, 146, 28.26518 + 136, 131, 130, 116, 14, 24, 29, 49, 80, 99, 106, 102, 93, 103, 91, 89, 28.26519 + 57, 103, 126, 110, 118, 122, 116, 114, 112, 130, 220, 226, 230, 226, 189, 127, 28.26520 + 102, 72, 65, 87, 81, 85, 89, 88, 217, 213, 209, 132, 130, 140, 142, 147, 28.26521 + 142, 135, 153, 134, 119, 115, 55, 26, 22, 38, 63, 75, 72, 81, 93, 81, 28.26522 + 46, 103, 120, 126, 232, 241, 237, 122, 107, 116, 126, 139, 147, 167, 167, 165, 28.26523 + 144, 49, 28, 24, 26, 30, 33, 21, 67, 103, 206, 208, 209, 148, 140, 144, 28.26524 + 143, 139, 132, 131, 124, 122, 107, 36, 32, 33, 52, 57, 63, 68, 69, 83, 28.26525 + 229, 224, 216, 116, 111, 122, 132, 142, 154, 161, 171, 177, 178, 173, 161, 166, 28.26526 + 140, 53, 14, 17, 18, 16, 25, 26, 26, 55, 60, 56, 53, 52, 55, 51, 28.26527 + 52, 59, 49, 46, 76, 183, 217, 233, 220, 197, 162, 138, 126, 134, 144, 159, 28.26528 + 171, 181, 187, 197, 206, 216, 218, 221, 222, 221, 218, 202, 197, 201, 194, 190, 28.26529 + 189, 213, 212, 210, 187, 182, 163, 159, 153, 139, 131, 107, 53, 34, 36, 60, 28.26530 + 59, 69, 61, 57, 48, 55, 40, 51, 67, 45, 73, 198, 217, 209, 112, 108, 28.26531 + 118, 134, 142, 158, 165, 169, 171, 173, 175, 170, 166, 140, 56, 18, 14, 13, 28.26532 + 16, 16, 18, 18, 17, 14, 17, 17, 8, 48, 52, 38, 40, 38, 42, 32, 28.26533 + 37, 55, 41, 55, 13, 51, 80, 102, 130, 163, 123, 112, 118, 135, 153, 163, 28.26534 + 169, 173, 181, 190, 199, 206, 206, 209, 212, 208, 212, 224, 213, 195, 189, 189, 28.26535 + 179, 174, 165, 165, 157, 155, 138, 124, 16, 12, 5, 12, 63, 72, 162, 135, 28.26536 + 144, 140, 135, 153, 213, 220, 144, 104, 112, 127, 144, 153, 157, 159, 166, 167, 28.26537 + 161, 150, 124, 124, 128, 122, 57, 44, 67, 69, 110, 127, 115, 118, 114, 85, 28.26538 + 165, 186, 187, 190, 187, 187, 186, 182, 165, 153, 139, 57, 195, 212, 228, 212, 28.26539 + 205, 201, 214, 165, 142, 93, 52, 130, 148, 147, 139, 142, 146, 135, 138, 241, 28.26540 + 241, 230, 103, 95, 99, 116, 132, 150, 165, 174, 173, 165, 162, 150, 140, 130, 28.26541 + 34, 28, 33, 65, 68, 77, 92, 108, 104, 102, 93, 72, 124, 139, 147, 230, 28.26542 + 229, 225, 130, 110, 119, 128, 135, 139, 155, 166, 178, 186, 187, 183, 170, 161, 28.26543 + 110, 49, 44, 36, 52, 77, 92, 115, 186, 217, 201, 159, 148, 161, 178, 187, 28.26544 + 197, 197, 202, 206, 208, 205, 198, 183, 108, 49, 44, 49, 79, 107, 115, 123, 28.26545 + 166, 225, 222, 191, 173, 183, 190, 179, 167, 146, 140, 142, 135, 124, 122, 79, 28.26546 + 61, 75, 75, 91, 124, 147, 132, 127, 132, 131, 209, 240, 242, 242, 193, 126, 28.26547 + 120, 127, 132, 132, 148, 151, 153, 76, 48, 44, 36, 52, 57, 77, 115, 208, 28.26548 + 209, 187, 167, 173, 170, 167, 171, 139, 136, 122, 96, 53, 56, 84, 71, 80, 28.26549 + 85, 100, 71, 97, 154, 159, 151, 146, 144, 151, 148, 150, 136, 111, 64, 139, 28.26550 + 165, 158, 144, 151, 144, 151, 151, 148, 142, 140, 83, 0, 106, 99, 96, 85, 28.26551 + 91, 76, 68, 65, 75, 64, 34, 111, 123, 116, 126, 241, 241, 226, 106, 100, 28.26552 + 114, 135, 146, 155, 165, 170, 169, 177, 175, 163, 155, 139, 124, 126, 114, 14, 28.26553 + 24, 34, 63, 79, 93, 106, 106, 110, 107, 88, 95, 57, 97, 127, 110, 107, 28.26554 + 118, 104, 118, 112, 138, 222, 233, 230, 179, 128, 118, 80, 64, 69, 80, 79, 28.26555 + 77, 84, 88, 218, 220, 216, 135, 130, 139, 146, 159, 148, 147, 150, 122, 118, 28.26556 + 111, 41, 25, 24, 37, 63, 71, 73, 81, 95, 81, 41, 112, 122, 104, 228, 28.26557 + 240, 236, 123, 106, 116, 127, 142, 148, 167, 166, 161, 136, 42, 26, 25, 29, 28.26558 + 28, 30, 24, 61, 111, 210, 216, 208, 143, 138, 140, 146, 139, 134, 132, 132, 28.26559 + 115, 104, 32, 29, 29, 48, 51, 53, 71, 81, 83, 229, 229, 220, 118, 112, 28.26560 + 123, 131, 143, 155, 162, 166, 178, 173, 167, 165, 155, 100, 28, 16, 18, 18, 28.26561 + 18, 17, 21, 26, 49, 64, 84, 83, 81, 79, 68, 57, 46, 59, 68, 131, 28.26562 + 220, 228, 213, 179, 144, 127, 126, 139, 148, 161, 174, 181, 190, 197, 204, 213, 28.26563 + 204, 154, 123, 150, 198, 222, 220, 205, 198, 193, 201, 202, 213, 209, 206, 186, 28.26564 + 178, 166, 159, 150, 135, 128, 114, 72, 36, 29, 51, 55, 68, 72, 57, 46, 28.26565 + 53, 48, 55, 68, 32, 87, 205, 220, 216, 115, 108, 120, 134, 142, 158, 165, 28.26566 + 170, 173, 174, 175, 167, 155, 99, 29, 18, 16, 16, 17, 21, 22, 18, 17, 28.26567 + 17, 18, 20, 12, 48, 57, 45, 40, 30, 36, 37, 52, 48, 38, 40, 12, 28.26568 + 52, 69, 88, 110, 162, 157, 114, 106, 127, 147, 159, 167, 173, 179, 190, 191, 28.26569 + 197, 205, 202, 204, 216, 220, 213, 202, 194, 191, 186, 181, 173, 166, 166, 157, 28.26570 + 154, 136, 123, 13, 9, 9, 17, 5, 10, 155, 166, 144, 136, 134, 119, 175, 28.26571 + 218, 175, 106, 108, 119, 136, 147, 153, 159, 169, 163, 165, 155, 124, 120, 130, 28.26572 + 126, 73, 44, 56, 76, 99, 127, 124, 128, 110, 84, 161, 185, 190, 186, 189, 28.26573 + 187, 187, 185, 169, 157, 135, 57, 201, 218, 225, 217, 220, 202, 195, 162, 138, 28.26574 + 88, 56, 124, 154, 147, 154, 142, 146, 135, 155, 241, 241, 233, 108, 95, 97, 28.26575 + 111, 138, 148, 165, 171, 171, 166, 161, 150, 142, 132, 37, 32, 25, 65, 72, 28.26576 + 67, 80, 107, 110, 114, 76, 48, 120, 134, 148, 230, 228, 221, 122, 108, 119, 28.26577 + 130, 126, 130, 144, 161, 174, 182, 181, 179, 165, 151, 84, 44, 42, 33, 55, 28.26578 + 88, 87, 112, 173, 217, 208, 163, 146, 151, 171, 182, 189, 194, 195, 199, 206, 28.26579 + 208, 199, 190, 151, 60, 46, 44, 75, 104, 114, 124, 150, 224, 225, 194, 174, 28.26580 + 185, 185, 177, 155, 144, 136, 143, 142, 127, 127, 92, 59, 67, 75, 87, 126, 28.26581 + 150, 128, 116, 119, 138, 217, 234, 242, 238, 159, 120, 127, 134, 138, 142, 151, 28.26582 + 154, 158, 72, 49, 42, 28, 53, 57, 77, 108, 208, 214, 206, 173, 173, 173, 28.26583 + 169, 174, 144, 140, 120, 93, 46, 49, 65, 79, 71, 83, 85, 83, 83, 161, 28.26584 + 158, 153, 147, 150, 151, 147, 157, 132, 99, 81, 108, 151, 157, 147, 150, 150, 28.26585 + 148, 150, 148, 148, 138, 83, 24, 103, 96, 96, 81, 88, 95, 71, 72, 84, 28.26586 + 56, 36, 120, 124, 116, 131, 240, 236, 179, 102, 100, 114, 134, 142, 151, 158, 28.26587 + 166, 169, 177, 177, 171, 161, 146, 126, 126, 118, 16, 26, 37, 72, 71, 95, 28.26588 + 99, 103, 108, 96, 92, 83, 55, 110, 119, 108, 111, 115, 110, 118, 116, 144, 28.26589 + 233, 236, 229, 150, 118, 102, 69, 60, 65, 80, 76, 76, 88, 97, 216, 220, 28.26590 + 216, 136, 130, 143, 166, 163, 163, 158, 148, 119, 118, 111, 37, 26, 25, 40, 28.26591 + 61, 72, 73, 83, 84, 68, 42, 79, 119, 131, 226, 238, 237, 126, 106, 118, 28.26592 + 126, 140, 148, 169, 167, 162, 128, 40, 26, 25, 30, 30, 33, 25, 61, 107, 28.26593 + 209, 214, 229, 122, 135, 136, 142, 134, 138, 142, 135, 114, 92, 30, 29, 30, 28.26594 + 49, 49, 49, 67, 64, 84, 234, 225, 218, 116, 112, 123, 134, 144, 157, 163, 28.26595 + 166, 177, 171, 165, 163, 142, 56, 18, 18, 18, 18, 24, 26, 22, 56, 61, 28.26596 + 79, 73, 75, 80, 88, 69, 51, 45, 56, 89, 204, 225, 222, 195, 135, 114, 28.26597 + 126, 136, 148, 161, 173, 179, 187, 190, 201, 206, 208, 111, 72, 67, 77, 112, 28.26598 + 161, 224, 213, 208, 194, 202, 210, 214, 212, 199, 182, 179, 171, 162, 150, 135, 28.26599 + 123, 118, 84, 41, 45, 51, 56, 63, 61, 56, 45, 56, 53, 51, 67, 46, 28.26600 + 72, 218, 221, 218, 116, 111, 122, 135, 143, 157, 165, 169, 171, 175, 170, 162, 28.26601 + 139, 59, 18, 14, 17, 20, 25, 22, 21, 17, 17, 22, 21, 22, 13, 53, 28.26602 + 61, 46, 44, 49, 44, 48, 53, 33, 40, 41, 10, 49, 65, 85, 89, 138, 28.26603 + 171, 122, 104, 123, 139, 157, 165, 173, 178, 185, 191, 194, 194, 193, 193, 197, 28.26604 + 204, 206, 202, 198, 198, 187, 178, 174, 165, 166, 158, 155, 138, 118, 12, 10, 28.26605 + 6, 25, 9, 9, 148, 147, 144, 130, 134, 122, 153, 206, 205, 111, 107, 115, 28.26606 + 124, 143, 154, 161, 170, 166, 167, 155, 120, 122, 130, 127, 100, 48, 51, 60, 28.26607 + 72, 95, 135, 124, 112, 79, 138, 186, 187, 186, 189, 186, 189, 185, 167, 153, 28.26608 + 144, 45, 212, 224, 225, 218, 202, 181, 155, 138, 127, 84, 55, 95, 148, 154, 28.26609 + 165, 138, 143, 136, 146, 242, 242, 234, 108, 97, 95, 114, 131, 144, 162, 170, 28.26610 + 171, 167, 158, 147, 143, 132, 37, 33, 38, 69, 75, 89, 93, 93, 103, 106, 28.26611 + 89, 72, 110, 130, 142, 229, 236, 225, 130, 118, 118, 123, 123, 126, 134, 147, 28.26612 + 162, 181, 181, 165, 163, 146, 69, 44, 38, 29, 53, 81, 85, 104, 163, 213, 28.26613 + 213, 178, 143, 144, 163, 174, 181, 187, 191, 194, 199, 204, 201, 190, 178, 87, 28.26614 + 45, 42, 75, 97, 114, 124, 142, 220, 225, 198, 173, 183, 187, 167, 150, 131, 28.26615 + 126, 130, 135, 130, 127, 107, 64, 59, 73, 81, 120, 139, 126, 116, 131, 140, 28.26616 + 216, 233, 241, 221, 144, 124, 131, 138, 136, 153, 157, 162, 165, 69, 49, 45, 28.26617 + 32, 53, 64, 71, 106, 208, 218, 214, 175, 174, 177, 170, 173, 147, 138, 120, 28.26618 + 92, 42, 44, 64, 64, 61, 71, 79, 32, 84, 154, 148, 151, 153, 153, 147, 28.26619 + 147, 162, 134, 93, 73, 140, 163, 146, 151, 153, 159, 163, 157, 146, 146, 144, 28.26620 + 63, 32, 79, 92, 93, 79, 85, 72, 71, 75, 68, 63, 37, 115, 123, 116, 28.26621 + 126, 237, 234, 165, 99, 97, 112, 122, 134, 144, 154, 165, 169, 179, 175, 171, 28.26622 + 161, 147, 126, 127, 119, 17, 28, 29, 52, 69, 80, 97, 103, 103, 97, 92, 28.26623 + 89, 53, 89, 116, 106, 107, 106, 104, 108, 116, 175, 244, 236, 220, 131, 114, 28.26624 + 95, 56, 59, 63, 76, 73, 75, 85, 96, 218, 220, 214, 136, 131, 142, 166, 28.26625 + 159, 163, 151, 153, 116, 118, 108, 38, 25, 25, 41, 61, 69, 75, 75, 79, 28.26626 + 69, 34, 80, 123, 128, 228, 238, 236, 123, 107, 114, 126, 142, 151, 169, 163, 28.26627 + 166, 127, 36, 25, 26, 34, 28, 42, 26, 57, 97, 206, 214, 210, 135, 130, 28.26628 + 132, 142, 136, 135, 138, 134, 112, 85, 28, 26, 29, 45, 48, 53, 61, 68, 28.26629 + 100, 233, 234, 221, 116, 111, 123, 134, 144, 158, 165, 167, 174, 169, 165, 161, 28.26630 + 112, 36, 18, 20, 21, 18, 22, 18, 16, 63, 67, 80, 95, 84, 71, 89, 28.26631 + 68, 61, 55, 64, 142, 216, 220, 212, 166, 111, 120, 134, 144, 159, 171, 174, 28.26632 + 185, 185, 194, 201, 209, 170, 80, 46, 33, 37, 55, 110, 204, 222, 213, 199, 28.26633 + 191, 213, 213, 210, 208, 193, 178, 173, 161, 148, 132, 118, 119, 93, 45, 44, 28.26634 + 45, 65, 56, 61, 69, 44, 55, 49, 59, 60, 36, 81, 218, 228, 218, 116, 28.26635 + 112, 122, 135, 140, 157, 165, 165, 169, 170, 165, 159, 112, 37, 17, 16, 21, 28.26636 + 24, 28, 25, 20, 18, 20, 25, 20, 22, 12, 49, 49, 56, 41, 52, 48, 28.26637 + 48, 48, 46, 41, 37, 14, 45, 61, 71, 72, 97, 162, 136, 103, 111, 134, 28.26638 + 151, 162, 170, 175, 182, 189, 197, 197, 198, 197, 195, 194, 198, 209, 199, 199, 28.26639 + 190, 182, 173, 167, 169, 158, 153, 136, 123, 13, 9, 6, 18, 12, 9, 136, 28.26640 + 134, 130, 132, 119, 119, 119, 173, 204, 136, 102, 107, 116, 140, 153, 159, 165, 28.26641 + 171, 163, 148, 128, 123, 131, 126, 116, 55, 56, 76, 72, 89, 128, 111, 130, 28.26642 + 89, 132, 169, 182, 190, 187, 190, 186, 179, 155, 155, 146, 52, 212, 229, 229, 28.26643 + 220, 167, 144, 127, 120, 103, 73, 55, 79, 132, 148, 159, 136, 135, 132, 148, 28.26644 + 241, 241, 230, 104, 95, 99, 119, 131, 142, 162, 167, 170, 165, 158, 148, 146, 28.26645 + 131, 40, 36, 38, 69, 75, 83, 83, 76, 99, 93, 95, 84, 91, 134, 155, 28.26646 + 233, 233, 226, 130, 120, 126, 122, 120, 124, 136, 151, 147, 157, 159, 154, 158, 28.26647 + 138, 53, 40, 36, 29, 49, 56, 79, 104, 134, 208, 213, 187, 140, 142, 154, 28.26648 + 167, 175, 177, 179, 186, 194, 201, 199, 195, 190, 114, 48, 41, 76, 89, 111, 28.26649 + 120, 132, 214, 225, 206, 177, 182, 187, 167, 158, 148, 147, 142, 127, 131, 123, 28.26650 + 114, 71, 59, 69, 67, 111, 131, 114, 111, 128, 134, 217, 236, 241, 190, 135, 28.26651 + 130, 135, 140, 138, 151, 157, 162, 165, 68, 46, 44, 30, 53, 61, 84, 102, 28.26652 + 208, 220, 220, 177, 178, 175, 166, 175, 150, 138, 123, 88, 42, 38, 46, 57, 28.26653 + 61, 67, 83, 52, 122, 155, 161, 157, 150, 158, 147, 151, 134, 134, 128, 67, 28.26654 + 134, 155, 163, 161, 167, 161, 158, 151, 157, 150, 136, 93, 0, 91, 93, 81, 28.26655 + 79, 76, 71, 68, 71, 69, 67, 36, 96, 122, 108, 127, 234, 229, 178, 103, 28.26656 + 102, 110, 114, 126, 135, 151, 163, 171, 175, 178, 165, 159, 143, 127, 132, 114, 28.26657 + 18, 28, 30, 52, 65, 81, 96, 100, 93, 106, 92, 87, 49, 91, 107, 110, 28.26658 + 97, 110, 108, 104, 124, 209, 240, 237, 216, 130, 114, 76, 55, 52, 61, 63, 28.26659 + 71, 65, 84, 92, 214, 220, 210, 134, 132, 144, 169, 163, 157, 151, 148, 119, 28.26660 + 118, 106, 33, 24, 28, 41, 57, 69, 72, 81, 80, 76, 30, 93, 118, 104, 28.26661 + 224, 237, 232, 122, 108, 119, 127, 142, 157, 169, 166, 163, 120, 41, 28, 25, 28.26662 + 22, 33, 38, 24, 48, 87, 206, 212, 202, 132, 128, 131, 142, 140, 130, 135, 28.26663 + 134, 114, 87, 25, 24, 22, 38, 46, 56, 59, 64, 87, 234, 228, 222, 116, 28.26664 + 111, 123, 135, 144, 158, 166, 169, 173, 163, 161, 148, 77, 22, 21, 22, 20, 28.26665 + 21, 28, 26, 16, 51, 69, 81, 89, 88, 72, 83, 71, 59, 55, 57, 166, 28.26666 + 212, 220, 202, 134, 107, 122, 135, 150, 163, 169, 181, 186, 190, 197, 202, 212, 28.26667 + 136, 53, 29, 28, 33, 51, 89, 167, 225, 214, 209, 186, 213, 217, 218, 209, 28.26668 + 197, 181, 173, 163, 148, 135, 123, 123, 108, 53, 45, 41, 45, 57, 61, 55, 28.26669 + 30, 53, 41, 71, 55, 45, 69, 212, 228, 226, 115, 110, 120, 134, 142, 155, 28.26670 + 166, 162, 170, 169, 163, 148, 84, 25, 18, 20, 21, 26, 24, 25, 25, 22, 28.26671 + 25, 24, 22, 22, 12, 49, 55, 40, 51, 52, 48, 49, 48, 48, 36, 34, 28.26672 + 6, 38, 52, 59, 72, 87, 128, 155, 118, 102, 122, 143, 159, 167, 177, 179, 28.26673 + 186, 193, 187, 186, 189, 199, 195, 190, 195, 208, 201, 191, 183, 177, 169, 170, 28.26674 + 159, 154, 143, 123, 8, 12, 8, 10, 16, 2, 127, 126, 126, 114, 104, 102, 28.26675 + 108, 142, 201, 185, 102, 106, 116, 139, 151, 158, 159, 158, 154, 150, 120, 122, 28.26676 + 123, 128, 131, 79, 55, 61, 69, 79, 122, 123, 126, 103, 104, 157, 169, 173, 28.26677 + 178, 167, 170, 171, 161, 158, 150, 64, 216, 230, 234, 198, 163, 126, 119, 123, 28.26678 + 93, 73, 60, 69, 88, 106, 120, 114, 135, 123, 136, 240, 240, 222, 104, 95, 28.26679 + 102, 116, 126, 138, 159, 170, 167, 165, 158, 146, 146, 130, 42, 38, 42, 65, 28.26680 + 75, 60, 84, 84, 69, 96, 104, 80, 85, 128, 147, 233, 233, 225, 131, 107, 28.26681 + 114, 130, 130, 128, 139, 142, 139, 151, 150, 153, 154, 134, 52, 41, 40, 29, 28.26682 + 51, 63, 83, 107, 120, 199, 214, 195, 147, 139, 144, 159, 167, 169, 173, 179, 28.26683 + 187, 194, 197, 194, 191, 148, 60, 44, 68, 85, 104, 110, 122, 205, 226, 214, 28.26684 + 178, 178, 187, 174, 163, 158, 151, 148, 144, 127, 120, 123, 91, 59, 68, 65, 28.26685 + 104, 131, 150, 124, 122, 124, 198, 237, 241, 185, 130, 135, 142, 144, 140, 151, 28.26686 + 161, 165, 166, 68, 48, 41, 30, 44, 57, 76, 107, 216, 221, 221, 177, 177, 28.26687 + 178, 170, 174, 151, 138, 126, 89, 41, 38, 44, 53, 77, 57, 87, 51, 115, 28.26688 + 128, 118, 127, 128, 130, 127, 131, 127, 127, 95, 53, 131, 146, 150, 143, 155, 28.26689 + 147, 139, 136, 148, 144, 126, 61, 0, 92, 76, 76, 69, 81, 72, 85, 69, 28.26690 + 77, 61, 34, 99, 118, 115, 124, 238, 237, 220, 106, 102, 106, 115, 114, 135, 28.26691 + 155, 165, 177, 179, 170, 159, 148, 132, 127, 124, 111, 22, 29, 33, 48, 68, 28.26692 + 79, 92, 96, 100, 102, 88, 84, 51, 89, 110, 108, 100, 102, 106, 108, 136, 28.26693 + 226, 238, 241, 217, 131, 110, 67, 51, 45, 71, 56, 68, 69, 72, 83, 214, 28.26694 + 213, 209, 130, 132, 143, 162, 157, 155, 146, 138, 119, 115, 100, 33, 22, 26, 28.26695 + 40, 51, 68, 71, 76, 96, 75, 28, 104, 118, 111, 220, 236, 228, 126, 110, 28.26696 + 118, 128, 144, 157, 163, 165, 166, 134, 49, 28, 28, 33, 33, 40, 25, 45, 28.26697 + 81, 206, 202, 199, 124, 131, 130, 142, 132, 134, 131, 134, 114, 81, 22, 24, 28.26698 + 21, 46, 42, 45, 48, 61, 83, 233, 230, 224, 118, 111, 120, 131, 144, 158, 28.26699 + 166, 171, 171, 161, 159, 144, 57, 21, 21, 21, 22, 20, 20, 29, 16, 69, 28.26700 + 75, 76, 68, 63, 71, 69, 68, 61, 51, 59, 173, 210, 202, 190, 118, 110, 28.26701 + 122, 135, 148, 170, 170, 183, 189, 189, 197, 202, 205, 122, 48, 33, 28, 28, 28.26702 + 41, 68, 142, 226, 218, 212, 194, 209, 213, 214, 213, 205, 182, 178, 163, 154, 28.26703 + 136, 126, 120, 114, 75, 48, 51, 46, 51, 63, 55, 44, 41, 38, 37, 36, 28.26704 + 34, 65, 198, 226, 226, 118, 110, 120, 134, 139, 155, 162, 161, 169, 166, 157, 28.26705 + 139, 63, 21, 18, 20, 24, 26, 29, 25, 24, 24, 22, 22, 22, 26, 16, 28.26706 + 42, 49, 51, 56, 52, 51, 51, 49, 51, 32, 36, 6, 37, 46, 60, 65, 28.26707 + 79, 87, 162, 136, 102, 112, 139, 154, 165, 174, 181, 183, 185, 186, 183, 186, 28.26708 + 190, 201, 201, 189, 197, 199, 195, 189, 178, 169, 171, 161, 157, 142, 123, 8, 28.26709 + 9, 8, 18, 13, 5, 127, 102, 114, 126, 92, 88, 84, 95, 146, 209, 128, 28.26710 + 102, 112, 128, 144, 150, 158, 159, 151, 132, 119, 120, 120, 124, 127, 110, 63, 28.26711 + 65, 73, 76, 91, 100, 99, 106, 124, 146, 127, 130, 138, 131, 134, 127, 162, 28.26712 + 157, 146, 56, 195, 230, 236, 182, 138, 124, 119, 116, 92, 67, 59, 72, 76, 28.26713 + 87, 92, 91, 92, 130, 136, 241, 238, 229, 108, 88, 96, 114, 115, 135, 151, 28.26714 + 162, 167, 165, 158, 144, 143, 132, 42, 38, 24, 61, 65, 68, 76, 57, 53, 28.26715 + 75, 89, 83, 75, 124, 136, 232, 233, 232, 127, 102, 114, 123, 131, 143, 144, 28.26716 + 140, 136, 142, 136, 151, 150, 128, 56, 38, 40, 24, 49, 52, 81, 91, 114, 28.26717 + 193, 214, 198, 147, 136, 139, 153, 159, 165, 167, 174, 182, 190, 193, 191, 189, 28.26718 + 169, 81, 48, 56, 81, 96, 108, 123, 193, 229, 220, 183, 173, 187, 190, 161, 28.26719 + 170, 165, 155, 150, 144, 130, 122, 116, 71, 64, 61, 96, 130, 140, 115, 107, 28.26720 + 128, 191, 225, 240, 171, 128, 138, 144, 147, 139, 153, 169, 171, 173, 75, 55, 28.26721 + 38, 29, 42, 55, 89, 116, 222, 225, 222, 182, 179, 178, 173, 174, 155, 142, 28.26722 + 128, 87, 38, 41, 41, 44, 48, 46, 60, 71, 71, 103, 103, 107, 108, 116, 28.26723 + 110, 100, 124, 123, 60, 61, 51, 122, 110, 96, 89, 116, 95, 83, 77, 110, 28.26724 + 76, 14, 51, 75, 64, 45, 48, 56, 48, 44, 44, 61, 49, 37, 89, 104, 28.26725 + 118, 135, 240, 234, 228, 107, 106, 110, 114, 122, 136, 162, 165, 170, 177, 173, 28.26726 + 162, 147, 120, 130, 131, 108, 25, 33, 34, 41, 52, 61, 79, 89, 92, 89, 28.26727 + 85, 84, 46, 92, 99, 104, 95, 96, 99, 111, 155, 242, 245, 241, 198, 127, 28.26728 + 111, 60, 48, 44, 59, 67, 57, 63, 73, 80, 216, 218, 212, 135, 134, 142, 28.26729 + 155, 157, 155, 154, 119, 120, 115, 97, 28, 24, 24, 42, 45, 61, 69, 73, 28.26730 + 79, 64, 38, 60, 106, 107, 212, 232, 229, 126, 112, 120, 130, 146, 157, 169, 28.26731 + 167, 166, 142, 55, 30, 29, 32, 26, 34, 24, 63, 96, 199, 210, 210, 131, 28.26732 + 128, 126, 135, 135, 132, 130, 126, 111, 73, 24, 20, 21, 38, 32, 37, 46, 28.26733 + 61, 77, 233, 232, 228, 120, 114, 119, 127, 144, 159, 167, 171, 171, 161, 159, 28.26734 + 142, 49, 21, 24, 24, 37, 28, 22, 30, 22, 65, 73, 63, 71, 68, 65, 28.26735 + 61, 69, 60, 53, 56, 171, 205, 202, 166, 104, 111, 120, 131, 151, 167, 170, 28.26736 + 177, 181, 189, 193, 199, 212, 114, 46, 36, 32, 32, 32, 52, 134, 229, 222, 28.26737 + 214, 194, 199, 213, 212, 220, 212, 195, 177, 166, 154, 144, 135, 119, 119, 88, 28.26738 + 53, 56, 37, 40, 45, 37, 45, 29, 17, 26, 20, 30, 68, 182, 221, 228, 28.26739 + 116, 110, 122, 134, 139, 155, 163, 163, 166, 163, 155, 132, 55, 25, 18, 24, 28.26740 + 32, 28, 32, 25, 28, 28, 29, 28, 30, 28, 17, 22, 41, 61, 28, 32, 28.26741 + 42, 44, 40, 45, 37, 33, 6, 36, 37, 42, 40, 65, 69, 100, 151, 104, 28.26742 + 100, 130, 147, 161, 170, 177, 178, 182, 181, 185, 186, 189, 191, 199, 198, 190, 28.26743 + 195, 194, 190, 182, 173, 171, 162, 158, 144, 124, 9, 9, 6, 10, 4, 2, 28.26744 + 87, 99, 104, 104, 110, 118, 120, 134, 97, 181, 190, 111, 107, 112, 132, 144, 28.26745 + 148, 154, 148, 136, 126, 120, 112, 126, 130, 130, 80, 65, 61, 61, 63, 63, 28.26746 + 60, 59, 65, 68, 71, 84, 89, 97, 104, 107, 131, 153, 154, 59, 201, 232, 28.26747 + 232, 170, 130, 118, 118, 115, 91, 64, 46, 55, 73, 72, 72, 79, 80, 119, 28.26748 + 111, 241, 237, 226, 107, 99, 95, 114, 128, 127, 144, 159, 170, 165, 155, 144, 28.26749 + 146, 126, 42, 46, 45, 56, 60, 71, 68, 72, 73, 93, 65, 69, 76, 119, 28.26750 + 140, 232, 234, 225, 131, 114, 116, 126, 130, 143, 136, 139, 135, 138, 136, 150, 28.26751 + 146, 124, 52, 49, 38, 32, 73, 91, 88, 104, 110, 186, 210, 206, 153, 132, 28.26752 + 136, 148, 155, 159, 166, 170, 175, 183, 189, 190, 190, 181, 104, 51, 45, 65, 28.26753 + 88, 102, 115, 175, 229, 224, 186, 173, 179, 189, 186, 154, 170, 161, 157, 144, 28.26754 + 144, 131, 126, 95, 61, 67, 89, 106, 111, 99, 111, 123, 162, 230, 238, 171, 28.26755 + 132, 139, 148, 146, 146, 161, 171, 175, 179, 81, 60, 48, 36, 67, 85, 93, 28.26756 + 127, 226, 228, 226, 189, 179, 182, 174, 174, 159, 144, 126, 95, 34, 33, 36, 28.26757 + 13, 13, 9, 12, 13, 34, 36, 16, 14, 32, 33, 25, 25, 36, 41, 36, 28.26758 + 61, 30, 30, 18, 24, 29, 32, 9, 22, 30, 34, 6, 24, 76, 22, 51, 28.26759 + 64, 71, 75, 84, 84, 87, 85, 88, 40, 118, 112, 120, 143, 238, 240, 229, 28.26760 + 107, 106, 112, 118, 127, 142, 158, 161, 166, 170, 174, 161, 146, 124, 130, 127, 28.26761 + 103, 29, 34, 34, 42, 53, 53, 55, 57, 60, 72, 68, 56, 46, 85, 91, 28.26762 + 84, 81, 93, 107, 107, 202, 242, 246, 238, 173, 122, 107, 53, 45, 38, 36, 28.26763 + 40, 44, 51, 71, 79, 221, 224, 208, 131, 127, 124, 147, 154, 153, 146, 118, 28.26764 + 110, 118, 89, 25, 22, 26, 36, 44, 55, 59, 59, 64, 57, 33, 41, 104, 28.26765 + 112, 206, 228, 228, 127, 114, 122, 130, 146, 155, 169, 171, 170, 148, 73, 34, 28.26766 + 29, 34, 24, 29, 44, 75, 124, 208, 214, 197, 128, 124, 123, 131, 131, 135, 28.26767 + 131, 123, 110, 67, 21, 18, 17, 25, 28, 30, 49, 63, 68, 233, 236, 230, 28.26768 + 118, 110, 118, 127, 144, 159, 167, 174, 170, 159, 157, 143, 46, 22, 22, 25, 28.26769 + 26, 37, 32, 24, 17, 44, 49, 44, 45, 56, 55, 46, 46, 55, 56, 61, 28.26770 + 159, 204, 187, 143, 99, 111, 118, 131, 150, 169, 177, 183, 178, 189, 190, 193, 28.26771 + 208, 136, 52, 37, 25, 33, 38, 61, 138, 226, 224, 218, 195, 183, 209, 213, 28.26772 + 213, 212, 198, 177, 169, 158, 153, 138, 118, 119, 102, 59, 61, 49, 41, 38, 28.26773 + 33, 12, 21, 17, 22, 20, 26, 80, 175, 229, 225, 118, 112, 123, 134, 139, 28.26774 + 155, 163, 163, 169, 162, 154, 134, 55, 22, 22, 29, 21, 20, 16, 14, 14, 28.26775 + 12, 10, 10, 10, 6, 17, 21, 13, 21, 18, 16, 12, 14, 24, 34, 34, 28.26776 + 25, 8, 37, 36, 38, 36, 34, 40, 72, 135, 120, 95, 123, 143, 157, 166, 28.26777 + 171, 174, 174, 173, 174, 175, 178, 187, 194, 202, 191, 191, 199, 191, 183, 173, 28.26778 + 173, 162, 159, 146, 127, 6, 6, 6, 10, 5, 4, 197, 191, 183, 179, 179, 28.26779 + 177, 179, 126, 138, 135, 194, 136, 104, 108, 115, 130, 146, 144, 143, 132, 139, 28.26780 + 139, 126, 115, 124, 130, 120, 76, 75, 93, 99, 104, 97, 104, 106, 123, 136, 28.26781 + 126, 132, 126, 106, 110, 95, 104, 143, 64, 187, 232, 233, 191, 128, 118, 116, 28.26782 + 106, 83, 55, 56, 52, 79, 102, 115, 115, 114, 124, 132, 228, 234, 224, 102, 28.26783 + 91, 104, 118, 116, 120, 131, 154, 167, 159, 153, 140, 143, 128, 41, 42, 48, 28.26784 + 30, 34, 40, 40, 30, 48, 67, 44, 40, 118, 110, 163, 230, 232, 226, 128, 28.26785 + 118, 126, 132, 130, 140, 127, 148, 143, 140, 134, 148, 142, 118, 51, 49, 38, 28.26786 + 45, 81, 95, 99, 110, 111, 173, 216, 202, 158, 132, 134, 142, 151, 155, 162, 28.26787 + 165, 170, 179, 186, 189, 185, 185, 132, 55, 56, 65, 95, 107, 126, 167, 225, 28.26788 + 226, 187, 171, 177, 185, 189, 181, 154, 169, 163, 157, 147, 144, 127, 120, 76, 28.26789 + 65, 69, 73, 79, 96, 115, 122, 154, 222, 229, 175, 135, 144, 154, 142, 143, 28.26790 + 159, 178, 181, 183, 92, 52, 44, 25, 61, 88, 102, 162, 229, 229, 225, 185, 28.26791 + 183, 179, 171, 171, 159, 143, 127, 93, 40, 36, 38, 29, 53, 33, 56, 38, 28.26792 + 112, 124, 119, 106, 116, 120, 119, 107, 119, 120, 63, 37, 51, 138, 132, 114, 28.26793 + 114, 134, 126, 111, 108, 108, 103, 72, 32, 52, 118, 134, 138, 131, 135, 130, 28.26794 + 132, 93, 84, 37, 119, 123, 122, 182, 236, 240, 218, 106, 106, 110, 119, 131, 28.26795 + 144, 153, 153, 151, 158, 170, 162, 148, 128, 136, 138, 106, 34, 38, 41, 57, 28.26796 + 67, 69, 49, 68, 69, 67, 60, 72, 65, 76, 81, 92, 95, 99, 112, 169, 28.26797 + 237, 244, 246, 240, 150, 116, 103, 49, 42, 38, 41, 45, 56, 61, 75, 91, 28.26798 + 220, 222, 212, 130, 127, 130, 136, 142, 154, 143, 119, 115, 119, 99, 28, 24, 28.26799 + 28, 40, 45, 42, 44, 48, 38, 57, 25, 48, 89, 103, 202, 224, 221, 130, 28.26800 + 114, 122, 130, 142, 155, 163, 167, 169, 157, 95, 38, 32, 28, 33, 34, 59, 28.26801 + 87, 185, 221, 222, 208, 126, 124, 127, 128, 127, 139, 136, 116, 110, 57, 21, 28.26802 + 17, 24, 38, 40, 49, 56, 67, 83, 232, 230, 230, 119, 110, 122, 134, 144, 28.26803 + 158, 169, 173, 167, 159, 153, 144, 51, 25, 29, 40, 46, 55, 52, 26, 22, 28.26804 + 25, 24, 33, 25, 29, 25, 30, 21, 30, 25, 37, 147, 199, 191, 128, 99, 28.26805 + 112, 118, 128, 132, 166, 177, 174, 177, 181, 191, 197, 206, 154, 65, 41, 32, 28.26806 + 48, 40, 83, 143, 228, 225, 222, 193, 179, 199, 212, 210, 208, 199, 182, 177, 28.26807 + 158, 161, 143, 128, 120, 111, 68, 55, 64, 61, 57, 41, 9, 25, 89, 120, 28.26808 + 93, 91, 128, 194, 216, 222, 114, 111, 120, 134, 132, 151, 159, 166, 162, 161, 28.26809 + 153, 136, 59, 26, 26, 41, 46, 68, 83, 88, 88, 84, 93, 91, 84, 37, 28.26810 + 16, 53, 73, 72, 63, 67, 67, 49, 26, 14, 13, 25, 24, 14, 18, 20, 28.26811 + 25, 25, 18, 34, 104, 132, 100, 100, 138, 144, 155, 162, 157, 159, 154, 154, 28.26812 + 143, 150, 148, 186, 201, 209, 183, 197, 191, 182, 171, 171, 161, 158, 146, 122, 28.26813 + 6, 6, 6, 6, 22, 24, 198, 187, 193, 186, 182, 194, 148, 173, 140, 60, 28.26814 + 194, 171, 112, 107, 107, 108, 119, 131, 134, 144, 135, 132, 140, 131, 122, 134, 28.26815 + 134, 110, 80, 80, 75, 96, 108, 106, 115, 126, 158, 135, 150, 148, 138, 120, 28.26816 + 146, 150, 143, 88, 208, 234, 237, 190, 126, 112, 111, 95, 69, 51, 55, 53, 28.26817 + 97, 111, 112, 116, 115, 126, 128, 212, 226, 222, 96, 89, 104, 118, 118, 118, 28.26818 + 127, 140, 163, 159, 153, 138, 143, 131, 52, 48, 46, 34, 57, 75, 102, 110, 28.26819 + 114, 122, 118, 116, 102, 122, 213, 217, 222, 225, 127, 110, 118, 118, 132, 142, 28.26820 + 120, 132, 142, 146, 138, 146, 144, 123, 46, 42, 41, 41, 88, 88, 99, 100, 28.26821 + 110, 161, 209, 204, 167, 131, 131, 132, 144, 154, 161, 167, 169, 177, 183, 185, 28.26822 + 181, 183, 158, 77, 53, 60, 106, 114, 122, 155, 220, 226, 193, 167, 173, 182, 28.26823 + 189, 189, 163, 153, 167, 169, 159, 154, 139, 127, 107, 84, 84, 88, 114, 120, 28.26824 + 122, 128, 139, 209, 226, 177, 142, 147, 157, 140, 146, 161, 183, 189, 186, 138, 28.26825 + 72, 48, 22, 68, 95, 114, 187, 233, 230, 228, 183, 181, 181, 173, 170, 159, 28.26826 + 143, 127, 85, 37, 34, 38, 63, 55, 59, 64, 38, 131, 139, 124, 110, 107, 28.26827 + 116, 103, 107, 112, 123, 75, 29, 106, 139, 128, 131, 131, 128, 132, 124, 130, 28.26828 + 123, 126, 76, 28, 115, 136, 132, 132, 127, 128, 116, 124, 106, 99, 37, 126, 28.26829 + 126, 124, 199, 240, 241, 221, 106, 103, 108, 118, 134, 147, 159, 155, 140, 151, 28.26830 + 153, 148, 124, 124, 139, 139, 106, 36, 40, 40, 64, 49, 60, 69, 73, 80, 28.26831 + 85, 85, 79, 88, 100, 103, 110, 116, 124, 155, 214, 244, 245, 242, 218, 127, 28.26832 + 118, 80, 44, 37, 37, 49, 53, 56, 68, 72, 96, 222, 228, 221, 123, 122, 28.26833 + 131, 115, 131, 132, 131, 114, 120, 118, 104, 29, 24, 26, 45, 49, 65, 69, 28.26834 + 69, 61, 59, 20, 112, 107, 111, 183, 221, 216, 135, 115, 122, 130, 142, 150, 28.26835 + 166, 167, 171, 170, 135, 52, 38, 33, 37, 56, 72, 103, 197, 222, 224, 208, 28.26836 + 126, 124, 126, 122, 132, 130, 127, 116, 100, 34, 18, 14, 28, 45, 52, 53, 28.26837 + 64, 63, 89, 232, 232, 232, 120, 112, 122, 131, 144, 158, 167, 173, 163, 153, 28.26838 + 148, 136, 61, 33, 26, 40, 60, 68, 67, 52, 17, 32, 106, 107, 97, 96, 28.26839 + 106, 100, 93, 95, 99, 64, 132, 190, 185, 118, 100, 114, 119, 124, 124, 153, 28.26840 + 158, 178, 173, 170, 183, 194, 197, 198, 114, 56, 48, 55, 63, 131, 201, 229, 28.26841 + 226, 222, 187, 177, 193, 204, 204, 202, 199, 175, 175, 166, 157, 155, 136, 122, 28.26842 + 122, 73, 76, 93, 132, 122, 46, 16, 75, 131, 119, 128, 150, 158, 210, 220, 28.26843 + 209, 115, 110, 120, 131, 127, 147, 157, 163, 165, 157, 150, 135, 65, 30, 25, 28.26844 + 45, 80, 95, 93, 87, 92, 93, 93, 93, 96, 63, 22, 67, 81, 80, 80, 28.26845 + 75, 76, 72, 71, 59, 29, 21, 22, 38, 88, 95, 61, 75, 83, 68, 38, 28.26846 + 144, 120, 91, 115, 128, 136, 142, 144, 123, 124, 131, 71, 57, 81, 165, 199, 28.26847 + 213, 190, 187, 190, 179, 170, 170, 159, 153, 143, 116, 5, 8, 9, 17, 57, 28.26848 + 64, 186, 183, 161, 187, 185, 173, 140, 171, 139, 60, 182, 177, 116, 108, 106, 28.26849 + 104, 103, 104, 112, 134, 148, 139, 131, 139, 124, 120, 126, 131, 104, 81, 89, 28.26850 + 103, 73, 99, 112, 155, 147, 140, 154, 138, 132, 122, 147, 111, 89, 146, 226, 28.26851 + 237, 232, 202, 127, 110, 104, 85, 61, 46, 56, 46, 95, 110, 104, 108, 111, 28.26852 + 123, 162, 229, 225, 204, 102, 99, 108, 119, 124, 118, 124, 132, 151, 155, 146, 28.26853 + 130, 146, 132, 49, 51, 22, 83, 83, 93, 97, 111, 123, 118, 116, 103, 115, 28.26854 + 136, 232, 228, 226, 212, 130, 103, 111, 120, 144, 147, 130, 119, 127, 135, 134, 28.26855 + 144, 144, 123, 60, 40, 40, 40, 88, 93, 112, 95, 104, 144, 201, 199, 166, 28.26856 + 132, 130, 130, 143, 147, 158, 163, 161, 170, 175, 182, 177, 177, 170, 99, 56, 28.26857 + 51, 97, 115, 122, 140, 205, 222, 201, 167, 170, 179, 187, 191, 183, 153, 154, 28.26858 + 169, 173, 162, 153, 138, 130, 104, 108, 110, 116, 116, 112, 126, 130, 193, 230, 28.26859 + 179, 142, 153, 161, 140, 143, 173, 185, 190, 191, 163, 63, 51, 41, 81, 103, 28.26860 + 122, 197, 234, 232, 228, 185, 182, 173, 173, 171, 162, 143, 124, 81, 36, 36, 28.26861 + 36, 53, 76, 83, 63, 41, 123, 143, 131, 142, 134, 132, 142, 131, 123, 120, 28.26862 + 77, 59, 134, 143, 128, 124, 120, 114, 110, 123, 114, 103, 122, 56, 26, 118, 28.26863 + 136, 127, 118, 112, 118, 123, 127, 99, 91, 40, 124, 127, 128, 218, 238, 234, 28.26864 + 216, 110, 104, 110, 114, 126, 150, 159, 161, 159, 151, 136, 130, 119, 131, 138, 28.26865 + 144, 111, 65, 41, 42, 68, 52, 64, 77, 81, 76, 76, 80, 79, 95, 115, 28.26866 + 123, 131, 123, 151, 209, 241, 246, 245, 238, 161, 123, 115, 67, 42, 40, 34, 28.26867 + 51, 56, 57, 67, 72, 96, 222, 225, 220, 131, 131, 126, 132, 116, 110, 106, 28.26868 + 112, 123, 112, 103, 29, 28, 25, 48, 63, 76, 77, 72, 76, 53, 21, 106, 28.26869 + 118, 107, 157, 212, 217, 151, 116, 123, 130, 142, 148, 159, 166, 163, 170, 153, 28.26870 + 108, 60, 60, 65, 87, 112, 174, 198, 221, 216, 217, 126, 123, 126, 124, 124, 28.26871 + 132, 118, 112, 71, 24, 18, 16, 30, 44, 51, 61, 71, 71, 102, 229, 230, 28.26872 + 229, 119, 114, 123, 136, 146, 158, 169, 173, 162, 155, 151, 138, 75, 34, 28, 28.26873 + 45, 65, 63, 64, 68, 18, 116, 118, 110, 104, 102, 111, 108, 100, 106, 95, 28.26874 + 69, 77, 179, 177, 116, 104, 115, 118, 122, 127, 131, 166, 175, 182, 161, 177, 28.26875 + 183, 194, 205, 161, 85, 61, 77, 122, 143, 220, 225, 226, 222, 189, 171, 178, 28.26876 + 189, 185, 187, 189, 179, 174, 169, 165, 162, 153, 127, 120, 84, 91, 130, 139, 28.26877 + 135, 38, 10, 84, 134, 122, 144, 150, 162, 216, 222, 217, 110, 108, 120, 131, 28.26878 + 122, 138, 158, 169, 162, 154, 146, 135, 91, 36, 29, 49, 85, 84, 89, 83, 28.26879 + 93, 89, 79, 81, 93, 96, 22, 71, 80, 73, 56, 48, 46, 48, 53, 71, 28.26880 + 46, 22, 16, 85, 85, 85, 87, 89, 75, 68, 63, 44, 48, 52, 75, 104, 28.26881 + 99, 108, 92, 68, 45, 42, 32, 36, 69, 143, 201, 213, 197, 181, 189, 177, 28.26882 + 171, 171, 158, 151, 143, 108, 4, 8, 13, 26, 41, 44, 191, 173, 166, 171, 28.26883 + 163, 169, 143, 138, 131, 64, 185, 177, 136, 119, 107, 103, 104, 104, 100, 108, 28.26884 + 134, 151, 138, 128, 138, 120, 130, 122, 132, 104, 99, 99, 93, 89, 107, 151, 28.26885 + 138, 132, 127, 127, 123, 116, 120, 134, 171, 208, 233, 232, 229, 186, 124, 108, 28.26886 + 88, 65, 53, 45, 51, 45, 75, 103, 108, 100, 110, 130, 209, 229, 228, 208, 28.26887 + 106, 99, 108, 123, 124, 139, 124, 119, 135, 150, 148, 139, 140, 123, 55, 51, 28.26888 + 38, 79, 85, 83, 110, 97, 95, 99, 95, 99, 112, 183, 220, 225, 228, 217, 28.26889 + 131, 123, 110, 119, 135, 134, 147, 135, 119, 119, 130, 135, 144, 126, 64, 37, 28.26890 + 34, 40, 91, 106, 99, 100, 106, 134, 191, 198, 165, 126, 131, 126, 139, 146, 28.26891 + 154, 162, 159, 161, 166, 171, 177, 171, 173, 128, 63, 68, 102, 107, 123, 134, 28.26892 + 175, 222, 208, 166, 165, 177, 189, 190, 190, 174, 148, 153, 170, 167, 161, 150, 28.26893 + 132, 128, 126, 120, 107, 110, 115, 118, 119, 151, 220, 190, 148, 151, 167, 143, 28.26894 + 144, 178, 189, 197, 198, 182, 89, 56, 41, 52, 106, 128, 210, 234, 234, 230, 28.26895 + 179, 179, 174, 170, 174, 163, 142, 118, 57, 34, 34, 24, 59, 60, 72, 69, 28.26896 + 51, 79, 102, 139, 96, 134, 131, 127, 124, 130, 119, 80, 57, 92, 143, 128, 28.26897 + 135, 110, 114, 124, 108, 112, 112, 112, 64, 24, 115, 130, 116, 123, 128, 122, 28.26898 + 124, 104, 95, 95, 52, 111, 118, 136, 225, 237, 237, 214, 112, 108, 111, 112, 28.26899 + 123, 144, 158, 166, 158, 153, 150, 146, 128, 134, 143, 144, 118, 95, 44, 45, 28.26900 + 67, 46, 59, 60, 67, 69, 71, 69, 93, 96, 124, 130, 126, 153, 198, 236, 28.26901 + 244, 248, 245, 225, 132, 119, 107, 56, 40, 36, 37, 51, 53, 60, 68, 83, 28.26902 + 127, 205, 216, 221, 132, 116, 123, 124, 115, 119, 108, 108, 119, 120, 103, 30, 28.26903 + 24, 34, 38, 40, 77, 81, 71, 68, 63, 17, 111, 115, 104, 120, 197, 214, 28.26904 + 183, 122, 119, 131, 138, 147, 153, 165, 163, 174, 175, 155, 114, 115, 135, 165, 28.26905 + 190, 205, 197, 226, 210, 210, 127, 124, 126, 126, 134, 124, 114, 91, 30, 17, 28.26906 + 17, 21, 41, 40, 46, 65, 67, 71, 103, 224, 232, 225, 118, 108, 118, 128, 28.26907 + 146, 158, 167, 171, 162, 154, 148, 139, 114, 42, 28, 46, 59, 61, 60, 55, 28.26908 + 18, 122, 120, 134, 118, 108, 111, 93, 93, 102, 107, 89, 55, 130, 177, 126, 28.26909 + 97, 114, 119, 123, 130, 126, 151, 158, 171, 158, 169, 175, 189, 197, 206, 170, 28.26910 + 138, 158, 185, 217, 225, 226, 221, 222, 185, 170, 166, 178, 181, 178, 183, 181, 28.26911 + 181, 174, 165, 155, 162, 146, 124, 88, 99, 119, 146, 126, 33, 12, 71, 118, 28.26912 + 135, 134, 148, 175, 220, 216, 221, 111, 108, 120, 134, 127, 144, 158, 167, 162, 28.26913 + 154, 143, 136, 112, 46, 36, 48, 84, 84, 84, 92, 100, 97, 92, 79, 95, 28.26914 + 68, 30, 63, 77, 72, 51, 53, 52, 42, 41, 68, 56, 25, 16, 89, 76, 28.26915 + 80, 77, 71, 71, 57, 49, 49, 42, 45, 38, 41, 53, 48, 33, 30, 33, 28.26916 + 28, 22, 38, 69, 150, 209, 220, 198, 177, 187, 181, 174, 170, 161, 148, 140, 28.26917 + 99, 2, 6, 12, 28, 4, 2, 190, 171, 179, 173, 170, 163, 183, 144, 130, 28.26918 + 59, 187, 173, 142, 106, 115, 114, 106, 106, 104, 100, 111, 132, 142, 139, 136, 28.26919 + 134, 114, 124, 124, 131, 123, 115, 124, 119, 136, 136, 154, 146, 135, 132, 130, 28.26920 + 135, 173, 208, 228, 234, 236, 232, 208, 170, 112, 97, 75, 56, 42, 45, 51, 28.26921 + 52, 88, 100, 103, 110, 112, 158, 222, 218, 229, 205, 96, 95, 110, 119, 120, 28.26922 + 136, 115, 118, 123, 143, 138, 136, 140, 124, 59, 56, 71, 106, 102, 80, 91, 28.26923 + 84, 102, 95, 95, 91, 112, 195, 226, 224, 216, 193, 132, 111, 118, 134, 148, 28.26924 + 144, 153, 153, 140, 120, 118, 134, 142, 127, 64, 48, 49, 48, 89, 99, 102, 28.26925 + 95, 102, 107, 189, 199, 175, 130, 124, 124, 138, 143, 150, 159, 165, 153, 153, 28.26926 + 158, 159, 169, 170, 147, 92, 67, 65, 93, 118, 124, 159, 216, 217, 167, 163, 28.26927 + 174, 183, 187, 191, 190, 178, 144, 154, 173, 167, 157, 150, 139, 128, 128, 135, 28.26928 + 116, 104, 111, 122, 130, 194, 214, 163, 154, 166, 142, 146, 183, 193, 204, 202, 28.26929 + 195, 150, 87, 51, 53, 115, 165, 221, 233, 234, 232, 186, 182, 169, 170, 171, 28.26930 + 162, 134, 107, 40, 34, 33, 29, 65, 61, 68, 72, 53, 57, 138, 144, 135, 28.26931 + 138, 135, 128, 128, 126, 115, 79, 64, 93, 144, 112, 119, 110, 128, 116, 107, 28.26932 + 115, 112, 111, 71, 28, 116, 132, 112, 110, 110, 97, 112, 102, 91, 73, 77, 28.26933 + 112, 124, 179, 226, 242, 234, 213, 112, 111, 116, 107, 118, 139, 153, 162, 167, 28.26934 + 162, 155, 147, 140, 124, 130, 147, 134, 103, 46, 48, 52, 59, 60, 76, 80, 28.26935 + 75, 71, 76, 88, 108, 128, 127, 142, 189, 233, 241, 246, 246, 244, 170, 120, 28.26936 + 119, 95, 44, 36, 24, 40, 46, 55, 67, 69, 83, 179, 208, 214, 206, 127, 28.26937 + 120, 126, 128, 118, 118, 119, 103, 107, 119, 108, 34, 25, 26, 37, 63, 75, 28.26938 + 81, 64, 67, 61, 14, 106, 114, 107, 108, 134, 201, 198, 127, 120, 127, 135, 28.26939 + 143, 146, 153, 150, 177, 181, 178, 169, 185, 198, 201, 208, 206, 213, 202, 212, 28.26940 + 163, 127, 127, 134, 136, 130, 119, 114, 38, 20, 17, 14, 28, 38, 44, 51, 28.26941 + 61, 65, 72, 173, 226, 228, 226, 118, 104, 118, 126, 143, 153, 165, 165, 167, 28.26942 + 159, 153, 147, 140, 61, 38, 36, 60, 63, 61, 57, 22, 88, 123, 135, 127, 28.26943 + 119, 130, 112, 112, 106, 99, 106, 55, 76, 171, 142, 100, 104, 118, 122, 124, 28.26944 + 127, 132, 158, 161, 157, 165, 169, 182, 189, 204, 213, 208, 217, 218, 225, 222, 28.26945 + 221, 226, 209, 186, 165, 166, 143, 165, 171, 181, 182, 181, 181, 170, 169, 161, 28.26946 + 162, 142, 118, 100, 132, 143, 69, 29, 10, 63, 118, 119, 124, 135, 158, 217, 28.26947 + 228, 217, 112, 107, 118, 130, 122, 151, 158, 163, 158, 155, 146, 139, 126, 67, 28.26948 + 37, 56, 83, 80, 89, 91, 93, 92, 93, 96, 80, 80, 26, 53, 76, 68, 28.26949 + 44, 51, 37, 38, 46, 48, 48, 25, 18, 48, 72, 46, 60, 61, 69, 48, 28.26950 + 42, 40, 37, 32, 38, 36, 40, 30, 26, 30, 26, 29, 26, 64, 71, 173, 28.26951 + 214, 221, 187, 173, 185, 179, 174, 171, 162, 146, 135, 52, 2, 6, 13, 38, 28.26952 + 2, 1, 189, 177, 161, 169, 170, 163, 159, 162, 130, 52, 177, 169, 140, 127, 28.26953 + 103, 100, 118, 110, 104, 103, 102, 107, 134, 146, 142, 143, 135, 118, 116, 136, 28.26954 + 158, 144, 139, 143, 150, 154, 159, 166, 170, 171, 185, 206, 224, 230, 236, 234, 28.26955 + 229, 217, 187, 124, 103, 77, 61, 48, 41, 49, 53, 73, 92, 88, 100, 111, 28.26956 + 154, 190, 229, 232, 229, 213, 111, 95, 103, 115, 131, 134, 120, 124, 119, 130, 28.26957 + 131, 139, 144, 131, 107, 88, 61, 93, 106, 108, 89, 88, 97, 119, 95, 102, 28.26958 + 130, 209, 220, 220, 220, 163, 118, 120, 124, 131, 136, 151, 150, 153, 151, 139, 28.26959 + 115, 124, 138, 132, 107, 60, 55, 51, 95, 83, 97, 93, 99, 100, 175, 198, 28.26960 + 177, 127, 120, 124, 136, 146, 151, 157, 162, 151, 150, 144, 144, 154, 163, 155, 28.26961 + 110, 65, 45, 81, 111, 126, 147, 202, 217, 174, 161, 173, 181, 185, 187, 187, 28.26962 + 190, 178, 150, 154, 169, 166, 157, 150, 144, 132, 132, 135, 118, 111, 120, 126, 28.26963 + 158, 222, 177, 155, 163, 147, 183, 187, 202, 208, 205, 206, 190, 123, 64, 69, 28.26964 + 126, 191, 233, 233, 234, 226, 181, 179, 177, 171, 170, 150, 135, 88, 36, 33, 28.26965 + 34, 46, 65, 71, 57, 76, 65, 55, 128, 143, 134, 138, 128, 128, 136, 126, 28.26966 + 123, 87, 67, 97, 138, 127, 119, 114, 119, 100, 115, 111, 111, 115, 68, 18, 28.26967 + 122, 130, 106, 112, 104, 107, 93, 75, 77, 108, 99, 112, 131, 216, 236, 230, 28.26968 + 238, 202, 115, 116, 116, 118, 110, 127, 150, 159, 162, 163, 159, 155, 148, 135, 28.26969 + 138, 131, 154, 118, 102, 85, 83, 92, 95, 96, 96, 104, 104, 100, 99, 118, 28.26970 + 134, 127, 186, 229, 233, 238, 245, 242, 220, 126, 122, 114, 65, 41, 36, 30, 28.26971 + 44, 49, 61, 67, 76, 179, 209, 208, 216, 198, 114, 128, 135, 124, 130, 131, 28.26972 + 134, 124, 104, 120, 115, 46, 22, 25, 53, 60, 63, 77, 81, 60, 56, 13, 28.26973 + 103, 107, 104, 110, 110, 138, 198, 136, 120, 124, 128, 134, 135, 136, 138, 140, 28.26974 + 155, 185, 183, 193, 195, 206, 212, 213, 202, 208, 189, 127, 126, 134, 135, 132, 28.26975 + 122, 120, 59, 20, 17, 16, 13, 37, 44, 48, 64, 65, 68, 93, 206, 220, 28.26976 + 226, 224, 119, 107, 115, 123, 135, 148, 162, 165, 166, 162, 151, 144, 127, 110, 28.26977 + 53, 34, 37, 64, 61, 59, 28, 84, 123, 135, 112, 123, 130, 95, 123, 104, 28.26978 + 99, 97, 63, 51, 159, 175, 108, 95, 112, 122, 124, 123, 124, 140, 142, 154, 28.26979 + 166, 171, 173, 179, 185, 201, 198, 208, 214, 216, 220, 217, 210, 194, 177, 165, 28.26980 + 142, 140, 139, 144, 165, 171, 181, 179, 175, 165, 163, 165, 162, 134, 107, 140, 28.26981 + 96, 36, 14, 12, 59, 112, 122, 134, 144, 166, 218, 221, 220, 118, 108, 116, 28.26982 + 124, 124, 159, 159, 161, 158, 155, 146, 135, 126, 110, 49, 63, 87, 92, 83, 28.26983 + 85, 89, 89, 95, 93, 99, 91, 40, 48, 77, 68, 46, 38, 46, 46, 46, 28.26984 + 45, 45, 24, 18, 75, 69, 65, 59, 48, 49, 40, 45, 40, 49, 40, 34, 28.26985 + 42, 36, 33, 28, 28, 22, 26, 20, 59, 84, 202, 217, 220, 166, 167, 185, 28.26986 + 183, 174, 169, 161, 144, 132, 42, 2, 4, 12, 32, 4, 10, 181, 182, 162, 28.26987 + 165, 173, 174, 154, 165, 130, 60, 170, 167, 143, 130, 122, 111, 91, 96, 114, 28.26988 + 112, 107, 103, 104, 127, 147, 139, 130, 123, 131, 151, 163, 177, 181, 189, 194, 28.26989 + 193, 201, 198, 204, 216, 218, 225, 228, 230, 229, 218, 217, 181, 136, 102, 76, 28.26990 + 63, 51, 44, 45, 63, 75, 88, 81, 106, 144, 171, 187, 212, 220, 226, 229, 28.26991 + 209, 118, 89, 112, 106, 115, 131, 146, 148, 131, 122, 120, 144, 144, 143, 130, 28.26992 + 119, 122, 124, 130, 123, 108, 97, 85, 115, 95, 104, 169, 208, 224, 221, 204, 28.26993 + 161, 127, 115, 116, 132, 147, 154, 143, 155, 155, 147, 136, 118, 131, 134, 120, 28.26994 + 100, 65, 64, 96, 99, 93, 93, 89, 97, 154, 202, 177, 126, 119, 127, 140, 28.26995 + 146, 151, 159, 142, 136, 132, 130, 130, 134, 148, 154, 135, 97, 72, 61, 93, 28.26996 + 115, 138, 174, 212, 185, 158, 163, 174, 179, 182, 181, 185, 185, 171, 151, 162, 28.26997 + 169, 161, 157, 144, 134, 132, 132, 108, 111, 110, 120, 127, 193, 212, 158, 157, 28.26998 + 143, 189, 199, 208, 212, 212, 208, 208, 183, 139, 146, 191, 225, 236, 236, 234, 28.26999 + 218, 189, 183, 177, 173, 162, 139, 123, 56, 32, 30, 34, 51, 72, 71, 87, 28.27000 + 85, 75, 55, 131, 146, 107, 134, 118, 115, 135, 138, 123, 111, 68, 79, 140, 28.27001 + 107, 118, 111, 107, 106, 116, 111, 102, 118, 53, 24, 115, 127, 103, 107, 92, 28.27002 + 95, 104, 102, 104, 108, 114, 153, 209, 226, 234, 237, 232, 189, 116, 120, 110, 28.27003 + 119, 123, 112, 138, 150, 154, 158, 155, 157, 154, 151, 143, 126, 140, 157, 119, 28.27004 + 115, 116, 115, 115, 120, 119, 118, 118, 115, 110, 120, 148, 191, 226, 229, 236, 28.27005 + 241, 241, 233, 146, 120, 123, 110, 55, 36, 32, 36, 56, 59, 60, 73, 182, 28.27006 + 206, 210, 214, 206, 199, 123, 116, 128, 122, 139, 123, 130, 124, 131, 111, 115, 28.27007 + 97, 26, 41, 30, 32, 63, 79, 79, 64, 46, 22, 95, 106, 107, 95, 99, 28.27008 + 107, 122, 178, 173, 127, 127, 124, 128, 130, 130, 130, 131, 132, 132, 143, 162, 28.27009 + 166, 170, 179, 183, 161, 126, 130, 128, 126, 124, 120, 115, 49, 20, 16, 14, 28.27010 + 12, 17, 29, 37, 49, 64, 64, 73, 173, 220, 220, 224, 217, 120, 110, 118, 28.27011 + 126, 136, 146, 158, 166, 166, 163, 157, 154, 138, 138, 104, 69, 48, 42, 46, 28.27012 + 61, 29, 88, 123, 131, 130, 115, 114, 99, 102, 118, 93, 100, 59, 41, 134, 28.27013 + 169, 135, 93, 102, 119, 123, 126, 120, 122, 126, 153, 163, 159, 170, 165, 165, 28.27014 + 159, 154, 175, 187, 193, 202, 198, 187, 162, 139, 143, 139, 138, 139, 142, 138, 28.27015 + 143, 155, 161, 157, 155, 162, 151, 142, 119, 132, 96, 34, 8, 14, 10, 53, 28.27016 + 102, 128, 150, 143, 189, 206, 216, 218, 120, 108, 110, 124, 147, 158, 170, 158, 28.27017 + 155, 155, 143, 136, 127, 126, 95, 60, 49, 60, 80, 87, 95, 89, 87, 99, 28.27018 + 76, 110, 34, 30, 69, 53, 57, 49, 48, 52, 49, 42, 45, 25, 14, 65, 28.27019 + 69, 72, 73, 73, 65, 56, 53, 44, 52, 48, 26, 42, 44, 44, 34, 30, 28.27020 + 28, 26, 34, 44, 112, 212, 225, 218, 157, 161, 178, 182, 174, 169, 159, 146, 28.27021 + 131, 30, 2, 4, 10, 30, 4, 1, 183, 162, 163, 159, 161, 151, 150, 138, 28.27022 + 124, 56, 165, 165, 143, 128, 126, 119, 106, 83, 80, 95, 108, 108, 103, 106, 28.27023 + 112, 120, 128, 135, 136, 140, 140, 151, 173, 185, 194, 197, 206, 202, 206, 214, 28.27024 + 220, 221, 217, 217, 214, 199, 162, 128, 97, 72, 60, 49, 41, 42, 53, 69, 28.27025 + 88, 75, 147, 173, 204, 213, 209, 216, 216, 217, 212, 158, 114, 92, 139, 120, 28.27026 + 127, 132, 136, 130, 134, 143, 138, 134, 148, 147, 142, 138, 146, 148, 162, 147, 28.27027 + 136, 122, 112, 83, 81, 103, 193, 218, 218, 216, 217, 154, 131, 126, 124, 155, 28.27028 + 155, 147, 146, 142, 140, 142, 147, 135, 115, 134, 131, 119, 91, 111, 100, 108, 28.27029 + 84, 97, 92, 93, 124, 189, 187, 143, 126, 127, 138, 142, 142, 140, 136, 131, 28.27030 + 128, 120, 120, 120, 122, 140, 142, 119, 83, 44, 75, 110, 126, 144, 194, 204, 28.27031 + 155, 159, 166, 174, 177, 178, 179, 185, 182, 158, 151, 165, 166, 154, 138, 138, 28.27032 + 132, 114, 81, 68, 91, 111, 119, 140, 208, 171, 165, 150, 191, 199, 213, 213, 28.27033 + 216, 210, 216, 210, 206, 212, 228, 232, 230, 234, 233, 205, 183, 185, 181, 170, 28.27034 + 143, 132, 92, 36, 32, 30, 37, 61, 73, 73, 84, 80, 81, 53, 115, 112, 28.27035 + 139, 127, 135, 140, 138, 135, 124, 120, 65, 72, 104, 134, 128, 96, 110, 102, 28.27036 + 110, 115, 114, 111, 63, 22, 112, 119, 119, 102, 99, 97, 103, 108, 134, 182, 28.27037 + 198, 222, 217, 232, 226, 230, 228, 157, 118, 119, 126, 131, 143, 123, 116, 135, 28.27038 + 142, 142, 143, 144, 150, 150, 153, 142, 136, 148, 157, 148, 169, 178, 187, 197, 28.27039 + 202, 206, 210, 216, 218, 216, 221, 221, 225, 230, 237, 238, 226, 157, 120, 124, 28.27040 + 122, 89, 38, 32, 30, 40, 59, 61, 93, 159, 222, 208, 205, 218, 218, 163, 28.27041 + 130, 132, 138, 132, 134, 127, 139, 123, 127, 115, 112, 97, 71, 55, 33, 32, 28.27042 + 30, 73, 77, 60, 60, 20, 95, 99, 95, 92, 96, 88, 103, 111, 116, 120, 28.27043 + 124, 154, 158, 153, 150, 148, 144, 142, 138, 132, 134, 130, 130, 130, 131, 130, 28.27044 + 126, 124, 122, 120, 116, 83, 34, 20, 16, 14, 12, 14, 40, 34, 48, 61, 28.27045 + 65, 69, 150, 206, 214, 216, 220, 212, 118, 111, 114, 126, 136, 139, 143, 151, 28.27046 + 158, 158, 154, 146, 150, 140, 144, 115, 99, 87, 67, 42, 28, 67, 126, 118, 28.27047 + 128, 100, 120, 116, 115, 119, 96, 99, 72, 41, 95, 154, 177, 112, 102, 110, 28.27048 + 118, 119, 120, 123, 124, 128, 130, 134, 132, 132, 142, 130, 128, 126, 127, 131, 28.27049 + 128, 126, 130, 132, 132, 138, 138, 140, 143, 140, 139, 143, 138, 134, 132, 131, 28.27050 + 131, 127, 138, 139, 103, 33, 8, 12, 16, 10, 52, 100, 107, 136, 193, 198, 28.27051 + 198, 214, 208, 118, 114, 118, 122, 150, 155, 157, 148, 157, 153, 146, 139, 130, 28.27052 + 124, 123, 123, 103, 72, 69, 55, 92, 88, 84, 85, 73, 96, 37, 22, 83, 28.27053 + 44, 45, 45, 57, 52, 52, 41, 42, 25, 14, 59, 65, 67, 63, 49, 53, 28.27054 + 40, 36, 30, 34, 36, 25, 40, 48, 42, 36, 37, 40, 24, 48, 56, 140, 28.27055 + 221, 224, 212, 148, 155, 165, 178, 178, 167, 159, 146, 127, 25, 4, 4, 12, 28.27056 + 24, 6, 2, 162, 161, 157, 154, 154, 154, 151, 128, 127, 52, 132, 158, 147, 28.27057 + 135, 139, 130, 118, 106, 89, 75, 71, 81, 102, 107, 107, 106, 106, 112, 110, 28.27058 + 118, 119, 124, 130, 144, 166, 178, 186, 199, 204, 201, 202, 202, 199, 182, 162, 28.27059 + 127, 99, 85, 69, 57, 48, 38, 40, 46, 55, 69, 68, 126, 228, 206, 214, 28.27060 + 206, 217, 208, 217, 183, 146, 122, 107, 119, 119, 120, 116, 123, 116, 122, 120, 28.27061 + 127, 126, 132, 138, 130, 139, 144, 142, 150, 151, 153, 163, 155, 110, 83, 95, 28.27062 + 118, 222, 208, 210, 210, 216, 150, 134, 136, 148, 131, 151, 148, 144, 134, 134, 28.27063 + 132, 134, 132, 131, 132, 134, 120, 127, 124, 120, 100, 87, 88, 92, 87, 97, 28.27064 + 162, 191, 169, 123, 124, 130, 134, 136, 136, 130, 130, 122, 120, 119, 114, 111, 28.27065 + 108, 115, 134, 96, 83, 87, 87, 107, 126, 159, 209, 165, 155, 162, 162, 162, 28.27066 + 169, 173, 178, 182, 177, 155, 154, 162, 147, 136, 139, 124, 85, 59, 57, 59, 28.27067 + 106, 108, 112, 175, 185, 174, 138, 185, 201, 202, 209, 214, 220, 218, 221, 218, 28.27068 + 222, 230, 228, 232, 229, 221, 194, 190, 183, 179, 165, 135, 104, 51, 34, 32, 28.27069 + 30, 30, 65, 73, 73, 77, 85, 85, 57, 89, 123, 138, 132, 116, 122, 116, 28.27070 + 132, 110, 85, 72, 64, 104, 136, 111, 92, 112, 108, 110, 114, 120, 84, 61, 28.27071 + 16, 100, 115, 107, 107, 71, 95, 111, 195, 216, 212, 216, 236, 220, 229, 242, 28.27072 + 226, 199, 128, 119, 120, 140, 142, 134, 142, 132, 127, 127, 124, 127, 130, 123, 28.27073 + 127, 130, 136, 146, 143, 131, 166, 169, 181, 189, 198, 202, 208, 212, 216, 218, 28.27074 + 221, 222, 228, 228, 230, 226, 201, 140, 118, 122, 127, 118, 59, 33, 29, 32, 28.27075 + 48, 59, 97, 186, 193, 197, 208, 212, 232, 210, 146, 126, 116, 123, 120, 134, 28.27076 + 128, 119, 131, 119, 118, 127, 99, 84, 77, 68, 53, 29, 42, 76, 56, 57, 28.27077 + 17, 91, 100, 91, 71, 64, 69, 77, 77, 73, 75, 75, 89, 108, 114, 115, 28.27078 + 112, 107, 112, 116, 116, 116, 115, 112, 114, 119, 118, 115, 108, 104, 76, 37, 28.27079 + 24, 16, 14, 12, 9, 12, 17, 33, 38, 63, 64, 72, 155, 201, 205, 206, 28.27080 + 209, 216, 155, 118, 108, 118, 132, 127, 131, 139, 139, 148, 147, 158, 154, 144, 28.27081 + 147, 132, 140, 151, 147, 108, 73, 51, 32, 88, 126, 104, 122, 99, 116, 108, 28.27082 + 115, 92, 100, 95, 33, 84, 142, 148, 151, 146, 139, 138, 142, 138, 115, 114, 28.27083 + 118, 119, 124, 126, 127, 124, 123, 128, 120, 104, 99, 92, 85, 89, 100, 116, 28.27084 + 124, 131, 136, 138, 134, 127, 134, 134, 136, 139, 138, 135, 135, 126, 102, 34, 28.27085 + 17, 9, 8, 16, 10, 51, 110, 139, 195, 205, 202, 199, 216, 189, 116, 108, 28.27086 + 123, 131, 130, 144, 150, 154, 151, 151, 147, 142, 138, 131, 122, 120, 118, 130, 28.27087 + 118, 83, 60, 60, 61, 75, 68, 95, 34, 21, 77, 59, 46, 49, 60, 42, 28.27088 + 44, 46, 34, 26, 20, 63, 79, 60, 56, 45, 42, 41, 32, 33, 40, 29, 28.27089 + 46, 42, 37, 30, 28, 29, 33, 18, 49, 57, 161, 221, 226, 209, 143, 148, 28.27090 + 154, 169, 175, 166, 159, 147, 120, 13, 5, 2, 12, 24, 14, 17, 150, 153, 28.27091 + 154, 158, 151, 151, 155, 159, 120, 49, 154, 154, 147, 146, 136, 132, 124, 115, 28.27092 + 99, 91, 76, 65, 64, 64, 76, 91, 100, 103, 107, 107, 107, 108, 110, 115, 28.27093 + 122, 127, 131, 138, 154, 153, 148, 146, 123, 103, 91, 76, 57, 53, 53, 42, 28.27094 + 36, 38, 45, 46, 76, 84, 75, 166, 208, 220, 206, 206, 187, 165, 142, 128, 28.27095 + 114, 95, 87, 83, 84, 88, 92, 95, 93, 100, 104, 107, 106, 110, 115, 122, 28.27096 + 128, 134, 131, 131, 135, 147, 140, 134, 107, 77, 107, 181, 198, 198, 171, 174, 28.27097 + 150, 143, 120, 115, 127, 122, 128, 127, 128, 120, 132, 134, 124, 138, 134, 130, 28.27098 + 122, 119, 122, 118, 112, 69, 45, 56, 87, 80, 83, 131, 175, 177, 126, 134, 28.27099 + 131, 131, 132, 131, 127, 128, 123, 122, 119, 114, 111, 111, 108, 106, 97, 89, 28.27100 + 63, 75, 87, 106, 135, 178, 187, 150, 157, 159, 158, 153, 162, 167, 169, 174, 28.27101 + 171, 161, 140, 138, 142, 131, 97, 65, 55, 44, 45, 77, 103, 112, 154, 199, 28.27102 + 175, 155, 165, 185, 199, 202, 205, 205, 204, 202, 204, 201, 202, 202, 205, 202, 28.27103 + 195, 186, 181, 179, 169, 140, 116, 48, 29, 30, 30, 33, 36, 65, 64, 71, 28.27104 + 81, 79, 83, 75, 68, 69, 76, 89, 69, 72, 81, 72, 72, 92, 89, 77, 28.27105 + 79, 88, 93, 108, 96, 97, 97, 97, 92, 95, 53, 13, 55, 96, 100, 77, 28.27106 + 83, 97, 170, 208, 210, 214, 225, 244, 218, 214, 206, 157, 130, 122, 124, 134, 28.27107 + 136, 136, 139, 139, 136, 134, 127, 130, 132, 130, 127, 123, 120, 122, 123, 124, 28.27108 + 122, 122, 123, 123, 132, 140, 159, 182, 189, 201, 202, 199, 195, 198, 199, 186, 28.27109 + 159, 120, 116, 119, 127, 127, 104, 36, 28, 20, 53, 53, 79, 171, 189, 193, 28.27110 + 205, 199, 204, 178, 146, 132, 118, 132, 120, 119, 123, 127, 111, 115, 106, 111, 28.27111 + 103, 123, 106, 108, 96, 81, 30, 36, 76, 53, 53, 21, 96, 93, 60, 57, 28.27112 + 53, 56, 53, 57, 46, 46, 41, 37, 34, 36, 36, 32, 32, 30, 30, 29, 28.27113 + 26, 25, 22, 24, 28, 24, 22, 21, 18, 20, 14, 14, 12, 10, 10, 14, 28.27114 + 24, 34, 28, 63, 59, 76, 151, 191, 191, 187, 201, 209, 181, 131, 114, 120, 28.27115 + 130, 124, 127, 132, 131, 134, 132, 134, 143, 139, 130, 143, 140, 123, 122, 123, 28.27116 + 154, 135, 49, 32, 73, 72, 76, 79, 83, 84, 88, 88, 93, 93, 71, 22, 28.27117 + 56, 96, 111, 100, 95, 89, 97, 100, 104, 108, 107, 103, 103, 114, 115, 107, 28.27118 + 103, 100, 77, 41, 21, 16, 12, 12, 13, 20, 57, 93, 103, 108, 110, 106, 28.27119 + 97, 100, 103, 103, 102, 99, 96, 84, 44, 24, 12, 8, 6, 18, 22, 18, 28.27120 + 95, 148, 182, 198, 186, 181, 202, 202, 136, 112, 116, 127, 122, 122, 122, 130, 28.27121 + 132, 134, 136, 132, 126, 127, 126, 127, 123, 115, 116, 132, 119, 103, 89, 91, 28.27122 + 81, 80, 64, 52, 25, 51, 64, 71, 59, 60, 45, 42, 45, 37, 24, 18, 28.27123 + 59, 49, 37, 42, 30, 25, 22, 32, 30, 30, 34, 30, 26, 28, 25, 29, 28.27124 + 25, 26, 41, 53, 69, 179, 225, 226, 206, 140, 147, 151, 162, 170, 163, 158, 28.27125 + 142, 99, 8, 4, 2, 6, 16, 10, 5, 162, 158, 158, 158, 154, 162, 153, 28.27126 + 144, 118, 52, 143, 153, 132, 139, 130, 130, 116, 118, 108, 104, 93, 87, 73, 28.27127 + 69, 60, 56, 53, 57, 60, 68, 79, 95, 96, 99, 97, 95, 95, 91, 89, 28.27128 + 88, 85, 77, 63, 52, 49, 46, 45, 37, 33, 36, 48, 61, 63, 59, 69, 28.27129 + 49, 49, 99, 143, 159, 153, 146, 144, 93, 80, 69, 64, 49, 34, 37, 38, 28.27130 + 32, 30, 30, 33, 34, 34, 40, 38, 36, 44, 72, 81, 88, 88, 85, 83, 28.27131 + 114, 110, 68, 40, 59, 99, 157, 151, 159, 157, 159, 130, 107, 87, 88, 102, 28.27132 + 106, 103, 102, 107, 108, 112, 112, 114, 114, 115, 111, 106, 102, 103, 96, 67, 28.27133 + 42, 40, 36, 41, 76, 68, 76, 131, 146, 128, 130, 108, 124, 124, 127, 123, 28.27134 + 124, 122, 115, 110, 108, 102, 111, 103, 106, 106, 91, 38, 44, 80, 76, 112, 28.27135 + 132, 178, 169, 150, 155, 154, 154, 153, 155, 157, 155, 150, 144, 139, 140, 131, 28.27136 + 108, 65, 53, 48, 49, 56, 63, 106, 108, 178, 189, 179, 167, 120, 151, 183, 28.27137 + 187, 191, 194, 193, 191, 189, 185, 178, 177, 181, 182, 181, 178, 163, 146, 135, 28.27138 + 108, 51, 33, 30, 30, 42, 55, 49, 60, 45, 46, 69, 73, 80, 79, 83, 28.27139 + 87, 103, 92, 96, 92, 100, 99, 97, 93, 93, 91, 79, 97, 95, 65, 56, 28.27140 + 30, 28, 42, 40, 38, 38, 14, 34, 40, 55, 80, 73, 95, 163, 205, 218, 28.27141 + 210, 210, 183, 157, 140, 130, 123, 130, 124, 131, 128, 130, 130, 131, 131, 131, 28.27142 + 126, 126, 123, 123, 122, 120, 112, 118, 119, 119, 119, 119, 118, 120, 116, 114, 28.27143 + 112, 111, 112, 114, 116, 118, 118, 115, 112, 112, 111, 114, 112, 119, 123, 128, 28.27144 + 123, 57, 22, 25, 29, 55, 51, 139, 189, 183, 193, 205, 175, 143, 135, 119, 28.27145 + 115, 103, 108, 106, 102, 108, 103, 102, 92, 97, 99, 97, 95, 102, 96, 88, 28.27146 + 84, 32, 42, 57, 51, 42, 26, 89, 92, 60, 52, 52, 51, 49, 49, 45, 28.27147 + 38, 34, 26, 30, 26, 25, 26, 25, 22, 22, 22, 18, 17, 16, 18, 17, 28.27148 + 16, 14, 13, 12, 10, 9, 9, 13, 12, 17, 30, 22, 29, 40, 61, 65, 28.27149 + 107, 179, 183, 193, 186, 163, 151, 124, 115, 124, 120, 126, 119, 123, 118, 116, 28.27150 + 120, 126, 131, 132, 127, 124, 131, 131, 122, 118, 124, 131, 110, 30, 60, 69, 28.27151 + 69, 68, 63, 73, 71, 73, 68, 80, 76, 38, 24, 36, 41, 40, 34, 30, 28.27152 + 26, 25, 21, 21, 21, 21, 17, 17, 17, 16, 14, 14, 14, 13, 12, 10, 28.27153 + 9, 8, 9, 10, 12, 10, 13, 12, 10, 10, 12, 10, 9, 8, 10, 10, 28.27154 + 9, 10, 10, 9, 9, 8, 4, 8, 20, 24, 20, 100, 161, 201, 191, 197, 28.27155 + 186, 157, 130, 118, 112, 116, 119, 111, 108, 116, 122, 120, 126, 128, 124, 119, 28.27156 + 116, 116, 112, 104, 108, 119, 116, 111, 83, 77, 65, 69, 60, 44, 41, 36, 28.27157 + 38, 40, 42, 40, 42, 38, 49, 42, 36, 25, 10, 55, 52, 29, 22, 48, 28.27158 + 76, 118, 155, 142, 89, 28, 36, 40, 13, 20, 20, 28, 18, 45, 42, 93, 28.27159 + 205, 225, 232, 202, 136, 140, 146, 158, 169, 163, 151, 138, 61, 2, 5, 2, 28.27160 + 2, 1, 1, 0, 61, 60, 65, 106, 110, 111, 126, 119, 111, 49, 79, 88, 28.27161 + 87, 87, 87, 83, 83, 79, 76, 75, 73, 67, 59, 63, 57, 53, 49, 52, 28.27162 + 49, 51, 46, 42, 41, 40, 44, 42, 44, 42, 44, 44, 44, 44, 42, 36, 28.27163 + 30, 26, 30, 40, 56, 44, 60, 67, 63, 52, 51, 65, 45, 28, 38, 45, 28.27164 + 41, 38, 34, 26, 38, 40, 30, 24, 25, 25, 25, 22, 21, 22, 20, 18, 28.27165 + 20, 21, 20, 17, 12, 16, 20, 17, 17, 24, 28, 6, 12, 26, 26, 33, 28.27166 + 18, 34, 45, 48, 67, 32, 5, 8, 20, 20, 17, 18, 20, 22, 18, 18, 28.27167 + 22, 20, 21, 22, 25, 30, 30, 30, 29, 26, 34, 41, 48, 61, 61, 51, 28.27168 + 44, 56, 53, 44, 37, 17, 18, 28, 24, 22, 17, 20, 17, 13, 17, 13, 28.27169 + 10, 16, 22, 13, 13, 20, 20, 24, 26, 26, 44, 96, 132, 173, 158, 146, 28.27170 + 144, 148, 147, 150, 153, 147, 144, 142, 142, 131, 97, 61, 51, 46, 46, 49, 28.27171 + 36, 64, 103, 106, 167, 186, 195, 178, 136, 111, 112, 128, 123, 123, 118, 131, 28.27172 + 126, 122, 119, 118, 119, 122, 118, 116, 112, 73, 60, 40, 30, 29, 33, 34, 28.27173 + 30, 29, 14, 13, 33, 13, 13, 13, 14, 38, 13, 10, 29, 30, 12, 12, 28.27174 + 29, 13, 13, 13, 16, 26, 44, 41, 59, 56, 97, 111, 119, 118, 104, 95, 28.27175 + 63, 13, 92, 100, 100, 56, 76, 89, 118, 142, 157, 143, 140, 128, 114, 108, 28.27176 + 110, 112, 114, 112, 127, 127, 120, 126, 126, 127, 127, 126, 124, 124, 122, 123, 28.27177 + 123, 120, 120, 122, 122, 122, 119, 116, 118, 116, 118, 116, 116, 116, 115, 114, 28.27178 + 115, 115, 115, 115, 114, 115, 118, 120, 124, 127, 126, 95, 29, 21, 24, 24, 28.27179 + 38, 48, 102, 161, 178, 148, 140, 111, 96, 91, 92, 93, 96, 97, 96, 97, 28.27180 + 97, 100, 100, 100, 97, 102, 95, 95, 92, 92, 89, 63, 40, 38, 46, 48, 28.27181 + 42, 24, 84, 48, 44, 34, 32, 32, 33, 24, 25, 22, 20, 14, 13, 12, 28.27182 + 12, 12, 12, 12, 12, 10, 9, 9, 9, 10, 12, 13, 13, 16, 14, 16, 28.27183 + 17, 18, 24, 26, 38, 21, 29, 41, 71, 64, 76, 157, 154, 143, 135, 130, 28.27184 + 122, 120, 112, 107, 112, 112, 115, 114, 110, 111, 115, 112, 112, 118, 115, 116, 28.27185 + 115, 111, 106, 100, 100, 102, 99, 37, 49, 9, 6, 9, 6, 5, 6, 5, 28.27186 + 8, 9, 4, 10, 8, 4, 24, 21, 13, 4, 18, 9, 1, 1, 2, 2, 28.27187 + 4, 4, 5, 6, 5, 5, 5, 5, 4, 5, 6, 9, 9, 9, 9, 10, 28.27188 + 10, 10, 9, 8, 8, 8, 8, 8, 5, 8, 8, 8, 6, 6, 5, 2, 28.27189 + 5, 8, 18, 21, 25, 22, 118, 154, 173, 158, 159, 135, 116, 111, 104, 102, 28.27190 + 104, 97, 103, 104, 99, 100, 108, 111, 114, 111, 110, 106, 100, 99, 102, 97, 28.27191 + 97, 91, 60, 26, 13, 9, 9, 10, 10, 9, 12, 10, 6, 10, 14, 16, 28.27192 + 14, 14, 17, 18, 22, 12, 51, 24, 41, 81, 143, 162, 174, 186, 183, 171, 28.27193 + 104, 30, 20, 52, 69, 61, 61, 52, 41, 65, 116, 216, 232, 232, 191, 134, 28.27194 + 140, 144, 158, 165, 161, 148, 132, 29, 2, 4, 5, 9, 14, 29, 41, 139, 28.27195 + 138, 132, 130, 103, 60, 81, 51, 83, 20, 0, 5, 5, 32, 2, 5, 20, 28.27196 + 22, 4, 5, 17, 20, 18, 12, 18, 17, 17, 9, 9, 32, 30, 29, 28, 28.27197 + 28, 25, 24, 21, 21, 21, 20, 20, 22, 21, 24, 33, 36, 49, 49, 60, 28.27198 + 73, 72, 72, 76, 80, 102, 95, 63, 63, 64, 73, 59, 53, 48, 46, 52, 28.27199 + 48, 45, 42, 46, 45, 45, 41, 38, 38, 36, 38, 44, 42, 37, 34, 30, 28.27200 + 26, 22, 30, 44, 49, 22, 37, 57, 28, 30, 28, 57, 45, 56, 61, 59, 28.27201 + 52, 45, 42, 46, 45, 42, 40, 45, 41, 42, 40, 41, 44, 45, 41, 44, 28.27202 + 45, 38, 40, 41, 44, 37, 44, 85, 75, 85, 85, 91, 69, 52, 64, 51, 28.27203 + 59, 64, 57, 53, 46, 48, 48, 45, 41, 42, 46, 42, 40, 48, 49, 45, 28.27204 + 45, 52, 63, 64, 84, 92, 76, 79, 131, 166, 153, 162, 147, 153, 147, 150, 28.27205 + 143, 146, 134, 123, 79, 52, 46, 45, 32, 33, 36, 52, 93, 104, 153, 177, 28.27206 + 193, 199, 175, 124, 92, 73, 71, 68, 64, 65, 59, 56, 52, 56, 51, 52, 28.27207 + 52, 52, 48, 49, 44, 51, 49, 52, 38, 59, 46, 60, 51, 52, 51, 52, 28.27208 + 52, 52, 52, 53, 46, 12, 38, 114, 147, 103, 108, 111, 112, 110, 93, 103, 28.27209 + 107, 122, 144, 136, 144, 144, 114, 120, 119, 131, 116, 96, 22, 103, 100, 115, 28.27210 + 114, 64, 79, 88, 104, 92, 87, 87, 77, 79, 68, 65, 61, 53, 55, 41, 28.27211 + 41, 36, 34, 33, 30, 30, 33, 30, 33, 30, 30, 29, 30, 29, 29, 28, 28.27212 + 28, 28, 32, 30, 32, 32, 29, 32, 37, 41, 60, 92, 107, 115, 119, 120, 28.27213 + 123, 123, 126, 127, 123, 111, 42, 24, 18, 17, 28, 56, 45, 61, 68, 67, 28.27214 + 68, 69, 71, 26, 20, 20, 18, 17, 17, 17, 16, 14, 14, 16, 16, 18, 28.27215 + 20, 18, 22, 22, 22, 24, 24, 12, 6, 12, 9, 13, 25, 32, 51, 63, 28.27216 + 57, 72, 76, 67, 59, 67, 64, 52, 9, 41, 59, 55, 55, 38, 46, 37, 28.27217 + 48, 29, 18, 25, 37, 64, 69, 65, 64, 61, 65, 61, 63, 64, 56, 53, 28.27218 + 20, 46, 68, 73, 67, 88, 107, 107, 112, 100, 96, 88, 87, 81, 71, 52, 28.27219 + 60, 45, 49, 44, 41, 36, 38, 36, 37, 36, 37, 36, 36, 37, 37, 36, 28.27220 + 41, 41, 36, 12, 17, 71, 76, 79, 87, 87, 81, 92, 81, 80, 81, 41, 28.27221 + 12, 69, 72, 79, 69, 72, 63, 68, 34, 21, 13, 10, 6, 13, 13, 12, 28.27222 + 9, 9, 6, 9, 8, 5, 9, 6, 8, 4, 12, 14, 13, 8, 16, 13, 28.27223 + 8, 4, 4, 8, 6, 8, 10, 10, 10, 9, 10, 12, 24, 30, 24, 30, 28.27224 + 20, 108, 107, 111, 102, 108, 95, 81, 59, 46, 44, 32, 30, 28, 30, 24, 28.27225 + 22, 22, 24, 18, 21, 20, 16, 14, 14, 17, 14, 14, 14, 12, 13, 28, 28.27226 + 29, 41, 42, 30, 40, 46, 55, 61, 56, 51, 30, 29, 22, 17, 40, 40, 28.27227 + 34, 22, 52, 85, 148, 191, 193, 187, 201, 187, 150, 104, 32, 29, 53, 68, 28.27228 + 60, 49, 56, 55, 85, 162, 221, 232, 232, 178, 132, 135, 143, 154, 161, 155, 28.27229 + 144, 107, 12, 4, 2, 5, 20, 41, 48, 55, 194, 189, 185, 178, 154, 134, 28.27230 + 124, 115, 87, 13, 44, 131, 159, 127, 127, 140, 162, 136, 134, 134, 132, 130, 28.27231 + 131, 134, 138, 138, 124, 104, 71, 61, 53, 29, 28, 25, 26, 29, 38, 40, 28.27232 + 40, 42, 48, 63, 60, 65, 68, 65, 69, 69, 91, 111, 119, 119, 132, 126, 28.27233 + 140, 116, 102, 52, 120, 115, 79, 77, 75, 72, 71, 71, 75, 75, 72, 52, 28.27234 + 60, 83, 85, 79, 79, 81, 84, 75, 57, 45, 36, 32, 18, 20, 44, 46, 28.27235 + 42, 42, 51, 49, 52, 59, 46, 8, 88, 71, 64, 64, 63, 61, 67, 48, 28.27236 + 45, 42, 45, 42, 42, 34, 37, 48, 42, 45, 46, 46, 41, 48, 41, 38, 28.27237 + 44, 84, 87, 77, 85, 91, 95, 95, 99, 89, 14, 100, 92, 76, 75, 55, 28.27238 + 60, 55, 53, 53, 57, 56, 52, 56, 57, 61, 61, 61, 65, 65, 69, 81, 28.27239 + 87, 93, 77, 83, 159, 162, 142, 146, 138, 136, 134, 132, 116, 77, 64, 53, 28.27240 + 51, 41, 51, 40, 33, 49, 87, 120, 118, 157, 194, 198, 202, 162, 104, 71, 28.27241 + 56, 51, 69, 55, 55, 51, 56, 56, 55, 52, 57, 59, 60, 59, 56, 56, 28.27242 + 53, 53, 53, 55, 53, 52, 59, 64, 65, 67, 72, 73, 73, 77, 71, 48, 28.27243 + 9, 122, 146, 138, 134, 119, 119, 114, 138, 122, 132, 81, 114, 123, 120, 114, 28.27244 + 127, 131, 120, 122, 124, 128, 85, 16, 92, 110, 112, 118, 96, 68, 79, 87, 28.27245 + 61, 51, 49, 64, 46, 48, 45, 45, 42, 42, 30, 26, 26, 24, 26, 21, 28.27246 + 22, 24, 25, 24, 24, 22, 22, 22, 22, 22, 20, 20, 18, 21, 20, 20, 28.27247 + 20, 20, 20, 21, 20, 22, 25, 30, 38, 49, 61, 76, 84, 92, 92, 77, 28.27248 + 41, 24, 24, 22, 24, 33, 59, 59, 57, 44, 46, 49, 42, 51, 42, 41, 28.27249 + 37, 36, 37, 34, 29, 26, 28, 25, 22, 22, 18, 21, 20, 17, 17, 14, 28.27250 + 14, 16, 16, 18, 33, 21, 40, 28, 76, 112, 118, 118, 115, 118, 112, 111, 28.27251 + 111, 81, 59, 2, 85, 68, 67, 60, 56, 71, 83, 59, 61, 51, 26, 75, 28.27252 + 91, 87, 84, 81, 87, 81, 83, 80, 72, 67, 53, 20, 76, 75, 67, 85, 28.27253 + 95, 91, 93, 84, 84, 76, 80, 59, 42, 44, 45, 41, 33, 30, 28, 25, 28.27254 + 25, 25, 21, 22, 22, 21, 17, 17, 14, 13, 16, 14, 13, 10, 16, 16, 28.27255 + 85, 89, 85, 85, 85, 83, 81, 84, 87, 95, 46, 13, 93, 81, 72, 81, 28.27256 + 73, 75, 72, 63, 55, 42, 24, 6, 24, 53, 48, 26, 32, 45, 44, 26, 28.27257 + 32, 40, 34, 21, 24, 38, 40, 41, 46, 48, 41, 38, 36, 17, 4, 13, 28.27258 + 26, 37, 28, 26, 30, 25, 26, 29, 33, 28, 32, 13, 81, 84, 73, 52, 28.27259 + 60, 55, 51, 33, 36, 37, 37, 26, 26, 28, 30, 24, 24, 22, 22, 20, 28.27260 + 21, 20, 18, 22, 24, 22, 21, 22, 25, 32, 29, 34, 41, 46, 49, 36, 28.27261 + 45, 65, 61, 37, 40, 60, 65, 61, 45, 45, 26, 18, 57, 81, 139, 193, 28.27262 + 190, 177, 187, 142, 116, 93, 104, 32, 32, 53, 80, 79, 84, 71, 57, 93, 28.27263 + 194, 222, 230, 229, 163, 131, 136, 142, 153, 154, 147, 136, 63, 5, 5, 2, 28.27264 + 4, 21, 44, 41, 69, 177, 174, 179, 174, 170, 175, 158, 147, 92, 6, 165, 28.27265 + 163, 159, 155, 155, 159, 151, 155, 154, 151, 147, 146, 147, 147, 146, 147, 142, 28.27266 + 143, 147, 138, 110, 79, 69, 46, 75, 93, 95, 88, 87, 87, 84, 81, 83, 28.27267 + 79, 75, 56, 60, 114, 132, 142, 140, 140, 138, 130, 135, 135, 114, 59, 122, 28.27268 + 116, 116, 112, 115, 112, 104, 104, 95, 93, 85, 52, 75, 97, 111, 108, 104, 28.27269 + 106, 106, 97, 84, 83, 80, 68, 18, 79, 84, 85, 99, 57, 65, 91, 64, 28.27270 + 60, 65, 20, 81, 106, 99, 106, 103, 89, 88, 65, 60, 67, 56, 29, 40, 28.27271 + 102, 59, 93, 76, 87, 63, 81, 64, 44, 30, 22, 44, 85, 89, 92, 85, 28.27272 + 91, 115, 99, 95, 79, 12, 106, 103, 73, 88, 79, 73, 75, 75, 81, 69, 28.27273 + 68, 52, 42, 52, 61, 77, 64, 69, 76, 85, 83, 85, 92, 93, 76, 142, 28.27274 + 161, 140, 95, 81, 76, 75, 65, 63, 56, 55, 44, 41, 49, 45, 38, 56, 28.27275 + 80, 95, 116, 119, 189, 195, 201, 198, 154, 104, 63, 56, 55, 56, 55, 56, 28.27276 + 56, 61, 61, 64, 77, 100, 136, 148, 165, 173, 165, 154, 115, 75, 63, 57, 28.27277 + 53, 57, 60, 59, 59, 63, 63, 65, 73, 72, 72, 34, 135, 143, 123, 110, 28.27278 + 110, 110, 107, 104, 119, 80, 97, 134, 138, 119, 131, 115, 122, 112, 122, 119, 28.27279 + 132, 88, 14, 97, 103, 120, 110, 99, 92, 61, 59, 55, 72, 71, 45, 37, 28.27280 + 36, 36, 42, 26, 32, 22, 22, 21, 20, 20, 20, 18, 20, 20, 21, 20, 28.27281 + 20, 20, 21, 20, 20, 20, 20, 20, 21, 25, 32, 28, 30, 32, 30, 26, 28.27282 + 22, 20, 21, 21, 24, 25, 25, 24, 25, 26, 24, 24, 21, 22, 13, 25, 28.27283 + 60, 67, 65, 59, 59, 56, 53, 49, 45, 42, 41, 45, 40, 38, 37, 33, 28.27284 + 33, 30, 30, 26, 26, 26, 25, 28, 24, 24, 24, 21, 24, 29, 38, 46, 28.27285 + 48, 46, 59, 93, 116, 114, 108, 107, 100, 99, 100, 107, 88, 64, 6, 80, 28.27286 + 73, 79, 60, 71, 72, 69, 61, 64, 59, 26, 80, 102, 108, 103, 95, 100, 28.27287 + 107, 103, 87, 85, 73, 56, 18, 69, 68, 80, 110, 111, 88, 81, 102, 75, 28.27288 + 46, 46, 46, 49, 51, 37, 33, 32, 26, 26, 26, 25, 24, 20, 21, 21, 28.27289 + 20, 18, 16, 14, 14, 16, 16, 13, 12, 22, 30, 88, 81, 76, 80, 84, 28.27290 + 80, 75, 75, 75, 111, 46, 16, 89, 89, 91, 91, 88, 87, 81, 68, 64, 28.27291 + 46, 28, 6, 48, 61, 64, 48, 45, 29, 34, 42, 36, 24, 26, 18, 28, 28.27292 + 55, 73, 69, 69, 60, 65, 59, 40, 26, 6, 55, 63, 46, 46, 40, 40, 28.27293 + 40, 37, 32, 30, 29, 34, 16, 61, 103, 73, 65, 49, 42, 51, 36, 34, 28.27294 + 36, 34, 25, 25, 28, 29, 20, 22, 24, 20, 24, 18, 18, 21, 24, 21, 28.27295 + 26, 28, 24, 25, 32, 34, 42, 34, 42, 22, 26, 63, 63, 85, 61, 38, 28.27296 + 36, 40, 33, 34, 29, 22, 53, 85, 92, 175, 190, 175, 171, 139, 96, 91, 28.27297 + 96, 73, 46, 37, 48, 75, 53, 57, 52, 69, 124, 206, 222, 230, 224, 144, 28.27298 + 130, 135, 140, 153, 150, 142, 114, 21, 4, 5, 1, 4, 22, 41, 44, 59, 28.27299 + 163, 169, 163, 158, 163, 159, 174, 144, 95, 22, 155, 173, 170, 175, 162, 162, 28.27300 + 162, 154, 147, 143, 120, 104, 115, 147, 158, 159, 153, 155, 130, 143, 143, 123, 28.27301 + 80, 55, 91, 104, 104, 106, 102, 103, 102, 100, 99, 103, 69, 52, 95, 136, 28.27302 + 147, 146, 136, 140, 138, 143, 144, 114, 108, 63, 119, 123, 118, 120, 120, 116, 28.27303 + 122, 107, 107, 110, 91, 56, 95, 102, 114, 116, 119, 132, 127, 124, 108, 108, 28.27304 + 83, 68, 18, 80, 103, 87, 99, 107, 93, 95, 93, 65, 63, 17, 72, 107, 28.27305 + 142, 144, 146, 107, 110, 96, 89, 64, 59, 26, 75, 114, 122, 112, 108, 103, 28.27306 + 104, 107, 87, 75, 53, 21, 56, 92, 96, 81, 69, 91, 99, 99, 110, 63, 28.27307 + 5, 114, 111, 118, 110, 68, 72, 56, 75, 71, 67, 69, 46, 33, 49, 108, 28.27308 + 92, 92, 91, 91, 84, 84, 83, 93, 111, 73, 154, 159, 139, 99, 87, 72, 28.27309 + 69, 61, 61, 51, 51, 42, 40, 37, 46, 55, 77, 83, 122, 120, 142, 186, 28.27310 + 204, 202, 202, 139, 103, 83, 77, 81, 71, 68, 71, 80, 95, 124, 155, 186, 28.27311 + 208, 218, 224, 226, 226, 218, 220, 212, 190, 163, 138, 88, 67, 57, 60, 60, 28.27312 + 63, 60, 60, 71, 69, 68, 12, 96, 142, 100, 97, 114, 114, 107, 107, 114, 28.27313 + 81, 102, 123, 135, 132, 126, 131, 127, 120, 127, 123, 126, 81, 14, 97, 102, 28.27314 + 112, 108, 97, 64, 63, 61, 61, 67, 49, 29, 80, 68, 56, 49, 56, 68, 28.27315 + 48, 52, 49, 44, 40, 38, 44, 40, 51, 51, 51, 44, 42, 42, 40, 37, 28.27316 + 34, 36, 33, 55, 48, 51, 49, 57, 55, 57, 51, 48, 38, 29, 22, 26, 28.27317 + 24, 21, 21, 20, 20, 22, 20, 24, 22, 9, 33, 64, 77, 81, 84, 81, 28.27318 + 85, 79, 79, 67, 56, 48, 76, 80, 60, 57, 59, 48, 48, 57, 55, 24, 28.27319 + 9, 38, 53, 61, 40, 32, 40, 48, 32, 55, 48, 52, 45, 53, 95, 114, 28.27320 + 108, 107, 108, 100, 99, 84, 95, 102, 48, 8, 59, 84, 77, 87, 85, 95, 28.27321 + 96, 72, 87, 51, 28, 73, 104, 110, 110, 104, 103, 112, 99, 104, 85, 75, 28.27322 + 64, 20, 71, 64, 72, 83, 96, 128, 107, 93, 53, 56, 46, 61, 85, 81, 28.27323 + 76, 55, 61, 61, 64, 55, 53, 44, 40, 34, 37, 34, 32, 30, 28, 28, 28.27324 + 26, 25, 28, 22, 25, 16, 68, 95, 104, 83, 72, 80, 99, 80, 79, 96, 28.27325 + 45, 18, 77, 89, 88, 84, 83, 77, 104, 65, 63, 60, 28, 8, 51, 63, 28.27326 + 48, 64, 45, 53, 34, 37, 38, 51, 28, 21, 48, 72, 80, 77, 65, 56, 28.27327 + 55, 68, 40, 30, 13, 59, 60, 46, 42, 44, 38, 48, 37, 37, 25, 32, 28.27328 + 34, 13, 63, 83, 61, 79, 65, 71, 72, 51, 41, 41, 40, 33, 37, 36, 28.27329 + 21, 28, 28, 28, 28, 26, 29, 28, 24, 29, 32, 33, 33, 30, 32, 33, 28.27330 + 38, 34, 52, 48, 33, 12, 53, 65, 57, 51, 53, 30, 38, 29, 25, 32, 28.27331 + 21, 59, 88, 106, 186, 181, 175, 144, 103, 96, 93, 112, 64, 45, 33, 55, 28.27332 + 60, 61, 55, 55, 71, 147, 213, 220, 228, 208, 134, 131, 136, 143, 150, 146, 28.27333 + 138, 72, 9, 5, 4, 1, 2, 22, 34, 26, 77, 162, 157, 167, 165, 162, 28.27334 + 155, 157, 128, 88, 38, 110, 171, 174, 170, 175, 166, 163, 165, 163, 147, 120, 28.27335 + 97, 143, 155, 159, 154, 150, 146, 151, 136, 143, 139, 96, 61, 107, 128, 132, 28.27336 + 131, 127, 127, 127, 118, 110, 119, 67, 48, 97, 143, 146, 148, 148, 132, 131, 28.27337 + 138, 132, 120, 89, 71, 118, 118, 123, 114, 115, 127, 124, 116, 114, 118, 97, 28.27338 + 67, 96, 115, 131, 124, 106, 134, 122, 132, 123, 111, 103, 77, 25, 67, 110, 28.27339 + 103, 97, 95, 95, 92, 102, 72, 69, 17, 97, 115, 143, 138, 139, 144, 115, 28.27340 + 120, 106, 92, 63, 13, 95, 116, 131, 127, 119, 118, 120, 115, 111, 104, 52, 28.27341 + 21, 100, 102, 104, 104, 79, 96, 120, 110, 102, 85, 12, 118, 120, 110, 103, 28.27342 + 89, 75, 79, 99, 103, 97, 91, 56, 20, 99, 110, 115, 114, 104, 95, 96, 28.27343 + 91, 91, 102, 103, 91, 146, 159, 148, 130, 106, 87, 77, 69, 61, 53, 55, 28.27344 + 45, 37, 48, 52, 79, 79, 100, 118, 112, 123, 195, 198, 210, 183, 135, 104, 28.27345 + 122, 127, 118, 126, 136, 158, 174, 198, 210, 221, 225, 226, 225, 224, 221, 220, 28.27346 + 221, 218, 213, 213, 208, 210, 181, 127, 71, 61, 59, 61, 65, 61, 69, 76, 28.27347 + 51, 10, 99, 146, 120, 106, 132, 114, 132, 116, 99, 71, 100, 139, 138, 127, 28.27348 + 132, 124, 138, 132, 118, 116, 122, 97, 18, 103, 102, 114, 111, 110, 87, 83, 28.27349 + 63, 75, 65, 67, 49, 72, 89, 87, 68, 67, 59, 65, 63, 60, 59, 59, 28.27350 + 40, 33, 49, 51, 55, 60, 52, 56, 57, 57, 59, 57, 49, 45, 53, 64, 28.27351 + 60, 63, 57, 59, 57, 57, 56, 37, 59, 63, 64, 63, 56, 56, 34, 32, 28.27352 + 30, 28, 28, 24, 10, 41, 71, 85, 85, 83, 85, 85, 89, 83, 75, 63, 28.27353 + 53, 71, 89, 68, 80, 77, 77, 61, 52, 60, 53, 13, 64, 65, 67, 64, 28.27354 + 64, 59, 55, 52, 51, 46, 49, 51, 44, 85, 107, 111, 104, 106, 95, 95, 28.27355 + 85, 95, 77, 64, 12, 76, 81, 95, 80, 77, 81, 84, 88, 84, 57, 37, 28.27356 + 91, 106, 103, 104, 106, 112, 115, 112, 110, 99, 83, 60, 20, 71, 67, 83, 28.27357 + 69, 84, 99, 119, 107, 56, 57, 46, 67, 91, 77, 75, 73, 75, 71, 73, 28.27358 + 75, 71, 53, 52, 41, 57, 59, 56, 53, 53, 44, 40, 46, 46, 32, 22, 28.27359 + 56, 87, 93, 81, 83, 76, 87, 79, 84, 81, 106, 53, 21, 88, 89, 87, 28.27360 + 100, 79, 81, 75, 79, 60, 63, 28, 6, 53, 69, 56, 88, 59, 60, 63, 28.27361 + 53, 44, 49, 28, 18, 63, 80, 80, 57, 51, 51, 52, 67, 41, 25, 5, 28.27362 + 48, 60, 49, 52, 42, 41, 32, 37, 36, 33, 34, 37, 21, 71, 85, 80, 28.27363 + 60, 68, 65, 76, 61, 63, 40, 37, 18, 14, 32, 28, 32, 29, 30, 24, 28.27364 + 26, 29, 20, 17, 26, 46, 51, 51, 52, 29, 25, 25, 30, 38, 45, 37, 28.27365 + 17, 57, 60, 57, 51, 44, 33, 36, 32, 28, 24, 22, 60, 88, 110, 186, 28.27366 + 182, 146, 112, 99, 89, 107, 104, 80, 44, 36, 44, 65, 56, 48, 61, 102, 28.27367 + 189, 217, 224, 228, 187, 127, 130, 135, 148, 146, 140, 116, 20, 5, 5, 4, 28.27368 + 1, 4, 12, 40, 21, 49, 181, 162, 162, 161, 155, 159, 155, 153, 79, 5, 28.27369 + 122, 174, 171, 170, 174, 169, 165, 162, 165, 135, 118, 93, 142, 155, 146, 153, 28.27370 + 150, 157, 165, 157, 148, 144, 114, 71, 120, 138, 140, 124, 139, 135, 135, 124, 28.27371 + 108, 106, 69, 45, 120, 147, 147, 151, 140, 130, 143, 136, 138, 119, 111, 79, 28.27372 + 116, 126, 114, 135, 124, 114, 115, 127, 124, 127, 104, 69, 103, 128, 131, 130, 28.27373 + 107, 118, 119, 127, 123, 119, 107, 79, 8, 71, 97, 108, 100, 95, 93, 97, 28.27374 + 100, 72, 69, 20, 88, 116, 138, 132, 127, 131, 130, 115, 111, 96, 60, 28, 28.27375 + 108, 126, 130, 127, 130, 122, 132, 131, 119, 107, 71, 20, 104, 104, 108, 96, 28.27376 + 104, 100, 111, 108, 100, 85, 10, 118, 104, 97, 92, 102, 87, 91, 114, 116, 28.27377 + 103, 91, 55, 36, 102, 110, 124, 124, 123, 102, 103, 107, 102, 92, 92, 83, 28.27378 + 136, 157, 154, 132, 132, 123, 95, 91, 71, 64, 48, 33, 42, 71, 80, 81, 28.27379 + 100, 96, 118, 116, 122, 178, 206, 208, 179, 122, 96, 114, 183, 187, 193, 201, 28.27380 + 205, 212, 220, 221, 221, 221, 214, 209, 194, 193, 193, 181, 171, 161, 162, 166, 28.27381 + 182, 199, 199, 161, 87, 67, 57, 60, 61, 64, 67, 42, 9, 118, 154, 128, 28.27382 + 115, 110, 119, 107, 114, 111, 63, 102, 132, 135, 122, 122, 122, 123, 124, 122, 28.27383 + 119, 116, 96, 20, 102, 95, 112, 107, 111, 107, 99, 81, 73, 64, 55, 52, 28.27384 + 80, 88, 79, 81, 81, 64, 81, 85, 87, 75, 53, 38, 44, 79, 95, 91, 28.27385 + 59, 59, 60, 64, 65, 65, 68, 37, 51, 87, 83, 84, 83, 65, 64, 67, 28.27386 + 63, 63, 42, 59, 72, 69, 73, 65, 65, 56, 52, 51, 48, 45, 25, 8, 28.27387 + 64, 72, 87, 93, 97, 95, 85, 73, 91, 79, 68, 44, 71, 73, 91, 75, 28.27388 + 73, 80, 76, 67, 67, 57, 6, 72, 69, 53, 75, 72, 42, 48, 72, 64, 28.27389 + 68, 53, 51, 37, 83, 110, 112, 96, 95, 89, 87, 97, 76, 83, 64, 2, 28.27390 + 76, 83, 102, 83, 73, 71, 75, 83, 96, 60, 38, 97, 110, 116, 114, 107, 28.27391 + 100, 102, 112, 115, 104, 89, 61, 20, 69, 63, 69, 63, 85, 99, 96, 81, 28.27392 + 57, 59, 52, 69, 88, 85, 79, 76, 75, 76, 72, 71, 73, 73, 53, 44, 28.27393 + 60, 63, 63, 60, 59, 57, 56, 56, 55, 34, 16, 77, 67, 88, 72, 80, 28.27394 + 80, 84, 84, 77, 80, 92, 57, 22, 89, 89, 95, 99, 100, 99, 75, 81, 28.27395 + 63, 63, 30, 6, 46, 71, 67, 68, 65, 57, 53, 59, 59, 51, 29, 24, 28.27396 + 71, 81, 79, 46, 48, 60, 60, 63, 38, 28, 5, 72, 53, 53, 40, 41, 28.27397 + 41, 44, 42, 45, 45, 36, 40, 18, 59, 97, 77, 72, 65, 76, 57, 65, 28.27398 + 59, 55, 44, 13, 20, 29, 42, 38, 28, 29, 29, 32, 34, 24, 18, 49, 28.27399 + 48, 53, 51, 40, 52, 49, 51, 37, 42, 38, 37, 21, 56, 61, 53, 49, 28.27400 + 44, 32, 25, 29, 29, 26, 22, 51, 85, 91, 183, 178, 130, 103, 100, 99, 28.27401 + 120, 118, 80, 32, 36, 44, 59, 57, 53, 79, 163, 204, 208, 224, 220, 148, 28.27402 + 124, 130, 142, 143, 138, 126, 49, 6, 4, 4, 2, 1, 4, 20, 34, 25, 28.27403 + 17, 178, 166, 161, 161, 165, 161, 159, 147, 76, 6, 132, 170, 166, 174, 169, 28.27404 + 171, 169, 167, 157, 132, 112, 89, 136, 140, 155, 154, 161, 155, 150, 153, 154, 28.27405 + 142, 134, 80, 122, 130, 136, 132, 126, 131, 130, 126, 119, 108, 68, 83, 135, 28.27406 + 146, 146, 134, 140, 123, 128, 135, 128, 123, 122, 83, 103, 127, 123, 108, 111, 28.27407 + 123, 126, 135, 122, 123, 119, 72, 106, 130, 128, 116, 110, 124, 128, 128, 126, 28.27408 + 126, 111, 77, 13, 77, 108, 110, 99, 111, 100, 99, 97, 75, 73, 26, 81, 28.27409 + 122, 131, 134, 136, 136, 136, 131, 116, 97, 60, 28, 100, 112, 118, 126, 134, 28.27410 + 135, 135, 134, 128, 108, 64, 46, 107, 104, 108, 103, 123, 118, 122, 104, 96, 28.27411 + 72, 9, 123, 118, 107, 102, 108, 124, 126, 126, 124, 118, 96, 55, 18, 107, 28.27412 + 120, 130, 127, 127, 127, 128, 130, 108, 107, 108, 79, 124, 153, 151, 143, 128, 28.27413 + 131, 116, 111, 83, 96, 52, 30, 59, 75, 100, 103, 104, 96, 136, 118, 131, 28.27414 + 144, 191, 204, 175, 118, 106, 112, 151, 185, 194, 197, 204, 206, 206, 209, 201, 28.27415 + 195, 186, 167, 150, 144, 144, 147, 139, 142, 138, 144, 147, 144, 155, 181, 173, 28.27416 + 96, 57, 60, 64, 63, 67, 63, 29, 128, 132, 132, 115, 111, 118, 107, 111, 28.27417 + 102, 64, 96, 136, 131, 123, 128, 120, 122, 114, 128, 127, 115, 92, 20, 97, 28.27418 + 92, 118, 122, 114, 100, 87, 73, 75, 68, 55, 29, 76, 99, 83, 89, 77, 28.27419 + 80, 92, 93, 95, 84, 55, 37, 64, 95, 95, 103, 100, 75, 76, 73, 67, 28.27420 + 77, 63, 36, 81, 85, 91, 89, 91, 84, 71, 68, 69, 67, 45, 71, 73, 28.27421 + 81, 77, 77, 73, 65, 57, 57, 52, 48, 25, 6, 69, 84, 89, 75, 85, 28.27422 + 93, 95, 73, 83, 81, 68, 37, 72, 76, 88, 83, 89, 93, 76, 83, 67, 28.27423 + 60, 6, 80, 72, 65, 69, 67, 73, 71, 76, 73, 75, 68, 52, 55, 85, 28.27424 + 116, 96, 97, 93, 102, 89, 89, 97, 77, 68, 4, 85, 84, 80, 79, 99, 28.27425 + 95, 100, 89, 81, 63, 36, 92, 104, 112, 120, 118, 111, 110, 111, 104, 110, 28.27426 + 89, 61, 20, 68, 68, 71, 69, 96, 55, 60, 63, 56, 61, 51, 71, 87, 28.27427 + 85, 88, 71, 85, 80, 79, 73, 76, 73, 63, 44, 55, 64, 73, 72, 72, 28.27428 + 68, 67, 65, 56, 36, 16, 69, 96, 89, 77, 84, 93, 91, 89, 77, 73, 28.27429 + 92, 51, 26, 87, 93, 84, 83, 84, 83, 84, 80, 61, 63, 33, 9, 57, 28.27430 + 79, 52, 61, 49, 73, 63, 69, 61, 46, 28, 30, 68, 85, 60, 55, 49, 28.27431 + 64, 65, 63, 37, 25, 5, 68, 73, 53, 51, 45, 48, 49, 51, 51, 46, 28.27432 + 38, 41, 22, 61, 85, 92, 71, 67, 60, 49, 55, 53, 52, 41, 9, 32, 28.27433 + 53, 55, 46, 42, 40, 44, 48, 36, 25, 14, 48, 46, 49, 42, 48, 53, 28.27434 + 41, 52, 45, 46, 38, 28, 21, 55, 72, 41, 45, 37, 33, 28, 29, 28, 28.27435 + 25, 20, 52, 73, 85, 131, 173, 142, 108, 103, 106, 130, 118, 60, 51, 40, 28.27436 + 48, 53, 48, 76, 138, 201, 208, 212, 221, 194, 126, 124, 131, 146, 139, 130, 28.27437 + 81, 12, 4, 8, 4, 2, 1, 2, 21, 34, 38, 18, 162, 163, 165, 174, 28.27438 + 171, 166, 157, 150, 80, 9, 154, 171, 170, 171, 171, 171, 165, 165, 144, 130, 28.27439 + 112, 81, 130, 154, 167, 165, 162, 159, 153, 151, 148, 143, 135, 87, 85, 119, 28.27440 + 128, 123, 131, 131, 126, 123, 124, 107, 65, 92, 143, 144, 130, 130, 130, 138, 28.27441 + 138, 135, 134, 115, 119, 83, 102, 135, 126, 123, 110, 128, 104, 120, 103, 96, 28.27442 + 123, 77, 108, 132, 131, 115, 122, 134, 132, 118, 112, 127, 111, 75, 9, 81, 28.27443 + 103, 115, 102, 102, 107, 99, 93, 81, 77, 20, 75, 124, 132, 128, 130, 128, 28.27444 + 124, 134, 116, 99, 65, 25, 73, 127, 116, 132, 135, 138, 138, 138, 128, 126, 28.27445 + 61, 18, 104, 112, 111, 112, 107, 115, 110, 110, 110, 61, 4, 120, 116, 97, 28.27446 + 115, 108, 102, 95, 108, 99, 119, 92, 52, 16, 108, 110, 118, 124, 119, 128, 28.27447 + 132, 138, 110, 108, 108, 89, 103, 148, 150, 142, 128, 134, 119, 118, 112, 99, 28.27448 + 63, 32, 72, 97, 106, 102, 100, 99, 135, 123, 136, 122, 171, 209, 178, 110, 28.27449 + 103, 106, 120, 131, 158, 167, 177, 178, 181, 174, 159, 143, 135, 140, 142, 143, 28.27450 + 146, 157, 158, 163, 147, 140, 135, 130, 136, 136, 173, 153, 93, 53, 63, 60, 28.27451 + 60, 59, 14, 103, 128, 127, 96, 112, 122, 114, 114, 96, 65, 99, 134, 136, 28.27452 + 130, 122, 127, 123, 122, 131, 126, 116, 89, 25, 92, 97, 99, 104, 107, 107, 28.27453 + 89, 72, 77, 73, 60, 29, 55, 91, 93, 92, 103, 104, 119, 118, 115, 89, 28.27454 + 60, 16, 68, 96, 96, 103, 91, 84, 89, 108, 100, 80, 67, 34, 83, 87, 28.27455 + 95, 87, 84, 88, 84, 84, 71, 67, 49, 69, 80, 81, 80, 76, 77, 73, 28.27456 + 67, 61, 57, 46, 28, 6, 71, 88, 69, 73, 81, 102, 88, 84, 88, 77, 28.27457 + 68, 40, 83, 81, 88, 80, 87, 83, 85, 87, 71, 46, 8, 79, 79, 95, 28.27458 + 77, 76, 79, 89, 77, 75, 73, 81, 60, 42, 68, 104, 114, 115, 108, 103, 28.27459 + 110, 115, 92, 85, 46, 1, 69, 88, 87, 96, 106, 95, 95, 93, 80, 64, 28.27460 + 34, 73, 107, 107, 111, 108, 111, 112, 111, 118, 114, 106, 63, 21, 67, 60, 28.27461 + 73, 88, 65, 83, 67, 68, 53, 63, 55, 71, 77, 95, 93, 76, 79, 88, 28.27462 + 89, 83, 85, 79, 72, 48, 57, 75, 60, 69, 76, 75, 72, 71, 59, 38, 28.27463 + 18, 87, 95, 91, 97, 87, 87, 84, 77, 77, 81, 95, 51, 33, 53, 92, 28.27464 + 84, 77, 83, 81, 79, 75, 61, 59, 32, 9, 59, 73, 65, 61, 68, 67, 28.27465 + 69, 59, 53, 41, 32, 24, 69, 80, 63, 46, 61, 55, 61, 60, 38, 29, 28.27466 + 4, 64, 60, 57, 53, 68, 68, 75, 73, 69, 53, 41, 42, 24, 57, 91, 28.27467 + 97, 96, 77, 77, 51, 51, 53, 46, 33, 22, 45, 48, 40, 46, 55, 55, 28.27468 + 53, 44, 34, 25, 14, 53, 48, 46, 32, 55, 52, 48, 51, 44, 46, 42, 28.27469 + 34, 13, 53, 68, 48, 41, 32, 33, 30, 41, 24, 29, 18, 42, 60, 79, 28.27470 + 102, 135, 167, 112, 103, 130, 139, 100, 52, 51, 60, 48, 57, 77, 135, 187, 28.27471 + 208, 209, 221, 210, 151, 120, 130, 140, 138, 126, 97, 18, 5, 5, 5, 5, 28.27472 + 2, 1, 1, 14, 33, 5, 28, 158, 159, 157, 154, 157, 155, 154, 138, 71, 28.27473 + 12, 116, 171, 169, 169, 169, 171, 171, 158, 134, 126, 112, 72, 150, 147, 158, 28.27474 + 148, 157, 148, 146, 142, 138, 138, 132, 130, 91, 96, 108, 107, 124, 130, 134, 28.27475 + 119, 123, 116, 60, 93, 142, 146, 124, 134, 135, 136, 131, 135, 122, 143, 106, 28.27476 + 88, 100, 135, 126, 128, 119, 130, 114, 111, 107, 123, 96, 84, 112, 134, 127, 28.27477 + 139, 111, 114, 132, 128, 130, 115, 110, 84, 21, 68, 107, 110, 112, 104, 108, 28.27478 + 103, 103, 83, 81, 26, 119, 127, 128, 139, 127, 122, 123, 124, 120, 96, 64, 28.27479 + 8, 108, 130, 119, 130, 134, 132, 140, 134, 128, 120, 83, 20, 114, 122, 120, 28.27480 + 110, 118, 115, 118, 123, 99, 93, 9, 118, 134, 123, 130, 122, 123, 124, 119, 28.27481 + 114, 118, 95, 52, 13, 119, 118, 122, 135, 126, 116, 114, 130, 127, 108, 111, 28.27482 + 91, 96, 143, 147, 142, 142, 134, 128, 127, 118, 107, 68, 32, 80, 100, 106, 28.27483 + 108, 116, 132, 119, 136, 114, 140, 126, 201, 191, 123, 111, 107, 115, 119, 127, 28.27484 + 132, 134, 139, 134, 132, 126, 118, 115, 115, 118, 132, 143, 153, 157, 158, 159, 28.27485 + 144, 142, 142, 140, 130, 139, 170, 100, 53, 59, 60, 63, 51, 14, 102, 140, 28.27486 + 128, 116, 114, 116, 115, 118, 95, 52, 96, 130, 142, 139, 134, 132, 132, 132, 28.27487 + 135, 122, 114, 95, 34, 93, 99, 107, 100, 91, 84, 81, 65, 76, 79, 52, 28.27488 + 64, 76, 106, 116, 102, 107, 103, 116, 99, 92, 89, 55, 16, 76, 100, 106, 28.27489 + 95, 97, 97, 96, 99, 97, 75, 69, 30, 97, 87, 96, 83, 91, 85, 88, 28.27490 + 89, 89, 71, 49, 67, 75, 73, 75, 73, 76, 69, 68, 65, 65, 48, 30, 28.27491 + 9, 73, 89, 87, 67, 89, 73, 72, 79, 79, 76, 65, 44, 79, 91, 91, 28.27492 + 83, 80, 81, 87, 87, 67, 64, 22, 80, 80, 80, 93, 83, 81, 81, 87, 28.27493 + 87, 88, 87, 76, 51, 68, 91, 99, 102, 99, 83, 91, 85, 85, 80, 69, 28.27494 + 8, 72, 91, 89, 92, 93, 89, 83, 80, 81, 75, 55, 52, 95, 103, 103, 28.27495 + 103, 102, 104, 104, 103, 103, 95, 68, 21, 65, 67, 56, 64, 55, 69, 64, 28.27496 + 63, 63, 72, 64, 55, 79, 71, 73, 69, 75, 72, 75, 73, 77, 75, 75, 28.27497 + 69, 55, 61, 61, 55, 63, 67, 65, 72, 63, 44, 16, 76, 95, 85, 79, 28.27498 + 79, 83, 77, 79, 85, 93, 96, 60, 28, 38, 87, 95, 88, 95, 84, 79, 28.27499 + 57, 59, 49, 32, 9, 55, 71, 73, 81, 71, 76, 69, 65, 63, 38, 32, 28.27500 + 28, 69, 93, 72, 45, 48, 63, 64, 75, 42, 24, 5, 45, 68, 57, 60, 28.27501 + 61, 53, 49, 53, 57, 64, 42, 44, 24, 55, 80, 92, 85, 71, 71, 42, 28.27502 + 51, 52, 49, 29, 18, 52, 46, 51, 44, 41, 37, 40, 42, 34, 21, 14, 28.27503 + 55, 44, 48, 52, 52, 48, 49, 48, 45, 46, 48, 36, 10, 52, 59, 41, 28.27504 + 29, 38, 32, 29, 24, 26, 20, 20, 45, 49, 42, 65, 81, 157, 144, 103, 28.27505 + 114, 135, 127, 61, 49, 56, 72, 111, 150, 186, 198, 202, 217, 213, 165, 119, 28.27506 + 124, 136, 134, 122, 87, 18, 6, 5, 6, 5, 5, 2, 1, 2, 21, 25, 28.27507 + 57, 65, 139, 138, 138, 138, 136, 138, 131, 130, 67, 26, 79, 128, 173, 174, 28.27508 + 151, 155, 134, 134, 132, 104, 99, 72, 142, 146, 144, 140, 143, 147, 142, 132, 28.27509 + 126, 122, 124, 119, 124, 138, 134, 123, 110, 110, 110, 106, 111, 97, 59, 119, 28.27510 + 140, 148, 127, 128, 118, 124, 120, 119, 114, 123, 122, 107, 92, 111, 114, 108, 28.27511 + 116, 115, 127, 122, 122, 123, 123, 116, 111, 99, 104, 128, 123, 118, 114, 115, 28.27512 + 112, 108, 103, 81, 9, 64, 107, 104, 102, 104, 102, 100, 102, 93, 77, 30, 28.27513 + 83, 119, 119, 122, 120, 123, 120, 128, 122, 95, 59, 30, 112, 128, 123, 122, 28.27514 + 122, 127, 115, 128, 123, 108, 72, 12, 108, 106, 124, 124, 120, 122, 126, 116, 28.27515 + 96, 88, 9, 110, 120, 119, 118, 119, 118, 116, 115, 114, 115, 89, 49, 29, 28.27516 + 112, 116, 124, 119, 123, 118, 124, 114, 118, 119, 111, 97, 85, 120, 146, 138, 28.27517 + 131, 124, 110, 115, 122, 106, 71, 30, 80, 103, 126, 122, 134, 146, 127, 150, 28.27518 + 147, 135, 116, 144, 182, 134, 103, 106, 110, 118, 119, 115, 124, 123, 126, 120, 28.27519 + 118, 115, 116, 120, 151, 155, 131, 150, 161, 157, 157, 165, 148, 147, 143, 144, 28.27520 + 140, 166, 96, 46, 52, 57, 61, 44, 9, 92, 124, 127, 118, 111, 118, 115, 28.27521 + 106, 95, 51, 96, 115, 132, 130, 124, 122, 119, 119, 116, 108, 104, 93, 29, 28.27522 + 48, 84, 85, 61, 55, 75, 73, 49, 52, 60, 61, 67, 79, 99, 108, 99, 28.27523 + 96, 93, 96, 93, 92, 91, 48, 30, 68, 95, 110, 104, 104, 110, 97, 102, 28.27524 + 97, 77, 68, 33, 85, 83, 89, 84, 79, 77, 67, 64, 80, 76, 72, 71, 28.27525 + 56, 59, 59, 59, 55, 53, 55, 57, 52, 51, 29, 6, 77, 95, 59, 60, 28.27526 + 64, 60, 61, 61, 65, 69, 63, 61, 59, 64, 76, 76, 65, 65, 63, 64, 28.27527 + 59, 67, 5, 79, 79, 80, 76, 76, 79, 81, 79, 79, 75, 79, 77, 72, 28.27528 + 53, 52, 61, 65, 63, 61, 65, 65, 65, 69, 73, 5, 41, 85, 85, 83, 28.27529 + 83, 80, 53, 51, 53, 59, 73, 73, 59, 73, 85, 79, 83, 80, 85, 91, 28.27530 + 91, 81, 63, 21, 57, 51, 52, 57, 55, 56, 60, 63, 40, 38, 41, 69, 28.27531 + 71, 73, 75, 76, 75, 76, 77, 79, 75, 77, 73, 73, 72, 77, 75, 76, 28.27532 + 73, 60, 60, 71, 60, 46, 20, 85, 96, 81, 87, 92, 79, 93, 96, 84, 28.27533 + 73, 71, 63, 32, 32, 83, 77, 85, 55, 53, 53, 42, 46, 42, 32, 9, 28.27534 + 53, 63, 60, 42, 59, 59, 63, 49, 51, 42, 30, 25, 68, 81, 55, 56, 28.27535 + 49, 60, 60, 76, 34, 26, 5, 67, 63, 60, 57, 55, 52, 52, 52, 49, 28.27536 + 48, 46, 46, 26, 34, 52, 73, 67, 52, 41, 48, 44, 41, 49, 45, 18, 28.27537 + 52, 48, 51, 42, 48, 42, 40, 37, 34, 24, 14, 48, 53, 49, 46, 48, 28.27538 + 48, 46, 41, 42, 40, 36, 24, 13, 44, 56, 34, 21, 22, 25, 28, 26, 28.27539 + 25, 21, 21, 33, 42, 41, 46, 67, 77, 171, 114, 110, 140, 134, 128, 124, 28.27540 + 126, 153, 179, 182, 193, 195, 210, 206, 163, 116, 124, 131, 120, 111, 83, 22, 28.27541 + 6, 6, 6, 5, 4, 5, 4, 1, 2, 12, 14, 12, 10, 81, 77, 75, 28.27542 + 67, 60, 56, 49, 45, 36, 40, 40, 56, 65, 63, 80, 84, 95, 77, 97, 28.27543 + 107, 84, 69, 106, 75, 99, 93, 65, 67, 85, 71, 60, 55, 68, 64, 77, 28.27544 + 60, 76, 75, 99, 131, 134, 132, 95, 81, 56, 114, 123, 127, 118, 116, 110, 28.27545 + 123, 118, 115, 126, 127, 120, 115, 119, 130, 135, 134, 130, 132, 128, 130, 128, 28.27546 + 124, 122, 122, 119, 119, 75, 76, 53, 40, 37, 36, 33, 33, 28, 36, 10, 28.27547 + 32, 32, 37, 41, 44, 55, 84, 99, 89, 76, 37, 10, 85, 112, 68, 83, 28.27548 + 95, 114, 68, 91, 91, 48, 29, 60, 83, 68, 67, 84, 80, 69, 67, 84, 28.27549 + 85, 38, 13, 63, 83, 61, 87, 77, 77, 59, 91, 75, 42, 10, 33, 80, 28.27550 + 81, 80, 79, 87, 88, 83, 84, 88, 87, 45, 17, 85, 122, 118, 96, 92, 28.27551 + 108, 111, 84, 95, 103, 115, 102, 107, 111, 104, 93, 107, 103, 103, 95, 92, 28.27552 + 89, 69, 33, 76, 112, 112, 103, 100, 112, 112, 103, 106, 130, 136, 167, 182, 28.27553 + 170, 115, 108, 103, 110, 106, 65, 56, 56, 57, 57, 56, 60, 60, 97, 116, 28.27554 + 165, 124, 130, 154, 158, 161, 158, 155, 162, 148, 148, 142, 163, 102, 46, 46, 28.27555 + 55, 44, 53, 18, 48, 75, 102, 128, 126, 120, 132, 97, 87, 55, 91, 100, 28.27556 + 122, 122, 115, 95, 87, 83, 77, 77, 60, 48, 63, 69, 61, 65, 63, 61, 28.27557 + 53, 55, 53, 53, 44, 45, 45, 55, 87, 85, 93, 100, 96, 104, 87, 97, 28.27558 + 83, 32, 28, 63, 91, 87, 77, 88, 89, 85, 81, 85, 80, 68, 36, 87, 28.27559 + 84, 72, 79, 77, 76, 76, 77, 73, 71, 69, 67, 71, 69, 67, 68, 67, 28.27560 + 64, 61, 61, 60, 56, 53, 6, 49, 59, 53, 55, 56, 59, 57, 60, 61, 28.27561 + 63, 61, 57, 63, 60, 61, 61, 59, 57, 56, 60, 53, 46, 5, 52, 60, 28.27562 + 55, 59, 59, 63, 64, 64, 65, 67, 68, 68, 59, 67, 73, 68, 60, 73, 28.27563 + 71, 63, 51, 75, 63, 48, 18, 52, 38, 33, 33, 36, 26, 32, 34, 29, 28.27564 + 30, 34, 29, 46, 55, 46, 44, 64, 72, 65, 51, 71, 72, 44, 25, 51, 28.27565 + 21, 22, 22, 21, 18, 18, 20, 20, 14, 14, 20, 14, 13, 13, 17, 16, 28.27566 + 16, 17, 20, 21, 20, 21, 24, 28, 29, 32, 34, 40, 72, 69, 76, 60, 28.27567 + 41, 17, 73, 93, 80, 89, 93, 88, 87, 75, 76, 63, 60, 48, 45, 28, 28.27568 + 41, 40, 44, 48, 44, 33, 32, 28, 25, 34, 13, 24, 21, 21, 28, 29, 28.27569 + 36, 48, 34, 30, 33, 29, 34, 46, 49, 45, 51, 41, 46, 48, 45, 34, 28.27570 + 24, 5, 60, 57, 61, 60, 56, 55, 53, 52, 53, 52, 49, 49, 46, 48, 28.27571 + 45, 45, 46, 45, 44, 45, 44, 44, 42, 38, 18, 46, 37, 41, 40, 38, 28.27572 + 36, 28, 34, 36, 24, 13, 12, 13, 13, 16, 13, 13, 12, 14, 29, 26, 28.27573 + 25, 18, 12, 38, 21, 16, 16, 18, 17, 13, 16, 14, 12, 30, 30, 13, 28.27574 + 33, 33, 42, 49, 93, 132, 114, 126, 151, 153, 161, 169, 174, 181, 191, 194, 28.27575 + 205, 199, 166, 120, 122, 119, 110, 97, 61, 18, 10, 8, 8, 4, 5, 5, 28.27576 + 8, 4, 4, 0, 0, 0, 0, 0, 99, 88, 118, 123, 102, 92, 135, 134, 28.27577 + 64, 13, 84, 131, 127, 95, 107, 99, 60, 53, 65, 61, 57, 69, 34, 36, 28.27578 + 60, 71, 89, 102, 119, 122, 140, 151, 127, 108, 127, 143, 131, 122, 87, 76, 28.27579 + 75, 68, 108, 93, 56, 88, 92, 73, 73, 61, 60, 49, 51, 51, 46, 51, 28.27580 + 42, 37, 32, 26, 26, 24, 24, 25, 25, 24, 22, 26, 24, 21, 24, 37, 28.27581 + 88, 112, 124, 124, 128, 131, 131, 127, 128, 89, 10, 120, 161, 161, 138, 88, 28.27582 + 89, 76, 56, 55, 71, 57, 10, 1, 29, 20, 21, 1, 21, 12, 2, 2, 28.27583 + 14, 32, 1, 0, 41, 22, 2, 1, 21, 16, 4, 6, 20, 17, 5, 4, 28.27584 + 9, 30, 2, 1, 10, 2, 6, 0, 1, 9, 0, 0, 1, 4, 2, 2, 28.27585 + 1, 2, 2, 4, 26, 8, 34, 29, 38, 37, 42, 51, 63, 85, 87, 95, 28.27586 + 106, 79, 76, 69, 72, 65, 61, 60, 51, 46, 67, 57, 59, 36, 67, 72, 28.27587 + 73, 81, 93, 93, 93, 118, 120, 142, 161, 163, 199, 190, 153, 114, 104, 106, 28.27588 + 107, 48, 49, 49, 56, 53, 51, 57, 56, 73, 111, 158, 162, 127, 126, 151, 28.27589 + 154, 157, 157, 163, 144, 146, 159, 153, 97, 42, 41, 45, 32, 10, 33, 45, 28.27590 + 46, 55, 41, 41, 57, 61, 72, 96, 53, 83, 95, 89, 68, 64, 67, 64, 28.27591 + 44, 45, 46, 34, 25, 14, 16, 16, 12, 9, 9, 8, 8, 5, 5, 5, 28.27592 + 4, 2, 2, 1, 1, 0, 0, 0, 6, 8, 12, 12, 14, 16, 22, 26, 28.27593 + 36, 33, 38, 49, 46, 61, 79, 83, 65, 37, 76, 64, 64, 53, 44, 44, 28.27594 + 38, 33, 29, 29, 22, 16, 14, 20, 10, 9, 8, 21, 6, 5, 5, 24, 28.27595 + 4, 2, 1, 2, 2, 0, 1, 4, 2, 2, 5, 8, 5, 6, 9, 12, 28.27596 + 4, 6, 18, 20, 4, 8, 26, 28, 24, 6, 21, 21, 4, 2, 16, 4, 28.27597 + 4, 12, 13, 1, 1, 0, 8, 2, 0, 5, 8, 0, 0, 0, 6, 0, 28.27598 + 0, 17, 22, 29, 55, 84, 63, 71, 87, 99, 89, 73, 51, 34, 64, 92, 28.27599 + 92, 76, 80, 36, 26, 25, 22, 25, 21, 16, 13, 40, 44, 38, 41, 53, 28.27600 + 52, 52, 51, 65, 45, 5, 21, 95, 116, 76, 85, 97, 110, 85, 88, 87, 28.27601 + 84, 81, 87, 97, 99, 85, 49, 36, 41, 41, 60, 41, 18, 45, 46, 46, 28.27602 + 44, 48, 46, 46, 48, 48, 46, 52, 45, 44, 34, 21, 17, 24, 34, 18, 28.27603 + 21, 52, 76, 84, 57, 13, 56, 75, 73, 37, 32, 28, 36, 22, 28, 18, 28.27604 + 49, 30, 24, 18, 18, 25, 20, 30, 30, 34, 26, 26, 22, 17, 36, 37, 28.27605 + 46, 33, 37, 36, 38, 36, 41, 42, 37, 36, 38, 40, 37, 37, 42, 38, 28.27606 + 34, 34, 42, 36, 14, 25, 48, 38, 38, 30, 36, 38, 42, 52, 42, 37, 28.27607 + 14, 56, 77, 77, 61, 75, 72, 69, 38, 30, 28, 14, 9, 5, 14, 30, 28.27608 + 40, 38, 42, 37, 40, 29, 37, 26, 17, 38, 80, 102, 69, 67, 69, 59, 28.27609 + 132, 154, 138, 148, 123, 126, 130, 144, 147, 155, 154, 157, 140, 128, 131, 107, 28.27610 + 72, 55, 29, 12, 9, 9, 8, 6, 10, 12, 18, 18, 22, 2, 0, 18, 28.27611 + 64, 64, 61, 178, 178, 174, 174, 166, 170, 165, 150, 124, 38, 87, 142, 130, 28.27612 + 136, 138, 130, 130, 130, 112, 119, 85, 40, 79, 158, 173, 177, 177, 175, 174, 28.27613 + 173, 169, 157, 165, 170, 167, 167, 165, 165, 162, 153, 143, 127, 104, 95, 53, 28.27614 + 56, 63, 73, 79, 93, 103, 136, 115, 124, 108, 77, 79, 81, 148, 161, 150, 28.27615 + 135, 167, 158, 135, 159, 147, 150, 140, 143, 140, 147, 166, 154, 139, 134, 139, 28.27616 + 143, 139, 144, 135, 95, 16, 122, 162, 163, 159, 163, 163, 127, 147, 110, 73, 28.27617 + 61, 88, 116, 122, 112, 108, 106, 100, 103, 97, 65, 53, 8, 36, 155, 158, 28.27618 + 112, 119, 151, 151, 123, 128, 122, 63, 6, 30, 102, 126, 95, 95, 91, 91, 28.27619 + 111, 97, 53, 29, 76, 97, 99, 87, 84, 84, 83, 79, 77, 73, 72, 37, 28.27620 + 9, 123, 142, 139, 116, 139, 106, 56, 42, 40, 37, 33, 36, 40, 63, 84, 28.27621 + 93, 96, 107, 108, 119, 120, 118, 100, 34, 116, 134, 132, 114, 143, 127, 130, 28.27622 + 120, 123, 157, 162, 206, 205, 191, 179, 123, 108, 104, 116, 46, 48, 48, 49, 28.27623 + 51, 41, 41, 61, 72, 110, 178, 178, 120, 127, 114, 132, 136, 135, 131, 157, 28.27624 + 153, 143, 106, 83, 41, 40, 38, 38, 45, 45, 100, 114, 96, 97, 73, 61, 28.27625 + 63, 57, 76, 40, 37, 45, 61, 64, 68, 59, 61, 60, 84, 80, 80, 84, 28.27626 + 130, 132, 140, 131, 139, 134, 128, 139, 136, 132, 131, 120, 122, 123, 127, 135, 28.27627 + 123, 127, 118, 93, 96, 89, 79, 33, 14, 92, 135, 143, 104, 100, 85, 79, 28.27628 + 67, 72, 51, 57, 41, 46, 61, 61, 65, 51, 60, 65, 89, 60, 55, 60, 28.27629 + 99, 131, 135, 112, 100, 122, 123, 107, 103, 122, 112, 26, 5, 61, 134, 96, 28.27630 + 100, 97, 104, 103, 111, 119, 119, 115, 110, 116, 120, 135, 119, 119, 119, 120, 28.27631 + 116, 114, 34, 12, 33, 108, 135, 103, 108, 111, 111, 110, 118, 119, 120, 119, 28.27632 + 114, 124, 135, 130, 128, 126, 123, 119, 103, 116, 112, 38, 2, 64, 96, 115, 28.27633 + 120, 115, 114, 115, 110, 114, 102, 67, 32, 69, 106, 97, 97, 93, 92, 95, 28.27634 + 87, 83, 76, 37, 36, 91, 107, 106, 104, 102, 96, 68, 75, 88, 63, 53, 28.27635 + 4, 103, 106, 92, 99, 95, 102, 93, 104, 92, 93, 87, 89, 59, 84, 99, 28.27636 + 88, 76, 92, 88, 81, 71, 51, 20, 17, 14, 13, 13, 13, 12, 13, 12, 28.27637 + 10, 12, 12, 12, 12, 20, 77, 93, 85, 79, 87, 76, 76, 85, 88, 67, 28.27638 + 14, 67, 87, 76, 71, 61, 61, 53, 65, 69, 53, 20, 18, 73, 85, 84, 28.27639 + 77, 72, 56, 33, 21, 22, 20, 9, 0, 0, 9, 5, 0, 0, 6, 4, 28.27640 + 0, 0, 4, 2, 0, 2, 2, 2, 1, 9, 2, 2, 4, 14, 4, 5, 28.27641 + 24, 46, 61, 91, 93, 95, 95, 92, 88, 49, 45, 14, 64, 79, 61, 64, 28.27642 + 69, 63, 59, 59, 69, 59, 44, 21, 8, 53, 75, 84, 84, 77, 85, 76, 28.27643 + 76, 38, 29, 17, 106, 115, 95, 103, 91, 103, 95, 104, 46, 65, 65, 91, 28.27644 + 92, 102, 135, 136, 134, 128, 134, 132, 118, 85, 59, 24, 13, 13, 14, 13, 28.27645 + 10, 8, 12, 18, 14, 22, 32, 10, 4, 4, 42, 68, 83, 84, 166, 170, 28.27646 + 169, 174, 171, 174, 167, 167, 124, 38, 111, 142, 140, 135, 136, 136, 128, 144, 28.27647 + 139, 122, 88, 32, 144, 169, 170, 144, 155, 153, 136, 155, 153, 153, 158, 115, 28.27648 + 144, 158, 170, 173, 166, 169, 159, 155, 118, 120, 53, 110, 150, 143, 150, 144, 28.27649 + 144, 139, 161, 174, 130, 120, 119, 93, 106, 157, 150, 138, 140, 157, 159, 169, 28.27650 + 165, 150, 146, 148, 120, 120, 150, 151, 151, 154, 147, 143, 143, 138, 139, 112, 28.27651 + 13, 135, 165, 155, 162, 161, 158, 157, 162, 131, 107, 64, 123, 128, 130, 130, 28.27652 + 128, 126, 131, 135, 124, 96, 53, 24, 122, 162, 155, 151, 151, 151, 155, 155, 28.27653 + 154, 140, 71, 1, 130, 143, 155, 144, 142, 142, 147, 140, 138, 100, 33, 119, 28.27654 + 119, 118, 110, 111, 104, 102, 95, 95, 93, 92, 36, 9, 123, 142, 146, 146, 28.27655 + 139, 135, 130, 136, 131, 122, 107, 116, 93, 106, 130, 128, 128, 128, 143, 147, 28.27656 + 140, 131, 100, 37, 128, 150, 140, 150, 130, 139, 130, 127, 150, 166, 204, 204, 28.27657 + 198, 201, 174, 115, 108, 110, 115, 48, 46, 42, 53, 51, 44, 64, 60, 80, 28.27658 + 107, 189, 187, 126, 123, 130, 123, 100, 107, 104, 93, 89, 95, 87, 68, 37, 28.27659 + 38, 37, 49, 42, 75, 128, 123, 126, 111, 114, 116, 107, 107, 76, 46, 63, 28.27660 + 138, 144, 135, 131, 135, 142, 123, 139, 93, 127, 110, 96, 120, 118, 130, 124, 28.27661 + 111, 122, 126, 112, 115, 120, 111, 115, 111, 81, 83, 99, 89, 81, 88, 84, 28.27662 + 87, 79, 34, 14, 110, 151, 139, 132, 144, 143, 118, 131, 139, 103, 85, 42, 28.27663 + 79, 128, 134, 132, 131, 124, 131, 134, 128, 142, 126, 92, 89, 95, 97, 97, 28.27664 + 102, 107, 99, 112, 107, 118, 67, 8, 132, 128, 84, 99, 119, 116, 123, 99, 28.27665 + 118, 127, 123, 112, 83, 88, 95, 88, 83, 93, 92, 88, 83, 40, 0, 119, 28.27666 + 146, 138, 143, 139, 144, 139, 140, 135, 135, 138, 132, 108, 81, 103, 107, 107, 28.27667 + 111, 111, 110, 99, 97, 99, 40, 24, 85, 110, 114, 97, 93, 100, 96, 97, 28.27668 + 97, 108, 71, 40, 83, 106, 92, 97, 93, 104, 92, 77, 89, 77, 41, 30, 28.27669 + 96, 99, 88, 106, 88, 99, 103, 93, 76, 61, 53, 8, 100, 102, 85, 84, 28.27670 + 80, 93, 99, 99, 92, 99, 67, 48, 79, 100, 91, 87, 84, 83, 83, 85, 28.27671 + 55, 57, 24, 29, 100, 111, 88, 80, 99, 108, 100, 97, 104, 95, 91, 84, 28.27672 + 89, 92, 112, 112, 107, 103, 89, 81, 80, 84, 68, 17, 65, 85, 81, 79, 28.27673 + 76, 76, 71, 53, 49, 26, 17, 59, 118, 116, 124, 112, 116, 106, 100, 93, 28.27674 + 64, 34, 12, 65, 80, 88, 75, 87, 76, 83, 65, 77, 75, 73, 61, 61, 28.27675 + 97, 87, 96, 89, 97, 99, 77, 87, 112, 88, 32, 25, 72, 95, 89, 87, 28.27676 + 75, 75, 65, 75, 57, 38, 14, 63, 79, 79, 60, 64, 68, 68, 64, 60, 28.27677 + 59, 59, 28, 9, 63, 77, 84, 79, 79, 79, 72, 52, 34, 24, 10, 114, 28.27678 + 92, 102, 102, 100, 81, 135, 132, 63, 48, 38, 36, 41, 46, 60, 68, 59, 28.27679 + 61, 59, 53, 36, 21, 14, 10, 13, 13, 13, 4, 5, 12, 21, 22, 16, 28.27680 + 28, 12, 12, 4, 2, 38, 73, 55, 57, 161, 161, 165, 171, 174, 171, 169, 28.27681 + 167, 118, 17, 79, 140, 143, 140, 136, 118, 143, 139, 142, 119, 88, 34, 155, 28.27682 + 173, 155, 144, 162, 162, 173, 162, 151, 157, 151, 108, 140, 162, 151, 165, 142, 28.27683 + 163, 163, 162, 150, 119, 56, 138, 153, 166, 143, 138, 134, 143, 136, 142, 134, 28.27684 + 139, 128, 89, 153, 170, 165, 161, 158, 157, 155, 147, 151, 142, 140, 100, 143, 28.27685 + 158, 142, 139, 138, 143, 143, 150, 135, 142, 123, 103, 13, 131, 154, 151, 162, 28.27686 + 161, 159, 154, 155, 130, 110, 65, 122, 118, 130, 131, 131, 136, 139, 135, 124, 28.27687 + 100, 55, 5, 159, 161, 147, 147, 147, 144, 144, 140, 139, 131, 75, 25, 138, 28.27688 + 132, 140, 142, 144, 148, 147, 147, 126, 120, 40, 116, 103, 100, 85, 99, 95, 28.27689 + 103, 92, 91, 89, 92, 41, 5, 124, 143, 142, 135, 128, 131, 140, 142, 131, 28.27690 + 131, 96, 73, 126, 148, 151, 144, 140, 144, 144, 148, 142, 132, 110, 38, 127, 28.27691 + 142, 151, 142, 161, 146, 126, 135, 150, 186, 205, 202, 199, 198, 142, 112, 110, 28.27692 + 108, 106, 40, 41, 42, 49, 33, 53, 64, 56, 79, 111, 201, 194, 177, 123, 28.27693 + 126, 147, 136, 135, 134, 131, 131, 112, 102, 67, 37, 36, 40, 48, 38, 79, 28.27694 + 130, 119, 128, 124, 120, 116, 120, 104, 84, 42, 110, 131, 128, 132, 132, 128, 28.27695 + 122, 118, 107, 132, 118, 88, 116, 138, 138, 132, 120, 123, 107, 112, 108, 123, 28.27696 + 110, 103, 68, 99, 99, 87, 88, 88, 88, 95, 95, 96, 73, 42, 12, 102, 28.27697 + 157, 142, 143, 135, 135, 144, 143, 147, 147, 95, 45, 107, 138, 140, 135, 143, 28.27698 + 131, 136, 132, 123, 123, 89, 99, 126, 123, 122, 115, 108, 112, 119, 120, 114, 28.27699 + 114, 84, 13, 130, 83, 132, 127, 93, 96, 126, 112, 103, 103, 111, 67, 91, 28.27700 + 115, 123, 126, 118, 114, 118, 100, 99, 42, 18, 124, 144, 138, 124, 126, 130, 28.27701 + 135, 132, 136, 131, 134, 111, 85, 120, 122, 119, 115, 115, 115, 104, 104, 103, 28.27702 + 91, 52, 5, 81, 112, 107, 95, 97, 96, 108, 108, 104, 108, 69, 40, 85, 28.27703 + 97, 84, 95, 80, 87, 80, 81, 99, 77, 38, 29, 89, 93, 91, 96, 92, 28.27704 + 103, 100, 97, 77, 65, 49, 6, 65, 99, 88, 87, 79, 76, 89, 76, 93, 28.27705 + 76, 63, 45, 77, 100, 95, 89, 84, 91, 87, 80, 63, 60, 24, 61, 112, 28.27706 + 104, 104, 103, 106, 106, 104, 102, 92, 89, 87, 55, 91, 114, 99, 88, 95, 28.27707 + 91, 88, 92, 80, 93, 61, 18, 63, 68, 92, 59, 55, 57, 42, 40, 40, 28.27708 + 21, 14, 75, 119, 118, 103, 108, 107, 118, 112, 111, 83, 51, 17, 60, 65, 28.27709 + 45, 65, 81, 95, 53, 46, 71, 53, 48, 60, 73, 73, 97, 110, 110, 106, 28.27710 + 95, 93, 96, 106, 92, 56, 40, 76, 87, 72, 76, 76, 77, 76, 79, 49, 28.27711 + 40, 13, 65, 79, 79, 56, 57, 67, 55, 65, 65, 65, 57, 26, 8, 67, 28.27712 + 83, 75, 64, 68, 69, 65, 46, 30, 22, 9, 87, 104, 87, 112, 120, 104, 28.27713 + 103, 53, 73, 63, 57, 34, 38, 26, 25, 30, 21, 25, 21, 22, 20, 17, 28.27714 + 16, 12, 13, 8, 8, 14, 24, 24, 21, 18, 21, 29, 12, 5, 2, 0, 28.27715 + 44, 67, 48, 12, 178, 177, 174, 161, 161, 173, 165, 150, 116, 13, 110, 142, 28.27716 + 146, 148, 136, 136, 127, 138, 132, 100, 83, 34, 134, 167, 154, 158, 143, 162, 28.27717 + 155, 163, 148, 159, 146, 102, 128, 162, 130, 151, 143, 169, 163, 155, 151, 131, 28.27718 + 59, 134, 167, 143, 148, 142, 143, 146, 142, 139, 146, 146, 80, 42, 155, 169, 28.27719 + 155, 167, 158, 157, 155, 161, 163, 138, 143, 92, 139, 155, 138, 139, 140, 138, 28.27720 + 147, 146, 142, 136, 136, 97, 12, 130, 154, 151, 158, 155, 150, 130, 166, 158, 28.27721 + 114, 79, 81, 123, 127, 131, 128, 115, 123, 126, 123, 55, 56, 5, 110, 161, 28.27722 + 144, 147, 143, 151, 138, 150, 140, 135, 77, 4, 91, 147, 150, 136, 134, 138, 28.27723 + 139, 157, 146, 85, 46, 76, 100, 107, 92, 100, 102, 93, 92, 99, 99, 81, 28.27724 + 40, 5, 114, 139, 150, 130, 124, 126, 131, 127, 124, 103, 100, 77, 146, 154, 28.27725 + 146, 161, 142, 147, 144, 146, 146, 132, 114, 42, 127, 142, 143, 123, 120, 131, 28.27726 + 124, 142, 167, 212, 205, 204, 195, 146, 118, 107, 106, 118, 67, 42, 41, 42, 28.27727 + 45, 57, 56, 65, 65, 95, 115, 202, 205, 190, 123, 126, 131, 146, 148, 151, 28.27728 + 150, 146, 138, 118, 73, 36, 38, 37, 46, 34, 67, 124, 120, 126, 124, 135, 28.27729 + 130, 123, 108, 91, 46, 112, 127, 128, 126, 130, 135, 120, 119, 110, 118, 112, 28.27730 + 79, 112, 136, 116, 115, 130, 116, 118, 112, 111, 114, 119, 100, 64, 97, 114, 28.27731 + 110, 103, 92, 83, 100, 80, 85, 71, 41, 12, 123, 146, 135, 136, 142, 143, 28.27732 + 143, 142, 139, 128, 104, 52, 116, 139, 128, 127, 126, 126, 123, 126, 120, 97, 28.27733 + 80, 108, 127, 112, 116, 118, 119, 116, 118, 118, 116, 120, 59, 12, 69, 124, 28.27734 + 92, 119, 120, 115, 119, 123, 120, 114, 95, 63, 92, 116, 111, 104, 96, 103, 28.27735 + 104, 112, 104, 40, 14, 95, 143, 135, 143, 134, 130, 134, 138, 135, 140, 123, 28.27736 + 107, 85, 122, 127, 110, 115, 115, 112, 116, 116, 110, 84, 51, 2, 77, 114, 28.27737 + 104, 91, 93, 96, 102, 96, 99, 99, 71, 48, 72, 108, 85, 83, 89, 83, 28.27738 + 93, 85, 87, 68, 38, 28, 65, 92, 87, 84, 85, 93, 96, 99, 76, 65, 28.27739 + 52, 0, 63, 106, 80, 91, 79, 80, 87, 73, 93, 69, 55, 34, 85, 100, 28.27740 + 97, 92, 72, 79, 80, 89, 83, 73, 24, 84, 115, 102, 84, 89, 91, 97, 28.27741 + 89, 100, 93, 84, 64, 52, 89, 111, 93, 96, 93, 89, 83, 81, 83, 89, 28.27742 + 60, 24, 64, 73, 57, 59, 41, 45, 44, 44, 29, 20, 10, 61, 116, 115, 28.27743 + 102, 108, 106, 106, 103, 119, 89, 56, 14, 59, 59, 91, 73, 81, 103, 51, 28.27744 + 72, 75, 51, 63, 71, 52, 89, 110, 103, 102, 91, 99, 99, 99, 96, 91, 28.27745 + 65, 28, 84, 80, 77, 61, 64, 59, 61, 76, 57, 41, 17, 61, 83, 87, 28.27746 + 57, 53, 53, 59, 55, 52, 63, 41, 21, 5, 67, 73, 75, 53, 56, 48, 28.27747 + 44, 41, 34, 25, 10, 93, 100, 100, 85, 96, 73, 110, 69, 72, 63, 60, 28.27748 + 52, 40, 29, 25, 24, 22, 20, 18, 16, 17, 14, 14, 10, 9, 10, 18, 28.27749 + 24, 25, 36, 18, 17, 20, 34, 14, 24, 2, 0, 41, 67, 37, 59, 163, 28.27750 + 165, 163, 169, 159, 157, 167, 151, 126, 30, 110, 138, 142, 131, 138, 142, 134, 28.27751 + 139, 128, 111, 89, 29, 131, 163, 162, 146, 165, 157, 157, 148, 148, 162, 138, 28.27752 + 99, 146, 165, 159, 157, 161, 170, 162, 155, 159, 130, 69, 120, 155, 142, 144, 28.27753 + 140, 140, 154, 147, 148, 143, 142, 95, 38, 155, 169, 163, 159, 154, 161, 146, 28.27754 + 148, 150, 130, 134, 88, 136, 150, 139, 140, 140, 142, 134, 140, 147, 132, 131, 28.27755 + 102, 16, 131, 154, 151, 169, 162, 150, 155, 161, 151, 120, 87, 107, 120, 126, 28.27756 + 116, 115, 118, 120, 114, 122, 68, 52, 4, 108, 154, 144, 146, 151, 150, 150, 28.27757 + 147, 146, 136, 75, 2, 93, 143, 142, 139, 136, 135, 136, 143, 131, 93, 48, 28.27758 + 108, 104, 87, 92, 97, 104, 95, 92, 97, 104, 76, 41, 2, 124, 142, 146, 28.27759 + 128, 132, 139, 142, 139, 118, 106, 75, 72, 144, 155, 144, 150, 138, 148, 150, 28.27760 + 150, 142, 128, 108, 55, 116, 135, 144, 130, 119, 126, 114, 136, 195, 206, 205, 28.27761 + 201, 153, 122, 107, 108, 115, 73, 53, 40, 41, 45, 44, 57, 59, 68, 69, 28.27762 + 89, 115, 210, 208, 198, 123, 124, 131, 134, 142, 147, 148, 151, 143, 123, 75, 28.27763 + 34, 34, 33, 49, 30, 72, 126, 118, 123, 123, 132, 131, 119, 122, 81, 46, 28.27764 + 102, 130, 135, 142, 142, 144, 120, 114, 107, 119, 100, 75, 108, 136, 123, 122, 28.27765 + 114, 124, 124, 122, 108, 127, 118, 96, 61, 107, 107, 102, 88, 84, 77, 80, 28.27766 + 79, 83, 67, 34, 10, 123, 148, 148, 132, 151, 138, 134, 138, 131, 134, 103, 28.27767 + 63, 103, 136, 123, 122, 118, 134, 119, 106, 116, 100, 71, 107, 131, 115, 115, 28.27768 + 116, 114, 119, 114, 115, 119, 120, 60, 10, 85, 122, 126, 91, 93, 118, 111, 28.27769 + 108, 108, 112, 96, 59, 88, 128, 119, 92, 112, 124, 112, 99, 99, 37, 0, 28.27770 + 114, 138, 139, 136, 131, 134, 124, 127, 128, 130, 124, 100, 80, 120, 119, 106, 28.27771 + 108, 112, 116, 115, 115, 100, 97, 51, 5, 84, 107, 99, 99, 92, 97, 87, 28.27772 + 100, 100, 100, 77, 46, 77, 100, 80, 79, 91, 91, 89, 92, 91, 69, 42, 28.27773 + 24, 81, 93, 81, 108, 91, 102, 100, 80, 77, 71, 46, 2, 95, 91, 81, 28.27774 + 88, 75, 73, 81, 71, 100, 72, 55, 38, 79, 96, 106, 93, 96, 87, 77, 28.27775 + 76, 79, 61, 29, 68, 114, 111, 106, 93, 93, 77, 83, 84, 88, 53, 49, 28.27776 + 33, 85, 103, 85, 83, 80, 72, 80, 81, 91, 84, 60, 28, 57, 80, 55, 28.27777 + 49, 48, 61, 46, 49, 28, 24, 9, 65, 119, 116, 100, 115, 107, 102, 100, 28.27778 + 110, 80, 57, 14, 46, 55, 65, 80, 65, 65, 67, 75, 52, 67, 69, 69, 28.27779 + 13, 87, 107, 92, 103, 107, 97, 110, 112, 110, 96, 60, 30, 76, 81, 67, 28.27780 + 60, 61, 61, 75, 73, 81, 52, 17, 64, 71, 80, 57, 59, 61, 59, 55, 28.27781 + 68, 60, 55, 29, 4, 59, 88, 71, 57, 48, 56, 46, 40, 36, 26, 10, 28.27782 + 107, 111, 93, 96, 69, 71, 87, 72, 71, 57, 63, 61, 53, 26, 38, 26, 28.27783 + 29, 28, 26, 20, 18, 20, 22, 13, 5, 8, 20, 29, 34, 32, 36, 26, 28.27784 + 25, 24, 14, 9, 4, 6, 49, 61, 40, 30, 181, 178, 170, 167, 167, 163, 28.27785 + 165, 167, 126, 24, 83, 140, 142, 127, 146, 135, 139, 123, 130, 104, 83, 28, 28.27786 + 132, 171, 161, 163, 166, 153, 161, 159, 151, 161, 131, 100, 144, 153, 140, 143, 28.27787 + 161, 163, 161, 153, 157, 128, 76, 126, 157, 155, 150, 134, 144, 153, 144, 139, 28.27788 + 140, 143, 104, 69, 162, 173, 153, 163, 142, 155, 151, 150, 142, 138, 138, 87, 28.27789 + 142, 144, 140, 142, 143, 132, 143, 146, 146, 131, 132, 106, 17, 132, 154, 154, 28.27790 + 151, 162, 144, 151, 166, 138, 124, 76, 114, 134, 114, 115, 115, 112, 115, 102, 28.27791 + 111, 83, 51, 20, 120, 159, 153, 147, 150, 158, 158, 151, 154, 136, 75, 1, 28.27792 + 118, 143, 127, 140, 140, 134, 138, 138, 126, 108, 57, 110, 104, 95, 87, 99, 28.27793 + 104, 92, 99, 93, 97, 77, 38, 4, 132, 143, 146, 136, 139, 132, 143, 147, 28.27794 + 124, 104, 79, 91, 151, 150, 147, 142, 132, 148, 146, 135, 132, 130, 107, 56, 28.27795 + 118, 138, 146, 130, 138, 115, 110, 135, 202, 208, 201, 161, 123, 104, 123, 71, 28.27796 + 69, 56, 41, 41, 40, 46, 42, 45, 59, 64, 73, 102, 136, 209, 208, 199, 28.27797 + 120, 120, 130, 131, 132, 138, 147, 150, 143, 119, 65, 33, 30, 32, 40, 37, 28.27798 + 79, 124, 116, 122, 122, 135, 123, 126, 103, 91, 60, 100, 136, 128, 139, 131, 28.27799 + 131, 135, 128, 107, 116, 100, 71, 111, 135, 131, 108, 134, 115, 116, 108, 124, 28.27800 + 120, 114, 85, 65, 91, 106, 93, 87, 79, 76, 80, 79, 87, 61, 36, 9, 28.27801 + 123, 148, 132, 132, 142, 150, 142, 132, 144, 136, 107, 64, 96, 139, 127, 119, 28.27802 + 136, 126, 112, 118, 103, 88, 64, 108, 134, 115, 123, 127, 123, 128, 131, 120, 28.27803 + 115, 118, 69, 18, 89, 118, 123, 96, 114, 119, 116, 110, 115, 108, 95, 55, 28.27804 + 85, 116, 114, 107, 103, 103, 103, 100, 100, 41, 0, 110, 139, 139, 139, 135, 28.27805 + 138, 132, 128, 128, 130, 122, 69, 89, 122, 112, 106, 116, 123, 118, 106, 97, 28.27806 + 96, 92, 48, 30, 99, 108, 99, 95, 92, 104, 93, 104, 103, 103, 79, 55, 28.27807 + 81, 107, 80, 75, 91, 93, 93, 84, 81, 68, 42, 22, 79, 89, 91, 100, 28.27808 + 91, 99, 84, 80, 79, 72, 51, 14, 88, 88, 72, 80, 69, 72, 89, 68, 28.27809 + 87, 72, 53, 37, 72, 97, 96, 99, 99, 91, 68, 77, 75, 63, 33, 57, 28.27810 + 111, 103, 104, 85, 85, 88, 110, 88, 83, 56, 52, 53, 87, 102, 88, 83, 28.27811 + 80, 93, 93, 87, 92, 87, 68, 29, 60, 73, 57, 46, 34, 42, 40, 57, 28.27812 + 34, 20, 12, 76, 118, 114, 103, 115, 103, 103, 108, 111, 87, 57, 16, 64, 28.27813 + 55, 63, 72, 57, 67, 79, 56, 49, 53, 64, 40, 10, 89, 107, 104, 110, 28.27814 + 108, 100, 96, 99, 95, 95, 63, 34, 71, 85, 73, 55, 61, 57, 67, 72, 28.27815 + 71, 52, 17, 56, 79, 73, 57, 59, 51, 57, 51, 49, 59, 51, 29, 5, 28.27816 + 64, 76, 73, 56, 40, 46, 41, 32, 36, 24, 9, 107, 99, 99, 71, 83, 28.27817 + 88, 55, 73, 60, 67, 63, 59, 51, 29, 42, 30, 30, 25, 26, 21, 29, 28.27818 + 29, 25, 14, 5, 10, 20, 32, 25, 30, 33, 18, 24, 9, 21, 9, 4, 28.27819 + 1, 36, 63, 24, 18, 167, 173, 177, 169, 169, 162, 166, 161, 123, 24, 87, 28.27820 + 138, 142, 134, 134, 132, 132, 130, 134, 106, 84, 32, 119, 169, 151, 154, 157, 28.27821 + 155, 161, 155, 154, 138, 128, 83, 144, 158, 157, 132, 161, 154, 154, 153, 151, 28.27822 + 130, 79, 102, 148, 154, 153, 142, 148, 154, 146, 155, 151, 139, 123, 65, 165, 28.27823 + 161, 163, 163, 151, 163, 144, 153, 132, 144, 132, 91, 138, 143, 139, 132, 136, 28.27824 + 135, 147, 142, 144, 131, 118, 102, 17, 136, 146, 140, 155, 154, 150, 150, 155, 28.27825 + 140, 127, 79, 102, 93, 126, 116, 104, 104, 123, 119, 89, 67, 52, 6, 114, 28.27826 + 158, 144, 146, 158, 153, 143, 153, 154, 135, 79, 25, 127, 134, 132, 142, 139, 28.27827 + 134, 138, 135, 131, 123, 64, 115, 122, 122, 91, 102, 110, 97, 97, 96, 106, 28.27828 + 76, 40, 2, 131, 131, 148, 136, 138, 120, 142, 147, 126, 110, 75, 100, 158, 28.27829 + 148, 140, 139, 138, 146, 139, 134, 120, 124, 115, 59, 112, 136, 136, 135, 111, 28.27830 + 116, 119, 131, 198, 201, 174, 126, 108, 108, 69, 56, 42, 38, 37, 40, 38, 28.27831 + 45, 34, 48, 59, 67, 89, 111, 177, 212, 209, 202, 122, 122, 130, 131, 132, 28.27832 + 136, 146, 147, 140, 116, 46, 33, 32, 20, 40, 37, 79, 123, 114, 123, 123, 28.27833 + 131, 123, 124, 103, 84, 53, 108, 124, 131, 131, 124, 119, 120, 118, 114, 110, 28.27834 + 87, 65, 110, 134, 135, 116, 120, 110, 124, 123, 126, 118, 107, 85, 61, 96, 28.27835 + 104, 95, 92, 95, 96, 93, 88, 87, 52, 36, 8, 97, 147, 134, 132, 120, 28.27836 + 144, 151, 139, 136, 136, 106, 69, 97, 135, 122, 130, 126, 134, 111, 114, 106, 28.27837 + 85, 65, 118, 135, 120, 120, 131, 126, 127, 122, 120, 116, 108, 84, 22, 103, 28.27838 + 116, 122, 99, 112, 118, 112, 112, 110, 107, 91, 49, 80, 119, 114, 119, 103, 28.27839 + 107, 114, 104, 99, 42, 12, 111, 138, 146, 120, 118, 134, 131, 130, 122, 124, 28.27840 + 119, 61, 88, 127, 115, 110, 115, 128, 122, 111, 103, 88, 85, 53, 6, 92, 28.27841 + 108, 95, 93, 91, 102, 99, 103, 100, 103, 83, 48, 73, 104, 85, 106, 75, 28.27842 + 69, 84, 91, 81, 67, 40, 20, 81, 84, 77, 104, 89, 83, 83, 79, 80, 28.27843 + 72, 49, 13, 55, 79, 75, 67, 72, 69, 96, 67, 83, 69, 51, 30, 77, 28.27844 + 95, 106, 96, 104, 99, 88, 73, 72, 59, 33, 64, 107, 103, 99, 73, 88, 28.27845 + 81, 91, 84, 65, 60, 53, 48, 89, 96, 81, 87, 88, 76, 71, 79, 75, 28.27846 + 77, 65, 28, 56, 71, 63, 46, 44, 34, 34, 33, 36, 17, 10, 79, 112, 28.27847 + 114, 100, 106, 110, 103, 104, 115, 73, 56, 18, 59, 45, 63, 60, 61, 53, 28.27848 + 61, 57, 55, 56, 36, 55, 29, 89, 104, 104, 116, 93, 99, 104, 102, 100, 28.27849 + 92, 63, 37, 71, 77, 65, 51, 65, 72, 63, 71, 42, 46, 18, 42, 49, 28.27850 + 75, 51, 56, 59, 60, 51, 51, 55, 51, 28, 2, 63, 75, 71, 51, 51, 28.27851 + 44, 59, 33, 46, 24, 8, 64, 107, 85, 88, 84, 79, 65, 72, 72, 68, 28.27852 + 65, 68, 51, 30, 36, 32, 24, 36, 33, 32, 22, 24, 20, 20, 8, 17, 28.27853 + 25, 37, 41, 36, 29, 24, 12, 14, 14, 6, 5, 1, 49, 38, 49, 20, 28.27854 + 155, 177, 177, 163, 167, 166, 163, 147, 120, 12, 89, 139, 142, 136, 136, 136, 28.27855 + 143, 140, 128, 96, 84, 28, 118, 159, 153, 167, 158, 159, 153, 139, 154, 140, 28.27856 + 130, 69, 122, 166, 139, 126, 157, 157, 148, 151, 153, 131, 87, 103, 151, 144, 28.27857 + 155, 134, 148, 147, 147, 155, 147, 138, 89, 21, 165, 167, 157, 154, 161, 151, 28.27858 + 157, 158, 146, 131, 135, 84, 135, 139, 132, 135, 132, 135, 144, 142, 136, 134, 28.27859 + 127, 100, 16, 135, 146, 154, 158, 151, 140, 147, 146, 151, 128, 102, 83, 102, 28.27860 + 130, 122, 115, 128, 100, 111, 92, 51, 52, 2, 106, 157, 154, 147, 151, 157, 28.27861 + 147, 154, 146, 123, 79, 5, 87, 132, 130, 143, 138, 140, 123, 135, 144, 104, 28.27862 + 71, 65, 108, 103, 83, 97, 106, 97, 97, 102, 99, 72, 38, 0, 130, 135, 28.27863 + 144, 138, 135, 143, 143, 142, 123, 107, 77, 104, 157, 139, 148, 148, 143, 143, 28.27864 + 143, 151, 147, 119, 114, 61, 111, 135, 142, 139, 134, 124, 110, 126, 190, 208, 28.27865 + 171, 116, 93, 107, 63, 55, 41, 37, 42, 38, 38, 48, 40, 69, 60, 63, 28.27866 + 92, 122, 190, 220, 212, 205, 123, 122, 128, 132, 136, 142, 144, 146, 132, 95, 28.27867 + 34, 30, 30, 28, 42, 36, 77, 118, 114, 123, 124, 120, 126, 119, 85, 92, 28.27868 + 52, 99, 122, 123, 122, 120, 123, 131, 119, 112, 116, 100, 59, 114, 127, 143, 28.27869 + 122, 116, 119, 120, 120, 123, 107, 103, 63, 80, 89, 96, 92, 89, 87, 91, 28.27870 + 80, 84, 85, 61, 41, 6, 131, 148, 134, 127, 123, 127, 130, 134, 128, 124, 28.27871 + 116, 81, 100, 138, 123, 135, 126, 126, 100, 115, 88, 88, 60, 111, 130, 116, 28.27872 + 119, 124, 134, 119, 122, 118, 115, 104, 65, 20, 63, 91, 118, 111, 122, 111, 28.27873 + 111, 120, 110, 100, 80, 46, 71, 107, 111, 123, 119, 116, 102, 103, 106, 41, 28.27874 + 8, 100, 140, 140, 134, 131, 126, 130, 126, 126, 130, 100, 55, 96, 120, 116, 28.27875 + 102, 115, 130, 114, 107, 96, 92, 77, 59, 5, 77, 110, 93, 84, 95, 93, 28.27876 + 92, 102, 97, 96, 77, 63, 68, 97, 83, 83, 100, 68, 69, 72, 72, 67, 28.27877 + 36, 18, 72, 77, 76, 97, 97, 95, 85, 79, 85, 72, 52, 12, 63, 87, 28.27878 + 69, 64, 65, 65, 76, 77, 65, 68, 45, 24, 72, 91, 100, 91, 97, 93, 28.27879 + 91, 71, 72, 60, 34, 52, 96, 95, 123, 85, 93, 68, 63, 69, 51, 48, 28.27880 + 53, 38, 89, 93, 80, 75, 88, 76, 77, 72, 75, 71, 64, 29, 51, 71, 28.27881 + 63, 56, 48, 37, 49, 42, 33, 18, 9, 80, 111, 107, 110, 112, 107, 93, 28.27882 + 107, 118, 80, 56, 14, 60, 48, 79, 55, 45, 46, 77, 60, 51, 44, 38, 28.27883 + 64, 33, 93, 103, 107, 102, 102, 97, 97, 92, 96, 95, 84, 38, 46, 80, 28.27884 + 71, 64, 64, 64, 51, 46, 52, 44, 21, 32, 64, 73, 57, 51, 48, 49, 28.27885 + 53, 56, 52, 38, 20, 1, 52, 63, 67, 51, 60, 41, 44, 34, 34, 24, 28.27886 + 6, 96, 102, 83, 91, 85, 87, 72, 75, 76, 67, 64, 64, 53, 30, 51, 28.27887 + 37, 24, 24, 21, 17, 25, 21, 25, 17, 8, 20, 33, 32, 18, 16, 14, 28.27888 + 14, 12, 24, 17, 9, 5, 0, 22, 57, 21, 24, 157, 169, 181, 177, 163, 28.27889 + 158, 166, 150, 124, 17, 79, 135, 140, 146, 146, 140, 134, 131, 128, 91, 79, 28.27890 + 32, 118, 136, 166, 155, 169, 155, 154, 153, 155, 157, 126, 68, 147, 159, 148, 28.27891 + 150, 135, 138, 144, 135, 139, 138, 89, 106, 138, 144, 150, 146, 142, 144, 146, 28.27892 + 147, 147, 139, 100, 33, 153, 159, 144, 148, 150, 163, 163, 153, 158, 131, 128, 28.27893 + 72, 127, 138, 135, 130, 135, 131, 138, 134, 128, 131, 128, 99, 18, 136, 140, 28.27894 + 132, 136, 136, 126, 127, 135, 131, 130, 104, 72, 108, 107, 112, 93, 97, 107, 28.27895 + 115, 112, 52, 46, 16, 100, 153, 142, 144, 146, 143, 144, 154, 148, 111, 76, 28.27896 + 2, 85, 139, 124, 142, 142, 135, 134, 138, 131, 108, 59, 60, 77, 79, 99, 28.27897 + 96, 104, 99, 103, 99, 104, 67, 33, 0, 131, 143, 138, 139, 139, 153, 147, 28.27898 + 131, 115, 110, 60, 122, 157, 153, 157, 146, 146, 140, 131, 134, 138, 131, 115, 28.27899 + 63, 110, 134, 142, 139, 135, 110, 108, 115, 155, 210, 174, 124, 100, 108, 68, 28.27900 + 52, 41, 46, 48, 42, 45, 44, 42, 46, 63, 87, 111, 157, 206, 218, 216, 28.27901 + 201, 123, 122, 130, 134, 142, 147, 148, 142, 122, 57, 32, 28, 26, 29, 49, 28.27902 + 32, 73, 118, 116, 128, 124, 127, 124, 120, 97, 85, 51, 67, 116, 122, 107, 28.27903 + 112, 111, 99, 119, 118, 114, 92, 56, 102, 123, 126, 126, 120, 120, 120, 119, 28.27904 + 118, 111, 97, 57, 65, 96, 102, 106, 97, 95, 87, 97, 89, 73, 52, 29, 28.27905 + 5, 131, 146, 140, 104, 103, 102, 115, 95, 110, 112, 107, 85, 84, 122, 126, 28.27906 + 123, 122, 122, 97, 115, 84, 81, 51, 100, 126, 120, 120, 123, 120, 119, 116, 28.27907 + 118, 116, 114, 60, 20, 93, 114, 134, 115, 120, 118, 110, 108, 103, 100, 85, 28.27908 + 42, 65, 76, 102, 111, 116, 106, 112, 100, 104, 36, 22, 102, 127, 132, 130, 28.27909 + 124, 128, 130, 128, 126, 122, 99, 46, 92, 96, 122, 120, 127, 119, 110, 100, 28.27910 + 97, 83, 88, 46, 2, 99, 102, 95, 81, 92, 88, 85, 84, 83, 83, 85, 28.27911 + 64, 45, 83, 102, 80, 84, 61, 69, 76, 77, 69, 51, 14, 76, 76, 83, 28.27912 + 89, 84, 87, 84, 84, 83, 77, 51, 17, 64, 69, 68, 59, 56, 52, 57, 28.27913 + 61, 61, 64, 45, 22, 52, 85, 97, 97, 88, 79, 67, 72, 72, 61, 38, 28.27914 + 41, 67, 92, 89, 89, 60, 64, 60, 63, 63, 45, 42, 24, 88, 93, 71, 28.27915 + 83, 85, 81, 83, 71, 81, 72, 67, 40, 32, 69, 56, 57, 41, 33, 37, 28.27916 + 46, 41, 16, 22, 71, 108, 96, 111, 108, 108, 104, 106, 114, 71, 56, 14, 28.27917 + 60, 60, 68, 57, 42, 41, 38, 45, 56, 37, 52, 63, 8, 79, 96, 95, 28.27918 + 100, 92, 99, 88, 97, 93, 97, 75, 38, 46, 67, 67, 55, 61, 51, 52, 28.27919 + 55, 42, 46, 28, 28, 60, 45, 44, 33, 36, 40, 52, 55, 41, 40, 32, 28.27920 + 1, 55, 64, 75, 68, 53, 51, 53, 40, 36, 26, 6, 106, 111, 79, 79, 28.27921 + 80, 79, 80, 75, 75, 61, 65, 67, 53, 28, 29, 28, 18, 18, 22, 24, 28.27922 + 20, 18, 22, 17, 6, 20, 38, 16, 28, 42, 29, 30, 20, 13, 13, 10, 28.27923 + 6, 1, 45, 33, 30, 20, 162, 163, 165, 159, 171, 162, 161, 144, 118, 16, 28.27924 + 71, 128, 131, 134, 127, 130, 127, 130, 124, 93, 87, 29, 112, 153, 166, 162, 28.27925 + 154, 154, 157, 157, 155, 153, 115, 67, 146, 146, 146, 148, 147, 140, 143, 139, 28.27926 + 136, 136, 131, 126, 100, 103, 107, 103, 111, 107, 110, 119, 114, 115, 111, 40, 28.27927 + 166, 154, 154, 161, 150, 153, 153, 154, 147, 144, 135, 75, 140, 138, 130, 130, 28.27928 + 134, 123, 128, 122, 127, 126, 128, 97, 22, 138, 135, 128, 124, 120, 130, 119, 28.27929 + 115, 104, 124, 104, 103, 107, 91, 87, 87, 81, 84, 77, 76, 69, 46, 2, 28.27930 + 73, 153, 147, 148, 147, 153, 150, 151, 131, 130, 83, 2, 87, 138, 123, 126, 28.27931 + 140, 136, 127, 112, 115, 89, 83, 93, 91, 92, 73, 61, 53, 49, 53, 55, 28.27932 + 51, 49, 29, 1, 140, 140, 142, 135, 135, 132, 130, 127, 91, 97, 59, 115, 28.27933 + 151, 148, 142, 134, 138, 136, 131, 128, 130, 123, 115, 71, 77, 118, 126, 126, 28.27934 + 108, 85, 111, 104, 135, 198, 195, 155, 99, 124, 97, 57, 56, 52, 56, 53, 28.27935 + 55, 56, 60, 56, 91, 97, 139, 201, 217, 217, 218, 194, 122, 123, 130, 138, 28.27936 + 144, 150, 144, 132, 79, 32, 29, 28, 29, 28, 37, 41, 68, 106, 110, 111, 28.27937 + 111, 110, 103, 100, 104, 99, 64, 72, 116, 123, 103, 107, 114, 110, 110, 112, 28.27938 + 99, 88, 55, 80, 116, 122, 104, 100, 115, 119, 106, 107, 106, 84, 51, 61, 28.27939 + 69, 63, 63, 61, 68, 63, 53, 52, 41, 42, 26, 6, 116, 135, 140, 134, 28.27940 + 127, 126, 130, 130, 123, 123, 118, 119, 118, 84, 92, 96, 97, 97, 118, 115, 28.27941 + 106, 83, 46, 95, 123, 120, 123, 118, 119, 118, 120, 114, 114, 110, 73, 28, 28.27942 + 91, 95, 100, 102, 100, 100, 106, 97, 100, 85, 84, 37, 64, 71, 99, 96, 28.27943 + 93, 92, 91, 89, 84, 40, 0, 22, 68, 81, 71, 69, 80, 89, 83, 77, 28.27944 + 89, 79, 36, 49, 56, 63, 65, 75, 77, 72, 77, 76, 89, 80, 41, 25, 28.27945 + 99, 97, 100, 102, 93, 95, 93, 91, 87, 84, 79, 80, 53, 56, 64, 71, 28.27946 + 67, 61, 81, 80, 64, 69, 51, 12, 71, 69, 100, 85, 84, 87, 84, 83, 28.27947 + 81, 79, 55, 1, 53, 69, 51, 49, 53, 59, 57, 68, 61, 67, 38, 21, 28.27948 + 36, 75, 76, 65, 64, 69, 71, 61, 61, 65, 57, 36, 46, 64, 64, 52, 28.27949 + 52, 65, 55, 48, 53, 48, 44, 40, 83, 89, 88, 84, 80, 84, 83, 75, 28.27950 + 75, 79, 72, 37, 28, 55, 60, 61, 52, 32, 44, 45, 40, 18, 13, 76, 28.27951 + 110, 103, 104, 108, 108, 112, 106, 112, 85, 56, 14, 52, 57, 55, 37, 46, 28.27952 + 37, 36, 40, 36, 38, 44, 44, 16, 68, 81, 84, 63, 67, 76, 76, 77, 28.27953 + 69, 65, 57, 57, 60, 55, 52, 51, 48, 59, 49, 49, 44, 42, 42, 24, 28.27954 + 28, 32, 29, 33, 32, 34, 29, 52, 41, 34, 29, 0, 48, 57, 56, 60, 28.27955 + 56, 67, 40, 30, 33, 25, 6, 99, 97, 83, 72, 75, 67, 65, 65, 65, 28.27956 + 65, 61, 57, 48, 30, 37, 22, 30, 25, 24, 24, 22, 22, 18, 17, 6, 28.27957 + 24, 41, 45, 24, 20, 16, 13, 14, 13, 12, 10, 6, 0, 32, 36, 25, 28.27958 + 24, 153, 147, 147, 143, 144, 140, 143, 124, 88, 14, 63, 119, 115, 95, 122, 28.27959 + 124, 112, 106, 120, 100, 84, 26, 89, 153, 155, 155, 150, 124, 115, 110, 130, 28.27960 + 123, 99, 64, 107, 119, 120, 120, 118, 120, 126, 120, 120, 116, 118, 111, 114, 28.27961 + 83, 61, 48, 53, 73, 37, 28, 33, 24, 24, 37, 161, 126, 144, 92, 146, 28.27962 + 147, 146, 108, 147, 139, 128, 73, 131, 132, 123, 120, 115, 115, 103, 111, 111, 28.27963 + 111, 88, 45, 28, 92, 92, 97, 95, 91, 99, 93, 99, 93, 91, 87, 84, 28.27964 + 81, 81, 84, 77, 67, 68, 68, 61, 57, 57, 0, 32, 124, 132, 100, 110, 28.27965 + 138, 128, 119, 124, 120, 76, 36, 72, 119, 134, 130, 116, 118, 114, 110, 107, 28.27966 + 114, 76, 60, 52, 44, 41, 60, 63, 55, 37, 44, 41, 34, 25, 0, 126, 28.27967 + 92, 114, 107, 115, 120, 123, 126, 96, 87, 55, 108, 123, 130, 124, 118, 124, 28.27968 + 123, 119, 115, 122, 123, 114, 111, 108, 108, 77, 83, 108, 106, 97, 100, 102, 28.27969 + 186, 208, 171, 123, 112, 119, 88, 56, 44, 55, 55, 52, 52, 57, 83, 96, 28.27970 + 132, 190, 216, 218, 218, 214, 163, 122, 124, 132, 144, 146, 146, 136, 104, 38, 28.27971 + 29, 26, 25, 29, 32, 34, 41, 53, 89, 92, 87, 79, 93, 92, 83, 83, 28.27972 + 89, 77, 69, 103, 95, 99, 83, 83, 79, 76, 80, 80, 85, 48, 40, 40, 28.27973 + 55, 48, 48, 49, 57, 60, 80, 92, 65, 46, 52, 56, 56, 53, 51, 51, 28.27974 + 51, 41, 40, 40, 30, 33, 4, 18, 83, 97, 83, 85, 91, 104, 93, 97, 28.27975 + 99, 99, 97, 92, 102, 104, 106, 106, 111, 110, 111, 95, 81, 57, 81, 115, 28.27976 + 115, 119, 104, 103, 100, 99, 88, 95, 89, 68, 30, 52, 56, 52, 55, 55, 28.27977 + 59, 60, 65, 64, 65, 61, 37, 52, 28, 32, 32, 25, 21, 20, 25, 24, 28.27978 + 22, 6, 6, 10, 25, 10, 9, 20, 33, 17, 17, 30, 34, 38, 33, 12, 28.27979 + 26, 30, 30, 41, 59, 45, 56, 65, 64, 52, 0, 32, 53, 59, 59, 59, 28.27980 + 63, 65, 57, 59, 61, 57, 60, 56, 64, 64, 65, 61, 64, 49, 65, 57, 28.27981 + 68, 48, 28, 63, 64, 87, 83, 81, 80, 79, 73, 76, 75, 45, 22, 49, 28.27982 + 28, 33, 21, 22, 24, 30, 14, 13, 18, 28, 20, 18, 20, 24, 24, 25, 28.27983 + 28, 30, 34, 38, 51, 57, 57, 59, 60, 53, 53, 52, 52, 51, 48, 46, 28.27984 + 48, 44, 38, 80, 77, 75, 73, 63, 63, 63, 60, 56, 55, 41, 44, 42, 28.27985 + 42, 46, 38, 36, 30, 30, 28, 29, 14, 10, 73, 81, 100, 102, 95, 92, 28.27986 + 92, 97, 88, 67, 51, 18, 61, 48, 44, 41, 41, 37, 38, 38, 38, 37, 28.27987 + 40, 53, 22, 20, 21, 18, 17, 26, 30, 34, 34, 38, 48, 53, 48, 41, 28.27988 + 44, 45, 41, 42, 41, 42, 40, 41, 38, 36, 34, 40, 38, 37, 33, 37, 28.27989 + 34, 34, 26, 34, 34, 28, 0, 29, 41, 55, 29, 32, 38, 51, 37, 29, 28.27990 + 24, 5, 65, 99, 80, 69, 68, 68, 65, 60, 44, 42, 38, 32, 30, 32, 28.27991 + 20, 14, 28, 25, 21, 25, 22, 25, 20, 20, 8, 13, 22, 20, 16, 8, 28.27992 + 9, 8, 6, 6, 6, 5, 4, 0, 0, 0, 0, 0, 104, 96, 91, 84, 28.27993 + 71, 67, 64, 57, 51, 0, 25, 33, 37, 34, 40, 53, 51, 57, 73, 93, 28.27994 + 76, 25, 107, 73, 72, 68, 67, 89, 67, 55, 48, 83, 76, 42, 36, 29, 28.27995 + 36, 30, 29, 28, 34, 29, 28, 26, 29, 29, 29, 49, 59, 84, 84, 95, 28.27996 + 144, 122, 150, 124, 110, 16, 171, 128, 142, 111, 96, 87, 89, 93, 123, 128, 28.27997 + 122, 68, 84, 87, 91, 76, 72, 68, 57, 53, 46, 52, 38, 32, 21, 18, 28.27998 + 17, 16, 13, 13, 10, 9, 8, 9, 8, 5, 4, 9, 12, 4, 0, 2, 28.27999 + 8, 0, 0, 2, 9, 0, 37, 24, 28, 30, 33, 71, 112, 80, 96, 108, 28.28000 + 71, 4, 68, 48, 53, 48, 49, 49, 55, 42, 46, 44, 42, 45, 32, 38, 28.28001 + 72, 57, 85, 93, 106, 77, 108, 104, 95, 0, 142, 123, 122, 112, 104, 102, 28.28002 + 103, 85, 107, 91, 53, 96, 96, 106, 102, 100, 100, 103, 104, 107, 100, 108, 28.28003 + 103, 102, 99, 68, 51, 51, 52, 59, 100, 97, 106, 150, 198, 187, 128, 88, 28.28004 + 154, 112, 92, 95, 97, 102, 102, 100, 99, 120, 163, 201, 218, 218, 217, 216, 28.28005 + 202, 135, 122, 130, 143, 146, 143, 136, 111, 44, 29, 28, 26, 28, 33, 34, 28.28006 + 20, 42, 53, 48, 53, 59, 60, 60, 63, 64, 71, 80, 81, 76, 80, 64, 28.28007 + 65, 68, 61, 67, 73, 93, 89, 95, 56, 65, 115, 120, 108, 97, 77, 79, 28.28008 + 77, 72, 48, 41, 44, 8, 0, 29, 6, 4, 6, 18, 0, 4, 4, 0, 28.28009 + 0, 29, 29, 21, 20, 18, 24, 24, 21, 21, 25, 26, 28, 29, 32, 36, 28.28010 + 41, 48, 51, 56, 59, 65, 68, 77, 57, 63, 80, 77, 55, 56, 60, 57, 28.28011 + 42, 41, 46, 34, 24, 6, 18, 6, 29, 32, 16, 12, 24, 25, 14, 14, 28.28012 + 22, 25, 68, 83, 93, 97, 91, 103, 96, 99, 69, 64, 4, 18, 128, 139, 28.28013 + 95, 91, 116, 127, 81, 96, 95, 46, 21, 49, 118, 115, 71, 71, 73, 51, 28.28014 + 51, 46, 57, 34, 25, 6, 4, 2, 26, 6, 4, 5, 22, 14, 6, 12, 28.28015 + 28, 24, 24, 24, 33, 32, 29, 53, 45, 37, 38, 64, 34, 12, 55, 21, 28.28016 + 28, 21, 25, 22, 21, 18, 18, 13, 10, 22, 14, 34, 48, 55, 56, 61, 28.28017 + 75, 76, 69, 69, 49, 14, 72, 100, 108, 85, 92, 65, 51, 44, 29, 29, 28.28018 + 25, 24, 30, 25, 34, 20, 22, 32, 22, 29, 32, 34, 34, 28, 49, 44, 28.28019 + 59, 51, 49, 42, 51, 48, 45, 42, 44, 41, 36, 21, 12, 12, 9, 9, 28.28020 + 8, 9, 10, 17, 12, 17, 26, 33, 29, 46, 49, 45, 32, 53, 57, 34, 28.28021 + 14, 46, 34, 37, 34, 33, 30, 33, 41, 45, 48, 48, 64, 4, 37, 112, 28.28022 + 114, 72, 73, 65, 64, 55, 41, 21, 16, 12, 10, 9, 9, 9, 8, 6, 28.28023 + 6, 6, 4, 13, 12, 4, 2, 6, 4, 1, 0, 5, 2, 0, 1, 6, 28.28024 + 0, 0, 9, 9, 14, 13, 13, 14, 16, 17, 30, 24, 4, 63, 92, 65, 28.28025 + 56, 53, 49, 49, 49, 45, 44, 52, 41, 45, 17, 21, 29, 18, 17, 10, 28.28026 + 9, 8, 8, 9, 9, 9, 8, 8, 6, 6, 8, 8, 4, 4, 5, 4, 28.28027 + 2, 2, 2, 2, 1, 1, 1, 84, 97, 100, 99, 114, 110, 120, 123, 115, 28.28028 + 1, 71, 146, 143, 99, 111, 123, 104, 71, 60, 55, 45, 32, 48, 91, 96, 28.28029 + 87, 102, 111, 143, 127, 120, 119, 104, 32, 106, 136, 140, 135, 127, 139, 135, 28.28030 + 140, 140, 140, 79, 24, 93, 171, 174, 161, 158, 154, 151, 154, 166, 151, 104, 28.28031 + 21, 167, 131, 139, 174, 167, 150, 128, 126, 91, 71, 44, 63, 65, 76, 83, 28.28032 + 89, 89, 88, 97, 103, 107, 80, 88, 93, 153, 165, 165, 169, 170, 167, 162, 28.28033 + 163, 171, 162, 138, 130, 162, 158, 153, 165, 163, 159, 139, 120, 161, 136, 42, 28.28034 + 4, 99, 158, 157, 130, 112, 87, 77, 72, 36, 26, 20, 2, 28, 67, 75, 28.28035 + 83, 77, 91, 97, 102, 102, 110, 89, 20, 77, 155, 169, 174, 171, 170, 155, 28.28036 + 165, 157, 122, 95, 0, 138, 127, 150, 146, 150, 143, 139, 122, 112, 89, 52, 28.28037 + 20, 18, 18, 18, 21, 21, 20, 24, 22, 22, 22, 29, 32, 34, 88, 99, 28.28038 + 120, 111, 110, 148, 136, 126, 108, 154, 199, 147, 99, 115, 135, 131, 144, 143, 28.28039 + 134, 140, 151, 162, 195, 213, 216, 220, 218, 214, 213, 153, 124, 128, 139, 142, 28.28040 + 138, 130, 97, 42, 29, 28, 24, 34, 25, 25, 34, 55, 57, 68, 99, 115, 28.28041 + 108, 91, 89, 75, 69, 69, 59, 55, 53, 80, 118, 135, 131, 142, 114, 115, 28.28042 + 124, 103, 100, 52, 93, 140, 126, 108, 108, 123, 112, 116, 87, 81, 73, 12, 28.28043 + 20, 151, 150, 110, 102, 115, 116, 112, 104, 124, 103, 52, 16, 40, 97, 116, 28.28044 + 108, 111, 114, 122, 111, 111, 108, 102, 88, 106, 111, 118, 115, 110, 84, 64, 28.28045 + 52, 37, 38, 42, 33, 37, 67, 63, 76, 69, 80, 81, 89, 88, 81, 69, 28.28046 + 9, 26, 80, 89, 95, 89, 87, 88, 84, 88, 91, 84, 92, 81, 110, 123, 28.28047 + 127, 123, 122, 116, 104, 97, 69, 8, 118, 124, 108, 122, 112, 118, 110, 119, 28.28048 + 115, 96, 57, 16, 110, 127, 128, 118, 119, 122, 114, 87, 100, 102, 63, 52, 28.28049 + 6, 20, 130, 124, 81, 73, 122, 119, 88, 73, 91, 87, 45, 12, 52, 116, 28.28050 + 111, 67, 67, 63, 56, 48, 41, 36, 6, 16, 45, 49, 53, 46, 60, 64, 28.28051 + 59, 63, 67, 57, 0, 41, 116, 115, 112, 114, 116, 108, 108, 104, 81, 51, 28.28052 + 13, 80, 111, 93, 92, 107, 106, 106, 104, 84, 57, 46, 9, 42, 139, 131, 28.28053 + 84, 79, 77, 71, 60, 32, 16, 20, 10, 10, 10, 12, 9, 9, 8, 8, 28.28054 + 5, 8, 6, 6, 5, 10, 17, 67, 79, 83, 81, 68, 91, 76, 33, 12, 28.28055 + 52, 96, 91, 84, 42, 40, 21, 16, 16, 10, 13, 6, 25, 45, 92, 91, 28.28056 + 91, 93, 91, 96, 88, 89, 68, 64, 6, 93, 130, 123, 108, 123, 111, 112, 28.28057 + 111, 110, 102, 100, 77, 72, 92, 73, 59, 68, 81, 72, 69, 59, 48, 12, 28.28058 + 0, 18, 77, 106, 69, 69, 73, 91, 69, 72, 64, 10, 0, 59, 75, 71, 28.28059 + 46, 73, 64, 64, 22, 14, 24, 4, 71, 72, 76, 76, 83, 80, 80, 79, 28.28060 + 80, 83, 76, 49, 30, 21, 24, 49, 42, 37, 41, 40, 29, 22, 13, 16, 28.28061 + 6, 4, 16, 38, 41, 52, 40, 45, 46, 61, 61, 68, 57, 72, 77, 83, 28.28062 + 83, 83, 182, 173, 175, 173, 169, 169, 124, 127, 115, 2, 123, 148, 163, 162, 28.28063 + 158, 159, 155, 153, 155, 147, 85, 30, 118, 173, 175, 173, 167, 165, 174, 169, 28.28064 + 159, 123, 114, 36, 148, 158, 157, 142, 140, 159, 153, 147, 147, 142, 89, 17, 28.28065 + 139, 177, 157, 163, 171, 175, 157, 162, 148, 158, 116, 24, 178, 162, 134, 143, 28.28066 + 107, 135, 148, 162, 169, 151, 131, 139, 159, 148, 158, 167, 155, 155, 165, 158, 28.28067 + 159, 142, 153, 143, 107, 159, 148, 144, 148, 151, 134, 127, 118, 128, 142, 114, 28.28068 + 119, 136, 153, 155, 144, 150, 142, 138, 146, 155, 91, 1, 120, 159, 177, 151, 28.28069 + 154, 122, 134, 134, 126, 107, 72, 16, 95, 166, 163, 163, 158, 158, 112, 146, 28.28070 + 148, 118, 100, 14, 140, 170, 161, 153, 143, 159, 153, 146, 148, 120, 91, 0, 28.28071 + 154, 127, 144, 146, 144, 142, 144, 142, 122, 116, 52, 46, 147, 135, 115, 119, 28.28072 + 139, 139, 115, 115, 114, 111, 108, 102, 104, 93, 144, 158, 155, 146, 143, 144, 28.28073 + 131, 107, 107, 193, 167, 116, 85, 159, 170, 179, 193, 201, 206, 208, 212, 214, 28.28074 + 217, 216, 210, 213, 206, 158, 127, 134, 138, 134, 130, 106, 67, 40, 30, 26, 28.28075 + 24, 33, 24, 36, 46, 60, 56, 51, 92, 132, 150, 143, 138, 142, 150, 144, 28.28076 + 148, 127, 114, 116, 128, 140, 142, 131, 126, 132, 124, 122, 114, 106, 60, 88, 28.28077 + 140, 136, 122, 112, 111, 107, 119, 126, 95, 81, 0, 154, 157, 140, 142, 138, 28.28078 + 139, 136, 118, 116, 111, 108, 114, 14, 147, 142, 131, 132, 126, 130, 119, 122, 28.28079 + 122, 123, 120, 95, 75, 115, 120, 116, 111, 96, 97, 108, 115, 71, 38, 64, 28.28080 + 120, 123, 128, 116, 123, 123, 119, 112, 112, 100, 72, 5, 131, 126, 132, 128, 28.28081 + 118, 115, 108, 100, 104, 100, 81, 85, 126, 144, 140, 130, 130, 120, 122, 124, 28.28082 + 97, 73, 4, 134, 120, 120, 114, 107, 107, 104, 106, 111, 106, 60, 18, 122, 28.28083 + 135, 118, 96, 107, 99, 118, 114, 102, 87, 67, 57, 2, 134, 139, 127, 73, 28.28084 + 88, 115, 111, 89, 88, 89, 89, 52, 14, 112, 123, 106, 103, 107, 100, 114, 28.28085 + 75, 57, 60, 5, 52, 114, 123, 127, 118, 112, 106, 103, 107, 103, 71, 20, 28.28086 + 104, 123, 119, 111, 102, 102, 102, 104, 100, 99, 57, 12, 91, 118, 88, 97, 28.28087 + 85, 87, 88, 96, 99, 87, 53, 8, 120, 142, 118, 114, 123, 119, 115, 84, 28.28088 + 100, 96, 93, 95, 106, 116, 104, 102, 106, 99, 111, 102, 104, 103, 85, 83, 28.28089 + 91, 81, 77, 79, 87, 77, 97, 88, 84, 38, 13, 64, 119, 93, 84, 89, 28.28090 + 68, 79, 73, 55, 48, 33, 34, 77, 102, 106, 114, 106, 106, 97, 102, 89, 28.28091 + 84, 72, 51, 16, 110, 120, 128, 115, 115, 107, 87, 83, 91, 77, 75, 88, 28.28092 + 89, 80, 51, 52, 72, 75, 41, 45, 36, 69, 14, 0, 80, 107, 77, 75, 28.28093 + 69, 65, 72, 65, 69, 75, 22, 0, 67, 68, 61, 69, 83, 67, 68, 64, 28.28094 + 26, 25, 4, 96, 76, 76, 76, 75, 71, 49, 63, 72, 63, 57, 41, 28, 28.28095 + 18, 34, 40, 22, 26, 20, 21, 18, 26, 24, 5, 1, 34, 65, 77, 77, 28.28096 + 81, 73, 64, 55, 68, 53, 63, 57, 59, 48, 65, 84, 72, 195, 187, 175, 28.28097 + 179, 183, 177, 181, 128, 122, 2, 130, 151, 162, 162, 151, 155, 136, 144, 143, 28.28098 + 154, 96, 32, 153, 179, 175, 170, 169, 170, 173, 175, 171, 131, 119, 40, 146, 28.28099 + 170, 175, 182, 173, 174, 169, 165, 151, 144, 99, 20, 136, 177, 163, 165, 146, 28.28100 + 148, 157, 153, 130, 124, 110, 22, 178, 154, 161, 128, 142, 142, 147, 151, 130, 28.28101 + 135, 150, 143, 104, 106, 126, 128, 130, 108, 103, 135, 108, 111, 155, 100, 157, 28.28102 + 154, 165, 163, 155, 161, 158, 161, 153, 144, 140, 96, 148, 175, 166, 155, 161, 28.28103 + 158, 157, 161, 148, 150, 99, 2, 134, 162, 179, 151, 126, 154, 124, 148, 127, 28.28104 + 112, 83, 33, 134, 163, 157, 161, 159, 154, 151, 151, 148, 138, 100, 16, 143, 28.28105 + 171, 138, 143, 148, 150, 144, 159, 142, 131, 100, 0, 150, 123, 142, 142, 139, 28.28106 + 139, 138, 138, 128, 112, 53, 142, 147, 138, 118, 108, 131, 135, 119, 112, 127, 28.28107 + 115, 124, 110, 71, 144, 161, 151, 134, 131, 136, 146, 143, 100, 87, 162, 179, 28.28108 + 126, 81, 115, 119, 136, 155, 182, 194, 202, 205, 204, 205, 210, 194, 173, 148, 28.28109 + 122, 135, 131, 118, 99, 67, 41, 30, 30, 28, 26, 28, 25, 33, 46, 56, 28.28110 + 56, 63, 60, 91, 135, 150, 148, 147, 142, 139, 143, 144, 123, 118, 88, 143, 28.28111 + 142, 124, 126, 134, 136, 134, 126, 96, 116, 57, 84, 130, 127, 120, 122, 119, 28.28112 + 111, 115, 119, 97, 80, 18, 158, 155, 154, 134, 128, 127, 124, 114, 114, 112, 28.28113 + 124, 114, 13, 144, 130, 123, 124, 134, 128, 126, 134, 123, 122, 103, 60, 103, 28.28114 + 150, 131, 119, 116, 111, 111, 120, 115, 76, 52, 114, 120, 116, 111, 108, 118, 28.28115 + 124, 110, 108, 99, 91, 81, 21, 131, 114, 116, 119, 132, 126, 112, 107, 100, 28.28116 + 89, 64, 112, 147, 128, 119, 128, 120, 104, 96, 106, 81, 69, 0, 93, 119, 28.28117 + 111, 100, 92, 97, 110, 110, 123, 102, 61, 13, 110, 132, 106, 100, 83, 92, 28.28118 + 95, 103, 85, 68, 69, 59, 4, 122, 112, 119, 103, 106, 96, 92, 100, 95, 28.28119 + 114, 93, 57, 14, 118, 122, 99, 92, 92, 89, 89, 96, 64, 68, 6, 99, 28.28120 + 123, 120, 115, 104, 115, 114, 107, 87, 85, 60, 13, 107, 122, 111, 100, 99, 28.28121 + 89, 89, 89, 88, 80, 55, 10, 89, 112, 99, 99, 96, 83, 84, 81, 89, 28.28122 + 93, 53, 12, 110, 131, 130, 128, 116, 110, 96, 115, 93, 88, 79, 84, 106, 28.28123 + 111, 122, 92, 102, 106, 102, 100, 87, 100, 92, 71, 55, 102, 111, 92, 88, 28.28124 + 71, 68, 87, 75, 45, 13, 59, 116, 97, 88, 84, 76, 85, 73, 75, 52, 28.28125 + 34, 40, 81, 111, 102, 92, 89, 89, 89, 89, 95, 100, 56, 59, 13, 99, 28.28126 + 118, 126, 119, 115, 85, 85, 114, 110, 107, 96, 69, 45, 84, 84, 57, 53, 28.28127 + 44, 41, 26, 46, 51, 13, 8, 97, 97, 73, 76, 67, 83, 83, 76, 69, 28.28128 + 68, 24, 0, 51, 60, 57, 46, 41, 41, 37, 52, 42, 25, 5, 107, 85, 28.28129 + 65, 76, 59, 55, 46, 55, 55, 57, 55, 41, 21, 26, 44, 36, 24, 9, 28.28130 + 4, 4, 6, 13, 22, 1, 5, 55, 96, 97, 64, 69, 63, 64, 69, 55, 28.28131 + 34, 41, 46, 51, 89, 107, 131, 136, 165, 166, 179, 178, 155, 167, 181, 131, 28.28132 + 122, 2, 127, 162, 162, 147, 144, 153, 147, 146, 139, 143, 104, 37, 130, 182, 28.28133 + 173, 175, 166, 165, 163, 166, 174, 132, 122, 51, 102, 171, 173, 163, 167, 175, 28.28134 + 173, 153, 148, 143, 97, 17, 147, 166, 175, 150, 159, 155, 161, 165, 140, 146, 28.28135 + 122, 10, 175, 155, 157, 128, 136, 140, 155, 147, 146, 143, 95, 100, 104, 158, 28.28136 + 122, 122, 150, 146, 144, 142, 144, 112, 107, 65, 158, 158, 165, 159, 150, 154, 28.28137 + 143, 140, 151, 150, 136, 93, 165, 173, 157, 150, 150, 153, 155, 148, 142, 159, 28.28138 + 93, 0, 138, 163, 158, 131, 130, 151, 150, 158, 158, 144, 87, 14, 154, 162, 28.28139 + 166, 157, 163, 158, 151, 154, 148, 119, 102, 13, 139, 165, 138, 147, 146, 154, 28.28140 + 157, 157, 144, 120, 97, 0, 151, 131, 143, 147, 144, 138, 140, 135, 136, 119, 28.28141 + 53, 143, 134, 135, 131, 139, 135, 116, 128, 127, 118, 111, 107, 68, 88, 153, 28.28142 + 155, 150, 131, 135, 138, 128, 140, 103, 88, 144, 183, 131, 80, 88, 103, 114, 28.28143 + 119, 126, 151, 162, 173, 170, 166, 161, 140, 128, 130, 124, 107, 87, 57, 44, 28.28144 + 32, 28, 26, 26, 36, 21, 26, 45, 46, 52, 55, 69, 64, 55, 96, 154, 28.28145 + 154, 153, 138, 139, 128, 128, 118, 114, 77, 126, 150, 124, 128, 143, 130, 126, 28.28146 + 122, 126, 102, 116, 69, 71, 131, 128, 122, 132, 112, 122, 116, 118, 103, 79, 28.28147 + 14, 106, 151, 139, 142, 151, 135, 130, 126, 115, 111, 115, 75, 17, 104, 123, 28.28148 + 128, 135, 127, 126, 118, 119, 120, 104, 93, 61, 111, 146, 119, 118, 128, 135, 28.28149 + 134, 120, 107, 79, 40, 112, 127, 118, 111, 110, 106, 119, 115, 99, 95, 88, 28.28150 + 80, 5, 114, 108, 119, 104, 124, 134, 126, 107, 103, 80, 46, 110, 150, 127, 28.28151 + 124, 127, 118, 102, 104, 93, 87, 75, 2, 111, 126, 126, 89, 102, 106, 102, 28.28152 + 115, 112, 112, 64, 12, 114, 131, 103, 97, 92, 95, 92, 81, 89, 69, 64, 28.28153 + 61, 4, 97, 114, 83, 107, 108, 99, 97, 95, 93, 95, 89, 67, 13, 104, 28.28154 + 116, 93, 85, 99, 102, 97, 95, 83, 69, 1, 107, 127, 107, 106, 106, 93, 28.28155 + 89, 84, 77, 81, 60, 4, 103, 122, 106, 91, 99, 85, 83, 87, 84, 88, 28.28156 + 56, 9, 88, 112, 110, 96, 107, 107, 103, 87, 87, 73, 55, 10, 100, 127, 28.28157 + 130, 124, 127, 119, 126, 127, 123, 115, 76, 106, 123, 106, 87, 80, 85, 87, 28.28158 + 84, 69, 75, 79, 60, 44, 65, 116, 111, 67, 83, 83, 106, 72, 76, 46, 28.28159 + 17, 64, 111, 95, 75, 91, 92, 81, 84, 75, 59, 37, 37, 80, 112, 99, 28.28160 + 88, 88, 97, 99, 85, 84, 95, 56, 60, 2, 97, 112, 112, 118, 122, 84, 28.28161 + 91, 99, 107, 102, 92, 63, 71, 95, 76, 38, 57, 33, 44, 40, 44, 46, 28.28162 + 12, 0, 76, 85, 76, 75, 65, 72, 77, 76, 75, 60, 24, 0, 75, 69, 28.28163 + 44, 53, 52, 45, 36, 49, 57, 26, 5, 102, 69, 69, 75, 55, 75, 48, 28.28164 + 46, 65, 59, 48, 44, 20, 13, 44, 32, 8, 13, 17, 10, 9, 9, 17, 28.28165 + 1, 10, 76, 99, 65, 56, 63, 41, 55, 85, 60, 42, 52, 40, 51, 93, 28.28166 + 131, 77, 30, 177, 177, 183, 162, 170, 173, 177, 130, 122, 2, 127, 159, 162, 28.28167 + 142, 140, 143, 151, 136, 138, 144, 110, 44, 124, 170, 171, 169, 175, 177, 165, 28.28168 + 162, 166, 135, 124, 51, 157, 175, 171, 163, 165, 173, 173, 154, 150, 147, 99, 28.28169 + 16, 144, 167, 158, 162, 163, 161, 165, 148, 146, 139, 115, 12, 173, 146, 153, 28.28170 + 131, 139, 136, 159, 148, 151, 140, 85, 108, 159, 154, 158, 155, 142, 143, 146, 28.28171 + 138, 142, 134, 134, 57, 157, 169, 163, 154, 155, 147, 159, 140, 146, 144, 134, 28.28172 + 92, 166, 171, 147, 151, 154, 148, 142, 153, 144, 143, 99, 2, 138, 162, 175, 28.28173 + 150, 154, 132, 127, 127, 147, 115, 88, 1, 146, 153, 170, 158, 163, 155, 153, 28.28174 + 153, 128, 128, 103, 13, 148, 163, 143, 153, 153, 148, 144, 153, 148, 130, 97, 28.28175 + 0, 144, 147, 143, 143, 142, 139, 140, 136, 128, 116, 61, 96, 124, 144, 134, 28.28176 + 119, 136, 120, 122, 122, 116, 114, 106, 60, 124, 154, 150, 146, 140, 128, 134, 28.28177 + 138, 143, 116, 87, 138, 186, 144, 110, 72, 75, 73, 79, 95, 114, 116, 120, 28.28178 + 123, 122, 120, 118, 95, 76, 57, 45, 37, 34, 32, 28, 24, 28, 34, 22, 28.28179 + 48, 52, 53, 55, 60, 63, 69, 68, 57, 89, 144, 139, 131, 115, 127, 128, 28.28180 + 127, 116, 95, 77, 131, 143, 124, 135, 130, 131, 118, 116, 130, 115, 118, 76, 28.28181 + 60, 120, 127, 118, 116, 119, 115, 108, 111, 93, 81, 12, 110, 150, 148, 157, 28.28182 + 139, 108, 106, 116, 107, 120, 120, 77, 14, 114, 132, 127, 130, 115, 120, 120, 28.28183 + 120, 106, 106, 97, 57, 110, 150, 127, 115, 116, 110, 108, 123, 108, 77, 41, 28.28184 + 96, 126, 119, 123, 118, 106, 114, 102, 96, 97, 84, 79, 2, 103, 118, 119, 28.28185 + 103, 119, 130, 124, 103, 89, 81, 46, 112, 153, 115, 118, 108, 116, 102, 103, 28.28186 + 87, 92, 72, 4, 122, 124, 118, 92, 99, 110, 112, 106, 112, 104, 67, 9, 28.28187 + 127, 132, 100, 92, 92, 81, 92, 92, 76, 75, 68, 57, 1, 104, 135, 112, 28.28188 + 110, 104, 99, 89, 110, 93, 96, 92, 56, 8, 104, 120, 89, 88, 91, 89, 28.28189 + 87, 92, 64, 67, 1, 107, 122, 93, 107, 91, 84, 88, 79, 83, 68, 60, 28.28190 + 14, 111, 122, 100, 95, 81, 87, 83, 80, 72, 87, 56, 8, 87, 108, 106, 28.28191 + 88, 81, 88, 81, 83, 87, 76, 56, 6, 114, 138, 128, 132, 111, 115, 114, 28.28192 + 119, 112, 111, 52, 104, 112, 106, 92, 84, 76, 80, 77, 77, 77, 60, 69, 28.28193 + 41, 106, 123, 120, 64, 93, 89, 95, 71, 71, 60, 21, 65, 115, 97, 89, 28.28194 + 92, 95, 79, 73, 84, 73, 36, 18, 68, 110, 84, 76, 73, 79, 85, 79, 28.28195 + 73, 99, 67, 60, 5, 110, 115, 111, 116, 110, 92, 88, 83, 116, 96, 92, 28.28196 + 57, 76, 103, 65, 37, 46, 25, 30, 40, 37, 42, 14, 0, 67, 95, 69, 28.28197 + 67, 64, 64, 67, 63, 57, 63, 25, 0, 55, 59, 59, 55, 64, 56, 37, 28.28198 + 42, 46, 26, 5, 110, 68, 67, 75, 49, 79, 46, 46, 45, 51, 44, 40, 28.28199 + 18, 22, 37, 25, 4, 10, 2, 4, 1, 5, 22, 1, 33, 89, 89, 49, 28.28200 + 52, 64, 52, 44, 68, 33, 29, 44, 36, 71, 108, 107, 24, 32, 181, 183, 28.28201 + 162, 166, 170, 154, 171, 142, 116, 2, 132, 163, 162, 142, 142, 144, 144, 138, 28.28202 + 138, 139, 114, 49, 118, 173, 175, 174, 167, 173, 173, 162, 163, 148, 123, 56, 28.28203 + 157, 171, 170, 167, 159, 161, 162, 153, 151, 143, 97, 12, 148, 174, 162, 159, 28.28204 + 161, 158, 167, 155, 144, 146, 123, 12, 177, 166, 146, 148, 138, 139, 138, 150, 28.28205 + 154, 142, 81, 151, 162, 154, 153, 146, 142, 154, 159, 139, 154, 144, 146, 73, 28.28206 + 165, 157, 155, 148, 154, 140, 159, 139, 148, 143, 120, 102, 170, 166, 148, 155, 28.28207 + 147, 154, 151, 163, 143, 144, 104, 0, 136, 165, 175, 148, 138, 135, 132, 130, 28.28208 + 159, 112, 93, 10, 148, 166, 161, 154, 159, 148, 147, 153, 130, 134, 104, 10, 28.28209 + 148, 170, 144, 144, 150, 150, 150, 153, 147, 128, 100, 0, 148, 138, 144, 148, 28.28210 + 139, 138, 142, 132, 122, 118, 64, 99, 122, 128, 124, 126, 138, 127, 116, 122, 28.28211 + 112, 120, 111, 52, 124, 155, 155, 136, 140, 127, 136, 144, 131, 124, 85, 126, 28.28212 + 185, 155, 124, 103, 77, 64, 60, 60, 55, 55, 53, 53, 57, 53, 49, 46, 28.28213 + 41, 40, 36, 34, 30, 30, 29, 34, 18, 30, 53, 60, 67, 68, 68, 65, 28.28214 + 67, 72, 72, 59, 91, 151, 130, 134, 134, 131, 122, 140, 126, 112, 59, 127, 28.28215 + 144, 124, 139, 123, 115, 115, 114, 127, 116, 115, 83, 42, 123, 134, 136, 132, 28.28216 + 130, 126, 118, 111, 100, 81, 2, 111, 144, 134, 146, 107, 102, 114, 116, 108, 28.28217 + 111, 116, 107, 9, 146, 138, 116, 138, 120, 110, 108, 110, 106, 122, 100, 55, 28.28218 + 118, 140, 123, 123, 111, 111, 104, 118, 112, 80, 45, 95, 124, 138, 147, 115, 28.28219 + 103, 96, 99, 97, 100, 92, 76, 0, 143, 112, 112, 104, 116, 115, 124, 104, 28.28220 + 91, 87, 45, 111, 151, 127, 122, 104, 114, 99, 99, 85, 96, 80, 0, 130, 28.28221 + 124, 126, 93, 97, 97, 116, 116, 115, 111, 67, 12, 123, 136, 102, 92, 87, 28.28222 + 81, 77, 93, 71, 77, 69, 63, 2, 142, 142, 112, 119, 85, 99, 114, 87, 28.28223 + 87, 100, 89, 60, 5, 111, 116, 91, 85, 89, 128, 93, 100, 64, 67, 0, 28.28224 + 108, 124, 95, 103, 83, 93, 81, 77, 79, 88, 63, 22, 106, 118, 91, 100, 28.28225 + 84, 81, 81, 83, 76, 89, 56, 5, 85, 111, 96, 80, 81, 88, 106, 84, 28.28226 + 83, 87, 57, 5, 110, 142, 126, 123, 110, 111, 110, 110, 114, 104, 49, 106, 28.28227 + 123, 93, 115, 97, 83, 77, 77, 72, 67, 64, 68, 38, 104, 114, 110, 69, 28.28228 + 99, 103, 69, 72, 52, 44, 20, 68, 115, 85, 85, 87, 67, 60, 57, 75, 28.28229 + 79, 37, 25, 81, 108, 97, 76, 73, 71, 72, 69, 83, 93, 71, 56, 6, 28.28230 + 110, 126, 112, 112, 85, 85, 87, 83, 111, 91, 93, 52, 76, 100, 71, 29, 28.28231 + 45, 25, 32, 37, 40, 41, 12, 0, 81, 88, 73, 65, 61, 75, 73, 67, 28.28232 + 52, 64, 25, 0, 71, 61, 49, 46, 38, 67, 44, 44, 40, 26, 8, 96, 28.28233 + 80, 77, 46, 33, 81, 44, 44, 41, 59, 33, 40, 17, 17, 29, 22, 14, 28.28234 + 36, 21, 22, 8, 6, 14, 0, 44, 92, 81, 45, 49, 51, 45, 59, 76, 28.28235 + 33, 30, 34, 34, 63, 108, 46, 38, 33, 181, 177, 161, 169, 170, 153, 174, 28.28236 + 136, 123, 0, 130, 158, 161, 142, 144, 140, 151, 134, 142, 143, 118, 60, 88, 28.28237 + 163, 178, 170, 173, 170, 165, 161, 162, 158, 124, 64, 123, 174, 159, 167, 170, 28.28238 + 163, 166, 157, 148, 153, 106, 16, 148, 174, 159, 157, 169, 161, 161, 144, 131, 28.28239 + 136, 124, 9, 175, 162, 166, 143, 139, 139, 143, 153, 153, 139, 77, 157, 162, 28.28240 + 155, 148, 142, 144, 169, 140, 136, 131, 146, 158, 65, 161, 153, 158, 154, 153, 28.28241 + 147, 163, 138, 144, 142, 92, 106, 171, 174, 150, 169, 151, 150, 158, 166, 139, 28.28242 + 144, 115, 0, 140, 162, 169, 148, 153, 139, 136, 126, 153, 120, 96, 22, 143, 28.28243 + 166, 157, 157, 151, 144, 162, 153, 140, 132, 110, 12, 150, 171, 136, 151, 150, 28.28244 + 146, 147, 157, 140, 128, 99, 0, 147, 136, 144, 143, 134, 134, 139, 134, 135, 28.28245 + 112, 68, 99, 146, 115, 128, 131, 146, 123, 135, 131, 103, 124, 100, 46, 139, 28.28246 + 163, 154, 143, 140, 124, 128, 143, 128, 127, 87, 118, 181, 163, 139, 127, 112, 28.28247 + 96, 71, 61, 56, 52, 49, 48, 46, 44, 44, 41, 38, 37, 36, 34, 34, 28.28248 + 37, 37, 14, 28, 57, 69, 73, 72, 84, 85, 88, 89, 76, 76, 68, 85, 28.28249 + 162, 136, 126, 138, 131, 128, 127, 126, 118, 51, 128, 138, 124, 124, 126, 115, 28.28250 + 130, 119, 119, 118, 119, 85, 37, 107, 131, 136, 122, 118, 112, 112, 111, 102, 28.28251 + 84, 12, 123, 143, 138, 142, 103, 104, 122, 107, 108, 119, 123, 111, 9, 142, 28.28252 + 131, 119, 138, 115, 112, 114, 103, 100, 119, 99, 45, 111, 154, 122, 115, 115, 28.28253 + 112, 108, 120, 111, 80, 49, 87, 132, 135, 116, 104, 114, 96, 112, 110, 106, 28.28254 + 93, 84, 14, 138, 104, 120, 99, 114, 97, 135, 102, 92, 84, 45, 112, 150, 28.28255 + 119, 126, 108, 108, 111, 89, 85, 84, 76, 0, 114, 123, 124, 92, 106, 92, 28.28256 + 102, 103, 118, 96, 68, 8, 122, 136, 107, 100, 88, 85, 84, 96, 75, 71, 28.28257 + 73, 63, 1, 134, 150, 107, 114, 85, 102, 95, 102, 88, 89, 87, 61, 9, 28.28258 + 103, 127, 92, 92, 115, 112, 97, 91, 65, 68, 8, 112, 124, 88, 93, 81, 28.28259 + 81, 79, 88, 79, 87, 64, 9, 104, 122, 100, 102, 96, 102, 99, 102, 77, 28.28260 + 92, 60, 4, 93, 104, 89, 87, 116, 81, 80, 81, 83, 93, 59, 9, 142, 28.28261 + 139, 128, 114, 112, 124, 108, 112, 111, 111, 56, 111, 108, 112, 93, 110, 89, 28.28262 + 75, 77, 64, 65, 63, 69, 34, 110, 124, 106, 64, 93, 87, 69, 68, 71, 28.28263 + 48, 22, 71, 120, 73, 76, 64, 56, 56, 55, 57, 72, 38, 42, 77, 108, 28.28264 + 107, 75, 71, 67, 83, 68, 69, 89, 72, 57, 5, 103, 126, 108, 106, 92, 28.28265 + 84, 83, 87, 97, 91, 88, 48, 87, 107, 60, 32, 28, 20, 28, 36, 29, 28.28266 + 57, 12, 5, 87, 92, 69, 69, 72, 68, 55, 72, 60, 63, 26, 0, 77, 28.28267 + 68, 46, 51, 46, 38, 45, 44, 36, 28, 8, 84, 87, 56, 64, 48, 83, 28.28268 + 41, 41, 42, 51, 34, 36, 12, 17, 22, 24, 25, 17, 22, 22, 5, 8, 28.28269 + 8, 0, 44, 100, 68, 46, 55, 57, 51, 60, 96, 37, 34, 36, 32, 76, 28.28270 + 107, 41, 63, 63, 183, 163, 161, 162, 167, 151, 181, 134, 127, 0, 130, 155, 28.28271 + 162, 142, 154, 139, 143, 131, 136, 135, 127, 84, 93, 162, 178, 178, 174, 163, 28.28272 + 178, 170, 163, 162, 124, 65, 83, 173, 173, 163, 163, 163, 155, 163, 151, 144, 28.28273 + 111, 12, 157, 171, 159, 158, 153, 157, 157, 142, 131, 139, 124, 6, 175, 162, 28.28274 + 154, 139, 144, 135, 161, 154, 147, 139, 69, 163, 151, 147, 146, 146, 165, 144, 28.28275 + 138, 143, 146, 131, 143, 38, 166, 157, 153, 153, 136, 150, 163, 132, 153, 132, 28.28276 + 93, 126, 177, 165, 151, 165, 154, 147, 153, 167, 138, 139, 112, 0, 146, 154, 28.28277 + 174, 147, 138, 130, 138, 131, 166, 138, 115, 12, 151, 167, 153, 153, 143, 143, 28.28278 + 162, 148, 140, 126, 115, 9, 140, 170, 147, 144, 144, 140, 144, 157, 134, 132, 28.28279 + 96, 0, 148, 128, 140, 136, 131, 128, 136, 131, 131, 118, 72, 52, 108, 155, 28.28280 + 140, 131, 104, 124, 108, 114, 107, 127, 104, 41, 151, 161, 158, 134, 147, 126, 28.28281 + 127, 143, 122, 124, 92, 102, 171, 163, 162, 132, 126, 114, 97, 81, 77, 63, 28.28282 + 57, 52, 49, 48, 46, 49, 48, 52, 49, 51, 46, 42, 51, 13, 53, 73, 28.28283 + 75, 77, 96, 99, 106, 110, 110, 79, 77, 60, 84, 167, 136, 144, 114, 138, 28.28284 + 144, 114, 122, 116, 51, 123, 138, 126, 128, 119, 115, 136, 119, 122, 115, 123, 28.28285 + 89, 41, 110, 130, 132, 122, 115, 115, 114, 115, 100, 83, 9, 124, 140, 135, 28.28286 + 154, 102, 106, 114, 104, 110, 108, 114, 79, 9, 106, 128, 111, 146, 118, 118, 28.28287 + 112, 104, 104, 123, 100, 40, 111, 154, 116, 115, 116, 108, 116, 107, 106, 84, 28.28288 + 48, 99, 131, 139, 104, 104, 97, 108, 106, 97, 96, 89, 83, 1, 124, 108, 28.28289 + 115, 99, 119, 96, 123, 100, 92, 80, 28, 107, 150, 123, 128, 108, 106, 97, 28.28290 + 93, 91, 88, 76, 0, 118, 114, 136, 89, 96, 92, 92, 102, 122, 102, 69, 28.28291 + 6, 124, 142, 108, 111, 84, 92, 81, 104, 75, 68, 71, 64, 0, 112, 122, 28.28292 + 88, 124, 87, 100, 88, 103, 87, 91, 84, 60, 8, 112, 131, 92, 84, 112, 28.28293 + 91, 92, 92, 77, 71, 0, 107, 116, 95, 80, 79, 79, 76, 103, 80, 100, 28.28294 + 67, 2, 91, 119, 112, 87, 95, 89, 85, 80, 76, 99, 61, 4, 89, 104, 28.28295 + 87, 108, 120, 99, 79, 80, 81, 85, 60, 6, 126, 131, 128, 110, 112, 127, 28.28296 + 108, 108, 107, 110, 52, 116, 122, 96, 99, 103, 84, 68, 88, 65, 64, 69, 28.28297 + 61, 30, 112, 116, 69, 107, 67, 71, 77, 69, 71, 52, 28, 45, 114, 75, 28.28298 + 68, 59, 53, 56, 52, 56, 73, 41, 25, 72, 103, 114, 72, 63, 65, 89, 28.28299 + 68, 69, 100, 60, 60, 2, 104, 127, 110, 84, 85, 81, 83, 111, 97, 85, 28.28300 + 85, 40, 87, 99, 80, 29, 28, 21, 26, 37, 30, 38, 14, 0, 61, 84, 28.28301 + 56, 52, 49, 63, 55, 75, 52, 84, 26, 0, 64, 67, 45, 38, 41, 46, 28.28302 + 42, 36, 45, 30, 9, 36, 102, 52, 48, 44, 67, 38, 38, 38, 60, 32, 28.28303 + 29, 8, 24, 16, 2, 6, 6, 20, 8, 5, 13, 2, 0, 49, 93, 59, 28.28304 + 37, 55, 42, 49, 48, 83, 44, 38, 34, 26, 71, 111, 45, 61, 5, 183, 28.28305 + 162, 163, 166, 169, 142, 181, 135, 118, 0, 128, 151, 166, 139, 159, 136, 142, 28.28306 + 134, 134, 123, 138, 88, 68, 157, 181, 179, 181, 163, 175, 183, 158, 169, 120, 28.28307 + 72, 55, 179, 177, 150, 150, 159, 166, 166, 148, 144, 114, 10, 159, 177, 159, 28.28308 + 158, 157, 154, 147, 150, 132, 139, 124, 6, 173, 162, 165, 138, 138, 138, 147, 28.28309 + 153, 148, 136, 55, 169, 146, 151, 138, 169, 155, 142, 138, 148, 154, 134, 130, 28.28310 + 33, 158, 161, 150, 138, 140, 151, 170, 128, 148, 131, 84, 136, 178, 169, 150, 28.28311 + 166, 147, 150, 151, 170, 140, 140, 118, 0, 140, 153, 174, 132, 143, 132, 144, 28.28312 + 132, 179, 120, 110, 1, 158, 165, 151, 151, 139, 140, 166, 146, 136, 131, 112, 28.28313 + 8, 136, 169, 143, 144, 142, 134, 144, 163, 136, 138, 99, 0, 144, 139, 136, 28.28314 + 131, 124, 140, 131, 130, 123, 110, 75, 64, 108, 157, 158, 115, 131, 123, 104, 28.28315 + 112, 103, 142, 99, 33, 147, 161, 166, 138, 153, 151, 124, 138, 120, 115, 92, 28.28316 + 96, 161, 169, 158, 154, 134, 122, 111, 104, 92, 80, 64, 68, 65, 64, 63, 28.28317 + 63, 51, 55, 52, 49, 42, 44, 56, 10, 57, 79, 72, 92, 93, 95, 116, 28.28318 + 127, 126, 106, 77, 69, 76, 167, 132, 150, 116, 143, 130, 116, 120, 104, 41, 28.28319 + 127, 135, 123, 127, 119, 116, 144, 115, 123, 114, 135, 99, 46, 112, 126, 114, 28.28320 + 116, 116, 116, 108, 118, 102, 80, 2, 128, 131, 131, 165, 102, 103, 108, 103, 28.28321 + 110, 106, 119, 88, 5, 114, 132, 114, 144, 116, 118, 110, 104, 99, 130, 93, 28.28322 + 33, 112, 163, 114, 116, 114, 106, 103, 104, 102, 84, 52, 88, 134, 111, 104, 28.28323 + 102, 102, 99, 100, 104, 97, 87, 81, 2, 139, 108, 110, 97, 130, 95, 135, 28.28324 + 96, 87, 75, 26, 103, 148, 112, 135, 102, 102, 102, 89, 81, 93, 79, 0, 28.28325 + 134, 114, 128, 88, 97, 119, 122, 102, 130, 103, 72, 4, 138, 150, 114, 112, 28.28326 + 81, 85, 84, 115, 87, 67, 75, 64, 0, 114, 136, 104, 124, 87, 95, 89, 28.28327 + 112, 84, 93, 85, 64, 4, 115, 124, 91, 87, 119, 87, 96, 91, 69, 71, 28.28328 + 0, 114, 131, 92, 79, 80, 73, 76, 111, 80, 72, 65, 2, 88, 122, 123, 28.28329 + 85, 81, 80, 77, 71, 72, 110, 61, 2, 85, 96, 87, 110, 132, 80, 79, 28.28330 + 77, 81, 102, 63, 4, 130, 143, 138, 108, 107, 132, 106, 106, 106, 107, 32, 28.28331 + 122, 119, 114, 85, 114, 83, 69, 75, 61, 64, 61, 63, 24, 118, 116, 69, 28.28332 + 115, 65, 71, 69, 68, 68, 52, 30, 36, 114, 72, 60, 56, 88, 57, 52, 28.28333 + 56, 63, 41, 26, 60, 76, 122, 68, 65, 64, 79, 67, 65, 87, 65, 56, 28.28334 + 2, 97, 130, 103, 85, 83, 83, 81, 112, 95, 89, 87, 30, 92, 100, 83, 28.28335 + 29, 20, 20, 30, 25, 26, 32, 17, 0, 55, 83, 42, 38, 38, 45, 52, 28.28336 + 84, 51, 60, 29, 0, 57, 59, 48, 37, 42, 41, 40, 44, 46, 29, 20, 28.28337 + 16, 103, 57, 45, 44, 59, 38, 37, 37, 40, 33, 26, 9, 8, 16, 1, 28.28338 + 32, 2, 0, 2, 5, 5, 2, 0, 42, 85, 45, 42, 57, 45, 37, 56, 28.28339 + 91, 29, 28, 40, 22, 92, 106, 9, 8, 0, 9, 12, 9, 12, 12, 56, 28.28340 + 59, 12, 14, 0, 34, 80, 80, 75, 80, 34, 30, 73, 80, 22, 10, 68, 28.28341 + 85, 88, 60, 85, 40, 44, 44, 76, 42, 30, 26, 0, 85, 110, 104, 32, 28.28342 + 108, 34, 36, 41, 77, 77, 16, 38, 91, 88, 91, 93, 96, 91, 60, 51, 28.28343 + 81, 77, 84, 16, 76, 53, 42, 44, 85, 89, 60, 48, 42, 38, 42, 24, 28.28344 + 89, 108, 56, 59, 60, 49, 95, 51, 67, 49, 42, 21, 59, 102, 52, 53, 28.28345 + 55, 100, 92, 57, 93, 45, 48, 2, 99, 103, 68, 110, 130, 71, 56, 97, 28.28346 + 61, 89, 32, 34, 112, 120, 114, 52, 42, 51, 80, 52, 83, 46, 48, 12, 28.28347 + 99, 106, 118, 111, 96, 100, 96, 69, 68, 57, 49, 0, 104, 108, 102, 106, 28.28348 + 76, 71, 68, 99, 130, 73, 71, 20, 99, 131, 112, 73, 73, 103, 77, 72, 28.28349 + 65, 65, 44, 72, 139, 119, 80, 116, 104, 76, 80, 77, 107, 139, 68, 1, 28.28350 + 114, 93, 116, 114, 91, 77, 83, 108, 112, 104, 21, 118, 120, 87, 91, 88, 28.28351 + 88, 119, 92, 76, 87, 115, 24, 115, 116, 96, 119, 119, 111, 100, 93, 95, 28.28352 + 77, 77, 71, 2, 76, 136, 106, 110, 84, 108, 75, 114, 84, 80, 72, 26, 28.28353 + 120, 126, 99, 128, 108, 92, 88, 83, 80, 83, 68, 10, 119, 122, 130, 127, 28.28354 + 93, 96, 106, 89, 122, 69, 14, 159, 140, 142, 118, 161, 140, 136, 112, 122, 28.28355 + 116, 118, 104, 60, 87, 139, 128, 111, 104, 108, 130, 107, 127, 92, 53, 69, 28.28356 + 159, 175, 159, 181, 142, 136, 138, 162, 130, 127, 38, 106, 136, 139, 132, 110, 28.28357 + 106, 111, 142, 108, 107, 111, 52, 93, 140, 161, 135, 166, 114, 112, 102, 111, 28.28358 + 100, 115, 110, 30, 131, 116, 119, 114, 136, 119, 112, 115, 135, 96, 114, 30, 28.28359 + 162, 144, 140, 140, 142, 126, 128, 148, 112, 112, 102, 9, 110, 153, 136, 157, 28.28360 + 108, 114, 110, 126, 112, 112, 49, 134, 146, 146, 144, 143, 124, 128, 150, 148, 28.28361 + 122, 115, 96, 5, 144, 134, 150, 151, 122, 134, 112, 119, 119, 139, 116, 5, 28.28362 + 170, 153, 178, 143, 135, 147, 122, 119, 123, 119, 60, 93, 148, 123, 161, 147, 28.28363 + 112, 147, 148, 103, 122, 112, 10, 153, 191, 174, 157, 150, 154, 193, 170, 150, 28.28364 + 150, 134, 131, 5, 124, 131, 135, 103, 104, 99, 111, 106, 118, 119, 107, 34, 28.28365 + 153, 157, 136, 158, 140, 154, 124, 134, 123, 124, 123, 17, 162, 174, 163, 165, 28.28366 + 175, 132, 162, 165, 144, 139, 134, 92, 0, 170, 181, 174, 169, 170, 153, 150, 28.28367 + 147, 140, 144, 12, 163, 151, 167, 144, 128, 157, 140, 159, 139, 128, 37, 159, 28.28368 + 179, 155, 150, 135, 150, 123, 163, 177, 151, 142, 112, 76, 96, 171, 167, 171, 28.28369 + 170, 155, 146, 147, 146, 151, 135, 41, 166, 169, 151, 167, 147, 170, 148, 147, 28.28370 + 147, 131, 6, 187, 185, 182, 153, 146, 175, 171, 170, 185, 157, 138, 136, 14, 28.28371 + 154, 138, 139, 153, 150, 178, 167, 155, 130, 135, 124, 14, 153, 154, 169, 157, 28.28372 + 174, 139, 148, 147, 136, 139, 115, 0, 173, 179, 158, 159, 146, 150, 163, 177, 28.28373 + 162, 144, 116, 73, 115, 185, 173, 161, 155, 183, 155, 155, 144, 151, 163, 76, 28.28374 + 88, 187, 174, 198, 174, 68, 57, 63, 12, 12, 45, 55, 20, 13, 0, 41, 28.28375 + 89, 71, 65, 84, 41, 29, 68, 79, 21, 9, 68, 72, 85, 73, 55, 38, 28.28376 + 45, 44, 71, 52, 34, 26, 0, 83, 97, 92, 37, 91, 37, 34, 55, 67, 28.28377 + 64, 26, 44, 87, 85, 87, 69, 67, 48, 51, 71, 53, 65, 75, 28, 72, 28.28378 + 61, 44, 44, 52, 89, 79, 59, 44, 37, 41, 30, 89, 112, 61, 59, 71, 28.28379 + 57, 93, 61, 72, 49, 37, 20, 59, 102, 55, 53, 55, 95, 88, 60, 89, 28.28380 + 44, 45, 1, 97, 99, 87, 104, 123, 77, 56, 93, 65, 80, 25, 40, 93, 28.28381 + 111, 64, 42, 49, 57, 65, 67, 53, 42, 42, 17, 95, 100, 97, 131, 106, 28.28382 + 92, 96, 95, 65, 59, 51, 0, 102, 106, 112, 100, 76, 72, 77, 92, 112, 28.28383 + 89, 71, 22, 93, 126, 110, 77, 76, 99, 103, 72, 61, 67, 41, 72, 127, 28.28384 + 103, 80, 91, 92, 96, 77, 77, 99, 126, 61, 0, 112, 100, 103, 111, 92, 28.28385 + 81, 87, 100, 110, 102, 26, 124, 116, 93, 96, 80, 111, 111, 84, 87, 77, 28.28386 + 103, 36, 110, 116, 110, 114, 97, 97, 99, 92, 104, 76, 79, 63, 1, 85, 28.28387 + 122, 96, 83, 95, 97, 80, 100, 83, 83, 75, 37, 115, 128, 102, 120, 116, 28.28388 + 100, 106, 104, 92, 81, 79, 9, 115, 118, 116, 99, 95, 112, 95, 97, 112, 28.28389 + 75, 20, 148, 139, 140, 126, 138, 140, 132, 118, 130, 116, 124, 106, 55, 88, 28.28390 + 140, 127, 100, 110, 124, 122, 104, 123, 99, 52, 75, 155, 166, 154, 165, 140, 28.28391 + 132, 136, 157, 130, 124, 46, 111, 135, 138, 124, 107, 110, 111, 134, 110, 104, 28.28392 + 103, 49, 92, 140, 153, 135, 153, 122, 115, 108, 108, 102, 114, 108, 45, 116, 28.28393 + 120, 123, 138, 136, 124, 111, 112, 124, 104, 111, 32, 157, 148, 131, 131, 119, 28.28394 + 119, 130, 144, 106, 112, 103, 8, 116, 142, 128, 154, 103, 114, 114, 118, 110, 28.28395 + 107, 48, 130, 143, 146, 142, 128, 143, 144, 144, 131, 119, 112, 96, 5, 144, 28.28396 + 134, 147, 142, 123, 130, 126, 107, 128, 130, 110, 6, 163, 163, 159, 139, 127, 28.28397 + 148, 123, 124, 119, 116, 57, 100, 144, 144, 153, 127, 112, 144, 147, 106, 122, 28.28398 + 108, 12, 147, 183, 170, 167, 136, 140, 173, 166, 147, 150, 142, 135, 24, 131, 28.28399 + 127, 135, 103, 97, 100, 100, 111, 115, 115, 106, 42, 150, 155, 130, 148, 148, 28.28400 + 154, 126, 130, 131, 123, 103, 18, 158, 162, 161, 163, 157, 136, 158, 161, 148, 28.28401 + 139, 124, 93, 0, 174, 181, 170, 165, 155, 151, 150, 139, 138, 138, 1, 154, 28.28402 + 159, 165, 136, 124, 153, 139, 157, 140, 126, 48, 155, 179, 159, 144, 132, 143, 28.28403 + 124, 134, 136, 138, 140, 110, 71, 99, 175, 161, 165, 169, 151, 144, 148, 154, 28.28404 + 150, 139, 51, 162, 163, 154, 157, 159, 169, 148, 147, 144, 110, 6, 181, 178, 28.28405 + 173, 159, 147, 177, 173, 162, 162, 159, 136, 124, 14, 150, 139, 150, 151, 150, 28.28406 + 151, 171, 165, 142, 139, 119, 8, 151, 154, 147, 162, 170, 158, 136, 143, 138, 28.28407 + 130, 112, 0, 178, 175, 154, 158, 148, 151, 155, 177, 163, 158, 112, 67, 120, 28.28408 + 181, 170, 163, 154, 177, 157, 154, 146, 147, 161, 72, 87, 190, 175, 194, 177, 28.28409 + 22, 46, 24, 12, 12, 38, 56, 20, 14, 2, 49, 81, 65, 73, 73, 45, 28.28410 + 28, 51, 73, 22, 9, 67, 79, 76, 79, 45, 48, 38, 48, 65, 51, 36, 28.28411 + 25, 0, 81, 80, 45, 75, 57, 37, 37, 44, 75, 64, 24, 46, 89, 72, 28.28412 + 49, 49, 72, 69, 69, 61, 64, 60, 81, 24, 64, 60, 46, 42, 44, 64, 28.28413 + 81, 75, 55, 38, 38, 32, 89, 114, 59, 63, 60, 60, 68, 75, 64, 51, 28.28414 + 48, 18, 64, 84, 60, 53, 73, 93, 67, 79, 81, 44, 45, 1, 83, 97, 28.28415 + 72, 71, 68, 63, 57, 92, 69, 75, 24, 40, 100, 106, 60, 36, 57, 36, 28.28416 + 42, 41, 42, 48, 42, 17, 91, 100, 99, 100, 116, 100, 80, 91, 68, 59, 28.28417 + 51, 0, 99, 114, 107, 92, 83, 71, 72, 75, 72, 81, 72, 28, 85, 124, 28.28418 + 106, 77, 73, 84, 104, 68, 68, 68, 40, 75, 124, 114, 110, 97, 93, 95, 28.28419 + 93, 80, 93, 112, 75, 2, 102, 103, 110, 102, 100, 85, 89, 96, 104, 96, 28.28420 + 30, 118, 116, 89, 87, 110, 89, 77, 91, 88, 72, 96, 40, 104, 115, 103, 28.28421 + 99, 106, 102, 96, 96, 91, 76, 76, 80, 13, 73, 116, 92, 91, 96, 93, 28.28422 + 85, 93, 81, 80, 75, 41, 111, 126, 102, 119, 107, 107, 96, 99, 93, 88, 28.28423 + 76, 8, 112, 116, 107, 99, 111, 89, 96, 88, 107, 64, 26, 140, 138, 139, 28.28424 + 132, 123, 114, 116, 127, 116, 122, 119, 104, 52, 92, 135, 124, 104, 110, 138, 28.28425 + 124, 108, 114, 102, 52, 107, 155, 155, 153, 158, 147, 138, 142, 155, 130, 127, 28.28426 + 55, 107, 136, 136, 124, 107, 114, 112, 131, 108, 102, 97, 45, 96, 136, 148, 28.28427 + 136, 148, 131, 112, 108, 103, 100, 112, 108, 49, 124, 124, 119, 146, 122, 120, 28.28428 + 114, 112, 123, 106, 114, 46, 146, 144, 128, 134, 151, 153, 151, 140, 107, 114, 28.28429 + 91, 16, 115, 134, 124, 126, 102, 108, 115, 104, 107, 107, 64, 123, 143, 144, 28.28430 + 142, 132, 128, 123, 130, 120, 116, 116, 93, 17, 148, 139, 157, 116, 107, 114, 28.28431 + 120, 107, 122, 119, 110, 8, 161, 151, 165, 155, 140, 153, 126, 123, 126, 99, 28.28432 + 65, 112, 136, 150, 139, 112, 119, 144, 147, 110, 114, 107, 14, 140, 183, 171, 28.28433 + 163, 157, 143, 151, 143, 148, 150, 139, 127, 10, 130, 136, 119, 100, 100, 103, 28.28434 + 103, 107, 119, 115, 89, 46, 146, 155, 142, 140, 128, 148, 126, 124, 127, 126, 28.28435 + 124, 2, 154, 159, 162, 171, 140, 136, 150, 163, 144, 142, 124, 91, 0, 163, 28.28436 + 186, 169, 165, 154, 155, 154, 159, 131, 142, 1, 148, 147, 132, 124, 151, 147, 28.28437 + 143, 154, 136, 127, 55, 153, 177, 158, 167, 130, 124, 127, 128, 132, 135, 138, 28.28438 + 96, 61, 104, 170, 158, 161, 166, 154, 147, 150, 148, 151, 135, 65, 154, 161, 28.28439 + 159, 161, 158, 163, 150, 142, 147, 134, 8, 179, 170, 167, 155, 148, 174, 174, 28.28440 + 163, 155, 155, 134, 130, 0, 153, 130, 135, 154, 150, 147, 144, 169, 154, 139, 28.28441 + 115, 10, 150, 154, 147, 190, 159, 135, 162, 158, 131, 132, 110, 0, 173, 175, 28.28442 + 169, 162, 157, 148, 165, 169, 161, 148, 112, 63, 124, 139, 169, 163, 148, 144, 28.28443 + 146, 150, 150, 147, 150, 63, 103, 189, 178, 190, 185, 16, 36, 25, 10, 12, 28.28444 + 33, 45, 16, 14, 0, 51, 92, 61, 60, 72, 68, 33, 45, 59, 22, 8, 28.28445 + 65, 75, 67, 42, 41, 61, 51, 52, 56, 64, 33, 25, 2, 79, 73, 40, 28.28446 + 65, 42, 40, 37, 49, 57, 41, 25, 52, 84, 67, 92, 60, 79, 68, 64, 28.28447 + 60, 49, 63, 68, 26, 63, 76, 55, 42, 44, 44, 51, 64, 44, 40, 37, 28.28448 + 33, 92, 123, 48, 53, 57, 75, 65, 59, 49, 48, 48, 17, 61, 91, 56, 28.28449 + 57, 81, 71, 73, 75, 59, 45, 44, 2, 93, 97, 91, 89, 85, 59, 76, 28.28450 + 71, 81, 52, 21, 40, 89, 55, 36, 29, 30, 24, 29, 28, 30, 44, 36, 28.28451 + 16, 87, 99, 89, 93, 110, 112, 83, 72, 73, 65, 42, 0, 97, 106, 104, 28.28452 + 89, 87, 99, 83, 81, 76, 80, 72, 32, 83, 104, 103, 80, 76, 80, 96, 28.28453 + 80, 65, 51, 34, 73, 119, 108, 112, 120, 102, 116, 106, 92, 88, 103, 72, 28.28454 + 0, 99, 107, 95, 97, 97, 87, 83, 96, 89, 91, 34, 114, 114, 91, 91, 28.28455 + 89, 89, 76, 79, 88, 68, 88, 44, 102, 110, 107, 110, 104, 100, 97, 99, 28.28456 + 103, 77, 77, 79, 4, 81, 100, 84, 77, 93, 88, 83, 93, 75, 81, 75, 28.28457 + 48, 107, 126, 106, 118, 123, 89, 100, 99, 93, 84, 68, 16, 99, 115, 124, 28.28458 + 104, 83, 110, 97, 102, 103, 60, 24, 127, 140, 138, 130, 115, 120, 123, 116, 28.28459 + 115, 123, 122, 106, 44, 96, 134, 119, 100, 114, 119, 114, 104, 111, 102, 52, 28.28460 + 84, 153, 162, 146, 136, 136, 142, 151, 150, 131, 126, 61, 106, 132, 143, 111, 28.28461 + 112, 110, 107, 139, 108, 89, 91, 41, 96, 138, 135, 130, 135, 140, 112, 116, 28.28462 + 106, 102, 112, 108, 53, 118, 123, 124, 130, 123, 122, 118, 112, 119, 106, 114, 28.28463 + 51, 144, 144, 128, 135, 131, 135, 124, 122, 122, 120, 85, 22, 112, 126, 135, 28.28464 + 123, 100, 111, 112, 100, 108, 110, 67, 123, 140, 143, 139, 146, 124, 123, 123, 28.28465 + 128, 110, 114, 96, 9, 136, 131, 120, 142, 100, 134, 134, 108, 103, 126, 112, 28.28466 + 9, 150, 154, 163, 143, 136, 162, 131, 127, 123, 114, 68, 115, 122, 143, 135, 28.28467 + 114, 116, 138, 138, 106, 115, 103, 12, 146, 178, 167, 143, 153, 148, 143, 140, 28.28468 + 150, 153, 138, 127, 16, 102, 134, 100, 95, 108, 95, 110, 112, 116, 106, 97, 28.28469 + 52, 139, 130, 126, 132, 126, 142, 132, 130, 131, 123, 126, 0, 153, 158, 158, 28.28470 + 169, 136, 140, 148, 155, 151, 135, 124, 88, 0, 165, 186, 163, 161, 155, 155, 28.28471 + 154, 159, 128, 131, 1, 142, 147, 130, 118, 151, 124, 138, 131, 140, 124, 64, 28.28472 + 147, 165, 148, 139, 132, 124, 128, 128, 132, 131, 143, 102, 55, 112, 167, 159, 28.28473 + 148, 161, 161, 146, 147, 151, 144, 138, 68, 155, 161, 158, 147, 154, 155, 150, 28.28474 + 147, 143, 136, 9, 170, 167, 162, 155, 150, 173, 178, 179, 169, 157, 135, 127, 28.28475 + 2, 147, 134, 146, 122, 130, 146, 144, 140, 148, 139, 122, 14, 150, 157, 143, 28.28476 + 163, 130, 138, 131, 132, 131, 124, 106, 0, 148, 175, 159, 159, 158, 155, 161, 28.28477 + 163, 159, 144, 104, 53, 130, 143, 143, 163, 151, 151, 153, 151, 143, 134, 135, 28.28478 + 59, 104, 183, 177, 178, 185, 9, 10, 10, 10, 12, 38, 38, 12, 12, 0, 28.28479 + 48, 56, 61, 59, 67, 67, 38, 34, 46, 21, 6, 61, 84, 75, 48, 60, 28.28480 + 75, 60, 55, 59, 42, 30, 25, 0, 77, 79, 36, 71, 40, 41, 36, 41, 28.28481 + 61, 40, 28, 52, 80, 83, 64, 61, 75, 81, 67, 67, 67, 59, 68, 26, 28.28482 + 36, 65, 59, 42, 46, 44, 45, 45, 51, 37, 38, 36, 89, 99, 57, 75, 28.28483 + 63, 79, 72, 61, 52, 48, 38, 16, 63, 87, 57, 76, 73, 67, 75, 77, 28.28484 + 49, 44, 44, 9, 88, 83, 80, 69, 57, 73, 60, 68, 85, 49, 18, 37, 28.28485 + 91, 44, 20, 21, 28, 37, 20, 24, 33, 49, 36, 20, 84, 97, 93, 89, 28.28486 + 110, 88, 89, 75, 75, 55, 42, 0, 93, 93, 111, 97, 73, 81, 85, 92, 28.28487 + 88, 77, 75, 36, 49, 100, 108, 92, 72, 73, 91, 84, 61, 51, 34, 73, 28.28488 + 118, 111, 91, 100, 110, 100, 97, 102, 88, 104, 60, 0, 104, 112, 111, 93, 28.28489 + 99, 91, 91, 95, 93, 91, 38, 107, 111, 108, 92, 97, 83, 72, 72, 88, 28.28490 + 89, 89, 44, 100, 103, 102, 100, 106, 103, 107, 106, 103, 76, 77, 64, 5, 28.28491 + 69, 104, 81, 87, 88, 77, 87, 87, 81, 77, 73, 49, 69, 119, 103, 123, 28.28492 + 123, 95, 100, 87, 89, 73, 67, 16, 107, 108, 104, 92, 110, 112, 115, 110, 28.28493 + 107, 59, 24, 79, 143, 135, 124, 118, 122, 119, 116, 118, 124, 102, 103, 40, 28.28494 + 103, 132, 120, 108, 116, 108, 106, 107, 108, 93, 51, 83, 153, 143, 154, 131, 28.28495 + 153, 142, 147, 135, 130, 130, 69, 81, 130, 142, 110, 112, 119, 120, 132, 107, 28.28496 + 84, 84, 42, 96, 132, 124, 127, 120, 123, 118, 116, 120, 100, 114, 107, 57, 28.28497 + 119, 124, 123, 127, 119, 119, 123, 112, 111, 108, 110, 57, 136, 143, 136, 132, 28.28498 + 108, 130, 123, 126, 122, 111, 100, 20, 115, 130, 120, 114, 97, 108, 104, 99, 28.28499 + 103, 99, 65, 81, 135, 140, 139, 142, 122, 114, 132, 119, 110, 110, 91, 10, 28.28500 + 132, 143, 118, 128, 127, 136, 138, 103, 116, 120, 106, 14, 146, 150, 159, 136, 28.28501 + 148, 153, 139, 127, 112, 111, 69, 110, 132, 139, 135, 132, 111, 134, 132, 106, 28.28502 + 114, 103, 21, 135, 182, 163, 148, 150, 142, 150, 147, 151, 150, 146, 119, 30, 28.28503 + 93, 128, 97, 104, 114, 108, 112, 107, 110, 103, 100, 56, 81, 148, 115, 155, 28.28504 + 124, 139, 135, 130, 132, 132, 114, 0, 150, 158, 158, 142, 153, 154, 144, 157, 28.28505 + 153, 142, 131, 84, 0, 167, 179, 162, 161, 155, 157, 154, 138, 126, 136, 21, 28.28506 + 142, 138, 122, 118, 155, 151, 128, 132, 140, 123, 64, 89, 154, 167, 166, 127, 28.28507 + 128, 128, 127, 123, 128, 138, 99, 51, 111, 166, 161, 153, 151, 155, 144, 144, 28.28508 + 148, 147, 132, 72, 154, 161, 158, 147, 148, 166, 151, 146, 143, 127, 13, 166, 28.28509 + 169, 162, 150, 155, 147, 153, 155, 150, 155, 134, 120, 25, 138, 124, 130, 100, 28.28510 + 115, 118, 115, 118, 140, 122, 111, 16, 142, 150, 135, 122, 157, 131, 167, 135, 28.28511 + 148, 139, 93, 0, 124, 171, 161, 167, 162, 155, 159, 161, 155, 144, 102, 49, 28.28512 + 110, 138, 139, 147, 148, 158, 148, 140, 138, 147, 122, 51, 97, 182, 179, 173, 28.28513 + 170, 17, 20, 21, 13, 26, 29, 42, 22, 12, 0, 40, 75, 51, 56, 69, 28.28514 + 61, 36, 52, 53, 17, 6, 59, 77, 80, 53, 55, 68, 67, 64, 56, 53, 28.28515 + 48, 25, 0, 73, 81, 49, 69, 38, 37, 42, 45, 57, 26, 24, 41, 64, 28.28516 + 87, 72, 72, 55, 63, 61, 65, 55, 68, 46, 29, 36, 56, 63, 55, 48, 28.28517 + 48, 42, 55, 42, 37, 36, 36, 76, 118, 65, 75, 65, 65, 79, 63, 49, 28.28518 + 48, 33, 12, 67, 91, 53, 79, 63, 68, 83, 75, 48, 40, 42, 4, 87, 28.28519 + 87, 88, 79, 69, 77, 81, 68, 80, 48, 17, 42, 85, 22, 42, 40, 45, 28.28520 + 41, 16, 18, 30, 42, 33, 24, 51, 99, 93, 84, 107, 102, 110, 97, 72, 28.28521 + 53, 56, 0, 91, 99, 111, 95, 85, 81, 79, 77, 80, 77, 73, 40, 44, 28.28522 + 84, 91, 103, 71, 60, 83, 80, 57, 49, 30, 64, 116, 106, 103, 100, 100, 28.28523 + 93, 99, 84, 87, 104, 52, 0, 102, 103, 103, 91, 100, 92, 84, 81, 100, 28.28524 + 95, 46, 72, 96, 118, 103, 115, 91, 89, 97, 103, 67, 88, 49, 71, 97, 28.28525 + 102, 100, 97, 97, 95, 96, 79, 75, 79, 52, 2, 68, 107, 91, 73, 71, 28.28526 + 80, 73, 73, 73, 76, 72, 52, 60, 111, 119, 119, 88, 99, 95, 84, 88, 28.28527 + 75, 77, 14, 102, 106, 99, 84, 89, 79, 99, 97, 115, 59, 25, 75, 142, 28.28528 + 135, 124, 116, 118, 120, 128, 124, 126, 108, 87, 33, 99, 128, 114, 110, 128, 28.28529 + 107, 104, 106, 106, 89, 49, 79, 143, 142, 131, 136, 130, 138, 144, 132, 128, 28.28530 + 130, 71, 45, 122, 136, 107, 116, 118, 130, 124, 96, 88, 79, 34, 96, 126, 28.28531 + 128, 134, 120, 116, 119, 100, 103, 99, 111, 107, 60, 111, 120, 126, 126, 122, 28.28532 + 120, 119, 123, 114, 107, 112, 59, 80, 143, 138, 123, 127, 134, 122, 131, 107, 28.28533 + 111, 104, 17, 114, 130, 115, 93, 96, 110, 106, 102, 99, 102, 87, 80, 130, 28.28534 + 136, 138, 134, 124, 138, 111, 115, 107, 100, 89, 12, 134, 130, 110, 128, 135, 28.28535 + 106, 126, 106, 106, 115, 112, 17, 139, 159, 147, 134, 130, 131, 142, 132, 110, 28.28536 + 115, 64, 108, 126, 150, 132, 131, 108, 131, 107, 108, 116, 104, 22, 140, 173, 28.28537 + 162, 134, 123, 154, 127, 153, 148, 154, 140, 134, 18, 110, 122, 99, 85, 104, 28.28538 + 112, 104, 108, 102, 92, 95, 57, 83, 144, 158, 126, 118, 111, 116, 139, 126, 28.28539 + 120, 87, 28, 140, 158, 139, 146, 148, 144, 154, 144, 147, 143, 124, 81, 0, 28.28540 + 163, 171, 159, 161, 155, 154, 157, 136, 123, 124, 20, 132, 136, 118, 111, 153, 28.28541 + 150, 146, 126, 132, 122, 97, 85, 153, 167, 166, 126, 122, 122, 123, 122, 127, 28.28542 + 135, 95, 37, 140, 162, 158, 171, 150, 143, 127, 144, 147, 151, 136, 81, 87, 28.28543 + 159, 158, 154, 150, 140, 143, 143, 142, 99, 16, 177, 165, 161, 151, 154, 155, 28.28544 + 154, 150, 148, 154, 128, 119, 24, 131, 123, 112, 128, 112, 114, 132, 115, 135, 28.28545 + 126, 115, 17, 139, 130, 173, 158, 155, 163, 159, 132, 148, 123, 89, 1, 100, 28.28546 + 170, 161, 163, 159, 159, 163, 158, 155, 142, 97, 36, 111, 130, 136, 138, 142, 28.28547 + 142, 151, 142, 142, 144, 124, 44, 114, 179, 165, 161, 158, 53, 41, 34, 28, 28.28548 + 28, 28, 24, 28, 13, 4, 41, 55, 52, 49, 51, 60, 53, 60, 55, 20, 28.28549 + 5, 52, 69, 59, 59, 49, 52, 52, 57, 44, 53, 41, 25, 0, 68, 72, 28.28550 + 60, 45, 51, 67, 61, 63, 42, 28, 25, 63, 67, 80, 80, 68, 40, 38, 28.28551 + 41, 45, 46, 37, 41, 45, 40, 37, 42, 53, 57, 56, 52, 44, 37, 34, 28.28552 + 34, 41, 84, 112, 71, 81, 68, 77, 69, 49, 59, 46, 46, 10, 64, 84, 28.28553 + 52, 80, 81, 81, 71, 75, 60, 40, 44, 4, 87, 87, 89, 76, 72, 85, 28.28554 + 77, 81, 81, 36, 16, 36, 36, 17, 16, 41, 32, 41, 18, 16, 18, 20, 28.28555 + 48, 24, 40, 85, 95, 88, 85, 81, 85, 79, 60, 56, 45, 1, 87, 83, 28.28556 + 106, 88, 88, 83, 79, 75, 76, 72, 71, 69, 68, 45, 49, 55, 61, 61, 28.28557 + 71, 81, 65, 61, 33, 77, 111, 95, 95, 87, 97, 97, 96, 97, 100, 103, 28.28558 + 69, 2, 96, 103, 103, 93, 102, 100, 84, 96, 96, 91, 51, 53, 61, 92, 28.28559 + 89, 108, 100, 81, 76, 99, 79, 55, 51, 56, 63, 96, 69, 71, 75, 72, 28.28560 + 75, 73, 72, 79, 76, 21, 75, 99, 72, 71, 67, 77, 72, 69, 79, 72, 28.28561 + 72, 77, 53, 71, 100, 103, 77, 73, 87, 81, 91, 85, 76, 10, 97, 103, 28.28562 + 87, 103, 95, 95, 89, 95, 87, 55, 65, 61, 138, 134, 127, 126, 120, 120, 28.28563 + 119, 120, 120, 106, 100, 29, 102, 124, 114, 102, 107, 112, 102, 103, 106, 92, 28.28564 + 45, 123, 148, 128, 126, 136, 138, 138, 126, 135, 135, 128, 79, 67, 112, 134, 28.28565 + 106, 123, 120, 114, 111, 107, 88, 76, 32, 97, 123, 116, 102, 103, 103, 104, 28.28566 + 102, 104, 108, 111, 107, 64, 71, 122, 126, 126, 123, 115, 114, 122, 110, 108, 28.28567 + 107, 79, 75, 134, 135, 126, 128, 143, 130, 123, 100, 111, 100, 22, 108, 111, 28.28568 + 96, 93, 96, 97, 87, 99, 75, 92, 104, 75, 93, 120, 122, 128, 107, 110, 28.28569 + 106, 104, 107, 115, 83, 14, 124, 144, 150, 128, 134, 132, 100, 130, 114, 106, 28.28570 + 100, 16, 140, 148, 140, 155, 126, 126, 132, 128, 120, 89, 52, 118, 126, 147, 28.28571 + 131, 122, 111, 124, 114, 112, 114, 96, 25, 131, 178, 165, 154, 144, 146, 153, 28.28572 + 151, 147, 143, 140, 124, 20, 102, 91, 88, 85, 79, 95, 91, 91, 96, 92, 28.28573 + 84, 68, 75, 140, 111, 104, 107, 102, 114, 116, 118, 122, 120, 6, 143, 153, 28.28574 + 142, 140, 153, 148, 143, 144, 144, 142, 118, 76, 0, 166, 178, 158, 157, 159, 28.28575 + 155, 155, 159, 118, 135, 4, 128, 128, 116, 107, 150, 150, 150, 124, 127, 118, 28.28576 + 103, 85, 146, 158, 155, 114, 116, 132, 116, 120, 124, 132, 115, 37, 126, 162, 28.28577 + 166, 128, 143, 142, 124, 132, 144, 151, 140, 111, 80, 115, 157, 159, 157, 155, 28.28578 + 153, 140, 142, 130, 17, 171, 166, 158, 147, 150, 154, 157, 155, 151, 153, 118, 28.28579 + 120, 4, 131, 115, 112, 115, 107, 110, 120, 140, 131, 127, 107, 21, 139, 178, 28.28580 + 142, 158, 154, 162, 131, 150, 150, 123, 84, 1, 64, 162, 166, 166, 161, 157, 28.28581 + 157, 158, 155, 128, 93, 32, 112, 135, 132, 138, 135, 138, 138, 140, 138, 139, 28.28582 + 131, 36, 166, 182, 169, 162, 161, 21, 26, 18, 25, 25, 36, 29, 16, 12, 28.28583 + 0, 34, 34, 36, 36, 37, 36, 41, 34, 28, 20, 4, 51, 52, 48, 44, 28.28584 + 45, 44, 44, 53, 40, 41, 25, 24, 4, 61, 64, 63, 63, 60, 53, 61, 28.28585 + 60, 40, 26, 30, 48, 63, 71, 68, 42, 45, 32, 32, 38, 45, 36, 34, 28.28586 + 33, 37, 38, 38, 49, 42, 44, 42, 41, 32, 37, 33, 42, 80, 79, 72, 28.28587 + 60, 52, 57, 61, 46, 45, 46, 46, 9, 61, 84, 73, 56, 52, 68, 77, 28.28588 + 68, 56, 45, 44, 5, 80, 85, 95, 76, 80, 88, 84, 79, 55, 42, 13, 28.28589 + 45, 36, 8, 13, 9, 17, 12, 14, 16, 16, 14, 18, 21, 51, 36, 44, 28.28590 + 48, 48, 48, 51, 56, 61, 48, 37, 4, 80, 85, 88, 84, 80, 56, 76, 28.28591 + 49, 53, 56, 68, 52, 57, 61, 69, 61, 63, 67, 67, 87, 65, 46, 25, 28.28592 + 72, 77, 88, 79, 77, 77, 80, 81, 84, 76, 71, 69, 2, 93, 92, 97, 28.28593 + 91, 88, 85, 87, 87, 84, 79, 76, 77, 83, 68, 65, 69, 71, 68, 81, 28.28594 + 75, 81, 77, 75, 79, 77, 73, 65, 81, 80, 69, 81, 83, 81, 79, 77, 28.28595 + 6, 61, 89, 83, 71, 59, 60, 65, 67, 68, 69, 76, 72, 75, 80, 81, 28.28596 + 83, 81, 81, 84, 87, 87, 77, 64, 21, 89, 93, 89, 84, 79, 73, 83, 28.28597 + 68, 63, 56, 48, 60, 83, 128, 136, 97, 116, 116, 122, 104, 106, 100, 100, 28.28598 + 22, 99, 95, 97, 89, 93, 92, 100, 102, 104, 92, 45, 92, 136, 126, 124, 28.28599 + 114, 116, 116, 111, 103, 92, 93, 79, 65, 107, 118, 114, 108, 106, 106, 107, 28.28600 + 108, 79, 75, 28, 97, 126, 120, 115, 118, 111, 116, 110, 115, 119, 111, 100, 28.28601 + 103, 71, 77, 84, 111, 83, 87, 114, 116, 115, 118, 103, 97, 69, 91, 139, 28.28602 + 130, 127, 126, 96, 99, 112, 100, 80, 36, 97, 114, 100, 89, 84, 83, 77, 28.28603 + 79, 89, 76, 77, 88, 102, 106, 118, 112, 115, 110, 112, 115, 115, 112, 91, 28.28604 + 16, 115, 135, 143, 131, 96, 135, 132, 134, 114, 114, 110, 24, 135, 148, 134, 28.28605 + 118, 140, 139, 136, 135, 114, 111, 61, 119, 120, 118, 111, 122, 107, 106, 114, 28.28606 + 112, 110, 100, 21, 135, 169, 154, 108, 144, 146, 112, 134, 142, 140, 135, 61, 28.28607 + 26, 57, 89, 96, 73, 69, 91, 79, 80, 83, 92, 96, 72, 75, 96, 100, 28.28608 + 97, 103, 107, 110, 108, 112, 112, 116, 2, 134, 148, 147, 143, 142, 142, 140, 28.28609 + 128, 136, 135, 112, 72, 0, 157, 175, 158, 157, 155, 155, 155, 159, 115, 116, 28.28610 + 30, 120, 124, 114, 106, 102, 115, 110, 111, 79, 79, 104, 92, 95, 103, 106, 28.28611 + 124, 126, 124, 126, 123, 130, 127, 102, 33, 73, 138, 136, 111, 115, 138, 135, 28.28612 + 118, 127, 130, 134, 116, 93, 100, 112, 112, 118, 118, 123, 127, 142, 124, 18, 28.28613 + 132, 165, 161, 155, 155, 151, 154, 148, 151, 153, 126, 118, 9, 127, 118, 107, 28.28614 + 106, 106, 122, 123, 123, 124, 122, 112, 26, 131, 175, 136, 154, 104, 150, 148, 28.28615 + 112, 122, 138, 76, 2, 53, 130, 158, 111, 120, 135, 154, 151, 135, 131, 81, 28.28616 + 26, 111, 136, 136, 135, 134, 134, 134, 139, 138, 134, 128, 32, 154, 181, 165, 28.28617 + 154, 153, 8, 8, 10, 8, 8, 8, 10, 8, 2, 0, 9, 10, 10, 10, 28.28618 + 13, 12, 12, 12, 14, 12, 5, 16, 20, 18, 18, 16, 16, 14, 14, 14, 28.28619 + 14, 14, 12, 0, 14, 16, 16, 20, 20, 17, 17, 24, 21, 16, 36, 21, 28.28620 + 37, 42, 20, 18, 32, 24, 21, 25, 21, 21, 18, 21, 18, 18, 21, 22, 28.28621 + 24, 25, 26, 29, 30, 38, 30, 34, 52, 46, 40, 36, 40, 44, 37, 36, 28.28622 + 42, 36, 24, 8, 28, 44, 53, 42, 46, 45, 51, 45, 46, 41, 40, 6, 28.28623 + 73, 84, 83, 81, 69, 67, 75, 65, 40, 38, 10, 57, 20, 6, 12, 8, 28.28624 + 9, 10, 14, 14, 12, 18, 14, 17, 20, 22, 18, 30, 32, 34, 36, 37, 28.28625 + 40, 42, 40, 1, 26, 38, 45, 29, 29, 29, 30, 24, 24, 21, 30, 29, 28.28626 + 21, 22, 30, 30, 32, 24, 59, 61, 60, 38, 24, 44, 52, 51, 49, 49, 28.28627 + 64, 59, 49, 44, 44, 38, 20, 40, 42, 48, 57, 64, 53, 55, 60, 60, 28.28628 + 60, 61, 64, 61, 67, 69, 73, 69, 69, 69, 71, 69, 77, 67, 64, 63, 28.28629 + 77, 68, 64, 59, 76, 60, 55, 53, 77, 53, 13, 10, 59, 46, 46, 49, 28.28630 + 33, 41, 28, 26, 30, 37, 32, 32, 34, 33, 33, 33, 45, 49, 55, 59, 28.28631 + 75, 63, 60, 21, 30, 33, 37, 36, 40, 32, 37, 36, 42, 33, 30, 48, 28.28632 + 77, 68, 81, 84, 79, 76, 81, 80, 79, 73, 69, 21, 71, 77, 79, 83, 28.28633 + 79, 79, 83, 91, 84, 79, 44, 36, 106, 116, 95, 97, 99, 111, 102, 102, 28.28634 + 108, 111, 102, 77, 71, 76, 85, 92, 95, 97, 107, 112, 75, 69, 24, 91, 28.28635 + 114, 124, 120, 103, 111, 112, 111, 99, 99, 97, 88, 85, 93, 100, 100, 99, 28.28636 + 100, 97, 100, 102, 102, 93, 93, 99, 96, 100, 106, 108, 104, 103, 102, 103, 28.28637 + 102, 92, 99, 24, 96, 65, 61, 57, 53, 52, 57, 49, 45, 44, 46, 45, 28.28638 + 48, 65, 48, 49, 51, 57, 53, 77, 81, 75, 76, 18, 51, 126, 123, 71, 28.28639 + 76, 111, 112, 75, 89, 107, 93, 22, 99, 139, 138, 111, 115, 132, 128, 108, 28.28640 + 111, 106, 61, 116, 116, 104, 93, 85, 85, 87, 87, 88, 92, 92, 33, 119, 28.28641 + 147, 132, 56, 60, 53, 59, 65, 57, 63, 29, 77, 59, 14, 12, 30, 22, 28.28642 + 49, 25, 36, 40, 55, 52, 59, 80, 87, 110, 103, 85, 112, 103, 107, 76, 28.28643 + 118, 111, 88, 4, 53, 65, 68, 65, 64, 61, 64, 64, 64, 63, 61, 61, 28.28644 + 0, 83, 165, 166, 163, 163, 163, 161, 158, 108, 134, 36, 92, 116, 89, 96, 28.28645 + 89, 89, 106, 106, 104, 104, 106, 104, 102, 73, 68, 59, 53, 55, 51, 49, 28.28646 + 45, 42, 40, 29, 48, 41, 49, 61, 51, 57, 71, 75, 92, 92, 80, 96, 28.28647 + 93, 104, 99, 118, 119, 116, 99, 119, 124, 111, 24, 68, 99, 119, 100, 110, 28.28648 + 112, 142, 151, 155, 127, 122, 106, 37, 114, 102, 102, 131, 111, 111, 108, 115, 28.28649 + 106, 107, 91, 32, 63, 85, 108, 48, 46, 46, 51, 48, 37, 36, 53, 4, 28.28650 + 28, 28, 32, 34, 37, 38, 40, 103, 124, 134, 79, 25, 106, 126, 136, 131, 28.28651 + 135, 135, 136, 136, 140, 134, 116, 30, 112, 183, 157, 151, 154, 0, 0, 0, 28.28652 + 2, 4, 0, 0, 5, 5, 1, 6, 5, 4, 4, 2, 8, 2, 2, 1, 28.28653 + 9, 6, 0, 12, 1, 1, 0, 6, 1, 0, 1, 0, 0, 0, 1, 2, 28.28654 + 4, 1, 6, 2, 2, 2, 8, 4, 4, 30, 37, 42, 60, 59, 67, 68, 28.28655 + 68, 76, 76, 71, 64, 67, 65, 64, 84, 64, 67, 37, 41, 37, 37, 30, 28.28656 + 30, 28, 20, 24, 18, 18, 13, 14, 13, 13, 12, 14, 14, 16, 14, 17, 28.28657 + 20, 21, 22, 25, 26, 29, 29, 32, 33, 37, 13, 9, 28, 29, 29, 28, 28.28658 + 30, 30, 32, 32, 28, 12, 26, 6, 20, 10, 16, 10, 16, 34, 53, 68, 28.28659 + 72, 59, 61, 75, 79, 88, 79, 72, 59, 53, 45, 46, 18, 37, 2, 16, 28.28660 + 20, 34, 36, 41, 51, 60, 69, 95, 87, 69, 60, 93, 96, 83, 92, 93, 28.28661 + 68, 53, 48, 38, 25, 12, 22, 18, 9, 13, 13, 12, 5, 8, 8, 5, 28.28662 + 4, 2, 4, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.28663 + 2, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 10, 0, 0, 0, 18, 28.28664 + 0, 0, 0, 29, 0, 0, 6, 20, 26, 32, 32, 79, 107, 111, 118, 111, 28.28665 + 106, 79, 91, 110, 108, 96, 107, 103, 96, 81, 60, 56, 28, 46, 24, 2, 28.28666 + 1, 21, 18, 1, 0, 14, 4, 6, 1, 5, 6, 8, 1, 4, 2, 1, 28.28667 + 6, 17, 20, 1, 6, 4, 2, 33, 36, 2, 2, 20, 21, 24, 25, 32, 28.28668 + 26, 55, 20, 20, 30, 22, 20, 22, 30, 22, 20, 22, 30, 25, 24, 24, 28.28669 + 56, 26, 24, 25, 32, 37, 46, 42, 67, 22, 63, 85, 84, 65, 65, 79, 28.28670 + 79, 64, 67, 71, 65, 61, 46, 52, 57, 44, 48, 49, 53, 59, 53, 80, 28.28671 + 80, 77, 72, 81, 79, 60, 56, 72, 57, 45, 41, 72, 42, 60, 29, 52, 28.28672 + 73, 85, 85, 87, 99, 128, 110, 83, 89, 77, 73, 79, 115, 112, 115, 106, 28.28673 + 88, 73, 61, 57, 48, 40, 41, 44, 64, 49, 63, 44, 51, 65, 72, 48, 28.28674 + 49, 38, 73, 73, 77, 84, 81, 77, 71, 81, 80, 79, 76, 63, 114, 87, 28.28675 + 68, 80, 64, 68, 65, 67, 59, 59, 61, 79, 42, 65, 81, 92, 100, 102, 28.28676 + 106, 104, 103, 110, 100, 81, 36, 51, 158, 107, 104, 84, 57, 51, 46, 41, 28.28677 + 26, 29, 24, 17, 36, 29, 18, 16, 37, 36, 33, 17, 38, 40, 10, 8, 28.28678 + 28, 30, 26, 2, 18, 5, 18, 2, 10, 5, 0, 0, 48, 56, 64, 71, 28.28679 + 77, 83, 89, 96, 103, 102, 32, 97, 61, 65, 55, 56, 59, 55, 49, 44, 28.28680 + 48, 37, 37, 72, 88, 95, 116, 120, 124, 127, 124, 116, 114, 93, 30, 120, 28.28681 + 130, 128, 95, 119, 111, 100, 48, 33, 28, 16, 20, 25, 20, 18, 25, 20, 28.28682 + 14, 10, 14, 21, 8, 25, 65, 52, 63, 46, 45, 65, 96, 103, 114, 114, 28.28683 + 111, 96, 9, 97, 45, 46, 71, 55, 40, 36, 34, 46, 25, 20, 32, 52, 28.28684 + 80, 102, 99, 103, 118, 123, 120, 124, 115, 97, 5, 118, 166, 162, 158, 153, 28.28685 + 153, 95, 77, 41, 32, 21, 22, 38, 45, 49, 57, 89, 104, 110, 93, 104, 28.28686 + 114, 115, 29, 111, 173, 96, 89, 65, 107, 97, 87, 76, 64, 69, 57, 36, 28.28687 + 10, 5, 34, 75, 79, 64, 51, 49, 57, 59, 59, 36, 14, 24, 76, 79, 28.28688 + 81, 76, 87, 83, 84, 72, 79, 68, 80, 77, 87, 87, 93, 104, 99, 85, 28.28689 + 92, 81, 42, 38, 44, 72, 91, 108, 95, 80, 92, 89, 95, 83, 84, 92, 28.28690 + 84, 53, 49, 61, 55, 63, 61, 60, 69, 63, 32, 37, 34, 34, 89, 85, 28.28691 + 76, 67, 76, 76, 64, 64, 67, 55, 56, 63, 71, 83, 71, 73, 49, 42, 28.28692 + 29, 17, 28, 18, 10, 13, 20, 8, 6, 9, 25, 5, 4, 5, 34, 18, 28.28693 + 14, 22, 55, 63, 67, 73, 68, 73, 81, 75, 71, 79, 71, 61, 53, 67, 28.28694 + 84, 69, 73, 72, 75, 71, 77, 60, 49, 4, 37, 104, 107, 107, 111, 102, 28.28695 + 96, 89, 88, 97, 88, 55, 81, 95, 107, 96, 97, 92, 77, 88, 59, 51, 28.28696 + 26, 40, 83, 88, 97, 102, 100, 87, 93, 107, 107, 71, 68, 73, 120, 119, 28.28697 + 122, 122, 120, 116, 122, 119, 114, 76, 80, 110, 115, 119, 114, 100, 107, 119, 28.28698 + 103, 104, 103, 107, 91, 22, 51, 108, 115, 84, 96, 104, 114, 87, 100, 99, 28.28699 + 42, 40, 44, 118, 104, 108, 112, 112, 108, 119, 111, 80, 89, 75, 81, 93, 28.28700 + 112, 104, 108, 102, 89, 91, 95, 64, 36, 5, 38, 97, 111, 92, 87, 97, 28.28701 + 87, 85, 83, 64, 36, 0, 48, 103, 132, 99, 100, 99, 96, 110, 114, 111, 28.28702 + 65, 45, 57, 126, 131, 120, 124, 126, 131, 93, 114, 53, 60, 53, 108, 118, 28.28703 + 118, 102, 103, 96, 92, 112, 106, 91, 49, 56, 63, 100, 108, 100, 104, 71, 28.28704 + 72, 36, 33, 26, 26, 38, 40, 48, 52, 48, 53, 53, 53, 63, 67, 65, 28.28705 + 61, 61, 24, 79, 118, 124, 95, 115, 91, 91, 45, 55, 38, 25, 36, 53, 28.28706 + 80, 87, 84, 92, 97, 97, 93, 85, 72, 79, 107, 140, 153, 143, 139, 139, 28.28707 + 130, 130, 130, 131, 72, 71, 104, 139, 135, 142, 136, 132, 127, 134, 128, 97, 28.28708 + 75, 72, 100, 104, 110, 107, 93, 87, 89, 76, 45, 38, 28, 41, 37, 51, 28.28709 + 51, 46, 25, 28, 25, 51, 22, 24, 59, 53, 81, 97, 99, 116, 120, 126, 28.28710 + 120, 131, 118, 80, 77, 99, 123, 134, 138, 136, 140, 143, 142, 139, 148, 123, 28.28711 + 108, 13, 138, 115, 116, 104, 132, 131, 114, 107, 97, 123, 104, 99, 136, 153, 28.28712 + 139, 143, 148, 147, 139, 138, 132, 130, 57, 0, 29, 115, 159, 122, 119, 124, 28.28713 + 124, 120, 91, 136, 115, 48, 0, 116, 142, 140, 138, 131, 89, 38, 80, 73, 28.28714 + 80, 9, 53, 55, 81, 84, 88, 110, 124, 127, 106, 127, 114, 135, 114, 122, 28.28715 + 130, 128, 127, 138, 138, 148, 134, 119, 99, 33, 124, 139, 111, 127, 135, 108, 28.28716 + 107, 103, 120, 108, 73, 91, 80, 124, 131, 138, 134, 140, 144, 143, 146, 71, 28.28717 + 26, 85, 146, 144, 122, 124, 131, 120, 77, 36, 36, 25, 22, 8, 18, 71, 28.28718 + 75, 77, 87, 99, 107, 106, 115, 122, 102, 44, 115, 163, 167, 167, 167, 165, 28.28719 + 166, 165, 161, 123, 102, 5, 130, 175, 171, 166, 167, 171, 167, 166, 157, 115, 28.28720 + 93, 21, 130, 163, 161, 81, 73, 81, 76, 83, 87, 68, 108, 28, 165, 111, 28.28721 + 182, 190, 197, 88, 76, 67, 69, 63, 64, 51, 48, 12, 10, 77, 68, 57, 28.28722 + 46, 63, 61, 53, 49, 46, 63, 17, 91, 92, 95, 89, 84, 89, 89, 100, 28.28723 + 87, 93, 85, 77, 69, 81, 73, 80, 80, 87, 85, 84, 83, 81, 85, 41, 28.28724 + 110, 91, 77, 71, 80, 69, 88, 68, 76, 72, 46, 48, 40, 59, 72, 65, 28.28725 + 68, 55, 52, 53, 60, 68, 44, 40, 75, 84, 79, 84, 91, 77, 83, 80, 28.28726 + 81, 77, 73, 60, 72, 68, 67, 67, 59, 67, 55, 55, 60, 53, 57, 42, 28.28727 + 9, 28, 75, 81, 59, 69, 71, 83, 73, 68, 34, 16, 57, 83, 83, 89, 28.28728 + 77, 85, 87, 99, 89, 79, 85, 71, 38, 68, 89, 102, 96, 72, 84, 83, 28.28729 + 76, 79, 64, 53, 5, 80, 114, 92, 95, 97, 87, 99, 81, 85, 106, 85, 28.28730 + 57, 81, 111, 107, 96, 103, 99, 103, 77, 92, 57, 26, 84, 96, 104, 95, 28.28731 + 97, 93, 100, 93, 106, 102, 107, 102, 93, 84, 84, 84, 84, 85, 84, 84, 28.28732 + 88, 89, 97, 92, 75, 95, 99, 92, 85, 100, 103, 106, 106, 112, 110, 106, 28.28733 + 24, 119, 132, 119, 116, 119, 112, 103, 103, 100, 102, 52, 33, 89, 103, 107, 28.28734 + 106, 114, 112, 115, 115, 108, 99, 87, 69, 80, 112, 120, 110, 112, 111, 104, 28.28735 + 97, 96, 72, 38, 14, 110, 118, 119, 110, 115, 116, 112, 108, 107, 92, 40, 28.28736 + 2, 142, 146, 142, 140, 143, 142, 136, 130, 144, 139, 102, 46, 130, 146, 144, 28.28737 + 136, 136, 126, 134, 126, 122, 84, 60, 110, 132, 118, 114, 111, 128, 128, 122, 28.28738 + 124, 124, 126, 116, 56, 99, 119, 122, 119, 118, 114, 110, 102, 75, 53, 25, 28.28739 + 85, 106, 87, 100, 102, 97, 108, 99, 99, 93, 84, 69, 55, 20, 110, 127, 28.28740 + 118, 118, 111, 119, 128, 110, 122, 104, 85, 110, 84, 106, 112, 120, 111, 124, 28.28741 + 111, 119, 96, 79, 83, 128, 151, 124, 127, 128, 122, 112, 128, 124, 112, 118, 28.28742 + 93, 130, 128, 132, 128, 126, 126, 132, 128, 126, 116, 126, 116, 124, 126, 127, 28.28743 + 115, 126, 120, 122, 111, 103, 97, 92, 130, 124, 126, 128, 136, 142, 136, 142, 28.28744 + 150, 153, 79, 88, 102, 166, 170, 171, 170, 173, 171, 166, 169, 167, 118, 77, 28.28745 + 115, 146, 143, 143, 143, 136, 138, 131, 127, 124, 136, 95, 30, 108, 123, 115, 28.28746 + 104, 110, 111, 110, 130, 128, 103, 106, 108, 92, 120, 123, 128, 115, 124, 123, 28.28747 + 124, 119, 143, 69, 0, 161, 170, 169, 171, 166, 166, 165, 158, 163, 162, 136, 28.28748 + 85, 0, 119, 146, 155, 158, 157, 154, 147, 135, 126, 77, 20, 103, 142, 153, 28.28749 + 154, 153, 150, 153, 150, 142, 143, 81, 102, 142, 153, 148, 159, 158, 154, 147, 28.28750 + 139, 139, 124, 111, 32, 142, 144, 130, 114, 110, 114, 148, 138, 155, 147, 73, 28.28751 + 60, 127, 159, 165, 169, 165, 159, 162, 166, 155, 96, 26, 116, 157, 161, 166, 28.28752 + 166, 162, 162, 154, 135, 140, 114, 71, 71, 143, 177, 174, 170, 173, 173, 171, 28.28753 + 150, 171, 136, 120, 42, 150, 170, 166, 166, 166, 158, 148, 153, 159, 143, 114, 28.28754 + 8, 131, 178, 173, 170, 163, 163, 165, 161, 167, 155, 106, 17, 150, 151, 175, 28.28755 + 171, 167, 159, 161, 170, 158, 96, 122, 26, 173, 131, 187, 187, 190, 107, 104, 28.28756 + 88, 84, 68, 68, 14, 25, 10, 6, 55, 63, 40, 38, 45, 28, 40, 49, 28.28757 + 45, 18, 17, 95, 112, 123, 136, 163, 174, 189, 197, 205, 205, 213, 214, 221, 28.28758 + 212, 222, 222, 218, 202, 193, 147, 112, 107, 107, 75, 91, 89, 92, 88, 81, 28.28759 + 88, 91, 65, 41, 40, 40, 38, 41, 60, 80, 92, 68, 60, 72, 68, 72, 28.28760 + 67, 59, 29, 81, 89, 76, 77, 67, 71, 71, 69, 63, 72, 71, 63, 61, 28.28761 + 80, 81, 80, 69, 67, 59, 60, 67, 69, 51, 45, 12, 85, 81, 93, 92, 28.28762 + 77, 88, 87, 81, 83, 67, 17, 71, 107, 93, 72, 96, 87, 81, 80, 80, 28.28763 + 91, 85, 68, 45, 68, 92, 100, 83, 81, 88, 84, 91, 75, 64, 60, 4, 28.28764 + 85, 107, 104, 95, 83, 91, 85, 100, 85, 96, 92, 42, 75, 99, 99, 102, 28.28765 + 87, 88, 81, 80, 87, 63, 33, 89, 81, 89, 93, 85, 100, 99, 107, 108, 28.28766 + 96, 89, 73, 103, 87, 104, 97, 99, 99, 97, 91, 80, 79, 68, 65, 88, 28.28767 + 108, 102, 103, 108, 107, 103, 107, 107, 106, 106, 100, 22, 122, 131, 97, 96, 28.28768 + 97, 92, 93, 89, 99, 97, 52, 34, 87, 110, 110, 103, 100, 96, 102, 103, 28.28769 + 112, 100, 92, 52, 73, 108, 100, 104, 114, 112, 97, 88, 95, 77, 65, 22, 28.28770 + 108, 112, 111, 110, 110, 103, 103, 103, 96, 96, 53, 0, 123, 140, 142, 143, 28.28771 + 139, 140, 143, 135, 134, 138, 116, 56, 139, 136, 135, 122, 115, 118, 108, 115, 28.28772 + 115, 123, 107, 128, 116, 110, 114, 103, 112, 89, 93, 92, 97, 79, 77, 64, 28.28773 + 122, 144, 118, 120, 119, 124, 115, 110, 112, 67, 24, 95, 103, 92, 104, 97, 28.28774 + 91, 103, 97, 92, 93, 79, 73, 65, 26, 106, 139, 115, 118, 130, 118, 119, 28.28775 + 116, 106, 114, 68, 75, 138, 134, 132, 140, 136, 130, 126, 118, 106, 87, 80, 28.28776 + 140, 147, 120, 122, 123, 118, 112, 123, 134, 130, 136, 132, 140, 139, 148, 143, 28.28777 + 143, 143, 165, 143, 148, 142, 147, 132, 146, 146, 148, 143, 140, 139, 140, 140, 28.28778 + 126, 107, 76, 134, 138, 138, 140, 138, 135, 122, 135, 135, 127, 95, 69, 135, 28.28779 + 175, 169, 165, 163, 170, 166, 174, 162, 143, 134, 91, 118, 140, 146, 135, 135, 28.28780 + 139, 132, 131, 131, 139, 128, 91, 29, 99, 132, 118, 143, 114, 140, 122, 139, 28.28781 + 142, 134, 114, 97, 115, 144, 146, 157, 154, 151, 143, 157, 146, 138, 76, 18, 28.28782 + 155, 169, 163, 165, 166, 165, 162, 162, 157, 167, 140, 76, 0, 136, 154, 143, 28.28783 + 146, 143, 130, 144, 147, 131, 67, 29, 108, 142, 158, 155, 142, 139, 148, 134, 28.28784 + 134, 108, 88, 119, 163, 155, 159, 148, 135, 142, 146, 143, 136, 108, 99, 25, 28.28785 + 139, 143, 142, 119, 120, 138, 144, 142, 148, 142, 81, 95, 151, 166, 161, 158, 28.28786 + 161, 157, 157, 148, 158, 95, 29, 131, 161, 155, 155, 151, 146, 146, 143, 147, 28.28787 + 157, 139, 76, 60, 157, 169, 170, 177, 169, 147, 146, 165, 144, 150, 124, 46, 28.28788 + 155, 165, 157, 150, 154, 148, 155, 150, 154, 127, 106, 6, 135, 170, 169, 173, 28.28789 + 169, 165, 165, 173, 163, 157, 120, 16, 134, 153, 153, 175, 173, 174, 171, 173, 28.28790 + 166, 114, 118, 21, 174, 190, 187, 185, 187, 73, 52, 68, 60, 40, 22, 28, 28.28791 + 46, 10, 13, 44, 57, 44, 41, 28, 24, 26, 30, 38, 61, 76, 110, 204, 28.28792 + 216, 228, 230, 230, 232, 234, 234, 238, 241, 244, 242, 241, 238, 236, 236, 233, 28.28793 + 229, 222, 224, 189, 139, 122, 110, 140, 159, 191, 165, 135, 92, 67, 38, 40, 28.28794 + 40, 42, 41, 84, 96, 84, 81, 67, 80, 85, 87, 69, 80, 68, 73, 72, 28.28795 + 73, 52, 75, 69, 77, 69, 71, 63, 63, 64, 79, 97, 108, 91, 95, 91, 28.28796 + 93, 89, 75, 59, 51, 46, 12, 93, 85, 91, 88, 89, 77, 77, 71, 69, 28.28797 + 64, 26, 77, 85, 96, 84, 80, 87, 75, 81, 91, 92, 77, 63, 37, 63, 28.28798 + 95, 107, 87, 80, 87, 91, 84, 77, 61, 48, 5, 73, 99, 97, 95, 92, 28.28799 + 89, 87, 69, 104, 104, 83, 49, 80, 100, 97, 89, 87, 85, 75, 85, 89, 28.28800 + 67, 46, 55, 84, 87, 95, 104, 111, 91, 92, 96, 83, 85, 65, 93, 104, 28.28801 + 85, 102, 97, 100, 84, 92, 92, 91, 63, 60, 96, 104, 99, 102, 95, 100, 28.28802 + 102, 79, 102, 103, 65, 68, 32, 79, 134, 99, 92, 99, 81, 89, 92, 97, 28.28803 + 95, 56, 32, 87, 104, 106, 92, 95, 96, 95, 97, 111, 99, 85, 49, 79, 28.28804 + 102, 96, 85, 115, 119, 97, 89, 100, 65, 65, 21, 83, 120, 108, 107, 110, 28.28805 + 99, 112, 111, 95, 88, 45, 6, 79, 139, 132, 123, 119, 120, 126, 128, 119, 28.28806 + 116, 122, 118, 123, 136, 138, 131, 120, 132, 115, 123, 104, 111, 100, 111, 102, 28.28807 + 112, 111, 107, 104, 110, 111, 110, 104, 108, 104, 107, 112, 123, 132, 103, 110, 28.28808 + 111, 136, 112, 107, 61, 21, 84, 96, 92, 99, 104, 106, 100, 100, 96, 88, 28.28809 + 79, 67, 59, 22, 103, 123, 112, 122, 130, 130, 130, 126, 116, 114, 61, 120, 28.28810 + 147, 142, 134, 126, 126, 123, 118, 119, 95, 87, 88, 123, 140, 112, 124, 120, 28.28811 + 116, 122, 150, 212, 214, 208, 218, 228, 230, 220, 226, 236, 238, 236, 233, 236, 28.28812 + 248, 233, 234, 232, 248, 226, 216, 220, 249, 226, 179, 132, 107, 81, 131, 158, 28.28813 + 169, 166, 162, 163, 153, 150, 146, 131, 96, 87, 150, 170, 165, 163, 169, 169, 28.28814 + 177, 173, 142, 158, 128, 100, 103, 143, 139, 135, 131, 136, 134, 134, 134, 139, 28.28815 + 126, 77, 21, 106, 148, 144, 153, 127, 122, 139, 136, 120, 126, 114, 65, 130, 28.28816 + 143, 144, 148, 148, 147, 128, 148, 148, 140, 65, 20, 96, 166, 163, 159, 157, 28.28817 + 155, 153, 154, 155, 163, 139, 75, 0, 131, 128, 135, 122, 148, 136, 132, 134, 28.28818 + 142, 91, 33, 118, 143, 147, 148, 144, 143, 142, 126, 128, 110, 68, 116, 162, 28.28819 + 155, 147, 138, 148, 139, 138, 127, 118, 115, 100, 28, 130, 143, 142, 144, 151, 28.28820 + 154, 140, 144, 143, 138, 67, 69, 159, 163, 163, 151, 151, 158, 161, 159, 159, 28.28821 + 93, 32, 132, 154, 153, 151, 147, 144, 142, 142, 142, 150, 138, 81, 57, 150, 28.28822 + 167, 170, 179, 169, 147, 148, 161, 140, 132, 126, 59, 147, 169, 155, 153, 144, 28.28823 + 148, 154, 153, 155, 126, 103, 6, 138, 171, 170, 161, 163, 169, 167, 170, 157, 28.28824 + 126, 116, 13, 136, 124, 147, 173, 166, 170, 166, 159, 161, 150, 127, 24, 171, 28.28825 + 143, 179, 171, 169, 24, 25, 36, 25, 36, 14, 46, 37, 10, 14, 49, 57, 28.28826 + 48, 26, 21, 22, 24, 71, 89, 150, 195, 218, 234, 242, 240, 241, 238, 238, 28.28827 + 234, 238, 244, 245, 244, 241, 240, 238, 234, 228, 232, 230, 230, 224, 224, 217, 28.28828 + 224, 210, 202, 212, 206, 189, 122, 92, 65, 37, 38, 46, 53, 57, 114, 186, 28.28829 + 195, 189, 191, 199, 205, 206, 204, 199, 198, 195, 195, 130, 103, 93, 89, 91, 28.28830 + 79, 76, 87, 88, 132, 171, 201, 206, 199, 201, 194, 132, 92, 76, 42, 52, 28.28831 + 37, 13, 60, 84, 77, 73, 72, 71, 63, 73, 77, 65, 29, 52, 84, 96, 28.28832 + 77, 81, 80, 76, 77, 81, 89, 73, 64, 36, 71, 84, 100, 89, 77, 84, 28.28833 + 88, 83, 77, 60, 51, 6, 65, 103, 107, 102, 92, 102, 76, 91, 95, 93, 28.28834 + 83, 40, 80, 91, 100, 81, 81, 91, 80, 96, 83, 65, 44, 49, 99, 104, 28.28835 + 83, 88, 89, 100, 88, 92, 88, 80, 59, 100, 103, 93, 92, 89, 87, 91, 28.28836 + 110, 100, 89, 81, 57, 100, 103, 108, 91, 100, 100, 96, 100, 92, 100, 103, 28.28837 + 95, 34, 79, 131, 103, 93, 88, 76, 81, 80, 97, 96, 56, 28, 87, 103, 28.28838 + 97, 87, 87, 87, 88, 92, 104, 92, 79, 52, 69, 97, 93, 85, 104, 91, 28.28839 + 84, 89, 96, 68, 37, 8, 83, 123, 100, 99, 107, 111, 106, 100, 99, 85, 28.28840 + 45, 4, 124, 131, 126, 123, 130, 127, 122, 124, 154, 194, 205, 210, 218, 222, 28.28841 + 229, 232, 236, 237, 250, 250, 249, 242, 244, 229, 238, 242, 240, 237, 233, 233, 28.28842 + 230, 230, 210, 212, 195, 214, 206, 234, 199, 191, 186, 186, 206, 161, 116, 65, 28.28843 + 28, 91, 84, 99, 104, 97, 96, 104, 85, 89, 63, 75, 57, 51, 16, 102, 28.28844 + 131, 118, 123, 132, 132, 131, 118, 104, 116, 48, 127, 146, 138, 123, 123, 128, 28.28845 + 131, 126, 128, 102, 87, 60, 119, 139, 110, 115, 115, 116, 115, 154, 209, 213, 28.28846 + 212, 221, 222, 226, 225, 222, 228, 230, 232, 232, 233, 232, 230, 230, 229, 222, 28.28847 + 224, 220, 220, 220, 213, 165, 122, 97, 33, 124, 150, 155, 157, 157, 157, 166, 28.28848 + 165, 140, 136, 99, 96, 124, 170, 163, 178, 174, 158, 157, 134, 142, 143, 134, 28.28849 + 96, 93, 146, 142, 131, 136, 136, 135, 134, 131, 124, 123, 99, 10, 110, 150, 28.28850 + 126, 146, 122, 132, 131, 153, 116, 115, 112, 75, 111, 146, 148, 153, 155, 154, 28.28851 + 153, 150, 132, 134, 65, 1, 99, 167, 157, 153, 148, 153, 162, 161, 163, 166, 28.28852 + 146, 73, 1, 119, 139, 143, 126, 158, 132, 134, 138, 116, 84, 20, 111, 154, 28.28853 + 153, 144, 135, 134, 143, 130, 130, 95, 72, 110, 163, 150, 151, 150, 144, 142, 28.28854 + 132, 139, 143, 111, 99, 36, 128, 140, 147, 148, 142, 143, 144, 148, 138, 140, 28.28855 + 71, 76, 155, 157, 154, 153, 158, 167, 162, 158, 161, 99, 42, 124, 159, 154, 28.28856 + 150, 147, 143, 143, 131, 136, 139, 126, 77, 8, 154, 167, 174, 178, 148, 150, 28.28857 + 151, 143, 146, 136, 131, 64, 140, 169, 134, 161, 131, 155, 155, 151, 157, 116, 28.28858 + 100, 8, 128, 171, 170, 173, 167, 169, 166, 170, 159, 126, 104, 12, 135, 146, 28.28859 + 146, 136, 144, 144, 143, 139, 157, 122, 131, 32, 174, 140, 174, 181, 169, 17, 28.28860 + 16, 18, 28, 18, 14, 45, 33, 10, 16, 67, 51, 28, 24, 32, 51, 75, 28.28861 + 171, 233, 241, 242, 245, 240, 238, 238, 237, 216, 185, 171, 175, 178, 169, 153, 28.28862 + 139, 132, 127, 116, 111, 118, 123, 136, 187, 208, 221, 220, 214, 210, 197, 199, 28.28863 + 183, 131, 91, 56, 34, 40, 34, 55, 108, 142, 208, 205, 218, 206, 218, 221, 28.28864 + 224, 221, 232, 228, 232, 229, 228, 224, 230, 228, 225, 218, 208, 217, 220, 213, 28.28865 + 221, 217, 202, 198, 189, 191, 132, 91, 69, 38, 51, 40, 16, 60, 84, 65, 28.28866 + 64, 93, 77, 79, 77, 68, 63, 30, 30, 80, 88, 87, 84, 81, 89, 89, 28.28867 + 92, 91, 75, 64, 34, 63, 106, 110, 80, 85, 85, 89, 81, 76, 60, 48, 28.28868 + 9, 81, 104, 96, 92, 85, 100, 83, 87, 96, 83, 87, 40, 84, 88, 95, 28.28869 + 87, 83, 93, 87, 91, 84, 65, 44, 38, 97, 87, 84, 88, 97, 87, 97, 28.28870 + 92, 80, 73, 55, 89, 103, 88, 84, 85, 96, 95, 91, 92, 85, 63, 57, 28.28871 + 100, 107, 116, 104, 102, 85, 106, 100, 88, 102, 100, 96, 37, 81, 127, 106, 28.28872 + 89, 87, 75, 77, 89, 100, 95, 57, 28, 93, 97, 93, 88, 89, 84, 84, 28.28873 + 92, 100, 89, 84, 52, 77, 93, 91, 80, 77, 114, 110, 88, 92, 71, 37, 28.28874 + 17, 92, 123, 107, 107, 107, 100, 99, 85, 99, 104, 42, 4, 139, 139, 126, 28.28875 + 124, 131, 119, 131, 197, 202, 214, 213, 213, 220, 232, 232, 233, 237, 241, 249, 28.28876 + 250, 250, 248, 246, 246, 232, 242, 245, 237, 232, 236, 240, 236, 228, 233, 225, 28.28877 + 221, 214, 224, 216, 209, 195, 220, 206, 173, 110, 64, 28, 88, 81, 97, 100, 28.28878 + 95, 100, 93, 92, 89, 65, 72, 55, 46, 13, 110, 128, 118, 127, 124, 132, 28.28879 + 132, 124, 104, 107, 42, 126, 140, 124, 132, 134, 134, 139, 135, 132, 118, 88, 28.28880 + 88, 118, 144, 115, 120, 124, 116, 112, 131, 154, 201, 210, 216, 217, 213, 220, 28.28881 + 212, 216, 221, 224, 226, 230, 230, 230, 225, 222, 225, 220, 213, 210, 214, 193, 28.28882 + 132, 118, 67, 45, 132, 151, 142, 154, 154, 158, 158, 163, 142, 142, 100, 92, 28.28883 + 127, 165, 157, 153, 134, 135, 138, 128, 135, 139, 147, 114, 91, 143, 142, 138, 28.28884 + 130, 134, 136, 131, 130, 131, 138, 96, 24, 131, 126, 144, 124, 135, 140, 144, 28.28885 + 132, 132, 124, 107, 73, 112, 153, 142, 153, 147, 144, 142, 140, 146, 143, 60, 28.28886 + 2, 162, 161, 155, 158, 161, 159, 159, 166, 163, 162, 144, 104, 2, 120, 153, 28.28887 + 136, 161, 142, 122, 136, 127, 122, 77, 14, 110, 153, 153, 150, 140, 147, 146, 28.28888 + 136, 123, 103, 69, 118, 163, 143, 143, 157, 146, 142, 142, 142, 128, 120, 107, 28.28889 + 42, 136, 153, 151, 155, 158, 150, 143, 146, 140, 151, 77, 88, 150, 157, 147, 28.28890 + 159, 166, 165, 159, 155, 153, 107, 38, 136, 158, 157, 150, 146, 144, 147, 130, 28.28891 + 140, 144, 144, 81, 13, 151, 166, 154, 151, 148, 159, 162, 159, 159, 140, 131, 28.28892 + 71, 126, 170, 159, 170, 131, 142, 154, 157, 157, 134, 110, 12, 138, 173, 170, 28.28893 + 167, 166, 161, 163, 166, 166, 147, 116, 9, 150, 140, 138, 134, 130, 132, 132, 28.28894 + 132, 153, 118, 123, 26, 173, 143, 173, 169, 161, 56, 22, 16, 16, 14, 13, 28.28895 + 49, 21, 13, 9, 68, 55, 28, 37, 64, 110, 221, 245, 242, 240, 242, 242, 28.28896 + 237, 226, 194, 159, 124, 112, 107, 110, 108, 108, 107, 106, 103, 106, 103, 103, 28.28897 + 102, 102, 99, 102, 115, 124, 151, 185, 190, 197, 185, 136, 108, 71, 32, 33, 28.28898 + 36, 41, 57, 122, 150, 230, 237, 202, 221, 214, 228, 229, 234, 232, 228, 226, 28.28899 + 234, 238, 236, 230, 230, 224, 221, 226, 221, 217, 216, 214, 220, 210, 202, 205, 28.28900 + 195, 114, 75, 59, 40, 48, 40, 18, 84, 81, 77, 73, 84, 71, 79, 75, 28.28901 + 81, 81, 61, 22, 76, 87, 99, 99, 99, 92, 92, 85, 85, 71, 63, 36, 28.28902 + 60, 93, 99, 89, 85, 88, 95, 84, 77, 77, 51, 8, 73, 102, 96, 102, 28.28903 + 93, 100, 97, 100, 99, 72, 69, 30, 80, 85, 102, 80, 103, 88, 88, 81, 28.28904 + 85, 76, 65, 38, 91, 88, 87, 84, 84, 88, 89, 89, 79, 63, 52, 84, 28.28905 + 95, 83, 81, 89, 97, 88, 88, 85, 80, 53, 53, 91, 100, 107, 107, 97, 28.28906 + 85, 100, 91, 100, 83, 102, 91, 40, 59, 84, 127, 104, 85, 81, 76, 85, 28.28907 + 102, 89, 57, 33, 80, 92, 91, 79, 81, 79, 77, 100, 103, 99, 79, 48, 28.28908 + 65, 85, 85, 77, 75, 111, 87, 88, 89, 73, 53, 20, 96, 108, 100, 111, 28.28909 + 107, 110, 107, 97, 102, 89, 48, 1, 111, 136, 124, 124, 126, 119, 186, 201, 28.28910 + 206, 212, 216, 221, 220, 226, 230, 236, 234, 238, 246, 249, 248, 249, 250, 248, 28.28911 + 244, 236, 245, 241, 240, 241, 230, 230, 232, 236, 228, 226, 217, 213, 210, 206, 28.28912 + 202, 208, 163, 142, 76, 65, 28, 88, 88, 92, 104, 99, 95, 89, 84, 88, 28.28913 + 67, 68, 63, 55, 17, 81, 136, 119, 128, 122, 124, 130, 124, 119, 99, 51, 28.28914 + 123, 132, 138, 143, 144, 155, 150, 147, 140, 136, 116, 103, 127, 148, 122, 120, 28.28915 + 104, 106, 119, 110, 119, 126, 132, 131, 130, 122, 119, 115, 119, 116, 116, 116, 28.28916 + 120, 126, 126, 123, 123, 126, 120, 119, 118, 116, 118, 104, 103, 65, 68, 131, 28.28917 + 148, 139, 140, 157, 153, 154, 154, 143, 136, 104, 99, 122, 163, 167, 148, 151, 28.28918 + 167, 154, 155, 161, 120, 131, 134, 80, 131, 148, 140, 131, 135, 131, 134, 139, 28.28919 + 131, 134, 87, 22, 103, 136, 130, 127, 128, 130, 126, 131, 138, 124, 104, 72, 28.28920 + 104, 151, 127, 157, 161, 150, 150, 146, 148, 127, 76, 16, 159, 166, 159, 163, 28.28921 + 158, 161, 159, 166, 162, 161, 144, 80, 5, 131, 153, 144, 146, 130, 131, 118, 28.28922 + 140, 99, 71, 32, 114, 136, 158, 139, 144, 143, 136, 139, 126, 115, 73, 122, 28.28923 + 161, 150, 147, 148, 147, 136, 138, 154, 131, 108, 107, 30, 140, 147, 151, 136, 28.28924 + 147, 147, 140, 144, 136, 140, 69, 124, 153, 143, 151, 162, 161, 157, 161, 159, 28.28925 + 154, 110, 53, 104, 134, 155, 153, 150, 144, 150, 147, 134, 136, 144, 79, 48, 28.28926 + 143, 167, 154, 157, 157, 161, 159, 159, 159, 140, 135, 75, 134, 170, 157, 139, 28.28927 + 132, 136, 153, 157, 157, 132, 103, 9, 143, 170, 171, 170, 165, 162, 169, 170, 28.28928 + 166, 146, 122, 9, 126, 131, 130, 127, 118, 116, 119, 130, 139, 126, 116, 18, 28.28929 + 158, 181, 169, 165, 173, 95, 34, 29, 28, 29, 36, 40, 33, 12, 21, 49, 28.28930 + 26, 38, 69, 155, 232, 246, 241, 241, 233, 225, 205, 178, 132, 115, 108, 110, 28.28931 + 110, 110, 110, 108, 110, 115, 107, 91, 73, 64, 71, 81, 96, 130, 112, 100, 28.28932 + 99, 95, 104, 106, 103, 103, 99, 92, 49, 33, 33, 36, 32, 55, 104, 127, 28.28933 + 182, 191, 194, 162, 124, 116, 122, 128, 127, 124, 128, 140, 169, 199, 208, 214, 28.28934 + 220, 224, 222, 213, 205, 204, 210, 208, 202, 187, 139, 114, 88, 72, 37, 34, 28.28935 + 45, 34, 18, 56, 79, 77, 73, 73, 85, 84, 75, 76, 84, 48, 25, 64, 28.28936 + 87, 83, 85, 91, 83, 85, 87, 84, 67, 64, 30, 57, 85, 102, 104, 106, 28.28937 + 99, 99, 84, 79, 65, 46, 6, 67, 96, 95, 96, 88, 100, 92, 93, 88, 28.28938 + 84, 52, 26, 80, 88, 97, 79, 89, 89, 92, 84, 80, 84, 59, 38, 61, 28.28939 + 95, 88, 95, 88, 88, 88, 84, 77, 59, 45, 75, 103, 88, 84, 89, 92, 28.28940 + 92, 89, 89, 83, 53, 48, 95, 95, 99, 95, 96, 96, 102, 99, 100, 80, 28.28941 + 68, 81, 46, 52, 85, 104, 116, 95, 81, 73, 89, 93, 92, 63, 28, 77, 28.28942 + 97, 87, 87, 77, 79, 95, 122, 93, 91, 75, 34, 76, 91, 73, 71, 77, 28.28943 + 76, 83, 83, 81, 65, 55, 22, 68, 122, 112, 114, 106, 95, 97, 108, 97, 28.28944 + 95, 42, 8, 83, 134, 124, 124, 132, 118, 116, 158, 198, 206, 202, 183, 139, 28.28945 + 128, 126, 123, 127, 123, 115, 110, 114, 115, 116, 118, 116, 112, 110, 112, 115, 28.28946 + 114, 112, 107, 108, 116, 120, 118, 115, 108, 104, 108, 88, 83, 81, 79, 69, 28.28947 + 34, 24, 85, 95, 97, 93, 96, 93, 87, 88, 87, 61, 63, 57, 46, 14, 28.28948 + 100, 118, 122, 118, 124, 128, 116, 122, 112, 88, 53, 126, 136, 153, 163, 190, 28.28949 + 197, 206, 191, 186, 169, 147, 136, 123, 146, 114, 124, 111, 99, 104, 108, 122, 28.28950 + 110, 100, 103, 107, 107, 106, 106, 106, 104, 106, 106, 106, 104, 106, 110, 108, 28.28951 + 107, 107, 111, 108, 106, 110, 111, 46, 44, 60, 131, 144, 140, 148, 146, 147, 28.28952 + 150, 159, 140, 135, 116, 83, 95, 146, 159, 144, 131, 151, 166, 161, 136, 135, 28.28953 + 135, 123, 91, 114, 139, 142, 135, 136, 134, 132, 131, 131, 128, 68, 18, 102, 28.28954 + 143, 136, 120, 135, 130, 126, 131, 138, 120, 104, 52, 134, 147, 143, 136, 158, 28.28955 + 161, 148, 158, 146, 124, 63, 14, 96, 159, 153, 162, 163, 155, 161, 162, 162, 28.28956 + 161, 140, 76, 5, 122, 130, 154, 146, 118, 110, 126, 96, 93, 80, 34, 108, 28.28957 + 136, 153, 146, 151, 142, 138, 131, 134, 99, 48, 144, 162, 153, 157, 157, 140, 28.28958 + 142, 146, 142, 126, 110, 102, 40, 136, 148, 134, 151, 144, 140, 142, 144, 132, 28.28959 + 122, 59, 93, 161, 165, 167, 151, 140, 159, 161, 170, 155, 99, 56, 87, 134, 28.28960 + 158, 151, 150, 148, 148, 130, 128, 139, 139, 88, 40, 140, 166, 158, 159, 162, 28.28961 + 150, 150, 159, 158, 143, 138, 80, 104, 166, 161, 128, 130, 140, 154, 157, 157, 28.28962 + 134, 103, 12, 134, 171, 169, 167, 163, 167, 166, 166, 165, 136, 124, 8, 134, 28.28963 + 131, 124, 120, 118, 116, 112, 127, 147, 135, 115, 24, 166, 183, 169, 158, 173, 28.28964 + 71, 73, 53, 61, 45, 56, 28, 26, 12, 24, 25, 36, 85, 198, 240, 244, 28.28965 + 241, 242, 242, 199, 153, 119, 110, 110, 112, 114, 118, 108, 124, 120, 104, 72, 28.28966 + 38, 20, 20, 17, 24, 17, 21, 25, 49, 73, 122, 118, 99, 102, 95, 95, 28.28967 + 91, 102, 87, 29, 28, 29, 33, 33, 56, 76, 100, 97, 115, 102, 107, 91, 28.28968 + 85, 84, 95, 88, 92, 88, 100, 95, 97, 106, 106, 110, 104, 106, 106, 102, 28.28969 + 99, 102, 107, 108, 95, 92, 83, 69, 33, 36, 41, 42, 34, 21, 46, 75, 28.28970 + 83, 75, 88, 77, 83, 83, 80, 76, 51, 28, 53, 83, 81, 81, 76, 80, 28.28971 + 85, 88, 80, 61, 60, 24, 61, 72, 87, 91, 88, 84, 81, 85, 71, 69, 28.28972 + 49, 8, 67, 89, 102, 96, 97, 92, 93, 95, 85, 81, 65, 26, 73, 83, 28.28973 + 97, 97, 84, 89, 79, 87, 65, 63, 53, 44, 53, 52, 69, 67, 63, 65, 28.28974 + 68, 69, 76, 72, 45, 83, 100, 84, 79, 89, 89, 88, 89, 88, 85, 61, 28.28975 + 42, 93, 92, 92, 88, 85, 91, 88, 93, 92, 93, 92, 91, 69, 52, 89, 28.28976 + 104, 96, 77, 71, 73, 92, 88, 89, 64, 25, 87, 103, 92, 85, 76, 75, 28.28977 + 95, 111, 93, 87, 75, 37, 67, 84, 73, 71, 64, 67, 68, 75, 67, 63, 28.28978 + 44, 22, 65, 119, 96, 69, 88, 103, 104, 87, 93, 93, 40, 6, 120, 126, 28.28979 + 123, 120, 123, 120, 124, 124, 124, 123, 120, 114, 114, 111, 111, 110, 110, 106, 28.28980 + 104, 102, 102, 102, 103, 103, 102, 97, 97, 96, 96, 95, 96, 88, 93, 92, 28.28981 + 92, 92, 92, 87, 87, 87, 83, 76, 60, 57, 33, 24, 32, 83, 80, 93, 28.28982 + 89, 77, 63, 67, 56, 45, 60, 57, 61, 48, 8, 103, 138, 124, 122, 120, 28.28983 + 120, 123, 116, 110, 57, 83, 136, 150, 194, 213, 221, 221, 212, 208, 213, 213, 28.28984 + 209, 186, 163, 144, 119, 95, 96, 102, 87, 97, 88, 100, 100, 97, 110, 118, 28.28985 + 112, 112, 112, 111, 110, 110, 114, 115, 115, 115, 114, 112, 115, 115, 114, 118, 28.28986 + 96, 41, 51, 46, 21, 123, 134, 147, 134, 144, 130, 126, 122, 146, 126, 112, 28.28987 + 85, 106, 126, 136, 130, 153, 138, 139, 126, 123, 120, 119, 132, 93, 103, 124, 28.28988 + 146, 144, 142, 134, 143, 144, 131, 127, 103, 13, 111, 146, 146, 140, 134, 140, 28.28989 + 131, 136, 146, 103, 104, 53, 99, 146, 146, 150, 143, 120, 126, 135, 142, 136, 28.28990 + 61, 6, 100, 163, 155, 158, 157, 157, 161, 163, 159, 157, 154, 71, 6, 114, 28.28991 + 143, 135, 112, 110, 99, 93, 114, 97, 79, 33, 111, 147, 151, 155, 138, 136, 28.28992 + 139, 135, 138, 107, 57, 104, 159, 148, 147, 142, 140, 144, 139, 142, 140, 107, 28.28993 + 102, 44, 140, 150, 144, 140, 142, 140, 139, 140, 136, 81, 57, 131, 143, 169, 28.28994 + 154, 148, 144, 150, 161, 153, 159, 93, 75, 80, 140, 147, 146, 157, 148, 144, 28.28995 + 134, 130, 130, 131, 76, 14, 143, 165, 159, 151, 157, 157, 150, 147, 150, 150, 28.28996 + 135, 107, 104, 159, 153, 150, 136, 144, 153, 154, 154, 111, 100, 13, 139, 171, 28.28997 + 166, 165, 161, 162, 162, 166, 163, 155, 118, 8, 127, 123, 115, 124, 112, 118, 28.28998 + 114, 127, 143, 126, 118, 40, 170, 153, 173, 174, 189, 12, 12, 14, 13, 12, 28.28999 + 13, 13, 10, 10, 34, 32, 84, 216, 245, 242, 244, 241, 245, 206, 139, 112, 28.29000 + 114, 115, 120, 122, 118, 122, 127, 119, 81, 37, 16, 13, 12, 13, 14, 18, 28.29001 + 18, 18, 21, 18, 37, 69, 108, 155, 118, 100, 99, 97, 102, 83, 29, 25, 28.29002 + 25, 30, 32, 44, 75, 73, 73, 68, 71, 87, 89, 91, 91, 92, 93, 95, 28.29003 + 92, 93, 93, 95, 96, 95, 95, 95, 92, 92, 91, 87, 87, 91, 88, 84, 28.29004 + 81, 56, 29, 32, 28, 41, 41, 37, 21, 30, 72, 73, 83, 71, 48, 59, 28.29005 + 52, 42, 40, 42, 49, 32, 46, 63, 75, 73, 72, 72, 69, 75, 61, 60, 28.29006 + 22, 61, 67, 88, 92, 89, 85, 81, 69, 67, 64, 45, 12, 69, 73, 75, 28.29007 + 75, 75, 75, 75, 76, 79, 67, 61, 26, 69, 79, 92, 83, 63, 75, 72, 28.29008 + 63, 63, 71, 64, 60, 64, 76, 60, 80, 72, 75, 65, 75, 75, 51, 45, 28.29009 + 68, 81, 91, 76, 81, 84, 85, 79, 84, 80, 60, 41, 95, 92, 92, 83, 28.29010 + 87, 85, 87, 81, 84, 80, 88, 77, 80, 52, 64, 71, 72, 72, 73, 80, 28.29011 + 81, 87, 87, 65, 22, 91, 85, 93, 83, 76, 75, 72, 77, 83, 81, 67, 28.29012 + 51, 64, 77, 63, 56, 60, 60, 61, 61, 63, 61, 32, 24, 49, 93, 100, 28.29013 + 75, 88, 99, 96, 92, 97, 104, 37, 2, 112, 130, 124, 122, 118, 118, 120, 28.29014 + 115, 112, 103, 106, 102, 88, 96, 81, 87, 93, 84, 118, 115, 112, 115, 114, 28.29015 + 114, 114, 112, 111, 110, 106, 110, 107, 103, 100, 106, 102, 102, 106, 103, 81, 28.29016 + 49, 32, 28, 24, 24, 21, 16, 36, 32, 44, 46, 41, 40, 40, 41, 40, 28.29017 + 44, 40, 48, 45, 41, 8, 73, 126, 128, 128, 126, 132, 126, 114, 107, 49, 28.29018 + 95, 142, 183, 222, 222, 214, 225, 213, 212, 221, 217, 205, 199, 175, 118, 103, 28.29019 + 112, 102, 110, 107, 106, 93, 104, 114, 68, 80, 77, 116, 170, 114, 124, 128, 28.29020 + 126, 136, 132, 134, 138, 138, 138, 138, 135, 127, 104, 75, 37, 59, 48, 29, 28.29021 + 95, 127, 134, 136, 135, 139, 135, 140, 136, 132, 130, 126, 134, 134, 106, 106, 28.29022 + 114, 107, 106, 108, 122, 123, 108, 99, 122, 120, 120, 124, 119, 120, 120, 102, 28.29023 + 116, 115, 116, 68, 20, 107, 130, 131, 135, 136, 131, 136, 138, 127, 120, 99, 28.29024 + 49, 146, 157, 144, 143, 119, 142, 140, 130, 132, 132, 59, 8, 148, 159, 154, 28.29025 + 155, 151, 158, 151, 155, 151, 157, 134, 106, 6, 126, 146, 110, 123, 95, 104, 28.29026 + 97, 103, 96, 72, 16, 111, 142, 144, 143, 127, 132, 138, 140, 119, 95, 55, 28.29027 + 102, 139, 146, 139, 139, 144, 144, 147, 146, 139, 110, 116, 53, 151, 148, 134, 28.29028 + 142, 138, 136, 122, 136, 122, 80, 60, 122, 118, 134, 148, 146, 146, 130, 143, 28.29029 + 135, 134, 104, 79, 60, 115, 136, 138, 119, 127, 130, 132, 131, 130, 135, 91, 28.29030 + 18, 144, 147, 151, 144, 147, 142, 146, 139, 144, 136, 140, 135, 132, 103, 107, 28.29031 + 112, 142, 143, 119, 147, 151, 142, 104, 22, 139, 170, 165, 161, 154, 151, 147, 28.29032 + 151, 153, 140, 126, 9, 153, 120, 114, 116, 114, 127, 128, 132, 126, 119, 108, 28.29033 + 26, 166, 175, 161, 159, 163, 10, 4, 13, 13, 9, 5, 12, 24, 63, 32, 28.29034 + 63, 190, 242, 240, 241, 241, 245, 199, 143, 114, 122, 124, 126, 120, 111, 126, 28.29035 + 132, 124, 81, 22, 10, 9, 9, 12, 18, 18, 22, 21, 24, 18, 20, 24, 28.29036 + 46, 79, 144, 158, 122, 120, 120, 104, 85, 26, 24, 21, 29, 33, 26, 59, 28.29037 + 65, 67, 68, 72, 80, 88, 92, 93, 97, 97, 99, 100, 103, 104, 100, 99, 28.29038 + 99, 97, 97, 100, 93, 95, 92, 89, 88, 93, 76, 34, 28, 28, 25, 20, 28.29039 + 22, 37, 36, 33, 25, 26, 33, 41, 46, 32, 26, 26, 22, 24, 20, 20, 28.29040 + 22, 33, 32, 44, 45, 51, 53, 59, 60, 61, 52, 24, 52, 60, 77, 79, 28.29041 + 75, 68, 53, 29, 33, 28, 17, 12, 41, 44, 44, 45, 48, 48, 46, 51, 28.29042 + 52, 51, 37, 32, 49, 52, 59, 36, 33, 33, 36, 25, 14, 25, 21, 16, 28.29043 + 14, 12, 14, 13, 14, 20, 21, 22, 24, 26, 33, 22, 24, 24, 24, 25, 28.29044 + 42, 42, 29, 36, 41, 68, 40, 71, 84, 73, 69, 69, 69, 68, 69, 69, 28.29045 + 69, 71, 69, 67, 68, 72, 77, 77, 79, 81, 81, 83, 83, 84, 65, 28, 28.29046 + 81, 84, 76, 72, 67, 72, 67, 60, 75, 73, 53, 25, 57, 48, 34, 25, 28.29047 + 22, 21, 20, 21, 21, 16, 16, 25, 30, 29, 36, 30, 29, 30, 30, 42, 28.29048 + 42, 56, 40, 0, 18, 68, 76, 73, 75, 79, 85, 83, 85, 83, 83, 49, 28.29049 + 80, 111, 120, 131, 134, 131, 128, 130, 124, 130, 128, 130, 130, 128, 127, 127, 28.29050 + 124, 123, 120, 118, 118, 112, 119, 111, 89, 63, 28, 21, 21, 18, 12, 13, 28.29051 + 12, 10, 38, 40, 36, 42, 41, 38, 30, 36, 36, 36, 32, 41, 34, 41, 28.29052 + 12, 48, 110, 114, 107, 118, 120, 102, 81, 104, 40, 103, 155, 210, 225, 224, 28.29053 + 220, 224, 230, 209, 185, 155, 148, 134, 116, 103, 102, 80, 67, 87, 89, 88, 28.29054 + 87, 91, 83, 67, 84, 75, 119, 179, 155, 115, 114, 139, 139, 140, 142, 144, 28.29055 + 148, 147, 146, 140, 128, 93, 40, 33, 29, 69, 55, 60, 107, 110, 100, 110, 28.29056 + 114, 108, 108, 114, 114, 115, 111, 112, 120, 124, 123, 126, 124, 126, 126, 122, 28.29057 + 128, 127, 122, 111, 119, 122, 118, 102, 128, 119, 106, 88, 116, 114, 63, 18, 28.29058 + 56, 122, 126, 92, 102, 128, 130, 111, 111, 118, 91, 72, 136, 165, 122, 111, 28.29059 + 126, 124, 99, 103, 114, 99, 87, 16, 127, 163, 159, 159, 151, 159, 142, 146, 28.29060 + 157, 151, 107, 75, 9, 124, 144, 102, 107, 92, 89, 93, 89, 87, 44, 33, 28.29061 + 110, 79, 72, 75, 79, 72, 72, 73, 68, 59, 59, 77, 85, 87, 85, 85, 28.29062 + 99, 116, 131, 135, 135, 102, 96, 36, 148, 138, 132, 126, 128, 93, 85, 88, 28.29063 + 83, 81, 64, 84, 59, 76, 69, 83, 102, 107, 115, 107, 108, 110, 93, 55, 28.29064 + 97, 112, 115, 112, 107, 106, 122, 120, 114, 110, 87, 37, 100, 107, 95, 97, 28.29065 + 108, 110, 103, 111, 112, 110, 136, 131, 123, 138, 138, 139, 143, 143, 139, 143, 28.29066 + 139, 135, 97, 14, 138, 154, 153, 151, 151, 148, 151, 151, 151, 118, 127, 6, 28.29067 + 124, 107, 103, 110, 104, 108, 106, 91, 114, 122, 88, 24, 68, 100, 112, 111, 28.29068 + 108, 77, 71, 61, 57, 49, 57, 49, 56, 29, 36, 136, 238, 241, 240, 240, 28.29069 + 241, 195, 140, 116, 120, 130, 122, 114, 108, 131, 136, 131, 93, 28, 9, 9, 28.29070 + 8, 10, 18, 20, 21, 21, 22, 17, 21, 12, 20, 40, 67, 122, 169, 142, 28.29071 + 122, 120, 106, 91, 26, 24, 22, 29, 30, 25, 37, 40, 44, 45, 46, 52, 28.29072 + 63, 107, 175, 119, 97, 100, 106, 104, 107, 100, 99, 103, 104, 111, 111, 111, 28.29073 + 104, 100, 104, 100, 69, 26, 22, 21, 17, 18, 21, 18, 21, 22, 22, 25, 28.29074 + 21, 21, 22, 20, 40, 44, 46, 49, 55, 56, 51, 21, 71, 71, 48, 42, 28.29075 + 42, 44, 38, 36, 41, 52, 20, 45, 30, 25, 22, 21, 22, 16, 14, 16, 28.29076 + 14, 16, 9, 13, 12, 9, 9, 12, 12, 13, 13, 14, 17, 17, 36, 14, 28.29077 + 25, 46, 51, 57, 49, 60, 68, 93, 76, 85, 76, 97, 104, 96, 106, 106, 28.29078 + 99, 92, 87, 72, 38, 33, 79, 115, 118, 89, 85, 73, 60, 55, 49, 18, 28.29079 + 16, 12, 12, 12, 12, 12, 10, 13, 13, 13, 14, 16, 18, 20, 22, 21, 28.29080 + 25, 29, 33, 34, 40, 44, 65, 69, 83, 67, 30, 76, 64, 52, 40, 38, 28.29081 + 36, 33, 34, 36, 32, 30, 24, 20, 37, 63, 61, 68, 95, 104, 102, 111, 28.29082 + 100, 63, 20, 73, 115, 115, 88, 68, 69, 69, 57, 56, 22, 16, 2, 9, 28.29083 + 9, 30, 18, 18, 18, 34, 28, 29, 29, 41, 60, 89, 124, 179, 175, 124, 28.29084 + 131, 144, 139, 136, 139, 139, 139, 136, 135, 135, 134, 132, 131, 130, 123, 126, 28.29085 + 114, 118, 107, 56, 24, 21, 16, 16, 17, 20, 24, 26, 48, 41, 46, 73, 28.29086 + 83, 92, 96, 100, 92, 89, 75, 71, 33, 32, 21, 10, 41, 41, 44, 59, 28.29087 + 63, 102, 104, 97, 97, 32, 112, 167, 214, 238, 224, 228, 220, 170, 143, 119, 28.29088 + 119, 115, 108, 107, 103, 60, 72, 64, 69, 68, 60, 56, 60, 60, 63, 83, 28.29089 + 85, 119, 189, 182, 119, 110, 118, 135, 144, 147, 151, 153, 151, 150, 142, 128, 28.29090 + 85, 36, 36, 37, 46, 34, 17, 14, 18, 10, 8, 6, 9, 5, 2, 2, 28.29091 + 4, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28.29092 + 0, 0, 0, 2, 0, 0, 0, 0, 4, 4, 18, 37, 37, 42, 41, 40, 28.29093 + 51, 52, 67, 71, 81, 104, 48, 97, 130, 128, 106, 106, 120, 116, 97, 102, 28.29094 + 112, 53, 13, 25, 91, 99, 84, 75, 99, 106, 84, 79, 111, 103, 24, 10, 28.29095 + 67, 131, 126, 72, 46, 38, 32, 29, 40, 79, 68, 80, 85, 80, 99, 100, 28.29096 + 106, 112, 115, 118, 111, 51, 123, 116, 130, 119, 84, 46, 40, 68, 45, 87, 28.29097 + 93, 102, 51, 135, 96, 89, 100, 88, 108, 122, 119, 130, 124, 59, 118, 131, 28.29098 + 140, 136, 88, 87, 89, 55, 67, 65, 55, 63, 102, 100, 91, 89, 83, 79, 28.29099 + 72, 67, 69, 64, 40, 41, 29, 18, 16, 17, 9, 8, 9, 12, 1, 1, 28.29100 + 1, 17, 29, 17, 36, 33, 40, 52, 40, 83, 103, 126, 123, 84, 17, 80, 28.29101 + 89, 85, 84, 84, 80, 79, 79, 73, 75, 71, 5, 52, 55, 65, 60, 46, 28.29102 + 60, 59, 55, 56, 48, 56, 42, 52, 59, 59, 60, 65, 73, 56, 59, 48, 28.29103 + 45, 55, 51, 28, 32, 115, 225, 238, 238, 240, 238, 194, 130, 118, 127, 134, 28.29104 + 118, 112, 116, 132, 143, 139, 115, 42, 10, 8, 8, 8, 16, 16, 17, 22, 28.29105 + 28, 25, 40, 42, 59, 52, 40, 56, 110, 171, 157, 126, 120, 115, 91, 28, 28.29106 + 24, 21, 30, 30, 34, 44, 76, 84, 85, 77, 84, 81, 107, 186, 161, 97, 28.29107 + 99, 108, 102, 106, 115, 118, 132, 139, 140, 140, 144, 143, 136, 106, 97, 32, 28.29108 + 24, 21, 18, 17, 17, 18, 17, 17, 17, 24, 22, 41, 56, 69, 79, 92, 28.29109 + 95, 100, 99, 96, 88, 57, 38, 83, 88, 60, 60, 65, 65, 59, 48, 46, 28.29110 + 52, 20, 20, 28, 45, 48, 53, 83, 93, 103, 73, 59, 56, 103, 103, 112, 28.29111 + 92, 100, 85, 106, 91, 85, 91, 84, 36, 21, 68, 112, 102, 112, 104, 88, 28.29112 + 80, 91, 108, 87, 102, 92, 87, 76, 92, 106, 103, 91, 93, 85, 103, 46, 28.29113 + 32, 85, 124, 114, 112, 127, 123, 126, 130, 116, 107, 57, 29, 96, 112, 106, 28.29114 + 110, 108, 112, 119, 112, 111, 111, 106, 102, 100, 108, 107, 112, 103, 103, 95, 28.29115 + 65, 52, 55, 46, 67, 28, 38, 42, 69, 80, 79, 84, 99, 89, 83, 73, 28.29116 + 64, 42, 95, 123, 124, 124, 122, 124, 120, 116, 112, 102, 67, 24, 89, 118, 28.29117 + 119, 114, 114, 114, 114, 110, 84, 65, 57, 6, 71, 89, 91, 84, 89, 97, 28.29118 + 96, 95, 102, 100, 42, 56, 97, 120, 201, 183, 134, 123, 131, 148, 148, 147, 28.29119 + 151, 159, 159, 158, 159, 159, 153, 148, 130, 124, 114, 131, 118, 99, 37, 24, 28.29120 + 18, 17, 24, 25, 29, 40, 48, 52, 44, 64, 106, 108, 123, 130, 134, 126, 28.29121 + 123, 112, 107, 102, 88, 65, 9, 108, 116, 118, 115, 61, 63, 59, 99, 95, 28.29122 + 24, 127, 186, 220, 224, 230, 217, 157, 127, 120, 111, 102, 106, 100, 107, 65, 28.29123 + 45, 88, 80, 88, 93, 100, 91, 93, 89, 95, 99, 131, 120, 197, 191, 157, 28.29124 + 115, 114, 126, 144, 151, 148, 153, 155, 151, 140, 131, 81, 36, 42, 44, 53, 28.29125 + 34, 32, 85, 96, 93, 100, 92, 97, 88, 135, 114, 80, 80, 140, 123, 146, 28.29126 + 155, 155, 159, 157, 151, 165, 165, 161, 154, 128, 132, 154, 155, 150, 150, 155, 28.29127 + 151, 150, 123, 100, 65, 18, 102, 144, 138, 119, 119, 95, 77, 73, 32, 42, 28.29128 + 45, 45, 10, 8, 33, 9, 8, 4, 20, 1, 5, 2, 12, 9, 4, 8, 28.29129 + 5, 1, 0, 2, 2, 0, 0, 0, 5, 1, 14, 42, 34, 42, 61, 85, 28.29130 + 114, 83, 71, 115, 71, 77, 128, 142, 151, 148, 148, 151, 158, 161, 127, 112, 28.29131 + 56, 126, 135, 147, 153, 143, 134, 130, 122, 102, 106, 83, 103, 91, 115, 130, 28.29132 + 112, 128, 123, 139, 138, 124, 146, 130, 57, 131, 144, 131, 159, 158, 153, 146, 28.29133 + 131, 110, 106, 91, 61, 59, 24, 30, 79, 75, 111, 119, 124, 102, 96, 102, 28.29134 + 87, 37, 76, 167, 171, 140, 155, 167, 151, 144, 148, 114, 131, 140, 140, 140, 28.29135 + 146, 150, 143, 87, 46, 36, 33, 53, 32, 30, 33, 33, 28, 24, 28, 28, 28.29136 + 24, 24, 26, 30, 29, 33, 53, 68, 72, 72, 85, 112, 122, 104, 87, 81, 28.29137 + 89, 93, 142, 154, 140, 140, 146, 21, 24, 24, 37, 40, 44, 32, 38, 97, 28.29138 + 216, 232, 241, 237, 236, 185, 127, 119, 128, 136, 115, 112, 126, 136, 151, 146, 28.29139 + 135, 83, 18, 10, 9, 9, 14, 14, 17, 25, 29, 65, 64, 61, 65, 67, 28.29140 + 52, 44, 48, 77, 170, 175, 147, 118, 106, 85, 25, 21, 20, 28, 29, 29, 28.29141 + 77, 92, 99, 97, 96, 79, 69, 92, 197, 182, 122, 97, 103, 112, 122, 139, 28.29142 + 142, 144, 148, 151, 154, 153, 147, 139, 114, 84, 22, 20, 17, 17, 20, 25, 28.29143 + 29, 26, 29, 28, 29, 44, 92, 102, 104, 97, 93, 95, 88, 83, 75, 60, 28.29144 + 53, 20, 81, 81, 67, 60, 59, 65, 68, 75, 44, 55, 20, 71, 102, 99, 28.29145 + 102, 99, 108, 88, 108, 81, 110, 72, 75, 93, 97, 97, 102, 88, 85, 89, 28.29146 + 83, 97, 99, 44, 18, 89, 107, 111, 102, 104, 103, 104, 91, 89, 99, 92, 28.29147 + 64, 87, 100, 110, 108, 96, 104, 107, 99, 103, 49, 45, 102, 124, 120, 99, 28.29148 + 116, 114, 115, 107, 114, 124, 79, 30, 123, 131, 131, 92, 84, 81, 83, 91, 28.29149 + 92, 85, 111, 100, 65, 79, 92, 114, 96, 100, 97, 103, 107, 93, 60, 72, 28.29150 + 24, 60, 106, 115, 116, 112, 118, 111, 111, 110, 84, 65, 37, 93, 122, 112, 28.29151 + 108, 107, 106, 106, 106, 93, 106, 75, 24, 83, 118, 120, 114, 108, 115, 116, 28.29152 + 114, 108, 81, 57, 17, 111, 134, 131, 102, 97, 92, 112, 99, 93, 99, 57, 28.29153 + 55, 100, 116, 195, 205, 163, 120, 124, 146, 148, 162, 167, 174, 177, 174, 177, 28.29154 + 170, 163, 157, 126, 116, 130, 130, 118, 88, 30, 20, 17, 25, 32, 34, 40, 28.29155 + 51, 53, 60, 48, 87, 114, 130, 127, 124, 116, 120, 115, 122, 123, 123, 104, 28.29156 + 73, 8, 102, 115, 130, 123, 120, 114, 115, 103, 95, 24, 128, 194, 221, 228, 28.29157 + 222, 167, 131, 119, 106, 115, 97, 95, 111, 114, 55, 42, 77, 64, 76, 72, 28.29158 + 77, 80, 83, 71, 104, 140, 128, 132, 202, 197, 185, 115, 111, 120, 143, 155, 28.29159 + 157, 161, 159, 151, 140, 128, 65, 40, 29, 40, 55, 42, 57, 116, 140, 128, 28.29160 + 118, 115, 119, 114, 120, 118, 112, 108, 116, 146, 140, 142, 138, 146, 123, 128, 28.29161 + 151, 163, 136, 124, 140, 108, 134, 134, 140, 139, 135, 136, 132, 135, 136, 76, 28.29162 + 18, 102, 150, 148, 148, 128, 138, 122, 134, 102, 102, 83, 42, 33, 148, 150, 28.29163 + 118, 120, 124, 115, 104, 114, 103, 64, 20, 56, 159, 155, 115, 120, 154, 153, 28.29164 + 131, 112, 151, 130, 68, 12, 63, 116, 115, 93, 114, 112, 116, 112, 106, 69, 28.29165 + 106, 169, 165, 163, 155, 157, 148, 154, 144, 130, 123, 57, 135, 148, 162, 157, 28.29166 + 134, 135, 128, 128, 124, 135, 122, 116, 122, 130, 138, 131, 116, 124, 135, 147, 28.29167 + 148, 142, 134, 63, 135, 153, 144, 154, 142, 140, 150, 157, 157, 147, 97, 114, 28.29168 + 51, 97, 135, 128, 143, 144, 140, 128, 138, 138, 103, 95, 30, 136, 163, 161, 28.29169 + 155, 157, 157, 161, 150, 161, 151, 142, 131, 108, 150, 151, 143, 146, 147, 148, 28.29170 + 151, 114, 102, 95, 102, 148, 151, 165, 161, 169, 166, 167, 167, 144, 138, 138, 28.29171 + 144, 155, 155, 154, 170, 171, 150, 159, 153, 155, 134, 91, 130, 169, 167, 162, 28.29172 + 167, 166, 30, 36, 38, 24, 38, 24, 33, 45, 179, 228, 229, 232, 233, 193, 28.29173 + 130, 118, 131, 140, 123, 114, 138, 147, 153, 148, 144, 120, 46, 9, 9, 10, 28.29174 + 13, 21, 14, 14, 24, 63, 73, 71, 60, 56, 59, 57, 41, 53, 64, 147, 28.29175 + 179, 162, 120, 102, 79, 24, 20, 17, 28, 30, 33, 84, 104, 83, 85, 75, 28.29176 + 75, 75, 88, 204, 187, 173, 99, 103, 116, 130, 143, 148, 155, 151, 155, 154, 28.29177 + 157, 151, 135, 114, 53, 24, 17, 17, 24, 28, 29, 32, 28, 32, 34, 34, 28.29178 + 80, 108, 108, 100, 100, 85, 87, 71, 64, 69, 53, 52, 22, 73, 87, 73, 28.29179 + 55, 59, 63, 63, 73, 45, 55, 21, 75, 93, 99, 95, 111, 80, 89, 93, 28.29180 + 72, 81, 63, 89, 106, 103, 91, 92, 83, 87, 85, 89, 92, 92, 38, 18, 28.29181 + 103, 103, 102, 95, 102, 106, 96, 93, 95, 88, 81, 57, 83, 107, 116, 104, 28.29182 + 103, 104, 102, 95, 99, 48, 33, 95, 119, 122, 115, 112, 99, 112, 100, 114, 28.29183 + 107, 106, 36, 108, 103, 139, 127, 130, 128, 124, 126, 122, 116, 100, 93, 64, 28.29184 + 111, 122, 115, 122, 112, 111, 111, 104, 102, 80, 76, 28, 88, 119, 114, 108, 28.29185 + 99, 103, 92, 89, 102, 97, 67, 38, 87, 110, 115, 106, 110, 106, 104, 107, 28.29186 + 108, 99, 75, 29, 87, 99, 120, 107, 104, 111, 102, 118, 116, 81, 64, 0, 28.29187 + 110, 114, 123, 123, 130, 127, 116, 127, 102, 103, 63, 49, 102, 122, 194, 217, 28.29188 + 201, 136, 119, 136, 150, 159, 167, 178, 182, 179, 179, 181, 173, 161, 127, 126, 28.29189 + 140, 131, 120, 88, 28, 20, 20, 34, 45, 55, 53, 52, 57, 57, 44, 99, 28.29190 + 119, 128, 123, 112, 112, 111, 118, 110, 112, 118, 115, 73, 9, 115, 119, 118, 28.29191 + 115, 111, 115, 97, 71, 97, 33, 122, 199, 218, 230, 206, 131, 115, 110, 114, 28.29192 + 99, 97, 116, 118, 102, 56, 45, 46, 81, 83, 73, 72, 89, 87, 67, 108, 28.29193 + 140, 136, 132, 206, 209, 198, 114, 108, 119, 132, 146, 153, 157, 163, 155, 140, 28.29194 + 128, 71, 36, 28, 49, 68, 32, 73, 134, 123, 124, 127, 134, 131, 136, 132, 28.29195 + 111, 103, 99, 135, 163, 157, 147, 142, 135, 148, 142, 153, 154, 153, 146, 104, 28.29196 + 136, 157, 158, 158, 162, 159, 158, 148, 131, 95, 77, 22, 116, 147, 147, 150, 28.29197 + 150, 146, 124, 128, 122, 114, 89, 42, 110, 151, 144, 143, 143, 142, 150, 147, 28.29198 + 127, 128, 72, 13, 132, 159, 144, 139, 147, 148, 144, 146, 148, 140, 126, 77, 28.29199 + 14, 93, 108, 102, 99, 118, 110, 112, 118, 89, 67, 95, 167, 159, 157, 146, 28.29200 + 147, 144, 147, 147, 159, 118, 63, 128, 131, 134, 161, 166, 158, 142, 154, 130, 28.29201 + 147, 115, 75, 111, 143, 147, 134, 136, 155, 150, 163, 130, 144, 135, 68, 134, 28.29202 + 138, 147, 154, 136, 135, 138, 148, 142, 154, 120, 118, 24, 120, 130, 136, 135, 28.29203 + 134, 139, 132, 131, 138, 131, 107, 42, 167, 162, 148, 151, 148, 151, 154, 155, 28.29204 + 154, 151, 146, 122, 132, 143, 151, 144, 146, 151, 153, 150, 154, 159, 83, 150, 28.29205 + 170, 157, 161, 170, 154, 155, 155, 171, 170, 144, 119, 135, 170, 181, 173, 171, 28.29206 + 169, 162, 148, 169, 167, 150, 92, 138, 171, 162, 166, 163, 162, 16, 18, 20, 28.29207 + 59, 21, 41, 34, 104, 222, 226, 230, 233, 212, 146, 119, 126, 139, 138, 114, 28.29208 + 130, 153, 159, 155, 150, 139, 87, 18, 9, 8, 12, 14, 25, 16, 10, 28, 28.29209 + 65, 57, 59, 46, 38, 40, 37, 49, 45, 59, 114, 185, 174, 126, 104, 75, 28.29210 + 24, 21, 17, 28, 30, 26, 71, 99, 83, 84, 79, 75, 85, 95, 206, 199, 28.29211 + 185, 95, 104, 116, 138, 147, 155, 154, 163, 155, 153, 157, 146, 134, 116, 30, 28.29212 + 20, 17, 16, 25, 37, 36, 30, 33, 36, 30, 49, 96, 106, 108, 100, 83, 28.29213 + 79, 76, 73, 64, 63, 60, 49, 22, 71, 76, 80, 73, 68, 64, 56, 57, 28.29214 + 45, 52, 17, 83, 91, 110, 81, 79, 80, 77, 84, 83, 81, 60, 85, 106, 28.29215 + 99, 93, 93, 104, 96, 96, 89, 81, 85, 41, 21, 83, 107, 92, 108, 92, 28.29216 + 75, 99, 92, 89, 89, 81, 55, 85, 100, 116, 102, 116, 106, 96, 103, 95, 28.29217 + 51, 32, 95, 116, 114, 108, 108, 108, 97, 96, 103, 108, 116, 40, 75, 124, 28.29218 + 95, 119, 128, 114, 127, 122, 111, 122, 108, 80, 61, 114, 119, 106, 96, 95, 28.29219 + 89, 104, 108, 100, 95, 76, 33, 104, 114, 111, 115, 97, 87, 88, 95, 100, 28.29220 + 84, 63, 22, 93, 112, 106, 115, 107, 104, 110, 107, 107, 88, 77, 40, 80, 28.29221 + 104, 118, 115, 115, 100, 112, 108, 111, 79, 56, 0, 107, 120, 119, 120, 127, 28.29222 + 114, 135, 134, 134, 120, 67, 57, 102, 123, 194, 210, 199, 135, 118, 132, 146, 28.29223 + 150, 163, 178, 183, 185, 186, 177, 173, 155, 127, 138, 142, 136, 127, 72, 26, 28.29224 + 20, 24, 51, 55, 53, 52, 56, 64, 67, 51, 104, 127, 128, 114, 118, 122, 28.29225 + 120, 115, 114, 112, 115, 97, 75, 8, 112, 103, 122, 119, 118, 114, 97, 75, 28.29226 + 92, 28, 127, 193, 214, 226, 185, 124, 115, 107, 107, 99, 102, 124, 116, 103, 28.29227 + 55, 40, 40, 65, 79, 84, 73, 85, 87, 60, 104, 138, 128, 138, 208, 205, 28.29228 + 202, 114, 107, 115, 124, 139, 146, 159, 166, 158, 143, 123, 69, 38, 25, 36, 28.29229 + 71, 40, 73, 135, 140, 126, 128, 123, 122, 110, 122, 107, 96, 34, 124, 159, 28.29230 + 154, 142, 143, 139, 150, 154, 155, 140, 155, 142, 103, 144, 157, 163, 157, 150, 28.29231 + 144, 139, 138, 134, 142, 81, 21, 114, 130, 151, 143, 140, 116, 136, 139, 140, 28.29232 + 147, 93, 40, 134, 151, 136, 144, 136, 144, 147, 148, 142, 130, 76, 13, 154, 28.29233 + 158, 147, 143, 150, 159, 153, 153, 158, 150, 144, 80, 12, 103, 102, 97, 103, 28.29234 + 118, 108, 108, 111, 104, 59, 93, 153, 159, 143, 155, 155, 147, 147, 148, 130, 28.29235 + 130, 60, 119, 138, 140, 161, 150, 143, 146, 138, 143, 148, 138, 81, 150, 144, 28.29236 + 142, 138, 148, 153, 161, 153, 139, 142, 132, 76, 130, 142, 153, 143, 138, 139, 28.29237 + 139, 142, 148, 150, 142, 120, 56, 100, 143, 127, 128, 138, 146, 124, 140, 134, 28.29238 + 111, 111, 40, 112, 166, 158, 139, 148, 144, 148, 142, 147, 144, 126, 111, 146, 28.29239 + 143, 148, 154, 151, 147, 150, 148, 138, 159, 100, 154, 178, 170, 163, 174, 167, 28.29240 + 150, 169, 154, 136, 128, 130, 139, 170, 166, 165, 150, 157, 151, 162, 161, 157, 28.29241 + 140, 89, 108, 170, 162, 165, 157, 161, 75, 67, 64, 25, 32, 37, 56, 170, 28.29242 + 218, 236, 224, 218, 162, 132, 122, 138, 142, 128, 119, 151, 163, 163, 155, 147, 28.29243 + 126, 52, 10, 6, 9, 10, 16, 24, 16, 12, 55, 75, 64, 46, 37, 44, 28.29244 + 49, 34, 40, 42, 52, 107, 190, 182, 157, 102, 69, 24, 18, 14, 25, 30, 28.29245 + 32, 57, 103, 83, 80, 83, 72, 71, 83, 213, 204, 186, 95, 108, 119, 132, 28.29246 + 147, 155, 158, 157, 155, 155, 157, 144, 122, 118, 28, 17, 16, 25, 32, 37, 28.29247 + 33, 40, 34, 36, 30, 46, 99, 102, 104, 81, 75, 76, 75, 71, 65, 61, 28.29248 + 55, 61, 34, 79, 75, 64, 67, 65, 76, 53, 68, 44, 52, 16, 76, 85, 28.29249 + 92, 68, 85, 71, 89, 63, 81, 75, 53, 85, 106, 93, 97, 95, 96, 103, 28.29250 + 92, 93, 97, 80, 41, 20, 85, 102, 96, 108, 100, 103, 93, 99, 85, 93, 28.29251 + 80, 56, 84, 100, 103, 103, 116, 103, 89, 99, 89, 57, 30, 96, 120, 122, 28.29252 + 118, 107, 106, 104, 100, 100, 102, 116, 53, 45, 124, 131, 132, 126, 123, 122, 28.29253 + 119, 119, 130, 112, 89, 60, 108, 119, 106, 104, 115, 97, 95, 95, 104, 85, 28.29254 + 77, 32, 92, 122, 100, 104, 95, 88, 100, 89, 95, 88, 64, 24, 84, 106, 28.29255 + 106, 122, 103, 102, 100, 96, 92, 99, 79, 41, 83, 115, 118, 120, 106, 108, 28.29256 + 107, 111, 107, 81, 64, 8, 114, 112, 110, 127, 128, 116, 123, 131, 136, 112, 28.29257 + 59, 64, 103, 115, 165, 220, 206, 140, 115, 127, 147, 151, 163, 174, 173, 177, 28.29258 + 181, 181, 173, 139, 123, 139, 146, 135, 127, 53, 22, 20, 38, 49, 57, 56, 28.29259 + 57, 63, 77, 64, 59, 107, 128, 120, 119, 115, 116, 111, 116, 119, 108, 112, 28.29260 + 95, 69, 8, 96, 119, 115, 116, 114, 115, 85, 77, 97, 33, 131, 204, 213, 28.29261 + 220, 159, 126, 107, 115, 100, 93, 112, 118, 119, 102, 52, 40, 40, 52, 80, 28.29262 + 85, 89, 81, 93, 57, 104, 139, 135, 139, 209, 210, 206, 112, 103, 111, 126, 28.29263 + 131, 140, 159, 165, 159, 143, 118, 68, 41, 30, 40, 59, 44, 69, 124, 131, 28.29264 + 126, 126, 134, 118, 118, 120, 111, 92, 79, 148, 162, 157, 147, 155, 151, 155, 28.29265 + 154, 140, 142, 153, 135, 106, 147, 161, 158, 150, 143, 135, 136, 142, 132, 139, 28.29266 + 85, 25, 112, 144, 146, 138, 138, 140, 140, 136, 142, 116, 92, 42, 87, 142, 28.29267 + 136, 142, 144, 146, 142, 151, 144, 123, 83, 18, 99, 158, 140, 150, 146, 151, 28.29268 + 144, 144, 146, 138, 140, 79, 24, 99, 102, 100, 111, 119, 108, 112, 110, 93, 28.29269 + 60, 96, 157, 159, 153, 159, 165, 158, 148, 147, 136, 118, 68, 120, 148, 144, 28.29270 + 148, 148, 140, 140, 157, 146, 150, 146, 88, 144, 154, 151, 150, 162, 158, 151, 28.29271 + 128, 146, 144, 132, 81, 130, 139, 155, 165, 150, 150, 157, 161, 150, 143, 120, 28.29272 + 122, 55, 111, 135, 118, 132, 128, 139, 132, 142, 127, 110, 100, 40, 120, 167, 28.29273 + 162, 146, 138, 132, 140, 138, 135, 120, 130, 103, 138, 131, 138, 150, 151, 150, 28.29274 + 147, 143, 150, 139, 77, 127, 170, 157, 155, 150, 161, 150, 155, 159, 155, 151, 28.29275 + 103, 120, 171, 167, 155, 167, 169, 143, 163, 162, 154, 138, 85, 116, 165, 163, 28.29276 + 163, 161, 157, 71, 28, 44, 21, 40, 37, 100, 206, 220, 221, 222, 182, 120, 28.29277 + 126, 134, 142, 136, 116, 132, 159, 166, 161, 153, 142, 102, 22, 6, 6, 9, 28.29278 + 14, 16, 21, 14, 13, 61, 65, 57, 41, 42, 45, 51, 41, 42, 48, 49, 28.29279 + 87, 187, 183, 163, 102, 69, 20, 17, 17, 26, 30, 29, 48, 97, 85, 81, 28.29280 + 83, 76, 81, 81, 214, 205, 173, 102, 104, 116, 131, 143, 142, 155, 153, 157, 28.29281 + 157, 151, 138, 119, 118, 26, 16, 14, 25, 38, 32, 33, 38, 41, 37, 32, 28.29282 + 46, 100, 106, 100, 76, 71, 76, 63, 67, 72, 60, 56, 57, 24, 75, 71, 28.29283 + 83, 87, 81, 80, 53, 60, 42, 55, 20, 73, 88, 106, 80, 80, 77, 65, 28.29284 + 72, 77, 79, 55, 91, 100, 88, 96, 97, 103, 88, 85, 88, 89, 80, 45, 28.29285 + 18, 79, 97, 89, 108, 111, 107, 96, 95, 87, 88, 79, 51, 85, 93, 95, 28.29286 + 99, 111, 116, 114, 111, 88, 49, 30, 87, 119, 120, 116, 106, 102, 102, 111, 28.29287 + 96, 106, 114, 85, 45, 111, 127, 118, 114, 102, 115, 124, 128, 107, 102, 81, 28.29288 + 64, 110, 120, 95, 100, 102, 96, 96, 115, 104, 79, 79, 36, 88, 104, 110, 28.29289 + 103, 96, 87, 85, 102, 99, 84, 65, 33, 97, 110, 110, 127, 111, 110, 96, 28.29290 + 104, 112, 102, 91, 42, 84, 116, 107, 102, 107, 103, 96, 102, 107, 83, 64, 28.29291 + 9, 104, 114, 108, 116, 118, 118, 104, 119, 115, 93, 73, 63, 91, 122, 155, 28.29292 + 218, 217, 162, 111, 116, 143, 150, 166, 175, 179, 185, 181, 171, 167, 131, 135, 28.29293 + 147, 143, 136, 123, 33, 22, 18, 36, 55, 59, 59, 64, 71, 72, 71, 60, 28.29294 + 107, 126, 126, 120, 124, 112, 123, 116, 119, 108, 114, 106, 71, 8, 104, 102, 28.29295 + 111, 142, 112, 112, 110, 79, 91, 30, 126, 195, 220, 220, 150, 112, 102, 106, 28.29296 + 93, 100, 116, 116, 120, 114, 45, 37, 33, 46, 76, 87, 84, 72, 91, 61, 28.29297 + 108, 146, 131, 144, 213, 213, 206, 111, 106, 111, 118, 130, 142, 157, 166, 162, 28.29298 + 146, 130, 67, 40, 41, 38, 63, 49, 69, 123, 128, 128, 122, 124, 100, 111, 28.29299 + 135, 99, 97, 83, 151, 154, 142, 135, 140, 148, 154, 134, 130, 143, 154, 124, 28.29300 + 96, 146, 163, 153, 135, 143, 131, 135, 131, 138, 148, 87, 28, 111, 142, 148, 28.29301 + 136, 136, 138, 128, 134, 119, 123, 93, 41, 106, 135, 127, 139, 143, 144, 153, 28.29302 + 148, 138, 132, 84, 22, 100, 151, 142, 144, 144, 143, 142, 143, 154, 134, 127, 28.29303 + 87, 20, 114, 107, 97, 111, 119, 110, 108, 107, 96, 60, 110, 162, 157, 162, 28.29304 + 166, 167, 159, 153, 150, 136, 122, 72, 118, 154, 151, 157, 150, 140, 140, 148, 28.29305 + 138, 146, 146, 56, 150, 153, 153, 150, 157, 150, 144, 127, 144, 142, 138, 85, 28.29306 + 131, 140, 150, 139, 154, 150, 146, 147, 154, 136, 123, 120, 33, 106, 131, 138, 28.29307 + 112, 120, 136, 122, 131, 140, 130, 102, 40, 116, 167, 161, 134, 142, 135, 132, 28.29308 + 132, 131, 115, 120, 104, 135, 157, 148, 147, 148, 155, 146, 144, 143, 153, 81, 28.29309 + 130, 169, 165, 159, 153, 151, 155, 153, 146, 138, 122, 115, 143, 169, 170, 150, 28.29310 + 157, 159, 158, 151, 153, 155, 142, 92, 123, 163, 159, 162, 159, 155, 93, 45, 28.29311 + 20, 20, 37, 45, 161, 209, 224, 214, 206, 159, 116, 119, 139, 144, 138, 120, 28.29312 + 148, 165, 165, 161, 153, 138, 77, 12, 4, 5, 10, 16, 18, 20, 16, 16, 28.29313 + 69, 64, 56, 36, 48, 56, 44, 37, 46, 53, 52, 93, 185, 185, 171, 110, 28.29314 + 71, 24, 16, 16, 28, 32, 30, 34, 93, 91, 79, 89, 79, 81, 83, 217, 28.29315 + 201, 186, 106, 107, 118, 131, 139, 143, 150, 155, 157, 155, 143, 135, 116, 115, 28.29316 + 28, 16, 13, 26, 42, 38, 34, 32, 40, 37, 30, 60, 95, 110, 84, 83, 28.29317 + 72, 75, 75, 73, 67, 69, 53, 53, 24, 81, 72, 67, 67, 71, 76, 52, 28.29318 + 59, 44, 51, 18, 73, 87, 95, 71, 76, 72, 77, 65, 64, 75, 55, 85, 28.29319 + 99, 103, 97, 102, 87, 89, 92, 89, 88, 77, 42, 17, 75, 96, 89, 87, 28.29320 + 100, 100, 93, 93, 88, 87, 75, 44, 79, 97, 108, 102, 112, 102, 97, 88, 28.29321 + 97, 45, 33, 77, 119, 115, 111, 102, 104, 108, 100, 96, 104, 108, 81, 36, 28.29322 + 85, 124, 128, 104, 114, 123, 118, 108, 112, 97, 72, 69, 110, 116, 92, 99, 28.29323 + 108, 97, 97, 85, 97, 97, 77, 40, 92, 110, 106, 110, 106, 87, 87, 84, 28.29324 + 96, 92, 67, 36, 96, 115, 100, 104, 112, 99, 108, 110, 111, 102, 85, 45, 28.29325 + 85, 102, 114, 103, 103, 100, 108, 104, 100, 84, 65, 0, 118, 115, 104, 88, 28.29326 + 119, 115, 124, 122, 115, 100, 71, 55, 85, 124, 115, 220, 222, 189, 114, 114, 28.29327 + 139, 150, 162, 173, 177, 178, 175, 178, 158, 132, 139, 151, 143, 136, 123, 29, 28.29328 + 22, 20, 34, 60, 68, 65, 75, 87, 73, 67, 61, 95, 124, 124, 127, 112, 28.29329 + 122, 116, 115, 119, 106, 111, 108, 75, 10, 103, 107, 110, 112, 139, 124, 115, 28.29330 + 79, 91, 22, 114, 186, 213, 237, 159, 112, 97, 106, 93, 111, 119, 116, 123, 28.29331 + 99, 44, 38, 30, 46, 71, 85, 91, 76, 93, 56, 115, 138, 135, 154, 220, 28.29332 + 220, 208, 107, 100, 111, 123, 130, 144, 155, 167, 162, 147, 139, 68, 45, 26, 28.29333 + 42, 67, 53, 67, 124, 127, 128, 131, 120, 114, 122, 110, 119, 81, 69, 134, 28.29334 + 150, 150, 143, 148, 132, 128, 142, 139, 147, 147, 106, 119, 153, 162, 142, 134, 28.29335 + 136, 142, 131, 140, 134, 139, 89, 29, 119, 132, 142, 128, 139, 132, 136, 134, 28.29336 + 124, 111, 95, 38, 114, 148, 130, 134, 143, 147, 146, 146, 124, 134, 87, 17, 28.29337 + 106, 151, 144, 150, 146, 143, 147, 157, 130, 126, 128, 81, 21, 100, 104, 104, 28.29338 + 110, 116, 115, 106, 103, 85, 60, 103, 161, 150, 163, 162, 161, 157, 163, 159, 28.29339 + 140, 120, 71, 123, 142, 132, 158, 147, 140, 142, 150, 144, 147, 143, 53, 144, 28.29340 + 157, 158, 150, 153, 150, 124, 130, 124, 134, 136, 85, 108, 138, 146, 151, 146, 28.29341 + 148, 140, 148, 150, 154, 128, 120, 26, 103, 138, 136, 130, 116, 130, 132, 130, 28.29342 + 110, 126, 100, 45, 120, 166, 153, 144, 144, 136, 131, 128, 124, 115, 132, 100, 28.29343 + 130, 148, 142, 142, 140, 139, 144, 139, 140, 153, 93, 153, 173, 162, 162, 153, 28.29344 + 151, 158, 155, 134, 147, 144, 110, 154, 165, 161, 165, 153, 151, 135, 146, 140, 28.29345 + 136, 124, 87, 136, 161, 162, 154, 159, 159, 20, 65, 20, 33, 38, 83, 190, 28.29346 + 218, 208, 212, 171, 132, 116, 138, 142, 144, 128, 132, 162, 167, 165, 158, 148, 28.29347 + 130, 36, 8, 5, 6, 10, 17, 20, 29, 17, 14, 76, 63, 49, 40, 57, 28.29348 + 45, 41, 40, 48, 44, 45, 116, 185, 182, 178, 103, 67, 22, 17, 16, 26, 28.29349 + 29, 29, 33, 92, 89, 84, 92, 85, 80, 80, 221, 199, 197, 107, 106, 115, 28.29350 + 127, 136, 143, 147, 151, 157, 151, 142, 135, 115, 114, 25, 14, 10, 25, 46, 28.29351 + 36, 38, 36, 48, 38, 29, 61, 102, 108, 83, 75, 80, 83, 73, 75, 77, 28.29352 + 65, 52, 52, 24, 72, 79, 72, 68, 56, 60, 64, 56, 45, 49, 17, 72, 28.29353 + 92, 103, 77, 77, 83, 61, 79, 67, 75, 51, 89, 102, 99, 91, 88, 97, 28.29354 + 95, 96, 92, 87, 51, 48, 20, 71, 88, 93, 91, 91, 93, 89, 88, 92, 28.29355 + 85, 77, 40, 92, 96, 106, 104, 106, 107, 102, 108, 96, 45, 33, 73, 106, 28.29356 + 114, 108, 92, 108, 108, 91, 102, 100, 96, 88, 46, 83, 123, 131, 126, 100, 28.29357 + 112, 93, 108, 104, 95, 53, 81, 104, 115, 103, 103, 88, 84, 89, 83, 87, 28.29358 + 97, 79, 45, 68, 99, 114, 88, 77, 88, 96, 88, 91, 76, 68, 17, 92, 28.29359 + 107, 106, 100, 99, 91, 100, 108, 102, 97, 87, 51, 57, 96, 111, 112, 116, 28.29360 + 114, 112, 112, 99, 77, 59, 0, 108, 110, 104, 107, 102, 124, 122, 119, 92, 28.29361 + 123, 76, 69, 59, 122, 111, 226, 226, 220, 115, 114, 138, 153, 157, 163, 177, 28.29362 + 179, 177, 177, 148, 136, 154, 154, 143, 135, 123, 30, 22, 18, 38, 67, 63, 28.29363 + 71, 76, 85, 80, 76, 68, 88, 122, 123, 122, 120, 122, 122, 119, 116, 112, 28.29364 + 112, 106, 69, 10, 100, 97, 96, 111, 147, 116, 110, 79, 87, 18, 93, 146, 28.29365 + 193, 237, 165, 112, 108, 107, 110, 118, 114, 120, 114, 69, 42, 36, 32, 46, 28.29366 + 71, 88, 91, 84, 91, 46, 110, 135, 132, 148, 220, 214, 210, 110, 102, 112, 28.29367 + 126, 135, 146, 155, 166, 165, 157, 144, 71, 45, 25, 37, 64, 51, 56, 119, 28.29368 + 122, 131, 126, 124, 127, 116, 106, 112, 81, 24, 126, 154, 136, 127, 138, 142, 28.29369 + 144, 144, 146, 148, 148, 104, 126, 157, 150, 124, 150, 131, 131, 131, 132, 136, 28.29370 + 136, 93, 29, 112, 140, 144, 136, 132, 127, 134, 126, 136, 138, 102, 37, 134, 28.29371 + 143, 132, 131, 142, 142, 142, 143, 127, 119, 89, 13, 111, 148, 146, 146, 144, 28.29372 + 157, 154, 128, 130, 128, 138, 77, 17, 108, 102, 100, 97, 100, 116, 103, 104, 28.29373 + 88, 52, 96, 151, 155, 158, 157, 165, 150, 144, 143, 138, 124, 71, 114, 148, 28.29374 + 143, 154, 143, 140, 144, 148, 139, 151, 144, 53, 148, 153, 162, 144, 146, 161, 28.29375 + 138, 139, 139, 134, 136, 93, 100, 140, 135, 147, 161, 157, 146, 150, 153, 146, 28.29376 + 126, 126, 52, 95, 140, 111, 124, 115, 132, 120, 111, 115, 107, 110, 49, 114, 28.29377 + 127, 158, 140, 135, 136, 132, 134, 126, 119, 122, 92, 132, 142, 143, 142, 138, 28.29378 + 142, 147, 143, 135, 134, 96, 158, 177, 167, 163, 144, 157, 146, 142, 158, 134, 28.29379 + 143, 126, 161, 144, 134, 139, 131, 144, 134, 127, 115, 130, 108, 93, 120, 162, 28.29380 + 146, 144, 157, 163, 64, 25, 18, 41, 45, 114, 189, 213, 204, 204, 134, 136, 28.29381 + 134, 139, 144, 144, 122, 150, 169, 169, 165, 157, 147, 120, 26, 6, 5, 6, 28.29382 + 12, 18, 12, 20, 17, 13, 68, 56, 48, 52, 40, 40, 38, 36, 42, 53, 28.29383 + 46, 126, 185, 182, 166, 99, 61, 22, 16, 14, 30, 38, 33, 37, 83, 99, 28.29384 + 76, 84, 83, 73, 76, 225, 199, 205, 108, 106, 115, 127, 135, 146, 151, 153, 28.29385 + 153, 138, 139, 136, 122, 119, 22, 13, 10, 29, 41, 32, 37, 32, 53, 38, 28.29386 + 29, 63, 92, 92, 80, 49, 49, 68, 71, 53, 55, 59, 57, 61, 37, 84, 28.29387 + 76, 71, 56, 61, 55, 63, 53, 42, 46, 14, 72, 80, 93, 65, 77, 80, 28.29388 + 72, 80, 79, 71, 42, 84, 102, 110, 106, 106, 99, 87, 79, 85, 63, 51, 28.29389 + 46, 21, 57, 77, 81, 63, 73, 92, 83, 67, 73, 83, 69, 40, 79, 89, 28.29390 + 106, 108, 89, 81, 79, 77, 63, 55, 29, 68, 114, 116, 112, 110, 99, 97, 28.29391 + 96, 102, 93, 99, 96, 51, 67, 118, 127, 116, 95, 119, 112, 103, 97, 88, 28.29392 + 52, 67, 103, 114, 103, 97, 85, 88, 80, 83, 83, 88, 80, 42, 64, 79, 28.29393 + 77, 77, 79, 77, 81, 81, 89, 89, 65, 18, 91, 108, 108, 100, 100, 99, 28.29394 + 92, 97, 89, 88, 87, 55, 68, 91, 114, 114, 122, 112, 104, 111, 76, 81, 28.29395 + 69, 6, 107, 110, 100, 107, 89, 111, 115, 118, 107, 114, 63, 65, 48, 119, 28.29396 + 116, 226, 232, 222, 116, 111, 139, 151, 155, 159, 171, 177, 174, 165, 136, 147, 28.29397 + 153, 154, 146, 140, 126, 28, 21, 18, 40, 64, 68, 69, 75, 83, 83, 79, 28.29398 + 68, 77, 115, 124, 127, 115, 119, 120, 114, 114, 110, 103, 89, 68, 12, 92, 28.29399 + 100, 112, 110, 111, 106, 92, 88, 92, 20, 73, 122, 163, 157, 120, 106, 96, 28.29400 + 83, 100, 97, 103, 99, 68, 44, 40, 34, 33, 44, 75, 87, 89, 83, 91, 28.29401 + 48, 114, 134, 123, 122, 213, 224, 220, 110, 97, 112, 127, 136, 146, 155, 169, 28.29402 + 163, 144, 138, 67, 46, 26, 34, 64, 56, 51, 93, 123, 120, 126, 122, 123, 28.29403 + 122, 111, 114, 79, 48, 150, 148, 131, 140, 150, 153, 151, 153, 148, 154, 143, 28.29404 + 100, 131, 162, 140, 142, 139, 134, 134, 139, 134, 139, 135, 95, 32, 122, 138, 28.29405 + 143, 134, 128, 127, 126, 134, 134, 124, 102, 44, 95, 136, 131, 122, 128, 131, 28.29406 + 130, 123, 131, 128, 97, 26, 112, 110, 158, 154, 155, 157, 158, 115, 131, 128, 28.29407 + 131, 93, 30, 102, 97, 97, 96, 102, 99, 114, 103, 91, 56, 104, 154, 148, 28.29408 + 151, 161, 144, 146, 144, 136, 142, 123, 81, 119, 151, 142, 144, 144, 155, 139, 28.29409 + 157, 144, 136, 138, 77, 144, 154, 153, 151, 155, 148, 148, 147, 139, 146, 142, 28.29410 + 110, 93, 120, 138, 135, 116, 110, 118, 135, 123, 123, 126, 123, 52, 116, 142, 28.29411 + 127, 102, 102, 88, 114, 115, 104, 110, 112, 73, 97, 123, 134, 134, 128, 128, 28.29412 + 135, 131, 128, 130, 146, 127, 139, 139, 153, 146, 146, 136, 147, 146, 139, 140, 28.29413 + 135, 126, 174, 171, 142, 144, 142, 140, 142, 135, 130, 135, 135, 142, 128, 130, 28.29414 + 136, 124, 115, 139, 147, 154, 143, 146, 142, 148, 155, 158, 155, 150, 146, 25, 28.29415 + 25, 13, 38, 48, 126, 191, 202, 209, 146, 139, 122, 139, 143, 148, 142, 127, 28.29416 + 162, 171, 169, 165, 155, 143, 106, 18, 6, 4, 6, 9, 17, 16, 30, 14, 28.29417 + 14, 69, 52, 41, 46, 38, 36, 34, 36, 44, 41, 51, 136, 179, 177, 162, 28.29418 + 102, 57, 21, 17, 16, 29, 33, 33, 30, 71, 97, 91, 75, 84, 77, 75, 28.29419 + 225, 208, 210, 108, 107, 116, 131, 144, 143, 147, 146, 139, 131, 136, 134, 122, 28.29420 + 122, 20, 13, 10, 29, 37, 37, 32, 32, 32, 48, 49, 55, 64, 67, 60, 28.29421 + 56, 60, 55, 56, 59, 80, 71, 59, 52, 25, 68, 76, 56, 51, 52, 51, 28.29422 + 49, 46, 53, 52, 21, 72, 88, 85, 67, 63, 63, 57, 67, 67, 65, 46, 28.29423 + 65, 84, 100, 67, 72, 63, 63, 56, 48, 40, 34, 51, 45, 49, 51, 51, 28.29424 + 60, 46, 48, 48, 48, 49, 46, 41, 36, 59, 59, 61, 56, 48, 48, 52, 28.29425 + 52, 44, 44, 59, 59, 93, 106, 99, 83, 93, 99, 102, 88, 87, 102, 95, 28.29426 + 85, 63, 72, 116, 107, 83, 96, 96, 97, 96, 81, 56, 61, 93, 96, 81, 28.29427 + 81, 83, 91, 92, 80, 79, 81, 77, 75, 68, 79, 80, 80, 69, 77, 67, 28.29428 + 84, 79, 84, 68, 30, 97, 91, 93, 92, 91, 91, 89, 92, 87, 88, 72, 28.29429 + 85, 51, 59, 63, 68, 65, 69, 68, 69, 69, 77, 64, 4, 45, 114, 107, 28.29430 + 60, 81, 99, 104, 96, 89, 103, 95, 77, 55, 77, 96, 220, 233, 224, 111, 28.29431 + 108, 132, 147, 151, 150, 157, 170, 170, 165, 143, 158, 158, 157, 148, 140, 126, 28.29432 + 25, 20, 20, 34, 61, 68, 75, 76, 75, 80, 85, 84, 68, 79, 100, 110, 28.29433 + 108, 107, 107, 110, 111, 111, 106, 104, 68, 12, 87, 100, 104, 95, 97, 84, 28.29434 + 87, 88, 88, 36, 57, 77, 96, 118, 87, 56, 48, 37, 34, 37, 37, 37, 28.29435 + 34, 40, 36, 30, 30, 40, 77, 80, 81, 68, 89, 49, 107, 120, 136, 120, 28.29436 + 201, 222, 218, 107, 100, 116, 130, 140, 146, 158, 169, 165, 146, 136, 63, 48, 28.29437 + 49, 33, 64, 63, 53, 63, 92, 100, 99, 107, 107, 116, 106, 106, 93, 68, 28.29438 + 148, 138, 144, 144, 135, 135, 128, 131, 139, 134, 115, 96, 119, 138, 148, 140, 28.29439 + 138, 143, 139, 138, 119, 107, 114, 93, 37, 106, 118, 136, 144, 147, 136, 140, 28.29440 + 131, 122, 97, 104, 44, 102, 122, 140, 128, 128, 127, 124, 108, 119, 111, 96, 28.29441 + 26, 97, 83, 89, 107, 118, 119, 100, 107, 120, 89, 100, 91, 30, 104, 102, 28.29442 + 103, 103, 106, 100, 97, 103, 95, 61, 102, 116, 118, 114, 102, 112, 134, 126, 28.29443 + 142, 128, 116, 95, 83, 134, 126, 139, 124, 134, 131, 138, 132, 128, 139, 37, 28.29444 + 134, 146, 143, 132, 139, 139, 143, 135, 134, 142, 134, 124, 130, 135, 135, 132, 28.29445 + 132, 127, 128, 134, 131, 123, 124, 123, 22, 108, 84, 115, 75, 110, 91, 95, 28.29446 + 118, 114, 96, 107, 111, 118, 115, 122, 122, 120, 119, 123, 127, 124, 112, 131, 28.29447 + 104, 124, 126, 131, 134, 136, 119, 123, 134, 130, 132, 128, 140, 147, 127, 155, 28.29448 + 147, 128, 138, 150, 147, 116, 132, 132, 126, 128, 138, 143, 143, 138, 142, 144, 28.29449 + 126, 107, 102, 95, 147, 99, 147, 163, 163, 173, 14, 17, 17, 40, 48, 150, 28.29450 + 209, 148, 143, 150, 112, 147, 131, 144, 146, 138, 138, 169, 173, 169, 162, 154, 28.29451 + 138, 89, 14, 6, 5, 8, 12, 17, 16, 20, 14, 9, 61, 53, 37, 37, 28.29452 + 29, 34, 38, 33, 45, 42, 48, 151, 181, 175, 163, 95, 53, 21, 17, 16, 28.29453 + 32, 34, 37, 36, 48, 71, 89, 84, 83, 76, 72, 225, 217, 220, 110, 107, 28.29454 + 112, 130, 131, 131, 134, 132, 138, 142, 139, 138, 127, 124, 18, 12, 9, 25, 28.29455 + 28, 30, 36, 38, 34, 38, 37, 40, 46, 44, 41, 46, 48, 46, 51, 48, 28.29456 + 49, 51, 51, 49, 48, 53, 51, 51, 48, 48, 51, 51, 46, 46, 42, 24, 28.29457 + 64, 89, 59, 53, 49, 49, 52, 51, 49, 51, 42, 51, 51, 49, 51, 48, 28.29458 + 45, 44, 44, 42, 40, 36, 30, 20, 20, 18, 20, 18, 16, 16, 16, 14, 28.29459 + 16, 13, 13, 14, 13, 18, 21, 21, 17, 18, 25, 37, 33, 37, 34, 48, 28.29460 + 73, 71, 84, 93, 83, 77, 84, 87, 87, 85, 85, 75, 67, 76, 69, 64, 28.29461 + 56, 48, 46, 46, 55, 48, 38, 51, 55, 63, 59, 59, 81, 83, 81, 64, 28.29462 + 63, 51, 46, 56, 64, 73, 75, 75, 60, 51, 53, 68, 75, 73, 67, 29, 28.29463 + 55, 61, 53, 64, 63, 64, 64, 68, 68, 69, 72, 73, 71, 77, 55, 53, 28.29464 + 46, 32, 24, 21, 29, 34, 28, 0, 24, 24, 34, 30, 36, 40, 46, 51, 28.29465 + 60, 71, 96, 81, 73, 69, 107, 217, 234, 225, 110, 106, 115, 124, 140, 150, 28.29466 + 158, 157, 162, 159, 144, 159, 159, 155, 147, 135, 123, 24, 20, 20, 28, 37, 28.29467 + 53, 53, 63, 68, 71, 75, 71, 71, 88, 91, 93, 92, 95, 93, 96, 96, 28.29468 + 100, 102, 93, 69, 17, 95, 99, 80, 71, 72, 64, 53, 77, 73, 40, 38, 28.29469 + 40, 63, 49, 44, 38, 41, 33, 34, 44, 42, 33, 33, 33, 36, 48, 51, 28.29470 + 51, 53, 56, 55, 57, 91, 46, 68, 68, 84, 123, 191, 224, 216, 108, 104, 28.29471 + 115, 126, 139, 148, 158, 171, 163, 144, 132, 63, 51, 22, 45, 48, 55, 51, 28.29472 + 61, 61, 63, 59, 60, 61, 67, 63, 63, 72, 45, 68, 123, 123, 111, 108, 28.29473 + 120, 123, 115, 112, 118, 112, 110, 119, 118, 118, 122, 124, 116, 116, 104, 93, 28.29474 + 79, 87, 85, 87, 97, 91, 60, 103, 97, 87, 112, 84, 73, 99, 93, 91, 28.29475 + 100, 97, 96, 92, 92, 85, 88, 77, 93, 59, 53, 12, 40, 37, 55, 59, 28.29476 + 53, 59, 73, 73, 77, 89, 104, 91, 73, 91, 95, 89, 84, 89, 95, 92, 28.29477 + 99, 100, 99, 77, 84, 93, 88, 81, 80, 112, 123, 122, 114, 114, 115, 115, 28.29478 + 116, 116, 118, 112, 111, 110, 111, 111, 107, 95, 36, 84, 128, 95, 97, 96, 28.29479 + 130, 97, 103, 104, 119, 111, 102, 97, 114, 107, 106, 103, 99, 99, 100, 100, 28.29480 + 97, 93, 91, 13, 108, 97, 89, 80, 76, 75, 68, 67, 69, 65, 68, 67, 28.29481 + 73, 80, 83, 84, 95, 119, 139, 161, 173, 179, 238, 236, 233, 225, 221, 222, 28.29482 + 220, 228, 220, 213, 209, 198, 153, 126, 142, 139, 143, 114, 150, 140, 193, 204, 28.29483 + 202, 194, 197, 167, 146, 150, 134, 128, 122, 130, 150, 165, 170, 197, 174, 150, 28.29484 + 126, 142, 84, 143, 143, 53, 41, 46, 59, 77, 165, 114, 144, 106, 112, 110, 28.29485 + 135, 135, 143, 153, 144, 144, 173, 174, 166, 158, 146, 131, 44, 9, 5, 6, 28.29486 + 12, 12, 6, 13, 12, 14, 12, 21, 25, 22, 25, 24, 24, 25, 26, 44, 28.29487 + 37, 33, 131, 173, 173, 162, 95, 45, 18, 16, 18, 29, 32, 33, 34, 40, 28.29488 + 42, 42, 44, 48, 80, 60, 229, 224, 222, 111, 104, 112, 128, 123, 123, 122, 28.29489 + 124, 127, 139, 138, 140, 128, 122, 16, 9, 9, 17, 16, 18, 20, 20, 17, 28.29490 + 20, 25, 28, 32, 41, 41, 44, 46, 46, 45, 51, 55, 57, 63, 55, 51, 28.29491 + 63, 71, 60, 73, 80, 93, 127, 110, 51, 46, 56, 49, 44, 44, 42, 42, 28.29492 + 53, 45, 44, 33, 30, 30, 32, 28, 38, 36, 36, 36, 41, 33, 38, 34, 28.29493 + 65, 85, 115, 116, 111, 122, 108, 114, 104, 118, 115, 100, 80, 83, 80, 85, 28.29494 + 102, 103, 88, 80, 65, 49, 37, 32, 25, 18, 18, 16, 16, 13, 13, 14, 28.29495 + 16, 13, 16, 18, 18, 17, 16, 21, 28, 84, 89, 95, 102, 106, 103, 73, 28.29496 + 77, 46, 111, 110, 122, 96, 53, 51, 68, 45, 48, 89, 97, 112, 102, 106, 28.29497 + 115, 119, 116, 104, 88, 75, 65, 45, 44, 64, 30, 17, 17, 17, 17, 13, 28.29498 + 13, 14, 16, 10, 12, 13, 13, 13, 16, 44, 52, 79, 95, 89, 93, 84, 28.29499 + 56, 52, 0, 77, 115, 104, 76, 107, 77, 87, 84, 64, 53, 52, 59, 57, 28.29500 + 60, 97, 209, 221, 214, 100, 97, 110, 111, 107, 119, 136, 151, 157, 162, 139, 28.29501 + 154, 161, 157, 144, 138, 122, 20, 17, 17, 14, 14, 16, 17, 17, 16, 18, 28.29502 + 30, 28, 18, 22, 46, 63, 44, 48, 28, 33, 30, 53, 37, 77, 26, 17, 28.29503 + 100, 53, 44, 42, 42, 38, 44, 36, 32, 33, 30, 32, 34, 34, 41, 37, 28.29504 + 29, 30, 33, 32, 34, 36, 34, 36, 34, 36, 38, 41, 45, 57, 64, 69, 28.29505 + 95, 45, 96, 120, 120, 123, 187, 212, 199, 111, 104, 116, 130, 138, 146, 162, 28.29506 + 170, 165, 143, 120, 57, 53, 22, 36, 25, 34, 9, 9, 9, 6, 6, 8, 28.29507 + 6, 5, 5, 5, 5, 5, 6, 8, 9, 9, 14, 14, 16, 17, 22, 24, 28.29508 + 26, 26, 34, 36, 44, 48, 51, 56, 61, 63, 75, 99, 103, 93, 85, 93, 28.29509 + 79, 84, 89, 84, 79, 87, 83, 85, 96, 102, 108, 103, 99, 96, 93, 97, 28.29510 + 100, 97, 93, 89, 93, 96, 52, 61, 126, 139, 103, 92, 96, 67, 55, 46, 28.29511 + 52, 51, 57, 49, 59, 81, 84, 72, 88, 91, 87, 76, 91, 93, 100, 112, 28.29512 + 103, 103, 96, 95, 91, 88, 72, 60, 59, 63, 52, 53, 48, 49, 46, 53, 28.29513 + 51, 53, 46, 59, 59, 102, 55, 42, 41, 37, 33, 30, 29, 28, 24, 20, 28.29514 + 22, 21, 20, 18, 20, 20, 20, 24, 6, 29, 29, 21, 40, 63, 102, 73, 28.29515 + 77, 84, 110, 135, 171, 177, 190, 199, 190, 181, 169, 165, 155, 159, 165, 151, 28.29516 + 143, 146, 150, 165, 177, 179, 190, 197, 201, 199, 201, 193, 195, 198, 195, 177, 28.29517 + 178, 183, 182, 104, 95, 89, 146, 136, 174, 199, 205, 208, 205, 205, 208, 208, 28.29518 + 205, 213, 216, 210, 212, 208, 212, 208, 198, 205, 202, 161, 123, 150, 65, 56, 28.29519 + 76, 80, 92, 88, 144, 166, 162, 163, 126, 153, 108, 110, 115, 118, 118, 136, 28.29520 + 146, 171, 170, 167, 154, 143, 127, 40, 9, 6, 12, 18, 28, 25, 32, 18, 28.29521 + 26, 28, 30, 40, 42, 44, 48, 55, 57, 49, 34, 49, 36, 122, 171, 170, 28.29522 + 120, 89, 41, 20, 16, 29, 34, 33, 30, 33, 40, 45, 52, 57, 72, 72, 28.29523 + 72, 226, 225, 224, 111, 104, 112, 120, 118, 127, 135, 138, 139, 136, 139, 147, 28.29524 + 132, 128, 20, 12, 9, 20, 29, 37, 38, 45, 59, 153, 161, 177, 183, 185, 28.29525 + 182, 190, 199, 204, 198, 199, 197, 195, 199, 201, 199, 195, 197, 194, 191, 187, 28.29526 + 193, 189, 193, 134, 102, 59, 69, 75, 107, 150, 177, 189, 189, 177, 170, 159, 28.29527 + 158, 161, 148, 139, 122, 108, 118, 116, 110, 119, 124, 100, 142, 169, 189, 195, 28.29528 + 201, 197, 190, 189, 183, 151, 122, 93, 107, 107, 97, 111, 107, 116, 104, 116, 28.29529 + 103, 99, 88, 61, 45, 26, 87, 107, 102, 96, 96, 100, 103, 110, 102, 100, 28.29530 + 92, 95, 96, 91, 89, 106, 106, 106, 108, 103, 92, 84, 41, 115, 130, 103, 28.29531 + 100, 130, 127, 122, 114, 100, 127, 154, 165, 171, 165, 169, 170, 165, 157, 143, 28.29532 + 122, 106, 99, 73, 65, 30, 44, 116, 124, 102, 104, 93, 118, 104, 107, 99, 28.29533 + 96, 89, 99, 115, 104, 97, 95, 106, 91, 93, 106, 81, 56, 2, 100, 118, 28.29534 + 127, 131, 96, 127, 123, 106, 110, 88, 75, 73, 95, 99, 102, 225, 234, 226, 28.29535 + 111, 107, 118, 116, 118, 116, 120, 120, 127, 127, 143, 161, 162, 157, 143, 134, 28.29536 + 115, 22, 21, 20, 38, 49, 51, 56, 53, 55, 53, 61, 53, 34, 59, 112, 28.29537 + 111, 95, 99, 100, 65, 42, 38, 42, 48, 51, 37, 67, 87, 95, 95, 102, 28.29538 + 110, 108, 93, 85, 93, 110, 118, 106, 99, 92, 91, 83, 83, 51, 51, 45, 28.29539 + 41, 44, 53, 63, 63, 63, 69, 84, 91, 85, 89, 99, 42, 120, 122, 130, 28.29540 + 128, 201, 218, 190, 110, 107, 116, 131, 138, 148, 161, 173, 166, 165, 138, 67, 28.29541 + 57, 17, 18, 26, 29, 53, 104, 107, 114, 115, 116, 120, 123, 123, 119, 80, 28.29542 + 49, 104, 132, 147, 140, 139, 142, 151, 144, 139, 136, 142, 131, 143, 159, 151, 28.29543 + 147, 143, 128, 122, 126, 134, 187, 198, 208, 194, 173, 139, 108, 100, 95, 103, 28.29544 + 111, 148, 166, 181, 161, 163, 159, 153, 162, 142, 139, 134, 132, 104, 89, 88, 28.29545 + 85, 42, 123, 148, 167, 169, 151, 154, 119, 115, 120, 132, 110, 110, 135, 171, 28.29546 + 177, 185, 186, 186, 186, 185, 175, 183, 189, 201, 206, 201, 189, 179, 144, 134, 28.29547 + 103, 99, 93, 97, 77, 22, 52, 128, 148, 118, 130, 122, 127, 119, 97, 110, 28.29548 + 51, 59, 138, 151, 140, 143, 155, 151, 140, 161, 163, 161, 131, 128, 167, 170, 28.29549 + 193, 194, 189, 186, 182, 177, 174, 118, 63, 87, 85, 148, 183, 193, 201, 210, 28.29550 + 208, 209, 212, 213, 206, 208, 208, 197, 191, 190, 189, 175, 170, 167, 167, 162, 28.29551 + 157, 153, 166, 171, 178, 191, 193, 177, 179, 171, 162, 171, 171, 170, 187, 167, 28.29552 + 181, 169, 142, 187, 229, 225, 234, 212, 233, 206, 228, 221, 232, 220, 220, 214, 28.29553 + 212, 210, 210, 205, 220, 217, 169, 122, 161, 159, 166, 97, 111, 84, 108, 195, 28.29554 + 199, 234, 197, 110, 111, 114, 130, 134, 140, 128, 138, 154, 174, 171, 158, 148, 28.29555 + 143, 127, 37, 10, 6, 24, 25, 40, 42, 44, 45, 49, 64, 67, 76, 68, 28.29556 + 77, 76, 81, 77, 79, 61, 51, 30, 61, 128, 165, 104, 71, 26, 21, 18, 28.29557 + 32, 46, 46, 46, 41, 45, 81, 91, 87, 87, 73, 71, 230, 228, 224, 111, 28.29558 + 103, 114, 120, 136, 142, 142, 143, 142, 140, 136, 144, 131, 128, 21, 9, 9, 28.29559 + 24, 40, 49, 118, 64, 124, 165, 186, 191, 191, 194, 202, 206, 212, 213, 218, 28.29560 + 226, 229, 230, 233, 234, 236, 234, 240, 233, 241, 242, 242, 236, 230, 230, 225, 28.29561 + 225, 224, 216, 216, 218, 216, 217, 212, 208, 201, 195, 193, 194, 186, 175, 166, 28.29562 + 150, 146, 103, 106, 135, 163, 183, 199, 209, 218, 217, 216, 218, 216, 214, 210, 28.29563 + 205, 199, 181, 130, 111, 97, 87, 92, 96, 102, 108, 107, 107, 104, 81, 59, 28.29564 + 28, 107, 100, 114, 107, 110, 108, 96, 95, 96, 104, 104, 81, 73, 115, 120, 28.29565 + 127, 126, 120, 104, 97, 108, 81, 44, 126, 126, 124, 106, 135, 103, 114, 130, 28.29566 + 146, 186, 212, 222, 220, 217, 216, 210, 205, 201, 193, 190, 171, 162, 103, 67, 28.29567 + 37, 115, 120, 103, 102, 111, 115, 119, 102, 99, 112, 118, 107, 85, 111, 110, 28.29568 + 107, 107, 106, 104, 106, 102, 95, 64, 0, 88, 114, 120, 115, 91, 93, 112, 28.29569 + 111, 92, 103, 107, 59, 95, 119, 102, 233, 240, 226, 110, 102, 112, 130, 136, 28.29570 + 140, 144, 143, 142, 143, 147, 162, 159, 151, 144, 135, 122, 20, 20, 20, 48, 28.29571 + 49, 61, 77, 73, 75, 67, 64, 59, 44, 96, 123, 131, 128, 131, 123, 115, 28.29572 + 106, 119, 112, 95, 99, 110, 118, 107, 112, 107, 115, 124, 126, 106, 116, 111, 28.29573 + 132, 150, 146, 139, 153, 151, 150, 111, 97, 93, 85, 83, 73, 81, 76, 65, 28.29574 + 53, 75, 80, 75, 73, 77, 99, 52, 119, 130, 130, 128, 222, 225, 195, 107, 28.29575 + 104, 114, 130, 140, 147, 161, 171, 166, 148, 142, 67, 68, 75, 79, 81, 110, 28.29576 + 107, 119, 123, 126, 124, 131, 116, 122, 123, 120, 123, 57, 140, 140, 143, 153, 28.29577 + 148, 170, 182, 194, 197, 204, 201, 202, 209, 214, 212, 208, 209, 208, 206, 205, 28.29578 + 208, 212, 212, 213, 210, 205, 198, 198, 174, 170, 183, 162, 171, 190, 195, 206, 28.29579 + 204, 199, 205, 198, 186, 186, 197, 187, 169, 107, 84, 99, 52, 138, 163, 154, 28.29580 + 169, 173, 158, 169, 165, 150, 165, 165, 191, 194, 208, 206, 216, 209, 209, 208, 28.29581 + 209, 213, 212, 216, 221, 218, 220, 217, 214, 212, 195, 179, 143, 116, 108, 77, 28.29582 + 18, 140, 161, 153, 159, 161, 154, 159, 154, 132, 87, 45, 153, 193, 198, 212, 28.29583 + 204, 202, 208, 214, 220, 220, 214, 217, 216, 216, 210, 213, 198, 208, 208, 199, 28.29584 + 170, 189, 171, 87, 76, 118, 177, 193, 199, 206, 208, 212, 217, 221, 220, 218, 28.29585 + 209, 217, 217, 187, 139, 167, 194, 190, 189, 183, 169, 171, 161, 150, 136, 138, 28.29586 + 118, 136, 123, 131, 155, 158, 124, 163, 166, 143, 159, 167, 146, 135, 144, 187, 28.29587 + 208, 174, 161, 136, 136, 140, 142, 171, 204, 209, 214, 209, 204, 205, 210, 213, 28.29588 + 154, 124, 119, 143, 157, 167, 79, 80, 84, 114, 185, 206, 241, 216, 116, 110, 28.29589 + 127, 135, 142, 154, 161, 165, 169, 167, 159, 158, 148, 143, 128, 33, 9, 6, 28.29590 + 20, 34, 36, 53, 44, 55, 65, 61, 65, 71, 71, 71, 56, 77, 64, 68, 28.29591 + 63, 48, 36, 49, 64, 144, 89, 51, 29, 24, 16, 41, 37, 37, 37, 32, 28.29592 + 72, 92, 88, 77, 76, 67, 68, 237, 230, 226, 106, 103, 119, 127, 142, 139, 28.29593 + 144, 147, 146, 140, 136, 142, 130, 127, 21, 10, 10, 20, 33, 106, 41, 59, 28.29594 + 71, 114, 174, 182, 189, 198, 201, 204, 209, 214, 220, 225, 226, 229, 232, 233, 28.29595 + 233, 236, 237, 234, 240, 240, 240, 234, 228, 220, 214, 217, 217, 222, 224, 218, 28.29596 + 214, 214, 210, 195, 197, 183, 174, 189, 177, 175, 130, 92, 128, 147, 174, 194, 28.29597 + 209, 210, 208, 202, 214, 220, 218, 221, 218, 218, 214, 213, 209, 205, 198, 179, 28.29598 + 155, 112, 89, 83, 93, 91, 91, 95, 93, 96, 64, 37, 110, 104, 114, 104, 28.29599 + 99, 88, 85, 85, 87, 85, 87, 64, 87, 127, 110, 96, 124, 124, 116, 89, 28.29600 + 85, 79, 44, 130, 127, 136, 127, 138, 140, 132, 157, 212, 225, 233, 230, 222, 28.29601 + 216, 206, 194, 169, 155, 131, 108, 88, 80, 148, 80, 48, 124, 115, 120, 126, 28.29602 + 122, 119, 114, 104, 115, 107, 95, 73, 110, 118, 115, 97, 99, 108, 103, 97, 28.29603 + 107, 76, 59, 0, 93, 87, 93, 107, 112, 112, 119, 127, 123, 110, 108, 65, 28.29604 + 92, 116, 102, 238, 242, 237, 112, 104, 115, 136, 144, 151, 158, 158, 158, 161, 28.29605 + 158, 155, 151, 147, 147, 138, 128, 22, 20, 22, 45, 68, 67, 64, 73, 73, 28.29606 + 76, 67, 67, 46, 104, 130, 135, 134, 130, 135, 122, 123, 127, 136, 127, 107, 28.29607 + 93, 116, 159, 187, 193, 201, 209, 214, 216, 210, 214, 221, 224, 222, 222, 230, 28.29608 + 229, 221, 216, 220, 201, 206, 204, 208, 199, 174, 95, 55, 51, 71, 71, 77, 28.29609 + 72, 100, 55, 107, 120, 132, 139, 228, 233, 222, 103, 99, 114, 128, 139, 150, 28.29610 + 159, 170, 171, 165, 175, 111, 102, 97, 102, 104, 114, 116, 132, 138, 143, 131, 28.29611 + 132, 130, 142, 131, 126, 122, 122, 95, 138, 128, 126, 143, 193, 201, 202, 190, 28.29612 + 198, 210, 206, 216, 204, 202, 217, 204, 217, 217, 209, 205, 204, 198, 201, 202, 28.29613 + 206, 214, 205, 199, 157, 159, 190, 204, 205, 205, 198, 214, 195, 183, 150, 153, 28.29614 + 138, 128, 142, 131, 116, 73, 96, 53, 126, 140, 157, 150, 153, 166, 150, 144, 28.29615 + 157, 179, 187, 204, 206, 201, 202, 191, 201, 205, 209, 202, 201, 195, 189, 191, 28.29616 + 195, 199, 209, 212, 212, 212, 209, 202, 153, 110, 92, 18, 140, 161, 154, 153, 28.29617 + 150, 147, 148, 158, 151, 114, 61, 159, 194, 197, 190, 208, 214, 225, 225, 218, 28.29618 + 218, 222, 218, 206, 201, 206, 197, 193, 186, 174, 178, 170, 165, 148, 99, 87, 28.29619 + 142, 174, 191, 198, 204, 206, 218, 217, 193, 183, 170, 155, 157, 155, 140, 116, 28.29620 + 142, 165, 202, 191, 169, 157, 142, 139, 138, 136, 132, 127, 135, 135, 140, 142, 28.29621 + 150, 151, 155, 159, 134, 128, 155, 171, 146, 134, 130, 134, 127, 120, 119, 112, 28.29622 + 112, 112, 111, 114, 116, 119, 124, 130, 127, 120, 122, 118, 114, 135, 89, 103, 28.29623 + 112, 68, 72, 87, 99, 199, 210, 206, 191, 146, 114, 120, 140, 162, 165, 166, 28.29624 + 170, 170, 166, 159, 153, 147, 143, 130, 32, 9, 6, 24, 40, 34, 49, 51, 28.29625 + 63, 44, 76, 80, 60, 53, 60, 55, 65, 65, 64, 69, 49, 36, 21, 52, 28.29626 + 139, 85, 51, 24, 18, 18, 40, 40, 37, 36, 37, 80, 92, 84, 75, 71, 28.29627 + 67, 67, 241, 234, 230, 112, 103, 119, 130, 139, 142, 150, 147, 142, 134, 134, 28.29628 + 138, 131, 124, 18, 9, 10, 20, 38, 55, 52, 60, 114, 146, 181, 181, 135, 28.29629 + 167, 144, 148, 148, 146, 140, 139, 138, 136, 131, 132, 130, 127, 126, 134, 127, 28.29630 + 122, 122, 123, 116, 114, 115, 116, 171, 187, 220, 191, 185, 179, 165, 140, 115, 28.29631 + 108, 107, 108, 114, 107, 104, 122, 126, 182, 208, 209, 212, 218, 193, 177, 183, 28.29632 + 181, 167, 157, 147, 151, 150, 153, 154, 177, 191, 191, 194, 122, 99, 72, 87, 28.29633 + 85, 61, 76, 84, 93, 69, 34, 84, 104, 118, 97, 84, 92, 97, 85, 80, 28.29634 + 75, 92, 59, 81, 128, 126, 100, 104, 115, 93, 93, 89, 77, 55, 134, 136, 28.29635 + 120, 132, 138, 143, 151, 216, 236, 238, 232, 222, 197, 147, 120, 106, 99, 92, 28.29636 + 89, 77, 57, 60, 80, 72, 29, 81, 112, 110, 112, 103, 96, 91, 97, 95, 28.29637 + 111, 99, 56, 103, 114, 108, 99, 108, 103, 102, 96, 107, 79, 53, 0, 92, 28.29638 + 96, 111, 110, 110, 100, 102, 111, 110, 115, 81, 46, 97, 127, 91, 237, 242, 28.29639 + 238, 116, 106, 115, 142, 147, 155, 155, 165, 165, 170, 165, 165, 161, 150, 144, 28.29640 + 140, 128, 18, 17, 18, 45, 72, 69, 67, 72, 75, 91, 67, 67, 37, 99, 28.29641 + 126, 126, 128, 134, 132, 128, 132, 122, 119, 106, 67, 118, 136, 123, 179, 202, 28.29642 + 209, 216, 214, 220, 221, 225, 225, 229, 230, 234, 234, 230, 230, 229, 226, 228, 28.29643 + 226, 225, 222, 220, 195, 104, 61, 56, 72, 80, 71, 81, 96, 56, 79, 114, 28.29644 + 130, 128, 236, 238, 232, 106, 99, 114, 128, 139, 148, 161, 170, 174, 170, 146, 28.29645 + 177, 143, 148, 191, 204, 209, 210, 210, 212, 212, 209, 209, 212, 209, 204, 197, 28.29646 + 153, 119, 122, 126, 85, 139, 147, 146, 208, 217, 199, 214, 216, 216, 191, 175, 28.29647 + 155, 165, 186, 204, 202, 201, 185, 186, 165, 177, 174, 170, 169, 166, 153, 139, 28.29648 + 177, 204, 213, 212, 201, 198, 175, 154, 130, 123, 123, 120, 119, 122, 128, 80, 28.29649 + 73, 88, 49, 126, 142, 157, 165, 147, 154, 162, 131, 148, 178, 194, 212, 214, 28.29650 + 190, 179, 153, 151, 150, 155, 148, 147, 139, 135, 134, 136, 139, 157, 163, 166, 28.29651 + 177, 187, 198, 183, 123, 95, 24, 96, 163, 153, 150, 153, 147, 153, 153, 155, 28.29652 + 127, 57, 153, 191, 204, 208, 225, 241, 212, 224, 224, 222, 216, 202, 193, 205, 28.29653 + 198, 190, 182, 119, 107, 103, 95, 106, 103, 93, 88, 136, 179, 191, 206, 214, 28.29654 + 195, 183, 162, 138, 143, 134, 135, 136, 134, 140, 108, 118, 158, 171, 201, 181, 28.29655 + 158, 163, 139, 138, 130, 140, 139, 144, 143, 142, 144, 148, 150, 155, 148, 123, 28.29656 + 122, 136, 166, 147, 153, 127, 124, 123, 123, 122, 123, 119, 112, 112, 106, 112, 28.29657 + 107, 114, 111, 112, 114, 115, 127, 120, 81, 80, 122, 110, 45, 63, 73, 81, 28.29658 + 199, 213, 236, 195, 119, 111, 132, 147, 162, 169, 165, 167, 167, 167, 161, 155, 28.29659 + 150, 143, 123, 25, 8, 5, 18, 36, 42, 48, 52, 63, 45, 77, 75, 55, 28.29660 + 61, 51, 52, 64, 81, 79, 59, 44, 36, 24, 53, 124, 88, 72, 49, 25, 28.29661 + 20, 36, 30, 37, 25, 30, 88, 95, 77, 81, 73, 67, 60, 242, 236, 230, 28.29662 + 111, 104, 116, 131, 138, 143, 144, 138, 134, 131, 134, 134, 128, 120, 18, 10, 28.29663 + 8, 18, 33, 37, 55, 34, 71, 104, 136, 111, 147, 123, 111, 111, 115, 114, 28.29664 + 103, 112, 116, 114, 106, 107, 107, 108, 106, 106, 103, 106, 103, 103, 103, 103, 28.29665 + 102, 103, 107, 108, 108, 106, 103, 102, 102, 100, 102, 103, 106, 108, 111, 114, 28.29666 + 118, 123, 126, 198, 208, 206, 209, 190, 157, 131, 116, 111, 112, 111, 108, 112, 28.29667 + 115, 115, 118, 122, 139, 140, 170, 165, 102, 72, 95, 75, 87, 87, 81, 88, 28.29668 + 65, 37, 102, 114, 111, 97, 100, 92, 115, 85, 76, 73, 87, 56, 89, 128, 28.29669 + 120, 100, 88, 91, 84, 89, 88, 75, 49, 124, 136, 127, 150, 144, 153, 214, 28.29670 + 234, 242, 241, 222, 167, 97, 87, 79, 79, 79, 77, 68, 63, 49, 44, 61, 28.29671 + 72, 48, 85, 107, 114, 100, 95, 91, 91, 89, 93, 102, 91, 68, 104, 116, 28.29672 + 100, 100, 111, 111, 97, 103, 108, 93, 53, 4, 89, 107, 112, 103, 118, 127, 28.29673 + 120, 116, 114, 107, 80, 46, 89, 108, 88, 241, 245, 240, 116, 107, 115, 142, 28.29674 + 151, 159, 161, 169, 174, 175, 173, 167, 161, 151, 146, 138, 124, 16, 18, 21, 28.29675 + 44, 68, 64, 72, 71, 83, 80, 71, 61, 49, 92, 126, 127, 116, 126, 134, 28.29676 + 127, 130, 116, 103, 96, 68, 114, 132, 147, 132, 154, 174, 208, 218, 218, 220, 28.29677 + 225, 232, 232, 234, 224, 241, 241, 237, 226, 237, 238, 234, 212, 240, 240, 195, 28.29678 + 103, 55, 46, 80, 84, 71, 84, 95, 69, 63, 119, 130, 127, 237, 242, 236, 28.29679 + 107, 100, 112, 126, 139, 151, 158, 170, 175, 175, 169, 185, 190, 197, 204, 210, 28.29680 + 214, 213, 212, 212, 210, 212, 210, 210, 209, 206, 202, 201, 191, 144, 131, 130, 28.29681 + 128, 97, 123, 135, 151, 138, 131, 132, 122, 115, 112, 108, 114, 111, 118, 116, 28.29682 + 114, 112, 112, 111, 108, 111, 116, 115, 114, 151, 139, 174, 210, 208, 199, 202, 28.29683 + 154, 128, 124, 122, 119, 126, 126, 128, 138, 111, 69, 60, 73, 40, 127, 142, 28.29684 + 153, 155, 154, 151, 161, 157, 163, 193, 193, 182, 189, 174, 139, 118, 115, 114, 28.29685 + 114, 114, 114, 111, 110, 111, 112, 112, 116, 118, 122, 126, 132, 142, 181, 150, 28.29686 + 104, 22, 111, 162, 157, 153, 151, 148, 148, 146, 155, 127, 64, 92, 111, 175, 28.29687 + 194, 185, 174, 161, 138, 130, 119, 103, 97, 102, 97, 100, 96, 89, 85, 85, 28.29688 + 81, 81, 80, 80, 93, 89, 138, 181, 190, 193, 186, 144, 138, 122, 123, 138, 28.29689 + 142, 143, 138, 148, 134, 99, 102, 128, 147, 171, 214, 177, 162, 154, 147, 142, 28.29690 + 139, 143, 142, 140, 140, 144, 144, 139, 130, 154, 123, 88, 122, 142, 158, 159, 28.29691 + 169, 147, 155, 132, 150, 144, 139, 130, 126, 122, 123, 120, 115, 126, 116, 120, 28.29692 + 127, 122, 79, 72, 73, 102, 118, 22, 57, 79, 65, 195, 216, 242, 189, 127, 28.29693 + 115, 132, 155, 165, 169, 170, 171, 177, 169, 162, 155, 148, 140, 126, 29, 8, 28.29694 + 6, 18, 33, 36, 40, 48, 59, 41, 65, 69, 49, 71, 52, 41, 56, 42, 28.29695 + 46, 53, 41, 38, 29, 61, 119, 114, 87, 61, 46, 34, 36, 32, 33, 25, 28.29696 + 56, 87, 88, 81, 76, 72, 61, 59, 245, 237, 236, 107, 104, 116, 128, 138, 28.29697 + 143, 134, 132, 131, 140, 139, 139, 132, 126, 18, 9, 8, 20, 29, 37, 67, 28.29698 + 53, 36, 65, 103, 111, 118, 124, 111, 112, 99, 110, 115, 111, 110, 108, 112, 28.29699 + 114, 114, 114, 114, 111, 114, 115, 116, 118, 120, 122, 120, 116, 104, 103, 100, 28.29700 + 103, 103, 104, 103, 107, 112, 116, 120, 123, 126, 127, 124, 128, 120, 150, 210, 28.29701 + 186, 159, 138, 111, 127, 127, 126, 124, 124, 124, 124, 124, 123, 122, 120, 114, 28.29702 + 116, 120, 143, 108, 75, 87, 76, 79, 81, 84, 88, 67, 38, 100, 114, 114, 28.29703 + 110, 108, 87, 111, 88, 75, 84, 87, 52, 83, 119, 115, 104, 103, 99, 96, 28.29704 + 91, 88, 77, 55, 132, 140, 154, 135, 147, 202, 233, 244, 244, 234, 170, 114, 28.29705 + 80, 67, 57, 52, 49, 53, 51, 51, 38, 45, 51, 75, 49, 56, 118, 115, 28.29706 + 96, 93, 93, 97, 93, 88, 99, 96, 65, 103, 114, 99, 110, 112, 100, 97, 28.29707 + 104, 102, 103, 57, 1, 96, 102, 116, 100, 104, 100, 106, 112, 116, 97, 72, 28.29708 + 57, 80, 118, 91, 240, 246, 241, 114, 103, 115, 140, 154, 161, 167, 173, 182, 28.29709 + 183, 181, 170, 165, 154, 147, 136, 126, 16, 16, 20, 41, 69, 71, 68, 75, 28.29710 + 79, 84, 69, 61, 49, 93, 123, 124, 126, 131, 124, 130, 126, 115, 102, 106, 28.29711 + 63, 107, 139, 126, 146, 143, 144, 146, 157, 162, 157, 146, 144, 146, 146, 147, 28.29712 + 165, 158, 154, 169, 177, 151, 147, 161, 177, 142, 126, 96, 48, 51, 83, 83, 28.29713 + 77, 84, 87, 92, 42, 106, 120, 126, 240, 242, 238, 111, 100, 112, 127, 138, 28.29714 + 151, 161, 171, 178, 178, 174, 170, 142, 186, 197, 202, 210, 212, 212, 212, 210, 28.29715 + 210, 210, 209, 209, 209, 205, 201, 194, 191, 182, 177, 131, 127, 126, 95, 97, 28.29716 + 104, 112, 97, 110, 108, 110, 107, 108, 107, 112, 111, 111, 112, 112, 114, 114, 28.29717 + 114, 116, 119, 119, 148, 143, 167, 199, 191, 195, 140, 126, 126, 123, 132, 131, 28.29718 + 135, 132, 139, 138, 100, 57, 57, 79, 45, 124, 142, 150, 148, 155, 151, 139, 28.29719 + 147, 166, 166, 173, 154, 154, 124, 114, 122, 124, 123, 119, 120, 118, 122, 120, 28.29720 + 120, 120, 120, 118, 118, 119, 119, 118, 119, 131, 163, 111, 26, 102, 155, 153, 28.29721 + 157, 154, 153, 153, 151, 148, 135, 103, 84, 88, 88, 95, 93, 88, 95, 96, 28.29722 + 87, 87, 84, 88, 84, 89, 89, 87, 85, 87, 93, 116, 119, 122, 120, 97, 28.29723 + 91, 142, 206, 198, 163, 126, 126, 132, 139, 146, 140, 143, 142, 142, 153, 123, 28.29724 + 85, 72, 112, 139, 142, 154, 208, 175, 157, 158, 155, 150, 151, 151, 158, 155, 28.29725 + 158, 157, 154, 147, 123, 122, 114, 118, 131, 131, 147, 158, 159, 150, 139, 189, 28.29726 + 195, 157, 154, 139, 139, 139, 134, 140, 140, 140, 142, 138, 77, 67, 65, 84, 28.29727 + 93, 111, 14, 60, 56, 72, 197, 217, 244, 162, 132, 114, 134, 157, 165, 169, 28.29728 + 173, 174, 179, 174, 170, 153, 147, 139, 127, 28, 9, 6, 22, 30, 38, 49, 28.29729 + 42, 53, 46, 73, 72, 45, 65, 59, 42, 42, 84, 44, 52, 37, 38, 21, 28.29730 + 51, 116, 114, 80, 81, 64, 53, 55, 28, 28, 21, 60, 87, 81, 83, 67, 28.29731 + 88, 91, 61, 245, 237, 238, 112, 99, 118, 128, 139, 132, 143, 146, 147, 154, 28.29732 + 153, 146, 135, 130, 18, 9, 8, 20, 33, 38, 51, 41, 61, 32, 49, 103, 28.29733 + 72, 83, 97, 110, 128, 139, 116, 119, 122, 144, 123, 127, 131, 140, 128, 127, 28.29734 + 130, 144, 134, 136, 144, 146, 139, 139, 130, 122, 119, 119, 120, 120, 122, 126, 28.29735 + 131, 138, 140, 144, 146, 146, 134, 130, 107, 124, 139, 131, 108, 132, 132, 150, 28.29736 + 147, 136, 135, 136, 134, 135, 135, 135, 132, 132, 127, 126, 123, 119, 122, 77, 28.29737 + 72, 87, 75, 79, 84, 84, 68, 44, 95, 108, 108, 107, 110, 95, 115, 100, 28.29738 + 73, 80, 75, 48, 79, 119, 116, 89, 99, 77, 106, 104, 104, 93, 89, 135, 28.29739 + 163, 157, 157, 190, 225, 244, 246, 241, 218, 130, 87, 63, 38, 37, 44, 38, 28.29740 + 38, 42, 49, 45, 49, 46, 112, 52, 51, 116, 111, 95, 96, 97, 99, 97, 28.29741 + 93, 91, 93, 60, 99, 115, 102, 111, 104, 97, 97, 97, 106, 83, 55, 1, 28.29742 + 95, 102, 95, 103, 103, 106, 107, 114, 108, 96, 60, 68, 83, 115, 111, 245, 28.29743 + 248, 242, 120, 104, 115, 139, 151, 161, 169, 175, 183, 182, 181, 181, 167, 150, 28.29744 + 146, 138, 127, 16, 18, 18, 41, 67, 68, 71, 76, 85, 80, 69, 65, 48, 28.29745 + 81, 112, 126, 127, 126, 130, 131, 114, 93, 93, 84, 63, 114, 131, 127, 148, 28.29746 + 148, 131, 134, 136, 134, 134, 138, 134, 131, 134, 138, 136, 139, 140, 142, 140, 28.29747 + 143, 132, 135, 131, 131, 106, 72, 42, 40, 83, 80, 76, 81, 84, 88, 30, 28.29748 + 104, 130, 128, 241, 246, 241, 114, 103, 115, 131, 139, 151, 161, 171, 178, 181, 28.29749 + 178, 171, 173, 154, 150, 148, 146, 144, 142, 140, 140, 139, 138, 138, 139, 135, 28.29750 + 134, 132, 131, 134, 136, 138, 132, 136, 127, 128, 123, 126, 126, 123, 122, 120, 28.29751 + 120, 119, 118, 120, 120, 119, 119, 120, 123, 123, 123, 124, 126, 128, 130, 123, 28.29752 + 139, 136, 177, 208, 142, 130, 134, 138, 142, 142, 144, 142, 142, 143, 139, 89, 28.29753 + 55, 55, 75, 25, 119, 138, 147, 151, 144, 143, 140, 142, 138, 134, 127, 128, 28.29754 + 126, 116, 110, 104, 107, 119, 118, 128, 127, 127, 128, 131, 130, 131, 130, 131, 28.29755 + 131, 131, 128, 126, 123, 169, 122, 68, 71, 140, 161, 159, 150, 144, 147, 148, 28.29756 + 143, 143, 124, 61, 107, 103, 92, 95, 99, 99, 100, 97, 107, 104, 108, 111, 28.29757 + 114, 115, 116, 119, 115, 120, 128, 131, 134, 131, 111, 103, 135, 182, 175, 140, 28.29758 + 122, 139, 142, 147, 146, 147, 144, 144, 146, 147, 106, 67, 71, 103, 122, 127, 28.29759 + 143, 162, 193, 174, 147, 136, 163, 162, 162, 162, 166, 166, 169, 165, 162, 151, 28.29760 + 142, 123, 88, 124, 130, 134, 136, 148, 144, 140, 198, 187, 179, 175, 157, 147, 28.29761 + 147, 151, 140, 146, 151, 144, 134, 73, 63, 59, 75, 93, 99, 17, 51, 49, 28.29762 + 60, 206, 222, 230, 170, 122, 115, 135, 154, 165, 170, 171, 173, 178, 174, 169, 28.29763 + 157, 146, 142, 130, 30, 9, 9, 26, 38, 41, 46, 48, 51, 45, 69, 63, 28.29764 + 46, 51, 59, 55, 41, 42, 48, 40, 36, 32, 18, 49, 111, 96, 61, 63, 28.29765 + 64, 38, 92, 55, 26, 20, 71, 88, 75, 76, 67, 83, 72, 60, 245, 241, 28.29766 + 240, 111, 99, 115, 128, 142, 144, 157, 161, 166, 167, 161, 148, 138, 132, 18, 28.29767 + 9, 10, 16, 25, 36, 34, 51, 77, 52, 34, 46, 91, 89, 92, 171, 185, 28.29768 + 166, 118, 138, 165, 130, 134, 143, 155, 138, 139, 143, 154, 140, 144, 151, 146, 28.29769 + 150, 153, 151, 148, 143, 140, 139, 139, 143, 146, 147, 150, 153, 158, 158, 157, 28.29770 + 158, 151, 132, 139, 106, 104, 142, 136, 107, 76, 68, 83, 110, 127, 161, 138, 28.29771 + 140, 159, 142, 142, 140, 138, 136, 132, 123, 139, 95, 59, 80, 84, 81, 75, 28.29772 + 91, 71, 44, 51, 104, 110, 120, 110, 93, 115, 99, 67, 84, 69, 48, 106, 28.29773 + 108, 116, 104, 111, 107, 123, 143, 159, 166, 175, 201, 216, 222, 226, 229, 242, 28.29774 + 246, 248, 241, 178, 102, 53, 63, 53, 65, 55, 65, 61, 57, 56, 56, 56, 28.29775 + 60, 59, 67, 45, 92, 107, 99, 99, 102, 99, 104, 99, 93, 93, 56, 96, 28.29776 + 107, 99, 110, 103, 99, 100, 100, 107, 88, 53, 4, 91, 106, 108, 114, 111, 28.29777 + 111, 111, 111, 112, 85, 41, 53, 77, 112, 96, 244, 249, 245, 118, 104, 114, 28.29778 + 142, 154, 159, 167, 174, 179, 182, 181, 179, 170, 151, 144, 139, 127, 14, 16, 28.29779 + 22, 37, 61, 65, 71, 72, 80, 71, 72, 61, 46, 75, 104, 119, 132, 124, 28.29780 + 123, 116, 114, 91, 96, 89, 51, 116, 130, 135, 126, 127, 119, 120, 157, 158, 28.29781 + 131, 140, 143, 147, 148, 148, 142, 142, 144, 144, 142, 136, 138, 135, 132, 120, 28.29782 + 103, 52, 38, 40, 80, 84, 77, 85, 85, 87, 37, 103, 123, 131, 238, 246, 28.29783 + 244, 114, 104, 116, 131, 140, 151, 162, 173, 177, 179, 178, 165, 155, 126, 102, 28.29784 + 95, 112, 114, 127, 127, 128, 124, 124, 122, 120, 115, 115, 116, 116, 114, 115, 28.29785 + 112, 112, 111, 111, 108, 114, 124, 116, 116, 178, 127, 119, 120, 127, 126, 128, 28.29786 + 130, 128, 130, 131, 134, 134, 134, 134, 136, 138, 136, 144, 138, 139, 136, 134, 28.29787 + 139, 148, 153, 153, 153, 151, 150, 148, 146, 128, 72, 53, 46, 75, 44, 100, 28.29788 + 136, 136, 147, 146, 147, 146, 135, 127, 119, 111, 99, 95, 84, 81, 85, 87, 28.29789 + 96, 108, 114, 119, 130, 128, 135, 135, 136, 134, 136, 138, 140, 139, 136, 134, 28.29790 + 131, 140, 95, 34, 114, 140, 123, 124, 140, 144, 147, 143, 139, 123, 95, 123, 28.29791 + 108, 92, 118, 116, 157, 106, 114, 119, 120, 120, 123, 127, 126, 128, 127, 126, 28.29792 + 126, 136, 138, 140, 140, 134, 108, 126, 171, 142, 135, 146, 151, 155, 151, 158, 28.29793 + 159, 151, 157, 158, 150, 92, 65, 65, 79, 107, 126, 134, 146, 186, 191, 165, 28.29794 + 140, 140, 159, 171, 170, 170, 174, 174, 177, 177, 173, 155, 134, 104, 110, 102, 28.29795 + 128, 136, 136, 146, 151, 197, 198, 195, 165, 169, 155, 154, 154, 158, 155, 153, 28.29796 + 142, 142, 65, 57, 55, 64, 68, 75, 10, 46, 48, 53, 206, 224, 236, 142, 28.29797 + 123, 114, 134, 147, 162, 167, 169, 171, 178, 175, 173, 158, 150, 140, 131, 26, 28.29798 + 8, 6, 21, 38, 44, 44, 59, 63, 36, 68, 56, 48, 48, 49, 59, 42, 28.29799 + 38, 37, 36, 34, 32, 21, 46, 115, 130, 73, 72, 72, 73, 44, 55, 29, 28.29800 + 16, 68, 83, 75, 75, 67, 76, 67, 56, 248, 244, 240, 111, 100, 115, 130, 28.29801 + 146, 154, 166, 171, 170, 171, 163, 151, 138, 132, 14, 9, 8, 16, 33, 36, 28.29802 + 34, 40, 55, 53, 37, 36, 72, 79, 88, 199, 195, 132, 110, 120, 140, 138, 28.29803 + 158, 163, 143, 143, 153, 158, 148, 154, 150, 158, 157, 155, 167, 167, 170, 163, 28.29804 + 155, 153, 153, 159, 162, 161, 165, 165, 167, 169, 169, 167, 163, 146, 147, 148, 28.29805 + 142, 111, 64, 41, 29, 33, 44, 83, 118, 138, 178, 185, 185, 173, 177, 175, 28.29806 + 162, 142, 139, 131, 122, 111, 64, 59, 79, 77, 76, 77, 75, 59, 45, 96, 28.29807 + 97, 85, 108, 99, 100, 76, 76, 72, 57, 71, 103, 100, 142, 155, 183, 206, 28.29808 + 228, 232, 244, 245, 250, 249, 252, 252, 250, 250, 250, 250, 246, 222, 143, 99, 28.29809 + 68, 36, 57, 59, 60, 59, 59, 59, 60, 65, 63, 57, 60, 64, 57, 88, 28.29810 + 114, 108, 108, 110, 104, 111, 103, 91, 88, 59, 96, 111, 100, 103, 108, 103, 28.29811 + 118, 107, 97, 93, 51, 5, 96, 118, 106, 122, 118, 112, 118, 114, 106, 87, 28.29812 + 42, 56, 80, 110, 92, 244, 249, 245, 115, 104, 114, 139, 151, 158, 166, 171, 28.29813 + 175, 182, 181, 181, 173, 153, 146, 139, 128, 13, 18, 18, 37, 64, 67, 73, 28.29814 + 69, 69, 75, 68, 61, 57, 63, 100, 103, 107, 103, 104, 104, 87, 91, 93, 28.29815 + 89, 57, 87, 124, 127, 120, 119, 116, 115, 123, 106, 115, 179, 140, 132, 136, 28.29816 + 151, 154, 157, 157, 159, 159, 162, 153, 158, 127, 119, 104, 44, 34, 38, 71, 28.29817 + 69, 85, 89, 73, 84, 55, 96, 119, 131, 230, 248, 245, 114, 104, 115, 131, 28.29818 + 142, 151, 161, 173, 178, 179, 175, 165, 134, 76, 48, 45, 45, 83, 102, 115, 28.29819 + 114, 118, 116, 115, 115, 116, 115, 118, 119, 118, 114, 72, 83, 107, 104, 106, 28.29820 + 106, 107, 115, 116, 182, 183, 128, 112, 131, 142, 132, 132, 135, 135, 136, 139, 28.29821 + 140, 142, 143, 144, 144, 144, 138, 142, 135, 128, 150, 155, 158, 159, 154, 154, 28.29822 + 153, 148, 150, 143, 99, 52, 45, 45, 69, 46, 76, 130, 132, 132, 123, 107, 28.29823 + 88, 92, 93, 95, 77, 93, 92, 91, 91, 102, 95, 88, 84, 104, 123, 131, 28.29824 + 175, 178, 174, 155, 162, 174, 161, 161, 157, 146, 144, 132, 161, 118, 64, 57, 28.29825 + 122, 142, 127, 127, 128, 142, 144, 143, 110, 91, 92, 114, 119, 103, 118, 158, 28.29826 + 175, 115, 115, 124, 135, 131, 131, 134, 134, 132, 132, 134, 138, 144, 144, 146, 28.29827 + 144, 139, 106, 112, 143, 151, 154, 161, 161, 161, 158, 158, 158, 158, 157, 123, 28.29828 + 76, 68, 63, 63, 107, 111, 127, 135, 142, 194, 179, 148, 132, 143, 161, 169, 28.29829 + 175, 177, 181, 182, 182, 182, 175, 148, 107, 100, 102, 127, 135, 147, 142, 158, 28.29830 + 206, 204, 222, 171, 173, 161, 155, 158, 157, 158, 153, 139, 138, 59, 53, 52, 28.29831 + 45, 88, 87, 14, 20, 40, 46, 213, 222, 238, 144, 107, 116, 136, 151, 159, 28.29832 + 163, 166, 174, 177, 174, 170, 161, 143, 138, 128, 30, 8, 8, 22, 36, 37, 28.29833 + 44, 40, 49, 37, 73, 73, 46, 33, 33, 36, 33, 34, 30, 33, 34, 32, 28.29834 + 28, 51, 69, 91, 77, 17, 25, 21, 21, 20, 22, 14, 36, 61, 60, 51, 28.29835 + 51, 68, 59, 56, 248, 245, 241, 108, 100, 112, 128, 144, 157, 170, 173, 170, 28.29836 + 171, 165, 151, 138, 131, 14, 8, 9, 16, 18, 28, 30, 29, 34, 29, 32, 28.29837 + 41, 75, 88, 84, 202, 201, 175, 116, 119, 126, 143, 144, 151, 163, 161, 150, 28.29838 + 163, 154, 158, 157, 157, 163, 175, 178, 185, 190, 191, 186, 167, 165, 167, 174, 28.29839 + 173, 174, 174, 174, 175, 177, 174, 170, 151, 151, 150, 116, 64, 29, 30, 26, 28.29840 + 22, 30, 61, 91, 126, 182, 185, 199, 189, 183, 158, 178, 170, 157, 139, 126, 28.29841 + 123, 76, 49, 57, 73, 76, 75, 71, 72, 63, 56, 60, 67, 65, 69, 68, 28.29842 + 69, 69, 59, 88, 100, 130, 189, 222, 240, 245, 246, 249, 252, 255, 255, 255, 28.29843 + 253, 255, 255, 255, 253, 253, 250, 241, 182, 134, 103, 64, 33, 56, 53, 53, 28.29844 + 53, 57, 56, 59, 59, 64, 57, 64, 61, 59, 59, 76, 81, 79, 91, 85, 28.29845 + 88, 87, 85, 89, 56, 92, 99, 99, 87, 92, 92, 95, 89, 91, 77, 51, 28.29846 + 5, 89, 102, 106, 111, 106, 104, 104, 104, 92, 84, 37, 61, 75, 108, 87, 28.29847 + 244, 248, 244, 114, 100, 115, 140, 151, 159, 165, 167, 170, 179, 181, 181, 167, 28.29848 + 157, 146, 138, 126, 12, 17, 18, 37, 60, 60, 60, 69, 72, 71, 79, 73, 28.29849 + 69, 69, 76, 83, 76, 80, 84, 88, 81, 87, 93, 80, 52, 92, 119, 115, 28.29850 + 112, 112, 115, 115, 116, 112, 102, 183, 186, 132, 131, 138, 143, 153, 157, 161, 28.29851 + 161, 155, 159, 155, 132, 120, 104, 40, 33, 37, 57, 60, 71, 80, 65, 67, 28.29852 + 61, 67, 96, 127, 234, 246, 242, 119, 104, 115, 131, 143, 148, 159, 173, 179, 28.29853 + 178, 187, 154, 88, 55, 36, 29, 25, 46, 96, 140, 169, 174, 167, 126, 159, 28.29854 + 161, 158, 154, 128, 124, 119, 88, 63, 97, 103, 104, 103, 108, 112, 111, 170, 28.29855 + 193, 179, 120, 123, 139, 140, 142, 142, 144, 144, 146, 148, 148, 148, 148, 153, 28.29856 + 151, 148, 146, 147, 161, 159, 161, 158, 154, 142, 136, 128, 116, 114, 92, 57, 28.29857 + 44, 41, 45, 68, 46, 67, 77, 84, 77, 85, 92, 89, 99, 103, 106, 85, 28.29858 + 114, 108, 110, 104, 102, 100, 100, 100, 108, 126, 185, 194, 195, 187, 179, 179, 28.29859 + 181, 178, 171, 175, 165, 153, 144, 131, 134, 91, 34, 72, 142, 143, 123, 130, 28.29860 + 127, 124, 143, 127, 92, 85, 111, 118, 110, 122, 158, 183, 170, 112, 115, 134, 28.29861 + 136, 140, 140, 138, 142, 139, 138, 150, 155, 158, 155, 154, 148, 151, 159, 159, 28.29862 + 162, 162, 158, 155, 148, 142, 135, 131, 130, 110, 73, 59, 55, 64, 61, 97, 28.29863 + 100, 114, 120, 119, 159, 198, 174, 140, 132, 144, 161, 166, 174, 179, 182, 182, 28.29864 + 186, 183, 170, 132, 96, 114, 124, 138, 143, 142, 181, 221, 221, 197, 183, 178, 28.29865 + 165, 163, 166, 165, 155, 153, 138, 134, 55, 51, 48, 68, 85, 99, 5, 5, 28.29866 + 33, 46, 201, 224, 238, 134, 104, 114, 135, 151, 161, 165, 173, 174, 177, 169, 28.29867 + 162, 162, 144, 136, 130, 33, 6, 9, 22, 22, 38, 42, 36, 45, 40, 65, 28.29868 + 59, 32, 33, 32, 36, 32, 32, 30, 34, 33, 28, 26, 34, 22, 12, 10, 28.29869 + 10, 13, 10, 8, 10, 10, 14, 20, 21, 25, 32, 32, 38, 59, 57, 246, 28.29870 + 245, 240, 108, 99, 114, 134, 144, 157, 170, 177, 175, 167, 162, 148, 136, 126, 28.29871 + 13, 8, 8, 13, 12, 26, 29, 22, 24, 24, 22, 28, 41, 79, 84, 209, 28.29872 + 204, 201, 118, 112, 124, 140, 171, 170, 151, 162, 158, 159, 165, 169, 171, 175, 28.29873 + 178, 182, 186, 177, 161, 181, 190, 197, 189, 170, 186, 185, 183, 178, 190, 185, 28.29874 + 181, 185, 181, 187, 157, 153, 106, 49, 29, 22, 20, 18, 20, 52, 85, 122, 28.29875 + 189, 197, 170, 175, 191, 189, 167, 165, 169, 143, 131, 138, 85, 49, 49, 65, 28.29876 + 71, 69, 65, 67, 65, 71, 69, 65, 69, 69, 67, 72, 55, 99, 108, 154, 28.29877 + 225, 246, 248, 248, 250, 252, 253, 255, 255, 248, 241, 237, 237, 236, 232, 229, 28.29878 + 222, 218, 186, 148, 138, 110, 64, 60, 53, 59, 57, 57, 63, 60, 61, 63, 28.29879 + 63, 64, 65, 63, 61, 69, 69, 71, 72, 71, 73, 72, 72, 71, 71, 67, 28.29880 + 68, 59, 68, 68, 72, 56, 63, 61, 57, 49, 56, 8, 28, 51, 55, 59, 28.29881 + 57, 59, 56, 71, 63, 38, 21, 79, 63, 100, 95, 245, 248, 244, 115, 100, 28.29882 + 110, 136, 148, 159, 166, 171, 178, 179, 182, 173, 163, 154, 144, 136, 128, 13, 28.29883 + 18, 20, 44, 46, 51, 52, 49, 53, 49, 46, 53, 55, 52, 53, 65, 64, 28.29884 + 61, 61, 59, 60, 61, 59, 67, 76, 69, 77, 68, 65, 103, 108, 103, 107, 28.29885 + 111, 93, 162, 191, 179, 128, 131, 143, 143, 153, 157, 155, 155, 158, 157, 135, 28.29886 + 124, 95, 36, 30, 33, 56, 55, 60, 77, 76, 61, 59, 65, 95, 128, 241, 28.29887 + 248, 245, 119, 106, 116, 131, 142, 151, 162, 174, 178, 174, 165, 120, 56, 40, 28.29888 + 28, 36, 28, 44, 83, 157, 185, 135, 169, 161, 159, 163, 174, 148, 153, 127, 28.29889 + 123, 114, 59, 63, 87, 102, 103, 102, 115, 107, 139, 202, 199, 130, 119, 130, 28.29890 + 154, 148, 150, 150, 150, 151, 151, 151, 154, 154, 154, 158, 163, 166, 163, 163, 28.29891 + 161, 148, 118, 83, 63, 44, 40, 38, 41, 40, 36, 36, 40, 41, 63, 41, 28.29892 + 81, 72, 76, 77, 89, 110, 143, 197, 210, 220, 221, 218, 210, 199, 189, 131, 28.29893 + 120, 116, 116, 130, 195, 220, 173, 198, 191, 193, 190, 182, 186, 185, 178, 173, 28.29894 + 165, 151, 139, 155, 114, 40, 44, 95, 114, 120, 124, 124, 127, 132, 134, 110, 28.29895 + 81, 103, 122, 87, 112, 148, 191, 186, 123, 114, 123, 135, 147, 142, 142, 142, 28.29896 + 150, 153, 159, 163, 163, 163, 161, 159, 163, 162, 162, 158, 143, 114, 88, 63, 28.29897 + 52, 48, 45, 49, 51, 51, 56, 56, 48, 56, 57, 96, 104, 114, 122, 120, 28.29898 + 177, 190, 155, 128, 127, 150, 161, 167, 174, 178, 183, 187, 189, 183, 146, 103, 28.29899 + 93, 102, 120, 138, 139, 201, 220, 210, 210, 182, 171, 171, 170, 170, 167, 158, 28.29900 + 154, 144, 130, 49, 46, 46, 60, 84, 83, 20, 29, 20, 41, 193, 225, 221, 28.29901 + 132, 114, 115, 135, 150, 159, 166, 170, 174, 174, 159, 165, 155, 144, 139, 131, 28.29902 + 41, 9, 9, 12, 17, 18, 24, 46, 42, 37, 33, 36, 26, 21, 20, 18, 28.29903 + 16, 13, 13, 9, 13, 13, 24, 10, 32, 36, 37, 40, 44, 41, 46, 37, 28.29904 + 21, 12, 46, 89, 91, 69, 73, 72, 64, 59, 248, 245, 232, 110, 100, 112, 28.29905 + 132, 142, 157, 169, 177, 174, 169, 165, 148, 132, 130, 17, 9, 9, 10, 10, 28.29906 + 9, 17, 21, 22, 20, 21, 26, 36, 81, 87, 212, 213, 210, 120, 131, 120, 28.29907 + 136, 167, 170, 158, 161, 162, 171, 181, 181, 181, 179, 177, 185, 150, 93, 60, 28.29908 + 83, 157, 191, 191, 175, 167, 182, 183, 185, 183, 183, 186, 187, 190, 193, 161, 28.29909 + 158, 99, 45, 26, 22, 18, 18, 21, 53, 79, 115, 202, 204, 173, 195, 197, 28.29910 + 195, 173, 189, 179, 147, 135, 124, 106, 60, 45, 56, 51, 44, 37, 44, 41, 28.29911 + 41, 42, 45, 45, 45, 49, 63, 77, 119, 177, 241, 249, 252, 246, 253, 252, 28.29912 + 244, 226, 199, 175, 132, 119, 123, 116, 118, 123, 120, 116, 123, 139, 127, 134, 28.29913 + 126, 97, 73, 24, 21, 17, 16, 13, 13, 13, 10, 9, 12, 12, 6, 5, 28.29914 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 4, 9, 10, 8, 2, 28.29915 + 2, 6, 5, 9, 9, 6, 26, 24, 26, 12, 28, 28, 26, 24, 29, 30, 28.29916 + 30, 72, 45, 44, 107, 93, 246, 249, 246, 119, 102, 111, 136, 150, 161, 167, 28.29917 + 177, 181, 181, 179, 169, 169, 150, 143, 139, 126, 10, 16, 21, 26, 17, 16, 28.29918 + 16, 17, 17, 18, 20, 21, 21, 26, 38, 79, 85, 100, 95, 103, 95, 99, 28.29919 + 93, 87, 84, 115, 122, 116, 81, 69, 71, 71, 97, 116, 107, 110, 202, 195, 28.29920 + 134, 130, 139, 143, 147, 150, 151, 159, 154, 154, 130, 124, 96, 34, 26, 32, 28.29921 + 48, 29, 44, 49, 52, 45, 59, 100, 93, 130, 241, 249, 245, 114, 103, 114, 28.29922 + 128, 140, 148, 162, 174, 178, 174, 153, 83, 45, 32, 32, 36, 25, 49, 96, 28.29923 + 191, 198, 169, 135, 166, 169, 158, 150, 138, 157, 131, 126, 118, 55, 57, 75, 28.29924 + 84, 93, 95, 114, 110, 127, 213, 205, 140, 119, 130, 144, 155, 155, 153, 153, 28.29925 + 151, 153, 153, 157, 158, 167, 171, 170, 166, 166, 158, 112, 68, 36, 30, 26, 28.29926 + 25, 26, 28, 29, 30, 33, 38, 41, 48, 73, 77, 73, 97, 107, 120, 158, 28.29927 + 202, 240, 245, 246, 248, 246, 248, 244, 244, 240, 240, 238, 236, 229, 233, 233, 28.29928 + 228, 214, 198, 191, 187, 187, 187, 186, 187, 185, 181, 178, 159, 148, 132, 132, 28.29929 + 85, 33, 59, 80, 95, 84, 96, 104, 103, 114, 116, 118, 119, 111, 85, 118, 28.29930 + 148, 202, 197, 134, 118, 120, 134, 142, 144, 144, 158, 163, 169, 169, 167, 165, 28.29931 + 169, 171, 167, 166, 162, 146, 103, 64, 37, 30, 28, 26, 29, 32, 34, 36, 28.29932 + 36, 38, 44, 60, 61, 60, 63, 63, 97, 102, 112, 138, 189, 177, 136, 124, 28.29933 + 138, 154, 162, 167, 175, 181, 186, 190, 190, 170, 120, 99, 107, 138, 142, 155, 28.29934 + 209, 212, 213, 214, 186, 175, 179, 171, 169, 169, 155, 155, 140, 135, 42, 38, 28.29935 + 38, 12, 10, 8, 115, 104, 97, 48, 185, 222, 224, 142, 114, 114, 132, 151, 28.29936 + 159, 165, 170, 171, 167, 167, 166, 146, 142, 139, 132, 48, 10, 9, 8, 24, 28.29937 + 22, 18, 20, 24, 30, 20, 29, 45, 56, 53, 65, 71, 76, 81, 80, 71, 28.29938 + 49, 14, 56, 64, 91, 96, 89, 79, 80, 76, 55, 26, 9, 76, 88, 84, 28.29939 + 81, 88, 87, 67, 65, 250, 240, 242, 110, 97, 110, 132, 142, 157, 169, 173, 28.29940 + 171, 166, 165, 148, 138, 132, 18, 9, 9, 14, 10, 16, 26, 26, 34, 4, 28.29941 + 29, 25, 79, 80, 95, 220, 217, 217, 135, 131, 136, 127, 161, 169, 163, 161, 28.29942 + 175, 185, 185, 185, 182, 175, 177, 162, 93, 34, 34, 60, 112, 181, 204, 185, 28.29943 + 163, 179, 186, 183, 186, 189, 190, 193, 194, 193, 166, 163, 108, 51, 34, 25, 28.29944 + 24, 22, 24, 56, 91, 110, 206, 209, 178, 177, 181, 198, 197, 194, 179, 159, 28.29945 + 140, 128, 132, 81, 42, 49, 59, 64, 60, 65, 91, 99, 107, 102, 110, 104, 28.29946 + 93, 108, 148, 193, 245, 248, 249, 250, 248, 228, 193, 150, 124, 119, 111, 104, 28.29947 + 112, 116, 116, 104, 122, 120, 118, 112, 131, 132, 134, 130, 126, 84, 92, 72, 28.29948 + 69, 72, 79, 73, 72, 71, 65, 65, 56, 60, 87, 111, 112, 128, 119, 112, 28.29949 + 130, 132, 116, 89, 83, 93, 142, 114, 116, 150, 146, 115, 107, 107, 131, 97, 28.29950 + 14, 0, 42, 81, 99, 65, 68, 64, 63, 63, 40, 52, 40, 71, 108, 107, 28.29951 + 103, 246, 249, 245, 118, 100, 115, 138, 151, 159, 167, 178, 178, 181, 175, 170, 28.29952 + 167, 148, 140, 138, 130, 12, 21, 21, 33, 63, 81, 87, 95, 103, 102, 100, 28.29953 + 89, 96, 97, 95, 111, 136, 127, 130, 114, 120, 123, 124, 127, 115, 128, 131, 28.29954 + 130, 108, 100, 87, 85, 77, 103, 104, 104, 209, 204, 151, 130, 135, 146, 142, 28.29955 + 146, 155, 157, 154, 153, 131, 120, 92, 32, 26, 33, 49, 61, 69, 85, 88, 28.29956 + 99, 99, 83, 120, 135, 241, 249, 246, 111, 102, 115, 131, 142, 151, 163, 175, 28.29957 + 175, 186, 142, 55, 38, 34, 37, 37, 22, 67, 97, 202, 204, 191, 135, 159, 28.29958 + 162, 162, 146, 135, 136, 131, 128, 118, 55, 51, 65, 92, 89, 93, 104, 102, 28.29959 + 118, 216, 213, 197, 123, 122, 136, 146, 158, 163, 154, 155, 155, 162, 162, 170, 28.29960 + 175, 171, 169, 167, 154, 95, 44, 30, 25, 26, 29, 33, 36, 36, 38, 38, 28.29961 + 44, 46, 49, 69, 60, 81, 99, 108, 147, 217, 241, 244, 246, 246, 248, 246, 28.29962 + 246, 246, 246, 245, 245, 242, 242, 240, 238, 238, 237, 234, 228, 175, 174, 191, 28.29963 + 193, 199, 182, 194, 187, 183, 181, 169, 154, 138, 146, 108, 38, 51, 72, 76, 28.29964 + 77, 95, 83, 75, 68, 61, 63, 73, 76, 87, 126, 143, 206, 210, 181, 116, 28.29965 + 116, 126, 139, 144, 154, 167, 169, 167, 170, 171, 169, 170, 173, 167, 162, 147, 28.29966 + 91, 40, 33, 26, 26, 28, 30, 29, 30, 32, 63, 59, 42, 46, 48, 57, 28.29967 + 80, 65, 68, 53, 76, 106, 114, 183, 179, 147, 124, 123, 139, 158, 165, 171, 28.29968 + 177, 183, 189, 190, 190, 147, 108, 102, 134, 134, 177, 216, 214, 228, 218, 186, 28.29969 + 178, 178, 170, 170, 169, 158, 157, 142, 132, 48, 42, 41, 32, 81, 91, 68, 28.29970 + 44, 55, 42, 140, 216, 226, 147, 115, 114, 132, 147, 159, 165, 170, 171, 165, 28.29971 + 166, 163, 146, 140, 139, 131, 56, 12, 10, 10, 24, 29, 38, 37, 38, 25, 28.29972 + 52, 81, 100, 92, 95, 100, 100, 95, 85, 95, 84, 53, 13, 55, 124, 107, 28.29973 + 108, 87, 89, 93, 64, 55, 25, 12, 85, 83, 67, 57, 61, 77, 67, 68, 28.29974 + 250, 242, 241, 110, 96, 111, 135, 140, 157, 170, 175, 173, 167, 163, 150, 139, 28.29975 + 132, 18, 10, 9, 12, 12, 22, 30, 20, 33, 10, 24, 29, 76, 91, 102, 28.29976 + 218, 221, 218, 136, 111, 118, 127, 139, 167, 166, 170, 182, 187, 187, 187, 186, 28.29977 + 179, 175, 126, 46, 29, 32, 37, 64, 158, 206, 193, 165, 166, 181, 195, 197, 28.29978 + 199, 201, 204, 204, 198, 193, 171, 139, 71, 36, 28, 26, 22, 42, 69, 95, 28.29979 + 104, 208, 214, 193, 175, 194, 198, 183, 195, 178, 173, 143, 134, 126, 104, 51, 28.29980 + 41, 57, 57, 91, 79, 84, 103, 107, 122, 97, 112, 119, 153, 229, 246, 248, 28.29981 + 248, 252, 236, 189, 142, 119, 115, 114, 115, 127, 77, 49, 44, 46, 57, 110, 28.29982 + 116, 124, 161, 183, 189, 181, 135, 132, 120, 99, 76, 100, 99, 80, 84, 77, 28.29983 + 79, 73, 92, 107, 72, 110, 134, 131, 131, 89, 118, 138, 142, 120, 115, 99, 28.29984 + 88, 131, 134, 143, 140, 143, 132, 134, 131, 119, 116, 81, 0, 96, 93, 97, 28.29985 + 106, 95, 92, 95, 79, 61, 60, 36, 108, 108, 103, 110, 249, 248, 245, 110, 28.29986 + 104, 116, 140, 150, 161, 169, 175, 177, 183, 173, 166, 165, 147, 140, 138, 126, 28.29987 + 12, 18, 40, 55, 85, 84, 92, 95, 97, 103, 100, 107, 96, 104, 139, 127, 28.29988 + 122, 120, 124, 130, 120, 120, 130, 162, 170, 210, 199, 153, 123, 107, 100, 103, 28.29989 + 100, 102, 103, 93, 213, 213, 185, 130, 134, 140, 144, 142, 146, 161, 151, 159, 28.29990 + 131, 122, 91, 32, 28, 44, 57, 87, 95, 104, 106, 111, 73, 100, 142, 174, 28.29991 + 242, 248, 242, 116, 104, 115, 132, 144, 151, 167, 175, 174, 167, 123, 49, 38, 28.29992 + 29, 37, 44, 26, 73, 108, 209, 209, 199, 163, 157, 158, 165, 147, 150, 139, 28.29993 + 132, 136, 122, 53, 49, 52, 80, 93, 97, 103, 108, 120, 217, 218, 205, 122, 28.29994 + 120, 128, 142, 153, 161, 162, 162, 174, 178, 177, 177, 178, 170, 169, 154, 99, 28.29995 + 37, 25, 25, 26, 32, 48, 41, 49, 48, 51, 52, 51, 68, 71, 84, 59, 28.29996 + 81, 99, 138, 230, 244, 244, 249, 248, 245, 236, 224, 204, 201, 190, 193, 197, 28.29997 + 208, 212, 214, 224, 226, 229, 226, 230, 217, 181, 206, 205, 216, 216, 205, 187, 28.29998 + 191, 185, 177, 158, 146, 139, 126, 72, 45, 57, 103, 104, 112, 124, 127, 118, 28.29999 + 111, 122, 128, 127, 130, 118, 158, 206, 213, 197, 118, 116, 124, 138, 148, 157, 28.30000 + 169, 173, 174, 173, 173, 171, 174, 173, 167, 144, 91, 36, 29, 25, 28, 30, 28.30001 + 37, 36, 40, 59, 28, 55, 88, 99, 85, 111, 103, 110, 124, 127, 111, 112, 28.30002 + 111, 115, 181, 186, 166, 126, 119, 132, 150, 162, 166, 174, 179, 186, 193, 197, 28.30003 + 186, 142, 99, 135, 144, 194, 216, 216, 216, 201, 193, 185, 177, 174, 175, 169, 28.30004 + 158, 157, 142, 135, 44, 41, 40, 63, 91, 91, 65, 56, 55, 64, 77, 210, 28.30005 + 216, 178, 115, 112, 127, 148, 158, 163, 169, 167, 166, 163, 153, 134, 140, 138, 28.30006 + 132, 83, 17, 10, 17, 30, 34, 37, 30, 37, 16, 81, 93, 100, 95, 88, 28.30007 + 114, 106, 110, 99, 102, 77, 51, 12, 71, 134, 128, 134, 127, 115, 88, 75, 28.30008 + 46, 24, 13, 79, 84, 65, 65, 61, 73, 63, 63, 248, 236, 242, 107, 95, 28.30009 + 111, 135, 143, 155, 170, 174, 177, 165, 163, 151, 140, 134, 20, 12, 10, 10, 28.30010 + 5, 25, 25, 13, 24, 10, 37, 18, 95, 91, 142, 225, 224, 221, 119, 111, 28.30011 + 118, 142, 142, 153, 166, 177, 186, 187, 187, 185, 182, 178, 169, 95, 33, 29, 28.30012 + 30, 36, 65, 130, 208, 204, 170, 159, 177, 183, 197, 202, 206, 206, 205, 205, 28.30013 + 198, 175, 163, 92, 44, 26, 28, 24, 57, 80, 96, 107, 201, 220, 206, 181, 28.30014 + 195, 197, 193, 195, 179, 178, 148, 139, 130, 123, 73, 42, 56, 53, 55, 71, 28.30015 + 104, 89, 96, 92, 102, 100, 119, 209, 248, 248, 249, 250, 225, 166, 122, 116, 28.30016 + 116, 120, 140, 127, 69, 41, 36, 42, 37, 56, 108, 187, 199, 191, 169, 175, 28.30017 + 175, 181, 136, 134, 126, 100, 59, 84, 83, 93, 79, 79, 79, 81, 73, 77, 28.30018 + 147, 143, 138, 131, 131, 126, 118, 124, 111, 97, 84, 108, 147, 144, 135, 134, 28.30019 + 128, 132, 132, 140, 130, 127, 95, 25, 104, 89, 79, 72, 71, 75, 79, 93, 28.30020 + 72, 55, 37, 107, 119, 110, 138, 249, 248, 244, 111, 104, 116, 139, 148, 158, 28.30021 + 167, 175, 178, 182, 170, 165, 148, 136, 139, 136, 126, 13, 24, 40, 72, 80, 28.30022 + 97, 97, 106, 89, 95, 100, 91, 60, 108, 138, 128, 120, 115, 124, 120, 124, 28.30023 + 126, 186, 229, 220, 220, 209, 178, 126, 110, 92, 111, 99, 97, 104, 91, 212, 28.30024 + 214, 201, 130, 131, 143, 150, 144, 144, 154, 146, 144, 131, 124, 81, 32, 28, 28.30025 + 53, 71, 92, 96, 104, 115, 93, 72, 99, 143, 179, 242, 246, 244, 123, 107, 28.30026 + 118, 132, 147, 157, 169, 175, 171, 162, 95, 48, 34, 33, 40, 45, 28, 80, 28.30027 + 119, 208, 212, 208, 130, 151, 155, 162, 134, 139, 144, 131, 135, 119, 52, 45, 28.30028 + 52, 72, 80, 89, 108, 110, 122, 222, 221, 209, 120, 119, 126, 139, 151, 159, 28.30029 + 165, 177, 178, 182, 182, 179, 175, 173, 158, 96, 40, 25, 28, 29, 36, 45, 28.30030 + 41, 55, 67, 76, 79, 75, 80, 76, 83, 89, 72, 91, 114, 193, 244, 246, 28.30031 + 246, 245, 237, 205, 181, 157, 155, 154, 158, 161, 165, 169, 174, 178, 181, 185, 28.30032 + 189, 199, 202, 210, 206, 206, 204, 202, 206, 208, 205, 197, 187, 178, 162, 153, 28.30033 + 135, 131, 95, 42, 63, 92, 100, 106, 120, 93, 124, 130, 122, 120, 114, 115, 28.30034 + 119, 153, 210, 217, 206, 118, 115, 124, 138, 147, 161, 169, 173, 173, 174, 173, 28.30035 + 175, 174, 171, 157, 106, 44, 30, 26, 30, 34, 40, 46, 51, 73, 64, 28, 28.30036 + 89, 112, 120, 118, 115, 111, 110, 107, 128, 132, 135, 72, 116, 166, 181, 182, 28.30037 + 140, 118, 126, 143, 155, 162, 170, 177, 183, 189, 204, 201, 193, 155, 142, 175, 28.30038 + 213, 217, 218, 222, 205, 201, 189, 189, 178, 175, 173, 161, 157, 146, 132, 44, 28.30039 + 38, 37, 85, 85, 108, 10, 45, 55, 40, 51, 190, 216, 199, 116, 110, 123, 28.30040 + 147, 157, 162, 166, 169, 163, 161, 143, 140, 140, 136, 131, 102, 20, 12, 17, 28.30041 + 28, 30, 33, 26, 44, 21, 84, 110, 103, 108, 106, 99, 103, 102, 106, 89, 28.30042 + 73, 55, 13, 77, 127, 163, 193, 163, 136, 104, 89, 49, 25, 13, 72, 79, 28.30043 + 69, 83, 63, 72, 60, 73, 245, 242, 241, 99, 96, 111, 132, 140, 154, 169, 28.30044 + 175, 174, 167, 165, 154, 143, 132, 16, 12, 9, 8, 13, 25, 25, 14, 16, 28.30045 + 13, 29, 17, 81, 96, 142, 229, 229, 224, 123, 123, 118, 127, 143, 162, 167, 28.30046 + 179, 185, 190, 190, 186, 182, 175, 150, 53, 29, 25, 30, 48, 53, 110, 199, 28.30047 + 210, 179, 157, 159, 179, 190, 199, 205, 206, 208, 208, 204, 198, 177, 130, 55, 28.30048 + 32, 26, 30, 59, 81, 96, 97, 197, 224, 218, 185, 179, 195, 183, 194, 179, 28.30049 + 174, 155, 143, 135, 138, 91, 40, 44, 53, 51, 69, 93, 103, 108, 102, 92, 28.30050 + 110, 144, 234, 244, 246, 248, 230, 151, 119, 119, 119, 126, 146, 147, 89, 56, 28.30051 + 34, 34, 41, 38, 60, 124, 205, 198, 170, 174, 179, 177, 183, 143, 138, 120, 28.30052 + 114, 91, 55, 72, 68, 75, 68, 79, 79, 68, 30, 138, 147, 124, 139, 132, 28.30053 + 139, 147, 143, 123, 96, 83, 103, 151, 139, 136, 130, 128, 132, 131, 127, 130, 28.30054 + 136, 57, 26, 71, 92, 85, 73, 73, 72, 76, 85, 57, 55, 34, 110, 119, 28.30055 + 106, 124, 249, 249, 246, 115, 106, 116, 139, 151, 157, 167, 175, 179, 183, 170, 28.30056 + 166, 142, 135, 136, 136, 124, 13, 24, 26, 44, 80, 95, 110, 106, 95, 110, 28.30057 + 93, 99, 64, 96, 142, 120, 132, 120, 112, 126, 122, 132, 212, 229, 216, 218, 28.30058 + 199, 157, 122, 95, 83, 93, 102, 99, 106, 95, 218, 216, 208, 132, 132, 142, 28.30059 + 146, 148, 151, 140, 151, 143, 128, 123, 71, 32, 28, 52, 77, 91, 96, 103, 28.30060 + 122, 97, 65, 97, 144, 175, 240, 245, 242, 126, 108, 120, 132, 144, 153, 169, 28.30061 + 174, 171, 151, 73, 41, 34, 37, 44, 51, 33, 81, 116, 209, 213, 236, 132, 28.30062 + 153, 153, 154, 146, 138, 135, 131, 130, 118, 46, 45, 46, 75, 76, 89, 99, 28.30063 + 112, 124, 226, 224, 216, 119, 116, 124, 136, 148, 158, 163, 175, 181, 181, 181, 28.30064 + 177, 173, 165, 122, 49, 26, 28, 28, 34, 38, 38, 51, 71, 87, 88, 81, 28.30065 + 84, 83, 85, 93, 77, 91, 92, 128, 228, 244, 244, 238, 224, 187, 151, 139, 28.30066 + 140, 146, 154, 163, 173, 181, 191, 201, 205, 208, 209, 208, 191, 195, 199, 202, 28.30067 + 204, 206, 209, 209, 213, 210, 191, 187, 173, 162, 154, 139, 138, 112, 48, 56, 28.30068 + 80, 93, 111, 115, 115, 116, 85, 110, 131, 126, 122, 140, 150, 213, 222, 212, 28.30069 + 119, 115, 124, 139, 147, 159, 169, 173, 174, 174, 178, 177, 173, 163, 123, 55, 28.30070 + 33, 25, 30, 38, 48, 48, 51, 56, 69, 60, 24, 99, 122, 122, 124, 119, 28.30071 + 131, 122, 123, 132, 134, 134, 80, 122, 162, 174, 185, 154, 122, 118, 134, 143, 28.30072 + 161, 167, 175, 179, 189, 195, 208, 206, 204, 194, 213, 216, 216, 225, 225, 206, 28.30073 + 195, 193, 187, 181, 179, 171, 161, 158, 146, 135, 40, 38, 37, 63, 85, 106, 28.30074 + 92, 38, 41, 40, 34, 108, 212, 206, 120, 108, 118, 136, 151, 159, 165, 167, 28.30075 + 166, 163, 154, 136, 142, 134, 135, 115, 26, 14, 18, 28, 29, 37, 29, 46, 28.30076 + 17, 60, 95, 102, 102, 96, 100, 99, 112, 96, 95, 75, 55, 16, 106, 153, 28.30077 + 214, 220, 230, 189, 138, 104, 64, 25, 13, 72, 79, 77, 65, 65, 67, 63, 28.30078 + 64, 245, 245, 234, 103, 95, 107, 127, 139, 153, 169, 175, 174, 167, 165, 154, 28.30079 + 143, 134, 17, 9, 14, 9, 12, 22, 28, 28, 26, 6, 25, 25, 80, 91, 28.30080 + 110, 230, 229, 228, 134, 124, 131, 127, 148, 146, 170, 175, 187, 182, 190, 187, 28.30081 + 177, 173, 128, 41, 28, 22, 32, 41, 56, 91, 190, 214, 195, 158, 154, 173, 28.30082 + 186, 195, 199, 205, 208, 209, 206, 202, 183, 163, 73, 34, 25, 29, 59, 79, 28.30083 + 95, 97, 179, 228, 224, 193, 194, 191, 195, 194, 185, 170, 157, 146, 135, 128, 28.30084 + 107, 48, 41, 53, 49, 64, 97, 110, 93, 93, 106, 104, 191, 240, 246, 248, 28.30085 + 238, 163, 122, 122, 126, 132, 150, 147, 153, 77, 52, 34, 24, 45, 45, 76, 28.30086 + 103, 210, 205, 173, 175, 179, 173, 173, 175, 140, 132, 127, 100, 55, 56, 67, 28.30087 + 71, 67, 68, 77, 75, 55, 142, 155, 130, 139, 134, 139, 147, 131, 118, 114, 28.30088 + 72, 119, 151, 143, 127, 131, 127, 136, 134, 132, 134, 128, 81, 0, 89, 87, 28.30089 + 76, 69, 76, 91, 96, 81, 55, 55, 30, 100, 116, 100, 123, 250, 248, 240, 28.30090 + 114, 104, 118, 138, 146, 162, 169, 173, 179, 181, 169, 162, 151, 142, 136, 135, 28.30091 + 120, 14, 25, 29, 51, 81, 102, 108, 104, 96, 106, 93, 92, 60, 106, 130, 28.30092 + 115, 123, 127, 122, 119, 119, 136, 225, 229, 233, 229, 191, 131, 107, 77, 75, 28.30093 + 95, 89, 96, 102, 97, 222, 221, 213, 136, 134, 146, 147, 151, 147, 142, 157, 28.30094 + 139, 124, 120, 60, 32, 28, 48, 77, 92, 92, 102, 112, 106, 59, 120, 140, 28.30095 + 146, 237, 244, 240, 124, 108, 119, 132, 143, 151, 170, 173, 169, 150, 56, 36, 28.30096 + 34, 38, 44, 46, 30, 80, 118, 210, 214, 212, 151, 143, 148, 148, 144, 138, 28.30097 + 136, 127, 126, 112, 42, 40, 42, 72, 80, 87, 103, 108, 118, 230, 226, 221, 28.30098 + 122, 115, 126, 138, 146, 157, 163, 175, 181, 181, 178, 167, 169, 144, 64, 29, 28.30099 + 28, 30, 34, 49, 48, 40, 87, 96, 95, 93, 92, 95, 92, 97, 92, 88, 28.30100 + 83, 108, 198, 225, 240, 229, 206, 167, 140, 130, 138, 148, 162, 174, 182, 190, 28.30101 + 198, 209, 218, 220, 222, 224, 222, 218, 205, 201, 204, 198, 197, 194, 214, 214, 28.30102 + 216, 194, 187, 170, 166, 157, 142, 138, 120, 61, 49, 71, 106, 106, 127, 114, 28.30103 + 110, 84, 107, 106, 120, 118, 108, 143, 210, 226, 218, 119, 116, 124, 139, 146, 28.30104 + 161, 167, 171, 174, 175, 177, 173, 169, 143, 63, 33, 29, 32, 41, 49, 52, 28.30105 + 53, 57, 60, 72, 64, 24, 102, 127, 134, 119, 120, 126, 111, 134, 139, 128, 28.30106 + 136, 72, 120, 151, 165, 166, 174, 130, 118, 120, 138, 155, 165, 171, 177, 183, 28.30107 + 194, 202, 209, 212, 210, 214, 217, 216, 229, 218, 202, 195, 194, 187, 181, 174, 28.30108 + 171, 161, 158, 144, 132, 36, 36, 33, 55, 118, 124, 84, 20, 36, 45, 41, 28.30109 + 60, 193, 206, 132, 108, 116, 131, 148, 157, 161, 165, 171, 173, 165, 154, 131, 28.30110 + 131, 134, 122, 41, 12, 16, 21, 25, 38, 30, 40, 37, 36, 91, 103, 103, 28.30111 + 107, 100, 100, 103, 102, 87, 77, 59, 26, 144, 191, 232, 214, 210, 206, 217, 28.30112 + 138, 89, 29, 13, 65, 69, 73, 59, 55, 61, 53, 61, 246, 245, 238, 107, 28.30113 + 97, 104, 122, 138, 155, 167, 177, 175, 167, 165, 154, 143, 131, 14, 10, 12, 28.30114 + 12, 10, 21, 25, 33, 30, 28, 22, 29, 72, 83, 99, 230, 230, 228, 134, 28.30115 + 110, 119, 130, 139, 143, 161, 173, 183, 189, 191, 186, 174, 165, 104, 33, 25, 28.30116 + 22, 32, 48, 61, 84, 178, 221, 205, 162, 150, 163, 181, 189, 198, 201, 205, 28.30117 + 208, 209, 206, 199, 182, 106, 38, 28, 29, 59, 80, 85, 89, 151, 226, 226, 28.30118 + 197, 179, 191, 197, 185, 174, 155, 150, 147, 140, 130, 120, 67, 41, 48, 46, 28.30119 + 64, 96, 111, 99, 97, 102, 93, 206, 244, 246, 245, 195, 130, 123, 130, 135, 28.30120 + 136, 151, 155, 155, 71, 34, 30, 28, 38, 44, 64, 104, 214, 212, 190, 173, 28.30121 + 178, 175, 173, 178, 144, 140, 127, 97, 46, 49, 69, 57, 65, 72, 81, 57, 28.30122 + 85, 134, 140, 131, 124, 123, 131, 128, 131, 115, 95, 55, 127, 151, 143, 127, 28.30123 + 135, 127, 135, 134, 132, 126, 126, 75, 0, 92, 84, 81, 69, 75, 64, 57, 28.30124 + 53, 64, 56, 32, 103, 114, 107, 119, 248, 246, 233, 110, 104, 119, 140, 150, 28.30125 + 161, 169, 175, 174, 182, 181, 170, 159, 144, 131, 131, 118, 14, 25, 34, 64, 28.30126 + 80, 96, 108, 108, 112, 111, 91, 97, 60, 100, 131, 115, 111, 123, 110, 123, 28.30127 + 119, 144, 226, 234, 233, 183, 132, 123, 84, 71, 75, 88, 87, 87, 96, 97, 28.30128 + 224, 225, 220, 139, 135, 144, 151, 165, 154, 153, 155, 128, 124, 116, 46, 29, 28.30129 + 29, 48, 77, 89, 93, 102, 112, 106, 52, 128, 142, 126, 233, 242, 238, 126, 28.30130 + 110, 119, 132, 146, 153, 170, 170, 165, 140, 49, 36, 36, 41, 41, 41, 34, 28.30131 + 76, 124, 214, 220, 210, 146, 140, 144, 150, 143, 139, 138, 136, 122, 108, 38, 28.30132 + 37, 40, 68, 71, 76, 100, 116, 116, 232, 232, 225, 122, 116, 126, 136, 146, 28.30133 + 157, 165, 170, 181, 178, 173, 169, 159, 107, 40, 28, 30, 33, 40, 41, 38, 28.30134 + 42, 72, 104, 130, 130, 127, 127, 119, 102, 79, 96, 108, 153, 228, 237, 222, 28.30135 + 187, 150, 130, 130, 142, 153, 163, 177, 183, 191, 199, 206, 216, 208, 165, 139, 28.30136 + 162, 204, 224, 222, 209, 201, 197, 205, 205, 216, 212, 212, 193, 185, 173, 167, 28.30137 + 155, 140, 136, 123, 85, 49, 59, 91, 100, 126, 124, 110, 80, 107, 108, 122, 28.30138 + 119, 96, 147, 217, 229, 222, 122, 115, 126, 139, 146, 161, 167, 173, 175, 177, 28.30139 + 177, 170, 158, 106, 41, 33, 32, 38, 51, 56, 59, 57, 61, 68, 77, 69, 28.30140 + 26, 108, 135, 131, 123, 115, 134, 131, 139, 143, 120, 134, 63, 123, 139, 155, 28.30141 + 165, 182, 165, 119, 111, 131, 148, 162, 169, 175, 182, 194, 194, 201, 208, 205, 28.30142 + 206, 220, 224, 220, 209, 201, 198, 193, 189, 179, 173, 171, 159, 157, 143, 131, 28.30143 + 32, 34, 34, 61, 85, 104, 63, 77, 49, 32, 29, 28, 114, 202, 161, 111, 28.30144 + 112, 124, 142, 151, 158, 165, 174, 169, 170, 159, 130, 127, 135, 130, 61, 16, 28.30145 + 12, 26, 22, 33, 32, 42, 34, 30, 84, 100, 107, 103, 107, 107, 106, 103, 28.30146 + 91, 80, 56, 26, 159, 209, 229, 222, 226, 209, 181, 140, 91, 26, 14, 65, 28.30147 + 81, 72, 73, 59, 63, 55, 80, 245, 246, 241, 112, 97, 103, 118, 143, 154, 28.30148 + 167, 174, 174, 170, 165, 154, 144, 134, 20, 13, 6, 12, 13, 18, 18, 30, 28.30149 + 30, 38, 13, 10, 72, 80, 97, 229, 232, 226, 120, 108, 119, 134, 128, 132, 28.30150 + 148, 166, 178, 186, 185, 182, 169, 154, 76, 29, 26, 20, 34, 63, 53, 80, 28.30151 + 158, 222, 213, 166, 146, 154, 174, 183, 191, 197, 199, 204, 209, 209, 202, 189, 28.30152 + 148, 52, 32, 25, 53, 76, 84, 91, 127, 224, 229, 202, 181, 191, 191, 182, 28.30153 + 163, 153, 146, 151, 147, 132, 131, 83, 40, 41, 48, 61, 95, 115, 95, 85, 28.30154 + 88, 102, 216, 238, 244, 242, 163, 124, 130, 136, 140, 144, 157, 158, 161, 65, 28.30155 + 36, 30, 21, 40, 44, 64, 96, 213, 218, 210, 177, 178, 178, 174, 181, 150, 28.30156 + 144, 124, 96, 40, 41, 55, 64, 57, 67, 69, 67, 72, 142, 138, 134, 128, 28.30157 + 128, 130, 127, 136, 114, 84, 72, 99, 136, 142, 131, 134, 134, 132, 135, 132, 28.30158 + 134, 123, 75, 21, 91, 83, 81, 65, 73, 83, 59, 59, 71, 49, 32, 112, 28.30159 + 115, 107, 123, 246, 244, 189, 106, 106, 118, 139, 146, 157, 163, 173, 174, 182, 28.30160 + 182, 177, 166, 150, 132, 131, 123, 16, 28, 37, 73, 72, 97, 102, 106, 111, 28.30161 + 99, 95, 87, 57, 114, 123, 114, 116, 120, 115, 123, 123, 151, 236, 237, 232, 28.30162 + 153, 123, 107, 75, 65, 73, 88, 84, 87, 100, 107, 222, 226, 220, 140, 134, 28.30163 + 148, 170, 170, 167, 162, 154, 124, 124, 116, 42, 30, 30, 49, 75, 89, 95, 28.30164 + 104, 102, 87, 52, 92, 139, 151, 233, 241, 240, 128, 108, 120, 131, 144, 154, 28.30165 + 171, 171, 166, 134, 48, 34, 36, 45, 45, 46, 37, 75, 123, 214, 220, 233, 28.30166 + 126, 138, 139, 147, 138, 143, 146, 138, 118, 97, 38, 37, 40, 72, 68, 73, 28.30167 + 99, 102, 119, 236, 233, 224, 120, 116, 127, 138, 147, 158, 166, 170, 179, 175, 28.30168 + 169, 166, 146, 65, 32, 30, 33, 38, 49, 53, 38, 88, 99, 127, 123, 123, 28.30169 + 126, 132, 120, 91, 79, 99, 124, 216, 233, 230, 205, 140, 118, 130, 140, 153, 28.30170 + 165, 175, 182, 189, 194, 204, 210, 210, 127, 95, 89, 99, 128, 170, 225, 217, 28.30171 + 210, 198, 206, 214, 217, 217, 205, 189, 185, 177, 169, 154, 140, 131, 127, 96, 28.30172 + 53, 67, 91, 102, 115, 115, 110, 79, 110, 114, 120, 119, 103, 143, 226, 230, 28.30173 + 225, 122, 116, 127, 139, 146, 159, 167, 171, 175, 178, 173, 165, 143, 71, 33, 28.30174 + 29, 37, 52, 57, 57, 61, 61, 65, 73, 83, 76, 29, 115, 142, 135, 140, 28.30175 + 138, 136, 139, 142, 118, 127, 132, 65, 123, 136, 155, 161, 175, 181, 128, 110, 28.30176 + 126, 142, 158, 166, 174, 181, 189, 195, 197, 198, 197, 197, 198, 205, 208, 208, 28.30177 + 205, 201, 194, 186, 181, 173, 170, 162, 158, 144, 126, 30, 32, 30, 73, 60, 28.30178 + 103, 64, 59, 60, 22, 32, 30, 63, 181, 186, 114, 111, 120, 131, 148, 159, 28.30179 + 166, 175, 171, 173, 159, 127, 128, 135, 131, 93, 20, 14, 16, 18, 24, 37, 28.30180 + 41, 41, 29, 67, 103, 103, 99, 106, 102, 106, 102, 89, 76, 63, 21, 177, 28.30181 + 217, 228, 225, 186, 165, 130, 100, 87, 24, 14, 42, 75, 79, 80, 53, 61, 28.30182 + 55, 67, 245, 246, 242, 112, 100, 100, 119, 136, 151, 166, 173, 174, 171, 161, 28.30183 + 151, 146, 131, 18, 14, 17, 12, 14, 29, 21, 21, 26, 33, 21, 22, 63, 28.30184 + 75, 89, 226, 237, 230, 132, 120, 119, 126, 127, 131, 138, 154, 167, 185, 185, 28.30185 + 170, 166, 147, 57, 29, 22, 20, 34, 53, 49, 69, 143, 218, 217, 182, 143, 28.30186 + 146, 166, 177, 183, 190, 193, 197, 202, 206, 204, 190, 177, 83, 32, 26, 52, 28.30187 + 67, 83, 88, 112, 220, 229, 205, 179, 190, 194, 174, 161, 139, 135, 138, 144, 28.30188 + 136, 132, 104, 49, 37, 48, 57, 92, 102, 93, 87, 100, 104, 217, 237, 245, 28.30189 + 225, 148, 128, 132, 140, 139, 155, 161, 165, 167, 61, 37, 33, 26, 40, 49, 28.30190 + 56, 91, 214, 221, 217, 179, 178, 182, 175, 178, 153, 142, 124, 95, 37, 37, 28.30191 + 52, 52, 49, 57, 63, 25, 75, 135, 131, 132, 134, 132, 127, 126, 143, 115, 28.30192 + 80, 64, 127, 148, 130, 135, 138, 143, 148, 142, 132, 130, 130, 55, 26, 68, 28.30193 + 79, 80, 64, 71, 60, 59, 61, 56, 55, 33, 107, 115, 107, 118, 245, 242, 28.30194 + 171, 103, 102, 116, 128, 139, 150, 159, 171, 174, 183, 181, 177, 166, 151, 131, 28.30195 + 132, 123, 17, 29, 29, 53, 71, 81, 102, 107, 107, 100, 95, 93, 55, 92, 28.30196 + 120, 111, 111, 111, 110, 114, 123, 181, 246, 237, 222, 135, 119, 100, 61, 64, 28.30197 + 69, 84, 80, 85, 97, 106, 225, 226, 220, 140, 135, 147, 171, 163, 169, 157, 28.30198 + 158, 123, 124, 115, 44, 30, 30, 52, 76, 88, 96, 95, 96, 88, 44, 92, 28.30199 + 142, 147, 232, 240, 238, 124, 110, 116, 131, 146, 155, 173, 167, 170, 132, 44, 28.30200 + 34, 36, 48, 40, 57, 37, 72, 114, 212, 220, 214, 139, 132, 136, 146, 140, 28.30201 + 140, 143, 136, 118, 91, 36, 34, 38, 67, 69, 76, 92, 107, 132, 237, 237, 28.30202 + 226, 120, 115, 126, 136, 147, 158, 166, 171, 177, 173, 169, 163, 118, 48, 32, 28.30203 + 32, 37, 42, 48, 41, 28, 96, 104, 130, 140, 134, 119, 136, 119, 107, 95, 28.30204 + 108, 167, 228, 230, 224, 175, 115, 123, 138, 148, 163, 174, 177, 186, 187, 197, 28.30205 + 202, 213, 178, 99, 71, 59, 63, 79, 127, 208, 224, 216, 205, 195, 216, 216, 28.30206 + 214, 213, 199, 186, 179, 167, 154, 138, 124, 127, 104, 56, 61, 85, 119, 106, 28.30207 + 114, 115, 75, 107, 112, 119, 112, 93, 148, 229, 236, 226, 123, 118, 126, 138, 28.30208 + 144, 159, 166, 169, 173, 173, 167, 162, 120, 53, 34, 33, 45, 56, 63, 63, 28.30209 + 63, 64, 71, 76, 77, 77, 28, 110, 138, 140, 140, 142, 136, 139, 140, 136, 28.30210 + 130, 128, 80, 128, 131, 142, 148, 159, 181, 146, 108, 116, 136, 153, 163, 171, 28.30211 + 178, 186, 193, 199, 199, 202, 201, 198, 197, 201, 210, 202, 202, 194, 187, 178, 28.30212 + 174, 173, 162, 157, 142, 128, 28, 30, 30, 53, 63, 102, 20, 22, 33, 45, 28.30213 + 25, 22, 32, 107, 181, 119, 107, 111, 122, 144, 157, 165, 170, 175, 169, 154, 28.30214 + 134, 130, 136, 131, 112, 28, 17, 21, 21, 21, 37, 28, 44, 29, 61, 91, 28.30215 + 99, 108, 106, 111, 103, 97, 83, 80, 65, 24, 175, 226, 234, 226, 173, 123, 28.30216 + 92, 87, 65, 20, 14, 30, 68, 76, 76, 59, 56, 52, 69, 244, 245, 238, 28.30217 + 110, 97, 103, 123, 138, 147, 166, 170, 174, 169, 162, 153, 147, 128, 20, 17, 28.30218 + 16, 12, 16, 24, 21, 12, 22, 24, 26, 32, 51, 83, 107, 229, 234, 232, 28.30219 + 132, 124, 128, 123, 124, 128, 142, 157, 153, 162, 165, 158, 161, 139, 40, 25, 28.30220 + 20, 20, 32, 37, 52, 68, 102, 210, 217, 191, 143, 140, 157, 169, 177, 179, 28.30221 + 183, 189, 197, 202, 202, 198, 189, 110, 37, 25, 52, 61, 80, 85, 97, 213, 28.30222 + 228, 212, 183, 189, 194, 174, 167, 155, 154, 150, 136, 138, 128, 114, 59, 40, 28.30223 + 44, 42, 79, 96, 87, 84, 99, 97, 217, 244, 245, 194, 139, 132, 136, 143, 28.30224 + 142, 154, 162, 167, 169, 61, 34, 32, 22, 37, 49, 71, 85, 210, 222, 222, 28.30225 + 179, 183, 181, 173, 181, 155, 142, 127, 89, 37, 32, 40, 46, 48, 55, 67, 28.30226 + 41, 104, 136, 142, 138, 131, 139, 127, 131, 116, 114, 110, 59, 120, 142, 148, 28.30227 + 146, 153, 146, 143, 136, 142, 135, 122, 83, 0, 80, 79, 65, 65, 63, 59, 28.30228 + 56, 59, 57, 59, 32, 89, 114, 99, 119, 241, 237, 187, 107, 107, 115, 119, 28.30229 + 132, 142, 157, 169, 177, 181, 183, 170, 165, 148, 132, 138, 119, 18, 29, 32, 28.30230 + 52, 68, 83, 99, 104, 96, 108, 95, 89, 52, 95, 110, 114, 102, 115, 114, 28.30231 + 111, 131, 213, 241, 240, 220, 132, 119, 81, 60, 57, 67, 69, 79, 73, 95, 28.30232 + 103, 221, 228, 216, 138, 136, 150, 174, 169, 162, 157, 153, 124, 123, 111, 38, 28.30233 + 29, 33, 51, 72, 88, 92, 102, 99, 99, 40, 110, 138, 127, 229, 238, 234, 28.30234 + 123, 110, 120, 132, 146, 159, 173, 170, 167, 127, 49, 37, 36, 33, 48, 53, 28.30235 + 33, 61, 103, 213, 218, 206, 135, 131, 135, 144, 143, 136, 140, 136, 118, 92, 28.30236 + 33, 30, 34, 56, 68, 81, 88, 103, 122, 237, 234, 230, 122, 115, 126, 138, 28.30237 + 147, 158, 167, 171, 177, 169, 165, 151, 85, 36, 34, 37, 38, 44, 53, 53, 28.30238 + 26, 75, 110, 131, 136, 130, 120, 130, 120, 99, 96, 97, 189, 222, 230, 214, 28.30239 + 139, 112, 127, 140, 154, 167, 171, 183, 189, 193, 198, 205, 214, 147, 76, 53, 28.30240 + 51, 57, 75, 110, 177, 226, 217, 213, 190, 216, 220, 221, 213, 204, 187, 179, 28.30241 + 169, 154, 140, 130, 130, 116, 63, 60, 80, 88, 104, 116, 107, 64, 104, 107, 28.30242 + 135, 106, 102, 144, 224, 237, 232, 120, 115, 124, 138, 144, 158, 167, 165, 173, 28.30243 + 171, 166, 151, 95, 44, 33, 40, 48, 64, 69, 79, 80, 79, 81, 81, 85, 28.30244 + 75, 28, 116, 138, 131, 136, 143, 138, 138, 135, 138, 123, 123, 46, 124, 128, 28.30245 + 135, 143, 157, 167, 165, 126, 107, 126, 146, 161, 169, 178, 183, 190, 195, 191, 28.30246 + 190, 194, 204, 201, 194, 198, 212, 204, 195, 189, 181, 174, 173, 162, 157, 146, 28.30247 + 128, 24, 29, 29, 53, 73, 83, 8, 8, 9, 8, 6, 17, 18, 48, 167, 28.30248 + 162, 107, 110, 122, 144, 155, 162, 165, 165, 159, 155, 127, 130, 130, 134, 126, 28.30249 + 63, 20, 13, 18, 20, 34, 34, 48, 30, 42, 79, 88, 91, 92, 87, 91, 28.30250 + 91, 87, 77, 67, 36, 181, 229, 238, 208, 154, 99, 91, 88, 61, 21, 14, 28.30251 + 21, 38, 42, 57, 49, 57, 49, 63, 242, 244, 234, 110, 97, 106, 122, 131, 28.30252 + 143, 165, 174, 171, 169, 161, 150, 147, 127, 20, 18, 20, 12, 14, 6, 20, 28.30253 + 22, 10, 25, 32, 25, 44, 75, 100, 228, 232, 229, 134, 110, 118, 132, 135, 28.30254 + 132, 144, 147, 144, 157, 157, 157, 157, 135, 41, 29, 25, 21, 32, 42, 56, 28.30255 + 71, 81, 199, 220, 201, 147, 138, 146, 162, 169, 171, 175, 182, 189, 195, 198, 28.30256 + 197, 190, 147, 52, 30, 45, 59, 73, 75, 85, 201, 229, 220, 185, 185, 194, 28.30257 + 181, 170, 166, 159, 155, 151, 136, 128, 127, 83, 42, 42, 41, 72, 100, 114, 28.30258 + 89, 93, 87, 198, 242, 245, 187, 135, 138, 144, 147, 143, 154, 165, 170, 170, 28.30259 + 60, 36, 29, 21, 32, 42, 61, 92, 221, 224, 224, 181, 182, 183, 177, 179, 28.30260 + 157, 143, 130, 91, 34, 32, 36, 42, 64, 46, 69, 41, 99, 111, 100, 108, 28.30261 + 108, 110, 108, 111, 107, 108, 80, 45, 118, 132, 135, 128, 140, 132, 124, 122, 28.30262 + 134, 130, 111, 55, 0, 80, 63, 63, 57, 68, 59, 75, 57, 65, 53, 30, 28.30263 + 91, 110, 106, 116, 244, 245, 225, 110, 106, 112, 120, 120, 142, 161, 171, 181, 28.30264 + 185, 175, 166, 154, 139, 134, 130, 116, 22, 30, 33, 49, 69, 80, 95, 99, 28.30265 + 104, 104, 91, 88, 52, 92, 114, 112, 104, 107, 111, 115, 143, 232, 241, 242, 28.30266 + 220, 135, 115, 71, 55, 51, 77, 61, 75, 77, 83, 92, 222, 222, 214, 134, 28.30267 + 135, 148, 166, 162, 161, 153, 144, 126, 122, 107, 38, 28, 32, 51, 64, 87, 28.30268 + 92, 96, 112, 97, 34, 122, 138, 132, 226, 237, 229, 127, 112, 120, 132, 147, 28.30269 + 161, 166, 167, 169, 139, 56, 37, 37, 46, 46, 55, 37, 57, 99, 213, 212, 28.30270 + 205, 127, 134, 135, 146, 138, 140, 136, 138, 119, 88, 30, 30, 30, 67, 63, 28.30271 + 67, 72, 97, 116, 236, 236, 229, 122, 114, 124, 135, 147, 158, 167, 174, 174, 28.30272 + 166, 163, 148, 68, 33, 33, 36, 42, 44, 44, 59, 25, 107, 116, 126, 115, 28.30273 + 108, 119, 122, 119, 106, 92, 97, 193, 222, 216, 201, 123, 114, 127, 140, 154, 28.30274 + 173, 173, 185, 190, 191, 199, 205, 209, 135, 71, 57, 52, 52, 64, 89, 153, 28.30275 + 228, 221, 214, 199, 213, 217, 218, 216, 210, 189, 183, 170, 159, 142, 132, 127, 28.30276 + 122, 83, 61, 69, 88, 96, 118, 104, 67, 96, 96, 93, 87, 85, 134, 213, 28.30277 + 234, 232, 123, 115, 124, 138, 143, 158, 165, 165, 173, 170, 161, 144, 76, 41, 28.30278 + 34, 44, 60, 76, 79, 77, 77, 81, 80, 80, 84, 83, 33, 110, 135, 136, 28.30279 + 144, 139, 138, 138, 144, 142, 112, 132, 37, 123, 122, 134, 135, 148, 151, 178, 28.30280 + 147, 108, 118, 142, 155, 166, 175, 183, 187, 189, 189, 186, 190, 195, 205, 206, 28.30281 + 193, 199, 204, 197, 191, 182, 175, 175, 163, 158, 146, 128, 22, 26, 28, 56, 28.30282 + 68, 87, 2, 1, 2, 8, 2, 4, 5, 17, 75, 177, 108, 107, 118, 134, 28.30283 + 148, 155, 163, 166, 157, 139, 126, 128, 128, 130, 131, 100, 33, 22, 22, 26, 28.30284 + 26, 29, 30, 33, 42, 56, 49, 52, 56, 55, 57, 56, 87, 79, 63, 28, 28.30285 + 166, 225, 240, 189, 119, 99, 91, 87, 59, 18, 14, 21, 26, 26, 29, 32, 28.30286 + 33, 57, 67, 245, 242, 240, 114, 92, 102, 120, 122, 140, 157, 165, 170, 167, 28.30287 + 162, 148, 144, 130, 21, 17, 8, 8, 10, 12, 14, 5, 5, 18, 26, 26, 28.30288 + 38, 73, 87, 225, 230, 232, 128, 104, 116, 127, 135, 146, 151, 147, 142, 146, 28.30289 + 142, 154, 151, 127, 46, 26, 26, 14, 36, 34, 56, 53, 75, 190, 221, 204, 28.30290 + 146, 134, 142, 154, 162, 166, 170, 177, 183, 191, 195, 194, 189, 167, 76, 37, 28.30291 + 36, 55, 65, 73, 85, 183, 230, 224, 189, 178, 194, 195, 169, 177, 170, 163, 28.30292 + 157, 151, 139, 128, 118, 57, 41, 40, 65, 97, 103, 81, 80, 92, 187, 229, 28.30293 + 245, 175, 132, 140, 147, 148, 143, 155, 173, 177, 177, 68, 42, 28, 25, 30, 28.30294 + 41, 76, 103, 226, 228, 226, 185, 183, 183, 178, 178, 159, 146, 132, 87, 33, 28.30295 + 34, 33, 36, 38, 38, 48, 57, 57, 87, 87, 89, 91, 97, 92, 85, 104, 28.30296 + 106, 53, 53, 45, 108, 97, 85, 79, 103, 83, 72, 68, 97, 67, 13, 42, 28.30297 + 61, 52, 37, 38, 46, 40, 37, 36, 52, 41, 33, 81, 96, 108, 128, 245, 28.30298 + 238, 234, 111, 110, 115, 120, 128, 143, 167, 170, 177, 182, 178, 167, 153, 128, 28.30299 + 135, 138, 114, 25, 34, 34, 42, 52, 63, 81, 92, 95, 92, 88, 87, 48, 28.30300 + 95, 103, 110, 100, 102, 104, 116, 161, 245, 248, 242, 201, 131, 115, 64, 52, 28.30301 + 49, 67, 75, 63, 69, 84, 89, 222, 228, 218, 138, 136, 147, 161, 163, 161, 28.30302 + 159, 126, 126, 122, 104, 33, 29, 29, 53, 56, 77, 88, 93, 96, 81, 51, 28.30303 + 71, 123, 127, 220, 233, 232, 127, 114, 122, 134, 150, 161, 171, 170, 169, 148, 28.30304 + 63, 40, 40, 44, 37, 46, 34, 75, 111, 208, 220, 217, 134, 131, 131, 140, 28.30305 + 139, 139, 135, 131, 118, 80, 30, 28, 30, 60, 48, 55, 69, 96, 111, 237, 28.30306 + 238, 232, 124, 116, 123, 131, 147, 161, 169, 174, 175, 166, 163, 146, 60, 36, 28.30307 + 37, 40, 63, 52, 46, 60, 36, 106, 114, 102, 115, 110, 107, 97, 111, 100, 28.30308 + 96, 96, 193, 220, 216, 175, 110, 115, 124, 136, 157, 171, 173, 178, 182, 191, 28.30309 + 195, 202, 214, 127, 71, 60, 56, 59, 55, 77, 148, 230, 225, 217, 198, 202, 28.30310 + 216, 216, 221, 216, 202, 183, 173, 162, 148, 140, 126, 127, 97, 65, 71, 73, 28.30311 + 80, 88, 72, 67, 67, 69, 71, 60, 79, 132, 201, 230, 233, 123, 115, 127, 28.30312 + 138, 142, 158, 166, 166, 170, 167, 159, 140, 72, 45, 36, 51, 73, 73, 77, 28.30313 + 71, 76, 80, 83, 84, 85, 77, 34, 77, 119, 139, 102, 111, 127, 134, 128, 28.30314 + 136, 123, 124, 37, 123, 120, 122, 120, 131, 139, 146, 165, 112, 107, 134, 150, 28.30315 + 163, 173, 179, 181, 183, 182, 186, 187, 190, 194, 204, 204, 194, 198, 195, 193, 28.30316 + 185, 177, 175, 165, 159, 147, 128, 24, 28, 28, 55, 63, 64, 36, 41, 46, 28.30317 + 40, 29, 45, 36, 13, 17, 138, 162, 115, 111, 118, 138, 148, 154, 158, 155, 28.30318 + 142, 131, 127, 122, 132, 134, 122, 59, 28, 13, 18, 21, 22, 20, 18, 24, 28.30319 + 25, 25, 32, 37, 42, 46, 48, 59, 75, 68, 30, 165, 220, 234, 177, 110, 28.30320 + 91, 89, 85, 57, 18, 10, 17, 24, 22, 24, 30, 30, 52, 55, 244, 241, 28.30321 + 236, 112, 103, 102, 120, 132, 134, 151, 162, 174, 169, 158, 147, 146, 123, 20, 28.30322 + 21, 21, 16, 16, 21, 20, 20, 21, 36, 20, 22, 38, 65, 97, 225, 232, 28.30323 + 228, 130, 115, 119, 128, 132, 146, 143, 143, 140, 143, 140, 153, 147, 123, 41, 28.30324 + 38, 25, 26, 49, 68, 63, 67, 69, 178, 216, 210, 150, 130, 139, 151, 158, 28.30325 + 161, 167, 171, 178, 186, 191, 193, 190, 179, 99, 41, 28, 42, 59, 69, 80, 28.30326 + 161, 230, 228, 193, 178, 186, 195, 191, 162, 178, 169, 165, 151, 151, 136, 130, 28.30327 + 92, 44, 44, 61, 71, 77, 71, 87, 87, 147, 234, 244, 174, 136, 142, 151, 28.30328 + 148, 148, 163, 175, 179, 182, 75, 49, 34, 28, 56, 73, 79, 114, 230, 230, 28.30329 + 229, 191, 183, 187, 181, 179, 163, 148, 130, 95, 29, 28, 29, 10, 9, 6, 28.30330 + 9, 10, 28, 28, 13, 12, 25, 28, 22, 21, 30, 36, 32, 53, 25, 25, 28.30331 + 14, 20, 24, 26, 8, 18, 25, 29, 5, 20, 67, 18, 45, 59, 65, 68, 28.30332 + 77, 77, 79, 77, 77, 36, 110, 104, 112, 138, 245, 245, 234, 111, 111, 118, 28.30333 + 122, 135, 148, 163, 167, 173, 175, 179, 166, 153, 131, 136, 134, 108, 29, 36, 28.30334 + 34, 44, 55, 56, 56, 59, 63, 75, 71, 59, 48, 89, 95, 88, 85, 97, 28.30335 + 112, 112, 208, 245, 248, 240, 177, 126, 112, 57, 49, 42, 41, 44, 49, 57, 28.30336 + 80, 87, 228, 230, 216, 135, 131, 131, 151, 159, 159, 151, 124, 118, 124, 96, 28.30337 + 30, 28, 32, 45, 57, 69, 75, 75, 81, 75, 41, 53, 120, 132, 214, 229, 28.30338 + 229, 127, 114, 123, 134, 150, 159, 171, 174, 173, 154, 81, 45, 40, 48, 34, 28.30339 + 40, 59, 89, 138, 214, 221, 204, 131, 127, 128, 135, 136, 140, 135, 128, 116, 28.30340 + 75, 28, 25, 28, 40, 42, 49, 75, 96, 96, 238, 241, 234, 122, 114, 122, 28.30341 + 132, 147, 161, 169, 177, 174, 163, 161, 146, 57, 34, 34, 44, 48, 63, 56, 28.30342 + 52, 26, 77, 87, 80, 80, 96, 95, 84, 83, 95, 93, 102, 183, 218, 204, 28.30343 + 151, 106, 115, 122, 136, 154, 171, 178, 185, 179, 191, 193, 195, 210, 147, 75, 28.30344 + 61, 45, 49, 61, 83, 151, 228, 225, 222, 199, 186, 212, 216, 217, 214, 205, 28.30345 + 183, 175, 165, 157, 143, 124, 126, 108, 69, 79, 71, 60, 60, 55, 46, 51, 28.30346 + 49, 59, 56, 67, 140, 195, 236, 230, 124, 118, 127, 139, 143, 157, 166, 166, 28.30347 + 173, 166, 159, 142, 71, 42, 41, 67, 44, 32, 28, 25, 33, 20, 17, 17, 28.30348 + 30, 10, 33, 59, 57, 69, 65, 57, 59, 59, 84, 114, 118, 99, 40, 122, 28.30349 + 93, 106, 100, 112, 116, 128, 155, 132, 104, 127, 146, 159, 169, 173, 175, 175, 28.30350 + 174, 177, 178, 182, 190, 197, 208, 195, 194, 201, 193, 186, 177, 175, 165, 161, 28.30351 + 148, 130, 22, 25, 26, 51, 53, 59, 115, 100, 80, 84, 84, 69, 80, 42, 28.30352 + 24, 64, 147, 106, 110, 112, 120, 138, 153, 150, 148, 139, 146, 146, 132, 123, 28.30353 + 131, 132, 108, 40, 32, 42, 51, 49, 42, 46, 57, 57, 73, 64, 69, 64, 28.30354 + 49, 52, 44, 52, 67, 34, 155, 222, 237, 198, 115, 92, 91, 81, 42, 16, 28.30355 + 14, 16, 40, 51, 60, 59, 56, 56, 65, 237, 237, 232, 106, 95, 110, 123, 28.30356 + 123, 127, 138, 158, 171, 162, 155, 144, 143, 126, 22, 21, 25, 8, 20, 21, 28.30357 + 21, 16, 28, 42, 24, 21, 68, 67, 119, 222, 229, 226, 128, 118, 127, 135, 28.30358 + 134, 143, 132, 153, 147, 147, 139, 151, 144, 116, 41, 37, 22, 36, 60, 69, 28.30359 + 67, 69, 71, 158, 221, 210, 155, 127, 136, 144, 154, 158, 165, 167, 173, 182, 28.30360 + 186, 190, 186, 183, 128, 46, 42, 44, 67, 72, 91, 148, 226, 229, 194, 177, 28.30361 + 182, 191, 194, 187, 162, 175, 170, 165, 155, 151, 134, 123, 64, 45, 46, 49, 28.30362 + 57, 76, 93, 85, 132, 225, 236, 178, 139, 148, 158, 146, 147, 162, 182, 185, 28.30363 + 186, 87, 40, 32, 20, 48, 75, 87, 157, 233, 232, 229, 189, 189, 185, 178, 28.30364 + 177, 165, 148, 132, 93, 34, 30, 32, 24, 42, 26, 44, 30, 97, 107, 100, 28.30365 + 88, 99, 102, 102, 91, 102, 100, 49, 30, 44, 123, 116, 100, 100, 118, 112, 28.30366 + 99, 95, 95, 89, 63, 26, 46, 108, 122, 126, 119, 124, 119, 120, 84, 73, 28.30367 + 32, 111, 115, 115, 183, 242, 245, 225, 110, 110, 115, 124, 138, 151, 159, 158, 28.30368 + 157, 166, 177, 167, 154, 136, 142, 143, 111, 34, 40, 42, 59, 69, 72, 52, 28.30369 + 71, 72, 69, 63, 75, 68, 80, 84, 95, 99, 103, 119, 174, 241, 246, 248, 28.30370 + 244, 154, 122, 107, 55, 46, 42, 46, 51, 63, 69, 85, 100, 226, 232, 218, 28.30371 + 132, 131, 134, 142, 147, 159, 148, 126, 122, 126, 106, 33, 29, 33, 49, 57, 28.30372 + 53, 55, 60, 49, 75, 33, 57, 104, 123, 209, 226, 222, 131, 115, 123, 134, 28.30373 + 146, 159, 166, 170, 173, 161, 103, 49, 42, 38, 44, 46, 73, 102, 194, 229, 28.30374 + 230, 213, 130, 127, 131, 134, 132, 143, 140, 124, 116, 64, 28, 25, 37, 59, 28.30375 + 61, 73, 81, 103, 116, 237, 237, 234, 123, 114, 126, 138, 148, 159, 170, 175, 28.30376 + 171, 163, 158, 147, 61, 38, 42, 63, 64, 77, 72, 45, 34, 37, 33, 46, 28.30377 + 36, 42, 37, 45, 33, 46, 37, 61, 173, 213, 206, 135, 104, 118, 123, 134, 28.30378 + 138, 169, 178, 175, 179, 185, 195, 201, 209, 162, 87, 67, 56, 71, 61, 104, 28.30379 + 159, 229, 226, 225, 198, 182, 202, 214, 214, 212, 206, 187, 182, 166, 165, 148, 28.30380 + 134, 127, 118, 77, 76, 88, 85, 85, 68, 30, 52, 128, 165, 128, 126, 174, 28.30381 + 210, 226, 230, 120, 118, 126, 139, 138, 154, 162, 169, 166, 166, 158, 144, 77, 28.30382 + 49, 46, 73, 77, 112, 132, 146, 142, 136, 144, 153, 140, 65, 32, 112, 153, 28.30383 + 151, 132, 142, 143, 126, 93, 59, 57, 81, 64, 24, 32, 40, 40, 38, 30, 28.30384 + 69, 142, 147, 110, 110, 140, 147, 157, 163, 159, 162, 158, 159, 153, 158, 159, 28.30385 + 191, 205, 213, 186, 198, 193, 185, 177, 174, 163, 159, 148, 126, 20, 22, 26, 28.30386 + 49, 48, 51, 115, 84, 103, 88, 91, 106, 52, 57, 25, 21, 144, 127, 114, 28.30387 + 111, 114, 115, 126, 138, 139, 150, 142, 142, 148, 136, 130, 139, 123, 92, 36, 28.30388 + 30, 17, 38, 46, 46, 68, 79, 100, 84, 83, 85, 73, 68, 72, 76, 69, 28.30389 + 49, 177, 236, 241, 195, 116, 89, 85, 65, 28, 14, 14, 17, 46, 57, 55, 28.30390 + 56, 52, 52, 69, 216, 230, 230, 100, 92, 111, 124, 123, 123, 134, 146, 167, 28.30391 + 162, 155, 143, 142, 127, 30, 26, 21, 18, 33, 45, 61, 67, 68, 75, 69, 28.30392 + 68, 53, 81, 190, 217, 225, 225, 126, 110, 119, 120, 135, 144, 126, 138, 146, 28.30393 + 148, 142, 147, 146, 122, 34, 30, 25, 32, 65, 60, 63, 59, 69, 136, 216, 28.30394 + 210, 165, 126, 134, 136, 147, 157, 162, 169, 170, 178, 183, 185, 182, 182, 155, 28.30395 + 72, 42, 38, 76, 80, 84, 128, 218, 228, 198, 174, 178, 187, 195, 195, 171, 28.30396 + 162, 175, 175, 166, 161, 147, 132, 107, 69, 67, 71, 96, 102, 100, 93, 112, 28.30397 + 210, 232, 182, 146, 153, 159, 146, 148, 165, 186, 191, 191, 136, 64, 34, 17, 28.30398 + 56, 81, 99, 185, 237, 234, 232, 187, 187, 186, 179, 175, 165, 147, 131, 87, 28.30399 + 32, 28, 30, 49, 44, 48, 51, 29, 114, 119, 106, 89, 87, 96, 85, 91, 28.30400 + 96, 103, 61, 24, 93, 124, 111, 114, 115, 111, 116, 108, 114, 107, 110, 65, 28.30401 + 22, 106, 124, 120, 120, 115, 116, 104, 112, 96, 88, 32, 116, 118, 116, 201, 28.30402 + 245, 245, 226, 110, 108, 114, 123, 140, 154, 165, 162, 147, 157, 158, 154, 131, 28.30403 + 131, 146, 146, 111, 37, 41, 41, 65, 51, 61, 71, 77, 83, 88, 88, 83, 28.30404 + 92, 104, 106, 114, 120, 130, 162, 218, 248, 248, 246, 221, 131, 123, 84, 48, 28.30405 + 41, 41, 55, 61, 64, 76, 81, 104, 226, 232, 225, 127, 126, 135, 122, 136, 28.30406 + 138, 138, 119, 127, 124, 111, 34, 29, 32, 56, 64, 81, 88, 85, 77, 77, 28.30407 + 25, 128, 124, 130, 194, 222, 217, 135, 116, 123, 134, 144, 154, 169, 171, 175, 28.30408 + 174, 142, 61, 49, 45, 49, 69, 87, 116, 204, 230, 228, 213, 130, 127, 130, 28.30409 + 127, 136, 135, 131, 122, 107, 42, 26, 22, 42, 67, 75, 79, 97, 97, 120, 28.30410 + 237, 238, 236, 124, 116, 126, 135, 147, 158, 169, 175, 169, 158, 154, 143, 72, 28.30411 + 45, 40, 60, 87, 96, 93, 79, 26, 42, 139, 148, 126, 131, 142, 139, 120, 28.30412 + 131, 139, 97, 159, 206, 201, 124, 106, 118, 124, 130, 131, 157, 162, 181, 175, 28.30413 + 174, 187, 197, 199, 201, 128, 79, 71, 77, 87, 150, 209, 230, 228, 226, 193, 28.30414 + 181, 197, 206, 208, 206, 205, 183, 181, 171, 162, 161, 142, 127, 127, 83, 96, 28.30415 + 112, 143, 134, 77, 44, 124, 178, 173, 178, 190, 193, 222, 229, 218, 122, 118, 28.30416 + 127, 138, 134, 150, 159, 167, 169, 163, 157, 143, 84, 55, 46, 73, 130, 153, 28.30417 + 155, 154, 159, 161, 159, 162, 163, 115, 41, 138, 162, 170, 170, 166, 166, 163, 28.30418 + 157, 140, 107, 97, 53, 67, 154, 161, 106, 120, 143, 114, 85, 161, 132, 102, 28.30419 + 122, 134, 140, 146, 148, 134, 135, 147, 107, 97, 112, 175, 204, 217, 194, 189, 28.30420 + 191, 182, 175, 173, 162, 155, 147, 122, 17, 24, 29, 53, 89, 102, 88, 84, 28.30421 + 60, 87, 84, 76, 37, 55, 25, 10, 127, 123, 100, 114, 111, 111, 110, 112, 28.30422 + 119, 140, 153, 146, 140, 147, 132, 127, 131, 116, 79, 29, 38, 44, 14, 38, 28.30423 + 63, 96, 84, 76, 76, 65, 63, 63, 69, 56, 44, 118, 212, 238, 237, 209, 28.30424 + 112, 85, 77, 51, 21, 13, 14, 14, 44, 57, 49, 48, 37, 55, 103, 236, 28.30425 + 228, 210, 106, 103, 114, 126, 130, 124, 130, 140, 157, 159, 150, 135, 142, 130, 28.30426 + 28, 28, 9, 59, 44, 53, 55, 68, 77, 69, 68, 52, 75, 96, 224, 221, 28.30427 + 224, 216, 127, 103, 112, 123, 146, 148, 132, 123, 132, 139, 136, 146, 144, 120, 28.30428 + 49, 26, 26, 33, 67, 67, 75, 52, 61, 112, 206, 206, 173, 126, 132, 134, 28.30429 + 146, 151, 161, 166, 163, 171, 177, 182, 178, 177, 167, 96, 46, 32, 67, 79, 28.30430 + 83, 108, 201, 225, 208, 173, 175, 186, 194, 197, 189, 161, 163, 177, 179, 167, 28.30431 + 159, 144, 136, 103, 96, 95, 97, 95, 89, 89, 96, 190, 237, 185, 147, 157, 28.30432 + 165, 144, 147, 178, 189, 194, 197, 166, 51, 37, 30, 69, 91, 108, 195, 237, 28.30433 + 236, 232, 189, 187, 181, 178, 175, 166, 147, 128, 81, 30, 29, 28, 42, 60, 28.30434 + 65, 48, 32, 106, 123, 112, 122, 112, 112, 123, 111, 102, 102, 61, 49, 118, 28.30435 + 128, 111, 110, 106, 96, 92, 107, 97, 87, 106, 48, 21, 107, 126, 115, 104, 28.30436 + 99, 106, 111, 115, 88, 80, 36, 116, 119, 122, 221, 244, 241, 222, 112, 110, 28.30437 + 115, 120, 132, 157, 166, 167, 166, 161, 144, 138, 127, 139, 144, 150, 116, 69, 28.30438 + 42, 42, 69, 53, 65, 80, 84, 79, 79, 83, 81, 99, 119, 127, 135, 128, 28.30439 + 157, 213, 245, 249, 248, 242, 163, 126, 119, 71, 46, 44, 38, 57, 63, 65, 28.30440 + 76, 81, 106, 230, 232, 224, 134, 134, 128, 138, 124, 118, 114, 119, 130, 119, 28.30441 + 110, 34, 33, 30, 60, 80, 95, 97, 89, 93, 69, 28, 122, 134, 127, 170, 28.30442 + 216, 218, 153, 118, 124, 135, 146, 153, 162, 170, 167, 175, 159, 118, 71, 73, 28.30443 + 79, 102, 126, 181, 206, 230, 222, 221, 128, 126, 130, 130, 130, 135, 123, 118, 28.30444 + 77, 30, 25, 24, 46, 65, 73, 91, 103, 107, 131, 236, 238, 234, 123, 119, 28.30445 + 127, 139, 148, 159, 169, 175, 166, 162, 157, 144, 83, 48, 42, 63, 92, 91, 28.30446 + 95, 93, 29, 157, 163, 159, 148, 148, 155, 148, 136, 146, 139, 107, 119, 195, 28.30447 + 190, 122, 108, 119, 123, 128, 132, 138, 170, 178, 185, 166, 181, 187, 197, 209, 28.30448 + 169, 104, 85, 97, 139, 159, 224, 228, 229, 226, 194, 175, 183, 194, 190, 193, 28.30449 + 194, 186, 181, 174, 170, 167, 157, 134, 127, 91, 108, 138, 147, 146, 69, 36, 28.30450 + 135, 179, 175, 189, 190, 193, 226, 233, 226, 118, 118, 127, 138, 131, 144, 161, 28.30451 + 171, 169, 162, 155, 146, 108, 63, 55, 80, 135, 154, 161, 158, 169, 162, 154, 28.30452 + 157, 161, 161, 41, 140, 167, 167, 158, 153, 153, 153, 153, 163, 131, 107, 28, 28.30453 + 148, 155, 153, 151, 150, 142, 132, 130, 77, 76, 75, 107, 134, 111, 119, 118, 28.30454 + 95, 77, 88, 79, 87, 103, 161, 205, 217, 201, 182, 191, 181, 177, 174, 162, 28.30455 + 155, 146, 115, 17, 24, 41, 59, 89, 111, 100, 55, 49, 56, 26, 55, 37, 28.30456 + 32, 18, 17, 119, 114, 77, 119, 112, 108, 110, 110, 107, 116, 139, 155, 144, 28.30457 + 138, 144, 128, 136, 127, 114, 71, 46, 42, 41, 36, 61, 93, 71, 69, 65, 28.30458 + 60, 63, 59, 59, 76, 120, 182, 232, 238, 234, 193, 110, 85, 59, 26, 16, 28.30459 + 12, 13, 14, 30, 53, 48, 34, 37, 72, 191, 234, 229, 216, 111, 103, 114, 28.30460 + 128, 130, 143, 131, 127, 143, 154, 153, 138, 143, 118, 30, 26, 13, 45, 48, 28.30461 + 44, 72, 51, 52, 55, 51, 51, 76, 150, 214, 218, 224, 214, 127, 122, 111, 28.30462 + 122, 136, 136, 146, 135, 122, 123, 131, 135, 144, 122, 56, 24, 21, 34, 69, 28.30463 + 83, 57, 56, 64, 93, 193, 206, 171, 130, 123, 130, 143, 148, 157, 163, 162, 28.30464 + 163, 167, 171, 177, 171, 170, 124, 56, 53, 72, 72, 87, 96, 159, 224, 209, 28.30465 + 171, 171, 182, 194, 195, 195, 179, 155, 162, 177, 174, 167, 157, 140, 134, 126, 28.30466 + 119, 99, 89, 93, 91, 83, 128, 224, 197, 153, 157, 171, 148, 147, 183, 194, 28.30467 + 201, 202, 186, 81, 42, 32, 38, 95, 116, 212, 238, 237, 234, 186, 186, 181, 28.30468 + 175, 178, 169, 146, 120, 53, 29, 28, 18, 46, 46, 56, 55, 38, 67, 88, 28.30469 + 120, 80, 114, 108, 106, 104, 110, 99, 64, 48, 80, 127, 114, 120, 92, 95, 28.30470 + 108, 89, 96, 97, 96, 53, 18, 106, 119, 104, 110, 116, 110, 112, 93, 84, 28.30471 + 84, 46, 103, 108, 130, 229, 241, 241, 220, 115, 112, 118, 119, 130, 151, 165, 28.30472 + 171, 165, 159, 159, 154, 138, 142, 150, 150, 123, 99, 44, 46, 68, 48, 60, 28.30473 + 63, 69, 72, 73, 72, 97, 99, 128, 135, 130, 159, 202, 240, 246, 250, 248, 28.30474 + 229, 136, 123, 112, 60, 44, 38, 42, 56, 60, 68, 79, 92, 135, 217, 225, 28.30475 + 224, 135, 120, 126, 130, 120, 124, 116, 116, 126, 127, 110, 34, 29, 42, 48, 28.30476 + 52, 96, 102, 89, 85, 81, 22, 127, 132, 124, 138, 202, 216, 185, 122, 120, 28.30477 + 135, 142, 151, 158, 169, 169, 178, 178, 161, 124, 127, 144, 171, 195, 209, 205, 28.30478 + 233, 217, 216, 130, 128, 130, 130, 136, 131, 120, 97, 37, 25, 24, 32, 60, 28.30479 + 61, 69, 93, 100, 108, 132, 233, 240, 232, 123, 115, 124, 134, 148, 159, 169, 28.30480 + 173, 167, 158, 154, 146, 119, 55, 44, 71, 84, 89, 89, 83, 29, 166, 166, 28.30481 + 177, 165, 161, 157, 139, 138, 153, 157, 130, 93, 155, 193, 131, 103, 119, 124, 28.30482 + 128, 135, 131, 158, 162, 174, 162, 173, 179, 193, 199, 209, 178, 151, 171, 194, 28.30483 + 221, 226, 228, 225, 226, 189, 173, 173, 182, 185, 182, 187, 185, 186, 179, 170, 28.30484 + 163, 166, 150, 131, 95, 115, 132, 153, 138, 63, 38, 115, 169, 183, 179, 190, 28.30485 + 202, 232, 229, 228, 120, 116, 127, 140, 135, 148, 161, 170, 169, 163, 154, 146, 28.30486 + 128, 73, 61, 83, 139, 154, 163, 167, 167, 169, 162, 153, 162, 120, 55, 131, 28.30487 + 162, 167, 158, 158, 153, 151, 151, 158, 139, 118, 42, 161, 159, 150, 146, 142, 28.30488 + 140, 130, 124, 123, 110, 108, 99, 96, 96, 95, 84, 81, 79, 76, 72, 92, 28.30489 + 106, 170, 213, 224, 202, 178, 189, 183, 177, 174, 163, 153, 144, 107, 16, 25, 28.30490 + 40, 85, 96, 100, 99, 48, 57, 63, 45, 40, 79, 40, 18, 12, 122, 107, 28.30491 + 80, 69, 103, 118, 111, 111, 110, 108, 119, 139, 147, 146, 144, 139, 122, 131, 28.30492 + 130, 111, 89, 75, 73, 64, 83, 83, 102, 73, 63, 61, 64, 79, 120, 177, 28.30493 + 216, 234, 241, 237, 216, 169, 95, 69, 37, 18, 13, 13, 14, 20, 38, 46, 28.30494 + 46, 40, 52, 115, 218, 224, 230, 214, 99, 97, 116, 126, 127, 143, 122, 124, 28.30495 + 130, 148, 143, 135, 140, 119, 34, 30, 40, 77, 75, 45, 56, 45, 61, 45, 28.30496 + 49, 45, 75, 162, 210, 214, 214, 197, 127, 108, 116, 132, 146, 140, 150, 151, 28.30497 + 139, 120, 119, 134, 139, 123, 49, 37, 37, 41, 69, 75, 67, 52, 57, 64, 28.30498 + 187, 208, 170, 120, 128, 128, 142, 146, 154, 162, 166, 155, 155, 159, 161, 169, 28.30499 + 169, 143, 88, 57, 42, 57, 81, 84, 135, 214, 217, 171, 169, 179, 189, 193, 28.30500 + 195, 194, 183, 153, 162, 181, 174, 162, 155, 144, 136, 139, 139, 112, 92, 84, 28.30501 + 87, 97, 193, 221, 169, 159, 171, 147, 150, 187, 198, 206, 208, 201, 148, 77, 28.30502 + 37, 40, 103, 159, 222, 237, 238, 234, 191, 187, 177, 175, 177, 166, 139, 108, 28.30503 + 34, 28, 26, 22, 55, 48, 53, 56, 41, 46, 119, 124, 114, 118, 112, 107, 28.30504 + 107, 104, 95, 64, 53, 83, 130, 97, 104, 93, 112, 99, 89, 99, 96, 95, 28.30505 + 60, 24, 107, 120, 100, 97, 99, 87, 100, 89, 80, 65, 69, 104, 118, 178, 28.30506 + 230, 246, 240, 217, 116, 115, 120, 112, 124, 146, 159, 166, 171, 167, 162, 157, 28.30507 + 147, 132, 138, 154, 140, 108, 48, 48, 53, 60, 61, 79, 83, 77, 73, 79, 28.30508 + 92, 111, 134, 132, 147, 194, 238, 245, 249, 249, 248, 173, 124, 123, 99, 48, 28.30509 + 40, 26, 44, 52, 61, 75, 79, 91, 187, 214, 221, 212, 131, 123, 128, 134, 28.30510 + 123, 124, 126, 111, 118, 126, 115, 40, 32, 32, 46, 80, 93, 102, 80, 83, 28.30511 + 81, 18, 123, 132, 124, 126, 148, 204, 199, 128, 122, 130, 138, 147, 148, 157, 28.30512 + 154, 181, 183, 182, 174, 189, 201, 205, 212, 210, 218, 209, 217, 169, 130, 130, 28.30513 + 136, 140, 135, 126, 120, 46, 28, 24, 22, 42, 56, 64, 72, 92, 99, 108, 28.30514 + 190, 234, 237, 233, 124, 111, 124, 132, 147, 155, 167, 169, 170, 165, 157, 151, 28.30515 + 144, 72, 52, 53, 85, 91, 89, 87, 37, 119, 170, 177, 171, 167, 177, 162, 28.30516 + 157, 155, 148, 155, 87, 107, 190, 147, 107, 110, 123, 127, 131, 132, 138, 163, 28.30517 + 165, 161, 169, 174, 186, 191, 208, 216, 212, 220, 221, 226, 224, 224, 229, 212, 28.30518 + 189, 167, 170, 150, 171, 177, 185, 185, 183, 185, 175, 173, 166, 166, 146, 123, 28.30519 + 116, 139, 151, 87, 57, 32, 104, 169, 170, 173, 175, 187, 229, 238, 228, 122, 28.30520 + 116, 126, 138, 132, 154, 163, 169, 166, 165, 158, 148, 139, 92, 67, 97, 132, 28.30521 + 153, 166, 166, 169, 170, 170, 169, 151, 132, 52, 124, 163, 165, 154, 155, 151, 28.30522 + 153, 153, 153, 128, 118, 48, 120, 161, 139, 140, 143, 140, 128, 119, 127, 126, 28.30523 + 115, 107, 91, 91, 83, 80, 79, 75, 77, 88, 106, 112, 187, 218, 226, 191, 28.30524 + 175, 186, 182, 177, 174, 165, 150, 139, 67, 16, 25, 41, 102, 96, 100, 106, 28.30525 + 69, 42, 56, 59, 33, 33, 38, 20, 10, 104, 92, 72, 61, 52, 81, 119, 28.30526 + 115, 111, 108, 106, 114, 140, 151, 148, 151, 142, 124, 123, 118, 151, 123, 111, 28.30527 + 107, 112, 116, 123, 123, 124, 123, 146, 183, 213, 229, 240, 238, 236, 224, 193, 28.30528 + 112, 80, 42, 20, 13, 10, 12, 16, 30, 41, 33, 44, 44, 123, 186, 233, 28.30529 + 226, 229, 221, 114, 97, 108, 120, 135, 140, 127, 132, 124, 135, 136, 136, 138, 28.30530 + 127, 92, 65, 33, 68, 79, 77, 56, 55, 60, 71, 48, 60, 95, 183, 208, 28.30531 + 212, 217, 159, 112, 116, 122, 130, 135, 148, 148, 150, 148, 138, 115, 122, 136, 28.30532 + 128, 99, 51, 45, 45, 75, 56, 60, 52, 56, 55, 165, 206, 170, 118, 126, 28.30533 + 128, 140, 148, 154, 159, 163, 151, 151, 146, 146, 154, 162, 153, 104, 59, 30, 28.30534 + 53, 73, 85, 114, 198, 216, 179, 166, 177, 186, 189, 193, 194, 195, 183, 157, 28.30535 + 162, 175, 171, 162, 155, 150, 139, 139, 136, 108, 84, 91, 92, 142, 229, 182, 28.30536 + 162, 169, 151, 187, 193, 206, 212, 210, 212, 194, 118, 49, 55, 114, 190, 234, 28.30537 + 237, 238, 229, 187, 186, 183, 177, 174, 154, 139, 88, 29, 26, 26, 36, 52, 28.30538 + 56, 45, 60, 51, 44, 108, 123, 112, 118, 107, 107, 115, 104, 103, 71, 55, 28.30539 + 85, 122, 110, 104, 93, 102, 84, 97, 92, 95, 97, 59, 14, 112, 119, 92, 28.30540 + 100, 92, 96, 81, 65, 69, 99, 89, 103, 124, 220, 238, 234, 242, 206, 118, 28.30541 + 120, 122, 123, 116, 135, 157, 165, 167, 169, 166, 162, 158, 142, 146, 140, 159, 28.30542 + 123, 106, 89, 85, 95, 97, 99, 100, 108, 108, 104, 103, 122, 138, 131, 191, 28.30543 + 234, 238, 242, 248, 245, 224, 130, 126, 119, 69, 45, 38, 34, 48, 56, 69, 28.30544 + 75, 85, 186, 214, 214, 222, 204, 118, 132, 139, 130, 136, 136, 140, 131, 112, 28.30545 + 127, 122, 52, 28, 32, 67, 77, 80, 97, 102, 76, 73, 18, 120, 124, 124, 28.30546 + 128, 127, 150, 201, 136, 122, 127, 131, 138, 140, 140, 142, 144, 159, 187, 186, 28.30547 + 197, 199, 209, 214, 216, 206, 212, 193, 130, 128, 138, 139, 138, 128, 127, 65, 28.30548 + 28, 24, 21, 21, 56, 63, 68, 91, 96, 103, 128, 217, 230, 236, 230, 126, 28.30549 + 115, 122, 131, 140, 151, 163, 167, 169, 167, 159, 150, 136, 116, 67, 52, 56, 28.30550 + 92, 88, 87, 45, 115, 170, 178, 157, 169, 174, 148, 171, 151, 150, 147, 100, 28.30551 + 79, 181, 185, 115, 100, 118, 127, 131, 130, 130, 147, 148, 158, 169, 175, 177, 28.30552 + 183, 189, 204, 201, 212, 218, 218, 222, 220, 213, 198, 179, 169, 147, 147, 146, 28.30553 + 151, 171, 174, 183, 182, 178, 169, 169, 170, 166, 138, 120, 147, 112, 61, 34, 28.30554 + 37, 96, 165, 173, 179, 179, 195, 230, 234, 230, 128, 120, 126, 135, 135, 163, 28.30555 + 165, 167, 167, 165, 158, 147, 142, 131, 79, 112, 140, 161, 158, 166, 167, 163, 28.30556 + 167, 171, 163, 147, 71, 127, 163, 167, 155, 148, 157, 155, 147, 151, 134, 116, 28.30557 + 45, 135, 155, 144, 148, 135, 136, 128, 134, 123, 136, 122, 118, 107, 97, 88, 28.30558 + 84, 79, 75, 80, 75, 107, 126, 209, 222, 225, 170, 169, 186, 185, 177, 171, 28.30559 + 163, 148, 136, 57, 17, 24, 42, 99, 100, 106, 92, 77, 42, 44, 56, 64, 28.30560 + 16, 42, 20, 10, 97, 93, 75, 71, 65, 45, 56, 85, 115, 116, 111, 107, 28.30561 + 111, 134, 153, 146, 136, 130, 122, 154, 170, 181, 179, 187, 193, 189, 194, 190, 28.30562 + 197, 209, 216, 229, 233, 236, 234, 224, 222, 182, 130, 79, 44, 22, 14, 12, 28.30563 + 13, 22, 32, 38, 34, 60, 116, 162, 189, 216, 214, 222, 230, 214, 119, 91, 28.30564 + 116, 112, 123, 138, 151, 154, 135, 128, 127, 140, 138, 144, 122, 107, 108, 110, 28.30565 + 118, 104, 83, 64, 51, 69, 46, 68, 138, 201, 209, 210, 206, 155, 119, 110, 28.30566 + 114, 130, 143, 148, 138, 154, 153, 144, 135, 115, 128, 128, 114, 96, 59, 55, 28.30567 + 76, 72, 59, 53, 44, 55, 130, 210, 185, 115, 123, 130, 143, 148, 154, 161, 28.30568 + 143, 139, 135, 132, 131, 135, 148, 153, 131, 96, 64, 36, 60, 77, 100, 157, 28.30569 + 210, 182, 163, 169, 178, 185, 187, 186, 190, 189, 177, 158, 169, 175, 167, 162, 28.30570 + 150, 139, 138, 134, 100, 87, 81, 87, 93, 190, 220, 163, 163, 147, 194, 205, 28.30571 + 212, 214, 214, 214, 214, 186, 134, 142, 191, 229, 238, 238, 238, 221, 195, 189, 28.30572 + 182, 178, 167, 143, 126, 52, 26, 24, 26, 38, 59, 55, 68, 68, 57, 45, 28.30573 + 112, 126, 88, 114, 100, 96, 112, 118, 104, 91, 55, 68, 124, 92, 104, 92, 28.30574 + 88, 87, 100, 93, 84, 100, 45, 20, 106, 115, 89, 95, 81, 85, 95, 91, 28.30575 + 95, 100, 107, 150, 213, 230, 238, 240, 236, 193, 119, 124, 114, 124, 128, 119, 28.30576 + 144, 157, 162, 165, 162, 162, 161, 159, 150, 134, 150, 163, 124, 120, 122, 120, 28.30577 + 120, 126, 123, 123, 122, 120, 115, 126, 154, 197, 232, 236, 240, 245, 244, 237, 28.30578 + 148, 123, 128, 114, 57, 40, 34, 40, 63, 67, 68, 81, 189, 212, 217, 220, 28.30579 + 213, 205, 127, 119, 131, 126, 144, 130, 136, 132, 136, 119, 123, 104, 32, 51, 28.30580 + 37, 40, 80, 99, 99, 80, 61, 30, 112, 123, 127, 114, 118, 124, 136, 182, 28.30581 + 174, 128, 128, 127, 131, 132, 132, 132, 135, 135, 136, 147, 165, 170, 173, 182, 28.30582 + 187, 165, 130, 132, 132, 132, 130, 126, 120, 56, 28, 22, 21, 18, 29, 44, 28.30583 + 56, 72, 93, 97, 108, 191, 229, 230, 234, 225, 128, 119, 127, 134, 140, 148, 28.30584 + 161, 167, 167, 169, 163, 158, 144, 142, 112, 80, 65, 61, 67, 88, 44, 122, 28.30585 + 171, 178, 177, 163, 157, 153, 153, 169, 142, 148, 95, 65, 158, 182, 140, 99, 28.30586 + 108, 124, 128, 132, 128, 128, 132, 157, 167, 163, 174, 169, 169, 165, 159, 181, 28.30587 + 191, 197, 205, 202, 190, 166, 143, 147, 144, 143, 144, 147, 146, 150, 163, 165, 28.30588 + 162, 159, 165, 157, 147, 131, 138, 110, 59, 30, 37, 37, 92, 155, 175, 190, 28.30589 + 177, 208, 222, 230, 230, 134, 120, 120, 136, 154, 165, 173, 167, 165, 165, 158, 28.30590 + 153, 140, 146, 124, 97, 89, 108, 135, 159, 167, 165, 165, 174, 144, 169, 67, 28.30591 + 104, 161, 161, 155, 159, 159, 153, 151, 150, 131, 119, 28, 135, 154, 162, 153, 28.30592 + 144, 139, 134, 127, 122, 140, 135, 103, 115, 108, 107, 100, 88, 89, 87, 89, 28.30593 + 93, 148, 220, 229, 225, 161, 163, 181, 183, 177, 171, 162, 150, 135, 46, 20, 28.30594 + 25, 41, 99, 97, 102, 79, 34, 32, 22, 24, 17, 18, 25, 14, 13, 87, 28.30595 + 83, 72, 59, 56, 59, 45, 37, 53, 84, 107, 112, 108, 111, 118, 128, 135, 28.30596 + 142, 142, 146, 146, 158, 177, 189, 199, 205, 213, 210, 214, 221, 226, 228, 224, 28.30597 + 222, 220, 202, 163, 119, 76, 40, 21, 14, 12, 12, 20, 26, 41, 32, 127, 28.30598 + 169, 206, 217, 201, 209, 209, 218, 214, 159, 115, 92, 140, 120, 130, 136, 138, 28.30599 + 131, 138, 144, 136, 131, 151, 138, 140, 134, 142, 148, 165, 143, 128, 100, 77, 28.30600 + 40, 40, 72, 162, 198, 202, 204, 210, 146, 122, 119, 119, 148, 150, 142, 142, 28.30601 + 138, 135, 138, 143, 132, 112, 130, 126, 111, 85, 110, 93, 87, 51, 59, 48, 28.30602 + 51, 92, 193, 195, 132, 114, 130, 140, 143, 143, 142, 138, 132, 130, 123, 122, 28.30603 + 120, 123, 139, 139, 114, 79, 29, 46, 71, 87, 111, 186, 201, 158, 163, 171, 28.30604 + 179, 181, 183, 185, 189, 187, 165, 158, 171, 173, 161, 144, 143, 135, 110, 71, 28.30605 + 49, 72, 81, 87, 114, 214, 177, 170, 154, 197, 206, 217, 217, 220, 214, 222, 28.30606 + 216, 212, 217, 233, 234, 234, 237, 237, 209, 190, 191, 186, 174, 147, 136, 91, 28.30607 + 30, 25, 24, 29, 46, 59, 57, 67, 63, 64, 41, 96, 95, 119, 106, 115, 28.30608 + 122, 118, 115, 104, 102, 52, 60, 89, 118, 115, 80, 91, 84, 92, 99, 96, 28.30609 + 95, 52, 17, 102, 107, 106, 89, 88, 88, 93, 100, 130, 183, 201, 226, 222, 28.30610 + 234, 229, 234, 232, 161, 122, 123, 130, 136, 148, 128, 123, 143, 150, 150, 150, 28.30611 + 153, 157, 157, 159, 150, 143, 157, 166, 157, 177, 185, 195, 204, 209, 212, 216, 28.30612 + 221, 224, 222, 226, 228, 230, 236, 241, 242, 230, 162, 123, 128, 126, 92, 41, 28.30613 + 34, 33, 45, 65, 69, 100, 165, 228, 214, 212, 225, 221, 167, 132, 135, 142, 28.30614 + 138, 140, 134, 146, 130, 134, 122, 120, 104, 76, 61, 40, 38, 38, 93, 97, 28.30615 + 76, 77, 26, 112, 116, 114, 112, 112, 107, 120, 124, 128, 131, 132, 158, 159, 28.30616 + 154, 151, 151, 147, 144, 142, 136, 136, 134, 134, 134, 135, 132, 130, 130, 126, 28.30617 + 126, 122, 89, 41, 26, 22, 20, 18, 24, 59, 52, 68, 89, 97, 104, 171, 28.30618 + 217, 225, 228, 232, 218, 127, 120, 122, 134, 140, 144, 148, 157, 162, 162, 159, 28.30619 + 154, 153, 147, 148, 122, 111, 100, 83, 63, 42, 95, 171, 167, 175, 144, 169, 28.30620 + 165, 165, 167, 146, 148, 106, 72, 126, 175, 186, 118, 107, 116, 124, 124, 127, 28.30621 + 128, 131, 134, 135, 139, 138, 138, 147, 135, 134, 131, 132, 136, 134, 132, 134, 28.30622 + 136, 136, 142, 143, 144, 147, 146, 144, 148, 146, 142, 140, 140, 140, 135, 144, 28.30623 + 144, 114, 55, 32, 28, 52, 33, 91, 154, 161, 170, 212, 217, 217, 229, 222, 28.30624 + 131, 127, 128, 135, 157, 162, 166, 161, 166, 166, 161, 158, 148, 139, 144, 153, 28.30625 + 140, 116, 118, 107, 159, 162, 161, 158, 143, 150, 72, 88, 167, 155, 155, 157, 28.30626 + 155, 151, 148, 140, 124, 115, 41, 131, 153, 154, 153, 128, 132, 127, 120, 111, 28.30627 + 108, 110, 96, 115, 115, 112, 106, 97, 100, 97, 104, 108, 170, 228, 229, 218, 28.30628 + 153, 158, 167, 179, 179, 170, 163, 150, 132, 41, 21, 24, 46, 97, 99, 102, 28.30629 + 16, 16, 13, 22, 12, 13, 30, 21, 17, 9, 75, 73, 72, 61, 79, 63, 28.30630 + 57, 45, 33, 33, 46, 69, 97, 107, 110, 108, 108, 115, 114, 123, 123, 128, 28.30631 + 134, 148, 171, 182, 190, 205, 209, 206, 208, 208, 204, 186, 163, 120, 83, 61, 28.30632 + 36, 21, 14, 9, 12, 10, 18, 28, 28, 102, 230, 191, 202, 194, 206, 205, 28.30633 + 213, 181, 146, 123, 110, 119, 120, 120, 116, 122, 115, 120, 119, 123, 122, 126, 28.30634 + 130, 124, 134, 147, 136, 140, 140, 135, 136, 153, 76, 38, 57, 95, 218, 190, 28.30635 + 194, 199, 202, 139, 123, 128, 139, 123, 143, 142, 139, 127, 130, 127, 127, 127, 28.30636 + 124, 126, 127, 112, 118, 115, 107, 79, 49, 51, 52, 46, 59, 151, 198, 157, 28.30637 + 110, 128, 132, 136, 139, 138, 131, 130, 123, 120, 118, 112, 111, 107, 114, 127, 28.30638 + 88, 77, 69, 55, 68, 85, 136, 204, 169, 159, 166, 169, 167, 174, 177, 182, 28.30639 + 186, 181, 161, 161, 166, 154, 143, 143, 123, 76, 42, 40, 40, 81, 79, 79, 28.30640 + 169, 190, 182, 140, 190, 205, 208, 213, 218, 224, 222, 225, 224, 226, 233, 232, 28.30641 + 236, 233, 225, 199, 195, 189, 183, 169, 138, 104, 45, 28, 25, 24, 24, 51, 28.30642 + 59, 57, 61, 68, 67, 44, 75, 104, 118, 115, 97, 103, 96, 111, 91, 68, 28.30643 + 56, 53, 91, 120, 99, 76, 93, 91, 92, 97, 104, 69, 52, 13, 91, 103, 28.30644 + 95, 97, 63, 85, 106, 198, 218, 214, 218, 238, 221, 232, 246, 229, 204, 130, 28.30645 + 123, 124, 144, 146, 138, 146, 136, 134, 134, 131, 135, 138, 131, 135, 139, 144, 28.30646 + 153, 150, 139, 174, 175, 187, 195, 204, 208, 213, 217, 220, 222, 225, 228, 232, 28.30647 + 233, 234, 232, 206, 144, 122, 124, 131, 122, 61, 36, 33, 36, 55, 65, 104, 28.30648 + 191, 198, 204, 213, 218, 236, 214, 150, 130, 119, 127, 127, 140, 136, 126, 139, 28.30649 + 126, 126, 134, 107, 91, 84, 75, 61, 36, 55, 95, 71, 75, 24, 108, 118, 28.30650 + 110, 88, 80, 85, 95, 93, 89, 88, 88, 102, 116, 120, 123, 119, 115, 119, 28.30651 + 123, 122, 122, 120, 118, 119, 123, 122, 120, 112, 108, 83, 44, 32, 24, 21, 28.30652 + 18, 16, 21, 28, 48, 56, 88, 95, 106, 175, 214, 218, 220, 225, 228, 163, 28.30653 + 127, 118, 127, 142, 138, 139, 146, 144, 151, 154, 159, 158, 153, 150, 143, 144, 28.30654 + 155, 153, 118, 88, 72, 46, 128, 173, 146, 170, 144, 165, 153, 159, 139, 148, 28.30655 + 140, 59, 116, 166, 165, 165, 157, 150, 147, 148, 143, 120, 119, 123, 124, 130, 28.30656 + 131, 131, 128, 127, 134, 127, 112, 108, 102, 96, 96, 108, 122, 128, 136, 140, 28.30657 + 142, 139, 132, 138, 139, 142, 143, 143, 142, 142, 134, 112, 55, 41, 30, 25, 28.30658 + 53, 32, 91, 158, 170, 213, 222, 220, 218, 230, 202, 131, 123, 136, 143, 146, 28.30659 + 153, 159, 163, 163, 163, 161, 157, 158, 154, 146, 144, 144, 161, 155, 134, 115, 28.30660 + 116, 120, 139, 131, 146, 68, 89, 165, 163, 157, 157, 157, 139, 142, 150, 110, 28.30661 + 114, 48, 136, 162, 151, 140, 132, 126, 119, 106, 104, 104, 96, 123, 112, 110, 28.30662 + 111, 103, 99, 102, 80, 107, 114, 185, 226, 232, 216, 147, 151, 157, 171, 178, 28.30663 + 169, 161, 150, 126, 30, 22, 22, 42, 97, 96, 100, 12, 17, 17, 24, 13, 28.30664 + 24, 36, 36, 16, 8, 68, 67, 61, 71, 52, 49, 41, 37, 34, 32, 26, 28.30665 + 22, 33, 41, 64, 83, 97, 100, 106, 106, 106, 107, 108, 115, 123, 130, 134, 28.30666 + 142, 159, 158, 151, 148, 119, 91, 75, 52, 25, 20, 18, 14, 9, 10, 14, 28.30667 + 12, 30, 37, 30, 144, 190, 213, 193, 195, 179, 158, 136, 124, 112, 92, 87, 28.30668 + 83, 85, 89, 92, 95, 96, 99, 103, 104, 103, 106, 107, 112, 118, 120, 120, 28.30669 + 119, 123, 126, 127, 114, 77, 37, 68, 153, 175, 181, 155, 158, 136, 130, 108, 28.30670 + 114, 119, 112, 119, 119, 122, 115, 126, 127, 119, 131, 127, 122, 112, 110, 110, 28.30671 + 106, 96, 45, 25, 33, 48, 41, 45, 104, 178, 186, 108, 120, 118, 120, 122, 28.30672 + 122, 119, 123, 118, 118, 114, 112, 108, 110, 106, 103, 95, 85, 49, 46, 53, 28.30673 + 67, 100, 163, 181, 155, 159, 165, 163, 158, 167, 171, 173, 178, 175, 165, 146, 28.30674 + 144, 147, 130, 91, 53, 38, 32, 32, 59, 76, 80, 138, 204, 182, 158, 170, 28.30675 + 191, 205, 206, 210, 210, 209, 209, 210, 208, 210, 210, 212, 209, 202, 191, 186, 28.30676 + 182, 173, 143, 116, 42, 24, 24, 24, 25, 28, 52, 51, 55, 64, 61, 65, 28.30677 + 57, 53, 56, 61, 73, 55, 57, 65, 57, 57, 75, 72, 64, 65, 73, 79, 28.30678 + 91, 79, 80, 80, 80, 76, 79, 45, 10, 48, 85, 89, 68, 73, 89, 169, 28.30679 + 210, 210, 214, 228, 248, 221, 217, 210, 159, 131, 123, 128, 138, 140, 140, 143, 28.30680 + 143, 140, 138, 132, 136, 139, 135, 134, 130, 127, 128, 130, 131, 128, 128, 130, 28.30681 + 130, 139, 147, 165, 189, 194, 206, 206, 204, 201, 205, 205, 193, 166, 126, 120, 28.30682 + 123, 130, 131, 107, 37, 30, 21, 60, 60, 85, 177, 193, 198, 213, 206, 208, 28.30683 + 181, 150, 136, 120, 138, 127, 126, 130, 134, 116, 122, 112, 119, 110, 130, 115, 28.30684 + 116, 104, 89, 37, 46, 95, 67, 68, 28, 112, 111, 76, 76, 69, 75, 71, 28.30685 + 72, 63, 61, 53, 49, 46, 46, 48, 44, 42, 41, 42, 38, 37, 34, 30, 28.30686 + 33, 37, 34, 33, 30, 28, 28, 22, 20, 18, 17, 17, 22, 37, 51, 42, 28.30687 + 88, 87, 107, 174, 208, 206, 205, 217, 221, 191, 142, 126, 131, 140, 136, 138, 28.30688 + 142, 139, 142, 143, 142, 148, 143, 139, 146, 144, 131, 132, 136, 161, 144, 72, 28.30689 + 45, 110, 114, 118, 120, 126, 128, 135, 135, 140, 139, 104, 37, 91, 124, 142, 28.30690 + 127, 116, 110, 116, 116, 120, 123, 120, 118, 116, 123, 123, 116, 114, 111, 88, 28.30691 + 55, 37, 33, 29, 30, 30, 36, 68, 102, 110, 114, 116, 112, 107, 108, 112, 28.30692 + 111, 110, 110, 107, 97, 61, 44, 34, 28, 25, 42, 60, 42, 148, 189, 204, 28.30693 + 216, 209, 199, 221, 218, 150, 128, 131, 143, 138, 138, 138, 146, 148, 150, 150, 28.30694 + 148, 147, 148, 146, 151, 150, 144, 146, 163, 158, 147, 131, 126, 120, 122, 102, 28.30695 + 85, 97, 134, 148, 159, 150, 151, 136, 140, 147, 126, 112, 42, 131, 135, 130, 28.30696 + 124, 108, 104, 91, 107, 112, 104, 93, 89, 95, 114, 111, 116, 107, 106, 99, 28.30697 + 112, 123, 199, 230, 232, 213, 144, 150, 154, 165, 173, 167, 161, 146, 107, 25, 28.30698 + 24, 21, 44, 81, 88, 87, 30, 25, 24, 26, 26, 33, 28, 25, 13, 6, 28.30699 + 56, 61, 45, 48, 44, 41, 32, 33, 26, 26, 22, 21, 20, 21, 17, 17, 28.30700 + 22, 34, 41, 55, 67, 89, 89, 91, 89, 85, 87, 81, 77, 75, 71, 59, 28.30701 + 36, 24, 20, 16, 14, 12, 8, 8, 16, 22, 21, 17, 25, 18, 20, 76, 28.30702 + 124, 144, 138, 135, 138, 88, 76, 65, 60, 44, 24, 25, 24, 21, 21, 22, 28.30703 + 24, 26, 28, 33, 33, 32, 37, 69, 80, 87, 85, 83, 81, 96, 88, 63, 28.30704 + 33, 46, 64, 128, 130, 140, 139, 143, 116, 93, 84, 85, 100, 102, 99, 97, 28.30705 + 103, 103, 110, 107, 106, 106, 108, 103, 96, 92, 93, 85, 49, 22, 22, 20, 28.30706 + 24, 44, 34, 42, 107, 128, 110, 115, 92, 110, 111, 116, 114, 114, 112, 108, 28.30707 + 103, 102, 96, 104, 96, 97, 96, 81, 26, 30, 65, 45, 75, 100, 166, 171, 28.30708 + 154, 159, 158, 158, 158, 161, 162, 161, 155, 150, 146, 144, 130, 103, 55, 38, 28.30709 + 34, 36, 38, 45, 80, 76, 171, 191, 189, 173, 126, 157, 189, 193, 195, 198, 28.30710 + 198, 197, 195, 191, 185, 183, 186, 187, 185, 182, 167, 148, 136, 108, 45, 26, 28.30711 + 24, 24, 33, 42, 37, 45, 33, 36, 53, 56, 61, 60, 65, 68, 84, 73, 28.30712 + 76, 73, 79, 79, 77, 75, 76, 73, 63, 79, 77, 52, 44, 24, 22, 34, 28.30713 + 33, 32, 30, 12, 29, 34, 46, 71, 65, 87, 162, 206, 220, 210, 212, 185, 28.30714 + 158, 142, 131, 123, 131, 124, 135, 134, 135, 135, 136, 136, 135, 131, 131, 130, 28.30715 + 128, 127, 127, 119, 124, 126, 126, 126, 127, 123, 124, 123, 120, 119, 118, 118, 28.30716 + 118, 120, 122, 122, 119, 118, 116, 116, 118, 118, 123, 127, 132, 127, 60, 25, 28.30717 + 28, 32, 60, 57, 144, 193, 189, 197, 209, 181, 147, 139, 124, 120, 108, 114, 28.30718 + 112, 108, 114, 110, 108, 100, 104, 106, 106, 104, 111, 103, 96, 92, 40, 55, 28.30719 + 72, 64, 56, 34, 107, 111, 77, 71, 69, 68, 67, 67, 61, 52, 46, 36, 28.30720 + 42, 37, 36, 36, 36, 32, 32, 32, 28, 25, 22, 26, 25, 24, 22, 21, 28.30721 + 18, 17, 17, 14, 21, 20, 26, 44, 34, 42, 56, 85, 95, 135, 195, 202, 28.30722 + 212, 204, 179, 163, 136, 128, 138, 132, 138, 132, 135, 130, 128, 131, 138, 138, 28.30723 + 139, 138, 134, 138, 138, 132, 130, 131, 138, 128, 46, 89, 103, 106, 104, 96, 28.30724 + 112, 108, 114, 106, 124, 119, 63, 37, 67, 75, 77, 68, 60, 49, 51, 42, 28.30725 + 42, 41, 45, 37, 36, 34, 34, 32, 32, 32, 30, 28, 25, 25, 22, 25, 28.30726 + 25, 29, 28, 30, 28, 26, 28, 29, 28, 26, 22, 28, 28, 29, 32, 32, 28.30727 + 29, 29, 25, 17, 25, 65, 65, 48, 154, 194, 220, 212, 216, 206, 174, 150, 28.30728 + 136, 132, 134, 136, 132, 126, 134, 136, 136, 140, 143, 143, 139, 135, 138, 134, 28.30729 + 127, 130, 147, 146, 148, 118, 128, 127, 135, 127, 112, 114, 106, 120, 126, 131, 28.30730 + 126, 135, 130, 143, 134, 115, 108, 25, 135, 148, 108, 95, 123, 139, 163, 186, 28.30731 + 177, 136, 111, 79, 85, 65, 87, 88, 93, 81, 102, 110, 146, 217, 229, 237, 28.30732 + 209, 140, 144, 148, 161, 170, 166, 154, 142, 75, 22, 22, 21, 48, 42, 33, 28.30733 + 40, 1, 5, 5, 10, 12, 13, 14, 13, 13, 6, 13, 16, 9, 10, 13, 28.30734 + 12, 9, 8, 8, 9, 8, 6, 5, 6, 5, 5, 5, 6, 6, 10, 9, 28.30735 + 8, 10, 10, 14, 13, 14, 13, 13, 13, 13, 13, 12, 10, 8, 5, 6, 28.30736 + 14, 25, 18, 26, 30, 28, 17, 17, 28, 20, 10, 24, 33, 32, 29, 26, 28.30737 + 16, 22, 24, 16, 12, 13, 13, 13, 12, 10, 12, 12, 12, 12, 14, 13, 28.30738 + 10, 8, 10, 13, 13, 13, 18, 21, 5, 9, 20, 20, 25, 14, 32, 44, 28.30739 + 46, 65, 30, 4, 5, 14, 16, 13, 13, 14, 16, 13, 13, 16, 13, 13, 28.30740 + 14, 16, 20, 20, 18, 18, 17, 22, 26, 34, 44, 41, 34, 26, 33, 30, 28.30741 + 25, 20, 9, 10, 16, 13, 12, 10, 10, 8, 8, 12, 6, 5, 10, 16, 28.30742 + 8, 8, 14, 12, 14, 17, 16, 29, 65, 99, 159, 161, 148, 147, 151, 150, 28.30743 + 154, 157, 153, 150, 144, 140, 128, 91, 49, 37, 33, 34, 33, 24, 48, 76, 28.30744 + 75, 159, 189, 202, 183, 139, 114, 114, 131, 126, 124, 119, 134, 127, 123, 120, 28.30745 + 120, 120, 123, 119, 118, 114, 69, 55, 33, 24, 24, 26, 28, 25, 24, 12, 28.30746 + 10, 26, 10, 10, 10, 12, 30, 10, 9, 20, 21, 10, 10, 20, 12, 12, 28.30747 + 10, 12, 20, 37, 34, 51, 49, 85, 99, 106, 104, 91, 83, 52, 12, 81, 28.30748 + 89, 89, 51, 67, 81, 112, 139, 157, 142, 139, 127, 111, 107, 108, 112, 114, 28.30749 + 112, 130, 130, 124, 128, 128, 131, 130, 128, 128, 128, 124, 127, 127, 124, 126, 28.30750 + 126, 126, 127, 124, 123, 123, 122, 122, 120, 120, 120, 119, 118, 120, 119, 119, 28.30751 + 119, 119, 120, 122, 124, 128, 131, 128, 96, 32, 24, 26, 28, 44, 53, 108, 28.30752 + 166, 183, 153, 144, 116, 102, 95, 97, 97, 100, 100, 100, 102, 102, 106, 106, 28.30753 + 106, 104, 108, 100, 100, 99, 102, 99, 73, 51, 51, 61, 64, 56, 32, 100, 28.30754 + 64, 57, 46, 44, 42, 42, 32, 33, 28, 26, 18, 17, 16, 16, 14, 16, 28.30755 + 14, 14, 14, 13, 13, 13, 14, 16, 17, 18, 20, 20, 21, 22, 26, 33, 28.30756 + 37, 53, 33, 42, 55, 97, 91, 107, 178, 175, 165, 153, 147, 138, 138, 130, 28.30757 + 123, 126, 126, 127, 126, 122, 122, 123, 122, 120, 128, 123, 126, 127, 120, 114, 28.30758 + 108, 110, 115, 114, 46, 72, 14, 10, 17, 12, 9, 12, 8, 16, 17, 6, 28.30759 + 21, 17, 8, 46, 42, 25, 8, 36, 18, 4, 4, 5, 8, 10, 12, 13, 28.30760 + 16, 16, 16, 16, 14, 13, 16, 17, 21, 22, 24, 22, 29, 29, 30, 25, 28.30761 + 24, 21, 21, 22, 22, 17, 22, 22, 22, 21, 20, 20, 13, 17, 21, 37, 28.30762 + 68, 72, 51, 166, 175, 191, 178, 177, 157, 135, 134, 128, 123, 124, 116, 120, 28.30763 + 120, 116, 118, 126, 127, 130, 128, 128, 124, 123, 120, 122, 120, 120, 116, 103, 28.30764 + 67, 36, 28, 34, 38, 37, 34, 48, 41, 36, 51, 69, 72, 69, 67, 87, 28.30765 + 91, 85, 33, 135, 99, 118, 146, 181, 191, 195, 197, 195, 193, 146, 107, 51, 28.30766 + 97, 120, 118, 112, 108, 110, 118, 161, 225, 236, 237, 198, 138, 143, 148, 161, 28.30767 + 167, 163, 151, 136, 46, 24, 22, 33, 46, 71, 79, 95, 56, 53, 53, 49, 28.30768 + 24, 12, 10, 8, 8, 9, 0, 1, 1, 5, 1, 1, 2, 4, 1, 2, 28.30769 + 4, 6, 5, 5, 6, 8, 8, 4, 1, 4, 2, 4, 2, 2, 2, 2, 28.30770 + 2, 2, 4, 4, 5, 6, 6, 9, 14, 16, 24, 20, 28, 30, 28, 34, 28.30771 + 38, 40, 49, 45, 20, 24, 34, 44, 30, 26, 22, 21, 24, 24, 22, 21, 28.30772 + 22, 24, 24, 21, 20, 18, 18, 21, 25, 22, 20, 18, 17, 14, 13, 18, 28.30773 + 26, 32, 13, 22, 33, 16, 17, 14, 36, 33, 42, 48, 45, 38, 33, 30, 28.30774 + 33, 32, 30, 28, 32, 29, 30, 28, 29, 32, 32, 29, 30, 30, 24, 26, 28.30775 + 26, 30, 24, 29, 55, 46, 49, 49, 52, 46, 33, 38, 34, 34, 37, 40, 28.30776 + 37, 32, 32, 33, 32, 28, 30, 32, 29, 26, 33, 34, 30, 30, 37, 44, 28.30777 + 45, 57, 63, 52, 52, 100, 148, 155, 163, 148, 154, 148, 153, 143, 146, 131, 28.30778 + 119, 72, 41, 37, 34, 24, 24, 24, 38, 67, 76, 140, 175, 198, 208, 181, 28.30779 + 127, 88, 67, 64, 61, 56, 57, 48, 46, 44, 48, 41, 44, 44, 42, 38, 28.30780 + 41, 36, 40, 38, 41, 30, 48, 38, 48, 41, 41, 41, 41, 41, 38, 38, 28.30781 + 38, 30, 9, 33, 100, 131, 89, 96, 99, 100, 95, 83, 89, 96, 107, 130, 28.30782 + 119, 128, 130, 100, 107, 104, 115, 102, 80, 18, 92, 88, 102, 99, 56, 71, 28.30783 + 81, 99, 85, 83, 81, 73, 73, 64, 60, 57, 49, 52, 41, 40, 36, 34, 28.30784 + 32, 30, 29, 33, 30, 33, 30, 30, 29, 30, 29, 30, 29, 29, 28, 33, 28.30785 + 30, 33, 32, 30, 33, 38, 42, 63, 96, 110, 119, 123, 124, 127, 126, 128, 28.30786 + 131, 127, 114, 45, 26, 21, 18, 30, 61, 49, 65, 73, 71, 72, 73, 75, 28.30787 + 29, 22, 21, 21, 20, 20, 20, 20, 17, 17, 18, 18, 24, 25, 24, 28, 28.30788 + 29, 29, 32, 30, 14, 8, 14, 12, 14, 34, 41, 64, 79, 71, 91, 95, 28.30789 + 84, 73, 88, 84, 72, 12, 49, 71, 68, 68, 49, 61, 46, 63, 38, 25, 28.30790 + 34, 48, 79, 85, 81, 81, 80, 84, 79, 81, 83, 75, 72, 32, 61, 89, 28.30791 + 100, 97, 118, 131, 135, 136, 124, 119, 110, 107, 100, 85, 69, 73, 60, 63, 28.30792 + 57, 55, 49, 52, 49, 51, 49, 51, 49, 53, 53, 55, 53, 60, 60, 53, 28.30793 + 17, 30, 103, 107, 114, 124, 124, 122, 130, 126, 128, 130, 76, 25, 104, 111, 28.30794 + 118, 111, 111, 102, 106, 67, 38, 25, 20, 13, 25, 21, 24, 18, 18, 17, 28.30795 + 20, 18, 13, 17, 14, 17, 8, 18, 22, 22, 14, 25, 21, 14, 9, 9, 28.30796 + 13, 13, 16, 18, 21, 21, 21, 26, 25, 44, 55, 69, 76, 46, 161, 142, 28.30797 + 146, 136, 138, 127, 111, 88, 75, 72, 56, 53, 48, 52, 41, 40, 40, 41, 28.30798 + 37, 38, 36, 33, 32, 30, 33, 32, 34, 34, 30, 34, 65, 68, 84, 91, 28.30799 + 84, 91, 103, 118, 130, 120, 107, 81, 80, 59, 56, 87, 89, 95, 88, 124, 28.30800 + 146, 186, 202, 201, 195, 218, 197, 187, 139, 114, 71, 107, 123, 127, 122, 122, 28.30801 + 115, 138, 191, 226, 236, 237, 185, 135, 139, 146, 158, 163, 158, 147, 114, 32, 28.30802 + 24, 26, 30, 67, 97, 122, 135, 108, 93, 83, 79, 48, 45, 37, 32, 12, 28.30803 + 1, 17, 68, 73, 67, 60, 71, 77, 67, 61, 57, 60, 63, 65, 71, 65, 28.30804 + 65, 55, 46, 25, 20, 14, 14, 13, 12, 13, 14, 20, 21, 18, 20, 21, 28.30805 + 26, 25, 28, 30, 30, 26, 37, 45, 53, 60, 55, 65, 59, 67, 55, 36, 28.30806 + 14, 65, 52, 33, 30, 30, 26, 28, 26, 26, 28, 26, 20, 26, 33, 34, 28.30807 + 30, 29, 29, 33, 26, 21, 16, 13, 13, 9, 12, 24, 24, 20, 17, 22, 28.30808 + 22, 21, 25, 20, 5, 52, 41, 34, 33, 33, 29, 38, 32, 28, 28, 30, 28.30809 + 28, 26, 17, 20, 33, 26, 28, 29, 32, 24, 32, 26, 25, 26, 51, 55, 28.30810 + 48, 49, 49, 52, 51, 53, 45, 12, 69, 57, 41, 42, 32, 36, 37, 34, 28.30811 + 33, 34, 36, 33, 37, 37, 40, 40, 38, 40, 42, 42, 52, 56, 60, 48, 28.30812 + 55, 135, 144, 142, 146, 136, 134, 131, 130, 112, 69, 55, 44, 40, 34, 38, 28.30813 + 28, 22, 36, 64, 96, 89, 143, 195, 202, 208, 166, 104, 59, 42, 37, 64, 28.30814 + 42, 42, 40, 46, 46, 44, 41, 45, 46, 46, 45, 41, 42, 38, 40, 38, 28.30815 + 41, 40, 37, 42, 48, 49, 49, 55, 56, 55, 60, 49, 32, 6, 108, 130, 28.30816 + 122, 116, 102, 103, 99, 122, 108, 118, 71, 99, 108, 106, 100, 112, 115, 104, 28.30817 + 104, 110, 114, 73, 13, 80, 97, 99, 104, 85, 60, 71, 77, 53, 45, 44, 28.30818 + 59, 41, 44, 41, 41, 38, 40, 29, 25, 25, 22, 25, 20, 20, 22, 22, 28.30819 + 22, 22, 21, 21, 21, 21, 21, 20, 20, 18, 21, 20, 20, 20, 20, 21, 28.30820 + 21, 20, 22, 26, 32, 40, 51, 64, 77, 87, 95, 95, 79, 44, 26, 25, 28.30821 + 24, 26, 36, 64, 65, 61, 48, 52, 53, 46, 56, 46, 46, 42, 40, 41, 28.30822 + 37, 32, 30, 30, 28, 26, 26, 21, 24, 22, 21, 21, 17, 17, 18, 18, 28.30823 + 22, 41, 26, 52, 37, 89, 134, 139, 142, 138, 140, 136, 135, 134, 103, 81, 28.30824 + 4, 103, 81, 85, 77, 72, 89, 104, 75, 77, 68, 36, 93, 112, 111, 107, 28.30825 + 104, 108, 104, 106, 102, 93, 88, 72, 30, 102, 103, 96, 114, 120, 123, 124, 28.30826 + 112, 111, 96, 99, 77, 61, 63, 60, 55, 48, 44, 40, 36, 34, 34, 29, 28.30827 + 30, 30, 29, 24, 24, 21, 21, 21, 20, 17, 16, 26, 24, 116, 128, 126, 28.30828 + 128, 135, 135, 135, 135, 138, 142, 87, 29, 143, 136, 134, 136, 132, 132, 132, 28.30829 + 112, 97, 77, 52, 14, 36, 84, 79, 41, 48, 71, 67, 41, 49, 61, 56, 28.30830 + 37, 51, 73, 68, 75, 72, 89, 71, 73, 63, 33, 8, 21, 41, 61, 44, 28.30831 + 44, 49, 52, 52, 59, 73, 81, 80, 40, 131, 120, 119, 87, 96, 88, 83, 28.30832 + 63, 64, 65, 63, 49, 48, 51, 51, 45, 45, 45, 44, 42, 44, 44, 42, 28.30833 + 44, 49, 49, 49, 51, 56, 71, 71, 87, 99, 110, 131, 91, 91, 131, 116, 28.30834 + 107, 120, 135, 139, 132, 120, 118, 108, 68, 131, 154, 182, 204, 197, 202, 206, 28.30835 + 178, 154, 132, 142, 106, 71, 104, 126, 135, 140, 134, 124, 148, 210, 228, 234, 28.30836 + 234, 169, 134, 139, 146, 157, 158, 150, 140, 77, 25, 25, 25, 32, 64, 116, 28.30837 + 138, 154, 65, 65, 68, 71, 45, 65, 48, 40, 12, 1, 77, 68, 57, 55, 28.30838 + 55, 52, 46, 59, 56, 55, 49, 51, 53, 49, 42, 44, 48, 45, 63, 57, 28.30839 + 37, 21, 20, 13, 28, 41, 42, 42, 42, 40, 38, 36, 38, 34, 28, 17, 28.30840 + 26, 55, 63, 69, 63, 67, 63, 69, 71, 60, 46, 17, 65, 53, 51, 42, 28.30841 + 46, 45, 41, 40, 36, 34, 32, 17, 32, 45, 55, 49, 48, 42, 45, 40, 28.30842 + 30, 29, 28, 24, 9, 42, 42, 42, 51, 28, 33, 48, 29, 25, 28, 10, 28.30843 + 53, 65, 56, 59, 56, 44, 42, 32, 28, 34, 28, 10, 20, 64, 34, 57, 28.30844 + 42, 51, 37, 49, 37, 25, 16, 14, 28, 46, 56, 56, 52, 52, 63, 53, 28.30845 + 48, 41, 9, 68, 72, 42, 51, 42, 42, 41, 42, 46, 40, 38, 28, 21, 28.30846 + 34, 40, 51, 37, 44, 46, 53, 51, 52, 56, 59, 48, 111, 140, 123, 89, 28.30847 + 75, 69, 67, 56, 53, 46, 46, 37, 34, 38, 30, 26, 42, 59, 67, 89, 28.30848 + 93, 182, 195, 206, 204, 158, 103, 48, 42, 41, 41, 41, 41, 44, 51, 51, 28.30849 + 51, 69, 93, 134, 146, 163, 173, 165, 153, 110, 64, 49, 44, 40, 42, 44, 28.30850 + 41, 40, 42, 42, 46, 55, 52, 51, 28, 118, 128, 100, 88, 88, 89, 87, 28.30851 + 84, 102, 68, 84, 118, 120, 103, 118, 99, 104, 96, 104, 104, 118, 73, 12, 28.30852 + 85, 91, 108, 95, 87, 81, 53, 51, 48, 64, 64, 40, 33, 32, 33, 38, 28.30853 + 25, 29, 21, 21, 20, 17, 20, 18, 18, 20, 20, 20, 20, 18, 20, 21, 28.30854 + 20, 20, 20, 20, 20, 22, 26, 32, 28, 32, 32, 32, 28, 24, 21, 22, 28.30855 + 21, 24, 25, 25, 25, 26, 28, 25, 26, 24, 25, 14, 28, 67, 73, 72, 28.30856 + 65, 65, 63, 59, 55, 51, 48, 46, 49, 44, 42, 41, 37, 37, 34, 33, 28.30857 + 30, 29, 29, 29, 30, 26, 26, 28, 25, 28, 36, 46, 59, 61, 61, 72, 28.30858 + 112, 140, 139, 132, 132, 123, 120, 122, 128, 112, 88, 9, 97, 89, 96, 81, 28.30859 + 88, 91, 91, 81, 83, 79, 36, 99, 127, 135, 128, 120, 127, 132, 131, 111, 28.30860 + 110, 95, 76, 30, 91, 93, 112, 139, 142, 110, 104, 123, 96, 72, 71, 65, 28.30861 + 69, 71, 55, 49, 46, 38, 41, 38, 37, 34, 30, 30, 29, 29, 28, 25, 28.30862 + 24, 22, 24, 22, 20, 18, 40, 45, 127, 115, 122, 126, 135, 135, 132, 134, 28.30863 + 128, 153, 89, 34, 139, 147, 147, 148, 146, 146, 140, 127, 114, 87, 61, 13, 28.30864 + 76, 100, 106, 80, 77, 48, 56, 69, 64, 45, 49, 46, 49, 100, 123, 120, 28.30865 + 120, 115, 118, 108, 83, 63, 10, 96, 106, 96, 95, 88, 85, 84, 81, 77, 28.30866 + 80, 85, 91, 46, 114, 158, 114, 104, 81, 73, 81, 67, 64, 67, 61, 51, 28.30867 + 49, 53, 52, 46, 48, 49, 48, 49, 45, 46, 49, 51, 49, 56, 60, 60, 28.30868 + 61, 77, 83, 97, 91, 102, 80, 77, 112, 122, 147, 134, 120, 123, 126, 119, 28.30869 + 119, 107, 92, 120, 154, 154, 195, 199, 201, 197, 170, 132, 123, 126, 130, 110, 28.30870 + 72, 97, 124, 130, 132, 118, 131, 169, 218, 228, 236, 229, 148, 134, 138, 144, 28.30871 + 155, 153, 146, 120, 42, 26, 25, 25, 20, 64, 116, 140, 153, 22, 29, 26, 28.30872 + 17, 21, 20, 52, 36, 10, 4, 55, 75, 53, 68, 52, 46, 49, 44, 41, 28.30873 + 38, 28, 24, 37, 52, 68, 68, 60, 61, 42, 48, 55, 38, 24, 17, 33, 28.30874 + 44, 40, 45, 40, 44, 42, 37, 38, 42, 17, 17, 44, 68, 73, 68, 71, 28.30875 + 59, 65, 63, 51, 46, 34, 18, 60, 57, 49, 48, 51, 44, 48, 38, 41, 28.30876 + 44, 34, 21, 37, 41, 48, 48, 49, 60, 55, 52, 41, 40, 29, 24, 12, 28.30877 + 45, 52, 42, 52, 51, 46, 42, 48, 28, 25, 8, 45, 65, 77, 81, 81, 28.30878 + 59, 61, 48, 42, 32, 29, 9, 49, 73, 69, 64, 60, 57, 56, 59, 48, 28.30879 + 42, 26, 13, 34, 53, 59, 44, 42, 51, 55, 55, 57, 29, 2, 77, 79, 28.30880 + 73, 56, 36, 40, 30, 42, 37, 34, 37, 25, 17, 33, 72, 61, 61, 59, 28.30881 + 59, 55, 53, 53, 56, 67, 46, 127, 135, 118, 91, 79, 65, 64, 57, 53, 28.30882 + 44, 44, 36, 26, 25, 33, 38, 59, 61, 97, 95, 126, 179, 206, 205, 208, 28.30883 + 143, 102, 72, 67, 69, 59, 55, 59, 73, 89, 120, 154, 187, 210, 221, 226, 28.30884 + 229, 229, 222, 224, 216, 193, 163, 134, 79, 55, 42, 44, 42, 44, 41, 40, 28.30885 + 52, 49, 46, 9, 84, 127, 81, 76, 91, 92, 87, 85, 96, 69, 89, 108, 28.30886 + 118, 115, 111, 116, 111, 104, 110, 107, 111, 68, 12, 85, 89, 99, 93, 85, 28.30887 + 56, 56, 55, 53, 57, 44, 25, 76, 61, 51, 45, 51, 63, 44, 49, 46, 28.30888 + 42, 38, 36, 41, 38, 49, 49, 49, 42, 41, 41, 40, 36, 34, 36, 34, 28.30889 + 56, 49, 53, 51, 59, 57, 59, 52, 51, 40, 30, 25, 28, 25, 22, 22, 28.30890 + 22, 22, 24, 21, 26, 25, 9, 36, 69, 87, 92, 95, 93, 96, 91, 91, 28.30891 + 76, 64, 56, 87, 92, 69, 67, 68, 57, 56, 68, 67, 28, 10, 45, 63, 28.30892 + 73, 48, 38, 48, 57, 38, 67, 59, 65, 60, 67, 115, 138, 134, 131, 132, 28.30893 + 123, 123, 106, 118, 127, 67, 12, 75, 103, 96, 112, 112, 120, 122, 95, 112, 28.30894 + 69, 37, 91, 130, 140, 138, 134, 131, 142, 127, 132, 112, 99, 85, 32, 92, 28.30895 + 91, 102, 114, 132, 161, 138, 128, 83, 87, 68, 84, 118, 112, 106, 77, 87, 28.30896 + 87, 89, 81, 79, 69, 63, 51, 53, 51, 48, 48, 44, 44, 42, 41, 42, 28.30897 + 36, 45, 25, 102, 135, 143, 135, 128, 132, 146, 139, 131, 147, 89, 38, 123, 28.30898 + 147, 147, 143, 143, 138, 157, 127, 114, 112, 60, 14, 80, 104, 87, 115, 88, 28.30899 + 102, 76, 80, 81, 102, 63, 48, 75, 120, 135, 134, 130, 128, 123, 118, 84, 28.30900 + 72, 24, 100, 108, 102, 102, 99, 96, 97, 92, 88, 68, 91, 95, 51, 115, 28.30901 + 138, 126, 143, 127, 135, 138, 111, 93, 89, 80, 72, 75, 76, 64, 69, 69, 28.30902 + 69, 68, 68, 68, 68, 68, 69, 71, 75, 76, 73, 77, 81, 91, 79, 106, 28.30903 + 127, 99, 51, 108, 115, 111, 111, 123, 114, 120, 112, 111, 107, 91, 128, 161, 28.30904 + 163, 201, 191, 198, 167, 132, 126, 122, 147, 116, 103, 65, 96, 110, 120, 118, 28.30905 + 120, 136, 182, 221, 225, 232, 213, 138, 134, 139, 146, 154, 150, 140, 85, 30, 28.30906 + 26, 25, 26, 16, 64, 114, 132, 154, 16, 14, 33, 36, 30, 29, 32, 20, 28.30907 + 9, 10, 53, 64, 63, 53, 68, 49, 56, 48, 53, 40, 26, 20, 52, 60, 28.30908 + 59, 46, 38, 40, 41, 48, 45, 51, 26, 16, 45, 46, 42, 45, 38, 38, 28.30909 + 36, 33, 34, 48, 17, 16, 44, 69, 69, 76, 75, 51, 52, 52, 53, 49, 28.30910 + 29, 18, 60, 51, 45, 53, 46, 55, 48, 42, 41, 48, 36, 25, 41, 48, 28.30911 + 61, 49, 38, 60, 49, 67, 48, 42, 36, 28, 13, 40, 56, 55, 45, 41, 28.30912 + 41, 42, 46, 32, 28, 8, 55, 72, 76, 72, 76, 80, 60, 67, 52, 42, 28.30913 + 32, 6, 59, 71, 81, 69, 67, 65, 69, 63, 61, 57, 25, 13, 57, 60, 28.30914 + 67, 61, 45, 53, 72, 60, 52, 41, 8, 81, 77, 68, 61, 46, 38, 41, 28.30915 + 52, 55, 53, 48, 30, 13, 67, 75, 76, 73, 72, 61, 63, 59, 59, 65, 28.30916 + 65, 57, 116, 134, 120, 107, 91, 75, 68, 60, 51, 44, 45, 29, 25, 36, 28.30917 + 37, 57, 56, 72, 93, 84, 97, 191, 199, 217, 186, 138, 104, 122, 127, 118, 28.30918 + 126, 135, 158, 177, 201, 213, 224, 228, 229, 229, 228, 224, 224, 225, 222, 217, 28.30919 + 218, 213, 213, 185, 122, 59, 44, 42, 42, 46, 44, 51, 57, 33, 8, 84, 28.30920 + 128, 99, 84, 112, 92, 112, 97, 83, 60, 88, 123, 122, 108, 116, 108, 123, 28.30921 + 118, 100, 99, 107, 81, 16, 91, 89, 100, 96, 96, 76, 72, 53, 65, 56, 28.30922 + 60, 45, 67, 84, 81, 63, 61, 53, 61, 57, 56, 55, 56, 37, 33, 49, 28.30923 + 51, 53, 59, 52, 56, 56, 56, 57, 56, 49, 45, 55, 64, 61, 63, 59, 28.30924 + 61, 60, 60, 59, 40, 63, 67, 68, 67, 60, 60, 37, 34, 33, 30, 32, 28.30925 + 25, 10, 44, 77, 95, 96, 93, 96, 96, 100, 95, 87, 73, 63, 79, 102, 28.30926 + 80, 91, 89, 89, 71, 61, 72, 63, 16, 75, 80, 81, 79, 77, 71, 67, 28.30927 + 64, 63, 57, 63, 67, 57, 102, 130, 134, 128, 131, 116, 116, 110, 120, 102, 28.30928 + 88, 16, 92, 99, 116, 100, 102, 108, 110, 112, 111, 80, 51, 114, 131, 132, 28.30929 + 135, 136, 143, 146, 143, 140, 127, 107, 81, 32, 92, 93, 116, 104, 123, 134, 28.30930 + 151, 139, 87, 88, 69, 91, 126, 112, 110, 107, 107, 104, 106, 110, 103, 83, 28.30931 + 79, 65, 93, 99, 97, 93, 92, 73, 69, 80, 83, 59, 38, 80, 127, 135, 28.30932 + 124, 135, 128, 140, 138, 139, 134, 151, 96, 45, 132, 147, 147, 154, 140, 140, 28.30933 + 132, 136, 112, 115, 61, 14, 89, 112, 103, 136, 106, 110, 119, 106, 92, 103, 28.30934 + 64, 49, 108, 135, 128, 126, 123, 124, 123, 132, 85, 61, 10, 80, 114, 107, 28.30935 + 130, 108, 106, 84, 99, 96, 91, 96, 99, 61, 127, 135, 147, 128, 138, 136, 28.30936 + 140, 128, 128, 95, 88, 57, 41, 73, 75, 77, 77, 76, 68, 71, 79, 67, 28.30937 + 48, 63, 95, 110, 114, 110, 76, 75, 75, 81, 96, 130, 112, 53, 110, 107, 28.30938 + 111, 110, 122, 115, 116, 118, 116, 104, 95, 134, 163, 175, 198, 199, 173, 139, 28.30939 + 124, 118, 138, 144, 130, 97, 71, 87, 112, 115, 114, 127, 158, 205, 224, 229, 28.30940 + 233, 193, 131, 132, 139, 151, 150, 144, 123, 41, 29, 28, 28, 26, 36, 59, 28.30941 + 122, 131, 143, 61, 12, 12, 21, 13, 28, 29, 46, 9, 1, 44, 73, 59, 28.30942 + 56, 65, 59, 52, 48, 49, 34, 29, 18, 49, 52, 38, 46, 52, 51, 71, 28.30943 + 57, 45, 52, 32, 24, 48, 48, 52, 52, 53, 46, 48, 37, 33, 45, 18, 28.30944 + 14, 56, 72, 68, 68, 68, 48, 63, 56, 61, 46, 37, 22, 53, 59, 42, 28.30945 + 59, 60, 44, 46, 51, 48, 49, 38, 25, 46, 56, 55, 51, 38, 52, 45, 28.30946 + 60, 56, 49, 37, 28, 5, 42, 42, 55, 48, 42, 41, 45, 46, 32, 28, 28.30947 + 9, 49, 69, 71, 63, 59, 59, 60, 57, 56, 42, 29, 6, 65, 83, 80, 28.30948 + 71, 71, 63, 73, 71, 64, 56, 36, 14, 57, 63, 69, 53, 64, 53, 65, 28.30949 + 59, 51, 42, 8, 77, 68, 61, 56, 56, 44, 46, 60, 63, 57, 48, 29, 28.30950 + 14, 68, 71, 80, 76, 77, 64, 68, 68, 61, 55, 55, 51, 103, 128, 126, 28.30951 + 102, 107, 97, 79, 73, 57, 53, 30, 20, 29, 52, 60, 60, 75, 65, 89, 28.30952 + 83, 95, 167, 209, 212, 181, 126, 96, 119, 189, 194, 198, 206, 210, 216, 222, 28.30953 + 224, 225, 224, 218, 213, 201, 197, 198, 186, 179, 167, 170, 173, 189, 205, 205, 28.30954 + 162, 76, 51, 41, 41, 44, 46, 48, 28, 8, 104, 138, 108, 91, 88, 99, 28.30955 + 87, 95, 93, 53, 88, 118, 118, 103, 103, 104, 104, 107, 104, 103, 102, 80, 28.30956 + 16, 91, 81, 99, 92, 97, 95, 84, 72, 61, 55, 49, 46, 75, 83, 71, 28.30957 + 76, 76, 59, 75, 79, 81, 69, 52, 36, 44, 76, 93, 89, 57, 57, 59, 28.30958 + 63, 65, 65, 67, 37, 52, 88, 84, 85, 84, 67, 65, 68, 64, 65, 45, 28.30959 + 63, 76, 75, 77, 69, 69, 60, 55, 55, 52, 48, 28, 9, 71, 80, 96, 28.30960 + 104, 107, 104, 95, 83, 102, 91, 80, 51, 80, 84, 103, 87, 85, 93, 89, 28.30961 + 80, 79, 69, 6, 84, 84, 68, 91, 91, 53, 59, 91, 81, 87, 69, 67, 28.30962 + 51, 100, 132, 136, 122, 119, 114, 111, 123, 100, 107, 88, 4, 93, 100, 128, 28.30963 + 107, 99, 96, 100, 111, 123, 83, 53, 120, 136, 143, 144, 136, 130, 131, 144, 28.30964 + 148, 134, 115, 84, 33, 89, 89, 99, 92, 116, 139, 135, 122, 89, 91, 76, 28.30965 + 95, 126, 122, 115, 114, 111, 112, 110, 107, 108, 107, 85, 69, 99, 104, 110, 28.30966 + 107, 104, 102, 100, 97, 97, 63, 28, 112, 97, 126, 126, 131, 136, 138, 142, 28.30967 + 134, 132, 144, 104, 46, 139, 148, 150, 154, 155, 155, 131, 142, 116, 116, 67, 28.30968 + 16, 88, 118, 123, 120, 104, 104, 104, 107, 115, 104, 69, 48, 123, 138, 138, 28.30969 + 107, 118, 130, 126, 132, 84, 68, 9, 124, 115, 111, 108, 111, 114, 118, 120, 28.30970 + 123, 124, 103, 107, 63, 120, 154, 139, 140, 138, 142, 132, 131, 130, 119, 111, 28.30971 + 37, 57, 80, 106, 103, 85, 89, 91, 99, 93, 79, 51, 97, 100, 126, 111, 28.30972 + 97, 119, 122, 112, 96, 126, 118, 110, 55, 104, 103, 120, 118, 119, 116, 111, 28.30973 + 112, 118, 103, 91, 119, 166, 166, 213, 187, 154, 126, 123, 127, 144, 150, 128, 28.30974 + 95, 68, 81, 106, 112, 116, 138, 190, 213, 214, 229, 225, 153, 127, 132, 146, 28.30975 + 147, 143, 131, 67, 30, 28, 26, 30, 29, 38, 61, 123, 127, 134, 64, 12, 28.30976 + 12, 25, 28, 38, 29, 33, 9, 1, 53, 63, 52, 64, 64, 61, 59, 57, 28.30977 + 45, 33, 24, 18, 49, 38, 46, 44, 63, 63, 67, 51, 53, 49, 41, 22, 28.30978 + 55, 68, 65, 64, 56, 57, 45, 40, 33, 37, 14, 34, 60, 67, 65, 53, 28.30979 + 60, 38, 42, 40, 44, 46, 45, 22, 45, 56, 42, 37, 44, 49, 55, 60, 28.30980 + 46, 44, 48, 24, 46, 53, 48, 45, 46, 57, 49, 67, 56, 55, 38, 26, 28.30981 + 6, 36, 51, 56, 44, 60, 46, 42, 42, 32, 29, 12, 52, 75, 65, 63, 28.30982 + 63, 65, 64, 57, 60, 44, 29, 6, 60, 63, 73, 73, 73, 73, 79, 73, 28.30983 + 72, 57, 30, 25, 61, 60, 69, 59, 65, 65, 79, 57, 48, 37, 6, 79, 28.30984 + 79, 67, 60, 57, 73, 73, 73, 72, 67, 49, 29, 12, 71, 79, 80, 73, 28.30985 + 76, 72, 75, 79, 64, 65, 69, 48, 91, 120, 122, 112, 95, 102, 87, 81, 28.30986 + 64, 73, 34, 18, 44, 56, 75, 77, 75, 65, 112, 85, 107, 123, 189, 206, 28.30987 + 183, 122, 110, 118, 157, 190, 198, 202, 208, 210, 210, 213, 206, 201, 193, 174, 28.30988 + 155, 150, 150, 151, 143, 147, 142, 148, 153, 151, 162, 187, 177, 87, 41, 41, 28.30989 + 46, 45, 46, 44, 22, 111, 116, 111, 91, 89, 97, 87, 92, 85, 53, 84, 28.30990 + 120, 114, 106, 110, 102, 104, 96, 111, 110, 100, 77, 16, 85, 79, 106, 108, 28.30991 + 100, 87, 76, 63, 64, 57, 51, 24, 69, 92, 76, 83, 69, 73, 84, 87, 28.30992 + 88, 77, 52, 36, 63, 93, 92, 100, 97, 73, 73, 72, 65, 76, 61, 36, 28.30993 + 83, 87, 92, 91, 92, 85, 72, 69, 71, 69, 46, 75, 79, 87, 83, 83, 28.30994 + 79, 71, 61, 61, 56, 51, 28, 8, 76, 93, 99, 81, 95, 104, 106, 83, 28.30995 + 95, 95, 79, 44, 81, 88, 100, 95, 103, 107, 88, 95, 79, 72, 8, 93, 28.30996 + 88, 83, 85, 83, 89, 88, 95, 92, 95, 88, 68, 71, 103, 140, 122, 123, 28.30997 + 118, 124, 115, 114, 120, 103, 92, 5, 100, 106, 103, 102, 128, 120, 128, 112, 28.30998 + 107, 87, 49, 115, 132, 139, 147, 144, 139, 140, 142, 135, 139, 115, 84, 33, 28.30999 + 88, 92, 100, 100, 126, 89, 97, 100, 88, 95, 77, 96, 124, 123, 126, 104, 28.31000 + 122, 119, 116, 114, 116, 112, 96, 71, 91, 110, 122, 120, 119, 116, 115, 114, 28.31001 + 100, 64, 29, 106, 138, 131, 127, 140, 139, 142, 139, 132, 127, 142, 96, 55, 28.31002 + 138, 150, 143, 143, 143, 140, 144, 138, 114, 118, 73, 20, 102, 124, 99, 111, 28.31003 + 85, 124, 111, 127, 119, 100, 64, 59, 118, 143, 127, 122, 115, 134, 131, 130, 28.31004 + 81, 65, 9, 120, 128, 115, 118, 119, 122, 123, 127, 128, 127, 106, 110, 68, 28.31005 + 119, 146, 142, 124, 126, 123, 119, 123, 120, 120, 108, 30, 75, 112, 131, 115, 28.31006 + 111, 102, 122, 119, 96, 83, 46, 97, 118, 119, 128, 119, 120, 112, 120, 127, 28.31007 + 134, 118, 103, 56, 103, 131, 100, 114, 112, 114, 112, 115, 111, 100, 84, 124, 28.31008 + 139, 150, 171, 183, 163, 128, 122, 132, 151, 150, 111, 104, 73, 85, 110, 107, 28.31009 + 132, 173, 210, 214, 218, 226, 201, 131, 128, 135, 148, 143, 135, 95, 34, 28, 28.31010 + 29, 28, 34, 30, 9, 76, 126, 134, 139, 9, 16, 29, 49, 45, 34, 26, 28.31011 + 32, 8, 1, 59, 67, 56, 61, 63, 59, 46, 63, 40, 32, 24, 16, 48, 28.31012 + 75, 79, 68, 68, 67, 53, 46, 46, 49, 42, 25, 25, 46, 51, 44, 48, 28.31013 + 45, 48, 38, 36, 38, 17, 36, 64, 69, 51, 46, 44, 45, 44, 46, 46, 28.31014 + 45, 42, 24, 40, 63, 49, 45, 38, 45, 34, 41, 36, 37, 48, 26, 49, 28.31015 + 56, 49, 53, 57, 56, 53, 45, 48, 59, 37, 25, 5, 40, 44, 57, 46, 28.31016 + 48, 53, 44, 41, 36, 29, 8, 40, 73, 65, 65, 67, 65, 61, 61, 56, 28.31017 + 42, 30, 4, 41, 80, 67, 80, 73, 76, 79, 77, 69, 69, 29, 10, 55, 28.31018 + 67, 72, 65, 60, 61, 59, 60, 56, 29, 1, 75, 72, 56, 65, 59, 56, 28.31019 + 55, 59, 57, 64, 48, 28, 10, 72, 67, 73, 72, 71, 73, 81, 91, 68, 28.31020 + 67, 67, 53, 71, 116, 119, 110, 93, 99, 88, 85, 79, 69, 41, 21, 52, 28.31021 + 72, 76, 72, 69, 68, 111, 91, 114, 92, 159, 214, 186, 114, 106, 107, 127, 28.31022 + 138, 163, 174, 183, 186, 189, 181, 166, 148, 140, 147, 148, 150, 153, 162, 163, 28.31023 + 167, 154, 147, 140, 135, 140, 143, 178, 155, 84, 37, 46, 42, 41, 40, 10, 28.31024 + 89, 112, 107, 75, 88, 102, 92, 95, 80, 55, 85, 116, 119, 112, 104, 110, 28.31025 + 104, 104, 115, 108, 102, 76, 20, 80, 84, 85, 91, 93, 93, 77, 63, 65, 28.31026 + 61, 56, 24, 51, 84, 87, 85, 97, 97, 112, 111, 108, 84, 57, 16, 65, 28.31027 + 95, 93, 100, 88, 83, 87, 106, 97, 79, 65, 34, 83, 87, 95, 87, 85, 28.31028 + 91, 87, 85, 72, 68, 52, 73, 85, 87, 85, 83, 83, 79, 72, 67, 61, 28.31029 + 51, 30, 6, 77, 97, 75, 81, 89, 111, 99, 95, 99, 89, 79, 48, 93, 28.31030 + 93, 102, 92, 100, 95, 97, 99, 83, 56, 9, 92, 96, 115, 95, 93, 97, 28.31031 + 110, 97, 95, 93, 103, 79, 57, 87, 126, 136, 138, 130, 124, 131, 138, 116, 28.31032 + 108, 64, 1, 84, 111, 110, 120, 131, 120, 122, 119, 106, 88, 48, 93, 132, 28.31033 + 135, 140, 139, 140, 142, 139, 146, 144, 134, 85, 34, 87, 87, 100, 116, 97, 28.31034 + 115, 100, 99, 84, 97, 83, 99, 108, 131, 130, 111, 114, 128, 130, 120, 126, 28.31035 + 122, 110, 75, 93, 123, 95, 114, 127, 126, 122, 119, 103, 72, 34, 128, 138, 28.31036 + 138, 144, 142, 136, 135, 130, 131, 132, 146, 97, 71, 93, 147, 143, 140, 142, 28.31037 + 138, 138, 134, 115, 111, 71, 21, 97, 123, 116, 115, 122, 115, 123, 110, 110, 28.31038 + 92, 69, 56, 118, 132, 131, 110, 131, 120, 126, 131, 83, 72, 8, 112, 124, 28.31039 + 118, 116, 142, 143, 150, 148, 146, 132, 108, 112, 71, 115, 154, 148, 147, 139, 28.31040 + 138, 118, 120, 123, 115, 87, 55, 100, 116, 115, 119, 122, 122, 119, 108, 102, 28.31041 + 89, 42, 103, 128, 122, 95, 120, 115, 123, 120, 131, 138, 120, 115, 40, 102, 28.31042 + 122, 103, 103, 107, 112, 112, 115, 108, 112, 79, 116, 140, 155, 171, 170, 183, 28.31043 + 130, 122, 148, 161, 139, 106, 95, 99, 100, 110, 130, 167, 199, 214, 216, 226, 28.31044 + 217, 157, 126, 132, 144, 142, 132, 107, 44, 29, 29, 29, 32, 34, 32, 12, 28.31045 + 61, 128, 150, 143, 17, 20, 21, 21, 22, 30, 33, 20, 8, 1, 37, 65, 28.31046 + 55, 56, 55, 56, 60, 49, 34, 30, 25, 13, 51, 49, 56, 46, 63, 51, 28.31047 + 48, 42, 38, 38, 36, 36, 26, 30, 38, 36, 44, 42, 44, 34, 33, 36, 28.31048 + 13, 41, 59, 56, 49, 52, 55, 52, 46, 52, 44, 60, 41, 26, 40, 61, 28.31049 + 59, 60, 51, 53, 44, 42, 41, 49, 36, 29, 55, 60, 56, 63, 51, 52, 28.31050 + 57, 53, 55, 41, 37, 29, 9, 33, 52, 55, 53, 49, 56, 46, 45, 36, 28.31051 + 32, 12, 65, 73, 79, 80, 71, 67, 67, 65, 61, 41, 30, 2, 57, 81, 28.31052 + 69, 76, 77, 77, 85, 76, 72, 63, 41, 12, 59, 73, 77, 63, 64, 63, 28.31053 + 63, 65, 51, 45, 5, 71, 84, 71, 84, 73, 84, 76, 73, 71, 67, 49, 28.31054 + 28, 10, 77, 75, 76, 84, 72, 69, 67, 79, 79, 64, 71, 52, 63, 110, 28.31055 + 112, 107, 107, 95, 91, 91, 84, 76, 44, 21, 60, 75, 77, 77, 84, 104, 28.31056 + 88, 111, 80, 120, 97, 201, 198, 128, 115, 107, 115, 122, 134, 138, 140, 144, 28.31057 + 140, 139, 132, 123, 120, 120, 123, 139, 150, 159, 162, 163, 165, 153, 148, 148, 28.31058 + 146, 136, 144, 174, 95, 37, 41, 44, 44, 33, 10, 85, 122, 107, 92, 92, 28.31059 + 95, 93, 97, 77, 44, 83, 114, 124, 123, 116, 115, 115, 116, 119, 106, 99, 28.31060 + 79, 29, 80, 85, 93, 87, 80, 72, 71, 56, 65, 68, 48, 57, 69, 100, 28.31061 + 108, 96, 100, 96, 108, 92, 85, 84, 52, 16, 73, 97, 103, 93, 96, 95, 28.31062 + 93, 96, 95, 75, 68, 30, 99, 88, 96, 83, 92, 87, 89, 91, 91, 72, 28.31063 + 52, 71, 80, 79, 79, 79, 81, 75, 73, 71, 71, 52, 33, 10, 83, 100, 28.31064 + 97, 73, 100, 80, 80, 92, 91, 87, 77, 51, 88, 103, 103, 95, 92, 95, 28.31065 + 99, 100, 80, 77, 28, 95, 96, 99, 114, 102, 100, 102, 108, 108, 110, 108, 28.31066 + 99, 67, 87, 111, 119, 122, 120, 104, 114, 110, 110, 104, 96, 12, 88, 116, 28.31067 + 115, 116, 119, 115, 111, 106, 108, 102, 75, 69, 120, 131, 131, 131, 128, 132, 28.31068 + 134, 132, 132, 124, 92, 34, 87, 89, 83, 93, 87, 111, 103, 102, 102, 116, 28.31069 + 100, 83, 110, 104, 108, 103, 112, 110, 115, 115, 119, 119, 119, 111, 88, 106, 28.31070 + 110, 97, 111, 115, 108, 120, 114, 79, 28, 103, 138, 131, 134, 135, 134, 130, 28.31071 + 131, 140, 143, 147, 107, 59, 76, 142, 148, 146, 148, 140, 139, 112, 112, 100, 28.31072 + 69, 22, 97, 124, 123, 128, 122, 130, 126, 124, 122, 89, 75, 56, 123, 150, 28.31073 + 134, 107, 110, 130, 128, 142, 91, 61, 8, 83, 130, 118, 136, 135, 123, 120, 28.31074 + 123, 136, 140, 108, 112, 73, 115, 146, 154, 144, 136, 135, 111, 124, 122, 123, 28.31075 + 77, 44, 111, 124, 131, 119, 115, 115, 114, 110, 100, 76, 44, 115, 132, 116, 28.31076 + 132, 134, 132, 135, 131, 130, 135, 138, 115, 33, 104, 102, 99, 103, 114, 107, 28.31077 + 106, 102, 106, 93, 63, 130, 136, 114, 144, 140, 175, 159, 120, 134, 158, 155, 28.31078 + 110, 103, 106, 118, 147, 173, 197, 206, 209, 224, 221, 171, 124, 128, 140, 138, 28.31079 + 127, 99, 42, 30, 30, 28, 29, 33, 37, 30, 45, 95, 128, 147, 155, 10, 28.31080 + 10, 10, 12, 12, 12, 12, 12, 8, 4, 13, 37, 64, 71, 51, 52, 33, 28.31081 + 33, 32, 18, 22, 13, 46, 42, 38, 42, 40, 42, 40, 32, 28, 26, 28, 28.31082 + 26, 30, 38, 40, 33, 32, 33, 33, 30, 36, 25, 13, 52, 57, 63, 46, 28.31083 + 48, 40, 41, 38, 38, 37, 41, 42, 33, 29, 45, 42, 37, 41, 41, 57, 28.31084 + 46, 44, 49, 45, 40, 38, 41, 45, 51, 44, 38, 37, 38, 38, 36, 36, 28.31085 + 28, 4, 32, 52, 48, 46, 45, 44, 45, 45, 49, 30, 13, 46, 60, 57, 28.31086 + 59, 59, 60, 57, 69, 60, 41, 28, 4, 61, 80, 76, 71, 69, 73, 65, 28.31087 + 72, 69, 59, 33, 6, 56, 61, 72, 72, 64, 72, 71, 65, 48, 44, 5, 28.31088 + 64, 72, 69, 69, 68, 68, 67, 65, 64, 64, 46, 26, 9, 72, 73, 79, 28.31089 + 75, 80, 75, 81, 69, 75, 76, 68, 56, 53, 85, 111, 99, 92, 83, 69, 28.31090 + 73, 77, 72, 48, 20, 55, 73, 95, 88, 107, 119, 91, 124, 124, 112, 84, 28.31091 + 124, 183, 139, 107, 106, 114, 119, 120, 115, 127, 124, 127, 120, 116, 112, 114, 28.31092 + 118, 155, 161, 138, 158, 167, 163, 161, 170, 157, 154, 151, 150, 146, 170, 91, 28.31093 + 32, 36, 40, 42, 28, 6, 79, 108, 106, 93, 88, 95, 93, 89, 79, 42, 28.31094 + 83, 99, 115, 114, 107, 106, 103, 103, 100, 92, 89, 79, 24, 40, 71, 73, 28.31095 + 51, 45, 63, 63, 40, 42, 51, 52, 60, 72, 92, 102, 92, 89, 87, 89, 28.31096 + 87, 85, 85, 45, 29, 65, 93, 107, 102, 102, 107, 96, 99, 95, 77, 67, 28.31097 + 33, 87, 84, 89, 84, 80, 79, 68, 65, 83, 80, 75, 75, 60, 63, 63, 28.31098 + 63, 59, 57, 59, 61, 57, 55, 32, 8, 87, 104, 67, 69, 75, 71, 72, 28.31099 + 72, 76, 81, 75, 73, 71, 73, 87, 87, 76, 76, 75, 76, 71, 80, 6, 28.31100 + 96, 96, 99, 93, 95, 97, 102, 99, 100, 95, 102, 100, 93, 71, 71, 83, 28.31101 + 87, 84, 84, 89, 89, 89, 93, 100, 8, 53, 112, 112, 110, 110, 106, 73, 28.31102 + 71, 76, 81, 99, 97, 77, 97, 108, 103, 108, 106, 111, 116, 116, 108, 85, 28.31103 + 36, 77, 73, 84, 92, 87, 89, 95, 100, 65, 63, 67, 110, 112, 116, 119, 28.31104 + 120, 119, 123, 124, 124, 122, 126, 119, 119, 118, 123, 123, 126, 124, 104, 104, 28.31105 + 122, 107, 83, 34, 132, 139, 130, 139, 143, 138, 144, 146, 134, 122, 118, 111, 28.31106 + 67, 64, 136, 128, 143, 104, 104, 104, 91, 97, 91, 69, 25, 96, 119, 115, 28.31107 + 93, 119, 119, 124, 104, 107, 95, 71, 46, 126, 142, 120, 123, 108, 127, 122, 28.31108 + 142, 77, 65, 8, 127, 130, 119, 128, 124, 126, 124, 124, 120, 120, 118, 116, 28.31109 + 83, 85, 116, 136, 131, 118, 107, 115, 114, 110, 122, 120, 44, 110, 126, 124, 28.31110 + 122, 120, 116, 114, 108, 102, 85, 44, 103, 131, 131, 128, 128, 132, 132, 123, 28.31111 + 127, 124, 118, 81, 37, 87, 110, 97, 89, 93, 100, 110, 106, 104, 91, 84, 28.31112 + 110, 120, 118, 128, 148, 132, 178, 128, 127, 157, 158, 157, 154, 155, 171, 190, 28.31113 + 191, 198, 202, 216, 214, 171, 122, 128, 136, 127, 119, 97, 46, 30, 30, 26, 28.31114 + 32, 32, 34, 30, 28, 40, 49, 120, 124, 127, 0, 0, 0, 0, 0, 0, 28.31115 + 0, 0, 0, 4, 9, 8, 10, 12, 13, 13, 20, 14, 17, 20, 20, 13, 28.31116 + 16, 13, 14, 14, 12, 12, 13, 10, 12, 9, 12, 10, 16, 12, 16, 14, 28.31117 + 26, 34, 40, 38, 29, 18, 13, 41, 45, 48, 40, 37, 32, 40, 37, 32, 28.31118 + 41, 38, 36, 33, 37, 41, 51, 40, 41, 40, 40, 40, 41, 38, 38, 38, 28.31119 + 38, 37, 22, 24, 17, 12, 12, 12, 10, 10, 9, 12, 5, 12, 12, 14, 28.31120 + 16, 17, 20, 37, 42, 37, 29, 17, 4, 37, 52, 26, 33, 40, 53, 28, 28.31121 + 38, 38, 22, 4, 29, 41, 33, 33, 41, 41, 34, 34, 42, 42, 17, 6, 28.31122 + 32, 41, 30, 41, 37, 37, 28, 44, 36, 20, 6, 17, 41, 41, 40, 40, 28.31123 + 44, 45, 42, 44, 45, 44, 24, 8, 53, 77, 73, 57, 56, 68, 69, 51, 28.31124 + 56, 63, 71, 61, 65, 68, 64, 59, 67, 63, 64, 57, 56, 55, 44, 21, 28.31125 + 56, 85, 87, 76, 73, 88, 89, 85, 93, 116, 119, 153, 185, 177, 119, 111, 28.31126 + 103, 115, 106, 61, 52, 52, 53, 52, 49, 52, 51, 91, 112, 170, 131, 135, 28.31127 + 163, 165, 167, 163, 161, 167, 154, 155, 147, 169, 100, 36, 33, 38, 28, 36, 28.31128 + 14, 37, 61, 85, 110, 107, 102, 112, 80, 72, 45, 76, 85, 104, 104, 97, 28.31129 + 80, 73, 69, 65, 65, 51, 40, 52, 59, 49, 53, 51, 51, 44, 45, 44, 28.31130 + 44, 36, 38, 37, 46, 80, 79, 87, 91, 87, 99, 81, 91, 77, 29, 26, 28.31131 + 60, 89, 84, 76, 85, 88, 83, 80, 83, 79, 67, 36, 88, 85, 72, 80, 28.31132 + 80, 79, 79, 81, 76, 73, 72, 69, 75, 73, 71, 72, 71, 68, 65, 65, 28.31133 + 64, 60, 57, 8, 57, 67, 61, 63, 67, 68, 67, 69, 73, 73, 72, 68, 28.31134 + 75, 72, 73, 72, 69, 68, 68, 71, 63, 56, 6, 65, 76, 69, 75, 75, 28.31135 + 80, 83, 81, 84, 87, 89, 89, 76, 88, 96, 89, 79, 99, 96, 84, 68, 28.31136 + 100, 85, 65, 26, 64, 55, 45, 46, 49, 38, 44, 46, 41, 42, 46, 42, 28.31137 + 63, 75, 64, 60, 87, 96, 87, 69, 95, 96, 59, 41, 68, 34, 37, 36, 28.31138 + 34, 29, 30, 32, 32, 25, 24, 33, 24, 22, 22, 28, 26, 26, 29, 33, 28.31139 + 34, 34, 37, 41, 46, 52, 57, 60, 69, 120, 118, 124, 107, 76, 32, 116, 28.31140 + 139, 127, 134, 139, 134, 131, 123, 122, 112, 112, 95, 92, 60, 88, 85, 95, 28.31141 + 102, 95, 72, 68, 60, 55, 72, 28, 57, 49, 48, 67, 68, 79, 100, 79, 28.31142 + 73, 75, 63, 63, 92, 111, 115, 111, 110, 114, 104, 104, 79, 60, 8, 127, 28.31143 + 127, 131, 131, 130, 131, 131, 131, 132, 131, 130, 127, 124, 126, 124, 123, 128, 28.31144 + 126, 127, 124, 124, 122, 122, 110, 40, 102, 104, 119, 114, 115, 107, 87, 103, 28.31145 + 112, 80, 44, 44, 42, 51, 55, 46, 48, 46, 61, 79, 76, 73, 71, 33, 28.31146 + 79, 59, 57, 63, 64, 59, 55, 63, 53, 44, 93, 80, 26, 97, 97, 104, 28.31147 + 116, 169, 146, 124, 138, 162, 162, 170, 177, 183, 189, 198, 202, 210, 206, 174, 28.31148 + 126, 128, 127, 118, 110, 81, 45, 34, 29, 29, 34, 32, 26, 32, 18, 20, 28.31149 + 26, 26, 42, 46, 46, 48, 46, 51, 51, 53, 48, 55, 48, 4, 1, 24, 28.31150 + 49, 48, 36, 41, 37, 18, 16, 17, 14, 16, 13, 8, 14, 30, 38, 52, 28.31151 + 53, 65, 64, 77, 81, 65, 49, 68, 73, 68, 57, 29, 18, 17, 13, 25, 28.31152 + 22, 13, 24, 26, 21, 22, 17, 18, 12, 14, 13, 13, 13, 13, 9, 9, 28.31153 + 8, 9, 6, 8, 8, 8, 6, 8, 8, 8, 6, 9, 17, 45, 59, 67, 28.31154 + 65, 69, 68, 69, 61, 61, 30, 5, 72, 99, 97, 80, 46, 44, 38, 22, 28.31155 + 22, 30, 24, 5, 1, 10, 8, 10, 1, 8, 5, 1, 1, 6, 5, 0, 28.31156 + 0, 8, 1, 1, 1, 2, 1, 1, 4, 6, 8, 1, 1, 4, 13, 1, 28.31157 + 0, 4, 1, 2, 0, 0, 4, 0, 0, 0, 1, 1, 1, 1, 1, 1, 28.31158 + 2, 14, 5, 20, 16, 21, 20, 22, 28, 34, 51, 51, 55, 64, 45, 45, 28.31159 + 37, 41, 37, 34, 34, 29, 26, 40, 33, 36, 22, 55, 59, 57, 67, 79, 28.31160 + 80, 75, 104, 88, 122, 144, 157, 205, 201, 158, 116, 107, 108, 107, 37, 36, 28.31161 + 36, 45, 41, 38, 44, 44, 64, 104, 161, 169, 134, 131, 159, 162, 166, 166, 28.31162 + 171, 153, 153, 166, 159, 96, 32, 30, 32, 21, 6, 25, 34, 36, 42, 32, 28.31163 + 32, 45, 48, 57, 79, 45, 69, 80, 75, 56, 53, 56, 55, 36, 37, 38, 28.31164 + 28, 20, 12, 13, 13, 9, 8, 8, 6, 6, 5, 5, 4, 4, 2, 1, 28.31165 + 1, 1, 0, 0, 0, 6, 8, 12, 10, 14, 16, 22, 26, 34, 33, 37, 28.31166 + 48, 45, 60, 76, 81, 64, 37, 77, 65, 65, 53, 44, 44, 38, 33, 29, 28.31167 + 30, 22, 16, 14, 21, 10, 9, 8, 24, 6, 5, 5, 26, 4, 2, 1, 28.31168 + 4, 2, 1, 1, 4, 4, 4, 6, 9, 6, 9, 13, 14, 4, 8, 22, 28.31169 + 25, 5, 10, 34, 36, 29, 8, 26, 25, 5, 4, 20, 4, 4, 14, 16, 28.31170 + 1, 1, 0, 10, 2, 0, 8, 10, 0, 0, 0, 9, 0, 0, 24, 30, 28.31171 + 37, 68, 102, 80, 91, 112, 124, 116, 99, 72, 48, 84, 123, 120, 103, 110, 28.31172 + 48, 38, 37, 33, 34, 30, 25, 20, 57, 64, 57, 64, 77, 79, 73, 80, 28.31173 + 95, 76, 8, 29, 126, 147, 103, 112, 130, 144, 114, 119, 122, 116, 115, 119, 28.31174 + 135, 135, 120, 79, 60, 72, 75, 106, 77, 33, 83, 88, 88, 85, 92, 91, 28.31175 + 91, 93, 95, 93, 104, 92, 89, 72, 45, 37, 46, 65, 36, 41, 88, 120, 28.31176 + 130, 108, 30, 96, 124, 128, 83, 67, 56, 72, 45, 51, 42, 96, 75, 65, 28.31177 + 59, 56, 60, 59, 63, 68, 76, 68, 60, 38, 48, 88, 93, 97, 93, 100, 28.31178 + 100, 103, 99, 115, 115, 103, 102, 108, 115, 107, 106, 122, 114, 102, 102, 119, 28.31179 + 107, 46, 55, 100, 96, 97, 81, 85, 93, 96, 111, 111, 114, 46, 114, 154, 28.31180 + 151, 130, 144, 140, 139, 99, 87, 84, 51, 37, 20, 45, 69, 92, 87, 92, 28.31181 + 95, 104, 96, 107, 108, 41, 75, 138, 178, 128, 130, 136, 116, 189, 162, 148, 28.31182 + 155, 130, 132, 136, 153, 157, 165, 162, 163, 148, 135, 136, 116, 88, 77, 56, 28.31183 + 36, 32, 30, 29, 33, 38, 45, 52, 59, 65, 72, 6, 64, 159, 157, 151, 28.31184 + 80, 77, 72, 71, 52, 60, 51, 56, 14, 4, 22, 26, 25, 29, 40, 37, 28.31185 + 38, 40, 33, 33, 13, 5, 40, 93, 103, 87, 89, 88, 87, 76, 72, 57, 28.31186 + 73, 79, 79, 81, 71, 85, 83, 75, 64, 53, 25, 26, 12, 16, 21, 30, 28.31187 + 36, 48, 53, 75, 61, 69, 52, 37, 33, 44, 85, 89, 84, 76, 96, 85, 28.31188 + 63, 93, 79, 81, 73, 80, 76, 85, 99, 80, 77, 63, 73, 77, 64, 73, 28.31189 + 63, 33, 8, 72, 96, 93, 87, 96, 96, 75, 84, 48, 32, 24, 37, 53, 28.31190 + 52, 53, 44, 40, 26, 40, 29, 9, 10, 2, 22, 106, 100, 71, 75, 96, 28.31191 + 95, 75, 75, 72, 26, 2, 18, 67, 81, 53, 56, 55, 52, 61, 53, 28, 28.31192 + 12, 45, 60, 61, 48, 45, 48, 48, 45, 44, 36, 32, 4, 6, 87, 104, 28.31193 + 102, 85, 102, 75, 34, 25, 22, 21, 18, 20, 24, 40, 59, 63, 68, 71, 28.31194 + 75, 83, 81, 79, 61, 22, 93, 99, 100, 85, 118, 93, 99, 88, 97, 139, 28.31195 + 154, 210, 213, 201, 185, 126, 111, 106, 116, 36, 34, 37, 36, 38, 32, 33, 28.31196 + 49, 61, 102, 181, 185, 126, 134, 120, 136, 142, 139, 135, 163, 159, 147, 107, 28.31197 + 79, 30, 29, 25, 30, 33, 34, 87, 99, 83, 83, 60, 49, 49, 46, 63, 28.31198 + 33, 30, 38, 55, 57, 60, 52, 55, 53, 76, 72, 73, 77, 120, 120, 130, 28.31199 + 119, 128, 122, 118, 130, 127, 122, 122, 112, 114, 115, 119, 128, 116, 119, 110, 28.31200 + 87, 91, 84, 73, 30, 14, 91, 132, 140, 103, 99, 84, 77, 65, 71, 49, 28.31201 + 56, 40, 46, 61, 63, 65, 52, 61, 68, 91, 61, 55, 61, 102, 135, 139, 28.31202 + 116, 103, 127, 128, 111, 106, 127, 119, 28, 6, 65, 143, 103, 108, 107, 114, 28.31203 + 112, 120, 128, 130, 126, 120, 127, 131, 147, 131, 131, 131, 134, 130, 127, 42, 28.31204 + 14, 37, 120, 150, 115, 120, 124, 126, 126, 132, 136, 138, 136, 131, 142, 155, 28.31205 + 148, 147, 147, 144, 140, 120, 139, 135, 55, 4, 81, 116, 143, 148, 146, 143, 28.31206 + 144, 142, 144, 130, 95, 45, 92, 136, 132, 132, 130, 130, 131, 122, 118, 110, 28.31207 + 60, 48, 118, 139, 140, 140, 140, 135, 102, 112, 128, 96, 88, 8, 135, 136, 28.31208 + 130, 136, 135, 136, 135, 142, 135, 138, 130, 130, 84, 128, 146, 135, 112, 135, 28.31209 + 131, 122, 115, 93, 37, 32, 28, 25, 25, 25, 22, 24, 22, 20, 22, 21, 28.31210 + 25, 24, 34, 114, 134, 126, 122, 136, 123, 114, 138, 147, 114, 32, 112, 143, 28.31211 + 128, 123, 114, 118, 104, 118, 128, 104, 68, 48, 118, 131, 130, 126, 118, 102, 28.31212 + 69, 55, 52, 49, 25, 0, 0, 25, 16, 0, 0, 18, 10, 0, 0, 12, 28.31213 + 8, 1, 6, 8, 8, 5, 21, 8, 9, 12, 33, 13, 16, 53, 104, 116, 28.31214 + 153, 161, 165, 165, 166, 163, 114, 132, 46, 127, 162, 154, 155, 159, 155, 143, 28.31215 + 151, 155, 136, 118, 83, 22, 114, 157, 170, 173, 167, 171, 166, 159, 116, 123, 28.31216 + 37, 181, 185, 179, 177, 171, 183, 179, 175, 107, 118, 100, 115, 112, 122, 142, 28.31217 + 142, 140, 136, 139, 138, 126, 103, 84, 55, 41, 38, 40, 34, 46, 38, 48, 28.31218 + 57, 60, 81, 92, 83, 80, 40, 142, 165, 186, 186, 24, 36, 36, 60, 53, 28.31219 + 60, 46, 57, 18, 4, 32, 30, 44, 22, 36, 38, 22, 42, 44, 32, 14, 28.31220 + 4, 84, 84, 73, 46, 49, 44, 44, 37, 48, 40, 57, 44, 59, 56, 84, 28.31221 + 84, 76, 80, 71, 72, 38, 30, 12, 53, 77, 75, 79, 73, 80, 76, 87, 28.31222 + 102, 64, 56, 57, 42, 63, 99, 88, 68, 73, 89, 99, 103, 99, 83, 81, 28.31223 + 84, 67, 68, 77, 77, 71, 72, 63, 60, 59, 61, 65, 38, 5, 83, 97, 28.31224 + 91, 93, 87, 87, 85, 91, 71, 48, 24, 44, 56, 52, 60, 51, 52, 56, 28.31225 + 67, 57, 25, 4, 12, 81, 103, 91, 85, 85, 87, 92, 92, 89, 85, 32, 28.31226 + 0, 89, 96, 100, 95, 88, 84, 88, 81, 76, 52, 13, 69, 61, 57, 46, 28.31227 + 51, 40, 41, 30, 29, 30, 36, 2, 5, 87, 103, 106, 103, 100, 95, 92, 28.31228 + 99, 91, 87, 73, 81, 65, 79, 97, 91, 96, 93, 107, 110, 103, 93, 61, 28.31229 + 24, 102, 116, 108, 123, 97, 111, 95, 97, 124, 155, 208, 209, 205, 208, 178, 28.31230 + 118, 110, 114, 116, 41, 34, 30, 40, 38, 34, 53, 46, 69, 97, 193, 194, 28.31231 + 131, 128, 135, 130, 104, 112, 110, 95, 89, 97, 87, 63, 26, 28, 25, 37, 28.31232 + 30, 61, 110, 104, 106, 95, 97, 99, 89, 92, 60, 38, 56, 124, 131, 122, 28.31233 + 119, 120, 128, 111, 126, 81, 114, 99, 89, 111, 108, 120, 115, 103, 112, 116, 28.31234 + 103, 106, 111, 103, 107, 102, 76, 75, 92, 81, 75, 81, 79, 81, 73, 32, 28.31235 + 13, 107, 150, 136, 130, 142, 140, 115, 130, 138, 102, 83, 41, 80, 130, 135, 28.31236 + 135, 132, 127, 134, 135, 131, 144, 128, 95, 93, 99, 103, 102, 107, 112, 106, 28.31237 + 118, 112, 124, 73, 9, 143, 138, 91, 107, 130, 127, 135, 110, 130, 139, 135, 28.31238 + 123, 92, 100, 107, 102, 97, 107, 107, 103, 97, 49, 0, 131, 162, 153, 161, 28.31239 + 154, 162, 158, 159, 154, 155, 158, 153, 127, 95, 123, 128, 130, 131, 132, 131, 28.31240 + 123, 123, 122, 56, 32, 106, 134, 143, 131, 128, 135, 132, 132, 132, 139, 99, 28.31241 + 57, 108, 138, 128, 132, 128, 138, 127, 114, 122, 114, 67, 41, 123, 131, 124, 28.31242 + 142, 122, 138, 142, 136, 123, 95, 89, 13, 130, 134, 118, 118, 118, 135, 136, 28.31243 + 138, 134, 138, 108, 73, 115, 147, 142, 135, 135, 136, 136, 132, 92, 103, 42, 28.31244 + 48, 143, 153, 124, 118, 138, 147, 134, 134, 144, 131, 128, 120, 130, 132, 159, 28.31245 + 161, 157, 155, 146, 128, 142, 144, 128, 36, 118, 143, 135, 130, 126, 123, 120, 28.31246 + 106, 110, 83, 55, 88, 167, 171, 179, 165, 171, 163, 157, 148, 122, 71, 32, 28.31247 + 95, 140, 143, 123, 138, 132, 138, 111, 130, 134, 120, 106, 102, 153, 158, 157, 28.31248 + 151, 169, 169, 144, 151, 177, 157, 67, 59, 131, 165, 167, 166, 161, 161, 153, 28.31249 + 161, 124, 122, 49, 128, 163, 147, 154, 155, 159, 159, 157, 157, 155, 146, 107, 28.31250 + 24, 136, 170, 173, 169, 169, 169, 166, 157, 118, 104, 32, 190, 179, 167, 177, 28.31251 + 185, 147, 194, 191, 159, 110, 92, 85, 84, 87, 89, 92, 92, 87, 85, 84, 28.31252 + 69, 56, 48, 42, 40, 36, 42, 45, 46, 55, 63, 76, 80, 91, 89, 92, 28.31253 + 89, 17, 146, 171, 177, 178, 16, 20, 30, 45, 53, 46, 45, 51, 9, 1, 28.31254 + 25, 28, 36, 33, 28, 28, 38, 33, 40, 26, 12, 4, 84, 77, 44, 33, 28.31255 + 45, 44, 67, 52, 33, 36, 48, 37, 56, 72, 48, 68, 71, 69, 71, 68, 28.31256 + 69, 29, 13, 68, 80, 81, 61, 57, 52, 48, 44, 40, 34, 52, 51, 40, 28.31257 + 96, 99, 88, 77, 85, 83, 80, 69, 85, 67, 63, 49, 84, 84, 64, 59, 28.31258 + 56, 61, 61, 63, 52, 60, 53, 36, 5, 76, 87, 81, 93, 87, 85, 77, 28.31259 + 80, 65, 48, 25, 51, 42, 64, 72, 71, 77, 83, 73, 53, 25, 5, 1, 28.31260 + 108, 100, 76, 79, 80, 76, 76, 71, 77, 75, 32, 10, 95, 72, 77, 79, 28.31261 + 83, 89, 88, 89, 71, 63, 17, 63, 52, 44, 37, 24, 16, 36, 25, 17, 28.31262 + 29, 37, 2, 4, 83, 102, 91, 87, 79, 85, 96, 97, 89, 87, 60, 48, 28.31263 + 95, 112, 108, 102, 96, 102, 99, 104, 103, 91, 67, 25, 99, 107, 119, 111, 28.31264 + 135, 116, 96, 106, 130, 183, 210, 209, 206, 202, 146, 115, 112, 111, 106, 32, 28.31265 + 30, 32, 36, 26, 42, 53, 44, 67, 99, 205, 201, 183, 128, 132, 154, 142, 28.31266 + 140, 140, 135, 136, 118, 107, 61, 28, 26, 28, 37, 28, 65, 111, 97, 110, 28.31267 + 103, 100, 96, 100, 88, 67, 36, 97, 115, 111, 116, 116, 112, 106, 103, 93, 28.31268 + 120, 104, 80, 107, 127, 127, 120, 110, 112, 96, 102, 99, 112, 100, 93, 63, 28.31269 + 91, 91, 77, 79, 79, 79, 87, 87, 89, 68, 38, 12, 99, 154, 139, 140, 28.31270 + 132, 132, 142, 140, 144, 144, 93, 44, 108, 140, 143, 138, 144, 134, 139, 135, 28.31271 + 127, 127, 93, 103, 132, 130, 127, 122, 115, 119, 126, 127, 120, 120, 89, 14, 28.31272 + 140, 89, 143, 138, 103, 106, 136, 124, 114, 115, 124, 75, 100, 131, 136, 139, 28.31273 + 132, 128, 131, 116, 115, 52, 24, 136, 162, 154, 143, 144, 150, 154, 153, 155, 28.31274 + 151, 153, 131, 102, 143, 144, 143, 139, 139, 139, 130, 130, 130, 115, 73, 6, 28.31275 + 99, 139, 138, 128, 131, 132, 142, 142, 138, 140, 97, 56, 111, 130, 122, 131, 28.31276 + 118, 124, 116, 119, 131, 114, 63, 38, 116, 127, 126, 136, 132, 144, 142, 138, 28.31277 + 124, 104, 84, 10, 85, 130, 120, 119, 119, 116, 131, 120, 134, 118, 99, 72, 28.31278 + 116, 147, 143, 139, 136, 140, 138, 134, 106, 110, 42, 91, 154, 150, 148, 150, 28.31279 + 153, 148, 150, 148, 139, 135, 134, 87, 132, 162, 154, 148, 153, 150, 148, 151, 28.31280 + 143, 153, 123, 40, 114, 122, 147, 123, 115, 122, 110, 110, 100, 76, 52, 110, 28.31281 + 171, 177, 169, 171, 167, 177, 171, 165, 138, 103, 42, 93, 103, 89, 124, 151, 28.31282 + 162, 95, 91, 134, 108, 89, 112, 140, 123, 158, 167, 177, 167, 162, 162, 165, 28.31283 + 170, 159, 102, 83, 135, 163, 157, 159, 159, 154, 150, 158, 120, 120, 49, 130, 28.31284 + 159, 161, 151, 155, 159, 150, 154, 155, 155, 147, 107, 18, 143, 173, 167, 161, 28.31285 + 148, 163, 162, 153, 120, 102, 25, 154, 182, 165, 183, 187, 178, 178, 126, 165, 28.31286 + 155, 139, 93, 106, 71, 68, 69, 64, 64, 60, 57, 55, 51, 46, 41, 42, 28.31287 + 49, 52, 63, 64, 73, 73, 79, 92, 96, 93, 91, 89, 10, 150, 170, 175, 28.31288 + 166, 72, 61, 55, 18, 22, 49, 40, 52, 9, 1, 28, 33, 38, 55, 33, 28.31289 + 29, 25, 30, 34, 17, 6, 4, 59, 84, 37, 41, 28, 49, 33, 51, 33, 28.31290 + 40, 56, 45, 56, 64, 49, 44, 63, 80, 73, 56, 68, 33, 12, 61, 80, 28.31291 + 53, 55, 48, 44, 44, 37, 34, 44, 37, 21, 14, 97, 96, 84, 88, 75, 28.31292 + 81, 76, 75, 89, 60, 64, 45, 77, 77, 61, 63, 63, 56, 73, 75, 63, 28.31293 + 56, 68, 33, 5, 71, 88, 83, 87, 80, 72, 67, 95, 85, 49, 34, 30, 28.31294 + 51, 52, 71, 63, 45, 55, 63, 49, 0, 4, 1, 69, 99, 73, 80, 76, 28.31295 + 83, 75, 83, 81, 81, 34, 1, 61, 87, 89, 69, 67, 72, 73, 103, 84, 28.31296 + 41, 20, 28, 49, 49, 36, 21, 26, 14, 21, 18, 18, 26, 1, 4, 76, 28.31297 + 97, 102, 80, 73, 77, 80, 79, 75, 60, 63, 52, 110, 111, 102, 122, 95, 28.31298 + 102, 99, 102, 103, 95, 72, 29, 102, 108, 106, 84, 81, 99, 91, 116, 157, 28.31299 + 212, 212, 209, 199, 150, 119, 108, 110, 122, 64, 30, 29, 30, 33, 44, 46, 28.31300 + 56, 55, 81, 104, 208, 210, 195, 128, 132, 135, 153, 157, 158, 157, 151, 142, 28.31301 + 124, 69, 26, 28, 24, 34, 24, 53, 106, 99, 104, 103, 115, 111, 100, 92, 28.31302 + 73, 37, 100, 111, 111, 107, 112, 118, 104, 103, 97, 104, 100, 71, 104, 126, 28.31303 + 104, 103, 118, 106, 106, 100, 99, 103, 107, 92, 59, 89, 106, 102, 95, 83, 28.31304 + 73, 92, 72, 76, 65, 37, 12, 120, 143, 131, 134, 139, 140, 139, 139, 136, 28.31305 + 126, 102, 51, 118, 140, 131, 130, 128, 128, 127, 128, 123, 100, 83, 112, 132, 28.31306 + 119, 122, 124, 126, 123, 124, 123, 123, 127, 64, 13, 73, 134, 99, 130, 132, 28.31307 + 127, 131, 135, 134, 127, 107, 71, 102, 131, 127, 120, 114, 120, 122, 128, 120, 28.31308 + 49, 18, 106, 161, 151, 161, 153, 148, 153, 157, 155, 158, 143, 127, 104, 144, 28.31309 + 150, 135, 139, 140, 136, 140, 142, 134, 106, 71, 4, 93, 136, 135, 124, 128, 28.31310 + 131, 136, 131, 134, 130, 99, 68, 96, 140, 123, 116, 127, 119, 130, 124, 119, 28.31311 + 103, 63, 37, 89, 120, 122, 123, 126, 134, 135, 140, 123, 102, 87, 0, 83, 28.31312 + 135, 115, 123, 120, 119, 127, 119, 134, 111, 89, 55, 120, 146, 143, 143, 127, 28.31313 + 132, 134, 140, 131, 122, 45, 127, 161, 150, 135, 143, 143, 144, 142, 148, 147, 28.31314 + 134, 107, 84, 134, 162, 151, 153, 151, 150, 144, 143, 143, 148, 119, 51, 111, 28.31315 + 128, 123, 124, 116, 111, 112, 108, 99, 75, 48, 91, 166, 174, 167, 171, 171, 28.31316 + 170, 169, 178, 143, 110, 38, 93, 95, 146, 116, 126, 167, 108, 138, 143, 104, 28.31317 + 130, 140, 96, 143, 175, 173, 171, 166, 173, 171, 171, 170, 159, 122, 63, 147, 28.31318 + 162, 162, 153, 150, 148, 136, 161, 124, 124, 64, 130, 163, 167, 155, 143, 144, 28.31319 + 151, 148, 146, 157, 122, 87, 16, 146, 169, 157, 157, 143, 154, 134, 127, 123, 28.31320 + 112, 30, 166, 181, 179, 170, 174, 146, 182, 140, 140, 158, 151, 131, 99, 71, 28.31321 + 67, 64, 63, 57, 53, 49, 49, 46, 45, 41, 55, 63, 69, 72, 84, 123, 28.31322 + 79, 92, 96, 106, 99, 104, 91, 5, 151, 170, 171, 178, 13, 18, 18, 46, 28.31323 + 24, 20, 37, 38, 13, 2, 25, 20, 34, 33, 29, 33, 30, 42, 29, 18, 28.31324 + 17, 4, 64, 73, 52, 29, 48, 34, 34, 30, 36, 46, 44, 37, 60, 69, 28.31325 + 67, 49, 65, 83, 67, 55, 79, 33, 14, 51, 75, 46, 48, 42, 36, 57, 28.31326 + 52, 49, 46, 36, 28, 13, 99, 95, 88, 79, 73, 83, 64, 65, 69, 53, 28.31327 + 56, 42, 80, 79, 63, 67, 64, 69, 52, 61, 72, 56, 59, 34, 6, 73, 28.31328 + 85, 72, 104, 88, 71, 76, 87, 77, 55, 34, 46, 41, 48, 36, 20, 33, 28.31329 + 34, 26, 38, 6, 4, 1, 68, 95, 71, 79, 81, 80, 81, 85, 83, 77, 28.31330 + 33, 1, 68, 81, 80, 76, 69, 67, 68, 83, 77, 44, 20, 57, 67, 26, 28.31331 + 30, 14, 34, 16, 17, 30, 26, 25, 2, 2, 84, 100, 95, 77, 81, 85, 28.31332 + 88, 84, 72, 64, 42, 48, 107, 115, 100, 108, 89, 103, 112, 111, 102, 88, 28.31333 + 68, 36, 88, 99, 107, 89, 81, 93, 81, 114, 193, 208, 209, 204, 157, 124, 28.31334 + 107, 112, 119, 72, 45, 28, 30, 32, 33, 44, 48, 56, 56, 76, 102, 214, 28.31335 + 213, 202, 128, 128, 136, 139, 147, 153, 155, 157, 148, 128, 69, 25, 25, 21, 28.31336 + 37, 21, 59, 107, 96, 102, 100, 112, 112, 99, 104, 64, 38, 89, 111, 118, 28.31337 + 127, 127, 130, 104, 97, 92, 104, 88, 67, 99, 124, 111, 110, 102, 112, 112, 28.31338 + 111, 97, 115, 106, 87, 57, 97, 97, 92, 79, 75, 67, 71, 69, 75, 61, 28.31339 + 32, 9, 119, 146, 146, 130, 148, 136, 132, 135, 130, 132, 100, 61, 104, 139, 28.31340 + 126, 124, 120, 136, 122, 108, 119, 104, 73, 112, 136, 122, 122, 122, 120, 126, 28.31341 + 120, 120, 124, 128, 65, 12, 93, 132, 136, 102, 103, 130, 123, 120, 122, 124, 28.31342 + 108, 65, 96, 143, 134, 111, 128, 139, 128, 116, 115, 46, 0, 128, 155, 158, 28.31343 + 157, 150, 153, 142, 147, 147, 147, 144, 118, 97, 143, 143, 131, 135, 139, 142, 28.31344 + 139, 139, 124, 123, 71, 6, 110, 134, 131, 132, 127, 130, 123, 135, 135, 131, 28.31345 + 107, 65, 103, 134, 119, 119, 128, 128, 127, 130, 126, 104, 71, 32, 107, 124, 28.31346 + 119, 146, 132, 142, 140, 126, 123, 110, 79, 5, 124, 120, 115, 120, 115, 112, 28.31347 + 122, 115, 138, 115, 87, 59, 116, 144, 148, 142, 144, 136, 131, 131, 130, 112, 28.31348 + 55, 97, 157, 159, 148, 147, 140, 130, 134, 134, 135, 97, 87, 59, 130, 157, 28.31349 + 146, 144, 139, 132, 140, 143, 150, 146, 116, 57, 103, 140, 123, 116, 122, 131, 28.31350 + 122, 126, 95, 85, 42, 96, 175, 175, 165, 174, 171, 167, 166, 174, 132, 110, 28.31351 + 38, 87, 96, 103, 136, 135, 123, 135, 143, 124, 130, 144, 140, 36, 136, 173, 28.31352 + 167, 173, 177, 167, 177, 178, 177, 166, 111, 68, 139, 161, 140, 139, 147, 146, 28.31353 + 155, 143, 161, 136, 65, 131, 159, 163, 153, 154, 158, 154, 146, 153, 148, 144, 28.31354 + 114, 13, 132, 173, 158, 161, 143, 148, 138, 122, 124, 123, 26, 182, 186, 177, 28.31355 + 175, 148, 143, 157, 167, 144, 134, 155, 148, 130, 69, 104, 97, 96, 99, 99, 28.31356 + 95, 91, 99, 100, 84, 52, 61, 77, 89, 127, 127, 127, 107, 110, 111, 108, 28.31357 + 103, 95, 57, 158, 169, 173, 163, 75, 75, 40, 41, 48, 40, 37, 59, 17, 28.31358 + 2, 13, 30, 36, 25, 45, 26, 29, 24, 30, 17, 8, 2, 64, 79, 46, 28.31359 + 51, 49, 37, 46, 45, 38, 45, 38, 33, 53, 60, 60, 38, 65, 72, 64, 28.31360 + 52, 76, 33, 16, 53, 75, 53, 56, 32, 37, 55, 42, 40, 40, 37, 41, 28.31361 + 30, 103, 104, 73, 87, 57, 73, 67, 69, 65, 61, 60, 44, 79, 72, 64, 28.31362 + 67, 73, 56, 65, 69, 69, 53, 59, 36, 5, 69, 80, 87, 80, 91, 68, 28.31363 + 73, 97, 71, 55, 29, 51, 60, 38, 46, 52, 46, 45, 32, 21, 14, 4, 28.31364 + 9, 75, 96, 85, 83, 85, 91, 93, 85, 88, 75, 33, 0, 79, 83, 64, 28.31365 + 77, 76, 67, 69, 72, 67, 55, 25, 52, 60, 44, 26, 18, 32, 10, 18, 28.31366 + 20, 18, 24, 1, 2, 89, 99, 96, 87, 85, 80, 89, 95, 77, 63, 46, 28.31367 + 61, 115, 108, 106, 96, 85, 103, 104, 95, 91, 89, 67, 37, 91, 103, 110, 28.31368 + 93, 104, 79, 75, 111, 199, 210, 205, 165, 124, 104, 126, 64, 61, 44, 29, 28.31369 + 29, 28, 34, 32, 37, 46, 51, 60, 87, 127, 213, 213, 205, 126, 126, 134, 28.31370 + 136, 139, 143, 153, 157, 148, 126, 60, 24, 22, 21, 29, 26, 64, 106, 96, 28.31371 + 100, 100, 115, 103, 106, 84, 73, 49, 89, 120, 111, 123, 115, 114, 119, 111, 28.31372 + 91, 102, 88, 64, 103, 124, 120, 96, 122, 103, 106, 97, 114, 108, 102, 77, 28.31373 + 61, 81, 96, 85, 76, 68, 65, 71, 69, 79, 56, 33, 8, 120, 146, 130, 28.31374 + 130, 139, 148, 139, 130, 142, 135, 104, 63, 96, 140, 130, 122, 138, 128, 115, 28.31375 + 120, 107, 92, 65, 112, 139, 122, 128, 132, 130, 134, 136, 127, 122, 124, 75, 28.31376 + 21, 96, 128, 134, 106, 126, 131, 128, 123, 127, 120, 107, 61, 95, 132, 130, 28.31377 + 123, 120, 119, 120, 116, 118, 51, 0, 120, 155, 157, 158, 154, 155, 151, 150, 28.31378 + 148, 147, 142, 81, 110, 146, 138, 131, 140, 146, 139, 130, 120, 119, 118, 67, 28.31379 + 40, 122, 135, 132, 130, 127, 135, 128, 138, 136, 135, 110, 77, 108, 140, 118, 28.31380 + 112, 126, 130, 130, 119, 116, 104, 71, 29, 103, 118, 134, 139, 131, 139, 128, 28.31381 + 126, 124, 110, 84, 22, 116, 118, 107, 112, 107, 112, 136, 111, 127, 114, 84, 28.31382 + 56, 108, 146, 144, 143, 146, 142, 123, 130, 123, 114, 60, 91, 155, 147, 148, 28.31383 + 130, 135, 142, 154, 134, 135, 102, 92, 95, 132, 155, 147, 142, 140, 150, 144, 28.31384 + 148, 150, 146, 128, 60, 111, 130, 124, 114, 107, 122, 112, 128, 104, 79, 46, 28.31385 + 112, 174, 174, 167, 175, 169, 169, 173, 174, 146, 110, 40, 97, 92, 102, 131, 28.31386 + 118, 130, 157, 115, 126, 110, 139, 99, 29, 144, 173, 174, 178, 177, 171, 169, 28.31387 + 171, 169, 163, 115, 75, 134, 163, 139, 130, 147, 134, 155, 158, 143, 139, 67, 28.31388 + 124, 165, 159, 154, 157, 143, 150, 146, 135, 146, 144, 111, 13, 140, 170, 166, 28.31389 + 161, 142, 134, 124, 123, 124, 110, 32, 186, 181, 178, 151, 173, 174, 132, 167, 28.31390 + 138, 158, 155, 154, 130, 71, 110, 114, 123, 120, 114, 114, 111, 119, 106, 83, 28.31391 + 55, 67, 76, 123, 114, 127, 124, 116, 116, 110, 112, 111, 103, 14, 155, 170, 28.31392 + 169, 155, 30, 53, 57, 51, 45, 36, 38, 37, 12, 0, 25, 25, 30, 32, 28.31393 + 22, 21, 25, 25, 26, 17, 8, 2, 56, 67, 37, 34, 37, 37, 44, 42, 28.31394 + 40, 28, 38, 26, 57, 59, 57, 33, 60, 51, 49, 51, 59, 32, 17, 33, 28.31395 + 67, 52, 61, 41, 44, 53, 56, 57, 52, 34, 42, 29, 103, 88, 80, 91, 28.31396 + 65, 83, 64, 69, 63, 65, 59, 46, 76, 72, 65, 55, 60, 53, 71, 59, 28.31397 + 65, 53, 49, 34, 5, 75, 69, 68, 81, 80, 71, 72, 80, 71, 56, 29, 28.31398 + 41, 34, 42, 30, 25, 26, 40, 40, 9, 4, 4, 2, 73, 96, 73, 79, 28.31399 + 95, 93, 79, 84, 89, 75, 34, 12, 83, 80, 65, 79, 73, 64, 71, 69, 28.31400 + 72, 64, 29, 57, 53, 64, 28, 21, 44, 16, 16, 17, 30, 22, 1, 1, 28.31401 + 88, 88, 99, 87, 83, 69, 87, 95, 79, 67, 45, 71, 119, 106, 95, 92, 28.31402 + 91, 107, 96, 88, 80, 81, 73, 38, 85, 103, 102, 102, 77, 77, 87, 106, 28.31403 + 194, 204, 175, 126, 107, 111, 63, 42, 30, 28, 26, 28, 28, 32, 28, 38, 28.31404 + 49, 53, 75, 93, 175, 216, 214, 208, 126, 126, 134, 138, 138, 143, 153, 154, 28.31405 + 146, 120, 38, 24, 22, 13, 29, 25, 64, 104, 93, 102, 102, 110, 103, 104, 28.31406 + 85, 67, 42, 95, 110, 115, 114, 107, 100, 100, 100, 97, 95, 75, 59, 100, 28.31407 + 122, 123, 104, 108, 97, 111, 111, 114, 106, 96, 79, 56, 87, 95, 85, 84, 28.31408 + 87, 88, 85, 80, 80, 48, 33, 8, 95, 146, 131, 130, 118, 142, 148, 136, 28.31409 + 134, 134, 104, 69, 97, 136, 124, 132, 127, 136, 114, 116, 108, 88, 68, 123, 28.31410 + 140, 127, 126, 136, 131, 134, 127, 126, 122, 116, 91, 25, 112, 127, 131, 110, 28.31411 + 124, 130, 126, 126, 122, 120, 102, 55, 89, 135, 130, 135, 120, 124, 131, 122, 28.31412 + 115, 52, 14, 123, 157, 163, 138, 135, 153, 150, 148, 140, 143, 138, 71, 106, 28.31413 + 148, 139, 136, 139, 150, 146, 134, 127, 111, 110, 76, 9, 107, 136, 128, 126, 28.31414 + 124, 134, 134, 136, 135, 138, 114, 68, 100, 135, 123, 136, 107, 104, 122, 124, 28.31415 + 119, 103, 65, 25, 104, 112, 112, 143, 131, 127, 127, 124, 126, 111, 83, 22, 28.31416 + 77, 110, 108, 104, 110, 110, 140, 108, 123, 111, 83, 46, 114, 142, 154, 144, 28.31417 + 151, 146, 136, 126, 122, 107, 61, 97, 153, 146, 146, 118, 138, 136, 143, 136, 28.31418 + 115, 106, 91, 84, 136, 153, 136, 144, 144, 130, 127, 136, 131, 134, 126, 60, 28.31419 + 108, 127, 127, 114, 118, 111, 116, 111, 110, 73, 45, 119, 166, 174, 163, 167, 28.31420 + 171, 167, 170, 174, 127, 106, 46, 96, 92, 106, 128, 120, 115, 130, 118, 122, 28.31421 + 119, 95, 123, 59, 144, 173, 177, 182, 167, 171, 175, 175, 173, 161, 118, 79, 28.31422 + 132, 159, 155, 147, 147, 144, 143, 144, 123, 131, 71, 106, 108, 159, 143, 153, 28.31423 + 155, 154, 148, 150, 146, 143, 108, 9, 140, 169, 165, 158, 147, 139, 161, 118, 28.31424 + 134, 111, 28, 134, 182, 169, 162, 161, 155, 150, 150, 169, 147, 159, 158, 124, 28.31425 + 67, 108, 122, 128, 128, 128, 122, 111, 115, 110, 107, 71, 83, 93, 134, 136, 28.31426 + 130, 123, 108, 116, 118, 110, 111, 99, 6, 161, 166, 170, 159, 14, 63, 68, 28.31427 + 40, 41, 48, 32, 34, 9, 0, 14, 30, 36, 29, 26, 30, 38, 40, 20, 28.31428 + 13, 4, 2, 49, 61, 38, 65, 36, 51, 42, 36, 44, 38, 41, 28, 45, 28.31429 + 77, 46, 33, 63, 57, 53, 53, 63, 36, 18, 29, 65, 45, 63, 34, 46, 28.31430 + 38, 44, 60, 45, 33, 22, 6, 100, 91, 76, 71, 80, 69, 79, 73, 71, 28.31431 + 61, 60, 42, 76, 71, 59, 63, 52, 53, 60, 63, 59, 55, 52, 34, 5, 28.31432 + 71, 83, 77, 83, 77, 61, 71, 76, 79, 57, 44, 33, 44, 61, 52, 46, 28.31433 + 52, 28, 22, 9, 0, 2, 1, 64, 92, 88, 80, 83, 92, 81, 87, 77, 28.31434 + 65, 36, 1, 60, 79, 61, 80, 73, 77, 59, 68, 81, 52, 33, 17, 51, 28.31435 + 52, 22, 22, 32, 17, 12, 21, 18, 20, 0, 0, 84, 95, 96, 88, 87, 28.31436 + 89, 89, 87, 76, 61, 48, 75, 118, 93, 103, 103, 97, 97, 96, 108, 102, 28.31437 + 77, 72, 40, 85, 99, 104, 102, 97, 89, 75, 99, 181, 208, 171, 114, 95, 28.31438 + 104, 52, 40, 29, 26, 32, 28, 26, 33, 29, 55, 51, 49, 77, 107, 191, 28.31439 + 222, 217, 210, 127, 126, 132, 138, 142, 147, 153, 151, 138, 93, 26, 22, 22, 28.31440 + 20, 32, 25, 65, 99, 93, 102, 104, 97, 107, 99, 68, 75, 42, 87, 107, 28.31441 + 107, 106, 104, 104, 114, 102, 97, 102, 87, 53, 104, 115, 132, 110, 104, 106, 28.31442 + 108, 110, 111, 95, 93, 57, 73, 79, 87, 83, 80, 77, 81, 71, 75, 77, 28.31443 + 56, 38, 6, 128, 146, 131, 124, 120, 126, 127, 131, 127, 123, 115, 80, 102, 28.31444 + 140, 124, 136, 128, 128, 102, 118, 91, 91, 63, 116, 136, 123, 126, 130, 140, 28.31445 + 126, 128, 124, 120, 112, 72, 22, 69, 99, 128, 123, 132, 123, 124, 132, 123, 28.31446 + 114, 91, 52, 79, 122, 127, 138, 134, 132, 118, 119, 122, 51, 10, 112, 158, 28.31447 + 158, 153, 151, 144, 150, 144, 144, 148, 118, 63, 118, 144, 140, 128, 139, 151, 28.31448 + 136, 130, 120, 116, 100, 83, 6, 93, 136, 127, 116, 127, 126, 126, 136, 130, 28.31449 + 128, 107, 84, 96, 132, 122, 122, 131, 102, 103, 104, 108, 104, 60, 24, 92, 28.31450 + 103, 108, 139, 139, 136, 130, 123, 128, 111, 87, 21, 81, 115, 103, 100, 103, 28.31451 + 107, 115, 119, 107, 108, 73, 36, 112, 138, 150, 140, 144, 144, 140, 122, 123, 28.31452 + 112, 64, 84, 140, 140, 167, 132, 142, 118, 112, 122, 95, 91, 91, 64, 138, 28.31453 + 151, 142, 139, 143, 136, 140, 132, 134, 127, 123, 64, 99, 127, 127, 120, 118, 28.31454 + 104, 122, 119, 108, 75, 38, 118, 165, 170, 171, 173, 171, 161, 171, 175, 136, 28.31455 + 106, 37, 97, 93, 135, 118, 111, 116, 153, 124, 127, 104, 100, 135, 60, 154, 28.31456 + 166, 178, 175, 174, 170, 171, 166, 166, 165, 140, 81, 110, 161, 150, 150, 132, 28.31457 + 140, 126, 120, 139, 128, 80, 93, 142, 163, 155, 153, 148, 150, 150, 151, 139, 28.31458 + 124, 81, 8, 130, 159, 163, 158, 162, 151, 136, 119, 135, 115, 24, 166, 181, 28.31459 + 162, 171, 163, 165, 154, 151, 151, 144, 158, 157, 132, 65, 120, 127, 134, 126, 28.31460 + 130, 108, 123, 124, 127, 106, 68, 76, 142, 132, 134, 128, 130, 127, 123, 130, 28.31461 + 112, 112, 102, 1, 150, 169, 158, 161, 24, 48, 73, 64, 36, 30, 33, 32, 28.31462 + 10, 1, 20, 26, 33, 40, 45, 34, 26, 24, 17, 9, 4, 4, 46, 55, 28.31463 + 61, 42, 65, 55, 44, 44, 40, 48, 33, 24, 49, 59, 51, 48, 30, 40, 28.31464 + 44, 40, 38, 37, 18, 33, 51, 42, 51, 53, 51, 48, 45, 45, 45, 45, 28.31465 + 24, 13, 91, 84, 57, 57, 69, 84, 81, 64, 83, 59, 55, 38, 64, 72, 28.31466 + 64, 57, 61, 57, 57, 60, 51, 53, 56, 34, 6, 69, 72, 48, 63, 61, 28.31467 + 45, 46, 63, 57, 60, 45, 28, 34, 21, 33, 16, 20, 18, 22, 21, 0, 28.31468 + 2, 8, 63, 88, 69, 75, 77, 76, 77, 89, 83, 59, 36, 1, 59, 77, 28.31469 + 64, 76, 77, 69, 68, 72, 69, 55, 24, 13, 30, 24, 30, 22, 30, 26, 28.31470 + 32, 25, 29, 18, 0, 0, 88, 99, 87, 89, 92, 106, 96, 83, 67, 64, 28.31471 + 34, 87, 118, 108, 112, 102, 104, 97, 84, 89, 95, 89, 73, 42, 81, 97, 28.31472 + 106, 100, 96, 75, 71, 84, 138, 209, 174, 122, 103, 106, 57, 44, 29, 36, 28.31473 + 37, 30, 32, 30, 32, 37, 51, 72, 95, 150, 212, 222, 221, 205, 128, 127, 28.31474 + 134, 139, 147, 153, 154, 148, 127, 52, 24, 21, 18, 21, 37, 22, 60, 97, 28.31475 + 97, 108, 103, 107, 104, 100, 81, 69, 41, 56, 102, 107, 89, 96, 93, 84, 28.31476 + 102, 100, 97, 80, 51, 92, 111, 114, 114, 108, 108, 108, 107, 107, 100, 87, 28.31477 + 52, 59, 87, 93, 97, 89, 87, 77, 89, 81, 67, 48, 26, 5, 128, 143, 28.31478 + 138, 102, 102, 99, 112, 92, 108, 111, 106, 84, 84, 123, 128, 124, 124, 123, 28.31479 + 100, 116, 87, 84, 52, 104, 131, 126, 126, 130, 127, 126, 123, 123, 123, 122, 28.31480 + 67, 21, 103, 126, 144, 126, 132, 130, 122, 120, 114, 112, 97, 46, 73, 85, 28.31481 + 118, 127, 132, 122, 128, 118, 119, 44, 28, 115, 144, 151, 147, 143, 146, 148, 28.31482 + 147, 144, 139, 115, 55, 112, 119, 143, 144, 148, 142, 132, 124, 120, 107, 114, 28.31483 + 65, 4, 124, 130, 127, 112, 124, 122, 119, 116, 115, 116, 116, 87, 65, 116, 28.31484 + 135, 108, 114, 93, 104, 108, 114, 107, 83, 18, 97, 106, 127, 132, 127, 131, 28.31485 + 128, 128, 127, 119, 84, 29, 85, 99, 99, 95, 93, 87, 96, 99, 102, 104, 28.31486 + 73, 33, 75, 132, 144, 144, 135, 127, 115, 123, 123, 112, 72, 73, 104, 136, 28.31487 + 132, 134, 108, 112, 108, 112, 120, 83, 76, 41, 136, 147, 131, 139, 143, 139, 28.31488 + 139, 132, 142, 128, 124, 79, 79, 132, 123, 122, 119, 106, 106, 119, 110, 76, 28.31489 + 51, 107, 167, 163, 171, 171, 170, 169, 171, 174, 124, 106, 38, 100, 103, 130, 28.31490 + 123, 106, 106, 102, 110, 126, 102, 120, 136, 18, 135, 161, 163, 173, 162, 169, 28.31491 + 154, 170, 163, 169, 131, 85, 111, 143, 135, 136, 142, 131, 134, 140, 122, 132, 28.31492 + 103, 89, 139, 146, 148, 116, 119, 123, 144, 148, 130, 127, 119, 6, 135, 161, 28.31493 + 167, 159, 153, 157, 155, 130, 134, 124, 21, 181, 186, 157, 167, 170, 161, 159, 28.31494 + 167, 167, 155, 157, 155, 126, 64, 103, 120, 119, 123, 124, 122, 115, 122, 123, 28.31495 + 106, 68, 76, 138, 131, 135, 130, 143, 139, 120, 114, 112, 114, 107, 59, 162, 28.31496 + 163, 162, 153, 22, 29, 34, 42, 51, 44, 44, 24, 9, 1, 14, 18, 21, 28.31497 + 18, 17, 18, 17, 18, 17, 12, 4, 1, 40, 59, 61, 64, 52, 46, 48, 28.31498 + 49, 48, 45, 28, 20, 46, 46, 52, 52, 55, 41, 45, 41, 37, 37, 34, 28.31499 + 32, 24, 24, 24, 22, 26, 25, 26, 28, 28, 30, 34, 18, 102, 81, 73, 28.31500 + 79, 69, 69, 71, 71, 71, 64, 60, 41, 76, 73, 59, 60, 56, 48, 52, 28.31501 + 45, 49, 49, 53, 33, 6, 67, 69, 64, 63, 60, 76, 57, 56, 48, 61, 28.31502 + 29, 22, 30, 17, 14, 13, 12, 13, 12, 10, 8, 2, 1, 45, 87, 80, 28.31503 + 80, 77, 87, 83, 85, 69, 69, 37, 1, 56, 73, 64, 56, 77, 76, 71, 28.31504 + 59, 61, 45, 40, 32, 20, 20, 13, 8, 5, 5, 6, 5, 4, 5, 0, 28.31505 + 1, 96, 96, 96, 89, 88, 84, 81, 80, 55, 56, 34, 80, 112, 106, 96, 28.31506 + 91, 92, 92, 84, 83, 84, 80, 75, 45, 55, 87, 93, 89, 79, 56, 76, 28.31507 + 72, 112, 193, 195, 153, 99, 126, 93, 51, 44, 37, 42, 38, 38, 41, 46, 28.31508 + 44, 76, 84, 128, 204, 221, 221, 222, 199, 127, 127, 134, 143, 150, 155, 150, 28.31509 + 136, 75, 24, 21, 20, 20, 20, 28, 30, 56, 87, 91, 92, 91, 89, 84, 28.31510 + 81, 87, 81, 52, 60, 100, 108, 87, 91, 96, 92, 93, 95, 84, 76, 48, 28.31511 + 72, 104, 110, 93, 89, 104, 107, 93, 95, 95, 76, 46, 56, 61, 53, 53, 28.31512 + 52, 61, 55, 46, 45, 36, 40, 24, 6, 114, 132, 139, 132, 124, 124, 128, 28.31513 + 130, 122, 123, 118, 118, 118, 85, 93, 97, 99, 99, 119, 118, 108, 85, 48, 28.31514 + 99, 130, 127, 130, 123, 124, 124, 127, 122, 120, 116, 80, 32, 100, 106, 110, 28.31515 + 112, 111, 111, 118, 110, 111, 96, 95, 41, 72, 80, 115, 112, 110, 108, 107, 28.31516 + 107, 100, 51, 0, 28, 79, 93, 83, 80, 92, 104, 96, 89, 103, 91, 41, 28.31517 + 64, 72, 81, 85, 97, 99, 95, 100, 99, 115, 103, 59, 36, 126, 127, 130, 28.31518 + 131, 123, 119, 123, 122, 116, 116, 110, 112, 81, 85, 93, 100, 99, 95, 118, 28.31519 + 118, 92, 108, 81, 16, 93, 96, 140, 128, 127, 130, 127, 126, 122, 120, 91, 28.31520 + 2, 72, 97, 84, 83, 87, 93, 95, 104, 100, 104, 63, 30, 56, 123, 123, 28.31521 + 111, 111, 119, 120, 107, 110, 115, 106, 67, 81, 100, 104, 89, 89, 100, 91, 28.31522 + 85, 97, 89, 81, 76, 132, 147, 143, 140, 136, 140, 140, 134, 135, 139, 132, 28.31523 + 79, 72, 112, 120, 123, 115, 93, 111, 112, 111, 77, 38, 115, 169, 166, 167, 28.31524 + 173, 167, 175, 169, 171, 143, 104, 37, 99, 99, 119, 99, 115, 100, 96, 103, 28.31525 + 97, 100, 104, 108, 33, 128, 151, 144, 120, 126, 136, 136, 136, 123, 116, 112, 28.31526 + 130, 138, 131, 134, 135, 130, 138, 135, 139, 130, 131, 130, 92, 99, 107, 108, 28.31527 + 118, 110, 116, 111, 135, 126, 126, 111, 4, 130, 153, 154, 157, 157, 161, 150, 28.31528 + 123, 130, 119, 25, 178, 179, 163, 162, 163, 154, 153, 154, 157, 155, 151, 140, 28.31529 + 120, 64, 108, 108, 126, 122, 128, 128, 130, 124, 123, 106, 68, 85, 140, 132, 28.31530 + 118, 116, 119, 116, 119, 118, 115, 112, 111, 10, 159, 158, 161, 153, 10, 10, 28.31531 + 12, 12, 12, 13, 14, 9, 4, 0, 14, 14, 13, 5, 13, 12, 9, 9, 28.31532 + 16, 13, 8, 1, 24, 56, 53, 49, 46, 29, 25, 22, 30, 26, 25, 17, 28.31533 + 28, 30, 29, 28, 26, 29, 29, 26, 26, 25, 25, 22, 25, 16, 10, 8, 28.31534 + 9, 14, 5, 2, 4, 4, 4, 16, 99, 63, 76, 36, 71, 68, 63, 36, 28.31535 + 65, 61, 56, 40, 69, 71, 51, 46, 42, 41, 36, 38, 38, 38, 29, 14, 28.31536 + 9, 34, 29, 30, 28, 26, 29, 28, 28, 25, 24, 21, 17, 13, 12, 13, 28.31537 + 10, 9, 8, 10, 6, 6, 5, 0, 18, 64, 69, 48, 53, 73, 67, 60, 28.31538 + 63, 61, 34, 16, 48, 64, 67, 61, 53, 52, 49, 46, 42, 44, 18, 10, 28.31539 + 6, 5, 10, 18, 24, 16, 8, 10, 10, 9, 1, 0, 85, 56, 69, 65, 28.31540 + 68, 72, 73, 79, 56, 51, 32, 72, 88, 95, 91, 85, 88, 84, 80, 77, 28.31541 + 81, 87, 77, 75, 75, 73, 52, 56, 72, 71, 63, 68, 77, 174, 202, 166, 28.31542 + 119, 116, 116, 81, 49, 37, 49, 48, 45, 42, 48, 72, 84, 123, 193, 218, 28.31543 + 221, 224, 220, 170, 126, 130, 136, 148, 151, 151, 142, 102, 32, 21, 20, 18, 28.31544 + 21, 22, 26, 30, 40, 73, 75, 71, 61, 75, 75, 65, 67, 73, 63, 57, 28.31545 + 89, 80, 81, 68, 68, 64, 63, 65, 67, 75, 41, 34, 33, 48, 41, 41, 28.31546 + 42, 49, 55, 72, 83, 59, 42, 44, 48, 48, 44, 42, 42, 42, 33, 33, 28.31547 + 34, 25, 30, 4, 18, 81, 95, 81, 84, 89, 103, 93, 97, 99, 99, 97, 28.31548 + 92, 103, 106, 107, 107, 112, 111, 112, 97, 84, 59, 85, 120, 122, 124, 111, 28.31549 + 110, 107, 106, 93, 102, 96, 73, 34, 59, 63, 57, 61, 63, 67, 68, 73, 28.31550 + 72, 73, 69, 42, 61, 33, 37, 38, 30, 26, 25, 30, 29, 28, 8, 8, 28.31551 + 14, 32, 13, 13, 26, 42, 22, 24, 40, 45, 52, 45, 17, 36, 41, 44, 28.31552 + 57, 79, 61, 76, 89, 87, 75, 0, 45, 76, 84, 84, 84, 89, 92, 84, 28.31553 + 85, 91, 84, 89, 83, 99, 91, 100, 95, 99, 77, 103, 88, 106, 77, 41, 28.31554 + 81, 89, 130, 124, 124, 123, 122, 112, 118, 118, 76, 37, 68, 48, 56, 37, 28.31555 + 38, 40, 53, 26, 24, 30, 49, 28, 34, 34, 44, 42, 48, 52, 57, 65, 28.31556 + 71, 91, 103, 103, 107, 108, 97, 99, 97, 96, 95, 92, 89, 89, 80, 71, 28.31557 + 134, 132, 131, 128, 111, 118, 124, 123, 112, 112, 99, 102, 100, 104, 115, 102, 28.31558 + 96, 91, 89, 85, 88, 64, 36, 111, 134, 158, 161, 153, 150, 150, 155, 147, 28.31559 + 122, 96, 48, 103, 93, 107, 103, 103, 95, 99, 97, 99, 93, 99, 120, 41, 28.31560 + 44, 48, 37, 34, 59, 73, 80, 85, 93, 115, 123, 116, 99, 122, 126, 122, 28.31561 + 123, 122, 127, 123, 130, 124, 119, 115, 135, 134, 127, 115, 131, 126, 126, 97, 28.31562 + 130, 130, 107, 4, 91, 128, 151, 107, 116, 130, 148, 127, 122, 115, 22, 128, 28.31563 + 174, 161, 153, 153, 153, 147, 140, 102, 93, 83, 72, 64, 72, 65, 76, 114, 28.31564 + 118, 112, 127, 124, 132, 119, 120, 93, 91, 111, 114, 110, 116, 114, 102, 84, 28.31565 + 128, 83, 75, 64, 38, 97, 100, 132, 134, 0, 0, 1, 1, 0, 0, 0, 28.31566 + 0, 0, 0, 0, 0, 0, 0, 0, 4, 1, 0, 4, 9, 2, 0, 42, 28.31567 + 12, 12, 10, 12, 20, 14, 9, 9, 18, 16, 9, 6, 5, 6, 5, 5, 28.31568 + 4, 6, 5, 5, 4, 5, 4, 5, 22, 38, 42, 41, 44, 73, 61, 76, 28.31569 + 59, 32, 4, 108, 68, 83, 63, 52, 48, 48, 46, 55, 56, 56, 37, 34, 28.31570 + 34, 34, 29, 26, 24, 18, 17, 14, 14, 9, 9, 9, 8, 6, 6, 5, 28.31571 + 5, 4, 4, 2, 2, 2, 1, 1, 5, 5, 1, 0, 1, 2, 0, 0, 28.31572 + 1, 2, 0, 16, 12, 12, 16, 14, 33, 59, 36, 42, 52, 32, 1, 44, 28.31573 + 14, 20, 16, 17, 13, 17, 13, 16, 9, 8, 9, 12, 24, 51, 44, 60, 28.31574 + 65, 71, 60, 72, 68, 42, 0, 97, 84, 84, 73, 68, 64, 64, 51, 61, 28.31575 + 52, 30, 59, 59, 64, 60, 60, 61, 64, 64, 64, 61, 68, 64, 63, 63, 28.31576 + 42, 33, 33, 34, 42, 73, 72, 77, 123, 190, 182, 123, 87, 157, 108, 85, 28.31577 + 85, 89, 91, 91, 89, 88, 111, 161, 204, 220, 222, 221, 221, 212, 140, 127, 28.31578 + 134, 147, 150, 147, 140, 111, 37, 22, 21, 18, 18, 24, 25, 14, 30, 41, 28.31579 + 37, 42, 46, 48, 48, 49, 51, 56, 65, 67, 60, 64, 52, 53, 59, 52, 28.31580 + 57, 64, 83, 77, 80, 48, 59, 106, 110, 99, 89, 69, 71, 69, 64, 41, 28.31581 + 34, 37, 6, 0, 26, 5, 4, 5, 17, 0, 4, 4, 0, 0, 25, 28, 28.31582 + 20, 17, 17, 24, 22, 20, 21, 25, 28, 28, 29, 33, 36, 41, 49, 52, 28.31583 + 57, 60, 67, 71, 80, 59, 64, 83, 80, 57, 59, 63, 60, 44, 44, 51, 28.31584 + 37, 25, 6, 21, 8, 33, 36, 18, 13, 28, 29, 17, 17, 26, 28, 76, 28.31585 + 92, 104, 108, 103, 116, 110, 112, 84, 79, 5, 21, 143, 157, 107, 104, 132, 28.31586 + 146, 92, 112, 114, 60, 29, 57, 136, 136, 87, 88, 92, 68, 68, 63, 79, 28.31587 + 46, 33, 9, 6, 5, 40, 10, 6, 10, 34, 22, 12, 20, 44, 37, 36, 28.31588 + 38, 52, 51, 46, 83, 72, 60, 59, 100, 57, 17, 75, 34, 44, 36, 41, 28.31589 + 34, 34, 30, 33, 21, 18, 37, 26, 51, 68, 77, 81, 88, 107, 104, 102, 28.31590 + 103, 85, 22, 107, 142, 150, 122, 135, 102, 84, 77, 52, 52, 44, 44, 57, 28.31591 + 48, 65, 37, 42, 63, 45, 57, 64, 68, 69, 57, 102, 93, 120, 110, 104, 28.31592 + 95, 112, 110, 104, 100, 104, 102, 95, 68, 48, 46, 41, 42, 40, 42, 41, 28.31593 + 53, 37, 40, 56, 67, 60, 89, 95, 87, 64, 100, 108, 71, 41, 87, 83, 28.31594 + 79, 77, 77, 71, 76, 87, 96, 103, 106, 142, 12, 61, 170, 170, 115, 119, 28.31595 + 110, 108, 95, 79, 45, 28, 22, 20, 18, 17, 16, 14, 13, 12, 10, 9, 28.31596 + 40, 38, 6, 4, 49, 40, 2, 1, 40, 26, 0, 4, 36, 1, 2, 46, 28.31597 + 48, 65, 68, 69, 72, 79, 84, 124, 118, 24, 128, 166, 115, 106, 102, 99, 28.31598 + 99, 107, 104, 99, 119, 111, 104, 81, 95, 106, 95, 65, 60, 56, 60, 73, 28.31599 + 89, 83, 81, 72, 72, 69, 73, 76, 71, 60, 57, 57, 51, 36, 34, 32, 28.31600 + 29, 25, 24, 18, 33, 40, 40, 24, 38, 21, 32, 26, 1, 0, 14, 49, 28.31601 + 48, 32, 32, 34, 25, 18, 10, 5, 0, 1, 6, 33, 36, 28, 36, 42, 28.31602 + 63, 52, 42, 36, 24, 5, 48, 65, 67, 57, 42, 60, 46, 59, 55, 51, 28.31603 + 17, 4, 60, 102, 95, 92, 91, 85, 85, 84, 92, 67, 30, 6, 108, 68, 28.31604 + 73, 108, 100, 84, 67, 73, 53, 38, 20, 32, 38, 44, 45, 52, 51, 49, 28.31605 + 59, 63, 59, 38, 59, 55, 104, 106, 106, 107, 114, 108, 102, 107, 115, 102, 28.31606 + 87, 83, 103, 99, 93, 102, 100, 95, 84, 79, 95, 75, 17, 1, 63, 103, 28.31607 + 102, 79, 64, 48, 38, 34, 18, 13, 10, 1, 10, 45, 51, 56, 48, 59, 28.31608 + 61, 65, 63, 67, 42, 1, 53, 114, 126, 130, 126, 124, 108, 118, 107, 80, 28.31609 + 42, 0, 93, 84, 100, 96, 104, 96, 93, 81, 69, 52, 29, 12, 10, 10, 28.31610 + 10, 13, 13, 12, 16, 14, 14, 14, 20, 21, 24, 65, 71, 89, 87, 85, 28.31611 + 115, 108, 91, 81, 132, 190, 139, 95, 120, 134, 130, 143, 139, 127, 134, 147, 28.31612 + 158, 198, 216, 218, 222, 222, 220, 220, 159, 128, 132, 144, 146, 142, 134, 96, 28.31613 + 36, 22, 21, 18, 25, 21, 18, 26, 41, 45, 56, 88, 103, 96, 79, 77, 28.31614 + 64, 60, 60, 51, 46, 44, 71, 104, 122, 116, 128, 100, 102, 112, 91, 84, 28.31615 + 45, 83, 130, 115, 97, 97, 112, 103, 106, 77, 73, 67, 9, 18, 144, 142, 28.31616 + 106, 97, 111, 111, 107, 99, 119, 97, 49, 13, 40, 96, 115, 108, 111, 112, 28.31617 + 120, 110, 111, 108, 102, 88, 107, 111, 119, 115, 111, 85, 67, 53, 37, 38, 28.31618 + 45, 34, 38, 71, 67, 81, 75, 85, 87, 96, 95, 88, 76, 10, 29, 85, 28.31619 + 96, 102, 96, 93, 96, 93, 97, 100, 93, 104, 89, 120, 136, 140, 136, 136, 28.31620 + 132, 119, 114, 85, 10, 131, 143, 130, 140, 132, 138, 131, 139, 135, 115, 72, 28.31621 + 22, 127, 147, 150, 135, 138, 144, 138, 108, 126, 128, 87, 73, 9, 24, 155, 28.31622 + 151, 102, 97, 148, 147, 112, 95, 118, 116, 65, 21, 67, 144, 140, 87, 88, 28.31623 + 84, 79, 71, 65, 57, 9, 24, 61, 68, 72, 69, 84, 89, 87, 92, 99, 28.31624 + 89, 0, 55, 153, 157, 154, 157, 158, 153, 150, 150, 118, 89, 21, 116, 153, 28.31625 + 144, 146, 153, 153, 153, 150, 134, 103, 87, 20, 56, 177, 170, 110, 106, 103, 28.31626 + 96, 84, 51, 26, 37, 22, 22, 21, 25, 21, 22, 20, 21, 18, 22, 21, 28.31627 + 22, 21, 30, 38, 103, 123, 128, 128, 114, 142, 130, 85, 40, 91, 154, 151, 28.31628 + 142, 92, 95, 44, 34, 34, 25, 29, 20, 61, 80, 150, 153, 153, 158, 154, 28.31629 + 162, 158, 158, 128, 139, 17, 139, 187, 182, 178, 187, 178, 178, 177, 177, 171, 28.31630 + 167, 136, 130, 161, 143, 140, 144, 157, 151, 153, 146, 139, 79, 0, 37, 136, 28.31631 + 181, 106, 135, 144, 171, 110, 147, 140, 52, 1, 135, 159, 154, 111, 154, 148, 28.31632 + 151, 88, 79, 114, 24, 134, 122, 143, 150, 159, 169, 167, 162, 165, 173, 169, 28.31633 + 140, 100, 87, 108, 139, 140, 136, 136, 136, 112, 88, 79, 85, 57, 69, 83, 28.31634 + 97, 102, 111, 112, 116, 124, 134, 135, 140, 139, 150, 157, 162, 166, 169, 83, 28.31635 + 59, 68, 60, 53, 55, 21, 28, 4, 0, 40, 34, 57, 51, 42, 46, 42, 28.31636 + 41, 36, 33, 6, 1, 51, 83, 84, 79, 76, 64, 80, 77, 67, 38, 28, 28.31637 + 6, 65, 63, 53, 44, 41, 63, 48, 45, 42, 49, 20, 2, 81, 99, 71, 28.31638 + 76, 85, 100, 77, 80, 59, 68, 33, 10, 116, 88, 65, 60, 45, 65, 77, 28.31639 + 97, 104, 92, 73, 88, 106, 93, 96, 103, 93, 95, 99, 89, 96, 80, 89, 28.31640 + 76, 71, 102, 88, 73, 83, 85, 75, 67, 64, 68, 84, 57, 72, 88, 104, 28.31641 + 108, 93, 93, 83, 76, 85, 84, 41, 0, 81, 97, 123, 85, 91, 67, 76, 28.31642 + 75, 68, 53, 32, 8, 69, 112, 108, 108, 100, 99, 64, 85, 88, 72, 48, 28.31643 + 1, 103, 127, 110, 96, 83, 106, 95, 87, 89, 77, 41, 0, 110, 80, 88, 28.31644 + 93, 89, 88, 89, 91, 79, 67, 29, 34, 110, 92, 84, 88, 103, 103, 85, 28.31645 + 84, 81, 79, 76, 72, 77, 72, 115, 122, 119, 106, 104, 106, 97, 71, 84, 28.31646 + 179, 157, 106, 84, 165, 173, 182, 195, 204, 208, 210, 214, 217, 221, 221, 216, 28.31647 + 220, 213, 163, 132, 138, 143, 138, 135, 107, 63, 33, 24, 21, 18, 25, 18, 28.31648 + 28, 36, 49, 42, 40, 79, 119, 134, 124, 123, 126, 134, 130, 134, 112, 102, 28.31649 + 104, 114, 127, 127, 115, 107, 115, 107, 104, 99, 88, 52, 79, 130, 124, 111, 28.31650 + 100, 99, 95, 107, 115, 84, 72, 0, 146, 150, 131, 134, 130, 131, 128, 111, 28.31651 + 108, 104, 102, 108, 12, 143, 139, 128, 130, 123, 128, 118, 119, 120, 123, 119, 28.31652 + 95, 76, 116, 123, 118, 114, 99, 100, 111, 116, 73, 40, 68, 126, 128, 134, 28.31653 + 120, 130, 128, 126, 116, 118, 107, 79, 6, 139, 135, 143, 138, 128, 126, 119, 28.31654 + 111, 115, 111, 93, 95, 138, 157, 154, 144, 144, 136, 138, 140, 114, 89, 5, 28.31655 + 148, 140, 140, 134, 130, 128, 127, 127, 132, 124, 76, 25, 140, 154, 138, 123, 28.31656 + 131, 126, 142, 139, 128, 116, 89, 83, 2, 158, 159, 153, 95, 110, 143, 140, 28.31657 + 115, 115, 118, 120, 75, 24, 139, 151, 138, 136, 139, 134, 147, 104, 84, 96, 28.31658 + 8, 72, 146, 159, 162, 154, 151, 146, 144, 147, 143, 106, 28, 139, 162, 159, 28.31659 + 154, 146, 140, 147, 150, 147, 138, 99, 18, 132, 159, 132, 147, 140, 142, 143, 28.31660 + 148, 148, 134, 97, 16, 153, 182, 153, 148, 158, 154, 150, 110, 132, 128, 127, 28.31661 + 128, 140, 159, 143, 140, 144, 147, 147, 142, 147, 148, 127, 124, 134, 132, 118, 28.31662 + 126, 134, 131, 155, 150, 143, 96, 41, 108, 169, 155, 148, 153, 131, 143, 140, 28.31663 + 118, 112, 88, 69, 126, 161, 171, 178, 173, 173, 170, 171, 162, 158, 140, 122, 28.31664 + 30, 158, 183, 191, 181, 185, 179, 148, 143, 144, 134, 127, 163, 163, 159, 120, 28.31665 + 124, 158, 158, 123, 127, 128, 153, 91, 0, 135, 181, 167, 165, 163, 158, 163, 28.31666 + 161, 162, 161, 89, 2, 147, 159, 166, 169, 174, 169, 170, 162, 104, 122, 28, 28.31667 + 167, 142, 166, 171, 170, 166, 147, 161, 167, 162, 136, 136, 99, 79, 124, 138, 28.31668 + 132, 138, 134, 135, 134, 130, 119, 92, 64, 81, 126, 166, 173, 179, 171, 167, 28.31669 + 150, 150, 135, 147, 155, 127, 130, 140, 178, 154, 112, 92, 61, 75, 87, 65, 28.31670 + 85, 22, 0, 0, 42, 49, 56, 51, 29, 32, 4, 24, 22, 26, 8, 2, 28.31671 + 69, 89, 73, 65, 63, 65, 71, 81, 75, 41, 25, 6, 67, 71, 83, 96, 28.31672 + 75, 87, 73, 71, 52, 49, 22, 2, 69, 96, 69, 69, 55, 59, 63, 56, 28.31673 + 44, 46, 29, 9, 115, 85, 80, 48, 59, 59, 61, 64, 45, 69, 81, 76, 28.31674 + 55, 53, 64, 64, 65, 46, 42, 67, 49, 52, 81, 57, 103, 87, 93, 88, 28.31675 + 75, 83, 80, 83, 79, 67, 71, 53, 96, 119, 102, 84, 95, 91, 89, 95, 28.31676 + 89, 83, 45, 1, 85, 100, 127, 83, 72, 88, 63, 80, 64, 56, 36, 21, 28.31677 + 88, 107, 95, 102, 102, 91, 87, 91, 88, 84, 48, 0, 100, 128, 75, 84, 28.31678 + 91, 91, 83, 107, 84, 89, 45, 0, 104, 76, 85, 84, 81, 84, 83, 85, 28.31679 + 83, 63, 30, 102, 103, 99, 85, 73, 92, 99, 88, 80, 93, 81, 93, 76, 28.31680 + 52, 112, 126, 112, 92, 85, 91, 106, 107, 68, 65, 138, 166, 114, 79, 118, 28.31681 + 123, 142, 162, 187, 199, 208, 210, 209, 210, 217, 201, 178, 155, 127, 138, 135, 28.31682 + 120, 99, 63, 34, 24, 25, 22, 21, 22, 20, 25, 34, 45, 42, 48, 46, 28.31683 + 79, 120, 132, 132, 131, 126, 122, 126, 128, 107, 104, 80, 128, 126, 106, 108, 28.31684 + 118, 119, 116, 108, 81, 102, 49, 76, 119, 115, 108, 108, 106, 99, 104, 107, 28.31685 + 87, 72, 14, 150, 148, 144, 126, 119, 119, 116, 106, 106, 106, 118, 108, 12, 28.31686 + 142, 127, 122, 123, 132, 127, 124, 132, 122, 120, 103, 60, 104, 151, 132, 122, 28.31687 + 119, 114, 114, 123, 118, 79, 55, 118, 124, 120, 116, 115, 123, 130, 115, 114, 28.31688 + 104, 99, 89, 25, 140, 124, 127, 131, 143, 136, 124, 119, 112, 102, 72, 123, 28.31689 + 159, 143, 135, 144, 135, 123, 115, 122, 97, 84, 0, 106, 139, 132, 122, 115, 28.31690 + 122, 131, 131, 142, 120, 77, 18, 127, 151, 131, 127, 107, 119, 123, 128, 115, 28.31691 + 92, 95, 84, 6, 150, 128, 147, 135, 138, 130, 127, 132, 128, 144, 124, 80, 28.31692 + 22, 146, 153, 135, 131, 128, 127, 127, 132, 92, 106, 10, 130, 158, 157, 151, 28.31693 + 138, 153, 151, 146, 131, 131, 99, 18, 143, 161, 148, 144, 140, 130, 128, 126, 28.31694 + 126, 120, 96, 16, 130, 153, 146, 148, 146, 132, 139, 138, 143, 142, 99, 22, 28.31695 + 143, 170, 171, 170, 162, 154, 132, 161, 127, 119, 108, 114, 147, 158, 167, 142, 28.31696 + 148, 153, 153, 147, 139, 146, 146, 127, 87, 154, 165, 155, 155, 144, 143, 143, 28.31697 + 138, 106, 38, 107, 167, 157, 154, 150, 144, 150, 143, 146, 118, 92, 73, 135, 28.31698 + 174, 169, 166, 165, 165, 166, 165, 169, 170, 124, 135, 24, 153, 178, 190, 187, 28.31699 + 185, 167, 167, 185, 182, 179, 175, 114, 104, 161, 165, 151, 147, 143, 144, 139, 28.31700 + 143, 144, 93, 32, 174, 177, 163, 167, 162, 167, 169, 167, 161, 161, 93, 0, 28.31701 + 143, 159, 163, 159, 157, 158, 154, 162, 120, 124, 30, 178, 153, 142, 167, 161, 28.31702 + 159, 159, 163, 151, 144, 150, 139, 75, 102, 135, 136, 134, 130, 128, 130, 128, 28.31703 + 132, 119, 84, 55, 116, 186, 191, 179, 178, 177, 153, 169, 161, 146, 147, 130, 28.31704 + 122, 183, 195, 206, 209, 30, 37, 79, 65, 24, 48, 81, 21, 0, 0, 36, 28.31705 + 65, 51, 20, 20, 29, 29, 17, 0, 22, 5, 2, 53, 93, 69, 76, 65, 28.31706 + 60, 59, 61, 81, 44, 28, 12, 38, 76, 75, 55, 67, 83, 79, 45, 45, 28.31707 + 49, 21, 2, 89, 91, 89, 67, 75, 77, 61, 75, 51, 67, 33, 2, 108, 28.31708 + 92, 79, 48, 40, 49, 67, 60, 63, 59, 53, 59, 49, 81, 57, 56, 69, 28.31709 + 63, 65, 64, 61, 49, 44, 32, 103, 89, 91, 84, 69, 72, 64, 61, 81, 28.31710 + 72, 63, 53, 114, 115, 85, 77, 73, 83, 88, 80, 79, 97, 41, 0, 89, 28.31711 + 107, 111, 67, 73, 87, 80, 96, 95, 77, 38, 6, 106, 106, 110, 92, 104, 28.31712 + 97, 88, 91, 87, 71, 49, 0, 95, 122, 73, 87, 81, 97, 100, 103, 88, 28.31713 + 72, 45, 0, 104, 85, 88, 93, 91, 81, 83, 81, 87, 68, 29, 102, 97, 28.31714 + 89, 93, 100, 96, 85, 89, 88, 81, 80, 69, 46, 68, 119, 118, 111, 87, 28.31715 + 91, 93, 83, 104, 71, 60, 120, 166, 115, 75, 87, 104, 116, 123, 131, 155, 28.31716 + 167, 177, 174, 170, 166, 146, 132, 132, 126, 107, 84, 52, 36, 24, 21, 20, 28.31717 + 20, 26, 17, 20, 34, 34, 41, 44, 52, 48, 42, 83, 136, 138, 135, 116, 28.31718 + 122, 111, 110, 99, 97, 68, 112, 134, 106, 110, 127, 111, 107, 103, 108, 87, 28.31719 + 100, 60, 63, 119, 116, 108, 120, 102, 111, 106, 106, 93, 71, 12, 100, 143, 28.31720 + 130, 134, 144, 127, 122, 118, 107, 104, 108, 69, 16, 102, 120, 126, 132, 126, 28.31721 + 124, 115, 118, 119, 103, 93, 61, 111, 147, 122, 119, 130, 138, 135, 123, 110, 28.31722 + 81, 41, 116, 132, 124, 118, 116, 112, 126, 120, 106, 102, 96, 88, 5, 119, 28.31723 + 119, 130, 116, 135, 144, 138, 119, 115, 93, 53, 120, 161, 143, 140, 142, 134, 28.31724 + 119, 119, 111, 104, 92, 2, 122, 144, 144, 114, 124, 128, 124, 136, 134, 131, 28.31725 + 81, 17, 131, 151, 128, 124, 120, 122, 116, 106, 115, 96, 89, 88, 5, 114, 28.31726 + 128, 106, 138, 139, 132, 132, 130, 130, 126, 122, 89, 21, 132, 146, 128, 127, 28.31727 + 138, 140, 138, 132, 112, 108, 2, 139, 161, 146, 146, 146, 138, 135, 131, 124, 28.31728 + 127, 99, 8, 138, 161, 148, 136, 143, 128, 126, 128, 126, 127, 99, 13, 128, 28.31729 + 154, 154, 146, 155, 154, 153, 142, 143, 118, 102, 20, 138, 169, 174, 169, 171, 28.31730 + 163, 173, 174, 169, 162, 106, 143, 169, 155, 142, 135, 142, 142, 140, 123, 127, 28.31731 + 134, 118, 77, 96, 170, 167, 142, 153, 153, 157, 136, 138, 114, 51, 107, 163, 28.31732 + 155, 150, 158, 157, 151, 150, 147, 124, 99, 72, 136, 177, 169, 163, 165, 170, 28.31733 + 170, 163, 162, 167, 123, 136, 9, 150, 175, 179, 186, 189, 166, 169, 177, 179, 28.31734 + 175, 171, 106, 140, 170, 159, 140, 151, 139, 144, 138, 140, 143, 95, 0, 127, 28.31735 + 171, 166, 165, 157, 163, 162, 167, 167, 155, 96, 0, 154, 159, 155, 163, 161, 28.31736 + 159, 154, 162, 158, 130, 32, 177, 140, 148, 170, 161, 167, 161, 155, 155, 147, 28.31737 + 148, 144, 71, 81, 136, 138, 131, 132, 134, 131, 126, 132, 124, 91, 55, 161, 28.31738 + 190, 177, 173, 174, 139, 162, 177, 169, 155, 154, 102, 127, 189, 206, 187, 163, 28.31739 + 72, 72, 83, 26, 40, 48, 68, 16, 0, 1, 33, 63, 52, 6, 16, 18, 28.31740 + 36, 1, 0, 29, 1, 1, 44, 83, 72, 65, 77, 85, 59, 56, 67, 46, 28.31741 + 29, 8, 77, 87, 75, 55, 61, 76, 77, 49, 46, 49, 22, 2, 76, 89, 28.31742 + 61, 73, 76, 65, 71, 64, 52, 52, 32, 4, 106, 81, 76, 45, 48, 48, 28.31743 + 71, 64, 63, 55, 45, 64, 73, 72, 77, 72, 48, 52, 63, 49, 53, 61, 28.31744 + 65, 28, 100, 100, 89, 69, 72, 63, 81, 61, 73, 69, 67, 57, 111, 112, 28.31745 + 68, 68, 73, 77, 63, 76, 77, 76, 42, 1, 89, 103, 119, 79, 88, 72, 28.31746 + 63, 64, 89, 55, 38, 0, 93, 97, 116, 96, 104, 92, 91, 88, 71, 80, 28.31747 + 49, 0, 107, 120, 83, 96, 93, 93, 84, 100, 95, 83, 45, 0, 96, 96, 28.31748 + 88, 88, 87, 83, 83, 81, 83, 65, 33, 65, 85, 104, 92, 80, 96, 85, 28.31749 + 84, 89, 84, 77, 68, 41, 96, 120, 115, 106, 97, 84, 89, 95, 108, 80, 28.31750 + 59, 111, 166, 127, 95, 67, 69, 69, 76, 95, 115, 119, 123, 127, 123, 122, 28.31751 + 119, 93, 71, 51, 37, 28, 25, 25, 21, 18, 21, 25, 18, 36, 40, 41, 28.31752 + 42, 48, 51, 52, 52, 44, 76, 130, 120, 110, 95, 108, 111, 110, 97, 79, 28.31753 + 68, 118, 127, 106, 119, 111, 112, 97, 96, 114, 99, 103, 65, 53, 110, 115, 28.31754 + 106, 104, 107, 103, 97, 100, 83, 73, 9, 103, 142, 139, 148, 131, 99, 97, 28.31755 + 108, 99, 114, 115, 73, 13, 110, 130, 124, 128, 114, 118, 118, 119, 106, 106, 28.31756 + 96, 57, 111, 151, 130, 116, 118, 112, 110, 127, 111, 80, 42, 100, 132, 124, 28.31757 + 128, 124, 114, 120, 108, 103, 104, 92, 87, 4, 110, 128, 130, 116, 130, 140, 28.31758 + 136, 115, 103, 93, 53, 122, 163, 131, 132, 123, 132, 119, 122, 106, 110, 88, 28.31759 + 5, 136, 143, 138, 115, 122, 130, 132, 127, 132, 126, 85, 12, 143, 153, 127, 28.31760 + 120, 120, 107, 119, 119, 100, 99, 96, 83, 2, 122, 155, 143, 140, 136, 132, 28.31761 + 127, 136, 130, 132, 122, 81, 13, 132, 148, 127, 130, 128, 128, 124, 131, 95, 28.31762 + 104, 2, 138, 158, 138, 147, 136, 131, 134, 124, 130, 106, 99, 22, 147, 159, 28.31763 + 144, 135, 127, 132, 123, 123, 115, 128, 97, 12, 128, 151, 154, 140, 139, 143, 28.31764 + 138, 138, 142, 124, 104, 13, 147, 177, 171, 179, 163, 169, 163, 167, 162, 158, 28.31765 + 75, 143, 161, 155, 148, 143, 138, 138, 135, 134, 135, 119, 128, 75, 148, 175, 28.31766 + 174, 140, 159, 148, 150, 135, 135, 120, 60, 107, 169, 159, 155, 157, 159, 148, 28.31767 + 148, 150, 144, 95, 51, 123, 173, 161, 155, 155, 158, 161, 158, 150, 170, 138, 28.31768 + 136, 12, 162, 179, 178, 186, 181, 171, 166, 166, 185, 173, 170, 95, 143, 173, 28.31769 + 154, 142, 146, 135, 132, 138, 134, 140, 99, 0, 132, 174, 163, 161, 161, 162, 28.31770 + 161, 153, 161, 146, 106, 0, 144, 157, 162, 162, 167, 163, 155, 158, 130, 131, 28.31771 + 40, 179, 146, 150, 171, 158, 171, 157, 155, 161, 150, 148, 134, 65, 104, 138, 28.31772 + 136, 124, 126, 120, 119, 119, 130, 114, 75, 89, 163, 189, 170, 169, 174, 150, 28.31773 + 147, 159, 144, 143, 144, 95, 161, 195, 197, 163, 163, 80, 83, 22, 30, 45, 28.31774 + 34, 60, 34, 2, 0, 37, 68, 53, 10, 8, 16, 29, 1, 0, 24, 2, 28.31775 + 1, 40, 89, 76, 71, 52, 68, 72, 57, 60, 61, 33, 10, 75, 76, 73, 28.31776 + 65, 44, 49, 60, 44, 46, 45, 21, 1, 76, 92, 65, 67, 67, 64, 77, 28.31777 + 68, 53, 56, 34, 5, 110, 93, 72, 44, 45, 48, 48, 53, 65, 60, 42, 28.31778 + 84, 85, 72, 71, 49, 49, 73, 83, 49, 71, 67, 71, 41, 111, 84, 69, 28.31779 + 64, 71, 60, 81, 59, 80, 67, 56, 60, 115, 103, 68, 76, 60, 73, 80, 28.31780 + 96, 75, 75, 46, 0, 85, 106, 119, 77, 77, 75, 65, 64, 99, 53, 41, 28.31781 + 5, 100, 112, 99, 87, 99, 81, 81, 88, 72, 83, 51, 1, 103, 126, 83, 28.31782 + 81, 91, 89, 93, 100, 93, 77, 46, 0, 99, 89, 89, 96, 83, 83, 85, 28.31783 + 79, 75, 65, 36, 67, 88, 93, 91, 89, 96, 85, 77, 81, 76, 83, 72, 28.31784 + 34, 97, 120, 118, 92, 100, 81, 92, 103, 93, 87, 56, 102, 163, 135, 106, 28.31785 + 87, 69, 59, 53, 53, 48, 48, 46, 48, 51, 45, 41, 37, 30, 30, 28, 28.31786 + 26, 22, 22, 21, 25, 14, 24, 41, 48, 55, 56, 55, 52, 51, 53, 55, 28.31787 + 44, 77, 135, 111, 115, 115, 111, 102, 122, 110, 96, 51, 112, 128, 106, 123, 28.31788 + 104, 95, 95, 93, 110, 102, 102, 69, 37, 111, 122, 124, 120, 119, 114, 107, 28.31789 + 99, 88, 73, 2, 103, 135, 124, 139, 99, 93, 106, 108, 100, 104, 110, 100, 28.31790 + 8, 142, 135, 114, 136, 118, 107, 106, 108, 106, 120, 100, 56, 118, 142, 126, 28.31791 + 124, 112, 112, 107, 120, 115, 83, 46, 99, 130, 142, 151, 120, 110, 104, 106, 28.31792 + 104, 108, 102, 83, 0, 153, 123, 124, 116, 128, 126, 136, 116, 104, 99, 51, 28.31793 + 122, 162, 143, 138, 120, 130, 118, 119, 103, 115, 97, 0, 146, 143, 144, 116, 28.31794 + 120, 120, 136, 136, 135, 131, 85, 16, 142, 155, 128, 120, 116, 107, 104, 122, 28.31795 + 97, 103, 97, 91, 4, 165, 163, 142, 147, 123, 132, 143, 124, 122, 134, 122, 28.31796 + 87, 10, 139, 148, 127, 127, 128, 158, 134, 136, 95, 106, 1, 139, 159, 139, 28.31797 + 144, 131, 136, 126, 124, 127, 132, 103, 30, 143, 158, 134, 143, 127, 126, 128, 28.31798 + 127, 120, 134, 100, 9, 131, 154, 147, 138, 139, 143, 155, 140, 138, 135, 106, 28.31799 + 10, 148, 182, 171, 173, 163, 159, 161, 162, 163, 151, 71, 146, 169, 148, 162, 28.31800 + 153, 143, 139, 135, 127, 130, 122, 128, 65, 150, 170, 166, 143, 162, 159, 134, 28.31801 + 140, 118, 106, 56, 110, 170, 151, 154, 155, 143, 142, 139, 144, 148, 97, 61, 28.31802 + 128, 173, 169, 158, 151, 151, 144, 153, 155, 167, 146, 132, 12, 166, 186, 185, 28.31803 + 183, 166, 165, 166, 166, 182, 166, 170, 87, 147, 171, 155, 136, 144, 136, 132, 28.31804 + 139, 142, 143, 97, 0, 148, 171, 166, 163, 159, 165, 162, 165, 155, 147, 100, 28.31805 + 1, 153, 158, 158, 154, 157, 169, 158, 161, 138, 130, 48, 170, 153, 153, 140, 28.31806 + 134, 175, 155, 151, 154, 158, 138, 135, 61, 104, 122, 134, 132, 140, 135, 135, 28.31807 + 126, 128, 108, 68, 108, 182, 186, 169, 170, 167, 150, 165, 165, 146, 146, 142, 28.31808 + 92, 159, 195, 173, 175, 174, 81, 65, 20, 34, 42, 29, 60, 14, 0, 0, 28.31809 + 24, 60, 44, 12, 20, 8, 37, 1, 17, 34, 4, 0, 20, 71, 83, 65, 28.31810 + 71, 65, 51, 46, 60, 67, 26, 12, 52, 81, 55, 67, 72, 52, 65, 48, 28.31811 + 45, 59, 24, 2, 76, 89, 52, 55, 85, 64, 59, 49, 44, 46, 34, 2, 28.31812 + 107, 92, 87, 46, 49, 45, 49, 48, 63, 59, 42, 89, 80, 73, 52, 48, 28.31813 + 60, 99, 49, 52, 52, 65, 84, 38, 99, 77, 75, 72, 68, 63, 88, 59, 28.31814 + 72, 64, 37, 65, 116, 116, 69, 103, 67, 67, 81, 102, 72, 71, 52, 0, 28.31815 + 84, 99, 107, 76, 85, 72, 67, 61, 95, 57, 42, 13, 96, 112, 92, 92, 28.31816 + 83, 79, 104, 88, 79, 75, 53, 0, 100, 127, 73, 93, 91, 85, 88, 107, 28.31817 + 84, 76, 46, 0, 95, 88, 92, 87, 75, 80, 81, 80, 85, 63, 37, 65, 28.31818 + 103, 75, 88, 91, 100, 87, 96, 93, 65, 88, 63, 30, 108, 127, 115, 102, 28.31819 + 99, 80, 83, 103, 89, 88, 56, 95, 157, 140, 116, 106, 93, 84, 61, 52, 28.31820 + 48, 44, 41, 40, 37, 36, 34, 32, 30, 28, 26, 26, 25, 26, 26, 12, 28.31821 + 22, 42, 57, 61, 57, 64, 65, 65, 68, 57, 59, 52, 72, 144, 116, 104, 28.31822 + 118, 112, 111, 107, 107, 102, 42, 114, 120, 106, 106, 106, 95, 111, 102, 100, 28.31823 + 100, 106, 72, 32, 96, 119, 126, 108, 104, 100, 103, 99, 89, 75, 10, 115, 28.31824 + 134, 127, 134, 95, 96, 115, 99, 100, 112, 116, 106, 8, 138, 128, 116, 135, 28.31825 + 111, 110, 111, 102, 100, 119, 97, 45, 112, 155, 123, 115, 116, 116, 111, 123, 28.31826 + 114, 84, 52, 91, 138, 140, 122, 111, 120, 104, 119, 116, 114, 102, 92, 17, 28.31827 + 147, 115, 131, 112, 126, 110, 146, 114, 106, 96, 51, 123, 161, 135, 140, 124, 28.31828 + 124, 127, 107, 104, 103, 93, 0, 126, 142, 143, 115, 128, 116, 124, 127, 138, 28.31829 + 118, 87, 10, 139, 155, 131, 126, 118, 116, 115, 119, 103, 95, 103, 89, 2, 28.31830 + 158, 170, 139, 142, 124, 135, 131, 135, 120, 124, 119, 88, 14, 134, 155, 130, 28.31831 + 131, 146, 147, 136, 128, 97, 106, 10, 143, 159, 131, 138, 126, 126, 127, 132, 28.31832 + 127, 131, 106, 13, 143, 159, 143, 144, 138, 142, 139, 140, 122, 135, 104, 6, 28.31833 + 136, 148, 143, 143, 162, 139, 135, 138, 142, 143, 111, 18, 179, 179, 173, 167, 28.31834 + 162, 171, 161, 163, 162, 158, 77, 151, 159, 161, 153, 159, 148, 138, 138, 127, 28.31835 + 128, 122, 123, 59, 157, 175, 163, 140, 153, 147, 136, 134, 139, 111, 60, 112, 28.31836 + 173, 150, 147, 143, 139, 136, 138, 143, 143, 100, 89, 126, 173, 173, 157, 150, 28.31837 + 139, 161, 151, 144, 165, 142, 135, 10, 162, 185, 182, 181, 169, 165, 163, 167, 28.31838 + 171, 167, 166, 83, 154, 175, 150, 138, 135, 131, 130, 138, 128, 150, 102, 22, 28.31839 + 170, 175, 163, 162, 165, 162, 157, 163, 155, 148, 108, 0, 161, 163, 158, 159, 28.31840 + 158, 157, 159, 161, 132, 138, 55, 155, 157, 147, 166, 158, 174, 153, 153, 162, 28.31841 + 159, 143, 128, 46, 110, 128, 122, 126, 124, 131, 130, 120, 130, 97, 65, 114, 28.31842 + 191, 178, 167, 169, 163, 165, 167, 185, 158, 155, 142, 83, 169, 194, 171, 179, 28.31843 + 181, 87, 26, 16, 40, 30, 25, 81, 12, 0, 0, 26, 42, 55, 14, 38, 28.31844 + 12, 28, 1, 5, 21, 6, 2, 28, 61, 83, 80, 77, 48, 81, 59, 56, 28.31845 + 73, 28, 12, 29, 81, 79, 55, 55, 56, 41, 56, 51, 46, 25, 1, 87, 28.31846 + 99, 55, 55, 52, 64, 69, 45, 45, 49, 34, 1, 107, 93, 83, 46, 42, 28.31847 + 44, 69, 51, 51, 55, 38, 92, 65, 55, 48, 57, 92, 55, 52, 59, 65, 28.31848 + 53, 65, 21, 102, 83, 65, 68, 59, 61, 91, 56, 71, 61, 44, 80, 118, 28.31849 + 102, 73, 100, 72, 63, 73, 106, 69, 67, 51, 0, 83, 87, 118, 75, 73, 28.31850 + 63, 68, 63, 110, 69, 52, 5, 99, 115, 85, 85, 77, 77, 103, 83, 77, 28.31851 + 69, 56, 0, 88, 126, 85, 81, 83, 84, 81, 106, 77, 76, 45, 0, 103, 28.31852 + 77, 85, 77, 75, 75, 80, 77, 79, 65, 38, 32, 67, 112, 89, 83, 68, 28.31853 + 81, 69, 71, 69, 91, 67, 28, 120, 123, 120, 89, 107, 83, 81, 102, 83, 28.31854 + 85, 60, 83, 144, 138, 140, 108, 103, 92, 80, 67, 63, 52, 48, 42, 38, 28.31855 + 38, 36, 38, 36, 40, 36, 36, 34, 30, 40, 10, 40, 61, 63, 61, 79, 28.31856 + 76, 83, 88, 87, 60, 59, 44, 71, 150, 115, 126, 92, 118, 126, 93, 104, 28.31857 + 99, 44, 107, 120, 107, 110, 99, 95, 119, 102, 103, 99, 110, 76, 36, 100, 28.31858 + 118, 119, 108, 100, 102, 103, 102, 88, 75, 8, 118, 131, 124, 146, 93, 96, 28.31859 + 106, 96, 100, 102, 107, 73, 8, 102, 124, 108, 143, 115, 114, 110, 103, 104, 28.31860 + 122, 99, 40, 111, 155, 118, 115, 118, 111, 119, 110, 108, 87, 49, 103, 136, 28.31861 + 144, 111, 111, 104, 115, 112, 106, 103, 99, 91, 2, 131, 119, 126, 111, 131, 28.31862 + 108, 134, 114, 104, 93, 32, 118, 161, 139, 143, 124, 122, 114, 112, 108, 107, 28.31863 + 92, 0, 131, 135, 154, 112, 119, 118, 118, 126, 140, 123, 88, 8, 142, 159, 28.31864 + 132, 135, 114, 122, 112, 127, 104, 93, 100, 92, 0, 130, 139, 116, 151, 124, 28.31865 + 134, 124, 134, 120, 126, 118, 88, 12, 139, 159, 130, 126, 146, 132, 132, 130, 28.31866 + 114, 110, 0, 142, 154, 139, 124, 123, 126, 122, 144, 128, 139, 110, 5, 130, 28.31867 + 158, 153, 135, 139, 135, 132, 130, 119, 139, 107, 6, 134, 150, 140, 157, 165, 28.31868 + 150, 135, 138, 139, 131, 112, 13, 161, 174, 178, 163, 161, 174, 159, 159, 158, 28.31869 + 159, 71, 158, 169, 147, 155, 153, 147, 131, 151, 128, 127, 131, 122, 53, 159, 28.31870 + 171, 142, 162, 134, 136, 143, 138, 139, 122, 76, 84, 167, 148, 143, 142, 132, 28.31871 + 143, 126, 143, 146, 108, 68, 122, 169, 177, 155, 142, 138, 165, 151, 143, 171, 28.31872 + 135, 139, 6, 166, 186, 178, 165, 163, 161, 169, 181, 171, 161, 170, 67, 157, 28.31873 + 170, 161, 136, 135, 126, 132, 139, 138, 139, 107, 0, 136, 171, 155, 155, 155, 28.31874 + 161, 157, 165, 147, 165, 107, 0, 153, 161, 158, 155, 151, 159, 158, 157, 153, 28.31875 + 148, 60, 102, 182, 147, 153, 154, 169, 153, 150, 161, 166, 143, 123, 36, 111, 28.31876 + 126, 123, 123, 122, 124, 122, 119, 131, 96, 59, 123, 183, 170, 163, 169, 155, 28.31877 + 167, 154, 181, 167, 165, 142, 71, 170, 197, 173, 182, 167, 87, 21, 24, 29, 28.31878 + 33, 24, 83, 12, 0, 0, 16, 33, 63, 8, 48, 8, 22, 0, 12, 5, 28.31879 + 10, 1, 10, 51, 89, 85, 89, 44, 77, 95, 38, 81, 25, 13, 12, 95, 28.31880 + 85, 42, 41, 44, 60, 60, 44, 44, 25, 1, 91, 102, 57, 46, 51, 51, 28.31881 + 46, 46, 45, 49, 36, 1, 107, 95, 93, 46, 45, 46, 51, 52, 49, 48, 28.31882 + 33, 97, 59, 51, 46, 93, 69, 48, 53, 56, 67, 57, 52, 18, 88, 85, 28.31883 + 63, 57, 57, 61, 102, 55, 67, 60, 41, 91, 122, 108, 69, 103, 59, 68, 28.31884 + 73, 108, 68, 68, 55, 0, 75, 83, 118, 63, 77, 63, 72, 63, 131, 57, 28.31885 + 49, 0, 110, 115, 81, 83, 75, 75, 111, 79, 73, 71, 55, 0, 80, 124, 28.31886 + 80, 81, 77, 75, 83, 118, 81, 81, 48, 0, 91, 83, 81, 73, 72, 83, 28.31887 + 76, 77, 72, 60, 41, 38, 67, 115, 115, 69, 83, 75, 64, 69, 65, 107, 28.31888 + 64, 24, 116, 127, 131, 92, 114, 112, 79, 95, 84, 77, 59, 77, 131, 140, 28.31889 + 131, 128, 107, 97, 89, 83, 75, 65, 52, 52, 51, 48, 46, 46, 34, 37, 28.31890 + 36, 33, 30, 30, 45, 8, 42, 65, 55, 77, 71, 71, 89, 107, 104, 81, 28.31891 + 59, 53, 63, 153, 110, 131, 93, 124, 108, 97, 102, 87, 37, 110, 116, 104, 28.31892 + 108, 99, 96, 128, 97, 104, 96, 123, 83, 40, 102, 112, 100, 102, 103, 103, 28.31893 + 97, 104, 89, 72, 1, 120, 120, 120, 158, 93, 95, 100, 95, 102, 100, 112, 28.31894 + 84, 4, 110, 128, 110, 143, 112, 114, 106, 104, 99, 130, 92, 33, 114, 165, 28.31895 + 115, 116, 115, 108, 106, 107, 106, 87, 55, 91, 139, 118, 111, 108, 108, 107, 28.31896 + 110, 114, 107, 96, 89, 2, 144, 119, 122, 110, 140, 107, 146, 108, 100, 87, 28.31897 + 30, 115, 161, 130, 148, 118, 118, 119, 108, 100, 112, 97, 1, 148, 135, 146, 28.31898 + 111, 122, 139, 140, 126, 147, 127, 92, 5, 155, 166, 135, 135, 112, 116, 115, 28.31899 + 138, 116, 91, 104, 92, 0, 134, 158, 138, 151, 124, 130, 127, 142, 116, 130, 28.31900 + 119, 93, 6, 143, 154, 130, 128, 150, 128, 136, 128, 103, 110, 0, 146, 163, 28.31901 + 136, 123, 128, 114, 120, 150, 130, 111, 107, 4, 131, 157, 161, 135, 134, 131, 28.31902 + 127, 114, 118, 150, 108, 5, 132, 146, 142, 157, 173, 136, 135, 138, 140, 146, 28.31903 + 119, 8, 166, 182, 182, 163, 155, 178, 155, 155, 155, 155, 44, 165, 167, 162, 28.31904 + 147, 163, 147, 134, 143, 124, 127, 120, 126, 38, 167, 171, 143, 169, 131, 142, 28.31905 + 139, 138, 138, 122, 84, 71, 169, 148, 143, 132, 154, 143, 128, 143, 139, 107, 28.31906 + 72, 96, 144, 182, 154, 144, 134, 159, 147, 138, 165, 144, 132, 6, 169, 189, 28.31907 + 179, 161, 161, 161, 166, 181, 169, 163, 169, 52, 162, 170, 162, 134, 130, 123, 28.31908 + 131, 131, 131, 135, 114, 0, 131, 171, 146, 147, 146, 155, 157, 171, 147, 150, 28.31909 + 115, 0, 150, 159, 161, 155, 151, 153, 154, 161, 157, 135, 104, 68, 182, 162, 28.31910 + 151, 159, 167, 155, 147, 161, 151, 153, 118, 29, 102, 127, 128, 140, 116, 124, 28.31911 + 116, 119, 131, 89, 48, 127, 186, 165, 163, 170, 153, 170, 162, 175, 154, 157, 28.31912 + 146, 56, 182, 194, 167, 167, 166 };
29.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 29.2 +++ b/PTdecode/CImg-1.3.0/examples/img/lena.pgm Mon Aug 03 14:09:20 2009 +0100 29.3 @@ -0,0 +1,6 @@ 29.4 +P5 29.5 +# CREATOR: XV Version 3.10a Rev: 12/29/94 (PNG patch 1.2) 29.6 +# CREATOR: XV Version 3.10 Rev: 12/16/94 29.7 +256 256 29.8 +255 29.9 +þþþþþþþþ¢¥›œžžž››œ ¢©©®±®©«¢“›rVVLbbbb`leblgeieiibbiulwiu{ww}u……}‡ƒ}……}}……{}ƒƒ}ƒƒ‡…‰…………‡ƒ…ƒ…ƒƒ‡…}……ƒƒ}ƒ‰…ƒƒy…}}…{ƒ}y{{wyrwunrb`nw‡‹“œ›¤§©ž•œž—™œžœ¢œœ™›œœ››™œœœœ¢œž¤ ž¢ÈÕÛÛàÞáÚÉžg`gbrww{uyy{y{u{yw{y{}y{r}{{y}unpuw‡«®ž¤¤¥¥§¢ž¢¢¥›œžžž››œ ¢©©®±®©«¢“›rVVLbbbb`leblgeieiibbiulwiu{ww}u……}‡ƒ}……}}……{}ƒƒ}ƒƒ‡…‰…………‡ƒ…ƒ…ƒƒ‡…}……ƒƒ}ƒ‰…ƒƒy…}}…{ƒ}y{{wyrwunrb`nw‡‹“œ›¤§©ž•œž—™œžœ¢œœ™›œœ››™œœœœ¢œž¤ ž¢ÈÕÛÛàÞáÚÉžg`gbrww{uyy{y{u{yw{y{}y{r}{{y}unpuw‡«®ž¤¤¥¥§¢ž¢¢¥›œžžž››œ ¢©©®±®©«¢“›rVVLbbbb`leblgeieiibbiulwiu{ww}u……}‡ƒ}……}}……{}ƒƒ}ƒƒ‡…‰…………‡ƒ…ƒ…ƒƒ‡…}……ƒƒ}ƒ‰…ƒƒy…}}…{ƒ}y{{wyrwunrb`nw‡‹“œ›¤§©ž•œž—™œžœ¢œœ™›œœ››™œœœœ¢œž¤ ž¢ÈÕÛÛàÞáÚÉžg`gbrww{uyy{y{u{yw{y{}y{r}{{y}unpuw‡«®ž¢§¢ ¢œœž›œ œž›—œ¢œ §¬¬¬®°«§ •‡rbVLVQVVbn^ege[bg[^e^pbgwlpry{rw}‡w{}ƒy}}ƒ‡……ƒ‰}ƒ}……ƒ‡ƒ‰…ƒƒ{…‡}}ƒ}ƒƒƒƒ}}}y{ƒ}{{}}ƒƒy}}yw{yupnib`pw}…“‘ž¤¢§ œ›™››ž¢œ¢žœœœ™™žž ›™œœž žž›œµÏØÛÞàãÞÕ»…g`lprwuuyyywu}{{}y}{r}}y}{uw{{}up}}{V1œ ¢ž¥ ¤œœ¥ œ¢™™ ž›¤«°±®®±«§ ‘‡ugVOLQV[b``b^i`ggg^re`iigurur}yy}ryƒƒ{ƒ}ƒ{ƒƒƒ…‡…ƒ{}……‰yw‰ƒ{}ƒƒ}{ƒ………}wy…}w{}}{{}{wyynnil`gnuƒ‹•œž§ žž›™œž›œžœž¢› ™œ››žžžžž™žž ››¢ÁÒÛÛÞÞáÛΧpeippr}uur}uwu{uuw{}yywyyw}}yyy}ƒ}{}{V4 ž ž› ž¢ œ›¢ ›œœ™žž¤«®«°±«¥¥ ƒlVLOVgV[b^^^Y^l[``^egninwuywwyyuw…{y{ƒ}ƒ…y{}…{……‰ƒ}{ƒ}{}ƒƒ}…‡}ƒ}y{ƒ{}…}{…}ƒ}}{}ƒ}}{}}{y}{}}ƒ}}}{ulpppnll`lw}‰—œ¢¥§žžœ™žœ¤¢ žž œœœœœ ž›™œ›œœž™œ —™®ÉÔÛÝÞàà×À•g`glrryrr{yyryuyuwy{wryu{}y{{wy}ƒƒnT. &ž ž ¤ œœž¥žž™››™ž§¤«®®®©¥¬¬¢‹‡ye^GL[JV[g^`bggb^b[b^bneilrpwyyuywy{‰}}}}}ƒy…{‡}}ƒ}ƒ‡{{}}…}……{y}}}}…ƒ‰}}ƒ}}}}y}}…}ww}w}…}wyuwrlnnee`iuƒ…‘—›§¢¢¢žœœ ¢¢¥¢¢ž œžžœžœž›œ›››žž §•››½ÑØÛÞÞààѰubeinunyuw{wyr}puwƒywrwu}u{}yyww…}{Y.&#& ¢œ¢œ—œœœœ™ž›™œœ¤©«®¬¬¬®«©¢ ƒwi[YOVV[^``b`i`e[ei`^bigllppww{wu{w{yƒ…}}}}{{}}ƒ}………{}‡…ƒƒy‡}ƒƒ…}ƒ{ƒ}{……‰}‡}y‡{y{y{w}ƒ}yyrwywrunlbi`ir{‹“—œ ¤¥¤¤ ¢¢¢©¥§¤ ž ›œ¢ —›œ™™™™œ›œ› ›•§ÉÔÚÝáàáÚÈ›bgeinunryyp{uyun{}ry}wy}ww}{}lT#&)&.#œœžžœ› œ™›ž›œ——§¤§°©©¬©©«©ž ‰}b[QOTQ``Q`liiV[bl[^[belnllupyryw}}{{ƒƒ}{}{}}…ƒ}}ƒ‰}{}{}yƒƒ}ƒ}……{yƒ{…‰ƒƒ}}{}{}r}{}{{{}{nwppn}llg^pu‡•›žœ «¢ ¤¥¥¢¢¢¥ž ¥¢¢ž™™››ž—ž•œ——›—ž—¸Î×ÝÞááàÕ½}g[pgypluwyyrrwuwu}yw{{ƒ}……lG &#ž¢ž› ›¢¥¢¤œœ›œ¤¢©«®§¬««¥¬¥¤™‹ƒyeTYYQVeY[[Yi`^eb^Yb^gepnlpnuyw{r}{}y}}w{}}{ƒ}{ƒ‡{}…ƒ}{‰}}}‡}‹}}{‡‡{}yw}ƒ……ƒƒ}ƒ…{y}}}{yw}{yƒuyy{pplrll^`iw}‹›œ¢¢«¢¢¥¢ §¤¥§§¢ ž¤¤›ž›œ¢›œ›ž™›ž™›—“œÁÒÚààáàṲ̂gblipllyuw}uƒwyy‹{u}ƒ{…ƒ‡}gO)#& œœœ ¢žœ™¢›œ ¢¥«©«°§¥©¤¥žœ‘ƒb`LLVY[bbg`g``b[e[`Yeiliynnryyuw{{}}wƒ}ƒƒ}{…{yƒ}y}}}}‡}ƒ}}{}‹ƒ…y}{{ƒ…ƒƒ}}…y{}yƒw}{}}ww{{{}{}{wywrppgegYir‰““›ž §¤¤¢¢¢©¥«¤¤¤œ¢¢¢©™ ž ›œ™›œž›—›› “°ÌÕÝÞáãà×À^pgrlprpwwyywppyy}}}…ƒiG)..1 ž›žœ™ž ¢ž ž•œž¤¬«©¤©¬«¤¢¢ —›‡wYTTVTVYV‰[bY[iYbeb^`lugrn{puny{wyu{}ƒ{ƒƒ}}{}{ƒ}}}…ƒ}y}}…{}}}{}{}}}}{yy}{}ƒƒ…‡}ywwwyw}}{y}wu}{wuuyuwllgue`eg}‡‘™›ž¢ ¥¢¤¥ž¤¤¥¢§§§¢™ œœœ™œ—›™™™››™›™“™¾ÑØÝààáÞÒ¬lbglr{yruny}yyu{r‡…ƒ}ƒ…ƒp7#) ) &ž ™¢¢œž ¢› ¢™ ¤§«§®§©©©œ ¢ ›•‰yl^OQTYO``ieb^^b^^e^`bbibiurryrn{y}w{‹w}}y}}{y}…}}…{}{}…ƒ}w{y{yyu{{u{{{}{w{ƒ}…}…}ƒ}……}w}}ƒ}}y{uyy{}uyy{wu}uwpriliegnw{ƒ•— ž¤§§¤«¤œ¢¤¢ ¤¢žž¤¢›¢ž—•œ™™™œ™™——“‘¬ÌÕÛàáááÚÉžbbipw{r{pwywwwuuy}{}}‡‰l<O #&#+)›™›œ œ¢¢ œ ›œ¤¤¥§©¬«¥¤¥¢¤¤¤••‰reQG<GQV[b`ee`b^`[e[begeniryryuwu{y}y}u}}u}}}}{wyyuy}w}‡‡‡}y}{www{u{{}}ryy{{r}uyyƒ{}}}…}}}y}}{‡y{w}y}}yy{{yu}nele`belu}‰›žž¤¢¢¤¤ž¢ ž¢¤¢¤¢¢ ž—›ž™™›—›ž›››œ™——‘“»ÔÚÞàãäáÕ½}eilpr}y}r{yuuw{u{}…‡lG ))+ ž¥ žœ ž¢¢ §§¬¬¬©©¢ ¢¢ ¤ ›“‰uiTLJLVT[Y^eb^ebeYb[`eeinnn{wpu}y{}wry…}{{{{}ƒuƒ}y{{}{}y}yƒ‹‰{{wuwwruwu{}{w{ywr{w{}{{}ƒ}}w}y{uyyy{wyyw}}y{uy{ruwrngbgnu…œœ¢¢«¥¥¢¢ ¤ž¤œ§žžžœœ œ œž›› ›™››œ™•™“‘©ËÕÞÞàããÞ΢`inlprwr{yuyyww{yy}ƒ‡…l7# .+ž ¢žž ¢§¢ ¥¥««¬«©©©¢¢ ž¥¥ž‡nVVLLQ[V^e`n[b``^`^^[begnnpwyw}{u}y{{}y{{}}}{{}y}}}yy}w{u{ƒ{}}{wurpupyw{}{}{{yyy}…}ƒƒ{y}{}}}{p{u{y}w{ƒuwrnuplnieepyƒ…“™™ ¢§¤¤¢œ¤œ¥ ¤žž ž›œ¢œ™›ž¥™ —™—›———•¹ÌØÝÞãããÚŃ[rpwprn{pnuywyr…ƒn7 # & ).žž¢œž ž¢¥ž¤¬°¬«®«®§ žž¢¢ ž›‹e^OJT[T^[^igiil[^`V^`bgrirnwurrpuyyu{}}wyy{y}{}}}}w}{yƒy{ƒ}u{ruwyuy{wrwyyuywy}{{y}ƒ}ww{{{y}p{ww{y{yyw}rpuppieebe`rƒ…‘“™ž ¢¤¤¥¤¢¤ ¤¢ ¥ ¢ žœœ ž ž žœžžœž™“‘™¾Ñ×ÞáäæãÕÁƒe^lryrur}y}u{ƒ‡uJ#1 )# #.¤¤ ž¤¥¢¢¤¢¥©«§«««©®¤¤¢ ¤¢¤›“ugTBVYQYT`^b`g[``^^`^^igbnilwww{p{{}{{}}y{ywyyyw{w}}}w{}}…{wuwrw{unwyyywwup{uyuy{ƒ}}ƒƒ{ƒuy}y{}}u{w}uw}y{{{wuwpunnpielpy}ƒ‹‘›—œ œ§¢¢¤ ¢ž¤¢ ¤œžžžœžœœ›žœ™œœ›“™‘±Ñ×ÞàäääÛË“gbe`nrrrwyyw{ƒn<.# . )&1# ž¤ ž¥¥©§§¬©©«®§«¤¢œœ ¢¤¢ œ“ƒ`YOGL`Y[YVbb``^`[[gebggrernrrrnyuuyy{{wy}{uuwu{{ru{{}wuyu{y{uy{{}ryr{ywy{{y{{{yr{wnyuu}}}ƒ{}{wy}wwwy{uruyy{uwyy}rywnnrlpneeiru‡‰•žœœ™ž¤¢ ¢¢¢¢žž›ž œ¤žžž™œž™žž›———™›‘•ÁÒÛáäãäãÔ½^bgplluwyy…{e<##+.++# #1) ¤§ ¤ ¤§¥§««§«¥¥§¥¥žž¥¤¤¢¥™‹wiQ?OLLQ[[g^^``[b```Y`bggnipyrpnryuuy{wyy{wwuy}uw}}w}yy}}}uyywry{{wuwywuwpuwnwy{wwpppyryyywwy…{}{}}{y{w{yw{{www{yuy}wwpup}ri``eiyy…‹•—››žž¢œ ž¢œ ›¤œœžœ™›› œž››™› ›™›œ““‰§ÌØÞããäæàÒ¥b[eilnlur{y…‡}iB #+7.)& #&§«§ž¤§¢¤©§®§§¥¢¥§©¥œ ¤¤¤¤ž›‘ƒu[TGBQQ`e`b^[[^b^[[bib`rnpiuryw{uw{pu{}wyyywruuryr{uwuywwy}{wwywwyulrpw{npuuwunryrwpy{y}}ƒ}{}{ww{{{w{yr{{}{y}yuy}ywunulrrinnbegy{‡“••™™™¤œ¥ž›¢›ž—ž› œ—™œžžžž› ™—››——•“‘•¾ÔÝáããæãÚɉ^grgllrw{}l? & ## )¢ž¤ œ ¤©¬®«¥¢©ž ¥¤ž¤¢ ¤¢™…y`QLBOJ[^[^e^^`eVi[eb^`ggnirupruw}wpu}r}uuw{yyyƒuuw}u}y{}yy}yww}}ywwyƒ{uu{ywyprruprnrpprpy}}yƒ}{u}}{ry‰wyy{yuw}}y{uunulpnwggilpr…“•—›™—› ¢›žž™œž›™›œ›››œ›œžœ™™“›“•™“‘‰‹©ÌØàãääæàÒ«ibibgignw…lJ #.)1)&#& ¤¤¥§¢¤¤¬±¬© ž¢œœ›œœ¤¥¤ž ¥¤¤™•wbYJOOO[^Yb[e^[bb``e^[g`elnrruu{u}w{uuwwwuyyww{}y{uyyy{y{}}}y{yw}w}uy}yuurr{“w}rpprpp{rpw{wwu}}}yu{{w}yy{y{wywuuwlwgprnibggi{ƒ‰‡“•™™™žœž¢ž›™ž™™œ› œž›™œž™—›—“‘‘‘‘‘‘“½ÔÚÞäãæäÚÌ‹^`ginlwwgB# #&)..1&+&#& § §¥¢¤§«©§©››œ™™™™ ¤©§¤ž¥¢ ›—‹w`OLGVLQ`g`g`^bYb^```^rlrplypur{uupruuwrwur{{{wwyy}}yy{•{{}}wwr{‹}r}uy{‹…¤™Å¤Å«½°Ã«³‹}nrnrryr}wywwpywƒy{w{yyywywyyuwyppnpguelegwp}…‹•——™›œœ žž››—™ž™ž›œž™œ•›••““™‘‡‘‘‹ ÈÕÝããææáÕµlbgirr{eO& &1++)+7#+#¥¤¤ ¢¥¬®°§¢™•“•™“›¤§¥§¥ž§¥¤›™…eQODTTLQY^bbb^bg^[^``nlgggpuuwwuwyyw{{ypyuy}}{yuyywyyyu{ƒwuu{yyyy}u¢…¢•“ «±³¶¹½±¾Ã»É¶Ïì«wprpwr{{w}}yƒƒ{w{r{yyyuwupurginlleeiru{ƒ““‘™“œž œ››››™™™œ›œœ ›——›—“‘›““““‘•µÑØàãäæäÝΜegln{ylD &1#1+.+#) ¤¥ ¢ ©¬±«¤ —‘‘™¢¥§ ¥¢§§¢ž•{gLBTQTYYV[bb`^``b^^^gglienruwupyuwwyww{{{{ƒy}w{}ywpuwy{w…uuwnu›ž™¢© ›“§¬»¥½®¾¸Æ±Å»¾Æ°ÅÈËɶ›ƒplgwpwwu{ƒ}}…y{wuwurwywyrnnruglgibelrw‹‘‘—‘•™œ››™œœ››› —žœ•›œ‘—‹“•™ÃÔÝàääéäØÀƒgub9) ))+1++ ¢¢ž¥ž«®®§ ›‡‘ƒ“™¤¥©¤¥¢§¤§™“…weVJGLVL[^Y`e``l[V`^T[eblnpppynurw{}}rwyrw}{y}ƒ}{ruwyw}{{y{yuu—¥¤œ‹›¢—ž¶©Á©¸¬ÃµÅ¸ÅÁ©»»Ë¹ÅÉËËÆ½“unrnrn{{{wu}}ry}ruyuulprnyrillggbeu{ƒ‹‰œ“™‘›—œ—œœ—™—ž™™™—™“™“‘•‰‰‘•“‘‘“¬Ë×ÞãäééáÔ®upur? &) .)&)## ¢ ¤©©®©¢œ“}y‡œ ¥§§¥¥¤¤¢ ‡rgTBOGYQ``[e`Q^e^Yg[`egiwplup{uwpur{wyry{}yy{}}nyu{p{yr{yuwyuž‹‘—©‹‹›™¢œ¶§§µ°»¶½Æ¸½°Á®ÃƸÆÎ½ÉËËÀ‡nninn{y}ww{wyu{ywwnurrppgpiipib`eww…‰“‘•‘••››œ œœ•—™•—“—•“““‹••‹‹‡‰‘‹‡‰»ÒÝãääééàÏ—ylD#) ).++ +#&&## ¢¥ ¤«°¬§ž™ƒywy‰“œ¢©«§¥©©§¤¤…}bQB?JLQVTb[e^[gb`b^b[bgwlrprrwn{pwwuuy{}wyr}u}}y{yw}}wy{‰…}œ—‰•¢“œ™œ—¤—¥¤¶ ¸œÀ½Ã³È¶±Å¶ÁƳÆÎÁÈÒÒɱ{glupyyw{}r{wrywupuuuunpnlgnblelewy‡‰‹‘“‹“•••—•™—œ›™•“•“—‹™““‘‘‘…‰‰‹‹‹‰‹›ÉØáãæçéçÛ¾yG) +###&&)#.)#)¢¥§¤©±¬¤œ™wppu‰™œ¢¥§«¤¥§§ ›—y`L<?JLYQQVT[b[``YQbg^`girlwpuuppwwnyr}wyy{yu{{u}ulpup‹œ—™{n{“•ž‘›““©“ž¢›®•¬±±°©¾¹¸µÃ³ÀɸÆÌ»ÉÌÌÌÉÒÌÉlgnyuyy}rppwwwyuuunnieggbgb`egnn{}ƒ‘“‘‹—‘—“‘—™•›™•‘•™•“—‹‰“‹‹ƒ‰‹‡‡‹‰‰‡‡±ÒÛáäæçéäÔ‡&&)+ +. 71#&1& ©¬¬¬«¥œ—‹yieiy…—ž¤¬¥«©§¢§¢ •‹}bJ?GL^TY^eY`YY`Y^Yebgbbiir{lrpwnnlp}ryuwyu}w{wwrurpµž™ ™“wywy‘‹‹…¢•ž›¤™¬—¹±µ±¸¢¸½¸Ã³ÆÉ½ÅÈÈÅÎÒÆÉÎÒÌ®ngyiuppwpyy{urrpwliigpii`b[Ybgly}‹“‰“‘‘•œž•›—•—“‘“‘—‘‹‹‹…‹‡‹‹‘‹‹‰“ÈÔàáäéìçÝi ))# #)& #Q)) ...#¢¥®®®§ž•‘lYYl}‹™ ¥©§¤©¥§§¥ž“ƒyiJG?BTJYTV[[LVV[[`Y^`ipeplpgyrupnrprpuyrurwywu{pyw{“‰‡u}uruy‰“‰‡y‹‹‰‘‘›¥«•§«®±«¢½¸³À±¾ÈÁ¹ËÁ¹Ï˽ËÑËËÌ×ÏÕrriiurrpwrurprrrnigg^el[[Y`lp{……‘‘‘‘‘“—“‘•—‘™™““‘‹‰‘‘‘—‘‹‹‡‘‰‹‹‹‰‹¬ËÛáçéêéÌ #)+# &&&#...©«±°«¤ •‹p^JJiy‹™¤§§¬¥§¥¤§©ž—wbVG<<?JY[Y[OT[[Y^[`b`eg[erlpgipplwpuunrywururuprµ‹i}yy}yruw}u‹ƒ‘‰ƒ‰…‘‡—•™›¢§§©™®›¶Á¬µÁÉÆÈÀ¹ÈËÀÆÑÁÅËÑÉÈÌÔάlggllpprplunlplrpgngi`g^[egn{ƒ““‘‘‘“‘“™•™•‹‰‘‹‰‹““‹‡‰‹‡“‘™‘‰‘‰‘¸Õàçéæ×y)&&&4& #). +) «®µ«§¢›‘nTDJb•¥©§«¥«¢¤§ ›“‡wiJ?7JJQQVTY[VT[Yi[Yl`Y^^eenpl{igrruu{urpp{y}rrw‹®Oby{ylyp{yuy}‹…‹‡‰ƒ‹ƒœ• žž ¬Å®«ÅµÅÉ»ÅÉȹÎ̹ÀÌÎÆÎÏÏÌËËÎÆeggnpllrllpnplig`beee[[[bl}…‡“—›•““—‘•‘•™™‘‘‹‡‰‹‘“‰‹‹‹‡“‹‘“—ÑÛæäØž +4#4+.+ #)# &1«©®§¥™•‰{g?7Gg‹—©¤°¬§©©§§¢—}weGD1JGQVVQ`bYY^`Y`^[[[geglpililnlrurwrruuuyurru•ƒTgpn{pwy…yrp{……‹ƒ{‹‹—›™‹©“µ®®Áµ®Ã¹¶ÅžÁ̾ÃÌÈÁËÏËÈÑÑËËÌÑϰl[ee[epnennginlglbgbge`elyƒ‹••—™“•‘“•‰•‰‹‡‹‘—‘“‰‰‹‘‹‹‘‰‡‰‹•‘“••—±ÔàÔ ) ))&.#)#&)77«¬°§ —}nG<9Ll‰‘¢§©«¥¥«©«¤œ‰‡we?D+?GDYV[geeY^YY[[bbeb^lnleippnpwrppwu{{yyrrw…lbnenrwnnryru‡‰{‡“‹ƒ‘‹u™™¤©¢¶±±Æ®±È¸©ÉŵÅÉÈÁÑÌÁÎÑÔÎËÏÑÏÑÔÒ¹n^Y`bgi`lggplnlnbeg[Y^egw…‡“••—••“‰‡‰‰‰‹‘•‘‘‹‰“‘‘‹‹‰“‘‘“—— ÌÅ‹## &)+& .++++&& 471®®¬¤¢“‡y[B?<Vi{‹™¤§§°§§©¢¢¥›‡p`BG9DJ[OV`[Ypb[QT`[QV^bieiiiplplgwniprnyrynrnw•eliwwpgeuw{y…y{‡y}‘‰u…•™ž“¢¬§½©µ»¹¹Èȶ½ÎÉÃËÑÃÉÑËÉÏÏÑÅÎÒÔÒÎÔÁwLY[Y`b`pgn`b`egnb^[Y`g{—™™—“—‘‘‰…ƒ…}…‘•‘‡‰‹‘“‹‹‰‹“‹‹‘‘“•—““™™ ¢p+ # # ++ 4+&&17G<) &±¬§¢ž‹ygL???^p{‡™¢§®©©¤¤¤¥ž—‘wiGB9GLJVOQY[``g^^`[Vebblinllrgiirnpprupypywpp»wglpiebeirwƒ}i•p}•w‰…“}•ƒ›§‘¥°¥³§«ÃÁ¶ÁÅÁ»ÌÎÆÆÎÌÆÒÎÎÉÌÏÎÌÑÏÎÑÑÒypbOVY`nbigibeb`[b^``byƒ“•—•¢——•‘•{}uwƒ‹›•‹•‘““‹‰‹‰‘‹‘•“‘•‘“‘•žœ—l+?& +&+1 .#))<?)¬§ œ—‹nQBG?GVn}‡“¢§«§¬©¤¢ ™“ƒy[DB7GDDVT^TV^Y`[^``[elY`gblllepp{wrupynnurwp{®elu`gbgeuulyup…{}‡‘y…““…ƒ©™ž“§§ž¾µµÅž¾ÉȽÉÎÈÅÌÎÈÈÏÏÆÉÏɹÅË×ÝáàÝÏuGT[ibilge[[eib^[gny‰•™›› œ™——‹ƒ{rrrp}‘•“‘‘“——“‹‘‘‘‘—™—ž{9 #+))+# #)+<& &#&<9#&u—¤¢œ›‹{`BBJGBOr{‹™ ¥«°©«§§¤ œ‡plO4D9YGQYr[YegY[^Y^^gbbligpniiinlrrrpuurwrpr›yigbg^girwlrn}r‰p{‡…‡…ƒ—u™™—§¢›®¶¢ÁȸÅÈ˰ÈÌ¾ÆÆÑ¾ËÏÎÃËÎÁÃËÚÚÛÝàáçêêÔTOO``ei`[[b`[`Ve^b‡“‘ ›œ›™œ›•…ypbglnw‡‹‘•‘•‘‹‹‘‘‰‘‘•••—•ž‹O# )# #&# +.+#)#4.L7#[‹§¢¤—lYBJLLBVnƒ— ¥¬©©©«¥¤¥™…reLB.?BJVVOVYY`[TY^[YYbe^ilirirnypunyprunnru}uegebielpnll{{y{u‡r‡{}…ƒ…œr‰ ›¥›±™¸Á¹¹É˶ÆÉÀ»ÉËÆÃÌÌÁÈþÃÔÛØØáÚÚÞÝáéìé±JGT[e```[^T`bbegpƒ“›™žž™—™œ…yg^Y[`u}›‘“‘‹‰•‘‰‡‹“——œ‰g +.# & #) #&7GT4#[›«¤œ—ƒr^<GBJLLTg‹•ž§®©§¬§©¤ž›‡rYJ<<BJQQVQ`p[bVVY[`beb^iigenipplrppuuyprwwyugn`[birrnwi}{r{ywu}}{}}}ƒ‡‘w“‹“¢‘¹¶®Àΰ¾ÈűÉ˾¾ÌÌÀ¹¾¸ÆØÚÝØÝÚØÞÚÛÞÝáæé×y<QY^Yb[[Y`Y^VV`i{‰‹™™—ž—•—›‘}pLDGL`r‹‘“‘‡‹‘‹‘‘““•‘‘œœ‘l&## &#&) &&..))4.BJ.Q…™ ¢™™lVBLOGGJ[ly‰—œ§¬¬«©«©¤œœ‰iuB77?JO^T[[^`bVee^[Y`[^iiipiirlyurwyrur{pryugi[eggryllpwwiwyp{rp…w‹‹™‡‘{‘‘…‘œ…©›®µ¬¶ÅþÆÏÉ»ÎÉÁµ³¹ÌØÛÕÚÛØ×ÛרÛÒ×ÝÞææéÕTLLTYT^T[^Y`YVigy‹‘™œ›——•—•‰lQL44Qpƒ‘•‘‹‘‘‘‹‘“‰‹‘‡‘‘‘‘››yJ# +& )+ #+#)#&##+?D9<7L{“™œ¢‘“…iY<GGOJGQJi{—¤§«©¬«©«¤žœpbLDLDTOJOVYVY`[i^[[^^``egeingnlinruwrurr{}n`^illywlnuuwnyrn}y‰‰}‰‰‘ƒ“…“—¢—¤³ ³Ì«»Å¾»ÌÌ®µ®¾Ò×á×××ÔØ×ÚרÔÚÛÒ×ÞÝæãçµQBJ^TYVTeYYYVbiu‡——›™—››•™‹}pY+#)Jpw‡‘‘“‹‹‰•‹‹“‰‹‡‹™œT47++&&#+ .&BJ7B`D1G}“œ•—™‘‹u^O?LLQQDJ^g{‹• ¤§®§®¬«©ž›‹ƒwbL?4??OOTOOTYe`bY`V`bbbbpbelnpepwrpurrru{unii``niguewlpw{iyir}u…w‹‡‘}‹…y™…“‘ž«›«¸¬³½Á®Ã˹¸¤¶ËÚ×ÛÚÚÕÑÔØÔÕØÔ×Õ×ÝÕ×ÛÛçäã¥D?JQQY[^V^VV^luƒ‹•›™››—›‘—{^4&.Jpw‰‹•™“‰‹‹‹‘‹‹‰‹‹‰‘•™›•i 1.)&+)&&.&)?7?GD7Yƒ‘›ž“•iOGDJOQTJGYgw‹—œ¤§§«§©§«ž•}i`L?9JYVTVYQb``ibb^V^^bgbbiilneruyywrwrlwni[eeepllu{urlurpnyyw}y{‰}—•‹œœ—› ®™¶Å³½»É¥¤§ÀÕרÝ×ÔÏÔÚÎ××ÕÔØÑØÕÔØÚàÝãçààuDDJTQTb`[YYYiu…“™ž›™™™———‰ƒw^G9^iyƒ“‹—‰‹‡‹‡““—›w4<Q7&))&+1+&)1+)#<11JGLVw‹›œ¢‘ƒ›{u[?LJTTTBQLTiw™œ¤§¥©§©©¤ž™ƒuYT?4JGO[VVQTYY[[[[^b^e`egbbnlirrpywupwu{ngl^eiilgrrrrrueu[rnƒw‰r‹}‘™‰‹ƒ“‹™™‹‘‡›—§»½®À»©©•ÆÑÔÏ×ÒÔÒ×ÝÕÒ×ÎÕÔÔÒÒÎÚÛÞÞàÞæéçãÎTB<JLQQLOTTbnu‹•™ ›—›œœ™‰y`?9^el•“‘—‡…‘‹‘‘•›‰J) ) &+) 1. )#&79OTTp‰‘žœž‹‘¢pgDBLL`TTODD^iy‹™ ¤«§©¬© œr`JBOGVYV[^`bQVTbTgYTbi^ilwbilnwrruwyrw}uyb`gyni{lnrpnilnllwwƒr‰y•‰•••œžw™—‹—‹§µœ¹¹µ©“§Ë×Ô×ÕËÑÔÔÞÕØÒÒÎÌÌÏÒØãáÝ×Ý×ÛááêäéµQB9GOQLQLTblƒ•—›™›—žœ•“‹}V?.D`ry‹‘“•‘‡‹•‹‹‰‘‘•—g&#))7)).9 ##)#+)9QG^u—œ—›“ž¬`^?GLOOVLJLLTg}‰‘ ž¤¤§¬©¥§ž›‰nbL4JLQVVLV`TTY^Y^``VbY[elpipuinlppruwypninipguipup{grippwp}w‘wy……™—•••…“•‡¤œžµ¾ž—“µÒÏÔÒÒÑÑÑÚÑ×ÕÎÑÌÕÎרØÕÛ×ÒÑÔÕÕÚÛÝàãÞ¬eL?J?QVDGVgu…‡‘™›››—›œ••‹…y[9#+LYb}‹‘‘‘‹…‹‰‰…‰““—›9) &&7 . )..) &91)BQy…•—œ—•“ ¤«VJJOLQQQOOGG`b{…‘›¤¥§§©©¤¥ —‡}y`O?<?LYYY[TY[Y[TYbbi`en^ininpllwwwppr‡piinrgibniliyeu{`{eyruw‰ƒ‹‰y™ƒ‘—‰—‘‘œ‹ž±«™}¥ÀÎÌÕÑÉÒÕØÑËÒÎÆÎÉÕÕ×ÔÌÎÌÏÒÒÕØØÛÛÝÚàáãéÚ ?4?9QOJYgw‰•›™™››——›‘‘…w[J 4GTwuƒ‘‘‘‰‡‰“——‹b#?)&)# #+##.#+&+.1<g…••›ž• «¥¬L?BVLOGOOTJDT`u‹¢ž¤¬¬©©¬§¥™ƒrbL<??LTT[Ve[YY`VbY`^```gggirngyrnlrbb`eppgbiniple{r{piyƒy‡‹ƒ‹‰…‘‘‰“}‡…ž© ™¶ÌÉÆËÈÒÒËÕÕÒÎÎÏÌÔÎÑÎÑÏÒÔÒØÑÔØØÚ×Ú×ÛÞÞáãææ n)7DDLVeu‰›—™›ž——™›¬ƒr`J+BYp{ƒ‰‰‡…“•›•l4.9) #).)&& 1)#+49DV‹—‘œž›©¬¬©VTDO[LOTTQGJQly‹ž¤§©©«©©¤ž™“}yeV<7BGQVV^T[OV^V^^^Vb[leiipprpnppuur‹wbp[lengilp`nenppr}l…‰‹‰wƒ™•‘}œƒ‰‡…‹{•…—ƒ›‡‹»ÏÎÌÌËÏÅÏÌÉÏÎÌÎÏÒÃÎÑ×Ë×ÚÔÕÕ×Ø×ØÚØØÛÕÛÝàÛáçä¤447DJTb{‡‰“››™™—œ™¢›‰ƒr`B1O[}‹‘‘‰‰‡‹‘““—“…1 +#)+)#).# )+B). &&+#.4[™••—™‘™¥¬«««JYVQVLY^OYLLYgy‹ž¢ž§§§§§¥ ›‘ƒug[<?DQOYTVVTebV^^YbYe`^egblpnluurnn“pl^`[beyrignl{wnn}iy}}‹r‹‹…™‹‰“ƒ‘‹…‹ƒ‘…•{‘§»ÌÈÏÒÒÃÎÈÆÌËÅËÎÌÈËÔÕÏרÌÕÕÕÕÕÚÛÔÏÕרÔÝÝÛÛÚÞæáy.9JQgw‡—•››—••™›—…n[B?Qw{‰‡‹‡‡‰‘““‘Y ) )1& )& &##9)&&+Q‘›™“‰‘ ©®«¬©GGLOTTVVTQGObl…‘œ¢§¥¤«°¢¥ ™“‡peLDBBJJ[VQQ^V`bYQ[Q^`^eblgenrpiyni{ËuYb^``eliligiblepbr‡u{‹}…‘‹•…}ly{‘¾Å³¶ÌÌÑÉÌÀÏÆÁËÏ»ÃÅÌÒÔÔÕÉÕ×ÑÕÒ×Ñר×ÕÛØØ×ÔàÞÞáäÚäÑ744BLeu‹‘™™™™œ—™•‘‹{gL##.JTn“‘‰‰…‡‹‘•—p###&7#+##+# # &)1<p›ž— ©¬¬°¬©VQVTYTLBLTOO^n}‰•ž¢¢§¤¥¥¤¢¥›‹ƒrgY<BGOQVOVb^T^[^^YYbb^`bgpipienrnlœ®lVV[l`pnnllbu`pllpwƒbƒƒ—‘…p™ƒ…“‹r‡ƒyw«¶Ì¾»ÆÅËÌÃÉÎÀÌËÃÁÃÌÏÎÑÑÕÔ×ÎÛØÃ×ÚÕÕÚÔÕ×ÕÕ×ÑÕÚàÝæáæçrT44Jel{‘™™™™›—œ—“‘ueG) .Qguy…‹‰‡ƒ‰“›94 +1.&4 ))4&#&#.))Jl—™•‘ƒ•ž§©©¬¬¬¬TLTTYQOYOJDOYi}“¢¤¤§§¥¢¢¤¢™‘{`D??BJLOYV[bY``^[[^e^gblglgpnnrnbnΰ[bTr^bbbpeepgurrwrw…u……™y‘lœ‰—yƒƒy`n{¸³À½ÑÆÉ»Æ½ÏËÉϸÃÉÎÏÌÏÑËÒÒÕÕÔÒØÑÕÕÔÔ×ÕÔÑÕÒ×ÔÚÛÝáÞäééÚr&7D[p‡“••œ™žœ›•‹{w`J)#.Ter{¢œ•‰™•“[ #4+#)))&&1)&)1# ^…—™•—‰ ¥¤®«©§©©J`JVQYY[TLDLV`{‹‘› §©¥¤§¥©¥™pgQG7LLJLVTVL^Y[eY`Ybbl^enbnnuingg“ÒV`ee^il[nbpiguluul…wy‡…—‡ƒ‘{‹‘ƒ‰“}‡wyib›¶¹¹ÀÈÎ̹Á¾ÉÆË¾¬ÅÎÒÈÔÒÉÉÏÏÕÕÔ×ÎÒÔÔ××ÕÈËÒÔØÛÚØ×ÚÚÝÛÞæçêÒ++<Yn{“—“•™™››› ‹}yiJ.##4J‰ÌÑááÚ³°Ï°i )#..)+)4&. +&+##) O•›—‹‹‰™¤¥©«§¤¢¤©O[QQTOJLJJDDQe}‰“• §§¤¥§©¤¤›‘‹ygVJDBDQOTTOVTg[b^Q`eylge^beilgle^ÉÆ›YYgYbeegiip^eV{nn{r…r‰—‰ƒr‹‰{iwir¢§ÃÁŽû»ÅÅÈÀ¾©¾ÁÆËËÑËÌÑÎËÒÌ×ÒÒÑÔÏ×ÑÎÑÔÏÔÔ×ÔÛÚÒÚÝØÞÝççéçg<Qg‰‘—“—™™›—•™‰YO& D»ÕááÚÔËÕááá¹7)?#.&)&+.<1#1&#)&) )Gw‹œ—••œ§¬«¢©¥©¤¤QQTOYYLLGQGOObp‹ ¢¥§¤¤¥¤¥¤•‘ƒreY77?BLGLL[[O[YTV`eQ^Yb^lipgei`eyÞ½nO`[Tegerrg`n^reyn{{‡ƒƒ‰yw‡‡i{lp¸¹«¸ÏÉŵ¸µÅÎ̱³Ã¾ÉÁÉÉÌÑÎÎÌÏÏËÉÔÕÒÏÏÅÔ×ÏÛ×ÌÒר×ÛÕØÛØÛÝÞæäç¹7Qg{…—•ž›—›œ•›‰}gD& )DËÛãÛÌÁ××ÛÞààÛO#.74..+)&)+)#1?&7l—™••‹—¢©³¥¥©©¥¤¥¤^TVYQGJQQLDQDb{“™¢¥¢¥©¢ž¥ ™…pgD7<DJJVJYVYVV^YV```b[^`egglebY`©Ø™ub^Vb`lblnggnniey{}…y…‡‡‹…y}‹‰‡}eygVg—®§½ÁµÏµ»¾µ¸È½³ÃÈÃýÈÉÌÆÉÌÃÕËÉÏÏÎÒÈÆÌÑ×Õ×ÑØØÏÒ×Ú×ÚØÚØÚÛÝáééÚG1Ggu‡••™™™—™—›…r^B##wÒáàÒ½ÔÕÞçééìéæ°&1#&&14+.##+1#&.##)T…——••—ž®®³§§¤©¥¢¥¥LQOQQTJOTVL<Oiwƒ›ž¥©¢¥¤¥§ ›‹pb9?17<DLQV[VYVY[V`Y[g^[bgiegbg^bÝɬƒ`Tee`ii`pgub}euuiƒwƒ}wrb‡‡…w‰{ein«¶³¶È¶«¹»³µÀÀœ°ÆÃÅ»¾Æ½ËÌÈÎÌÎÅÏÆÌËɽÎÔÒÒÑÒ×ÑÎ×ÕÎÔÕר××ÔÕÔØàäéä°+Oguƒ•ž•›œ™•™›‘‡u^G)—ÕãÝÁ³ÚÞãäæææéííÞ # &+). # +& .#1#4Dy•œœ•‘“ž¤«©«§§¥§©©¢¢OJTGOOOTVVOOT`y“™¤¢©««©¤¥¢œ“}u[J944DBQVQQVeYeVTYbT[bg[^[ngi`Y{ÚénVT[^``^i{eenb{`i{n}ewƒ‡‰yƒyibw¥¢±¾¹¸±¤®«Áɬ³¸Ã±Ã»ÆÈÀÉÁÎÁÉÌËÏÆÎþËÒÎÑÔÑÔÒÑÏÑËÑÏÏØØÔÕÕÕÕÛØ×àéæÞl9`u‰…››•œž———•‰yg9BÃØÝÕ«ÃÝàáÞàáÞääæíç? +B #&1## &<lžž‘‘™¤§©§©§¥¥§¤ ¤¢OVV[QOOVVOLGJlr™ ¥§©¥¤¤¥ •ƒr`GJ9<1LGVTY[[V[V`Tb^^[^e^ginu`Y›ÛÈ›nTY[`[eepui^}i^{}{…wn}wlƒ‡ƒu{welJ…®¶©»½«¬µ¬›È¬ ¹Åý¹©ËÁËÆÁ˽ÎÀÎÌËɱÉÌËÏÒÎÌÎÒÒÏÑÒÑËÒÑÒÕÚÑÚÚÚÚØÚÝáææÉ?Ow…›œ ž™ ™‘‡rY7VËÛàÌ¢ÅÚäàÝÛÚààÚÞãíç{# #.1&. ++++.)T‹œœ›•›¥§©©¤§¥©§¥¢¤¥ QT[Q[QQY[[VGTer‰“›¤®®§¬§§«¤›‘yeD9B7DLQYY[VYV`b^Y^e[^^bnnenlg`µØ»‰gQYg[b[lgiLnggy}ƒr{wiuƒ‹ƒpl‰ylub ®¶Ã¸®¤¥«¹À§¶Ã¶½Á¾¶¾¹ÎÃÎÆ½½ÁÌÃÁ¶½ÎÏÒËËÎÌÈÁÌÔÑÎÑÒÔÑÒÒØØØÚØÔÑÕÕØØÞàá‘Jr‘—›—›žœ›œ—e[) {ÔãÚ¾œÏÝãàÝÚÚÚÛØÑÛãêêž# )4 ##&.+. #9p•¢™—“™¢¥§¢¤¤¤§¢¥¢¤¤¢¤TV[[VY^YTQg[Yir}‘ž ©«§«¬©§¥ž‘‰n^G?DBBOTQTVYYT`[V[`e^g^bgiii`b`Úΰ±gLbYglgenGnwunupw}eiw‰uw…lgb™¢¥µ±³±«œ§¾µ¢¶¾À½¶¸¹ÈÁŽƹËÃ˹Á¾¶ÉÆÎÎÏÏÆËÑÏÌÁÑÒÑÌÑÑÚØ×ÕÑËÒÒÕÕ×Õ××ÚÞáÑpr}™™žžœ››™—‡weB&<§Ûà׳°ÑÞÞÝÝÝ×ÒÑÔÕÚÝáçì¢+7.###)&#e‘™œ™“—¢¤¤¤§¤¥¤¥¤§¤ ¢¤¥VYTY^[bYQT[[Vgn‡›¢¥®¬°®«©¤ž‡r`D?9?JJL[b`Q[QYY`[V[eb^beglgb^gÝÚÀ‰gQb`Tb^QJnlpi}pn}rw}ri‰ƒ™ƒ}rYg‰ ³¥³¬ž¤°®®§¥Å¹¹»»³»ÆÉ¹ÀÀ¸È¸É¶À °ÌÆÅÆÌÏÑÎÅÆÎÎÏÅÒÒÒÎÆ×˽ÎÎÎÔÔ×ÔØÕ××ÚØÝàÔ•{‰“œ—››œ™••rV44{ÈáÛζÃÕÞÝÛÝÚ×ÒÎÔÑØÚàáçê›.+4# #) )+?…œœ••“ ©¥©¤¥¤¥¥¢§¥¤¤œ¢¢T`[YY^YV[YVVTby}œ «§§«¬¥«§œ™‹rbG?<9BQ[QY`TeVTel^Y[`gelblel^[uÞÉžuYLVY^bVbiyirlnww`iu{p…y}uLn ©“¢½¢‘ ¢»µ“«µ±È¶³¾Åû¹È¾¾À±È¶½«¸ÌÅÆ½ÀËËÌÎÏÌÉÌÌÏÅÔÕϾž¶ÏÔÒÌÕÑÒÑÏÒÕÔÑÕÝÝÞ॑‘•™›œ••‹ƒiQY³ÚÛÔ¹¹ÉØÝÝØ×ÚÔÕÑÑÔÔÛÝàãæçƒ) &##&+)##4)74l“ž™—“—¢¤©©¢¤¢¤¥¢¤¢§¥ ¤ [Y[[[[`[VYTVV^r…•›¤§«©®©©®§œ‘reJBBGVJVY[[^^V^Y`YV[^^`begrp^[“ØÔ‘ni[QQbVibigilQynV}{n{{n…ulybn›©°—‘¢œ¾›™¹À³®®À½½Æ¹±¶¶É»¹½µ«®À½¸ÆÈÆ½ÆÆÈÎÎÆÏÒÎÎÒÏÑÌž³ÌËÏÑÒ×ÑÒÔÔÑÑËÏÔÔØÚÞ×™‘™œ•—•™‹ƒ}i›Ñä×ÉȽÑÚÛÛØ×Ò×ÒÒÑÕÒÕÚÞááäæV)#7+)# )# )#Y‡ ›“—ž¢§©§¥¤¬ ¤¥¢¢ž¤¤¤¤^[`[YT[Y[TYQYgw‰—¤§©©®¬¬©¥ ™uiJ7?<JJTQ`[V[[Y[Y^TLVb^geinb^J¾ÝÀnu^Q^Qe[uVigYrpnwrpyƒ}…lrwn`p‘§¢ ©—‹«¥ °±¹¶¶µ¸Å¹®¾¶°Á¶È¾³™¥ÈÅÀ¸¹ÉƾÁËÈÁËÅÈÒÏÎÑÒ¾›¾ÌÆÈÎÒÏÒÑÕÒÒÏÏÎÉÏÒÔ××ÚÆ‹œ™“™™ ËàÚÏÅËÅÑÝÚÚØ×ÑÕÒÑÑÔÏÕÛÝÞÞáæç#&#)& ).#)&1# +rœ¢™œ‘›§§¥§© ¥¢¢¢¤¢œ¤ ¢ ›Ye```VY[`YYVYbu‡••™«©©®±¬«©¢›‰wlLB?<LLOTQ`^^^`V`eQV`V^gbne`YQÆ×¶‡pieOe^^V`O^ruunb{y}wng{nlbp‡ œ«—— “‡›ž³±¬¹½»¬®µ³§ÈóÁ®»§»½µÅ½ÀÀ»¸ËŸ¾ÈÅÆÆÒÑÔ묻ÅÅÌÑÑÏÎÏÌÑÌÏÑÑÑÏÉÉÎÎ×Ô×—›•—•—ËÛÝÔÃϳËÕÝÚ××ÔÑÒÑÑÒÔÔ×ÚÛÞàáãáÞ##) # .# ) &^™¢›‘™ž ©¤§¥¤¢ ¥¢§ ¢¤¥žžV`TVY``b`QVObbwƒ“™ž§©°¬°®°¬¤™‹{eV7<9LQOT^e[`YV^^VVY[V`ge`biV[Þמ•y{bbg^`Q^TbY[n^^{nruielnn{—• “³‹¢¬©™°³»À®±«¤¢Á»ÉÅ®ž¤À¸»¹¬ÈÁ¹¹¶µ»Å³»ÉÏÌÃÏɬ¹ÉÎÆÉÀÆÈËÌÎÌÌÌÈÈÎÎÏËÉÎÉÌÑÛ¤——•“‹µÑáÑÆÁË»ÑÛÚØ×ÔÒÑÑÒÔÔÕÒÕÕØÝÚÞáãäÔ#&+++)&.)### ##J“¢™™“™ ©§§©¤¤¤§ž¢¢¢¤¢¢ž ›[^bYV[bY^V[L^b…•›¤¤««®®¬±®¤›‹`JDB?JLLO^QY[b^`^O`^[^b`bb`eQ`áѳ‡‡ybebg`g[`[buenun{repr{ug{¤“™“•‘œ™‡™¤¥©¤±¹±±±®«µ½§Æ³»›¤»¶µ¸°¹±½À¬¾»°ÀýȾ¾ ¬³½ÈËÅ»À½ÉËÈÉÎÎÈÁËÆÃÈËÉÁÅÆÁÎÒÅœ™¬Ï×ÔÈËÒ½ÏÔÛ×ÕÕÎÏÔÒÏÑÔÔÒÑ×ÕÔ×Ýããáæ«.#))).) )#).7<e•™—•‘•¥©§¢©©©§¤¤ ¥§¢ ™ žžž[bYVb`VV`Y[QYgu‡‘ §©®©³±®µ®©™‹{^QDBDTbLVV[[TY^Y`Q^`[bb[^ibVQÞÌ ®bTeVb^g[e^`gggugbyw}wb{—“™ •‰‡™ž‰¢©ž™¬± •¬¬®¹®¬¾³œµ™µ¸³¾¶¾¹¶¶¶±À±Å½µÉ¾Å¾¥¾ÁÀÅÀ³³ÉÈÎÅÎÌÉËËžÁÉÈÃÆÆÃÀÉÃÆÈÒ¬•ÀÝØÈ¸ÑÃÉÔר×ÔÕÑÏÑÔÏÒÕÕÔÒÔÑÏÕÚÚàäãç‰#&+<&+.#1Qƒ—œœ•›¤§§¢¤¤¥¤¤ž¢¤¢ ¢¢ YY^[e[QYVV`V[e{‰‘›¤§®°±³±°®¥œweOB4<GBLQQYV^^[TVVT^Ybb`b`[YG¬á̾“‰yllYineVe^elnlulbwyrbr›‹••™‘…žy}—•§«®§®¤¥ ¶À»®¤µ¢¤µ¶¹µ®¶À¹³¶¸³°À³ÆÉÈɸ¶½µ¹ÀÉÉ˽ÆÉÉÌÀËÆ¾ÆÃ½ÃÅÅÃÅÆÃ»ÉÁÅÃËÆÏ×ÑÅÈÌÆÎרÒÔÕÒÒÔÔÎÏÏÔÔÕÑÔÏËÎÚÚØããææD#L7&)++4GT{‘›••‘œ¥¥©©©¥¢¥¤ ¤ ¤¢ž¤¢œž¢¤Y^V^bOb^bTV^^p{ƒ‘ «®®±³±°³®§œppG?DDGOLVQOTe^YVTYV[YVVb^[YTJËÚÏ©œ‰wepeYTbb`bgrpn…yw…r`i—œ•‹¢wƒ›‘—™›³—™ž¤©¶©½ÁÁ§œ¢±È¹«±¶®±Ã®µ³³³±¾¹È¾¸½ÁÁ»Å½¸ÅÁÉÁÆÈÅËÁȽ±¸ÁÁŶƻþµ±Ã¹ÁÉÏÑËËËÉÏÔÛ×ÔÑÑÒÑÑÑÎÏÒÔÕÒÔÔÔÆÈÑÕØÚàãäÞ+ 1# &<e‰››™•—œ¤§§§¤§¢ §¢¤¢¤¢¤¢¢žž ¢bbTTTVYYVVYVelu…‘œ¤¬°±³®°³¬©›‡yiO7<<LOOYQ[Q[TYV[YQb[V[g^YgOOÚÛÁÉ“}u}lle^e`g{^brlu{ulg••›… ‰‡…ž‘—›žƒ§•ž¬±¶¾¬¥³™«¹«¹¶¬°¸½¬«»³±¸°±®ÁµµÁ޵»Ã°¾ÁÀËÉÅÃÉý¸½¹°»ÁÅŵ½½µ¬¬¶ËØÌÀ¬ÃÌËÏØÚ××ÑÈÑÑÏÒÏÎÌÔÑÕÒÕ×øÁÏÕØØÛááà #.&+Y•™™‘™¤¤§¥¤§§§©¤ ¥¤¤¤ž¥¤ ¤¢ TVTYVYY`VVVVYlp…‘œ¤«±°°°°±¬§•}lQ?9DJTYVTYY[[[TTT[VVbb^b`[OLÚÕÈž¢“…i…rn[e[igY`lƒn}ien•‘›…¢…i‰•™—™¥¤…‘‰§ž§½°±³“—¹¸¸¹¢¤¶®¶¶½±®½µ¶±°³®µ»¹½Ã¹½ÀŸÃÀÈÉÆÁ»½Àù¬½¬Ã¾¾«¾¤±§ÆÒÑŧÈÅÏÑÔØ×ÕÕÎËÏÑÒÎÒÎÏÑÔÔÔÕ×Ȱ®½ÉÔÔÒÛàár#J+ #4uœœ•“œ ©¥¥§¥§¥©©¤ž¤¢ ¤¥ ¤¢¤¤§TYbVLQVO^bQT[ir‹›¤«®¬³±¬°®¥›wnT9BGLJVQT[[^[T[VV[OY[^`e^[TQæØ¶¾œ¥}u}}^nYbe[pbnlTYu—…“‰… yn—•“œ—¢•ƒ•§ ¤¶¢™—¬µÀµ³«©©¹¶±³»±¬œµ¹°¢³µ³À®³¸¸ÁÅñÅÈÆÅ»¶³»¸¾À©Á©½»³® ½ÑØÈµÈÃËÌÒÕ×ÔÒÕÎÎÌÏÎÏÑÏÏÔÒÔÔÕÒÒ¶¤¬®ÃÔÈÌÚÚÛ# #)&# ) Gƒ—™—“—¢§¥¥§§¥ ¤© ¢¢¤¤¥¢§ «¥¤¢¢[VYVYYVVT^Q[eb{‡“ž§°°®±°±°±¥œ‹}gD?<BQYV[YVb^`VY^YQ[^YVV`bYLJÞÒɧ±‘± }reniTDi^g{p`^n“‡… nu}—™—ž™—‹›±‘‡°ž™‘§¶µ±©¬³°©©¢®½°¤¬¬«§«³¶°©¬¢µ°µ»¸Ãûµ¾À¹¹¸±¾¾ÃÀ¸¹¥»®§¬ËØÈÁÅÌÎËÒ×ÒÑÏÌËÌÎÎÎÒÏÏÎÔÑÏÔÒ×Ñ×½®§ ¬Æ¤±ÈÒÛ±9.+ )4 +B9u“››—•›§«©§©¤¥¥§¬§ ¬ §¤¤¢§©¤¢¢¥TYQ^VTVTVQQ^^^{ƒ—ž¬®¬¬±°«°©¤›ƒbQL?GQ[QTYYYV[QY[^VVbYY^Y`[VTãÒ®½¤ƒ‹‰…ywr^L`O[{nnTw‹“‹{…¤pl™‘ž›“—‰¤¢™‘‰™¬‹¤¬®¹±¤©§±¬±±¤¬¶¤§®®«±¥³±—§±¶³±¸¹¶ÁÁÀ¸»»¶¶³«¸Á¶¶›©§©ÃÏɾÀÉÉÌÒÚÕÑÎÏÉÃËÌÌÉÑÏÎÏÏÑÑÒÔ××ÒÏ®›¢±Æ•¬ÃÌÞ1)7D&#) & #&4Gg‰•——“—¥¤¢§¥§œ¤¥¤¤¥§¥¤¥ ¤§«©¢¤¤¢YQ[[VVQ[[T[VVg{›¢¥¬±««°°¬«¤™ygL7B9OVO[Tl`YTTYVTOY[YTYbY^JYäÀܵ‰½ƒ™}ye`eQVn`iLu‘ƒ‰‰žguw…‡•œ““‡•› §‹§§œ‡³—¥®¤©®««°°§µ©›ž¾«¥¬°±¤œ©¬¬«±»®¶¬¬¹Á»¶©±±¸«µ¥½µ®¢ µËѾ¹Å»ÌÏÔÕÒÑÎÆÆÉÈÆËÎÎÑÑÑÑÑÕÏÕ×ÔÕØ¬¥ ±Ã ›µÃÕÔ) B)&#&#)?Tœ“•™™¢¥¥¥©§§§¢¢¤§¥¥¢ ¥¤§¢¤¤¤¢O^VTYV[VVTVOYl{‘ §«®°®¬°°®§œ‘{eT4B9GTV`VY[Y^TTYT[Q[^VbV[TOYçΤÀ‘§‡›‹{…^bYeg`eOi‘‡‹w‹œerp™‘“™ƒœ‹‰—›œ¢‰‘±®¤•›™«¶«¥®¢ ¬¢§ °±¤œ³§«®¬¬±©¸°¥µ±µ¶µµ®¬¶¬««µ°¤³ÈÔ¸©ÃÀÌÎØ×ÕÔÑËËÉÌËÉÉÎÎÏÒÒÑÏÒÑÑÔ××ÕË «°½œ‹•®¹¾Þ«#) ##<?iž™—“—¤¥¤«¢¥¬¤¥¢©¥¥¤§§¤§¤ ¤§ž ¥¢[V^QQYYTVT[VVn}‡—ž§¬³®®®¬°°¤›…eTB?JGYQ`YYYYTT^TYV`eYYe[TOOpà¹Ã »°‡prppg[^gOƒ‘ƒ…{y¤Vƒu“‹…‹‹—…™— •‹‹ °œ›¤¢›¤« «¢ž ¥«©°±¢«ƒžµ¤³«³©ž³°¶°§¢µ¤§¬¶³«°µ¢¬™œ¸ÎȬÁÁÈÎÔÒÑÑÎËÉÈÉËËËÌËÏÑÕÑÒÑÒÑÔÕÕÚÚÚ¤ž®¾¢‹ž®®³Îä4 &G& #?^ƒ™›—‘“™ §©¥®§ž¤¢ž¢§¤¢¤§¢¢§¤§¢ ž YTeOOT[^[YO[`gy…•¢§¬©°®¬®¬¬¢™•}gLG<BOQO^Y[`Y^V`VQYYYYT^`TO?wÔѱ˫³•¥‡ƒ¢ri^bVu‹‡…‡‘‡eru‰™‘‹™…‘™ƒ“›ž—‡—¢œ§›—ž®››¤‹“¤¥§±«® ‰¢©¥§±œ«±°§¤©¢±¤°™³¤©§±¥§«œ•¸ÈÒµµÀÀÎÉÑÎÎÌŽÈÈÈËÌÏÌÉÏÑÒÒÔÔÑÔÒÔØ×ØØ¾ž¤»•™¬³¢“µÞÔ .)#& ) )+#D<l‘žž•“›¤¢§©¥§§¢ ¢ §¢¢¤¢ž¥¥¢¢¢¤¥¥V[`[VTbV[`YY`l}‰‘ž©±±±±±±±®¥œ‘p`?49QOVYT`VQVOYVYY^YVYe^TO?§ØÃұñž«‘•—p^`O{‡‹n‡ƒw‰“bwp…‰“œ‰‰pƒ•›¥ƒ“¢¤›ž¤ž™®«¤«›“‹‡™“ž¥¢±¬« ©§¥°°°ž³ ³§³ž¬¬œ© ›œ¥ÃÑÀ°Å³ÉÑÕÑÈÈÁÀÁÃÅËÌÎËÎÑÏÑÒÔÒÒÒÑÕÔÕÚÚàÕ›¢»—›±©w¤Ìæ‡+)#1)D)4)+Q™™•—“ž¥¤¢ž¥ ¢§¤ ¢¢ ©¤¤¢¢¤¥¤©¢¤¢¤ TV[[[`VVY[beerw‡—¢¤®°±«±®¬¬¤ž—…bQ9<?DT[[TYVVVQ`^YVbYVT^TVB9‘ÔÕÃÈÀ«±— •‘rbJY…‹‰‰u}ƒ`rƒ—‹…‡‡‘uy‡“™›y}—™°ž¢›‘œ‹›—žœƒ‰—™p<“«ž¤¤ ¢¢¢¥«¤«¬§ ¤œ¬¤©¢¬¢¢—³Ëƹ¸¶ÌÌÉÔÑÅÆÆÉÈÆÆÏÌÌÏÏÑÏÏÔÔÒÑÒÔÑÕÕØØÚÛµ¤µ‘§“lJl¸Ýã))+4.&G# &1g•¢™•—™ ¥§¤¥¥¢¢ ¤¢ ¤¢¢¥¢ §¤œ `TYTVY^Q^Y^ebi{‡“ ¥¬«±¬°¬±¬§ž{iO?7GGJ`bYQTTTQ[[[VOT^YeTQD<¤ÞÉÏ±›®‡§‹}YYr{{}y‰`w}—‡‡‹‘i{‰ƒ y‹™›™•lTineTVp™l•‰•™gp¥§§§¬¢•‰“ž¢©©§—•žY³¤®¤‘ž½ËÁµ¸¾ËÈÒÌÎËÅÅÈÉÆËËÌÏÎÑÑÎÏÔÎÕÔÕÔÔÑÕÕØÛÚѤ±›¢iDOT¥ÒäÈ+&.#+&.Q…› •••›ž©¥¥¤ §ž¤¢¢¤ž¢ ž¤¢¢¤ ¥¢¤¤ž¢žY`T[T[[^V^[^^ly‡•¢§«©±°®±±©¬œ•iQG17OLO[VTYVVVV`TVQY^[TYVL?™ØØÉÌÅ—°™¥}±…¤u}pwwu……`y}‘‡‰ƒ…r}y…‹ž…u‡—¤—“‡V[ …rulbGlO‘®¬§•ub[p‰‰¥ ¢žžiž“œ§‰T)…œ™‹§ÃÏ«¹«ÌÒÒÔÌÉÎËÌÆÉÎÈÎÌÎÔÏÏÑÒÏÒÑÔÒÒÕÔÒ××ÛÛÚ«§¤yDTT^n¢ÉÞäY) && #+7g‘žœ•“›¥¥©¤§¤§¤¥¤§¥ž¤¥¥¤¤¤¢¢¢¢ œ¥ ^[VYYYT^^OYV^l‰•ž§±°³³°±¬«§œ‹{iO9B?GLOVVbVV`V[^V[TYVYY^GD9áÎÑѻްw¶ƒ§‡nirg{y…pr“‹‡ƒ‡…yp………‘ƒ—›‘›‘by‹wuinYDO °«¬ž{‰p…ƒiT{™³‘ri7i1rw #¬—§Ë½œ«°ÆÀÌÌÑÈÉÌËËÎÎÈÌÌÎÏÎÑÑÑÒÑÔÕ×ÒÒÒÒÔÔØÛÔ³ž™OLQTYg‰»Úá½#&+)+)+Q}•›•—œ¢¬«§¥§©©¤ ¥¢¢ ¢ ¢ ž ¢ ž žY[bYV`O^i``^iwƒ…››©°µ¬±³±®®¤¢gJ<7?DLYOTT[g`YQeV^VT[Y^YLG<{ÛØÏÆÒµ½‘¬{œ‹§•eg`ylu…pb{‡…‰‡‹…p}‹ƒ}‘‰“œ‡r“•‘‡peeb?1179¢—©§‡•‰rbOYe?TL7<)+?½Ë©¤¤ÀËÑÎÌÏÉÈÌÑÌËËÌÌÉÎÌÑÑÎÑÏÒÎÑÕÕÒÕÕÔÕ×Ú¾¥…^JJLV[^…¹ÏÛØ##) ))Ji‘›“•“™ ©©¤«¢©§¢¤¢¢¢¤¢¤ ¢ ¢¢¤ ¥¢¤¢ ž^`[[^`YV[eb^[l}‰› «°°³±³°±««ž‘iQ7.BJBYT^Q[TY`T`TVVTVQTOQOBgà×ÁÒµÒ«°yp•™pg`n{pƒlYwp‡‡}…•r}‡‰ƒw‰•‹…‹r{‡›b^e`TYlGQ`‰œ““‡D7<<+e‹)?7)&+ #Q¹È™ ±ËËÎÑËÒËËÉÎÎÌËËËËÌËÏÏÑÑÔÏÒÏÕØ×ÕÕÕ×Ô¸l[TQLOYY^‰³ÅÕá & #)#&+ D—••“—¢¥¥§§§¤¥¢§¢§ ¤¢¤› ¢¢¤¥¤¤¢ œ¥ž ¢YY^`[[^eTYe^^ny—¥§°®±±°®®°§ž—}nO<.DGJQ`Tb`VT^TYT^[^YVgVVGGQäÏԽع̙™}…ƒuplgl…leinƒƒƒ‰‡‰rƒ}u‰‰‘giwi‡iu•{n?VnT{™VGl.)7g.4BV Dguû‰›ÁÏÑÒÎÌÉÌÈÉÉËÉËÎÈËËÌÉÎÏÎÒÏÑÌÎÚÔÔØØÒžpQQQYVVOL`n“¹¾ÌÛÁ# #&&##+Y—••“™§°¤¥©¤¢¤©§§ ¤§¤§¤ žž¢¢¢¢¤¢ ¥ žYY^bgYYTYg`Y[py‹“¤©°¬°µ®°°°¥ž…nTJ9JGTQbVT[VVVbTYYYYbTVQYLB7ËÛÌÚ¾Õ¸¶ywb{…lil{{bip‡…ƒ‡‹ew}ƒ…‡y{‡ƒ…il…ƒ}}b}yeg…yb7GGJOy`rD<DT7G`JOe+#¤Ë¥•žÀÏËÒÌËÎËËÌËÉËÑËÈËËÎÉÉÑËÌÑÑÕÒÒÚÕ×Ô…^LOTQL^OT^`‡žµËÎÎe )# #)&+1yœœ••›¤§«§¬§¤§©§©§¥¤§¢ ¢¢¢¢¢¢¤¢¤ž¤¢ ž V[i[eb^`T[V[`p‡™¢«±³°°¬®±®§¢‘}iL?7DGOLTQYYQTT[TeVbOYQVTVT<7ÁÒÛÃØÀÈ“›n[©…™uyƒiQln‘‰‹}ry}ƒ‡}{‰‰un‡‰‡wb‰w}L.+)+)+9^e‰gyi‰uY•+). .7¢É—p ÏÃÈÆÈËÏÌÆËÉÅÉÈÆÎÌÉËÉËËÏÎÏÒÔÒÎ×ØÔ¸gQTQ[QLQ[`gy•¬¹ÌÌÎ.+# .#))#&Y‡™›‘› ©©«©§¤¤¬¥§«¤¤¤§ ¥¤ ¢ž¢¢œ ¢ž¢¢¢žbeeee[Y[YV^bbl‹•œ«¬®®®³«°±¤ž‘eQD?7GGQOLY`VY^VTYVYVYTQTVVGDuä¾ÚÁÛ½¬{™‹¢n›yn^^u}…‰ppyu}…uƒ‰‰r^}‘w{^ybJB<J1#974Tp…ugLGe7•e<L++ƒ Y¸Á…p¢ÈÏÈÅþÆËÈÆÆÌÆÁÈËÃÌÃËÌËÌÌÌÑÏÑÌÑÒÅ“OTVVTQTQw…œ ¥¸ÈÉÚQ#+# 7.)+<r•“›““¤«¬¬©©«¢§©§¬¤¤¢¤©§§¢¤¤¢¤ ¢¢¤¤ œžœebb[^T^^[YY[buy•œ«±µ°°®±°°¤ž‘eL<7<GbQVVVY[Q^Y[[VV[YQV``VT4TÚÛÅÔÀÒ• ƒƒ•…‘ƒY`rp‘}}…‡n}}{{ƒƒwyƒ“‡‡}y`…ƒ‡ur[D7+?`Q<&#?“Yƒi&##VrBJr9 )r`±µ‰u«ÀÉÆ¾½¾ÃÈÈÈÈÈÃÃÆÉÅÉÆÉÉÉËÉÌÌÎÑÒÑÅ}Y“‰w`YJQbw‹ž ¬«¶»É×^)&& .Y#L‡œ›—‘ž«««°§¥§¤¥¥¥§©§©¥¥§¥¢ ¢ ¤ ¢¢¤œ¤œž—ebbbb^bbb^[bgly•ž§«®¬¬±«¬°¤›•gOBBBGJGOYQVT`LQ^bQbVgTV[YYO?9ÑÏ׻ҵɕ‹p›…›‘`Orr‹}……ƒpnw{uw}ƒ‡wl‡…‡……b‡‡{^J+#?u`9&&)#ƒyi 9)O‰.J< n¹©‰³ÎÆÆÀ½ÀÅÅÃÈÅÆÁÃÆÃÆÆÉÅÆÉÌÌËÏÑÏÏÉ‘Gub‹›lpy ¥®§§¥®¶È×O )+#+.# #1L)+)r‘›—¥®°¬¬¬¬¬®«§¬¥§¥§¢¢§¢¤ ¤§¢¤¢¤ ¢ ž geY[i`b[Y^[Vely‰•œ©«°«¬±«¬®§ž‘bT?<<LBJT^VTb[^VVT^^TVTVV[[TD<áÁÕ»Ò¶¶›‰§rgbl‡ƒ…ƒ}Yy}…ry{u‘‰ƒƒ‹™npƒT?+)gy+ 1 ^…T 4•LGYO&yB&…¹žyƒ½ÏÌÉþ½¾ÀÁ¾ÀÃÆÅ¾ÃÆÃÈÉËÈÈÌÎÎÎÔÌœ<bJyp——¥¤ ©¥©§±¬¬¸ÈÛ`#1))1#+ ) )[œ™›“®««¬®©°®©¥¥§©¥¥¥¤«¥¤¢¤¥¢žž¤¥¤œ œžœle`bbebY^^`beiw‰— §±°°«®«®°§žƒgO?19OGTY[YVYVYV^`VQTVYVYYVVG?VàÕ½ÔÅËÅœ¶…¬[bwyƒ‰…rYrwyw{ywg……^Qu…‰‹lOY9)+lL#&)<)#{eJ9<‘g?[7# ™#‹»—rÁËÏÈÀÁ¹ÀÀÁÀÀ½¾¾»ÆÀÁÅÈÌÈÈËËÎÏѰ^1ƒw`nn“ž§ «««§®°¶ÀÎØ} ))+#4 +# g›“™“¤®«¬©«¬°¬©§«¤©«©¥¢©§¤¥¤©¢¢¢¢ž¤ž¥¢œ ebib`beYY^VY`p{‡•œ¤«±°®°®±®¤ž‘lO<7<QJTVJQ`[TVQY^TL^YY^`[YYLBGÒÎÚÉÎÈ›¹¢³‡ Vry‹‡ƒ`wwy}w}{rw…w`<uuT.7[O71+)J #iy..&…GY`…¥™±‹{‘ŽÌÎÆ¾³¾ÅÁŹÀ¾»À½¾ÆÆÆÃÆÅËÌÌËË[#V[4“‰ie“›¥¢«¬®®³¹ÀÈÕƒ . +&+ &#&B{••‘‘—§°¬¬¬«§®¬««©¬®§§¥©¥©¢¢¤¥¥ ¢¤¤¤ ¤ž œ^b^b`^`[^[[lYey‡“ «¬³«®®¬®®« ‰lT4<DGVOVTVVQOQ^bTYQ[VOb`b^[V[OräÑÔÔ½§¬Á VY{uy…rY}{…lwiypy‰‡…g[rTDLDB4OQJ7+ [G1G{.+&?QQT?¬¸{y“ÅÏÌÅÈȽ½¾¾À½½½¶¶½¸»ÀËÃÌÉËÆÏ̸V`yDbžu…y‹œ—™©¬±³¹¾ÎÈg& &+#)+ )#&#^‰—••¢©©°®±¬¬¬«¬®©¥©©§©¤¢§¥¢¥¥¢ ¥ ¢¢ž¢œ¢œbibpgb`[bYe[Tl}‡• §°®®®°®°±¢ “pQ719JLLLVLVVTTQVT^TQVT[`[bY^VJLÏÛÚËÃ¥µ®¸¥Tb}yrl}uƒyyuyyp…‡‹w^#&4JV7GTV9<QlV+9&.Y<4l1l¤žœ}yžÅËÏÌÈÆÈÅÁþ»¾¾¹¹¸ÀÅ»ÀÈËËÉÈÁÀ°pJGT<l{^{™r‹e—ž›«©±¬ÁÔ¹ +4#B)+ ##.&#<l…•©°¬©«±«¬©©¬©¬©©©§«§¤©¥§ ¥§¥¤¤¥¢ žžžž^gilpi``T[^^[l{‰‘ §©®±¬±°³°¤›“ƒlG?<?GBQTTT^[V[VVV^TYYV[[`i[YYTDbáÑÞû±¹Æ—`ƒ}wuep{…u}pu‰…p`eygnQLD14gG?#1yn +b ))+# 7}™w9i‡yg¬ÈÎËËËÉÃýÀ¹ÀÁÃÁ¶°½Ã¾ÁÅÆÅÈÃÀ¾ÅÀ¬[<QpG`bT—ƒ{i —¤°¹ÈÔ—&+ #.&9+&1&)+)9L{‡‰›®°®±§°§¬©§«©¬¬¬«©§©©§§©§¥©¥¥¢¢¥¢¤œœ gig^`bb^V[LQYeuƒ“ §§±±±±°±±°ž“ƒnL7<?DLQQL^Y^YYV[YQTV^^V``bb^^QOD›äÔÃË»Àµ[ƒ‡nƒpry}{…}ynll‰ƒyyrwV[D1<b`74yLD4).##7w+›e™—7i‹ËÅËÈÈɾÀ¾½¾À½ÅÁ¹³¶ÀÃÀÀÃÃÁ»¶ÁÅÆÀ°QD9…Yg^iœ}››µ¾ÑÃu &&&. &+.# +..?b…‘…{‡ ®®®°«§«¥°§«¬«««©§¥§«¤ ©©«©¥¥¤¥¤¢¢ž ebibb`b^TYVQQbr‡¢©±°®¬®³¸¬®¤“gO<9<DTJOO[^QQVV[V`V`Y[[bb`gbibQJLÛÑÈÌÅÌž`œwg{ruw}ur…pVgQ1Y<JLQ`L)#&Ou)`&+#.DTOT#`Q7e}‰L¤¤ÃÆÆÃËÆÅÁÁ»Å¹Ã½¸¸½µ½ÀÀÀÅ»Á¾ÅÅËÉŸ“bOY?•pe[‘“™§¾È™)&# ##1& .#+##)))1B{‹…‘§®µ®±¬«¬¬«©¬«®¥«««§§§©¥§§§¢«¥¢¥¥ ¢œ¤›begg`Ybe^[TQQ[w‘¤¥«°°¶³®³³® •‰lO<+9<DLOTTTVYVVV[TYYVb`e`gl`gb^LD¥ãÏÅÆÒžƒ{wlpn[n}…pubiwƒƒ‹pp7)LB<VGlg9)#))OB?&p#) +79))T.J4nQ•¤µ°ÅÁ½ÁÅÀ¾¸¶¸¸¹¸¾½¸¶µ¹½¾»ÃÅÅÉÅÈÈÎËÅ©‰TTG7‹OQ7•‘‘ žƒJ &&+)))))1####Tƒ‰‰ƒ›®³±®¬««®®©±¬¬§§¥«¬««©§¥©©©©¥¤§¥§¢ ¢œ eeg^^g[[VT[OQbn‡•œ ¥®³°®³°±©ž‘pOB47D<LLYQVVYTTOQV[YY^^e[blgbeYTD‡ÞäÎÌȬ‹yyp^l{w}lby…wyrQiG9B)+<7VYD) <77`V9 # 71GJYQ}}•›°¾»¶ÁÀ»¸¸±¸½µ¸µ½¹µ½µ¹»ÃËÃÅÃÈÉÅÉÉɹ•gQ.11e9…“‹œuT #&.+)&)4. +# 7Bp‰‹y‡ ®®¬°®®¬°©«®¬¬°©¥««¬§©§®«§¢¥«§¢¥¢¢¤ œ¢be`bg[e^[[YLG`l“—¥«¬®°°³°°§¢•nT<4B7DTTQV[[b^`VTTYY^^b^enggll^VD{àÚÛÎϽƒyyywbwwuu`…yurVre`494&.1eL7G44#?.&pi?&&#)& 7T{O^^œ™«°¹½¸ÀÃÁ³¶¬³¹¹¾½¸±¹»¶«ÁÀÅÌÆÆÉËËÈÆÏÆ½™nQJ.7QG7‹ ¥•n9 #+1)#+9.+9))## +.Y…‘…ƒ‘ «°®®¬®°¬§¬«©©©®«§««¤¥§«©¥©¢§¥¤©¥ ¤ž¥žiig`[b`YYQYJObyœ¢®µ¬³±³°±® —‰rQ919?GTOYTTY`[VYTYOOYY^^`gell^[YJyÞÚàØÉƒep}ynyuwber‡ƒƒ}r^B[B&QJ#&DLT?^.D4V‡^ #)# +O‘JJl…¢®À¶¾¾ÁÉÃÁ¶«³³¶½Á¸µ§¸®³ÀÉÉÉÎÆÉÆËÉÌÈÈË»©Q?9uQT‘“‘œ—}.4&1)11)+#<# Dp‰“‡}ƒž©©©°¬¬««©©©¬«©¥««¬§©§©¬©¥§©¥°¥¤¥ ¤¤ž›œgg`ige[```VVL^y}›¥©«°°³±°°¬ —…nLB77OGVT^[V`[YVVVV`Y[``egnplli`QB}ÝàÕà±nVr{nwuug[l‡}‰nnY&+.b&&&DV1?T1 B7B}‰. & `{<w°¢Á½»ÀÃÅÅÀ³®©©¬µ¾¾¶¢¬¬»¾ÁÈÌÌÏÉÌÈÈËÏÎÏÈÁ©[?4)O?[›œ¢V& #14.G97)## )Y}™…“¢¢©««±°®««¬©«©§®§«««®©¥§¥©©¢¢¥¥ ¥§¢¢¤¢ž^b`b^bi^VVYTG[rœ¤«¬°°±°¬®©¤•…pV<.?DLLVV[[`Ob[VVV`V[bb^eelglgeVLeãÚÚ݉[[inglullryu{i}wY.<?# ##YL4JD4O)Q“l[Y&Y¢uJu½¬ ÃÀ½ÃÉÌÆ½±®«®µ¶Á½°©®¬½»ÁËÆÈÏËËËÏÏÎÏÑÑȱ‘bG9YDBœ‹§¢O ##++441 )#4i‹“ƒ‘™¢› ¤±¬®¬¬¬««©¬©©§¬¬¬¬©¤¥©¢¥¥¥©¢¥¥ ¢››[gg^bV`Y^`OOO^uƒ‘ ¥§¶±®µ¬±±©œ™…u^79GDJTOYV`^YY`^TVV[``^genppeee`^VÕÞÞÑ``b`eunwiyy{euinugi.e# &+T<7D4?V1 žV4J7 T¢…iy¾¤©‰›Æ¹¬ÅÅÆ¾³«««©½Á»§œ©§±¾½ÁÉÆËÎÎÎÌÎÎÔÕÔÔϽ¤gG< 4Q1›™µ ?&# ).917?+ &4)J{—‰ƒ›¤¢žž¤ ¢¥©©°«©©«®§©§«««©§«§§§¤¢§¥§©§¤¢ž¢™bebeg```Y^VVTepž§©°¬°¬³°³«¥ž‰pYD.BBJQTOYbYVV^Y[[^^[`^^iwglgeglYL®ãáÀigligpeVw‹pr}gQT?147&Tb#+# #7D4<7?J.•[ 9®…[‰½µ«©—‹µ¶§ÈÀ³¶¶³¬©«»½¢¤µ³¾½ÅÆÑÌÌÎÏÌÎÏÒÔÕרÑŧwV?97y¤¸¤B9+). &.9)7#& ##+&b‡›‹}•¢«¤œ¤ œ™¢ §¥¬¤¥«©§§«±«®¥©§§©¤¢ ¤¥¥ ¤¤ž›œV^i[le[`^[^VT[n‘œ¤¬«±±°±±®±¢•…n^L4?9DQLYTe[^g[eV`YY^V`eÁebppi`eeV{çä©l`prn^Yy?TJ?T& G lB?.1&&4.&Ye?)T‰&©by»³¬¬¬ž™»±»Ëƾ°®±µµ¶±“¤¢«±±¾ÀÈÃÈËÌÌÌÌÎÒÕÑÕÒÕÑȵƒ`J&L7 «®b)9 ##)+)+1<<4+ #&+y—“‹‡—§«¤žžžœ›žœž ž ž¬§§©§«§¤©«¬¥©¢© §¤¢¥¤ž¤ž ›eb^e[`b`^`TOOYp…›¤¬°°³³®µ°±¢•…u`GB.?JV[YY[^beYb`Y^[TTb°niplnepnillÆä°`lnnuY}yu‡uibO9&r79<.)7)9)#4uL)• +œ—ywÀ°¾µ¬¶ž›À¶¶ÆÉÀ°µ¶±³§“•¥«©°¹ÃýÆÌÌÉÎÎÎÎÔÒ×Ô×ØÑÆ½—g?##D ¥¥®w+ 7)&))+.1<9&#&+..D‘‘‡‘¢«®§¤¢ ž¢ œ›œ¤ ¤ ¢¥¥¥§¬§§©§¥¥©¢¤¤¢ §¤žœ™b`e`^`[`Y[YTOepƒ‹™¤°¬³³®®¸µ©œ™…`J7GJJO[`[[^^YYY^VYYebbriiirnlippgYwçÏipi[nwrlƒw}``B.#&9Y47) ))#.1QY9gL.µu ‘ uy¶¾³½¶¸»¬œ°±¾ÏÒ¹°¸°«¤›ž§®¬®»ÀÅÃÅÉÌÏÎÏÏÏÔÕÔÕÕÕÔξ gD494›©µ`+#&+.).)199<7 )#&) )`‹—…•¤±°¤¤¢¢ž œ ™™œœ› —œ ¤¥§©§§¤¤¢¤¢ ¤¤ ž™œ™ee`g^TYbQ`VQY[l{™¥§®³³µ³µ±®¢“‡wYLGJQQTYYVb`b^Yb`bVVbVgpiiinlpniplbbÏÔyrgew}w{‰{^T[&1O?V?L9 )##?.n47O+&®L °ur©»®³¾Å»¾žœ°«ÁÏȵ¬©®›™ž¥««®«¸¹ÀÆÈÉËËÌÏÏÒÏÒÒÕרØÚÒÆ¢uQ< ^b¬±^G##+)194)) .7G•“‘‰›¬¬«¬©®©©¤¢¢¢¢œž žœ—œžœ™›¤¥¥¤¥¤ž¥ ž¤¢ ¢›ž›™b`^e[[^[TVVQDYn}›§°³³³µµ³³©œ‘‡p^BB9QLTY``^Y^Y[eY`^[Y^`npiurlywnirnØywYgƒ‹y}ƒ}e7.wl&r) LB&+#Q VG4Gƒ i¥u}™±¬¶µÅÃÃÙ‡¹¹Èɹ®¤±“žœœ©©°°°³½»ÈÃÁËÉËÒÑÎÑÔÕÔÒØØÚÒÌ«‡VJ& #OB±¸V)&)1#++)4+4) #1) O‰—‘‹“¤®±°¬©«¬§¥¤©§¢¢ ž ™žœœ™ž›››žœž¢ ž ž¢ œ›ž›^`eV[`Y[[[OTLbwƒ‘•ž¬±³µ°³®³¬¢›‹n[<9<LT[YbYYYbbbb[`[^[e^npngiulpu{uny}žgubƒ‡{‘}w{Y9G <?#&+b1V.)+44<#&1L4 ‰Y¢…g…¸§ «½ÆÁÈÁ©y±Åɸ« ¢››™¥¢«®«±±³¸¸ÅÆÉÆËÈËÌÎÎÑÒ×ר××Õϵ`V?#B4©µg7< 4#.+<9.41& )##+# <w•ƒ“¬«¬¬«¬¬§§®°¥¬«©§¥ ¢¢•—› œœ•—•œ•™œ žž ¢ œœ›[`Y^e[^VYeYOOVp™¥³³°³°³¸±¬ž›‡lVBGDDOT[`T`Ye`ebb[^`bb`bnplbbeg`Y[}—JJw^ƒwƒyƒ{^D YQ?g+&Gn1)+T.)g` 4›ƒl‰Æ §¤§³ÃÃÅÅ»™¶Æ®®©œœ¥¤œ¢ ©¬°±°¶³»ÁÃÈÉÈÆÌÈÏÎÎÏÒÒÕÕØÒÏÁ™iL?#)7ž¶‡O).#.)?79.## .+&#Q“•‰™§«®©©§§¥©«®¬©°¬§§¤¢ ›™› žœ™›———““™›œ¤¤œžž›™^^`[V[`TYY`GL^p…‘ §°¬°³±¶¶®¬ “ƒiVJ4BJDYT^^^[YVb[V`[^eegelpppnnlrww•4[™‰^yr{‰ƒw{lJeG[Y4#4+?w)) .r^+.ƒƒ{Vyç©« ¥®ÆËÁÅÁ¶Ãµ°°™¢«¤¥¢¤©®¸°±³³®³ÀÁÅÉÆÈÅÅÌÌÎÏÏÔÒ×ÕÔÑÉ¢iTG##9{±™V+ .D471.?91.+&&&&l‘ƒ‘ž«©««¬§®«©§¬¬®°°®©§§¥ žžžž›—›•™›—™••™œžžžœ›œ[^Y[`Y^VLVQQQ[pƒœ§®±¬°µ¸¶¶± ™‡l^J4DDLVT^VTYV`eYY[^V`egiirglprrrpl®ƒÁ—luƒ…wn}Q+^4Oe)))OuL<#4#yi+`# gžOb½µ®¶µ¬§°ÅÈÅÈÁÀ¹¶‘‘•ž ¤¤±§±³³¶¸¶³¸»½ÁÆÆÆÈÅÈËÎÏËÒÕ××ÑÑÈ¥wT1 &1¸›B9)4G< .4<4& &&9++Dy‹…™¤«®©¬«¬§««¬©¬©³°¬¬«¤¤¥¤ž¢œ œ™™™™“™““‘••••œžœbblYYYVYYYTTG`i‡ƒž§°°°±±±±®«¥“‡nQD7DJBLVVY[i^Y^`[`bb^^ggepirnliu°ž¥+1Jp…ƒ{i}l#^ƒ ^p+&D7#?#+#?n1u<19¤p^±Á®±¹µ ™¬ÀÉÈÈÉÀ³?Bnu…‹‘›ž¬°«¶¶¶µ®³µ¶¸ÀÈËÆÆÀÆÉËÏÌÏÔÒÔÏÌÀ¢u1 Q^¸ ^9&71J449T9) + &4&#T…‘…‹›§«¥¤§«¥§§«¥©¬®«°«®§¥¥¥¤¤¢ ¤œœ›œ››™™“•™™•—•“V`[^^^Y`^YTYO[l…‘›¥§±³µ³³µ±°¤—‰u[T9?LDOQT[e^bi^[`[^Yb[`eerpnrrlµÏgL—œ¶re^e #[9b1n#1#.)+#)<+D.&?‘ƒQ“É«µ»Èµ¥¤¶ÆËÎÉÈDLY^Ob^[nw¤±¶¹¶³³°°±½¾ÆÅÅÀÃÈÁÆËËÌÑÑÑɶ©ƒ^.#^.Á¤} #?B&)<?B.)# #&) #.e‹‘‹ƒ“ž«§§§¤¥©§§¥¤¢§§¬©«®¬©¢¥§¤©¥ ¢ž›ž›ž™“™‘““•‘[``[b[bV[[QVLVl‘› ©°°³³³µµ¬¥›‹lTBBDOJ[Y[`[[^bbe^^b[```plllurrwµ¸b#L‘½ÉyJ4D#7eY…{ #4?4D+. 7i94L}¥Q}Á«³¸ÈÌ®¤¤¾ÅËÌÃwu‡‰‹{pgQ.7<Lg¥³±±¶¶®¬µ½ÅÅÆÀÀÃÅÆÎËÌÑËÁ«‹w`G+&G#¸±‡.D.744+1 .1###?n‹ƒ—¢±«¥§§¤¤§¤§¢¥§§©©«©«¤ž¢¥§¤¥¢¤ž¤ ™œž››••‘“‹‹b[^`bV[b^^YQGTlœ©®³«³±¶³°®¢“w[<?JLJLOT^lY^V[T^Y`Y[`eiienuw}ƒ‡›—7D“Oi+?O#9LQ )?Y4‹L9[&T4 LTu[ J§nrƬ°¹Åν¤¢³ÅÉνn}——¢•rVD?1#B^—¬¬®§«±°½½ÃÃÁ»ÅÆÁƾÀ°“pQO<LTJG4¶©‹7&&J9997+)# ++# G‰‘‹‰›¬¥«§§§¥¤¢¥©¤¢ ¥§«§«« ¤¥¢¥¥¤©¢¥¢¤¢ ¤œ™—›™“—‹^Y^Yei`Y`V[QJVl}“™¢®±¬µ±°µ¶°¢›‰yT?BJJDQV[[```V^VO^V`bbb`[gruœ‰17Oƒ??i9)4l`#){L—B7 +`. [‘J&—™i°À«¸ÁÏα ±ÃËÑ©e}ƒ‘“l¤™y‡JJG?B<Tƒ§§©©®±¸»ÃÁÁ¾¾Á½¾«YO^Lb`‰riT)&4 ³«‰Q)+D.119)#&.+.+&[‰‰‘ §¬¤§«¤¤¢¤¢¢¢¤¢ ¢¥§¥¥¢§ §¢¢¢¥¥¢¥¥ ž¤ž›™™••Ye[[gY^[[YYODTiy‘™¥°±±°¶µ¸¹°¢œ‰uYD7LLObT`b^Y^Y[YV^TVY^bbgbeœœ—‘‰Ái‘Gg}“w.L ?ui4<[g{< T #gY.eƒžg¥É©±ÁÈÏÅ«§ÀËÒ‰Tggnyl}DO•‡QwDlgYVY[r•™›¥¥¬»»ÃÅÅÁÁ¾®®g[n{VipgO?G&D ?¤±‡Y#&.#<77#. ##).9u‹‘‡‘¤§¥§¥¤¥¤ ¢¢¢ ž¥ ¥¤¤§©¥¤§¢¥¢ ¢¢¥¥¥¤§¤ œ œ™•‘‘Q^[^`^Y^[YVD?Tly™¤®³µ®±µ±³®¤›‹p^?7?GDQQV[b[[YVVVbLY`V`biy…• ›•“Á¾¬©‹bDQ#7#Lg‹TOlbVu Q )`u& #41§b}Ω¬¸ÈÏÔ½°µÆÔeJYY[<4DD#e<4LwByugip› ›§°ÁÅËÈÁÀë‡wG9#++71171D¤¹ui4199) ))#V‰ §¤¢¥§ž ¢¤¢¤ ž ¤¤¤¥¥¥¤¥¥¢¤ž¢¢¥¤§¢¤¥¢œ›™ž›œ›™“‘Yb^^[VVY^VYODQn™ ©±³±»³¶µ®¤›‰w^GJ9?JQTYYY^[^YTYQbVYVY•¢•œ—“—™uržy9LLT—<.JJuD`Oe#1‹i +œ‡^Å®°¶ÃÏÑËÅÀÈÒTB<4+)#&##1e‰wnynƒ“œž©µÃÅÈÉÉÅ»›pY< )&#.9< B¥¸pL 1B7?1#+ +)`‹“‹‹œ¤§¤¥¤¢¢¢ ¤«¢ ¤¢ ¤¤§©§žœ¢¢œ¤¤žž¤¥¢¢¢¤™ž›››——•••[e`T[[TVQ^TJBBeœ§«°°¶µµ³°¬ •‹rYT<9DGJJ`QeVVVYVV[LLLQu¥ÒÅ…‘—•™™œ•l7Jg7}YJp`e<pB‡QbT^ ){7 & Yµ` Ë«¹½ÀÏÌËÆÃÏT+9&)#7D g…y}uw‹›¤¶ÁÈÉÎÎÀ¢O).&))+ #< .Bœ»…g?D&117#&) )i•‘‰‹›«©«¢¤§ž¥ žž›§¢žž¤ž¤¤¢¢¢¢¥¢ ¢¤¤ ¢ ž ™ ™œ™—™™™“‘TQ[QQQTOVYO?<Dgy—©®°³±µ±µµ¬¢™…uV??9GLJOYVT^QOVQYTJGBgյ؃‰‹•ž“‹“V J )^Qi+[JTL¢J&Q1Qe?#9wL#™lѬ®¶ÃËÔÉÅÎÎQ9&1#<“ g)4nƒyw‰‘• ¶ÀÏÏÔÏ¥#++ +LV &)&#J›À›Y?47G.. +#)7— §¥¥¤¢¥ ž › ¢ §¥žž¥¤ ¤ ¤ž¥¢ §¢ ž›™›™••‘•‘‘T[YTQVOOOL?T<D^}‹›¤°³±±¶³³µ¬¤—‹uYG79DJTLVTV[YYTYQOJG?ƒËÁ½r…—››[JQ b+ƒ 4pbiƒ. 9 Ji ##49[ u¥V¸¹¬»¶ÀÒÑËÏÎgDJ1 11)TT¶Ò¹§7?)bynl…—¤©ÅÑÚØ½G##¢9«‹B&#)#J“¾™TV779.1 &. ^…—‘‹•¤§¤¥¥¤¥ ž¢žž› ¢ žž¥™žž¢ ž œ¤¤ ¢œœ¢ œ™•“•“™‘‘Y^VQ^VOVOGBG4Dgƒ‡›¥³°¸³³µ³¶¶ ™‡wV<9DJTY[Q[^OVV``TOQGBQÈÅ»“‡“••™b›J Bw. .n9QTTw& &)™&?+œ^“Ñ«¾ÁÁÈÕÏÑÔTJ.& &VQ+[w&¤ÏÉÈ•1OeJrie{ƒ•¥¶ÉÝÞÑn4#<++g<¹§V)D1#`µ›Dg7B4.)7&&9n‘‘•‘ ¬¢ ¤¤ œžž ž œ¢žœ ž™¥ž ž ›œ›™žœž™•™—•‘‰‹‡Y[[O^QTTQJJ?7Dg‰™©°³³³¸¹¸¶±¤—‰ubD49LVO[[[^Vb[iV^QVLBÅJuÈ»•“™‰Tr4+G.V J 9‰Glw# ‡?#lrgưœœµÆÒÔÉÑž^lbDD)+V{7QO[97ÏÔØÔ½e1wJg`ln{ƒ‡›¤»ËÚØ°Je)^V1n<O¶žp) b¶ DiD[#<#&&&&#&?y““‹‘ž¥§©¢¢§¢ ¤›¢œ›žžžž¢œœ¢ žžžœ›ž›œ›››ž•™••‘‹‹ƒ‰“™ bY[Y[[eTTLD?1B^{œ¥¬¶µ³¹¸¹¶³¥—…u[L4GBJVV[b[[bOebli91§r“¶ØÕ¹ # 4b<)91)?+1V•[} # +VJ + 4“J“° µÅËÎÏÌѤ^iyyni[Opr1&)G¬ÕÕÕ˵Lwlelinu‡™©¾ØÝ݃bw4i^J?©±›e4&)ii¬¢O[DT+) 7 7&#V‡›• ¤§¥¤¥¢ž œž¤œ¢žœ ™¤ž›œ ¢¤žœœ——›—ž—›—‹‹‰‰™ž§°[e[VT[`TQQD?1Gew›¢®µµ¸¸µ¶¶±¤›‰pbLB?OT[YTeg`[V`[n&1+O•›«»ãö×&D##eJQY#7VBLe[epBw“+)74+7 # 9[bÌ™µ¹ÅËÑÏΧeneu}…p?4Ypy{`w°ËÏÒÒÌ•‘`gnrryy«ÉÝáÕ{T›rTB`§»±™`1+)+&V V®¬`LTbB#&&#).&#g‰›«¥¤ ¢¤ ¢ žž œ¬¤¤¢¥¢¢¥ ¤ ›¢ ž ›™••“••‡‰™ «¬³¾YV`[V^[OOQO7<Dey‰›§±³µ¸¸¹¸¸±¥™ƒ{[JJBOGY[`e[e`}+#D{‰›«Ã Ýæ“7&w7‹r <)YO7Bp‘YG.#.+Gu™[µÈ©µÃÎÒÑË›Vru{yƒ‘‰‹y`[4r‡—œ¬¸Ãɽ§›‰piwulnuyu‰—®ÅàãÑ{[Qr“§±¶¢wT .& +#)#&T+Y«»nTTB1##&+9{‹‘¤¥¢ ¢ ¢ ›ž¢ «ž œ ¢ž››› ™™™•œ™—“•“‹‘§§«µ¹½ÀÅgbY`YgVOQGJ<4?Y{‹™©®¶µ¸½¸¹¸¶¥œ‰ubJ?JVV[bblggb¶ #B…¤‘žœ«—¹J.G^^{“TDVbgOJJ`¤Jw{+e+ +¢O…Ñ«±½ÆÒÒÌ“Vi{r…‰‰‰‹py{`^euƒœ—¥¥§°®³“{yupnuy‡‘¬ÁÞäγ«©…‹{›¢‰rO+OB&)G).DO ¾…BVB?###.+.V}—‰‰‘¥¥¤¤¢žž¢¢œžœž ¥½žœ™¤¤ ¥¢ž›•œ›•‘›—‹•‹—«°¶¹¾ÁÁÆÆ[``bVbOJLD?D17[w›©±±¶¶½½¶»³« ‰{`GBDQ^^[ige`g±#i‰¥œ…ƒ±§77?# )+B…)b)OpJp‹u‘e`L#1…Q»¶³»ÀËÔѤD^w}‰…‰‰‡‘‡‰}b{b‰lw›ž¥™…ulr}pww…¥¸ÛæÒ®¢—‹}ll[Q&&LJJD# 1DO&DžÆ“O`O))&+) 9l‡‹‘—¬«¤¥ž ¢ ¢žž›››ž œœœœœ¤¢ž››“—••••‘•‘ž¢°¶»ÁÅÅÆÆÅÅ^b`eVbOODJG971[{‰›§¬³¹µ»»¹Àµ©œ}bL?DOT^ggln`b`y‰{y•œr1TOV1 7§‰JlJB+Q9GrJ+yg{y—#####)#Y©YnÁ©»»ÅÑѬDO^w}}…“—‘‹‹“‹{ƒr{…}p“‘™—•—}ny{r{p}‹ ÁÚæ×» —‹ƒw}y}pJTD[OD#& # JOJ Å—[O4)1)+L‹…§© ¥¢¢ž¢ ¢ ¤žž¢›ž›¢ žž› ››œ‘œ•““•‹‰¢«¶ÀÃÅÈÈÉÉÈÃÃ[^Y[VVVQGLG7)?Vp—«°±³¸»¸½¸¸§ }`?4BLTY[bb^^Vn¤‰¥©§}VJO9lO ))7¤™‹‰‰?)#T9ipBYB{y“…Y) & ‹ƒ^®°³À¾ÑÔ¶7Legw……‘‘—™—“™‘‹‘‰‡‰‹••—œ¤¥ž¤—yw}}wwu¤ÀÕã×¾µ¥œ‡uwV^`^VQ&.# 1<?žÁ‘^1D1)# <)G‰‡—§¥§¢œ¤ ¢››œ¢žœœœ™ž™œ¢žž™—›››———‘“‹‰‘§¶½ÁÉÉÉËÈÆÅÈÅÅ`[^OTOOODJB+ &O…“¤®°µ¹¹¸»½±©ž‹}^?JBQOVbbee`gb¥¬‰rn<4<nY)4119LeureB#4G?)}G`lY 4^7# & # g¥Yyž»ÁÎÕÈ&BVeny‡“——•™¢¢œ—••—‘ž›¥¤¥¬©¢§©‹y{…pwww…ž¸ÑáÛþ®¥™™}ywrbgleY#+ #.&O#<©Å‘b<G.##. g‡‰ƒ“¤¥¢¢ ž¤›¢œžœœž žœœ œœ ™——›•——‹……•®»ÆÈÉËËËÉÈÆÆÈÆÆ`TQLVGGBBJ94++Lu‰›¥¬¶µ¸¶¶¸¹µ©œy^Q7?QTVigeblebplblB4B[e 1#T<Gnwu1#uT#7[).“¢b7G}•# 7 #.•g[§±½ÆÎØÑ17Tgii}ƒ“•›“¢§¤¤¬¬§¥¤¢«°«±¥®¤±ž…‹‰}uwrƒ§µÒáÛȽµ¤œ™—‡}}{lieiT#+## 4+41¥Áž`4Q ##.&n‹ž¥ ¥ž ž ž œžžœ œœžœ››œ›ž›—™—•‘‹™°»ÅËËÌËÉÉÉÈÆÆÈÆÆYQVJTGL?JD11&9Op…› ©±¶µ¸»¶»³«¤‹{`J9DOVQ^`ibielu[n‘iržœ4+ &uDp}{^7uu .b‹V4GTL[{»1)###&.&)w¢g…É»ÈÅÌ×J1GVernu…ƒ‘“›ž¬ž ®¶¬¢¤¤°°°§§°¬¤—‰‡ƒ{w{rr“¸ÌàÝ˸¹®¥—•‰……wrrwlY1&#).B )¤½¬p.G)))7u‘‹‹‘¥¬¬¤¤¤ž›œ žœœžœ›™›œžœ™™—“—“‘••‘‰™°¾ÆÌÏÑÌËÉÉÉÆÅÅÆÆÈJTQJGJJLJB+#)1Llƒ•§°µ³¶¶¸¶»³«œ‰{[O??TTTT``bin…‘ ±±¤›lD17B94…?w{Vul{D# .`ygr[G¥°©Bp^LD## ?¢gb©¬ÅÃÎØ‡4B`ennw}‡‰•“›ž¥©©°±°±±±«¬¥±µµ©›—ƒ…‹}wnlw™±ÌàãÏ»µ±¥“‹‹…}uwrle? # +). #¥±®}#.9+ Y…‘‰™§¤§¤§ž¤¢œ¤¤œ¢ž œ—›ž™œ›———•“‘‡™«ÀÈËÏÎÎÌÌÈÆÉÈÆÈÈÆÉOQeLJJJG<77)#4^w‰™¢«±µ¶¶¹»¶µ¥œ‡bD<GTJVYVi—©¤ ›œ—“7)DY+.49<OnDLe‰V 9OB}‡…r9&&‰b`&&4 ##w™`uÉ»ÅËÚ¸9Jginup‡‹•›¢¥°®®¸°©³³¸³³°³³¬¤—‘‹‹‡{ypy{‹©ÌÞàѾ±«© “‡wyrwrnb1# B+.)#¢¹¤•1.. i‘‹‡ §§¥¤ž ¥žžœžž›œ¤ ž—™“™›ž™•™““‘™“®½ÆÉÎÎÌËÉËÈÉÈÉÈÈÈÉËQDOQG9B??7<))4Qu—§¬±°³µ¸½½¸« “{`G?GDL[r‰{l…pG)#[J7<1G#Bg?^w•ž.+))&##BV+<u&9…“y9+& #1™pu“°ÈËÕÕ JVgupwwu“››¥§°¬±±±¶¸°±µµµ«§ ›™‡u}wwr‰§ÏÚàÔ»®¥¥¤—ƒ{yupu`41.&4)œ±™¤ 9w‹“‹‘ž©¥¥§¤¤¤¢ ¤žž¢ž›ž™¤™™™œ•—œ›‘“‹§½ÅËËÌÎËÌÌËËËÈÈÉÉÌÌÑBOBJ<9?G?99&1)Ou‰•§®³³¶µ»¹»³§œweO4GGTVbggnnyeil[OY^+7.Dw1Gw…œL7V 4 & 1<^`^l•lg)#&&›euÒ½ÃÆÝ<) L^lnrnn{ƒ•“› §°°±µ¸¶³®°µ°¬±§¢™—…ƒuww¢Èàä×»¬¤¤››‰}}{{wnT&#)#&O#“±©7& 1#G}•‰—©©¥¤¢¤¤¤œ›ž¢œ›• ›ž››™—•›“——“‹‰™¶ÃÉËËÌËËÌÉËËËËÉËÌÏÑÒJDGD?<?G9?9D#4Luƒ—¢¬±¶¶¸¸¸¶±«—…^LBOOQ[l^gbigY<LDiGVJ.Qy^ <œwg<<u+#1&##17&.Q&Tg‰…‹&#+™iw¥ÆÉÅÕ¢7O[ggrylw{‘•ž§©¬¬³¶¹»°°¬©©©¢™œ“‘‡…{w}‰¤ÅÝãÛ»¬¥¥ž••…wyynT))4 )[µ}¬OJ&)V‰ž«©¥¤žœžž žœ™žœ œ›™œœ›™•™——™‘‡ƒ‹®ÀÆÎÌÉÉÉËËËËÎÎÉÎÎÔÒÔÔGL<779<99..+ 4Jy‰—¤®®¶µ¶¶³µ®¥ž‹b?7BOLgb^eggl[7{i`<Y<[Q&Qp‹^p7.14)&#))L 7) Qpiž›T y‘ppÌÃÌÏÎ+.&)Lelnlyyy{…‡‹‘› ¥±³¹³¸±°¬®«©¥›‘‰‡‰…}uuuw µÚàÛÅ®«¢¤™‹ƒyrrynG#&&&^‘³“©r9+&l•—ž°©§¤ ¤¢žžœžœœ— ›™œœ™›—••—•‘‹‹‰ƒ ¹ÆÉÌÌÉÌÈÌÌÌËÌÎÑÒÒÔÕÕÕ<BB9<B?7777#&4Dn•œ«®µ³±±¹³±®ž[B<D[[Q[[eegiD… §[9lu1[‘G47<+J [ƒ&4+& ^&9Gr[L« 9 “`p“ÅËÒÛB4.?^brpr{y}‰‘•“›ž¥®®³±³°¬¬®§¥ ›‰{yryy‹›³ÒãÞÅ«§ ž•‘‹…{rpb<.#+`}¸™ ™7.#7{•‰“¶½¢¤¥ ¥ž¤ž œœœ›ž››™™—“•™›™—‘…‹™±ÀÈÌÎËËÉÉÉÉËÎÏÒÔÕÕÔÔÔÔ9BLBBDD9<?)+&#Lp‹œ ±±³³®±±¸«¥“}g<1JO…^[b[Yn‹¥œTBr…JV•1)1?V4Lœw•<).4&B&&#J#.[{‰?™ # `œ^wÉÌÑÚ¸&?&7DY`gwyrw…ƒ“““™™™¬°¬±°®±§®§§¢œ™‹ƒƒ}uyrn‡‘«ÎàÞΤ¤ ›“‘…}}{nb7 )#&7^ p°¢ž•#.1Y…“‹¤§¬§¥¥¢œ¢ œœž›ž™›™›™•ž™•—“•‘‹¢¹ÆËËËÅËÆËËËÎÏÒÔÚØ××ÒÔÑOD9??L<B9.&1Tp‰“ ©¬°±®³¸¹³¤™‹wg??9V‹QT^l©±™n)&l¥wQ‰#&GV+©bu##17<LD9)&?V©›V#r¸e “}g•ÕÔÕÕ#O G[egwyu{}••›¢œ ¢µ©¬®¬®¥ž§ž™}}}wplpyy™®ÎàáÒ§§œœ…}}wwr[1)&)1Qb§žž‘D))g‹¤¬¬©¤¥¢§ž ¤žœœ›™››—™›—™••—‹‰‰™µÆËÏÌËÈÈËÉËÌÏÔÔØÚØ××ÑÑÏJ?BGJGDB19))Gr‡‘ «°±°°±±°®§œ‹{Y994G›gY“«pO#[…‰Lƒ..1.{LpL¢iœ7¥199&. )BlLBJ<‡¬¹G‘T Y©nn¬ÏÒØDV+#D^^lu}yuy}…‰™›•™¤ ž©¤«§«§¥¢ ™•‰}{yrplrrƒ—¬ÃØæÝ ¤›™‘‡yylQ9&&4JQO§§—O.&)r“‰‘•¢§©¤¤¢ ž žž¥œ ™žž™›—•“‘“‘‘‘‡‡§ÀÈÌÎÌÉÈËÉËÎÑÔ×רØÚ××ÑÑÑDDBB<9?<<+&& Gy‡™¢¬«µ°°«³¸¬¤ž‡yVD.77e¢…‹gi‡wL)Gœr<uOp9)rG…G[ƒg¥TœD+ )+#.#.ul))<{w½À y ‹yyuÎÕ×™Y 19T^g{pu{•‹“• žž¢¢©¤©¥©§ž™ƒ…{y}ypllpp‘¢»Øéᬢ™•‘…‡wyubL +9D9<ž¬…“V L•‹ž©¥¤¥¥™ ¤¤¤ ¢ ™œ™žœ™›—‘‘‘“•‹‹™¸ÅËÌÌËÉËÈËËÑÕ×ØØØØØØ×ÔÔÔDOO?D7?B77# Bpƒ—ž©°±®µµµµ±§žy`B91<Qiru{l}` {iGOOD)VV`ƒO^ey°YGQ &+DL[ l‡nJG°œ+ <¤ln°ÕÕÅ`)<BV^lnuwu}}ƒ•‹‰•••—œ™—œ¢§¢œ žœ‘}{u{pnwgyƒ‘¢³×éáÀœ›•“›…‰{r[9#11BG ?ž±ƒ—p.`“¥«§¥¢¤›¤™ ž ¥œœžžœ œ—•“—™‘™‡‹•°ÀÉÎÌÉÉÈËÉÌÏÒØØÚ××ÕØØ××ÕÕJGG<?DDG1.&Jlƒ•¤©±±¶±°µ¶°¥ wYJ99GOQeg‡“{T)<QJgbi+bT4‡BJbQr¥n&‹#1##l1GG‰n^1<b1 +Jnu}ÏÒ§7 n)1BD`iluww}…uƒ‘•“•—œœœ¤œ¥›œ•‘‹…rer…{rpru ±ÑéäÈ™———ww}e +4L49 7«ž‰ 7i‘—‘¢¥¢¤¢ž¢ žœ™ ¤ œœ››ž™›—™—™•‡‰‡ µÆÎÌËÌÉËËÌÑÔØØØØÕ××רר××J?B?GGB71& Bp}•¢©±°¬±µ³¸°§žub?17G^y}eigli#7TOB‰b7^<4D #1Qi›.—#L4+Y)rD³§p^n[ J‰yel—¹“¥V r17?T[giunpy{ƒ‰‰™“•—“›œ¢™ž¢ ™•‡weew}ƒ…{pu…ž±ÑéãÈ““•‹ƒynY19<B< ‡³¥¥Ly—›‘¤¥¤¢¢ œ› ¢›› ™ž¢ ž›™—¢••‘“‹§ÃÉÏÌËËÌËÌÎÒÕר××ÔÕØÔÕ××××OLDDDG?91+ ?r•¢©®®³³³µ³³¬ž‘uV?)Dg‹bbblne71[<4`DQ…b +{eD¥œ Y?#1J)+&L°§.4Qp1 ¹« œ…y¬Æ™#uV47Jbiriwr}y}ƒ‹‰‹““‘¢œ›œž¢œ›ž“‡uVg}‡‡ƒ‡‰{lr…™¶ËááÅ‹•‹y{wp1 14<? {µ¥•4 Y••‘—§§¤¥¥¢ž ¢››œž ››››—ž™››™•‹‡‰—®ÆËÎÎÌËÌÈÌÑÕ×רÕÕÕØÕØØØØØÕTLG?D<B9111#Jn•¤«®¬³®µµ¹±³œ‹yiOl`Q[[lrpQG7V^luQB&.9 J& ui7°+<™#.+##JD+ 9‹w g¥³¸³µ»Å‘D&#lO DObiruruw{w‹}‡‡“‘‘“—™—›œœ›™“‡w[p}y‡{{ie{‘°ÈÑ×®‘‹ƒyyrO . 1B.Di¬®•GY••••¤¥¥¤¢ ¢¤ ¢žž›¤ž œ›ž›ž›œ—•“‘‘‡‰©¹ÈÏËËËÉÉÌÑÕÕÕרÕ××ÕÕ×ÚØÚØ×OVDJGBBG11& &Tn‹•¢©¬°®°³µ¸±©›‡{bbD?OQT^Yep—Y<.Q^w}J< .¢uLO^uQ}Å[.µ+&G+`..G#Q—<³¶¶»ÀÀ»®. rVBJV^ilppupyƒ‰‰—“›—™œœœœ›ž›‡i}…D4Yewnuyž¾ÌÅœ•‡ƒ}w{n)&1#7J#G#V ®“•`n—™“•¤©§¢¢¥¤›™žžœœžžœ“›œ™—™™›™“‡¬ÀÉÎÎÌÌËÌÑÕÕÕÕ×ÕÕ×××ÚÚÚÚØ××GGLJ<BD9444&&1^{‰™¢§®®°±±¸¹®« yiQ9?LTQ^`gli)Q&^O•wG4 1°O#uGue{°)§.<Y?DDe±.&#±³½¾Èȹ& rg9OV^iplruww}}…•‘“™œ›™››ž“•‘ƒpny{J&BODJgir‘¸Ë®©‘“‘‡ywV ##7?9J # .™µ ^14™•‘›¤¥¤ ¢¤ ›žž›ž œœœ™›™™“™™›—‘‘™®ÅËÏÌÎËÎÎÔÕÕ×Õ×Õ××ÚÚÚÚÛÚÚØÕDLD?BB<9.B7+.Dg}“›©««±¬°±±µ³¬¤‰}`J9GDQV^ggng?[4[OGVO+œy1DyJpƒ§1ž^V YO#4&+pž³¸ÉÈ‹)r`?[Ylbiprww}{‡‰ƒ‡“‘›—›——œ ›œ›•“‹yepuwpywnbQpn}³¸°¥—‘‡‰wl1#. .9O)D4 ›±—¢r Q‹™›——§¥¢¤¢¢œœžž›œœœ›œœœ™›•““••‰‹ ¶ÉËÌÎÌÈÏÏ×××רØÕ×ÚÚÚÚÛØÚ×ÕÕ<D9GB79?4+11?Jg™¥©¬«°°°³¸¶¬œeG9BGLY[Vwl[e#1[TL?w{J`[O4B‘Bly¹V‹‡ )l©D&{rG7e`ppi}…{¢Ál7OG4reGO[biirru}{}ƒ…‹•‘›•››¢›œ““‡wlru{}pinœ¸Å¹«¢œ‘‰…ƒye )# &GB&O —¸•™e.p‘™™“¢¥§¤ ¤ žžž›› žž —›™›—•™“™“‘‰“¥ÀÉÌÌËÌÌÒÒØØÕÕØ×ÕÚÚÛØØÛØ×ר×9GJD9JJ91+<?LOy‡•›¥««¬®®µ³¸±¬žgD<?JTVV^uig4 bYG1YƒD D^?pD{Ql“‘™&4l¤©# 4e&?#[le©¸bbi‰ÛÌ 4){Y7J[iggnrwyr{{ƒ…‰‹‹“—•———œ¢•—›œ‰‡}…u}‹‹} ¾ÌÆÁ°§œ•‘‡ƒ{r.# )&+4LGJ4+ ‹µ‘—Q.•••—¥§¢§¥ ™ ¤›œ™›™ž›››ž››™••‹©ÃËÌÌÌÌÏÔÔר×ÕØÕ×ØÚØÚÚáØØ×ØØ<B<<JBGB494<O[w…›œ¤§¬®«±¬µµ±«¢“gT9<J^VYY[p‘Q#[4<.LœO JQ7{nr…QVž™[)J‰l<&[#Geeun‘¹ÅTrg}³Ý.). .9+ & ){[BObgplnrnrw{‰ƒ…‰‡‡‰‘•—™ž› ›œ™›••“‹‰‡ƒ‹¥»™¢ÁËÈÆ¸¥ž•‰r+)& &7&[7OG&1u®›•O<?…—““—©¢žœ¤¤œž¢™œž›œ›¢›™—™œ™™›™—‘‘‹—³ÁËÌËËÌÑÔ×Úר×ÕרØÚÚÚØÚØÚÚÚØLB?7DJB711+7Q^w‡‘ž¤©¬®«±³³¸±® “…bG9<J^YV`n‹•O +gGQ`¤^4)+GVBOrpy‹pL°`¤‹G<GBln.7O.‰‹‹¤¶Ã›`Qw¥Ø+)<9++&4&#uYJQ`iplyuuy{y……‰‰‡‹“™™••—™™››—‘—•‘•‘ž¾Ë«§ÀÌÈÆ¶¤—‹‹…4)))++))B#[BB41?)T© —LVg™•™—¥¤§¢¢¢žœž œœœžœ—›ž›™œ™›•—•‡¢µÆÌÌËÎÏÔרÚ×ÔÔÕØ××רÚÛÚÚØÛÚØ?B49<7B<41)1L^}‡™ ¤¬©¬®°±¸¸³«ž‘}bOB<OLOQbiQ#.V4{‰g.##J9J1bBYbL“[§Q9^Qb[4 7&‡¸‘°³¶¹LlObΤ&&#)74ur^Vbgln{rrly{{‡‰…ƒ‹‘““™‘›™œ—“›“‘‘“«Ëι«ÅÌÈ̱¤—•‡…r)+&# )<+V<B4#7 7¢«Qrl‘™›ž¥¢¢ žžœ¤›œ›››—••—ž›—™ž••—““‰¤¶ÈËÌÌÏÒÕ×ÚØÕ×ÕÕ×ØØØØÚÚÚàØÛÚÚDG7?77B91+#1Te‡— ¢©®®©®°³¹µ®¢—ƒ`Q4<DJQ^‰‹g}G&4?{•##G#1)O1L1[?^JLb‰—g&{nB.19Q —°¾ËnTQ—à # D)#ynpQ^enlur}{p{ƒ}…‰ƒ…ƒ‡‰‘••••ž—“‰•›‹—› ¬ÒÒÀ°ÉÒËȶ¢“…9&#+#+ +4?1D<799)# )›¬‡biw“—•™ž¥¢¢¤¢žž œœ—¢¢ž›“——™™™——•——‹‡¥½ÉËÌËÑÔÚØØ×Õ×רר×רÚÛÛÚÛÚØÛ<7994.14.744D^y•œ§¥®°±±®³µµ¬¤•}eG7?L?Dw“iuu+49rƒy#14<1D4`7??4‡+G‘wƒ“&©G)44g`u—©¸Ì¾YOQuÎ4 &+ #1B1&bg?`bnlruwryƒ}…ƒƒ‡…‡‘‘‘“›—‹“œ™™¤±×ÒË©»ÏÉÆ³›‹‡ƒ…y.&.##<)OV<9)?<‘¶weyƒ“‘—™§¢¢ž¢¤ œ›™ž›œžž››—™œ•ž—‘—‹…¬¾ÌÎËÎÔÕÚÚ××××ÚØ×ØÕ×ÚÛÝÛÛØÛØÛD<7..449..1DGVr— ¥§®©°±¶³¹¶° ‘nG1BJLi `[…w&7e`…Y.&Y7JB4<GDJ9eg.)}“rƒ…¤yl[[‡›¥ÈËJ^L`È7L## &))9O)ngrDV[`{lyywr{}‡ƒƒ…ƒ‰‡“‹““•—™œ±ÔÔñÌ×ÑŶ™…‹‰‡}B 4&#?4.?B<B#7+)ƒ¶wyr™¥¤¢¥«¤œ¢žœ›žžœž ›—™—™›™™›“‘‹‹«ÃÌÌËÒÔØØØ×Ø×ÚÚØÕ×רÚÛÛÝÛÚÚÛÛB.&++.4?1.7.DVy…•œ¥«§¬°°µ¶»¶±¥•nB47BT“lVV…g.T Qn?+&G99T.QL^J1DVV`.‡¬[ n…«œÁÁÎgnOi—¬4b)#4#9O? bbrVDY`luyuw{}ƒƒ…‡‰‡‡‹‰ƒ…‡‡‡‘™ž¤¥«¶ÁÑÔñ®½¹‰ƒu4+) &+1<DJ7<99<¸}ƒ…‘•™ ¤¥¢¢žž ¢—œœ¤ž›™œ‘™™•—™—•‘‹…±ÁÉÌÒÔרÚÚØ××ØÚØØ××ÚÚÞÝÛÛÝÚÚÚ9))+4+477+.1J[{‰•¢¤®°¬§³µ¸¸¶³¤™`D<9D…uVOVg<+{‡?1#79)O99}O`VOL7wT1<[w OVi§ÎÌÆÑч[TV…Ñ1u&+#&.?4QGlQDTeprnw}u}y‡ƒ‡ƒ‡}y}ƒƒ‡‰‘‰‹‡…‰“ •‰…•žywƒ‰‰O##)&#)+&9?.B<9G1<#…¬w‹›“—›¥ ¥¢ œ¤ žœ™› ™›žž›™ž™™•“•“‹ƒ“«ÅËÎÒÕØÚØÚ×רÚÚØ×ØÚÛÛÝÝÝÝÚÝÝÚ14)).+411#&7DVy‹œ¥¥¬¬³³±µ¸¹¶®¢“gJ7?i‘OG`l“`&#TwG)9991+.<TriVB?<…J4ugb…V‡y¥ÃØÎÔ®YnOyÉ9 Q&...D`DYGDTegiwuuur{{{{‰‹…ƒ•ƒi[nw}}…}yrn}yili}‰wTepTVp‡‘ #+ . O&717L+<7u©…™“™‘¤§¤¢ œ¤œ ››››™œœœ™œ›—™—›—“‘‰—±ÁËÒ××Û×ØÚØÚ××ÚרÚÚÝÛÝÝÝÛÛÝÛÞ&)+)..<.&&4BJ[}™œ¥°±®±¶µ¶µ¸°¢“{bD.iœeGDi‘©V1)e&)?1?GO4#1O …u`n[J7Jƒg….le+ ‘¾ÃרÁBn[`±¾##1G.#) 7JQ+TT1J`nl{{{rryuƒƒ……‰‡yJD41DQYYYbTLOL9DO`grgLBVegi‰‰` 7&.1B&G19Q94<e¥‰—•—›¢ ®¢¢œ¢žžžœ ™œ ™™›œ™™“›—›“‡‡™¶ÅÌÕ×ÚÛÚÛØØØ××ÚÚÚÚÚÛÚÚàÝÝÝÝÝÚ)& ).7..&)JL`w—¢§°±µ¹¶µ¶¹¹± }g?G¢rJBJ‰ž…OO41Lb?B)7+?œ—e[linVQYœ)O<y‡ƒÅÞÚÒVLVžÑ)###)7+#) 1O&T7LYBOVgnuwwrry{ƒ‡‰yprg^LJO[be[e[Y^b[`p{wwpn}‘…#&.?7#T<.O7&J L •‘‹œ“œ™¥¤¥ ¢¢ ž›¢ž™žžž¢œœ™™œ›™›“‘‹‡‡œ¶ÈÑ×ÚÝÛÛÚÚØÚØØÚÝÚÛØÛÛÝÞÞÝÝÛÛÚ)##+)&14Y^i{™¢©®µ³±µ³¹µµ«ž“{^[¢wD9Li“u}[+B9)++ 9<1g.4¶›DggblplbVTi9Dg—yu‘çÛ°QnV“ÑV&&) ++ )&1.G7L7JQBGVeinrnpuwu{}ƒ‘‰ruwlieeny}p…—¢¬³ž}w“‹“B +&##4L +b7LLG.b #Jœž‰ž‘—œ¥¤¥¢›¥¤ ¢œ œœœ™™™›œœ›œ™• “—‡ž¹ËÒØÛÛÝÛØØÚÚØÚÛÛÚÛÝÛÝÛÝÚÛÛÚÛÚ+11)++1.) 1Q^`w‹™œ¥®°³¶¶¹¸½¸®¢•wn—B9?Oƒll^<7QG<&BD1g9Å“G1ewu[Jl44{Qy‰‘•}puÞÆlilƒÃ®..+. ###44&4+ LDQDB?V`giiil}ypwyƒ‘‹‘‡{{punnegl}{‘©»®Ã»ÈÎÆž{‰‡w#&# # 4g4GJ 9[#J¤¥—›‘›œ¢¥©¥œ¤¢œž¢žžž¥ œ¤››œœž—›•™‰‡ ¾ÎÕÛÝÚÚÚÚÚÚÚØÚÛÛÛÛÛÝÛÝÛÛÛÚÚÚØ#)&))#&.1 7QV`u› ¥«±³¹®»¶¶±¬¤™{‘{<7<Ge™b`[O?&›?#l<+V1BÁ‹JO[wƒ`e41Y^™‹™g Ûlln©½¬#)) )#.&#&)41?<79YV)BL^bllllnilrw‹‘ƒƒrnguuyilp‰•œœ“™¢ž‡—•‹)<B)u4GO?)+Y& Jœ¤‘œ¤‘ž›§©¤¢¤¥¥¢œž¢ œ¤› ›—›™›—“™••“‰¤¾ÑØÞÝÛÛÛØÚÚÚÛÛÛÛÝÝÛÝÝÝÚØÚØØØ×+) &+. 9D[Yu‰—œ¢¬°µµ¸¸¸»¶±©¹žuD+1BL‰bbn&4?¥B&) r+b)`i»w)G^9^[yblg—ž‰œiwÞÈY}µÎž)# )+1 &+1) D.+9BGTDQ)<OYbenglpnww}y{y…‡‹‹…}rpnrupl}‰‹…ƒ‰}‰“™‰e 1 #&<1n+<O47.Q+ &B™©œ ¤•œž¢¤¥¤¤¤¥¤ ¥ž¤ž ¢žœ›ž™›™››•“ƒƒ¤ÅÕÛÞÞÛÝÛÛØÚÝÛÝÛÝÞÞÞÛÚÚØ×רÕÕÕ# &#+)&#&?D^Tn‡•ž¤«³¸¸¹¹¶¾¸©œ™}`<99B‰¤bYni+ i™#+?y^D^™œp™VJyL1Y‹y••u ®™byÈ•¢®Ål#1+#4&?1&1# &#+#9.?<&9T9<+1?O[^`biip{r}}}ƒ‡‹‰ƒ{{uyulpnr{yƒ…ywuƒ—‹}? &&++7 +7)9g)<TG9&[&)#7—§™¤ ›¢«¢© ¥ž¢¤¢¢¤¥¤¢ž œ ›œ›œ™•‘™•¢ÈÔÝÞÞÝÝÝÛÝÝÞÞÞÝàÝÞÛØÕ×ÔÕÔÕÕÔÔ<& &1&. <^QJl‘›¤«¶¹¶µµ¹»¶± •}`D4+O gY^{B&&ƒ›#ee)#LO¹‘e^™r‡gG9l“›rg“•i‘Õ—¢à`1).7)44<7&+7+&+1<+B.47+ 1J+Q7<9DTeY^genipu{w}}‰…‰ƒƒ{}wy}w{ilblilig^w••“‹‹&1 +. &1 JT?1QJ+&J.4° ž›ž©¤¢¤¥ ¢¢ž¤¤ ¥ ž¤žž™›™™——‘‘‹}…¢Ì×ÞÞÞÝÝÝÝÝÝÝàÞàÞÛÚØ××ÕÕÕÕ×ØØØ# &)#J^VOi••ž¬³µ¶¶¸»»³°¢‘eB).^§`^li ).{ i7)9bÉ—g4 {…uJQL›œbewl«×…»Ò—# #+ .&.+#+L++? ..7+)&D.Y4+??BV^^g[lllry{{‡ƒ…‰‡}}w}wyyrlruww‹—›—…‰‹Y&+.&<&)+4DV71g<..G7+#1¹™© ›œ§¢§¢«¥¢¢¤¢ž§¤§¢ž¤ œž™ž›—••“…{¤ÎÚàáàÝÝÞÝÝÞàààÝÝÚÚ×רØÚØÚØÚØØ # +u^^`n}‰•ž®µ±¶µµ¸¹³® •e7).[©VY[DG&D…7&#&Y+91uˉ‘Or—™}g{}VnD‘ieœÕ¬À¬+)&+)+&1+14+++)+& 14.791<.)7#JB+?JLQY`ebgruuyw}…ƒ……}…‰‡‰•‘—•œƒ‡‰‡1) ++)<& +<TB9`4++GL# ° «ž—¤ž¤¥¢¥ ¢¥§¢ ¤¤¤ ¢¢œ›™œ™›™—™•‰……¤ÉÚáãáÞÝÞÞàÞÞàÝÝÚØÚØØØØØØÚÚÛÚÚ&&) <`lbbiƒ…›¤°³¶¹µµµ¶®¥•ƒe?).L‘g[QV7?Dn+ +g)9&DuË`•V³‘nl‘?V‹}w&b…w}µà¹ËJ4+++##9&+ +.)&+.)&17D.+<1GOV[begnrw{ƒ‡}……‹ƒƒ‡‰‰—•ž ¢œ›œ››“QQ&#&+<+4#&1L`B1TB77GB#)“µ©§›•¥¢©¥©¥¤ž¥¢¤¢¢¤¢¢ž žžž›œ›™›™‰‰{}§ÌÚàááÞàÞÞÝÝÝãÛÛØØØÚÛÛÛÚÚÚÚÚÚ× # &## Db`beuy‹œ©°±µµ³¶¶±¥¤—}eO7.LyygTG9`Yb)&9^#1#GµwglƒžrƒnJ[[‘V{plY±àÛO )+77+&++)9#&1.+#)B& 1.D)7).JTV^bgbrru{…ƒ‡…‰‰‡…“‘‹— ¥©© ž™ž™•—‘<)& #+99+)#`^??BB7DT7&+‹¹¬¬››§«§¥¥©¥¤©¢ ¢ž¢¥¢žœ¢ž™œ—›•••‹y¬ÏÝããááÝÝÝÝÚÚÛÛÛÞÛÛÝÝÛØÚØØØÕÔ× .)#&Deb^`u‹™ž§±±µ³¶µµ¸«§•gG+4Dei[bB9^`Y))G[ .7<¹bT{pž…ƒwuLJ•Q}iQi}Å+1#&1# )9#+ 4#. &&+9& .&+#9719OQ[``iry{{ƒ…‡‡‹‡‘‘›œ›™ž©©«©§œ¥¤ “••rD# .71.+B YbJGOD7BY 1#•¶©«“›¢®©« ¥¤§§¢¢¤¢¢¤¢›¢œ ž™›—•™•‰ƒƒ³ÕÞáááàÞàÛÝÛÛÛÝÛÝÝÛÛÚÚרØÕ×ÔØÒ ) ObieYn…‡“ž¥³³±¸±³¸¶¬¢™}eB.1GeigO+O&e` +)<Q+DJ©wB<D‡ƒ“‰ƒƒp?“Jn1YÑQ.7).+#.+9.) )&&&# # #114#&<+91<B#4G[TYbiurw{{‡‰‹•“¢§©¢¢¤§¢ ©¥¥©ž‹œ“+#7##+ +)B.9)1###^l[BJ9D9D#T›¹¤¥‘¢œ§§©§¤œ ž¢žž ¢ ¢¤œž™™™•™‹‘‹‡{‡¾ÕáæàáÞÛÛÛÝÚÝÝÝÞÝÛØ×Ú×ÕÕÕ×ÕÕÔÔ##&#OOY[^w…•›¬±µµ³µµ¹³®¥‘iG79G[[LB4?ƒQ+7&#?Q++.^§lB&)Gy—œp‹niœr‘[DY^.w&+)9&.++.14 4 .1# )&1#+&&+..+7&.?1&.BDL[lnw{…‹‹›œ©³§¥§¥§¥©°³¥œ‘œ‡&)+4+&+&7D#)+##ViDGDBJ?TQ+‹¸¥«•œ¥«©©©¥¢ž¢¢§¥¤ ¤¤ ž›™—•——“…‰ÃØáäãÞÛÛÚÚÛÝÝÞÝÞÛÚØÕÒÚÔÒÒÔÒÑÎÉ BJV`^uƒ‘ ®°¸µµ¶µ¶¶¬¢•}`?17DY{&&+))g1<&.?&#i¤‰V&?9bpƒ‹“yw‡“eiV…1?++#+.4&) #+4 1B&&)<) &)19#++&?)#77)BGO`npr}ƒ“…““™§ ©©¬«¥«««œ‘‹n< .14.)11J& ))#.li<D97JDB&T ¸§¤—› ¥¥¥§ › ¢ž¢¥¢›¤œ œ™™™™““•‘‘‰…ƒÈÛçäáÝÛÚÝÛÝÞÞÞÝÛÛ××ÒÕ×ÔÑÏÎÉÀ»§&& .#+JV[i}‰—ž¬¬±°°³³¶µ±¥—…eD&7.g^4 #<1p` 7B+G<&#)J¥…}.JGlg[…‡¤“œu‘®LG`^919.11.+)447D#<#1#+&1?&11<)1J?.)&BJV[bgwuy…ƒ‡‘•›œ¥¥¤®¤¥¥¥ž—“e 7+477911)J++ +)7egTD?BGOQ4`.‹µ §“—•œ›œœœ¢ œ ¢ ›› œ ž™œ—•—“““‡ƒœÎÛääáÝÚÚÝÝÝÞÝÝÛÛØØÔÕÔÒÑ˾¶ž‡b. ) +)?[`gu{‰› ©®°³¬µ±µ±±¥‘}^G 1b…QV#?bJG4.B4V.&+&µ79J?V‹[n§y…ƒ ©y}‹?+#)9)&+&))4J##G)##++&#)#.)11&179))1?<+)+147.<TTluurƒ‰‘“•›¢§¤¤•™™ž‹‰‡T.)4+.4) +4#)&)9.`gQDG?QLV#Y+™³ž¢—‡‹“••——™ž¤ §›¤žœž ž›—•——‘“‰…®ÑÝããÞÝÚÛÛÛÝÛÝÚÚ××ÕÔÑÌÈÁ°•i1## #+44[^Qp‡• §°³±®±³¸³©¢‘{^.7l¹™b¬ #LB191#D1 +#°—©[Le99}{rJ•^›³œ•¤¹¥1##&1)1.&?9D&Y# & +)#& )+449114&&9G<9)&1&14B[JY``irn{y}…‘‘™¢¢ž‘‰•‘………{T4)+)141<+1+7.))9.YpJQOD?G`4?9)•¹ž™‘…r}‹‰“™—œ›™›ž œ œœ›•™‘‹ƒ{¾ÕÝãàÝÚÚÛÛÚÛÛØØØ×ÔÑÎÆ¹¥‹[+ ?OYY^y•¤©±µ®°°µ³®©¢rQ9{Ò¬?<¢)D[#&?+D1) ¥‘¤—QT<&[›ƒ9rOœ¢žDu¢®u9# +###L?D##?)#&+.&#&#).149+..#9LG4<Lliipuƒƒƒ‡…“©œ¥ ¤§«¬®±±±¢¥«™pB9..B77+1+.7.&B+[yJTLJGQO7?1.ž¶¤‘…rpw}ƒ—‡‹“‘••—œ¢ ›››•›“‘‡{}ÆØàãÞÚÚÛÚÚØ×ØØÕØÔÏȾ°^1&##4+# #7BG?`}‰™ ©¬®°°®±±µ©œ‹n^‰×«[1^›<B?[?<<?&&7## #+žy§bJL.9[[Q™«`V§³—B77°¬ D)&?J9)J##& ##&+1&4+# 9JQOeguu}}{‡‡‰‡‹‡‰‡—› ›™—žœ ¤ ¬°¹ÃË˾›`B91)<)&14&)+ D+VpOTJBLJ^BG79¤¤©‡u}wernr}}r…‡‘™—••—™“““‰‹…ƒ{›ÉÛààØ×ØØ×ÝØ×××ÔÔÏȸ°‘b)& 7 94+&)D1#+.<?<[}‡—œ©®°±³®¶¶±«›‡{ Þ§4L9TY4eG+7T+.^1# &4…w—ž`DO‰w¬{Ve‰©}“Y+Y¶¹¥<&)+)+9T1)&1`#&)#+#)#)+.#7&&7GJ`ip}{{u}}ƒƒ‰‡…‹‹“——œ›•—•••—¢¬³¹ÈÆÌÎÌαrB+1)#. &&1VwBQG<GGV?J<1©ž¥y{{ppupynuuyu}y}ƒ‹‰“•“—‡‰…}{¥ÏÚàÝ××××ÚØ××ÕÒÔÎÉÁµ›u9#.9GG74G<+ #+B9?Qr‹›¤®°°®«¬³«§ Ôl GB «#.[B<4?)?Y4&1Vl“•J 4[¢±<iVgOwGJ‘±§+ +G9`+#.O) +)#..)+4.#17+)#4&BOJ^rr{ry}‡…‡ƒ‰‹‘™•‘‹•¢±±¾ÈËÌÌÌÒÔÔ»yG91+.4&.7)7VY{BJQ<ODVBLO?¹—™……‹‰w}ruwururrprrr}{……‹‰……}y®ÎØÞÛÕÕÕ×Ú×ÕרÒÎÆÅ¶¥{B#+.?OOB^O?D. ))# 7?&&Gbyœ§±°««°®³°« ¹Ôu9&?&i³&+[G)4)1<l?49+)G‡O‘“…«¹bOO…Y`‰<ey®}V¸‹9 )+4J 1^). +#.)+ 41+).#+ 7LT`eyyyryrwwƒ‡‡‰‰“‡‹——©°¸ÁÆÈÌÎÌÏÑÑÑÏÁƒ<)))#&OD}9DLBJLJ9JDD½›—ƒ‰‰‹‰ƒƒ}rringplinpwu}{{}y}{ƒyu{¬Ï×ÚÕÔÕÕרÚר×ÔÌÁ¶›r<)11<JQQ[ƒ}e^LB7)##)# 1Qn…›¥««¬©°±¬³¸Á°}e?9[Q¥T#&.T1B)1pOD4O}“}Y9`…‡°“4OpG{wpg Ï[?ÁY1Q))+[ &# &#)&&44++#). .?Jguwgyuyyuw{‹‡‡……‹…‹‡‡‹“™©°»ÀÃËËÎÎÏÏÑÏÑÔÔÁ9& LD{4LG?GLB1B?L»œ—ƒ‹‘‰‹—……ƒƒwunpii^`e`Ybiiignnpnelb©ÉÕØÕÒÑÕ××××××ÔÉ» ^ ..77LGDOO‹‰‰u^TL<.7.4Lg…—¢¬¬°³±¬±ÁÃ¥›}gBGyÁ`9ey#)eJ9u.‘YJeT›.ngggi‰yyywe½OVLL¤& #.V& .` & &)+# #.&4&?4 )#DVeglryrwuy}{ƒ}…‰‹ƒ‘‹‰‰““™ °¶¾ÁÈÈËÉËÏÎÑÑÏÒÑÕ×¹b1&B[r7DDBBGB7?J[¶™™‡—“‘‹ƒ‹ƒ{puil`b``e`Vb^rwi[GV•ÉÕ×ÕÒÔרÕ×ÔÕÑ˽¥i7197GJOJGJJ™‘‹•{pYO?G?)#4Tg‡›¢§««¬¬©µµ°¤“{`LƒQÚ) #+O‰#ƒuDLƒ) 4‰™n^¢<.‡wnƒD§}ƒ‡•³Lll‰L)1G)#4)+.+11#))+)<B7#.#+Bebiinury}{ƒ}‡‡‹‡ƒ‡‰‡‹‹“—¤¤«±¾ÁÅÈÅÅÈÎÌÎÏÏÏÑÔ××Ò•1.9Yi7??B?<+D7<g¬•™œ‘—“—‘‰‰urpe`e`bYYb{yu^DL—ËÕ×ÕÑÕÚØÕ×ÔÒÈ»¢u7)9GGBG?LTJJTT™•›•r`TQJ<1Jg…œ¥©®°®¬°±±¬¥•}ir©l§ 7bYn7•eBwB& i^+[uƒ•L9T9}y`w³}g¥&#e³?.7.+ )B&.)1&#)4D&&+&)1<O+)#)QT[urilnru}uwƒƒ‰‡‹‡‡‡‘›ž«³¶»ÀÆÅÅÁÉËÉÌÎÏÒÑÔÕÕÚØ±D#++e?JLBLY?B+9y§™‰“™™››•••‹‰‡…yuigr^Olg‡ƒpl?J Ë××ÕÔÚÛÚØ×Õ˰T&7GJGOOOOO[OJD•‹››œ‘‡w`bOD)Jnƒ•¤©°¬¬®®³®«žy•™iT i‡r[l“r19<Q b..T‘yO4TLTO…y‘—™‰ž.+‡‡#&iž#19.+9B..4))41.<.+/<&J<&1VY^ilpln}yuy{…‡……‰‘— ¥§¬±¸½ÅÁÃÅÅÆÉÉÌÑÑÑÒÔÒÕØÛÃO# `4?<+9D?7B›•ž›œœ››•“™—‘‘‘‹‘‡…{{}wnl`[n‹w^D^¥Ï×ÚØÚÚÛÚØ×ÔÁ•L<#GLTGD?GQQbOO?J‹› §¢—‰ynV?&#Lp‰™¥©°°®°±±³¬ }ÈÏ7^O+?D`…eDQ44B1l44‰Y.D+.OiLi}‰“‘›œp1ÀeYÀ<4) &&)B< &)) &711.#&1+D1Q[. TDillnwr{wwƒ…‰‰‡‡‡‰‰‰“œ §¥¬¬µ¹¾¾¾ÆÆÅÅÆËÌÑÏÑÒÕרÚÛÉO V1+B1?L11#››‹›™ž›™™“›››™‘‘“‡‹‡ƒy‰iuy‰{`Jy¹ÔÛÚÚÚÛÛØ×Òά{+4JTYTLJG`bb^[LLV‡“—ž§¥¤™{g<.&Jiƒž§°®³®³°µ±© ‰‰Û³T9.4.&Q+&L471&.Qn{rDT¬&)7V97lnY[{‘‘µ“°#—Ë.`g‡) &#.L.))).1#.7+#&&.7)<TY7&D<nnir{gnƒ‡ƒƒ‰‰…ƒ‡‰‘›™¢§¢©¬±¶»¹ÀÀÀÃÃÆËËËÎÒÔÑÕÕÚÛÝÉL)L9<?4JQD4+™•ž‘ž¤ ™™——¢™œ—“••“‹‰‡ƒuy‰‹upYÆÒÛÛÚÚÝÚÚÔÌÁ›Q?J[QLGGYgeb[V[Ob…‹œ§©§¢‘wT4&Giƒ™¥°¶¶±®µ¸¬§¤“œÞ‰•®#1.&)4J7+e9)79<)4)###Y L.VLD?w[O^‰ ‹œ—¤y&<« 7Æ+) .+4B)+)44+477<.+.17D.B[bQ)1Dplrlrli{ƒƒƒ…‰‰…‡…‘‘›œ¥¥¥®««µ¶¹¶»ÁÃÅÈÈÉÎÑÏÔÕר×ÚÝÞÁ1+41#79DG+«›œ›œœœ›•›••—“‘‘••‹‹‰‡‰ƒ}ƒ…‰ƒnl¥ÌØÛÝÚÛØÝ×ÒÆ°‹9&)OQOV^TL`gpgYYLQYlr‡•› §©ž ‰g7 Qiƒ™§¶°µ¶¶±¸±«¢‘‰×gJÏ )+&O?<)).& B^D1&9+)V&)B9?DLbLœ‘‰p}`¥^#¹V#) .?<.&1)+4?#4#&)<7BegV.19wnpnl{}{ƒƒ‡…‡‘‰‰•“—¢¤¢§©«¬¶°³¶¸¸¾½ÃÆÆËÎÒÑÑÒ×ÚÚÛÞà± ))D+9?9³• œ ž ›——•›™“—“•“ƒ‹…‡ƒ‡ƒ‹r¸ÑÛÛÛÚÝÝÝ×λ›w9.J^^OVVQYgrne^VQ`eBLu‰—§°±®«“u?&Oi‡ž§µµµ³°¶»®¬ ‘‰©r7[& &#B).7)Li99+1^ 7yn 1LJBBlV{§‰—{žllGn¾y¬1?.)). ##7D+& +DBDbug. Ogeieu}wƒƒ‡‰…‹…ƒƒ…‹••—¤ ¥§¬±¶°¸¸¹½¾ÁÅÉËÏÑÑÔÕ××ÚÝÝÞà‰.9++1¶•™œœœžœœ™›•“›—•“••‘‘‹…‡…‡‡‹ƒy‡ÆÕÛÝÛÝÛÚÚÔȧ…Q7DO^TOTT^glnn^VQO^e&+e“¢³±±§•ƒT#Je‰ž©¶µ±³¶¶¸±®œ ˃D4+ 7L#4)) #bp#L<+&##`Vi#?JGG<^ƒƒ¤‡³›‘.4ÏVQØ )97.)).)17<)4)+B1Ggr`<#OYYY}}‡}y‡‡‰ƒ‰ƒ…‰‰“™™ž¤ž¢¥§«³®¶»¸»ÅÁÅÃÉËËÑÏÔÕÔÚÚÚàáÚQ#4)4G±‹•›™œž›™™™žœ—›•—›•‰“‰‰‰‹……‹‘“‡œÉØàÝÚÛÛÛØÔÅ›g99L`VQbV`inwp`Y[Te`gLy‹§³³¶¬ž‰TLi‹ ©®µ¹¶µ¸¸°«¥“‰Ûp<e#. T)) G&&#ip#74gQ r4Tb ebV9^g^pw•ƒµ®{V™OÛ+197 &# B<++9)#Vn{nG ?b`np{ƒ……ƒ‡‰‹‰‹……‰“™™œž ¥¤§¬«¶³¸µ½¾ÁÅÃËËÎÌÑÑÕÔ×ÚÛÛããÀ#1 [«‘“—ž¢—œ™™™™“—›•“™““‘™‘‡……ƒ‡‡‹°ÎÚÞÝÚÝÚÚ×Ò½‹L<DL[OY`V`lnl[T^Y[`eb#L{¤¹¸¸° ‘`Bi‹œ©±¶µ³µ¹¸¶¬§“‡¢D. #)T+&)###w{)11bBi<.iVJin^7T^wpž¶+•Lã&)1<.? #&)&[ )#))7^rp`G7gney}ƒy}{‡‹‡‡‰‰“‰•“—œ¥¤©«§¬³µ¹¶½»ÀÆÈÈËËÏÑÑÔÕ×ÕÚÞããÞl)iž‹‘œ¢™›™™™—™—‘•“‘—“•““•‘‹‡‰{‡‘œ©«¾ÎÛÞÛÞÝØ××ΫlBGLVL[YgiepbbLOVb^eil .p ¶¶¸°§‹g4r‹œ¥±¸¶³±³¶¹¬§—‡bÔ?4&+J))## }{#T4bY9GO[Vb}w9^Yn ¤¥ž4J&‘…áG.?+G+&))1<&+) OT^neV ?^rrww{wƒywƒ‘‡‡‹…•“•••››ž§§¢«®³±³¸½¹ÀÅÅÈÌËÏÏÒÔ×ÕØÛÞÝàãÈ ‹ž…•œœ—™™›œ™œ›“™•“‘••‘…‹‡‰ž«¹ÃÏÕÛÝÝÛÛÛ×ÔÙ^DQ[VOT`elnreTQVLbbge`+u¤µ¹»¸®™Y.g›§¶¶¶¸³¶¸µ±§œ…`yƹ#))+#+} b)D7^bbJ1pD{yrLOO[¢°ž©¤1Qr¶Û)?.&V )+&<& 19)&Qgl^VQ#)JYur{wwp{‹…‰ƒ‡‰…‹‹•‹—•—›— ¢§©°°³»µ½ÁÁÅÆÌËÏÑÑ×ÕÚרÚÞàáàb œ›‰“¢œ™• œ™œž•••›—““‘‰‡}ƒ ±¾ÆÌÒØÞàÞÝÞ×ÚζQVT^VQ^^gnnlbVQ^^ngb[i)e ±»½»®“O9lœ¤±»¹¸µ¶¸³±©œng¾ &###4< + +# )L¤uD?11++JO1YVnliBbDgž ¢…¶l?lÈÏ GG+i&++)4.+17YlYYe[ LLlrƒ}w…‡ƒƒ…‡‰‹‡‹‰‘“™™ž›œ¢¤¥¥µ°¸µ¶À½ÁÃÅÈÎÏÑÑÕÔרÚÛÞàáá½ › ™›ž ¤•œ›››—™™‘““‘“‘‰…›µÃÌÉÑÕÛÝÝÞÛÛ×ÒÅœ`VYTYV`gglnn`QLOV[liYi` 9e›«¹»¶©O +g›«³¶µ³¶»½¹±§œ‡—‡r)) #< #))#&&p¢g9J&9&71#9)V?u^^^T4i™žr®})#TȬVQ.Q+&+# <7).LTOVpuY# eYly{yuyƒ…ƒ‡}‡ƒ—‘‘“•›—™ ¤§«®±¬µ¹»»ÀÅÆÈËËÌÒÔÔ×ÚØÚÝÞáãÝ7 #—œ•“ž™œ¢œž—™—•——••‡‡‰{¸ËÑÑÑÒÕÝáàÞÝÛÕα‰VQVQ[T`eliulVYTY^[ie`yr^—§³¶¹¬•^+e…›©µ¹µ¹¸¶¹¸¸¬™‡ u{1 <& )#1.‰—T#?4.)+4##J&pe}gQ[#g§r«®‰&l½VuLD9D&+##+)1& 1#BT`prr[[eg}}}ƒ…ƒ…}‡‹‘‹“•—œ™ ¢¤©§¬±µµµ½ÃÁÁÈËËÏÒÔÔרØÚÛÛààã§+™ž žžžœœžž—™“••‘‹‘‡‰‹‹‹}}¤ÉÕÛØÒÒÕÛáÞÞÝÛÒÞnVVVQO`^eninb[TT^geie[ig Y‘§³»¹°™Y#gƒž«³¶¹¹¶»¾µ®©™‡+&1 }•i+.?&.#+#D)gL•11+J°—•«l9§yp¶¤TÑ<D?7+)1#4# &#&.1)<Tinrl^#Lbi}{ƒƒƒ‡ƒ……‡‰‘•—™› ¥¤§§¥°³¶¹¹ÁÁÃÆÉÌÏÑÒרÕÛÚÝÛÝããÑJ“‘‹«ž ›™œ— •™™‘““—‘‡‡‹‡}ƒ¶ÔÛÞÞØÔ×ÝàÞàÝØÎ¸‰bVTTOYVgiinn[QOO`enlegee G‡§µ»¸®œb i‡ž§¶¸¸¸¶¸»»±§ž‰{ #.7& QœL71J1 +.97))w“<<Te™›ž©¥?•7yµ¬¥¾ D&.<.+B)#+79+JiruupuOD[inrw…‡‰}…ƒƒ…ƒƒƒ…‰‹“•œž ¢¥«¤§³µ®»»ÀÁÃÆÈÉÎÑÕÔ×ÕÚØÛÛÝÞãÞG Y‹‘‘©™ ›œ‘—›™—™““••‹•‰‡ƒ…{{…ÁØàáÞØØÛÞàààÛÕÅ¢w[VTVD`Tinrl`^VQ^leginbpQ G…©¸À½¬œn#`‰—¬µ³µ±¸¶¶¹±«›‹{w)&?&	 b…<9u7#)BB)# .1#D#7‡}uQre•“¤›•ƒË³9J.G 1++ #. 9## &G?LrrwullTOVbpry}ƒƒƒƒ…‡……‰‡‹‹“•œ™ž ¢¤§©±±¹½»ÀÅËËËÎÑÔÔÔÔÕרÝÚÝàठyƒ‘—§›™œ™›•›—•“•—‘“‘‹‹ƒ…{{‘ÉÚÞÞÝÕ×ÝÞÞÝÛ×θ“lb`^VQY`erne[QVYgelll[gT[ O‹¥µ¾¸®žy[‡¢«¶¶µ¶µ¸¸¸±¥œ‘un91? .1^ bTV+#)#T?##+Je &OQ{‹yœ JT‘¬Ã“Y^#<.#J14..4 # 7G[pupuyn9QQ`nyw}w}‡……‰……ƒƒ…‹ƒ—— ž ¤¤©®®³¶¶¹ÃÅÆÉÉËÏÕÔÕÔרØÚÛÝÞáÌ }ƒ‰œ™ ™žž™œ—‘›—‘•—•““‡‰…™ÌÚÞÝ×Ô×ÛàààÛÔâ‰lbbg^`[Ypppei^TV[e`gbY^TO9¥µ»¸° )+^™®±±®®°®®°¬¤™‹…B1##)& 1b1)1iJ`.1+T<+ 7## b7 )?›‹‹‘‡pQl{©¶Á™ww)O)#4&+T&+.##41G^pynruw&L^iuw}{}…ƒ‹‰…yƒ‡‰‰‹‘™—ž¤ž¢¥©®°¬µ¾ÃÈÆÈËÌÏÒÑÔÕ×רÛÛÛÝàÚ4…“™ §›•›••—‘ž—••••••‡‰ƒ}…žÑÛÞÚÕÒÕÝàÞÝØÑµ‘upp`Y[Vb[inp`TOT`gbl[^eVQJ <w¤¶¹¹± # #V›«±¶±±°±µµ®¤›…‰™1L##.D##&b[V.+&4+.. & G.?i#+9œ•œ…ey+Y4TB•—•ung[i... 9BOgupryru? Linpu}w}…‹…‰ƒƒyƒ‡‹‰‰‰‘™“›œœž¤¢¥©®«°½À½ÅÅÈÉÌÌÑÔÒÑרØÚÛÝÞÝÞ} …‘‘•ž¢›™—•—›•‘—•“™•›•“‰ƒƒ‡ƒƒ©ÒÚÝØÕÒ×ÝààÛØÆ¢rrpe^`YYeniiOOQ[Vlg``Y^O`[ Bw¥°¾½µ§ƒ+)^œ§±±¹µ¶¶¹³µ«›‰™l.<)7&)##&)7+ LVD&)?# 7.#.4VpG19g—V›ur‘iL‡LJ`9¶wl1<)9)))<JTiup{w{n<+Oeluƒ‡ƒ‰……ƒƒƒ}‰‹‹‘“™™™žœž¤©°«°»»½ÀÃÆÈËËÏÒÒÔ×ÕרÚÚÝÝཉ‘“•œœ¤›™•™—‘•‘‘——•‘•……‹‹ƒ±ÏÚàØÒÒÕÞáàØÏ½uinnbbQVbelebTOG[eiiV[`QQ^Y iž®»»»©}?<V‡™©®¶±¸¸¸¹¶µ«ž‰žl&) & .&<)#1BD.&+7 &+B4^i V9Te…ei……™‡?71.GO+l‰9+)+B?L`pp{y}`+B^^y}y……ƒ…‡‹‰{}…‡ƒ‡‡‡…‘“•“ žž§¥¬°±³µ½ÀÆÆÆÉÌÏÒ×ÔÔ×ÕØÚÚÚÛÝÔ•“œœ§———™•™‘“‘“—•‘“‰…‡‡ƒ…¬È×ÝÕÑÏØàáÝ×̰uwnnbeYJ^be[OQLV`iib^e^YQ`` r™©¶¹¶©ƒ#9[™©±µ¸¸¶¶¹µµ§›…«l +&)&.#&G?#)&994+<.J J1b9`^TO{u‰re}ƒœnw 4.9G74G<) )<LV^p{u{J&Jeby}ƒƒƒƒ‡‰‰‰{‰…‡‡‰‰‹™—• žž¤§¬«¬µµ¸ÀÀÈÅÈÎÌÎÒÔÔÕ×ÕÚÚØÚÝÛ4)y™—œ¥ ™œ——• •›——“—“•‘…‹‰‰ƒœ½ÑÔÒÑÎØááÝÔȧurrlileQY[eVY?Oebg``[Ye[V^[` &b—§¶¹±©…G)O{—©¬¸¶¶µ¶¹¹¶«——¢{)).# 44LB1 )B1)?+&)	+BQT1iO enDVež}g1n¢J^.&B7D? )&+)#DGbYni}{yw?G^l}{ƒ‡……ƒƒ‹‰‰ƒ……ƒ…}‹‡‰‰‡‘““›žž ¤¤««¬®±¾»ÁÅÉÈÎÏÏÏÑÒÔØØÚÚÚÚÛÝ™Dw—••¢ ™———™“™››—™•••——‹‰‰‹¢ÁÆÈÉÑÚáàÚÕÆœ{ngnebQVOb`Q7?VeeeggY[[Qbg^` Y©¸¶¸§‰V#4Qƒ—§°µµµ±¶µ»®§œ‡¥ƒ)T+4# DgD#)1?7.+ 4+1 1n#)4+[4.J{•¥ž`r[<}up11)1 .<) ))&+?OOgenuwrwp71T`r{}}…‡……‰…ƒ‡ƒƒ…‡……‡‰‘“™™™›œœ¢ ¥§«±°µ¶Á¾ÈÆÉÌËÒÑÔÒØ×ÚÚØÚÚÛÉQƒ•—ƒ“™›•™™¢œ››™œ•——™“‘‘‘ž¬µ»ÑÝæÞÚϽuge`g[LV`[YTDJ^pi^bTQb^^TblY O‹¬³¹µ©•b.7Q…—¥®±³µ¶°¸¸®¥™§…1`.&L[L? &<&D )?<J)D&4e1#)+r^ rY™{‘V17e‰«ƒ{»+# + ##&<QVenryrruY#4Ynrƒ‹‰‹‡………ƒ…}…}ƒ}……‹“™™›œœ¤ ©¥©¬±µ½¾ÀÅÅÉÌÎÎÑÔÔÕØØ×ØØÚÛÒe‹•w}‰‰“•žžœ™™ž››œ™‘‘™‹‘“™‘…‘—¶ÒàãÞØÎ±‡pge[TLQTV^LBGLelg^[TTV[b^b[L B§³±¶«l .J}“¥±µ±³µµ¶¸®§™ƒ••+[#))41)4 +)<)D+&77++7#?<9{))ub?# .i§w1 4G…ÁÅw 14.&#+1DJgenuyrurGOLn{}‡‡‡‰…‰•‡…‹ƒ‰ƒ…‹‡‹‘‘““—››ž ¢¥§³³¹½ÀÃÈÈËÎÏÏÔ××ÕרÚÚÚÛÝ™‘{brlu{‡‡‘•™›œ››•œ™“™‘™™•••‘“‰‰•ÀÕããÞ×ȧilggQBQ`bLO?LVeib[^J^Q^^Ye^?J§±µ¬¥•g9+Gw‘¢«±³¶³³µµ³¥›‡‡™+[))#97)<1.1L? ) 9.DQ&&B‡ƒ?b7g¥#.Y?9#&7&& <G`eeln}u{b1 Vew}‰……ƒƒƒ‰‡‰‰‡‡‡…ƒƒ…‡‡‘‰‹‘‘•—•—œž¢¥¥®±°½¸¾ÃÅÉËÎÑÑÑÔÕ×ÚØÛÚØÛÞËrlDbV^gip}…‰‹•‘•——•›™—‘•ž—™™•‹‹™È×ããÝÒ¾™pggYVLTY^[DJJQegb``TOV`g`bYJ#?}¢±¾¸±™`.1Q•¥³±µµ±¶¶¸µ¤ž‡w?b.&&&).# )D&G+ 4QG #.Q&9#1…ƒ•)J 9g?^‰YV‹ 1#.&&##1<7JbgpiryuuJ&+Tg‡}ƒ}‡‰‡‹‹‘…‡‰ƒƒ‡‹‰…‡‰“•“‘—œœœ›¢§¢¥«¬±³»½ÃÁÅÉËÎÏÔÔ×ÕÛÚÝÚÚÚàØƒQG<DDLQebglw{…‘••›œ—¤¤—‘‰‰‘¬ÏÛáá×϶‹pb`JB?Qb[J4?D^`^[`[^^`ge^QL491r§»¾»¶ r7&Du‹¢¬®µ±µ¶¶»±®¢‘ynGLO&.& 7?)4<#&1.V)#)4..?ebT‘¤T<D<4.TOYiQ&)&# B<DQgirgnyug JTy}}…‰‡‹……ƒ‰…‹‰}……‰ƒ‰‘——™“™œ ¢©«®®¶±»ÃÃÈÅÈÏÑÔÕ×ר×ÚØÝÛàÞ‡?G?O4<DDYQT^`plr}}‰…™ ©¥ž›ƒ‰—¾ÕÞáÝ×ÞgYLDJJe`Q<9J^e^^bYTVYenb^^G). )&i¬µÀ¾¸ž)+Gwž®±³¶¸¶µ¹±« yr[D`<# 9+)?4.47D1&# ))& ƒLe…p°V&G?<?G?§74V###&#+#<BJ`irrrpr{91Olyy…{{ƒ‘‰‰‡‰‰ƒ‰‰ƒƒ‡‡ƒ‰‰‰‰…‹‘‘—›œœ ¢¥«±¬°³µÃÃÅÆÉÎÏÒÔÒÔ×ØÚØÚÝÞà®<O<^?JGJO?LVOLYY^bgiu›§« •›œ‘›ÅÚàãṴ̂‹uVJGB?Q`[J9G^^lY[b[Y^glgY`DB)#y¥¸½¾¸¤‰91Lr‘ «°±µ³±¸¸³§¤ir[[`& <B) 4<)#97B+)1 &#&[nDi‰ ¥{.iry7Y&#+ #+)<?Qluullnn^7iu{}ƒ{ƒ…‡‹……‰‡‰…‡ƒ…‰{ƒ…‹…ƒ‘•—™™¢ ¥©°®¬¬¶»½ÁÅÈÌÑÏÔÔÕØØ×ÚÚÝÝàÎDQJ`VTTOTJ?GB1<B?BOGVi}“—œ©¬¢œ¬ÎÚãà×Áœ{YB4+7BQQQ9?Y`nOV`^[VVelTe^O4+ n«¸¾Ã¶®‰?+Dp‰¢¬±³¶¶µ»¹±¬¢‹9bLY&1 471Q+)91B9?#)+)) &g[ƒyžiwTT‡^ )1 &+TJ`pinnrre Ol}……}…ƒ…‡…‡‰‹‡……‹…ƒ…‰‹…‘———›¥¢§§¬«®µ»¾ÁÃÈÎÌÏ×ÔÕÔØØØØÛÝÞÚLDV[b`[bQVQDD471.+#&1D[lu‹¸ÅÁ© ¹ÑÚàÛÔ¸bG7))OGT<9BYnre[^YYTY[gpb^Y94+&# &)#r«¶¾Á»³›G.Ly‘¢©°¶±³³½¹³®¤‹<V9<+#+B.)+&<)#Q91)1+4)) 17&# iu—¢l puY+wV#+ ## )7JTbinplrg4Geu}ƒ…………‡‰‹‹‡‰‰‡‰‰‰…ƒƒƒƒ‡‡‡‹“•™™›œœ¢¤§§¥®±¶³¾ÁÃÃËËÌÏÒÔÔ×ØÚØÛÛÝÞG^`gglQVVTJD71+###1^r®ËËȳ©ÀÔÝÞÚɧyL<)#+DGB?B[grueYTVLYVelbgVG4. )997<lžµÀž½‘V4Qr‘ž©°¶¸³¶¸¾¸°¥}V…g7 # 7&&.#4)?19.)9&? <.1 en® {œDbƒT#+ )B?Q`ginl}uG+Vn{}‡ƒƒƒ…‡‰‹‰‰‹‰‡ƒ…ƒƒ‡…‡…‰•““›•›œ ¥©®°¶¶½¾ÁÆÉÈÌÒÒÔ×Ô×ÛÚÛÛÝÝÀLYgngbgg^YVGLD1))4‘ÈÒÒÆ§¥É×ÝÝÔÁ“Y4&11DLL94LTblgYQJJG`^lgi[Y?+&.#?QGJJQl—µÀÆÃ¹™i9Ln¢©±¶¸³µ¸»µ®žb^u<+) +BD 9.#+7&77+G+.1& )1 ^)) Oƒœ•lbe^} &+# BDT`iinlpnY Ji{}…ƒ…ƒ…‰…ƒ‡‡‡‡…‰‹‹‡‰ƒƒ…ƒƒ‡ƒ‡‰‰•‘‘“œž œž¢¥©¬±°»¸½ÅÈËÌÎÏÔÕ×ÕØØÛÚÛàÔOVb`nirug`eQTL?1)##7 ÎÕ×Àž¶ÏØÝØË¤[<4.<DBJ7BTeryVYQTOOTenwgTVB<7&.`[VO[Y{•µÀÃÁ¶žr9Op ¬®¶¶¶¶¹Àµ°¥g[‡[T#494#)))&+1+.D7J144###.+.?4.# ??½‘`T{—+ .G<J`lginu`G[r{ƒ‹‰‰ƒ…}…‹‹‰‡‹‡ƒ‡ƒ‡…‡‰…‹“•›œžž™¥ž«±¬³µ»ÁÅÈÉÌÌÒÔ×Õ×ÔÚØÛÝÝÞwOTlpelnib`L^T?B144žÌÔÔ¸¥ÀÎÕ×̰r..#1??B79BTene[TLBLDVVlwrlbL??4+1OVVYge‡œµ¾Ãû¥<^iœ¬µ¶¶¸¶½¾¹°¤`[[L+ + .)9)) #9L)+44## 9+7194+71D9Jž‰ibB &	BDb`ulen[?[uuy}}ƒ…ƒ‰…‡ƒ‡‹‡‡‘…‹‰‡………‡‰‡ƒ…‹•›™•ž ¤¥©©¬®µ¹½ÃÆÈËÎÎÑÕÕÕÕØÛØØÚݬBV`pplplibg`QJL??)+.9•ÁÏÑÅÃÃÒÏ̬{.& #)<D91DL^gl[L?BGBO^`nun`QQVJ1+<V^Qegr›¶¾Áž©ƒ?Vn‰œ°³³¶¸»¾½¸±«Qnw[D#1 +1.). #4?. DO+&#?V+ +V) D^VBƒGƒžw)&##4B1T`erinL#BYluw{wƒƒƒ‹…‡…‡‡ƒ……‡‰‹…“…‰‰‡…ƒ…‹‡‰…‡‘‹‘—“• œ¤¥¬¥§®¹¸¹¾ÆÅÈÌÏÑÕÔ××Ú××ÚÛÝÑDTVgnrpigbbVTVLJD94+)<¾ÏÑÑÉÈÆ¸¥yG4&.+<D.49L`ee``T<BJQO`iwp`^TOO?+DBBTenr›¶½Ã¾¹©‡D^n‰ «³³µ¹½½½¸°¤Lw[#+)+ .1)+ )#&99V&QY##&&[^&#T17y&<}™.Qgp1 #&& 4BGY[Tbn^# O``ur}ry{ƒ‹ƒ‡‹…‡…‡…‰‹‰‹‰‰‡‰ƒ‰‡‰…ƒƒ•““™™› ¤¥¥¬±¬³±¾ÀÅÈËÎÎÑÔ×ÕÚÛ×רÝÛgT^belnle`[gY[QLQ?DJBQƒÀÒØÛÏç—rB<##?9<?19JTlpi`QQ?BDJelwri^`[LJ79B+7Q[w}{‹›µ¹¾¾»§J^n‡ «¶³³¶¹»½³¬¢bl}i#&?91&#+4&##.[7i&7BYT^DD4)g#B)OB`«nVO<+ ) ??J[i[D# <Q^gnup}}}……………‘…ƒ‡‰‡‰‰‹‘‡‹‰‡‹‰‹…‹‡ƒƒ…‰•‘“•—œ¤ ¥¢«°¬°µ¸ÀÁÅÉËÏÎÑÒ××ØÚØÝÚÝ•QY^iblgneie[bVOQVYVJV¾ÕÛØÉ©…VD4.)#<BB74QQbil`QD?DLG^[uynl^^YT+9BJ9)J^y{ry“°»¾½¸¤T[iž«³¶¸¸¸½»¹±«lQpb & 91.JB& +O7e#+OiQ4 bB ‰749^TBœOGT ?GLYB&J 1TY`iplwur}}}ƒ}…‰…‰‡‹‰••‰‹‰‹…‡‰‡‰…‰‘“‘•™œœ ¤ «°±®µ¹ÀÁÅËÉÎÎÔÔרÚÚ×ÛÚÛ½DQe`lgbeiblblgVVT[^VQ‹¸ÑÔ˱yYBG4)7?QB?BV`npliVBB94GT^nwlrib`G7.D<D.1Obibn‹«¸ÁÁ¾©‘Y[n…•«³³¶¶¹»Àµ¬¥wL^Y )) .D7+#L+## #T7g1TuO^ )l 7G•# .Dlyµ‡?+ & &) # JLQ[bin}urr}{}y}ƒƒ‡‡…‡‡ƒ…‹‰‘‹—‹‹‹ƒƒ‰‹‰‡‹‹•••—•œ¢¥¢©®«µµ¹¹¾ÃÅÉÏÎÏÒÕըרÛÚÚÕTTY^gigprgpngb^lipe`V{§»¾±OOQG7BJD?B9<^iyl`YLTB71GblruwnlgY9.?G771+7L`lp‰¥½ÀÀ»®‹e[gƒ™§°µµ»¹¹¾¹µ©‰9Y+)) ##+1BB #)Q)) +<JL&er}B74r<O.…GY&Qƒu‘ g1) ))+)7QDTTinu}y}wy}{}ƒƒ}‰‰‡‡ƒ…‡ƒ‡‘‘‹‹“‡‰‹…‡‹‡‰“••žž ¤§§¬µ¸¸½¾ÁÆÆËÎÎÒÒ×ØØØÚÛÛØpOY[[`eilgpniiellrpbei›“yTQ??JBOO?B?JJYnug[99977?`inwwlg[B?9144+ )#7?[[[} µ½¾»¬bpƒ™©µµ»¹¸½¾»§¥™.L &֧ )Y4 +&DDi<^piL^T‰ 4#{1J)rinun##4)GDOJVbrnunppuy}yy}}ww…‡ƒ‡‡‰‹…‘“‹‰‰‘‡‘ƒ‰‡‹‰‹••—™› ¢œ§©©±µ¶¾ÀÆÅÈËÌÎÏÒÔ×ÚØÚØÛÝ©?OV`gegnlnwnleuyrrlrllwpbVQLOLYLOD17L[bpVQB?7.17Jnipu}rnV??4741))9JYT•³½Á½°“ƒbp•¥°±¸¹¹¶½¶®§•+O#1 .+ .?J<.1<^ .Ve.GyG‡n&^L9Y1&Gng‡1yg+ ))7?JOY^Ybnrnnruwyw}w}wyu…ƒ…}ƒ‰…‡‰‰…‰‡‹‹…‘‰‰•‹…‰…‹‡‹‡‰•—‘™œœ¢¤©¬«¶µ¸¹ÁÅÃÆÉÏÎÑÒ×רØÛÝÚÆJDVQ`ggpr{uprw{wplrugnbe^YV`[e[LTGLGVigeQ^LBB91J[lp}ypliQG9)19+1.&?79?LLy›µÀËȹ—…^iƒ™©±¹µ¸¶¾½¹°¥u<B7J#+##+)<.177&l) Be# Bw4‰)glu bD)ByTBB 4#)1?GYegggenpuy}u{u}uy}uyy…ƒ‡‡…ƒ…‰‡‰……‡‹‡“‹“‰‘‰‰‘“‰‘‘““™“™œ ¤¥¥¬¬°¸µ¸ÀÃÃËËÌÑÏÕØ×רÚÝÕOBQ^^glnupruuyy}wprnggi`b[Yigb^OJJOL`eOVO7DDQD7QbuwpwbQ?.+)1# &).1)<1?n›ÀÏÑÏα‰iw…œ§µµ¹¹¹»À¹±ƒ9 .+1&14 .+<..+? TT#[wB+ .r4Ti1YlJ<L‘Yb97+)&DDQYgelnilprwuwpu{{y}}u{ƒyƒ……ƒ…ƒƒ…ƒ‹…‰‰‰‡‰‹‘‹‘‘‹‘‘‘“•™•œ¢ž©§©«°¶¶»¾ÁÀÀÈÎÎÏÏÔ×××ÕÛØØ{7VY`lnnuury{}y{lunnngebY[llneTQLDYb`^TD<1?9T?Dgu}y{lb^T?9)1<&+# #17&74GrœËÑÔÑÑÅ™gr›§°¸¸»¶½½¹®i4..&7#& ++41&.<&4u#}g#&)4nD7œ“7O < G{i+<p{L.& ##?LV[[iinrninpwwyw{yu{}}{{{{{……ƒ…‰ƒ…‹‘…““‘“™““•‘‹‘—“““™•›žœ¢§§¬®°¹½¹½ÃÀÅËÎÎÏÒÔÕ×ÕØÚÚ«GLTT^Tluin}uywprrpeeblrrng[YOY[bgYQ9D97B<JVlypn[G?.&..)&))<#)+)4.1p¥ÌÑÔÕÑȳbp™§°µ¸¹¶½»µ®•‰O. <#9#9[1&)&477#^4#›O# T{+Qr¢Q#nG71L<y+#?[ngy)<BG[geibgpwnguy}yw{uywy}y}{w}{……ƒƒ‡ƒƒ‰‡‰‡‰‰‹—‹““‰“‘—••™›“• ž¤©§¬«¶¸µ¸¾ÁÆÅÆËÔÒÒÔÔרØÚÛÈ7DL`rir`un{uyyppnglilnpy{pbYT^iee[QOTGOD9QVl}ƒƒ…{p`TG.&)#.4+1??&1)#7+7p«ÎÑÒÒÏɶluƒ—¥³¶¶¸¶¸¶µ¶ƒ[# .1+)..).TTO41J+.—G& +Op^L•‹#.…‹&G+1[<[GO…T& )9LOT[bgllrpplpu{ywuy}y}{}{wr‰ƒ}‡‰ƒƒ…‡‹‰•‘‘…‹‘‹‹““““›“‘‘›•›œœ››¤¤§¥¢¬¬¶±¹ÀÀ¾ÅÈÌÎÏÏÒÔÕØØØÚÕYLOVV^nglyu{{y{pprluriuyywleVY[`QTJYOTYBDGYly‡……}rbYD7< ++?+?`L &)#...Y©ÎÎÑÑÌŸbl…›¤°µ¶¶¹¹¹¸±pbJ)97#41O+)7G`G#+7<O•#4&4OGDL‡i.‘‰11[D))gGV‹#+ 9BDLO`eginglyrr{r{wywuy}ww{wƒƒ…}}ƒƒ‰…ƒ‹‡‰‹‰“‰“‘““•“™“™‹‘™“•™›œž ¢«¥©©¬®³¸¹ÀÁÅÈÈËÏÎÒÔÔÕÒØÝÝGQ^`Yb^unywy{{yrrw}‡ynnV^[LTOQD[VTTQGQ[r…‹‰ƒƒiYL1+)&))+4DT^[ .+&4&OœÎÎÎÑÌÅ®ly…›§©°¹¸¶¹¹³¶^B& +D.G7)7???7&D`•`&G.B{##L<7—[#‰b&# 9O?B&JbgG#<BDTOQY`geelnrpurww{w{wy{}{{{yƒ…}}}ƒ……‰…ƒ‰‹‹‰‰‰‹‘‘“•““““™—••¢§ž› ¥¤«¥§®¬±µ¸ÀÀÆÆËÈËÎÏÒÔÕÔØ×Ú leb`^^`ell}……‡{uy{yƒ‰‹…wu[LTLJGD<TY[[QLO`e}…‹‰ƒyeG11&#<J^^[` 29.10 \ No newline at end of file
30.1 Binary file PTdecode/CImg-1.3.0/examples/img/logo.bmp has changed
31.1 Binary file PTdecode/CImg-1.3.0/examples/img/milla.bmp has changed
32.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 32.2 +++ b/PTdecode/CImg-1.3.0/examples/img/odykill.h Mon Aug 03 14:09:20 2009 +0100 32.3 @@ -0,0 +1,79162 @@ 32.4 +/*------------------------------------------------------------ 32.5 + 32.6 + Define hard-coded color images used in the 'odykill.cpp' 32.7 + example file, so that the corresponding executable does not 32.8 + depend on additional data files. 32.9 + 32.10 +--------------------------------------------------------------*/ 32.11 + 32.12 +/* Define image 'brain' of size 100x100x1x3 and type 'const unsigned char' */ 32.13 +const unsigned char data_brain[] = { 32.14 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23 + 255, 255, 255, 255, 251, 139, 89, 7, 7, 7, 7, 7, 7, 7, 7, 105, 32.24 + 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 147, 43, 15, 15, 15, 32.29 + 15, 15, 15, 15, 15, 112, 147, 147, 88, 0, 0, 0, 0, 0, 0, 0, 32.30 + 0, 0, 0, 0, 1, 51, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 121, 13, 0, 32.35 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.36 + 68, 92, 92, 92, 92, 56, 0, 0, 0, 0, 0, 105, 235, 255, 255, 255, 32.37 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41 + 159, 0, 0, 0, 0, 11, 85, 85, 85, 85, 85, 53, 0, 0, 0, 0, 32.42 + 0, 0, 114, 207, 229, 236, 236, 236, 236, 224, 206, 116, 7, 0, 0, 0, 32.43 + 76, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 170, 170, 170, 161, 39, 39, 32.47 + 39, 39, 39, 39, 3, 0, 0, 47, 174, 205, 237, 237, 237, 237, 237, 223, 32.48 + 200, 161, 39, 0, 37, 200, 229, 237, 237, 236, 236, 236, 236, 236, 236, 236, 32.49 + 202, 95, 0, 0, 0, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 169, 47, 46, 0, 0, 0, 32.53 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 219, 237, 237, 237, 237, 32.54 + 237, 237, 237, 237, 237, 237, 215, 193, 212, 237, 237, 237, 237, 236, 236, 236, 32.55 + 236, 236, 236, 236, 236, 225, 135, 0, 0, 113, 198, 178, 142, 47, 47, 47, 32.56 + 47, 47, 47, 84, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 75, 0, 0, 32.59 + 0, 0, 0, 0, 0, 0, 0, 27, 63, 63, 28, 0, 0, 0, 178, 237, 32.60 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.61 + 237, 236, 236, 236, 236, 236, 236, 236, 236, 237, 230, 23, 0, 8, 14, 0, 32.62 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 138, 242, 255, 255, 255, 255, 255, 32.63 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 194, 194, 194, 32.65 + 115, 0, 0, 0, 23, 56, 100, 178, 178, 178, 178, 203, 237, 237, 188, 38, 32.66 + 0, 14, 208, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.67 + 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 111, 32.68 + 0, 0, 0, 0, 0, 0, 35, 55, 55, 55, 4, 0, 0, 0, 103, 254, 32.69 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 32.71 + 53, 0, 0, 0, 0, 0, 3, 129, 198, 237, 237, 237, 237, 237, 237, 237, 32.72 + 237, 237, 237, 216, 171, 187, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.73 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 32.74 + 236, 237, 237, 196, 9, 0, 16, 60, 170, 170, 211, 236, 236, 236, 175, 72, 32.75 + 0, 0, 0, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.76 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77 + 255, 249, 116, 8, 0, 0, 0, 0, 0, 0, 101, 237, 237, 237, 237, 237, 32.78 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.79 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 32.80 + 236, 236, 236, 236, 236, 237, 237, 237, 178, 163, 187, 236, 236, 236, 236, 236, 32.81 + 236, 236, 236, 215, 105, 0, 0, 12, 193, 255, 255, 255, 255, 255, 255, 255, 32.82 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.83 + 255, 255, 255, 255, 255, 139, 0, 0, 0, 28, 34, 7, 0, 61, 228, 237, 32.84 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.85 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.86 + 237, 237, 237, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 236, 236, 236, 32.87 + 236, 236, 236, 236, 236, 236, 236, 236, 232, 71, 0, 0, 29, 228, 255, 255, 32.88 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.89 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 5, 0, 1, 56, 222, 237, 53, 32.90 + 0, 169, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.91 + 237, 237, 236, 208, 196, 196, 196, 195, 234, 237, 237, 237, 237, 237, 237, 237, 32.92 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.93 + 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 216, 39, 0, 32.94 + 0, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.95 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 23, 0, 0, 81, 32.96 + 237, 237, 237, 68, 19, 175, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.97 + 237, 237, 237, 237, 237, 235, 215, 224, 237, 237, 237, 217, 210, 237, 237, 237, 32.98 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.99 + 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.100 + 236, 236, 198, 9, 0, 10, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 32.102 + 0, 0, 45, 225, 237, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 32.103 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 216, 210, 237, 237, 237, 237, 237, 32.104 + 206, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.105 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 32.106 + 236, 236, 236, 236, 236, 236, 236, 155, 0, 0, 68, 253, 255, 255, 255, 255, 32.107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.108 + 255, 255, 252, 48, 0, 15, 205, 237, 236, 236, 236, 236, 236, 236, 236, 237, 32.109 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 216, 224, 237, 32.110 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.111 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 32.112 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 217, 33, 0, 0, 222, 32.113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.114 + 255, 255, 255, 255, 255, 255, 149, 0, 0, 78, 237, 236, 236, 236, 236, 236, 32.115 + 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.116 + 237, 216, 224, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.117 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.118 + 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.119 + 155, 0, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.120 + 255, 255, 255, 255, 255, 255, 255, 169, 17, 2, 1, 0, 0, 173, 236, 236, 32.121 + 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 32.122 + 237, 237, 231, 198, 196, 186, 224, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.123 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.124 + 237, 237, 237, 237, 237, 231, 199, 203, 236, 236, 236, 236, 236, 236, 236, 236, 32.125 + 236, 236, 236, 236, 235, 16, 0, 67, 255, 255, 255, 255, 255, 255, 255, 255, 32.126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 3, 0, 0, 0, 0, 32.127 + 81, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 32.128 + 237, 237, 237, 237, 237, 237, 205, 234, 237, 225, 230, 237, 237, 237, 237, 237, 32.129 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.130 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 205, 233, 230, 209, 237, 237, 237, 32.131 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 59, 0, 7, 141, 141, 207, 255, 32.132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 32.133 + 0, 21, 94, 97, 197, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.134 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 32.135 + 237, 237, 237, 206, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.136 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 207, 233, 237, 237, 32.137 + 214, 211, 196, 196, 209, 236, 236, 236, 236, 236, 236, 236, 237, 154, 0, 0, 32.138 + 0, 0, 10, 18, 33, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.139 + 255, 255, 114, 0, 47, 204, 222, 234, 237, 236, 236, 236, 236, 236, 236, 236, 32.140 + 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 210, 230, 237, 32.141 + 237, 237, 237, 237, 237, 237, 211, 229, 237, 237, 237, 237, 237, 237, 237, 237, 32.142 + 237, 237, 237, 207, 186, 196, 196, 201, 237, 237, 237, 237, 237, 237, 237, 221, 32.143 + 219, 237, 237, 237, 234, 186, 237, 237, 223, 199, 234, 236, 236, 236, 236, 236, 32.144 + 237, 221, 27, 0, 0, 0, 0, 0, 0, 7, 186, 255, 255, 255, 255, 255, 32.145 + 255, 255, 255, 255, 255, 240, 104, 0, 105, 222, 222, 224, 235, 236, 236, 236, 32.146 + 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 32.147 + 237, 207, 233, 237, 237, 237, 237, 237, 237, 233, 208, 237, 237, 237, 237, 237, 32.148 + 237, 237, 237, 237, 237, 237, 221, 208, 229, 237, 237, 204, 237, 237, 237, 237, 32.149 + 237, 237, 237, 226, 226, 237, 237, 237, 237, 232, 237, 237, 237, 219, 221, 237, 32.150 + 237, 237, 237, 237, 237, 237, 214, 205, 177, 83, 83, 20, 0, 0, 22, 222, 32.151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 104, 0, 105, 222, 222, 222, 32.152 + 233, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 32.153 + 237, 237, 237, 237, 237, 207, 233, 237, 237, 237, 237, 237, 237, 225, 215, 237, 32.154 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 204, 32.155 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.156 + 237, 237, 212, 229, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 207, 32.157 + 44, 0, 0, 57, 240, 255, 255, 255, 255, 255, 255, 255, 255, 229, 104, 0, 32.158 + 105, 222, 222, 222, 233, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 32.159 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 207, 233, 237, 237, 237, 237, 237, 32.160 + 237, 225, 215, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.161 + 237, 237, 237, 213, 214, 214, 214, 214, 214, 220, 237, 237, 237, 237, 237, 237, 32.162 + 237, 237, 237, 237, 237, 237, 235, 232, 237, 237, 237, 237, 237, 236, 236, 236, 32.163 + 236, 236, 236, 236, 198, 20, 0, 0, 124, 255, 255, 255, 255, 255, 255, 255, 32.164 + 255, 229, 104, 0, 105, 222, 222, 222, 233, 236, 236, 236, 236, 236, 236, 236, 32.165 + 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 215, 226, 237, 32.166 + 237, 237, 237, 237, 237, 228, 212, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.167 + 237, 237, 237, 237, 237, 237, 237, 235, 203, 219, 219, 219, 219, 212, 206, 237, 32.168 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.169 + 237, 236, 236, 236, 236, 236, 236, 236, 236, 163, 7, 0, 23, 227, 255, 255, 32.170 + 255, 255, 255, 255, 255, 229, 104, 0, 105, 222, 222, 222, 233, 236, 236, 236, 32.171 + 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.172 + 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 32.173 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.174 + 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.175 + 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 101, 0, 32.176 + 0, 71, 255, 255, 255, 255, 255, 255, 255, 229, 86, 0, 105, 222, 222, 222, 32.177 + 229, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 237, 237, 237, 32.178 + 237, 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 197, 198, 32.179 + 221, 228, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.180 + 237, 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.181 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 32.182 + 236, 236, 197, 16, 0, 44, 255, 255, 255, 255, 255, 255, 255, 161, 4, 0, 32.183 + 105, 222, 222, 222, 226, 235, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 32.184 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 226, 237, 237, 237, 237, 237, 32.185 + 237, 237, 237, 234, 208, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.186 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 32.187 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 32.188 + 236, 236, 236, 236, 236, 236, 236, 150, 0, 14, 213, 255, 255, 255, 255, 255, 32.189 + 225, 20, 0, 0, 117, 222, 222, 222, 222, 235, 236, 236, 236, 236, 236, 236, 32.190 + 235, 226, 231, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.191 + 237, 237, 237, 237, 237, 237, 237, 237, 216, 224, 237, 237, 237, 237, 237, 237, 32.192 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 234, 207, 237, 32.193 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.194 + 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 181, 0, 0, 194, 255, 32.195 + 255, 255, 255, 255, 144, 0, 0, 50, 212, 222, 222, 222, 222, 236, 236, 236, 32.196 + 236, 236, 236, 237, 213, 206, 201, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.197 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 216, 224, 237, 237, 32.198 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.199 + 237, 217, 192, 216, 232, 237, 237, 237, 237, 237, 237, 237, 237, 230, 228, 228, 32.200 + 232, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 215, 32.201 + 26, 0, 194, 255, 255, 255, 255, 255, 43, 0, 15, 195, 222, 222, 222, 222, 32.202 + 222, 236, 237, 237, 237, 237, 237, 234, 206, 237, 206, 235, 237, 237, 237, 237, 32.203 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.204 + 216, 224, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.205 + 237, 237, 237, 237, 237, 237, 237, 216, 201, 231, 237, 237, 237, 237, 237, 237, 32.206 + 237, 212, 204, 204, 200, 219, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 32.207 + 236, 236, 236, 236, 42, 0, 194, 255, 255, 255, 255, 255, 0, 0, 77, 222, 32.208 + 222, 222, 222, 222, 222, 236, 237, 237, 237, 237, 237, 208, 233, 237, 234, 206, 32.209 + 237, 237, 237, 237, 235, 215, 196, 227, 235, 237, 237, 237, 237, 237, 237, 237, 32.210 + 237, 237, 237, 237, 216, 223, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.211 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 190, 236, 237, 32.212 + 237, 237, 237, 237, 237, 237, 237, 237, 235, 206, 237, 237, 237, 237, 237, 236, 32.213 + 236, 236, 236, 236, 236, 236, 236, 205, 19, 0, 190, 255, 255, 255, 255, 255, 32.214 + 0, 0, 165, 222, 222, 222, 222, 222, 222, 236, 237, 237, 237, 237, 237, 223, 32.215 + 235, 237, 237, 204, 236, 237, 237, 237, 212, 213, 237, 205, 197, 210, 236, 237, 32.216 + 237, 237, 237, 237, 237, 237, 237, 237, 227, 198, 237, 237, 237, 237, 237, 237, 32.217 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.218 + 237, 224, 216, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 212, 229, 237, 32.219 + 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 180, 0, 0, 183, 254, 32.220 + 255, 255, 255, 255, 0, 38, 215, 222, 222, 222, 222, 222, 222, 236, 237, 237, 32.221 + 237, 237, 237, 237, 237, 237, 237, 217, 223, 237, 237, 237, 224, 232, 237, 237, 32.222 + 237, 191, 233, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 188, 237, 237, 32.223 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.224 + 237, 237, 237, 237, 237, 214, 226, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.225 + 237, 219, 222, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 84, 32.226 + 0, 20, 208, 250, 255, 255, 255, 255, 0, 78, 222, 222, 222, 222, 222, 222, 32.227 + 224, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 217, 223, 237, 237, 237, 32.228 + 237, 237, 237, 237, 237, 207, 198, 200, 233, 237, 237, 237, 237, 237, 237, 237, 32.229 + 237, 235, 196, 196, 166, 209, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.230 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 219, 237, 237, 237, 237, 237, 237, 32.231 + 237, 237, 237, 237, 237, 204, 236, 237, 237, 237, 237, 237, 237, 237, 236, 236, 32.232 + 236, 236, 236, 84, 0, 40, 237, 239, 255, 255, 255, 255, 0, 78, 222, 222, 32.233 + 222, 222, 222, 222, 230, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 225, 32.234 + 195, 223, 237, 237, 237, 237, 237, 237, 237, 235, 232, 232, 199, 209, 237, 237, 32.235 + 237, 237, 237, 237, 237, 237, 237, 207, 232, 237, 237, 237, 237, 237, 237, 237, 32.236 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.237 + 237, 237, 237, 237, 237, 237, 237, 237, 221, 220, 237, 237, 237, 237, 237, 237, 32.238 + 237, 237, 237, 237, 237, 237, 237, 84, 0, 2, 141, 237, 249, 255, 255, 255, 32.239 + 0, 78, 222, 222, 222, 222, 222, 222, 222, 233, 237, 237, 237, 237, 237, 237, 32.240 + 237, 237, 237, 237, 236, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.241 + 237, 223, 204, 237, 237, 237, 237, 237, 237, 237, 222, 219, 237, 237, 237, 237, 32.242 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.243 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 215, 196, 199, 210, 32.244 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 124, 0, 0, 6, 94, 32.245 + 249, 255, 255, 255, 0, 49, 217, 222, 222, 222, 222, 222, 222, 223, 235, 237, 32.246 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 220, 221, 237, 237, 237, 237, 237, 32.247 + 237, 237, 237, 237, 237, 237, 200, 237, 237, 237, 237, 237, 237, 237, 221, 220, 32.248 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.249 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.250 + 237, 237, 233, 222, 214, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 202, 32.251 + 52, 0, 0, 17, 223, 255, 255, 255, 0, 0, 209, 222, 222, 222, 222, 222, 32.252 + 222, 222, 225, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 234, 202, 224, 32.253 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 214, 226, 237, 237, 237, 237, 32.254 + 237, 237, 221, 220, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.255 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.256 + 237, 237, 237, 237, 237, 237, 237, 237, 218, 223, 237, 237, 237, 237, 237, 237, 32.257 + 237, 237, 237, 237, 223, 67, 0, 0, 87, 254, 255, 255, 0, 0, 133, 222, 32.258 + 222, 222, 222, 222, 222, 222, 222, 233, 237, 237, 237, 237, 237, 237, 237, 237, 32.259 + 237, 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 209, 231, 32.260 + 237, 237, 237, 237, 237, 237, 221, 220, 237, 237, 237, 237, 237, 237, 237, 237, 32.261 + 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 237, 237, 32.262 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 211, 229, 237, 32.263 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 208, 17, 0, 12, 223, 255, 255, 32.264 + 0, 0, 37, 203, 222, 222, 222, 222, 222, 222, 222, 223, 235, 237, 237, 237, 32.265 + 237, 237, 237, 237, 237, 237, 237, 210, 230, 237, 237, 237, 237, 237, 237, 237, 32.266 + 237, 231, 210, 237, 237, 237, 237, 237, 237, 237, 233, 207, 237, 237, 237, 237, 32.267 + 237, 237, 237, 172, 171, 171, 171, 171, 171, 171, 181, 236, 236, 236, 233, 170, 32.268 + 170, 170, 170, 231, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.269 + 237, 230, 210, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 237, 133, 0, 32.270 + 0, 217, 255, 255, 80, 0, 0, 37, 52, 140, 222, 222, 222, 222, 222, 222, 32.271 + 217, 196, 200, 232, 237, 237, 237, 237, 237, 237, 237, 218, 198, 237, 237, 237, 32.272 + 237, 237, 237, 237, 237, 232, 234, 237, 237, 237, 237, 237, 237, 237, 237, 204, 32.273 + 237, 237, 237, 237, 235, 102, 56, 1, 0, 0, 0, 0, 0, 0, 8, 146, 32.274 + 166, 55, 53, 0, 0, 0, 0, 113, 217, 236, 236, 237, 237, 237, 237, 237, 32.275 + 237, 237, 237, 237, 237, 237, 212, 229, 237, 237, 237, 236, 236, 236, 236, 236, 32.276 + 236, 236, 217, 11, 0, 217, 255, 255, 191, 12, 0, 0, 0, 52, 222, 222, 32.277 + 222, 222, 222, 222, 224, 236, 225, 215, 237, 237, 237, 237, 237, 237, 237, 201, 32.278 + 231, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.279 + 237, 237, 237, 228, 237, 237, 237, 237, 137, 0, 0, 0, 0, 0, 0, 0, 32.280 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 191, 236, 236, 32.281 + 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 212, 229, 237, 237, 236, 236, 32.282 + 236, 236, 236, 236, 236, 236, 237, 14, 0, 196, 255, 255, 255, 150, 47, 13, 32.283 + 0, 15, 195, 222, 222, 222, 222, 222, 222, 234, 237, 207, 234, 237, 237, 237, 32.284 + 237, 237, 237, 227, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.285 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 225, 28, 0, 0, 42, 32.286 + 83, 166, 165, 165, 165, 51, 0, 0, 0, 0, 19, 43, 91, 89, 0, 0, 32.287 + 0, 31, 174, 236, 236, 237, 237, 237, 237, 237, 237, 237, 237, 226, 214, 237, 32.288 + 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 14, 0, 119, 255, 255, 32.289 + 255, 255, 255, 144, 0, 0, 169, 222, 222, 222, 222, 222, 222, 230, 237, 227, 32.290 + 213, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.291 + 237, 237, 237, 237, 237, 237, 225, 200, 118, 78, 78, 78, 78, 78, 78, 57, 32.292 + 0, 0, 75, 234, 237, 237, 236, 236, 236, 205, 68, 0, 3, 69, 193, 236, 32.293 + 236, 223, 117, 17, 0, 0, 148, 236, 236, 236, 236, 237, 237, 237, 237, 211, 32.294 + 193, 206, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 14, 32.295 + 0, 119, 255, 255, 255, 255, 255, 188, 3, 0, 92, 222, 222, 222, 222, 222, 32.296 + 222, 227, 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.297 + 237, 237, 237, 237, 236, 235, 235, 235, 225, 140, 58, 0, 0, 0, 0, 0, 32.298 + 0, 0, 0, 0, 0, 6, 194, 237, 237, 237, 236, 236, 236, 236, 187, 150, 32.299 + 158, 236, 236, 236, 236, 236, 236, 180, 9, 0, 148, 236, 236, 236, 236, 237, 32.300 + 237, 237, 237, 232, 209, 236, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 32.301 + 236, 236, 226, 12, 0, 119, 255, 255, 255, 255, 255, 255, 29, 0, 83, 222, 32.302 + 222, 222, 222, 222, 222, 222, 227, 234, 185, 196, 196, 218, 235, 237, 237, 237, 32.303 + 237, 237, 237, 237, 236, 235, 228, 227, 224, 222, 222, 217, 81, 0, 0, 0, 32.304 + 0, 0, 21, 21, 21, 21, 20, 0, 0, 57, 237, 237, 237, 237, 236, 236, 32.305 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 172, 143, 201, 236, 32.306 + 236, 236, 236, 236, 237, 237, 237, 237, 226, 215, 237, 237, 237, 237, 236, 236, 32.307 + 236, 236, 236, 236, 236, 236, 153, 0, 0, 129, 255, 255, 255, 255, 255, 255, 32.308 + 89, 0, 0, 222, 222, 222, 222, 222, 222, 222, 222, 224, 232, 237, 237, 215, 32.309 + 212, 237, 237, 237, 237, 237, 237, 236, 230, 222, 222, 222, 222, 222, 222, 125, 32.310 + 0, 0, 0, 13, 96, 139, 237, 237, 237, 237, 228, 136, 136, 198, 237, 237, 32.311 + 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.312 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 216, 192, 227, 32.313 + 235, 237, 236, 236, 236, 236, 236, 236, 236, 236, 153, 0, 4, 226, 255, 255, 32.314 + 255, 255, 255, 255, 137, 0, 0, 219, 222, 222, 222, 222, 222, 222, 222, 222, 32.315 + 222, 231, 236, 237, 204, 237, 237, 237, 237, 237, 237, 233, 222, 222, 222, 222, 32.316 + 222, 222, 222, 86, 0, 1, 96, 226, 237, 237, 237, 237, 237, 237, 237, 237, 32.317 + 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.318 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 32.319 + 237, 200, 199, 199, 206, 236, 237, 236, 236, 236, 236, 236, 236, 236, 153, 0, 32.320 + 33, 238, 255, 255, 255, 255, 255, 255, 239, 0, 0, 131, 222, 222, 222, 222, 32.321 + 222, 222, 222, 222, 222, 222, 228, 229, 199, 229, 229, 229, 229, 229, 229, 223, 32.322 + 222, 222, 222, 222, 222, 222, 222, 86, 0, 80, 237, 237, 237, 237, 237, 237, 32.323 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 32.324 + 236, 236, 236, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 32.325 + 236, 236, 237, 237, 223, 218, 226, 199, 219, 222, 237, 236, 236, 236, 236, 236, 32.326 + 236, 236, 153, 0, 0, 170, 255, 255, 255, 255, 255, 255, 239, 0, 0, 87, 32.327 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 195, 222, 222, 222, 32.328 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 86, 0, 124, 237, 237, 32.329 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.330 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 236, 236, 32.331 + 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 226, 215, 237, 204, 237, 236, 32.332 + 236, 236, 236, 236, 236, 236, 193, 7, 0, 0, 164, 255, 255, 255, 255, 255, 32.333 + 254, 86, 0, 21, 198, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.334 + 195, 222, 222, 222, 222, 222, 222, 222, 222, 222, 208, 85, 6, 6, 6, 2, 32.335 + 0, 124, 237, 237, 237, 237, 237, 237, 237, 237, 233, 201, 216, 237, 237, 237, 32.336 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 32.337 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 210, 200, 207, 236, 32.338 + 237, 204, 237, 236, 236, 236, 236, 236, 236, 236, 236, 58, 0, 0, 63, 255, 32.339 + 255, 255, 255, 255, 255, 133, 0, 0, 132, 222, 222, 222, 222, 222, 222, 222, 32.340 + 222, 222, 222, 213, 187, 211, 222, 222, 222, 222, 222, 222, 222, 222, 67, 0, 32.341 + 0, 0, 0, 0, 0, 127, 237, 237, 237, 237, 237, 237, 237, 226, 200, 232, 32.342 + 216, 207, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.343 + 237, 237, 237, 237, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 237, 32.344 + 233, 232, 237, 237, 237, 204, 237, 237, 236, 236, 236, 236, 236, 236, 236, 215, 32.345 + 29, 0, 3, 212, 255, 255, 255, 255, 255, 217, 17, 0, 79, 222, 222, 222, 32.346 + 222, 222, 222, 222, 222, 222, 222, 222, 221, 199, 204, 222, 222, 222, 222, 222, 32.347 + 205, 45, 0, 0, 0, 57, 85, 0, 0, 168, 237, 237, 237, 237, 237, 237, 32.348 + 232, 209, 236, 237, 237, 225, 200, 236, 226, 208, 237, 237, 237, 237, 237, 237, 32.349 + 237, 237, 237, 237, 237, 232, 186, 196, 196, 201, 236, 236, 236, 236, 236, 236, 32.350 + 236, 236, 236, 237, 237, 237, 237, 237, 215, 226, 237, 237, 236, 236, 236, 236, 32.351 + 236, 236, 237, 237, 158, 0, 0, 209, 255, 255, 255, 255, 255, 255, 81, 0, 32.352 + 9, 178, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 196, 220, 32.353 + 222, 222, 222, 222, 146, 0, 0, 0, 128, 212, 221, 199, 206, 235, 237, 237, 32.354 + 237, 237, 237, 237, 207, 234, 237, 237, 237, 237, 233, 185, 206, 228, 237, 237, 32.355 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 235, 230, 237, 237, 204, 236, 236, 32.356 + 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 237, 223, 205, 237, 237, 237, 32.357 + 237, 237, 237, 237, 237, 237, 237, 237, 228, 24, 0, 209, 255, 255, 255, 255, 32.358 + 255, 255, 149, 0, 0, 41, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.359 + 222, 222, 218, 199, 222, 222, 222, 220, 58, 0, 9, 109, 218, 222, 222, 230, 32.360 + 237, 237, 237, 222, 196, 196, 193, 210, 230, 237, 237, 237, 237, 237, 237, 231, 32.361 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.362 + 237, 214, 227, 236, 236, 236, 236, 236, 236, 236, 236, 237, 237, 237, 218, 195, 32.363 + 232, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 28, 0, 209, 32.364 + 255, 255, 255, 255, 255, 255, 234, 31, 0, 5, 142, 222, 222, 222, 222, 222, 32.365 + 222, 222, 222, 222, 222, 222, 222, 195, 222, 222, 222, 218, 0, 0, 57, 222, 32.366 + 222, 222, 222, 222, 232, 237, 237, 204, 237, 237, 217, 190, 237, 237, 237, 237, 32.367 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.368 + 237, 237, 237, 237, 237, 233, 202, 212, 216, 236, 236, 236, 236, 236, 236, 237, 32.369 + 237, 237, 232, 202, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.370 + 237, 28, 0, 209, 255, 255, 255, 255, 255, 255, 255, 186, 0, 0, 14, 178, 32.371 + 222, 222, 222, 222, 222, 222, 222, 222, 221, 191, 192, 214, 222, 222, 222, 218, 32.372 + 0, 0, 121, 222, 222, 222, 222, 222, 223, 236, 237, 204, 237, 237, 233, 226, 32.373 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.374 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 210, 219, 202, 230, 236, 236, 32.375 + 236, 236, 237, 237, 237, 237, 237, 226, 214, 237, 237, 237, 237, 237, 237, 237, 32.376 + 237, 237, 237, 237, 156, 6, 0, 209, 255, 255, 255, 255, 255, 255, 255, 243, 32.377 + 69, 0, 0, 34, 175, 169, 179, 222, 222, 222, 222, 222, 221, 206, 218, 222, 32.378 + 222, 222, 222, 218, 0, 0, 121, 222, 222, 222, 222, 222, 222, 236, 237, 204, 32.379 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.380 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.381 + 233, 207, 236, 236, 236, 237, 237, 237, 237, 237, 237, 236, 205, 237, 237, 237, 32.382 + 237, 237, 237, 237, 237, 237, 237, 193, 17, 0, 0, 209, 255, 255, 255, 255, 32.383 + 255, 255, 255, 255, 182, 24, 0, 0, 0, 0, 11, 61, 214, 222, 222, 222, 32.384 + 222, 222, 222, 222, 222, 222, 222, 219, 18, 0, 102, 222, 222, 222, 222, 222, 32.385 + 222, 236, 237, 209, 231, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 217, 32.386 + 196, 196, 217, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.387 + 237, 237, 237, 237, 237, 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.388 + 204, 237, 237, 237, 237, 237, 237, 237, 237, 237, 219, 38, 0, 0, 64, 242, 32.389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 12, 0, 0, 0, 0, 0, 32.390 + 147, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 87, 0, 30, 222, 32.391 + 222, 222, 222, 222, 222, 236, 237, 230, 210, 237, 237, 237, 237, 237, 237, 237, 32.392 + 237, 237, 215, 215, 237, 237, 216, 225, 234, 223, 223, 223, 223, 223, 229, 237, 32.393 + 237, 237, 237, 237, 237, 237, 237, 237, 234, 206, 237, 237, 237, 237, 237, 237, 32.394 + 226, 224, 237, 236, 205, 237, 237, 237, 237, 237, 237, 237, 237, 237, 86, 0, 32.395 + 0, 28, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 168, 32.396 + 168, 58, 0, 0, 110, 225, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.397 + 100, 0, 10, 168, 222, 222, 222, 222, 222, 236, 237, 230, 210, 237, 237, 237, 32.398 + 237, 237, 237, 237, 237, 226, 215, 237, 237, 237, 237, 187, 210, 210, 210, 210, 32.399 + 210, 210, 203, 217, 237, 237, 237, 237, 237, 237, 237, 237, 232, 230, 237, 237, 32.400 + 237, 237, 237, 208, 206, 208, 199, 231, 208, 237, 237, 237, 237, 237, 237, 237, 32.401 + 237, 131, 19, 0, 10, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.402 + 255, 255, 255, 255, 255, 254, 64, 0, 11, 180, 223, 222, 222, 222, 222, 222, 32.403 + 222, 222, 222, 222, 179, 0, 0, 69, 222, 222, 222, 222, 230, 237, 237, 234, 32.404 + 227, 237, 237, 237, 237, 237, 237, 237, 237, 222, 222, 237, 237, 237, 237, 223, 32.405 + 225, 237, 237, 237, 237, 237, 235, 205, 237, 237, 237, 237, 237, 237, 237, 237, 32.406 + 237, 237, 237, 237, 237, 237, 237, 204, 237, 237, 216, 198, 226, 237, 237, 237, 32.407 + 237, 237, 237, 237, 176, 0, 0, 0, 140, 255, 255, 255, 255, 255, 255, 255, 32.408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 111, 0, 0, 0, 96, 209, 32.409 + 203, 203, 203, 206, 222, 222, 222, 222, 124, 0, 0, 69, 222, 222, 222, 222, 32.410 + 227, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.411 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 236, 204, 237, 237, 237, 237, 32.412 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 234, 207, 237, 237, 237, 237, 32.413 + 237, 237, 237, 237, 237, 237, 237, 237, 140, 0, 0, 24, 221, 255, 255, 255, 32.414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 8, 32.415 + 0, 0, 0, 0, 0, 0, 0, 12, 134, 222, 222, 219, 37, 0, 1, 124, 32.416 + 222, 222, 222, 222, 222, 225, 234, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.417 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 235, 201, 224, 32.418 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 235, 236, 237, 205, 236, 32.419 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 140, 0, 0, 121, 32.420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.421 + 255, 255, 255, 212, 65, 1, 0, 0, 0, 0, 0, 0, 31, 209, 222, 169, 32.422 + 0, 0, 79, 222, 222, 222, 222, 222, 222, 222, 224, 236, 237, 237, 237, 237, 32.423 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.424 + 236, 214, 226, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 226, 32.425 + 214, 237, 205, 236, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.426 + 142, 0, 0, 13, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 66, 0, 0, 24, 28, 0, 32.428 + 0, 153, 222, 126, 0, 0, 167, 222, 222, 222, 222, 222, 222, 222, 222, 225, 32.429 + 234, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.430 + 237, 237, 237, 237, 216, 208, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.431 + 237, 237, 237, 237, 219, 197, 213, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.432 + 237, 237, 237, 237, 237, 50, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 32.433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 32.434 + 252, 252, 204, 5, 0, 1, 2, 1, 0, 38, 217, 222, 222, 222, 222, 222, 32.435 + 222, 222, 222, 222, 224, 235, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.436 + 237, 237, 237, 237, 237, 237, 237, 237, 199, 208, 237, 237, 237, 237, 237, 237, 32.437 + 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 237, 237, 237, 237, 237, 32.438 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 214, 26, 0, 179, 255, 255, 255, 32.439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.440 + 255, 255, 255, 255, 255, 255, 255, 11, 0, 0, 0, 0, 0, 82, 222, 222, 32.441 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 225, 201, 215, 237, 237, 237, 237, 32.442 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 224, 202, 237, 32.443 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.444 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 197, 2, 0, 32.445 + 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 105, 105, 105, 60, 32.447 + 0, 82, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 197, 218, 203, 32.448 + 235, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.449 + 237, 237, 230, 208, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.450 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.451 + 237, 65, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.453 + 255, 255, 255, 145, 0, 8, 213, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.454 + 183, 210, 222, 223, 207, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.455 + 237, 237, 237, 237, 237, 237, 235, 205, 237, 237, 237, 237, 237, 237, 237, 237, 32.456 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 227, 146, 146, 204, 237, 237, 237, 32.457 + 237, 237, 237, 221, 96, 0, 0, 26, 247, 255, 255, 255, 255, 255, 255, 255, 32.458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.459 + 255, 255, 255, 255, 255, 255, 255, 145, 0, 0, 180, 222, 222, 222, 222, 222, 32.460 + 222, 222, 222, 222, 216, 220, 222, 222, 201, 228, 209, 209, 232, 237, 237, 237, 32.461 + 237, 237, 237, 237, 237, 237, 209, 209, 209, 205, 197, 233, 237, 237, 237, 237, 32.462 + 237, 237, 237, 237, 237, 237, 237, 235, 164, 153, 184, 227, 197, 36, 0, 0, 32.463 + 20, 31, 102, 153, 153, 118, 31, 26, 0, 0, 0, 157, 255, 255, 255, 255, 32.464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 0, 0, 92, 222, 32.466 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 210, 186, 223, 223, 32.467 + 200, 227, 237, 237, 237, 237, 237, 237, 237, 237, 224, 223, 223, 227, 237, 237, 32.468 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 235, 231, 142, 4, 0, 60, 151, 32.469 + 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 252, 32.470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.472 + 29, 0, 5, 126, 162, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.473 + 215, 204, 228, 235, 236, 205, 219, 224, 214, 214, 214, 233, 237, 237, 237, 237, 32.474 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 228, 223, 177, 13, 32.475 + 0, 0, 0, 0, 0, 0, 18, 64, 49, 0, 0, 0, 0, 0, 0, 0, 32.476 + 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.478 + 255, 255, 255, 255, 127, 0, 0, 0, 3, 50, 53, 222, 222, 222, 222, 222, 32.479 + 222, 222, 222, 222, 222, 222, 222, 224, 225, 225, 191, 205, 215, 215, 202, 225, 32.480 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 230, 32.481 + 222, 202, 32, 0, 0, 0, 0, 0, 0, 6, 151, 222, 210, 171, 164, 175, 32.482 + 182, 182, 186, 47, 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.484 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 36, 0, 0, 0, 0, 3, 202, 32.485 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 195, 221, 32.486 + 222, 222, 220, 206, 233, 226, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 32.487 + 237, 237, 233, 222, 222, 126, 0, 0, 28, 164, 164, 164, 164, 170, 222, 222, 32.488 + 222, 222, 182, 226, 236, 236, 131, 0, 0, 56, 239, 255, 255, 255, 255, 255, 32.489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 181, 86, 32.491 + 46, 0, 0, 135, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.492 + 222, 222, 222, 222, 222, 222, 222, 195, 205, 223, 237, 237, 237, 237, 237, 237, 32.493 + 237, 237, 237, 237, 237, 235, 223, 222, 196, 16, 0, 12, 172, 222, 222, 222, 32.494 + 222, 222, 222, 222, 222, 216, 200, 226, 236, 236, 29, 0, 0, 169, 255, 255, 32.495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.497 + 255, 255, 255, 255, 238, 14, 0, 65, 214, 222, 222, 222, 222, 222, 222, 222, 32.498 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 199, 215, 233, 237, 237, 32.499 + 237, 237, 237, 237, 237, 237, 237, 237, 237, 226, 222, 222, 171, 0, 0, 77, 32.500 + 222, 222, 222, 222, 222, 222, 222, 203, 206, 194, 221, 227, 236, 236, 29, 0, 32.501 + 87, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 0, 104, 208, 222, 222, 32.504 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.505 + 222, 227, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 233, 222, 222, 222, 32.506 + 35, 0, 3, 162, 222, 222, 222, 222, 222, 222, 222, 194, 204, 222, 224, 234, 32.507 + 236, 236, 29, 0, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 4, 0, 32.510 + 0, 62, 215, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 32.511 + 222, 222, 222, 222, 222, 227, 237, 237, 237, 237, 237, 237, 237, 237, 237, 234, 32.512 + 223, 222, 222, 158, 1, 0, 32, 222, 222, 222, 222, 222, 222, 222, 222, 195, 32.513 + 222, 223, 233, 236, 236, 236, 29, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.516 + 255, 255, 55, 0, 0, 0, 66, 196, 222, 222, 222, 222, 222, 222, 222, 222, 32.517 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 227, 237, 237, 237, 237, 237, 237, 32.518 + 237, 237, 233, 222, 222, 221, 181, 17, 0, 0, 167, 222, 222, 222, 222, 222, 32.519 + 222, 230, 230, 200, 231, 236, 236, 236, 236, 231, 27, 0, 208, 255, 255, 255, 32.520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.522 + 255, 255, 255, 255, 255, 255, 252, 115, 2, 0, 0, 8, 98, 148, 214, 222, 32.523 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 227, 237, 229, 32.524 + 227, 227, 227, 227, 227, 227, 223, 222, 222, 158, 0, 0, 0, 45, 214, 222, 32.525 + 222, 222, 222, 219, 221, 237, 236, 205, 236, 236, 236, 236, 236, 164, 0, 0, 32.526 + 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 1, 0, 0, 32.529 + 0, 0, 21, 105, 105, 105, 105, 105, 105, 175, 221, 222, 222, 222, 222, 222, 32.530 + 222, 231, 217, 29, 0, 0, 0, 0, 0, 16, 143, 219, 141, 14, 0, 0, 32.531 + 19, 195, 222, 222, 222, 223, 235, 223, 217, 237, 214, 226, 236, 236, 236, 236, 32.532 + 236, 70, 0, 0, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.535 + 255, 183, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89, 173, 32.536 + 222, 222, 222, 222, 228, 237, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.537 + 0, 0, 0, 43, 174, 222, 222, 222, 225, 234, 237, 230, 197, 197, 208, 236, 32.538 + 236, 236, 236, 236, 236, 70, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 32.539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.541 + 255, 255, 255, 255, 255, 255, 251, 238, 118, 18, 0, 0, 0, 0, 0, 0, 32.542 + 0, 0, 0, 2, 41, 119, 119, 213, 213, 79, 0, 0, 9, 102, 102, 102, 32.543 + 20, 0, 0, 0, 0, 0, 22, 197, 222, 222, 222, 223, 235, 237, 237, 237, 32.544 + 235, 235, 235, 236, 236, 236, 236, 236, 223, 38, 0, 161, 255, 255, 255, 255, 32.545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 241, 241, 32.548 + 241, 241, 241, 203, 61, 0, 0, 0, 0, 0, 0, 10, 9, 0, 0, 0, 32.549 + 147, 222, 222, 222, 212, 98, 96, 96, 96, 99, 185, 194, 210, 222, 228, 234, 32.550 + 235, 202, 230, 237, 237, 236, 236, 236, 236, 236, 236, 236, 209, 0, 0, 163, 32.551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.554 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 206, 102, 2, 0, 0, 0, 0, 32.555 + 0, 0, 0, 103, 220, 222, 222, 222, 222, 222, 222, 222, 214, 191, 216, 216, 32.556 + 202, 225, 236, 212, 197, 214, 222, 237, 223, 236, 236, 236, 236, 236, 236, 236, 32.557 + 120, 0, 5, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 32.561 + 226, 160, 94, 91, 33, 0, 29, 215, 222, 222, 222, 222, 222, 222, 222, 209, 32.562 + 189, 221, 222, 222, 214, 217, 203, 220, 223, 207, 235, 232, 209, 236, 236, 236, 32.563 + 236, 236, 236, 236, 26, 0, 13, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.567 + 255, 255, 255, 255, 255, 255, 255, 253, 95, 0, 111, 222, 222, 222, 222, 222, 32.568 + 222, 222, 222, 217, 215, 222, 222, 213, 231, 203, 229, 237, 191, 197, 196, 201, 32.569 + 234, 236, 236, 236, 236, 236, 236, 166, 2, 0, 103, 255, 255, 255, 255, 255, 32.570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 0, 125, 222, 32.574 + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 195, 224, 235, 237, 237, 32.575 + 224, 231, 237, 237, 237, 237, 236, 236, 236, 236, 223, 56, 0, 0, 205, 255, 32.576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.580 + 96, 0, 52, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, 218, 192, 32.581 + 222, 226, 236, 237, 237, 237, 237, 237, 237, 237, 237, 236, 236, 236, 169, 0, 32.582 + 0, 58, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.586 + 255, 255, 255, 255, 96, 0, 25, 207, 222, 222, 222, 222, 222, 222, 222, 222, 32.587 + 222, 222, 204, 206, 222, 222, 235, 237, 237, 223, 178, 178, 178, 208, 237, 237, 32.588 + 237, 139, 23, 0, 7, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.592 + 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 0, 128, 218, 222, 222, 222, 32.593 + 222, 222, 222, 222, 212, 204, 202, 222, 222, 222, 235, 237, 234, 94, 0, 0, 32.594 + 0, 32, 63, 63, 63, 11, 0, 0, 51, 255, 255, 255, 255, 255, 255, 255, 32.595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 9, 0, 0, 32.599 + 122, 222, 222, 222, 222, 222, 222, 222, 222, 192, 222, 222, 222, 222, 235, 224, 32.600 + 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 209, 255, 255, 255, 32.601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.605 + 255, 67, 0, 0, 6, 104, 187, 187, 187, 221, 222, 222, 222, 222, 222, 222, 32.606 + 222, 222, 232, 94, 0, 0, 0, 93, 39, 39, 39, 39, 39, 39, 61, 234, 32.607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.611 + 255, 255, 255, 255, 255, 219, 84, 0, 0, 0, 0, 0, 0, 206, 222, 222, 32.612 + 222, 222, 222, 222, 222, 204, 135, 0, 0, 7, 84, 253, 255, 255, 255, 255, 32.613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 57, 1, 0, 0, 0, 32.618 + 0, 49, 172, 211, 222, 222, 222, 222, 191, 21, 0, 0, 1, 129, 255, 255, 32.619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.624 + 156, 147, 142, 5, 0, 0, 0, 47, 93, 192, 208, 166, 40, 0, 0, 0, 32.625 + 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.630 + 255, 255, 255, 255, 255, 255, 255, 154, 4, 0, 0, 0, 0, 0, 0, 0, 32.631 + 0, 0, 17, 139, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 110, 0, 0, 32.637 + 0, 0, 0, 0, 0, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.648 + 255, 255, 255, 255, 251, 139, 89, 7, 7, 7, 7, 7, 7, 7, 7, 105, 32.649 + 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 147, 43, 15, 15, 15, 32.654 + 15, 15, 15, 15, 15, 112, 147, 147, 88, 0, 0, 0, 0, 0, 0, 0, 32.655 + 0, 0, 0, 0, 1, 51, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 121, 13, 0, 32.660 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.661 + 48, 65, 69, 79, 79, 48, 0, 0, 0, 0, 0, 105, 235, 255, 255, 255, 32.662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.666 + 159, 0, 0, 0, 0, 8, 60, 60, 60, 60, 60, 37, 0, 0, 0, 0, 32.667 + 0, 0, 81, 147, 162, 169, 193, 202, 202, 192, 177, 99, 5, 0, 0, 0, 32.668 + 76, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.671 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 170, 170, 170, 161, 39, 39, 32.672 + 39, 39, 39, 39, 3, 0, 0, 33, 123, 145, 168, 168, 168, 168, 168, 158, 32.673 + 142, 114, 27, 0, 26, 142, 162, 168, 168, 171, 202, 202, 202, 202, 202, 202, 32.674 + 170, 67, 0, 0, 0, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 169, 47, 46, 0, 0, 0, 32.678 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 155, 168, 168, 168, 168, 32.679 + 168, 168, 168, 168, 168, 168, 152, 136, 150, 168, 168, 168, 168, 171, 202, 202, 32.680 + 202, 202, 202, 202, 198, 159, 96, 0, 0, 113, 198, 178, 142, 47, 47, 47, 32.681 + 47, 47, 47, 84, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 75, 0, 0, 32.684 + 0, 0, 0, 0, 0, 0, 0, 19, 45, 45, 20, 0, 0, 0, 126, 168, 32.685 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.686 + 168, 171, 202, 202, 202, 202, 202, 202, 198, 168, 163, 16, 0, 8, 14, 0, 32.687 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 138, 242, 255, 255, 255, 255, 255, 32.688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 194, 194, 194, 32.690 + 115, 0, 0, 0, 16, 39, 71, 126, 126, 126, 126, 144, 168, 168, 133, 27, 32.691 + 0, 10, 147, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.692 + 168, 168, 168, 168, 168, 171, 202, 202, 202, 202, 202, 202, 198, 168, 168, 79, 32.693 + 0, 0, 0, 0, 0, 0, 30, 47, 47, 47, 3, 0, 0, 0, 103, 254, 32.694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 32.696 + 53, 0, 0, 0, 0, 0, 2, 91, 141, 168, 168, 168, 168, 168, 168, 168, 32.697 + 168, 168, 168, 153, 121, 133, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.698 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 191, 202, 202, 202, 202, 202, 32.699 + 185, 168, 168, 139, 6, 0, 13, 51, 145, 145, 181, 202, 202, 202, 149, 62, 32.700 + 0, 0, 0, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.702 + 255, 249, 116, 8, 0, 0, 0, 0, 0, 0, 71, 168, 168, 168, 168, 168, 32.703 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.704 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 170, 196, 32.705 + 202, 202, 202, 191, 168, 168, 168, 168, 126, 139, 160, 202, 202, 202, 202, 202, 32.706 + 202, 202, 202, 184, 90, 0, 0, 12, 193, 255, 255, 255, 255, 255, 255, 255, 32.707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.708 + 255, 255, 255, 255, 255, 139, 0, 0, 0, 20, 24, 5, 0, 43, 161, 168, 32.709 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.710 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.711 + 168, 168, 168, 173, 179, 179, 179, 170, 168, 168, 168, 168, 168, 201, 202, 202, 32.712 + 202, 202, 202, 202, 202, 202, 202, 202, 198, 60, 0, 0, 29, 228, 255, 255, 32.713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.714 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 5, 0, 1, 40, 157, 168, 38, 32.715 + 0, 120, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.716 + 168, 168, 167, 143, 132, 132, 132, 132, 165, 168, 168, 168, 168, 168, 168, 168, 32.717 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.718 + 168, 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 185, 33, 0, 32.719 + 0, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 23, 0, 0, 58, 32.721 + 168, 168, 168, 48, 13, 124, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.722 + 168, 168, 168, 168, 168, 166, 149, 157, 168, 168, 168, 151, 145, 168, 168, 168, 32.723 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.724 + 168, 168, 168, 168, 168, 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 32.725 + 202, 202, 169, 8, 0, 10, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 32.727 + 0, 0, 32, 159, 168, 168, 169, 169, 169, 169, 168, 168, 168, 168, 168, 168, 32.728 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 150, 145, 168, 168, 168, 168, 168, 32.729 + 141, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.730 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 200, 202, 202, 202, 202, 202, 202, 32.731 + 202, 202, 202, 202, 202, 202, 202, 132, 0, 0, 68, 253, 255, 255, 255, 255, 32.732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.733 + 255, 255, 252, 48, 0, 11, 145, 168, 172, 186, 202, 202, 202, 197, 170, 168, 32.734 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 150, 157, 168, 32.735 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.736 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 179, 201, 202, 32.737 + 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 186, 28, 0, 0, 222, 32.738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.739 + 255, 255, 255, 255, 255, 255, 149, 0, 0, 55, 168, 176, 196, 202, 202, 202, 32.740 + 202, 202, 192, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.741 + 168, 150, 157, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.742 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.743 + 168, 168, 186, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 32.744 + 119, 0, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.745 + 255, 255, 255, 255, 255, 255, 255, 169, 17, 2, 1, 0, 0, 122, 172, 199, 32.746 + 202, 202, 202, 202, 202, 202, 201, 179, 168, 168, 168, 168, 168, 168, 168, 168, 32.747 + 168, 168, 163, 134, 132, 124, 157, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.748 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.749 + 168, 168, 168, 168, 168, 162, 135, 139, 168, 168, 168, 175, 195, 202, 202, 202, 32.750 + 202, 202, 202, 202, 175, 11, 0, 67, 255, 255, 255, 255, 255, 255, 255, 255, 32.751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 3, 0, 0, 0, 0, 32.752 + 57, 169, 195, 202, 202, 202, 202, 202, 202, 202, 202, 179, 168, 168, 168, 168, 32.753 + 168, 168, 168, 168, 168, 168, 140, 166, 168, 158, 162, 168, 168, 168, 168, 168, 32.754 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.755 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 140, 165, 162, 144, 168, 168, 168, 32.756 + 171, 198, 202, 202, 202, 202, 202, 199, 172, 42, 0, 7, 141, 141, 207, 255, 32.757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 32.758 + 0, 13, 62, 69, 140, 172, 202, 202, 202, 202, 202, 202, 202, 202, 202, 179, 32.759 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 32.760 + 168, 168, 168, 142, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.761 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 142, 165, 168, 168, 32.762 + 148, 146, 132, 132, 144, 175, 195, 202, 202, 202, 202, 177, 168, 109, 0, 0, 32.763 + 0, 0, 10, 18, 33, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.764 + 255, 255, 101, 0, 29, 129, 141, 163, 168, 184, 202, 202, 202, 202, 202, 202, 32.765 + 202, 202, 202, 179, 168, 168, 168, 168, 168, 168, 168, 168, 168, 145, 162, 168, 32.766 + 168, 168, 168, 168, 168, 168, 146, 161, 168, 168, 168, 168, 168, 168, 168, 168, 32.767 + 168, 168, 168, 142, 124, 132, 132, 137, 168, 168, 168, 168, 168, 168, 168, 154, 32.768 + 153, 168, 168, 168, 166, 124, 168, 168, 156, 136, 169, 189, 189, 189, 182, 168, 32.769 + 168, 156, 19, 0, 0, 0, 0, 0, 0, 7, 186, 255, 255, 255, 255, 255, 32.770 + 255, 255, 255, 255, 255, 203, 66, 0, 66, 140, 140, 144, 165, 191, 202, 202, 32.771 + 202, 202, 202, 202, 202, 202, 201, 175, 168, 168, 168, 168, 168, 168, 168, 168, 32.772 + 168, 142, 165, 168, 168, 168, 168, 168, 168, 164, 143, 168, 168, 168, 168, 168, 32.773 + 168, 168, 168, 168, 168, 168, 154, 143, 161, 168, 168, 140, 168, 168, 168, 168, 32.774 + 168, 168, 168, 158, 159, 168, 168, 168, 168, 164, 168, 168, 168, 153, 154, 168, 32.775 + 168, 168, 168, 168, 168, 168, 152, 145, 125, 58, 58, 14, 0, 0, 22, 222, 32.776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 65, 0, 66, 140, 140, 140, 32.777 + 161, 200, 202, 202, 202, 202, 202, 202, 202, 202, 183, 168, 168, 168, 168, 168, 32.778 + 168, 168, 168, 168, 168, 142, 165, 168, 168, 168, 168, 168, 168, 158, 149, 168, 32.779 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 140, 32.780 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.781 + 168, 168, 146, 161, 168, 168, 168, 168, 168, 168, 171, 194, 196, 196, 193, 154, 32.782 + 31, 0, 0, 57, 240, 255, 255, 255, 255, 255, 255, 255, 255, 166, 65, 0, 32.783 + 66, 140, 140, 140, 161, 200, 202, 202, 202, 202, 202, 202, 196, 186, 168, 168, 32.784 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 142, 165, 168, 168, 168, 168, 168, 32.785 + 168, 158, 149, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.786 + 168, 168, 168, 147, 148, 148, 148, 148, 148, 153, 168, 168, 168, 168, 168, 168, 32.787 + 168, 168, 168, 168, 168, 168, 166, 163, 168, 168, 168, 168, 168, 169, 191, 202, 32.788 + 202, 202, 202, 199, 166, 17, 0, 0, 124, 255, 255, 255, 255, 255, 255, 255, 32.789 + 255, 166, 65, 0, 66, 140, 140, 140, 161, 200, 202, 202, 202, 202, 202, 202, 32.790 + 180, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 149, 158, 168, 32.791 + 168, 168, 168, 168, 168, 160, 147, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.792 + 168, 168, 168, 168, 168, 168, 168, 166, 139, 152, 152, 152, 152, 147, 141, 168, 32.793 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.794 + 168, 182, 202, 202, 202, 202, 202, 202, 202, 139, 6, 0, 23, 227, 255, 255, 32.795 + 255, 255, 255, 255, 255, 166, 65, 0, 66, 140, 140, 140, 161, 200, 202, 202, 32.796 + 202, 202, 202, 202, 169, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.797 + 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 32.798 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.799 + 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.800 + 168, 168, 168, 168, 168, 185, 202, 202, 202, 202, 202, 202, 202, 202, 86, 0, 32.801 + 0, 71, 255, 255, 255, 255, 255, 255, 255, 166, 54, 0, 66, 140, 140, 140, 32.802 + 153, 200, 202, 202, 202, 202, 202, 202, 169, 168, 168, 168, 168, 168, 168, 168, 32.803 + 168, 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 134, 134, 32.804 + 154, 160, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.805 + 168, 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.806 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 185, 202, 202, 202, 202, 202, 202, 32.807 + 202, 202, 168, 11, 0, 44, 255, 255, 255, 255, 255, 255, 255, 123, 2, 0, 32.808 + 66, 140, 140, 140, 148, 197, 202, 202, 202, 202, 202, 199, 169, 168, 168, 168, 32.809 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 159, 168, 168, 168, 168, 168, 32.810 + 168, 168, 168, 166, 143, 139, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.811 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 32.812 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 185, 202, 202, 32.813 + 202, 202, 202, 202, 202, 202, 201, 117, 0, 14, 213, 255, 255, 255, 255, 255, 32.814 + 225, 20, 0, 0, 73, 140, 140, 140, 140, 175, 200, 202, 202, 202, 201, 179, 32.815 + 166, 158, 163, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.816 + 168, 168, 168, 168, 168, 168, 168, 168, 150, 157, 168, 168, 168, 168, 168, 168, 32.817 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 165, 142, 168, 32.818 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.819 + 168, 183, 202, 202, 202, 202, 202, 202, 202, 202, 202, 155, 0, 0, 194, 255, 32.820 + 255, 255, 255, 255, 144, 0, 0, 31, 133, 140, 140, 140, 140, 166, 182, 198, 32.821 + 198, 198, 185, 168, 147, 142, 137, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.822 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 150, 157, 168, 168, 32.823 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.824 + 168, 151, 129, 150, 163, 168, 168, 168, 168, 168, 168, 168, 168, 162, 160, 160, 32.825 + 164, 168, 168, 168, 168, 169, 194, 202, 202, 202, 202, 202, 202, 202, 202, 179, 32.826 + 18, 0, 194, 255, 255, 255, 255, 255, 43, 0, 9, 123, 140, 140, 140, 140, 32.827 + 140, 166, 168, 168, 168, 168, 168, 166, 141, 168, 141, 166, 168, 168, 168, 168, 32.828 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.829 + 150, 157, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.830 + 168, 168, 168, 168, 168, 168, 168, 150, 137, 163, 168, 168, 168, 168, 168, 168, 32.831 + 168, 146, 139, 139, 136, 153, 168, 168, 168, 168, 171, 197, 202, 202, 202, 202, 32.832 + 202, 202, 202, 194, 30, 0, 194, 255, 255, 255, 255, 255, 0, 0, 48, 140, 32.833 + 140, 140, 140, 140, 140, 166, 168, 168, 168, 168, 168, 143, 164, 168, 165, 142, 32.834 + 168, 168, 168, 168, 167, 149, 132, 160, 166, 168, 168, 168, 168, 168, 168, 168, 32.835 + 168, 168, 168, 168, 150, 156, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.836 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 128, 167, 168, 32.837 + 168, 168, 168, 168, 168, 168, 168, 168, 166, 141, 168, 168, 168, 168, 168, 168, 32.838 + 187, 202, 202, 202, 202, 202, 202, 172, 13, 0, 174, 255, 255, 255, 255, 255, 32.839 + 0, 0, 104, 140, 140, 140, 140, 140, 140, 166, 168, 168, 168, 168, 168, 156, 32.840 + 166, 168, 168, 140, 167, 168, 168, 168, 147, 147, 168, 140, 134, 145, 167, 168, 32.841 + 168, 168, 168, 168, 168, 168, 168, 168, 159, 134, 168, 168, 168, 168, 168, 168, 32.842 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.843 + 168, 157, 150, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 146, 161, 168, 32.844 + 168, 168, 168, 168, 171, 198, 202, 202, 202, 202, 201, 147, 0, 0, 142, 252, 32.845 + 255, 255, 255, 255, 0, 24, 135, 140, 140, 140, 140, 140, 140, 166, 168, 168, 32.846 + 168, 168, 168, 168, 168, 168, 168, 151, 156, 168, 168, 168, 157, 164, 168, 168, 32.847 + 168, 128, 165, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 125, 168, 168, 32.848 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.849 + 168, 168, 168, 168, 168, 148, 159, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.850 + 168, 152, 155, 168, 168, 168, 168, 168, 168, 174, 201, 202, 202, 202, 193, 60, 32.851 + 0, 14, 147, 231, 255, 255, 255, 255, 0, 49, 140, 140, 140, 140, 140, 140, 32.852 + 144, 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, 151, 156, 168, 168, 168, 32.853 + 168, 168, 168, 168, 168, 142, 134, 136, 164, 168, 168, 168, 168, 168, 168, 168, 32.854 + 168, 166, 132, 132, 106, 144, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.855 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 152, 168, 168, 168, 168, 168, 168, 32.856 + 168, 168, 168, 168, 168, 140, 167, 168, 168, 168, 168, 168, 168, 168, 178, 186, 32.857 + 186, 186, 170, 60, 0, 29, 168, 178, 255, 255, 255, 255, 0, 49, 140, 140, 32.858 + 140, 140, 140, 140, 155, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 158, 32.859 + 132, 156, 168, 168, 168, 168, 168, 168, 168, 166, 164, 164, 136, 144, 168, 168, 32.860 + 168, 168, 168, 168, 168, 168, 168, 142, 163, 168, 168, 168, 168, 168, 168, 168, 32.861 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.862 + 168, 168, 168, 168, 168, 168, 168, 168, 154, 153, 168, 168, 168, 168, 168, 168, 32.863 + 168, 168, 168, 168, 168, 168, 168, 60, 0, 1, 100, 168, 230, 255, 255, 255, 32.864 + 0, 49, 140, 140, 140, 140, 140, 140, 140, 161, 168, 168, 168, 168, 168, 168, 32.865 + 168, 168, 168, 168, 167, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.866 + 168, 156, 140, 168, 168, 168, 168, 168, 168, 168, 155, 152, 168, 168, 168, 168, 32.867 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.868 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 149, 132, 136, 145, 32.869 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 87, 0, 0, 4, 67, 32.870 + 229, 255, 255, 255, 0, 31, 137, 140, 140, 140, 140, 140, 140, 143, 165, 168, 32.871 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 153, 154, 168, 168, 168, 168, 168, 32.872 + 168, 168, 168, 168, 168, 168, 136, 168, 168, 168, 168, 168, 168, 168, 154, 153, 32.873 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.874 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.875 + 168, 168, 164, 155, 148, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 143, 32.876 + 36, 0, 0, 12, 210, 255, 255, 255, 0, 0, 131, 140, 140, 140, 140, 140, 32.877 + 140, 140, 147, 166, 168, 168, 168, 168, 168, 168, 168, 168, 168, 166, 138, 156, 32.878 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 149, 158, 168, 168, 168, 168, 32.879 + 168, 168, 154, 153, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.880 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.881 + 168, 168, 168, 168, 168, 168, 168, 168, 151, 156, 168, 168, 168, 168, 168, 168, 32.882 + 168, 168, 168, 168, 158, 47, 0, 0, 81, 251, 255, 255, 0, 0, 84, 140, 32.883 + 140, 140, 140, 140, 140, 140, 140, 161, 168, 168, 168, 168, 168, 168, 168, 168, 32.884 + 168, 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 144, 163, 32.885 + 168, 168, 168, 168, 168, 168, 154, 153, 168, 168, 168, 168, 168, 168, 168, 168, 32.886 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 178, 178, 178, 178, 176, 168, 168, 32.887 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 146, 161, 168, 32.888 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 147, 12, 0, 8, 198, 255, 255, 32.889 + 0, 0, 23, 128, 140, 140, 140, 140, 140, 140, 140, 143, 165, 168, 168, 168, 32.890 + 168, 168, 168, 168, 168, 168, 168, 145, 162, 168, 168, 168, 168, 168, 168, 168, 32.891 + 168, 163, 144, 168, 168, 168, 168, 168, 168, 168, 165, 142, 168, 168, 168, 168, 32.892 + 168, 168, 168, 122, 121, 121, 121, 121, 121, 121, 129, 183, 195, 202, 199, 145, 32.893 + 145, 144, 138, 174, 170, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.894 + 168, 162, 145, 168, 168, 168, 168, 168, 172, 177, 177, 177, 169, 168, 94, 0, 32.895 + 0, 188, 255, 255, 80, 0, 0, 23, 33, 88, 140, 140, 140, 140, 140, 140, 32.896 + 141, 132, 136, 164, 168, 168, 168, 168, 168, 168, 168, 152, 134, 168, 168, 168, 32.897 + 168, 168, 168, 168, 168, 163, 165, 168, 168, 168, 168, 168, 168, 168, 168, 140, 32.898 + 168, 168, 168, 168, 166, 72, 39, 1, 0, 0, 0, 0, 0, 0, 7, 125, 32.899 + 142, 47, 46, 0, 0, 0, 0, 97, 180, 186, 174, 168, 168, 168, 168, 168, 32.900 + 168, 168, 168, 168, 168, 168, 146, 161, 168, 168, 168, 170, 196, 202, 202, 202, 32.901 + 188, 168, 154, 7, 0, 188, 255, 255, 191, 12, 0, 0, 0, 33, 140, 140, 32.902 + 140, 140, 140, 140, 145, 166, 158, 149, 168, 168, 168, 168, 168, 168, 168, 137, 32.903 + 162, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.904 + 168, 168, 168, 160, 168, 168, 168, 168, 97, 0, 0, 0, 0, 0, 0, 0, 32.905 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 163, 200, 178, 32.906 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 146, 161, 168, 168, 169, 191, 32.907 + 202, 202, 202, 202, 202, 181, 168, 10, 0, 173, 255, 255, 255, 150, 47, 13, 32.908 + 0, 9, 123, 140, 140, 140, 140, 140, 140, 163, 168, 142, 165, 168, 168, 168, 32.909 + 168, 168, 168, 159, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.910 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 159, 20, 0, 0, 30, 32.911 + 59, 117, 133, 141, 141, 43, 0, 0, 0, 0, 16, 37, 78, 76, 0, 0, 32.912 + 0, 27, 149, 202, 180, 168, 168, 168, 168, 168, 168, 168, 168, 159, 148, 168, 32.913 + 168, 168, 173, 202, 202, 202, 202, 202, 202, 197, 169, 10, 0, 119, 255, 255, 32.914 + 255, 255, 255, 144, 0, 0, 106, 140, 140, 140, 140, 140, 140, 155, 168, 159, 32.915 + 148, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.916 + 168, 168, 168, 168, 168, 168, 159, 142, 83, 55, 55, 55, 55, 55, 55, 40, 32.917 + 0, 0, 53, 166, 168, 168, 191, 202, 202, 176, 59, 0, 2, 59, 165, 202, 32.918 + 202, 191, 100, 15, 0, 0, 127, 202, 200, 177, 168, 168, 168, 168, 168, 146, 32.919 + 130, 141, 168, 168, 168, 168, 173, 202, 202, 202, 202, 202, 202, 202, 176, 10, 32.920 + 0, 119, 255, 255, 255, 255, 255, 188, 3, 0, 58, 140, 140, 140, 140, 140, 32.921 + 140, 150, 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.922 + 168, 168, 168, 168, 166, 164, 164, 164, 159, 99, 41, 0, 0, 0, 0, 0, 32.923 + 0, 0, 0, 0, 0, 4, 137, 168, 168, 168, 191, 202, 202, 202, 160, 129, 32.924 + 136, 202, 202, 202, 202, 202, 202, 154, 7, 0, 127, 202, 202, 202, 181, 168, 32.925 + 168, 168, 168, 163, 144, 167, 168, 168, 168, 168, 173, 202, 202, 202, 202, 202, 32.926 + 202, 202, 177, 9, 0, 119, 255, 255, 255, 255, 255, 255, 29, 0, 52, 140, 32.927 + 140, 140, 140, 140, 140, 140, 150, 163, 123, 132, 132, 151, 166, 168, 168, 168, 32.928 + 168, 168, 168, 168, 167, 165, 151, 150, 145, 140, 140, 137, 54, 0, 0, 0, 32.929 + 0, 0, 15, 15, 15, 15, 14, 0, 0, 40, 168, 168, 168, 168, 191, 202, 32.930 + 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 147, 122, 172, 202, 32.931 + 202, 202, 200, 175, 168, 168, 168, 168, 158, 149, 168, 168, 168, 168, 173, 202, 32.932 + 202, 202, 202, 202, 202, 202, 131, 0, 0, 129, 255, 255, 255, 255, 255, 255, 32.933 + 89, 0, 0, 140, 140, 140, 140, 140, 140, 140, 140, 144, 159, 168, 168, 149, 32.934 + 147, 168, 168, 168, 168, 168, 168, 167, 155, 140, 140, 140, 140, 140, 140, 79, 32.935 + 0, 0, 0, 9, 68, 98, 168, 168, 168, 168, 161, 96, 96, 140, 168, 168, 32.936 + 168, 168, 190, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 32.937 + 202, 202, 202, 202, 202, 202, 202, 197, 171, 168, 168, 168, 168, 150, 129, 159, 32.938 + 166, 168, 170, 197, 202, 202, 202, 202, 202, 202, 131, 0, 4, 226, 255, 255, 32.939 + 255, 255, 255, 255, 137, 0, 0, 138, 140, 140, 140, 140, 140, 140, 140, 140, 32.940 + 141, 157, 167, 168, 140, 168, 168, 168, 168, 168, 168, 160, 140, 140, 140, 140, 32.941 + 140, 140, 140, 54, 0, 0, 68, 160, 168, 168, 168, 168, 168, 168, 168, 168, 32.942 + 168, 168, 168, 168, 168, 168, 172, 198, 202, 202, 202, 202, 202, 202, 201, 200, 32.943 + 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 194, 168, 168, 168, 32.944 + 168, 136, 135, 135, 141, 167, 168, 186, 202, 202, 202, 202, 202, 202, 131, 0, 32.945 + 33, 238, 255, 255, 255, 255, 255, 255, 239, 0, 0, 82, 140, 140, 140, 140, 32.946 + 140, 140, 140, 140, 140, 140, 152, 153, 131, 153, 153, 153, 153, 153, 153, 142, 32.947 + 140, 140, 140, 140, 140, 140, 140, 54, 0, 53, 168, 168, 168, 168, 168, 168, 32.948 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 175, 202, 202, 202, 196, 32.949 + 184, 184, 170, 168, 174, 187, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 32.950 + 202, 187, 168, 168, 156, 151, 158, 135, 152, 155, 168, 179, 202, 202, 202, 202, 32.951 + 202, 202, 131, 0, 0, 170, 255, 255, 255, 255, 255, 255, 239, 0, 0, 55, 32.952 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 123, 140, 140, 140, 32.953 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 54, 0, 81, 168, 168, 32.954 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.955 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 185, 202, 202, 202, 202, 32.956 + 202, 202, 202, 202, 202, 202, 174, 168, 168, 168, 158, 149, 168, 140, 168, 179, 32.957 + 202, 202, 202, 202, 202, 202, 159, 5, 0, 0, 164, 255, 255, 255, 255, 255, 32.958 + 254, 86, 0, 13, 125, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.959 + 123, 140, 140, 140, 140, 140, 140, 140, 140, 140, 131, 53, 4, 4, 4, 1, 32.960 + 0, 81, 168, 168, 168, 168, 168, 168, 168, 168, 165, 137, 150, 168, 168, 168, 32.961 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.962 + 185, 202, 202, 202, 202, 202, 202, 202, 202, 202, 174, 168, 144, 136, 142, 167, 32.963 + 168, 140, 168, 174, 200, 202, 202, 202, 202, 202, 183, 41, 0, 0, 63, 255, 32.964 + 255, 255, 255, 255, 255, 133, 0, 0, 83, 140, 140, 140, 140, 140, 140, 140, 32.965 + 140, 140, 140, 134, 118, 133, 140, 140, 140, 140, 140, 140, 140, 140, 42, 0, 32.966 + 0, 0, 0, 0, 0, 85, 168, 168, 168, 168, 168, 168, 168, 158, 136, 163, 32.967 + 150, 142, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.968 + 168, 168, 168, 168, 168, 185, 202, 202, 202, 202, 202, 202, 202, 202, 174, 168, 32.969 + 164, 164, 168, 168, 168, 140, 168, 168, 180, 202, 202, 202, 202, 190, 168, 152, 32.970 + 21, 0, 3, 212, 255, 255, 255, 255, 255, 217, 17, 0, 50, 140, 140, 140, 32.971 + 140, 140, 140, 140, 140, 140, 140, 140, 139, 126, 128, 140, 140, 140, 140, 140, 32.972 + 129, 28, 0, 0, 0, 36, 53, 0, 0, 119, 168, 168, 168, 168, 168, 168, 32.973 + 164, 144, 167, 168, 168, 158, 136, 167, 159, 143, 168, 168, 168, 168, 168, 168, 32.974 + 168, 168, 168, 168, 168, 163, 124, 132, 132, 137, 190, 202, 202, 202, 202, 202, 32.975 + 202, 202, 174, 168, 168, 168, 168, 168, 149, 158, 168, 168, 168, 183, 188, 188, 32.976 + 188, 169, 168, 168, 112, 0, 0, 209, 255, 255, 255, 255, 255, 255, 81, 0, 32.977 + 6, 112, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 124, 139, 32.978 + 140, 140, 140, 140, 92, 0, 0, 0, 80, 134, 139, 132, 144, 167, 168, 168, 32.979 + 168, 168, 168, 168, 142, 165, 168, 168, 168, 168, 164, 123, 141, 160, 168, 168, 32.980 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 166, 162, 168, 168, 140, 174, 199, 32.981 + 202, 202, 202, 202, 202, 202, 174, 168, 168, 168, 168, 156, 141, 168, 168, 168, 32.982 + 168, 168, 168, 168, 168, 168, 168, 168, 161, 17, 0, 209, 255, 255, 255, 255, 32.983 + 255, 255, 149, 0, 0, 26, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.984 + 140, 140, 137, 125, 140, 140, 140, 139, 37, 0, 6, 68, 137, 140, 140, 154, 32.985 + 168, 168, 168, 155, 132, 132, 130, 145, 162, 168, 168, 168, 168, 168, 168, 163, 32.986 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.987 + 168, 148, 159, 195, 202, 202, 202, 202, 202, 202, 174, 168, 168, 168, 151, 132, 32.988 + 164, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 20, 0, 209, 32.989 + 255, 255, 255, 255, 255, 255, 234, 31, 0, 3, 89, 140, 140, 140, 140, 140, 32.990 + 140, 140, 140, 140, 140, 140, 140, 123, 140, 140, 140, 137, 0, 0, 36, 140, 32.991 + 140, 140, 140, 141, 159, 168, 168, 140, 168, 168, 151, 128, 168, 168, 168, 168, 32.992 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.993 + 168, 168, 168, 168, 168, 165, 138, 166, 176, 202, 202, 202, 202, 199, 172, 168, 32.994 + 168, 168, 164, 138, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.995 + 168, 20, 0, 209, 255, 255, 255, 255, 255, 255, 255, 186, 0, 0, 9, 112, 32.996 + 140, 140, 140, 140, 140, 140, 140, 140, 139, 121, 121, 135, 140, 140, 140, 137, 32.997 + 0, 0, 76, 140, 140, 140, 140, 140, 142, 167, 168, 140, 168, 168, 165, 158, 32.998 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.999 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 167, 144, 153, 153, 195, 202, 202, 32.1000 + 201, 180, 168, 168, 168, 168, 168, 159, 148, 168, 168, 168, 168, 168, 168, 168, 32.1001 + 168, 168, 168, 168, 111, 4, 0, 209, 255, 255, 255, 255, 255, 255, 255, 243, 32.1002 + 69, 0, 0, 22, 117, 106, 112, 140, 140, 140, 140, 140, 139, 130, 137, 140, 32.1003 + 140, 140, 140, 137, 0, 0, 76, 140, 140, 140, 140, 140, 140, 166, 168, 140, 32.1004 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1005 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1006 + 171, 159, 193, 193, 185, 168, 168, 168, 168, 168, 168, 167, 140, 168, 168, 168, 32.1007 + 168, 168, 168, 168, 168, 168, 168, 137, 12, 0, 0, 209, 255, 255, 255, 255, 32.1008 + 255, 255, 255, 255, 182, 24, 0, 0, 0, 0, 7, 38, 135, 140, 140, 140, 32.1009 + 140, 140, 140, 140, 140, 140, 140, 138, 11, 0, 64, 140, 140, 140, 140, 140, 32.1010 + 140, 166, 168, 144, 163, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 151, 32.1011 + 132, 132, 150, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1012 + 168, 168, 168, 168, 168, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1013 + 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 155, 27, 0, 0, 64, 242, 32.1014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 12, 0, 0, 0, 0, 0, 32.1015 + 93, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 55, 0, 19, 140, 32.1016 + 140, 140, 140, 140, 140, 166, 168, 162, 145, 168, 168, 168, 168, 168, 168, 168, 32.1017 + 168, 168, 149, 149, 168, 168, 149, 158, 165, 156, 156, 156, 156, 156, 161, 168, 32.1018 + 168, 168, 168, 168, 168, 168, 168, 168, 166, 141, 168, 168, 168, 168, 168, 168, 32.1019 + 159, 157, 168, 167, 140, 168, 168, 168, 168, 168, 168, 168, 168, 168, 61, 0, 32.1020 + 0, 28, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 168, 32.1021 + 168, 58, 0, 0, 75, 146, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1022 + 63, 0, 6, 106, 140, 140, 140, 140, 141, 167, 168, 162, 145, 168, 168, 168, 32.1023 + 168, 168, 168, 168, 168, 158, 149, 168, 168, 168, 168, 125, 145, 144, 144, 144, 32.1024 + 144, 144, 139, 151, 168, 168, 168, 168, 168, 168, 168, 168, 164, 162, 168, 168, 32.1025 + 168, 168, 168, 143, 141, 143, 136, 163, 143, 168, 168, 168, 168, 168, 168, 168, 32.1026 + 168, 93, 13, 0, 10, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1027 + 255, 255, 255, 255, 255, 254, 64, 0, 7, 153, 151, 140, 140, 140, 140, 140, 32.1028 + 140, 140, 140, 140, 112, 0, 0, 43, 140, 140, 140, 140, 156, 168, 168, 165, 32.1029 + 159, 168, 168, 168, 168, 168, 168, 168, 168, 155, 155, 168, 168, 168, 168, 156, 32.1030 + 158, 168, 168, 168, 168, 168, 167, 140, 168, 168, 168, 168, 168, 168, 168, 168, 32.1031 + 168, 168, 168, 168, 168, 168, 168, 140, 168, 168, 150, 134, 158, 168, 168, 168, 32.1032 + 168, 168, 168, 168, 124, 0, 0, 0, 140, 255, 255, 255, 255, 255, 255, 255, 32.1033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 111, 0, 0, 0, 83, 148, 32.1034 + 128, 128, 128, 129, 140, 140, 140, 140, 78, 0, 0, 43, 140, 140, 140, 140, 32.1035 + 149, 166, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1036 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 167, 140, 168, 168, 168, 168, 32.1037 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 165, 142, 168, 168, 168, 168, 32.1038 + 168, 168, 168, 168, 168, 168, 168, 168, 99, 0, 0, 18, 211, 255, 255, 255, 32.1039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 8, 32.1040 + 0, 0, 0, 0, 0, 0, 0, 7, 85, 140, 140, 138, 23, 0, 0, 78, 32.1041 + 140, 140, 140, 140, 140, 146, 163, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1042 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 167, 137, 156, 32.1043 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 167, 167, 168, 140, 167, 32.1044 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 99, 0, 0, 94, 32.1045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1046 + 255, 255, 255, 212, 65, 1, 0, 0, 0, 0, 0, 0, 20, 132, 140, 106, 32.1047 + 0, 0, 49, 140, 140, 140, 140, 140, 140, 140, 144, 166, 168, 168, 168, 168, 32.1048 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1049 + 167, 148, 158, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 159, 32.1050 + 148, 168, 140, 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1051 + 100, 0, 0, 13, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 66, 0, 0, 24, 28, 0, 32.1053 + 0, 96, 140, 80, 0, 0, 105, 140, 140, 140, 140, 140, 140, 140, 140, 146, 32.1054 + 163, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1055 + 168, 168, 168, 168, 150, 143, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1056 + 168, 168, 168, 168, 152, 133, 147, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1057 + 168, 168, 168, 168, 168, 35, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 32.1058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 32.1059 + 252, 252, 204, 5, 0, 0, 1, 0, 0, 24, 136, 140, 140, 140, 140, 140, 32.1060 + 140, 140, 140, 140, 143, 165, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1061 + 168, 168, 168, 168, 168, 168, 168, 168, 135, 143, 168, 168, 168, 168, 168, 168, 32.1062 + 168, 168, 168, 168, 168, 168, 168, 168, 167, 167, 167, 168, 168, 168, 168, 168, 32.1063 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 152, 19, 0, 179, 255, 255, 255, 32.1064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1065 + 255, 255, 255, 255, 255, 255, 255, 11, 0, 0, 0, 0, 0, 51, 140, 140, 32.1066 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 146, 137, 149, 168, 168, 168, 168, 32.1067 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 157, 138, 168, 32.1068 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1069 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 140, 1, 0, 32.1070 + 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 105, 105, 105, 60, 32.1072 + 0, 51, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 124, 140, 137, 32.1073 + 167, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1074 + 168, 168, 162, 143, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1075 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1076 + 168, 46, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1078 + 255, 255, 255, 145, 0, 5, 134, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1079 + 115, 132, 140, 145, 142, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1080 + 168, 168, 168, 168, 168, 168, 167, 140, 168, 168, 168, 168, 168, 168, 168, 168, 32.1081 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 161, 103, 103, 144, 168, 168, 168, 32.1082 + 168, 168, 169, 178, 68, 0, 0, 26, 247, 255, 255, 255, 255, 255, 255, 255, 32.1083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1084 + 255, 255, 255, 255, 255, 255, 255, 145, 0, 0, 114, 140, 140, 140, 140, 140, 32.1085 + 140, 140, 140, 140, 136, 139, 140, 140, 135, 160, 144, 144, 164, 168, 168, 168, 32.1086 + 168, 168, 168, 168, 168, 168, 144, 144, 144, 141, 133, 164, 168, 168, 168, 168, 32.1087 + 168, 168, 168, 168, 168, 168, 168, 165, 115, 109, 128, 149, 126, 25, 0, 0, 32.1088 + 14, 22, 72, 109, 109, 84, 23, 26, 0, 0, 0, 157, 255, 255, 255, 255, 32.1089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 0, 0, 58, 140, 32.1091 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 133, 122, 155, 156, 32.1092 + 136, 159, 168, 168, 168, 168, 168, 168, 168, 168, 157, 156, 156, 159, 168, 168, 32.1093 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 164, 157, 92, 3, 0, 38, 95, 32.1094 + 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 252, 32.1095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.1097 + 29, 0, 3, 79, 102, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1098 + 135, 129, 152, 165, 167, 141, 152, 157, 148, 148, 148, 165, 168, 168, 168, 168, 32.1099 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 151, 143, 111, 8, 32.1100 + 0, 0, 0, 0, 0, 0, 11, 40, 31, 0, 0, 0, 0, 0, 0, 0, 32.1101 + 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1103 + 255, 255, 255, 255, 127, 0, 0, 0, 2, 31, 33, 140, 140, 140, 140, 140, 32.1104 + 140, 140, 140, 140, 140, 140, 140, 144, 146, 146, 123, 137, 145, 146, 138, 158, 32.1105 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 156, 32.1106 + 140, 127, 20, 0, 0, 0, 0, 0, 0, 3, 95, 140, 132, 108, 104, 124, 32.1107 + 156, 156, 164, 47, 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1109 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 36, 0, 0, 0, 0, 2, 127, 32.1110 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 123, 139, 32.1111 + 140, 140, 142, 139, 164, 158, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 32.1112 + 168, 168, 160, 141, 140, 79, 0, 0, 17, 103, 103, 103, 103, 107, 140, 140, 32.1113 + 140, 140, 115, 161, 202, 202, 116, 0, 0, 56, 239, 255, 255, 255, 255, 255, 32.1114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 181, 86, 32.1116 + 46, 0, 0, 85, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1117 + 140, 140, 140, 140, 140, 140, 140, 123, 136, 155, 168, 168, 168, 168, 168, 168, 32.1118 + 168, 168, 168, 168, 168, 164, 142, 140, 124, 10, 0, 7, 108, 140, 140, 140, 32.1119 + 140, 140, 140, 140, 140, 136, 126, 161, 202, 202, 24, 0, 0, 169, 255, 255, 32.1120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1122 + 255, 255, 255, 255, 238, 14, 0, 41, 135, 140, 140, 140, 140, 140, 140, 140, 32.1123 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 125, 137, 162, 168, 168, 32.1124 + 168, 168, 168, 168, 168, 168, 168, 168, 168, 147, 140, 140, 108, 0, 0, 48, 32.1125 + 140, 140, 140, 140, 140, 140, 140, 128, 130, 122, 139, 165, 202, 202, 24, 0, 32.1126 + 87, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 0, 65, 131, 140, 140, 32.1129 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1130 + 140, 150, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 161, 141, 140, 140, 32.1131 + 22, 0, 1, 102, 140, 140, 140, 140, 140, 140, 140, 122, 129, 140, 150, 196, 32.1132 + 202, 202, 24, 0, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 4, 0, 32.1135 + 0, 39, 136, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 32.1136 + 140, 140, 140, 140, 140, 150, 168, 168, 168, 168, 168, 168, 168, 168, 168, 163, 32.1137 + 143, 140, 140, 99, 0, 0, 20, 140, 140, 140, 140, 140, 140, 140, 140, 123, 32.1138 + 141, 146, 191, 202, 202, 202, 24, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.1139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1141 + 255, 255, 55, 0, 0, 0, 42, 123, 140, 140, 140, 140, 140, 140, 140, 140, 32.1142 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 150, 168, 168, 168, 168, 168, 168, 32.1143 + 168, 168, 161, 140, 140, 139, 114, 11, 0, 0, 105, 140, 140, 140, 140, 140, 32.1144 + 140, 155, 156, 134, 182, 202, 202, 202, 202, 197, 23, 0, 208, 255, 255, 255, 32.1145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1147 + 255, 255, 255, 255, 255, 255, 252, 115, 2, 0, 0, 5, 62, 93, 135, 140, 32.1148 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 150, 168, 162, 32.1149 + 161, 161, 161, 161, 161, 159, 143, 140, 140, 99, 0, 0, 0, 28, 135, 140, 32.1150 + 140, 140, 140, 143, 150, 168, 167, 150, 202, 202, 202, 202, 202, 140, 0, 0, 32.1151 + 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 1, 0, 0, 32.1154 + 0, 0, 13, 66, 66, 66, 66, 66, 66, 110, 139, 140, 140, 140, 140, 140, 32.1155 + 140, 156, 153, 20, 0, 0, 0, 0, 0, 10, 90, 138, 88, 9, 0, 0, 32.1156 + 12, 123, 140, 140, 140, 143, 165, 156, 151, 168, 148, 189, 202, 202, 202, 202, 32.1157 + 202, 60, 0, 0, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1160 + 255, 183, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 109, 32.1161 + 140, 140, 140, 140, 151, 168, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.1162 + 0, 0, 0, 27, 109, 140, 140, 140, 146, 162, 168, 162, 134, 134, 160, 202, 32.1163 + 202, 202, 202, 202, 202, 60, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 32.1164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1166 + 255, 255, 255, 255, 255, 255, 251, 238, 118, 18, 0, 0, 0, 0, 0, 0, 32.1167 + 0, 0, 0, 1, 26, 75, 75, 142, 151, 56, 0, 0, 6, 64, 64, 64, 32.1168 + 12, 0, 0, 0, 0, 0, 14, 124, 140, 140, 140, 143, 165, 168, 168, 168, 32.1169 + 166, 170, 201, 202, 202, 202, 202, 202, 191, 32, 0, 161, 255, 255, 255, 255, 32.1170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 241, 241, 32.1173 + 241, 241, 241, 188, 61, 0, 0, 0, 0, 0, 0, 7, 6, 0, 0, 0, 32.1174 + 92, 140, 140, 140, 134, 62, 60, 60, 60, 62, 117, 122, 132, 140, 151, 162, 32.1175 + 166, 138, 162, 168, 168, 171, 202, 202, 202, 202, 202, 202, 179, 0, 0, 163, 32.1176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1179 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 206, 102, 2, 0, 0, 0, 0, 32.1180 + 0, 0, 0, 65, 139, 140, 140, 140, 140, 140, 140, 140, 135, 120, 136, 136, 32.1181 + 127, 155, 167, 146, 134, 148, 155, 168, 156, 171, 202, 202, 202, 202, 202, 202, 32.1182 + 103, 0, 5, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 32.1186 + 226, 160, 94, 80, 23, 0, 18, 135, 140, 140, 140, 140, 140, 140, 140, 132, 32.1187 + 119, 139, 140, 140, 137, 150, 139, 154, 156, 142, 166, 163, 144, 171, 202, 202, 32.1188 + 202, 202, 202, 202, 22, 0, 13, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1192 + 255, 255, 255, 255, 255, 255, 255, 249, 91, 0, 70, 140, 140, 140, 140, 140, 32.1193 + 140, 140, 140, 137, 135, 140, 140, 134, 160, 139, 161, 168, 129, 133, 132, 137, 32.1194 + 165, 168, 188, 202, 202, 202, 202, 142, 1, 0, 103, 255, 255, 255, 255, 255, 32.1195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 0, 78, 140, 32.1199 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 123, 145, 165, 168, 168, 32.1200 + 157, 163, 168, 168, 168, 168, 169, 194, 202, 202, 191, 48, 0, 0, 205, 255, 32.1201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1205 + 96, 0, 33, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 137, 121, 32.1206 + 140, 149, 167, 168, 168, 168, 168, 168, 168, 168, 168, 171, 175, 175, 126, 0, 32.1207 + 0, 58, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1211 + 255, 255, 255, 255, 96, 0, 16, 131, 140, 140, 140, 140, 140, 140, 140, 140, 32.1212 + 140, 140, 129, 130, 140, 140, 165, 168, 168, 158, 126, 126, 126, 147, 168, 168, 32.1213 + 168, 99, 16, 0, 7, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1217 + 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 0, 81, 137, 140, 140, 140, 32.1218 + 140, 140, 140, 140, 134, 129, 127, 140, 140, 140, 165, 168, 166, 66, 0, 0, 32.1219 + 0, 23, 45, 45, 45, 8, 0, 0, 51, 255, 255, 255, 255, 255, 255, 255, 32.1220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 9, 0, 0, 32.1224 + 77, 140, 140, 140, 140, 140, 140, 140, 140, 121, 140, 140, 140, 140, 165, 159, 32.1225 + 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 209, 255, 255, 255, 32.1226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1230 + 255, 67, 0, 0, 4, 65, 118, 118, 118, 139, 140, 140, 140, 140, 140, 140, 32.1231 + 140, 140, 163, 66, 0, 0, 0, 93, 39, 39, 39, 39, 39, 39, 61, 234, 32.1232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1236 + 255, 255, 255, 255, 255, 219, 84, 0, 0, 0, 0, 0, 0, 129, 140, 140, 32.1237 + 140, 140, 140, 140, 140, 131, 95, 0, 0, 7, 84, 253, 255, 255, 255, 255, 32.1238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 57, 1, 0, 0, 0, 32.1243 + 0, 31, 108, 133, 140, 140, 140, 140, 120, 13, 0, 0, 1, 129, 255, 255, 32.1244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1249 + 156, 147, 142, 5, 0, 0, 0, 30, 59, 121, 131, 108, 25, 0, 0, 0, 32.1250 + 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1255 + 255, 255, 255, 255, 255, 255, 255, 154, 4, 0, 0, 0, 0, 0, 0, 0, 32.1256 + 0, 0, 17, 139, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 110, 0, 0, 32.1262 + 0, 0, 0, 0, 0, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1273 + 255, 255, 255, 255, 251, 139, 89, 7, 7, 7, 7, 7, 7, 7, 7, 105, 32.1274 + 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 147, 43, 15, 15, 15, 32.1279 + 15, 15, 15, 15, 15, 112, 147, 147, 88, 0, 0, 0, 0, 0, 0, 0, 32.1280 + 0, 0, 0, 0, 1, 51, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 121, 13, 0, 32.1285 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.1286 + 15, 21, 26, 39, 39, 24, 0, 0, 0, 0, 0, 105, 235, 255, 255, 255, 32.1287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1291 + 159, 0, 0, 0, 0, 2, 19, 19, 19, 19, 19, 12, 0, 0, 0, 0, 32.1292 + 0, 0, 26, 47, 52, 55, 89, 102, 102, 97, 89, 50, 3, 0, 0, 0, 32.1293 + 76, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1296 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 170, 170, 170, 161, 39, 39, 32.1297 + 39, 39, 39, 39, 3, 0, 0, 10, 39, 46, 54, 54, 54, 54, 54, 50, 32.1298 + 45, 36, 8, 0, 8, 45, 52, 54, 54, 58, 102, 102, 102, 102, 102, 102, 32.1299 + 83, 21, 0, 0, 0, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 169, 47, 46, 0, 0, 0, 32.1303 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 50, 54, 54, 54, 54, 32.1304 + 54, 54, 54, 54, 54, 54, 49, 43, 48, 54, 54, 54, 54, 58, 102, 102, 32.1305 + 102, 102, 102, 102, 97, 51, 30, 0, 0, 113, 198, 178, 142, 47, 47, 47, 32.1306 + 47, 47, 47, 84, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 75, 0, 0, 32.1309 + 0, 0, 0, 0, 0, 0, 0, 6, 14, 14, 6, 0, 0, 0, 40, 54, 32.1310 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1311 + 54, 58, 102, 102, 102, 102, 102, 102, 97, 54, 52, 5, 0, 8, 14, 0, 32.1312 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 138, 242, 255, 255, 255, 255, 255, 32.1313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 194, 194, 194, 32.1315 + 115, 0, 0, 0, 5, 12, 22, 40, 40, 40, 40, 46, 54, 54, 42, 8, 32.1316 + 0, 3, 47, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1317 + 54, 54, 54, 54, 54, 58, 102, 102, 102, 102, 102, 102, 97, 54, 54, 25, 32.1318 + 0, 0, 0, 0, 0, 0, 15, 24, 24, 24, 1, 0, 0, 0, 103, 254, 32.1319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 32.1321 + 53, 0, 0, 0, 0, 0, 0, 29, 45, 54, 54, 54, 54, 54, 54, 54, 32.1322 + 54, 54, 54, 49, 38, 42, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1323 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 55, 86, 102, 102, 102, 102, 102, 32.1324 + 79, 54, 54, 44, 2, 0, 7, 26, 73, 73, 91, 102, 102, 102, 75, 31, 32.1325 + 0, 0, 0, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1327 + 255, 249, 116, 8, 0, 0, 0, 0, 0, 0, 23, 54, 54, 54, 54, 54, 32.1328 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1329 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 57, 93, 32.1330 + 102, 102, 102, 87, 55, 54, 54, 54, 40, 69, 80, 102, 102, 102, 102, 102, 32.1331 + 102, 102, 102, 93, 45, 0, 0, 12, 193, 255, 255, 255, 255, 255, 255, 255, 32.1332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1333 + 255, 255, 255, 255, 255, 139, 0, 0, 0, 6, 7, 1, 0, 14, 52, 54, 32.1334 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1335 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1336 + 54, 54, 54, 61, 70, 70, 70, 58, 54, 54, 54, 54, 54, 101, 102, 102, 32.1337 + 102, 102, 102, 102, 102, 102, 102, 102, 100, 30, 0, 0, 29, 228, 255, 255, 32.1338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1339 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 5, 0, 0, 12, 50, 54, 12, 32.1340 + 0, 38, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1341 + 54, 54, 53, 46, 42, 42, 42, 42, 53, 54, 54, 54, 54, 54, 54, 54, 32.1342 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1343 + 54, 101, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 93, 16, 0, 32.1344 + 0, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 23, 0, 0, 18, 32.1346 + 54, 54, 54, 15, 4, 39, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1347 + 54, 54, 54, 54, 54, 53, 48, 50, 54, 54, 54, 48, 46, 54, 54, 54, 32.1348 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1349 + 54, 54, 54, 54, 54, 101, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 32.1350 + 102, 102, 85, 4, 0, 10, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 32.1352 + 0, 0, 10, 51, 54, 54, 56, 56, 56, 55, 54, 54, 54, 54, 54, 54, 32.1353 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 46, 54, 54, 54, 54, 54, 32.1354 + 45, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1355 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 99, 102, 102, 102, 102, 102, 102, 32.1356 + 102, 102, 102, 102, 102, 102, 102, 67, 0, 0, 68, 253, 255, 255, 255, 255, 32.1357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1358 + 255, 255, 252, 48, 0, 3, 46, 54, 60, 79, 102, 102, 102, 95, 57, 54, 32.1359 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 32.1360 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1361 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 70, 101, 102, 32.1362 + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 94, 13, 0, 0, 222, 32.1363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1364 + 255, 255, 255, 255, 255, 255, 149, 0, 0, 17, 54, 65, 93, 102, 102, 102, 32.1365 + 102, 102, 88, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1366 + 54, 48, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1367 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1368 + 54, 54, 79, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 32.1369 + 47, 0, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1370 + 255, 255, 255, 255, 255, 255, 255, 169, 17, 2, 1, 0, 0, 39, 60, 98, 32.1371 + 102, 102, 102, 102, 102, 102, 101, 70, 54, 54, 54, 54, 54, 54, 54, 54, 32.1372 + 54, 54, 52, 43, 42, 39, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1373 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1374 + 54, 54, 54, 54, 54, 52, 43, 45, 54, 54, 54, 64, 92, 102, 102, 102, 32.1375 + 102, 102, 102, 102, 65, 3, 0, 67, 255, 255, 255, 255, 255, 255, 255, 255, 32.1376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 3, 0, 0, 0, 0, 32.1377 + 18, 56, 93, 102, 102, 102, 102, 102, 102, 102, 102, 70, 54, 54, 54, 54, 32.1378 + 54, 54, 54, 54, 54, 54, 45, 53, 54, 50, 52, 54, 54, 54, 54, 54, 32.1379 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1380 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 45, 53, 52, 46, 54, 54, 54, 32.1381 + 59, 96, 102, 102, 102, 102, 102, 98, 60, 13, 0, 7, 141, 141, 207, 255, 32.1382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 32.1383 + 0, 4, 20, 22, 45, 59, 102, 102, 102, 102, 102, 102, 102, 102, 102, 70, 32.1384 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 32.1385 + 54, 54, 54, 45, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1386 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 45, 53, 54, 54, 32.1387 + 47, 47, 42, 42, 46, 64, 92, 102, 102, 102, 102, 67, 54, 35, 0, 0, 32.1388 + 0, 0, 10, 18, 33, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1389 + 255, 255, 86, 0, 9, 41, 45, 52, 54, 77, 102, 102, 102, 102, 102, 102, 32.1390 + 102, 102, 102, 70, 54, 54, 54, 54, 54, 54, 54, 54, 54, 46, 52, 54, 32.1391 + 54, 54, 54, 54, 54, 54, 46, 51, 54, 54, 54, 54, 54, 54, 54, 54, 32.1392 + 54, 54, 54, 45, 39, 42, 42, 44, 54, 54, 54, 54, 54, 54, 54, 49, 32.1393 + 49, 54, 54, 54, 53, 39, 54, 54, 50, 43, 58, 83, 83, 83, 73, 54, 32.1394 + 54, 50, 6, 0, 0, 0, 0, 0, 0, 7, 186, 255, 255, 255, 255, 255, 32.1395 + 255, 255, 255, 255, 255, 160, 22, 0, 21, 45, 45, 46, 53, 86, 102, 102, 32.1396 + 102, 102, 102, 102, 102, 102, 100, 64, 54, 54, 54, 54, 54, 54, 54, 54, 32.1397 + 54, 45, 53, 54, 54, 54, 54, 54, 54, 52, 46, 54, 54, 54, 54, 54, 32.1398 + 54, 54, 54, 54, 54, 54, 49, 46, 52, 54, 54, 44, 54, 54, 54, 54, 32.1399 + 54, 54, 54, 50, 51, 54, 54, 54, 54, 52, 54, 54, 54, 49, 49, 54, 32.1400 + 54, 54, 54, 54, 54, 54, 48, 46, 40, 18, 18, 4, 0, 0, 22, 222, 32.1401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 21, 0, 21, 45, 45, 45, 32.1402 + 51, 99, 102, 102, 102, 102, 102, 102, 102, 102, 75, 54, 54, 54, 54, 54, 32.1403 + 54, 54, 54, 54, 54, 45, 53, 54, 54, 54, 54, 54, 54, 50, 48, 54, 32.1404 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 44, 32.1405 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1406 + 54, 54, 47, 51, 54, 54, 54, 54, 54, 54, 58, 90, 94, 94, 89, 57, 32.1407 + 10, 0, 0, 57, 240, 255, 255, 255, 255, 255, 255, 255, 255, 94, 21, 0, 32.1408 + 21, 45, 45, 45, 51, 99, 102, 102, 102, 102, 102, 102, 94, 80, 55, 54, 32.1409 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 45, 53, 54, 54, 54, 54, 54, 32.1410 + 54, 50, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1411 + 54, 54, 54, 47, 47, 47, 47, 47, 47, 49, 54, 54, 54, 54, 54, 54, 32.1412 + 54, 54, 54, 54, 54, 54, 53, 52, 54, 54, 54, 54, 54, 55, 87, 102, 32.1413 + 102, 102, 102, 98, 81, 8, 0, 0, 124, 255, 255, 255, 255, 255, 255, 255, 32.1414 + 255, 94, 21, 0, 21, 45, 45, 45, 51, 99, 102, 102, 102, 102, 102, 102, 32.1415 + 71, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 50, 54, 32.1416 + 54, 54, 54, 54, 54, 51, 47, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1417 + 54, 54, 54, 54, 54, 54, 54, 53, 44, 49, 49, 49, 49, 47, 45, 54, 32.1418 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1419 + 54, 74, 102, 102, 102, 102, 102, 102, 102, 70, 3, 0, 23, 227, 255, 255, 32.1420 + 255, 255, 255, 255, 255, 94, 21, 0, 21, 45, 45, 45, 51, 99, 102, 102, 32.1421 + 102, 102, 102, 102, 56, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1422 + 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 32.1423 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1424 + 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1425 + 54, 54, 54, 54, 54, 78, 102, 102, 102, 102, 102, 102, 102, 102, 43, 0, 32.1426 + 0, 71, 255, 255, 255, 255, 255, 255, 255, 94, 17, 0, 21, 45, 45, 45, 32.1427 + 49, 99, 102, 102, 102, 102, 102, 102, 56, 54, 54, 54, 54, 54, 54, 54, 32.1428 + 54, 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 43, 43, 32.1429 + 49, 51, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1430 + 54, 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1431 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 78, 102, 102, 102, 102, 102, 102, 32.1432 + 102, 102, 84, 3, 0, 44, 255, 255, 255, 255, 255, 255, 255, 80, 0, 0, 32.1433 + 21, 45, 45, 45, 47, 96, 102, 102, 102, 102, 102, 99, 55, 54, 54, 54, 32.1434 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 51, 54, 54, 54, 54, 54, 32.1435 + 54, 54, 54, 53, 46, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1436 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 32.1437 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 78, 102, 102, 32.1438 + 102, 102, 102, 102, 102, 102, 101, 49, 0, 14, 213, 255, 255, 255, 255, 255, 32.1439 + 225, 20, 0, 0, 23, 45, 45, 45, 45, 65, 100, 102, 102, 102, 100, 70, 32.1440 + 53, 51, 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1441 + 54, 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 54, 54, 54, 54, 54, 32.1442 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 32.1443 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1444 + 54, 76, 102, 102, 102, 102, 102, 102, 102, 102, 102, 78, 0, 0, 194, 255, 32.1445 + 255, 255, 255, 255, 144, 0, 0, 10, 43, 45, 45, 45, 45, 53, 74, 97, 32.1446 + 97, 97, 78, 54, 47, 45, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1447 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 54, 32.1448 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1449 + 54, 48, 41, 48, 52, 54, 54, 54, 54, 54, 54, 54, 54, 52, 51, 51, 32.1450 + 52, 54, 54, 54, 54, 55, 90, 102, 102, 102, 102, 102, 102, 102, 102, 86, 32.1451 + 6, 0, 194, 255, 255, 255, 255, 255, 43, 0, 3, 39, 45, 45, 45, 45, 32.1452 + 45, 53, 54, 54, 54, 54, 54, 53, 45, 54, 45, 53, 54, 54, 54, 54, 32.1453 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1454 + 48, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1455 + 54, 54, 54, 54, 54, 54, 54, 48, 44, 52, 54, 54, 54, 54, 54, 54, 32.1456 + 54, 47, 44, 44, 43, 49, 54, 54, 54, 54, 59, 95, 102, 102, 102, 102, 32.1457 + 102, 102, 102, 90, 9, 0, 194, 255, 255, 255, 255, 255, 0, 0, 15, 45, 32.1458 + 45, 45, 45, 45, 45, 53, 54, 54, 54, 54, 54, 46, 52, 54, 53, 45, 32.1459 + 54, 54, 54, 54, 53, 48, 42, 51, 53, 54, 54, 54, 54, 54, 54, 54, 32.1460 + 54, 54, 54, 54, 48, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1461 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 41, 53, 54, 32.1462 + 54, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 54, 55, 32.1463 + 81, 102, 102, 102, 102, 102, 102, 84, 4, 0, 148, 255, 255, 255, 255, 255, 32.1464 + 0, 0, 33, 45, 45, 45, 45, 45, 45, 53, 54, 54, 54, 54, 54, 50, 32.1465 + 53, 54, 54, 44, 53, 54, 54, 54, 47, 47, 54, 45, 43, 46, 53, 54, 32.1466 + 54, 54, 54, 54, 54, 54, 54, 54, 51, 43, 54, 54, 54, 54, 54, 54, 32.1467 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1468 + 54, 50, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 51, 54, 32.1469 + 54, 54, 54, 54, 59, 97, 102, 102, 102, 102, 101, 67, 0, 0, 74, 248, 32.1470 + 255, 255, 255, 255, 0, 7, 43, 45, 45, 45, 45, 45, 45, 53, 54, 54, 32.1471 + 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 54, 54, 50, 52, 54, 54, 32.1472 + 54, 41, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 40, 54, 54, 32.1473 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1474 + 54, 54, 54, 54, 54, 47, 51, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1475 + 54, 49, 49, 54, 54, 54, 54, 54, 54, 63, 101, 102, 102, 102, 89, 19, 32.1476 + 0, 4, 47, 201, 255, 255, 255, 255, 0, 15, 45, 45, 45, 45, 45, 45, 32.1477 + 46, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 54, 54, 32.1478 + 54, 54, 54, 54, 54, 45, 43, 43, 52, 54, 54, 54, 54, 54, 54, 54, 32.1479 + 54, 53, 42, 42, 34, 46, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1480 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 49, 54, 54, 54, 54, 54, 54, 32.1481 + 54, 54, 54, 54, 54, 45, 53, 54, 54, 54, 54, 54, 54, 54, 69, 79, 32.1482 + 79, 79, 57, 19, 0, 9, 54, 78, 255, 255, 255, 255, 0, 15, 45, 45, 32.1483 + 45, 45, 45, 45, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 50, 32.1484 + 42, 50, 54, 54, 54, 54, 54, 54, 54, 53, 52, 52, 43, 46, 54, 54, 32.1485 + 54, 54, 54, 54, 54, 54, 54, 45, 52, 54, 54, 54, 54, 54, 54, 54, 32.1486 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1487 + 54, 54, 54, 54, 54, 54, 54, 54, 49, 49, 54, 54, 54, 54, 54, 54, 32.1488 + 54, 54, 54, 54, 54, 54, 54, 19, 0, 0, 32, 55, 198, 255, 255, 255, 32.1489 + 0, 15, 45, 45, 45, 45, 45, 45, 45, 52, 54, 54, 54, 54, 54, 54, 32.1490 + 54, 54, 54, 54, 53, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1491 + 54, 50, 44, 54, 54, 54, 54, 54, 54, 54, 49, 49, 54, 54, 54, 54, 32.1492 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1493 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 42, 43, 46, 32.1494 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 28, 0, 0, 1, 21, 32.1495 + 195, 255, 255, 255, 0, 10, 44, 45, 45, 45, 45, 45, 45, 46, 53, 54, 32.1496 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 49, 49, 54, 54, 54, 54, 54, 32.1497 + 54, 54, 54, 54, 54, 54, 43, 54, 54, 54, 54, 54, 54, 54, 49, 49, 32.1498 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1499 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1500 + 54, 54, 53, 50, 47, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 46, 32.1501 + 11, 0, 0, 3, 189, 255, 255, 255, 0, 0, 42, 45, 45, 45, 45, 45, 32.1502 + 45, 45, 47, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 44, 50, 32.1503 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 51, 54, 54, 54, 54, 32.1504 + 54, 54, 49, 49, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1505 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1506 + 54, 54, 54, 54, 54, 54, 54, 54, 48, 50, 54, 54, 54, 54, 54, 54, 32.1507 + 54, 54, 54, 54, 50, 15, 0, 0, 69, 246, 255, 255, 0, 0, 27, 45, 32.1508 + 45, 45, 45, 45, 45, 45, 45, 51, 54, 54, 54, 54, 54, 54, 54, 54, 32.1509 + 54, 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 46, 52, 32.1510 + 54, 54, 54, 54, 54, 54, 49, 49, 54, 54, 54, 54, 54, 54, 54, 54, 32.1511 + 54, 54, 54, 54, 54, 54, 54, 54, 55, 68, 68, 68, 68, 66, 54, 54, 32.1512 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 51, 54, 32.1513 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 3, 0, 2, 157, 255, 255, 32.1514 + 0, 0, 7, 41, 45, 45, 45, 45, 45, 45, 45, 46, 53, 54, 54, 54, 32.1515 + 54, 54, 54, 54, 54, 54, 54, 46, 52, 54, 54, 54, 54, 54, 54, 54, 32.1516 + 54, 52, 46, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 32.1517 + 54, 54, 54, 39, 38, 38, 38, 38, 38, 38, 43, 75, 93, 102, 100, 73, 32.1518 + 73, 72, 63, 67, 58, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1519 + 54, 52, 46, 54, 54, 54, 54, 54, 60, 67, 67, 67, 56, 54, 30, 0, 32.1520 + 0, 141, 255, 255, 80, 0, 0, 7, 10, 28, 45, 45, 45, 45, 45, 45, 32.1521 + 45, 42, 43, 52, 54, 54, 54, 54, 54, 54, 54, 48, 43, 54, 54, 54, 32.1522 + 54, 54, 54, 54, 54, 52, 53, 54, 54, 54, 54, 54, 54, 54, 54, 44, 32.1523 + 54, 54, 54, 54, 53, 23, 12, 0, 0, 0, 0, 0, 0, 0, 3, 63, 32.1524 + 71, 24, 23, 0, 0, 0, 0, 49, 86, 79, 63, 54, 54, 54, 54, 54, 32.1525 + 54, 54, 54, 54, 54, 54, 47, 51, 54, 54, 54, 58, 94, 102, 102, 102, 32.1526 + 82, 54, 49, 2, 0, 141, 255, 255, 191, 12, 0, 0, 0, 10, 45, 45, 32.1527 + 45, 45, 45, 45, 46, 53, 50, 48, 54, 54, 54, 54, 54, 54, 54, 44, 32.1528 + 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1529 + 54, 54, 54, 51, 54, 54, 54, 54, 31, 0, 0, 0, 0, 0, 0, 0, 32.1530 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 82, 99, 69, 32.1531 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 51, 54, 54, 55, 87, 32.1532 + 102, 102, 102, 102, 102, 72, 54, 3, 0, 137, 255, 255, 255, 150, 47, 13, 32.1533 + 0, 3, 39, 45, 45, 45, 45, 45, 45, 52, 54, 45, 53, 54, 54, 54, 32.1534 + 54, 54, 54, 51, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1535 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 51, 6, 0, 0, 9, 32.1536 + 19, 37, 60, 71, 71, 22, 0, 0, 0, 0, 8, 18, 39, 38, 0, 0, 32.1537 + 0, 13, 75, 102, 72, 54, 54, 54, 54, 54, 54, 54, 54, 51, 47, 54, 32.1538 + 54, 54, 62, 102, 102, 102, 102, 102, 102, 95, 56, 3, 0, 119, 255, 255, 32.1539 + 255, 255, 255, 144, 0, 0, 34, 45, 45, 45, 45, 45, 45, 49, 54, 51, 32.1540 + 47, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1541 + 54, 54, 54, 54, 54, 54, 51, 45, 26, 17, 17, 17, 17, 17, 17, 13, 32.1542 + 0, 0, 17, 53, 54, 54, 86, 102, 102, 88, 29, 0, 1, 30, 83, 102, 32.1543 + 102, 96, 50, 7, 0, 0, 64, 102, 99, 67, 54, 54, 54, 54, 54, 46, 32.1544 + 41, 45, 54, 54, 54, 54, 62, 102, 102, 102, 102, 102, 102, 102, 65, 3, 32.1545 + 0, 119, 255, 255, 255, 255, 255, 188, 3, 0, 18, 45, 45, 45, 45, 45, 32.1546 + 45, 48, 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1547 + 54, 54, 54, 54, 53, 52, 52, 52, 51, 31, 13, 0, 0, 0, 0, 0, 32.1548 + 0, 0, 0, 0, 0, 1, 44, 54, 54, 54, 86, 102, 102, 102, 81, 65, 32.1549 + 68, 102, 102, 102, 102, 102, 102, 78, 3, 0, 64, 102, 102, 102, 72, 54, 32.1550 + 54, 54, 54, 52, 46, 53, 54, 54, 54, 54, 62, 102, 102, 102, 102, 102, 32.1551 + 102, 102, 75, 2, 0, 119, 255, 255, 255, 255, 255, 255, 29, 0, 16, 45, 32.1552 + 45, 45, 45, 45, 45, 45, 48, 52, 39, 42, 42, 48, 53, 54, 54, 54, 32.1553 + 54, 54, 54, 54, 53, 53, 48, 48, 46, 45, 45, 44, 17, 0, 0, 0, 32.1554 + 0, 0, 5, 5, 5, 5, 4, 0, 0, 13, 54, 54, 54, 54, 86, 102, 32.1555 + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 74, 62, 87, 102, 32.1556 + 102, 102, 100, 64, 54, 54, 54, 54, 51, 47, 54, 54, 54, 54, 62, 102, 32.1557 + 102, 102, 102, 102, 102, 102, 66, 0, 0, 129, 255, 255, 255, 255, 255, 255, 32.1558 + 89, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 46, 51, 54, 54, 47, 32.1559 + 47, 54, 54, 54, 54, 54, 54, 53, 49, 45, 45, 45, 45, 45, 45, 25, 32.1560 + 0, 0, 0, 3, 22, 31, 54, 54, 54, 54, 52, 31, 31, 45, 54, 54, 32.1561 + 54, 54, 85, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 32.1562 + 102, 102, 102, 102, 102, 102, 102, 96, 58, 54, 54, 54, 54, 48, 41, 51, 32.1563 + 53, 54, 57, 95, 102, 102, 102, 102, 102, 102, 66, 0, 4, 226, 255, 255, 32.1564 + 255, 255, 255, 255, 137, 0, 0, 44, 45, 45, 45, 45, 45, 45, 45, 45, 32.1565 + 45, 50, 53, 54, 44, 54, 54, 54, 54, 54, 54, 51, 45, 45, 45, 45, 32.1566 + 45, 45, 45, 17, 0, 0, 21, 51, 54, 54, 54, 54, 54, 54, 54, 54, 32.1567 + 54, 54, 54, 54, 54, 54, 59, 97, 102, 102, 102, 102, 102, 102, 100, 100, 32.1568 + 101, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 90, 54, 54, 54, 32.1569 + 54, 43, 43, 43, 45, 53, 54, 79, 102, 102, 102, 102, 102, 102, 66, 0, 32.1570 + 33, 238, 255, 255, 255, 255, 255, 255, 239, 0, 0, 26, 45, 45, 45, 45, 32.1571 + 45, 45, 45, 45, 45, 45, 48, 49, 42, 49, 49, 49, 49, 49, 49, 45, 32.1572 + 45, 45, 45, 45, 45, 45, 45, 17, 0, 17, 54, 54, 54, 54, 54, 54, 32.1573 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 65, 102, 102, 102, 93, 32.1574 + 77, 77, 57, 54, 63, 81, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 32.1575 + 102, 81, 54, 54, 50, 48, 50, 43, 49, 49, 54, 70, 102, 102, 102, 102, 32.1576 + 102, 102, 66, 0, 0, 170, 255, 255, 255, 255, 255, 255, 239, 0, 0, 17, 32.1577 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 39, 45, 45, 45, 32.1578 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 17, 0, 26, 54, 54, 32.1579 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1580 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 79, 102, 102, 102, 102, 32.1581 + 102, 102, 102, 102, 102, 102, 63, 54, 54, 54, 50, 47, 54, 44, 54, 70, 32.1582 + 102, 102, 102, 102, 102, 102, 75, 1, 0, 0, 164, 255, 255, 255, 255, 255, 32.1583 + 254, 86, 0, 4, 40, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1584 + 39, 45, 45, 45, 45, 45, 45, 45, 45, 45, 42, 17, 1, 1, 1, 0, 32.1585 + 0, 26, 54, 54, 54, 54, 54, 54, 54, 54, 53, 44, 48, 54, 54, 54, 32.1586 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1587 + 78, 102, 102, 102, 102, 102, 102, 102, 102, 102, 63, 54, 46, 43, 45, 53, 32.1588 + 54, 44, 54, 63, 100, 102, 102, 102, 102, 102, 76, 13, 0, 0, 63, 255, 32.1589 + 255, 255, 255, 255, 255, 133, 0, 0, 26, 45, 45, 45, 45, 45, 45, 45, 32.1590 + 45, 45, 45, 43, 37, 42, 45, 45, 45, 45, 45, 45, 45, 45, 13, 0, 32.1591 + 0, 0, 0, 0, 0, 27, 54, 54, 54, 54, 54, 54, 54, 51, 43, 52, 32.1592 + 48, 45, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1593 + 54, 54, 54, 54, 54, 79, 102, 102, 102, 102, 102, 102, 102, 102, 63, 54, 32.1594 + 52, 52, 54, 54, 54, 44, 54, 54, 71, 102, 102, 102, 102, 85, 54, 49, 32.1595 + 6, 0, 3, 212, 255, 255, 255, 255, 255, 217, 17, 0, 16, 45, 45, 45, 32.1596 + 45, 45, 45, 45, 45, 45, 45, 45, 44, 40, 41, 45, 45, 45, 45, 45, 32.1597 + 41, 9, 0, 0, 0, 11, 17, 0, 0, 38, 54, 54, 54, 54, 54, 54, 32.1598 + 52, 46, 53, 54, 54, 50, 43, 53, 51, 46, 54, 54, 54, 54, 54, 54, 32.1599 + 54, 54, 54, 54, 54, 52, 39, 42, 42, 44, 85, 102, 102, 102, 102, 102, 32.1600 + 102, 102, 63, 54, 54, 54, 54, 54, 47, 51, 54, 54, 54, 75, 83, 83, 32.1601 + 83, 55, 54, 54, 36, 0, 0, 209, 255, 255, 255, 255, 255, 255, 81, 0, 32.1602 + 1, 36, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 39, 44, 32.1603 + 45, 45, 45, 45, 29, 0, 0, 0, 25, 43, 44, 42, 46, 53, 54, 54, 32.1604 + 54, 54, 54, 54, 45, 53, 54, 54, 54, 54, 52, 39, 45, 51, 54, 54, 32.1605 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 52, 54, 54, 44, 63, 98, 32.1606 + 102, 102, 102, 102, 102, 102, 63, 54, 54, 54, 54, 50, 45, 54, 54, 54, 32.1607 + 54, 54, 54, 54, 54, 54, 54, 54, 52, 5, 0, 209, 255, 255, 255, 255, 32.1608 + 255, 255, 149, 0, 0, 8, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1609 + 45, 45, 44, 40, 45, 45, 45, 44, 11, 0, 2, 22, 44, 45, 45, 49, 32.1610 + 54, 54, 54, 50, 42, 42, 41, 46, 52, 54, 54, 54, 54, 54, 54, 52, 32.1611 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1612 + 54, 47, 51, 92, 102, 102, 102, 102, 102, 102, 63, 54, 54, 54, 48, 42, 32.1613 + 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 6, 0, 209, 32.1614 + 255, 255, 255, 255, 255, 255, 234, 31, 0, 1, 28, 45, 45, 45, 45, 45, 32.1615 + 45, 45, 45, 45, 45, 45, 45, 39, 45, 45, 45, 44, 0, 0, 11, 45, 32.1616 + 45, 45, 45, 45, 51, 54, 54, 44, 54, 54, 48, 41, 54, 54, 54, 54, 32.1617 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1618 + 54, 54, 54, 54, 54, 53, 44, 74, 84, 102, 102, 102, 102, 98, 60, 54, 32.1619 + 54, 54, 52, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1620 + 54, 6, 0, 209, 255, 255, 255, 255, 255, 255, 255, 186, 0, 0, 2, 36, 32.1621 + 45, 45, 45, 45, 45, 45, 45, 45, 44, 38, 39, 43, 45, 45, 45, 44, 32.1622 + 0, 0, 24, 45, 45, 45, 45, 45, 45, 53, 54, 44, 54, 54, 53, 51, 32.1623 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1624 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 46, 49, 65, 97, 102, 102, 32.1625 + 101, 71, 54, 54, 54, 54, 54, 51, 47, 54, 54, 54, 54, 54, 54, 54, 32.1626 + 54, 54, 54, 54, 35, 1, 0, 209, 255, 255, 255, 255, 255, 255, 255, 243, 32.1627 + 69, 0, 0, 7, 37, 34, 36, 45, 45, 45, 45, 45, 44, 41, 44, 45, 32.1628 + 45, 45, 45, 44, 0, 0, 24, 45, 45, 45, 45, 45, 45, 53, 54, 44, 32.1629 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1630 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1631 + 61, 69, 90, 90, 78, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 32.1632 + 54, 54, 54, 54, 54, 54, 54, 44, 3, 0, 0, 209, 255, 255, 255, 255, 32.1633 + 255, 255, 255, 255, 182, 24, 0, 0, 0, 0, 2, 12, 43, 45, 45, 45, 32.1634 + 45, 45, 45, 45, 45, 45, 45, 44, 3, 0, 20, 45, 45, 45, 45, 45, 32.1635 + 45, 53, 54, 46, 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 32.1636 + 42, 42, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1637 + 54, 54, 54, 54, 54, 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1638 + 44, 54, 54, 54, 54, 54, 54, 54, 54, 54, 50, 8, 0, 0, 64, 242, 32.1639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 12, 0, 0, 0, 0, 0, 32.1640 + 29, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 17, 0, 6, 45, 32.1641 + 45, 45, 45, 45, 45, 53, 54, 52, 46, 54, 54, 54, 54, 54, 54, 54, 32.1642 + 54, 54, 48, 48, 54, 54, 48, 50, 53, 50, 50, 50, 50, 50, 51, 54, 32.1643 + 54, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 54, 54, 32.1644 + 51, 50, 54, 53, 45, 54, 54, 54, 54, 54, 54, 54, 54, 54, 19, 0, 32.1645 + 0, 28, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 168, 32.1646 + 168, 58, 0, 0, 24, 47, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1647 + 20, 0, 2, 34, 45, 45, 45, 45, 45, 53, 54, 52, 46, 54, 54, 54, 32.1648 + 54, 54, 54, 54, 54, 51, 47, 54, 54, 54, 54, 40, 46, 46, 46, 46, 32.1649 + 46, 46, 44, 48, 54, 54, 54, 54, 54, 54, 54, 54, 52, 52, 54, 54, 32.1650 + 54, 54, 54, 46, 45, 46, 43, 52, 46, 54, 54, 54, 54, 54, 54, 54, 32.1651 + 54, 29, 4, 0, 10, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1652 + 255, 255, 255, 255, 255, 254, 64, 0, 2, 113, 66, 45, 45, 45, 45, 45, 32.1653 + 45, 45, 45, 45, 36, 0, 0, 14, 45, 45, 45, 45, 50, 54, 54, 53, 32.1654 + 51, 54, 54, 54, 54, 54, 54, 54, 54, 49, 49, 54, 54, 54, 54, 50, 32.1655 + 50, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 54, 54, 54, 54, 32.1656 + 54, 54, 54, 54, 54, 54, 54, 44, 54, 54, 48, 43, 51, 54, 54, 54, 32.1657 + 54, 54, 54, 54, 40, 0, 0, 0, 140, 255, 255, 255, 255, 255, 255, 255, 32.1658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 111, 0, 0, 0, 61, 78, 32.1659 + 41, 41, 41, 41, 45, 45, 45, 45, 25, 0, 0, 14, 45, 45, 45, 45, 32.1660 + 48, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1661 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 32.1662 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 32.1663 + 54, 54, 54, 54, 54, 54, 54, 54, 32, 0, 0, 7, 193, 255, 255, 255, 32.1664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 8, 32.1665 + 0, 0, 0, 0, 0, 0, 0, 2, 27, 45, 45, 44, 7, 0, 0, 25, 32.1666 + 45, 45, 45, 45, 45, 47, 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1667 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 44, 50, 32.1668 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 53, 54, 45, 53, 32.1669 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32, 0, 0, 50, 32.1670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1671 + 255, 255, 255, 212, 65, 1, 0, 0, 0, 0, 0, 0, 6, 42, 45, 34, 32.1672 + 0, 0, 16, 45, 45, 45, 45, 45, 45, 45, 46, 53, 54, 54, 54, 54, 32.1673 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1674 + 53, 47, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 51, 32.1675 + 47, 54, 45, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1676 + 32, 0, 0, 13, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 66, 0, 0, 24, 28, 0, 32.1678 + 0, 31, 45, 25, 0, 0, 33, 45, 45, 45, 45, 45, 45, 45, 45, 47, 32.1679 + 52, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1680 + 54, 54, 54, 54, 48, 46, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1681 + 54, 54, 54, 54, 49, 42, 47, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1682 + 54, 54, 54, 54, 54, 11, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 32.1683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 32.1684 + 252, 252, 204, 5, 0, 0, 0, 0, 0, 7, 44, 45, 45, 45, 45, 45, 32.1685 + 45, 45, 45, 45, 46, 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1686 + 54, 54, 54, 54, 54, 54, 54, 54, 43, 46, 54, 54, 54, 54, 54, 54, 32.1687 + 54, 54, 54, 54, 54, 54, 54, 54, 53, 53, 53, 54, 54, 54, 54, 54, 32.1688 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 6, 0, 179, 255, 255, 255, 32.1689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1690 + 255, 255, 255, 255, 255, 255, 255, 11, 0, 0, 0, 0, 0, 16, 45, 45, 32.1691 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 47, 44, 47, 54, 54, 54, 54, 32.1692 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 50, 44, 54, 32.1693 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1694 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 45, 0, 0, 32.1695 + 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 105, 105, 105, 60, 32.1697 + 0, 16, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 40, 44, 44, 32.1698 + 53, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1699 + 54, 54, 52, 46, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1700 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1701 + 54, 14, 0, 0, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1703 + 255, 255, 255, 145, 0, 1, 43, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1704 + 37, 42, 45, 46, 45, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1705 + 54, 54, 54, 54, 54, 54, 53, 45, 54, 54, 54, 54, 54, 54, 54, 54, 32.1706 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 51, 33, 33, 46, 54, 54, 54, 32.1707 + 54, 54, 58, 108, 22, 0, 0, 26, 247, 255, 255, 255, 255, 255, 255, 255, 32.1708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1709 + 255, 255, 255, 255, 255, 255, 255, 145, 0, 0, 36, 45, 45, 45, 45, 45, 32.1710 + 45, 45, 45, 45, 43, 44, 45, 45, 43, 51, 46, 46, 52, 54, 54, 54, 32.1711 + 54, 54, 54, 54, 54, 54, 46, 46, 46, 45, 42, 52, 54, 54, 54, 54, 32.1712 + 54, 54, 54, 54, 54, 54, 54, 53, 37, 35, 41, 48, 40, 8, 0, 0, 32.1713 + 4, 7, 23, 35, 35, 27, 8, 26, 0, 0, 0, 157, 255, 255, 255, 255, 32.1714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 0, 0, 18, 45, 32.1716 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 42, 39, 50, 50, 32.1717 + 43, 51, 54, 54, 54, 54, 54, 54, 54, 54, 50, 50, 50, 51, 54, 54, 32.1718 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 53, 50, 29, 0, 0, 12, 30, 32.1719 + 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 252, 32.1720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.1722 + 29, 0, 1, 25, 33, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1723 + 43, 41, 48, 53, 53, 45, 49, 50, 47, 47, 47, 53, 54, 54, 54, 54, 32.1724 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 48, 46, 35, 2, 32.1725 + 0, 0, 0, 0, 0, 0, 3, 12, 10, 0, 0, 0, 0, 0, 0, 0, 32.1726 + 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1728 + 255, 255, 255, 255, 127, 0, 0, 0, 0, 10, 10, 45, 45, 45, 45, 45, 32.1729 + 45, 45, 45, 45, 45, 45, 45, 46, 47, 47, 39, 43, 46, 46, 44, 50, 32.1730 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 50, 32.1731 + 45, 41, 6, 0, 0, 0, 0, 0, 0, 1, 30, 45, 42, 34, 33, 50, 32.1732 + 78, 78, 120, 47, 0, 0, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1734 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 36, 0, 0, 0, 0, 0, 41, 32.1735 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 39, 44, 32.1736 + 45, 45, 45, 44, 52, 50, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 32.1737 + 54, 54, 51, 45, 45, 25, 0, 0, 5, 33, 33, 33, 33, 34, 45, 45, 32.1738 + 45, 45, 36, 64, 102, 102, 72, 0, 0, 56, 239, 255, 255, 255, 255, 255, 32.1739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 181, 86, 32.1741 + 46, 0, 0, 27, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1742 + 45, 45, 45, 45, 45, 45, 45, 39, 43, 50, 54, 54, 54, 54, 54, 54, 32.1743 + 54, 54, 54, 54, 54, 53, 45, 45, 39, 3, 0, 2, 34, 45, 45, 45, 32.1744 + 45, 45, 45, 45, 45, 43, 40, 64, 102, 102, 12, 0, 0, 169, 255, 255, 32.1745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1747 + 255, 255, 255, 255, 238, 14, 0, 13, 43, 45, 45, 45, 45, 45, 45, 45, 32.1748 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 40, 44, 52, 54, 54, 32.1749 + 54, 54, 54, 54, 54, 54, 54, 54, 54, 47, 45, 45, 34, 0, 0, 15, 32.1750 + 45, 45, 45, 45, 45, 45, 45, 41, 41, 39, 44, 68, 102, 102, 12, 0, 32.1751 + 87, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 0, 21, 42, 45, 45, 32.1754 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1755 + 45, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, 51, 45, 45, 45, 32.1756 + 7, 0, 0, 32, 45, 45, 45, 45, 45, 45, 45, 39, 41, 45, 54, 97, 32.1757 + 102, 102, 12, 0, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 4, 0, 32.1760 + 0, 12, 43, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 32.1761 + 45, 45, 45, 45, 45, 48, 54, 54, 54, 54, 54, 54, 54, 54, 54, 52, 32.1762 + 46, 45, 45, 32, 0, 0, 6, 45, 45, 45, 45, 45, 45, 45, 45, 39, 32.1763 + 46, 50, 92, 102, 102, 102, 12, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.1764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1766 + 255, 255, 55, 0, 0, 0, 13, 39, 45, 45, 45, 45, 45, 45, 45, 45, 32.1767 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 48, 54, 54, 54, 54, 54, 54, 32.1768 + 54, 54, 51, 45, 45, 44, 36, 3, 0, 0, 34, 45, 45, 45, 45, 45, 32.1769 + 45, 49, 50, 44, 83, 102, 102, 102, 102, 99, 11, 0, 208, 255, 255, 255, 32.1770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1772 + 255, 255, 255, 255, 255, 255, 252, 115, 2, 0, 0, 1, 19, 30, 43, 45, 32.1773 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 48, 54, 52, 32.1774 + 51, 51, 51, 51, 51, 51, 46, 45, 45, 32, 0, 0, 0, 9, 43, 45, 32.1775 + 45, 45, 45, 46, 48, 54, 53, 59, 102, 102, 102, 102, 102, 70, 0, 0, 32.1776 + 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 1, 0, 0, 32.1779 + 0, 0, 4, 21, 21, 21, 21, 21, 21, 35, 44, 45, 45, 45, 45, 45, 32.1780 + 45, 50, 49, 6, 0, 0, 0, 0, 0, 3, 29, 44, 28, 2, 0, 0, 32.1781 + 3, 39, 45, 45, 45, 46, 53, 50, 48, 54, 47, 93, 102, 102, 102, 102, 32.1782 + 102, 30, 0, 0, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1785 + 255, 183, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 35, 32.1786 + 45, 45, 45, 45, 48, 54, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.1787 + 0, 0, 0, 8, 35, 45, 45, 45, 47, 52, 54, 52, 43, 43, 69, 102, 32.1788 + 102, 102, 102, 102, 102, 30, 0, 58, 255, 255, 255, 255, 255, 255, 255, 255, 32.1789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1791 + 255, 255, 255, 255, 255, 255, 251, 238, 118, 18, 0, 0, 0, 0, 0, 0, 32.1792 + 0, 0, 0, 0, 8, 24, 24, 45, 48, 18, 0, 0, 1, 20, 20, 20, 32.1793 + 4, 0, 0, 0, 0, 0, 4, 39, 45, 45, 45, 46, 53, 54, 54, 54, 32.1794 + 53, 58, 101, 102, 102, 102, 102, 102, 96, 16, 0, 161, 255, 255, 255, 255, 32.1795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 241, 241, 32.1798 + 241, 241, 241, 164, 61, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 32.1799 + 29, 45, 45, 45, 43, 19, 19, 19, 19, 20, 37, 39, 42, 45, 48, 52, 32.1800 + 53, 44, 52, 54, 54, 59, 102, 102, 102, 102, 102, 102, 90, 0, 0, 163, 32.1801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1804 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 206, 102, 2, 0, 0, 0, 0, 32.1805 + 0, 0, 0, 21, 44, 45, 45, 45, 45, 45, 45, 45, 43, 38, 43, 43, 32.1806 + 40, 49, 53, 47, 43, 47, 49, 54, 50, 59, 102, 102, 102, 102, 102, 102, 32.1807 + 52, 0, 5, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 32.1811 + 226, 160, 94, 61, 7, 0, 6, 43, 45, 45, 45, 45, 45, 45, 45, 42, 32.1812 + 38, 44, 45, 45, 44, 48, 44, 49, 50, 45, 53, 52, 46, 59, 102, 102, 32.1813 + 102, 102, 102, 102, 11, 0, 13, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1817 + 255, 255, 255, 255, 255, 255, 255, 242, 85, 0, 22, 45, 45, 45, 45, 45, 32.1818 + 45, 45, 45, 44, 43, 45, 45, 43, 51, 44, 51, 54, 41, 42, 42, 44, 32.1819 + 53, 54, 82, 102, 102, 102, 102, 71, 0, 0, 103, 255, 255, 255, 255, 255, 32.1820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 0, 25, 45, 32.1824 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 39, 46, 53, 54, 54, 32.1825 + 50, 52, 54, 54, 54, 54, 56, 90, 102, 102, 96, 24, 0, 0, 205, 255, 32.1826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1830 + 96, 0, 10, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 44, 38, 32.1831 + 45, 47, 53, 54, 54, 54, 54, 54, 54, 54, 54, 58, 63, 63, 46, 0, 32.1832 + 0, 58, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1836 + 255, 255, 255, 255, 96, 0, 5, 42, 45, 45, 45, 45, 45, 45, 45, 45, 32.1837 + 45, 45, 41, 41, 45, 45, 53, 54, 54, 51, 40, 40, 40, 47, 54, 54, 32.1838 + 54, 31, 5, 0, 7, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1842 + 255, 255, 255, 255, 255, 255, 255, 255, 119, 0, 0, 26, 44, 45, 45, 45, 32.1843 + 45, 45, 45, 45, 43, 41, 41, 45, 45, 45, 53, 54, 53, 21, 0, 0, 32.1844 + 0, 7, 14, 14, 14, 2, 0, 0, 51, 255, 255, 255, 255, 255, 255, 255, 32.1845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 9, 0, 0, 32.1849 + 24, 45, 45, 45, 45, 45, 45, 45, 45, 39, 45, 45, 45, 45, 53, 51, 32.1850 + 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 209, 255, 255, 255, 32.1851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1855 + 255, 67, 0, 0, 1, 21, 38, 38, 38, 44, 45, 45, 45, 45, 45, 45, 32.1856 + 45, 45, 52, 21, 0, 0, 0, 93, 39, 39, 39, 39, 39, 39, 61, 234, 32.1857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1861 + 255, 255, 255, 255, 255, 219, 84, 0, 0, 0, 0, 0, 0, 41, 45, 45, 32.1862 + 45, 45, 45, 45, 45, 42, 30, 0, 0, 7, 84, 253, 255, 255, 255, 255, 32.1863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 57, 1, 0, 0, 0, 32.1868 + 0, 10, 34, 42, 45, 45, 45, 45, 38, 4, 0, 0, 1, 129, 255, 255, 32.1869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1874 + 156, 147, 142, 5, 0, 0, 0, 9, 19, 39, 42, 34, 8, 0, 0, 0, 32.1875 + 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1880 + 255, 255, 255, 255, 255, 255, 255, 154, 4, 0, 0, 0, 0, 0, 0, 0, 32.1881 + 0, 0, 17, 139, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 110, 0, 0, 32.1887 + 0, 0, 0, 0, 0, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.1889 +/* Define image 'cdrom' of size 100x100x1x3 and type 'const unsigned char' */ 32.1890 +const unsigned char data_cdrom[] = { 32.1891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1893 + 255, 245, 191, 191, 187, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 32.1894 + 148, 175, 224, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.1899 + 246, 245, 222, 139, 59, 26, 8, 24, 24, 48, 108, 95, 95, 95, 95, 95, 32.1900 + 95, 95, 95, 57, 24, 5, 23, 25, 65, 119, 177, 222, 253, 255, 255, 255, 32.1901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1905 + 255, 255, 241, 178, 103, 45, 0, 0, 50, 110, 160, 190, 190, 190, 190, 190, 32.1906 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 144, 143, 125, 71, 50, 0, 0, 32.1907 + 61, 102, 181, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1911 + 255, 255, 255, 255, 255, 249, 146, 16, 9, 78, 119, 180, 190, 190, 190, 190, 32.1912 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1913 + 190, 190, 190, 137, 105, 47, 0, 7, 123, 249, 255, 255, 255, 255, 255, 255, 32.1914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1917 + 255, 255, 255, 255, 255, 255, 255, 246, 153, 55, 3, 40, 170, 190, 190, 190, 32.1918 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1919 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 189, 149, 62, 7, 40, 159, 240, 32.1920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 45, 0, 29, 82, 107, 32.1924 + 139, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1925 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 189, 197, 210, 211, 32.1926 + 179, 43, 0, 53, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 153, 37, 1, 38, 32.1930 + 86, 107, 107, 81, 47, 128, 182, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1931 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1932 + 167, 0, 156, 246, 246, 235, 122, 20, 1, 116, 245, 255, 255, 255, 255, 255, 32.1933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 74, 32.1936 + 0, 67, 95, 107, 107, 107, 107, 72, 0, 60, 141, 184, 190, 190, 190, 190, 32.1937 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1938 + 190, 190, 190, 200, 111, 5, 235, 246, 246, 246, 233, 165, 67, 9, 32, 153, 32.1939 + 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1942 + 255, 243, 68, 0, 83, 189, 121, 107, 107, 107, 107, 107, 33, 0, 62, 134, 32.1943 + 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1944 + 190, 190, 190, 190, 190, 190, 192, 232, 30, 78, 246, 246, 246, 246, 245, 190, 32.1945 + 190, 161, 50, 0, 43, 190, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1948 + 255, 255, 255, 255, 237, 58, 16, 127, 190, 190, 130, 107, 107, 107, 107, 107, 32.1949 + 98, 23, 10, 87, 156, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1950 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 217, 222, 5, 162, 246, 246, 32.1951 + 246, 237, 81, 35, 190, 190, 190, 142, 50, 0, 97, 234, 255, 255, 255, 255, 32.1952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1954 + 255, 255, 255, 255, 255, 255, 255, 235, 53, 9, 155, 190, 190, 190, 183, 115, 32.1955 + 107, 107, 107, 107, 107, 100, 19, 13, 105, 180, 190, 190, 190, 190, 190, 190, 32.1956 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 241, 157, 32.1957 + 6, 203, 246, 246, 246, 151, 0, 139, 190, 190, 190, 190, 187, 91, 11, 21, 32.1958 + 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 50, 19, 141, 190, 190, 32.1961 + 190, 190, 190, 176, 123, 107, 107, 107, 107, 107, 80, 5, 30, 123, 189, 190, 32.1962 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1963 + 190, 202, 244, 84, 48, 246, 246, 246, 217, 13, 52, 188, 190, 190, 190, 190, 32.1964 + 190, 190, 151, 17, 14, 185, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 5, 32.1967 + 140, 190, 190, 190, 190, 190, 190, 190, 175, 131, 107, 107, 107, 107, 107, 66, 32.1968 + 0, 61, 149, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1969 + 190, 190, 190, 190, 190, 206, 246, 62, 142, 246, 246, 246, 146, 6, 154, 190, 32.1970 + 190, 190, 190, 190, 190, 190, 190, 188, 65, 0, 90, 248, 255, 255, 255, 255, 32.1971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1973 + 255, 154, 0, 112, 190, 190, 190, 190, 190, 190, 190, 190, 190, 177, 114, 107, 32.1974 + 107, 107, 107, 105, 34, 7, 96, 171, 190, 190, 190, 190, 190, 190, 190, 190, 32.1975 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 220, 216, 6, 156, 246, 246, 246, 32.1976 + 76, 63, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 185, 74, 0, 85, 32.1977 + 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1979 + 255, 255, 255, 255, 221, 13, 61, 182, 190, 190, 190, 190, 190, 190, 190, 190, 32.1980 + 190, 190, 158, 107, 107, 107, 107, 107, 86, 3, 49, 124, 183, 190, 190, 190, 32.1981 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 194, 246, 210, 0, 32.1982 + 238, 246, 246, 231, 17, 99, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1983 + 190, 186, 76, 0, 76, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1985 + 255, 255, 255, 255, 255, 255, 255, 217, 45, 19, 188, 190, 190, 190, 190, 190, 32.1986 + 190, 190, 190, 190, 190, 190, 190, 135, 107, 107, 107, 107, 107, 34, 14, 105, 32.1987 + 174, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1988 + 216, 246, 116, 0, 238, 246, 246, 201, 0, 146, 190, 190, 190, 190, 190, 190, 32.1989 + 190, 190, 190, 190, 190, 190, 190, 113, 0, 80, 255, 255, 255, 255, 255, 255, 32.1990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 35, 4, 117, 190, 190, 32.1992 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 186, 112, 107, 107, 107, 32.1993 + 107, 89, 3, 45, 140, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1994 + 190, 190, 190, 190, 216, 246, 66, 78, 245, 246, 246, 117, 29, 181, 190, 190, 32.1995 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 187, 93, 5, 140, 255, 32.1996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.1997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 235, 40, 1, 32.1998 + 116, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.1999 + 165, 107, 107, 107, 107, 107, 57, 4, 91, 166, 190, 190, 190, 190, 190, 190, 32.2000 + 190, 190, 190, 190, 190, 190, 190, 190, 225, 244, 20, 126, 246, 246, 244, 34, 32.2001 + 58, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2002 + 190, 39, 0, 140, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2004 + 254, 115, 5, 124, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2005 + 190, 190, 190, 190, 190, 122, 107, 107, 107, 107, 93, 12, 18, 114, 182, 190, 32.2006 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 238, 171, 0, 183, 32.2007 + 246, 246, 185, 0, 130, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2008 + 190, 190, 190, 190, 190, 178, 93, 0, 123, 255, 255, 255, 255, 255, 255, 255, 32.2009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2010 + 255, 255, 255, 255, 228, 8, 69, 190, 190, 190, 91, 161, 190, 190, 190, 190, 32.2011 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 143, 107, 107, 107, 107, 107, 81, 32.2012 + 0, 66, 133, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 202, 32.2013 + 245, 85, 30, 239, 246, 246, 99, 13, 184, 190, 190, 190, 190, 190, 190, 190, 32.2014 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 189, 103, 1, 166, 255, 255, 32.2015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2016 + 255, 255, 255, 255, 255, 255, 255, 253, 101, 20, 176, 190, 190, 190, 5, 18, 32.2017 + 108, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 188, 119, 107, 32.2018 + 107, 107, 107, 102, 32, 16, 102, 157, 190, 190, 190, 190, 190, 190, 190, 190, 32.2019 + 190, 190, 190, 220, 237, 45, 107, 246, 246, 239, 20, 72, 190, 190, 190, 190, 32.2020 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 180, 32.2021 + 52, 16, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 0, 99, 190, 190, 32.2023 + 190, 190, 175, 42, 0, 93, 174, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2024 + 190, 190, 174, 109, 107, 107, 107, 107, 73, 0, 65, 115, 185, 190, 190, 190, 32.2025 + 190, 190, 190, 190, 190, 190, 190, 238, 225, 0, 191, 246, 246, 144, 0, 136, 32.2026 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2027 + 190, 190, 190, 190, 155, 17, 22, 236, 255, 255, 255, 255, 255, 255, 255, 255, 32.2028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 118, 32.2029 + 8, 183, 190, 190, 190, 190, 190, 178, 81, 3, 63, 172, 190, 190, 190, 190, 32.2030 + 190, 190, 190, 190, 190, 190, 190, 151, 107, 107, 107, 107, 106, 40, 12, 102, 32.2031 + 159, 186, 190, 190, 190, 190, 190, 190, 190, 190, 194, 246, 139, 11, 228, 246, 32.2032 + 246, 93, 47, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2033 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 156, 10, 50, 248, 255, 255, 255, 32.2034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2035 + 255, 255, 255, 45, 67, 190, 190, 190, 190, 190, 190, 190, 190, 110, 1, 33, 32.2036 + 169, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 188, 127, 107, 107, 107, 32.2037 + 107, 90, 5, 41, 106, 155, 189, 190, 190, 190, 190, 190, 190, 190, 213, 246, 32.2038 + 91, 74, 246, 246, 244, 47, 112, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2039 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 106, 0, 32.2040 + 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2041 + 255, 255, 255, 255, 255, 255, 255, 0, 131, 190, 190, 190, 190, 190, 190, 190, 32.2042 + 190, 190, 143, 29, 24, 119, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2043 + 171, 108, 107, 107, 107, 107, 41, 0, 86, 107, 169, 190, 190, 190, 190, 190, 32.2044 + 190, 190, 235, 205, 11, 137, 246, 246, 172, 0, 120, 190, 190, 190, 190, 190, 32.2045 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2046 + 190, 190, 182, 33, 32, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 8, 192, 190, 190, 190, 32.2048 + 190, 190, 190, 190, 190, 190, 190, 169, 46, 4, 79, 179, 190, 190, 190, 190, 32.2049 + 190, 190, 190, 190, 190, 142, 107, 107, 107, 107, 98, 17, 34, 107, 114, 176, 32.2050 + 190, 190, 190, 190, 190, 190, 235, 169, 10, 210, 246, 246, 88, 19, 183, 190, 32.2051 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2052 + 190, 190, 184, 176, 176, 176, 188, 152, 4, 94, 255, 255, 255, 255, 255, 255, 32.2053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 153, 49, 32.2054 + 215, 212, 210, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 91, 1, 45, 32.2055 + 175, 190, 190, 190, 190, 190, 190, 190, 190, 175, 115, 107, 107, 107, 107, 64, 32.2056 + 3, 85, 107, 141, 190, 190, 190, 190, 190, 190, 235, 89, 23, 246, 246, 246, 32.2057 + 7, 86, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2058 + 190, 190, 190, 189, 131, 44, 100, 107, 107, 107, 139, 180, 96, 0, 138, 255, 32.2059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2060 + 255, 255, 57, 80, 246, 246, 246, 232, 198, 190, 190, 190, 190, 190, 190, 190, 32.2061 + 190, 190, 103, 0, 6, 132, 190, 190, 190, 190, 190, 190, 190, 190, 168, 108, 32.2062 + 107, 107, 107, 95, 5, 39, 107, 141, 190, 190, 190, 190, 190, 190, 212, 63, 32.2063 + 115, 246, 246, 187, 2, 159, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2064 + 190, 190, 190, 190, 190, 190, 190, 96, 0, 24, 99, 107, 107, 107, 107, 138, 32.2065 + 177, 47, 19, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2066 + 255, 255, 255, 255, 255, 245, 46, 149, 246, 246, 246, 246, 243, 216, 193, 190, 32.2067 + 190, 190, 190, 190, 190, 190, 189, 154, 24, 5, 121, 182, 190, 190, 190, 190, 32.2068 + 190, 190, 190, 155, 107, 107, 107, 107, 76, 75, 107, 141, 190, 190, 190, 190, 32.2069 + 190, 190, 184, 0, 167, 246, 246, 70, 32, 186, 190, 190, 190, 190, 190, 190, 32.2070 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 187, 90, 3, 60, 102, 107, 107, 32.2071 + 107, 107, 107, 107, 186, 182, 11, 59, 241, 255, 255, 255, 255, 255, 255, 255, 32.2072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 188, 246, 246, 246, 246, 32.2073 + 246, 246, 238, 223, 192, 190, 190, 190, 190, 190, 190, 190, 170, 76, 0, 57, 32.2074 + 186, 190, 190, 190, 190, 190, 190, 186, 157, 107, 107, 107, 107, 107, 113, 173, 32.2075 + 190, 190, 190, 190, 190, 190, 184, 0, 173, 201, 181, 13, 94, 190, 190, 190, 32.2076 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 88, 1, 63, 32.2077 + 107, 107, 107, 107, 107, 107, 107, 107, 186, 190, 132, 1, 130, 255, 255, 255, 32.2078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 27, 245, 32.2079 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 229, 212, 197, 190, 190, 190, 190, 32.2080 + 190, 190, 83, 0, 52, 158, 190, 190, 190, 190, 190, 190, 189, 154, 110, 107, 32.2081 + 107, 115, 166, 190, 190, 142, 135, 135, 135, 135, 131, 34, 171, 190, 164, 0, 32.2082 + 159, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2083 + 138, 9, 43, 107, 107, 107, 107, 107, 107, 107, 107, 107, 186, 190, 190, 79, 32.2084 + 24, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2085 + 209, 52, 94, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 240, 32.2086 + 212, 199, 191, 190, 190, 190, 187, 147, 25, 7, 81, 173, 190, 190, 190, 190, 32.2087 + 190, 190, 183, 182, 166, 128, 87, 29, 16, 5, 32, 32, 32, 32, 18, 10, 32.2088 + 16, 65, 122, 169, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2089 + 190, 190, 187, 120, 6, 20, 104, 107, 107, 107, 107, 107, 107, 107, 107, 150, 32.2090 + 189, 190, 190, 173, 10, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2091 + 255, 255, 255, 255, 170, 1, 135, 245, 246, 246, 246, 246, 246, 246, 246, 246, 32.2092 + 246, 246, 246, 246, 246, 246, 236, 228, 211, 192, 190, 190, 181, 116, 2, 19, 32.2093 + 112, 186, 190, 190, 190, 190, 179, 88, 18, 6, 51, 84, 155, 159, 197, 197, 32.2094 + 197, 197, 179, 155, 120, 59, 3, 34, 136, 190, 190, 190, 190, 190, 190, 190, 32.2095 + 190, 190, 190, 190, 189, 175, 87, 4, 39, 103, 107, 107, 107, 107, 107, 107, 32.2096 + 107, 107, 142, 185, 190, 190, 190, 190, 92, 17, 226, 255, 255, 255, 255, 255, 32.2097 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 41, 204, 221, 243, 246, 246, 246, 32.2098 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 228, 219, 32.2099 + 202, 190, 148, 59, 0, 34, 117, 188, 190, 175, 42, 0, 92, 180, 197, 195, 32.2100 + 120, 65, 65, 65, 65, 65, 65, 65, 65, 116, 135, 76, 1, 27, 169, 190, 32.2101 + 190, 190, 190, 190, 190, 190, 169, 144, 131, 69, 1, 41, 107, 107, 107, 107, 32.2102 + 107, 107, 107, 107, 108, 148, 190, 190, 190, 190, 190, 190, 172, 13, 119, 255, 32.2103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 31, 191, 190, 32.2104 + 203, 232, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 32.2105 + 246, 246, 246, 246, 245, 224, 220, 196, 151, 60, 0, 186, 188, 62, 3, 110, 32.2106 + 190, 108, 17, 15, 0, 34, 106, 106, 106, 106, 106, 106, 43, 10, 8, 71, 32.2107 + 108, 19, 9, 82, 180, 190, 190, 181, 175, 137, 108, 107, 64, 2, 47, 105, 32.2108 + 107, 107, 107, 107, 107, 107, 107, 122, 166, 190, 190, 190, 190, 190, 190, 190, 32.2109 + 190, 87, 39, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2110 + 129, 31, 190, 190, 190, 193, 214, 243, 245, 246, 246, 246, 246, 246, 246, 246, 32.2111 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 240, 204, 184, 150, 189, 32.2112 + 152, 0, 92, 197, 74, 3, 80, 142, 156, 191, 197, 197, 197, 197, 197, 197, 32.2113 + 197, 168, 78, 5, 37, 156, 91, 1, 48, 148, 164, 115, 107, 107, 101, 50, 32.2114 + 2, 48, 106, 107, 107, 107, 107, 107, 107, 107, 122, 171, 190, 190, 190, 190, 32.2115 + 190, 190, 190, 190, 190, 124, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 32.2116 + 255, 255, 255, 255, 71, 52, 190, 190, 183, 62, 131, 190, 207, 230, 246, 246, 32.2117 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 32.2118 + 240, 192, 190, 190, 59, 43, 209, 112, 0, 123, 197, 197, 197, 197, 197, 197, 32.2119 + 197, 197, 197, 197, 197, 197, 197, 173, 26, 1, 111, 127, 18, 8, 83, 107, 32.2120 + 107, 107, 29, 0, 53, 107, 107, 107, 107, 107, 107, 107, 107, 148, 184, 190, 32.2121 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 174, 15, 142, 255, 255, 255, 255, 32.2122 + 255, 255, 255, 255, 255, 255, 255, 239, 32, 104, 190, 190, 182, 32, 5, 14, 32.2123 + 81, 142, 185, 216, 238, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 32.2124 + 246, 246, 246, 246, 246, 194, 190, 141, 3, 137, 190, 26, 68, 193, 197, 197, 32.2125 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 173, 76, 0, 53, 32.2126 + 153, 22, 2, 80, 107, 107, 31, 57, 106, 107, 107, 107, 107, 107, 107, 123, 32.2127 + 175, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 64, 51, 32.2128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 163, 190, 190, 32.2129 + 190, 190, 148, 80, 13, 5, 23, 38, 88, 174, 219, 239, 245, 246, 246, 246, 32.2130 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 194, 190, 46, 39, 195, 114, 2, 32.2131 + 166, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2132 + 197, 196, 92, 5, 49, 122, 13, 19, 97, 107, 107, 107, 107, 107, 107, 107, 32.2133 + 107, 111, 151, 188, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2134 + 190, 190, 125, 8, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.2135 + 0, 178, 190, 190, 190, 190, 190, 190, 190, 166, 128, 97, 19, 0, 0, 33, 32.2136 + 75, 163, 172, 172, 179, 246, 246, 246, 246, 246, 246, 246, 240, 192, 142, 1, 32.2137 + 135, 197, 26, 61, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2138 + 197, 197, 197, 197, 197, 197, 197, 132, 18, 23, 72, 1, 57, 107, 107, 107, 32.2139 + 107, 107, 107, 107, 129, 175, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2140 + 190, 190, 190, 190, 190, 190, 169, 6, 169, 255, 255, 255, 255, 255, 255, 255, 32.2141 + 255, 255, 255, 227, 0, 178, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2142 + 180, 175, 152, 104, 50, 33, 33, 24, 1, 18, 18, 18, 18, 18, 18, 212, 32.2143 + 205, 190, 79, 21, 180, 136, 5, 142, 197, 197, 197, 197, 197, 197, 197, 197, 32.2144 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 164, 23, 20, 40, 32.2145 + 4, 100, 107, 107, 108, 132, 158, 183, 187, 190, 190, 190, 190, 190, 190, 190, 32.2146 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 50, 100, 255, 255, 255, 32.2147 + 255, 255, 255, 255, 255, 255, 255, 227, 0, 178, 190, 190, 190, 190, 190, 190, 32.2148 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 180, 152, 152, 163, 173, 32.2149 + 173, 173, 173, 192, 190, 178, 26, 72, 196, 66, 21, 197, 197, 197, 197, 197, 32.2150 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2151 + 197, 128, 2, 8, 0, 32, 113, 142, 160, 190, 190, 190, 190, 190, 190, 190, 32.2152 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 87, 32.2153 + 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 178, 190, 190, 32.2154 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2155 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 161, 0, 139, 190, 0, 94, 197, 32.2156 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2157 + 197, 197, 197, 197, 197, 197, 123, 2, 0, 0, 174, 190, 190, 190, 190, 190, 32.2158 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2159 + 190, 190, 190, 157, 0, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.2160 + 0, 137, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2161 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 161, 0, 193, 32.2162 + 147, 0, 165, 197, 197, 197, 197, 197, 197, 197, 197, 125, 32, 14, 14, 14, 32.2163 + 20, 110, 193, 197, 197, 197, 197, 197, 197, 197, 197, 120, 0, 0, 59, 193, 32.2164 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2165 + 190, 190, 190, 190, 190, 190, 190, 165, 9, 156, 255, 255, 255, 255, 255, 255, 32.2166 + 255, 255, 255, 239, 30, 104, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2167 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2168 + 190, 164, 0, 193, 113, 40, 191, 197, 197, 197, 197, 197, 197, 197, 143, 3, 32.2169 + 82, 165, 205, 181, 64, 4, 83, 194, 197, 197, 197, 197, 197, 197, 197, 189, 32.2170 + 32, 0, 10, 175, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2171 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 201, 55, 114, 255, 255, 32.2172 + 255, 255, 255, 255, 255, 255, 255, 255, 71, 104, 190, 190, 190, 190, 190, 190, 32.2173 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2174 + 190, 190, 190, 190, 190, 164, 0, 193, 113, 50, 197, 197, 197, 197, 197, 197, 32.2175 + 197, 197, 59, 24, 234, 255, 255, 255, 255, 108, 0, 94, 197, 197, 197, 197, 32.2176 + 197, 197, 197, 197, 92, 17, 10, 107, 190, 190, 190, 190, 190, 190, 190, 190, 32.2177 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 201, 32.2178 + 123, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 36, 190, 190, 32.2179 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2180 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 121, 0, 193, 113, 50, 197, 197, 32.2181 + 197, 197, 197, 197, 197, 197, 59, 128, 255, 255, 255, 255, 255, 249, 130, 4, 32.2182 + 148, 197, 197, 197, 197, 197, 197, 197, 130, 0, 42, 45, 188, 200, 200, 200, 32.2183 + 193, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2184 + 190, 190, 190, 190, 127, 25, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2185 + 170, 29, 187, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2186 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 87, 58, 196, 32.2187 + 113, 50, 197, 197, 197, 197, 197, 197, 197, 197, 59, 134, 255, 255, 255, 255, 32.2188 + 255, 255, 235, 33, 49, 194, 197, 197, 197, 197, 197, 197, 193, 0, 105, 0, 32.2189 + 200, 246, 246, 246, 234, 203, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2190 + 190, 190, 190, 190, 190, 190, 190, 190, 194, 0, 213, 255, 255, 255, 255, 255, 32.2191 + 255, 255, 255, 255, 170, 0, 147, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2192 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2193 + 190, 87, 22, 194, 113, 15, 179, 197, 197, 197, 197, 197, 197, 197, 59, 134, 32.2194 + 255, 255, 255, 255, 255, 255, 255, 192, 2, 157, 197, 197, 197, 197, 197, 197, 32.2195 + 194, 22, 82, 24, 40, 77, 77, 114, 169, 196, 222, 191, 190, 190, 190, 190, 32.2196 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 189, 0, 182, 255, 32.2197 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 13, 105, 190, 190, 190, 190, 190, 32.2198 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2199 + 190, 190, 190, 190, 190, 157, 0, 178, 185, 0, 170, 197, 197, 197, 197, 197, 32.2200 + 197, 197, 59, 79, 254, 255, 255, 255, 255, 255, 255, 255, 7, 157, 197, 197, 32.2201 + 197, 197, 197, 197, 197, 72, 94, 77, 71, 138, 85, 46, 35, 7, 15, 57, 32.2202 + 83, 151, 154, 176, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2203 + 189, 18, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 74, 190, 32.2204 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2205 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 174, 20, 82, 190, 0, 137, 197, 32.2206 + 197, 197, 197, 197, 197, 197, 122, 19, 225, 255, 255, 255, 255, 255, 255, 249, 32.2207 + 7, 157, 197, 197, 197, 197, 197, 197, 197, 72, 94, 77, 127, 246, 246, 246, 32.2208 + 235, 199, 173, 107, 40, 15, 9, 22, 95, 154, 179, 190, 190, 190, 190, 190, 32.2209 + 190, 190, 190, 190, 190, 87, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2210 + 255, 114, 30, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2211 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 99, 12, 32.2212 + 169, 48, 94, 197, 197, 197, 197, 197, 197, 197, 178, 11, 92, 252, 255, 255, 32.2213 + 255, 255, 255, 132, 0, 157, 197, 197, 197, 197, 197, 197, 194, 22, 94, 77, 32.2214 + 127, 246, 246, 246, 246, 246, 246, 246, 246, 246, 215, 112, 42, 0, 7, 59, 32.2215 + 71, 130, 130, 180, 190, 190, 190, 190, 190, 73, 114, 255, 255, 255, 255, 255, 32.2216 + 255, 255, 255, 255, 255, 207, 0, 194, 190, 190, 190, 190, 190, 190, 190, 190, 32.2217 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2218 + 190, 190, 190, 3, 145, 84, 18, 185, 197, 197, 197, 197, 197, 197, 197, 102, 32.2219 + 0, 88, 225, 254, 255, 255, 160, 28, 78, 194, 197, 197, 197, 197, 197, 197, 32.2220 + 193, 0, 163, 63, 7, 14, 67, 180, 246, 246, 246, 246, 246, 246, 246, 246, 32.2221 + 239, 231, 148, 123, 50, 46, 0, 20, 190, 190, 190, 190, 190, 73, 57, 255, 32.2222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 0, 207, 190, 190, 190, 190, 32.2223 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2224 + 190, 190, 190, 190, 190, 190, 190, 8, 78, 149, 1, 104, 197, 197, 197, 197, 32.2225 + 197, 197, 197, 191, 105, 12, 18, 46, 46, 46, 5, 39, 179, 197, 197, 197, 32.2226 + 197, 197, 197, 197, 193, 0, 167, 62, 101, 131, 52, 0, 67, 143, 234, 246, 32.2227 + 246, 246, 246, 246, 246, 246, 246, 246, 246, 245, 200, 193, 208, 193, 191, 190, 32.2228 + 190, 133, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 18, 132, 32.2229 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2230 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 102, 4, 174, 50, 18, 32.2231 + 161, 197, 197, 197, 197, 197, 197, 197, 197, 185, 136, 136, 136, 136, 144, 197, 32.2232 + 197, 197, 197, 197, 197, 197, 197, 197, 140, 0, 163, 42, 98, 210, 217, 169, 32.2233 + 78, 11, 22, 122, 225, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 32.2234 + 246, 246, 233, 213, 190, 147, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2235 + 255, 255, 57, 92, 196, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2236 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 175, 32.2237 + 20, 45, 173, 11, 55, 187, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2238 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 116, 44, 180, 0, 32.2239 + 112, 190, 194, 222, 246, 227, 113, 23, 10, 118, 217, 246, 246, 246, 246, 246, 32.2240 + 246, 246, 246, 246, 246, 246, 246, 245, 226, 147, 14, 255, 255, 255, 255, 255, 32.2241 + 255, 255, 255, 255, 255, 255, 138, 9, 165, 190, 190, 190, 190, 190, 190, 190, 32.2242 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2243 + 190, 190, 190, 190, 102, 0, 136, 126, 1, 80, 191, 197, 197, 197, 197, 197, 32.2244 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 194, 32.2245 + 50, 47, 118, 3, 173, 190, 190, 190, 200, 227, 243, 223, 102, 14, 17, 44, 32.2246 + 128, 233, 246, 246, 246, 246, 246, 246, 246, 246, 246, 246, 245, 164, 13, 248, 32.2247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 0, 133, 190, 190, 190, 32.2248 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2249 + 190, 190, 190, 190, 190, 190, 190, 190, 188, 47, 69, 197, 93, 0, 62, 197, 32.2250 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2251 + 197, 197, 197, 135, 0, 99, 78, 56, 190, 190, 190, 190, 190, 190, 194, 220, 32.2252 + 246, 232, 170, 79, 12, 21, 121, 224, 246, 246, 246, 246, 246, 246, 246, 246, 32.2253 + 246, 168, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 32.2254 + 41, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2255 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 191, 217, 222, 222, 133, 7, 147, 32.2256 + 195, 103, 2, 101, 183, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 32.2257 + 197, 197, 197, 197, 197, 197, 167, 9, 47, 180, 22, 98, 190, 190, 190, 190, 32.2258 + 190, 190, 190, 190, 192, 204, 222, 241, 193, 78, 23, 9, 116, 216, 246, 246, 32.2259 + 246, 246, 246, 246, 246, 209, 29, 170, 255, 255, 255, 255, 255, 255, 255, 255, 32.2260 + 255, 255, 255, 144, 5, 161, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2261 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 194, 234, 246, 209, 32.2262 + 132, 32, 7, 33, 184, 197, 105, 2, 40, 179, 197, 197, 197, 197, 197, 197, 32.2263 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 135, 8, 22, 161, 113, 6, 176, 32.2264 + 203, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 201, 220, 235, 219, 131, 32.2265 + 12, 17, 100, 177, 239, 246, 246, 246, 244, 201, 31, 170, 255, 255, 255, 255, 32.2266 + 255, 255, 255, 255, 255, 255, 255, 238, 30, 101, 190, 190, 190, 190, 190, 190, 32.2267 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 194, 219, 32.2268 + 246, 234, 95, 1, 2, 103, 185, 0, 42, 181, 197, 116, 0, 34, 177, 197, 32.2269 + 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 130, 5, 47, 175, 32.2270 + 200, 0, 0, 77, 236, 215, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2271 + 190, 190, 190, 190, 164, 112, 47, 0, 49, 156, 224, 242, 212, 190, 31, 170, 32.2272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 41, 185, 190, 32.2273 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2274 + 190, 200, 236, 241, 167, 17, 18, 104, 181, 190, 23, 11, 2, 34, 178, 196, 32.2275 + 168, 30, 6, 87, 157, 195, 197, 197, 197, 197, 197, 197, 197, 197, 171, 88, 32.2276 + 2, 30, 175, 208, 25, 53, 95, 0, 70, 232, 209, 190, 190, 190, 190, 190, 32.2277 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 187, 116, 38, 18, 8, 51, 32.2278 + 136, 134, 4, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2279 + 187, 0, 100, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2280 + 190, 190, 190, 190, 219, 232, 110, 38, 6, 32, 197, 246, 187, 15, 17, 171, 32.2281 + 111, 3, 63, 173, 197, 180, 111, 19, 0, 33, 93, 154, 181, 192, 197, 197, 32.2282 + 188, 120, 12, 19, 111, 180, 187, 75, 1, 189, 242, 113, 1, 63, 188, 219, 32.2283 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2284 + 190, 173, 133, 46, 3, 12, 13, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.2285 + 255, 255, 255, 255, 251, 60, 13, 172, 190, 190, 190, 190, 190, 190, 190, 190, 32.2286 + 190, 190, 190, 190, 190, 190, 192, 216, 146, 41, 0, 79, 196, 246, 246, 179, 32.2287 + 13, 76, 208, 221, 190, 121, 1, 26, 173, 197, 197, 188, 138, 66, 37, 0, 32.2288 + 0, 40, 58, 58, 24, 0, 59, 188, 197, 183, 54, 0, 0, 123, 246, 246, 32.2289 + 168, 21, 13, 178, 204, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2290 + 190, 190, 190, 190, 190, 190, 190, 190, 146, 75, 0, 170, 255, 255, 255, 255, 32.2291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 17, 80, 187, 190, 190, 190, 32.2292 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 200, 173, 32, 10, 90, 202, 244, 32.2293 + 246, 246, 173, 6, 47, 242, 232, 190, 190, 190, 125, 7, 24, 121, 197, 197, 32.2294 + 197, 197, 193, 188, 124, 114, 114, 114, 114, 144, 193, 197, 183, 48, 0, 114, 32.2295 + 103, 2, 155, 246, 246, 205, 44, 5, 118, 199, 190, 190, 190, 190, 190, 190, 32.2296 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 104, 12, 241, 32.2297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 0, 32.2298 + 110, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 175, 55, 5, 54, 32.2299 + 175, 246, 246, 246, 246, 164, 10, 74, 220, 227, 194, 190, 190, 190, 190, 161, 32.2300 + 37, 2, 55, 112, 150, 155, 156, 194, 197, 197, 197, 197, 197, 197, 186, 140, 32.2301 + 22, 17, 112, 202, 226, 49, 26, 202, 246, 246, 238, 93, 0, 78, 201, 190, 32.2302 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2303 + 190, 73, 75, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2304 + 255, 255, 247, 51, 8, 159, 190, 190, 190, 190, 190, 190, 190, 190, 198, 136, 32.2305 + 28, 0, 136, 246, 246, 246, 246, 246, 159, 5, 96, 236, 205, 190, 190, 190, 32.2306 + 190, 190, 190, 190, 175, 100, 33, 0, 11, 31, 31, 48, 120, 131, 131, 131, 32.2307 + 117, 57, 21, 0, 43, 157, 190, 190, 219, 206, 12, 48, 238, 246, 246, 244, 32.2308 + 116, 12, 71, 201, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2309 + 190, 190, 190, 190, 189, 48, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2310 + 255, 255, 255, 255, 255, 255, 255, 216, 9, 75, 190, 190, 190, 190, 190, 190, 32.2311 + 190, 163, 109, 3, 54, 208, 245, 246, 246, 246, 232, 69, 2, 109, 224, 192, 32.2312 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 164, 35, 8, 62, 62, 62, 36, 32.2313 + 23, 39, 39, 39, 39, 69, 111, 144, 187, 190, 190, 190, 190, 210, 186, 16, 32.2314 + 68, 232, 246, 246, 246, 188, 16, 64, 181, 190, 190, 190, 190, 190, 190, 190, 32.2315 + 190, 190, 190, 190, 190, 190, 190, 190, 189, 0, 172, 255, 255, 255, 255, 255, 32.2316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 11, 182, 190, 32.2317 + 190, 190, 190, 163, 47, 4, 25, 137, 240, 246, 246, 246, 246, 225, 62, 10, 32.2318 + 106, 196, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 146, 17, 49, 32.2319 + 107, 107, 107, 107, 113, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2320 + 190, 190, 217, 189, 18, 62, 233, 246, 246, 246, 191, 19, 14, 168, 191, 190, 32.2321 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 127, 0, 213, 255, 32.2322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2323 + 228, 19, 61, 190, 190, 190, 121, 3, 31, 188, 246, 246, 246, 246, 246, 246, 32.2324 + 177, 12, 21, 186, 201, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2325 + 190, 127, 0, 86, 107, 107, 107, 107, 113, 190, 190, 190, 190, 190, 190, 190, 32.2326 + 190, 190, 190, 190, 190, 190, 190, 212, 197, 21, 57, 228, 246, 246, 246, 198, 32.2327 + 21, 12, 148, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2328 + 90, 40, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2329 + 255, 255, 255, 255, 255, 116, 16, 170, 190, 191, 58, 42, 218, 246, 246, 246, 32.2330 + 246, 246, 246, 171, 5, 26, 198, 193, 190, 190, 190, 190, 190, 190, 190, 190, 32.2331 + 190, 190, 190, 190, 190, 59, 19, 103, 107, 107, 107, 107, 113, 190, 190, 190, 32.2332 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 207, 174, 2, 46, 32.2333 + 226, 246, 246, 246, 207, 47, 2, 68, 183, 190, 190, 190, 190, 190, 190, 190, 32.2334 + 190, 190, 190, 183, 32, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 10, 88, 190, 213, 217, 227, 32.2336 + 246, 246, 246, 246, 246, 246, 161, 9, 31, 191, 196, 190, 190, 190, 190, 190, 32.2337 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 25, 52, 107, 107, 107, 107, 107, 32.2338 + 116, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2339 + 191, 213, 136, 4, 68, 242, 246, 246, 246, 238, 96, 0, 62, 186, 190, 190, 32.2340 + 190, 190, 190, 190, 190, 190, 190, 157, 0, 165, 255, 255, 255, 255, 255, 255, 32.2341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 2, 32.2342 + 143, 217, 246, 246, 246, 246, 246, 246, 246, 157, 4, 24, 181, 190, 190, 190, 32.2343 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 155, 7, 74, 107, 32.2344 + 107, 107, 107, 107, 146, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2345 + 190, 190, 190, 190, 190, 190, 206, 151, 0, 107, 246, 246, 246, 246, 245, 99, 32.2346 + 0, 63, 158, 190, 190, 190, 190, 190, 190, 190, 190, 104, 0, 255, 255, 255, 32.2347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2348 + 255, 255, 232, 47, 42, 212, 246, 246, 246, 246, 246, 246, 145, 2, 33, 169, 32.2349 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2350 + 141, 8, 105, 107, 107, 107, 107, 107, 146, 190, 190, 190, 190, 190, 190, 190, 32.2351 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 200, 153, 8, 97, 240, 32.2352 + 246, 246, 246, 244, 189, 17, 3, 82, 188, 190, 190, 190, 190, 190, 176, 10, 32.2353 + 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2354 + 255, 255, 255, 255, 255, 255, 255, 190, 0, 114, 244, 246, 246, 246, 245, 138, 32.2355 + 6, 68, 171, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2356 + 190, 190, 190, 190, 135, 9, 107, 107, 107, 107, 107, 107, 146, 190, 190, 190, 32.2357 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2358 + 205, 161, 7, 93, 239, 246, 246, 246, 246, 219, 113, 6, 56, 190, 190, 190, 32.2359 + 190, 190, 91, 4, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 96, 15, 204, 244, 32.2361 + 246, 246, 133, 0, 97, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2362 + 190, 190, 190, 190, 190, 190, 190, 190, 68, 9, 107, 107, 107, 107, 107, 107, 32.2363 + 146, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2364 + 190, 190, 190, 190, 190, 200, 147, 0, 82, 242, 246, 246, 246, 246, 246, 163, 32.2365 + 110, 206, 190, 190, 190, 174, 14, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.2366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2367 + 227, 18, 27, 179, 212, 169, 1, 65, 189, 190, 190, 190, 190, 190, 190, 190, 32.2368 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 68, 49, 107, 107, 32.2369 + 107, 107, 107, 107, 146, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2370 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 201, 95, 0, 75, 234, 246, 32.2371 + 246, 246, 246, 246, 246, 236, 194, 190, 190, 123, 0, 201, 255, 255, 255, 255, 32.2372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2373 + 255, 255, 255, 255, 255, 164, 7, 65, 185, 168, 92, 179, 190, 190, 190, 190, 32.2374 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2375 + 68, 50, 107, 107, 107, 107, 107, 107, 146, 190, 190, 190, 190, 190, 190, 190, 32.2376 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 192, 32.2377 + 157, 14, 67, 227, 246, 246, 246, 246, 246, 246, 211, 190, 190, 59, 73, 253, 32.2378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 5, 67, 189, 190, 190, 32.2380 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2381 + 190, 190, 190, 185, 18, 50, 107, 107, 107, 107, 107, 107, 146, 190, 190, 190, 32.2382 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2383 + 190, 190, 190, 190, 190, 173, 18, 15, 151, 246, 246, 246, 246, 246, 211, 190, 32.2384 + 150, 5, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 32.2386 + 0, 126, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2387 + 190, 190, 190, 190, 190, 190, 190, 184, 0, 75, 107, 107, 107, 107, 107, 107, 32.2388 + 177, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2389 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 165, 42, 0, 168, 246, 246, 32.2390 + 246, 246, 211, 187, 50, 17, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2392 + 255, 255, 255, 249, 97, 5, 118, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2393 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 184, 0, 92, 107, 107, 32.2394 + 107, 107, 107, 124, 188, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2395 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 209, 32.2396 + 209, 234, 246, 246, 246, 235, 193, 80, 0, 161, 255, 255, 255, 255, 255, 255, 32.2397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2398 + 255, 255, 255, 255, 255, 255, 255, 255, 228, 37, 2, 116, 190, 190, 190, 190, 32.2399 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 184, 32.2400 + 0, 92, 107, 107, 107, 107, 107, 139, 190, 190, 190, 190, 190, 190, 190, 190, 32.2401 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2402 + 190, 190, 190, 193, 216, 246, 246, 246, 231, 199, 132, 8, 87, 247, 255, 255, 32.2403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 50, 1, 32.2405 + 105, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2406 + 190, 190, 190, 164, 0, 92, 107, 107, 107, 107, 107, 159, 190, 190, 190, 190, 32.2407 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2408 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 191, 191, 191, 190, 127, 1, 98, 32.2409 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2411 + 255, 255, 234, 52, 2, 100, 188, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2412 + 190, 190, 190, 190, 190, 190, 190, 151, 0, 92, 107, 107, 107, 107, 107, 159, 32.2413 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2414 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2415 + 186, 36, 97, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2417 + 255, 255, 255, 255, 255, 255, 255, 236, 130, 0, 58, 173, 190, 190, 190, 190, 32.2418 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 151, 0, 92, 107, 107, 32.2419 + 107, 107, 108, 181, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2420 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2421 + 190, 190, 190, 190, 102, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 152, 27, 29, 32.2424 + 153, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 151, 32.2425 + 0, 92, 107, 107, 107, 107, 109, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2426 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2427 + 190, 190, 190, 190, 190, 190, 197, 155, 6, 122, 255, 255, 255, 255, 255, 255, 32.2428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2430 + 255, 255, 183, 40, 5, 115, 182, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2431 + 190, 190, 190, 155, 0, 92, 107, 107, 107, 107, 107, 164, 190, 190, 190, 190, 32.2432 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2433 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 184, 157, 9, 32, 226, 255, 255, 32.2434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2436 + 255, 255, 255, 255, 255, 255, 255, 229, 74, 0, 51, 154, 190, 190, 190, 190, 32.2437 + 190, 190, 190, 190, 190, 190, 190, 184, 0, 92, 107, 107, 107, 107, 107, 159, 32.2438 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2439 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 158, 58, 0, 99, 32.2440 + 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 132, 21, 8, 32.2443 + 133, 186, 190, 190, 190, 190, 190, 190, 190, 190, 190, 138, 0, 92, 107, 107, 32.2444 + 107, 107, 107, 159, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2445 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 162, 32.2446 + 12, 0, 114, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2449 + 255, 255, 207, 78, 8, 34, 97, 171, 190, 190, 190, 190, 190, 190, 190, 110, 32.2450 + 13, 99, 107, 107, 107, 107, 111, 174, 190, 190, 190, 190, 190, 190, 190, 190, 32.2451 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2452 + 190, 190, 180, 47, 1, 120, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2455 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 86, 0, 10, 79, 165, 190, 190, 32.2456 + 190, 190, 190, 139, 86, 122, 107, 107, 107, 112, 159, 190, 190, 190, 190, 190, 32.2457 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2458 + 190, 190, 190, 190, 190, 190, 59, 21, 140, 255, 255, 255, 255, 255, 255, 255, 32.2459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 216, 100, 32.2462 + 11, 19, 107, 176, 190, 190, 190, 190, 190, 186, 157, 157, 157, 176, 190, 190, 32.2463 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2464 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 65, 1, 143, 255, 255, 255, 255, 32.2465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2468 + 255, 255, 255, 255, 223, 63, 3, 17, 101, 176, 190, 190, 190, 190, 190, 190, 32.2469 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2470 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 169, 44, 6, 143, 255, 32.2471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 64, 0, 17, 90, 149, 32.2475 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2476 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 191, 129, 23, 32.2477 + 0, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.2481 + 202, 122, 25, 0, 19, 78, 143, 186, 190, 190, 190, 190, 190, 190, 190, 190, 32.2482 + 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 171, 32.2483 + 136, 39, 0, 67, 227, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2487 + 255, 255, 255, 255, 255, 255, 235, 181, 101, 27, 0, 32, 96, 137, 167, 167, 32.2488 + 169, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 32.2489 + 160, 96, 27, 14, 19, 74, 191, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.2490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 190, 102, 32.2494 + 60, 0, 0, 0, 3, 48, 85, 119, 187, 190, 190, 190, 190, 190, 190, 190, 32.2495 + 190, 190, 157, 98, 4, 0, 90, 170, 230, 255, 255, 255, 255, 255, 255, 255, 32.2496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2500 + 255, 255, 255, 255, 254, 254, 254, 230, 158, 92, 54, 0, 0, 0, 0, 0, 32.2501 + 49, 71, 71, 71, 42, 0, 0, 43, 75, 191, 254, 255, 255, 255, 255, 255, 32.2502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 222, 32.2507 + 222, 212, 198, 164, 127, 127, 127, 127, 127, 187, 222, 244, 255, 255, 255, 255, 32.2508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2518 + 255, 245, 191, 191, 187, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 32.2519 + 147, 174, 222, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.2524 + 246, 245, 222, 139, 59, 26, 8, 23, 23, 48, 106, 93, 93, 93, 93, 93, 32.2525 + 93, 93, 93, 56, 23, 5, 22, 25, 64, 119, 177, 222, 253, 255, 255, 255, 32.2526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2530 + 255, 255, 240, 176, 101, 44, 0, 0, 49, 107, 157, 186, 186, 186, 186, 186, 32.2531 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 141, 140, 122, 70, 49, 0, 0, 32.2532 + 61, 102, 181, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2536 + 255, 255, 255, 255, 255, 249, 144, 16, 9, 77, 117, 177, 186, 186, 186, 186, 32.2537 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2538 + 186, 186, 186, 134, 103, 46, 0, 7, 123, 249, 255, 255, 255, 255, 255, 255, 32.2539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2542 + 255, 255, 255, 255, 255, 255, 255, 246, 153, 55, 3, 39, 167, 186, 186, 186, 32.2543 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2544 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 185, 146, 61, 7, 40, 159, 240, 32.2545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 45, 0, 28, 79, 104, 32.2549 + 136, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2550 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 185, 192, 205, 206, 32.2551 + 175, 42, 0, 53, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 153, 37, 1, 37, 32.2555 + 84, 104, 104, 79, 46, 125, 178, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2556 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2557 + 163, 0, 152, 240, 240, 229, 119, 20, 1, 116, 245, 255, 255, 255, 255, 255, 32.2558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 74, 32.2561 + 0, 66, 92, 104, 104, 104, 104, 70, 0, 58, 138, 180, 186, 186, 186, 186, 32.2562 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2563 + 186, 186, 186, 195, 108, 4, 229, 240, 240, 240, 228, 161, 66, 9, 32, 153, 32.2564 + 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2567 + 255, 243, 68, 0, 81, 185, 118, 104, 104, 104, 104, 104, 32, 0, 60, 131, 32.2568 + 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2569 + 186, 186, 186, 186, 186, 186, 188, 226, 29, 76, 240, 240, 240, 240, 239, 186, 32.2570 + 186, 157, 49, 0, 43, 190, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2573 + 255, 255, 255, 255, 237, 58, 15, 124, 186, 186, 127, 104, 104, 104, 104, 104, 32.2574 + 96, 22, 9, 84, 153, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2575 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 212, 217, 5, 158, 240, 240, 32.2576 + 240, 231, 79, 34, 186, 186, 186, 139, 49, 0, 96, 234, 255, 255, 255, 255, 32.2577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2579 + 255, 255, 255, 255, 255, 255, 255, 235, 53, 9, 151, 186, 186, 186, 179, 112, 32.2580 + 104, 104, 104, 104, 104, 97, 18, 12, 102, 176, 186, 186, 186, 186, 186, 186, 32.2581 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 235, 154, 32.2582 + 6, 198, 240, 240, 240, 147, 0, 136, 186, 186, 186, 186, 183, 89, 11, 21, 32.2583 + 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 50, 19, 138, 186, 186, 32.2586 + 186, 186, 186, 172, 120, 104, 104, 104, 104, 104, 77, 5, 29, 120, 185, 186, 32.2587 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2588 + 186, 198, 238, 82, 47, 240, 240, 240, 211, 13, 51, 184, 186, 186, 186, 186, 32.2589 + 186, 186, 148, 17, 14, 185, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 5, 32.2592 + 137, 186, 186, 186, 186, 186, 186, 186, 171, 127, 104, 104, 104, 104, 104, 64, 32.2593 + 0, 59, 145, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2594 + 186, 186, 186, 186, 186, 202, 240, 60, 139, 240, 240, 240, 143, 6, 150, 186, 32.2595 + 186, 186, 186, 186, 186, 186, 186, 184, 63, 0, 90, 248, 255, 255, 255, 255, 32.2596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2598 + 255, 154, 0, 110, 186, 186, 186, 186, 186, 186, 186, 186, 186, 173, 111, 104, 32.2599 + 104, 104, 104, 102, 33, 7, 94, 168, 186, 186, 186, 186, 186, 186, 186, 186, 32.2600 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 215, 210, 6, 152, 240, 240, 240, 32.2601 + 74, 62, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 181, 72, 0, 85, 32.2602 + 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2604 + 255, 255, 255, 255, 221, 13, 60, 178, 186, 186, 186, 186, 186, 186, 186, 186, 32.2605 + 186, 186, 154, 104, 104, 104, 104, 104, 84, 3, 47, 121, 179, 186, 186, 186, 32.2606 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 190, 240, 205, 0, 32.2607 + 232, 240, 240, 225, 17, 96, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2608 + 186, 182, 75, 0, 76, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2610 + 255, 255, 255, 255, 255, 255, 255, 216, 45, 19, 184, 186, 186, 186, 186, 186, 32.2611 + 186, 186, 186, 186, 186, 186, 186, 132, 104, 104, 104, 104, 104, 33, 13, 102, 32.2612 + 170, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2613 + 211, 240, 113, 0, 232, 240, 240, 196, 0, 143, 186, 186, 186, 186, 186, 186, 32.2614 + 186, 186, 186, 186, 186, 186, 186, 111, 0, 80, 255, 255, 255, 255, 255, 255, 32.2615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 34, 4, 114, 186, 186, 32.2617 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 182, 109, 104, 104, 104, 32.2618 + 104, 86, 3, 44, 137, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2619 + 186, 186, 186, 186, 211, 240, 65, 76, 239, 240, 240, 114, 29, 178, 186, 186, 32.2620 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 183, 91, 5, 140, 255, 32.2621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 234, 39, 1, 32.2623 + 114, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2624 + 162, 104, 104, 104, 104, 104, 56, 4, 88, 162, 186, 186, 186, 186, 186, 186, 32.2625 + 186, 186, 186, 186, 186, 186, 186, 186, 219, 238, 20, 122, 240, 240, 238, 33, 32.2626 + 57, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2627 + 186, 38, 0, 140, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2629 + 254, 115, 5, 122, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2630 + 186, 186, 186, 186, 186, 118, 104, 104, 104, 104, 90, 12, 17, 111, 178, 186, 32.2631 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 232, 167, 0, 179, 32.2632 + 240, 240, 181, 0, 128, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2633 + 186, 186, 186, 186, 186, 174, 92, 0, 123, 255, 255, 255, 255, 255, 255, 255, 32.2634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2635 + 255, 255, 255, 255, 228, 8, 68, 186, 186, 186, 89, 158, 186, 186, 186, 186, 32.2636 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 140, 104, 104, 104, 104, 104, 78, 32.2637 + 0, 64, 129, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 198, 32.2638 + 239, 83, 29, 233, 240, 240, 97, 13, 180, 186, 186, 186, 186, 186, 186, 186, 32.2639 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 185, 101, 1, 166, 255, 255, 32.2640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2641 + 255, 255, 255, 255, 255, 255, 255, 253, 101, 20, 172, 186, 186, 186, 5, 18, 32.2642 + 106, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 184, 116, 104, 32.2643 + 104, 104, 104, 99, 31, 16, 100, 154, 186, 186, 186, 186, 186, 186, 186, 186, 32.2644 + 186, 186, 186, 215, 232, 44, 105, 240, 240, 233, 19, 70, 186, 186, 186, 186, 32.2645 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 176, 32.2646 + 51, 16, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 0, 97, 186, 186, 32.2648 + 186, 186, 172, 41, 0, 91, 171, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2649 + 186, 186, 170, 106, 104, 104, 104, 104, 71, 0, 63, 112, 181, 186, 186, 186, 32.2650 + 186, 186, 186, 186, 186, 186, 186, 233, 220, 0, 186, 240, 240, 141, 0, 134, 32.2651 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2652 + 186, 186, 186, 186, 151, 16, 22, 236, 255, 255, 255, 255, 255, 255, 255, 255, 32.2653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 32.2654 + 8, 179, 186, 186, 186, 186, 186, 174, 79, 3, 62, 168, 186, 186, 186, 186, 32.2655 + 186, 186, 186, 186, 186, 186, 186, 148, 104, 104, 104, 104, 103, 39, 11, 99, 32.2656 + 156, 182, 186, 186, 186, 186, 186, 186, 186, 186, 190, 240, 136, 11, 222, 240, 32.2657 + 240, 91, 46, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2658 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 153, 9, 50, 248, 255, 255, 255, 32.2659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2660 + 255, 255, 255, 44, 65, 186, 186, 186, 186, 186, 186, 186, 186, 108, 1, 33, 32.2661 + 166, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 184, 123, 104, 104, 104, 32.2662 + 104, 88, 5, 40, 103, 152, 185, 186, 186, 186, 186, 186, 186, 186, 209, 240, 32.2663 + 89, 72, 240, 240, 238, 46, 109, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2664 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 104, 0, 32.2665 + 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2666 + 255, 255, 255, 255, 255, 255, 255, 0, 129, 186, 186, 186, 186, 186, 186, 186, 32.2667 + 186, 186, 140, 28, 24, 116, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2668 + 167, 105, 104, 104, 104, 104, 40, 0, 84, 104, 166, 186, 186, 186, 186, 186, 32.2669 + 186, 186, 229, 200, 11, 134, 240, 240, 168, 0, 117, 186, 186, 186, 186, 186, 32.2670 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2671 + 186, 186, 178, 32, 32, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 8, 191, 186, 186, 186, 32.2673 + 186, 186, 186, 186, 186, 186, 186, 165, 45, 4, 77, 175, 186, 186, 186, 186, 32.2674 + 186, 186, 186, 186, 186, 138, 104, 104, 104, 104, 95, 16, 33, 104, 111, 172, 32.2675 + 186, 186, 186, 186, 186, 186, 229, 165, 10, 205, 240, 240, 86, 18, 179, 186, 32.2676 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2677 + 186, 186, 180, 173, 173, 173, 184, 149, 4, 94, 255, 255, 255, 255, 255, 255, 32.2678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 153, 48, 32.2679 + 210, 208, 205, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 89, 1, 44, 32.2680 + 171, 186, 186, 186, 186, 186, 186, 186, 186, 171, 112, 104, 104, 104, 104, 62, 32.2681 + 3, 82, 104, 138, 186, 186, 186, 186, 186, 186, 229, 86, 22, 240, 240, 240, 32.2682 + 7, 84, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2683 + 186, 186, 186, 185, 128, 43, 97, 104, 104, 104, 135, 177, 94, 0, 138, 255, 32.2684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2685 + 255, 255, 57, 78, 240, 240, 240, 226, 194, 186, 186, 186, 186, 186, 186, 186, 32.2686 + 186, 186, 101, 0, 6, 129, 186, 186, 186, 186, 186, 186, 186, 186, 164, 105, 32.2687 + 104, 104, 104, 92, 5, 38, 104, 138, 186, 186, 186, 186, 186, 186, 207, 62, 32.2688 + 112, 240, 240, 183, 2, 156, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2689 + 186, 186, 186, 186, 186, 186, 186, 94, 0, 23, 96, 104, 104, 104, 104, 134, 32.2690 + 173, 46, 19, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2691 + 255, 255, 255, 255, 255, 243, 45, 145, 240, 240, 240, 240, 237, 211, 189, 186, 32.2692 + 186, 186, 186, 186, 186, 186, 185, 150, 24, 5, 119, 178, 186, 186, 186, 186, 32.2693 + 186, 186, 186, 151, 104, 104, 104, 104, 74, 73, 104, 138, 186, 186, 186, 186, 32.2694 + 186, 186, 180, 0, 163, 240, 240, 69, 32, 182, 186, 186, 186, 186, 186, 186, 32.2695 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 183, 88, 3, 58, 99, 104, 104, 32.2696 + 104, 104, 104, 104, 182, 178, 11, 59, 241, 255, 255, 255, 255, 255, 255, 255, 32.2697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 0, 184, 240, 240, 240, 240, 32.2698 + 240, 240, 233, 218, 188, 186, 186, 186, 186, 186, 186, 186, 166, 74, 0, 56, 32.2699 + 182, 186, 186, 186, 186, 186, 186, 182, 154, 104, 104, 104, 104, 104, 110, 169, 32.2700 + 186, 186, 186, 186, 186, 186, 180, 0, 169, 197, 177, 12, 92, 186, 186, 186, 32.2701 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 86, 1, 61, 32.2702 + 104, 104, 104, 104, 104, 104, 104, 104, 182, 186, 129, 1, 130, 255, 255, 255, 32.2703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 26, 239, 32.2704 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 223, 207, 193, 186, 186, 186, 186, 32.2705 + 186, 186, 81, 0, 51, 155, 186, 186, 186, 186, 186, 186, 185, 150, 107, 104, 32.2706 + 104, 112, 163, 186, 186, 139, 132, 132, 132, 132, 128, 34, 167, 186, 160, 0, 32.2707 + 155, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2708 + 135, 9, 42, 104, 104, 104, 104, 104, 104, 104, 104, 104, 182, 186, 186, 77, 32.2709 + 24, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2710 + 209, 52, 92, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 234, 32.2711 + 207, 194, 187, 186, 186, 186, 183, 143, 25, 6, 79, 170, 186, 186, 186, 186, 32.2712 + 186, 186, 179, 178, 162, 125, 85, 29, 16, 4, 31, 31, 31, 31, 18, 10, 32.2713 + 16, 64, 120, 166, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2714 + 186, 186, 183, 117, 5, 19, 101, 104, 104, 104, 104, 104, 104, 104, 104, 146, 32.2715 + 185, 186, 186, 170, 10, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2716 + 255, 255, 255, 255, 170, 1, 131, 239, 240, 240, 240, 240, 240, 240, 240, 240, 32.2717 + 240, 240, 240, 240, 240, 240, 230, 223, 206, 188, 186, 186, 177, 114, 2, 18, 32.2718 + 110, 182, 186, 186, 186, 186, 176, 86, 18, 5, 49, 81, 150, 154, 191, 191, 32.2719 + 191, 191, 174, 150, 117, 57, 3, 34, 135, 186, 186, 186, 186, 186, 186, 186, 32.2720 + 186, 186, 186, 186, 185, 171, 85, 4, 37, 100, 104, 104, 104, 104, 104, 104, 32.2721 + 104, 104, 138, 181, 186, 186, 186, 186, 90, 17, 226, 255, 255, 255, 255, 255, 32.2722 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 41, 201, 216, 237, 240, 240, 240, 32.2723 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 223, 214, 32.2724 + 198, 186, 145, 58, 0, 33, 114, 184, 186, 172, 41, 0, 89, 175, 191, 189, 32.2725 + 117, 63, 63, 63, 63, 63, 63, 63, 63, 113, 131, 73, 1, 27, 166, 186, 32.2726 + 186, 186, 186, 186, 186, 186, 165, 141, 127, 67, 1, 40, 104, 104, 104, 104, 32.2727 + 104, 104, 104, 104, 105, 144, 186, 186, 186, 186, 186, 186, 168, 13, 119, 255, 32.2728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 31, 187, 186, 32.2729 + 198, 226, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.2730 + 240, 240, 240, 240, 239, 219, 215, 191, 148, 58, 0, 182, 184, 60, 3, 107, 32.2731 + 185, 104, 17, 15, 0, 33, 103, 103, 103, 103, 103, 103, 42, 9, 8, 69, 32.2732 + 104, 18, 9, 80, 176, 186, 186, 178, 171, 134, 104, 104, 62, 2, 46, 102, 32.2733 + 104, 104, 104, 104, 104, 104, 104, 119, 162, 186, 186, 186, 186, 186, 186, 186, 32.2734 + 186, 85, 39, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2735 + 129, 30, 186, 186, 186, 189, 209, 237, 239, 240, 240, 240, 240, 240, 240, 240, 32.2736 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 234, 199, 180, 147, 185, 32.2737 + 149, 0, 91, 192, 72, 3, 78, 138, 151, 185, 191, 191, 191, 191, 191, 191, 32.2738 + 191, 163, 76, 5, 36, 152, 88, 1, 47, 145, 160, 112, 104, 104, 98, 48, 32.2739 + 2, 47, 103, 104, 104, 104, 104, 104, 104, 104, 119, 168, 186, 186, 186, 186, 32.2740 + 186, 186, 186, 186, 186, 122, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 32.2741 + 255, 255, 255, 255, 71, 51, 186, 186, 179, 61, 128, 186, 202, 225, 240, 240, 32.2742 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.2743 + 234, 188, 186, 186, 58, 43, 205, 109, 0, 119, 191, 191, 191, 191, 191, 191, 32.2744 + 191, 191, 191, 191, 191, 191, 191, 168, 25, 1, 108, 123, 17, 8, 81, 104, 32.2745 + 104, 104, 28, 0, 52, 104, 104, 104, 104, 104, 104, 104, 104, 144, 180, 186, 32.2746 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 170, 14, 142, 255, 255, 255, 255, 32.2747 + 255, 255, 255, 255, 255, 255, 255, 239, 32, 102, 186, 186, 178, 32, 5, 14, 32.2748 + 79, 139, 181, 211, 233, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.2749 + 240, 240, 240, 240, 240, 189, 186, 138, 3, 134, 185, 25, 65, 187, 191, 191, 32.2750 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 168, 74, 0, 51, 32.2751 + 148, 22, 2, 78, 104, 104, 30, 56, 103, 104, 104, 104, 104, 104, 104, 120, 32.2752 + 171, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 63, 51, 32.2753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 160, 186, 186, 32.2754 + 186, 186, 145, 78, 13, 5, 22, 37, 86, 170, 214, 233, 239, 240, 240, 240, 32.2755 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 189, 186, 45, 38, 189, 110, 2, 32.2756 + 161, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2757 + 191, 190, 89, 4, 48, 118, 13, 19, 95, 104, 104, 104, 104, 104, 104, 104, 32.2758 + 104, 107, 147, 184, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2759 + 186, 186, 123, 8, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.2760 + 0, 175, 186, 186, 186, 186, 186, 186, 186, 162, 125, 95, 19, 0, 0, 33, 32.2761 + 74, 159, 168, 168, 175, 240, 240, 240, 240, 240, 240, 240, 234, 188, 139, 1, 32.2762 + 131, 191, 25, 59, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2763 + 191, 191, 191, 191, 191, 191, 191, 128, 17, 22, 70, 1, 55, 104, 104, 104, 32.2764 + 104, 104, 104, 104, 126, 171, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2765 + 186, 186, 186, 186, 186, 186, 165, 6, 169, 255, 255, 255, 255, 255, 255, 255, 32.2766 + 255, 255, 255, 227, 0, 175, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2767 + 176, 172, 149, 102, 49, 32, 32, 24, 1, 17, 17, 17, 17, 17, 17, 206, 32.2768 + 200, 186, 77, 21, 174, 132, 4, 138, 191, 191, 191, 191, 191, 191, 191, 191, 32.2769 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 159, 22, 19, 39, 32.2770 + 4, 97, 104, 104, 105, 129, 154, 179, 183, 186, 186, 186, 186, 186, 186, 186, 32.2771 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 49, 100, 255, 255, 255, 32.2772 + 255, 255, 255, 255, 255, 255, 255, 227, 0, 175, 186, 186, 186, 186, 186, 186, 32.2773 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 176, 149, 149, 160, 169, 32.2774 + 169, 169, 169, 188, 186, 174, 25, 70, 190, 64, 20, 191, 191, 191, 191, 191, 32.2775 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2776 + 191, 124, 2, 8, 0, 31, 110, 139, 156, 186, 186, 186, 186, 186, 186, 186, 32.2777 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 85, 32.2778 + 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 175, 186, 186, 32.2779 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2780 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 158, 0, 135, 184, 0, 91, 191, 32.2781 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2782 + 191, 191, 191, 191, 191, 191, 119, 2, 0, 0, 173, 186, 186, 186, 186, 186, 32.2783 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2784 + 186, 186, 186, 154, 0, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.2785 + 0, 135, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2786 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 158, 0, 187, 32.2787 + 143, 0, 160, 191, 191, 191, 191, 191, 191, 191, 191, 121, 31, 13, 13, 13, 32.2788 + 19, 106, 188, 191, 191, 191, 191, 191, 191, 191, 191, 116, 0, 0, 58, 189, 32.2789 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2790 + 186, 186, 186, 186, 186, 186, 186, 162, 9, 156, 255, 255, 255, 255, 255, 255, 32.2791 + 255, 255, 255, 239, 30, 102, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2792 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2793 + 186, 160, 0, 187, 109, 39, 186, 191, 191, 191, 191, 191, 191, 191, 139, 3, 32.2794 + 82, 165, 205, 181, 64, 4, 81, 188, 191, 191, 191, 191, 191, 191, 191, 184, 32.2795 + 31, 0, 10, 173, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2796 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 197, 55, 114, 255, 255, 32.2797 + 255, 255, 255, 255, 255, 255, 255, 255, 71, 102, 186, 186, 186, 186, 186, 186, 32.2798 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2799 + 186, 186, 186, 186, 186, 160, 0, 187, 109, 49, 191, 191, 191, 191, 191, 191, 32.2800 + 191, 191, 57, 24, 234, 255, 255, 255, 255, 108, 0, 92, 191, 191, 191, 191, 32.2801 + 191, 191, 191, 191, 89, 17, 10, 105, 186, 186, 186, 186, 186, 186, 186, 186, 32.2802 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 197, 32.2803 + 123, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 35, 186, 186, 32.2804 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2805 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 118, 0, 187, 109, 49, 191, 191, 32.2806 + 191, 191, 191, 191, 191, 191, 57, 128, 255, 255, 255, 255, 255, 249, 130, 4, 32.2807 + 143, 191, 191, 191, 191, 191, 191, 191, 126, 0, 41, 44, 184, 195, 195, 195, 32.2808 + 189, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2809 + 186, 186, 186, 186, 125, 25, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2810 + 170, 28, 183, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2811 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 86, 57, 190, 32.2812 + 109, 49, 191, 191, 191, 191, 191, 191, 191, 191, 57, 134, 255, 255, 255, 255, 32.2813 + 255, 255, 235, 33, 48, 188, 191, 191, 191, 191, 191, 191, 187, 0, 102, 0, 32.2814 + 196, 240, 240, 240, 228, 198, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2815 + 186, 186, 186, 186, 186, 186, 186, 186, 191, 0, 213, 255, 255, 255, 255, 255, 32.2816 + 255, 255, 255, 255, 170, 0, 144, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2817 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2818 + 186, 86, 22, 188, 109, 15, 173, 191, 191, 191, 191, 191, 191, 191, 57, 134, 32.2819 + 255, 255, 255, 255, 255, 255, 255, 192, 2, 153, 191, 191, 191, 191, 191, 191, 32.2820 + 188, 21, 79, 23, 39, 75, 75, 111, 165, 191, 217, 187, 186, 186, 186, 186, 32.2821 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 185, 0, 182, 255, 32.2822 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 13, 103, 186, 186, 186, 186, 186, 32.2823 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2824 + 186, 186, 186, 186, 186, 153, 0, 173, 179, 0, 165, 191, 191, 191, 191, 191, 32.2825 + 191, 191, 57, 79, 254, 255, 255, 255, 255, 255, 255, 255, 7, 153, 191, 191, 32.2826 + 191, 191, 191, 191, 191, 70, 92, 75, 69, 134, 83, 44, 34, 7, 15, 55, 32.2827 + 81, 148, 151, 172, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2828 + 185, 18, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 73, 186, 32.2829 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2830 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 170, 20, 80, 184, 0, 133, 191, 32.2831 + 191, 191, 191, 191, 191, 191, 118, 19, 225, 255, 255, 255, 255, 255, 255, 249, 32.2832 + 7, 153, 191, 191, 191, 191, 191, 191, 191, 70, 92, 75, 124, 240, 240, 240, 32.2833 + 229, 195, 168, 105, 39, 15, 9, 21, 93, 151, 175, 186, 186, 186, 186, 186, 32.2834 + 186, 186, 186, 186, 186, 86, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2835 + 255, 114, 30, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2836 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 96, 12, 32.2837 + 164, 46, 91, 191, 191, 191, 191, 191, 191, 191, 172, 10, 92, 252, 255, 255, 32.2838 + 255, 255, 255, 132, 0, 153, 191, 191, 191, 191, 191, 191, 188, 21, 92, 75, 32.2839 + 124, 240, 240, 240, 240, 240, 240, 240, 240, 240, 210, 109, 41, 0, 6, 57, 32.2840 + 70, 127, 127, 176, 186, 186, 186, 186, 186, 71, 114, 255, 255, 255, 255, 255, 32.2841 + 255, 255, 255, 255, 255, 207, 0, 190, 186, 186, 186, 186, 186, 186, 186, 186, 32.2842 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2843 + 186, 186, 185, 3, 141, 81, 18, 180, 191, 191, 191, 191, 191, 191, 191, 99, 32.2844 + 0, 88, 225, 254, 255, 255, 160, 28, 76, 188, 191, 191, 191, 191, 191, 191, 32.2845 + 187, 0, 158, 61, 7, 14, 65, 176, 240, 240, 240, 240, 240, 240, 240, 240, 32.2846 + 233, 225, 144, 120, 49, 45, 0, 20, 186, 186, 186, 186, 186, 71, 57, 255, 32.2847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 0, 205, 186, 186, 186, 186, 32.2848 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2849 + 186, 186, 186, 186, 186, 186, 186, 8, 75, 145, 1, 100, 191, 191, 191, 191, 32.2850 + 191, 191, 191, 186, 102, 12, 18, 46, 46, 46, 5, 38, 174, 191, 191, 191, 32.2851 + 191, 191, 191, 191, 187, 0, 162, 60, 99, 128, 51, 0, 65, 140, 228, 240, 32.2852 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 239, 195, 188, 204, 189, 186, 186, 32.2853 + 186, 130, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 18, 131, 32.2854 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2855 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 100, 4, 169, 48, 18, 32.2856 + 157, 191, 191, 191, 191, 191, 191, 191, 191, 179, 132, 132, 132, 132, 140, 191, 32.2857 + 191, 191, 191, 191, 191, 191, 191, 191, 135, 0, 158, 41, 96, 205, 212, 164, 32.2858 + 76, 11, 21, 119, 219, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.2859 + 240, 240, 227, 209, 186, 144, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2860 + 255, 255, 57, 91, 192, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2861 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 171, 32.2862 + 20, 43, 168, 11, 54, 181, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2863 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 112, 43, 175, 0, 32.2864 + 110, 186, 190, 217, 240, 222, 110, 22, 9, 115, 211, 240, 240, 240, 240, 240, 32.2865 + 240, 240, 240, 240, 240, 240, 240, 239, 221, 144, 14, 255, 255, 255, 255, 255, 32.2866 + 255, 255, 255, 255, 255, 255, 138, 9, 162, 186, 186, 186, 186, 186, 186, 186, 32.2867 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2868 + 186, 186, 186, 186, 99, 0, 132, 122, 1, 78, 185, 191, 191, 191, 191, 191, 32.2869 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 188, 32.2870 + 49, 46, 115, 3, 169, 186, 186, 186, 195, 222, 237, 217, 99, 14, 17, 43, 32.2871 + 124, 227, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 239, 161, 13, 248, 32.2872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 0, 130, 186, 186, 186, 32.2873 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2874 + 186, 186, 186, 186, 186, 186, 186, 186, 184, 46, 67, 191, 90, 0, 60, 191, 32.2875 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2876 + 191, 191, 191, 131, 0, 97, 76, 55, 186, 186, 186, 186, 186, 186, 190, 214, 32.2877 + 240, 226, 166, 77, 12, 20, 118, 219, 240, 240, 240, 240, 240, 240, 240, 240, 32.2878 + 240, 164, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 32.2879 + 40, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2880 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 187, 212, 216, 216, 130, 7, 143, 32.2881 + 189, 100, 2, 97, 177, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.2882 + 191, 191, 191, 191, 191, 191, 162, 9, 46, 175, 22, 96, 186, 186, 186, 186, 32.2883 + 186, 186, 186, 186, 188, 200, 217, 235, 188, 76, 23, 9, 114, 211, 240, 240, 32.2884 + 240, 240, 240, 240, 240, 204, 28, 170, 255, 255, 255, 255, 255, 255, 255, 255, 32.2885 + 255, 255, 255, 144, 5, 157, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2886 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 190, 228, 240, 204, 32.2887 + 128, 31, 6, 32, 178, 191, 101, 2, 39, 173, 191, 191, 191, 191, 191, 191, 32.2888 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 131, 8, 21, 157, 110, 6, 172, 32.2889 + 199, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 196, 215, 229, 214, 127, 32.2890 + 11, 16, 97, 172, 234, 240, 240, 240, 238, 197, 30, 170, 255, 255, 255, 255, 32.2891 + 255, 255, 255, 255, 255, 255, 255, 238, 30, 99, 186, 186, 186, 186, 186, 186, 32.2892 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 190, 214, 32.2893 + 240, 228, 93, 1, 2, 101, 181, 0, 40, 175, 191, 112, 0, 33, 172, 191, 32.2894 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 126, 5, 46, 170, 32.2895 + 195, 0, 0, 75, 230, 210, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2896 + 186, 186, 186, 186, 160, 110, 46, 0, 48, 152, 218, 236, 208, 186, 30, 170, 32.2897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 40, 181, 186, 32.2898 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2899 + 186, 195, 230, 235, 163, 16, 17, 101, 176, 185, 22, 11, 2, 33, 173, 190, 32.2900 + 163, 30, 6, 85, 152, 189, 191, 191, 191, 191, 191, 191, 191, 191, 166, 85, 32.2901 + 2, 29, 170, 203, 25, 52, 93, 0, 68, 226, 204, 186, 186, 186, 186, 186, 32.2902 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 183, 114, 37, 18, 8, 50, 32.2903 + 133, 131, 4, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2904 + 187, 0, 98, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2905 + 186, 186, 186, 186, 214, 226, 107, 37, 5, 32, 192, 240, 183, 14, 17, 167, 32.2906 + 109, 3, 61, 168, 191, 175, 108, 18, 0, 32, 90, 150, 175, 186, 191, 191, 32.2907 + 182, 116, 12, 18, 107, 175, 182, 73, 1, 184, 236, 110, 1, 62, 184, 214, 32.2908 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2909 + 186, 169, 130, 45, 3, 12, 13, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.2910 + 255, 255, 255, 255, 251, 60, 13, 168, 186, 186, 186, 186, 186, 186, 186, 186, 32.2911 + 186, 186, 186, 186, 186, 186, 188, 211, 143, 40, 0, 77, 191, 240, 240, 175, 32.2912 + 13, 74, 202, 216, 186, 118, 1, 25, 168, 191, 191, 183, 134, 64, 36, 0, 32.2913 + 0, 39, 56, 56, 23, 0, 57, 182, 191, 179, 53, 0, 0, 120, 240, 240, 32.2914 + 164, 20, 12, 174, 200, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2915 + 186, 186, 186, 186, 186, 186, 186, 186, 142, 74, 0, 170, 255, 255, 255, 255, 32.2916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 17, 78, 183, 186, 186, 186, 32.2917 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 196, 169, 32, 10, 87, 197, 238, 32.2918 + 240, 240, 169, 6, 46, 236, 226, 186, 186, 186, 123, 7, 23, 117, 191, 191, 32.2919 + 191, 191, 187, 182, 120, 110, 110, 110, 110, 140, 187, 191, 178, 47, 0, 111, 32.2920 + 100, 2, 151, 240, 240, 200, 43, 5, 115, 195, 186, 186, 186, 186, 186, 186, 32.2921 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 102, 12, 241, 32.2922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 0, 32.2923 + 108, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 171, 54, 5, 53, 32.2924 + 171, 240, 240, 240, 240, 160, 9, 72, 215, 222, 189, 186, 186, 186, 186, 158, 32.2925 + 36, 2, 54, 109, 145, 151, 152, 188, 191, 191, 191, 191, 191, 191, 181, 136, 32.2926 + 22, 17, 109, 197, 220, 48, 25, 197, 240, 240, 232, 91, 0, 76, 197, 186, 32.2927 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2928 + 186, 71, 74, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2929 + 255, 255, 247, 51, 8, 155, 186, 186, 186, 186, 186, 186, 186, 186, 193, 133, 32.2930 + 27, 0, 133, 240, 240, 240, 240, 240, 155, 5, 93, 230, 201, 186, 186, 186, 32.2931 + 186, 186, 186, 186, 172, 98, 32, 0, 10, 30, 30, 46, 117, 127, 127, 127, 32.2932 + 113, 55, 20, 0, 42, 153, 186, 186, 214, 201, 11, 47, 232, 240, 240, 238, 32.2933 + 113, 12, 69, 196, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2934 + 186, 186, 186, 186, 185, 47, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2935 + 255, 255, 255, 255, 255, 255, 255, 216, 9, 73, 186, 186, 186, 186, 186, 186, 32.2936 + 186, 159, 107, 3, 52, 203, 239, 240, 240, 240, 226, 67, 2, 106, 218, 188, 32.2937 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 160, 34, 8, 60, 60, 60, 35, 32.2938 + 23, 39, 39, 39, 39, 67, 108, 141, 183, 186, 186, 186, 186, 205, 181, 15, 32.2939 + 67, 226, 240, 240, 240, 184, 16, 62, 177, 186, 186, 186, 186, 186, 186, 186, 32.2940 + 186, 186, 186, 186, 186, 186, 186, 186, 185, 0, 172, 255, 255, 255, 255, 255, 32.2941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 11, 178, 186, 32.2942 + 186, 186, 186, 160, 46, 4, 24, 134, 235, 240, 240, 240, 240, 219, 60, 9, 32.2943 + 104, 192, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 142, 17, 48, 32.2944 + 104, 104, 104, 104, 110, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2945 + 186, 186, 212, 184, 18, 60, 227, 240, 240, 240, 186, 18, 13, 164, 186, 186, 32.2946 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 124, 0, 213, 255, 32.2947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2948 + 228, 19, 60, 186, 186, 186, 118, 3, 30, 184, 240, 240, 240, 240, 240, 240, 32.2949 + 173, 12, 21, 181, 196, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2950 + 186, 124, 0, 83, 104, 104, 104, 104, 110, 186, 186, 186, 186, 186, 186, 186, 32.2951 + 186, 186, 186, 186, 186, 186, 186, 208, 192, 21, 56, 223, 240, 240, 240, 193, 32.2952 + 21, 12, 144, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2953 + 88, 40, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2954 + 255, 255, 255, 255, 255, 116, 16, 166, 186, 187, 56, 41, 213, 240, 240, 240, 32.2955 + 240, 240, 240, 167, 5, 25, 193, 189, 186, 186, 186, 186, 186, 186, 186, 186, 32.2956 + 186, 186, 186, 186, 186, 58, 18, 100, 104, 104, 104, 104, 110, 186, 186, 186, 32.2957 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 202, 170, 1, 44, 32.2958 + 220, 240, 240, 240, 202, 45, 2, 66, 179, 186, 186, 186, 186, 186, 186, 186, 32.2959 + 186, 186, 186, 179, 31, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 10, 86, 186, 209, 212, 222, 32.2961 + 240, 240, 240, 240, 240, 240, 157, 9, 30, 187, 192, 186, 186, 186, 186, 186, 32.2962 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 25, 50, 104, 104, 104, 104, 104, 32.2963 + 113, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2964 + 187, 208, 132, 4, 66, 236, 240, 240, 240, 233, 94, 0, 61, 182, 186, 186, 32.2965 + 186, 186, 186, 186, 186, 186, 186, 154, 0, 165, 255, 255, 255, 255, 255, 255, 32.2966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 2, 32.2967 + 140, 212, 240, 240, 240, 240, 240, 240, 240, 153, 4, 23, 177, 186, 186, 186, 32.2968 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 152, 7, 72, 104, 32.2969 + 104, 104, 104, 104, 142, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2970 + 186, 186, 186, 186, 186, 186, 201, 148, 0, 104, 240, 240, 240, 240, 239, 96, 32.2971 + 0, 61, 154, 186, 186, 186, 186, 186, 186, 186, 186, 102, 0, 255, 255, 255, 32.2972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2973 + 255, 255, 232, 47, 41, 207, 240, 240, 240, 240, 240, 240, 141, 2, 32, 165, 32.2974 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2975 + 138, 8, 102, 104, 104, 104, 104, 104, 142, 186, 186, 186, 186, 186, 186, 186, 32.2976 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 196, 149, 8, 95, 234, 32.2977 + 240, 240, 240, 238, 185, 16, 3, 81, 184, 186, 186, 186, 186, 186, 172, 9, 32.2978 + 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2979 + 255, 255, 255, 255, 255, 255, 255, 190, 0, 111, 238, 240, 240, 240, 239, 134, 32.2980 + 6, 66, 167, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2981 + 186, 186, 186, 186, 132, 8, 104, 104, 104, 104, 104, 104, 142, 186, 186, 186, 32.2982 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2983 + 200, 157, 7, 91, 234, 240, 240, 240, 240, 214, 110, 6, 55, 186, 186, 186, 32.2984 + 186, 186, 89, 4, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 96, 14, 200, 238, 32.2986 + 240, 240, 130, 0, 95, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2987 + 186, 186, 186, 186, 186, 186, 186, 186, 66, 8, 104, 104, 104, 104, 104, 104, 32.2988 + 142, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2989 + 186, 186, 186, 186, 186, 195, 143, 0, 80, 236, 240, 240, 240, 240, 240, 159, 32.2990 + 107, 201, 186, 186, 186, 170, 14, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.2991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2992 + 227, 18, 26, 175, 207, 165, 1, 63, 185, 186, 186, 186, 186, 186, 186, 186, 32.2993 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 66, 48, 104, 104, 32.2994 + 104, 104, 104, 104, 142, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.2995 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 197, 93, 0, 74, 228, 240, 32.2996 + 240, 240, 240, 240, 240, 231, 190, 186, 186, 121, 0, 201, 255, 255, 255, 255, 32.2997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.2998 + 255, 255, 255, 255, 255, 164, 7, 64, 181, 165, 90, 176, 186, 186, 186, 186, 32.2999 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3000 + 66, 49, 104, 104, 104, 104, 104, 104, 142, 186, 186, 186, 186, 186, 186, 186, 32.3001 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 188, 32.3002 + 153, 13, 66, 222, 240, 240, 240, 240, 240, 240, 206, 186, 186, 57, 73, 253, 32.3003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 5, 65, 185, 186, 186, 32.3005 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3006 + 186, 186, 186, 181, 18, 49, 104, 104, 104, 104, 104, 104, 142, 186, 186, 186, 32.3007 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3008 + 186, 186, 186, 186, 186, 169, 17, 15, 147, 240, 240, 240, 240, 240, 206, 186, 32.3009 + 147, 5, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 32.3011 + 0, 124, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3012 + 186, 186, 186, 186, 186, 186, 186, 180, 0, 73, 104, 104, 104, 104, 104, 104, 32.3013 + 173, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3014 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 161, 41, 0, 164, 240, 240, 32.3015 + 240, 240, 206, 183, 49, 17, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3017 + 255, 255, 255, 249, 97, 5, 115, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3018 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 180, 0, 89, 104, 104, 32.3019 + 104, 104, 104, 121, 184, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3020 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 204, 32.3021 + 204, 228, 240, 240, 240, 229, 189, 78, 0, 161, 255, 255, 255, 255, 255, 255, 32.3022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3023 + 255, 255, 255, 255, 255, 255, 255, 255, 228, 37, 2, 113, 186, 186, 186, 186, 32.3024 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 180, 32.3025 + 0, 89, 104, 104, 104, 104, 104, 135, 186, 186, 186, 186, 186, 186, 186, 186, 32.3026 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3027 + 186, 186, 186, 189, 211, 240, 240, 240, 225, 194, 129, 8, 87, 247, 255, 255, 32.3028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 50, 1, 32.3030 + 103, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3031 + 186, 186, 186, 160, 0, 89, 104, 104, 104, 104, 104, 156, 186, 186, 186, 186, 32.3032 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3033 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 187, 187, 187, 186, 124, 1, 98, 32.3034 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3036 + 255, 255, 234, 52, 2, 98, 184, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3037 + 186, 186, 186, 186, 186, 186, 186, 148, 0, 89, 104, 104, 104, 104, 104, 156, 32.3038 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3039 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3040 + 182, 35, 97, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3042 + 255, 255, 255, 255, 255, 255, 255, 236, 130, 0, 57, 170, 186, 186, 186, 186, 32.3043 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 148, 0, 89, 104, 104, 32.3044 + 104, 104, 105, 177, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3045 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3046 + 186, 186, 186, 186, 100, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 152, 27, 28, 32.3049 + 150, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 148, 32.3050 + 0, 89, 104, 104, 104, 104, 106, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3051 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3052 + 186, 186, 186, 186, 186, 186, 194, 153, 5, 122, 255, 255, 255, 255, 255, 255, 32.3053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3055 + 255, 255, 183, 40, 5, 113, 178, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3056 + 186, 186, 186, 151, 0, 89, 104, 104, 104, 104, 104, 160, 186, 186, 186, 186, 32.3057 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3058 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 180, 157, 9, 32, 226, 255, 255, 32.3059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3061 + 255, 255, 255, 255, 255, 255, 255, 229, 74, 0, 50, 151, 186, 186, 186, 186, 32.3062 + 186, 186, 186, 186, 186, 186, 186, 180, 0, 89, 104, 104, 104, 104, 104, 156, 32.3063 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3064 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 155, 57, 0, 99, 32.3065 + 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 132, 21, 7, 32.3068 + 131, 182, 186, 186, 186, 186, 186, 186, 186, 186, 186, 136, 0, 89, 104, 104, 32.3069 + 104, 104, 104, 156, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3070 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 159, 32.3071 + 12, 0, 114, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3074 + 255, 255, 207, 78, 8, 34, 95, 167, 186, 186, 186, 186, 186, 186, 186, 107, 32.3075 + 12, 96, 104, 104, 104, 104, 108, 170, 186, 186, 186, 186, 186, 186, 186, 186, 32.3076 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3077 + 186, 186, 176, 46, 1, 120, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3080 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 86, 0, 9, 78, 162, 186, 186, 32.3081 + 186, 186, 186, 136, 84, 119, 104, 104, 104, 109, 155, 186, 186, 186, 186, 186, 32.3082 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3083 + 186, 186, 186, 186, 186, 186, 58, 21, 140, 255, 255, 255, 255, 255, 255, 255, 32.3084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 216, 100, 32.3087 + 11, 19, 105, 172, 186, 186, 186, 186, 186, 182, 154, 154, 154, 172, 186, 186, 32.3088 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3089 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 64, 1, 143, 255, 255, 255, 255, 32.3090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3093 + 255, 255, 255, 255, 223, 63, 3, 17, 99, 172, 186, 186, 186, 186, 186, 186, 32.3094 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3095 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 166, 43, 6, 143, 255, 32.3096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 64, 0, 17, 88, 146, 32.3100 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3101 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 187, 127, 23, 32.3102 + 0, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.3106 + 202, 122, 25, 0, 19, 77, 140, 182, 186, 186, 186, 186, 186, 186, 186, 186, 32.3107 + 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 167, 32.3108 + 134, 39, 0, 67, 227, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3112 + 255, 255, 255, 255, 255, 255, 235, 181, 101, 27, 0, 32, 94, 134, 163, 163, 32.3113 + 165, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 32.3114 + 156, 94, 27, 14, 19, 74, 191, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.3115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 190, 102, 32.3119 + 60, 0, 0, 0, 3, 47, 83, 117, 183, 186, 186, 186, 186, 186, 186, 186, 32.3120 + 186, 186, 154, 96, 4, 0, 90, 170, 230, 255, 255, 255, 255, 255, 255, 255, 32.3121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3125 + 255, 255, 255, 255, 254, 254, 254, 230, 158, 92, 54, 0, 0, 0, 0, 0, 32.3126 + 48, 70, 70, 70, 41, 0, 0, 43, 75, 191, 254, 255, 255, 255, 255, 255, 32.3127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 222, 32.3132 + 222, 211, 196, 164, 127, 127, 127, 127, 127, 187, 222, 244, 255, 255, 255, 255, 32.3133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3143 + 255, 245, 191, 191, 187, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 32.3144 + 134, 154, 200, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 32.3149 + 240, 239, 222, 139, 59, 26, 6, 17, 17, 42, 92, 69, 69, 69, 69, 69, 32.3150 + 69, 69, 69, 42, 17, 3, 17, 20, 56, 113, 177, 222, 253, 255, 255, 255, 32.3151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3155 + 255, 255, 231, 147, 75, 33, 0, 0, 37, 80, 117, 139, 139, 139, 139, 139, 32.3156 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 105, 104, 91, 52, 36, 0, 0, 32.3157 + 61, 102, 181, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3161 + 255, 255, 255, 255, 255, 245, 120, 12, 7, 57, 87, 132, 139, 139, 139, 139, 32.3162 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3163 + 139, 139, 139, 100, 77, 34, 0, 7, 123, 249, 255, 255, 255, 255, 255, 255, 32.3164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3167 + 255, 255, 255, 255, 255, 255, 255, 246, 146, 53, 2, 27, 124, 139, 139, 139, 32.3168 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3169 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 138, 109, 45, 5, 40, 159, 240, 32.3170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 170, 45, 0, 16, 46, 61, 32.3174 + 91, 138, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3175 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 138, 147, 163, 163, 32.3176 + 140, 33, 0, 53, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 153, 37, 0, 21, 32.3180 + 49, 61, 61, 46, 27, 82, 131, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3181 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3182 + 128, 0, 129, 204, 204, 191, 93, 15, 1, 116, 245, 255, 255, 255, 255, 255, 32.3183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 74, 32.3186 + 0, 49, 57, 61, 61, 61, 61, 41, 0, 34, 93, 133, 139, 139, 139, 139, 32.3187 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3188 + 139, 139, 139, 150, 91, 4, 195, 204, 204, 204, 189, 121, 49, 6, 32, 153, 32.3189 + 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3192 + 255, 243, 68, 0, 61, 138, 74, 61, 61, 61, 61, 61, 19, 0, 35, 86, 32.3193 + 138, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3194 + 139, 139, 139, 139, 139, 139, 142, 187, 25, 65, 204, 204, 204, 204, 203, 139, 32.3195 + 139, 117, 37, 0, 43, 190, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3198 + 255, 255, 255, 255, 237, 58, 11, 92, 139, 139, 82, 61, 61, 61, 61, 61, 32.3199 + 56, 13, 5, 49, 107, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3200 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 170, 184, 4, 134, 204, 204, 32.3201 + 204, 196, 67, 25, 139, 139, 139, 104, 36, 0, 90, 229, 255, 255, 255, 255, 32.3202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3204 + 255, 255, 255, 255, 255, 255, 255, 235, 53, 7, 113, 139, 139, 139, 132, 68, 32.3205 + 61, 61, 61, 61, 61, 57, 10, 7, 61, 129, 139, 139, 139, 139, 139, 139, 32.3206 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 198, 130, 32.3207 + 5, 169, 204, 204, 204, 125, 0, 101, 139, 139, 139, 139, 136, 66, 8, 19, 32.3208 + 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 50, 14, 103, 139, 139, 32.3211 + 139, 139, 139, 126, 76, 61, 61, 61, 61, 61, 45, 3, 17, 77, 138, 139, 32.3212 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3213 + 139, 154, 202, 70, 40, 204, 204, 204, 180, 11, 38, 137, 139, 139, 139, 139, 32.3214 + 139, 139, 110, 12, 14, 185, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 4, 32.3217 + 102, 139, 139, 139, 139, 139, 139, 139, 125, 83, 61, 61, 61, 61, 61, 37, 32.3218 + 0, 34, 100, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3219 + 139, 139, 139, 139, 139, 158, 204, 51, 118, 204, 204, 204, 121, 4, 112, 139, 32.3220 + 139, 139, 139, 139, 139, 139, 139, 138, 47, 0, 90, 248, 255, 255, 255, 255, 32.3221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3223 + 255, 154, 0, 82, 139, 139, 139, 139, 139, 139, 139, 139, 139, 126, 68, 61, 32.3224 + 61, 61, 61, 60, 19, 4, 56, 121, 139, 139, 139, 139, 139, 139, 139, 139, 32.3225 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 174, 179, 5, 129, 204, 204, 204, 32.3226 + 63, 46, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 135, 54, 0, 85, 32.3227 + 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3229 + 255, 255, 255, 255, 221, 13, 45, 133, 139, 139, 139, 139, 139, 139, 139, 139, 32.3230 + 139, 139, 108, 61, 61, 61, 61, 61, 49, 1, 28, 77, 133, 139, 139, 139, 32.3231 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 144, 204, 174, 0, 32.3232 + 197, 204, 204, 191, 14, 72, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3233 + 139, 136, 56, 0, 76, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3235 + 255, 255, 255, 255, 255, 255, 255, 206, 44, 14, 138, 139, 139, 139, 139, 139, 32.3236 + 139, 139, 139, 139, 139, 139, 139, 87, 61, 61, 61, 61, 61, 19, 8, 60, 32.3237 + 124, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3238 + 169, 204, 96, 0, 197, 204, 204, 166, 0, 107, 139, 139, 139, 139, 139, 139, 32.3239 + 139, 139, 139, 139, 139, 139, 139, 83, 0, 80, 255, 255, 255, 255, 255, 255, 32.3240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 28, 3, 85, 139, 139, 32.3242 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 135, 66, 61, 61, 61, 32.3243 + 61, 50, 2, 26, 92, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3244 + 139, 139, 139, 139, 169, 204, 55, 65, 203, 204, 204, 97, 21, 133, 139, 139, 32.3245 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 137, 68, 5, 140, 255, 32.3246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 221, 31, 1, 32.3248 + 85, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3249 + 116, 61, 61, 61, 61, 61, 33, 2, 52, 117, 139, 139, 139, 139, 139, 139, 32.3250 + 139, 139, 139, 139, 139, 139, 139, 139, 179, 202, 17, 104, 204, 204, 202, 28, 32.3251 + 42, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3252 + 139, 28, 0, 140, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3254 + 254, 111, 3, 91, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3255 + 139, 139, 139, 139, 139, 75, 61, 61, 61, 61, 53, 7, 10, 68, 132, 139, 32.3256 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 194, 142, 0, 152, 32.3257 + 204, 204, 153, 0, 95, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3258 + 139, 139, 139, 139, 139, 130, 68, 0, 123, 255, 255, 255, 255, 255, 255, 255, 32.3259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3260 + 255, 255, 255, 255, 228, 8, 51, 139, 139, 139, 66, 118, 139, 139, 139, 139, 32.3261 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 95, 61, 61, 61, 61, 61, 46, 32.3262 + 0, 38, 85, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 153, 32.3263 + 203, 70, 24, 198, 204, 204, 82, 9, 134, 139, 139, 139, 139, 139, 139, 139, 32.3264 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 138, 75, 1, 166, 255, 255, 32.3265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3266 + 255, 255, 255, 255, 255, 255, 255, 253, 101, 15, 129, 139, 139, 139, 3, 13, 32.3267 + 79, 138, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 137, 72, 61, 32.3268 + 61, 61, 61, 58, 18, 9, 59, 108, 139, 139, 139, 139, 139, 139, 139, 139, 32.3269 + 139, 139, 139, 174, 197, 37, 89, 204, 204, 198, 16, 52, 139, 139, 139, 139, 32.3270 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 131, 32.3271 + 38, 16, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 0, 73, 139, 139, 32.3273 + 139, 139, 128, 30, 0, 68, 127, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3274 + 139, 139, 124, 63, 61, 61, 61, 61, 41, 0, 37, 69, 135, 139, 139, 139, 32.3275 + 139, 139, 139, 139, 139, 139, 140, 195, 187, 0, 158, 204, 204, 119, 0, 100, 32.3276 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3277 + 139, 139, 139, 139, 113, 12, 22, 236, 255, 255, 255, 255, 255, 255, 255, 255, 32.3278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 32.3279 + 6, 134, 139, 139, 139, 139, 139, 130, 59, 2, 46, 125, 139, 139, 139, 139, 32.3280 + 139, 139, 139, 139, 139, 139, 139, 103, 61, 61, 61, 61, 60, 23, 6, 58, 32.3281 + 110, 136, 139, 139, 139, 139, 139, 139, 139, 139, 144, 204, 115, 9, 189, 204, 32.3282 + 204, 77, 36, 140, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3283 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 114, 7, 50, 248, 255, 255, 255, 32.3284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3285 + 255, 255, 255, 33, 49, 139, 139, 139, 139, 139, 139, 139, 139, 81, 1, 24, 32.3286 + 124, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 137, 79, 61, 61, 61, 32.3287 + 61, 51, 3, 23, 60, 106, 138, 139, 139, 139, 139, 139, 139, 139, 166, 204, 32.3288 + 75, 61, 204, 204, 202, 39, 85, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3289 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 78, 0, 32.3290 + 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3291 + 255, 255, 255, 255, 255, 255, 255, 0, 96, 139, 139, 139, 139, 139, 139, 139, 32.3292 + 139, 139, 104, 21, 18, 87, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3293 + 121, 62, 61, 61, 61, 61, 23, 0, 49, 61, 120, 139, 139, 139, 139, 139, 32.3294 + 139, 139, 191, 170, 9, 113, 204, 204, 142, 0, 88, 139, 139, 139, 139, 139, 32.3295 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3296 + 139, 139, 133, 24, 32, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 8, 172, 139, 139, 139, 32.3298 + 139, 139, 139, 139, 139, 139, 139, 123, 34, 2, 57, 131, 139, 139, 139, 139, 32.3299 + 139, 139, 139, 139, 139, 94, 61, 61, 61, 61, 56, 9, 19, 61, 68, 126, 32.3300 + 139, 139, 139, 139, 139, 139, 191, 140, 8, 174, 204, 204, 73, 15, 134, 139, 32.3301 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3302 + 139, 139, 134, 126, 126, 126, 137, 111, 3, 94, 255, 255, 255, 255, 255, 255, 32.3303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 153, 41, 32.3304 + 169, 165, 162, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 67, 0, 33, 32.3305 + 128, 139, 139, 139, 139, 139, 139, 139, 139, 125, 68, 61, 61, 61, 61, 36, 32.3306 + 1, 48, 61, 93, 139, 139, 139, 139, 139, 139, 191, 73, 19, 204, 204, 204, 32.3307 + 6, 65, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3308 + 139, 139, 139, 138, 96, 32, 61, 61, 61, 61, 91, 130, 70, 0, 138, 255, 32.3309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3310 + 255, 255, 57, 67, 204, 204, 204, 188, 148, 139, 139, 139, 139, 139, 139, 139, 32.3311 + 139, 139, 75, 0, 4, 96, 139, 139, 139, 139, 139, 139, 139, 139, 118, 62, 32.3312 + 61, 61, 61, 54, 3, 22, 61, 93, 139, 139, 139, 139, 139, 139, 165, 52, 32.3313 + 96, 204, 204, 155, 2, 120, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3314 + 139, 139, 139, 139, 139, 139, 139, 70, 0, 13, 56, 61, 61, 61, 61, 90, 32.3315 + 129, 35, 19, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3316 + 255, 255, 255, 255, 255, 231, 39, 123, 204, 204, 204, 204, 200, 170, 143, 139, 32.3317 + 139, 139, 139, 139, 139, 139, 138, 112, 17, 3, 89, 133, 139, 139, 139, 139, 32.3318 + 139, 139, 139, 106, 61, 61, 61, 61, 43, 43, 61, 93, 139, 139, 139, 139, 32.3319 + 139, 139, 135, 0, 138, 204, 204, 58, 24, 136, 139, 139, 139, 139, 139, 139, 32.3320 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 137, 65, 2, 34, 58, 61, 61, 32.3321 + 61, 61, 61, 61, 135, 133, 8, 59, 241, 255, 255, 255, 255, 255, 255, 255, 32.3322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 0, 156, 204, 204, 204, 204, 32.3323 + 204, 204, 195, 178, 141, 139, 139, 139, 139, 139, 139, 139, 124, 55, 0, 42, 32.3324 + 136, 139, 139, 139, 139, 139, 139, 135, 108, 61, 61, 61, 61, 61, 67, 123, 32.3325 + 139, 139, 139, 139, 139, 139, 135, 0, 131, 152, 137, 11, 69, 139, 139, 139, 32.3326 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 64, 0, 36, 32.3327 + 61, 61, 61, 61, 61, 61, 61, 61, 135, 139, 96, 0, 130, 255, 255, 255, 32.3328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 22, 203, 32.3329 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 184, 164, 147, 139, 139, 139, 139, 32.3330 + 139, 139, 61, 0, 38, 116, 139, 139, 139, 139, 139, 139, 138, 105, 63, 61, 32.3331 + 61, 69, 117, 139, 139, 104, 98, 98, 98, 98, 96, 25, 125, 139, 120, 0, 32.3332 + 116, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3333 + 101, 7, 24, 61, 61, 61, 61, 61, 61, 61, 61, 61, 135, 139, 139, 58, 32.3334 + 24, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3335 + 209, 52, 78, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 197, 32.3336 + 164, 149, 140, 139, 139, 139, 137, 107, 18, 5, 59, 127, 139, 139, 139, 139, 32.3337 + 139, 139, 133, 132, 120, 92, 64, 21, 11, 4, 31, 31, 31, 31, 18, 7, 32.3338 + 11, 48, 89, 128, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3339 + 139, 139, 136, 84, 4, 11, 59, 61, 61, 61, 61, 61, 61, 61, 61, 101, 32.3340 + 138, 139, 139, 127, 7, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3341 + 255, 255, 255, 255, 170, 1, 111, 203, 204, 204, 204, 204, 204, 204, 204, 204, 32.3342 + 204, 204, 204, 204, 204, 204, 192, 183, 163, 141, 139, 139, 132, 85, 2, 14, 32.3343 + 82, 136, 139, 139, 139, 139, 131, 65, 13, 5, 49, 81, 150, 154, 191, 191, 32.3344 + 191, 191, 174, 150, 117, 57, 3, 30, 115, 144, 139, 139, 139, 139, 139, 139, 32.3345 + 139, 139, 139, 139, 138, 125, 55, 2, 22, 59, 61, 61, 61, 61, 61, 61, 32.3346 + 61, 61, 93, 134, 139, 139, 139, 139, 67, 17, 226, 255, 255, 255, 255, 255, 32.3347 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 41, 165, 175, 200, 204, 204, 204, 32.3348 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 183, 173, 32.3349 + 154, 139, 108, 43, 0, 24, 85, 138, 139, 128, 31, 0, 89, 175, 191, 189, 32.3350 + 117, 63, 63, 63, 63, 63, 63, 63, 63, 113, 131, 73, 1, 20, 124, 139, 32.3351 + 139, 139, 139, 139, 139, 139, 119, 96, 83, 39, 0, 23, 61, 61, 61, 61, 32.3352 + 61, 61, 61, 61, 62, 99, 139, 139, 139, 139, 139, 139, 125, 9, 119, 255, 32.3353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 24, 141, 139, 32.3354 + 154, 187, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 32.3355 + 204, 204, 204, 204, 202, 178, 174, 146, 111, 44, 0, 136, 138, 45, 3, 107, 32.3356 + 185, 104, 17, 15, 0, 33, 103, 103, 103, 103, 103, 103, 42, 9, 8, 69, 32.3357 + 104, 18, 7, 60, 131, 139, 139, 131, 125, 89, 61, 61, 36, 1, 27, 59, 32.3358 + 61, 61, 61, 61, 61, 61, 61, 76, 117, 139, 139, 139, 139, 139, 139, 139, 32.3359 + 139, 64, 39, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3360 + 129, 22, 139, 139, 139, 142, 166, 201, 203, 204, 204, 204, 204, 204, 204, 204, 32.3361 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 197, 155, 134, 110, 138, 32.3362 + 111, 0, 91, 192, 72, 3, 78, 138, 151, 185, 191, 191, 191, 191, 191, 191, 32.3363 + 191, 163, 76, 5, 36, 152, 88, 1, 35, 108, 114, 68, 61, 61, 58, 28, 32.3364 + 1, 27, 60, 61, 61, 61, 61, 61, 61, 61, 75, 121, 139, 139, 139, 139, 32.3365 + 139, 139, 139, 139, 139, 91, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 32.3366 + 255, 255, 255, 255, 71, 38, 139, 139, 134, 45, 96, 139, 159, 186, 204, 204, 32.3367 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 32.3368 + 197, 142, 139, 139, 43, 43, 205, 109, 0, 119, 191, 191, 191, 191, 191, 191, 32.3369 + 191, 191, 191, 191, 191, 191, 191, 168, 25, 1, 108, 123, 17, 6, 50, 61, 32.3370 + 61, 61, 16, 0, 30, 61, 61, 61, 61, 61, 61, 61, 61, 99, 133, 139, 32.3371 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 127, 11, 142, 255, 255, 255, 255, 32.3372 + 255, 255, 255, 255, 255, 255, 255, 239, 32, 76, 139, 139, 133, 23, 3, 10, 32.3373 + 59, 105, 139, 169, 195, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 32.3374 + 204, 204, 204, 204, 204, 143, 139, 103, 2, 118, 185, 25, 65, 187, 191, 191, 32.3375 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 168, 74, 0, 51, 32.3376 + 148, 22, 1, 46, 61, 61, 17, 32, 60, 61, 61, 61, 61, 61, 61, 76, 32.3377 + 125, 138, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 47, 51, 32.3378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 119, 139, 139, 32.3379 + 139, 139, 108, 58, 10, 4, 16, 28, 65, 140, 177, 197, 203, 204, 204, 204, 32.3380 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 143, 139, 33, 37, 180, 110, 2, 32.3381 + 161, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3382 + 191, 190, 89, 4, 48, 102, 7, 11, 55, 61, 61, 61, 61, 61, 61, 61, 32.3383 + 61, 64, 102, 137, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3384 + 139, 139, 91, 8, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.3385 + 0, 130, 139, 139, 139, 139, 139, 139, 139, 121, 93, 71, 14, 0, 0, 24, 32.3386 + 61, 132, 142, 142, 148, 204, 204, 204, 204, 204, 204, 204, 197, 142, 104, 0, 32.3387 + 131, 191, 25, 59, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3388 + 191, 191, 191, 191, 191, 191, 191, 128, 17, 13, 41, 0, 32, 61, 61, 61, 32.3389 + 61, 61, 61, 61, 82, 125, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3390 + 139, 139, 139, 139, 139, 139, 123, 4, 169, 255, 255, 255, 255, 255, 255, 255, 32.3391 + 255, 255, 255, 227, 0, 130, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3392 + 132, 128, 111, 76, 36, 24, 24, 17, 1, 15, 15, 15, 15, 15, 15, 174, 32.3393 + 156, 139, 57, 21, 174, 132, 4, 138, 191, 191, 191, 191, 191, 191, 191, 191, 32.3394 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 159, 22, 11, 22, 32.3395 + 2, 57, 61, 61, 62, 84, 109, 133, 136, 139, 139, 139, 139, 139, 139, 139, 32.3396 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 36, 100, 255, 255, 255, 32.3397 + 255, 255, 255, 255, 255, 255, 255, 227, 0, 130, 139, 139, 139, 139, 139, 139, 32.3398 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 131, 111, 111, 124, 135, 32.3399 + 135, 135, 135, 143, 139, 130, 19, 70, 190, 64, 20, 191, 191, 191, 191, 191, 32.3400 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3401 + 191, 124, 2, 4, 0, 18, 68, 94, 111, 139, 139, 139, 139, 139, 139, 139, 32.3402 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 63, 32.3403 + 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 0, 130, 139, 139, 32.3404 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3405 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 118, 0, 135, 184, 0, 91, 191, 32.3406 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3407 + 191, 191, 191, 191, 191, 191, 119, 2, 0, 0, 164, 139, 139, 139, 139, 139, 32.3408 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3409 + 139, 139, 139, 115, 0, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.3410 + 0, 100, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3411 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 118, 0, 187, 32.3412 + 143, 0, 160, 191, 191, 191, 191, 191, 191, 191, 191, 121, 31, 13, 13, 13, 32.3413 + 19, 106, 188, 191, 191, 191, 191, 191, 191, 191, 191, 116, 0, 0, 56, 145, 32.3414 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3415 + 139, 139, 139, 139, 139, 139, 139, 123, 9, 156, 255, 255, 255, 255, 255, 255, 32.3416 + 255, 255, 255, 239, 30, 76, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3417 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3418 + 139, 134, 0, 187, 109, 39, 186, 191, 191, 191, 191, 191, 191, 191, 139, 3, 32.3419 + 82, 165, 205, 181, 64, 4, 81, 188, 191, 191, 191, 191, 191, 191, 191, 184, 32.3420 + 31, 0, 10, 140, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3421 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 158, 55, 114, 255, 255, 32.3422 + 255, 255, 255, 255, 255, 255, 255, 255, 71, 76, 139, 139, 139, 139, 139, 139, 32.3423 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3424 + 139, 139, 139, 139, 139, 138, 0, 187, 109, 49, 191, 191, 191, 191, 191, 191, 32.3425 + 191, 191, 57, 24, 234, 255, 255, 255, 255, 108, 0, 92, 191, 191, 191, 191, 32.3426 + 191, 191, 191, 191, 89, 17, 10, 78, 139, 139, 139, 139, 139, 139, 139, 139, 32.3427 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 158, 32.3428 + 123, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 26, 139, 139, 32.3429 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3430 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 97, 0, 187, 109, 49, 191, 191, 32.3431 + 191, 191, 191, 191, 191, 191, 57, 128, 255, 255, 255, 255, 255, 249, 130, 4, 32.3432 + 143, 191, 191, 191, 191, 191, 191, 191, 126, 0, 41, 33, 138, 150, 150, 150, 32.3433 + 143, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3434 + 139, 139, 139, 140, 106, 25, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3435 + 170, 21, 137, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3436 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 64, 57, 190, 32.3437 + 109, 49, 191, 191, 191, 191, 191, 191, 191, 191, 57, 134, 255, 255, 255, 255, 32.3438 + 255, 255, 235, 33, 48, 188, 191, 191, 191, 191, 191, 191, 187, 0, 102, 0, 32.3439 + 161, 204, 204, 204, 190, 154, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3440 + 139, 139, 139, 139, 139, 139, 139, 139, 161, 0, 213, 255, 255, 255, 255, 255, 32.3441 + 255, 255, 255, 255, 170, 0, 107, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3442 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3443 + 139, 64, 22, 188, 109, 15, 173, 191, 191, 191, 191, 191, 191, 191, 57, 134, 32.3444 + 255, 255, 255, 255, 255, 255, 255, 192, 2, 153, 191, 191, 191, 191, 191, 191, 32.3445 + 188, 21, 79, 19, 33, 64, 64, 95, 140, 160, 176, 140, 139, 139, 139, 139, 32.3446 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 138, 0, 182, 255, 32.3447 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 13, 77, 139, 139, 139, 139, 139, 32.3448 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3449 + 139, 139, 139, 139, 139, 115, 0, 173, 179, 0, 165, 191, 191, 191, 191, 191, 32.3450 + 191, 191, 57, 79, 254, 255, 255, 255, 255, 255, 255, 255, 7, 153, 191, 191, 32.3451 + 191, 191, 191, 191, 191, 70, 89, 64, 59, 114, 70, 38, 29, 5, 12, 45, 32.3452 + 60, 110, 112, 129, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3453 + 138, 18, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 56, 139, 32.3454 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3455 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 130, 20, 80, 184, 0, 133, 191, 32.3456 + 191, 191, 191, 191, 191, 191, 118, 19, 225, 255, 255, 255, 255, 255, 255, 249, 32.3457 + 7, 153, 191, 191, 191, 191, 191, 191, 191, 70, 89, 64, 105, 204, 204, 204, 32.3458 + 194, 165, 143, 89, 33, 12, 7, 16, 69, 113, 131, 139, 139, 139, 139, 139, 32.3459 + 139, 139, 139, 139, 139, 78, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3460 + 255, 114, 30, 138, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3461 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 144, 93, 12, 32.3462 + 164, 46, 91, 191, 191, 191, 191, 191, 191, 191, 172, 10, 92, 252, 255, 255, 32.3463 + 255, 255, 255, 132, 0, 153, 191, 191, 191, 191, 191, 191, 188, 21, 89, 64, 32.3464 + 105, 204, 204, 204, 204, 204, 204, 204, 204, 204, 178, 93, 34, 0, 5, 43, 32.3465 + 52, 95, 95, 132, 139, 139, 139, 139, 139, 53, 114, 255, 255, 255, 255, 255, 32.3466 + 255, 255, 255, 255, 255, 207, 0, 147, 139, 139, 139, 139, 139, 139, 139, 139, 32.3467 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3468 + 139, 139, 170, 3, 141, 81, 18, 180, 191, 191, 191, 191, 191, 191, 191, 99, 32.3469 + 0, 88, 225, 254, 255, 255, 160, 28, 76, 188, 191, 191, 191, 191, 191, 191, 32.3470 + 187, 0, 158, 60, 6, 12, 55, 149, 204, 204, 204, 204, 204, 204, 204, 204, 32.3471 + 198, 191, 123, 97, 41, 38, 0, 15, 139, 139, 139, 139, 139, 53, 57, 255, 32.3472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 0, 176, 139, 139, 139, 139, 32.3473 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3474 + 139, 139, 139, 139, 139, 139, 142, 7, 75, 145, 1, 100, 191, 191, 191, 191, 32.3475 + 191, 191, 191, 186, 102, 12, 18, 46, 46, 46, 5, 38, 174, 191, 191, 191, 32.3476 + 191, 191, 191, 191, 187, 0, 162, 60, 83, 108, 43, 0, 55, 119, 194, 204, 32.3477 + 204, 204, 204, 204, 204, 204, 204, 204, 204, 203, 166, 157, 160, 143, 140, 139, 32.3478 + 139, 97, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 18, 115, 32.3479 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3480 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 86, 4, 169, 48, 18, 32.3481 + 157, 191, 191, 191, 191, 191, 191, 191, 191, 179, 132, 132, 132, 132, 140, 191, 32.3482 + 191, 191, 191, 191, 191, 191, 191, 191, 135, 0, 158, 41, 71, 162, 175, 140, 32.3483 + 64, 9, 18, 101, 186, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 32.3484 + 204, 204, 189, 166, 139, 107, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3485 + 255, 255, 57, 87, 150, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3486 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3487 + 18, 43, 168, 11, 54, 181, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3488 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 112, 43, 175, 0, 32.3489 + 82, 139, 144, 177, 204, 188, 93, 19, 8, 98, 180, 204, 204, 204, 204, 204, 32.3490 + 204, 204, 204, 204, 204, 204, 204, 203, 181, 107, 14, 255, 255, 255, 255, 255, 32.3491 + 255, 255, 255, 255, 255, 255, 138, 9, 123, 139, 139, 139, 139, 139, 139, 139, 32.3492 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3493 + 139, 139, 139, 139, 81, 0, 132, 122, 1, 78, 185, 191, 191, 191, 191, 191, 32.3494 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 188, 32.3495 + 49, 46, 106, 2, 126, 139, 139, 139, 150, 182, 200, 185, 84, 11, 14, 36, 32.3496 + 106, 193, 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, 203, 128, 13, 248, 32.3497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 0, 97, 139, 139, 139, 32.3498 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3499 + 139, 139, 139, 139, 139, 139, 139, 139, 138, 41, 67, 191, 90, 0, 60, 191, 32.3500 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3501 + 191, 191, 191, 131, 0, 89, 59, 41, 139, 139, 139, 139, 139, 139, 144, 173, 32.3502 + 204, 192, 141, 65, 10, 17, 100, 186, 204, 204, 204, 204, 204, 204, 204, 204, 32.3503 + 204, 132, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 32.3504 + 30, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3505 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 140, 170, 176, 176, 107, 7, 143, 32.3506 + 189, 100, 2, 97, 177, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 32.3507 + 191, 191, 191, 191, 191, 191, 162, 9, 45, 152, 16, 72, 139, 139, 139, 139, 32.3508 + 139, 139, 139, 139, 142, 156, 176, 199, 160, 65, 19, 7, 96, 179, 204, 204, 32.3509 + 204, 204, 204, 204, 204, 162, 21, 170, 255, 255, 255, 255, 255, 255, 255, 255, 32.3510 + 255, 255, 255, 144, 3, 117, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3511 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 143, 190, 204, 173, 32.3512 + 109, 26, 5, 32, 178, 191, 101, 2, 39, 173, 191, 191, 191, 191, 191, 191, 32.3513 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 131, 8, 21, 147, 86, 5, 139, 32.3514 + 154, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 151, 174, 191, 180, 107, 32.3515 + 9, 14, 83, 146, 199, 204, 204, 204, 201, 152, 22, 170, 255, 255, 255, 255, 32.3516 + 255, 255, 255, 255, 255, 255, 255, 238, 30, 74, 139, 139, 139, 139, 139, 139, 32.3517 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 144, 173, 32.3518 + 204, 194, 79, 1, 2, 86, 153, 0, 40, 175, 191, 112, 0, 33, 172, 191, 32.3519 + 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 126, 5, 46, 165, 32.3520 + 165, 0, 0, 64, 195, 168, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3521 + 139, 139, 139, 139, 123, 86, 34, 0, 41, 129, 185, 200, 165, 139, 22, 170, 32.3522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 30, 135, 139, 32.3523 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3524 + 139, 150, 193, 200, 138, 14, 15, 86, 150, 157, 19, 8, 2, 33, 173, 190, 32.3525 + 163, 30, 6, 85, 152, 189, 191, 191, 191, 191, 191, 191, 191, 191, 166, 85, 32.3526 + 2, 29, 170, 179, 21, 44, 79, 0, 58, 192, 161, 139, 139, 139, 139, 139, 32.3527 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 137, 85, 28, 13, 7, 38, 32.3528 + 99, 98, 4, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3529 + 187, 0, 73, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3530 + 139, 139, 139, 139, 173, 192, 91, 31, 5, 27, 163, 204, 155, 12, 14, 136, 32.3531 + 81, 2, 61, 168, 191, 175, 108, 18, 0, 32, 90, 150, 175, 186, 191, 191, 32.3532 + 182, 116, 12, 18, 107, 174, 154, 61, 1, 156, 201, 93, 1, 52, 156, 173, 32.3533 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3534 + 139, 126, 97, 33, 2, 9, 13, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.3535 + 255, 255, 255, 255, 251, 60, 9, 125, 139, 139, 139, 139, 139, 139, 139, 139, 32.3536 + 139, 139, 139, 139, 139, 139, 142, 169, 121, 34, 0, 65, 162, 204, 204, 148, 32.3537 + 11, 63, 172, 175, 139, 88, 1, 25, 168, 191, 191, 183, 134, 64, 36, 0, 32.3538 + 0, 39, 56, 56, 23, 0, 57, 182, 191, 149, 39, 0, 0, 102, 204, 204, 32.3539 + 139, 17, 11, 147, 156, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3540 + 139, 139, 139, 139, 139, 139, 139, 139, 106, 55, 0, 170, 255, 255, 255, 255, 32.3541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 17, 58, 137, 139, 139, 139, 32.3542 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 151, 139, 27, 8, 74, 168, 202, 32.3543 + 204, 204, 143, 5, 39, 200, 188, 139, 139, 139, 91, 5, 23, 117, 191, 191, 32.3544 + 191, 191, 187, 182, 120, 110, 110, 110, 110, 140, 187, 191, 169, 36, 0, 93, 32.3545 + 85, 2, 129, 204, 204, 170, 37, 4, 96, 153, 139, 139, 139, 139, 139, 139, 32.3546 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 76, 11, 234, 32.3547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 0, 32.3548 + 80, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 128, 42, 4, 45, 32.3549 + 145, 204, 204, 204, 204, 136, 8, 61, 183, 182, 143, 139, 139, 139, 139, 118, 32.3550 + 27, 2, 54, 106, 128, 131, 132, 187, 191, 191, 191, 191, 191, 191, 181, 136, 32.3551 + 19, 12, 81, 153, 187, 40, 21, 168, 204, 204, 197, 77, 0, 62, 154, 139, 32.3552 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3553 + 139, 53, 58, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3554 + 255, 255, 247, 51, 6, 116, 139, 139, 139, 139, 139, 139, 139, 139, 148, 102, 32.3555 + 20, 0, 113, 204, 204, 204, 204, 204, 132, 4, 79, 193, 157, 139, 139, 139, 32.3556 + 139, 139, 139, 139, 128, 73, 21, 0, 6, 17, 17, 42, 117, 127, 127, 127, 32.3557 + 113, 55, 20, 0, 31, 114, 139, 139, 172, 171, 10, 40, 197, 204, 204, 203, 32.3558 + 96, 10, 57, 154, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3559 + 139, 139, 139, 139, 138, 35, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3560 + 255, 255, 255, 255, 255, 255, 255, 216, 9, 55, 139, 139, 139, 139, 139, 139, 32.3561 + 139, 124, 89, 2, 44, 173, 203, 204, 204, 204, 192, 57, 2, 89, 179, 141, 32.3562 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 114, 20, 4, 35, 35, 35, 21, 32.3563 + 14, 29, 29, 29, 29, 50, 81, 105, 137, 139, 139, 139, 140, 162, 153, 13, 32.3564 + 56, 192, 204, 204, 204, 156, 13, 51, 140, 139, 139, 139, 139, 139, 139, 139, 32.3565 + 139, 139, 139, 139, 139, 139, 139, 139, 138, 0, 172, 255, 255, 255, 255, 255, 32.3566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 8, 133, 139, 32.3567 + 139, 139, 139, 119, 35, 3, 20, 114, 199, 204, 204, 204, 204, 186, 51, 8, 32.3568 + 86, 147, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 99, 9, 28, 32.3569 + 61, 61, 61, 61, 67, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3570 + 139, 139, 170, 156, 15, 51, 193, 204, 204, 204, 158, 15, 11, 134, 140, 139, 32.3571 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 93, 0, 213, 255, 32.3572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3573 + 228, 19, 45, 139, 139, 139, 88, 2, 25, 156, 204, 204, 204, 204, 204, 204, 32.3574 + 147, 10, 17, 150, 151, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3575 + 139, 88, 0, 49, 61, 61, 61, 61, 67, 139, 139, 139, 139, 139, 139, 139, 32.3576 + 139, 139, 139, 139, 139, 139, 139, 165, 163, 17, 47, 189, 204, 204, 204, 164, 32.3577 + 18, 10, 113, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3578 + 66, 40, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3579 + 255, 255, 255, 255, 255, 116, 12, 124, 139, 140, 44, 35, 181, 204, 204, 204, 32.3580 + 204, 204, 204, 142, 4, 21, 161, 143, 139, 139, 139, 139, 139, 139, 139, 139, 32.3581 + 139, 139, 139, 139, 139, 38, 11, 58, 61, 61, 61, 61, 67, 139, 139, 139, 32.3582 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 158, 144, 1, 38, 32.3583 + 187, 204, 204, 204, 171, 39, 2, 49, 134, 139, 139, 139, 139, 139, 139, 139, 32.3584 + 139, 139, 139, 133, 23, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 10, 64, 139, 166, 180, 189, 32.3586 + 204, 204, 204, 204, 204, 204, 134, 7, 25, 154, 146, 139, 139, 139, 139, 139, 32.3587 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 18, 29, 61, 61, 61, 61, 61, 32.3588 + 70, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3589 + 140, 166, 112, 3, 56, 201, 204, 204, 204, 198, 79, 0, 46, 137, 139, 139, 32.3590 + 139, 139, 139, 139, 139, 139, 139, 115, 0, 165, 255, 255, 255, 255, 255, 255, 32.3591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 1, 32.3592 + 104, 170, 204, 204, 204, 204, 204, 204, 204, 130, 4, 17, 138, 139, 139, 139, 32.3593 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 113, 5, 42, 61, 32.3594 + 61, 61, 61, 61, 97, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3595 + 139, 139, 139, 139, 139, 139, 158, 125, 0, 89, 204, 204, 204, 204, 203, 82, 32.3596 + 0, 48, 115, 139, 139, 139, 139, 139, 139, 139, 139, 76, 0, 255, 255, 255, 32.3597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3598 + 255, 255, 232, 47, 31, 167, 204, 204, 204, 204, 204, 204, 120, 2, 24, 123, 32.3599 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3600 + 103, 5, 60, 61, 61, 61, 61, 61, 97, 139, 139, 139, 139, 139, 139, 139, 32.3601 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 151, 125, 7, 81, 199, 32.3602 + 204, 204, 204, 202, 157, 14, 2, 60, 137, 139, 139, 139, 139, 139, 128, 7, 32.3603 + 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3604 + 255, 255, 255, 255, 255, 255, 255, 190, 0, 91, 202, 204, 204, 204, 203, 114, 32.3605 + 5, 49, 125, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3606 + 139, 139, 139, 139, 98, 5, 61, 61, 61, 61, 61, 61, 97, 139, 139, 139, 32.3607 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3608 + 156, 133, 6, 77, 198, 204, 204, 204, 204, 182, 94, 5, 41, 139, 139, 139, 32.3609 + 139, 139, 66, 4, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 96, 13, 168, 202, 32.3611 + 204, 204, 110, 0, 71, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3612 + 139, 139, 139, 139, 139, 139, 139, 139, 49, 5, 61, 61, 61, 61, 61, 61, 32.3613 + 97, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3614 + 139, 139, 139, 139, 139, 150, 122, 0, 68, 200, 204, 204, 204, 204, 204, 135, 32.3615 + 90, 157, 139, 139, 139, 127, 10, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.3616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3617 + 227, 18, 19, 136, 165, 131, 1, 47, 138, 139, 139, 139, 139, 139, 139, 139, 32.3618 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 49, 28, 61, 61, 32.3619 + 61, 61, 61, 61, 97, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3620 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 153, 77, 0, 62, 194, 204, 32.3621 + 204, 204, 204, 204, 204, 193, 144, 139, 139, 90, 0, 201, 255, 255, 255, 255, 32.3622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3623 + 255, 255, 255, 255, 255, 164, 7, 48, 135, 123, 67, 131, 139, 139, 139, 139, 32.3624 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3625 + 49, 28, 61, 61, 61, 61, 61, 61, 97, 139, 139, 139, 139, 139, 139, 139, 32.3626 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 143, 32.3627 + 123, 11, 56, 188, 204, 204, 204, 204, 204, 204, 163, 139, 139, 43, 73, 253, 32.3628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 5, 49, 138, 139, 139, 32.3630 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3631 + 139, 139, 139, 135, 13, 28, 61, 61, 61, 61, 61, 61, 97, 139, 139, 139, 32.3632 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3633 + 139, 139, 139, 139, 139, 137, 14, 13, 125, 204, 204, 204, 204, 204, 163, 139, 32.3634 + 110, 4, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 32.3636 + 0, 92, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3637 + 139, 139, 139, 139, 139, 139, 139, 134, 0, 43, 61, 61, 61, 61, 61, 61, 32.3638 + 127, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3639 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 124, 35, 0, 139, 204, 204, 32.3640 + 204, 204, 163, 137, 36, 17, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3642 + 255, 255, 255, 249, 97, 4, 86, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3643 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 134, 0, 52, 61, 61, 32.3644 + 61, 61, 61, 77, 137, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3645 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 163, 32.3646 + 173, 194, 204, 204, 204, 191, 142, 58, 0, 161, 255, 255, 255, 255, 255, 255, 32.3647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3648 + 255, 255, 255, 255, 255, 255, 255, 255, 228, 37, 1, 84, 139, 139, 139, 139, 32.3649 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 134, 32.3650 + 0, 52, 61, 61, 61, 61, 61, 91, 139, 139, 139, 139, 139, 139, 139, 139, 32.3651 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3652 + 139, 139, 139, 143, 169, 204, 204, 204, 186, 149, 96, 6, 87, 247, 255, 255, 32.3653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 50, 0, 32.3655 + 77, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3656 + 139, 139, 139, 116, 0, 52, 61, 61, 61, 61, 61, 110, 139, 139, 139, 139, 32.3657 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3658 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 140, 140, 140, 139, 92, 1, 98, 32.3659 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3661 + 255, 255, 234, 52, 1, 73, 137, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3662 + 139, 139, 139, 139, 139, 139, 139, 104, 0, 52, 61, 61, 61, 61, 61, 110, 32.3663 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3664 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3665 + 136, 26, 97, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3667 + 255, 255, 255, 255, 255, 255, 255, 236, 130, 0, 42, 127, 139, 139, 139, 139, 32.3668 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 104, 0, 52, 61, 61, 32.3669 + 61, 61, 62, 131, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3670 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3671 + 139, 139, 139, 139, 75, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 152, 27, 21, 32.3674 + 112, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 104, 32.3675 + 0, 52, 61, 61, 61, 61, 63, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3676 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3677 + 139, 139, 139, 139, 139, 139, 152, 136, 5, 122, 255, 255, 255, 255, 255, 255, 32.3678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3680 + 255, 255, 183, 40, 4, 84, 133, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3681 + 139, 139, 139, 107, 0, 52, 61, 61, 61, 61, 61, 114, 139, 139, 139, 139, 32.3682 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3683 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 134, 150, 9, 32, 226, 255, 255, 32.3684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3686 + 255, 255, 255, 255, 255, 255, 255, 229, 74, 0, 37, 113, 139, 139, 139, 139, 32.3687 + 139, 139, 139, 139, 139, 139, 139, 134, 0, 52, 61, 61, 61, 61, 61, 110, 32.3688 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3689 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 116, 43, 0, 99, 32.3690 + 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 132, 21, 5, 32.3693 + 107, 136, 139, 139, 139, 139, 139, 139, 139, 139, 139, 101, 0, 52, 61, 61, 32.3694 + 61, 61, 61, 110, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3695 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 119, 32.3696 + 9, 0, 114, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3699 + 255, 255, 207, 78, 8, 25, 71, 125, 139, 139, 139, 139, 139, 139, 139, 80, 32.3700 + 7, 56, 61, 61, 61, 61, 65, 124, 139, 139, 139, 139, 139, 139, 139, 139, 32.3701 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3702 + 139, 139, 132, 34, 1, 120, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3705 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 86, 0, 7, 58, 121, 139, 139, 32.3706 + 139, 139, 139, 101, 60, 75, 61, 61, 61, 66, 110, 139, 139, 139, 139, 139, 32.3707 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3708 + 139, 139, 139, 139, 139, 139, 43, 21, 140, 255, 255, 255, 255, 255, 255, 255, 32.3709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 216, 100, 32.3712 + 11, 14, 78, 129, 139, 139, 139, 139, 139, 136, 108, 108, 108, 126, 139, 139, 32.3713 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3714 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 47, 1, 143, 255, 255, 255, 255, 32.3715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3718 + 255, 255, 255, 255, 223, 63, 3, 13, 74, 128, 139, 139, 139, 139, 139, 139, 32.3719 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3720 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 124, 32, 6, 143, 255, 32.3721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 64, 0, 13, 66, 109, 32.3725 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3726 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 141, 102, 17, 32.3727 + 0, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.3731 + 202, 122, 25, 0, 14, 57, 105, 136, 139, 139, 139, 139, 139, 139, 139, 139, 32.3732 + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 125, 32.3733 + 109, 29, 0, 67, 227, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3737 + 255, 255, 255, 255, 255, 255, 235, 181, 101, 27, 0, 24, 70, 100, 122, 122, 32.3738 + 123, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, 32.3739 + 117, 70, 20, 10, 19, 74, 191, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.3740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 190, 102, 32.3744 + 60, 0, 0, 0, 2, 35, 62, 87, 137, 139, 139, 139, 139, 139, 139, 139, 32.3745 + 139, 139, 115, 72, 3, 0, 90, 170, 230, 255, 255, 255, 255, 255, 255, 255, 32.3746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3750 + 255, 255, 255, 255, 254, 254, 254, 230, 158, 92, 54, 0, 0, 0, 0, 0, 32.3751 + 36, 52, 52, 52, 31, 0, 0, 43, 75, 191, 254, 255, 255, 255, 255, 255, 32.3752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 222, 32.3757 + 222, 204, 179, 154, 127, 127, 127, 127, 127, 187, 222, 244, 255, 255, 255, 255, 32.3758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.3765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.3766 +/* Define image 'choose' of size 524x49x1x3 and type 'const unsigned char' */ 32.3767 +const unsigned char data_choose[] = { 32.3768 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3769 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3770 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3771 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.3772 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3773 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3774 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3775 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3776 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3777 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3778 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3779 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3780 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3781 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3782 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3783 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3784 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3785 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3786 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3787 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.3788 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3789 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3790 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3791 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3792 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3793 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 32.3794 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3795 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3796 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3797 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3798 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3799 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3800 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3801 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3802 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 20, 19, 14, 14, 15, 32.3803 + 14, 14, 14, 27, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3804 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3805 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3806 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3807 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3808 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3809 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.3810 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3811 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3812 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3813 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3814 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3815 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3816 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3817 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3818 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3819 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3820 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 20, 19, 32.3821 + 14, 14, 14, 14, 15, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3822 + 15, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.3823 + 14, 14, 14, 14, 14, 14, 17, 17, 14, 14, 14, 14, 14, 16, 20, 26, 32.3824 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3825 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3826 + 14, 14, 15, 15, 15, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.3827 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3828 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3829 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3830 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3831 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3832 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3833 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3834 + 14, 14, 14, 14, 19, 15, 19, 24, 27, 24, 22, 22, 29, 28, 27, 27, 32.3835 + 25, 21, 21, 21, 24, 27, 35, 36, 27, 14, 14, 14, 14, 14, 14, 52, 32.3836 + 44, 37, 21, 23, 26, 19, 28, 25, 14, 14, 16, 14, 14, 14, 14, 14, 32.3837 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 32.3838 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3839 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3840 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3841 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3842 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3843 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3844 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3845 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3846 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3847 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3848 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3849 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3850 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3851 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3852 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3853 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 36, 55, 38, 31, 35, 37, 32.3854 + 41, 44, 29, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 34, 32.3855 + 49, 31, 20, 24, 29, 27, 32, 40, 24, 14, 14, 14, 14, 14, 14, 15, 32.3856 + 14, 14, 14, 14, 29, 17, 22, 27, 34, 40, 47, 55, 20, 14, 14, 14, 32.3857 + 16, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3858 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.3859 + 15, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3860 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3861 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3862 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3863 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3864 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3865 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3866 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32, 53, 32.3867 + 16, 14, 14, 14, 14, 17, 21, 25, 24, 24, 21, 21, 19, 17, 16, 17, 32.3868 + 14, 18, 27, 32, 21, 14, 14, 14, 14, 14, 14, 43, 43, 33, 16, 20, 32.3869 + 18, 14, 27, 24, 14, 14, 21, 16, 16, 15, 14, 14, 14, 14, 14, 14, 32.3870 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 32.3871 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3872 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3873 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3874 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3875 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3876 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3877 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3878 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3879 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 32.3880 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3881 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3882 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3883 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.3884 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 32.3885 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3886 + 14, 18, 14, 14, 14, 14, 24, 49, 33, 24, 26, 30, 37, 47, 33, 14, 32.3887 + 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 45, 57, 31, 14, 18, 32.3888 + 18, 18, 26, 37, 23, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.3889 + 22, 14, 17, 21, 27, 33, 41, 47, 37, 15, 14, 14, 18, 14, 14, 16, 32.3890 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3891 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.3892 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3893 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.3894 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3895 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3896 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3897 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3898 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3899 + 15, 14, 14, 14, 15, 14, 14, 14, 14, 47, 65, 36, 15, 14, 14, 14, 32.3900 + 14, 15, 18, 23, 24, 26, 25, 23, 20, 19, 16, 16, 15, 14, 19, 28, 32.3901 + 14, 14, 16, 14, 14, 14, 14, 69, 36, 32, 14, 14, 14, 21, 17, 20, 32.3902 + 14, 14, 15, 20, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 15, 32.3903 + 16, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 15, 14, 15, 15, 18, 32.3904 + 19, 18, 14, 14, 19, 14, 14, 14, 14, 18, 14, 14, 16, 14, 14, 15, 32.3905 + 16, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.3906 + 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 32.3907 + 15, 16, 15, 14, 14, 14, 14, 15, 15, 15, 15, 15, 14, 16, 14, 14, 32.3908 + 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3909 + 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 32.3910 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 16, 14, 32.3911 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 14, 14, 14, 32.3912 + 14, 14, 14, 15, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3913 + 15, 15, 16, 16, 20, 16, 15, 15, 14, 14, 15, 17, 14, 15, 15, 16, 32.3914 + 16, 14, 14, 14, 14, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3915 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.3916 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 15, 18, 15, 14, 32.3917 + 14, 14, 14, 14, 14, 15, 14, 14, 15, 16, 31, 15, 15, 15, 15, 15, 32.3918 + 14, 14, 14, 14, 14, 15, 14, 14, 15, 16, 14, 14, 14, 15, 14, 14, 32.3919 + 14, 14, 32, 41, 31, 22, 24, 23, 24, 27, 25, 18, 14, 17, 14, 14, 32.3920 + 22, 15, 21, 14, 14, 14, 38, 67, 44, 26, 14, 15, 16, 20, 14, 20, 32.3921 + 27, 14, 14, 14, 14, 14, 19, 14, 14, 14, 14, 38, 24, 14, 14, 18, 32.3922 + 21, 24, 31, 41, 24, 14, 14, 16, 14, 14, 19, 14, 15, 15, 15, 15, 32.3923 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3924 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.3925 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 15, 14, 32.3926 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 15, 15, 32.3927 + 15, 14, 14, 14, 14, 14, 14, 20, 18, 14, 14, 15, 19, 14, 14, 14, 32.3928 + 14, 14, 14, 15, 14, 14, 15, 14, 14, 14, 14, 15, 16, 14, 14, 14, 32.3929 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 16, 14, 14, 32.3930 + 14, 14, 23, 14, 14, 21, 14, 14, 14, 21, 14, 14, 14, 14, 14, 14, 32.3931 + 14, 14, 14, 14, 14, 14, 14, 16, 17, 14, 14, 14, 15, 14, 14, 14, 32.3932 + 14, 14, 14, 14, 17, 53, 55, 37, 15, 14, 14, 14, 14, 14, 18, 24, 32.3933 + 22, 22, 21, 20, 17, 15, 14, 14, 14, 14, 16, 27, 14, 14, 14, 14, 32.3934 + 14, 14, 14, 64, 37, 29, 14, 14, 14, 24, 24, 14, 14, 16, 15, 16, 32.3935 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3936 + 14, 15, 22, 19, 14, 14, 14, 14, 15, 15, 14, 15, 15, 15, 14, 14, 32.3937 + 14, 15, 27, 24, 14, 14, 14, 18, 17, 14, 14, 14, 14, 14, 15, 17, 32.3938 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 32.3939 + 14, 17, 19, 18, 18, 15, 15, 15, 15, 15, 16, 15, 14, 14, 14, 14, 32.3940 + 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3941 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3942 + 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 16, 17, 14, 14, 14, 32.3943 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 19, 32.3944 + 17, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.3945 + 15, 14, 14, 16, 15, 14, 14, 14, 15, 14, 16, 19, 15, 18, 21, 19, 32.3946 + 18, 16, 27, 28, 19, 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 32.3947 + 14, 15, 15, 16, 14, 14, 14, 14, 18, 14, 14, 15, 14, 14, 14, 14, 32.3948 + 14, 14, 14, 14, 15, 14, 14, 15, 18, 15, 14, 14, 14, 14, 14, 14, 32.3949 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 20, 15, 15, 14, 14, 14, 14, 32.3950 + 15, 14, 14, 21, 21, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.3951 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32, 41, 32.3952 + 30, 19, 21, 21, 21, 24, 23, 16, 14, 14, 14, 15, 19, 14, 15, 14, 32.3953 + 14, 24, 76, 64, 42, 23, 14, 14, 14, 18, 14, 19, 27, 14, 14, 14, 32.3954 + 16, 14, 14, 14, 14, 14, 18, 60, 24, 15, 15, 16, 18, 22, 27, 32, 32.3955 + 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 15, 14, 15, 15, 15, 15, 32.3956 + 14, 14, 14, 14, 16, 16, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.3957 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3958 + 18, 15, 14, 14, 15, 19, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3959 + 14, 14, 14, 14, 14, 14, 16, 19, 18, 21, 27, 23, 15, 14, 14, 15, 32.3960 + 24, 14, 14, 14, 14, 18, 15, 15, 15, 15, 15, 18, 16, 14, 14, 17, 32.3961 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 32.3962 + 15, 15, 14, 15, 16, 18, 15, 15, 14, 14, 15, 20, 14, 14, 14, 14, 32.3963 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3964 + 15, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3965 + 71, 59, 46, 36, 25, 21, 20, 21, 21, 21, 29, 37, 37, 37, 36, 32, 32.3966 + 30, 25, 21, 19, 14, 15, 25, 31, 14, 14, 14, 14, 14, 14, 42, 67, 32.3967 + 39, 29, 18, 18, 15, 21, 31, 14, 14, 16, 14, 16, 16, 15, 14, 14, 32.3968 + 14, 14, 18, 16, 14, 14, 14, 14, 14, 14, 15, 14, 24, 15, 14, 14, 32.3969 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 23, 15, 14, 14, 32.3970 + 20, 21, 15, 15, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3971 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.3972 + 16, 15, 16, 16, 18, 15, 15, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.3973 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.3974 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 14, 14, 14, 14, 32.3975 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.3976 + 14, 14, 14, 14, 16, 14, 14, 17, 16, 15, 16, 15, 14, 14, 14, 14, 32.3977 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3978 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 20, 16, 15, 14, 32.3979 + 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 32.3980 + 15, 15, 15, 16, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3981 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3982 + 14, 14, 14, 14, 16, 18, 15, 15, 14, 14, 14, 14, 14, 14, 14, 18, 32.3983 + 19, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3984 + 14, 14, 14, 18, 14, 15, 14, 14, 14, 14, 38, 49, 34, 23, 22, 22, 32.3985 + 21, 24, 21, 16, 14, 14, 14, 18, 14, 14, 14, 14, 14, 53, 84, 60, 32.3986 + 39, 21, 19, 14, 16, 21, 16, 21, 29, 14, 14, 14, 16, 14, 14, 14, 32.3987 + 14, 14, 55, 64, 27, 19, 20, 18, 18, 23, 22, 20, 14, 14, 16, 14, 32.3988 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 20, 14, 14, 14, 32.3989 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3990 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3991 + 14, 15, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.3992 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 16, 14, 14, 32.3993 + 14, 15, 15, 15, 16, 18, 18, 16, 15, 14, 14, 14, 19, 15, 14, 14, 32.3994 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 15, 32.3995 + 15, 16, 16, 15, 14, 14, 14, 14, 18, 14, 14, 19, 16, 14, 15, 15, 32.3996 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 14, 15, 32.3997 + 15, 16, 18, 15, 14, 14, 14, 14, 14, 14, 14, 21, 78, 55, 40, 33, 32.3998 + 34, 34, 33, 32, 31, 28, 32, 42, 48, 49, 47, 45, 42, 38, 34, 27, 32.3999 + 24, 19, 24, 22, 14, 14, 16, 16, 14, 14, 76, 72, 46, 34, 23, 21, 32.4000 + 31, 18, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4001 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4002 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 15, 20, 32.4003 + 14, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4004 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 21, 32.4005 + 23, 15, 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4006 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4007 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4008 + 14, 14, 14, 14, 14, 14, 16, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.4009 + 15, 14, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4010 + 14, 14, 14, 14, 14, 14, 14, 14, 20, 15, 14, 14, 14, 14, 14, 14, 32.4011 + 14, 14, 14, 14, 14, 14, 20, 19, 15, 14, 14, 15, 14, 14, 14, 14, 32.4012 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 16, 16, 15, 32.4013 + 20, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 21, 32.4014 + 14, 18, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.4015 + 18, 18, 16, 21, 14, 15, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 32.4016 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.4017 + 14, 14, 14, 14, 14, 14, 46, 63, 44, 31, 29, 29, 27, 28, 24, 18, 32.4018 + 14, 14, 14, 17, 14, 14, 14, 14, 14, 78, 76, 61, 41, 24, 30, 20, 32.4019 + 19, 25, 19, 27, 32, 14, 14, 14, 14, 14, 14, 14, 14, 14, 78, 53, 32.4020 + 32, 24, 24, 20, 25, 30, 20, 14, 14, 14, 14, 14, 15, 16, 14, 14, 32.4021 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 19, 21, 19, 14, 14, 32.4022 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4023 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 18, 18, 32.4024 + 14, 29, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4025 + 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 15, 16, 32.4026 + 16, 18, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4027 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 21, 32.4028 + 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.4029 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 15, 15, 18, 18, 15, 32.4030 + 14, 14, 14, 14, 14, 14, 14, 69, 59, 49, 39, 32, 40, 44, 41, 37, 32.4031 + 30, 21, 21, 27, 31, 33, 33, 31, 31, 27, 25, 19, 14, 14, 14, 14, 32.4032 + 14, 14, 15, 14, 14, 14, 97, 75, 57, 45, 34, 24, 43, 21, 17, 14, 32.4033 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4034 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4035 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 14, 14, 32.4036 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4037 + 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 15, 16, 14, 14, 14, 14, 32.4038 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4039 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4040 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4041 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 16, 14, 32.4042 + 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4043 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4044 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4045 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 32.4046 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4047 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4048 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4049 + 14, 14, 14, 14, 17, 14, 14, 16, 14, 14, 16, 14, 14, 14, 14, 14, 32.4050 + 14, 14, 59, 67, 46, 41, 39, 37, 35, 34, 28, 18, 14, 14, 16, 14, 32.4051 + 14, 14, 14, 14, 45, 95, 72, 60, 50, 31, 37, 27, 27, 33, 26, 32, 32.4052 + 39, 14, 14, 14, 14, 15, 14, 14, 14, 24, 67, 53, 40, 31, 27, 29, 32.4053 + 36, 38, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4054 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.4055 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4056 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4057 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4058 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 32.4059 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4060 + 14, 14, 14, 14, 14, 14, 15, 18, 14, 15, 15, 16, 14, 14, 14, 14, 32.4061 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4062 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 15, 15, 14, 14, 14, 14, 32.4063 + 14, 14, 19, 92, 61, 45, 34, 35, 45, 50, 43, 32, 20, 14, 14, 14, 32.4064 + 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 32.4065 + 14, 19, 104, 81, 65, 57, 44, 31, 41, 32, 14, 14, 15, 43, 65, 43, 32.4066 + 57, 54, 54, 57, 65, 63, 56, 52, 14, 14, 14, 14, 14, 14, 14, 14, 32.4067 + 21, 14, 14, 14, 14, 27, 47, 57, 72, 75, 76, 81, 84, 89, 89, 85, 32.4068 + 75, 36, 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 32.4069 + 14, 14, 33, 63, 89, 92, 87, 87, 84, 82, 79, 67, 59, 45, 25, 14, 32.4070 + 14, 14, 14, 14, 17, 15, 14, 14, 14, 14, 14, 14, 14, 14, 27, 45, 32.4071 + 69, 67, 64, 61, 59, 59, 56, 56, 55, 47, 64, 72, 64, 79, 76, 36, 32.4072 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 24, 34, 37, 36, 34, 32.4073 + 31, 29, 29, 33, 35, 28, 16, 14, 15, 18, 14, 14, 14, 14, 14, 14, 32.4074 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 61, 87, 32.4075 + 100, 89, 75, 73, 78, 65, 31, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4076 + 20, 18, 14, 14, 19, 50, 65, 56, 50, 45, 53, 48, 24, 14, 14, 14, 32.4077 + 14, 14, 14, 14, 17, 40, 56, 59, 76, 75, 75, 81, 84, 82, 85, 85, 32.4078 + 48, 28, 14, 14, 14, 14, 14, 14, 15, 21, 14, 16, 50, 81, 72, 72, 32.4079 + 64, 61, 75, 79, 56, 24, 14, 14, 24, 29, 19, 21, 14, 22, 89, 75, 32.4080 + 67, 67, 69, 71, 65, 44, 18, 14, 18, 21, 16, 14, 14, 82, 60, 78, 32.4081 + 68, 46, 61, 60, 52, 19, 14, 22, 52, 47, 53, 60, 63, 68, 72, 75, 32.4082 + 44, 14, 14, 14, 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 69, 79, 32.4083 + 54, 48, 46, 46, 41, 39, 29, 18, 14, 15, 18, 14, 14, 14, 14, 14, 32.4084 + 89, 92, 68, 63, 57, 45, 44, 41, 36, 42, 34, 41, 45, 14, 14, 15, 32.4085 + 15, 14, 14, 14, 14, 63, 53, 45, 46, 35, 31, 36, 44, 35, 17, 14, 32.4086 + 14, 14, 14, 14, 14, 14, 14, 24, 21, 20, 21, 24, 26, 27, 30, 32, 32.4087 + 48, 40, 22, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4088 + 14, 48, 79, 72, 75, 67, 56, 60, 46, 44, 46, 48, 54, 57, 63, 67, 32.4089 + 71, 67, 69, 64, 37, 14, 14, 14, 26, 21, 18, 21, 41, 78, 93, 73, 32.4090 + 61, 60, 64, 63, 49, 28, 14, 14, 14, 16, 44, 55, 54, 56, 67, 76, 32.4091 + 60, 45, 26, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4092 + 14, 24, 50, 78, 85, 89, 84, 82, 87, 82, 71, 63, 54, 36, 16, 14, 32.4093 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 16, 85, 82, 57, 78, 68, 75, 32.4094 + 60, 44, 14, 14, 14, 31, 42, 57, 52, 48, 53, 57, 64, 63, 55, 49, 32.4095 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 59, 104, 32.4096 + 60, 44, 34, 34, 42, 42, 35, 23, 14, 14, 14, 14, 14, 14, 14, 14, 32.4097 + 14, 14, 14, 14, 14, 14, 14, 14, 27, 15, 14, 14, 14, 52, 109, 89, 32.4098 + 72, 64, 55, 45, 46, 31, 14, 32, 75, 82, 93, 68, 60, 55, 56, 63, 32.4099 + 72, 84, 90, 89, 48, 21, 14, 14, 14, 14, 14, 14, 14, 14, 16, 45, 32.4100 + 93, 100, 82, 63, 53, 49, 50, 54, 60, 68, 76, 85, 95, 100, 79, 42, 32.4101 + 14, 14, 14, 20, 14, 15, 18, 23, 15, 14, 14, 14, 75, 90, 104, 102, 32.4102 + 90, 82, 78, 73, 63, 68, 73, 78, 82, 92, 92, 76, 30, 15, 14, 14, 32.4103 + 14, 14, 14, 14, 14, 14, 14, 14, 21, 55, 93, 105, 82, 73, 69, 65, 32.4104 + 60, 61, 57, 64, 75, 79, 89, 97, 89, 113, 95, 27, 14, 14, 14, 14, 32.4105 + 14, 14, 17, 37, 78, 71, 78, 78, 79, 78, 79, 78, 78, 79, 79, 84, 32.4106 + 84, 78, 75, 75, 73, 69, 34, 14, 14, 14, 15, 15, 14, 14, 14, 14, 32.4107 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 52, 130, 120, 111, 104, 95, 32.4108 + 85, 81, 48, 29, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4109 + 14, 68, 98, 81, 73, 73, 73, 55, 18, 14, 14, 14, 14, 14, 19, 55, 32.4110 + 95, 98, 85, 63, 54, 50, 50, 55, 63, 68, 76, 85, 97, 90, 55, 27, 32.4111 + 14, 14, 14, 14, 14, 14, 14, 14, 52, 113, 107, 104, 118, 104, 114, 128, 32.4112 + 81, 24, 14, 14, 15, 15, 14, 14, 14, 19, 116, 111, 113, 102, 98, 102, 32.4113 + 92, 56, 18, 14, 14, 14, 14, 14, 14, 100, 87, 90, 81, 65, 64, 68, 32.4114 + 73, 23, 14, 52, 78, 78, 82, 87, 90, 100, 104, 107, 50, 14, 14, 15, 32.4115 + 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 79, 97, 65, 52, 50, 52, 32.4116 + 48, 44, 32, 21, 14, 15, 14, 14, 14, 14, 14, 39, 95, 73, 64, 65, 32.4117 + 55, 60, 56, 56, 44, 53, 44, 49, 53, 14, 15, 15, 15, 14, 14, 14, 32.4118 + 22, 67, 44, 41, 50, 40, 36, 43, 40, 24, 14, 14, 15, 14, 14, 54, 32.4119 + 100, 111, 104, 78, 65, 63, 63, 64, 69, 75, 81, 93, 92, 100, 105, 105, 32.4120 + 82, 50, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 75, 126, 104, 32.4121 + 97, 90, 84, 75, 56, 49, 50, 54, 57, 64, 71, 78, 95, 98, 102, 100, 32.4122 + 73, 32, 14, 14, 14, 15, 14, 14, 14, 54, 116, 111, 104, 102, 111, 113, 32.4123 + 105, 55, 16, 14, 40, 61, 69, 68, 63, 67, 69, 78, 87, 93, 93, 67, 32.4124 + 29, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32, 100, 104, 102, 100, 32.4125 + 82, 73, 69, 68, 63, 61, 69, 78, 84, 92, 76, 65, 18, 14, 14, 14, 32.4126 + 14, 14, 14, 14, 14, 14, 79, 98, 82, 92, 90, 90, 98, 84, 23, 14, 32.4127 + 30, 73, 90, 89, 69, 69, 73, 78, 82, 92, 92, 87, 43, 17, 14, 14, 32.4128 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 100, 97, 69, 48, 38, 37, 32.4129 + 38, 37, 27, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4130 + 14, 14, 14, 14, 21, 14, 14, 14, 14, 79, 116, 92, 75, 67, 63, 57, 32.4131 + 59, 23, 14, 84, 113, 75, 67, 61, 55, 49, 54, 59, 67, 73, 84, 92, 32.4132 + 120, 45, 14, 14, 15, 14, 14, 14, 14, 27, 87, 118, 105, 85, 75, 72, 32.4133 + 60, 54, 59, 60, 60, 67, 73, 75, 81, 89, 98, 102, 63, 19, 14, 14, 32.4134 + 18, 14, 14, 14, 14, 14, 32, 84, 126, 124, 118, 107, 93, 84, 82, 81, 32.4135 + 75, 72, 73, 75, 78, 79, 87, 95, 109, 60, 19, 14, 14, 14, 14, 14, 32.4136 + 14, 14, 14, 22, 85, 114, 104, 72, 67, 64, 63, 60, 64, 65, 63, 68, 32.4137 + 75, 73, 90, 92, 81, 105, 76, 14, 14, 14, 14, 14, 14, 14, 55, 126, 32.4138 + 78, 60, 64, 67, 71, 76, 81, 81, 78, 78, 73, 73, 68, 64, 60, 81, 32.4139 + 124, 128, 75, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4140 + 15, 14, 14, 14, 14, 14, 14, 84, 109, 118, 116, 90, 81, 71, 63, 63, 32.4141 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 87, 93, 72, 32.4142 + 63, 55, 63, 45, 14, 14, 14, 14, 14, 34, 104, 132, 92, 78, 72, 68, 32.4143 + 59, 57, 57, 60, 60, 65, 72, 76, 81, 89, 95, 97, 44, 14, 14, 14, 32.4144 + 14, 19, 14, 14, 47, 111, 107, 97, 92, 89, 89, 104, 64, 16, 14, 16, 32.4145 + 15, 24, 14, 14, 14, 16, 114, 109, 105, 89, 92, 93, 97, 71, 28, 14, 32.4146 + 14, 15, 14, 14, 14, 98, 79, 76, 63, 56, 67, 61, 69, 60, 36, 109, 32.4147 + 79, 78, 78, 84, 90, 87, 81, 81, 37, 14, 14, 18, 14, 14, 19, 14, 32.4148 + 14, 14, 14, 14, 14, 14, 84, 109, 79, 61, 60, 64, 60, 55, 37, 23, 32.4149 + 14, 15, 14, 14, 14, 14, 14, 87, 104, 71, 81, 65, 56, 68, 63, 61, 32.4150 + 50, 60, 48, 57, 56, 14, 16, 15, 14, 17, 14, 14, 76, 68, 45, 47, 32.4151 + 60, 47, 46, 49, 35, 15, 14, 14, 14, 15, 85, 164, 130, 93, 84, 73, 32.4152 + 63, 57, 56, 61, 63, 64, 72, 75, 84, 89, 92, 92, 95, 89, 33, 14, 32.4153 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 90, 143, 107, 95, 89, 84, 73, 32.4154 + 63, 54, 55, 54, 53, 55, 60, 63, 71, 75, 82, 87, 93, 78, 24, 14, 32.4155 + 20, 15, 25, 14, 14, 16, 100, 114, 98, 82, 82, 89, 85, 60, 28, 14, 32.4156 + 67, 56, 53, 54, 49, 63, 64, 67, 75, 82, 90, 107, 89, 29, 14, 14, 32.4157 + 14, 14, 14, 14, 14, 14, 49, 122, 118, 104, 92, 84, 82, 78, 75, 73, 32.4158 + 76, 76, 76, 78, 81, 81, 92, 95, 82, 35, 14, 14, 14, 14, 14, 14, 32.4159 + 14, 14, 54, 95, 79, 89, 73, 72, 72, 72, 53, 14, 89, 90, 92, 73, 32.4160 + 67, 65, 71, 72, 78, 82, 89, 97, 107, 35, 14, 14, 14, 14, 14, 14, 32.4161 + 14, 14, 14, 14, 14, 21, 102, 100, 82, 60, 59, 59, 46, 54, 35, 14, 32.4162 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4163 + 20, 14, 14, 14, 14, 104, 95, 93, 73, 71, 69, 65, 46, 43, 56, 84, 32.4164 + 89, 81, 76, 72, 68, 69, 71, 72, 78, 72, 84, 65, 100, 79, 16, 14, 32.4165 + 14, 14, 14, 14, 26, 90, 118, 87, 82, 102, 98, 72, 63, 50, 50, 65, 32.4166 + 57, 57, 82, 81, 79, 78, 85, 84, 82, 55, 14, 14, 15, 14, 16, 14, 32.4167 + 14, 27, 126, 120, 107, 111, 98, 89, 79, 81, 73, 57, 59, 54, 82, 78, 32.4168 + 68, 75, 72, 76, 81, 72, 78, 14, 14, 14, 14, 14, 14, 14, 14, 89, 32.4169 + 100, 79, 98, 68, 73, 67, 68, 50, 60, 69, 57, 72, 54, 61, 63, 57, 32.4170 + 79, 90, 50, 15, 14, 14, 14, 14, 14, 53, 113, 85, 59, 47, 53, 63, 32.4171 + 73, 82, 89, 95, 95, 89, 85, 72, 63, 65, 50, 59, 68, 90, 72, 60, 32.4172 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.4173 + 14, 14, 14, 41, 132, 118, 113, 89, 82, 68, 47, 50, 35, 14, 16, 14, 32.4174 + 14, 14, 17, 14, 14, 14, 14, 14, 84, 81, 75, 82, 53, 54, 56, 21, 32.4175 + 14, 14, 14, 14, 75, 118, 145, 118, 90, 87, 79, 59, 53, 54, 48, 59, 32.4176 + 73, 79, 78, 76, 73, 78, 87, 84, 84, 50, 14, 14, 14, 14, 14, 14, 32.4177 + 55, 109, 84, 82, 76, 71, 65, 52, 75, 14, 17, 15, 14, 19, 14, 14, 32.4178 + 14, 45, 111, 98, 93, 92, 79, 65, 68, 63, 14, 14, 14, 16, 14, 14, 32.4179 + 16, 120, 84, 81, 63, 61, 63, 72, 75, 90, 104, 111, 93, 89, 87, 93, 32.4180 + 82, 64, 61, 75, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.4181 + 14, 14, 90, 109, 85, 73, 76, 79, 68, 59, 44, 24, 14, 15, 14, 14, 32.4182 + 14, 14, 27, 98, 89, 89, 72, 72, 72, 71, 68, 68, 61, 65, 55, 63, 32.4183 + 63, 14, 15, 14, 15, 14, 14, 16, 93, 64, 57, 57, 75, 31, 64, 55, 32.4184 + 17, 14, 14, 14, 14, 102, 164, 118, 105, 105, 89, 85, 75, 72, 73, 65, 32.4185 + 67, 73, 73, 76, 76, 75, 81, 78, 76, 55, 72, 14, 14, 14, 14, 14, 32.4186 + 14, 14, 14, 14, 14, 128, 132, 98, 89, 53, 65, 72, 75, 59, 65, 50, 32.4187 + 73, 57, 61, 65, 56, 63, 64, 72, 68, 67, 52, 14, 14, 20, 16, 14, 32.4188 + 14, 16, 111, 95, 82, 69, 73, 56, 79, 33, 14, 85, 71, 71, 60, 61, 32.4189 + 61, 73, 65, 67, 75, 85, 95, 85, 107, 65, 14, 14, 14, 14, 14, 14, 32.4190 + 14, 100, 134, 93, 104, 100, 90, 84, 68, 63, 63, 57, 61, 75, 72, 59, 32.4191 + 81, 75, 75, 76, 85, 46, 26, 14, 14, 14, 14, 14, 14, 14, 92, 104, 32.4192 + 93, 78, 75, 68, 64, 54, 60, 53, 81, 84, 100, 81, 76, 68, 78, 65, 32.4193 + 79, 78, 82, 85, 78, 69, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4194 + 14, 55, 130, 114, 82, 72, 69, 60, 55, 55, 33, 14, 14, 14, 14, 14, 32.4195 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.4196 + 14, 102, 93, 92, 72, 69, 73, 72, 64, 65, 82, 89, 87, 76, 71, 85, 32.4197 + 85, 81, 82, 81, 84, 78, 81, 65, 84, 61, 56, 14, 14, 15, 14, 14, 32.4198 + 93, 85, 100, 92, 85, 75, 73, 75, 71, 60, 57, 71, 84, 90, 90, 64, 32.4199 + 78, 78, 79, 79, 89, 87, 35, 14, 14, 14, 14, 14, 14, 116, 104, 124, 32.4200 + 116, 93, 85, 68, 67, 65, 75, 79, 76, 68, 92, 82, 73, 72, 68, 72, 32.4201 + 79, 82, 93, 31, 14, 14, 18, 14, 14, 14, 42, 97, 113, 87, 79, 75, 32.4202 + 68, 57, 61, 56, 67, 73, 57, 64, 50, 56, 63, 68, 84, 84, 46, 16, 32.4203 + 14, 14, 14, 14, 17, 87, 92, 76, 60, 50, 61, 64, 67, 67, 76, 87, 32.4204 + 78, 69, 85, 73, 61, 57, 47, 55, 64, 75, 60, 57, 14, 14, 14, 14, 32.4205 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 24, 32.4206 + 141, 118, 105, 95, 87, 68, 47, 60, 37, 14, 14, 14, 14, 14, 15, 14, 32.4207 + 14, 14, 14, 44, 97, 79, 90, 67, 72, 52, 48, 14, 14, 14, 14, 50, 32.4208 + 143, 148, 150, 139, 97, 61, 44, 49, 54, 67, 60, 57, 71, 82, 82, 71, 32.4209 + 76, 75, 82, 84, 93, 76, 24, 14, 14, 14, 14, 14, 93, 107, 90, 78, 32.4210 + 72, 64, 60, 59, 55, 14, 19, 15, 14, 14, 14, 14, 14, 67, 120, 98, 32.4211 + 87, 87, 79, 67, 65, 57, 14, 14, 14, 15, 14, 14, 39, 130, 98, 87, 32.4212 + 67, 67, 68, 79, 73, 84, 109, 111, 89, 67, 50, 45, 47, 49, 56, 65, 32.4213 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 85, 113, 32.4214 + 102, 84, 84, 89, 75, 65, 48, 24, 18, 14, 14, 14, 14, 14, 79, 111, 32.4215 + 97, 87, 81, 79, 76, 75, 73, 71, 64, 68, 57, 64, 65, 14, 14, 14, 32.4216 + 14, 14, 14, 65, 84, 79, 59, 64, 65, 63, 48, 46, 18, 14, 14, 14, 32.4217 + 69, 130, 145, 113, 104, 93, 82, 67, 50, 53, 59, 64, 63, 59, 56, 54, 32.4218 + 81, 78, 81, 75, 75, 53, 72, 31, 14, 14, 14, 15, 14, 14, 14, 14, 32.4219 + 14, 114, 124, 105, 90, 52, 59, 54, 82, 84, 95, 69, 87, 68, 61, 52, 32.4220 + 56, 57, 64, 72, 61, 63, 52, 14, 14, 19, 14, 14, 14, 41, 114, 90, 32.4221 + 76, 67, 68, 65, 57, 41, 29, 98, 95, 84, 64, 65, 65, 65, 63, 69, 32.4222 + 79, 84, 95, 85, 98, 75, 15, 14, 14, 14, 14, 14, 84, 105, 120, 114, 32.4223 + 92, 82, 63, 65, 73, 75, 78, 79, 75, 90, 95, 85, 82, 72, 69, 69, 32.4224 + 79, 69, 52, 14, 14, 14, 16, 14, 14, 14, 109, 111, 102, 84, 75, 71, 32.4225 + 68, 67, 73, 76, 84, 87, 87, 65, 71, 61, 78, 68, 78, 81, 82, 65, 32.4226 + 72, 76, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 104, 141, 116, 32.4227 + 79, 76, 71, 59, 59, 47, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4228 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 30, 118, 104, 93, 32.4229 + 73, 73, 76, 73, 71, 76, 87, 93, 72, 55, 60, 87, 89, 87, 87, 85, 32.4230 + 90, 85, 81, 67, 72, 68, 32, 14, 14, 17, 14, 95, 145, 118, 98, 92, 32.4231 + 85, 55, 53, 65, 50, 42, 32, 30, 45, 79, 98, 92, 84, 81, 81, 84, 32.4232 + 82, 104, 68, 14, 14, 14, 14, 14, 84, 162, 137, 120, 95, 85, 71, 65, 32.4233 + 57, 38, 34, 39, 35, 35, 64, 82, 89, 87, 72, 72, 82, 84, 102, 65, 32.4234 + 14, 14, 14, 14, 14, 31, 132, 120, 128, 100, 90, 72, 60, 35, 32, 28, 32.4235 + 35, 41, 30, 31, 23, 21, 24, 31, 39, 37, 21, 14, 14, 14, 14, 14, 32.4236 + 82, 116, 89, 84, 63, 68, 60, 59, 60, 60, 61, 64, 79, 72, 85, 98, 32.4237 + 89, 75, 60, 72, 75, 73, 63, 71, 18, 14, 14, 14, 14, 14, 14, 14, 32.4238 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 139, 122, 104, 97, 32.4239 + 89, 71, 53, 73, 48, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 124, 32.4240 + 120, 109, 84, 46, 69, 43, 27, 14, 14, 14, 21, 132, 169, 152, 136, 114, 32.4241 + 90, 48, 34, 39, 36, 52, 46, 39, 56, 92, 93, 100, 82, 76, 82, 89, 32.4242 + 92, 102, 46, 14, 14, 14, 14, 14, 134, 111, 102, 76, 75, 65, 59, 67, 32.4243 + 31, 14, 15, 15, 15, 14, 14, 14, 14, 102, 128, 114, 89, 87, 81, 69, 32.4244 + 64, 43, 14, 14, 14, 14, 14, 14, 82, 132, 104, 85, 67, 69, 75, 81, 32.4245 + 68, 75, 93, 93, 76, 69, 63, 60, 68, 67, 50, 35, 14, 14, 14, 14, 32.4246 + 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 95, 118, 109, 87, 92, 93, 32.4247 + 84, 69, 52, 26, 19, 14, 14, 14, 14, 24, 122, 116, 107, 82, 82, 81, 32.4248 + 81, 76, 75, 72, 67, 75, 64, 72, 68, 14, 14, 14, 14, 14, 14, 126, 32.4249 + 98, 84, 68, 65, 54, 72, 47, 24, 14, 14, 14, 16, 164, 148, 128, 109, 32.4250 + 104, 92, 72, 61, 64, 54, 48, 54, 59, 59, 75, 97, 100, 93, 95, 89, 32.4251 + 87, 63, 71, 64, 14, 14, 14, 14, 14, 14, 14, 14, 14, 67, 79, 89, 32.4252 + 85, 65, 82, 67, 50, 61, 65, 40, 63, 78, 85, 76, 75, 73, 79, 85, 32.4253 + 63, 69, 60, 14, 14, 15, 14, 14, 14, 102, 126, 97, 89, 71, 76, 78, 32.4254 + 50, 61, 107, 124, 82, 67, 44, 59, 65, 73, 72, 85, 85, 87, 100, 97, 32.4255 + 89, 85, 32, 14, 14, 14, 14, 45, 173, 120, 120, 113, 87, 67, 52, 46, 32.4256 + 43, 36, 38, 42, 41, 53, 76, 97, 89, 81, 72, 73, 79, 89, 82, 17, 32.4257 + 14, 14, 14, 14, 14, 38, 118, 113, 114, 84, 79, 75, 68, 68, 79, 84, 32.4258 + 89, 89, 92, 79, 76, 68, 79, 76, 81, 81, 87, 63, 65, 76, 25, 14, 32.4259 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 143, 139, 122, 84, 78, 76, 61, 32.4260 + 60, 39, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4261 + 14, 15, 14, 14, 14, 15, 14, 14, 73, 134, 118, 97, 78, 76, 79, 67, 32.4262 + 57, 48, 37, 31, 27, 24, 35, 54, 87, 113, 102, 92, 95, 87, 84, 67, 32.4263 + 71, 64, 14, 14, 14, 14, 57, 178, 147, 122, 93, 78, 69, 64, 50, 34, 32.4264 + 14, 14, 14, 14, 14, 16, 47, 98, 90, 95, 84, 85, 78, 90, 84, 14, 32.4265 + 14, 14, 14, 55, 182, 128, 157, 100, 81, 68, 57, 49, 33, 16, 14, 14, 32.4266 + 14, 14, 21, 47, 95, 100, 79, 79, 85, 79, 92, 97, 14, 14, 14, 14, 32.4267 + 14, 85, 169, 132, 128, 104, 92, 85, 57, 21, 14, 14, 14, 15, 14, 14, 32.4268 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 130, 124, 89, 78, 32.4269 + 72, 69, 64, 55, 47, 39, 35, 34, 40, 32, 31, 54, 95, 116, 85, 85, 32.4270 + 84, 71, 63, 75, 34, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4271 + 14, 14, 14, 14, 14, 14, 14, 14, 102, 136, 122, 111, 98, 82, 68, 82, 32.4272 + 63, 14, 14, 14, 14, 14, 14, 14, 14, 14, 82, 164, 122, 126, 67, 55, 32.4273 + 52, 39, 14, 14, 14, 14, 113, 159, 145, 141, 107, 85, 65, 54, 34, 21, 32.4274 + 14, 14, 14, 14, 14, 22, 47, 93, 98, 81, 84, 97, 82, 109, 65, 14, 32.4275 + 14, 14, 14, 22, 159, 120, 98, 79, 84, 67, 61, 69, 16, 14, 14, 14, 32.4276 + 18, 14, 14, 14, 14, 130, 134, 120, 102, 90, 87, 78, 65, 33, 14, 14, 32.4277 + 14, 14, 14, 14, 124, 130, 109, 85, 71, 75, 82, 75, 55, 50, 55, 47, 32.4278 + 52, 57, 64, 65, 72, 63, 36, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.4279 + 15, 15, 14, 14, 14, 14, 102, 136, 118, 92, 97, 100, 92, 81, 54, 27, 32.4280 + 14, 19, 14, 14, 14, 107, 128, 113, 113, 84, 87, 90, 84, 82, 78, 75, 32.4281 + 71, 78, 69, 79, 71, 14, 14, 14, 14, 14, 54, 145, 124, 78, 76, 67, 32.4282 + 63, 49, 60, 14, 14, 14, 14, 89, 175, 143, 128, 114, 95, 73, 68, 64, 32.4283 + 46, 28, 19, 19, 21, 24, 44, 75, 116, 114, 124, 111, 100, 72, 63, 82, 32.4284 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4285 + 14, 14, 14, 14, 14, 25, 97, 109, 105, 89, 102, 107, 73, 76, 63, 14, 32.4286 + 14, 14, 14, 14, 14, 147, 132, 107, 92, 78, 79, 89, 64, 76, 141, 114, 32.4287 + 81, 72, 52, 68, 85, 82, 84, 85, 95, 95, 116, 109, 87, 90, 46, 14, 32.4288 + 14, 14, 18, 141, 139, 132, 116, 90, 68, 65, 53, 32, 16, 14, 14, 14, 32.4289 + 14, 14, 34, 95, 98, 85, 79, 84, 73, 82, 87, 29, 14, 14, 14, 14, 32.4290 + 14, 82, 128, 120, 114, 89, 85, 81, 65, 55, 47, 40, 41, 40, 49, 54, 32.4291 + 72, 82, 87, 85, 82, 87, 95, 67, 63, 68, 22, 14, 14, 14, 14, 14, 32.4292 + 14, 14, 14, 14, 48, 179, 145, 132, 93, 84, 79, 63, 59, 32, 14, 14, 32.4293 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4294 + 16, 15, 14, 14, 120, 143, 130, 105, 87, 81, 79, 54, 38, 21, 14, 14, 32.4295 + 14, 14, 14, 14, 60, 128, 124, 105, 98, 95, 87, 73, 69, 44, 14, 14, 32.4296 + 19, 14, 152, 167, 145, 128, 97, 68, 65, 57, 31, 14, 14, 14, 14, 14, 32.4297 + 14, 14, 14, 78, 104, 97, 87, 97, 93, 95, 100, 23, 14, 14, 14, 167, 32.4298 + 173, 136, 134, 97, 78, 72, 45, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.4299 + 61, 113, 102, 111, 98, 87, 92, 118, 23, 14, 14, 14, 27, 143, 143, 150, 32.4300 + 136, 113, 107, 95, 63, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4301 + 14, 14, 14, 15, 14, 14, 14, 111, 143, 107, 97, 78, 85, 85, 65, 39, 32.4302 + 23, 14, 14, 14, 14, 14, 14, 14, 41, 141, 120, 102, 92, 81, 68, 79, 32.4303 + 45, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 32.4304 + 14, 14, 14, 14, 40, 143, 147, 118, 98, 87, 85, 78, 79, 26, 14, 14, 32.4305 + 14, 14, 14, 14, 14, 32, 175, 167, 150, 100, 52, 59, 40, 24, 14, 14, 32.4306 + 14, 27, 157, 150, 143, 120, 100, 75, 60, 43, 21, 14, 14, 14, 14, 14, 32.4307 + 14, 14, 23, 120, 120, 97, 109, 104, 84, 109, 84, 14, 14, 14, 14, 61, 32.4308 + 159, 137, 105, 84, 85, 75, 67, 64, 14, 14, 14, 15, 18, 14, 14, 14, 32.4309 + 27, 157, 139, 122, 107, 90, 92, 82, 63, 21, 14, 14, 14, 14, 14, 14, 32.4310 + 150, 132, 116, 93, 84, 82, 84, 60, 31, 19, 16, 14, 14, 14, 14, 14, 32.4311 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4312 + 14, 14, 109, 150, 132, 100, 104, 107, 100, 85, 55, 26, 14, 14, 14, 14, 32.4313 + 41, 164, 118, 126, 113, 93, 92, 90, 89, 85, 81, 81, 75, 84, 82, 89, 32.4314 + 71, 14, 14, 14, 14, 14, 145, 143, 128, 85, 76, 68, 73, 44, 39, 14, 32.4315 + 14, 14, 16, 175, 173, 155, 136, 111, 89, 64, 48, 32, 15, 14, 14, 14, 32.4316 + 14, 14, 14, 14, 102, 152, 147, 145, 122, 90, 64, 84, 40, 32, 16, 15, 32.4317 + 15, 14, 14, 14, 21, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4318 + 14, 14, 89, 130, 137, 113, 132, 124, 87, 84, 56, 14, 14, 14, 14, 14, 32.4319 + 16, 167, 130, 113, 90, 100, 79, 82, 73, 60, 82, 45, 38, 41, 30, 42, 32.4320 + 65, 89, 118, 98, 109, 107, 126, 118, 92, 89, 52, 14, 14, 14, 81, 183, 32.4321 + 120, 141, 111, 79, 50, 52, 36, 14, 14, 14, 14, 14, 14, 14, 14, 53, 32.4322 + 109, 120, 98, 92, 87, 78, 87, 47, 14, 14, 14, 14, 14, 107, 141, 132, 32.4323 + 116, 98, 98, 90, 81, 47, 19, 14, 14, 14, 14, 14, 33, 89, 98, 98, 32.4324 + 87, 95, 109, 73, 65, 53, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 32.4325 + 118, 179, 145, 128, 111, 87, 85, 69, 60, 27, 14, 14, 14, 14, 14, 14, 32.4326 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.4327 + 155, 148, 141, 107, 100, 89, 75, 50, 27, 14, 14, 14, 14, 14, 14, 14, 32.4328 + 26, 118, 136, 124, 102, 102, 90, 84, 63, 34, 14, 14, 14, 73, 178, 164, 32.4329 + 159, 111, 90, 85, 71, 37, 14, 14, 18, 14, 14, 18, 19, 14, 14, 71, 32.4330 + 128, 107, 102, 107, 102, 97, 82, 35, 14, 14, 75, 173, 154, 152, 114, 93, 32.4331 + 76, 65, 31, 14, 14, 14, 14, 14, 14, 14, 14, 14, 64, 134, 116, 118, 32.4332 + 111, 98, 89, 98, 31, 14, 15, 14, 65, 170, 126, 162, 147, 124, 116, 95, 32.4333 + 54, 14, 14, 15, 14, 15, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.4334 + 14, 14, 21, 173, 143, 98, 105, 81, 98, 87, 52, 22, 14, 14, 14, 14, 32.4335 + 14, 18, 14, 14, 14, 130, 159, 143, 105, 92, 75, 71, 49, 14, 14, 14, 32.4336 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 32.4337 + 14, 134, 154, 126, 109, 97, 93, 78, 93, 44, 14, 14, 14, 14, 14, 14, 32.4338 + 14, 132, 195, 173, 165, 72, 68, 42, 31, 14, 14, 14, 14, 118, 145, 148, 32.4339 + 150, 104, 82, 84, 64, 25, 14, 14, 14, 14, 14, 14, 14, 14, 14, 114, 32.4340 + 128, 114, 116, 111, 90, 98, 85, 14, 14, 14, 14, 130, 152, 154, 116, 102, 32.4341 + 92, 78, 69, 46, 14, 14, 14, 18, 14, 14, 14, 14, 68, 164, 145, 126, 32.4342 + 114, 97, 89, 79, 54, 14, 14, 14, 14, 14, 14, 38, 164, 145, 126, 107, 32.4343 + 93, 92, 82, 53, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.4344 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 116, 162, 32.4345 + 148, 116, 120, 120, 107, 95, 61, 27, 15, 14, 16, 14, 128, 173, 139, 141, 32.4346 + 107, 104, 82, 61, 92, 98, 89, 87, 81, 85, 92, 93, 76, 14, 14, 14, 32.4347 + 14, 54, 175, 159, 114, 114, 82, 78, 68, 57, 14, 14, 14, 14, 81, 197, 32.4348 + 178, 162, 128, 107, 98, 75, 31, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.4349 + 40, 167, 154, 162, 141, 105, 82, 81, 37, 30, 15, 15, 15, 15, 14, 14, 32.4350 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 111, 169, 32.4351 + 157, 134, 152, 134, 97, 87, 41, 14, 14, 14, 14, 14, 53, 170, 134, 124, 32.4352 + 89, 109, 78, 67, 54, 24, 19, 14, 14, 14, 14, 14, 18, 43, 134, 120, 32.4353 + 120, 122, 128, 134, 107, 85, 53, 14, 14, 25, 159, 148, 157, 128, 97, 82, 32.4354 + 65, 40, 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 134, 143, 126, 109, 32.4355 + 102, 82, 81, 54, 14, 14, 14, 14, 14, 120, 145, 137, 120, 111, 107, 98, 32.4356 + 76, 37, 14, 14, 14, 14, 14, 14, 14, 82, 98, 118, 102, 105, 107, 76, 32.4357 + 76, 42, 14, 14, 14, 14, 19, 14, 14, 14, 14, 14, 159, 164, 161, 128, 32.4358 + 118, 98, 92, 75, 60, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4359 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 185, 155, 157, 116, 32.4360 + 111, 92, 79, 56, 20, 16, 14, 14, 14, 14, 14, 14, 14, 122, 159, 157, 32.4361 + 122, 114, 97, 93, 60, 27, 14, 14, 14, 178, 172, 181, 154, 116, 89, 87, 32.4362 + 60, 21, 14, 14, 16, 14, 14, 14, 14, 14, 14, 69, 155, 136, 132, 104, 32.4363 + 105, 105, 56, 26, 14, 18, 170, 148, 161, 141, 114, 87, 69, 43, 18, 14, 32.4364 + 14, 14, 14, 14, 14, 14, 14, 14, 75, 162, 134, 122, 114, 105, 89, 76, 32.4365 + 35, 14, 14, 14, 105, 159, 143, 139, 147, 134, 124, 102, 49, 14, 14, 17, 32.4366 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 87, 185, 32.4367 + 145, 113, 95, 84, 102, 73, 34, 14, 14, 14, 18, 19, 14, 17, 14, 14, 32.4368 + 14, 113, 167, 147, 118, 104, 84, 61, 46, 14, 14, 15, 14, 14, 14, 14, 32.4369 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 126, 152, 143, 32.4370 + 139, 105, 102, 92, 109, 67, 14, 14, 14, 14, 14, 14, 67, 199, 192, 181, 32.4371 + 136, 64, 67, 29, 16, 14, 14, 14, 31, 172, 130, 150, 126, 98, 76, 75, 32.4372 + 48, 16, 14, 19, 14, 14, 16, 14, 18, 14, 14, 130, 152, 137, 118, 120, 32.4373 + 100, 95, 76, 14, 14, 14, 14, 179, 159, 164, 141, 109, 98, 85, 69, 29, 32.4374 + 14, 14, 14, 19, 14, 14, 14, 14, 137, 170, 157, 139, 124, 105, 95, 85, 32.4375 + 52, 14, 14, 14, 14, 14, 14, 89, 167, 162, 126, 113, 98, 98, 84, 46, 32.4376 + 18, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 32.4377 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 126, 173, 164, 132, 134, 141, 32.4378 + 116, 105, 68, 30, 14, 14, 14, 33, 170, 167, 159, 134, 109, 113, 56, 32, 32.4379 + 97, 128, 102, 98, 87, 97, 104, 105, 79, 14, 14, 14, 15, 157, 181, 169, 32.4380 + 134, 113, 92, 82, 60, 45, 14, 14, 14, 17, 165, 195, 172, 165, 122, 104, 32.4381 + 109, 69, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 183, 162, 169, 32.4382 + 137, 97, 95, 73, 16, 15, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.4383 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 130, 164, 164, 150, 152, 128, 32.4384 + 107, 82, 25, 14, 14, 14, 14, 14, 126, 165, 137, 134, 104, 102, 87, 71, 32.4385 + 34, 14, 14, 14, 14, 14, 14, 14, 14, 14, 118, 132, 143, 145, 132, 143, 32.4386 + 116, 82, 53, 14, 14, 93, 170, 128, 162, 116, 81, 78, 65, 24, 14, 14, 32.4387 + 14, 16, 14, 14, 18, 14, 14, 14, 164, 162, 145, 122, 107, 89, 79, 49, 32.4388 + 14, 14, 14, 14, 53, 137, 152, 143, 120, 132, 114, 102, 64, 30, 14, 14, 32.4389 + 14, 20, 14, 14, 14, 98, 118, 136, 122, 122, 111, 84, 78, 33, 14, 14, 32.4390 + 14, 14, 18, 14, 14, 14, 14, 14, 195, 181, 190, 145, 134, 111, 98, 71, 32.4391 + 64, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4392 + 14, 14, 14, 15, 15, 14, 22, 63, 199, 162, 165, 118, 113, 98, 84, 64, 32.4393 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 137, 182, 173, 134, 122, 102, 102, 32.4394 + 60, 15, 14, 14, 98, 164, 176, 164, 159, 130, 104, 81, 41, 14, 14, 14, 32.4395 + 14, 14, 26, 14, 16, 14, 14, 78, 170, 154, 150, 107, 111, 122, 54, 27, 32.4396 + 14, 79, 154, 179, 152, 143, 105, 95, 81, 32, 14, 14, 14, 14, 14, 14, 32.4397 + 14, 19, 14, 14, 65, 170, 162, 162, 130, 118, 105, 72, 41, 14, 14, 14, 32.4398 + 114, 126, 157, 105, 132, 136, 126, 120, 63, 14, 14, 15, 14, 14, 14, 16, 32.4399 + 14, 14, 14, 14, 14, 15, 18, 15, 14, 16, 167, 170, 157, 141, 82, 89, 32.4400 + 100, 65, 24, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 141, 186, 157, 32.4401 + 126, 118, 90, 57, 44, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4402 + 16, 14, 14, 15, 15, 14, 14, 14, 14, 122, 148, 157, 164, 113, 113, 109, 32.4403 + 113, 82, 14, 14, 14, 14, 14, 14, 186, 215, 200, 176, 100, 84, 52, 25, 32.4404 + 14, 14, 14, 14, 132, 167, 155, 141, 105, 109, 97, 60, 27, 14, 15, 16, 32.4405 + 16, 14, 19, 15, 16, 16, 15, 139, 178, 167, 136, 130, 114, 102, 78, 14, 32.4406 + 14, 14, 19, 205, 172, 155, 159, 114, 105, 92, 75, 21, 14, 14, 14, 18, 32.4407 + 14, 15, 14, 14, 176, 172, 167, 159, 150, 116, 104, 90, 54, 14, 15, 14, 32.4408 + 14, 14, 14, 130, 164, 173, 128, 118, 116, 109, 85, 43, 14, 14, 14, 16, 32.4409 + 21, 14, 14, 14, 18, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.4410 + 14, 14, 14, 14, 14, 14, 136, 186, 176, 148, 148, 148, 124, 114, 73, 31, 32.4411 + 14, 19, 14, 139, 173, 175, 164, 122, 111, 122, 42, 20, 102, 159, 116, 105, 32.4412 + 95, 107, 107, 111, 84, 14, 14, 14, 31, 213, 181, 167, 178, 105, 109, 76, 32.4413 + 59, 24, 14, 14, 14, 61, 198, 198, 173, 173, 130, 113, 111, 47, 14, 14, 32.4414 + 14, 14, 16, 14, 14, 14, 14, 14, 14, 202, 175, 170, 134, 85, 100, 61, 32.4415 + 14, 14, 14, 16, 15, 14, 14, 14, 61, 72, 79, 67, 71, 76, 65, 87, 32.4416 + 69, 78, 72, 73, 72, 87, 198, 173, 157, 152, 152, 118, 111, 78, 15, 14, 32.4417 + 14, 14, 14, 14, 173, 170, 148, 148, 134, 97, 105, 87, 25, 14, 14, 15, 32.4418 + 14, 14, 14, 14, 14, 14, 120, 162, 165, 167, 141, 145, 124, 79, 48, 14, 32.4419 + 21, 161, 164, 159, 128, 111, 87, 75, 43, 14, 14, 14, 18, 14, 14, 19, 32.4420 + 14, 14, 14, 14, 189, 175, 155, 136, 116, 102, 93, 49, 14, 14, 14, 14, 32.4421 + 109, 150, 148, 148, 126, 148, 114, 109, 78, 37, 14, 14, 14, 19, 14, 14, 32.4422 + 14, 141, 141, 139, 134, 132, 113, 90, 79, 29, 14, 14, 14, 14, 14, 14, 32.4423 + 15, 14, 14, 84, 206, 197, 185, 169, 154, 120, 100, 87, 67, 14, 14, 14, 32.4424 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4425 + 18, 16, 14, 167, 202, 179, 170, 148, 118, 97, 73, 55, 14, 19, 14, 14, 32.4426 + 16, 14, 14, 14, 16, 199, 194, 183, 159, 132, 111, 97, 52, 14, 14, 14, 32.4427 + 155, 164, 185, 178, 152, 141, 104, 97, 31, 14, 17, 14, 20, 14, 21, 15, 32.4428 + 15, 15, 15, 65, 190, 173, 148, 139, 124, 114, 71, 18, 14, 147, 175, 155, 32.4429 + 157, 124, 116, 97, 72, 18, 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 32.4430 + 68, 172, 183, 170, 152, 116, 122, 78, 20, 14, 14, 14, 157, 118, 126, 128, 32.4431 + 109, 120, 137, 126, 152, 56, 14, 14, 14, 14, 14, 14, 15, 14, 16, 14, 32.4432 + 14, 18, 14, 14, 14, 68, 200, 181, 173, 122, 107, 97, 111, 53, 14, 14, 32.4433 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 178, 175, 181, 159, 89, 92, 92, 32.4434 + 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4435 + 14, 14, 14, 14, 14, 40, 181, 176, 155, 141, 137, 114, 122, 95, 27, 14, 32.4436 + 14, 14, 14, 126, 219, 210, 202, 150, 89, 84, 45, 14, 14, 14, 14, 30, 32.4437 + 190, 161, 162, 139, 113, 78, 93, 65, 14, 17, 16, 16, 14, 16, 16, 15, 32.4438 + 25, 15, 15, 155, 186, 178, 162, 132, 118, 120, 60, 14, 14, 14, 85, 199, 32.4439 + 181, 165, 165, 137, 109, 89, 72, 14, 14, 14, 14, 14, 17, 14, 14, 14, 32.4440 + 193, 175, 189, 147, 152, 113, 128, 81, 21, 14, 14, 14, 14, 14, 14, 176, 32.4441 + 178, 173, 143, 155, 126, 116, 78, 53, 14, 14, 14, 14, 14, 14, 14, 14, 32.4442 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.4443 + 14, 14, 150, 197, 189, 170, 161, 154, 141, 136, 78, 29, 16, 14, 32, 195, 32.4444 + 190, 164, 173, 132, 134, 84, 26, 14, 132, 164, 130, 130, 128, 109, 124, 137, 32.4445 + 73, 14, 18, 14, 167, 203, 200, 176, 161, 124, 93, 89, 57, 14, 14, 14, 32.4446 + 14, 161, 215, 197, 189, 162, 137, 130, 102, 41, 14, 14, 14, 14, 14, 14, 32.4447 + 14, 14, 14, 14, 102, 176, 179, 155, 116, 102, 85, 57, 14, 14, 14, 14, 32.4448 + 14, 29, 147, 210, 199, 193, 193, 194, 190, 176, 176, 182, 183, 181, 183, 169, 32.4449 + 194, 179, 173, 152, 155, 165, 134, 113, 87, 68, 14, 14, 14, 14, 14, 33, 32.4450 + 183, 164, 179, 143, 143, 120, 102, 71, 14, 14, 14, 18, 14, 17, 14, 16, 32.4451 + 14, 14, 78, 183, 186, 170, 162, 139, 132, 84, 28, 14, 87, 161, 159, 139, 32.4452 + 137, 111, 82, 71, 29, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4453 + 194, 195, 176, 150, 120, 98, 84, 48, 14, 14, 14, 14, 147, 141, 154, 152, 32.4454 + 141, 130, 126, 116, 72, 14, 14, 14, 22, 14, 14, 14, 28, 132, 155, 155, 32.4455 + 137, 145, 118, 109, 78, 14, 14, 14, 14, 21, 14, 14, 14, 14, 14, 118, 32.4456 + 213, 203, 190, 176, 157, 130, 105, 90, 63, 14, 14, 14, 14, 14, 14, 14, 32.4457 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 186, 32.4458 + 208, 190, 178, 162, 126, 105, 92, 45, 14, 18, 14, 14, 14, 14, 15, 14, 32.4459 + 46, 210, 205, 195, 169, 139, 120, 100, 50, 14, 14, 28, 178, 175, 185, 178, 32.4460 + 147, 136, 98, 79, 19, 14, 14, 14, 15, 14, 19, 15, 15, 18, 14, 107, 32.4461 + 205, 183, 167, 148, 130, 124, 72, 14, 27, 173, 181, 167, 170, 124, 107, 85, 32.4462 + 55, 18, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 109, 192, 197, 186, 32.4463 + 165, 120, 120, 79, 14, 14, 14, 14, 134, 118, 132, 137, 118, 132, 157, 164, 32.4464 + 145, 162, 165, 145, 82, 31, 14, 14, 14, 14, 14, 14, 22, 16, 14, 20, 32.4465 + 14, 139, 218, 203, 173, 143, 124, 105, 126, 116, 97, 105, 134, 152, 162, 162, 32.4466 + 162, 162, 161, 150, 132, 195, 165, 147, 148, 102, 79, 85, 14, 14, 14, 14, 32.4467 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4468 + 14, 15, 175, 172, 169, 162, 145, 132, 141, 107, 30, 14, 14, 14, 47, 203, 32.4469 + 217, 208, 181, 141, 109, 64, 21, 14, 14, 14, 14, 97, 202, 188, 167, 154, 32.4470 + 116, 84, 92, 47, 14, 14, 16, 16, 14, 14, 14, 15, 16, 18, 14, 183, 32.4471 + 205, 194, 176, 145, 132, 120, 57, 14, 14, 14, 134, 214, 195, 178, 172, 139, 32.4472 + 118, 98, 72, 14, 14, 14, 14, 14, 14, 14, 14, 50, 207, 189, 192, 162, 32.4473 + 162, 122, 124, 76, 16, 14, 14, 14, 14, 14, 41, 194, 189, 185, 155, 164, 32.4474 + 134, 120, 92, 44, 14, 14, 15, 14, 15, 15, 15, 15, 14, 14, 14, 14, 32.4475 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 159, 205, 32.4476 + 203, 183, 175, 167, 154, 139, 79, 30, 14, 14, 145, 209, 195, 193, 139, 122, 32.4477 + 124, 59, 18, 14, 145, 182, 161, 152, 128, 126, 130, 141, 75, 16, 14, 27, 32.4478 + 206, 211, 204, 186, 162, 130, 98, 93, 31, 14, 14, 14, 21, 194, 217, 206, 32.4479 + 182, 161, 148, 154, 155, 143, 143, 148, 152, 147, 148, 150, 148, 147, 141, 139, 32.4480 + 165, 194, 193, 176, 122, 85, 69, 40, 14, 14, 14, 14, 16, 169, 206, 193, 32.4481 + 206, 193, 186, 183, 182, 173, 165, 167, 164, 173, 183, 169, 164, 154, 167, 175, 32.4482 + 148, 161, 134, 116, 87, 52, 14, 14, 14, 14, 14, 71, 199, 183, 185, 161, 32.4483 + 139, 124, 109, 67, 14, 14, 14, 15, 19, 15, 14, 15, 14, 14, 126, 209, 32.4484 + 195, 173, 185, 150, 152, 85, 19, 14, 134, 173, 164, 154, 145, 111, 89, 79, 32.4485 + 19, 14, 14, 14, 14, 14, 15, 15, 14, 14, 15, 23, 205, 203, 185, 175, 32.4486 + 143, 134, 79, 42, 14, 14, 14, 14, 167, 159, 164, 161, 154, 150, 139, 114, 32.4487 + 73, 14, 14, 14, 14, 14, 14, 14, 65, 159, 164, 169, 157, 155, 126, 105, 32.4488 + 75, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 170, 217, 209, 198, 185, 32.4489 + 172, 139, 111, 93, 56, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4490 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 30, 211, 216, 203, 178, 170, 32.4491 + 130, 109, 105, 29, 14, 15, 18, 14, 14, 14, 16, 14, 118, 216, 214, 206, 32.4492 + 176, 147, 134, 97, 40, 14, 14, 98, 195, 188, 183, 181, 148, 136, 107, 59, 32.4493 + 14, 14, 14, 14, 14, 14, 15, 15, 15, 18, 14, 167, 214, 192, 186, 157, 32.4494 + 134, 134, 63, 14, 92, 185, 178, 172, 176, 134, 113, 98, 37, 14, 14, 14, 32.4495 + 14, 14, 14, 14, 14, 17, 14, 14, 172, 202, 209, 197, 178, 132, 124, 82, 32.4496 + 14, 14, 14, 14, 152, 124, 120, 116, 145, 154, 143, 137, 145, 173, 183, 178, 32.4497 + 167, 164, 155, 148, 71, 16, 15, 15, 14, 14, 16, 14, 14, 186, 223, 209, 32.4498 + 176, 161, 161, 132, 137, 148, 164, 183, 194, 195, 203, 208, 208, 190, 214, 200, 32.4499 + 203, 188, 181, 172, 139, 126, 85, 84, 14, 14, 14, 14, 14, 14, 14, 14, 32.4500 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 148, 182, 32.4501 + 189, 179, 154, 155, 139, 137, 52, 14, 14, 14, 147, 225, 216, 203, 152, 120, 32.4502 + 105, 34, 14, 14, 14, 14, 14, 183, 203, 202, 169, 162, 122, 97, 82, 25, 32.4503 + 14, 14, 16, 16, 16, 14, 14, 16, 15, 27, 14, 221, 216, 206, 186, 155, 32.4504 + 139, 113, 49, 14, 14, 14, 167, 214, 200, 193, 181, 152, 128, 98, 59, 14, 32.4505 + 14, 14, 14, 14, 14, 14, 14, 128, 213, 194, 193, 179, 164, 137, 116, 68, 32.4506 + 14, 14, 14, 14, 14, 14, 107, 210, 199, 192, 169, 172, 145, 107, 98, 26, 32.4507 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4508 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 175, 214, 210, 192, 183, 176, 32.4509 + 165, 150, 89, 32, 14, 20, 217, 206, 186, 189, 141, 137, 104, 34, 14, 14, 32.4510 + 155, 198, 179, 162, 130, 150, 139, 145, 84, 18, 14, 120, 226, 215, 202, 189, 32.4511 + 154, 130, 105, 81, 14, 14, 14, 16, 48, 220, 216, 208, 193, 172, 157, 157, 32.4512 + 165, 178, 199, 208, 194, 193, 190, 193, 195, 193, 195, 193, 182, 190, 183, 170, 32.4513 + 116, 90, 84, 38, 14, 14, 14, 14, 97, 213, 211, 197, 193, 181, 167, 170, 32.4514 + 172, 169, 169, 165, 167, 159, 159, 161, 152, 161, 167, 165, 157, 159, 134, 122, 32.4515 + 87, 38, 14, 14, 14, 14, 14, 147, 209, 199, 192, 178, 139, 132, 107, 52, 32.4516 + 14, 15, 14, 14, 20, 14, 14, 14, 14, 14, 170, 215, 206, 182, 195, 159, 32.4517 + 162, 81, 14, 33, 188, 178, 161, 167, 141, 111, 100, 73, 14, 14, 14, 17, 32.4518 + 15, 14, 15, 16, 14, 15, 14, 76, 220, 204, 197, 189, 143, 161, 78, 31, 32.4519 + 14, 14, 14, 71, 183, 167, 164, 162, 167, 162, 139, 113, 65, 15, 14, 14, 32.4520 + 14, 14, 19, 14, 132, 181, 173, 175, 175, 161, 128, 105, 61, 14, 15, 14, 32.4521 + 14, 16, 14, 14, 14, 14, 14, 209, 224, 214, 203, 190, 181, 154, 122, 97, 32.4522 + 42, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4523 + 14, 14, 14, 15, 14, 14, 71, 233, 219, 209, 181, 173, 134, 105, 100, 16, 32.4524 + 16, 14, 19, 14, 14, 14, 14, 14, 189, 223, 218, 210, 179, 154, 141, 90, 32.4525 + 27, 14, 14, 170, 203, 192, 178, 175, 155, 134, 124, 36, 14, 15, 14, 14, 32.4526 + 14, 14, 14, 14, 16, 15, 14, 210, 217, 200, 193, 164, 143, 143, 55, 14, 32.4527 + 159, 188, 178, 181, 175, 134, 113, 102, 21, 14, 14, 14, 14, 14, 14, 14, 32.4528 + 14, 16, 14, 14, 207, 210, 216, 204, 181, 137, 128, 85, 14, 14, 14, 14, 32.4529 + 143, 134, 124, 118, 157, 179, 175, 185, 203, 199, 193, 189, 198, 194, 179, 162, 32.4530 + 190, 169, 71, 14, 14, 15, 14, 14, 19, 217, 221, 211, 185, 176, 181, 162, 32.4531 + 143, 152, 170, 181, 188, 186, 198, 205, 208, 189, 206, 186, 190, 162, 178, 172, 32.4532 + 114, 118, 98, 67, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4533 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 85, 204, 198, 190, 170, 172, 32.4534 + 136, 164, 81, 14, 14, 61, 213, 222, 210, 185, 141, 111, 71, 18, 14, 14, 32.4535 + 14, 14, 16, 216, 205, 208, 182, 154, 132, 116, 69, 14, 15, 14, 15, 14, 32.4536 + 14, 14, 14, 19, 15, 18, 47, 238, 225, 215, 188, 162, 150, 104, 39, 14, 32.4537 + 14, 17, 202, 215, 203, 200, 185, 164, 139, 97, 40, 14, 14, 14, 14, 14, 32.4538 + 14, 14, 14, 175, 213, 200, 195, 194, 162, 148, 113, 61, 14, 15, 14, 15, 32.4539 + 14, 14, 169, 218, 209, 202, 183, 170, 147, 100, 95, 14, 14, 14, 14, 14, 32.4540 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4541 + 14, 14, 14, 14, 14, 14, 182, 223, 216, 198, 192, 188, 183, 162, 95, 34, 32.4542 + 14, 111, 214, 206, 188, 157, 162, 141, 85, 21, 14, 14, 169, 205, 193, 167, 32.4543 + 150, 167, 159, 159, 89, 14, 29, 210, 225, 210, 203, 182, 148, 137, 111, 55, 32.4544 + 14, 14, 14, 14, 124, 232, 217, 205, 189, 175, 165, 167, 182, 194, 207, 211, 32.4545 + 189, 183, 182, 183, 186, 190, 192, 193, 202, 192, 179, 159, 114, 105, 93, 24, 32.4546 + 14, 14, 14, 43, 204, 199, 203, 208, 179, 165, 145, 132, 128, 126, 120, 116, 32.4547 + 120, 105, 113, 139, 148, 175, 176, 170, 181, 169, 147, 137, 84, 24, 14, 14, 32.4548 + 14, 14, 14, 199, 215, 209, 194, 190, 148, 136, 104, 34, 14, 15, 14, 14, 32.4549 + 14, 14, 14, 14, 14, 16, 203, 214, 213, 194, 186, 164, 143, 79, 14, 105, 32.4550 + 205, 181, 165, 170, 134, 118, 107, 42, 14, 14, 14, 18, 15, 14, 14, 16, 32.4551 + 14, 16, 14, 148, 227, 215, 203, 190, 139, 155, 85, 18, 14, 14, 16, 169, 32.4552 + 190, 178, 170, 165, 170, 161, 137, 111, 38, 14, 20, 15, 14, 16, 14, 14, 32.4553 + 182, 194, 181, 182, 182, 155, 130, 107, 40, 14, 16, 14, 14, 14, 14, 14, 32.4554 + 14, 14, 24, 227, 227, 216, 207, 197, 186, 162, 126, 95, 32, 14, 14, 14, 32.4555 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.4556 + 14, 17, 136, 238, 224, 214, 188, 172, 137, 113, 85, 14, 19, 14, 16, 14, 32.4557 + 14, 16, 14, 15, 220, 225, 226, 209, 188, 165, 147, 89, 19, 14, 15, 210, 32.4558 + 204, 192, 181, 170, 157, 120, 124, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.4559 + 14, 14, 28, 226, 222, 205, 200, 167, 157, 141, 50, 15, 208, 202, 192, 189, 32.4560 + 173, 132, 104, 82, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 32.4561 + 222, 214, 222, 207, 179, 143, 134, 78, 14, 15, 16, 14, 78, 126, 157, 145, 32.4562 + 145, 150, 175, 207, 182, 182, 194, 202, 197, 185, 182, 194, 206, 188, 197, 136, 32.4563 + 14, 14, 23, 14, 95, 237, 228, 225, 203, 186, 181, 170, 147, 148, 148, 154, 32.4564 + 157, 154, 157, 165, 165, 162, 172, 159, 150, 136, 141, 105, 113, 102, 104, 42, 32.4565 + 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4566 + 14, 14, 14, 14, 14, 14, 29, 215, 202, 193, 192, 181, 157, 164, 95, 14, 32.4567 + 14, 173, 226, 216, 199, 155, 136, 92, 30, 14, 14, 14, 14, 14, 65, 225, 32.4568 + 217, 217, 208, 155, 145, 122, 53, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.4569 + 21, 15, 126, 240, 227, 218, 193, 169, 161, 95, 30, 14, 14, 61, 225, 218, 32.4570 + 205, 207, 185, 161, 143, 89, 22, 14, 14, 16, 14, 14, 14, 14, 14, 199, 32.4571 + 211, 210, 200, 197, 161, 152, 116, 52, 14, 17, 14, 14, 14, 20, 204, 223, 32.4572 + 217, 213, 194, 172, 154, 105, 75, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4573 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4574 + 14, 14, 192, 227, 222, 209, 202, 198, 193, 173, 105, 37, 15, 204, 204, 206, 32.4575 + 199, 148, 139, 111, 63, 16, 14, 16, 179, 216, 204, 176, 169, 175, 173, 173, 32.4576 + 95, 14, 128, 234, 215, 207, 202, 178, 141, 147, 104, 30, 14, 16, 14, 14, 32.4577 + 203, 240, 225, 206, 185, 175, 165, 162, 170, 181, 183, 173, 154, 143, 143, 148, 32.4578 + 150, 150, 155, 157, 159, 159, 148, 137, 109, 128, 102, 14, 14, 14, 14, 116, 32.4579 + 222, 205, 208, 198, 169, 162, 141, 122, 109, 105, 109, 109, 120, 111, 130, 148, 32.4580 + 165, 173, 190, 198, 203, 189, 165, 148, 85, 18, 14, 14, 14, 14, 38, 221, 32.4581 + 217, 213, 197, 192, 154, 139, 87, 19, 14, 14, 14, 14, 14, 19, 14, 14, 32.4582 + 14, 64, 223, 217, 213, 204, 173, 181, 109, 72, 14, 175, 206, 189, 178, 176, 32.4583 + 137, 132, 107, 20, 14, 14, 14, 14, 15, 14, 14, 14, 16, 14, 14, 189, 32.4584 + 229, 223, 214, 188, 154, 141, 98, 14, 14, 14, 14, 199, 193, 182, 178, 175, 32.4585 + 172, 154, 132, 105, 18, 14, 14, 14, 14, 14, 14, 16, 200, 199, 189, 186, 32.4586 + 186, 147, 139, 118, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 64, 232, 32.4587 + 228, 219, 209, 199, 188, 164, 126, 93, 22, 14, 15, 14, 14, 15, 14, 14, 32.4588 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 194, 237, 32.4589 + 228, 216, 197, 162, 143, 120, 56, 14, 16, 14, 15, 14, 14, 14, 14, 40, 32.4590 + 230, 228, 226, 207, 197, 175, 150, 82, 16, 15, 50, 223, 205, 193, 186, 155, 32.4591 + 161, 128, 90, 15, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 81, 232, 32.4592 + 224, 208, 203, 170, 169, 120, 40, 55, 219, 203, 199, 197, 169, 145, 107, 68, 32.4593 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 78, 228, 225, 223, 202, 32.4594 + 173, 147, 130, 50, 15, 16, 18, 14, 19, 68, 154, 173, 178, 173, 169, 176, 32.4595 + 209, 202, 199, 194, 181, 165, 173, 195, 185, 208, 195, 176, 92, 14, 14, 15, 32.4596 + 179, 239, 229, 223, 214, 195, 176, 155, 134, 120, 120, 128, 130, 118, 116, 118, 32.4597 + 118, 132, 122, 128, 118, 130, 143, 102, 137, 111, 105, 24, 15, 14, 16, 14, 32.4598 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4599 + 14, 14, 14, 193, 204, 192, 202, 183, 175, 157, 134, 76, 93, 223, 220, 204, 32.4600 + 172, 134, 111, 57, 14, 14, 19, 14, 14, 14, 155, 221, 224, 220, 216, 164, 32.4601 + 152, 118, 34, 14, 15, 14, 14, 14, 14, 14, 14, 14, 18, 14, 199, 233, 32.4602 + 228, 217, 189, 165, 162, 85, 24, 14, 14, 134, 225, 217, 207, 211, 183, 167, 32.4603 + 137, 81, 14, 14, 14, 15, 14, 14, 14, 14, 39, 217, 219, 217, 202, 189, 32.4604 + 155, 148, 113, 34, 15, 15, 14, 14, 14, 56, 225, 227, 226, 219, 205, 172, 32.4605 + 152, 120, 49, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4606 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 192, 231, 32.4607 + 229, 217, 210, 203, 194, 178, 124, 52, 116, 225, 211, 198, 182, 169, 105, 104, 32.4608 + 34, 14, 14, 16, 189, 224, 209, 190, 181, 173, 181, 176, 116, 14, 207, 234, 32.4609 + 210, 208, 194, 165, 141, 130, 76, 15, 14, 14, 14, 14, 232, 238, 226, 202, 32.4610 + 190, 178, 150, 132, 122, 136, 143, 126, 116, 107, 109, 114, 114, 116, 118, 118, 32.4611 + 111, 139, 136, 136, 126, 137, 93, 14, 14, 14, 14, 203, 226, 229, 214, 190, 32.4612 + 162, 152, 124, 87, 68, 67, 72, 78, 82, 61, 65, 89, 192, 199, 209, 213, 32.4613 + 214, 202, 179, 148, 81, 15, 14, 14, 14, 14, 109, 233, 222, 217, 198, 189, 32.4614 + 157, 130, 76, 14, 14, 14, 14, 14, 14, 23, 14, 14, 14, 145, 225, 218, 32.4615 + 205, 204, 167, 192, 97, 50, 14, 205, 205, 200, 192, 178, 143, 134, 97, 14, 32.4616 + 16, 14, 14, 14, 14, 15, 14, 14, 14, 14, 23, 215, 227, 232, 217, 179, 32.4617 + 161, 130, 93, 14, 14, 15, 31, 222, 199, 186, 189, 179, 172, 157, 128, 98, 32.4618 + 14, 14, 14, 14, 14, 14, 14, 75, 208, 204, 202, 189, 186, 145, 148, 109, 32.4619 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 139, 231, 226, 219, 209, 203, 32.4620 + 193, 167, 126, 92, 15, 14, 16, 14, 14, 16, 14, 14, 14, 14, 14, 14, 32.4621 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 31, 223, 232, 225, 207, 199, 147, 32.4622 + 147, 126, 28, 14, 14, 14, 14, 14, 15, 14, 14, 102, 228, 227, 228, 195, 32.4623 + 199, 176, 130, 65, 18, 18, 124, 227, 205, 189, 189, 150, 154, 137, 46, 15, 32.4624 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 178, 234, 222, 209, 197, 155, 32.4625 + 164, 84, 25, 120, 222, 204, 207, 197, 162, 162, 111, 41, 14, 14, 14, 14, 32.4626 + 14, 14, 14, 14, 15, 14, 14, 179, 229, 229, 223, 193, 169, 137, 116, 24, 32.4627 + 21, 14, 15, 14, 14, 19, 67, 114, 159, 198, 207, 182, 175, 183, 192, 200, 32.4628 + 203, 203, 193, 183, 207, 185, 164, 189, 120, 22, 14, 14, 202, 229, 231, 211, 32.4629 + 215, 204, 179, 130, 69, 65, 68, 81, 97, 102, 105, 111, 114, 113, 92, 89, 32.4630 + 82, 75, 111, 81, 82, 63, 54, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.4631 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 137, 32.4632 + 210, 200, 209, 194, 178, 173, 167, 178, 204, 219, 205, 175, 141, 113, 67, 27, 32.4633 + 14, 14, 15, 14, 14, 14, 195, 223, 228, 220, 207, 175, 155, 102, 18, 14, 32.4634 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 36, 233, 230, 226, 214, 170, 154, 32.4635 + 155, 72, 20, 14, 14, 186, 218, 216, 207, 216, 176, 170, 118, 72, 14, 14, 32.4636 + 14, 14, 14, 14, 14, 14, 104, 223, 224, 217, 204, 182, 157, 134, 105, 18, 32.4637 + 14, 14, 15, 14, 14, 126, 236, 233, 227, 215, 200, 172, 143, 124, 24, 15, 32.4638 + 15, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4639 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 193, 229, 228, 217, 208, 202, 32.4640 + 193, 190, 157, 97, 217, 220, 214, 186, 155, 145, 105, 72, 16, 14, 14, 14, 32.4641 + 192, 226, 208, 198, 178, 185, 190, 183, 154, 72, 226, 222, 210, 199, 173, 152, 32.4642 + 141, 95, 42, 15, 14, 14, 14, 25, 242, 236, 218, 195, 170, 162, 132, 82, 32.4643 + 60, 73, 100, 100, 89, 84, 85, 87, 90, 90, 97, 97, 104, 122, 107, 107, 32.4644 + 97, 73, 48, 14, 18, 14, 72, 237, 234, 232, 213, 198, 179, 148, 82, 31, 32.4645 + 15, 14, 14, 14, 14, 14, 14, 24, 217, 228, 230, 222, 222, 205, 178, 139, 32.4646 + 75, 14, 18, 14, 14, 14, 198, 236, 226, 222, 202, 179, 154, 111, 65, 14, 32.4647 + 14, 14, 14, 15, 14, 15, 14, 14, 24, 199, 222, 209, 199, 195, 164, 175, 32.4648 + 90, 25, 23, 225, 211, 206, 195, 182, 145, 116, 72, 14, 14, 14, 14, 14, 32.4649 + 14, 14, 14, 14, 14, 14, 76, 234, 220, 226, 214, 169, 155, 120, 61, 14, 32.4650 + 18, 21, 109, 237, 203, 186, 185, 182, 173, 154, 111, 75, 14, 19, 14, 14, 32.4651 + 16, 14, 14, 169, 209, 203, 203, 189, 186, 141, 141, 79, 14, 16, 14, 14, 32.4652 + 14, 14, 14, 14, 17, 14, 189, 234, 232, 224, 215, 206, 198, 169, 124, 90, 32.4653 + 14, 14, 18, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4654 + 14, 14, 14, 15, 14, 41, 238, 238, 228, 206, 204, 139, 145, 118, 14, 16, 32.4655 + 14, 14, 14, 14, 15, 14, 14, 175, 231, 231, 231, 188, 199, 176, 113, 52, 32.4656 + 16, 18, 173, 228, 214, 195, 198, 141, 132, 134, 15, 19, 14, 15, 14, 14, 32.4657 + 14, 14, 14, 14, 15, 14, 228, 241, 231, 215, 198, 161, 165, 64, 18, 165, 32.4658 + 235, 219, 222, 202, 167, 165, 95, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.4659 + 14, 14, 15, 224, 232, 235, 225, 188, 162, 137, 105, 14, 19, 14, 14, 14, 32.4660 + 14, 14, 15, 14, 14, 59, 134, 139, 164, 193, 198, 189, 189, 206, 207, 197, 32.4661 + 195, 211, 181, 179, 150, 38, 14, 14, 219, 233, 244, 211, 215, 209, 176, 100, 32.4662 + 24, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 20, 14, 20, 14, 32.4663 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4664 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 87, 225, 214, 217, 205, 32.4665 + 197, 204, 190, 192, 222, 199, 204, 155, 118, 111, 39, 14, 14, 14, 14, 15, 32.4666 + 14, 14, 218, 232, 236, 226, 195, 183, 147, 85, 14, 15, 14, 14, 14, 14, 32.4667 + 14, 14, 14, 14, 14, 92, 246, 236, 232, 218, 170, 145, 141, 63, 14, 14, 32.4668 + 14, 229, 230, 232, 219, 223, 170, 159, 107, 71, 14, 14, 14, 14, 14, 14, 32.4669 + 14, 14, 161, 226, 225, 221, 211, 194, 164, 128, 98, 14, 14, 14, 15, 14, 32.4670 + 14, 173, 240, 238, 225, 210, 195, 172, 126, 122, 14, 16, 14, 14, 14, 14, 32.4671 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4672 + 14, 14, 14, 14, 15, 14, 192, 232, 228, 217, 211, 202, 199, 204, 193, 152, 32.4673 + 232, 203, 204, 207, 167, 100, 128, 28, 14, 19, 16, 14, 189, 227, 210, 205, 32.4674 + 185, 198, 203, 197, 190, 176, 234, 226, 219, 203, 157, 143, 139, 69, 22, 14, 32.4675 + 14, 19, 21, 55, 249, 242, 222, 213, 186, 181, 134, 46, 14, 14, 14, 14, 32.4676 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 20, 14, 14, 16, 32.4677 + 18, 14, 208, 231, 230, 228, 224, 181, 161, 114, 50, 16, 14, 14, 14, 14, 32.4678 + 14, 14, 22, 46, 246, 238, 233, 224, 222, 205, 173, 120, 68, 14, 21, 14, 32.4679 + 14, 14, 230, 238, 231, 227, 207, 175, 150, 105, 60, 14, 18, 14, 14, 14, 32.4680 + 14, 14, 14, 15, 67, 231, 226, 218, 210, 199, 173, 161, 90, 15, 48, 242, 32.4681 + 225, 221, 205, 192, 155, 100, 57, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4682 + 14, 16, 148, 243, 223, 227, 208, 165, 155, 132, 40, 14, 16, 14, 167, 235, 32.4683 + 211, 195, 190, 181, 178, 157, 100, 56, 14, 20, 14, 14, 17, 14, 14, 195, 32.4684 + 224, 216, 213, 190, 188, 136, 126, 53, 14, 21, 14, 14, 14, 14, 14, 15, 32.4685 + 14, 14, 229, 237, 234, 236, 224, 209, 208, 186, 122, 72, 14, 14, 14, 14, 32.4686 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 20, 14, 14, 14, 14, 15, 32.4687 + 15, 155, 244, 236, 232, 219, 194, 167, 116, 81, 14, 14, 14, 14, 14, 14, 32.4688 + 14, 21, 15, 229, 239, 241, 225, 215, 188, 175, 143, 30, 14, 14, 188, 222, 32.4689 + 218, 217, 193, 172, 143, 87, 16, 16, 14, 14, 14, 14, 14, 14, 15, 14, 32.4690 + 14, 102, 246, 248, 243, 234, 210, 193, 143, 47, 19, 204, 237, 243, 239, 214, 32.4691 + 186, 173, 93, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 25, 87, 237, 32.4692 + 238, 237, 234, 164, 154, 136, 69, 14, 18, 15, 14, 14, 14, 14, 14, 14, 32.4693 + 14, 14, 14, 14, 41, 65, 130, 172, 217, 215, 221, 219, 217, 226, 203, 175, 32.4694 + 141, 55, 14, 14, 238, 240, 240, 230, 211, 203, 164, 97, 14, 14, 14, 14, 32.4695 + 14, 15, 14, 14, 20, 14, 14, 19, 14, 14, 21, 14, 14, 14, 14, 14, 32.4696 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4697 + 14, 14, 14, 14, 14, 14, 14, 16, 217, 224, 239, 217, 217, 215, 216, 218, 32.4698 + 218, 208, 173, 126, 118, 53, 16, 14, 14, 14, 14, 15, 14, 14, 229, 235, 32.4699 + 239, 215, 203, 183, 122, 57, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4700 + 14, 186, 237, 243, 236, 211, 197, 161, 120, 29, 20, 14, 81, 247, 240, 237, 32.4701 + 226, 209, 181, 157, 114, 30, 14, 14, 15, 15, 14, 14, 14, 14, 205, 236, 32.4702 + 228, 236, 215, 188, 161, 130, 75, 14, 14, 14, 14, 14, 14, 225, 242, 237, 32.4703 + 221, 220, 203, 155, 116, 76, 14, 14, 15, 14, 17, 14, 14, 14, 14, 14, 32.4704 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4705 + 15, 14, 199, 234, 232, 222, 215, 213, 217, 214, 216, 214, 218, 215, 219, 170, 32.4706 + 161, 137, 89, 14, 15, 15, 16, 14, 192, 232, 225, 213, 200, 204, 210, 219, 32.4707 + 226, 234, 236, 235, 228, 221, 162, 150, 89, 42, 14, 16, 14, 14, 14, 128, 32.4708 + 244, 243, 239, 224, 208, 193, 147, 53, 14, 14, 14, 14, 14, 14, 14, 14, 32.4709 + 14, 14, 14, 14, 14, 14, 14, 16, 18, 14, 14, 18, 14, 16, 219, 235, 32.4710 + 229, 228, 197, 183, 167, 89, 27, 14, 14, 14, 14, 14, 14, 14, 17, 143, 32.4711 + 241, 246, 242, 225, 225, 186, 167, 126, 22, 19, 14, 14, 14, 64, 234, 233, 32.4712 + 240, 218, 223, 178, 157, 120, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 32.4713 + 219, 238, 241, 233, 229, 185, 205, 143, 71, 14, 120, 241, 237, 233, 236, 192, 32.4714 + 175, 139, 28, 20, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 227, 243, 32.4715 + 228, 234, 209, 183, 145, 118, 21, 14, 14, 14, 195, 219, 206, 219, 189, 199, 32.4716 + 178, 132, 116, 14, 18, 14, 14, 14, 14, 14, 14, 231, 228, 238, 224, 206, 32.4717 + 164, 143, 120, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 235, 241, 32.4718 + 236, 234, 225, 216, 206, 186, 120, 59, 14, 14, 14, 14, 14, 14, 14, 15, 32.4719 + 14, 14, 14, 24, 15, 14, 14, 14, 14, 14, 14, 14, 15, 185, 245, 238, 32.4720 + 236, 225, 193, 169, 128, 65, 14, 14, 14, 14, 14, 14, 14, 24, 31, 239, 32.4721 + 239, 240, 225, 208, 175, 154, 104, 16, 14, 14, 182, 225, 224, 225, 206, 176, 32.4722 + 155, 85, 14, 15, 14, 14, 14, 14, 16, 14, 14, 19, 14, 215, 251, 243, 32.4723 + 245, 230, 200, 186, 122, 36, 14, 194, 242, 242, 236, 215, 183, 157, 84, 20, 32.4724 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 183, 240, 238, 240, 203, 178, 32.4725 + 155, 124, 40, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.4726 + 14, 14, 21, 55, 181, 231, 231, 233, 230, 233, 202, 162, 122, 39, 14, 31, 32.4727 + 240, 241, 243, 234, 216, 203, 155, 81, 14, 14, 14, 14, 14, 14, 14, 14, 32.4728 + 14, 14, 15, 16, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4729 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4730 + 14, 14, 14, 18, 197, 234, 239, 230, 225, 221, 220, 218, 210, 185, 147, 113, 32.4731 + 75, 34, 15, 14, 14, 14, 14, 15, 14, 14, 231, 234, 241, 218, 200, 176, 32.4732 + 137, 57, 15, 14, 14, 14, 14, 14, 14, 14, 16, 14, 31, 231, 246, 237, 32.4733 + 235, 194, 179, 150, 102, 21, 14, 14, 141, 251, 243, 240, 226, 208, 182, 150, 32.4734 + 114, 32, 14, 15, 16, 16, 14, 14, 14, 22, 215, 239, 234, 234, 217, 193, 32.4735 + 161, 118, 43, 14, 14, 14, 14, 14, 34, 238, 245, 237, 221, 214, 195, 150, 32.4736 + 126, 63, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4737 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 203, 238, 32.4738 + 235, 229, 219, 219, 219, 220, 218, 220, 217, 215, 203, 178, 134, 116, 55, 14, 32.4739 + 15, 15, 16, 14, 193, 234, 230, 220, 211, 215, 219, 221, 225, 234, 239, 238, 32.4740 + 230, 195, 170, 114, 82, 15, 14, 14, 14, 14, 15, 152, 243, 244, 240, 232, 32.4741 + 207, 186, 134, 54, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4742 + 26, 15, 14, 14, 14, 16, 16, 14, 14, 44, 224, 233, 230, 217, 195, 176, 32.4743 + 120, 53, 14, 14, 14, 14, 14, 14, 14, 14, 14, 203, 244, 246, 244, 232, 32.4744 + 222, 176, 154, 102, 18, 16, 14, 14, 14, 124, 243, 239, 238, 216, 215, 173, 32.4745 + 161, 128, 16, 14, 18, 15, 14, 14, 14, 14, 14, 76, 243, 242, 240, 228, 32.4746 + 220, 189, 185, 128, 43, 14, 104, 239, 242, 236, 231, 190, 195, 148, 23, 15, 32.4747 + 20, 15, 14, 14, 15, 14, 14, 14, 14, 87, 239, 243, 234, 230, 199, 167, 32.4748 + 145, 69, 16, 14, 14, 19, 207, 221, 217, 226, 202, 198, 172, 132, 98, 14, 32.4749 + 15, 14, 15, 14, 14, 17, 53, 237, 238, 244, 228, 205, 159, 124, 89, 15, 32.4750 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 32, 239, 243, 241, 231, 232, 229, 32.4751 + 208, 189, 137, 53, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4752 + 14, 18, 14, 16, 14, 14, 14, 14, 26, 222, 243, 242, 236, 219, 181, 161, 32.4753 + 128, 36, 14, 14, 14, 14, 14, 14, 18, 19, 100, 246, 242, 242, 225, 209, 32.4754 + 173, 134, 78, 14, 14, 14, 186, 226, 226, 225, 202, 175, 137, 76, 14, 18, 32.4755 + 14, 14, 14, 14, 14, 14, 14, 14, 20, 250, 250, 240, 243, 213, 189, 176, 32.4756 + 92, 24, 14, 186, 240, 234, 224, 210, 178, 136, 69, 20, 14, 14, 15, 15, 32.4757 + 14, 14, 14, 14, 16, 26, 239, 243, 239, 237, 185, 173, 155, 95, 19, 14, 32.4758 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 15, 32.4759 + 139, 234, 225, 227, 226, 225, 188, 159, 122, 33, 19, 92, 240, 242, 243, 235, 32.4760 + 218, 204, 154, 75, 14, 14, 14, 14, 14, 14, 14, 14, 19, 17, 14, 14, 32.4761 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4762 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.4763 + 120, 238, 230, 234, 228, 225, 223, 217, 202, 161, 126, 105, 38, 21, 14, 14, 32.4764 + 15, 14, 14, 14, 14, 14, 232, 235, 239, 215, 195, 176, 132, 42, 14, 14, 32.4765 + 14, 14, 14, 14, 14, 14, 16, 14, 111, 246, 248, 238, 231, 176, 165, 143, 32.4766 + 76, 14, 14, 14, 204, 249, 238, 236, 218, 197, 176, 134, 60, 14, 14, 14, 32.4767 + 14, 15, 14, 18, 16, 78, 228, 240, 235, 228, 217, 183, 159, 111, 21, 16, 32.4768 + 15, 14, 14, 15, 97, 243, 243, 234, 221, 207, 183, 145, 118, 37, 19, 16, 32.4769 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4770 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 203, 240, 239, 232, 225, 224, 32.4771 + 222, 220, 220, 221, 217, 216, 181, 175, 111, 78, 25, 14, 14, 14, 15, 14, 32.4772 + 195, 238, 234, 225, 217, 220, 222, 221, 225, 232, 234, 234, 224, 175, 159, 100, 32.4773 + 50, 14, 14, 14, 14, 14, 15, 193, 241, 243, 242, 236, 233, 203, 150, 65, 32.4774 + 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 19, 32.4775 + 14, 14, 15, 14, 14, 113, 232, 234, 232, 211, 202, 183, 147, 63, 19, 14, 32.4776 + 14, 14, 14, 14, 14, 14, 14, 242, 246, 246, 244, 232, 211, 169, 143, 78, 32.4777 + 14, 14, 14, 14, 14, 198, 243, 238, 236, 217, 214, 189, 139, 85, 16, 14, 32.4778 + 14, 14, 14, 14, 14, 14, 14, 183, 241, 238, 242, 234, 202, 190, 162, 93, 32.4779 + 19, 15, 100, 234, 239, 237, 223, 172, 181, 111, 15, 14, 14, 15, 18, 14, 32.4780 + 14, 14, 14, 14, 14, 217, 242, 238, 234, 214, 183, 159, 136, 29, 16, 14, 32.4781 + 19, 61, 225, 228, 229, 221, 208, 185, 155, 128, 67, 14, 14, 16, 14, 14, 32.4782 + 14, 15, 141, 238, 241, 243, 226, 202, 161, 118, 65, 14, 14, 14, 14, 14, 32.4783 + 14, 14, 14, 14, 14, 68, 243, 249, 247, 234, 238, 239, 218, 202, 162, 63, 32.4784 + 16, 14, 14, 14, 15, 15, 15, 15, 14, 19, 14, 14, 22, 15, 14, 14, 32.4785 + 14, 14, 14, 15, 44, 240, 244, 246, 239, 218, 175, 155, 118, 15, 15, 14, 32.4786 + 14, 14, 14, 14, 15, 16, 182, 248, 246, 243, 232, 209, 179, 137, 63, 14, 32.4787 + 14, 14, 193, 231, 231, 228, 207, 182, 139, 78, 15, 21, 14, 14, 14, 14, 32.4788 + 14, 21, 14, 14, 148, 249, 244, 249, 238, 197, 183, 164, 63, 14, 15, 189, 32.4789 + 234, 228, 219, 205, 183, 147, 68, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4790 + 15, 165, 249, 246, 239, 222, 208, 148, 137, 65, 18, 15, 14, 18, 15, 14, 32.4791 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 27, 14, 136, 238, 235, 229, 32.4792 + 223, 217, 183, 164, 120, 25, 16, 137, 243, 245, 245, 240, 226, 211, 169, 93, 32.4793 + 14, 14, 14, 17, 17, 14, 14, 16, 14, 14, 14, 14, 20, 14, 14, 47, 32.4794 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4795 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 55, 234, 224, 239, 32.4796 + 224, 229, 225, 213, 192, 161, 118, 84, 19, 14, 14, 14, 14, 14, 14, 14, 32.4797 + 14, 14, 236, 238, 242, 217, 200, 182, 124, 32, 14, 21, 14, 14, 14, 14, 32.4798 + 14, 15, 16, 15, 234, 239, 243, 246, 225, 182, 170, 118, 47, 14, 14, 26, 32.4799 + 232, 244, 234, 235, 217, 189, 178, 126, 65, 20, 14, 19, 18, 18, 14, 14, 32.4800 + 15, 152, 242, 242, 237, 232, 221, 182, 155, 111, 15, 16, 15, 16, 15, 14, 32.4801 + 169, 245, 243, 236, 229, 206, 181, 159, 107, 15, 14, 14, 14, 14, 14, 14, 32.4802 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4803 + 14, 14, 14, 14, 16, 15, 207, 243, 244, 238, 232, 232, 232, 230, 229, 227, 32.4804 + 223, 217, 176, 162, 105, 44, 14, 17, 14, 14, 14, 15, 195, 243, 239, 232, 32.4805 + 222, 223, 228, 227, 229, 233, 234, 233, 210, 181, 132, 97, 17, 14, 14, 14, 32.4806 + 16, 14, 18, 216, 239, 244, 243, 240, 219, 193, 143, 61, 15, 14, 14, 14, 32.4807 + 15, 14, 14, 14, 14, 15, 15, 15, 33, 15, 18, 36, 14, 14, 14, 14, 32.4808 + 14, 188, 234, 232, 234, 211, 218, 198, 148, 59, 15, 15, 23, 18, 14, 15, 32.4809 + 16, 18, 45, 250, 240, 242, 245, 243, 210, 170, 139, 59, 14, 14, 14, 14, 32.4810 + 25, 236, 239, 234, 234, 224, 213, 198, 148, 63, 20, 21, 15, 16, 21, 18, 32.4811 + 14, 21, 76, 243, 242, 241, 239, 229, 195, 190, 152, 59, 15, 18, 113, 231, 32.4812 + 232, 239, 221, 175, 170, 90, 15, 19, 14, 14, 15, 14, 14, 14, 14, 19, 32.4813 + 57, 246, 243, 238, 226, 190, 159, 155, 104, 14, 18, 18, 14, 147, 242, 231, 32.4814 + 237, 222, 218, 181, 150, 114, 38, 14, 14, 17, 14, 14, 14, 15, 215, 242, 32.4815 + 243, 240, 224, 198, 170, 124, 56, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4816 + 15, 120, 249, 251, 250, 240, 243, 244, 225, 211, 186, 97, 15, 14, 14, 14, 32.4817 + 14, 14, 14, 14, 15, 14, 14, 18, 14, 14, 30, 167, 14, 14, 20, 15, 32.4818 + 90, 248, 248, 250, 244, 221, 186, 161, 100, 14, 15, 14, 14, 15, 14, 15, 32.4819 + 16, 18, 234, 251, 250, 246, 235, 206, 181, 124, 45, 14, 15, 14, 199, 237, 32.4820 + 236, 232, 218, 203, 188, 104, 18, 16, 15, 19, 18, 15, 14, 21, 15, 38, 32.4821 + 242, 243, 248, 249, 222, 189, 169, 128, 37, 14, 14, 188, 231, 231, 223, 205, 32.4822 + 188, 169, 78, 14, 15, 19, 15, 14, 14, 14, 14, 14, 23, 249, 249, 247, 32.4823 + 237, 199, 188, 152, 118, 40, 21, 15, 15, 25, 15, 14, 14, 14, 14, 14, 32.4824 + 14, 14, 14, 14, 14, 14, 29, 15, 198, 239, 241, 232, 225, 215, 178, 150, 32.4825 + 90, 14, 14, 136, 249, 249, 250, 248, 239, 228, 197, 141, 24, 14, 14, 14, 32.4826 + 14, 14, 14, 14, 18, 16, 30, 14, 14, 14, 24, 137, 14, 14, 14, 14, 32.4827 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4828 + 14, 14, 14, 14, 14, 14, 14, 14, 21, 222, 228, 243, 225, 234, 229, 194, 32.4829 + 175, 159, 98, 44, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 239, 239, 32.4830 + 245, 228, 217, 197, 176, 43, 16, 21, 15, 15, 16, 16, 18, 19, 18, 124, 32.4831 + 253, 240, 249, 241, 200, 190, 165, 78, 21, 14, 14, 52, 242, 238, 234, 232, 32.4832 + 222, 194, 186, 139, 52, 15, 15, 18, 19, 19, 14, 16, 18, 211, 250, 244, 32.4833 + 239, 240, 227, 185, 148, 104, 15, 15, 14, 16, 14, 14, 220, 247, 246, 239, 32.4834 + 238, 215, 188, 161, 111, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.4835 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4836 + 18, 16, 215, 248, 248, 246, 242, 241, 242, 240, 238, 237, 228, 206, 176, 126, 32.4837 + 89, 18, 14, 14, 14, 14, 14, 15, 204, 248, 247, 242, 229, 229, 234, 234, 32.4838 + 238, 239, 240, 234, 193, 179, 114, 60, 14, 14, 14, 14, 14, 14, 15, 216, 32.4839 + 237, 243, 243, 242, 243, 233, 203, 128, 24, 16, 15, 15, 15, 15, 15, 15, 32.4840 + 16, 16, 18, 18, 16, 21, 56, 107, 19, 14, 14, 14, 14, 224, 237, 236, 32.4841 + 238, 223, 231, 217, 186, 84, 19, 18, 19, 16, 15, 14, 14, 14, 136, 251, 32.4842 + 248, 250, 245, 240, 216, 176, 134, 46, 14, 14, 14, 15, 76, 251, 240, 237, 32.4843 + 233, 230, 208, 194, 148, 27, 19, 19, 16, 15, 15, 15, 18, 27, 213, 253, 32.4844 + 246, 250, 239, 215, 193, 181, 137, 23, 16, 15, 114, 230, 228, 236, 219, 190, 32.4845 + 197, 118, 25, 16, 19, 14, 14, 14, 16, 17, 15, 14, 202, 252, 247, 246, 32.4846 + 217, 173, 128, 134, 53, 14, 15, 19, 16, 222, 248, 239, 243, 227, 226, 181, 32.4847 + 147, 100, 18, 14, 14, 16, 14, 21, 15, 21, 243, 249, 246, 240, 225, 194, 32.4848 + 173, 124, 44, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 169, 251, 252, 32.4849 + 253, 248, 249, 250, 243, 236, 218, 175, 20, 18, 16, 16, 16, 16, 16, 15, 32.4850 + 24, 18, 15, 15, 15, 24, 113, 226, 14, 14, 21, 18, 165, 249, 251, 252, 32.4851 + 248, 224, 198, 165, 76, 15, 14, 15, 14, 14, 14, 16, 16, 34, 250, 253, 32.4852 + 254, 250, 239, 206, 178, 107, 28, 15, 18, 15, 197, 239, 240, 240, 231, 226, 32.4853 + 230, 157, 20, 18, 18, 23, 20, 15, 16, 15, 16, 170, 251, 248, 254, 238, 32.4854 + 200, 186, 155, 85, 21, 14, 15, 188, 233, 236, 232, 217, 200, 193, 116, 21, 32.4855 + 14, 14, 15, 15, 14, 14, 14, 14, 165, 254, 252, 249, 236, 199, 147, 173, 32.4856 + 84, 23, 18, 18, 34, 19, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.4857 + 39, 15, 16, 50, 246, 246, 246, 232, 229, 207, 165, 137, 71, 14, 21, 137, 32.4858 + 250, 252, 253, 252, 246, 243, 232, 197, 64, 34, 16, 15, 18, 16, 16, 18, 32.4859 + 15, 15, 15, 15, 31, 104, 170, 207, 14, 14, 14, 14, 14, 14, 14, 14, 32.4860 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4861 + 14, 14, 16, 15, 16, 189, 236, 246, 238, 241, 229, 190, 167, 143, 73, 21, 32.4862 + 14, 14, 14, 14, 14, 14, 14, 16, 18, 18, 242, 242, 248, 238, 234, 220, 32.4863 + 227, 90, 19, 18, 16, 15, 19, 15, 21, 20, 20, 244, 250, 252, 253, 216, 32.4864 + 186, 193, 150, 50, 15, 16, 15, 126, 246, 242, 242, 236, 235, 218, 210, 176, 32.4865 + 34, 16, 16, 16, 16, 15, 15, 19, 68, 240, 253, 248, 244, 246, 223, 194, 32.4866 + 154, 82, 23, 15, 14, 16, 14, 27, 244, 250, 250, 241, 243, 217, 185, 150, 32.4867 + 92, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4868 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 224, 251, 32.4869 + 252, 250, 248, 248, 248, 247, 246, 245, 232, 198, 179, 102, 68, 14, 14, 14, 32.4870 + 14, 14, 15, 15, 215, 252, 252, 249, 238, 236, 239, 240, 245, 247, 241, 234, 32.4871 + 195, 161, 107, 24, 14, 14, 15, 14, 14, 14, 15, 194, 244, 247, 248, 247, 32.4872 + 244, 243, 235, 186, 85, 26, 21, 20, 18, 18, 19, 20, 21, 21, 21, 21, 32.4873 + 21, 145, 206, 172, 14, 14, 14, 16, 15, 240, 245, 243, 242, 231, 239, 230, 32.4874 + 217, 143, 48, 21, 21, 21, 18, 16, 15, 26, 214, 252, 253, 253, 246, 236, 32.4875 + 217, 178, 130, 31, 14, 14, 14, 15, 167, 251, 243, 242, 240, 240, 229, 219, 32.4876 + 139, 23, 20, 21, 23, 18, 18, 20, 48, 122, 251, 251, 243, 252, 239, 215, 32.4877 + 195, 161, 109, 16, 24, 15, 116, 231, 237, 238, 217, 207, 219, 165, 49, 15, 32.4878 + 15, 14, 16, 19, 14, 14, 15, 50, 252, 251, 250, 246, 206, 173, 130, 105, 32.4879 + 21, 14, 15, 16, 21, 246, 252, 248, 248, 234, 225, 183, 147, 79, 14, 14, 32.4880 + 14, 14, 14, 19, 16, 68, 250, 252, 250, 242, 224, 190, 169, 107, 29, 14, 32.4881 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 200, 252, 253, 253, 253, 252, 252, 32.4882 + 251, 250, 247, 240, 217, 217, 217, 219, 221, 222, 223, 223, 210, 229, 231, 220, 32.4883 + 224, 240, 233, 176, 19, 14, 16, 20, 228, 249, 254, 253, 248, 218, 202, 162, 32.4884 + 50, 16, 14, 18, 14, 14, 14, 16, 18, 102, 255, 254, 255, 250, 240, 202, 32.4885 + 175, 105, 20, 15, 16, 16, 197, 242, 244, 245, 239, 237, 238, 221, 107, 55, 32.4886 + 20, 19, 19, 18, 18, 21, 113, 244, 253, 250, 252, 215, 185, 183, 120, 46, 32.4887 + 15, 14, 14, 181, 236, 243, 240, 233, 225, 219, 185, 116, 20, 15, 15, 18, 32.4888 + 15, 14, 19, 73, 250, 254, 254, 249, 217, 188, 155, 139, 47, 19, 18, 53, 32.4889 + 145, 20, 23, 18, 14, 14, 14, 14, 14, 15, 16, 16, 18, 18, 24, 178, 32.4890 + 254, 250, 252, 243, 227, 189, 162, 130, 56, 16, 27, 97, 252, 253, 254, 254, 32.4891 + 250, 248, 247, 237, 241, 226, 214, 220, 224, 219, 219, 227, 224, 229, 220, 229, 32.4892 + 242, 246, 229, 128, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4893 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 15, 32.4894 + 18, 155, 246, 247, 248, 242, 224, 194, 167, 104, 47, 14, 14, 14, 14, 14, 32.4895 + 14, 14, 14, 14, 18, 18, 243, 243, 250, 243, 243, 238, 235, 186, 92, 32, 32.4896 + 18, 18, 18, 18, 20, 40, 154, 254, 250, 254, 247, 193, 181, 178, 97, 21, 32.4897 + 16, 19, 15, 204, 251, 249, 250, 241, 248, 238, 234, 221, 95, 31, 29, 23, 32.4898 + 19, 19, 19, 21, 211, 253, 254, 252, 249, 249, 206, 204, 161, 53, 31, 15, 32.4899 + 21, 14, 14, 85, 253, 253, 253, 243, 244, 217, 190, 152, 54, 27, 14, 14, 32.4900 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4901 + 14, 14, 14, 14, 14, 14, 14, 15, 19, 18, 230, 253, 253, 252, 251, 252, 32.4902 + 252, 251, 251, 250, 232, 204, 172, 98, 37, 14, 14, 14, 14, 14, 15, 15, 32.4903 + 221, 254, 254, 253, 247, 244, 244, 246, 249, 250, 240, 217, 193, 137, 64, 14, 32.4904 + 19, 14, 14, 14, 14, 15, 18, 173, 249, 251, 252, 251, 251, 251, 252, 251, 32.4905 + 240, 229, 227, 223, 219, 221, 222, 227, 230, 232, 229, 229, 250, 251, 224, 71, 32.4906 + 14, 14, 19, 14, 20, 244, 250, 250, 246, 246, 247, 243, 251, 243, 225, 210, 32.4907 + 218, 226, 225, 222, 215, 209, 249, 251, 252, 250, 250, 248, 210, 172, 116, 19, 32.4908 + 14, 14, 14, 16, 232, 250, 249, 249, 246, 248, 243, 240, 206, 150, 175, 154, 32.4909 + 167, 154, 150, 161, 246, 252, 255, 254, 248, 250, 218, 204, 190, 136, 64, 16, 32.4910 + 24, 16, 97, 235, 245, 245, 236, 229, 229, 207, 139, 34, 18, 16, 21, 21, 32.4911 + 15, 15, 69, 200, 255, 253, 250, 229, 189, 162, 136, 52, 14, 14, 15, 18, 32.4912 + 114, 254, 254, 254, 251, 243, 217, 188, 150, 60, 14, 14, 14, 14, 14, 14, 32.4913 + 18, 169, 254, 253, 252, 243, 229, 190, 170, 97, 18, 14, 14, 14, 14, 14, 32.4914 + 14, 14, 14, 14, 16, 222, 253, 254, 252, 253, 252, 251, 253, 253, 252, 252, 32.4915 + 251, 251, 251, 252, 253, 253, 253, 253, 254, 253, 254, 253, 250, 252, 242, 167, 32.4916 + 24, 15, 15, 20, 246, 250, 255, 252, 242, 209, 199, 152, 23, 19, 15, 16, 32.4917 + 18, 19, 14, 16, 21, 150, 255, 254, 254, 247, 234, 193, 173, 95, 16, 15, 32.4918 + 16, 16, 194, 241, 245, 246, 244, 244, 229, 251, 232, 165, 27, 20, 21, 26, 32.4919 + 21, 122, 246, 254, 255, 246, 232, 199, 165, 173, 82, 15, 14, 14, 14, 159, 32.4920 + 242, 244, 246, 245, 239, 237, 236, 226, 143, 34, 18, 23, 20, 18, 109, 246, 32.4921 + 255, 253, 253, 240, 182, 147, 193, 63, 19, 21, 19, 136, 240, 21, 36, 20, 32.4922 + 16, 15, 16, 16, 18, 18, 19, 20, 20, 145, 199, 255, 255, 252, 253, 246, 32.4923 + 227, 182, 165, 130, 43, 14, 15, 21, 252, 253, 255, 254, 250, 250, 251, 249, 32.4924 + 248, 246, 249, 253, 254, 253, 253, 254, 254, 254, 250, 253, 248, 229, 211, 109, 32.4925 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4926 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 26, 16, 21, 126, 251, 250, 32.4927 + 250, 234, 206, 192, 152, 72, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4928 + 16, 18, 239, 242, 250, 246, 247, 243, 230, 246, 219, 87, 20, 19, 20, 19, 32.4929 + 21, 189, 255, 252, 255, 253, 206, 188, 172, 148, 50, 16, 16, 16, 14, 229, 32.4930 + 254, 254, 254, 245, 252, 249, 247, 244, 252, 232, 234, 234, 232, 242, 248, 254, 32.4931 + 255, 255, 254, 254, 252, 248, 192, 210, 157, 20, 23, 15, 24, 15, 14, 148, 32.4932 + 255, 253, 254, 243, 245, 220, 192, 152, 16, 23, 14, 14, 16, 14, 14, 14, 32.4933 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4934 + 14, 14, 14, 15, 18, 18, 234, 254, 254, 253, 253, 253, 253, 253, 252, 251, 32.4935 + 222, 202, 152, 92, 14, 14, 14, 14, 14, 14, 15, 16, 226, 255, 255, 254, 32.4936 + 251, 249, 247, 249, 251, 250, 236, 202, 181, 114, 18, 14, 14, 14, 14, 14, 32.4937 + 14, 14, 15, 143, 250, 250, 253, 250, 253, 251, 251, 252, 252, 253, 254, 252, 32.4938 + 252, 252, 253, 253, 254, 254, 254, 253, 246, 229, 173, 19, 19, 14, 21, 14, 32.4939 + 21, 246, 252, 253, 250, 251, 251, 250, 246, 251, 253, 253, 253, 253, 251, 246, 32.4940 + 226, 240, 249, 255, 255, 252, 250, 240, 204, 161, 97, 14, 14, 15, 16, 18, 32.4941 + 254, 252, 254, 254, 247, 248, 246, 244, 249, 245, 255, 248, 253, 253, 253, 253, 32.4942 + 254, 255, 251, 254, 252, 247, 204, 198, 165, 105, 21, 16, 15, 15, 68, 233, 32.4943 + 243, 249, 248, 245, 238, 242, 240, 185, 82, 21, 19, 19, 27, 75, 195, 255, 32.4944 + 255, 255, 250, 193, 165, 130, 107, 14, 16, 14, 18, 19, 199, 255, 255, 255, 32.4945 + 253, 249, 214, 190, 154, 50, 14, 14, 14, 14, 14, 15, 21, 233, 255, 255, 32.4946 + 253, 243, 231, 192, 170, 98, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.4947 + 16, 228, 254, 253, 250, 251, 252, 252, 253, 253, 254, 254, 254, 254, 255, 255, 32.4948 + 254, 255, 255, 254, 255, 252, 252, 255, 252, 243, 222, 122, 16, 15, 15, 85, 32.4949 + 248, 255, 251, 253, 230, 221, 181, 132, 18, 26, 15, 18, 27, 14, 22, 15, 32.4950 + 18, 240, 254, 254, 254, 250, 205, 214, 162, 73, 20, 15, 16, 21, 92, 241, 32.4951 + 238, 249, 245, 252, 247, 244, 244, 246, 245, 238, 236, 236, 253, 254, 254, 254, 32.4952 + 250, 238, 195, 162, 170, 78, 20, 14, 14, 14, 19, 63, 245, 250, 250, 249, 32.4953 + 250, 249, 245, 238, 246, 240, 230, 222, 238, 251, 253, 253, 253, 255, 243, 179, 32.4954 + 148, 155, 89, 19, 18, 32, 19, 225, 251, 242, 242, 238, 229, 225, 226, 227, 32.4955 + 231, 229, 232, 229, 255, 255, 255, 255, 255, 255, 253, 243, 189, 190, 159, 68, 32.4956 + 19, 14, 15, 19, 249, 249, 252, 250, 255, 250, 249, 248, 254, 255, 255, 255, 32.4957 + 255, 255, 255, 254, 255, 253, 254, 251, 234, 244, 203, 20, 14, 14, 14, 14, 32.4958 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4959 + 14, 14, 14, 14, 14, 18, 16, 18, 42, 246, 254, 253, 253, 225, 195, 178, 32.4960 + 100, 24, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 24, 21, 157, 249, 32.4961 + 248, 248, 253, 243, 245, 242, 242, 243, 242, 238, 238, 240, 255, 255, 255, 255, 32.4962 + 249, 225, 183, 150, 157, 75, 16, 18, 18, 18, 15, 250, 254, 255, 255, 253, 32.4963 + 252, 252, 253, 251, 251, 253, 253, 253, 255, 255, 254, 255, 255, 255, 254, 253, 32.4964 + 250, 238, 207, 183, 111, 18, 18, 16, 25, 15, 15, 220, 255, 255, 253, 252, 32.4965 + 238, 193, 181, 139, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4966 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 16, 15, 32.4967 + 16, 18, 233, 252, 253, 252, 251, 250, 253, 254, 253, 245, 215, 205, 145, 45, 32.4968 + 14, 14, 14, 14, 14, 14, 14, 16, 236, 255, 255, 255, 253, 251, 251, 252, 32.4969 + 251, 245, 220, 192, 159, 75, 19, 14, 15, 14, 14, 14, 14, 14, 20, 71, 32.4970 + 252, 251, 247, 250, 250, 252, 252, 251, 251, 251, 252, 253, 253, 254, 254, 253, 32.4971 + 253, 254, 253, 247, 227, 229, 122, 16, 14, 16, 14, 14, 19, 253, 248, 255, 32.4972 + 252, 251, 252, 253, 250, 252, 253, 252, 251, 250, 246, 233, 220, 179, 254, 254, 32.4973 + 253, 253, 251, 229, 193, 154, 90, 14, 15, 15, 18, 111, 255, 255, 255, 254, 32.4974 + 253, 250, 249, 250, 251, 250, 251, 252, 252, 253, 254, 254, 255, 255, 254, 251, 32.4975 + 245, 231, 193, 162, 141, 29, 20, 15, 20, 15, 14, 233, 246, 252, 252, 250, 32.4976 + 248, 247, 247, 243, 245, 240, 236, 239, 249, 254, 254, 254, 255, 250, 210, 179, 32.4977 + 155, 107, 40, 14, 14, 14, 29, 19, 239, 255, 255, 255, 254, 249, 210, 197, 32.4978 + 132, 14, 14, 14, 14, 14, 14, 15, 34, 253, 255, 255, 253, 250, 203, 210, 32.4979 + 178, 56, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 213, 246, 240, 32.4980 + 247, 247, 248, 249, 250, 250, 249, 249, 252, 253, 253, 253, 252, 253, 252, 250, 32.4981 + 250, 251, 250, 249, 222, 219, 219, 126, 24, 19, 18, 136, 248, 254, 248, 247, 32.4982 + 204, 188, 170, 89, 21, 21, 15, 18, 14, 14, 21, 29, 19, 248, 251, 253, 32.4983 + 246, 236, 189, 192, 136, 46, 15, 16, 28, 15, 34, 217, 244, 244, 213, 226, 32.4984 + 247, 245, 245, 247, 250, 250, 252, 254, 254, 254, 251, 242, 207, 179, 167, 165, 32.4985 + 90, 40, 15, 15, 14, 14, 14, 32, 240, 251, 250, 243, 239, 247, 249, 247, 32.4986 + 245, 247, 247, 247, 251, 254, 255, 253, 246, 221, 185, 175, 165, 105, 45, 16, 32.4987 + 16, 21, 21, 236, 253, 251, 253, 254, 254, 253, 253, 254, 254, 254, 254, 254, 32.4988 + 253, 254, 254, 254, 255, 253, 249, 224, 188, 157, 102, 41, 14, 14, 15, 18, 32.4989 + 190, 242, 250, 250, 250, 251, 248, 250, 251, 253, 253, 253, 253, 253, 252, 251, 32.4990 + 249, 243, 246, 229, 199, 209, 175, 24, 15, 14, 14, 14, 14, 14, 14, 14, 32.4991 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4992 + 15, 15, 18, 24, 190, 250, 255, 254, 243, 213, 189, 150, 68, 16, 15, 15, 32.4993 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 100, 238, 243, 231, 238, 229, 32.4994 + 246, 243, 243, 245, 248, 250, 253, 255, 254, 254, 253, 242, 198, 167, 159, 165, 32.4995 + 65, 31, 15, 15, 15, 15, 15, 249, 255, 255, 255, 254, 253, 252, 251, 247, 32.4996 + 249, 252, 251, 251, 253, 253, 252, 253, 254, 254, 254, 252, 248, 226, 190, 155, 32.4997 + 116, 18, 16, 16, 21, 15, 23, 245, 255, 255, 253, 250, 233, 190, 172, 111, 32.4998 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.4999 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 15, 16, 21, 225, 246, 32.5000 + 250, 250, 249, 248, 251, 252, 248, 229, 202, 176, 98, 24, 14, 14, 14, 14, 32.5001 + 14, 14, 15, 16, 217, 253, 255, 255, 252, 251, 251, 248, 242, 217, 189, 157, 32.5002 + 116, 55, 15, 14, 14, 14, 14, 14, 16, 14, 15, 31, 226, 244, 247, 243, 32.5003 + 245, 247, 248, 248, 248, 248, 250, 252, 251, 254, 254, 253, 253, 252, 244, 217, 32.5004 + 179, 188, 105, 18, 14, 14, 14, 18, 20, 250, 252, 252, 245, 245, 248, 247, 32.5005 + 245, 250, 251, 248, 246, 238, 207, 175, 134, 209, 254, 255, 253, 250, 250, 202, 32.5006 + 173, 132, 42, 14, 15, 16, 20, 185, 255, 255, 255, 254, 252, 249, 248, 247, 32.5007 + 249, 248, 248, 248, 250, 250, 251, 252, 254, 254, 251, 238, 210, 192, 172, 154, 32.5008 + 68, 19, 19, 15, 21, 18, 14, 139, 246, 249, 248, 247, 250, 252, 250, 245, 32.5009 + 251, 251, 251, 252, 253, 254, 254, 253, 243, 208, 189, 185, 132, 42, 14, 16, 32.5010 + 18, 14, 19, 31, 243, 254, 254, 254, 252, 242, 199, 182, 116, 14, 15, 14, 32.5011 + 14, 14, 14, 15, 73, 253, 254, 255, 251, 247, 193, 185, 126, 16, 15, 14, 32.5012 + 14, 14, 14, 14, 14, 14, 14, 14, 21, 170, 236, 236, 220, 217, 218, 229, 32.5013 + 243, 246, 247, 247, 249, 251, 251, 249, 248, 248, 247, 243, 240, 248, 243, 217, 32.5014 + 192, 198, 194, 65, 16, 14, 15, 186, 248, 252, 243, 234, 204, 173, 179, 48, 32.5015 + 21, 15, 20, 14, 16, 16, 14, 15, 20, 243, 246, 249, 243, 231, 198, 183, 32.5016 + 128, 20, 15, 16, 18, 14, 16, 92, 213, 239, 220, 205, 197, 207, 227, 248, 32.5017 + 252, 251, 250, 249, 243, 236, 224, 205, 189, 162, 124, 95, 24, 16, 14, 14, 32.5018 + 14, 14, 14, 14, 114, 208, 245, 236, 210, 213, 220, 217, 243, 248, 249, 247, 32.5019 + 246, 243, 238, 223, 222, 179, 152, 150, 102, 36, 15, 15, 15, 16, 69, 245, 32.5020 + 252, 253, 254, 255, 251, 250, 250, 251, 251, 251, 251, 251, 253, 253, 252, 248, 32.5021 + 238, 222, 208, 186, 175, 107, 48, 21, 14, 14, 14, 18, 126, 227, 240, 226, 32.5022 + 194, 227, 227, 243, 248, 252, 251, 251, 250, 250, 248, 246, 245, 236, 225, 204, 32.5023 + 183, 178, 120, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5024 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 18, 93, 32.5025 + 250, 254, 255, 251, 209, 197, 170, 104, 26, 15, 15, 18, 14, 14, 14, 14, 32.5026 + 14, 14, 14, 14, 22, 15, 31, 145, 222, 234, 225, 210, 208, 213, 232, 246, 32.5027 + 250, 250, 249, 247, 242, 238, 224, 202, 175, 143, 105, 85, 15, 15, 14, 14, 32.5028 + 14, 16, 18, 238, 248, 252, 250, 246, 248, 249, 249, 246, 249, 249, 246, 234, 32.5029 + 233, 218, 206, 208, 249, 247, 246, 240, 228, 202, 170, 132, 45, 15, 26, 15, 32.5030 + 15, 24, 57, 242, 251, 252, 243, 233, 204, 176, 147, 69, 16, 14, 14, 14, 32.5031 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5032 + 14, 14, 14, 14, 14, 14, 19, 14, 15, 26, 214, 241, 246, 244, 242, 239, 32.5033 + 243, 243, 230, 211, 188, 128, 55, 16, 14, 14, 14, 14, 14, 14, 15, 15, 32.5034 + 198, 250, 250, 244, 246, 246, 246, 243, 232, 204, 179, 157, 69, 32, 15, 14, 32.5035 + 14, 14, 14, 14, 14, 14, 14, 16, 165, 230, 244, 220, 226, 230, 234, 235, 32.5036 + 235, 234, 238, 240, 239, 246, 246, 244, 240, 228, 206, 176, 154, 141, 64, 14, 32.5037 + 14, 14, 14, 16, 18, 205, 249, 244, 239, 240, 246, 242, 239, 239, 228, 217, 32.5038 + 211, 202, 179, 139, 21, 237, 250, 253, 247, 242, 249, 189, 182, 148, 21, 21, 32.5039 + 16, 18, 18, 234, 255, 255, 255, 252, 249, 246, 240, 234, 220, 217, 218, 218, 32.5040 + 222, 221, 224, 226, 238, 235, 219, 199, 183, 159, 126, 92, 18, 15, 15, 14, 32.5041 + 15, 18, 14, 34, 234, 245, 244, 228, 214, 217, 236, 246, 246, 248, 247, 246, 32.5042 + 243, 239, 230, 214, 198, 189, 167, 116, 53, 20, 14, 14, 14, 14, 15, 98, 32.5043 + 251, 252, 251, 251, 249, 233, 195, 164, 93, 14, 14, 14, 14, 14, 14, 15, 32.5044 + 150, 254, 255, 253, 242, 238, 192, 186, 118, 16, 15, 26, 14, 14, 14, 14, 32.5045 + 14, 14, 14, 14, 15, 78, 181, 217, 209, 206, 199, 195, 198, 200, 202, 203, 32.5046 + 208, 215, 215, 209, 206, 207, 203, 198, 182, 193, 181, 175, 175, 185, 155, 26, 32.5047 + 15, 14, 14, 214, 235, 226, 195, 162, 169, 141, 152, 23, 15, 14, 19, 14, 32.5048 + 14, 14, 19, 14, 107, 245, 239, 199, 173, 159, 152, 137, 111, 15, 15, 14, 32.5049 + 14, 14, 14, 15, 97, 170, 202, 209, 206, 205, 199, 198, 197, 193, 195, 195, 32.5050 + 200, 185, 172, 169, 155, 116, 57, 21, 14, 14, 14, 14, 14, 14, 14, 14, 32.5051 + 20, 109, 192, 215, 214, 213, 204, 190, 183, 190, 195, 193, 198, 199, 195, 179, 32.5052 + 173, 143, 105, 57, 28, 14, 14, 19, 18, 16, 100, 239, 234, 226, 203, 200, 32.5053 + 224, 221, 222, 222, 221, 219, 217, 214, 206, 206, 203, 197, 194, 194, 190, 175, 32.5054 + 120, 59, 21, 14, 14, 14, 14, 18, 23, 152, 217, 225, 198, 205, 182, 181, 32.5055 + 210, 219, 217, 214, 209, 210, 204, 199, 195, 188, 169, 164, 175, 150, 75, 18, 32.5056 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5057 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 18, 21, 194, 250, 255, 250, 236, 32.5058 + 192, 169, 130, 56, 16, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5059 + 21, 16, 15, 29, 114, 199, 213, 195, 193, 189, 186, 188, 192, 194, 202, 206, 32.5060 + 199, 188, 172, 157, 139, 95, 45, 14, 14, 14, 15, 15, 14, 21, 14, 175, 32.5061 + 237, 243, 233, 214, 202, 199, 199, 199, 190, 198, 195, 192, 194, 181, 169, 172, 32.5062 + 239, 234, 217, 199, 186, 175, 155, 143, 21, 14, 24, 14, 15, 37, 87, 238, 32.5063 + 238, 238, 207, 193, 175, 161, 139, 59, 15, 14, 14, 14, 14, 14, 14, 14, 32.5064 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5065 + 14, 14, 15, 14, 15, 21, 179, 240, 204, 199, 189, 185, 186, 186, 176, 157, 32.5066 + 178, 89, 27, 15, 14, 14, 14, 14, 14, 14, 14, 15, 176, 245, 238, 206, 32.5067 + 198, 199, 195, 194, 182, 164, 139, 118, 32, 18, 14, 14, 14, 14, 14, 14, 32.5068 + 14, 14, 14, 14, 78, 170, 229, 207, 194, 198, 198, 198, 188, 189, 188, 190, 32.5069 + 200, 205, 202, 192, 185, 182, 167, 145, 165, 102, 23, 14, 15, 16, 14, 14, 32.5070 + 15, 109, 221, 217, 221, 203, 193, 182, 203, 195, 185, 175, 167, 154, 116, 81, 32.5071 + 18, 244, 242, 234, 205, 192, 195, 139, 143, 128, 14, 14, 15, 16, 26, 250, 32.5072 + 255, 255, 253, 249, 242, 232, 216, 202, 186, 185, 183, 185, 186, 186, 189, 193, 32.5073 + 202, 198, 186, 179, 170, 137, 65, 23, 14, 14, 14, 14, 14, 14, 17, 15, 32.5074 + 79, 161, 215, 232, 217, 202, 197, 197, 192, 195, 197, 197, 198, 203, 198, 190, 32.5075 + 164, 137, 79, 31, 15, 16, 18, 14, 14, 14, 15, 137, 244, 234, 211, 200, 32.5076 + 202, 189, 172, 145, 95, 14, 18, 14, 14, 14, 16, 16, 170, 244, 234, 209, 32.5077 + 183, 181, 159, 172, 116, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5078 + 14, 18, 64, 102, 164, 170, 175, 172, 167, 164, 167, 173, 175, 182, 182, 173, 32.5079 + 170, 175, 170, 164, 155, 157, 141, 152, 148, 116, 73, 18, 14, 14, 15, 203, 32.5080 + 207, 190, 183, 148, 167, 159, 157, 57, 15, 14, 14, 14, 14, 14, 19, 14, 32.5081 + 122, 230, 219, 178, 161, 154, 152, 145, 130, 27, 15, 14, 16, 14, 14, 14, 32.5082 + 36, 24, 78, 148, 169, 172, 173, 170, 170, 167, 167, 161, 155, 148, 118, 82, 32.5083 + 48, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 20, 32, 84, 32.5084 + 150, 173, 169, 159, 164, 159, 159, 159, 164, 164, 154, 126, 82, 54, 27, 15, 32.5085 + 14, 18, 16, 14, 14, 14, 84, 203, 197, 206, 185, 176, 182, 179, 178, 179, 32.5086 + 173, 175, 170, 165, 165, 164, 157, 157, 162, 161, 145, 114, 49, 19, 14, 14, 32.5087 + 14, 14, 14, 14, 15, 48, 130, 150, 179, 169, 162, 162, 181, 194, 190, 183, 32.5088 + 176, 179, 173, 162, 159, 161, 136, 122, 122, 72, 26, 15, 14, 14, 14, 14, 32.5089 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5090 + 14, 14, 14, 15, 16, 18, 113, 242, 248, 254, 245, 209, 182, 124, 69, 21, 32.5091 + 15, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 32.5092 + 20, 64, 111, 145, 175, 173, 172, 164, 165, 162, 165, 162, 143, 132, 105, 71, 32.5093 + 39, 17, 14, 14, 14, 14, 14, 14, 14, 18, 14, 57, 175, 202, 207, 195, 32.5094 + 179, 170, 170, 167, 152, 165, 165, 159, 164, 145, 120, 124, 199, 188, 170, 150, 32.5095 + 139, 139, 137, 137, 61, 14, 14, 16, 15, 14, 64, 231, 195, 192, 162, 148, 32.5096 + 137, 139, 136, 69, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5097 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 16, 32.5098 + 14, 15, 100, 200, 189, 176, 162, 161, 157, 157, 155, 147, 126, 55, 16, 14, 32.5099 + 14, 14, 14, 14, 14, 14, 14, 15, 107, 205, 198, 185, 186, 181, 170, 167, 32.5100 + 161, 147, 114, 92, 18, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.5101 + 19, 60, 150, 169, 165, 170, 175, 169, 157, 154, 150, 154, 175, 179, 172, 164, 32.5102 + 165, 164, 159, 147, 107, 56, 14, 14, 16, 15, 14, 14, 14, 21, 113, 147, 32.5103 + 198, 175, 162, 155, 157, 162, 164, 164, 152, 109, 56, 19, 20, 208, 210, 186, 32.5104 + 179, 183, 155, 162, 145, 147, 45, 14, 21, 18, 84, 252, 254, 254, 252, 244, 32.5105 + 228, 210, 175, 134, 139, 137, 137, 141, 148, 150, 154, 159, 170, 167, 150, 130, 32.5106 + 102, 67, 27, 14, 14, 14, 14, 14, 14, 14, 20, 14, 18, 31, 75, 124, 32.5107 + 170, 185, 175, 154, 173, 170, 164, 159, 157, 155, 141, 107, 82, 32, 14, 14, 32.5108 + 14, 14, 14, 28, 15, 21, 15, 109, 204, 202, 186, 167, 157, 154, 159, 139, 32.5109 + 95, 21, 14, 14, 14, 14, 18, 19, 165, 219, 204, 178, 170, 162, 150, 175, 32.5110 + 152, 48, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 19, 32.5111 + 38, 60, 81, 100, 97, 97, 102, 105, 100, 109, 105, 98, 98, 102, 102, 97, 32.5112 + 98, 104, 85, 90, 67, 31, 19, 15, 14, 14, 14, 104, 109, 114, 124, 116, 32.5113 + 113, 118, 122, 75, 19, 18, 14, 14, 14, 16, 14, 14, 21, 113, 105, 130, 32.5114 + 124, 128, 111, 116, 107, 36, 19, 14, 14, 14, 16, 14, 16, 15, 20, 24, 32.5115 + 23, 50, 82, 111, 126, 120, 98, 78, 71, 55, 35, 16, 14, 14, 14, 14, 32.5116 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 24, 33, 47, 69, 32.5117 + 111, 102, 92, 89, 82, 68, 47, 29, 26, 15, 15, 14, 14, 14, 14, 14, 32.5118 + 14, 14, 36, 95, 113, 137, 141, 139, 134, 132, 130, 130, 134, 128, 122, 120, 32.5119 + 109, 109, 102, 90, 82, 68, 41, 19, 16, 14, 14, 14, 14, 14, 14, 14, 32.5120 + 16, 15, 21, 19, 63, 53, 76, 102, 109, 126, 120, 111, 105, 107, 105, 92, 32.5121 + 85, 100, 89, 64, 40, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5122 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5123 + 16, 21, 213, 244, 249, 249, 234, 185, 165, 78, 29, 14, 14, 16, 16, 14, 32.5124 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 42, 32.5125 + 54, 72, 100, 118, 120, 107, 84, 63, 64, 47, 28, 14, 14, 14, 14, 14, 32.5126 + 14, 14, 14, 14, 14, 15, 14, 18, 36, 69, 102, 114, 109, 102, 102, 98, 32.5127 + 93, 104, 95, 81, 76, 55, 36, 34, 132, 128, 118, 109, 109, 105, 102, 100, 32.5128 + 52, 15, 14, 15, 14, 14, 21, 113, 150, 141, 113, 114, 107, 116, 132, 81, 32.5129 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5130 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 15, 14, 34, 97, 32.5131 + 128, 111, 100, 98, 93, 92, 95, 98, 56, 25, 14, 14, 14, 14, 14, 14, 32.5132 + 14, 14, 18, 14, 30, 71, 89, 114, 132, 122, 105, 105, 109, 102, 81, 64, 32.5133 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 15, 40, 57, 32.5134 + 87, 93, 92, 95, 89, 82, 82, 84, 90, 95, 100, 100, 100, 95, 85, 79, 32.5135 + 27, 16, 14, 14, 14, 14, 14, 14, 14, 14, 27, 48, 114, 93, 100, 109, 32.5136 + 90, 87, 89, 87, 82, 55, 26, 14, 14, 76, 105, 95, 122, 134, 98, 130, 32.5137 + 105, 105, 64, 15, 21, 18, 159, 250, 253, 253, 248, 230, 210, 176, 113, 60, 32.5138 + 57, 54, 54, 56, 60, 61, 63, 69, 72, 85, 78, 48, 20, 14, 14, 14, 32.5139 + 14, 14, 14, 15, 14, 14, 15, 14, 18, 16, 15, 15, 26, 52, 81, 98, 32.5140 + 105, 105, 90, 79, 69, 55, 32, 15, 14, 14, 14, 14, 14, 14, 15, 15, 32.5141 + 15, 15, 15, 42, 93, 122, 124, 109, 136, 128, 150, 128, 105, 39, 25, 15, 32.5142 + 15, 15, 15, 15, 90, 126, 137, 122, 116, 102, 93, 107, 111, 56, 23, 17, 32.5143 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 21, 15, 15, 15, 16, 19, 21, 32.5144 + 19, 15, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 16, 14, 18, 32.5145 + 17, 14, 14, 17, 16, 14, 14, 20, 15, 16, 18, 18, 18, 18, 27, 28, 32.5146 + 14, 17, 14, 14, 14, 14, 14, 19, 14, 29, 18, 21, 18, 19, 18, 20, 32.5147 + 24, 16, 14, 14, 14, 14, 18, 14, 14, 20, 23, 15, 16, 18, 18, 18, 32.5148 + 18, 16, 16, 15, 15, 14, 14, 14, 14, 19, 18, 14, 14, 14, 14, 14, 32.5149 + 14, 14, 14, 14, 14, 15, 18, 15, 14, 14, 14, 21, 14, 14, 14, 14, 32.5150 + 14, 14, 14, 14, 15, 15, 19, 22, 14, 14, 14, 14, 14, 14, 14, 19, 32.5151 + 21, 18, 20, 20, 19, 18, 18, 18, 18, 16, 15, 15, 14, 15, 16, 15, 32.5152 + 16, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.5153 + 21, 14, 14, 14, 15, 19, 18, 15, 15, 16, 15, 14, 14, 14, 16, 14, 32.5154 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5155 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 20, 105, 235, 239, 32.5156 + 246, 218, 209, 172, 122, 38, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5157 + 14, 14, 14, 14, 15, 14, 14, 18, 21, 14, 15, 15, 16, 16, 16, 15, 32.5158 + 15, 19, 23, 19, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5159 + 14, 15, 14, 14, 14, 14, 20, 20, 16, 14, 14, 14, 14, 14, 14, 14, 32.5160 + 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 18, 14, 32.5161 + 14, 14, 15, 15, 16, 15, 15, 15, 15, 14, 22, 14, 15, 14, 14, 14, 32.5162 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5163 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 24, 18, 16, 15, 15, 32.5164 + 15, 15, 14, 16, 18, 14, 14, 14, 14, 14, 14, 15, 15, 15, 20, 14, 32.5165 + 14, 15, 19, 36, 19, 16, 16, 15, 19, 19, 16, 14, 14, 14, 14, 14, 32.5166 + 14, 15, 14, 14, 14, 14, 15, 19, 16, 15, 18, 18, 18, 18, 19, 19, 32.5167 + 16, 15, 16, 16, 14, 16, 20, 21, 21, 16, 15, 15, 15, 14, 14, 15, 32.5168 + 14, 14, 14, 14, 14, 14, 14, 14, 23, 14, 15, 15, 27, 18, 15, 14, 32.5169 + 14, 14, 14, 14, 14, 21, 31, 21, 27, 20, 19, 18, 15, 14, 21, 14, 32.5170 + 16, 21, 213, 250, 250, 250, 242, 213, 189, 145, 71, 21, 15, 15, 15, 15, 32.5171 + 16, 16, 16, 18, 18, 21, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5172 + 14, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 16, 16, 32.5173 + 20, 20, 14, 14, 14, 14, 16, 14, 14, 18, 16, 15, 21, 15, 15, 15, 32.5174 + 14, 16, 14, 14, 14, 14, 15, 15, 24, 15, 15, 15, 23, 16, 15, 15, 32.5175 + 15, 14, 18, 14, 15, 14, 14, 14, 19, 15, 14, 14, 14, 14, 14, 14, 32.5176 + 14, 14, 14, 14, 14, 14, 14, 19, 15, 15, 14, 14, 14, 14, 14, 14, 32.5177 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 16, 14, 14, 14, 32.5178 + 14, 14, 15, 14, 14, 19, 16, 16, 23, 15, 16, 16, 14, 14, 14, 14, 32.5179 + 16, 14, 15, 14, 21, 15, 20, 16, 16, 33, 15, 15, 14, 16, 14, 14, 32.5180 + 16, 14, 14, 17, 14, 14, 15, 15, 14, 16, 18, 15, 15, 19, 17, 15, 32.5181 + 14, 15, 19, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5182 + 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 15, 19, 32.5183 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 16, 15, 19, 18, 32.5184 + 16, 15, 15, 15, 15, 15, 14, 14, 14, 15, 14, 14, 14, 14, 14, 16, 32.5185 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 14, 14, 14, 18, 14, 14, 32.5186 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.5187 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5188 + 14, 14, 14, 14, 14, 14, 16, 16, 60, 227, 232, 240, 232, 203, 170, 169, 32.5189 + 81, 18, 14, 19, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5190 + 14, 14, 14, 14, 14, 15, 20, 15, 14, 18, 16, 14, 14, 14, 14, 14, 32.5191 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.5192 + 15, 14, 14, 14, 14, 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 15, 32.5193 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 16, 32.5194 + 14, 14, 14, 22, 14, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5195 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5196 + 14, 14, 14, 14, 14, 24, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 32.5197 + 14, 14, 14, 17, 15, 14, 14, 15, 15, 15, 14, 16, 15, 18, 14, 14, 32.5198 + 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 32.5199 + 14, 14, 14, 14, 14, 21, 16, 16, 15, 15, 15, 14, 14, 14, 14, 14, 32.5200 + 14, 14, 14, 14, 14, 14, 14, 14, 22, 14, 14, 14, 14, 14, 14, 14, 32.5201 + 14, 21, 14, 14, 16, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 15, 32.5202 + 16, 14, 14, 15, 21, 16, 31, 15, 21, 14, 22, 20, 18, 31, 229, 243, 32.5203 + 245, 244, 226, 202, 170, 130, 57, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.5204 + 15, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 32.5205 + 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.5206 + 14, 14, 14, 14, 14, 14, 14, 21, 19, 14, 27, 14, 14, 16, 14, 14, 32.5207 + 21, 14, 18, 14, 19, 15, 18, 22, 15, 15, 16, 24, 14, 14, 15, 14, 32.5208 + 14, 15, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5209 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 32.5210 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5211 + 14, 14, 14, 14, 14, 14, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 32.5212 + 14, 16, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5213 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5214 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5215 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5216 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 15, 16, 16, 16, 32.5217 + 15, 15, 15, 15, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5218 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.5219 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 18, 14, 14, 14, 14, 32.5220 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5221 + 16, 15, 18, 21, 173, 229, 238, 215, 202, 172, 143, 134, 39, 21, 14, 14, 32.5222 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5223 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5224 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5225 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5226 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.5227 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5228 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5229 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5230 + 15, 14, 14, 16, 14, 18, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5231 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 18, 18, 14, 14, 14, 14, 14, 32.5232 + 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5233 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5234 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.5235 + 14, 14, 14, 14, 14, 19, 15, 16, 19, 97, 242, 241, 246, 233, 220, 175, 32.5236 + 155, 122, 32, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5237 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.5238 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5239 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5240 + 17, 14, 14, 14, 14, 15, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 32.5241 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5242 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5243 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5244 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5245 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5246 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5247 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5248 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5249 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5250 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5251 + 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5252 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5253 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 21, 71, 32.5254 + 198, 230, 224, 192, 178, 178, 143, 97, 19, 15, 14, 14, 14, 14, 14, 14, 32.5255 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5256 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 16, 15, 14, 14, 14, 14, 14, 32.5257 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5258 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5259 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5260 + 18, 18, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5261 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5262 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 15, 32.5263 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5264 + 17, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5265 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5266 + 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5267 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5268 + 14, 14, 15, 18, 19, 134, 234, 226, 237, 220, 210, 170, 141, 92, 19, 14, 32.5269 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5270 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 32.5271 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5272 + 14, 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 32.5273 + 14, 14, 16, 14, 15, 19, 20, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5274 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 16, 15, 14, 32.5275 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5276 + 18, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.5277 + 14, 16, 15, 14, 14, 14, 15, 15, 14, 14, 14, 14, 16, 16, 16, 14, 32.5278 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.5279 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5280 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5281 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5282 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5283 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 17, 14, 14, 14, 32.5284 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.5285 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5286 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 59, 159, 213, 218, 204, 164, 32.5287 + 137, 143, 85, 20, 18, 15, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.5288 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.5289 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5290 + 14, 14, 14, 14, 16, 15, 14, 16, 16, 16, 14, 14, 14, 14, 14, 14, 32.5291 + 14, 15, 15, 15, 14, 15, 15, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.5292 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 32.5293 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5294 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 32.5295 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 15, 14, 14, 32.5296 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 14, 14, 14, 14, 32.5297 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5298 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5299 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 19, 16, 32.5300 + 14, 14, 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 21, 32.5301 + 23, 176, 218, 216, 215, 203, 190, 152, 116, 63, 15, 14, 17, 14, 14, 14, 32.5302 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5303 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5304 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5305 + 14, 14, 14, 14, 20, 16, 16, 15, 14, 14, 14, 15, 14, 14, 17, 15, 32.5306 + 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5307 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5308 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5309 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5310 + 14, 14, 14, 14, 14, 14, 16, 19, 14, 14, 14, 14, 14, 14, 14, 14, 32.5311 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5312 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5313 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5314 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5315 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5316 + 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5317 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5318 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5319 + 14, 14, 14, 14, 14, 19, 82, 198, 172, 162, 152, 137, 114, 137, 104, 21, 32.5320 + 21, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5321 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5322 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5323 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5324 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5325 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5326 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5327 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5328 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5329 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5330 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5331 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5332 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5333 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 18, 170, 173, 189, 32.5334 + 176, 165, 145, 128, 109, 67, 23, 20, 14, 14, 14, 14, 14, 14, 14, 14, 32.5335 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5336 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5337 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5338 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.5339 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5340 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 17, 14, 14, 14, 14, 32.5341 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5342 + 14, 14, 16, 17, 14, 14, 16, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.5343 + 16, 15, 14, 15, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.5344 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 18, 19, 18, 16, 15, 32.5345 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5346 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5347 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 32.5348 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5349 + 14, 14, 14, 15, 14, 14, 16, 16, 16, 15, 15, 14, 14, 14, 14, 14, 32.5350 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5351 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5352 + 15, 20, 71, 170, 152, 114, 113, 132, 122, 137, 143, 104, 64, 42, 24, 14, 32.5353 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5354 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 19, 20, 18, 18, 18, 16, 32.5355 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5356 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5357 + 14, 16, 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5358 + 14, 21, 19, 14, 16, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5359 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5360 + 14, 14, 14, 14, 16, 16, 14, 14, 14, 21, 20, 14, 14, 14, 15, 14, 32.5361 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 32.5362 + 14, 15, 15, 15, 15, 18, 18, 16, 15, 14, 14, 14, 14, 14, 14, 14, 32.5363 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 32.5364 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5365 + 14, 15, 16, 18, 14, 15, 15, 18, 19, 19, 18, 18, 14, 14, 14, 14, 32.5366 + 14, 14, 14, 16, 14, 15, 14, 15, 16, 124, 116, 162, 141, 141, 120, 122, 32.5367 + 134, 98, 69, 56, 21, 14, 14, 14, 14, 14, 14, 14, 18, 16, 14, 14, 32.5368 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5369 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5370 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 15, 15, 15, 15, 14, 32.5371 + 14, 14, 14, 15, 14, 14, 14, 14, 18, 19, 16, 15, 18, 18, 18, 18, 32.5372 + 18, 16, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5373 + 14, 14, 15, 16, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5374 + 14, 15, 14, 15, 14, 15, 15, 16, 18, 17, 15, 17, 15, 14, 14, 14, 32.5375 + 14, 14, 19, 23, 16, 16, 17, 17, 19, 18, 18, 17, 14, 14, 15, 14, 32.5376 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5377 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5378 + 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5379 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5380 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 32.5381 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5382 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5383 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5384 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5385 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5386 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5387 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5388 + 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5389 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5390 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5391 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5392 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 16, 17, 16, 32.5393 + 16, 17, 17, 16, 15, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5394 + 16, 14, 14, 15, 16, 17, 16, 16, 17, 16, 18, 18, 15, 15, 14, 14, 32.5395 + 14, 14, 14, 14, 14, 14, 14, 25, 16, 18, 18, 17, 16, 17, 17, 16, 32.5396 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5397 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5398 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5399 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5400 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5401 + 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5402 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5403 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5404 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5405 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 32.5406 + 15, 16, 15, 18, 17, 23, 33, 50, 61, 67, 64, 57, 63, 63, 61, 61, 32.5407 + 60, 60, 57, 61, 75, 71, 59, 48, 27, 14, 14, 14, 14, 15, 33, 85, 32.5408 + 75, 69, 56, 61, 76, 57, 61, 41, 14, 14, 14, 14, 14, 14, 14, 14, 32.5409 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5410 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5411 + 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5412 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5413 + 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5414 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5415 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5416 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5417 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5418 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5419 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5420 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5421 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5422 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5423 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5424 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5425 + 14, 14, 14, 14, 14, 14, 14, 14, 22, 43, 67, 87, 71, 69, 82, 75, 32.5426 + 56, 49, 30, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 17, 40, 32.5427 + 67, 67, 61, 69, 69, 69, 69, 61, 39, 18, 14, 14, 14, 14, 14, 14, 32.5428 + 14, 14, 23, 43, 67, 72, 71, 72, 72, 71, 67, 60, 19, 15, 14, 14, 32.5429 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5430 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5431 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5432 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5433 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5434 + 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5435 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5436 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5437 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5438 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 16, 22, 50, 85, 32.5439 + 147, 165, 170, 179, 179, 178, 165, 155, 178, 176, 167, 165, 165, 164, 162, 162, 32.5440 + 170, 154, 128, 93, 42, 14, 14, 14, 14, 15, 37, 152, 167, 165, 141, 157, 32.5441 + 162, 134, 120, 75, 18, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5442 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5443 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5444 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5445 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5446 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5447 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5448 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5449 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5450 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5451 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5452 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5453 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5454 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5455 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5456 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5457 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5458 + 14, 14, 14, 14, 19, 55, 132, 186, 186, 183, 181, 165, 137, 105, 56, 20, 32.5459 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 97, 161, 155, 152, 161, 32.5460 + 162, 150, 147, 136, 71, 20, 14, 15, 14, 14, 14, 15, 14, 14, 22, 42, 32.5461 + 154, 165, 172, 165, 155, 145, 128, 116, 45, 20, 14, 14, 15, 14, 14, 14, 32.5462 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5463 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5464 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5465 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5466 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5467 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5468 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5469 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5470 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5471 + 14, 14, 14, 14, 14, 14, 15, 16, 19, 48, 124, 193, 189, 188, 189, 181, 32.5472 + 190, 194, 198, 202, 194, 194, 189, 188, 188, 182, 181, 179, 152, 154, 126, 87, 32.5473 + 37, 14, 14, 14, 16, 15, 24, 152, 176, 182, 152, 172, 161, 120, 116, 71, 32.5474 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5475 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5476 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5477 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5478 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5479 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5480 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5481 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5482 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5483 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5484 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5485 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5486 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5487 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5488 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5489 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5490 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5491 + 15, 26, 124, 203, 204, 195, 188, 170, 148, 126, 75, 27, 14, 14, 14, 14, 32.5492 + 14, 14, 14, 14, 18, 15, 41, 143, 199, 182, 159, 167, 167, 145, 145, 139, 32.5493 + 75, 17, 14, 18, 14, 14, 14, 15, 14, 14, 15, 31, 172, 175, 176, 170, 32.5494 + 159, 145, 118, 111, 69, 24, 14, 14, 17, 14, 14, 15, 14, 14, 14, 14, 32.5495 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5496 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5497 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5498 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5499 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5500 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5501 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5502 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5503 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5504 + 19, 14, 19, 19, 18, 162, 190, 186, 197, 193, 192, 195, 192, 193, 194, 197, 32.5505 + 195, 190, 192, 192, 190, 183, 185, 183, 169, 130, 105, 87, 14, 14, 14, 14, 32.5506 + 14, 15, 25, 192, 179, 194, 157, 161, 137, 143, 84, 61, 17, 14, 14, 15, 32.5507 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 32.5508 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 15, 16, 15, 14, 14, 32.5509 + 16, 14, 14, 14, 14, 15, 14, 14, 16, 14, 14, 15, 16, 14, 14, 14, 32.5510 + 16, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 16, 16, 14, 32.5511 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 32.5512 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 15, 14, 14, 32.5513 + 17, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.5514 + 16, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 15, 14, 14, 32.5515 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 15, 14, 14, 14, 14, 14, 32.5516 + 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.5517 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5518 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5519 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.5520 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 17, 32.5521 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5522 + 14, 14, 14, 14, 14, 14, 16, 14, 15, 15, 16, 16, 14, 14, 14, 14, 32.5523 + 14, 16, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 18, 18, 154, 203, 32.5524 + 208, 199, 192, 179, 137, 104, 72, 41, 14, 17, 14, 14, 16, 14, 16, 14, 32.5525 + 14, 15, 100, 182, 186, 185, 162, 183, 162, 165, 114, 105, 89, 16, 17, 14, 32.5526 + 14, 14, 18, 14, 14, 23, 15, 120, 182, 186, 179, 170, 152, 122, 98, 90, 32.5527 + 46, 16, 14, 17, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5528 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5529 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5530 + 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 15, 14, 14, 14, 14, 14, 32.5531 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5532 + 14, 14, 14, 17, 15, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 32.5533 + 14, 14, 15, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 15, 14, 14, 32.5534 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 19, 14, 32.5535 + 14, 18, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5536 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 18, 32.5537 + 82, 176, 195, 193, 182, 182, 173, 170, 167, 154, 159, 161, 157, 157, 152, 148, 32.5538 + 143, 145, 132, 137, 100, 89, 89, 78, 14, 14, 14, 14, 15, 15, 61, 200, 32.5539 + 183, 186, 162, 165, 118, 130, 93, 36, 14, 16, 14, 14, 14, 14, 14, 14, 32.5540 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 19, 32.5541 + 15, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 16, 32.5542 + 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 16, 21, 14, 14, 14, 14, 32.5543 + 14, 15, 15, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5544 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5545 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 32.5546 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.5547 + 14, 14, 14, 14, 14, 14, 15, 18, 17, 14, 14, 14, 14, 14, 14, 14, 32.5548 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5549 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5550 + 15, 14, 14, 14, 16, 14, 14, 14, 14, 14, 16, 14, 14, 14, 18, 18, 32.5551 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5552 + 14, 14, 14, 14, 16, 14, 14, 16, 14, 14, 15, 15, 15, 15, 16, 18, 32.5553 + 17, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 16, 14, 14, 14, 15, 32.5554 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 15, 15, 14, 14, 18, 32.5555 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 15, 14, 32.5556 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 18, 152, 198, 204, 193, 190, 170, 32.5557 + 130, 107, 71, 38, 14, 14, 14, 14, 14, 14, 15, 14, 16, 56, 170, 208, 32.5558 + 188, 183, 169, 170, 172, 169, 114, 111, 89, 15, 17, 14, 14, 14, 14, 14, 32.5559 + 15, 15, 46, 169, 192, 193, 185, 167, 136, 107, 89, 75, 24, 14, 14, 15, 32.5560 + 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5561 + 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.5562 + 15, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 15, 14, 14, 32.5563 + 15, 18, 15, 14, 14, 14, 14, 14, 16, 15, 14, 16, 19, 19, 16, 14, 32.5564 + 14, 14, 14, 16, 15, 17, 18, 18, 14, 14, 14, 15, 21, 14, 14, 14, 32.5565 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5566 + 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.5567 + 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.5568 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5569 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 27, 188, 194, 190, 192, 32.5570 + 175, 165, 150, 139, 120, 113, 111, 118, 111, 105, 102, 102, 97, 90, 84, 93, 32.5571 + 113, 111, 98, 76, 16, 14, 14, 14, 16, 15, 120, 211, 183, 189, 167, 164, 32.5572 + 128, 111, 100, 26, 14, 17, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 32.5573 + 15, 16, 14, 14, 14, 14, 14, 14, 20, 14, 14, 14, 14, 17, 19, 20, 32.5574 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 14, 14, 15, 15, 14, 14, 32.5575 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 15, 14, 14, 14, 14, 15, 32.5576 + 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5577 + 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5578 + 15, 15, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5579 + 14, 14, 14, 14, 14, 15, 16, 16, 14, 14, 14, 14, 14, 14, 14, 15, 32.5580 + 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5581 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5582 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 32.5583 + 15, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 16, 19, 32.5584 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5585 + 16, 14, 14, 14, 15, 14, 15, 16, 15, 15, 14, 14, 14, 14, 14, 14, 32.5586 + 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 15, 16, 15, 14, 14, 14, 32.5587 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 18, 15, 14, 14, 14, 32.5588 + 14, 14, 14, 14, 14, 15, 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 32.5589 + 14, 14, 14, 14, 16, 18, 150, 200, 203, 190, 189, 172, 132, 107, 75, 39, 32.5590 + 16, 14, 14, 16, 14, 14, 15, 15, 15, 113, 207, 209, 183, 176, 185, 170, 32.5591 + 165, 169, 120, 113, 89, 15, 15, 14, 14, 14, 14, 14, 16, 15, 124, 185, 32.5592 + 197, 203, 190, 161, 122, 95, 69, 44, 14, 15, 22, 18, 14, 14, 14, 14, 32.5593 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 32.5594 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 16, 16, 15, 14, 14, 32.5595 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 32.5596 + 14, 15, 14, 14, 16, 14, 14, 18, 15, 15, 15, 14, 14, 14, 14, 14, 32.5597 + 14, 14, 14, 14, 14, 14, 14, 18, 14, 16, 14, 14, 14, 14, 14, 14, 32.5598 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.5599 + 14, 14, 14, 15, 15, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5600 + 14, 14, 14, 14, 18, 14, 14, 19, 16, 14, 15, 15, 14, 14, 14, 15, 32.5601 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5602 + 14, 14, 14, 14, 15, 18, 17, 82, 224, 198, 193, 179, 161, 148, 132, 116, 32.5603 + 90, 75, 71, 78, 73, 73, 69, 71, 64, 64, 61, 71, 107, 95, 78, 52, 32.5604 + 15, 14, 14, 16, 15, 16, 170, 210, 186, 186, 173, 155, 154, 92, 84, 18, 32.5605 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 17, 17, 14, 32.5606 + 14, 14, 14, 14, 14, 14, 14, 18, 19, 18, 15, 15, 17, 15, 14, 14, 32.5607 + 15, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.5608 + 14, 15, 15, 14, 15, 15, 15, 15, 15, 16, 18, 18, 18, 19, 16, 14, 32.5609 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5610 + 16, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 15, 15, 16, 32.5611 + 15, 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 14, 19, 16, 15, 14, 32.5612 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 14, 14, 32.5613 + 14, 14, 16, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5614 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 14, 14, 14, 32.5615 + 14, 14, 14, 14, 16, 14, 14, 15, 15, 15, 15, 18, 18, 14, 14, 16, 32.5616 + 14, 14, 17, 15, 14, 14, 14, 15, 16, 15, 14, 15, 15, 15, 15, 15, 32.5617 + 15, 15, 15, 15, 15, 14, 14, 14, 14, 15, 14, 14, 19, 16, 14, 14, 32.5618 + 18, 15, 15, 15, 15, 16, 16, 14, 14, 14, 18, 19, 14, 16, 15, 19, 32.5619 + 17, 15, 18, 15, 16, 15, 15, 15, 15, 15, 16, 18, 15, 14, 14, 18, 32.5620 + 14, 19, 14, 15, 14, 16, 18, 14, 14, 20, 15, 15, 16, 17, 16, 15, 32.5621 + 15, 15, 15, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5622 + 15, 17, 148, 198, 204, 190, 185, 172, 148, 118, 79, 40, 15, 14, 14, 17, 32.5623 + 14, 14, 19, 15, 20, 169, 209, 197, 181, 175, 192, 175, 170, 170, 124, 107, 32.5624 + 85, 15, 15, 14, 14, 14, 14, 19, 15, 19, 170, 182, 197, 202, 183, 150, 32.5625 + 126, 97, 54, 25, 15, 15, 14, 14, 24, 32, 19, 15, 14, 14, 14, 14, 32.5626 + 14, 14, 14, 14, 14, 14, 16, 18, 19, 19, 14, 14, 14, 14, 14, 14, 32.5627 + 14, 14, 14, 14, 18, 18, 15, 15, 15, 15, 15, 16, 15, 15, 15, 14, 32.5628 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 20, 19, 14, 24, 19, 14, 32.5629 + 17, 14, 15, 18, 15, 15, 17, 18, 18, 17, 18, 18, 23, 19, 15, 14, 32.5630 + 14, 15, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5631 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 17, 19, 18, 15, 14, 32.5632 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 14, 14, 14, 32.5633 + 16, 15, 14, 15, 14, 14, 14, 22, 14, 14, 14, 14, 15, 15, 14, 14, 32.5634 + 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5635 + 15, 15, 21, 167, 213, 197, 198, 175, 155, 134, 118, 93, 64, 39, 30, 32, 32.5636 + 31, 31, 29, 28, 28, 29, 28, 34, 43, 31, 24, 16, 14, 14, 14, 14, 32.5637 + 14, 20, 197, 202, 189, 188, 176, 152, 159, 90, 67, 15, 15, 19, 21, 21, 32.5638 + 16, 16, 17, 18, 18, 16, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.5639 + 14, 14, 16, 15, 15, 15, 18, 25, 16, 15, 15, 16, 16, 16, 15, 15, 32.5640 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 19, 19, 32.5641 + 15, 15, 18, 20, 19, 18, 17, 17, 16, 16, 15, 15, 18, 21, 19, 14, 32.5642 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 15, 32.5643 + 16, 16, 16, 16, 15, 15, 15, 15, 17, 16, 15, 16, 15, 15, 15, 14, 32.5644 + 14, 14, 14, 14, 14, 18, 16, 14, 15, 15, 15, 15, 16, 16, 15, 15, 32.5645 + 19, 17, 15, 16, 18, 17, 15, 15, 14, 14, 14, 14, 15, 18, 14, 14, 32.5646 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 26, 18, 32.5647 + 15, 16, 16, 15, 16, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.5648 + 14, 14, 14, 14, 17, 19, 17, 16, 17, 16, 18, 19, 14, 14, 14, 14, 32.5649 + 14, 15, 18, 15, 15, 15, 19, 24, 15, 15, 15, 15, 16, 15, 15, 15, 32.5650 + 17, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 19, 20, 16, 18, 32.5651 + 15, 16, 17, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 26, 16, 32.5652 + 15, 15, 15, 16, 18, 16, 15, 14, 14, 14, 14, 14, 14, 29, 15, 16, 32.5653 + 15, 18, 23, 15, 15, 16, 15, 15, 16, 17, 16, 17, 16, 16, 15, 15, 32.5654 + 27, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 139, 199, 32.5655 + 197, 186, 183, 175, 152, 122, 84, 44, 14, 14, 15, 14, 14, 19, 16, 16, 32.5656 + 113, 214, 208, 195, 186, 165, 183, 176, 173, 175, 130, 113, 84, 15, 14, 14, 32.5657 + 14, 14, 16, 19, 15, 84, 193, 190, 199, 193, 170, 148, 130, 95, 40, 14, 32.5658 + 16, 17, 14, 14, 15, 15, 16, 19, 16, 16, 16, 16, 15, 16, 16, 16, 32.5659 + 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.5660 + 14, 15, 18, 15, 18, 16, 15, 19, 17, 17, 18, 18, 18, 18, 18, 18, 32.5661 + 15, 16, 19, 18, 14, 14, 14, 14, 14, 14, 14, 14, 16, 20, 16, 18, 32.5662 + 16, 16, 15, 16, 15, 15, 15, 15, 14, 15, 16, 17, 18, 18, 16, 15, 32.5663 + 21, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.5664 + 14, 15, 19, 19, 17, 15, 16, 16, 16, 16, 16, 16, 17, 18, 15, 14, 32.5665 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 15, 23, 15, 15, 19, 15, 15, 32.5666 + 19, 18, 15, 18, 15, 27, 17, 19, 15, 16, 15, 17, 17, 16, 15, 14, 32.5667 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 56, 218, 32.5668 + 192, 195, 205, 179, 165, 147, 118, 85, 46, 23, 15, 14, 14, 14, 14, 14, 32.5669 + 14, 14, 14, 15, 16, 16, 14, 14, 16, 14, 14, 14, 14, 53, 209, 199, 32.5670 + 195, 190, 176, 150, 150, 120, 57, 20, 43, 95, 136, 113, 152, 157, 159, 159, 32.5671 + 148, 126, 95, 78, 19, 14, 14, 14, 14, 14, 14, 14, 24, 14, 14, 15, 32.5672 + 30, 78, 128, 157, 186, 188, 188, 182, 181, 176, 159, 152, 126, 63, 23, 15, 32.5673 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 37, 81, 141, 32.5674 + 175, 198, 206, 207, 203, 194, 178, 161, 137, 102, 59, 31, 17, 14, 14, 14, 32.5675 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 26, 61, 102, 152, 150, 148, 143, 32.5676 + 137, 130, 126, 126, 141, 130, 145, 139, 114, 128, 109, 49, 14, 14, 14, 15, 32.5677 + 14, 14, 14, 14, 19, 27, 48, 71, 89, 93, 92, 89, 84, 79, 79, 87, 32.5678 + 90, 78, 55, 36, 27, 24, 15, 14, 14, 15, 15, 14, 14, 14, 14, 14, 32.5679 + 14, 14, 14, 14, 14, 14, 16, 14, 14, 34, 85, 128, 143, 143, 130, 136, 32.5680 + 147, 141, 81, 40, 15, 14, 14, 14, 14, 14, 14, 14, 18, 21, 18, 19, 32.5681 + 48, 107, 150, 145, 132, 116, 120, 100, 50, 25, 19, 18, 22, 14, 15, 17, 32.5682 + 48, 98, 136, 145, 182, 183, 185, 181, 176, 170, 154, 150, 89, 52, 24, 15, 32.5683 + 14, 14, 14, 16, 16, 25, 19, 29, 89, 141, 139, 148, 130, 124, 134, 128, 32.5684 + 82, 34, 15, 14, 16, 19, 15, 22, 19, 42, 145, 139, 141, 148, 145, 143, 32.5685 + 130, 89, 43, 15, 20, 22, 20, 21, 28, 141, 132, 164, 159, 126, 147, 143, 32.5686 + 118, 55, 16, 69, 139, 145, 147, 147, 141, 136, 130, 122, 67, 18, 14, 14, 32.5687 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 137, 197, 190, 179, 179, 172, 32.5688 + 150, 130, 89, 47, 14, 14, 17, 14, 14, 16, 16, 26, 199, 220, 204, 197, 32.5689 + 188, 172, 179, 175, 176, 178, 136, 118, 85, 14, 14, 14, 14, 14, 14, 14, 32.5690 + 19, 161, 202, 210, 198, 186, 161, 141, 116, 75, 29, 14, 14, 14, 15, 17, 32.5691 + 17, 23, 54, 85, 75, 78, 76, 78, 75, 75, 73, 73, 85, 72, 43, 18, 32.5692 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 20, 87, 139, 136, 32.5693 + 150, 148, 130, 147, 143, 145, 143, 145, 143, 143, 147, 147, 143, 128, 128, 114, 32.5694 + 65, 26, 15, 16, 21, 15, 14, 23, 57, 116, 148, 136, 134, 139, 137, 128, 32.5695 + 105, 64, 27, 15, 20, 54, 105, 132, 130, 137, 150, 159, 124, 90, 54, 31, 32.5696 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 27, 56, 113, 161, 32.5697 + 179, 190, 199, 206, 203, 186, 170, 154, 128, 85, 44, 19, 15, 14, 14, 14, 32.5698 + 14, 14, 14, 14, 20, 47, 150, 148, 114, 143, 130, 139, 118, 93, 21, 15, 32.5699 + 18, 72, 90, 126, 143, 145, 143, 148, 143, 128, 105, 89, 21, 15, 14, 14, 32.5700 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 122, 225, 203, 200, 199, 186, 32.5701 + 175, 157, 128, 84, 41, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5702 + 16, 15, 19, 14, 21, 14, 14, 14, 14, 104, 220, 210, 204, 190, 179, 161, 32.5703 + 154, 114, 38, 93, 154, 188, 217, 210, 215, 216, 217, 211, 206, 190, 157, 139, 32.5704 + 76, 35, 14, 14, 14, 14, 14, 14, 14, 14, 34, 90, 173, 213, 213, 200, 32.5705 + 200, 199, 199, 198, 194, 190, 179, 173, 190, 170, 130, 73, 26, 14, 14, 24, 32.5706 + 14, 14, 14, 18, 14, 14, 14, 26, 128, 159, 195, 216, 216, 206, 198, 193, 32.5707 + 192, 195, 197, 202, 203, 202, 175, 147, 63, 33, 15, 14, 14, 14, 14, 14, 32.5708 + 15, 14, 14, 20, 50, 116, 188, 220, 214, 209, 202, 198, 193, 189, 179, 185, 32.5709 + 190, 183, 195, 188, 159, 172, 139, 42, 15, 14, 15, 16, 14, 14, 27, 68, 32.5710 + 161, 175, 189, 203, 207, 203, 197, 188, 206, 204, 207, 211, 211, 203, 179, 159, 32.5711 + 109, 82, 43, 14, 14, 14, 17, 17, 14, 14, 14, 14, 14, 14, 14, 14, 32.5712 + 14, 14, 14, 14, 18, 31, 93, 199, 200, 205, 204, 197, 199, 190, 145, 85, 32.5713 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 36, 154, 216, 213, 32.5714 + 199, 183, 176, 143, 61, 18, 15, 15, 15, 19, 53, 128, 195, 220, 218, 207, 32.5715 + 197, 198, 199, 197, 190, 183, 176, 173, 192, 155, 95, 53, 23, 14, 14, 19, 32.5716 + 14, 15, 14, 15, 95, 189, 200, 205, 210, 195, 190, 188, 118, 36, 14, 14, 32.5717 + 14, 14, 14, 14, 14, 38, 185, 194, 208, 208, 198, 190, 173, 122, 46, 15, 32.5718 + 14, 14, 14, 15, 19, 188, 194, 217, 221, 188, 208, 204, 179, 92, 31, 143, 32.5719 + 199, 203, 202, 203, 194, 185, 169, 164, 79, 18, 14, 15, 14, 14, 14, 14, 32.5720 + 14, 14, 14, 14, 14, 15, 130, 190, 189, 181, 179, 172, 157, 136, 98, 48, 32.5721 + 14, 14, 14, 14, 16, 15, 16, 105, 219, 200, 202, 192, 182, 188, 185, 185, 32.5722 + 179, 183, 145, 120, 87, 14, 14, 14, 14, 14, 14, 15, 69, 199, 203, 207, 32.5723 + 200, 179, 155, 141, 92, 44, 18, 14, 14, 14, 17, 82, 159, 203, 215, 202, 32.5724 + 199, 200, 198, 203, 203, 203, 198, 197, 178, 182, 182, 159, 132, 79, 27, 14, 32.5725 + 14, 14, 14, 14, 14, 14, 14, 15, 15, 128, 202, 195, 205, 202, 185, 199, 32.5726 + 199, 198, 195, 197, 200, 204, 199, 203, 211, 205, 198, 182, 139, 78, 26, 15, 32.5727 + 14, 14, 14, 14, 21, 87, 186, 195, 203, 208, 209, 210, 185, 122, 43, 15, 32.5728 + 116, 162, 195, 202, 193, 193, 202, 203, 204, 188, 165, 118, 53, 16, 14, 15, 32.5729 + 14, 14, 14, 15, 14, 15, 27, 67, 172, 195, 219, 226, 223, 211, 204, 199, 32.5730 + 193, 192, 192, 199, 200, 189, 162, 137, 45, 19, 14, 14, 14, 14, 14, 14, 32.5731 + 15, 23, 172, 209, 181, 205, 203, 204, 211, 189, 81, 17, 97, 167, 204, 216, 32.5732 + 207, 207, 200, 205, 203, 195, 175, 159, 82, 36, 15, 14, 14, 14, 14, 14, 32.5733 + 14, 14, 14, 14, 14, 25, 182, 218, 224, 199, 183, 182, 159, 145, 105, 68, 32.5734 + 26, 15, 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 14, 14, 15, 14, 32.5735 + 16, 14, 14, 15, 16, 155, 225, 219, 206, 183, 178, 164, 161, 89, 21, 182, 32.5736 + 219, 178, 192, 208, 208, 207, 206, 206, 198, 192, 169, 157, 173, 68, 14, 14, 32.5737 + 16, 14, 14, 14, 14, 56, 165, 214, 214, 203, 193, 200, 197, 195, 193, 194, 32.5738 + 195, 200, 203, 205, 186, 185, 194, 178, 113, 40, 15, 14, 16, 14, 14, 14, 32.5739 + 14, 16, 56, 139, 203, 215, 218, 216, 211, 203, 195, 195, 200, 206, 204, 200, 32.5740 + 198, 200, 199, 185, 200, 111, 40, 17, 14, 14, 14, 15, 15, 15, 15, 56, 32.5741 + 161, 221, 225, 208, 208, 206, 200, 194, 188, 179, 178, 176, 179, 181, 190, 176, 32.5742 + 137, 154, 104, 17, 14, 14, 14, 16, 14, 21, 93, 204, 203, 205, 203, 198, 32.5743 + 202, 206, 207, 209, 205, 205, 203, 203, 200, 207, 205, 200, 189, 167, 105, 42, 32.5744 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 14, 15, 32.5745 + 14, 15, 27, 154, 189, 214, 217, 209, 185, 181, 172, 154, 15, 14, 14, 14, 32.5746 + 14, 14, 14, 14, 14, 18, 15, 15, 57, 182, 220, 193, 172, 159, 159, 116, 32.5747 + 44, 15, 16, 17, 17, 79, 193, 225, 217, 194, 204, 219, 199, 200, 197, 195, 32.5748 + 194, 198, 200, 202, 182, 189, 189, 162, 82, 24, 14, 14, 14, 25, 14, 15, 32.5749 + 90, 203, 211, 207, 204, 169, 161, 165, 97, 24, 14, 16, 14, 16, 14, 16, 32.5750 + 14, 41, 193, 204, 208, 202, 186, 178, 172, 136, 64, 19, 14, 21, 18, 15, 32.5751 + 21, 204, 204, 218, 217, 202, 220, 202, 198, 169, 113, 228, 204, 209, 206, 203, 32.5752 + 188, 170, 148, 136, 61, 14, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 32.5753 + 14, 15, 128, 193, 190, 185, 178, 176, 157, 137, 98, 50, 14, 14, 14, 14, 32.5754 + 20, 16, 22, 206, 229, 193, 216, 198, 170, 193, 179, 179, 185, 185, 143, 120, 32.5755 + 87, 14, 15, 14, 14, 17, 14, 18, 169, 216, 211, 205, 194, 178, 145, 120, 32.5756 + 71, 26, 14, 15, 14, 22, 126, 218, 209, 190, 203, 204, 197, 198, 202, 202, 32.5757 + 207, 206, 200, 200, 200, 199, 195, 190, 179, 155, 76, 25, 14, 14, 14, 14, 32.5758 + 14, 14, 15, 15, 15, 148, 219, 202, 202, 200, 190, 204, 199, 198, 199, 199, 32.5759 + 202, 205, 205, 209, 199, 199, 190, 188, 189, 155, 64, 15, 16, 14, 20, 14, 32.5760 + 14, 36, 176, 217, 209, 198, 189, 183, 176, 141, 81, 41, 195, 200, 197, 190, 32.5761 + 200, 217, 213, 199, 205, 185, 189, 193, 147, 56, 18, 14, 15, 14, 14, 15, 32.5762 + 15, 21, 98, 214, 219, 218, 217, 216, 209, 203, 200, 199, 208, 205, 203, 202, 32.5763 + 203, 198, 194, 185, 164, 75, 19, 14, 14, 14, 14, 14, 18, 17, 143, 210, 32.5764 + 188, 216, 199, 189, 182, 188, 154, 42, 213, 217, 217, 181, 205, 202, 202, 203, 32.5765 + 207, 205, 194, 179, 179, 75, 16, 14, 16, 14, 14, 14, 14, 14, 14, 15, 32.5766 + 15, 54, 202, 215, 216, 188, 186, 185, 141, 137, 93, 36, 15, 14, 14, 14, 32.5767 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 16, 14, 14, 16, 32.5768 + 16, 195, 218, 225, 194, 178, 176, 157, 128, 118, 143, 189, 200, 190, 185, 197, 32.5769 + 195, 189, 200, 193, 197, 167, 183, 143, 173, 134, 28, 14, 14, 14, 20, 15, 32.5770 + 76, 197, 238, 226, 203, 211, 194, 136, 147, 136, 128, 141, 132, 136, 188, 206, 32.5771 + 215, 192, 204, 183, 161, 102, 18, 14, 15, 14, 18, 14, 14, 54, 202, 210, 32.5772 + 211, 215, 206, 178, 161, 159, 141, 124, 130, 132, 176, 173, 178, 197, 194, 195, 32.5773 + 173, 148, 137, 23, 14, 14, 14, 14, 17, 16, 20, 189, 214, 209, 225, 205, 32.5774 + 181, 172, 161, 136, 139, 141, 116, 148, 130, 139, 128, 109, 116, 116, 60, 18, 32.5775 + 15, 15, 14, 17, 16, 124, 214, 209, 214, 207, 202, 200, 189, 179, 173, 182, 32.5776 + 186, 175, 197, 182, 198, 220, 211, 190, 172, 172, 139, 107, 15, 14, 19, 14, 32.5777 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 27, 75, 32.5778 + 200, 202, 210, 195, 181, 172, 145, 132, 60, 14, 21, 14, 14, 14, 16, 14, 32.5779 + 14, 20, 15, 19, 164, 198, 206, 211, 136, 126, 114, 52, 18, 16, 15, 15, 32.5780 + 122, 189, 221, 217, 211, 215, 204, 181, 150, 143, 124, 137, 152, 162, 183, 188, 32.5781 + 200, 199, 204, 170, 150, 82, 14, 14, 14, 17, 14, 15, 111, 213, 211, 211, 32.5782 + 209, 165, 137, 97, 102, 14, 15, 14, 14, 15, 14, 14, 16, 95, 205, 202, 32.5783 + 204, 203, 165, 141, 120, 105, 15, 16, 14, 16, 14, 18, 44, 216, 211, 211, 32.5784 + 198, 193, 203, 195, 169, 176, 198, 204, 204, 194, 189, 188, 167, 130, 114, 122, 32.5785 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 16, 148, 202, 32.5786 + 198, 179, 188, 186, 152, 136, 97, 46, 14, 14, 14, 16, 15, 17, 95, 225, 32.5787 + 218, 215, 195, 179, 188, 186, 178, 189, 197, 193, 148, 122, 87, 14, 14, 14, 32.5788 + 16, 14, 18, 63, 223, 205, 214, 198, 202, 113, 143, 102, 34, 23, 14, 14, 32.5789 + 15, 162, 232, 215, 209, 210, 193, 197, 183, 189, 186, 175, 176, 192, 204, 207, 32.5790 + 206, 205, 207, 205, 197, 155, 175, 46, 14, 14, 14, 14, 14, 14, 14, 16, 32.5791 + 15, 197, 205, 172, 167, 122, 150, 161, 155, 137, 148, 136, 181, 170, 185, 219, 32.5792 + 188, 209, 195, 189, 161, 150, 122, 16, 14, 15, 15, 14, 18, 42, 209, 218, 32.5793 + 213, 198, 198, 164, 185, 104, 21, 181, 190, 217, 197, 189, 189, 219, 182, 204, 32.5794 + 205, 199, 194, 164, 175, 114, 18, 15, 22, 14, 15, 16, 16, 172, 225, 205, 32.5795 + 220, 216, 209, 181, 154, 141, 137, 132, 139, 164, 164, 154, 213, 199, 188, 181, 32.5796 + 178, 109, 60, 15, 14, 14, 14, 14, 15, 16, 175, 209, 206, 203, 182, 205, 32.5797 + 197, 167, 169, 159, 210, 211, 215, 193, 193, 185, 203, 176, 209, 190, 181, 172, 32.5798 + 155, 132, 29, 14, 18, 14, 14, 14, 14, 14, 14, 15, 15, 116, 221, 226, 32.5799 + 215, 189, 190, 169, 134, 118, 72, 27, 14, 14, 14, 14, 14, 14, 14, 14, 32.5800 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 28, 206, 217, 223, 32.5801 + 193, 176, 170, 154, 143, 147, 167, 193, 186, 161, 154, 170, 181, 182, 188, 179, 32.5802 + 194, 169, 189, 148, 161, 116, 81, 14, 14, 17, 14, 29, 199, 229, 244, 239, 32.5803 + 207, 161, 126, 116, 128, 120, 109, 124, 141, 162, 176, 167, 205, 205, 210, 188, 32.5804 + 179, 154, 57, 16, 14, 14, 15, 15, 21, 197, 199, 223, 223, 206, 173, 150, 32.5805 + 126, 122, 120, 130, 130, 124, 164, 169, 169, 195, 193, 203, 189, 169, 161, 56, 32.5806 + 14, 14, 15, 14, 15, 31, 111, 207, 223, 214, 209, 178, 162, 143, 136, 118, 32.5807 + 118, 126, 90, 107, 105, 118, 116, 105, 109, 97, 48, 16, 14, 14, 16, 15, 32.5808 + 56, 181, 220, 224, 220, 206, 182, 169, 157, 137, 134, 137, 126, 130, 161, 167, 32.5809 + 165, 176, 176, 193, 170, 169, 143, 118, 21, 14, 17, 14, 14, 14, 14, 14, 32.5810 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 20, 44, 203, 198, 199, 197, 32.5811 + 186, 164, 143, 143, 71, 14, 17, 14, 14, 14, 15, 14, 14, 17, 15, 93, 32.5812 + 197, 199, 218, 169, 148, 100, 89, 27, 15, 23, 14, 81, 195, 211, 223, 225, 32.5813 + 205, 173, 155, 154, 132, 139, 113, 105, 122, 143, 162, 165, 206, 192, 205, 183, 32.5814 + 165, 126, 33, 15, 14, 14, 14, 15, 165, 209, 218, 214, 204, 165, 139, 104, 32.5815 + 76, 14, 14, 14, 14, 14, 15, 14, 15, 128, 215, 208, 199, 198, 159, 132, 32.5816 + 114, 90, 14, 15, 14, 15, 14, 18, 76, 217, 213, 216, 200, 193, 194, 181, 32.5817 + 152, 154, 167, 172, 167, 145, 116, 107, 98, 97, 97, 104, 15, 15, 14, 14, 32.5818 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 16, 152, 208, 204, 190, 195, 189, 32.5819 + 154, 139, 100, 46, 14, 14, 15, 14, 16, 25, 185, 232, 219, 205, 188, 183, 32.5820 + 186, 190, 188, 193, 194, 195, 152, 124, 84, 14, 14, 14, 14, 15, 16, 157, 32.5821 + 218, 221, 214, 205, 170, 154, 104, 81, 30, 14, 16, 15, 122, 211, 232, 219, 32.5822 + 215, 202, 157, 139, 128, 139, 143, 154, 159, 155, 147, 150, 193, 188, 200, 199, 32.5823 + 189, 159, 178, 87, 16, 14, 15, 16, 15, 14, 14, 15, 17, 167, 185, 164, 32.5824 + 157, 111, 122, 107, 132, 136, 154, 137, 175, 170, 167, 165, 193, 203, 198, 192, 32.5825 + 152, 145, 120, 16, 14, 14, 14, 14, 16, 87, 217, 217, 220, 188, 195, 175, 32.5826 + 159, 118, 89, 202, 222, 225, 193, 190, 182, 199, 172, 206, 202, 192, 192, 169, 32.5827 + 170, 134, 40, 19, 14, 15, 16, 27, 150, 199, 223, 225, 208, 182, 152, 148, 32.5828 + 143, 134, 128, 128, 128, 152, 167, 172, 194, 185, 181, 190, 185, 155, 105, 18, 32.5829 + 14, 14, 14, 14, 15, 33, 185, 210, 210, 203, 189, 197, 195, 183, 198, 188, 32.5830 + 211, 194, 182, 162, 178, 167, 188, 173, 210, 197, 183, 155, 154, 141, 43, 14, 32.5831 + 21, 14, 14, 14, 14, 14, 15, 15, 15, 176, 228, 221, 202, 202, 206, 164, 32.5832 + 137, 98, 53, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5833 + 14, 15, 14, 14, 14, 14, 14, 16, 71, 217, 225, 221, 192, 179, 173, 150, 32.5834 + 145, 145, 157, 164, 147, 120, 136, 169, 175, 192, 188, 181, 194, 181, 190, 150, 32.5835 + 147, 122, 56, 14, 14, 21, 14, 162, 241, 237, 236, 231, 189, 124, 90, 98, 32.5836 + 90, 84, 63, 60, 78, 136, 179, 195, 208, 223, 214, 186, 165, 161, 100, 14, 32.5837 + 14, 14, 15, 19, 136, 226, 223, 220, 202, 173, 150, 139, 105, 75, 59, 68, 32.5838 + 61, 71, 122, 159, 185, 204, 192, 195, 195, 164, 167, 104, 16, 14, 14, 14, 32.5839 + 15, 78, 219, 215, 225, 207, 182, 157, 139, 90, 75, 60, 60, 63, 40, 49, 32.5840 + 55, 57, 55, 54, 56, 43, 22, 14, 14, 14, 16, 15, 159, 222, 217, 225, 32.5841 + 209, 188, 161, 137, 124, 107, 97, 95, 113, 111, 139, 170, 185, 192, 176, 216, 32.5842 + 183, 164, 139, 132, 41, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5843 + 14, 14, 14, 14, 14, 14, 15, 19, 200, 200, 195, 203, 198, 167, 150, 159, 32.5844 + 87, 15, 14, 14, 15, 14, 14, 14, 14, 14, 24, 194, 209, 216, 208, 128, 32.5845 + 136, 81, 52, 15, 15, 18, 43, 193, 225, 218, 214, 209, 181, 137, 111, 116, 32.5846 + 87, 104, 82, 69, 92, 143, 178, 203, 209, 183, 199, 183, 159, 147, 60, 14, 32.5847 + 14, 14, 18, 19, 207, 215, 225, 206, 199, 159, 130, 116, 46, 14, 14, 14, 32.5848 + 14, 14, 16, 14, 16, 172, 219, 221, 200, 200, 162, 136, 111, 71, 14, 14, 32.5849 + 14, 14, 14, 15, 143, 218, 217, 213, 195, 186, 189, 173, 145, 137, 148, 148, 32.5850 + 141, 136, 120, 116, 118, 111, 84, 59, 15, 15, 14, 14, 14, 14, 14, 14, 32.5851 + 14, 14, 14, 15, 14, 16, 155, 208, 205, 189, 195, 199, 165, 145, 105, 47, 32.5852 + 15, 14, 14, 15, 16, 92, 234, 234, 227, 198, 188, 193, 190, 194, 197, 199, 32.5853 + 197, 198, 157, 126, 87, 14, 14, 14, 14, 15, 22, 229, 223, 225, 215, 194, 32.5854 + 154, 162, 98, 48, 22, 14, 14, 31, 220, 224, 223, 218, 207, 178, 137, 120, 32.5855 + 122, 107, 109, 118, 120, 130, 152, 183, 192, 182, 198, 194, 181, 159, 161, 128, 32.5856 + 14, 14, 14, 14, 14, 14, 14, 18, 17, 92, 118, 137, 141, 120, 143, 116, 32.5857 + 79, 89, 100, 84, 128, 165, 203, 202, 200, 190, 194, 190, 143, 137, 109, 15, 32.5858 + 14, 14, 14, 14, 15, 167, 225, 220, 223, 186, 193, 190, 141, 147, 194, 213, 32.5859 + 176, 169, 136, 161, 172, 179, 178, 214, 199, 188, 200, 178, 155, 147, 68, 21, 32.5860 + 14, 18, 16, 87, 233, 216, 219, 219, 189, 157, 126, 109, 93, 76, 67, 72, 32.5861 + 68, 97, 141, 185, 186, 179, 182, 203, 175, 169, 148, 36, 14, 14, 14, 14, 32.5862 + 15, 89, 204, 210, 216, 203, 199, 185, 173, 176, 188, 183, 190, 175, 175, 164, 32.5863 + 175, 175, 188, 179, 199, 200, 200, 147, 139, 141, 52, 17, 16, 14, 14, 14, 32.5864 + 14, 14, 15, 15, 20, 214, 221, 221, 197, 205, 205, 162, 137, 87, 38, 16, 32.5865 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 32.5866 + 14, 14, 14, 16, 128, 225, 228, 218, 205, 183, 164, 126, 105, 89, 72, 67, 32.5867 + 60, 59, 78, 113, 162, 204, 200, 190, 198, 189, 185, 150, 141, 124, 16, 18, 32.5868 + 15, 14, 85, 236, 236, 237, 225, 188, 155, 122, 82, 52, 27, 21, 19, 15, 32.5869 + 15, 36, 98, 199, 211, 226, 214, 198, 161, 148, 116, 15, 17, 14, 15, 89, 32.5870 + 231, 203, 235, 200, 161, 150, 128, 102, 68, 34, 18, 16, 18, 20, 49, 97, 32.5871 + 179, 210, 192, 197, 197, 161, 159, 141, 21, 14, 14, 14, 19, 152, 230, 210, 32.5872 + 209, 193, 169, 155, 114, 48, 28, 19, 16, 19, 14, 19, 19, 16, 15, 15, 32.5873 + 16, 14, 14, 14, 14, 14, 15, 56, 217, 231, 222, 214, 182, 169, 141, 114, 32.5874 + 89, 65, 47, 42, 47, 47, 54, 98, 165, 213, 189, 199, 190, 162, 134, 137, 32.5875 + 59, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5876 + 14, 15, 15, 15, 159, 209, 211, 210, 205, 172, 164, 164, 107, 24, 14, 14, 32.5877 + 16, 14, 14, 14, 16, 14, 122, 217, 210, 222, 159, 134, 95, 67, 25, 15, 32.5878 + 20, 16, 173, 224, 219, 217, 200, 167, 143, 124, 92, 63, 15, 15, 15, 14, 32.5879 + 20, 42, 90, 189, 209, 190, 210, 190, 148, 152, 82, 14, 14, 14, 19, 42, 32.5880 + 224, 215, 214, 199, 194, 157, 126, 114, 26, 14, 14, 14, 15, 14, 18, 15, 32.5881 + 24, 204, 218, 217, 204, 194, 162, 141, 107, 50, 14, 14, 14, 14, 14, 15, 32.5882 + 193, 217, 217, 213, 199, 185, 176, 154, 111, 92, 89, 79, 92, 104, 109, 109, 32.5883 + 113, 95, 56, 25, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5884 + 14, 16, 159, 214, 213, 197, 197, 198, 169, 150, 107, 48, 14, 14, 14, 19, 32.5885 + 24, 197, 232, 228, 225, 193, 186, 194, 189, 188, 206, 206, 204, 202, 165, 139, 32.5886 + 93, 14, 14, 14, 14, 15, 113, 232, 236, 211, 209, 172, 159, 120, 107, 24, 32.5887 + 15, 17, 14, 130, 227, 221, 221, 216, 185, 157, 130, 114, 75, 53, 39, 44, 32.5888 + 45, 52, 84, 134, 193, 195, 205, 204, 185, 155, 139, 136, 16, 14, 14, 14, 32.5889 + 14, 14, 14, 18, 14, 14, 14, 18, 15, 15, 17, 15, 16, 18, 23, 16, 32.5890 + 31, 65, 181, 214, 208, 186, 202, 189, 128, 130, 98, 16, 14, 14, 14, 15, 32.5891 + 17, 217, 226, 220, 217, 206, 188, 192, 152, 157, 214, 183, 159, 155, 130, 159, 32.5892 + 178, 183, 193, 194, 205, 195, 207, 189, 150, 148, 82, 16, 18, 15, 42, 207, 32.5893 + 218, 223, 217, 185, 152, 147, 120, 75, 41, 19, 18, 21, 19, 30, 68, 161, 32.5894 + 194, 197, 189, 200, 164, 164, 152, 53, 14, 14, 14, 14, 15, 154, 217, 216, 32.5895 + 216, 198, 198, 178, 159, 137, 120, 104, 100, 95, 104, 114, 169, 194, 205, 195, 32.5896 + 185, 202, 207, 148, 128, 124, 44, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5897 + 85, 232, 220, 222, 204, 195, 189, 159, 130, 71, 24, 14, 14, 14, 14, 14, 32.5898 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 32.5899 + 181, 225, 231, 219, 205, 179, 154, 104, 64, 40, 18, 15, 16, 16, 21, 26, 32.5900 + 116, 203, 206, 199, 198, 199, 185, 157, 143, 90, 20, 15, 30, 14, 199, 224, 32.5901 + 230, 229, 204, 165, 137, 104, 48, 15, 14, 14, 15, 15, 14, 14, 29, 148, 32.5902 + 207, 219, 210, 215, 178, 154, 141, 36, 14, 15, 16, 217, 229, 209, 218, 181, 32.5903 + 155, 141, 93, 43, 18, 14, 14, 14, 15, 15, 15, 31, 126, 210, 205, 218, 32.5904 + 203, 164, 150, 161, 35, 14, 14, 14, 48, 206, 207, 211, 202, 178, 169, 152, 32.5905 + 98, 29, 15, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 15, 32.5906 + 14, 14, 14, 173, 229, 220, 228, 202, 172, 157, 120, 72, 39, 21, 14, 14, 32.5907 + 14, 14, 14, 26, 75, 208, 205, 203, 197, 167, 136, 139, 73, 16, 14, 14, 32.5908 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.5909 + 75, 208, 220, 208, 205, 182, 178, 162, 130, 39, 14, 14, 16, 14, 14, 14, 32.5910 + 14, 43, 213, 219, 217, 199, 132, 132, 67, 40, 15, 16, 18, 65, 234, 232, 32.5911 + 228, 215, 182, 137, 113, 82, 40, 18, 18, 14, 14, 14, 15, 18, 46, 198, 32.5912 + 214, 206, 218, 207, 150, 154, 100, 14, 14, 15, 14, 95, 217, 223, 208, 202, 32.5913 + 190, 155, 126, 98, 15, 14, 14, 14, 15, 14, 16, 16, 48, 217, 217, 216, 32.5914 + 206, 189, 161, 139, 97, 32, 15, 14, 14, 14, 14, 28, 211, 217, 217, 209, 32.5915 + 200, 186, 164, 124, 64, 36, 27, 17, 15, 16, 16, 14, 15, 17, 14, 14, 32.5916 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 16, 164, 217, 32.5917 + 218, 198, 198, 202, 173, 152, 109, 47, 14, 14, 14, 14, 95, 239, 225, 226, 32.5918 + 214, 192, 175, 170, 173, 186, 204, 210, 207, 210, 172, 143, 95, 14, 14, 14, 32.5919 + 14, 27, 217, 230, 233, 211, 202, 161, 161, 109, 76, 16, 14, 15, 25, 213, 32.5920 + 226, 223, 221, 208, 172, 137, 92, 61, 22, 15, 14, 16, 16, 14, 15, 24, 32.5921 + 145, 198, 202, 205, 193, 155, 124, 126, 37, 21, 14, 14, 14, 14, 14, 14, 32.5922 + 21, 18, 15, 18, 14, 14, 19, 14, 14, 14, 15, 14, 15, 20, 147, 209, 32.5923 + 217, 190, 200, 186, 130, 122, 82, 17, 14, 14, 14, 16, 38, 230, 221, 219, 32.5924 + 206, 215, 172, 167, 143, 113, 137, 84, 75, 84, 71, 97, 139, 173, 214, 197, 32.5925 + 208, 200, 207, 198, 154, 147, 90, 15, 18, 16, 136, 236, 202, 224, 208, 164, 32.5926 + 122, 118, 81, 37, 15, 14, 14, 14, 14, 15, 24, 95, 195, 215, 203, 204, 32.5927 + 182, 155, 145, 78, 21, 14, 14, 17, 15, 185, 224, 218, 214, 194, 197, 172, 32.5928 + 165, 111, 50, 31, 19, 18, 17, 21, 92, 190, 211, 210, 186, 197, 207, 150, 32.5929 + 126, 100, 29, 14, 14, 14, 18, 14, 14, 14, 14, 15, 162, 229, 216, 216, 32.5930 + 208, 189, 185, 157, 118, 56, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5931 + 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 16, 207, 224, 232, 217, 32.5932 + 207, 173, 141, 90, 41, 20, 14, 14, 14, 15, 15, 15, 52, 188, 208, 207, 32.5933 + 197, 202, 182, 161, 128, 76, 17, 15, 14, 105, 217, 220, 229, 211, 176, 161, 32.5934 + 126, 61, 20, 14, 24, 14, 15, 18, 19, 14, 16, 120, 215, 218, 217, 217, 32.5935 + 186, 157, 120, 52, 15, 15, 122, 224, 217, 220, 198, 164, 145, 116, 65, 20, 32.5936 + 14, 14, 15, 14, 16, 14, 15, 17, 111, 214, 208, 213, 203, 170, 147, 150, 32.5937 + 48, 14, 16, 14, 102, 226, 195, 222, 213, 185, 169, 139, 78, 16, 14, 16, 32.5938 + 14, 14, 14, 14, 15, 16, 16, 19, 16, 14, 14, 14, 14, 14, 37, 229, 32.5939 + 229, 214, 229, 194, 178, 147, 85, 37, 15, 14, 14, 14, 14, 16, 14, 14, 32.5940 + 20, 185, 216, 214, 199, 170, 137, 122, 78, 14, 14, 14, 14, 14, 14, 14, 32.5941 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 24, 197, 222, 207, 32.5942 + 208, 189, 188, 155, 145, 64, 14, 14, 14, 14, 14, 14, 15, 152, 221, 221, 32.5943 + 222, 139, 147, 93, 47, 15, 15, 19, 16, 208, 232, 240, 235, 195, 154, 145, 32.5944 + 98, 36, 15, 14, 16, 14, 14, 14, 14, 14, 17, 170, 209, 211, 217, 210, 32.5945 + 148, 141, 104, 14, 14, 14, 14, 172, 209, 226, 211, 208, 182, 155, 122, 76, 32.5946 + 14, 15, 14, 14, 14, 14, 14, 16, 104, 221, 215, 214, 205, 185, 155, 132, 32.5947 + 85, 18, 14, 14, 15, 14, 15, 71, 221, 225, 217, 209, 198, 178, 154, 102, 32.5948 + 39, 16, 14, 14, 15, 15, 15, 14, 14, 17, 19, 18, 14, 14, 14, 14, 32.5949 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 167, 221, 217, 202, 204, 204, 32.5950 + 178, 154, 114, 47, 14, 14, 20, 14, 189, 242, 230, 229, 204, 193, 145, 124, 32.5951 + 162, 198, 200, 214, 208, 213, 175, 148, 93, 14, 14, 14, 14, 92, 236, 232, 32.5952 + 218, 221, 186, 164, 148, 118, 26, 17, 14, 14, 97, 223, 224, 227, 216, 194, 32.5953 + 181, 139, 61, 23, 14, 14, 14, 16, 15, 14, 14, 14, 57, 199, 194, 205, 32.5954 + 197, 162, 136, 120, 34, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5955 + 14, 15, 19, 15, 16, 14, 14, 15, 15, 15, 167, 225, 219, 198, 206, 178, 32.5956 + 137, 120, 56, 18, 14, 14, 17, 15, 93, 231, 218, 222, 198, 213, 161, 134, 32.5957 + 104, 52, 37, 17, 15, 17, 15, 18, 46, 93, 207, 202, 202, 206, 204, 204, 32.5958 + 164, 143, 95, 15, 15, 55, 219, 218, 227, 216, 176, 159, 130, 89, 37, 15, 32.5959 + 14, 21, 18, 14, 18, 14, 15, 42, 197, 219, 214, 206, 197, 154, 137, 95, 32.5960 + 20, 14, 14, 15, 33, 204, 226, 221, 202, 195, 185, 165, 141, 76, 21, 17, 32.5961 + 15, 14, 14, 15, 20, 175, 211, 217, 205, 205, 197, 141, 130, 69, 18, 14, 32.5962 + 14, 14, 18, 14, 14, 14, 14, 15, 198, 214, 218, 208, 208, 194, 183, 150, 32.5963 + 107, 48, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5964 + 14, 14, 14, 14, 14, 14, 14, 38, 223, 221, 234, 213, 203, 162, 136, 85, 32.5965 + 24, 16, 14, 14, 18, 19, 17, 15, 20, 176, 215, 217, 198, 198, 169, 165, 32.5966 + 113, 61, 15, 15, 19, 219, 219, 230, 222, 185, 148, 145, 92, 34, 14, 14, 32.5967 + 18, 14, 14, 14, 14, 14, 14, 107, 222, 225, 225, 207, 186, 167, 87, 44, 32.5968 + 15, 41, 219, 207, 218, 213, 190, 152, 126, 82, 36, 18, 14, 16, 16, 14, 32.5969 + 14, 17, 14, 18, 113, 217, 207, 205, 198, 176, 147, 126, 53, 14, 15, 14, 32.5970 + 161, 225, 215, 211, 209, 197, 178, 148, 73, 14, 14, 19, 14, 14, 14, 14, 32.5971 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 124, 233, 227, 219, 219, 195, 32.5972 + 173, 130, 57, 20, 14, 14, 16, 16, 14, 15, 15, 14, 14, 159, 217, 210, 32.5973 + 202, 178, 145, 104, 73, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.5974 + 14, 14, 14, 14, 14, 14, 14, 16, 15, 176, 216, 214, 218, 195, 192, 167, 32.5975 + 152, 92, 14, 14, 14, 15, 14, 14, 78, 217, 218, 219, 198, 114, 132, 57, 32.5976 + 26, 14, 14, 18, 76, 244, 231, 243, 229, 183, 141, 124, 64, 16, 14, 15, 32.5977 + 14, 14, 15, 14, 14, 14, 15, 162, 208, 216, 208, 202, 159, 134, 93, 14, 32.5978 + 14, 14, 17, 217, 210, 220, 218, 203, 172, 152, 120, 52, 14, 15, 14, 15, 32.5979 + 14, 14, 14, 15, 179, 222, 217, 216, 207, 178, 147, 126, 73, 14, 15, 14, 32.5980 + 15, 16, 15, 141, 224, 231, 214, 208, 193, 172, 145, 82, 28, 14, 14, 14, 32.5981 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5982 + 14, 14, 14, 14, 14, 16, 169, 225, 221, 205, 207, 205, 181, 162, 118, 46, 32.5983 + 14, 14, 16, 57, 226, 238, 235, 218, 183, 188, 97, 69, 157, 209, 206, 214, 32.5984 + 207, 215, 178, 148, 97, 14, 14, 14, 23, 204, 234, 236, 221, 213, 169, 152, 32.5985 + 118, 90, 15, 17, 14, 21, 186, 221, 220, 225, 207, 183, 179, 122, 37, 15, 32.5986 + 14, 14, 14, 14, 14, 14, 15, 18, 18, 213, 202, 213, 195, 154, 147, 107, 32.5987 + 16, 14, 14, 14, 14, 14, 14, 15, 14, 15, 18, 15, 14, 14, 14, 14, 32.5988 + 21, 15, 14, 14, 15, 26, 194, 218, 217, 207, 206, 172, 148, 114, 36, 17, 32.5989 + 15, 14, 17, 15, 183, 229, 220, 223, 205, 188, 152, 122, 61, 17, 14, 14, 32.5990 + 15, 17, 14, 14, 16, 27, 175, 195, 210, 211, 202, 203, 172, 132, 87, 15, 32.5991 + 16, 152, 232, 204, 229, 199, 150, 148, 126, 54, 15, 14, 15, 18, 14, 14, 32.5992 + 18, 14, 14, 20, 207, 217, 214, 205, 193, 154, 136, 89, 14, 14, 14, 14, 32.5993 + 95, 216, 223, 218, 198, 200, 176, 159, 107, 55, 14, 17, 14, 25, 16, 19, 32.5994 + 16, 194, 217, 223, 211, 206, 181, 137, 126, 56, 14, 15, 14, 14, 16, 14, 32.5995 + 14, 14, 14, 15, 229, 219, 236, 208, 207, 193, 179, 134, 98, 42, 14, 14, 32.5996 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.5997 + 14, 14, 22, 79, 233, 221, 232, 211, 197, 157, 128, 84, 16, 14, 14, 14, 32.5998 + 14, 14, 14, 15, 14, 181, 222, 225, 199, 199, 169, 161, 107, 35, 26, 15, 32.5999 + 150, 217, 227, 218, 216, 185, 150, 113, 59, 18, 14, 14, 14, 14, 20, 14, 32.6000 + 14, 14, 14, 100, 223, 224, 229, 197, 189, 186, 81, 47, 15, 134, 210, 233, 32.6001 + 213, 207, 164, 157, 136, 59, 16, 14, 14, 14, 14, 14, 14, 19, 14, 14, 32.6002 + 90, 213, 217, 220, 198, 189, 162, 109, 60, 14, 16, 15, 182, 215, 232, 188, 32.6003 + 205, 202, 186, 164, 87, 16, 14, 19, 14, 14, 14, 16, 14, 15, 14, 14, 32.6004 + 14, 14, 16, 14, 14, 20, 200, 219, 229, 226, 195, 193, 172, 116, 47, 15, 32.6005 + 14, 14, 14, 14, 14, 14, 14, 22, 14, 186, 234, 218, 204, 185, 147, 90, 32.6006 + 67, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6007 + 16, 14, 14, 14, 15, 167, 209, 218, 228, 200, 198, 178, 157, 111, 16, 14, 32.6008 + 14, 15, 14, 14, 200, 230, 223, 215, 143, 132, 93, 47, 14, 14, 17, 15, 32.6009 + 210, 240, 241, 239, 214, 197, 157, 93, 31, 14, 14, 14, 14, 14, 14, 14, 32.6010 + 14, 14, 14, 159, 217, 224, 209, 206, 173, 139, 85, 14, 15, 14, 27, 229, 32.6011 + 215, 211, 217, 194, 164, 147, 113, 35, 14, 15, 14, 16, 14, 16, 14, 16, 32.6012 + 214, 219, 220, 218, 210, 181, 154, 132, 73, 14, 16, 15, 14, 16, 15, 186, 32.6013 + 222, 234, 208, 203, 195, 169, 136, 69, 18, 14, 14, 15, 17, 14, 14, 14, 32.6014 + 15, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6015 + 14, 16, 167, 224, 222, 207, 208, 208, 186, 167, 120, 48, 14, 16, 14, 179, 32.6016 + 227, 238, 231, 194, 170, 176, 69, 39, 154, 218, 208, 208, 206, 209, 176, 150, 32.6017 + 95, 14, 14, 14, 46, 240, 230, 232, 236, 173, 172, 124, 111, 52, 16, 14, 32.6018 + 14, 67, 209, 218, 216, 229, 211, 188, 173, 82, 19, 14, 14, 14, 16, 14, 32.6019 + 14, 14, 14, 14, 14, 227, 217, 219, 192, 136, 152, 97, 14, 14, 14, 16, 32.6020 + 15, 14, 14, 15, 72, 92, 104, 95, 100, 107, 98, 120, 93, 104, 102, 109, 32.6021 + 111, 137, 240, 229, 214, 209, 206, 161, 152, 109, 25, 16, 16, 14, 16, 15, 32.6022 + 222, 229, 222, 222, 211, 162, 161, 132, 38, 14, 14, 17, 14, 14, 14, 14, 32.6023 + 14, 15, 164, 214, 217, 220, 198, 202, 175, 122, 81, 16, 53, 225, 227, 224, 32.6024 + 203, 189, 152, 134, 82, 26, 14, 15, 20, 14, 14, 17, 14, 14, 16, 14, 32.6025 + 217, 215, 211, 200, 185, 161, 148, 79, 14, 16, 16, 14, 164, 223, 222, 218, 32.6026 + 194, 208, 167, 148, 107, 54, 14, 14, 14, 19, 14, 14, 19, 225, 226, 224, 32.6027 + 214, 200, 169, 132, 116, 47, 14, 18, 15, 14, 14, 14, 14, 14, 18, 104, 32.6028 + 231, 230, 223, 217, 210, 192, 165, 141, 102, 15, 14, 17, 14, 14, 15, 14, 32.6029 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 181, 32.6030 + 233, 230, 232, 220, 185, 154, 107, 64, 14, 16, 14, 14, 15, 14, 14, 14, 32.6031 + 24, 226, 229, 222, 210, 195, 167, 152, 82, 15, 15, 18, 214, 217, 231, 225, 32.6032 + 198, 175, 132, 109, 36, 14, 19, 14, 20, 14, 15, 14, 14, 14, 14, 81, 32.6033 + 228, 229, 223, 217, 193, 164, 104, 33, 15, 213, 231, 217, 219, 186, 176, 150, 32.6034 + 111, 35, 14, 14, 16, 14, 14, 14, 14, 14, 14, 19, 89, 210, 222, 218, 32.6035 + 209, 167, 167, 116, 33, 15, 14, 16, 227, 218, 225, 218, 203, 204, 204, 183, 32.6036 + 198, 87, 19, 14, 14, 14, 14, 14, 18, 18, 20, 14, 14, 16, 14, 14, 32.6037 + 14, 78, 225, 226, 227, 213, 211, 203, 183, 102, 31, 15, 15, 15, 14, 14, 32.6038 + 14, 18, 14, 18, 20, 224, 229, 234, 215, 137, 136, 132, 44, 15, 18, 14, 32.6039 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6040 + 15, 65, 227, 228, 217, 213, 211, 176, 165, 126, 41, 14, 14, 18, 14, 139, 32.6041 + 231, 227, 224, 185, 130, 124, 73, 14, 14, 14, 14, 52, 240, 236, 241, 235, 32.6042 + 215, 161, 152, 92, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 169, 32.6043 + 221, 227, 222, 202, 172, 150, 67, 14, 14, 14, 105, 225, 217, 211, 215, 199, 32.6044 + 157, 132, 105, 14, 14, 15, 14, 14, 17, 14, 14, 24, 219, 215, 231, 206, 32.6045 + 209, 162, 165, 111, 29, 18, 15, 14, 15, 15, 29, 223, 228, 229, 207, 215, 32.6046 + 192, 170, 114, 75, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6047 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 181, 223, 32.6048 + 223, 213, 213, 208, 198, 179, 116, 45, 16, 14, 40, 229, 237, 229, 234, 199, 32.6049 + 189, 124, 41, 14, 182, 218, 205, 219, 219, 203, 185, 181, 84, 14, 19, 14, 32.6050 + 197, 234, 240, 227, 217, 185, 134, 132, 93, 15, 19, 14, 14, 161, 225, 220, 32.6051 + 226, 220, 214, 207, 159, 68, 21, 14, 14, 14, 14, 14, 14, 15, 14, 15, 32.6052 + 139, 218, 225, 209, 189, 162, 145, 95, 22, 14, 14, 17, 14, 40, 170, 232, 32.6053 + 225, 226, 228, 229, 227, 223, 223, 227, 224, 221, 223, 217, 239, 233, 229, 219, 32.6054 + 215, 224, 198, 165, 137, 107, 15, 15, 16, 14, 15, 56, 229, 218, 233, 207, 32.6055 + 208, 173, 147, 100, 15, 14, 14, 18, 14, 18, 14, 20, 14, 21, 107, 219, 32.6056 + 225, 218, 205, 188, 176, 122, 48, 15, 150, 225, 225, 213, 210, 172, 136, 118, 32.6057 + 52, 26, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 217, 229, 217, 204, 32.6058 + 186, 150, 126, 78, 14, 19, 14, 14, 206, 218, 221, 213, 203, 188, 165, 145, 32.6059 + 92, 15, 14, 14, 21, 14, 14, 14, 60, 218, 227, 222, 206, 202, 162, 145, 32.6060 + 102, 14, 14, 14, 14, 21, 14, 14, 14, 14, 14, 139, 232, 227, 225, 217, 32.6061 + 210, 189, 162, 132, 85, 15, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.6062 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 200, 234, 233, 232, 221, 32.6063 + 183, 148, 116, 50, 14, 15, 14, 14, 14, 14, 15, 14, 55, 227, 230, 229, 32.6064 + 210, 198, 173, 143, 72, 16, 15, 56, 229, 229, 231, 225, 181, 157, 105, 81, 32.6065 + 20, 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 120, 230, 232, 225, 217, 32.6066 + 194, 172, 97, 21, 55, 229, 230, 219, 222, 179, 161, 128, 85, 28, 14, 14, 32.6067 + 16, 14, 14, 14, 14, 14, 14, 15, 130, 216, 230, 220, 208, 164, 159, 107, 32.6068 + 22, 14, 14, 15, 219, 225, 227, 223, 210, 211, 217, 218, 202, 205, 206, 181, 32.6069 + 113, 48, 21, 14, 14, 14, 14, 14, 22, 14, 14, 19, 14, 152, 237, 234, 32.6070 + 225, 215, 213, 199, 207, 178, 155, 157, 173, 188, 185, 185, 185, 185, 195, 195, 32.6071 + 188, 240, 225, 210, 203, 148, 116, 118, 22, 15, 15, 14, 14, 14, 14, 14, 32.6072 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 217, 220, 32.6073 + 224, 220, 209, 195, 185, 139, 44, 16, 15, 14, 56, 215, 232, 225, 202, 167, 32.6074 + 137, 85, 35, 15, 14, 14, 14, 132, 241, 242, 238, 234, 204, 157, 137, 60, 32.6075 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 183, 227, 232, 223, 202, 32.6076 + 175, 145, 61, 14, 18, 14, 161, 233, 222, 213, 208, 188, 155, 130, 95, 14, 32.6077 + 14, 14, 14, 14, 14, 14, 15, 69, 232, 224, 229, 206, 205, 165, 155, 98, 32.6078 + 21, 15, 14, 14, 16, 14, 67, 232, 232, 229, 211, 218, 190, 159, 118, 53, 32.6079 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6080 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 182, 226, 227, 219, 214, 210, 32.6081 + 199, 189, 122, 47, 14, 14, 165, 238, 236, 240, 199, 175, 164, 79, 26, 14, 32.6082 + 181, 221, 217, 220, 210, 208, 186, 173, 85, 16, 14, 34, 228, 240, 241, 231, 32.6083 + 207, 172, 124, 116, 49, 14, 14, 14, 19, 189, 223, 228, 221, 217, 213, 216, 32.6084 + 200, 176, 155, 162, 164, 170, 172, 178, 179, 181, 183, 188, 210, 236, 238, 225, 32.6085 + 193, 152, 130, 72, 14, 18, 16, 14, 25, 200, 231, 226, 239, 236, 231, 232, 32.6086 + 229, 224, 219, 220, 218, 224, 232, 223, 220, 215, 229, 235, 218, 220, 197, 172, 32.6087 + 137, 92, 15, 16, 16, 14, 15, 105, 233, 229, 233, 217, 198, 167, 145, 82, 32.6088 + 15, 14, 14, 15, 17, 14, 14, 16, 14, 14, 154, 234, 228, 216, 220, 194, 32.6089 + 197, 116, 32, 19, 198, 227, 220, 215, 205, 165, 141, 116, 32, 18, 14, 14, 32.6090 + 14, 14, 14, 14, 14, 14, 15, 28, 223, 225, 221, 210, 190, 182, 113, 61, 32.6091 + 14, 14, 14, 22, 220, 225, 220, 216, 208, 195, 165, 139, 82, 14, 14, 14, 32.6092 + 14, 14, 14, 16, 109, 229, 228, 226, 210, 203, 159, 134, 93, 14, 14, 14, 32.6093 + 14, 18, 14, 14, 14, 14, 14, 188, 233, 230, 223, 220, 210, 188, 155, 124, 32.6094 + 65, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6095 + 14, 14, 14, 14, 14, 14, 26, 219, 235, 236, 229, 224, 175, 141, 116, 27, 32.6096 + 14, 14, 15, 14, 14, 14, 16, 14, 128, 232, 234, 231, 206, 192, 173, 128, 32.6097 + 47, 16, 14, 145, 240, 238, 232, 221, 178, 145, 98, 55, 14, 14, 14, 15, 32.6098 + 14, 14, 14, 14, 14, 14, 14, 178, 234, 234, 234, 218, 192, 176, 84, 14, 32.6099 + 134, 232, 225, 220, 223, 181, 154, 132, 53, 19, 14, 15, 15, 14, 14, 14, 32.6100 + 14, 16, 14, 14, 188, 218, 231, 223, 207, 162, 152, 102, 14, 14, 14, 15, 32.6101 + 225, 228, 217, 211, 220, 221, 210, 199, 202, 216, 223, 217, 208, 206, 200, 192, 32.6102 + 90, 21, 19, 16, 14, 14, 16, 14, 14, 195, 239, 233, 217, 216, 221, 208, 32.6103 + 214, 213, 218, 229, 229, 229, 227, 229, 230, 217, 242, 234, 241, 234, 234, 227, 32.6104 + 189, 159, 116, 109, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6105 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 190, 221, 226, 225, 206, 209, 32.6106 + 182, 169, 73, 19, 19, 18, 167, 239, 232, 220, 172, 141, 126, 45, 14, 17, 32.6107 + 14, 14, 14, 208, 236, 243, 227, 222, 185, 152, 114, 31, 14, 14, 14, 14, 32.6108 + 16, 14, 14, 14, 14, 15, 14, 218, 232, 236, 224, 202, 172, 134, 54, 14, 32.6109 + 14, 14, 195, 233, 224, 215, 205, 179, 152, 126, 73, 14, 14, 14, 14, 16, 32.6110 + 14, 15, 14, 154, 236, 229, 228, 217, 205, 170, 143, 84, 14, 14, 14, 14, 32.6111 + 15, 14, 136, 236, 232, 229, 210, 214, 186, 143, 120, 33, 14, 14, 14, 14, 32.6112 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6113 + 14, 14, 14, 14, 14, 14, 190, 229, 231, 221, 215, 214, 206, 194, 128, 47, 32.6114 + 14, 20, 233, 237, 231, 236, 194, 181, 132, 42, 15, 14, 179, 224, 225, 221, 32.6115 + 206, 215, 189, 173, 90, 18, 14, 136, 244, 241, 240, 226, 197, 155, 116, 87, 32.6116 + 16, 14, 14, 15, 43, 214, 216, 225, 228, 225, 217, 216, 206, 199, 199, 215, 32.6117 + 214, 219, 225, 228, 229, 230, 232, 235, 227, 232, 232, 223, 178, 148, 141, 75, 32.6118 + 14, 15, 16, 18, 136, 245, 244, 238, 234, 229, 220, 221, 225, 226, 225, 224, 32.6119 + 225, 219, 219, 219, 213, 218, 225, 224, 219, 215, 197, 176, 130, 65, 15, 18, 32.6120 + 14, 14, 14, 179, 239, 234, 228, 217, 185, 162, 130, 61, 14, 15, 14, 14, 32.6121 + 16, 14, 14, 14, 14, 14, 192, 238, 231, 218, 222, 194, 197, 105, 19, 52, 32.6122 + 230, 228, 216, 219, 197, 155, 141, 97, 15, 14, 14, 17, 14, 14, 14, 15, 32.6123 + 14, 15, 14, 79, 231, 221, 220, 217, 178, 193, 102, 42, 16, 14, 16, 89, 32.6124 + 232, 231, 222, 213, 208, 197, 159, 124, 65, 15, 14, 14, 14, 14, 17, 14, 32.6125 + 188, 238, 225, 223, 214, 195, 150, 120, 71, 14, 15, 14, 14, 16, 14, 14, 32.6126 + 14, 14, 14, 221, 234, 230, 225, 217, 209, 188, 154, 122, 47, 14, 14, 14, 32.6127 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.6128 + 14, 14, 64, 235, 239, 238, 227, 222, 167, 128, 109, 14, 14, 14, 16, 14, 32.6129 + 14, 14, 14, 14, 200, 233, 234, 231, 206, 189, 173, 111, 26, 14, 14, 209, 32.6130 + 244, 240, 229, 217, 178, 130, 109, 27, 14, 15, 14, 19, 14, 14, 14, 14, 32.6131 + 14, 14, 14, 210, 236, 235, 238, 218, 192, 175, 69, 14, 202, 232, 218, 218, 32.6132 + 217, 173, 147, 130, 31, 14, 14, 16, 14, 14, 14, 14, 14, 15, 14, 14, 32.6133 + 214, 222, 231, 221, 202, 159, 141, 98, 14, 14, 14, 14, 206, 223, 206, 197, 32.6134 + 217, 228, 222, 225, 234, 232, 226, 226, 232, 236, 225, 207, 215, 185, 79, 17, 32.6135 + 14, 14, 14, 14, 19, 217, 231, 229, 214, 215, 218, 214, 206, 211, 218, 225, 32.6136 + 226, 222, 223, 230, 229, 216, 236, 225, 233, 214, 229, 220, 155, 148, 126, 87, 32.6137 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6138 + 14, 14, 14, 14, 18, 14, 118, 234, 230, 227, 214, 214, 178, 195, 111, 14, 32.6139 + 14, 82, 229, 237, 227, 205, 155, 124, 82, 23, 14, 17, 14, 14, 21, 231, 32.6140 + 231, 238, 222, 200, 170, 150, 87, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.6141 + 14, 14, 38, 236, 234, 239, 224, 203, 178, 118, 39, 14, 14, 27, 225, 234, 32.6142 + 225, 218, 205, 178, 152, 109, 48, 14, 14, 14, 14, 14, 14, 15, 14, 195, 32.6143 + 232, 226, 222, 220, 194, 176, 134, 72, 14, 15, 14, 15, 14, 14, 193, 239, 32.6144 + 234, 229, 215, 205, 182, 130, 109, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.6145 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6146 + 14, 14, 194, 233, 232, 221, 217, 217, 215, 203, 136, 49, 14, 118, 234, 236, 32.6147 + 232, 210, 209, 176, 109, 24, 14, 14, 179, 227, 226, 217, 214, 220, 202, 183, 32.6148 + 97, 14, 33, 222, 245, 239, 237, 218, 178, 152, 105, 53, 14, 14, 14, 14, 32.6149 + 109, 225, 217, 223, 224, 221, 222, 217, 214, 205, 203, 211, 215, 219, 221, 223, 32.6150 + 225, 227, 228, 229, 234, 229, 218, 203, 157, 148, 143, 45, 19, 14, 15, 63, 32.6151 + 234, 230, 237, 241, 225, 217, 202, 190, 188, 183, 176, 173, 179, 162, 169, 202, 32.6152 + 207, 225, 224, 218, 220, 210, 194, 179, 122, 44, 15, 18, 14, 14, 20, 223, 32.6153 + 238, 234, 223, 219, 178, 162, 118, 39, 14, 15, 14, 14, 14, 14, 14, 14, 32.6154 + 15, 21, 220, 234, 236, 220, 217, 193, 170, 100, 14, 134, 239, 226, 215, 213, 32.6155 + 182, 157, 134, 54, 14, 14, 14, 16, 14, 14, 14, 15, 14, 14, 14, 150, 32.6156 + 233, 226, 220, 209, 161, 179, 97, 24, 16, 14, 16, 185, 232, 231, 224, 217, 32.6157 + 202, 189, 152, 113, 38, 14, 16, 14, 14, 16, 14, 14, 222, 242, 226, 221, 32.6158 + 214, 183, 145, 118, 40, 14, 14, 14, 14, 14, 14, 14, 14, 14, 30, 236, 32.6159 + 237, 232, 225, 220, 211, 192, 154, 114, 31, 14, 14, 14, 14, 14, 14, 14, 32.6160 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 130, 240, 32.6161 + 238, 237, 227, 216, 164, 128, 82, 14, 15, 14, 15, 14, 14, 16, 14, 16, 32.6162 + 229, 235, 236, 226, 207, 188, 170, 97, 15, 14, 18, 234, 245, 240, 230, 208, 32.6163 + 172, 111, 93, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 226, 32.6164 + 236, 236, 239, 218, 200, 172, 60, 22, 233, 236, 225, 224, 206, 159, 134, 104, 32.6165 + 18, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 21, 228, 225, 233, 220, 32.6166 + 193, 159, 141, 81, 14, 15, 14, 14, 116, 197, 211, 193, 188, 186, 200, 230, 32.6167 + 205, 208, 218, 229, 233, 229, 227, 229, 228, 209, 210, 145, 17, 14, 23, 14, 32.6168 + 92, 237, 228, 231, 220, 210, 206, 203, 194, 194, 192, 197, 192, 183, 186, 194, 32.6169 + 189, 190, 199, 194, 193, 175, 183, 147, 143, 126, 130, 50, 19, 14, 21, 15, 32.6170 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6171 + 15, 14, 44, 237, 233, 228, 225, 217, 200, 205, 126, 17, 17, 206, 244, 235, 32.6172 + 217, 179, 150, 102, 35, 14, 14, 14, 14, 15, 76, 236, 228, 232, 225, 178, 32.6173 + 159, 139, 59, 14, 18, 14, 14, 14, 14, 16, 14, 14, 14, 14, 109, 240, 32.6174 + 238, 238, 222, 205, 183, 105, 29, 14, 18, 84, 240, 234, 223, 217, 194, 172, 32.6175 + 154, 95, 26, 14, 14, 18, 14, 14, 15, 14, 16, 217, 232, 231, 223, 220, 32.6176 + 189, 172, 132, 60, 14, 16, 14, 14, 14, 24, 214, 233, 234, 230, 218, 200, 32.6177 + 182, 130, 87, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6178 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 194, 235, 32.6179 + 230, 221, 220, 221, 217, 206, 141, 53, 17, 209, 226, 237, 234, 203, 181, 139, 32.6180 + 72, 16, 14, 14, 179, 225, 229, 218, 218, 215, 204, 186, 95, 14, 136, 243, 32.6181 + 239, 238, 235, 209, 164, 150, 90, 24, 14, 18, 14, 14, 189, 229, 225, 224, 32.6182 + 221, 221, 217, 207, 198, 189, 175, 170, 182, 192, 186, 192, 193, 194, 198, 199, 32.6183 + 194, 194, 183, 164, 143, 157, 132, 22, 14, 16, 16, 141, 241, 225, 233, 224, 32.6184 + 200, 194, 185, 162, 148, 147, 150, 154, 162, 162, 175, 195, 206, 213, 219, 225, 32.6185 + 225, 214, 198, 172, 107, 26, 14, 15, 14, 14, 47, 237, 234, 233, 219, 217, 32.6186 + 176, 155, 102, 22, 14, 14, 14, 14, 14, 18, 14, 14, 14, 75, 238, 236, 32.6187 + 234, 226, 200, 202, 130, 84, 14, 195, 236, 227, 218, 214, 170, 159, 124, 24, 32.6188 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 193, 235, 234, 225, 203, 32.6189 + 169, 157, 105, 14, 14, 14, 14, 206, 231, 233, 224, 215, 199, 178, 143, 107, 32.6190 + 18, 14, 14, 14, 14, 14, 14, 21, 235, 241, 232, 221, 210, 170, 150, 118, 32.6191 + 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 72, 239, 234, 230, 222, 217, 32.6192 + 207, 188, 147, 109, 20, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.6193 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 179, 235, 237, 236, 228, 203, 32.6194 + 167, 134, 50, 14, 15, 14, 15, 14, 14, 15, 14, 42, 238, 236, 236, 219, 32.6195 + 210, 192, 164, 84, 14, 14, 53, 244, 245, 240, 235, 199, 172, 111, 63, 14, 32.6196 + 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 75, 234, 240, 238, 237, 215, 32.6197 + 205, 152, 49, 65, 239, 234, 231, 225, 197, 169, 134, 81, 14, 14, 14, 14, 32.6198 + 14, 14, 16, 14, 15, 14, 14, 79, 234, 231, 234, 215, 183, 150, 134, 49, 32.6199 + 14, 14, 14, 14, 30, 104, 182, 202, 193, 189, 179, 181, 215, 211, 211, 219, 32.6200 + 213, 206, 216, 232, 209, 225, 214, 192, 104, 15, 14, 15, 176, 238, 228, 225, 32.6201 + 220, 206, 192, 178, 162, 157, 152, 157, 152, 145, 132, 134, 136, 147, 137, 150, 32.6202 + 143, 159, 172, 132, 161, 126, 120, 31, 20, 14, 20, 14, 14, 14, 14, 14, 32.6203 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 218, 32.6204 + 230, 227, 233, 220, 214, 200, 165, 104, 124, 245, 240, 225, 194, 157, 120, 65, 32.6205 + 14, 14, 19, 14, 14, 16, 170, 232, 231, 220, 216, 157, 150, 116, 32, 14, 32.6206 + 16, 14, 14, 14, 14, 19, 14, 14, 14, 14, 188, 233, 238, 238, 217, 203, 32.6207 + 188, 95, 22, 14, 16, 162, 241, 234, 219, 219, 183, 167, 137, 82, 14, 14, 32.6208 + 14, 17, 14, 14, 14, 14, 50, 233, 238, 236, 224, 209, 179, 162, 124, 36, 32.6209 + 15, 15, 14, 14, 14, 60, 228, 234, 234, 229, 217, 195, 175, 136, 57, 14, 32.6210 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6211 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 194, 233, 231, 225, 222, 222, 32.6212 + 213, 204, 152, 71, 122, 230, 231, 229, 222, 211, 141, 132, 37, 14, 14, 14, 32.6213 + 186, 230, 230, 225, 220, 214, 204, 189, 116, 14, 215, 243, 235, 239, 231, 200, 32.6214 + 155, 128, 54, 14, 14, 14, 14, 14, 219, 226, 226, 220, 217, 217, 205, 170, 32.6215 + 143, 139, 128, 116, 143, 148, 152, 147, 148, 150, 150, 150, 136, 155, 152, 145, 32.6216 + 139, 141, 98, 14, 14, 17, 18, 214, 236, 239, 225, 209, 185, 175, 145, 114, 32.6217 + 84, 90, 97, 104, 114, 89, 92, 114, 217, 218, 221, 221, 222, 205, 183, 154, 32.6218 + 85, 16, 14, 14, 14, 14, 122, 243, 232, 234, 217, 208, 175, 145, 84, 14, 32.6219 + 14, 14, 14, 14, 14, 23, 14, 14, 14, 165, 243, 238, 227, 226, 190, 210, 32.6220 + 111, 57, 14, 217, 230, 232, 226, 208, 169, 154, 105, 14, 16, 14, 14, 14, 32.6221 + 14, 14, 14, 14, 14, 14, 24, 217, 233, 237, 228, 195, 172, 134, 97, 14, 32.6222 + 14, 14, 26, 224, 231, 234, 228, 215, 199, 172, 130, 98, 14, 14, 14, 14, 32.6223 + 14, 14, 14, 93, 240, 242, 236, 224, 206, 159, 148, 105, 14, 14, 14, 14, 32.6224 + 14, 14, 14, 14, 16, 14, 143, 238, 234, 228, 217, 215, 206, 183, 141, 100, 32.6225 + 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6226 + 14, 14, 14, 14, 14, 24, 211, 231, 235, 230, 226, 181, 161, 128, 26, 14, 32.6227 + 14, 14, 15, 14, 16, 15, 14, 113, 236, 235, 236, 206, 209, 189, 141, 63, 32.6228 + 14, 14, 124, 245, 245, 239, 236, 185, 154, 114, 28, 14, 14, 16, 15, 15, 32.6229 + 15, 15, 14, 14, 14, 14, 172, 236, 238, 234, 228, 203, 199, 105, 32, 137, 32.6230 + 242, 230, 232, 221, 188, 176, 126, 47, 14, 14, 14, 14, 14, 14, 16, 14, 32.6231 + 16, 14, 15, 183, 235, 234, 229, 202, 172, 139, 114, 21, 16, 14, 14, 14, 32.6232 + 14, 26, 71, 118, 157, 195, 199, 173, 167, 181, 195, 210, 221, 229, 226, 220, 32.6233 + 232, 209, 193, 208, 134, 26, 14, 14, 199, 227, 229, 209, 213, 206, 183, 139, 32.6234 + 82, 78, 78, 92, 100, 105, 104, 109, 113, 114, 95, 98, 93, 89, 128, 95, 32.6235 + 97, 78, 65, 22, 17, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6236 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 165, 234, 226, 234, 224, 32.6237 + 215, 211, 207, 216, 235, 248, 230, 202, 162, 136, 73, 28, 14, 14, 15, 14, 32.6238 + 14, 14, 216, 229, 228, 214, 192, 152, 134, 89, 16, 14, 14, 14, 15, 14, 32.6239 + 15, 14, 14, 14, 14, 30, 225, 230, 237, 236, 208, 183, 170, 76, 16, 14, 32.6240 + 14, 214, 235, 232, 219, 222, 181, 167, 116, 71, 14, 14, 14, 14, 14, 14, 32.6241 + 14, 14, 124, 238, 238, 233, 221, 203, 173, 145, 107, 18, 14, 14, 14, 14, 32.6242 + 14, 126, 236, 236, 231, 223, 210, 188, 159, 141, 29, 18, 16, 14, 16, 14, 32.6243 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6244 + 14, 14, 14, 14, 14, 14, 193, 233, 229, 225, 220, 220, 214, 217, 185, 118, 32.6245 + 226, 229, 232, 222, 203, 190, 141, 95, 16, 14, 14, 14, 183, 232, 229, 229, 32.6246 + 218, 220, 208, 190, 154, 73, 232, 238, 235, 234, 215, 179, 152, 90, 27, 14, 32.6247 + 14, 14, 14, 19, 229, 225, 218, 215, 202, 205, 186, 120, 75, 76, 82, 89, 32.6248 + 109, 114, 118, 114, 116, 116, 113, 113, 116, 132, 109, 107, 97, 67, 45, 14, 32.6249 + 18, 14, 71, 235, 232, 234, 215, 202, 182, 152, 84, 38, 16, 14, 14, 14, 32.6250 + 15, 14, 14, 30, 225, 232, 232, 220, 216, 197, 170, 130, 68, 14, 15, 14, 32.6251 + 14, 14, 202, 243, 234, 232, 215, 194, 162, 120, 65, 14, 14, 14, 14, 14, 32.6252 + 14, 16, 14, 14, 31, 217, 240, 234, 223, 219, 188, 195, 104, 30, 24, 231, 32.6253 + 232, 231, 219, 203, 165, 132, 81, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6254 + 14, 14, 79, 236, 227, 232, 220, 178, 159, 124, 60, 14, 14, 16, 93, 235, 32.6255 + 234, 234, 225, 211, 195, 169, 113, 75, 14, 18, 14, 14, 17, 14, 17, 190, 32.6256 + 241, 242, 234, 218, 202, 152, 136, 71, 14, 15, 14, 14, 14, 14, 14, 14, 32.6257 + 17, 14, 192, 236, 234, 224, 215, 208, 200, 178, 134, 93, 14, 14, 14, 14, 32.6258 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.6259 + 14, 32, 228, 229, 228, 216, 217, 155, 154, 122, 14, 14, 14, 14, 18, 14, 32.6260 + 16, 14, 14, 175, 227, 231, 231, 188, 203, 181, 114, 48, 14, 14, 173, 243, 32.6261 + 243, 232, 233, 167, 132, 116, 14, 14, 14, 19, 14, 15, 15, 14, 14, 14, 32.6262 + 14, 14, 219, 239, 231, 225, 213, 178, 185, 75, 19, 170, 242, 228, 230, 211, 32.6263 + 170, 169, 97, 18, 15, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 222, 32.6264 + 234, 237, 227, 192, 167, 139, 107, 14, 19, 14, 14, 14, 14, 14, 15, 14, 32.6265 + 14, 48, 116, 122, 150, 181, 195, 189, 192, 219, 225, 217, 208, 224, 197, 193, 32.6266 + 164, 43, 14, 14, 215, 226, 238, 202, 211, 206, 176, 102, 26, 21, 15, 14, 32.6267 + 14, 14, 14, 14, 14, 14, 14, 17, 20, 14, 22, 14, 14, 14, 14, 14, 32.6268 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6269 + 14, 14, 14, 14, 16, 14, 18, 100, 236, 227, 228, 223, 216, 225, 215, 217, 32.6270 + 240, 222, 225, 183, 145, 126, 45, 14, 14, 14, 14, 15, 15, 14, 229, 234, 32.6271 + 236, 217, 178, 167, 130, 73, 14, 16, 14, 15, 16, 15, 19, 14, 14, 16, 32.6272 + 14, 82, 242, 234, 237, 230, 193, 164, 154, 64, 14, 14, 14, 240, 238, 236, 32.6273 + 222, 223, 165, 154, 102, 65, 14, 14, 14, 14, 14, 15, 17, 14, 178, 236, 32.6274 + 235, 229, 221, 203, 167, 128, 98, 14, 14, 14, 15, 14, 14, 169, 238, 235, 32.6275 + 225, 210, 199, 176, 136, 132, 14, 18, 15, 14, 14, 14, 14, 14, 14, 14, 32.6276 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6277 + 15, 14, 189, 230, 225, 217, 215, 211, 209, 217, 206, 165, 237, 214, 222, 228, 32.6278 + 199, 128, 145, 31, 14, 14, 14, 14, 183, 229, 222, 226, 214, 219, 215, 197, 32.6279 + 182, 170, 231, 229, 229, 217, 181, 159, 145, 65, 16, 14, 14, 18, 15, 45, 32.6280 + 235, 232, 217, 215, 200, 207, 165, 68, 18, 14, 14, 14, 14, 14, 14, 14, 32.6281 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 14, 15, 18, 14, 208, 231, 32.6282 + 230, 228, 224, 181, 161, 113, 50, 16, 14, 14, 14, 14, 15, 14, 27, 46, 32.6283 + 240, 229, 218, 208, 205, 186, 154, 105, 56, 14, 18, 14, 14, 14, 234, 242, 32.6284 + 234, 231, 210, 179, 155, 105, 59, 14, 17, 14, 14, 14, 14, 14, 15, 18, 32.6285 + 76, 240, 236, 229, 217, 209, 186, 164, 93, 15, 48, 242, 232, 227, 207, 194, 32.6286 + 157, 98, 55, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 150, 245, 32.6287 + 221, 227, 208, 165, 155, 126, 37, 14, 15, 14, 162, 237, 234, 231, 217, 207, 32.6288 + 193, 161, 100, 54, 14, 19, 14, 14, 18, 14, 14, 215, 242, 238, 234, 210, 32.6289 + 199, 139, 126, 50, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 225, 232, 32.6290 + 228, 231, 216, 202, 198, 182, 116, 68, 14, 14, 14, 14, 14, 14, 14, 14, 32.6291 + 14, 14, 14, 14, 14, 15, 20, 14, 14, 17, 14, 14, 14, 120, 222, 211, 32.6292 + 211, 197, 179, 159, 113, 84, 14, 14, 14, 21, 14, 14, 14, 14, 14, 203, 32.6293 + 216, 222, 207, 202, 178, 172, 145, 30, 14, 14, 188, 228, 231, 229, 206, 179, 32.6294 + 143, 87, 16, 16, 14, 14, 14, 14, 15, 14, 23, 14, 14, 82, 231, 229, 32.6295 + 220, 214, 186, 173, 128, 42, 16, 193, 219, 226, 222, 189, 161, 155, 79, 14, 32.6296 + 14, 14, 14, 14, 15, 16, 14, 14, 14, 16, 68, 225, 229, 229, 234, 165, 32.6297 + 157, 145, 76, 14, 19, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6298 + 32, 54, 120, 161, 207, 208, 219, 210, 204, 213, 198, 178, 150, 64, 14, 14, 32.6299 + 231, 230, 223, 213, 194, 192, 164, 98, 14, 14, 14, 14, 15, 17, 14, 14, 32.6300 + 20, 14, 14, 18, 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6301 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6302 + 15, 14, 14, 16, 216, 217, 233, 210, 214, 215, 218, 221, 226, 221, 189, 143, 32.6303 + 136, 59, 19, 14, 14, 14, 14, 14, 14, 15, 231, 235, 238, 215, 198, 178, 32.6304 + 113, 56, 19, 14, 16, 14, 15, 19, 14, 16, 18, 14, 14, 178, 230, 237, 32.6305 + 230, 206, 192, 161, 120, 30, 21, 14, 73, 245, 234, 229, 217, 197, 165, 141, 32.6306 + 98, 23, 14, 14, 14, 14, 14, 14, 14, 14, 213, 238, 229, 236, 208, 179, 32.6307 + 150, 120, 65, 14, 14, 14, 14, 14, 14, 208, 229, 228, 213, 211, 200, 152, 32.6308 + 118, 78, 14, 14, 15, 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6309 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 185, 225, 32.6310 + 222, 211, 202, 203, 205, 209, 208, 214, 225, 225, 225, 182, 165, 137, 87, 14, 32.6311 + 14, 14, 14, 14, 182, 228, 223, 213, 206, 209, 206, 208, 206, 208, 215, 216, 32.6312 + 208, 205, 154, 150, 90, 45, 14, 17, 14, 14, 14, 105, 230, 225, 221, 205, 32.6313 + 198, 193, 148, 60, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.6314 + 14, 14, 14, 16, 19, 14, 14, 19, 14, 24, 229, 243, 234, 229, 199, 186, 32.6315 + 169, 90, 30, 14, 14, 14, 14, 14, 15, 14, 20, 137, 225, 226, 216, 190, 32.6316 + 203, 162, 152, 114, 21, 19, 14, 14, 14, 71, 238, 236, 240, 211, 215, 167, 32.6317 + 141, 111, 14, 14, 18, 14, 14, 16, 14, 14, 14, 14, 221, 236, 236, 224, 32.6318 + 215, 165, 186, 126, 63, 14, 109, 234, 219, 213, 211, 157, 143, 107, 16, 14, 32.6319 + 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 227, 240, 219, 225, 190, 165, 32.6320 + 124, 105, 18, 14, 14, 14, 216, 239, 227, 234, 204, 209, 182, 132, 114, 14, 32.6321 + 16, 14, 14, 14, 14, 14, 18, 238, 232, 239, 227, 210, 169, 148, 126, 30, 32.6322 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 224, 230, 225, 218, 210, 197, 32.6323 + 188, 165, 104, 53, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 24, 32.6324 + 15, 14, 14, 14, 14, 15, 14, 14, 14, 152, 215, 205, 204, 188, 164, 150, 32.6325 + 118, 64, 14, 14, 14, 15, 14, 14, 14, 14, 15, 207, 208, 210, 189, 178, 32.6326 + 155, 137, 104, 16, 14, 14, 182, 223, 224, 225, 202, 172, 152, 87, 14, 16, 32.6327 + 14, 15, 14, 14, 27, 14, 16, 21, 14, 193, 233, 208, 210, 190, 161, 148, 32.6328 + 90, 25, 14, 179, 220, 215, 206, 185, 150, 126, 64, 16, 14, 14, 14, 14, 32.6329 + 14, 14, 14, 14, 14, 14, 148, 228, 221, 232, 192, 175, 152, 130, 44, 14, 32.6330 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 45, 32.6331 + 159, 217, 217, 215, 205, 207, 185, 162, 134, 46, 14, 29, 230, 227, 221, 206, 32.6332 + 189, 183, 150, 82, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.6333 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6334 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.6335 + 173, 219, 222, 210, 207, 209, 214, 217, 213, 189, 152, 126, 89, 42, 16, 14, 32.6336 + 14, 14, 14, 14, 14, 14, 227, 232, 238, 216, 193, 173, 132, 57, 15, 14, 32.6337 + 14, 18, 16, 14, 21, 14, 17, 14, 26, 223, 238, 225, 222, 178, 159, 137, 32.6338 + 93, 19, 14, 14, 122, 244, 232, 227, 211, 189, 162, 134, 98, 25, 14, 14, 32.6339 + 14, 14, 14, 14, 14, 22, 213, 238, 228, 225, 203, 169, 132, 92, 32, 14, 32.6340 + 14, 14, 14, 14, 25, 215, 227, 219, 199, 200, 181, 141, 116, 61, 16, 14, 32.6341 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6342 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 185, 224, 219, 207, 198, 198, 32.6343 + 199, 198, 205, 209, 217, 217, 206, 178, 132, 105, 46, 14, 14, 14, 14, 14, 32.6344 + 178, 223, 217, 209, 204, 207, 208, 199, 199, 202, 204, 203, 194, 159, 148, 102, 32.6345 + 84, 19, 14, 14, 14, 14, 14, 122, 220, 221, 218, 204, 181, 161, 120, 54, 32.6346 + 16, 14, 17, 15, 15, 14, 14, 14, 14, 14, 14, 14, 26, 15, 14, 14, 32.6347 + 14, 18, 21, 14, 15, 56, 235, 243, 234, 222, 195, 176, 120, 53, 14, 14, 32.6348 + 14, 14, 15, 18, 23, 19, 15, 186, 217, 216, 210, 192, 186, 152, 143, 98, 32.6349 + 18, 16, 14, 14, 14, 134, 243, 236, 232, 202, 194, 152, 134, 105, 15, 14, 32.6350 + 16, 16, 14, 16, 17, 18, 14, 78, 238, 230, 222, 202, 192, 157, 150, 98, 32.6351 + 31, 14, 93, 225, 216, 205, 192, 145, 152, 109, 14, 14, 14, 14, 14, 14, 32.6352 + 14, 14, 14, 14, 14, 84, 232, 235, 221, 210, 178, 143, 118, 56, 15, 14, 32.6353 + 18, 31, 229, 241, 228, 228, 205, 198, 169, 130, 97, 14, 14, 14, 15, 14, 32.6354 + 14, 19, 55, 237, 232, 238, 222, 205, 161, 132, 93, 19, 14, 14, 14, 14, 32.6355 + 14, 14, 14, 14, 14, 27, 228, 232, 225, 210, 208, 203, 182, 164, 104, 39, 32.6356 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 16, 32.6357 + 14, 14, 14, 14, 15, 189, 217, 209, 199, 182, 147, 136, 114, 35, 14, 14, 32.6358 + 14, 14, 14, 14, 15, 14, 61, 217, 208, 208, 192, 173, 150, 118, 69, 14, 32.6359 + 14, 14, 186, 225, 220, 220, 190, 167, 128, 67, 14, 17, 14, 14, 14, 14, 32.6360 + 14, 14, 14, 14, 17, 239, 229, 207, 209, 170, 147, 141, 68, 18, 14, 176, 32.6361 + 221, 210, 198, 186, 155, 120, 59, 16, 14, 14, 17, 19, 17, 14, 14, 15, 32.6362 + 14, 15, 218, 229, 222, 226, 170, 157, 136, 87, 18, 14, 14, 14, 16, 14, 32.6363 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 122, 227, 210, 207, 32.6364 + 200, 200, 172, 154, 128, 36, 19, 81, 225, 221, 216, 204, 185, 176, 137, 72, 32.6365 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 18, 14, 14, 14, 16, 14, 14, 32.6366 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6367 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 97, 221, 209, 214, 32.6368 + 208, 205, 207, 206, 193, 159, 128, 114, 41, 23, 14, 14, 14, 14, 14, 14, 32.6369 + 14, 14, 224, 232, 234, 210, 185, 159, 111, 37, 14, 14, 14, 15, 16, 14, 32.6370 + 14, 14, 16, 14, 93, 236, 236, 223, 215, 155, 143, 122, 67, 14, 14, 14, 32.6371 + 188, 241, 228, 225, 203, 178, 162, 118, 49, 14, 14, 14, 14, 14, 14, 15, 32.6372 + 14, 65, 219, 234, 224, 214, 193, 157, 128, 82, 15, 14, 14, 14, 18, 15, 32.6373 + 73, 221, 221, 211, 200, 183, 165, 134, 111, 32, 19, 16, 14, 14, 14, 14, 32.6374 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6375 + 14, 14, 14, 14, 15, 14, 181, 224, 217, 206, 198, 193, 198, 194, 193, 197, 32.6376 + 206, 214, 178, 172, 109, 75, 20, 14, 14, 14, 14, 14, 175, 222, 216, 205, 32.6377 + 204, 207, 203, 194, 189, 190, 195, 193, 185, 134, 134, 89, 52, 14, 14, 15, 32.6378 + 14, 14, 14, 167, 219, 221, 215, 206, 202, 176, 120, 56, 19, 14, 16, 14, 32.6379 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 18, 14, 14, 18, 14, 32.6380 + 14, 120, 233, 236, 226, 204, 192, 165, 126, 52, 16, 14, 14, 14, 14, 14, 32.6381 + 14, 14, 14, 229, 221, 205, 207, 188, 172, 141, 132, 75, 14, 14, 14, 14, 32.6382 + 14, 198, 235, 225, 219, 192, 179, 155, 98, 59, 14, 14, 14, 14, 14, 14, 32.6383 + 14, 14, 14, 173, 232, 219, 221, 204, 165, 159, 122, 69, 15, 14, 90, 225, 32.6384 + 217, 211, 188, 141, 147, 82, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.6385 + 14, 199, 228, 225, 217, 190, 159, 134, 107, 22, 15, 14, 20, 67, 234, 232, 32.6386 + 227, 219, 206, 182, 152, 126, 65, 14, 14, 16, 14, 14, 14, 15, 139, 232, 32.6387 + 232, 232, 214, 192, 152, 114, 68, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6388 + 14, 53, 231, 234, 226, 206, 210, 210, 181, 162, 109, 39, 15, 14, 14, 14, 32.6389 + 15, 15, 15, 15, 14, 19, 14, 14, 21, 15, 14, 14, 14, 14, 14, 14, 32.6390 + 27, 213, 217, 223, 204, 181, 137, 124, 98, 15, 15, 14, 14, 15, 14, 14, 32.6391 + 14, 14, 137, 222, 217, 213, 195, 178, 154, 114, 52, 14, 14, 14, 183, 227, 32.6392 + 218, 216, 189, 164, 113, 57, 14, 16, 14, 14, 14, 14, 14, 24, 14, 14, 32.6393 + 120, 232, 218, 224, 202, 154, 139, 126, 44, 14, 14, 179, 221, 208, 198, 186, 32.6394 + 164, 132, 61, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 130, 238, 233, 32.6395 + 223, 200, 185, 122, 111, 52, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6396 + 14, 14, 14, 14, 14, 16, 23, 14, 113, 227, 220, 211, 192, 189, 162, 154, 32.6397 + 122, 27, 16, 116, 225, 218, 210, 202, 183, 179, 139, 75, 14, 14, 14, 17, 32.6398 + 18, 14, 14, 16, 14, 14, 14, 14, 19, 14, 14, 44, 14, 14, 14, 14, 32.6399 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6400 + 14, 14, 14, 14, 14, 14, 14, 14, 39, 215, 202, 217, 193, 200, 203, 189, 32.6401 + 172, 152, 118, 85, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 223, 229, 32.6402 + 233, 204, 182, 157, 97, 21, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6403 + 217, 219, 226, 229, 198, 152, 143, 93, 40, 14, 14, 22, 221, 233, 220, 221, 32.6404 + 198, 173, 161, 113, 54, 16, 14, 15, 14, 14, 14, 14, 14, 122, 225, 226, 32.6405 + 217, 208, 190, 143, 114, 79, 14, 14, 14, 16, 17, 14, 139, 217, 217, 207, 32.6406 + 200, 179, 159, 141, 95, 15, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 32.6407 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6408 + 15, 14, 183, 221, 218, 209, 199, 199, 195, 194, 188, 193, 199, 194, 154, 147, 32.6409 + 93, 42, 14, 17, 14, 14, 14, 14, 175, 222, 215, 200, 198, 203, 199, 193, 32.6410 + 192, 195, 192, 192, 167, 141, 105, 85, 18, 14, 14, 15, 16, 14, 14, 190, 32.6411 + 213, 218, 214, 207, 183, 150, 104, 43, 14, 14, 14, 14, 15, 14, 14, 14, 32.6412 + 14, 14, 14, 14, 24, 14, 15, 30, 14, 14, 14, 14, 14, 179, 228, 225, 32.6413 + 220, 188, 193, 172, 107, 41, 14, 14, 18, 15, 14, 15, 19, 24, 38, 234, 32.6414 + 203, 199, 205, 204, 170, 143, 122, 56, 14, 14, 14, 14, 16, 222, 223, 211, 32.6415 + 207, 189, 164, 152, 105, 38, 14, 16, 14, 14, 17, 15, 14, 18, 57, 229, 32.6416 + 222, 217, 217, 192, 155, 154, 114, 40, 14, 15, 97, 221, 213, 215, 197, 145, 32.6417 + 143, 65, 14, 14, 14, 14, 14, 14, 14, 14, 16, 18, 40, 226, 220, 219, 32.6418 + 204, 167, 130, 134, 84, 14, 16, 16, 14, 136, 235, 224, 222, 203, 203, 170, 32.6419 + 139, 116, 39, 14, 14, 19, 14, 14, 14, 14, 194, 225, 224, 221, 203, 178, 32.6420 + 152, 114, 55, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 95, 234, 234, 32.6421 + 229, 203, 208, 214, 179, 167, 128, 55, 14, 14, 14, 14, 14, 14, 14, 14, 32.6422 + 14, 14, 14, 16, 14, 14, 26, 159, 14, 14, 15, 14, 61, 225, 223, 234, 32.6423 + 216, 186, 145, 126, 79, 14, 14, 14, 14, 15, 14, 14, 14, 14, 199, 230, 32.6424 + 228, 217, 203, 175, 147, 95, 31, 14, 14, 14, 183, 228, 220, 217, 192, 170, 32.6425 + 150, 69, 14, 14, 14, 14, 14, 14, 14, 21, 14, 27, 224, 217, 226, 222, 32.6426 + 185, 147, 132, 98, 27, 14, 14, 185, 217, 215, 204, 190, 170, 159, 71, 14, 32.6427 + 15, 20, 16, 14, 14, 16, 18, 14, 19, 233, 236, 232, 219, 173, 155, 120, 32.6428 + 85, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6429 + 14, 14, 20, 14, 178, 227, 226, 208, 195, 189, 157, 143, 89, 14, 14, 109, 32.6430 + 227, 217, 214, 207, 197, 186, 159, 104, 18, 14, 14, 14, 14, 14, 14, 14, 32.6431 + 17, 16, 25, 14, 14, 14, 20, 126, 14, 14, 14, 14, 14, 14, 14, 14, 32.6432 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6433 + 14, 14, 14, 14, 16, 198, 200, 219, 179, 195, 192, 164, 147, 139, 90, 44, 32.6434 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 223, 225, 232, 208, 190, 165, 32.6435 + 137, 23, 14, 14, 14, 14, 14, 14, 14, 14, 14, 85, 241, 211, 229, 214, 32.6436 + 162, 159, 143, 61, 18, 14, 14, 43, 231, 223, 217, 217, 200, 176, 165, 114, 32.6437 + 35, 14, 14, 15, 15, 14, 14, 14, 14, 170, 229, 219, 210, 210, 192, 137, 32.6438 + 97, 67, 14, 14, 14, 14, 14, 14, 185, 216, 217, 205, 207, 182, 157, 134, 32.6439 + 93, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6440 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 182, 225, 32.6441 + 222, 211, 204, 203, 204, 202, 195, 200, 183, 167, 139, 98, 79, 18, 14, 16, 32.6442 + 14, 14, 14, 14, 176, 225, 215, 204, 195, 202, 202, 197, 202, 204, 198, 194, 32.6443 + 148, 141, 92, 52, 14, 14, 15, 14, 14, 14, 14, 190, 213, 217, 206, 208, 32.6444 + 204, 194, 162, 85, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6445 + 14, 16, 41, 92, 17, 14, 14, 14, 14, 203, 218, 209, 209, 183, 195, 175, 32.6446 + 136, 46, 14, 14, 14, 14, 14, 14, 14, 14, 105, 233, 214, 210, 194, 194, 32.6447 + 175, 148, 118, 40, 14, 14, 14, 14, 53, 231, 211, 200, 194, 188, 155, 141, 32.6448 + 93, 18, 14, 14, 14, 14, 14, 14, 14, 20, 175, 238, 217, 227, 205, 172, 32.6449 + 150, 136, 93, 18, 14, 14, 98, 216, 211, 218, 197, 165, 172, 93, 16, 15, 32.6450 + 16, 14, 14, 14, 16, 19, 16, 14, 162, 224, 217, 221, 182, 150, 105, 118, 32.6451 + 44, 14, 14, 16, 14, 193, 230, 211, 217, 192, 199, 159, 136, 102, 24, 14, 32.6452 + 14, 20, 14, 19, 14, 15, 217, 224, 223, 206, 190, 165, 147, 104, 38, 14, 32.6453 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 136, 234, 234, 231, 214, 214, 216, 32.6454 + 195, 183, 159, 107, 14, 15, 14, 14, 14, 14, 14, 14, 21, 14, 14, 14, 32.6455 + 14, 20, 89, 210, 14, 14, 15, 14, 128, 226, 233, 235, 223, 189, 162, 128, 32.6456 + 54, 14, 14, 14, 14, 14, 14, 14, 14, 26, 232, 239, 239, 223, 207, 170, 32.6457 + 145, 78, 18, 14, 15, 14, 181, 225, 221, 220, 198, 183, 189, 104, 14, 14, 32.6458 + 14, 14, 14, 14, 14, 14, 14, 134, 232, 223, 239, 203, 162, 145, 114, 63, 32.6459 + 18, 14, 15, 188, 218, 221, 214, 194, 182, 176, 97, 19, 14, 14, 15, 15, 32.6460 + 14, 14, 14, 14, 137, 248, 240, 233, 207, 170, 102, 136, 52, 14, 14, 14, 32.6461 + 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 29, 14, 14, 30, 32.6462 + 227, 229, 222, 200, 197, 172, 145, 124, 64, 14, 19, 102, 229, 219, 216, 216, 32.6463 + 199, 198, 185, 152, 40, 22, 14, 14, 15, 14, 14, 15, 14, 14, 14, 14, 32.6464 + 22, 79, 143, 194, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6465 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.6466 + 14, 157, 211, 217, 193, 200, 182, 148, 130, 116, 59, 19, 14, 14, 14, 14, 32.6467 + 14, 14, 14, 14, 14, 14, 223, 225, 232, 214, 204, 183, 183, 48, 14, 14, 32.6468 + 14, 14, 14, 14, 14, 14, 14, 213, 226, 230, 238, 178, 145, 162, 114, 35, 32.6469 + 14, 14, 14, 104, 231, 217, 217, 214, 211, 190, 179, 147, 24, 14, 14, 14, 32.6470 + 14, 14, 14, 14, 32, 199, 230, 221, 210, 216, 176, 147, 98, 48, 14, 14, 32.6471 + 14, 14, 14, 20, 214, 219, 221, 209, 214, 181, 150, 124, 73, 17, 14, 14, 32.6472 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6473 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 186, 229, 225, 217, 207, 208, 32.6474 + 207, 205, 203, 194, 176, 150, 130, 72, 57, 14, 14, 16, 14, 14, 15, 14, 32.6475 + 179, 229, 222, 209, 197, 200, 199, 202, 207, 211, 203, 189, 150, 118, 84, 19, 32.6476 + 14, 14, 21, 14, 14, 14, 14, 172, 218, 221, 215, 208, 199, 197, 188, 136, 32.6477 + 48, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 104, 182, 148, 32.6478 + 14, 14, 14, 15, 14, 214, 217, 213, 204, 188, 197, 181, 167, 81, 24, 14, 32.6479 + 14, 14, 14, 14, 14, 23, 185, 227, 225, 220, 200, 189, 173, 150, 107, 27, 32.6480 + 14, 14, 14, 14, 116, 222, 203, 197, 193, 194, 172, 162, 73, 14, 14, 14, 32.6481 + 16, 14, 14, 14, 28, 68, 226, 226, 208, 226, 197, 172, 152, 111, 71, 14, 32.6482 + 18, 14, 93, 217, 222, 220, 192, 181, 190, 139, 32, 14, 14, 14, 15, 17, 32.6483 + 14, 14, 15, 37, 220, 208, 214, 211, 167, 150, 113, 95, 18, 14, 14, 14, 32.6484 + 16, 223, 226, 215, 207, 190, 190, 162, 136, 81, 15, 14, 14, 15, 14, 17, 32.6485 + 14, 40, 224, 225, 217, 204, 182, 150, 134, 84, 22, 14, 14, 14, 14, 14, 32.6486 + 14, 14, 14, 14, 14, 172, 236, 235, 232, 224, 217, 213, 208, 202, 190, 185, 32.6487 + 179, 185, 182, 188, 185, 186, 186, 186, 175, 194, 198, 183, 186, 211, 202, 141, 32.6488 + 14, 14, 14, 14, 193, 230, 240, 235, 220, 181, 165, 114, 30, 14, 14, 14, 32.6489 + 14, 14, 14, 14, 14, 68, 245, 242, 243, 229, 209, 162, 136, 71, 14, 14, 32.6490 + 14, 14, 170, 223, 221, 219, 206, 202, 197, 170, 57, 26, 14, 14, 14, 14, 32.6491 + 14, 16, 73, 220, 236, 226, 232, 175, 139, 150, 89, 33, 14, 14, 14, 172, 32.6492 + 221, 218, 220, 209, 197, 194, 157, 92, 16, 14, 14, 15, 14, 14, 16, 59, 32.6493 + 235, 243, 241, 227, 181, 147, 104, 93, 20, 14, 14, 24, 90, 14, 14, 14, 32.6494 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 132, 239, 227, 230, 213, 32.6495 + 189, 157, 145, 118, 52, 15, 23, 65, 230, 223, 221, 216, 202, 205, 208, 194, 32.6496 + 205, 183, 170, 178, 186, 183, 183, 195, 198, 203, 192, 200, 219, 225, 197, 97, 32.6497 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6498 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 105, 218, 219, 32.6499 + 210, 189, 165, 147, 116, 76, 32, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6500 + 14, 14, 216, 219, 232, 218, 209, 195, 197, 132, 49, 15, 14, 14, 14, 14, 32.6501 + 14, 24, 85, 234, 222, 236, 221, 152, 141, 143, 68, 18, 14, 16, 14, 179, 32.6502 + 230, 221, 224, 205, 219, 204, 198, 181, 52, 20, 19, 15, 14, 14, 14, 14, 32.6503 + 150, 219, 225, 221, 217, 214, 154, 152, 104, 24, 14, 14, 14, 14, 14, 67, 32.6504 + 231, 224, 226, 206, 214, 181, 148, 116, 37, 22, 14, 14, 15, 14, 15, 14, 32.6505 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6506 + 14, 14, 14, 14, 14, 14, 193, 234, 229, 218, 210, 211, 209, 206, 204, 202, 32.6507 + 165, 136, 114, 65, 29, 14, 15, 15, 14, 14, 15, 14, 190, 233, 225, 217, 32.6508 + 210, 210, 204, 208, 215, 217, 198, 170, 148, 95, 48, 14, 19, 14, 18, 14, 32.6509 + 14, 14, 14, 139, 224, 224, 223, 211, 204, 209, 218, 217, 199, 189, 188, 182, 32.6510 + 179, 181, 181, 182, 185, 183, 188, 185, 225, 234, 200, 50, 14, 14, 19, 14, 32.6511 + 15, 215, 225, 222, 207, 203, 200, 189, 211, 198, 165, 157, 167, 179, 182, 182, 32.6512 + 189, 188, 229, 227, 217, 208, 209, 208, 169, 145, 95, 16, 14, 14, 14, 14, 32.6513 + 179, 205, 204, 202, 194, 200, 193, 186, 143, 82, 111, 97, 118, 100, 100, 111, 32.6514 + 205, 216, 239, 223, 210, 214, 165, 152, 139, 87, 37, 14, 17, 14, 76, 219, 32.6515 + 228, 221, 207, 199, 198, 182, 100, 26, 14, 14, 17, 18, 14, 14, 55, 170, 32.6516 + 224, 213, 206, 178, 143, 137, 120, 49, 14, 14, 14, 14, 65, 227, 228, 218, 32.6517 + 210, 197, 173, 155, 141, 67, 14, 14, 14, 14, 14, 14, 14, 107, 230, 221, 32.6518 + 220, 198, 179, 141, 120, 72, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6519 + 14, 197, 237, 236, 224, 224, 210, 207, 210, 209, 199, 210, 220, 223, 225, 227, 32.6520 + 229, 231, 230, 231, 232, 230, 233, 227, 219, 224, 200, 114, 14, 14, 14, 14, 32.6521 + 225, 230, 246, 233, 211, 170, 159, 107, 17, 15, 14, 14, 14, 14, 14, 14, 32.6522 + 15, 102, 249, 243, 240, 223, 200, 152, 126, 64, 14, 14, 14, 14, 162, 221, 32.6523 + 219, 220, 213, 210, 183, 222, 182, 100, 17, 14, 14, 18, 14, 79, 224, 242, 32.6524 + 246, 219, 195, 159, 116, 137, 60, 14, 14, 14, 14, 152, 223, 217, 220, 221, 32.6525 + 213, 206, 203, 192, 93, 24, 14, 16, 15, 14, 76, 230, 249, 238, 236, 210, 32.6526 + 137, 97, 147, 33, 14, 14, 14, 81, 199, 14, 22, 14, 14, 14, 14, 14, 32.6527 + 14, 14, 14, 14, 14, 92, 143, 243, 239, 220, 225, 207, 185, 148, 148, 114, 32.6528 + 40, 14, 14, 16, 225, 222, 222, 216, 205, 207, 217, 216, 209, 205, 213, 226, 32.6529 + 233, 228, 229, 235, 237, 236, 224, 236, 216, 188, 169, 71, 14, 14, 14, 14, 32.6530 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6531 + 14, 14, 14, 14, 14, 14, 18, 14, 14, 76, 229, 217, 214, 179, 141, 136, 32.6532 + 102, 46, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 211, 215, 32.6533 + 230, 223, 217, 208, 186, 209, 167, 45, 14, 14, 14, 14, 14, 120, 239, 223, 32.6534 + 240, 229, 167, 145, 126, 109, 31, 14, 14, 14, 14, 207, 232, 223, 225, 203, 32.6535 + 223, 209, 205, 203, 218, 186, 188, 186, 182, 205, 217, 231, 235, 232, 217, 224, 32.6536 + 224, 213, 132, 165, 100, 14, 14, 14, 14, 14, 14, 116, 237, 231, 232, 207, 32.6537 + 213, 183, 155, 116, 14, 19, 14, 14, 16, 14, 16, 14, 14, 14, 14, 14, 32.6538 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6539 + 14, 14, 198, 235, 229, 225, 214, 217, 210, 206, 205, 206, 148, 130, 84, 60, 32.6540 + 14, 14, 14, 14, 14, 14, 15, 14, 192, 238, 229, 220, 217, 217, 209, 214, 32.6541 + 219, 216, 193, 152, 132, 81, 14, 14, 14, 16, 14, 16, 14, 14, 14, 105, 32.6542 + 225, 223, 221, 213, 218, 204, 209, 218, 221, 227, 233, 229, 226, 227, 226, 229, 32.6543 + 229, 228, 231, 231, 216, 195, 139, 15, 17, 14, 21, 14, 15, 211, 225, 223, 32.6544 + 215, 217, 211, 207, 197, 210, 221, 221, 225, 228, 226, 220, 203, 218, 225, 240, 32.6545 + 236, 210, 213, 190, 162, 134, 85, 14, 14, 14, 14, 14, 221, 207, 217, 215, 32.6546 + 200, 203, 198, 193, 210, 207, 236, 220, 235, 238, 234, 235, 222, 229, 207, 225, 32.6547 + 217, 207, 148, 143, 113, 64, 16, 14, 14, 14, 56, 217, 219, 224, 222, 217, 32.6548 + 198, 214, 210, 139, 46, 15, 14, 14, 19, 47, 164, 242, 219, 227, 203, 128, 32.6549 + 114, 102, 97, 14, 16, 14, 14, 14, 148, 229, 230, 223, 207, 202, 169, 154, 32.6550 + 134, 56, 14, 14, 14, 14, 14, 14, 15, 192, 238, 225, 217, 197, 176, 139, 32.6551 + 124, 68, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 202, 238, 231, 32.6552 + 217, 217, 210, 210, 207, 210, 216, 218, 224, 232, 230, 229, 229, 231, 230, 226, 32.6553 + 231, 215, 215, 231, 214, 190, 164, 61, 14, 14, 14, 56, 228, 249, 232, 234, 32.6554 + 198, 188, 134, 89, 14, 15, 14, 14, 20, 14, 17, 14, 14, 214, 245, 241, 32.6555 + 239, 228, 162, 178, 113, 47, 14, 14, 14, 16, 59, 218, 206, 226, 213, 229, 32.6556 + 210, 211, 209, 218, 213, 208, 202, 207, 238, 240, 241, 240, 234, 209, 155, 118, 32.6557 + 134, 53, 17, 14, 14, 14, 23, 57, 223, 217, 217, 223, 225, 221, 209, 203, 32.6558 + 214, 208, 189, 181, 200, 228, 234, 233, 234, 240, 211, 126, 92, 102, 52, 14, 32.6559 + 14, 14, 14, 179, 227, 204, 205, 200, 198, 198, 192, 195, 190, 192, 193, 185, 32.6560 + 236, 235, 233, 229, 234, 232, 215, 190, 147, 167, 141, 59, 18, 14, 14, 14, 32.6561 + 219, 211, 210, 199, 227, 209, 216, 211, 217, 218, 224, 223, 225, 226, 229, 225, 32.6562 + 231, 224, 229, 220, 176, 200, 141, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6563 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6564 + 14, 15, 14, 14, 25, 216, 234, 225, 220, 172, 124, 116, 59, 18, 14, 14, 32.6565 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 109, 228, 226, 227, 233, 209, 32.6566 + 213, 205, 207, 215, 217, 214, 217, 216, 238, 234, 238, 237, 220, 189, 137, 105, 32.6567 + 118, 50, 14, 14, 15, 15, 14, 229, 228, 226, 220, 214, 210, 210, 211, 211, 32.6568 + 205, 221, 219, 222, 229, 230, 227, 228, 226, 225, 225, 225, 219, 195, 162, 132, 32.6569 + 68, 14, 14, 14, 14, 14, 14, 190, 240, 238, 231, 229, 198, 148, 141, 104, 32.6570 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6571 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 195, 229, 32.6572 + 225, 221, 207, 207, 210, 218, 208, 189, 136, 136, 78, 25, 14, 14, 16, 14, 32.6573 + 16, 14, 14, 14, 204, 238, 229, 224, 220, 220, 221, 222, 222, 204, 173, 147, 32.6574 + 113, 48, 15, 14, 15, 15, 14, 14, 14, 14, 18, 50, 234, 229, 209, 208, 32.6575 + 202, 209, 214, 214, 219, 221, 230, 233, 231, 236, 232, 228, 227, 235, 232, 217, 32.6576 + 190, 198, 89, 14, 14, 16, 14, 14, 14, 234, 217, 235, 221, 217, 216, 215, 32.6577 + 207, 217, 221, 220, 219, 225, 215, 200, 194, 136, 235, 231, 214, 216, 215, 183, 32.6578 + 152, 122, 79, 14, 14, 14, 14, 68, 230, 225, 224, 218, 211, 213, 210, 213, 32.6579 + 219, 225, 226, 232, 233, 236, 237, 237, 229, 227, 222, 214, 197, 176, 137, 107, 32.6580 + 92, 20, 15, 14, 16, 14, 14, 214, 217, 224, 224, 218, 214, 214, 210, 208, 32.6581 + 209, 199, 190, 198, 218, 234, 234, 231, 227, 190, 139, 118, 111, 82, 33, 14, 32.6582 + 14, 14, 20, 14, 194, 237, 237, 228, 219, 207, 157, 162, 111, 14, 14, 14, 32.6583 + 14, 14, 14, 14, 24, 229, 234, 236, 217, 213, 143, 165, 134, 35, 21, 14, 32.6584 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 183, 223, 204, 209, 203, 202, 202, 32.6585 + 205, 205, 202, 197, 210, 218, 217, 215, 210, 213, 209, 205, 205, 203, 200, 195, 32.6586 + 154, 148, 148, 57, 15, 14, 14, 95, 225, 244, 224, 223, 157, 136, 124, 53, 32.6587 + 15, 14, 14, 14, 14, 14, 16, 21, 14, 232, 235, 239, 218, 204, 145, 148, 32.6588 + 92, 26, 14, 14, 17, 14, 20, 183, 218, 221, 169, 185, 218, 214, 214, 222, 32.6589 + 227, 232, 238, 242, 240, 242, 236, 216, 170, 139, 130, 132, 63, 31, 15, 15, 32.6590 + 14, 14, 14, 29, 210, 219, 215, 199, 194, 209, 214, 208, 207, 214, 211, 209, 32.6591 + 221, 232, 234, 231, 211, 176, 136, 120, 114, 69, 23, 14, 14, 15, 15, 206, 32.6592 + 234, 227, 236, 239, 239, 235, 232, 237, 234, 233, 232, 232, 221, 224, 225, 221, 32.6593 + 221, 215, 195, 169, 145, 136, 85, 37, 14, 14, 14, 14, 141, 197, 203, 209, 32.6594 + 209, 220, 218, 217, 202, 203, 204, 206, 205, 214, 210, 205, 200, 192, 199, 170, 32.6595 + 126, 145, 95, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6596 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.6597 + 141, 222, 243, 230, 198, 157, 126, 93, 37, 14, 14, 14, 14, 14, 14, 14, 32.6598 + 14, 14, 14, 14, 14, 14, 61, 206, 219, 199, 205, 198, 216, 215, 210, 221, 32.6599 + 231, 239, 246, 248, 236, 231, 226, 204, 155, 124, 120, 132, 48, 25, 14, 14, 32.6600 + 14, 14, 14, 227, 231, 232, 221, 211, 203, 206, 200, 192, 199, 210, 208, 206, 32.6601 + 216, 214, 210, 216, 217, 217, 217, 224, 217, 190, 145, 107, 76, 14, 14, 14, 32.6602 + 14, 14, 18, 226, 243, 239, 229, 224, 193, 148, 126, 78, 14, 14, 14, 14, 32.6603 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6604 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 188, 217, 217, 209, 200, 198, 32.6605 + 204, 207, 195, 167, 124, 97, 53, 17, 14, 14, 16, 14, 14, 14, 15, 14, 32.6606 + 185, 230, 229, 226, 219, 222, 218, 215, 197, 172, 134, 107, 81, 37, 14, 14, 32.6607 + 14, 14, 14, 14, 16, 14, 14, 23, 197, 214, 211, 195, 190, 192, 195, 205, 32.6608 + 208, 220, 222, 229, 225, 234, 233, 230, 229, 226, 209, 181, 136, 159, 78, 16, 32.6609 + 14, 14, 14, 18, 15, 224, 228, 229, 203, 204, 209, 207, 202, 215, 221, 217, 32.6610 + 207, 199, 167, 124, 93, 176, 236, 234, 215, 209, 213, 147, 128, 100, 35, 14, 32.6611 + 14, 14, 14, 130, 234, 232, 224, 218, 215, 213, 210, 213, 218, 221, 222, 229, 32.6612 + 225, 233, 230, 229, 218, 217, 206, 181, 155, 137, 118, 104, 40, 15, 15, 14, 32.6613 + 15, 15, 14, 107, 215, 213, 208, 207, 215, 219, 216, 202, 217, 218, 220, 223, 32.6614 + 226, 232, 228, 217, 182, 143, 114, 130, 92, 29, 14, 14, 16, 14, 15, 21, 32.6615 + 207, 226, 221, 213, 215, 198, 147, 141, 95, 14, 20, 16, 18, 19, 14, 14, 32.6616 + 45, 232, 232, 229, 217, 208, 134, 134, 79, 14, 14, 14, 14, 14, 14, 14, 32.6617 + 14, 14, 14, 14, 18, 137, 205, 199, 173, 167, 162, 178, 194, 204, 205, 203, 32.6618 + 203, 211, 208, 203, 202, 202, 199, 183, 181, 198, 183, 150, 104, 114, 107, 30, 32.6619 + 14, 14, 14, 161, 232, 236, 217, 206, 161, 126, 132, 30, 16, 14, 14, 14, 32.6620 + 14, 14, 14, 14, 16, 225, 224, 227, 211, 190, 155, 141, 92, 15, 14, 14, 32.6621 + 14, 14, 14, 67, 181, 214, 189, 170, 152, 167, 197, 226, 236, 236, 234, 233, 32.6622 + 219, 208, 193, 178, 157, 128, 98, 76, 21, 15, 14, 14, 14, 14, 14, 14, 32.6623 + 71, 154, 205, 190, 155, 159, 172, 165, 198, 208, 210, 207, 204, 202, 190, 178, 32.6624 + 172, 130, 100, 104, 65, 22, 14, 14, 14, 14, 43, 227, 235, 235, 237, 239, 32.6625 + 224, 218, 215, 219, 218, 217, 218, 211, 217, 217, 214, 200, 176, 155, 130, 113, 32.6626 + 130, 90, 41, 21, 14, 14, 14, 14, 81, 182, 194, 173, 128, 186, 197, 210, 32.6627 + 190, 194, 193, 194, 192, 193, 197, 190, 186, 181, 167, 136, 105, 105, 54, 14, 32.6628 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6629 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 53, 224, 225, 236, 215, 32.6630 + 159, 145, 116, 63, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6631 + 14, 14, 17, 105, 186, 205, 193, 178, 165, 181, 206, 226, 234, 239, 239, 235, 32.6632 + 214, 197, 183, 169, 141, 107, 81, 68, 14, 14, 14, 14, 14, 15, 14, 209, 32.6633 + 204, 204, 197, 188, 192, 197, 197, 192, 199, 200, 189, 179, 178, 161, 137, 141, 32.6634 + 205, 200, 202, 203, 188, 165, 126, 97, 30, 14, 15, 14, 14, 16, 45, 228, 32.6635 + 232, 231, 214, 200, 165, 130, 105, 48, 14, 14, 14, 14, 14, 14, 14, 14, 32.6636 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6637 + 14, 14, 15, 14, 14, 19, 176, 209, 209, 202, 192, 189, 194, 194, 178, 147, 32.6638 + 120, 73, 27, 14, 14, 14, 14, 14, 14, 14, 15, 14, 161, 225, 217, 193, 32.6639 + 208, 214, 216, 207, 193, 164, 134, 116, 43, 21, 14, 14, 14, 14, 14, 14, 32.6640 + 14, 14, 14, 14, 130, 190, 207, 165, 167, 178, 182, 188, 189, 199, 206, 211, 32.6641 + 204, 217, 216, 210, 204, 192, 164, 126, 113, 111, 47, 14, 14, 14, 14, 16, 32.6642 + 14, 172, 226, 217, 200, 203, 207, 203, 198, 198, 189, 178, 172, 162, 137, 98, 32.6643 + 15, 206, 225, 225, 202, 186, 209, 136, 148, 124, 18, 16, 14, 14, 14, 186, 32.6644 + 234, 232, 225, 213, 205, 204, 200, 195, 183, 186, 186, 190, 189, 194, 193, 190, 32.6645 + 185, 178, 161, 143, 122, 104, 85, 67, 14, 14, 14, 14, 14, 15, 14, 22, 32.6646 + 189, 200, 199, 179, 157, 164, 189, 204, 203, 208, 206, 203, 189, 182, 167, 159, 32.6647 + 136, 136, 114, 76, 34, 15, 14, 14, 14, 14, 14, 65, 229, 228, 218, 217, 32.6648 + 211, 189, 147, 116, 72, 14, 14, 14, 14, 14, 14, 14, 100, 240, 236, 227, 32.6649 + 202, 197, 143, 145, 82, 14, 14, 21, 14, 14, 14, 14, 14, 14, 14, 14, 32.6650 + 14, 56, 147, 175, 167, 159, 148, 143, 147, 150, 152, 150, 154, 159, 159, 150, 32.6651 + 145, 143, 139, 130, 104, 118, 100, 95, 92, 104, 75, 16, 14, 14, 14, 192, 32.6652 + 214, 192, 154, 114, 116, 90, 104, 17, 14, 14, 15, 14, 14, 14, 16, 14, 32.6653 + 79, 229, 207, 157, 122, 105, 102, 97, 75, 14, 14, 14, 14, 14, 14, 14, 32.6654 + 73, 130, 169, 176, 169, 170, 164, 161, 159, 159, 161, 161, 172, 152, 139, 137, 32.6655 + 132, 93, 44, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 57, 137, 170, 32.6656 + 169, 167, 155, 136, 126, 136, 141, 139, 145, 148, 141, 126, 116, 98, 64, 37, 32.6657 + 16, 14, 14, 15, 15, 15, 81, 219, 204, 193, 152, 148, 176, 172, 169, 167, 32.6658 + 173, 170, 167, 162, 150, 150, 137, 126, 124, 120, 114, 107, 87, 46, 19, 14, 32.6659 + 14, 14, 14, 15, 17, 97, 172, 179, 155, 173, 155, 137, 139, 139, 147, 137, 32.6660 + 136, 137, 134, 130, 134, 126, 102, 102, 113, 92, 36, 14, 14, 14, 14, 14, 32.6661 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6662 + 14, 14, 14, 14, 14, 14, 14, 147, 220, 232, 211, 186, 137, 116, 84, 35, 32.6663 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 32.6664 + 82, 173, 181, 159, 157, 152, 148, 148, 162, 175, 185, 189, 165, 145, 136, 130, 32.6665 + 116, 81, 39, 14, 14, 14, 15, 15, 14, 14, 14, 139, 185, 185, 173, 152, 32.6666 + 130, 126, 126, 130, 118, 136, 132, 120, 126, 118, 102, 105, 193, 182, 170, 157, 32.6667 + 148, 143, 130, 120, 18, 14, 18, 14, 14, 27, 72, 223, 210, 206, 173, 152, 32.6668 + 130, 120, 100, 39, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6669 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.6670 + 14, 16, 145, 210, 161, 148, 134, 128, 130, 132, 113, 102, 122, 56, 18, 14, 32.6671 + 14, 14, 14, 14, 15, 14, 14, 14, 147, 219, 197, 154, 148, 150, 152, 148, 32.6672 + 136, 116, 98, 82, 23, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6673 + 55, 130, 181, 155, 132, 137, 141, 145, 143, 152, 157, 162, 164, 165, 161, 148, 32.6674 + 139, 136, 120, 100, 128, 82, 21, 14, 15, 18, 14, 14, 14, 75, 193, 185, 32.6675 + 186, 162, 148, 126, 154, 152, 139, 130, 128, 118, 84, 57, 14, 225, 209, 188, 32.6676 + 143, 126, 134, 85, 104, 98, 14, 14, 14, 14, 17, 220, 228, 226, 214, 204, 32.6677 + 198, 188, 175, 162, 145, 143, 148, 150, 152, 152, 154, 150, 148, 136, 130, 126, 32.6678 + 122, 100, 49, 19, 14, 14, 14, 14, 14, 14, 15, 14, 43, 92, 165, 185, 32.6679 + 169, 148, 141, 141, 132, 137, 139, 139, 139, 147, 139, 134, 111, 97, 52, 21, 32.6680 + 14, 14, 14, 14, 14, 14, 14, 98, 219, 202, 167, 155, 152, 143, 122, 111, 32.6681 + 73, 14, 18, 15, 14, 14, 15, 14, 137, 217, 199, 167, 132, 132, 111, 137, 32.6682 + 87, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 44, 67, 32.6683 + 114, 124, 128, 126, 118, 116, 120, 128, 126, 139, 139, 124, 120, 126, 122, 111, 32.6684 + 100, 104, 84, 95, 92, 67, 38, 14, 14, 14, 14, 185, 181, 157, 141, 100, 32.6685 + 114, 109, 113, 37, 14, 14, 14, 14, 14, 14, 18, 14, 93, 211, 178, 126, 32.6686 + 107, 100, 102, 107, 100, 20, 14, 14, 15, 14, 14, 14, 27, 19, 53, 109, 32.6687 + 124, 130, 130, 128, 126, 132, 130, 126, 132, 118, 97, 65, 38, 19, 14, 14, 32.6688 + 14, 14, 14, 14, 14, 16, 15, 14, 15, 14, 24, 59, 109, 137, 130, 118, 32.6689 + 124, 118, 111, 109, 114, 116, 104, 89, 53, 34, 15, 14, 14, 16, 18, 14, 32.6690 + 14, 14, 73, 185, 165, 169, 128, 116, 120, 118, 114, 120, 122, 124, 118, 114, 32.6691 + 113, 111, 105, 107, 109, 107, 92, 78, 32, 17, 14, 14, 14, 14, 14, 14, 32.6692 + 14, 28, 81, 102, 150, 145, 152, 141, 120, 118, 118, 109, 107, 113, 113, 105, 32.6693 + 105, 113, 93, 85, 84, 52, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6694 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6695 + 14, 14, 67, 203, 208, 232, 194, 148, 136, 92, 48, 18, 14, 14, 16, 14, 32.6696 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 47, 78, 109, 32.6697 + 134, 128, 126, 128, 137, 143, 147, 145, 116, 109, 90, 64, 36, 18, 14, 14, 32.6698 + 14, 14, 14, 14, 14, 14, 14, 40, 124, 152, 162, 148, 126, 114, 113, 118, 32.6699 + 102, 118, 116, 111, 116, 105, 84, 79, 157, 141, 124, 111, 116, 120, 128, 130, 32.6700 + 60, 14, 14, 14, 14, 14, 50, 219, 173, 162, 124, 107, 98, 107, 109, 53, 32.6701 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6702 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 15, 14, 14, 75, 170, 32.6703 + 148, 132, 114, 113, 107, 109, 104, 104, 97, 39, 14, 14, 14, 14, 14, 14, 32.6704 + 14, 14, 14, 14, 84, 173, 167, 143, 143, 134, 122, 120, 120, 109, 85, 72, 32.6705 + 15, 14, 14, 14, 14, 14, 14, 14, 21, 14, 14, 14, 15, 36, 97, 113, 32.6706 + 107, 111, 118, 122, 124, 128, 132, 134, 143, 145, 137, 126, 118, 116, 120, 111, 32.6707 + 84, 43, 14, 14, 16, 19, 14, 14, 14, 18, 90, 118, 169, 137, 116, 107, 32.6708 + 109, 114, 128, 130, 124, 90, 44, 16, 16, 182, 170, 137, 116, 122, 97, 113, 32.6709 + 113, 124, 36, 14, 16, 14, 44, 223, 221, 217, 205, 192, 176, 161, 124, 90, 32.6710 + 102, 102, 104, 107, 109, 111, 114, 109, 113, 111, 102, 92, 75, 54, 23, 14, 32.6711 + 14, 15, 14, 15, 14, 14, 20, 14, 14, 18, 40, 79, 122, 143, 128, 105, 32.6712 + 126, 122, 111, 104, 104, 102, 84, 69, 63, 27, 14, 14, 14, 14, 14, 18, 32.6713 + 14, 15, 14, 81, 183, 175, 162, 134, 122, 116, 124, 111, 76, 16, 14, 14, 32.6714 + 14, 14, 15, 15, 139, 192, 176, 145, 132, 130, 120, 152, 130, 42, 14, 14, 32.6715 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 24, 36, 53, 69, 32.6716 + 73, 72, 76, 79, 78, 85, 82, 76, 73, 78, 78, 71, 72, 78, 59, 64, 32.6717 + 45, 18, 14, 14, 14, 14, 14, 92, 82, 78, 82, 69, 67, 75, 84, 54, 32.6718 + 14, 16, 14, 14, 18, 21, 14, 14, 17, 82, 65, 81, 75, 78, 72, 79, 32.6719 + 81, 28, 17, 14, 14, 14, 17, 14, 15, 14, 15, 18, 18, 31, 53, 72, 32.6720 + 84, 82, 67, 53, 54, 44, 27, 15, 14, 14, 14, 14, 14, 14, 15, 14, 32.6721 + 14, 15, 14, 14, 14, 14, 14, 14, 19, 24, 36, 56, 92, 85, 73, 69, 32.6722 + 65, 53, 36, 22, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 36, 78, 32.6723 + 84, 93, 82, 82, 79, 81, 79, 84, 85, 90, 87, 84, 78, 78, 76, 72, 32.6724 + 64, 53, 28, 16, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 17, 14, 32.6725 + 46, 48, 81, 97, 71, 73, 71, 68, 65, 69, 71, 69, 65, 84, 78, 57, 32.6726 + 34, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6727 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 170, 210, 32.6728 + 215, 207, 175, 113, 118, 61, 24, 14, 14, 14, 16, 14, 14, 14, 14, 14, 32.6729 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 29, 33, 46, 67, 81, 32.6730 + 90, 85, 67, 53, 57, 44, 29, 14, 14, 14, 14, 15, 16, 14, 14, 14, 32.6731 + 14, 14, 14, 14, 23, 43, 69, 79, 75, 78, 76, 78, 72, 81, 73, 67, 32.6732 + 63, 44, 27, 24, 92, 89, 90, 89, 93, 102, 104, 104, 55, 15, 14, 14, 32.6733 + 14, 14, 19, 93, 124, 114, 85, 85, 82, 90, 105, 68, 14, 14, 14, 14, 32.6734 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6735 + 14, 14, 14, 14, 14, 14, 14, 19, 15, 14, 24, 72, 90, 76, 68, 65, 32.6736 + 69, 65, 68, 73, 47, 24, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.6737 + 21, 50, 65, 85, 92, 84, 71, 72, 76, 75, 59, 49, 14, 14, 14, 14, 32.6738 + 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 19, 29, 48, 53, 57, 64, 32.6739 + 69, 75, 81, 76, 75, 73, 73, 75, 68, 64, 61, 56, 19, 14, 14, 14, 32.6740 + 14, 14, 14, 15, 14, 14, 21, 39, 89, 71, 67, 76, 60, 63, 64, 72, 32.6741 + 67, 47, 24, 14, 14, 55, 71, 57, 68, 76, 53, 87, 79, 90, 56, 14, 32.6742 + 16, 14, 98, 215, 213, 213, 195, 172, 152, 122, 69, 36, 40, 39, 39, 42, 32.6743 + 41, 42, 43, 44, 46, 55, 52, 34, 18, 14, 14, 14, 14, 14, 14, 18, 32.6744 + 14, 14, 16, 14, 14, 14, 14, 14, 18, 36, 61, 78, 79, 78, 68, 56, 32.6745 + 48, 37, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 28, 32.6746 + 76, 107, 107, 93, 116, 105, 128, 109, 85, 27, 15, 14, 14, 14, 14, 14, 32.6747 + 73, 102, 114, 100, 93, 82, 76, 95, 102, 55, 24, 19, 14, 14, 14, 14, 32.6748 + 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 15, 18, 16, 14, 14, 14, 32.6749 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 15, 32.6750 + 18, 14, 14, 18, 14, 14, 14, 14, 14, 14, 15, 19, 14, 15, 14, 18, 32.6751 + 14, 14, 14, 18, 14, 18, 14, 14, 14, 14, 14, 15, 18, 15, 14, 14, 32.6752 + 14, 16, 24, 14, 14, 18, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6753 + 14, 14, 14, 14, 14, 20, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6754 + 14, 16, 19, 16, 14, 14, 14, 22, 14, 14, 14, 14, 14, 14, 14, 14, 32.6755 + 14, 14, 16, 23, 15, 14, 14, 18, 16, 14, 14, 17, 15, 14, 14, 14, 32.6756 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 16, 16, 14, 14, 32.6757 + 14, 14, 15, 16, 16, 14, 14, 15, 14, 14, 14, 14, 19, 14, 14, 14, 32.6758 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 15, 14, 14, 14, 18, 32.6759 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6760 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 68, 194, 195, 202, 159, 134, 97, 32.6761 + 85, 33, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6762 + 15, 14, 14, 18, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.6763 + 16, 14, 14, 14, 14, 20, 16, 14, 18, 14, 14, 14, 14, 14, 14, 14, 32.6764 + 14, 14, 18, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6765 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 15, 18, 14, 14, 14, 14, 14, 32.6766 + 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6767 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6768 + 14, 14, 14, 14, 14, 14, 14, 19, 15, 14, 14, 14, 14, 14, 14, 14, 32.6769 + 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 24, 32.6770 + 15, 14, 14, 14, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6771 + 14, 14, 16, 19, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 16, 32.6772 + 14, 15, 15, 17, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6773 + 14, 14, 14, 14, 17, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 32.6774 + 14, 15, 18, 14, 18, 14, 14, 14, 14, 14, 17, 14, 14, 15, 162, 206, 32.6775 + 197, 193, 178, 150, 124, 92, 42, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.6776 + 14, 16, 16, 14, 14, 14, 14, 21, 14, 14, 15, 15, 14, 14, 14, 14, 32.6777 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 14, 14, 32.6778 + 14, 21, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 32.6779 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 32.6780 + 14, 14, 14, 14, 19, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6781 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6782 + 14, 14, 14, 14, 14, 17, 14, 14, 16, 14, 14, 14, 14, 14, 15, 14, 32.6783 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 22, 14, 19, 14, 32.6784 + 16, 14, 14, 14, 14, 19, 14, 14, 14, 16, 14, 14, 22, 14, 14, 19, 32.6785 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 20, 19, 32.6786 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.6787 + 14, 19, 16, 14, 14, 14, 14, 14, 14, 14, 15, 20, 14, 14, 14, 14, 32.6788 + 14, 15, 15, 14, 14, 21, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 32.6789 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 32.6790 + 14, 14, 14, 14, 14, 18, 14, 14, 14, 19, 14, 15, 14, 14, 14, 14, 32.6791 + 14, 14, 14, 14, 18, 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 32.6792 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6793 + 14, 14, 14, 14, 35, 188, 183, 197, 179, 134, 87, 95, 56, 16, 14, 19, 32.6794 + 16, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.6795 + 14, 15, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 18, 32.6796 + 14, 14, 14, 15, 15, 14, 16, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.6797 + 14, 14, 15, 14, 14, 17, 14, 14, 16, 14, 14, 17, 14, 14, 14, 14, 32.6798 + 14, 14, 14, 15, 14, 14, 14, 16, 14, 14, 14, 15, 14, 14, 14, 19, 32.6799 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6800 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 32.6801 + 14, 21, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 17, 32.6802 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 32.6803 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 32.6804 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6805 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 15, 16, 14, 14, 21, 14, 14, 32.6806 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.6807 + 15, 14, 18, 14, 15, 14, 17, 16, 14, 20, 176, 190, 188, 188, 169, 141, 32.6808 + 116, 82, 39, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6809 + 15, 19, 15, 14, 15, 15, 16, 14, 14, 18, 14, 14, 14, 14, 14, 14, 32.6810 + 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 14, 14, 14, 32.6811 + 14, 14, 14, 15, 14, 14, 21, 14, 14, 16, 14, 14, 21, 14, 16, 14, 32.6812 + 15, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 15, 14, 14, 32.6813 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6814 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6815 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6816 + 14, 14, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6817 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6818 + 15, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6819 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6820 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.6821 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6822 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6823 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6824 + 14, 14, 14, 14, 14, 15, 16, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.6825 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.6826 + 120, 183, 190, 161, 137, 97, 69, 75, 24, 16, 14, 14, 14, 14, 14, 14, 32.6827 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6828 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6829 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6830 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 14, 32.6831 + 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 32.6832 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6833 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6834 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 32.6835 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6836 + 14, 14, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6837 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6838 + 14, 14, 14, 14, 14, 15, 17, 17, 14, 14, 14, 14, 14, 14, 14, 16, 32.6839 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 14, 14, 32.6840 + 14, 15, 14, 14, 14, 54, 194, 192, 199, 179, 169, 116, 111, 89, 26, 14, 32.6841 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6842 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6843 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6844 + 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.6845 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6846 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6847 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6848 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 16, 14, 14, 14, 32.6849 + 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6850 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6851 + 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6852 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6853 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6854 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6855 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.6856 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6857 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6858 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 41, 147, 183, 170, 124, 32.6859 + 107, 107, 78, 53, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6860 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6861 + 14, 14, 14, 14, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6862 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6863 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 18, 14, 14, 15, 32.6864 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.6865 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6866 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6867 + 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.6868 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.6869 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6870 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 32.6871 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6872 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.6873 + 14, 79, 186, 173, 185, 172, 157, 111, 97, 69, 18, 14, 14, 14, 14, 14, 32.6874 + 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6875 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6876 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6877 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6878 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6879 + 14, 14, 14, 14, 14, 14, 14, 14, 17, 16, 14, 14, 14, 14, 14, 14, 32.6880 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 18, 15, 14, 32.6881 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 15, 14, 14, 14, 16, 15, 15, 32.6882 + 14, 14, 16, 16, 14, 14, 14, 14, 14, 15, 16, 15, 14, 14, 14, 14, 32.6883 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 14, 14, 14, 14, 14, 32.6884 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6885 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 32.6886 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6887 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6888 + 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.6889 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 14, 14, 32.6890 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6891 + 14, 14, 14, 14, 14, 14, 35, 104, 169, 172, 150, 97, 73, 78, 42, 14, 32.6892 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6893 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 15, 14, 14, 14, 14, 14, 32.6894 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6895 + 16, 15, 14, 16, 16, 16, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 32.6896 + 14, 15, 15, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 15, 32.6897 + 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6898 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6899 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 18, 15, 14, 14, 14, 32.6900 + 14, 14, 14, 14, 14, 14, 14, 17, 14, 15, 14, 14, 14, 14, 14, 14, 32.6901 + 14, 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6902 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 14, 14, 14, 32.6903 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6904 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6905 + 14, 18, 18, 16, 15, 15, 15, 14, 14, 14, 14, 16, 17, 126, 173, 162, 32.6906 + 155, 137, 124, 90, 72, 44, 14, 14, 18, 15, 14, 15, 18, 18, 16, 14, 32.6907 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6908 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 15, 15, 16, 15, 15, 14, 32.6909 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.6910 + 16, 14, 14, 15, 14, 14, 14, 15, 14, 14, 15, 14, 14, 14, 14, 14, 32.6911 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6912 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6913 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6914 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.6915 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6916 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6917 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6918 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6919 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6920 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6921 + 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6922 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6923 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6924 + 14, 15, 55, 161, 118, 100, 92, 72, 56, 72, 49, 14, 15, 14, 14, 14, 32.6925 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6926 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6927 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6928 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6929 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6930 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 14, 32.6931 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6932 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6933 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 32.6934 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6935 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6936 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.6937 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6938 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 122, 122, 136, 98, 85, 75, 71, 32.6939 + 63, 42, 18, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6940 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6941 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6942 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6943 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6944 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6945 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 15, 15, 15, 15, 15, 15, 32.6946 + 14, 14, 15, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 16, 18, 32.6947 + 14, 14, 16, 14, 14, 14, 14, 14, 17, 14, 14, 14, 15, 14, 14, 14, 32.6948 + 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6949 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 15, 14, 14, 14, 14, 32.6950 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.6951 + 16, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6952 + 14, 14, 14, 14, 14, 15, 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 32.6953 + 14, 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6954 + 14, 14, 14, 15, 15, 15, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 32.6955 + 18, 16, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6956 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 50, 134, 32.6957 + 98, 67, 64, 73, 64, 79, 79, 56, 39, 28, 16, 14, 14, 14, 14, 14, 32.6958 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6959 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 32.6960 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 19, 32.6961 + 16, 15, 15, 15, 15, 15, 15, 16, 14, 14, 14, 14, 14, 16, 14, 14, 32.6962 + 14, 15, 15, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 18, 16, 14, 32.6963 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6964 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6965 + 16, 16, 14, 14, 14, 18, 18, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.6966 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6967 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6968 + 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.6969 + 16, 16, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6970 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.6971 + 14, 14, 14, 14, 14, 87, 79, 109, 71, 65, 53, 59, 76, 63, 49, 42, 32.6972 + 16, 14, 14, 14, 14, 14, 14, 14, 18, 16, 14, 14, 14, 14, 14, 14, 32.6973 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6974 + 16, 15, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.6975 + 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.6976 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6977 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.6978 + 19, 19, 20, 21, 23, 24, 24, 24, 26, 26, 24, 24, 26, 26, 26, 26, 32.6979 + 26, 26, 26, 26, 23, 21, 21, 21, 21, 14, 14, 14, 14, 14, 20, 26, 32.6980 + 21, 23, 29, 29, 29, 26, 26, 24, 20, 18, 19, 14, 14, 14, 14, 14, 32.6981 + 14, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6982 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.6983 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6984 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6985 + 14, 14, 14, 14, 14, 15, 15, 15, 15, 14, 15, 14, 14, 14, 14, 14, 32.6986 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6987 + 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 15, 14, 15, 14, 15, 14, 32.6988 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6989 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6990 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 32.6991 + 14, 14, 14, 14, 14, 16, 16, 16, 16, 15, 16, 15, 16, 15, 16, 16, 32.6992 + 16, 16, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.6993 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6994 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6995 + 14, 14, 14, 14, 15, 18, 18, 18, 18, 18, 16, 16, 16, 16, 16, 15, 32.6996 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.6997 + 14, 14, 14, 14, 22, 18, 14, 14, 14, 16, 18, 20, 21, 26, 27, 26, 32.6998 + 23, 21, 21, 15, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 16, 19, 32.6999 + 21, 24, 24, 26, 24, 21, 23, 21, 19, 18, 14, 14, 16, 14, 14, 14, 32.7000 + 14, 14, 14, 27, 21, 24, 24, 23, 21, 21, 21, 19, 16, 14, 15, 14, 32.7001 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7002 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7003 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.7004 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7005 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.7006 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7007 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7008 + 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 15, 14, 15, 14, 15, 14, 32.7009 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7010 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 19, 21, 21, 27, 32.7011 + 32, 42, 57, 97, 128, 136, 128, 120, 130, 130, 128, 128, 126, 126, 120, 120, 32.7012 + 120, 105, 104, 78, 44, 19, 14, 15, 14, 15, 42, 114, 118, 128, 111, 120, 32.7013 + 136, 92, 104, 73, 21, 18, 19, 14, 14, 14, 14, 14, 14, 15, 16, 16, 32.7014 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7015 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 15, 32.7016 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7017 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7018 + 15, 15, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7019 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7020 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7021 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7022 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7023 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7024 + 15, 18, 18, 16, 16, 15, 15, 15, 15, 15, 15, 16, 16, 18, 18, 16, 32.7025 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 14, 32.7026 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7027 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7028 + 15, 18, 18, 18, 19, 18, 18, 18, 18, 16, 16, 15, 15, 14, 14, 14, 32.7029 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7030 + 18, 14, 14, 14, 23, 42, 75, 111, 105, 111, 141, 141, 113, 92, 60, 20, 32.7031 + 18, 15, 14, 14, 14, 14, 14, 14, 15, 14, 20, 63, 105, 120, 111, 120, 32.7032 + 120, 113, 120, 100, 60, 21, 16, 14, 16, 14, 14, 14, 14, 14, 23, 53, 32.7033 + 111, 113, 118, 120, 120, 113, 97, 84, 23, 16, 14, 14, 14, 14, 14, 14, 32.7034 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7035 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7036 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 14, 32.7037 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7038 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 15, 32.7039 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7040 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7041 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7042 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7043 + 14, 14, 14, 14, 14, 14, 16, 18, 21, 29, 71, 137, 210, 224, 225, 229, 32.7044 + 228, 224, 219, 216, 222, 221, 222, 221, 221, 222, 221, 221, 217, 206, 185, 143, 32.7045 + 65, 21, 14, 14, 14, 15, 50, 188, 215, 228, 225, 230, 227, 203, 188, 136, 32.7046 + 27, 16, 18, 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 14, 14, 14, 32.7047 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7048 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7049 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7050 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.7051 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7052 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7053 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7054 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7055 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.7056 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 15, 32.7057 + 15, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 15, 14, 14, 14, 14, 32.7058 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7059 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7060 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 16, 32.7061 + 18, 18, 18, 18, 16, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7062 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7063 + 19, 57, 145, 210, 218, 222, 229, 225, 205, 178, 118, 40, 19, 16, 15, 14, 32.7064 + 14, 14, 14, 14, 14, 14, 34, 137, 205, 215, 218, 227, 225, 208, 202, 183, 32.7065 + 114, 27, 18, 19, 14, 14, 14, 14, 14, 14, 24, 63, 215, 231, 228, 220, 32.7066 + 213, 194, 179, 159, 64, 26, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7067 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7068 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7069 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7070 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7071 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7072 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7073 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7074 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7075 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7076 + 14, 14, 16, 19, 24, 68, 169, 227, 236, 236, 232, 232, 233, 235, 236, 238, 32.7077 + 232, 232, 233, 232, 233, 234, 233, 232, 214, 206, 189, 145, 63, 15, 14, 14, 32.7078 + 16, 16, 31, 195, 226, 241, 236, 242, 226, 197, 185, 124, 21, 15, 15, 14, 32.7079 + 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 32.7080 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7081 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7082 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7083 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7084 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7085 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7086 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7087 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7088 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 32.7089 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 32.7090 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7091 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7092 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7093 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 16, 16, 32.7094 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7095 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 15, 14, 15, 27, 141, 221, 32.7096 + 231, 233, 234, 231, 217, 203, 154, 67, 20, 18, 15, 14, 14, 14, 14, 14, 32.7097 + 17, 15, 57, 190, 237, 232, 229, 236, 232, 214, 208, 200, 122, 24, 18, 21, 32.7098 + 14, 14, 14, 15, 14, 14, 16, 40, 228, 239, 238, 232, 224, 203, 179, 157, 32.7099 + 102, 36, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7100 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7101 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7102 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7103 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7104 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7105 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7106 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7107 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7108 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 21, 23, 32.7109 + 23, 200, 224, 225, 240, 239, 238, 240, 238, 235, 234, 234, 233, 233, 234, 234, 32.7110 + 234, 234, 236, 236, 225, 200, 173, 139, 21, 16, 16, 14, 14, 16, 32, 225, 32.7111 + 232, 245, 242, 239, 211, 200, 150, 104, 21, 15, 14, 14, 14, 14, 14, 14, 32.7112 + 14, 14, 14, 14, 14, 14, 14, 18, 16, 14, 14, 14, 14, 14, 14, 14, 32.7113 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7114 + 14, 14, 14, 14, 16, 14, 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 32.7115 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 32.7116 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7117 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 32.7118 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7119 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.7120 + 14, 14, 14, 14, 14, 24, 19, 14, 15, 16, 14, 14, 14, 14, 14, 14, 32.7121 + 14, 14, 14, 19, 15, 16, 15, 15, 14, 14, 14, 14, 16, 15, 14, 14, 32.7122 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7123 + 14, 14, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7124 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 14, 14, 14, 32.7125 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 19, 15, 14, 14, 14, 32.7126 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 15, 14, 14, 32.7127 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 32.7128 + 17, 18, 14, 14, 14, 15, 14, 14, 19, 20, 178, 225, 238, 240, 241, 237, 32.7129 + 214, 193, 157, 89, 21, 29, 14, 14, 16, 14, 14, 14, 14, 16, 137, 219, 32.7130 + 234, 239, 232, 243, 234, 229, 197, 178, 148, 23, 21, 14, 14, 14, 19, 14, 32.7131 + 14, 29, 18, 169, 239, 245, 241, 234, 218, 193, 165, 143, 72, 20, 15, 19, 32.7132 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7133 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.7134 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7135 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7136 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.7137 + 14, 14, 14, 14, 19, 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 14, 32.7138 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7139 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7140 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 18, 32.7141 + 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 23, 128, 215, 229, 234, 32.7142 + 239, 236, 230, 228, 225, 216, 217, 219, 211, 211, 213, 210, 214, 211, 214, 208, 32.7143 + 162, 143, 147, 124, 20, 15, 14, 14, 15, 16, 85, 236, 234, 245, 243, 241, 32.7144 + 195, 189, 150, 55, 18, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7145 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 17, 14, 14, 14, 14, 32.7146 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 32.7147 + 16, 14, 14, 14, 14, 14, 15, 20, 14, 14, 14, 14, 14, 15, 14, 14, 32.7148 + 14, 17, 19, 16, 14, 14, 14, 14, 14, 18, 19, 18, 17, 15, 15, 14, 32.7149 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7150 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 32.7151 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7152 + 14, 14, 14, 17, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7153 + 14, 18, 14, 14, 15, 14, 14, 19, 18, 14, 14, 14, 16, 15, 14, 14, 32.7154 + 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 19, 19, 14, 14, 14, 32.7155 + 19, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.7156 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7157 + 14, 14, 14, 14, 14, 14, 16, 16, 16, 15, 18, 18, 16, 14, 14, 14, 32.7158 + 14, 14, 14, 14, 14, 14, 14, 16, 15, 15, 14, 16, 16, 14, 14, 14, 32.7159 + 14, 14, 14, 14, 14, 14, 18, 18, 19, 14, 14, 17, 14, 14, 14, 14, 32.7160 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 32.7161 + 14, 14, 14, 14, 19, 20, 183, 228, 238, 240, 241, 236, 216, 195, 152, 84, 32.7162 + 21, 22, 14, 16, 15, 14, 14, 14, 16, 71, 204, 242, 236, 239, 236, 237, 32.7163 + 237, 232, 199, 181, 148, 21, 21, 14, 15, 14, 14, 14, 18, 19, 67, 208, 32.7164 + 241, 247, 243, 232, 211, 185, 150, 120, 34, 18, 15, 18, 14, 14, 19, 14, 32.7165 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7166 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 15, 14, 32.7167 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7168 + 14, 14, 14, 14, 15, 15, 14, 16, 23, 21, 16, 14, 14, 14, 15, 15, 32.7169 + 14, 14, 16, 15, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.7170 + 14, 15, 15, 17, 16, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.7171 + 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 32.7172 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7173 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 15, 15, 15, 14, 32.7174 + 14, 14, 14, 14, 14, 18, 20, 36, 220, 229, 233, 237, 236, 232, 226, 217, 32.7175 + 206, 193, 186, 193, 182, 182, 183, 181, 185, 182, 183, 183, 176, 161, 147, 107, 32.7176 + 20, 14, 14, 14, 16, 18, 152, 241, 234, 243, 243, 238, 197, 161, 147, 34, 32.7177 + 18, 21, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 16, 16, 14, 14, 32.7178 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 19, 23, 24, 14, 14, 14, 14, 32.7179 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 15, 32.7180 + 14, 14, 14, 14, 16, 15, 15, 14, 14, 14, 14, 15, 15, 16, 21, 16, 32.7181 + 15, 15, 16, 15, 14, 14, 15, 16, 16, 15, 15, 14, 14, 14, 14, 14, 32.7182 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 32.7183 + 14, 14, 15, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7184 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7185 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 18, 32.7186 + 16, 15, 18, 15, 15, 14, 15, 15, 20, 21, 18, 15, 15, 14, 14, 14, 32.7187 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 21, 16, 14, 14, 14, 32.7188 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 20, 23, 14, 14, 14, 14, 32.7189 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7190 + 15, 15, 16, 20, 18, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7191 + 14, 14, 15, 16, 19, 18, 18, 18, 16, 14, 14, 14, 14, 14, 14, 14, 32.7192 + 14, 14, 14, 15, 20, 14, 14, 18, 15, 14, 14, 14, 14, 14, 14, 14, 32.7193 + 14, 15, 14, 15, 14, 14, 16, 16, 14, 14, 14, 15, 14, 14, 14, 14, 32.7194 + 18, 20, 183, 231, 239, 240, 240, 236, 217, 194, 152, 78, 24, 14, 14, 19, 32.7195 + 14, 14, 15, 15, 18, 145, 235, 243, 234, 236, 242, 237, 236, 230, 200, 181, 32.7196 + 141, 20, 18, 14, 14, 14, 14, 16, 20, 21, 172, 226, 243, 248, 242, 221, 32.7197 + 200, 172, 128, 78, 20, 19, 30, 21, 14, 14, 14, 14, 14, 14, 14, 14, 32.7198 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7199 + 14, 14, 14, 14, 16, 14, 14, 16, 18, 15, 14, 14, 14, 14, 14, 14, 32.7200 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7201 + 16, 14, 15, 20, 18, 18, 18, 15, 15, 14, 14, 14, 14, 14, 14, 14, 32.7202 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 32.7203 + 15, 14, 14, 14, 23, 19, 15, 15, 16, 16, 16, 15, 15, 14, 15, 18, 32.7204 + 16, 16, 18, 19, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.7205 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 18, 16, 16, 15, 32.7206 + 15, 15, 16, 18, 18, 16, 14, 15, 15, 16, 16, 14, 14, 14, 14, 14, 32.7207 + 15, 19, 20, 124, 248, 236, 237, 232, 230, 225, 216, 202, 178, 150, 137, 134, 32.7208 + 137, 128, 139, 143, 141, 145, 148, 143, 159, 132, 105, 65, 16, 14, 15, 16, 32.7209 + 15, 18, 194, 238, 233, 240, 240, 230, 203, 126, 122, 24, 19, 16, 14, 14, 32.7210 + 14, 14, 14, 14, 14, 16, 18, 16, 15, 18, 19, 14, 14, 14, 14, 14, 32.7211 + 14, 14, 14, 19, 21, 21, 21, 21, 20, 16, 15, 15, 15, 16, 15, 15, 32.7212 + 14, 14, 15, 14, 14, 14, 14, 15, 14, 14, 18, 14, 14, 16, 15, 14, 32.7213 + 16, 15, 16, 16, 18, 18, 20, 21, 23, 24, 21, 19, 19, 18, 16, 16, 32.7214 + 16, 15, 14, 15, 15, 15, 15, 18, 15, 14, 14, 14, 14, 16, 14, 14, 32.7215 + 14, 14, 14, 14, 15, 15, 15, 16, 20, 18, 18, 19, 16, 16, 16, 16, 32.7216 + 14, 15, 14, 14, 14, 14, 14, 14, 18, 16, 15, 14, 14, 14, 14, 14, 32.7217 + 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 14, 14, 14, 14, 16, 18, 32.7218 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 21, 14, 14, 15, 15, 32.7219 + 16, 16, 18, 19, 19, 20, 21, 21, 15, 14, 14, 14, 14, 14, 14, 14, 32.7220 + 19, 18, 15, 18, 18, 19, 20, 21, 21, 16, 14, 19, 14, 14, 14, 14, 32.7221 + 14, 14, 14, 15, 18, 15, 16, 16, 18, 16, 16, 16, 15, 15, 15, 15, 32.7222 + 16, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 14, 20, 18, 19, 20, 32.7223 + 20, 20, 20, 15, 14, 14, 16, 14, 14, 14, 14, 16, 18, 16, 21, 19, 32.7224 + 21, 20, 20, 18, 16, 16, 18, 17, 14, 14, 14, 14, 14, 23, 15, 16, 32.7225 + 18, 20, 21, 15, 14, 21, 15, 15, 18, 19, 18, 18, 16, 16, 15, 15, 32.7226 + 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 16, 20, 182, 232, 32.7227 + 243, 241, 242, 237, 220, 195, 148, 72, 20, 14, 14, 19, 14, 14, 21, 18, 32.7228 + 24, 193, 240, 234, 231, 229, 242, 236, 232, 229, 202, 173, 130, 19, 15, 14, 32.7229 + 14, 14, 14, 23, 21, 29, 214, 227, 242, 243, 232, 213, 190, 161, 100, 38, 32.7230 + 20, 20, 16, 16, 32, 41, 23, 18, 18, 16, 16, 15, 15, 14, 14, 14, 32.7231 + 14, 14, 16, 16, 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.7232 + 23, 20, 16, 16, 18, 18, 19, 19, 16, 15, 15, 15, 14, 14, 14, 14, 32.7233 + 14, 14, 14, 14, 14, 14, 17, 14, 14, 15, 14, 14, 18, 15, 18, 21, 32.7234 + 21, 20, 21, 21, 21, 19, 20, 22, 30, 26, 18, 15, 14, 15, 14, 14, 32.7235 + 14, 14, 17, 14, 14, 14, 14, 14, 14, 16, 15, 15, 15, 15, 16, 15, 32.7236 + 16, 16, 18, 19, 19, 21, 21, 21, 23, 21, 19, 18, 16, 16, 15, 15, 32.7237 + 16, 14, 14, 14, 14, 14, 14, 16, 24, 14, 14, 14, 18, 15, 14, 15, 32.7238 + 14, 14, 14, 22, 14, 14, 14, 14, 19, 20, 20, 19, 20, 20, 19, 20, 32.7239 + 15, 20, 19, 15, 15, 16, 16, 14, 14, 14, 14, 14, 15, 15, 27, 200, 32.7240 + 246, 240, 243, 232, 222, 208, 193, 167, 120, 76, 56, 53, 54, 52, 59, 60, 32.7241 + 63, 67, 68, 71, 53, 32, 26, 16, 14, 14, 14, 14, 14, 21, 214, 229, 32.7242 + 229, 238, 237, 220, 198, 126, 92, 21, 21, 26, 27, 26, 19, 19, 19, 21, 32.7243 + 21, 20, 19, 18, 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 18, 18, 32.7244 + 20, 21, 27, 36, 23, 21, 21, 21, 21, 21, 20, 19, 20, 16, 15, 15, 32.7245 + 14, 14, 14, 16, 15, 14, 14, 14, 14, 18, 21, 21, 16, 18, 21, 24, 32.7246 + 23, 21, 21, 21, 21, 21, 21, 21, 23, 27, 23, 19, 23, 16, 15, 18, 32.7247 + 16, 15, 14, 15, 14, 14, 16, 18, 15, 15, 16, 18, 20, 21, 21, 21, 32.7248 + 21, 21, 21, 21, 24, 21, 21, 21, 20, 19, 19, 16, 15, 14, 14, 14, 32.7249 + 14, 16, 15, 14, 16, 18, 19, 18, 20, 19, 19, 18, 23, 20, 19, 19, 32.7250 + 21, 20, 19, 16, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 32.7251 + 14, 14, 14, 14, 17, 14, 19, 14, 14, 20, 38, 26, 20, 21, 21, 21, 32.7252 + 23, 24, 21, 21, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.7253 + 21, 24, 23, 21, 23, 21, 21, 21, 14, 14, 14, 14, 14, 14, 18, 15, 32.7254 + 16, 19, 24, 32, 21, 21, 21, 21, 21, 21, 20, 19, 21, 16, 15, 14, 32.7255 + 19, 16, 14, 14, 14, 14, 14, 15, 23, 26, 21, 24, 21, 21, 21, 21, 32.7256 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 16, 34, 21, 21, 21, 21, 20, 32.7257 + 21, 19, 16, 14, 14, 14, 14, 14, 14, 37, 19, 21, 21, 24, 32, 21, 32.7258 + 19, 19, 16, 18, 21, 21, 21, 21, 20, 19, 18, 16, 34, 14, 14, 18, 32.7259 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 19, 182, 238, 246, 241, 240, 235, 32.7260 + 217, 194, 143, 68, 14, 14, 14, 14, 14, 21, 19, 21, 150, 240, 243, 236, 32.7261 + 232, 223, 234, 229, 231, 229, 194, 169, 120, 16, 14, 14, 14, 14, 21, 24, 32.7262 + 23, 147, 241, 234, 238, 232, 217, 199, 181, 145, 69, 19, 21, 27, 16, 18, 32.7263 + 19, 20, 21, 26, 23, 23, 23, 21, 21, 21, 21, 20, 18, 16, 15, 14, 32.7264 + 14, 14, 18, 18, 14, 14, 14, 14, 14, 14, 15, 16, 16, 19, 21, 20, 32.7265 + 23, 21, 21, 27, 23, 23, 24, 23, 23, 23, 21, 21, 18, 19, 20, 19, 32.7266 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 23, 21, 23, 23, 21, 21, 20, 32.7267 + 19, 18, 16, 18, 21, 21, 24, 24, 23, 24, 21, 19, 24, 20, 15, 14, 32.7268 + 14, 16, 14, 14, 14, 14, 15, 14, 15, 21, 20, 18, 19, 19, 24, 26, 32.7269 + 23, 21, 21, 21, 21, 21, 21, 21, 21, 21, 18, 16, 18, 16, 18, 18, 32.7270 + 14, 14, 14, 16, 16, 18, 31, 18, 19, 23, 19, 18, 23, 21, 19, 21, 32.7271 + 19, 34, 21, 24, 21, 21, 21, 23, 23, 21, 19, 19, 18, 16, 19, 15, 32.7272 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 79, 243, 232, 243, 250, 235, 32.7273 + 219, 199, 176, 130, 75, 34, 18, 18, 14, 14, 14, 18, 19, 21, 21, 20, 32.7274 + 16, 15, 14, 14, 15, 14, 14, 14, 14, 57, 221, 226, 232, 233, 233, 214, 32.7275 + 188, 145, 79, 29, 76, 150, 189, 164, 192, 195, 190, 192, 183, 165, 143, 116, 32.7276 + 21, 14, 14, 14, 14, 14, 14, 14, 22, 14, 15, 19, 44, 124, 185, 206, 32.7277 + 231, 228, 227, 225, 221, 213, 202, 189, 167, 93, 34, 19, 18, 18, 16, 14, 32.7278 + 14, 14, 14, 16, 14, 14, 15, 16, 20, 50, 109, 172, 204, 220, 231, 232, 32.7279 + 231, 224, 208, 190, 176, 139, 82, 44, 21, 18, 16, 14, 21, 15, 14, 14, 32.7280 + 15, 18, 18, 16, 18, 34, 85, 139, 188, 190, 193, 195, 195, 195, 198, 193, 32.7281 + 189, 173, 182, 176, 161, 165, 145, 72, 16, 15, 15, 16, 14, 14, 14, 14, 32.7282 + 23, 36, 73, 104, 126, 132, 130, 126, 120, 114, 114, 124, 128, 113, 84, 48, 32.7283 + 30, 21, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7284 + 14, 14, 18, 14, 15, 46, 109, 154, 173, 175, 170, 175, 193, 186, 139, 65, 32.7285 + 15, 14, 14, 14, 14, 14, 14, 14, 19, 25, 21, 23, 69, 148, 186, 185, 32.7286 + 181, 164, 159, 134, 67, 29, 20, 18, 23, 14, 16, 20, 71, 137, 179, 195, 32.7287 + 222, 225, 226, 223, 217, 208, 197, 186, 130, 79, 38, 19, 16, 16, 16, 21, 32.7288 + 19, 26, 21, 37, 111, 170, 176, 188, 173, 164, 164, 152, 98, 38, 15, 14, 32.7289 + 14, 17, 15, 24, 23, 57, 178, 179, 182, 185, 179, 175, 152, 107, 55, 15, 32.7290 + 16, 14, 16, 24, 35, 165, 169, 200, 202, 182, 193, 183, 164, 85, 23, 95, 32.7291 + 173, 182, 178, 175, 175, 165, 157, 147, 81, 21, 14, 16, 14, 14, 16, 14, 32.7292 + 14, 14, 14, 14, 14, 19, 179, 240, 246, 240, 238, 233, 214, 188, 134, 60, 32.7293 + 14, 14, 14, 14, 14, 19, 20, 34, 234, 246, 240, 233, 230, 221, 225, 226, 32.7294 + 229, 229, 194, 164, 113, 14, 14, 14, 14, 14, 15, 20, 31, 218, 247, 249, 32.7295 + 233, 219, 200, 183, 159, 102, 44, 16, 15, 15, 21, 21, 21, 31, 81, 130, 32.7296 + 132, 134, 134, 126, 130, 122, 124, 118, 134, 114, 68, 24, 19, 19, 19, 16, 32.7297 + 14, 14, 14, 14, 14, 15, 16, 18, 24, 114, 169, 173, 188, 185, 176, 192, 32.7298 + 197, 197, 197, 194, 193, 189, 186, 179, 175, 161, 154, 132, 76, 31, 16, 16, 32.7299 + 18, 14, 14, 25, 68, 143, 179, 175, 176, 178, 173, 164, 128, 79, 34, 21, 32.7300 + 34, 116, 178, 192, 185, 185, 190, 189, 159, 120, 75, 43, 19, 16, 16, 16, 32.7301 + 14, 14, 14, 15, 15, 16, 18, 19, 38, 79, 148, 190, 210, 218, 228, 234, 32.7302 + 228, 213, 197, 181, 164, 114, 61, 23, 16, 15, 14, 16, 16, 14, 14, 14, 32.7303 + 26, 78, 186, 186, 159, 182, 172, 179, 162, 137, 29, 21, 24, 109, 134, 170, 32.7304 + 185, 186, 181, 181, 179, 164, 137, 116, 26, 19, 16, 14, 14, 14, 14, 15, 32.7305 + 14, 14, 14, 14, 14, 16, 154, 246, 242, 243, 248, 237, 215, 189, 154, 97, 32.7306 + 46, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7307 + 17, 14, 14, 14, 14, 113, 232, 230, 232, 228, 227, 211, 183, 139, 50, 141, 32.7308 + 203, 234, 251, 249, 248, 248, 246, 244, 241, 231, 209, 183, 97, 37, 14, 14, 32.7309 + 14, 14, 14, 14, 14, 14, 45, 120, 209, 245, 248, 244, 246, 246, 246, 245, 32.7310 + 243, 238, 230, 220, 236, 214, 181, 114, 46, 20, 20, 37, 14, 14, 15, 22, 32.7311 + 18, 14, 16, 34, 157, 185, 219, 237, 241, 234, 228, 222, 220, 222, 225, 226, 32.7312 + 232, 224, 202, 175, 85, 45, 16, 14, 15, 14, 14, 16, 21, 20, 20, 27, 32.7313 + 81, 162, 219, 244, 243, 245, 246, 247, 248, 246, 246, 242, 231, 220, 232, 221, 32.7314 + 202, 210, 175, 65, 19, 16, 16, 18, 14, 14, 21, 67, 193, 215, 226, 238, 32.7315 + 240, 238, 232, 225, 240, 238, 240, 243, 243, 238, 217, 193, 118, 78, 40, 14, 32.7316 + 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7317 + 20, 39, 113, 219, 224, 231, 231, 229, 236, 226, 194, 126, 15, 14, 14, 14, 32.7318 + 14, 14, 14, 14, 14, 14, 16, 20, 50, 189, 242, 242, 236, 218, 215, 183, 32.7319 + 85, 21, 18, 16, 16, 21, 69, 159, 227, 247, 246, 243, 244, 245, 246, 243, 32.7320 + 240, 233, 227, 220, 236, 200, 148, 87, 38, 20, 20, 29, 14, 15, 15, 18, 32.7321 + 124, 218, 231, 236, 241, 228, 219, 210, 143, 44, 14, 14, 14, 14, 14, 14, 32.7322 + 16, 57, 220, 232, 242, 239, 232, 215, 194, 143, 59, 15, 14, 14, 14, 15, 32.7323 + 23, 214, 225, 248, 249, 232, 246, 240, 220, 148, 44, 185, 229, 232, 230, 228, 32.7324 + 225, 209, 193, 188, 100, 21, 14, 19, 14, 14, 15, 14, 14, 14, 14, 14, 32.7325 + 14, 19, 181, 241, 247, 243, 239, 234, 215, 186, 130, 55, 14, 14, 14, 14, 32.7326 + 16, 18, 21, 154, 247, 237, 242, 232, 224, 227, 225, 225, 225, 225, 192, 157, 32.7327 + 107, 14, 14, 14, 14, 14, 14, 21, 128, 245, 251, 250, 230, 208, 186, 164, 32.7328 + 122, 60, 24, 15, 21, 15, 29, 116, 193, 232, 240, 234, 240, 242, 243, 243, 32.7329 + 242, 241, 241, 239, 225, 229, 224, 202, 178, 126, 53, 20, 14, 14, 14, 14, 32.7330 + 14, 15, 18, 19, 20, 164, 231, 228, 238, 236, 226, 238, 240, 243, 244, 244, 32.7331 + 243, 241, 239, 235, 243, 236, 225, 205, 169, 97, 32, 16, 14, 14, 14, 14, 32.7332 + 29, 120, 222, 234, 239, 239, 239, 233, 204, 141, 55, 21, 192, 232, 251, 250, 32.7333 + 244, 241, 241, 235, 239, 219, 200, 161, 81, 21, 20, 26, 15, 14, 14, 15, 32.7334 + 15, 16, 36, 90, 195, 219, 238, 244, 245, 238, 229, 225, 218, 217, 216, 219, 32.7335 + 225, 208, 181, 155, 55, 21, 14, 14, 14, 14, 14, 15, 23, 36, 215, 243, 32.7336 + 222, 242, 240, 241, 244, 229, 141, 29, 161, 213, 241, 245, 238, 232, 229, 229, 32.7337 + 232, 218, 202, 185, 109, 48, 16, 14, 15, 14, 14, 15, 14, 14, 14, 14, 32.7338 + 14, 29, 205, 246, 250, 242, 237, 229, 197, 164, 122, 75, 26, 14, 14, 14, 32.7339 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.7340 + 18, 169, 238, 239, 234, 225, 224, 213, 193, 122, 31, 223, 251, 229, 243, 249, 32.7341 + 250, 249, 245, 244, 244, 238, 223, 202, 189, 68, 14, 14, 15, 14, 14, 14, 32.7342 + 14, 65, 182, 235, 243, 240, 241, 245, 243, 243, 238, 240, 244, 246, 243, 242, 32.7343 + 228, 227, 227, 213, 159, 69, 21, 18, 19, 14, 14, 15, 15, 19, 75, 173, 32.7344 + 229, 237, 243, 244, 239, 231, 225, 225, 228, 234, 232, 228, 228, 233, 229, 215, 32.7345 + 222, 137, 53, 19, 14, 14, 14, 16, 20, 21, 21, 95, 206, 249, 249, 243, 32.7346 + 244, 245, 244, 243, 241, 237, 237, 230, 217, 213, 221, 206, 179, 192, 141, 21, 32.7347 + 18, 16, 15, 18, 14, 21, 93, 221, 238, 245, 243, 244, 243, 243, 243, 244, 32.7348 + 242, 242, 243, 243, 245, 246, 245, 235, 208, 175, 116, 45, 16, 14, 14, 14, 32.7349 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 15, 14, 15, 32, 173, 32.7350 + 215, 235, 243, 238, 221, 217, 214, 192, 16, 14, 14, 14, 14, 14, 14, 14, 32.7351 + 14, 22, 19, 21, 92, 219, 247, 231, 210, 202, 197, 164, 65, 21, 21, 21, 32.7352 + 21, 107, 219, 244, 242, 225, 232, 248, 239, 240, 240, 242, 243, 244, 245, 244, 32.7353 + 231, 232, 232, 200, 122, 36, 20, 18, 16, 31, 16, 19, 132, 232, 241, 242, 32.7354 + 240, 210, 197, 190, 120, 31, 14, 16, 14, 14, 14, 20, 18, 64, 232, 239, 32.7355 + 243, 239, 222, 207, 198, 159, 79, 20, 14, 17, 18, 16, 27, 234, 236, 250, 32.7356 + 249, 244, 252, 243, 239, 208, 172, 250, 236, 238, 238, 231, 217, 198, 182, 164, 32.7357 + 79, 16, 14, 23, 14, 14, 14, 14, 14, 14, 14, 14, 14, 20, 182, 239, 32.7358 + 246, 243, 242, 232, 213, 186, 132, 59, 14, 14, 14, 14, 21, 19, 29, 236, 32.7359 + 250, 234, 248, 239, 216, 232, 218, 221, 224, 224, 192, 155, 102, 14, 14, 14, 32.7360 + 14, 17, 16, 26, 213, 250, 252, 246, 224, 198, 175, 154, 95, 38, 16, 18, 32.7361 + 15, 31, 152, 239, 235, 223, 239, 242, 239, 242, 244, 243, 243, 245, 245, 244, 32.7362 + 242, 243, 238, 234, 232, 204, 136, 40, 16, 14, 14, 14, 15, 16, 19, 19, 32.7363 + 20, 185, 243, 235, 236, 238, 228, 242, 240, 245, 245, 246, 247, 246, 245, 245, 32.7364 + 239, 238, 232, 225, 220, 188, 97, 19, 16, 14, 19, 14, 18, 57, 211, 244, 32.7365 + 243, 238, 227, 215, 199, 162, 98, 60, 245, 252, 251, 246, 249, 251, 249, 238, 32.7366 + 242, 224, 225, 226, 183, 84, 24, 18, 15, 14, 14, 15, 16, 24, 124, 232, 32.7367 + 236, 241, 242, 240, 234, 228, 228, 227, 230, 227, 225, 226, 229, 228, 217, 206, 32.7368 + 186, 92, 21, 14, 14, 14, 14, 14, 26, 29, 195, 244, 233, 247, 243, 234, 32.7369 + 228, 232, 208, 71, 249, 247, 248, 222, 236, 232, 227, 231, 236, 233, 222, 205, 32.7370 + 203, 92, 18, 15, 18, 14, 14, 14, 14, 15, 18, 19, 20, 82, 229, 245, 32.7371 + 246, 227, 229, 225, 183, 167, 120, 48, 16, 14, 14, 14, 14, 14, 14, 14, 32.7372 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 15, 15, 20, 21, 219, 240, 247, 32.7373 + 232, 227, 229, 217, 186, 176, 195, 229, 243, 238, 234, 242, 243, 238, 243, 236, 32.7374 + 243, 216, 234, 186, 176, 120, 30, 14, 16, 16, 31, 20, 100, 211, 249, 242, 32.7375 + 232, 244, 238, 195, 192, 176, 176, 192, 189, 189, 225, 240, 242, 219, 227, 207, 32.7376 + 192, 145, 26, 18, 17, 14, 19, 15, 18, 81, 231, 240, 241, 243, 238, 215, 32.7377 + 199, 190, 178, 159, 167, 170, 208, 214, 215, 236, 238, 234, 216, 188, 167, 27, 32.7378 + 14, 14, 14, 14, 23, 26, 32, 232, 246, 244, 252, 243, 225, 219, 210, 192, 32.7379 + 192, 193, 170, 188, 170, 173, 164, 137, 141, 139, 72, 23, 16, 18, 16, 21, 32.7380 + 21, 155, 238, 242, 250, 250, 247, 244, 236, 220, 218, 225, 229, 220, 242, 231, 32.7381 + 243, 253, 252, 235, 213, 207, 176, 137, 18, 14, 19, 14, 14, 14, 14, 14, 32.7382 + 14, 14, 14, 14, 14, 14, 14, 19, 14, 15, 38, 95, 224, 229, 239, 232, 32.7383 + 218, 213, 198, 181, 79, 14, 25, 14, 14, 14, 14, 14, 14, 27, 20, 27, 32.7384 + 207, 241, 247, 245, 165, 147, 139, 73, 24, 24, 23, 21, 170, 225, 245, 241, 32.7385 + 234, 232, 218, 198, 181, 176, 169, 190, 206, 215, 236, 237, 239, 232, 234, 200, 32.7386 + 179, 107, 16, 15, 15, 24, 18, 20, 155, 242, 243, 245, 240, 208, 183, 139, 32.7387 + 128, 14, 18, 14, 14, 15, 14, 15, 21, 139, 244, 242, 245, 244, 210, 186, 32.7388 + 162, 130, 19, 18, 14, 14, 14, 20, 65, 243, 243, 249, 243, 242, 245, 239, 32.7389 + 214, 209, 229, 234, 238, 230, 226, 219, 199, 164, 147, 147, 18, 16, 14, 14, 32.7390 + 14, 14, 14, 14, 14, 14, 14, 18, 16, 21, 190, 242, 244, 234, 237, 232, 32.7391 + 202, 179, 137, 60, 14, 14, 14, 16, 15, 19, 124, 243, 245, 246, 241, 228, 32.7392 + 232, 229, 218, 222, 225, 220, 189, 162, 111, 14, 15, 14, 18, 14, 21, 87, 32.7393 + 247, 242, 252, 238, 229, 150, 176, 145, 53, 34, 18, 18, 18, 178, 242, 234, 32.7394 + 236, 240, 234, 236, 225, 228, 224, 217, 217, 229, 242, 243, 243, 242, 243, 242, 32.7395 + 236, 206, 217, 79, 18, 14, 14, 16, 18, 18, 18, 20, 20, 227, 233, 206, 32.7396 + 204, 178, 194, 198, 195, 182, 199, 192, 225, 222, 234, 252, 238, 249, 241, 234, 32.7397 + 208, 200, 170, 21, 14, 14, 14, 14, 21, 69, 239, 246, 248, 239, 234, 205, 32.7398 + 213, 136, 26, 206, 232, 251, 243, 236, 236, 251, 227, 241, 242, 236, 225, 194, 32.7399 + 198, 145, 21, 16, 24, 14, 15, 19, 19, 198, 245, 234, 245, 246, 238, 209, 32.7400 + 189, 172, 164, 159, 170, 188, 198, 193, 242, 238, 228, 218, 215, 155, 81, 16, 32.7401 + 14, 14, 14, 14, 18, 21, 204, 238, 242, 238, 223, 243, 239, 217, 217, 210, 32.7402 + 245, 243, 245, 228, 227, 218, 232, 210, 240, 225, 213, 206, 188, 164, 38, 15, 32.7403 + 21, 14, 14, 14, 16, 18, 19, 20, 21, 159, 246, 247, 243, 228, 229, 208, 32.7404 + 178, 155, 98, 40, 18, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7405 + 14, 14, 14, 14, 15, 15, 18, 21, 40, 236, 246, 248, 236, 229, 233, 217, 32.7406 + 203, 202, 215, 237, 232, 210, 206, 217, 226, 231, 234, 228, 240, 219, 236, 189, 32.7407 + 164, 100, 85, 15, 23, 32, 21, 42, 221, 244, 251, 248, 230, 198, 181, 173, 32.7408 + 159, 145, 141, 165, 182, 198, 209, 203, 229, 225, 229, 210, 202, 188, 95, 21, 32.7409 + 14, 14, 16, 16, 26, 225, 234, 248, 250, 242, 217, 192, 167, 155, 150, 159, 32.7410 + 159, 155, 199, 206, 213, 239, 240, 246, 234, 206, 193, 72, 14, 14, 14, 14, 32.7411 + 21, 48, 172, 242, 250, 246, 244, 219, 213, 194, 188, 164, 161, 155, 114, 132, 32.7412 + 137, 150, 137, 126, 124, 105, 52, 18, 14, 14, 20, 21, 92, 217, 246, 251, 32.7413 + 253, 248, 231, 221, 205, 190, 181, 182, 173, 176, 206, 213, 219, 227, 228, 242, 32.7414 + 223, 214, 189, 159, 27, 15, 20, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.7415 + 14, 14, 14, 17, 14, 15, 24, 60, 228, 226, 230, 229, 223, 208, 193, 189, 32.7416 + 95, 15, 21, 14, 14, 14, 15, 14, 14, 20, 20, 137, 239, 244, 253, 214, 32.7417 + 167, 102, 100, 34, 20, 36, 21, 130, 236, 241, 246, 243, 225, 188, 169, 167, 32.7418 + 143, 154, 145, 152, 178, 202, 217, 215, 243, 226, 233, 207, 190, 145, 43, 19, 32.7419 + 14, 15, 19, 21, 200, 244, 249, 246, 240, 207, 183, 147, 100, 14, 15, 14, 32.7420 + 14, 14, 15, 16, 21, 176, 247, 247, 245, 242, 210, 182, 157, 114, 16, 15, 32.7421 + 14, 14, 14, 20, 109, 244, 245, 249, 246, 241, 242, 227, 199, 188, 199, 203, 32.7422 + 202, 188, 162, 147, 143, 128, 120, 126, 16, 15, 14, 14, 14, 14, 14, 14, 32.7423 + 14, 14, 14, 19, 18, 21, 194, 242, 243, 231, 235, 232, 200, 181, 145, 64, 32.7424 + 15, 14, 14, 14, 16, 26, 202, 247, 246, 242, 235, 236, 236, 231, 225, 222, 32.7425 + 223, 220, 189, 164, 114, 15, 15, 14, 14, 15, 19, 183, 244, 250, 250, 242, 32.7426 + 204, 181, 145, 126, 55, 20, 21, 19, 143, 225, 242, 238, 240, 235, 206, 195, 32.7427 + 178, 181, 190, 198, 197, 195, 195, 195, 228, 225, 235, 238, 229, 206, 219, 134, 32.7428 + 20, 18, 21, 21, 18, 16, 18, 19, 21, 190, 213, 197, 193, 157, 167, 147, 32.7429 + 162, 164, 189, 179, 217, 215, 221, 221, 244, 247, 242, 235, 203, 197, 170, 21, 32.7430 + 14, 14, 14, 14, 20, 124, 245, 248, 251, 231, 234, 213, 197, 150, 118, 222, 32.7431 + 247, 251, 236, 233, 227, 240, 218, 244, 236, 229, 224, 197, 194, 154, 52, 21, 32.7432 + 14, 15, 18, 31, 179, 225, 248, 249, 242, 220, 197, 183, 175, 161, 147, 148, 32.7433 + 157, 179, 202, 208, 234, 229, 231, 239, 230, 198, 147, 21, 14, 14, 14, 14, 32.7434 + 15, 44, 210, 235, 242, 239, 229, 237, 234, 225, 234, 222, 243, 225, 219, 197, 32.7435 + 210, 207, 221, 210, 241, 232, 222, 199, 188, 172, 57, 15, 20, 14, 14, 14, 32.7436 + 16, 18, 19, 20, 21, 207, 249, 247, 236, 234, 239, 205, 176, 139, 79, 24, 32.7437 + 18, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7438 + 14, 14, 18, 21, 105, 241, 246, 246, 238, 234, 234, 213, 199, 192, 200, 205, 32.7439 + 198, 178, 192, 214, 220, 236, 234, 226, 238, 226, 238, 190, 150, 114, 59, 15, 32.7440 + 18, 42, 21, 197, 251, 248, 245, 242, 213, 169, 137, 145, 118, 100, 87, 82, 32.7441 + 120, 178, 213, 225, 229, 240, 232, 209, 194, 193, 148, 19, 14, 14, 15, 23, 32.7442 + 164, 246, 247, 246, 240, 217, 192, 181, 148, 100, 78, 85, 82, 95, 164, 199, 32.7443 + 227, 241, 235, 239, 236, 207, 197, 126, 16, 14, 14, 14, 20, 120, 245, 242, 32.7444 + 248, 239, 217, 198, 183, 136, 114, 89, 79, 76, 50, 56, 69, 73, 67, 65, 32.7445 + 60, 48, 24, 14, 14, 15, 20, 21, 194, 249, 248, 251, 245, 227, 208, 190, 32.7446 + 169, 148, 136, 132, 148, 150, 178, 204, 227, 232, 220, 247, 225, 208, 183, 172, 32.7447 + 59, 15, 16, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7448 + 14, 15, 18, 23, 222, 228, 228, 234, 233, 210, 197, 197, 114, 16, 15, 14, 32.7449 + 17, 14, 14, 14, 14, 16, 34, 229, 245, 249, 249, 186, 157, 85, 61, 18, 32.7450 + 20, 24, 73, 229, 249, 245, 238, 232, 203, 162, 137, 132, 97, 116, 111, 109, 32.7451 + 150, 199, 231, 242, 242, 218, 229, 208, 186, 172, 78, 15, 14, 15, 26, 26, 32.7452 + 239, 243, 249, 243, 238, 204, 176, 154, 63, 14, 14, 14, 14, 14, 19, 16, 32.7453 + 23, 210, 249, 249, 243, 239, 209, 185, 154, 92, 15, 14, 14, 14, 14, 18, 32.7454 + 172, 244, 247, 248, 243, 235, 229, 216, 189, 173, 179, 173, 178, 173, 159, 148, 32.7455 + 155, 136, 104, 71, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 32.7456 + 18, 21, 197, 243, 244, 235, 238, 234, 203, 185, 150, 64, 18, 14, 14, 15, 32.7457 + 16, 97, 245, 247, 247, 238, 234, 240, 235, 233, 236, 228, 225, 221, 188, 167, 32.7458 + 118, 15, 16, 14, 14, 15, 24, 241, 245, 249, 249, 237, 193, 188, 143, 81, 32.7459 + 42, 20, 19, 45, 232, 235, 236, 237, 234, 218, 198, 179, 164, 147, 145, 154, 32.7460 + 161, 167, 190, 211, 219, 214, 230, 230, 217, 197, 206, 167, 15, 14, 14, 14, 32.7461 + 14, 14, 14, 21, 20, 116, 145, 165, 169, 152, 172, 147, 100, 105, 126, 114, 32.7462 + 172, 205, 243, 244, 244, 237, 238, 230, 186, 179, 152, 19, 14, 14, 14, 14, 32.7463 + 18, 197, 248, 247, 251, 229, 227, 225, 181, 173, 214, 230, 208, 209, 186, 205, 32.7464 + 217, 220, 219, 244, 236, 225, 228, 200, 183, 165, 84, 23, 14, 19, 18, 105, 32.7465 + 247, 238, 243, 246, 226, 200, 167, 148, 124, 93, 78, 84, 89, 126, 181, 221, 32.7466 + 229, 221, 228, 243, 217, 210, 183, 48, 14, 14, 14, 14, 16, 118, 228, 236, 32.7467 + 241, 239, 234, 226, 217, 213, 224, 216, 227, 204, 204, 197, 206, 208, 224, 217, 32.7468 + 234, 235, 231, 186, 175, 172, 68, 19, 16, 14, 14, 14, 15, 16, 19, 19, 32.7469 + 27, 237, 244, 245, 234, 236, 237, 205, 172, 116, 55, 20, 18, 16, 14, 14, 32.7470 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 19, 21, 32.7471 + 169, 245, 248, 246, 242, 233, 227, 198, 165, 130, 109, 105, 97, 98, 124, 167, 32.7472 + 207, 240, 240, 234, 239, 235, 235, 190, 152, 116, 16, 20, 20, 20, 126, 250, 32.7473 + 248, 246, 236, 205, 182, 161, 118, 78, 36, 24, 23, 19, 21, 64, 143, 227, 32.7474 + 234, 243, 234, 224, 193, 188, 167, 21, 20, 14, 16, 114, 247, 232, 253, 238, 32.7475 + 205, 192, 172, 143, 92, 45, 21, 19, 21, 24, 75, 139, 213, 244, 236, 240, 32.7476 + 236, 199, 192, 167, 24, 14, 14, 14, 23, 189, 249, 236, 238, 225, 202, 189, 32.7477 + 155, 72, 40, 21, 18, 23, 14, 19, 21, 19, 16, 16, 16, 14, 14, 14, 32.7478 + 15, 15, 19, 89, 244, 252, 249, 246, 217, 205, 185, 155, 116, 85, 63, 52, 32.7479 + 64, 61, 72, 128, 197, 240, 220, 236, 228, 204, 181, 173, 78, 18, 14, 14, 32.7480 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 15, 16, 18, 32.7481 + 183, 230, 235, 235, 236, 210, 208, 202, 137, 33, 15, 15, 19, 14, 14, 14, 32.7482 + 18, 15, 148, 242, 244, 251, 214, 189, 124, 73, 29, 18, 24, 21, 204, 245, 32.7483 + 242, 240, 226, 192, 172, 150, 118, 73, 16, 15, 18, 20, 31, 82, 154, 235, 32.7484 + 243, 226, 238, 219, 183, 181, 111, 16, 15, 15, 24, 63, 245, 245, 246, 234, 32.7485 + 234, 200, 170, 154, 36, 14, 14, 14, 14, 14, 21, 18, 34, 236, 248, 249, 32.7486 + 243, 238, 207, 185, 145, 68, 16, 14, 14, 14, 14, 19, 217, 242, 247, 246, 32.7487 + 242, 226, 218, 200, 155, 126, 114, 98, 120, 134, 139, 134, 136, 118, 69, 31, 32.7488 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 16, 21, 194, 243, 32.7489 + 246, 237, 239, 236, 202, 185, 147, 65, 14, 14, 14, 19, 24, 203, 243, 244, 32.7490 + 247, 234, 232, 238, 229, 229, 238, 234, 227, 226, 195, 169, 118, 15, 16, 14, 32.7491 + 14, 15, 132, 246, 250, 242, 249, 219, 194, 154, 148, 34, 21, 26, 19, 155, 32.7492 + 238, 233, 234, 234, 215, 197, 186, 164, 104, 68, 52, 56, 60, 72, 111, 164, 32.7493 + 217, 225, 232, 229, 217, 190, 183, 169, 19, 14, 14, 14, 14, 14, 15, 18, 32.7494 + 14, 14, 15, 20, 18, 18, 21, 18, 16, 20, 26, 19, 48, 98, 217, 243, 32.7495 + 243, 229, 234, 223, 169, 165, 126, 18, 14, 14, 14, 15, 21, 239, 248, 247, 32.7496 + 248, 238, 224, 220, 179, 181, 225, 200, 190, 190, 173, 202, 215, 222, 231, 234, 32.7497 + 238, 227, 232, 215, 179, 167, 104, 18, 20, 16, 54, 225, 238, 243, 243, 221, 32.7498 + 192, 183, 159, 104, 53, 21, 19, 23, 21, 43, 97, 194, 227, 236, 234, 242, 32.7499 + 208, 202, 185, 72, 14, 14, 14, 14, 18, 183, 238, 238, 241, 233, 237, 217, 32.7500 + 204, 186, 167, 145, 139, 130, 136, 150, 198, 224, 235, 226, 224, 232, 236, 185, 32.7501 + 164, 152, 57, 15, 14, 14, 14, 14, 15, 16, 19, 19, 120, 249, 244, 246, 32.7502 + 238, 232, 225, 197, 167, 97, 34, 18, 16, 15, 14, 14, 14, 14, 14, 14, 32.7503 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 18, 16, 19, 208, 243, 249, 243, 32.7504 + 242, 228, 213, 173, 104, 55, 21, 20, 21, 23, 29, 38, 165, 236, 239, 238, 32.7505 + 239, 238, 231, 197, 157, 97, 21, 18, 50, 21, 232, 244, 245, 242, 221, 181, 32.7506 + 155, 134, 68, 18, 14, 14, 18, 18, 19, 20, 46, 185, 234, 239, 235, 239, 32.7507 + 207, 194, 190, 69, 18, 16, 20, 232, 244, 236, 243, 217, 195, 182, 136, 65, 32.7508 + 21, 15, 14, 14, 16, 16, 19, 46, 170, 239, 242, 247, 240, 203, 186, 182, 32.7509 + 43, 14, 14, 14, 65, 233, 234, 237, 230, 210, 193, 178, 126, 41, 16, 14, 32.7510 + 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 19, 18, 16, 20, 205, 32.7511 + 250, 247, 251, 234, 206, 186, 152, 92, 48, 25, 15, 14, 14, 14, 14, 33, 32.7512 + 95, 229, 229, 230, 232, 203, 178, 169, 95, 18, 14, 14, 14, 14, 14, 14, 32.7513 + 14, 14, 15, 14, 14, 14, 15, 14, 14, 14, 16, 18, 100, 230, 243, 236, 32.7514 + 236, 219, 215, 195, 159, 52, 15, 14, 18, 14, 14, 14, 14, 54, 229, 243, 32.7515 + 244, 240, 195, 185, 87, 46, 16, 19, 21, 92, 247, 246, 243, 234, 205, 173, 32.7516 + 145, 109, 60, 21, 19, 14, 15, 18, 21, 31, 93, 238, 244, 239, 243, 234, 32.7517 + 185, 186, 143, 18, 15, 19, 16, 128, 242, 247, 243, 238, 230, 195, 167, 132, 32.7518 + 19, 15, 14, 14, 14, 14, 19, 19, 71, 242, 245, 247, 243, 234, 202, 181, 32.7519 + 130, 44, 16, 14, 14, 14, 15, 40, 237, 243, 247, 244, 242, 227, 207, 169, 32.7520 + 92, 49, 33, 19, 16, 19, 19, 15, 16, 19, 14, 14, 14, 14, 14, 14, 32.7521 + 14, 14, 14, 14, 14, 14, 14, 18, 16, 21, 197, 244, 244, 236, 238, 235, 32.7522 + 207, 189, 148, 64, 14, 14, 14, 14, 98, 243, 235, 242, 240, 232, 218, 217, 32.7523 + 218, 227, 238, 236, 229, 231, 194, 175, 122, 15, 15, 14, 14, 27, 225, 242, 32.7524 + 247, 243, 244, 208, 194, 137, 109, 21, 20, 20, 41, 229, 237, 236, 237, 229, 32.7525 + 199, 179, 152, 100, 32, 15, 14, 18, 18, 15, 16, 32, 169, 223, 229, 229, 32.7526 + 225, 188, 167, 154, 39, 16, 14, 14, 14, 14, 14, 14, 24, 19, 15, 19, 32.7527 + 14, 14, 21, 14, 14, 14, 16, 15, 18, 26, 183, 235, 242, 222, 230, 215, 32.7528 + 157, 147, 92, 19, 14, 14, 14, 18, 52, 248, 246, 248, 240, 245, 210, 199, 32.7529 + 172, 134, 148, 95, 100, 113, 105, 134, 175, 204, 241, 230, 234, 226, 234, 226, 32.7530 + 181, 165, 113, 18, 21, 20, 164, 249, 230, 246, 238, 202, 162, 157, 118, 54, 32.7531 + 18, 14, 14, 14, 14, 16, 32, 130, 229, 242, 240, 240, 225, 195, 182, 102, 32.7532 + 26, 14, 14, 18, 19, 216, 243, 239, 237, 227, 230, 207, 198, 150, 78, 42, 32.7533 + 23, 21, 19, 24, 128, 218, 238, 238, 223, 229, 233, 183, 159, 118, 37, 14, 32.7534 + 14, 14, 14, 14, 15, 16, 18, 19, 190, 245, 240, 242, 238, 226, 217, 195, 32.7535 + 159, 78, 21, 18, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7536 + 14, 14, 14, 14, 15, 14, 16, 21, 232, 242, 249, 241, 239, 218, 200, 148, 32.7537 + 56, 27, 15, 16, 16, 19, 19, 20, 78, 223, 239, 240, 237, 238, 226, 200, 32.7538 + 152, 87, 20, 19, 20, 148, 244, 243, 245, 226, 193, 178, 145, 73, 29, 14, 32.7539 + 24, 14, 18, 24, 31, 19, 23, 162, 237, 239, 240, 241, 218, 198, 175, 92, 32.7540 + 19, 18, 147, 239, 236, 241, 228, 195, 181, 159, 95, 24, 15, 14, 16, 14, 32.7541 + 18, 14, 16, 21, 154, 240, 239, 244, 240, 204, 183, 176, 59, 15, 18, 14, 32.7542 + 130, 246, 226, 240, 233, 213, 192, 159, 92, 18, 14, 15, 14, 14, 14, 14, 32.7543 + 15, 16, 16, 19, 18, 14, 14, 16, 14, 16, 57, 248, 249, 244, 252, 229, 32.7544 + 204, 170, 105, 46, 15, 14, 14, 14, 14, 17, 14, 14, 24, 200, 234, 233, 32.7545 + 230, 204, 173, 152, 98, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7546 + 14, 14, 15, 14, 14, 14, 16, 18, 29, 219, 243, 234, 234, 217, 219, 188, 32.7547 + 173, 84, 16, 15, 15, 14, 14, 14, 16, 169, 237, 243, 245, 188, 199, 148, 32.7548 + 64, 15, 16, 23, 19, 223, 242, 249, 247, 217, 183, 173, 132, 55, 20, 16, 32.7549 + 18, 14, 18, 15, 21, 21, 27, 217, 242, 240, 242, 235, 188, 183, 152, 19, 32.7550 + 15, 15, 16, 193, 236, 248, 243, 239, 224, 193, 164, 100, 15, 18, 14, 14, 32.7551 + 14, 14, 14, 19, 137, 243, 245, 246, 241, 221, 197, 172, 109, 21, 15, 14, 32.7552 + 16, 14, 16, 90, 243, 246, 246, 244, 238, 218, 192, 134, 53, 19, 14, 14, 32.7553 + 15, 16, 15, 14, 14, 19, 19, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.7554 + 14, 14, 14, 16, 16, 21, 197, 245, 244, 233, 234, 234, 209, 189, 147, 63, 32.7555 + 18, 14, 24, 14, 194, 246, 237, 243, 228, 225, 192, 176, 204, 232, 236, 240, 32.7556 + 234, 234, 202, 179, 122, 15, 15, 14, 14, 90, 241, 242, 236, 244, 227, 209, 32.7557 + 178, 141, 34, 21, 19, 19, 132, 240, 238, 236, 229, 214, 204, 179, 107, 38, 32.7558 + 15, 14, 14, 18, 16, 14, 15, 15, 78, 222, 222, 228, 225, 192, 175, 147, 32.7559 + 36, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 20, 15, 32.7560 + 16, 14, 14, 15, 16, 19, 190, 242, 238, 225, 226, 200, 161, 130, 63, 20, 32.7561 + 14, 14, 20, 18, 122, 248, 243, 247, 233, 239, 193, 167, 124, 60, 39, 18, 32.7562 + 16, 20, 18, 21, 63, 124, 232, 230, 230, 229, 230, 226, 188, 162, 113, 18, 32.7563 + 19, 76, 238, 240, 246, 242, 209, 194, 169, 118, 54, 18, 14, 20, 17, 14, 32.7564 + 18, 14, 16, 57, 228, 243, 242, 240, 237, 192, 176, 124, 24, 14, 14, 16, 32.7565 + 48, 232, 245, 241, 230, 226, 216, 197, 172, 98, 26, 20, 15, 14, 14, 15, 32.7566 + 26, 206, 238, 241, 232, 232, 223, 178, 159, 90, 21, 14, 14, 14, 16, 14, 32.7567 + 15, 16, 18, 19, 225, 237, 242, 234, 236, 227, 217, 188, 145, 65, 19, 16, 32.7568 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7569 + 14, 14, 19, 56, 242, 239, 247, 234, 232, 204, 192, 132, 30, 16, 14, 14, 32.7570 + 21, 24, 20, 19, 24, 207, 240, 242, 232, 235, 216, 200, 141, 75, 19, 20, 32.7571 + 26, 241, 241, 246, 239, 202, 165, 161, 107, 38, 14, 14, 15, 14, 14, 14, 32.7572 + 15, 16, 19, 147, 244, 243, 244, 234, 220, 206, 143, 81, 20, 59, 237, 231, 32.7573 + 242, 236, 219, 185, 157, 109, 50, 20, 14, 16, 15, 14, 14, 20, 14, 20, 32.7574 + 147, 241, 239, 239, 235, 215, 183, 155, 71, 15, 16, 15, 189, 246, 239, 236, 32.7575 + 236, 223, 202, 169, 89, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.7576 + 14, 14, 14, 14, 14, 19, 161, 250, 249, 248, 247, 232, 197, 148, 69, 24, 32.7577 + 14, 14, 17, 16, 14, 16, 16, 14, 15, 172, 230, 227, 229, 209, 173, 128, 32.7578 + 87, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7579 + 14, 14, 15, 19, 18, 195, 232, 233, 238, 222, 224, 194, 175, 116, 16, 15, 32.7580 + 14, 15, 14, 14, 89, 229, 235, 239, 229, 161, 182, 97, 38, 14, 16, 21, 32.7581 + 92, 249, 240, 248, 239, 199, 172, 154, 90, 31, 16, 20, 14, 14, 18, 14, 32.7582 + 24, 19, 24, 207, 239, 241, 236, 230, 193, 178, 141, 19, 15, 15, 21, 233, 32.7583 + 235, 243, 243, 236, 213, 189, 157, 69, 15, 17, 14, 15, 14, 14, 14, 18, 32.7584 + 200, 242, 244, 244, 240, 217, 189, 159, 95, 15, 15, 14, 15, 18, 19, 169, 32.7585 + 244, 250, 242, 242, 229, 206, 173, 104, 35, 14, 14, 14, 14, 14, 14, 14, 32.7586 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 32.7587 + 15, 20, 195, 245, 243, 233, 235, 232, 213, 192, 148, 63, 15, 14, 18, 60, 32.7588 + 230, 242, 240, 231, 206, 217, 147, 114, 198, 238, 236, 238, 232, 235, 203, 178, 32.7589 + 126, 15, 15, 14, 26, 204, 238, 242, 239, 237, 213, 197, 152, 109, 19, 21, 32.7590 + 18, 36, 216, 238, 235, 236, 221, 203, 208, 164, 69, 21, 14, 14, 14, 14, 32.7591 + 14, 14, 18, 21, 21, 232, 228, 236, 229, 190, 189, 145, 18, 14, 14, 14, 32.7592 + 14, 14, 14, 16, 14, 15, 21, 16, 14, 14, 15, 14, 20, 15, 14, 15, 32.7593 + 16, 36, 217, 236, 234, 227, 226, 189, 164, 126, 40, 18, 15, 14, 19, 18, 32.7594 + 205, 246, 244, 246, 236, 220, 185, 152, 72, 18, 14, 14, 15, 18, 14, 15, 32.7595 + 19, 34, 198, 222, 232, 232, 225, 224, 194, 155, 107, 19, 20, 188, 248, 233, 32.7596 + 247, 229, 185, 185, 159, 75, 18, 15, 15, 15, 14, 14, 18, 14, 14, 24, 32.7597 + 230, 241, 242, 239, 232, 194, 175, 116, 18, 15, 14, 15, 130, 241, 244, 242, 32.7598 + 229, 230, 200, 183, 132, 71, 15, 18, 14, 24, 16, 19, 21, 222, 240, 242, 32.7599 + 235, 229, 205, 164, 150, 73, 15, 15, 14, 14, 15, 14, 14, 15, 16, 18, 32.7600 + 243, 239, 250, 235, 235, 223, 213, 175, 132, 57, 16, 15, 15, 14, 14, 14, 32.7601 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 32, 100, 32.7602 + 246, 236, 246, 231, 227, 194, 182, 120, 18, 14, 14, 14, 14, 14, 14, 18, 32.7603 + 18, 203, 243, 246, 231, 229, 206, 197, 137, 47, 34, 20, 183, 238, 244, 236, 32.7604 + 234, 205, 170, 124, 63, 21, 14, 14, 14, 14, 17, 14, 16, 16, 18, 139, 32.7605 + 244, 244, 246, 223, 226, 225, 132, 81, 21, 162, 233, 247, 238, 234, 197, 183, 32.7606 + 164, 75, 19, 14, 14, 14, 14, 14, 14, 19, 14, 15, 114, 234, 241, 244, 32.7607 + 231, 225, 192, 143, 79, 15, 18, 18, 217, 243, 250, 222, 233, 230, 217, 186, 32.7608 + 111, 18, 14, 19, 14, 14, 14, 14, 14, 15, 14, 14, 14, 15, 19, 18, 32.7609 + 15, 31, 227, 244, 249, 250, 236, 229, 195, 134, 56, 16, 14, 14, 14, 14, 32.7610 + 14, 14, 14, 26, 15, 198, 242, 232, 226, 209, 173, 114, 81, 14, 14, 16, 32.7611 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 14, 14, 15, 32.7612 + 16, 185, 223, 234, 243, 225, 224, 202, 181, 137, 19, 16, 15, 16, 15, 14, 32.7613 + 209, 240, 236, 232, 173, 167, 136, 73, 16, 14, 20, 16, 218, 244, 246, 243, 32.7614 + 225, 208, 179, 118, 49, 16, 15, 16, 14, 14, 16, 14, 16, 19, 29, 197, 32.7615 + 244, 244, 234, 232, 207, 178, 136, 19, 19, 14, 39, 244, 238, 238, 242, 226, 32.7616 + 199, 183, 147, 49, 15, 16, 14, 15, 14, 18, 14, 19, 230, 241, 243, 243, 32.7617 + 238, 213, 185, 157, 92, 14, 19, 15, 14, 19, 19, 209, 243, 250, 237, 234, 32.7618 + 227, 202, 159, 82, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7619 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 20, 192, 242, 32.7620 + 243, 231, 232, 232, 215, 190, 145, 65, 15, 24, 14, 186, 229, 240, 237, 207, 32.7621 + 190, 207, 111, 69, 194, 243, 233, 234, 230, 235, 205, 182, 128, 15, 14, 14, 32.7622 + 47, 242, 236, 238, 246, 202, 210, 172, 132, 60, 19, 18, 18, 95, 234, 238, 32.7623 + 233, 239, 225, 202, 198, 116, 29, 19, 14, 14, 18, 15, 15, 15, 16, 16, 32.7624 + 19, 245, 240, 244, 226, 181, 193, 136, 14, 14, 14, 18, 16, 14, 14, 19, 32.7625 + 82, 98, 118, 105, 111, 118, 114, 130, 98, 109, 113, 126, 132, 161, 251, 242, 32.7626 + 236, 229, 226, 182, 167, 120, 31, 16, 18, 14, 18, 18, 239, 244, 244, 244, 32.7627 + 236, 193, 183, 154, 46, 14, 14, 14, 14, 14, 14, 14, 15, 16, 181, 229, 32.7628 + 235, 237, 221, 219, 194, 145, 100, 20, 75, 244, 247, 245, 232, 221, 185, 164, 32.7629 + 109, 32, 15, 15, 19, 14, 14, 14, 14, 14, 18, 16, 234, 235, 238, 232, 32.7630 + 220, 197, 179, 109, 18, 19, 18, 16, 197, 246, 244, 240, 225, 232, 190, 169, 32.7631 + 124, 57, 14, 14, 14, 15, 14, 14, 23, 243, 244, 240, 235, 224, 192, 157, 32.7632 + 141, 59, 14, 21, 16, 14, 14, 14, 18, 14, 23, 128, 244, 243, 242, 240, 32.7633 + 233, 224, 198, 173, 128, 19, 15, 20, 14, 14, 15, 14, 14, 14, 14, 14, 32.7634 + 14, 14, 14, 14, 14, 16, 14, 14, 19, 18, 15, 204, 244, 240, 240, 234, 32.7635 + 209, 190, 155, 90, 14, 14, 14, 14, 14, 14, 14, 14, 31, 236, 242, 241, 32.7636 + 235, 227, 205, 188, 113, 19, 19, 21, 232, 234, 244, 241, 219, 198, 147, 120, 32.7637 + 41, 14, 16, 14, 14, 14, 14, 14, 14, 15, 24, 107, 244, 244, 241, 237, 32.7638 + 227, 200, 150, 57, 21, 233, 246, 236, 238, 215, 204, 176, 132, 44, 15, 14, 32.7639 + 15, 14, 14, 14, 14, 14, 14, 23, 107, 228, 241, 240, 236, 197, 198, 143, 32.7640 + 47, 18, 14, 20, 250, 248, 248, 247, 236, 232, 232, 205, 219, 109, 21, 15, 32.7641 + 14, 14, 14, 14, 19, 16, 19, 14, 14, 19, 14, 15, 15, 107, 242, 246, 32.7642 + 248, 242, 241, 234, 205, 122, 42, 18, 16, 16, 14, 14, 14, 22, 15, 20, 32.7643 + 24, 238, 240, 246, 232, 165, 162, 155, 50, 16, 21, 14, 14, 14, 14, 14, 32.7644 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 78, 238, 238, 32.7645 + 234, 232, 232, 195, 188, 152, 54, 16, 15, 20, 15, 150, 240, 238, 236, 208, 32.7646 + 155, 150, 102, 19, 15, 14, 15, 63, 245, 240, 244, 237, 224, 170, 167, 107, 32.7647 + 15, 18, 15, 14, 14, 14, 14, 14, 21, 15, 21, 198, 241, 242, 240, 225, 32.7648 + 203, 181, 104, 20, 15, 14, 130, 240, 238, 236, 238, 229, 194, 169, 132, 16, 32.7649 + 14, 16, 14, 14, 17, 14, 14, 33, 236, 235, 248, 234, 236, 192, 194, 137, 32.7650 + 38, 21, 17, 14, 15, 16, 41, 237, 245, 248, 234, 239, 219, 194, 139, 81, 32.7651 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7652 + 14, 14, 14, 14, 14, 14, 15, 14, 16, 16, 204, 240, 242, 234, 232, 229, 32.7653 + 221, 202, 143, 61, 24, 15, 49, 234, 238, 232, 237, 210, 205, 150, 64, 20, 32.7654 + 213, 243, 231, 238, 239, 229, 213, 203, 114, 15, 24, 14, 199, 236, 243, 233, 32.7655 + 230, 213, 176, 169, 114, 15, 21, 16, 16, 189, 243, 236, 241, 232, 229, 223, 32.7656 + 183, 95, 38, 18, 15, 14, 14, 14, 18, 18, 19, 20, 178, 240, 247, 239, 32.7657 + 227, 202, 189, 141, 32, 15, 15, 21, 15, 54, 192, 245, 240, 239, 242, 243, 32.7658 + 242, 237, 237, 240, 236, 234, 235, 232, 250, 247, 244, 238, 239, 241, 225, 189, 32.7659 + 161, 130, 18, 18, 16, 14, 16, 73, 241, 239, 247, 234, 230, 197, 172, 118, 32.7660 + 15, 14, 14, 14, 14, 14, 14, 19, 14, 23, 124, 234, 240, 233, 225, 210, 32.7661 + 199, 147, 63, 19, 179, 246, 246, 238, 235, 203, 169, 148, 69, 33, 14, 14, 32.7662 + 14, 14, 14, 14, 14, 14, 14, 14, 231, 243, 237, 230, 220, 183, 164, 100, 32.7663 + 18, 24, 14, 16, 234, 243, 243, 238, 228, 211, 185, 159, 98, 15, 14, 14, 32.7664 + 18, 14, 14, 14, 82, 239, 244, 240, 225, 219, 179, 162, 116, 14, 14, 14, 32.7665 + 14, 24, 14, 14, 15, 14, 15, 157, 243, 242, 239, 237, 230, 219, 192, 164, 32.7666 + 111, 18, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7667 + 14, 15, 14, 14, 15, 14, 14, 214, 243, 243, 239, 234, 205, 178, 155, 68, 32.7668 + 14, 14, 14, 14, 14, 14, 15, 14, 64, 238, 243, 243, 232, 220, 204, 173, 32.7669 + 97, 20, 18, 73, 240, 240, 244, 239, 204, 178, 126, 90, 22, 14, 14, 14, 32.7670 + 14, 14, 14, 14, 14, 17, 15, 147, 245, 245, 243, 236, 221, 202, 132, 31, 32.7671 + 84, 244, 246, 239, 238, 204, 185, 155, 100, 35, 14, 14, 15, 14, 14, 14, 32.7672 + 14, 14, 14, 15, 148, 229, 243, 240, 231, 192, 189, 137, 31, 16, 14, 19, 32.7673 + 245, 250, 252, 249, 241, 239, 242, 239, 223, 225, 223, 195, 130, 59, 23, 14, 32.7674 + 14, 14, 14, 14, 24, 17, 14, 27, 20, 181, 251, 249, 246, 239, 239, 225, 32.7675 + 228, 197, 173, 178, 193, 203, 205, 205, 205, 205, 210, 215, 206, 248, 239, 227, 32.7676 + 221, 169, 141, 137, 27, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7677 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 32, 228, 232, 235, 232, 223, 210, 32.7678 + 205, 164, 57, 19, 18, 15, 68, 222, 242, 236, 216, 185, 159, 105, 49, 18, 32.7679 + 16, 18, 15, 143, 246, 246, 243, 239, 210, 167, 152, 73, 14, 14, 15, 14, 32.7680 + 14, 14, 14, 14, 14, 16, 15, 211, 242, 242, 237, 219, 197, 175, 93, 23, 32.7681 + 21, 14, 173, 243, 239, 235, 232, 215, 185, 159, 116, 16, 14, 14, 14, 14, 32.7682 + 14, 14, 16, 87, 245, 239, 245, 229, 228, 193, 178, 118, 26, 16, 14, 14, 32.7683 + 18, 15, 79, 242, 243, 243, 231, 236, 209, 178, 134, 59, 14, 14, 14, 14, 32.7684 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7685 + 14, 14, 16, 14, 16, 15, 203, 238, 242, 234, 229, 225, 220, 206, 145, 57, 32.7686 + 19, 16, 182, 243, 238, 242, 202, 185, 178, 98, 41, 19, 211, 240, 234, 239, 32.7687 + 233, 231, 209, 198, 116, 24, 14, 39, 229, 240, 240, 234, 223, 193, 162, 150, 32.7688 + 56, 14, 15, 16, 29, 217, 243, 242, 237, 230, 229, 229, 221, 199, 186, 193, 32.7689 + 188, 192, 193, 197, 203, 206, 214, 215, 235, 253, 253, 248, 229, 194, 176, 114, 32.7690 + 20, 24, 21, 19, 41, 223, 246, 240, 251, 248, 245, 245, 243, 239, 236, 237, 32.7691 + 236, 239, 245, 242, 243, 239, 247, 250, 240, 238, 223, 194, 161, 116, 18, 19, 32.7692 + 18, 14, 16, 122, 246, 241, 246, 234, 220, 189, 162, 98, 15, 14, 14, 14, 32.7693 + 14, 14, 14, 15, 14, 14, 167, 243, 240, 233, 236, 213, 216, 136, 41, 23, 32.7694 + 225, 248, 243, 239, 234, 193, 169, 141, 41, 20, 14, 14, 14, 14, 14, 14, 32.7695 + 14, 14, 15, 31, 234, 237, 237, 234, 217, 209, 148, 84, 16, 15, 14, 31, 32.7696 + 243, 246, 243, 237, 229, 215, 183, 147, 84, 14, 14, 14, 14, 14, 14, 15, 32.7697 + 134, 246, 243, 240, 227, 219, 173, 148, 102, 14, 15, 14, 14, 20, 14, 14, 32.7698 + 14, 14, 14, 204, 243, 242, 238, 236, 228, 215, 185, 154, 85, 15, 14, 16, 32.7699 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7700 + 14, 14, 35, 233, 243, 243, 235, 233, 193, 165, 152, 39, 14, 14, 14, 14, 32.7701 + 14, 14, 16, 14, 143, 242, 244, 244, 225, 213, 203, 157, 69, 23, 16, 165, 32.7702 + 246, 244, 241, 234, 200, 169, 126, 64, 14, 14, 14, 14, 14, 14, 14, 14, 32.7703 + 14, 16, 14, 204, 247, 245, 243, 232, 211, 198, 107, 19, 165, 245, 241, 238, 32.7704 + 237, 198, 175, 148, 63, 21, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.7705 + 198, 234, 244, 240, 228, 183, 175, 126, 15, 14, 14, 19, 246, 252, 248, 243, 32.7706 + 244, 243, 232, 221, 219, 233, 239, 234, 227, 225, 221, 205, 97, 21, 19, 19, 32.7707 + 14, 15, 21, 14, 15, 217, 251, 247, 237, 237, 239, 230, 229, 229, 236, 241, 32.7708 + 243, 242, 242, 243, 244, 234, 250, 246, 250, 247, 246, 238, 206, 173, 136, 124, 32.7709 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7710 + 14, 14, 14, 14, 14, 15, 198, 230, 235, 237, 220, 223, 202, 190, 95, 23, 32.7711 + 23, 20, 183, 247, 242, 232, 188, 159, 145, 56, 15, 21, 14, 15, 15, 219, 32.7712 + 243, 247, 235, 231, 195, 164, 126, 38, 14, 14, 14, 14, 14, 14, 14, 14, 32.7713 + 14, 21, 14, 231, 242, 241, 232, 214, 194, 162, 79, 21, 14, 14, 208, 243, 32.7714 + 239, 236, 229, 209, 181, 152, 89, 15, 14, 14, 14, 15, 14, 15, 14, 172, 32.7715 + 248, 242, 242, 233, 224, 193, 162, 100, 14, 14, 14, 14, 16, 15, 150, 244, 32.7716 + 243, 240, 229, 228, 200, 154, 130, 33, 14, 14, 14, 14, 14, 14, 14, 14, 32.7717 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.7718 + 16, 14, 200, 239, 242, 232, 226, 225, 223, 208, 145, 61, 19, 37, 245, 245, 32.7719 + 234, 236, 198, 188, 147, 52, 21, 16, 205, 240, 238, 236, 228, 234, 217, 203, 32.7720 + 124, 27, 14, 145, 245, 241, 239, 231, 204, 173, 148, 120, 16, 14, 14, 21, 32.7721 + 60, 236, 239, 242, 242, 236, 230, 229, 223, 217, 228, 238, 234, 236, 238, 242, 32.7722 + 243, 246, 246, 248, 246, 249, 250, 244, 217, 188, 182, 114, 21, 21, 21, 24, 32.7723 + 170, 254, 254, 250, 250, 246, 240, 240, 243, 243, 242, 241, 242, 238, 238, 243, 32.7724 + 238, 242, 243, 241, 238, 236, 223, 200, 157, 87, 18, 20, 14, 14, 14, 189, 32.7725 + 246, 244, 242, 234, 206, 183, 154, 71, 14, 15, 14, 14, 14, 14, 14, 14, 32.7726 + 15, 14, 206, 246, 244, 233, 238, 209, 211, 120, 21, 63, 248, 247, 240, 239, 32.7727 + 225, 185, 164, 118, 18, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 90, 32.7728 + 238, 236, 236, 235, 204, 215, 128, 56, 20, 14, 21, 111, 249, 249, 243, 236, 32.7729 + 227, 211, 175, 134, 65, 14, 14, 14, 14, 14, 14, 14, 206, 250, 243, 240, 32.7730 + 229, 210, 159, 130, 76, 14, 17, 14, 14, 18, 14, 16, 14, 14, 14, 229, 32.7731 + 243, 240, 237, 234, 228, 210, 179, 143, 61, 14, 14, 14, 14, 14, 14, 14, 32.7732 + 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 15, 19, 14, 14, 79, 243, 32.7733 + 242, 243, 229, 225, 182, 152, 136, 19, 14, 14, 14, 14, 14, 14, 14, 14, 32.7734 + 207, 239, 243, 242, 222, 204, 195, 136, 37, 19, 15, 222, 248, 246, 238, 226, 32.7735 + 198, 154, 130, 36, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 228, 32.7736 + 246, 243, 243, 225, 204, 189, 84, 16, 221, 243, 235, 235, 231, 188, 162, 145, 32.7737 + 34, 14, 14, 16, 14, 14, 14, 14, 14, 16, 14, 14, 224, 232, 243, 236, 32.7738 + 225, 179, 165, 114, 14, 14, 15, 15, 233, 246, 236, 228, 242, 243, 236, 237, 32.7739 + 245, 243, 239, 241, 245, 249, 242, 223, 218, 193, 87, 20, 14, 21, 14, 15, 32.7740 + 29, 236, 244, 244, 232, 232, 235, 229, 220, 225, 233, 239, 238, 236, 238, 243, 32.7741 + 246, 232, 246, 238, 244, 229, 240, 232, 164, 154, 141, 95, 15, 14, 16, 14, 32.7742 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7743 + 19, 14, 130, 239, 239, 236, 224, 228, 197, 217, 137, 18, 16, 102, 242, 246, 32.7744 + 238, 218, 167, 136, 93, 26, 14, 20, 14, 14, 29, 240, 240, 246, 234, 213, 32.7745 + 183, 159, 95, 16, 16, 14, 14, 14, 14, 14, 14, 15, 14, 15, 44, 244, 32.7746 + 239, 238, 225, 205, 189, 136, 53, 15, 14, 29, 228, 241, 237, 237, 227, 206, 32.7747 + 181, 136, 56, 14, 14, 14, 14, 14, 14, 16, 15, 210, 243, 242, 238, 236, 32.7748 + 216, 195, 152, 82, 14, 15, 14, 15, 14, 14, 200, 241, 239, 235, 226, 218, 32.7749 + 192, 136, 118, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7750 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 202, 239, 32.7751 + 237, 230, 226, 229, 226, 216, 152, 64, 19, 157, 247, 244, 234, 209, 208, 175, 32.7752 + 114, 31, 14, 20, 205, 242, 239, 232, 230, 237, 221, 209, 122, 15, 41, 228, 32.7753 + 245, 239, 235, 220, 182, 167, 141, 69, 14, 14, 14, 15, 130, 242, 240, 240, 32.7754 + 239, 235, 234, 230, 225, 225, 227, 232, 232, 234, 237, 239, 240, 242, 242, 243, 32.7755 + 246, 245, 238, 226, 185, 178, 170, 67, 26, 20, 21, 92, 249, 246, 250, 252, 32.7756 + 242, 235, 223, 215, 210, 205, 199, 197, 206, 192, 197, 227, 231, 240, 240, 233, 32.7757 + 236, 229, 217, 198, 147, 54, 16, 19, 14, 14, 21, 226, 243, 243, 234, 231, 32.7758 + 200, 181, 136, 47, 14, 16, 14, 14, 14, 14, 14, 14, 15, 26, 232, 244, 32.7759 + 247, 236, 228, 210, 183, 107, 14, 148, 251, 246, 238, 234, 209, 179, 154, 67, 32.7760 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 15, 14, 161, 241, 236, 236, 227, 32.7761 + 186, 200, 122, 31, 21, 14, 20, 200, 249, 250, 245, 235, 224, 206, 164, 116, 32.7762 + 38, 14, 14, 14, 14, 14, 14, 14, 234, 250, 242, 237, 225, 195, 154, 120, 32.7763 + 43, 14, 15, 14, 14, 15, 14, 16, 14, 14, 33, 241, 243, 242, 236, 234, 32.7764 + 226, 209, 176, 134, 40, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7765 + 14, 14, 15, 15, 14, 14, 14, 19, 14, 18, 143, 246, 241, 240, 226, 216, 32.7766 + 176, 145, 104, 14, 16, 14, 14, 14, 14, 16, 14, 18, 234, 242, 242, 237, 32.7767 + 220, 203, 192, 118, 21, 14, 24, 238, 246, 243, 236, 220, 197, 139, 120, 15, 32.7768 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 29, 240, 245, 240, 242, 222, 32.7769 + 202, 176, 67, 26, 242, 246, 239, 234, 218, 172, 139, 111, 20, 14, 14, 16, 32.7770 + 14, 14, 14, 14, 14, 16, 14, 26, 236, 236, 242, 232, 215, 175, 161, 92, 32.7771 + 14, 16, 17, 14, 143, 221, 232, 216, 207, 202, 211, 233, 213, 218, 227, 239, 32.7772 + 243, 242, 243, 243, 236, 217, 219, 159, 24, 15, 33, 15, 114, 249, 243, 243, 32.7773 + 232, 221, 217, 211, 202, 200, 205, 210, 206, 202, 204, 211, 214, 207, 216, 209, 32.7774 + 206, 189, 190, 155, 148, 134, 139, 56, 22, 14, 25, 15, 14, 14, 14, 14, 32.7775 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 47, 240, 32.7776 + 238, 233, 231, 228, 218, 224, 152, 21, 21, 218, 252, 245, 228, 195, 162, 111, 32.7777 + 40, 14, 14, 14, 14, 16, 90, 244, 243, 244, 239, 198, 182, 157, 69, 14, 32.7778 + 16, 14, 14, 14, 14, 15, 14, 14, 16, 14, 114, 243, 238, 236, 221, 204, 32.7779 + 189, 114, 37, 14, 21, 85, 244, 243, 234, 234, 217, 197, 178, 114, 32, 14, 32.7780 + 14, 16, 14, 14, 16, 14, 19, 229, 243, 242, 236, 234, 206, 188, 145, 65, 32.7781 + 14, 14, 14, 14, 14, 25, 219, 238, 238, 235, 227, 205, 186, 137, 95, 14, 32.7782 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7783 + 14, 14, 14, 14, 14, 15, 14, 14, 15, 14, 198, 240, 235, 229, 226, 230, 32.7784 + 227, 215, 152, 68, 31, 236, 241, 245, 239, 203, 179, 137, 73, 18, 14, 20, 32.7785 + 202, 240, 239, 232, 236, 235, 225, 215, 126, 15, 148, 247, 235, 234, 230, 209, 32.7786 + 170, 162, 109, 32, 15, 17, 14, 14, 207, 246, 246, 241, 237, 235, 229, 223, 32.7787 + 215, 207, 200, 194, 199, 204, 206, 205, 206, 208, 205, 206, 203, 203, 193, 176, 32.7788 + 148, 162, 137, 27, 18, 21, 21, 172, 253, 243, 246, 239, 221, 216, 205, 182, 32.7789 + 169, 169, 165, 172, 183, 182, 198, 217, 223, 224, 231, 232, 233, 217, 203, 179, 32.7790 + 114, 28, 14, 15, 14, 14, 47, 240, 238, 241, 228, 226, 197, 172, 120, 28, 32.7791 + 14, 14, 14, 14, 14, 16, 14, 14, 14, 85, 246, 246, 246, 241, 217, 219, 32.7792 + 148, 95, 14, 210, 247, 244, 239, 230, 193, 178, 143, 30, 14, 14, 14, 14, 32.7793 + 14, 14, 14, 14, 16, 14, 14, 203, 243, 243, 236, 217, 194, 173, 126, 14, 32.7794 + 14, 14, 14, 217, 248, 251, 246, 235, 219, 194, 152, 111, 18, 14, 14, 14, 32.7795 + 14, 14, 14, 25, 244, 251, 243, 235, 221, 178, 152, 118, 19, 14, 14, 14, 32.7796 + 14, 14, 14, 14, 14, 14, 79, 243, 243, 237, 233, 229, 225, 208, 167, 128, 32.7797 + 25, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.7798 + 14, 14, 14, 16, 14, 22, 197, 243, 242, 237, 228, 203, 175, 141, 64, 14, 32.7799 + 16, 14, 15, 14, 14, 17, 14, 45, 242, 240, 243, 227, 219, 203, 175, 97, 32.7800 + 15, 14, 56, 244, 244, 242, 236, 214, 192, 139, 85, 15, 18, 14, 15, 14, 32.7801 + 14, 14, 14, 14, 14, 14, 89, 243, 244, 239, 237, 211, 204, 148, 49, 72, 32.7802 + 245, 243, 240, 231, 209, 176, 139, 81, 14, 14, 14, 14, 14, 14, 15, 14, 32.7803 + 16, 14, 14, 89, 243, 239, 243, 226, 202, 162, 147, 57, 16, 14, 15, 14, 32.7804 + 37, 122, 194, 206, 200, 189, 182, 178, 211, 214, 217, 223, 225, 223, 233, 243, 32.7805 + 224, 236, 225, 206, 130, 19, 16, 26, 199, 250, 242, 234, 230, 213, 199, 182, 32.7806 + 164, 157, 157, 162, 161, 154, 148, 150, 154, 162, 150, 159, 150, 161, 175, 134, 32.7807 + 167, 136, 130, 35, 24, 14, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7808 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 14, 222, 236, 232, 238, 231, 32.7809 + 229, 220, 188, 130, 150, 253, 250, 238, 209, 164, 136, 72, 14, 14, 19, 14, 32.7810 + 14, 16, 179, 242, 245, 239, 236, 192, 172, 134, 41, 14, 15, 14, 14, 14, 32.7811 + 14, 18, 14, 14, 15, 14, 190, 233, 235, 232, 209, 192, 179, 97, 26, 14, 32.7812 + 18, 164, 245, 238, 230, 233, 205, 192, 161, 95, 16, 14, 14, 16, 14, 14, 32.7813 + 14, 14, 63, 243, 248, 246, 236, 223, 195, 173, 134, 39, 15, 14, 14, 14, 32.7814 + 14, 57, 226, 236, 236, 234, 224, 200, 179, 145, 60, 14, 14, 14, 14, 14, 32.7815 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7816 + 14, 14, 14, 14, 15, 14, 198, 236, 238, 231, 229, 229, 225, 216, 165, 89, 32.7817 + 159, 252, 247, 238, 227, 209, 136, 122, 35, 14, 14, 16, 203, 242, 242, 234, 32.7818 + 236, 232, 228, 217, 145, 18, 225, 246, 232, 234, 225, 194, 164, 141, 71, 15, 32.7819 + 14, 14, 14, 14, 234, 243, 243, 239, 236, 234, 220, 183, 161, 152, 148, 137, 32.7820 + 155, 157, 159, 157, 154, 155, 154, 154, 134, 155, 147, 143, 128, 136, 90, 14, 32.7821 + 14, 26, 27, 232, 248, 247, 236, 222, 200, 190, 162, 120, 100, 95, 102, 109, 32.7822 + 126, 105, 107, 130, 221, 223, 227, 223, 224, 203, 181, 145, 82, 14, 14, 14, 32.7823 + 14, 14, 118, 243, 236, 238, 224, 221, 192, 161, 97, 18, 14, 14, 14, 14, 32.7824 + 14, 23, 14, 14, 14, 182, 251, 247, 242, 241, 210, 223, 124, 64, 14, 225, 32.7825 + 243, 244, 240, 228, 186, 170, 120, 14, 18, 14, 14, 14, 14, 14, 14, 14, 32.7826 + 14, 14, 30, 225, 241, 244, 238, 210, 192, 147, 109, 14, 14, 14, 27, 231, 32.7827 + 247, 250, 246, 237, 219, 186, 141, 98, 14, 14, 14, 14, 14, 14, 15, 102, 32.7828 + 249, 250, 245, 234, 219, 167, 154, 100, 14, 14, 14, 14, 14, 14, 14, 14, 32.7829 + 15, 14, 148, 239, 239, 233, 227, 222, 218, 199, 157, 114, 18, 14, 14, 14, 32.7830 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 15, 32.7831 + 14, 31, 225, 239, 240, 232, 226, 175, 169, 132, 31, 14, 14, 14, 17, 14, 32.7832 + 18, 15, 14, 122, 240, 240, 240, 213, 216, 197, 150, 73, 14, 14, 124, 243, 32.7833 + 243, 236, 238, 194, 175, 147, 43, 15, 16, 15, 14, 14, 14, 14, 14, 14, 32.7834 + 14, 14, 185, 243, 241, 234, 228, 195, 188, 92, 27, 132, 244, 236, 238, 225, 32.7835 + 195, 185, 136, 48, 14, 14, 14, 14, 14, 14, 16, 14, 19, 14, 19, 197, 32.7836 + 246, 245, 238, 215, 185, 150, 128, 25, 18, 14, 14, 14, 14, 26, 68, 113, 32.7837 + 147, 181, 186, 159, 154, 170, 193, 213, 227, 236, 236, 231, 242, 224, 210, 226, 32.7838 + 165, 38, 19, 16, 217, 241, 240, 220, 223, 209, 181, 137, 73, 69, 75, 89, 32.7839 + 105, 111, 116, 122, 126, 126, 100, 100, 90, 84, 122, 90, 92, 76, 65, 22, 32.7840 + 19, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7841 + 14, 14, 14, 14, 14, 14, 14, 167, 238, 230, 237, 231, 229, 229, 225, 232, 32.7842 + 246, 254, 243, 217, 179, 145, 85, 31, 14, 14, 14, 14, 14, 14, 222, 238, 32.7843 + 243, 232, 221, 188, 164, 107, 21, 14, 14, 14, 14, 14, 15, 14, 14, 14, 32.7844 + 14, 31, 223, 226, 230, 225, 189, 167, 161, 73, 17, 14, 14, 216, 240, 237, 32.7845 + 227, 232, 194, 183, 134, 84, 14, 14, 14, 14, 14, 14, 15, 15, 143, 246, 32.7846 + 246, 243, 232, 217, 182, 154, 111, 18, 14, 14, 14, 14, 14, 120, 233, 234, 32.7847 + 229, 225, 213, 188, 159, 141, 31, 19, 15, 14, 14, 14, 14, 15, 15, 15, 32.7848 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7849 + 16, 14, 193, 231, 233, 227, 226, 225, 220, 220, 197, 143, 249, 251, 248, 236, 32.7850 + 209, 186, 136, 87, 16, 14, 14, 14, 203, 240, 238, 238, 235, 236, 233, 219, 32.7851 + 181, 85, 240, 241, 232, 228, 207, 176, 154, 98, 35, 14, 14, 14, 14, 23, 32.7852 + 243, 243, 238, 234, 224, 225, 202, 137, 90, 87, 100, 104, 114, 120, 118, 116, 32.7853 + 113, 113, 107, 102, 100, 111, 87, 85, 73, 49, 27, 14, 18, 14, 81, 243, 32.7854 + 242, 242, 223, 206, 186, 157, 87, 36, 18, 14, 14, 14, 15, 14, 14, 31, 32.7855 + 224, 226, 223, 209, 203, 183, 157, 107, 57, 14, 14, 14, 14, 14, 195, 241, 32.7856 + 236, 236, 221, 204, 175, 136, 84, 14, 18, 14, 14, 16, 14, 19, 14, 14, 32.7857 + 39, 234, 249, 246, 239, 236, 208, 210, 116, 34, 30, 239, 243, 244, 236, 220, 32.7858 + 182, 145, 89, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 90, 243, 32.7859 + 239, 243, 230, 193, 173, 134, 69, 14, 15, 16, 93, 243, 249, 250, 244, 232, 32.7860 + 215, 178, 124, 75, 14, 16, 14, 14, 19, 14, 22, 205, 251, 250, 245, 226, 32.7861 + 211, 154, 139, 69, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 179, 227, 32.7862 + 224, 221, 215, 211, 208, 193, 148, 105, 14, 14, 15, 14, 14, 14, 14, 14, 32.7863 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 18, 14, 38, 235, 236, 32.7864 + 232, 217, 214, 150, 152, 116, 14, 15, 14, 14, 21, 14, 18, 14, 15, 179, 32.7865 + 232, 234, 234, 192, 207, 178, 118, 54, 15, 16, 178, 242, 238, 226, 227, 164, 32.7866 + 137, 122, 14, 15, 14, 15, 14, 14, 14, 14, 14, 14, 15, 14, 217, 236, 32.7867 + 227, 217, 203, 167, 165, 63, 15, 162, 243, 233, 235, 214, 175, 173, 95, 17, 32.7868 + 14, 14, 14, 14, 14, 14, 18, 14, 23, 18, 21, 236, 243, 243, 230, 189, 32.7869 + 159, 126, 95, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 42, 105, 111, 32.7870 + 141, 172, 192, 189, 195, 219, 229, 223, 217, 234, 211, 215, 186, 56, 21, 15, 32.7871 + 221, 228, 236, 199, 214, 208, 176, 100, 24, 19, 14, 14, 14, 14, 14, 14, 32.7872 + 14, 14, 14, 17, 20, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7873 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7874 + 19, 14, 21, 109, 236, 226, 228, 227, 228, 238, 229, 231, 249, 235, 234, 195, 32.7875 + 154, 136, 50, 14, 14, 14, 14, 15, 16, 15, 235, 240, 239, 225, 190, 178, 32.7876 + 141, 84, 14, 14, 14, 14, 14, 14, 18, 14, 14, 16, 14, 75, 234, 225, 32.7877 + 219, 209, 159, 141, 137, 55, 14, 14, 14, 233, 236, 234, 225, 225, 173, 165, 32.7878 + 114, 78, 14, 16, 14, 14, 14, 16, 21, 16, 194, 242, 240, 230, 227, 205, 32.7879 + 172, 134, 100, 14, 14, 14, 14, 14, 14, 172, 239, 237, 225, 210, 197, 173, 32.7880 + 134, 130, 14, 17, 14, 14, 14, 14, 14, 15, 15, 15, 14, 14, 14, 14, 32.7881 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 185, 226, 32.7882 + 222, 217, 213, 214, 216, 225, 218, 190, 253, 237, 240, 239, 204, 126, 139, 27, 32.7883 + 14, 14, 14, 14, 198, 238, 229, 234, 232, 239, 236, 216, 202, 183, 233, 224, 32.7884 + 221, 207, 167, 148, 141, 68, 20, 14, 14, 16, 17, 48, 241, 239, 224, 223, 32.7885 + 209, 211, 170, 72, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7886 + 14, 14, 14, 14, 14, 14, 14, 14, 16, 14, 208, 231, 230, 225, 221, 176, 32.7887 + 155, 109, 47, 15, 14, 14, 14, 14, 15, 14, 31, 46, 234, 217, 198, 188, 32.7888 + 182, 162, 137, 90, 45, 14, 14, 14, 14, 14, 224, 232, 229, 225, 205, 176, 32.7889 + 152, 111, 68, 14, 23, 15, 14, 19, 15, 14, 15, 21, 82, 246, 243, 236, 32.7890 + 228, 216, 194, 169, 98, 16, 52, 245, 240, 236, 218, 207, 170, 111, 67, 14, 32.7891 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 22, 161, 251, 230, 231, 214, 165, 32.7892 + 155, 130, 39, 14, 16, 14, 165, 243, 248, 246, 236, 223, 203, 172, 100, 50, 32.7893 + 14, 17, 14, 14, 20, 14, 14, 227, 247, 243, 238, 215, 202, 143, 126, 47, 32.7894 + 14, 17, 14, 14, 14, 14, 14, 15, 14, 14, 197, 198, 192, 197, 188, 183, 32.7895 + 190, 185, 130, 78, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7896 + 14, 15, 20, 14, 14, 18, 14, 16, 14, 134, 232, 221, 215, 200, 170, 145, 32.7897 + 100, 65, 14, 14, 14, 18, 14, 14, 14, 16, 14, 214, 221, 225, 203, 193, 32.7898 + 169, 157, 132, 30, 15, 21, 208, 236, 231, 221, 188, 148, 107, 60, 14, 14, 32.7899 + 14, 14, 14, 14, 15, 14, 21, 14, 14, 69, 209, 207, 197, 186, 157, 148, 32.7900 + 111, 34, 14, 190, 222, 229, 225, 193, 164, 155, 79, 14, 14, 14, 14, 14, 32.7901 + 14, 16, 14, 14, 21, 49, 126, 248, 240, 228, 218, 124, 107, 92, 41, 14, 32.7902 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 38, 61, 122, 157, 32.7903 + 200, 195, 208, 204, 208, 222, 210, 188, 164, 69, 14, 14, 210, 202, 198, 182, 32.7904 + 178, 183, 169, 109, 14, 14, 14, 14, 16, 16, 14, 14, 18, 14, 14, 19, 32.7905 + 14, 14, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7906 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 14, 14, 16, 32.7907 + 213, 205, 218, 199, 216, 217, 217, 219, 225, 217, 183, 137, 130, 57, 18, 14, 32.7908 + 14, 14, 14, 18, 18, 23, 240, 235, 228, 190, 162, 143, 92, 47, 15, 14, 32.7909 + 14, 14, 14, 14, 14, 18, 21, 14, 14, 154, 205, 213, 195, 162, 154, 126, 32.7910 + 97, 23, 16, 14, 55, 224, 214, 209, 202, 186, 157, 141, 104, 28, 14, 14, 32.7911 + 16, 16, 14, 20, 19, 18, 227, 242, 220, 221, 195, 165, 148, 122, 78, 14, 32.7912 + 15, 14, 14, 14, 14, 226, 243, 235, 215, 209, 189, 139, 102, 65, 14, 14, 32.7913 + 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7914 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 167, 210, 207, 195, 193, 200, 32.7915 + 215, 220, 225, 230, 239, 232, 234, 189, 162, 132, 78, 14, 14, 14, 14, 14, 32.7916 + 185, 233, 232, 229, 232, 234, 229, 221, 214, 208, 204, 192, 183, 175, 128, 128, 32.7917 + 79, 40, 14, 19, 14, 14, 14, 100, 219, 209, 198, 173, 164, 162, 132, 59, 32.7918 + 14, 16, 19, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7919 + 14, 14, 14, 15, 14, 16, 215, 231, 220, 213, 176, 164, 154, 76, 26, 14, 32.7920 + 14, 14, 14, 15, 19, 19, 29, 141, 215, 206, 185, 155, 176, 147, 141, 105, 32.7921 + 18, 15, 14, 14, 14, 52, 221, 215, 221, 190, 192, 139, 122, 97, 14, 14, 32.7922 + 19, 16, 14, 21, 14, 14, 14, 14, 210, 227, 227, 209, 199, 148, 169, 114, 32.7923 + 56, 14, 107, 232, 222, 216, 217, 172, 167, 134, 27, 21, 19, 14, 14, 14, 32.7924 + 15, 14, 14, 15, 14, 14, 231, 242, 213, 217, 165, 143, 102, 82, 14, 14, 32.7925 + 14, 14, 222, 245, 239, 246, 217, 216, 179, 126, 104, 14, 14, 14, 14, 14, 32.7926 + 14, 14, 21, 243, 226, 231, 217, 198, 161, 139, 122, 28, 14, 14, 14, 14, 32.7927 + 14, 14, 14, 14, 14, 14, 183, 181, 164, 157, 157, 155, 164, 157, 104, 54, 32.7928 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 21, 14, 14, 14, 14, 32.7929 + 14, 16, 14, 14, 14, 152, 215, 205, 195, 178, 143, 128, 93, 45, 14, 14, 32.7930 + 14, 15, 14, 14, 14, 14, 14, 207, 199, 203, 181, 164, 139, 118, 82, 15, 32.7931 + 15, 20, 204, 232, 221, 207, 167, 130, 98, 48, 14, 14, 14, 14, 14, 14, 32.7932 + 29, 14, 16, 16, 14, 157, 200, 164, 165, 136, 118, 120, 76, 22, 14, 170, 32.7933 + 216, 213, 204, 179, 150, 122, 60, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.7934 + 21, 21, 200, 242, 224, 218, 155, 120, 92, 68, 17, 14, 14, 14, 14, 14, 32.7935 + 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 18, 45, 150, 197, 190, 195, 32.7936 + 200, 213, 192, 167, 136, 44, 14, 15, 192, 178, 165, 155, 155, 165, 154, 92, 32.7937 + 21, 21, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 32.7938 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7939 + 14, 14, 14, 14, 14, 15, 16, 18, 18, 14, 14, 14, 164, 199, 199, 185, 32.7940 + 200, 202, 200, 205, 198, 176, 139, 109, 78, 36, 15, 14, 15, 15, 14, 16, 32.7941 + 19, 21, 232, 223, 211, 157, 137, 122, 95, 39, 14, 14, 14, 15, 14, 14, 32.7942 + 24, 14, 19, 14, 16, 194, 203, 176, 169, 120, 111, 104, 72, 14, 14, 14, 32.7943 + 89, 209, 200, 195, 183, 164, 145, 122, 98, 27, 14, 15, 18, 19, 16, 19, 32.7944 + 23, 36, 223, 230, 208, 197, 167, 141, 126, 100, 43, 14, 14, 14, 14, 14, 32.7945 + 36, 235, 242, 226, 203, 189, 162, 114, 92, 43, 14, 14, 14, 14, 14, 14, 32.7946 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7947 + 14, 14, 14, 14, 14, 14, 152, 198, 192, 178, 178, 183, 194, 206, 215, 218, 32.7948 + 220, 219, 204, 178, 128, 97, 41, 14, 14, 14, 14, 14, 169, 223, 217, 218, 32.7949 + 225, 227, 221, 208, 194, 188, 173, 164, 150, 126, 114, 79, 71, 15, 14, 14, 32.7950 + 14, 14, 14, 116, 199, 185, 170, 139, 122, 109, 85, 40, 15, 14, 21, 18, 32.7951 + 15, 14, 14, 14, 14, 14, 14, 14, 17, 14, 14, 14, 14, 15, 19, 14, 32.7952 + 14, 42, 215, 225, 210, 195, 165, 148, 97, 39, 14, 14, 14, 14, 16, 21, 32.7953 + 34, 26, 18, 186, 199, 179, 167, 148, 157, 137, 134, 93, 16, 14, 14, 14, 32.7954 + 14, 105, 225, 211, 207, 165, 161, 118, 107, 84, 14, 14, 17, 19, 14, 18, 32.7955 + 18, 14, 14, 65, 219, 207, 197, 165, 154, 120, 122, 75, 24, 14, 85, 221, 32.7956 + 208, 197, 192, 148, 175, 137, 21, 15, 23, 16, 14, 14, 18, 15, 14, 14, 32.7957 + 14, 89, 231, 229, 207, 185, 143, 104, 89, 36, 14, 14, 14, 29, 230, 243, 32.7958 + 233, 232, 203, 194, 157, 114, 84, 14, 14, 14, 14, 14, 14, 18, 59, 237, 32.7959 + 215, 214, 202, 183, 145, 114, 85, 18, 14, 14, 14, 14, 14, 14, 14, 14, 32.7960 + 14, 14, 178, 170, 152, 130, 136, 150, 143, 136, 92, 35, 14, 14, 14, 14, 32.7961 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 16, 14, 14, 14, 32.7962 + 14, 170, 198, 186, 169, 145, 120, 104, 90, 22, 14, 14, 14, 14, 14, 14, 32.7963 + 14, 14, 48, 195, 185, 185, 164, 145, 130, 102, 55, 14, 14, 14, 186, 217, 32.7964 + 204, 192, 154, 124, 85, 43, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7965 + 14, 206, 189, 157, 154, 116, 105, 104, 54, 15, 14, 167, 217, 199, 188, 170, 32.7966 + 147, 111, 53, 14, 14, 14, 16, 19, 18, 14, 14, 17, 16, 18, 222, 224, 32.7967 + 206, 198, 130, 111, 89, 54, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.7968 + 14, 14, 15, 15, 18, 14, 14, 14, 104, 207, 182, 182, 189, 195, 172, 157, 32.7969 + 124, 30, 14, 54, 175, 157, 141, 134, 128, 143, 118, 68, 14, 14, 15, 14, 32.7970 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 18, 14, 15, 14, 14, 14, 14, 32.7971 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7972 + 14, 15, 16, 16, 18, 15, 14, 14, 90, 199, 182, 186, 189, 192, 192, 192, 32.7973 + 173, 145, 111, 95, 34, 19, 14, 14, 18, 14, 14, 14, 14, 14, 217, 206, 32.7974 + 190, 139, 126, 111, 84, 30, 14, 14, 14, 15, 16, 14, 15, 14, 14, 14, 32.7975 + 65, 200, 195, 172, 152, 98, 95, 84, 49, 14, 14, 14, 150, 206, 195, 192, 32.7976 + 173, 154, 145, 109, 49, 14, 14, 14, 14, 18, 15, 24, 20, 75, 213, 215, 32.7977 + 189, 162, 143, 128, 116, 85, 19, 16, 16, 14, 14, 14, 81, 226, 221, 207, 32.7978 + 186, 162, 136, 102, 79, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7979 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.7980 + 14, 14, 145, 183, 178, 164, 154, 164, 170, 182, 188, 192, 199, 204, 173, 167, 32.7981 + 105, 71, 19, 14, 14, 14, 14, 14, 155, 205, 197, 192, 204, 213, 205, 189, 32.7982 + 167, 157, 154, 145, 132, 95, 102, 68, 44, 14, 14, 15, 16, 14, 14, 145, 32.7983 + 186, 176, 148, 130, 132, 114, 75, 35, 14, 14, 18, 14, 14, 14, 14, 14, 32.7984 + 14, 14, 14, 14, 14, 14, 19, 16, 14, 14, 21, 14, 14, 100, 217, 219, 32.7985 + 206, 181, 157, 136, 104, 41, 14, 14, 14, 14, 14, 14, 16, 15, 14, 216, 32.7986 + 183, 159, 150, 136, 134, 120, 122, 71, 14, 14, 14, 14, 14, 175, 223, 205, 32.7987 + 197, 161, 148, 128, 78, 47, 14, 14, 14, 14, 14, 14, 14, 14, 14, 143, 32.7988 + 204, 186, 183, 162, 124, 122, 95, 50, 14, 14, 82, 217, 202, 195, 178, 136, 32.7989 + 159, 98, 15, 14, 15, 19, 21, 15, 14, 14, 14, 14, 14, 192, 222, 211, 32.7990 + 198, 162, 132, 102, 84, 14, 14, 14, 15, 55, 227, 226, 219, 210, 193, 169, 32.7991 + 139, 111, 55, 14, 14, 14, 14, 14, 14, 14, 128, 218, 204, 194, 181, 157, 32.7992 + 134, 102, 56, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 28, 176, 162, 32.7993 + 147, 105, 122, 136, 116, 116, 82, 28, 14, 14, 14, 14, 14, 14, 14, 14, 32.7994 + 14, 15, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 21, 181, 173, 169, 32.7995 + 145, 116, 92, 89, 73, 14, 14, 14, 14, 17, 14, 14, 14, 14, 93, 170, 32.7996 + 164, 164, 145, 137, 126, 92, 45, 14, 14, 14, 162, 199, 186, 178, 137, 118, 32.7997 + 78, 42, 14, 16, 14, 15, 16, 18, 14, 15, 14, 14, 79, 188, 162, 167, 32.7998 + 134, 102, 95, 90, 33, 14, 14, 170, 207, 189, 178, 162, 147, 114, 52, 14, 32.7999 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 82, 199, 193, 178, 147, 136, 85, 32.8000 + 82, 35, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8001 + 14, 16, 22, 14, 90, 199, 186, 181, 165, 178, 157, 145, 109, 19, 14, 73, 32.8002 + 164, 134, 126, 113, 111, 122, 102, 63, 14, 14, 16, 17, 14, 14, 14, 14, 32.8003 + 14, 14, 14, 14, 17, 14, 14, 49, 14, 14, 14, 14, 14, 14, 14, 14, 32.8004 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 32.8005 + 16, 16, 14, 14, 31, 190, 164, 183, 164, 175, 176, 161, 147, 126, 95, 72, 32.8006 + 15, 14, 14, 14, 16, 14, 14, 14, 14, 14, 198, 181, 170, 122, 114, 107, 32.8007 + 75, 19, 14, 26, 16, 16, 18, 14, 14, 14, 14, 14, 175, 169, 170, 169, 32.8008 + 120, 93, 93, 63, 27, 14, 14, 17, 186, 189, 178, 178, 157, 139, 132, 89, 32.8009 + 47, 14, 14, 16, 18, 19, 14, 14, 14, 116, 203, 188, 157, 136, 130, 104, 32.8010 + 98, 79, 14, 16, 15, 16, 14, 14, 128, 204, 198, 181, 173, 139, 120, 98, 32.8011 + 68, 14, 14, 14, 14, 15, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.8012 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 134, 172, 32.8013 + 162, 143, 136, 136, 147, 150, 154, 164, 172, 179, 145, 136, 90, 39, 14, 15, 32.8014 + 14, 14, 14, 14, 141, 185, 169, 157, 170, 183, 175, 157, 147, 143, 141, 132, 32.8015 + 113, 102, 78, 65, 14, 14, 14, 15, 18, 14, 14, 162, 173, 162, 132, 118, 32.8016 + 100, 81, 52, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8017 + 18, 14, 14, 28, 14, 14, 18, 14, 14, 159, 208, 204, 194, 159, 161, 141, 32.8018 + 85, 27, 14, 14, 15, 14, 14, 17, 20, 19, 26, 205, 145, 126, 134, 139, 32.8019 + 124, 114, 111, 53, 14, 14, 14, 14, 14, 207, 211, 195, 185, 161, 136, 126, 32.8020 + 82, 27, 14, 14, 14, 14, 18, 14, 14, 14, 35, 193, 178, 172, 167, 141, 32.8021 + 111, 114, 82, 26, 14, 14, 87, 213, 189, 190, 169, 128, 137, 68, 14, 17, 32.8022 + 14, 15, 16, 14, 14, 14, 16, 15, 30, 204, 197, 195, 178, 141, 109, 109, 32.8023 + 65, 14, 14, 14, 14, 104, 211, 197, 195, 170, 173, 143, 118, 100, 32, 14, 32.8024 + 14, 15, 14, 14, 14, 14, 161, 193, 181, 170, 150, 137, 122, 93, 46, 14, 32.8025 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 52, 162, 145, 126, 90, 97, 109, 32.8026 + 95, 93, 73, 29, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8027 + 14, 14, 16, 145, 14, 14, 15, 14, 40, 173, 147, 148, 122, 100, 79, 75, 32.8028 + 55, 14, 14, 14, 14, 16, 14, 14, 14, 14, 111, 145, 141, 134, 122, 120, 32.8029 + 120, 78, 29, 14, 14, 14, 136, 179, 165, 162, 128, 118, 111, 53, 14, 14, 32.8030 + 15, 21, 21, 16, 14, 14, 14, 14, 169, 152, 157, 155, 105, 85, 82, 61, 32.8031 + 16, 14, 14, 172, 192, 178, 172, 152, 141, 128, 53, 14, 14, 16, 14, 14, 32.8032 + 14, 16, 18, 14, 14, 130, 143, 154, 143, 113, 114, 92, 71, 19, 14, 14, 32.8033 + 14, 20, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.8034 + 137, 186, 183, 159, 167, 161, 139, 128, 76, 14, 14, 61, 147, 120, 104, 98, 32.8035 + 93, 100, 102, 73, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.8036 + 14, 14, 17, 124, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8037 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 16, 14, 16, 14, 14, 32.8038 + 14, 167, 155, 173, 130, 154, 147, 128, 116, 109, 69, 31, 14, 14, 14, 14, 32.8039 + 14, 14, 14, 14, 14, 14, 178, 161, 152, 107, 105, 109, 111, 21, 15, 24, 32.8040 + 18, 19, 23, 18, 14, 14, 14, 52, 194, 145, 164, 141, 93, 93, 89, 34, 32.8041 + 14, 14, 14, 34, 192, 165, 155, 162, 147, 128, 128, 84, 23, 14, 14, 14, 32.8042 + 14, 14, 14, 14, 14, 126, 185, 150, 124, 122, 109, 90, 76, 65, 14, 14, 32.8043 + 14, 15, 14, 14, 139, 172, 169, 155, 157, 124, 107, 90, 60, 14, 14, 14, 32.8044 + 14, 18, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8045 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 124, 154, 147, 126, 109, 114, 32.8046 + 116, 114, 120, 132, 134, 136, 114, 85, 72, 18, 14, 16, 14, 14, 14, 14, 32.8047 + 120, 155, 130, 116, 130, 145, 137, 128, 126, 128, 122, 122, 97, 93, 65, 37, 32.8048 + 14, 14, 15, 14, 14, 14, 14, 148, 161, 141, 111, 102, 102, 89, 81, 33, 32.8049 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 38, 92, 32.8050 + 20, 18, 14, 14, 14, 176, 193, 183, 178, 137, 152, 126, 98, 31, 14, 14, 32.8051 + 14, 14, 14, 14, 14, 14, 64, 178, 132, 114, 102, 111, 118, 118, 109, 35, 32.8052 + 14, 14, 14, 14, 45, 215, 193, 176, 170, 154, 124, 113, 68, 14, 14, 14, 32.8053 + 14, 14, 14, 14, 14, 14, 113, 189, 155, 172, 147, 113, 104, 92, 68, 14, 32.8054 + 14, 14, 89, 200, 175, 170, 148, 130, 143, 76, 14, 14, 15, 14, 14, 14, 32.8055 + 15, 16, 14, 14, 116, 173, 178, 183, 150, 130, 90, 102, 35, 14, 14, 14, 32.8056 + 14, 139, 186, 154, 152, 124, 145, 120, 107, 87, 19, 14, 14, 16, 14, 14, 32.8057 + 14, 14, 161, 167, 152, 141, 124, 116, 111, 78, 28, 14, 14, 14, 14, 14, 32.8058 + 14, 14, 14, 14, 14, 73, 150, 132, 116, 87, 87, 90, 82, 79, 79, 53, 32.8059 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 59, 189, 32.8060 + 14, 14, 14, 14, 79, 152, 132, 124, 104, 85, 78, 68, 33, 14, 14, 15, 32.8061 + 14, 14, 14, 14, 14, 14, 132, 134, 128, 116, 109, 105, 109, 65, 18, 14, 32.8062 + 14, 14, 124, 169, 155, 147, 118, 111, 132, 72, 14, 14, 14, 20, 20, 15, 32.8063 + 14, 14, 14, 72, 170, 147, 172, 116, 93, 85, 68, 35, 14, 14, 14, 165, 32.8064 + 173, 169, 165, 137, 134, 130, 67, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8065 + 40, 114, 116, 130, 114, 105, 69, 111, 46, 14, 14, 14, 20, 14, 14, 14, 32.8066 + 14, 14, 14, 14, 14, 14, 14, 14, 20, 14, 14, 15, 181, 167, 154, 137, 32.8067 + 154, 141, 120, 98, 47, 14, 14, 50, 145, 113, 97, 84, 82, 85, 95, 98, 32.8068 + 23, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 60, 122, 178, 32.8069 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8070 + 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 116, 159, 164, 32.8071 + 130, 141, 128, 104, 90, 81, 41, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8072 + 14, 14, 157, 141, 134, 98, 100, 105, 139, 42, 14, 15, 16, 15, 20, 14, 32.8073 + 14, 14, 14, 148, 161, 159, 170, 100, 79, 97, 67, 17, 14, 14, 14, 82, 32.8074 + 178, 136, 136, 128, 134, 116, 116, 93, 14, 14, 14, 14, 14, 14, 14, 14, 32.8075 + 16, 132, 155, 120, 100, 105, 93, 85, 72, 43, 15, 14, 14, 14, 14, 14, 32.8076 + 152, 141, 141, 122, 132, 105, 93, 75, 43, 14, 14, 14, 14, 18, 15, 14, 32.8077 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8078 + 14, 14, 14, 14, 14, 14, 113, 150, 134, 105, 97, 90, 97, 93, 93, 102, 32.8079 + 107, 107, 100, 59, 52, 14, 14, 16, 14, 14, 14, 14, 105, 132, 98, 90, 32.8080 + 98, 109, 102, 105, 114, 120, 114, 100, 90, 75, 60, 14, 14, 14, 29, 14, 32.8081 + 14, 14, 14, 128, 155, 137, 116, 93, 79, 76, 81, 55, 14, 14, 14, 14, 32.8082 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 82, 167, 143, 14, 14, 14, 16, 32.8083 + 14, 175, 175, 164, 157, 126, 136, 116, 107, 45, 14, 14, 14, 14, 14, 14, 32.8084 + 14, 14, 107, 141, 120, 107, 93, 100, 113, 113, 92, 23, 14, 14, 14, 14, 32.8085 + 93, 197, 167, 161, 148, 150, 118, 111, 45, 14, 14, 14, 14, 14, 14, 14, 32.8086 + 14, 26, 152, 152, 124, 162, 120, 105, 100, 72, 45, 14, 14, 14, 87, 197, 32.8087 + 170, 143, 118, 118, 137, 95, 20, 14, 14, 14, 14, 14, 14, 14, 14, 22, 32.8088 + 165, 128, 155, 165, 136, 130, 102, 87, 15, 14, 14, 14, 14, 152, 148, 116, 32.8089 + 109, 93, 109, 105, 104, 68, 15, 14, 14, 15, 14, 14, 14, 14, 137, 134, 32.8090 + 137, 116, 105, 93, 89, 55, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8091 + 14, 100, 147, 124, 102, 87, 78, 78, 78, 79, 75, 76, 97, 102, 107, 104, 32.8092 + 107, 109, 107, 107, 102, 120, 126, 113, 113, 145, 132, 100, 15, 14, 14, 14, 32.8093 + 118, 137, 126, 95, 76, 68, 71, 57, 15, 14, 14, 19, 15, 15, 14, 14, 32.8094 + 14, 17, 137, 109, 113, 98, 93, 92, 98, 59, 14, 14, 14, 14, 105, 150, 32.8095 + 141, 137, 116, 109, 107, 104, 32, 15, 14, 14, 14, 14, 14, 14, 27, 137, 32.8096 + 164, 147, 155, 95, 72, 85, 48, 15, 14, 14, 14, 147, 162, 134, 139, 132, 32.8097 + 118, 118, 104, 49, 14, 14, 14, 14, 14, 14, 14, 27, 105, 89, 107, 111, 32.8098 + 98, 90, 79, 81, 20, 14, 14, 27, 85, 14, 14, 14, 14, 14, 14, 14, 32.8099 + 14, 14, 14, 14, 14, 14, 14, 68, 165, 139, 134, 126, 132, 116, 109, 87, 32.8100 + 32, 14, 14, 24, 134, 100, 90, 76, 68, 81, 93, 102, 148, 126, 111, 109, 32.8101 + 113, 107, 107, 105, 109, 120, 116, 136, 170, 182, 154, 72, 14, 14, 14, 14, 32.8102 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8103 + 14, 14, 15, 15, 14, 14, 14, 14, 14, 65, 159, 152, 132, 116, 102, 95, 32.8104 + 75, 50, 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 143, 126, 32.8105 + 124, 98, 95, 97, 126, 98, 39, 14, 14, 14, 14, 14, 14, 14, 39, 161, 32.8106 + 143, 164, 141, 78, 68, 79, 34, 14, 14, 14, 14, 150, 157, 114, 118, 93, 32.8107 + 116, 104, 105, 100, 19, 14, 14, 14, 14, 14, 14, 14, 87, 126, 122, 107, 32.8108 + 89, 93, 71, 89, 72, 19, 18, 14, 18, 14, 14, 45, 148, 107, 120, 95, 32.8109 + 109, 98, 81, 63, 18, 14, 14, 14, 17, 14, 18, 14, 14, 14, 14, 14, 32.8110 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 32.8111 + 14, 14, 105, 141, 116, 95, 75, 76, 76, 72, 71, 82, 87, 92, 76, 49, 32.8112 + 24, 14, 15, 15, 14, 14, 14, 14, 97, 113, 79, 69, 82, 85, 82, 89, 32.8113 + 104, 109, 93, 92, 90, 57, 31, 14, 19, 14, 23, 14, 14, 14, 14, 93, 32.8114 + 167, 145, 118, 95, 82, 76, 95, 100, 87, 89, 98, 100, 100, 100, 105, 98, 32.8115 + 98, 105, 114, 122, 181, 202, 170, 39, 14, 14, 19, 14, 14, 154, 157, 145, 32.8116 + 128, 114, 111, 97, 124, 109, 92, 95, 102, 114, 126, 124, 116, 104, 137, 109, 32.8117 + 90, 76, 93, 111, 105, 98, 75, 14, 14, 14, 14, 14, 134, 148, 145, 143, 32.8118 + 126, 132, 120, 113, 82, 37, 57, 47, 59, 54, 52, 54, 109, 120, 165, 139, 32.8119 + 118, 130, 92, 89, 87, 54, 20, 14, 14, 14, 71, 192, 152, 120, 100, 100, 32.8120 + 104, 104, 49, 14, 14, 14, 14, 14, 14, 14, 34, 118, 143, 109, 126, 113, 32.8121 + 113, 116, 111, 46, 14, 14, 14, 14, 27, 137, 118, 90, 78, 76, 90, 90, 32.8122 + 97, 48, 14, 14, 14, 14, 14, 14, 14, 44, 120, 107, 114, 102, 95, 78, 32.8123 + 75, 42, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 109, 148, 124, 32.8124 + 93, 84, 71, 68, 71, 72, 73, 90, 111, 120, 124, 124, 132, 134, 139, 139, 32.8125 + 141, 139, 152, 143, 132, 139, 114, 69, 15, 14, 14, 14, 148, 126, 122, 87, 32.8126 + 64, 52, 65, 46, 14, 14, 14, 18, 20, 21, 14, 14, 14, 31, 130, 100, 32.8127 + 92, 78, 82, 78, 84, 52, 14, 14, 14, 14, 105, 148, 137, 130, 107, 100, 32.8128 + 87, 128, 93, 50, 14, 14, 14, 14, 14, 26, 130, 162, 170, 128, 97, 82, 32.8129 + 57, 75, 31, 14, 14, 14, 14, 116, 145, 107, 111, 120, 113, 116, 114, 111, 32.8130 + 47, 14, 14, 14, 14, 14, 52, 172, 134, 89, 111, 95, 72, 61, 126, 33, 32.8131 + 14, 14, 14, 72, 170, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8132 + 14, 38, 68, 165, 141, 105, 109, 97, 113, 107, 105, 82, 23, 14, 14, 14, 32.8133 + 132, 100, 82, 72, 65, 72, 100, 109, 126, 118, 120, 139, 145, 139, 132, 137, 32.8134 + 141, 145, 137, 162, 147, 114, 104, 45, 14, 14, 14, 14, 14, 14, 14, 14, 32.8135 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.8136 + 14, 14, 14, 14, 14, 38, 157, 137, 130, 90, 79, 79, 63, 26, 14, 14, 32.8137 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 154, 130, 126, 97, 90, 92, 32.8138 + 92, 137, 107, 24, 14, 14, 14, 14, 14, 53, 159, 137, 162, 143, 85, 72, 32.8139 + 65, 55, 14, 14, 14, 14, 14, 178, 141, 97, 100, 76, 100, 90, 93, 92, 32.8140 + 124, 87, 92, 90, 93, 120, 136, 159, 139, 120, 98, 98, 85, 85, 50, 92, 32.8141 + 69, 14, 15, 14, 19, 14, 14, 82, 143, 95, 104, 78, 98, 89, 82, 65, 32.8142 + 14, 14, 14, 14, 18, 14, 21, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.8143 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 15, 14, 14, 14, 14, 105, 139, 32.8144 + 109, 85, 73, 69, 68, 64, 64, 75, 76, 76, 55, 43, 14, 14, 14, 14, 32.8145 + 14, 14, 14, 14, 87, 105, 72, 64, 76, 75, 75, 81, 95, 105, 85, 79, 32.8146 + 76, 46, 14, 14, 14, 21, 16, 18, 14, 14, 14, 64, 167, 145, 116, 87, 32.8147 + 87, 71, 76, 95, 107, 122, 136, 130, 124, 124, 124, 128, 128, 139, 148, 157, 32.8148 + 145, 130, 90, 14, 14, 14, 17, 14, 14, 126, 141, 132, 107, 107, 102, 89, 32.8149 + 87, 100, 118, 130, 139, 152, 152, 143, 107, 113, 109, 118, 113, 78, 87, 90, 32.8150 + 102, 90, 65, 14, 14, 14, 14, 14, 157, 114, 136, 124, 100, 104, 98, 93, 32.8151 + 114, 104, 148, 118, 143, 150, 152, 143, 116, 126, 97, 126, 122, 122, 82, 81, 32.8152 + 71, 37, 14, 14, 14, 14, 49, 182, 122, 98, 97, 93, 84, 102, 105, 67, 32.8153 + 14, 14, 14, 14, 14, 20, 111, 182, 116, 136, 116, 78, 89, 89, 95, 14, 32.8154 + 16, 14, 14, 14, 76, 128, 93, 78, 65, 65, 75, 78, 87, 40, 14, 14, 32.8155 + 14, 14, 14, 14, 14, 82, 122, 93, 113, 95, 90, 71, 72, 37, 14, 14, 32.8156 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 118, 159, 124, 92, 78, 71, 71, 32.8157 + 68, 71, 78, 87, 89, 97, 105, 104, 111, 111, 113, 105, 120, 98, 107, 130, 32.8158 + 105, 81, 76, 27, 14, 14, 14, 33, 152, 164, 92, 84, 68, 69, 48, 35, 32.8159 + 14, 14, 14, 20, 37, 14, 14, 14, 14, 100, 122, 97, 92, 85, 61, 97, 32.8160 + 73, 37, 15, 14, 14, 14, 31, 162, 122, 137, 100, 113, 82, 76, 79, 97, 32.8161 + 100, 95, 95, 104, 157, 155, 155, 154, 148, 107, 81, 53, 72, 23, 14, 14, 32.8162 + 14, 14, 16, 35, 130, 89, 89, 104, 107, 111, 100, 95, 120, 120, 102, 105, 32.8163 + 130, 172, 186, 164, 132, 132, 105, 67, 60, 82, 52, 14, 14, 14, 14, 134, 32.8164 + 170, 109, 87, 89, 107, 113, 111, 105, 104, 100, 89, 84, 134, 128, 114, 113, 32.8165 + 114, 102, 79, 72, 79, 118, 98, 37, 14, 14, 14, 14, 130, 93, 78, 61, 32.8166 + 89, 81, 87, 92, 111, 113, 113, 111, 107, 107, 104, 98, 111, 102, 128, 114, 32.8167 + 84, 105, 72, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8168 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8169 + 14, 145, 152, 132, 128, 87, 67, 65, 32, 14, 14, 14, 14, 14, 14, 14, 32.8170 + 14, 14, 14, 14, 14, 14, 75, 159, 120, 102, 105, 73, 89, 92, 98, 113, 32.8171 + 114, 98, 90, 92, 143, 147, 152, 150, 130, 95, 65, 45, 61, 21, 14, 14, 32.8172 + 14, 14, 14, 203, 126, 84, 76, 73, 71, 78, 78, 79, 84, 98, 105, 109, 32.8173 + 128, 128, 126, 124, 116, 105, 93, 85, 79, 73, 72, 65, 42, 14, 14, 15, 32.8174 + 18, 14, 14, 143, 134, 98, 95, 107, 82, 64, 68, 56, 14, 14, 14, 14, 32.8175 + 14, 15, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8176 + 14, 14, 14, 14, 20, 14, 14, 14, 14, 14, 102, 130, 104, 82, 68, 61, 32.8177 + 68, 75, 65, 63, 68, 81, 50, 15, 14, 14, 16, 14, 16, 14, 14, 14, 32.8178 + 89, 105, 71, 63, 72, 76, 81, 92, 97, 89, 85, 73, 65, 27, 14, 14, 32.8179 + 15, 18, 15, 14, 14, 14, 14, 25, 179, 150, 100, 92, 79, 79, 81, 85, 32.8180 + 95, 104, 116, 118, 109, 109, 105, 98, 105, 114, 116, 109, 95, 107, 42, 14, 32.8181 + 14, 14, 14, 14, 14, 136, 111, 134, 107, 93, 84, 79, 75, 90, 95, 95, 32.8182 + 100, 114, 104, 89, 93, 49, 116, 93, 73, 82, 90, 87, 90, 87, 60, 14, 32.8183 + 14, 14, 14, 42, 139, 100, 105, 98, 90, 87, 92, 95, 102, 105, 107, 116, 32.8184 + 120, 126, 122, 122, 113, 116, 118, 107, 98, 90, 78, 57, 57, 14, 14, 14, 32.8185 + 14, 14, 14, 179, 107, 81, 81, 79, 72, 78, 82, 92, 100, 95, 93, 100, 32.8186 + 137, 164, 172, 155, 124, 84, 71, 67, 82, 71, 35, 14, 14, 14, 14, 14, 32.8187 + 105, 130, 130, 76, 68, 67, 63, 85, 69, 14, 14, 14, 14, 14, 14, 14, 32.8188 + 14, 116, 97, 105, 111, 116, 75, 92, 79, 15, 14, 14, 14, 14, 14, 14, 32.8189 + 14, 14, 14, 14, 14, 113, 141, 92, 89, 78, 69, 65, 75, 75, 72, 64, 32.8190 + 71, 71, 78, 75, 78, 79, 76, 75, 75, 79, 85, 81, 71, 67, 67, 24, 32.8191 + 14, 15, 14, 61, 157, 154, 90, 78, 46, 43, 47, 19, 14, 14, 15, 20, 32.8192 + 15, 14, 14, 14, 14, 134, 114, 102, 75, 75, 55, 76, 61, 19, 14, 14, 32.8193 + 15, 14, 14, 126, 155, 126, 76, 75, 76, 69, 69, 76, 82, 95, 113, 128, 32.8194 + 154, 162, 152, 116, 93, 67, 64, 71, 31, 14, 14, 14, 14, 14, 14, 15, 32.8195 + 105, 87, 89, 73, 76, 89, 102, 98, 104, 114, 120, 124, 145, 164, 165, 161, 32.8196 + 126, 97, 78, 82, 95, 64, 27, 14, 14, 14, 14, 145, 159, 124, 100, 116, 32.8197 + 150, 162, 150, 145, 147, 136, 120, 113, 95, 98, 89, 90, 85, 79, 60, 73, 32.8198 + 78, 90, 59, 21, 14, 14, 14, 14, 72, 85, 81, 78, 81, 97, 105, 107, 32.8199 + 85, 82, 82, 78, 79, 78, 78, 72, 64, 67, 82, 75, 50, 69, 46, 14, 32.8200 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8201 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 81, 143, 165, 128, 32.8202 + 98, 85, 71, 54, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8203 + 14, 14, 48, 155, 124, 84, 75, 72, 82, 79, 82, 93, 98, 100, 100, 124, 32.8204 + 132, 147, 143, 109, 81, 56, 57, 71, 21, 14, 14, 14, 14, 14, 14, 199, 32.8205 + 120, 81, 78, 67, 67, 67, 63, 60, 67, 81, 78, 85, 97, 93, 95, 100, 32.8206 + 104, 100, 97, 92, 82, 81, 61, 57, 54, 14, 14, 15, 16, 14, 14, 183, 32.8207 + 139, 102, 98, 100, 85, 75, 71, 44, 14, 14, 14, 14, 14, 14, 15, 15, 32.8208 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8209 + 14, 14, 16, 14, 14, 14, 104, 114, 100, 82, 64, 63, 71, 73, 64, 69, 32.8210 + 65, 61, 30, 14, 14, 14, 16, 14, 14, 14, 14, 14, 95, 107, 82, 75, 32.8211 + 79, 82, 85, 89, 84, 81, 60, 52, 45, 21, 14, 14, 15, 16, 15, 14, 32.8212 + 14, 14, 14, 14, 130, 143, 120, 84, 73, 71, 75, 81, 90, 98, 111, 113, 32.8213 + 93, 95, 98, 95, 92, 95, 81, 78, 49, 72, 30, 14, 14, 14, 14, 14, 32.8214 + 14, 118, 120, 114, 76, 69, 69, 68, 64, 75, 81, 82, 78, 78, 67, 42, 32.8215 + 29, 81, 124, 116, 79, 78, 104, 71, 75, 69, 24, 14, 14, 14, 14, 87, 32.8216 + 128, 98, 81, 78, 73, 72, 76, 76, 84, 89, 97, 97, 102, 104, 100, 98, 32.8217 + 98, 102, 97, 82, 79, 68, 65, 64, 22, 14, 14, 14, 14, 14, 14, 81, 32.8218 + 104, 72, 68, 68, 75, 79, 82, 75, 100, 104, 114, 118, 139, 148, 152, 132, 32.8219 + 79, 63, 60, 87, 69, 25, 14, 18, 19, 14, 14, 14, 120, 124, 87, 71, 32.8220 + 68, 64, 57, 69, 59, 14, 20, 16, 20, 19, 14, 14, 14, 126, 97, 95, 32.8221 + 107, 114, 67, 72, 46, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8222 + 14, 84, 128, 105, 85, 78, 73, 75, 82, 93, 93, 78, 68, 71, 73, 68, 32.8223 + 69, 69, 68, 67, 69, 81, 73, 67, 40, 47, 46, 14, 14, 14, 14, 124, 32.8224 + 173, 154, 105, 82, 60, 45, 64, 14, 14, 14, 20, 14, 20, 18, 14, 14, 32.8225 + 14, 147, 114, 111, 89, 84, 75, 82, 64, 14, 14, 15, 15, 14, 14, 47, 32.8226 + 124, 128, 89, 64, 42, 49, 68, 75, 89, 92, 93, 100, 122, 120, 105, 100, 32.8227 + 85, 68, 49, 39, 14, 14, 14, 14, 14, 14, 14, 14, 26, 60, 82, 76, 32.8228 + 68, 71, 79, 76, 98, 111, 113, 113, 107, 114, 100, 97, 116, 93, 79, 90, 32.8229 + 64, 24, 14, 14, 14, 14, 23, 159, 147, 116, 100, 107, 122, 130, 118, 113, 32.8230 + 107, 100, 93, 82, 89, 89, 81, 68, 67, 63, 46, 42, 73, 57, 25, 14, 32.8231 + 14, 14, 14, 14, 42, 98, 84, 78, 48, 85, 98, 104, 82, 73, 73, 68, 32.8232 + 67, 68, 67, 63, 67, 73, 78, 63, 48, 48, 24, 14, 14, 14, 14, 14, 32.8233 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8234 + 14, 14, 14, 14, 14, 14, 14, 26, 148, 134, 136, 105, 81, 73, 64, 34, 32.8235 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 23, 15, 17, 73, 32.8236 + 109, 92, 82, 63, 55, 65, 78, 93, 97, 82, 68, 78, 102, 107, 102, 92, 32.8237 + 73, 54, 39, 33, 14, 14, 14, 14, 14, 14, 14, 183, 97, 65, 59, 55, 32.8238 + 57, 63, 63, 64, 68, 81, 69, 73, 73, 68, 57, 60, 105, 102, 90, 85, 32.8239 + 84, 71, 56, 54, 19, 14, 18, 14, 14, 14, 30, 179, 130, 102, 89, 89, 32.8240 + 89, 67, 61, 29, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.8241 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 32.8242 + 14, 14, 107, 122, 107, 89, 79, 73, 82, 82, 79, 75, 72, 45, 16, 14, 32.8243 + 14, 14, 14, 14, 14, 14, 14, 14, 93, 124, 92, 67, 79, 87, 95, 95, 32.8244 + 89, 89, 69, 65, 23, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 32.8245 + 82, 128, 136, 89, 81, 79, 79, 81, 87, 93, 98, 98, 78, 75, 82, 75, 32.8246 + 72, 78, 63, 43, 39, 44, 16, 14, 14, 14, 14, 14, 14, 87, 130, 107, 32.8247 + 85, 78, 78, 69, 69, 69, 72, 71, 69, 68, 47, 31, 14, 116, 126, 116, 32.8248 + 84, 75, 111, 68, 97, 92, 14, 14, 14, 14, 14, 114, 114, 85, 65, 61, 32.8249 + 63, 64, 69, 76, 76, 78, 82, 79, 82, 81, 79, 78, 78, 78, 81, 73, 32.8250 + 65, 60, 50, 43, 14, 14, 14, 14, 14, 14, 14, 14, 97, 81, 79, 72, 32.8251 + 59, 64, 72, 78, 84, 92, 97, 93, 97, 92, 89, 87, 64, 68, 64, 49, 32.8252 + 27, 14, 14, 14, 14, 14, 14, 37, 164, 128, 93, 78, 71, 73, 61, 64, 32.8253 + 46, 14, 14, 14, 14, 14, 14, 14, 52, 152, 116, 105, 98, 107, 79, 89, 32.8254 + 48, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 31, 95, 109, 32.8255 + 100, 85, 71, 67, 69, 72, 73, 69, 60, 60, 60, 59, 55, 59, 59, 52, 32.8256 + 43, 56, 48, 46, 46, 54, 38, 14, 14, 14, 14, 155, 159, 111, 78, 44, 32.8257 + 48, 38, 57, 14, 14, 14, 19, 14, 14, 14, 15, 14, 53, 175, 122, 76, 32.8258 + 52, 46, 48, 55, 55, 14, 14, 14, 14, 14, 14, 14, 44, 75, 92, 81, 32.8259 + 68, 56, 53, 47, 48, 47, 54, 64, 93, 87, 76, 79, 79, 52, 22, 14, 32.8260 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 63, 89, 93, 92, 82, 67, 32.8261 + 60, 67, 69, 69, 72, 76, 69, 69, 97, 90, 64, 37, 18, 14, 14, 16, 32.8262 + 14, 14, 46, 152, 104, 85, 54, 52, 85, 93, 85, 82, 81, 78, 71, 67, 32.8263 + 57, 57, 56, 48, 48, 53, 49, 53, 47, 27, 14, 14, 14, 14, 14, 14, 32.8264 + 14, 55, 95, 90, 81, 97, 81, 73, 71, 67, 67, 59, 56, 57, 55, 50, 32.8265 + 54, 52, 46, 45, 63, 52, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8266 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8267 + 14, 14, 14, 85, 134, 132, 85, 75, 68, 65, 44, 15, 14, 14, 14, 14, 32.8268 + 14, 15, 14, 14, 14, 14, 14, 14, 29, 18, 14, 14, 44, 92, 85, 61, 32.8269 + 61, 57, 55, 52, 48, 48, 48, 63, 82, 84, 73, 72, 67, 41, 16, 14, 32.8270 + 14, 14, 14, 14, 14, 14, 14, 120, 95, 68, 71, 61, 53, 50, 50, 50, 32.8271 + 45, 54, 52, 50, 55, 48, 38, 44, 109, 97, 92, 76, 68, 65, 68, 78, 32.8272 + 14, 14, 20, 14, 14, 20, 48, 165, 113, 93, 84, 78, 73, 72, 69, 31, 32.8273 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8274 + 14, 14, 14, 14, 14, 14, 14, 14, 19, 14, 16, 14, 14, 14, 93, 134, 32.8275 + 89, 76, 60, 61, 63, 65, 59, 53, 82, 41, 14, 14, 14, 14, 14, 14, 32.8276 + 14, 14, 14, 14, 93, 145, 105, 71, 61, 63, 72, 73, 69, 64, 56, 53, 32.8277 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 34, 84, 124, 97, 32.8278 + 73, 72, 72, 72, 75, 76, 81, 81, 69, 69, 65, 57, 54, 52, 45, 38, 32.8279 + 57, 31, 14, 14, 14, 14, 14, 14, 14, 33, 111, 102, 100, 75, 64, 46, 32.8280 + 64, 59, 52, 46, 47, 45, 30, 16, 14, 162, 128, 92, 67, 57, 69, 43, 32.8281 + 69, 75, 14, 14, 14, 14, 14, 155, 97, 72, 64, 59, 64, 73, 75, 68, 32.8282 + 55, 59, 60, 61, 63, 63, 60, 61, 68, 64, 63, 67, 78, 60, 31, 14, 32.8283 + 14, 14, 14, 14, 14, 14, 16, 14, 21, 43, 92, 92, 89, 68, 57, 57, 32.8284 + 50, 59, 65, 65, 75, 81, 81, 75, 61, 55, 30, 14, 14, 14, 16, 14, 32.8285 + 14, 14, 14, 65, 157, 109, 75, 56, 63, 60, 57, 65, 52, 14, 18, 18, 32.8286 + 14, 14, 14, 14, 84, 139, 93, 78, 65, 76, 63, 89, 59, 14, 14, 14, 32.8287 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 26, 37, 72, 72, 71, 71, 32.8288 + 64, 64, 67, 67, 57, 59, 59, 56, 57, 60, 61, 61, 57, 64, 53, 63, 32.8289 + 63, 43, 24, 14, 14, 14, 14, 152, 141, 111, 85, 55, 69, 71, 84, 28, 32.8290 + 14, 14, 14, 15, 14, 14, 16, 14, 71, 167, 122, 76, 64, 61, 65, 76, 32.8291 + 76, 14, 14, 14, 19, 14, 14, 14, 16, 14, 23, 50, 55, 55, 54, 54, 32.8292 + 57, 61, 64, 67, 79, 73, 55, 35, 19, 14, 14, 14, 14, 14, 14, 14, 32.8293 + 14, 15, 16, 14, 14, 14, 14, 29, 64, 87, 79, 68, 72, 68, 60, 57, 32.8294 + 63, 64, 54, 50, 43, 34, 15, 14, 14, 17, 17, 14, 14, 14, 48, 130, 32.8295 + 109, 98, 61, 54, 64, 64, 60, 56, 56, 53, 49, 44, 46, 49, 49, 52, 32.8296 + 60, 64, 55, 46, 18, 14, 14, 14, 15, 14, 14, 14, 14, 15, 46, 56, 32.8297 + 97, 89, 95, 89, 73, 68, 67, 60, 56, 56, 54, 53, 57, 64, 56, 55, 32.8298 + 63, 36, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8299 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 37, 130, 32.8300 + 111, 122, 64, 56, 67, 52, 23, 14, 14, 14, 19, 14, 16, 16, 15, 14, 32.8301 + 14, 14, 14, 14, 19, 27, 16, 14, 14, 16, 29, 44, 63, 67, 65, 64, 32.8302 + 57, 57, 50, 53, 59, 64, 49, 33, 18, 14, 14, 14, 14, 14, 14, 14, 32.8303 + 14, 15, 14, 37, 79, 79, 90, 78, 61, 54, 57, 59, 48, 60, 57, 60, 32.8304 + 64, 53, 39, 41, 109, 93, 72, 56, 52, 61, 76, 92, 50, 14, 14, 14, 32.8305 + 14, 14, 26, 155, 93, 85, 60, 60, 65, 81, 90, 48, 14, 14, 14, 14, 32.8306 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8307 + 14, 14, 14, 14, 20, 14, 14, 14, 14, 14, 44, 118, 92, 75, 65, 64, 32.8308 + 69, 75, 79, 81, 73, 31, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8309 + 60, 130, 118, 87, 76, 65, 67, 69, 72, 67, 57, 49, 14, 14, 14, 14, 32.8310 + 14, 14, 14, 14, 19, 14, 14, 14, 14, 24, 72, 79, 71, 72, 71, 71, 32.8311 + 69, 69, 71, 72, 79, 75, 71, 63, 60, 64, 63, 61, 44, 20, 14, 14, 32.8312 + 14, 15, 14, 14, 14, 14, 61, 78, 118, 82, 68, 57, 53, 57, 64, 69, 32.8313 + 68, 43, 18, 14, 14, 143, 116, 79, 61, 65, 55, 73, 85, 107, 31, 14, 32.8314 + 14, 14, 24, 148, 93, 71, 67, 64, 75, 71, 53, 36, 47, 50, 55, 57, 32.8315 + 55, 56, 59, 57, 57, 56, 56, 53, 49, 34, 15, 14, 14, 14, 14, 17, 32.8316 + 14, 14, 22, 14, 14, 14, 26, 52, 78, 87, 71, 52, 64, 61, 61, 55, 32.8317 + 64, 63, 53, 44, 39, 14, 14, 14, 14, 14, 14, 23, 14, 14, 14, 59, 32.8318 + 124, 109, 82, 59, 52, 52, 71, 72, 59, 14, 14, 14, 14, 14, 14, 14, 32.8319 + 95, 122, 98, 71, 78, 79, 75, 113, 98, 31, 14, 14, 14, 14, 14, 14, 32.8320 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 31, 38, 44, 40, 45, 45, 32.8321 + 40, 41, 43, 39, 41, 47, 47, 46, 52, 57, 47, 55, 38, 16, 14, 14, 32.8322 + 14, 14, 14, 65, 61, 57, 59, 49, 52, 60, 71, 50, 14, 18, 14, 14, 32.8323 + 18, 19, 14, 14, 14, 69, 52, 63, 59, 61, 53, 61, 65, 21, 14, 14, 32.8324 + 14, 15, 19, 14, 14, 14, 14, 14, 14, 14, 28, 46, 60, 64, 54, 42, 32.8325 + 35, 24, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 16, 14, 14, 32.8326 + 14, 14, 14, 14, 14, 14, 23, 36, 63, 54, 43, 39, 35, 25, 15, 14, 32.8327 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 22, 56, 56, 63, 57, 52, 32.8328 + 50, 47, 46, 44, 42, 43, 38, 35, 35, 39, 43, 42, 43, 35, 20, 14, 32.8329 + 14, 14, 14, 15, 19, 18, 16, 14, 14, 14, 14, 14, 27, 28, 53, 67, 32.8330 + 49, 48, 49, 42, 40, 44, 43, 41, 41, 57, 59, 44, 30, 14, 14, 14, 32.8331 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8332 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 116, 128, 105, 82, 63, 33, 32.8333 + 60, 31, 14, 14, 14, 15, 20, 15, 18, 18, 16, 14, 14, 14, 14, 14, 32.8334 + 19, 20, 16, 14, 14, 14, 14, 14, 14, 26, 48, 60, 61, 50, 32, 22, 32.8335 + 29, 23, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 16, 14, 14, 32.8336 + 14, 23, 43, 50, 47, 47, 45, 45, 46, 53, 47, 40, 37, 24, 15, 14, 32.8337 + 69, 67, 55, 49, 49, 54, 68, 82, 49, 16, 14, 15, 14, 14, 14, 45, 32.8338 + 67, 63, 49, 57, 63, 78, 100, 72, 14, 14, 14, 14, 14, 14, 14, 14, 32.8339 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8340 + 15, 14, 15, 19, 14, 14, 14, 42, 59, 48, 42, 47, 50, 56, 64, 69, 32.8341 + 42, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 39, 52, 63, 32.8342 + 56, 46, 40, 45, 52, 54, 46, 40, 14, 14, 14, 14, 14, 14, 14, 14, 32.8343 + 14, 14, 15, 14, 14, 14, 15, 21, 36, 36, 39, 39, 39, 41, 43, 46, 32.8344 + 46, 47, 48, 44, 44, 41, 39, 39, 14, 14, 14, 14, 14, 14, 15, 16, 32.8345 + 14, 14, 18, 33, 76, 53, 48, 52, 38, 40, 41, 44, 43, 30, 14, 14, 32.8346 + 14, 43, 52, 35, 40, 46, 30, 63, 64, 81, 50, 14, 14, 14, 63, 132, 32.8347 + 90, 76, 73, 76, 73, 59, 31, 15, 19, 21, 24, 26, 27, 27, 28, 24, 32.8348 + 21, 27, 26, 18, 14, 14, 14, 14, 14, 14, 14, 20, 14, 14, 18, 14, 32.8349 + 16, 14, 14, 14, 14, 24, 38, 45, 47, 43, 40, 35, 32, 24, 14, 14, 32.8350 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 44, 57, 54, 45, 32.8351 + 59, 59, 84, 78, 72, 24, 18, 14, 14, 14, 14, 14, 48, 63, 65, 55, 32.8352 + 52, 47, 50, 68, 82, 46, 18, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.8353 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8354 + 14, 14, 14, 14, 14, 15, 14, 19, 19, 14, 14, 18, 14, 14, 14, 14, 32.8355 + 14, 14, 14, 14, 14, 14, 15, 19, 14, 18, 14, 18, 14, 14, 14, 16, 32.8356 + 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 24, 14, 32.8357 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 14, 14, 14, 14, 32.8358 + 14, 16, 16, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 18, 21, 18, 32.8359 + 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 32.8360 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8361 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 15, 18, 32.8362 + 20, 20, 19, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8363 + 14, 14, 14, 14, 14, 14, 19, 16, 15, 16, 18, 27, 14, 14, 14, 14, 32.8364 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8365 + 14, 14, 14, 14, 14, 47, 134, 109, 90, 60, 37, 26, 40, 16, 14, 14, 32.8366 + 14, 14, 15, 16, 18, 18, 16, 14, 14, 14, 14, 14, 31, 20, 15, 18, 32.8367 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.8368 + 14, 15, 14, 14, 18, 14, 14, 14, 14, 18, 14, 14, 14, 14, 14, 14, 32.8369 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8370 + 14, 14, 14, 14, 17, 15, 22, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8371 + 14, 14, 18, 14, 15, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8372 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8373 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 20, 14, 14, 14, 32.8374 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 21, 14, 14, 14, 14, 32.8375 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 18, 19, 32.8376 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8377 + 14, 14, 14, 14, 14, 14, 14, 22, 16, 19, 20, 20, 21, 16, 15, 14, 32.8378 + 21, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8379 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 105, 126, 90, 78, 75, 79, 32.8380 + 68, 55, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8381 + 14, 14, 14, 23, 14, 15, 16, 15, 15, 14, 14, 15, 18, 20, 26, 16, 32.8382 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 25, 14, 32.8383 + 14, 17, 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8384 + 14, 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8385 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8386 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8387 + 15, 19, 14, 14, 21, 14, 19, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8388 + 15, 14, 14, 15, 14, 14, 14, 16, 20, 14, 18, 14, 18, 14, 16, 14, 32.8389 + 14, 19, 14, 14, 14, 14, 14, 14, 18, 14, 14, 15, 14, 14, 14, 14, 32.8390 + 14, 14, 15, 14, 15, 20, 21, 15, 14, 14, 16, 15, 14, 14, 14, 14, 32.8391 + 14, 14, 14, 14, 14, 14, 15, 17, 15, 16, 14, 14, 14, 18, 15, 14, 32.8392 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8393 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8394 + 14, 14, 14, 14, 14, 14, 21, 21, 14, 14, 15, 15, 18, 19, 19, 16, 32.8395 + 14, 19, 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8396 + 16, 14, 14, 14, 15, 20, 21, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.8397 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8398 + 24, 136, 113, 109, 79, 45, 19, 31, 27, 14, 14, 14, 16, 14, 15, 21, 32.8399 + 18, 18, 15, 14, 14, 14, 14, 14, 16, 16, 16, 14, 14, 14, 14, 14, 32.8400 + 14, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.8401 + 15, 14, 16, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8402 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8403 + 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 32.8404 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8405 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 16, 14, 14, 32.8406 + 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 17, 14, 14, 14, 14, 32.8407 + 14, 14, 14, 14, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8408 + 14, 14, 14, 14, 14, 16, 14, 14, 14, 20, 14, 14, 14, 15, 14, 14, 32.8409 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8410 + 16, 14, 14, 18, 16, 20, 21, 19, 18, 34, 15, 14, 19, 14, 14, 15, 32.8411 + 14, 14, 14, 14, 14, 16, 16, 16, 17, 14, 14, 14, 14, 14, 16, 14, 32.8412 + 15, 14, 14, 14, 14, 14, 100, 98, 78, 71, 78, 68, 64, 50, 25, 14, 32.8413 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 16, 14, 32.8414 + 18, 16, 16, 14, 14, 20, 14, 14, 18, 19, 19, 18, 19, 18, 14, 14, 32.8415 + 14, 14, 14, 14, 14, 14, 15, 18, 16, 14, 14, 14, 14, 14, 14, 17, 32.8416 + 14, 14, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 32.8417 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 32.8418 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 16, 32.8419 + 16, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8420 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 32.8421 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 32.8422 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8423 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8424 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8425 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8426 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8427 + 14, 14, 14, 14, 16, 15, 14, 15, 15, 14, 15, 14, 14, 14, 14, 14, 32.8428 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8429 + 14, 15, 18, 19, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8430 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 67, 97, 100, 82, 32.8431 + 63, 38, 19, 29, 14, 14, 14, 14, 14, 14, 14, 18, 16, 16, 15, 14, 32.8432 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8433 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8434 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8435 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 17, 32.8436 + 15, 14, 14, 14, 14, 14, 14, 15, 17, 15, 14, 14, 14, 14, 14, 14, 32.8437 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8438 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8439 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 14, 32.8440 + 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8441 + 16, 17, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 17, 16, 14, 32.8442 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8443 + 14, 15, 18, 18, 14, 14, 14, 14, 14, 14, 14, 16, 14, 14, 14, 14, 32.8444 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 19, 19, 15, 14, 19, 14, 14, 32.8445 + 14, 23, 105, 81, 73, 68, 73, 42, 48, 46, 14, 14, 14, 14, 14, 14, 32.8446 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 18, 15, 14, 14, 14, 32.8447 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8448 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 18, 14, 14, 14, 32.8449 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8450 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8451 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.8452 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8453 + 14, 14, 14, 14, 15, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 32.8454 + 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8455 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8456 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8457 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 32.8458 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8459 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8460 + 16, 15, 15, 14, 14, 14, 14, 15, 18, 15, 14, 14, 14, 14, 14, 14, 32.8461 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8462 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8463 + 14, 14, 14, 14, 14, 14, 14, 14, 75, 92, 85, 55, 46, 46, 31, 21, 32.8464 + 14, 14, 14, 14, 14, 14, 14, 16, 16, 15, 14, 14, 14, 14, 14, 14, 32.8465 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8466 + 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8467 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8468 + 14, 14, 14, 14, 14, 14, 14, 16, 18, 14, 14, 16, 15, 14, 14, 14, 32.8469 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 32.8470 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8471 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8472 + 16, 14, 14, 14, 14, 14, 14, 14, 14, 15, 16, 14, 14, 14, 15, 14, 32.8473 + 14, 14, 14, 14, 14, 14, 14, 14, 18, 17, 16, 15, 14, 14, 14, 14, 32.8474 + 14, 14, 14, 14, 14, 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8475 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8476 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8477 + 14, 14, 14, 15, 18, 20, 20, 18, 16, 14, 14, 14, 14, 36, 90, 78, 32.8478 + 71, 65, 63, 39, 40, 31, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8479 + 15, 15, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8480 + 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8481 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8482 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 18, 19, 16, 32.8483 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8484 + 14, 14, 14, 14, 19, 18, 18, 16, 14, 14, 14, 14, 15, 14, 14, 14, 32.8485 + 14, 14, 14, 14, 14, 14, 14, 15, 18, 18, 15, 14, 14, 14, 14, 14, 32.8486 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.8487 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8488 + 14, 14, 14, 14, 15, 16, 16, 15, 15, 15, 14, 14, 14, 14, 14, 14, 32.8489 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8490 + 14, 14, 14, 14, 14, 14, 14, 15, 16, 15, 16, 14, 14, 14, 15, 14, 32.8491 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 32.8492 + 15, 15, 15, 15, 15, 15, 15, 15, 18, 18, 18, 18, 14, 14, 14, 14, 32.8493 + 14, 14, 15, 15, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8494 + 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 32.8495 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8496 + 14, 14, 14, 55, 95, 92, 79, 43, 29, 31, 14, 14, 14, 14, 14, 14, 32.8497 + 15, 14, 14, 16, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8498 + 14, 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8499 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 15, 14, 16, 32.8500 + 18, 18, 16, 14, 15, 15, 15, 16, 16, 15, 15, 14, 14, 14, 14, 14, 32.8501 + 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 15, 14, 15, 15, 14, 32.8502 + 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8503 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8504 + 14, 14, 14, 14, 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 32.8505 + 14, 14, 14, 15, 14, 15, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 32.8506 + 14, 14, 16, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8507 + 14, 14, 14, 14, 14, 14, 16, 15, 15, 14, 14, 14, 15, 15, 15, 15, 32.8508 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8509 + 14, 14, 14, 14, 16, 17, 19, 16, 14, 14, 14, 14, 14, 14, 19, 18, 32.8510 + 19, 21, 21, 16, 18, 14, 14, 14, 14, 72, 95, 84, 68, 56, 47, 34, 32.8511 + 33, 21, 14, 14, 14, 14, 14, 15, 18, 18, 16, 14, 14, 14, 14, 14, 32.8512 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8513 + 16, 18, 15, 14, 14, 14, 15, 15, 18, 15, 15, 14, 14, 14, 14, 14, 32.8514 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8515 + 14, 14, 14, 14, 14, 14, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8516 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8517 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8518 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8519 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 15, 32.8520 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8521 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8522 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 32.8523 + 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 15, 15, 14, 32.8524 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8525 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.8526 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8527 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8528 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 28, 104, 32.8529 + 65, 44, 40, 27, 21, 27, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8530 + 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8531 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8532 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8533 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8534 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8535 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8536 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8537 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8538 + 14, 14, 14, 14, 15, 18, 18, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8539 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8540 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8541 + 14, 14, 14, 14, 14, 14, 16, 18, 16, 14, 14, 14, 14, 14, 14, 14, 32.8542 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 32.8543 + 15, 14, 14, 14, 14, 78, 69, 68, 41, 32, 27, 27, 31, 23, 14, 14, 32.8544 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8545 + 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 16, 15, 14, 14, 32.8546 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8547 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8548 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8549 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8550 + 14, 15, 15, 16, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 15, 14, 32.8551 + 14, 14, 14, 17, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8552 + 14, 14, 14, 14, 16, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8553 + 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, 32.8554 + 15, 16, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8555 + 14, 14, 14, 14, 16, 18, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 32.8556 + 14, 15, 16, 19, 14, 14, 14, 15, 16, 18, 18, 16, 16, 15, 15, 14, 32.8557 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8558 + 15, 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 15, 14, 14, 14, 14, 32.8559 + 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 20, 18, 14, 14, 32.8560 + 14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8561 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 27, 84, 57, 31, 27, 28, 32.8562 + 27, 32, 37, 27, 26, 22, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8563 + 14, 14, 14, 14, 16, 18, 18, 16, 16, 16, 15, 14, 14, 14, 14, 14, 32.8564 + 14, 15, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8565 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 19, 16, 15, 16, 16, 32.8566 + 16, 16, 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8567 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8568 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8569 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8570 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 32.8571 + 16, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8572 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8573 + 14, 14, 14, 14, 15, 14, 14, 14, 14, 14, 14, 14, 15, 15, 16, 16, 32.8574 + 15, 16, 19, 18, 14, 14, 14, 14, 15, 18, 17, 18, 14, 15, 15, 18, 32.8575 + 19, 19, 18, 15, 14, 14, 14, 14, 14, 14, 18, 20, 14, 14, 14, 14, 32.8576 + 14, 56, 47, 60, 27, 27, 21, 29, 46, 43, 34, 38, 14, 14, 14, 14, 32.8577 + 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8578 + 14, 14, 14, 15, 16, 16, 18, 16, 16, 15, 15, 14, 18, 15, 14, 14, 32.8579 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8580 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 32.8581 + 15, 15, 15, 14, 15, 15, 15, 15, 15, 14, 15, 14, 14, 14, 14, 14, 32.8582 + 14, 14, 14, 14 }; 32.8583 +/* Define image 'dynamite' of size 100x100x1x3 and type 'const unsigned char' */ 32.8584 +const unsigned char data_dynamite[] = { 32.8585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 208, 255, 255, 255, 255, 255, 32.8635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 85, 255, 32.8641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8646 + 255, 255, 255, 255, 255, 177, 61, 23, 23, 23, 23, 23, 23, 23, 100, 139, 32.8647 + 61, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8652 + 255, 255, 255, 255, 255, 255, 255, 239, 77, 0, 21, 127, 127, 124, 124, 124, 32.8653 + 124, 0, 0, 0, 15, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 30, 15, 113, 234, 234, 32.8659 + 231, 229, 229, 229, 229, 41, 34, 15, 224, 255, 255, 255, 255, 255, 255, 255, 32.8660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 21, 32.8665 + 197, 234, 234, 234, 230, 229, 229, 229, 229, 208, 0, 167, 255, 255, 255, 255, 32.8666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 46, 32.8671 + 46, 46, 0, 173, 239, 234, 234, 232, 229, 229, 229, 229, 229, 62, 30, 253, 32.8672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8677 + 216, 61, 0, 0, 0, 0, 0, 94, 238, 234, 234, 230, 229, 229, 229, 229, 32.8678 + 124, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 115, 0, 0, 38, 32.8682 + 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8683 + 255, 255, 255, 255, 115, 7, 21, 94, 130, 72, 0, 86, 234, 234, 234, 230, 32.8684 + 229, 229, 215, 138, 0, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 129, 32.8688 + 13, 74, 109, 26, 0, 92, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8689 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 130, 239, 239, 159, 0, 28, 207, 32.8690 + 234, 170, 85, 84, 83, 83, 27, 0, 85, 255, 255, 255, 255, 255, 255, 255, 32.8691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8694 + 255, 255, 199, 0, 91, 216, 216, 196, 91, 19, 23, 170, 255, 255, 255, 255, 32.8695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 43, 65, 65, 32.8696 + 0, 79, 217, 235, 234, 21, 46, 69, 69, 69, 69, 185, 255, 255, 255, 255, 32.8697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8700 + 255, 255, 255, 255, 255, 193, 15, 26, 202, 216, 216, 216, 216, 157, 54, 15, 32.8701 + 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 123, 46, 46, 46, 46, 32.8702 + 61, 61, 0, 0, 65, 224, 239, 237, 170, 0, 239, 255, 255, 255, 255, 255, 32.8703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8706 + 255, 255, 255, 255, 255, 255, 255, 255, 100, 7, 32, 202, 216, 216, 216, 216, 32.8707 + 216, 216, 210, 65, 0, 23, 139, 255, 255, 255, 255, 255, 255, 139, 7, 0, 32.8708 + 77, 115, 115, 115, 208, 247, 154, 0, 7, 21, 21, 57, 85, 77, 255, 255, 32.8709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 115, 6, 85, 216, 218, 32.8713 + 218, 218, 216, 216, 216, 216, 216, 216, 150, 52, 6, 38, 231, 255, 255, 239, 32.8714 + 38, 0, 100, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 139, 139, 23, 32.8715 + 23, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 0, 32.8719 + 130, 216, 225, 244, 244, 244, 225, 216, 216, 216, 216, 216, 216, 216, 163, 13, 32.8720 + 0, 170, 239, 30, 15, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8725 + 255, 146, 0, 124, 216, 221, 244, 244, 244, 244, 244, 218, 216, 216, 216, 216, 32.8726 + 216, 216, 216, 176, 72, 0, 46, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.8727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8731 + 255, 255, 255, 255, 123, 0, 85, 216, 222, 242, 244, 244, 244, 244, 244, 232, 32.8732 + 216, 216, 216, 216, 216, 216, 216, 216, 202, 111, 0, 38, 224, 255, 255, 255, 32.8733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8737 + 255, 255, 255, 255, 255, 255, 255, 138, 0, 98, 209, 224, 243, 244, 244, 244, 32.8738 + 244, 244, 244, 234, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 163, 0, 32.8739 + 54, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 35, 111, 216, 217, 239, 32.8744 + 244, 244, 244, 244, 244, 244, 244, 234, 216, 216, 216, 216, 216, 216, 216, 216, 32.8745 + 216, 216, 216, 183, 13, 0, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 100, 13, 32.8750 + 189, 219, 240, 244, 244, 244, 244, 244, 244, 244, 244, 234, 216, 216, 216, 216, 32.8751 + 216, 216, 216, 216, 216, 216, 216, 214, 178, 11, 69, 239, 255, 255, 255, 255, 32.8752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8756 + 231, 46, 0, 144, 221, 241, 244, 244, 244, 244, 244, 244, 244, 244, 244, 225, 32.8757 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 206, 193, 128, 0, 146, 32.8758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8762 + 255, 255, 255, 255, 69, 26, 144, 219, 238, 244, 244, 244, 244, 244, 244, 244, 32.8763 + 244, 244, 237, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 194, 32.8764 + 193, 193, 76, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8768 + 255, 255, 255, 255, 255, 255, 255, 139, 0, 170, 220, 238, 244, 244, 244, 244, 32.8769 + 244, 244, 244, 244, 244, 239, 221, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8770 + 216, 216, 212, 193, 193, 193, 187, 29, 54, 255, 255, 255, 255, 255, 255, 255, 32.8771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 117, 221, 239, 244, 32.8775 + 244, 244, 244, 244, 244, 244, 244, 244, 238, 220, 216, 216, 216, 216, 216, 216, 32.8776 + 216, 216, 216, 216, 216, 216, 204, 193, 193, 193, 193, 163, 0, 162, 255, 255, 32.8777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 30, 58, 32.8781 + 216, 237, 244, 244, 244, 244, 244, 244, 244, 244, 244, 236, 219, 216, 216, 216, 32.8782 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 200, 193, 193, 193, 193, 193, 32.8783 + 52, 30, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8787 + 226, 21, 19, 196, 227, 244, 244, 244, 244, 244, 244, 244, 244, 244, 241, 222, 32.8788 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 200, 193, 32.8789 + 193, 193, 193, 193, 175, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8793 + 255, 255, 255, 252, 65, 26, 193, 238, 244, 244, 244, 244, 244, 244, 244, 244, 32.8794 + 244, 240, 223, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8795 + 216, 216, 200, 193, 193, 193, 193, 193, 193, 76, 53, 254, 255, 255, 255, 255, 32.8796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8799 + 255, 255, 255, 255, 255, 255, 254, 96, 0, 170, 242, 244, 244, 244, 244, 244, 32.8800 + 244, 244, 244, 244, 239, 221, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8801 + 216, 216, 216, 216, 216, 216, 200, 193, 193, 193, 193, 193, 193, 157, 0, 177, 32.8802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 76, 6, 117, 231, 244, 244, 32.8806 + 244, 244, 244, 244, 244, 244, 244, 243, 224, 216, 216, 216, 216, 216, 216, 216, 32.8807 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 196, 193, 193, 193, 193, 193, 32.8808 + 193, 193, 70, 76, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 30, 13, 130, 32.8812 + 227, 244, 244, 244, 244, 244, 244, 244, 244, 244, 242, 222, 216, 216, 216, 216, 32.8813 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 209, 193, 193, 32.8814 + 193, 193, 193, 193, 193, 193, 140, 0, 238, 255, 255, 255, 255, 255, 255, 255, 32.8815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 32.8818 + 23, 39, 176, 221, 241, 244, 244, 244, 244, 244, 244, 244, 244, 244, 221, 216, 32.8819 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8820 + 216, 200, 193, 193, 193, 193, 193, 193, 193, 193, 193, 17, 170, 255, 255, 255, 32.8821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8824 + 255, 253, 150, 15, 52, 202, 222, 242, 244, 244, 244, 244, 244, 244, 244, 244, 32.8825 + 244, 225, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8826 + 216, 216, 216, 216, 216, 200, 193, 193, 193, 193, 193, 193, 193, 193, 193, 64, 32.8827 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8830 + 255, 255, 255, 255, 255, 132, 7, 65, 209, 216, 238, 244, 244, 244, 244, 244, 32.8831 + 244, 244, 244, 244, 235, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8832 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 197, 193, 193, 193, 193, 193, 193, 32.8833 + 193, 193, 193, 122, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8836 + 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 85, 216, 216, 231, 244, 244, 32.8837 + 244, 244, 244, 244, 244, 244, 244, 232, 216, 216, 216, 216, 216, 216, 216, 216, 32.8838 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 215, 193, 193, 193, 32.8839 + 193, 193, 193, 193, 193, 193, 193, 128, 85, 255, 255, 255, 255, 255, 255, 255, 32.8840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 170, 0, 72, 216, 217, 32.8843 + 232, 244, 244, 244, 244, 244, 244, 244, 244, 244, 232, 216, 216, 216, 216, 216, 32.8844 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8845 + 208, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 87, 85, 255, 255, 255, 32.8846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 157, 0, 32.8849 + 72, 216, 218, 234, 244, 244, 244, 244, 244, 244, 244, 244, 244, 234, 218, 216, 32.8850 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8851 + 216, 216, 216, 216, 202, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 64, 32.8852 + 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8855 + 250, 141, 13, 85, 202, 219, 232, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.8856 + 232, 217, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8857 + 216, 216, 216, 216, 216, 216, 216, 216, 197, 193, 193, 193, 193, 193, 193, 193, 32.8858 + 193, 193, 193, 40, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8861 + 255, 255, 255, 255, 203, 6, 65, 209, 220, 238, 244, 244, 244, 244, 244, 244, 32.8862 + 244, 244, 244, 239, 221, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8863 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 209, 193, 193, 193, 193, 32.8864 + 193, 193, 193, 193, 193, 193, 163, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.8865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8867 + 255, 255, 255, 255, 255, 255, 255, 187, 0, 45, 216, 216, 231, 244, 244, 244, 32.8868 + 244, 244, 244, 244, 244, 244, 243, 220, 216, 216, 216, 216, 216, 216, 216, 216, 32.8869 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 215, 196, 32.8870 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 96, 46, 255, 255, 255, 255, 32.8871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 58, 189, 216, 225, 32.8874 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 231, 216, 216, 216, 216, 216, 32.8875 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8876 + 216, 214, 202, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 205, 29, 139, 32.8877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 46, 52, 32.8880 + 196, 216, 227, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 232, 216, 216, 32.8881 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8882 + 216, 216, 216, 216, 216, 206, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8883 + 193, 152, 0, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8886 + 224, 69, 26, 157, 216, 230, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.8887 + 229, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8888 + 216, 216, 216, 216, 216, 216, 216, 216, 209, 194, 193, 193, 193, 193, 193, 193, 32.8889 + 193, 193, 193, 193, 206, 14, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8892 + 255, 255, 255, 216, 54, 0, 170, 216, 220, 244, 244, 244, 244, 244, 244, 244, 32.8893 + 244, 244, 244, 227, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8894 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 194, 193, 193, 193, 32.8895 + 193, 193, 193, 193, 193, 193, 193, 193, 115, 0, 247, 255, 255, 255, 255, 255, 32.8896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8898 + 255, 255, 255, 255, 255, 255, 239, 38, 13, 183, 216, 216, 234, 244, 244, 244, 32.8899 + 244, 244, 244, 244, 244, 244, 232, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8900 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 199, 32.8901 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 192, 35, 131, 255, 255, 32.8902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 30, 13, 189, 216, 216, 216, 32.8905 + 234, 244, 244, 244, 244, 244, 244, 244, 244, 234, 216, 216, 216, 216, 216, 216, 32.8906 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8907 + 216, 216, 206, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 79, 32.8908 + 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 23, 19, 176, 32.8911 + 216, 216, 216, 216, 234, 244, 244, 244, 244, 244, 244, 244, 238, 216, 216, 216, 32.8912 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8913 + 216, 216, 216, 216, 216, 213, 195, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8914 + 193, 193, 129, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 32.8917 + 61, 26, 189, 216, 216, 216, 216, 216, 234, 244, 244, 244, 244, 244, 244, 237, 32.8918 + 217, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8919 + 216, 216, 216, 216, 216, 216, 216, 216, 213, 199, 193, 193, 193, 193, 193, 193, 32.8920 + 193, 193, 193, 193, 193, 193, 41, 100, 255, 255, 255, 255, 255, 255, 255, 255, 32.8921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8923 + 255, 255, 192, 13, 0, 170, 216, 216, 216, 216, 216, 216, 221, 244, 244, 244, 32.8924 + 244, 244, 235, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8925 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 201, 193, 193, 193, 32.8926 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 164, 0, 208, 255, 255, 255, 255, 32.8927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8929 + 255, 255, 255, 255, 247, 142, 32, 0, 65, 98, 98, 98, 130, 196, 216, 216, 32.8930 + 216, 232, 244, 244, 244, 232, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8931 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 210, 32.8932 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 187, 29, 54, 255, 32.8933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8935 + 255, 255, 255, 255, 255, 255, 255, 239, 61, 0, 39, 39, 39, 39, 39, 26, 32.8936 + 0, 0, 78, 144, 202, 216, 226, 226, 226, 216, 216, 216, 216, 216, 216, 216, 32.8937 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8938 + 216, 216, 213, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8939 + 76, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 72, 216, 216, 32.8942 + 216, 216, 216, 196, 157, 91, 39, 0, 39, 144, 216, 216, 216, 216, 216, 216, 32.8943 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8944 + 216, 216, 216, 216, 216, 211, 195, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8945 + 193, 193, 193, 128, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 32.8948 + 85, 202, 216, 216, 216, 216, 216, 216, 216, 216, 202, 144, 52, 13, 72, 189, 32.8949 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8950 + 216, 216, 216, 216, 216, 216, 216, 216, 210, 194, 193, 193, 193, 193, 193, 193, 32.8951 + 193, 193, 193, 193, 193, 193, 169, 40, 100, 255, 255, 255, 255, 255, 255, 255, 32.8952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8954 + 255, 255, 7, 32, 209, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8955 + 209, 98, 0, 45, 205, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8956 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 212, 197, 193, 193, 193, 32.8957 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 40, 0, 208, 255, 255, 255, 32.8958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8960 + 255, 255, 255, 255, 255, 197, 0, 183, 216, 216, 216, 216, 216, 216, 216, 216, 32.8961 + 216, 216, 216, 216, 216, 199, 163, 5, 58, 184, 214, 216, 216, 216, 216, 216, 32.8962 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 211, 196, 32.8963 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 152, 0, 216, 32.8964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 45, 216, 216, 216, 216, 216, 32.8967 + 216, 216, 216, 216, 216, 216, 216, 216, 209, 193, 193, 116, 11, 23, 187, 216, 32.8968 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8969 + 216, 209, 198, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8970 + 181, 23, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 124, 216, 32.8973 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 200, 193, 193, 193, 32.8974 + 157, 17, 64, 199, 199, 211, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8975 + 216, 216, 216, 213, 206, 195, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.8976 + 193, 193, 193, 193, 64, 23, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8979 + 224, 0, 170, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8980 + 200, 193, 193, 193, 193, 140, 0, 116, 193, 194, 210, 216, 216, 216, 216, 216, 32.8981 + 216, 216, 216, 216, 216, 216, 206, 195, 193, 193, 193, 193, 193, 193, 193, 193, 32.8982 + 193, 193, 193, 193, 193, 193, 193, 116, 0, 185, 255, 255, 255, 255, 255, 255, 32.8983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8985 + 255, 255, 255, 255, 170, 32, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.8986 + 216, 216, 216, 216, 200, 193, 193, 193, 193, 193, 87, 5, 105, 193, 193, 205, 32.8987 + 216, 216, 216, 216, 216, 216, 216, 216, 209, 198, 193, 193, 193, 193, 193, 193, 32.8988 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 163, 5, 115, 255, 255, 255, 32.8989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8991 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 75, 216, 216, 216, 216, 216, 216, 32.8992 + 216, 216, 216, 216, 216, 216, 216, 216, 201, 193, 193, 193, 193, 193, 193, 76, 32.8993 + 0, 152, 193, 193, 199, 213, 216, 216, 213, 213, 203, 196, 193, 193, 193, 193, 32.8994 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 187, 29, 54, 32.8995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.8997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 80, 217, 216, 32.8998 + 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 209, 193, 193, 193, 32.8999 + 193, 193, 193, 193, 52, 52, 193, 193, 193, 193, 201, 201, 193, 193, 193, 193, 32.9000 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9001 + 193, 76, 15, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9004 + 170, 22, 218, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.9005 + 213, 193, 193, 193, 193, 193, 193, 193, 146, 0, 128, 193, 193, 193, 193, 193, 32.9006 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9007 + 193, 193, 193, 193, 128, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9010 + 255, 255, 255, 255, 239, 0, 157, 216, 216, 216, 216, 216, 216, 216, 216, 216, 32.9011 + 216, 216, 216, 216, 208, 193, 193, 193, 193, 193, 193, 193, 193, 76, 11, 169, 32.9012 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9013 + 193, 193, 193, 193, 193, 193, 193, 193, 11, 100, 255, 255, 255, 255, 255, 255, 32.9014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 78, 216, 216, 216, 216, 216, 32.9017 + 216, 216, 216, 216, 216, 216, 216, 216, 201, 193, 193, 193, 193, 193, 193, 193, 32.9018 + 193, 187, 29, 99, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9019 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 46, 0, 247, 255, 255, 32.9020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 32, 216, 32.9023 + 216, 216, 213, 213, 213, 216, 216, 216, 216, 216, 216, 210, 193, 193, 193, 193, 32.9024 + 193, 193, 193, 193, 193, 193, 105, 0, 193, 193, 193, 193, 193, 193, 193, 193, 32.9025 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 187, 58, 7, 32.9026 + 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9029 + 255, 224, 0, 189, 216, 208, 193, 193, 193, 201, 211, 216, 216, 216, 208, 193, 32.9030 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 0, 152, 193, 193, 193, 32.9031 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9032 + 193, 116, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9035 + 255, 255, 255, 255, 255, 255, 23, 19, 216, 193, 193, 193, 193, 193, 193, 199, 32.9036 + 202, 199, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 46, 32.9037 + 64, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9038 + 193, 193, 193, 193, 128, 17, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 0, 138, 196, 193, 193, 32.9042 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9043 + 193, 193, 193, 140, 0, 140, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9044 + 193, 193, 193, 193, 193, 193, 193, 169, 11, 61, 239, 255, 255, 255, 255, 255, 32.9045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 32.9048 + 7, 192, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9049 + 193, 193, 193, 193, 193, 193, 193, 193, 58, 99, 193, 193, 193, 193, 193, 193, 32.9050 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 163, 40, 38, 247, 255, 255, 32.9051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9054 + 255, 255, 255, 255, 54, 38, 203, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9055 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 99, 32, 199, 193, 32.9056 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 29, 15, 32.9057 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9060 + 255, 255, 255, 255, 255, 255, 255, 255, 224, 15, 92, 200, 193, 193, 193, 193, 32.9061 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9062 + 169, 0, 181, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9063 + 193, 140, 0, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 151, 32.9067 + 194, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9068 + 193, 193, 193, 193, 193, 17, 128, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9069 + 193, 193, 193, 193, 175, 17, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9073 + 255, 255, 100, 53, 218, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9074 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 64, 76, 193, 193, 193, 193, 193, 32.9075 + 193, 193, 193, 193, 193, 193, 193, 169, 23, 30, 239, 255, 255, 255, 255, 255, 32.9076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9079 + 255, 255, 255, 255, 255, 255, 208, 0, 174, 202, 193, 193, 193, 193, 193, 193, 32.9080 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 122, 5, 193, 32.9081 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 40, 38, 200, 255, 255, 32.9082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 0, 226, 194, 193, 32.9086 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9087 + 193, 193, 0, 157, 193, 193, 193, 193, 193, 193, 193, 193, 193, 187, 58, 7, 32.9088 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9092 + 15, 30, 222, 204, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9093 + 193, 193, 193, 193, 193, 193, 40, 116, 193, 193, 193, 193, 193, 193, 193, 193, 32.9094 + 181, 46, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9098 + 255, 255, 255, 255, 208, 0, 96, 216, 193, 193, 193, 193, 193, 193, 193, 193, 32.9099 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 81, 64, 193, 193, 193, 193, 32.9100 + 193, 193, 193, 175, 35, 23, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 0, 130, 195, 193, 193, 193, 32.9105 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 128, 64, 32.9106 + 193, 193, 193, 193, 193, 193, 169, 23, 30, 185, 255, 255, 255, 255, 255, 255, 32.9107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 6, 32.9111 + 167, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9112 + 193, 193, 128, 64, 193, 193, 193, 193, 193, 163, 40, 38, 200, 255, 255, 255, 32.9113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9117 + 255, 255, 249, 45, 29, 152, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9118 + 193, 193, 193, 193, 193, 193, 128, 64, 193, 193, 193, 193, 187, 58, 15, 216, 32.9119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9123 + 255, 255, 255, 255, 255, 255, 255, 208, 26, 23, 181, 193, 193, 193, 193, 193, 32.9124 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 128, 64, 193, 193, 193, 181, 32.9125 + 76, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 19, 64, 175, 32.9130 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 128, 64, 32.9131 + 193, 193, 193, 64, 0, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9136 + 246, 161, 0, 52, 169, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 32.9137 + 193, 193, 128, 64, 193, 193, 116, 0, 170, 255, 255, 255, 255, 255, 255, 255, 32.9138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9142 + 255, 255, 255, 255, 255, 240, 163, 0, 40, 163, 193, 193, 193, 193, 193, 193, 32.9143 + 193, 193, 193, 193, 193, 193, 70, 64, 193, 134, 5, 115, 255, 255, 255, 255, 32.9144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 185, 13, 0, 116, 187, 32.9149 + 193, 193, 193, 193, 193, 193, 193, 193, 193, 193, 58, 144, 170, 0, 61, 255, 32.9150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 32.9155 + 194, 72, 0, 46, 157, 193, 193, 193, 193, 193, 193, 193, 193, 181, 0, 98, 32.9156 + 26, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9161 + 255, 255, 255, 255, 251, 223, 124, 19, 0, 81, 157, 193, 193, 193, 193, 193, 32.9162 + 193, 111, 0, 19, 42, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 231, 189, 111, 0, 11, 93, 32.9168 + 169, 193, 193, 193, 169, 11, 0, 30, 231, 255, 255, 255, 255, 255, 255, 255, 32.9169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 245, 32.9174 + 227, 196, 65, 0, 11, 46, 105, 17, 11, 0, 38, 239, 255, 255, 255, 255, 32.9175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9180 + 255, 255, 255, 255, 255, 237, 219, 186, 121, 23, 23, 55, 133, 139, 255, 255, 32.9181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 208, 255, 255, 255, 255, 255, 32.9260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 85, 255, 32.9266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9271 + 255, 255, 255, 255, 255, 177, 61, 23, 23, 23, 23, 23, 23, 23, 100, 139, 32.9272 + 61, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9277 + 255, 255, 255, 255, 255, 255, 255, 239, 77, 0, 14, 85, 82, 30, 30, 30, 32.9278 + 30, 0, 0, 0, 15, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 30, 15, 75, 156, 156, 32.9284 + 101, 56, 56, 56, 56, 10, 8, 15, 224, 255, 255, 255, 255, 255, 255, 255, 32.9285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 21, 32.9290 + 194, 156, 156, 156, 80, 56, 56, 56, 56, 50, 0, 151, 255, 255, 255, 255, 32.9291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 46, 32.9296 + 46, 46, 0, 170, 235, 165, 156, 116, 56, 56, 56, 56, 56, 15, 30, 242, 32.9297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9302 + 216, 61, 0, 0, 0, 0, 0, 92, 223, 158, 156, 89, 56, 56, 56, 56, 32.9303 + 30, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 115, 0, 0, 38, 32.9307 + 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9308 + 255, 255, 255, 255, 115, 7, 21, 92, 128, 71, 0, 83, 167, 156, 156, 92, 32.9309 + 56, 56, 52, 33, 0, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 91, 32.9313 + 3, 33, 52, 7, 0, 92, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9314 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 128, 235, 235, 156, 0, 28, 163, 32.9315 + 156, 113, 56, 44, 20, 20, 6, 0, 85, 255, 255, 255, 255, 255, 255, 255, 32.9316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9319 + 255, 255, 160, 0, 23, 56, 56, 51, 23, 5, 23, 170, 255, 255, 255, 255, 32.9320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 42, 64, 64, 32.9321 + 0, 78, 213, 182, 156, 14, 46, 69, 69, 69, 69, 185, 255, 255, 255, 255, 32.9322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9325 + 255, 255, 255, 255, 255, 193, 15, 6, 52, 56, 56, 56, 56, 42, 25, 15, 32.9326 + 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 123, 46, 46, 46, 46, 32.9327 + 61, 61, 0, 0, 64, 220, 235, 184, 113, 0, 239, 255, 255, 255, 255, 255, 32.9328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9331 + 255, 255, 255, 255, 255, 255, 255, 255, 100, 7, 8, 52, 56, 56, 56, 56, 32.9332 + 56, 56, 61, 16, 0, 23, 139, 255, 255, 255, 255, 255, 255, 139, 7, 0, 32.9333 + 77, 115, 115, 115, 208, 247, 154, 0, 7, 21, 21, 40, 56, 77, 255, 255, 32.9334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 115, 1, 22, 56, 68, 32.9338 + 68, 68, 56, 56, 56, 56, 56, 56, 39, 13, 1, 38, 231, 255, 255, 239, 32.9339 + 38, 0, 100, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 139, 139, 23, 32.9340 + 23, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 0, 32.9344 + 33, 56, 100, 188, 188, 188, 100, 56, 56, 56, 56, 56, 56, 56, 42, 3, 32.9345 + 0, 170, 239, 30, 15, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9350 + 255, 146, 0, 32, 56, 80, 188, 188, 188, 188, 188, 68, 56, 56, 56, 56, 32.9351 + 56, 56, 56, 45, 18, 0, 46, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.9352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9356 + 255, 255, 255, 255, 123, 0, 22, 56, 88, 180, 188, 188, 188, 188, 188, 136, 32.9357 + 56, 56, 56, 56, 56, 56, 56, 56, 52, 28, 0, 38, 224, 255, 255, 255, 32.9358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9362 + 255, 255, 255, 255, 255, 255, 255, 133, 0, 25, 54, 96, 184, 188, 188, 188, 32.9363 + 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 42, 0, 32.9364 + 54, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 20, 28, 56, 64, 168, 32.9369 + 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 56, 56, 32.9370 + 56, 56, 56, 47, 3, 0, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 98, 3, 32.9375 + 49, 72, 172, 188, 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 32.9376 + 56, 56, 56, 56, 56, 56, 56, 54, 36, 1, 69, 239, 255, 255, 255, 255, 32.9377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9381 + 231, 46, 0, 37, 80, 176, 188, 188, 188, 188, 188, 188, 188, 188, 188, 100, 32.9382 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 44, 29, 19, 0, 146, 32.9383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9387 + 255, 255, 255, 255, 69, 6, 37, 72, 160, 188, 188, 188, 188, 188, 188, 188, 32.9388 + 188, 188, 156, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 30, 32.9389 + 29, 29, 11, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9393 + 255, 255, 255, 255, 255, 255, 255, 139, 0, 44, 76, 160, 188, 188, 188, 188, 32.9394 + 188, 188, 188, 188, 188, 168, 80, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9395 + 56, 56, 51, 29, 29, 29, 28, 4, 54, 255, 255, 255, 255, 255, 255, 255, 32.9396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 30, 80, 168, 188, 32.9400 + 188, 188, 188, 188, 188, 188, 188, 188, 160, 76, 56, 56, 56, 56, 56, 56, 32.9401 + 56, 56, 56, 56, 56, 56, 42, 29, 29, 29, 29, 24, 0, 162, 255, 255, 32.9402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 30, 15, 32.9406 + 56, 156, 188, 188, 188, 188, 188, 188, 188, 188, 188, 152, 72, 56, 56, 56, 32.9407 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 32.9408 + 7, 30, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9412 + 205, 13, 5, 50, 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 176, 88, 32.9413 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 32.9414 + 29, 29, 29, 29, 26, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9418 + 255, 255, 255, 242, 49, 6, 65, 164, 188, 188, 188, 188, 188, 188, 188, 188, 32.9419 + 188, 172, 92, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9420 + 56, 56, 38, 29, 29, 29, 29, 29, 29, 11, 52, 254, 255, 255, 255, 255, 32.9421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9424 + 255, 255, 255, 255, 255, 255, 250, 79, 0, 44, 180, 188, 188, 188, 188, 188, 32.9425 + 188, 188, 188, 188, 168, 84, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9426 + 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 23, 0, 176, 32.9427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 70, 1, 30, 128, 188, 188, 32.9431 + 188, 188, 188, 188, 188, 188, 188, 184, 96, 56, 56, 56, 56, 56, 56, 56, 32.9432 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 33, 29, 29, 29, 29, 29, 32.9433 + 29, 29, 10, 75, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 30, 3, 33, 32.9437 + 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 180, 88, 56, 56, 56, 56, 32.9438 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 32.9439 + 29, 29, 29, 29, 29, 29, 21, 0, 232, 255, 255, 255, 255, 255, 255, 255, 32.9440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 32.9443 + 23, 10, 45, 80, 176, 188, 188, 188, 188, 188, 188, 188, 188, 188, 80, 56, 32.9444 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9445 + 56, 38, 29, 29, 29, 29, 29, 29, 29, 29, 29, 2, 170, 255, 255, 255, 32.9446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9449 + 255, 246, 134, 15, 13, 52, 88, 180, 188, 188, 188, 188, 188, 188, 188, 188, 32.9450 + 188, 100, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9451 + 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 32.9452 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9455 + 255, 255, 255, 255, 255, 106, 4, 16, 54, 56, 164, 188, 188, 188, 188, 188, 32.9456 + 188, 188, 188, 188, 148, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9457 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 33, 29, 29, 29, 29, 29, 29, 32.9458 + 29, 29, 29, 18, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9461 + 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 22, 56, 60, 128, 188, 188, 32.9462 + 188, 188, 188, 188, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 32.9463 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 55, 29, 29, 29, 32.9464 + 29, 29, 29, 29, 29, 29, 29, 19, 85, 255, 255, 255, 255, 255, 255, 255, 32.9465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 170, 0, 18, 56, 64, 32.9468 + 136, 188, 188, 188, 188, 188, 188, 188, 188, 188, 132, 56, 56, 56, 56, 56, 32.9469 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9470 + 47, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 13, 85, 255, 255, 255, 32.9471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 103, 0, 32.9474 + 18, 56, 68, 144, 188, 188, 188, 188, 188, 188, 188, 188, 188, 144, 68, 56, 32.9475 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9476 + 56, 56, 56, 56, 40, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 32.9477 + 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9480 + 230, 88, 3, 22, 52, 72, 132, 188, 188, 188, 188, 188, 188, 188, 188, 188, 32.9481 + 136, 64, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9482 + 56, 56, 56, 56, 56, 56, 56, 56, 34, 29, 29, 29, 29, 29, 29, 29, 32.9483 + 29, 29, 29, 6, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9486 + 255, 255, 255, 255, 150, 1, 16, 54, 76, 160, 188, 188, 188, 188, 188, 188, 32.9487 + 188, 188, 188, 168, 80, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9488 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 47, 29, 29, 29, 29, 32.9489 + 29, 29, 29, 29, 29, 29, 24, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.9490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9492 + 255, 255, 255, 255, 255, 255, 255, 163, 0, 11, 56, 56, 128, 188, 188, 188, 32.9493 + 188, 188, 188, 188, 188, 188, 184, 76, 56, 56, 56, 56, 56, 56, 56, 56, 32.9494 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 55, 33, 32.9495 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 26, 46, 255, 255, 255, 255, 32.9496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 15, 49, 56, 100, 32.9499 + 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 128, 56, 56, 56, 56, 56, 32.9500 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9501 + 56, 54, 39, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 75, 24, 139, 32.9502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 46, 13, 32.9505 + 50, 56, 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 132, 56, 56, 32.9506 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9507 + 56, 56, 56, 56, 56, 44, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9508 + 30, 106, 0, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9511 + 224, 69, 6, 40, 56, 124, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 32.9512 + 120, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9513 + 56, 56, 56, 56, 56, 56, 56, 56, 48, 30, 29, 29, 29, 29, 29, 29, 32.9514 + 29, 29, 29, 29, 77, 12, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9517 + 255, 255, 255, 216, 54, 0, 44, 56, 76, 188, 188, 188, 188, 188, 188, 188, 32.9518 + 188, 188, 188, 108, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9519 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 30, 29, 29, 29, 32.9520 + 29, 29, 29, 29, 29, 29, 29, 29, 52, 0, 247, 255, 255, 255, 255, 255, 32.9521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9523 + 255, 255, 255, 255, 255, 255, 239, 38, 3, 47, 56, 56, 144, 188, 188, 188, 32.9524 + 188, 188, 188, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9525 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 37, 32.9526 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 46, 26, 131, 255, 255, 32.9527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 30, 3, 49, 56, 56, 56, 32.9530 + 144, 188, 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 32.9531 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9532 + 56, 56, 44, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 30, 24, 32.9533 + 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 23, 5, 45, 32.9536 + 56, 56, 56, 56, 144, 188, 188, 188, 188, 188, 188, 188, 164, 56, 56, 56, 32.9537 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9538 + 56, 56, 56, 56, 56, 53, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9539 + 29, 29, 22, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 32.9542 + 27, 6, 49, 56, 56, 56, 56, 56, 144, 188, 188, 188, 188, 188, 188, 156, 32.9543 + 64, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9544 + 56, 56, 56, 56, 56, 56, 56, 56, 52, 36, 29, 29, 29, 29, 29, 29, 32.9545 + 29, 29, 29, 29, 29, 29, 9, 100, 255, 255, 255, 255, 255, 255, 255, 255, 32.9546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9548 + 255, 255, 95, 3, 0, 44, 56, 56, 56, 56, 56, 56, 84, 188, 188, 188, 32.9549 + 188, 188, 148, 60, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9550 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 32.9551 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 27, 0, 208, 255, 255, 255, 255, 32.9552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9554 + 255, 255, 255, 255, 247, 94, 8, 0, 16, 25, 25, 25, 33, 50, 56, 56, 32.9555 + 56, 136, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9556 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 49, 32.9557 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 4, 54, 255, 32.9558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9560 + 255, 255, 255, 255, 255, 255, 255, 239, 61, 0, 10, 10, 10, 10, 10, 6, 32.9561 + 0, 0, 20, 37, 52, 56, 104, 104, 104, 56, 56, 56, 56, 56, 56, 56, 32.9562 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9563 + 56, 56, 52, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9564 + 11, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 18, 56, 56, 32.9567 + 56, 56, 56, 50, 40, 23, 10, 0, 10, 37, 56, 56, 56, 56, 56, 56, 32.9568 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9569 + 56, 56, 56, 56, 56, 51, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9570 + 29, 29, 29, 19, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 32.9573 + 22, 52, 56, 56, 56, 56, 56, 56, 56, 56, 52, 37, 13, 3, 18, 49, 32.9574 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9575 + 56, 56, 56, 56, 56, 56, 56, 56, 49, 30, 29, 29, 29, 29, 29, 29, 32.9576 + 29, 29, 29, 29, 29, 29, 25, 6, 100, 255, 255, 255, 255, 255, 255, 255, 32.9577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9579 + 255, 255, 7, 8, 54, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9580 + 54, 25, 0, 11, 43, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9581 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 51, 33, 29, 29, 29, 32.9582 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 6, 0, 208, 255, 255, 255, 32.9583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9585 + 255, 255, 255, 255, 255, 152, 0, 47, 56, 56, 56, 56, 56, 56, 56, 56, 32.9586 + 56, 56, 56, 56, 56, 37, 24, 0, 8, 31, 54, 56, 56, 56, 56, 56, 32.9587 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 51, 33, 32.9588 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 22, 0, 216, 32.9589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 11, 56, 56, 56, 56, 56, 32.9592 + 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 17, 1, 3, 34, 56, 32.9593 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9594 + 56, 48, 35, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9595 + 27, 3, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 32, 56, 32.9598 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 32.9599 + 23, 2, 9, 36, 36, 51, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9600 + 56, 56, 56, 53, 44, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9601 + 29, 29, 29, 29, 9, 23, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9604 + 224, 0, 44, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9605 + 38, 29, 29, 29, 29, 21, 0, 17, 29, 30, 49, 56, 56, 56, 56, 56, 32.9606 + 56, 56, 56, 56, 56, 56, 45, 32, 29, 29, 29, 29, 29, 29, 29, 29, 32.9607 + 29, 29, 29, 29, 29, 29, 29, 17, 0, 185, 255, 255, 255, 255, 255, 255, 32.9608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9610 + 255, 255, 255, 255, 170, 9, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9611 + 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 13, 0, 15, 29, 29, 43, 32.9612 + 56, 56, 56, 56, 56, 56, 56, 56, 47, 35, 29, 29, 29, 29, 29, 29, 32.9613 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 24, 0, 115, 255, 255, 255, 32.9614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9616 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 33, 56, 56, 56, 56, 56, 56, 32.9617 + 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 11, 32.9618 + 0, 22, 29, 29, 37, 53, 56, 56, 53, 53, 41, 33, 29, 29, 29, 29, 32.9619 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 4, 53, 32.9620 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 62, 61, 56, 32.9623 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 29, 32.9624 + 29, 29, 29, 29, 7, 7, 29, 29, 29, 29, 38, 38, 29, 29, 29, 29, 32.9625 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9626 + 29, 11, 14, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9629 + 170, 20, 67, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9630 + 53, 29, 29, 29, 29, 29, 29, 29, 21, 0, 19, 29, 29, 29, 29, 29, 32.9631 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9632 + 29, 29, 29, 29, 19, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9635 + 255, 255, 255, 255, 239, 0, 43, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.9636 + 56, 56, 56, 56, 47, 29, 29, 29, 29, 29, 29, 29, 29, 11, 1, 25, 32.9637 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9638 + 29, 29, 29, 29, 29, 29, 29, 29, 1, 100, 255, 255, 255, 255, 255, 255, 32.9639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 20, 56, 56, 56, 56, 56, 32.9642 + 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 29, 32.9643 + 29, 28, 4, 14, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9644 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 7, 0, 247, 255, 255, 32.9645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 8, 56, 32.9648 + 56, 56, 53, 53, 53, 56, 56, 56, 56, 56, 56, 49, 29, 29, 29, 29, 32.9649 + 29, 29, 29, 29, 29, 29, 15, 0, 29, 29, 29, 29, 29, 29, 29, 29, 32.9650 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 8, 7, 32.9651 + 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9654 + 255, 224, 0, 49, 56, 47, 29, 29, 29, 38, 51, 56, 56, 56, 47, 29, 32.9655 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 0, 22, 29, 29, 29, 32.9656 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9657 + 29, 17, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9660 + 255, 255, 255, 255, 255, 255, 23, 5, 69, 29, 29, 29, 29, 29, 29, 36, 32.9661 + 40, 36, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 7, 32.9662 + 9, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9663 + 29, 29, 29, 29, 19, 2, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 0, 91, 40, 29, 29, 32.9667 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9668 + 29, 29, 29, 21, 0, 21, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9669 + 29, 29, 29, 29, 29, 29, 29, 25, 1, 61, 239, 255, 255, 255, 255, 255, 32.9670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 32.9673 + 7, 128, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9674 + 29, 29, 29, 29, 29, 29, 29, 29, 8, 14, 29, 29, 29, 29, 29, 29, 32.9675 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 24, 6, 38, 247, 255, 255, 32.9676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9679 + 255, 255, 255, 255, 54, 36, 88, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9680 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 14, 8, 37, 29, 32.9681 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 4, 15, 32.9682 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9685 + 255, 255, 255, 255, 255, 255, 255, 255, 224, 15, 72, 58, 29, 29, 29, 29, 32.9686 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9687 + 25, 0, 27, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9688 + 29, 21, 0, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 103, 32.9692 + 34, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9693 + 29, 29, 29, 29, 29, 2, 19, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9694 + 29, 29, 29, 29, 26, 2, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9698 + 255, 255, 100, 51, 121, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9699 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 11, 29, 29, 29, 29, 29, 32.9700 + 29, 29, 29, 29, 29, 29, 29, 25, 3, 30, 239, 255, 255, 255, 255, 255, 32.9701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9704 + 255, 255, 255, 255, 255, 255, 208, 0, 166, 64, 29, 29, 29, 29, 29, 29, 32.9705 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 18, 0, 29, 32.9706 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 6, 38, 200, 255, 255, 32.9707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 0, 191, 32, 29, 32.9711 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9712 + 29, 29, 0, 23, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 8, 7, 32.9713 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9717 + 15, 30, 108, 42, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9718 + 29, 29, 29, 29, 29, 29, 6, 17, 29, 29, 29, 29, 29, 29, 29, 29, 32.9719 + 27, 7, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9723 + 255, 255, 255, 255, 208, 0, 49, 56, 29, 29, 29, 29, 29, 29, 29, 29, 32.9724 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 12, 9, 29, 29, 29, 29, 32.9725 + 29, 29, 29, 26, 5, 23, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 0, 33, 32, 29, 29, 29, 32.9730 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 32.9731 + 29, 29, 29, 29, 29, 29, 25, 3, 30, 185, 255, 255, 255, 255, 255, 255, 32.9732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 1, 32.9736 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9737 + 29, 29, 19, 9, 29, 29, 29, 29, 29, 24, 6, 38, 200, 255, 255, 255, 32.9738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9742 + 255, 255, 224, 11, 4, 22, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9743 + 29, 29, 29, 29, 29, 29, 19, 9, 29, 29, 29, 29, 28, 8, 15, 216, 32.9744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9748 + 255, 255, 255, 255, 255, 255, 255, 145, 6, 3, 27, 29, 29, 29, 29, 29, 32.9749 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 29, 29, 29, 27, 32.9750 + 11, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 5, 9, 26, 32.9755 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 32.9756 + 29, 29, 29, 9, 0, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9761 + 212, 64, 0, 7, 25, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.9762 + 29, 29, 19, 9, 29, 29, 17, 0, 170, 255, 255, 255, 255, 255, 255, 255, 32.9763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9767 + 255, 255, 255, 255, 255, 182, 42, 0, 6, 24, 29, 29, 29, 29, 29, 29, 32.9768 + 29, 29, 29, 29, 29, 29, 10, 9, 29, 20, 0, 115, 255, 255, 255, 255, 32.9769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 59, 3, 0, 17, 28, 32.9774 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 8, 37, 44, 0, 61, 255, 32.9775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.9780 + 73, 18, 0, 7, 23, 29, 29, 29, 29, 29, 29, 29, 29, 27, 0, 25, 32.9781 + 6, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9786 + 255, 255, 255, 255, 236, 92, 32, 5, 0, 12, 23, 29, 29, 29, 29, 29, 32.9787 + 29, 16, 0, 5, 28, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 134, 49, 28, 0, 1, 14, 32.9793 + 25, 29, 29, 29, 25, 1, 0, 30, 197, 255, 255, 255, 255, 255, 255, 255, 32.9794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 206, 32.9799 + 116, 50, 16, 0, 1, 7, 15, 2, 1, 0, 38, 239, 255, 255, 255, 255, 32.9800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9805 + 255, 255, 255, 255, 255, 164, 74, 65, 48, 23, 23, 31, 108, 139, 255, 255, 32.9806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 208, 255, 255, 255, 255, 255, 32.9885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 85, 255, 32.9891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9896 + 255, 255, 255, 255, 255, 177, 61, 23, 23, 23, 23, 23, 23, 23, 100, 139, 32.9897 + 61, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9902 + 255, 255, 255, 255, 255, 255, 255, 239, 77, 0, 1, 6, 6, 7, 7, 7, 32.9903 + 7, 0, 0, 0, 15, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 30, 15, 5, 11, 11, 32.9909 + 12, 13, 13, 13, 13, 2, 1, 15, 224, 255, 255, 255, 255, 255, 255, 255, 32.9910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 32.9915 + 29, 11, 11, 11, 12, 13, 13, 13, 13, 11, 0, 148, 255, 255, 255, 255, 32.9916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 46, 32.9921 + 46, 46, 0, 6, 9, 10, 11, 11, 13, 13, 13, 13, 13, 3, 30, 240, 32.9922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9927 + 216, 61, 0, 0, 0, 0, 0, 3, 9, 10, 11, 12, 13, 13, 13, 13, 32.9928 + 7, 0, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 115, 0, 0, 38, 32.9932 + 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9933 + 255, 255, 255, 255, 115, 0, 0, 3, 4, 2, 0, 3, 10, 11, 11, 12, 32.9934 + 13, 13, 12, 7, 0, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 91, 32.9938 + 3, 33, 52, 7, 0, 92, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9939 + 255, 255, 255, 255, 255, 255, 255, 255, 0, 4, 9, 9, 6, 0, 1, 9, 32.9940 + 11, 8, 4, 4, 4, 4, 1, 0, 85, 255, 255, 255, 255, 255, 255, 255, 32.9941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9944 + 255, 255, 160, 0, 23, 56, 56, 51, 23, 5, 23, 170, 255, 255, 255, 255, 32.9945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 1, 2, 2, 32.9946 + 0, 3, 8, 10, 11, 1, 46, 69, 69, 69, 69, 185, 255, 255, 255, 255, 32.9947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9950 + 255, 255, 255, 255, 255, 193, 15, 6, 52, 56, 56, 56, 56, 42, 25, 15, 32.9951 + 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 123, 46, 46, 46, 46, 32.9952 + 61, 61, 0, 0, 2, 8, 9, 40, 8, 0, 239, 255, 255, 255, 255, 255, 32.9953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9956 + 255, 255, 255, 255, 255, 255, 255, 255, 100, 7, 8, 52, 56, 56, 56, 56, 32.9957 + 56, 56, 61, 16, 0, 23, 139, 255, 255, 255, 255, 255, 255, 139, 7, 0, 32.9958 + 77, 115, 115, 115, 208, 247, 154, 0, 0, 0, 0, 10, 4, 77, 255, 255, 32.9959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 115, 1, 22, 56, 68, 32.9963 + 68, 68, 56, 56, 56, 56, 56, 56, 39, 13, 1, 38, 231, 255, 255, 239, 32.9964 + 38, 0, 100, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 139, 139, 23, 32.9965 + 23, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 0, 32.9969 + 33, 56, 100, 188, 188, 188, 100, 56, 56, 56, 56, 56, 56, 56, 42, 3, 32.9970 + 0, 170, 239, 30, 15, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9975 + 255, 146, 0, 32, 56, 80, 188, 188, 188, 188, 188, 68, 56, 56, 56, 56, 32.9976 + 56, 56, 56, 45, 18, 0, 46, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.9977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9981 + 255, 255, 255, 255, 123, 0, 22, 56, 88, 180, 188, 188, 188, 188, 188, 136, 32.9982 + 56, 56, 56, 56, 56, 56, 56, 56, 52, 28, 0, 38, 224, 255, 255, 255, 32.9983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9987 + 255, 255, 255, 255, 255, 255, 255, 133, 0, 25, 54, 96, 184, 188, 188, 188, 32.9988 + 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 42, 0, 32.9989 + 54, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 20, 28, 56, 64, 168, 32.9994 + 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 56, 56, 32.9995 + 56, 56, 56, 47, 3, 0, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.9999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 98, 3, 32.10000 + 49, 72, 172, 188, 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 32.10001 + 56, 56, 56, 56, 56, 56, 56, 54, 36, 1, 69, 239, 255, 255, 255, 255, 32.10002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10006 + 231, 46, 0, 37, 80, 176, 188, 188, 188, 188, 188, 188, 188, 188, 188, 100, 32.10007 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 44, 29, 19, 0, 146, 32.10008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10012 + 255, 255, 255, 255, 69, 6, 37, 72, 160, 188, 188, 188, 188, 188, 188, 188, 32.10013 + 188, 188, 156, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 30, 32.10014 + 29, 29, 11, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10018 + 255, 255, 255, 255, 255, 255, 255, 139, 0, 44, 76, 160, 188, 188, 188, 188, 32.10019 + 188, 188, 188, 188, 188, 168, 80, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10020 + 56, 56, 51, 29, 29, 29, 28, 4, 54, 255, 255, 255, 255, 255, 255, 255, 32.10021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 30, 80, 168, 188, 32.10025 + 188, 188, 188, 188, 188, 188, 188, 188, 160, 76, 56, 56, 56, 56, 56, 56, 32.10026 + 56, 56, 56, 56, 56, 56, 42, 29, 29, 29, 29, 24, 0, 162, 255, 255, 32.10027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 30, 15, 32.10031 + 56, 156, 188, 188, 188, 188, 188, 188, 188, 188, 188, 152, 72, 56, 56, 56, 32.10032 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 32.10033 + 7, 30, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10037 + 205, 13, 5, 50, 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 176, 88, 32.10038 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 32.10039 + 29, 29, 29, 29, 26, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10043 + 255, 255, 255, 242, 49, 6, 65, 164, 188, 188, 188, 188, 188, 188, 188, 188, 32.10044 + 188, 172, 92, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10045 + 56, 56, 38, 29, 29, 29, 29, 29, 29, 11, 52, 254, 255, 255, 255, 255, 32.10046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10049 + 255, 255, 255, 255, 255, 255, 250, 79, 0, 44, 180, 188, 188, 188, 188, 188, 32.10050 + 188, 188, 188, 188, 168, 84, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10051 + 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 23, 0, 176, 32.10052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 70, 1, 30, 128, 188, 188, 32.10056 + 188, 188, 188, 188, 188, 188, 188, 184, 96, 56, 56, 56, 56, 56, 56, 56, 32.10057 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 33, 29, 29, 29, 29, 29, 32.10058 + 29, 29, 10, 75, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 30, 3, 33, 32.10062 + 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 180, 88, 56, 56, 56, 56, 32.10063 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 32.10064 + 29, 29, 29, 29, 29, 29, 21, 0, 232, 255, 255, 255, 255, 255, 255, 255, 32.10065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 32.10068 + 23, 10, 45, 80, 176, 188, 188, 188, 188, 188, 188, 188, 188, 188, 80, 56, 32.10069 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10070 + 56, 38, 29, 29, 29, 29, 29, 29, 29, 29, 29, 2, 170, 255, 255, 255, 32.10071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10074 + 255, 246, 134, 15, 13, 52, 88, 180, 188, 188, 188, 188, 188, 188, 188, 188, 32.10075 + 188, 100, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10076 + 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 32.10077 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10080 + 255, 255, 255, 255, 255, 106, 4, 16, 54, 56, 164, 188, 188, 188, 188, 188, 32.10081 + 188, 188, 188, 188, 148, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10082 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 33, 29, 29, 29, 29, 29, 29, 32.10083 + 29, 29, 29, 18, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10086 + 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 22, 56, 60, 128, 188, 188, 32.10087 + 188, 188, 188, 188, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 32.10088 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 55, 29, 29, 29, 32.10089 + 29, 29, 29, 29, 29, 29, 29, 19, 85, 255, 255, 255, 255, 255, 255, 255, 32.10090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 170, 0, 18, 56, 64, 32.10093 + 136, 188, 188, 188, 188, 188, 188, 188, 188, 188, 132, 56, 56, 56, 56, 56, 32.10094 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10095 + 47, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 13, 85, 255, 255, 255, 32.10096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 103, 0, 32.10099 + 18, 56, 68, 144, 188, 188, 188, 188, 188, 188, 188, 188, 188, 144, 68, 56, 32.10100 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10101 + 56, 56, 56, 56, 40, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 32.10102 + 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10105 + 230, 88, 3, 22, 52, 72, 132, 188, 188, 188, 188, 188, 188, 188, 188, 188, 32.10106 + 136, 64, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10107 + 56, 56, 56, 56, 56, 56, 56, 56, 34, 29, 29, 29, 29, 29, 29, 29, 32.10108 + 29, 29, 29, 6, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10111 + 255, 255, 255, 255, 150, 1, 16, 54, 76, 160, 188, 188, 188, 188, 188, 188, 32.10112 + 188, 188, 188, 168, 80, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10113 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 47, 29, 29, 29, 29, 32.10114 + 29, 29, 29, 29, 29, 29, 24, 0, 208, 255, 255, 255, 255, 255, 255, 255, 32.10115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10117 + 255, 255, 255, 255, 255, 255, 255, 163, 0, 11, 56, 56, 128, 188, 188, 188, 32.10118 + 188, 188, 188, 188, 188, 188, 184, 76, 56, 56, 56, 56, 56, 56, 56, 56, 32.10119 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 55, 33, 32.10120 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 26, 46, 255, 255, 255, 255, 32.10121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 0, 15, 49, 56, 100, 32.10124 + 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 128, 56, 56, 56, 56, 56, 32.10125 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10126 + 56, 54, 39, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 75, 24, 139, 32.10127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 46, 13, 32.10130 + 50, 56, 112, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 132, 56, 56, 32.10131 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10132 + 56, 56, 56, 56, 56, 44, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10133 + 30, 106, 0, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10136 + 224, 69, 6, 40, 56, 124, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 32.10137 + 120, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10138 + 56, 56, 56, 56, 56, 56, 56, 56, 48, 30, 29, 29, 29, 29, 29, 29, 32.10139 + 29, 29, 29, 29, 77, 12, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10142 + 255, 255, 255, 216, 54, 0, 44, 56, 76, 188, 188, 188, 188, 188, 188, 188, 32.10143 + 188, 188, 188, 108, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10144 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 30, 29, 29, 29, 32.10145 + 29, 29, 29, 29, 29, 29, 29, 29, 52, 0, 247, 255, 255, 255, 255, 255, 32.10146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10148 + 255, 255, 255, 255, 255, 255, 239, 38, 3, 47, 56, 56, 144, 188, 188, 188, 32.10149 + 188, 188, 188, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10150 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 37, 32.10151 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 46, 26, 131, 255, 255, 32.10152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 30, 3, 49, 56, 56, 56, 32.10155 + 144, 188, 188, 188, 188, 188, 188, 188, 188, 144, 56, 56, 56, 56, 56, 56, 32.10156 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10157 + 56, 56, 44, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 30, 24, 32.10158 + 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 23, 5, 45, 32.10161 + 56, 56, 56, 56, 144, 188, 188, 188, 188, 188, 188, 188, 164, 56, 56, 56, 32.10162 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10163 + 56, 56, 56, 56, 56, 53, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10164 + 29, 29, 22, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 32.10167 + 27, 6, 49, 56, 56, 56, 56, 56, 144, 188, 188, 188, 188, 188, 188, 156, 32.10168 + 64, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10169 + 56, 56, 56, 56, 56, 56, 56, 56, 52, 36, 29, 29, 29, 29, 29, 29, 32.10170 + 29, 29, 29, 29, 29, 29, 9, 100, 255, 255, 255, 255, 255, 255, 255, 255, 32.10171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10173 + 255, 255, 95, 3, 0, 44, 56, 56, 56, 56, 56, 56, 84, 188, 188, 188, 32.10174 + 188, 188, 148, 60, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10175 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 32.10176 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 27, 0, 208, 255, 255, 255, 255, 32.10177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10179 + 255, 255, 255, 255, 247, 94, 8, 0, 16, 25, 25, 25, 33, 50, 56, 56, 32.10180 + 56, 136, 188, 188, 188, 136, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10181 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 49, 32.10182 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 4, 54, 255, 32.10183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10185 + 255, 255, 255, 255, 255, 255, 255, 239, 61, 0, 10, 10, 10, 10, 10, 6, 32.10186 + 0, 0, 20, 37, 52, 56, 104, 104, 104, 56, 56, 56, 56, 56, 56, 56, 32.10187 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10188 + 56, 56, 52, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10189 + 11, 15, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 0, 18, 56, 56, 32.10192 + 56, 56, 56, 50, 40, 23, 10, 0, 10, 37, 56, 56, 56, 56, 56, 56, 32.10193 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10194 + 56, 56, 56, 56, 56, 51, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10195 + 29, 29, 29, 19, 0, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 0, 32.10198 + 22, 52, 56, 56, 56, 56, 56, 56, 56, 56, 52, 37, 13, 3, 18, 49, 32.10199 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10200 + 56, 56, 56, 56, 56, 56, 56, 56, 49, 30, 29, 29, 29, 29, 29, 29, 32.10201 + 29, 29, 29, 29, 29, 29, 25, 6, 100, 255, 255, 255, 255, 255, 255, 255, 32.10202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10204 + 255, 255, 7, 8, 54, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10205 + 54, 25, 0, 11, 43, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10206 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 51, 33, 29, 29, 29, 32.10207 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 6, 0, 208, 255, 255, 255, 32.10208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10210 + 255, 255, 255, 255, 255, 152, 0, 47, 56, 56, 56, 56, 56, 56, 56, 56, 32.10211 + 56, 56, 56, 56, 56, 37, 24, 0, 8, 31, 54, 56, 56, 56, 56, 56, 32.10212 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 51, 33, 32.10213 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 22, 0, 216, 32.10214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 11, 56, 56, 56, 56, 56, 32.10217 + 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 17, 1, 3, 34, 56, 32.10218 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10219 + 56, 48, 35, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10220 + 27, 3, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 32, 56, 32.10223 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 32.10224 + 23, 2, 9, 36, 36, 51, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10225 + 56, 56, 56, 53, 44, 31, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10226 + 29, 29, 29, 29, 9, 23, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10229 + 224, 0, 44, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10230 + 38, 29, 29, 29, 29, 21, 0, 17, 29, 30, 49, 56, 56, 56, 56, 56, 32.10231 + 56, 56, 56, 56, 56, 56, 45, 32, 29, 29, 29, 29, 29, 29, 29, 29, 32.10232 + 29, 29, 29, 29, 29, 29, 29, 17, 0, 185, 255, 255, 255, 255, 255, 255, 32.10233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10235 + 255, 255, 255, 255, 170, 9, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10236 + 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 13, 0, 15, 29, 29, 43, 32.10237 + 56, 56, 56, 56, 56, 56, 56, 56, 47, 35, 29, 29, 29, 29, 29, 29, 32.10238 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 24, 0, 115, 255, 255, 255, 32.10239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10241 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 33, 56, 56, 56, 56, 56, 56, 32.10242 + 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 11, 32.10243 + 0, 22, 29, 29, 37, 53, 56, 56, 53, 53, 41, 33, 29, 29, 29, 29, 32.10244 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 4, 53, 32.10245 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 62, 61, 56, 32.10248 + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 48, 29, 29, 29, 32.10249 + 29, 29, 29, 29, 7, 7, 29, 29, 29, 29, 38, 38, 29, 29, 29, 29, 32.10250 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10251 + 29, 11, 14, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10254 + 170, 20, 67, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10255 + 53, 29, 29, 29, 29, 29, 29, 29, 21, 0, 19, 29, 29, 29, 29, 29, 32.10256 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10257 + 29, 29, 29, 29, 19, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10260 + 255, 255, 255, 255, 239, 0, 43, 56, 56, 56, 56, 56, 56, 56, 56, 56, 32.10261 + 56, 56, 56, 56, 47, 29, 29, 29, 29, 29, 29, 29, 29, 11, 1, 25, 32.10262 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10263 + 29, 29, 29, 29, 29, 29, 29, 29, 1, 100, 255, 255, 255, 255, 255, 255, 32.10264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 20, 56, 56, 56, 56, 56, 32.10267 + 56, 56, 56, 56, 56, 56, 56, 56, 38, 29, 29, 29, 29, 29, 29, 29, 32.10268 + 29, 28, 4, 14, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10269 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 7, 0, 247, 255, 255, 32.10270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 8, 56, 32.10273 + 56, 56, 53, 53, 53, 56, 56, 56, 56, 56, 56, 49, 29, 29, 29, 29, 32.10274 + 29, 29, 29, 29, 29, 29, 15, 0, 29, 29, 29, 29, 29, 29, 29, 29, 32.10275 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 8, 7, 32.10276 + 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10279 + 255, 224, 0, 49, 56, 47, 29, 29, 29, 38, 51, 56, 56, 56, 47, 29, 32.10280 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 0, 22, 29, 29, 29, 32.10281 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10282 + 29, 17, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10285 + 255, 255, 255, 255, 255, 255, 23, 5, 69, 29, 29, 29, 29, 29, 29, 36, 32.10286 + 40, 36, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 7, 32.10287 + 9, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10288 + 29, 29, 29, 29, 19, 2, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 0, 91, 40, 29, 29, 32.10292 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10293 + 29, 29, 29, 21, 0, 21, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10294 + 29, 29, 29, 29, 29, 29, 29, 25, 1, 61, 239, 255, 255, 255, 255, 255, 32.10295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 32.10298 + 7, 128, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10299 + 29, 29, 29, 29, 29, 29, 29, 29, 8, 14, 29, 29, 29, 29, 29, 29, 32.10300 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 24, 6, 38, 247, 255, 255, 32.10301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10304 + 255, 255, 255, 255, 54, 36, 88, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10305 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 14, 8, 37, 29, 32.10306 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 4, 15, 32.10307 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10310 + 255, 255, 255, 255, 255, 255, 255, 255, 224, 15, 72, 58, 29, 29, 29, 29, 32.10311 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10312 + 25, 0, 27, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10313 + 29, 21, 0, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 103, 32.10317 + 34, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10318 + 29, 29, 29, 29, 29, 2, 19, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10319 + 29, 29, 29, 29, 26, 2, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10323 + 255, 255, 100, 51, 121, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10324 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 9, 11, 29, 29, 29, 29, 29, 32.10325 + 29, 29, 29, 29, 29, 29, 29, 25, 3, 30, 239, 255, 255, 255, 255, 255, 32.10326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10329 + 255, 255, 255, 255, 255, 255, 208, 0, 166, 64, 29, 29, 29, 29, 29, 29, 32.10330 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 18, 0, 29, 32.10331 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 6, 38, 200, 255, 255, 32.10332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 0, 191, 32, 29, 32.10336 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10337 + 29, 29, 0, 23, 29, 29, 29, 29, 29, 29, 29, 29, 29, 28, 8, 7, 32.10338 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10342 + 15, 30, 108, 42, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10343 + 29, 29, 29, 29, 29, 29, 6, 17, 29, 29, 29, 29, 29, 29, 29, 29, 32.10344 + 27, 7, 15, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10348 + 255, 255, 255, 255, 208, 0, 49, 56, 29, 29, 29, 29, 29, 29, 29, 29, 32.10349 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 12, 9, 29, 29, 29, 29, 32.10350 + 29, 29, 29, 26, 5, 23, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 0, 33, 32, 29, 29, 29, 32.10355 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 32.10356 + 29, 29, 29, 29, 29, 29, 25, 3, 30, 185, 255, 255, 255, 255, 255, 255, 32.10357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 1, 32.10361 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10362 + 29, 29, 19, 9, 29, 29, 29, 29, 29, 24, 6, 38, 200, 255, 255, 255, 32.10363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10367 + 255, 255, 224, 11, 4, 22, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10368 + 29, 29, 29, 29, 29, 29, 19, 9, 29, 29, 29, 29, 28, 8, 15, 216, 32.10369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10373 + 255, 255, 255, 255, 255, 255, 255, 145, 6, 3, 27, 29, 29, 29, 29, 29, 32.10374 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 29, 29, 29, 27, 32.10375 + 11, 0, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 5, 9, 26, 32.10380 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 19, 9, 32.10381 + 29, 29, 29, 9, 0, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10386 + 212, 64, 0, 7, 25, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.10387 + 29, 29, 19, 9, 29, 29, 17, 0, 170, 255, 255, 255, 255, 255, 255, 255, 32.10388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10392 + 255, 255, 255, 255, 255, 182, 42, 0, 6, 24, 29, 29, 29, 29, 29, 29, 32.10393 + 29, 29, 29, 29, 29, 29, 10, 9, 29, 20, 0, 115, 255, 255, 255, 255, 32.10394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 59, 3, 0, 17, 28, 32.10399 + 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 8, 37, 44, 0, 61, 255, 32.10400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.10405 + 73, 18, 0, 7, 23, 29, 29, 29, 29, 29, 29, 29, 29, 27, 0, 25, 32.10406 + 6, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10411 + 255, 255, 255, 255, 236, 92, 32, 5, 0, 12, 23, 29, 29, 29, 29, 29, 32.10412 + 29, 16, 0, 5, 28, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 134, 49, 28, 0, 1, 14, 32.10418 + 25, 29, 29, 29, 25, 1, 0, 30, 197, 255, 255, 255, 255, 255, 255, 255, 32.10419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 206, 32.10424 + 116, 50, 16, 0, 1, 7, 15, 2, 1, 0, 38, 239, 255, 255, 255, 255, 32.10425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10430 + 255, 255, 255, 255, 255, 164, 74, 65, 48, 23, 23, 31, 108, 139, 255, 255, 32.10431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.10460 +/* Define image 'enemy10' of size 158x214x1x3 and type 'const unsigned char' */ 32.10461 +const unsigned char data_enemy10[] = { 32.10462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10466 + 255, 255, 255, 255, 255, 255, 255, 255, 71, 79, 113, 136, 142, 148, 145, 137, 32.10467 + 135, 138, 145, 147, 139, 131, 129, 130, 129, 126, 124, 123, 119, 115, 115, 118, 32.10468 + 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10476 + 255, 255, 255, 187, 57, 80, 104, 114, 142, 153, 147, 146, 145, 138, 136, 129, 32.10477 + 140, 149, 149, 145, 143, 140, 136, 139, 137, 136, 131, 124, 119, 119, 121, 118, 32.10478 + 126, 134, 142, 155, 162, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 32.10486 + 92, 125, 133, 116, 96, 131, 152, 152, 135, 129, 124, 115, 110, 86, 95, 104, 32.10487 + 111, 120, 134, 146, 150, 140, 140, 138, 130, 120, 114, 114, 116, 121, 131, 142, 32.10488 + 153, 165, 167, 149, 124, 125, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 68, 67, 64, 75, 106, 136, 32.10496 + 146, 136, 124, 134, 156, 155, 136, 128, 121, 107, 97, 119, 116, 106, 98, 101, 32.10497 + 118, 136, 146, 127, 126, 122, 113, 102, 96, 96, 99, 118, 128, 140, 150, 159, 32.10498 + 157, 133, 107, 90, 83, 83, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10505 + 255, 255, 255, 255, 255, 255, 75, 76, 81, 74, 74, 92, 128, 155, 159, 152, 32.10506 + 148, 138, 148, 150, 136, 118, 108, 108, 111, 101, 99, 99, 101, 107, 116, 125, 32.10507 + 129, 120, 112, 113, 121, 123, 114, 108, 110, 121, 128, 134, 136, 135, 126, 104, 32.10508 + 82, 74, 74, 76, 77, 78, 76, 75, 134, 255, 255, 255, 255, 255, 255, 255, 32.10509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10515 + 255, 255, 255, 78, 72, 68, 68, 79, 89, 109, 133, 147, 147, 142, 139, 140, 32.10516 + 130, 113, 96, 90, 93, 95, 92, 111, 113, 116, 118, 117, 113, 109, 107, 126, 32.10517 + 122, 122, 124, 122, 112, 103, 98, 96, 100, 98, 87, 80, 81, 86, 87, 70, 32.10518 + 69, 68, 67, 68, 68, 68, 66, 60, 100, 210, 255, 255, 255, 255, 255, 255, 32.10519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 32.10525 + 79, 83, 84, 84, 85, 86, 106, 127, 135, 134, 131, 127, 124, 115, 112, 106, 32.10526 + 102, 104, 106, 100, 91, 93, 97, 102, 105, 104, 98, 90, 84, 90, 94, 97, 32.10527 + 97, 96, 94, 86, 77, 78, 82, 80, 71, 65, 69, 78, 85, 73, 70, 66, 32.10528 + 65, 67, 68, 69, 68, 64, 56, 49, 117, 255, 255, 255, 255, 255, 255, 255, 32.10529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 81, 82, 83, 82, 32.10535 + 82, 84, 87, 86, 109, 126, 125, 117, 113, 108, 101, 94, 106, 117, 118, 113, 32.10536 + 109, 103, 98, 86, 87, 89, 91, 92, 91, 90, 89, 75, 82, 85, 82, 82, 32.10537 + 87, 83, 73, 83, 82, 79, 77, 77, 79, 79, 78, 70, 67, 67, 66, 70, 32.10538 + 72, 72, 69, 65, 57, 51, 50, 97, 210, 255, 255, 255, 255, 255, 255, 255, 32.10539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10544 + 255, 255, 255, 255, 255, 255, 255, 199, 87, 78, 86, 92, 89, 83, 83, 91, 32.10545 + 98, 101, 117, 128, 126, 121, 119, 112, 102, 97, 100, 98, 88, 80, 80, 84, 32.10546 + 85, 84, 83, 83, 82, 81, 80, 80, 80, 84, 90, 88, 79, 75, 78, 76, 32.10547 + 68, 88, 87, 85, 82, 77, 74, 75, 79, 60, 59, 62, 66, 72, 74, 71, 32.10548 + 65, 65, 57, 53, 53, 49, 42, 39, 111, 255, 255, 255, 255, 255, 255, 255, 32.10549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10554 + 255, 255, 255, 195, 82, 86, 86, 79, 89, 95, 90, 85, 88, 98, 106, 80, 32.10555 + 86, 92, 95, 97, 96, 89, 81, 94, 86, 73, 64, 66, 72, 72, 67, 73, 32.10556 + 76, 80, 82, 82, 79, 76, 73, 82, 83, 81, 73, 69, 69, 69, 68, 72, 32.10557 + 85, 100, 102, 88, 72, 69, 74, 58, 57, 60, 67, 75, 77, 73, 67, 66, 32.10558 + 59, 56, 57, 52, 43, 42, 48, 49, 119, 255, 255, 255, 255, 255, 255, 255, 32.10559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 82, 32.10564 + 80, 83, 86, 86, 81, 104, 106, 100, 87, 78, 78, 80, 80, 90, 88, 92, 32.10565 + 101, 107, 106, 102, 100, 86, 86, 82, 78, 78, 80, 76, 69, 83, 87, 92, 32.10566 + 97, 98, 96, 92, 89, 82, 81, 83, 84, 83, 80, 82, 88, 68, 77, 94, 32.10567 + 109, 107, 91, 76, 69, 65, 63, 63, 70, 79, 82, 78, 72, 77, 64, 60, 32.10568 + 66, 67, 60, 57, 62, 60, 57, 98, 210, 255, 255, 255, 255, 255, 255, 255, 32.10569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 87, 88, 84, 75, 75, 32.10574 + 83, 90, 88, 96, 92, 83, 74, 73, 80, 81, 77, 72, 66, 72, 85, 92, 32.10575 + 90, 89, 93, 93, 102, 104, 91, 75, 70, 75, 80, 91, 91, 91, 91, 90, 32.10576 + 88, 86, 85, 77, 74, 79, 85, 83, 75, 77, 84, 83, 65, 61, 78, 100, 32.10577 + 100, 85, 70, 70, 65, 63, 68, 77, 81, 78, 73, 87, 73, 65, 74, 81, 32.10578 + 77, 73, 75, 68, 61, 53, 45, 42, 114, 255, 255, 255, 255, 255, 255, 255, 32.10579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10583 + 255, 255, 255, 218, 139, 130, 122, 87, 84, 94, 87, 83, 84, 82, 79, 83, 32.10584 + 90, 90, 82, 77, 81, 90, 96, 93, 88, 77, 78, 81, 83, 84, 82, 78, 32.10585 + 76, 78, 76, 80, 85, 82, 75, 72, 76, 80, 86, 91, 88, 83, 82, 82, 32.10586 + 81, 82, 90, 92, 79, 75, 74, 71, 59, 72, 64, 64, 71, 87, 90, 84, 32.10587 + 74, 66, 63, 59, 65, 75, 81, 77, 71, 76, 85, 87, 80, 72, 69, 66, 32.10588 + 62, 61, 44, 37, 43, 47, 46, 122, 255, 255, 255, 255, 255, 255, 255, 255, 32.10589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 118, 32.10593 + 87, 118, 135, 91, 91, 96, 94, 105, 94, 86, 87, 89, 89, 91, 93, 86, 32.10594 + 88, 95, 103, 108, 106, 96, 87, 76, 74, 72, 71, 70, 67, 63, 62, 72, 32.10595 + 72, 76, 80, 77, 71, 71, 76, 70, 76, 79, 77, 75, 77, 77, 75, 74, 32.10596 + 82, 82, 71, 66, 72, 76, 74, 67, 67, 71, 80, 90, 91, 83, 76, 85, 32.10597 + 75, 61, 58, 65, 75, 80, 81, 87, 90, 87, 76, 68, 67, 68, 68, 54, 32.10598 + 49, 54, 69, 76, 70, 63, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 108, 70, 76, 106, 112, 32.10603 + 93, 88, 96, 98, 95, 90, 78, 68, 68, 73, 75, 76, 75, 77, 85, 97, 32.10604 + 105, 103, 96, 84, 77, 79, 76, 71, 69, 66, 63, 60, 57, 63, 66, 71, 32.10605 + 75, 72, 70, 75, 83, 68, 73, 76, 78, 82, 87, 87, 82, 70, 79, 78, 32.10606 + 67, 62, 67, 72, 73, 73, 77, 82, 87, 89, 87, 83, 79, 81, 74, 67, 32.10607 + 66, 70, 76, 77, 76, 86, 88, 85, 75, 67, 65, 66, 66, 53, 65, 81, 32.10608 + 90, 86, 75, 63, 56, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10612 + 255, 255, 255, 255, 255, 241, 186, 119, 73, 66, 73, 92, 120, 113, 91, 95, 32.10613 + 100, 92, 89, 77, 70, 64, 62, 64, 67, 68, 66, 71, 72, 75, 76, 74, 32.10614 + 71, 66, 63, 74, 74, 71, 69, 69, 66, 64, 61, 58, 64, 71, 75, 76, 32.10615 + 80, 90, 99, 102, 100, 94, 87, 81, 74, 60, 47, 68, 71, 70, 65, 63, 32.10616 + 65, 65, 62, 81, 85, 87, 84, 80, 77, 80, 84, 75, 72, 69, 69, 73, 32.10617 + 76, 77, 74, 73, 77, 80, 79, 74, 69, 65, 63, 68, 86, 96, 84, 62, 32.10618 + 50, 51, 55, 48, 93, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10622 + 247, 216, 154, 109, 91, 74, 69, 67, 75, 108, 116, 102, 92, 106, 103, 86, 32.10623 + 83, 67, 69, 69, 65, 61, 60, 63, 65, 75, 68, 61, 58, 58, 61, 60, 32.10624 + 58, 59, 61, 63, 66, 71, 69, 68, 65, 63, 71, 77, 82, 88, 98, 108, 32.10625 + 116, 91, 95, 97, 103, 111, 115, 107, 96, 74, 70, 64, 60, 62, 66, 65, 32.10626 + 61, 78, 83, 88, 86, 81, 78, 82, 86, 86, 79, 70, 62, 64, 71, 81, 32.10627 + 86, 68, 72, 78, 82, 81, 77, 73, 72, 89, 92, 84, 63, 43, 38, 44, 32.10628 + 49, 49, 58, 62, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 128, 108, 32.10632 + 83, 86, 79, 70, 76, 80, 89, 105, 97, 89, 94, 106, 99, 83, 79, 70, 32.10633 + 76, 77, 69, 62, 61, 65, 68, 79, 70, 64, 60, 61, 62, 59, 56, 52, 32.10634 + 56, 60, 66, 70, 71, 69, 65, 69, 76, 80, 85, 93, 105, 113, 116, 118, 32.10635 + 120, 119, 120, 123, 124, 115, 105, 101, 91, 76, 65, 62, 62, 62, 60, 69, 32.10636 + 75, 83, 87, 87, 85, 85, 85, 88, 86, 81, 77, 75, 76, 79, 83, 78, 32.10637 + 78, 81, 87, 89, 87, 86, 87, 95, 79, 59, 49, 50, 52, 50, 46, 49, 32.10638 + 65, 72, 65, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 77, 76, 71, 59, 72, 32.10642 + 71, 72, 89, 94, 100, 96, 92, 100, 108, 103, 99, 94, 86, 90, 92, 88, 32.10643 + 77, 71, 74, 79, 80, 78, 75, 72, 67, 63, 63, 62, 62, 58, 60, 61, 32.10644 + 64, 67, 67, 66, 63, 69, 73, 75, 77, 83, 93, 96, 93, 90, 93, 95, 32.10645 + 99, 106, 115, 118, 114, 112, 108, 99, 88, 76, 67, 64, 65, 72, 72, 73, 32.10646 + 76, 80, 83, 83, 81, 78, 83, 90, 93, 88, 82, 78, 76, 88, 87, 92, 32.10647 + 100, 99, 93, 89, 91, 82, 62, 47, 52, 62, 64, 61, 60, 58, 59, 60, 32.10648 + 61, 62, 64, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10651 + 255, 255, 255, 255, 255, 255, 255, 197, 79, 74, 69, 71, 63, 76, 71, 73, 32.10652 + 91, 94, 95, 98, 105, 127, 129, 108, 107, 113, 100, 88, 86, 76, 63, 60, 32.10653 + 67, 71, 70, 83, 82, 78, 70, 63, 61, 66, 72, 64, 61, 59, 58, 59, 32.10654 + 59, 57, 56, 67, 67, 66, 65, 71, 77, 76, 68, 96, 97, 95, 94, 98, 32.10655 + 108, 114, 116, 97, 105, 112, 109, 95, 81, 77, 80, 83, 73, 61, 58, 64, 32.10656 + 73, 78, 80, 80, 82, 85, 84, 81, 80, 84, 88, 89, 91, 101, 113, 111, 32.10657 + 98, 85, 83, 65, 54, 52, 61, 63, 60, 67, 82, 105, 84, 69, 73, 74, 32.10658 + 68, 61, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10661 + 255, 255, 255, 255, 191, 70, 85, 64, 60, 59, 74, 66, 83, 87, 94, 83, 32.10662 + 106, 116, 120, 117, 108, 110, 117, 109, 92, 107, 83, 61, 61, 73, 83, 88, 32.10663 + 91, 112, 99, 80, 71, 79, 87, 79, 64, 62, 59, 60, 64, 64, 62, 64, 32.10664 + 65, 68, 67, 67, 69, 74, 78, 77, 77, 75, 73, 77, 91, 102, 104, 101, 32.10665 + 99, 118, 123, 124, 113, 96, 85, 85, 90, 75, 73, 69, 64, 62, 66, 73, 32.10666 + 79, 100, 101, 96, 92, 94, 97, 88, 77, 71, 77, 89, 105, 111, 99, 77, 32.10667 + 59, 55, 57, 62, 68, 69, 67, 68, 72, 57, 65, 73, 75, 71, 69, 71, 32.10668 + 74, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10671 + 217, 123, 73, 80, 85, 63, 67, 66, 77, 82, 95, 98, 101, 100, 115, 104, 32.10672 + 108, 109, 108, 109, 105, 88, 68, 65, 67, 72, 76, 76, 79, 94, 111, 103, 32.10673 + 97, 81, 67, 63, 69, 71, 68, 71, 66, 64, 64, 63, 61, 65, 68, 63, 32.10674 + 63, 64, 67, 69, 72, 74, 73, 73, 73, 78, 87, 92, 91, 90, 92, 101, 32.10675 + 102, 101, 98, 93, 91, 93, 96, 80, 75, 69, 67, 71, 79, 87, 91, 87, 32.10676 + 91, 91, 86, 89, 95, 100, 98, 105, 96, 91, 91, 89, 81, 75, 76, 70, 32.10677 + 63, 63, 73, 83, 83, 77, 72, 66, 69, 71, 70, 64, 62, 63, 65, 60, 32.10678 + 78, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 114, 79, 83, 32.10681 + 78, 89, 82, 59, 72, 72, 73, 92, 99, 101, 97, 107, 106, 95, 99, 102, 32.10682 + 95, 82, 74, 74, 77, 87, 75, 71, 86, 106, 116, 112, 106, 98, 90, 77, 32.10683 + 66, 68, 74, 77, 76, 75, 69, 65, 65, 66, 66, 70, 76, 80, 80, 80, 32.10684 + 79, 79, 80, 83, 86, 80, 82, 86, 91, 90, 87, 88, 93, 93, 89, 84, 32.10685 + 83, 85, 87, 86, 83, 84, 75, 65, 61, 65, 71, 75, 74, 88, 93, 92, 32.10686 + 82, 76, 79, 90, 95, 106, 97, 95, 96, 86, 69, 64, 71, 76, 72, 73, 32.10687 + 81, 85, 81, 74, 70, 62, 60, 58, 55, 51, 50, 50, 51, 65, 64, 64, 32.10688 + 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 62, 64, 75, 77, 81, 98, 32.10691 + 85, 63, 75, 76, 65, 91, 91, 97, 88, 102, 85, 90, 85, 81, 79, 73, 32.10692 + 69, 74, 83, 85, 87, 92, 98, 102, 106, 112, 116, 95, 84, 74, 78, 91, 32.10693 + 100, 91, 78, 70, 67, 67, 71, 75, 76, 81, 86, 78, 77, 74, 70, 67, 32.10694 + 69, 74, 79, 79, 77, 78, 82, 81, 78, 79, 84, 79, 76, 75, 81, 90, 32.10695 + 97, 98, 96, 91, 85, 78, 72, 70, 70, 71, 72, 90, 91, 91, 79, 69, 32.10696 + 64, 70, 75, 80, 78, 88, 95, 85, 63, 56, 65, 69, 77, 86, 85, 71, 32.10697 + 58, 58, 65, 51, 49, 47, 47, 46, 47, 47, 46, 37, 45, 53, 55, 120, 32.10698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10700 + 255, 255, 255, 255, 255, 255, 185, 55, 65, 70, 80, 78, 89, 104, 93, 80, 32.10701 + 78, 83, 67, 87, 85, 95, 89, 98, 73, 79, 67, 63, 75, 87, 87, 75, 32.10702 + 66, 68, 73, 81, 89, 98, 103, 104, 102, 92, 88, 89, 99, 107, 103, 86, 32.10703 + 71, 66, 67, 73, 82, 87, 86, 85, 87, 91, 89, 85, 82, 82, 87, 93, 32.10704 + 98, 97, 89, 84, 87, 90, 87, 84, 84, 89, 88, 89, 91, 93, 94, 92, 32.10705 + 91, 80, 83, 85, 81, 74, 70, 71, 74, 75, 76, 79, 77, 74, 69, 69, 32.10706 + 68, 73, 67, 71, 76, 70, 59, 64, 76, 65, 73, 83, 81, 66, 51, 51, 32.10707 + 59, 49, 49, 50, 52, 53, 55, 54, 52, 46, 47, 47, 46, 44, 118, 255, 32.10708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10710 + 255, 255, 255, 190, 64, 64, 66, 75, 83, 81, 93, 98, 95, 96, 76, 87, 32.10711 + 78, 83, 81, 88, 88, 87, 68, 64, 68, 72, 74, 73, 74, 78, 82, 86, 32.10712 + 84, 87, 102, 121, 127, 109, 87, 101, 109, 120, 121, 108, 88, 77, 73, 73, 32.10713 + 77, 87, 98, 100, 93, 85, 83, 71, 69, 69, 72, 79, 87, 91, 94, 110, 32.10714 + 101, 94, 97, 100, 97, 91, 88, 88, 88, 87, 84, 79, 75, 73, 72, 75, 32.10715 + 82, 87, 83, 72, 63, 62, 65, 69, 67, 71, 75, 77, 74, 71, 70, 69, 32.10716 + 68, 70, 71, 70, 67, 71, 76, 68, 66, 68, 73, 71, 64, 58, 57, 53, 32.10717 + 54, 57, 60, 59, 60, 60, 60, 73, 57, 45, 51, 62, 66, 255, 255, 255, 32.10718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10720 + 185, 54, 59, 58, 55, 72, 80, 85, 97, 90, 98, 118, 84, 96, 102, 89, 32.10721 + 84, 80, 82, 69, 67, 60, 73, 79, 69, 63, 72, 89, 100, 91, 116, 137, 32.10722 + 135, 121, 112, 112, 114, 112, 118, 124, 118, 99, 79, 74, 81, 81, 86, 98, 32.10723 + 108, 110, 98, 86, 82, 78, 78, 83, 93, 104, 110, 109, 105, 95, 90, 89, 32.10724 + 94, 94, 91, 89, 89, 80, 78, 76, 76, 77, 81, 84, 86, 85, 90, 93, 32.10725 + 88, 79, 70, 67, 69, 75, 70, 70, 71, 71, 67, 67, 69, 68, 72, 76, 32.10726 + 78, 82, 83, 77, 66, 66, 61, 61, 67, 69, 65, 60, 59, 59, 62, 65, 32.10727 + 66, 63, 65, 70, 74, 66, 69, 73, 71, 58, 49, 121, 255, 255, 255, 255, 32.10728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 39, 51, 32.10730 + 62, 65, 63, 71, 81, 93, 104, 88, 105, 141, 100, 110, 127, 103, 93, 76, 32.10731 + 78, 59, 69, 66, 65, 63, 68, 90, 109, 101, 78, 100, 113, 123, 120, 114, 32.10732 + 113, 112, 110, 117, 110, 103, 97, 89, 78, 77, 83, 87, 93, 104, 115, 116, 32.10733 + 103, 90, 84, 78, 80, 88, 101, 114, 117, 108, 98, 93, 95, 100, 106, 106, 32.10734 + 104, 106, 111, 128, 117, 105, 94, 89, 86, 83, 81, 70, 71, 73, 74, 72, 32.10735 + 70, 68, 67, 77, 71, 68, 66, 64, 59, 67, 74, 77, 79, 77, 72, 80, 32.10736 + 89, 86, 71, 56, 59, 67, 67, 60, 52, 55, 61, 67, 70, 74, 73, 73, 32.10737 + 75, 86, 95, 87, 72, 61, 62, 61, 55, 47, 114, 255, 255, 255, 255, 255, 32.10738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 44, 61, 69, 61, 57, 32.10740 + 59, 68, 69, 89, 107, 108, 121, 133, 124, 116, 150, 80, 100, 57, 78, 67, 32.10741 + 58, 60, 61, 65, 67, 68, 74, 85, 94, 97, 115, 127, 122, 115, 116, 117, 32.10742 + 116, 115, 110, 105, 97, 84, 72, 78, 93, 86, 103, 112, 106, 105, 104, 93, 32.10743 + 76, 92, 82, 87, 106, 115, 106, 97, 98, 94, 98, 111, 130, 142, 139, 129, 32.10744 + 121, 120, 115, 107, 97, 94, 94, 92, 85, 76, 73, 68, 67, 68, 71, 76, 32.10745 + 81, 75, 68, 68, 71, 73, 68, 68, 69, 72, 76, 79, 76, 71, 70, 76, 32.10746 + 80, 61, 52, 55, 64, 64, 52, 48, 52, 55, 67, 67, 59, 60, 58, 59, 32.10747 + 66, 68, 82, 78, 61, 61, 75, 66, 42, 255, 255, 255, 255, 255, 255, 255, 32.10748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10749 + 255, 255, 255, 255, 255, 255, 255, 182, 35, 45, 55, 55, 47, 48, 60, 78, 32.10750 + 85, 97, 105, 109, 121, 127, 120, 120, 149, 88, 97, 61, 72, 65, 56, 56, 32.10751 + 58, 61, 61, 62, 68, 77, 85, 87, 96, 103, 102, 99, 105, 114, 120, 110, 32.10752 + 104, 95, 87, 81, 78, 86, 97, 107, 107, 121, 138, 131, 103, 89, 95, 74, 32.10753 + 99, 116, 111, 101, 99, 98, 94, 107, 117, 130, 135, 124, 109, 103, 105, 110, 32.10754 + 113, 116, 118, 118, 112, 98, 83, 75, 74, 74, 71, 71, 71, 73, 74, 71, 32.10755 + 69, 69, 69, 68, 64, 67, 72, 84, 84, 82, 79, 78, 79, 79, 77, 77, 32.10756 + 67, 57, 55, 60, 64, 60, 54, 50, 59, 63, 68, 78, 77, 65, 57, 68, 32.10757 + 61, 62, 74, 79, 71, 58, 55, 46, 255, 255, 255, 255, 255, 255, 255, 255, 32.10758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10759 + 255, 255, 255, 255, 183, 37, 41, 49, 53, 47, 41, 52, 71, 78, 97, 101, 32.10760 + 98, 108, 119, 117, 114, 116, 138, 93, 87, 64, 63, 65, 57, 58, 60, 63, 32.10761 + 63, 64, 68, 76, 82, 101, 98, 97, 95, 92, 95, 108, 122, 102, 102, 97, 32.10762 + 89, 89, 93, 96, 96, 102, 100, 115, 131, 118, 87, 77, 88, 76, 96, 110, 32.10763 + 107, 102, 103, 99, 89, 100, 104, 107, 105, 98, 97, 112, 129, 113, 113, 111, 32.10764 + 108, 109, 108, 100, 91, 81, 83, 85, 82, 79, 75, 75, 76, 69, 70, 72, 32.10765 + 73, 71, 70, 76, 82, 88, 82, 76, 76, 80, 81, 76, 72, 86, 86, 78, 32.10766 + 63, 62, 71, 69, 58, 60, 62, 61, 62, 69, 78, 80, 78, 73, 61, 61, 32.10767 + 75, 80, 70, 61, 62, 49, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10769 + 255, 255, 42, 38, 42, 49, 50, 46, 47, 63, 85, 70, 97, 98, 91, 107, 32.10770 + 116, 107, 106, 102, 118, 91, 75, 65, 56, 65, 59, 59, 60, 61, 62, 64, 32.10771 + 68, 74, 79, 93, 84, 77, 73, 65, 59, 67, 81, 93, 103, 107, 99, 96, 32.10772 + 97, 92, 84, 98, 114, 120, 107, 99, 100, 96, 85, 89, 89, 96, 103, 99, 32.10773 + 88, 85, 91, 90, 82, 76, 76, 79, 84, 94, 103, 105, 104, 98, 88, 84, 32.10774 + 85, 87, 86, 87, 90, 92, 89, 85, 81, 81, 83, 75, 78, 82, 86, 91, 32.10775 + 91, 95, 97, 83, 74, 70, 71, 75, 74, 72, 70, 74, 88, 93, 82, 73, 32.10776 + 76, 78, 77, 73, 77, 79, 69, 53, 57, 70, 76, 74, 83, 77, 60, 59, 32.10777 + 75, 77, 62, 60, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 32.10779 + 44, 42, 43, 46, 48, 50, 56, 73, 87, 70, 97, 99, 94, 108, 111, 99, 32.10780 + 98, 93, 104, 89, 68, 65, 54, 62, 59, 54, 54, 55, 57, 59, 63, 68, 32.10781 + 72, 89, 84, 82, 81, 73, 64, 69, 81, 94, 107, 113, 101, 88, 83, 81, 32.10782 + 75, 95, 114, 116, 96, 95, 111, 107, 82, 87, 97, 107, 100, 78, 63, 75, 32.10783 + 95, 82, 85, 93, 103, 105, 97, 87, 83, 84, 95, 103, 100, 93, 85, 79, 32.10784 + 74, 87, 88, 89, 86, 85, 83, 85, 88, 90, 89, 93, 99, 109, 113, 110, 32.10785 + 103, 80, 74, 72, 71, 72, 67, 72, 77, 73, 77, 83, 86, 85, 83, 85, 32.10786 + 90, 78, 85, 102, 100, 74, 61, 56, 41, 63, 85, 83, 55, 51, 74, 83, 32.10787 + 69, 66, 55, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 47, 48, 52, 32.10789 + 53, 56, 59, 63, 69, 79, 86, 85, 97, 101, 100, 105, 101, 91, 88, 90, 32.10790 + 96, 86, 69, 66, 59, 57, 59, 56, 55, 55, 56, 59, 62, 65, 67, 50, 32.10791 + 57, 65, 69, 66, 65, 74, 87, 108, 114, 112, 97, 80, 75, 79, 84, 92, 32.10792 + 96, 100, 102, 103, 101, 90, 77, 80, 101, 105, 86, 76, 88, 96, 92, 93, 32.10793 + 102, 114, 119, 111, 98, 94, 97, 87, 98, 107, 109, 107, 101, 93, 85, 88, 32.10794 + 88, 88, 88, 91, 92, 92, 91, 98, 97, 99, 105, 116, 121, 114, 103, 91, 32.10795 + 85, 83, 80, 73, 66, 75, 89, 97, 84, 74, 78, 84, 84, 78, 75, 84, 32.10796 + 81, 100, 113, 103, 100, 87, 55, 56, 65, 70, 67, 65, 70, 76, 79, 68, 32.10797 + 56, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 51, 57, 58, 64, 71, 32.10799 + 74, 78, 80, 84, 86, 93, 86, 92, 97, 90, 83, 80, 76, 81, 86, 77, 32.10800 + 69, 64, 66, 53, 58, 60, 59, 58, 58, 59, 60, 61, 61, 51, 67, 80, 32.10801 + 81, 80, 89, 106, 119, 117, 113, 106, 97, 86, 80, 85, 95, 111, 103, 107, 32.10802 + 118, 115, 97, 85, 86, 87, 100, 100, 93, 102, 121, 116, 94, 111, 106, 101, 32.10803 + 96, 88, 83, 87, 94, 109, 105, 99, 98, 106, 111, 106, 96, 89, 88, 88, 32.10804 + 92, 97, 98, 94, 90, 95, 96, 98, 101, 110, 117, 115, 108, 108, 98, 91, 32.10805 + 83, 73, 62, 71, 87, 98, 97, 90, 81, 80, 82, 76, 66, 82, 68, 83, 32.10806 + 100, 100, 117, 123, 97, 73, 63, 64, 75, 75, 67, 68, 80, 79, 66, 51, 32.10807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10808 + 255, 255, 255, 255, 255, 255, 255, 187, 51, 56, 62, 52, 63, 75, 79, 80, 32.10809 + 81, 83, 86, 90, 71, 78, 88, 74, 66, 71, 67, 71, 76, 67, 67, 62, 32.10810 + 71, 51, 59, 59, 56, 54, 53, 53, 52, 51, 50, 55, 74, 86, 80, 76, 32.10811 + 89, 110, 124, 111, 102, 97, 97, 93, 84, 85, 94, 115, 110, 110, 111, 101, 32.10812 + 87, 81, 85, 99, 107, 118, 123, 120, 112, 106, 104, 98, 86, 81, 93, 111, 32.10813 + 123, 127, 127, 114, 102, 90, 92, 105, 113, 100, 83, 85, 83, 84, 91, 98, 32.10814 + 98, 90, 81, 87, 92, 95, 97, 103, 115, 120, 118, 119, 106, 91, 82, 69, 32.10815 + 58, 63, 76, 66, 96, 109, 93, 81, 87, 89, 81, 66, 56, 76, 90, 82, 32.10816 + 100, 120, 103, 97, 80, 68, 71, 72, 69, 69, 73, 90, 77, 62, 117, 255, 32.10817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10818 + 255, 255, 255, 255, 185, 61, 67, 65, 58, 67, 67, 73, 84, 87, 84, 81, 32.10819 + 80, 80, 81, 79, 72, 64, 64, 74, 84, 83, 77, 73, 73, 72, 66, 56, 32.10820 + 49, 53, 51, 48, 57, 70, 62, 51, 55, 83, 85, 87, 91, 98, 105, 108, 32.10821 + 108, 96, 106, 108, 95, 84, 84, 93, 98, 103, 106, 113, 114, 99, 82, 85, 32.10822 + 100, 101, 102, 104, 105, 104, 105, 111, 119, 101, 94, 89, 94, 101, 102, 97, 32.10823 + 92, 103, 102, 105, 106, 101, 92, 88, 89, 83, 97, 91, 84, 91, 83, 75, 32.10824 + 86, 86, 82, 89, 101, 107, 108, 117, 130, 121, 118, 105, 82, 65, 63, 65, 32.10825 + 67, 81, 86, 105, 118, 109, 97, 85, 71, 71, 61, 56, 63, 73, 84, 98, 32.10826 + 110, 96, 90, 86, 87, 90, 84, 71, 59, 74, 72, 70, 63, 255, 255, 255, 32.10827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10828 + 255, 180, 39, 51, 60, 65, 65, 71, 72, 79, 89, 93, 89, 85, 84, 70, 32.10829 + 77, 85, 84, 75, 67, 63, 63, 85, 84, 79, 67, 54, 51, 59, 69, 64, 32.10830 + 62, 52, 47, 51, 54, 72, 103, 102, 95, 92, 100, 114, 119, 109, 96, 113, 32.10831 + 111, 102, 87, 81, 88, 99, 103, 108, 110, 109, 102, 99, 102, 108, 112, 113, 32.10832 + 103, 97, 104, 117, 124, 121, 115, 88, 100, 116, 125, 122, 113, 106, 104, 98, 32.10833 + 97, 100, 102, 100, 93, 92, 94, 90, 88, 70, 68, 88, 89, 77, 78, 87, 32.10834 + 83, 85, 91, 99, 108, 120, 131, 125, 121, 109, 87, 68, 61, 59, 59, 62, 32.10835 + 64, 79, 95, 99, 100, 98, 93, 77, 65, 56, 55, 59, 65, 77, 88, 98, 32.10836 + 92, 86, 84, 87, 87, 81, 76, 73, 73, 73, 68, 255, 255, 255, 255, 255, 32.10837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 32.10838 + 33, 45, 58, 72, 80, 72, 72, 79, 88, 92, 87, 81, 79, 79, 75, 68, 32.10839 + 61, 59, 66, 80, 90, 61, 73, 84, 82, 71, 61, 58, 59, 50, 60, 64, 32.10840 + 69, 74, 72, 84, 111, 113, 106, 103, 110, 117, 115, 100, 86, 121, 111, 97, 32.10841 + 86, 87, 96, 104, 105, 110, 111, 104, 94, 100, 114, 116, 105, 105, 111, 119, 32.10842 + 123, 123, 121, 118, 116, 105, 112, 117, 114, 105, 98, 96, 96, 95, 93, 95, 32.10843 + 98, 96, 91, 90, 94, 83, 88, 81, 79, 88, 88, 87, 94, 86, 88, 89, 32.10844 + 92, 100, 114, 123, 124, 105, 104, 93, 77, 64, 58, 56, 54, 60, 57, 60, 32.10845 + 71, 81, 87, 91, 94, 85, 74, 62, 54, 49, 50, 58, 66, 91, 89, 84, 32.10846 + 82, 82, 86, 89, 91, 73, 73, 74, 71, 125, 255, 255, 255, 255, 255, 255, 32.10847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 33, 42, 32.10848 + 57, 77, 91, 78, 77, 82, 88, 90, 82, 75, 72, 74, 74, 75, 77, 81, 32.10849 + 86, 90, 93, 79, 75, 69, 63, 63, 66, 65, 61, 66, 64, 58, 65, 79, 32.10850 + 85, 96, 117, 108, 109, 109, 107, 98, 88, 83, 84, 115, 105, 95, 89, 92, 32.10851 + 98, 101, 100, 105, 104, 99, 96, 101, 107, 101, 89, 105, 122, 139, 141, 130, 32.10852 + 118, 109, 105, 127, 119, 107, 97, 94, 94, 90, 86, 95, 94, 94, 92, 89, 32.10853 + 84, 84, 87, 77, 87, 92, 93, 93, 91, 94, 100, 82, 89, 94, 96, 107, 32.10854 + 117, 117, 109, 88, 85, 77, 64, 55, 51, 51, 54, 65, 61, 56, 60, 67, 32.10855 + 68, 72, 85, 92, 86, 77, 67, 57, 52, 55, 59, 73, 75, 77, 79, 79, 32.10856 + 83, 87, 89, 77, 75, 75, 70, 58, 255, 255, 255, 255, 255, 255, 255, 255, 32.10857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 34, 36, 41, 52, 71, 32.10858 + 85, 93, 90, 92, 96, 94, 85, 79, 77, 73, 73, 75, 79, 80, 77, 69, 32.10859 + 62, 76, 73, 64, 58, 61, 67, 64, 57, 73, 73, 69, 76, 89, 91, 97, 32.10860 + 116, 113, 109, 105, 98, 87, 78, 81, 90, 112, 104, 95, 89, 88, 90, 96, 32.10861 + 99, 102, 95, 94, 101, 105, 100, 98, 100, 123, 127, 129, 129, 130, 125, 109, 32.10862 + 92, 112, 117, 119, 117, 117, 113, 101, 90, 95, 91, 89, 88, 85, 79, 81, 32.10863 + 86, 92, 82, 76, 81, 88, 93, 87, 77, 78, 85, 89, 89, 97, 107, 105, 32.10864 + 93, 93, 86, 75, 64, 55, 51, 51, 54, 53, 57, 54, 59, 68, 63, 64, 32.10865 + 85, 92, 95, 93, 85, 72, 63, 59, 58, 54, 62, 72, 79, 82, 82, 80, 32.10866 + 80, 87, 82, 77, 71, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10867 + 255, 255, 255, 255, 255, 255, 255, 255, 34, 38, 38, 39, 44, 57, 67, 95, 32.10868 + 93, 93, 95, 94, 86, 82, 81, 86, 82, 79, 82, 84, 81, 70, 60, 43, 32.10869 + 57, 69, 72, 74, 78, 76, 69, 70, 83, 93, 100, 102, 93, 96, 116, 123, 32.10870 + 107, 95, 93, 94, 91, 93, 99, 111, 102, 92, 86, 83, 85, 96, 106, 99, 32.10871 + 92, 94, 104, 107, 103, 111, 127, 117, 121, 118, 108, 103, 106, 107, 102, 95, 32.10872 + 114, 127, 122, 109, 101, 95, 91, 90, 87, 84, 85, 83, 83, 86, 93, 101, 32.10873 + 87, 81, 78, 71, 75, 78, 71, 78, 79, 77, 76, 80, 87, 91, 90, 92, 32.10874 + 81, 71, 64, 58, 53, 55, 60, 47, 56, 56, 65, 79, 67, 58, 80, 81, 32.10875 + 93, 100, 95, 82, 71, 63, 60, 53, 59, 69, 77, 81, 81, 78, 78, 95, 32.10876 + 89, 82, 75, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10877 + 255, 255, 255, 255, 255, 255, 37, 40, 39, 40, 42, 51, 59, 84, 82, 82, 32.10878 + 86, 89, 86, 84, 85, 88, 91, 100, 113, 121, 111, 88, 69, 65, 68, 66, 32.10879 + 62, 72, 92, 103, 103, 94, 96, 91, 90, 94, 94, 107, 134, 108, 96, 90, 32.10880 + 94, 97, 95, 98, 106, 100, 92, 87, 88, 93, 97, 106, 115, 93, 97, 103, 32.10881 + 106, 109, 111, 120, 129, 109, 122, 123, 105, 90, 95, 110, 119, 111, 125, 128, 32.10882 + 111, 94, 89, 88, 87, 89, 86, 84, 85, 85, 87, 93, 101, 96, 91, 97, 32.10883 + 93, 72, 70, 80, 76, 80, 77, 76, 78, 79, 81, 87, 93, 86, 77, 69, 32.10884 + 65, 61, 56, 57, 61, 54, 61, 57, 70, 92, 74, 51, 66, 62, 80, 95, 32.10885 + 94, 85, 77, 72, 68, 65, 65, 64, 66, 71, 76, 80, 83, 94, 89, 83, 32.10886 + 79, 70, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10887 + 255, 255, 255, 33, 37, 40, 40, 42, 46, 54, 61, 75, 73, 74, 80, 85, 32.10888 + 87, 89, 92, 97, 86, 75, 76, 85, 89, 83, 75, 90, 85, 80, 82, 100, 32.10889 + 114, 102, 79, 86, 87, 89, 103, 121, 115, 105, 109, 83, 83, 92, 97, 92, 32.10890 + 83, 94, 111, 83, 78, 82, 95, 108, 112, 116, 121, 88, 103, 113, 110, 108, 32.10891 + 113, 116, 110, 124, 127, 123, 110, 110, 118, 121, 114, 134, 138, 134, 120, 113, 32.10892 + 110, 102, 88, 94, 89, 87, 88, 89, 90, 98, 107, 97, 84, 92, 102, 95, 32.10893 + 93, 88, 65, 80, 78, 83, 92, 91, 86, 89, 99, 97, 86, 79, 74, 67, 32.10894 + 57, 52, 53, 56, 60, 53, 71, 102, 83, 53, 61, 47, 67, 87, 91, 86, 32.10895 + 82, 81, 79, 78, 70, 59, 54, 59, 71, 81, 89, 88, 85, 83, 80, 74, 32.10896 + 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10897 + 255, 27, 43, 42, 34, 41, 52, 60, 70, 70, 78, 86, 91, 87, 83, 85, 32.10898 + 92, 98, 91, 81, 77, 77, 81, 83, 84, 86, 93, 109, 120, 123, 113, 94, 32.10899 + 79, 67, 80, 91, 98, 118, 130, 114, 83, 84, 98, 109, 107, 106, 104, 98, 32.10900 + 87, 74, 91, 84, 105, 118, 138, 106, 87, 115, 117, 115, 107, 99, 101, 116, 32.10901 + 129, 127, 128, 129, 124, 125, 127, 139, 145, 143, 127, 117, 112, 110, 99, 94, 32.10902 + 94, 100, 100, 99, 98, 99, 98, 94, 89, 79, 87, 92, 90, 92, 95, 92, 32.10903 + 86, 78, 76, 78, 80, 79, 75, 77, 81, 77, 73, 70, 66, 63, 60, 57, 32.10904 + 54, 60, 50, 60, 87, 94, 73, 60, 62, 62, 58, 79, 87, 87, 97, 92, 32.10905 + 75, 76, 72, 71, 70, 65, 62, 71, 83, 89, 85, 84, 83, 81, 68, 255, 32.10906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 32.10907 + 55, 49, 38, 46, 58, 66, 76, 66, 73, 82, 88, 89, 90, 97, 106, 90, 32.10908 + 94, 93, 84, 74, 77, 92, 107, 104, 106, 108, 107, 101, 90, 76, 67, 91, 32.10909 + 85, 93, 115, 124, 110, 94, 88, 91, 96, 102, 108, 114, 113, 102, 89, 95, 32.10910 + 104, 112, 135, 137, 123, 101, 107, 92, 95, 101, 106, 113, 122, 132, 140, 133, 32.10911 + 129, 123, 121, 123, 128, 133, 135, 127, 117, 110, 112, 114, 111, 109, 112, 114, 32.10912 + 113, 110, 112, 115, 116, 109, 103, 88, 90, 90, 88, 89, 89, 85, 76, 75, 32.10913 + 72, 72, 74, 73, 69, 70, 75, 80, 77, 71, 67, 63, 61, 60, 58, 60, 32.10914 + 53, 61, 80, 87, 76, 65, 66, 61, 85, 68, 73, 85, 79, 86, 83, 94, 32.10915 + 79, 68, 71, 77, 76, 71, 68, 78, 84, 92, 93, 83, 68, 126, 255, 255, 32.10916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 54, 43, 32.10917 + 32, 44, 59, 68, 76, 80, 84, 90, 88, 87, 88, 96, 103, 95, 89, 79, 32.10918 + 75, 80, 90, 100, 106, 115, 122, 130, 135, 132, 122, 110, 102, 99, 86, 88, 32.10919 + 105, 105, 88, 80, 89, 95, 100, 110, 120, 118, 106, 94, 88, 103, 117, 135, 32.10920 + 136, 129, 96, 91, 105, 103, 105, 112, 124, 138, 146, 148, 148, 133, 125, 115, 32.10921 + 114, 121, 128, 129, 126, 125, 119, 115, 119, 123, 124, 123, 127, 121, 119, 114, 32.10922 + 114, 116, 116, 109, 104, 95, 91, 87, 84, 86, 88, 80, 71, 82, 78, 78, 32.10923 + 79, 77, 73, 74, 79, 83, 79, 73, 67, 62, 59, 59, 58, 59, 57, 63, 32.10924 + 73, 79, 77, 72, 71, 67, 80, 85, 58, 79, 88, 55, 95, 92, 89, 86, 32.10925 + 83, 76, 68, 66, 68, 70, 74, 82, 88, 86, 75, 67, 255, 255, 255, 255, 32.10926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 48, 57, 48, 40, 55, 32.10927 + 71, 78, 85, 88, 94, 94, 90, 84, 86, 88, 91, 91, 81, 68, 69, 81, 32.10928 + 93, 97, 95, 95, 105, 118, 124, 125, 121, 118, 116, 98, 91, 84, 81, 82, 32.10929 + 85, 88, 91, 98, 111, 129, 133, 113, 89, 85, 95, 108, 132, 144, 109, 104, 32.10930 + 83, 91, 92, 112, 111, 112, 116, 122, 123, 120, 115, 130, 121, 113, 113, 120, 32.10931 + 126, 128, 126, 135, 131, 128, 127, 127, 125, 122, 123, 125, 122, 117, 111, 105, 32.10932 + 103, 101, 101, 98, 92, 84, 83, 87, 89, 82, 75, 74, 69, 68, 68, 65, 32.10933 + 60, 61, 66, 79, 78, 74, 68, 63, 59, 59, 58, 58, 62, 67, 70, 75, 32.10934 + 79, 76, 72, 58, 95, 66, 79, 95, 72, 82, 80, 86, 91, 94, 89, 76, 32.10935 + 66, 65, 70, 73, 61, 58, 70, 84, 85, 75, 255, 255, 255, 255, 255, 255, 32.10936 + 255, 255, 255, 255, 255, 255, 255, 255, 36, 42, 54, 51, 47, 61, 72, 74, 32.10937 + 79, 79, 88, 91, 89, 87, 91, 92, 91, 75, 81, 83, 81, 78, 78, 86, 32.10938 + 94, 91, 89, 86, 83, 82, 87, 98, 107, 109, 99, 88, 84, 87, 91, 93, 32.10939 + 95, 108, 115, 124, 123, 105, 89, 96, 115, 133, 138, 132, 92, 95, 85, 97, 32.10940 + 98, 105, 104, 103, 101, 101, 102, 105, 109, 127, 126, 123, 121, 121, 124, 128, 32.10941 + 130, 139, 137, 134, 130, 126, 123, 119, 116, 130, 131, 126, 115, 104, 101, 106, 32.10942 + 112, 104, 95, 86, 86, 88, 89, 85, 78, 74, 69, 67, 65, 61, 57, 58, 32.10943 + 62, 71, 72, 74, 72, 69, 67, 68, 68, 61, 66, 70, 72, 76, 81, 76, 32.10944 + 68, 78, 59, 90, 84, 85, 104, 77, 87, 94, 88, 83, 83, 87, 85, 75, 32.10945 + 64, 79, 64, 54, 61, 74, 79, 76, 255, 255, 255, 255, 255, 255, 255, 255, 32.10946 + 255, 255, 255, 255, 255, 255, 44, 44, 60, 62, 58, 68, 75, 72, 72, 81, 32.10947 + 89, 93, 88, 88, 92, 93, 89, 86, 85, 84, 85, 86, 86, 85, 82, 84, 32.10948 + 84, 84, 85, 91, 102, 114, 120, 120, 98, 91, 103, 103, 89, 85, 96, 120, 32.10949 + 112, 104, 102, 104, 110, 122, 133, 139, 123, 104, 91, 100, 88, 95, 110, 101, 32.10950 + 103, 108, 109, 112, 118, 131, 141, 133, 136, 137, 133, 127, 124, 127, 131, 137, 32.10951 + 140, 140, 136, 134, 133, 130, 127, 133, 135, 132, 123, 113, 109, 117, 126, 112, 32.10952 + 102, 93, 93, 93, 89, 85, 82, 85, 78, 75, 73, 68, 63, 63, 68, 64, 32.10953 + 68, 73, 74, 75, 77, 81, 84, 72, 71, 72, 75, 80, 82, 73, 63, 83, 32.10954 + 81, 67, 94, 90, 83, 110, 86, 91, 92, 91, 87, 87, 87, 82, 77, 81, 32.10955 + 77, 74, 70, 65, 64, 73, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10956 + 255, 255, 255, 255, 45, 59, 80, 85, 81, 87, 91, 89, 89, 92, 98, 98, 32.10957 + 89, 87, 93, 95, 89, 102, 91, 82, 86, 97, 98, 86, 73, 74, 76, 84, 32.10958 + 94, 105, 113, 117, 117, 110, 100, 97, 102, 101, 92, 94, 105, 119, 114, 107, 32.10959 + 105, 114, 127, 134, 135, 118, 110, 93, 100, 104, 101, 97, 111, 107, 111, 117, 32.10960 + 120, 124, 129, 138, 144, 139, 143, 146, 143, 136, 132, 132, 134, 140, 146, 148, 32.10961 + 146, 145, 146, 144, 141, 135, 137, 135, 131, 125, 123, 124, 126, 118, 110, 105, 32.10962 + 104, 103, 98, 96, 97, 79, 72, 68, 65, 59, 54, 54, 59, 67, 70, 72, 32.10963 + 71, 71, 75, 83, 90, 86, 77, 72, 77, 83, 81, 69, 61, 91, 78, 86, 32.10964 + 80, 86, 95, 82, 100, 88, 98, 101, 91, 79, 77, 82, 86, 78, 82, 85, 32.10965 + 81, 69, 63, 73, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.10966 + 255, 184, 41, 50, 72, 80, 77, 84, 87, 87, 89, 97, 103, 101, 91, 90, 32.10967 + 99, 103, 98, 96, 97, 97, 94, 91, 87, 85, 83, 97, 92, 87, 85, 89, 32.10968 + 95, 99, 99, 96, 107, 105, 88, 85, 104, 119, 120, 108, 120, 127, 124, 123, 32.10969 + 128, 128, 124, 97, 119, 109, 114, 110, 128, 114, 114, 137, 139, 141, 142, 140, 32.10970 + 137, 136, 135, 142, 144, 148, 148, 145, 141, 139, 139, 142, 149, 152, 148, 147, 32.10971 + 148, 146, 141, 143, 142, 139, 137, 138, 135, 127, 121, 121, 115, 112, 115, 112, 32.10972 + 108, 108, 112, 84, 77, 72, 69, 63, 57, 58, 63, 74, 73, 71, 66, 63, 32.10973 + 67, 77, 85, 97, 80, 71, 77, 84, 79, 67, 61, 79, 100, 82, 80, 98, 32.10974 + 81, 72, 96, 100, 97, 89, 81, 82, 86, 82, 72, 76, 77, 80, 83, 79, 32.10975 + 74, 76, 79, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 32.10976 + 30, 45, 61, 84, 89, 79, 81, 90, 90, 98, 103, 105, 100, 95, 92, 95, 32.10977 + 93, 97, 94, 96, 104, 107, 95, 78, 67, 82, 86, 92, 98, 102, 101, 99, 32.10978 + 94, 91, 89, 86, 88, 101, 116, 121, 118, 117, 115, 117, 124, 127, 121, 115, 32.10979 + 114, 114, 116, 121, 130, 133, 130, 132, 138, 149, 147, 144, 143, 144, 147, 150, 32.10980 + 151, 151, 151, 152, 153, 153, 151, 146, 142, 144, 147, 151, 152, 151, 149, 149, 32.10981 + 149, 146, 149, 150, 148, 144, 140, 142, 144, 135, 129, 123, 122, 120, 117, 118, 32.10982 + 121, 92, 81, 76, 80, 79, 70, 62, 61, 66, 78, 79, 65, 61, 73, 81, 32.10983 + 76, 80, 77, 75, 75, 75, 72, 64, 60, 67, 90, 102, 92, 82, 86, 88, 32.10984 + 87, 98, 92, 93, 99, 94, 80, 76, 81, 73, 79, 75, 71, 72, 70, 77, 32.10985 + 94, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32, 50, 32.10986 + 61, 82, 94, 88, 86, 96, 96, 101, 108, 110, 103, 98, 98, 97, 97, 114, 32.10987 + 103, 95, 97, 106, 118, 138, 154, 106, 95, 85, 84, 91, 94, 87, 80, 87, 32.10988 + 94, 102, 111, 120, 125, 119, 110, 110, 107, 107, 112, 114, 113, 115, 121, 139, 32.10989 + 140, 144, 150, 150, 145, 145, 150, 152, 152, 152, 153, 155, 157, 159, 160, 154, 32.10990 + 153, 153, 153, 154, 152, 148, 145, 147, 149, 152, 152, 151, 150, 150, 153, 149, 32.10991 + 150, 150, 147, 143, 141, 140, 141, 142, 135, 126, 124, 122, 120, 124, 129, 118, 32.10992 + 102, 87, 79, 76, 71, 64, 60, 62, 72, 71, 59, 58, 71, 77, 70, 76, 32.10993 + 73, 71, 70, 69, 66, 59, 54, 55, 75, 93, 98, 97, 98, 92, 85, 95, 32.10994 + 83, 85, 99, 98, 80, 70, 75, 71, 71, 63, 61, 67, 67, 71, 83, 91, 32.10995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32, 53, 56, 77, 32.10996 + 97, 95, 91, 99, 102, 106, 112, 114, 109, 104, 102, 101, 100, 111, 107, 100, 32.10997 + 92, 88, 92, 108, 122, 126, 113, 98, 89, 88, 89, 88, 85, 84, 97, 111, 32.10998 + 120, 123, 121, 111, 101, 108, 106, 106, 109, 111, 115, 125, 137, 141, 143, 146, 32.10999 + 149, 147, 144, 143, 147, 155, 157, 159, 162, 164, 165, 165, 165, 160, 158, 156, 32.11000 + 155, 156, 155, 153, 151, 152, 153, 154, 154, 152, 153, 154, 156, 158, 156, 154, 32.11001 + 152, 151, 149, 146, 144, 144, 136, 128, 124, 121, 120, 124, 127, 133, 120, 102, 32.11002 + 87, 81, 77, 69, 60, 64, 71, 69, 59, 60, 72, 76, 70, 75, 73, 71, 32.11003 + 70, 69, 66, 59, 56, 56, 67, 84, 101, 111, 113, 105, 99, 96, 80, 78, 32.11004 + 94, 101, 87, 74, 73, 82, 76, 62, 59, 68, 69, 68, 76, 101, 255, 255, 32.11005 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 23, 26, 50, 48, 68, 95, 98, 32.11006 + 93, 98, 103, 108, 114, 118, 111, 106, 105, 104, 103, 96, 102, 108, 107, 100, 32.11007 + 91, 90, 93, 121, 121, 119, 108, 93, 88, 94, 102, 89, 99, 108, 109, 107, 32.11008 + 106, 102, 97, 105, 108, 113, 118, 120, 123, 136, 149, 148, 150, 154, 156, 156, 32.11009 + 156, 157, 160, 158, 160, 161, 163, 164, 165, 164, 164, 162, 159, 156, 155, 155, 32.11010 + 155, 154, 153, 153, 154, 153, 152, 151, 152, 155, 158, 162, 158, 155, 154, 156, 32.11011 + 155, 152, 148, 142, 137, 132, 130, 125, 119, 117, 117, 125, 122, 115, 102, 92, 32.11012 + 86, 77, 66, 64, 72, 71, 61, 58, 67, 72, 70, 71, 69, 68, 68, 67, 32.11013 + 66, 62, 61, 64, 65, 73, 91, 106, 112, 112, 114, 108, 92, 78, 81, 95, 32.11014 + 100, 91, 78, 91, 84, 69, 63, 69, 67, 66, 73, 89, 147, 255, 255, 255, 32.11015 + 255, 255, 255, 255, 255, 255, 20, 22, 23, 42, 40, 61, 89, 95, 93, 98, 32.11016 + 103, 110, 116, 119, 114, 107, 107, 107, 106, 110, 113, 113, 109, 107, 107, 107, 32.11017 + 105, 106, 115, 121, 116, 104, 96, 98, 103, 105, 112, 114, 110, 105, 105, 106, 32.11018 + 106, 102, 109, 121, 130, 131, 131, 139, 150, 154, 155, 158, 159, 160, 162, 164, 32.11019 + 166, 162, 161, 160, 159, 159, 159, 160, 160, 162, 159, 155, 154, 154, 155, 154, 32.11020 + 154, 153, 153, 152, 150, 149, 151, 154, 158, 154, 150, 148, 148, 151, 151, 151, 32.11021 + 148, 144, 142, 143, 143, 137, 124, 115, 108, 114, 117, 119, 110, 99, 90, 84, 32.11022 + 80, 61, 70, 70, 60, 52, 57, 64, 66, 62, 61, 61, 60, 61, 63, 64, 32.11023 + 66, 64, 61, 63, 77, 91, 100, 105, 112, 125, 114, 88, 69, 80, 104, 102, 32.11024 + 81, 84, 83, 72, 64, 64, 59, 62, 74, 66, 92, 255, 255, 255, 255, 255, 32.11025 + 255, 255, 255, 255, 22, 24, 24, 34, 37, 60, 87, 94, 95, 102, 105, 115, 32.11026 + 121, 123, 118, 113, 112, 112, 111, 121, 118, 110, 105, 104, 109, 109, 106, 114, 32.11027 + 115, 116, 120, 122, 118, 110, 105, 127, 134, 138, 132, 130, 126, 127, 122, 115, 32.11028 + 122, 137, 145, 147, 142, 148, 153, 155, 157, 158, 156, 155, 158, 159, 158, 166, 32.11029 + 165, 163, 161, 160, 159, 160, 160, 162, 160, 156, 155, 155, 156, 155, 154, 153, 32.11030 + 153, 152, 151, 149, 151, 154, 157, 152, 151, 150, 150, 151, 152, 153, 152, 143, 32.11031 + 143, 146, 148, 140, 124, 112, 103, 114, 113, 116, 114, 103, 92, 89, 93, 65, 32.11032 + 71, 71, 62, 55, 58, 65, 67, 63, 61, 60, 58, 60, 65, 70, 76, 63, 32.11033 + 61, 62, 72, 88, 100, 103, 102, 129, 129, 106, 74, 71, 93, 99, 86, 78, 32.11034 + 83, 77, 70, 66, 60, 65, 81, 63, 91, 255, 255, 255, 255, 255, 255, 255, 32.11035 + 255, 255, 22, 23, 23, 30, 41, 68, 89, 95, 104, 113, 109, 121, 128, 130, 32.11036 + 125, 120, 118, 118, 118, 112, 116, 119, 120, 127, 135, 134, 130, 133, 130, 128, 32.11037 + 131, 135, 138, 135, 133, 149, 154, 157, 153, 151, 149, 146, 140, 139, 143, 153, 32.11038 + 159, 160, 155, 159, 164, 165, 168, 169, 163, 162, 165, 166, 164, 163, 164, 164, 32.11039 + 164, 163, 162, 161, 160, 163, 161, 159, 158, 158, 158, 156, 155, 153, 154, 154, 32.11040 + 153, 152, 152, 155, 157, 154, 155, 155, 154, 152, 151, 154, 155, 147, 145, 145, 32.11041 + 145, 139, 125, 115, 108, 114, 105, 110, 122, 119, 102, 93, 97, 72, 71, 67, 32.11042 + 62, 64, 69, 71, 69, 68, 66, 62, 59, 60, 67, 76, 84, 68, 65, 60, 32.11043 + 66, 87, 109, 109, 99, 114, 127, 124, 100, 78, 79, 92, 102, 85, 90, 86, 32.11044 + 78, 74, 66, 68, 83, 78, 85, 255, 255, 255, 255, 255, 255, 255, 255, 177, 32.11045 + 19, 20, 19, 30, 47, 76, 94, 99, 111, 121, 116, 127, 133, 135, 130, 125, 32.11046 + 124, 124, 123, 129, 135, 136, 132, 132, 138, 138, 134, 140, 142, 142, 140, 138, 32.11047 + 141, 156, 166, 161, 163, 161, 157, 155, 156, 155, 151, 155, 155, 158, 162, 162, 32.11048 + 160, 163, 169, 161, 165, 168, 160, 161, 163, 167, 162, 160, 160, 165, 165, 167, 32.11049 + 163, 162, 160, 164, 162, 162, 160, 161, 160, 159, 156, 155, 155, 157, 155, 155, 32.11050 + 154, 157, 158, 154, 156, 157, 155, 150, 148, 149, 152, 156, 151, 148, 146, 140, 32.11051 + 130, 125, 122, 108, 98, 109, 133, 137, 114, 95, 94, 72, 65, 57, 57, 66, 32.11052 + 74, 72, 67, 69, 65, 60, 56, 56, 63, 76, 83, 72, 64, 51, 52, 80, 32.11053 + 112, 116, 98, 97, 117, 136, 126, 92, 71, 89, 120, 93, 96, 89, 81, 76, 32.11054 + 66, 64, 78, 89, 74, 138, 255, 255, 255, 255, 255, 255, 255, 15, 16, 19, 32.11055 + 20, 39, 61, 86, 102, 111, 112, 119, 124, 121, 126, 128, 131, 132, 130, 128, 32.11056 + 127, 131, 133, 136, 137, 139, 142, 146, 150, 151, 149, 149, 153, 159, 164, 167, 32.11057 + 167, 170, 170, 169, 164, 156, 152, 154, 156, 157, 155, 159, 164, 165, 162, 162, 32.11058 + 164, 165, 165, 167, 167, 167, 164, 162, 159, 165, 163, 163, 162, 163, 163, 166, 32.11059 + 167, 164, 166, 169, 164, 162, 159, 163, 164, 164, 161, 163, 160, 161, 158, 159, 32.11060 + 159, 163, 162, 159, 158, 157, 155, 155, 154, 160, 160, 156, 149, 141, 134, 129, 32.11061 + 126, 105, 114, 107, 111, 133, 131, 105, 96, 89, 74, 64, 66, 67, 60, 62, 32.11062 + 66, 66, 67, 74, 69, 55, 59, 75, 80, 72, 82, 72, 50, 59, 96, 117, 32.11063 + 110, 98, 104, 131, 118, 98, 83, 75, 120, 105, 84, 95, 71, 96, 65, 79, 32.11064 + 69, 90, 93, 86, 255, 255, 255, 255, 255, 255, 255, 18, 19, 19, 21, 42, 32.11065 + 74, 100, 105, 108, 118, 126, 125, 126, 128, 129, 130, 131, 128, 127, 125, 132, 32.11066 + 135, 139, 143, 145, 148, 152, 155, 160, 158, 157, 159, 164, 168, 169, 169, 166, 32.11067 + 166, 165, 162, 159, 157, 157, 158, 167, 164, 167, 171, 171, 168, 167, 169, 169, 32.11068 + 167, 168, 168, 167, 165, 164, 163, 163, 162, 162, 161, 162, 163, 164, 165, 164, 32.11069 + 164, 164, 162, 160, 159, 160, 162, 161, 160, 160, 159, 158, 157, 157, 156, 160, 32.11070 + 159, 158, 158, 158, 157, 155, 155, 154, 154, 151, 147, 139, 132, 126, 124, 119, 32.11071 + 121, 119, 124, 144, 142, 119, 100, 92, 78, 71, 75, 77, 69, 66, 68, 65, 32.11072 + 65, 70, 67, 56, 61, 74, 77, 78, 88, 83, 64, 57, 77, 101, 114, 108, 32.11073 + 102, 113, 122, 115, 88, 78, 110, 115, 94, 94, 77, 95, 76, 83, 76, 80, 32.11074 + 90, 87, 255, 255, 255, 255, 255, 255, 255, 22, 21, 20, 22, 52, 90, 111, 32.11075 + 106, 105, 120, 131, 128, 136, 137, 135, 135, 135, 133, 133, 131, 136, 140, 146, 32.11076 + 150, 153, 155, 158, 161, 168, 167, 165, 166, 168, 170, 170, 169, 169, 168, 167, 32.11077 + 167, 168, 169, 171, 170, 174, 171, 173, 176, 175, 171, 170, 172, 171, 170, 169, 32.11078 + 168, 167, 167, 167, 167, 168, 167, 167, 167, 167, 168, 169, 170, 168, 166, 164, 32.11079 + 163, 163, 164, 163, 162, 163, 162, 162, 161, 160, 160, 159, 159, 161, 161, 160, 32.11080 + 161, 161, 162, 160, 160, 149, 150, 150, 147, 140, 133, 126, 124, 120, 109, 111, 32.11081 + 121, 134, 138, 120, 91, 89, 77, 72, 79, 85, 79, 72, 69, 66, 62, 65, 32.11082 + 65, 57, 61, 70, 71, 80, 92, 94, 80, 60, 61, 89, 119, 116, 102, 93, 32.11083 + 122, 129, 93, 83, 97, 120, 105, 93, 87, 90, 86, 85, 83, 78, 92, 93, 32.11084 + 255, 255, 255, 255, 255, 255, 255, 23, 19, 19, 21, 73, 95, 108, 105, 105, 32.11085 + 119, 131, 132, 138, 137, 137, 137, 137, 137, 139, 140, 142, 146, 152, 156, 158, 32.11086 + 159, 161, 162, 169, 168, 167, 168, 168, 169, 168, 168, 171, 168, 167, 168, 172, 32.11087 + 175, 176, 174, 173, 170, 171, 174, 173, 170, 169, 172, 172, 170, 168, 165, 165, 32.11088 + 165, 167, 167, 167, 166, 167, 167, 168, 168, 169, 169, 170, 167, 163, 163, 165, 32.11089 + 166, 164, 161, 162, 162, 161, 161, 160, 160, 159, 159, 160, 160, 160, 160, 160, 32.11090 + 161, 159, 159, 150, 152, 152, 150, 143, 135, 128, 125, 129, 109, 112, 122, 131, 32.11091 + 141, 133, 101, 84, 71, 66, 73, 83, 82, 76, 70, 69, 61, 63, 66, 59, 32.11092 + 60, 64, 63, 69, 84, 91, 80, 61, 60, 82, 107, 110, 106, 85, 114, 124, 32.11093 + 92, 89, 88, 113, 110, 95, 98, 84, 92, 84, 89, 86, 96, 96, 255, 255, 32.11094 + 255, 255, 255, 255, 255, 21, 18, 22, 28, 95, 95, 99, 106, 112, 118, 128, 32.11095 + 138, 133, 133, 133, 133, 135, 137, 139, 142, 147, 151, 156, 159, 159, 159, 160, 32.11096 + 161, 163, 164, 165, 165, 165, 165, 165, 165, 167, 164, 161, 163, 167, 169, 170, 32.11097 + 168, 170, 167, 167, 170, 171, 169, 169, 173, 172, 169, 167, 163, 164, 164, 166, 32.11098 + 167, 161, 160, 162, 162, 163, 162, 163, 162, 166, 163, 159, 159, 161, 162, 160, 32.11099 + 157, 156, 156, 156, 155, 155, 155, 155, 154, 155, 155, 154, 154, 153, 153, 151, 32.11100 + 151, 154, 155, 155, 151, 144, 136, 127, 124, 130, 109, 109, 115, 122, 137, 138, 32.11101 + 114, 91, 77, 66, 68, 76, 78, 75, 69, 72, 62, 64, 68, 61, 58, 59, 32.11102 + 56, 57, 72, 77, 67, 59, 65, 75, 81, 97, 110, 91, 101, 106, 88, 94, 32.11103 + 87, 101, 110, 100, 108, 85, 95, 85, 93, 95, 99, 93, 255, 255, 255, 255, 32.11104 + 255, 255, 255, 24, 22, 31, 48, 106, 96, 97, 110, 119, 122, 129, 141, 136, 32.11105 + 136, 136, 137, 141, 143, 145, 147, 151, 154, 157, 159, 158, 158, 159, 160, 159, 32.11106 + 161, 163, 163, 162, 162, 162, 163, 166, 165, 163, 164, 165, 166, 168, 168, 169, 32.11107 + 166, 165, 168, 170, 168, 169, 173, 170, 168, 166, 164, 163, 163, 165, 166, 161, 32.11108 + 162, 163, 164, 164, 164, 164, 163, 167, 164, 162, 161, 161, 162, 161, 160, 157, 32.11109 + 156, 156, 156, 156, 156, 156, 156, 156, 156, 155, 154, 154, 153, 151, 151, 155, 32.11110 + 156, 155, 151, 143, 135, 128, 125, 123, 111, 107, 106, 113, 126, 132, 123, 111, 32.11111 + 95, 79, 71, 72, 73, 72, 68, 73, 63, 66, 72, 64, 57, 57, 55, 61, 32.11112 + 71, 71, 64, 64, 72, 74, 70, 91, 107, 98, 92, 94, 91, 94, 92, 92, 32.11113 + 106, 103, 111, 91, 100, 90, 95, 103, 105, 99, 142, 255, 255, 255, 255, 255, 32.11114 + 181, 29, 29, 47, 73, 103, 105, 110, 118, 127, 131, 136, 142, 145, 145, 146, 32.11115 + 147, 150, 151, 152, 153, 152, 156, 158, 159, 160, 161, 163, 165, 163, 166, 168, 32.11116 + 168, 165, 163, 164, 165, 167, 168, 171, 170, 169, 169, 172, 174, 171, 167, 167, 32.11117 + 169, 168, 166, 167, 170, 172, 170, 169, 167, 166, 166, 167, 167, 168, 169, 170, 32.11118 + 171, 172, 171, 171, 168, 167, 167, 166, 164, 162, 162, 163, 164, 160, 160, 160, 32.11119 + 160, 160, 161, 161, 161, 159, 160, 159, 159, 159, 160, 158, 158, 157, 158, 156, 32.11120 + 152, 145, 139, 133, 131, 126, 129, 122, 113, 121, 128, 132, 139, 127, 113, 93, 32.11121 + 78, 73, 72, 72, 69, 71, 62, 68, 77, 67, 58, 59, 59, 69, 68, 67, 32.11122 + 68, 68, 67, 73, 81, 98, 98, 98, 91, 98, 101, 90, 98, 87, 96, 96, 32.11123 + 101, 95, 103, 95, 92, 103, 110, 110, 98, 255, 255, 255, 255, 255, 37, 34, 32.11124 + 38, 61, 93, 97, 113, 124, 125, 130, 139, 143, 140, 148, 147, 149, 150, 152, 32.11125 + 151, 152, 153, 153, 155, 157, 159, 159, 162, 165, 168, 167, 170, 172, 171, 168, 32.11126 + 165, 165, 166, 163, 166, 170, 169, 167, 167, 171, 175, 172, 167, 166, 167, 166, 32.11127 + 162, 163, 166, 172, 171, 170, 169, 168, 167, 167, 168, 167, 168, 170, 171, 172, 32.11128 + 171, 170, 167, 162, 163, 164, 162, 158, 157, 159, 162, 159, 159, 159, 159, 159, 32.11129 + 159, 159, 159, 157, 157, 157, 158, 160, 161, 160, 160, 160, 160, 158, 154, 148, 32.11130 + 144, 139, 139, 115, 129, 121, 107, 115, 116, 118, 134, 132, 119, 101, 83, 76, 32.11131 + 74, 74, 72, 68, 61, 69, 79, 69, 59, 61, 64, 66, 57, 57, 68, 64, 32.11132 + 54, 66, 92, 108, 89, 95, 93, 107, 110, 86, 103, 85, 88, 88, 90, 96, 32.11133 + 103, 97, 86, 94, 107, 114, 103, 255, 255, 255, 255, 255, 42, 23, 34, 92, 32.11134 + 97, 104, 111, 117, 125, 130, 133, 137, 137, 144, 146, 150, 151, 151, 150, 152, 32.11135 + 154, 154, 155, 156, 157, 157, 160, 165, 168, 170, 170, 170, 170, 170, 170, 170, 32.11136 + 170, 166, 166, 167, 167, 168, 169, 169, 169, 168, 167, 167, 166, 168, 169, 170, 32.11137 + 170, 169, 170, 170, 168, 165, 164, 164, 165, 173, 172, 172, 172, 173, 172, 169, 32.11138 + 164, 168, 165, 163, 163, 165, 166, 167, 167, 161, 161, 160, 160, 159, 159, 160, 32.11139 + 161, 156, 156, 156, 157, 159, 160, 159, 160, 158, 157, 158, 158, 150, 141, 139, 32.11140 + 146, 122, 121, 120, 117, 118, 121, 127, 132, 116, 128, 105, 74, 78, 83, 77, 32.11141 + 75, 65, 62, 70, 74, 66, 64, 66, 62, 65, 73, 61, 56, 65, 59, 55, 32.11142 + 74, 98, 112, 84, 98, 107, 89, 103, 95, 85, 74, 92, 92, 105, 89, 94, 32.11143 + 79, 94, 105, 112, 102, 255, 255, 255, 255, 255, 36, 25, 46, 102, 105, 114, 32.11144 + 120, 125, 132, 136, 139, 142, 143, 142, 144, 146, 148, 149, 150, 150, 152, 151, 32.11145 + 154, 157, 160, 161, 162, 165, 167, 168, 168, 168, 168, 168, 168, 168, 168, 169, 32.11146 + 169, 169, 170, 171, 171, 172, 172, 170, 169, 169, 169, 171, 172, 173, 173, 172, 32.11147 + 173, 174, 173, 171, 170, 171, 173, 175, 173, 172, 171, 171, 169, 166, 162, 167, 32.11148 + 164, 162, 162, 165, 167, 167, 167, 165, 165, 164, 162, 159, 158, 158, 159, 155, 32.11149 + 155, 155, 157, 158, 159, 158, 159, 158, 157, 157, 157, 150, 141, 139, 145, 130, 32.11150 + 127, 124, 117, 116, 116, 121, 126, 133, 119, 102, 95, 93, 82, 86, 103, 68, 32.11151 + 60, 65, 72, 64, 60, 63, 62, 62, 69, 59, 56, 63, 56, 51, 67, 90, 32.11152 + 108, 89, 90, 106, 100, 102, 102, 88, 76, 91, 92, 102, 90, 95, 81, 93, 32.11153 + 105, 113, 104, 255, 255, 255, 255, 177, 28, 30, 65, 113, 108, 119, 125, 130, 32.11154 + 138, 142, 145, 146, 146, 145, 147, 150, 151, 151, 152, 155, 157, 156, 160, 165, 32.11155 + 168, 169, 169, 170, 171, 172, 172, 172, 172, 172, 172, 172, 172, 169, 169, 169, 32.11156 + 170, 170, 170, 172, 172, 170, 170, 172, 172, 172, 173, 175, 175, 175, 174, 175, 32.11157 + 175, 174, 174, 176, 178, 181, 178, 175, 172, 171, 170, 168, 166, 166, 163, 161, 32.11158 + 161, 164, 166, 167, 167, 168, 168, 167, 164, 159, 156, 155, 156, 160, 160, 160, 32.11159 + 161, 162, 163, 162, 162, 156, 156, 156, 155, 150, 143, 140, 144, 132, 128, 123, 32.11160 + 115, 112, 112, 117, 122, 128, 104, 99, 105, 98, 90, 107, 127, 76, 61, 63, 32.11161 + 71, 64, 58, 61, 64, 65, 69, 63, 62, 66, 59, 53, 63, 81, 104, 101, 32.11162 + 82, 100, 110, 94, 108, 93, 80, 89, 92, 99, 92, 95, 84, 92, 103, 112, 32.11163 + 106, 255, 255, 255, 255, 24, 24, 36, 80, 116, 109, 120, 126, 132, 137, 141, 32.11164 + 144, 145, 145, 147, 149, 151, 151, 152, 153, 156, 158, 160, 163, 166, 167, 167, 32.11165 + 167, 168, 169, 170, 170, 170, 170, 170, 170, 170, 170, 163, 163, 163, 164, 164, 32.11166 + 165, 166, 166, 167, 167, 169, 169, 171, 172, 174, 174, 174, 173, 175, 173, 172, 32.11167 + 172, 175, 177, 182, 178, 175, 171, 171, 170, 169, 167, 162, 160, 159, 159, 162, 32.11168 + 165, 166, 166, 166, 168, 168, 164, 159, 154, 154, 155, 160, 160, 160, 161, 162, 32.11169 + 163, 161, 162, 155, 156, 155, 154, 149, 145, 142, 144, 133, 129, 124, 117, 115, 32.11170 + 116, 122, 127, 114, 102, 106, 104, 89, 96, 116, 117, 87, 66, 63, 73, 67, 32.11171 + 60, 64, 69, 65, 66, 65, 67, 67, 59, 53, 56, 71, 100, 117, 79, 91, 32.11172 + 110, 83, 110, 99, 85, 88, 93, 96, 95, 96, 87, 91, 100, 109, 107, 255, 32.11173 + 255, 255, 255, 26, 22, 44, 93, 114, 109, 121, 127, 132, 137, 140, 142, 143, 32.11174 + 143, 144, 145, 147, 147, 147, 148, 151, 154, 159, 159, 159, 158, 156, 156, 158, 32.11175 + 161, 162, 162, 162, 162, 162, 162, 162, 162, 160, 160, 160, 161, 162, 162, 163, 32.11176 + 163, 165, 166, 166, 167, 169, 171, 173, 173, 172, 171, 171, 168, 167, 167, 170, 32.11177 + 172, 174, 170, 168, 165, 166, 165, 165, 163, 161, 159, 158, 158, 161, 163, 164, 32.11178 + 164, 161, 164, 166, 163, 157, 153, 153, 155, 154, 154, 154, 154, 155, 156, 154, 32.11179 + 154, 155, 156, 156, 153, 150, 149, 145, 144, 135, 132, 127, 120, 119, 120, 125, 32.11180 + 130, 120, 109, 116, 114, 94, 92, 104, 99, 93, 70, 64, 71, 68, 65, 68, 32.11181 + 70, 62, 59, 61, 66, 62, 55, 50, 47, 57, 90, 125, 84, 84, 107, 82, 32.11182 + 113, 105, 91, 87, 97, 95, 100, 98, 90, 93, 97, 105, 108, 255, 255, 255, 32.11183 + 255, 24, 21, 53, 102, 110, 112, 126, 130, 135, 139, 143, 144, 145, 145, 147, 32.11184 + 148, 149, 148, 148, 150, 153, 156, 161, 160, 159, 156, 154, 155, 158, 160, 161, 32.11185 + 161, 161, 161, 161, 161, 161, 161, 163, 163, 163, 163, 165, 165, 166, 166, 166, 32.11186 + 167, 167, 169, 171, 174, 176, 176, 174, 173, 171, 169, 167, 167, 170, 173, 174, 32.11187 + 172, 169, 168, 168, 167, 166, 164, 164, 162, 159, 159, 161, 163, 164, 163, 157, 32.11188 + 162, 166, 163, 157, 152, 153, 155, 154, 154, 154, 154, 155, 155, 154, 154, 155, 32.11189 + 158, 156, 153, 152, 152, 149, 145, 133, 130, 126, 118, 114, 112, 115, 118, 124, 32.11190 + 108, 114, 126, 115, 95, 97, 106, 92, 73, 65, 68, 66, 70, 73, 68, 66, 32.11191 + 58, 63, 71, 64, 59, 55, 47, 49, 76, 121, 93, 84, 106, 92, 112, 111, 32.11192 + 97, 88, 102, 95, 105, 99, 93, 97, 96, 101, 110, 152, 255, 255, 255, 27, 32.11193 + 27, 63, 109, 110, 119, 129, 133, 137, 141, 145, 147, 146, 146, 151, 152, 154, 32.11194 + 153, 153, 154, 158, 161, 162, 164, 165, 164, 163, 163, 165, 167, 167, 167, 167, 32.11195 + 167, 167, 167, 167, 167, 167, 167, 168, 168, 169, 170, 172, 172, 172, 173, 175, 32.11196 + 176, 179, 181, 183, 184, 178, 176, 175, 172, 171, 173, 176, 180, 179, 177, 175, 32.11197 + 174, 173, 171, 168, 165, 168, 166, 163, 162, 164, 165, 165, 164, 158, 163, 168, 32.11198 + 165, 157, 152, 153, 155, 159, 159, 158, 159, 159, 159, 157, 158, 156, 159, 157, 32.11199 + 153, 153, 156, 152, 146, 135, 132, 129, 120, 115, 111, 111, 113, 118, 115, 115, 32.11200 + 121, 123, 106, 98, 107, 92, 78, 70, 66, 67, 78, 80, 67, 72, 61, 68, 32.11201 + 77, 68, 65, 64, 52, 53, 67, 112, 104, 90, 108, 104, 104, 115, 101, 89, 32.11202 + 106, 97, 110, 101, 95, 104, 97, 100, 114, 110, 255, 255, 255, 36, 36, 72, 32.11203 + 113, 109, 123, 129, 133, 138, 142, 145, 147, 147, 146, 151, 151, 153, 152, 151, 32.11204 + 153, 157, 160, 157, 161, 165, 167, 167, 166, 167, 168, 166, 166, 166, 166, 166, 32.11205 + 166, 168, 166, 170, 170, 171, 171, 172, 172, 174, 174, 178, 179, 180, 182, 184, 32.11206 + 187, 189, 189, 182, 180, 180, 178, 178, 181, 185, 189, 181, 179, 177, 176, 174, 32.11207 + 170, 166, 164, 172, 170, 167, 166, 167, 167, 168, 166, 160, 166, 170, 167, 158, 32.11208 + 152, 152, 155, 158, 158, 157, 158, 158, 158, 156, 156, 156, 159, 158, 154, 154, 32.11209 + 156, 153, 146, 142, 139, 136, 129, 124, 121, 120, 122, 115, 136, 125, 105, 111, 32.11210 + 109, 92, 83, 92, 83, 75, 66, 69, 84, 87, 68, 72, 58, 67, 77, 67, 32.11211 + 65, 65, 51, 62, 65, 106, 112, 95, 109, 111, 93, 117, 104, 90, 109, 98, 32.11212 + 113, 101, 96, 109, 98, 100, 116, 117, 255, 255, 30, 29, 42, 87, 113, 114, 32.11213 + 121, 131, 136, 140, 140, 141, 142, 144, 146, 149, 150, 151, 152, 154, 155, 156, 32.11214 + 156, 164, 164, 165, 165, 166, 166, 167, 167, 167, 167, 167, 168, 169, 170, 173, 32.11215 + 173, 174, 173, 173, 172, 172, 173, 172, 172, 177, 175, 174, 177, 183, 188, 188, 32.11216 + 188, 187, 183, 181, 183, 188, 189, 185, 180, 173, 174, 174, 172, 171, 171, 174, 32.11217 + 176, 169, 168, 168, 169, 170, 170, 169, 167, 166, 165, 162, 160, 159, 158, 157, 32.11218 + 157, 156, 156, 157, 158, 158, 158, 157, 157, 153, 153, 154, 153, 152, 150, 148, 32.11219 + 143, 130, 129, 138, 119, 134, 126, 127, 107, 120, 129, 138, 136, 122, 103, 88, 32.11220 + 80, 86, 84, 75, 63, 69, 78, 76, 65, 70, 58, 64, 55, 71, 53, 56, 32.11221 + 47, 54, 69, 97, 121, 103, 93, 116, 111, 107, 97, 94, 106, 108, 100, 90, 32.11222 + 90, 110, 103, 91, 99, 116, 255, 255, 27, 28, 49, 94, 116, 116, 125, 132, 32.11223 + 137, 141, 143, 144, 145, 147, 149, 154, 155, 156, 157, 158, 159, 160, 161, 163, 32.11224 + 164, 164, 164, 165, 165, 166, 167, 168, 168, 168, 168, 169, 170, 172, 172, 174, 32.11225 + 174, 173, 173, 173, 174, 175, 174, 176, 175, 176, 179, 183, 186, 185, 182, 180, 32.11226 + 181, 181, 181, 182, 182, 183, 183, 180, 179, 176, 175, 174, 174, 174, 175, 169, 32.11227 + 169, 167, 169, 169, 170, 168, 165, 165, 164, 162, 160, 159, 159, 159, 159, 158, 32.11228 + 158, 158, 159, 158, 158, 156, 157, 151, 150, 151, 152, 153, 154, 153, 150, 138, 32.11229 + 128, 136, 128, 140, 124, 126, 119, 114, 123, 135, 141, 136, 121, 102, 89, 88, 32.11230 + 85, 78, 72, 76, 82, 77, 67, 80, 68, 72, 63, 74, 58, 60, 51, 56, 32.11231 + 67, 88, 112, 101, 93, 111, 103, 111, 100, 102, 105, 111, 97, 95, 93, 110, 32.11232 + 112, 97, 96, 115, 255, 255, 22, 27, 58, 100, 116, 116, 127, 132, 137, 142, 32.11233 + 144, 146, 148, 151, 153, 157, 157, 158, 159, 160, 161, 162, 162, 164, 164, 164, 32.11234 + 164, 165, 165, 166, 167, 173, 173, 172, 172, 173, 174, 174, 175, 176, 176, 176, 32.11235 + 177, 178, 178, 180, 181, 179, 178, 179, 182, 185, 184, 182, 179, 178, 182, 186, 32.11236 + 185, 182, 182, 186, 190, 180, 177, 174, 174, 176, 177, 176, 174, 175, 173, 170, 32.11237 + 172, 174, 175, 172, 168, 164, 163, 161, 160, 159, 159, 159, 160, 160, 159, 159, 32.11238 + 159, 158, 157, 155, 155, 161, 158, 157, 154, 152, 150, 150, 146, 144, 132, 139, 32.11239 + 140, 145, 126, 130, 135, 123, 126, 131, 137, 136, 124, 106, 92, 91, 85, 79, 32.11240 + 79, 83, 85, 79, 72, 82, 73, 75, 71, 78, 64, 63, 57, 62, 70, 83, 32.11241 + 106, 104, 97, 110, 102, 114, 99, 107, 97, 113, 91, 98, 92, 105, 120, 101, 32.11242 + 88, 110, 255, 255, 17, 28, 67, 103, 112, 113, 123, 130, 135, 140, 143, 145, 32.11243 + 148, 151, 153, 154, 154, 155, 156, 157, 158, 158, 159, 163, 163, 163, 164, 164, 32.11244 + 165, 166, 166, 172, 172, 171, 170, 171, 171, 172, 172, 171, 172, 172, 173, 175, 32.11245 + 177, 179, 179, 180, 181, 181, 180, 181, 181, 180, 178, 176, 181, 185, 186, 184, 32.11246 + 183, 184, 187, 173, 169, 166, 169, 175, 178, 176, 174, 178, 175, 170, 172, 175, 32.11247 + 177, 173, 169, 161, 160, 159, 158, 158, 158, 159, 159, 160, 160, 159, 157, 156, 32.11248 + 153, 153, 151, 162, 161, 156, 153, 150, 149, 149, 146, 141, 136, 141, 142, 140, 32.11249 + 131, 135, 143, 132, 129, 127, 126, 124, 118, 109, 101, 93, 85, 79, 80, 85, 32.11250 + 86, 81, 77, 74, 70, 73, 76, 78, 69, 63, 58, 63, 71, 78, 99, 103, 32.11251 + 97, 108, 104, 114, 95, 105, 86, 112, 86, 97, 86, 93, 118, 99, 78, 98, 32.11252 + 255, 178, 15, 34, 76, 103, 107, 109, 117, 126, 132, 137, 140, 143, 145, 149, 32.11253 + 151, 152, 152, 152, 153, 154, 155, 155, 155, 159, 159, 159, 160, 160, 161, 162, 32.11254 + 162, 164, 163, 163, 162, 163, 163, 163, 164, 166, 166, 167, 169, 171, 171, 173, 32.11255 + 174, 179, 177, 176, 175, 175, 177, 180, 181, 173, 174, 177, 180, 180, 179, 176, 32.11256 + 174, 171, 167, 165, 168, 174, 177, 175, 172, 173, 170, 166, 167, 168, 170, 168, 32.11257 + 164, 159, 159, 157, 156, 156, 156, 157, 157, 159, 159, 157, 156, 155, 152, 151, 32.11258 + 149, 151, 151, 150, 150, 151, 153, 155, 154, 132, 140, 142, 137, 130, 136, 139, 32.11259 + 140, 124, 125, 126, 125, 123, 120, 117, 115, 103, 94, 85, 82, 86, 89, 86, 32.11260 + 81, 70, 71, 73, 82, 77, 70, 59, 55, 57, 69, 71, 88, 95, 88, 101, 32.11261 + 104, 113, 94, 103, 82, 109, 86, 96, 83, 83, 110, 97, 74, 88, 255, 21, 32.11262 + 17, 45, 86, 103, 106, 111, 116, 126, 131, 136, 139, 142, 144, 147, 150, 153, 32.11263 + 154, 154, 154, 155, 155, 156, 156, 155, 155, 156, 156, 156, 157, 158, 158, 163, 32.11264 + 162, 162, 161, 163, 163, 164, 164, 170, 171, 170, 171, 173, 175, 177, 177, 174, 32.11265 + 174, 172, 171, 172, 176, 182, 185, 179, 177, 177, 177, 177, 176, 174, 172, 176, 32.11266 + 174, 172, 173, 176, 176, 172, 170, 172, 171, 168, 167, 166, 167, 167, 166, 160, 32.11267 + 159, 157, 156, 156, 156, 156, 156, 159, 158, 157, 156, 153, 152, 150, 150, 151, 32.11268 + 150, 150, 149, 150, 151, 152, 150, 130, 143, 140, 136, 124, 138, 136, 133, 117, 32.11269 + 122, 128, 130, 126, 118, 109, 104, 111, 107, 96, 87, 91, 99, 97, 87, 79, 32.11270 + 81, 78, 88, 75, 71, 56, 54, 61, 74, 69, 81, 93, 86, 95, 103, 109, 32.11271 + 99, 106, 90, 105, 88, 97, 89, 82, 100, 98, 81, 80, 255, 18, 21, 58, 32.11272 + 96, 105, 111, 122, 121, 129, 134, 138, 141, 143, 146, 148, 151, 156, 156, 156, 32.11273 + 156, 157, 157, 157, 158, 157, 157, 158, 158, 158, 159, 160, 160, 167, 167, 167, 32.11274 + 167, 169, 170, 171, 172, 176, 177, 177, 178, 179, 180, 182, 183, 173, 175, 177, 32.11275 + 179, 180, 184, 191, 195, 187, 186, 183, 177, 171, 170, 174, 179, 177, 177, 177, 32.11276 + 177, 176, 175, 173, 172, 172, 175, 174, 171, 166, 166, 168, 171, 163, 162, 160, 32.11277 + 158, 157, 156, 156, 156, 159, 159, 158, 158, 155, 154, 153, 153, 157, 155, 154, 32.11278 + 152, 150, 146, 144, 142, 140, 147, 139, 145, 128, 137, 128, 131, 122, 123, 127, 32.11279 + 131, 130, 121, 108, 98, 103, 109, 102, 91, 98, 116, 114, 98, 87, 89, 79, 32.11280 + 88, 70, 71, 57, 61, 73, 81, 66, 76, 94, 87, 91, 97, 99, 105, 113, 32.11281 + 102, 96, 87, 95, 99, 85, 90, 99, 90, 73, 255, 15, 25, 67, 103, 108, 32.11282 + 116, 130, 126, 132, 137, 141, 144, 146, 148, 150, 153, 156, 156, 157, 157, 157, 32.11283 + 157, 157, 158, 162, 162, 163, 163, 163, 164, 165, 165, 167, 167, 167, 168, 170, 32.11284 + 171, 173, 173, 175, 175, 175, 175, 177, 177, 179, 180, 175, 179, 185, 189, 191, 32.11285 + 195, 201, 204, 189, 188, 183, 172, 161, 160, 171, 182, 172, 174, 177, 177, 176, 32.11286 + 175, 174, 176, 168, 172, 173, 169, 162, 161, 165, 170, 166, 165, 162, 160, 159, 32.11287 + 158, 157, 157, 160, 160, 160, 157, 157, 156, 155, 153, 151, 152, 152, 153, 151, 32.11288 + 149, 148, 146, 151, 148, 137, 153, 134, 132, 119, 130, 126, 122, 121, 127, 134, 32.11289 + 134, 124, 113, 89, 102, 102, 92, 104, 129, 128, 108, 90, 90, 76, 85, 66, 32.11290 + 72, 61, 69, 78, 82, 59, 68, 91, 85, 83, 85, 88, 107, 118, 110, 88, 32.11291 + 83, 92, 106, 87, 83, 99, 95, 68, 255, 18, 32, 66, 103, 116, 111, 113, 32.11292 + 126, 132, 137, 141, 144, 145, 146, 147, 149, 156, 156, 157, 157, 157, 158, 158, 32.11293 + 158, 159, 161, 162, 164, 164, 163, 163, 163, 168, 168, 167, 167, 168, 169, 170, 32.11294 + 170, 168, 175, 181, 183, 180, 178, 180, 181, 175, 176, 178, 183, 189, 194, 196, 32.11295 + 197, 193, 187, 180, 176, 173, 172, 174, 178, 174, 170, 186, 172, 169, 180, 169, 32.11296 + 179, 173, 176, 177, 173, 167, 165, 166, 169, 162, 161, 159, 158, 156, 157, 160, 32.11297 + 162, 157, 163, 163, 159, 156, 156, 157, 154, 157, 154, 151, 151, 150, 150, 146, 32.11298 + 141, 147, 143, 144, 146, 137, 122, 117, 121, 122, 124, 122, 121, 123, 126, 122, 32.11299 + 116, 106, 96, 110, 121, 112, 115, 125, 119, 87, 88, 66, 76, 66, 70, 55, 32.11300 + 68, 74, 75, 77, 76, 76, 78, 76, 73, 79, 103, 118, 97, 105, 78, 86, 32.11301 + 103, 87, 97, 106, 91, 66, 188, 81, 87, 95, 104, 112, 118, 125, 131, 134, 32.11302 + 140, 144, 147, 148, 149, 151, 153, 157, 157, 157, 157, 158, 158, 158, 159, 160, 32.11303 + 161, 163, 164, 165, 164, 164, 163, 169, 168, 168, 168, 170, 171, 172, 173, 171, 32.11304 + 175, 179, 179, 176, 175, 179, 184, 185, 180, 178, 180, 191, 195, 196, 193, 189, 32.11305 + 186, 182, 179, 177, 175, 176, 177, 176, 173, 186, 175, 175, 186, 175, 183, 179, 32.11306 + 181, 179, 176, 170, 168, 168, 169, 164, 164, 163, 162, 160, 159, 159, 159, 157, 32.11307 + 163, 163, 159, 155, 156, 155, 152, 157, 153, 150, 147, 149, 150, 148, 144, 143, 32.11308 + 137, 138, 140, 134, 121, 116, 120, 123, 121, 115, 109, 110, 115, 116, 113, 115, 32.11309 + 104, 113, 122, 115, 119, 131, 127, 104, 106, 87, 93, 85, 88, 76, 89, 80, 32.11310 + 76, 75, 77, 78, 76, 73, 71, 74, 100, 120, 104, 108, 80, 83, 97, 90, 32.11311 + 100, 105, 90, 67, 121, 131, 128, 115, 103, 109, 124, 134, 134, 137, 143, 147, 32.11312 + 149, 151, 152, 155, 157, 156, 156, 157, 157, 158, 158, 158, 158, 160, 161, 163, 32.11313 + 164, 165, 164, 164, 163, 169, 169, 169, 169, 171, 173, 174, 175, 178, 179, 179, 32.11314 + 177, 176, 177, 184, 190, 190, 182, 178, 182, 194, 200, 199, 195, 186, 185, 183, 32.11315 + 181, 179, 178, 178, 177, 177, 175, 183, 176, 179, 188, 180, 182, 182, 182, 178, 32.11316 + 175, 172, 170, 168, 166, 166, 166, 164, 163, 162, 160, 158, 156, 160, 165, 166, 32.11317 + 163, 160, 161, 160, 156, 156, 153, 149, 146, 147, 147, 147, 144, 141, 134, 132, 32.11318 + 136, 134, 125, 120, 122, 123, 121, 115, 108, 108, 112, 112, 108, 118, 108, 111, 32.11319 + 117, 114, 120, 131, 132, 119, 121, 104, 102, 92, 90, 80, 91, 90, 78, 75, 32.11320 + 80, 82, 75, 69, 68, 69, 97, 123, 116, 113, 87, 85, 95, 91, 100, 101, 32.11321 + 86, 68, 128, 134, 121, 108, 102, 112, 126, 131, 131, 139, 143, 147, 149, 151, 32.11322 + 152, 155, 158, 155, 155, 155, 156, 156, 156, 157, 157, 159, 160, 162, 163, 163, 32.11323 + 163, 163, 162, 168, 168, 168, 169, 171, 173, 175, 176, 179, 178, 178, 175, 174, 32.11324 + 175, 183, 186, 177, 175, 175, 181, 191, 196, 196, 193, 184, 184, 182, 178, 176, 32.11325 + 179, 179, 178, 177, 176, 178, 175, 178, 184, 178, 175, 178, 176, 172, 171, 170, 32.11326 + 170, 167, 164, 166, 164, 160, 158, 158, 158, 157, 157, 160, 164, 165, 160, 160, 32.11327 + 159, 158, 155, 153, 152, 148, 147, 145, 143, 142, 138, 141, 132, 129, 135, 136, 32.11328 + 129, 124, 126, 114, 117, 117, 113, 110, 109, 104, 97, 109, 100, 100, 106, 110, 32.11329 + 115, 123, 127, 115, 118, 106, 98, 92, 87, 80, 88, 91, 76, 70, 77, 79, 32.11330 + 69, 60, 59, 62, 89, 115, 117, 108, 89, 87, 93, 87, 96, 91, 77, 67, 32.11331 + 120, 125, 104, 95, 105, 119, 123, 126, 134, 139, 144, 146, 148, 149, 150, 154, 32.11332 + 156, 153, 153, 153, 154, 154, 155, 155, 155, 157, 159, 160, 162, 162, 161, 161, 32.11333 + 161, 167, 167, 167, 168, 170, 172, 174, 175, 169, 167, 170, 168, 168, 168, 172, 32.11334 + 173, 163, 167, 174, 178, 182, 181, 183, 183, 183, 184, 179, 172, 171, 177, 180, 32.11335 + 179, 178, 180, 176, 176, 178, 178, 177, 168, 172, 171, 167, 168, 168, 169, 168, 32.11336 + 165, 165, 160, 153, 150, 152, 155, 158, 159, 153, 156, 155, 152, 152, 153, 150, 32.11337 + 146, 149, 151, 149, 148, 144, 139, 133, 131, 138, 129, 127, 133, 135, 129, 125, 32.11338 + 127, 109, 113, 114, 109, 104, 102, 96, 89, 94, 90, 89, 96, 106, 109, 111, 32.11339 + 117, 109, 113, 108, 98, 103, 97, 94, 98, 86, 72, 65, 70, 71, 62, 53, 32.11340 + 50, 57, 77, 100, 110, 96, 89, 88, 92, 82, 90, 80, 68, 67, 129, 126, 32.11341 + 104, 98, 110, 123, 123, 128, 142, 142, 146, 148, 148, 148, 150, 153, 155, 153, 32.11342 + 153, 153, 154, 154, 154, 155, 155, 158, 159, 160, 162, 162, 162, 162, 161, 167, 32.11343 + 167, 167, 168, 170, 172, 173, 173, 166, 166, 169, 169, 170, 170, 170, 169, 168, 32.11344 + 173, 181, 183, 180, 177, 177, 178, 183, 185, 179, 169, 168, 176, 180, 177, 179, 32.11345 + 187, 179, 181, 181, 176, 179, 168, 170, 170, 169, 169, 169, 170, 170, 169, 166, 32.11346 + 159, 150, 146, 150, 155, 159, 161, 154, 156, 155, 152, 151, 154, 151, 146, 148, 32.11347 + 150, 150, 148, 142, 137, 131, 130, 134, 127, 127, 133, 133, 125, 122, 125, 117, 32.11348 + 118, 115, 106, 100, 100, 100, 98, 87, 87, 83, 90, 104, 104, 100, 108, 114, 32.11349 + 117, 115, 102, 113, 103, 100, 95, 89, 82, 76, 75, 74, 70, 62, 55, 65, 32.11350 + 76, 92, 108, 91, 96, 96, 96, 82, 90, 75, 63, 70, 117, 115, 107, 107, 32.11351 + 114, 123, 127, 134, 144, 148, 151, 152, 151, 150, 151, 154, 157, 154, 154, 155, 32.11352 + 155, 156, 156, 156, 156, 160, 161, 162, 164, 164, 163, 163, 163, 170, 170, 170, 32.11353 + 170, 171, 172, 173, 173, 173, 172, 173, 173, 175, 176, 175, 173, 180, 183, 185, 32.11354 + 185, 183, 181, 181, 181, 180, 186, 182, 171, 170, 178, 180, 175, 176, 189, 180, 32.11355 + 185, 182, 173, 182, 171, 169, 172, 172, 171, 168, 168, 169, 171, 170, 162, 153, 32.11356 + 150, 153, 158, 160, 160, 161, 161, 160, 158, 158, 161, 158, 152, 149, 150, 148, 32.11357 + 145, 140, 138, 136, 137, 133, 130, 132, 137, 134, 124, 121, 125, 121, 124, 121, 32.11358 + 113, 106, 105, 106, 103, 88, 90, 82, 85, 102, 99, 92, 102, 113, 114, 115, 32.11359 + 99, 118, 106, 100, 88, 94, 96, 93, 83, 80, 82, 76, 65, 76, 79, 88, 32.11360 + 109, 89, 102, 100, 96, 89, 96, 76, 64, 76, 125, 96, 105, 112, 114, 122, 32.11361 + 132, 138, 137, 153, 156, 156, 154, 153, 154, 156, 159, 156, 156, 157, 157, 157, 32.11362 + 158, 158, 158, 162, 163, 164, 166, 166, 165, 165, 165, 172, 172, 171, 171, 171, 32.11363 + 172, 174, 173, 176, 175, 174, 174, 176, 177, 177, 177, 185, 181, 178, 179, 182, 32.11364 + 183, 183, 182, 179, 187, 185, 175, 173, 180, 180, 172, 171, 188, 179, 185, 182, 32.11365 + 171, 185, 173, 168, 170, 171, 169, 165, 163, 166, 168, 174, 167, 158, 155, 158, 32.11366 + 161, 160, 156, 162, 163, 161, 157, 160, 162, 159, 153, 151, 151, 147, 142, 138, 32.11367 + 139, 143, 146, 135, 133, 137, 142, 137, 125, 122, 127, 113, 120, 123, 118, 111, 32.11368 + 107, 102, 97, 92, 93, 83, 81, 98, 95, 86, 97, 97, 99, 106, 95, 123, 32.11369 + 115, 112, 97, 89, 100, 98, 84, 80, 86, 81, 68, 76, 75, 81, 104, 83, 32.11370 + 99, 97, 87, 96, 102, 79, 67, 81, 119, 102, 101, 108, 123, 132, 132, 134, 32.11371 + 140, 157, 155, 153, 152, 153, 155, 157, 157, 159, 159, 159, 158, 158, 157, 157, 32.11372 + 157, 164, 166, 167, 167, 165, 165, 166, 167, 169, 169, 169, 170, 171, 172, 175, 32.11373 + 174, 178, 181, 183, 181, 177, 177, 184, 190, 185, 189, 193, 192, 187, 183, 186, 32.11374 + 190, 178, 181, 184, 183, 181, 177, 174, 174, 183, 183, 183, 182, 180, 177, 175, 32.11375 + 172, 171, 168, 166, 165, 166, 166, 167, 166, 159, 162, 162, 159, 155, 155, 161, 32.11376 + 165, 159, 157, 157, 157, 157, 155, 154, 153, 145, 149, 151, 150, 145, 140, 138, 32.11377 + 137, 146, 140, 132, 127, 125, 123, 120, 117, 116, 118, 120, 120, 117, 115, 113, 32.11378 + 111, 96, 88, 85, 86, 86, 84, 87, 94, 98, 107, 104, 100, 109, 111, 104, 32.11379 + 101, 100, 96, 99, 94, 78, 75, 83, 81, 79, 79, 81, 86, 91, 93, 94, 32.11380 + 91, 90, 87, 87, 77, 62, 110, 96, 97, 103, 111, 119, 125, 135, 149, 154, 32.11381 + 155, 154, 153, 154, 156, 157, 158, 161, 160, 159, 159, 158, 159, 159, 160, 163, 32.11382 + 165, 167, 168, 167, 167, 169, 171, 169, 169, 169, 170, 171, 173, 175, 176, 177, 32.11383 + 179, 181, 178, 176, 175, 177, 179, 189, 187, 186, 188, 191, 194, 193, 190, 191, 32.11384 + 188, 183, 181, 182, 180, 176, 173, 184, 183, 182, 181, 180, 178, 176, 173, 171, 32.11385 + 168, 165, 164, 165, 167, 167, 166, 160, 161, 161, 157, 153, 153, 157, 161, 160, 32.11386 + 158, 159, 159, 157, 156, 154, 152, 153, 154, 152, 149, 144, 140, 137, 136, 139, 32.11387 + 136, 133, 133, 134, 133, 130, 127, 117, 115, 113, 112, 112, 111, 109, 105, 98, 32.11388 + 92, 89, 89, 85, 80, 82, 88, 96, 105, 101, 98, 106, 107, 99, 98, 101, 32.11389 + 103, 110, 103, 81, 74, 84, 86, 76, 76, 76, 77, 80, 83, 88, 90, 87, 32.11390 + 87, 90, 87, 71, 96, 77, 85, 101, 115, 124, 127, 135, 146, 152, 154, 154, 32.11391 + 154, 155, 156, 158, 159, 161, 160, 160, 159, 159, 160, 162, 164, 162, 164, 166, 32.11392 + 167, 167, 168, 171, 173, 167, 168, 168, 170, 172, 174, 176, 177, 175, 177, 179, 32.11393 + 180, 181, 180, 179, 177, 191, 191, 191, 188, 189, 191, 193, 194, 196, 188, 179, 32.11394 + 177, 179, 180, 179, 174, 184, 183, 181, 178, 177, 176, 175, 174, 171, 167, 164, 32.11395 + 164, 165, 166, 166, 165, 165, 166, 165, 161, 157, 156, 159, 161, 161, 159, 159, 32.11396 + 158, 156, 155, 153, 152, 149, 147, 146, 146, 145, 145, 145, 144, 132, 132, 131, 32.11397 + 130, 128, 124, 118, 113, 122, 118, 114, 113, 114, 114, 111, 106, 100, 97, 96, 32.11398 + 93, 86, 79, 78, 82, 94, 102, 97, 94, 101, 100, 93, 93, 99, 106, 118, 32.11399 + 110, 83, 72, 82, 86, 81, 79, 76, 73, 74, 78, 86, 91, 80, 85, 91, 32.11400 + 97, 82, 79, 65, 74, 87, 101, 112, 121, 129, 137, 149, 153, 155, 155, 157, 32.11401 + 157, 159, 160, 162, 160, 159, 158, 158, 160, 163, 165, 162, 164, 166, 167, 167, 32.11402 + 167, 169, 171, 167, 168, 169, 170, 172, 175, 177, 179, 174, 175, 177, 181, 186, 32.11403 + 187, 187, 183, 190, 193, 196, 190, 182, 178, 185, 194, 186, 181, 174, 173, 175, 32.11404 + 177, 178, 176, 182, 180, 178, 175, 174, 173, 173, 172, 168, 165, 162, 162, 163, 32.11405 + 164, 164, 163, 165, 166, 165, 162, 159, 158, 161, 162, 161, 158, 155, 153, 150, 32.11406 + 149, 149, 149, 147, 143, 139, 139, 140, 144, 144, 143, 138, 137, 136, 134, 129, 32.11407 + 123, 116, 112, 117, 117, 116, 115, 114, 113, 111, 110, 101, 101, 101, 96, 88, 32.11408 + 81, 78, 80, 86, 93, 90, 89, 95, 94, 88, 91, 96, 101, 113, 106, 81, 32.11409 + 70, 77, 78, 86, 80, 74, 72, 75, 81, 85, 87, 75, 82, 87, 101, 86, 32.11410 + 68, 68, 61, 55, 59, 78, 106, 127, 138, 144, 148, 152, 154, 157, 157, 159, 32.11411 + 161, 162, 160, 159, 157, 157, 159, 162, 164, 163, 165, 166, 166, 165, 164, 166, 32.11412 + 167, 167, 168, 169, 170, 172, 175, 177, 179, 175, 174, 175, 177, 183, 185, 186, 32.11413 + 185, 190, 190, 189, 183, 182, 179, 183, 186, 178, 177, 176, 174, 172, 172, 175, 32.11414 + 176, 178, 176, 175, 172, 170, 169, 169, 169, 166, 163, 160, 160, 161, 162, 162, 32.11415 + 161, 158, 158, 158, 157, 156, 156, 158, 158, 160, 155, 150, 146, 144, 143, 144, 32.11416 + 145, 153, 147, 138, 134, 133, 133, 130, 128, 128, 128, 128, 126, 122, 119, 116, 32.11417 + 114, 102, 107, 111, 111, 107, 103, 103, 104, 98, 100, 100, 95, 87, 82, 80, 32.11418 + 79, 78, 85, 83, 84, 91, 89, 84, 89, 91, 93, 102, 101, 84, 76, 76, 32.11419 + 71, 84, 76, 70, 72, 79, 83, 80, 75, 71, 79, 79, 100, 84, 64, 60, 32.11420 + 53, 47, 50, 74, 103, 123, 130, 136, 143, 150, 154, 157, 158, 160, 163, 163, 32.11421 + 161, 161, 159, 158, 159, 161, 162, 164, 165, 166, 166, 164, 163, 164, 166, 167, 32.11422 + 168, 168, 170, 172, 174, 176, 176, 178, 179, 179, 180, 181, 182, 184, 185, 200, 32.11423 + 187, 178, 182, 195, 200, 194, 185, 178, 181, 180, 176, 171, 169, 172, 175, 176, 32.11424 + 175, 174, 171, 169, 168, 167, 166, 165, 162, 160, 159, 160, 161, 161, 161, 158, 32.11425 + 158, 157, 157, 158, 159, 160, 158, 158, 154, 150, 145, 142, 141, 140, 140, 146, 32.11426 + 141, 133, 128, 126, 126, 124, 124, 127, 128, 128, 125, 119, 114, 111, 110, 101, 32.11427 + 104, 107, 106, 103, 100, 99, 100, 95, 96, 94, 89, 84, 83, 80, 75, 73, 32.11428 + 80, 80, 81, 87, 82, 78, 87, 86, 84, 92, 95, 87, 84, 82, 73, 83, 32.11429 + 77, 75, 79, 86, 88, 81, 74, 69, 78, 72, 100, 83, 69, 57, 58, 59, 32.11430 + 64, 83, 104, 115, 115, 130, 138, 147, 153, 155, 156, 162, 165, 164, 163, 164, 32.11431 + 162, 161, 160, 161, 162, 162, 164, 165, 165, 164, 164, 166, 168, 167, 167, 167, 32.11432 + 168, 169, 171, 173, 174, 175, 178, 182, 183, 182, 179, 180, 182, 194, 185, 180, 32.11433 + 184, 195, 199, 194, 187, 183, 181, 175, 170, 169, 170, 172, 173, 175, 175, 174, 32.11434 + 172, 171, 169, 167, 166, 166, 164, 161, 160, 161, 163, 163, 162, 163, 162, 161, 32.11435 + 161, 162, 162, 162, 159, 155, 156, 156, 154, 149, 144, 139, 136, 134, 133, 130, 32.11436 + 126, 122, 123, 126, 127, 138, 141, 144, 141, 134, 127, 121, 119, 117, 111, 105, 32.11437 + 104, 106, 107, 103, 99, 99, 98, 92, 87, 87, 89, 83, 74, 74, 78, 79, 32.11438 + 81, 84, 76, 72, 82, 80, 78, 87, 93, 88, 88, 89, 80, 79, 80, 81, 32.11439 + 84, 86, 85, 81, 78, 70, 80, 71, 103, 85, 73, 68, 69, 66, 62, 73, 32.11440 + 92, 107, 111, 127, 134, 146, 152, 154, 156, 160, 166, 166, 166, 166, 165, 163, 32.11441 + 162, 162, 161, 161, 163, 165, 166, 166, 167, 169, 171, 167, 167, 167, 168, 169, 32.11442 + 170, 171, 170, 161, 169, 177, 178, 176, 174, 175, 177, 174, 181, 185, 183, 177, 32.11443 + 175, 179, 184, 184, 177, 166, 163, 167, 173, 176, 176, 175, 176, 176, 175, 174, 32.11444 + 171, 168, 166, 168, 165, 163, 162, 163, 164, 164, 164, 164, 162, 160, 160, 160, 32.11445 + 159, 158, 156, 155, 157, 161, 162, 156, 148, 139, 133, 136, 136, 133, 127, 119, 32.11446 + 116, 119, 122, 117, 122, 130, 134, 130, 124, 120, 118, 130, 116, 101, 99, 106, 32.11447 + 110, 104, 96, 105, 102, 95, 88, 90, 94, 86, 76, 76, 80, 79, 81, 84, 32.11448 + 72, 67, 78, 73, 73, 84, 91, 87, 88, 92, 86, 71, 78, 83, 84, 80, 32.11449 + 76, 77, 80, 70, 82, 72, 107, 89, 74, 88, 88, 96, 104, 105, 96, 97, 32.11450 + 105, 119, 133, 142, 138, 145, 163, 167, 156, 162, 162, 164, 163, 164, 165, 166, 32.11451 + 166, 165, 167, 168, 167, 165, 163, 163, 164, 159, 169, 167, 156, 155, 164, 160, 32.11452 + 144, 153, 154, 156, 158, 164, 168, 167, 162, 166, 167, 169, 169, 166, 164, 164, 32.11453 + 166, 172, 175, 176, 172, 168, 166, 170, 175, 179, 179, 180, 178, 174, 170, 167, 32.11454 + 164, 168, 167, 166, 165, 164, 164, 164, 164, 164, 163, 162, 161, 159, 158, 157, 32.11455 + 157, 153, 153, 153, 154, 154, 155, 154, 154, 147, 147, 143, 134, 124, 119, 121, 32.11456 + 123, 123, 121, 116, 122, 134, 128, 116, 116, 126, 126, 118, 105, 97, 99, 105, 32.11457 + 108, 108, 102, 98, 95, 89, 84, 85, 90, 70, 75, 81, 83, 80, 72, 63, 32.11458 + 57, 67, 66, 87, 85, 95, 90, 96, 78, 72, 81, 88, 87, 82, 78, 76, 32.11459 + 74, 75, 69, 88, 94, 90, 74, 92, 98, 111, 121, 122, 113, 105, 101, 106, 32.11460 + 116, 129, 138, 148, 154, 156, 155, 164, 163, 165, 165, 166, 166, 166, 167, 165, 32.11461 + 169, 174, 176, 172, 164, 158, 154, 153, 159, 157, 148, 145, 145, 137, 123, 118, 32.11462 + 124, 127, 122, 118, 122, 132, 138, 135, 139, 144, 147, 148, 153, 160, 167, 162, 32.11463 + 168, 174, 176, 176, 172, 171, 171, 174, 174, 175, 174, 171, 167, 164, 162, 167, 32.11464 + 166, 165, 164, 163, 163, 163, 163, 162, 162, 161, 160, 158, 157, 156, 156, 154, 32.11465 + 154, 154, 155, 156, 156, 157, 155, 151, 152, 149, 144, 135, 128, 123, 121, 125, 32.11466 + 134, 130, 123, 131, 133, 124, 119, 112, 115, 113, 107, 105, 110, 115, 117, 108, 32.11467 + 104, 100, 98, 91, 85, 84, 87, 82, 80, 75, 68, 62, 60, 62, 65, 59, 32.11468 + 58, 80, 81, 92, 89, 97, 81, 79, 80, 82, 84, 82, 78, 73, 72, 82, 32.11469 + 75, 91, 96, 90, 73, 95, 109, 124, 131, 133, 127, 117, 106, 103, 105, 118, 32.11470 + 138, 149, 150, 153, 160, 164, 163, 165, 164, 164, 164, 165, 165, 166, 168, 173, 32.11471 + 174, 169, 162, 155, 151, 141, 143, 145, 147, 145, 138, 128, 121, 107, 109, 106, 32.11472 + 96, 92, 99, 109, 115, 131, 134, 136, 135, 133, 135, 142, 148, 156, 161, 166, 32.11473 + 171, 174, 174, 175, 174, 172, 172, 173, 172, 170, 167, 167, 165, 165, 164, 163, 32.11474 + 162, 161, 161, 161, 161, 162, 162, 161, 160, 159, 158, 157, 156, 155, 155, 156, 32.11475 + 156, 157, 157, 157, 158, 155, 156, 156, 155, 149, 140, 128, 120, 123, 142, 139, 32.11476 + 124, 126, 132, 127, 121, 113, 116, 115, 111, 109, 110, 110, 107, 108, 105, 102, 32.11477 + 102, 97, 89, 83, 84, 82, 82, 80, 74, 66, 60, 57, 57, 62, 59, 78, 32.11478 + 76, 84, 80, 88, 71, 82, 75, 74, 80, 82, 75, 71, 73, 84, 76, 91, 32.11479 + 94, 145, 78, 94, 112, 125, 126, 126, 130, 128, 119, 112, 105, 110, 124, 139, 32.11480 + 146, 152, 157, 159, 160, 162, 160, 161, 161, 162, 161, 167, 166, 167, 165, 161, 32.11481 + 158, 157, 157, 139, 137, 141, 151, 150, 138, 127, 125, 119, 110, 99, 96, 104, 32.11482 + 111, 110, 102, 104, 111, 119, 121, 123, 127, 136, 145, 152, 152, 152, 155, 162, 32.11483 + 168, 175, 177, 168, 169, 171, 171, 170, 168, 168, 166, 163, 163, 161, 160, 159, 32.11484 + 159, 159, 159, 163, 162, 162, 161, 160, 159, 158, 158, 155, 155, 155, 156, 156, 32.11485 + 157, 156, 156, 156, 156, 156, 159, 157, 149, 136, 124, 117, 134, 136, 126, 124, 32.11486 + 123, 119, 122, 119, 120, 116, 109, 105, 104, 99, 94, 105, 102, 101, 103, 101, 32.11487 + 93, 85, 84, 79, 82, 83, 79, 71, 61, 53, 50, 61, 58, 75, 70, 80, 32.11488 + 74, 83, 67, 75, 68, 68, 77, 77, 72, 73, 82, 79, 74, 88, 91, 255, 32.11489 + 89, 85, 108, 125, 125, 121, 127, 132, 131, 123, 114, 105, 105, 120, 139, 149, 32.11490 + 147, 158, 159, 161, 160, 160, 160, 162, 161, 164, 163, 164, 162, 159, 156, 155, 32.11491 + 155, 143, 137, 140, 148, 146, 130, 120, 119, 119, 115, 111, 112, 121, 128, 122, 32.11492 + 109, 105, 110, 117, 118, 116, 115, 117, 120, 139, 138, 137, 141, 149, 156, 162, 32.11493 + 164, 159, 160, 162, 163, 163, 163, 161, 160, 162, 161, 160, 159, 158, 158, 158, 32.11494 + 158, 160, 160, 159, 158, 158, 157, 157, 156, 155, 155, 154, 154, 154, 155, 154, 32.11495 + 154, 156, 154, 152, 156, 159, 155, 144, 134, 115, 122, 127, 131, 130, 116, 112, 32.11496 + 126, 115, 116, 112, 105, 101, 102, 101, 99, 102, 98, 99, 103, 102, 97, 91, 32.11497 + 89, 87, 85, 79, 73, 66, 62, 60, 60, 54, 49, 67, 63, 76, 74, 87, 32.11498 + 73, 60, 61, 67, 74, 71, 69, 76, 92, 79, 76, 91, 92, 255, 205, 86, 32.11499 + 104, 122, 126, 126, 126, 131, 135, 135, 129, 117, 106, 114, 133, 143, 141, 159, 32.11500 + 160, 161, 162, 163, 164, 166, 165, 161, 164, 168, 169, 164, 157, 150, 146, 143, 32.11501 + 138, 138, 145, 145, 137, 131, 132, 122, 133, 143, 144, 143, 143, 144, 143, 146, 32.11502 + 145, 144, 138, 130, 120, 112, 108, 125, 128, 133, 138, 143, 145, 146, 147, 154, 32.11503 + 155, 158, 160, 162, 162, 161, 161, 162, 161, 160, 158, 158, 157, 157, 157, 156, 32.11504 + 156, 155, 155, 154, 154, 153, 153, 155, 155, 153, 153, 153, 153, 152, 152, 154, 32.11505 + 152, 150, 154, 159, 158, 152, 144, 123, 121, 123, 134, 138, 120, 114, 130, 119, 32.11506 + 121, 118, 109, 102, 102, 104, 105, 101, 96, 95, 99, 101, 97, 94, 93, 88, 32.11507 + 86, 86, 86, 85, 81, 72, 65, 58, 53, 66, 61, 70, 69, 80, 66, 53, 32.11508 + 60, 68, 68, 65, 68, 78, 92, 81, 82, 98, 95, 255, 255, 103, 108, 116, 32.11509 + 121, 123, 123, 127, 133, 137, 136, 133, 130, 126, 124, 131, 139, 158, 159, 160, 32.11510 + 163, 164, 165, 168, 167, 164, 166, 171, 173, 169, 161, 155, 151, 148, 145, 144, 32.11511 + 147, 151, 153, 155, 156, 149, 161, 169, 165, 160, 159, 162, 163, 158, 155, 154, 32.11512 + 154, 154, 151, 146, 142, 127, 132, 137, 139, 140, 140, 142, 145, 151, 153, 155, 32.11513 + 158, 161, 162, 162, 162, 162, 161, 160, 158, 158, 157, 157, 158, 156, 156, 155, 32.11514 + 155, 155, 154, 154, 154, 156, 156, 156, 156, 154, 154, 154, 154, 153, 153, 153, 32.11515 + 157, 161, 160, 156, 151, 136, 132, 127, 131, 139, 131, 123, 131, 128, 134, 133, 32.11516 + 121, 109, 106, 109, 111, 104, 97, 92, 95, 98, 97, 94, 93, 85, 85, 89, 32.11517 + 98, 104, 99, 83, 69, 67, 59, 69, 58, 64, 59, 68, 53, 53, 64, 70, 32.11518 + 63, 61, 68, 77, 80, 75, 80, 99, 94, 255, 255, 123, 111, 103, 110, 116, 32.11519 + 117, 125, 135, 130, 131, 141, 148, 133, 109, 112, 131, 153, 154, 157, 159, 162, 32.11520 + 164, 166, 167, 169, 169, 172, 169, 167, 165, 165, 166, 161, 159, 154, 150, 152, 32.11521 + 157, 162, 162, 169, 169, 166, 161, 161, 163, 160, 154, 168, 161, 156, 154, 154, 32.11522 + 152, 147, 141, 141, 143, 143, 140, 137, 139, 147, 155, 145, 146, 150, 153, 156, 32.11523 + 158, 158, 158, 160, 159, 158, 157, 156, 156, 156, 158, 159, 159, 158, 158, 158, 32.11524 + 158, 159, 157, 157, 157, 157, 157, 155, 155, 155, 155, 154, 156, 157, 161, 164, 32.11525 + 163, 159, 154, 143, 143, 131, 125, 135, 139, 131, 129, 128, 138, 141, 131, 119, 32.11526 + 115, 120, 124, 107, 97, 90, 92, 95, 95, 93, 94, 94, 84, 80, 84, 95, 32.11527 + 99, 92, 82, 67, 59, 68, 56, 63, 59, 69, 54, 57, 69, 71, 60, 59, 32.11528 + 70, 74, 68, 64, 73, 94, 89, 255, 255, 137, 123, 107, 95, 96, 107, 120, 32.11529 + 128, 133, 128, 130, 141, 143, 132, 122, 120, 146, 149, 153, 156, 161, 164, 169, 32.11530 + 171, 171, 170, 172, 171, 171, 170, 167, 166, 164, 163, 162, 162, 162, 161, 164, 32.11531 + 165, 165, 162, 159, 159, 161, 160, 156, 152, 161, 159, 159, 158, 156, 154, 152, 32.11532 + 150, 148, 146, 148, 154, 161, 161, 156, 148, 151, 155, 151, 139, 139, 147, 149, 32.11533 + 141, 156, 157, 158, 157, 156, 154, 156, 159, 158, 158, 159, 159, 159, 158, 157, 32.11534 + 156, 159, 159, 159, 159, 157, 157, 157, 157, 159, 160, 161, 162, 161, 162, 163, 32.11535 + 162, 147, 144, 137, 130, 130, 137, 137, 131, 138, 140, 144, 144, 135, 123, 119, 32.11536 + 122, 129, 117, 99, 88, 91, 98, 99, 94, 96, 87, 84, 87, 91, 89, 88, 32.11537 + 91, 72, 76, 72, 65, 61, 64, 64, 62, 56, 65, 67, 64, 65, 72, 71, 32.11538 + 68, 67, 67, 101, 86, 255, 255, 128, 130, 121, 105, 107, 124, 134, 132, 142, 32.11539 + 143, 142, 138, 138, 140, 138, 134, 129, 136, 148, 160, 167, 171, 173, 172, 173, 32.11540 + 173, 173, 174, 172, 171, 169, 168, 165, 165, 163, 163, 161, 162, 163, 164, 164, 32.11541 + 161, 157, 156, 158, 159, 157, 156, 147, 148, 150, 153, 155, 156, 158, 158, 150, 32.11542 + 146, 144, 147, 153, 157, 158, 155, 170, 174, 170, 160, 160, 167, 169, 162, 154, 32.11543 + 154, 155, 153, 151, 149, 152, 153, 158, 158, 159, 160, 160, 160, 159, 157, 158, 32.11544 + 157, 157, 157, 155, 155, 155, 155, 158, 158, 159, 160, 160, 161, 162, 161, 148, 32.11545 + 144, 137, 129, 128, 131, 130, 124, 119, 120, 125, 131, 129, 119, 110, 107, 130, 32.11546 + 123, 116, 105, 101, 101, 101, 96, 95, 86, 80, 84, 89, 88, 89, 91, 92, 32.11547 + 93, 86, 74, 63, 60, 58, 56, 50, 61, 67, 63, 59, 63, 67, 70, 73, 32.11548 + 73, 104, 90, 255, 255, 255, 138, 132, 107, 98, 110, 114, 102, 119, 132, 139, 32.11549 + 135, 139, 151, 156, 151, 125, 135, 150, 163, 171, 173, 175, 176, 175, 175, 175, 32.11550 + 176, 174, 173, 170, 169, 167, 167, 165, 164, 162, 162, 163, 163, 162, 159, 155, 32.11551 + 154, 154, 157, 158, 159, 158, 158, 157, 156, 156, 156, 156, 157, 158, 154, 149, 32.11552 + 149, 151, 153, 154, 152, 159, 162, 161, 154, 153, 160, 164, 158, 156, 155, 155, 32.11553 + 153, 151, 149, 151, 152, 156, 157, 159, 159, 161, 160, 160, 159, 158, 157, 157, 32.11554 + 157, 157, 157, 155, 155, 157, 157, 157, 158, 157, 159, 160, 159, 152, 147, 140, 32.11555 + 131, 127, 126, 124, 119, 128, 125, 127, 135, 139, 133, 125, 119, 121, 122, 124, 32.11556 + 114, 105, 99, 95, 91, 86, 82, 79, 83, 88, 89, 91, 93, 104, 109, 106, 32.11557 + 95, 81, 69, 59, 52, 48, 61, 69, 65, 57, 57, 62, 71, 74, 77, 104, 32.11558 + 255, 255, 255, 255, 127, 120, 95, 80, 81, 82, 77, 68, 75, 86, 95, 111, 32.11559 + 136, 159, 173, 132, 140, 151, 159, 165, 170, 174, 177, 177, 176, 176, 176, 176, 32.11560 + 173, 172, 169, 168, 166, 165, 162, 161, 160, 160, 160, 158, 157, 155, 154, 154, 32.11561 + 156, 158, 159, 169, 167, 164, 162, 159, 157, 155, 155, 155, 155, 155, 155, 156, 32.11562 + 156, 157, 155, 160, 163, 163, 159, 160, 165, 168, 163, 156, 156, 155, 155, 154, 32.11563 + 153, 155, 155, 154, 155, 157, 158, 160, 160, 160, 159, 159, 158, 158, 158, 158, 32.11564 + 158, 156, 156, 155, 155, 155, 156, 155, 156, 157, 157, 155, 149, 143, 136, 130, 32.11565 + 126, 122, 119, 127, 122, 121, 126, 130, 129, 126, 125, 112, 118, 120, 112, 104, 32.11566 + 96, 90, 84, 75, 84, 95, 101, 101, 99, 99, 103, 109, 116, 122, 121, 114, 32.11567 + 99, 78, 58, 53, 59, 67, 68, 63, 58, 59, 66, 66, 73, 99, 255, 255, 32.11568 + 255, 255, 206, 101, 90, 79, 75, 85, 97, 83, 62, 50, 51, 56, 67, 93, 32.11569 + 123, 120, 132, 147, 157, 164, 168, 173, 176, 178, 178, 178, 176, 175, 173, 172, 32.11570 + 169, 168, 166, 164, 160, 158, 156, 156, 156, 156, 157, 159, 160, 159, 159, 159, 32.11571 + 160, 159, 159, 158, 156, 157, 158, 160, 163, 151, 151, 152, 152, 154, 158, 163, 32.11572 + 167, 153, 154, 154, 150, 149, 150, 149, 145, 150, 149, 149, 150, 152, 153, 155, 32.11573 + 155, 153, 153, 156, 157, 158, 158, 158, 158, 157, 157, 157, 157, 156, 156, 156, 32.11574 + 156, 153, 153, 153, 154, 156, 157, 158, 155, 152, 148, 144, 139, 133, 126, 123, 32.11575 + 122, 115, 114, 118, 125, 128, 127, 128, 129, 117, 118, 116, 109, 102, 94, 87, 32.11576 + 81, 76, 99, 125, 134, 129, 122, 122, 125, 120, 124, 129, 133, 137, 127, 104, 32.11577 + 80, 54, 51, 56, 66, 67, 60, 54, 58, 58, 69, 93, 255, 255, 255, 255, 32.11578 + 255, 203, 96, 90, 86, 100, 120, 108, 76, 54, 53, 49, 37, 42, 62, 94, 32.11579 + 114, 140, 160, 171, 174, 178, 180, 181, 179, 179, 178, 176, 174, 172, 169, 169, 32.11580 + 166, 162, 159, 156, 155, 154, 153, 157, 160, 163, 164, 162, 161, 161, 160, 158, 32.11581 + 156, 156, 157, 159, 161, 164, 166, 166, 164, 158, 150, 147, 149, 158, 165, 174, 32.11582 + 173, 173, 169, 166, 162, 159, 155, 143, 141, 141, 143, 147, 149, 151, 150, 154, 32.11583 + 154, 156, 157, 158, 158, 158, 157, 155, 155, 155, 155, 154, 154, 154, 154, 152, 32.11584 + 153, 153, 154, 155, 156, 157, 155, 146, 143, 141, 138, 132, 123, 119, 121, 107, 32.11585 + 111, 120, 131, 135, 133, 133, 133, 122, 122, 116, 105, 97, 90, 86, 79, 94, 32.11586 + 124, 153, 163, 155, 146, 145, 147, 141, 139, 134, 135, 141, 139, 124, 107, 64, 32.11587 + 50, 47, 61, 68, 62, 53, 52, 57, 70, 144, 255, 255, 255, 255, 255, 255, 32.11588 + 107, 100, 99, 108, 116, 103, 76, 59, 66, 74, 72, 72, 78, 90, 112, 140, 32.11589 + 163, 175, 179, 183, 185, 183, 183, 183, 180, 178, 176, 173, 170, 170, 168, 163, 32.11590 + 160, 157, 154, 152, 153, 156, 158, 160, 159, 156, 155, 156, 159, 162, 159, 158, 32.11591 + 157, 157, 159, 161, 163, 177, 177, 173, 163, 152, 147, 151, 155, 160, 159, 161, 32.11592 + 161, 158, 154, 152, 150, 147, 144, 143, 145, 150, 152, 153, 151, 157, 157, 159, 32.11593 + 159, 160, 159, 158, 158, 156, 156, 156, 156, 156, 156, 155, 155, 154, 152, 153, 32.11594 + 154, 155, 156, 157, 155, 145, 141, 140, 140, 132, 121, 118, 121, 109, 105, 107, 32.11595 + 116, 123, 124, 123, 122, 122, 126, 126, 112, 101, 94, 95, 94, 117, 143, 166, 32.11596 + 170, 163, 158, 157, 158, 157, 155, 148, 143, 143, 145, 139, 130, 93, 71, 60, 32.11597 + 68, 73, 61, 52, 54, 62, 73, 255, 255, 255, 255, 255, 255, 255, 115, 109, 32.11598 + 113, 115, 109, 143, 108, 73, 60, 68, 84, 92, 91, 105, 124, 147, 165, 173, 32.11599 + 179, 186, 191, 186, 185, 184, 184, 180, 178, 175, 172, 172, 170, 165, 161, 157, 32.11600 + 154, 153, 152, 154, 154, 154, 151, 147, 148, 151, 155, 151, 149, 149, 150, 152, 32.11601 + 154, 158, 162, 166, 175, 181, 179, 169, 160, 157, 157, 156, 156, 161, 165, 166, 32.11602 + 164, 163, 163, 156, 153, 151, 153, 157, 158, 159, 156, 160, 160, 161, 161, 162, 32.11603 + 161, 159, 159, 160, 160, 160, 160, 160, 160, 159, 159, 154, 154, 153, 154, 156, 32.11604 + 156, 157, 155, 149, 143, 143, 143, 135, 122, 118, 122, 132, 117, 105, 106, 115, 32.11605 + 121, 124, 125, 123, 133, 139, 127, 114, 107, 112, 119, 134, 151, 165, 164, 162, 32.11606 + 161, 160, 158, 158, 164, 164, 158, 151, 150, 148, 142, 126, 96, 78, 80, 78, 32.11607 + 61, 54, 56, 66, 75, 255, 255, 255, 255, 255, 255, 255, 116, 113, 119, 123, 32.11608 + 120, 117, 100, 89, 85, 77, 77, 95, 118, 116, 131, 150, 165, 173, 178, 184, 32.11609 + 187, 192, 189, 185, 181, 176, 173, 172, 170, 170, 166, 165, 165, 158, 149, 146, 32.11610 + 153, 162, 153, 148, 147, 141, 146, 150, 144, 150, 149, 148, 145, 147, 149, 152, 32.11611 + 154, 162, 169, 171, 169, 171, 169, 158, 144, 153, 156, 160, 163, 164, 161, 156, 32.11612 + 152, 157, 153, 150, 152, 156, 157, 155, 151, 156, 160, 165, 165, 163, 160, 160, 32.11613 + 160, 161, 162, 162, 162, 161, 160, 159, 158, 158, 158, 157, 154, 153, 153, 154, 32.11614 + 151, 144, 144, 137, 130, 136, 144, 134, 115, 128, 119, 112, 114, 116, 117, 120, 32.11615 + 124, 121, 131, 142, 134, 122, 127, 135, 128, 138, 161, 153, 158, 149, 166, 159, 32.11616 + 170, 170, 171, 165, 164, 172, 164, 153, 152, 151, 120, 74, 75, 68, 63, 41, 32.11617 + 49, 58, 74, 255, 255, 255, 255, 255, 255, 255, 113, 108, 115, 121, 117, 112, 32.11618 + 110, 113, 113, 119, 129, 136, 139, 129, 143, 159, 170, 176, 180, 185, 189, 188, 32.11619 + 187, 185, 181, 179, 176, 174, 171, 175, 166, 161, 160, 160, 158, 163, 172, 150, 32.11620 + 146, 148, 154, 152, 157, 160, 151, 152, 156, 155, 153, 159, 169, 170, 165, 153, 32.11621 + 164, 169, 165, 161, 160, 158, 154, 154, 155, 158, 160, 164, 164, 164, 162, 160, 32.11622 + 154, 148, 148, 154, 160, 165, 165, 158, 160, 163, 162, 160, 159, 160, 162, 163, 32.11623 + 163, 162, 162, 160, 160, 160, 160, 159, 158, 158, 157, 154, 152, 152, 150, 143, 32.11624 + 143, 137, 130, 137, 147, 140, 123, 118, 112, 107, 108, 115, 123, 126, 127, 128, 32.11625 + 128, 136, 139, 132, 136, 151, 156, 151, 157, 148, 156, 172, 183, 173, 174, 172, 32.11626 + 173, 169, 170, 178, 174, 164, 162, 157, 130, 80, 72, 64, 64, 47, 54, 62, 32.11627 + 136, 255, 255, 255, 255, 255, 255, 255, 110, 103, 116, 125, 120, 116, 121, 126, 32.11628 + 126, 136, 149, 145, 130, 138, 149, 160, 168, 171, 173, 177, 180, 183, 181, 181, 32.11629 + 180, 180, 177, 175, 171, 178, 168, 163, 166, 171, 172, 175, 178, 178, 167, 158, 32.11630 + 144, 124, 114, 108, 95, 107, 99, 106, 129, 145, 149, 164, 185, 179, 171, 160, 32.11631 + 151, 153, 160, 164, 161, 155, 154, 154, 155, 156, 159, 163, 165, 162, 157, 152, 32.11632 + 152, 157, 163, 168, 169, 163, 163, 164, 162, 161, 161, 163, 165, 166, 165, 161, 32.11633 + 160, 160, 160, 160, 161, 160, 160, 159, 157, 155, 152, 148, 145, 140, 140, 135, 32.11634 + 128, 135, 148, 145, 131, 127, 124, 116, 109, 115, 125, 125, 117, 138, 129, 137, 32.11635 + 149, 142, 135, 145, 154, 160, 156, 155, 161, 189, 183, 173, 168, 165, 166, 165, 32.11636 + 168, 176, 177, 171, 164, 164, 146, 92, 71, 59, 71, 58, 59, 70, 255, 255, 32.11637 + 255, 255, 255, 255, 255, 255, 107, 101, 119, 132, 129, 126, 128, 128, 126, 131, 32.11638 + 136, 130, 121, 144, 150, 158, 164, 166, 167, 171, 173, 175, 176, 178, 178, 178, 32.11639 + 176, 174, 170, 176, 171, 172, 178, 184, 182, 175, 169, 155, 140, 126, 110, 94, 32.11640 + 94, 101, 97, 100, 101, 104, 101, 93, 92, 109, 131, 169, 166, 160, 155, 155, 32.11641 + 157, 158, 157, 162, 160, 159, 156, 156, 157, 159, 161, 158, 158, 158, 160, 164, 32.11642 + 164, 163, 160, 166, 166, 166, 165, 165, 164, 165, 165, 165, 164, 159, 157, 157, 32.11643 + 158, 159, 160, 158, 159, 158, 157, 154, 149, 143, 140, 137, 137, 132, 123, 128, 32.11644 + 141, 141, 131, 138, 137, 127, 114, 118, 130, 127, 115, 136, 133, 146, 157, 149, 32.11645 + 140, 139, 137, 147, 149, 168, 176, 203, 180, 171, 170, 161, 157, 158, 163, 168, 32.11646 + 176, 175, 162, 167, 159, 108, 75, 58, 77, 65, 62, 132, 255, 255, 255, 255, 32.11647 + 255, 255, 255, 255, 103, 100, 118, 131, 130, 136, 132, 134, 140, 139, 132, 132, 32.11648 + 137, 151, 155, 160, 166, 168, 170, 172, 173, 170, 171, 173, 174, 174, 173, 172, 32.11649 + 168, 174, 171, 173, 180, 186, 184, 173, 162, 123, 114, 108, 104, 103, 119, 141, 32.11650 + 146, 126, 159, 161, 116, 77, 73, 80, 77, 96, 113, 133, 146, 148, 144, 144, 32.11651 + 146, 166, 165, 164, 162, 162, 161, 160, 160, 158, 158, 160, 162, 164, 163, 162, 32.11652 + 160, 165, 165, 167, 168, 168, 166, 163, 161, 164, 162, 160, 158, 155, 156, 158, 32.11653 + 159, 157, 157, 157, 156, 152, 148, 144, 138, 135, 138, 132, 120, 121, 133, 135, 32.11654 + 126, 128, 131, 124, 115, 122, 137, 137, 125, 128, 137, 150, 155, 151, 154, 154, 32.11655 + 139, 130, 138, 167, 185, 218, 194, 181, 176, 160, 152, 157, 161, 164, 177, 179, 32.11656 + 162, 163, 164, 117, 78, 57, 80, 68, 57, 255, 255, 255, 255, 255, 255, 255, 32.11657 + 255, 255, 101, 100, 112, 124, 127, 136, 134, 142, 151, 144, 130, 130, 143, 152, 32.11658 + 157, 161, 166, 169, 171, 171, 171, 169, 170, 171, 171, 172, 170, 170, 167, 173, 32.11659 + 170, 168, 168, 176, 180, 173, 167, 149, 143, 140, 134, 127, 132, 145, 143, 146, 32.11660 + 158, 172, 159, 116, 77, 70, 84, 66, 63, 70, 96, 128, 146, 148, 144, 159, 32.11661 + 159, 160, 161, 162, 161, 161, 160, 163, 161, 159, 159, 161, 164, 169, 171, 163, 32.11662 + 163, 165, 167, 168, 166, 161, 157, 162, 161, 160, 158, 156, 157, 157, 158, 156, 32.11663 + 156, 156, 155, 152, 149, 146, 142, 138, 142, 136, 121, 118, 127, 129, 121, 120, 32.11664 + 122, 119, 114, 119, 130, 132, 127, 134, 140, 148, 146, 144, 156, 157, 141, 137, 32.11665 + 141, 157, 178, 213, 201, 177, 159, 155, 145, 149, 154, 154, 176, 184, 162, 155, 32.11666 + 161, 119, 80, 57, 76, 63, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11667 + 104, 106, 113, 122, 129, 134, 138, 145, 143, 137, 131, 135, 141, 158, 161, 166, 32.11668 + 170, 173, 174, 170, 171, 172, 172, 171, 170, 171, 169, 169, 167, 172, 169, 164, 32.11669 + 160, 166, 173, 171, 168, 164, 160, 159, 153, 140, 137, 142, 136, 157, 146, 157, 32.11670 + 172, 146, 96, 79, 97, 106, 84, 69, 86, 121, 147, 156, 154, 157, 157, 159, 32.11671 + 160, 162, 163, 164, 165, 168, 167, 166, 165, 165, 167, 172, 174, 168, 166, 166, 32.11672 + 166, 168, 167, 163, 160, 163, 162, 162, 161, 161, 161, 159, 158, 158, 157, 156, 32.11673 + 156, 153, 152, 151, 149, 144, 149, 143, 127, 121, 128, 129, 122, 126, 125, 123, 32.11674 + 121, 121, 122, 125, 127, 147, 144, 148, 150, 146, 150, 149, 136, 150, 159, 157, 32.11675 + 173, 189, 192, 162, 149, 153, 139, 143, 149, 149, 175, 190, 166, 153, 160, 121, 32.11676 + 82, 57, 74, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 115, 32.11677 + 120, 129, 138, 135, 144, 144, 134, 134, 145, 156, 156, 167, 169, 174, 178, 182, 32.11678 + 181, 177, 176, 175, 175, 174, 172, 170, 171, 170, 170, 169, 171, 166, 162, 164, 32.11679 + 170, 168, 162, 165, 160, 160, 152, 138, 136, 142, 138, 131, 150, 157, 147, 148, 32.11680 + 156, 142, 117, 136, 138, 140, 140, 134, 134, 148, 165, 165, 166, 165, 165, 167, 32.11681 + 169, 172, 173, 171, 173, 176, 177, 175, 171, 169, 169, 175, 172, 168, 168, 170, 32.11682 + 170, 170, 168, 163, 164, 164, 162, 164, 161, 160, 158, 159, 158, 157, 156, 155, 32.11683 + 155, 156, 153, 147, 152, 147, 130, 123, 129, 130, 126, 130, 128, 128, 130, 127, 32.11684 + 125, 129, 138, 150, 140, 149, 165, 163, 154, 147, 140, 150, 171, 165, 174, 171, 32.11685 + 185, 168, 169, 157, 141, 146, 153, 153, 185, 203, 177, 156, 164, 125, 86, 59, 32.11686 + 74, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 111, 124, 132, 32.11687 + 133, 148, 142, 133, 128, 130, 138, 148, 156, 162, 167, 173, 176, 176, 174, 173, 32.11688 + 174, 174, 174, 174, 173, 174, 173, 173, 171, 176, 169, 164, 161, 162, 163, 159, 32.11689 + 156, 152, 154, 154, 152, 149, 146, 143, 139, 136, 142, 148, 146, 142, 140, 144, 32.11690 + 150, 168, 169, 169, 162, 153, 150, 150, 152, 170, 173, 174, 169, 168, 173, 187, 32.11691 + 200, 187, 181, 177, 175, 179, 179, 175, 171, 170, 172, 174, 176, 175, 172, 170, 32.11692 + 167, 170, 167, 165, 162, 162, 161, 162, 162, 158, 160, 160, 155, 151, 150, 152, 32.11693 + 151, 152, 143, 145, 116, 120, 119, 136, 121, 124, 129, 127, 143, 122, 127, 127, 32.11694 + 152, 168, 153, 148, 156, 157, 156, 148, 135, 172, 168, 165, 167, 172, 174, 172, 32.11695 + 170, 159, 153, 142, 132, 164, 168, 224, 174, 159, 162, 129, 74, 77, 67, 136, 32.11696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 111, 119, 130, 135, 136, 140, 32.11697 + 135, 130, 130, 137, 147, 158, 164, 165, 169, 175, 177, 177, 174, 173, 174, 171, 32.11698 + 174, 175, 176, 176, 175, 172, 170, 173, 172, 169, 166, 163, 159, 158, 157, 150, 32.11699 + 151, 152, 153, 153, 153, 153, 152, 154, 159, 163, 161, 157, 157, 163, 167, 165, 32.11700 + 166, 167, 165, 161, 160, 163, 167, 170, 177, 183, 182, 177, 175, 179, 187, 187, 32.11701 + 182, 178, 176, 180, 180, 177, 173, 172, 172, 173, 174, 173, 171, 169, 167, 166, 32.11702 + 163, 160, 159, 158, 158, 157, 158, 160, 160, 156, 153, 150, 150, 154, 155, 155, 32.11703 + 149, 140, 120, 123, 123, 130, 125, 120, 124, 124, 144, 129, 131, 126, 143, 161, 32.11704 + 163, 164, 168, 164, 152, 140, 137, 154, 165, 176, 184, 200, 208, 193, 170, 164, 32.11705 + 157, 141, 137, 163, 173, 223, 180, 170, 170, 128, 69, 65, 57, 255, 255, 255, 32.11706 + 255, 255, 255, 255, 255, 255, 255, 255, 117, 125, 133, 136, 136, 134, 131, 130, 32.11707 + 135, 146, 157, 166, 169, 170, 173, 178, 178, 177, 174, 173, 175, 170, 172, 175, 32.11708 + 176, 177, 174, 169, 167, 171, 173, 175, 169, 161, 154, 154, 156, 149, 150, 150, 32.11709 + 151, 153, 155, 156, 157, 163, 165, 167, 165, 162, 164, 169, 174, 162, 163, 165, 32.11710 + 164, 163, 165, 173, 178, 175, 182, 189, 188, 183, 178, 180, 182, 185, 181, 178, 32.11711 + 177, 180, 180, 178, 175, 175, 174, 173, 171, 171, 170, 170, 169, 168, 165, 162, 32.11712 + 161, 160, 160, 159, 159, 162, 161, 156, 152, 150, 151, 155, 156, 152, 155, 134, 32.11713 + 126, 128, 129, 121, 134, 117, 123, 127, 146, 139, 137, 127, 132, 161, 175, 171, 32.11714 + 163, 160, 151, 153, 176, 173, 187, 193, 183, 191, 205, 201, 183, 172, 164, 143, 32.11715 + 142, 153, 170, 208, 172, 172, 170, 126, 72, 61, 124, 255, 255, 255, 255, 255, 32.11716 + 255, 255, 255, 255, 255, 255, 119, 127, 130, 130, 129, 130, 129, 130, 139, 150, 32.11717 + 159, 164, 164, 170, 173, 177, 176, 175, 174, 173, 176, 171, 174, 176, 175, 175, 32.11718 + 173, 171, 168, 174, 174, 175, 171, 164, 158, 155, 154, 155, 155, 153, 152, 152, 32.11719 + 153, 155, 155, 159, 162, 166, 164, 162, 163, 167, 171, 167, 166, 167, 165, 164, 32.11720 + 166, 172, 176, 182, 183, 184, 181, 178, 177, 183, 186, 182, 179, 177, 176, 179, 32.11721 + 179, 178, 178, 178, 176, 174, 171, 171, 170, 172, 171, 166, 165, 163, 162, 161, 32.11722 + 161, 160, 159, 162, 160, 156, 153, 151, 150, 151, 149, 142, 155, 129, 129, 128, 32.11723 + 129, 115, 146, 122, 127, 135, 148, 146, 139, 130, 130, 156, 177, 169, 156, 158, 32.11724 + 147, 153, 191, 201, 213, 211, 192, 184, 194, 207, 209, 182, 173, 149, 147, 139, 32.11725 + 160, 186, 158, 165, 160, 114, 75, 68, 255, 255, 255, 255, 255, 255, 255, 255, 32.11726 + 255, 255, 255, 255, 117, 125, 126, 124, 124, 126, 127, 132, 142, 152, 158, 162, 32.11727 + 162, 170, 172, 174, 174, 173, 172, 174, 177, 177, 176, 174, 171, 171, 171, 171, 32.11728 + 170, 177, 174, 172, 171, 170, 165, 159, 154, 163, 161, 160, 156, 155, 156, 157, 32.11729 + 157, 158, 162, 167, 170, 169, 169, 170, 170, 175, 174, 175, 173, 172, 173, 176, 32.11730 + 178, 185, 183, 181, 178, 176, 177, 180, 182, 179, 178, 178, 176, 176, 175, 175, 32.11731 + 176, 178, 175, 172, 168, 168, 168, 169, 170, 161, 160, 159, 159, 158, 157, 155, 32.11732 + 154, 156, 155, 153, 151, 149, 145, 141, 135, 129, 147, 128, 129, 124, 125, 117, 32.11733 + 153, 126, 132, 144, 148, 146, 136, 134, 136, 144, 172, 170, 162, 163, 144, 135, 32.11734 + 164, 158, 158, 162, 165, 165, 163, 169, 176, 188, 178, 162, 153, 136, 150, 169, 32.11735 + 150, 165, 150, 94, 70, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11736 + 255, 255, 116, 125, 122, 121, 125, 121, 127, 136, 145, 155, 161, 164, 165, 169, 32.11737 + 170, 172, 171, 170, 171, 173, 177, 179, 178, 174, 172, 171, 171, 173, 174, 180, 32.11738 + 176, 173, 172, 174, 172, 168, 161, 159, 157, 157, 157, 157, 155, 156, 156, 158, 32.11739 + 162, 169, 172, 173, 172, 172, 171, 173, 171, 173, 174, 175, 176, 178, 179, 182, 32.11740 + 181, 182, 182, 181, 178, 173, 170, 179, 178, 178, 176, 174, 174, 175, 175, 174, 32.11741 + 172, 169, 166, 165, 165, 165, 165, 161, 161, 160, 160, 159, 158, 155, 154, 150, 32.11742 + 150, 148, 148, 147, 142, 135, 127, 124, 138, 132, 127, 123, 126, 128, 154, 131, 32.11743 + 136, 150, 144, 147, 136, 142, 143, 149, 166, 166, 161, 159, 148, 146, 168, 171, 32.11744 + 151, 145, 159, 176, 174, 171, 171, 184, 175, 180, 160, 143, 147, 166, 152, 181, 32.11745 + 152, 82, 66, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11746 + 115, 125, 125, 127, 133, 123, 133, 145, 154, 159, 163, 167, 171, 173, 173, 172, 32.11747 + 170, 169, 169, 173, 177, 179, 178, 177, 174, 174, 172, 172, 172, 180, 178, 176, 32.11748 + 174, 175, 174, 174, 172, 161, 159, 160, 161, 161, 160, 160, 159, 160, 162, 166, 32.11749 + 169, 171, 171, 172, 171, 168, 168, 172, 175, 178, 180, 182, 182, 182, 182, 184, 32.11750 + 186, 187, 183, 175, 169, 180, 181, 180, 177, 175, 173, 174, 175, 175, 173, 170, 32.11751 + 167, 165, 164, 163, 163, 162, 163, 162, 162, 161, 160, 157, 156, 152, 151, 148, 32.11752 + 149, 149, 147, 141, 133, 131, 135, 139, 123, 126, 130, 143, 146, 137, 138, 152, 32.11753 + 144, 156, 147, 155, 151, 156, 161, 163, 159, 151, 151, 168, 190, 189, 168, 151, 32.11754 + 148, 158, 164, 165, 165, 177, 168, 193, 162, 150, 141, 164, 154, 182, 150, 73, 32.11755 + 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 117, 127, 32.11756 + 129, 133, 142, 130, 141, 154, 160, 163, 162, 167, 173, 176, 176, 174, 171, 168, 32.11757 + 168, 172, 175, 177, 178, 178, 177, 176, 174, 172, 171, 178, 181, 181, 179, 176, 32.11758 + 174, 178, 182, 173, 172, 173, 172, 173, 169, 168, 165, 164, 165, 167, 168, 172, 32.11759 + 172, 174, 174, 172, 173, 176, 181, 185, 186, 187, 186, 183, 182, 181, 183, 187, 32.11760 + 188, 183, 179, 184, 183, 181, 178, 175, 173, 174, 175, 177, 176, 174, 171, 169, 32.11761 + 167, 166, 165, 158, 159, 159, 159, 158, 156, 153, 152, 157, 155, 151, 152, 154, 32.11762 + 154, 150, 144, 141, 135, 143, 122, 131, 136, 155, 139, 145, 142, 155, 147, 167, 32.11763 + 159, 170, 161, 149, 154, 168, 169, 152, 147, 163, 175, 189, 190, 181, 165, 156, 32.11764 + 163, 169, 168, 172, 163, 200, 162, 153, 132, 159, 149, 162, 133, 64, 255, 255, 32.11765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 120, 129, 141, 139, 32.11766 + 125, 140, 152, 161, 161, 161, 165, 170, 170, 175, 174, 173, 172, 171, 171, 171, 32.11767 + 172, 176, 178, 178, 178, 178, 177, 177, 178, 177, 180, 183, 185, 185, 182, 178, 32.11768 + 173, 176, 175, 174, 172, 172, 170, 170, 167, 166, 170, 177, 177, 175, 173, 175, 32.11769 + 176, 180, 180, 181, 182, 184, 185, 188, 189, 196, 200, 197, 188, 184, 186, 183, 32.11770 + 177, 178, 178, 179, 178, 179, 177, 175, 173, 173, 175, 177, 174, 169, 166, 166, 32.11771 + 168, 165, 163, 161, 160, 159, 160, 160, 161, 157, 155, 151, 149, 149, 149, 150, 32.11772 + 148, 143, 125, 130, 134, 141, 147, 136, 142, 146, 148, 150, 152, 160, 168, 172, 32.11773 + 168, 154, 150, 151, 156, 155, 154, 161, 174, 180, 199, 186, 163, 163, 162, 156, 32.11774 + 161, 168, 170, 176, 189, 159, 128, 146, 160, 160, 116, 126, 255, 255, 255, 255, 32.11775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 124, 130, 137, 136, 129, 149, 32.11776 + 156, 162, 161, 165, 171, 173, 170, 175, 174, 173, 172, 171, 171, 171, 172, 177, 32.11777 + 177, 179, 177, 178, 179, 180, 180, 183, 181, 184, 187, 188, 187, 183, 180, 184, 32.11778 + 182, 181, 178, 176, 173, 171, 169, 169, 174, 179, 177, 175, 174, 177, 180, 181, 32.11779 + 182, 184, 187, 189, 190, 189, 189, 190, 193, 192, 187, 188, 190, 189, 184, 179, 32.11780 + 179, 179, 179, 180, 178, 176, 174, 172, 174, 175, 172, 168, 165, 165, 166, 169, 32.11781 + 168, 164, 161, 160, 159, 157, 157, 155, 156, 155, 154, 152, 151, 150, 148, 139, 32.11782 + 127, 137, 135, 138, 139, 130, 140, 151, 153, 154, 157, 165, 174, 176, 174, 163, 32.11783 + 154, 150, 150, 151, 149, 157, 168, 178, 194, 192, 173, 168, 167, 166, 168, 166, 32.11784 + 167, 172, 185, 160, 133, 150, 159, 149, 100, 255, 255, 255, 255, 255, 255, 255, 32.11785 + 255, 255, 255, 255, 255, 255, 255, 114, 130, 133, 131, 133, 135, 158, 160, 162, 32.11786 + 162, 168, 174, 175, 170, 178, 177, 176, 175, 173, 173, 173, 173, 176, 176, 178, 32.11787 + 177, 179, 180, 182, 183, 186, 182, 181, 184, 189, 191, 187, 182, 189, 186, 186, 32.11788 + 182, 181, 177, 176, 174, 174, 177, 180, 179, 177, 178, 182, 184, 178, 180, 185, 32.11789 + 189, 190, 191, 188, 187, 187, 190, 191, 189, 190, 192, 191, 188, 181, 181, 181, 32.11790 + 180, 179, 178, 176, 175, 173, 174, 173, 171, 167, 165, 164, 166, 169, 168, 165, 32.11791 + 162, 160, 159, 157, 157, 153, 157, 159, 159, 155, 151, 150, 149, 134, 129, 141, 32.11792 + 135, 130, 131, 126, 141, 154, 156, 159, 161, 170, 179, 181, 179, 181, 164, 151, 32.11793 + 148, 150, 151, 159, 169, 178, 188, 198, 188, 172, 168, 172, 168, 162, 168, 171, 32.11794 + 181, 158, 137, 153, 155, 134, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11795 + 255, 255, 255, 255, 255, 114, 132, 131, 124, 131, 140, 162, 163, 163, 164, 167, 32.11796 + 168, 170, 170, 179, 177, 176, 175, 173, 173, 174, 174, 174, 175, 175, 177, 178, 32.11797 + 179, 183, 182, 184, 178, 175, 179, 186, 190, 186, 181, 183, 182, 182, 181, 181, 32.11798 + 180, 180, 178, 177, 177, 178, 177, 177, 178, 182, 184, 172, 174, 178, 181, 184, 32.11799 + 184, 183, 182, 187, 189, 189, 188, 188, 187, 185, 183, 180, 180, 179, 178, 177, 32.11800 + 176, 175, 174, 174, 174, 173, 171, 168, 166, 165, 165, 163, 163, 161, 160, 160, 32.11801 + 159, 158, 158, 153, 157, 159, 158, 154, 150, 149, 149, 136, 130, 139, 130, 126, 32.11802 + 131, 129, 143, 154, 156, 160, 163, 172, 182, 185, 182, 191, 169, 149, 147, 150, 32.11803 + 154, 161, 170, 176, 181, 202, 201, 175, 166, 169, 161, 159, 171, 174, 174, 152, 32.11804 + 139, 154, 149, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11805 + 255, 255, 255, 114, 132, 129, 123, 135, 146, 160, 163, 165, 165, 163, 161, 165, 32.11806 + 168, 173, 172, 171, 170, 169, 170, 171, 171, 174, 172, 173, 174, 176, 177, 180, 32.11807 + 180, 183, 177, 174, 175, 183, 187, 184, 181, 179, 179, 178, 178, 178, 176, 176, 32.11808 + 176, 176, 174, 173, 173, 173, 175, 179, 182, 173, 172, 174, 176, 178, 180, 183, 32.11809 + 184, 187, 187, 187, 188, 188, 184, 182, 181, 179, 178, 177, 176, 175, 174, 172, 32.11810 + 172, 172, 171, 169, 168, 166, 164, 160, 161, 160, 161, 159, 159, 158, 156, 154, 32.11811 + 154, 154, 156, 155, 154, 150, 147, 147, 149, 140, 131, 134, 124, 125, 137, 137, 32.11812 + 148, 152, 154, 157, 161, 170, 180, 184, 181, 185, 162, 142, 142, 149, 155, 161, 32.11813 + 168, 167, 172, 197, 203, 177, 161, 161, 154, 153, 171, 174, 168, 147, 139, 155, 32.11814 + 144, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11815 + 255, 113, 128, 127, 128, 143, 152, 160, 165, 167, 167, 162, 157, 160, 167, 165, 32.11816 + 165, 164, 164, 164, 166, 167, 168, 173, 172, 172, 173, 175, 177, 179, 180, 184, 32.11817 + 178, 176, 179, 184, 187, 185, 183, 181, 182, 179, 177, 176, 174, 173, 171, 172, 32.11818 + 172, 169, 169, 171, 173, 176, 177, 176, 174, 175, 177, 179, 182, 187, 188, 183, 32.11819 + 182, 183, 187, 189, 184, 182, 183, 178, 177, 175, 174, 173, 172, 171, 171, 169, 32.11820 + 167, 165, 163, 163, 161, 157, 157, 162, 163, 160, 158, 156, 152, 149, 147, 155, 32.11821 + 154, 151, 150, 148, 147, 146, 145, 142, 132, 133, 121, 127, 145, 145, 150, 151, 32.11822 + 154, 157, 161, 171, 180, 182, 180, 178, 159, 144, 149, 158, 164, 167, 172, 161, 32.11823 + 166, 187, 194, 178, 159, 155, 156, 153, 171, 170, 159, 145, 146, 156, 130, 128, 32.11824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 116, 32.11825 + 126, 129, 139, 154, 160, 165, 166, 169, 172, 166, 160, 159, 164, 162, 162, 162, 32.11826 + 164, 166, 168, 169, 169, 175, 173, 173, 173, 174, 176, 177, 178, 182, 180, 180, 32.11827 + 182, 184, 185, 183, 182, 183, 185, 183, 182, 181, 177, 176, 175, 176, 175, 174, 32.11828 + 175, 175, 178, 180, 180, 178, 177, 180, 183, 188, 189, 190, 191, 183, 180, 185, 32.11829 + 191, 191, 185, 183, 185, 179, 177, 175, 173, 172, 172, 171, 171, 170, 167, 164, 32.11830 + 163, 161, 160, 157, 156, 162, 163, 161, 159, 156, 153, 148, 146, 155, 153, 149, 32.11831 + 150, 152, 150, 144, 141, 139, 132, 135, 123, 129, 146, 145, 151, 152, 155, 158, 32.11832 + 162, 171, 180, 181, 178, 170, 158, 150, 160, 170, 173, 174, 177, 166, 171, 178, 32.11833 + 181, 176, 155, 148, 161, 165, 176, 164, 150, 144, 152, 150, 108, 255, 255, 255, 32.11834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 119, 125, 130, 32.11835 + 145, 162, 163, 171, 168, 168, 171, 172, 165, 160, 159, 164, 163, 165, 166, 168, 32.11836 + 171, 172, 174, 175, 175, 175, 175, 176, 177, 178, 178, 179, 180, 181, 183, 184, 32.11837 + 182, 182, 181, 183, 185, 185, 185, 185, 183, 183, 182, 182, 181, 181, 180, 183, 32.11838 + 185, 186, 185, 178, 178, 185, 190, 192, 193, 191, 190, 186, 183, 187, 193, 192, 32.11839 + 185, 182, 184, 179, 177, 176, 173, 173, 171, 172, 172, 173, 170, 167, 166, 164, 32.11840 + 163, 160, 159, 159, 160, 160, 159, 158, 155, 152, 151, 154, 151, 148, 152, 156, 32.11841 + 154, 144, 137, 134, 131, 138, 127, 129, 144, 142, 148, 154, 158, 161, 166, 175, 32.11842 + 183, 183, 181, 164, 154, 152, 164, 175, 175, 175, 175, 178, 182, 174, 174, 174, 32.11843 + 152, 142, 164, 180, 183, 160, 144, 143, 154, 142, 255, 255, 255, 255, 255, 255, 32.11844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 116, 127, 143, 157, 164, 32.11845 + 166, 175, 175, 171, 170, 169, 167, 165, 161, 164, 164, 162, 160, 160, 165, 170, 32.11846 + 170, 178, 176, 176, 177, 179, 179, 179, 178, 180, 188, 186, 184, 189, 181, 177, 32.11847 + 182, 176, 180, 185, 186, 184, 179, 178, 178, 179, 181, 185, 184, 180, 177, 177, 32.11848 + 179, 189, 194, 197, 191, 190, 193, 194, 191, 179, 182, 185, 186, 186, 183, 179, 32.11849 + 176, 175, 175, 176, 173, 173, 170, 169, 169, 169, 166, 162, 159, 159, 159, 158, 32.11850 + 159, 158, 159, 159, 159, 158, 157, 156, 155, 150, 154, 155, 153, 152, 154, 150, 32.11851 + 142, 131, 145, 148, 135, 126, 135, 149, 155, 166, 158, 158, 170, 181, 181, 175, 32.11852 + 172, 161, 151, 160, 177, 177, 173, 176, 174, 176, 177, 174, 164, 153, 150, 158, 32.11853 + 169, 170, 178, 148, 149, 159, 152, 129, 255, 255, 255, 255, 255, 255, 255, 255, 32.11854 + 255, 255, 255, 255, 255, 255, 255, 255, 117, 123, 135, 151, 162, 167, 168, 173, 32.11855 + 172, 168, 166, 164, 165, 163, 164, 166, 166, 163, 161, 162, 166, 170, 171, 171, 32.11856 + 172, 175, 179, 183, 185, 186, 185, 189, 196, 194, 190, 192, 186, 180, 185, 178, 32.11857 + 180, 182, 181, 177, 176, 177, 179, 184, 184, 184, 186, 188, 188, 187, 185, 188, 32.11858 + 192, 195, 191, 188, 189, 187, 183, 184, 185, 187, 188, 187, 184, 181, 179, 177, 32.11859 + 177, 176, 175, 174, 173, 173, 172, 169, 167, 163, 162, 161, 161, 159, 159, 158, 32.11860 + 160, 160, 160, 158, 158, 157, 156, 148, 152, 154, 153, 153, 155, 152, 145, 136, 32.11861 + 147, 149, 138, 132, 141, 155, 159, 160, 155, 164, 184, 193, 182, 167, 162, 155, 32.11862 + 159, 174, 180, 159, 145, 151, 160, 154, 155, 159, 162, 167, 172, 176, 180, 169, 32.11863 + 163, 158, 154, 156, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11864 + 255, 255, 255, 255, 255, 255, 120, 129, 142, 157, 168, 170, 170, 171, 169, 166, 32.11865 + 164, 163, 165, 165, 167, 164, 162, 161, 159, 160, 163, 166, 168, 168, 169, 174, 32.11866 + 179, 183, 186, 187, 188, 195, 201, 196, 191, 191, 185, 179, 186, 186, 186, 184, 32.11867 + 181, 178, 179, 182, 185, 185, 182, 179, 182, 188, 191, 190, 187, 186, 190, 195, 32.11868 + 194, 192, 191, 188, 184, 188, 188, 188, 187, 186, 184, 182, 181, 179, 178, 178, 32.11869 + 177, 177, 176, 176, 175, 169, 167, 165, 164, 163, 162, 158, 158, 158, 159, 160, 32.11870 + 160, 159, 158, 157, 156, 151, 153, 152, 151, 152, 153, 150, 144, 142, 149, 148, 32.11871 + 141, 139, 149, 159, 160, 162, 158, 171, 192, 192, 169, 151, 149, 162, 164, 177, 32.11872 + 177, 152, 137, 145, 155, 159, 156, 160, 170, 184, 189, 182, 175, 167, 149, 168, 32.11873 + 162, 155, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11874 + 255, 255, 255, 255, 121, 133, 144, 159, 167, 168, 168, 166, 166, 168, 165, 166, 32.11875 + 164, 166, 168, 163, 159, 158, 160, 161, 162, 163, 165, 166, 167, 169, 172, 174, 32.11876 + 176, 180, 183, 192, 198, 193, 188, 189, 182, 177, 183, 187, 187, 184, 182, 180, 32.11877 + 181, 183, 186, 184, 181, 178, 179, 183, 187, 188, 187, 184, 186, 190, 190, 189, 32.11878 + 188, 188, 187, 189, 188, 186, 184, 182, 181, 180, 180, 177, 177, 177, 176, 176, 32.11879 + 175, 175, 175, 167, 166, 164, 164, 163, 160, 156, 155, 156, 157, 158, 158, 157, 32.11880 + 156, 156, 155, 156, 155, 152, 151, 150, 148, 143, 139, 143, 145, 143, 139, 141, 32.11881 + 150, 156, 155, 164, 162, 175, 190, 181, 155, 147, 157, 164, 155, 159, 165, 159, 32.11882 + 158, 161, 161, 169, 165, 164, 174, 184, 183, 171, 157, 164, 150, 169, 172, 151, 32.11883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11884 + 255, 255, 119, 132, 145, 156, 163, 164, 163, 160, 164, 169, 168, 167, 165, 164, 32.11885 + 164, 166, 159, 157, 161, 163, 161, 162, 163, 161, 160, 160, 160, 161, 165, 173, 32.11886 + 179, 183, 191, 187, 183, 186, 181, 177, 183, 179, 180, 179, 179, 179, 179, 179, 32.11887 + 179, 186, 186, 185, 183, 181, 182, 186, 189, 184, 182, 182, 181, 179, 177, 178, 32.11888 + 181, 186, 185, 182, 180, 178, 177, 177, 177, 174, 174, 173, 173, 172, 171, 171, 32.11889 + 171, 165, 163, 162, 161, 160, 157, 153, 151, 153, 153, 154, 154, 155, 154, 153, 32.11890 + 152, 156, 154, 150, 149, 148, 145, 139, 137, 143, 142, 139, 138, 142, 149, 152, 32.11891 + 150, 154, 159, 175, 184, 168, 144, 145, 162, 144, 136, 146, 163, 172, 176, 174, 32.11892 + 163, 159, 158, 159, 166, 172, 170, 162, 153, 161, 164, 159, 170, 179, 255, 255, 32.11893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11894 + 123, 134, 145, 155, 160, 161, 160, 160, 166, 171, 173, 169, 164, 162, 162, 163, 32.11895 + 154, 153, 159, 162, 158, 156, 159, 155, 156, 157, 155, 156, 159, 167, 174, 175, 32.11896 + 184, 183, 182, 186, 183, 178, 184, 177, 178, 179, 182, 183, 183, 181, 179, 184, 32.11897 + 186, 186, 182, 178, 177, 182, 186, 191, 185, 182, 180, 176, 172, 173, 177, 183, 32.11898 + 182, 180, 178, 177, 176, 176, 175, 173, 173, 172, 171, 169, 168, 167, 167, 163, 32.11899 + 161, 159, 157, 156, 154, 150, 147, 150, 151, 152, 153, 153, 153, 151, 151, 153, 32.11900 + 147, 146, 148, 149, 146, 142, 142, 147, 144, 141, 142, 145, 149, 150, 149, 148, 32.11901 + 160, 176, 177, 156, 131, 128, 138, 133, 139, 162, 180, 182, 180, 176, 164, 155, 32.11902 + 157, 161, 162, 163, 162, 160, 157, 161, 169, 152, 187, 255, 255, 255, 255, 255, 32.11903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 129, 140, 32.11904 + 150, 157, 162, 162, 162, 169, 174, 179, 180, 173, 168, 166, 168, 165, 156, 153, 32.11905 + 161, 165, 159, 156, 159, 157, 158, 161, 159, 157, 158, 161, 166, 168, 178, 179, 32.11906 + 180, 185, 180, 174, 181, 180, 180, 181, 184, 187, 189, 187, 185, 185, 185, 183, 32.11907 + 182, 180, 180, 182, 182, 191, 186, 184, 185, 181, 175, 175, 180, 182, 182, 181, 32.11908 + 180, 179, 178, 178, 177, 175, 175, 173, 171, 169, 167, 166, 165, 164, 161, 157, 32.11909 + 155, 153, 152, 149, 147, 150, 151, 152, 153, 152, 152, 152, 152, 153, 148, 146, 32.11910 + 149, 150, 146, 144, 146, 149, 146, 145, 146, 148, 148, 149, 149, 156, 168, 178, 32.11911 + 175, 159, 144, 138, 136, 155, 160, 179, 189, 185, 181, 177, 165, 162, 164, 165, 32.11912 + 165, 163, 162, 161, 161, 161, 161, 148, 255, 255, 255, 255, 255, 255, 255, 255, 32.11913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 135, 145, 154, 160, 32.11914 + 165, 165, 163, 181, 185, 187, 185, 177, 174, 173, 176, 175, 165, 162, 170, 175, 32.11915 + 169, 165, 167, 163, 166, 168, 166, 160, 157, 158, 158, 164, 173, 176, 178, 183, 32.11916 + 177, 170, 177, 179, 178, 177, 180, 184, 187, 187, 186, 193, 189, 185, 186, 189, 32.11917 + 191, 189, 185, 181, 177, 179, 184, 183, 177, 177, 182, 183, 183, 183, 183, 183, 32.11918 + 181, 180, 180, 178, 177, 175, 173, 171, 168, 167, 166, 165, 162, 157, 154, 152, 32.11919 + 151, 149, 148, 150, 151, 152, 153, 153, 153, 153, 151, 158, 152, 148, 152, 151, 32.11920 + 146, 143, 145, 150, 147, 146, 147, 148, 146, 147, 148, 164, 173, 180, 178, 177, 32.11921 + 179, 178, 172, 186, 177, 178, 180, 179, 181, 178, 163, 157, 159, 161, 160, 161, 32.11922 + 162, 163, 164, 160, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 135, 150, 155, 156, 161, 164, 32.11924 + 164, 202, 206, 194, 181, 180, 177, 169, 168, 162, 166, 170, 170, 170, 169, 171, 32.11925 + 172, 163, 162, 163, 163, 164, 164, 160, 156, 161, 170, 179, 181, 179, 180, 177, 32.11926 + 176, 179, 176, 175, 179, 181, 182, 187, 193, 186, 188, 186, 184, 187, 192, 193, 32.11927 + 188, 188, 184, 181, 181, 182, 184, 184, 183, 181, 181, 182, 182, 181, 180, 178, 32.11928 + 177, 177, 172, 167, 167, 170, 172, 170, 167, 161, 160, 158, 155, 153, 150, 148, 32.11929 + 147, 143, 150, 157, 159, 156, 154, 153, 155, 152, 152, 152, 148, 142, 139, 140, 32.11930 + 145, 150, 149, 149, 150, 146, 141, 145, 151, 162, 168, 175, 176, 175, 176, 182, 32.11931 + 187, 177, 180, 183, 182, 182, 180, 173, 164, 157, 151, 160, 168, 165, 165, 166, 32.11932 + 162, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11933 + 255, 255, 255, 255, 255, 255, 255, 113, 133, 149, 157, 161, 169, 175, 176, 211, 32.11934 + 210, 192, 176, 176, 176, 171, 173, 169, 169, 170, 172, 176, 177, 177, 175, 167, 32.11935 + 168, 169, 164, 159, 157, 158, 160, 162, 170, 176, 177, 179, 179, 177, 174, 182, 32.11936 + 179, 178, 180, 181, 181, 185, 190, 188, 191, 190, 186, 186, 189, 190, 187, 190, 32.11937 + 185, 183, 182, 183, 184, 183, 183, 184, 183, 182, 180, 179, 179, 179, 180, 176, 32.11938 + 172, 168, 168, 171, 172, 170, 166, 163, 161, 159, 156, 153, 151, 150, 150, 150, 32.11939 + 156, 161, 161, 157, 151, 151, 152, 152, 153, 153, 150, 144, 142, 143, 145, 151, 32.11940 + 149, 150, 150, 146, 142, 146, 153, 164, 167, 170, 169, 167, 167, 172, 175, 174, 32.11941 + 177, 180, 177, 180, 180, 177, 170, 168, 152, 151, 159, 162, 162, 160, 255, 255, 32.11942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11943 + 255, 255, 255, 255, 255, 116, 132, 146, 155, 163, 171, 178, 179, 192, 192, 177, 32.11944 + 168, 174, 177, 174, 175, 174, 171, 168, 173, 182, 184, 181, 175, 172, 173, 172, 32.11945 + 166, 157, 155, 159, 165, 160, 166, 172, 175, 179, 182, 179, 173, 184, 180, 179, 32.11946 + 181, 180, 179, 182, 187, 189, 194, 194, 189, 185, 186, 187, 186, 191, 186, 184, 32.11947 + 183, 183, 183, 182, 181, 185, 183, 181, 178, 178, 178, 180, 181, 173, 171, 168, 32.11948 + 169, 171, 171, 168, 164, 164, 162, 159, 155, 153, 152, 152, 153, 156, 159, 161, 32.11949 + 160, 156, 152, 152, 152, 152, 153, 151, 149, 146, 145, 146, 148, 151, 150, 150, 32.11950 + 150, 146, 142, 147, 154, 168, 167, 168, 168, 168, 169, 172, 173, 179, 180, 182, 32.11951 + 178, 181, 182, 180, 175, 173, 153, 149, 159, 164, 161, 255, 255, 255, 255, 255, 32.11952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11953 + 255, 255, 255, 120, 131, 140, 147, 154, 163, 168, 171, 170, 172, 167, 166, 177, 32.11954 + 176, 167, 168, 172, 169, 170, 173, 179, 181, 179, 176, 173, 173, 173, 166, 160, 32.11955 + 158, 160, 164, 157, 162, 168, 172, 180, 186, 183, 176, 181, 177, 176, 179, 179, 32.11956 + 178, 180, 184, 187, 194, 196, 190, 185, 185, 187, 186, 189, 185, 183, 182, 182, 32.11957 + 181, 180, 178, 181, 181, 179, 178, 177, 177, 177, 177, 170, 168, 168, 168, 169, 32.11958 + 168, 164, 161, 164, 161, 157, 153, 151, 152, 153, 154, 155, 158, 159, 158, 156, 32.11959 + 154, 154, 155, 151, 151, 149, 148, 147, 147, 148, 148, 149, 148, 148, 148, 145, 32.11960 + 141, 147, 154, 165, 165, 168, 172, 177, 179, 179, 178, 182, 185, 184, 180, 181, 32.11961 + 180, 176, 168, 163, 148, 149, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11963 + 255, 123, 128, 133, 139, 147, 153, 158, 161, 172, 173, 165, 163, 172, 167, 157, 32.11964 + 158, 166, 169, 172, 173, 174, 174, 176, 177, 172, 170, 167, 163, 160, 157, 154, 32.11965 + 152, 154, 159, 164, 168, 177, 184, 182, 175, 174, 171, 171, 175, 176, 176, 179, 32.11966 + 183, 183, 191, 194, 190, 185, 185, 188, 187, 186, 182, 181, 180, 180, 179, 177, 32.11967 + 175, 175, 176, 178, 178, 178, 175, 173, 171, 167, 167, 166, 166, 166, 164, 161, 32.11968 + 159, 161, 159, 155, 152, 150, 151, 153, 154, 154, 155, 156, 155, 154, 153, 152, 32.11969 + 153, 148, 147, 146, 145, 145, 145, 145, 146, 147, 146, 145, 145, 142, 139, 145, 32.11970 + 153, 160, 163, 169, 176, 181, 182, 180, 177, 179, 181, 182, 179, 179, 176, 168, 32.11971 + 159, 154, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 32.11973 + 125, 126, 134, 142, 149, 154, 159, 166, 165, 154, 150, 157, 155, 153, 164, 164, 32.11974 + 168, 171, 170, 168, 169, 170, 173, 169, 167, 162, 158, 156, 153, 148, 143, 153, 32.11975 + 159, 165, 169, 175, 180, 179, 172, 169, 166, 168, 173, 175, 175, 178, 183, 180, 32.11976 + 187, 190, 188, 185, 187, 188, 186, 183, 180, 179, 179, 179, 178, 176, 173, 171, 32.11977 + 173, 176, 178, 177, 174, 170, 167, 167, 167, 166, 165, 163, 162, 160, 159, 159, 32.11978 + 157, 154, 152, 151, 151, 153, 154, 159, 157, 155, 153, 151, 150, 149, 149, 147, 32.11979 + 145, 143, 143, 143, 144, 144, 144, 145, 144, 144, 143, 140, 138, 145, 153, 165, 32.11980 + 169, 176, 181, 182, 180, 178, 175, 177, 180, 182, 182, 181, 177, 169, 191, 255, 32.11981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 124, 122, 32.11983 + 129, 139, 144, 149, 154, 153, 153, 145, 143, 149, 147, 151, 169, 162, 163, 163, 32.11984 + 163, 164, 164, 163, 162, 165, 163, 160, 155, 152, 150, 153, 154, 162, 169, 175, 32.11985 + 176, 177, 179, 179, 175, 168, 166, 167, 173, 175, 175, 177, 182, 181, 185, 187, 32.11986 + 185, 185, 188, 186, 181, 181, 179, 178, 179, 180, 179, 177, 174, 173, 174, 175, 32.11987 + 176, 175, 173, 170, 168, 169, 169, 167, 165, 163, 161, 161, 162, 157, 157, 155, 32.11988 + 154, 153, 153, 154, 154, 159, 157, 154, 152, 150, 150, 150, 150, 148, 146, 143, 32.11989 + 143, 143, 144, 143, 142, 146, 144, 144, 143, 140, 138, 146, 154, 168, 172, 178, 32.11990 + 178, 176, 173, 174, 176, 178, 180, 180, 177, 175, 172, 194, 255, 255, 255, 255, 32.11991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.11992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 122, 117, 123, 133, 32.11993 + 139, 144, 149, 152, 155, 152, 153, 153, 146, 146, 161, 161, 157, 153, 155, 160, 32.11994 + 161, 156, 151, 157, 161, 160, 156, 151, 153, 163, 171, 170, 178, 185, 183, 180, 32.11995 + 180, 179, 177, 169, 167, 169, 174, 176, 175, 177, 179, 182, 184, 185, 184, 185, 32.11996 + 186, 184, 177, 179, 178, 178, 180, 181, 181, 178, 176, 176, 176, 175, 175, 174, 32.11997 + 173, 172, 172, 171, 171, 169, 166, 163, 164, 165, 166, 159, 159, 159, 156, 156, 32.11998 + 155, 155, 155, 156, 154, 151, 151, 151, 153, 155, 155, 152, 147, 145, 143, 145, 32.11999 + 146, 144, 141, 147, 145, 144, 144, 141, 139, 145, 153, 162, 166, 169, 167, 163, 32.12000 + 162, 167, 172, 175, 174, 171, 163, 191, 255, 255, 255, 255, 255, 255, 255, 255, 32.12001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 120, 109, 125, 135, 138, 32.12003 + 151, 152, 151, 148, 144, 143, 147, 155, 163, 155, 156, 158, 161, 163, 164, 164, 32.12004 + 163, 154, 146, 143, 150, 161, 168, 174, 178, 176, 178, 180, 181, 182, 181, 180, 32.12005 + 179, 173, 170, 168, 170, 174, 179, 179, 179, 180, 181, 184, 187, 189, 187, 188, 32.12006 + 185, 179, 179, 178, 177, 177, 178, 178, 179, 180, 175, 172, 172, 176, 176, 173, 32.12007 + 168, 170, 169, 169, 169, 168, 167, 164, 161, 163, 161, 158, 155, 155, 155, 155, 32.12008 + 156, 156, 153, 150, 151, 155, 157, 153, 149, 147, 143, 145, 150, 151, 147, 144, 32.12009 + 144, 147, 145, 142, 137, 134, 135, 140, 144, 154, 157, 156, 152, 152, 157, 161, 32.12010 + 162, 160, 157, 155, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12012 + 255, 255, 255, 255, 255, 255, 255, 255, 129, 116, 106, 124, 135, 137, 140, 142, 32.12013 + 143, 147, 150, 149, 148, 151, 154, 155, 160, 165, 166, 165, 164, 164, 166, 167, 32.12014 + 164, 166, 174, 180, 179, 178, 178, 179, 178, 177, 176, 178, 178, 178, 178, 179, 32.12015 + 174, 169, 169, 171, 177, 178, 180, 178, 180, 182, 185, 184, 184, 184, 183, 181, 32.12016 + 180, 179, 178, 177, 177, 178, 178, 180, 176, 173, 173, 176, 177, 174, 170, 170, 32.12017 + 170, 172, 172, 173, 170, 166, 163, 164, 161, 159, 158, 157, 158, 157, 158, 159, 32.12018 + 155, 151, 151, 155, 157, 155, 152, 148, 144, 144, 148, 149, 145, 143, 143, 145, 32.12019 + 143, 140, 136, 135, 136, 138, 140, 118, 129, 137, 139, 138, 138, 136, 132, 135, 32.12020 + 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12022 + 255, 255, 255, 255, 255, 255, 212, 116, 109, 124, 136, 135, 131, 124, 128, 134, 32.12023 + 139, 140, 139, 141, 140, 152, 159, 167, 168, 165, 161, 164, 169, 172, 171, 175, 32.12024 + 181, 183, 179, 177, 178, 181, 180, 177, 174, 175, 175, 176, 177, 181, 176, 169, 32.12025 + 167, 169, 174, 177, 180, 178, 180, 181, 183, 184, 184, 181, 180, 182, 181, 179, 32.12026 + 178, 177, 176, 176, 176, 179, 176, 173, 174, 176, 177, 174, 171, 169, 171, 175, 32.12027 + 176, 176, 171, 164, 158, 157, 158, 158, 159, 159, 160, 158, 157, 161, 156, 152, 32.12028 + 152, 155, 156, 155, 153, 151, 146, 144, 147, 147, 144, 142, 143, 143, 140, 137, 32.12029 + 135, 134, 134, 133, 132, 123, 137, 150, 153, 151, 149, 146, 142, 255, 255, 255, 32.12030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12032 + 255, 255, 255, 255, 255, 118, 113, 121, 131, 134, 127, 116, 113, 115, 117, 122, 32.12033 + 129, 138, 143, 148, 153, 160, 161, 161, 162, 164, 167, 167, 165, 167, 170, 171, 32.12034 + 170, 175, 181, 178, 177, 175, 174, 175, 175, 175, 176, 177, 173, 169, 167, 168, 32.12035 + 170, 175, 177, 179, 180, 181, 182, 182, 182, 180, 179, 181, 180, 178, 176, 174, 32.12036 + 173, 173, 172, 176, 174, 172, 173, 174, 174, 173, 170, 169, 170, 173, 176, 174, 32.12037 + 166, 157, 150, 151, 153, 155, 158, 158, 157, 155, 154, 158, 156, 154, 154, 156, 32.12038 + 156, 153, 151, 154, 148, 145, 146, 146, 143, 141, 142, 141, 138, 133, 131, 130, 32.12039 + 128, 125, 122, 135, 145, 152, 151, 147, 148, 186, 255, 255, 255, 255, 255, 255, 32.12040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12042 + 255, 255, 255, 122, 116, 112, 121, 130, 124, 114, 109, 110, 113, 122, 133, 147, 32.12043 + 153, 147, 147, 149, 154, 162, 165, 165, 163, 162, 162, 164, 168, 169, 168, 173, 32.12044 + 179, 172, 173, 174, 175, 177, 176, 175, 174, 168, 168, 168, 167, 168, 170, 173, 32.12045 + 174, 180, 181, 180, 181, 182, 182, 180, 180, 180, 178, 176, 174, 172, 171, 170, 32.12046 + 170, 172, 171, 170, 170, 171, 171, 170, 169, 169, 169, 170, 171, 168, 160, 150, 32.12047 + 143, 146, 148, 151, 155, 156, 154, 152, 152, 153, 154, 155, 156, 156, 154, 150, 32.12048 + 147, 151, 145, 142, 143, 143, 139, 138, 139, 139, 135, 130, 126, 123, 121, 119, 32.12049 + 118, 138, 145, 147, 143, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12052 + 255, 211, 112, 103, 113, 125, 118, 108, 105, 108, 117, 128, 141, 149, 154, 154, 32.12053 + 150, 147, 151, 161, 167, 165, 164, 160, 162, 165, 171, 173, 168, 167, 167, 169, 32.12054 + 170, 173, 174, 177, 176, 174, 173, 165, 165, 168, 169, 169, 170, 171, 173, 179, 32.12055 + 179, 179, 180, 181, 182, 181, 181, 179, 177, 175, 173, 171, 170, 170, 169, 169, 32.12056 + 169, 169, 169, 169, 169, 169, 169, 169, 168, 167, 164, 162, 156, 149, 143, 146, 32.12057 + 147, 151, 153, 154, 154, 153, 152, 153, 154, 156, 157, 155, 152, 149, 147, 145, 32.12058 + 140, 138, 140, 140, 136, 133, 134, 136, 133, 128, 121, 116, 116, 120, 123, 141, 32.12059 + 147, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12062 + 106, 95, 111, 129, 121, 106, 103, 108, 118, 129, 142, 148, 150, 158, 154, 151, 32.12063 + 152, 157, 160, 163, 164, 163, 161, 161, 167, 170, 167, 164, 164, 171, 172, 172, 32.12064 + 172, 174, 173, 173, 172, 168, 168, 169, 169, 167, 168, 172, 175, 175, 176, 176, 32.12065 + 177, 179, 181, 182, 183, 179, 178, 176, 174, 173, 172, 172, 172, 168, 169, 170, 32.12066 + 169, 169, 169, 169, 170, 170, 167, 164, 161, 160, 156, 153, 149, 150, 152, 154, 32.12067 + 156, 156, 157, 156, 154, 156, 156, 155, 154, 152, 150, 150, 150, 142, 138, 137, 32.12068 + 140, 140, 136, 132, 132, 131, 130, 126, 119, 113, 116, 126, 136, 138, 179, 255, 32.12069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 93, 32.12072 + 115, 137, 125, 114, 109, 109, 116, 128, 142, 151, 154, 160, 158, 155, 152, 152, 32.12073 + 153, 158, 164, 172, 164, 158, 160, 166, 169, 171, 173, 176, 174, 172, 169, 170, 32.12074 + 170, 171, 170, 173, 172, 172, 169, 166, 167, 172, 177, 173, 173, 174, 175, 177, 32.12075 + 179, 181, 182, 180, 179, 177, 176, 175, 174, 174, 174, 169, 170, 171, 170, 169, 32.12076 + 169, 170, 170, 170, 164, 162, 160, 161, 159, 159, 157, 155, 156, 157, 157, 159, 32.12077 + 159, 158, 158, 161, 159, 155, 151, 149, 149, 152, 155, 143, 140, 140, 144, 144, 32.12078 + 139, 135, 135, 128, 129, 126, 117, 112, 117, 133, 147, 255, 255, 255, 255, 255, 32.12079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 90, 117, 132, 32.12082 + 126, 115, 99, 110, 126, 125, 139, 158, 159, 163, 158, 154, 155, 160, 164, 162, 32.12083 + 162, 166, 169, 170, 171, 169, 166, 163, 160, 170, 169, 168, 168, 171, 173, 175, 32.12084 + 174, 174, 171, 173, 172, 172, 172, 172, 173, 179, 179, 179, 179, 179, 179, 179, 32.12085 + 179, 176, 176, 176, 175, 174, 173, 171, 170, 169, 168, 167, 169, 171, 173, 173, 32.12086 + 170, 167, 166, 167, 164, 160, 158, 157, 157, 159, 159, 159, 158, 158, 158, 157, 32.12087 + 157, 153, 154, 155, 156, 155, 154, 152, 151, 147, 145, 142, 141, 139, 137, 133, 32.12088 + 130, 130, 128, 121, 115, 121, 135, 143, 255, 255, 255, 255, 255, 255, 255, 255, 32.12089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 115, 128, 121, 122, 32.12092 + 109, 109, 119, 129, 143, 161, 167, 163, 158, 155, 154, 159, 163, 163, 162, 160, 32.12093 + 164, 166, 166, 165, 163, 161, 159, 170, 170, 169, 169, 171, 172, 174, 172, 170, 32.12094 + 168, 168, 167, 167, 170, 171, 171, 177, 178, 179, 180, 181, 181, 180, 180, 177, 32.12095 + 177, 177, 176, 175, 174, 172, 171, 167, 166, 165, 167, 169, 170, 170, 168, 167, 32.12096 + 167, 168, 165, 161, 158, 159, 160, 161, 160, 159, 159, 159, 157, 158, 158, 158, 32.12097 + 158, 159, 159, 158, 156, 154, 153, 147, 145, 142, 140, 139, 136, 132, 129, 127, 32.12098 + 124, 117, 114, 122, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 118, 130, 126, 128, 122, 110, 32.12102 + 115, 137, 149, 156, 166, 167, 162, 159, 159, 164, 167, 169, 170, 165, 167, 168, 32.12103 + 169, 169, 167, 166, 164, 171, 170, 169, 168, 170, 170, 170, 169, 169, 167, 167, 32.12104 + 167, 168, 170, 171, 172, 173, 175, 178, 180, 183, 182, 181, 179, 178, 178, 178, 32.12105 + 177, 176, 174, 172, 171, 167, 166, 165, 166, 169, 170, 169, 167, 169, 168, 167, 32.12106 + 165, 161, 159, 162, 163, 162, 162, 160, 161, 160, 158, 158, 157, 157, 158, 158, 32.12107 + 158, 156, 154, 151, 149, 145, 143, 140, 138, 136, 133, 129, 125, 125, 120, 115, 32.12108 + 116, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12111 + 255, 255, 255, 255, 255, 255, 255, 84, 108, 128, 136, 131, 131, 115, 117, 144, 32.12112 + 153, 149, 160, 164, 160, 159, 159, 165, 170, 175, 177, 172, 173, 174, 174, 173, 32.12113 + 172, 170, 169, 170, 169, 168, 167, 168, 167, 166, 164, 165, 164, 164, 164, 165, 32.12114 + 167, 169, 170, 168, 171, 175, 178, 181, 181, 179, 177, 178, 176, 176, 176, 174, 32.12115 + 173, 171, 170, 169, 168, 167, 168, 170, 171, 171, 169, 169, 167, 166, 162, 160, 32.12116 + 160, 163, 165, 163, 163, 161, 160, 157, 157, 156, 156, 155, 155, 155, 154, 152, 32.12117 + 149, 146, 144, 145, 142, 139, 136, 134, 131, 126, 123, 123, 117, 114, 120, 174, 32.12118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12121 + 255, 255, 255, 255, 255, 68, 89, 119, 142, 134, 137, 119, 114, 137, 147, 149, 32.12122 + 161, 156, 154, 156, 157, 163, 169, 175, 177, 175, 175, 175, 175, 173, 171, 170, 32.12123 + 169, 169, 168, 167, 166, 166, 165, 163, 160, 155, 152, 152, 153, 156, 157, 159, 32.12124 + 160, 162, 164, 171, 174, 177, 177, 176, 174, 176, 174, 174, 173, 172, 170, 169, 32.12125 + 168, 169, 168, 167, 168, 170, 171, 170, 167, 168, 166, 165, 161, 159, 160, 164, 32.12126 + 166, 163, 163, 160, 159, 156, 156, 154, 154, 153, 153, 153, 151, 149, 146, 143, 32.12127 + 141, 143, 141, 137, 134, 131, 127, 123, 119, 117, 113, 113, 166, 255, 255, 255, 32.12128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12131 + 255, 255, 255, 255, 80, 114, 145, 142, 142, 124, 113, 121, 136, 150, 163, 156, 32.12132 + 156, 158, 161, 166, 170, 175, 178, 177, 177, 177, 176, 176, 174, 174, 173, 169, 32.12133 + 169, 168, 167, 167, 165, 163, 159, 154, 151, 151, 151, 154, 155, 156, 157, 160, 32.12134 + 162, 168, 171, 173, 174, 173, 172, 175, 173, 173, 172, 171, 169, 168, 167, 167, 32.12135 + 166, 165, 165, 167, 168, 167, 164, 166, 165, 165, 162, 161, 160, 162, 166, 164, 32.12136 + 162, 160, 159, 156, 155, 153, 153, 153, 153, 153, 152, 150, 147, 144, 142, 141, 32.12137 + 139, 135, 131, 128, 124, 119, 115, 111, 110, 161, 255, 255, 255, 255, 255, 255, 32.12138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12141 + 255, 255, 81, 111, 143, 150, 148, 140, 124, 111, 122, 141, 148, 155, 157, 160, 32.12142 + 162, 164, 168, 171, 171, 174, 174, 174, 175, 176, 176, 177, 178, 170, 171, 171, 32.12143 + 170, 170, 168, 166, 162, 158, 155, 154, 154, 155, 156, 159, 159, 162, 163, 167, 32.12144 + 169, 171, 172, 172, 171, 175, 173, 173, 172, 171, 170, 168, 167, 167, 166, 165, 32.12145 + 165, 167, 167, 166, 164, 164, 165, 166, 165, 164, 163, 164, 165, 164, 164, 162, 32.12146 + 160, 157, 156, 154, 152, 151, 152, 152, 151, 149, 146, 144, 142, 138, 136, 131, 32.12147 + 128, 124, 120, 114, 111, 110, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12151 + 76, 100, 129, 152, 154, 157, 141, 113, 114, 130, 127, 150, 153, 155, 157, 156, 32.12152 + 156, 158, 157, 164, 165, 166, 168, 170, 172, 173, 174, 170, 170, 172, 172, 170, 32.12153 + 168, 167, 163, 158, 156, 155, 154, 154, 156, 157, 158, 164, 164, 167, 168, 170, 32.12154 + 171, 172, 173, 176, 174, 174, 173, 172, 171, 169, 168, 170, 168, 167, 166, 169, 32.12155 + 168, 167, 166, 164, 166, 168, 167, 167, 165, 165, 165, 166, 164, 163, 162, 158, 32.12156 + 157, 155, 154, 149, 150, 150, 149, 148, 145, 143, 141, 137, 134, 130, 126, 123, 32.12157 + 118, 112, 108, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 78, 32.12161 + 110, 151, 162, 157, 142, 123, 114, 121, 131, 131, 136, 141, 143, 143, 142, 143, 32.12162 + 143, 145, 154, 154, 155, 163, 158, 151, 155, 160, 157, 159, 160, 163, 162, 160, 32.12163 + 156, 164, 156, 154, 159, 156, 149, 152, 164, 160, 161, 164, 167, 170, 172, 174, 32.12164 + 173, 176, 174, 175, 175, 174, 173, 170, 168, 164, 164, 164, 162, 165, 164, 165, 32.12165 + 165, 169, 166, 163, 160, 159, 160, 162, 164, 167, 163, 160, 158, 158, 158, 156, 32.12166 + 155, 157, 154, 150, 147, 145, 144, 143, 141, 141, 139, 131, 123, 122, 125, 121, 32.12167 + 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 68, 98, 142, 32.12171 + 151, 148, 134, 119, 111, 114, 122, 151, 149, 145, 139, 135, 136, 140, 145, 142, 32.12172 + 147, 141, 136, 138, 133, 127, 130, 143, 145, 147, 145, 140, 137, 137, 139, 153, 32.12173 + 146, 146, 152, 152, 148, 155, 166, 159, 162, 165, 164, 162, 165, 172, 179, 176, 32.12174 + 175, 175, 176, 175, 173, 170, 169, 165, 165, 163, 163, 163, 164, 164, 165, 169, 32.12175 + 167, 165, 163, 162, 163, 164, 164, 165, 162, 159, 157, 157, 156, 155, 153, 155, 32.12176 + 152, 148, 146, 144, 143, 142, 140, 137, 136, 130, 121, 118, 119, 115, 158, 255, 32.12177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 85, 139, 147, 146, 32.12181 + 133, 122, 113, 113, 117, 136, 140, 145, 146, 147, 145, 145, 143, 143, 144, 134, 32.12182 + 128, 133, 134, 135, 143, 120, 128, 135, 132, 123, 122, 128, 136, 110, 104, 105, 32.12183 + 111, 113, 113, 120, 131, 153, 159, 164, 162, 157, 158, 167, 175, 173, 174, 175, 32.12184 + 175, 174, 172, 169, 168, 166, 166, 163, 163, 163, 164, 164, 165, 168, 168, 167, 32.12185 + 166, 166, 165, 165, 165, 164, 161, 158, 156, 155, 154, 152, 150, 153, 150, 147, 32.12186 + 146, 145, 145, 143, 141, 134, 134, 130, 121, 114, 160, 255, 255, 255, 255, 255, 32.12187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 71, 130, 143, 146, 138, 123, 32.12191 + 112, 114, 121, 118, 124, 133, 140, 143, 142, 140, 135, 133, 141, 146, 149, 157, 32.12192 + 152, 142, 143, 157, 160, 160, 148, 132, 122, 122, 125, 128, 121, 122, 125, 129, 32.12193 + 130, 137, 147, 148, 154, 161, 162, 158, 155, 159, 163, 171, 172, 173, 173, 172, 32.12194 + 170, 168, 166, 165, 164, 162, 161, 162, 162, 162, 162, 166, 167, 167, 168, 167, 32.12195 + 166, 164, 163, 162, 160, 156, 154, 153, 152, 150, 148, 153, 151, 148, 147, 147, 32.12196 + 146, 144, 142, 131, 132, 130, 121, 112, 255, 255, 255, 255, 255, 255, 255, 255, 32.12197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12200 + 255, 255, 255, 255, 255, 255, 255, 57, 65, 106, 128, 142, 136, 116, 102, 108, 32.12201 + 120, 130, 127, 121, 117, 116, 120, 125, 124, 112, 127, 143, 153, 157, 141, 114, 32.12202 + 105, 102, 107, 113, 118, 124, 132, 140, 141, 135, 129, 130, 133, 137, 140, 148, 32.12203 + 156, 156, 155, 153, 152, 152, 153, 156, 159, 169, 170, 171, 171, 170, 168, 165, 32.12204 + 164, 163, 162, 160, 159, 159, 159, 159, 159, 163, 164, 166, 166, 166, 165, 163, 32.12205 + 161, 161, 158, 155, 153, 152, 151, 149, 147, 151, 149, 147, 146, 145, 144, 141, 32.12206 + 139, 127, 127, 125, 118, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12210 + 255, 255, 255, 255, 255, 58, 63, 85, 115, 135, 134, 114, 101, 109, 125, 132, 32.12211 + 130, 127, 125, 125, 125, 123, 120, 113, 117, 116, 116, 121, 114, 102, 105, 135, 32.12212 + 135, 133, 137, 141, 146, 146, 142, 147, 144, 148, 150, 154, 160, 166, 171, 170, 32.12213 + 161, 151, 144, 145, 149, 157, 163, 168, 169, 170, 170, 169, 168, 165, 163, 162, 32.12214 + 161, 158, 157, 157, 157, 157, 157, 161, 162, 163, 164, 164, 163, 162, 161, 159, 32.12215 + 156, 153, 152, 152, 152, 150, 148, 148, 146, 144, 143, 142, 140, 136, 133, 123, 32.12216 + 120, 117, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12220 + 255, 255, 255, 58, 62, 74, 104, 129, 132, 118, 107, 114, 129, 126, 133, 141, 32.12221 + 147, 150, 146, 135, 125, 128, 125, 112, 106, 114, 118, 124, 136, 137, 136, 139, 32.12222 + 145, 154, 159, 162, 158, 151, 152, 156, 158, 161, 164, 167, 170, 174, 168, 161, 32.12223 + 152, 146, 149, 157, 166, 169, 171, 171, 172, 171, 169, 166, 165, 162, 161, 158, 32.12224 + 158, 157, 157, 156, 157, 162, 162, 163, 163, 163, 163, 162, 162, 157, 155, 152, 32.12225 + 152, 152, 153, 151, 150, 150, 147, 145, 143, 141, 138, 134, 130, 124, 117, 112, 32.12226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12230 + 255, 190, 62, 65, 93, 118, 126, 116, 109, 114, 126, 137, 140, 143, 146, 148, 32.12231 + 146, 141, 135, 134, 141, 140, 140, 147, 144, 139, 142, 159, 160, 162, 163, 165, 32.12232 + 164, 163, 162, 168, 171, 173, 173, 173, 174, 176, 174, 168, 171, 172, 165, 156, 32.12233 + 151, 155, 162, 171, 172, 173, 173, 172, 171, 168, 166, 163, 162, 159, 158, 158, 32.12234 + 158, 157, 157, 163, 163, 163, 163, 163, 163, 163, 163, 156, 154, 152, 152, 153, 32.12235 + 153, 153, 151, 153, 151, 149, 147, 145, 141, 136, 132, 128, 119, 255, 255, 255, 32.12236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12240 + 64, 75, 78, 94, 115, 126, 120, 116, 122, 136, 141, 148, 154, 156, 156, 152, 32.12241 + 149, 150, 147, 146, 146, 147, 149, 155, 161, 166, 158, 154, 153, 158, 165, 169, 32.12242 + 172, 165, 170, 171, 173, 173, 172, 174, 175, 172, 173, 175, 170, 160, 149, 151, 32.12243 + 160, 165, 169, 172, 172, 171, 169, 167, 167, 162, 164, 163, 161, 158, 156, 156, 32.12244 + 158, 164, 163, 161, 159, 158, 158, 159, 160, 159, 152, 146, 146, 149, 152, 154, 32.12245 + 155, 148, 150, 148, 140, 136, 136, 135, 129, 122, 255, 255, 255, 255, 255, 255, 32.12246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 65, 66, 32.12250 + 68, 80, 102, 115, 114, 115, 119, 134, 140, 145, 150, 153, 152, 149, 150, 159, 32.12251 + 159, 159, 159, 157, 155, 157, 160, 163, 160, 159, 158, 159, 159, 162, 167, 168, 32.12252 + 170, 171, 170, 171, 171, 175, 178, 173, 173, 176, 174, 164, 154, 154, 161, 166, 32.12253 + 170, 173, 173, 171, 169, 166, 166, 157, 159, 159, 159, 157, 157, 158, 160, 160, 32.12254 + 160, 160, 160, 160, 161, 161, 162, 152, 150, 151, 155, 158, 157, 153, 150, 150, 32.12255 + 149, 146, 139, 135, 134, 132, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 60, 58, 67, 32.12260 + 88, 105, 110, 115, 121, 130, 135, 140, 143, 145, 145, 144, 146, 157, 157, 159, 32.12261 + 161, 159, 155, 154, 155, 158, 161, 165, 163, 160, 156, 158, 164, 169, 171, 171, 32.12262 + 168, 168, 172, 176, 180, 176, 173, 175, 175, 170, 161, 158, 161, 167, 171, 173, 32.12263 + 173, 170, 167, 164, 164, 156, 158, 158, 158, 157, 158, 158, 160, 160, 160, 161, 32.12264 + 162, 161, 160, 158, 157, 153, 154, 156, 158, 159, 157, 151, 145, 148, 146, 142, 32.12265 + 137, 136, 134, 130, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 59, 53, 60, 77, 95, 32.12270 + 106, 114, 122, 125, 130, 135, 139, 138, 138, 139, 143, 148, 150, 152, 156, 154, 32.12271 + 152, 152, 156, 156, 160, 162, 163, 160, 159, 160, 163, 169, 171, 172, 171, 171, 32.12272 + 172, 176, 179, 179, 176, 173, 175, 173, 165, 160, 159, 168, 170, 172, 171, 168, 32.12273 + 164, 161, 160, 159, 159, 157, 157, 156, 156, 155, 156, 161, 162, 163, 162, 160, 32.12274 + 156, 151, 149, 159, 160, 158, 153, 151, 151, 149, 145, 144, 141, 138, 137, 137, 32.12275 + 132, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12279 + 255, 255, 255, 255, 255, 255, 255, 255, 57, 56, 50, 54, 66, 84, 97, 109, 32.12280 + 117, 123, 130, 136, 139, 137, 137, 139, 142, 147, 147, 148, 150, 151, 150, 153, 32.12281 + 158, 159, 157, 158, 159, 164, 167, 169, 167, 168, 171, 174, 175, 175, 174, 174, 32.12282 + 175, 181, 176, 174, 175, 173, 164, 158, 156, 165, 167, 169, 168, 164, 160, 157, 32.12283 + 156, 155, 154, 152, 153, 153, 154, 153, 152, 159, 160, 161, 161, 158, 153, 148, 32.12284 + 145, 153, 157, 156, 151, 148, 150, 149, 143, 140, 135, 132, 131, 129, 121, 255, 32.12285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12289 + 255, 255, 255, 255, 255, 255, 255, 49, 47, 51, 60, 73, 87, 100, 111, 123, 32.12290 + 131, 140, 142, 142, 141, 143, 146, 147, 145, 145, 147, 145, 143, 148, 154, 161, 32.12291 + 158, 157, 161, 169, 174, 175, 171, 169, 172, 176, 178, 177, 175, 174, 174, 180, 32.12292 + 175, 172, 173, 170, 164, 160, 160, 162, 164, 166, 165, 162, 158, 155, 154, 148, 32.12293 + 147, 146, 148, 152, 155, 154, 154, 155, 156, 158, 159, 158, 155, 152, 149, 138, 32.12294 + 148, 155, 153, 151, 153, 149, 140, 137, 130, 126, 122, 116, 156, 255, 255, 255, 32.12295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12299 + 255, 255, 255, 255, 255, 44, 45, 51, 58, 67, 81, 96, 108, 121, 131, 141, 32.12300 + 145, 144, 143, 143, 146, 142, 139, 141, 145, 144, 142, 146, 151, 161, 162, 164, 32.12301 + 169, 175, 178, 180, 178, 173, 172, 175, 176, 175, 173, 175, 176, 177, 173, 172, 32.12302 + 172, 169, 164, 164, 168, 162, 163, 165, 164, 161, 158, 155, 154, 151, 150, 148, 32.12303 + 151, 156, 159, 158, 157, 156, 157, 158, 159, 158, 156, 154, 152, 137, 149, 155, 32.12304 + 151, 148, 151, 148, 139, 133, 124, 119, 114, 157, 255, 255, 255, 255, 255, 255, 32.12305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12309 + 255, 255, 255, 42, 47, 55, 59, 67, 80, 95, 108, 117, 128, 140, 146, 144, 32.12310 + 142, 141, 144, 140, 141, 147, 152, 154, 153, 155, 159, 158, 165, 172, 175, 176, 32.12311 + 176, 179, 180, 177, 174, 177, 174, 175, 175, 176, 178, 175, 173, 171, 171, 168, 32.12312 + 166, 169, 174, 162, 163, 165, 165, 162, 159, 156, 156, 160, 158, 155, 157, 161, 32.12313 + 164, 161, 159, 161, 162, 161, 161, 159, 156, 153, 152, 149, 157, 156, 144, 140, 32.12314 + 144, 147, 140, 130, 122, 115, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12319 + 255, 49, 48, 53, 61, 68, 75, 92, 110, 119, 129, 139, 147, 150, 147, 141, 32.12320 + 137, 139, 144, 149, 154, 159, 159, 159, 159, 161, 165, 169, 172, 175, 176, 180, 32.12321 + 180, 173, 174, 178, 178, 178, 176, 175, 175, 176, 176, 176, 175, 174, 175, 174, 32.12322 + 172, 170, 167, 165, 164, 162, 160, 156, 153, 155, 154, 153, 156, 160, 162, 160, 32.12323 + 157, 161, 160, 158, 159, 161, 161, 159, 157, 150, 157, 158, 151, 148, 145, 140, 32.12324 + 131, 133, 121, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12329 + 48, 51, 56, 62, 71, 89, 109, 115, 125, 136, 145, 148, 145, 139, 138, 139, 32.12330 + 144, 149, 151, 155, 157, 157, 156, 161, 164, 169, 170, 173, 173, 178, 178, 175, 32.12331 + 176, 179, 180, 178, 176, 175, 175, 177, 177, 176, 175, 176, 175, 175, 172, 173, 32.12332 + 169, 166, 164, 161, 159, 157, 154, 158, 157, 156, 158, 162, 162, 160, 157, 161, 32.12333 + 160, 157, 157, 158, 157, 154, 152, 155, 154, 147, 141, 141, 143, 139, 131, 116, 32.12334 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 49, 32.12339 + 52, 58, 67, 86, 106, 115, 126, 136, 145, 146, 144, 138, 138, 141, 144, 147, 32.12340 + 148, 152, 154, 155, 156, 161, 163, 168, 170, 172, 172, 177, 177, 176, 177, 179, 32.12341 + 179, 177, 175, 174, 174, 177, 176, 176, 175, 174, 174, 173, 173, 174, 170, 163, 32.12342 + 160, 159, 159, 157, 156, 161, 161, 159, 161, 163, 164, 162, 159, 164, 163, 161, 32.12343 + 160, 160, 158, 154, 152, 154, 150, 142, 138, 137, 138, 130, 121, 104, 255, 255, 32.12344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 47, 52, 56, 32.12349 + 63, 82, 101, 120, 130, 140, 147, 146, 143, 139, 141, 146, 148, 147, 149, 152, 32.12350 + 154, 158, 158, 159, 162, 167, 169, 170, 171, 175, 176, 176, 177, 178, 177, 175, 32.12351 + 172, 172, 172, 175, 175, 174, 174, 173, 173, 172, 171, 171, 167, 159, 157, 157, 32.12352 + 158, 159, 159, 161, 162, 162, 164, 165, 166, 165, 164, 164, 163, 161, 160, 160, 32.12353 + 158, 154, 151, 147, 145, 144, 142, 136, 129, 117, 157, 255, 255, 255, 255, 255, 32.12354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 54, 58, 63, 79, 32.12359 + 94, 116, 127, 138, 144, 145, 144, 143, 146, 148, 151, 149, 150, 151, 154, 158, 32.12360 + 160, 160, 163, 167, 168, 169, 170, 173, 175, 175, 175, 176, 175, 172, 170, 170, 32.12361 + 171, 172, 172, 172, 171, 171, 171, 171, 170, 167, 161, 156, 154, 156, 159, 161, 32.12362 + 162, 157, 159, 162, 165, 165, 165, 166, 166, 157, 155, 154, 154, 153, 152, 149, 32.12363 + 146, 141, 142, 141, 134, 124, 113, 107, 255, 255, 255, 255, 255, 255, 255, 255, 32.12364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 55, 58, 63, 76, 92, 106, 32.12369 + 119, 132, 140, 143, 144, 146, 152, 149, 150, 150, 151, 151, 154, 156, 157, 159, 32.12370 + 162, 166, 167, 168, 169, 172, 172, 173, 174, 175, 174, 172, 170, 171, 172, 172, 32.12371 + 171, 171, 171, 171, 171, 171, 170, 163, 160, 155, 154, 156, 159, 161, 163, 156, 32.12372 + 159, 163, 165, 164, 164, 165, 166, 157, 155, 154, 153, 152, 151, 148, 146, 140, 32.12373 + 136, 129, 120, 108, 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12378 + 255, 255, 255, 255, 255, 255, 255, 51, 55, 58, 63, 77, 92, 106, 119, 131, 32.12379 + 138, 139, 142, 145, 152, 152, 153, 153, 153, 155, 156, 158, 159, 159, 162, 165, 32.12380 + 166, 166, 167, 169, 171, 174, 175, 176, 175, 173, 173, 174, 176, 172, 172, 172, 32.12381 + 172, 172, 172, 172, 170, 166, 163, 158, 157, 158, 160, 161, 159, 158, 161, 163, 32.12382 + 163, 161, 160, 160, 162, 161, 159, 157, 155, 155, 152, 148, 145, 137, 129, 119, 32.12383 + 114, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12388 + 255, 255, 255, 255, 255, 255, 54, 57, 62, 78, 95, 114, 127, 137, 141, 140, 32.12389 + 140, 145, 150, 155, 157, 157, 158, 159, 160, 161, 161, 159, 161, 164, 166, 166, 32.12390 + 166, 169, 170, 175, 176, 177, 176, 175, 175, 177, 178, 174, 174, 174, 174, 174, 32.12391 + 172, 173, 173, 170, 167, 162, 160, 160, 161, 158, 158, 160, 163, 164, 163, 160, 32.12392 + 157, 156, 157, 161, 159, 156, 154, 152, 147, 143, 140, 133, 122, 116, 118, 166, 32.12393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12398 + 255, 255, 255, 255, 53, 57, 66, 75, 85, 112, 121, 130, 134, 136, 138, 143, 32.12399 + 148, 156, 159, 162, 161, 159, 158, 162, 165, 163, 163, 162, 162, 162, 164, 165, 32.12400 + 165, 171, 174, 176, 178, 181, 181, 175, 168, 170, 171, 172, 169, 170, 172, 173, 32.12401 + 170, 168, 165, 162, 160, 158, 159, 162, 164, 161, 159, 158, 160, 162, 162, 159, 32.12402 + 155, 161, 156, 152, 151, 150, 147, 137, 127, 116, 113, 111, 161, 255, 255, 255, 32.12403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12408 + 255, 255, 255, 59, 64, 73, 83, 108, 119, 129, 134, 136, 140, 144, 149, 155, 32.12409 + 159, 161, 161, 160, 159, 162, 164, 161, 162, 163, 163, 165, 167, 169, 170, 176, 32.12410 + 169, 165, 170, 176, 178, 173, 169, 171, 174, 174, 170, 170, 173, 173, 170, 167, 32.12411 + 165, 163, 161, 159, 160, 162, 163, 159, 159, 160, 161, 162, 162, 160, 158, 155, 32.12412 + 153, 150, 146, 140, 133, 125, 120, 117, 117, 164, 255, 255, 255, 255, 255, 255, 32.12413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12418 + 255, 190, 64, 70, 78, 105, 116, 126, 134, 138, 143, 148, 151, 155, 157, 161, 32.12419 + 162, 162, 160, 162, 163, 162, 161, 163, 166, 168, 171, 172, 175, 172, 157, 150, 32.12420 + 160, 173, 177, 177, 179, 173, 176, 175, 172, 171, 171, 170, 166, 163, 162, 161, 32.12421 + 160, 160, 160, 159, 160, 154, 157, 158, 159, 159, 158, 156, 156, 152, 151, 146, 32.12422 + 138, 128, 121, 117, 117, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12428 + 62, 67, 73, 102, 112, 124, 131, 139, 146, 150, 153, 156, 159, 162, 162, 162, 32.12429 + 159, 160, 159, 162, 163, 164, 167, 169, 171, 173, 174, 173, 158, 152, 162, 171, 32.12430 + 173, 175, 182, 174, 176, 176, 170, 168, 168, 166, 162, 159, 159, 159, 158, 158, 32.12431 + 157, 156, 156, 149, 153, 156, 156, 153, 151, 150, 152, 152, 146, 137, 127, 120, 32.12432 + 116, 117, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 62, 32.12438 + 68, 95, 105, 117, 128, 138, 145, 149, 151, 159, 159, 160, 161, 161, 158, 158, 32.12439 + 157, 164, 165, 165, 168, 169, 170, 170, 170, 179, 174, 169, 172, 171, 167, 168, 32.12440 + 175, 172, 174, 174, 168, 166, 165, 162, 157, 155, 155, 155, 154, 153, 153, 152, 32.12441 + 152, 148, 151, 154, 153, 147, 144, 144, 146, 144, 133, 119, 112, 111, 116, 255, 32.12442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 68, 91, 32.12448 + 100, 112, 125, 136, 144, 147, 148, 160, 158, 158, 157, 159, 159, 160, 158, 166, 32.12449 + 167, 169, 169, 170, 169, 167, 169, 171, 176, 176, 176, 173, 173, 174, 174, 168, 32.12450 + 172, 170, 166, 163, 162, 158, 153, 152, 153, 151, 151, 149, 149, 150, 150, 151, 32.12451 + 152, 153, 150, 144, 140, 138, 137, 128, 117, 106, 103, 157, 255, 255, 255, 255, 32.12452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 92, 102, 114, 32.12458 + 127, 139, 148, 150, 150, 157, 155, 154, 154, 158, 161, 164, 163, 167, 168, 171, 32.12459 + 171, 172, 172, 169, 168, 166, 176, 176, 172, 173, 181, 180, 172, 166, 170, 169, 32.12460 + 165, 163, 162, 158, 152, 153, 152, 150, 148, 147, 148, 149, 150, 152, 150, 145, 32.12461 + 142, 139, 134, 128, 125, 114, 111, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.12462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 94, 103, 115, 129, 143, 32.12468 + 153, 156, 155, 155, 152, 148, 151, 157, 163, 165, 167, 166, 167, 170, 172, 174, 32.12469 + 172, 172, 171, 176, 184, 180, 167, 169, 178, 172, 156, 165, 170, 169, 165, 164, 32.12470 + 162, 158, 153, 153, 151, 149, 146, 145, 147, 147, 149, 147, 143, 137, 134, 131, 32.12471 + 126, 119, 113, 110, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 89, 108, 125, 139, 148, 158, 32.12478 + 163, 157, 152, 149, 149, 153, 158, 161, 163, 170, 170, 171, 172, 171, 172, 173, 32.12479 + 173, 176, 174, 171, 171, 174, 172, 170, 167, 168, 166, 163, 163, 163, 160, 157, 32.12480 + 153, 145, 138, 136, 135, 141, 145, 144, 141, 147, 141, 131, 122, 115, 112, 112, 32.12481 + 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12487 + 255, 255, 255, 255, 255, 255, 255, 255, 76, 94, 114, 130, 142, 152, 156, 154, 32.12488 + 151, 149, 148, 150, 154, 157, 159, 162, 163, 165, 166, 168, 169, 169, 171, 175, 32.12489 + 172, 169, 169, 171, 173, 170, 166, 169, 165, 163, 159, 157, 151, 144, 136, 135, 32.12490 + 141, 145, 140, 131, 130, 138, 148, 138, 131, 121, 112, 110, 114, 165, 255, 255, 32.12491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12497 + 255, 255, 255, 255, 255, 255, 195, 90, 110, 128, 141, 151, 153, 155, 151, 152, 32.12498 + 151, 151, 153, 156, 157, 159, 161, 167, 170, 172, 172, 171, 171, 170, 166, 163, 32.12499 + 165, 168, 168, 166, 162, 160, 158, 156, 155, 154, 149, 143, 137, 136, 135, 134, 32.12500 + 136, 137, 138, 136, 133, 121, 117, 113, 111, 114, 166, 255, 255, 255, 255, 255, 32.12501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12507 + 255, 255, 255, 255, 255, 255, 98, 118, 135, 144, 148, 147, 147, 147, 146, 146, 32.12508 + 147, 149, 153, 154, 158, 162, 168, 171, 171, 171, 169, 162, 159, 157, 158, 162, 32.12509 + 161, 159, 155, 152, 149, 147, 144, 144, 143, 141, 138, 139, 133, 129, 131, 135, 32.12510 + 131, 119, 107, 108, 111, 116, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12517 + 255, 255, 255, 255, 255, 97, 113, 124, 131, 133, 135, 138, 137, 137, 137, 139, 32.12518 + 143, 144, 149, 154, 158, 163, 163, 163, 161, 158, 153, 151, 153, 156, 156, 154, 32.12519 + 150, 152, 145, 139, 133, 131, 130, 129, 126, 131, 134, 134, 124, 109, 100, 100, 32.12520 + 104, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12527 + 255, 255, 255, 255, 255, 105, 114, 123, 130, 133, 134, 131, 132, 135, 140, 141, 32.12528 + 144, 150, 153, 156, 156, 158, 155, 155, 151, 148, 148, 151, 152, 147, 144, 146, 32.12529 + 141, 132, 128, 126, 126, 126, 126, 122, 118, 111, 104, 101, 105, 113, 255, 255, 32.12530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12537 + 255, 255, 255, 255, 203, 114, 122, 127, 129, 128, 127, 130, 135, 139, 141, 145, 32.12538 + 147, 150, 152, 153, 150, 150, 143, 140, 140, 142, 142, 137, 134, 133, 130, 126, 32.12539 + 124, 124, 122, 120, 119, 117, 108, 101, 106, 120, 131, 174, 255, 255, 255, 255, 32.12540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12547 + 255, 255, 255, 255, 107, 115, 116, 115, 113, 118, 124, 132, 133, 136, 138, 141, 32.12548 + 142, 143, 143, 140, 134, 131, 130, 133, 132, 128, 125, 125, 123, 119, 115, 113, 32.12549 + 104, 97, 92, 111, 121, 132, 136, 174, 255, 255, 255, 255, 255, 255, 255, 255, 32.12550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12557 + 255, 255, 255, 255, 255, 207, 114, 119, 121, 119, 121, 125, 132, 133, 131, 133, 32.12558 + 134, 126, 128, 129, 126, 124, 121, 118, 116, 117, 101, 109, 97, 102, 117, 105, 32.12559 + 117, 129, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 114, 116, 117, 119, 32.12568 + 119, 120, 117, 112, 110, 106, 103, 92, 96, 102, 105, 164, 255, 255, 255, 255, 32.12569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 78, 113, 136, 32.12580 + 142, 148, 145, 136, 134, 137, 144, 145, 137, 129, 127, 128, 128, 127, 127, 126, 32.12581 + 122, 118, 118, 121, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12589 + 255, 255, 255, 255, 255, 255, 255, 185, 50, 74, 99, 113, 142, 153, 147, 145, 32.12590 + 144, 137, 135, 127, 138, 147, 146, 142, 140, 137, 134, 139, 140, 139, 134, 127, 32.12591 + 122, 122, 124, 121, 129, 137, 145, 158, 165, 186, 255, 255, 255, 255, 255, 255, 32.12592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12599 + 255, 255, 255, 188, 84, 118, 127, 111, 91, 130, 151, 151, 134, 128, 123, 113, 32.12600 + 108, 83, 92, 101, 108, 116, 130, 142, 148, 139, 140, 138, 130, 120, 114, 114, 32.12601 + 116, 121, 131, 142, 153, 165, 167, 149, 125, 125, 217, 255, 255, 255, 255, 255, 32.12602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 58, 57, 32.12609 + 54, 66, 98, 129, 141, 131, 120, 133, 155, 154, 135, 126, 119, 105, 94, 116, 32.12610 + 112, 102, 94, 96, 113, 131, 141, 124, 125, 121, 112, 101, 95, 95, 98, 117, 32.12611 + 127, 139, 149, 158, 156, 132, 105, 86, 81, 78, 80, 255, 255, 255, 255, 255, 32.12612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 65, 70, 64, 65, 84, 32.12619 + 121, 149, 154, 149, 145, 134, 144, 145, 131, 113, 103, 102, 105, 94, 92, 92, 32.12620 + 93, 99, 108, 117, 124, 117, 109, 110, 118, 120, 111, 105, 107, 118, 125, 131, 32.12621 + 133, 132, 123, 101, 78, 68, 69, 70, 72, 73, 74, 73, 132, 255, 255, 255, 32.12622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12628 + 255, 255, 255, 255, 255, 255, 255, 68, 61, 57, 57, 69, 80, 101, 126, 142, 32.12629 + 143, 139, 136, 135, 125, 108, 90, 84, 87, 88, 85, 104, 105, 108, 110, 108, 32.12630 + 104, 100, 98, 120, 118, 118, 120, 118, 108, 99, 94, 92, 96, 94, 83, 76, 32.12631 + 77, 82, 83, 64, 63, 62, 61, 62, 63, 63, 64, 55, 97, 210, 255, 255, 32.12632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12638 + 255, 255, 255, 191, 68, 72, 73, 73, 74, 76, 97, 119, 128, 129, 127, 124, 32.12639 + 120, 108, 104, 98, 94, 96, 97, 91, 82, 83, 87, 91, 94, 93, 87, 79, 32.12640 + 75, 84, 88, 91, 91, 90, 88, 80, 71, 72, 76, 74, 65, 59, 63, 72, 32.12641 + 79, 66, 62, 58, 57, 59, 62, 63, 63, 58, 51, 44, 115, 255, 255, 255, 32.12642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 32.12648 + 70, 71, 72, 71, 71, 73, 76, 76, 100, 118, 118, 111, 108, 103, 96, 86, 32.12649 + 97, 108, 109, 104, 100, 93, 88, 76, 76, 78, 80, 81, 80, 78, 78, 66, 32.12650 + 76, 79, 76, 76, 81, 77, 67, 77, 76, 73, 71, 71, 73, 73, 71, 62, 32.12651 + 59, 56, 58, 62, 64, 64, 63, 59, 51, 44, 45, 93, 208, 255, 255, 255, 32.12652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 77, 67, 74, 80, 32.12658 + 78, 72, 72, 81, 88, 92, 108, 120, 118, 114, 112, 105, 95, 88, 90, 88, 32.12659 + 78, 70, 70, 73, 74, 73, 72, 72, 71, 69, 68, 68, 68, 75, 81, 79, 32.12660 + 70, 66, 69, 67, 59, 79, 78, 76, 73, 68, 65, 66, 69, 49, 48, 50, 32.12661 + 55, 62, 64, 61, 58, 58, 51, 46, 46, 41, 34, 30, 107, 255, 255, 255, 32.12662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12667 + 255, 255, 255, 255, 255, 255, 255, 192, 72, 76, 75, 68, 77, 83, 79, 74, 32.12668 + 78, 89, 97, 71, 77, 84, 87, 88, 87, 80, 72, 83, 75, 62, 53, 55, 32.12669 + 61, 61, 56, 62, 65, 69, 71, 70, 67, 64, 61, 73, 74, 72, 64, 60, 32.12670 + 60, 60, 59, 63, 76, 91, 93, 79, 63, 60, 64, 46, 44, 48, 55, 65, 32.12671 + 67, 63, 57, 59, 51, 48, 50, 45, 35, 33, 40, 43, 116, 255, 255, 255, 32.12672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12677 + 255, 255, 193, 71, 69, 70, 73, 73, 70, 93, 95, 89, 76, 68, 69, 71, 32.12678 + 72, 82, 79, 83, 92, 97, 95, 91, 89, 74, 75, 71, 67, 67, 69, 65, 32.12679 + 57, 71, 75, 80, 85, 86, 84, 80, 77, 70, 69, 71, 72, 71, 68, 70, 32.12680 + 76, 56, 65, 82, 97, 95, 79, 64, 57, 53, 50, 51, 58, 67, 70, 68, 32.12681 + 62, 67, 56, 52, 58, 58, 50, 48, 54, 55, 52, 94, 209, 255, 255, 255, 32.12682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 78, 32.12687 + 79, 73, 64, 64, 72, 76, 77, 85, 84, 75, 67, 66, 74, 75, 71, 66, 32.12688 + 60, 63, 75, 81, 79, 77, 82, 81, 90, 92, 79, 63, 58, 63, 68, 79, 32.12689 + 81, 81, 81, 80, 78, 76, 75, 67, 64, 67, 75, 71, 65, 65, 74, 71, 32.12690 + 55, 49, 68, 88, 90, 73, 58, 58, 52, 51, 56, 65, 69, 68, 63, 77, 32.12691 + 62, 57, 66, 72, 68, 65, 67, 61, 56, 46, 40, 37, 110, 255, 255, 255, 32.12692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12696 + 255, 255, 255, 255, 255, 255, 255, 216, 132, 123, 115, 78, 75, 85, 78, 73, 32.12697 + 75, 72, 70, 72, 80, 84, 78, 73, 77, 86, 92, 88, 83, 72, 72, 74, 32.12698 + 75, 76, 74, 70, 65, 66, 64, 68, 73, 72, 65, 62, 66, 70, 79, 83, 32.12699 + 80, 75, 74, 74, 73, 74, 82, 81, 71, 64, 66, 60, 51, 61, 56, 53, 32.12700 + 63, 76, 82, 73, 63, 53, 48, 46, 53, 63, 69, 66, 60, 65, 74, 79, 32.12701 + 72, 64, 61, 58, 54, 53, 38, 29, 36, 40, 39, 117, 255, 255, 255, 255, 32.12702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12706 + 255, 255, 212, 111, 77, 109, 128, 81, 81, 86, 84, 95, 84, 76, 77, 79, 32.12707 + 79, 81, 86, 82, 86, 93, 101, 106, 102, 92, 83, 70, 68, 66, 63, 62, 32.12708 + 59, 55, 52, 60, 60, 64, 68, 67, 61, 61, 66, 62, 68, 73, 71, 69, 32.12709 + 71, 71, 69, 66, 74, 74, 63, 58, 64, 68, 66, 59, 59, 63, 72, 82, 32.12710 + 83, 75, 65, 72, 60, 48, 45, 52, 62, 69, 70, 76, 82, 79, 68, 60, 32.12711 + 59, 60, 60, 46, 41, 46, 61, 69, 63, 56, 121, 255, 255, 255, 255, 255, 32.12712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 100, 32.12716 + 59, 67, 96, 102, 83, 78, 86, 88, 85, 80, 68, 58, 58, 63, 65, 66, 32.12717 + 68, 71, 81, 93, 101, 99, 90, 78, 71, 71, 68, 63, 58, 55, 52, 49, 32.12718 + 47, 51, 54, 59, 63, 62, 60, 65, 73, 60, 65, 68, 70, 76, 81, 81, 32.12719 + 76, 62, 68, 67, 56, 51, 56, 61, 62, 62, 66, 71, 76, 78, 76, 72, 32.12720 + 68, 68, 61, 54, 53, 59, 65, 66, 65, 78, 80, 77, 69, 61, 59, 60, 32.12721 + 60, 45, 57, 73, 82, 79, 68, 56, 49, 122, 255, 255, 255, 255, 255, 255, 32.12722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 184, 112, 63, 55, 62, 82, 32.12726 + 110, 103, 81, 85, 90, 82, 79, 67, 60, 54, 52, 54, 57, 58, 59, 65, 32.12727 + 68, 69, 70, 68, 63, 58, 55, 66, 63, 60, 58, 57, 55, 52, 49, 46, 32.12728 + 52, 59, 63, 66, 70, 80, 89, 94, 92, 86, 79, 75, 68, 54, 41, 57, 32.12729 + 60, 59, 54, 52, 54, 54, 51, 70, 74, 76, 73, 69, 66, 69, 73, 62, 32.12730 + 59, 56, 58, 62, 65, 66, 66, 65, 71, 74, 73, 68, 63, 59, 57, 60, 32.12731 + 78, 88, 76, 55, 43, 44, 48, 43, 89, 209, 255, 255, 255, 255, 255, 255, 32.12732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12735 + 255, 255, 255, 255, 247, 214, 151, 102, 83, 65, 59, 53, 63, 98, 106, 92, 32.12736 + 82, 96, 93, 76, 73, 57, 59, 59, 55, 51, 50, 53, 55, 67, 62, 53, 32.12737 + 50, 50, 50, 49, 47, 48, 49, 51, 54, 56, 57, 53, 50, 48, 57, 65, 32.12738 + 70, 76, 86, 98, 106, 80, 84, 89, 95, 103, 107, 101, 90, 63, 59, 53, 32.12739 + 49, 51, 55, 54, 50, 67, 72, 77, 75, 70, 67, 71, 75, 75, 68, 59, 32.12740 + 54, 56, 63, 73, 80, 62, 66, 72, 77, 76, 72, 68, 66, 81, 84, 76, 32.12741 + 55, 36, 31, 37, 42, 44, 53, 56, 118, 255, 255, 255, 255, 255, 255, 255, 32.12742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12745 + 255, 207, 124, 104, 78, 78, 70, 60, 65, 66, 77, 93, 87, 79, 84, 96, 32.12746 + 89, 73, 69, 60, 66, 67, 59, 52, 51, 55, 58, 68, 62, 53, 49, 50, 32.12747 + 50, 47, 44, 40, 41, 45, 51, 55, 56, 52, 50, 54, 62, 68, 73, 81, 32.12748 + 93, 103, 106, 107, 109, 111, 112, 115, 116, 109, 97, 90, 80, 65, 54, 51, 32.12749 + 51, 51, 49, 58, 64, 72, 76, 76, 74, 74, 74, 77, 75, 73, 69, 67, 32.12750 + 68, 73, 77, 72, 72, 76, 82, 84, 82, 81, 82, 89, 71, 51, 41, 43, 32.12751 + 45, 43, 39, 44, 60, 66, 59, 57, 255, 255, 255, 255, 255, 255, 255, 255, 32.12752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 72, 32.12755 + 71, 64, 52, 64, 62, 59, 75, 79, 88, 84, 82, 90, 98, 93, 89, 84, 32.12756 + 76, 80, 82, 78, 67, 61, 64, 69, 70, 67, 64, 60, 55, 51, 48, 47, 32.12757 + 47, 43, 43, 44, 47, 50, 50, 48, 47, 54, 59, 61, 63, 71, 81, 84, 32.12758 + 81, 79, 82, 84, 88, 98, 107, 110, 106, 101, 95, 86, 75, 63, 54, 51, 32.12759 + 52, 59, 59, 60, 63, 67, 70, 70, 70, 67, 75, 82, 85, 82, 76, 72, 32.12760 + 70, 83, 82, 87, 95, 97, 91, 87, 86, 76, 54, 39, 44, 55, 57, 54, 32.12761 + 53, 53, 54, 54, 55, 59, 61, 123, 255, 255, 255, 255, 255, 255, 255, 255, 32.12762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 74, 69, 63, 63, 32.12765 + 55, 67, 61, 60, 77, 79, 80, 86, 95, 117, 119, 98, 97, 103, 90, 78, 32.12766 + 76, 66, 53, 50, 57, 61, 60, 71, 70, 66, 58, 48, 46, 51, 57, 47, 32.12767 + 44, 42, 41, 41, 41, 39, 38, 51, 53, 52, 51, 56, 65, 64, 56, 85, 32.12768 + 86, 84, 83, 90, 100, 106, 105, 84, 92, 99, 96, 82, 68, 64, 67, 70, 32.12769 + 60, 48, 45, 51, 60, 65, 67, 69, 74, 77, 76, 75, 74, 78, 82, 84, 32.12770 + 86, 96, 108, 109, 96, 83, 78, 59, 46, 44, 53, 56, 53, 60, 75, 100, 32.12771 + 79, 63, 67, 71, 65, 58, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12774 + 255, 255, 255, 255, 255, 255, 255, 255, 189, 63, 79, 56, 52, 51, 65, 54, 32.12775 + 70, 72, 78, 67, 91, 104, 109, 106, 97, 99, 106, 98, 81, 96, 72, 50, 32.12776 + 50, 62, 72, 77, 80, 100, 84, 65, 56, 64, 72, 62, 47, 45, 42, 42, 32.12777 + 46, 46, 44, 43, 47, 52, 51, 51, 55, 59, 63, 65, 65, 63, 61, 66, 32.12778 + 80, 91, 93, 90, 88, 105, 110, 111, 100, 83, 72, 72, 77, 62, 60, 56, 32.12779 + 51, 49, 53, 60, 66, 89, 90, 88, 84, 86, 89, 82, 71, 65, 71, 84, 32.12780 + 100, 106, 94, 72, 54, 49, 49, 54, 60, 62, 60, 61, 65, 52, 60, 67, 32.12781 + 69, 68, 66, 68, 71, 56, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12784 + 255, 255, 255, 255, 215, 117, 65, 73, 78, 54, 58, 57, 68, 69, 82, 82, 32.12785 + 85, 84, 100, 92, 97, 98, 97, 98, 94, 77, 57, 54, 56, 61, 65, 65, 32.12786 + 68, 83, 100, 91, 82, 66, 52, 48, 54, 54, 51, 54, 49, 46, 46, 45, 32.12787 + 43, 44, 50, 47, 47, 48, 51, 54, 57, 59, 61, 61, 61, 67, 76, 81, 32.12788 + 80, 79, 81, 88, 89, 88, 85, 80, 78, 80, 83, 67, 62, 56, 54, 58, 32.12789 + 66, 74, 78, 74, 80, 80, 78, 78, 87, 92, 92, 97, 90, 85, 86, 84, 32.12790 + 76, 70, 70, 62, 55, 55, 65, 76, 76, 70, 65, 61, 64, 65, 64, 61, 32.12791 + 59, 60, 62, 54, 72, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12794 + 211, 107, 70, 75, 70, 79, 72, 50, 63, 59, 60, 77, 84, 85, 81, 91, 32.12795 + 91, 83, 88, 91, 84, 71, 63, 63, 66, 76, 64, 60, 75, 95, 105, 101, 32.12796 + 95, 86, 78, 65, 54, 53, 59, 62, 61, 58, 52, 48, 48, 48, 48, 52, 32.12797 + 58, 64, 64, 64, 63, 63, 65, 68, 71, 68, 70, 74, 79, 79, 76, 77, 32.12798 + 82, 80, 74, 69, 68, 70, 72, 71, 68, 69, 60, 50, 46, 50, 56, 60, 32.12799 + 61, 75, 80, 79, 71, 63, 68, 79, 87, 95, 89, 87, 90, 80, 63, 58, 32.12800 + 65, 68, 64, 65, 73, 78, 74, 67, 63, 57, 55, 52, 49, 48, 47, 47, 32.12801 + 48, 59, 58, 58, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 54, 54, 32.12804 + 66, 68, 72, 87, 75, 53, 65, 63, 52, 76, 76, 81, 72, 86, 70, 78, 32.12805 + 74, 70, 68, 62, 58, 63, 72, 74, 76, 81, 87, 91, 95, 101, 105, 83, 32.12806 + 72, 62, 66, 79, 85, 76, 63, 53, 50, 50, 54, 57, 58, 63, 68, 62, 32.12807 + 61, 58, 54, 51, 53, 59, 64, 67, 65, 66, 70, 70, 67, 68, 71, 64, 32.12808 + 61, 60, 66, 75, 82, 83, 81, 76, 70, 63, 57, 55, 55, 56, 57, 75, 32.12809 + 78, 76, 66, 54, 51, 57, 64, 67, 67, 77, 87, 77, 55, 48, 57, 61, 32.12810 + 69, 78, 77, 64, 51, 51, 58, 46, 44, 41, 41, 43, 44, 44, 43, 31, 32.12811 + 39, 47, 49, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 48, 57, 60, 69, 67, 32.12814 + 78, 93, 82, 67, 65, 70, 54, 72, 70, 78, 72, 80, 57, 67, 56, 52, 32.12815 + 64, 76, 76, 64, 55, 57, 62, 70, 78, 87, 92, 93, 91, 81, 77, 78, 32.12816 + 88, 96, 91, 74, 59, 51, 52, 58, 67, 70, 69, 68, 71, 73, 71, 67, 32.12817 + 64, 66, 71, 78, 83, 82, 74, 72, 75, 77, 74, 71, 71, 74, 73, 74, 32.12818 + 76, 78, 79, 77, 76, 65, 68, 70, 66, 59, 55, 56, 59, 60, 61, 62, 32.12819 + 62, 57, 54, 54, 55, 58, 54, 58, 65, 59, 48, 53, 68, 57, 65, 75, 32.12820 + 73, 59, 44, 44, 52, 44, 44, 44, 46, 50, 52, 51, 49, 40, 41, 41, 32.12821 + 40, 41, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12823 + 255, 255, 255, 255, 255, 255, 255, 188, 57, 57, 58, 65, 71, 70, 82, 87, 32.12824 + 84, 82, 63, 74, 65, 68, 66, 71, 71, 69, 52, 52, 57, 61, 63, 62, 32.12825 + 63, 67, 71, 75, 73, 76, 91, 110, 116, 98, 76, 90, 98, 109, 110, 97, 32.12826 + 77, 65, 61, 58, 62, 72, 83, 83, 76, 68, 67, 53, 51, 51, 54, 63, 32.12827 + 71, 76, 79, 95, 86, 82, 85, 87, 84, 78, 75, 73, 73, 72, 69, 64, 32.12828 + 60, 58, 57, 60, 67, 72, 68, 57, 48, 47, 50, 52, 50, 52, 58, 60, 32.12829 + 57, 54, 55, 54, 53, 55, 58, 57, 54, 58, 65, 60, 58, 60, 65, 64, 32.12830 + 57, 51, 50, 48, 49, 51, 54, 56, 57, 57, 57, 67, 51, 39, 45, 59, 32.12831 + 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12833 + 255, 255, 255, 255, 183, 48, 53, 52, 48, 62, 68, 73, 86, 76, 84, 104, 32.12834 + 70, 81, 87, 74, 69, 63, 65, 52, 51, 48, 62, 68, 58, 52, 61, 78, 32.12835 + 89, 80, 105, 126, 124, 110, 101, 101, 103, 104, 110, 116, 110, 88, 68, 63, 32.12836 + 70, 69, 74, 86, 96, 95, 83, 71, 66, 60, 60, 65, 75, 88, 94, 93, 32.12837 + 89, 80, 75, 74, 79, 81, 78, 76, 76, 65, 63, 61, 61, 62, 66, 69, 32.12838 + 71, 70, 75, 78, 73, 64, 55, 52, 52, 56, 51, 49, 52, 52, 48, 48, 32.12839 + 52, 51, 57, 61, 63, 67, 68, 62, 53, 55, 53, 53, 59, 62, 58, 53, 32.12840 + 52, 54, 57, 59, 60, 60, 62, 67, 71, 60, 63, 67, 65, 55, 46, 119, 32.12841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12843 + 255, 180, 34, 45, 56, 59, 56, 59, 70, 82, 93, 74, 91, 127, 86, 95, 32.12844 + 112, 87, 77, 60, 62, 41, 53, 54, 54, 52, 57, 79, 98, 90, 67, 89, 32.12845 + 102, 112, 109, 103, 102, 101, 99, 109, 102, 95, 89, 78, 67, 66, 72, 75, 32.12846 + 81, 92, 103, 101, 88, 75, 69, 62, 64, 70, 85, 98, 101, 92, 82, 78, 32.12847 + 80, 85, 91, 93, 91, 93, 98, 115, 104, 90, 79, 74, 71, 68, 66, 55, 32.12848 + 56, 58, 57, 55, 53, 51, 50, 56, 50, 45, 45, 43, 41, 46, 56, 58, 32.12849 + 62, 60, 55, 63, 74, 69, 56, 45, 51, 56, 59, 52, 44, 46, 54, 60, 32.12850 + 65, 67, 68, 67, 72, 80, 89, 81, 66, 55, 56, 58, 52, 44, 112, 255, 32.12851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 37, 32.12853 + 54, 61, 53, 50, 52, 57, 56, 76, 94, 95, 107, 119, 110, 102, 136, 66, 32.12854 + 86, 43, 63, 51, 43, 49, 53, 57, 59, 60, 66, 77, 86, 89, 107, 119, 32.12855 + 114, 107, 108, 109, 108, 107, 102, 97, 89, 73, 61, 67, 82, 74, 91, 100, 32.12856 + 94, 90, 89, 78, 61, 77, 67, 70, 91, 100, 91, 82, 83, 79, 83, 96, 32.12857 + 115, 127, 124, 114, 109, 107, 104, 94, 84, 82, 82, 77, 70, 60, 57, 52, 32.12858 + 49, 51, 54, 59, 61, 53, 46, 43, 49, 51, 47, 46, 48, 51, 58, 61, 32.12859 + 58, 53, 53, 57, 63, 48, 41, 42, 53, 53, 41, 37, 44, 47, 60, 59, 32.12860 + 52, 53, 53, 52, 61, 63, 77, 73, 56, 55, 69, 63, 39, 255, 255, 255, 32.12861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 30, 38, 49, 47, 32.12863 + 40, 41, 50, 67, 72, 84, 92, 96, 108, 113, 106, 106, 135, 73, 82, 46, 32.12864 + 57, 50, 44, 45, 50, 53, 53, 54, 60, 69, 77, 79, 88, 95, 94, 91, 32.12865 + 97, 106, 112, 102, 96, 87, 79, 70, 67, 75, 86, 95, 95, 109, 126, 116, 32.12866 + 88, 74, 80, 59, 84, 101, 96, 86, 84, 83, 79, 92, 102, 115, 120, 109, 32.12867 + 94, 88, 90, 97, 102, 105, 107, 106, 100, 83, 68, 59, 58, 57, 54, 51, 32.12868 + 51, 53, 54, 49, 44, 44, 47, 46, 42, 45, 51, 63, 63, 61, 61, 60, 32.12869 + 61, 60, 60, 61, 54, 44, 42, 47, 51, 49, 43, 42, 51, 55, 60, 71, 32.12870 + 70, 58, 50, 63, 56, 57, 69, 73, 65, 55, 52, 43, 255, 255, 255, 255, 32.12871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12872 + 255, 255, 255, 255, 255, 255, 255, 255, 182, 32, 36, 43, 47, 39, 34, 45, 32.12873 + 62, 67, 84, 88, 85, 95, 106, 103, 100, 102, 124, 78, 72, 49, 48, 50, 32.12874 + 45, 47, 49, 52, 52, 53, 57, 65, 71, 90, 87, 86, 84, 81, 84, 97, 32.12875 + 111, 94, 94, 89, 81, 78, 82, 85, 85, 90, 88, 100, 116, 103, 72, 62, 32.12876 + 73, 61, 81, 95, 92, 87, 88, 84, 74, 85, 89, 92, 90, 83, 82, 97, 32.12877 + 114, 100, 100, 99, 96, 94, 93, 85, 76, 65, 67, 68, 65, 59, 55, 55, 32.12878 + 56, 47, 48, 50, 53, 51, 50, 55, 64, 70, 64, 58, 59, 63, 64, 59, 32.12879 + 55, 70, 73, 65, 50, 49, 58, 58, 47, 52, 54, 53, 54, 62, 71, 73, 32.12880 + 71, 66, 54, 54, 68, 75, 65, 58, 59, 46, 114, 255, 255, 255, 255, 255, 32.12881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12882 + 255, 255, 255, 255, 255, 255, 39, 33, 37, 43, 44, 39, 40, 56, 76, 59, 32.12883 + 84, 85, 78, 94, 103, 93, 92, 88, 104, 76, 60, 50, 41, 50, 47, 46, 32.12884 + 49, 50, 51, 53, 57, 63, 68, 82, 73, 66, 62, 54, 48, 56, 70, 85, 32.12885 + 95, 99, 91, 85, 86, 81, 73, 86, 102, 105, 92, 84, 85, 81, 70, 74, 32.12886 + 74, 81, 88, 84, 73, 70, 76, 75, 67, 61, 61, 64, 69, 79, 88, 92, 32.12887 + 91, 86, 76, 69, 70, 72, 71, 71, 74, 75, 72, 65, 61, 61, 63, 55, 32.12888 + 58, 62, 68, 71, 73, 77, 81, 65, 57, 53, 56, 58, 59, 55, 55, 61, 32.12889 + 75, 80, 69, 60, 63, 67, 66, 65, 69, 71, 61, 46, 50, 63, 69, 67, 32.12890 + 76, 70, 53, 54, 70, 71, 59, 57, 48, 255, 255, 255, 255, 255, 255, 255, 32.12891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12892 + 255, 255, 255, 40, 42, 37, 39, 40, 43, 43, 49, 64, 78, 59, 84, 86, 32.12893 + 81, 94, 97, 85, 84, 79, 90, 74, 53, 50, 39, 47, 46, 42, 43, 44, 32.12894 + 46, 48, 52, 57, 61, 78, 73, 71, 70, 62, 53, 58, 70, 83, 96, 102, 32.12895 + 90, 77, 72, 69, 63, 83, 102, 101, 81, 80, 96, 90, 65, 72, 82, 92, 32.12896 + 85, 63, 48, 60, 80, 67, 70, 78, 88, 90, 82, 72, 68, 69, 80, 88, 32.12897 + 85, 77, 69, 63, 58, 69, 70, 71, 69, 65, 63, 65, 68, 70, 71, 75, 32.12898 + 83, 91, 97, 94, 88, 63, 59, 57, 58, 57, 54, 57, 64, 60, 64, 70, 32.12899 + 73, 72, 70, 74, 79, 70, 77, 94, 92, 67, 54, 49, 34, 56, 78, 76, 32.12900 + 48, 44, 69, 78, 64, 63, 52, 113, 255, 255, 255, 255, 255, 255, 255, 255, 32.12901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12902 + 209, 45, 46, 48, 49, 51, 54, 56, 63, 70, 77, 72, 84, 88, 87, 91, 32.12903 + 87, 77, 74, 76, 82, 71, 54, 51, 44, 42, 44, 44, 44, 44, 45, 48, 32.12904 + 51, 54, 56, 39, 46, 54, 58, 55, 54, 63, 76, 97, 103, 101, 86, 69, 32.12905 + 64, 67, 72, 80, 84, 85, 87, 88, 86, 73, 60, 65, 86, 90, 71, 61, 32.12906 + 73, 81, 77, 78, 87, 99, 104, 96, 83, 79, 82, 72, 83, 92, 94, 91, 32.12907 + 85, 77, 69, 70, 70, 70, 70, 71, 72, 72, 74, 80, 81, 83, 89, 100, 32.12908 + 106, 99, 88, 76, 73, 70, 69, 60, 55, 62, 76, 84, 71, 61, 65, 71, 32.12909 + 71, 67, 64, 76, 73, 92, 105, 96, 93, 80, 48, 49, 58, 63, 60, 58, 32.12910 + 63, 71, 74, 65, 53, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 49, 32.12912 + 53, 52, 59, 64, 68, 69, 71, 75, 77, 80, 73, 79, 84, 76, 69, 66, 32.12913 + 62, 67, 71, 62, 54, 49, 51, 38, 43, 48, 47, 46, 46, 47, 48, 49, 32.12914 + 49, 39, 55, 68, 69, 68, 77, 94, 107, 106, 102, 95, 86, 74, 68, 73, 32.12915 + 83, 96, 88, 90, 101, 98, 80, 68, 69, 70, 83, 83, 76, 85, 104, 99, 32.12916 + 77, 94, 89, 84, 79, 71, 66, 70, 77, 93, 89, 83, 82, 88, 93, 88, 32.12917 + 78, 71, 70, 70, 74, 79, 80, 76, 72, 79, 81, 83, 86, 95, 105, 103, 32.12918 + 96, 95, 87, 80, 75, 62, 54, 60, 76, 85, 84, 77, 68, 67, 69, 65, 32.12919 + 55, 74, 60, 75, 92, 93, 110, 116, 90, 65, 55, 56, 67, 68, 60, 63, 32.12920 + 75, 74, 61, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 49, 52, 58, 47, 32.12922 + 58, 69, 73, 71, 72, 75, 76, 77, 58, 65, 75, 60, 52, 57, 53, 56, 32.12923 + 61, 52, 52, 47, 56, 36, 44, 47, 44, 42, 41, 41, 40, 39, 38, 43, 32.12924 + 62, 74, 68, 64, 77, 98, 112, 100, 91, 86, 86, 81, 72, 73, 82, 100, 32.12925 + 95, 93, 94, 84, 70, 64, 68, 82, 90, 101, 106, 103, 95, 89, 87, 81, 32.12926 + 69, 64, 76, 94, 106, 110, 110, 98, 86, 72, 74, 87, 95, 82, 65, 67, 32.12927 + 65, 66, 73, 80, 80, 72, 65, 72, 77, 80, 82, 91, 103, 108, 107, 108, 32.12928 + 95, 83, 74, 61, 50, 55, 68, 55, 83, 96, 80, 68, 74, 78, 70, 58, 32.12929 + 48, 68, 82, 75, 93, 113, 96, 89, 72, 60, 63, 65, 62, 62, 68, 85, 32.12930 + 72, 56, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12931 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 59, 65, 61, 54, 62, 62, 67, 32.12932 + 75, 78, 76, 71, 70, 67, 67, 65, 58, 50, 50, 60, 70, 68, 62, 58, 32.12933 + 58, 57, 51, 40, 34, 41, 39, 36, 45, 58, 50, 39, 43, 71, 73, 75, 32.12934 + 79, 86, 93, 96, 96, 84, 94, 96, 83, 72, 72, 78, 83, 86, 89, 96, 32.12935 + 97, 81, 64, 67, 82, 84, 85, 87, 88, 87, 88, 94, 102, 84, 77, 72, 32.12936 + 77, 84, 85, 80, 75, 85, 84, 85, 86, 81, 72, 68, 69, 65, 79, 73, 32.12937 + 66, 73, 65, 57, 70, 71, 70, 77, 89, 95, 96, 106, 119, 110, 110, 97, 32.12938 + 74, 58, 56, 58, 59, 70, 73, 92, 105, 96, 84, 74, 60, 63, 53, 48, 32.12939 + 55, 66, 77, 91, 103, 88, 82, 78, 79, 82, 77, 64, 52, 67, 67, 65, 32.12940 + 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12941 + 255, 255, 255, 255, 255, 180, 38, 49, 58, 61, 61, 66, 65, 70, 80, 84, 32.12942 + 81, 75, 74, 56, 63, 71, 70, 61, 53, 49, 49, 70, 69, 64, 52, 39, 32.12943 + 36, 43, 54, 52, 50, 40, 35, 39, 42, 60, 91, 90, 83, 80, 88, 102, 32.12944 + 107, 97, 84, 101, 99, 90, 75, 69, 76, 84, 88, 91, 93, 92, 85, 81, 32.12945 + 84, 90, 94, 96, 86, 80, 87, 100, 107, 104, 98, 71, 83, 99, 108, 105, 32.12946 + 96, 89, 86, 78, 77, 80, 82, 80, 73, 72, 74, 72, 70, 52, 50, 70, 32.12947 + 71, 59, 62, 72, 71, 73, 79, 87, 96, 109, 120, 114, 113, 101, 79, 61, 32.12948 + 54, 52, 51, 51, 51, 66, 82, 86, 87, 87, 82, 69, 57, 48, 47, 52, 32.12949 + 58, 70, 81, 90, 84, 78, 76, 79, 79, 74, 69, 66, 66, 68, 63, 255, 32.12950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12951 + 255, 255, 255, 26, 31, 40, 53, 66, 74, 65, 65, 70, 79, 81, 76, 71, 32.12952 + 69, 65, 61, 54, 47, 45, 52, 66, 75, 46, 58, 69, 67, 55, 45, 42, 32.12953 + 44, 35, 45, 49, 54, 59, 57, 69, 96, 98, 91, 88, 95, 102, 100, 85, 32.12954 + 71, 109, 99, 82, 71, 72, 81, 87, 88, 93, 94, 86, 76, 82, 96, 98, 32.12955 + 87, 87, 93, 101, 105, 105, 103, 100, 98, 87, 94, 99, 96, 87, 80, 78, 32.12956 + 78, 73, 71, 73, 76, 74, 69, 70, 74, 62, 67, 63, 61, 70, 70, 69, 32.12957 + 77, 71, 73, 74, 77, 87, 101, 110, 113, 94, 93, 85, 69, 55, 49, 47, 32.12958 + 45, 49, 44, 47, 58, 68, 74, 80, 83, 77, 66, 54, 46, 42, 43, 51, 32.12959 + 59, 83, 78, 73, 71, 74, 78, 81, 83, 66, 66, 69, 66, 122, 255, 255, 32.12960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.12961 + 255, 27, 30, 37, 52, 71, 85, 71, 70, 73, 79, 79, 71, 64, 61, 60, 32.12962 + 60, 61, 63, 67, 72, 75, 78, 64, 60, 54, 48, 47, 50, 49, 46, 51, 32.12963 + 49, 43, 50, 64, 70, 81, 102, 93, 94, 94, 92, 83, 73, 68, 69, 103, 32.12964 + 93, 80, 74, 77, 83, 84, 83, 88, 87, 81, 78, 83, 89, 83, 71, 87, 32.12965 + 104, 121, 123, 112, 100, 91, 87, 109, 101, 89, 79, 76, 76, 72, 65, 73, 32.12966 + 70, 70, 70, 67, 62, 62, 67, 56, 66, 74, 75, 75, 73, 76, 83, 65, 32.12967 + 74, 79, 81, 92, 104, 104, 96, 75, 74, 66, 56, 46, 42, 42, 42, 52, 32.12968 + 48, 43, 47, 54, 55, 61, 74, 84, 78, 69, 59, 50, 45, 48, 53, 62, 32.12969 + 64, 66, 68, 71, 75, 79, 81, 70, 68, 68, 65, 53, 255, 255, 255, 255, 32.12970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 31, 32.12971 + 33, 36, 47, 65, 79, 86, 83, 83, 85, 83, 74, 66, 64, 59, 59, 61, 32.12972 + 65, 66, 63, 54, 47, 61, 58, 49, 43, 45, 51, 48, 41, 58, 59, 55, 32.12973 + 62, 75, 77, 83, 102, 99, 95, 91, 84, 73, 64, 67, 75, 97, 89, 80, 32.12974 + 74, 73, 75, 79, 82, 84, 77, 76, 83, 84, 79, 77, 79, 105, 109, 111, 32.12975 + 111, 112, 107, 91, 74, 94, 99, 101, 99, 99, 95, 83, 69, 71, 67, 65, 32.12976 + 64, 61, 57, 59, 64, 71, 61, 58, 63, 70, 75, 70, 60, 61, 68, 72, 32.12977 + 74, 82, 92, 89, 80, 80, 73, 62, 52, 43, 39, 39, 42, 40, 44, 41, 32.12978 + 46, 55, 50, 53, 74, 84, 87, 85, 77, 65, 56, 52, 52, 43, 51, 61, 32.12979 + 68, 71, 71, 72, 72, 79, 75, 70, 64, 53, 255, 255, 255, 255, 255, 255, 32.12980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 35, 35, 33, 32.12981 + 39, 50, 61, 87, 83, 81, 84, 83, 75, 68, 67, 72, 68, 65, 68, 70, 32.12982 + 67, 55, 45, 28, 42, 54, 57, 58, 62, 60, 53, 55, 69, 79, 86, 88, 32.12983 + 79, 82, 102, 109, 93, 81, 79, 80, 77, 79, 85, 96, 87, 77, 71, 68, 32.12984 + 70, 79, 89, 81, 74, 76, 86, 86, 82, 90, 106, 99, 103, 100, 90, 85, 32.12985 + 88, 89, 84, 77, 96, 109, 104, 91, 83, 77, 70, 66, 61, 60, 61, 59, 32.12986 + 59, 64, 71, 80, 66, 63, 60, 53, 57, 61, 54, 61, 62, 60, 59, 63, 32.12987 + 72, 75, 74, 76, 68, 58, 51, 45, 41, 43, 48, 34, 43, 43, 52, 66, 32.12988 + 54, 47, 69, 73, 85, 92, 87, 75, 64, 56, 52, 42, 48, 58, 66, 70, 32.12989 + 70, 70, 70, 87, 81, 75, 68, 58, 255, 255, 255, 255, 255, 255, 255, 255, 32.12990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 37, 36, 34, 37, 44, 32.12991 + 53, 76, 72, 70, 75, 75, 72, 70, 71, 74, 77, 86, 99, 107, 97, 73, 32.12992 + 54, 50, 53, 50, 46, 56, 76, 87, 87, 79, 82, 77, 76, 80, 80, 93, 32.12993 + 120, 94, 82, 76, 80, 83, 81, 84, 92, 85, 77, 72, 73, 76, 80, 89, 32.12994 + 98, 75, 79, 85, 88, 88, 90, 99, 108, 88, 101, 102, 84, 69, 74, 89, 32.12995 + 98, 90, 104, 107, 90, 73, 68, 67, 65, 65, 60, 58, 59, 61, 63, 71, 32.12996 + 79, 75, 70, 79, 75, 53, 51, 63, 59, 61, 58, 57, 61, 62, 64, 70, 32.12997 + 77, 70, 61, 53, 52, 47, 42, 43, 48, 41, 48, 44, 57, 79, 61, 40, 32.12998 + 55, 54, 72, 87, 86, 78, 70, 65, 60, 54, 53, 53, 55, 60, 65, 72, 32.12999 + 75, 86, 81, 76, 72, 63, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13000 + 255, 255, 255, 255, 255, 255, 255, 29, 34, 37, 37, 36, 41, 47, 55, 67, 32.13001 + 63, 64, 68, 74, 73, 75, 78, 81, 70, 59, 60, 69, 73, 67, 59, 73, 32.13002 + 70, 63, 66, 84, 98, 86, 64, 71, 73, 73, 89, 105, 101, 89, 95, 67, 32.13003 + 69, 76, 83, 76, 69, 78, 96, 68, 63, 67, 80, 91, 95, 99, 104, 70, 32.13004 + 85, 95, 92, 90, 95, 95, 89, 103, 106, 100, 89, 87, 97, 98, 93, 111, 32.13005 + 117, 111, 99, 90, 89, 79, 66, 66, 61, 59, 60, 61, 64, 71, 82, 75, 32.13006 + 62, 71, 81, 74, 74, 69, 46, 61, 60, 64, 73, 74, 69, 72, 82, 80, 32.13007 + 70, 61, 58, 51, 41, 36, 37, 43, 47, 40, 58, 89, 70, 40, 50, 36, 32.13008 + 59, 79, 83, 78, 75, 74, 71, 67, 58, 48, 43, 48, 60, 73, 81, 80, 32.13009 + 77, 75, 73, 65, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13010 + 255, 255, 255, 255, 255, 23, 37, 36, 29, 36, 47, 56, 64, 65, 71, 79, 32.13011 + 82, 75, 71, 73, 78, 81, 71, 61, 57, 59, 63, 65, 66, 68, 76, 91, 32.13012 + 103, 106, 96, 77, 62, 50, 64, 73, 82, 100, 114, 96, 67, 66, 82, 91, 32.13013 + 91, 88, 88, 80, 70, 57, 74, 67, 88, 101, 121, 89, 70, 98, 100, 98, 32.13014 + 90, 82, 84, 98, 111, 105, 106, 104, 102, 100, 105, 114, 123, 118, 105, 92, 32.13015 + 90, 85, 77, 69, 67, 68, 65, 64, 66, 67, 67, 63, 61, 52, 60, 66, 32.13016 + 67, 69, 74, 71, 65, 60, 58, 60, 62, 61, 57, 59, 62, 58, 56, 51, 32.13017 + 49, 46, 43, 39, 37, 44, 34, 44, 71, 78, 60, 47, 49, 49, 47, 68, 32.13018 + 76, 76, 89, 84, 67, 65, 61, 60, 59, 54, 51, 60, 72, 78, 74, 73, 32.13019 + 75, 70, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13020 + 255, 255, 255, 39, 49, 43, 33, 41, 54, 62, 72, 61, 68, 75, 79, 77, 32.13021 + 78, 85, 92, 70, 72, 71, 62, 54, 57, 71, 86, 86, 88, 90, 89, 84, 32.13022 + 73, 59, 50, 73, 67, 75, 97, 106, 92, 76, 70, 73, 78, 84, 90, 96, 32.13023 + 95, 84, 71, 78, 87, 95, 118, 120, 106, 84, 90, 75, 78, 84, 89, 96, 32.13024 + 105, 115, 122, 111, 104, 98, 96, 98, 103, 108, 110, 102, 92, 85, 87, 89, 32.13025 + 86, 84, 84, 79, 75, 74, 76, 80, 81, 76, 72, 57, 61, 63, 62, 63, 32.13026 + 66, 62, 55, 54, 54, 54, 56, 55, 51, 52, 57, 61, 58, 52, 48, 44, 32.13027 + 42, 41, 41, 43, 37, 45, 64, 71, 60, 52, 53, 48, 72, 57, 62, 74, 32.13028 + 68, 78, 75, 83, 68, 57, 60, 66, 65, 60, 57, 67, 73, 81, 82, 72, 32.13029 + 57, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13030 + 255, 41, 48, 37, 27, 37, 53, 62, 71, 73, 77, 81, 79, 75, 76, 81, 32.13031 + 87, 73, 65, 57, 53, 58, 68, 80, 86, 94, 101, 112, 117, 114, 104, 93, 32.13032 + 85, 82, 69, 71, 88, 88, 71, 63, 72, 78, 83, 93, 103, 101, 89, 77, 32.13033 + 71, 85, 99, 117, 118, 111, 78, 73, 87, 85, 87, 94, 106, 120, 128, 130, 32.13034 + 127, 111, 100, 90, 89, 96, 103, 104, 101, 100, 94, 90, 94, 98, 99, 98, 32.13035 + 99, 86, 81, 78, 78, 81, 81, 76, 73, 64, 62, 60, 58, 60, 62, 57, 32.13036 + 50, 61, 60, 60, 61, 59, 55, 56, 61, 64, 60, 54, 48, 43, 40, 40, 32.13037 + 41, 42, 41, 47, 57, 63, 61, 59, 58, 54, 67, 74, 47, 68, 77, 47, 32.13038 + 87, 81, 78, 75, 72, 65, 57, 55, 57, 59, 63, 71, 77, 75, 64, 56, 32.13039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 45, 32.13040 + 51, 43, 35, 49, 65, 72, 78, 81, 85, 85, 79, 72, 72, 73, 75, 69, 32.13041 + 57, 46, 47, 59, 71, 75, 75, 74, 84, 97, 106, 107, 103, 100, 99, 81, 32.13042 + 74, 67, 64, 65, 68, 71, 74, 81, 94, 112, 116, 96, 72, 68, 78, 90, 32.13043 + 111, 123, 88, 83, 62, 70, 71, 91, 90, 91, 95, 101, 102, 99, 94, 105, 32.13044 + 96, 88, 88, 95, 101, 103, 101, 110, 106, 103, 102, 102, 100, 97, 95, 90, 32.13045 + 86, 81, 75, 70, 68, 68, 70, 69, 63, 57, 56, 61, 63, 59, 52, 53, 32.13046 + 51, 50, 50, 47, 42, 43, 48, 60, 59, 55, 49, 44, 40, 40, 41, 41, 32.13047 + 46, 51, 54, 59, 63, 63, 59, 45, 82, 55, 68, 84, 61, 74, 72, 75, 32.13048 + 80, 83, 78, 65, 55, 54, 59, 62, 50, 47, 59, 73, 74, 64, 255, 255, 32.13049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 39, 48, 44, 32.13050 + 40, 53, 64, 67, 69, 70, 77, 80, 75, 73, 75, 76, 73, 53, 57, 59, 32.13051 + 57, 54, 56, 64, 72, 69, 69, 65, 62, 61, 69, 80, 89, 92, 82, 71, 32.13052 + 67, 70, 74, 76, 78, 91, 98, 107, 106, 88, 72, 79, 97, 112, 115, 109, 32.13053 + 69, 72, 62, 74, 75, 82, 81, 80, 78, 78, 79, 82, 84, 102, 99, 96, 32.13054 + 94, 94, 97, 101, 103, 112, 110, 107, 103, 99, 96, 92, 88, 95, 94, 89, 32.13055 + 80, 69, 66, 73, 81, 75, 66, 59, 59, 62, 63, 59, 55, 53, 51, 49, 32.13056 + 47, 43, 39, 40, 44, 52, 53, 55, 53, 50, 48, 49, 51, 44, 50, 54, 32.13057 + 56, 60, 65, 63, 55, 65, 46, 79, 73, 74, 93, 69, 79, 83, 77, 72, 32.13058 + 72, 76, 74, 64, 53, 68, 53, 43, 50, 63, 68, 65, 255, 255, 255, 255, 32.13059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 41, 54, 55, 51, 60, 32.13060 + 65, 62, 61, 67, 75, 77, 72, 72, 76, 75, 71, 62, 61, 60, 61, 62, 32.13061 + 62, 60, 60, 62, 62, 62, 64, 70, 81, 93, 102, 102, 81, 74, 86, 86, 32.13062 + 72, 68, 79, 103, 95, 87, 85, 87, 93, 105, 115, 116, 97, 77, 65, 73, 32.13063 + 62, 68, 84, 74, 77, 81, 83, 85, 92, 104, 114, 106, 109, 110, 106, 100, 32.13064 + 97, 100, 104, 110, 113, 113, 109, 107, 106, 103, 99, 98, 98, 97, 88, 78, 32.13065 + 76, 86, 95, 83, 73, 66, 66, 66, 63, 59, 59, 64, 60, 57, 55, 50, 32.13066 + 45, 45, 50, 45, 49, 54, 55, 56, 58, 62, 67, 55, 55, 56, 59, 64, 32.13067 + 66, 60, 50, 70, 68, 56, 83, 79, 72, 102, 78, 80, 81, 80, 76, 76, 32.13068 + 76, 71, 66, 70, 66, 63, 59, 54, 53, 62, 75, 255, 255, 255, 255, 255, 32.13069 + 255, 255, 255, 255, 255, 255, 255, 255, 43, 56, 74, 78, 74, 79, 81, 75, 32.13070 + 75, 76, 83, 81, 72, 70, 76, 75, 69, 76, 65, 56, 60, 71, 74, 62, 32.13071 + 49, 49, 54, 62, 72, 83, 92, 96, 99, 92, 82, 79, 84, 83, 74, 76, 32.13072 + 87, 101, 96, 89, 87, 96, 109, 116, 114, 92, 83, 64, 73, 75, 74, 68, 32.13073 + 84, 78, 84, 88, 93, 95, 102, 109, 117, 112, 116, 119, 116, 109, 105, 105, 32.13074 + 107, 113, 119, 121, 119, 118, 119, 117, 113, 102, 102, 100, 96, 92, 90, 93, 32.13075 + 95, 90, 82, 76, 77, 76, 71, 69, 72, 58, 54, 50, 47, 41, 36, 36, 32.13076 + 41, 48, 51, 53, 52, 52, 56, 64, 73, 69, 61, 56, 61, 67, 65, 56, 32.13077 + 48, 78, 65, 75, 69, 75, 84, 74, 92, 77, 87, 90, 80, 68, 66, 71, 32.13078 + 75, 67, 71, 74, 70, 58, 52, 62, 77, 255, 255, 255, 255, 255, 255, 255, 32.13079 + 255, 255, 255, 255, 255, 184, 39, 47, 67, 73, 69, 73, 75, 71, 72, 77, 32.13080 + 83, 80, 70, 68, 79, 81, 76, 70, 69, 69, 68, 65, 61, 59, 59, 72, 32.13081 + 67, 62, 63, 67, 73, 77, 78, 75, 89, 87, 70, 67, 86, 101, 102, 90, 32.13082 + 102, 109, 106, 105, 110, 110, 103, 70, 90, 80, 85, 81, 99, 85, 85, 108, 32.13083 + 110, 112, 113, 111, 108, 107, 106, 113, 117, 121, 121, 118, 114, 112, 112, 115, 32.13084 + 122, 125, 121, 120, 121, 119, 113, 110, 107, 104, 104, 105, 102, 96, 90, 93, 32.13085 + 87, 83, 86, 85, 81, 81, 87, 63, 59, 54, 51, 45, 39, 40, 45, 55, 32.13086 + 54, 52, 47, 44, 48, 58, 68, 80, 64, 55, 61, 68, 63, 54, 48, 66, 32.13087 + 87, 71, 69, 87, 70, 64, 88, 89, 86, 78, 70, 71, 75, 71, 61, 65, 32.13088 + 66, 69, 72, 68, 63, 65, 71, 131, 255, 255, 255, 255, 255, 255, 255, 255, 32.13089 + 255, 255, 255, 24, 28, 42, 56, 77, 81, 67, 66, 72, 68, 74, 79, 81, 32.13090 + 76, 71, 71, 71, 69, 69, 64, 66, 76, 79, 67, 50, 41, 56, 62, 67, 32.13091 + 73, 77, 76, 74, 72, 70, 68, 65, 67, 80, 95, 100, 97, 96, 94, 96, 32.13092 + 103, 106, 100, 94, 91, 85, 84, 89, 98, 101, 98, 100, 106, 117, 115, 112, 32.13093 + 111, 112, 115, 118, 122, 122, 123, 124, 125, 125, 123, 118, 114, 116, 119, 123, 32.13094 + 124, 123, 121, 121, 121, 113, 116, 117, 115, 111, 109, 111, 113, 104, 98, 95, 32.13095 + 94, 92, 89, 90, 94, 71, 63, 58, 62, 61, 52, 44, 43, 47, 59, 60, 32.13096 + 46, 42, 54, 62, 59, 63, 61, 59, 59, 59, 56, 51, 47, 54, 77, 91, 32.13097 + 81, 71, 75, 80, 79, 87, 81, 82, 88, 83, 69, 65, 70, 62, 68, 64, 32.13098 + 60, 61, 59, 66, 86, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13099 + 255, 28, 33, 47, 56, 75, 83, 73, 70, 74, 72, 75, 81, 83, 77, 72, 32.13100 + 72, 73, 71, 84, 73, 65, 67, 76, 90, 110, 126, 78, 69, 58, 59, 66, 32.13101 + 69, 62, 55, 64, 71, 79, 88, 97, 102, 96, 87, 87, 84, 84, 89, 91, 32.13102 + 90, 92, 95, 110, 108, 112, 118, 118, 113, 113, 118, 120, 120, 120, 121, 123, 32.13103 + 125, 127, 129, 125, 125, 125, 125, 126, 124, 120, 117, 119, 121, 124, 124, 123, 32.13104 + 122, 122, 122, 118, 117, 117, 114, 112, 110, 109, 110, 111, 104, 98, 96, 94, 32.13105 + 92, 96, 102, 97, 84, 69, 61, 58, 53, 46, 42, 43, 53, 52, 40, 39, 32.13106 + 52, 58, 53, 59, 57, 55, 54, 53, 50, 46, 41, 42, 62, 82, 87, 86, 32.13107 + 87, 84, 77, 84, 72, 74, 88, 87, 69, 59, 64, 60, 60, 52, 50, 56, 32.13108 + 56, 60, 75, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32.13109 + 33, 50, 51, 70, 86, 80, 73, 75, 76, 76, 82, 84, 79, 74, 74, 75, 32.13110 + 74, 81, 75, 68, 62, 58, 62, 78, 94, 98, 85, 70, 63, 61, 62, 61, 32.13111 + 58, 58, 71, 85, 94, 97, 95, 85, 75, 82, 80, 80, 83, 85, 89, 99, 32.13112 + 110, 112, 111, 114, 117, 115, 112, 111, 115, 123, 125, 127, 130, 132, 133, 133, 32.13113 + 134, 129, 127, 125, 124, 125, 124, 122, 120, 121, 122, 123, 123, 121, 122, 123, 32.13114 + 125, 127, 124, 122, 120, 120, 118, 115, 113, 113, 105, 97, 93, 90, 89, 93, 32.13115 + 100, 112, 102, 84, 69, 63, 59, 51, 42, 45, 52, 50, 40, 41, 53, 57, 32.13116 + 53, 58, 57, 55, 54, 53, 50, 46, 43, 43, 54, 73, 90, 100, 102, 97, 32.13117 + 91, 85, 69, 67, 83, 90, 76, 63, 62, 71, 65, 51, 48, 57, 58, 57, 32.13118 + 68, 93, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 23, 27, 47, 32.13119 + 43, 62, 84, 82, 73, 74, 75, 76, 82, 84, 79, 74, 75, 76, 75, 64, 32.13120 + 70, 76, 75, 68, 61, 60, 63, 90, 93, 91, 80, 66, 61, 67, 75, 60, 32.13121 + 70, 79, 80, 78, 77, 73, 68, 76, 79, 84, 89, 91, 94, 107, 120, 116, 32.13122 + 118, 122, 124, 124, 124, 125, 128, 126, 128, 129, 131, 132, 133, 132, 133, 131, 32.13123 + 128, 125, 124, 124, 124, 123, 122, 122, 123, 122, 121, 120, 121, 124, 127, 130, 32.13124 + 126, 123, 122, 125, 124, 121, 117, 111, 106, 101, 99, 94, 88, 86, 89, 103, 32.13125 + 104, 97, 84, 74, 68, 59, 48, 45, 53, 52, 42, 39, 48, 53, 53, 54, 32.13126 + 53, 52, 52, 51, 50, 49, 48, 51, 52, 62, 80, 95, 101, 104, 106, 97, 32.13127 + 81, 67, 70, 84, 89, 80, 67, 80, 73, 58, 52, 58, 56, 55, 65, 81, 32.13128 + 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 22, 24, 39, 35, 55, 32.13129 + 78, 79, 71, 72, 73, 76, 82, 83, 80, 75, 77, 77, 76, 78, 79, 79, 32.13130 + 77, 75, 75, 75, 75, 76, 85, 93, 88, 76, 68, 70, 75, 74, 80, 82, 32.13131 + 78, 73, 73, 74, 74, 70, 77, 89, 98, 99, 99, 107, 118, 122, 126, 129, 32.13132 + 130, 131, 133, 135, 137, 133, 132, 131, 130, 130, 130, 131, 131, 131, 128, 124, 32.13133 + 123, 123, 124, 123, 123, 122, 122, 121, 119, 118, 120, 123, 127, 125, 121, 119, 32.13134 + 119, 122, 122, 120, 117, 113, 111, 112, 112, 106, 94, 83, 80, 92, 99, 101, 32.13135 + 92, 81, 72, 66, 62, 42, 51, 51, 41, 33, 38, 45, 49, 45, 45, 45, 32.13136 + 44, 45, 47, 51, 53, 51, 48, 52, 66, 80, 89, 97, 104, 114, 103, 77, 32.13137 + 58, 69, 93, 91, 70, 73, 72, 61, 53, 53, 48, 51, 66, 58, 85, 255, 32.13138 + 255, 255, 255, 255, 255, 255, 255, 255, 22, 24, 25, 31, 32, 54, 75, 76, 32.13139 + 73, 74, 73, 79, 85, 87, 82, 79, 80, 82, 81, 87, 84, 76, 71, 72, 32.13140 + 77, 77, 74, 84, 85, 88, 92, 94, 90, 82, 74, 94, 101, 102, 99, 94, 32.13141 + 93, 91, 89, 79, 89, 101, 112, 111, 109, 112, 120, 123, 128, 129, 127, 126, 32.13142 + 129, 130, 129, 137, 136, 134, 132, 131, 130, 131, 131, 131, 129, 125, 124, 124, 32.13143 + 125, 124, 123, 122, 122, 121, 120, 118, 120, 123, 126, 123, 122, 121, 121, 122, 32.13144 + 123, 122, 121, 112, 112, 115, 117, 110, 94, 80, 75, 92, 95, 98, 96, 85, 32.13145 + 74, 71, 75, 46, 52, 52, 43, 36, 39, 46, 50, 46, 45, 44, 42, 44, 32.13146 + 49, 57, 63, 50, 48, 51, 61, 77, 89, 95, 94, 118, 118, 95, 63, 60, 32.13147 + 82, 88, 75, 67, 72, 66, 59, 55, 49, 54, 73, 55, 84, 255, 255, 255, 32.13148 + 255, 255, 255, 255, 255, 255, 22, 23, 24, 27, 36, 60, 77, 77, 80, 83, 32.13149 + 77, 85, 91, 93, 89, 86, 86, 88, 88, 78, 82, 85, 86, 93, 101, 102, 32.13150 + 98, 103, 100, 97, 100, 107, 110, 107, 102, 113, 118, 119, 117, 113, 113, 108, 32.13151 + 104, 101, 107, 115, 123, 122, 119, 121, 128, 133, 139, 140, 134, 133, 136, 137, 32.13152 + 135, 134, 135, 135, 135, 134, 133, 132, 131, 132, 130, 128, 127, 127, 127, 125, 32.13153 + 124, 122, 123, 123, 122, 121, 121, 124, 126, 125, 126, 126, 125, 123, 122, 123, 32.13154 + 124, 116, 114, 114, 114, 107, 93, 83, 80, 92, 87, 92, 104, 101, 84, 75, 32.13155 + 79, 53, 52, 48, 43, 45, 50, 52, 52, 51, 50, 46, 43, 44, 51, 63, 32.13156 + 71, 55, 52, 49, 55, 76, 98, 101, 91, 103, 116, 113, 89, 67, 68, 81, 32.13157 + 91, 74, 79, 75, 67, 63, 55, 57, 75, 70, 78, 255, 255, 255, 255, 255, 32.13158 + 255, 255, 255, 177, 21, 20, 20, 27, 41, 65, 79, 79, 85, 89, 81, 89, 32.13159 + 95, 97, 94, 90, 92, 94, 93, 97, 101, 101, 97, 97, 103, 106, 102, 109, 32.13160 + 111, 111, 109, 107, 113, 125, 135, 125, 127, 125, 121, 119, 120, 117, 113, 117, 32.13161 + 117, 120, 124, 124, 122, 125, 133, 129, 136, 136, 131, 129, 134, 135, 133, 128, 32.13162 + 131, 133, 136, 135, 134, 130, 129, 133, 131, 129, 129, 128, 129, 126, 125, 122, 32.13163 + 124, 124, 124, 122, 123, 124, 127, 122, 124, 125, 123, 118, 116, 118, 121, 125, 32.13164 + 120, 117, 115, 108, 98, 93, 94, 86, 77, 88, 115, 119, 96, 77, 76, 53, 32.13165 + 46, 38, 38, 47, 55, 53, 48, 52, 49, 44, 40, 40, 47, 60, 70, 59, 32.13166 + 51, 38, 41, 69, 101, 105, 90, 86, 106, 125, 115, 81, 60, 78, 109, 82, 32.13167 + 85, 78, 70, 65, 55, 53, 67, 81, 67, 133, 255, 255, 255, 255, 255, 255, 32.13168 + 255, 16, 19, 20, 20, 34, 51, 71, 84, 86, 84, 84, 86, 83, 85, 90, 32.13169 + 94, 97, 98, 97, 96, 98, 100, 103, 104, 106, 109, 113, 117, 118, 116, 116, 32.13170 + 120, 126, 133, 134, 134, 137, 136, 135, 130, 122, 118, 118, 120, 121, 119, 121, 32.13171 + 126, 127, 124, 124, 128, 132, 133, 134, 135, 134, 132, 129, 127, 132, 131, 130, 32.13172 + 130, 130, 131, 133, 134, 131, 133, 134, 131, 127, 126, 128, 131, 129, 128, 128, 32.13173 + 127, 126, 125, 124, 123, 127, 126, 126, 125, 124, 122, 122, 121, 127, 127, 125, 32.13174 + 118, 110, 103, 98, 97, 78, 88, 84, 90, 115, 113, 88, 79, 72, 57, 47, 32.13175 + 49, 48, 42, 41, 47, 47, 49, 56, 51, 37, 43, 59, 64, 57, 69, 59, 32.13176 + 38, 46, 85, 106, 99, 87, 93, 120, 107, 87, 72, 64, 109, 94, 73, 84, 32.13177 + 60, 85, 54, 68, 58, 79, 85, 78, 255, 255, 255, 255, 255, 255, 255, 19, 32.13178 + 21, 21, 21, 36, 62, 84, 85, 81, 87, 89, 86, 84, 86, 90, 93, 96, 32.13179 + 97, 96, 97, 99, 102, 106, 110, 112, 115, 119, 122, 127, 125, 124, 126, 131, 32.13180 + 135, 136, 136, 134, 134, 133, 130, 125, 123, 123, 124, 131, 128, 129, 133, 133, 32.13181 + 130, 129, 131, 133, 134, 135, 135, 134, 132, 131, 130, 130, 129, 129, 128, 129, 32.13182 + 130, 131, 132, 128, 129, 129, 127, 125, 124, 125, 127, 126, 125, 125, 124, 123, 32.13183 + 122, 122, 121, 122, 121, 122, 122, 122, 121, 122, 122, 121, 121, 119, 115, 107, 32.13184 + 100, 97, 95, 92, 95, 93, 103, 123, 124, 102, 83, 77, 63, 54, 58, 59, 32.13185 + 51, 45, 47, 46, 45, 52, 49, 38, 43, 58, 61, 63, 73, 71, 52, 45, 32.13186 + 65, 91, 104, 97, 91, 102, 111, 104, 77, 67, 99, 104, 83, 83, 66, 84, 32.13187 + 65, 72, 65, 69, 79, 79, 255, 255, 255, 255, 255, 255, 255, 23, 22, 21, 32.13188 + 19, 44, 76, 93, 84, 78, 89, 96, 89, 94, 95, 96, 98, 100, 102, 102, 32.13189 + 103, 103, 107, 113, 117, 120, 122, 125, 128, 135, 134, 132, 133, 135, 137, 137, 32.13190 + 136, 137, 136, 133, 133, 134, 135, 135, 134, 138, 135, 135, 138, 137, 133, 132, 32.13191 + 134, 135, 134, 133, 132, 131, 131, 131, 131, 132, 131, 131, 131, 131, 132, 133, 32.13192 + 134, 132, 131, 129, 128, 128, 129, 128, 127, 128, 127, 127, 126, 125, 125, 124, 32.13193 + 124, 123, 123, 124, 125, 125, 126, 127, 127, 116, 117, 118, 115, 108, 101, 97, 32.13194 + 95, 93, 83, 85, 100, 113, 120, 103, 74, 74, 62, 55, 62, 67, 61, 51, 32.13195 + 48, 47, 42, 47, 47, 39, 43, 54, 55, 65, 77, 82, 68, 48, 49, 79, 32.13196 + 109, 105, 91, 82, 111, 118, 82, 72, 86, 109, 94, 82, 76, 79, 75, 74, 32.13197 + 72, 67, 81, 85, 255, 255, 255, 255, 255, 255, 255, 22, 20, 18, 19, 62, 32.13198 + 81, 90, 83, 78, 88, 96, 95, 99, 98, 98, 100, 102, 104, 108, 109, 109, 32.13199 + 113, 119, 123, 125, 126, 128, 129, 136, 135, 134, 135, 135, 136, 135, 135, 139, 32.13200 + 136, 133, 134, 138, 141, 140, 138, 137, 134, 133, 136, 135, 132, 131, 134, 134, 32.13201 + 134, 130, 129, 127, 129, 129, 131, 129, 130, 129, 131, 130, 132, 131, 133, 134, 32.13202 + 132, 128, 128, 130, 131, 129, 126, 127, 127, 126, 126, 125, 125, 124, 124, 122, 32.13203 + 122, 124, 124, 124, 125, 126, 126, 117, 119, 120, 118, 111, 103, 99, 96, 102, 32.13204 + 83, 86, 101, 110, 123, 116, 84, 69, 56, 49, 56, 65, 64, 55, 49, 50, 32.13205 + 41, 45, 48, 41, 42, 48, 47, 54, 69, 79, 68, 49, 48, 72, 96, 99, 32.13206 + 95, 74, 103, 113, 81, 78, 77, 102, 99, 84, 87, 73, 81, 73, 78, 75, 32.13207 + 85, 88, 255, 255, 255, 255, 255, 255, 255, 21, 18, 19, 24, 82, 79, 79, 32.13208 + 81, 84, 85, 93, 101, 94, 94, 94, 96, 100, 104, 108, 111, 114, 118, 123, 32.13209 + 126, 126, 126, 127, 128, 130, 131, 132, 132, 132, 132, 132, 132, 134, 131, 128, 32.13210 + 130, 134, 136, 134, 132, 132, 129, 129, 132, 131, 129, 129, 133, 132, 131, 127, 32.13211 + 125, 124, 126, 126, 129, 121, 122, 122, 124, 123, 124, 123, 125, 130, 128, 124, 32.13212 + 124, 126, 127, 125, 122, 121, 121, 121, 120, 120, 120, 120, 119, 117, 117, 118, 32.13213 + 118, 117, 117, 118, 118, 121, 122, 123, 119, 112, 104, 98, 95, 103, 83, 83, 32.13214 + 94, 101, 119, 121, 97, 76, 62, 49, 51, 58, 60, 54, 48, 53, 43, 46, 32.13215 + 50, 43, 40, 43, 40, 42, 57, 64, 54, 47, 53, 64, 70, 86, 99, 80, 32.13216 + 90, 95, 77, 83, 76, 90, 99, 89, 97, 74, 84, 74, 82, 84, 88, 85, 32.13217 + 255, 255, 255, 255, 255, 255, 255, 21, 19, 28, 40, 91, 78, 75, 85, 91, 32.13218 + 89, 94, 104, 97, 97, 99, 102, 106, 110, 114, 116, 118, 121, 124, 126, 125, 32.13219 + 125, 126, 127, 126, 128, 130, 130, 129, 129, 129, 130, 133, 132, 130, 131, 132, 32.13220 + 133, 132, 132, 131, 128, 127, 130, 130, 128, 129, 133, 130, 128, 126, 124, 123, 32.13221 + 123, 125, 126, 121, 122, 123, 124, 124, 124, 124, 124, 130, 129, 127, 126, 126, 32.13222 + 127, 126, 125, 122, 121, 121, 121, 121, 121, 121, 121, 118, 118, 119, 118, 118, 32.13223 + 117, 118, 118, 122, 123, 123, 119, 111, 103, 99, 96, 96, 85, 81, 85, 92, 32.13224 + 108, 115, 106, 96, 80, 62, 54, 54, 55, 51, 47, 54, 44, 48, 54, 46, 32.13225 + 39, 41, 39, 46, 56, 58, 51, 52, 60, 63, 59, 80, 96, 87, 81, 83, 32.13226 + 80, 83, 81, 81, 95, 92, 100, 80, 89, 79, 84, 92, 94, 91, 137, 255, 32.13227 + 255, 255, 255, 255, 180, 25, 25, 43, 63, 86, 83, 85, 91, 96, 98, 101, 32.13228 + 105, 106, 106, 109, 112, 115, 118, 121, 122, 119, 120, 122, 123, 124, 125, 127, 32.13229 + 129, 127, 130, 132, 132, 129, 127, 128, 129, 134, 135, 135, 134, 133, 133, 134, 32.13230 + 136, 133, 129, 127, 129, 128, 126, 127, 130, 130, 128, 127, 125, 124, 124, 125, 32.13231 + 125, 126, 127, 128, 129, 130, 129, 129, 129, 130, 132, 131, 129, 127, 127, 128, 32.13232 + 129, 125, 125, 125, 125, 125, 126, 126, 126, 121, 122, 123, 123, 123, 124, 125, 32.13233 + 125, 124, 125, 124, 120, 113, 107, 104, 102, 99, 103, 96, 92, 100, 110, 115, 32.13234 + 122, 112, 98, 76, 61, 55, 54, 51, 48, 52, 43, 51, 60, 50, 41, 43, 32.13235 + 43, 53, 52, 54, 55, 55, 54, 62, 70, 87, 87, 87, 80, 87, 90, 79, 32.13236 + 87, 76, 85, 85, 90, 84, 92, 84, 81, 92, 99, 102, 91, 255, 255, 255, 32.13237 + 255, 255, 33, 30, 32, 55, 81, 76, 88, 97, 97, 99, 106, 108, 103, 109, 32.13238 + 110, 112, 115, 117, 118, 119, 120, 117, 119, 121, 123, 123, 126, 129, 132, 131, 32.13239 + 134, 136, 135, 132, 129, 129, 130, 130, 133, 134, 133, 131, 131, 133, 137, 134, 32.13240 + 129, 126, 127, 126, 122, 123, 126, 130, 129, 128, 127, 126, 125, 125, 126, 125, 32.13241 + 126, 128, 129, 130, 129, 128, 128, 125, 128, 129, 127, 123, 122, 124, 127, 124, 32.13242 + 124, 124, 124, 124, 124, 124, 124, 119, 119, 121, 122, 124, 125, 127, 127, 127, 32.13243 + 127, 126, 122, 116, 112, 110, 110, 88, 103, 95, 86, 94, 98, 101, 117, 117, 32.13244 + 104, 84, 66, 58, 56, 53, 51, 49, 42, 52, 62, 52, 42, 45, 48, 50, 32.13245 + 41, 44, 55, 51, 41, 55, 81, 97, 78, 84, 82, 96, 99, 75, 92, 74, 32.13246 + 77, 77, 79, 85, 92, 86, 75, 83, 96, 106, 96, 255, 255, 255, 255, 255, 32.13247 + 38, 17, 26, 82, 84, 81, 83, 89, 94, 97, 100, 102, 102, 107, 109, 113, 32.13248 + 116, 116, 117, 119, 121, 118, 119, 120, 121, 121, 124, 129, 132, 134, 134, 134, 32.13249 + 134, 134, 134, 134, 134, 130, 130, 131, 131, 131, 132, 132, 132, 129, 128, 128, 32.13250 + 127, 126, 127, 128, 128, 127, 128, 128, 126, 123, 122, 122, 123, 131, 130, 130, 32.13251 + 130, 131, 130, 127, 125, 131, 130, 128, 128, 130, 131, 132, 132, 126, 126, 125, 32.13252 + 125, 124, 124, 125, 126, 118, 118, 120, 121, 123, 124, 126, 127, 125, 124, 126, 32.13253 + 126, 118, 109, 110, 117, 95, 95, 94, 96, 97, 103, 110, 115, 101, 113, 88, 32.13254 + 57, 60, 65, 56, 54, 46, 43, 53, 57, 49, 47, 50, 46, 49, 57, 48, 32.13255 + 43, 52, 46, 44, 63, 87, 101, 73, 87, 96, 78, 92, 84, 74, 63, 81, 32.13256 + 81, 94, 78, 83, 68, 83, 94, 104, 95, 255, 255, 255, 255, 255, 29, 17, 32.13257 + 37, 90, 88, 87, 89, 94, 99, 103, 106, 107, 108, 105, 107, 111, 113, 114, 32.13258 + 115, 117, 119, 115, 118, 121, 124, 125, 126, 129, 131, 132, 132, 132, 132, 132, 32.13259 + 132, 132, 132, 133, 133, 133, 134, 134, 134, 135, 135, 131, 130, 130, 130, 129, 32.13260 + 130, 131, 131, 130, 131, 132, 131, 129, 128, 129, 131, 133, 131, 130, 129, 129, 32.13261 + 127, 124, 123, 130, 129, 127, 127, 130, 132, 132, 132, 130, 130, 129, 127, 124, 32.13262 + 123, 123, 124, 117, 117, 119, 121, 122, 123, 125, 126, 125, 124, 125, 125, 118, 32.13263 + 109, 110, 116, 103, 101, 98, 96, 95, 98, 104, 109, 118, 104, 85, 78, 75, 32.13264 + 64, 65, 82, 49, 41, 48, 55, 47, 43, 47, 46, 46, 53, 46, 43, 50, 32.13265 + 43, 40, 56, 79, 97, 78, 79, 95, 89, 91, 91, 77, 65, 80, 81, 91, 32.13266 + 79, 84, 70, 82, 94, 105, 97, 255, 255, 255, 255, 176, 22, 20, 53, 97, 32.13267 + 89, 90, 92, 97, 103, 107, 110, 111, 111, 110, 112, 115, 116, 116, 117, 120, 32.13268 + 122, 118, 122, 127, 130, 131, 131, 132, 133, 134, 134, 134, 134, 134, 134, 134, 32.13269 + 134, 132, 132, 132, 133, 133, 133, 133, 133, 131, 131, 130, 130, 130, 131, 131, 32.13270 + 133, 133, 134, 135, 135, 134, 134, 136, 138, 141, 138, 135, 132, 131, 130, 128, 32.13271 + 127, 129, 128, 126, 126, 129, 131, 132, 132, 133, 133, 132, 129, 124, 121, 120, 32.13272 + 121, 122, 122, 124, 125, 126, 127, 129, 129, 123, 123, 124, 123, 118, 111, 111, 32.13273 + 115, 105, 102, 97, 94, 91, 94, 100, 105, 113, 89, 82, 88, 80, 72, 86, 32.13274 + 106, 58, 43, 46, 54, 47, 41, 46, 49, 49, 53, 50, 49, 53, 46, 41, 32.13275 + 52, 70, 93, 90, 71, 89, 99, 83, 97, 82, 69, 78, 81, 88, 81, 84, 32.13276 + 73, 81, 92, 104, 99, 255, 255, 255, 255, 21, 18, 27, 67, 99, 86, 89, 32.13277 + 91, 97, 102, 106, 109, 110, 110, 112, 114, 116, 116, 117, 118, 121, 123, 122, 32.13278 + 125, 128, 129, 129, 129, 130, 131, 132, 132, 132, 132, 132, 132, 132, 132, 126, 32.13279 + 126, 126, 127, 127, 128, 127, 127, 128, 128, 127, 127, 129, 130, 130, 132, 134, 32.13280 + 135, 135, 135, 132, 134, 135, 139, 142, 140, 135, 133, 131, 132, 129, 130, 126, 32.13281 + 125, 124, 124, 127, 130, 131, 131, 131, 133, 133, 129, 124, 119, 119, 120, 122, 32.13282 + 122, 124, 125, 126, 127, 128, 129, 122, 123, 123, 122, 117, 113, 113, 115, 106, 32.13283 + 103, 98, 96, 94, 98, 105, 110, 99, 87, 89, 87, 71, 78, 95, 96, 69, 32.13284 + 48, 46, 56, 50, 43, 49, 54, 49, 50, 52, 54, 54, 46, 41, 44, 60, 32.13285 + 89, 106, 68, 80, 99, 72, 99, 88, 74, 77, 82, 85, 84, 85, 76, 80, 32.13286 + 89, 101, 100, 255, 255, 255, 255, 22, 14, 32, 77, 96, 84, 88, 90, 95, 32.13287 + 100, 105, 107, 108, 108, 109, 110, 112, 112, 112, 113, 116, 119, 121, 121, 121, 32.13288 + 120, 118, 118, 120, 123, 124, 124, 124, 124, 124, 124, 124, 124, 123, 123, 123, 32.13289 + 124, 123, 123, 124, 124, 123, 124, 124, 125, 126, 128, 130, 131, 134, 135, 133, 32.13290 + 132, 129, 131, 132, 136, 136, 134, 130, 129, 128, 129, 127, 127, 125, 124, 123, 32.13291 + 123, 126, 128, 129, 129, 126, 129, 131, 128, 122, 118, 118, 120, 116, 116, 118, 32.13292 + 118, 119, 120, 121, 121, 122, 123, 124, 121, 118, 117, 116, 115, 108, 106, 101, 32.13293 + 99, 98, 102, 108, 113, 105, 94, 99, 97, 76, 74, 83, 78, 75, 52, 47, 32.13294 + 54, 51, 48, 53, 55, 46, 43, 48, 53, 48, 41, 38, 35, 46, 79, 114, 32.13295 + 73, 73, 96, 71, 102, 94, 80, 76, 86, 84, 89, 87, 79, 82, 86, 97, 32.13296 + 101, 255, 255, 255, 255, 20, 13, 40, 85, 92, 87, 91, 91, 96, 102, 106, 32.13297 + 109, 110, 110, 112, 113, 114, 113, 113, 115, 118, 121, 123, 122, 121, 118, 116, 32.13298 + 117, 120, 122, 123, 123, 123, 123, 123, 123, 123, 124, 126, 126, 126, 126, 126, 32.13299 + 126, 127, 127, 124, 125, 125, 127, 128, 131, 133, 134, 136, 137, 135, 133, 131, 32.13300 + 131, 134, 137, 138, 136, 133, 132, 132, 131, 130, 128, 128, 127, 124, 124, 126, 32.13301 + 128, 129, 128, 122, 127, 131, 128, 122, 117, 118, 120, 116, 116, 118, 118, 119, 32.13302 + 119, 121, 121, 122, 125, 124, 121, 120, 120, 120, 116, 106, 104, 100, 97, 93, 32.13303 + 94, 98, 101, 109, 93, 97, 109, 97, 77, 76, 85, 74, 55, 48, 51, 49, 32.13304 + 53, 58, 53, 50, 42, 50, 58, 50, 45, 43, 35, 38, 65, 110, 82, 73, 32.13305 + 95, 81, 101, 100, 86, 77, 91, 84, 94, 88, 82, 86, 85, 93, 103, 148, 32.13306 + 255, 255, 255, 23, 19, 50, 92, 89, 92, 92, 94, 98, 104, 108, 110, 111, 32.13307 + 111, 118, 119, 119, 118, 118, 119, 123, 126, 124, 124, 125, 124, 123, 123, 125, 32.13308 + 127, 127, 127, 127, 127, 127, 127, 127, 128, 130, 130, 131, 131, 130, 131, 130, 32.13309 + 130, 130, 131, 132, 133, 136, 138, 140, 142, 142, 143, 142, 139, 138, 140, 143, 32.13310 + 147, 146, 144, 142, 141, 140, 138, 135, 132, 132, 131, 128, 127, 129, 130, 130, 32.13311 + 129, 123, 128, 133, 130, 122, 117, 118, 120, 121, 121, 122, 123, 123, 123, 124, 32.13312 + 125, 123, 126, 125, 121, 121, 124, 123, 117, 108, 106, 103, 99, 94, 93, 94, 32.13313 + 96, 103, 100, 98, 104, 105, 88, 77, 86, 74, 60, 53, 49, 50, 61, 65, 32.13314 + 52, 56, 45, 55, 64, 54, 51, 52, 40, 42, 56, 101, 93, 79, 97, 93, 32.13315 + 93, 104, 90, 78, 95, 86, 99, 90, 84, 93, 86, 92, 107, 104, 255, 255, 32.13316 + 255, 29, 26, 59, 96, 89, 96, 94, 94, 99, 105, 108, 110, 111, 111, 118, 32.13317 + 118, 117, 117, 115, 118, 121, 124, 119, 121, 125, 127, 127, 126, 127, 128, 126, 32.13318 + 126, 126, 126, 126, 126, 126, 126, 131, 131, 132, 132, 133, 133, 132, 132, 136, 32.13319 + 137, 138, 140, 142, 145, 147, 150, 146, 147, 146, 145, 144, 148, 152, 156, 148, 32.13320 + 146, 144, 143, 141, 137, 133, 128, 137, 133, 130, 129, 130, 132, 131, 131, 125, 32.13321 + 131, 135, 132, 123, 117, 117, 120, 121, 121, 121, 122, 122, 122, 123, 123, 123, 32.13322 + 127, 126, 122, 122, 127, 124, 119, 116, 116, 115, 111, 107, 104, 105, 107, 100, 32.13323 + 121, 110, 90, 94, 92, 74, 65, 75, 66, 58, 51, 52, 69, 72, 52, 56, 32.13324 + 42, 54, 64, 53, 51, 53, 39, 51, 54, 95, 101, 84, 98, 100, 82, 106, 32.13325 + 93, 79, 98, 87, 102, 90, 85, 98, 87, 92, 109, 112, 255, 255, 27, 20, 32.13326 + 30, 72, 95, 92, 95, 98, 99, 102, 104, 105, 106, 108, 110, 113, 114, 115, 32.13327 + 116, 118, 119, 120, 120, 126, 126, 127, 127, 128, 128, 127, 127, 125, 125, 125, 32.13328 + 126, 127, 128, 129, 131, 132, 131, 131, 130, 130, 131, 132, 132, 137, 135, 134, 32.13329 + 137, 143, 148, 150, 150, 151, 147, 144, 147, 151, 153, 149, 144, 137, 138, 138, 32.13330 + 136, 135, 135, 138, 140, 130, 130, 130, 131, 132, 133, 131, 130, 129, 128, 127, 32.13331 + 125, 124, 123, 122, 122, 119, 119, 120, 121, 122, 122, 124, 124, 121, 121, 122, 32.13332 + 124, 123, 122, 120, 120, 113, 114, 123, 106, 121, 113, 114, 94, 107, 116, 125, 32.13333 + 123, 109, 90, 75, 67, 71, 69, 60, 50, 53, 65, 63, 52, 57, 44, 50, 32.13334 + 41, 57, 39, 42, 35, 42, 61, 89, 113, 95, 85, 108, 103, 99, 89, 86, 32.13335 + 98, 100, 92, 82, 82, 102, 95, 83, 91, 109, 255, 255, 22, 20, 37, 77, 32.13336 + 96, 95, 99, 99, 101, 105, 107, 108, 109, 111, 113, 118, 119, 120, 121, 122, 32.13337 + 123, 124, 125, 125, 126, 126, 126, 127, 127, 126, 127, 126, 126, 126, 126, 125, 32.13338 + 126, 128, 128, 130, 130, 131, 131, 131, 132, 133, 134, 136, 135, 136, 141, 145, 32.13339 + 148, 147, 145, 143, 144, 144, 144, 145, 145, 147, 147, 144, 143, 140, 139, 138, 32.13340 + 138, 138, 138, 130, 128, 126, 128, 131, 132, 130, 127, 128, 127, 127, 125, 124, 32.13341 + 124, 124, 124, 121, 121, 121, 122, 122, 122, 123, 124, 119, 121, 122, 125, 125, 32.13342 + 126, 127, 129, 123, 117, 125, 117, 129, 113, 115, 108, 103, 112, 124, 130, 125, 32.13343 + 110, 91, 78, 75, 72, 65, 59, 63, 69, 64, 54, 66, 54, 58, 49, 60, 32.13344 + 44, 46, 39, 44, 59, 80, 104, 93, 85, 103, 95, 103, 92, 94, 97, 103, 32.13345 + 89, 87, 85, 102, 104, 89, 88, 108, 255, 255, 18, 19, 46, 83, 96, 94, 32.13346 + 101, 99, 101, 106, 108, 110, 112, 115, 117, 121, 121, 122, 123, 124, 125, 126, 32.13347 + 126, 126, 126, 126, 126, 127, 127, 126, 127, 131, 131, 130, 130, 129, 130, 130, 32.13348 + 131, 132, 132, 132, 133, 134, 136, 138, 139, 136, 138, 139, 142, 145, 146, 144, 32.13349 + 141, 141, 145, 149, 148, 145, 145, 150, 154, 144, 141, 138, 138, 140, 141, 140, 32.13350 + 137, 136, 132, 129, 131, 136, 137, 134, 130, 127, 126, 126, 125, 124, 124, 124, 32.13351 + 125, 123, 122, 122, 122, 122, 121, 122, 122, 129, 129, 128, 127, 124, 124, 124, 32.13352 + 125, 129, 119, 126, 127, 132, 113, 117, 122, 110, 113, 118, 124, 123, 111, 93, 32.13353 + 79, 78, 72, 66, 66, 70, 72, 66, 59, 69, 60, 61, 57, 64, 50, 49, 32.13354 + 45, 50, 62, 75, 98, 96, 89, 102, 94, 106, 91, 99, 89, 105, 83, 90, 32.13355 + 84, 97, 112, 93, 80, 103, 255, 255, 13, 20, 55, 86, 92, 91, 97, 97, 32.13356 + 99, 104, 107, 109, 112, 115, 117, 118, 118, 119, 120, 121, 122, 122, 123, 125, 32.13357 + 125, 125, 126, 126, 127, 126, 126, 130, 130, 129, 128, 127, 127, 128, 128, 127, 32.13358 + 128, 128, 129, 131, 133, 135, 137, 137, 138, 138, 140, 141, 141, 140, 140, 139, 32.13359 + 144, 148, 149, 147, 146, 148, 151, 137, 133, 130, 133, 139, 142, 140, 137, 139, 32.13360 + 134, 129, 131, 137, 139, 135, 131, 124, 123, 124, 123, 123, 123, 124, 124, 123, 32.13361 + 123, 122, 122, 120, 120, 120, 120, 133, 132, 129, 126, 124, 123, 123, 125, 124, 32.13362 + 123, 128, 129, 127, 118, 122, 130, 119, 116, 114, 113, 111, 105, 96, 88, 80, 32.13363 + 72, 66, 67, 72, 73, 68, 64, 61, 57, 59, 62, 64, 55, 49, 46, 51, 32.13364 + 63, 70, 91, 95, 89, 100, 96, 106, 87, 97, 78, 104, 78, 89, 78, 85, 32.13365 + 110, 91, 70, 91, 255, 177, 11, 26, 64, 86, 87, 87, 91, 93, 96, 101, 32.13366 + 104, 107, 109, 113, 115, 116, 116, 116, 117, 118, 119, 119, 119, 121, 121, 121, 32.13367 + 122, 122, 123, 122, 122, 122, 121, 121, 120, 119, 119, 119, 120, 120, 120, 121, 32.13368 + 123, 124, 127, 129, 130, 135, 134, 133, 132, 132, 134, 137, 141, 135, 137, 140, 32.13369 + 143, 143, 142, 140, 138, 135, 131, 129, 132, 138, 141, 139, 135, 134, 129, 125, 32.13370 + 126, 130, 132, 130, 126, 122, 122, 122, 121, 121, 121, 122, 122, 122, 122, 122, 32.13371 + 121, 119, 119, 118, 118, 122, 122, 123, 123, 125, 127, 129, 133, 115, 128, 130, 32.13372 + 125, 118, 124, 127, 128, 112, 113, 114, 113, 111, 108, 105, 103, 90, 81, 72, 32.13373 + 69, 73, 76, 73, 68, 57, 58, 59, 68, 63, 56, 45, 43, 45, 61, 63, 32.13374 + 80, 87, 80, 93, 96, 105, 86, 95, 74, 101, 78, 88, 75, 75, 102, 89, 32.13375 + 66, 81, 255, 21, 13, 37, 74, 86, 86, 89, 90, 93, 95, 100, 103, 106, 32.13376 + 108, 111, 114, 117, 118, 118, 118, 119, 119, 120, 120, 117, 117, 118, 118, 118, 32.13377 + 119, 118, 118, 121, 120, 120, 119, 119, 119, 120, 120, 122, 123, 124, 125, 126, 32.13378 + 128, 130, 133, 130, 130, 129, 128, 129, 133, 139, 145, 141, 140, 140, 140, 140, 32.13379 + 139, 138, 136, 140, 138, 136, 137, 140, 140, 136, 133, 133, 130, 127, 126, 128, 32.13380 + 129, 129, 128, 123, 122, 122, 121, 121, 121, 121, 121, 122, 121, 122, 121, 120, 32.13381 + 119, 119, 119, 122, 123, 123, 123, 124, 125, 126, 129, 113, 131, 128, 124, 112, 32.13382 + 126, 124, 121, 105, 110, 116, 118, 114, 106, 97, 92, 98, 94, 83, 74, 78, 32.13383 + 86, 84, 74, 66, 68, 64, 74, 61, 57, 42, 42, 49, 66, 61, 73, 85, 32.13384 + 78, 87, 95, 101, 91, 98, 82, 97, 80, 89, 81, 74, 92, 90, 73, 73, 32.13385 + 255, 18, 19, 50, 84, 88, 90, 97, 93, 96, 98, 102, 105, 107, 110, 112, 32.13386 + 115, 120, 120, 120, 120, 121, 121, 121, 122, 119, 119, 120, 120, 120, 121, 120, 32.13387 + 120, 125, 125, 125, 125, 125, 126, 127, 128, 128, 129, 129, 130, 131, 133, 135, 32.13388 + 136, 129, 131, 132, 134, 137, 141, 148, 155, 149, 149, 146, 140, 134, 133, 138, 32.13389 + 143, 141, 141, 141, 141, 140, 139, 137, 135, 133, 134, 133, 130, 128, 128, 130, 32.13390 + 133, 126, 125, 125, 123, 122, 121, 121, 121, 124, 124, 123, 123, 122, 121, 122, 32.13391 + 122, 128, 128, 127, 126, 124, 123, 121, 121, 123, 132, 124, 130, 113, 122, 113, 32.13392 + 116, 107, 108, 112, 116, 115, 106, 93, 83, 90, 96, 89, 78, 85, 103, 101, 32.13393 + 85, 74, 76, 66, 75, 57, 58, 43, 49, 61, 73, 58, 68, 86, 79, 83, 32.13394 + 89, 91, 97, 105, 94, 88, 79, 87, 91, 77, 82, 91, 82, 66, 255, 17, 32.13395 + 23, 59, 91, 91, 95, 105, 98, 99, 101, 105, 108, 110, 112, 114, 117, 120, 32.13396 + 120, 121, 121, 121, 121, 121, 122, 124, 124, 125, 125, 125, 126, 125, 125, 125, 32.13397 + 125, 125, 126, 126, 127, 129, 129, 127, 127, 127, 127, 129, 130, 132, 133, 131, 32.13398 + 135, 140, 144, 148, 152, 158, 164, 151, 151, 146, 135, 124, 123, 135, 146, 136, 32.13399 + 138, 141, 141, 140, 139, 138, 139, 129, 131, 132, 128, 124, 123, 127, 132, 129, 32.13400 + 128, 127, 125, 124, 123, 122, 122, 125, 125, 125, 124, 124, 125, 124, 124, 124, 32.13401 + 125, 126, 127, 128, 126, 125, 125, 134, 133, 122, 138, 119, 117, 104, 115, 111, 32.13402 + 107, 106, 112, 119, 119, 109, 98, 76, 89, 89, 79, 91, 116, 115, 95, 77, 32.13403 + 77, 63, 72, 53, 59, 47, 57, 67, 74, 51, 60, 83, 77, 75, 77, 80, 32.13404 + 99, 110, 102, 80, 75, 84, 98, 79, 75, 91, 87, 61, 255, 20, 30, 59, 32.13405 + 92, 99, 88, 88, 97, 99, 101, 105, 108, 109, 110, 111, 113, 120, 120, 121, 32.13406 + 121, 121, 122, 122, 122, 121, 123, 124, 126, 126, 125, 123, 123, 126, 126, 125, 32.13407 + 125, 124, 125, 126, 126, 120, 127, 135, 137, 133, 131, 133, 137, 131, 132, 135, 32.13408 + 140, 146, 151, 156, 157, 155, 150, 143, 139, 136, 135, 138, 142, 138, 134, 150, 32.13409 + 136, 133, 144, 133, 142, 134, 135, 136, 132, 129, 127, 128, 131, 125, 124, 124, 32.13410 + 123, 121, 122, 125, 127, 122, 128, 130, 126, 123, 125, 126, 125, 130, 127, 125, 32.13411 + 125, 127, 127, 125, 122, 130, 128, 129, 131, 122, 107, 102, 106, 107, 109, 107, 32.13412 + 106, 108, 111, 107, 101, 94, 84, 98, 109, 99, 102, 112, 106, 74, 75, 53, 32.13413 + 63, 53, 57, 42, 56, 63, 67, 69, 68, 68, 70, 68, 65, 71, 95, 110, 32.13414 + 89, 97, 70, 78, 95, 79, 89, 98, 83, 59, 190, 83, 85, 88, 93, 93, 32.13415 + 95, 99, 102, 101, 104, 108, 111, 112, 113, 115, 117, 121, 121, 121, 121, 122, 32.13416 + 122, 122, 123, 122, 123, 125, 126, 127, 126, 124, 123, 127, 126, 126, 126, 126, 32.13417 + 127, 128, 129, 125, 129, 133, 133, 129, 131, 135, 140, 141, 137, 135, 140, 148, 32.13418 + 155, 156, 155, 152, 149, 145, 142, 140, 138, 140, 141, 140, 137, 150, 139, 139, 32.13419 + 150, 139, 146, 140, 140, 138, 135, 132, 130, 130, 131, 127, 127, 128, 127, 125, 32.13420 + 124, 124, 124, 122, 128, 130, 126, 124, 125, 126, 125, 130, 127, 124, 124, 126, 32.13421 + 127, 127, 126, 126, 122, 123, 125, 119, 106, 101, 105, 108, 106, 100, 94, 95, 32.13422 + 100, 101, 98, 103, 92, 101, 110, 102, 106, 118, 114, 91, 93, 74, 80, 72, 32.13423 + 75, 63, 77, 69, 68, 67, 69, 70, 68, 65, 63, 66, 92, 112, 96, 100, 32.13424 + 72, 75, 89, 82, 92, 97, 82, 60, 127, 135, 126, 108, 92, 90, 101, 107, 32.13425 + 102, 104, 107, 111, 113, 115, 116, 119, 121, 120, 120, 121, 121, 122, 122, 122, 32.13426 + 122, 122, 123, 125, 126, 127, 126, 124, 123, 127, 127, 127, 127, 127, 129, 130, 32.13427 + 131, 134, 135, 135, 133, 132, 135, 142, 148, 147, 142, 138, 144, 154, 162, 161, 32.13428 + 157, 149, 148, 146, 144, 142, 141, 142, 141, 141, 139, 147, 140, 143, 152, 144, 32.13429 + 145, 143, 141, 137, 134, 134, 132, 130, 128, 129, 129, 129, 128, 127, 125, 123, 32.13430 + 121, 127, 132, 133, 130, 129, 130, 131, 129, 129, 127, 123, 123, 124, 126, 126, 32.13431 + 126, 124, 118, 116, 120, 118, 109, 104, 106, 107, 105, 99, 92, 92, 96, 96, 32.13432 + 93, 106, 96, 99, 105, 102, 108, 118, 119, 106, 108, 91, 89, 79, 77, 67, 32.13433 + 80, 79, 70, 67, 72, 74, 67, 61, 60, 61, 89, 115, 108, 105, 79, 77, 32.13434 + 87, 83, 92, 93, 78, 61, 134, 138, 122, 101, 91, 93, 103, 104, 99, 106, 32.13435 + 107, 111, 113, 115, 116, 119, 122, 119, 119, 119, 120, 120, 120, 121, 121, 121, 32.13436 + 122, 124, 125, 125, 125, 123, 122, 126, 126, 126, 127, 127, 129, 131, 132, 135, 32.13437 + 136, 134, 133, 132, 135, 141, 146, 137, 137, 137, 144, 153, 159, 158, 156, 147, 32.13438 + 147, 145, 141, 139, 142, 143, 142, 141, 140, 142, 139, 142, 148, 142, 138, 139, 32.13439 + 135, 131, 130, 132, 132, 129, 126, 129, 127, 125, 123, 123, 123, 122, 122, 127, 32.13440 + 131, 132, 129, 129, 130, 131, 128, 127, 126, 125, 124, 124, 122, 121, 120, 125, 32.13441 + 116, 113, 119, 120, 113, 108, 110, 98, 101, 101, 97, 94, 93, 88, 82, 94, 32.13442 + 88, 88, 94, 98, 103, 110, 114, 102, 105, 93, 85, 79, 74, 67, 77, 80, 32.13443 + 68, 62, 69, 71, 61, 52, 51, 54, 81, 107, 109, 100, 81, 79, 85, 79, 32.13444 + 88, 83, 69, 60, 129, 129, 105, 88, 94, 100, 100, 98, 102, 106, 108, 110, 32.13445 + 112, 113, 114, 118, 120, 117, 117, 117, 118, 118, 119, 119, 119, 119, 121, 122, 32.13446 + 124, 124, 123, 121, 121, 125, 125, 125, 126, 126, 128, 130, 131, 127, 128, 128, 32.13447 + 129, 128, 130, 132, 135, 125, 131, 137, 144, 145, 147, 146, 146, 146, 147, 142, 32.13448 + 135, 134, 140, 144, 143, 142, 144, 140, 140, 142, 142, 141, 131, 133, 130, 126, 32.13449 + 127, 130, 131, 130, 127, 128, 123, 118, 115, 117, 120, 123, 124, 120, 123, 124, 32.13450 + 121, 121, 124, 123, 119, 123, 125, 126, 125, 123, 118, 114, 113, 122, 113, 111, 32.13451 + 117, 119, 113, 109, 111, 93, 97, 98, 93, 88, 86, 80, 75, 79, 78, 77, 32.13452 + 84, 94, 97, 99, 105, 96, 100, 95, 85, 90, 84, 81, 87, 75, 64, 57, 32.13453 + 62, 63, 54, 45, 42, 49, 69, 92, 102, 88, 81, 80, 84, 74, 82, 72, 32.13454 + 60, 60, 138, 130, 106, 91, 99, 104, 100, 100, 110, 109, 110, 112, 112, 112, 32.13455 + 114, 117, 119, 117, 117, 117, 118, 118, 118, 119, 119, 120, 121, 122, 124, 124, 32.13456 + 124, 122, 121, 125, 125, 125, 126, 126, 128, 129, 131, 127, 129, 130, 132, 132, 32.13457 + 132, 132, 133, 132, 139, 147, 149, 146, 143, 143, 144, 146, 148, 142, 132, 131, 32.13458 + 139, 144, 141, 143, 151, 143, 145, 145, 140, 143, 131, 131, 129, 128, 128, 131, 32.13459 + 132, 132, 131, 129, 122, 115, 111, 115, 120, 124, 126, 121, 123, 124, 121, 122, 32.13460 + 125, 124, 119, 122, 124, 127, 125, 121, 116, 112, 112, 118, 111, 111, 117, 117, 32.13461 + 109, 106, 109, 101, 102, 99, 90, 84, 84, 84, 82, 72, 75, 71, 78, 92, 32.13462 + 92, 88, 96, 101, 104, 102, 89, 100, 90, 87, 84, 78, 74, 68, 67, 66, 32.13463 + 62, 54, 47, 57, 68, 84, 100, 83, 88, 88, 88, 74, 82, 67, 55, 63, 32.13464 + 126, 119, 109, 100, 103, 104, 104, 106, 112, 115, 115, 116, 115, 114, 115, 118, 32.13465 + 121, 118, 118, 119, 119, 120, 120, 120, 120, 122, 123, 124, 126, 126, 125, 123, 32.13466 + 123, 128, 128, 128, 128, 127, 128, 129, 131, 136, 136, 136, 137, 139, 140, 139, 32.13467 + 140, 146, 149, 151, 153, 151, 149, 149, 149, 146, 149, 145, 134, 133, 141, 144, 32.13468 + 139, 140, 153, 144, 149, 146, 137, 146, 134, 130, 131, 131, 130, 130, 130, 131, 32.13469 + 133, 133, 125, 118, 115, 118, 123, 125, 125, 128, 130, 129, 127, 129, 132, 131, 32.13470 + 125, 123, 124, 125, 124, 119, 117, 117, 119, 115, 112, 114, 119, 116, 106, 103, 32.13471 + 107, 103, 106, 103, 95, 88, 87, 88, 87, 73, 78, 70, 73, 90, 87, 80, 32.13472 + 90, 101, 102, 102, 86, 105, 93, 87, 77, 83, 88, 85, 75, 72, 74, 68, 32.13473 + 57, 68, 71, 80, 101, 81, 94, 92, 88, 81, 88, 68, 56, 69, 129, 97, 32.13474 + 102, 103, 101, 103, 110, 112, 108, 119, 120, 120, 118, 117, 118, 120, 123, 120, 32.13475 + 120, 121, 121, 121, 122, 122, 122, 124, 125, 126, 128, 128, 127, 125, 125, 130, 32.13476 + 130, 129, 129, 129, 130, 130, 131, 138, 138, 136, 136, 138, 141, 141, 141, 149, 32.13477 + 147, 144, 145, 148, 151, 150, 150, 145, 150, 148, 138, 136, 143, 144, 136, 135, 32.13478 + 152, 143, 149, 146, 135, 148, 136, 129, 132, 133, 131, 127, 126, 128, 131, 137, 32.13479 + 130, 123, 120, 123, 126, 125, 124, 131, 132, 130, 128, 131, 135, 132, 126, 125, 32.13480 + 125, 124, 121, 117, 118, 122, 128, 117, 115, 119, 124, 119, 107, 104, 109, 95, 32.13481 + 102, 105, 100, 93, 89, 84, 79, 77, 81, 68, 69, 86, 83, 74, 85, 85, 32.13482 + 87, 93, 82, 110, 102, 99, 86, 81, 92, 90, 76, 72, 78, 73, 60, 68, 32.13483 + 67, 73, 96, 75, 91, 86, 79, 88, 94, 71, 59, 74, 117, 96, 92, 94, 32.13484 + 105, 113, 113, 112, 113, 124, 121, 119, 118, 119, 121, 123, 123, 123, 123, 123, 32.13485 + 122, 122, 121, 121, 121, 126, 126, 127, 127, 125, 125, 126, 127, 129, 129, 129, 32.13486 + 130, 131, 132, 132, 134, 138, 141, 143, 141, 137, 139, 146, 152, 147, 152, 156, 32.13487 + 155, 150, 149, 151, 156, 144, 147, 150, 149, 144, 140, 138, 138, 145, 145, 145, 32.13488 + 144, 143, 140, 136, 135, 134, 131, 129, 128, 129, 131, 130, 131, 124, 127, 127, 32.13489 + 124, 120, 120, 126, 132, 128, 128, 128, 128, 128, 128, 127, 127, 119, 123, 128, 32.13490 + 127, 122, 117, 115, 116, 125, 120, 112, 107, 105, 103, 100, 97, 96, 98, 100, 32.13491 + 100, 97, 95, 93, 93, 80, 74, 69, 72, 71, 69, 72, 79, 86, 95, 92, 32.13492 + 88, 98, 100, 93, 90, 92, 87, 90, 85, 69, 66, 71, 69, 67, 67, 69, 32.13493 + 74, 79, 81, 81, 80, 82, 79, 79, 69, 55, 106, 86, 83, 85, 93, 99, 32.13494 + 105, 115, 125, 124, 121, 120, 119, 120, 122, 123, 124, 125, 124, 123, 123, 122, 32.13495 + 123, 123, 124, 125, 125, 127, 128, 127, 127, 129, 131, 129, 129, 129, 130, 131, 32.13496 + 133, 135, 136, 134, 136, 138, 138, 136, 135, 137, 141, 150, 148, 147, 151, 154, 32.13497 + 157, 156, 155, 157, 154, 149, 147, 145, 143, 140, 137, 146, 145, 144, 143, 141, 32.13498 + 139, 137, 136, 134, 133, 130, 129, 130, 132, 132, 131, 125, 126, 126, 122, 118, 32.13499 + 118, 122, 128, 129, 129, 130, 130, 130, 129, 128, 126, 127, 128, 129, 126, 121, 32.13500 + 117, 114, 114, 118, 116, 113, 113, 114, 113, 110, 107, 97, 95, 93, 92, 92, 32.13501 + 91, 89, 87, 80, 76, 73, 73, 70, 65, 67, 73, 84, 93, 89, 86, 95, 32.13502 + 96, 88, 87, 92, 94, 101, 94, 72, 65, 72, 74, 64, 64, 64, 65, 67, 32.13503 + 70, 75, 79, 79, 80, 82, 79, 64, 90, 65, 71, 83, 96, 102, 105, 113, 32.13504 + 119, 122, 121, 121, 121, 121, 122, 124, 125, 127, 126, 124, 123, 123, 124, 126, 32.13505 + 128, 124, 126, 128, 129, 129, 130, 133, 135, 129, 130, 130, 132, 134, 136, 138, 32.13506 + 139, 135, 137, 139, 142, 143, 142, 140, 140, 154, 154, 154, 153, 154, 156, 158, 32.13507 + 159, 162, 154, 145, 143, 145, 146, 143, 138, 146, 145, 143, 140, 138, 137, 136, 32.13508 + 137, 134, 132, 129, 129, 130, 131, 131, 130, 130, 131, 130, 126, 122, 121, 124, 32.13509 + 128, 130, 130, 130, 129, 129, 128, 126, 125, 123, 121, 120, 120, 122, 122, 122, 32.13510 + 122, 111, 112, 111, 110, 108, 104, 98, 93, 102, 98, 94, 93, 94, 94, 91, 32.13511 + 88, 82, 81, 80, 77, 70, 63, 63, 67, 79, 87, 85, 82, 90, 89, 82, 32.13512 + 82, 90, 97, 109, 101, 74, 63, 70, 74, 69, 67, 64, 61, 62, 66, 74, 32.13513 + 80, 72, 78, 83, 89, 75, 71, 53, 58, 68, 79, 90, 98, 105, 110, 119, 32.13514 + 120, 122, 122, 123, 123, 125, 126, 128, 126, 123, 122, 122, 124, 127, 129, 124, 32.13515 + 126, 128, 129, 129, 129, 131, 133, 129, 130, 131, 132, 134, 137, 139, 141, 136, 32.13516 + 137, 139, 144, 148, 150, 150, 149, 153, 158, 161, 157, 147, 145, 152, 161, 153, 32.13517 + 147, 140, 139, 141, 143, 142, 140, 144, 142, 140, 137, 135, 134, 134, 135, 133, 32.13518 + 130, 127, 127, 128, 129, 129, 128, 130, 131, 130, 127, 124, 123, 126, 129, 130, 32.13519 + 129, 126, 124, 123, 122, 122, 122, 121, 117, 113, 113, 117, 121, 121, 121, 117, 32.13520 + 117, 116, 114, 109, 103, 96, 92, 97, 97, 96, 95, 94, 93, 91, 90, 83, 32.13521 + 85, 85, 80, 72, 65, 63, 65, 71, 78, 78, 77, 84, 83, 77, 80, 84, 32.13522 + 92, 104, 97, 72, 61, 65, 66, 74, 68, 62, 60, 63, 69, 73, 76, 67, 32.13523 + 75, 79, 93, 79, 58, 55, 45, 36, 38, 55, 80, 101, 112, 114, 118, 122, 32.13524 + 124, 124, 124, 127, 129, 128, 126, 123, 121, 121, 123, 126, 128, 125, 127, 128, 32.13525 + 128, 127, 126, 128, 129, 129, 130, 131, 132, 134, 137, 139, 141, 138, 137, 138, 32.13526 + 143, 146, 150, 151, 152, 155, 157, 156, 152, 148, 148, 152, 155, 145, 145, 142, 32.13527 + 140, 138, 138, 139, 140, 142, 140, 137, 134, 133, 132, 132, 132, 131, 128, 125, 32.13528 + 125, 126, 127, 127, 126, 123, 123, 123, 122, 121, 121, 123, 125, 129, 126, 121, 32.13529 + 117, 115, 114, 117, 118, 126, 120, 112, 108, 107, 107, 107, 106, 107, 108, 108, 32.13530 + 106, 102, 99, 96, 94, 82, 87, 91, 91, 87, 83, 83, 84, 80, 82, 82, 32.13531 + 77, 71, 66, 64, 63, 63, 70, 71, 72, 78, 76, 71, 78, 79, 81, 90, 32.13532 + 89, 72, 64, 64, 59, 72, 64, 58, 60, 67, 71, 68, 64, 63, 72, 71, 32.13533 + 92, 77, 55, 47, 36, 26, 27, 48, 77, 97, 102, 108, 113, 120, 124, 124, 32.13534 + 125, 128, 131, 129, 127, 125, 123, 122, 123, 125, 126, 126, 127, 128, 128, 126, 32.13535 + 125, 126, 128, 129, 130, 130, 132, 134, 136, 138, 139, 144, 145, 145, 146, 146, 32.13536 + 149, 151, 152, 167, 156, 147, 153, 164, 171, 165, 156, 148, 149, 146, 142, 137, 32.13537 + 135, 136, 139, 140, 139, 136, 133, 132, 131, 130, 129, 130, 127, 125, 124, 125, 32.13538 + 126, 126, 126, 123, 123, 122, 122, 123, 124, 125, 125, 126, 125, 121, 116, 113, 32.13539 + 112, 113, 113, 119, 114, 107, 102, 100, 100, 101, 102, 106, 108, 108, 105, 99, 32.13540 + 94, 91, 90, 81, 84, 87, 86, 83, 80, 79, 80, 77, 78, 76, 71, 68, 32.13541 + 67, 64, 59, 58, 65, 65, 69, 74, 69, 65, 74, 74, 72, 80, 83, 75, 32.13542 + 72, 70, 61, 71, 65, 63, 67, 74, 76, 69, 63, 61, 71, 64, 92, 76, 32.13543 + 57, 41, 39, 38, 41, 57, 77, 88, 87, 102, 110, 119, 125, 125, 126, 130, 32.13544 + 133, 130, 129, 128, 126, 125, 124, 123, 124, 126, 128, 129, 129, 128, 128, 130, 32.13545 + 132, 131, 131, 131, 132, 133, 135, 137, 137, 141, 145, 149, 150, 149, 149, 149, 32.13546 + 151, 163, 156, 151, 156, 166, 171, 166, 158, 153, 149, 143, 138, 137, 138, 138, 32.13547 + 139, 139, 139, 138, 136, 134, 132, 130, 129, 131, 129, 126, 125, 126, 128, 128, 32.13548 + 127, 128, 127, 126, 126, 127, 127, 127, 126, 123, 124, 124, 122, 120, 115, 110, 32.13549 + 107, 107, 106, 103, 99, 96, 97, 100, 105, 117, 121, 124, 121, 114, 107, 101, 32.13550 + 99, 97, 91, 85, 84, 86, 87, 83, 79, 81, 80, 74, 69, 69, 71, 67, 32.13551 + 58, 57, 63, 64, 66, 71, 63, 59, 69, 67, 65, 74, 80, 76, 76, 77, 32.13552 + 68, 67, 68, 72, 75, 77, 76, 72, 70, 62, 73, 63, 95, 78, 61, 51, 32.13553 + 50, 43, 39, 46, 65, 80, 83, 99, 107, 118, 124, 126, 126, 130, 134, 132, 32.13554 + 132, 130, 129, 127, 126, 124, 123, 125, 127, 129, 130, 130, 131, 133, 135, 131, 32.13555 + 131, 131, 132, 133, 134, 135, 136, 128, 136, 144, 148, 146, 144, 144, 148, 145, 32.13556 + 152, 157, 155, 149, 147, 151, 156, 154, 145, 134, 131, 135, 141, 142, 142, 139, 32.13557 + 140, 140, 139, 137, 134, 131, 129, 133, 130, 128, 127, 128, 129, 129, 129, 129, 32.13558 + 127, 125, 125, 125, 124, 123, 120, 122, 125, 129, 130, 127, 119, 110, 104, 109, 32.13559 + 109, 106, 100, 93, 90, 93, 97, 95, 102, 110, 114, 110, 104, 100, 98, 110, 32.13560 + 96, 81, 79, 86, 90, 84, 76, 87, 84, 77, 70, 72, 76, 70, 60, 59, 32.13561 + 63, 64, 66, 69, 59, 54, 65, 60, 60, 71, 78, 74, 76, 80, 74, 59, 32.13562 + 66, 74, 75, 71, 67, 68, 72, 62, 75, 64, 99, 82, 62, 71, 69, 73, 32.13563 + 81, 78, 69, 70, 77, 93, 109, 115, 111, 118, 135, 137, 126, 130, 128, 128, 32.13564 + 127, 126, 127, 128, 128, 129, 131, 132, 131, 129, 127, 127, 128, 123, 133, 131, 32.13565 + 120, 119, 128, 124, 110, 120, 124, 126, 128, 134, 139, 138, 133, 137, 140, 142, 32.13566 + 142, 141, 139, 139, 139, 142, 145, 146, 142, 136, 134, 138, 143, 146, 146, 144, 32.13567 + 142, 138, 134, 131, 128, 132, 131, 130, 129, 128, 128, 128, 128, 128, 127, 126, 32.13568 + 125, 123, 122, 121, 121, 120, 120, 121, 122, 122, 123, 125, 125, 118, 118, 116, 32.13569 + 107, 97, 92, 94, 98, 101, 101, 96, 102, 114, 108, 96, 96, 106, 106, 98, 32.13570 + 85, 77, 79, 85, 88, 88, 82, 78, 75, 71, 66, 67, 72, 53, 58, 64, 32.13571 + 68, 65, 57, 48, 42, 51, 50, 71, 72, 82, 77, 84, 66, 63, 72, 79, 32.13572 + 78, 75, 71, 69, 67, 67, 62, 80, 86, 83, 62, 76, 79, 90, 98, 96, 32.13573 + 86, 78, 75, 83, 92, 105, 114, 121, 127, 128, 125, 132, 131, 129, 129, 128, 32.13574 + 128, 128, 129, 129, 133, 138, 140, 136, 128, 122, 118, 117, 123, 121, 112, 109, 32.13575 + 109, 101, 89, 86, 94, 97, 92, 88, 93, 103, 109, 108, 112, 117, 120, 123, 32.13576 + 128, 135, 140, 134, 138, 144, 146, 144, 140, 139, 139, 141, 141, 139, 138, 135, 32.13577 + 131, 128, 126, 131, 130, 129, 128, 127, 127, 127, 127, 126, 126, 125, 124, 122, 32.13578 + 121, 120, 120, 121, 121, 122, 123, 124, 124, 125, 126, 122, 123, 122, 117, 108, 32.13579 + 101, 96, 96, 103, 114, 110, 103, 111, 113, 104, 99, 92, 95, 93, 87, 85, 32.13580 + 90, 95, 97, 88, 84, 80, 78, 73, 67, 66, 69, 65, 63, 58, 51, 47, 32.13581 + 45, 47, 50, 43, 42, 64, 65, 79, 76, 85, 69, 70, 71, 73, 77, 75, 32.13582 + 71, 66, 65, 74, 68, 83, 88, 83, 64, 82, 92, 103, 108, 107, 101, 91, 32.13583 + 80, 81, 83, 96, 116, 125, 123, 125, 130, 132, 131, 129, 128, 126, 126, 125, 32.13584 + 127, 130, 134, 139, 140, 135, 128, 121, 117, 107, 109, 111, 113, 111, 104, 94, 32.13585 + 87, 75, 77, 74, 66, 62, 69, 81, 87, 103, 105, 109, 108, 106, 108, 115, 32.13586 + 121, 128, 131, 136, 141, 144, 144, 143, 142, 140, 140, 140, 139, 137, 134, 131, 32.13587 + 129, 129, 128, 127, 126, 125, 125, 125, 125, 126, 126, 125, 124, 123, 122, 121, 32.13588 + 120, 122, 122, 123, 123, 124, 125, 125, 126, 126, 127, 127, 126, 122, 113, 101, 32.13589 + 95, 101, 122, 119, 104, 106, 112, 107, 101, 93, 96, 95, 91, 89, 90, 90, 32.13590 + 87, 86, 83, 82, 82, 76, 68, 65, 66, 64, 64, 63, 57, 49, 43, 42, 32.13591 + 42, 44, 41, 62, 60, 71, 67, 76, 59, 73, 66, 67, 73, 75, 70, 66, 32.13592 + 66, 76, 69, 83, 86, 140, 68, 81, 96, 106, 105, 103, 104, 102, 96, 90, 32.13593 + 86, 88, 102, 115, 122, 126, 129, 130, 128, 126, 124, 123, 123, 122, 123, 131, 32.13594 + 132, 133, 131, 127, 124, 123, 123, 105, 103, 107, 117, 116, 104, 93, 91, 87, 32.13595 + 78, 67, 64, 72, 81, 80, 74, 76, 83, 91, 94, 96, 100, 109, 117, 124, 32.13596 + 122, 122, 125, 132, 138, 143, 145, 136, 137, 138, 138, 137, 135, 132, 130, 127, 32.13597 + 127, 125, 124, 123, 123, 123, 123, 127, 126, 126, 125, 124, 123, 122, 122, 122, 32.13598 + 122, 122, 123, 123, 124, 124, 124, 127, 127, 127, 130, 130, 122, 109, 99, 95, 32.13599 + 114, 116, 106, 104, 103, 99, 102, 99, 100, 96, 89, 85, 84, 79, 74, 83, 32.13600 + 80, 81, 83, 80, 72, 67, 66, 61, 64, 66, 62, 54, 44, 38, 35, 43, 32.13601 + 40, 57, 54, 64, 61, 70, 55, 66, 59, 61, 70, 72, 67, 68, 77, 73, 32.13602 + 67, 80, 83, 255, 81, 73, 92, 106, 103, 99, 104, 108, 109, 104, 96, 86, 32.13603 + 83, 96, 115, 123, 119, 129, 127, 125, 124, 122, 122, 122, 123, 128, 129, 130, 32.13604 + 128, 125, 122, 121, 121, 109, 103, 106, 114, 112, 96, 86, 85, 86, 82, 78, 32.13605 + 80, 89, 96, 90, 80, 76, 82, 89, 90, 88, 87, 89, 92, 111, 110, 109, 32.13606 + 113, 119, 126, 133, 135, 127, 128, 129, 130, 130, 130, 128, 127, 126, 125, 124, 32.13607 + 123, 122, 122, 122, 122, 124, 124, 123, 122, 122, 121, 121, 120, 119, 119, 121, 32.13608 + 121, 121, 122, 122, 122, 124, 122, 123, 127, 130, 126, 115, 107, 93, 102, 107, 32.13609 + 111, 110, 96, 92, 106, 95, 96, 92, 85, 81, 82, 81, 79, 80, 76, 77, 32.13610 + 81, 81, 76, 70, 68, 69, 67, 61, 55, 49, 45, 43, 43, 35, 31, 49, 32.13611 + 47, 60, 61, 74, 61, 51, 52, 60, 67, 66, 64, 73, 87, 73, 69, 83, 32.13612 + 84, 255, 203, 74, 90, 104, 107, 104, 104, 109, 113, 116, 111, 98, 87, 92, 32.13613 + 109, 117, 113, 130, 128, 127, 126, 125, 126, 126, 127, 125, 130, 134, 135, 130, 32.13614 + 123, 116, 112, 109, 104, 104, 111, 111, 103, 97, 99, 89, 100, 110, 111, 110, 32.13615 + 111, 112, 111, 114, 116, 115, 110, 102, 92, 84, 80, 97, 100, 105, 110, 113, 32.13616 + 115, 117, 118, 122, 123, 125, 127, 129, 129, 128, 128, 126, 125, 124, 122, 122, 32.13617 + 121, 121, 121, 120, 120, 119, 119, 118, 118, 117, 117, 119, 119, 120, 120, 120, 32.13618 + 120, 120, 120, 122, 120, 121, 125, 130, 129, 123, 117, 101, 101, 103, 114, 118, 32.13619 + 100, 94, 110, 99, 101, 98, 89, 82, 82, 84, 85, 79, 74, 73, 77, 80, 32.13620 + 76, 73, 72, 70, 68, 68, 68, 68, 64, 55, 48, 39, 34, 48, 43, 54, 32.13621 + 53, 67, 54, 41, 51, 61, 63, 60, 63, 75, 87, 75, 75, 90, 87, 255, 32.13622 + 255, 93, 94, 98, 103, 103, 103, 107, 113, 119, 118, 115, 111, 104, 100, 105, 32.13623 + 111, 129, 127, 126, 127, 126, 127, 128, 129, 128, 132, 137, 139, 135, 127, 121, 32.13624 + 117, 114, 111, 110, 113, 117, 119, 121, 123, 113, 126, 134, 132, 127, 126, 129, 32.13625 + 132, 126, 126, 125, 125, 125, 122, 117, 113, 99, 104, 109, 111, 110, 110, 113, 32.13626 + 116, 119, 121, 123, 126, 128, 129, 129, 129, 126, 125, 124, 122, 122, 121, 121, 32.13627 + 122, 120, 120, 119, 119, 119, 118, 118, 118, 120, 120, 120, 120, 121, 121, 121, 32.13628 + 121, 121, 121, 124, 128, 132, 131, 127, 124, 114, 112, 107, 111, 119, 111, 103, 32.13629 + 111, 108, 114, 113, 101, 89, 86, 89, 91, 82, 75, 70, 73, 76, 75, 73, 32.13630 + 72, 67, 67, 71, 80, 87, 82, 66, 52, 48, 40, 51, 40, 48, 43, 55, 32.13631 + 41, 41, 55, 63, 58, 56, 65, 74, 75, 69, 73, 91, 86, 255, 255, 116, 32.13632 + 101, 91, 93, 98, 99, 106, 116, 112, 113, 123, 130, 113, 89, 90, 107, 126, 32.13633 + 126, 125, 125, 126, 126, 128, 129, 133, 136, 136, 136, 133, 131, 131, 132, 127, 32.13634 + 125, 120, 116, 118, 125, 128, 128, 136, 136, 133, 128, 130, 132, 129, 122, 136, 32.13635 + 132, 127, 125, 125, 123, 118, 112, 113, 115, 115, 112, 107, 109, 118, 126, 113, 32.13636 + 114, 118, 121, 123, 125, 125, 125, 127, 126, 124, 124, 122, 123, 123, 122, 123, 32.13637 + 123, 122, 122, 122, 122, 121, 121, 121, 121, 121, 121, 122, 122, 122, 122, 122, 32.13638 + 124, 128, 132, 135, 134, 130, 127, 121, 122, 110, 104, 114, 119, 110, 109, 108, 32.13639 + 118, 121, 111, 99, 95, 100, 104, 87, 77, 70, 72, 73, 73, 71, 72, 71, 32.13640 + 63, 57, 63, 74, 78, 71, 61, 44, 36, 46, 37, 44, 42, 53, 41, 45, 32.13641 + 60, 64, 55, 54, 67, 71, 63, 58, 66, 86, 81, 255, 255, 140, 123, 100, 32.13642 + 85, 82, 91, 101, 109, 115, 110, 114, 124, 126, 115, 105, 102, 126, 127, 126, 32.13643 + 128, 129, 131, 132, 134, 134, 134, 134, 135, 135, 134, 134, 133, 131, 130, 130, 32.13644 + 130, 130, 131, 132, 133, 133, 130, 130, 130, 132, 131, 127, 123, 132, 131, 132, 32.13645 + 131, 129, 127, 125, 122, 118, 116, 118, 124, 131, 131, 124, 116, 117, 121, 118, 32.13646 + 106, 103, 111, 113, 108, 124, 128, 128, 128, 124, 122, 124, 125, 122, 122, 121, 32.13647 + 121, 122, 121, 118, 119, 123, 123, 123, 123, 124, 124, 124, 124, 127, 128, 129, 32.13648 + 130, 132, 133, 134, 135, 126, 126, 119, 112, 112, 119, 119, 113, 120, 122, 126, 32.13649 + 126, 117, 105, 101, 104, 113, 101, 83, 70, 70, 76, 74, 67, 69, 60, 55, 32.13650 + 60, 64, 62, 61, 64, 43, 44, 43, 38, 38, 43, 45, 45, 43, 53, 60, 32.13651 + 58, 59, 66, 68, 63, 61, 60, 94, 78, 255, 255, 135, 133, 118, 99, 95, 32.13652 + 108, 115, 113, 124, 127, 125, 124, 123, 125, 123, 119, 110, 116, 126, 134, 138, 32.13653 + 138, 136, 135, 136, 136, 136, 137, 136, 135, 136, 135, 132, 132, 131, 131, 131, 32.13654 + 132, 133, 134, 134, 131, 129, 128, 130, 131, 129, 128, 119, 120, 122, 126, 128, 32.13655 + 129, 131, 130, 120, 116, 114, 117, 123, 127, 126, 123, 136, 140, 137, 127, 124, 32.13656 + 131, 133, 129, 124, 126, 127, 125, 121, 119, 120, 121, 122, 122, 121, 122, 121, 32.13657 + 121, 120, 120, 120, 121, 121, 121, 122, 122, 122, 122, 126, 126, 127, 128, 131, 32.13658 + 132, 133, 134, 127, 125, 118, 110, 110, 113, 112, 106, 101, 102, 107, 113, 111, 32.13659 + 101, 92, 91, 115, 111, 100, 87, 80, 79, 74, 67, 64, 53, 47, 51, 56, 32.13660 + 57, 58, 60, 56, 57, 53, 43, 34, 34, 37, 37, 34, 48, 58, 56, 53, 32.13661 + 57, 64, 65, 67, 66, 97, 82, 255, 255, 255, 141, 129, 101, 86, 94, 95, 32.13662 + 83, 103, 118, 125, 122, 126, 138, 141, 136, 106, 115, 126, 135, 139, 140, 138, 32.13663 + 137, 138, 138, 138, 139, 138, 137, 137, 136, 133, 133, 133, 132, 132, 132, 133, 32.13664 + 133, 132, 129, 125, 124, 126, 129, 130, 131, 130, 130, 131, 130, 130, 130, 130, 32.13665 + 129, 128, 124, 119, 119, 121, 123, 122, 120, 127, 130, 127, 120, 120, 127, 128, 32.13666 + 125, 126, 127, 127, 125, 121, 119, 119, 120, 120, 121, 121, 121, 122, 121, 121, 32.13667 + 122, 120, 121, 121, 121, 121, 121, 122, 122, 124, 124, 125, 126, 128, 130, 131, 32.13668 + 132, 131, 128, 121, 112, 109, 108, 106, 101, 110, 107, 109, 117, 121, 115, 107, 32.13669 + 103, 106, 110, 108, 96, 84, 77, 68, 62, 53, 46, 43, 47, 52, 53, 55, 32.13670 + 57, 65, 70, 69, 59, 49, 42, 36, 31, 31, 45, 57, 58, 51, 51, 59, 32.13671 + 66, 68, 70, 97, 255, 255, 255, 255, 130, 117, 89, 68, 65, 63, 58, 54, 32.13672 + 65, 76, 85, 101, 123, 144, 155, 113, 120, 126, 131, 133, 134, 134, 138, 138, 32.13673 + 139, 139, 139, 138, 137, 136, 136, 134, 134, 133, 133, 131, 130, 130, 130, 128, 32.13674 + 127, 125, 124, 126, 128, 130, 131, 141, 141, 137, 136, 133, 131, 129, 129, 127, 32.13675 + 125, 125, 125, 126, 126, 125, 123, 128, 131, 129, 125, 127, 132, 132, 130, 126, 32.13676 + 128, 127, 127, 124, 123, 123, 123, 118, 119, 119, 120, 121, 121, 121, 120, 121, 32.13677 + 122, 122, 122, 122, 122, 123, 123, 122, 122, 123, 124, 126, 127, 128, 130, 132, 32.13678 + 130, 124, 117, 112, 108, 104, 101, 109, 104, 103, 108, 112, 111, 108, 109, 97, 32.13679 + 103, 104, 94, 82, 71, 61, 53, 39, 47, 56, 62, 62, 60, 62, 64, 65, 32.13680 + 72, 80, 82, 78, 67, 50, 35, 31, 42, 53, 59, 56, 52, 56, 61, 60, 32.13681 + 66, 91, 255, 255, 255, 255, 207, 98, 84, 67, 59, 66, 80, 71, 53, 41, 32.13682 + 42, 47, 56, 80, 105, 101, 109, 120, 127, 130, 132, 133, 136, 139, 139, 138, 32.13683 + 138, 137, 137, 136, 135, 134, 134, 132, 130, 128, 128, 128, 128, 126, 127, 129, 32.13684 + 130, 130, 131, 130, 132, 132, 132, 131, 132, 133, 134, 136, 136, 122, 122, 124, 32.13685 + 124, 124, 128, 133, 137, 121, 122, 120, 116, 115, 116, 116, 113, 120, 121, 121, 32.13686 + 122, 122, 123, 123, 123, 117, 117, 118, 119, 119, 119, 119, 119, 119, 119, 119, 32.13687 + 119, 120, 120, 120, 120, 120, 120, 121, 122, 124, 125, 126, 128, 129, 127, 123, 32.13688 + 118, 112, 105, 102, 101, 94, 93, 97, 104, 108, 107, 108, 111, 101, 103, 99, 32.13689 + 88, 76, 67, 55, 45, 36, 59, 83, 92, 85, 78, 78, 81, 72, 76, 83, 32.13690 + 89, 95, 89, 70, 51, 31, 32, 40, 54, 60, 54, 51, 53, 52, 62, 85, 32.13691 + 255, 255, 255, 255, 255, 202, 90, 78, 70, 81, 102, 98, 69, 47, 46, 40, 32.13692 + 26, 29, 45, 73, 89, 111, 127, 134, 136, 135, 137, 139, 140, 139, 138, 138, 32.13693 + 136, 136, 135, 135, 134, 132, 129, 128, 127, 126, 125, 127, 130, 133, 134, 133, 32.13694 + 132, 132, 133, 131, 132, 132, 133, 135, 137, 139, 142, 139, 135, 130, 122, 117, 32.13695 + 119, 128, 135, 142, 141, 139, 135, 132, 128, 126, 123, 113, 113, 113, 115, 117, 32.13696 + 119, 119, 118, 118, 118, 118, 119, 119, 119, 119, 118, 117, 117, 117, 117, 118, 32.13697 + 118, 118, 118, 119, 120, 120, 122, 123, 124, 125, 126, 123, 122, 120, 117, 111, 32.13698 + 102, 98, 100, 86, 90, 99, 110, 115, 113, 113, 115, 105, 105, 98, 84, 70, 32.13699 + 61, 50, 41, 52, 80, 109, 116, 107, 98, 97, 99, 89, 87, 84, 87, 94, 32.13700 + 97, 86, 73, 36, 27, 29, 47, 59, 55, 47, 46, 51, 62, 139, 255, 255, 32.13701 + 255, 255, 255, 255, 101, 88, 83, 89, 98, 94, 71, 54, 59, 65, 61, 57, 32.13702 + 59, 66, 84, 109, 128, 136, 138, 140, 142, 141, 141, 141, 140, 140, 138, 137, 32.13703 + 136, 136, 136, 133, 130, 129, 127, 125, 125, 126, 128, 130, 129, 127, 126, 129, 32.13704 + 132, 135, 134, 133, 134, 134, 136, 138, 140, 150, 148, 144, 134, 124, 119, 121, 32.13705 + 125, 130, 129, 129, 129, 126, 122, 118, 118, 117, 116, 115, 117, 120, 122, 121, 32.13706 + 119, 121, 121, 121, 121, 121, 120, 119, 119, 118, 118, 118, 118, 118, 118, 119, 32.13707 + 119, 118, 119, 120, 121, 123, 124, 125, 126, 122, 120, 119, 119, 111, 100, 97, 32.13708 + 100, 88, 84, 86, 95, 103, 104, 103, 104, 105, 109, 105, 89, 72, 62, 57, 32.13709 + 54, 73, 96, 118, 122, 113, 108, 107, 105, 100, 98, 94, 91, 93, 98, 96, 32.13710 + 92, 61, 43, 38, 52, 61, 54, 46, 48, 55, 67, 255, 255, 255, 255, 255, 32.13711 + 255, 255, 109, 97, 97, 96, 93, 134, 105, 68, 53, 59, 71, 75, 71, 80, 32.13712 + 95, 114, 128, 132, 136, 141, 146, 142, 143, 142, 142, 140, 140, 139, 138, 138, 32.13713 + 138, 135, 133, 130, 127, 126, 125, 124, 124, 124, 121, 118, 119, 124, 128, 126, 32.13714 + 126, 126, 127, 129, 134, 138, 139, 139, 146, 152, 150, 140, 132, 127, 127, 126, 32.13715 + 126, 129, 133, 134, 132, 129, 131, 126, 125, 123, 125, 127, 128, 127, 124, 124, 32.13716 + 124, 123, 123, 123, 122, 120, 120, 122, 122, 122, 122, 122, 122, 123, 123, 118, 32.13717 + 118, 120, 121, 123, 124, 125, 126, 123, 122, 122, 122, 114, 101, 97, 101, 111, 32.13718 + 96, 84, 85, 95, 101, 104, 104, 105, 115, 116, 101, 82, 74, 74, 77, 87, 32.13719 + 103, 115, 114, 109, 108, 107, 103, 101, 105, 105, 101, 98, 100, 101, 102, 89, 32.13720 + 66, 54, 62, 64, 54, 48, 53, 59, 68, 255, 255, 255, 255, 255, 255, 255, 32.13721 + 110, 101, 103, 104, 104, 108, 97, 84, 76, 66, 62, 76, 95, 89, 101, 115, 32.13722 + 126, 132, 135, 139, 142, 148, 145, 142, 138, 136, 135, 135, 136, 136, 134, 135, 32.13723 + 137, 131, 122, 122, 126, 132, 120, 118, 117, 112, 117, 123, 117, 125, 126, 125, 32.13724 + 125, 126, 130, 133, 134, 137, 142, 144, 142, 142, 140, 130, 116, 123, 126, 130, 32.13725 + 133, 132, 129, 124, 120, 127, 125, 122, 124, 126, 127, 123, 119, 120, 124, 127, 32.13726 + 127, 124, 121, 121, 121, 121, 122, 122, 122, 123, 122, 121, 120, 122, 122, 121, 32.13727 + 121, 120, 120, 121, 122, 118, 121, 114, 107, 113, 121, 111, 92, 106, 97, 90, 32.13728 + 92, 94, 95, 98, 102, 100, 108, 116, 106, 88, 91, 95, 85, 91, 112, 103, 32.13729 + 105, 96, 113, 106, 115, 111, 112, 106, 107, 115, 111, 104, 108, 111, 86, 47, 32.13730 + 55, 54, 54, 35, 46, 51, 67, 255, 255, 255, 255, 255, 255, 255, 107, 96, 32.13731 + 99, 102, 99, 103, 105, 104, 102, 104, 110, 113, 112, 99, 109, 120, 129, 133, 32.13732 + 135, 137, 142, 144, 143, 141, 138, 136, 136, 136, 137, 141, 136, 133, 133, 133, 32.13733 + 134, 139, 145, 120, 114, 118, 124, 124, 128, 133, 127, 127, 133, 135, 134, 140, 32.13734 + 150, 151, 145, 128, 137, 142, 138, 132, 131, 129, 126, 124, 125, 128, 130, 132, 32.13735 + 132, 132, 132, 132, 126, 120, 120, 124, 130, 133, 133, 122, 124, 125, 124, 121, 32.13736 + 120, 121, 123, 123, 123, 122, 122, 122, 122, 122, 122, 123, 122, 122, 121, 121, 32.13737 + 119, 119, 118, 117, 120, 114, 107, 114, 124, 117, 100, 96, 90, 85, 86, 93, 32.13738 + 101, 104, 105, 105, 102, 108, 110, 98, 98, 108, 112, 104, 108, 98, 106, 119, 32.13739 + 133, 123, 121, 115, 114, 110, 111, 121, 119, 114, 115, 114, 93, 51, 50, 48, 32.13740 + 55, 39, 48, 57, 131, 255, 255, 255, 255, 255, 255, 255, 104, 91, 100, 106, 32.13741 + 102, 103, 112, 113, 111, 117, 126, 118, 100, 104, 111, 120, 125, 128, 128, 130, 32.13742 + 133, 136, 137, 137, 137, 137, 137, 137, 137, 144, 138, 134, 139, 144, 148, 151, 32.13743 + 154, 148, 135, 126, 114, 96, 86, 81, 71, 83, 77, 86, 111, 126, 132, 147, 32.13744 + 166, 156, 146, 133, 124, 126, 133, 135, 132, 127, 126, 124, 125, 126, 129, 133, 32.13745 + 135, 134, 129, 124, 124, 127, 133, 136, 137, 127, 127, 126, 124, 122, 122, 124, 32.13746 + 126, 124, 123, 121, 120, 120, 120, 122, 123, 122, 122, 123, 121, 119, 116, 115, 32.13747 + 113, 114, 117, 112, 105, 112, 125, 122, 108, 105, 102, 94, 87, 93, 103, 103, 32.13748 + 95, 112, 101, 107, 117, 105, 97, 102, 109, 113, 107, 106, 112, 138, 134, 124, 32.13749 + 118, 110, 109, 108, 111, 119, 122, 118, 115, 119, 108, 62, 47, 41, 59, 48, 32.13750 + 53, 64, 255, 255, 255, 255, 255, 255, 255, 255, 101, 89, 103, 113, 110, 111, 32.13751 + 113, 111, 107, 108, 109, 100, 87, 106, 110, 115, 120, 122, 122, 124, 126, 128, 32.13752 + 129, 131, 134, 135, 136, 136, 136, 142, 141, 143, 151, 160, 160, 153, 145, 126, 32.13753 + 108, 94, 81, 65, 66, 75, 73, 78, 81, 86, 84, 76, 78, 94, 114, 146, 32.13754 + 141, 133, 128, 128, 130, 129, 128, 134, 132, 129, 126, 126, 127, 129, 131, 130, 32.13755 + 130, 130, 132, 134, 134, 131, 128, 130, 130, 128, 127, 126, 125, 126, 126, 123, 32.13756 + 122, 119, 117, 117, 118, 121, 122, 120, 121, 122, 121, 118, 113, 110, 108, 109, 32.13757 + 114, 109, 100, 105, 118, 118, 108, 116, 115, 105, 92, 96, 108, 105, 90, 108, 32.13758 + 103, 114, 123, 111, 100, 96, 92, 100, 102, 121, 129, 156, 133, 126, 123, 108, 32.13759 + 103, 104, 109, 113, 121, 122, 113, 122, 121, 75, 48, 38, 63, 55, 54, 128, 32.13760 + 255, 255, 255, 255, 255, 255, 255, 255, 97, 88, 102, 112, 111, 117, 113, 113, 32.13761 + 115, 110, 99, 96, 99, 109, 111, 116, 119, 121, 123, 125, 126, 121, 124, 126, 32.13762 + 129, 131, 133, 133, 134, 140, 141, 144, 153, 162, 162, 150, 138, 94, 81, 77, 32.13763 + 75, 74, 91, 115, 123, 104, 140, 143, 100, 60, 59, 66, 60, 73, 88, 108, 32.13764 + 121, 121, 117, 117, 119, 137, 136, 136, 134, 132, 131, 130, 130, 130, 130, 132, 32.13765 + 134, 134, 133, 130, 128, 129, 129, 129, 130, 129, 127, 124, 122, 122, 120, 118, 32.13766 + 116, 115, 116, 118, 119, 119, 119, 119, 118, 116, 112, 108, 106, 107, 112, 106, 32.13767 + 94, 95, 107, 109, 100, 103, 106, 99, 90, 97, 112, 112, 98, 99, 103, 116, 32.13768 + 118, 113, 114, 111, 94, 85, 93, 122, 140, 175, 151, 141, 133, 112, 102, 105, 32.13769 + 109, 111, 124, 129, 113, 116, 124, 82, 51, 37, 64, 56, 49, 255, 255, 255, 32.13770 + 255, 255, 255, 255, 255, 255, 95, 88, 96, 105, 105, 116, 113, 117, 122, 111, 32.13771 + 93, 90, 101, 108, 111, 115, 120, 123, 124, 124, 124, 120, 121, 124, 126, 127, 32.13772 + 130, 131, 133, 139, 140, 139, 144, 152, 158, 153, 143, 120, 110, 109, 105, 98, 32.13773 + 106, 119, 122, 124, 140, 154, 143, 102, 65, 57, 70, 46, 38, 45, 71, 101, 32.13774 + 119, 121, 117, 130, 130, 132, 133, 132, 131, 131, 130, 135, 133, 131, 131, 131, 32.13775 + 134, 137, 139, 127, 127, 127, 129, 129, 127, 122, 118, 120, 119, 118, 116, 116, 32.13776 + 117, 117, 118, 118, 118, 118, 117, 116, 113, 110, 109, 110, 116, 110, 95, 92, 32.13777 + 101, 103, 95, 95, 97, 94, 89, 94, 105, 107, 100, 102, 106, 111, 108, 104, 32.13778 + 113, 114, 96, 92, 98, 114, 138, 173, 163, 139, 119, 111, 97, 101, 104, 104, 32.13779 + 123, 134, 113, 108, 121, 84, 51, 35, 60, 51, 43, 255, 255, 255, 255, 255, 32.13780 + 255, 255, 255, 255, 98, 94, 97, 103, 107, 111, 113, 116, 113, 103, 93, 93, 32.13781 + 98, 112, 114, 118, 122, 127, 128, 126, 124, 123, 123, 124, 125, 126, 129, 130, 32.13782 + 133, 137, 139, 135, 136, 141, 150, 151, 144, 135, 128, 128, 125, 111, 112, 116, 32.13783 + 115, 135, 129, 139, 156, 132, 84, 67, 83, 86, 59, 44, 61, 96, 122, 129, 32.13784 + 127, 130, 130, 130, 131, 132, 133, 134, 135, 140, 139, 138, 137, 135, 137, 140, 32.13785 + 142, 132, 130, 128, 128, 129, 128, 124, 121, 121, 120, 120, 119, 119, 119, 119, 32.13786 + 118, 120, 119, 118, 118, 117, 116, 115, 116, 116, 123, 117, 101, 95, 102, 103, 32.13787 + 96, 101, 100, 98, 96, 96, 97, 100, 100, 113, 107, 110, 112, 106, 107, 106, 32.13788 + 93, 107, 116, 114, 133, 151, 155, 128, 113, 111, 93, 97, 101, 99, 125, 140, 32.13789 + 117, 106, 120, 86, 53, 35, 56, 48, 255, 255, 255, 255, 255, 255, 255, 255, 32.13790 + 255, 255, 101, 101, 102, 108, 115, 108, 115, 114, 101, 97, 107, 114, 112, 121, 32.13791 + 123, 128, 132, 136, 134, 133, 129, 126, 126, 125, 125, 126, 128, 132, 133, 135, 32.13792 + 138, 138, 135, 140, 146, 146, 138, 136, 129, 129, 123, 111, 110, 116, 115, 109, 32.13793 + 131, 139, 131, 131, 142, 128, 100, 116, 115, 117, 117, 111, 109, 123, 140, 141, 32.13794 + 139, 138, 138, 139, 141, 144, 145, 143, 145, 148, 149, 145, 141, 137, 135, 139, 32.13795 + 134, 130, 128, 131, 131, 128, 126, 121, 122, 122, 122, 122, 121, 120, 120, 121, 32.13796 + 120, 119, 120, 119, 119, 120, 121, 121, 129, 124, 107, 100, 106, 107, 100, 104, 32.13797 + 103, 103, 105, 102, 100, 104, 111, 116, 104, 111, 127, 123, 114, 107, 100, 110, 32.13798 + 131, 125, 136, 133, 148, 131, 131, 115, 95, 100, 105, 103, 132, 150, 127, 107, 32.13799 + 121, 88, 56, 37, 56, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13800 + 92, 93, 101, 105, 104, 116, 110, 101, 94, 94, 100, 110, 116, 120, 125, 129, 32.13801 + 132, 132, 130, 129, 127, 126, 126, 126, 126, 127, 129, 130, 131, 139, 135, 132, 32.13802 + 131, 134, 135, 132, 129, 124, 124, 124, 124, 121, 119, 116, 115, 111, 119, 125, 32.13803 + 126, 122, 120, 124, 129, 147, 148, 149, 142, 133, 127, 127, 129, 147, 148, 150, 32.13804 + 145, 141, 146, 160, 173, 159, 153, 147, 145, 147, 147, 141, 137, 134, 134, 134, 32.13805 + 134, 133, 130, 126, 125, 128, 127, 125, 124, 122, 123, 124, 126, 122, 124, 124, 32.13806 + 121, 117, 116, 118, 122, 129, 124, 126, 97, 98, 98, 115, 98, 101, 106, 102, 32.13807 + 118, 95, 100, 100, 123, 132, 115, 112, 120, 121, 120, 112, 99, 135, 131, 126, 32.13808 + 128, 131, 133, 131, 127, 115, 107, 92, 80, 109, 111, 166, 119, 108, 117, 90, 32.13809 + 44, 55, 51, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 97, 32.13810 + 104, 106, 105, 106, 101, 96, 96, 101, 111, 120, 126, 125, 129, 132, 134, 133, 32.13811 + 130, 129, 127, 123, 124, 125, 128, 128, 128, 128, 128, 135, 136, 135, 134, 131, 32.13812 + 129, 128, 129, 121, 122, 123, 124, 126, 126, 126, 125, 129, 134, 138, 138, 133, 32.13813 + 133, 139, 146, 144, 147, 148, 146, 141, 140, 143, 147, 147, 154, 161, 160, 153, 32.13814 + 151, 155, 160, 159, 154, 148, 146, 148, 148, 143, 139, 134, 134, 133, 132, 129, 32.13815 + 127, 125, 125, 123, 123, 122, 121, 120, 120, 121, 122, 124, 124, 122, 119, 116, 32.13816 + 116, 120, 126, 133, 131, 122, 102, 104, 104, 109, 104, 97, 101, 99, 117, 102, 32.13817 + 104, 98, 112, 125, 125, 128, 132, 130, 118, 106, 103, 120, 131, 137, 145, 157, 32.13818 + 165, 148, 125, 118, 109, 91, 83, 106, 114, 164, 122, 117, 123, 89, 39, 43, 32.13819 + 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 103, 105, 104, 32.13820 + 103, 98, 95, 94, 99, 108, 119, 126, 129, 130, 133, 135, 135, 133, 130, 129, 32.13821 + 128, 120, 122, 125, 128, 129, 127, 125, 125, 131, 135, 138, 135, 129, 124, 124, 32.13822 + 126, 119, 120, 121, 122, 124, 126, 129, 130, 135, 140, 142, 140, 137, 139, 145, 32.13823 + 153, 141, 144, 145, 144, 143, 145, 150, 155, 152, 159, 165, 164, 159, 154, 153, 32.13824 + 155, 157, 153, 148, 147, 148, 148, 144, 141, 137, 136, 133, 131, 129, 128, 126, 32.13825 + 127, 125, 125, 124, 123, 122, 122, 123, 123, 126, 125, 122, 118, 116, 117, 121, 32.13826 + 127, 133, 139, 116, 108, 109, 110, 100, 113, 94, 97, 100, 119, 110, 108, 96, 32.13827 + 101, 125, 137, 133, 127, 126, 117, 119, 142, 139, 153, 154, 144, 148, 162, 156, 32.13828 + 136, 126, 116, 93, 88, 96, 113, 150, 117, 121, 125, 87, 42, 41, 114, 255, 32.13829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 104, 103, 99, 96, 94, 32.13830 + 93, 94, 101, 112, 121, 124, 124, 130, 133, 134, 133, 131, 130, 129, 129, 121, 32.13831 + 122, 124, 125, 125, 125, 124, 124, 131, 134, 137, 134, 130, 126, 123, 122, 125, 32.13832 + 125, 123, 123, 123, 124, 126, 128, 131, 134, 138, 139, 137, 138, 142, 147, 146, 32.13833 + 147, 147, 145, 144, 146, 149, 153, 159, 160, 160, 157, 154, 153, 156, 159, 154, 32.13834 + 151, 147, 146, 147, 147, 144, 142, 140, 138, 134, 131, 129, 128, 128, 129, 126, 32.13835 + 125, 125, 124, 123, 123, 124, 123, 126, 124, 122, 119, 117, 116, 117, 120, 123, 32.13836 + 139, 111, 112, 109, 110, 94, 123, 96, 100, 108, 119, 115, 106, 97, 97, 118, 32.13837 + 139, 131, 118, 122, 113, 119, 157, 167, 176, 172, 151, 141, 149, 159, 162, 136, 32.13838 + 125, 99, 95, 84, 103, 128, 103, 114, 115, 77, 47, 48, 255, 255, 255, 255, 32.13839 + 255, 255, 255, 255, 255, 255, 255, 255, 101, 102, 97, 91, 88, 88, 89, 94, 32.13840 + 102, 112, 118, 119, 119, 127, 129, 130, 130, 129, 128, 130, 130, 124, 124, 122, 32.13841 + 121, 121, 123, 124, 126, 134, 134, 132, 133, 133, 131, 125, 120, 130, 128, 127, 32.13842 + 126, 125, 126, 126, 128, 129, 135, 139, 142, 141, 141, 142, 145, 154, 153, 152, 32.13843 + 150, 149, 150, 151, 153, 160, 158, 154, 151, 149, 150, 153, 155, 151, 148, 146, 32.13844 + 144, 144, 143, 141, 140, 140, 137, 132, 128, 126, 126, 127, 128, 121, 120, 121, 32.13845 + 121, 120, 119, 119, 118, 120, 119, 119, 117, 115, 111, 107, 106, 110, 134, 112, 32.13846 + 112, 105, 106, 96, 130, 100, 105, 115, 116, 113, 100, 98, 99, 106, 132, 132, 32.13847 + 124, 127, 108, 101, 130, 121, 121, 123, 124, 122, 118, 121, 129, 140, 130, 112, 32.13848 + 101, 81, 95, 114, 97, 116, 107, 59, 43, 49, 255, 255, 255, 255, 255, 255, 32.13849 + 255, 255, 255, 255, 255, 255, 98, 99, 93, 88, 88, 83, 87, 96, 105, 112, 32.13850 + 118, 121, 122, 126, 127, 128, 127, 126, 127, 129, 130, 126, 124, 122, 120, 118, 32.13851 + 121, 125, 127, 136, 133, 130, 132, 136, 135, 130, 124, 125, 124, 124, 124, 124, 32.13852 + 125, 125, 125, 127, 133, 140, 144, 144, 144, 143, 143, 149, 150, 150, 151, 152, 32.13853 + 153, 153, 154, 157, 156, 155, 155, 154, 151, 146, 142, 149, 148, 146, 144, 142, 32.13854 + 140, 139, 139, 136, 134, 129, 126, 123, 123, 123, 123, 121, 121, 122, 122, 121, 32.13855 + 120, 119, 118, 114, 114, 114, 114, 113, 108, 101, 98, 105, 125, 116, 110, 104, 32.13856 + 105, 105, 128, 104, 107, 118, 111, 111, 99, 105, 104, 109, 126, 128, 123, 123, 32.13857 + 112, 112, 134, 134, 114, 104, 118, 131, 129, 123, 124, 136, 125, 128, 108, 88, 32.13858 + 92, 113, 101, 133, 111, 49, 39, 118, 255, 255, 255, 255, 255, 255, 255, 255, 32.13859 + 255, 255, 255, 255, 97, 99, 93, 91, 94, 83, 90, 102, 111, 115, 119, 123, 32.13860 + 127, 129, 129, 128, 126, 125, 125, 126, 129, 126, 124, 123, 122, 121, 122, 124, 32.13861 + 125, 133, 134, 133, 134, 135, 136, 134, 134, 124, 125, 126, 127, 127, 127, 127, 32.13862 + 126, 127, 131, 135, 140, 140, 142, 141, 142, 143, 144, 147, 150, 153, 155, 155, 32.13863 + 155, 155, 155, 155, 157, 158, 154, 146, 139, 150, 149, 148, 145, 141, 139, 138, 32.13864 + 139, 137, 135, 132, 129, 126, 125, 124, 124, 122, 123, 124, 124, 123, 122, 121, 32.13865 + 120, 116, 115, 114, 115, 115, 113, 107, 104, 112, 120, 122, 106, 107, 109, 120, 32.13866 + 120, 109, 109, 119, 108, 118, 107, 115, 111, 116, 121, 123, 121, 115, 115, 132, 32.13867 + 154, 152, 131, 110, 107, 113, 119, 117, 116, 127, 118, 140, 109, 97, 88, 113, 32.13868 + 105, 137, 111, 43, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13869 + 255, 255, 98, 99, 96, 96, 100, 88, 97, 110, 116, 116, 118, 123, 129, 132, 32.13870 + 132, 130, 127, 124, 124, 125, 127, 124, 124, 124, 125, 123, 124, 124, 123, 131, 32.13871 + 134, 136, 136, 133, 134, 138, 142, 134, 135, 136, 138, 136, 135, 133, 132, 129, 32.13872 + 132, 134, 137, 138, 141, 143, 145, 147, 148, 151, 156, 160, 161, 160, 159, 156, 32.13873 + 153, 152, 154, 158, 158, 153, 149, 151, 151, 149, 146, 141, 139, 138, 139, 139, 32.13874 + 138, 136, 133, 130, 128, 127, 126, 118, 119, 121, 121, 120, 118, 117, 116, 121, 32.13875 + 119, 117, 118, 120, 120, 116, 115, 120, 118, 126, 103, 112, 115, 129, 111, 116, 32.13876 + 110, 119, 109, 127, 119, 128, 119, 109, 114, 128, 129, 114, 111, 127, 139, 152, 32.13877 + 152, 140, 122, 111, 115, 120, 119, 122, 113, 147, 109, 100, 82, 110, 104, 121, 32.13878 + 99, 35, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 32.13879 + 98, 100, 105, 100, 83, 93, 105, 114, 114, 112, 118, 123, 123, 128, 127, 126, 32.13880 + 125, 124, 124, 124, 124, 126, 126, 126, 126, 125, 127, 129, 130, 130, 133, 138, 32.13881 + 142, 142, 139, 135, 133, 138, 137, 136, 135, 133, 133, 133, 133, 129, 135, 142, 32.13882 + 144, 140, 140, 142, 145, 152, 152, 153, 154, 156, 157, 159, 160, 167, 169, 167, 32.13883 + 158, 154, 153, 150, 144, 144, 144, 145, 144, 142, 140, 139, 137, 137, 139, 139, 32.13884 + 136, 132, 129, 129, 131, 125, 123, 123, 122, 121, 122, 124, 125, 121, 119, 117, 32.13885 + 115, 115, 115, 116, 119, 122, 107, 112, 113, 120, 124, 110, 114, 117, 116, 114, 32.13886 + 114, 120, 128, 129, 125, 112, 108, 111, 116, 117, 116, 125, 138, 142, 161, 145, 32.13887 + 120, 118, 114, 107, 112, 118, 117, 123, 136, 109, 78, 99, 117, 121, 83, 108, 32.13888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 102, 101, 32.13889 + 101, 97, 86, 101, 107, 112, 112, 116, 122, 124, 123, 128, 127, 126, 125, 124, 32.13890 + 124, 124, 124, 127, 127, 127, 127, 128, 131, 132, 133, 136, 137, 139, 142, 145, 32.13891 + 144, 140, 137, 144, 144, 141, 140, 135, 134, 132, 132, 132, 137, 141, 142, 140, 32.13892 + 139, 142, 147, 151, 154, 156, 159, 161, 161, 160, 160, 159, 162, 162, 157, 155, 32.13893 + 157, 156, 151, 145, 145, 145, 145, 143, 141, 140, 138, 136, 138, 137, 134, 131, 32.13894 + 128, 128, 129, 129, 128, 126, 123, 122, 121, 121, 121, 119, 120, 121, 120, 118, 32.13895 + 117, 116, 119, 113, 106, 114, 112, 112, 113, 102, 111, 119, 119, 118, 119, 125, 32.13896 + 134, 136, 131, 121, 112, 108, 110, 111, 111, 119, 132, 140, 154, 149, 130, 120, 32.13897 + 119, 117, 117, 113, 114, 119, 132, 110, 84, 105, 118, 112, 70, 255, 255, 255, 32.13898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 107, 101, 94, 91, 32.13899 + 89, 108, 110, 109, 112, 118, 124, 125, 121, 129, 128, 127, 126, 126, 126, 126, 32.13900 + 126, 128, 128, 128, 129, 131, 133, 135, 136, 139, 138, 136, 141, 146, 148, 144, 32.13901 + 139, 146, 146, 143, 142, 138, 137, 135, 135, 135, 138, 141, 142, 140, 141, 144, 32.13902 + 149, 147, 150, 156, 160, 161, 160, 157, 156, 154, 157, 158, 156, 155, 157, 156, 32.13903 + 154, 144, 144, 144, 143, 142, 141, 140, 139, 137, 138, 137, 135, 131, 129, 128, 32.13904 + 129, 129, 128, 127, 124, 122, 121, 121, 121, 117, 121, 125, 125, 121, 117, 116, 32.13905 + 117, 107, 104, 116, 110, 103, 102, 97, 109, 122, 122, 123, 125, 132, 141, 143, 32.13906 + 139, 139, 122, 109, 108, 110, 113, 121, 131, 138, 148, 155, 145, 124, 120, 123, 32.13907 + 117, 109, 113, 118, 128, 107, 90, 110, 116, 99, 121, 255, 255, 255, 255, 255, 32.13908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 109, 99, 87, 88, 92, 109, 32.13909 + 110, 110, 111, 114, 118, 120, 120, 129, 128, 127, 126, 126, 126, 127, 127, 127, 32.13910 + 129, 129, 131, 131, 135, 136, 138, 140, 135, 132, 136, 143, 147, 143, 138, 140, 32.13911 + 139, 139, 138, 138, 137, 137, 137, 136, 138, 139, 138, 138, 141, 144, 149, 141, 32.13912 + 144, 149, 152, 153, 153, 152, 151, 154, 156, 156, 155, 153, 152, 150, 149, 143, 32.13913 + 143, 142, 141, 140, 139, 139, 138, 138, 138, 137, 135, 132, 130, 129, 129, 125, 32.13914 + 123, 123, 122, 122, 121, 122, 122, 117, 121, 125, 124, 120, 116, 115, 117, 105, 32.13915 + 101, 110, 101, 94, 99, 97, 111, 120, 122, 124, 127, 135, 145, 147, 144, 148, 32.13916 + 125, 107, 105, 110, 114, 123, 132, 136, 141, 159, 156, 127, 117, 118, 108, 104, 32.13917 + 116, 121, 124, 103, 92, 111, 112, 83, 255, 255, 255, 255, 255, 255, 255, 255, 32.13918 + 255, 255, 255, 255, 255, 255, 255, 96, 106, 96, 84, 89, 97, 105, 108, 110, 32.13919 + 110, 108, 108, 112, 118, 123, 122, 122, 121, 122, 123, 124, 124, 127, 128, 129, 32.13920 + 130, 132, 135, 136, 138, 140, 134, 131, 135, 143, 147, 144, 138, 135, 135, 134, 32.13921 + 134, 133, 133, 133, 133, 133, 133, 132, 132, 132, 136, 140, 144, 139, 141, 143, 32.13922 + 145, 147, 149, 150, 151, 152, 152, 152, 153, 151, 147, 145, 144, 140, 140, 139, 32.13923 + 138, 137, 136, 136, 136, 136, 135, 133, 132, 130, 128, 127, 125, 122, 121, 121, 32.13924 + 121, 120, 118, 118, 118, 118, 120, 121, 120, 116, 113, 113, 116, 107, 98, 101, 32.13925 + 91, 92, 104, 104, 115, 118, 120, 123, 127, 136, 146, 147, 143, 142, 118, 100, 32.13926 + 100, 109, 115, 123, 130, 127, 132, 154, 158, 129, 112, 110, 101, 98, 116, 121, 32.13927 + 117, 98, 94, 114, 107, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13928 + 255, 255, 255, 255, 255, 95, 102, 94, 89, 97, 103, 105, 107, 112, 112, 107, 32.13929 + 102, 107, 114, 115, 115, 115, 115, 117, 119, 120, 121, 129, 130, 130, 131, 133, 32.13930 + 135, 137, 138, 141, 138, 136, 139, 144, 147, 145, 140, 137, 135, 135, 133, 131, 32.13931 + 129, 128, 128, 129, 129, 128, 128, 130, 132, 137, 139, 142, 143, 144, 146, 148, 32.13932 + 151, 154, 155, 148, 147, 148, 152, 152, 147, 145, 146, 139, 139, 137, 136, 135, 32.13933 + 134, 135, 135, 133, 131, 129, 127, 127, 125, 124, 121, 124, 123, 122, 120, 118, 32.13934 + 114, 113, 111, 119, 118, 117, 116, 114, 113, 112, 112, 106, 97, 96, 85, 91, 32.13935 + 109, 109, 117, 117, 120, 123, 127, 137, 146, 148, 143, 135, 115, 102, 107, 118, 32.13936 + 124, 129, 134, 121, 126, 142, 149, 129, 110, 104, 103, 98, 116, 115, 108, 96, 32.13937 + 101, 115, 95, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13938 + 255, 255, 203, 97, 98, 93, 97, 107, 108, 110, 108, 111, 114, 111, 105, 106, 32.13939 + 111, 112, 112, 113, 115, 117, 119, 122, 125, 133, 134, 134, 134, 134, 136, 137, 32.13940 + 138, 142, 142, 142, 144, 146, 147, 145, 142, 139, 138, 136, 135, 134, 132, 131, 32.13941 + 130, 133, 132, 131, 132, 134, 137, 139, 140, 144, 146, 149, 152, 154, 155, 157, 32.13942 + 158, 148, 145, 148, 154, 154, 148, 146, 148, 140, 139, 137, 135, 134, 134, 135, 32.13943 + 135, 134, 131, 128, 127, 128, 127, 124, 120, 124, 123, 123, 121, 118, 115, 112, 32.13944 + 110, 119, 117, 115, 116, 118, 116, 110, 105, 102, 95, 96, 86, 92, 110, 109, 32.13945 + 115, 118, 121, 126, 130, 138, 147, 148, 144, 130, 114, 108, 118, 130, 133, 134, 32.13946 + 137, 126, 131, 133, 136, 127, 106, 97, 108, 110, 121, 109, 99, 95, 107, 111, 32.13947 + 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13948 + 101, 97, 96, 93, 103, 115, 114, 116, 111, 110, 116, 117, 112, 107, 109, 114, 32.13949 + 115, 116, 119, 121, 124, 128, 130, 135, 136, 135, 135, 136, 137, 138, 138, 141, 32.13950 + 142, 143, 145, 144, 144, 142, 141, 139, 138, 138, 138, 138, 138, 138, 139, 139, 32.13951 + 138, 138, 139, 142, 144, 145, 146, 143, 147, 151, 156, 158, 160, 158, 157, 151, 32.13952 + 148, 150, 156, 155, 148, 145, 147, 142, 140, 138, 136, 135, 134, 136, 136, 137, 32.13953 + 134, 131, 130, 131, 130, 127, 123, 121, 120, 122, 121, 120, 117, 116, 115, 118, 32.13954 + 115, 114, 118, 122, 120, 110, 101, 96, 94, 101, 90, 91, 108, 106, 112, 120, 32.13955 + 124, 127, 132, 141, 149, 150, 144, 121, 110, 108, 122, 132, 135, 132, 135, 135, 32.13956 + 139, 129, 127, 125, 103, 91, 111, 125, 128, 107, 93, 95, 111, 105, 255, 255, 32.13957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 90, 32.13958 + 93, 104, 114, 118, 117, 121, 118, 116, 116, 114, 115, 112, 111, 116, 118, 118, 32.13959 + 116, 118, 123, 128, 130, 138, 138, 138, 139, 141, 141, 139, 138, 140, 148, 146, 32.13960 + 144, 146, 141, 134, 139, 132, 136, 141, 142, 140, 136, 135, 135, 136, 141, 144, 32.13961 + 145, 141, 138, 138, 140, 154, 161, 162, 156, 155, 158, 159, 156, 144, 148, 151, 32.13962 + 152, 152, 149, 145, 142, 141, 141, 140, 139, 137, 136, 135, 135, 135, 132, 128, 32.13963 + 125, 125, 126, 124, 123, 120, 119, 119, 119, 120, 119, 118, 117, 114, 118, 119, 32.13964 + 117, 118, 120, 116, 108, 95, 109, 112, 99, 90, 99, 113, 118, 129, 121, 121, 32.13965 + 133, 144, 144, 137, 132, 117, 107, 116, 133, 133, 131, 132, 132, 132, 133, 130, 32.13966 + 117, 104, 101, 109, 119, 115, 123, 95, 100, 116, 113, 96, 255, 255, 255, 255, 32.13967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 93, 99, 109, 32.13968 + 118, 121, 120, 121, 118, 114, 112, 112, 113, 113, 114, 118, 120, 119, 119, 120, 32.13969 + 124, 128, 132, 131, 134, 137, 141, 145, 147, 146, 145, 149, 156, 151, 147, 149, 32.13970 + 143, 137, 142, 134, 136, 138, 137, 134, 133, 134, 136, 144, 144, 145, 147, 149, 32.13971 + 149, 148, 148, 150, 157, 160, 156, 153, 154, 152, 148, 150, 151, 153, 154, 153, 32.13972 + 150, 147, 145, 143, 143, 142, 141, 140, 139, 139, 138, 135, 133, 129, 128, 127, 32.13973 + 127, 125, 123, 120, 120, 120, 120, 120, 120, 119, 118, 112, 116, 118, 117, 119, 32.13974 + 121, 118, 111, 102, 113, 115, 104, 98, 107, 118, 122, 123, 118, 126, 146, 155, 32.13975 + 144, 127, 119, 111, 112, 130, 136, 115, 101, 107, 116, 110, 111, 112, 115, 119, 32.13976 + 124, 128, 130, 114, 108, 107, 107, 115, 114, 255, 255, 255, 255, 255, 255, 255, 32.13977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 99, 104, 113, 122, 124, 32.13978 + 122, 119, 117, 114, 112, 111, 113, 115, 117, 116, 116, 115, 115, 116, 119, 122, 32.13979 + 124, 125, 129, 134, 139, 143, 146, 147, 148, 155, 161, 156, 151, 151, 145, 139, 32.13980 + 143, 142, 142, 140, 137, 135, 136, 139, 142, 145, 142, 140, 143, 149, 152, 151, 32.13981 + 150, 148, 155, 160, 159, 157, 156, 154, 150, 154, 154, 154, 153, 152, 150, 148, 32.13982 + 147, 145, 144, 144, 143, 143, 142, 142, 141, 135, 133, 131, 130, 129, 128, 124, 32.13983 + 122, 120, 119, 120, 120, 121, 120, 119, 118, 115, 117, 118, 117, 118, 119, 116, 32.13984 + 110, 108, 115, 114, 107, 105, 115, 122, 123, 125, 121, 133, 154, 154, 131, 111, 32.13985 + 106, 118, 120, 133, 133, 108, 93, 101, 111, 112, 109, 112, 122, 134, 139, 132, 32.13986 + 122, 112, 96, 119, 117, 114, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13987 + 255, 255, 255, 255, 255, 255, 255, 255, 101, 100, 106, 115, 121, 122, 120, 116, 32.13988 + 116, 116, 115, 114, 114, 116, 118, 115, 111, 110, 112, 113, 114, 115, 118, 122, 32.13989 + 124, 126, 129, 131, 136, 140, 143, 152, 158, 153, 148, 149, 144, 137, 143, 145, 32.13990 + 143, 140, 138, 137, 138, 140, 143, 144, 141, 139, 140, 144, 148, 149, 150, 147, 32.13991 + 151, 155, 155, 154, 153, 154, 153, 155, 154, 152, 150, 148, 147, 146, 146, 143, 32.13992 + 143, 143, 142, 142, 141, 141, 141, 133, 132, 130, 130, 129, 126, 122, 119, 118, 32.13993 + 117, 118, 118, 119, 118, 118, 117, 120, 119, 118, 117, 116, 114, 109, 105, 109, 32.13994 + 111, 109, 105, 107, 116, 119, 118, 127, 125, 137, 152, 143, 117, 107, 117, 121, 32.13995 + 111, 115, 121, 115, 114, 117, 114, 122, 117, 116, 124, 134, 133, 118, 104, 111, 32.13996 + 99, 122, 129, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.13997 + 255, 255, 255, 255, 255, 255, 99, 99, 105, 112, 117, 116, 115, 112, 116, 119, 32.13998 + 120, 117, 115, 114, 114, 116, 109, 107, 111, 113, 111, 109, 113, 114, 116, 116, 32.13999 + 116, 117, 122, 130, 136, 143, 151, 149, 145, 148, 145, 139, 145, 137, 136, 135, 32.14000 + 135, 136, 136, 136, 136, 146, 146, 146, 144, 142, 143, 147, 152, 147, 147, 147, 32.14001 + 146, 144, 142, 144, 147, 152, 151, 148, 146, 144, 143, 143, 143, 140, 140, 139, 32.14002 + 139, 138, 137, 137, 137, 131, 129, 128, 127, 126, 123, 119, 115, 115, 115, 116, 32.14003 + 116, 117, 116, 117, 116, 120, 118, 116, 115, 114, 111, 107, 105, 109, 108, 105, 32.14004 + 104, 108, 115, 115, 113, 117, 122, 137, 146, 130, 106, 105, 122, 101, 93, 102, 32.14005 + 119, 125, 129, 127, 114, 110, 108, 109, 113, 119, 117, 109, 100, 110, 115, 114, 32.14006 + 129, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14007 + 255, 255, 255, 255, 101, 101, 105, 111, 113, 113, 112, 113, 119, 124, 125, 121, 32.14008 + 116, 112, 112, 113, 104, 100, 106, 107, 103, 101, 104, 105, 107, 108, 108, 109, 32.14009 + 115, 123, 131, 135, 144, 145, 144, 150, 147, 142, 146, 135, 134, 135, 138, 140, 32.14010 + 140, 138, 136, 144, 146, 147, 143, 139, 138, 143, 149, 154, 150, 147, 145, 141, 32.14011 + 138, 139, 143, 149, 148, 146, 144, 143, 142, 142, 141, 139, 139, 138, 137, 135, 32.14012 + 134, 133, 133, 129, 127, 125, 123, 122, 120, 116, 113, 112, 113, 114, 115, 115, 32.14013 + 115, 115, 115, 117, 113, 112, 114, 115, 112, 110, 110, 113, 110, 107, 108, 111, 32.14014 + 115, 113, 112, 111, 123, 138, 139, 118, 93, 88, 98, 90, 96, 118, 136, 135, 32.14015 + 133, 127, 115, 105, 107, 108, 109, 110, 109, 107, 107, 112, 124, 109, 161, 255, 32.14016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14017 + 255, 206, 106, 107, 110, 113, 115, 116, 116, 125, 130, 135, 133, 126, 121, 118, 32.14018 + 118, 115, 103, 98, 106, 108, 102, 99, 102, 104, 108, 111, 110, 108, 111, 117, 32.14019 + 123, 128, 138, 141, 142, 149, 146, 140, 145, 138, 136, 137, 140, 144, 146, 144, 32.14020 + 142, 145, 145, 144, 143, 141, 141, 143, 145, 154, 151, 150, 151, 147, 141, 141, 32.14021 + 146, 148, 148, 147, 146, 145, 144, 144, 143, 141, 141, 139, 137, 135, 133, 132, 32.14022 + 131, 130, 127, 123, 121, 119, 118, 115, 113, 112, 113, 114, 115, 116, 116, 116, 32.14023 + 116, 119, 114, 112, 117, 118, 114, 112, 114, 115, 112, 111, 112, 114, 114, 112, 32.14024 + 112, 119, 131, 140, 137, 121, 106, 98, 96, 115, 120, 136, 145, 138, 134, 128, 32.14025 + 115, 109, 111, 112, 112, 110, 109, 111, 112, 116, 120, 109, 255, 255, 255, 255, 32.14026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 32.14027 + 112, 112, 114, 116, 118, 118, 119, 139, 143, 145, 141, 133, 127, 126, 128, 125, 32.14028 + 112, 107, 115, 118, 110, 106, 110, 108, 113, 118, 116, 111, 108, 111, 114, 121, 32.14029 + 133, 138, 140, 147, 143, 136, 141, 137, 134, 133, 136, 141, 144, 144, 143, 153, 32.14030 + 149, 146, 147, 150, 152, 150, 148, 144, 142, 145, 150, 149, 143, 143, 148, 149, 32.14031 + 149, 149, 149, 149, 147, 146, 146, 144, 143, 141, 139, 137, 134, 133, 132, 131, 32.14032 + 128, 123, 120, 118, 117, 115, 114, 114, 113, 114, 115, 117, 117, 117, 117, 124, 32.14033 + 118, 116, 120, 119, 114, 111, 113, 116, 113, 112, 113, 114, 112, 110, 111, 127, 32.14034 + 136, 142, 140, 139, 141, 138, 132, 146, 137, 135, 136, 132, 132, 128, 113, 104, 32.14035 + 106, 108, 110, 111, 112, 114, 117, 119, 160, 255, 255, 255, 255, 255, 255, 255, 32.14036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 112, 120, 32.14037 + 117, 113, 117, 120, 120, 162, 166, 154, 138, 137, 133, 122, 119, 112, 113, 115, 32.14038 + 115, 112, 111, 112, 114, 108, 109, 110, 113, 115, 115, 113, 112, 118, 130, 141, 32.14039 + 143, 143, 144, 143, 140, 137, 132, 131, 135, 138, 139, 144, 150, 146, 148, 147, 32.14040 + 145, 148, 153, 154, 151, 151, 150, 147, 147, 148, 150, 150, 149, 147, 147, 148, 32.14041 + 148, 148, 147, 145, 144, 143, 138, 133, 133, 136, 138, 136, 133, 127, 126, 124, 32.14042 + 121, 119, 116, 114, 113, 107, 114, 121, 123, 120, 118, 119, 121, 118, 120, 120, 32.14043 + 116, 113, 110, 111, 113, 116, 115, 115, 116, 112, 107, 108, 114, 125, 131, 137, 32.14044 + 138, 137, 138, 142, 147, 137, 140, 140, 137, 135, 131, 122, 113, 106, 100, 109, 32.14045 + 119, 118, 118, 121, 119, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 113, 120, 120, 121, 32.14047 + 126, 133, 134, 173, 172, 154, 136, 136, 133, 127, 126, 120, 119, 117, 119, 121, 32.14048 + 122, 119, 117, 114, 115, 116, 114, 110, 108, 111, 113, 118, 127, 136, 139, 141, 32.14049 + 143, 141, 136, 140, 135, 134, 136, 138, 138, 142, 147, 148, 151, 151, 147, 147, 32.14050 + 150, 151, 150, 153, 151, 149, 148, 149, 150, 149, 149, 150, 149, 148, 146, 146, 32.14051 + 146, 146, 147, 142, 138, 134, 134, 137, 138, 136, 132, 129, 127, 125, 122, 119, 32.14052 + 117, 116, 116, 114, 120, 125, 125, 121, 117, 117, 118, 120, 121, 121, 118, 115, 32.14053 + 113, 114, 116, 117, 115, 116, 116, 112, 108, 109, 116, 127, 130, 132, 131, 129, 32.14054 + 129, 132, 135, 134, 137, 135, 132, 131, 131, 126, 119, 117, 103, 104, 114, 119, 32.14055 + 122, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 113, 119, 121, 125, 131, 138, 32.14057 + 141, 156, 155, 140, 130, 136, 137, 131, 130, 127, 122, 119, 122, 129, 131, 126, 32.14058 + 122, 119, 123, 122, 116, 108, 106, 112, 118, 116, 123, 129, 135, 139, 144, 141, 32.14059 + 133, 142, 136, 135, 137, 137, 136, 139, 144, 149, 154, 155, 150, 146, 147, 148, 32.14060 + 149, 154, 152, 150, 149, 149, 149, 148, 147, 151, 149, 148, 145, 145, 145, 147, 32.14061 + 148, 139, 137, 134, 135, 137, 137, 134, 130, 130, 128, 125, 121, 119, 118, 118, 32.14062 + 119, 120, 123, 127, 126, 122, 118, 118, 120, 120, 121, 122, 120, 117, 116, 117, 32.14063 + 119, 117, 116, 116, 116, 112, 108, 110, 117, 131, 130, 130, 130, 130, 131, 132, 32.14064 + 133, 138, 139, 137, 133, 132, 133, 129, 124, 124, 105, 104, 118, 127, 127, 255, 32.14065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14066 + 255, 255, 255, 255, 255, 255, 255, 113, 114, 115, 117, 120, 126, 132, 135, 136, 32.14067 + 138, 130, 129, 139, 138, 127, 125, 127, 124, 123, 126, 130, 132, 128, 125, 123, 32.14068 + 124, 123, 117, 111, 109, 113, 117, 113, 118, 124, 129, 137, 143, 140, 133, 137, 32.14069 + 133, 132, 135, 136, 135, 137, 141, 147, 154, 157, 151, 146, 146, 148, 149, 152, 32.14070 + 151, 149, 148, 148, 147, 146, 144, 147, 147, 146, 145, 144, 144, 144, 144, 136, 32.14071 + 134, 134, 134, 135, 134, 130, 127, 130, 127, 123, 119, 117, 118, 119, 120, 119, 32.14072 + 122, 125, 124, 122, 120, 122, 123, 119, 119, 120, 119, 118, 118, 119, 119, 117, 32.14073 + 114, 114, 114, 111, 107, 110, 117, 128, 128, 130, 134, 139, 141, 139, 138, 141, 32.14074 + 142, 139, 135, 132, 131, 125, 119, 114, 103, 108, 166, 255, 255, 255, 255, 255, 32.14075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14076 + 255, 255, 255, 255, 255, 119, 114, 110, 111, 114, 119, 124, 127, 138, 139, 131, 32.14077 + 129, 135, 129, 119, 118, 126, 126, 127, 128, 129, 129, 129, 130, 125, 123, 118, 32.14078 + 116, 113, 110, 107, 105, 107, 112, 117, 124, 133, 140, 138, 131, 130, 127, 127, 32.14079 + 131, 133, 133, 136, 140, 143, 151, 155, 151, 146, 146, 149, 150, 149, 148, 147, 32.14080 + 146, 146, 145, 143, 141, 142, 143, 145, 145, 145, 142, 140, 138, 133, 133, 132, 32.14081 + 132, 132, 130, 127, 125, 127, 125, 121, 118, 116, 117, 119, 120, 120, 121, 122, 32.14082 + 121, 120, 119, 120, 121, 119, 118, 117, 116, 117, 117, 117, 117, 115, 112, 111, 32.14083 + 111, 108, 105, 108, 116, 123, 126, 131, 138, 143, 144, 140, 137, 136, 138, 137, 32.14084 + 134, 130, 127, 119, 110, 109, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14086 + 255, 255, 255, 123, 112, 106, 107, 112, 117, 122, 127, 134, 131, 120, 116, 120, 32.14087 + 118, 116, 126, 126, 128, 131, 130, 128, 126, 127, 128, 125, 120, 115, 111, 109, 32.14088 + 106, 101, 96, 106, 112, 118, 122, 128, 133, 132, 128, 125, 122, 124, 129, 132, 32.14089 + 132, 135, 140, 140, 147, 151, 149, 146, 148, 149, 149, 146, 146, 145, 145, 145, 32.14090 + 144, 142, 139, 138, 140, 143, 145, 144, 141, 137, 134, 133, 133, 132, 131, 129, 32.14091 + 128, 126, 125, 125, 123, 120, 118, 117, 117, 119, 120, 125, 123, 121, 119, 117, 32.14092 + 116, 117, 117, 118, 116, 114, 114, 115, 116, 116, 115, 113, 110, 110, 109, 106, 32.14093 + 104, 108, 116, 128, 132, 138, 143, 144, 142, 138, 135, 134, 137, 137, 134, 132, 32.14094 + 128, 120, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14096 + 255, 129, 114, 104, 105, 111, 114, 120, 125, 121, 121, 113, 111, 115, 113, 117, 32.14097 + 132, 125, 125, 125, 125, 126, 124, 123, 122, 121, 119, 116, 111, 108, 106, 106, 32.14098 + 107, 115, 122, 126, 127, 128, 130, 130, 128, 124, 122, 123, 129, 132, 132, 134, 32.14099 + 139, 141, 145, 148, 146, 146, 149, 147, 144, 144, 145, 144, 145, 146, 145, 144, 32.14100 + 141, 140, 141, 142, 143, 142, 140, 137, 135, 135, 135, 133, 131, 129, 127, 127, 32.14101 + 128, 123, 123, 121, 120, 119, 119, 120, 120, 125, 123, 120, 118, 118, 118, 118, 32.14102 + 118, 119, 117, 114, 114, 115, 116, 115, 113, 114, 110, 110, 109, 106, 104, 109, 32.14103 + 117, 131, 135, 140, 140, 138, 135, 134, 136, 135, 137, 135, 129, 126, 123, 162, 32.14104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 32.14106 + 117, 104, 104, 109, 111, 115, 120, 122, 125, 122, 120, 120, 112, 112, 127, 124, 32.14107 + 120, 116, 118, 122, 123, 118, 113, 117, 118, 117, 113, 108, 110, 118, 127, 125, 32.14108 + 134, 138, 136, 133, 133, 132, 130, 125, 123, 125, 130, 134, 132, 134, 139, 142, 32.14109 + 146, 146, 145, 146, 149, 145, 140, 145, 144, 144, 146, 148, 148, 145, 143, 143, 32.14110 + 143, 142, 142, 141, 140, 139, 139, 138, 137, 135, 132, 129, 128, 129, 130, 123, 32.14111 + 123, 123, 122, 122, 121, 121, 121, 122, 120, 117, 117, 119, 121, 123, 123, 120, 32.14112 + 118, 113, 114, 116, 117, 115, 112, 115, 111, 110, 110, 107, 105, 111, 119, 125, 32.14113 + 129, 132, 130, 126, 125, 129, 134, 134, 133, 128, 120, 161, 255, 255, 255, 255, 32.14114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 138, 119, 32.14116 + 100, 108, 111, 109, 119, 125, 124, 121, 115, 113, 114, 121, 126, 117, 118, 120, 32.14117 + 123, 127, 128, 128, 127, 116, 108, 104, 112, 122, 130, 133, 138, 133, 135, 137, 32.14118 + 138, 137, 136, 135, 135, 129, 127, 124, 126, 132, 137, 139, 139, 140, 143, 146, 32.14119 + 150, 152, 153, 151, 151, 146, 146, 145, 144, 144, 145, 145, 146, 147, 142, 139, 32.14120 + 139, 143, 143, 140, 135, 137, 136, 133, 133, 132, 129, 124, 121, 123, 121, 120, 32.14121 + 119, 119, 119, 122, 123, 123, 120, 117, 118, 122, 124, 120, 116, 114, 111, 112, 32.14122 + 118, 119, 115, 112, 112, 115, 113, 110, 105, 102, 103, 108, 112, 120, 123, 122, 32.14123 + 118, 118, 123, 127, 128, 126, 123, 118, 160, 255, 255, 255, 255, 255, 255, 255, 32.14124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 120, 102, 111, 32.14126 + 113, 105, 108, 115, 120, 122, 123, 120, 118, 117, 117, 117, 122, 127, 130, 129, 32.14127 + 128, 131, 132, 130, 127, 129, 137, 143, 142, 139, 139, 138, 137, 136, 135, 135, 32.14128 + 135, 135, 135, 135, 131, 126, 126, 129, 135, 138, 140, 140, 142, 145, 148, 150, 32.14129 + 150, 150, 149, 148, 147, 146, 145, 144, 144, 145, 145, 147, 143, 140, 140, 143, 32.14130 + 144, 141, 137, 137, 137, 136, 136, 135, 132, 126, 121, 122, 121, 121, 120, 121, 32.14131 + 122, 124, 125, 126, 122, 118, 118, 122, 124, 122, 119, 115, 111, 111, 115, 116, 32.14132 + 112, 110, 110, 113, 111, 108, 104, 103, 104, 106, 108, 86, 97, 105, 107, 106, 32.14133 + 106, 104, 100, 103, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 120, 106, 111, 114, 104, 32.14136 + 100, 100, 105, 109, 112, 111, 109, 107, 106, 115, 122, 130, 131, 129, 127, 130, 32.14137 + 135, 135, 134, 138, 144, 146, 142, 138, 139, 140, 139, 136, 133, 132, 132, 133, 32.14138 + 134, 137, 133, 127, 125, 127, 132, 137, 140, 140, 142, 144, 146, 147, 147, 147, 32.14139 + 146, 149, 148, 146, 145, 144, 143, 143, 143, 146, 143, 140, 141, 143, 144, 141, 32.14140 + 138, 137, 138, 139, 140, 138, 133, 124, 118, 117, 118, 120, 121, 123, 124, 125, 32.14141 + 125, 128, 123, 119, 119, 122, 123, 122, 120, 118, 113, 111, 114, 114, 111, 109, 32.14142 + 110, 111, 108, 105, 103, 102, 102, 101, 100, 91, 105, 118, 121, 119, 117, 114, 32.14143 + 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 110, 108, 109, 103, 96, 92, 32.14146 + 93, 92, 92, 95, 100, 105, 109, 111, 116, 123, 127, 127, 128, 130, 133, 130, 32.14147 + 128, 130, 133, 134, 133, 136, 142, 137, 136, 134, 133, 132, 132, 132, 133, 133, 32.14148 + 131, 127, 125, 126, 131, 135, 137, 141, 142, 144, 145, 145, 145, 146, 145, 148, 32.14149 + 147, 145, 143, 141, 140, 140, 139, 143, 141, 139, 140, 141, 141, 140, 137, 137, 32.14150 + 138, 140, 140, 136, 128, 117, 110, 111, 113, 117, 120, 122, 124, 123, 122, 125, 32.14151 + 123, 121, 121, 123, 123, 120, 118, 121, 115, 112, 113, 113, 110, 108, 109, 109, 32.14152 + 106, 101, 99, 98, 96, 93, 90, 103, 113, 120, 119, 115, 116, 164, 255, 255, 32.14153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14155 + 255, 255, 255, 255, 255, 255, 255, 127, 113, 100, 100, 99, 93, 92, 89, 88, 32.14156 + 89, 95, 104, 114, 120, 113, 113, 115, 120, 128, 133, 133, 131, 128, 125, 127, 32.14157 + 131, 132, 131, 134, 140, 131, 132, 133, 134, 134, 133, 132, 131, 126, 126, 126, 32.14158 + 128, 128, 130, 133, 136, 142, 143, 144, 145, 145, 145, 146, 146, 147, 145, 143, 32.14159 + 141, 139, 138, 137, 137, 139, 138, 137, 137, 138, 138, 137, 136, 137, 137, 137, 32.14160 + 135, 130, 122, 110, 103, 106, 108, 113, 117, 120, 121, 120, 120, 120, 121, 122, 32.14161 + 123, 123, 121, 117, 114, 118, 112, 109, 110, 110, 106, 105, 106, 107, 103, 98, 32.14162 + 94, 91, 89, 87, 86, 106, 113, 115, 111, 107, 255, 255, 255, 255, 255, 255, 32.14163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14165 + 255, 255, 255, 255, 255, 213, 112, 91, 92, 97, 90, 86, 87, 88, 95, 104, 32.14166 + 112, 119, 121, 120, 116, 113, 119, 129, 135, 136, 132, 126, 125, 128, 134, 136, 32.14167 + 131, 128, 128, 128, 129, 132, 133, 134, 133, 131, 130, 123, 126, 129, 130, 129, 32.14168 + 130, 133, 135, 141, 141, 143, 144, 144, 145, 147, 147, 146, 144, 142, 140, 138, 32.14169 + 137, 137, 136, 136, 136, 136, 136, 136, 136, 136, 136, 137, 136, 134, 131, 126, 32.14170 + 118, 109, 103, 106, 109, 113, 117, 121, 121, 121, 120, 120, 121, 123, 124, 122, 32.14171 + 119, 116, 114, 112, 107, 105, 107, 107, 103, 100, 101, 104, 101, 96, 89, 84, 32.14172 + 84, 88, 91, 109, 115, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14175 + 255, 255, 255, 255, 105, 85, 92, 103, 93, 85, 85, 89, 96, 105, 114, 118, 32.14176 + 120, 125, 121, 118, 119, 125, 130, 133, 132, 129, 124, 124, 130, 133, 130, 125, 32.14177 + 125, 130, 131, 131, 131, 131, 130, 130, 129, 128, 130, 131, 131, 129, 130, 134, 32.14178 + 137, 139, 140, 140, 141, 143, 145, 146, 147, 146, 145, 143, 141, 140, 139, 139, 32.14179 + 139, 135, 136, 137, 136, 136, 136, 136, 137, 138, 135, 131, 128, 124, 120, 115, 32.14180 + 111, 112, 114, 116, 120, 123, 124, 124, 125, 124, 124, 123, 122, 120, 118, 118, 32.14181 + 118, 110, 106, 105, 108, 108, 104, 100, 100, 99, 98, 94, 87, 81, 84, 94, 32.14182 + 104, 106, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14185 + 255, 255, 99, 85, 99, 112, 99, 93, 91, 90, 94, 104, 114, 121, 124, 127, 32.14186 + 125, 122, 119, 120, 123, 128, 132, 138, 127, 121, 123, 129, 132, 132, 134, 135, 32.14187 + 133, 131, 128, 127, 127, 128, 130, 135, 136, 134, 131, 128, 129, 134, 139, 137, 32.14188 + 137, 138, 139, 141, 143, 145, 146, 147, 146, 144, 143, 142, 141, 141, 141, 136, 32.14189 + 137, 138, 137, 136, 136, 137, 139, 138, 135, 130, 127, 125, 123, 121, 119, 117, 32.14190 + 118, 121, 124, 126, 127, 129, 129, 129, 127, 123, 119, 117, 117, 120, 123, 111, 32.14191 + 108, 108, 112, 112, 107, 103, 103, 96, 97, 94, 85, 80, 85, 101, 115, 255, 32.14192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14195 + 82, 86, 104, 110, 101, 96, 82, 91, 104, 101, 111, 128, 126, 129, 124, 120, 32.14196 + 122, 127, 131, 132, 129, 132, 132, 133, 134, 132, 129, 124, 121, 129, 128, 127, 32.14197 + 127, 128, 130, 132, 134, 138, 137, 137, 136, 136, 136, 136, 137, 143, 143, 143, 32.14198 + 143, 143, 143, 143, 143, 143, 143, 143, 142, 141, 140, 138, 137, 136, 135, 134, 32.14199 + 136, 138, 140, 140, 139, 135, 137, 135, 132, 127, 122, 119, 119, 121, 121, 123, 32.14200 + 125, 125, 126, 128, 128, 121, 122, 123, 124, 123, 122, 120, 119, 115, 113, 110, 32.14201 + 109, 107, 105, 101, 98, 98, 96, 89, 83, 89, 103, 111, 255, 255, 255, 255, 32.14202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 32.14205 + 105, 109, 100, 103, 90, 87, 96, 102, 115, 128, 133, 129, 124, 118, 120, 125, 32.14206 + 130, 130, 129, 126, 127, 129, 129, 128, 126, 122, 120, 129, 129, 128, 128, 128, 32.14207 + 129, 131, 131, 133, 134, 134, 133, 133, 134, 135, 135, 141, 142, 143, 144, 145, 32.14208 + 145, 144, 144, 144, 144, 144, 143, 142, 141, 139, 138, 134, 133, 132, 134, 136, 32.14209 + 137, 137, 137, 138, 138, 136, 133, 128, 125, 123, 122, 123, 124, 126, 126, 127, 32.14210 + 128, 129, 129, 126, 126, 127, 127, 126, 124, 122, 121, 115, 113, 110, 108, 107, 32.14211 + 104, 100, 97, 95, 92, 85, 82, 90, 104, 255, 255, 255, 255, 255, 255, 255, 32.14212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 109, 114, 32.14215 + 107, 109, 101, 88, 92, 109, 119, 123, 132, 130, 125, 120, 122, 127, 132, 134, 32.14216 + 135, 128, 130, 131, 132, 132, 130, 127, 125, 130, 129, 128, 127, 127, 127, 127, 32.14217 + 128, 135, 135, 135, 135, 136, 136, 137, 138, 137, 139, 142, 144, 146, 145, 144, 32.14218 + 143, 145, 145, 145, 144, 143, 141, 139, 138, 134, 133, 132, 133, 136, 137, 136, 32.14219 + 136, 140, 141, 138, 133, 128, 126, 126, 127, 126, 126, 127, 128, 128, 129, 129, 32.14220 + 130, 128, 129, 129, 129, 127, 125, 122, 120, 116, 114, 111, 109, 107, 104, 100, 32.14221 + 96, 93, 88, 83, 84, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 103, 115, 118, 109, 32.14225 + 108, 92, 91, 114, 121, 115, 123, 125, 121, 118, 120, 126, 133, 138, 140, 135, 32.14226 + 136, 137, 137, 136, 135, 131, 130, 129, 128, 127, 126, 125, 124, 123, 123, 131, 32.14227 + 132, 132, 132, 133, 135, 135, 136, 132, 135, 139, 142, 144, 144, 142, 141, 143, 32.14228 + 143, 143, 143, 141, 140, 138, 137, 136, 135, 134, 135, 137, 138, 138, 138, 140, 32.14229 + 140, 137, 133, 128, 127, 127, 129, 127, 127, 128, 128, 128, 128, 129, 129, 126, 32.14230 + 126, 126, 125, 123, 120, 117, 115, 116, 113, 110, 107, 105, 102, 97, 94, 91, 32.14231 + 85, 82, 88, 152, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 88, 108, 125, 112, 111, 91, 32.14235 + 85, 105, 113, 112, 123, 115, 113, 112, 116, 122, 129, 135, 140, 138, 138, 138, 32.14236 + 138, 136, 134, 131, 130, 128, 127, 126, 125, 123, 122, 120, 119, 121, 122, 122, 32.14237 + 123, 124, 125, 127, 128, 129, 131, 135, 138, 140, 140, 139, 139, 141, 141, 141, 32.14238 + 140, 139, 137, 136, 135, 136, 135, 134, 135, 137, 138, 137, 136, 139, 139, 136, 32.14239 + 132, 127, 127, 128, 130, 127, 127, 127, 127, 127, 127, 127, 127, 124, 124, 124, 32.14240 + 122, 120, 117, 114, 112, 114, 112, 108, 105, 102, 98, 94, 90, 86, 82, 82, 32.14241 + 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14244 + 255, 255, 255, 255, 255, 255, 255, 255, 79, 106, 131, 120, 114, 95, 81, 87, 32.14245 + 99, 112, 123, 113, 113, 114, 117, 122, 129, 134, 138, 140, 140, 140, 139, 139, 32.14246 + 137, 135, 134, 128, 128, 127, 126, 124, 122, 120, 120, 121, 121, 121, 121, 122, 32.14247 + 123, 124, 125, 127, 129, 132, 135, 136, 137, 136, 137, 140, 140, 140, 139, 138, 32.14248 + 136, 135, 134, 134, 133, 132, 132, 134, 135, 134, 133, 137, 138, 136, 133, 129, 32.14249 + 128, 129, 130, 128, 129, 128, 127, 127, 126, 126, 126, 124, 124, 124, 123, 121, 32.14250 + 118, 115, 113, 112, 110, 106, 102, 99, 95, 90, 86, 80, 79, 140, 255, 255, 32.14251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14254 + 255, 255, 255, 255, 255, 255, 81, 105, 128, 128, 121, 111, 92, 77, 86, 101, 32.14255 + 105, 112, 112, 115, 118, 120, 124, 127, 130, 135, 137, 137, 138, 139, 139, 138, 32.14256 + 139, 129, 130, 130, 129, 127, 125, 123, 123, 125, 127, 126, 126, 125, 126, 127, 32.14257 + 127, 129, 130, 131, 133, 134, 135, 135, 136, 140, 140, 140, 139, 138, 137, 135, 32.14258 + 134, 134, 133, 132, 132, 134, 134, 133, 133, 137, 138, 137, 136, 132, 131, 131, 32.14259 + 132, 131, 131, 130, 128, 128, 127, 127, 126, 124, 125, 125, 124, 122, 119, 117, 32.14260 + 115, 111, 109, 104, 101, 97, 93, 87, 82, 79, 138, 255, 255, 255, 255, 255, 32.14261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14264 + 255, 255, 255, 255, 83, 101, 122, 133, 127, 128, 109, 77, 74, 87, 79, 102, 32.14265 + 105, 107, 109, 110, 112, 114, 116, 125, 126, 129, 131, 133, 135, 136, 137, 133, 32.14266 + 133, 133, 133, 131, 129, 126, 126, 125, 126, 125, 124, 124, 124, 125, 124, 131, 32.14267 + 131, 131, 132, 133, 134, 135, 136, 141, 141, 141, 140, 139, 138, 136, 135, 137, 32.14268 + 135, 134, 135, 136, 137, 136, 135, 137, 139, 139, 138, 135, 133, 133, 133, 133, 32.14269 + 132, 131, 130, 129, 128, 128, 127, 121, 122, 122, 121, 120, 117, 115, 114, 110, 32.14270 + 107, 103, 99, 96, 91, 85, 81, 138, 255, 255, 255, 255, 255, 255, 255, 255, 32.14271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14274 + 255, 255, 74, 93, 116, 138, 137, 130, 110, 85, 71, 71, 80, 76, 81, 89, 32.14275 + 93, 95, 96, 99, 102, 103, 112, 114, 117, 125, 123, 117, 121, 126, 126, 125, 32.14276 + 126, 129, 128, 125, 123, 131, 123, 121, 126, 124, 115, 118, 128, 124, 125, 127, 32.14277 + 130, 133, 135, 135, 136, 141, 141, 142, 142, 141, 140, 139, 137, 133, 133, 133, 32.14278 + 134, 134, 136, 137, 136, 140, 137, 134, 131, 130, 131, 133, 135, 135, 134, 131, 32.14279 + 129, 129, 129, 127, 126, 127, 124, 120, 117, 117, 116, 115, 113, 115, 113, 105, 32.14280 + 97, 96, 99, 95, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14284 + 76, 91, 110, 133, 130, 121, 102, 81, 66, 63, 66, 92, 90, 88, 84, 83, 32.14285 + 88, 94, 101, 100, 105, 101, 97, 102, 99, 93, 99, 112, 114, 116, 111, 106, 32.14286 + 101, 101, 104, 118, 111, 112, 118, 118, 114, 119, 130, 123, 126, 128, 127, 125, 32.14287 + 128, 135, 142, 141, 142, 142, 143, 142, 140, 139, 138, 134, 134, 135, 135, 135, 32.14288 + 136, 137, 138, 140, 138, 136, 134, 133, 134, 135, 135, 136, 133, 130, 128, 128, 32.14289 + 127, 126, 124, 125, 122, 118, 116, 116, 115, 114, 112, 111, 110, 104, 95, 92, 32.14290 + 93, 89, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 32.14294 + 97, 131, 129, 120, 104, 84, 68, 62, 61, 75, 79, 84, 90, 92, 94, 95, 32.14295 + 97, 103, 106, 99, 93, 99, 100, 101, 109, 86, 93, 97, 92, 81, 78, 84, 32.14296 + 92, 70, 67, 68, 74, 76, 76, 84, 95, 117, 123, 128, 126, 122, 123, 132, 32.14297 + 140, 140, 141, 142, 142, 141, 139, 138, 137, 135, 135, 135, 135, 135, 136, 137, 32.14298 + 138, 139, 139, 138, 137, 137, 136, 136, 136, 135, 132, 129, 127, 126, 125, 123, 32.14299 + 121, 125, 122, 119, 118, 117, 117, 115, 113, 108, 108, 104, 95, 88, 142, 255, 32.14300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 85, 124, 32.14304 + 126, 125, 110, 86, 69, 63, 62, 58, 62, 71, 80, 84, 86, 86, 87, 93, 32.14305 + 106, 111, 115, 123, 117, 107, 108, 119, 120, 116, 102, 83, 72, 70, 75, 84, 32.14306 + 82, 83, 88, 91, 93, 101, 111, 112, 118, 125, 126, 123, 122, 126, 130, 138, 32.14307 + 139, 140, 140, 139, 137, 137, 135, 134, 133, 134, 133, 134, 134, 135, 135, 137, 32.14308 + 138, 138, 139, 138, 137, 135, 134, 133, 131, 127, 125, 124, 123, 121, 119, 125, 32.14309 + 123, 120, 119, 119, 118, 116, 114, 105, 106, 104, 95, 86, 255, 255, 255, 255, 32.14310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 79, 103, 115, 123, 32.14314 + 109, 82, 61, 59, 64, 68, 63, 57, 53, 54, 60, 67, 73, 71, 92, 108, 32.14315 + 118, 122, 103, 76, 65, 60, 63, 64, 66, 69, 73, 79, 85, 87, 88, 89, 32.14316 + 94, 97, 102, 110, 118, 120, 119, 120, 119, 119, 122, 125, 128, 136, 137, 138, 32.14317 + 138, 137, 135, 134, 133, 132, 131, 132, 131, 131, 131, 132, 132, 134, 135, 137, 32.14318 + 137, 137, 136, 134, 132, 132, 129, 126, 124, 123, 122, 120, 118, 123, 121, 119, 32.14319 + 118, 117, 116, 113, 111, 99, 99, 97, 90, 140, 255, 255, 255, 255, 255, 255, 32.14320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 78, 86, 105, 121, 112, 84, 32.14324 + 62, 62, 70, 71, 66, 61, 59, 59, 61, 61, 61, 65, 75, 76, 76, 81, 32.14325 + 72, 60, 61, 89, 86, 83, 82, 84, 85, 83, 83, 97, 100, 105, 109, 114, 32.14326 + 120, 128, 133, 134, 128, 118, 113, 114, 121, 129, 135, 137, 136, 137, 137, 136, 32.14327 + 135, 134, 132, 131, 130, 130, 129, 129, 129, 130, 130, 132, 133, 134, 135, 135, 32.14328 + 134, 133, 132, 130, 127, 124, 123, 123, 123, 121, 119, 120, 118, 116, 115, 114, 32.14329 + 112, 108, 105, 95, 92, 89, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14333 + 255, 255, 255, 255, 255, 255, 255, 82, 79, 79, 100, 119, 115, 91, 73, 69, 32.14334 + 76, 67, 68, 73, 79, 82, 78, 69, 63, 72, 75, 64, 58, 66, 72, 78, 32.14335 + 90, 89, 88, 89, 93, 99, 103, 103, 102, 101, 107, 111, 115, 118, 124, 129, 32.14336 + 132, 138, 135, 128, 121, 118, 122, 130, 138, 138, 138, 138, 139, 138, 136, 135, 32.14337 + 134, 131, 130, 130, 130, 129, 129, 129, 130, 133, 133, 134, 134, 134, 134, 133, 32.14338 + 133, 128, 126, 123, 123, 123, 124, 122, 121, 122, 120, 118, 116, 114, 111, 108, 32.14339 + 104, 96, 89, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14343 + 255, 255, 255, 255, 255, 197, 81, 75, 94, 113, 113, 96, 79, 74, 76, 80, 32.14344 + 77, 75, 76, 78, 78, 72, 69, 72, 80, 81, 84, 92, 92, 89, 94, 111, 32.14345 + 112, 112, 113, 115, 114, 111, 110, 118, 123, 128, 128, 130, 134, 136, 138, 132, 32.14346 + 138, 141, 136, 128, 124, 128, 134, 140, 139, 140, 140, 139, 138, 137, 135, 132, 32.14347 + 131, 131, 130, 130, 130, 130, 130, 134, 134, 134, 134, 134, 134, 134, 134, 127, 32.14348 + 125, 123, 123, 124, 124, 124, 123, 126, 124, 122, 120, 118, 114, 110, 106, 100, 32.14349 + 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14353 + 255, 255, 255, 255, 84, 89, 87, 96, 110, 108, 93, 79, 75, 81, 81, 83, 32.14354 + 86, 88, 88, 83, 80, 79, 76, 76, 81, 85, 90, 100, 111, 118, 112, 108, 32.14355 + 109, 117, 124, 128, 128, 120, 122, 126, 128, 130, 132, 134, 139, 136, 140, 144, 32.14356 + 141, 132, 122, 124, 132, 134, 136, 139, 139, 138, 136, 136, 136, 131, 133, 135, 32.14357 + 133, 130, 128, 129, 131, 135, 134, 132, 130, 129, 129, 130, 131, 130, 123, 117, 32.14358 + 117, 120, 123, 125, 127, 121, 126, 124, 116, 112, 112, 109, 103, 94, 255, 255, 32.14359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14363 + 255, 255, 87, 84, 81, 88, 102, 104, 94, 82, 79, 84, 83, 84, 86, 87, 32.14364 + 86, 84, 80, 83, 82, 83, 88, 92, 94, 101, 110, 115, 116, 118, 120, 121, 32.14365 + 124, 127, 129, 124, 125, 126, 127, 128, 131, 137, 140, 137, 140, 143, 143, 136, 32.14366 + 127, 127, 133, 135, 137, 140, 140, 138, 136, 135, 135, 126, 128, 131, 131, 129, 32.14367 + 129, 131, 133, 131, 131, 131, 131, 131, 132, 132, 133, 123, 121, 122, 126, 129, 32.14368 + 128, 124, 122, 123, 125, 122, 115, 111, 110, 106, 99, 255, 255, 255, 255, 255, 32.14369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14373 + 89, 83, 78, 80, 93, 100, 95, 88, 87, 86, 85, 85, 85, 85, 85, 83, 32.14374 + 81, 81, 80, 84, 90, 94, 95, 100, 107, 113, 120, 128, 130, 127, 126, 128, 32.14375 + 129, 128, 127, 128, 127, 128, 132, 138, 142, 140, 140, 142, 144, 139, 133, 130, 32.14376 + 133, 136, 138, 140, 140, 137, 134, 133, 133, 125, 127, 130, 130, 129, 130, 131, 32.14377 + 133, 131, 131, 132, 133, 132, 131, 129, 128, 124, 125, 127, 129, 130, 128, 122, 32.14378 + 117, 124, 124, 120, 115, 112, 110, 104, 149, 255, 255, 255, 255, 255, 255, 255, 32.14379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 86, 32.14383 + 79, 78, 88, 95, 97, 94, 94, 87, 86, 87, 86, 84, 84, 82, 82, 78, 32.14384 + 77, 83, 90, 94, 96, 102, 111, 115, 121, 127, 130, 130, 129, 130, 130, 130, 32.14385 + 130, 131, 132, 131, 134, 138, 141, 143, 140, 140, 142, 140, 134, 129, 128, 135, 32.14386 + 137, 139, 138, 135, 131, 130, 129, 128, 128, 129, 129, 128, 128, 128, 129, 132, 32.14387 + 133, 134, 133, 131, 127, 122, 120, 130, 131, 129, 124, 122, 122, 120, 117, 120, 32.14388 + 119, 116, 115, 113, 108, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 87, 81, 77, 32.14393 + 83, 89, 93, 95, 95, 91, 92, 93, 92, 89, 89, 88, 89, 88, 87, 88, 32.14394 + 94, 97, 100, 108, 117, 120, 120, 121, 124, 129, 132, 132, 130, 129, 132, 135, 32.14395 + 138, 137, 137, 138, 139, 145, 140, 138, 139, 138, 131, 125, 123, 132, 134, 136, 32.14396 + 135, 131, 127, 126, 125, 124, 123, 124, 125, 125, 126, 126, 125, 130, 131, 132, 32.14397 + 132, 129, 124, 119, 116, 124, 128, 127, 122, 119, 121, 120, 115, 118, 116, 113, 32.14398 + 112, 107, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 82, 78, 80, 84, 32.14403 + 87, 91, 93, 97, 99, 102, 102, 98, 97, 98, 99, 99, 95, 95, 99, 100, 32.14404 + 102, 107, 115, 124, 121, 118, 122, 128, 133, 131, 130, 130, 135, 139, 141, 140, 32.14405 + 138, 138, 138, 144, 139, 136, 137, 135, 129, 125, 125, 129, 131, 133, 132, 129, 32.14406 + 125, 124, 123, 117, 116, 118, 120, 124, 127, 127, 127, 126, 127, 129, 130, 129, 32.14407 + 126, 123, 120, 109, 119, 126, 124, 122, 124, 120, 112, 115, 111, 107, 103, 94, 32.14408 + 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 82, 82, 81, 82, 85, 92, 32.14413 + 94, 98, 102, 107, 108, 104, 103, 104, 107, 102, 102, 104, 108, 109, 107, 111, 32.14414 + 116, 124, 123, 123, 125, 127, 128, 129, 130, 134, 137, 141, 142, 141, 139, 139, 32.14415 + 140, 141, 137, 135, 135, 132, 127, 127, 131, 127, 130, 132, 131, 128, 125, 124, 32.14416 + 123, 120, 119, 120, 123, 128, 131, 131, 130, 127, 128, 129, 130, 129, 127, 125, 32.14417 + 123, 108, 120, 126, 122, 119, 122, 119, 111, 111, 106, 100, 95, 142, 255, 255, 32.14418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14422 + 255, 255, 255, 255, 255, 255, 255, 78, 84, 87, 85, 84, 88, 94, 98, 95, 32.14423 + 100, 108, 109, 107, 103, 105, 108, 105, 106, 112, 119, 121, 120, 122, 126, 123, 32.14424 + 128, 131, 131, 128, 126, 128, 130, 136, 140, 140, 140, 138, 139, 140, 142, 139, 32.14425 + 135, 134, 134, 131, 127, 130, 137, 127, 130, 132, 132, 129, 126, 125, 125, 129, 32.14426 + 127, 127, 129, 133, 136, 134, 132, 132, 133, 132, 132, 130, 127, 124, 123, 120, 32.14427 + 128, 127, 116, 110, 116, 117, 114, 108, 103, 96, 145, 255, 255, 255, 255, 255, 32.14428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14432 + 255, 255, 255, 255, 255, 84, 83, 86, 89, 88, 89, 94, 101, 100, 102, 106, 32.14433 + 111, 113, 112, 106, 103, 99, 103, 110, 117, 122, 125, 126, 126, 128, 131, 132, 32.14434 + 133, 132, 131, 132, 135, 133, 138, 140, 142, 140, 138, 137, 137, 138, 136, 136, 32.14435 + 135, 134, 133, 132, 133, 133, 132, 130, 129, 130, 128, 123, 120, 124, 123, 124, 32.14436 + 127, 131, 133, 131, 129, 130, 129, 130, 131, 132, 132, 132, 130, 122, 129, 130, 32.14437 + 124, 120, 118, 112, 104, 109, 99, 142, 255, 255, 255, 255, 255, 255, 255, 255, 32.14438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14442 + 255, 255, 255, 255, 83, 82, 85, 84, 86, 93, 102, 95, 98, 103, 108, 111, 32.14443 + 110, 107, 104, 98, 101, 106, 112, 116, 120, 123, 123, 128, 130, 132, 133, 132, 32.14444 + 132, 133, 135, 135, 138, 141, 142, 140, 138, 137, 137, 137, 137, 136, 135, 134, 32.14445 + 133, 133, 133, 136, 134, 131, 129, 129, 127, 124, 121, 127, 126, 127, 129, 133, 32.14446 + 133, 131, 129, 130, 130, 129, 129, 130, 129, 127, 125, 127, 126, 120, 114, 114, 32.14447 + 116, 112, 104, 92, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14452 + 255, 255, 82, 80, 81, 80, 82, 92, 102, 97, 99, 103, 108, 109, 109, 106, 32.14453 + 104, 100, 101, 104, 109, 113, 117, 121, 122, 127, 129, 131, 133, 131, 131, 132, 32.14454 + 134, 136, 139, 141, 141, 139, 137, 136, 136, 137, 136, 136, 135, 134, 134, 133, 32.14455 + 134, 137, 135, 131, 128, 127, 127, 126, 125, 130, 130, 130, 132, 134, 135, 133, 32.14456 + 130, 136, 135, 133, 132, 132, 130, 127, 125, 126, 122, 115, 111, 113, 114, 106, 32.14457 + 97, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14462 + 196, 80, 81, 79, 80, 88, 96, 102, 104, 107, 110, 109, 108, 108, 107, 105, 32.14463 + 105, 106, 108, 113, 117, 121, 124, 125, 128, 130, 130, 129, 130, 132, 133, 136, 32.14464 + 139, 140, 139, 137, 134, 134, 134, 135, 135, 134, 134, 133, 133, 132, 134, 136, 32.14465 + 132, 127, 125, 125, 126, 128, 128, 130, 131, 133, 135, 136, 137, 136, 135, 136, 32.14466 + 135, 133, 132, 132, 129, 127, 124, 119, 119, 117, 115, 112, 105, 93, 141, 255, 32.14467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 32.14472 + 83, 81, 80, 84, 91, 100, 101, 105, 108, 108, 109, 112, 112, 109, 108, 108, 32.14473 + 109, 112, 117, 121, 123, 123, 126, 128, 129, 128, 129, 130, 132, 135, 137, 138, 32.14474 + 137, 134, 132, 132, 133, 134, 134, 134, 133, 133, 133, 133, 133, 132, 129, 124, 32.14475 + 122, 123, 126, 130, 131, 128, 130, 133, 136, 138, 138, 139, 139, 129, 127, 126, 32.14476 + 126, 126, 125, 122, 119, 115, 116, 114, 110, 100, 89, 83, 255, 255, 255, 255, 32.14477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 86, 84, 32.14482 + 81, 84, 88, 92, 96, 100, 104, 106, 109, 115, 118, 110, 109, 109, 110, 112, 32.14483 + 115, 119, 120, 122, 125, 127, 128, 127, 128, 129, 132, 135, 136, 137, 136, 134, 32.14484 + 132, 133, 134, 134, 133, 133, 133, 133, 133, 133, 134, 130, 128, 123, 122, 123, 32.14485 + 128, 130, 132, 127, 130, 134, 136, 137, 137, 138, 139, 128, 127, 126, 124, 125, 32.14486 + 124, 121, 119, 114, 110, 105, 96, 84, 137, 255, 255, 255, 255, 255, 255, 255, 32.14487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 86, 84, 81, 84, 32.14492 + 91, 93, 97, 102, 105, 105, 108, 114, 118, 113, 113, 113, 115, 117, 118, 120, 32.14493 + 121, 121, 124, 127, 128, 128, 129, 129, 131, 136, 137, 138, 137, 135, 135, 136, 32.14494 + 138, 136, 136, 136, 136, 136, 136, 136, 137, 133, 130, 127, 126, 127, 129, 130, 32.14495 + 130, 129, 132, 136, 136, 133, 132, 132, 135, 134, 132, 130, 128, 128, 125, 122, 32.14496 + 119, 111, 103, 95, 90, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 83, 81, 87, 93, 101, 32.14502 + 105, 108, 108, 106, 107, 112, 117, 116, 117, 119, 120, 121, 122, 123, 123, 121, 32.14503 + 123, 126, 128, 128, 128, 129, 130, 137, 138, 139, 138, 137, 137, 139, 142, 138, 32.14504 + 138, 138, 138, 138, 139, 140, 140, 137, 134, 131, 129, 129, 130, 129, 129, 131, 32.14505 + 134, 137, 136, 132, 129, 128, 129, 134, 132, 129, 127, 125, 121, 117, 114, 107, 32.14506 + 99, 92, 94, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14511 + 255, 255, 255, 255, 255, 255, 255, 255, 84, 84, 85, 85, 85, 101, 101, 102, 32.14512 + 102, 102, 106, 110, 115, 119, 121, 124, 123, 121, 120, 122, 125, 123, 123, 124, 32.14513 + 124, 124, 126, 127, 127, 131, 134, 136, 138, 143, 143, 139, 132, 134, 138, 139, 32.14514 + 136, 137, 140, 141, 139, 137, 134, 131, 129, 129, 130, 133, 135, 134, 132, 130, 32.14515 + 132, 136, 136, 133, 129, 133, 128, 124, 123, 124, 121, 111, 104, 93, 90, 87, 32.14516 + 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14521 + 255, 255, 255, 255, 255, 255, 255, 86, 86, 86, 84, 99, 99, 101, 102, 102, 32.14522 + 106, 111, 116, 118, 121, 123, 123, 122, 121, 122, 124, 121, 122, 123, 125, 127, 32.14523 + 129, 131, 132, 136, 129, 125, 130, 138, 140, 137, 133, 138, 141, 141, 138, 138, 32.14524 + 141, 141, 138, 136, 134, 132, 130, 130, 131, 133, 134, 132, 132, 132, 133, 136, 32.14525 + 136, 134, 132, 127, 125, 122, 118, 114, 107, 102, 97, 94, 94, 149, 255, 255, 32.14526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14531 + 255, 255, 255, 255, 255, 199, 85, 84, 81, 97, 98, 100, 102, 104, 109, 115, 32.14532 + 118, 118, 121, 123, 124, 122, 120, 119, 120, 119, 121, 123, 126, 130, 133, 136, 32.14533 + 137, 132, 117, 110, 120, 135, 139, 141, 143, 140, 143, 143, 140, 139, 142, 141, 32.14534 + 137, 134, 133, 132, 131, 131, 131, 132, 133, 126, 129, 132, 133, 133, 132, 133, 32.14535 + 133, 126, 125, 119, 112, 101, 94, 93, 93, 97, 255, 255, 255, 255, 255, 255, 32.14536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14541 + 255, 255, 255, 255, 85, 81, 78, 94, 95, 98, 102, 107, 112, 117, 120, 122, 32.14542 + 123, 124, 124, 122, 119, 117, 116, 119, 120, 124, 127, 131, 135, 137, 138, 133, 32.14543 + 118, 112, 122, 133, 135, 139, 146, 141, 144, 144, 141, 139, 141, 139, 135, 130, 32.14544 + 130, 130, 129, 129, 128, 129, 129, 121, 125, 130, 130, 127, 125, 127, 129, 125, 32.14545 + 119, 110, 100, 93, 92, 93, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14551 + 255, 255, 83, 78, 75, 90, 91, 93, 99, 106, 111, 116, 119, 125, 126, 124, 32.14552 + 123, 121, 118, 116, 113, 120, 123, 125, 128, 131, 134, 134, 134, 139, 132, 129, 32.14553 + 132, 133, 129, 132, 139, 139, 142, 142, 139, 137, 138, 135, 130, 126, 126, 126, 32.14554 + 125, 126, 126, 124, 124, 122, 125, 128, 127, 124, 121, 121, 123, 117, 106, 92, 32.14555 + 85, 87, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14561 + 255, 78, 75, 86, 86, 88, 96, 104, 110, 115, 116, 126, 125, 122, 121, 119, 32.14562 + 119, 116, 114, 122, 125, 127, 131, 132, 133, 134, 133, 131, 134, 136, 136, 135, 32.14563 + 135, 138, 141, 136, 140, 141, 139, 136, 136, 132, 127, 125, 124, 122, 122, 122, 32.14564 + 122, 122, 122, 125, 126, 127, 124, 121, 117, 115, 113, 101, 90, 79, 76, 141, 32.14565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14571 + 79, 88, 87, 90, 98, 107, 114, 118, 118, 125, 122, 118, 118, 118, 121, 120, 32.14572 + 119, 123, 126, 129, 133, 134, 136, 136, 135, 126, 134, 136, 132, 135, 143, 144, 32.14573 + 139, 134, 138, 140, 138, 136, 136, 132, 126, 126, 123, 121, 119, 120, 121, 123, 32.14574 + 124, 126, 124, 122, 119, 116, 111, 104, 101, 90, 87, 84, 255, 255, 255, 255, 32.14575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 95, 32.14581 + 94, 97, 106, 114, 121, 123, 122, 122, 119, 115, 115, 119, 123, 125, 125, 124, 32.14582 + 127, 130, 134, 138, 138, 138, 137, 138, 144, 140, 129, 131, 142, 138, 123, 133, 32.14583 + 138, 140, 138, 136, 136, 132, 127, 127, 125, 121, 120, 119, 121, 124, 126, 124, 32.14584 + 120, 115, 112, 109, 104, 97, 91, 88, 146, 255, 255, 255, 255, 255, 255, 255, 32.14585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 90, 100, 32.14591 + 108, 112, 116, 121, 126, 121, 119, 115, 115, 117, 122, 125, 127, 134, 133, 134, 32.14592 + 135, 137, 138, 139, 139, 139, 136, 133, 135, 137, 138, 136, 133, 136, 134, 133, 32.14593 + 134, 133, 132, 129, 127, 123, 119, 114, 116, 122, 126, 125, 122, 128, 122, 112, 32.14594 + 103, 96, 93, 93, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 94, 103, 110, 32.14601 + 114, 117, 119, 121, 119, 115, 114, 116, 120, 123, 125, 128, 129, 131, 132, 134, 32.14602 + 135, 135, 134, 138, 135, 132, 135, 137, 139, 136, 134, 137, 135, 133, 131, 127, 32.14603 + 123, 116, 113, 116, 123, 127, 122, 113, 112, 120, 130, 120, 113, 103, 94, 92, 32.14604 + 96, 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 91, 102, 111, 117, 119, 32.14611 + 120, 123, 121, 120, 119, 119, 121, 124, 125, 125, 127, 130, 134, 135, 136, 134, 32.14612 + 135, 134, 132, 129, 131, 134, 136, 134, 132, 130, 130, 128, 129, 126, 123, 116, 32.14613 + 113, 117, 117, 116, 118, 119, 120, 118, 115, 103, 99, 95, 93, 96, 154, 255, 32.14614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 107, 116, 120, 120, 119, 32.14621 + 119, 119, 118, 116, 117, 119, 121, 122, 124, 128, 132, 135, 135, 133, 133, 128, 32.14622 + 127, 125, 126, 130, 132, 129, 127, 124, 123, 121, 121, 121, 120, 117, 116, 120, 32.14623 + 115, 111, 113, 117, 113, 101, 89, 90, 93, 98, 154, 255, 255, 255, 255, 255, 32.14624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 93, 103, 109, 112, 110, 113, 114, 32.14631 + 113, 110, 110, 111, 113, 114, 117, 120, 124, 127, 127, 125, 125, 126, 124, 122, 32.14632 + 124, 127, 128, 126, 124, 126, 122, 116, 111, 109, 108, 107, 107, 113, 116, 116, 32.14633 + 106, 91, 82, 82, 86, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 103, 108, 111, 114, 114, 111, 32.14641 + 109, 111, 113, 113, 116, 118, 121, 122, 123, 122, 121, 126, 123, 122, 122, 125, 32.14642 + 126, 124, 121, 124, 119, 113, 109, 107, 108, 108, 108, 104, 100, 93, 86, 83, 32.14643 + 87, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14650 + 255, 255, 255, 255, 255, 255, 255, 255, 202, 104, 108, 114, 114, 111, 108, 110, 32.14651 + 112, 115, 117, 117, 119, 121, 120, 119, 121, 124, 121, 118, 118, 120, 120, 118, 32.14652 + 115, 115, 112, 108, 106, 106, 106, 104, 103, 99, 90, 83, 88, 102, 113, 162, 32.14653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14660 + 255, 255, 255, 255, 255, 255, 255, 255, 102, 107, 108, 104, 102, 103, 107, 113, 32.14661 + 113, 113, 114, 114, 116, 115, 116, 120, 118, 115, 114, 115, 116, 112, 109, 111, 32.14662 + 110, 106, 102, 97, 91, 84, 79, 93, 103, 114, 118, 162, 255, 255, 255, 255, 32.14663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 110, 111, 111, 108, 108, 110, 32.14671 + 115, 114, 111, 110, 116, 113, 118, 119, 116, 111, 108, 106, 104, 105, 89, 97, 32.14672 + 85, 89, 104, 92, 104, 111, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 32.14681 + 103, 102, 106, 114, 115, 115, 112, 107, 103, 99, 94, 84, 86, 93, 93, 156, 32.14682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14693 + 10, 11, 41, 64, 70, 78, 75, 69, 69, 73, 80, 84, 76, 70, 70, 71, 32.14694 + 71, 70, 70, 71, 65, 63, 61, 66, 130, 255, 255, 255, 255, 255, 255, 255, 32.14695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 4, 24, 43, 48, 32.14703 + 72, 83, 77, 78, 77, 72, 71, 68, 79, 90, 91, 89, 87, 84, 83, 87, 32.14704 + 87, 86, 81, 74, 69, 69, 71, 68, 76, 84, 92, 105, 112, 151, 255, 255, 32.14705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14712 + 255, 255, 255, 255, 255, 255, 255, 178, 47, 74, 77, 56, 33, 65, 84, 84, 32.14713 + 67, 63, 59, 52, 49, 28, 37, 48, 57, 68, 83, 95, 100, 91, 90, 88, 32.14714 + 80, 70, 64, 64, 66, 71, 81, 92, 103, 115, 117, 99, 81, 101, 212, 255, 32.14715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14722 + 255, 182, 31, 32, 27, 33, 59, 83, 86, 73, 57, 68, 90, 90, 71, 65, 32.14723 + 60, 48, 41, 65, 64, 55, 49, 54, 71, 91, 99, 79, 79, 75, 66, 55, 32.14724 + 49, 49, 52, 71, 81, 93, 103, 112, 110, 86, 66, 57, 58, 58, 59, 255, 32.14725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 43, 32.14732 + 48, 39, 36, 48, 79, 97, 96, 82, 78, 71, 83, 87, 73, 57, 48, 50, 32.14733 + 57, 48, 48, 50, 54, 62, 71, 81, 86, 76, 66, 67, 75, 77, 68, 62, 32.14734 + 64, 75, 82, 88, 90, 89, 80, 58, 41, 42, 47, 48, 50, 51, 53, 52, 32.14735 + 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 39, 37, 37, 44, 32.14742 + 51, 64, 80, 87, 80, 70, 69, 77, 70, 53, 38, 34, 39, 42, 41, 62, 32.14743 + 66, 71, 74, 75, 71, 69, 65, 84, 80, 80, 82, 80, 70, 61, 56, 54, 32.14744 + 58, 56, 45, 38, 39, 44, 48, 38, 41, 40, 39, 40, 41, 41, 43, 35, 32.14745 + 83, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14751 + 255, 255, 255, 255, 255, 255, 255, 183, 46, 52, 55, 55, 54, 51, 66, 80, 32.14752 + 82, 74, 66, 57, 57, 54, 57, 51, 48, 50, 54, 50, 43, 47, 52, 59, 32.14753 + 62, 63, 57, 51, 44, 50, 52, 55, 55, 54, 52, 44, 35, 36, 40, 38, 32.14754 + 29, 23, 27, 36, 47, 40, 41, 35, 34, 36, 38, 39, 41, 36, 31, 25, 32.14755 + 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14761 + 255, 255, 255, 43, 52, 53, 54, 53, 53, 53, 54, 49, 67, 79, 72, 61, 32.14762 + 53, 45, 40, 39, 54, 67, 68, 65, 61, 57, 52, 41, 44, 48, 50, 53, 32.14763 + 52, 52, 50, 35, 42, 47, 42, 44, 47, 45, 33, 45, 42, 41, 37, 39, 32.14764 + 39, 41, 42, 39, 38, 34, 35, 39, 41, 41, 39, 35, 29, 25, 26, 82, 32.14765 + 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 32.14771 + 42, 45, 58, 64, 60, 52, 50, 56, 61, 61, 75, 83, 79, 72, 68, 59, 32.14772 + 51, 49, 54, 53, 43, 35, 35, 41, 42, 43, 42, 44, 43, 43, 42, 42, 32.14773 + 42, 46, 50, 50, 39, 37, 38, 38, 28, 50, 47, 47, 42, 39, 34, 37, 32.14774 + 42, 27, 28, 28, 33, 37, 39, 36, 32, 32, 27, 27, 28, 28, 23, 21, 32.14775 + 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 36, 40, 43, 48, 32.14781 + 61, 67, 59, 52, 51, 60, 66, 38, 44, 48, 51, 55, 54, 47, 39, 51, 32.14782 + 43, 32, 23, 25, 31, 31, 28, 34, 37, 41, 43, 44, 41, 38, 35, 44, 32.14783 + 45, 43, 35, 31, 31, 31, 30, 34, 47, 62, 64, 50, 34, 31, 37, 24, 32.14784 + 25, 26, 31, 40, 40, 36, 30, 33, 28, 27, 32, 29, 22, 24, 29, 27, 32.14785 + 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14790 + 255, 255, 255, 255, 255, 255, 182, 39, 37, 38, 41, 41, 40, 71, 77, 69, 32.14791 + 54, 41, 38, 38, 36, 46, 46, 52, 63, 72, 73, 71, 69, 48, 47, 43, 32.14792 + 39, 39, 41, 37, 31, 45, 49, 54, 59, 60, 58, 54, 51, 44, 43, 45, 32.14793 + 46, 45, 42, 44, 50, 30, 39, 56, 71, 69, 53, 38, 33, 31, 31, 29, 32.14794 + 34, 43, 44, 41, 35, 42, 33, 31, 39, 43, 38, 39, 43, 36, 32, 79, 32.14795 + 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14800 + 255, 255, 185, 47, 48, 45, 34, 36, 42, 47, 49, 63, 63, 52, 41, 38, 32.14801 + 42, 41, 37, 32, 28, 34, 50, 61, 61, 61, 64, 57, 64, 66, 53, 37, 32.14802 + 32, 37, 42, 53, 54, 56, 56, 55, 53, 51, 50, 42, 39, 43, 50, 47, 32.14803 + 40, 41, 49, 47, 30, 25, 43, 64, 65, 49, 34, 36, 33, 29, 32, 41, 32.14804 + 45, 41, 36, 52, 40, 36, 47, 55, 53, 52, 54, 43, 36, 27, 20, 18, 32.14805 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 108, 99, 91, 49, 32.14810 + 46, 56, 49, 46, 46, 45, 41, 44, 53, 60, 53, 48, 52, 59, 65, 59, 32.14811 + 54, 43, 46, 48, 52, 53, 53, 49, 43, 42, 38, 42, 47, 47, 40, 37, 32.14812 + 41, 45, 53, 60, 57, 52, 51, 51, 50, 51, 59, 59, 48, 42, 43, 38, 32.14813 + 28, 39, 33, 31, 40, 54, 59, 51, 41, 34, 29, 27, 31, 41, 47, 44, 32.14814 + 38, 43, 54, 58, 51, 45, 42, 39, 35, 34, 16, 10, 17, 21, 20, 105, 32.14815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14819 + 255, 255, 255, 255, 255, 255, 206, 89, 50, 85, 107, 54, 54, 59, 57, 68, 32.14820 + 57, 49, 50, 52, 52, 54, 58, 57, 61, 68, 76, 81, 77, 67, 58, 46, 32.14821 + 44, 42, 40, 39, 36, 32, 27, 36, 34, 38, 42, 42, 36, 36, 41, 39, 32.14822 + 45, 49, 47, 47, 49, 49, 47, 45, 53, 53, 42, 37, 43, 47, 45, 38, 32.14823 + 38, 42, 51, 61, 62, 54, 45, 53, 41, 29, 26, 33, 43, 49, 50, 56, 32.14824 + 61, 58, 47, 39, 38, 39, 39, 25, 20, 27, 42, 50, 44, 38, 109, 255, 32.14825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14829 + 255, 255, 205, 73, 29, 38, 69, 75, 56, 51, 59, 61, 58, 53, 41, 31, 32.14830 + 31, 36, 38, 39, 40, 47, 56, 68, 76, 74, 66, 54, 47, 48, 45, 40, 32.14831 + 36, 33, 30, 27, 22, 27, 28, 33, 37, 37, 35, 40, 48, 37, 42, 45, 32.14832 + 47, 54, 59, 59, 54, 41, 48, 47, 36, 31, 36, 41, 42, 42, 46, 51, 32.14833 + 56, 58, 56, 52, 48, 49, 42, 35, 34, 39, 45, 46, 45, 57, 59, 56, 32.14834 + 47, 39, 37, 38, 38, 24, 36, 54, 63, 60, 49, 38, 31, 110, 255, 255, 32.14835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 161, 79, 32.14839 + 27, 23, 34, 55, 83, 76, 54, 58, 63, 55, 52, 40, 33, 27, 25, 27, 32.14840 + 30, 31, 33, 41, 43, 45, 46, 44, 40, 35, 32, 43, 41, 38, 36, 35, 32.14841 + 33, 30, 25, 22, 26, 33, 37, 41, 45, 55, 64, 71, 69, 63, 56, 53, 32.14842 + 46, 32, 19, 37, 40, 39, 34, 32, 34, 34, 31, 50, 54, 56, 53, 49, 32.14843 + 46, 49, 53, 43, 40, 37, 38, 42, 45, 46, 45, 44, 49, 52, 51, 46, 32.14844 + 41, 37, 35, 39, 57, 69, 57, 36, 24, 26, 30, 24, 74, 205, 255, 255, 32.14845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14848 + 255, 255, 255, 255, 255, 255, 255, 255, 239, 185, 102, 47, 36, 24, 24, 24, 32.14849 + 37, 71, 81, 67, 57, 71, 68, 51, 48, 32, 34, 34, 30, 26, 25, 28, 32.14850 + 30, 44, 38, 30, 27, 27, 28, 27, 25, 26, 27, 29, 32, 35, 35, 32, 32.14851 + 27, 25, 31, 39, 44, 52, 62, 73, 81, 58, 62, 66, 72, 82, 86, 79, 32.14852 + 68, 43, 39, 33, 29, 31, 35, 34, 30, 47, 52, 57, 55, 50, 47, 51, 32.14853 + 55, 55, 48, 39, 33, 35, 42, 52, 58, 40, 44, 50, 55, 54, 50, 46, 32.14854 + 44, 60, 63, 57, 36, 17, 12, 19, 24, 25, 34, 40, 107, 255, 255, 255, 32.14855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14858 + 255, 255, 255, 255, 255, 186, 60, 43, 22, 29, 27, 24, 33, 40, 53, 69, 32.14859 + 62, 54, 59, 71, 64, 48, 44, 35, 41, 42, 34, 27, 26, 30, 33, 46, 32.14860 + 39, 31, 27, 28, 28, 25, 22, 18, 20, 24, 30, 34, 35, 32, 27, 31, 32.14861 + 36, 42, 47, 57, 69, 78, 81, 85, 87, 88, 89, 94, 95, 87, 76, 70, 32.14862 + 60, 45, 34, 31, 31, 31, 29, 38, 44, 52, 56, 56, 54, 54, 54, 57, 32.14863 + 55, 52, 48, 46, 47, 51, 55, 50, 50, 54, 60, 62, 60, 59, 60, 67, 32.14864 + 50, 32, 22, 24, 26, 25, 21, 25, 41, 50, 43, 40, 255, 255, 255, 255, 32.14865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14868 + 255, 255, 176, 14, 13, 9, 0, 18, 21, 25, 46, 56, 64, 60, 57, 65, 32.14869 + 73, 68, 64, 59, 51, 55, 57, 53, 42, 36, 39, 44, 45, 45, 42, 38, 32.14870 + 33, 29, 27, 26, 26, 22, 23, 24, 27, 30, 30, 28, 24, 31, 33, 35, 32.14871 + 37, 47, 57, 60, 57, 57, 60, 62, 66, 77, 86, 89, 85, 81, 76, 67, 32.14872 + 56, 44, 35, 32, 33, 40, 40, 41, 44, 48, 51, 51, 50, 47, 54, 61, 32.14873 + 64, 60, 54, 50, 48, 61, 60, 65, 73, 74, 68, 64, 64, 54, 33, 20, 32.14874 + 25, 36, 38, 36, 35, 34, 35, 38, 39, 42, 44, 112, 255, 255, 255, 255, 32.14875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 32.14878 + 19, 14, 11, 14, 8, 26, 25, 28, 50, 56, 59, 62, 70, 92, 94, 73, 32.14879 + 72, 78, 65, 53, 51, 41, 28, 25, 32, 36, 35, 49, 48, 44, 36, 27, 32.14880 + 25, 30, 36, 27, 24, 22, 21, 21, 21, 19, 16, 28, 27, 26, 25, 33, 32.14881 + 41, 40, 32, 63, 64, 62, 61, 69, 79, 85, 85, 65, 73, 80, 77, 63, 32.14882 + 49, 45, 48, 51, 41, 29, 26, 32, 41, 46, 48, 49, 53, 56, 55, 53, 32.14883 + 52, 56, 60, 62, 64, 74, 86, 86, 73, 60, 56, 37, 25, 25, 34, 37, 32.14884 + 34, 42, 57, 81, 60, 47, 51, 54, 48, 41, 41, 255, 255, 255, 255, 255, 32.14885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 17, 31, 9, 32.14888 + 5, 5, 24, 16, 36, 43, 53, 44, 70, 82, 87, 84, 75, 77, 84, 76, 32.14889 + 59, 74, 50, 28, 28, 40, 50, 55, 58, 78, 63, 44, 35, 43, 51, 42, 32.14890 + 27, 25, 22, 22, 26, 26, 24, 24, 25, 29, 26, 26, 29, 36, 40, 41, 32.14891 + 41, 41, 39, 44, 58, 71, 73, 70, 68, 86, 91, 92, 81, 64, 53, 53, 32.14892 + 58, 43, 41, 37, 32, 30, 34, 41, 47, 69, 70, 67, 63, 65, 68, 60, 32.14893 + 49, 43, 49, 62, 78, 84, 72, 50, 32, 27, 28, 35, 41, 43, 41, 43, 32.14894 + 47, 33, 41, 51, 53, 51, 49, 51, 54, 40, 255, 255, 255, 255, 255, 255, 32.14895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14897 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 87, 26, 31, 36, 11, 15, 16, 32.14898 + 29, 35, 50, 56, 60, 61, 79, 70, 75, 76, 75, 76, 72, 55, 35, 32, 32.14899 + 34, 39, 43, 43, 46, 61, 78, 69, 61, 45, 31, 27, 33, 34, 31, 34, 32.14900 + 29, 26, 26, 25, 23, 25, 28, 24, 22, 23, 26, 31, 34, 36, 37, 39, 32.14901 + 39, 45, 54, 61, 60, 59, 61, 69, 70, 69, 66, 61, 59, 61, 64, 48, 32.14902 + 43, 37, 35, 39, 47, 55, 59, 55, 60, 60, 57, 58, 66, 71, 70, 76, 32.14903 + 68, 63, 64, 62, 54, 48, 48, 41, 34, 36, 46, 57, 57, 52, 47, 42, 32.14904 + 45, 49, 48, 44, 42, 43, 45, 38, 56, 130, 255, 255, 255, 255, 255, 255, 32.14905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14907 + 255, 255, 255, 255, 205, 85, 37, 39, 34, 43, 36, 11, 24, 24, 26, 46, 32.14908 + 55, 59, 56, 68, 68, 61, 66, 69, 62, 49, 41, 41, 44, 54, 42, 38, 32.14909 + 53, 73, 83, 79, 73, 64, 56, 43, 32, 32, 38, 41, 40, 38, 32, 28, 32.14910 + 28, 28, 28, 32, 36, 41, 39, 39, 38, 40, 42, 45, 48, 46, 48, 52, 32.14911 + 57, 59, 56, 57, 62, 61, 55, 50, 49, 51, 53, 52, 49, 50, 41, 31, 32.14912 + 27, 31, 37, 41, 42, 56, 61, 60, 51, 44, 48, 59, 66, 75, 68, 66, 32.14913 + 68, 58, 41, 36, 43, 47, 43, 46, 54, 59, 55, 49, 45, 38, 36, 36, 32.14914 + 33, 31, 30, 30, 31, 43, 42, 42, 116, 255, 255, 255, 255, 255, 255, 255, 32.14915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14917 + 255, 177, 33, 27, 35, 37, 39, 55, 40, 18, 30, 29, 20, 47, 47, 55, 32.14918 + 47, 63, 47, 56, 52, 48, 46, 40, 36, 41, 50, 52, 54, 59, 65, 69, 32.14919 + 73, 79, 83, 61, 50, 40, 44, 57, 64, 55, 42, 33, 30, 30, 34, 37, 32.14920 + 38, 43, 46, 39, 36, 33, 29, 28, 30, 36, 41, 45, 43, 44, 48, 50, 32.14921 + 47, 48, 52, 45, 42, 41, 47, 56, 63, 64, 62, 57, 51, 44, 38, 36, 32.14922 + 36, 37, 38, 56, 59, 57, 47, 35, 32, 38, 44, 48, 47, 57, 66, 56, 32.14923 + 34, 27, 36, 40, 48, 59, 58, 45, 32, 33, 40, 27, 25, 25, 25, 26, 32.14924 + 27, 27, 26, 15, 23, 31, 33, 106, 255, 255, 255, 255, 255, 255, 255, 255, 32.14925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 29, 32.14927 + 36, 35, 41, 39, 48, 63, 50, 35, 33, 38, 22, 43, 41, 52, 46, 56, 32.14928 + 34, 45, 36, 32, 44, 56, 56, 44, 35, 37, 42, 50, 58, 67, 72, 73, 32.14929 + 71, 59, 55, 56, 66, 74, 69, 52, 37, 30, 31, 37, 46, 50, 49, 48, 32.14930 + 48, 51, 47, 43, 40, 43, 48, 55, 60, 61, 53, 50, 53, 58, 55, 52, 32.14931 + 52, 55, 54, 55, 57, 59, 60, 58, 57, 46, 49, 51, 47, 40, 36, 37, 32.14932 + 40, 41, 42, 44, 43, 39, 35, 35, 36, 39, 35, 39, 45, 39, 28, 33, 32.14933 + 47, 36, 44, 56, 54, 40, 25, 26, 34, 25, 25, 28, 30, 33, 35, 34, 32.14934 + 32, 24, 25, 25, 24, 24, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 38, 38, 35, 40, 32.14937 + 45, 42, 54, 59, 54, 53, 31, 42, 33, 39, 37, 45, 45, 45, 29, 30, 32.14938 + 37, 41, 43, 42, 43, 47, 51, 55, 53, 56, 71, 90, 96, 78, 56, 68, 32.14939 + 76, 87, 88, 75, 55, 43, 39, 37, 41, 51, 62, 63, 56, 48, 44, 31, 32.14940 + 27, 27, 30, 40, 48, 53, 56, 74, 65, 60, 63, 68, 65, 59, 56, 54, 32.14941 + 54, 53, 50, 45, 41, 39, 38, 41, 48, 53, 49, 38, 29, 28, 31, 34, 32.14942 + 32, 35, 40, 42, 39, 36, 36, 35, 34, 36, 39, 38, 35, 39, 45, 39, 32.14943 + 37, 41, 46, 45, 38, 33, 32, 29, 30, 35, 38, 39, 40, 40, 40, 51, 32.14944 + 35, 23, 29, 42, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14946 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 26, 29, 28, 22, 35, 42, 47, 32.14947 + 58, 49, 55, 75, 41, 52, 58, 45, 40, 37, 39, 26, 26, 26, 42, 48, 32.14948 + 38, 32, 41, 58, 69, 60, 85, 106, 104, 90, 81, 81, 83, 81, 87, 93, 32.14949 + 87, 66, 46, 41, 48, 47, 52, 64, 74, 74, 62, 50, 43, 38, 36, 41, 32.14950 + 51, 65, 71, 70, 66, 59, 54, 53, 58, 62, 59, 57, 57, 46, 44, 42, 32.14951 + 42, 43, 47, 50, 52, 51, 56, 59, 54, 45, 36, 33, 34, 39, 34, 32, 32.14952 + 35, 35, 31, 31, 34, 33, 38, 42, 44, 48, 49, 43, 34, 35, 32, 34, 32.14953 + 40, 43, 39, 35, 34, 35, 38, 43, 44, 43, 45, 50, 54, 44, 47, 51, 32.14954 + 49, 38, 29, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14956 + 255, 255, 255, 255, 255, 174, 14, 23, 32, 33, 28, 33, 42, 54, 65, 47, 32.14957 + 62, 98, 57, 66, 83, 61, 51, 34, 37, 17, 30, 32, 34, 32, 37, 59, 32.14958 + 78, 70, 47, 69, 82, 92, 89, 83, 82, 81, 79, 86, 79, 72, 66, 56, 32.14959 + 45, 44, 50, 53, 59, 70, 81, 80, 67, 54, 48, 39, 39, 48, 62, 75, 32.14960 + 78, 69, 59, 57, 59, 64, 70, 74, 72, 74, 79, 96, 85, 71, 60, 55, 32.14961 + 52, 49, 45, 34, 35, 37, 37, 35, 33, 31, 30, 37, 31, 27, 26, 24, 32.14962 + 21, 27, 36, 41, 44, 42, 37, 45, 55, 51, 37, 25, 30, 38, 40, 33, 32.14963 + 25, 29, 36, 42, 46, 49, 49, 51, 53, 64, 73, 65, 50, 39, 40, 41, 32.14964 + 35, 29, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14966 + 255, 255, 173, 19, 35, 40, 30, 24, 24, 27, 24, 44, 62, 63, 78, 90, 32.14967 + 81, 75, 109, 40, 60, 17, 40, 28, 22, 29, 32, 36, 38, 39, 45, 56, 32.14968 + 65, 68, 86, 98, 93, 86, 87, 88, 87, 84, 79, 74, 66, 51, 39, 45, 32.14969 + 60, 52, 69, 78, 72, 69, 68, 57, 40, 56, 44, 50, 70, 79, 70, 61, 32.14970 + 62, 58, 62, 75, 94, 106, 103, 93, 87, 88, 84, 75, 65, 60, 60, 56, 32.14971 + 47, 37, 34, 27, 25, 25, 28, 33, 37, 30, 25, 23, 28, 30, 26, 25, 32.14972 + 27, 32, 38, 41, 38, 33, 33, 40, 45, 31, 23, 25, 35, 35, 23, 19, 32.14973 + 25, 28, 41, 40, 33, 35, 33, 34, 42, 44, 58, 54, 37, 39, 53, 46, 32.14974 + 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 32.14976 + 10, 19, 27, 24, 14, 15, 23, 35, 38, 50, 58, 64, 76, 84, 77, 79, 32.14977 + 109, 50, 59, 23, 34, 29, 22, 25, 29, 32, 32, 33, 39, 48, 56, 58, 32.14978 + 67, 74, 73, 70, 76, 85, 91, 79, 73, 64, 56, 48, 45, 53, 64, 73, 32.14979 + 73, 87, 104, 95, 67, 53, 59, 38, 63, 80, 75, 65, 63, 62, 58, 71, 32.14980 + 81, 94, 99, 88, 73, 67, 69, 78, 82, 85, 87, 84, 78, 60, 45, 34, 32.14981 + 33, 31, 28, 24, 24, 26, 27, 26, 22, 22, 24, 23, 19, 24, 30, 42, 32.14982 + 42, 42, 41, 40, 41, 43, 42, 45, 37, 27, 25, 30, 34, 31, 25, 23, 32.14983 + 32, 36, 41, 52, 51, 39, 31, 44, 37, 38, 50, 57, 49, 38, 35, 28, 32.14984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 13, 16, 21, 32.14986 + 23, 16, 8, 19, 33, 35, 50, 54, 51, 63, 74, 74, 71, 75, 98, 55, 32.14987 + 49, 28, 27, 29, 23, 27, 29, 32, 32, 33, 37, 45, 51, 70, 67, 66, 32.14988 + 64, 61, 64, 77, 91, 71, 71, 66, 58, 56, 60, 63, 63, 68, 66, 79, 32.14989 + 95, 82, 51, 41, 52, 40, 60, 74, 71, 66, 67, 63, 53, 64, 68, 71, 32.14990 + 69, 62, 61, 76, 93, 81, 81, 77, 74, 73, 72, 62, 53, 40, 42, 42, 32.14991 + 39, 32, 28, 28, 29, 24, 25, 27, 29, 27, 26, 34, 42, 50, 44, 38, 32.14992 + 39, 45, 46, 41, 37, 54, 56, 48, 33, 32, 41, 40, 29, 33, 35, 34, 32.14993 + 35, 43, 52, 54, 52, 48, 36, 36, 50, 56, 46, 41, 42, 29, 102, 255, 32.14994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.14995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 13, 15, 19, 18, 13, 32.14996 + 12, 28, 47, 27, 50, 51, 44, 62, 71, 64, 65, 62, 78, 53, 37, 29, 32.14997 + 20, 29, 25, 27, 29, 30, 31, 33, 37, 43, 48, 62, 53, 46, 42, 34, 32.14998 + 28, 36, 50, 62, 72, 76, 68, 63, 64, 59, 51, 64, 80, 84, 71, 63, 32.14999 + 64, 60, 49, 53, 53, 60, 67, 63, 52, 49, 55, 54, 46, 40, 40, 43, 32.15000 + 48, 58, 67, 73, 72, 64, 54, 48, 49, 49, 48, 46, 49, 49, 46, 40, 32.15001 + 34, 34, 38, 31, 34, 38, 44, 47, 49, 55, 58, 45, 37, 33, 35, 40, 32.15002 + 40, 37, 36, 44, 58, 63, 52, 43, 46, 49, 48, 46, 50, 52, 42, 27, 32.15003 + 31, 44, 50, 49, 58, 52, 35, 35, 51, 55, 42, 40, 31, 255, 255, 255, 32.15004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15005 + 255, 255, 255, 255, 255, 255, 255, 21, 21, 15, 14, 14, 14, 15, 20, 35, 32.15006 + 47, 27, 50, 54, 49, 65, 68, 58, 57, 53, 64, 51, 30, 29, 18, 28, 32.15007 + 27, 20, 21, 22, 24, 26, 30, 35, 39, 56, 51, 49, 48, 40, 31, 36, 32.15008 + 48, 61, 74, 80, 68, 55, 50, 47, 41, 61, 80, 80, 60, 59, 75, 70, 32.15009 + 45, 51, 61, 71, 64, 42, 27, 39, 59, 46, 49, 57, 67, 69, 61, 51, 32.15010 + 47, 48, 59, 67, 64, 54, 46, 40, 35, 45, 46, 47, 43, 40, 38, 40, 32.15011 + 43, 46, 47, 51, 58, 69, 74, 71, 65, 43, 38, 38, 39, 38, 35, 38, 32.15012 + 45, 43, 47, 53, 56, 55, 53, 56, 61, 51, 58, 75, 73, 48, 35, 30, 32.15013 + 15, 37, 59, 57, 29, 26, 50, 59, 45, 46, 35, 103, 255, 255, 255, 255, 32.15014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15015 + 255, 255, 255, 255, 204, 24, 23, 23, 22, 22, 24, 27, 31, 39, 44, 40, 32.15016 + 50, 56, 55, 62, 58, 50, 47, 50, 56, 48, 31, 30, 23, 23, 25, 22, 32.15017 + 22, 22, 23, 26, 29, 32, 34, 17, 24, 32, 36, 33, 32, 41, 54, 75, 32.15018 + 81, 79, 64, 47, 42, 45, 50, 58, 62, 64, 66, 67, 65, 53, 40, 44, 32.15019 + 65, 69, 50, 40, 52, 60, 56, 57, 66, 78, 83, 75, 62, 58, 61, 51, 32.15020 + 62, 71, 73, 68, 62, 54, 46, 46, 46, 46, 46, 46, 47, 47, 48, 56, 32.15021 + 56, 58, 64, 77, 83, 76, 65, 55, 51, 51, 49, 41, 35, 43, 57, 67, 32.15022 + 54, 44, 48, 54, 54, 49, 46, 57, 54, 73, 86, 77, 74, 61, 29, 30, 32.15023 + 39, 44, 41, 40, 45, 52, 55, 48, 36, 27, 255, 255, 255, 255, 255, 255, 32.15024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15025 + 255, 255, 78, 26, 28, 26, 30, 35, 36, 38, 38, 42, 44, 48, 41, 47, 32.15026 + 52, 47, 40, 39, 35, 41, 48, 41, 33, 30, 32, 19, 24, 26, 25, 24, 32.15027 + 24, 25, 26, 27, 27, 17, 33, 46, 47, 46, 55, 72, 85, 84, 80, 73, 32.15028 + 64, 52, 46, 51, 61, 75, 67, 70, 81, 78, 60, 48, 49, 50, 63, 63, 32.15029 + 56, 65, 84, 79, 57, 74, 69, 64, 59, 51, 46, 50, 57, 70, 66, 60, 32.15030 + 59, 66, 71, 64, 54, 47, 46, 46, 50, 55, 56, 52, 48, 56, 58, 60, 32.15031 + 63, 72, 81, 81, 74, 76, 67, 60, 54, 44, 35, 42, 58, 68, 67, 60, 32.15032 + 51, 50, 52, 47, 37, 55, 41, 56, 73, 74, 91, 97, 71, 46, 36, 37, 32.15033 + 48, 49, 41, 44, 56, 55, 42, 31, 255, 255, 255, 255, 255, 255, 255, 255, 32.15034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 32.15035 + 26, 27, 31, 18, 28, 37, 41, 38, 39, 39, 41, 45, 26, 33, 43, 31, 32.15036 + 23, 30, 27, 33, 38, 31, 31, 28, 37, 17, 25, 25, 22, 20, 19, 19, 32.15037 + 18, 17, 16, 21, 40, 52, 46, 42, 55, 76, 90, 78, 69, 64, 64, 59, 32.15038 + 50, 51, 60, 79, 74, 73, 74, 64, 50, 44, 48, 62, 70, 81, 86, 83, 32.15039 + 75, 69, 67, 61, 49, 44, 56, 74, 86, 90, 90, 75, 63, 50, 52, 65, 32.15040 + 73, 58, 41, 43, 41, 42, 49, 56, 56, 48, 40, 49, 54, 57, 59, 67, 32.15041 + 79, 86, 85, 88, 75, 62, 53, 42, 31, 36, 49, 37, 66, 79, 63, 51, 32.15042 + 57, 60, 52, 39, 29, 49, 63, 56, 74, 94, 77, 70, 53, 41, 44, 46, 32.15043 + 43, 44, 49, 66, 53, 40, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 38, 42, 36, 32.15045 + 27, 33, 32, 35, 44, 45, 40, 36, 35, 35, 38, 36, 29, 23, 23, 34, 32.15046 + 44, 45, 39, 37, 37, 38, 32, 24, 15, 19, 15, 12, 21, 34, 26, 15, 32.15047 + 19, 47, 49, 51, 55, 62, 69, 72, 72, 62, 72, 74, 61, 50, 50, 57, 32.15048 + 62, 66, 69, 76, 77, 61, 44, 47, 62, 64, 65, 67, 68, 67, 68, 74, 32.15049 + 82, 64, 57, 52, 57, 64, 65, 60, 55, 63, 60, 61, 62, 57, 48, 44, 32.15050 + 45, 41, 55, 51, 44, 51, 43, 35, 47, 48, 46, 55, 67, 73, 74, 86, 32.15051 + 99, 90, 89, 78, 55, 39, 37, 39, 40, 52, 56, 75, 88, 79, 67, 56, 32.15052 + 42, 44, 34, 29, 36, 47, 58, 72, 84, 67, 61, 57, 58, 63, 58, 45, 32.15053 + 33, 49, 48, 46, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 17, 28, 35, 36, 34, 37, 32.15055 + 36, 39, 49, 51, 45, 40, 39, 27, 34, 42, 41, 34, 26, 23, 23, 47, 32.15056 + 46, 43, 31, 20, 17, 27, 35, 30, 26, 16, 11, 15, 18, 36, 67, 66, 32.15057 + 59, 56, 64, 78, 83, 73, 60, 79, 77, 68, 53, 47, 54, 63, 67, 71, 32.15058 + 73, 72, 65, 61, 64, 70, 74, 76, 66, 60, 67, 80, 87, 84, 78, 51, 32.15059 + 63, 79, 88, 85, 76, 69, 64, 54, 53, 56, 58, 56, 49, 48, 50, 48, 32.15060 + 46, 30, 28, 48, 49, 37, 39, 49, 47, 51, 57, 65, 74, 89, 100, 94, 32.15061 + 92, 82, 60, 42, 35, 33, 32, 33, 34, 49, 65, 69, 70, 69, 64, 50, 32.15062 + 38, 29, 28, 33, 39, 51, 62, 69, 63, 57, 55, 60, 60, 55, 50, 48, 32.15063 + 48, 49, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15064 + 255, 255, 255, 255, 255, 255, 255, 7, 10, 20, 31, 42, 48, 37, 36, 39, 32.15065 + 48, 49, 44, 36, 34, 36, 32, 27, 20, 18, 25, 40, 52, 25, 37, 50, 32.15066 + 48, 39, 29, 26, 25, 14, 22, 26, 31, 36, 34, 46, 73, 75, 68, 65, 32.15067 + 72, 79, 77, 62, 48, 87, 77, 61, 50, 51, 60, 67, 68, 73, 74, 66, 32.15068 + 56, 62, 76, 78, 67, 67, 73, 81, 85, 85, 83, 80, 78, 67, 74, 79, 32.15069 + 76, 67, 60, 58, 56, 50, 47, 49, 52, 51, 46, 46, 50, 41, 46, 41, 32.15070 + 39, 50, 50, 49, 57, 50, 52, 53, 56, 68, 82, 91, 93, 76, 75, 66, 32.15071 + 50, 38, 32, 30, 28, 31, 27, 30, 41, 51, 57, 62, 65, 58, 47, 35, 32.15072 + 27, 23, 24, 32, 40, 62, 56, 53, 51, 53, 57, 62, 64, 47, 47, 50, 32.15073 + 47, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15074 + 255, 255, 255, 255, 255, 10, 11, 18, 32, 49, 61, 45, 42, 44, 48, 49, 32.15075 + 39, 32, 29, 31, 31, 34, 36, 40, 46, 52, 55, 43, 39, 35, 29, 31, 32.15076 + 34, 33, 27, 30, 26, 20, 27, 41, 47, 58, 79, 70, 71, 71, 69, 60, 32.15077 + 50, 45, 46, 81, 71, 59, 53, 56, 62, 64, 63, 68, 67, 61, 58, 63, 32.15078 + 69, 63, 51, 67, 84, 101, 103, 92, 80, 71, 67, 89, 81, 69, 59, 56, 32.15079 + 56, 52, 44, 50, 46, 46, 46, 44, 39, 39, 43, 35, 45, 52, 53, 55, 32.15080 + 53, 56, 63, 45, 53, 58, 60, 73, 85, 85, 77, 58, 56, 48, 37, 29, 32.15081 + 25, 25, 26, 35, 31, 26, 30, 37, 38, 43, 56, 65, 59, 50, 40, 31, 32.15082 + 26, 29, 31, 42, 42, 46, 48, 50, 54, 60, 62, 51, 49, 50, 46, 34, 32.15083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15084 + 255, 255, 10, 14, 14, 17, 27, 43, 55, 60, 55, 54, 55, 53, 42, 34, 32.15085 + 32, 30, 32, 34, 38, 40, 37, 31, 24, 40, 37, 30, 24, 29, 35, 33, 32.15086 + 25, 35, 33, 29, 36, 49, 51, 57, 76, 73, 69, 65, 58, 47, 38, 41, 32.15087 + 52, 76, 68, 59, 53, 52, 54, 59, 62, 64, 57, 56, 63, 65, 60, 58, 32.15088 + 60, 85, 89, 91, 91, 92, 87, 71, 54, 74, 79, 81, 79, 79, 75, 63, 32.15089 + 48, 47, 41, 39, 38, 37, 33, 36, 41, 50, 40, 38, 43, 50, 55, 52, 32.15090 + 42, 41, 48, 54, 55, 63, 73, 73, 63, 63, 56, 46, 36, 27, 23, 23, 32.15091 + 26, 23, 27, 24, 29, 38, 33, 35, 56, 65, 68, 66, 58, 46, 37, 33, 32.15092 + 30, 23, 29, 39, 46, 51, 51, 51, 51, 60, 56, 51, 45, 34, 255, 255, 32.15093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15094 + 16, 20, 18, 17, 20, 31, 39, 64, 58, 55, 56, 55, 45, 39, 38, 45, 32.15095 + 41, 38, 41, 44, 41, 32, 22, 7, 21, 35, 38, 42, 46, 45, 37, 32, 32.15096 + 43, 53, 60, 62, 53, 56, 76, 83, 67, 55, 53, 54, 51, 53, 59, 75, 32.15097 + 66, 56, 50, 47, 49, 59, 69, 61, 54, 56, 66, 67, 63, 71, 87, 79, 32.15098 + 83, 80, 70, 65, 68, 69, 64, 57, 76, 89, 84, 71, 63, 57, 49, 42, 32.15099 + 36, 34, 35, 35, 35, 41, 48, 59, 45, 43, 40, 33, 37, 43, 36, 41, 32.15100 + 42, 42, 41, 45, 53, 59, 58, 60, 51, 42, 35, 29, 25, 27, 32, 17, 32.15101 + 26, 26, 35, 49, 37, 29, 51, 54, 66, 73, 68, 56, 45, 37, 31, 22, 32.15102 + 26, 36, 44, 50, 50, 49, 49, 68, 62, 56, 49, 39, 255, 255, 255, 255, 32.15103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 22, 32.15104 + 19, 18, 18, 25, 31, 53, 47, 44, 47, 48, 43, 41, 42, 47, 50, 59, 32.15105 + 72, 81, 71, 50, 31, 29, 34, 34, 30, 41, 61, 72, 71, 56, 56, 51, 32.15106 + 50, 54, 54, 67, 94, 68, 56, 50, 54, 57, 55, 58, 66, 64, 56, 51, 32.15107 + 52, 56, 60, 69, 78, 55, 59, 65, 68, 69, 71, 80, 89, 69, 82, 83, 32.15108 + 65, 50, 55, 70, 79, 71, 85, 88, 71, 54, 49, 48, 44, 41, 35, 33, 32.15109 + 34, 37, 39, 48, 56, 54, 49, 59, 55, 36, 34, 45, 41, 44, 41, 40, 32.15110 + 43, 44, 46, 54, 61, 54, 45, 38, 36, 34, 29, 30, 32, 24, 31, 27, 32.15111 + 40, 62, 44, 22, 37, 35, 53, 68, 67, 59, 51, 46, 39, 34, 31, 31, 32.15112 + 33, 38, 43, 51, 54, 67, 62, 57, 53, 45, 108, 255, 255, 255, 255, 255, 32.15113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 17, 19, 22, 20, 20, 32.15114 + 22, 28, 33, 44, 38, 37, 42, 46, 46, 48, 51, 55, 44, 33, 34, 44, 32.15115 + 48, 44, 36, 53, 51, 45, 50, 68, 82, 70, 45, 48, 47, 50, 63, 82, 32.15116 + 75, 66, 69, 44, 43, 53, 57, 53, 43, 55, 73, 47, 42, 46, 59, 71, 32.15117 + 75, 79, 84, 50, 65, 75, 72, 70, 75, 76, 70, 84, 85, 82, 68, 69, 32.15118 + 76, 80, 72, 93, 96, 93, 78, 72, 68, 61, 45, 44, 37, 35, 36, 39, 32.15119 + 41, 50, 60, 54, 41, 52, 62, 57, 57, 52, 29, 44, 40, 47, 56, 56, 32.15120 + 51, 54, 66, 64, 54, 47, 43, 36, 26, 23, 22, 26, 30, 23, 41, 72, 32.15121 + 53, 23, 32, 18, 40, 60, 64, 59, 56, 55, 52, 47, 36, 28, 21, 28, 32.15122 + 40, 52, 60, 61, 58, 56, 54, 48, 37, 255, 255, 255, 255, 255, 255, 255, 32.15123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 11, 23, 20, 10, 16, 25, 31, 32.15124 + 38, 36, 43, 50, 53, 49, 45, 47, 52, 55, 46, 36, 32, 35, 39, 43, 32.15125 + 44, 46, 56, 71, 85, 88, 78, 59, 42, 30, 41, 53, 59, 80, 91, 76, 32.15126 + 44, 46, 59, 71, 68, 68, 65, 60, 50, 37, 54, 47, 68, 81, 101, 69, 32.15127 + 50, 78, 80, 78, 70, 62, 64, 78, 91, 84, 83, 84, 79, 80, 82, 94, 32.15128 + 100, 98, 82, 72, 67, 65, 54, 49, 46, 47, 43, 42, 43, 46, 46, 43, 32.15129 + 40, 33, 41, 49, 49, 53, 57, 54, 48, 40, 36, 40, 42, 41, 37, 39, 32.15130 + 45, 41, 38, 36, 33, 30, 27, 25, 21, 28, 18, 28, 55, 62, 43, 30, 32.15131 + 32, 32, 29, 50, 58, 58, 70, 65, 48, 47, 41, 42, 39, 36, 33, 42, 32.15132 + 54, 60, 56, 55, 56, 52, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15133 + 255, 255, 255, 255, 255, 255, 255, 27, 33, 27, 13, 21, 29, 35, 43, 31, 32.15134 + 38, 46, 50, 51, 52, 61, 66, 46, 48, 47, 38, 30, 33, 50, 65, 64, 32.15135 + 66, 70, 69, 64, 53, 39, 30, 53, 47, 55, 77, 86, 72, 56, 50, 53, 32.15136 + 58, 64, 70, 76, 75, 64, 51, 58, 67, 75, 98, 100, 86, 64, 70, 55, 32.15137 + 58, 64, 69, 76, 85, 95, 100, 90, 82, 76, 74, 76, 81, 86, 88, 80, 32.15138 + 70, 63, 65, 67, 64, 62, 62, 59, 54, 52, 54, 60, 61, 57, 52, 39, 32.15139 + 43, 46, 45, 48, 50, 46, 36, 35, 32, 32, 34, 35, 31, 32, 37, 44, 32.15140 + 41, 37, 33, 29, 27, 26, 25, 27, 21, 29, 48, 55, 44, 35, 36, 31, 32.15141 + 55, 39, 44, 56, 50, 59, 56, 65, 50, 39, 42, 48, 47, 42, 39, 49, 32.15142 + 55, 63, 64, 54, 39, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15143 + 255, 255, 255, 255, 255, 29, 32, 21, 7, 18, 29, 36, 42, 44, 48, 52, 32.15144 + 50, 49, 50, 58, 62, 50, 41, 33, 29, 35, 45, 56, 62, 73, 80, 90, 32.15145 + 95, 94, 84, 73, 65, 62, 49, 51, 68, 68, 51, 43, 52, 58, 63, 73, 32.15146 + 83, 81, 69, 57, 51, 65, 79, 97, 98, 91, 58, 53, 67, 65, 67, 74, 32.15147 + 86, 100, 108, 110, 106, 90, 78, 68, 67, 74, 81, 82, 79, 78, 72, 68, 32.15148 + 72, 76, 77, 76, 77, 66, 60, 56, 56, 61, 61, 57, 53, 46, 44, 43, 32.15149 + 41, 43, 45, 41, 31, 42, 38, 38, 39, 39, 35, 36, 41, 47, 43, 39, 32.15150 + 33, 28, 25, 25, 25, 26, 25, 31, 41, 47, 45, 42, 41, 37, 50, 56, 32.15151 + 29, 50, 59, 28, 68, 63, 60, 57, 54, 47, 39, 37, 39, 41, 45, 53, 32.15152 + 59, 57, 46, 38, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15153 + 255, 255, 175, 30, 35, 24, 15, 27, 41, 46, 50, 52, 56, 56, 51, 46, 32.15154 + 46, 50, 50, 45, 33, 22, 23, 36, 48, 52, 51, 53, 63, 76, 84, 87, 32.15155 + 83, 80, 79, 61, 54, 47, 44, 45, 48, 51, 54, 61, 74, 92, 96, 76, 32.15156 + 52, 48, 58, 70, 92, 104, 69, 64, 43, 51, 52, 72, 71, 72, 76, 82, 32.15157 + 83, 80, 73, 85, 74, 66, 66, 73, 79, 81, 79, 88, 84, 81, 80, 80, 32.15158 + 78, 75, 74, 70, 64, 59, 53, 50, 48, 49, 50, 51, 45, 40, 39, 44, 32.15159 + 46, 43, 34, 32, 29, 28, 28, 27, 22, 23, 28, 43, 42, 40, 34, 29, 32.15160 + 25, 25, 25, 25, 30, 35, 38, 43, 47, 46, 42, 28, 65, 37, 50, 66, 32.15161 + 43, 55, 53, 57, 62, 65, 60, 47, 37, 36, 41, 44, 32, 29, 41, 55, 32.15162 + 56, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15163 + 21, 24, 32, 26, 21, 32, 41, 41, 42, 41, 49, 52, 48, 46, 49, 51, 32.15164 + 49, 29, 33, 35, 33, 30, 32, 41, 49, 46, 45, 44, 41, 40, 47, 60, 32.15165 + 69, 72, 62, 51, 47, 50, 54, 56, 58, 71, 78, 87, 86, 68, 52, 59, 32.15166 + 77, 93, 97, 91, 51, 54, 44, 56, 57, 64, 63, 62, 60, 60, 61, 64, 32.15167 + 64, 82, 78, 75, 73, 73, 76, 80, 82, 91, 89, 86, 82, 78, 75, 71, 32.15168 + 67, 75, 75, 70, 60, 50, 47, 54, 61, 57, 48, 40, 40, 45, 46, 42, 32.15169 + 37, 32, 29, 27, 25, 23, 19, 20, 24, 35, 36, 40, 38, 35, 33, 34, 32.15170 + 35, 28, 34, 38, 40, 44, 49, 46, 38, 48, 29, 61, 55, 56, 75, 50, 32.15171 + 60, 65, 59, 54, 54, 58, 56, 46, 35, 50, 35, 25, 32, 45, 50, 47, 32.15172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 26, 32.15173 + 38, 37, 32, 39, 40, 35, 33, 40, 48, 51, 46, 46, 50, 51, 47, 38, 32.15174 + 37, 36, 37, 38, 38, 38, 37, 39, 39, 41, 43, 49, 60, 74, 82, 82, 32.15175 + 61, 54, 66, 66, 52, 48, 59, 83, 75, 67, 65, 67, 73, 85, 95, 98, 32.15176 + 80, 60, 48, 56, 45, 51, 67, 57, 60, 64, 66, 68, 75, 87, 95, 87, 32.15177 + 88, 89, 85, 79, 76, 79, 83, 89, 92, 92, 88, 86, 85, 82, 78, 78, 32.15178 + 79, 77, 68, 59, 57, 66, 75, 65, 55, 47, 47, 49, 46, 42, 41, 43, 32.15179 + 38, 35, 33, 30, 25, 25, 30, 28, 32, 39, 40, 41, 43, 47, 51, 39, 32.15180 + 39, 40, 43, 48, 50, 43, 33, 53, 51, 38, 65, 61, 54, 83, 59, 62, 32.15181 + 63, 62, 58, 58, 58, 53, 48, 52, 48, 45, 41, 36, 35, 44, 56, 255, 32.15182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 41, 58, 60, 32.15183 + 55, 58, 56, 49, 48, 50, 54, 53, 44, 44, 50, 51, 45, 53, 40, 31, 32.15184 + 35, 48, 50, 38, 25, 27, 31, 39, 49, 62, 71, 75, 77, 72, 62, 59, 32.15185 + 64, 63, 54, 56, 67, 81, 76, 69, 67, 76, 89, 96, 95, 75, 66, 48, 32.15186 + 56, 59, 57, 52, 67, 62, 67, 72, 76, 79, 85, 93, 98, 93, 95, 98, 32.15187 + 95, 88, 84, 84, 86, 92, 98, 100, 98, 97, 98, 96, 92, 83, 83, 81, 32.15188 + 77, 73, 71, 73, 75, 69, 61, 58, 58, 57, 52, 50, 52, 37, 32, 28, 32.15189 + 25, 21, 16, 16, 21, 31, 34, 38, 37, 37, 41, 49, 57, 53, 45, 40, 32.15190 + 45, 51, 49, 39, 31, 61, 48, 57, 51, 57, 66, 55, 73, 59, 69, 72, 32.15191 + 62, 50, 48, 53, 57, 49, 53, 56, 52, 40, 34, 44, 58, 255, 255, 255, 32.15192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 26, 32, 48, 54, 48, 51, 32.15193 + 51, 46, 46, 50, 56, 53, 43, 44, 54, 58, 52, 45, 45, 45, 43, 42, 32.15194 + 38, 36, 35, 50, 45, 40, 40, 46, 52, 56, 57, 56, 69, 67, 50, 47, 32.15195 + 66, 81, 82, 70, 82, 89, 86, 85, 90, 90, 84, 53, 74, 64, 69, 65, 32.15196 + 83, 69, 69, 92, 94, 96, 97, 95, 92, 91, 88, 95, 96, 100, 100, 97, 32.15197 + 93, 91, 91, 94, 101, 104, 100, 99, 100, 98, 92, 91, 88, 85, 85, 86, 32.15198 + 83, 76, 70, 72, 66, 65, 68, 66, 62, 62, 67, 42, 37, 32, 29, 25, 32.15199 + 19, 20, 25, 38, 37, 37, 32, 29, 33, 43, 52, 64, 48, 39, 45, 52, 32.15200 + 47, 37, 31, 49, 70, 53, 51, 69, 52, 45, 69, 71, 68, 60, 52, 53, 32.15201 + 57, 53, 43, 47, 48, 51, 54, 50, 45, 47, 52, 118, 255, 255, 255, 255, 32.15202 + 255, 255, 255, 255, 255, 255, 255, 12, 15, 25, 37, 58, 60, 45, 43, 48, 32.15203 + 44, 48, 51, 53, 48, 45, 44, 47, 45, 45, 38, 42, 52, 55, 43, 28, 32.15204 + 18, 33, 38, 45, 51, 55, 54, 52, 51, 51, 49, 46, 48, 61, 76, 81, 32.15205 + 78, 77, 75, 77, 84, 87, 81, 75, 73, 69, 69, 74, 83, 86, 83, 85, 32.15206 + 91, 102, 100, 97, 96, 97, 100, 103, 104, 104, 102, 103, 104, 104, 102, 97, 32.15207 + 93, 95, 98, 102, 103, 102, 100, 100, 100, 96, 99, 100, 98, 94, 91, 91, 32.15208 + 93, 84, 78, 74, 73, 71, 68, 69, 73, 50, 41, 36, 40, 41, 32, 24, 32.15209 + 23, 30, 42, 45, 31, 27, 39, 47, 43, 47, 45, 43, 43, 43, 40, 34, 32.15210 + 30, 37, 60, 73, 63, 53, 57, 61, 60, 69, 63, 64, 70, 65, 51, 47, 32.15211 + 52, 44, 50, 46, 42, 43, 41, 48, 67, 53, 255, 255, 255, 255, 255, 255, 32.15212 + 255, 255, 255, 255, 255, 16, 19, 30, 37, 56, 63, 52, 45, 50, 46, 48, 32.15213 + 54, 56, 50, 47, 47, 49, 46, 58, 47, 41, 43, 52, 66, 88, 104, 56, 32.15214 + 46, 37, 37, 44, 47, 40, 33, 46, 53, 61, 70, 79, 84, 78, 69, 69, 32.15215 + 66, 66, 71, 73, 72, 74, 78, 94, 93, 97, 103, 103, 98, 98, 103, 105, 32.15216 + 105, 105, 106, 108, 110, 112, 111, 107, 104, 104, 104, 105, 103, 99, 96, 98, 32.15217 + 100, 103, 103, 102, 101, 101, 102, 100, 100, 100, 97, 94, 92, 89, 90, 91, 32.15218 + 84, 77, 75, 73, 71, 75, 81, 76, 62, 47, 39, 38, 33, 26, 22, 26, 32.15219 + 36, 37, 25, 24, 37, 43, 37, 43, 41, 39, 38, 37, 34, 29, 24, 25, 32.15220 + 45, 64, 69, 68, 69, 65, 58, 66, 54, 56, 70, 69, 51, 41, 46, 42, 32.15221 + 42, 34, 32, 38, 38, 42, 56, 64, 255, 255, 255, 255, 255, 255, 255, 255, 32.15222 + 255, 255, 255, 16, 19, 33, 32, 51, 64, 57, 49, 51, 51, 50, 56, 58, 32.15223 + 53, 50, 50, 50, 49, 55, 50, 43, 36, 32, 36, 54, 70, 76, 63, 48, 32.15224 + 40, 40, 41, 40, 37, 41, 54, 68, 77, 80, 78, 68, 58, 65, 63, 63, 32.15225 + 66, 68, 72, 82, 93, 96, 96, 99, 102, 100, 97, 96, 100, 108, 110, 112, 32.15226 + 115, 117, 118, 118, 116, 111, 107, 105, 104, 105, 104, 102, 100, 101, 102, 103, 32.15227 + 103, 101, 102, 103, 105, 109, 109, 107, 105, 102, 100, 97, 95, 93, 85, 77, 32.15228 + 73, 69, 68, 72, 79, 91, 80, 62, 47, 43, 39, 31, 22, 28, 35, 35, 32.15229 + 25, 26, 38, 42, 37, 42, 41, 39, 38, 37, 34, 29, 26, 26, 37, 55, 32.15230 + 72, 82, 84, 78, 72, 67, 51, 49, 65, 72, 58, 45, 44, 53, 47, 33, 32.15231 + 30, 39, 40, 39, 49, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15232 + 173, 11, 13, 30, 23, 40, 62, 59, 48, 50, 51, 51, 57, 59, 54, 51, 32.15233 + 51, 52, 51, 39, 45, 51, 50, 43, 35, 36, 39, 69, 71, 69, 58, 45, 32.15234 + 40, 46, 54, 42, 54, 63, 64, 62, 61, 57, 52, 60, 63, 68, 73, 75, 32.15235 + 78, 91, 104, 101, 103, 107, 109, 109, 109, 110, 113, 111, 113, 114, 116, 117, 32.15236 + 118, 117, 115, 113, 108, 105, 104, 104, 104, 103, 102, 102, 103, 102, 101, 100, 32.15237 + 101, 104, 109, 115, 111, 108, 107, 107, 106, 103, 99, 91, 86, 81, 78, 73, 32.15238 + 67, 65, 67, 80, 82, 75, 62, 54, 48, 39, 28, 28, 36, 37, 27, 24, 32.15239 + 33, 38, 37, 38, 37, 36, 36, 35, 34, 32, 31, 34, 35, 44, 62, 77, 32.15240 + 83, 85, 87, 79, 63, 49, 52, 66, 71, 62, 49, 62, 55, 40, 34, 40, 32.15241 + 38, 37, 46, 62, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 10, 32.15242 + 10, 20, 15, 33, 56, 56, 47, 49, 49, 51, 55, 57, 53, 50, 51, 53, 32.15243 + 52, 53, 52, 54, 52, 50, 50, 52, 51, 52, 61, 71, 66, 54, 46, 48, 32.15244 + 54, 56, 65, 67, 63, 58, 58, 59, 59, 55, 62, 74, 83, 84, 84, 92, 32.15245 + 103, 107, 110, 113, 114, 115, 117, 119, 121, 117, 116, 115, 114, 114, 114, 115, 32.15246 + 113, 113, 108, 104, 103, 103, 104, 103, 103, 102, 102, 101, 99, 98, 100, 103, 32.15247 + 109, 109, 107, 103, 103, 106, 106, 102, 99, 93, 91, 91, 91, 85, 70, 60, 32.15248 + 58, 69, 77, 79, 70, 61, 52, 46, 42, 25, 34, 36, 26, 18, 23, 30, 32.15249 + 33, 29, 29, 29, 28, 29, 31, 34, 36, 34, 31, 34, 48, 62, 71, 78, 32.15250 + 85, 96, 85, 59, 40, 51, 75, 73, 52, 55, 54, 43, 35, 35, 30, 33, 32.15251 + 47, 39, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 12, 11, 12, 32.15252 + 12, 32, 53, 54, 49, 50, 48, 53, 59, 61, 56, 54, 55, 58, 55, 62, 32.15253 + 57, 51, 46, 47, 52, 54, 51, 60, 61, 66, 70, 72, 68, 60, 54, 77, 32.15254 + 86, 88, 84, 80, 78, 77, 74, 65, 74, 87, 97, 97, 94, 98, 105, 108, 32.15255 + 112, 113, 111, 110, 113, 114, 113, 121, 120, 118, 116, 115, 114, 115, 113, 113, 32.15256 + 109, 105, 104, 104, 105, 104, 103, 102, 102, 101, 100, 98, 100, 103, 108, 107, 32.15257 + 108, 105, 105, 106, 107, 104, 103, 92, 92, 94, 96, 86, 70, 57, 53, 69, 32.15258 + 73, 76, 74, 65, 54, 51, 55, 29, 35, 37, 28, 21, 24, 31, 34, 30, 32.15259 + 29, 28, 26, 28, 33, 40, 46, 33, 31, 33, 43, 59, 71, 76, 75, 100, 32.15260 + 100, 77, 45, 42, 64, 70, 57, 49, 54, 48, 41, 37, 31, 36, 54, 36, 32.15261 + 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 11, 10, 8, 16, 39, 32.15262 + 55, 55, 56, 59, 52, 59, 65, 67, 63, 61, 61, 64, 62, 53, 55, 58, 32.15263 + 59, 68, 76, 77, 73, 79, 76, 76, 79, 85, 88, 85, 82, 97, 104, 106, 32.15264 + 103, 100, 99, 95, 90, 88, 93, 102, 109, 109, 105, 108, 114, 118, 123, 124, 32.15265 + 118, 117, 120, 121, 119, 118, 119, 119, 119, 118, 117, 116, 113, 114, 110, 108, 32.15266 + 107, 107, 107, 105, 104, 102, 103, 103, 102, 101, 101, 104, 108, 109, 112, 112, 32.15267 + 111, 107, 106, 105, 106, 96, 94, 93, 93, 84, 70, 60, 58, 69, 65, 70, 32.15268 + 82, 81, 64, 55, 59, 36, 35, 33, 28, 30, 35, 37, 36, 35, 34, 30, 32.15269 + 27, 28, 35, 46, 54, 38, 35, 31, 37, 58, 80, 82, 72, 85, 98, 95, 32.15270 + 71, 49, 50, 63, 73, 56, 61, 57, 49, 45, 37, 39, 56, 51, 59, 255, 32.15271 + 255, 255, 255, 255, 255, 255, 255, 173, 10, 10, 6, 8, 19, 43, 56, 55, 32.15272 + 62, 66, 59, 66, 72, 74, 70, 68, 69, 70, 69, 74, 76, 79, 75, 75, 32.15273 + 81, 83, 79, 88, 90, 91, 89, 87, 92, 105, 115, 111, 113, 111, 107, 105, 32.15274 + 106, 104, 100, 104, 104, 107, 111, 111, 109, 112, 119, 114, 120, 121, 115, 114, 32.15275 + 118, 120, 117, 113, 115, 118, 120, 120, 118, 115, 111, 115, 111, 110, 109, 109, 32.15276 + 109, 107, 105, 103, 104, 105, 104, 103, 103, 105, 109, 107, 111, 112, 110, 103, 32.15277 + 101, 100, 103, 107, 100, 97, 95, 87, 77, 72, 73, 65, 56, 67, 93, 99, 32.15278 + 76, 57, 56, 36, 29, 21, 21, 32, 38, 38, 33, 36, 33, 29, 24, 24, 32.15279 + 31, 44, 53, 42, 34, 21, 21, 51, 81, 85, 69, 68, 88, 107, 97, 63, 32.15280 + 42, 60, 91, 64, 67, 60, 52, 47, 37, 35, 49, 62, 48, 120, 255, 255, 32.15281 + 255, 255, 255, 255, 255, 10, 12, 15, 10, 14, 26, 48, 60, 64, 63, 64, 32.15282 + 67, 64, 67, 71, 75, 77, 77, 76, 76, 79, 81, 86, 87, 89, 92, 96, 32.15283 + 100, 101, 99, 99, 103, 109, 115, 117, 119, 122, 124, 123, 118, 110, 106, 106, 32.15284 + 108, 109, 107, 110, 115, 116, 113, 113, 116, 117, 118, 119, 120, 119, 117, 114, 32.15285 + 112, 117, 116, 115, 115, 115, 116, 118, 117, 114, 114, 115, 112, 108, 107, 109, 32.15286 + 112, 110, 109, 109, 108, 107, 106, 105, 107, 113, 112, 111, 110, 109, 107, 107, 32.15287 + 106, 112, 110, 107, 100, 92, 85, 80, 79, 61, 71, 66, 71, 95, 93, 68, 32.15288 + 59, 52, 37, 27, 29, 31, 22, 24, 30, 33, 35, 44, 37, 23, 28, 43, 32.15289 + 48, 38, 50, 40, 16, 27, 63, 84, 77, 67, 73, 100, 87, 67, 52, 44, 32.15290 + 89, 74, 53, 64, 40, 65, 34, 48, 38, 59, 64, 59, 255, 255, 255, 255, 32.15291 + 255, 255, 255, 14, 16, 18, 11, 14, 36, 59, 61, 60, 67, 71, 69, 68, 32.15292 + 70, 73, 75, 77, 77, 76, 76, 84, 87, 91, 95, 97, 100, 104, 107, 112, 32.15293 + 110, 109, 111, 116, 120, 121, 121, 121, 121, 120, 117, 113, 111, 111, 112, 119, 32.15294 + 116, 118, 122, 122, 119, 118, 120, 119, 119, 120, 120, 119, 117, 116, 115, 115, 32.15295 + 114, 114, 113, 114, 115, 116, 115, 112, 110, 110, 108, 106, 105, 106, 108, 107, 32.15296 + 106, 106, 105, 104, 103, 103, 102, 109, 108, 108, 108, 108, 107, 107, 107, 106, 32.15297 + 106, 104, 100, 92, 85, 81, 79, 75, 78, 76, 84, 104, 104, 82, 63, 56, 32.15298 + 42, 34, 38, 39, 31, 26, 30, 32, 34, 40, 37, 24, 29, 42, 45, 44, 32.15299 + 54, 49, 30, 23, 43, 66, 79, 77, 71, 82, 91, 84, 57, 47, 79, 84, 32.15300 + 63, 63, 46, 64, 45, 52, 45, 47, 57, 60, 255, 255, 255, 255, 255, 255, 32.15301 + 255, 18, 17, 16, 10, 23, 50, 69, 61, 57, 69, 77, 72, 78, 79, 79, 32.15302 + 80, 81, 82, 82, 82, 88, 92, 98, 102, 105, 107, 110, 113, 120, 119, 117, 32.15303 + 118, 120, 122, 122, 121, 124, 123, 121, 121, 122, 123, 123, 122, 126, 123, 124, 32.15304 + 127, 126, 122, 121, 123, 121, 120, 119, 118, 117, 117, 117, 117, 118, 117, 117, 32.15305 + 117, 117, 118, 119, 118, 116, 112, 110, 109, 109, 110, 109, 108, 109, 108, 108, 32.15306 + 107, 106, 106, 105, 105, 110, 110, 110, 111, 111, 112, 112, 112, 101, 102, 103, 32.15307 + 100, 93, 86, 81, 79, 76, 66, 68, 81, 94, 100, 83, 54, 53, 41, 35, 32.15308 + 42, 47, 41, 32, 31, 33, 31, 35, 35, 25, 29, 38, 39, 46, 58, 60, 32.15309 + 46, 26, 27, 54, 84, 85, 71, 62, 91, 98, 62, 52, 66, 89, 74, 62, 32.15310 + 56, 59, 55, 54, 52, 45, 59, 66, 255, 255, 255, 255, 255, 255, 255, 17, 32.15311 + 14, 14, 7, 42, 55, 66, 60, 57, 68, 77, 77, 82, 81, 81, 82, 83, 32.15312 + 85, 88, 89, 94, 98, 104, 108, 110, 111, 113, 114, 121, 120, 119, 120, 120, 32.15313 + 121, 120, 120, 126, 123, 121, 122, 126, 129, 128, 126, 125, 122, 122, 125, 124, 32.15314 + 121, 120, 123, 121, 120, 117, 115, 114, 115, 116, 117, 116, 116, 116, 117, 117, 32.15315 + 118, 118, 117, 118, 113, 109, 109, 111, 112, 110, 107, 108, 108, 107, 107, 106, 32.15316 + 106, 105, 105, 109, 109, 110, 110, 110, 111, 111, 111, 102, 104, 105, 103, 96, 32.15317 + 88, 83, 80, 85, 66, 69, 82, 91, 103, 96, 64, 48, 35, 29, 36, 45, 32.15318 + 44, 36, 32, 36, 30, 33, 36, 27, 28, 32, 31, 35, 50, 57, 46, 27, 32.15319 + 26, 47, 74, 79, 75, 54, 83, 93, 61, 58, 57, 82, 79, 64, 67, 53, 32.15320 + 61, 53, 58, 53, 63, 69, 255, 255, 255, 255, 255, 255, 255, 13, 10, 14, 32.15321 + 13, 63, 54, 55, 59, 63, 66, 74, 83, 77, 77, 77, 78, 81, 85, 88, 32.15322 + 91, 99, 103, 108, 111, 111, 111, 112, 113, 115, 116, 117, 117, 117, 117, 117, 32.15323 + 117, 119, 116, 113, 115, 119, 121, 120, 118, 119, 116, 116, 119, 119, 117, 117, 32.15324 + 121, 120, 118, 115, 112, 112, 113, 114, 116, 109, 109, 110, 111, 111, 111, 111, 32.15325 + 109, 114, 109, 105, 105, 107, 108, 106, 103, 102, 102, 102, 101, 101, 101, 101, 32.15326 + 100, 104, 104, 104, 104, 103, 103, 103, 103, 106, 107, 108, 104, 97, 89, 82, 32.15327 + 79, 86, 66, 66, 75, 82, 99, 101, 77, 55, 41, 29, 31, 38, 40, 35, 32.15328 + 31, 38, 29, 32, 36, 29, 26, 27, 24, 23, 38, 45, 35, 25, 31, 42, 32.15329 + 48, 66, 79, 60, 70, 75, 57, 63, 56, 70, 79, 69, 77, 54, 64, 54, 32.15330 + 62, 62, 66, 66, 255, 255, 255, 255, 255, 255, 255, 14, 10, 19, 29, 72, 32.15331 + 54, 52, 63, 70, 70, 75, 86, 80, 80, 81, 83, 87, 91, 94, 96, 103, 32.15332 + 106, 109, 111, 110, 110, 111, 112, 111, 113, 115, 115, 114, 114, 114, 115, 118, 32.15333 + 117, 115, 116, 117, 118, 118, 118, 118, 115, 114, 117, 118, 116, 117, 121, 118, 32.15334 + 116, 114, 112, 111, 111, 113, 114, 109, 110, 111, 112, 112, 112, 112, 109, 114, 32.15335 + 110, 108, 107, 107, 108, 107, 106, 103, 102, 102, 102, 102, 102, 102, 102, 105, 32.15336 + 105, 105, 104, 104, 103, 103, 103, 107, 108, 108, 104, 96, 88, 83, 80, 79, 32.15337 + 68, 64, 66, 73, 88, 95, 86, 75, 59, 42, 34, 34, 35, 32, 30, 39, 32.15338 + 30, 34, 40, 32, 25, 25, 23, 27, 37, 39, 32, 30, 38, 41, 37, 60, 32.15339 + 76, 67, 61, 63, 60, 63, 61, 61, 75, 72, 80, 60, 69, 59, 64, 70, 32.15340 + 72, 72, 124, 255, 255, 255, 255, 255, 177, 16, 14, 32, 51, 66, 60, 63, 32.15341 + 70, 76, 79, 82, 87, 89, 89, 91, 93, 96, 99, 101, 102, 104, 106, 108, 32.15342 + 109, 110, 111, 113, 115, 113, 116, 118, 118, 115, 113, 114, 115, 119, 120, 121, 32.15343 + 120, 119, 119, 121, 123, 120, 116, 115, 117, 116, 114, 115, 118, 118, 116, 115, 32.15344 + 113, 112, 112, 113, 113, 114, 115, 116, 117, 118, 117, 117, 114, 114, 113, 112, 32.15345 + 110, 108, 108, 109, 110, 106, 106, 106, 106, 106, 107, 107, 107, 108, 109, 109, 32.15346 + 109, 109, 110, 110, 110, 109, 110, 109, 105, 98, 92, 88, 86, 82, 86, 79, 32.15347 + 73, 81, 90, 95, 102, 91, 77, 56, 41, 35, 34, 32, 31, 37, 28, 35, 32.15348 + 44, 34, 25, 27, 27, 37, 36, 35, 36, 36, 35, 42, 50, 67, 67, 67, 32.15349 + 60, 67, 70, 59, 67, 56, 65, 65, 70, 64, 72, 64, 61, 70, 77, 83, 32.15350 + 72, 255, 255, 255, 255, 255, 24, 19, 20, 43, 67, 57, 66, 76, 76, 79, 32.15351 + 87, 89, 85, 92, 92, 94, 96, 98, 99, 100, 101, 103, 105, 107, 109, 109, 32.15352 + 112, 115, 118, 117, 120, 122, 121, 118, 115, 115, 116, 115, 118, 120, 119, 117, 32.15353 + 117, 120, 124, 121, 116, 114, 115, 114, 110, 111, 114, 118, 117, 116, 115, 114, 32.15354 + 113, 113, 114, 113, 114, 116, 117, 118, 117, 116, 113, 109, 109, 110, 108, 104, 32.15355 + 103, 105, 108, 105, 105, 105, 105, 105, 105, 105, 105, 106, 106, 107, 108, 110, 32.15356 + 111, 112, 112, 112, 112, 111, 107, 101, 97, 94, 94, 71, 86, 78, 67, 75, 32.15357 + 78, 81, 97, 96, 83, 64, 46, 38, 36, 34, 32, 32, 27, 36, 46, 36, 32.15358 + 26, 29, 32, 34, 25, 25, 36, 32, 22, 35, 61, 77, 58, 64, 62, 76, 32.15359 + 79, 55, 72, 54, 57, 57, 59, 65, 72, 66, 55, 61, 74, 87, 77, 255, 32.15360 + 255, 255, 255, 255, 29, 5, 13, 70, 68, 63, 62, 68, 74, 78, 81, 83, 32.15361 + 83, 89, 91, 95, 97, 97, 98, 100, 102, 104, 105, 106, 107, 107, 110, 115, 32.15362 + 118, 120, 120, 120, 120, 120, 120, 120, 120, 114, 114, 115, 115, 115, 116, 116, 32.15363 + 116, 114, 113, 113, 112, 112, 113, 114, 114, 115, 116, 116, 114, 111, 110, 110, 32.15364 + 111, 119, 118, 118, 118, 119, 118, 115, 110, 115, 111, 109, 109, 111, 112, 113, 32.15365 + 113, 107, 107, 106, 106, 105, 105, 106, 107, 105, 105, 106, 107, 109, 110, 111, 32.15366 + 112, 110, 109, 111, 111, 103, 94, 94, 101, 78, 78, 77, 77, 78, 83, 90, 32.15367 + 95, 80, 92, 68, 37, 40, 45, 37, 35, 29, 26, 35, 39, 31, 29, 34, 32.15368 + 30, 33, 41, 31, 26, 35, 29, 26, 45, 67, 81, 53, 67, 76, 58, 72, 32.15369 + 64, 54, 43, 61, 61, 74, 58, 63, 48, 61, 72, 85, 76, 255, 255, 255, 32.15370 + 255, 255, 19, 6, 22, 76, 72, 68, 69, 74, 80, 84, 87, 88, 89, 87, 32.15371 + 89, 92, 94, 95, 96, 98, 100, 101, 104, 107, 110, 111, 112, 115, 117, 118, 32.15372 + 118, 118, 118, 118, 118, 118, 118, 117, 117, 117, 118, 118, 118, 119, 119, 116, 32.15373 + 115, 115, 115, 115, 116, 117, 117, 118, 119, 120, 119, 117, 116, 117, 119, 121, 32.15374 + 119, 118, 117, 117, 115, 112, 108, 114, 110, 108, 108, 111, 113, 113, 113, 111, 32.15375 + 111, 110, 108, 105, 104, 104, 105, 104, 104, 105, 107, 108, 109, 110, 111, 110, 32.15376 + 109, 110, 110, 103, 94, 94, 100, 86, 84, 81, 77, 76, 78, 84, 89, 97, 32.15377 + 83, 65, 58, 55, 44, 46, 63, 32, 24, 30, 37, 29, 25, 31, 30, 30, 32.15378 + 37, 29, 26, 33, 26, 22, 38, 59, 77, 58, 59, 75, 69, 71, 71, 57, 32.15379 + 45, 60, 61, 71, 59, 64, 50, 60, 72, 86, 78, 255, 255, 255, 255, 173, 32.15380 + 10, 8, 39, 81, 72, 72, 73, 78, 84, 88, 91, 92, 92, 91, 93, 96, 32.15381 + 97, 97, 98, 101, 103, 105, 109, 114, 117, 118, 118, 119, 120, 121, 121, 121, 32.15382 + 121, 121, 121, 121, 121, 116, 116, 116, 117, 117, 117, 118, 118, 116, 116, 116, 32.15383 + 116, 116, 117, 118, 119, 121, 122, 123, 123, 122, 122, 124, 126, 129, 126, 123, 32.15384 + 120, 119, 118, 116, 112, 113, 109, 107, 107, 110, 112, 113, 113, 114, 114, 113, 32.15385 + 110, 105, 102, 101, 102, 109, 109, 110, 111, 112, 113, 114, 114, 108, 108, 109, 32.15386 + 108, 103, 96, 95, 99, 88, 85, 80, 75, 72, 74, 80, 85, 92, 68, 62, 32.15387 + 68, 60, 52, 67, 87, 38, 23, 26, 34, 29, 23, 27, 30, 33, 37, 34, 32.15388 + 33, 37, 30, 25, 34, 50, 73, 70, 51, 69, 79, 63, 77, 62, 49, 58, 32.15389 + 61, 68, 61, 64, 53, 59, 70, 85, 80, 255, 255, 255, 255, 12, 6, 12, 32.15390 + 51, 81, 68, 71, 72, 78, 83, 87, 90, 91, 91, 93, 95, 97, 97, 98, 32.15391 + 99, 102, 104, 109, 112, 115, 116, 116, 116, 117, 118, 119, 119, 119, 119, 119, 32.15392 + 119, 119, 119, 110, 110, 110, 111, 111, 112, 112, 112, 113, 113, 113, 113, 115, 32.15393 + 116, 117, 118, 122, 122, 123, 122, 120, 121, 123, 126, 130, 127, 123, 120, 119, 32.15394 + 119, 117, 114, 110, 106, 105, 105, 108, 111, 112, 112, 112, 114, 114, 110, 105, 32.15395 + 100, 100, 101, 109, 109, 110, 111, 112, 113, 113, 114, 107, 108, 108, 107, 102, 32.15396 + 98, 97, 99, 89, 86, 81, 77, 75, 78, 85, 90, 78, 66, 69, 67, 51, 32.15397 + 58, 76, 77, 49, 28, 26, 36, 32, 25, 30, 35, 33, 34, 36, 38, 38, 32.15398 + 30, 25, 28, 42, 69, 86, 48, 60, 79, 52, 79, 68, 54, 57, 62, 65, 32.15399 + 64, 65, 56, 58, 67, 82, 81, 255, 255, 255, 255, 13, 3, 18, 61, 76, 32.15400 + 64, 69, 72, 77, 82, 86, 88, 89, 89, 90, 91, 93, 93, 93, 94, 97, 32.15401 + 100, 108, 108, 108, 107, 105, 105, 107, 110, 111, 111, 111, 111, 111, 111, 111, 32.15402 + 111, 107, 105, 105, 106, 106, 106, 107, 107, 107, 108, 108, 109, 110, 112, 114, 32.15403 + 117, 121, 121, 120, 118, 116, 117, 119, 122, 123, 120, 117, 115, 115, 115, 114, 32.15404 + 111, 109, 105, 104, 104, 107, 109, 110, 110, 107, 110, 112, 109, 103, 99, 99, 32.15405 + 101, 103, 103, 104, 104, 105, 106, 106, 106, 107, 108, 109, 106, 103, 102, 100, 32.15406 + 99, 91, 89, 84, 80, 79, 82, 88, 93, 84, 73, 79, 77, 56, 54, 64, 32.15407 + 59, 53, 30, 27, 34, 31, 28, 34, 36, 30, 27, 32, 37, 35, 28, 24, 32.15408 + 19, 28, 59, 94, 53, 53, 76, 51, 82, 74, 60, 56, 66, 64, 69, 67, 32.15409 + 59, 60, 64, 78, 82, 255, 255, 255, 255, 11, 2, 24, 67, 72, 67, 72, 32.15410 + 74, 79, 84, 88, 90, 91, 91, 93, 94, 95, 94, 94, 96, 99, 102, 110, 32.15411 + 109, 108, 105, 103, 104, 107, 109, 110, 110, 110, 110, 110, 110, 110, 108, 110, 32.15412 + 108, 108, 108, 109, 109, 110, 110, 108, 109, 109, 111, 112, 115, 117, 118, 123, 32.15413 + 123, 121, 119, 117, 117, 120, 123, 124, 122, 119, 118, 118, 117, 116, 112, 112, 32.15414 + 108, 105, 105, 107, 109, 110, 109, 103, 108, 112, 109, 103, 98, 99, 101, 103, 32.15415 + 103, 104, 104, 105, 105, 106, 106, 107, 110, 109, 106, 105, 105, 104, 100, 89, 32.15416 + 87, 83, 78, 74, 74, 78, 81, 88, 72, 77, 89, 77, 57, 57, 66, 52, 32.15417 + 33, 28, 31, 29, 33, 39, 34, 34, 26, 34, 42, 37, 32, 29, 19, 20, 32.15418 + 45, 90, 62, 53, 75, 61, 81, 80, 66, 57, 71, 64, 74, 68, 62, 64, 32.15419 + 63, 74, 84, 138, 255, 255, 255, 14, 8, 34, 72, 68, 71, 74, 77, 81, 32.15420 + 86, 90, 92, 92, 92, 99, 100, 100, 99, 99, 100, 104, 107, 111, 112, 113, 32.15421 + 112, 111, 111, 113, 115, 115, 115, 115, 115, 115, 115, 115, 113, 114, 112, 113, 32.15422 + 113, 113, 114, 114, 114, 114, 115, 116, 117, 120, 122, 124, 126, 128, 128, 127, 32.15423 + 124, 123, 125, 128, 132, 131, 129, 127, 126, 125, 123, 120, 115, 116, 112, 109, 32.15424 + 108, 110, 111, 111, 110, 104, 109, 114, 111, 103, 98, 99, 101, 108, 108, 108, 32.15425 + 109, 109, 109, 109, 110, 108, 111, 110, 106, 106, 109, 107, 101, 91, 89, 86, 32.15426 + 80, 75, 73, 74, 76, 82, 79, 78, 84, 85, 68, 58, 67, 52, 38, 33, 32.15427 + 29, 30, 41, 46, 33, 40, 29, 39, 48, 41, 38, 38, 24, 24, 36, 81, 32.15428 + 73, 59, 77, 73, 73, 84, 70, 58, 75, 66, 79, 70, 64, 71, 64, 73, 32.15429 + 88, 88, 255, 255, 255, 21, 14, 42, 76, 65, 75, 75, 77, 84, 87, 92, 32.15430 + 92, 95, 92, 101, 99, 101, 98, 99, 99, 105, 108, 106, 109, 113, 115, 115, 32.15431 + 114, 115, 116, 114, 114, 114, 114, 114, 114, 114, 114, 116, 114, 115, 115, 116, 32.15432 + 116, 118, 118, 122, 123, 124, 126, 128, 131, 133, 135, 132, 132, 134, 130, 132, 32.15433 + 133, 137, 141, 133, 131, 129, 128, 126, 122, 118, 112, 118, 115, 112, 111, 112, 32.15434 + 113, 113, 112, 106, 112, 116, 113, 104, 98, 98, 101, 105, 105, 107, 108, 108, 32.15435 + 108, 108, 108, 108, 112, 111, 107, 107, 111, 108, 102, 99, 98, 96, 91, 87, 32.15436 + 84, 84, 86, 79, 100, 89, 69, 74, 72, 54, 45, 55, 46, 38, 30, 34, 32.15437 + 50, 53, 36, 40, 27, 38, 48, 40, 38, 39, 23, 33, 34, 75, 81, 64, 32.15438 + 78, 80, 62, 86, 73, 59, 78, 67, 82, 70, 65, 78, 67, 71, 90, 93, 32.15439 + 255, 255, 20, 11, 16, 53, 73, 68, 72, 81, 83, 89, 88, 91, 90, 94, 32.15440 + 94, 99, 98, 101, 100, 104, 103, 106, 106, 113, 113, 114, 114, 115, 115, 115, 32.15441 + 115, 113, 113, 113, 114, 115, 116, 118, 119, 118, 117, 117, 116, 116, 117, 120, 32.15442 + 120, 125, 123, 124, 127, 133, 138, 139, 139, 139, 135, 135, 135, 142, 141, 137, 32.15443 + 132, 123, 124, 124, 122, 119, 119, 122, 124, 113, 111, 111, 112, 113, 114, 112, 32.15444 + 111, 110, 109, 107, 105, 104, 103, 102, 103, 101, 101, 104, 105, 106, 106, 107, 32.15445 + 107, 106, 106, 107, 108, 109, 108, 106, 104, 95, 95, 104, 87, 102, 94, 95, 32.15446 + 75, 88, 97, 106, 104, 90, 71, 56, 48, 52, 50, 41, 31, 37, 48, 46, 32.15447 + 36, 41, 31, 37, 28, 46, 28, 31, 21, 26, 42, 70, 94, 76, 66, 89, 32.15448 + 84, 80, 70, 67, 79, 81, 73, 63, 61, 81, 74, 62, 72, 90, 255, 255, 32.15449 + 16, 9, 21, 59, 72, 68, 74, 82, 87, 91, 93, 94, 95, 97, 99, 104, 32.15450 + 105, 106, 107, 108, 109, 110, 111, 112, 113, 113, 113, 114, 114, 114, 115, 114, 32.15451 + 114, 114, 114, 114, 115, 117, 117, 117, 117, 117, 117, 119, 120, 121, 122, 126, 32.15452 + 125, 128, 132, 136, 139, 138, 136, 134, 135, 135, 135, 136, 136, 135, 135, 130, 32.15453 + 129, 126, 125, 122, 122, 122, 120, 113, 110, 108, 110, 112, 113, 111, 108, 109, 32.15454 + 108, 107, 105, 104, 104, 104, 104, 103, 103, 103, 104, 106, 106, 106, 107, 104, 32.15455 + 105, 106, 108, 111, 112, 112, 112, 104, 97, 105, 97, 109, 93, 95, 88, 83, 32.15456 + 92, 104, 110, 105, 90, 71, 58, 58, 55, 48, 42, 46, 52, 48, 38, 53, 32.15457 + 41, 45, 36, 49, 33, 35, 25, 28, 40, 61, 85, 74, 66, 84, 76, 84, 32.15458 + 73, 75, 78, 84, 70, 68, 66, 81, 83, 68, 67, 89, 255, 255, 9, 8, 32.15459 + 30, 65, 72, 70, 78, 82, 87, 92, 94, 96, 98, 101, 103, 107, 107, 108, 32.15460 + 109, 110, 111, 112, 112, 113, 113, 113, 113, 114, 114, 114, 115, 119, 119, 118, 32.15461 + 118, 118, 119, 119, 120, 119, 119, 119, 120, 123, 124, 126, 127, 127, 128, 131, 32.15462 + 134, 137, 137, 135, 132, 132, 136, 140, 139, 136, 136, 138, 142, 130, 127, 124, 32.15463 + 124, 124, 125, 124, 119, 119, 114, 111, 113, 117, 118, 115, 111, 108, 107, 106, 32.15464 + 105, 104, 104, 104, 105, 105, 104, 104, 104, 106, 105, 105, 105, 114, 113, 112, 32.15465 + 110, 110, 109, 109, 108, 110, 100, 107, 108, 113, 94, 98, 103, 91, 94, 99, 32.15466 + 105, 104, 92, 74, 60, 61, 55, 49, 49, 53, 55, 50, 43, 53, 44, 48, 32.15467 + 44, 51, 37, 38, 31, 34, 43, 56, 79, 77, 70, 83, 75, 87, 72, 80, 32.15468 + 70, 86, 64, 71, 65, 76, 91, 72, 59, 84, 255, 255, 4, 9, 39, 66, 32.15469 + 68, 67, 74, 80, 85, 90, 93, 95, 98, 101, 103, 104, 104, 105, 106, 107, 32.15470 + 108, 108, 109, 112, 112, 112, 113, 113, 114, 114, 114, 118, 118, 117, 116, 116, 32.15471 + 116, 117, 117, 114, 115, 115, 116, 120, 122, 124, 125, 128, 129, 131, 132, 133, 32.15472 + 133, 132, 131, 130, 135, 139, 140, 138, 137, 136, 139, 123, 119, 116, 119, 123, 32.15473 + 126, 124, 119, 122, 116, 111, 113, 118, 120, 116, 112, 105, 104, 104, 103, 103, 32.15474 + 103, 104, 104, 105, 105, 104, 103, 104, 103, 103, 102, 117, 116, 112, 109, 109, 32.15475 + 108, 108, 108, 106, 104, 109, 110, 108, 99, 103, 111, 100, 97, 95, 94, 92, 32.15476 + 86, 77, 69, 63, 55, 49, 50, 55, 56, 52, 48, 45, 41, 46, 49, 51, 32.15477 + 42, 38, 32, 35, 44, 51, 72, 76, 70, 81, 77, 87, 68, 78, 59, 85, 32.15478 + 59, 70, 59, 64, 89, 70, 49, 72, 255, 176, 2, 13, 48, 66, 63, 63, 32.15479 + 68, 76, 82, 87, 90, 93, 95, 99, 101, 102, 102, 102, 103, 104, 105, 105, 32.15480 + 105, 108, 108, 108, 109, 109, 110, 110, 110, 110, 109, 109, 108, 108, 108, 108, 32.15481 + 109, 107, 107, 108, 110, 114, 116, 118, 119, 126, 125, 126, 125, 125, 127, 130, 32.15482 + 133, 126, 128, 131, 134, 134, 133, 128, 126, 121, 117, 115, 118, 122, 125, 123, 32.15483 + 117, 117, 111, 107, 108, 111, 113, 111, 107, 103, 103, 102, 101, 101, 101, 102, 32.15484 + 102, 104, 104, 103, 102, 103, 102, 101, 100, 106, 106, 106, 106, 110, 112, 114, 32.15485 + 116, 95, 106, 108, 103, 96, 102, 105, 106, 90, 91, 92, 91, 89, 86, 83, 32.15486 + 81, 71, 62, 53, 50, 56, 59, 56, 51, 41, 42, 46, 55, 50, 43, 32, 32.15487 + 29, 29, 42, 44, 61, 68, 61, 74, 77, 86, 67, 76, 55, 82, 59, 69, 32.15488 + 56, 54, 81, 68, 45, 62, 255, 13, 4, 24, 58, 66, 62, 65, 67, 76, 32.15489 + 81, 86, 89, 92, 94, 97, 100, 103, 104, 104, 104, 105, 105, 106, 106, 104, 32.15490 + 104, 105, 105, 105, 106, 106, 106, 109, 108, 108, 107, 108, 108, 109, 109, 110, 32.15491 + 111, 111, 112, 116, 118, 120, 122, 121, 121, 122, 121, 122, 126, 132, 137, 132, 32.15492 + 131, 131, 131, 131, 130, 126, 124, 126, 124, 122, 123, 124, 124, 120, 115, 116, 32.15493 + 112, 109, 108, 109, 110, 110, 109, 104, 103, 102, 101, 101, 101, 101, 101, 104, 32.15494 + 103, 103, 102, 103, 102, 101, 101, 106, 106, 106, 106, 109, 110, 111, 112, 93, 32.15495 + 109, 106, 102, 90, 104, 102, 99, 83, 88, 94, 96, 92, 84, 75, 70, 79, 32.15496 + 75, 64, 55, 61, 69, 67, 57, 50, 52, 51, 61, 48, 44, 29, 26, 33, 32.15497 + 47, 42, 54, 66, 59, 68, 76, 82, 72, 79, 63, 78, 61, 70, 62, 53, 32.15498 + 71, 69, 52, 54, 255, 10, 7, 37, 68, 70, 69, 75, 72, 79, 84, 88, 32.15499 + 91, 93, 96, 98, 101, 106, 106, 106, 106, 107, 107, 107, 108, 106, 106, 107, 32.15500 + 107, 107, 108, 108, 108, 113, 113, 113, 113, 114, 115, 116, 117, 116, 117, 117, 32.15501 + 118, 121, 123, 125, 126, 120, 122, 126, 128, 130, 134, 141, 147, 140, 140, 137, 32.15502 + 131, 125, 124, 126, 131, 127, 127, 127, 127, 124, 123, 121, 117, 116, 116, 115, 32.15503 + 112, 109, 109, 111, 114, 107, 106, 105, 103, 102, 101, 101, 101, 105, 105, 104, 32.15504 + 104, 105, 104, 104, 104, 112, 111, 110, 109, 109, 107, 105, 104, 103, 111, 103, 32.15505 + 109, 92, 101, 92, 95, 86, 87, 91, 95, 94, 85, 72, 62, 71, 77, 70, 32.15506 + 59, 66, 84, 84, 68, 57, 59, 50, 59, 41, 42, 30, 33, 45, 54, 39, 32.15507 + 49, 67, 60, 64, 70, 72, 78, 86, 75, 69, 60, 68, 72, 56, 61, 70, 32.15508 + 61, 47, 255, 6, 11, 46, 75, 73, 74, 83, 77, 82, 87, 91, 94, 96, 32.15509 + 98, 100, 103, 106, 106, 107, 107, 107, 107, 107, 108, 111, 111, 112, 112, 112, 32.15510 + 113, 113, 113, 113, 113, 113, 114, 115, 116, 118, 118, 115, 115, 115, 115, 119, 32.15511 + 120, 122, 123, 122, 126, 134, 138, 141, 145, 151, 156, 142, 142, 137, 126, 115, 32.15512 + 114, 123, 134, 122, 124, 127, 127, 124, 123, 122, 121, 112, 113, 114, 110, 105, 32.15513 + 104, 108, 113, 110, 109, 107, 105, 104, 103, 102, 102, 106, 106, 106, 105, 107, 32.15514 + 107, 106, 106, 107, 108, 109, 110, 112, 110, 109, 108, 114, 112, 101, 117, 98, 32.15515 + 96, 83, 94, 90, 86, 85, 91, 98, 98, 88, 77, 57, 70, 70, 60, 72, 32.15516 + 97, 98, 78, 60, 60, 47, 56, 37, 43, 34, 41, 49, 55, 32, 41, 64, 32.15517 + 58, 56, 58, 61, 80, 91, 83, 61, 56, 65, 79, 58, 54, 70, 66, 42, 32.15518 + 255, 7, 17, 43, 74, 81, 70, 68, 79, 84, 87, 91, 94, 95, 96, 97, 32.15519 + 99, 106, 106, 107, 107, 107, 108, 108, 108, 108, 110, 111, 113, 113, 112, 111, 32.15520 + 111, 114, 114, 113, 113, 113, 114, 115, 115, 108, 115, 122, 124, 123, 121, 123, 32.15521 + 126, 122, 123, 128, 133, 139, 144, 148, 149, 146, 141, 134, 130, 127, 126, 126, 32.15522 + 130, 124, 120, 136, 122, 117, 128, 117, 124, 117, 117, 118, 114, 110, 108, 109, 32.15523 + 112, 106, 105, 104, 103, 101, 102, 105, 107, 103, 109, 111, 107, 106, 107, 108, 32.15524 + 107, 113, 110, 108, 108, 111, 111, 108, 105, 110, 105, 106, 108, 99, 84, 79, 32.15525 + 83, 84, 86, 84, 83, 85, 88, 84, 78, 72, 62, 76, 87, 80, 83, 93, 32.15526 + 87, 57, 58, 36, 46, 37, 41, 26, 40, 45, 48, 50, 49, 49, 51, 49, 32.15527 + 46, 52, 76, 91, 70, 78, 51, 59, 76, 58, 68, 77, 62, 40, 186, 70, 32.15528 + 70, 72, 75, 76, 77, 82, 84, 86, 90, 94, 97, 98, 99, 101, 103, 107, 32.15529 + 107, 107, 107, 108, 108, 108, 109, 109, 110, 112, 113, 114, 113, 112, 111, 115, 32.15530 + 114, 114, 114, 115, 116, 117, 118, 112, 116, 120, 120, 119, 120, 124, 129, 132, 32.15531 + 128, 128, 132, 141, 147, 148, 146, 143, 140, 136, 133, 131, 129, 128, 129, 126, 32.15532 + 123, 136, 125, 123, 134, 123, 128, 123, 122, 120, 117, 113, 111, 111, 112, 108, 32.15533 + 108, 108, 107, 105, 104, 104, 104, 103, 109, 111, 107, 106, 107, 108, 106, 113, 32.15534 + 110, 107, 106, 110, 111, 110, 106, 106, 99, 100, 102, 96, 83, 78, 82, 85, 32.15535 + 83, 77, 71, 72, 77, 78, 75, 81, 70, 79, 88, 83, 87, 99, 95, 74, 32.15536 + 76, 57, 63, 56, 59, 47, 61, 51, 49, 48, 50, 51, 49, 46, 44, 47, 32.15537 + 73, 93, 77, 81, 53, 56, 70, 61, 71, 76, 61, 41, 113, 120, 111, 92, 32.15538 + 74, 73, 83, 90, 87, 89, 93, 97, 99, 101, 102, 105, 107, 106, 106, 107, 32.15539 + 107, 108, 108, 108, 108, 109, 110, 112, 113, 114, 113, 112, 111, 115, 115, 115, 32.15540 + 115, 116, 118, 119, 120, 121, 122, 122, 120, 121, 123, 130, 136, 138, 132, 130, 32.15541 + 135, 146, 153, 152, 148, 140, 139, 137, 135, 133, 132, 130, 129, 127, 125, 133, 32.15542 + 126, 127, 136, 128, 127, 126, 123, 119, 116, 115, 113, 111, 109, 110, 110, 109, 32.15543 + 108, 107, 105, 103, 101, 108, 113, 114, 111, 111, 112, 113, 110, 112, 110, 106, 32.15544 + 105, 108, 109, 109, 106, 104, 95, 93, 97, 95, 86, 81, 83, 84, 82, 76, 32.15545 + 69, 69, 73, 73, 70, 82, 72, 77, 83, 80, 86, 99, 100, 87, 89, 74, 32.15546 + 72, 62, 60, 50, 62, 61, 51, 48, 53, 55, 48, 42, 41, 42, 70, 96, 32.15547 + 89, 86, 60, 58, 68, 62, 71, 72, 57, 42, 120, 123, 104, 83, 73, 76, 32.15548 + 87, 87, 84, 91, 93, 97, 99, 101, 102, 105, 108, 105, 105, 105, 106, 106, 32.15549 + 106, 107, 107, 108, 109, 111, 112, 112, 112, 111, 110, 114, 114, 114, 115, 116, 32.15550 + 118, 120, 121, 122, 122, 121, 119, 120, 123, 129, 134, 127, 126, 128, 135, 144, 32.15551 + 150, 149, 147, 138, 138, 136, 132, 130, 133, 131, 130, 127, 126, 128, 125, 126, 32.15552 + 132, 126, 120, 122, 117, 113, 112, 113, 113, 110, 107, 110, 108, 105, 103, 103, 32.15553 + 103, 102, 102, 108, 112, 113, 109, 111, 112, 112, 109, 110, 109, 107, 106, 107, 32.15554 + 105, 104, 100, 102, 93, 90, 96, 97, 90, 85, 87, 75, 78, 78, 74, 71, 32.15555 + 70, 65, 59, 71, 64, 66, 72, 76, 81, 91, 95, 83, 86, 76, 68, 62, 32.15556 + 57, 50, 59, 62, 49, 43, 50, 52, 42, 33, 32, 35, 62, 88, 90, 81, 32.15557 + 62, 60, 66, 58, 67, 62, 48, 41, 112, 112, 87, 70, 76, 83, 84, 84, 32.15558 + 89, 91, 94, 96, 98, 99, 100, 104, 106, 103, 103, 103, 104, 104, 105, 105, 32.15559 + 105, 106, 108, 109, 111, 111, 110, 109, 109, 113, 113, 113, 114, 115, 117, 119, 32.15560 + 120, 113, 113, 114, 114, 116, 117, 120, 122, 114, 119, 128, 134, 136, 137, 137, 32.15561 + 137, 137, 138, 133, 126, 125, 131, 132, 131, 128, 130, 126, 126, 126, 126, 125, 32.15562 + 113, 116, 112, 108, 109, 111, 112, 111, 108, 109, 104, 98, 95, 97, 100, 103, 32.15563 + 104, 101, 104, 104, 101, 103, 106, 104, 100, 106, 108, 108, 107, 106, 101, 97, 32.15564 + 93, 99, 88, 86, 92, 94, 88, 84, 86, 68, 72, 73, 68, 63, 61, 55, 32.15565 + 49, 56, 54, 53, 60, 72, 75, 77, 83, 77, 81, 76, 66, 73, 67, 64, 32.15566 + 69, 57, 45, 38, 43, 44, 35, 26, 23, 30, 50, 73, 83, 69, 62, 61, 32.15567 + 65, 53, 61, 51, 39, 41, 121, 113, 85, 73, 81, 87, 84, 86, 97, 94, 32.15568 + 96, 98, 98, 98, 100, 103, 105, 103, 103, 103, 104, 104, 104, 105, 105, 107, 32.15569 + 108, 109, 111, 111, 111, 110, 109, 113, 113, 113, 114, 115, 117, 118, 119, 112, 32.15570 + 113, 115, 116, 119, 119, 119, 119, 120, 127, 137, 139, 136, 133, 133, 134, 137, 32.15571 + 139, 133, 123, 122, 130, 132, 129, 129, 137, 129, 131, 129, 124, 127, 113, 114, 32.15572 + 111, 110, 110, 112, 113, 113, 112, 110, 103, 95, 91, 95, 100, 104, 106, 102, 32.15573 + 104, 104, 101, 104, 107, 105, 100, 105, 107, 109, 107, 104, 99, 95, 92, 95, 32.15574 + 86, 86, 92, 92, 84, 81, 84, 76, 77, 74, 65, 59, 59, 59, 57, 49, 32.15575 + 51, 47, 54, 70, 70, 66, 74, 82, 85, 83, 70, 83, 73, 70, 66, 60, 32.15576 + 55, 49, 48, 47, 43, 35, 28, 38, 49, 65, 81, 64, 69, 69, 69, 53, 32.15577 + 61, 46, 34, 44, 109, 102, 88, 82, 85, 87, 88, 92, 99, 100, 101, 102, 32.15578 + 101, 100, 101, 104, 107, 104, 104, 105, 105, 106, 106, 106, 106, 109, 110, 111, 32.15579 + 113, 113, 112, 111, 111, 116, 116, 116, 116, 116, 117, 118, 119, 120, 120, 120, 32.15580 + 121, 125, 126, 125, 125, 134, 137, 141, 142, 140, 138, 138, 138, 136, 140, 136, 32.15581 + 125, 124, 132, 132, 127, 126, 139, 130, 135, 130, 121, 130, 116, 113, 113, 113, 32.15582 + 112, 111, 111, 112, 114, 114, 106, 98, 95, 98, 103, 105, 105, 109, 110, 109, 32.15583 + 107, 111, 114, 112, 106, 106, 107, 107, 105, 102, 100, 100, 99, 93, 88, 90, 32.15584 + 95, 92, 82, 79, 83, 79, 82, 79, 71, 64, 63, 64, 62, 50, 54, 46, 32.15585 + 49, 66, 63, 58, 68, 79, 80, 83, 67, 88, 76, 70, 59, 65, 69, 66, 32.15586 + 56, 53, 55, 49, 38, 49, 52, 61, 82, 62, 75, 73, 69, 60, 67, 47, 32.15587 + 35, 50, 114, 81, 85, 86, 84, 88, 96, 99, 94, 107, 108, 108, 106, 105, 32.15588 + 106, 108, 109, 106, 106, 107, 107, 107, 108, 108, 108, 111, 112, 113, 115, 115, 32.15589 + 114, 113, 113, 118, 118, 117, 117, 117, 118, 119, 119, 125, 122, 123, 123, 125, 32.15590 + 127, 129, 129, 137, 137, 134, 135, 138, 140, 141, 139, 135, 141, 139, 129, 127, 32.15591 + 134, 132, 124, 121, 138, 129, 135, 130, 119, 132, 118, 112, 113, 114, 112, 108, 32.15592 + 107, 109, 112, 118, 111, 103, 100, 103, 106, 105, 103, 111, 112, 112, 110, 113, 32.15593 + 116, 113, 107, 108, 108, 106, 102, 100, 101, 105, 108, 95, 91, 95, 100, 95, 32.15594 + 83, 80, 85, 71, 78, 81, 76, 69, 65, 60, 55, 54, 57, 45, 45, 62, 32.15595 + 59, 52, 63, 63, 65, 74, 63, 93, 85, 82, 68, 62, 73, 71, 57, 53, 32.15596 + 59, 54, 41, 49, 48, 54, 77, 56, 72, 68, 60, 67, 73, 50, 38, 55, 32.15597 + 105, 84, 77, 81, 91, 99, 99, 99, 102, 115, 111, 109, 108, 109, 111, 113, 32.15598 + 111, 111, 111, 111, 110, 108, 107, 107, 107, 115, 116, 117, 117, 115, 115, 116, 32.15599 + 117, 119, 119, 119, 120, 121, 122, 123, 124, 128, 129, 133, 131, 127, 128, 137, 32.15600 + 143, 138, 144, 148, 147, 142, 140, 145, 147, 134, 137, 140, 139, 135, 131, 126, 32.15601 + 126, 132, 132, 132, 131, 127, 124, 121, 117, 116, 112, 110, 109, 110, 111, 111, 32.15602 + 111, 104, 107, 107, 104, 100, 100, 106, 113, 110, 110, 112, 112, 112, 111, 110, 32.15603 + 110, 102, 106, 110, 109, 104, 99, 97, 97, 104, 96, 88, 83, 81, 79, 76, 32.15604 + 73, 72, 74, 76, 76, 73, 71, 69, 69, 55, 48, 44, 46, 48, 46, 49, 32.15605 + 56, 64, 73, 70, 66, 78, 80, 73, 72, 73, 70, 73, 68, 52, 49, 55, 32.15606 + 53, 51, 51, 53, 58, 63, 65, 65, 62, 59, 56, 58, 48, 36, 95, 74, 32.15607 + 70, 73, 81, 88, 94, 104, 115, 114, 112, 111, 110, 111, 113, 113, 114, 113, 32.15608 + 112, 111, 111, 108, 109, 109, 110, 114, 115, 117, 118, 117, 117, 119, 121, 119, 32.15609 + 119, 119, 120, 121, 123, 125, 126, 125, 127, 129, 128, 128, 127, 129, 132, 143, 32.15610 + 141, 140, 143, 148, 151, 150, 149, 148, 144, 139, 137, 136, 134, 128, 125, 133, 32.15611 + 132, 131, 130, 126, 124, 122, 118, 116, 113, 110, 109, 110, 112, 112, 111, 105, 32.15612 + 106, 106, 102, 98, 98, 102, 109, 111, 113, 114, 114, 113, 112, 111, 109, 110, 32.15613 + 111, 111, 108, 103, 99, 96, 93, 97, 92, 89, 89, 90, 89, 86, 83, 73, 32.15614 + 71, 69, 68, 68, 67, 65, 63, 56, 51, 48, 48, 47, 42, 44, 50, 62, 32.15615 + 71, 67, 64, 75, 76, 68, 67, 75, 77, 84, 77, 55, 48, 56, 58, 48, 32.15616 + 48, 48, 49, 51, 54, 59, 61, 56, 54, 61, 58, 46, 78, 53, 58, 71, 32.15617 + 82, 89, 92, 100, 108, 112, 112, 112, 112, 112, 113, 114, 115, 115, 114, 112, 32.15618 + 111, 109, 110, 112, 114, 113, 115, 117, 118, 118, 119, 122, 124, 118, 119, 119, 32.15619 + 121, 123, 125, 127, 128, 127, 129, 131, 133, 134, 133, 133, 132, 148, 148, 148, 32.15620 + 147, 150, 152, 154, 153, 153, 144, 135, 133, 135, 136, 131, 126, 133, 132, 130, 32.15621 + 127, 123, 122, 121, 119, 116, 112, 109, 109, 110, 111, 111, 110, 110, 111, 110, 32.15622 + 106, 102, 101, 104, 109, 112, 114, 114, 113, 112, 111, 109, 108, 106, 104, 103, 32.15623 + 103, 104, 104, 104, 101, 90, 88, 87, 86, 84, 80, 74, 69, 78, 74, 70, 32.15624 + 69, 70, 70, 67, 64, 58, 56, 55, 52, 47, 40, 40, 44, 58, 66, 63, 32.15625 + 60, 70, 69, 62, 62, 73, 80, 92, 84, 57, 46, 54, 58, 53, 51, 48, 32.15626 + 45, 46, 50, 58, 62, 49, 52, 62, 68, 57, 58, 39, 43, 54, 65, 77, 32.15627 + 84, 93, 99, 109, 111, 113, 113, 114, 114, 115, 116, 116, 114, 111, 110, 108, 32.15628 + 110, 113, 115, 113, 115, 117, 118, 118, 118, 120, 122, 118, 119, 120, 121, 123, 32.15629 + 126, 128, 130, 127, 128, 130, 135, 139, 142, 142, 140, 147, 152, 155, 150, 143, 32.15630 + 140, 147, 154, 144, 137, 130, 129, 131, 133, 130, 128, 131, 129, 127, 124, 120, 32.15631 + 119, 119, 119, 114, 110, 107, 107, 108, 109, 109, 108, 110, 111, 110, 107, 104, 32.15632 + 103, 106, 110, 112, 113, 110, 108, 106, 105, 105, 105, 104, 100, 96, 96, 99, 32.15633 + 103, 103, 100, 96, 93, 92, 90, 85, 79, 72, 68, 73, 73, 72, 71, 70, 32.15634 + 69, 67, 66, 59, 60, 60, 55, 49, 42, 40, 42, 50, 57, 56, 55, 64, 32.15635 + 63, 57, 60, 68, 75, 87, 80, 55, 44, 49, 50, 58, 52, 46, 44, 47, 32.15636 + 53, 57, 58, 44, 49, 58, 72, 61, 46, 39, 29, 21, 21, 41, 65, 88, 32.15637 + 99, 104, 108, 112, 114, 115, 115, 116, 118, 116, 114, 111, 109, 107, 109, 112, 32.15638 + 114, 114, 116, 117, 117, 116, 115, 117, 118, 118, 119, 120, 121, 123, 126, 128, 32.15639 + 130, 129, 129, 130, 134, 138, 144, 145, 145, 151, 152, 151, 147, 146, 145, 149, 32.15640 + 150, 136, 134, 132, 130, 128, 128, 127, 128, 128, 126, 124, 121, 117, 116, 116, 32.15641 + 116, 112, 109, 106, 106, 107, 108, 108, 107, 104, 104, 104, 103, 102, 102, 104, 32.15642 + 106, 111, 110, 105, 101, 99, 98, 100, 101, 109, 103, 95, 91, 90, 90, 89, 32.15643 + 85, 86, 84, 84, 82, 78, 75, 72, 70, 58, 63, 67, 67, 63, 59, 59, 32.15644 + 60, 56, 58, 58, 53, 48, 43, 41, 40, 42, 49, 49, 50, 59, 57, 52, 32.15645 + 58, 63, 65, 74, 73, 56, 48, 48, 43, 56, 48, 42, 44, 51, 55, 52, 32.15646 + 46, 40, 46, 50, 71, 59, 40, 31, 18, 9, 11, 33, 62, 82, 88, 96, 32.15647 + 103, 110, 114, 115, 116, 117, 120, 117, 115, 113, 111, 108, 109, 111, 112, 115, 32.15648 + 116, 117, 117, 115, 114, 115, 117, 118, 119, 119, 121, 123, 125, 127, 130, 135, 32.15649 + 136, 136, 137, 140, 142, 144, 145, 162, 151, 142, 147, 161, 167, 161, 150, 138, 32.15650 + 138, 136, 132, 127, 125, 124, 127, 126, 125, 123, 120, 116, 115, 114, 113, 111, 32.15651 + 108, 106, 105, 106, 107, 107, 107, 104, 104, 103, 103, 104, 105, 106, 106, 111, 32.15652 + 109, 105, 100, 97, 96, 96, 96, 102, 97, 90, 85, 83, 83, 83, 81, 85, 32.15653 + 84, 84, 81, 75, 70, 67, 66, 57, 60, 63, 62, 59, 56, 55, 56, 53, 32.15654 + 54, 52, 47, 45, 44, 41, 36, 37, 44, 44, 47, 55, 50, 46, 55, 58, 32.15655 + 56, 64, 67, 59, 56, 54, 45, 55, 49, 47, 51, 58, 60, 53, 45, 38, 32.15656 + 45, 43, 71, 58, 41, 25, 22, 21, 23, 40, 60, 71, 73, 90, 99, 108, 32.15657 + 114, 115, 116, 119, 122, 118, 117, 116, 114, 111, 110, 110, 111, 114, 116, 117, 32.15658 + 117, 116, 116, 118, 120, 119, 119, 119, 120, 121, 123, 125, 128, 132, 138, 142, 32.15659 + 143, 142, 141, 144, 146, 158, 150, 147, 152, 162, 167, 163, 154, 143, 138, 132, 32.15660 + 127, 126, 127, 126, 127, 125, 125, 124, 122, 118, 116, 114, 113, 112, 110, 107, 32.15661 + 106, 107, 109, 109, 108, 109, 108, 107, 107, 108, 108, 108, 107, 108, 109, 109, 32.15662 + 107, 104, 99, 94, 91, 90, 89, 86, 82, 79, 80, 83, 84, 96, 97, 100, 32.15663 + 97, 90, 83, 77, 75, 73, 67, 61, 60, 62, 63, 59, 55, 57, 56, 50, 32.15664 + 45, 47, 49, 44, 35, 37, 42, 43, 45, 52, 44, 40, 50, 51, 49, 58, 32.15665 + 64, 60, 60, 61, 52, 51, 52, 55, 58, 60, 59, 55, 51, 39, 47, 42, 32.15666 + 74, 60, 45, 35, 33, 25, 21, 29, 48, 63, 69, 87, 96, 107, 113, 115, 32.15667 + 116, 119, 123, 120, 120, 118, 117, 113, 112, 111, 110, 113, 115, 117, 118, 118, 32.15668 + 119, 121, 123, 119, 119, 119, 120, 121, 122, 123, 126, 119, 129, 137, 140, 138, 32.15669 + 136, 139, 142, 139, 146, 153, 151, 145, 143, 148, 152, 144, 134, 123, 120, 124, 32.15670 + 130, 130, 130, 125, 126, 126, 125, 121, 118, 115, 113, 114, 111, 109, 108, 109, 32.15671 + 110, 110, 110, 110, 108, 106, 106, 106, 105, 104, 104, 107, 110, 114, 115, 111, 32.15672 + 103, 94, 88, 92, 92, 89, 83, 76, 73, 76, 77, 74, 78, 86, 90, 86, 32.15673 + 80, 76, 74, 86, 72, 57, 55, 62, 66, 60, 52, 63, 60, 53, 46, 50, 32.15674 + 54, 47, 37, 39, 43, 43, 45, 50, 40, 35, 46, 44, 44, 55, 62, 58, 32.15675 + 60, 64, 58, 43, 50, 57, 58, 54, 50, 51, 53, 39, 49, 43, 78, 64, 32.15676 + 46, 55, 52, 55, 63, 61, 52, 53, 63, 80, 97, 104, 100, 107, 124, 126, 32.15677 + 115, 117, 116, 116, 115, 113, 114, 115, 115, 117, 119, 120, 119, 117, 115, 115, 32.15678 + 116, 111, 121, 119, 108, 107, 116, 112, 100, 111, 114, 116, 118, 126, 131, 130, 32.15679 + 125, 131, 133, 135, 135, 136, 134, 134, 132, 132, 134, 135, 131, 125, 123, 125, 32.15680 + 130, 131, 131, 130, 128, 122, 118, 115, 112, 116, 115, 114, 113, 112, 112, 112, 32.15681 + 112, 112, 111, 110, 109, 107, 106, 105, 105, 105, 105, 106, 107, 107, 108, 109, 32.15682 + 109, 102, 102, 99, 90, 80, 75, 77, 78, 80, 77, 72, 78, 90, 84, 72, 32.15683 + 72, 82, 82, 74, 61, 53, 55, 61, 64, 64, 58, 54, 51, 49, 44, 45, 32.15684 + 50, 33, 38, 44, 47, 46, 38, 29, 23, 36, 35, 56, 56, 66, 61, 68, 32.15685 + 50, 46, 55, 62, 61, 57, 53, 51, 48, 44, 36, 59, 65, 65, 46, 60, 32.15686 + 62, 73, 80, 79, 69, 61, 60, 69, 80, 93, 102, 110, 116, 116, 114, 119, 32.15687 + 118, 117, 117, 115, 115, 115, 116, 117, 121, 126, 128, 124, 116, 110, 106, 105, 32.15688 + 111, 109, 100, 97, 97, 89, 77, 75, 83, 87, 82, 78, 85, 95, 101, 99, 32.15689 + 105, 110, 113, 116, 121, 130, 133, 123, 127, 133, 135, 133, 129, 126, 126, 126, 32.15690 + 126, 125, 124, 119, 115, 112, 110, 115, 114, 113, 112, 111, 111, 111, 111, 110, 32.15691 + 110, 109, 108, 106, 105, 104, 104, 106, 106, 107, 108, 109, 109, 110, 110, 106, 32.15692 + 107, 105, 100, 91, 84, 79, 76, 82, 90, 86, 79, 87, 89, 80, 75, 68, 32.15693 + 71, 69, 63, 61, 66, 71, 73, 64, 60, 56, 54, 51, 45, 44, 47, 45, 32.15694 + 43, 38, 31, 28, 26, 28, 31, 28, 27, 49, 50, 63, 60, 69, 53, 53, 32.15695 + 54, 56, 59, 57, 53, 48, 46, 51, 42, 62, 67, 65, 49, 66, 74, 86, 32.15696 + 92, 92, 86, 76, 65, 67, 70, 83, 103, 113, 112, 113, 119, 119, 118, 117, 32.15697 + 116, 113, 113, 113, 114, 118, 122, 127, 128, 123, 116, 109, 105, 95, 97, 99, 32.15698 + 101, 99, 92, 82, 75, 62, 64, 63, 55, 51, 59, 70, 76, 92, 97, 100, 32.15699 + 99, 97, 99, 108, 112, 117, 120, 125, 130, 133, 133, 130, 129, 125, 125, 125, 32.15700 + 124, 120, 117, 115, 113, 113, 112, 111, 110, 109, 109, 109, 109, 110, 110, 109, 32.15701 + 108, 107, 106, 105, 104, 107, 107, 108, 108, 109, 110, 110, 111, 110, 111, 111, 32.15702 + 110, 105, 96, 84, 75, 80, 98, 95, 80, 82, 88, 83, 77, 69, 72, 71, 32.15703 + 67, 65, 66, 66, 63, 63, 60, 58, 58, 55, 47, 43, 44, 44, 44, 43, 32.15704 + 37, 31, 25, 23, 23, 30, 27, 47, 45, 55, 51, 60, 43, 56, 49, 49, 32.15705 + 55, 57, 51, 47, 47, 53, 43, 62, 65, 128, 56, 65, 80, 91, 88, 89, 32.15706 + 89, 89, 82, 77, 72, 75, 89, 103, 110, 113, 117, 116, 115, 114, 112, 110, 32.15707 + 110, 110, 110, 119, 120, 121, 119, 115, 112, 111, 111, 93, 91, 95, 105, 104, 32.15708 + 92, 81, 79, 74, 63, 54, 51, 59, 70, 69, 62, 64, 72, 80, 83, 87, 32.15709 + 89, 100, 106, 112, 111, 111, 114, 121, 127, 130, 132, 121, 122, 123, 123, 120, 32.15710 + 118, 116, 114, 111, 111, 109, 108, 107, 107, 107, 107, 111, 110, 110, 109, 108, 32.15711 + 107, 106, 106, 107, 107, 107, 108, 108, 109, 109, 109, 111, 111, 111, 114, 113, 32.15712 + 105, 92, 79, 74, 90, 92, 82, 80, 79, 75, 78, 75, 76, 72, 65, 61, 32.15713 + 60, 55, 50, 60, 57, 57, 59, 59, 51, 45, 44, 41, 44, 46, 42, 36, 32.15714 + 26, 19, 16, 29, 26, 43, 39, 49, 45, 54, 39, 49, 42, 43, 52, 53, 32.15715 + 48, 49, 57, 49, 41, 59, 62, 255, 68, 59, 77, 92, 89, 86, 90, 96, 32.15716 + 96, 90, 82, 72, 70, 84, 103, 110, 107, 115, 114, 113, 112, 109, 109, 110, 32.15717 + 110, 116, 117, 118, 116, 113, 110, 109, 109, 97, 91, 94, 102, 100, 84, 74, 32.15718 + 73, 71, 65, 63, 65, 74, 83, 77, 66, 62, 70, 77, 78, 77, 75, 78, 32.15719 + 80, 99, 98, 97, 101, 108, 115, 119, 121, 112, 113, 114, 115, 113, 113, 111, 32.15720 + 110, 112, 111, 110, 109, 108, 108, 108, 108, 110, 110, 109, 108, 108, 107, 107, 32.15721 + 106, 105, 105, 106, 106, 106, 107, 107, 107, 109, 107, 107, 111, 114, 110, 99, 32.15722 + 88, 72, 78, 83, 87, 86, 72, 68, 82, 71, 72, 68, 61, 57, 58, 57, 32.15723 + 55, 57, 53, 54, 58, 60, 55, 49, 47, 49, 47, 41, 35, 31, 27, 25, 32.15724 + 25, 21, 17, 35, 32, 45, 45, 58, 45, 34, 35, 42, 49, 47, 45, 54, 32.15725 + 67, 49, 43, 62, 63, 255, 199, 62, 77, 92, 93, 91, 91, 96, 100, 102, 32.15726 + 97, 84, 73, 79, 97, 104, 101, 116, 115, 115, 114, 112, 113, 114, 114, 113, 32.15727 + 118, 122, 123, 118, 111, 104, 100, 97, 92, 92, 99, 99, 91, 85, 84, 72, 32.15728 + 83, 93, 94, 93, 96, 97, 96, 101, 102, 101, 98, 90, 80, 72, 68, 85, 32.15729 + 88, 93, 98, 102, 104, 103, 104, 107, 108, 110, 112, 112, 112, 111, 111, 112, 32.15730 + 111, 110, 108, 108, 107, 107, 107, 106, 106, 105, 105, 104, 104, 103, 103, 105, 32.15731 + 105, 105, 105, 105, 105, 105, 105, 107, 105, 105, 109, 114, 113, 107, 98, 80, 32.15732 + 77, 79, 90, 94, 76, 70, 86, 75, 77, 74, 65, 58, 58, 60, 61, 56, 32.15733 + 51, 50, 54, 59, 55, 52, 51, 50, 48, 48, 48, 50, 46, 37, 30, 25, 32.15734 + 20, 34, 29, 39, 38, 51, 38, 25, 34, 43, 44, 41, 44, 56, 67, 51, 32.15735 + 49, 69, 66, 255, 255, 81, 81, 86, 91, 92, 92, 96, 102, 105, 104, 101, 32.15736 + 97, 91, 88, 92, 99, 115, 114, 114, 115, 113, 114, 116, 116, 116, 120, 125, 32.15737 + 127, 123, 115, 109, 105, 102, 99, 98, 101, 105, 107, 109, 108, 97, 107, 115, 32.15738 + 113, 108, 109, 112, 114, 111, 110, 109, 111, 111, 108, 103, 99, 87, 92, 97, 32.15739 + 99, 99, 99, 99, 102, 104, 106, 108, 111, 111, 112, 112, 112, 112, 111, 110, 32.15740 + 108, 108, 107, 107, 108, 106, 106, 105, 105, 105, 104, 104, 104, 106, 106, 106, 32.15741 + 106, 106, 106, 106, 106, 106, 106, 108, 112, 116, 115, 111, 105, 93, 88, 83, 32.15742 + 87, 95, 87, 79, 87, 84, 90, 89, 77, 65, 62, 65, 67, 59, 52, 47, 32.15743 + 50, 55, 54, 52, 51, 47, 47, 51, 60, 69, 64, 48, 34, 34, 26, 37, 32.15744 + 26, 33, 28, 39, 25, 25, 38, 45, 39, 37, 46, 55, 55, 45, 47, 70, 32.15745 + 65, 255, 255, 106, 91, 79, 83, 86, 87, 92, 102, 98, 99, 109, 118, 102, 32.15746 + 78, 77, 95, 115, 114, 114, 113, 112, 113, 115, 116, 119, 121, 124, 121, 121, 32.15747 + 119, 119, 120, 115, 113, 108, 104, 106, 112, 116, 116, 121, 119, 116, 111, 112, 32.15748 + 114, 111, 107, 121, 116, 111, 109, 111, 109, 104, 98, 101, 103, 103, 100, 96, 32.15749 + 98, 104, 112, 100, 99, 103, 106, 106, 108, 108, 110, 112, 111, 112, 109, 110, 32.15750 + 108, 108, 108, 109, 109, 108, 108, 108, 108, 108, 107, 107, 107, 107, 107, 107, 32.15751 + 107, 107, 107, 107, 109, 112, 116, 119, 118, 114, 110, 100, 101, 89, 83, 93, 32.15752 + 95, 89, 85, 84, 94, 97, 87, 75, 71, 76, 80, 63, 53, 46, 48, 52, 32.15753 + 52, 50, 51, 53, 44, 39, 44, 55, 59, 54, 44, 30, 22, 32, 22, 29, 32.15754 + 26, 37, 25, 29, 43, 46, 36, 35, 48, 52, 43, 34, 40, 63, 60, 255, 32.15755 + 255, 133, 113, 90, 75, 71, 76, 86, 94, 101, 98, 101, 114, 118, 107, 97, 32.15756 + 92, 117, 116, 115, 116, 116, 116, 116, 118, 118, 118, 121, 119, 121, 120, 119, 32.15757 + 118, 116, 115, 117, 117, 119, 120, 121, 122, 120, 117, 116, 116, 118, 117, 113, 32.15758 + 109, 118, 117, 115, 114, 112, 110, 108, 108, 107, 106, 108, 114, 120, 120, 113, 32.15759 + 103, 105, 109, 103, 91, 89, 97, 99, 93, 111, 114, 117, 114, 113, 109, 111, 32.15760 + 113, 108, 108, 108, 108, 106, 105, 103, 103, 109, 109, 109, 109, 109, 109, 109, 32.15761 + 109, 112, 113, 114, 115, 116, 117, 118, 118, 107, 106, 99, 92, 92, 97, 99, 32.15762 + 91, 98, 100, 104, 104, 93, 81, 77, 80, 90, 78, 60, 48, 49, 55, 54, 32.15763 + 48, 50, 41, 37, 41, 45, 43, 44, 47, 27, 29, 27, 21, 22, 26, 28, 32.15764 + 29, 26, 37, 42, 42, 43, 50, 51, 44, 35, 32, 68, 55, 255, 255, 128, 32.15765 + 124, 109, 87, 83, 93, 100, 98, 110, 114, 115, 115, 116, 118, 116, 112, 103, 32.15766 + 107, 115, 121, 124, 123, 120, 117, 120, 120, 120, 121, 120, 119, 121, 120, 117, 32.15767 + 117, 118, 118, 120, 121, 122, 123, 123, 120, 117, 116, 118, 119, 115, 114, 105, 32.15768 + 106, 108, 109, 111, 112, 114, 116, 109, 106, 104, 107, 112, 116, 115, 112, 124, 32.15769 + 128, 122, 112, 110, 117, 119, 114, 113, 114, 115, 113, 110, 108, 107, 108, 108, 32.15770 + 108, 108, 109, 106, 106, 105, 104, 107, 107, 107, 107, 107, 107, 107, 107, 111, 32.15771 + 111, 112, 113, 115, 116, 117, 117, 110, 108, 101, 93, 90, 93, 92, 86, 79, 32.15772 + 80, 85, 91, 87, 77, 68, 66, 92, 87, 77, 65, 59, 58, 55, 49, 46, 32.15773 + 36, 30, 34, 39, 39, 40, 42, 40, 41, 36, 25, 18, 17, 20, 20, 18, 32.15774 + 31, 43, 40, 37, 41, 49, 46, 41, 38, 71, 59, 255, 255, 255, 132, 120, 32.15775 + 89, 74, 79, 80, 68, 90, 107, 116, 113, 118, 130, 136, 129, 99, 106, 116, 32.15776 + 124, 128, 125, 122, 122, 122, 122, 122, 123, 124, 123, 122, 121, 121, 121, 120, 32.15777 + 119, 121, 121, 122, 122, 122, 119, 115, 114, 114, 117, 118, 119, 118, 118, 118, 32.15778 + 115, 115, 115, 115, 115, 117, 114, 109, 109, 110, 112, 111, 109, 114, 117, 115, 32.15779 + 108, 105, 112, 114, 110, 115, 115, 115, 113, 110, 108, 106, 107, 106, 107, 108, 32.15780 + 108, 107, 106, 106, 106, 107, 107, 107, 107, 107, 107, 107, 107, 109, 109, 110, 32.15781 + 111, 112, 114, 115, 115, 114, 111, 104, 95, 89, 88, 86, 81, 88, 85, 87, 32.15782 + 95, 97, 91, 83, 78, 83, 86, 85, 74, 63, 56, 49, 44, 36, 30, 27, 32.15783 + 31, 36, 37, 39, 41, 50, 55, 53, 43, 34, 25, 20, 14, 15, 29, 43, 32.15784 + 42, 35, 35, 44, 47, 44, 42, 71, 255, 255, 255, 255, 121, 108, 77, 56, 32.15785 + 50, 48, 43, 41, 55, 66, 76, 92, 115, 139, 151, 107, 113, 119, 120, 122, 32.15786 + 122, 122, 123, 123, 123, 123, 123, 125, 123, 122, 121, 122, 121, 120, 119, 120, 32.15787 + 119, 119, 119, 118, 117, 115, 114, 115, 116, 119, 119, 130, 128, 126, 123, 120, 32.15788 + 118, 116, 116, 116, 115, 115, 115, 115, 115, 114, 112, 115, 118, 117, 113, 112, 32.15789 + 117, 118, 115, 115, 116, 115, 115, 113, 112, 110, 110, 104, 105, 106, 107, 106, 32.15790 + 106, 106, 105, 108, 108, 108, 108, 108, 108, 108, 108, 107, 107, 108, 109, 110, 32.15791 + 111, 112, 113, 116, 113, 107, 100, 92, 88, 84, 81, 87, 82, 81, 86, 88, 32.15792 + 87, 84, 84, 74, 80, 81, 72, 61, 51, 43, 35, 23, 31, 41, 47, 47, 32.15793 + 45, 46, 49, 52, 59, 66, 67, 64, 52, 36, 19, 17, 26, 40, 44, 40, 32.15794 + 36, 41, 42, 36, 40, 68, 255, 255, 255, 255, 204, 89, 72, 55, 44, 51, 32.15795 + 64, 59, 44, 32, 35, 40, 50, 74, 101, 95, 103, 113, 119, 121, 120, 123, 32.15796 + 124, 124, 124, 126, 125, 124, 123, 124, 123, 122, 121, 121, 119, 117, 116, 116, 32.15797 + 116, 116, 119, 121, 122, 122, 120, 122, 121, 123, 121, 122, 120, 121, 122, 124, 32.15798 + 125, 114, 114, 113, 113, 114, 118, 122, 126, 110, 111, 108, 104, 103, 104, 101, 32.15799 + 98, 109, 109, 109, 110, 111, 112, 110, 110, 103, 103, 105, 106, 104, 104, 104, 32.15800 + 104, 106, 106, 106, 106, 106, 106, 106, 106, 105, 105, 106, 107, 109, 110, 111, 32.15801 + 111, 113, 110, 106, 101, 93, 86, 83, 82, 73, 72, 76, 83, 84, 83, 84, 32.15802 + 87, 78, 82, 79, 69, 59, 50, 40, 31, 24, 47, 71, 80, 74, 67, 67, 32.15803 + 70, 60, 64, 70, 76, 83, 76, 58, 37, 17, 17, 27, 40, 44, 38, 36, 32.15804 + 34, 28, 36, 62, 255, 255, 255, 255, 255, 199, 78, 66, 55, 66, 88, 88, 32.15805 + 61, 39, 38, 33, 20, 23, 38, 68, 84, 105, 120, 126, 127, 128, 128, 127, 32.15806 + 125, 127, 126, 125, 123, 124, 123, 123, 121, 121, 118, 116, 115, 114, 114, 119, 32.15807 + 122, 125, 126, 125, 124, 124, 124, 122, 122, 122, 123, 125, 127, 132, 132, 130, 32.15808 + 127, 119, 111, 107, 109, 117, 124, 131, 130, 127, 123, 120, 116, 111, 110, 102, 32.15809 + 101, 101, 103, 106, 108, 106, 105, 104, 104, 105, 106, 104, 104, 104, 103, 104, 32.15810 + 104, 104, 104, 104, 104, 104, 104, 104, 105, 105, 107, 108, 109, 110, 110, 107, 32.15811 + 105, 103, 100, 92, 83, 79, 81, 65, 69, 78, 89, 91, 89, 89, 91, 85, 32.15812 + 85, 78, 65, 53, 45, 36, 28, 40, 69, 98, 106, 97, 88, 87, 89, 78, 32.15813 + 76, 73, 75, 84, 85, 75, 61, 24, 13, 17, 34, 44, 39, 33, 30, 29, 32.15814 + 39, 125, 255, 255, 255, 255, 255, 255, 89, 76, 68, 74, 84, 85, 65, 48, 32.15815 + 53, 58, 55, 50, 53, 62, 80, 104, 122, 129, 132, 134, 135, 129, 129, 129, 32.15816 + 128, 129, 127, 125, 124, 126, 125, 122, 119, 118, 116, 114, 114, 118, 120, 122, 32.15817 + 121, 119, 118, 122, 125, 128, 127, 126, 126, 126, 128, 132, 132, 141, 140, 136, 32.15818 + 126, 113, 108, 111, 115, 119, 118, 118, 118, 113, 109, 106, 105, 106, 104, 103, 32.15819 + 105, 109, 111, 108, 106, 107, 107, 108, 108, 106, 105, 104, 104, 105, 105, 105, 32.15820 + 105, 105, 105, 105, 105, 104, 104, 105, 106, 108, 109, 110, 110, 106, 103, 102, 32.15821 + 102, 92, 81, 78, 81, 67, 63, 65, 74, 79, 80, 79, 80, 85, 89, 86, 32.15822 + 71, 56, 47, 44, 42, 62, 86, 108, 112, 104, 99, 98, 97, 91, 89, 84, 32.15823 + 80, 84, 88, 87, 81, 50, 31, 27, 39, 47, 38, 32, 32, 36, 45, 255, 32.15824 + 255, 255, 255, 255, 255, 255, 97, 85, 82, 81, 78, 125, 98, 62, 47, 52, 32.15825 + 63, 68, 64, 75, 89, 109, 122, 126, 130, 136, 140, 133, 131, 130, 130, 130, 32.15826 + 129, 127, 126, 128, 127, 124, 121, 119, 116, 115, 114, 116, 116, 116, 113, 110, 32.15827 + 111, 117, 121, 119, 118, 118, 119, 123, 127, 131, 133, 132, 138, 144, 142, 132, 32.15828 + 121, 117, 117, 115, 115, 118, 122, 121, 119, 117, 118, 115, 113, 111, 113, 116, 32.15829 + 117, 114, 111, 110, 110, 110, 110, 108, 107, 105, 105, 109, 109, 109, 109, 109, 32.15830 + 109, 109, 109, 104, 104, 105, 106, 108, 109, 110, 110, 108, 105, 105, 105, 95, 32.15831 + 82, 78, 82, 90, 75, 63, 64, 71, 77, 80, 83, 85, 95, 98, 84, 67, 32.15832 + 59, 61, 65, 77, 93, 106, 105, 101, 100, 99, 96, 92, 97, 97, 92, 90, 32.15833 + 91, 93, 92, 80, 55, 44, 50, 51, 38, 34, 36, 40, 49, 255, 255, 255, 32.15834 + 255, 255, 255, 255, 98, 89, 88, 89, 89, 99, 90, 78, 71, 60, 55, 70, 32.15835 + 89, 82, 93, 109, 121, 126, 129, 134, 136, 139, 136, 133, 129, 126, 124, 126, 32.15836 + 126, 126, 123, 125, 126, 120, 111, 112, 117, 122, 111, 108, 107, 104, 109, 114, 32.15837 + 108, 118, 118, 119, 118, 121, 124, 127, 127, 130, 135, 137, 133, 134, 132, 119, 32.15838 + 105, 113, 116, 119, 122, 121, 118, 113, 109, 116, 113, 110, 112, 115, 116, 110, 32.15839 + 106, 106, 110, 114, 114, 109, 106, 106, 106, 109, 110, 110, 110, 110, 109, 108, 32.15840 + 107, 108, 108, 107, 106, 105, 105, 106, 106, 103, 105, 98, 91, 95, 103, 93, 32.15841 + 74, 85, 76, 69, 71, 71, 72, 75, 81, 81, 92, 101, 92, 76, 79, 85, 32.15842 + 76, 83, 105, 96, 99, 90, 107, 100, 108, 103, 104, 98, 98, 108, 103, 97, 32.15843 + 99, 103, 76, 38, 44, 41, 39, 21, 29, 33, 48, 255, 255, 255, 255, 255, 32.15844 + 255, 255, 95, 84, 84, 87, 85, 94, 99, 99, 96, 97, 103, 107, 105, 91, 32.15845 + 100, 113, 123, 127, 130, 133, 136, 135, 134, 132, 129, 127, 126, 127, 127, 131, 32.15846 + 125, 122, 122, 122, 122, 129, 136, 110, 103, 108, 114, 113, 120, 124, 117, 120, 32.15847 + 125, 128, 127, 134, 144, 145, 138, 123, 130, 135, 131, 124, 123, 121, 115, 114, 32.15848 + 115, 117, 119, 121, 121, 121, 121, 120, 114, 108, 108, 113, 119, 120, 120, 108, 32.15849 + 110, 112, 111, 106, 105, 106, 108, 111, 111, 110, 110, 109, 109, 109, 109, 109, 32.15850 + 108, 108, 107, 106, 104, 104, 103, 102, 104, 98, 91, 96, 106, 99, 82, 75, 32.15851 + 69, 64, 65, 70, 78, 81, 84, 87, 87, 94, 96, 86, 87, 99, 103, 96, 32.15852 + 101, 91, 99, 113, 126, 116, 115, 108, 106, 102, 103, 114, 112, 107, 107, 107, 32.15853 + 84, 43, 39, 35, 40, 26, 32, 38, 119, 255, 255, 255, 255, 255, 255, 255, 32.15854 + 92, 79, 85, 91, 88, 95, 107, 107, 104, 110, 118, 109, 90, 95, 102, 112, 32.15855 + 118, 121, 122, 124, 127, 128, 128, 128, 128, 130, 129, 128, 127, 135, 128, 126, 32.15856 + 130, 135, 138, 141, 142, 137, 122, 115, 103, 84, 75, 70, 59, 73, 66, 77, 32.15857 + 101, 119, 124, 140, 159, 150, 139, 126, 117, 119, 124, 127, 124, 116, 115, 114, 32.15858 + 115, 115, 118, 122, 124, 122, 117, 112, 112, 116, 122, 123, 124, 113, 113, 113, 32.15859 + 111, 107, 107, 109, 111, 112, 111, 109, 108, 108, 108, 109, 110, 109, 109, 109, 32.15860 + 107, 105, 102, 100, 98, 99, 101, 96, 89, 94, 107, 104, 90, 84, 81, 73, 32.15861 + 66, 70, 80, 80, 74, 97, 89, 96, 106, 96, 88, 95, 103, 107, 102, 101, 32.15862 + 107, 134, 129, 119, 111, 103, 100, 99, 102, 112, 115, 112, 108, 113, 99, 54, 32.15863 + 37, 29, 45, 36, 39, 48, 255, 255, 255, 255, 255, 255, 255, 255, 89, 77, 32.15864 + 88, 98, 96, 104, 108, 104, 100, 100, 100, 90, 77, 97, 100, 106, 111, 113, 32.15865 + 116, 118, 120, 120, 121, 123, 125, 128, 128, 127, 126, 133, 131, 135, 142, 150, 32.15866 + 149, 142, 133, 112, 93, 79, 67, 51, 54, 62, 61, 65, 70, 76, 74, 68, 32.15867 + 69, 87, 106, 140, 134, 126, 121, 121, 123, 121, 120, 123, 121, 119, 116, 115, 32.15868 + 116, 118, 120, 118, 118, 118, 120, 123, 123, 118, 115, 116, 116, 115, 114, 111, 32.15869 + 110, 111, 111, 111, 110, 107, 105, 105, 106, 108, 109, 107, 108, 108, 107, 104, 32.15870 + 99, 95, 93, 95, 98, 93, 84, 87, 100, 100, 90, 95, 94, 84, 71, 73, 32.15871 + 85, 82, 70, 94, 92, 103, 113, 102, 92, 89, 86, 94, 96, 115, 123, 150, 32.15872 + 127, 120, 115, 100, 93, 94, 99, 106, 114, 116, 106, 116, 112, 68, 39, 27, 32.15873 + 50, 43, 41, 118, 255, 255, 255, 255, 255, 255, 255, 255, 85, 76, 87, 97, 32.15874 + 97, 110, 107, 108, 110, 102, 90, 84, 86, 97, 100, 105, 109, 111, 115, 117, 32.15875 + 118, 116, 118, 120, 123, 124, 125, 126, 125, 131, 131, 136, 144, 152, 151, 142, 32.15876 + 126, 78, 64, 59, 59, 58, 77, 100, 109, 91, 126, 131, 87, 50, 48, 57, 32.15877 + 52, 67, 83, 103, 116, 114, 110, 108, 110, 129, 128, 125, 123, 122, 121, 120, 32.15878 + 120, 118, 118, 120, 122, 123, 122, 117, 115, 115, 115, 116, 117, 114, 112, 109, 32.15879 + 107, 110, 108, 106, 104, 103, 104, 106, 107, 106, 106, 106, 105, 102, 98, 94, 32.15880 + 91, 93, 97, 91, 79, 78, 90, 92, 83, 83, 86, 79, 70, 75, 90, 90, 32.15881 + 79, 85, 93, 106, 109, 104, 106, 104, 88, 79, 87, 116, 134, 168, 144, 133, 32.15882 + 124, 102, 91, 94, 98, 103, 116, 122, 106, 110, 116, 76, 42, 26, 51, 44, 32.15883 + 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 76, 81, 90, 91, 109, 32.15884 + 108, 112, 116, 102, 84, 78, 87, 95, 96, 102, 107, 110, 114, 116, 116, 115, 32.15885 + 116, 118, 120, 121, 122, 124, 124, 130, 130, 131, 134, 142, 147, 144, 131, 104, 32.15886 + 91, 89, 87, 80, 89, 104, 105, 110, 126, 142, 130, 91, 53, 48, 61, 39, 32.15887 + 33, 40, 66, 94, 112, 112, 108, 122, 122, 121, 122, 122, 121, 121, 120, 123, 32.15888 + 121, 119, 119, 120, 123, 124, 126, 113, 113, 114, 116, 114, 112, 107, 103, 108, 32.15889 + 107, 106, 104, 104, 105, 105, 106, 105, 105, 105, 104, 102, 99, 96, 94, 96, 32.15890 + 101, 95, 80, 75, 84, 86, 78, 75, 77, 74, 69, 72, 83, 85, 81, 89, 32.15891 + 96, 102, 99, 96, 106, 107, 90, 86, 91, 107, 130, 165, 154, 130, 109, 100, 32.15892 + 85, 89, 93, 95, 115, 127, 106, 102, 113, 78, 43, 24, 47, 39, 31, 255, 32.15893 + 255, 255, 255, 255, 255, 255, 255, 255, 86, 82, 82, 88, 93, 105, 108, 110, 32.15894 + 105, 93, 82, 79, 82, 97, 98, 104, 108, 114, 115, 115, 116, 118, 118, 118, 32.15895 + 119, 120, 121, 123, 124, 131, 131, 127, 126, 134, 142, 142, 132, 117, 107, 107, 32.15896 + 104, 93, 92, 99, 98, 121, 113, 125, 141, 119, 70, 55, 72, 79, 54, 39, 32.15897 + 56, 89, 115, 122, 120, 121, 121, 122, 123, 122, 123, 124, 125, 128, 127, 126, 32.15898 + 125, 124, 126, 127, 129, 118, 116, 115, 115, 114, 113, 109, 106, 109, 108, 108, 32.15899 + 107, 107, 107, 107, 106, 107, 106, 105, 105, 103, 102, 101, 101, 102, 108, 102, 32.15900 + 86, 78, 85, 86, 79, 81, 80, 78, 76, 74, 75, 78, 81, 101, 98, 101, 32.15901 + 103, 98, 100, 99, 86, 100, 109, 107, 125, 142, 146, 118, 101, 99, 80, 84, 32.15902 + 89, 90, 116, 133, 110, 100, 112, 80, 45, 24, 44, 37, 255, 255, 255, 255, 32.15903 + 255, 255, 255, 255, 255, 255, 90, 88, 88, 91, 101, 99, 109, 106, 92, 88, 32.15904 + 94, 100, 99, 106, 108, 113, 117, 123, 124, 122, 119, 119, 119, 118, 117, 117, 32.15905 + 121, 123, 124, 126, 129, 127, 126, 130, 136, 135, 126, 120, 111, 111, 105, 94, 32.15906 + 95, 101, 101, 96, 117, 127, 118, 121, 131, 117, 92, 109, 109, 111, 111, 103, 32.15907 + 102, 116, 133, 131, 130, 129, 129, 128, 130, 133, 134, 131, 133, 136, 137, 134, 32.15908 + 130, 124, 123, 125, 121, 117, 116, 116, 116, 114, 112, 109, 110, 110, 110, 110, 32.15909 + 109, 108, 107, 108, 107, 106, 106, 105, 105, 106, 108, 106, 113, 110, 91, 84, 32.15910 + 88, 89, 83, 87, 83, 83, 85, 80, 78, 82, 92, 104, 92, 102, 118, 115, 32.15911 + 106, 99, 92, 102, 123, 117, 127, 124, 139, 122, 120, 103, 82, 87, 93, 94, 32.15912 + 124, 144, 120, 102, 114, 80, 48, 26, 44, 39, 255, 255, 255, 255, 255, 255, 32.15913 + 255, 255, 255, 255, 80, 79, 87, 88, 88, 105, 99, 90, 84, 82, 89, 97, 32.15914 + 104, 108, 113, 118, 121, 121, 121, 120, 117, 116, 116, 116, 116, 117, 120, 121, 32.15915 + 121, 130, 125, 121, 121, 123, 124, 121, 118, 112, 113, 113, 113, 110, 110, 107, 32.15916 + 105, 104, 111, 117, 117, 115, 113, 117, 124, 142, 143, 142, 135, 126, 121, 119, 32.15917 + 121, 139, 141, 140, 135, 132, 137, 151, 162, 147, 141, 136, 134, 136, 136, 129, 32.15918 + 125, 120, 121, 122, 122, 119, 116, 113, 111, 116, 117, 115, 113, 112, 112, 113, 32.15919 + 114, 110, 112, 112, 109, 105, 104, 106, 108, 115, 109, 112, 82, 84, 81, 98, 32.15920 + 80, 83, 88, 82, 98, 74, 79, 79, 105, 118, 102, 100, 108, 109, 108, 100, 32.15921 + 87, 126, 122, 119, 121, 125, 127, 125, 120, 102, 92, 81, 69, 102, 104, 162, 32.15922 + 114, 104, 111, 83, 34, 44, 38, 120, 255, 255, 255, 255, 255, 255, 255, 255, 32.15923 + 255, 255, 82, 84, 89, 90, 87, 94, 89, 84, 84, 89, 99, 109, 115, 115, 32.15924 + 119, 123, 125, 124, 121, 120, 117, 113, 113, 114, 116, 118, 118, 117, 116, 124, 32.15925 + 124, 125, 123, 120, 118, 117, 117, 113, 114, 115, 116, 119, 119, 119, 118, 124, 32.15926 + 129, 133, 132, 129, 129, 135, 141, 139, 141, 141, 139, 134, 133, 134, 138, 139, 32.15927 + 146, 150, 149, 143, 141, 145, 149, 148, 142, 137, 135, 137, 137, 131, 127, 121, 32.15928 + 121, 121, 120, 116, 114, 112, 111, 114, 113, 111, 110, 109, 109, 109, 110, 112, 32.15929 + 112, 110, 107, 104, 104, 108, 112, 120, 117, 108, 88, 89, 89, 92, 87, 79, 32.15930 + 83, 79, 98, 81, 83, 77, 92, 111, 112, 114, 118, 118, 106, 94, 91, 110, 32.15931 + 121, 130, 138, 151, 159, 143, 119, 105, 95, 80, 73, 99, 108, 160, 118, 113, 32.15932 + 117, 82, 29, 32, 30, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15933 + 88, 89, 91, 89, 86, 86, 83, 82, 87, 97, 108, 116, 119, 120, 123, 126, 32.15934 + 126, 124, 121, 120, 118, 111, 111, 114, 116, 119, 117, 114, 113, 121, 124, 129, 32.15935 + 125, 118, 113, 113, 115, 111, 112, 113, 114, 116, 118, 122, 123, 131, 135, 137, 32.15936 + 135, 133, 135, 141, 148, 136, 138, 138, 137, 136, 138, 142, 147, 144, 151, 155, 32.15937 + 154, 149, 144, 144, 144, 146, 141, 137, 136, 137, 137, 132, 129, 124, 123, 121, 32.15938 + 119, 115, 114, 113, 113, 116, 115, 113, 112, 111, 111, 111, 111, 114, 113, 110, 32.15939 + 106, 104, 105, 109, 113, 119, 124, 102, 94, 94, 95, 83, 96, 76, 80, 81, 32.15940 + 100, 92, 90, 76, 81, 111, 124, 120, 113, 114, 105, 107, 130, 129, 143, 147, 32.15941 + 137, 142, 156, 151, 130, 113, 102, 82, 78, 89, 106, 146, 112, 117, 119, 80, 32.15942 + 32, 30, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 90, 32.15943 + 86, 81, 79, 80, 81, 82, 90, 101, 110, 114, 114, 120, 123, 125, 124, 122, 32.15944 + 121, 120, 119, 112, 111, 113, 114, 116, 115, 114, 113, 122, 124, 128, 125, 120, 32.15945 + 115, 112, 111, 115, 117, 115, 115, 115, 116, 120, 121, 127, 130, 134, 134, 133, 32.15946 + 134, 138, 143, 141, 141, 140, 138, 137, 139, 141, 145, 151, 152, 150, 147, 144, 32.15947 + 143, 147, 148, 143, 139, 136, 135, 136, 136, 132, 130, 127, 125, 122, 119, 115, 32.15948 + 114, 115, 115, 116, 115, 114, 113, 112, 112, 112, 111, 114, 112, 110, 107, 105, 32.15949 + 104, 105, 106, 108, 124, 97, 96, 94, 95, 77, 107, 79, 83, 89, 101, 97, 32.15950 + 89, 78, 80, 105, 126, 118, 105, 110, 101, 107, 145, 157, 167, 165, 145, 135, 32.15951 + 144, 155, 156, 123, 111, 88, 84, 77, 96, 124, 98, 110, 109, 69, 36, 37, 32.15952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 88, 81, 74, 32.15953 + 72, 75, 78, 83, 92, 102, 108, 110, 110, 118, 120, 121, 121, 120, 119, 121, 32.15954 + 120, 116, 113, 111, 110, 112, 113, 114, 115, 125, 124, 124, 124, 124, 121, 115, 32.15955 + 110, 121, 119, 120, 118, 117, 118, 121, 122, 123, 128, 135, 138, 137, 137, 138, 32.15956 + 140, 149, 148, 146, 144, 143, 144, 144, 146, 153, 151, 145, 142, 140, 141, 144, 32.15957 + 144, 140, 137, 135, 133, 133, 132, 129, 128, 127, 124, 120, 116, 112, 112, 113, 32.15958 + 114, 111, 110, 110, 110, 109, 108, 107, 106, 108, 107, 107, 105, 103, 99, 95, 32.15959 + 92, 95, 117, 96, 96, 90, 89, 79, 114, 83, 88, 99, 101, 96, 84, 82, 32.15960 + 83, 93, 120, 119, 111, 115, 96, 89, 118, 112, 112, 116, 118, 116, 113, 117, 32.15961 + 123, 130, 118, 101, 90, 74, 88, 109, 91, 111, 101, 53, 34, 39, 255, 255, 32.15962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 86, 77, 71, 72, 70, 32.15963 + 77, 86, 95, 103, 109, 112, 113, 117, 118, 119, 118, 117, 118, 120, 120, 118, 32.15964 + 114, 111, 109, 110, 112, 115, 117, 127, 124, 123, 124, 127, 126, 121, 115, 116, 32.15965 + 115, 117, 117, 117, 117, 120, 120, 122, 127, 136, 140, 140, 140, 139, 139, 145, 32.15966 + 145, 144, 145, 146, 147, 146, 147, 150, 149, 146, 146, 145, 142, 137, 131, 139, 32.15967 + 137, 135, 133, 131, 130, 127, 127, 123, 121, 117, 114, 109, 109, 109, 109, 111, 32.15968 + 111, 111, 111, 110, 109, 107, 106, 102, 102, 102, 102, 101, 96, 89, 84, 90, 32.15969 + 108, 100, 94, 87, 88, 89, 113, 87, 91, 103, 96, 95, 83, 89, 89, 97, 32.15970 + 114, 115, 110, 111, 100, 100, 122, 125, 105, 98, 112, 126, 124, 119, 118, 126, 32.15971 + 114, 117, 97, 81, 85, 107, 97, 129, 105, 42, 30, 111, 255, 255, 255, 255, 32.15972 + 255, 255, 255, 255, 255, 255, 255, 255, 83, 84, 78, 75, 79, 71, 81, 93, 32.15973 + 102, 106, 110, 114, 118, 120, 120, 119, 117, 116, 116, 118, 119, 118, 114, 113, 32.15974 + 111, 113, 113, 114, 115, 125, 125, 126, 126, 127, 127, 126, 125, 116, 116, 117, 32.15975 + 118, 118, 118, 120, 119, 122, 126, 130, 134, 137, 138, 138, 138, 139, 140, 142, 32.15976 + 145, 148, 150, 148, 148, 148, 148, 147, 149, 150, 146, 138, 129, 140, 138, 137, 32.15977 + 134, 131, 129, 126, 127, 124, 122, 119, 116, 111, 110, 109, 109, 112, 113, 113, 32.15978 + 113, 112, 111, 109, 108, 104, 103, 102, 103, 103, 101, 95, 90, 95, 101, 104, 32.15979 + 88, 90, 92, 104, 105, 95, 95, 104, 94, 105, 95, 103, 99, 104, 109, 111, 32.15980 + 108, 103, 103, 120, 142, 143, 122, 104, 101, 108, 114, 113, 111, 118, 107, 132, 32.15981 + 101, 91, 82, 109, 100, 132, 104, 35, 106, 255, 255, 255, 255, 255, 255, 255, 32.15982 + 255, 255, 255, 255, 255, 255, 84, 85, 79, 78, 86, 76, 88, 101, 107, 108, 32.15983 + 109, 114, 120, 123, 123, 121, 118, 115, 115, 117, 117, 116, 114, 114, 114, 115, 32.15984 + 115, 114, 113, 123, 126, 130, 129, 126, 126, 130, 134, 127, 127, 128, 129, 128, 32.15985 + 126, 127, 125, 125, 127, 129, 132, 136, 138, 140, 141, 143, 144, 146, 151, 155, 32.15986 + 156, 153, 152, 149, 147, 144, 146, 150, 150, 145, 139, 142, 140, 138, 135, 131, 32.15987 + 129, 126, 127, 126, 125, 123, 120, 115, 113, 112, 111, 108, 109, 110, 110, 109, 32.15988 + 107, 105, 104, 109, 107, 105, 106, 108, 108, 104, 101, 103, 100, 108, 86, 95, 32.15989 + 98, 114, 97, 102, 97, 105, 96, 115, 107, 116, 107, 97, 102, 116, 117, 103, 32.15990 + 99, 115, 127, 143, 143, 134, 116, 106, 111, 116, 114, 113, 102, 139, 101, 94, 32.15991 + 75, 105, 98, 115, 90, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.15992 + 255, 255, 255, 83, 84, 86, 89, 83, 67, 83, 97, 106, 106, 105, 110, 115, 32.15993 + 115, 120, 119, 118, 117, 116, 116, 116, 114, 117, 115, 115, 115, 117, 118, 119, 32.15994 + 120, 122, 125, 132, 135, 135, 132, 128, 125, 129, 128, 127, 126, 126, 125, 125, 32.15995 + 124, 123, 129, 138, 139, 136, 135, 137, 142, 149, 149, 149, 150, 152, 153, 153, 32.15996 + 154, 161, 164, 159, 150, 146, 146, 143, 135, 135, 134, 135, 134, 133, 131, 127, 32.15997 + 125, 123, 125, 126, 123, 116, 113, 113, 115, 115, 113, 112, 111, 110, 111, 112, 32.15998 + 113, 109, 107, 105, 103, 103, 103, 104, 105, 103, 87, 92, 94, 101, 106, 95, 32.15999 + 100, 103, 103, 102, 103, 110, 118, 120, 116, 100, 96, 99, 104, 106, 105, 113, 32.16000 + 126, 133, 152, 139, 114, 113, 110, 103, 107, 111, 109, 117, 130, 102, 71, 93, 32.16001 + 111, 116, 76, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16002 + 255, 85, 88, 87, 85, 80, 70, 91, 100, 105, 105, 109, 115, 117, 115, 120, 32.16003 + 119, 118, 117, 116, 116, 116, 114, 118, 116, 116, 116, 119, 121, 122, 123, 128, 32.16004 + 128, 133, 136, 138, 137, 133, 130, 136, 135, 133, 131, 129, 127, 125, 124, 126, 32.16005 + 131, 138, 138, 136, 135, 138, 142, 149, 151, 152, 155, 157, 157, 154, 154, 154, 32.16006 + 157, 154, 149, 148, 150, 149, 142, 136, 135, 135, 135, 134, 132, 128, 126, 122, 32.16007 + 124, 124, 121, 115, 112, 112, 113, 119, 118, 115, 112, 111, 110, 109, 109, 107, 32.16008 + 108, 109, 108, 106, 105, 104, 105, 96, 87, 96, 94, 95, 96, 88, 97, 106, 32.16009 + 107, 106, 108, 115, 124, 126, 122, 109, 100, 96, 98, 101, 100, 108, 120, 131, 32.16010 + 146, 143, 124, 116, 115, 113, 113, 107, 106, 113, 126, 103, 79, 100, 112, 106, 32.16011 + 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 32.16012 + 93, 86, 78, 75, 74, 99, 103, 103, 105, 111, 117, 118, 114, 122, 121, 120, 32.16013 + 119, 118, 118, 118, 116, 118, 116, 117, 117, 121, 123, 125, 126, 131, 129, 130, 32.16014 + 134, 139, 141, 137, 132, 139, 138, 136, 134, 131, 129, 129, 128, 128, 131, 136, 32.16015 + 136, 134, 135, 141, 145, 145, 148, 152, 156, 157, 157, 152, 151, 149, 152, 151, 32.16016 + 149, 149, 151, 150, 145, 136, 135, 135, 134, 133, 132, 128, 127, 123, 124, 123, 32.16017 + 121, 115, 113, 112, 113, 119, 118, 116, 113, 111, 110, 109, 109, 105, 109, 113, 32.16018 + 113, 109, 105, 104, 104, 90, 84, 96, 90, 86, 86, 81, 94, 109, 110, 111, 32.16019 + 113, 123, 132, 134, 129, 127, 110, 97, 96, 100, 102, 110, 120, 130, 140, 149, 32.16020 + 139, 120, 116, 119, 113, 103, 108, 112, 122, 103, 84, 104, 109, 93, 116, 255, 32.16021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 95, 84, 32.16022 + 69, 71, 78, 101, 104, 104, 105, 108, 111, 113, 113, 122, 121, 120, 119, 118, 32.16023 + 118, 119, 117, 117, 116, 116, 118, 121, 124, 126, 127, 131, 126, 125, 129, 136, 32.16024 + 140, 136, 131, 133, 132, 132, 131, 131, 130, 131, 131, 130, 131, 134, 133, 133, 32.16025 + 135, 141, 145, 138, 142, 145, 148, 150, 150, 147, 146, 149, 151, 149, 148, 147, 32.16026 + 146, 144, 140, 135, 134, 133, 132, 131, 130, 127, 126, 124, 124, 123, 121, 116, 32.16027 + 114, 113, 113, 114, 113, 112, 111, 111, 110, 110, 110, 105, 109, 113, 112, 108, 32.16028 + 104, 103, 102, 87, 83, 92, 83, 79, 84, 82, 96, 108, 110, 112, 115, 126, 32.16029 + 136, 138, 135, 139, 114, 95, 93, 100, 104, 112, 121, 128, 133, 153, 151, 123, 32.16030 + 113, 115, 104, 101, 111, 115, 117, 98, 86, 105, 104, 76, 255, 255, 255, 255, 32.16031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 91, 81, 67, 73, 32.16032 + 82, 98, 103, 105, 105, 103, 102, 106, 111, 116, 115, 115, 114, 114, 115, 116, 32.16033 + 114, 117, 115, 116, 117, 121, 123, 125, 126, 131, 125, 124, 127, 135, 139, 136, 32.16034 + 131, 126, 126, 125, 125, 127, 126, 126, 126, 127, 127, 128, 128, 128, 131, 135, 32.16035 + 141, 137, 139, 140, 142, 144, 146, 145, 146, 148, 148, 146, 147, 145, 141, 139, 32.16036 + 136, 133, 131, 130, 129, 128, 127, 124, 124, 122, 121, 119, 118, 114, 112, 110, 32.16037 + 109, 111, 111, 110, 110, 109, 107, 106, 106, 106, 108, 109, 108, 104, 101, 101, 32.16038 + 101, 90, 79, 84, 74, 75, 87, 89, 100, 106, 108, 113, 117, 127, 137, 139, 32.16039 + 134, 133, 107, 88, 88, 99, 105, 112, 119, 119, 124, 148, 153, 125, 108, 107, 32.16040 + 97, 95, 111, 117, 113, 93, 88, 108, 101, 52, 255, 255, 255, 255, 255, 255, 32.16041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 87, 79, 72, 81, 88, 98, 32.16042 + 103, 107, 107, 102, 97, 101, 108, 108, 108, 108, 108, 109, 111, 112, 111, 118, 32.16043 + 116, 116, 117, 121, 123, 125, 126, 132, 128, 128, 131, 136, 139, 137, 133, 128, 32.16044 + 127, 126, 124, 125, 123, 122, 121, 123, 123, 124, 124, 126, 128, 132, 136, 140, 32.16045 + 141, 141, 143, 145, 148, 149, 150, 144, 143, 142, 146, 146, 141, 139, 138, 132, 32.16046 + 130, 128, 127, 126, 125, 123, 123, 119, 117, 115, 113, 111, 109, 107, 105, 113, 32.16047 + 113, 111, 109, 107, 103, 101, 99, 107, 106, 105, 104, 102, 101, 100, 97, 90, 32.16048 + 78, 80, 69, 75, 93, 95, 102, 105, 108, 113, 117, 128, 137, 139, 134, 126, 32.16049 + 104, 90, 95, 108, 114, 118, 123, 113, 118, 137, 144, 125, 106, 101, 99, 95, 32.16050 + 111, 112, 104, 91, 96, 111, 89, 104, 255, 255, 255, 255, 255, 255, 255, 255, 32.16051 + 255, 255, 255, 255, 255, 255, 199, 83, 84, 77, 81, 91, 94, 103, 104, 107, 32.16052 + 110, 106, 100, 100, 105, 105, 105, 106, 108, 110, 112, 114, 114, 121, 119, 119, 32.16053 + 119, 122, 124, 125, 126, 132, 131, 133, 135, 137, 138, 136, 134, 130, 130, 128, 32.16054 + 127, 128, 126, 125, 124, 127, 126, 125, 126, 130, 133, 135, 138, 142, 144, 146, 32.16055 + 149, 152, 153, 152, 153, 144, 141, 142, 148, 148, 142, 140, 140, 133, 130, 128, 32.16056 + 126, 125, 125, 123, 123, 120, 117, 114, 113, 111, 110, 107, 104, 113, 113, 112, 32.16057 + 110, 107, 104, 100, 98, 107, 105, 103, 104, 106, 104, 98, 91, 86, 77, 79, 32.16058 + 68, 76, 94, 95, 101, 106, 109, 115, 119, 129, 138, 139, 134, 120, 103, 96, 32.16059 + 106, 120, 123, 124, 127, 118, 123, 128, 131, 123, 102, 94, 104, 107, 116, 106, 32.16060 + 95, 91, 102, 106, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16061 + 255, 255, 255, 255, 89, 84, 82, 77, 87, 99, 99, 109, 104, 106, 109, 112, 32.16062 + 104, 101, 100, 107, 105, 109, 109, 113, 114, 119, 119, 123, 121, 123, 123, 124, 32.16063 + 125, 126, 126, 130, 131, 134, 136, 136, 135, 134, 131, 130, 130, 130, 130, 132, 32.16064 + 132, 132, 132, 133, 132, 132, 133, 138, 140, 141, 141, 141, 144, 149, 154, 156, 32.16065 + 155, 153, 152, 147, 142, 144, 148, 149, 140, 139, 139, 133, 131, 129, 127, 126, 32.16066 + 125, 124, 124, 123, 120, 117, 116, 116, 113, 112, 109, 110, 110, 111, 110, 109, 32.16067 + 106, 104, 103, 106, 103, 102, 106, 110, 108, 98, 87, 83, 78, 85, 74, 78, 32.16068 + 94, 92, 100, 108, 112, 117, 122, 132, 140, 141, 135, 112, 99, 97, 110, 123, 32.16069 + 125, 123, 125, 126, 132, 123, 121, 120, 98, 87, 107, 122, 123, 103, 89, 91, 32.16070 + 105, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16071 + 255, 255, 84, 77, 81, 89, 98, 103, 103, 111, 109, 109, 106, 107, 104, 104, 32.16072 + 100, 106, 105, 107, 103, 106, 109, 116, 118, 126, 125, 127, 128, 130, 130, 129, 32.16073 + 128, 130, 138, 136, 134, 137, 131, 125, 130, 123, 125, 130, 131, 131, 127, 126, 32.16074 + 126, 129, 133, 138, 138, 134, 131, 131, 135, 150, 156, 158, 152, 151, 152, 153, 32.16075 + 150, 138, 139, 142, 142, 143, 139, 136, 132, 131, 129, 128, 127, 125, 124, 123, 32.16076 + 123, 123, 120, 116, 113, 113, 111, 112, 111, 109, 109, 109, 109, 109, 108, 107, 32.16077 + 106, 102, 106, 107, 105, 106, 108, 104, 96, 83, 97, 100, 87, 78, 87, 101, 32.16078 + 109, 120, 112, 112, 124, 135, 135, 128, 124, 108, 96, 105, 122, 122, 119, 121, 32.16079 + 120, 121, 124, 121, 109, 97, 94, 102, 112, 112, 120, 91, 95, 110, 106, 89, 32.16080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16081 + 85, 82, 87, 97, 105, 106, 106, 110, 108, 104, 102, 101, 102, 102, 103, 106, 32.16082 + 107, 106, 105, 106, 110, 114, 117, 121, 123, 126, 130, 134, 136, 136, 135, 139, 32.16083 + 146, 142, 138, 140, 134, 128, 133, 123, 125, 127, 126, 125, 124, 125, 127, 136, 32.16084 + 136, 138, 140, 142, 142, 141, 140, 147, 153, 156, 152, 147, 148, 146, 142, 141, 32.16085 + 142, 143, 144, 143, 140, 137, 135, 131, 131, 130, 129, 128, 127, 127, 126, 123, 32.16086 + 121, 117, 116, 115, 115, 113, 111, 109, 110, 110, 110, 109, 109, 108, 107, 100, 32.16087 + 104, 106, 105, 107, 109, 106, 99, 92, 103, 105, 94, 88, 97, 109, 113, 114, 32.16088 + 109, 117, 137, 146, 135, 119, 110, 102, 102, 119, 125, 104, 90, 96, 105, 99, 32.16089 + 100, 102, 105, 109, 114, 118, 121, 111, 105, 103, 101, 109, 105, 255, 255, 255, 32.16090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 89, 32.16091 + 93, 102, 109, 109, 108, 108, 106, 103, 101, 100, 102, 104, 106, 104, 103, 102, 32.16092 + 102, 103, 106, 109, 111, 116, 119, 124, 129, 133, 136, 137, 138, 145, 151, 146, 32.16093 + 141, 141, 135, 129, 134, 131, 131, 129, 126, 126, 127, 130, 133, 137, 134, 133, 32.16094 + 136, 142, 145, 144, 142, 145, 151, 154, 153, 151, 150, 145, 141, 145, 145, 144, 32.16095 + 143, 142, 140, 138, 137, 133, 132, 132, 131, 131, 130, 130, 129, 123, 121, 119, 32.16096 + 118, 117, 116, 112, 110, 109, 109, 110, 110, 110, 109, 108, 107, 103, 105, 106, 32.16097 + 105, 106, 107, 104, 98, 98, 105, 104, 97, 95, 105, 113, 114, 116, 112, 124, 32.16098 + 145, 145, 122, 103, 97, 109, 109, 122, 122, 97, 82, 90, 100, 102, 99, 102, 32.16099 + 112, 125, 130, 123, 114, 109, 92, 114, 111, 108, 148, 255, 255, 255, 255, 255, 32.16100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 91, 95, 104, 32.16101 + 108, 109, 106, 105, 105, 105, 104, 103, 103, 105, 107, 103, 99, 98, 100, 101, 32.16102 + 102, 103, 108, 113, 115, 117, 120, 122, 126, 130, 133, 142, 148, 143, 138, 139, 32.16103 + 133, 127, 133, 133, 132, 129, 127, 128, 129, 131, 134, 136, 133, 132, 133, 137, 32.16104 + 141, 142, 142, 141, 147, 149, 149, 148, 147, 145, 144, 146, 145, 142, 140, 138, 32.16105 + 137, 136, 136, 131, 131, 131, 130, 130, 129, 129, 129, 121, 120, 118, 118, 117, 32.16106 + 114, 110, 107, 107, 107, 108, 108, 108, 107, 107, 106, 108, 107, 106, 105, 104, 32.16107 + 102, 97, 93, 99, 101, 99, 95, 97, 106, 110, 109, 118, 116, 128, 143, 134, 32.16108 + 108, 99, 109, 112, 100, 104, 110, 104, 103, 106, 104, 112, 107, 106, 115, 125, 32.16109 + 124, 110, 98, 107, 95, 116, 122, 105, 255, 255, 255, 255, 255, 255, 255, 255, 32.16110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 90, 95, 101, 104, 104, 32.16111 + 103, 102, 106, 110, 110, 108, 106, 105, 105, 107, 100, 98, 102, 104, 102, 101, 32.16112 + 104, 106, 107, 107, 107, 108, 113, 121, 127, 133, 141, 138, 134, 137, 133, 128, 32.16113 + 134, 125, 125, 124, 124, 127, 127, 127, 127, 138, 138, 139, 137, 135, 136, 140, 32.16114 + 144, 141, 141, 141, 140, 138, 136, 135, 138, 142, 141, 138, 136, 132, 131, 131, 32.16115 + 131, 128, 128, 127, 127, 126, 125, 125, 125, 119, 117, 116, 115, 114, 111, 107, 32.16116 + 103, 104, 104, 105, 105, 106, 105, 105, 104, 108, 106, 104, 103, 102, 99, 94, 32.16117 + 92, 99, 98, 95, 94, 98, 105, 106, 104, 108, 113, 128, 137, 121, 97, 97, 32.16118 + 114, 92, 84, 93, 110, 117, 121, 119, 107, 103, 101, 102, 107, 113, 111, 103, 32.16119 + 94, 106, 110, 109, 123, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16120 + 255, 255, 255, 255, 255, 255, 255, 255, 90, 92, 97, 102, 103, 101, 100, 103, 32.16121 + 109, 114, 115, 111, 106, 103, 103, 104, 95, 92, 98, 100, 96, 94, 97, 98, 32.16122 + 100, 101, 100, 101, 106, 114, 122, 125, 134, 134, 133, 138, 135, 130, 135, 123, 32.16123 + 123, 124, 127, 131, 131, 129, 127, 136, 138, 140, 136, 132, 131, 136, 141, 148, 32.16124 + 144, 141, 139, 135, 129, 130, 134, 139, 138, 136, 134, 131, 130, 130, 129, 127, 32.16125 + 127, 126, 125, 123, 122, 121, 121, 117, 115, 113, 111, 110, 108, 104, 101, 101, 32.16126 + 102, 103, 104, 104, 104, 103, 103, 105, 101, 100, 102, 103, 100, 97, 97, 103, 32.16127 + 100, 97, 98, 101, 105, 104, 103, 102, 114, 129, 130, 109, 84, 80, 90, 81, 32.16128 + 87, 109, 127, 127, 125, 120, 108, 98, 100, 102, 103, 104, 103, 101, 100, 107, 32.16129 + 118, 103, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16130 + 255, 255, 255, 255, 255, 203, 98, 100, 102, 104, 105, 103, 103, 114, 119, 124, 32.16131 + 123, 116, 111, 108, 109, 106, 95, 91, 99, 101, 95, 92, 95, 98, 101, 104, 32.16132 + 103, 101, 103, 108, 114, 118, 128, 130, 131, 137, 134, 128, 133, 126, 125, 126, 32.16133 + 129, 135, 137, 135, 133, 137, 137, 137, 136, 134, 134, 136, 137, 148, 145, 141, 32.16134 + 142, 138, 132, 132, 136, 138, 138, 135, 134, 133, 132, 132, 131, 129, 129, 127, 32.16135 + 125, 123, 121, 120, 119, 118, 115, 111, 109, 107, 106, 103, 101, 101, 102, 103, 32.16136 + 104, 104, 104, 104, 104, 107, 102, 100, 104, 105, 101, 99, 101, 105, 102, 101, 32.16137 + 102, 104, 104, 103, 103, 110, 122, 131, 128, 112, 97, 90, 88, 105, 110, 127, 32.16138 + 136, 130, 126, 121, 108, 103, 105, 106, 106, 104, 103, 104, 105, 110, 114, 102, 32.16139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16140 + 255, 255, 255, 105, 104, 105, 106, 107, 108, 108, 106, 127, 131, 133, 130, 122, 32.16141 + 117, 116, 118, 116, 104, 100, 108, 111, 104, 100, 103, 103, 107, 111, 109, 104, 32.16142 + 101, 103, 105, 112, 123, 127, 129, 135, 131, 124, 129, 125, 123, 122, 125, 132, 32.16143 + 135, 135, 134, 145, 141, 139, 140, 143, 145, 143, 140, 138, 136, 136, 141, 140, 32.16144 + 134, 133, 138, 139, 139, 137, 137, 137, 135, 134, 134, 132, 131, 129, 127, 125, 32.16145 + 122, 121, 120, 119, 116, 111, 108, 106, 105, 103, 102, 102, 102, 103, 104, 105, 32.16146 + 105, 105, 105, 112, 106, 103, 107, 106, 101, 98, 100, 106, 103, 102, 103, 104, 32.16147 + 102, 101, 102, 118, 127, 133, 131, 130, 132, 130, 124, 136, 127, 126, 127, 124, 32.16148 + 125, 121, 106, 98, 100, 102, 103, 104, 105, 107, 111, 113, 155, 255, 255, 255, 32.16149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16150 + 255, 94, 104, 112, 108, 104, 106, 109, 109, 152, 156, 144, 129, 128, 124, 114, 32.16151 + 112, 105, 107, 110, 110, 108, 107, 108, 110, 103, 103, 104, 106, 108, 108, 105, 32.16152 + 103, 109, 120, 130, 132, 131, 132, 131, 128, 125, 121, 120, 124, 129, 130, 135, 32.16153 + 141, 138, 140, 140, 138, 141, 146, 147, 143, 143, 141, 138, 138, 138, 140, 140, 32.16154 + 139, 135, 135, 136, 136, 133, 132, 130, 129, 131, 126, 121, 121, 124, 126, 124, 32.16155 + 121, 115, 114, 112, 109, 107, 104, 102, 101, 95, 102, 109, 111, 108, 106, 107, 32.16156 + 109, 106, 107, 107, 103, 99, 96, 97, 100, 106, 105, 105, 106, 102, 97, 99, 32.16157 + 105, 116, 122, 128, 129, 128, 129, 134, 139, 129, 132, 133, 131, 129, 126, 118, 32.16158 + 109, 102, 96, 105, 114, 112, 112, 115, 112, 120, 255, 255, 255, 255, 255, 255, 32.16159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 32.16160 + 104, 112, 112, 113, 117, 121, 122, 162, 161, 143, 126, 126, 124, 118, 118, 113, 32.16161 + 112, 111, 113, 116, 117, 115, 113, 108, 109, 110, 107, 103, 101, 103, 105, 109, 32.16162 + 118, 126, 128, 130, 131, 129, 125, 128, 124, 123, 125, 129, 129, 133, 138, 140, 32.16163 + 143, 144, 140, 140, 143, 144, 142, 145, 142, 140, 139, 139, 140, 139, 139, 138, 32.16164 + 137, 136, 134, 131, 131, 131, 132, 130, 126, 122, 122, 125, 126, 124, 120, 117, 32.16165 + 115, 113, 110, 107, 105, 104, 104, 102, 108, 113, 113, 109, 105, 105, 106, 107, 32.16166 + 108, 108, 105, 101, 99, 100, 102, 107, 105, 106, 106, 102, 98, 100, 107, 118, 32.16167 + 121, 123, 122, 120, 120, 124, 127, 126, 129, 129, 126, 126, 126, 122, 115, 113, 32.16168 + 98, 98, 108, 112, 114, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 106, 112, 32.16170 + 112, 116, 121, 126, 128, 144, 146, 131, 121, 127, 129, 124, 124, 121, 117, 114, 32.16171 + 118, 125, 127, 123, 118, 113, 116, 115, 109, 101, 99, 104, 110, 107, 114, 120, 32.16172 + 125, 129, 133, 130, 123, 130, 125, 124, 126, 128, 127, 130, 135, 141, 146, 148, 32.16173 + 143, 139, 140, 141, 141, 145, 142, 140, 139, 139, 139, 136, 135, 139, 137, 133, 32.16174 + 130, 130, 130, 130, 133, 127, 125, 122, 123, 125, 125, 122, 118, 118, 116, 113, 32.16175 + 109, 107, 106, 106, 107, 108, 111, 115, 114, 110, 106, 106, 107, 107, 108, 108, 32.16176 + 106, 103, 102, 103, 105, 107, 106, 106, 106, 102, 98, 101, 108, 122, 121, 121, 32.16177 + 121, 121, 122, 124, 125, 132, 133, 132, 128, 128, 129, 126, 121, 120, 101, 99, 32.16178 + 112, 119, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 106, 108, 107, 111, 32.16180 + 117, 120, 123, 126, 128, 121, 120, 130, 129, 119, 118, 121, 118, 117, 120, 125, 32.16181 + 127, 124, 121, 116, 117, 116, 110, 104, 102, 105, 109, 104, 109, 115, 120, 128, 32.16182 + 134, 131, 124, 126, 122, 121, 124, 127, 126, 128, 132, 139, 146, 150, 144, 139, 32.16183 + 139, 141, 141, 143, 141, 139, 138, 138, 137, 134, 132, 135, 135, 131, 130, 129, 32.16184 + 129, 127, 127, 124, 122, 122, 122, 123, 122, 118, 115, 118, 115, 111, 107, 105, 32.16185 + 106, 107, 108, 107, 110, 113, 112, 110, 108, 109, 110, 106, 106, 106, 105, 104, 32.16186 + 104, 105, 105, 106, 104, 104, 104, 101, 97, 101, 108, 119, 119, 121, 125, 130, 32.16187 + 132, 131, 130, 135, 136, 134, 130, 128, 127, 122, 115, 110, 98, 102, 161, 255, 32.16188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 105, 102, 100, 105, 109, 112, 32.16190 + 115, 128, 129, 121, 119, 126, 120, 110, 110, 118, 119, 121, 122, 123, 123, 123, 32.16191 + 124, 117, 115, 111, 108, 105, 102, 99, 97, 99, 104, 109, 115, 124, 131, 129, 32.16192 + 122, 119, 116, 116, 120, 124, 124, 127, 131, 135, 143, 148, 144, 139, 139, 142, 32.16193 + 142, 140, 138, 137, 136, 134, 133, 131, 129, 127, 128, 130, 130, 128, 125, 123, 32.16194 + 121, 121, 121, 120, 120, 120, 118, 115, 113, 115, 113, 109, 106, 104, 105, 107, 32.16195 + 108, 108, 109, 110, 109, 108, 107, 107, 108, 105, 104, 103, 102, 103, 103, 103, 32.16196 + 103, 104, 102, 101, 101, 98, 95, 99, 107, 114, 117, 122, 129, 134, 135, 132, 32.16197 + 129, 130, 132, 132, 129, 126, 123, 115, 106, 104, 150, 255, 255, 255, 255, 255, 32.16198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16199 + 255, 255, 255, 255, 255, 255, 255, 114, 103, 97, 98, 102, 106, 109, 114, 123, 32.16200 + 121, 110, 106, 111, 109, 107, 117, 117, 120, 123, 122, 120, 119, 120, 122, 116, 32.16201 + 112, 107, 103, 101, 98, 93, 88, 98, 104, 110, 114, 120, 125, 124, 119, 114, 32.16202 + 111, 113, 118, 123, 123, 126, 131, 132, 139, 144, 142, 139, 141, 142, 141, 137, 32.16203 + 136, 135, 135, 133, 132, 130, 127, 123, 125, 128, 130, 127, 124, 120, 117, 121, 32.16204 + 121, 120, 119, 117, 116, 114, 113, 113, 111, 108, 106, 105, 105, 107, 108, 113, 32.16205 + 111, 109, 107, 105, 104, 104, 104, 104, 102, 100, 100, 101, 102, 102, 101, 102, 32.16206 + 100, 100, 99, 96, 94, 99, 107, 119, 123, 129, 134, 135, 133, 130, 127, 128, 32.16207 + 131, 132, 130, 128, 124, 116, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16209 + 255, 255, 255, 255, 255, 119, 104, 94, 95, 100, 103, 106, 111, 110, 110, 102, 32.16210 + 100, 105, 103, 107, 123, 116, 116, 116, 116, 117, 116, 115, 114, 112, 110, 107, 32.16211 + 102, 99, 97, 98, 99, 107, 114, 119, 120, 121, 123, 123, 120, 113, 111, 112, 32.16212 + 118, 123, 123, 125, 130, 133, 137, 141, 139, 139, 142, 140, 136, 135, 135, 134, 32.16213 + 135, 134, 133, 129, 126, 125, 126, 125, 126, 125, 123, 120, 118, 123, 123, 121, 32.16214 + 119, 117, 115, 115, 116, 111, 111, 109, 108, 107, 107, 108, 108, 113, 111, 108, 32.16215 + 106, 105, 105, 105, 105, 105, 103, 100, 100, 101, 102, 101, 99, 103, 100, 100, 32.16216 + 99, 96, 94, 100, 108, 122, 126, 131, 131, 129, 126, 126, 128, 129, 131, 130, 32.16217 + 125, 122, 119, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16219 + 255, 255, 255, 212, 111, 98, 97, 99, 99, 101, 106, 111, 115, 112, 111, 111, 32.16220 + 102, 102, 117, 115, 111, 107, 109, 113, 114, 109, 102, 109, 109, 110, 104, 101, 32.16221 + 101, 112, 118, 119, 125, 132, 128, 127, 125, 126, 122, 114, 110, 114, 119, 122, 32.16222 + 123, 125, 129, 134, 137, 139, 138, 139, 141, 138, 131, 135, 132, 132, 134, 133, 32.16223 + 133, 130, 126, 128, 126, 125, 125, 124, 123, 122, 122, 123, 125, 123, 120, 117, 32.16224 + 116, 117, 118, 111, 111, 111, 110, 110, 109, 109, 109, 110, 108, 105, 105, 106, 32.16225 + 108, 110, 110, 107, 104, 100, 100, 102, 103, 101, 98, 104, 101, 100, 100, 97, 32.16226 + 95, 101, 109, 116, 120, 123, 121, 117, 116, 120, 125, 128, 127, 122, 114, 158, 32.16227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16229 + 255, 255, 136, 117, 95, 100, 99, 93, 104, 114, 117, 112, 107, 105, 105, 112, 32.16230 + 118, 108, 109, 109, 112, 115, 116, 116, 115, 107, 99, 97, 103, 115, 121, 127, 32.16231 + 130, 127, 128, 131, 131, 132, 130, 130, 126, 118, 111, 111, 113, 118, 125, 127, 32.16232 + 127, 130, 132, 137, 141, 144, 144, 143, 141, 131, 129, 128, 127, 127, 128, 128, 32.16233 + 127, 130, 123, 120, 120, 124, 124, 121, 118, 122, 121, 119, 119, 118, 116, 112, 32.16234 + 109, 111, 109, 107, 105, 105, 105, 107, 108, 108, 105, 102, 103, 107, 109, 105, 32.16235 + 101, 99, 96, 97, 103, 104, 100, 97, 99, 104, 102, 99, 94, 91, 92, 97, 32.16236 + 101, 110, 113, 112, 108, 108, 113, 117, 118, 116, 113, 109, 154, 255, 255, 255, 32.16237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16239 + 140, 121, 99, 103, 100, 90, 93, 106, 114, 115, 116, 112, 110, 108, 109, 108, 32.16240 + 113, 116, 118, 117, 116, 116, 120, 121, 119, 121, 129, 135, 134, 132, 132, 132, 32.16241 + 131, 130, 129, 129, 129, 129, 128, 122, 115, 110, 110, 115, 121, 126, 128, 129, 32.16242 + 131, 136, 139, 141, 141, 141, 139, 131, 128, 127, 126, 125, 125, 126, 126, 128, 32.16243 + 124, 121, 121, 124, 125, 122, 118, 122, 122, 122, 122, 122, 119, 114, 109, 110, 32.16244 + 109, 108, 107, 107, 108, 109, 110, 111, 107, 103, 103, 107, 109, 107, 104, 100, 32.16245 + 96, 96, 100, 101, 97, 95, 95, 102, 100, 97, 93, 92, 93, 95, 97, 75, 32.16246 + 86, 94, 96, 95, 95, 93, 89, 92, 146, 255, 255, 255, 255, 255, 255, 255, 32.16247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 119, 32.16249 + 101, 102, 100, 86, 82, 88, 97, 102, 105, 103, 101, 98, 97, 106, 113, 121, 32.16250 + 122, 117, 115, 118, 123, 126, 126, 130, 136, 138, 134, 131, 132, 134, 133, 130, 32.16251 + 127, 126, 126, 127, 127, 124, 117, 113, 111, 113, 118, 125, 128, 129, 131, 135, 32.16252 + 137, 139, 139, 138, 136, 132, 129, 127, 126, 125, 124, 124, 124, 127, 124, 121, 32.16253 + 122, 124, 125, 122, 119, 122, 123, 125, 126, 125, 120, 112, 106, 105, 106, 107, 32.16254 + 108, 109, 110, 110, 110, 113, 108, 104, 104, 107, 108, 107, 105, 103, 98, 96, 32.16255 + 99, 99, 96, 94, 95, 100, 97, 94, 92, 91, 91, 90, 89, 80, 94, 107, 32.16256 + 110, 108, 106, 103, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 105, 99, 32.16259 + 95, 83, 78, 80, 84, 84, 85, 86, 92, 96, 100, 102, 107, 114, 117, 115, 32.16260 + 116, 118, 121, 122, 120, 122, 125, 126, 125, 129, 135, 131, 130, 128, 127, 126, 32.16261 + 126, 126, 126, 120, 115, 113, 111, 112, 116, 123, 125, 130, 131, 135, 136, 137, 32.16262 + 137, 137, 135, 131, 128, 126, 124, 122, 121, 121, 120, 124, 122, 120, 121, 122, 32.16263 + 122, 121, 118, 122, 123, 125, 126, 123, 115, 105, 98, 99, 101, 104, 107, 108, 32.16264 + 109, 108, 107, 110, 108, 106, 106, 108, 108, 105, 103, 106, 100, 97, 98, 98, 32.16265 + 95, 93, 94, 98, 95, 90, 88, 87, 85, 82, 79, 92, 102, 109, 108, 104, 32.16266 + 105, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 106, 88, 83, 78, 32.16269 + 73, 78, 78, 77, 79, 86, 96, 105, 111, 104, 104, 105, 110, 118, 122, 120, 32.16270 + 118, 119, 117, 119, 123, 124, 123, 127, 133, 125, 126, 127, 128, 128, 127, 126, 32.16271 + 124, 114, 112, 112, 113, 116, 118, 121, 123, 131, 132, 132, 133, 136, 136, 136, 32.16272 + 134, 130, 126, 124, 122, 120, 119, 118, 118, 120, 119, 118, 118, 119, 119, 118, 32.16273 + 117, 122, 122, 122, 121, 117, 109, 98, 91, 94, 96, 100, 104, 106, 106, 105, 32.16274 + 105, 105, 106, 107, 108, 108, 106, 102, 99, 103, 97, 94, 95, 95, 91, 90, 32.16275 + 91, 96, 92, 87, 83, 80, 78, 76, 75, 95, 102, 104, 100, 96, 255, 255, 32.16276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 104, 79, 75, 75, 68, 72, 32.16279 + 75, 77, 84, 94, 104, 109, 112, 111, 107, 103, 108, 118, 124, 122, 121, 117, 32.16280 + 117, 120, 126, 128, 123, 121, 121, 122, 123, 126, 127, 128, 127, 125, 123, 111, 32.16281 + 111, 114, 115, 117, 118, 120, 122, 130, 130, 131, 132, 135, 136, 137, 135, 129, 32.16282 + 125, 123, 121, 119, 118, 118, 117, 117, 117, 117, 117, 117, 117, 117, 117, 122, 32.16283 + 121, 119, 116, 112, 105, 97, 91, 94, 96, 100, 103, 106, 106, 106, 105, 105, 32.16284 + 106, 108, 109, 107, 104, 101, 99, 97, 92, 90, 92, 92, 88, 85, 86, 91, 32.16285 + 90, 85, 78, 73, 73, 77, 80, 98, 104, 108, 255, 255, 255, 255, 255, 255, 32.16286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16288 + 255, 255, 255, 255, 255, 255, 255, 255, 100, 73, 75, 80, 71, 68, 71, 75, 32.16289 + 83, 93, 103, 108, 110, 116, 112, 109, 110, 114, 119, 122, 121, 120, 116, 116, 32.16290 + 122, 125, 122, 118, 118, 124, 125, 125, 125, 125, 124, 124, 122, 118, 117, 118, 32.16291 + 118, 116, 117, 123, 126, 127, 128, 128, 129, 131, 133, 134, 133, 129, 126, 124, 32.16292 + 122, 121, 120, 120, 120, 116, 117, 118, 117, 117, 117, 117, 118, 123, 120, 116, 32.16293 + 113, 110, 106, 102, 98, 99, 101, 103, 106, 108, 109, 109, 109, 109, 109, 108, 32.16294 + 107, 105, 103, 103, 103, 95, 91, 90, 93, 93, 89, 85, 85, 86, 85, 81, 32.16295 + 74, 68, 71, 81, 91, 93, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16298 + 255, 255, 255, 255, 255, 255, 94, 74, 83, 90, 76, 76, 77, 76, 81, 92, 32.16299 + 103, 111, 114, 118, 116, 113, 110, 109, 112, 117, 121, 129, 119, 113, 115, 121, 32.16300 + 124, 125, 127, 129, 127, 125, 122, 121, 121, 122, 122, 124, 122, 121, 118, 115, 32.16301 + 116, 123, 128, 125, 125, 126, 127, 129, 131, 133, 132, 130, 127, 125, 124, 123, 32.16302 + 122, 122, 122, 117, 118, 119, 118, 117, 117, 118, 119, 123, 119, 115, 112, 111, 32.16303 + 109, 108, 106, 104, 105, 107, 109, 111, 112, 113, 113, 114, 112, 108, 104, 102, 32.16304 + 102, 105, 108, 96, 93, 93, 97, 97, 92, 88, 88, 83, 84, 81, 72, 67, 32.16305 + 72, 88, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16308 + 255, 255, 255, 255, 81, 77, 88, 89, 79, 79, 66, 76, 90, 89, 100, 118, 32.16309 + 117, 120, 115, 111, 113, 118, 122, 122, 120, 123, 124, 125, 126, 124, 121, 117, 32.16310 + 114, 123, 122, 121, 121, 122, 124, 126, 126, 126, 125, 125, 124, 124, 124, 124, 32.16311 + 125, 131, 131, 129, 129, 129, 129, 129, 129, 126, 124, 124, 123, 122, 121, 119, 32.16312 + 118, 117, 116, 115, 117, 119, 121, 121, 119, 120, 121, 120, 117, 112, 108, 106, 32.16313 + 106, 108, 108, 109, 110, 110, 111, 112, 112, 106, 107, 108, 109, 108, 107, 105, 32.16314 + 104, 100, 98, 95, 94, 92, 90, 86, 83, 83, 81, 74, 68, 74, 88, 96, 32.16315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16318 + 255, 255, 255, 82, 93, 92, 79, 86, 75, 73, 82, 91, 104, 119, 124, 120, 32.16319 + 115, 110, 111, 116, 121, 121, 120, 117, 119, 121, 121, 120, 118, 115, 113, 123, 32.16320 + 123, 122, 122, 122, 123, 125, 125, 124, 122, 122, 121, 121, 122, 123, 123, 129, 32.16321 + 130, 129, 130, 131, 131, 130, 128, 125, 125, 125, 124, 123, 122, 120, 119, 115, 32.16322 + 114, 113, 115, 117, 118, 118, 117, 122, 122, 121, 118, 113, 110, 109, 109, 110, 32.16323 + 110, 111, 111, 112, 112, 113, 113, 111, 111, 112, 112, 111, 109, 107, 106, 100, 32.16324 + 98, 95, 93, 92, 89, 85, 82, 80, 77, 70, 67, 75, 89, 255, 255, 255, 32.16325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16328 + 255, 88, 100, 99, 90, 92, 84, 74, 78, 97, 108, 114, 123, 122, 117, 115, 32.16329 + 116, 121, 126, 128, 129, 120, 122, 123, 124, 124, 122, 120, 118, 124, 123, 122, 32.16330 + 121, 121, 121, 121, 122, 125, 124, 124, 124, 123, 124, 125, 126, 123, 125, 128, 32.16331 + 130, 130, 129, 128, 127, 126, 126, 126, 125, 124, 122, 120, 119, 115, 114, 113, 32.16332 + 114, 117, 118, 117, 116, 124, 124, 122, 118, 113, 111, 112, 113, 112, 112, 112, 32.16333 + 113, 113, 113, 113, 113, 112, 113, 113, 113, 111, 109, 106, 104, 100, 98, 95, 32.16334 + 93, 91, 88, 84, 80, 78, 73, 68, 69, 80, 255, 255, 255, 255, 255, 255, 32.16335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 32.16338 + 99, 106, 104, 95, 92, 78, 78, 103, 110, 106, 115, 118, 114, 114, 115, 121, 32.16339 + 127, 132, 134, 127, 128, 129, 129, 128, 127, 124, 123, 123, 122, 121, 120, 119, 32.16340 + 118, 117, 117, 121, 121, 121, 121, 122, 122, 123, 124, 118, 121, 125, 128, 128, 32.16341 + 128, 126, 125, 124, 124, 124, 124, 122, 121, 119, 118, 117, 116, 115, 116, 118, 32.16342 + 119, 119, 118, 124, 123, 121, 117, 113, 112, 113, 115, 113, 113, 113, 113, 112, 32.16343 + 112, 112, 112, 110, 110, 110, 109, 107, 104, 101, 99, 100, 97, 94, 91, 89, 32.16344 + 86, 81, 78, 76, 70, 67, 73, 142, 255, 255, 255, 255, 255, 255, 255, 255, 32.16345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 86, 102, 32.16348 + 115, 98, 96, 77, 71, 94, 103, 103, 114, 109, 107, 109, 112, 120, 127, 133, 32.16349 + 134, 130, 130, 130, 130, 128, 126, 124, 123, 122, 121, 120, 119, 117, 116, 114, 32.16350 + 113, 112, 112, 112, 112, 113, 114, 114, 115, 114, 116, 119, 122, 124, 124, 121, 32.16351 + 120, 122, 122, 122, 121, 120, 118, 117, 116, 117, 116, 115, 116, 118, 119, 118, 32.16352 + 116, 123, 122, 120, 116, 112, 112, 114, 116, 113, 113, 112, 112, 111, 111, 110, 32.16353 + 110, 108, 108, 108, 106, 104, 101, 98, 96, 98, 96, 92, 89, 86, 82, 78, 32.16354 + 74, 68, 64, 64, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 103, 122, 107, 32.16358 + 100, 81, 68, 77, 90, 103, 115, 107, 107, 111, 114, 121, 127, 132, 136, 134, 32.16359 + 132, 132, 131, 131, 129, 128, 127, 122, 122, 121, 120, 118, 116, 114, 113, 112, 32.16360 + 111, 111, 111, 111, 112, 111, 112, 112, 114, 116, 119, 120, 121, 118, 118, 121, 32.16361 + 121, 121, 120, 119, 117, 116, 115, 115, 114, 113, 113, 115, 116, 115, 113, 121, 32.16362 + 121, 120, 117, 114, 113, 114, 116, 114, 114, 113, 112, 111, 110, 109, 109, 108, 32.16363 + 108, 108, 107, 105, 102, 99, 97, 96, 94, 90, 86, 83, 79, 74, 70, 62, 32.16364 + 61, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 105, 121, 115, 104, 97, 32.16368 + 79, 65, 74, 93, 98, 106, 107, 112, 115, 119, 123, 128, 128, 130, 129, 129, 32.16369 + 130, 131, 131, 131, 132, 123, 124, 124, 123, 121, 119, 117, 116, 116, 116, 115, 32.16370 + 115, 114, 115, 114, 114, 114, 115, 115, 117, 116, 117, 117, 117, 121, 121, 121, 32.16371 + 120, 119, 118, 116, 115, 115, 114, 113, 113, 115, 115, 114, 113, 120, 121, 121, 32.16372 + 120, 117, 116, 116, 117, 116, 116, 115, 113, 112, 111, 110, 109, 107, 108, 108, 32.16373 + 107, 105, 102, 100, 98, 94, 92, 87, 84, 80, 76, 70, 66, 61, 126, 255, 32.16374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16377 + 255, 255, 255, 255, 255, 255, 255, 255, 91, 105, 116, 119, 110, 112, 96, 65, 32.16378 + 66, 80, 75, 100, 103, 105, 109, 110, 111, 115, 114, 120, 121, 123, 125, 127, 32.16379 + 129, 130, 131, 127, 127, 128, 128, 126, 124, 122, 120, 116, 116, 115, 114, 113, 32.16380 + 113, 112, 112, 116, 116, 115, 116, 115, 116, 117, 118, 122, 122, 122, 121, 120, 32.16381 + 119, 117, 116, 118, 116, 115, 115, 117, 117, 116, 117, 120, 122, 123, 122, 120, 32.16382 + 118, 118, 118, 118, 117, 116, 115, 113, 112, 111, 110, 107, 108, 108, 107, 106, 32.16383 + 103, 101, 97, 93, 90, 86, 82, 79, 74, 68, 64, 128, 255, 255, 255, 255, 32.16384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16387 + 255, 255, 255, 255, 255, 255, 82, 100, 114, 122, 117, 113, 97, 76, 65, 70, 32.16388 + 79, 79, 84, 91, 94, 95, 96, 98, 100, 104, 113, 114, 116, 124, 121, 115, 32.16389 + 119, 124, 123, 123, 124, 127, 126, 123, 118, 124, 116, 112, 117, 113, 105, 106, 32.16390 + 116, 110, 111, 111, 114, 115, 117, 118, 118, 122, 122, 123, 123, 122, 121, 119, 32.16391 + 117, 113, 113, 113, 113, 114, 115, 116, 118, 124, 123, 120, 117, 116, 117, 119, 32.16392 + 121, 122, 120, 117, 115, 115, 115, 113, 112, 116, 113, 109, 106, 105, 104, 103, 32.16393 + 99, 100, 98, 90, 82, 79, 82, 78, 69, 255, 255, 255, 255, 255, 255, 255, 32.16394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16397 + 255, 255, 255, 255, 87, 99, 110, 118, 109, 104, 89, 72, 61, 62, 69, 98, 32.16398 + 96, 94, 87, 85, 88, 94, 100, 101, 107, 102, 98, 102, 98, 92, 97, 110, 32.16399 + 112, 114, 110, 105, 101, 101, 102, 114, 105, 103, 109, 108, 104, 107, 118, 109, 32.16400 + 112, 112, 111, 107, 110, 117, 124, 122, 123, 123, 124, 123, 121, 119, 118, 114, 32.16401 + 114, 114, 114, 114, 115, 116, 119, 124, 124, 122, 120, 119, 120, 121, 121, 122, 32.16402 + 119, 116, 114, 114, 113, 112, 110, 115, 112, 108, 106, 105, 104, 102, 100, 96, 32.16403 + 95, 89, 80, 75, 76, 72, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16407 + 255, 255, 255, 94, 97, 118, 109, 103, 90, 75, 63, 61, 62, 80, 84, 89, 32.16408 + 93, 95, 93, 94, 97, 103, 105, 97, 91, 97, 98, 99, 107, 84, 91, 96, 32.16409 + 92, 82, 79, 85, 93, 68, 61, 60, 66, 67, 67, 72, 83, 103, 109, 112, 32.16410 + 110, 103, 104, 113, 121, 121, 122, 123, 123, 122, 120, 118, 117, 115, 115, 114, 32.16411 + 114, 114, 115, 116, 119, 123, 125, 124, 123, 123, 122, 122, 122, 121, 118, 115, 32.16412 + 113, 112, 111, 109, 107, 114, 111, 108, 107, 106, 106, 103, 101, 93, 93, 89, 32.16413 + 80, 71, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16417 + 255, 92, 86, 112, 108, 108, 98, 77, 63, 60, 64, 60, 65, 74, 82, 86, 32.16418 + 87, 86, 85, 91, 104, 109, 113, 121, 115, 105, 106, 118, 120, 117, 104, 86, 32.16419 + 75, 74, 76, 83, 77, 76, 80, 82, 84, 89, 99, 98, 104, 109, 110, 104, 32.16420 + 103, 107, 111, 119, 120, 121, 121, 120, 118, 117, 115, 114, 113, 113, 112, 113, 32.16421 + 113, 114, 116, 121, 124, 124, 125, 124, 123, 121, 120, 119, 117, 113, 111, 110, 32.16422 + 109, 107, 105, 114, 112, 109, 108, 108, 107, 104, 102, 90, 91, 89, 80, 69, 32.16423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 32.16427 + 82, 94, 99, 109, 98, 73, 55, 55, 63, 69, 64, 58, 54, 55, 60, 66, 32.16428 + 72, 69, 90, 106, 116, 120, 102, 75, 65, 61, 64, 67, 70, 74, 79, 86, 32.16429 + 88, 87, 84, 83, 87, 89, 93, 99, 107, 106, 105, 103, 102, 100, 102, 105, 32.16430 + 108, 117, 118, 119, 119, 118, 116, 114, 113, 112, 111, 111, 110, 110, 110, 111, 32.16431 + 113, 118, 121, 123, 123, 123, 122, 120, 118, 118, 115, 112, 110, 109, 108, 106, 32.16432 + 104, 112, 110, 108, 107, 106, 105, 101, 99, 85, 85, 83, 76, 128, 255, 255, 32.16433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 93, 83, 80, 32.16437 + 93, 108, 101, 74, 55, 56, 67, 70, 64, 62, 60, 60, 62, 62, 63, 65, 32.16438 + 76, 76, 76, 81, 73, 61, 62, 91, 89, 86, 87, 90, 92, 91, 87, 96, 32.16439 + 97, 99, 103, 106, 112, 117, 122, 120, 113, 101, 95, 94, 100, 108, 114, 117, 32.16440 + 117, 118, 118, 117, 116, 114, 112, 111, 110, 109, 108, 108, 108, 109, 111, 116, 32.16441 + 119, 120, 121, 121, 120, 119, 118, 116, 113, 110, 109, 109, 109, 107, 105, 109, 32.16442 + 107, 105, 104, 103, 101, 96, 93, 81, 78, 75, 132, 255, 255, 255, 255, 255, 32.16443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 86, 75, 89, 109, 32.16447 + 105, 82, 64, 63, 70, 63, 64, 72, 78, 83, 79, 71, 66, 75, 76, 64, 32.16448 + 58, 66, 72, 78, 90, 89, 88, 90, 95, 102, 106, 107, 105, 100, 104, 106, 32.16449 + 109, 111, 116, 118, 121, 124, 120, 111, 103, 97, 101, 109, 117, 118, 119, 119, 32.16450 + 120, 119, 117, 115, 114, 111, 110, 109, 109, 108, 108, 108, 111, 117, 119, 120, 32.16451 + 120, 120, 120, 119, 119, 114, 112, 109, 109, 109, 110, 108, 107, 111, 109, 107, 32.16452 + 105, 103, 100, 95, 91, 82, 75, 70, 255, 255, 255, 255, 255, 255, 255, 255, 32.16453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 88, 74, 88, 107, 107, 89, 32.16457 + 71, 66, 69, 73, 72, 72, 74, 80, 79, 75, 73, 77, 85, 85, 87, 95, 32.16458 + 94, 90, 94, 111, 112, 113, 114, 116, 115, 113, 112, 117, 121, 123, 123, 123, 32.16459 + 126, 126, 126, 118, 123, 123, 118, 107, 103, 107, 113, 120, 120, 121, 121, 120, 32.16460 + 119, 117, 115, 112, 111, 110, 109, 109, 109, 109, 111, 118, 120, 120, 120, 120, 32.16461 + 120, 120, 120, 113, 111, 109, 109, 110, 110, 110, 109, 115, 113, 111, 109, 107, 32.16462 + 103, 97, 93, 86, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16466 + 255, 255, 255, 255, 255, 255, 255, 255, 95, 92, 86, 93, 106, 104, 86, 70, 32.16467 + 67, 74, 73, 79, 83, 89, 89, 86, 85, 87, 84, 84, 87, 90, 94, 103, 32.16468 + 112, 118, 112, 108, 108, 115, 122, 126, 127, 117, 120, 121, 123, 123, 124, 124, 32.16469 + 127, 122, 125, 126, 123, 111, 101, 103, 111, 114, 117, 120, 120, 119, 117, 116, 32.16470 + 116, 111, 113, 114, 112, 109, 107, 108, 112, 119, 120, 118, 116, 115, 115, 116, 32.16471 + 117, 116, 109, 103, 103, 106, 109, 111, 113, 110, 114, 112, 104, 100, 100, 96, 32.16472 + 90, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16476 + 255, 255, 255, 255, 255, 255, 101, 94, 87, 91, 102, 100, 87, 73, 69, 75, 32.16477 + 74, 79, 84, 88, 88, 88, 88, 93, 92, 93, 96, 98, 99, 104, 111, 115, 32.16478 + 115, 116, 117, 118, 120, 123, 126, 121, 122, 121, 121, 121, 123, 126, 129, 123, 32.16479 + 125, 126, 125, 115, 106, 106, 112, 115, 118, 121, 121, 119, 117, 115, 115, 106, 32.16480 + 108, 110, 110, 108, 108, 110, 114, 115, 117, 117, 117, 117, 118, 118, 119, 109, 32.16481 + 107, 108, 112, 115, 114, 110, 108, 112, 113, 110, 103, 99, 98, 93, 86, 255, 32.16482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16486 + 255, 255, 255, 255, 105, 97, 89, 88, 96, 97, 90, 79, 77, 75, 74, 78, 32.16487 + 81, 84, 85, 88, 87, 91, 88, 91, 96, 98, 97, 100, 105, 110, 116, 122, 32.16488 + 123, 120, 118, 120, 123, 124, 124, 122, 121, 120, 124, 127, 131, 126, 125, 125, 32.16489 + 126, 119, 112, 109, 112, 116, 119, 121, 121, 118, 115, 113, 113, 105, 107, 109, 32.16490 + 109, 108, 109, 110, 114, 115, 117, 118, 119, 118, 117, 115, 114, 110, 111, 113, 32.16491 + 115, 116, 114, 108, 103, 112, 111, 107, 102, 100, 98, 91, 140, 255, 255, 255, 32.16492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16496 + 255, 255, 105, 105, 94, 90, 94, 95, 92, 85, 82, 74, 73, 77, 80, 82, 32.16497 + 84, 88, 89, 86, 84, 88, 94, 96, 97, 101, 108, 111, 116, 121, 123, 122, 32.16498 + 121, 122, 123, 125, 126, 125, 125, 123, 125, 127, 130, 129, 126, 123, 125, 121, 32.16499 + 114, 109, 108, 116, 118, 120, 119, 116, 112, 110, 109, 108, 108, 108, 108, 107, 32.16500 + 107, 107, 110, 116, 119, 120, 119, 117, 113, 108, 106, 116, 117, 115, 110, 108, 32.16501 + 108, 106, 103, 108, 106, 103, 102, 101, 96, 86, 255, 255, 255, 255, 255, 255, 32.16502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16506 + 105, 108, 101, 91, 91, 92, 90, 86, 82, 78, 79, 84, 86, 87, 89, 93, 32.16507 + 95, 92, 89, 90, 95, 97, 99, 105, 113, 115, 114, 115, 118, 123, 126, 126, 32.16508 + 124, 124, 127, 128, 130, 128, 128, 126, 127, 131, 126, 122, 123, 119, 112, 106, 32.16509 + 104, 113, 115, 117, 116, 112, 108, 106, 105, 104, 103, 103, 104, 104, 105, 105, 32.16510 + 106, 114, 117, 118, 118, 115, 110, 105, 102, 110, 114, 113, 108, 105, 107, 106, 32.16511 + 101, 105, 102, 99, 98, 94, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 108, 32.16516 + 104, 97, 91, 88, 85, 82, 79, 82, 84, 91, 94, 95, 98, 103, 105, 99, 32.16517 + 94, 94, 97, 97, 98, 103, 110, 118, 115, 113, 117, 124, 129, 128, 126, 125, 32.16518 + 129, 131, 133, 131, 129, 126, 126, 130, 125, 120, 121, 116, 110, 106, 106, 110, 32.16519 + 112, 114, 113, 110, 106, 104, 103, 97, 96, 97, 99, 103, 106, 106, 108, 110, 32.16520 + 113, 115, 116, 115, 112, 109, 106, 95, 105, 112, 110, 108, 110, 106, 98, 102, 32.16521 + 97, 93, 89, 81, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 108, 103, 32.16526 + 95, 87, 84, 83, 81, 84, 88, 97, 100, 102, 104, 109, 110, 100, 96, 98, 32.16527 + 102, 103, 101, 105, 110, 118, 118, 119, 122, 125, 127, 128, 128, 129, 131, 132, 32.16528 + 133, 131, 129, 127, 128, 127, 123, 119, 119, 114, 109, 109, 113, 108, 111, 113, 32.16529 + 112, 109, 106, 104, 103, 100, 99, 99, 102, 107, 110, 110, 111, 111, 114, 115, 32.16530 + 116, 115, 113, 111, 109, 94, 106, 112, 108, 105, 108, 105, 97, 98, 92, 86, 32.16531 + 81, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 110, 108, 100, 92, 32.16536 + 90, 89, 88, 82, 86, 95, 100, 101, 104, 109, 110, 101, 100, 106, 112, 114, 32.16537 + 113, 115, 119, 117, 122, 127, 128, 126, 125, 127, 129, 130, 131, 131, 130, 129, 32.16538 + 127, 128, 130, 125, 122, 118, 118, 115, 110, 115, 119, 108, 111, 113, 113, 110, 32.16539 + 107, 105, 105, 109, 107, 106, 108, 112, 115, 113, 113, 114, 117, 116, 116, 114, 32.16540 + 111, 108, 109, 106, 114, 113, 104, 99, 104, 106, 101, 95, 89, 82, 136, 255, 32.16541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 105, 105, 103, 99, 92, 91, 32.16546 + 94, 86, 85, 91, 97, 105, 110, 110, 104, 97, 97, 103, 109, 114, 116, 117, 32.16547 + 117, 119, 122, 124, 126, 126, 126, 128, 130, 125, 126, 129, 130, 129, 125, 124, 32.16548 + 124, 125, 124, 124, 123, 122, 119, 120, 118, 114, 112, 110, 109, 109, 107, 104, 32.16549 + 101, 104, 103, 106, 109, 113, 115, 113, 108, 110, 108, 109, 110, 114, 114, 113, 32.16550 + 113, 108, 115, 118, 113, 109, 107, 101, 93, 97, 85, 133, 255, 255, 255, 255, 32.16551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16555 + 255, 255, 255, 255, 255, 255, 255, 255, 103, 102, 101, 97, 93, 94, 94, 84, 32.16556 + 81, 86, 92, 102, 106, 108, 105, 96, 95, 100, 105, 109, 112, 114, 114, 119, 32.16557 + 121, 124, 125, 126, 126, 128, 128, 125, 125, 128, 129, 127, 125, 124, 124, 125, 32.16558 + 125, 124, 123, 122, 121, 121, 118, 117, 112, 111, 109, 108, 106, 105, 102, 107, 32.16559 + 106, 109, 111, 115, 115, 113, 108, 109, 106, 107, 107, 109, 108, 108, 108, 113, 32.16560 + 112, 109, 103, 105, 107, 103, 93, 80, 74, 255, 255, 255, 255, 255, 255, 255, 32.16561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16565 + 255, 255, 255, 255, 255, 255, 102, 100, 97, 93, 89, 92, 93, 85, 82, 86, 32.16566 + 92, 100, 105, 107, 105, 98, 95, 98, 102, 106, 109, 112, 113, 118, 120, 123, 32.16567 + 125, 125, 125, 127, 127, 126, 126, 128, 128, 126, 124, 123, 123, 125, 124, 124, 32.16568 + 123, 122, 122, 121, 119, 119, 115, 110, 107, 106, 106, 106, 105, 110, 110, 112, 32.16569 + 114, 118, 119, 117, 112, 115, 113, 111, 110, 111, 109, 108, 108, 112, 108, 104, 32.16570 + 100, 103, 104, 96, 85, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16575 + 255, 255, 255, 255, 203, 99, 99, 93, 88, 88, 90, 90, 87, 90, 94, 100, 32.16576 + 102, 106, 106, 101, 99, 100, 102, 106, 109, 113, 115, 116, 119, 122, 123, 123, 32.16577 + 124, 126, 126, 126, 126, 127, 126, 124, 121, 121, 121, 123, 123, 122, 122, 121, 32.16578 + 121, 120, 118, 117, 112, 106, 104, 104, 105, 108, 108, 110, 111, 115, 117, 120, 32.16579 + 121, 120, 117, 115, 113, 111, 110, 111, 111, 110, 107, 105, 104, 106, 104, 102, 32.16580 + 95, 83, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16585 + 255, 255, 255, 100, 101, 95, 88, 87, 86, 87, 86, 90, 94, 99, 103, 110, 32.16586 + 111, 104, 102, 102, 103, 105, 109, 113, 115, 115, 118, 121, 122, 122, 123, 124, 32.16587 + 125, 125, 124, 125, 124, 121, 119, 119, 120, 121, 121, 121, 120, 120, 120, 120, 32.16588 + 117, 113, 108, 103, 101, 104, 107, 110, 111, 110, 112, 117, 120, 121, 121, 122, 32.16589 + 120, 108, 106, 105, 105, 107, 106, 105, 102, 100, 101, 103, 98, 88, 77, 73, 32.16590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16595 + 255, 103, 104, 99, 91, 87, 85, 81, 82, 85, 90, 97, 103, 113, 116, 105, 32.16596 + 103, 103, 104, 105, 108, 111, 112, 114, 117, 120, 121, 121, 122, 123, 124, 124, 32.16597 + 123, 124, 123, 121, 119, 120, 121, 121, 120, 120, 120, 120, 120, 120, 118, 111, 32.16598 + 107, 102, 101, 104, 108, 110, 112, 109, 112, 118, 120, 120, 120, 121, 122, 110, 32.16599 + 106, 105, 106, 106, 105, 104, 102, 99, 97, 93, 84, 72, 129, 255, 255, 255, 32.16600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 32.16605 + 106, 101, 93, 90, 89, 84, 83, 86, 90, 93, 99, 111, 116, 108, 105, 105, 32.16606 + 106, 108, 109, 111, 112, 112, 115, 118, 119, 119, 120, 121, 123, 125, 124, 125, 32.16607 + 124, 122, 122, 123, 125, 122, 122, 122, 122, 122, 122, 122, 120, 114, 111, 107, 32.16608 + 106, 107, 109, 112, 112, 111, 114, 119, 119, 119, 118, 118, 118, 115, 113, 111, 32.16609 + 111, 111, 108, 107, 104, 98, 90, 83, 78, 73, 255, 255, 255, 255, 255, 255, 32.16610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 100, 32.16615 + 95, 94, 94, 93, 92, 94, 93, 94, 98, 107, 112, 109, 109, 110, 111, 112, 32.16616 + 113, 114, 114, 112, 114, 117, 119, 119, 119, 121, 120, 124, 125, 126, 125, 124, 32.16617 + 124, 126, 128, 124, 124, 124, 124, 124, 124, 125, 123, 120, 115, 111, 109, 109, 32.16618 + 110, 111, 111, 113, 116, 120, 119, 118, 115, 114, 115, 117, 115, 112, 110, 108, 32.16619 + 104, 102, 99, 94, 85, 80, 82, 142, 255, 255, 255, 255, 255, 255, 255, 255, 32.16620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 103, 99, 94, 32.16625 + 87, 95, 90, 88, 87, 90, 95, 103, 108, 110, 110, 113, 112, 110, 109, 112, 32.16626 + 115, 113, 113, 113, 113, 113, 115, 116, 116, 119, 122, 124, 126, 130, 130, 125, 32.16627 + 118, 120, 123, 124, 121, 122, 125, 126, 121, 119, 114, 111, 109, 111, 112, 117, 32.16628 + 119, 117, 115, 116, 118, 121, 121, 118, 114, 119, 114, 110, 109, 109, 106, 98, 32.16629 + 90, 79, 76, 75, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 100, 95, 88, 94, 32.16635 + 90, 89, 87, 90, 96, 104, 109, 109, 110, 112, 112, 111, 110, 112, 114, 111, 32.16636 + 112, 113, 114, 116, 118, 120, 121, 124, 117, 113, 118, 125, 127, 123, 119, 123, 32.16637 + 126, 126, 123, 123, 126, 126, 123, 118, 114, 112, 110, 112, 113, 117, 118, 115, 32.16638 + 115, 118, 119, 121, 121, 119, 117, 113, 111, 110, 104, 101, 94, 88, 83, 80, 32.16639 + 80, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 102, 95, 86, 94, 88, 87, 32.16645 + 87, 92, 99, 106, 109, 109, 109, 112, 113, 112, 110, 110, 111, 110, 111, 113, 32.16646 + 116, 119, 122, 124, 126, 120, 105, 98, 108, 122, 126, 127, 129, 125, 128, 128, 32.16647 + 125, 124, 126, 125, 121, 116, 115, 114, 113, 113, 113, 115, 116, 112, 115, 117, 32.16648 + 118, 120, 119, 119, 119, 113, 112, 108, 99, 90, 83, 81, 81, 84, 255, 255, 32.16649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16654 + 255, 255, 255, 255, 255, 255, 255, 255, 103, 94, 82, 91, 85, 85, 86, 94, 32.16655 + 100, 108, 111, 112, 111, 113, 113, 112, 109, 108, 107, 110, 111, 114, 117, 120, 32.16656 + 123, 125, 126, 121, 106, 100, 110, 120, 122, 125, 132, 126, 129, 129, 125, 123, 32.16657 + 124, 122, 118, 112, 112, 112, 111, 111, 110, 112, 112, 107, 111, 115, 115, 114, 32.16658 + 112, 113, 115, 114, 108, 99, 89, 82, 80, 81, 140, 255, 255, 255, 255, 255, 32.16659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16664 + 255, 255, 255, 255, 255, 255, 100, 91, 81, 87, 82, 81, 85, 91, 99, 107, 32.16665 + 108, 113, 111, 110, 110, 109, 106, 104, 102, 109, 111, 113, 116, 118, 120, 120, 32.16666 + 120, 127, 120, 117, 120, 120, 116, 118, 125, 124, 127, 127, 123, 121, 121, 118, 32.16667 + 113, 108, 108, 108, 107, 109, 109, 110, 110, 107, 110, 115, 114, 110, 107, 107, 32.16668 + 109, 106, 97, 83, 76, 75, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16674 + 255, 255, 255, 255, 255, 93, 81, 83, 77, 76, 82, 89, 98, 104, 105, 114, 32.16675 + 110, 108, 107, 107, 107, 105, 103, 111, 113, 115, 118, 119, 119, 119, 119, 119, 32.16676 + 122, 124, 124, 122, 122, 124, 126, 121, 125, 125, 122, 119, 119, 115, 110, 106, 32.16677 + 106, 104, 104, 105, 105, 108, 108, 110, 111, 114, 111, 107, 103, 101, 101, 92, 32.16678 + 81, 70, 67, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16684 + 255, 255, 255, 255, 86, 87, 80, 78, 84, 92, 102, 107, 107, 112, 107, 104, 32.16685 + 104, 106, 109, 109, 108, 112, 114, 117, 120, 121, 122, 121, 120, 114, 122, 124, 32.16686 + 120, 122, 130, 130, 124, 119, 123, 124, 121, 119, 119, 115, 109, 109, 107, 105, 32.16687 + 103, 103, 104, 108, 109, 111, 109, 108, 105, 102, 97, 92, 89, 80, 77, 74, 32.16688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16694 + 255, 255, 91, 97, 89, 87, 92, 100, 106, 108, 107, 107, 104, 100, 101, 106, 32.16695 + 111, 113, 113, 112, 117, 120, 123, 126, 126, 126, 125, 127, 132, 130, 116, 120, 32.16696 + 128, 126, 108, 120, 123, 126, 121, 122, 119, 117, 112, 112, 110, 107, 105, 104, 32.16697 + 106, 108, 110, 110, 106, 101, 98, 95, 90, 84, 78, 77, 139, 255, 255, 255, 32.16698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16704 + 255, 91, 92, 97, 100, 101, 101, 103, 108, 105, 104, 103, 103, 105, 110, 113, 32.16705 + 115, 122, 124, 125, 126, 127, 128, 129, 129, 130, 125, 124, 123, 128, 126, 126, 32.16706 + 121, 125, 121, 122, 120, 122, 118, 117, 114, 109, 104, 100, 101, 107, 111, 110, 32.16707 + 107, 114, 108, 98, 89, 82, 79, 79, 80, 255, 255, 255, 255, 255, 255, 255, 32.16708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16714 + 90, 94, 99, 99, 100, 98, 100, 106, 106, 103, 102, 104, 108, 111, 113, 118, 32.16715 + 119, 121, 122, 125, 125, 126, 125, 129, 126, 123, 125, 127, 129, 126, 123, 126, 32.16716 + 124, 122, 119, 116, 111, 104, 99, 102, 109, 113, 108, 99, 98, 106, 116, 106, 32.16717 + 99, 89, 80, 78, 82, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 93, 32.16724 + 99, 103, 105, 106, 105, 110, 110, 109, 108, 108, 110, 113, 114, 115, 117, 121, 32.16725 + 122, 126, 124, 125, 123, 122, 120, 117, 119, 122, 123, 123, 121, 119, 118, 116, 32.16726 + 116, 114, 110, 105, 101, 103, 103, 102, 104, 105, 106, 104, 101, 89, 85, 81, 32.16727 + 79, 82, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 103, 32.16734 + 109, 110, 109, 108, 108, 108, 107, 106, 106, 108, 110, 111, 114, 116, 120, 123, 32.16735 + 123, 122, 121, 116, 114, 112, 113, 117, 118, 118, 115, 112, 110, 108, 107, 107, 32.16736 + 106, 105, 103, 106, 101, 97, 99, 103, 99, 87, 75, 76, 79, 84, 145, 255, 32.16737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 101, 104, 32.16744 + 105, 102, 102, 104, 103, 101, 99, 100, 103, 103, 106, 108, 112, 113, 113, 112, 32.16745 + 111, 113, 110, 108, 110, 113, 114, 114, 111, 113, 108, 102, 97, 96, 95, 94, 32.16746 + 93, 99, 102, 102, 92, 77, 68, 68, 72, 139, 255, 255, 255, 255, 255, 255, 32.16747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 101, 103, 32.16754 + 104, 107, 107, 102, 101, 101, 102, 102, 104, 107, 108, 110, 108, 108, 109, 112, 32.16755 + 109, 109, 107, 112, 113, 110, 107, 110, 105, 98, 94, 93, 94, 94, 94, 90, 32.16756 + 86, 79, 72, 69, 73, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 103, 105, 108, 32.16764 + 109, 104, 102, 103, 104, 105, 105, 106, 107, 107, 107, 107, 107, 111, 107, 105, 32.16765 + 104, 107, 107, 104, 101, 101, 98, 94, 92, 92, 91, 89, 88, 85, 76, 69, 32.16766 + 74, 88, 99, 152, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 105, 105, 102, 32.16774 + 98, 98, 100, 106, 104, 105, 104, 103, 103, 103, 105, 109, 105, 102, 101, 103, 32.16775 + 103, 99, 96, 98, 94, 90, 86, 82, 75, 68, 63, 79, 89, 100, 104, 153, 32.16776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 107, 109, 32.16784 + 109, 104, 102, 103, 107, 107, 102, 102, 106, 105, 109, 110, 107, 102, 99, 94, 32.16785 + 92, 93, 75, 83, 71, 73, 88, 75, 87, 97, 150, 255, 255, 255, 255, 255, 32.16786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16794 + 255, 255, 255, 205, 99, 99, 102, 110, 112, 111, 108, 101, 95, 91, 85, 73, 32.16795 + 74, 78, 79, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.16802 +/* Define image 'enemy11' of size 131x168x1x3 and type 'const unsigned char' */ 32.16803 +const unsigned char data_enemy11[] = { 32.16804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 134, 132, 132, 129, 123, 32.16808 + 119, 121, 126, 116, 105, 102, 105, 110, 111, 112, 144, 222, 255, 255, 255, 255, 32.16809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16815 + 255, 255, 255, 255, 255, 255, 255, 147, 145, 146, 143, 141, 136, 122, 116, 119, 32.16816 + 124, 122, 111, 107, 108, 107, 109, 106, 92, 83, 92, 123, 149, 134, 125, 121, 32.16817 + 132, 147, 152, 149, 146, 133, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16823 + 255, 255, 255, 255, 255, 255, 220, 143, 144, 139, 140, 136, 130, 109, 85, 64, 32.16824 + 53, 53, 51, 42, 44, 54, 61, 60, 66, 61, 52, 34, 29, 51, 97, 136, 32.16825 + 143, 120, 101, 72, 97, 130, 159, 139, 142, 144, 151, 157, 155, 149, 183, 255, 32.16826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16831 + 255, 255, 255, 255, 244, 208, 170, 145, 145, 138, 128, 131, 124, 115, 107, 95, 32.16832 + 77, 54, 36, 41, 41, 37, 30, 28, 35, 40, 39, 45, 46, 42, 31, 25, 32.16833 + 39, 69, 96, 147, 125, 126, 77, 79, 73, 132, 148, 155, 148, 144, 144, 145, 32.16834 + 143, 145, 145, 150, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16839 + 255, 255, 255, 255, 244, 204, 160, 137, 217, 140, 134, 116, 85, 58, 45, 40, 32.16840 + 36, 35, 37, 36, 31, 25, 29, 29, 25, 21, 21, 25, 26, 25, 24, 28, 32.16841 + 28, 25, 22, 25, 35, 46, 115, 103, 135, 93, 86, 37, 94, 121, 122, 123, 32.16842 + 132, 148, 159, 158, 152, 148, 147, 143, 142, 147, 150, 186, 255, 255, 255, 255, 32.16843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 88, 75, 60, 51, 44, 32, 32.16848 + 21, 26, 21, 16, 15, 19, 22, 22, 20, 21, 20, 21, 19, 21, 22, 24, 32.16849 + 21, 17, 18, 22, 23, 22, 20, 19, 20, 42, 36, 72, 59, 57, 15, 41, 32.16850 + 50, 52, 62, 84, 110, 126, 129, 126, 124, 136, 132, 135, 147, 159, 159, 155, 32.16851 + 150, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 94, 46, 44, 34, 22, 32.16856 + 16, 19, 24, 26, 36, 32, 27, 24, 25, 25, 23, 19, 17, 16, 17, 17, 32.16857 + 19, 16, 16, 16, 19, 17, 17, 18, 21, 20, 17, 16, 31, 26, 32, 35, 32.16858 + 32, 32, 39, 37, 38, 41, 48, 58, 66, 76, 92, 108, 124, 118, 120, 132, 32.16859 + 150, 153, 152, 147, 165, 148, 130, 140, 255, 255, 255, 255, 255, 255, 255, 255, 32.16860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 83, 39, 37, 20, 32.16864 + 29, 36, 35, 30, 29, 27, 25, 16, 15, 15, 17, 19, 21, 20, 19, 22, 32.16865 + 18, 17, 19, 18, 12, 11, 12, 20, 15, 12, 12, 16, 17, 20, 19, 16, 32.16866 + 21, 17, 24, 11, 31, 29, 21, 49, 48, 50, 50, 50, 58, 78, 98, 93, 32.16867 + 90, 90, 101, 117, 133, 147, 157, 134, 153, 142, 125, 70, 93, 150, 255, 255, 32.16868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 23, 23, 32.16872 + 26, 23, 28, 25, 18, 8, 6, 12, 20, 23, 25, 24, 22, 21, 19, 16, 32.16873 + 13, 11, 23, 18, 17, 19, 18, 11, 9, 12, 17, 11, 7, 7, 10, 14, 32.16874 + 17, 18, 22, 28, 40, 46, 41, 46, 43, 30, 32, 36, 44, 49, 49, 48, 32.16875 + 54, 62, 57, 59, 64, 68, 72, 85, 112, 136, 116, 155, 152, 124, 63, 120, 32.16876 + 112, 55, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 32.16880 + 19, 26, 29, 23, 22, 17, 17, 18, 17, 19, 22, 20, 14, 16, 16, 17, 32.16881 + 18, 20, 20, 20, 20, 16, 11, 10, 15, 13, 8, 8, 13, 15, 12, 9, 32.16882 + 9, 10, 14, 16, 18, 24, 14, 32, 34, 49, 40, 47, 32, 35, 36, 41, 32.16883 + 47, 49, 44, 42, 43, 45, 54, 63, 56, 41, 41, 66, 95, 141, 128, 114, 32.16884 + 117, 55, 90, 78, 34, 84, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16888 + 255, 184, 19, 16, 19, 19, 16, 14, 15, 16, 17, 13, 15, 21, 22, 17, 32.16889 + 24, 18, 17, 22, 30, 33, 27, 18, 20, 16, 11, 8, 8, 8, 9, 8, 32.16890 + 9, 13, 14, 13, 14, 18, 24, 26, 25, 35, 41, 39, 46, 54, 53, 43, 32.16891 + 29, 31, 34, 35, 36, 35, 35, 35, 37, 46, 51, 49, 50, 53, 54, 50, 32.16892 + 86, 114, 134, 92, 50, 86, 102, 43, 39, 99, 140, 134, 255, 255, 255, 255, 32.16893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16896 + 255, 255, 255, 184, 28, 18, 16, 16, 15, 13, 15, 13, 15, 13, 11, 16, 32.16897 + 21, 20, 14, 24, 19, 17, 19, 25, 28, 26, 21, 22, 17, 16, 14, 15, 32.16898 + 16, 17, 16, 15, 15, 15, 16, 19, 23, 25, 24, 24, 26, 33, 42, 46, 32.16899 + 43, 38, 36, 34, 31, 29, 31, 35, 36, 35, 32, 32, 39, 43, 40, 38, 32.16900 + 41, 41, 37, 62, 64, 88, 91, 71, 80, 93, 76, 45, 67, 99, 145, 183, 32.16901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16904 + 255, 255, 255, 255, 255, 181, 22, 19, 20, 20, 16, 12, 13, 17, 18, 17, 32.16905 + 15, 14, 20, 24, 21, 14, 23, 20, 17, 17, 19, 22, 23, 23, 18, 16, 32.16906 + 14, 15, 18, 19, 19, 18, 23, 18, 15, 17, 24, 26, 25, 22, 29, 24, 32.16907 + 32, 48, 51, 38, 30, 33, 36, 29, 22, 23, 29, 33, 32, 29, 27, 33, 32.16908 + 37, 37, 37, 42, 43, 43, 57, 52, 70, 94, 93, 79, 83, 97, 61, 61, 32.16909 + 70, 137, 170, 152, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16912 + 255, 255, 255, 255, 255, 255, 255, 184, 22, 18, 19, 21, 21, 15, 11, 11, 32.16913 + 14, 20, 17, 16, 18, 24, 26, 21, 15, 21, 21, 20, 19, 19, 19, 21, 32.16914 + 23, 16, 14, 13, 15, 17, 18, 18, 18, 23, 18, 16, 20, 22, 22, 24, 32.16915 + 27, 35, 33, 37, 47, 48, 38, 31, 30, 31, 25, 19, 17, 20, 24, 26, 32.16916 + 28, 28, 32, 33, 34, 34, 36, 40, 42, 34, 48, 54, 62, 68, 58, 55, 32.16917 + 71, 65, 70, 62, 110, 114, 105, 102, 125, 255, 255, 255, 255, 255, 255, 255, 32.16918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 35, 17, 20, 18, 16, 15, 32.16921 + 14, 14, 13, 11, 18, 15, 17, 22, 27, 26, 20, 16, 19, 22, 24, 24, 32.16922 + 21, 19, 19, 20, 21, 19, 17, 18, 20, 22, 22, 23, 22, 20, 21, 23, 32.16923 + 20, 19, 26, 37, 34, 37, 36, 31, 30, 32, 28, 19, 19, 19, 17, 13, 32.16924 + 11, 13, 19, 27, 37, 36, 32, 28, 22, 19, 20, 21, 12, 39, 39, 34, 32.16925 + 44, 42, 40, 61, 56, 60, 52, 95, 90, 71, 72, 102, 170, 255, 255, 255, 32.16926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 69, 20, 29, 15, 14, 32.16929 + 13, 10, 9, 12, 18, 18, 15, 15, 15, 19, 26, 29, 26, 22, 21, 20, 32.16930 + 22, 25, 25, 22, 20, 18, 17, 22, 20, 19, 19, 21, 24, 26, 26, 23, 32.16931 + 23, 30, 33, 28, 22, 30, 45, 38, 41, 37, 24, 23, 30, 27, 16, 14, 32.16932 + 18, 20, 17, 12, 12, 20, 29, 45, 41, 36, 31, 27, 23, 24, 30, 28, 32.16933 + 37, 36, 36, 44, 36, 38, 64, 58, 44, 40, 94, 102, 58, 45, 69, 109, 32.16934 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 18, 24, 13, 32.16937 + 27, 17, 11, 14, 12, 10, 14, 21, 23, 21, 19, 21, 29, 37, 37, 30, 32.16938 + 29, 33, 23, 22, 21, 21, 20, 19, 17, 17, 24, 22, 20, 19, 22, 27, 32.16939 + 33, 35, 31, 31, 39, 47, 43, 33, 34, 43, 46, 42, 36, 30, 28, 28, 32.16940 + 25, 22, 16, 19, 22, 22, 21, 21, 25, 30, 48, 44, 40, 39, 38, 37, 32.16941 + 42, 50, 37, 33, 27, 30, 35, 29, 28, 42, 54, 38, 36, 73, 96, 52, 32.16942 + 42, 47, 71, 53, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 20, 32.16945 + 21, 10, 18, 8, 18, 13, 19, 20, 16, 17, 23, 25, 24, 24, 29, 37, 32.16946 + 46, 45, 38, 37, 43, 26, 22, 18, 16, 17, 17, 18, 18, 32, 31, 28, 32.16947 + 28, 32, 39, 45, 48, 39, 38, 47, 60, 59, 46, 39, 40, 51, 38, 33, 32.16948 + 37, 34, 24, 21, 26, 22, 23, 26, 29, 32, 33, 32, 32, 49, 43, 39, 32.16949 + 38, 35, 32, 37, 46, 38, 38, 31, 23, 32, 43, 40, 28, 36, 37, 35, 32.16950 + 36, 66, 49, 58, 48, 52, 87, 121, 105, 255, 255, 255, 255, 255, 255, 255, 32.16951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16953 + 187, 29, 11, 9, 14, 13, 12, 13, 14, 11, 17, 18, 11, 15, 26, 27, 32.16954 + 26, 28, 39, 40, 28, 29, 43, 46, 37, 27, 16, 14, 19, 23, 21, 19, 32.16955 + 27, 40, 38, 23, 45, 63, 48, 54, 70, 56, 66, 66, 74, 48, 53, 57, 32.16956 + 40, 28, 43, 34, 33, 39, 21, 28, 31, 29, 27, 30, 40, 46, 40, 31, 32.16957 + 45, 50, 46, 35, 29, 34, 39, 40, 57, 42, 27, 23, 32, 37, 35, 29, 32.16958 + 39, 28, 29, 44, 54, 55, 60, 71, 73, 83, 104, 98, 155, 255, 255, 255, 32.16959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16961 + 255, 211, 76, 33, 17, 8, 7, 11, 11, 9, 9, 9, 7, 14, 18, 13, 32.16962 + 19, 29, 29, 18, 21, 33, 33, 28, 37, 50, 49, 45, 27, 17, 24, 27, 32.16963 + 20, 18, 27, 43, 54, 52, 36, 54, 72, 59, 64, 99, 73, 71, 69, 77, 32.16964 + 50, 57, 66, 60, 44, 50, 37, 37, 43, 29, 34, 24, 41, 59, 59, 51, 32.16965 + 42, 39, 36, 40, 43, 38, 29, 26, 29, 32, 31, 44, 33, 22, 21, 28, 32.16966 + 32, 31, 26, 34, 33, 34, 40, 50, 59, 62, 60, 83, 66, 71, 67, 109, 32.16967 + 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16969 + 255, 255, 255, 210, 94, 66, 15, 8, 6, 9, 12, 10, 7, 7, 7, 5, 32.16970 + 13, 18, 15, 20, 29, 26, 12, 16, 24, 24, 27, 48, 61, 50, 49, 28, 32.16971 + 19, 29, 28, 15, 17, 35, 55, 66, 71, 61, 78, 100, 93, 98, 101, 84, 32.16972 + 79, 67, 80, 70, 76, 69, 73, 57, 56, 41, 40, 43, 36, 38, 37, 60, 32.16973 + 83, 80, 65, 49, 46, 45, 39, 40, 35, 29, 24, 26, 26, 24, 31, 26, 32.16974 + 22, 22, 27, 30, 30, 28, 35, 40, 38, 34, 44, 59, 59, 45, 80, 52, 32.16975 + 65, 77, 98, 107, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16977 + 255, 255, 255, 255, 210, 139, 138, 87, 28, 10, 9, 10, 12, 13, 12, 11, 32.16978 + 11, 11, 6, 13, 18, 15, 19, 23, 18, 11, 14, 18, 18, 27, 54, 65, 32.16979 + 46, 39, 26, 18, 23, 22, 19, 28, 47, 52, 64, 79, 75, 89, 112, 108, 32.16980 + 109, 95, 97, 98, 74, 92, 96, 94, 64, 77, 70, 68, 58, 52, 51, 49, 32.16981 + 53, 67, 76, 82, 81, 75, 69, 60, 52, 45, 43, 39, 34, 31, 28, 26, 32.16982 + 22, 26, 25, 25, 26, 27, 31, 35, 40, 42, 42, 36, 32, 40, 53, 51, 32.16983 + 40, 53, 35, 60, 81, 86, 102, 86, 255, 255, 255, 255, 255, 255, 255, 255, 32.16984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16985 + 255, 255, 255, 255, 255, 255, 255, 92, 52, 30, 20, 16, 11, 11, 11, 10, 32.16986 + 10, 12, 15, 15, 13, 6, 11, 16, 14, 19, 22, 13, 9, 10, 14, 14, 32.16987 + 22, 47, 53, 34, 25, 25, 21, 14, 18, 32, 48, 61, 73, 85, 107, 104, 32.16988 + 108, 127, 122, 117, 128, 120, 121, 105, 115, 102, 97, 74, 82, 91, 94, 92, 32.16989 + 83, 75, 80, 83, 88, 89, 89, 87, 88, 87, 79, 67, 58, 54, 51, 46, 32.16990 + 39, 33, 28, 27, 29, 28, 30, 29, 29, 34, 43, 49, 48, 39, 29, 31, 32.16991 + 38, 43, 45, 45, 51, 41, 59, 69, 64, 93, 71, 120, 255, 255, 255, 255, 32.16992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.16993 + 255, 255, 255, 255, 255, 255, 255, 255, 197, 37, 23, 24, 21, 20, 20, 13, 32.16994 + 12, 10, 6, 8, 13, 18, 17, 16, 7, 9, 15, 16, 22, 25, 15, 7, 32.16995 + 7, 13, 11, 15, 31, 34, 19, 19, 26, 23, 15, 24, 49, 66, 72, 89, 32.16996 + 101, 129, 127, 125, 144, 142, 133, 157, 125, 123, 126, 131, 95, 98, 110, 91, 32.16997 + 105, 107, 112, 104, 94, 104, 104, 92, 100, 106, 104, 99, 97, 93, 87, 75, 32.16998 + 71, 68, 60, 48, 36, 31, 34, 32, 31, 30, 29, 29, 34, 43, 50, 49, 32.16999 + 40, 32, 35, 39, 42, 45, 50, 50, 51, 59, 63, 57, 79, 56, 83, 110, 32.17000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 47, 26, 28, 19, 14, 32.17002 + 20, 18, 12, 10, 9, 5, 9, 18, 21, 18, 24, 12, 12, 16, 18, 24, 32.17003 + 27, 16, 8, 6, 15, 17, 12, 17, 19, 11, 18, 21, 22, 25, 36, 55, 32.17004 + 68, 77, 88, 97, 127, 125, 118, 138, 141, 133, 152, 126, 130, 131, 135, 106, 32.17005 + 120, 139, 106, 115, 106, 114, 111, 102, 117, 112, 105, 113, 117, 114, 111, 110, 32.17006 + 108, 103, 93, 89, 85, 74, 57, 42, 38, 44, 32, 33, 33, 32, 32, 35, 32.17007 + 42, 45, 51, 53, 50, 41, 39, 44, 44, 40, 34, 39, 41, 55, 57, 55, 32.17008 + 35, 43, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 117, 57, 26, 18, 32.17010 + 17, 6, 19, 27, 3, 12, 12, 9, 7, 13, 24, 26, 21, 34, 20, 16, 32.17011 + 19, 19, 24, 26, 14, 14, 11, 21, 25, 15, 11, 13, 10, 21, 15, 20, 32.17012 + 34, 47, 54, 62, 78, 113, 116, 144, 136, 123, 142, 147, 138, 142, 145, 153, 32.17013 + 133, 135, 127, 143, 143, 121, 125, 106, 113, 115, 108, 124, 115, 127, 122, 115, 32.17014 + 112, 118, 124, 122, 113, 108, 105, 100, 88, 67, 48, 47, 55, 36, 35, 36, 32.17015 + 37, 37, 38, 40, 40, 57, 72, 70, 47, 38, 45, 41, 25, 46, 44, 35, 32.17016 + 54, 65, 50, 44, 49, 60, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.17018 + 14, 16, 17, 16, 14, 14, 15, 16, 9, 14, 17, 14, 12, 15, 22, 26, 32.17019 + 31, 30, 26, 22, 21, 20, 17, 13, 7, 43, 45, 51, 41, 16, 26, 29, 32.17020 + 25, 17, 41, 64, 70, 89, 60, 104, 115, 117, 151, 134, 130, 147, 134, 156, 32.17021 + 153, 148, 147, 149, 150, 146, 149, 154, 145, 142, 143, 143, 139, 131, 131, 135, 32.17022 + 138, 135, 132, 131, 131, 130, 126, 122, 119, 126, 118, 93, 73, 67, 70, 70, 32.17023 + 55, 53, 48, 45, 46, 49, 50, 49, 56, 54, 54, 55, 46, 34, 27, 26, 32.17024 + 22, 28, 36, 40, 44, 51, 58, 64, 52, 87, 95, 255, 255, 255, 255, 255, 32.17025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17026 + 255, 202, 22, 14, 15, 15, 15, 13, 12, 13, 14, 13, 15, 15, 11, 11, 32.17027 + 15, 17, 18, 19, 20, 20, 19, 17, 16, 12, 10, 39, 58, 38, 37, 40, 32.17028 + 30, 30, 18, 37, 21, 59, 67, 76, 74, 74, 137, 127, 126, 155, 139, 136, 32.17029 + 152, 137, 155, 151, 148, 148, 150, 151, 148, 150, 156, 144, 142, 143, 143, 140, 32.17030 + 135, 136, 140, 137, 130, 128, 131, 139, 142, 138, 132, 121, 126, 122, 103, 82, 32.17031 + 72, 72, 73, 63, 58, 54, 51, 51, 52, 52, 51, 61, 56, 53, 53, 48, 32.17032 + 38, 32, 31, 33, 32, 31, 30, 35, 48, 60, 69, 42, 92, 67, 170, 255, 32.17033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17034 + 255, 255, 255, 255, 55, 14, 14, 15, 15, 14, 12, 11, 12, 13, 19, 20, 32.17035 + 16, 11, 11, 15, 14, 10, 14, 14, 14, 14, 13, 13, 15, 18, 43, 61, 32.17036 + 48, 39, 36, 25, 26, 19, 13, 32, 97, 89, 99, 80, 89, 130, 137, 134, 32.17037 + 155, 141, 141, 154, 139, 150, 149, 148, 149, 152, 153, 150, 152, 156, 145, 142, 32.17038 + 142, 144, 144, 140, 143, 147, 144, 136, 131, 133, 142, 145, 137, 128, 132, 133, 32.17039 + 131, 119, 101, 84, 81, 87, 68, 64, 59, 58, 61, 62, 64, 63, 69, 62, 32.17040 + 56, 55, 51, 45, 38, 36, 29, 29, 32, 39, 49, 58, 63, 66, 58, 60, 32.17041 + 92, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17042 + 255, 255, 255, 255, 255, 255, 40, 27, 15, 14, 15, 15, 14, 12, 11, 11, 32.17043 + 13, 21, 25, 23, 15, 12, 15, 15, 10, 17, 15, 13, 13, 13, 15, 22, 32.17044 + 31, 35, 46, 44, 46, 43, 26, 16, 20, 23, 66, 105, 69, 73, 95, 117, 32.17045 + 138, 139, 136, 148, 139, 141, 152, 140, 144, 147, 149, 151, 153, 154, 153, 155, 32.17046 + 157, 150, 147, 146, 147, 147, 146, 150, 153, 151, 145, 142, 143, 148, 147, 140, 32.17047 + 133, 145, 142, 142, 137, 121, 103, 101, 110, 93, 83, 75, 71, 69, 69, 70, 32.17048 + 73, 76, 70, 63, 59, 58, 53, 45, 37, 29, 27, 31, 44, 57, 64, 70, 32.17049 + 72, 75, 58, 70, 48, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17050 + 255, 255, 255, 255, 255, 255, 255, 255, 40, 27, 16, 8, 13, 14, 14, 14, 32.17051 + 12, 12, 13, 14, 17, 26, 26, 17, 12, 17, 19, 14, 15, 12, 12, 17, 32.17052 + 19, 18, 23, 31, 46, 26, 20, 38, 54, 35, 12, 19, 42, 82, 89, 71, 32.17053 + 69, 116, 127, 137, 141, 138, 143, 138, 143, 152, 144, 143, 147, 151, 153, 153, 32.17054 + 155, 156, 157, 157, 159, 154, 152, 152, 153, 152, 153, 157, 150, 149, 152, 154, 32.17055 + 155, 153, 151, 150, 149, 145, 145, 143, 133, 119, 119, 129, 127, 112, 98, 89, 32.17056 + 80, 75, 74, 79, 80, 77, 71, 69, 70, 66, 57, 49, 50, 36, 28, 32, 32.17057 + 42, 55, 70, 82, 70, 64, 41, 74, 70, 154, 255, 255, 255, 255, 255, 255, 32.17058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 20, 15, 8, 12, 32.17059 + 14, 14, 15, 14, 14, 16, 17, 12, 22, 24, 16, 16, 26, 27, 20, 13, 32.17060 + 8, 10, 19, 23, 19, 18, 23, 48, 26, 23, 33, 40, 28, 16, 43, 56, 32.17061 + 78, 77, 99, 104, 130, 123, 137, 145, 145, 145, 143, 148, 154, 152, 147, 150, 32.17062 + 154, 155, 153, 154, 157, 158, 157, 163, 157, 155, 157, 158, 155, 155, 157, 149, 32.17063 + 152, 157, 156, 153, 149, 148, 148, 145, 144, 145, 140, 133, 126, 128, 135, 137, 32.17064 + 122, 108, 104, 98, 93, 93, 100, 87, 87, 83, 78, 80, 80, 74, 68, 57, 32.17065 + 44, 37, 38, 42, 45, 56, 67, 62, 46, 58, 55, 79, 81, 255, 255, 255, 32.17066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 15, 11, 32.17067 + 15, 12, 11, 13, 14, 15, 15, 16, 19, 21, 15, 21, 20, 17, 28, 45, 32.17068 + 43, 28, 32, 17, 9, 14, 21, 21, 24, 30, 39, 36, 45, 30, 27, 30, 32.17069 + 32, 67, 84, 87, 80, 100, 121, 133, 146, 164, 150, 154, 149, 149, 153, 155, 32.17070 + 157, 151, 153, 157, 157, 152, 153, 157, 159, 158, 162, 157, 155, 158, 160, 158, 32.17071 + 157, 158, 154, 153, 157, 155, 153, 148, 144, 140, 141, 148, 151, 144, 138, 136, 32.17072 + 135, 134, 133, 121, 114, 118, 118, 112, 110, 117, 105, 105, 97, 88, 86, 88, 32.17073 + 89, 85, 58, 50, 50, 55, 52, 44, 43, 51, 55, 53, 58, 64, 66, 86, 32.17074 + 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17075 + 17, 21, 12, 13, 8, 11, 13, 14, 16, 16, 18, 21, 23, 21, 22, 18, 32.17076 + 19, 40, 61, 55, 35, 58, 31, 8, 7, 14, 22, 35, 50, 41, 41, 45, 32.17077 + 24, 34, 58, 50, 67, 68, 89, 110, 117, 153, 150, 162, 152, 156, 159, 152, 32.17078 + 152, 154, 154, 159, 152, 155, 159, 158, 151, 151, 157, 160, 158, 159, 154, 154, 32.17079 + 159, 161, 159, 157, 157, 153, 152, 154, 159, 164, 164, 159, 154, 142, 154, 159, 32.17080 + 151, 146, 145, 142, 135, 138, 127, 125, 130, 129, 118, 111, 115, 124, 123, 111, 32.17081 + 96, 88, 91, 95, 93, 72, 60, 54, 55, 49, 41, 48, 58, 64, 57, 66, 32.17082 + 66, 77, 92, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17083 + 255, 255, 176, 34, 14, 14, 18, 12, 9, 14, 26, 12, 8, 19, 13, 16, 32.17084 + 38, 17, 20, 14, 18, 69, 44, 38, 26, 42, 4, 24, 26, 26, 32, 48, 32.17085 + 65, 80, 58, 57, 57, 65, 60, 80, 97, 129, 156, 158, 153, 156, 160, 159, 32.17086 + 162, 159, 158, 157, 159, 159, 159, 160, 159, 155, 151, 150, 154, 157, 160, 161, 32.17087 + 162, 160, 156, 155, 155, 156, 157, 156, 157, 158, 158, 158, 158, 158, 158, 159, 32.17088 + 154, 156, 158, 157, 154, 151, 150, 149, 138, 133, 130, 127, 129, 128, 124, 121, 32.17089 + 121, 120, 118, 117, 115, 112, 106, 100, 100, 99, 50, 54, 57, 31, 53, 47, 32.17090 + 33, 37, 38, 37, 44, 55, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17091 + 255, 255, 255, 255, 255, 18, 28, 13, 13, 13, 11, 14, 15, 27, 16, 10, 32.17092 + 17, 13, 22, 24, 22, 19, 17, 10, 39, 37, 60, 17, 35, 30, 20, 21, 32.17093 + 17, 33, 41, 49, 65, 78, 88, 92, 106, 109, 132, 138, 153, 164, 159, 155, 32.17094 + 163, 167, 166, 161, 160, 159, 158, 160, 160, 160, 160, 159, 156, 152, 150, 154, 32.17095 + 158, 160, 161, 161, 159, 157, 156, 157, 157, 157, 156, 157, 158, 159, 159, 159, 32.17096 + 158, 157, 157, 160, 161, 161, 159, 154, 150, 148, 147, 154, 151, 146, 136, 128, 32.17097 + 122, 125, 127, 124, 123, 122, 121, 121, 119, 113, 108, 106, 103, 71, 69, 62, 32.17098 + 39, 48, 43, 43, 42, 38, 33, 33, 36, 36, 33, 255, 255, 255, 255, 255, 32.17099 + 255, 255, 255, 255, 255, 255, 255, 177, 17, 18, 14, 16, 9, 15, 18, 15, 32.17100 + 27, 20, 13, 15, 14, 31, 25, 41, 16, 22, 14, 17, 31, 66, 23, 25, 32.17101 + 48, 17, 22, 25, 38, 27, 34, 42, 92, 106, 111, 123, 126, 149, 161, 166, 32.17102 + 163, 156, 157, 164, 166, 161, 162, 161, 160, 159, 161, 161, 161, 162, 162, 158, 32.17103 + 155, 154, 158, 161, 163, 163, 157, 156, 155, 156, 158, 158, 158, 156, 157, 158, 32.17104 + 160, 161, 160, 158, 157, 155, 161, 162, 162, 160, 156, 152, 150, 149, 160, 161, 32.17105 + 156, 140, 123, 116, 123, 131, 128, 127, 127, 127, 126, 125, 123, 118, 115, 110, 32.17106 + 96, 88, 74, 54, 42, 35, 41, 35, 33, 32, 31, 30, 33, 40, 255, 255, 32.17107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 17, 11, 16, 21, 9, 32.17108 + 20, 19, 13, 25, 22, 15, 16, 18, 41, 41, 65, 13, 23, 26, 17, 27, 32.17109 + 41, 37, 15, 39, 20, 24, 42, 36, 22, 48, 46, 110, 129, 132, 141, 141, 32.17110 + 156, 155, 159, 160, 158, 160, 164, 162, 156, 163, 162, 161, 160, 162, 162, 162, 32.17111 + 163, 165, 162, 159, 158, 162, 165, 166, 167, 156, 155, 156, 158, 160, 160, 159, 32.17112 + 157, 157, 159, 162, 163, 162, 159, 156, 154, 157, 159, 160, 160, 159, 158, 158, 32.17113 + 159, 158, 160, 157, 145, 128, 123, 129, 138, 134, 133, 132, 132, 132, 130, 128, 32.17114 + 125, 123, 111, 113, 102, 89, 75, 45, 26, 31, 25, 27, 32, 32, 28, 34, 32.17115 + 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 21, 10, 32.17116 + 17, 23, 8, 19, 17, 10, 21, 20, 17, 20, 23, 47, 40, 77, 19, 27, 32.17117 + 33, 24, 26, 14, 39, 13, 25, 32, 20, 44, 27, 30, 55, 54, 104, 132, 32.17118 + 138, 156, 155, 162, 151, 157, 161, 161, 160, 161, 161, 159, 163, 163, 162, 161, 32.17119 + 162, 162, 163, 163, 165, 162, 160, 159, 163, 166, 166, 164, 157, 154, 157, 158, 32.17120 + 160, 160, 159, 156, 157, 159, 163, 164, 164, 161, 157, 155, 156, 158, 159, 160, 32.17121 + 160, 161, 163, 166, 161, 162, 159, 152, 145, 141, 143, 146, 141, 139, 137, 136, 32.17122 + 136, 135, 133, 128, 128, 111, 117, 112, 102, 97, 62, 26, 27, 23, 26, 32, 32.17123 + 28, 22, 25, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 32.17124 + 20, 25, 13, 17, 23, 7, 13, 14, 9, 19, 16, 17, 25, 27, 45, 26, 32.17125 + 66, 26, 32, 28, 26, 28, 11, 25, 23, 27, 43, 18, 30, 20, 41, 54, 32.17126 + 71, 82, 121, 127, 153, 154, 155, 159, 161, 160, 156, 150, 150, 155, 161, 162, 32.17127 + 162, 161, 160, 162, 162, 163, 163, 162, 160, 158, 158, 162, 164, 164, 162, 158, 32.17128 + 157, 156, 157, 160, 160, 159, 158, 159, 160, 164, 165, 165, 163, 160, 159, 161, 32.17129 + 162, 162, 162, 161, 161, 163, 166, 163, 162, 159, 155, 151, 147, 145, 143, 145, 32.17130 + 142, 139, 137, 137, 137, 135, 133, 131, 116, 116, 118, 113, 110, 87, 34, 27, 32.17131 + 25, 27, 32, 30, 26, 28, 30, 30, 255, 255, 255, 255, 255, 255, 255, 255, 32.17132 + 255, 255, 24, 18, 24, 15, 15, 24, 11, 11, 13, 10, 19, 12, 15, 29, 32.17133 + 27, 36, 27, 44, 20, 35, 28, 32, 34, 21, 18, 40, 38, 41, 34, 26, 32.17134 + 28, 37, 71, 114, 86, 132, 130, 161, 162, 159, 166, 163, 157, 152, 147, 145, 32.17135 + 148, 154, 161, 162, 161, 160, 161, 161, 162, 162, 163, 161, 159, 160, 164, 165, 32.17136 + 165, 163, 161, 158, 156, 156, 157, 158, 159, 157, 161, 162, 165, 165, 165, 164, 32.17137 + 164, 164, 164, 165, 165, 163, 161, 161, 163, 165, 161, 161, 159, 155, 150, 146, 32.17138 + 144, 143, 144, 140, 138, 137, 140, 138, 138, 136, 133, 127, 115, 124, 118, 115, 32.17139 + 110, 48, 30, 30, 29, 29, 32, 37, 39, 35, 19, 255, 255, 255, 255, 255, 32.17140 + 255, 255, 255, 255, 255, 25, 11, 17, 13, 12, 24, 17, 14, 13, 12, 20, 32.17141 + 9, 14, 31, 26, 28, 43, 29, 6, 33, 32, 42, 38, 26, 23, 53, 44, 32.17142 + 32, 55, 33, 41, 23, 70, 134, 81, 134, 126, 161, 166, 162, 167, 164, 160, 32.17143 + 158, 155, 151, 149, 152, 161, 161, 160, 159, 161, 161, 161, 162, 165, 163, 163, 32.17144 + 163, 165, 167, 167, 165, 164, 160, 158, 156, 157, 159, 159, 159, 163, 163, 165, 32.17145 + 165, 165, 166, 167, 167, 164, 165, 165, 163, 162, 162, 165, 167, 164, 165, 164, 32.17146 + 159, 152, 148, 149, 152, 142, 140, 137, 139, 140, 142, 142, 139, 136, 135, 115, 32.17147 + 131, 119, 114, 127, 59, 32, 33, 27, 21, 24, 34, 35, 27, 33, 255, 255, 32.17148 + 255, 255, 255, 255, 255, 255, 255, 203, 22, 13, 10, 14, 18, 16, 13, 12, 32.17149 + 12, 13, 16, 19, 24, 27, 30, 32, 38, 42, 37, 17, 59, 23, 26, 28, 32.17150 + 33, 32, 26, 42, 41, 24, 27, 28, 86, 114, 125, 112, 132, 156, 150, 164, 32.17151 + 166, 166, 163, 158, 153, 152, 157, 162, 167, 167, 163, 158, 159, 164, 165, 162, 32.17152 + 157, 158, 162, 164, 165, 166, 166, 166, 169, 164, 159, 160, 164, 168, 166, 165, 32.17153 + 156, 159, 163, 166, 167, 166, 165, 162, 165, 163, 164, 166, 165, 161, 162, 167, 32.17154 + 162, 162, 161, 160, 157, 154, 151, 149, 145, 143, 140, 141, 143, 144, 145, 142, 32.17155 + 142, 132, 125, 125, 124, 121, 119, 115, 31, 21, 27, 27, 21, 38, 47, 24, 32.17156 + 35, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 20, 11, 9, 13, 19, 32.17157 + 17, 14, 13, 12, 12, 11, 12, 16, 21, 25, 30, 40, 46, 29, 25, 43, 32.17158 + 36, 24, 19, 25, 26, 20, 34, 32, 17, 23, 26, 79, 108, 121, 104, 119, 32.17159 + 147, 148, 161, 162, 163, 163, 159, 155, 155, 158, 163, 165, 165, 162, 158, 160, 32.17160 + 166, 167, 165, 167, 166, 166, 166, 165, 165, 164, 164, 167, 164, 161, 162, 166, 32.17161 + 168, 168, 165, 158, 160, 164, 166, 166, 165, 164, 161, 164, 163, 164, 166, 165, 32.17162 + 161, 162, 167, 162, 162, 161, 160, 157, 154, 151, 150, 150, 147, 144, 143, 144, 32.17163 + 145, 144, 141, 147, 136, 129, 127, 126, 120, 118, 112, 105, 26, 12, 12, 25, 32.17164 + 22, 29, 43, 35, 255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 18, 11, 32.17165 + 10, 15, 21, 18, 16, 15, 15, 13, 12, 12, 14, 19, 25, 31, 39, 45, 32.17166 + 24, 31, 25, 52, 28, 15, 23, 26, 19, 29, 26, 13, 23, 29, 73, 105, 32.17167 + 122, 103, 114, 147, 153, 165, 159, 161, 163, 161, 158, 157, 159, 163, 163, 163, 32.17168 + 161, 159, 162, 168, 170, 168, 172, 171, 169, 167, 166, 166, 167, 167, 168, 166, 32.17169 + 164, 166, 170, 171, 170, 167, 161, 162, 165, 166, 166, 164, 162, 160, 165, 163, 32.17170 + 164, 167, 165, 162, 163, 167, 163, 163, 162, 160, 157, 155, 152, 151, 153, 150, 32.17171 + 147, 145, 145, 146, 144, 141, 149, 138, 131, 128, 128, 121, 118, 112, 119, 22, 32.17172 + 5, 13, 32, 16, 16, 43, 35, 255, 255, 255, 255, 255, 255, 255, 255, 183, 32.17173 + 20, 18, 11, 11, 16, 19, 16, 13, 13, 18, 17, 17, 17, 20, 25, 30, 32.17174 + 35, 31, 39, 35, 31, 21, 58, 41, 21, 24, 29, 21, 27, 21, 10, 24, 32.17175 + 30, 58, 91, 116, 105, 115, 148, 155, 162, 159, 162, 164, 163, 160, 158, 158, 32.17176 + 161, 163, 164, 163, 160, 163, 170, 171, 168, 171, 170, 168, 166, 166, 168, 170, 32.17177 + 172, 170, 169, 169, 171, 174, 174, 173, 170, 165, 166, 167, 167, 166, 164, 161, 32.17178 + 160, 165, 164, 165, 167, 165, 162, 163, 167, 165, 164, 162, 160, 158, 155, 153, 32.17179 + 152, 153, 150, 147, 146, 146, 147, 146, 143, 146, 136, 131, 130, 130, 126, 122, 32.17180 + 118, 90, 47, 13, 25, 23, 18, 24, 31, 35, 255, 255, 255, 255, 255, 255, 32.17181 + 255, 255, 22, 15, 17, 13, 13, 16, 16, 12, 10, 11, 15, 15, 17, 20, 32.17182 + 25, 29, 32, 34, 25, 31, 55, 21, 24, 46, 46, 26, 24, 29, 20, 22, 32.17183 + 16, 7, 22, 27, 42, 68, 102, 104, 115, 148, 153, 153, 161, 164, 166, 165, 32.17184 + 160, 157, 157, 159, 165, 166, 165, 163, 165, 170, 171, 168, 173, 172, 170, 169, 32.17185 + 169, 170, 173, 174, 171, 171, 171, 173, 174, 173, 172, 170, 169, 169, 169, 168, 32.17186 + 167, 165, 163, 161, 166, 164, 165, 168, 166, 162, 163, 168, 166, 165, 163, 160, 32.17187 + 158, 156, 154, 153, 150, 147, 145, 145, 147, 149, 148, 146, 148, 138, 133, 134, 32.17188 + 133, 127, 123, 119, 104, 100, 20, 33, 11, 22, 36, 27, 34, 255, 255, 255, 32.17189 + 255, 255, 255, 255, 255, 22, 17, 17, 12, 12, 14, 13, 10, 10, 13, 10, 32.17190 + 11, 14, 16, 21, 24, 26, 27, 23, 30, 72, 11, 31, 32, 40, 30, 29, 32.17191 + 34, 22, 23, 19, 14, 27, 30, 42, 51, 87, 101, 118, 148, 155, 152, 162, 32.17192 + 165, 167, 165, 160, 157, 157, 159, 166, 167, 166, 164, 167, 172, 172, 168, 179, 32.17193 + 178, 176, 174, 173, 173, 174, 174, 171, 171, 171, 172, 172, 172, 172, 171, 172, 32.17194 + 172, 171, 170, 169, 167, 165, 164, 166, 164, 165, 168, 166, 163, 164, 168, 167, 32.17195 + 166, 163, 161, 158, 156, 155, 155, 151, 149, 147, 147, 150, 152, 151, 151, 153, 32.17196 + 145, 138, 137, 135, 129, 122, 116, 117, 113, 31, 43, 30, 35, 37, 22, 30, 32.17197 + 255, 255, 255, 255, 255, 255, 255, 196, 25, 22, 15, 11, 10, 12, 13, 12, 32.17198 + 15, 20, 16, 16, 17, 17, 18, 21, 24, 25, 21, 33, 76, 8, 37, 31, 32.17199 + 34, 40, 31, 35, 23, 25, 26, 24, 37, 36, 56, 45, 73, 96, 117, 148, 32.17200 + 157, 156, 161, 164, 166, 164, 160, 158, 159, 162, 163, 166, 166, 165, 169, 174, 32.17201 + 175, 171, 177, 177, 177, 176, 176, 175, 175, 175, 172, 172, 172, 172, 173, 173, 32.17202 + 175, 176, 172, 172, 173, 172, 170, 169, 167, 167, 166, 165, 166, 168, 167, 163, 32.17203 + 164, 169, 168, 167, 164, 161, 158, 157, 156, 156, 154, 152, 151, 150, 152, 153, 32.17204 + 153, 153, 154, 146, 140, 139, 136, 130, 122, 119, 107, 102, 76, 42, 48, 49, 32.17205 + 31, 19, 29, 255, 255, 255, 255, 255, 255, 255, 47, 20, 19, 14, 10, 9, 32.17206 + 12, 14, 14, 20, 27, 27, 24, 22, 20, 20, 22, 26, 29, 22, 38, 74, 32.17207 + 13, 44, 42, 34, 52, 26, 30, 18, 22, 25, 25, 40, 35, 66, 38, 57, 32.17208 + 84, 108, 140, 152, 154, 159, 162, 165, 163, 159, 159, 162, 165, 161, 164, 165, 32.17209 + 165, 170, 176, 178, 174, 170, 171, 172, 174, 176, 176, 177, 177, 177, 177, 177, 32.17210 + 175, 176, 177, 180, 182, 174, 173, 174, 173, 172, 170, 169, 169, 166, 165, 166, 32.17211 + 168, 167, 163, 164, 169, 169, 167, 164, 161, 158, 157, 156, 156, 159, 156, 155, 32.17212 + 154, 154, 154, 154, 153, 151, 144, 138, 139, 138, 132, 128, 124, 108, 108, 133, 32.17213 + 28, 43, 50, 29, 26, 28, 255, 255, 255, 255, 255, 255, 255, 28, 30, 22, 32.17214 + 19, 14, 12, 15, 18, 17, 17, 19, 28, 30, 34, 40, 21, 14, 32, 16, 32.17215 + 39, 43, 32, 38, 31, 37, 69, 48, 35, 38, 28, 35, 27, 42, 36, 36, 32.17216 + 41, 43, 44, 67, 109, 148, 126, 153, 158, 161, 164, 163, 159, 158, 160, 162, 32.17217 + 164, 165, 166, 167, 168, 172, 177, 181, 176, 177, 175, 174, 176, 180, 177, 171, 32.17218 + 179, 180, 180, 179, 177, 175, 178, 179, 176, 174, 173, 172, 173, 171, 167, 164, 32.17219 + 168, 168, 167, 165, 163, 163, 165, 168, 168, 170, 170, 164, 157, 153, 155, 159, 32.17220 + 159, 155, 153, 152, 155, 155, 155, 154, 151, 147, 141, 139, 139, 134, 129, 123, 32.17221 + 117, 116, 117, 39, 47, 47, 21, 32, 26, 255, 255, 255, 255, 255, 255, 255, 32.17222 + 29, 32, 23, 22, 17, 15, 19, 21, 19, 19, 21, 25, 36, 26, 46, 16, 32.17223 + 31, 35, 24, 36, 39, 58, 58, 39, 37, 52, 74, 27, 38, 35, 46, 37, 32.17224 + 47, 33, 29, 36, 46, 60, 65, 74, 133, 140, 149, 158, 161, 164, 163, 159, 32.17225 + 158, 160, 162, 164, 165, 166, 167, 168, 172, 177, 181, 179, 180, 179, 177, 180, 32.17226 + 183, 181, 175, 180, 181, 182, 180, 177, 175, 177, 178, 180, 178, 177, 176, 177, 32.17227 + 174, 170, 167, 167, 168, 167, 165, 164, 164, 166, 169, 166, 168, 170, 167, 162, 32.17228 + 158, 158, 157, 158, 156, 153, 152, 155, 156, 155, 154, 153, 148, 145, 141, 140, 32.17229 + 136, 131, 125, 118, 118, 120, 57, 44, 50, 26, 35, 21, 255, 255, 255, 255, 32.17230 + 255, 255, 255, 30, 34, 26, 24, 18, 18, 22, 23, 20, 21, 23, 25, 39, 32.17231 + 29, 41, 24, 39, 46, 28, 41, 39, 70, 64, 51, 46, 41, 91, 48, 54, 32.17232 + 45, 53, 47, 64, 59, 61, 36, 52, 75, 63, 42, 114, 150, 148, 158, 161, 32.17233 + 164, 163, 161, 160, 162, 164, 164, 165, 166, 167, 168, 171, 176, 180, 180, 182, 32.17234 + 182, 180, 181, 185, 183, 178, 181, 182, 182, 180, 178, 176, 176, 177, 183, 181, 32.17235 + 180, 179, 177, 174, 169, 166, 167, 167, 167, 166, 164, 165, 168, 170, 166, 167, 32.17236 + 169, 169, 167, 164, 160, 157, 158, 154, 153, 152, 154, 154, 156, 155, 156, 151, 32.17237 + 147, 143, 141, 137, 131, 126, 121, 118, 120, 83, 39, 53, 31, 35, 41, 255, 32.17238 + 255, 255, 255, 255, 255, 73, 31, 35, 28, 24, 18, 18, 22, 23, 19, 19, 32.17239 + 20, 27, 37, 36, 29, 38, 40, 56, 34, 46, 45, 53, 53, 60, 55, 44, 32.17240 + 80, 54, 55, 40, 46, 43, 62, 58, 58, 41, 55, 65, 62, 44, 99, 138, 32.17241 + 154, 158, 161, 164, 163, 161, 160, 162, 164, 164, 165, 166, 166, 167, 171, 176, 32.17242 + 179, 179, 182, 182, 180, 181, 184, 183, 179, 180, 181, 182, 181, 179, 178, 179, 32.17243 + 180, 182, 181, 180, 179, 177, 174, 169, 165, 167, 168, 168, 167, 165, 166, 169, 32.17244 + 171, 171, 169, 167, 166, 166, 164, 161, 156, 159, 154, 153, 152, 154, 156, 157, 32.17245 + 157, 159, 155, 150, 146, 144, 140, 134, 127, 124, 119, 121, 106, 36, 51, 32, 32.17246 + 33, 40, 255, 255, 255, 255, 255, 255, 53, 33, 33, 30, 28, 22, 21, 24, 32.17247 + 27, 23, 20, 20, 23, 39, 26, 32, 40, 54, 59, 48, 34, 52, 39, 50, 32.17248 + 66, 53, 52, 56, 55, 58, 51, 63, 61, 74, 58, 48, 50, 56, 41, 60, 32.17249 + 68, 89, 111, 158, 156, 161, 164, 163, 161, 160, 162, 164, 164, 165, 166, 166, 32.17250 + 167, 170, 175, 178, 179, 183, 184, 182, 182, 185, 185, 182, 179, 180, 182, 181, 32.17251 + 180, 180, 182, 184, 181, 180, 181, 180, 180, 176, 171, 166, 169, 169, 169, 168, 32.17252 + 166, 166, 169, 171, 176, 172, 167, 163, 161, 161, 160, 157, 157, 153, 152, 153, 32.17253 + 155, 157, 159, 158, 160, 156, 151, 147, 145, 141, 136, 131, 127, 123, 120, 122, 32.17254 + 38, 48, 31, 31, 47, 255, 255, 255, 255, 255, 255, 41, 35, 28, 30, 32, 32.17255 + 26, 25, 29, 31, 26, 22, 22, 16, 41, 11, 44, 38, 67, 59, 68, 20, 32.17256 + 50, 45, 65, 70, 51, 58, 45, 60, 69, 66, 83, 83, 104, 97, 95, 61, 32.17257 + 59, 28, 59, 78, 81, 99, 155, 156, 160, 164, 163, 161, 160, 162, 164, 164, 32.17258 + 165, 166, 166, 166, 169, 174, 177, 181, 186, 188, 186, 185, 188, 188, 187, 180, 32.17259 + 181, 183, 182, 181, 181, 183, 185, 182, 181, 183, 184, 184, 180, 175, 170, 171, 32.17260 + 171, 171, 169, 167, 166, 169, 171, 177, 174, 168, 163, 159, 158, 160, 159, 157, 32.17261 + 154, 152, 152, 155, 158, 160, 159, 160, 156, 151, 147, 147, 143, 137, 132, 129, 32.17262 + 126, 118, 125, 46, 43, 30, 33, 33, 255, 255, 255, 255, 255, 255, 35, 37, 32.17263 + 23, 31, 34, 28, 27, 30, 32, 27, 23, 22, 23, 36, 25, 37, 58, 55, 32.17264 + 66, 77, 41, 41, 54, 76, 75, 60, 60, 58, 47, 64, 67, 83, 78, 103, 32.17265 + 111, 122, 76, 74, 44, 62, 62, 79, 116, 150, 156, 160, 164, 163, 161, 160, 32.17266 + 162, 164, 164, 165, 166, 165, 166, 169, 173, 177, 180, 186, 189, 186, 185, 187, 32.17267 + 189, 188, 184, 184, 185, 184, 181, 180, 181, 183, 180, 180, 183, 184, 184, 181, 32.17268 + 175, 172, 173, 173, 172, 169, 167, 166, 168, 170, 174, 174, 172, 167, 161, 159, 32.17269 + 161, 163, 157, 154, 153, 152, 156, 158, 159, 158, 158, 155, 150, 147, 147, 144, 32.17270 + 138, 134, 128, 127, 118, 123, 57, 41, 33, 38, 47, 255, 255, 255, 255, 255, 32.17271 + 255, 33, 38, 21, 33, 33, 28, 28, 31, 31, 25, 21, 20, 37, 27, 51, 32.17272 + 17, 88, 30, 76, 75, 75, 33, 55, 75, 77, 78, 64, 73, 40, 69, 87, 32.17273 + 100, 84, 94, 98, 109, 89, 91, 68, 71, 42, 82, 141, 146, 156, 160, 163, 32.17274 + 162, 159, 158, 160, 164, 166, 167, 168, 167, 168, 170, 175, 176, 179, 183, 187, 32.17275 + 184, 182, 185, 187, 185, 187, 187, 188, 185, 181, 179, 179, 180, 176, 177, 180, 32.17276 + 182, 182, 179, 174, 170, 175, 175, 173, 170, 167, 166, 167, 169, 169, 173, 175, 32.17277 + 171, 165, 161, 164, 165, 160, 157, 155, 155, 157, 159, 159, 159, 157, 154, 150, 32.17278 + 149, 147, 145, 139, 135, 127, 127, 116, 120, 69, 42, 37, 44, 49, 255, 255, 32.17279 + 255, 255, 255, 144, 65, 29, 38, 42, 41, 32, 23, 21, 30, 36, 31, 21, 32.17280 + 28, 38, 38, 35, 59, 64, 52, 84, 52, 64, 44, 84, 71, 55, 64, 72, 32.17281 + 81, 47, 92, 78, 76, 96, 118, 106, 81, 92, 129, 86, 64, 88, 145, 146, 32.17282 + 157, 157, 157, 160, 158, 155, 158, 166, 172, 171, 170, 170, 171, 172, 174, 174, 32.17283 + 181, 180, 182, 184, 186, 188, 188, 188, 186, 182, 180, 179, 180, 181, 181, 180, 32.17284 + 172, 174, 178, 181, 181, 179, 177, 175, 175, 174, 175, 177, 173, 167, 166, 169, 32.17285 + 170, 172, 169, 164, 162, 164, 164, 162, 161, 159, 158, 158, 159, 160, 159, 158, 32.17286 + 160, 157, 155, 154, 151, 146, 140, 134, 123, 123, 121, 111, 90, 37, 43, 46, 32.17287 + 40, 255, 255, 255, 255, 255, 138, 88, 34, 35, 40, 38, 36, 33, 28, 29, 32.17288 + 31, 29, 24, 35, 41, 40, 33, 53, 58, 53, 86, 58, 72, 56, 70, 82, 32.17289 + 61, 76, 67, 82, 52, 86, 83, 81, 95, 121, 101, 95, 101, 116, 76, 71, 32.17290 + 99, 147, 151, 157, 156, 158, 159, 158, 155, 159, 167, 171, 172, 172, 172, 173, 32.17291 + 175, 175, 176, 179, 180, 181, 184, 186, 187, 186, 187, 182, 180, 180, 180, 181, 32.17292 + 180, 178, 175, 173, 174, 178, 179, 178, 177, 175, 174, 172, 171, 172, 175, 173, 32.17293 + 168, 167, 171, 173, 174, 172, 166, 164, 166, 166, 163, 164, 163, 159, 159, 159, 32.17294 + 160, 158, 157, 158, 157, 153, 151, 150, 146, 141, 137, 130, 124, 121, 110, 92, 32.17295 + 41, 51, 54, 46, 255, 255, 255, 255, 255, 128, 116, 35, 28, 36, 33, 38, 32.17296 + 41, 35, 28, 26, 26, 25, 35, 39, 40, 32, 46, 54, 55, 91, 57, 79, 32.17297 + 65, 58, 92, 70, 85, 64, 80, 60, 80, 94, 87, 91, 124, 98, 106, 110, 32.17298 + 97, 67, 87, 116, 150, 157, 157, 157, 159, 160, 159, 156, 160, 167, 169, 171, 32.17299 + 171, 171, 173, 175, 175, 177, 176, 178, 181, 184, 184, 185, 185, 184, 184, 184, 32.17300 + 186, 187, 187, 184, 182, 178, 177, 177, 178, 177, 176, 174, 173, 172, 172, 171, 32.17301 + 172, 174, 171, 166, 165, 169, 173, 174, 172, 166, 164, 165, 165, 162, 164, 162, 32.17302 + 159, 159, 159, 159, 157, 155, 156, 154, 150, 149, 147, 144, 141, 138, 131, 122, 32.17303 + 113, 103, 90, 43, 53, 53, 51, 255, 255, 255, 255, 255, 120, 129, 33, 24, 32.17304 + 34, 31, 40, 44, 38, 30, 27, 27, 26, 25, 30, 41, 36, 45, 54, 58, 32.17305 + 88, 50, 79, 63, 65, 96, 78, 86, 69, 76, 66, 80, 107, 90, 85, 124, 32.17306 + 100, 101, 114, 88, 78, 114, 134, 152, 161, 158, 158, 161, 162, 161, 157, 160, 32.17307 + 168, 168, 170, 170, 171, 173, 175, 176, 178, 177, 178, 181, 184, 184, 184, 184, 32.17308 + 183, 187, 187, 186, 187, 187, 185, 182, 179, 179, 178, 177, 175, 173, 171, 170, 32.17309 + 171, 178, 175, 174, 174, 170, 163, 162, 165, 171, 172, 169, 163, 161, 163, 163, 32.17310 + 160, 163, 160, 158, 158, 159, 159, 158, 156, 155, 151, 149, 148, 147, 145, 142, 32.17311 + 140, 130, 119, 111, 103, 92, 47, 53, 51, 54, 255, 255, 255, 255, 255, 119, 32.17312 + 115, 28, 23, 32, 34, 39, 41, 36, 34, 31, 29, 26, 17, 22, 43, 43, 32.17313 + 47, 53, 53, 76, 45, 75, 57, 85, 94, 85, 87, 81, 73, 68, 84, 118, 32.17314 + 90, 84, 121, 107, 88, 116, 92, 105, 142, 148, 153, 164, 159, 160, 164, 166, 32.17315 + 164, 159, 161, 168, 168, 169, 169, 170, 170, 173, 175, 177, 178, 179, 180, 182, 32.17316 + 183, 184, 184, 184, 185, 184, 182, 181, 181, 181, 180, 179, 180, 179, 179, 177, 32.17317 + 174, 172, 170, 169, 179, 176, 174, 174, 169, 163, 162, 166, 169, 170, 168, 162, 32.17318 + 161, 163, 163, 161, 160, 158, 157, 157, 158, 159, 159, 158, 153, 151, 150, 149, 32.17319 + 148, 147, 144, 141, 130, 120, 115, 110, 101, 55, 57, 51, 54, 255, 255, 255, 32.17320 + 255, 255, 130, 81, 23, 24, 28, 37, 39, 37, 32, 33, 37, 36, 32, 20, 32.17321 + 21, 45, 49, 48, 53, 49, 62, 45, 68, 55, 94, 86, 89, 96, 85, 76, 32.17322 + 64, 87, 123, 90, 90, 116, 113, 85, 120, 100, 131, 157, 154, 155, 162, 160, 32.17323 + 160, 165, 168, 166, 161, 162, 169, 168, 170, 170, 170, 170, 172, 174, 175, 179, 32.17324 + 179, 178, 179, 180, 182, 183, 183, 187, 184, 181, 180, 181, 182, 183, 182, 179, 32.17325 + 178, 179, 178, 175, 172, 170, 169, 173, 171, 170, 171, 168, 164, 165, 170, 169, 32.17326 + 171, 169, 164, 163, 166, 167, 165, 160, 159, 157, 157, 157, 158, 158, 157, 152, 32.17327 + 151, 150, 150, 150, 147, 143, 139, 125, 119, 116, 113, 104, 54, 55, 49, 48, 32.17328 + 255, 255, 255, 255, 255, 147, 40, 17, 23, 22, 37, 39, 35, 31, 32, 37, 32.17329 + 41, 41, 29, 22, 44, 48, 45, 53, 52, 60, 49, 59, 56, 79, 74, 85, 32.17330 + 111, 73, 83, 57, 86, 122, 91, 103, 111, 117, 96, 128, 104, 145, 158, 150, 32.17331 + 156, 160, 160, 161, 166, 169, 167, 162, 164, 169, 169, 169, 168, 168, 169, 171, 32.17332 + 172, 173, 178, 175, 175, 174, 175, 177, 179, 182, 187, 186, 185, 185, 188, 188, 32.17333 + 187, 185, 179, 180, 181, 180, 178, 174, 171, 168, 169, 167, 166, 167, 165, 162, 32.17334 + 164, 169, 166, 168, 167, 163, 163, 167, 168, 166, 163, 160, 157, 156, 156, 156, 32.17335 + 153, 151, 150, 150, 150, 151, 148, 144, 138, 133, 122, 117, 117, 112, 101, 49, 32.17336 + 51, 47, 40, 255, 255, 255, 255, 143, 161, 15, 15, 26, 17, 36, 39, 38, 32.17337 + 30, 29, 35, 45, 49, 34, 23, 41, 44, 43, 55, 58, 66, 52, 51, 58, 32.17338 + 57, 64, 79, 122, 58, 90, 52, 84, 120, 92, 114, 108, 117, 110, 133, 104, 32.17339 + 148, 153, 146, 157, 159, 161, 162, 167, 170, 168, 163, 164, 169, 170, 169, 168, 32.17340 + 168, 169, 169, 171, 172, 175, 174, 172, 171, 171, 174, 177, 180, 179, 182, 183, 32.17341 + 186, 189, 188, 185, 182, 178, 179, 182, 181, 179, 175, 171, 168, 170, 167, 165, 32.17342 + 165, 162, 158, 159, 164, 163, 165, 164, 160, 161, 165, 167, 165, 166, 163, 159, 32.17343 + 157, 156, 152, 150, 148, 148, 148, 150, 151, 148, 143, 135, 130, 126, 122, 121, 32.17344 + 115, 102, 50, 54, 52, 108, 255, 255, 255, 255, 146, 145, 18, 25, 23, 23, 32.17345 + 32, 47, 39, 30, 44, 46, 44, 51, 33, 52, 54, 45, 50, 58, 61, 66, 32.17346 + 37, 62, 35, 70, 53, 90, 99, 83, 78, 70, 74, 114, 98, 87, 128, 102, 32.17347 + 112, 132, 85, 169, 150, 156, 157, 160, 167, 166, 166, 166, 167, 167, 166, 164, 32.17348 + 169, 169, 169, 170, 171, 171, 171, 169, 170, 169, 168, 167, 169, 173, 179, 182, 32.17349 + 188, 178, 180, 183, 180, 183, 184, 174, 175, 175, 179, 180, 181, 178, 173, 169, 32.17350 + 163, 164, 166, 167, 166, 164, 162, 160, 160, 164, 164, 162, 163, 166, 165, 162, 32.17351 + 167, 163, 158, 157, 155, 153, 149, 144, 148, 148, 147, 144, 147, 147, 139, 128, 32.17352 + 118, 122, 118, 114, 110, 19, 41, 38, 255, 255, 255, 255, 219, 140, 140, 24, 32.17353 + 32, 29, 29, 41, 49, 49, 46, 47, 45, 43, 50, 44, 53, 46, 42, 59, 32.17354 + 68, 62, 55, 47, 61, 32, 75, 68, 80, 100, 84, 75, 72, 74, 114, 108, 32.17355 + 94, 127, 113, 107, 125, 99, 162, 150, 159, 157, 161, 169, 168, 168, 168, 169, 32.17356 + 168, 167, 168, 166, 168, 169, 170, 171, 171, 169, 168, 169, 166, 164, 167, 173, 32.17357 + 178, 178, 177, 187, 178, 180, 183, 182, 184, 185, 176, 170, 171, 173, 177, 179, 32.17358 + 177, 173, 170, 166, 167, 167, 168, 166, 164, 162, 160, 159, 163, 163, 161, 161, 32.17359 + 164, 164, 161, 166, 162, 158, 157, 155, 154, 149, 145, 146, 147, 144, 142, 144, 32.17360 + 145, 138, 128, 122, 122, 118, 114, 93, 19, 36, 27, 255, 255, 255, 255, 147, 32.17361 + 142, 141, 35, 41, 37, 36, 46, 38, 43, 48, 42, 41, 53, 63, 37, 55, 32.17362 + 57, 49, 54, 57, 60, 67, 52, 56, 28, 72, 78, 59, 95, 76, 68, 70, 32.17363 + 67, 104, 111, 91, 110, 113, 100, 116, 122, 153, 152, 164, 157, 162, 170, 170, 32.17364 + 170, 170, 171, 171, 170, 170, 166, 167, 169, 170, 168, 167, 166, 165, 163, 161, 32.17365 + 161, 168, 176, 180, 177, 172, 182, 175, 178, 183, 181, 183, 184, 177, 178, 177, 32.17366 + 177, 178, 177, 174, 169, 167, 170, 170, 170, 169, 166, 163, 160, 158, 159, 161, 32.17367 + 161, 158, 159, 162, 163, 161, 162, 158, 155, 154, 156, 156, 151, 148, 144, 146, 32.17368 + 145, 142, 141, 141, 136, 129, 126, 122, 117, 114, 73, 20, 33, 13, 255, 255, 32.17369 + 255, 217, 150, 146, 140, 47, 44, 38, 40, 64, 41, 46, 57, 40, 30, 38, 32.17370 + 42, 33, 54, 60, 51, 49, 52, 64, 82, 48, 55, 35, 68, 80, 45, 97, 32.17371 + 73, 67, 72, 64, 92, 110, 89, 95, 111, 96, 110, 144, 146, 152, 167, 157, 32.17372 + 163, 169, 171, 172, 170, 170, 169, 169, 169, 168, 168, 169, 169, 166, 164, 162, 32.17373 + 161, 159, 160, 164, 170, 175, 176, 173, 169, 174, 168, 175, 180, 179, 183, 185, 32.17374 + 179, 181, 179, 180, 180, 179, 176, 172, 168, 173, 172, 171, 169, 166, 162, 159, 32.17375 + 157, 159, 161, 160, 156, 156, 161, 163, 161, 161, 157, 154, 155, 157, 157, 154, 32.17376 + 151, 147, 149, 148, 144, 142, 142, 137, 130, 127, 120, 117, 115, 62, 28, 36, 32.17377 + 13, 255, 255, 255, 143, 152, 151, 141, 61, 52, 45, 46, 57, 31, 36, 52, 32.17378 + 42, 34, 40, 42, 47, 51, 43, 40, 55, 65, 72, 81, 41, 55, 49, 66, 32.17379 + 79, 49, 105, 83, 69, 78, 71, 90, 114, 100, 98, 119, 98, 113, 160, 147, 32.17380 + 153, 167, 158, 166, 168, 169, 171, 169, 167, 165, 166, 167, 171, 170, 167, 165, 32.17381 + 162, 160, 157, 156, 163, 167, 169, 169, 164, 160, 159, 159, 166, 160, 170, 175, 32.17382 + 176, 181, 186, 181, 176, 177, 179, 181, 183, 183, 181, 178, 175, 175, 173, 170, 32.17383 + 166, 162, 159, 157, 160, 162, 160, 155, 156, 161, 164, 163, 161, 158, 155, 156, 32.17384 + 158, 159, 156, 151, 147, 149, 148, 145, 146, 147, 142, 133, 126, 118, 120, 115, 32.17385 + 66, 43, 47, 27, 255, 255, 255, 150, 157, 155, 147, 88, 85, 79, 78, 79, 32.17386 + 51, 35, 34, 28, 27, 46, 62, 51, 54, 48, 43, 53, 60, 69, 84, 39, 32.17387 + 45, 51, 59, 70, 54, 97, 87, 62, 74, 76, 90, 115, 114, 108, 121, 107, 32.17388 + 124, 162, 152, 152, 164, 158, 165, 166, 168, 170, 167, 165, 162, 163, 165, 171, 32.17389 + 169, 164, 161, 159, 158, 157, 157, 171, 173, 170, 161, 149, 142, 142, 144, 156, 32.17390 + 152, 159, 166, 164, 171, 180, 176, 183, 185, 187, 189, 190, 188, 183, 179, 179, 32.17391 + 179, 176, 172, 168, 164, 162, 160, 163, 164, 161, 156, 156, 162, 166, 165, 163, 32.17392 + 160, 158, 158, 160, 161, 157, 154, 146, 147, 145, 145, 148, 150, 142, 128, 117, 32.17393 + 108, 119, 109, 79, 52, 54, 44, 255, 255, 218, 157, 153, 146, 147, 119, 130, 32.17394 + 127, 122, 144, 127, 96, 68, 46, 28, 29, 50, 55, 65, 63, 55, 51, 48, 32.17395 + 57, 78, 57, 37, 46, 56, 62, 53, 70, 79, 51, 66, 82, 92, 113, 123, 32.17396 + 111, 110, 117, 137, 158, 159, 150, 159, 157, 165, 165, 168, 170, 167, 164, 161, 32.17397 + 163, 165, 168, 163, 160, 157, 156, 158, 160, 162, 172, 169, 159, 147, 134, 129, 32.17398 + 132, 135, 144, 139, 145, 149, 145, 151, 161, 159, 172, 176, 180, 185, 186, 183, 32.17399 + 178, 174, 184, 184, 181, 177, 172, 169, 166, 165, 166, 167, 163, 157, 157, 164, 32.17400 + 168, 169, 166, 162, 159, 160, 162, 163, 158, 155, 152, 149, 143, 143, 146, 144, 32.17401 + 129, 110, 100, 88, 107, 91, 85, 47, 49, 49, 255, 255, 145, 153, 145, 135, 32.17402 + 141, 138, 160, 161, 154, 152, 167, 161, 141, 114, 73, 46, 56, 77, 72, 60, 32.17403 + 55, 63, 61, 54, 56, 85, 39, 48, 62, 62, 55, 48, 71, 48, 65, 88, 32.17404 + 98, 113, 128, 113, 100, 125, 148, 155, 165, 151, 158, 157, 165, 165, 168, 171, 32.17405 + 168, 164, 160, 162, 165, 165, 160, 156, 154, 154, 158, 162, 166, 167, 157, 144, 32.17406 + 133, 127, 128, 131, 133, 132, 127, 131, 134, 129, 135, 144, 143, 138, 143, 155, 32.17407 + 166, 174, 177, 174, 172, 186, 185, 184, 178, 176, 173, 170, 169, 168, 168, 164, 32.17408 + 158, 158, 165, 170, 170, 167, 163, 161, 161, 164, 164, 161, 156, 160, 154, 145, 32.17409 + 141, 142, 135, 114, 90, 84, 73, 96, 73, 84, 37, 38, 47, 255, 255, 153, 32.17410 + 156, 145, 142, 156, 162, 157, 158, 167, 164, 166, 167, 162, 152, 132, 100, 70, 32.17411 + 65, 68, 69, 70, 68, 52, 51, 65, 77, 50, 61, 58, 79, 80, 49, 85, 32.17412 + 73, 60, 81, 112, 104, 137, 114, 116, 143, 151, 157, 160, 159, 158, 158, 160, 32.17413 + 166, 169, 170, 166, 160, 158, 161, 167, 163, 161, 154, 151, 155, 159, 157, 149, 32.17414 + 152, 142, 130, 123, 121, 123, 122, 118, 123, 122, 112, 99, 100, 113, 120, 119, 32.17415 + 111, 115, 117, 124, 145, 170, 181, 177, 183, 178, 184, 165, 177, 168, 176, 168, 32.17416 + 169, 171, 168, 161, 160, 166, 174, 177, 172, 169, 168, 167, 167, 164, 165, 167, 32.17417 + 158, 145, 141, 143, 136, 122, 99, 68, 56, 65, 65, 78, 84, 42, 18, 46, 32.17418 + 255, 255, 153, 141, 148, 158, 170, 177, 175, 168, 160, 162, 169, 173, 169, 168, 32.17419 + 165, 148, 128, 93, 80, 102, 76, 88, 47, 69, 66, 66, 48, 57, 37, 65, 32.17420 + 79, 58, 78, 73, 59, 78, 100, 111, 138, 124, 131, 149, 155, 159, 161, 160, 32.17421 + 159, 160, 161, 164, 166, 167, 164, 159, 156, 159, 163, 161, 164, 161, 156, 153, 32.17422 + 148, 141, 133, 150, 138, 124, 116, 114, 118, 120, 120, 106, 108, 101, 91, 90, 32.17423 + 99, 103, 97, 93, 98, 103, 105, 111, 125, 141, 150, 169, 175, 180, 168, 166, 32.17424 + 162, 170, 170, 165, 168, 164, 158, 159, 166, 172, 173, 169, 166, 164, 165, 167, 32.17425 + 168, 167, 167, 162, 149, 140, 130, 108, 93, 78, 59, 45, 53, 53, 66, 76, 32.17426 + 41, 12, 255, 255, 220, 149, 137, 157, 172, 177, 179, 178, 168, 152, 160, 172, 32.17427 + 175, 168, 169, 182, 181, 169, 139, 111, 95, 109, 93, 93, 74, 54, 46, 47, 32.17428 + 67, 30, 52, 67, 64, 72, 69, 57, 70, 76, 117, 129, 128, 138, 154, 158, 32.17429 + 160, 161, 160, 159, 159, 160, 161, 163, 164, 162, 158, 156, 157, 160, 140, 151, 32.17430 + 158, 156, 151, 148, 144, 140, 127, 122, 118, 118, 126, 134, 139, 140, 133, 135, 32.17431 + 133, 126, 125, 128, 126, 117, 112, 106, 98, 93, 91, 89, 93, 100, 139, 157, 32.17432 + 168, 172, 160, 163, 166, 172, 169, 169, 164, 159, 163, 171, 175, 175, 169, 165, 32.17433 + 161, 162, 166, 168, 166, 162, 151, 141, 133, 115, 85, 71, 67, 59, 34, 44, 32.17434 + 43, 54, 68, 47, 16, 255, 255, 147, 141, 153, 169, 179, 180, 174, 167, 160, 32.17435 + 153, 167, 182, 183, 166, 162, 178, 182, 174, 168, 140, 109, 145, 100, 121, 80, 32.17436 + 49, 33, 49, 83, 48, 53, 53, 63, 70, 67, 58, 68, 64, 123, 121, 131, 32.17437 + 137, 157, 160, 160, 159, 158, 158, 158, 158, 160, 162, 163, 162, 158, 156, 156, 32.17438 + 157, 150, 160, 164, 154, 140, 132, 129, 129, 122, 125, 132, 145, 156, 164, 166, 32.17439 + 165, 156, 159, 158, 154, 153, 154, 149, 139, 153, 127, 110, 107, 105, 94, 81, 32.17440 + 75, 103, 131, 148, 171, 159, 172, 165, 173, 172, 169, 163, 160, 164, 172, 177, 32.17441 + 172, 173, 168, 163, 161, 165, 168, 163, 153, 137, 127, 120, 101, 74, 66, 70, 32.17442 + 69, 58, 66, 60, 56, 62, 50, 24, 255, 255, 145, 133, 164, 171, 182, 186, 32.17443 + 172, 153, 152, 161, 172, 187, 190, 174, 167, 174, 175, 168, 162, 146, 162, 154, 32.17444 + 121, 92, 88, 58, 43, 44, 70, 58, 57, 51, 61, 67, 66, 61, 71, 66, 32.17445 + 132, 119, 140, 141, 159, 159, 158, 157, 157, 157, 156, 155, 160, 162, 163, 162, 32.17446 + 160, 157, 154, 153, 150, 155, 154, 140, 128, 127, 132, 138, 155, 159, 164, 169, 32.17447 + 174, 174, 171, 168, 164, 164, 163, 160, 160, 161, 158, 152, 159, 139, 128, 130, 32.17448 + 131, 119, 106, 100, 93, 114, 125, 149, 146, 167, 163, 169, 164, 162, 157, 155, 32.17449 + 159, 166, 170, 167, 170, 168, 162, 159, 162, 166, 158, 146, 130, 114, 101, 85, 32.17450 + 70, 74, 88, 92, 107, 108, 95, 75, 61, 50, 31, 255, 255, 144, 132, 158, 32.17451 + 165, 180, 189, 173, 148, 147, 166, 167, 183, 191, 186, 178, 176, 170, 164, 158, 32.17452 + 154, 166, 160, 125, 101, 87, 64, 64, 39, 37, 52, 54, 62, 63, 60, 59, 32.17453 + 56, 68, 73, 128, 116, 146, 140, 158, 158, 157, 157, 158, 157, 155, 152, 161, 32.17454 + 162, 163, 163, 160, 156, 151, 147, 134, 135, 133, 127, 128, 140, 156, 164, 178, 32.17455 + 176, 171, 169, 166, 166, 165, 165, 174, 172, 169, 167, 167, 165, 164, 161, 146, 32.17456 + 147, 150, 149, 141, 130, 127, 130, 114, 118, 115, 123, 129, 150, 158, 164, 161, 32.17457 + 161, 157, 153, 157, 164, 167, 165, 162, 163, 158, 152, 153, 155, 148, 136, 113, 32.17458 + 92, 80, 75, 77, 98, 122, 130, 131, 130, 117, 93, 71, 60, 51, 255, 255, 32.17459 + 148, 138, 148, 165, 181, 181, 163, 147, 152, 168, 176, 187, 199, 202, 192, 176, 32.17460 + 164, 158, 165, 165, 151, 160, 131, 127, 89, 70, 70, 46, 25, 55, 44, 66, 32.17461 + 60, 49, 60, 56, 66, 81, 115, 110, 147, 136, 158, 158, 158, 159, 161, 160, 32.17462 + 156, 152, 160, 161, 162, 161, 159, 153, 147, 142, 146, 143, 137, 132, 136, 148, 32.17463 + 158, 162, 173, 173, 169, 166, 164, 167, 170, 173, 173, 169, 165, 164, 163, 160, 32.17464 + 158, 155, 147, 156, 162, 155, 145, 140, 142, 142, 140, 131, 126, 114, 127, 137, 32.17465 + 154, 157, 158, 160, 158, 154, 154, 160, 164, 167, 157, 162, 156, 145, 139, 139, 32.17466 + 131, 118, 94, 81, 81, 91, 102, 125, 145, 147, 135, 129, 122, 105, 82, 70, 32.17467 + 126, 255, 255, 151, 145, 147, 170, 182, 169, 148, 146, 158, 169, 198, 203, 214, 32.17468 + 219, 204, 177, 157, 151, 165, 165, 179, 144, 157, 112, 109, 89, 61, 56, 38, 32.17469 + 70, 35, 62, 52, 42, 68, 64, 72, 92, 111, 109, 151, 136, 159, 158, 159, 32.17470 + 161, 163, 162, 157, 152, 160, 160, 160, 160, 157, 151, 144, 137, 140, 136, 136, 32.17471 + 139, 152, 168, 177, 178, 173, 175, 177, 178, 179, 179, 180, 181, 179, 177, 173, 32.17472 + 173, 169, 165, 160, 159, 153, 159, 157, 152, 153, 159, 158, 149, 152, 143, 144, 32.17473 + 123, 137, 135, 153, 153, 151, 155, 155, 150, 148, 153, 158, 163, 157, 164, 156, 32.17474 + 139, 126, 122, 113, 98, 94, 91, 103, 118, 127, 137, 142, 135, 140, 130, 124, 32.17475 + 111, 87, 69, 255, 255, 255, 123, 148, 139, 180, 180, 173, 150, 141, 170, 169, 32.17476 + 194, 184, 176, 174, 170, 163, 161, 165, 163, 172, 166, 154, 151, 139, 116, 98, 32.17477 + 72, 54, 57, 52, 46, 68, 29, 57, 58, 45, 74, 111, 94, 123, 127, 136, 32.17478 + 148, 157, 163, 162, 160, 160, 159, 157, 161, 159, 157, 158, 159, 155, 145, 136, 32.17479 + 143, 149, 155, 152, 157, 168, 176, 175, 167, 181, 166, 172, 176, 170, 173, 174, 32.17480 + 170, 167, 169, 171, 163, 154, 157, 168, 159, 152, 150, 153, 157, 155, 157, 157, 32.17481 + 153, 157, 159, 149, 138, 134, 144, 156, 155, 154, 149, 143, 143, 149, 154, 156, 32.17482 + 147, 152, 141, 130, 127, 97, 81, 95, 120, 111, 116, 133, 140, 133, 134, 146, 32.17483 + 137, 139, 132, 103, 109, 69, 255, 255, 255, 131, 143, 146, 175, 176, 164, 150, 32.17484 + 151, 169, 170, 161, 187, 191, 172, 170, 185, 182, 154, 159, 171, 166, 155, 154, 32.17485 + 148, 134, 123, 71, 56, 75, 61, 66, 66, 33, 47, 43, 47, 80, 107, 92, 32.17486 + 126, 133, 135, 147, 153, 158, 158, 158, 160, 159, 156, 162, 160, 159, 158, 157, 32.17487 + 152, 145, 139, 143, 150, 156, 154, 156, 167, 171, 169, 185, 187, 167, 168, 171, 32.17488 + 162, 163, 155, 147, 144, 141, 142, 150, 160, 159, 154, 154, 155, 157, 155, 148, 32.17489 + 145, 155, 167, 153, 154, 155, 152, 149, 149, 154, 159, 158, 158, 154, 147, 146, 32.17490 + 150, 152, 152, 143, 153, 133, 126, 109, 107, 98, 117, 125, 131, 132, 129, 134, 32.17491 + 138, 131, 120, 129, 133, 133, 114, 117, 73, 255, 255, 255, 141, 136, 156, 166, 32.17492 + 173, 153, 148, 164, 168, 174, 179, 174, 180, 193, 193, 177, 171, 173, 160, 174, 32.17493 + 169, 156, 155, 154, 149, 148, 95, 70, 80, 45, 60, 49, 37, 49, 31, 44, 32.17494 + 81, 98, 92, 130, 140, 138, 152, 155, 156, 156, 158, 161, 159, 154, 161, 161, 32.17495 + 161, 158, 154, 150, 148, 146, 155, 163, 168, 165, 167, 174, 174, 170, 172, 163, 32.17496 + 136, 136, 150, 151, 166, 157, 162, 163, 155, 144, 144, 152, 144, 128, 134, 141, 32.17497 + 151, 156, 150, 144, 147, 153, 156, 154, 155, 158, 163, 164, 163, 161, 160, 162, 32.17498 + 159, 153, 151, 151, 149, 145, 162, 152, 128, 109, 102, 105, 107, 113, 105, 109, 32.17499 + 108, 102, 105, 115, 124, 126, 133, 132, 132, 119, 112, 68, 255, 255, 255, 151, 32.17500 + 133, 157, 159, 172, 147, 145, 171, 171, 182, 186, 195, 190, 174, 180, 199, 194, 32.17501 + 174, 161, 177, 172, 157, 153, 152, 152, 156, 124, 92, 76, 41, 49, 46, 37, 32.17502 + 50, 33, 39, 73, 89, 98, 131, 142, 145, 159, 160, 159, 157, 159, 163, 160, 32.17503 + 153, 158, 160, 162, 158, 153, 151, 154, 157, 165, 175, 179, 177, 175, 179, 176, 32.17504 + 171, 160, 148, 136, 138, 156, 155, 176, 162, 137, 139, 137, 130, 129, 137, 145, 32.17505 + 151, 132, 128, 131, 141, 150, 151, 147, 142, 156, 154, 157, 162, 167, 168, 164, 32.17506 + 160, 161, 164, 162, 158, 154, 151, 147, 141, 158, 117, 109, 103, 123, 115, 129, 32.17507 + 120, 136, 125, 123, 125, 113, 98, 110, 135, 134, 130, 125, 115, 99, 127, 255, 32.17508 + 255, 255, 153, 136, 151, 155, 169, 145, 144, 173, 175, 192, 191, 189, 178, 171, 32.17509 + 187, 209, 205, 184, 160, 174, 169, 155, 152, 150, 149, 153, 139, 115, 77, 63, 32.17510 + 57, 64, 42, 51, 44, 33, 59, 79, 107, 131, 141, 152, 157, 159, 158, 157, 32.17511 + 160, 165, 162, 156, 155, 159, 161, 159, 155, 155, 161, 166, 166, 176, 181, 176, 32.17512 + 174, 176, 171, 163, 155, 145, 148, 143, 144, 118, 130, 101, 84, 77, 81, 99, 32.17513 + 110, 113, 120, 133, 138, 128, 123, 131, 141, 148, 151, 152, 153, 153, 158, 163, 32.17514 + 165, 165, 165, 166, 169, 172, 170, 165, 160, 156, 152, 145, 160, 109, 102, 139, 32.17515 + 117, 102, 97, 101, 128, 112, 113, 128, 126, 111, 116, 133, 127, 124, 121, 116, 32.17516 + 91, 255, 255, 255, 255, 148, 144, 141, 153, 163, 147, 148, 171, 185, 198, 204, 32.17517 + 174, 166, 192, 208, 192, 180, 183, 159, 169, 161, 150, 152, 156, 153, 154, 151, 32.17518 + 129, 79, 71, 60, 72, 52, 61, 53, 32, 52, 71, 113, 131, 139, 155, 148, 32.17519 + 153, 155, 156, 160, 164, 164, 159, 156, 160, 162, 161, 158, 160, 166, 173, 167, 32.17520 + 177, 181, 176, 174, 174, 168, 159, 158, 137, 135, 110, 97, 62, 85, 55, 62, 32.17521 + 50, 67, 114, 139, 119, 86, 68, 105, 114, 128, 140, 143, 139, 141, 145, 150, 32.17522 + 151, 156, 158, 160, 163, 170, 174, 180, 182, 179, 171, 166, 163, 157, 151, 155, 32.17523 + 117, 101, 176, 80, 70, 38, 62, 83, 70, 60, 65, 85, 108, 125, 130, 127, 32.17524 + 132, 130, 123, 82, 255, 255, 255, 255, 140, 153, 133, 153, 153, 151, 155, 172, 32.17525 + 196, 197, 190, 191, 190, 189, 196, 197, 179, 154, 164, 168, 156, 147, 156, 164, 32.17526 + 161, 160, 158, 140, 98, 80, 73, 67, 60, 65, 51, 39, 61, 66, 113, 131, 32.17527 + 140, 151, 147, 154, 159, 159, 160, 162, 161, 158, 161, 163, 164, 163, 162, 164, 32.17528 + 168, 173, 171, 180, 183, 179, 176, 178, 172, 163, 170, 139, 134, 104, 97, 76, 32.17529 + 117, 95, 72, 65, 82, 128, 158, 144, 102, 72, 76, 91, 115, 138, 146, 144, 32.17530 + 142, 140, 158, 156, 156, 156, 158, 164, 173, 179, 190, 191, 185, 174, 166, 162, 32.17531 + 157, 152, 125, 86, 88, 164, 73, 65, 49, 66, 129, 112, 90, 72, 66, 76, 32.17532 + 99, 115, 129, 137, 132, 119, 67, 255, 255, 255, 255, 134, 159, 127, 151, 142, 32.17533 + 149, 158, 171, 202, 194, 196, 175, 179, 208, 211, 181, 166, 175, 172, 169, 154, 32.17534 + 145, 159, 171, 167, 163, 152, 145, 130, 107, 109, 71, 64, 54, 47, 50, 74, 32.17535 + 66, 113, 135, 144, 147, 153, 164, 169, 165, 163, 160, 160, 155, 165, 166, 166, 32.17536 + 165, 165, 166, 168, 170, 170, 179, 184, 178, 174, 174, 172, 161, 156, 130, 143, 32.17537 + 129, 136, 119, 163, 133, 124, 109, 98, 106, 123, 130, 120, 105, 84, 82, 90, 32.17538 + 113, 139, 154, 160, 161, 170, 163, 156, 154, 157, 165, 173, 177, 194, 192, 185, 32.17539 + 171, 161, 157, 152, 147, 131, 70, 96, 136, 100, 72, 83, 68, 179, 166, 157, 32.17540 + 140, 94, 53, 65, 104, 118, 128, 120, 101, 48, 255, 255, 255, 255, 146, 146, 32.17541 + 143, 142, 133, 159, 136, 192, 199, 181, 186, 177, 197, 230, 186, 177, 176, 179, 32.17542 + 172, 162, 164, 177, 184, 180, 173, 172, 153, 151, 134, 118, 117, 122, 107, 83, 32.17543 + 58, 55, 57, 70, 100, 132, 149, 154, 156, 158, 159, 159, 162, 162, 164, 164, 32.17544 + 169, 170, 170, 169, 169, 170, 172, 176, 175, 177, 177, 175, 177, 180, 180, 174, 32.17545 + 167, 162, 157, 155, 159, 161, 157, 154, 162, 157, 147, 136, 129, 129, 135, 139, 32.17546 + 127, 128, 134, 139, 138, 135, 150, 169, 172, 156, 151, 159, 162, 157, 163, 177, 32.17547 + 184, 190, 190, 177, 162, 153, 149, 146, 90, 84, 77, 77, 81, 74, 81, 102, 32.17548 + 173, 164, 149, 126, 99, 78, 74, 80, 99, 114, 131, 69, 122, 255, 255, 255, 32.17549 + 255, 147, 145, 147, 134, 140, 149, 145, 190, 198, 182, 182, 175, 192, 228, 198, 32.17550 + 194, 180, 169, 173, 164, 166, 182, 193, 187, 176, 170, 158, 152, 142, 131, 134, 32.17551 + 137, 129, 112, 87, 80, 71, 74, 95, 121, 139, 145, 156, 160, 160, 162, 163, 32.17552 + 164, 164, 164, 167, 168, 168, 167, 167, 168, 170, 173, 177, 178, 178, 175, 177, 32.17553 + 180, 178, 174, 167, 163, 160, 159, 162, 163, 162, 160, 166, 162, 156, 149, 144, 32.17554 + 142, 144, 145, 140, 141, 148, 156, 153, 148, 155, 170, 169, 156, 153, 161, 163, 32.17555 + 157, 162, 174, 179, 185, 186, 176, 163, 153, 144, 136, 89, 91, 88, 88, 91, 32.17556 + 88, 91, 106, 139, 113, 91, 95, 108, 109, 91, 74, 95, 111, 122, 58, 255, 32.17557 + 255, 255, 255, 255, 147, 146, 153, 130, 150, 142, 156, 193, 196, 182, 183, 188, 32.17558 + 207, 223, 189, 188, 190, 188, 173, 166, 171, 190, 202, 196, 179, 171, 160, 150, 32.17559 + 142, 138, 140, 139, 137, 132, 130, 125, 117, 114, 125, 141, 154, 159, 156, 159, 32.17560 + 162, 164, 165, 165, 164, 163, 167, 168, 168, 168, 167, 169, 172, 175, 179, 180, 32.17561 + 179, 176, 176, 179, 178, 173, 169, 168, 167, 166, 166, 166, 167, 167, 166, 165, 32.17562 + 162, 159, 156, 154, 153, 152, 148, 146, 150, 156, 155, 151, 155, 166, 168, 158, 32.17563 + 156, 163, 164, 157, 160, 170, 173, 179, 180, 175, 166, 155, 140, 127, 114, 127, 32.17564 + 128, 125, 130, 130, 127, 132, 131, 117, 109, 117, 128, 128, 117, 108, 98, 114, 32.17565 + 111, 51, 255, 255, 255, 255, 255, 147, 148, 156, 134, 149, 144, 154, 195, 186, 32.17566 + 181, 174, 182, 202, 209, 191, 188, 190, 182, 169, 169, 178, 199, 208, 198, 182, 32.17567 + 175, 163, 149, 141, 139, 139, 132, 133, 137, 129, 133, 136, 137, 144, 150, 154, 32.17568 + 154, 157, 160, 164, 166, 167, 165, 163, 161, 169, 170, 171, 171, 171, 172, 175, 32.17569 + 177, 181, 181, 179, 176, 176, 179, 178, 173, 173, 174, 174, 173, 171, 171, 172, 32.17570 + 173, 167, 165, 162, 161, 159, 158, 156, 155, 152, 145, 141, 142, 143, 145, 154, 32.17571 + 163, 167, 160, 160, 166, 164, 157, 158, 166, 171, 175, 176, 172, 166, 157, 141, 32.17572 + 126, 122, 141, 144, 137, 142, 146, 141, 139, 132, 133, 137, 136, 126, 116, 117, 32.17573 + 124, 112, 120, 98, 116, 255, 255, 255, 255, 255, 147, 149, 157, 148, 142, 152, 32.17574 + 147, 194, 175, 179, 177, 177, 196, 218, 242, 240, 214, 174, 166, 171, 184, 204, 32.17575 + 208, 197, 186, 184, 168, 152, 143, 142, 140, 131, 134, 141, 117, 126, 134, 139, 32.17576 + 146, 149, 149, 146, 156, 160, 163, 165, 166, 164, 161, 159, 170, 171, 173, 173, 32.17577 + 173, 174, 176, 178, 183, 183, 180, 176, 177, 180, 179, 175, 176, 177, 178, 177, 32.17578 + 174, 173, 173, 174, 170, 165, 160, 158, 158, 158, 158, 156, 155, 149, 145, 146, 32.17579 + 149, 153, 160, 165, 168, 165, 166, 169, 166, 159, 159, 165, 173, 175, 174, 170, 32.17580 + 167, 160, 146, 131, 121, 142, 144, 134, 137, 145, 142, 138, 138, 132, 129, 129, 32.17581 + 129, 126, 123, 123, 120, 118, 77, 255, 255, 255, 255, 255, 255, 148, 149, 154, 32.17582 + 161, 134, 157, 146, 184, 174, 179, 175, 175, 192, 209, 240, 239, 226, 202, 168, 32.17583 + 171, 182, 200, 206, 196, 188, 188, 167, 153, 143, 140, 139, 133, 136, 141, 131, 32.17584 + 136, 141, 143, 150, 156, 158, 157, 158, 161, 163, 164, 164, 162, 160, 159, 167, 32.17585 + 169, 171, 172, 171, 172, 174, 176, 183, 183, 180, 176, 177, 181, 181, 177, 177, 32.17586 + 177, 176, 175, 174, 172, 170, 168, 168, 163, 156, 154, 155, 158, 158, 157, 150, 32.17587 + 152, 155, 158, 161, 162, 164, 165, 172, 169, 171, 171, 166, 159, 159, 164, 171, 32.17588 + 174, 173, 169, 167, 162, 150, 139, 127, 143, 143, 134, 138, 144, 143, 143, 146, 32.17589 + 137, 132, 135, 140, 137, 135, 134, 119, 107, 58, 255, 255, 255, 255, 255, 255, 32.17590 + 148, 150, 151, 168, 130, 153, 154, 168, 184, 182, 161, 164, 175, 166, 180, 172, 32.17591 + 190, 203, 175, 169, 175, 192, 203, 200, 192, 188, 167, 155, 144, 138, 138, 136, 32.17592 + 137, 135, 134, 136, 137, 138, 146, 154, 157, 156, 158, 159, 162, 162, 161, 160, 32.17593 + 159, 158, 167, 169, 172, 172, 172, 172, 176, 178, 182, 182, 179, 176, 177, 182, 32.17594 + 182, 179, 182, 179, 176, 176, 176, 174, 170, 165, 166, 161, 156, 156, 160, 164, 32.17595 + 164, 162, 152, 158, 163, 165, 165, 166, 167, 166, 175, 175, 177, 175, 168, 162, 32.17596 + 162, 167, 168, 173, 175, 173, 170, 165, 155, 143, 121, 135, 135, 130, 135, 135, 32.17597 + 134, 137, 139, 138, 138, 137, 132, 127, 129, 132, 118, 105, 50, 255, 255, 255, 32.17598 + 255, 255, 255, 148, 149, 147, 168, 131, 146, 163, 154, 195, 184, 179, 172, 173, 32.17599 + 154, 168, 151, 165, 179, 181, 168, 167, 186, 202, 203, 193, 186, 174, 163, 151, 32.17600 + 141, 141, 141, 139, 132, 134, 136, 139, 142, 152, 158, 158, 154, 159, 159, 161, 32.17601 + 160, 159, 159, 158, 158, 169, 171, 174, 175, 175, 175, 178, 180, 184, 182, 179, 32.17602 + 175, 177, 182, 183, 180, 188, 183, 179, 179, 181, 179, 172, 167, 164, 160, 158, 32.17603 + 160, 166, 169, 169, 166, 163, 166, 169, 165, 165, 167, 173, 176, 178, 178, 179, 32.17604 + 176, 168, 162, 163, 168, 163, 170, 176, 175, 171, 165, 155, 146, 128, 138, 139, 32.17605 + 138, 142, 141, 139, 144, 145, 138, 135, 139, 140, 135, 131, 126, 123, 110, 53, 32.17606 + 255, 255, 255, 255, 255, 255, 143, 148, 147, 162, 148, 139, 150, 175, 146, 182, 32.17607 + 183, 180, 174, 169, 172, 173, 159, 141, 156, 152, 138, 174, 204, 202, 203, 178, 32.17608 + 167, 161, 150, 137, 137, 141, 144, 138, 135, 136, 138, 140, 146, 150, 154, 158, 32.17609 + 157, 160, 163, 162, 158, 156, 159, 160, 168, 169, 173, 173, 174, 176, 181, 183, 32.17610 + 185, 184, 183, 181, 181, 181, 183, 183, 179, 186, 189, 185, 183, 183, 179, 172, 32.17611 + 165, 157, 155, 156, 163, 162, 166, 167, 166, 166, 171, 172, 176, 175, 178, 176, 32.17612 + 177, 176, 176, 175, 168, 161, 163, 170, 166, 164, 167, 175, 174, 164, 155, 152, 32.17613 + 135, 123, 139, 141, 138, 148, 148, 153, 151, 147, 145, 144, 144, 139, 131, 121, 32.17614 + 112, 103, 57, 255, 255, 255, 255, 255, 255, 142, 146, 150, 152, 157, 156, 148, 32.17615 + 178, 162, 160, 171, 173, 170, 167, 174, 185, 185, 176, 150, 148, 137, 168, 195, 32.17616 + 197, 203, 188, 169, 161, 150, 137, 137, 140, 142, 137, 135, 136, 138, 140, 146, 32.17617 + 149, 153, 155, 153, 157, 161, 161, 159, 158, 160, 162, 167, 169, 172, 173, 174, 32.17618 + 176, 180, 183, 186, 184, 184, 183, 184, 184, 185, 185, 183, 189, 191, 187, 185, 32.17619 + 185, 181, 177, 175, 167, 161, 161, 163, 163, 163, 165, 167, 170, 174, 178, 181, 32.17620 + 181, 181, 181, 184, 180, 179, 174, 168, 162, 166, 172, 169, 166, 170, 175, 176, 32.17621 + 166, 159, 156, 143, 129, 142, 140, 137, 147, 148, 153, 153, 151, 149, 147, 147, 32.17622 + 142, 134, 123, 115, 105, 122, 255, 255, 255, 255, 255, 255, 255, 145, 154, 142, 32.17623 + 162, 165, 138, 171, 176, 152, 172, 176, 175, 172, 178, 192, 198, 195, 171, 169, 32.17624 + 161, 177, 189, 189, 196, 188, 171, 161, 150, 139, 138, 139, 140, 136, 134, 136, 32.17625 + 138, 141, 146, 149, 152, 153, 148, 152, 157, 159, 160, 160, 162, 162, 167, 168, 32.17626 + 172, 173, 174, 176, 180, 182, 185, 185, 187, 188, 188, 189, 189, 189, 191, 194, 32.17627 + 193, 190, 188, 187, 184, 180, 180, 172, 166, 166, 167, 165, 164, 165, 170, 173, 32.17628 + 179, 184, 187, 188, 186, 184, 190, 184, 181, 175, 170, 163, 169, 175, 171, 168, 32.17629 + 173, 176, 178, 169, 164, 160, 150, 132, 143, 142, 139, 146, 147, 154, 155, 152, 32.17630 + 152, 152, 152, 147, 138, 127, 115, 103, 255, 255, 255, 255, 255, 255, 255, 255, 32.17631 + 255, 153, 141, 156, 157, 128, 137, 161, 169, 173, 178, 176, 171, 177, 189, 193, 32.17632 + 188, 189, 189, 185, 187, 186, 182, 184, 182, 172, 161, 150, 140, 139, 138, 139, 32.17633 + 135, 134, 135, 138, 141, 145, 147, 150, 151, 147, 150, 155, 158, 160, 160, 161, 32.17634 + 161, 166, 168, 172, 173, 174, 176, 179, 182, 184, 186, 188, 190, 191, 192, 191, 32.17635 + 191, 192, 191, 188, 185, 183, 181, 177, 174, 177, 171, 166, 167, 170, 169, 168, 32.17636 + 170, 169, 174, 180, 187, 190, 190, 189, 187, 187, 183, 180, 177, 172, 167, 169, 32.17637 + 175, 169, 169, 171, 175, 176, 172, 167, 163, 151, 132, 144, 146, 143, 151, 149, 32.17638 + 155, 155, 154, 153, 153, 153, 147, 138, 127, 110, 95, 255, 255, 255, 255, 255, 32.17639 + 255, 255, 255, 255, 255, 148, 150, 149, 128, 91, 114, 170, 172, 175, 168, 162, 32.17640 + 169, 183, 190, 185, 181, 183, 189, 186, 182, 182, 179, 180, 172, 160, 149, 142, 32.17641 + 141, 138, 137, 135, 134, 135, 138, 141, 145, 146, 148, 148, 148, 149, 152, 155, 32.17642 + 158, 159, 160, 159, 167, 169, 173, 175, 176, 177, 179, 181, 184, 185, 188, 190, 32.17643 + 192, 192, 192, 192, 190, 186, 182, 181, 179, 175, 171, 169, 178, 173, 169, 172, 32.17644 + 175, 174, 173, 175, 171, 176, 182, 188, 192, 192, 191, 187, 180, 178, 177, 177, 32.17645 + 174, 168, 167, 170, 165, 167, 169, 170, 172, 171, 167, 163, 148, 129, 144, 151, 32.17646 + 151, 155, 151, 158, 157, 153, 152, 153, 152, 147, 137, 126, 111, 91, 255, 255, 32.17647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 148, 138, 55, 59, 133, 168, 32.17648 + 176, 172, 165, 169, 182, 191, 190, 180, 181, 193, 185, 181, 186, 176, 178, 171, 32.17649 + 158, 148, 143, 142, 137, 137, 137, 134, 135, 138, 141, 144, 145, 146, 146, 148, 32.17650 + 148, 149, 151, 155, 157, 160, 159, 168, 170, 176, 177, 178, 178, 179, 181, 184, 32.17651 + 185, 187, 189, 190, 191, 191, 191, 196, 190, 188, 190, 191, 186, 180, 179, 185, 32.17652 + 179, 175, 176, 178, 175, 173, 173, 173, 176, 182, 187, 190, 191, 190, 188, 179, 32.17653 + 175, 175, 177, 174, 168, 164, 166, 162, 165, 166, 166, 168, 171, 168, 163, 147, 32.17654 + 128, 143, 155, 156, 160, 154, 160, 157, 155, 151, 150, 150, 146, 137, 127, 113, 32.17655 + 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 151, 141, 41, 32.17656 + 30, 80, 127, 152, 169, 173, 174, 182, 188, 188, 190, 186, 198, 186, 185, 194, 32.17657 + 178, 179, 170, 156, 147, 144, 144, 138, 137, 138, 133, 135, 138, 141, 144, 144, 32.17658 + 145, 144, 145, 143, 145, 147, 154, 158, 163, 162, 169, 172, 178, 179, 179, 179, 32.17659 + 182, 181, 185, 185, 185, 186, 187, 188, 189, 190, 198, 192, 192, 199, 203, 199, 32.17660 + 193, 192, 191, 186, 181, 182, 182, 178, 175, 174, 175, 178, 182, 186, 188, 189, 32.17661 + 189, 189, 184, 179, 176, 176, 173, 166, 163, 164, 162, 165, 166, 165, 167, 172, 32.17662 + 170, 164, 151, 129, 143, 155, 157, 161, 156, 164, 160, 156, 152, 151, 148, 145, 32.17663 + 139, 130, 112, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17664 + 148, 137, 40, 25, 41, 54, 100, 146, 167, 174, 178, 183, 184, 189, 182, 194, 32.17665 + 181, 184, 199, 183, 184, 168, 155, 145, 144, 142, 138, 136, 139, 133, 135, 138, 32.17666 + 141, 144, 144, 144, 143, 143, 141, 142, 145, 153, 159, 163, 166, 170, 172, 178, 32.17667 + 180, 180, 180, 181, 182, 186, 185, 184, 184, 184, 186, 188, 189, 189, 184, 186, 32.17668 + 196, 203, 199, 196, 194, 193, 186, 181, 183, 184, 180, 179, 179, 178, 179, 182, 32.17669 + 185, 188, 189, 189, 189, 190, 183, 177, 174, 170, 164, 161, 162, 162, 166, 166, 32.17670 + 164, 167, 172, 172, 165, 158, 131, 143, 153, 155, 159, 155, 165, 162, 158, 153, 32.17671 + 151, 150, 145, 141, 132, 106, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17672 + 255, 255, 255, 217, 119, 23, 28, 33, 39, 62, 90, 142, 160, 181, 179, 187, 32.17673 + 193, 196, 195, 192, 191, 191, 185, 177, 164, 150, 142, 143, 141, 136, 135, 140, 32.17674 + 135, 135, 136, 138, 142, 143, 143, 142, 141, 143, 142, 144, 149, 156, 163, 167, 32.17675 + 171, 175, 180, 179, 177, 179, 183, 187, 180, 183, 184, 182, 183, 187, 187, 185, 32.17676 + 197, 189, 186, 193, 207, 215, 214, 207, 198, 184, 183, 188, 186, 184, 183, 173, 32.17677 + 173, 173, 177, 186, 196, 197, 191, 185, 188, 186, 182, 176, 167, 164, 163, 164, 32.17678 + 162, 163, 162, 162, 167, 171, 172, 167, 159, 138, 129, 148, 160, 155, 154, 160, 32.17679 + 168, 154, 154, 158, 151, 146, 140, 126, 108, 47, 255, 255, 255, 255, 255, 255, 32.17680 + 255, 255, 255, 255, 255, 255, 255, 105, 37, 18, 29, 28, 47, 63, 104, 118, 32.17681 + 144, 151, 165, 173, 176, 176, 174, 176, 178, 176, 170, 160, 151, 143, 141, 142, 32.17682 + 137, 136, 136, 133, 133, 134, 137, 141, 142, 142, 140, 143, 144, 143, 144, 148, 32.17683 + 153, 160, 163, 170, 173, 177, 179, 177, 176, 180, 183, 183, 186, 187, 185, 185, 32.17684 + 189, 190, 187, 197, 190, 184, 186, 198, 210, 217, 219, 202, 185, 181, 183, 181, 32.17685 + 181, 182, 175, 178, 175, 173, 175, 182, 187, 188, 188, 185, 183, 179, 172, 164, 32.17686 + 160, 160, 161, 159, 162, 163, 163, 165, 171, 172, 170, 161, 141, 132, 147, 160, 32.17687 + 158, 156, 160, 172, 159, 159, 163, 155, 147, 141, 125, 106, 44, 255, 255, 255, 32.17688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 46, 19, 20, 32, 48, 32.17689 + 60, 92, 98, 122, 133, 153, 145, 147, 145, 142, 142, 143, 141, 135, 150, 151, 32.17690 + 147, 141, 141, 140, 138, 132, 132, 132, 134, 136, 140, 141, 142, 140, 144, 143, 32.17691 + 143, 144, 147, 151, 156, 159, 168, 172, 177, 177, 177, 175, 178, 180, 183, 186, 32.17692 + 188, 185, 186, 190, 190, 188, 191, 188, 185, 185, 190, 198, 207, 213, 197, 183, 32.17693 + 182, 185, 180, 179, 179, 172, 172, 171, 172, 172, 174, 178, 182, 184, 180, 178, 32.17694 + 174, 168, 161, 157, 157, 158, 156, 161, 163, 162, 164, 170, 173, 175, 164, 145, 32.17695 + 134, 147, 161, 162, 160, 163, 174, 161, 162, 162, 154, 146, 138, 122, 96, 31, 32.17696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 26, 32.17697 + 12, 37, 60, 78, 107, 109, 129, 134, 151, 170, 172, 173, 171, 169, 170, 164, 32.17698 + 157, 135, 146, 150, 141, 137, 138, 139, 133, 133, 133, 134, 137, 141, 142, 143, 32.17699 + 141, 142, 141, 143, 143, 146, 150, 155, 157, 165, 170, 176, 178, 178, 177, 179, 32.17700 + 181, 181, 185, 186, 183, 184, 187, 188, 185, 184, 184, 186, 189, 192, 192, 191, 32.17701 + 189, 186, 175, 178, 184, 178, 174, 172, 163, 162, 166, 174, 177, 176, 174, 172, 32.17702 + 171, 172, 171, 168, 164, 158, 156, 157, 158, 156, 163, 166, 164, 164, 169, 173, 32.17703 + 174, 169, 150, 135, 141, 154, 162, 164, 165, 169, 159, 161, 161, 153, 145, 136, 32.17704 + 116, 93, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17705 + 255, 33, 28, 20, 35, 63, 83, 113, 112, 132, 136, 149, 153, 161, 168, 171, 32.17706 + 175, 175, 170, 161, 121, 138, 147, 139, 132, 133, 138, 138, 134, 134, 136, 139, 32.17707 + 143, 144, 145, 144, 140, 140, 140, 141, 146, 151, 155, 158, 164, 169, 176, 178, 32.17708 + 180, 179, 181, 183, 182, 185, 185, 182, 182, 186, 186, 183, 183, 182, 183, 188, 32.17709 + 194, 191, 183, 175, 184, 173, 172, 174, 167, 163, 163, 157, 167, 171, 177, 178, 32.17710 + 175, 169, 163, 159, 161, 159, 158, 155, 154, 154, 156, 159, 158, 164, 168, 165, 32.17711 + 163, 167, 171, 172, 173, 155, 136, 133, 143, 155, 163, 166, 164, 158, 161, 160, 32.17712 + 152, 147, 137, 115, 96, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17713 + 255, 255, 255, 255, 34, 24, 35, 40, 63, 78, 101, 103, 127, 135, 151, 156, 32.17714 + 164, 175, 179, 182, 181, 173, 164, 121, 131, 139, 135, 132, 131, 137, 139, 134, 32.17715 + 135, 136, 140, 144, 146, 147, 145, 140, 140, 140, 142, 147, 150, 154, 157, 165, 32.17716 + 170, 176, 178, 179, 179, 181, 184, 183, 186, 186, 183, 184, 187, 187, 184, 188, 32.17717 + 184, 180, 183, 188, 188, 185, 179, 186, 172, 165, 162, 154, 154, 162, 161, 180, 32.17718 + 178, 174, 170, 167, 163, 159, 156, 154, 154, 153, 152, 151, 152, 155, 158, 161, 32.17719 + 165, 168, 166, 165, 169, 171, 171, 174, 161, 140, 129, 133, 147, 158, 163, 163, 32.17720 + 158, 161, 161, 152, 147, 136, 113, 73, 36, 255, 255, 255, 255, 255, 255, 255, 32.17721 + 255, 255, 255, 255, 255, 255, 200, 34, 28, 41, 50, 68, 77, 96, 95, 124, 32.17722 + 136, 151, 157, 165, 173, 175, 177, 175, 166, 157, 132, 128, 127, 131, 135, 133, 32.17723 + 135, 136, 133, 134, 135, 139, 144, 145, 146, 145, 141, 141, 143, 144, 147, 150, 32.17724 + 153, 154, 166, 169, 175, 174, 173, 173, 178, 181, 182, 185, 185, 182, 182, 185, 32.17725 + 183, 180, 186, 183, 180, 178, 179, 178, 178, 177, 172, 160, 158, 160, 157, 160, 32.17726 + 169, 169, 178, 172, 166, 162, 162, 163, 162, 160, 159, 159, 158, 156, 154, 155, 32.17727 + 158, 159, 161, 164, 164, 163, 167, 173, 173, 171, 172, 163, 146, 130, 129, 141, 32.17728 + 153, 158, 162, 159, 161, 159, 149, 144, 130, 105, 38, 106, 255, 255, 255, 255, 32.17729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 32, 39, 36, 56, 74, 80, 32.17730 + 97, 96, 125, 134, 145, 152, 160, 168, 173, 177, 180, 175, 167, 144, 128, 119, 32.17731 + 128, 139, 137, 133, 132, 132, 132, 134, 138, 143, 144, 145, 144, 144, 144, 145, 32.17732 + 145, 148, 149, 151, 151, 169, 171, 175, 173, 170, 170, 175, 178, 180, 183, 182, 32.17733 + 179, 179, 180, 180, 177, 181, 182, 184, 180, 173, 166, 166, 166, 152, 146, 156, 32.17734 + 167, 167, 170, 178, 175, 165, 161, 157, 159, 166, 167, 168, 162, 167, 167, 166, 32.17735 + 162, 160, 160, 161, 164, 161, 162, 161, 162, 169, 176, 176, 171, 168, 166, 152, 32.17736 + 133, 128, 138, 151, 154, 160, 158, 160, 155, 144, 138, 124, 96, 24, 255, 255, 32.17737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 38, 44, 29, 32.17738 + 52, 74, 89, 90, 115, 106, 134, 142, 151, 159, 165, 171, 178, 182, 177, 168, 32.17739 + 149, 120, 115, 132, 138, 131, 134, 136, 128, 131, 136, 139, 142, 143, 146, 148, 32.17740 + 142, 144, 145, 144, 145, 145, 149, 153, 170, 170, 173, 174, 175, 175, 174, 174, 32.17741 + 180, 178, 176, 178, 180, 182, 181, 177, 183, 177, 177, 174, 166, 152, 144, 142, 32.17742 + 180, 178, 177, 177, 177, 177, 176, 174, 186, 168, 153, 156, 168, 173, 174, 173, 32.17743 + 174, 173, 170, 167, 164, 162, 164, 166, 167, 159, 162, 165, 165, 174, 180, 173, 32.17744 + 173, 157, 149, 143, 127, 123, 140, 150, 158, 146, 152, 153, 141, 120, 127, 52, 32.17745 + 26, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 32.17746 + 68, 40, 35, 55, 86, 78, 96, 93, 111, 123, 139, 152, 157, 164, 167, 172, 32.17747 + 177, 176, 171, 147, 118, 113, 129, 135, 129, 132, 133, 128, 131, 134, 137, 139, 32.17748 + 140, 143, 143, 144, 145, 147, 147, 147, 148, 152, 154, 168, 171, 175, 175, 174, 32.17749 + 173, 173, 175, 180, 180, 179, 177, 178, 179, 181, 181, 184, 175, 166, 160, 157, 32.17750 + 154, 159, 165, 171, 171, 172, 176, 179, 182, 182, 182, 176, 179, 169, 152, 155, 32.17751 + 173, 177, 165, 170, 174, 176, 170, 161, 163, 174, 185, 168, 157, 164, 178, 175, 32.17752 + 173, 179, 183, 176, 161, 156, 138, 131, 129, 145, 142, 155, 150, 153, 146, 134, 32.17753 + 127, 116, 53, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17754 + 255, 255, 144, 89, 37, 35, 69, 104, 90, 100, 90, 112, 128, 142, 152, 157, 32.17755 + 163, 163, 166, 172, 176, 175, 147, 119, 113, 128, 133, 129, 132, 132, 130, 131, 32.17756 + 134, 137, 139, 140, 142, 142, 142, 144, 148, 149, 150, 151, 155, 157, 163, 168, 32.17757 + 174, 174, 172, 171, 175, 180, 181, 182, 179, 178, 178, 178, 181, 182, 175, 164, 32.17758 + 155, 151, 153, 157, 170, 181, 175, 176, 175, 177, 179, 180, 179, 179, 177, 186, 32.17759 + 181, 163, 158, 169, 173, 166, 179, 186, 186, 183, 174, 168, 165, 167, 166, 160, 32.17760 + 162, 169, 174, 184, 181, 165, 179, 162, 163, 137, 137, 129, 146, 134, 155, 156, 32.17761 + 154, 141, 127, 130, 89, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17762 + 255, 255, 255, 255, 255, 153, 80, 42, 36, 76, 109, 118, 96, 106, 99, 137, 32.17763 + 143, 150, 158, 164, 163, 165, 170, 174, 175, 149, 123, 116, 128, 134, 131, 135, 32.17764 + 133, 131, 132, 134, 138, 143, 144, 146, 145, 142, 144, 149, 150, 151, 152, 155, 32.17765 + 157, 157, 165, 173, 173, 172, 171, 177, 183, 183, 182, 179, 179, 179, 178, 174, 32.17766 + 172, 156, 152, 152, 154, 159, 162, 168, 174, 178, 176, 175, 175, 176, 176, 177, 32.17767 + 175, 179, 173, 173, 176, 167, 154, 152, 163, 165, 165, 163, 167, 174, 177, 173, 32.17768 + 169, 172, 182, 182, 177, 204, 252, 249, 202, 180, 160, 166, 142, 139, 120, 137, 32.17769 + 135, 158, 155, 150, 144, 127, 119, 58, 123, 255, 255, 255, 255, 255, 255, 255, 32.17770 + 255, 255, 255, 255, 255, 255, 255, 255, 157, 60, 64, 49, 67, 106, 124, 104, 32.17771 + 109, 94, 129, 139, 150, 159, 167, 167, 169, 172, 174, 173, 149, 124, 117, 126, 32.17772 + 131, 131, 135, 132, 128, 128, 131, 137, 144, 147, 149, 148, 141, 144, 147, 148, 32.17773 + 150, 150, 152, 155, 159, 166, 173, 173, 170, 169, 174, 180, 184, 181, 177, 179, 32.17774 + 180, 177, 166, 158, 152, 151, 157, 163, 167, 165, 165, 167, 168, 170, 171, 173, 32.17775 + 177, 179, 181, 180, 172, 164, 167, 175, 170, 151, 142, 146, 162, 158, 152, 147, 32.17776 + 146, 150, 157, 161, 152, 165, 165, 153, 168, 213, 216, 175, 178, 160, 165, 152, 32.17777 + 137, 112, 131, 146, 154, 147, 143, 148, 127, 99, 36, 255, 255, 255, 255, 255, 32.17778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 51, 85, 75, 65, 32.17779 + 112, 117, 130, 106, 105, 115, 135, 149, 158, 166, 168, 171, 173, 174, 170, 148, 32.17780 + 123, 115, 122, 127, 129, 133, 128, 124, 124, 127, 134, 142, 147, 149, 147, 141, 32.17781 + 144, 147, 148, 149, 148, 149, 150, 163, 168, 173, 171, 168, 165, 167, 171, 182, 32.17782 + 180, 177, 178, 177, 172, 161, 152, 161, 160, 161, 166, 169, 165, 166, 169, 173, 32.17783 + 172, 171, 172, 176, 177, 176, 175, 166, 172, 174, 169, 168, 165, 153, 140, 158, 32.17784 + 170, 176, 165, 143, 128, 129, 135, 158, 159, 165, 164, 154, 161, 172, 170, 173, 32.17785 + 162, 160, 155, 126, 116, 131, 153, 146, 139, 138, 143, 120, 72, 33, 255, 255, 32.17786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 32.17787 + 89, 93, 79, 114, 117, 140, 122, 115, 115, 132, 150, 156, 162, 165, 172, 175, 32.17788 + 174, 167, 148, 124, 115, 121, 126, 129, 133, 128, 126, 125, 127, 133, 143, 147, 32.17789 + 148, 146, 143, 145, 148, 149, 150, 148, 148, 148, 163, 165, 167, 167, 166, 164, 32.17790 + 166, 168, 178, 180, 179, 177, 170, 165, 161, 160, 166, 164, 163, 167, 170, 168, 32.17791 + 170, 174, 182, 179, 176, 175, 175, 173, 170, 168, 171, 176, 177, 173, 171, 169, 32.17792 + 161, 153, 139, 155, 170, 172, 160, 148, 144, 145, 135, 131, 143, 159, 156, 156, 32.17793 + 172, 184, 161, 167, 151, 146, 105, 127, 135, 149, 142, 145, 142, 131, 104, 46, 32.17794 + 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17795 + 255, 255, 73, 82, 101, 94, 109, 124, 131, 146, 110, 120, 122, 152, 155, 158, 32.17796 + 160, 167, 172, 170, 163, 149, 125, 118, 123, 126, 131, 135, 129, 130, 129, 130, 32.17797 + 136, 144, 149, 147, 144, 144, 147, 150, 150, 150, 148, 148, 148, 158, 159, 162, 32.17798 + 164, 165, 167, 168, 170, 172, 179, 182, 175, 164, 157, 162, 171, 162, 161, 163, 32.17799 + 169, 173, 169, 170, 173, 178, 176, 175, 176, 177, 177, 176, 174, 175, 163, 164, 32.17800 + 175, 171, 153, 150, 164, 160, 154, 146, 145, 148, 152, 150, 145, 138, 133, 139, 32.17801 + 147, 151, 160, 162, 152, 146, 166, 142, 133, 88, 136, 137, 140, 141, 155, 146, 32.17802 + 118, 85, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17803 + 255, 255, 255, 255, 255, 76, 91, 114, 108, 96, 119, 148, 141, 129, 131, 130, 32.17804 + 138, 144, 151, 157, 161, 165, 164, 161, 140, 122, 119, 125, 126, 129, 135, 134, 32.17805 + 130, 132, 134, 139, 144, 147, 146, 145, 146, 146, 149, 148, 147, 148, 152, 154, 32.17806 + 157, 159, 162, 161, 159, 161, 166, 172, 179, 175, 180, 169, 151, 160, 167, 149, 32.17807 + 154, 170, 164, 165, 167, 169, 182, 174, 179, 183, 177, 191, 173, 177, 162, 167, 32.17808 + 175, 165, 162, 168, 170, 165, 160, 162, 154, 160, 158, 147, 134, 130, 135, 140, 32.17809 + 150, 125, 107, 118, 141, 155, 157, 153, 153, 131, 110, 106, 120, 135, 144, 145, 32.17810 + 155, 142, 137, 102, 48, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17811 + 255, 255, 255, 255, 255, 255, 255, 255, 204, 91, 109, 118, 102, 114, 144, 148, 32.17812 + 137, 136, 143, 129, 136, 146, 157, 161, 162, 161, 162, 143, 123, 117, 122, 122, 32.17813 + 127, 136, 136, 131, 132, 133, 138, 143, 146, 146, 145, 147, 148, 150, 149, 148, 32.17814 + 148, 151, 154, 156, 158, 162, 161, 159, 159, 164, 169, 176, 174, 178, 167, 150, 32.17815 + 160, 167, 150, 149, 158, 154, 164, 169, 167, 172, 163, 177, 174, 181, 174, 190, 32.17816 + 173, 186, 176, 161, 158, 157, 165, 166, 160, 154, 153, 154, 157, 154, 143, 128, 32.17817 + 121, 123, 125, 127, 118, 119, 133, 149, 150, 144, 136, 109, 109, 111, 111, 120, 32.17818 + 133, 139, 135, 166, 150, 116, 72, 41, 255, 255, 255, 255, 255, 255, 255, 255, 32.17819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 109, 125, 113, 32.17820 + 110, 131, 150, 140, 135, 149, 128, 131, 141, 157, 162, 159, 160, 165, 148, 124, 32.17821 + 115, 121, 121, 126, 135, 137, 132, 132, 134, 137, 141, 145, 146, 146, 149, 150, 32.17822 + 152, 150, 149, 148, 151, 153, 154, 157, 162, 161, 158, 158, 162, 165, 171, 173, 32.17823 + 175, 164, 151, 160, 166, 152, 163, 155, 141, 156, 163, 162, 178, 181, 167, 191, 32.17824 + 188, 195, 183, 170, 184, 179, 182, 179, 178, 178, 173, 164, 157, 155, 154, 152, 32.17825 + 148, 141, 131, 123, 121, 119, 112, 113, 120, 129, 130, 123, 116, 111, 105, 107, 32.17826 + 109, 108, 120, 138, 146, 143, 166, 140, 82, 42, 110, 255, 255, 255, 255, 255, 32.17827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 91, 32.17828 + 111, 126, 131, 123, 124, 144, 146, 138, 148, 140, 132, 137, 151, 161, 157, 157, 32.17829 + 162, 150, 124, 115, 123, 123, 126, 133, 135, 133, 132, 133, 136, 140, 144, 146, 32.17830 + 146, 150, 151, 153, 152, 150, 149, 151, 152, 152, 156, 161, 161, 158, 156, 159, 32.17831 + 161, 167, 173, 172, 160, 152, 161, 164, 155, 153, 139, 121, 136, 140, 127, 145, 32.17832 + 161, 187, 178, 165, 158, 197, 177, 209, 178, 184, 184, 183, 180, 175, 170, 167, 32.17833 + 168, 154, 150, 146, 146, 142, 135, 131, 131, 130, 130, 131, 128, 123, 122, 125, 32.17834 + 128, 126, 115, 111, 121, 136, 149, 152, 149, 159, 111, 56, 106, 255, 255, 255, 32.17835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17836 + 255, 255, 97, 102, 115, 143, 141, 125, 136, 150, 146, 147, 152, 136, 130, 140, 32.17837 + 155, 160, 161, 163, 152, 125, 116, 127, 130, 129, 130, 131, 134, 133, 132, 135, 32.17838 + 140, 145, 145, 146, 149, 151, 154, 153, 150, 149, 150, 151, 153, 156, 161, 160, 32.17839 + 157, 155, 157, 159, 164, 174, 171, 157, 154, 162, 162, 157, 139, 133, 129, 150, 32.17840 + 144, 116, 124, 137, 115, 134, 131, 163, 163, 166, 173, 169, 190, 193, 194, 190, 32.17841 + 185, 178, 171, 167, 158, 153, 151, 154, 154, 148, 145, 145, 144, 145, 143, 138, 32.17842 + 132, 132, 137, 138, 123, 113, 124, 149, 159, 151, 147, 154, 140, 75, 43, 255, 32.17843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17844 + 255, 255, 255, 255, 255, 207, 94, 102, 137, 146, 125, 125, 143, 151, 146, 156, 32.17845 + 141, 129, 131, 147, 160, 166, 165, 155, 125, 116, 129, 132, 129, 128, 129, 132, 32.17846 + 132, 132, 136, 141, 145, 145, 145, 147, 149, 153, 152, 150, 149, 150, 151, 155, 32.17847 + 157, 161, 159, 155, 154, 156, 159, 162, 177, 170, 155, 157, 163, 160, 159, 151, 32.17848 + 147, 144, 166, 162, 140, 160, 179, 138, 132, 140, 137, 135, 128, 146, 170, 163, 32.17849 + 170, 180, 183, 184, 183, 177, 169, 165, 158, 157, 161, 160, 152, 150, 153, 152, 32.17850 + 156, 157, 148, 136, 129, 124, 119, 124, 126, 143, 161, 159, 144, 149, 165, 96, 32.17851 + 39, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 107, 126, 142, 134, 123, 134, 32.17853 + 149, 146, 153, 148, 136, 127, 136, 156, 166, 164, 159, 127, 116, 129, 131, 127, 32.17854 + 130, 132, 130, 131, 134, 138, 142, 145, 145, 144, 144, 147, 151, 152, 150, 149, 32.17855 + 150, 151, 157, 159, 161, 158, 154, 153, 157, 160, 162, 180, 171, 154, 159, 163, 32.17856 + 158, 161, 160, 150, 136, 152, 155, 150, 183, 207, 179, 117, 205, 160, 255, 165, 32.17857 + 154, 107, 126, 130, 134, 139, 151, 164, 171, 167, 165, 158, 156, 161, 159, 150, 32.17858 + 149, 156, 160, 166, 160, 144, 127, 122, 123, 124, 145, 151, 157, 157, 151, 146, 32.17859 + 142, 140, 53, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 138, 129, 126, 144, 32.17861 + 148, 131, 134, 151, 153, 153, 155, 146, 128, 129, 148, 160, 158, 165, 128, 115, 32.17862 + 127, 130, 126, 130, 134, 129, 131, 134, 139, 143, 145, 144, 143, 142, 145, 150, 32.17863 + 151, 150, 149, 150, 151, 159, 160, 161, 158, 153, 153, 157, 161, 161, 182, 171, 32.17864 + 154, 160, 164, 157, 161, 170, 159, 142, 155, 158, 153, 177, 193, 174, 142, 173, 32.17865 + 186, 170, 175, 140, 189, 189, 176, 152, 130, 126, 133, 136, 133, 158, 152, 152, 32.17866 + 158, 155, 148, 150, 160, 139, 142, 131, 108, 93, 104, 127, 143, 157, 164, 164, 32.17867 + 156, 158, 155, 121, 77, 38, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 32.17869 + 133, 125, 133, 148, 145, 127, 132, 153, 163, 166, 156, 135, 132, 148, 162, 163, 32.17870 + 163, 148, 125, 118, 130, 133, 129, 136, 120, 131, 138, 141, 145, 147, 143, 135, 32.17871 + 150, 151, 154, 152, 150, 147, 148, 148, 159, 160, 162, 160, 158, 158, 160, 162, 32.17872 + 170, 173, 170, 160, 152, 156, 168, 174, 172, 167, 157, 148, 146, 157, 177, 189, 32.17873 + 162, 156, 167, 177, 193, 185, 164, 183, 187, 197, 148, 161, 173, 118, 109, 123, 32.17874 + 124, 133, 136, 132, 143, 139, 117, 127, 114, 116, 91, 106, 102, 132, 147, 147, 32.17875 + 150, 166, 159, 154, 158, 138, 80, 47, 116, 255, 255, 255, 255, 255, 255, 255, 32.17876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17877 + 255, 255, 140, 137, 126, 128, 145, 147, 124, 124, 152, 160, 165, 162, 144, 135, 32.17878 + 141, 156, 164, 162, 153, 132, 122, 130, 135, 133, 135, 122, 131, 137, 140, 143, 32.17879 + 146, 143, 136, 145, 146, 150, 150, 148, 147, 148, 149, 156, 157, 159, 158, 157, 32.17880 + 157, 160, 162, 169, 173, 171, 161, 154, 157, 168, 173, 173, 169, 160, 150, 144, 32.17881 + 147, 158, 165, 133, 123, 168, 199, 188, 174, 174, 194, 184, 223, 186, 171, 179, 32.17882 + 170, 177, 161, 123, 112, 103, 117, 125, 120, 139, 174, 169, 97, 98, 125, 119, 32.17883 + 132, 134, 146, 159, 154, 157, 159, 131, 122, 36, 46, 255, 255, 255, 255, 255, 32.17884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17885 + 255, 255, 255, 255, 255, 255, 140, 135, 129, 139, 149, 127, 120, 148, 154, 161, 32.17886 + 166, 156, 141, 137, 149, 162, 162, 161, 141, 124, 131, 137, 136, 136, 126, 132, 32.17887 + 138, 140, 141, 143, 142, 138, 139, 142, 146, 147, 147, 147, 149, 150, 153, 154, 32.17888 + 157, 157, 156, 156, 160, 162, 169, 172, 171, 162, 156, 159, 168, 171, 173, 172, 32.17889 + 166, 157, 147, 143, 146, 146, 142, 99, 144, 193, 186, 181, 180, 178, 178, 189, 32.17890 + 183, 209, 208, 177, 184, 182, 176, 227, 224, 193, 158, 159, 180, 151, 162, 66, 32.17891 + 107, 131, 121, 127, 130, 149, 162, 159, 157, 136, 146, 41, 55, 255, 255, 255, 32.17892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 145, 134, 133, 148, 138, 128, 32.17894 + 144, 153, 158, 164, 163, 149, 140, 146, 157, 163, 167, 149, 125, 127, 137, 138, 32.17895 + 138, 131, 133, 137, 139, 139, 140, 140, 139, 138, 141, 145, 146, 146, 146, 148, 32.17896 + 149, 151, 152, 156, 156, 156, 157, 161, 163, 169, 172, 171, 163, 158, 161, 168, 32.17897 + 170, 173, 172, 170, 164, 158, 151, 148, 145, 139, 123, 163, 181, 151, 143, 159, 32.17898 + 181, 167, 187, 197, 211, 204, 199, 203, 167, 158, 190, 184, 190, 168, 157, 190, 32.17899 + 157, 105, 71, 123, 122, 117, 120, 139, 153, 155, 178, 136, 134, 94, 32, 117, 32.17900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 150, 141, 125, 32.17902 + 137, 145, 140, 135, 152, 154, 159, 163, 158, 148, 147, 150, 162, 171, 156, 130, 32.17903 + 126, 134, 137, 141, 135, 135, 136, 139, 140, 140, 140, 141, 141, 143, 146, 146, 32.17904 + 145, 144, 146, 147, 151, 153, 156, 156, 156, 158, 162, 164, 169, 171, 170, 163, 32.17905 + 159, 162, 168, 170, 174, 174, 175, 170, 166, 160, 156, 153, 164, 144, 136, 133, 32.17906 + 151, 159, 139, 139, 176, 166, 173, 194, 190, 193, 204, 182, 186, 194, 173, 187, 32.17907 + 180, 166, 166, 101, 93, 115, 132, 113, 122, 113, 140, 155, 161, 150, 151, 92, 32.17908 + 33, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 32.17910 + 145, 143, 126, 124, 144, 146, 129, 150, 153, 157, 159, 161, 159, 153, 149, 159, 32.17911 + 170, 161, 141, 132, 132, 134, 143, 137, 135, 135, 139, 140, 137, 137, 140, 141, 32.17912 + 143, 146, 146, 144, 142, 143, 144, 151, 153, 156, 156, 156, 157, 161, 164, 171, 32.17913 + 172, 169, 162, 159, 163, 169, 170, 177, 176, 176, 173, 169, 164, 159, 157, 139, 32.17914 + 155, 158, 136, 138, 140, 125, 142, 163, 122, 133, 180, 187, 169, 172, 181, 157, 32.17915 + 195, 189, 174, 157, 151, 138, 74, 116, 137, 116, 105, 127, 118, 140, 163, 165, 32.17916 + 134, 132, 54, 28, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17918 + 255, 255, 255, 138, 142, 137, 120, 135, 146, 128, 145, 153, 158, 158, 161, 166, 32.17919 + 161, 150, 153, 166, 167, 156, 145, 133, 132, 145, 138, 135, 136, 141, 140, 136, 32.17920 + 135, 138, 139, 141, 144, 144, 142, 140, 141, 142, 150, 152, 155, 155, 154, 155, 32.17921 + 159, 161, 173, 173, 168, 160, 158, 163, 170, 171, 177, 177, 179, 177, 174, 168, 32.17922 + 162, 159, 160, 147, 152, 151, 155, 159, 140, 130, 133, 139, 154, 152, 159, 174, 32.17923 + 163, 136, 172, 162, 152, 145, 122, 87, 91, 119, 122, 123, 111, 104, 113, 136, 32.17924 + 141, 164, 152, 128, 48, 61, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17926 + 255, 255, 255, 255, 255, 255, 132, 145, 150, 123, 127, 147, 131, 142, 154, 161, 32.17927 + 157, 161, 170, 168, 154, 149, 164, 171, 168, 156, 135, 130, 144, 141, 135, 137, 32.17928 + 142, 142, 135, 134, 137, 136, 138, 141, 141, 140, 139, 140, 141, 150, 153, 154, 32.17929 + 153, 154, 154, 157, 160, 176, 174, 168, 159, 159, 165, 171, 173, 176, 177, 180, 32.17930 + 181, 179, 173, 165, 162, 168, 144, 171, 179, 149, 149, 151, 145, 149, 138, 140, 32.17931 + 138, 137, 133, 124, 124, 121, 123, 120, 111, 126, 125, 107, 118, 115, 111, 132, 32.17932 + 112, 93, 149, 141, 150, 145, 57, 29, 15, 109, 255, 255, 255, 255, 255, 255, 32.17933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 143, 147, 122, 113, 151, 145, 32.17935 + 139, 146, 154, 157, 161, 167, 171, 169, 152, 158, 168, 169, 161, 148, 138, 133, 32.17936 + 145, 142, 141, 138, 138, 136, 133, 130, 135, 136, 139, 140, 140, 138, 138, 136, 32.17937 + 151, 152, 152, 153, 155, 158, 161, 165, 171, 171, 167, 159, 158, 164, 170, 174, 32.17938 + 173, 175, 178, 180, 180, 176, 168, 163, 152, 152, 156, 160, 163, 161, 156, 150, 32.17939 + 146, 148, 149, 151, 151, 148, 142, 137, 145, 143, 143, 141, 131, 122, 121, 124, 32.17940 + 116, 133, 114, 94, 126, 125, 144, 144, 112, 31, 6, 25, 255, 255, 255, 255, 32.17941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 148, 130, 32.17943 + 118, 139, 146, 140, 146, 153, 155, 160, 168, 173, 172, 155, 155, 160, 166, 167, 32.17944 + 160, 146, 135, 136, 139, 140, 140, 135, 132, 132, 133, 133, 134, 140, 143, 144, 32.17945 + 142, 143, 142, 150, 151, 154, 154, 154, 156, 162, 166, 174, 176, 172, 165, 163, 32.17946 + 168, 174, 176, 173, 173, 174, 177, 178, 178, 175, 172, 161, 156, 151, 151, 154, 32.17947 + 157, 159, 158, 149, 151, 154, 157, 156, 154, 148, 144, 150, 151, 152, 150, 143, 32.17948 + 131, 128, 128, 128, 116, 105, 107, 131, 127, 141, 111, 45, 13, 13, 255, 255, 32.17949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17951 + 222, 148, 138, 125, 121, 145, 140, 146, 152, 155, 159, 168, 173, 173, 163, 156, 32.17952 + 152, 161, 172, 172, 157, 142, 132, 137, 141, 141, 137, 134, 135, 136, 127, 133, 32.17953 + 141, 145, 144, 141, 141, 141, 147, 151, 154, 153, 152, 153, 159, 167, 174, 177, 32.17954 + 177, 171, 168, 171, 174, 174, 176, 175, 173, 174, 177, 179, 180, 179, 172, 164, 32.17955 + 157, 156, 157, 158, 158, 157, 148, 149, 151, 154, 154, 150, 144, 142, 150, 152, 32.17956 + 154, 155, 148, 137, 132, 131, 129, 106, 107, 113, 130, 135, 136, 65, 25, 31, 32.17957 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17959 + 255, 255, 255, 255, 148, 148, 135, 113, 145, 144, 149, 152, 154, 157, 166, 172, 32.17960 + 172, 170, 159, 150, 156, 170, 175, 166, 155, 140, 142, 143, 144, 143, 140, 138, 32.17961 + 136, 124, 130, 138, 141, 139, 135, 134, 134, 144, 149, 154, 153, 150, 151, 158, 32.17962 + 166, 170, 174, 176, 171, 168, 170, 170, 169, 178, 175, 173, 173, 175, 177, 178, 32.17963 + 178, 174, 172, 170, 169, 169, 163, 154, 148, 144, 146, 147, 148, 149, 145, 139, 32.17964 + 135, 147, 146, 149, 150, 143, 132, 128, 126, 117, 118, 118, 109, 125, 127, 112, 32.17965 + 31, 34, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17967 + 255, 255, 255, 255, 255, 255, 255, 220, 154, 143, 116, 143, 147, 152, 154, 154, 32.17968 + 156, 163, 167, 168, 175, 165, 156, 157, 162, 169, 171, 168, 153, 147, 143, 144, 32.17969 + 148, 147, 139, 130, 121, 127, 134, 137, 136, 133, 133, 133, 141, 147, 152, 152, 32.17970 + 148, 149, 158, 165, 167, 172, 175, 171, 168, 169, 170, 168, 173, 172, 172, 174, 32.17971 + 177, 178, 177, 175, 174, 173, 174, 177, 175, 169, 158, 150, 146, 146, 147, 147, 32.17972 + 146, 143, 137, 135, 144, 141, 139, 138, 131, 122, 119, 119, 113, 129, 122, 107, 32.17973 + 122, 88, 65, 30, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 146, 128, 134, 150, 32.17976 + 154, 157, 155, 156, 162, 165, 163, 174, 168, 162, 158, 157, 163, 170, 176, 162, 32.17977 + 152, 142, 143, 149, 149, 139, 128, 124, 124, 128, 132, 136, 138, 141, 140, 140, 32.17978 + 145, 149, 149, 148, 150, 157, 163, 167, 173, 176, 173, 171, 172, 174, 171, 166, 32.17979 + 167, 170, 174, 178, 180, 181, 178, 176, 170, 170, 170, 172, 171, 168, 164, 152, 32.17980 + 152, 152, 150, 150, 146, 142, 137, 146, 141, 139, 138, 134, 126, 123, 123, 121, 32.17981 + 124, 117, 117, 116, 40, 23, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 32.17984 + 143, 122, 147, 152, 157, 156, 157, 163, 165, 162, 169, 168, 164, 161, 159, 163, 32.17985 + 169, 176, 169, 158, 148, 146, 151, 151, 144, 134, 129, 127, 125, 129, 137, 143, 32.17986 + 144, 144, 141, 143, 145, 146, 148, 151, 156, 161, 167, 172, 174, 171, 172, 175, 32.17987 + 177, 175, 170, 169, 173, 176, 180, 182, 183, 179, 176, 169, 164, 163, 167, 169, 32.17988 + 167, 167, 158, 157, 155, 155, 154, 150, 146, 142, 147, 144, 143, 144, 143, 136, 32.17989 + 132, 129, 122, 116, 119, 118, 93, 16, 15, 106, 255, 255, 255, 255, 255, 255, 32.17990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17992 + 255, 255, 255, 153, 113, 144, 150, 157, 156, 160, 163, 166, 163, 164, 165, 164, 32.17993 + 163, 162, 165, 171, 173, 171, 164, 154, 151, 153, 153, 149, 144, 136, 129, 123, 32.17994 + 126, 134, 141, 142, 140, 142, 142, 143, 145, 149, 153, 156, 158, 163, 170, 172, 32.17995 + 170, 169, 174, 176, 176, 176, 175, 175, 176, 178, 180, 181, 177, 175, 169, 165, 32.17996 + 165, 167, 165, 161, 157, 160, 159, 158, 156, 155, 151, 146, 142, 139, 137, 139, 32.17997 + 144, 145, 136, 131, 127, 117, 112, 128, 110, 64, 16, 104, 255, 255, 255, 255, 32.17998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.17999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18000 + 255, 255, 255, 255, 255, 255, 255, 130, 136, 149, 161, 158, 157, 160, 165, 165, 32.18001 + 164, 171, 168, 167, 174, 170, 165, 169, 169, 166, 162, 159, 156, 154, 151, 149, 32.18002 + 144, 139, 128, 117, 115, 126, 137, 142, 142, 136, 135, 141, 147, 150, 152, 155, 32.18003 + 159, 164, 167, 168, 166, 169, 175, 184, 181, 177, 174, 171, 174, 175, 176, 174, 32.18004 + 177, 164, 157, 160, 165, 163, 159, 155, 156, 154, 152, 150, 150, 147, 144, 141, 32.18005 + 137, 143, 150, 149, 143, 134, 126, 117, 116, 112, 122, 102, 7, 23, 255, 255, 32.18006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 134, 146, 158, 157, 157, 32.18009 + 159, 164, 164, 163, 170, 167, 166, 173, 172, 168, 173, 173, 168, 165, 163, 160, 32.18010 + 157, 153, 150, 148, 145, 136, 125, 120, 124, 127, 127, 143, 139, 136, 137, 138, 32.18011 + 141, 149, 159, 155, 159, 165, 166, 167, 170, 174, 178, 180, 178, 174, 174, 174, 32.18012 + 177, 176, 173, 177, 165, 162, 164, 165, 162, 158, 156, 151, 149, 148, 148, 148, 32.18013 + 147, 143, 141, 142, 146, 149, 147, 141, 132, 124, 118, 124, 111, 119, 58, 22, 32.18014 + 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 32.18017 + 155, 156, 158, 160, 164, 163, 166, 171, 168, 166, 172, 173, 171, 177, 173, 172, 32.18018 + 168, 167, 166, 162, 157, 153, 154, 154, 147, 136, 128, 124, 118, 112, 134, 134, 32.18019 + 134, 135, 132, 132, 142, 154, 151, 153, 160, 164, 168, 169, 171, 173, 177, 176, 32.18020 + 176, 176, 176, 177, 175, 172, 176, 169, 167, 168, 166, 161, 160, 160, 149, 147, 32.18021 + 146, 146, 148, 147, 144, 142, 149, 150, 148, 145, 139, 130, 125, 120, 125, 115, 32.18022 + 90, 16, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18025 + 255, 255, 255, 220, 156, 160, 162, 164, 164, 169, 174, 168, 166, 171, 172, 172, 32.18026 + 180, 173, 173, 170, 171, 169, 165, 158, 153, 158, 160, 155, 145, 136, 129, 119, 32.18027 + 110, 118, 122, 129, 135, 134, 132, 136, 143, 148, 147, 152, 157, 163, 168, 170, 32.18028 + 170, 174, 175, 175, 178, 178, 178, 175, 173, 178, 172, 172, 171, 170, 163, 161, 32.18029 + 162, 152, 150, 149, 149, 150, 149, 146, 144, 152, 150, 145, 141, 135, 130, 127, 32.18030 + 122, 116, 123, 43, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18033 + 255, 255, 255, 255, 255, 255, 255, 222, 162, 164, 165, 167, 173, 177, 170, 166, 32.18034 + 173, 174, 171, 179, 172, 172, 173, 173, 170, 166, 159, 154, 159, 161, 159, 152, 32.18035 + 143, 138, 130, 122, 113, 114, 118, 125, 128, 129, 132, 138, 143, 142, 143, 147, 32.18036 + 154, 162, 166, 169, 171, 172, 174, 177, 180, 179, 176, 174, 180, 175, 175, 175, 32.18037 + 173, 167, 163, 165, 160, 158, 156, 156, 155, 153, 150, 147, 150, 147, 143, 137, 32.18038 + 134, 130, 127, 124, 114, 116, 20, 10, 255, 255, 255, 255, 255, 255, 255, 255, 32.18039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 165, 168, 174, 32.18042 + 178, 172, 168, 174, 174, 171, 178, 172, 172, 173, 173, 170, 166, 160, 155, 157, 32.18043 + 160, 160, 155, 149, 146, 140, 133, 124, 118, 112, 113, 115, 120, 130, 138, 136, 32.18044 + 137, 139, 142, 148, 155, 163, 167, 168, 169, 171, 175, 178, 181, 179, 177, 181, 32.18045 + 176, 174, 177, 176, 171, 166, 166, 164, 163, 161, 160, 159, 157, 154, 151, 149, 32.18046 + 146, 141, 137, 136, 132, 127, 124, 117, 87, 27, 255, 255, 255, 255, 255, 255, 32.18047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18050 + 255, 226, 172, 177, 172, 169, 176, 176, 173, 180, 175, 174, 173, 173, 172, 169, 32.18051 + 162, 157, 157, 161, 161, 158, 155, 152, 144, 137, 135, 129, 119, 113, 107, 109, 32.18052 + 119, 133, 126, 130, 136, 142, 144, 150, 157, 164, 166, 167, 169, 173, 177, 179, 32.18053 + 179, 180, 182, 176, 174, 178, 181, 176, 170, 167, 163, 162, 162, 162, 162, 161, 32.18054 + 158, 156, 151, 148, 144, 141, 139, 134, 128, 121, 110, 47, 104, 255, 255, 255, 32.18055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18058 + 255, 255, 255, 255, 255, 227, 173, 169, 170, 178, 178, 176, 184, 179, 176, 175, 32.18059 + 175, 174, 170, 165, 162, 156, 161, 162, 160, 157, 153, 145, 137, 138, 137, 133, 32.18060 + 122, 108, 102, 112, 125, 121, 127, 136, 141, 144, 147, 153, 160, 162, 163, 166, 32.18061 + 169, 174, 177, 179, 180, 181, 174, 171, 177, 182, 179, 172, 167, 160, 158, 160, 32.18062 + 161, 162, 160, 158, 155, 153, 150, 147, 144, 139, 134, 124, 115, 95, 16, 255, 32.18063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 172, 177, 179, 180, 181, 32.18067 + 179, 178, 177, 176, 175, 171, 168, 163, 163, 162, 162, 157, 155, 156, 151, 144, 32.18068 + 149, 147, 141, 134, 126, 117, 111, 107, 114, 122, 129, 129, 132, 140, 149, 154, 32.18069 + 153, 156, 162, 165, 169, 169, 169, 169, 179, 171, 168, 173, 179, 177, 171, 167, 32.18070 + 161, 159, 157, 156, 158, 157, 157, 156, 152, 151, 148, 141, 131, 119, 111, 106, 32.18071 + 30, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 177, 32.18075 + 179, 181, 181, 180, 179, 177, 177, 176, 174, 168, 164, 164, 163, 163, 158, 158, 32.18076 + 157, 154, 148, 148, 145, 142, 134, 129, 123, 117, 113, 100, 112, 124, 130, 133, 32.18077 + 139, 142, 142, 150, 151, 153, 156, 159, 161, 164, 164, 169, 162, 160, 165, 170, 32.18078 + 168, 163, 160, 157, 155, 152, 151, 153, 155, 157, 157, 157, 148, 143, 140, 130, 32.18079 + 115, 108, 108, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18083 + 255, 255, 255, 255, 231, 182, 181, 180, 179, 178, 177, 175, 170, 166, 165, 164, 32.18084 + 164, 160, 159, 159, 156, 149, 147, 144, 142, 136, 132, 128, 123, 121, 96, 106, 32.18085 + 117, 121, 126, 132, 137, 137, 150, 149, 149, 150, 153, 156, 161, 165, 166, 159, 32.18086 + 157, 163, 167, 166, 161, 158, 152, 150, 147, 147, 151, 154, 156, 157, 151, 152, 32.18087 + 143, 127, 119, 114, 102, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18091 + 255, 255, 255, 255, 255, 255, 255, 255, 231, 181, 180, 179, 180, 179, 176, 171, 32.18092 + 167, 164, 163, 164, 159, 159, 159, 156, 150, 148, 146, 143, 138, 135, 132, 128, 32.18093 + 127, 113, 113, 110, 105, 107, 118, 131, 137, 143, 143, 144, 145, 149, 152, 156, 32.18094 + 159, 163, 157, 155, 160, 164, 161, 158, 157, 148, 147, 147, 148, 151, 152, 152, 32.18095 + 151, 141, 153, 143, 117, 108, 113, 141, 255, 255, 255, 255, 255, 255, 255, 255, 32.18096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 179, 180, 32.18100 + 179, 177, 171, 168, 163, 162, 162, 158, 158, 158, 156, 149, 151, 149, 146, 140, 32.18101 + 137, 134, 131, 130, 128, 122, 110, 97, 95, 106, 120, 126, 131, 132, 135, 138, 32.18102 + 141, 144, 146, 147, 153, 150, 148, 152, 154, 152, 149, 150, 145, 146, 148, 149, 32.18103 + 151, 149, 146, 140, 140, 141, 134, 122, 114, 150, 255, 255, 255, 255, 255, 255, 32.18104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18108 + 255, 255, 230, 178, 176, 173, 168, 162, 161, 162, 158, 158, 158, 156, 150, 153, 32.18109 + 150, 147, 141, 138, 136, 133, 132, 131, 126, 116, 104, 100, 103, 109, 107, 120, 32.18110 + 123, 126, 131, 134, 138, 140, 141, 144, 142, 142, 147, 148, 144, 143, 143, 141, 32.18111 + 142, 143, 146, 145, 142, 137, 133, 143, 121, 115, 128, 114, 255, 255, 255, 255, 32.18112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18116 + 255, 255, 255, 255, 255, 255, 255, 229, 173, 168, 163, 162, 163, 159, 159, 160, 32.18117 + 158, 151, 152, 150, 146, 141, 139, 137, 136, 135, 131, 129, 128, 120, 115, 113, 32.18118 + 108, 101, 110, 109, 112, 115, 119, 123, 129, 132, 136, 134, 134, 139, 139, 136, 32.18119 + 134, 135, 135, 134, 133, 133, 133, 133, 130, 126, 132, 113, 106, 104, 138, 255, 32.18120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 164, 164, 164, 32.18125 + 161, 161, 161, 159, 153, 151, 148, 145, 140, 139, 139, 138, 139, 134, 134, 135, 32.18126 + 129, 126, 122, 114, 106, 95, 93, 92, 94, 99, 106, 114, 119, 123, 121, 123, 32.18127 + 127, 126, 123, 121, 124, 130, 127, 124, 121, 122, 124, 124, 122, 113, 116, 106, 32.18128 + 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18133 + 255, 223, 162, 161, 159, 156, 155, 153, 148, 149, 150, 145, 142, 137, 134, 134, 32.18134 + 135, 136, 135, 128, 124, 121, 115, 107, 104, 109, 85, 71, 93, 74, 98, 101, 32.18135 + 102, 104, 109, 112, 114, 114, 113, 112, 109, 108, 109, 114, 118, 117, 110, 102, 32.18136 + 107, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18141 + 255, 255, 255, 255, 255, 255, 161, 160, 157, 156, 154, 149, 149, 150, 145, 141, 32.18142 + 137, 134, 134, 138, 140, 138, 133, 128, 126, 123, 116, 115, 117, 97, 88, 85, 32.18143 + 57, 61, 51, 62, 63, 67, 69, 71, 73, 73, 75, 83, 82, 83, 85, 88, 32.18144 + 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 156, 154, 150, 150, 32.18150 + 150, 144, 141, 137, 135, 135, 138, 139, 138, 131, 128, 127, 126, 121, 116, 113, 32.18151 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18158 + 255, 220, 150, 149, 143, 140, 137, 136, 137, 138, 139, 138, 132, 130, 131, 130, 32.18159 + 126, 122, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18166 + 255, 255, 255, 255, 255, 255, 255, 142, 140, 138, 138, 141, 146, 147, 145, 138, 32.18167 + 137, 141, 141, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 145, 146, 32.18175 + 147, 146, 142, 142, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18183 + 255, 255, 216, 135, 132, 133, 129, 124, 121, 123, 130, 120, 109, 106, 111, 117, 32.18184 + 117, 116, 146, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 137, 32.18191 + 137, 137, 136, 132, 128, 118, 114, 115, 122, 120, 109, 105, 109, 108, 111, 107, 32.18192 + 94, 85, 96, 125, 151, 132, 121, 117, 128, 143, 148, 147, 144, 133, 175, 255, 32.18193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 134, 32.18199 + 132, 130, 128, 126, 118, 99, 73, 54, 47, 49, 45, 38, 40, 50, 57, 58, 32.18200 + 64, 62, 50, 35, 30, 53, 98, 134, 137, 112, 93, 64, 91, 124, 153, 133, 32.18201 + 138, 141, 148, 154, 152, 146, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 203, 160, 133, 32.18207 + 133, 126, 116, 119, 112, 103, 95, 82, 64, 41, 26, 33, 35, 30, 24, 24, 32.18208 + 31, 36, 35, 43, 44, 40, 29, 25, 40, 69, 94, 139, 115, 116, 67, 71, 32.18209 + 65, 124, 140, 149, 142, 138, 138, 139, 137, 139, 144, 154, 186, 255, 255, 255, 32.18210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 200, 153, 128, 32.18215 + 213, 130, 124, 106, 75, 48, 35, 30, 26, 25, 27, 26, 21, 15, 20, 22, 32.18216 + 21, 17, 17, 21, 23, 23, 21, 26, 28, 25, 22, 25, 37, 46, 108, 95, 32.18217 + 126, 85, 78, 29, 86, 113, 114, 115, 125, 141, 152, 151, 145, 142, 141, 137, 32.18218 + 136, 141, 144, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18223 + 255, 199, 80, 67, 52, 43, 36, 24, 12, 17, 12, 7, 6, 10, 13, 13, 32.18224 + 11, 14, 15, 16, 16, 16, 19, 21, 21, 14, 18, 22, 24, 22, 21, 20, 32.18225 + 20, 38, 29, 63, 52, 48, 8, 32, 42, 44, 54, 76, 103, 119, 122, 119, 32.18226 + 117, 124, 120, 121, 135, 145, 147, 141, 138, 172, 255, 255, 255, 255, 255, 255, 32.18227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18231 + 255, 255, 219, 89, 40, 38, 28, 15, 9, 12, 17, 19, 29, 25, 20, 17, 32.18232 + 17, 17, 15, 14, 12, 13, 14, 16, 16, 15, 15, 17, 18, 18, 18, 21, 32.18233 + 22, 23, 20, 17, 28, 21, 25, 31, 25, 28, 32, 30, 31, 35, 42, 52, 32.18234 + 60, 70, 86, 100, 112, 104, 104, 118, 134, 139, 136, 133, 149, 134, 114, 126, 32.18235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18239 + 255, 255, 255, 211, 80, 32, 31, 16, 27, 34, 32, 27, 26, 24, 22, 13, 32.18240 + 12, 12, 13, 15, 17, 16, 15, 18, 17, 16, 18, 17, 12, 11, 12, 20, 32.18241 + 17, 14, 14, 18, 22, 22, 21, 12, 18, 12, 21, 6, 28, 24, 17, 45, 32.18242 + 44, 43, 44, 44, 52, 72, 92, 84, 78, 78, 89, 105, 121, 135, 145, 122, 32.18243 + 141, 130, 113, 58, 81, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18247 + 255, 255, 255, 255, 255, 180, 18, 18, 21, 20, 26, 25, 18, 8, 6, 12, 32.18248 + 20, 22, 24, 23, 21, 20, 18, 15, 11, 9, 21, 18, 17, 19, 18, 13, 32.18249 + 11, 14, 19, 15, 11, 11, 14, 20, 21, 22, 21, 27, 36, 45, 38, 46, 32.18250 + 40, 27, 29, 34, 40, 45, 45, 44, 50, 59, 54, 58, 63, 67, 71, 84, 32.18251 + 111, 135, 115, 154, 151, 123, 62, 119, 111, 52, 158, 255, 255, 255, 255, 255, 32.18252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18255 + 255, 255, 255, 255, 255, 255, 255, 183, 18, 23, 26, 20, 20, 19, 20, 19, 32.18256 + 18, 20, 23, 21, 15, 17, 17, 18, 18, 20, 20, 20, 20, 16, 11, 10, 32.18257 + 15, 15, 10, 10, 15, 17, 14, 11, 11, 14, 18, 20, 20, 23, 13, 29, 32.18258 + 33, 46, 40, 44, 29, 32, 33, 39, 45, 45, 40, 38, 39, 43, 55, 64, 32.18259 + 57, 42, 42, 67, 96, 142, 129, 115, 118, 54, 89, 77, 31, 80, 124, 255, 32.18260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 20, 17, 21, 21, 18, 17, 32.18264 + 18, 21, 19, 15, 17, 23, 24, 19, 25, 19, 16, 21, 29, 32, 26, 19, 32.18265 + 22, 18, 13, 10, 10, 10, 10, 9, 10, 14, 15, 14, 14, 18, 23, 25, 32.18266 + 22, 32, 37, 36, 42, 51, 49, 39, 25, 27, 30, 31, 32, 31, 31, 31, 32.18267 + 30, 39, 44, 45, 46, 51, 52, 48, 84, 111, 131, 86, 43, 79, 93, 37, 32.18268 + 38, 99, 137, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 28, 18, 17, 19, 32.18272 + 18, 18, 20, 18, 20, 18, 16, 18, 23, 22, 16, 25, 20, 16, 18, 25, 32.18273 + 28, 26, 22, 24, 22, 18, 16, 18, 19, 18, 17, 16, 16, 14, 15, 18, 32.18274 + 22, 21, 20, 19, 22, 29, 38, 42, 39, 34, 32, 30, 27, 25, 27, 31, 32.18275 + 32, 31, 28, 23, 30, 34, 33, 34, 37, 37, 33, 58, 61, 82, 84, 62, 32.18276 + 68, 81, 68, 45, 69, 98, 142, 172, 255, 255, 255, 255, 255, 255, 255, 255, 32.18277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 20, 19, 32.18280 + 20, 21, 19, 14, 15, 19, 20, 19, 17, 16, 20, 24, 22, 15, 24, 21, 32.18281 + 18, 18, 20, 23, 24, 24, 20, 18, 16, 17, 19, 20, 20, 19, 23, 18, 32.18282 + 14, 16, 20, 22, 21, 18, 26, 21, 29, 45, 48, 35, 27, 30, 33, 26, 32.18283 + 19, 20, 26, 30, 29, 25, 18, 24, 28, 30, 33, 38, 41, 41, 55, 49, 32.18284 + 64, 86, 85, 70, 71, 89, 60, 61, 68, 133, 158, 137, 166, 255, 255, 255, 32.18285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 32.18288 + 18, 16, 19, 22, 22, 17, 13, 13, 16, 22, 19, 16, 18, 24, 26, 22, 32.18289 + 16, 22, 22, 21, 20, 20, 20, 22, 24, 18, 16, 15, 16, 18, 19, 19, 32.18290 + 18, 23, 18, 15, 17, 18, 18, 20, 23, 32, 30, 34, 44, 45, 35, 28, 32.18291 + 27, 28, 22, 16, 14, 17, 21, 23, 24, 21, 23, 26, 27, 30, 33, 37, 32.18292 + 40, 32, 46, 50, 56, 62, 50, 45, 64, 63, 69, 57, 102, 102, 91, 85, 32.18293 + 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18296 + 255, 176, 31, 13, 17, 17, 17, 16, 16, 16, 15, 13, 18, 15, 16, 21, 32.18297 + 26, 25, 21, 17, 20, 23, 25, 25, 24, 22, 22, 23, 21, 19, 17, 17, 32.18298 + 19, 21, 22, 20, 19, 17, 18, 18, 15, 13, 20, 31, 31, 37, 36, 31, 32.18299 + 30, 32, 28, 19, 19, 19, 17, 13, 11, 13, 19, 24, 29, 27, 25, 21, 32.18300 + 17, 16, 17, 21, 12, 37, 37, 30, 37, 34, 32, 53, 53, 58, 46, 86, 32.18301 + 77, 57, 55, 84, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18304 + 255, 255, 204, 64, 16, 25, 12, 13, 12, 11, 9, 14, 20, 20, 15, 14, 32.18305 + 14, 18, 25, 28, 25, 21, 22, 21, 23, 26, 26, 25, 23, 21, 20, 22, 32.18306 + 19, 15, 16, 18, 21, 21, 22, 18, 18, 23, 25, 20, 14, 21, 36, 35, 32.18307 + 41, 37, 24, 23, 30, 27, 16, 14, 18, 20, 17, 12, 12, 20, 26, 37, 32.18308 + 31, 29, 26, 22, 20, 24, 30, 28, 37, 33, 34, 40, 29, 31, 57, 52, 32.18309 + 38, 33, 86, 90, 44, 30, 53, 91, 83, 255, 255, 255, 255, 255, 255, 255, 32.18310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18312 + 255, 255, 255, 255, 174, 14, 20, 8, 22, 14, 10, 13, 12, 10, 14, 21, 32.18313 + 24, 21, 15, 17, 25, 33, 33, 29, 28, 32, 24, 23, 22, 22, 23, 22, 32.18314 + 20, 18, 23, 18, 15, 14, 17, 22, 26, 28, 24, 24, 30, 38, 33, 23, 32.18315 + 24, 35, 43, 42, 36, 30, 28, 28, 25, 22, 16, 19, 22, 22, 21, 21, 32.18316 + 25, 27, 40, 34, 32, 34, 33, 34, 42, 51, 38, 34, 27, 27, 32, 25, 32.18317 + 23, 35, 47, 32, 28, 64, 84, 39, 27, 33, 57, 39, 67, 255, 255, 255, 32.18318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18320 + 255, 255, 255, 255, 255, 255, 174, 16, 16, 5, 15, 5, 14, 12, 18, 20, 32.18321 + 16, 17, 23, 26, 24, 20, 23, 33, 42, 41, 34, 36, 42, 25, 23, 19, 32.18322 + 17, 18, 20, 19, 18, 27, 23, 18, 19, 23, 30, 35, 38, 29, 28, 34, 32.18323 + 46, 45, 32, 25, 29, 46, 35, 30, 34, 31, 21, 18, 23, 19, 20, 23, 32.18324 + 26, 29, 30, 29, 27, 39, 33, 29, 30, 30, 29, 37, 47, 39, 39, 31, 32.18325 + 23, 29, 40, 35, 23, 29, 30, 26, 27, 56, 37, 46, 36, 41, 76, 112, 32.18326 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18328 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 26, 8, 6, 11, 12, 11, 12, 32.18329 + 13, 9, 17, 18, 11, 15, 25, 27, 22, 24, 35, 36, 24, 25, 39, 45, 32.18330 + 36, 26, 15, 13, 19, 24, 21, 16, 18, 26, 24, 10, 32, 50, 34, 40, 32.18331 + 53, 39, 49, 49, 55, 28, 33, 42, 31, 24, 39, 30, 29, 35, 17, 24, 32.18332 + 27, 25, 23, 26, 36, 42, 36, 24, 34, 39, 37, 28, 24, 31, 39, 40, 32.18333 + 58, 43, 26, 22, 29, 34, 30, 24, 31, 20, 19, 35, 45, 45, 50, 61, 32.18334 + 63, 75, 98, 94, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 72, 30, 16, 5, 6, 10, 32.18337 + 10, 8, 8, 7, 5, 14, 18, 13, 19, 28, 29, 16, 20, 29, 29, 24, 32.18338 + 33, 46, 45, 44, 26, 16, 21, 24, 17, 15, 20, 30, 36, 35, 19, 37, 32.18339 + 55, 41, 46, 79, 53, 51, 49, 53, 26, 33, 45, 47, 35, 40, 28, 27, 32.18340 + 34, 19, 25, 14, 32, 49, 50, 41, 33, 29, 25, 27, 30, 27, 20, 19, 32.18341 + 24, 29, 31, 44, 33, 21, 20, 25, 29, 26, 21, 26, 25, 24, 30, 40, 32.18342 + 50, 53, 51, 74, 59, 66, 62, 106, 157, 255, 255, 255, 255, 255, 255, 255, 32.18343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 87, 62, 14, 9, 32.18345 + 5, 10, 13, 11, 7, 7, 7, 5, 13, 18, 15, 20, 29, 26, 12, 16, 32.18346 + 23, 23, 26, 47, 57, 46, 46, 25, 16, 24, 23, 10, 12, 26, 36, 43, 32.18347 + 48, 38, 56, 78, 69, 74, 74, 57, 52, 40, 51, 41, 47, 44, 54, 43, 32.18348 + 39, 27, 23, 29, 19, 24, 20, 46, 66, 66, 48, 35, 29, 28, 22, 23, 32.18349 + 20, 16, 15, 19, 22, 21, 28, 23, 19, 19, 22, 25, 25, 23, 27, 32, 32.18350 + 30, 26, 36, 51, 51, 38, 72, 47, 60, 72, 95, 104, 160, 255, 255, 255, 32.18351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 135, 134, 80, 32.18353 + 23, 9, 10, 11, 13, 14, 13, 11, 11, 11, 6, 13, 18, 15, 19, 23, 32.18354 + 18, 11, 16, 20, 18, 27, 53, 61, 42, 36, 21, 13, 15, 15, 10, 19, 32.18355 + 34, 29, 37, 52, 48, 63, 86, 80, 81, 66, 68, 68, 44, 59, 63, 61, 32.18356 + 34, 53, 50, 48, 38, 32, 31, 29, 33, 47, 56, 62, 61, 55, 49, 40, 32.18357 + 32, 25, 24, 22, 20, 18, 19, 19, 18, 22, 22, 20, 21, 22, 26, 30, 32.18358 + 32, 34, 34, 28, 24, 32, 45, 43, 32, 48, 30, 55, 76, 81, 97, 81, 32.18359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 32.18361 + 45, 23, 13, 11, 12, 13, 13, 12, 12, 14, 16, 16, 13, 6, 11, 16, 32.18362 + 14, 19, 20, 13, 11, 15, 19, 16, 22, 47, 52, 30, 22, 20, 13, 4, 32.18363 + 7, 21, 37, 44, 46, 53, 75, 72, 76, 95, 89, 84, 95, 87, 85, 69, 32.18364 + 79, 65, 58, 40, 54, 64, 67, 65, 56, 48, 53, 56, 61, 62, 62, 60, 32.18365 + 61, 60, 52, 43, 36, 34, 31, 29, 25, 20, 20, 20, 22, 24, 23, 22, 32.18366 + 22, 27, 36, 42, 41, 32, 24, 26, 33, 38, 40, 40, 46, 36, 52, 62, 32.18367 + 57, 86, 64, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18369 + 196, 34, 20, 17, 14, 13, 15, 14, 14, 12, 8, 10, 15, 19, 18, 16, 32.18370 + 7, 9, 15, 16, 22, 24, 15, 12, 13, 18, 16, 17, 31, 33, 15, 14, 32.18371 + 18, 13, 4, 10, 34, 51, 53, 59, 65, 93, 91, 89, 109, 105, 96, 120, 32.18372 + 88, 84, 87, 91, 55, 58, 72, 59, 75, 77, 82, 74, 64, 74, 74, 62, 32.18373 + 70, 76, 74, 69, 67, 63, 59, 51, 49, 46, 40, 31, 22, 21, 26, 23, 32.18374 + 24, 23, 22, 22, 27, 34, 41, 42, 33, 27, 30, 34, 37, 40, 45, 45, 32.18375 + 47, 52, 56, 50, 71, 48, 75, 104, 255, 255, 255, 255, 255, 255, 255, 255, 32.18376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18377 + 255, 255, 201, 44, 20, 22, 12, 7, 13, 13, 13, 15, 12, 8, 11, 20, 32.18378 + 23, 20, 25, 13, 13, 17, 19, 25, 26, 17, 14, 15, 21, 22, 14, 17, 32.18379 + 18, 7, 13, 13, 11, 11, 21, 37, 50, 53, 55, 59, 89, 88, 81, 101, 32.18380 + 103, 95, 114, 88, 89, 89, 93, 64, 78, 99, 70, 83, 74, 82, 79, 70, 32.18381 + 85, 80, 73, 81, 85, 82, 79, 78, 76, 73, 66, 65, 63, 54, 39, 26, 32.18382 + 26, 34, 24, 25, 24, 23, 23, 26, 31, 36, 44, 49, 46, 37, 35, 40, 32.18383 + 40, 36, 30, 35, 35, 47, 49, 46, 26, 31, 6, 255, 255, 255, 255, 255, 32.18384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18385 + 255, 255, 255, 255, 115, 55, 22, 14, 13, 2, 15, 22, 0, 13, 15, 11, 32.18386 + 9, 15, 26, 28, 23, 35, 21, 17, 20, 20, 25, 25, 15, 16, 16, 26, 32.18387 + 27, 15, 11, 12, 6, 13, 5, 6, 19, 28, 33, 41, 51, 79, 79, 105, 32.18388 + 97, 85, 104, 106, 97, 101, 104, 110, 90, 92, 83, 99, 101, 84, 89, 70, 32.18389 + 77, 79, 75, 91, 82, 94, 89, 82, 79, 85, 91, 89, 81, 78, 77, 74, 32.18390 + 64, 45, 28, 31, 41, 24, 25, 26, 27, 26, 27, 29, 31, 48, 65, 63, 32.18391 + 43, 33, 40, 36, 22, 43, 40, 28, 46, 57, 41, 35, 37, 43, 81, 255, 32.18392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18393 + 255, 255, 255, 255, 255, 255, 255, 46, 14, 16, 16, 15, 13, 13, 14, 15, 32.18394 + 10, 15, 17, 14, 12, 15, 22, 26, 31, 30, 26, 22, 21, 20, 17, 12, 32.18395 + 3, 39, 41, 47, 37, 12, 22, 23, 17, 6, 26, 45, 47, 64, 33, 74, 32.18396 + 79, 78, 112, 96, 89, 106, 93, 115, 110, 105, 104, 106, 104, 100, 103, 111, 32.18397 + 104, 104, 106, 107, 102, 96, 96, 100, 106, 103, 101, 101, 100, 100, 95, 91, 32.18398 + 87, 94, 89, 65, 47, 43, 48, 50, 37, 36, 34, 31, 33, 39, 39, 38, 32.18399 + 46, 44, 45, 48, 41, 29, 23, 25, 21, 27, 33, 36, 37, 43, 48, 52, 32.18400 + 35, 68, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 22, 13, 14, 15, 15, 13, 32.18402 + 12, 13, 14, 13, 15, 15, 11, 11, 15, 17, 18, 19, 20, 20, 19, 17, 32.18403 + 16, 12, 9, 34, 50, 33, 32, 34, 24, 24, 9, 27, 10, 41, 47, 51, 32.18404 + 46, 44, 104, 90, 88, 117, 101, 95, 111, 96, 114, 108, 105, 105, 107, 105, 32.18405 + 102, 104, 111, 102, 101, 102, 105, 102, 99, 100, 106, 103, 98, 96, 101, 109, 32.18406 + 112, 108, 102, 88, 93, 89, 71, 53, 44, 46, 49, 41, 38, 36, 34, 37, 32.18407 + 39, 39, 38, 46, 43, 42, 44, 40, 33, 28, 30, 32, 31, 28, 27, 31, 32.18408 + 41, 52, 59, 27, 77, 49, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 14, 13, 14, 32.18410 + 15, 14, 12, 11, 12, 13, 19, 20, 16, 11, 11, 15, 14, 10, 14, 14, 32.18411 + 14, 14, 13, 13, 15, 17, 39, 56, 43, 34, 30, 19, 17, 11, 1, 18, 32.18412 + 78, 66, 72, 52, 57, 97, 100, 96, 117, 103, 100, 113, 98, 109, 106, 105, 32.18413 + 106, 109, 108, 105, 107, 111, 103, 101, 101, 103, 103, 102, 105, 111, 108, 102, 32.18414 + 97, 101, 110, 113, 105, 96, 97, 97, 95, 86, 69, 55, 53, 61, 44, 42, 32.18415 + 39, 40, 43, 45, 47, 49, 52, 45, 42, 42, 42, 37, 33, 32, 25, 25, 32.18416 + 29, 36, 45, 51, 56, 57, 47, 46, 77, 36, 255, 255, 255, 255, 255, 255, 32.18417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 27, 32.18418 + 14, 13, 14, 15, 14, 12, 11, 11, 13, 21, 25, 23, 15, 12, 15, 15, 32.18419 + 10, 17, 15, 13, 13, 13, 15, 22, 30, 31, 41, 39, 41, 38, 18, 8, 32.18420 + 10, 9, 48, 84, 44, 44, 65, 83, 102, 102, 98, 110, 101, 100, 111, 99, 32.18421 + 103, 104, 106, 108, 110, 109, 108, 110, 112, 108, 105, 104, 106, 106, 105, 109, 32.18422 + 115, 113, 109, 106, 109, 114, 113, 106, 98, 108, 105, 105, 102, 88, 72, 72, 32.18423 + 82, 67, 60, 51, 49, 49, 49, 52, 55, 56, 51, 45, 45, 45, 42, 38, 32.18424 + 32, 24, 24, 28, 41, 52, 60, 63, 65, 66, 49, 59, 37, 137, 255, 255, 32.18425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18426 + 38, 25, 16, 7, 12, 13, 14, 14, 12, 12, 14, 15, 17, 26, 26, 17, 32.18427 + 12, 17, 19, 14, 15, 12, 12, 17, 19, 18, 23, 30, 42, 21, 15, 33, 32.18428 + 46, 27, 1, 5, 24, 63, 66, 44, 39, 82, 89, 100, 103, 100, 105, 100, 32.18429 + 102, 111, 103, 102, 104, 108, 110, 110, 110, 111, 112, 112, 114, 109, 107, 110, 32.18430 + 111, 110, 111, 116, 109, 111, 114, 116, 117, 117, 115, 112, 111, 107, 107, 106, 32.18431 + 96, 84, 86, 98, 98, 84, 70, 63, 56, 51, 52, 57, 57, 54, 49, 49, 32.18432 + 52, 52, 47, 40, 43, 31, 23, 27, 39, 52, 65, 77, 65, 59, 34, 67, 32.18433 + 61, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18434 + 255, 255, 255, 26, 17, 14, 7, 11, 13, 14, 15, 14, 14, 17, 18, 12, 32.18435 + 22, 24, 16, 16, 26, 27, 20, 13, 8, 10, 19, 23, 19, 18, 22, 45, 32.18436 + 21, 18, 25, 32, 19, 2, 25, 37, 55, 50, 69, 70, 94, 83, 98, 107, 32.18437 + 107, 107, 105, 107, 113, 111, 106, 107, 111, 112, 110, 109, 112, 113, 112, 118, 32.18438 + 112, 110, 112, 113, 113, 113, 115, 107, 111, 115, 115, 112, 108, 107, 107, 103, 32.18439 + 103, 104, 102, 95, 89, 93, 100, 104, 91, 79, 75, 70, 65, 67, 74, 60, 32.18440 + 60, 57, 55, 58, 62, 60, 55, 48, 37, 30, 33, 37, 42, 51, 64, 59, 32.18441 + 46, 55, 52, 74, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18442 + 255, 255, 255, 255, 255, 176, 13, 8, 14, 11, 10, 12, 14, 15, 15, 16, 32.18443 + 20, 22, 14, 20, 19, 16, 27, 44, 42, 27, 31, 16, 8, 13, 20, 20, 32.18444 + 23, 29, 36, 31, 38, 23, 16, 17, 15, 48, 61, 60, 50, 66, 84, 93, 32.18445 + 104, 122, 112, 116, 111, 111, 112, 114, 116, 110, 111, 115, 115, 110, 108, 112, 32.18446 + 114, 113, 115, 110, 108, 113, 115, 113, 112, 113, 109, 111, 112, 113, 111, 106, 32.18447 + 102, 98, 96, 103, 106, 102, 96, 95, 97, 96, 96, 86, 81, 85, 87, 81, 32.18448 + 81, 89, 74, 74, 68, 61, 60, 66, 70, 68, 45, 40, 41, 48, 47, 39, 32.18449 + 40, 48, 56, 54, 59, 65, 66, 86, 140, 255, 255, 255, 255, 255, 255, 255, 32.18450 + 255, 255, 255, 255, 255, 255, 255, 255, 15, 18, 9, 12, 7, 10, 12, 14, 32.18451 + 16, 16, 18, 22, 24, 20, 21, 17, 18, 39, 60, 54, 34, 57, 30, 7, 32.18452 + 6, 13, 21, 34, 47, 36, 34, 36, 15, 21, 41, 31, 44, 41, 59, 76, 32.18453 + 80, 113, 108, 118, 110, 115, 121, 114, 114, 113, 113, 118, 111, 113, 117, 116, 32.18454 + 109, 106, 112, 115, 113, 112, 107, 107, 112, 116, 114, 112, 112, 108, 107, 109, 32.18455 + 114, 119, 119, 114, 109, 96, 108, 113, 106, 101, 103, 100, 94, 100, 91, 88, 32.18456 + 95, 94, 83, 79, 83, 89, 88, 79, 65, 59, 65, 72, 74, 56, 47, 44, 32.18457 + 46, 42, 36, 43, 57, 65, 60, 69, 69, 78, 93, 81, 255, 255, 255, 255, 32.18458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 32, 11, 11, 17, 11, 32.18459 + 8, 13, 26, 12, 9, 20, 14, 17, 37, 16, 19, 13, 17, 68, 43, 37, 32.18460 + 25, 41, 3, 23, 25, 25, 31, 45, 58, 71, 47, 44, 40, 47, 38, 53, 32.18461 + 69, 97, 120, 120, 113, 114, 116, 117, 121, 121, 120, 119, 118, 118, 118, 119, 32.18462 + 117, 113, 109, 108, 109, 112, 115, 116, 117, 115, 111, 110, 110, 111, 110, 109, 32.18463 + 110, 111, 111, 111, 111, 111, 111, 112, 106, 108, 110, 111, 108, 106, 105, 107, 32.18464 + 96, 92, 89, 89, 91, 92, 88, 85, 83, 82, 82, 82, 83, 81, 79, 77, 32.18465 + 81, 83, 36, 44, 48, 26, 48, 44, 34, 40, 41, 40, 47, 58, 58, 255, 32.18466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 25, 10, 32.18467 + 10, 12, 10, 13, 14, 27, 16, 11, 18, 14, 23, 23, 21, 18, 16, 9, 32.18468 + 38, 36, 59, 16, 34, 29, 19, 20, 16, 32, 36, 40, 52, 63, 71, 74, 32.18469 + 84, 82, 102, 106, 119, 126, 120, 116, 121, 125, 124, 123, 122, 121, 120, 119, 32.18470 + 119, 119, 119, 117, 114, 110, 108, 109, 113, 115, 116, 116, 114, 112, 111, 112, 32.18471 + 112, 110, 109, 110, 111, 112, 112, 112, 111, 110, 110, 112, 113, 113, 111, 108, 32.18472 + 104, 102, 102, 109, 109, 104, 95, 87, 84, 84, 86, 84, 83, 81, 83, 85, 32.18473 + 84, 82, 81, 83, 84, 53, 55, 51, 32, 41, 38, 43, 43, 39, 36, 36, 32.18474 + 39, 39, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.18475 + 15, 15, 11, 13, 8, 14, 16, 13, 27, 20, 14, 16, 15, 32, 24, 38, 32.18476 + 13, 19, 11, 14, 28, 63, 20, 22, 45, 14, 19, 22, 35, 22, 20, 24, 32.18477 + 73, 86, 89, 96, 96, 115, 125, 129, 126, 117, 118, 125, 127, 123, 124, 124, 32.18478 + 123, 122, 121, 121, 121, 122, 120, 116, 113, 112, 113, 116, 118, 118, 115, 114, 32.18479 + 113, 114, 116, 116, 113, 111, 112, 113, 113, 114, 113, 111, 109, 107, 113, 114, 32.18480 + 114, 112, 108, 106, 104, 104, 115, 116, 111, 98, 81, 76, 81, 89, 86, 85, 32.18481 + 85, 87, 88, 89, 88, 87, 86, 84, 77, 72, 61, 44, 33, 28, 38, 35, 32.18482 + 33, 33, 34, 33, 39, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.18483 + 255, 255, 11, 14, 8, 13, 17, 8, 19, 17, 11, 25, 22, 16, 17, 19, 32.18484 + 42, 38, 62, 10, 20, 23, 14, 24, 38, 34, 12, 36, 17, 21, 39, 33, 32.18485 + 15, 33, 25, 87, 104, 105, 111, 107, 120, 118, 120, 121, 119, 121, 125, 123, 32.18486 + 118, 125, 125, 124, 123, 122, 122, 122, 123, 123, 120, 117, 116, 117, 120, 121, 32.18487 + 122, 114, 114, 114, 116, 118, 118, 114, 112, 112, 114, 115, 116, 115, 112, 108, 32.18488 + 106, 109, 111, 112, 112, 111, 110, 112, 113, 113, 115, 112, 100, 86, 81, 87, 32.18489 + 96, 92, 91, 90, 90, 92, 93, 92, 90, 90, 82, 90, 83, 72, 62, 35, 32.18490 + 17, 24, 20, 24, 32, 33, 31, 40, 53, 255, 255, 255, 255, 255, 255, 255, 32.18491 + 255, 255, 255, 255, 255, 12, 18, 7, 14, 19, 7, 17, 15, 8, 21, 20, 32.18492 + 18, 21, 24, 48, 37, 74, 16, 24, 30, 21, 23, 11, 36, 10, 22, 29, 32.18493 + 17, 41, 24, 21, 36, 29, 76, 103, 108, 122, 119, 123, 112, 119, 123, 123, 32.18494 + 123, 124, 124, 122, 125, 126, 125, 124, 122, 122, 123, 123, 123, 120, 118, 117, 32.18495 + 118, 121, 121, 122, 116, 116, 116, 117, 119, 119, 117, 114, 115, 117, 118, 119, 32.18496 + 117, 114, 110, 108, 108, 110, 112, 113, 114, 115, 117, 120, 115, 116, 114, 107, 32.18497 + 100, 96, 99, 102, 99, 97, 95, 94, 94, 95, 93, 92, 93, 80, 90, 89, 32.18498 + 83, 81, 48, 13, 16, 14, 19, 27, 28, 23, 28, 39, 255, 255, 255, 255, 32.18499 + 255, 255, 255, 255, 255, 255, 255, 174, 16, 22, 10, 13, 19, 5, 11, 12, 32.18500 + 7, 19, 16, 18, 26, 28, 44, 23, 63, 23, 29, 25, 23, 25, 8, 22, 32.18501 + 20, 24, 40, 15, 27, 17, 32, 33, 42, 53, 91, 93, 117, 115, 114, 118, 32.18502 + 120, 122, 118, 113, 115, 120, 126, 126, 125, 124, 123, 122, 122, 123, 123, 120, 32.18503 + 118, 116, 116, 117, 119, 119, 120, 120, 119, 118, 119, 119, 119, 117, 116, 117, 32.18504 + 118, 119, 120, 118, 116, 113, 112, 113, 114, 115, 115, 115, 115, 117, 120, 117, 32.18505 + 116, 114, 110, 106, 102, 101, 99, 103, 100, 97, 95, 95, 95, 93, 93, 95, 32.18506 + 84, 85, 92, 90, 91, 70, 20, 14, 14, 18, 25, 27, 27, 31, 36, 38, 32.18507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 13, 21, 12, 11, 20, 32.18508 + 9, 9, 11, 8, 19, 12, 16, 30, 28, 35, 24, 39, 15, 30, 23, 27, 32.18509 + 29, 16, 13, 35, 33, 36, 29, 21, 23, 26, 47, 83, 53, 98, 92, 121, 32.18510 + 120, 116, 123, 122, 119, 114, 110, 110, 115, 122, 125, 125, 124, 123, 121, 121, 32.18511 + 122, 122, 121, 119, 117, 118, 120, 121, 121, 121, 123, 122, 120, 120, 119, 120, 32.18512 + 118, 116, 119, 120, 120, 120, 120, 119, 117, 117, 117, 118, 118, 116, 114, 114, 32.18513 + 116, 118, 116, 116, 114, 110, 105, 101, 100, 99, 102, 99, 96, 95, 96, 96, 32.18514 + 96, 96, 95, 92, 82, 97, 92, 93, 92, 31, 12, 15, 18, 20, 27, 37, 32.18515 + 40, 41, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 22, 8, 16, 32.18516 + 12, 11, 23, 16, 13, 11, 11, 20, 9, 15, 32, 27, 27, 38, 24, 1, 32.18517 + 28, 27, 37, 33, 21, 18, 48, 39, 27, 50, 28, 36, 12, 47, 103, 48, 32.18518 + 100, 90, 121, 124, 121, 126, 123, 122, 120, 118, 116, 116, 117, 125, 124, 123, 32.18519 + 122, 121, 121, 121, 122, 125, 123, 121, 121, 123, 125, 125, 125, 126, 124, 120, 32.18520 + 118, 119, 118, 118, 117, 121, 121, 120, 120, 120, 121, 120, 120, 117, 118, 118, 32.18521 + 116, 115, 115, 118, 120, 119, 120, 119, 114, 108, 104, 105, 108, 100, 98, 95, 32.18522 + 95, 96, 98, 98, 97, 95, 99, 83, 100, 92, 91, 105, 41, 17, 19, 18, 32.18523 + 14, 21, 34, 38, 33, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 32.18524 + 23, 15, 12, 16, 19, 17, 14, 13, 12, 14, 17, 20, 23, 26, 29, 31, 32.18525 + 33, 35, 30, 10, 52, 16, 19, 21, 28, 27, 21, 37, 38, 21, 24, 19, 32.18526 + 66, 88, 97, 83, 100, 120, 113, 125, 127, 127, 125, 120, 115, 115, 120, 125, 32.18527 + 129, 130, 125, 121, 121, 126, 127, 124, 119, 120, 121, 123, 124, 125, 125, 125, 32.18528 + 128, 123, 118, 119, 123, 126, 124, 120, 111, 114, 117, 120, 121, 120, 117, 116, 32.18529 + 119, 118, 119, 121, 120, 116, 117, 122, 117, 117, 116, 116, 113, 110, 108, 106, 32.18530 + 101, 99, 96, 95, 97, 100, 100, 100, 101, 94, 90, 92, 95, 94, 93, 96, 32.18531 + 21, 16, 23, 24, 23, 41, 50, 30, 43, 255, 255, 255, 255, 255, 255, 255, 32.18532 + 255, 255, 68, 21, 16, 14, 18, 21, 19, 16, 15, 13, 13, 12, 13, 15, 32.18533 + 20, 24, 26, 35, 39, 22, 18, 36, 29, 17, 12, 20, 21, 15, 29, 29, 32.18534 + 14, 20, 17, 61, 85, 95, 76, 90, 114, 112, 124, 123, 124, 124, 120, 117, 32.18535 + 117, 121, 127, 127, 127, 124, 120, 122, 128, 129, 127, 129, 128, 128, 128, 127, 32.18536 + 127, 125, 126, 126, 121, 118, 119, 124, 126, 123, 120, 113, 115, 118, 120, 120, 32.18537 + 119, 116, 115, 119, 118, 119, 121, 120, 116, 117, 122, 117, 117, 116, 116, 113, 32.18538 + 111, 108, 107, 105, 102, 99, 97, 98, 99, 99, 99, 104, 98, 92, 95, 95, 32.18539 + 93, 91, 93, 97, 23, 9, 12, 27, 25, 35, 49, 43, 255, 255, 255, 255, 32.18540 + 255, 255, 255, 255, 255, 19, 19, 16, 15, 20, 23, 20, 17, 16, 16, 14, 32.18541 + 11, 11, 13, 18, 24, 27, 34, 40, 19, 26, 20, 47, 23, 10, 18, 21, 32.18542 + 16, 26, 23, 10, 20, 20, 55, 82, 96, 75, 85, 114, 117, 127, 120, 122, 32.18543 + 124, 122, 120, 119, 122, 127, 125, 125, 123, 121, 124, 130, 132, 130, 134, 133, 32.18544 + 131, 129, 128, 128, 128, 129, 127, 125, 123, 125, 127, 128, 125, 122, 116, 117, 32.18545 + 119, 120, 120, 118, 116, 114, 120, 118, 119, 122, 120, 117, 118, 122, 118, 118, 32.18546 + 117, 116, 113, 112, 109, 108, 108, 105, 101, 99, 99, 100, 99, 99, 106, 100, 32.18547 + 94, 96, 97, 94, 91, 93, 109, 19, 2, 13, 34, 19, 22, 49, 42, 255, 32.18548 + 255, 255, 255, 255, 255, 255, 255, 181, 16, 19, 16, 16, 21, 21, 18, 14, 32.18549 + 14, 19, 18, 16, 16, 19, 24, 29, 31, 28, 34, 30, 26, 16, 53, 36, 32.18550 + 16, 19, 24, 18, 24, 18, 7, 21, 23, 42, 69, 93, 79, 86, 116, 122, 32.18551 + 126, 120, 123, 125, 124, 122, 120, 121, 125, 125, 126, 125, 122, 125, 132, 133, 32.18552 + 130, 133, 132, 130, 128, 128, 130, 131, 133, 129, 128, 128, 130, 131, 131, 128, 32.18553 + 125, 120, 121, 121, 121, 120, 118, 115, 114, 120, 119, 120, 122, 120, 117, 118, 32.18554 + 122, 120, 119, 117, 116, 114, 111, 110, 109, 108, 105, 101, 100, 100, 101, 101, 32.18555 + 101, 103, 98, 94, 98, 99, 98, 95, 97, 80, 43, 9, 22, 23, 20, 27, 32.18556 + 37, 42, 255, 255, 255, 255, 255, 255, 255, 255, 16, 11, 18, 15, 15, 18, 32.18557 + 18, 14, 11, 12, 14, 14, 16, 19, 21, 25, 28, 30, 21, 27, 51, 17, 32.18558 + 20, 42, 42, 22, 20, 25, 16, 18, 12, 3, 18, 20, 25, 46, 79, 78, 32.18559 + 85, 116, 120, 117, 122, 125, 127, 126, 122, 119, 119, 121, 127, 128, 127, 125, 32.18560 + 127, 132, 133, 130, 135, 134, 132, 131, 131, 132, 134, 135, 130, 130, 130, 132, 32.18561 + 133, 132, 129, 127, 124, 124, 124, 123, 121, 119, 117, 115, 121, 119, 120, 123, 32.18562 + 121, 117, 118, 123, 121, 120, 118, 116, 114, 112, 110, 109, 106, 103, 101, 101, 32.18563 + 101, 103, 103, 104, 105, 100, 96, 99, 100, 99, 96, 98, 90, 91, 13, 29, 32.18564 + 11, 24, 39, 33, 41, 255, 255, 255, 255, 255, 255, 255, 255, 16, 13, 18, 32.18565 + 14, 14, 16, 15, 12, 11, 14, 9, 10, 13, 15, 17, 20, 22, 23, 19, 32.18566 + 26, 68, 7, 27, 28, 36, 26, 25, 30, 18, 19, 15, 10, 23, 23, 25, 32.18567 + 32, 65, 78, 90, 118, 121, 116, 125, 126, 128, 126, 122, 119, 119, 121, 128, 32.18568 + 129, 128, 126, 129, 134, 134, 130, 141, 140, 138, 136, 135, 135, 135, 135, 130, 32.18569 + 130, 130, 131, 131, 131, 129, 128, 127, 127, 126, 125, 123, 121, 119, 118, 121, 32.18570 + 119, 120, 123, 121, 118, 119, 123, 122, 121, 118, 116, 114, 112, 111, 111, 107, 32.18571 + 105, 103, 103, 104, 106, 106, 106, 111, 104, 100, 102, 102, 98, 94, 93, 101, 32.18572 + 103, 23, 36, 27, 37, 40, 29, 40, 255, 255, 255, 255, 255, 255, 255, 194, 32.18573 + 19, 18, 16, 13, 12, 14, 14, 13, 14, 19, 15, 15, 13, 13, 14, 17, 32.18574 + 20, 21, 20, 32, 75, 7, 36, 30, 30, 36, 27, 31, 19, 21, 20, 18, 32.18575 + 31, 26, 42, 25, 51, 72, 89, 118, 123, 120, 124, 127, 127, 125, 122, 120, 32.18576 + 121, 124, 125, 128, 128, 127, 131, 136, 137, 133, 139, 139, 139, 138, 138, 137, 32.18577 + 136, 136, 134, 134, 134, 134, 132, 132, 132, 133, 129, 130, 128, 127, 125, 124, 32.18578 + 122, 122, 122, 121, 121, 123, 122, 118, 118, 123, 122, 122, 119, 116, 114, 113, 32.18579 + 112, 112, 112, 110, 107, 106, 107, 108, 108, 108, 112, 105, 102, 104, 104, 99, 32.18580 + 94, 94, 88, 88, 63, 33, 44, 49, 34, 26, 39, 255, 255, 255, 255, 255, 32.18581 + 255, 255, 41, 14, 15, 15, 12, 11, 14, 15, 15, 19, 26, 26, 23, 18, 32.18582 + 16, 16, 18, 22, 25, 21, 37, 73, 12, 43, 41, 30, 48, 22, 26, 12, 32.18583 + 16, 19, 19, 31, 25, 52, 20, 37, 62, 81, 112, 120, 120, 123, 125, 126, 32.18584 + 124, 121, 121, 124, 127, 123, 126, 127, 127, 132, 138, 140, 136, 132, 133, 134, 32.18585 + 136, 138, 138, 138, 138, 139, 139, 139, 137, 135, 136, 137, 139, 131, 130, 129, 32.18586 + 128, 127, 125, 124, 124, 122, 121, 121, 123, 122, 118, 118, 123, 123, 121, 119, 32.18587 + 116, 113, 113, 112, 112, 117, 114, 111, 110, 109, 109, 109, 108, 109, 103, 100, 32.18588 + 104, 106, 101, 97, 97, 86, 90, 116, 18, 36, 50, 32, 33, 37, 255, 255, 32.18589 + 255, 255, 255, 255, 255, 22, 24, 18, 18, 15, 13, 16, 17, 16, 16, 18, 32.18590 + 24, 26, 30, 36, 16, 9, 27, 12, 38, 42, 31, 37, 27, 33, 64, 43, 32.18591 + 30, 33, 20, 27, 19, 34, 26, 26, 26, 26, 26, 47, 85, 120, 94, 119, 32.18592 + 122, 124, 125, 124, 121, 120, 122, 124, 126, 127, 128, 129, 130, 134, 139, 143, 32.18593 + 138, 139, 137, 136, 138, 142, 138, 132, 140, 141, 141, 140, 139, 137, 137, 138, 32.18594 + 135, 133, 130, 130, 128, 126, 122, 119, 124, 124, 122, 120, 118, 118, 119, 122, 32.18595 + 122, 124, 125, 119, 112, 108, 110, 114, 117, 115, 111, 110, 110, 110, 110, 109, 32.18596 + 109, 106, 103, 103, 104, 104, 99, 95, 91, 94, 99, 25, 40, 44, 24, 39, 32.18597 + 37, 255, 255, 255, 255, 255, 255, 255, 23, 26, 19, 21, 18, 16, 20, 20, 32.18598 + 18, 18, 20, 21, 32, 22, 42, 11, 26, 30, 19, 32, 38, 57, 54, 35, 32.18599 + 32, 47, 66, 19, 28, 25, 36, 25, 35, 21, 18, 23, 32, 43, 45, 49, 32.18600 + 106, 110, 115, 122, 124, 125, 124, 121, 120, 122, 124, 126, 127, 128, 129, 130, 32.18601 + 134, 139, 143, 141, 142, 141, 139, 142, 145, 142, 136, 141, 142, 143, 141, 139, 32.18602 + 137, 136, 137, 139, 137, 134, 133, 132, 129, 125, 122, 123, 124, 122, 120, 119, 32.18603 + 119, 120, 123, 120, 122, 124, 122, 117, 113, 113, 115, 118, 116, 111, 110, 110, 32.18604 + 111, 110, 109, 111, 107, 104, 105, 105, 104, 99, 94, 91, 92, 98, 40, 35, 32.18605 + 47, 29, 41, 32, 255, 255, 255, 255, 255, 255, 255, 24, 28, 22, 23, 19, 32.18606 + 17, 21, 22, 19, 17, 19, 21, 35, 24, 36, 19, 34, 38, 23, 38, 36, 32.18607 + 67, 59, 46, 38, 33, 81, 38, 43, 34, 42, 33, 50, 43, 45, 23, 39, 32.18608 + 58, 44, 19, 90, 122, 116, 122, 124, 125, 124, 120, 119, 121, 123, 126, 127, 32.18609 + 128, 129, 130, 133, 138, 142, 142, 144, 144, 142, 143, 147, 144, 139, 144, 145, 32.18610 + 145, 143, 139, 137, 138, 139, 142, 140, 137, 136, 134, 131, 127, 124, 123, 123, 32.18611 + 122, 121, 119, 120, 122, 124, 120, 121, 123, 123, 122, 119, 115, 115, 117, 116, 32.18612 + 112, 111, 112, 112, 111, 110, 114, 110, 106, 107, 107, 105, 99, 95, 90, 90, 32.18613 + 96, 65, 29, 48, 33, 44, 53, 255, 255, 255, 255, 255, 255, 67, 25, 29, 32.18614 + 24, 23, 19, 17, 21, 22, 18, 15, 16, 23, 33, 31, 24, 33, 35, 48, 32.18615 + 26, 41, 40, 48, 46, 52, 46, 34, 69, 43, 41, 24, 31, 25, 44, 38, 32.18616 + 40, 27, 44, 50, 43, 24, 74, 109, 122, 122, 123, 125, 125, 120, 119, 121, 32.18617 + 123, 126, 127, 128, 128, 129, 133, 138, 141, 141, 144, 144, 142, 143, 146, 144, 32.18618 + 140, 143, 144, 145, 144, 140, 139, 141, 142, 141, 140, 137, 136, 134, 131, 127, 32.18619 + 123, 123, 124, 123, 122, 120, 121, 123, 125, 125, 123, 121, 120, 120, 119, 116, 32.18620 + 114, 118, 116, 112, 111, 112, 114, 112, 112, 117, 113, 109, 108, 108, 106, 100, 32.18621 + 95, 91, 90, 95, 86, 23, 46, 34, 42, 52, 255, 255, 255, 255, 255, 255, 32.18622 + 47, 27, 27, 26, 25, 21, 20, 23, 23, 19, 16, 16, 18, 34, 21, 27, 32.18623 + 32, 46, 51, 40, 27, 45, 32, 41, 57, 42, 41, 43, 40, 43, 33, 45, 32.18624 + 41, 55, 37, 28, 36, 45, 26, 43, 48, 64, 82, 126, 122, 123, 125, 125, 32.18625 + 120, 119, 121, 123, 126, 127, 128, 128, 129, 132, 137, 140, 141, 145, 146, 144, 32.18626 + 144, 147, 146, 143, 142, 143, 145, 144, 143, 143, 143, 145, 143, 142, 140, 139, 32.18627 + 137, 133, 128, 124, 125, 125, 124, 123, 121, 121, 123, 125, 130, 126, 121, 117, 32.18628 + 115, 115, 114, 114, 119, 117, 114, 112, 113, 115, 114, 113, 118, 114, 110, 109, 32.18629 + 109, 107, 102, 97, 92, 90, 92, 100, 23, 41, 33, 40, 62, 255, 255, 255, 32.18630 + 255, 255, 255, 35, 29, 22, 26, 29, 25, 24, 28, 27, 22, 18, 18, 11, 32.18631 + 36, 6, 39, 30, 59, 51, 60, 13, 43, 36, 56, 59, 38, 45, 30, 42, 32.18632 + 50, 47, 62, 62, 80, 73, 74, 47, 50, 15, 42, 57, 56, 70, 122, 122, 32.18633 + 124, 125, 125, 120, 119, 121, 123, 126, 127, 128, 128, 128, 131, 136, 139, 143, 32.18634 + 148, 150, 148, 147, 150, 149, 148, 143, 144, 146, 145, 144, 144, 144, 146, 144, 32.18635 + 143, 142, 143, 141, 137, 132, 128, 127, 127, 126, 124, 122, 121, 123, 125, 131, 32.18636 + 128, 122, 117, 113, 112, 114, 116, 119, 118, 114, 114, 114, 116, 115, 114, 118, 32.18637 + 114, 110, 109, 110, 107, 103, 98, 92, 90, 89, 103, 32, 36, 32, 42, 47, 32.18638 + 255, 255, 255, 255, 255, 255, 29, 31, 17, 27, 31, 27, 26, 29, 28, 23, 32.18639 + 19, 18, 18, 31, 17, 29, 50, 47, 58, 69, 32, 33, 44, 66, 62, 47, 32.18640 + 45, 41, 30, 45, 46, 60, 54, 78, 86, 101, 62, 65, 31, 47, 43, 56, 32.18641 + 87, 117, 122, 124, 125, 125, 120, 119, 121, 123, 126, 127, 128, 127, 128, 131, 32.18642 + 135, 139, 142, 148, 151, 148, 147, 149, 150, 149, 147, 148, 148, 147, 144, 143, 32.18643 + 142, 144, 142, 142, 142, 143, 143, 140, 134, 130, 129, 129, 127, 124, 122, 121, 32.18644 + 122, 124, 128, 128, 126, 121, 115, 113, 115, 120, 119, 118, 115, 114, 115, 117, 32.18645 + 117, 116, 116, 113, 110, 110, 110, 108, 104, 98, 90, 90, 86, 99, 43, 34, 32.18646 + 35, 47, 61, 255, 255, 255, 255, 255, 255, 27, 30, 13, 27, 28, 24, 24, 32.18647 + 27, 27, 21, 17, 16, 32, 22, 43, 9, 80, 22, 68, 65, 66, 23, 45, 32.18648 + 65, 64, 63, 47, 56, 21, 49, 64, 77, 59, 69, 70, 86, 74, 78, 53, 32.18649 + 52, 22, 57, 112, 113, 122, 124, 126, 125, 121, 120, 122, 123, 125, 126, 127, 32.18650 + 126, 127, 129, 134, 138, 138, 145, 149, 146, 143, 146, 148, 148, 150, 151, 151, 32.18651 + 148, 144, 142, 140, 142, 138, 139, 139, 141, 141, 138, 133, 128, 130, 130, 128, 32.18652 + 125, 122, 120, 121, 123, 123, 127, 129, 125, 119, 115, 118, 122, 119, 116, 114, 32.18653 + 114, 114, 116, 117, 117, 115, 112, 108, 109, 110, 108, 103, 99, 89, 90, 84, 32.18654 + 96, 52, 35, 37, 53, 61, 255, 255, 255, 255, 255, 136, 55, 19, 26, 29, 32.18655 + 30, 22, 13, 13, 22, 31, 26, 16, 25, 35, 33, 27, 51, 54, 42, 73, 32.18656 + 41, 50, 30, 70, 56, 40, 46, 53, 61, 27, 69, 55, 51, 72, 93, 81, 32.18657 + 61, 72, 107, 62, 37, 61, 115, 117, 125, 124, 124, 125, 121, 118, 121, 128, 32.18658 + 129, 128, 127, 127, 128, 129, 131, 133, 138, 138, 140, 142, 144, 146, 149, 151, 32.18659 + 149, 147, 143, 142, 143, 144, 143, 142, 134, 136, 137, 140, 140, 138, 135, 132, 32.18660 + 130, 128, 129, 131, 127, 121, 120, 123, 124, 126, 123, 118, 116, 118, 118, 116, 32.18661 + 116, 114, 113, 113, 114, 115, 114, 113, 115, 115, 113, 112, 110, 105, 99, 96, 32.18662 + 86, 87, 91, 87, 73, 28, 42, 50, 48, 255, 255, 255, 255, 255, 130, 78, 32.18663 + 22, 23, 28, 24, 25, 22, 18, 21, 26, 24, 19, 32, 38, 35, 25, 43, 32.18664 + 48, 42, 75, 44, 58, 42, 56, 67, 46, 57, 48, 62, 32, 63, 61, 57, 32.18665 + 71, 97, 77, 71, 77, 89, 50, 43, 71, 118, 122, 126, 125, 125, 126, 123, 32.18666 + 120, 122, 129, 128, 126, 126, 126, 127, 129, 132, 133, 136, 137, 139, 142, 144, 32.18667 + 145, 147, 148, 145, 145, 143, 143, 144, 143, 140, 137, 135, 136, 137, 138, 137, 32.18668 + 136, 133, 132, 126, 125, 126, 129, 127, 122, 121, 125, 127, 128, 126, 120, 118, 32.18669 + 120, 120, 117, 117, 115, 112, 112, 112, 113, 113, 112, 113, 112, 111, 109, 108, 32.18670 + 104, 99, 96, 93, 90, 91, 86, 75, 32, 48, 56, 52, 255, 255, 255, 255, 32.18671 + 255, 120, 108, 25, 19, 26, 22, 28, 31, 27, 23, 23, 23, 22, 32, 36, 32.18672 + 35, 24, 36, 44, 44, 77, 43, 65, 51, 44, 77, 55, 66, 45, 60, 40, 32.18673 + 57, 72, 63, 67, 100, 74, 79, 83, 71, 41, 59, 88, 121, 128, 126, 126, 32.18674 + 126, 127, 124, 121, 123, 129, 126, 126, 126, 126, 128, 130, 132, 134, 135, 137, 32.18675 + 139, 142, 145, 146, 146, 145, 147, 147, 148, 149, 149, 146, 141, 137, 136, 136, 32.18676 + 136, 135, 134, 132, 131, 130, 126, 125, 126, 128, 125, 120, 119, 123, 127, 128, 32.18677 + 126, 120, 118, 119, 119, 116, 117, 115, 112, 112, 112, 112, 112, 110, 111, 109, 32.18678 + 108, 107, 106, 103, 100, 97, 94, 86, 84, 80, 72, 33, 49, 56, 58, 255, 32.18679 + 255, 255, 255, 255, 114, 123, 27, 18, 28, 24, 32, 36, 33, 27, 24, 24, 32.18680 + 23, 22, 27, 33, 28, 35, 43, 44, 74, 36, 66, 49, 52, 81, 63, 67, 32.18681 + 50, 56, 46, 58, 85, 66, 61, 100, 76, 74, 87, 62, 52, 86, 106, 123, 32.18682 + 132, 127, 127, 128, 129, 126, 122, 123, 130, 126, 125, 125, 126, 128, 130, 133, 32.18683 + 135, 136, 137, 140, 142, 145, 145, 145, 145, 149, 149, 148, 149, 149, 147, 141, 32.18684 + 138, 138, 137, 135, 133, 131, 129, 128, 126, 133, 130, 128, 129, 124, 118, 116, 32.18685 + 120, 125, 127, 123, 118, 115, 118, 117, 115, 116, 113, 111, 111, 112, 112, 113, 32.18686 + 111, 110, 109, 107, 106, 106, 104, 101, 99, 91, 83, 79, 77, 74, 35, 49, 32.18687 + 53, 60, 255, 255, 255, 255, 255, 115, 112, 25, 20, 29, 30, 34, 36, 33, 32.18688 + 31, 31, 29, 26, 14, 19, 36, 36, 38, 42, 39, 61, 32, 62, 44, 72, 32.18689 + 79, 71, 68, 63, 53, 48, 62, 96, 66, 61, 98, 84, 62, 90, 66, 79, 32.18690 + 114, 120, 124, 132, 126, 127, 129, 131, 127, 122, 125, 130, 126, 124, 124, 125, 32.18691 + 128, 131, 133, 134, 137, 138, 142, 144, 145, 146, 146, 146, 147, 143, 141, 140, 32.18692 + 140, 140, 138, 137, 138, 137, 134, 132, 129, 128, 126, 124, 134, 131, 129, 129, 32.18693 + 124, 118, 117, 121, 124, 125, 123, 117, 116, 118, 118, 116, 113, 111, 110, 110, 32.18694 + 113, 114, 114, 113, 111, 109, 108, 108, 107, 106, 103, 100, 92, 85, 84, 84, 32.18695 + 82, 42, 51, 52, 58, 255, 255, 255, 255, 255, 128, 79, 21, 23, 26, 34, 32.18696 + 36, 34, 32, 33, 37, 36, 32, 17, 18, 38, 40, 37, 39, 34, 47, 32, 32.18697 + 55, 42, 81, 72, 75, 78, 67, 56, 45, 65, 101, 67, 67, 93, 90, 59, 32.18698 + 94, 74, 105, 129, 125, 123, 131, 127, 127, 130, 133, 129, 124, 126, 131, 126, 32.18699 + 125, 125, 125, 128, 130, 132, 134, 138, 138, 140, 141, 142, 144, 145, 145, 146, 32.18700 + 143, 140, 139, 140, 141, 141, 140, 137, 136, 134, 133, 131, 128, 124, 123, 128, 32.18701 + 126, 125, 126, 123, 119, 120, 125, 124, 126, 124, 119, 118, 121, 122, 120, 113, 32.18702 + 112, 110, 110, 112, 113, 113, 112, 110, 109, 109, 109, 109, 106, 102, 98, 87, 32.18703 + 82, 85, 86, 83, 41, 48, 48, 51, 255, 255, 255, 255, 255, 148, 41, 18, 32.18704 + 24, 20, 34, 36, 35, 31, 32, 38, 42, 41, 26, 19, 37, 39, 34, 39, 32.18705 + 37, 45, 36, 46, 43, 66, 60, 71, 93, 55, 63, 38, 64, 101, 68, 80, 32.18706 + 88, 94, 70, 100, 76, 117, 129, 121, 124, 129, 127, 128, 131, 134, 131, 126, 32.18707 + 126, 131, 127, 127, 126, 126, 127, 129, 132, 133, 138, 137, 137, 136, 139, 141, 32.18708 + 143, 144, 146, 145, 144, 144, 145, 145, 145, 143, 134, 135, 135, 134, 132, 128, 32.18709 + 125, 122, 124, 122, 121, 122, 120, 117, 119, 124, 121, 123, 122, 118, 118, 122, 32.18710 + 123, 121, 118, 115, 112, 111, 111, 111, 110, 108, 107, 107, 109, 110, 110, 106, 32.18711 + 100, 95, 84, 80, 85, 85, 80, 37, 45, 47, 44, 255, 255, 255, 255, 143, 32.18712 + 162, 16, 16, 25, 15, 33, 36, 35, 30, 29, 36, 45, 49, 31, 18, 34, 32.18713 + 35, 32, 41, 43, 51, 39, 38, 45, 44, 50, 65, 104, 40, 71, 33, 62, 32.18714 + 99, 69, 91, 85, 94, 82, 105, 76, 120, 124, 117, 126, 128, 128, 130, 132, 32.18715 + 135, 132, 127, 126, 131, 128, 127, 126, 126, 127, 129, 131, 132, 138, 137, 134, 32.18716 + 133, 135, 138, 141, 144, 141, 141, 142, 145, 146, 145, 142, 140, 133, 134, 136, 32.18717 + 135, 133, 129, 125, 122, 125, 122, 120, 120, 117, 113, 114, 119, 118, 120, 119, 32.18718 + 115, 116, 120, 122, 120, 121, 118, 114, 112, 111, 109, 107, 105, 105, 107, 109, 32.18719 + 110, 110, 105, 97, 92, 88, 86, 89, 89, 81, 38, 48, 50, 111, 255, 255, 32.18720 + 255, 255, 144, 143, 16, 23, 20, 20, 28, 43, 35, 27, 41, 46, 41, 48, 32.18721 + 30, 48, 47, 36, 39, 45, 46, 51, 24, 49, 22, 57, 39, 76, 81, 65, 32.18722 + 59, 51, 52, 93, 75, 64, 105, 79, 84, 104, 56, 140, 118, 124, 124, 127, 32.18723 + 132, 131, 129, 130, 129, 129, 128, 126, 127, 127, 129, 130, 131, 131, 131, 132, 32.18724 + 133, 132, 132, 131, 133, 137, 143, 146, 150, 140, 139, 142, 139, 142, 141, 131, 32.18725 + 132, 133, 134, 135, 136, 133, 127, 123, 118, 119, 121, 122, 121, 119, 117, 115, 32.18726 + 115, 119, 119, 117, 118, 121, 120, 117, 122, 118, 113, 112, 112, 110, 106, 103, 32.18727 + 107, 107, 106, 106, 109, 109, 101, 90, 82, 87, 87, 88, 89, 7, 35, 38, 32.18728 + 255, 255, 255, 255, 218, 138, 136, 18, 26, 23, 23, 32, 40, 40, 39, 43, 32.18729 + 41, 39, 46, 40, 46, 37, 31, 46, 55, 47, 40, 34, 48, 19, 62, 54, 32.18730 + 66, 82, 66, 55, 53, 52, 93, 85, 71, 104, 87, 79, 97, 70, 133, 118, 32.18731 + 128, 124, 128, 134, 133, 132, 132, 131, 130, 129, 128, 126, 126, 129, 130, 131, 32.18732 + 131, 132, 131, 132, 128, 128, 131, 137, 142, 142, 140, 149, 139, 141, 144, 140, 32.18733 + 143, 144, 133, 127, 128, 130, 132, 134, 132, 128, 125, 121, 122, 122, 123, 121, 32.18734 + 119, 117, 115, 114, 118, 118, 116, 116, 119, 119, 116, 121, 117, 113, 112, 112, 32.18735 + 111, 108, 104, 105, 106, 106, 104, 106, 107, 100, 92, 86, 90, 87, 89, 75, 32.18736 + 7, 32, 27, 255, 255, 255, 255, 143, 135, 133, 25, 31, 28, 26, 33, 25, 32.18737 + 30, 37, 33, 32, 46, 56, 30, 46, 48, 38, 41, 44, 45, 52, 39, 43, 32.18738 + 15, 59, 64, 45, 77, 58, 48, 51, 45, 82, 88, 68, 87, 87, 72, 87, 32.18739 + 93, 124, 120, 133, 124, 129, 135, 135, 134, 132, 130, 130, 130, 130, 126, 127, 32.18740 + 129, 130, 131, 130, 128, 127, 127, 125, 125, 132, 141, 145, 142, 137, 145, 138, 32.18741 + 141, 146, 142, 144, 145, 135, 136, 136, 136, 135, 134, 131, 126, 122, 125, 125, 32.18742 + 125, 124, 121, 118, 115, 113, 114, 116, 116, 113, 114, 117, 118, 116, 119, 115, 32.18743 + 112, 111, 113, 113, 110, 107, 106, 108, 107, 104, 104, 104, 99, 92, 91, 91, 32.18744 + 88, 91, 56, 9, 28, 15, 255, 255, 255, 216, 143, 137, 130, 33, 30, 24, 32.18745 + 23, 45, 22, 27, 39, 25, 17, 27, 31, 24, 45, 49, 40, 36, 39, 49, 32.18746 + 67, 35, 42, 22, 55, 65, 31, 78, 55, 47, 52, 42, 70, 86, 66, 72, 32.18747 + 85, 68, 81, 115, 117, 121, 136, 124, 130, 134, 135, 134, 132, 129, 128, 129, 32.18748 + 129, 128, 128, 129, 129, 128, 126, 124, 123, 123, 124, 128, 133, 140, 141, 138, 32.18749 + 134, 138, 132, 137, 144, 141, 145, 147, 140, 142, 140, 138, 138, 137, 135, 129, 32.18750 + 125, 128, 127, 126, 124, 121, 117, 114, 112, 114, 116, 115, 111, 111, 116, 118, 32.18751 + 116, 118, 114, 111, 112, 114, 116, 113, 110, 109, 111, 110, 106, 105, 105, 100, 32.18752 + 95, 94, 91, 91, 94, 46, 20, 33, 14, 255, 255, 255, 134, 142, 138, 127, 32.18753 + 43, 34, 25, 23, 32, 6, 12, 31, 23, 17, 25, 29, 37, 41, 33, 30, 32.18754 + 42, 52, 57, 66, 28, 42, 35, 53, 64, 34, 86, 64, 49, 58, 49, 68, 32.18755 + 90, 76, 74, 93, 70, 84, 128, 115, 120, 134, 123, 131, 131, 133, 133, 131, 32.18756 + 126, 125, 126, 127, 130, 129, 129, 127, 124, 122, 121, 119, 126, 130, 134, 134, 32.18757 + 129, 125, 124, 123, 130, 126, 133, 141, 140, 145, 150, 143, 138, 140, 140, 142, 32.18758 + 144, 144, 139, 136, 132, 130, 127, 125, 120, 117, 113, 112, 114, 117, 114, 110, 32.18759 + 110, 116, 118, 117, 118, 115, 112, 113, 117, 118, 115, 113, 109, 111, 111, 108, 32.18760 + 109, 110, 105, 98, 95, 90, 97, 96, 52, 36, 45, 29, 255, 255, 255, 139, 32.18761 + 144, 138, 128, 68, 62, 55, 51, 50, 21, 7, 9, 4, 8, 29, 47, 38, 32.18762 + 44, 38, 33, 40, 47, 54, 69, 25, 31, 37, 45, 55, 39, 78, 68, 42, 32.18763 + 54, 53, 68, 91, 90, 84, 95, 79, 95, 130, 120, 119, 131, 123, 130, 130, 32.18764 + 132, 132, 129, 125, 122, 123, 125, 130, 128, 126, 123, 121, 120, 120, 120, 134, 32.18765 + 136, 135, 126, 114, 107, 107, 111, 122, 118, 125, 132, 130, 137, 143, 140, 147, 32.18766 + 147, 149, 151, 152, 151, 143, 140, 136, 133, 130, 126, 122, 118, 116, 114, 117, 32.18767 + 118, 115, 110, 110, 116, 120, 119, 120, 117, 115, 115, 119, 120, 119, 116, 108, 32.18768 + 109, 108, 108, 111, 113, 105, 95, 88, 82, 97, 91, 67, 46, 54, 47, 255, 32.18769 + 255, 215, 144, 138, 127, 124, 94, 103, 98, 91, 110, 93, 65, 40, 21, 4, 32.18770 + 10, 33, 40, 52, 50, 42, 38, 35, 44, 65, 43, 23, 32, 42, 47, 38, 32.18771 + 51, 60, 31, 46, 59, 70, 89, 99, 87, 83, 89, 108, 127, 128, 117, 126, 32.18772 + 122, 130, 129, 132, 132, 129, 124, 121, 121, 124, 127, 125, 122, 119, 118, 120, 32.18773 + 123, 125, 135, 132, 123, 111, 101, 96, 99, 102, 111, 106, 112, 116, 112, 118, 32.18774 + 127, 125, 138, 140, 144, 149, 150, 147, 140, 134, 141, 138, 135, 131, 126, 123, 32.18775 + 120, 119, 120, 121, 117, 111, 111, 118, 122, 123, 123, 120, 117, 118, 120, 121, 32.18776 + 119, 116, 113, 110, 106, 106, 109, 107, 94, 77, 71, 64, 87, 74, 75, 43, 32.18777 + 49, 55, 255, 255, 136, 139, 125, 108, 111, 105, 126, 124, 115, 112, 129, 123, 32.18778 + 106, 83, 44, 21, 33, 57, 54, 41, 38, 46, 44, 37, 41, 70, 25, 32, 32.18779 + 47, 47, 37, 30, 52, 29, 45, 68, 76, 91, 104, 89, 74, 96, 117, 122, 32.18780 + 132, 116, 123, 122, 128, 129, 132, 133, 130, 123, 120, 121, 124, 124, 122, 118, 32.18781 + 116, 117, 121, 127, 131, 132, 124, 111, 100, 94, 95, 98, 101, 102, 97, 101, 32.18782 + 101, 96, 102, 111, 109, 104, 109, 119, 130, 138, 141, 138, 134, 144, 142, 138, 32.18783 + 135, 130, 127, 124, 123, 122, 122, 118, 112, 112, 119, 124, 124, 124, 121, 119, 32.18784 + 119, 122, 122, 119, 117, 121, 115, 108, 104, 105, 99, 78, 58, 56, 48, 76, 32.18785 + 58, 75, 34, 39, 52, 255, 255, 144, 138, 117, 106, 112, 113, 107, 108, 117, 32.18786 + 117, 121, 122, 119, 112, 94, 64, 36, 35, 40, 42, 46, 43, 29, 27, 44, 32.18787 + 59, 35, 43, 40, 61, 62, 31, 68, 56, 42, 63, 93, 85, 115, 93, 90, 32.18788 + 110, 114, 120, 123, 122, 121, 122, 122, 128, 131, 132, 128, 122, 120, 123, 126, 32.18789 + 123, 121, 117, 115, 120, 127, 126, 121, 123, 113, 101, 94, 92, 91, 88, 86, 32.18790 + 93, 93, 84, 69, 70, 83, 90, 87, 79, 83, 83, 90, 112, 137, 145, 140, 32.18791 + 142, 137, 141, 124, 134, 125, 133, 125, 123, 126, 122, 116, 113, 119, 127, 131, 32.18792 + 128, 125, 124, 124, 124, 123, 124, 126, 120, 106, 104, 107, 100, 88, 65, 38, 32.18793 + 28, 41, 46, 63, 74, 39, 19, 52, 255, 255, 142, 118, 115, 114, 118, 120, 32.18794 + 116, 109, 105, 112, 121, 125, 122, 124, 123, 109, 91, 57, 47, 70, 46, 59, 32.18795 + 20, 41, 41, 47, 30, 39, 19, 47, 61, 43, 63, 56, 42, 60, 81, 92, 32.18796 + 117, 103, 104, 114, 117, 121, 123, 122, 121, 122, 123, 126, 128, 129, 126, 121, 32.18797 + 118, 121, 125, 121, 124, 124, 120, 118, 117, 113, 106, 123, 112, 96, 87, 85, 32.18798 + 86, 86, 86, 76, 78, 71, 61, 60, 69, 71, 65, 61, 66, 69, 71, 78, 32.18799 + 92, 105, 113, 131, 134, 139, 127, 125, 121, 127, 127, 122, 123, 118, 113, 112, 32.18800 + 119, 125, 127, 125, 122, 120, 121, 124, 125, 126, 126, 124, 112, 104, 94, 74, 32.18801 + 59, 45, 28, 17, 29, 33, 50, 66, 37, 12, 255, 255, 218, 133, 109, 119, 32.18802 + 126, 125, 122, 121, 111, 99, 112, 125, 128, 122, 125, 140, 142, 132, 103, 78, 32.18803 + 63, 79, 63, 64, 45, 26, 25, 29, 52, 15, 37, 52, 49, 57, 52, 40, 32.18804 + 52, 57, 95, 106, 105, 111, 119, 120, 122, 123, 122, 121, 121, 122, 123, 125, 32.18805 + 126, 124, 120, 118, 119, 122, 99, 110, 120, 121, 119, 117, 116, 113, 100, 95, 32.18806 + 89, 89, 94, 100, 105, 106, 99, 103, 101, 94, 93, 96, 92, 83, 78, 73, 32.18807 + 65, 60, 55, 53, 57, 63, 100, 119, 129, 134, 121, 125, 124, 131, 127, 126, 32.18808 + 121, 116, 117, 125, 129, 129, 125, 121, 117, 118, 124, 127, 125, 121, 113, 104, 32.18809 + 97, 79, 51, 37, 34, 28, 6, 18, 22, 36, 57, 42, 16, 255, 255, 135, 32.18810 + 119, 119, 125, 129, 126, 117, 110, 105, 103, 119, 136, 137, 123, 120, 136, 143, 32.18811 + 135, 131, 104, 76, 113, 68, 88, 47, 20, 12, 31, 68, 33, 38, 38, 48, 32.18812 + 55, 50, 39, 48, 42, 100, 95, 105, 108, 122, 122, 122, 121, 120, 120, 120, 32.18813 + 120, 122, 124, 125, 124, 120, 118, 118, 119, 112, 122, 127, 119, 107, 101, 100, 32.18814 + 100, 93, 96, 103, 113, 122, 128, 130, 129, 120, 123, 122, 118, 117, 118, 113, 32.18815 + 106, 117, 94, 74, 71, 69, 58, 45, 39, 66, 94, 109, 132, 120, 133, 126, 32.18816 + 131, 130, 127, 121, 117, 121, 129, 131, 128, 129, 124, 119, 117, 123, 126, 122, 32.18817 + 115, 100, 92, 84, 68, 40, 32, 37, 39, 27, 38, 35, 37, 48, 42, 23, 32.18818 + 255, 255, 127, 105, 124, 121, 125, 127, 115, 98, 99, 113, 126, 143, 146, 132, 32.18819 + 125, 133, 137, 130, 125, 109, 127, 118, 85, 58, 54, 28, 23, 29, 55, 43, 32.18820 + 44, 38, 48, 52, 49, 42, 51, 44, 106, 91, 111, 110, 122, 121, 120, 119, 32.18821 + 119, 119, 118, 117, 122, 124, 125, 124, 122, 119, 116, 115, 113, 119, 118, 107, 32.18822 + 97, 95, 103, 109, 126, 127, 132, 136, 138, 136, 133, 130, 127, 127, 126, 123, 32.18823 + 123, 124, 121, 116, 122, 103, 91, 94, 95, 83, 70, 64, 57, 78, 88, 112, 32.18824 + 109, 130, 126, 130, 125, 123, 118, 113, 117, 124, 126, 123, 126, 124, 118, 115, 32.18825 + 120, 124, 119, 109, 93, 79, 65, 52, 36, 42, 55, 59, 74, 78, 68, 52, 32.18826 + 46, 41, 30, 255, 255, 121, 98, 111, 110, 119, 128, 114, 93, 99, 119, 123, 32.18827 + 140, 149, 145, 137, 135, 132, 126, 120, 117, 128, 123, 87, 63, 49, 32, 44, 32.18828 + 25, 23, 37, 41, 49, 50, 47, 41, 37, 48, 49, 100, 87, 114, 107, 121, 32.18829 + 120, 119, 119, 120, 119, 117, 114, 123, 124, 125, 125, 122, 118, 113, 110, 98, 32.18830 + 101, 99, 94, 96, 108, 124, 132, 146, 143, 138, 133, 128, 126, 125, 125, 132, 32.18831 + 131, 128, 126, 126, 127, 125, 124, 107, 110, 113, 112, 104, 94, 91, 94, 78, 32.18832 + 82, 79, 87, 92, 113, 121, 127, 122, 122, 118, 114, 115, 122, 125, 123, 118, 32.18833 + 119, 114, 108, 111, 116, 111, 101, 78, 59, 47, 42, 45, 66, 89, 96, 97, 32.18834 + 96, 87, 68, 54, 49, 48, 255, 255, 119, 97, 97, 106, 118, 118, 104, 94, 32.18835 + 105, 124, 134, 145, 157, 161, 151, 135, 123, 117, 124, 127, 110, 122, 92, 88, 32.18836 + 49, 36, 48, 29, 11, 40, 31, 53, 46, 36, 42, 37, 46, 57, 87, 78, 32.18837 + 113, 100, 121, 120, 120, 121, 123, 122, 118, 114, 122, 123, 124, 123, 121, 115, 32.18838 + 109, 105, 112, 111, 105, 100, 104, 116, 126, 129, 140, 137, 133, 129, 124, 125, 32.18839 + 127, 131, 130, 127, 122, 121, 120, 119, 117, 117, 106, 117, 123, 118, 108, 103, 32.18840 + 105, 106, 104, 98, 93, 81, 91, 101, 118, 121, 120, 122, 120, 116, 114, 120, 32.18841 + 124, 125, 113, 116, 112, 102, 97, 100, 94, 82, 61, 50, 49, 59, 70, 93, 32.18842 + 111, 113, 97, 93, 90, 78, 63, 57, 123, 255, 255, 120, 101, 93, 109, 117, 32.18843 + 104, 89, 93, 111, 127, 156, 161, 173, 178, 163, 136, 116, 110, 124, 124, 138, 32.18844 + 103, 116, 70, 67, 53, 38, 40, 21, 56, 22, 49, 38, 28, 53, 45, 52, 32.18845 + 68, 81, 75, 115, 99, 121, 120, 121, 123, 125, 124, 119, 114, 122, 122, 122, 32.18846 + 122, 119, 113, 106, 100, 108, 106, 104, 107, 120, 136, 144, 142, 137, 138, 140, 32.18847 + 139, 137, 137, 137, 139, 136, 132, 128, 128, 126, 122, 119, 118, 112, 118, 118, 32.18848 + 113, 114, 122, 119, 112, 116, 110, 111, 90, 101, 99, 117, 117, 113, 117, 117, 32.18849 + 112, 108, 113, 118, 121, 113, 118, 113, 97, 87, 85, 77, 65, 63, 60, 71, 32.18850 + 86, 95, 105, 108, 99, 102, 92, 90, 85, 67, 56, 255, 255, 255, 92, 104, 32.18851 + 85, 119, 115, 108, 91, 88, 123, 127, 150, 141, 133, 131, 127, 120, 119, 123, 32.18852 + 121, 130, 124, 111, 108, 96, 73, 61, 46, 35, 39, 35, 31, 55, 18, 43, 32.18853 + 43, 27, 53, 86, 64, 89, 91, 99, 110, 119, 125, 124, 122, 122, 121, 119, 32.18854 + 123, 121, 119, 120, 121, 117, 107, 99, 111, 119, 123, 120, 123, 135, 140, 140, 32.18855 + 130, 142, 127, 133, 134, 128, 130, 132, 127, 125, 127, 129, 120, 111, 114, 125, 32.18856 + 118, 111, 109, 112, 116, 117, 116, 118, 117, 124, 126, 116, 102, 98, 108, 120, 32.18857 + 117, 116, 111, 105, 103, 109, 114, 114, 104, 106, 98, 88, 88, 60, 48, 63, 32.18858 + 88, 82, 87, 104, 108, 101, 100, 110, 98, 102, 99, 75, 87, 55, 255, 255, 32.18859 + 255, 102, 102, 95, 115, 112, 100, 91, 98, 122, 126, 114, 141, 145, 126, 124, 32.18860 + 142, 137, 112, 117, 129, 124, 113, 111, 105, 91, 86, 43, 34, 56, 43, 51, 32.18861 + 53, 22, 36, 29, 29, 59, 82, 62, 94, 97, 98, 109, 115, 120, 120, 120, 32.18862 + 122, 121, 118, 124, 122, 121, 120, 119, 114, 107, 102, 111, 120, 124, 120, 123, 32.18863 + 131, 136, 132, 147, 149, 129, 129, 132, 122, 120, 113, 106, 103, 100, 101, 109, 32.18864 + 117, 116, 111, 113, 114, 116, 114, 107, 104, 114, 129, 117, 121, 122, 119, 113, 32.18865 + 113, 118, 123, 120, 120, 116, 109, 106, 110, 112, 110, 97, 107, 90, 84, 70, 32.18866 + 71, 66, 88, 96, 102, 103, 100, 102, 106, 98, 84, 90, 94, 100, 86, 95, 32.18867 + 59, 255, 255, 255, 118, 101, 108, 111, 112, 92, 88, 109, 119, 127, 131, 126, 32.18868 + 132, 145, 146, 132, 124, 128, 115, 129, 127, 114, 112, 111, 108, 111, 63, 44, 32.18869 + 56, 25, 43, 34, 23, 37, 17, 28, 62, 75, 63, 98, 104, 101, 114, 117, 32.18870 + 118, 118, 120, 123, 121, 116, 123, 123, 123, 120, 116, 112, 110, 109, 121, 131, 32.18871 + 134, 132, 132, 137, 138, 132, 134, 122, 98, 97, 111, 113, 126, 117, 123, 124, 32.18872 + 117, 106, 106, 111, 103, 87, 93, 100, 108, 113, 107, 102, 104, 112, 119, 118, 32.18873 + 119, 122, 126, 127, 126, 124, 121, 123, 120, 114, 109, 109, 107, 103, 116, 107, 32.18874 + 85, 70, 65, 72, 78, 85, 77, 81, 80, 73, 73, 83, 91, 90, 94, 95, 32.18875 + 99, 91, 90, 54, 255, 255, 255, 132, 104, 116, 108, 114, 87, 87, 116, 118, 32.18876 + 131, 133, 142, 137, 124, 131, 150, 147, 127, 116, 132, 130, 115, 110, 111, 111, 32.18877 + 117, 91, 63, 48, 17, 29, 28, 23, 38, 19, 23, 54, 66, 71, 101, 109, 32.18878 + 110, 122, 122, 121, 119, 121, 125, 122, 115, 120, 122, 124, 120, 115, 113, 116, 32.18879 + 120, 132, 142, 146, 142, 138, 141, 138, 131, 120, 107, 98, 99, 119, 119, 139, 32.18880 + 125, 101, 103, 101, 94, 92, 98, 106, 110, 91, 87, 88, 99, 108, 106, 102, 32.18881 + 99, 117, 118, 120, 125, 130, 131, 127, 121, 122, 125, 123, 116, 112, 109, 103, 32.18882 + 98, 112, 72, 66, 64, 86, 82, 100, 94, 110, 99, 95, 97, 84, 66, 74, 32.18883 + 99, 97, 93, 91, 87, 77, 118, 255, 255, 255, 140, 113, 116, 110, 118, 90, 32.18884 + 86, 115, 120, 139, 136, 134, 123, 116, 133, 157, 156, 137, 115, 129, 126, 112, 32.18885 + 111, 112, 110, 114, 102, 79, 45, 35, 34, 45, 26, 37, 32, 19, 41, 58, 32.18886 + 83, 103, 109, 119, 120, 121, 120, 119, 122, 127, 124, 118, 117, 121, 123, 121, 32.18887 + 117, 117, 123, 129, 131, 141, 146, 140, 136, 136, 131, 122, 113, 105, 110, 106, 32.18888 + 108, 84, 96, 67, 52, 45, 49, 67, 77, 77, 83, 94, 97, 87, 80, 86, 32.18889 + 96, 102, 105, 107, 112, 116, 119, 124, 126, 126, 126, 124, 127, 130, 128, 122, 32.18890 + 117, 113, 106, 99, 113, 64, 59, 100, 81, 70, 69, 75, 102, 89, 87, 100, 32.18891 + 97, 79, 80, 97, 90, 88, 89, 88, 69, 255, 255, 255, 255, 139, 127, 112, 32.18892 + 114, 116, 94, 90, 113, 127, 140, 146, 114, 106, 135, 151, 138, 128, 134, 112, 32.18893 + 124, 118, 109, 114, 118, 114, 115, 109, 90, 43, 41, 35, 53, 36, 47, 41, 32.18894 + 20, 37, 52, 91, 105, 110, 122, 111, 115, 117, 118, 122, 126, 126, 121, 118, 32.18895 + 122, 124, 123, 120, 122, 128, 135, 130, 140, 145, 139, 134, 133, 127, 118, 117, 32.18896 + 97, 97, 73, 61, 30, 52, 25, 32, 22, 39, 84, 107, 85, 50, 31, 66, 32.18897 + 73, 85, 95, 97, 93, 93, 99, 107, 113, 117, 120, 121, 125, 128, 133, 138, 32.18898 + 139, 136, 128, 120, 117, 111, 105, 108, 72, 58, 137, 44, 38, 10, 39, 60, 32.18899 + 47, 34, 37, 56, 76, 89, 94, 91, 96, 98, 96, 62, 255, 255, 255, 255, 32.18900 + 136, 141, 109, 119, 108, 98, 97, 112, 136, 137, 128, 130, 129, 130, 139, 143, 32.18901 + 127, 105, 117, 123, 113, 106, 118, 127, 124, 121, 115, 98, 60, 47, 48, 46, 32.18902 + 44, 50, 39, 27, 45, 49, 93, 108, 113, 120, 110, 116, 121, 121, 122, 124, 32.18903 + 123, 120, 123, 125, 126, 125, 124, 126, 130, 135, 133, 142, 146, 139, 135, 135, 32.18904 + 129, 120, 129, 100, 97, 69, 64, 44, 87, 66, 45, 38, 55, 99, 128, 112, 32.18905 + 69, 36, 37, 50, 72, 93, 100, 96, 92, 94, 116, 115, 115, 115, 117, 123, 32.18906 + 130, 136, 147, 146, 139, 129, 119, 115, 110, 105, 77, 39, 45, 125, 40, 36, 32.18907 + 23, 43, 105, 89, 64, 44, 37, 44, 63, 79, 93, 103, 102, 92, 47, 255, 32.18908 + 255, 255, 255, 132, 149, 107, 123, 102, 102, 105, 113, 142, 134, 135, 114, 118, 32.18909 + 149, 154, 127, 114, 126, 125, 126, 111, 104, 121, 134, 130, 124, 109, 103, 92, 32.18910 + 73, 80, 47, 44, 36, 31, 35, 56, 46, 91, 109, 115, 114, 116, 123, 128, 32.18911 + 127, 122, 122, 119, 117, 127, 128, 128, 127, 127, 128, 130, 132, 132, 142, 144, 32.18912 + 139, 133, 133, 129, 120, 115, 90, 106, 93, 100, 86, 131, 103, 94, 79, 68, 32.18913 + 73, 91, 96, 84, 68, 45, 41, 47, 68, 93, 108, 112, 115, 128, 122, 115, 32.18914 + 113, 116, 124, 130, 134, 151, 149, 140, 126, 116, 112, 107, 102, 86, 24, 54, 32.18915 + 99, 64, 40, 55, 42, 152, 139, 131, 112, 65, 21, 32, 71, 84, 96, 92, 32.18916 + 79, 34, 255, 255, 255, 255, 142, 136, 126, 118, 100, 119, 89, 139, 141, 123, 32.18917 + 127, 119, 139, 175, 131, 124, 123, 129, 124, 118, 121, 135, 145, 141, 134, 133, 32.18918 + 111, 109, 96, 82, 84, 92, 80, 56, 33, 30, 30, 43, 72, 103, 118, 119, 32.18919 + 115, 116, 117, 118, 120, 121, 122, 123, 128, 129, 129, 128, 128, 129, 134, 138, 32.18920 + 135, 137, 137, 135, 137, 140, 138, 134, 127, 122, 116, 117, 121, 123, 120, 117, 32.18921 + 125, 118, 108, 97, 90, 90, 93, 97, 86, 85, 91, 96, 93, 90, 105, 126, 32.18922 + 130, 115, 110, 118, 121, 116, 122, 136, 143, 149, 147, 134, 119, 110, 106, 104, 32.18923 + 48, 45, 37, 39, 45, 40, 47, 70, 141, 134, 119, 96, 67, 46, 42, 48, 32.18924 + 66, 84, 108, 55, 117, 255, 255, 255, 255, 143, 137, 130, 112, 112, 112, 101, 32.18925 + 140, 143, 125, 124, 117, 137, 173, 145, 141, 130, 121, 125, 117, 122, 140, 151, 32.18926 + 148, 137, 131, 116, 113, 102, 95, 97, 105, 96, 82, 57, 50, 41, 45, 63, 32.18927 + 89, 106, 110, 115, 115, 118, 120, 121, 122, 122, 122, 126, 127, 127, 126, 126, 32.18928 + 127, 132, 136, 137, 138, 138, 135, 137, 140, 138, 134, 126, 122, 119, 118, 121, 32.18929 + 122, 121, 119, 123, 119, 113, 106, 101, 99, 101, 102, 97, 98, 105, 113, 110, 32.18930 + 105, 112, 127, 128, 115, 112, 120, 122, 116, 121, 133, 138, 144, 145, 135, 122, 32.18931 + 112, 102, 97, 50, 53, 50, 50, 55, 52, 55, 69, 105, 79, 59, 62, 75, 32.18932 + 76, 58, 41, 62, 82, 102, 48, 255, 255, 255, 255, 255, 143, 138, 136, 108, 32.18933 + 120, 104, 109, 140, 139, 123, 125, 130, 152, 168, 136, 135, 140, 140, 125, 120, 32.18934 + 127, 148, 160, 154, 140, 132, 118, 111, 102, 102, 103, 107, 104, 102, 100, 95, 32.18935 + 87, 85, 93, 109, 121, 124, 115, 117, 120, 122, 123, 123, 122, 121, 126, 127, 32.18936 + 127, 127, 126, 128, 131, 135, 139, 140, 139, 136, 136, 139, 137, 132, 128, 127, 32.18937 + 126, 125, 125, 125, 126, 126, 123, 122, 119, 116, 113, 111, 110, 109, 105, 103, 32.18938 + 107, 113, 112, 108, 112, 123, 127, 117, 115, 122, 123, 116, 119, 129, 132, 138, 32.18939 + 139, 134, 125, 114, 98, 88, 75, 90, 91, 87, 92, 92, 91, 96, 97, 83, 32.18940 + 75, 83, 96, 96, 85, 75, 68, 87, 92, 41, 255, 255, 255, 255, 255, 143, 32.18941 + 138, 139, 112, 119, 106, 107, 142, 127, 120, 116, 127, 147, 156, 138, 138, 140, 32.18942 + 134, 123, 123, 134, 155, 166, 156, 143, 136, 121, 110, 101, 103, 103, 100, 100, 32.18943 + 107, 99, 103, 106, 108, 112, 118, 121, 119, 116, 118, 122, 124, 125, 123, 121, 32.18944 + 119, 128, 129, 130, 130, 130, 131, 134, 136, 141, 141, 139, 136, 136, 139, 137, 32.18945 + 132, 132, 133, 133, 132, 130, 130, 131, 132, 124, 122, 119, 118, 116, 115, 113, 32.18946 + 112, 109, 102, 98, 99, 100, 102, 111, 120, 125, 119, 119, 125, 123, 116, 117, 32.18947 + 125, 130, 134, 135, 131, 125, 116, 99, 84, 83, 104, 107, 100, 105, 109, 105, 32.18948 + 103, 96, 100, 103, 102, 92, 84, 85, 92, 82, 95, 81, 110, 255, 255, 255, 32.18949 + 255, 255, 143, 139, 140, 124, 109, 112, 98, 139, 114, 118, 119, 122, 141, 165, 32.18950 + 189, 190, 164, 126, 120, 125, 141, 161, 166, 155, 144, 142, 126, 113, 103, 106, 32.18951 + 104, 99, 102, 111, 87, 96, 104, 110, 114, 117, 116, 111, 118, 119, 122, 124, 32.18952 + 125, 123, 120, 118, 128, 129, 131, 131, 131, 132, 134, 136, 141, 141, 138, 134, 32.18953 + 135, 138, 137, 133, 133, 134, 135, 134, 131, 130, 130, 131, 125, 120, 115, 113, 32.18954 + 113, 113, 113, 111, 110, 104, 100, 101, 104, 108, 115, 122, 126, 123, 124, 127, 32.18955 + 124, 117, 116, 122, 130, 132, 131, 127, 124, 117, 103, 89, 82, 104, 105, 95, 32.18956 + 100, 108, 105, 102, 102, 96, 93, 96, 96, 93, 89, 91, 91, 95, 63, 255, 32.18957 + 255, 255, 255, 255, 255, 143, 139, 137, 136, 101, 116, 97, 129, 113, 118, 117, 32.18958 + 120, 139, 156, 190, 189, 178, 154, 122, 125, 139, 157, 163, 154, 146, 146, 125, 32.18959 + 114, 104, 104, 103, 101, 104, 111, 101, 106, 112, 114, 118, 125, 125, 122, 120, 32.18960 + 120, 122, 123, 123, 121, 119, 118, 125, 127, 129, 130, 129, 130, 132, 134, 141, 32.18961 + 141, 138, 134, 135, 139, 139, 135, 134, 134, 133, 132, 131, 129, 127, 125, 123, 32.18962 + 118, 111, 109, 110, 113, 113, 112, 105, 107, 110, 113, 116, 117, 119, 120, 127, 32.18963 + 127, 129, 129, 124, 117, 116, 121, 128, 131, 130, 126, 124, 119, 107, 96, 86, 32.18964 + 105, 105, 96, 100, 107, 106, 106, 109, 101, 96, 99, 104, 104, 102, 102, 92, 32.18965 + 89, 45, 255, 255, 255, 255, 255, 255, 143, 140, 134, 145, 100, 114, 107, 115, 32.18966 + 125, 123, 106, 111, 122, 113, 130, 122, 142, 155, 129, 123, 129, 149, 160, 157, 32.18967 + 149, 145, 125, 116, 105, 102, 102, 104, 105, 105, 104, 106, 108, 109, 114, 123, 32.18968 + 124, 121, 122, 121, 121, 121, 120, 119, 118, 117, 125, 127, 130, 130, 130, 130, 32.18969 + 131, 133, 140, 140, 137, 134, 135, 140, 139, 136, 139, 136, 133, 133, 133, 131, 32.18970 + 127, 122, 121, 114, 109, 109, 113, 117, 117, 115, 105, 111, 116, 118, 118, 119, 32.18971 + 120, 121, 130, 130, 132, 130, 123, 117, 117, 122, 123, 128, 129, 127, 124, 119, 32.18972 + 109, 100, 80, 94, 94, 89, 94, 97, 96, 100, 102, 101, 101, 102, 97, 92, 32.18973 + 93, 100, 94, 88, 40, 255, 255, 255, 255, 255, 255, 143, 140, 132, 148, 102, 32.18974 + 109, 118, 103, 137, 126, 124, 119, 120, 104, 118, 101, 117, 131, 135, 122, 121, 32.18975 + 140, 159, 160, 150, 143, 132, 124, 112, 105, 105, 109, 107, 102, 104, 107, 110, 32.18976 + 113, 121, 127, 125, 119, 123, 121, 120, 119, 118, 118, 117, 117, 127, 129, 132, 32.18977 + 133, 133, 133, 133, 135, 139, 140, 137, 133, 135, 140, 140, 137, 145, 140, 136, 32.18978 + 136, 138, 136, 129, 121, 117, 113, 110, 113, 118, 122, 121, 119, 115, 119, 121, 32.18979 + 118, 117, 120, 125, 129, 131, 133, 134, 131, 123, 117, 118, 123, 118, 125, 130, 32.18980 + 129, 125, 119, 109, 100, 85, 97, 98, 97, 101, 100, 98, 106, 107, 101, 98, 32.18981 + 102, 103, 100, 96, 94, 99, 93, 45, 255, 255, 255, 255, 255, 255, 140, 141, 32.18982 + 134, 144, 121, 105, 107, 126, 93, 127, 130, 130, 124, 119, 122, 125, 111, 93, 32.18983 + 108, 104, 92, 128, 158, 156, 157, 135, 126, 123, 111, 101, 101, 109, 112, 109, 32.18984 + 106, 107, 109, 111, 115, 119, 121, 123, 121, 124, 125, 124, 120, 118, 118, 119, 32.18985 + 126, 127, 128, 128, 129, 131, 134, 138, 140, 139, 138, 136, 136, 136, 138, 138, 32.18986 + 133, 140, 143, 139, 137, 137, 133, 126, 116, 109, 104, 108, 112, 114, 115, 119, 32.18987 + 115, 118, 120, 124, 125, 127, 127, 128, 130, 129, 129, 128, 121, 114, 116, 123, 32.18988 + 119, 117, 120, 128, 127, 117, 107, 106, 90, 81, 97, 99, 96, 107, 107, 112, 32.18989 + 110, 109, 107, 106, 106, 102, 94, 89, 88, 89, 49, 255, 255, 255, 255, 255, 32.18990 + 255, 141, 142, 140, 135, 134, 126, 109, 135, 113, 110, 121, 123, 120, 117, 126, 32.18991 + 137, 137, 128, 102, 100, 91, 122, 149, 151, 157, 142, 126, 123, 111, 102, 101, 32.18992 + 108, 110, 108, 106, 107, 109, 111, 115, 118, 121, 123, 118, 121, 123, 123, 121, 32.18993 + 120, 119, 121, 125, 127, 127, 128, 129, 131, 133, 136, 139, 139, 139, 138, 139, 32.18994 + 139, 140, 140, 137, 143, 145, 141, 139, 139, 135, 130, 124, 116, 110, 110, 112, 32.18995 + 112, 112, 114, 116, 119, 123, 127, 130, 130, 130, 130, 136, 133, 131, 127, 120, 32.18996 + 115, 117, 125, 120, 119, 121, 128, 127, 119, 110, 109, 96, 84, 97, 98, 95, 32.18997 + 105, 105, 112, 112, 110, 108, 109, 109, 104, 95, 90, 91, 91, 117, 255, 255, 32.18998 + 255, 255, 255, 255, 255, 142, 147, 129, 144, 141, 105, 134, 133, 108, 124, 128, 32.18999 + 127, 124, 130, 144, 150, 147, 124, 122, 114, 130, 142, 142, 149, 143, 128, 123, 32.19000 + 111, 104, 102, 107, 108, 107, 105, 107, 109, 112, 115, 118, 120, 121, 113, 118, 32.19001 + 121, 123, 122, 122, 121, 121, 125, 126, 127, 128, 127, 129, 132, 135, 138, 138, 32.19002 + 140, 141, 141, 142, 142, 142, 144, 147, 145, 142, 140, 139, 136, 132, 129, 120, 32.19003 + 114, 114, 115, 113, 112, 113, 118, 121, 127, 132, 135, 136, 134, 133, 139, 136, 32.19004 + 130, 127, 119, 115, 118, 126, 120, 119, 121, 127, 126, 120, 112, 111, 103, 87, 32.19005 + 98, 97, 94, 103, 104, 111, 112, 111, 110, 110, 110, 105, 96, 91, 91, 89, 32.19006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 133, 143, 139, 101, 107, 127, 32.19007 + 129, 129, 130, 128, 123, 129, 141, 145, 140, 142, 142, 138, 140, 139, 135, 137, 32.19008 + 137, 129, 123, 111, 105, 103, 107, 107, 106, 105, 106, 109, 112, 114, 116, 118, 32.19009 + 119, 113, 116, 119, 122, 122, 122, 120, 120, 124, 126, 127, 128, 127, 129, 131, 32.19010 + 134, 137, 139, 141, 143, 144, 145, 144, 144, 145, 144, 140, 137, 135, 133, 129, 32.19011 + 125, 126, 119, 114, 115, 118, 117, 116, 118, 117, 122, 128, 135, 138, 138, 137, 32.19012 + 135, 136, 132, 129, 126, 121, 116, 118, 124, 118, 118, 119, 123, 124, 120, 115, 32.19013 + 111, 102, 85, 97, 101, 98, 106, 104, 112, 112, 111, 110, 111, 111, 105, 96, 32.19014 + 91, 86, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 144, 142, 135, 32.19015 + 110, 67, 86, 136, 130, 129, 122, 116, 123, 137, 143, 138, 134, 136, 142, 139, 32.19016 + 135, 135, 132, 135, 129, 122, 111, 107, 105, 107, 105, 106, 105, 106, 109, 112, 32.19017 + 114, 115, 116, 116, 114, 115, 118, 121, 122, 121, 119, 118, 125, 127, 128, 128, 32.19018 + 128, 129, 131, 133, 137, 138, 141, 143, 145, 145, 145, 145, 142, 138, 134, 133, 32.19019 + 131, 127, 123, 120, 125, 118, 114, 117, 120, 119, 118, 120, 116, 121, 127, 133, 32.19020 + 137, 137, 136, 135, 129, 127, 126, 126, 123, 117, 116, 119, 114, 116, 117, 118, 32.19021 + 120, 119, 115, 111, 99, 82, 97, 104, 104, 109, 105, 112, 111, 110, 108, 109, 32.19022 + 108, 103, 95, 90, 84, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19023 + 255, 144, 140, 124, 37, 37, 104, 128, 130, 126, 119, 123, 136, 144, 143, 133, 32.19024 + 134, 146, 138, 134, 139, 129, 133, 128, 120, 110, 108, 106, 106, 105, 108, 105, 32.19025 + 106, 109, 113, 113, 114, 114, 114, 114, 114, 115, 117, 119, 121, 119, 118, 126, 32.19026 + 128, 129, 130, 130, 130, 131, 133, 137, 138, 140, 142, 143, 144, 144, 144, 148, 32.19027 + 142, 140, 142, 143, 138, 132, 130, 132, 124, 120, 121, 123, 120, 118, 118, 118, 32.19028 + 121, 127, 132, 135, 136, 135, 133, 126, 124, 124, 126, 123, 117, 113, 115, 111, 32.19029 + 114, 114, 114, 116, 119, 116, 111, 98, 79, 96, 108, 109, 113, 108, 114, 111, 32.19030 + 109, 107, 106, 106, 102, 95, 91, 86, 70, 255, 255, 255, 255, 255, 255, 255, 32.19031 + 255, 255, 255, 255, 218, 145, 132, 28, 14, 54, 88, 106, 123, 127, 128, 136, 32.19032 + 141, 141, 143, 139, 151, 139, 137, 146, 130, 132, 127, 118, 109, 109, 108, 107, 32.19033 + 105, 109, 104, 106, 109, 113, 113, 113, 113, 112, 113, 111, 111, 113, 118, 122, 32.19034 + 122, 121, 127, 130, 131, 132, 131, 131, 131, 133, 138, 138, 138, 139, 140, 141, 32.19035 + 142, 143, 150, 144, 144, 151, 155, 151, 145, 143, 138, 131, 126, 127, 127, 123, 32.19036 + 120, 119, 120, 123, 127, 131, 133, 134, 134, 134, 131, 126, 123, 123, 120, 113, 32.19037 + 110, 111, 109, 112, 113, 112, 114, 119, 116, 112, 102, 80, 94, 106, 109, 113, 32.19038 + 108, 116, 114, 110, 105, 104, 104, 101, 95, 92, 83, 63, 255, 255, 255, 255, 32.19039 + 255, 255, 255, 255, 255, 255, 255, 255, 145, 131, 31, 13, 23, 22, 62, 106, 32.19040 + 127, 132, 135, 137, 137, 142, 135, 147, 134, 137, 152, 136, 138, 127, 117, 108, 32.19041 + 109, 109, 107, 107, 110, 104, 106, 109, 112, 113, 113, 112, 111, 111, 109, 108, 32.19042 + 111, 117, 123, 125, 125, 128, 130, 133, 133, 133, 132, 133, 134, 139, 138, 137, 32.19043 + 137, 137, 139, 141, 142, 141, 136, 138, 148, 155, 151, 146, 145, 140, 134, 129, 32.19044 + 131, 132, 128, 124, 124, 123, 124, 127, 130, 133, 134, 134, 134, 138, 130, 124, 32.19045 + 121, 117, 111, 108, 109, 109, 113, 113, 111, 114, 120, 119, 113, 106, 82, 94, 32.19046 + 106, 109, 113, 109, 119, 116, 110, 105, 103, 104, 101, 97, 94, 79, 55, 255, 32.19047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 116, 20, 22, 24, 32.19048 + 20, 37, 63, 112, 126, 144, 136, 141, 146, 147, 146, 145, 143, 145, 141, 135, 32.19049 + 126, 114, 105, 108, 108, 105, 106, 113, 108, 108, 109, 111, 114, 115, 113, 110, 32.19050 + 109, 108, 107, 109, 113, 120, 125, 129, 131, 133, 135, 134, 132, 133, 137, 141, 32.19051 + 134, 136, 137, 135, 136, 140, 140, 138, 148, 140, 136, 143, 157, 165, 161, 155, 32.19052 + 146, 133, 132, 137, 135, 133, 130, 120, 120, 121, 125, 134, 141, 142, 136, 130, 32.19053 + 133, 131, 127, 121, 115, 112, 110, 111, 111, 112, 111, 111, 116, 122, 121, 116, 32.19054 + 106, 87, 82, 103, 119, 117, 112, 117, 120, 105, 102, 109, 104, 100, 99, 93, 32.19055 + 86, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 32.19056 + 35, 17, 23, 17, 29, 42, 79, 88, 108, 109, 122, 126, 127, 127, 126, 130, 32.19057 + 134, 133, 130, 123, 115, 108, 108, 109, 108, 107, 109, 106, 106, 107, 110, 113, 32.19058 + 114, 111, 110, 111, 109, 108, 109, 112, 117, 122, 125, 130, 133, 135, 134, 133, 32.19059 + 132, 134, 137, 137, 140, 140, 138, 138, 142, 143, 140, 148, 141, 134, 136, 145, 32.19060 + 157, 164, 167, 153, 136, 132, 134, 130, 130, 131, 124, 125, 122, 121, 123, 127, 32.19061 + 132, 133, 133, 130, 128, 124, 117, 112, 108, 107, 108, 108, 111, 112, 112, 116, 32.19062 + 122, 123, 119, 108, 88, 85, 104, 122, 121, 117, 118, 124, 110, 107, 111, 106, 32.19063 + 102, 100, 94, 87, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19064 + 255, 255, 111, 43, 16, 14, 22, 33, 41, 68, 68, 89, 94, 110, 98, 100, 32.19065 + 98, 94, 96, 99, 98, 95, 113, 115, 112, 108, 108, 111, 109, 105, 105, 105, 32.19066 + 107, 109, 112, 113, 111, 110, 112, 111, 108, 109, 111, 115, 118, 121, 127, 131, 32.19067 + 135, 135, 133, 131, 132, 134, 138, 141, 141, 138, 139, 143, 143, 141, 143, 140, 32.19068 + 135, 135, 140, 148, 157, 163, 148, 134, 130, 133, 128, 127, 126, 119, 119, 118, 32.19069 + 116, 116, 119, 123, 127, 129, 125, 122, 118, 112, 108, 104, 106, 107, 105, 109, 32.19070 + 114, 113, 115, 121, 124, 123, 111, 92, 87, 104, 123, 125, 121, 121, 126, 112, 32.19071 + 110, 113, 107, 103, 100, 91, 76, 21, 255, 255, 255, 255, 255, 255, 255, 255, 32.19072 + 255, 255, 255, 255, 255, 255, 36, 23, 6, 27, 45, 59, 85, 81, 96, 97, 32.19073 + 110, 125, 127, 127, 125, 125, 128, 124, 117, 98, 110, 115, 108, 104, 109, 110, 32.19074 + 106, 106, 106, 107, 110, 113, 114, 112, 111, 110, 109, 108, 108, 110, 114, 117, 32.19075 + 119, 124, 129, 134, 136, 134, 133, 133, 135, 136, 140, 139, 136, 137, 140, 141, 32.19076 + 138, 136, 136, 138, 141, 142, 144, 141, 139, 137, 126, 126, 132, 126, 122, 119, 32.19077 + 110, 109, 113, 118, 121, 120, 119, 117, 115, 116, 115, 112, 108, 105, 103, 106, 32.19078 + 106, 104, 111, 117, 115, 115, 120, 123, 125, 115, 97, 88, 98, 116, 125, 125, 32.19079 + 123, 121, 110, 109, 112, 106, 102, 98, 87, 75, 18, 255, 255, 255, 255, 255, 32.19080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 22, 12, 25, 48, 66, 91, 32.19081 + 86, 100, 101, 111, 112, 118, 125, 129, 133, 135, 130, 123, 84, 102, 112, 106, 32.19082 + 99, 104, 109, 111, 107, 107, 109, 112, 115, 116, 114, 114, 108, 108, 108, 109, 32.19083 + 111, 115, 117, 120, 123, 128, 134, 136, 135, 134, 136, 138, 137, 140, 140, 137, 32.19084 + 137, 141, 140, 137, 137, 136, 137, 142, 146, 144, 135, 127, 135, 121, 120, 122, 32.19085 + 115, 111, 110, 104, 111, 115, 121, 122, 118, 112, 106, 103, 105, 106, 105, 102, 32.19086 + 101, 101, 104, 107, 109, 115, 118, 115, 115, 119, 123, 122, 119, 103, 88, 90, 32.19087 + 105, 118, 125, 125, 118, 109, 109, 111, 106, 105, 100, 88, 79, 27, 255, 255, 32.19088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 26, 17, 25, 27, 32.19089 + 49, 60, 81, 77, 98, 102, 114, 118, 126, 134, 141, 143, 144, 135, 127, 84, 32.19090 + 95, 104, 102, 99, 102, 108, 112, 107, 108, 109, 113, 116, 118, 116, 115, 108, 32.19091 + 108, 108, 110, 112, 115, 118, 119, 124, 129, 134, 136, 134, 134, 136, 139, 138, 32.19092 + 141, 141, 138, 139, 142, 141, 138, 142, 138, 134, 137, 141, 144, 138, 132, 136, 32.19093 + 120, 113, 110, 102, 102, 109, 108, 124, 122, 118, 114, 109, 106, 102, 100, 101, 32.19094 + 101, 100, 99, 97, 100, 103, 106, 111, 115, 118, 116, 117, 121, 123, 121, 122, 32.19095 + 109, 92, 86, 95, 110, 120, 122, 117, 111, 112, 114, 109, 108, 103, 87, 58, 32.19096 + 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 24, 32.19097 + 19, 29, 38, 54, 59, 74, 72, 97, 105, 116, 120, 128, 135, 138, 140, 139, 32.19098 + 130, 121, 95, 92, 92, 98, 102, 104, 106, 109, 106, 107, 108, 112, 116, 117, 32.19099 + 115, 115, 110, 110, 111, 112, 112, 115, 117, 118, 128, 131, 134, 133, 131, 131, 32.19100 + 133, 136, 137, 140, 140, 137, 137, 140, 140, 137, 143, 140, 136, 134, 135, 136, 32.19101 + 134, 133, 124, 110, 108, 110, 105, 108, 117, 117, 125, 119, 110, 106, 106, 107, 32.19102 + 106, 104, 106, 105, 104, 102, 102, 103, 106, 109, 111, 114, 116, 114, 118, 124, 32.19103 + 124, 121, 120, 113, 100, 88, 91, 104, 115, 115, 116, 112, 114, 113, 107, 108, 32.19104 + 101, 83, 27, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19105 + 255, 102, 20, 27, 22, 42, 58, 60, 75, 73, 98, 103, 112, 117, 123, 131, 32.19106 + 136, 142, 145, 140, 132, 107, 92, 84, 95, 106, 108, 104, 105, 105, 105, 107, 32.19107 + 111, 115, 116, 114, 114, 113, 113, 113, 113, 113, 114, 115, 115, 131, 133, 134, 32.19108 + 132, 128, 128, 130, 133, 135, 138, 137, 134, 134, 138, 137, 134, 138, 140, 140, 32.19109 + 138, 131, 126, 124, 124, 104, 98, 106, 117, 117, 120, 126, 123, 113, 108, 104, 32.19110 + 106, 110, 114, 112, 109, 113, 113, 112, 110, 108, 108, 111, 114, 111, 112, 112, 32.19111 + 113, 120, 127, 127, 122, 118, 116, 106, 91, 89, 101, 110, 111, 114, 111, 113, 32.19112 + 112, 105, 105, 97, 78, 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19113 + 255, 255, 255, 255, 137, 24, 28, 13, 36, 56, 70, 68, 92, 79, 105, 109, 32.19114 + 119, 124, 130, 136, 143, 147, 142, 133, 113, 84, 80, 99, 105, 102, 105, 109, 32.19115 + 101, 104, 109, 112, 114, 115, 115, 118, 111, 113, 114, 113, 113, 113, 114, 116, 32.19116 + 132, 132, 132, 133, 133, 133, 132, 132, 135, 133, 131, 133, 138, 140, 138, 136, 32.19117 + 141, 138, 135, 135, 126, 114, 104, 102, 133, 131, 129, 129, 129, 129, 126, 124, 32.19118 + 136, 116, 101, 104, 114, 121, 121, 121, 122, 121, 118, 115, 111, 112, 114, 116, 32.19119 + 118, 110, 113, 116, 118, 127, 133, 124, 124, 109, 105, 101, 88, 86, 99, 107, 32.19120 + 113, 99, 106, 110, 105, 91, 104, 36, 18, 255, 255, 255, 255, 255, 255, 255, 32.19121 + 255, 255, 255, 255, 255, 255, 255, 133, 51, 22, 15, 35, 67, 56, 73, 67, 32.19122 + 84, 94, 108, 119, 125, 129, 132, 137, 142, 141, 136, 111, 82, 78, 96, 102, 32.19123 + 100, 103, 106, 101, 104, 107, 110, 111, 112, 112, 112, 113, 114, 116, 116, 115, 32.19124 + 116, 117, 119, 132, 133, 134, 134, 132, 131, 131, 133, 135, 135, 134, 135, 136, 32.19125 + 138, 140, 143, 145, 136, 127, 123, 119, 118, 121, 127, 128, 127, 128, 129, 132, 32.19126 + 135, 135, 134, 128, 131, 119, 103, 106, 124, 128, 116, 118, 122, 124, 118, 111, 32.19127 + 113, 124, 135, 119, 108, 115, 129, 128, 126, 132, 136, 127, 114, 112, 98, 94, 32.19128 + 92, 104, 99, 110, 103, 107, 104, 101, 99, 95, 41, 106, 255, 255, 255, 255, 32.19129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 71, 15, 13, 45, 81, 32.19130 + 67, 74, 63, 83, 97, 111, 119, 124, 128, 128, 130, 136, 140, 139, 111, 83, 32.19131 + 78, 95, 100, 100, 103, 105, 103, 104, 107, 110, 111, 112, 111, 111, 114, 115, 32.19132 + 117, 118, 117, 118, 120, 122, 126, 131, 136, 136, 131, 130, 134, 138, 136, 137, 32.19133 + 137, 136, 136, 137, 140, 144, 136, 127, 118, 115, 117, 124, 134, 145, 135, 133, 32.19134 + 132, 133, 135, 136, 135, 132, 130, 140, 133, 115, 110, 121, 125, 118, 129, 134, 32.19135 + 136, 133, 124, 118, 117, 119, 118, 112, 115, 122, 127, 137, 136, 120, 132, 117, 32.19136 + 120, 97, 100, 92, 105, 91, 110, 109, 108, 102, 95, 104, 72, 45, 255, 255, 32.19137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 60, 18, 32.19138 + 9, 50, 81, 90, 68, 77, 70, 106, 112, 117, 125, 129, 128, 129, 134, 138, 32.19139 + 139, 113, 87, 81, 95, 101, 102, 106, 106, 104, 105, 107, 111, 115, 116, 115, 32.19140 + 114, 114, 115, 118, 119, 118, 119, 120, 122, 120, 128, 135, 135, 131, 130, 136, 32.19141 + 142, 138, 137, 137, 137, 138, 137, 136, 134, 119, 117, 116, 121, 126, 129, 135, 32.19142 + 140, 140, 138, 135, 135, 136, 136, 134, 133, 137, 131, 129, 132, 123, 110, 108, 32.19143 + 117, 115, 113, 113, 117, 124, 127, 125, 121, 124, 134, 135, 130, 157, 205, 205, 32.19144 + 157, 132, 115, 123, 102, 102, 83, 99, 92, 113, 110, 107, 105, 95, 96, 42, 32.19145 + 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19146 + 139, 37, 37, 21, 37, 77, 95, 75, 77, 62, 96, 106, 115, 124, 130, 130, 32.19147 + 131, 134, 136, 135, 113, 88, 82, 93, 98, 102, 106, 105, 101, 101, 104, 110, 32.19148 + 116, 119, 118, 117, 113, 115, 118, 119, 119, 119, 119, 120, 122, 129, 135, 135, 32.19149 + 129, 128, 133, 139, 139, 136, 135, 137, 139, 136, 128, 120, 115, 116, 121, 130, 32.19150 + 134, 133, 133, 135, 134, 133, 133, 135, 139, 141, 141, 140, 132, 124, 125, 133, 32.19151 + 128, 109, 100, 102, 114, 109, 103, 98, 98, 102, 109, 113, 106, 119, 118, 106, 32.19152 + 124, 169, 172, 131, 133, 115, 122, 112, 100, 75, 93, 104, 109, 102, 100, 111, 32.19153 + 98, 77, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19154 + 255, 255, 255, 209, 28, 58, 45, 33, 80, 83, 98, 74, 73, 82, 102, 114, 32.19155 + 123, 129, 132, 133, 135, 133, 129, 110, 87, 80, 89, 94, 100, 104, 101, 97, 32.19156 + 97, 100, 107, 114, 119, 118, 116, 113, 115, 118, 119, 118, 117, 116, 117, 128, 32.19157 + 131, 135, 133, 127, 124, 126, 130, 137, 135, 135, 136, 136, 131, 123, 115, 126, 32.19158 + 125, 128, 135, 137, 136, 137, 140, 141, 138, 137, 138, 139, 140, 140, 139, 128, 32.19159 + 134, 136, 131, 128, 125, 114, 96, 111, 121, 127, 116, 95, 80, 81, 87, 112, 32.19160 + 113, 118, 117, 110, 117, 128, 126, 128, 118, 119, 117, 90, 79, 93, 112, 101, 32.19161 + 96, 97, 107, 92, 53, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19162 + 255, 255, 255, 255, 255, 255, 255, 35, 60, 63, 45, 81, 81, 107, 89, 82, 32.19163 + 79, 96, 115, 121, 125, 127, 131, 134, 132, 126, 110, 88, 80, 88, 93, 100, 32.19164 + 104, 101, 99, 98, 100, 106, 115, 119, 117, 115, 115, 116, 119, 120, 119, 117, 32.19165 + 115, 115, 128, 130, 130, 130, 128, 126, 125, 127, 133, 135, 137, 135, 129, 124, 32.19166 + 123, 123, 131, 129, 130, 136, 138, 139, 141, 145, 150, 146, 143, 142, 141, 139, 32.19167 + 136, 134, 135, 140, 141, 137, 133, 131, 123, 111, 92, 106, 121, 123, 113, 101, 32.19168 + 96, 97, 89, 85, 99, 115, 112, 112, 128, 140, 116, 123, 110, 108, 69, 90, 32.19169 + 97, 108, 97, 102, 101, 95, 76, 28, 106, 255, 255, 255, 255, 255, 255, 255, 32.19170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 49, 67, 58, 72, 87, 32.19171 + 95, 110, 74, 84, 86, 117, 120, 121, 123, 129, 134, 132, 125, 113, 90, 83, 32.19172 + 90, 95, 102, 106, 102, 103, 102, 103, 109, 117, 121, 119, 116, 116, 118, 121, 32.19173 + 121, 119, 117, 115, 115, 123, 124, 125, 127, 129, 129, 130, 129, 130, 137, 140, 32.19174 + 134, 123, 119, 125, 134, 127, 126, 130, 138, 141, 140, 141, 144, 145, 143, 142, 32.19175 + 143, 144, 145, 144, 142, 141, 129, 130, 141, 138, 120, 117, 127, 117, 108, 100, 32.19176 + 99, 105, 109, 107, 103, 96, 91, 97, 105, 109, 118, 120, 109, 105, 125, 103, 32.19177 + 97, 52, 99, 99, 99, 98, 114, 109, 86, 62, 13, 255, 255, 255, 255, 255, 32.19178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 44, 53, 74, 32.19179 + 69, 57, 80, 109, 102, 92, 94, 93, 103, 109, 116, 122, 129, 133, 132, 129, 32.19180 + 108, 90, 87, 94, 95, 100, 106, 105, 102, 105, 108, 114, 119, 120, 119, 118, 32.19181 + 117, 117, 118, 117, 116, 117, 119, 121, 125, 127, 127, 126, 124, 125, 130, 134, 32.19182 + 138, 134, 139, 128, 110, 122, 130, 112, 118, 134, 131, 132, 133, 137, 150, 142, 32.19183 + 146, 148, 142, 156, 140, 144, 129, 137, 143, 135, 133, 139, 143, 138, 133, 130, 32.19184 + 117, 121, 119, 110, 98, 97, 102, 109, 119, 92, 74, 82, 104, 118, 118, 115, 32.19185 + 119, 98, 76, 72, 84, 98, 105, 106, 116, 106, 108, 78, 32, 110, 255, 255, 32.19186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19187 + 192, 49, 67, 77, 61, 73, 103, 110, 99, 99, 106, 94, 101, 114, 125, 130, 32.19188 + 131, 133, 134, 113, 93, 87, 92, 94, 99, 107, 107, 103, 104, 107, 112, 118, 32.19189 + 121, 121, 120, 118, 119, 119, 118, 117, 117, 118, 121, 124, 126, 127, 126, 124, 32.19190 + 124, 128, 133, 135, 133, 137, 126, 112, 122, 130, 113, 112, 122, 118, 131, 135, 32.19191 + 133, 140, 129, 142, 139, 143, 139, 155, 139, 153, 144, 129, 126, 128, 136, 139, 32.19192 + 133, 127, 124, 118, 120, 117, 107, 97, 92, 94, 98, 98, 89, 88, 100, 113, 32.19193 + 113, 105, 98, 77, 79, 79, 77, 84, 95, 100, 98, 130, 118, 89, 52, 28, 32.19194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19195 + 255, 255, 255, 255, 46, 66, 82, 70, 69, 90, 109, 102, 99, 113, 93, 96, 32.19196 + 109, 125, 132, 129, 130, 135, 118, 94, 85, 91, 93, 98, 106, 108, 104, 104, 32.19197 + 107, 110, 116, 120, 121, 121, 120, 121, 121, 119, 118, 117, 118, 120, 122, 125, 32.19198 + 127, 126, 123, 123, 126, 129, 130, 132, 134, 123, 113, 122, 127, 115, 126, 119, 32.19199 + 105, 120, 129, 128, 144, 147, 130, 154, 149, 158, 146, 133, 147, 142, 148, 145, 32.19200 + 144, 144, 140, 131, 124, 122, 117, 115, 111, 105, 98, 92, 90, 90, 81, 82, 32.19201 + 87, 93, 93, 84, 74, 72, 73, 78, 77, 75, 84, 101, 109, 106, 133, 111, 32.19202 + 58, 24, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19203 + 255, 255, 255, 255, 255, 255, 255, 46, 66, 81, 88, 80, 83, 103, 105, 100, 32.19204 + 112, 104, 97, 102, 119, 129, 127, 127, 132, 120, 94, 85, 93, 95, 98, 104, 32.19205 + 106, 105, 104, 106, 109, 115, 119, 121, 121, 121, 122, 122, 121, 119, 118, 118, 32.19206 + 119, 120, 124, 126, 126, 123, 121, 123, 125, 126, 132, 131, 119, 114, 123, 125, 32.19207 + 116, 116, 102, 85, 100, 104, 93, 111, 125, 149, 140, 127, 120, 159, 139, 171, 32.19208 + 140, 146, 146, 145, 142, 137, 132, 129, 130, 114, 111, 109, 109, 106, 102, 98, 32.19209 + 98, 97, 97, 95, 91, 84, 80, 81, 86, 93, 84, 78, 85, 101, 112, 116, 32.19210 + 116, 127, 85, 34, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 51, 54, 70, 100, 98, 82, 32.19212 + 95, 109, 108, 111, 116, 101, 95, 108, 123, 128, 129, 131, 120, 93, 86, 97, 32.19213 + 99, 98, 101, 102, 105, 104, 105, 108, 113, 118, 120, 121, 120, 122, 123, 122, 32.19214 + 119, 118, 117, 118, 121, 124, 126, 125, 122, 120, 121, 123, 123, 133, 130, 116, 32.19215 + 116, 124, 123, 118, 102, 96, 91, 114, 108, 80, 88, 101, 77, 96, 91, 123, 32.19216 + 123, 126, 133, 129, 150, 153, 154, 150, 142, 135, 128, 125, 118, 113, 111, 116, 32.19217 + 116, 112, 109, 109, 108, 107, 103, 96, 90, 88, 90, 94, 86, 81, 89, 114, 32.19218 + 124, 116, 114, 123, 113, 53, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 44, 55, 32.19220 + 92, 101, 82, 82, 102, 110, 108, 118, 105, 93, 96, 112, 128, 134, 133, 123, 32.19221 + 93, 86, 99, 101, 98, 99, 100, 103, 103, 105, 109, 114, 118, 120, 118, 118, 32.19222 + 120, 122, 121, 119, 118, 117, 118, 123, 125, 126, 124, 120, 119, 120, 123, 121, 32.19223 + 136, 129, 114, 119, 125, 121, 120, 114, 110, 106, 128, 124, 104, 122, 143, 102, 32.19224 + 97, 103, 100, 98, 91, 109, 130, 123, 130, 137, 140, 141, 140, 133, 126, 125, 32.19225 + 118, 117, 121, 122, 114, 112, 115, 112, 116, 115, 104, 92, 82, 76, 73, 86, 32.19226 + 92, 109, 127, 124, 112, 118, 138, 73, 22, 98, 255, 255, 255, 255, 255, 255, 32.19227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19228 + 255, 58, 59, 79, 95, 89, 78, 92, 108, 108, 115, 112, 100, 93, 102, 122, 32.19229 + 132, 130, 127, 95, 84, 97, 100, 96, 98, 100, 101, 102, 105, 109, 115, 118, 32.19230 + 118, 117, 115, 118, 120, 121, 119, 118, 117, 118, 125, 127, 126, 123, 119, 118, 32.19231 + 121, 124, 121, 139, 130, 113, 121, 125, 119, 122, 121, 111, 96, 112, 115, 112, 32.19232 + 143, 169, 146, 85, 170, 125, 225, 130, 119, 70, 89, 93, 94, 99, 111, 124, 32.19233 + 128, 127, 125, 118, 116, 121, 119, 110, 109, 116, 118, 122, 116, 97, 80, 74, 32.19234 + 75, 78, 107, 116, 123, 123, 119, 116, 115, 117, 36, 15, 255, 255, 255, 255, 32.19235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19236 + 255, 255, 255, 255, 84, 78, 79, 97, 101, 84, 89, 109, 112, 112, 117, 108, 32.19237 + 92, 93, 114, 126, 124, 131, 96, 83, 95, 97, 95, 98, 102, 100, 102, 105, 32.19238 + 110, 116, 118, 117, 116, 113, 116, 119, 120, 119, 118, 117, 118, 127, 128, 126, 32.19239 + 123, 118, 118, 121, 125, 123, 141, 130, 113, 122, 126, 118, 122, 131, 120, 102, 32.19240 + 115, 118, 113, 137, 155, 142, 114, 143, 156, 139, 144, 107, 156, 153, 140, 116, 32.19241 + 94, 88, 95, 98, 95, 120, 112, 112, 118, 115, 106, 108, 116, 95, 95, 84, 32.19242 + 60, 45, 54, 77, 95, 117, 129, 130, 125, 128, 129, 99, 60, 25, 255, 255, 32.19243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19244 + 255, 255, 255, 255, 255, 255, 255, 75, 82, 77, 85, 101, 98, 82, 87, 111, 32.19245 + 121, 125, 118, 99, 96, 112, 126, 129, 129, 114, 90, 86, 97, 100, 97, 104, 32.19246 + 88, 99, 109, 112, 116, 118, 115, 107, 121, 122, 123, 121, 119, 116, 115, 115, 32.19247 + 127, 128, 127, 125, 123, 123, 124, 126, 132, 135, 132, 122, 114, 118, 126, 132, 32.19248 + 130, 125, 115, 106, 103, 114, 134, 151, 131, 130, 141, 151, 165, 157, 136, 155, 32.19249 + 158, 168, 116, 129, 141, 86, 77, 89, 88, 95, 98, 92, 103, 96, 73, 80, 32.19250 + 67, 67, 42, 56, 52, 79, 94, 99, 110, 131, 125, 124, 132, 116, 63, 34, 32.19251 + 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 85, 78, 80, 97, 99, 32.19253 + 77, 77, 107, 115, 123, 121, 106, 97, 105, 120, 128, 128, 119, 97, 87, 97, 32.19254 + 102, 100, 103, 90, 99, 108, 111, 114, 117, 115, 108, 116, 117, 119, 119, 117, 32.19255 + 116, 115, 116, 124, 125, 124, 123, 122, 122, 124, 126, 131, 135, 133, 123, 116, 32.19256 + 119, 126, 131, 131, 127, 118, 108, 101, 104, 114, 125, 102, 97, 142, 173, 162, 32.19257 + 147, 147, 167, 157, 196, 159, 144, 151, 142, 149, 131, 89, 76, 67, 79, 85, 32.19258 + 77, 95, 127, 120, 48, 48, 75, 66, 79, 81, 98, 122, 121, 126, 132, 109, 32.19259 + 104, 23, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 84, 32.19261 + 78, 91, 101, 81, 74, 103, 109, 119, 124, 116, 101, 100, 112, 126, 128, 127, 32.19262 + 106, 89, 96, 104, 103, 103, 94, 100, 106, 108, 112, 114, 114, 110, 110, 113, 32.19263 + 115, 116, 116, 116, 116, 117, 121, 122, 122, 122, 121, 121, 124, 126, 131, 134, 32.19264 + 133, 124, 118, 121, 126, 129, 129, 128, 122, 113, 103, 99, 99, 104, 109, 71, 32.19265 + 116, 165, 158, 152, 153, 151, 151, 162, 155, 183, 182, 151, 158, 154, 144, 193, 32.19266 + 190, 156, 118, 116, 135, 104, 113, 15, 56, 80, 70, 76, 79, 103, 126, 128, 32.19267 + 130, 112, 128, 26, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19269 + 255, 87, 94, 83, 82, 97, 90, 80, 98, 107, 113, 122, 121, 109, 100, 106, 32.19270 + 120, 127, 133, 114, 90, 92, 102, 105, 105, 99, 101, 105, 107, 110, 111, 112, 32.19271 + 111, 109, 112, 114, 115, 115, 115, 115, 116, 119, 120, 121, 121, 121, 122, 125, 32.19272 + 127, 131, 134, 133, 125, 120, 123, 126, 128, 129, 128, 126, 120, 111, 104, 101, 32.19273 + 101, 101, 87, 127, 145, 118, 111, 127, 152, 138, 158, 169, 183, 178, 173, 177, 32.19274 + 141, 128, 158, 152, 156, 130, 117, 145, 110, 56, 20, 72, 71, 66, 69, 88, 32.19275 + 106, 119, 148, 110, 112, 77, 24, 113, 255, 255, 255, 255, 255, 255, 255, 255, 32.19276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19277 + 255, 255, 255, 255, 82, 98, 89, 74, 86, 97, 92, 89, 106, 109, 117, 121, 32.19278 + 116, 108, 107, 113, 126, 135, 120, 94, 91, 99, 104, 108, 101, 101, 104, 107, 32.19279 + 109, 109, 109, 110, 112, 114, 115, 115, 114, 113, 113, 114, 119, 121, 121, 121, 32.19280 + 121, 123, 126, 128, 133, 135, 132, 125, 121, 124, 126, 128, 130, 130, 128, 123, 32.19281 + 117, 111, 107, 106, 119, 99, 92, 89, 108, 119, 101, 103, 142, 132, 141, 162, 32.19282 + 161, 166, 177, 154, 158, 166, 143, 155, 143, 126, 121, 54, 44, 66, 81, 62, 32.19283 + 73, 64, 91, 111, 126, 122, 127, 74, 20, 60, 255, 255, 255, 255, 255, 255, 32.19284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19285 + 255, 255, 255, 255, 255, 255, 255, 197, 93, 91, 74, 73, 93, 98, 81, 104, 32.19286 + 107, 112, 117, 119, 117, 113, 109, 121, 134, 125, 105, 97, 97, 101, 110, 103, 32.19287 + 101, 103, 107, 109, 106, 106, 109, 112, 114, 115, 115, 113, 111, 110, 111, 119, 32.19288 + 121, 121, 121, 121, 122, 125, 128, 135, 136, 131, 124, 121, 125, 127, 128, 133, 32.19289 + 132, 129, 126, 120, 115, 110, 106, 85, 101, 104, 85, 89, 93, 80, 99, 123, 32.19290 + 84, 97, 146, 154, 137, 143, 154, 131, 169, 161, 142, 120, 111, 95, 29, 67, 32.19291 + 88, 65, 54, 78, 69, 91, 120, 132, 110, 111, 37, 19, 116, 255, 255, 255, 32.19292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 90, 85, 70, 85, 32.19294 + 98, 80, 99, 107, 114, 114, 119, 124, 119, 110, 115, 130, 131, 120, 110, 98, 32.19295 + 96, 109, 104, 101, 103, 108, 109, 105, 104, 107, 110, 112, 113, 113, 111, 109, 32.19296 + 108, 109, 118, 120, 120, 120, 119, 120, 123, 125, 137, 137, 130, 122, 120, 125, 32.19297 + 128, 129, 133, 133, 132, 130, 125, 119, 112, 106, 100, 85, 91, 91, 96, 103, 32.19298 + 86, 79, 86, 94, 111, 114, 121, 138, 130, 104, 146, 139, 124, 115, 88, 49, 32.19299 + 48, 74, 73, 74, 62, 55, 64, 87, 94, 121, 121, 106, 29, 48, 13, 255, 32.19300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 90, 32.19302 + 98, 71, 77, 97, 83, 94, 108, 115, 113, 117, 126, 124, 112, 112, 128, 135, 32.19303 + 132, 119, 100, 95, 108, 105, 102, 104, 109, 109, 104, 103, 106, 107, 109, 110, 32.19304 + 110, 109, 108, 107, 109, 118, 118, 119, 118, 118, 118, 121, 122, 138, 136, 130, 32.19305 + 121, 118, 124, 130, 130, 133, 134, 134, 134, 130, 124, 116, 108, 109, 81, 110, 32.19306 + 118, 90, 90, 95, 89, 95, 87, 91, 91, 90, 89, 79, 81, 84, 86, 81, 32.19307 + 70, 81, 77, 58, 67, 64, 60, 83, 65, 46, 105, 99, 114, 122, 41, 17, 32.19308 + 7, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19310 + 255, 202, 88, 95, 70, 62, 100, 97, 91, 100, 108, 111, 115, 121, 125, 125, 32.19311 + 112, 121, 131, 131, 123, 112, 102, 97, 109, 107, 106, 106, 106, 104, 101, 99, 32.19312 + 106, 107, 108, 109, 107, 105, 103, 101, 116, 116, 116, 117, 117, 121, 124, 125, 32.19313 + 130, 130, 126, 119, 116, 122, 128, 129, 128, 130, 132, 134, 133, 129, 120, 113, 32.19314 + 100, 100, 101, 105, 108, 106, 100, 94, 87, 87, 88, 90, 90, 86, 80, 75, 32.19315 + 84, 82, 80, 76, 66, 57, 56, 62, 56, 78, 64, 51, 88, 90, 114, 122, 32.19316 + 103, 29, 4, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19318 + 255, 255, 255, 255, 255, 93, 93, 75, 66, 87, 95, 89, 98, 105, 109, 114, 32.19319 + 122, 126, 126, 115, 118, 123, 129, 130, 123, 110, 99, 100, 103, 105, 105, 103, 32.19320 + 100, 100, 101, 102, 105, 109, 112, 111, 109, 108, 107, 114, 115, 116, 116, 117, 32.19321 + 119, 122, 126, 132, 134, 130, 123, 121, 126, 130, 132, 128, 128, 128, 131, 131, 32.19322 + 131, 127, 124, 113, 108, 102, 101, 104, 105, 104, 102, 88, 89, 89, 90, 89, 32.19323 + 84, 78, 72, 78, 77, 78, 76, 67, 58, 57, 62, 67, 59, 57, 65, 96, 32.19324 + 100, 118, 95, 42, 16, 16, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19326 + 255, 255, 255, 255, 255, 255, 255, 255, 202, 92, 84, 73, 69, 95, 90, 98, 32.19327 + 104, 107, 113, 122, 127, 129, 121, 116, 115, 124, 135, 135, 121, 106, 96, 101, 32.19328 + 106, 106, 102, 99, 100, 104, 96, 102, 110, 114, 112, 109, 106, 106, 111, 115, 32.19329 + 118, 117, 115, 116, 122, 127, 132, 135, 132, 127, 124, 127, 130, 130, 130, 128, 32.19330 + 126, 126, 129, 130, 131, 131, 124, 119, 111, 108, 107, 107, 103, 101, 89, 89, 32.19331 + 89, 89, 87, 84, 77, 72, 80, 80, 82, 83, 75, 66, 63, 67, 69, 53, 32.19332 + 61, 74, 99, 109, 115, 50, 23, 34, 113, 255, 255, 255, 255, 255, 255, 255, 32.19333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 92, 81, 59, 32.19335 + 93, 92, 99, 104, 106, 111, 120, 126, 128, 128, 119, 113, 119, 133, 138, 130, 32.19336 + 119, 104, 106, 108, 109, 108, 105, 103, 101, 91, 99, 107, 110, 107, 103, 99, 32.19337 + 99, 108, 113, 118, 117, 113, 114, 121, 129, 128, 132, 132, 127, 124, 126, 126, 32.19338 + 125, 132, 129, 126, 126, 127, 129, 129, 129, 129, 127, 125, 124, 121, 114, 103, 32.19339 + 94, 88, 88, 87, 86, 85, 81, 75, 69, 80, 79, 79, 80, 74, 66, 62, 32.19340 + 65, 62, 69, 76, 73, 96, 105, 94, 20, 32, 255, 255, 255, 255, 255, 255, 32.19341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 32.19343 + 97, 87, 60, 89, 96, 102, 107, 107, 110, 117, 122, 123, 133, 125, 116, 117, 32.19344 + 125, 132, 133, 130, 117, 111, 107, 108, 113, 112, 104, 95, 88, 94, 102, 105, 32.19345 + 104, 101, 98, 98, 106, 112, 116, 116, 112, 113, 120, 128, 125, 130, 131, 127, 32.19346 + 124, 125, 124, 122, 127, 126, 124, 125, 128, 128, 127, 127, 130, 130, 131, 132, 32.19347 + 130, 122, 109, 99, 93, 91, 89, 87, 86, 82, 76, 71, 80, 77, 73, 72, 32.19348 + 67, 61, 58, 61, 63, 85, 84, 78, 99, 71, 52, 23, 109, 255, 255, 255, 32.19349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19351 + 255, 255, 255, 202, 89, 73, 78, 96, 103, 107, 108, 110, 116, 120, 121, 132, 32.19352 + 128, 122, 118, 120, 126, 132, 138, 126, 116, 106, 107, 114, 114, 104, 93, 89, 32.19353 + 91, 96, 100, 104, 106, 106, 105, 105, 110, 113, 113, 112, 114, 119, 125, 127, 32.19354 + 131, 132, 129, 127, 128, 128, 125, 120, 121, 122, 125, 129, 131, 129, 128, 132, 32.19355 + 130, 128, 128, 128, 127, 121, 116, 102, 99, 97, 95, 93, 89, 83, 78, 87, 32.19356 + 82, 78, 77, 73, 67, 65, 70, 74, 84, 83, 90, 97, 27, 14, 37, 255, 32.19357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19359 + 255, 255, 255, 255, 255, 255, 255, 199, 86, 67, 93, 101, 107, 109, 111, 117, 32.19360 + 120, 120, 127, 126, 124, 121, 119, 123, 131, 138, 131, 120, 112, 110, 115, 115, 32.19361 + 107, 99, 94, 92, 90, 94, 102, 108, 109, 109, 106, 108, 110, 111, 112, 115, 32.19362 + 120, 123, 127, 133, 133, 130, 128, 131, 131, 129, 122, 121, 122, 125, 129, 130, 32.19363 + 130, 130, 133, 130, 125, 124, 125, 125, 123, 121, 110, 107, 105, 103, 100, 96, 32.19364 + 89, 85, 90, 87, 84, 87, 86, 81, 79, 81, 79, 79, 89, 96, 76, 6, 32.19365 + 11, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 58, 91, 99, 106, 32.19368 + 109, 112, 118, 121, 121, 122, 123, 124, 123, 122, 125, 130, 135, 133, 126, 118, 32.19369 + 115, 117, 117, 112, 107, 101, 94, 88, 91, 99, 106, 107, 105, 107, 107, 108, 32.19370 + 110, 113, 117, 120, 122, 126, 131, 133, 129, 128, 130, 132, 130, 130, 127, 124, 32.19371 + 125, 127, 129, 128, 128, 132, 130, 126, 126, 125, 123, 118, 114, 114, 111, 109, 32.19372 + 107, 103, 99, 94, 90, 85, 83, 85, 90, 91, 87, 83, 83, 77, 80, 101, 32.19373 + 92, 51, 9, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 32.19376 + 83, 98, 110, 111, 109, 115, 120, 123, 122, 129, 126, 125, 132, 130, 124, 128, 32.19377 + 131, 128, 124, 121, 120, 118, 114, 112, 108, 103, 92, 81, 80, 91, 102, 107, 32.19378 + 107, 101, 100, 106, 112, 115, 117, 119, 123, 127, 130, 128, 126, 127, 133, 139, 32.19379 + 134, 130, 126, 123, 123, 124, 125, 125, 134, 126, 119, 122, 124, 122, 116, 112, 32.19380 + 110, 108, 105, 103, 101, 98, 95, 92, 85, 91, 98, 100, 94, 87, 80, 78, 32.19381 + 80, 82, 100, 88, 0, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19384 + 255, 255, 197, 81, 95, 107, 110, 109, 114, 119, 122, 121, 128, 125, 124, 131, 32.19385 + 130, 127, 132, 132, 130, 127, 125, 124, 121, 116, 113, 112, 109, 100, 89, 85, 32.19386 + 89, 92, 92, 108, 104, 101, 102, 103, 106, 114, 124, 121, 125, 130, 130, 130, 32.19387 + 129, 133, 135, 135, 131, 127, 126, 126, 126, 125, 126, 134, 127, 121, 123, 124, 32.19388 + 121, 115, 113, 105, 103, 101, 101, 99, 98, 94, 92, 93, 97, 100, 100, 94, 32.19389 + 87, 81, 81, 91, 85, 99, 45, 18, 86, 255, 255, 255, 255, 255, 255, 255, 32.19390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19392 + 255, 255, 255, 255, 255, 255, 255, 92, 104, 109, 110, 115, 119, 121, 121, 127, 32.19393 + 123, 121, 130, 131, 129, 136, 132, 131, 130, 129, 128, 124, 119, 115, 116, 116, 32.19394 + 111, 100, 92, 88, 83, 77, 99, 99, 102, 103, 100, 100, 109, 122, 119, 122, 32.19395 + 126, 130, 132, 133, 133, 132, 136, 133, 130, 129, 129, 128, 127, 125, 133, 128, 32.19396 + 124, 125, 123, 118, 115, 115, 102, 100, 99, 99, 99, 98, 95, 93, 100, 101, 32.19397 + 101, 98, 92, 87, 84, 83, 94, 92, 72, 6, 24, 255, 255, 255, 255, 255, 32.19398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 109, 112, 116, 119, 32.19401 + 122, 124, 130, 123, 121, 129, 130, 130, 138, 132, 132, 132, 133, 131, 127, 120, 32.19402 + 115, 120, 122, 119, 109, 100, 93, 84, 75, 83, 87, 97, 103, 102, 100, 103, 32.19403 + 112, 118, 120, 122, 127, 131, 133, 133, 131, 135, 133, 132, 132, 132, 131, 128, 32.19404 + 126, 133, 129, 127, 128, 125, 118, 116, 117, 105, 103, 102, 102, 101, 100, 97, 32.19405 + 95, 103, 101, 98, 94, 90, 88, 86, 87, 87, 100, 27, 0, 255, 255, 255, 32.19406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 32.19409 + 114, 118, 120, 122, 128, 133, 125, 121, 128, 129, 129, 137, 131, 131, 132, 132, 32.19410 + 132, 128, 121, 116, 121, 124, 122, 115, 107, 102, 94, 86, 78, 79, 86, 93, 32.19411 + 97, 98, 101, 107, 117, 116, 117, 120, 125, 131, 133, 133, 133, 132, 132, 134, 32.19412 + 134, 134, 131, 129, 133, 130, 128, 130, 126, 120, 116, 118, 111, 109, 107, 107, 32.19413 + 106, 104, 101, 98, 101, 98, 94, 90, 89, 88, 89, 89, 86, 95, 6, 4, 32.19414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19417 + 255, 255, 255, 255, 209, 120, 123, 129, 134, 127, 123, 129, 129, 129, 136, 131, 32.19418 + 131, 132, 132, 132, 128, 122, 117, 119, 123, 123, 118, 113, 110, 104, 97, 89, 32.19419 + 83, 80, 81, 84, 89, 99, 110, 112, 113, 114, 117, 121, 126, 131, 133, 132, 32.19420 + 131, 131, 133, 135, 135, 134, 132, 134, 129, 127, 130, 129, 124, 119, 119, 115, 32.19421 + 114, 112, 111, 110, 108, 105, 102, 100, 97, 92, 90, 89, 90, 89, 89, 89, 32.19422 + 66, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 127, 133, 127, 124, 131, 131, 32.19426 + 131, 138, 133, 132, 132, 132, 131, 128, 124, 119, 117, 121, 124, 121, 117, 114, 32.19427 + 108, 101, 100, 94, 86, 80, 76, 78, 90, 106, 104, 108, 114, 117, 118, 122, 32.19428 + 127, 132, 129, 129, 129, 131, 135, 136, 136, 135, 135, 127, 125, 129, 132, 127, 32.19429 + 121, 118, 114, 113, 110, 110, 110, 109, 106, 104, 102, 99, 95, 94, 92, 92, 32.19430 + 87, 86, 82, 26, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 131, 127, 32.19434 + 125, 133, 133, 131, 139, 134, 134, 132, 132, 131, 129, 124, 121, 115, 121, 125, 32.19435 + 122, 119, 115, 107, 99, 101, 100, 98, 90, 75, 71, 81, 97, 96, 105, 114, 32.19436 + 119, 118, 121, 125, 130, 130, 129, 128, 131, 135, 138, 137, 137, 135, 126, 123, 32.19437 + 129, 134, 130, 123, 118, 111, 109, 108, 109, 110, 111, 109, 106, 104, 101, 98, 32.19438 + 97, 96, 93, 87, 84, 70, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19442 + 255, 255, 213, 129, 132, 134, 135, 134, 132, 131, 130, 130, 129, 128, 125, 121, 32.19443 + 122, 124, 121, 116, 114, 113, 108, 101, 108, 106, 103, 98, 91, 85, 79, 76, 32.19444 + 88, 98, 105, 104, 107, 115, 123, 127, 124, 127, 128, 131, 133, 133, 131, 129, 32.19445 + 136, 128, 124, 129, 132, 128, 121, 117, 111, 109, 107, 106, 108, 109, 109, 108, 32.19446 + 103, 103, 101, 98, 92, 86, 82, 83, 12, 255, 255, 255, 255, 255, 255, 255, 32.19447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19450 + 255, 255, 255, 255, 255, 255, 213, 132, 134, 134, 134, 132, 131, 130, 130, 130, 32.19451 + 128, 124, 122, 123, 125, 122, 117, 115, 114, 109, 103, 105, 104, 101, 98, 93, 32.19452 + 88, 85, 83, 72, 86, 100, 106, 108, 114, 117, 117, 123, 124, 124, 124, 125, 32.19453 + 127, 127, 127, 130, 122, 117, 122, 125, 121, 114, 110, 107, 105, 102, 103, 105, 32.19454 + 108, 111, 111, 108, 101, 98, 99, 94, 86, 85, 90, 95, 255, 255, 255, 255, 32.19455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 134, 133, 132, 32.19459 + 131, 131, 131, 129, 126, 124, 124, 126, 123, 119, 116, 116, 111, 104, 104, 103, 32.19460 + 101, 100, 96, 93, 91, 91, 68, 80, 91, 95, 99, 105, 110, 110, 123, 122, 32.19461 + 120, 121, 121, 124, 127, 128, 128, 121, 117, 120, 123, 119, 112, 110, 102, 100, 32.19462 + 99, 99, 103, 108, 110, 111, 105, 106, 100, 90, 86, 86, 80, 132, 255, 255, 32.19463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19467 + 215, 133, 132, 131, 132, 132, 130, 128, 125, 123, 125, 123, 118, 116, 116, 111, 32.19468 + 105, 105, 105, 102, 102, 99, 97, 96, 97, 85, 87, 84, 79, 80, 91, 104, 32.19469 + 110, 116, 116, 115, 116, 117, 120, 123, 125, 126, 119, 117, 120, 121, 117, 111, 32.19470 + 109, 100, 99, 99, 102, 105, 108, 108, 108, 98, 111, 104, 81, 79, 87, 128, 32.19471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19475 + 255, 255, 255, 255, 255, 214, 131, 132, 132, 131, 128, 127, 122, 124, 121, 117, 32.19476 + 115, 115, 111, 104, 108, 108, 105, 104, 101, 99, 99, 100, 100, 94, 82, 69, 32.19477 + 67, 78, 91, 97, 102, 103, 106, 109, 111, 114, 116, 117, 119, 114, 112, 114, 32.19478 + 114, 110, 105, 104, 99, 100, 102, 106, 108, 107, 104, 101, 101, 103, 98, 90, 32.19479 + 87, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 131, 131, 127, 125, 121, 32.19484 + 123, 121, 117, 115, 115, 111, 105, 110, 109, 106, 105, 102, 101, 101, 102, 101, 32.19485 + 98, 88, 76, 72, 75, 78, 78, 91, 94, 97, 102, 106, 110, 112, 113, 115, 32.19486 + 110, 109, 111, 110, 104, 101, 101, 97, 99, 101, 104, 106, 103, 100, 96, 109, 32.19487 + 89, 85, 100, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 32.19492 + 128, 125, 122, 124, 122, 118, 116, 117, 113, 106, 109, 109, 105, 105, 103, 102, 32.19493 + 104, 105, 101, 101, 97, 89, 84, 82, 75, 70, 78, 80, 83, 87, 93, 100, 32.19494 + 105, 109, 110, 107, 105, 107, 106, 100, 97, 96, 96, 95, 94, 96, 98, 98, 32.19495 + 95, 93, 102, 85, 79, 81, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19500 + 255, 255, 255, 255, 211, 123, 126, 123, 120, 118, 118, 114, 108, 108, 107, 104, 32.19501 + 104, 103, 104, 106, 107, 104, 106, 104, 98, 93, 89, 81, 73, 63, 64, 64, 32.19502 + 68, 76, 84, 92, 97, 102, 98, 97, 100, 97, 92, 88, 88, 95, 92, 89, 32.19503 + 89, 91, 93, 93, 93, 87, 94, 83, 120, 255, 255, 255, 255, 255, 255, 255, 32.19504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 121, 120, 116, 113, 110, 108, 32.19509 + 105, 108, 109, 109, 106, 102, 102, 102, 105, 106, 103, 96, 89, 86, 79, 74, 32.19510 + 72, 80, 57, 45, 71, 55, 80, 84, 85, 85, 88, 89, 88, 87, 84, 83, 32.19511 + 80, 80, 81, 86, 91, 92, 86, 80, 85, 72, 255, 255, 255, 255, 255, 255, 32.19512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 117, 32.19517 + 114, 111, 109, 106, 108, 109, 109, 105, 102, 102, 102, 108, 110, 106, 98, 93, 32.19518 + 91, 86, 80, 82, 88, 69, 65, 66, 40, 45, 38, 49, 50, 52, 52, 52, 32.19519 + 52, 50, 50, 58, 57, 58, 63, 68, 130, 255, 255, 255, 255, 255, 255, 255, 32.19520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19525 + 255, 255, 255, 208, 111, 109, 107, 109, 109, 108, 105, 102, 103, 103, 106, 107, 32.19526 + 103, 96, 91, 90, 87, 84, 83, 81, 70, 255, 255, 255, 255, 255, 255, 255, 32.19527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 109, 108, 107, 104, 102, 104, 32.19534 + 105, 106, 107, 103, 95, 91, 92, 91, 89, 86, 75, 255, 255, 255, 255, 255, 32.19535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 32.19542 + 104, 103, 106, 109, 111, 112, 108, 101, 98, 99, 99, 97, 255, 255, 255, 255, 32.19543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19550 + 255, 255, 255, 255, 255, 206, 113, 111, 112, 109, 104, 100, 152, 255, 255, 255, 32.19551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 121, 120, 119, 117, 110, 32.19559 + 108, 109, 116, 105, 95, 91, 97, 101, 103, 102, 135, 219, 255, 255, 255, 255, 32.19560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19566 + 255, 255, 255, 255, 255, 255, 255, 125, 124, 122, 120, 117, 115, 106, 101, 103, 32.19567 + 109, 107, 96, 92, 95, 94, 97, 93, 80, 71, 81, 111, 137, 119, 109, 105, 32.19568 + 116, 131, 136, 134, 131, 121, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19574 + 255, 255, 255, 255, 255, 255, 212, 119, 118, 115, 116, 114, 106, 87, 61, 42, 32.19575 + 35, 37, 33, 26, 28, 38, 45, 45, 51, 48, 37, 21, 16, 39, 84, 121, 32.19576 + 123, 99, 80, 51, 77, 110, 139, 119, 126, 126, 133, 139, 137, 131, 171, 255, 32.19577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19582 + 255, 255, 255, 255, 241, 197, 149, 119, 119, 112, 102, 107, 100, 91, 83, 73, 32.19583 + 55, 32, 16, 22, 23, 20, 12, 13, 19, 25, 23, 31, 31, 28, 16, 13, 32.19584 + 26, 57, 81, 128, 103, 106, 55, 58, 52, 111, 127, 135, 128, 122, 122, 123, 32.19585 + 121, 123, 126, 137, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19590 + 255, 255, 255, 255, 242, 195, 142, 113, 209, 118, 112, 94, 63, 36, 25, 20, 32.19591 + 16, 15, 18, 17, 12, 6, 11, 12, 12, 6, 8, 10, 14, 11, 12, 14, 32.19592 + 18, 13, 12, 13, 26, 34, 98, 84, 117, 74, 67, 18, 75, 102, 101, 102, 32.19593 + 109, 125, 136, 135, 129, 126, 125, 121, 122, 125, 130, 171, 255, 255, 255, 255, 32.19594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 67, 54, 41, 32, 25, 13, 32.19599 + 3, 8, 3, 0, 0, 3, 6, 8, 6, 8, 9, 10, 9, 10, 12, 14, 32.19600 + 13, 7, 10, 14, 16, 14, 13, 12, 10, 29, 21, 56, 42, 39, 0, 23, 32.19601 + 31, 33, 41, 63, 87, 103, 106, 103, 101, 110, 106, 108, 121, 132, 133, 128, 32.19602 + 124, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 76, 28, 26, 16, 5, 32.19607 + 0, 2, 7, 11, 21, 17, 14, 11, 14, 14, 12, 10, 8, 8, 9, 11, 32.19608 + 11, 10, 10, 11, 13, 12, 12, 14, 16, 16, 13, 11, 23, 15, 19, 22, 32.19609 + 17, 19, 24, 20, 21, 23, 30, 38, 46, 56, 72, 87, 98, 91, 91, 105, 32.19610 + 121, 126, 123, 120, 136, 121, 101, 113, 255, 255, 255, 255, 255, 255, 255, 255, 32.19611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 64, 14, 15, 4, 32.19615 + 15, 22, 23, 18, 17, 15, 15, 6, 7, 7, 10, 12, 14, 15, 14, 17, 32.19616 + 15, 14, 16, 15, 10, 9, 10, 18, 14, 11, 11, 15, 18, 19, 16, 9, 32.19617 + 13, 8, 14, 0, 21, 18, 8, 36, 33, 33, 32, 32, 38, 58, 78, 69, 32.19618 + 64, 64, 75, 91, 107, 121, 131, 108, 127, 116, 99, 44, 67, 133, 255, 255, 32.19619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 0, 0, 32.19623 + 1, 3, 13, 15, 8, 0, 0, 4, 12, 17, 19, 19, 17, 18, 16, 13, 32.19624 + 12, 10, 22, 18, 17, 19, 18, 12, 10, 13, 18, 14, 10, 10, 13, 18, 32.19625 + 20, 21, 19, 23, 33, 40, 33, 38, 33, 18, 20, 22, 29, 34, 34, 32, 32.19626 + 38, 44, 37, 40, 45, 49, 53, 66, 93, 117, 97, 136, 133, 105, 44, 101, 32.19627 + 93, 33, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.19631 + 0, 4, 7, 3, 5, 8, 11, 13, 12, 14, 17, 15, 9, 12, 12, 13, 32.19632 + 16, 18, 18, 18, 18, 16, 11, 10, 15, 14, 9, 9, 14, 16, 13, 10, 32.19633 + 10, 13, 17, 19, 19, 19, 9, 24, 28, 39, 32, 37, 20, 23, 24, 27, 32.19634 + 33, 34, 29, 26, 27, 28, 39, 48, 41, 26, 26, 51, 78, 124, 111, 97, 32.19635 + 100, 36, 71, 59, 12, 55, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19639 + 255, 179, 6, 3, 8, 8, 7, 8, 11, 15, 14, 10, 12, 18, 19, 14, 32.19640 + 19, 13, 11, 16, 24, 27, 21, 14, 19, 15, 10, 7, 5, 5, 4, 3, 32.19641 + 4, 8, 10, 9, 12, 16, 21, 21, 15, 23, 28, 27, 33, 42, 40, 28, 32.19642 + 14, 16, 19, 20, 21, 20, 20, 20, 20, 29, 34, 34, 34, 38, 39, 33, 32.19643 + 69, 96, 114, 70, 25, 61, 76, 15, 7, 61, 96, 85, 255, 255, 255, 255, 32.19644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19647 + 255, 255, 255, 179, 16, 8, 9, 10, 11, 11, 14, 14, 16, 14, 12, 15, 32.19648 + 20, 17, 11, 19, 14, 11, 13, 17, 20, 18, 16, 19, 18, 15, 11, 11, 32.19649 + 12, 10, 9, 8, 8, 9, 10, 14, 18, 20, 17, 13, 11, 18, 27, 31, 32.19650 + 28, 23, 21, 19, 16, 14, 16, 20, 21, 20, 17, 16, 23, 27, 25, 23, 32.19651 + 26, 26, 21, 46, 46, 68, 68, 47, 52, 65, 47, 11, 29, 52, 91, 116, 32.19652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19655 + 255, 255, 255, 255, 255, 175, 7, 7, 10, 13, 12, 9, 10, 16, 17, 16, 32.19656 + 14, 13, 18, 22, 17, 10, 18, 15, 12, 12, 12, 15, 16, 18, 17, 15, 32.19657 + 13, 12, 13, 14, 12, 11, 15, 10, 9, 11, 17, 21, 22, 15, 19, 12, 32.19658 + 20, 36, 39, 26, 18, 21, 24, 17, 10, 11, 17, 21, 20, 16, 13, 19, 32.19659 + 21, 22, 24, 27, 29, 28, 42, 34, 50, 73, 72, 55, 57, 70, 30, 25, 32.19660 + 29, 88, 108, 82, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19663 + 255, 255, 255, 255, 255, 255, 255, 178, 6, 4, 9, 14, 16, 12, 10, 10, 32.19664 + 13, 19, 16, 14, 16, 22, 24, 17, 11, 16, 16, 15, 14, 12, 12, 14, 32.19665 + 18, 15, 15, 12, 11, 12, 13, 11, 10, 15, 10, 10, 12, 15, 17, 21, 32.19666 + 22, 25, 21, 25, 35, 36, 26, 19, 18, 19, 13, 7, 5, 8, 12, 14, 32.19667 + 15, 15, 18, 20, 19, 21, 24, 28, 28, 20, 33, 38, 42, 50, 37, 33, 32.19668 + 46, 38, 39, 25, 65, 60, 44, 33, 47, 255, 255, 255, 255, 255, 255, 255, 32.19669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 20, 4, 10, 12, 11, 11, 32.19672 + 13, 15, 14, 12, 16, 13, 14, 19, 24, 23, 16, 12, 14, 17, 19, 19, 32.19673 + 15, 13, 13, 16, 19, 19, 15, 13, 14, 16, 14, 13, 12, 10, 13, 14, 32.19674 + 12, 13, 22, 31, 26, 29, 28, 23, 22, 24, 20, 11, 11, 11, 9, 5, 32.19675 + 3, 5, 11, 17, 26, 22, 19, 15, 11, 7, 8, 11, 2, 25, 25, 18, 32.19676 + 27, 23, 21, 40, 34, 35, 20, 57, 43, 18, 12, 38, 124, 255, 255, 255, 32.19677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 57, 5, 16, 5, 8, 32.19680 + 8, 6, 7, 13, 19, 19, 15, 12, 12, 16, 23, 26, 23, 17, 17, 15, 32.19681 + 17, 20, 20, 16, 14, 12, 13, 20, 17, 12, 11, 13, 14, 15, 13, 12, 32.19682 + 12, 17, 22, 18, 12, 22, 37, 30, 33, 29, 16, 15, 22, 19, 8, 6, 32.19683 + 10, 12, 9, 4, 4, 12, 19, 34, 29, 23, 20, 16, 13, 16, 20, 18, 32.19684 + 27, 24, 22, 31, 19, 23, 47, 38, 22, 14, 65, 64, 15, 0, 17, 53, 32.19685 + 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 3, 11, 2, 32.19688 + 16, 9, 6, 11, 10, 10, 14, 23, 26, 23, 16, 16, 24, 32, 32, 27, 32.19689 + 24, 28, 18, 17, 16, 16, 14, 13, 11, 12, 19, 15, 12, 10, 13, 16, 32.19690 + 18, 18, 16, 16, 25, 33, 31, 22, 23, 33, 38, 34, 28, 22, 20, 20, 32.19691 + 17, 14, 8, 11, 14, 14, 13, 13, 17, 20, 37, 32, 29, 30, 29, 27, 32.19692 + 34, 43, 30, 26, 19, 18, 25, 16, 17, 27, 37, 20, 17, 49, 68, 20, 32.19693 + 4, 7, 30, 12, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 7, 32.19696 + 10, 0, 10, 0, 11, 10, 16, 20, 16, 19, 25, 30, 26, 21, 23, 32, 32.19697 + 41, 40, 33, 32, 38, 20, 17, 13, 11, 10, 11, 11, 10, 23, 20, 16, 32.19698 + 14, 18, 23, 26, 28, 20, 19, 28, 43, 42, 31, 24, 27, 40, 28, 23, 32.19699 + 27, 24, 14, 11, 16, 12, 13, 16, 19, 22, 23, 22, 21, 37, 31, 27, 32.19700 + 27, 26, 24, 29, 39, 31, 31, 23, 15, 22, 33, 29, 17, 23, 22, 19, 32.19701 + 18, 46, 25, 30, 20, 23, 58, 95, 80, 255, 255, 255, 255, 255, 255, 255, 32.19702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19704 + 183, 19, 1, 1, 6, 8, 7, 10, 11, 10, 19, 20, 13, 17, 30, 29, 32.19705 + 23, 23, 34, 35, 23, 24, 36, 41, 31, 21, 10, 8, 11, 16, 13, 9, 32.19706 + 13, 23, 21, 4, 24, 41, 25, 29, 45, 31, 41, 42, 51, 27, 32, 39, 32.19707 + 26, 15, 30, 21, 20, 26, 8, 15, 18, 16, 14, 17, 27, 33, 27, 16, 32.19708 + 30, 35, 32, 22, 18, 24, 31, 32, 50, 35, 21, 17, 24, 29, 26, 20, 32.19709 + 28, 17, 17, 30, 38, 36, 41, 51, 53, 64, 86, 82, 140, 255, 255, 255, 32.19710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19712 + 255, 206, 63, 25, 11, 0, 1, 6, 6, 6, 6, 8, 6, 16, 20, 15, 32.19713 + 21, 33, 31, 17, 18, 28, 28, 23, 32, 43, 42, 39, 21, 11, 16, 17, 32.19714 + 10, 8, 14, 24, 32, 28, 12, 29, 45, 31, 34, 68, 42, 42, 42, 49, 32.19715 + 22, 31, 42, 39, 26, 31, 19, 18, 25, 10, 16, 5, 23, 40, 41, 32, 32.19716 + 24, 20, 19, 21, 24, 23, 13, 13, 18, 22, 23, 36, 25, 16, 15, 20, 32.19717 + 24, 22, 17, 24, 23, 22, 28, 38, 45, 48, 44, 69, 51, 60, 56, 99, 32.19718 + 152, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19720 + 255, 255, 255, 205, 79, 53, 9, 4, 1, 5, 8, 6, 5, 5, 7, 5, 32.19721 + 13, 18, 17, 22, 31, 28, 12, 14, 21, 21, 24, 45, 54, 43, 41, 20, 32.19722 + 11, 20, 17, 4, 6, 19, 30, 37, 40, 30, 45, 65, 57, 62, 63, 46, 32.19723 + 43, 31, 45, 35, 43, 39, 47, 34, 31, 18, 15, 20, 11, 15, 12, 37, 32.19724 + 58, 57, 40, 26, 21, 20, 15, 16, 15, 8, 8, 11, 13, 12, 19, 14, 32.19725 + 12, 12, 16, 19, 21, 19, 25, 30, 28, 24, 34, 48, 48, 32, 69, 41, 32.19726 + 56, 68, 90, 99, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19728 + 255, 255, 255, 255, 205, 124, 123, 72, 17, 4, 5, 6, 8, 9, 8, 9, 32.19729 + 9, 11, 6, 13, 18, 15, 19, 25, 18, 9, 13, 17, 16, 25, 51, 58, 32.19730 + 39, 31, 17, 9, 12, 9, 5, 14, 28, 21, 28, 43, 37, 50, 73, 66, 32.19731 + 67, 52, 54, 57, 33, 50, 54, 54, 26, 43, 39, 39, 27, 23, 20, 20, 32.19732 + 22, 38, 45, 53, 50, 46, 38, 31, 23, 18, 17, 14, 11, 10, 10, 9, 32.19733 + 9, 13, 13, 14, 15, 16, 20, 26, 29, 31, 31, 26, 21, 30, 42, 40, 32.19734 + 29, 44, 26, 51, 70, 75, 91, 75, 255, 255, 255, 255, 255, 255, 255, 255, 32.19735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19736 + 255, 255, 255, 255, 255, 255, 255, 76, 35, 13, 5, 5, 6, 8, 8, 7, 32.19737 + 7, 9, 11, 11, 11, 4, 9, 14, 12, 17, 21, 11, 8, 11, 15, 13, 32.19738 + 20, 45, 48, 27, 17, 16, 10, 2, 3, 17, 33, 37, 37, 42, 64, 59, 32.19739 + 61, 80, 72, 67, 78, 70, 71, 55, 67, 56, 51, 31, 43, 53, 58, 54, 32.19740 + 47, 37, 44, 45, 52, 51, 53, 49, 52, 49, 43, 33, 25, 25, 22, 19, 32.19741 + 16, 11, 9, 10, 12, 13, 15, 14, 14, 19, 30, 36, 35, 26, 20, 20, 32.19742 + 29, 32, 34, 34, 40, 30, 46, 54, 49, 78, 54, 105, 255, 255, 255, 255, 32.19743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19744 + 255, 255, 255, 255, 255, 255, 255, 255, 190, 19, 5, 7, 4, 5, 9, 8, 32.19745 + 9, 7, 3, 5, 10, 14, 13, 14, 5, 7, 13, 14, 20, 22, 13, 8, 32.19746 + 9, 14, 12, 14, 29, 29, 12, 10, 15, 11, 2, 7, 31, 48, 47, 49, 32.19747 + 53, 81, 77, 73, 90, 87, 77, 102, 70, 67, 72, 79, 45, 48, 63, 48, 32.19748 + 64, 67, 71, 64, 53, 64, 63, 52, 59, 66, 63, 59, 56, 53, 48, 39, 32.19749 + 38, 35, 31, 21, 11, 11, 15, 14, 14, 15, 14, 14, 19, 29, 36, 36, 32.19750 + 27, 21, 24, 28, 31, 34, 39, 39, 38, 44, 46, 40, 60, 37, 64, 98, 32.19751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 27, 6, 8, 2, 0, 32.19753 + 5, 7, 7, 8, 5, 1, 6, 15, 18, 15, 20, 8, 8, 12, 14, 20, 32.19754 + 22, 12, 10, 10, 17, 18, 11, 15, 14, 4, 9, 10, 9, 10, 18, 35, 32.19755 + 48, 49, 46, 46, 76, 72, 63, 82, 84, 74, 95, 69, 71, 73, 79, 52, 32.19756 + 66, 89, 58, 70, 63, 69, 68, 57, 74, 67, 62, 68, 74, 69, 68, 65, 32.19757 + 65, 62, 55, 53, 50, 43, 27, 13, 14, 22, 13, 14, 15, 14, 16, 19, 32.19758 + 25, 29, 36, 40, 37, 28, 26, 31, 31, 27, 21, 24, 23, 34, 36, 31, 32.19759 + 11, 17, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 42, 10, 3, 32.19761 + 2, 0, 6, 16, 0, 7, 8, 6, 4, 10, 21, 23, 18, 30, 16, 12, 32.19762 + 15, 15, 20, 21, 10, 11, 12, 22, 24, 13, 9, 10, 3, 11, 3, 5, 32.19763 + 16, 24, 30, 36, 44, 67, 63, 90, 80, 66, 85, 86, 77, 81, 84, 93, 32.19764 + 73, 76, 70, 86, 87, 68, 73, 56, 61, 65, 58, 76, 65, 79, 72, 67, 32.19765 + 62, 70, 74, 74, 66, 67, 65, 61, 52, 32, 17, 18, 30, 12, 15, 17, 32.19766 + 18, 20, 21, 23, 24, 39, 55, 55, 34, 27, 34, 30, 15, 34, 31, 18, 32.19767 + 35, 44, 26, 20, 23, 33, 71, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 36, 32.19769 + 6, 8, 11, 10, 9, 9, 10, 11, 5, 10, 15, 12, 10, 13, 20, 24, 32.19770 + 29, 28, 24, 20, 19, 18, 15, 8, 0, 36, 38, 46, 36, 13, 23, 23, 32.19771 + 15, 4, 23, 39, 41, 57, 24, 63, 63, 61, 95, 77, 71, 88, 75, 97, 32.19772 + 93, 88, 87, 89, 88, 85, 88, 94, 86, 83, 87, 85, 83, 74, 76, 78, 32.19773 + 85, 80, 80, 77, 79, 76, 74, 71, 72, 81, 75, 51, 34, 31, 35, 39, 32.19774 + 27, 26, 25, 22, 25, 30, 33, 32, 37, 35, 38, 42, 37, 25, 20, 21, 32.19775 + 17, 22, 26, 27, 27, 32, 36, 40, 28, 64, 72, 255, 255, 255, 255, 255, 32.19776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19777 + 255, 199, 14, 9, 10, 13, 13, 11, 10, 11, 12, 11, 13, 13, 9, 9, 32.19778 + 13, 15, 16, 17, 18, 18, 17, 15, 14, 10, 5, 31, 47, 30, 29, 34, 32.19779 + 26, 26, 10, 26, 8, 37, 40, 44, 35, 33, 89, 72, 69, 98, 82, 77, 32.19780 + 93, 78, 96, 91, 88, 88, 90, 89, 86, 88, 92, 80, 79, 80, 82, 79, 32.19781 + 75, 76, 81, 78, 73, 71, 75, 83, 86, 82, 78, 69, 78, 74, 56, 39, 32.19782 + 32, 33, 37, 30, 29, 26, 26, 28, 31, 31, 30, 39, 35, 36, 39, 37, 32.19783 + 30, 25, 28, 30, 27, 23, 20, 22, 31, 41, 49, 22, 74, 47, 157, 255, 32.19784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19785 + 255, 255, 255, 255, 45, 6, 9, 10, 13, 12, 10, 9, 10, 11, 17, 18, 32.19786 + 14, 9, 9, 13, 12, 8, 12, 12, 12, 12, 11, 11, 13, 13, 36, 52, 32.19787 + 40, 31, 30, 19, 18, 9, 1, 15, 72, 58, 63, 41, 46, 82, 81, 75, 32.19788 + 96, 82, 80, 93, 78, 89, 87, 86, 87, 90, 89, 86, 88, 92, 81, 79, 32.19789 + 79, 81, 81, 79, 82, 87, 84, 77, 72, 76, 85, 88, 80, 73, 78, 81, 32.19790 + 79, 71, 54, 41, 39, 48, 32, 31, 28, 30, 33, 37, 39, 40, 42, 35, 32.19791 + 33, 34, 37, 34, 29, 29, 22, 22, 24, 29, 36, 41, 46, 48, 41, 43, 32.19792 + 74, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19793 + 255, 255, 255, 255, 255, 255, 26, 19, 9, 9, 10, 13, 12, 10, 9, 9, 32.19794 + 11, 19, 23, 21, 13, 10, 13, 13, 8, 15, 13, 11, 11, 11, 13, 20, 32.19795 + 26, 28, 37, 36, 38, 35, 16, 6, 8, 8, 44, 79, 37, 36, 54, 71, 32.19796 + 88, 83, 77, 89, 80, 80, 91, 79, 83, 85, 87, 89, 91, 90, 89, 91, 32.19797 + 93, 86, 83, 82, 84, 84, 83, 87, 92, 90, 85, 82, 84, 89, 88, 81, 32.19798 + 76, 89, 87, 87, 83, 71, 54, 56, 68, 54, 46, 39, 36, 38, 38, 42, 32.19799 + 43, 45, 37, 35, 36, 37, 36, 32, 28, 20, 19, 23, 36, 46, 51, 55, 32.19800 + 57, 61, 44, 55, 33, 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19801 + 255, 255, 255, 255, 255, 255, 255, 255, 25, 13, 8, 2, 8, 11, 12, 12, 32.19802 + 10, 10, 9, 10, 15, 24, 24, 15, 10, 15, 17, 12, 13, 10, 10, 15, 32.19803 + 17, 16, 21, 26, 39, 17, 11, 29, 43, 24, 0, 2, 20, 57, 60, 35, 32.19804 + 29, 72, 78, 84, 84, 79, 84, 79, 82, 91, 83, 82, 85, 89, 91, 91, 32.19805 + 91, 92, 93, 93, 93, 88, 86, 88, 89, 88, 89, 94, 87, 88, 91, 93, 32.19806 + 94, 93, 91, 89, 90, 88, 88, 87, 78, 65, 69, 80, 82, 70, 58, 50, 32.19807 + 44, 39, 39, 43, 43, 38, 36, 38, 42, 43, 38, 33, 37, 27, 19, 23, 32.19808 + 32, 45, 59, 71, 59, 53, 28, 61, 56, 144, 255, 255, 255, 255, 255, 255, 32.19809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 8, 9, 3, 9, 32.19810 + 11, 12, 13, 12, 12, 12, 13, 10, 20, 22, 14, 14, 24, 25, 18, 11, 32.19811 + 6, 8, 17, 21, 17, 16, 18, 40, 17, 14, 22, 29, 14, 0, 21, 31, 32.19812 + 49, 43, 61, 60, 82, 71, 83, 88, 86, 86, 84, 87, 93, 91, 86, 88, 32.19813 + 92, 93, 91, 90, 93, 94, 93, 97, 91, 89, 91, 92, 91, 91, 93, 85, 32.19814 + 89, 93, 93, 90, 86, 85, 85, 81, 81, 84, 81, 74, 70, 73, 81, 87, 32.19815 + 73, 63, 59, 56, 51, 52, 57, 43, 41, 42, 41, 45, 50, 49, 47, 41, 32.19816 + 31, 24, 27, 31, 35, 45, 57, 52, 38, 48, 45, 68, 70, 255, 255, 255, 32.19817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 1, 0, 32.19818 + 9, 7, 8, 10, 12, 13, 13, 14, 15, 17, 10, 16, 15, 12, 23, 40, 32.19819 + 38, 23, 27, 12, 4, 9, 16, 16, 19, 25, 31, 25, 32, 17, 12, 11, 32.19820 + 8, 41, 55, 53, 42, 57, 75, 83, 92, 108, 91, 93, 88, 88, 90, 92, 32.19821 + 94, 88, 89, 93, 93, 88, 87, 91, 93, 92, 95, 90, 88, 92, 94, 92, 32.19822 + 91, 92, 88, 89, 91, 91, 89, 84, 80, 76, 75, 80, 85, 80, 74, 75, 32.19823 + 76, 77, 77, 67, 62, 66, 69, 63, 63, 68, 54, 53, 50, 44, 45, 52, 32.19824 + 56, 58, 36, 31, 34, 42, 41, 35, 35, 43, 48, 46, 51, 57, 58, 78, 32.19825 + 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19826 + 2, 9, 2, 7, 3, 8, 10, 12, 14, 14, 16, 17, 19, 16, 17, 13, 32.19827 + 14, 35, 56, 50, 30, 53, 26, 3, 2, 9, 17, 30, 42, 30, 28, 31, 32.19828 + 8, 15, 34, 24, 36, 34, 51, 67, 71, 103, 96, 107, 96, 95, 98, 91, 32.19829 + 91, 91, 91, 96, 89, 91, 95, 94, 87, 85, 91, 94, 92, 92, 87, 87, 32.19830 + 92, 95, 93, 91, 91, 87, 86, 88, 93, 98, 98, 93, 88, 73, 85, 90, 32.19831 + 83, 80, 81, 78, 74, 79, 69, 69, 75, 74, 63, 58, 62, 67, 66, 58, 32.19832 + 45, 41, 48, 56, 60, 43, 38, 35, 39, 36, 32, 40, 52, 57, 51, 60, 32.19833 + 60, 70, 85, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19834 + 255, 255, 171, 20, 2, 4, 12, 7, 6, 11, 24, 10, 4, 15, 9, 12, 32.19835 + 32, 11, 14, 8, 12, 63, 38, 32, 20, 36, 0, 18, 20, 20, 26, 40, 32.19836 + 52, 64, 41, 36, 32, 37, 27, 42, 58, 86, 108, 107, 101, 100, 103, 101, 32.19837 + 101, 98, 97, 96, 96, 96, 96, 97, 95, 91, 87, 86, 88, 91, 94, 95, 32.19838 + 96, 94, 90, 89, 89, 90, 90, 89, 90, 91, 91, 91, 91, 91, 91, 92, 32.19839 + 84, 85, 87, 87, 85, 83, 82, 85, 74, 70, 69, 68, 70, 70, 66, 61, 32.19840 + 60, 59, 58, 60, 62, 61, 60, 61, 67, 70, 27, 35, 43, 20, 44, 39, 32.19841 + 26, 31, 32, 31, 38, 49, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.19842 + 255, 255, 255, 255, 255, 4, 16, 3, 5, 8, 6, 11, 12, 25, 14, 6, 32.19843 + 13, 9, 18, 18, 16, 13, 11, 4, 33, 31, 54, 11, 29, 24, 14, 15, 32.19844 + 11, 27, 30, 35, 46, 56, 63, 64, 73, 71, 91, 95, 107, 113, 105, 101, 32.19845 + 107, 111, 108, 102, 99, 98, 97, 97, 97, 97, 97, 95, 92, 88, 86, 88, 32.19846 + 92, 94, 95, 95, 93, 91, 90, 91, 91, 90, 89, 90, 91, 92, 92, 92, 32.19847 + 91, 90, 90, 90, 90, 90, 88, 85, 81, 79, 79, 88, 87, 82, 73, 65, 32.19848 + 61, 62, 64, 59, 58, 59, 60, 63, 64, 62, 62, 67, 70, 41, 46, 45, 32.19849 + 26, 35, 32, 35, 35, 31, 27, 27, 30, 30, 27, 255, 255, 255, 255, 255, 32.19850 + 255, 255, 255, 255, 255, 255, 255, 172, 3, 6, 4, 8, 4, 12, 17, 14, 32.19851 + 25, 18, 9, 11, 9, 26, 19, 33, 8, 14, 6, 9, 23, 58, 15, 17, 32.19852 + 40, 9, 14, 17, 30, 16, 17, 20, 67, 79, 78, 85, 85, 103, 111, 113, 32.19853 + 110, 100, 101, 108, 110, 104, 101, 98, 97, 96, 96, 96, 96, 97, 96, 92, 32.19854 + 89, 88, 90, 93, 95, 95, 93, 92, 91, 92, 94, 94, 92, 90, 91, 92, 32.19855 + 93, 94, 93, 91, 89, 87, 91, 92, 92, 90, 86, 83, 81, 81, 92, 93, 32.19856 + 88, 74, 57, 51, 57, 65, 62, 61, 61, 62, 65, 65, 66, 67, 68, 69, 32.19857 + 63, 59, 52, 35, 26, 22, 31, 27, 25, 25, 25, 24, 29, 36, 255, 255, 32.19858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 5, 1, 8, 14, 6, 32.19859 + 17, 18, 12, 23, 20, 11, 12, 13, 36, 33, 57, 5, 15, 18, 9, 19, 32.19860 + 33, 29, 7, 31, 12, 16, 34, 28, 9, 28, 20, 81, 97, 96, 100, 95, 32.19861 + 106, 102, 103, 104, 102, 104, 108, 106, 99, 102, 99, 98, 97, 97, 97, 97, 32.19862 + 98, 99, 96, 93, 92, 94, 97, 98, 99, 92, 92, 92, 94, 96, 96, 93, 32.19863 + 91, 91, 93, 95, 96, 95, 92, 88, 86, 87, 89, 90, 90, 89, 88, 89, 32.19864 + 90, 90, 92, 89, 77, 62, 57, 63, 72, 68, 67, 66, 66, 67, 67, 68, 32.19865 + 68, 71, 64, 74, 69, 62, 53, 26, 10, 18, 14, 17, 24, 25, 22, 30, 32.19866 + 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 3, 11, 0, 32.19867 + 9, 16, 5, 18, 16, 9, 19, 18, 13, 16, 18, 42, 30, 67, 9, 17, 32.19868 + 23, 14, 16, 4, 29, 3, 15, 22, 10, 34, 17, 16, 32, 25, 72, 95, 32.19869 + 98, 110, 105, 106, 95, 100, 104, 104, 104, 105, 106, 103, 102, 100, 99, 98, 32.19870 + 97, 97, 98, 98, 99, 96, 94, 93, 95, 98, 98, 98, 94, 93, 94, 95, 32.19871 + 97, 97, 95, 92, 93, 95, 97, 98, 97, 94, 90, 88, 88, 90, 92, 93, 32.19872 + 91, 92, 94, 97, 92, 93, 91, 84, 77, 73, 74, 77, 75, 73, 71, 70, 32.19873 + 69, 70, 68, 68, 71, 60, 73, 73, 69, 68, 39, 5, 10, 9, 13, 21, 32.19874 + 20, 15, 19, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 32.19875 + 7, 15, 5, 10, 18, 6, 12, 13, 8, 17, 14, 13, 21, 22, 39, 16, 32.19876 + 56, 16, 22, 18, 16, 18, 1, 15, 13, 17, 33, 8, 20, 10, 25, 30, 32.19877 + 38, 47, 83, 84, 105, 100, 96, 100, 100, 101, 97, 94, 95, 101, 106, 102, 32.19878 + 99, 98, 97, 97, 97, 98, 98, 96, 94, 92, 92, 94, 96, 96, 96, 97, 32.19879 + 96, 95, 96, 97, 97, 95, 94, 95, 96, 98, 99, 98, 96, 93, 92, 93, 32.19880 + 94, 95, 95, 92, 92, 94, 97, 94, 93, 91, 87, 83, 79, 76, 74, 79, 32.19881 + 76, 73, 71, 70, 70, 69, 68, 71, 63, 67, 75, 76, 77, 60, 11, 8, 32.19882 + 10, 13, 19, 20, 19, 22, 26, 27, 255, 255, 255, 255, 255, 255, 255, 255, 32.19883 + 255, 255, 11, 7, 16, 7, 8, 19, 10, 10, 12, 9, 17, 10, 11, 25, 32.19884 + 22, 30, 17, 33, 9, 24, 17, 21, 23, 10, 7, 29, 27, 30, 23, 15, 32.19885 + 17, 20, 45, 80, 48, 89, 83, 109, 104, 99, 104, 100, 96, 93, 91, 90, 32.19886 + 96, 101, 99, 98, 97, 96, 95, 95, 96, 96, 96, 94, 92, 93, 95, 96, 32.19887 + 96, 97, 100, 98, 96, 96, 96, 97, 96, 94, 97, 98, 99, 99, 99, 98, 32.19888 + 97, 97, 99, 100, 98, 96, 94, 94, 96, 98, 93, 93, 91, 87, 82, 78, 32.19889 + 75, 74, 78, 77, 72, 71, 71, 71, 71, 71, 72, 70, 63, 78, 77, 80, 32.19890 + 80, 23, 8, 12, 14, 15, 21, 29, 32, 31, 16, 255, 255, 255, 255, 255, 32.19891 + 255, 255, 255, 255, 255, 13, 3, 11, 8, 7, 21, 14, 11, 12, 9, 18, 32.19892 + 7, 10, 27, 21, 22, 32, 18, 0, 22, 21, 31, 27, 15, 12, 42, 33, 32.19893 + 21, 44, 22, 30, 6, 41, 98, 41, 91, 78, 109, 108, 103, 106, 103, 101, 32.19894 + 99, 99, 96, 97, 97, 101, 97, 97, 95, 96, 96, 96, 97, 100, 98, 97, 32.19895 + 97, 99, 101, 101, 100, 103, 100, 97, 95, 96, 96, 96, 95, 99, 99, 99, 32.19896 + 99, 99, 98, 100, 100, 97, 98, 98, 96, 95, 95, 98, 100, 98, 97, 96, 32.19897 + 91, 83, 79, 78, 81, 76, 74, 70, 70, 71, 73, 73, 73, 73, 77, 62, 32.19898 + 82, 75, 77, 91, 29, 10, 16, 13, 8, 14, 26, 29, 23, 30, 255, 255, 32.19899 + 255, 255, 255, 255, 255, 255, 255, 199, 15, 10, 7, 11, 14, 12, 9, 8, 32.19900 + 10, 9, 12, 15, 19, 22, 25, 26, 27, 29, 24, 4, 46, 10, 13, 15, 32.19901 + 22, 21, 15, 31, 31, 14, 17, 10, 55, 75, 85, 69, 87, 106, 97, 108, 32.19902 + 110, 110, 106, 101, 96, 96, 101, 106, 106, 104, 102, 95, 98, 103, 104, 101, 32.19903 + 96, 97, 101, 103, 104, 105, 107, 105, 108, 103, 98, 99, 101, 104, 102, 99, 32.19904 + 88, 91, 94, 97, 98, 96, 95, 93, 96, 97, 98, 100, 101, 97, 98, 101, 32.19905 + 96, 94, 93, 91, 86, 81, 76, 74, 74, 72, 69, 69, 73, 75, 77, 76, 32.19906 + 79, 73, 70, 73, 77, 77, 76, 81, 12, 10, 14, 15, 12, 30, 39, 18, 32.19907 + 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 15, 10, 8, 12, 16, 32.19908 + 14, 11, 10, 8, 8, 7, 8, 11, 16, 20, 23, 31, 33, 16, 12, 30, 32.19909 + 23, 11, 6, 14, 15, 9, 23, 22, 7, 13, 8, 47, 69, 80, 62, 74, 32.19910 + 99, 98, 108, 108, 109, 107, 103, 98, 98, 102, 105, 106, 104, 101, 97, 99, 32.19911 + 105, 108, 106, 108, 107, 109, 109, 108, 108, 108, 107, 108, 102, 99, 100, 102, 32.19912 + 104, 102, 99, 90, 92, 95, 97, 96, 95, 93, 91, 96, 95, 98, 100, 101, 32.19913 + 97, 98, 103, 96, 94, 93, 89, 84, 79, 74, 73, 76, 73, 70, 71, 74, 32.19914 + 75, 76, 75, 85, 77, 73, 74, 75, 74, 72, 76, 86, 16, 0, 2, 16, 32.19915 + 14, 23, 37, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 13, 10, 32.19916 + 9, 14, 18, 15, 12, 11, 11, 9, 7, 7, 9, 14, 20, 24, 30, 36, 32.19917 + 15, 22, 16, 43, 19, 6, 14, 17, 11, 21, 18, 5, 15, 13, 43, 68, 32.19918 + 81, 61, 71, 99, 103, 114, 105, 107, 107, 105, 101, 100, 103, 105, 104, 102, 32.19919 + 100, 98, 101, 107, 111, 109, 113, 112, 112, 110, 109, 109, 111, 110, 109, 105, 32.19920 + 103, 105, 108, 109, 104, 101, 95, 96, 96, 97, 96, 94, 92, 90, 97, 95, 32.19921 + 98, 101, 101, 98, 99, 103, 97, 95, 94, 89, 84, 80, 75, 74, 79, 76, 32.19922 + 75, 73, 75, 76, 76, 75, 87, 79, 75, 75, 77, 73, 72, 76, 99, 10, 32.19923 + 0, 3, 23, 8, 12, 39, 34, 255, 255, 255, 255, 255, 255, 255, 255, 177, 32.19924 + 4, 13, 10, 10, 15, 16, 13, 9, 9, 14, 13, 12, 12, 15, 20, 25, 32.19925 + 28, 23, 30, 26, 22, 12, 49, 32, 12, 15, 20, 13, 19, 13, 2, 16, 32.19926 + 15, 29, 55, 79, 64, 72, 103, 107, 112, 105, 108, 108, 107, 103, 101, 102, 32.19927 + 103, 104, 103, 102, 99, 102, 109, 112, 109, 112, 111, 111, 109, 109, 111, 114, 32.19928 + 116, 111, 108, 108, 110, 112, 112, 107, 104, 99, 100, 98, 98, 96, 94, 91, 32.19929 + 90, 97, 96, 99, 101, 101, 98, 99, 103, 99, 98, 94, 91, 87, 82, 78, 32.19930 + 77, 79, 76, 75, 74, 76, 77, 78, 77, 84, 77, 75, 77, 79, 77, 76, 32.19931 + 80, 68, 34, 0, 13, 13, 9, 18, 27, 34, 255, 255, 255, 255, 255, 255, 32.19932 + 255, 255, 2, 0, 12, 10, 10, 13, 13, 9, 6, 7, 10, 10, 12, 15, 32.19933 + 18, 22, 25, 27, 18, 24, 48, 14, 17, 39, 39, 19, 17, 22, 13, 15, 32.19934 + 9, 0, 15, 14, 15, 32, 65, 65, 74, 103, 105, 103, 107, 110, 110, 109, 32.19935 + 103, 100, 100, 100, 106, 105, 104, 102, 104, 109, 112, 109, 114, 113, 113, 112, 32.19936 + 112, 113, 117, 118, 112, 112, 112, 114, 113, 112, 110, 108, 103, 103, 101, 100, 32.19937 + 98, 96, 94, 92, 98, 96, 99, 102, 102, 98, 99, 104, 102, 99, 95, 91, 32.19938 + 87, 83, 81, 80, 77, 76, 74, 74, 77, 79, 80, 80, 86, 79, 77, 79, 32.19939 + 81, 78, 75, 79, 77, 82, 3, 18, 1, 13, 30, 23, 33, 255, 255, 255, 32.19940 + 255, 255, 255, 255, 255, 2, 1, 12, 9, 9, 11, 10, 7, 6, 9, 5, 32.19941 + 6, 9, 11, 14, 17, 19, 20, 16, 23, 65, 4, 24, 25, 33, 23, 22, 32.19942 + 27, 15, 16, 12, 7, 20, 17, 15, 18, 52, 64, 78, 107, 109, 102, 109, 32.19943 + 111, 111, 109, 103, 100, 100, 100, 105, 106, 105, 103, 106, 111, 113, 109, 120, 32.19944 + 119, 119, 117, 116, 116, 118, 118, 112, 112, 112, 113, 111, 111, 110, 109, 106, 32.19945 + 106, 105, 102, 100, 98, 96, 95, 98, 96, 99, 102, 102, 99, 100, 104, 103, 32.19946 + 102, 97, 93, 89, 85, 84, 82, 80, 78, 76, 76, 80, 82, 83, 85, 89, 32.19947 + 84, 81, 82, 83, 78, 73, 75, 88, 93, 12, 26, 18, 26, 31, 21, 32, 32.19948 + 255, 255, 255, 255, 255, 255, 255, 190, 5, 6, 10, 8, 7, 9, 9, 8, 32.19949 + 10, 15, 11, 11, 10, 10, 11, 14, 17, 18, 18, 30, 73, 5, 34, 28, 32.19950 + 29, 35, 26, 30, 18, 20, 20, 18, 31, 24, 33, 14, 40, 60, 78, 107, 32.19951 + 111, 106, 108, 111, 110, 108, 103, 101, 100, 103, 102, 105, 105, 104, 108, 113, 32.19952 + 116, 112, 118, 118, 120, 119, 119, 118, 119, 119, 115, 115, 115, 115, 114, 114, 32.19953 + 113, 114, 110, 108, 107, 106, 102, 101, 99, 99, 97, 96, 98, 102, 103, 99, 32.19954 + 102, 107, 106, 103, 98, 93, 89, 86, 85, 85, 87, 85, 82, 81, 84, 85, 32.19955 + 87, 87, 90, 83, 81, 82, 83, 78, 72, 74, 74, 77, 54, 24, 35, 39, 32.19956 + 25, 18, 31, 255, 255, 255, 255, 255, 255, 255, 29, 0, 3, 9, 7, 6, 32.19957 + 9, 10, 10, 15, 22, 22, 19, 15, 13, 13, 15, 19, 22, 19, 35, 71, 32.19958 + 10, 41, 39, 29, 47, 21, 25, 12, 16, 19, 19, 32, 23, 43, 8, 26, 32.19959 + 51, 72, 101, 109, 108, 109, 109, 109, 107, 102, 102, 103, 106, 100, 103, 104, 32.19960 + 104, 109, 115, 119, 115, 111, 112, 115, 117, 119, 119, 121, 121, 120, 120, 120, 32.19961 + 118, 117, 118, 118, 120, 112, 111, 108, 107, 106, 102, 101, 101, 97, 96, 98, 32.19962 + 100, 103, 99, 102, 107, 107, 105, 100, 95, 90, 88, 87, 87, 92, 89, 86, 32.19963 + 85, 86, 86, 88, 87, 87, 81, 79, 82, 85, 80, 76, 76, 72, 78, 106, 32.19964 + 8, 26, 42, 25, 26, 32, 255, 255, 255, 255, 255, 255, 255, 10, 10, 6, 32.19965 + 13, 10, 8, 11, 13, 12, 12, 14, 21, 23, 27, 33, 13, 6, 24, 9, 32.19966 + 34, 38, 27, 33, 24, 30, 61, 40, 27, 30, 18, 25, 17, 32, 25, 24, 32.19967 + 19, 16, 16, 36, 75, 109, 83, 107, 108, 108, 108, 107, 102, 101, 101, 103, 32.19968 + 103, 104, 105, 106, 107, 111, 118, 122, 117, 118, 118, 117, 119, 123, 121, 115, 32.19969 + 123, 124, 124, 123, 120, 118, 119, 120, 115, 113, 111, 108, 107, 105, 101, 96, 32.19970 + 99, 99, 99, 97, 99, 99, 103, 106, 106, 108, 106, 98, 91, 85, 87, 91, 32.19971 + 93, 90, 87, 86, 87, 87, 89, 88, 87, 84, 82, 81, 82, 80, 75, 74, 32.19972 + 76, 81, 87, 14, 30, 37, 17, 32, 31, 255, 255, 255, 255, 255, 255, 255, 32.19973 + 11, 12, 7, 16, 13, 11, 15, 16, 14, 14, 16, 18, 29, 19, 39, 8, 32.19974 + 23, 27, 16, 29, 34, 53, 51, 32, 29, 44, 64, 17, 27, 24, 35, 25, 32.19975 + 35, 21, 16, 17, 23, 35, 36, 42, 97, 100, 105, 110, 108, 110, 107, 102, 32.19976 + 99, 101, 103, 103, 104, 105, 106, 107, 111, 118, 122, 120, 121, 122, 120, 123, 32.19977 + 126, 125, 119, 124, 125, 126, 124, 120, 118, 118, 119, 119, 117, 115, 114, 111, 32.19978 + 108, 104, 99, 98, 99, 99, 97, 100, 100, 104, 107, 104, 106, 108, 103, 98, 32.19979 + 92, 92, 91, 93, 91, 87, 86, 87, 88, 89, 88, 89, 85, 84, 83, 83, 32.19980 + 81, 76, 73, 74, 79, 85, 30, 26, 40, 22, 37, 28, 255, 255, 255, 255, 32.19981 + 255, 255, 255, 12, 14, 10, 18, 14, 13, 17, 18, 15, 14, 16, 18, 32, 32.19982 + 21, 33, 16, 31, 36, 20, 33, 31, 62, 55, 42, 35, 30, 79, 36, 41, 32.19983 + 32, 40, 32, 49, 43, 45, 17, 31, 51, 37, 11, 80, 111, 105, 110, 108, 32.19984 + 110, 107, 102, 99, 101, 101, 103, 104, 105, 106, 107, 110, 117, 121, 121, 123, 32.19985 + 125, 123, 124, 128, 127, 122, 128, 129, 127, 125, 122, 120, 119, 120, 124, 122, 32.19986 + 118, 117, 115, 112, 105, 100, 98, 98, 99, 98, 100, 101, 106, 109, 105, 106, 32.19987 + 108, 107, 103, 98, 94, 93, 95, 93, 90, 89, 90, 90, 90, 89, 92, 88, 32.19988 + 84, 83, 82, 80, 74, 74, 72, 76, 84, 53, 20, 42, 28, 39, 49, 255, 32.19989 + 255, 255, 255, 255, 255, 55, 13, 15, 12, 18, 14, 13, 17, 18, 14, 12, 32.19990 + 13, 20, 30, 28, 21, 30, 32, 46, 24, 37, 34, 44, 40, 49, 41, 32, 32.19991 + 65, 41, 38, 24, 28, 25, 42, 39, 38, 24, 38, 45, 37, 17, 67, 101, 32.19992 + 111, 110, 110, 110, 106, 102, 99, 99, 101, 103, 104, 105, 105, 106, 110, 117, 32.19993 + 120, 120, 123, 125, 123, 124, 127, 127, 123, 127, 128, 127, 126, 123, 122, 122, 32.19994 + 123, 123, 122, 118, 117, 115, 112, 105, 99, 98, 97, 100, 99, 101, 102, 108, 32.19995 + 110, 110, 108, 106, 105, 104, 100, 97, 92, 96, 93, 90, 89, 90, 92, 91, 32.19996 + 91, 95, 91, 87, 85, 84, 81, 75, 72, 72, 74, 82, 75, 15, 40, 29, 32.19997 + 39, 50, 255, 255, 255, 255, 255, 255, 35, 15, 13, 14, 20, 17, 16, 19, 32.19998 + 20, 16, 13, 13, 15, 31, 18, 24, 30, 44, 49, 37, 21, 37, 26, 34, 32.19999 + 52, 36, 37, 37, 37, 38, 31, 41, 40, 51, 36, 27, 33, 39, 21, 36, 32.20000 + 41, 57, 74, 115, 110, 110, 110, 106, 102, 99, 99, 101, 103, 104, 105, 105, 32.20001 + 106, 109, 116, 119, 120, 124, 127, 125, 125, 128, 129, 126, 126, 127, 129, 128, 32.20002 + 125, 125, 126, 128, 124, 123, 122, 121, 118, 114, 109, 102, 100, 98, 101, 100, 32.20003 + 102, 102, 108, 110, 117, 113, 106, 102, 99, 99, 98, 95, 98, 95, 93, 92, 32.20004 + 91, 93, 93, 92, 96, 92, 88, 86, 83, 80, 75, 72, 72, 73, 78, 89, 32.20005 + 16, 35, 30, 37, 59, 255, 255, 255, 255, 255, 255, 23, 17, 8, 14, 24, 32.20006 + 21, 20, 24, 24, 19, 15, 15, 8, 33, 3, 36, 28, 57, 49, 57, 5, 32.20007 + 33, 29, 47, 53, 30, 39, 23, 38, 44, 43, 57, 59, 76, 71, 71, 44, 32.20008 + 45, 9, 35, 52, 49, 62, 113, 112, 110, 110, 106, 102, 99, 99, 101, 103, 32.20009 + 104, 105, 105, 105, 108, 115, 118, 122, 127, 131, 129, 128, 131, 132, 131, 127, 32.20010 + 128, 130, 129, 126, 126, 127, 129, 125, 124, 124, 125, 122, 118, 113, 106, 102, 32.20011 + 100, 103, 101, 103, 102, 108, 110, 118, 115, 107, 102, 98, 96, 98, 99, 98, 32.20012 + 96, 93, 93, 92, 94, 94, 93, 96, 92, 88, 86, 84, 81, 76, 73, 73, 32.20013 + 74, 75, 90, 23, 30, 29, 41, 47, 255, 255, 255, 255, 255, 255, 17, 19, 32.20014 + 3, 15, 26, 23, 22, 25, 25, 20, 16, 15, 15, 28, 15, 27, 48, 45, 32.20015 + 56, 66, 25, 22, 35, 56, 54, 38, 38, 33, 23, 38, 41, 54, 50, 73, 32.20016 + 82, 96, 59, 60, 25, 40, 37, 48, 79, 108, 112, 110, 110, 106, 102, 99, 32.20017 + 99, 101, 103, 104, 105, 104, 105, 108, 114, 118, 121, 127, 132, 129, 128, 130, 32.20018 + 133, 132, 131, 132, 132, 131, 128, 127, 125, 127, 123, 123, 124, 125, 123, 120, 32.20019 + 114, 108, 104, 102, 104, 101, 103, 102, 107, 109, 115, 115, 113, 106, 100, 98, 32.20020 + 99, 103, 98, 96, 94, 93, 95, 97, 95, 94, 94, 91, 85, 84, 84, 82, 32.20021 + 77, 74, 69, 72, 71, 87, 34, 28, 32, 46, 61, 255, 255, 255, 255, 255, 32.20022 + 255, 15, 17, 0, 15, 22, 21, 21, 24, 24, 18, 14, 13, 29, 19, 41, 32.20023 + 7, 78, 20, 66, 63, 59, 14, 36, 56, 56, 56, 40, 48, 14, 42, 58, 32.20024 + 71, 54, 62, 66, 80, 69, 72, 46, 45, 13, 50, 104, 104, 110, 110, 110, 32.20025 + 107, 102, 99, 101, 101, 105, 104, 107, 104, 107, 109, 114, 117, 120, 126, 130, 32.20026 + 127, 126, 129, 131, 132, 134, 135, 135, 130, 128, 124, 123, 123, 119, 120, 121, 32.20027 + 121, 121, 118, 113, 106, 107, 107, 107, 104, 103, 104, 106, 108, 110, 114, 116, 32.20028 + 112, 104, 100, 102, 105, 99, 96, 94, 94, 95, 97, 95, 95, 93, 90, 84, 32.20029 + 84, 84, 82, 77, 75, 70, 74, 71, 84, 44, 29, 35, 50, 61, 255, 255, 32.20030 + 255, 255, 255, 125, 45, 7, 14, 20, 26, 20, 11, 10, 19, 27, 22, 12, 32.20031 + 20, 30, 29, 24, 48, 52, 40, 71, 37, 47, 27, 67, 51, 35, 42, 47, 32.20032 + 54, 20, 61, 47, 44, 62, 86, 74, 52, 63, 96, 52, 26, 50, 104, 103, 32.20033 + 110, 107, 105, 106, 102, 99, 102, 107, 112, 109, 110, 108, 111, 112, 114, 115, 32.20034 + 122, 122, 124, 126, 130, 132, 134, 135, 133, 128, 125, 123, 125, 125, 124, 121, 32.20035 + 113, 115, 117, 118, 118, 116, 113, 113, 111, 112, 113, 115, 111, 106, 105, 108, 32.20036 + 109, 111, 108, 103, 101, 103, 103, 100, 97, 93, 92, 92, 93, 94, 93, 92, 32.20037 + 94, 93, 91, 90, 88, 83, 77, 75, 70, 75, 80, 77, 65, 21, 38, 49, 32.20038 + 50, 255, 255, 255, 255, 255, 119, 66, 10, 9, 16, 21, 23, 20, 16, 18, 32.20039 + 22, 20, 15, 27, 33, 31, 22, 41, 46, 40, 73, 43, 57, 41, 53, 64, 32.20040 + 41, 53, 42, 55, 23, 55, 50, 47, 61, 87, 67, 59, 65, 78, 37, 31, 32.20041 + 57, 104, 106, 108, 107, 106, 107, 103, 100, 103, 110, 111, 110, 110, 110, 111, 32.20042 + 113, 116, 117, 120, 121, 125, 128, 130, 131, 132, 133, 127, 126, 124, 124, 125, 32.20043 + 124, 119, 116, 114, 115, 115, 116, 115, 114, 111, 110, 110, 110, 111, 114, 112, 32.20044 + 107, 106, 110, 112, 113, 111, 105, 103, 105, 105, 101, 99, 95, 92, 92, 92, 32.20045 + 93, 92, 91, 92, 91, 89, 87, 86, 82, 77, 76, 77, 78, 80, 74, 67, 32.20046 + 25, 43, 53, 50, 255, 255, 255, 255, 255, 109, 95, 13, 4, 14, 18, 26, 32.20047 + 29, 24, 19, 18, 18, 17, 27, 31, 31, 21, 34, 42, 42, 76, 40, 62, 32.20048 + 48, 41, 74, 50, 62, 39, 53, 31, 49, 61, 53, 55, 88, 62, 68, 72, 32.20049 + 58, 28, 47, 74, 107, 112, 108, 108, 107, 108, 104, 101, 104, 110, 107, 107, 32.20050 + 107, 107, 109, 111, 115, 117, 117, 119, 123, 126, 128, 129, 129, 128, 129, 128, 32.20051 + 129, 130, 128, 125, 121, 117, 114, 114, 114, 113, 110, 108, 107, 108, 110, 109, 32.20052 + 110, 112, 109, 104, 103, 107, 111, 112, 110, 104, 102, 103, 103, 100, 99, 95, 32.20053 + 92, 92, 92, 92, 91, 89, 90, 88, 86, 85, 84, 81, 78, 77, 76, 72, 32.20054 + 70, 66, 62, 23, 40, 49, 51, 255, 255, 255, 255, 255, 102, 109, 13, 2, 32.20055 + 14, 16, 29, 33, 29, 22, 19, 19, 18, 17, 22, 30, 25, 33, 41, 43, 32.20056 + 71, 33, 60, 46, 46, 76, 56, 61, 43, 47, 35, 47, 72, 54, 49, 88, 32.20057 + 64, 63, 76, 49, 39, 72, 92, 107, 116, 109, 109, 109, 110, 106, 102, 104, 32.20058 + 109, 104, 104, 104, 105, 109, 111, 114, 118, 118, 119, 122, 126, 128, 128, 128, 32.20059 + 126, 130, 130, 129, 130, 128, 126, 121, 116, 116, 115, 113, 109, 107, 105, 104, 32.20060 + 103, 114, 111, 112, 110, 108, 99, 100, 101, 109, 108, 107, 99, 99, 99, 101, 32.20061 + 96, 96, 93, 91, 91, 92, 92, 92, 90, 89, 87, 85, 84, 84, 82, 79, 32.20062 + 79, 74, 67, 64, 62, 60, 23, 37, 42, 50, 255, 255, 255, 255, 255, 103, 32.20063 + 97, 10, 3, 14, 21, 28, 30, 26, 24, 23, 21, 18, 7, 12, 30, 30, 32.20064 + 33, 38, 36, 58, 26, 54, 38, 64, 72, 62, 61, 53, 44, 37, 51, 83, 32.20065 + 54, 47, 84, 70, 49, 77, 53, 66, 100, 106, 108, 117, 109, 110, 110, 111, 32.20066 + 108, 103, 103, 109, 104, 101, 101, 102, 106, 109, 111, 115, 117, 118, 121, 125, 32.20067 + 126, 127, 127, 127, 128, 123, 121, 120, 120, 120, 116, 115, 116, 113, 111, 109, 32.20068 + 106, 103, 101, 101, 113, 110, 110, 108, 105, 97, 98, 100, 105, 104, 104, 96, 32.20069 + 97, 97, 99, 95, 93, 91, 90, 90, 92, 93, 93, 92, 89, 87, 86, 86, 32.20070 + 85, 84, 81, 80, 73, 66, 66, 67, 65, 26, 35, 36, 43, 255, 255, 255, 32.20071 + 255, 255, 115, 64, 6, 5, 11, 25, 29, 27, 24, 25, 29, 28, 24, 10, 32.20072 + 11, 32, 35, 33, 36, 31, 42, 24, 47, 34, 72, 63, 64, 68, 55, 45, 32.20073 + 31, 52, 87, 53, 51, 77, 74, 46, 81, 61, 90, 115, 109, 108, 113, 110, 32.20074 + 108, 110, 113, 110, 105, 104, 108, 102, 102, 102, 102, 104, 106, 110, 112, 116, 32.20075 + 118, 119, 120, 121, 125, 126, 126, 126, 123, 120, 119, 120, 121, 119, 118, 113, 32.20076 + 112, 111, 110, 106, 103, 100, 99, 105, 105, 104, 105, 102, 98, 99, 104, 103, 32.20077 + 105, 103, 98, 97, 100, 101, 99, 93, 92, 90, 90, 91, 92, 92, 91, 88, 32.20078 + 87, 87, 87, 87, 84, 80, 78, 66, 63, 65, 67, 64, 22, 29, 28, 32, 32.20079 + 255, 255, 255, 255, 255, 134, 25, 2, 6, 5, 25, 29, 27, 23, 24, 30, 32.20080 + 34, 33, 19, 12, 31, 34, 30, 36, 34, 40, 28, 37, 34, 57, 51, 60, 32.20081 + 83, 43, 52, 24, 50, 84, 52, 64, 72, 78, 57, 88, 62, 103, 115, 105, 32.20082 + 109, 111, 110, 109, 111, 114, 109, 104, 105, 108, 103, 102, 101, 101, 102, 104, 32.20083 + 107, 108, 113, 114, 114, 113, 115, 119, 121, 123, 126, 125, 124, 124, 126, 126, 32.20084 + 123, 121, 111, 112, 112, 111, 108, 104, 101, 98, 101, 99, 98, 99, 97, 94, 32.20085 + 96, 101, 98, 100, 99, 95, 95, 99, 100, 100, 97, 96, 93, 92, 92, 92, 32.20086 + 91, 89, 88, 88, 89, 90, 89, 85, 79, 74, 63, 61, 64, 64, 59, 15, 32.20087 + 23, 23, 21, 255, 255, 255, 255, 131, 148, 0, 0, 7, 0, 24, 29, 28, 32.20088 + 22, 21, 28, 37, 41, 24, 12, 28, 30, 28, 38, 40, 46, 31, 29, 36, 32.20089 + 35, 39, 54, 92, 28, 57, 18, 48, 82, 53, 75, 67, 76, 68, 93, 62, 32.20090 + 106, 108, 101, 108, 110, 109, 109, 112, 113, 110, 105, 105, 108, 104, 102, 101, 32.20091 + 101, 102, 103, 106, 107, 112, 111, 111, 110, 111, 114, 119, 122, 120, 121, 122, 32.20092 + 125, 127, 126, 123, 118, 112, 111, 113, 112, 110, 105, 101, 98, 102, 99, 97, 32.20093 + 97, 94, 90, 91, 96, 95, 97, 96, 92, 93, 97, 99, 97, 102, 99, 95, 32.20094 + 93, 92, 90, 88, 86, 86, 87, 89, 90, 89, 84, 76, 71, 67, 64, 68, 32.20095 + 66, 60, 14, 24, 25, 94, 255, 255, 255, 255, 132, 130, 1, 8, 3, 5, 32.20096 + 17, 34, 26, 18, 32, 36, 32, 39, 21, 39, 39, 29, 33, 39, 41, 46, 32.20097 + 16, 40, 13, 48, 28, 65, 69, 53, 45, 36, 38, 76, 59, 48, 87, 61, 32.20098 + 70, 90, 42, 126, 103, 109, 107, 110, 113, 111, 110, 108, 108, 106, 105, 103, 32.20099 + 103, 102, 103, 104, 105, 105, 106, 106, 107, 106, 108, 107, 109, 113, 121, 124, 32.20100 + 131, 121, 121, 124, 121, 122, 122, 112, 113, 111, 113, 114, 115, 110, 104, 100, 32.20101 + 95, 96, 98, 99, 98, 96, 94, 92, 92, 96, 96, 94, 95, 98, 97, 94, 32.20102 + 103, 99, 94, 93, 93, 91, 87, 83, 87, 87, 86, 85, 88, 88, 80, 69, 32.20103 + 60, 65, 66, 65, 68, 0, 11, 12, 255, 255, 255, 255, 214, 126, 124, 4, 32.20104 + 12, 7, 9, 23, 33, 33, 31, 34, 32, 30, 37, 31, 38, 30, 25, 40, 32.20105 + 49, 42, 35, 26, 39, 10, 53, 45, 55, 72, 54, 44, 39, 38, 76, 69, 32.20106 + 55, 88, 70, 65, 83, 56, 117, 103, 110, 107, 109, 114, 113, 110, 110, 108, 32.20107 + 107, 106, 103, 101, 101, 103, 104, 105, 105, 106, 105, 106, 105, 104, 107, 113, 32.20108 + 120, 120, 121, 130, 122, 124, 127, 124, 125, 126, 116, 110, 109, 111, 111, 115, 32.20109 + 111, 107, 104, 98, 99, 99, 100, 98, 96, 94, 92, 91, 95, 95, 93, 93, 32.20110 + 96, 96, 95, 102, 98, 94, 93, 93, 92, 88, 84, 85, 86, 85, 83, 85, 32.20111 + 86, 79, 70, 64, 69, 66, 67, 53, 0, 7, 3, 255, 255, 255, 255, 132, 32.20112 + 125, 122, 13, 19, 13, 14, 25, 19, 24, 31, 26, 25, 38, 48, 22, 39, 32.20113 + 41, 32, 35, 38, 40, 47, 31, 35, 7, 50, 55, 34, 67, 46, 37, 37, 32.20114 + 32, 68, 74, 52, 71, 72, 58, 73, 77, 108, 105, 115, 107, 110, 115, 115, 32.20115 + 112, 111, 108, 108, 105, 105, 101, 102, 104, 105, 105, 104, 105, 104, 103, 103, 32.20116 + 103, 110, 119, 125, 122, 117, 129, 122, 125, 130, 127, 127, 128, 119, 120, 118, 32.20117 + 118, 116, 117, 112, 107, 103, 104, 104, 104, 103, 100, 97, 94, 92, 93, 95, 32.20118 + 95, 92, 93, 96, 97, 95, 100, 98, 95, 94, 96, 96, 92, 89, 87, 89, 32.20119 + 88, 85, 85, 85, 80, 73, 71, 71, 70, 73, 36, 0, 8, 0, 255, 255, 32.20120 + 255, 213, 133, 128, 120, 22, 19, 11, 13, 39, 18, 23, 35, 20, 11, 21, 32.20121 + 25, 17, 38, 43, 34, 30, 33, 44, 62, 29, 34, 16, 47, 58, 22, 71, 32.20122 + 45, 38, 41, 31, 57, 74, 52, 58, 70, 54, 67, 99, 101, 103, 118, 105, 32.20123 + 111, 114, 113, 113, 109, 107, 106, 104, 104, 103, 103, 104, 104, 105, 103, 101, 32.20124 + 102, 101, 102, 106, 114, 120, 121, 118, 115, 124, 118, 126, 130, 128, 132, 134, 32.20125 + 125, 127, 123, 122, 122, 121, 117, 113, 108, 109, 106, 107, 103, 102, 96, 95, 32.20126 + 91, 95, 95, 96, 90, 92, 95, 99, 97, 101, 97, 94, 95, 97, 98, 95, 32.20127 + 92, 90, 92, 91, 87, 86, 86, 81, 75, 75, 73, 74, 77, 30, 1, 16, 32.20128 + 0, 255, 255, 255, 127, 133, 130, 118, 33, 24, 14, 15, 27, 2, 8, 26, 32.20129 + 17, 10, 18, 21, 28, 32, 24, 21, 34, 44, 50, 61, 22, 36, 32, 47, 32.20130 + 59, 27, 80, 57, 40, 47, 38, 55, 78, 64, 62, 80, 56, 68, 113, 100, 32.20131 + 103, 117, 104, 112, 112, 111, 112, 108, 104, 100, 101, 102, 108, 107, 106, 104, 32.20132 + 103, 101, 99, 100, 107, 111, 114, 115, 110, 106, 105, 107, 118, 114, 124, 129, 32.20133 + 128, 133, 138, 130, 125, 124, 125, 127, 129, 127, 125, 120, 115, 111, 111, 106, 32.20134 + 104, 98, 97, 93, 98, 98, 98, 91, 94, 97, 102, 101, 101, 98, 95, 96, 32.20135 + 99, 100, 97, 94, 90, 92, 92, 89, 90, 91, 86, 79, 77, 76, 83, 82, 32.20136 + 39, 20, 32, 15, 255, 255, 255, 133, 136, 131, 121, 59, 54, 45, 44, 46, 32.20137 + 19, 4, 5, 0, 2, 22, 40, 30, 35, 29, 24, 32, 39, 47, 64, 22, 32.20138 + 28, 34, 42, 52, 34, 74, 62, 35, 45, 45, 57, 81, 78, 72, 82, 65, 32.20139 + 79, 115, 105, 102, 114, 104, 110, 108, 110, 109, 106, 100, 97, 98, 100, 108, 32.20140 + 108, 105, 102, 100, 99, 101, 101, 115, 117, 116, 107, 95, 88, 88, 94, 112, 32.20141 + 108, 116, 122, 120, 127, 134, 128, 135, 134, 136, 138, 139, 135, 131, 125, 120, 32.20142 + 117, 114, 110, 106, 102, 100, 98, 101, 102, 99, 94, 94, 100, 104, 103, 103, 32.20143 + 100, 98, 98, 101, 102, 100, 97, 89, 90, 89, 89, 92, 94, 86, 76, 72, 32.20144 + 69, 84, 79, 55, 34, 42, 36, 255, 255, 214, 138, 131, 121, 118, 87, 96, 32.20145 + 90, 86, 108, 92, 63, 37, 17, 0, 4, 26, 33, 44, 42, 34, 30, 27, 32.20146 + 36, 59, 40, 22, 31, 39, 44, 33, 47, 54, 24, 37, 51, 59, 79, 89, 32.20147 + 77, 72, 75, 92, 109, 110, 100, 109, 103, 110, 107, 110, 109, 106, 99, 96, 32.20148 + 97, 102, 107, 106, 103, 100, 99, 101, 105, 107, 117, 114, 107, 95, 84, 79, 32.20149 + 82, 87, 102, 97, 105, 107, 103, 109, 118, 115, 128, 128, 132, 137, 138, 133, 32.20150 + 129, 122, 125, 123, 120, 116, 111, 108, 105, 104, 105, 106, 102, 96, 96, 103, 32.20151 + 107, 108, 107, 104, 101, 102, 104, 105, 102, 99, 96, 93, 88, 88, 91, 89, 32.20152 + 75, 60, 57, 52, 76, 64, 65, 32, 41, 45, 255, 255, 127, 130, 118, 101, 32.20153 + 103, 98, 117, 116, 108, 110, 126, 120, 102, 78, 38, 14, 25, 48, 44, 34, 32.20154 + 30, 38, 37, 30, 36, 67, 22, 32, 44, 44, 33, 26, 46, 22, 36, 59, 32.20155 + 65, 80, 92, 77, 61, 80, 99, 103, 113, 97, 104, 102, 109, 107, 110, 110, 32.20156 + 107, 101, 95, 99, 102, 102, 101, 97, 95, 98, 102, 108, 112, 113, 107, 94, 32.20157 + 83, 79, 80, 83, 88, 92, 89, 93, 94, 87, 93, 102, 100, 94, 99, 107, 32.20158 + 118, 126, 129, 126, 121, 128, 125, 123, 118, 115, 111, 109, 107, 107, 106, 103, 32.20159 + 96, 97, 103, 109, 109, 108, 107, 103, 103, 106, 106, 103, 100, 104, 98, 90, 32.20160 + 86, 89, 83, 62, 45, 45, 41, 69, 51, 68, 27, 33, 46, 255, 255, 129, 32.20161 + 124, 105, 94, 103, 106, 98, 99, 110, 111, 115, 116, 112, 104, 85, 52, 24, 32.20162 + 24, 28, 31, 36, 36, 23, 23, 39, 55, 30, 41, 36, 57, 58, 27, 61, 32.20163 + 48, 32, 51, 79, 70, 101, 76, 73, 91, 95, 101, 104, 103, 102, 100, 101, 32.20164 + 107, 110, 111, 107, 101, 97, 102, 104, 98, 96, 91, 91, 98, 106, 106, 100, 32.20165 + 105, 97, 85, 78, 78, 78, 76, 75, 83, 85, 73, 59, 60, 73, 79, 76, 32.20166 + 68, 72, 71, 78, 97, 122, 131, 124, 124, 117, 124, 104, 117, 106, 116, 106, 32.20167 + 107, 107, 106, 97, 97, 101, 111, 115, 115, 114, 111, 108, 108, 105, 106, 108, 32.20168 + 101, 89, 86, 91, 86, 76, 55, 30, 24, 39, 42, 60, 72, 34, 14, 48, 32.20169 + 255, 255, 124, 102, 100, 101, 107, 111, 108, 101, 98, 103, 111, 115, 112, 113, 32.20170 + 109, 94, 75, 43, 32, 59, 36, 51, 13, 37, 37, 43, 26, 35, 15, 43, 32.20171 + 57, 36, 56, 48, 32, 48, 67, 77, 100, 84, 85, 94, 96, 100, 102, 101, 32.20172 + 100, 101, 102, 105, 107, 108, 105, 100, 97, 100, 102, 96, 98, 98, 96, 96, 32.20173 + 96, 92, 87, 106, 95, 82, 73, 71, 73, 74, 76, 66, 68, 61, 50, 50, 32.20174 + 58, 60, 54, 50, 53, 57, 59, 63, 77, 91, 97, 112, 114, 121, 107, 107, 32.20175 + 101, 110, 108, 105, 104, 102, 94, 96, 101, 109, 112, 114, 111, 107, 108, 108, 32.20176 + 108, 108, 106, 105, 93, 88, 80, 62, 49, 38, 23, 14, 29, 32, 50, 64, 32.20177 + 34, 10, 255, 255, 212, 117, 95, 106, 113, 114, 113, 112, 104, 91, 102, 115, 32.20178 + 118, 109, 112, 124, 125, 114, 87, 63, 50, 68, 53, 56, 39, 22, 20, 25, 32.20179 + 47, 10, 32, 47, 42, 50, 44, 30, 40, 43, 81, 90, 87, 92, 99, 99, 32.20180 + 101, 102, 101, 100, 100, 101, 102, 104, 105, 103, 99, 97, 98, 101, 77, 88, 32.20181 + 97, 99, 98, 97, 95, 94, 83, 78, 75, 75, 81, 88, 93, 94, 89, 92, 32.20182 + 90, 81, 82, 83, 80, 71, 66, 58, 50, 45, 41, 39, 43, 47, 83, 100, 32.20183 + 112, 115, 104, 106, 108, 113, 111, 109, 105, 99, 102, 109, 114, 114, 114, 110, 32.20184 + 104, 105, 108, 109, 107, 103, 94, 85, 81, 65, 39, 27, 27, 23, 3, 17, 32.20185 + 19, 34, 55, 39, 14, 255, 255, 121, 106, 109, 116, 120, 116, 108, 101, 98, 32.20186 + 94, 109, 123, 124, 107, 104, 120, 126, 118, 113, 88, 61, 100, 57, 79, 40, 32.20187 + 14, 7, 27, 63, 28, 33, 33, 41, 48, 43, 32, 39, 29, 86, 80, 88, 32.20188 + 90, 102, 101, 101, 100, 99, 99, 99, 99, 101, 103, 104, 103, 99, 97, 97, 32.20189 + 98, 93, 103, 108, 99, 88, 83, 82, 82, 77, 80, 89, 100, 110, 116, 118, 32.20190 + 117, 106, 109, 108, 104, 103, 104, 99, 91, 103, 79, 60, 57, 55, 44, 31, 32.20191 + 25, 50, 76, 92, 115, 103, 116, 109, 115, 114, 111, 105, 101, 105, 113, 116, 32.20192 + 115, 118, 113, 106, 104, 107, 110, 104, 96, 81, 73, 68, 53, 28, 22, 28, 32.20193 + 31, 22, 34, 31, 33, 45, 39, 19, 255, 255, 117, 94, 116, 114, 118, 121, 32.20194 + 108, 91, 91, 103, 113, 130, 133, 116, 109, 115, 118, 111, 106, 91, 108, 102, 32.20195 + 73, 48, 44, 20, 16, 22, 48, 36, 38, 32, 42, 45, 42, 35, 42, 31, 32.20196 + 93, 77, 95, 92, 103, 100, 99, 98, 98, 98, 97, 96, 101, 103, 104, 103, 32.20197 + 101, 98, 95, 96, 95, 103, 102, 90, 79, 80, 87, 93, 110, 112, 117, 121, 32.20198 + 124, 123, 122, 117, 111, 109, 108, 105, 107, 108, 105, 100, 106, 87, 75, 78, 32.20199 + 79, 67, 56, 50, 41, 62, 72, 96, 93, 114, 110, 115, 110, 108, 103, 99, 32.20200 + 103, 110, 113, 110, 115, 113, 105, 102, 104, 108, 102, 91, 75, 60, 49, 37, 32.20201 + 24, 31, 46, 50, 67, 70, 61, 46, 41, 36, 25, 255, 255, 113, 89, 105, 32.20202 + 105, 114, 123, 108, 86, 89, 109, 110, 124, 133, 127, 119, 115, 111, 105, 99, 32.20203 + 98, 109, 105, 74, 50, 38, 21, 33, 16, 14, 30, 35, 43, 44, 41, 37, 32.20204 + 30, 39, 39, 89, 73, 101, 90, 102, 99, 98, 98, 99, 98, 96, 93, 102, 32.20205 + 103, 104, 104, 101, 97, 92, 91, 84, 89, 87, 79, 81, 93, 109, 117, 131, 32.20206 + 128, 123, 119, 115, 114, 115, 113, 116, 111, 110, 108, 108, 108, 108, 106, 90, 32.20207 + 94, 97, 96, 88, 78, 77, 80, 62, 66, 63, 71, 76, 97, 105, 111, 107, 32.20208 + 107, 103, 99, 101, 108, 111, 109, 107, 106, 101, 95, 95, 99, 93, 82, 59, 32.20209 + 42, 32, 27, 32, 55, 80, 87, 87, 87, 79, 61, 47, 43, 41, 255, 255, 32.20210 + 113, 91, 93, 102, 113, 113, 98, 86, 97, 113, 120, 129, 141, 143, 133, 115, 32.20211 + 103, 95, 102, 106, 90, 103, 75, 73, 37, 24, 35, 19, 2, 33, 25, 47, 32.20212 + 43, 30, 38, 31, 39, 47, 76, 65, 101, 84, 102, 99, 99, 100, 102, 101, 32.20213 + 97, 93, 101, 102, 103, 102, 100, 94, 88, 87, 100, 100, 94, 87, 91, 103, 32.20214 + 111, 114, 123, 121, 117, 113, 112, 113, 118, 119, 113, 105, 103, 102, 101, 99, 32.20215 + 99, 98, 88, 100, 106, 100, 90, 85, 89, 90, 90, 83, 78, 66, 77, 87, 32.20216 + 104, 107, 107, 109, 107, 103, 102, 108, 112, 113, 100, 103, 99, 86, 81, 83, 32.20217 + 78, 66, 44, 32, 34, 44, 57, 80, 101, 103, 86, 81, 79, 69, 56, 49, 32.20218 + 119, 255, 255, 115, 98, 91, 108, 115, 100, 83, 85, 103, 115, 142, 145, 155, 32.20219 + 160, 143, 116, 94, 88, 102, 102, 118, 83, 98, 54, 51, 39, 24, 27, 11, 32.20220 + 47, 14, 43, 35, 25, 50, 39, 45, 58, 71, 63, 103, 83, 102, 99, 100, 32.20221 + 102, 104, 103, 98, 93, 101, 101, 101, 101, 98, 92, 85, 82, 95, 96, 93, 32.20222 + 96, 107, 121, 129, 126, 121, 122, 124, 124, 125, 125, 128, 125, 119, 111, 107, 32.20223 + 107, 107, 103, 99, 98, 94, 100, 101, 96, 97, 104, 102, 96, 102, 95, 96, 32.20224 + 75, 87, 85, 103, 103, 100, 104, 104, 99, 96, 101, 106, 109, 100, 103, 97, 32.20225 + 81, 70, 67, 61, 48, 45, 42, 56, 71, 82, 92, 96, 87, 89, 79, 78, 32.20226 + 72, 58, 47, 255, 255, 255, 89, 101, 83, 118, 113, 106, 87, 82, 115, 115, 32.20227 + 137, 125, 116, 114, 108, 101, 97, 99, 97, 106, 102, 92, 89, 79, 57, 45, 32.20228 + 31, 21, 27, 25, 24, 49, 14, 40, 40, 23, 48, 79, 54, 77, 79, 83, 32.20229 + 91, 98, 104, 103, 101, 101, 100, 98, 102, 100, 98, 99, 100, 96, 86, 81, 32.20230 + 100, 109, 112, 109, 111, 120, 124, 121, 112, 125, 110, 118, 122, 116, 121, 118, 32.20231 + 110, 103, 105, 107, 101, 92, 95, 106, 98, 91, 91, 94, 98, 98, 98, 101, 32.20232 + 101, 109, 111, 101, 88, 84, 94, 106, 104, 103, 98, 92, 91, 97, 102, 100, 32.20233 + 88, 91, 82, 72, 73, 44, 33, 48, 73, 66, 73, 90, 95, 88, 88, 96, 32.20234 + 83, 86, 84, 61, 76, 46, 255, 255, 255, 98, 98, 92, 114, 112, 98, 87, 32.20235 + 92, 114, 117, 104, 128, 130, 110, 108, 123, 116, 88, 93, 105, 102, 91, 92, 32.20236 + 86, 74, 70, 29, 20, 42, 33, 44, 47, 20, 34, 28, 27, 54, 75, 52, 32.20237 + 83, 83, 82, 90, 94, 99, 99, 99, 101, 100, 97, 103, 101, 100, 99, 98, 32.20238 + 93, 86, 84, 100, 110, 113, 108, 108, 115, 117, 113, 128, 130, 110, 112, 117, 32.20239 + 110, 111, 101, 88, 83, 80, 81, 89, 98, 97, 92, 93, 94, 98, 96, 89, 32.20240 + 84, 96, 110, 101, 106, 107, 104, 99, 99, 104, 109, 107, 107, 103, 96, 94, 32.20241 + 98, 100, 96, 82, 91, 74, 68, 55, 55, 51, 72, 80, 86, 89, 86, 89, 32.20242 + 91, 83, 68, 73, 79, 85, 72, 82, 48, 255, 255, 255, 112, 95, 104, 108, 32.20243 + 111, 91, 87, 106, 114, 119, 121, 114, 120, 131, 130, 113, 104, 107, 92, 106, 32.20244 + 105, 92, 93, 92, 90, 93, 48, 29, 44, 14, 35, 29, 22, 37, 17, 28, 32.20245 + 58, 69, 55, 87, 90, 83, 95, 96, 97, 97, 99, 102, 100, 95, 102, 102, 32.20246 + 102, 99, 95, 91, 89, 91, 109, 120, 122, 117, 113, 118, 116, 111, 113, 102, 32.20247 + 79, 80, 96, 100, 116, 107, 108, 107, 98, 87, 87, 93, 85, 69, 73, 80, 32.20248 + 89, 94, 88, 80, 85, 92, 101, 102, 103, 106, 110, 111, 110, 108, 106, 108, 32.20249 + 105, 99, 95, 95, 93, 87, 100, 88, 68, 53, 49, 55, 62, 71, 63, 67, 32.20250 + 66, 59, 58, 68, 76, 74, 77, 79, 84, 79, 77, 43, 255, 255, 255, 125, 32.20251 + 98, 112, 105, 112, 86, 85, 113, 114, 127, 127, 134, 129, 113, 117, 135, 129, 32.20252 + 107, 95, 109, 108, 93, 91, 91, 93, 100, 74, 47, 36, 7, 22, 24, 22, 32.20253 + 38, 19, 23, 50, 60, 62, 90, 94, 91, 103, 101, 100, 98, 100, 104, 101, 32.20254 + 94, 99, 101, 103, 99, 94, 92, 95, 101, 117, 127, 131, 123, 119, 118, 115, 32.20255 + 106, 95, 85, 77, 82, 103, 107, 130, 116, 89, 89, 85, 78, 76, 81, 89, 32.20256 + 92, 73, 67, 69, 77, 86, 85, 81, 80, 100, 102, 104, 109, 114, 115, 111, 32.20257 + 106, 107, 110, 108, 102, 98, 95, 90, 82, 96, 53, 49, 47, 70, 67, 86, 32.20258 + 79, 95, 84, 81, 83, 68, 51, 58, 83, 81, 77, 79, 75, 66, 110, 255, 32.20259 + 255, 255, 132, 105, 110, 105, 114, 87, 84, 113, 117, 135, 133, 129, 118, 109, 32.20260 + 121, 143, 139, 117, 94, 108, 107, 93, 93, 93, 93, 97, 84, 63, 32, 24, 32.20261 + 28, 41, 26, 37, 34, 19, 39, 53, 73, 91, 94, 100, 101, 100, 99, 98, 32.20262 + 101, 106, 103, 97, 96, 100, 102, 100, 96, 96, 102, 110, 112, 122, 127, 118, 32.20263 + 113, 110, 105, 94, 88, 80, 87, 87, 92, 72, 86, 58, 41, 34, 36, 54, 32.20264 + 62, 63, 67, 77, 79, 67, 61, 65, 75, 79, 82, 86, 94, 98, 102, 107, 32.20265 + 109, 109, 109, 108, 111, 114, 112, 106, 101, 97, 91, 83, 95, 45, 42, 83, 32.20266 + 65, 55, 55, 62, 89, 75, 72, 86, 81, 64, 64, 81, 74, 74, 76, 76, 32.20267 + 58, 255, 255, 255, 255, 130, 117, 104, 107, 110, 90, 88, 111, 125, 138, 144, 32.20268 + 113, 105, 128, 142, 126, 114, 117, 94, 103, 99, 89, 95, 99, 97, 98, 93, 32.20269 + 75, 31, 31, 30, 49, 36, 47, 43, 20, 34, 46, 80, 92, 94, 103, 92, 32.20270 + 94, 96, 97, 101, 105, 105, 100, 97, 101, 103, 102, 99, 101, 107, 114, 111, 32.20271 + 121, 123, 113, 108, 105, 97, 88, 87, 71, 74, 54, 45, 17, 43, 15, 24, 32.20272 + 11, 28, 73, 96, 73, 36, 15, 49, 53, 66, 74, 74, 69, 70, 76, 88, 32.20273 + 94, 100, 101, 104, 106, 112, 115, 122, 122, 120, 111, 105, 101, 96, 89, 90, 32.20274 + 51, 41, 120, 28, 23, 0, 25, 46, 33, 21, 23, 40, 61, 73, 78, 77, 32.20275 + 84, 87, 85, 51, 255, 255, 255, 255, 125, 129, 99, 110, 102, 94, 95, 111, 32.20276 + 135, 136, 129, 129, 128, 126, 132, 131, 113, 88, 99, 104, 94, 86, 99, 108, 32.20277 + 106, 104, 98, 82, 47, 38, 43, 43, 45, 53, 41, 27, 45, 42, 82, 94, 32.20278 + 96, 100, 91, 95, 100, 100, 101, 103, 102, 99, 102, 104, 105, 104, 103, 105, 32.20279 + 109, 114, 112, 119, 120, 113, 107, 103, 97, 88, 99, 71, 71, 49, 47, 31, 32.20280 + 77, 58, 38, 31, 48, 91, 118, 101, 54, 20, 20, 30, 53, 72, 77, 73, 32.20281 + 69, 70, 94, 95, 97, 95, 99, 103, 113, 117, 130, 127, 123, 110, 103, 97, 32.20282 + 94, 87, 57, 19, 28, 108, 23, 20, 10, 29, 93, 75, 51, 30, 21, 29, 32.20283 + 47, 63, 79, 91, 91, 81, 36, 255, 255, 255, 255, 120, 139, 96, 112, 94, 32.20284 + 96, 101, 111, 141, 133, 134, 113, 117, 145, 147, 117, 101, 112, 109, 109, 94, 32.20285 + 86, 102, 116, 112, 107, 93, 87, 79, 63, 74, 43, 43, 36, 31, 32, 52, 32.20286 + 39, 80, 94, 99, 95, 97, 103, 108, 106, 102, 101, 99, 96, 106, 107, 107, 32.20287 + 106, 106, 107, 109, 109, 109, 116, 118, 110, 105, 103, 97, 90, 87, 64, 80, 32.20288 + 71, 84, 71, 118, 92, 84, 71, 58, 64, 80, 84, 70, 52, 28, 23, 28, 32.20289 + 47, 70, 85, 89, 92, 106, 102, 95, 93, 96, 104, 111, 115, 132, 130, 121, 32.20290 + 107, 97, 93, 88, 83, 67, 8, 38, 83, 50, 27, 43, 29, 141, 128, 118, 32.20291 + 100, 51, 6, 17, 56, 72, 85, 81, 68, 23, 255, 255, 255, 255, 131, 126, 32.20292 + 116, 108, 91, 111, 81, 133, 137, 119, 123, 115, 135, 170, 126, 116, 115, 118, 32.20293 + 112, 105, 105, 119, 128, 124, 117, 116, 95, 95, 83, 70, 75, 84, 73, 49, 32.20294 + 26, 23, 21, 32, 60, 87, 100, 100, 95, 94, 95, 96, 98, 99, 100, 101, 32.20295 + 106, 107, 107, 106, 106, 107, 111, 115, 110, 111, 111, 109, 111, 114, 113, 108, 32.20296 + 102, 97, 94, 96, 102, 104, 102, 99, 109, 103, 93, 82, 75, 73, 77, 81, 32.20297 + 68, 68, 74, 77, 74, 71, 86, 107, 108, 93, 88, 96, 99, 94, 102, 116, 32.20298 + 123, 129, 130, 117, 102, 93, 89, 88, 32, 30, 25, 26, 33, 28, 37, 59, 32.20299 + 130, 123, 109, 86, 56, 35, 31, 37, 57, 76, 100, 46, 110, 255, 255, 255, 32.20300 + 255, 134, 126, 122, 101, 101, 103, 92, 133, 136, 118, 120, 113, 132, 168, 139, 32.20301 + 135, 121, 111, 115, 107, 109, 126, 137, 133, 120, 114, 102, 98, 90, 81, 88, 32.20302 + 94, 87, 72, 47, 40, 30, 31, 50, 74, 89, 91, 95, 94, 96, 98, 99, 32.20303 + 100, 100, 100, 104, 105, 105, 104, 104, 105, 109, 110, 112, 112, 112, 109, 112, 32.20304 + 115, 113, 109, 104, 100, 97, 96, 101, 102, 101, 99, 106, 102, 96, 89, 84, 32.20305 + 82, 84, 85, 80, 81, 88, 96, 93, 88, 95, 108, 106, 93, 90, 98, 100, 32.20306 + 94, 101, 113, 118, 124, 127, 117, 104, 94, 86, 80, 35, 40, 37, 39, 43, 32.20307 + 40, 43, 60, 95, 69, 48, 53, 66, 67, 49, 32, 55, 76, 95, 39, 255, 32.20308 + 255, 255, 255, 255, 134, 127, 128, 97, 110, 95, 101, 134, 132, 117, 121, 126, 32.20309 + 147, 163, 130, 129, 131, 130, 113, 107, 114, 134, 144, 138, 123, 115, 104, 96, 32.20310 + 90, 88, 94, 96, 95, 92, 90, 85, 76, 71, 80, 94, 104, 105, 95, 95, 32.20311 + 98, 100, 101, 101, 100, 99, 104, 105, 105, 105, 104, 106, 109, 110, 114, 114, 32.20312 + 113, 110, 111, 114, 115, 110, 106, 105, 106, 105, 105, 105, 106, 106, 104, 103, 32.20313 + 100, 97, 94, 92, 91, 90, 86, 84, 88, 94, 93, 89, 93, 104, 105, 95, 32.20314 + 93, 100, 101, 94, 99, 109, 112, 118, 121, 116, 107, 96, 82, 71, 60, 74, 32.20315 + 75, 74, 79, 79, 77, 84, 85, 71, 63, 73, 85, 85, 74, 66, 60, 80, 32.20316 + 85, 32, 255, 255, 255, 255, 255, 134, 129, 131, 101, 111, 97, 101, 136, 121, 32.20317 + 115, 112, 122, 142, 150, 132, 131, 131, 124, 110, 110, 121, 142, 150, 140, 126, 32.20318 + 119, 107, 95, 89, 89, 91, 89, 91, 97, 89, 92, 95, 94, 97, 103, 104, 32.20319 + 100, 96, 96, 100, 102, 103, 101, 99, 97, 106, 107, 108, 108, 108, 109, 112, 32.20320 + 114, 116, 115, 113, 110, 111, 114, 115, 110, 110, 111, 113, 112, 110, 110, 111, 32.20321 + 112, 105, 103, 100, 99, 97, 96, 94, 93, 90, 83, 79, 80, 81, 83, 92, 32.20322 + 101, 103, 97, 97, 103, 101, 94, 97, 105, 110, 114, 117, 113, 107, 98, 83, 32.20323 + 68, 66, 86, 91, 84, 89, 93, 91, 89, 82, 85, 91, 90, 80, 71, 74, 32.20324 + 81, 74, 88, 73, 104, 255, 255, 255, 255, 255, 134, 130, 132, 114, 102, 104, 32.20325 + 93, 134, 109, 113, 115, 117, 136, 159, 181, 181, 155, 116, 107, 112, 125, 145, 32.20326 + 150, 139, 128, 126, 110, 98, 91, 92, 92, 86, 91, 100, 76, 85, 93, 96, 32.20327 + 99, 102, 99, 91, 97, 97, 100, 102, 103, 101, 98, 96, 106, 107, 109, 109, 32.20328 + 109, 110, 112, 114, 117, 117, 114, 110, 111, 114, 115, 111, 114, 115, 116, 115, 32.20329 + 114, 113, 113, 114, 106, 101, 96, 94, 94, 94, 94, 92, 91, 85, 81, 82, 32.20330 + 85, 89, 96, 103, 104, 101, 102, 105, 102, 95, 97, 103, 111, 113, 114, 110, 32.20331 + 107, 100, 87, 73, 65, 85, 88, 78, 82, 90, 89, 86, 86, 80, 79, 81, 32.20332 + 81, 78, 77, 80, 83, 87, 54, 255, 255, 255, 255, 255, 255, 137, 130, 129, 32.20333 + 129, 94, 110, 92, 124, 110, 113, 113, 115, 133, 150, 181, 180, 168, 142, 109, 32.20334 + 112, 123, 141, 147, 138, 130, 130, 109, 97, 89, 90, 91, 88, 93, 100, 90, 32.20335 + 95, 98, 100, 103, 107, 106, 102, 99, 98, 100, 101, 101, 99, 97, 96, 103, 32.20336 + 105, 107, 108, 107, 108, 110, 112, 117, 117, 114, 110, 111, 115, 117, 113, 115, 32.20337 + 115, 114, 113, 114, 112, 110, 108, 104, 99, 92, 90, 91, 94, 94, 93, 86, 32.20338 + 88, 91, 94, 97, 98, 100, 101, 106, 105, 107, 107, 102, 95, 97, 102, 109, 32.20339 + 112, 113, 109, 107, 102, 91, 80, 68, 84, 86, 77, 81, 88, 88, 88, 91, 32.20340 + 85, 80, 83, 88, 87, 87, 89, 83, 79, 36, 255, 255, 255, 255, 255, 255, 32.20341 + 137, 131, 126, 137, 92, 107, 101, 109, 121, 119, 99, 103, 114, 105, 121, 113, 32.20342 + 130, 143, 116, 108, 114, 133, 143, 140, 132, 128, 109, 99, 90, 88, 90, 91, 32.20343 + 94, 94, 93, 95, 94, 95, 99, 105, 105, 101, 100, 98, 99, 99, 98, 97, 32.20344 + 96, 95, 103, 105, 108, 108, 108, 108, 110, 112, 116, 116, 113, 110, 113, 118, 32.20345 + 120, 117, 120, 117, 116, 116, 116, 114, 110, 105, 102, 94, 89, 89, 93, 97, 32.20346 + 97, 95, 85, 91, 96, 98, 98, 99, 100, 100, 109, 109, 111, 109, 102, 96, 32.20347 + 98, 103, 104, 109, 113, 111, 108, 103, 94, 83, 60, 72, 74, 69, 74, 76, 32.20348 + 77, 81, 83, 83, 83, 83, 78, 73, 77, 85, 82, 78, 30, 255, 255, 255, 32.20349 + 255, 255, 255, 137, 133, 125, 139, 96, 101, 113, 99, 133, 122, 117, 111, 112, 32.20350 + 95, 109, 90, 105, 119, 120, 107, 106, 125, 142, 143, 133, 126, 116, 107, 97, 32.20351 + 89, 91, 96, 96, 91, 93, 93, 96, 97, 103, 107, 106, 99, 101, 98, 98, 32.20352 + 97, 96, 96, 95, 95, 105, 107, 110, 111, 111, 111, 112, 114, 116, 116, 113, 32.20353 + 109, 113, 118, 121, 118, 126, 121, 119, 119, 121, 119, 112, 105, 99, 93, 90, 32.20354 + 93, 98, 102, 101, 99, 95, 99, 101, 98, 97, 100, 105, 109, 111, 112, 113, 32.20355 + 110, 102, 96, 99, 104, 99, 106, 114, 113, 109, 103, 94, 84, 66, 75, 76, 32.20356 + 75, 81, 80, 78, 85, 88, 82, 80, 84, 85, 81, 77, 79, 87, 83, 34, 32.20357 + 255, 255, 255, 255, 255, 255, 133, 133, 126, 134, 114, 96, 101, 121, 87, 122, 32.20358 + 122, 121, 113, 108, 111, 113, 99, 79, 94, 90, 76, 112, 142, 140, 141, 118, 32.20359 + 108, 104, 94, 85, 87, 94, 99, 95, 92, 93, 95, 95, 97, 99, 102, 103, 32.20360 + 99, 100, 102, 101, 97, 95, 96, 97, 104, 105, 107, 107, 108, 110, 114, 117, 32.20361 + 119, 118, 117, 115, 117, 117, 119, 119, 117, 124, 127, 123, 122, 122, 118, 110, 32.20362 + 99, 89, 85, 88, 93, 94, 96, 99, 96, 98, 101, 104, 106, 107, 108, 108, 32.20363 + 110, 109, 109, 108, 101, 94, 98, 105, 101, 99, 104, 112, 111, 101, 93, 90, 32.20364 + 71, 59, 75, 77, 74, 85, 87, 92, 90, 88, 88, 87, 87, 83, 76, 74, 32.20365 + 76, 78, 38, 255, 255, 255, 255, 255, 255, 136, 133, 131, 127, 126, 118, 102, 32.20366 + 128, 108, 103, 112, 114, 109, 106, 114, 125, 123, 114, 88, 86, 75, 106, 133, 32.20367 + 135, 141, 126, 109, 104, 94, 83, 85, 93, 97, 94, 92, 93, 93, 93, 95, 32.20368 + 98, 100, 100, 96, 97, 100, 100, 98, 97, 97, 99, 103, 105, 106, 107, 108, 32.20369 + 110, 113, 116, 119, 118, 118, 117, 120, 120, 121, 121, 121, 127, 129, 125, 124, 32.20370 + 124, 120, 114, 107, 97, 91, 91, 93, 93, 93, 95, 97, 100, 104, 108, 111, 32.20371 + 111, 111, 111, 116, 113, 111, 107, 100, 95, 100, 107, 103, 101, 106, 112, 112, 32.20372 + 103, 96, 93, 78, 63, 76, 76, 73, 83, 86, 92, 92, 90, 90, 90, 90, 32.20373 + 85, 78, 75, 79, 80, 110, 255, 255, 255, 255, 255, 255, 255, 133, 137, 120, 32.20374 + 134, 131, 96, 125, 126, 99, 114, 116, 115, 112, 116, 130, 136, 133, 108, 106, 32.20375 + 98, 114, 124, 124, 131, 124, 111, 104, 94, 85, 86, 92, 95, 93, 91, 93, 32.20376 + 93, 94, 95, 98, 99, 98, 91, 93, 97, 99, 99, 99, 99, 99, 103, 104, 32.20377 + 106, 107, 107, 109, 112, 115, 118, 118, 122, 123, 123, 124, 126, 126, 128, 131, 32.20378 + 131, 128, 126, 125, 124, 118, 110, 99, 93, 93, 94, 92, 91, 92, 97, 100, 32.20379 + 106, 111, 114, 115, 113, 112, 120, 116, 111, 107, 100, 95, 101, 109, 103, 102, 32.20380 + 107, 112, 112, 105, 99, 96, 85, 66, 77, 76, 75, 84, 85, 92, 95, 93, 32.20381 + 94, 94, 94, 89, 80, 77, 79, 78, 255, 255, 255, 255, 255, 255, 255, 255, 32.20382 + 255, 141, 122, 134, 127, 92, 97, 117, 119, 118, 118, 116, 111, 115, 127, 131, 32.20383 + 126, 126, 126, 122, 124, 121, 117, 119, 118, 112, 104, 94, 86, 87, 89, 92, 32.20384 + 92, 91, 90, 91, 94, 94, 95, 97, 96, 88, 91, 95, 98, 99, 99, 98, 32.20385 + 98, 102, 104, 106, 107, 107, 109, 111, 114, 117, 119, 123, 125, 126, 127, 128, 32.20386 + 128, 129, 128, 126, 123, 121, 119, 117, 111, 107, 98, 93, 94, 97, 96, 95, 32.20387 + 97, 96, 101, 107, 114, 117, 117, 116, 114, 117, 113, 110, 107, 102, 97, 101, 32.20388 + 107, 101, 101, 105, 109, 110, 106, 102, 97, 85, 65, 77, 82, 79, 87, 85, 32.20389 + 95, 95, 94, 94, 95, 95, 89, 80, 77, 74, 70, 255, 255, 255, 255, 255, 32.20390 + 255, 255, 255, 255, 255, 132, 131, 122, 98, 55, 74, 124, 118, 116, 107, 101, 32.20391 + 108, 122, 127, 122, 118, 120, 124, 121, 117, 117, 114, 116, 110, 101, 92, 88, 32.20392 + 89, 89, 90, 90, 89, 90, 91, 94, 94, 94, 95, 93, 89, 90, 93, 96, 32.20393 + 98, 98, 97, 96, 103, 105, 107, 108, 108, 109, 111, 113, 119, 120, 123, 125, 32.20394 + 129, 129, 129, 129, 128, 124, 120, 119, 119, 115, 111, 106, 107, 98, 94, 97, 32.20395 + 100, 99, 98, 100, 96, 101, 107, 113, 117, 117, 116, 114, 110, 108, 107, 107, 32.20396 + 104, 98, 99, 102, 97, 99, 103, 104, 106, 105, 102, 97, 82, 64, 79, 88, 32.20397 + 88, 93, 89, 97, 96, 94, 95, 96, 95, 90, 81, 76, 73, 64, 255, 255, 32.20398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 127, 111, 23, 24, 90, 116, 32.20399 + 117, 111, 104, 108, 121, 128, 127, 117, 118, 128, 120, 116, 121, 111, 114, 109, 32.20400 + 99, 91, 88, 90, 88, 90, 92, 89, 90, 91, 92, 93, 93, 91, 91, 89, 32.20401 + 89, 90, 92, 95, 97, 97, 96, 104, 106, 109, 110, 110, 110, 111, 113, 119, 32.20402 + 120, 122, 124, 127, 128, 128, 128, 134, 128, 126, 128, 131, 126, 120, 116, 114, 32.20403 + 104, 100, 101, 103, 100, 98, 98, 98, 101, 107, 112, 115, 116, 115, 113, 108, 32.20404 + 105, 105, 107, 104, 98, 96, 98, 94, 97, 100, 100, 102, 105, 103, 98, 83, 32.20405 + 62, 80, 92, 93, 97, 93, 99, 96, 94, 94, 93, 93, 89, 81, 79, 77, 32.20406 + 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 131, 117, 12, 32.20407 + 0, 41, 73, 91, 108, 112, 113, 121, 125, 125, 127, 123, 133, 121, 117, 126, 32.20408 + 110, 112, 108, 97, 90, 89, 92, 89, 90, 93, 88, 90, 91, 92, 93, 92, 32.20409 + 90, 89, 88, 86, 86, 88, 94, 98, 100, 99, 105, 108, 111, 112, 111, 111, 32.20410 + 112, 113, 120, 120, 120, 121, 124, 125, 126, 127, 136, 130, 132, 139, 143, 139, 32.20411 + 133, 129, 120, 110, 105, 106, 106, 102, 99, 98, 99, 102, 106, 110, 112, 113, 32.20412 + 113, 114, 113, 108, 105, 105, 102, 95, 94, 95, 93, 96, 99, 98, 100, 105, 32.20413 + 104, 99, 87, 65, 79, 91, 95, 99, 94, 102, 101, 97, 95, 94, 93, 90, 32.20414 + 84, 81, 75, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20415 + 130, 117, 16, 0, 9, 9, 51, 94, 115, 118, 119, 121, 121, 126, 119, 129, 32.20416 + 116, 119, 134, 120, 122, 107, 96, 89, 90, 92, 89, 91, 94, 88, 90, 91, 32.20417 + 94, 93, 92, 89, 88, 86, 84, 83, 86, 93, 99, 102, 103, 106, 108, 112, 32.20418 + 113, 113, 110, 113, 114, 119, 120, 119, 119, 119, 123, 125, 126, 127, 122, 126, 32.20419 + 136, 143, 139, 135, 131, 122, 113, 108, 110, 111, 107, 104, 104, 103, 103, 106, 32.20420 + 109, 112, 113, 113, 114, 117, 112, 106, 103, 99, 93, 92, 93, 93, 97, 99, 32.20421 + 97, 100, 106, 105, 99, 92, 67, 79, 90, 94, 98, 94, 104, 103, 98, 93, 32.20422 + 91, 91, 88, 84, 81, 70, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20423 + 255, 255, 255, 211, 101, 3, 6, 9, 13, 32, 56, 102, 114, 128, 120, 125, 32.20424 + 128, 130, 131, 129, 129, 132, 130, 123, 107, 92, 86, 89, 91, 87, 90, 96, 32.20425 + 91, 91, 90, 92, 93, 93, 89, 87, 86, 86, 85, 87, 89, 96, 102, 106, 32.20426 + 106, 109, 112, 111, 109, 109, 114, 118, 111, 116, 117, 115, 116, 122, 124, 122, 32.20427 + 134, 126, 125, 132, 148, 156, 153, 144, 132, 116, 115, 120, 116, 114, 112, 102, 32.20428 + 102, 100, 104, 113, 121, 122, 116, 110, 113, 111, 107, 101, 94, 91, 92, 93, 32.20429 + 92, 93, 94, 94, 99, 105, 104, 99, 90, 70, 64, 84, 101, 98, 96, 101, 32.20430 + 106, 91, 89, 95, 88, 84, 81, 76, 73, 22, 255, 255, 255, 255, 255, 255, 32.20431 + 255, 255, 255, 255, 255, 255, 255, 88, 20, 0, 9, 11, 25, 37, 72, 77, 32.20432 + 94, 93, 105, 108, 110, 112, 112, 117, 125, 126, 120, 105, 93, 89, 89, 92, 32.20433 + 90, 91, 92, 89, 89, 88, 91, 92, 92, 90, 86, 88, 87, 86, 87, 88, 32.20434 + 93, 99, 102, 105, 108, 111, 111, 108, 107, 110, 113, 114, 117, 120, 118, 118, 32.20435 + 122, 127, 124, 134, 127, 123, 125, 137, 149, 156, 156, 139, 121, 117, 119, 113, 32.20436 + 113, 114, 107, 107, 104, 100, 102, 107, 112, 113, 113, 110, 108, 104, 97, 91, 32.20437 + 87, 89, 90, 89, 94, 95, 95, 99, 105, 108, 102, 92, 72, 67, 85, 103, 32.20438 + 102, 100, 102, 110, 96, 93, 97, 89, 83, 80, 74, 73, 20, 255, 255, 255, 32.20439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 28, 0, 0, 13, 26, 32.20440 + 34, 58, 57, 74, 77, 93, 80, 82, 82, 80, 83, 90, 91, 85, 95, 93, 32.20441 + 93, 89, 91, 93, 93, 88, 88, 88, 88, 90, 91, 91, 90, 86, 89, 88, 32.20442 + 86, 87, 89, 93, 95, 98, 105, 109, 111, 111, 108, 106, 108, 110, 115, 118, 32.20443 + 121, 118, 119, 123, 127, 125, 129, 126, 124, 124, 131, 139, 148, 152, 134, 119, 32.20444 + 116, 119, 114, 113, 110, 103, 101, 100, 99, 99, 99, 103, 107, 109, 105, 105, 32.20445 + 101, 95, 90, 86, 89, 90, 88, 95, 99, 98, 100, 106, 110, 109, 97, 78, 32.20446 + 71, 87, 104, 106, 104, 105, 112, 98, 96, 98, 91, 86, 81, 73, 65, 11, 32.20447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 6, 32.20448 + 0, 18, 38, 52, 74, 69, 81, 79, 92, 106, 108, 111, 110, 112, 116, 114, 32.20449 + 105, 79, 88, 96, 89, 87, 91, 94, 89, 89, 89, 88, 91, 92, 92, 91, 32.20450 + 87, 87, 86, 86, 86, 88, 92, 94, 96, 102, 107, 110, 112, 109, 108, 109, 32.20451 + 111, 113, 117, 119, 116, 117, 120, 125, 122, 122, 122, 126, 129, 133, 134, 132, 32.20452 + 128, 123, 111, 112, 118, 112, 108, 103, 94, 93, 95, 101, 104, 103, 99, 97, 32.20453 + 98, 99, 98, 97, 91, 89, 87, 89, 92, 90, 97, 103, 101, 101, 106, 112, 32.20454 + 111, 103, 83, 72, 81, 97, 106, 108, 107, 107, 96, 95, 97, 90, 85, 79, 32.20455 + 71, 63, 9, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20456 + 255, 13, 6, 0, 15, 41, 58, 80, 73, 85, 82, 92, 92, 99, 108, 113, 32.20457 + 119, 123, 120, 110, 65, 80, 93, 87, 82, 86, 93, 94, 90, 90, 90, 93, 32.20458 + 94, 94, 93, 90, 87, 87, 87, 88, 89, 93, 96, 99, 101, 106, 110, 112, 32.20459 + 112, 111, 113, 115, 114, 117, 119, 116, 116, 120, 124, 121, 122, 121, 124, 129, 32.20460 + 136, 134, 125, 115, 121, 108, 107, 109, 101, 97, 96, 88, 96, 100, 106, 105, 32.20461 + 101, 95, 89, 86, 90, 90, 91, 86, 87, 87, 90, 94, 95, 101, 107, 104, 32.20462 + 103, 107, 113, 111, 107, 90, 74, 74, 86, 99, 106, 107, 102, 94, 95, 96, 32.20463 + 91, 89, 82, 71, 71, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20464 + 255, 255, 255, 255, 13, 1, 13, 18, 40, 50, 70, 64, 82, 83, 95, 99, 32.20465 + 105, 116, 122, 126, 128, 122, 111, 65, 73, 85, 83, 82, 84, 92, 95, 90, 32.20466 + 91, 90, 94, 95, 96, 95, 91, 87, 87, 87, 89, 90, 93, 96, 98, 102, 32.20467 + 107, 112, 112, 111, 111, 113, 116, 115, 118, 120, 117, 118, 121, 125, 122, 127, 32.20468 + 123, 121, 124, 131, 133, 128, 122, 125, 107, 100, 97, 89, 88, 95, 94, 111, 32.20469 + 107, 103, 99, 95, 89, 85, 85, 87, 87, 86, 85, 85, 87, 90, 95, 100, 32.20470 + 104, 107, 107, 107, 111, 113, 112, 111, 96, 78, 70, 76, 91, 101, 104, 101, 32.20471 + 95, 97, 98, 93, 91, 84, 72, 51, 25, 255, 255, 255, 255, 255, 255, 255, 32.20472 + 255, 255, 255, 255, 255, 255, 193, 12, 4, 15, 26, 43, 49, 61, 58, 80, 32.20473 + 87, 96, 101, 109, 116, 119, 122, 123, 114, 105, 76, 70, 73, 79, 85, 86, 32.20474 + 90, 92, 89, 90, 89, 93, 95, 95, 94, 91, 89, 89, 90, 91, 92, 95, 32.20475 + 95, 96, 107, 108, 112, 111, 107, 107, 110, 113, 114, 117, 119, 116, 116, 119, 32.20476 + 123, 120, 127, 124, 123, 121, 124, 124, 123, 122, 112, 99, 97, 99, 94, 95, 32.20477 + 104, 103, 111, 105, 97, 91, 91, 92, 91, 89, 92, 93, 92, 90, 91, 92, 32.20478 + 95, 100, 102, 105, 106, 107, 111, 117, 117, 114, 109, 102, 87, 72, 72, 85, 32.20479 + 96, 98, 100, 96, 98, 97, 91, 92, 83, 69, 21, 101, 255, 255, 255, 255, 32.20480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 8, 13, 9, 31, 45, 49, 32.20481 + 62, 57, 81, 85, 93, 97, 104, 112, 117, 123, 126, 121, 113, 88, 70, 65, 32.20482 + 76, 89, 90, 88, 88, 88, 88, 88, 92, 94, 94, 93, 90, 92, 92, 92, 32.20483 + 92, 93, 94, 93, 93, 110, 112, 112, 110, 106, 104, 107, 110, 112, 115, 116, 32.20484 + 113, 113, 116, 120, 117, 122, 124, 127, 124, 119, 114, 112, 112, 94, 86, 95, 32.20485 + 106, 106, 109, 115, 110, 100, 94, 90, 92, 97, 98, 97, 95, 101, 101, 102, 32.20486 + 99, 97, 97, 102, 105, 102, 103, 105, 106, 113, 120, 122, 115, 109, 105, 93, 32.20487 + 77, 72, 82, 92, 94, 98, 95, 97, 96, 90, 88, 78, 64, 10, 255, 255, 32.20488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 13, 15, 0, 32.20489 + 23, 44, 56, 54, 76, 62, 87, 90, 98, 104, 110, 116, 123, 127, 122, 113, 32.20490 + 91, 62, 61, 80, 88, 84, 89, 92, 84, 87, 90, 93, 93, 93, 94, 94, 32.20491 + 90, 93, 94, 93, 92, 92, 94, 97, 111, 111, 112, 111, 111, 111, 110, 110, 32.20492 + 112, 110, 110, 112, 116, 118, 121, 118, 125, 121, 121, 120, 114, 101, 92, 90, 32.20493 + 123, 121, 119, 119, 119, 117, 115, 113, 125, 103, 88, 91, 102, 107, 107, 107, 32.20494 + 109, 110, 107, 104, 103, 103, 105, 107, 111, 103, 108, 111, 112, 121, 127, 119, 32.20495 + 117, 99, 94, 87, 71, 67, 81, 88, 94, 83, 90, 94, 89, 75, 86, 23, 32.20496 + 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 32.20497 + 41, 10, 4, 24, 53, 42, 57, 50, 67, 76, 88, 100, 104, 109, 112, 117, 32.20498 + 122, 121, 116, 89, 60, 59, 77, 85, 82, 87, 89, 84, 87, 88, 91, 90, 32.20499 + 90, 91, 91, 93, 94, 96, 96, 94, 95, 97, 99, 110, 112, 114, 114, 110, 32.20500 + 109, 109, 111, 112, 112, 113, 113, 114, 116, 122, 124, 128, 119, 112, 107, 106, 32.20501 + 104, 108, 114, 119, 118, 119, 119, 122, 125, 125, 122, 116, 119, 108, 89, 92, 32.20502 + 110, 114, 102, 107, 111, 113, 107, 102, 104, 115, 126, 112, 101, 110, 124, 122, 32.20503 + 120, 126, 130, 122, 106, 103, 86, 78, 73, 86, 80, 91, 85, 92, 90, 86, 32.20504 + 85, 78, 29, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20505 + 255, 255, 119, 61, 4, 2, 33, 67, 53, 59, 46, 67, 79, 91, 100, 105, 32.20506 + 108, 108, 108, 114, 118, 117, 89, 61, 59, 76, 83, 82, 87, 88, 86, 87, 32.20507 + 88, 91, 90, 90, 90, 90, 93, 97, 97, 98, 98, 99, 100, 102, 107, 112, 32.20508 + 115, 115, 111, 110, 112, 116, 113, 114, 115, 114, 114, 115, 122, 125, 119, 109, 32.20509 + 102, 99, 103, 109, 120, 131, 125, 124, 123, 124, 126, 125, 124, 122, 120, 127, 32.20510 + 121, 103, 98, 109, 113, 106, 118, 123, 125, 122, 113, 107, 107, 109, 108, 102, 32.20511 + 107, 114, 119, 129, 130, 114, 126, 111, 111, 85, 84, 73, 87, 72, 91, 91, 32.20512 + 93, 87, 80, 89, 56, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20513 + 255, 255, 255, 255, 255, 126, 51, 8, 0, 37, 69, 76, 54, 61, 54, 88, 32.20514 + 94, 98, 106, 109, 108, 107, 112, 116, 117, 91, 65, 62, 76, 84, 84, 90, 32.20515 + 89, 87, 88, 88, 92, 94, 94, 94, 93, 93, 97, 98, 99, 99, 100, 100, 32.20516 + 102, 101, 109, 114, 114, 111, 110, 114, 120, 115, 114, 115, 115, 116, 115, 117, 32.20517 + 115, 101, 98, 100, 104, 111, 114, 120, 128, 131, 129, 127, 125, 126, 126, 125, 32.20518 + 121, 125, 119, 118, 119, 110, 97, 95, 104, 104, 102, 102, 106, 113, 116, 115, 32.20519 + 111, 114, 124, 127, 122, 149, 197, 196, 151, 128, 110, 116, 90, 86, 64, 78, 32.20520 + 73, 94, 91, 90, 90, 80, 82, 27, 110, 255, 255, 255, 255, 255, 255, 255, 32.20521 + 255, 255, 255, 255, 255, 255, 255, 255, 129, 29, 28, 10, 26, 63, 81, 61, 32.20522 + 62, 47, 79, 89, 96, 105, 111, 111, 110, 111, 113, 112, 91, 66, 63, 74, 32.20523 + 81, 84, 90, 88, 84, 84, 85, 91, 95, 97, 97, 96, 92, 97, 100, 101, 32.20524 + 99, 99, 100, 101, 103, 110, 116, 116, 109, 108, 113, 117, 116, 113, 113, 115, 32.20525 + 117, 114, 109, 101, 97, 97, 105, 113, 119, 118, 118, 122, 124, 124, 124, 126, 32.20526 + 130, 130, 131, 130, 122, 112, 113, 121, 116, 97, 86, 89, 100, 95, 89, 84, 32.20527 + 84, 88, 97, 101, 93, 106, 108, 96, 113, 158, 161, 122, 128, 110, 115, 102, 32.20528 + 84, 56, 72, 82, 88, 83, 83, 95, 84, 63, 7, 255, 255, 255, 255, 255, 32.20529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 20, 49, 35, 22, 32.20530 + 67, 71, 85, 59, 58, 65, 85, 95, 104, 110, 110, 112, 112, 111, 107, 89, 32.20531 + 65, 61, 70, 77, 82, 88, 84, 80, 80, 81, 88, 93, 97, 97, 95, 92, 32.20532 + 97, 100, 101, 98, 97, 97, 98, 108, 112, 116, 114, 107, 104, 106, 108, 116, 32.20533 + 112, 113, 114, 114, 109, 104, 96, 107, 106, 111, 117, 122, 120, 121, 126, 130, 32.20534 + 129, 127, 128, 130, 131, 128, 127, 117, 123, 123, 118, 116, 113, 99, 83, 95, 32.20535 + 106, 113, 102, 81, 66, 69, 75, 99, 100, 108, 107, 99, 106, 117, 117, 123, 32.20536 + 115, 113, 106, 74, 60, 72, 90, 80, 77, 79, 91, 78, 39, 7, 255, 255, 32.20537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32.20538 + 52, 53, 33, 66, 67, 92, 74, 67, 65, 80, 96, 102, 106, 106, 111, 112, 32.20539 + 108, 104, 89, 66, 61, 69, 76, 82, 88, 84, 82, 81, 81, 87, 94, 97, 32.20540 + 96, 94, 94, 98, 101, 102, 101, 99, 96, 96, 108, 110, 111, 111, 107, 105, 32.20541 + 105, 105, 112, 112, 115, 113, 107, 102, 104, 104, 112, 110, 113, 118, 123, 123, 32.20542 + 125, 131, 139, 137, 134, 133, 131, 129, 126, 124, 123, 128, 129, 125, 120, 118, 32.20543 + 110, 97, 76, 89, 106, 108, 97, 85, 82, 83, 74, 70, 86, 102, 99, 99, 32.20544 + 117, 131, 113, 120, 104, 97, 53, 71, 76, 86, 76, 83, 83, 79, 62, 14, 32.20545 + 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20546 + 255, 255, 35, 40, 57, 44, 56, 71, 79, 94, 58, 68, 70, 98, 101, 102, 32.20547 + 104, 108, 111, 109, 102, 91, 68, 63, 71, 75, 84, 90, 85, 86, 85, 86, 32.20548 + 90, 98, 100, 97, 94, 95, 100, 103, 103, 101, 99, 96, 96, 103, 104, 106, 32.20549 + 108, 107, 108, 109, 109, 108, 113, 118, 112, 101, 98, 106, 115, 108, 107, 113, 32.20550 + 120, 126, 124, 125, 130, 136, 136, 135, 134, 135, 134, 133, 131, 131, 117, 118, 32.20551 + 129, 123, 105, 102, 111, 101, 92, 84, 83, 89, 93, 91, 87, 80, 75, 83, 32.20552 + 91, 95, 104, 108, 100, 101, 121, 96, 85, 36, 81, 80, 79, 79, 96, 93, 32.20553 + 71, 48, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20554 + 255, 255, 255, 255, 255, 29, 40, 62, 52, 40, 63, 92, 85, 74, 76, 75, 32.20555 + 83, 89, 96, 102, 108, 110, 109, 106, 85, 67, 64, 73, 75, 82, 90, 89, 32.20556 + 88, 88, 91, 94, 99, 99, 98, 97, 99, 99, 100, 99, 96, 97, 100, 102, 32.20557 + 104, 106, 105, 104, 102, 103, 108, 113, 116, 112, 119, 108, 90, 103, 111, 94, 32.20558 + 102, 118, 116, 117, 121, 124, 137, 131, 139, 144, 138, 150, 133, 135, 120, 126, 32.20559 + 132, 124, 119, 125, 126, 121, 116, 115, 101, 104, 102, 92, 82, 80, 85, 91, 32.20560 + 101, 75, 57, 66, 88, 102, 103, 102, 110, 91, 67, 60, 70, 82, 88, 89, 32.20561 + 101, 90, 94, 66, 19, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20562 + 255, 255, 255, 255, 255, 255, 255, 255, 186, 35, 51, 59, 43, 55, 85, 91, 32.20563 + 80, 80, 87, 74, 81, 93, 104, 109, 110, 111, 110, 87, 67, 63, 68, 73, 32.20564 + 78, 91, 91, 89, 90, 90, 95, 98, 101, 99, 98, 100, 101, 101, 100, 97, 32.20565 + 97, 99, 102, 103, 105, 105, 104, 102, 102, 106, 111, 113, 111, 117, 106, 93, 32.20566 + 103, 112, 95, 96, 106, 104, 116, 123, 121, 127, 119, 136, 135, 140, 133, 149, 32.20567 + 130, 144, 133, 118, 115, 114, 122, 122, 116, 110, 108, 102, 104, 101, 91, 79, 32.20568 + 74, 76, 79, 80, 71, 70, 83, 97, 97, 90, 85, 66, 69, 68, 65, 70, 32.20569 + 82, 85, 82, 116, 105, 78, 41, 19, 255, 255, 255, 255, 255, 255, 255, 255, 32.20570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 49, 65, 51, 32.20571 + 49, 70, 89, 81, 77, 91, 71, 74, 86, 102, 108, 105, 106, 111, 92, 68, 32.20572 + 61, 67, 72, 77, 90, 92, 90, 90, 90, 93, 96, 100, 99, 99, 102, 103, 32.20573 + 103, 101, 98, 97, 99, 101, 101, 104, 105, 104, 101, 101, 104, 107, 108, 110, 32.20574 + 114, 103, 94, 103, 110, 97, 110, 103, 91, 106, 117, 116, 132, 137, 122, 146, 32.20575 + 142, 150, 138, 124, 138, 133, 138, 133, 132, 132, 125, 116, 109, 107, 101, 99, 32.20576 + 95, 89, 81, 74, 72, 72, 63, 64, 70, 77, 77, 69, 60, 57, 60, 64, 32.20577 + 64, 60, 70, 85, 93, 90, 118, 97, 46, 12, 96, 255, 255, 255, 255, 255, 32.20578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 32.20579 + 47, 62, 69, 61, 63, 83, 85, 79, 90, 82, 75, 80, 96, 106, 103, 103, 32.20580 + 108, 94, 68, 61, 69, 74, 77, 88, 90, 91, 90, 89, 92, 95, 99, 99, 32.20581 + 99, 103, 104, 104, 103, 99, 98, 99, 100, 99, 103, 104, 104, 101, 99, 101, 32.20582 + 103, 104, 110, 111, 99, 95, 104, 108, 99, 100, 86, 71, 86, 92, 81, 99, 32.20583 + 113, 140, 131, 116, 109, 148, 128, 160, 129, 135, 135, 134, 131, 124, 119, 116, 32.20584 + 117, 102, 96, 93, 93, 90, 85, 81, 81, 80, 80, 79, 75, 69, 66, 68, 32.20585 + 72, 76, 66, 61, 69, 82, 94, 100, 99, 112, 72, 21, 89, 255, 255, 255, 32.20586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20587 + 255, 255, 28, 32, 51, 81, 79, 63, 75, 89, 87, 89, 94, 79, 73, 85, 32.20588 + 100, 105, 106, 108, 95, 68, 62, 73, 79, 78, 85, 86, 91, 90, 88, 91, 32.20589 + 94, 99, 98, 99, 102, 104, 105, 104, 99, 98, 98, 99, 100, 103, 104, 103, 32.20590 + 100, 98, 99, 101, 101, 111, 110, 96, 97, 105, 106, 101, 86, 80, 78, 100, 32.20591 + 96, 68, 76, 89, 64, 83, 79, 111, 111, 114, 121, 117, 138, 141, 144, 140, 32.20592 + 133, 126, 119, 113, 106, 101, 99, 103, 103, 98, 95, 95, 94, 94, 91, 84, 32.20593 + 78, 77, 80, 81, 68, 60, 69, 94, 104, 96, 95, 105, 96, 39, 13, 255, 32.20594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20595 + 255, 255, 255, 255, 255, 182, 21, 35, 73, 82, 63, 63, 82, 90, 87, 97, 32.20596 + 83, 71, 74, 90, 105, 111, 110, 98, 68, 62, 75, 81, 78, 83, 84, 89, 32.20597 + 89, 88, 92, 95, 99, 98, 97, 100, 102, 104, 103, 99, 98, 98, 99, 102, 32.20598 + 104, 104, 102, 98, 97, 98, 101, 99, 114, 109, 94, 100, 106, 104, 103, 98, 32.20599 + 94, 93, 115, 113, 92, 111, 129, 86, 78, 85, 82, 80, 75, 93, 118, 111, 32.20600 + 118, 128, 131, 132, 131, 124, 117, 113, 106, 105, 109, 109, 101, 99, 102, 100, 32.20601 + 104, 103, 93, 81, 72, 66, 60, 65, 67, 84, 102, 102, 89, 98, 119, 57, 32.20602 + 6, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 37, 59, 75, 68, 57, 70, 32.20604 + 86, 85, 92, 88, 76, 68, 77, 97, 107, 105, 102, 70, 61, 74, 80, 76, 32.20605 + 83, 85, 87, 88, 89, 93, 96, 99, 97, 96, 97, 100, 102, 103, 99, 98, 32.20606 + 98, 99, 104, 106, 104, 101, 97, 96, 99, 102, 99, 117, 110, 93, 102, 106, 32.20607 + 102, 105, 106, 96, 84, 100, 105, 101, 133, 156, 127, 64, 150, 105, 205, 111, 32.20608 + 100, 54, 73, 77, 82, 87, 101, 114, 121, 117, 113, 106, 104, 109, 107, 98, 32.20609 + 97, 104, 106, 111, 105, 87, 70, 64, 65, 63, 84, 88, 96, 96, 94, 92, 32.20610 + 94, 99, 20, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 57, 59, 77, 32.20612 + 81, 64, 68, 87, 90, 90, 94, 85, 68, 69, 89, 101, 99, 106, 71, 60, 32.20613 + 72, 78, 75, 83, 87, 86, 88, 89, 94, 97, 99, 96, 95, 95, 98, 101, 32.20614 + 102, 99, 98, 98, 99, 106, 107, 104, 101, 96, 96, 99, 103, 100, 119, 110, 32.20615 + 93, 103, 107, 101, 105, 116, 105, 90, 103, 108, 103, 127, 142, 121, 90, 119, 32.20616 + 132, 118, 123, 88, 137, 137, 124, 102, 80, 77, 84, 89, 86, 109, 100, 100, 32.20617 + 106, 103, 94, 96, 105, 84, 85, 74, 50, 35, 45, 68, 81, 92, 99, 102, 32.20618 + 97, 102, 104, 78, 40, 9, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 32.20620 + 61, 57, 65, 81, 78, 61, 66, 89, 99, 103, 95, 75, 72, 88, 102, 104, 32.20621 + 104, 89, 68, 63, 78, 81, 82, 89, 75, 86, 93, 96, 98, 100, 94, 86, 32.20622 + 103, 104, 105, 103, 99, 96, 96, 96, 106, 107, 105, 103, 101, 101, 102, 104, 32.20623 + 109, 112, 111, 101, 95, 99, 110, 116, 116, 111, 103, 94, 94, 105, 125, 138, 32.20624 + 110, 105, 116, 126, 143, 135, 115, 134, 140, 150, 101, 114, 128, 73, 66, 79, 32.20625 + 76, 84, 87, 82, 93, 87, 64, 72, 59, 60, 35, 49, 45, 73, 88, 85, 32.20626 + 85, 101, 97, 96, 107, 92, 43, 15, 100, 255, 255, 255, 255, 255, 255, 255, 32.20627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20628 + 255, 255, 59, 63, 58, 60, 77, 79, 57, 57, 86, 94, 101, 99, 83, 74, 32.20629 + 81, 96, 104, 103, 94, 75, 65, 78, 83, 85, 88, 77, 86, 92, 95, 96, 32.20630 + 99, 94, 87, 98, 99, 101, 101, 97, 96, 96, 97, 103, 104, 102, 101, 100, 32.20631 + 100, 102, 104, 108, 112, 112, 102, 97, 100, 110, 115, 117, 113, 106, 96, 92, 32.20632 + 95, 105, 113, 82, 74, 119, 150, 139, 126, 126, 148, 138, 177, 142, 127, 137, 32.20633 + 128, 137, 120, 77, 64, 55, 68, 75, 68, 86, 119, 113, 41, 41, 68, 60, 32.20634 + 73, 75, 86, 96, 90, 97, 105, 85, 82, 4, 20, 255, 255, 255, 255, 255, 32.20635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20636 + 255, 255, 255, 255, 255, 255, 66, 63, 57, 69, 79, 58, 51, 80, 86, 95, 32.20637 + 100, 91, 76, 74, 86, 100, 103, 102, 84, 67, 77, 85, 88, 88, 81, 87, 32.20638 + 91, 93, 94, 96, 93, 89, 92, 95, 97, 98, 96, 96, 97, 98, 100, 101, 32.20639 + 100, 100, 99, 99, 102, 104, 108, 111, 112, 103, 99, 102, 110, 113, 116, 115, 32.20640 + 111, 102, 94, 90, 91, 92, 92, 50, 95, 144, 137, 134, 134, 134, 134, 145, 32.20641 + 141, 168, 167, 136, 143, 140, 133, 183, 180, 147, 110, 109, 129, 98, 108, 11, 32.20642 + 52, 76, 66, 72, 75, 90, 102, 99, 101, 86, 104, 5, 29, 255, 255, 255, 32.20643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 65, 73, 62, 61, 76, 68, 58, 32.20645 + 75, 84, 90, 98, 97, 84, 75, 81, 94, 103, 108, 92, 68, 73, 83, 90, 32.20646 + 90, 86, 88, 90, 92, 92, 93, 91, 90, 91, 94, 96, 97, 95, 95, 96, 32.20647 + 97, 98, 99, 99, 99, 99, 100, 103, 105, 108, 111, 112, 104, 101, 104, 110, 32.20648 + 112, 116, 115, 115, 109, 103, 96, 93, 92, 88, 73, 113, 131, 103, 96, 112, 32.20649 + 136, 122, 142, 155, 169, 163, 158, 162, 126, 117, 147, 141, 146, 121, 109, 139, 32.20650 + 104, 51, 16, 68, 67, 62, 65, 84, 96, 97, 120, 83, 88, 57, 5, 104, 32.20651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 77, 68, 53, 32.20653 + 65, 75, 70, 66, 83, 86, 93, 97, 92, 83, 82, 87, 102, 111, 98, 72, 32.20654 + 72, 80, 89, 93, 89, 89, 89, 92, 91, 91, 89, 90, 94, 96, 97, 97, 32.20655 + 94, 93, 94, 95, 98, 100, 99, 99, 99, 101, 104, 106, 109, 111, 111, 104, 32.20656 + 102, 105, 110, 112, 117, 117, 118, 113, 110, 104, 100, 98, 113, 93, 83, 80, 32.20657 + 99, 109, 90, 91, 130, 120, 128, 149, 145, 149, 160, 140, 146, 154, 132, 144, 32.20658 + 134, 118, 115, 48, 39, 61, 77, 58, 68, 59, 86, 100, 106, 98, 103, 52, 32.20659 + 1, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 32.20661 + 72, 70, 53, 52, 72, 76, 59, 81, 84, 89, 93, 95, 93, 88, 84, 98, 32.20662 + 110, 103, 83, 78, 78, 86, 95, 91, 89, 88, 92, 91, 88, 86, 89, 94, 32.20663 + 96, 97, 97, 93, 91, 91, 92, 98, 100, 99, 99, 99, 100, 103, 106, 111, 32.20664 + 112, 110, 103, 102, 106, 111, 112, 120, 119, 119, 116, 113, 108, 103, 102, 83, 32.20665 + 99, 102, 82, 85, 87, 74, 92, 115, 73, 85, 134, 139, 122, 127, 137, 118, 32.20666 + 156, 149, 131, 111, 103, 88, 23, 62, 83, 61, 50, 73, 64, 86, 111, 113, 32.20667 + 86, 90, 19, 2, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20669 + 255, 255, 255, 62, 68, 63, 47, 62, 75, 57, 75, 83, 89, 89, 94, 99, 32.20670 + 94, 85, 92, 106, 109, 98, 91, 79, 82, 95, 92, 89, 88, 93, 91, 87, 32.20671 + 84, 87, 92, 94, 95, 95, 91, 89, 89, 90, 97, 99, 98, 98, 97, 98, 32.20672 + 101, 103, 113, 113, 109, 101, 101, 106, 112, 113, 120, 120, 122, 120, 118, 112, 32.20673 + 105, 102, 102, 90, 96, 93, 98, 102, 84, 75, 80, 88, 102, 103, 108, 124, 32.20674 + 115, 89, 133, 125, 112, 104, 78, 40, 41, 68, 68, 69, 57, 50, 59, 82, 32.20675 + 88, 112, 103, 85, 12, 31, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20677 + 255, 255, 255, 255, 255, 255, 56, 69, 76, 49, 54, 74, 60, 71, 84, 91, 32.20678 + 88, 92, 101, 99, 87, 86, 104, 111, 110, 100, 80, 76, 92, 89, 85, 87, 32.20679 + 92, 90, 84, 83, 86, 89, 91, 92, 92, 89, 88, 88, 88, 97, 96, 97, 32.20680 + 96, 96, 94, 97, 99, 115, 113, 107, 100, 98, 104, 112, 113, 117, 118, 121, 32.20681 + 124, 123, 117, 111, 106, 113, 89, 115, 123, 94, 92, 96, 90, 93, 84, 86, 32.20682 + 85, 84, 80, 73, 74, 76, 80, 76, 64, 76, 73, 54, 63, 60, 56, 76, 32.20683 + 57, 36, 94, 87, 100, 106, 25, 1, 0, 98, 255, 255, 255, 255, 255, 255, 32.20684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 67, 73, 49, 41, 79, 75, 32.20686 + 69, 77, 84, 87, 89, 95, 99, 100, 86, 95, 105, 108, 100, 88, 80, 75, 32.20687 + 87, 87, 86, 85, 85, 83, 80, 79, 88, 89, 88, 89, 88, 86, 83, 81, 32.20688 + 96, 94, 94, 93, 94, 95, 98, 100, 108, 108, 104, 94, 92, 98, 104, 106, 32.20689 + 107, 111, 117, 121, 123, 123, 116, 112, 102, 104, 106, 110, 113, 109, 103, 97, 32.20690 + 91, 92, 93, 95, 95, 89, 85, 80, 92, 90, 89, 84, 74, 63, 60, 63, 32.20691 + 55, 73, 55, 35, 69, 68, 90, 99, 88, 17, 0, 15, 255, 255, 255, 255, 32.20692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 72, 54, 32.20694 + 45, 66, 74, 68, 76, 82, 85, 88, 96, 100, 100, 89, 91, 97, 103, 104, 32.20695 + 97, 86, 75, 76, 79, 83, 83, 80, 77, 79, 80, 82, 87, 89, 92, 92, 32.20696 + 90, 88, 87, 92, 93, 93, 93, 91, 93, 96, 101, 108, 110, 106, 98, 96, 32.20697 + 101, 105, 107, 105, 107, 112, 116, 121, 123, 123, 122, 113, 108, 105, 102, 107, 32.20698 + 107, 109, 105, 95, 94, 97, 97, 98, 92, 88, 83, 92, 92, 93, 89, 80, 32.20699 + 69, 63, 64, 66, 52, 45, 49, 74, 73, 87, 70, 27, 7, 7, 255, 255, 32.20700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20702 + 194, 69, 60, 51, 47, 72, 67, 75, 81, 84, 89, 98, 103, 104, 96, 90, 32.20703 + 89, 98, 109, 109, 97, 82, 72, 77, 84, 84, 80, 77, 80, 83, 76, 82, 32.20704 + 90, 94, 91, 88, 86, 86, 89, 93, 94, 93, 89, 90, 96, 102, 108, 111, 32.20705 + 109, 102, 99, 100, 103, 105, 107, 108, 108, 112, 119, 123, 126, 127, 122, 116, 32.20706 + 111, 106, 108, 106, 106, 102, 93, 91, 94, 93, 94, 88, 84, 80, 90, 92, 32.20707 + 94, 94, 86, 74, 68, 68, 68, 45, 48, 57, 78, 84, 88, 27, 10, 27, 32.20708 + 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20710 + 255, 255, 255, 255, 66, 67, 55, 35, 69, 68, 76, 81, 83, 87, 96, 102, 32.20711 + 103, 103, 93, 87, 93, 107, 112, 106, 95, 80, 82, 86, 87, 86, 83, 83, 32.20712 + 81, 72, 79, 87, 90, 86, 82, 79, 79, 86, 91, 94, 93, 87, 88, 95, 32.20713 + 103, 104, 108, 107, 102, 97, 99, 99, 98, 108, 106, 108, 110, 115, 119, 122, 32.20714 + 124, 124, 122, 120, 119, 117, 110, 100, 92, 87, 87, 87, 87, 86, 82, 76, 32.20715 + 73, 87, 86, 87, 88, 79, 70, 64, 64, 57, 62, 64, 57, 78, 82, 70, 32.20716 + 0, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20718 + 255, 255, 255, 255, 255, 255, 255, 192, 70, 60, 35, 63, 69, 77, 81, 81, 32.20719 + 86, 93, 99, 100, 108, 99, 91, 92, 99, 106, 110, 107, 93, 87, 85, 86, 32.20720 + 91, 90, 84, 75, 69, 75, 81, 84, 83, 80, 76, 76, 84, 90, 92, 92, 32.20721 + 88, 89, 97, 102, 101, 105, 106, 102, 97, 98, 98, 96, 103, 103, 104, 108, 32.20722 + 114, 117, 116, 117, 121, 123, 124, 126, 124, 116, 104, 95, 89, 88, 87, 86, 32.20723 + 85, 81, 75, 71, 81, 78, 75, 74, 68, 60, 57, 57, 56, 76, 73, 64, 32.20724 + 83, 53, 33, 5, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 60, 43, 51, 68, 32.20727 + 76, 82, 82, 86, 92, 97, 97, 107, 102, 97, 93, 94, 100, 109, 115, 102, 32.20728 + 92, 84, 85, 92, 92, 84, 73, 70, 72, 75, 79, 83, 85, 84, 83, 83, 32.20729 + 88, 89, 89, 88, 90, 96, 102, 101, 106, 107, 104, 100, 101, 102, 99, 96, 32.20730 + 98, 102, 108, 114, 117, 116, 117, 121, 118, 116, 116, 117, 116, 111, 106, 93, 32.20731 + 91, 90, 88, 86, 82, 77, 72, 83, 78, 75, 74, 70, 63, 61, 64, 66, 32.20732 + 74, 73, 79, 83, 11, 0, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 32.20735 + 56, 37, 65, 74, 82, 83, 87, 94, 99, 96, 102, 101, 99, 96, 94, 98, 32.20736 + 108, 115, 108, 97, 90, 88, 93, 93, 88, 79, 74, 72, 70, 74, 80, 86, 32.20737 + 87, 87, 84, 86, 88, 89, 90, 93, 98, 100, 101, 104, 105, 102, 101, 104, 32.20738 + 107, 105, 100, 99, 103, 106, 112, 116, 116, 115, 117, 115, 110, 109, 111, 112, 32.20739 + 110, 108, 98, 96, 94, 92, 90, 86, 80, 76, 83, 80, 78, 80, 79, 74, 32.20740 + 71, 71, 70, 70, 79, 85, 66, 0, 0, 99, 255, 255, 255, 255, 255, 255, 32.20741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20743 + 255, 255, 255, 66, 27, 60, 70, 79, 83, 89, 95, 100, 99, 98, 98, 99, 32.20744 + 98, 97, 100, 108, 112, 110, 103, 96, 93, 95, 95, 93, 88, 81, 74, 68, 32.20745 + 71, 77, 84, 85, 83, 85, 85, 86, 88, 91, 95, 98, 98, 99, 102, 104, 32.20746 + 101, 100, 105, 107, 107, 107, 105, 105, 106, 110, 112, 112, 111, 115, 113, 109, 32.20747 + 109, 109, 107, 102, 98, 99, 97, 95, 93, 90, 86, 81, 77, 73, 71, 73, 32.20748 + 78, 79, 73, 71, 70, 65, 69, 90, 82, 42, 0, 97, 255, 255, 255, 255, 32.20749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20751 + 255, 255, 255, 255, 255, 255, 255, 44, 52, 69, 83, 85, 86, 92, 99, 101, 32.20752 + 98, 104, 102, 101, 108, 105, 102, 106, 108, 105, 103, 100, 98, 96, 95, 93, 32.20753 + 86, 81, 70, 59, 58, 69, 80, 85, 85, 79, 78, 84, 92, 95, 97, 97, 32.20754 + 97, 100, 103, 102, 100, 103, 109, 118, 114, 110, 106, 103, 104, 105, 106, 108, 32.20755 + 117, 107, 100, 103, 106, 104, 99, 95, 94, 92, 89, 87, 86, 83, 80, 77, 32.20756 + 71, 77, 84, 85, 79, 71, 65, 63, 66, 71, 89, 79, 0, 13, 255, 255, 32.20757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 50, 64, 80, 84, 86, 32.20760 + 91, 100, 100, 97, 103, 101, 100, 107, 106, 105, 110, 110, 107, 106, 104, 102, 32.20761 + 99, 97, 94, 90, 87, 78, 67, 63, 67, 70, 70, 86, 82, 79, 80, 83, 32.20762 + 86, 94, 102, 94, 97, 102, 104, 104, 107, 113, 116, 116, 113, 109, 106, 106, 32.20763 + 107, 106, 106, 115, 108, 103, 105, 106, 103, 98, 96, 89, 87, 85, 85, 84, 32.20764 + 83, 79, 77, 78, 82, 83, 82, 76, 68, 64, 63, 76, 72, 88, 36, 9, 32.20765 + 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 32.20768 + 77, 83, 87, 92, 100, 99, 98, 102, 100, 98, 106, 107, 107, 114, 110, 109, 32.20769 + 109, 108, 107, 103, 100, 96, 95, 93, 87, 76, 68, 64, 61, 55, 77, 77, 32.20770 + 81, 82, 79, 79, 90, 101, 94, 94, 99, 105, 110, 111, 114, 114, 118, 116, 32.20771 + 114, 111, 111, 111, 107, 105, 114, 108, 105, 106, 104, 99, 96, 96, 84, 82, 32.20772 + 81, 81, 82, 81, 78, 76, 85, 86, 83, 80, 72, 68, 64, 64, 76, 76, 32.20773 + 60, 0, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20776 + 255, 255, 255, 195, 83, 89, 93, 100, 100, 101, 105, 100, 98, 105, 106, 108, 32.20777 + 116, 110, 110, 111, 112, 110, 106, 101, 94, 97, 99, 95, 85, 76, 69, 62, 32.20778 + 53, 61, 65, 76, 82, 81, 79, 84, 91, 92, 93, 96, 103, 110, 114, 117, 32.20779 + 116, 120, 117, 116, 116, 116, 113, 108, 106, 114, 110, 108, 109, 106, 99, 97, 32.20780 + 98, 87, 85, 84, 84, 84, 83, 80, 78, 88, 86, 80, 76, 69, 66, 66, 32.20781 + 67, 69, 84, 14, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20784 + 255, 255, 255, 255, 255, 255, 255, 197, 91, 95, 101, 101, 105, 108, 102, 98, 32.20785 + 105, 106, 107, 115, 109, 109, 112, 112, 111, 107, 102, 95, 98, 98, 96, 89, 32.20786 + 83, 78, 72, 64, 58, 59, 65, 72, 77, 78, 81, 86, 92, 91, 94, 99, 32.20787 + 107, 113, 118, 119, 120, 120, 118, 118, 118, 115, 110, 108, 115, 111, 110, 111, 32.20788 + 108, 102, 98, 100, 94, 92, 90, 90, 89, 87, 84, 81, 86, 83, 77, 72, 32.20789 + 68, 66, 68, 69, 65, 78, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 32.20790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 101, 102, 106, 32.20793 + 109, 104, 100, 106, 106, 107, 114, 109, 109, 112, 112, 111, 107, 103, 96, 96, 32.20794 + 97, 97, 92, 89, 86, 82, 75, 69, 63, 59, 60, 64, 69, 79, 89, 88, 32.20795 + 89, 92, 97, 104, 112, 118, 121, 120, 120, 119, 119, 119, 119, 115, 111, 116, 32.20796 + 111, 109, 112, 111, 106, 101, 101, 98, 97, 95, 94, 93, 91, 88, 87, 86, 32.20797 + 83, 77, 72, 69, 68, 68, 67, 68, 47, 0, 255, 255, 255, 255, 255, 255, 32.20798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20801 + 255, 204, 104, 108, 104, 101, 108, 108, 109, 116, 111, 110, 112, 112, 111, 108, 32.20802 + 105, 98, 92, 95, 98, 95, 94, 91, 86, 79, 80, 74, 67, 61, 56, 58, 32.20803 + 72, 85, 81, 85, 91, 97, 101, 108, 116, 121, 120, 118, 117, 117, 119, 119, 32.20804 + 117, 116, 119, 112, 110, 114, 117, 112, 106, 103, 99, 98, 96, 96, 96, 95, 32.20805 + 92, 90, 88, 85, 80, 76, 72, 70, 65, 64, 61, 7, 86, 255, 255, 255, 32.20806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20809 + 255, 255, 255, 255, 255, 204, 109, 105, 104, 112, 112, 110, 118, 113, 112, 113, 32.20810 + 113, 112, 111, 106, 103, 93, 96, 99, 99, 96, 92, 86, 78, 82, 81, 78, 32.20811 + 69, 56, 51, 61, 76, 74, 82, 91, 98, 101, 106, 113, 119, 119, 117, 117, 32.20812 + 118, 120, 123, 121, 121, 120, 112, 109, 115, 120, 116, 109, 104, 97, 95, 95, 32.20813 + 96, 97, 97, 95, 92, 90, 86, 83, 81, 77, 73, 68, 64, 50, 0, 255, 32.20814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 112, 113, 113, 114, 114, 32.20818 + 112, 111, 112, 114, 113, 112, 109, 105, 102, 101, 99, 96, 94, 94, 89, 82, 32.20819 + 88, 86, 82, 76, 71, 64, 58, 55, 65, 74, 81, 82, 85, 95, 106, 110, 32.20820 + 108, 113, 116, 119, 121, 121, 120, 119, 127, 119, 115, 120, 124, 121, 112, 108, 32.20821 + 102, 100, 96, 95, 97, 97, 97, 94, 86, 83, 83, 81, 75, 69, 66, 67, 32.20822 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 113, 32.20826 + 113, 114, 114, 112, 111, 112, 114, 114, 113, 111, 106, 105, 104, 102, 97, 96, 32.20827 + 95, 90, 84, 86, 84, 81, 76, 71, 66, 62, 59, 48, 61, 76, 82, 86, 32.20828 + 92, 97, 97, 106, 107, 110, 111, 115, 117, 119, 119, 123, 114, 110, 115, 119, 32.20829 + 113, 107, 103, 100, 96, 93, 93, 95, 98, 98, 96, 91, 81, 79, 81, 78, 32.20830 + 70, 71, 76, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20834 + 255, 255, 255, 255, 208, 112, 111, 112, 111, 113, 115, 114, 113, 108, 106, 105, 32.20835 + 103, 99, 97, 97, 92, 85, 85, 83, 81, 78, 74, 71, 68, 67, 44, 55, 32.20836 + 68, 72, 78, 84, 91, 91, 106, 105, 106, 107, 110, 113, 118, 120, 119, 112, 32.20837 + 109, 111, 114, 111, 105, 100, 93, 91, 89, 87, 91, 95, 97, 96, 89, 90, 32.20838 + 83, 72, 71, 72, 67, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20842 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 111, 110, 111, 112, 114, 114, 112, 32.20843 + 109, 105, 104, 103, 98, 97, 97, 92, 86, 86, 85, 82, 80, 77, 75, 73, 32.20844 + 73, 61, 62, 61, 56, 59, 70, 85, 91, 99, 99, 101, 102, 106, 109, 114, 32.20845 + 116, 117, 108, 106, 110, 112, 106, 101, 99, 90, 87, 87, 89, 92, 95, 95, 32.20846 + 92, 82, 95, 89, 67, 65, 74, 120, 255, 255, 255, 255, 255, 255, 255, 255, 32.20847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 109, 112, 32.20851 + 114, 115, 111, 109, 102, 103, 101, 97, 96, 96, 92, 85, 89, 88, 85, 82, 32.20852 + 79, 77, 76, 76, 76, 70, 60, 47, 46, 57, 73, 79, 86, 87, 92, 95, 32.20853 + 100, 103, 106, 106, 107, 100, 98, 101, 102, 98, 94, 91, 86, 87, 89, 90, 32.20854 + 92, 91, 88, 84, 86, 90, 86, 79, 76, 128, 255, 255, 255, 255, 255, 255, 32.20855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20859 + 255, 255, 206, 111, 112, 111, 108, 101, 102, 101, 97, 96, 96, 92, 86, 91, 32.20860 + 89, 86, 83, 80, 79, 78, 78, 77, 74, 66, 54, 51, 54, 60, 60, 75, 32.20861 + 78, 83, 88, 94, 98, 101, 101, 101, 95, 94, 97, 97, 92, 87, 87, 84, 32.20862 + 83, 85, 88, 89, 86, 81, 78, 97, 78, 75, 89, 81, 255, 255, 255, 255, 32.20863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20867 + 255, 255, 255, 255, 255, 255, 255, 207, 109, 106, 102, 103, 102, 98, 97, 98, 32.20868 + 94, 87, 90, 89, 85, 83, 81, 80, 81, 81, 77, 77, 76, 68, 64, 62, 32.20869 + 58, 52, 63, 64, 69, 73, 80, 86, 93, 95, 95, 90, 89, 92, 89, 84, 32.20870 + 81, 81, 79, 78, 77, 77, 78, 78, 75, 76, 91, 74, 70, 73, 119, 255, 32.20871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 103, 105, 103, 32.20876 + 100, 99, 99, 95, 89, 89, 87, 84, 82, 81, 82, 83, 84, 80, 82, 83, 32.20877 + 77, 74, 70, 64, 56, 48, 48, 50, 53, 62, 70, 79, 83, 85, 80, 80, 32.20878 + 83, 79, 74, 71, 72, 76, 73, 70, 68, 70, 72, 72, 75, 74, 83, 75, 32.20879 + 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20884 + 255, 204, 101, 100, 97, 94, 91, 89, 86, 88, 89, 87, 84, 80, 79, 79, 32.20885 + 81, 82, 82, 75, 70, 67, 63, 57, 57, 64, 43, 30, 57, 40, 66, 68, 32.20886 + 67, 68, 69, 71, 71, 70, 66, 65, 62, 59, 60, 65, 70, 70, 62, 59, 32.20887 + 72, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20892 + 255, 255, 255, 255, 255, 255, 100, 98, 95, 92, 90, 87, 88, 89, 87, 83, 32.20893 + 80, 79, 79, 84, 86, 85, 78, 74, 72, 70, 64, 67, 72, 55, 49, 51, 32.20894 + 24, 30, 22, 32, 31, 33, 32, 35, 33, 32, 30, 38, 37, 38, 40, 44, 32.20895 + 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 92, 90, 88, 89, 32.20901 + 89, 86, 83, 80, 80, 80, 83, 84, 83, 76, 73, 72, 72, 68, 68, 66, 32.20902 + 56, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20909 + 255, 200, 89, 88, 85, 82, 80, 81, 82, 83, 84, 83, 76, 74, 75, 76, 32.20910 + 73, 72, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20917 + 255, 255, 255, 255, 255, 255, 255, 84, 82, 81, 83, 86, 89, 90, 89, 82, 32.20918 + 81, 83, 85, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 90, 89, 32.20926 + 90, 90, 85, 84, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20930 + 255, 255, 255, 255, 255, 255, 255, 255 }; 32.20931 +/* Define image 'enemy12' of size 114x138x1x3 and type 'const unsigned char' */ 32.20932 +const unsigned char data_enemy12[] = { 32.20933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20936 + 255, 255, 255, 255, 255, 190, 74, 93, 97, 72, 107, 211, 255, 255, 255, 255, 32.20937 + 255, 255, 255, 219, 119, 54, 68, 102, 122, 127, 255, 255, 255, 255, 255, 255, 32.20938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 32.20943 + 94, 87, 82, 86, 84, 68, 68, 65, 63, 67, 70, 59, 46, 50, 63, 61, 32.20944 + 53, 58, 59, 58, 59, 64, 61, 64, 75, 96, 110, 109, 98, 64, 49, 31, 32.20945 + 20, 21, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 43, 48, 43, 35, 27, 36, 32.20950 + 49, 76, 90, 81, 75, 76, 72, 78, 77, 71, 63, 61, 61, 50, 39, 53, 32.20951 + 59, 54, 50, 61, 60, 57, 61, 42, 44, 52, 69, 94, 107, 97, 81, 70, 32.20952 + 57, 43, 33, 32, 33, 29, 24, 78, 204, 255, 255, 255, 255, 255, 255, 255, 32.20953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 27, 31, 39, 43, 41, 41, 32.20957 + 41, 52, 54, 72, 77, 65, 61, 62, 61, 67, 68, 64, 57, 56, 56, 54, 32.20958 + 50, 60, 55, 47, 50, 61, 55, 49, 56, 47, 49, 51, 54, 66, 77, 81, 32.20959 + 78, 73, 63, 52, 48, 46, 43, 33, 25, 29, 25, 22, 101, 255, 255, 255, 32.20960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 30, 31, 34, 42, 49, 32.20964 + 53, 64, 70, 74, 67, 70, 65, 52, 49, 53, 53, 48, 50, 52, 49, 50, 32.20965 + 54, 58, 61, 63, 55, 49, 57, 62, 45, 38, 51, 54, 61, 63, 54, 46, 32.20966 + 52, 68, 81, 71, 66, 61, 59, 59, 53, 41, 31, 29, 26, 25, 24, 26, 32.20967 + 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 25, 29, 35, 39, 50, 32.20971 + 63, 70, 74, 84, 88, 84, 71, 68, 63, 49, 46, 48, 44, 46, 48, 49, 32.20972 + 48, 47, 47, 49, 55, 61, 60, 60, 69, 67, 44, 37, 56, 53, 63, 70, 32.20973 + 66, 61, 60, 67, 70, 66, 62, 60, 61, 65, 61, 49, 38, 31, 28, 26, 32.20974 + 25, 26, 28, 26, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 21, 29, 39, 42, 32.20978 + 50, 64, 82, 89, 90, 88, 85, 78, 67, 68, 66, 56, 53, 49, 38, 47, 32.20979 + 48, 51, 53, 53, 49, 48, 53, 60, 65, 67, 75, 73, 52, 48, 67, 80, 32.20980 + 73, 64, 60, 67, 72, 66, 57, 56, 54, 51, 54, 59, 57, 48, 39, 38, 32.20981 + 35, 30, 26, 28, 31, 29, 22, 21, 91, 255, 255, 255, 255, 255, 255, 255, 32.20982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 26, 26, 26, 27, 36, 32.20985 + 48, 57, 58, 66, 80, 88, 88, 85, 82, 79, 64, 64, 67, 63, 65, 62, 32.20986 + 51, 52, 51, 56, 63, 64, 59, 56, 58, 62, 68, 68, 72, 73, 58, 55, 32.20987 + 71, 96, 83, 67, 59, 63, 71, 67, 59, 59, 54, 50, 52, 59, 60, 54, 32.20988 + 45, 48, 44, 36, 28, 29, 32, 30, 20, 20, 7, 12, 96, 255, 255, 255, 32.20989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 35, 39, 46, 50, 32.20992 + 47, 52, 59, 72, 64, 59, 65, 73, 78, 82, 83, 84, 66, 60, 63, 64, 32.20993 + 73, 79, 73, 63, 61, 64, 71, 69, 61, 54, 54, 66, 68, 62, 61, 65, 32.20994 + 58, 54, 65, 71, 78, 81, 78, 75, 72, 71, 67, 73, 67, 61, 62, 69, 32.20995 + 71, 67, 61, 58, 53, 43, 32, 31, 35, 31, 21, 18, 6, 8, 13, 92, 32.20996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.20998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 48, 53, 62, 32.20999 + 73, 79, 77, 70, 64, 76, 75, 80, 84, 83, 75, 74, 77, 71, 73, 64, 32.21000 + 54, 59, 74, 72, 59, 61, 60, 61, 79, 94, 83, 66, 70, 73, 73, 73, 32.21001 + 73, 72, 66, 59, 53, 61, 71, 79, 78, 69, 63, 66, 70, 81, 79, 75, 32.21002 + 71, 68, 66, 69, 74, 77, 69, 58, 51, 40, 32, 35, 41, 31, 25, 21, 32.21003 + 17, 14, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 58, 71, 32.21006 + 72, 74, 74, 74, 76, 80, 83, 75, 71, 70, 74, 73, 68, 66, 66, 64, 32.21007 + 64, 57, 46, 51, 64, 62, 49, 58, 65, 64, 65, 75, 74, 66, 66, 66, 32.21008 + 62, 58, 56, 58, 57, 53, 50, 54, 59, 65, 70, 71, 69, 65, 63, 80, 32.21009 + 74, 70, 74, 84, 88, 80, 70, 62, 60, 63, 65, 60, 44, 33, 26, 25, 32.21010 + 21, 18, 13, 10, 8, 9, 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 70, 32.21013 + 69, 74, 73, 68, 62, 58, 62, 72, 81, 73, 65, 59, 62, 65, 63, 58, 32.21014 + 52, 54, 52, 45, 35, 38, 48, 47, 35, 38, 54, 50, 38, 45, 55, 54, 32.21015 + 53, 61, 53, 43, 39, 42, 44, 43, 41, 49, 53, 58, 58, 56, 55, 56, 32.21016 + 58, 56, 68, 76, 75, 76, 80, 81, 76, 82, 75, 69, 70, 68, 54, 39, 32.21017 + 26, 26, 23, 20, 16, 12, 11, 9, 10, 255, 255, 255, 255, 255, 255, 255, 32.21018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 32.21020 + 66, 69, 71, 74, 68, 63, 58, 57, 62, 70, 76, 73, 63, 55, 57, 62, 32.21021 + 60, 50, 39, 41, 39, 35, 25, 29, 36, 38, 27, 44, 53, 49, 38, 50, 32.21022 + 60, 63, 65, 63, 53, 41, 35, 38, 41, 40, 38, 44, 51, 53, 43, 31, 32.21023 + 28, 39, 51, 45, 58, 67, 63, 62, 73, 81, 81, 97, 86, 75, 72, 71, 32.21024 + 66, 52, 39, 34, 29, 21, 15, 12, 10, 12, 12, 10, 255, 255, 255, 255, 32.21025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21027 + 194, 67, 61, 61, 62, 61, 51, 42, 40, 47, 55, 61, 63, 71, 64, 57, 32.21028 + 57, 61, 59, 46, 31, 31, 29, 26, 19, 24, 31, 34, 27, 28, 25, 18, 32.21029 + 19, 35, 39, 37, 43, 59, 53, 44, 41, 44, 46, 46, 44, 39, 42, 42, 32.21030 + 37, 31, 30, 37, 43, 52, 43, 36, 38, 60, 82, 86, 78, 86, 81, 76, 32.21031 + 78, 81, 77, 62, 45, 43, 36, 24, 15, 9, 9, 10, 12, 19, 18, 255, 32.21032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21034 + 193, 76, 76, 68, 59, 58, 62, 55, 40, 29, 26, 37, 47, 54, 53, 62, 32.21035 + 57, 54, 50, 53, 50, 42, 29, 23, 23, 21, 18, 21, 29, 32, 30, 37, 32.21036 + 32, 22, 27, 43, 43, 38, 44, 46, 44, 41, 40, 43, 45, 46, 46, 44, 32.21037 + 39, 38, 45, 56, 60, 53, 43, 37, 30, 27, 34, 49, 66, 75, 78, 94, 32.21038 + 89, 82, 77, 75, 76, 68, 59, 57, 48, 35, 22, 15, 13, 13, 14, 26, 32.21039 + 13, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21041 + 255, 190, 67, 76, 80, 71, 61, 62, 68, 60, 50, 45, 44, 50, 54, 56, 32.21042 + 53, 44, 45, 44, 36, 36, 37, 37, 31, 19, 18, 17, 15, 18, 25, 28, 32.21043 + 28, 25, 31, 24, 19, 31, 40, 37, 38, 44, 45, 45, 42, 42, 41, 44, 32.21044 + 47, 50, 46, 45, 49, 58, 60, 56, 49, 21, 27, 39, 48, 42, 37, 48, 32.21045 + 69, 91, 90, 83, 73, 70, 74, 77, 75, 70, 63, 50, 37, 26, 21, 18, 32.21046 + 17, 19, 10, 10, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21048 + 255, 255, 197, 73, 77, 86, 88, 77, 64, 63, 68, 40, 42, 46, 49, 48, 32.21049 + 43, 36, 31, 31, 36, 34, 25, 22, 27, 33, 32, 18, 17, 15, 14, 16, 32.21050 + 22, 25, 26, 29, 49, 44, 28, 38, 57, 60, 56, 57, 59, 58, 52, 47, 32.21051 + 44, 47, 52, 47, 51, 51, 41, 30, 29, 39, 49, 34, 31, 45, 61, 57, 32.21052 + 38, 34, 43, 48, 64, 77, 80, 80, 82, 81, 76, 71, 66, 56, 43, 31, 32.21053 + 22, 16, 12, 3, 13, 24, 24, 90, 255, 255, 255, 255, 255, 255, 255, 255, 32.21054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21055 + 255, 255, 255, 192, 64, 65, 62, 64, 69, 61, 49, 52, 61, 58, 45, 33, 32.21056 + 30, 34, 35, 29, 22, 28, 28, 28, 28, 27, 24, 22, 21, 15, 15, 16, 32.21057 + 15, 14, 17, 24, 29, 27, 31, 34, 32, 29, 29, 33, 38, 46, 49, 48, 32.21058 + 41, 36, 33, 39, 45, 55, 53, 50, 48, 49, 47, 45, 42, 29, 28, 32, 32.21059 + 35, 37, 40, 42, 44, 47, 54, 62, 69, 74, 76, 80, 81, 77, 79, 69, 32.21060 + 58, 52, 38, 26, 30, 32, 23, 10, 10, 24, 100, 255, 255, 255, 255, 255, 32.21061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21062 + 255, 255, 255, 255, 200, 90, 91, 74, 70, 71, 73, 69, 56, 47, 43, 42, 32.21063 + 34, 29, 28, 32, 33, 32, 29, 21, 22, 22, 21, 20, 18, 16, 15, 18, 32.21064 + 17, 15, 13, 11, 12, 14, 17, 14, 20, 26, 30, 30, 31, 33, 37, 40, 32.21065 + 46, 50, 50, 46, 38, 32, 30, 37, 35, 33, 34, 36, 35, 31, 25, 26, 32.21066 + 25, 27, 30, 33, 35, 37, 37, 49, 49, 49, 49, 51, 54, 61, 64, 73, 32.21067 + 76, 73, 68, 67, 55, 42, 40, 32, 27, 16, 13, 23, 19, 255, 255, 255, 32.21068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21069 + 255, 255, 255, 255, 255, 255, 84, 80, 77, 74, 70, 65, 60, 61, 59, 49, 32.21070 + 37, 28, 27, 28, 28, 27, 28, 29, 30, 22, 22, 21, 20, 19, 18, 17, 32.21071 + 16, 20, 17, 15, 13, 13, 13, 12, 11, 12, 18, 26, 32, 35, 35, 35, 32.21072 + 36, 27, 33, 40, 48, 52, 48, 40, 34, 37, 35, 35, 38, 43, 43, 37, 32.21073 + 30, 33, 32, 34, 35, 37, 37, 38, 38, 42, 41, 41, 42, 46, 51, 59, 32.21074 + 63, 60, 66, 66, 68, 72, 63, 47, 42, 35, 33, 25, 23, 31, 32, 33, 32.21075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21076 + 255, 255, 255, 255, 255, 255, 255, 195, 71, 59, 48, 65, 66, 56, 45, 49, 32.21077 + 60, 61, 49, 28, 30, 33, 31, 24, 20, 21, 23, 23, 22, 20, 19, 18, 32.21078 + 18, 18, 18, 19, 16, 15, 16, 21, 21, 21, 17, 19, 20, 26, 29, 32, 32.21079 + 31, 30, 28, 26, 26, 28, 36, 48, 52, 49, 44, 49, 45, 44, 48, 55, 32.21080 + 57, 52, 46, 45, 43, 43, 42, 42, 39, 37, 37, 34, 35, 40, 47, 53, 32.21081 + 58, 62, 62, 71, 79, 78, 80, 88, 84, 67, 60, 40, 39, 32, 34, 49, 32.21082 + 52, 56, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 82, 69, 55, 61, 67, 62, 32.21084 + 46, 43, 56, 62, 57, 33, 37, 39, 35, 27, 20, 19, 21, 20, 18, 16, 32.21085 + 14, 13, 14, 15, 16, 20, 16, 18, 19, 26, 27, 28, 24, 24, 19, 19, 32.21086 + 18, 23, 23, 23, 21, 36, 30, 27, 32, 43, 48, 44, 38, 45, 41, 38, 32.21087 + 40, 47, 51, 51, 49, 47, 47, 44, 42, 38, 34, 29, 28, 33, 34, 37, 32.21088 + 44, 50, 54, 56, 54, 74, 82, 78, 77, 87, 89, 79, 74, 56, 51, 40, 32.21089 + 44, 60, 62, 61, 66, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 88, 84, 74, 62, 56, 32.21091 + 68, 68, 52, 42, 43, 45, 41, 37, 37, 37, 35, 31, 27, 24, 23, 20, 32.21092 + 18, 15, 12, 12, 14, 16, 18, 21, 20, 19, 21, 24, 27, 28, 28, 28, 32.21093 + 22, 16, 16, 21, 26, 26, 24, 29, 26, 26, 34, 46, 49, 41, 33, 37, 32.21094 + 35, 33, 34, 39, 43, 47, 49, 49, 47, 45, 42, 38, 32, 28, 25, 30, 32.21095 + 28, 29, 33, 45, 54, 59, 62, 63, 71, 65, 59, 68, 76, 74, 75, 80, 32.21096 + 72, 60, 59, 70, 66, 55, 53, 90, 255, 255, 255, 255, 255, 255, 255, 255, 32.21097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 76, 68, 65, 32.21098 + 63, 58, 65, 63, 51, 39, 34, 33, 33, 37, 35, 32, 32, 35, 34, 30, 32.21099 + 25, 27, 24, 20, 17, 17, 19, 22, 25, 22, 22, 23, 23, 23, 26, 30, 32.21100 + 33, 36, 28, 20, 20, 27, 31, 30, 27, 26, 24, 26, 34, 45, 48, 41, 32.21101 + 33, 31, 33, 35, 35, 37, 39, 44, 50, 49, 49, 47, 43, 39, 35, 32, 32.21102 + 31, 25, 24, 28, 36, 51, 61, 66, 66, 65, 74, 65, 54, 61, 71, 75, 32.21103 + 78, 87, 84, 73, 71, 77, 65, 51, 48, 37, 255, 255, 255, 255, 255, 255, 32.21104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 87, 70, 32.21105 + 60, 64, 73, 66, 65, 57, 47, 39, 36, 40, 45, 43, 36, 29, 30, 36, 32.21106 + 38, 32, 24, 29, 26, 22, 20, 19, 22, 28, 30, 23, 25, 26, 26, 26, 32.21107 + 30, 37, 43, 39, 30, 22, 20, 26, 29, 25, 20, 38, 33, 30, 33, 39, 32.21108 + 40, 35, 29, 21, 27, 32, 33, 31, 32, 37, 43, 44, 44, 43, 41, 40, 32.21109 + 38, 36, 33, 27, 29, 35, 45, 54, 59, 55, 49, 59, 69, 59, 43, 47, 32.21110 + 55, 60, 63, 73, 76, 71, 70, 71, 58, 46, 45, 35, 108, 255, 255, 255, 32.21111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 83, 32.21112 + 75, 70, 70, 71, 69, 50, 60, 58, 42, 40, 50, 51, 43, 38, 41, 31, 32.21113 + 20, 25, 28, 25, 30, 24, 25, 27, 27, 24, 22, 27, 33, 25, 25, 34, 32.21114 + 35, 27, 28, 37, 37, 30, 24, 24, 31, 31, 21, 16, 19, 14, 21, 26, 32.21115 + 28, 34, 40, 40, 34, 26, 25, 26, 32, 38, 38, 33, 26, 33, 26, 27, 32.21116 + 36, 41, 39, 35, 35, 27, 35, 43, 49, 53, 55, 51, 46, 68, 65, 58, 32.21117 + 49, 44, 42, 46, 48, 44, 64, 61, 64, 60, 51, 50, 30, 30, 34, 112, 32.21118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21119 + 73, 65, 64, 73, 78, 70, 55, 57, 54, 39, 28, 38, 58, 55, 42, 41, 32.21120 + 44, 33, 22, 26, 26, 21, 22, 21, 24, 28, 29, 29, 29, 33, 36, 37, 32.21121 + 32, 33, 29, 23, 30, 44, 43, 44, 39, 36, 38, 34, 27, 21, 19, 21, 32.21122 + 26, 29, 29, 34, 40, 42, 36, 29, 25, 23, 26, 32, 37, 38, 35, 26, 32.21123 + 23, 28, 36, 39, 34, 31, 30, 40, 49, 53, 51, 46, 46, 47, 48, 58, 32.21124 + 59, 54, 46, 39, 36, 40, 43, 38, 60, 62, 63, 54, 45, 50, 34, 18, 32.21125 + 18, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21126 + 255, 191, 67, 70, 69, 68, 69, 67, 60, 51, 46, 35, 27, 35, 50, 50, 32.21127 + 37, 40, 45, 37, 30, 34, 34, 27, 26, 24, 28, 30, 31, 33, 35, 36, 32.21128 + 37, 45, 39, 38, 32, 27, 38, 50, 46, 48, 46, 42, 36, 34, 33, 28, 32.21129 + 22, 32, 36, 37, 35, 36, 41, 43, 41, 38, 29, 22, 21, 26, 33, 40, 32.21130 + 43, 37, 34, 37, 40, 38, 34, 33, 34, 51, 57, 59, 50, 41, 39, 43, 32.21131 + 48, 49, 52, 51, 44, 37, 34, 36, 39, 49, 63, 58, 57, 55, 49, 51, 32.21132 + 31, 18, 16, 16, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21133 + 255, 255, 255, 61, 67, 73, 73, 71, 68, 63, 60, 33, 45, 50, 42, 31, 32.21134 + 31, 35, 38, 30, 42, 41, 36, 40, 40, 35, 38, 35, 35, 33, 32, 36, 32.21135 + 41, 44, 44, 49, 51, 56, 51, 47, 57, 62, 50, 46, 49, 45, 34, 34, 32.21136 + 39, 39, 28, 39, 41, 44, 45, 46, 48, 48, 45, 46, 36, 27, 24, 28, 32.21137 + 36, 45, 49, 56, 55, 52, 47, 42, 39, 40, 43, 51, 55, 55, 46, 36, 32.21138 + 35, 37, 41, 40, 46, 49, 45, 40, 36, 39, 43, 55, 57, 43, 48, 60, 32.21139 + 61, 59, 32, 26, 24, 24, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21140 + 255, 255, 255, 255, 68, 77, 66, 58, 67, 83, 81, 62, 43, 32, 45, 53, 32.21141 + 46, 31, 25, 32, 42, 25, 42, 45, 39, 36, 32, 31, 39, 43, 43, 37, 32.21142 + 33, 40, 52, 61, 60, 65, 73, 80, 70, 63, 74, 80, 67, 58, 59, 52, 32.21143 + 40, 41, 47, 49, 41, 41, 41, 48, 55, 59, 56, 50, 46, 50, 44, 37, 32.21144 + 36, 41, 48, 56, 60, 68, 72, 76, 71, 63, 55, 49, 45, 52, 54, 53, 32.21145 + 45, 41, 39, 33, 29, 33, 39, 44, 43, 41, 39, 41, 44, 41, 49, 39, 32.21146 + 46, 57, 63, 69, 50, 30, 31, 30, 22, 255, 255, 255, 255, 255, 255, 255, 32.21147 + 255, 255, 255, 255, 255, 255, 65, 74, 67, 67, 72, 77, 71, 58, 48, 48, 32.21148 + 42, 36, 34, 33, 35, 39, 46, 37, 55, 56, 45, 39, 33, 31, 39, 51, 32.21149 + 50, 41, 36, 48, 69, 81, 80, 84, 96, 100, 79, 63, 80, 98, 92, 79, 32.21150 + 73, 62, 52, 48, 51, 52, 47, 44, 43, 52, 63, 73, 67, 55, 45, 49, 32.21151 + 48, 47, 50, 55, 62, 68, 72, 78, 90, 104, 106, 99, 84, 66, 49, 55, 32.21152 + 57, 58, 53, 49, 43, 34, 25, 30, 33, 36, 38, 39, 39, 39, 40, 40, 32.21153 + 61, 60, 59, 54, 53, 71, 64, 35, 34, 32, 24, 95, 255, 255, 255, 255, 32.21154 + 255, 255, 255, 255, 255, 255, 255, 62, 60, 63, 73, 85, 84, 70, 55, 56, 32.21155 + 66, 58, 41, 28, 30, 38, 41, 40, 42, 50, 61, 57, 47, 47, 45, 44, 32.21156 + 49, 62, 59, 51, 46, 59, 80, 90, 88, 93, 111, 116, 85, 63, 83, 111, 32.21157 + 111, 101, 88, 74, 66, 60, 56, 56, 59, 59, 53, 59, 76, 86, 81, 63, 32.21158 + 51, 50, 49, 52, 56, 59, 63, 68, 71, 83, 99, 114, 121, 118, 104, 79, 32.21159 + 58, 54, 59, 63, 60, 54, 48, 41, 34, 34, 33, 33, 34, 38, 38, 36, 32.21160 + 34, 43, 62, 59, 56, 49, 47, 63, 55, 38, 32, 27, 22, 21, 255, 255, 32.21161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 64, 70, 76, 83, 86, 77, 32.21162 + 65, 62, 68, 56, 42, 34, 39, 41, 37, 34, 36, 45, 54, 47, 42, 53, 32.21163 + 58, 56, 61, 74, 72, 63, 55, 67, 86, 94, 87, 92, 117, 125, 92, 64, 32.21164 + 83, 113, 117, 121, 103, 89, 82, 76, 69, 69, 76, 75, 66, 70, 85, 98, 32.21165 + 93, 73, 59, 53, 52, 53, 54, 56, 56, 60, 63, 83, 97, 109, 114, 114, 32.21166 + 105, 84, 61, 46, 59, 68, 64, 57, 50, 49, 46, 40, 36, 33, 34, 38, 32.21167 + 39, 35, 30, 31, 39, 29, 35, 45, 51, 58, 40, 35, 24, 15, 15, 21, 32.21168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 62, 69, 78, 76, 69, 32.21169 + 67, 73, 78, 67, 52, 49, 44, 41, 39, 34, 27, 24, 27, 38, 43, 44, 32.21170 + 48, 58, 66, 68, 66, 75, 79, 88, 97, 102, 102, 106, 112, 122, 119, 124, 32.21171 + 128, 110, 80, 93, 140, 142, 131, 118, 106, 97, 86, 79, 75, 71, 74, 82, 32.21172 + 94, 114, 121, 102, 77, 64, 61, 63, 61, 61, 49, 41, 61, 79, 107, 111, 32.21173 + 99, 102, 105, 86, 64, 47, 47, 66, 61, 36, 48, 61, 37, 35, 34, 33, 32.21174 + 33, 35, 35, 31, 29, 24, 24, 28, 32, 33, 34, 43, 52, 47, 43, 35, 32.21175 + 23, 17, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 64, 65, 72, 32.21176 + 85, 96, 91, 78, 64, 47, 34, 49, 39, 30, 30, 33, 29, 25, 24, 37, 32.21177 + 48, 54, 57, 60, 70, 80, 86, 80, 87, 99, 110, 116, 117, 122, 129, 139, 32.21178 + 139, 143, 151, 135, 105, 113, 153, 150, 147, 144, 136, 112, 85, 74, 75, 82, 32.21179 + 78, 80, 94, 121, 133, 115, 85, 71, 70, 69, 69, 79, 74, 63, 70, 85, 32.21180 + 94, 101, 98, 101, 106, 91, 64, 62, 46, 54, 56, 35, 24, 33, 33, 31, 32.21181 + 29, 29, 28, 27, 26, 26, 26, 40, 37, 36, 37, 36, 35, 44, 53, 48, 32.21182 + 45, 41, 39, 42, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 61, 32.21183 + 55, 60, 71, 76, 67, 54, 46, 42, 41, 52, 37, 27, 31, 42, 44, 39, 32.21184 + 35, 54, 60, 64, 66, 73, 80, 83, 84, 97, 102, 115, 128, 135, 137, 141, 32.21185 + 147, 151, 155, 160, 168, 156, 125, 124, 156, 161, 160, 164, 159, 137, 103, 78, 32.21186 + 70, 75, 78, 86, 101, 125, 136, 121, 94, 75, 78, 74, 75, 83, 75, 62, 32.21187 + 57, 65, 69, 97, 122, 124, 120, 101, 65, 60, 57, 62, 67, 54, 33, 29, 32.21188 + 37, 29, 27, 26, 25, 25, 27, 29, 32, 30, 29, 32, 38, 41, 41, 49, 32.21189 + 54, 52, 51, 51, 57, 67, 68, 255, 255, 255, 255, 255, 255, 255, 255, 75, 32.21190 + 67, 56, 50, 53, 51, 45, 41, 44, 49, 53, 55, 47, 35, 29, 37, 50, 32.21191 + 54, 52, 51, 55, 71, 82, 82, 80, 87, 97, 106, 124, 122, 128, 141, 152, 32.21192 + 155, 156, 157, 161, 164, 170, 178, 169, 137, 127, 147, 164, 166, 163, 157, 148, 32.21193 + 129, 95, 62, 56, 70, 88, 104, 122, 131, 121, 103, 76, 80, 77, 90, 98, 32.21194 + 79, 63, 56, 54, 54, 98, 137, 129, 118, 104, 72, 61, 75, 73, 57, 48, 32.21195 + 40, 33, 31, 33, 28, 25, 26, 32, 38, 40, 41, 16, 17, 25, 35, 41, 32.21196 + 40, 40, 42, 42, 44, 50, 61, 73, 73, 255, 255, 255, 255, 255, 255, 255, 32.21197 + 255, 79, 68, 55, 45, 44, 46, 51, 56, 58, 54, 49, 46, 35, 31, 31, 32.21198 + 38, 46, 47, 47, 51, 38, 64, 85, 84, 79, 95, 128, 157, 142, 133, 132, 32.21199 + 144, 158, 165, 164, 162, 173, 176, 181, 187, 181, 151, 131, 136, 158, 173, 169, 32.21200 + 149, 144, 145, 117, 76, 59, 63, 73, 90, 119, 142, 138, 121, 93, 80, 65, 32.21201 + 105, 136, 114, 95, 78, 62, 56, 92, 122, 106, 98, 103, 92, 96, 100, 86, 32.21202 + 61, 47, 38, 36, 40, 41, 31, 22, 25, 34, 42, 41, 38, 31, 27, 25, 32.21203 + 31, 34, 29, 25, 23, 25, 33, 43, 55, 66, 68, 255, 255, 255, 255, 255, 32.21204 + 255, 255, 199, 77, 60, 47, 40, 31, 42, 55, 57, 47, 34, 34, 40, 33, 32.21205 + 31, 33, 37, 38, 36, 38, 46, 50, 52, 53, 61, 85, 118, 143, 156, 141, 32.21206 + 135, 135, 148, 164, 169, 170, 171, 180, 182, 184, 188, 186, 159, 133, 130, 158, 32.21207 + 186, 191, 162, 149, 153, 142, 113, 93, 75, 60, 76, 125, 165, 165, 143, 122, 32.21208 + 91, 48, 93, 146, 136, 116, 80, 53, 52, 82, 112, 110, 109, 117, 116, 102, 32.21209 + 89, 88, 91, 71, 38, 31, 41, 40, 30, 20, 21, 29, 34, 32, 28, 49, 32.21210 + 38, 27, 27, 29, 28, 28, 28, 29, 37, 46, 52, 57, 58, 255, 255, 255, 32.21211 + 255, 255, 255, 255, 82, 65, 49, 45, 46, 33, 33, 37, 34, 24, 16, 24, 32.21212 + 36, 33, 29, 30, 32, 33, 33, 40, 49, 64, 52, 45, 64, 107, 137, 138, 32.21213 + 124, 136, 141, 151, 162, 170, 172, 177, 181, 183, 184, 183, 187, 189, 165, 136, 32.21214 + 128, 156, 178, 187, 171, 160, 158, 153, 139, 125, 101, 77, 87, 133, 173, 176, 32.21215 + 155, 145, 121, 59, 75, 119, 123, 119, 79, 49, 49, 69, 102, 127, 136, 134, 32.21216 + 129, 84, 67, 82, 97, 68, 34, 27, 24, 31, 28, 23, 22, 25, 28, 29, 32.21217 + 30, 44, 34, 25, 29, 35, 37, 34, 36, 37, 43, 49, 53, 57, 59, 255, 32.21218 + 255, 255, 255, 255, 255, 255, 81, 58, 46, 51, 62, 51, 38, 30, 31, 31, 32.21219 + 25, 22, 22, 30, 25, 20, 23, 28, 33, 44, 55, 50, 65, 84, 104, 125, 32.21220 + 137, 134, 128, 133, 147, 167, 177, 176, 173, 178, 189, 189, 190, 186, 190, 195, 32.21221 + 174, 144, 133, 148, 152, 159, 164, 166, 162, 149, 140, 137, 124, 107, 109, 136, 32.21222 + 165, 169, 158, 153, 153, 87, 73, 95, 111, 134, 103, 77, 65, 59, 81, 123, 32.21223 + 143, 138, 132, 115, 100, 104, 94, 56, 48, 55, 37, 25, 29, 31, 30, 28, 32.21224 + 28, 36, 42, 35, 28, 28, 35, 43, 41, 33, 27, 29, 34, 40, 50, 62, 32.21225 + 69, 128, 255, 255, 255, 255, 255, 198, 77, 50, 40, 55, 37, 31, 40, 34, 32.21226 + 36, 52, 43, 26, 29, 32, 33, 32, 30, 31, 34, 39, 43, 57, 90, 120, 32.21227 + 130, 130, 132, 145, 158, 154, 156, 163, 168, 175, 181, 185, 187, 185, 190, 193, 32.21228 + 196, 195, 183, 158, 135, 150, 155, 161, 165, 165, 162, 160, 158, 156, 145, 133, 32.21229 + 128, 132, 142, 152, 157, 171, 154, 122, 92, 83, 97, 116, 128, 124, 119, 119, 32.21230 + 127, 129, 126, 134, 148, 164, 141, 114, 101, 95, 83, 57, 36, 40, 34, 31, 32.21231 + 33, 38, 41, 37, 34, 26, 29, 33, 37, 39, 38, 33, 27, 28, 29, 29, 32.21232 + 32, 49, 68, 69, 255, 255, 255, 255, 255, 86, 81, 57, 41, 56, 51, 36, 32.21233 + 41, 39, 42, 47, 42, 33, 33, 45, 42, 37, 35, 37, 39, 41, 44, 84, 32.21234 + 109, 131, 138, 138, 143, 154, 162, 167, 169, 173, 177, 183, 186, 188, 190, 186, 32.21235 + 190, 191, 193, 195, 188, 168, 149, 154, 157, 162, 165, 164, 161, 157, 155, 159, 32.21236 + 154, 146, 140, 139, 145, 155, 162, 173, 161, 139, 111, 90, 89, 106, 123, 154, 32.21237 + 158, 157, 151, 147, 149, 149, 149, 146, 137, 124, 116, 109, 94, 71, 52, 53, 32.21238 + 44, 41, 42, 44, 41, 36, 31, 30, 31, 33, 35, 37, 37, 36, 30, 34, 32.21239 + 33, 27, 27, 46, 66, 58, 255, 255, 255, 255, 255, 91, 82, 62, 35, 42, 32.21240 + 49, 37, 36, 45, 49, 41, 40, 42, 36, 42, 38, 34, 34, 40, 47, 54, 32.21241 + 61, 105, 121, 135, 141, 147, 156, 167, 171, 175, 177, 180, 182, 185, 184, 183, 32.21242 + 183, 187, 189, 189, 190, 194, 193, 181, 168, 164, 166, 167, 168, 167, 163, 159, 32.21243 + 156, 163, 163, 162, 157, 154, 156, 163, 170, 175, 170, 159, 139, 110, 94, 105, 32.21244 + 128, 171, 182, 180, 165, 158, 161, 157, 146, 136, 139, 140, 138, 128, 109, 90, 32.21245 + 75, 68, 58, 53, 56, 56, 46, 39, 35, 34, 32, 32, 34, 36, 35, 33, 32.21246 + 30, 33, 33, 26, 25, 50, 76, 64, 255, 255, 255, 255, 205, 89, 76, 63, 32.21247 + 32, 31, 41, 32, 32, 49, 53, 37, 39, 47, 36, 34, 32, 34, 35, 41, 32.21248 + 49, 64, 82, 108, 120, 129, 139, 152, 165, 174, 174, 177, 178, 181, 183, 184, 32.21249 + 182, 179, 178, 186, 189, 188, 189, 194, 196, 189, 179, 174, 174, 173, 174, 173, 32.21250 + 170, 165, 162, 165, 167, 171, 169, 170, 169, 174, 177, 177, 173, 171, 162, 138, 32.21251 + 119, 127, 153, 177, 184, 184, 176, 169, 167, 161, 151, 151, 153, 156, 153, 142, 32.21252 + 128, 113, 102, 91, 80, 74, 77, 76, 63, 50, 43, 39, 34, 34, 38, 39, 32.21253 + 35, 30, 28, 28, 33, 28, 25, 48, 75, 64, 255, 255, 255, 255, 99, 81, 32.21254 + 67, 61, 39, 38, 43, 28, 30, 46, 50, 36, 40, 48, 35, 36, 37, 41, 32.21255 + 41, 41, 46, 69, 94, 113, 122, 132, 145, 160, 173, 179, 176, 180, 182, 187, 32.21256 + 189, 189, 187, 184, 183, 185, 189, 189, 190, 194, 196, 190, 181, 181, 179, 178, 32.21257 + 179, 180, 179, 175, 171, 170, 171, 174, 177, 183, 184, 183, 180, 183, 176, 175, 32.21258 + 176, 164, 151, 157, 177, 186, 182, 183, 188, 186, 175, 169, 169, 170, 167, 160, 32.21259 + 156, 151, 144, 139, 135, 123, 115, 106, 106, 101, 87, 67, 52, 41, 37, 39, 32.21260 + 44, 44, 35, 27, 25, 27, 35, 33, 26, 37, 57, 50, 255, 255, 255, 255, 32.21261 + 103, 82, 63, 49, 39, 45, 37, 29, 32, 39, 39, 36, 44, 47, 38, 36, 32.21262 + 37, 43, 47, 48, 55, 80, 108, 124, 134, 146, 155, 166, 177, 181, 178, 180, 32.21263 + 182, 186, 188, 189, 188, 187, 186, 185, 189, 189, 189, 192, 194, 189, 182, 186, 32.21264 + 183, 180, 181, 183, 183, 180, 176, 177, 176, 178, 184, 191, 193, 189, 184, 189, 32.21265 + 181, 177, 179, 178, 174, 176, 186, 192, 186, 183, 193, 192, 181, 175, 179, 179, 32.21266 + 171, 163, 159, 158, 159, 159, 159, 154, 152, 143, 131, 124, 113, 88, 62, 46, 32.21267 + 41, 43, 51, 48, 36, 26, 23, 22, 30, 32, 28, 35, 48, 47, 255, 255, 32.21268 + 255, 200, 106, 89, 61, 32, 33, 50, 30, 35, 39, 29, 23, 37, 49, 47, 32.21269 + 44, 38, 33, 37, 46, 53, 63, 85, 112, 131, 144, 154, 160, 167, 175, 181, 32.21270 + 182, 178, 179, 181, 183, 184, 184, 184, 186, 187, 189, 187, 185, 187, 191, 189, 32.21271 + 184, 193, 189, 185, 185, 188, 188, 186, 182, 186, 187, 190, 194, 196, 196, 193, 32.21272 + 191, 191, 186, 182, 182, 184, 186, 186, 187, 189, 185, 183, 186, 187, 185, 181, 32.21273 + 180, 177, 175, 173, 171, 172, 171, 171, 171, 171, 176, 169, 153, 146, 141, 112, 32.21274 + 77, 54, 45, 46, 53, 51, 36, 26, 26, 20, 23, 25, 29, 38, 47, 48, 32.21275 + 255, 255, 255, 77, 95, 88, 55, 20, 31, 58, 33, 41, 45, 23, 12, 37, 32.21276 + 52, 48, 50, 49, 40, 35, 45, 56, 63, 79, 97, 130, 144, 154, 157, 161, 32.21277 + 170, 179, 184, 181, 181, 182, 182, 184, 185, 186, 187, 188, 189, 185, 182, 184, 32.21278 + 189, 190, 188, 199, 196, 191, 190, 192, 192, 189, 185, 191, 195, 200, 200, 197, 32.21279 + 195, 194, 196, 190, 190, 187, 183, 187, 193, 192, 187, 181, 188, 185, 178, 182, 32.21280 + 191, 191, 181, 174, 180, 185, 187, 182, 178, 175, 174, 175, 188, 183, 163, 159, 32.21281 + 160, 132, 91, 61, 51, 47, 52, 50, 34, 28, 29, 26, 21, 19, 26, 33, 32.21282 + 37, 36, 255, 255, 255, 57, 81, 78, 41, 25, 47, 62, 56, 39, 27, 21, 32.21283 + 27, 35, 39, 44, 51, 46, 39, 40, 51, 62, 70, 85, 104, 132, 147, 159, 32.21284 + 166, 171, 178, 182, 182, 178, 177, 182, 182, 184, 181, 182, 181, 181, 189, 193, 32.21285 + 192, 192, 196, 196, 193, 195, 196, 193, 191, 193, 195, 194, 188, 187, 196, 198, 32.21286 + 194, 197, 205, 204, 198, 186, 187, 189, 187, 187, 186, 186, 189, 188, 192, 193, 32.21287 + 190, 186, 184, 187, 189, 184, 182, 181, 184, 187, 189, 188, 185, 189, 182, 178, 32.21288 + 171, 157, 149, 135, 114, 87, 39, 36, 58, 43, 30, 35, 27, 22, 24, 26, 32.21289 + 30, 35, 41, 38, 255, 255, 184, 60, 77, 73, 45, 32, 49, 64, 62, 37, 32.21290 + 24, 14, 17, 26, 32, 41, 48, 49, 43, 39, 40, 49, 66, 89, 109, 134, 32.21291 + 146, 154, 159, 166, 174, 183, 183, 182, 180, 179, 178, 178, 178, 179, 181, 185, 32.21292 + 187, 190, 192, 191, 188, 187, 187, 191, 195, 195, 192, 193, 196, 194, 193, 194, 32.21293 + 198, 200, 199, 201, 202, 202, 198, 197, 193, 189, 184, 183, 185, 189, 193, 190, 32.21294 + 191, 191, 191, 190, 190, 190, 189, 185, 183, 181, 183, 190, 192, 196, 196, 189, 32.21295 + 182, 177, 169, 154, 147, 137, 117, 93, 47, 42, 56, 40, 28, 33, 28, 26, 32.21296 + 25, 23, 24, 31, 42, 45, 255, 255, 39, 54, 61, 57, 41, 34, 43, 54, 32.21297 + 54, 41, 28, 19, 21, 29, 34, 37, 37, 42, 45, 42, 38, 47, 69, 96, 32.21298 + 116, 134, 144, 152, 157, 164, 171, 177, 177, 181, 180, 180, 180, 179, 179, 178, 32.21299 + 178, 180, 177, 181, 189, 192, 185, 185, 189, 185, 190, 194, 191, 192, 195, 195, 32.21300 + 194, 201, 201, 202, 204, 204, 201, 198, 198, 200, 196, 191, 185, 184, 186, 188, 32.21301 + 191, 189, 187, 185, 188, 192, 193, 190, 186, 197, 193, 189, 187, 190, 192, 195, 32.21302 + 196, 190, 184, 179, 168, 151, 146, 140, 123, 95, 55, 48, 56, 39, 26, 31, 32.21303 + 29, 23, 23, 20, 20, 28, 38, 39, 255, 255, 25, 42, 43, 42, 37, 35, 32.21304 + 36, 39, 39, 38, 31, 27, 31, 38, 36, 29, 21, 30, 42, 47, 45, 55, 32.21305 + 82, 109, 123, 137, 146, 157, 162, 167, 171, 171, 167, 175, 176, 178, 179, 178, 32.21306 + 175, 171, 168, 177, 169, 171, 183, 187, 176, 174, 182, 179, 183, 185, 184, 187, 32.21307 + 194, 194, 193, 203, 198, 199, 207, 207, 199, 195, 199, 194, 192, 192, 190, 189, 32.21308 + 185, 181, 178, 188, 186, 185, 187, 188, 188, 184, 181, 191, 189, 187, 185, 185, 32.21309 + 187, 189, 193, 190, 185, 182, 169, 150, 146, 143, 130, 91, 61, 54, 56, 42, 32.21310 + 27, 29, 28, 19, 23, 24, 26, 30, 34, 29, 255, 255, 21, 38, 36, 39, 32.21311 + 41, 41, 36, 32, 30, 27, 24, 22, 25, 31, 30, 23, 13, 29, 42, 49, 32.21312 + 50, 62, 89, 118, 133, 144, 150, 157, 160, 166, 172, 174, 171, 178, 176, 172, 32.21313 + 166, 161, 158, 156, 155, 169, 158, 158, 168, 169, 157, 155, 161, 173, 172, 170, 32.21314 + 173, 182, 192, 192, 190, 197, 194, 197, 205, 206, 197, 196, 200, 193, 190, 188, 32.21315 + 187, 186, 181, 175, 170, 182, 184, 184, 182, 177, 173, 174, 175, 173, 174, 178, 32.21316 + 181, 184, 186, 189, 190, 187, 183, 180, 167, 150, 145, 143, 131, 88, 65, 56, 32.21317 + 53, 44, 32, 29, 28, 23, 28, 31, 31, 32, 35, 33, 255, 255, 28, 31, 32.21318 + 31, 33, 38, 38, 32, 28, 24, 24, 21, 16, 15, 20, 27, 28, 24, 33, 32.21319 + 40, 44, 50, 66, 95, 124, 144, 156, 156, 154, 152, 160, 173, 181, 181, 183, 32.21320 + 173, 157, 140, 131, 128, 133, 135, 134, 126, 125, 135, 139, 139, 138, 143, 154, 32.21321 + 154, 153, 156, 166, 182, 187, 189, 189, 191, 195, 199, 201, 197, 196, 196, 196, 32.21322 + 189, 180, 173, 171, 169, 166, 162, 163, 166, 166, 163, 159, 156, 159, 164, 169, 32.21323 + 173, 176, 179, 179, 182, 183, 185, 184, 177, 175, 166, 151, 147, 142, 127, 88, 32.21324 + 72, 55, 49, 43, 34, 27, 25, 24, 26, 25, 23, 24, 31, 35, 255, 28, 32.21325 + 21, 22, 25, 27, 28, 28, 27, 26, 23, 24, 24, 22, 17, 18, 26, 32, 32.21326 + 31, 28, 31, 42, 59, 81, 106, 133, 155, 161, 160, 157, 155, 162, 173, 179, 32.21327 + 177, 170, 157, 138, 119, 108, 103, 107, 109, 95, 92, 91, 96, 106, 114, 117, 32.21328 + 120, 120, 127, 131, 134, 143, 160, 175, 186, 185, 193, 197, 196, 198, 199, 196, 32.21329 + 190, 191, 182, 169, 161, 157, 151, 145, 138, 129, 126, 127, 127, 128, 131, 137, 32.21330 + 140, 154, 157, 160, 163, 163, 166, 170, 174, 184, 177, 176, 169, 157, 153, 145, 32.21331 + 125, 94, 78, 53, 40, 39, 33, 24, 23, 20, 23, 22, 19, 20, 26, 29, 32.21332 + 255, 10, 0, 20, 25, 27, 23, 23, 27, 29, 26, 21, 26, 26, 21, 19, 32.21333 + 24, 26, 23, 18, 22, 41, 72, 99, 122, 145, 163, 164, 165, 166, 167, 171, 32.21334 + 173, 170, 161, 147, 139, 125, 112, 99, 93, 90, 90, 80, 78, 73, 71, 79, 32.21335 + 89, 91, 88, 92, 103, 113, 115, 121, 140, 164, 181, 183, 193, 197, 193, 194, 32.21336 + 199, 195, 185, 177, 170, 162, 155, 149, 137, 123, 112, 95, 91, 89, 92, 100, 32.21337 + 108, 114, 115, 114, 120, 125, 131, 139, 149, 162, 170, 185, 178, 177, 173, 163, 32.21338 + 159, 148, 127, 101, 84, 51, 33, 35, 32, 22, 22, 20, 25, 29, 26, 25, 32.21339 + 26, 22, 255, 24, 17, 19, 26, 36, 33, 22, 26, 29, 18, 18, 8, 15, 32.21340 + 22, 19, 19, 26, 26, 27, 29, 38, 62, 100, 136, 156, 159, 167, 170, 162, 32.21341 + 166, 175, 153, 131, 136, 132, 115, 98, 94, 93, 91, 89, 89, 84, 89, 83, 32.21342 + 76, 68, 54, 49, 58, 82, 91, 101, 102, 103, 115, 143, 168, 173, 169, 179, 32.21343 + 194, 193, 189, 184, 175, 166, 160, 157, 153, 136, 115, 106, 106, 91, 84, 78, 32.21344 + 79, 85, 89, 90, 91, 90, 77, 93, 115, 122, 138, 158, 158, 170, 177, 179, 32.21345 + 169, 159, 152, 144, 134, 108, 76, 44, 31, 30, 26, 18, 12, 17, 23, 29, 32.21346 + 29, 28, 24, 22, 255, 28, 28, 25, 25, 32, 33, 29, 36, 37, 24, 13, 32.21347 + 9, 16, 21, 15, 19, 28, 26, 35, 36, 43, 67, 107, 143, 160, 158, 167, 32.21348 + 166, 161, 157, 149, 125, 113, 121, 119, 121, 124, 128, 128, 131, 134, 137, 122, 32.21349 + 114, 95, 82, 87, 83, 68, 56, 61, 68, 81, 92, 98, 107, 127, 150, 148, 32.21350 + 161, 175, 181, 179, 174, 172, 171, 159, 149, 138, 134, 132, 123, 103, 86, 82, 32.21351 + 73, 63, 59, 62, 67, 73, 77, 72, 65, 70, 81, 86, 100, 121, 131, 146, 32.21352 + 153, 158, 155, 153, 151, 146, 137, 117, 82, 44, 25, 23, 24, 21, 18, 27, 32.21353 + 30, 29, 28, 25, 23, 103, 255, 25, 30, 38, 29, 27, 28, 27, 31, 30, 32.21354 + 11, 14, 16, 24, 20, 9, 16, 25, 19, 18, 25, 40, 70, 110, 142, 152, 32.21355 + 146, 161, 150, 153, 159, 154, 144, 139, 135, 138, 140, 144, 146, 142, 138, 137, 32.21356 + 139, 133, 123, 101, 81, 84, 99, 108, 106, 116, 107, 104, 109, 111, 109, 120, 32.21357 + 136, 133, 158, 168, 162, 163, 166, 169, 178, 162, 158, 144, 125, 112, 108, 104, 32.21358 + 100, 92, 83, 75, 70, 74, 85, 94, 100, 109, 110, 104, 100, 99, 95, 99, 32.21359 + 111, 121, 127, 135, 141, 149, 153, 150, 144, 125, 89, 48, 25, 20, 19, 16, 32.21360 + 16, 32, 31, 27, 23, 19, 21, 255, 255, 39, 44, 52, 36, 31, 34, 32, 32.21361 + 33, 28, 12, 16, 22, 29, 17, 6, 17, 27, 21, 27, 49, 80, 111, 140, 32.21362 + 161, 168, 165, 171, 155, 158, 158, 142, 142, 157, 154, 155, 142, 135, 138, 129, 32.21363 + 114, 111, 120, 115, 108, 112, 122, 124, 121, 106, 88, 115, 101, 100, 114, 125, 32.21364 + 124, 129, 142, 139, 167, 174, 166, 170, 171, 165, 165, 162, 155, 147, 133, 115, 32.21365 + 102, 102, 107, 97, 98, 97, 93, 95, 101, 107, 108, 130, 143, 138, 130, 132, 32.21366 + 112, 91, 94, 109, 112, 121, 132, 146, 155, 154, 151, 134, 98, 56, 31, 22, 32.21367 + 17, 14, 12, 27, 26, 23, 17, 15, 18, 255, 190, 60, 61, 52, 36, 35, 32.21368 + 44, 43, 41, 40, 29, 14, 19, 27, 19, 11, 28, 46, 44, 77, 108, 142, 32.21369 + 162, 172, 181, 194, 201, 183, 171, 172, 160, 130, 127, 145, 147, 135, 125, 125, 32.21370 + 133, 118, 98, 106, 131, 112, 87, 94, 130, 149, 146, 119, 86, 89, 83, 93, 32.21371 + 116, 133, 132, 130, 134, 155, 175, 183, 178, 181, 180, 167, 151, 181, 158, 148, 32.21372 + 153, 148, 124, 104, 98, 106, 115, 121, 118, 115, 113, 109, 104, 116, 131, 133, 32.21373 + 137, 152, 139, 113, 109, 106, 107, 113, 127, 140, 148, 150, 149, 143, 104, 58, 32.21374 + 29, 18, 15, 18, 21, 22, 24, 24, 21, 21, 24, 255, 67, 61, 54, 46, 32.21375 + 27, 30, 46, 48, 43, 38, 29, 16, 16, 22, 22, 21, 41, 65, 68, 91, 32.21376 + 116, 139, 145, 145, 153, 170, 183, 163, 150, 154, 177, 195, 198, 173, 142, 120, 32.21377 + 125, 134, 131, 109, 90, 103, 130, 111, 95, 108, 126, 121, 120, 124, 114, 111, 32.21378 + 103, 97, 102, 111, 118, 127, 133, 170, 167, 172, 172, 167, 182, 193, 183, 195, 32.21379 + 171, 152, 140, 125, 103, 91, 93, 106, 121, 132, 129, 125, 121, 117, 109, 107, 32.21380 + 116, 118, 128, 148, 153, 143, 136, 109, 109, 112, 122, 132, 137, 143, 148, 144, 32.21381 + 102, 50, 17, 7, 9, 17, 26, 23, 27, 30, 31, 31, 35, 255, 67, 62, 32.21382 + 57, 50, 28, 31, 57, 66, 61, 52, 37, 33, 22, 22, 25, 24, 40, 62, 32.21383 + 69, 66, 81, 96, 105, 116, 129, 143, 148, 141, 127, 130, 179, 245, 255, 204, 32.21384 + 148, 128, 136, 129, 105, 95, 104, 110, 106, 84, 125, 181, 175, 116, 92, 101, 32.21385 + 93, 108, 103, 92, 87, 96, 119, 143, 154, 161, 153, 178, 185, 162, 177, 208, 32.21386 + 204, 171, 165, 145, 113, 91, 90, 98, 105, 101, 112, 116, 106, 98, 98, 99, 32.21387 + 97, 98, 95, 99, 107, 116, 132, 139, 133, 121, 119, 121, 128, 133, 137, 146, 32.21388 + 154, 145, 106, 56, 24, 11, 11, 16, 25, 23, 29, 31, 32, 32, 36, 255, 32.21389 + 82, 84, 85, 61, 38, 43, 79, 101, 101, 90, 72, 55, 36, 28, 26, 21, 32.21390 + 29, 46, 54, 60, 69, 84, 106, 133, 153, 159, 153, 150, 143, 132, 156, 207, 32.21391 + 214, 177, 150, 136, 135, 105, 70, 89, 136, 136, 98, 60, 127, 200, 185, 120, 32.21392 + 113, 134, 123, 108, 119, 121, 116, 122, 141, 155, 157, 139, 147, 205, 230, 185, 32.21393 + 172, 190, 173, 156, 166, 155, 136, 140, 164, 163, 141, 121, 127, 119, 95, 79, 32.21394 + 79, 84, 82, 93, 87, 97, 102, 101, 120, 140, 130, 133, 130, 131, 137, 140, 32.21395 + 143, 156, 167, 154, 120, 77, 47, 32, 25, 20, 22, 23, 26, 29, 27, 27, 32.21396 + 31, 255, 79, 81, 80, 71, 39, 55, 115, 152, 147, 125, 103, 95, 76, 44, 32.21397 + 41, 41, 40, 55, 57, 61, 62, 80, 113, 143, 156, 160, 160, 167, 159, 154, 32.21398 + 154, 154, 151, 153, 156, 133, 115, 93, 91, 118, 144, 137, 112, 89, 85, 105, 32.21399 + 121, 125, 149, 169, 162, 145, 130, 132, 135, 128, 143, 166, 164, 130, 158, 192, 32.21400 + 211, 205, 188, 171, 163, 158, 157, 135, 136, 121, 143, 144, 154, 149, 185, 200, 32.21401 + 166, 124, 102, 89, 77, 92, 114, 123, 115, 109, 108, 116, 132, 143, 154, 160, 32.21402 + 151, 141, 139, 145, 148, 147, 159, 140, 76, 59, 28, 21, 22, 19, 21, 26, 32.21403 + 29, 32, 36, 255, 85, 89, 88, 69, 41, 56, 116, 159, 164, 148, 127, 129, 32.21404 + 118, 89, 77, 63, 51, 59, 55, 72, 75, 90, 119, 147, 160, 161, 159, 163, 32.21405 + 161, 164, 168, 166, 155, 145, 140, 129, 121, 111, 114, 132, 150, 145, 130, 121, 32.21406 + 96, 93, 107, 128, 159, 168, 151, 126, 125, 134, 136, 133, 134, 140, 140, 146, 32.21407 + 157, 177, 196, 207, 200, 182, 166, 159, 154, 130, 129, 120, 139, 136, 138, 162, 32.21408 + 198, 202, 156, 116, 107, 104, 90, 112, 135, 142, 129, 119, 111, 117, 132, 153, 32.21409 + 159, 157, 142, 130, 125, 128, 128, 139, 152, 117, 64, 47, 25, 20, 19, 35, 32.21410 + 37, 33, 29, 33, 43, 255, 96, 101, 103, 69, 44, 56, 111, 155, 166, 153, 32.21411 + 131, 155, 153, 130, 112, 89, 67, 67, 59, 81, 85, 100, 126, 153, 165, 166, 32.21412 + 163, 166, 165, 170, 174, 170, 154, 138, 130, 128, 127, 129, 135, 143, 148, 146, 32.21413 + 140, 142, 120, 110, 112, 124, 147, 153, 140, 125, 138, 143, 142, 141, 132, 125, 32.21414 + 131, 161, 165, 176, 189, 200, 199, 188, 178, 175, 164, 141, 137, 134, 149, 144, 32.21415 + 141, 158, 191, 190, 141, 108, 114, 117, 103, 133, 152, 154, 139, 127, 117, 120, 32.21416 + 133, 147, 149, 144, 133, 127, 126, 130, 131, 125, 143, 88, 54, 36, 26, 29, 32.21417 + 25, 33, 41, 38, 31, 34, 119, 255, 100, 106, 106, 71, 52, 69, 119, 161, 32.21418 + 174, 161, 139, 157, 161, 143, 127, 107, 85, 81, 64, 81, 90, 108, 135, 158, 32.21419 + 171, 173, 170, 175, 170, 170, 170, 165, 155, 146, 144, 147, 145, 146, 151, 150, 32.21420 + 146, 146, 147, 145, 148, 149, 138, 127, 127, 137, 141, 143, 155, 145, 138, 144, 32.21421 + 139, 131, 143, 165, 178, 192, 194, 187, 181, 186, 192, 167, 160, 142, 134, 130, 32.21422 + 138, 137, 132, 141, 167, 171, 141, 120, 123, 127, 119, 141, 154, 150, 137, 132, 32.21423 + 126, 127, 135, 138, 140, 138, 135, 135, 141, 144, 143, 126, 150, 85, 58, 30, 32.21424 + 27, 33, 33, 32, 51, 57, 52, 52, 255, 255, 90, 94, 92, 76, 63, 88, 32.21425 + 144, 185, 194, 183, 166, 159, 165, 147, 133, 118, 104, 93, 67, 81, 94, 117, 32.21426 + 142, 161, 172, 175, 172, 182, 174, 169, 168, 166, 162, 161, 163, 171, 163, 158, 32.21427 + 157, 155, 153, 156, 159, 148, 157, 157, 146, 138, 135, 138, 144, 147, 153, 138, 32.21428 + 133, 146, 148, 144, 157, 166, 183, 200, 198, 187, 179, 184, 194, 172, 167, 159, 32.21429 + 140, 131, 128, 132, 132, 140, 148, 155, 149, 138, 133, 137, 142, 142, 146, 138, 32.21430 + 131, 138, 142, 141, 145, 148, 151, 149, 146, 144, 146, 143, 138, 144, 167, 109, 32.21431 + 74, 36, 32, 37, 47, 71, 93, 102, 91, 81, 255, 255, 80, 78, 77, 79, 32.21432 + 67, 99, 162, 195, 190, 179, 169, 177, 183, 163, 147, 134, 118, 99, 62, 76, 32.21433 + 99, 128, 150, 162, 170, 173, 174, 181, 175, 174, 176, 177, 174, 173, 175, 179, 32.21434 + 170, 161, 156, 157, 160, 163, 162, 149, 146, 133, 131, 149, 154, 145, 141, 146, 32.21435 + 149, 146, 146, 155, 158, 159, 166, 168, 177, 188, 195, 196, 193, 190, 189, 192, 32.21436 + 193, 191, 164, 151, 135, 142, 144, 151, 147, 149, 151, 146, 136, 140, 152, 143, 32.21437 + 148, 142, 137, 151, 156, 153, 155, 158, 161, 160, 155, 151, 149, 146, 139, 148, 32.21438 + 164, 131, 77, 48, 53, 60, 88, 127, 140, 141, 123, 105, 255, 255, 70, 66, 32.21439 + 62, 75, 64, 100, 166, 191, 175, 164, 166, 190, 200, 182, 163, 147, 127, 101, 32.21440 + 58, 67, 98, 135, 156, 163, 169, 175, 178, 179, 175, 175, 178, 179, 177, 175, 32.21441 + 176, 173, 171, 165, 155, 156, 163, 164, 157, 144, 157, 153, 149, 160, 157, 146, 32.21442 + 148, 162, 163, 171, 171, 161, 162, 171, 173, 167, 171, 181, 192, 201, 201, 195, 32.21443 + 189, 190, 192, 194, 163, 152, 131, 141, 142, 159, 155, 155, 155, 152, 145, 145, 32.21444 + 150, 149, 159, 158, 154, 163, 162, 156, 158, 160, 165, 165, 160, 155, 156, 156, 32.21445 + 153, 147, 148, 140, 71, 60, 76, 85, 126, 156, 159, 154, 141, 255, 255, 255, 32.21446 + 255, 52, 47, 68, 56, 97, 171, 196, 178, 172, 182, 189, 205, 191, 172, 154, 32.21447 + 133, 105, 57, 59, 96, 138, 159, 167, 172, 179, 184, 179, 173, 169, 171, 172, 32.21448 + 171, 171, 175, 170, 178, 174, 162, 162, 169, 167, 154, 143, 187, 208, 194, 175, 32.21449 + 149, 145, 169, 182, 182, 192, 186, 158, 155, 172, 173, 163, 173, 185, 195, 199, 32.21450 + 197, 194, 192, 187, 187, 194, 163, 157, 138, 149, 148, 164, 170, 171, 170, 168, 32.21451 + 164, 157, 150, 156, 172, 175, 171, 169, 162, 154, 156, 169, 172, 171, 164, 157, 32.21452 + 159, 160, 162, 160, 147, 151, 66, 65, 86, 91, 138, 157, 154, 152, 151, 255, 32.21453 + 255, 255, 255, 49, 56, 58, 47, 94, 162, 198, 186, 165, 182, 178, 189, 186, 32.21454 + 190, 169, 130, 102, 72, 69, 104, 143, 164, 171, 172, 175, 179, 171, 176, 175, 32.21455 + 169, 169, 177, 180, 180, 182, 182, 176, 171, 173, 176, 173, 163, 166, 203, 228, 32.21456 + 211, 178, 162, 167, 175, 185, 189, 188, 176, 161, 158, 168, 182, 178, 189, 196, 32.21457 + 196, 197, 198, 199, 197, 187, 187, 183, 174, 164, 159, 162, 165, 161, 161, 168, 32.21458 + 173, 170, 163, 165, 172, 164, 172, 174, 168, 161, 159, 161, 161, 172, 175, 172, 32.21459 + 166, 159, 155, 157, 163, 162, 164, 153, 73, 92, 99, 121, 126, 148, 161, 173, 32.21460 + 161, 255, 255, 255, 255, 48, 61, 49, 40, 84, 147, 189, 187, 166, 173, 177, 32.21461 + 185, 178, 178, 158, 123, 100, 74, 84, 107, 136, 154, 166, 171, 172, 171, 174, 32.21462 + 179, 179, 174, 175, 180, 186, 185, 185, 185, 184, 180, 182, 185, 182, 173, 178, 32.21463 + 186, 186, 177, 174, 182, 187, 185, 181, 185, 185, 178, 169, 168, 177, 188, 174, 32.21464 + 182, 189, 190, 191, 193, 194, 191, 184, 186, 187, 183, 176, 170, 167, 166, 157, 32.21465 + 153, 154, 158, 160, 162, 172, 183, 165, 171, 172, 167, 162, 164, 168, 172, 190, 32.21466 + 188, 181, 173, 166, 161, 159, 160, 164, 161, 157, 92, 113, 118, 140, 149, 161, 32.21467 + 185, 197, 255, 255, 255, 255, 255, 44, 61, 53, 43, 75, 126, 174, 194, 178, 32.21468 + 176, 180, 185, 174, 172, 157, 130, 117, 95, 108, 118, 132, 145, 161, 170, 170, 32.21469 + 164, 176, 180, 181, 178, 179, 183, 189, 189, 187, 187, 189, 188, 191, 193, 191, 32.21470 + 183, 179, 177, 172, 173, 187, 201, 197, 184, 175, 177, 178, 176, 173, 174, 178, 32.21471 + 182, 171, 180, 186, 187, 190, 193, 192, 189, 185, 185, 184, 182, 180, 176, 173, 32.21472 + 170, 174, 167, 163, 164, 165, 167, 173, 180, 169, 173, 174, 169, 168, 173, 180, 32.21473 + 184, 197, 191, 181, 173, 170, 167, 163, 159, 174, 161, 157, 112, 131, 131, 146, 32.21474 + 156, 175, 190, 212, 255, 255, 255, 255, 255, 42, 56, 59, 45, 61, 95, 152, 32.21475 + 193, 186, 179, 185, 188, 174, 175, 167, 152, 149, 135, 130, 132, 138, 148, 159, 32.21476 + 170, 169, 164, 174, 176, 178, 178, 179, 182, 188, 190, 188, 188, 192, 193, 195, 32.21477 + 195, 192, 188, 185, 187, 189, 185, 189, 191, 192, 185, 178, 176, 178, 175, 177, 32.21478 + 174, 175, 174, 179, 185, 192, 192, 193, 195, 193, 189, 190, 185, 178, 175, 175, 32.21479 + 177, 182, 181, 184, 181, 183, 183, 185, 180, 178, 174, 179, 181, 184, 179, 180, 32.21480 + 183, 190, 192, 194, 191, 184, 179, 175, 171, 169, 167, 176, 149, 149, 126, 145, 32.21481 + 143, 148, 153, 184, 174, 255, 255, 255, 255, 255, 255, 186, 56, 51, 37, 46, 32.21482 + 69, 127, 182, 180, 171, 186, 189, 172, 175, 175, 168, 171, 161, 141, 145, 148, 32.21483 + 151, 158, 166, 167, 165, 170, 174, 177, 179, 181, 183, 188, 192, 192, 192, 195, 32.21484 + 197, 197, 194, 192, 190, 199, 200, 197, 184, 177, 178, 188, 194, 184, 181, 180, 32.21485 + 180, 182, 180, 178, 174, 189, 194, 197, 197, 197, 198, 194, 189, 193, 188, 181, 32.21486 + 179, 180, 183, 187, 188, 175, 178, 184, 188, 192, 192, 189, 183, 188, 191, 194, 32.21487 + 190, 190, 192, 193, 192, 197, 197, 194, 187, 179, 175, 176, 180, 170, 137, 142, 32.21488 + 142, 161, 162, 160, 162, 189, 158, 255, 255, 255, 255, 255, 255, 255, 49, 43, 32.21489 + 34, 43, 61, 118, 175, 174, 164, 185, 186, 169, 172, 175, 172, 177, 167, 148, 32.21490 + 150, 150, 150, 154, 162, 166, 167, 174, 176, 180, 185, 188, 188, 193, 198, 200, 32.21491 + 198, 201, 203, 202, 197, 196, 197, 199, 198, 197, 192, 192, 190, 192, 190, 183, 32.21492 + 178, 178, 177, 182, 181, 181, 178, 192, 196, 198, 198, 199, 199, 195, 188, 190, 32.21493 + 191, 191, 190, 189, 188, 188, 188, 180, 183, 185, 183, 187, 191, 194, 193, 193, 32.21494 + 196, 198, 195, 195, 196, 195, 191, 200, 202, 197, 189, 177, 169, 172, 175, 173, 32.21495 + 145, 158, 166, 172, 171, 167, 165, 180, 255, 255, 255, 255, 255, 255, 255, 255, 32.21496 + 183, 49, 37, 40, 52, 105, 162, 171, 169, 186, 188, 171, 175, 179, 177, 183, 32.21497 + 173, 156, 153, 148, 145, 151, 163, 167, 169, 178, 179, 183, 191, 194, 193, 198, 32.21498 + 205, 206, 202, 205, 208, 206, 200, 201, 205, 197, 196, 199, 202, 204, 199, 192, 32.21499 + 185, 181, 177, 175, 174, 177, 178, 181, 181, 191, 196, 198, 198, 201, 203, 200, 32.21500 + 193, 191, 194, 194, 191, 189, 186, 188, 188, 195, 197, 197, 187, 186, 188, 195, 32.21501 + 194, 198, 198, 200, 196, 200, 202, 204, 201, 203, 201, 193, 184, 174, 168, 166, 32.21502 + 166, 172, 156, 179, 188, 172, 169, 166, 167, 167, 255, 255, 255, 255, 255, 255, 32.21503 + 255, 255, 255, 56, 37, 33, 37, 85, 148, 165, 175, 189, 192, 178, 183, 189, 32.21504 + 187, 193, 184, 166, 157, 146, 141, 151, 164, 171, 173, 179, 180, 185, 193, 197, 32.21505 + 195, 200, 208, 207, 203, 205, 209, 207, 202, 204, 210, 204, 200, 195, 190, 184, 32.21506 + 182, 186, 192, 187, 183, 179, 177, 177, 180, 182, 184, 191, 195, 197, 199, 203, 32.21507 + 206, 204, 196, 195, 194, 190, 182, 177, 178, 186, 193, 192, 199, 201, 193, 188, 32.21508 + 191, 196, 196, 201, 202, 200, 198, 202, 209, 213, 212, 209, 202, 192, 184, 178, 32.21509 + 174, 169, 165, 156, 152, 185, 194, 169, 166, 167, 174, 163, 255, 255, 255, 255, 32.21510 + 255, 255, 255, 255, 255, 184, 30, 32, 44, 61, 95, 143, 179, 190, 181, 183, 32.21511 + 192, 188, 185, 187, 185, 168, 158, 148, 144, 150, 158, 168, 173, 178, 183, 187, 32.21512 + 190, 194, 198, 205, 209, 209, 210, 214, 213, 209, 206, 205, 205, 196, 193, 188, 32.21513 + 184, 185, 188, 187, 185, 177, 175, 176, 181, 188, 190, 187, 183, 188, 199, 207, 32.21514 + 205, 201, 200, 202, 200, 195, 195, 187, 174, 171, 180, 191, 197, 193, 191, 189, 32.21515 + 190, 192, 195, 195, 195, 202, 201, 201, 202, 205, 210, 215, 218, 213, 206, 196, 32.21516 + 189, 185, 180, 171, 165, 159, 162, 177, 185, 176, 170, 171, 163, 178, 255, 255, 32.21517 + 255, 255, 255, 255, 255, 255, 255, 255, 42, 43, 41, 53, 85, 122, 152, 188, 32.21518 + 183, 184, 192, 191, 186, 185, 182, 175, 163, 153, 147, 152, 158, 163, 167, 176, 32.21519 + 181, 186, 190, 195, 199, 206, 209, 206, 208, 212, 210, 206, 202, 201, 200, 200, 32.21520 + 195, 189, 184, 183, 183, 182, 180, 167, 165, 166, 172, 180, 185, 185, 183, 197, 32.21521 + 195, 196, 203, 211, 212, 207, 199, 200, 198, 188, 177, 175, 178, 180, 176, 177, 32.21522 + 179, 183, 187, 190, 192, 192, 193, 195, 196, 199, 202, 205, 208, 209, 210, 208, 32.21523 + 204, 197, 189, 180, 171, 165, 161, 159, 161, 173, 179, 177, 177, 174, 156, 255, 32.21524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 39, 37, 51, 65, 100, 32.21525 + 154, 178, 178, 181, 188, 191, 189, 183, 177, 180, 167, 155, 149, 154, 158, 159, 32.21526 + 159, 170, 176, 183, 188, 193, 197, 203, 206, 205, 207, 210, 208, 203, 198, 196, 32.21527 + 195, 194, 191, 187, 184, 181, 177, 172, 169, 164, 164, 167, 174, 180, 182, 179, 32.21528 + 176, 178, 172, 176, 192, 205, 203, 197, 194, 194, 188, 175, 165, 165, 170, 171, 32.21529 + 167, 164, 170, 179, 184, 185, 184, 184, 185, 187, 190, 195, 199, 202, 202, 201, 32.21530 + 201, 199, 199, 194, 185, 174, 164, 161, 161, 159, 163, 173, 176, 178, 186, 174, 32.21531 + 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 36, 53, 66, 32.21532 + 43, 68, 147, 167, 178, 181, 187, 197, 196, 185, 182, 177, 164, 152, 149, 154, 32.21533 + 157, 157, 154, 166, 172, 179, 184, 189, 191, 196, 197, 205, 206, 209, 206, 200, 32.21534 + 194, 192, 190, 184, 184, 186, 189, 186, 178, 171, 168, 164, 165, 168, 172, 172, 32.21535 + 168, 160, 154, 146, 147, 163, 184, 190, 181, 181, 192, 185, 174, 157, 147, 145, 32.21536 + 151, 160, 163, 167, 174, 182, 184, 180, 177, 178, 180, 184, 186, 190, 194, 196, 32.21537 + 197, 196, 193, 192, 189, 187, 180, 171, 166, 161, 161, 154, 165, 178, 179, 178, 32.21538 + 184, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 32.21539 + 64, 71, 36, 42, 105, 161, 182, 185, 188, 201, 202, 189, 185, 169, 160, 149, 32.21540 + 148, 152, 156, 156, 157, 166, 172, 178, 182, 185, 186, 189, 191, 200, 201, 202, 32.21541 + 198, 192, 187, 185, 184, 184, 181, 182, 185, 184, 180, 179, 183, 169, 166, 162, 32.21542 + 157, 153, 149, 145, 142, 141, 140, 158, 179, 185, 175, 172, 181, 171, 163, 151, 32.21543 + 141, 135, 138, 149, 157, 174, 179, 183, 181, 176, 174, 176, 180, 182, 182, 183, 32.21544 + 184, 186, 188, 190, 191, 193, 185, 178, 174, 170, 166, 159, 154, 146, 165, 183, 32.21545 + 180, 173, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21546 + 255, 255, 38, 44, 46, 56, 85, 146, 179, 184, 181, 197, 196, 182, 182, 168, 32.21547 + 161, 153, 149, 151, 155, 157, 160, 167, 172, 177, 179, 181, 182, 186, 188, 193, 32.21548 + 192, 192, 186, 180, 176, 176, 176, 182, 174, 170, 173, 173, 172, 180, 192, 188, 32.21549 + 180, 168, 157, 152, 153, 157, 159, 155, 146, 148, 165, 181, 177, 166, 159, 147, 32.21550 + 147, 149, 150, 149, 149, 155, 164, 177, 179, 180, 178, 176, 176, 180, 184, 181, 32.21551 + 179, 178, 177, 178, 182, 185, 187, 192, 182, 174, 167, 163, 158, 150, 142, 142, 32.21552 + 163, 182, 180, 168, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21553 + 255, 255, 255, 255, 255, 180, 58, 75, 80, 127, 169, 177, 173, 190, 192, 181, 32.21554 + 186, 175, 170, 162, 155, 151, 153, 156, 162, 162, 167, 170, 173, 175, 177, 182, 32.21555 + 185, 188, 186, 184, 177, 171, 169, 170, 172, 171, 165, 165, 171, 170, 165, 170, 32.21556 + 181, 189, 184, 176, 168, 163, 162, 166, 169, 159, 149, 142, 149, 162, 167, 160, 32.21557 + 150, 141, 141, 146, 155, 161, 161, 164, 170, 175, 174, 174, 173, 174, 176, 178, 32.21558 + 179, 175, 174, 172, 171, 172, 175, 179, 180, 182, 175, 169, 161, 154, 146, 139, 32.21559 + 135, 149, 163, 180, 181, 171, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21560 + 255, 255, 255, 255, 255, 255, 255, 255, 190, 65, 57, 115, 167, 178, 172, 193, 32.21561 + 199, 190, 200, 183, 179, 171, 161, 153, 152, 156, 163, 155, 158, 161, 165, 167, 32.21562 + 172, 176, 182, 188, 185, 182, 174, 168, 167, 170, 173, 167, 168, 177, 189, 186, 32.21563 + 171, 166, 170, 169, 171, 172, 171, 166, 159, 154, 150, 150, 149, 146, 143, 146, 32.21564 + 155, 161, 163, 162, 154, 150, 155, 160, 159, 159, 162, 172, 171, 170, 171, 172, 32.21565 + 173, 173, 171, 171, 170, 169, 169, 170, 172, 174, 175, 170, 168, 165, 158, 149, 32.21566 + 142, 137, 136, 156, 163, 176, 183, 175, 255, 255, 255, 255, 255, 255, 255, 255, 32.21567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 82, 146, 190, 32.21568 + 187, 171, 180, 191, 194, 190, 190, 174, 159, 159, 154, 148, 154, 149, 156, 160, 32.21569 + 160, 159, 165, 174, 182, 180, 176, 168, 159, 162, 168, 168, 161, 168, 168, 172, 32.21570 + 180, 178, 169, 170, 178, 162, 166, 169, 170, 166, 163, 162, 160, 162, 154, 155, 32.21571 + 166, 170, 161, 154, 153, 149, 150, 153, 154, 156, 156, 157, 158, 170, 168, 167, 32.21572 + 165, 165, 166, 167, 167, 169, 168, 168, 167, 166, 165, 164, 162, 161, 157, 156, 32.21573 + 153, 145, 137, 139, 143, 157, 202, 177, 194, 199, 255, 255, 255, 255, 255, 255, 32.21574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 32.21575 + 120, 166, 187, 186, 184, 191, 197, 189, 188, 169, 149, 147, 147, 144, 148, 147, 32.21576 + 154, 160, 161, 160, 163, 172, 177, 175, 167, 155, 147, 150, 158, 160, 155, 163, 32.21577 + 164, 167, 169, 167, 163, 166, 170, 171, 171, 170, 168, 167, 169, 172, 176, 164, 32.21578 + 159, 158, 165, 169, 167, 163, 160, 156, 155, 155, 155, 156, 157, 159, 161, 161, 32.21579 + 165, 167, 165, 162, 158, 158, 160, 164, 163, 164, 163, 162, 161, 161, 160, 154, 32.21580 + 152, 151, 147, 137, 131, 136, 145, 174, 197, 180, 177, 255, 255, 255, 255, 255, 32.21581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21582 + 255, 255, 255, 138, 173, 183, 178, 183, 198, 200, 198, 174, 143, 141, 146, 146, 32.21583 + 147, 146, 153, 160, 162, 161, 161, 170, 175, 174, 164, 150, 144, 149, 158, 161, 32.21584 + 161, 169, 174, 176, 173, 172, 175, 180, 180, 170, 169, 170, 170, 169, 172, 178, 32.21585 + 182, 170, 170, 166, 165, 169, 175, 175, 171, 171, 168, 167, 166, 167, 168, 170, 32.21586 + 172, 161, 170, 175, 173, 165, 158, 157, 159, 161, 160, 160, 159, 159, 158, 159, 32.21587 + 158, 148, 148, 148, 142, 129, 126, 138, 152, 184, 175, 173, 185, 255, 255, 255, 32.21588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21589 + 255, 255, 255, 255, 255, 255, 255, 149, 154, 171, 193, 198, 195, 164, 135, 135, 32.21590 + 147, 148, 147, 150, 154, 158, 159, 158, 158, 167, 177, 173, 162, 150, 146, 155, 32.21591 + 165, 168, 166, 160, 170, 173, 167, 167, 173, 179, 176, 166, 169, 174, 176, 178, 32.21592 + 179, 179, 178, 180, 182, 177, 168, 171, 181, 187, 182, 180, 180, 179, 177, 176, 32.21593 + 177, 176, 177, 170, 173, 177, 175, 170, 165, 162, 162, 161, 160, 159, 158, 157, 32.21594 + 157, 157, 157, 148, 149, 150, 142, 131, 130, 145, 163, 194, 156, 165, 255, 255, 32.21595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 158, 150, 145, 120, 32.21597 + 103, 120, 143, 147, 147, 157, 156, 154, 155, 153, 153, 166, 180, 174, 162, 152, 32.21598 + 151, 160, 165, 163, 159, 154, 165, 169, 164, 165, 172, 177, 173, 170, 172, 175, 32.21599 + 178, 180, 180, 178, 177, 187, 192, 186, 176, 177, 188, 193, 188, 183, 182, 181, 32.21600 + 179, 178, 177, 176, 175, 176, 172, 169, 169, 170, 169, 166, 163, 159, 157, 155, 32.21601 + 153, 152, 152, 153, 152, 151, 150, 150, 145, 136, 135, 148, 165, 195, 146, 255, 32.21602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21604 + 195, 60, 70, 110, 140, 147, 151, 160, 157, 152, 151, 149, 149, 164, 180, 181, 32.21605 + 167, 157, 159, 166, 164, 157, 151, 156, 160, 162, 157, 158, 161, 167, 169, 170, 32.21606 + 167, 162, 161, 163, 166, 167, 169, 178, 183, 182, 179, 180, 183, 186, 184, 183, 32.21607 + 182, 178, 176, 174, 172, 172, 171, 177, 169, 162, 161, 165, 167, 165, 160, 152, 32.21608 + 151, 149, 148, 148, 150, 152, 152, 154, 150, 147, 144, 138, 136, 141, 149, 158, 32.21609 + 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21611 + 255, 255, 255, 255, 56, 111, 143, 147, 151, 161, 154, 152, 152, 149, 148, 161, 32.21612 + 178, 187, 171, 159, 163, 170, 167, 158, 151, 143, 137, 133, 129, 127, 126, 133, 32.21613 + 143, 154, 150, 146, 145, 147, 149, 150, 150, 154, 158, 164, 170, 172, 168, 165, 32.21614 + 166, 175, 171, 165, 159, 156, 157, 160, 162, 162, 157, 151, 149, 150, 150, 147, 32.21615 + 145, 145, 145, 144, 145, 146, 150, 154, 157, 159, 150, 144, 143, 139, 132, 126, 32.21616 + 123, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21618 + 255, 255, 255, 255, 255, 255, 188, 115, 143, 142, 145, 158, 153, 153, 154, 151, 32.21619 + 146, 157, 176, 180, 165, 154, 158, 166, 166, 159, 154, 144, 133, 123, 120, 114, 32.21620 + 110, 120, 135, 141, 140, 141, 143, 146, 145, 140, 136, 131, 132, 142, 157, 160, 32.21621 + 150, 145, 148, 161, 154, 144, 136, 132, 135, 141, 146, 139, 139, 136, 132, 128, 32.21622 + 125, 123, 123, 142, 142, 143, 143, 148, 154, 160, 163, 162, 150, 142, 141, 139, 32.21623 + 129, 116, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 117, 135, 143, 155, 157, 155, 159, 32.21626 + 167, 156, 137, 140, 161, 173, 164, 161, 167, 170, 164, 163, 168, 163, 142, 128, 32.21627 + 127, 122, 113, 120, 136, 143, 161, 164, 148, 145, 157, 158, 144, 146, 166, 174, 32.21628 + 159, 147, 149, 152, 146, 168, 155, 139, 129, 128, 132, 135, 137, 127, 126, 125, 32.21629 + 118, 100, 89, 104, 127, 144, 142, 144, 155, 160, 156, 154, 157, 161, 151, 143, 32.21630 + 143, 139, 128, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 139, 145, 153, 150, 32.21633 + 151, 156, 162, 152, 135, 139, 156, 171, 162, 162, 169, 172, 168, 171, 176, 167, 32.21634 + 153, 141, 139, 137, 135, 144, 156, 163, 179, 181, 167, 166, 179, 180, 169, 180, 32.21635 + 208, 218, 191, 160, 156, 173, 186, 191, 179, 163, 155, 151, 150, 149, 150, 135, 32.21636 + 130, 125, 119, 108, 102, 118, 141, 153, 150, 150, 158, 160, 158, 157, 158, 156, 32.21637 + 145, 139, 138, 134, 116, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 146, 148, 32.21640 + 152, 144, 145, 151, 157, 151, 138, 139, 150, 170, 165, 167, 173, 174, 170, 173, 32.21641 + 181, 168, 162, 154, 148, 147, 152, 159, 164, 171, 184, 187, 178, 182, 196, 200, 32.21642 + 191, 195, 225, 237, 211, 178, 175, 197, 214, 210, 200, 187, 177, 172, 168, 165, 32.21643 + 163, 151, 145, 136, 130, 127, 129, 145, 164, 165, 162, 159, 163, 164, 161, 158, 32.21644 + 157, 147, 140, 135, 135, 129, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 32.21647 + 152, 149, 148, 149, 148, 152, 158, 159, 151, 148, 151, 166, 166, 172, 175, 173, 32.21648 + 169, 170, 176, 169, 172, 167, 157, 154, 160, 160, 155, 164, 175, 178, 176, 181, 32.21649 + 195, 201, 197, 195, 212, 220, 207, 192, 192, 201, 205, 211, 202, 190, 182, 176, 32.21650 + 173, 170, 171, 163, 155, 146, 146, 146, 152, 163, 176, 172, 168, 168, 167, 167, 32.21651 + 161, 157, 153, 141, 137, 134, 135, 126, 155, 255, 255, 255, 255, 255, 255, 255, 32.21652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21654 + 255, 147, 155, 147, 143, 158, 154, 153, 160, 167, 166, 159, 153, 156, 161, 171, 32.21655 + 175, 174, 168, 168, 170, 174, 181, 180, 171, 166, 169, 163, 152, 164, 169, 170, 32.21656 + 171, 176, 186, 190, 188, 199, 206, 206, 197, 190, 192, 194, 192, 207, 198, 187, 32.21657 + 175, 170, 169, 170, 172, 165, 158, 152, 155, 158, 163, 167, 171, 173, 172, 172, 32.21658 + 170, 168, 161, 154, 145, 142, 138, 135, 129, 115, 255, 255, 255, 255, 255, 255, 32.21659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21661 + 255, 255, 255, 157, 158, 148, 142, 151, 151, 150, 151, 157, 161, 156, 148, 148, 32.21662 + 154, 165, 172, 175, 173, 171, 170, 171, 178, 180, 175, 174, 174, 167, 158, 168, 32.21663 + 167, 167, 167, 170, 172, 172, 171, 187, 195, 195, 186, 179, 182, 193, 199, 200, 32.21664 + 193, 183, 174, 167, 166, 169, 171, 167, 164, 162, 167, 173, 174, 171, 166, 173, 32.21665 + 173, 171, 167, 162, 159, 150, 141, 142, 139, 136, 124, 153, 255, 255, 255, 255, 32.21666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21668 + 255, 255, 255, 255, 255, 164, 161, 149, 143, 141, 147, 152, 147, 146, 150, 152, 32.21669 + 148, 152, 155, 163, 168, 174, 176, 175, 172, 171, 173, 177, 176, 175, 174, 173, 32.21670 + 170, 174, 170, 168, 169, 171, 168, 164, 164, 174, 180, 182, 177, 173, 178, 188, 32.21671 + 195, 188, 184, 179, 171, 169, 168, 170, 171, 172, 171, 173, 176, 182, 182, 176, 32.21672 + 168, 175, 174, 168, 161, 156, 156, 151, 143, 134, 137, 136, 120, 255, 255, 255, 32.21673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21675 + 255, 255, 255, 255, 255, 255, 255, 169, 162, 148, 143, 138, 154, 164, 154, 145, 32.21676 + 147, 155, 159, 159, 161, 162, 166, 173, 177, 175, 172, 178, 177, 177, 179, 179, 32.21677 + 178, 178, 183, 179, 175, 173, 177, 179, 175, 172, 172, 177, 176, 176, 178, 182, 32.21678 + 183, 176, 168, 172, 171, 172, 170, 169, 169, 170, 171, 170, 170, 173, 177, 182, 32.21679 + 182, 176, 168, 175, 174, 166, 154, 151, 153, 152, 144, 126, 132, 134, 120, 255, 32.21680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 170, 160, 144, 143, 149, 155, 32.21683 + 152, 146, 145, 155, 165, 155, 156, 160, 167, 176, 178, 174, 169, 179, 180, 179, 32.21684 + 180, 180, 181, 182, 184, 177, 182, 185, 182, 178, 174, 175, 177, 180, 183, 185, 32.21685 + 186, 183, 177, 171, 167, 160, 163, 167, 171, 173, 173, 171, 169, 172, 172, 174, 32.21686 + 177, 182, 181, 175, 169, 175, 166, 157, 154, 155, 151, 143, 134, 135, 126, 115, 32.21687 + 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 164, 165, 154, 145, 138, 32.21690 + 142, 148, 150, 150, 149, 149, 148, 152, 152, 157, 163, 171, 173, 173, 172, 169, 32.21691 + 172, 173, 175, 178, 179, 180, 180, 175, 178, 179, 176, 173, 171, 173, 176, 182, 32.21692 + 182, 182, 182, 181, 179, 177, 175, 172, 172, 173, 173, 174, 174, 174, 174, 176, 32.21693 + 174, 175, 177, 179, 175, 165, 158, 161, 159, 159, 159, 157, 150, 143, 134, 130, 32.21694 + 128, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 161, 157, 153, 32.21697 + 155, 144, 140, 140, 143, 149, 149, 145, 138, 149, 151, 156, 158, 162, 165, 170, 32.21698 + 174, 170, 172, 176, 178, 179, 180, 182, 182, 181, 183, 185, 182, 178, 177, 179, 32.21699 + 182, 184, 182, 180, 179, 179, 180, 182, 183, 183, 180, 177, 175, 174, 176, 178, 32.21700 + 179, 182, 181, 180, 180, 181, 176, 166, 158, 154, 155, 156, 151, 144, 134, 129, 32.21701 + 126, 126, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 166, 172, 32.21704 + 159, 150, 150, 154, 145, 137, 135, 142, 146, 146, 144, 150, 153, 158, 157, 156, 32.21705 + 159, 167, 175, 179, 180, 179, 180, 180, 181, 182, 184, 189, 191, 192, 191, 188, 32.21706 + 185, 184, 185, 182, 180, 177, 175, 175, 176, 178, 180, 181, 180, 177, 174, 174, 32.21707 + 176, 178, 179, 182, 178, 175, 174, 176, 173, 169, 164, 160, 158, 153, 146, 138, 32.21708 + 132, 130, 129, 121, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 32.21711 + 180, 190, 171, 150, 137, 150, 144, 138, 136, 141, 146, 150, 151, 152, 156, 161, 32.21712 + 158, 155, 156, 163, 172, 177, 177, 174, 173, 173, 175, 178, 183, 183, 186, 188, 32.21713 + 189, 186, 181, 177, 175, 176, 176, 174, 172, 171, 170, 169, 169, 174, 174, 174, 32.21714 + 175, 175, 176, 177, 177, 178, 171, 165, 160, 162, 165, 165, 163, 165, 161, 156, 32.21715 + 150, 148, 145, 141, 138, 108, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21718 + 84, 137, 172, 181, 175, 162, 150, 139, 139, 140, 141, 145, 147, 150, 151, 152, 32.21719 + 156, 161, 160, 158, 157, 162, 168, 174, 172, 172, 171, 173, 178, 182, 185, 178, 32.21720 + 182, 184, 184, 182, 178, 174, 171, 175, 175, 174, 172, 170, 167, 164, 163, 170, 32.21721 + 172, 174, 177, 179, 179, 179, 178, 184, 173, 164, 160, 161, 162, 163, 160, 160, 32.21722 + 156, 152, 148, 143, 137, 129, 122, 96, 144, 255, 255, 255, 255, 255, 255, 255, 32.21723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21725 + 255, 255, 107, 153, 167, 169, 174, 177, 171, 150, 147, 144, 143, 146, 147, 148, 32.21726 + 148, 147, 151, 156, 159, 160, 160, 161, 164, 174, 174, 176, 177, 178, 182, 184, 32.21727 + 185, 183, 183, 183, 183, 183, 182, 183, 181, 182, 183, 181, 179, 176, 174, 172, 32.21728 + 171, 176, 178, 180, 182, 184, 185, 185, 183, 187, 178, 170, 166, 166, 165, 164, 32.21729 + 162, 155, 151, 144, 136, 129, 127, 127, 127, 122, 255, 255, 255, 255, 255, 255, 32.21730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21732 + 255, 255, 255, 255, 122, 176, 188, 182, 181, 178, 168, 175, 162, 148, 141, 143, 32.21733 + 146, 148, 147, 142, 146, 153, 158, 162, 162, 162, 162, 173, 176, 178, 180, 180, 32.21734 + 180, 177, 175, 187, 185, 182, 181, 184, 186, 189, 190, 194, 192, 191, 186, 186, 32.21735 + 183, 185, 183, 186, 184, 186, 185, 189, 188, 191, 189, 180, 172, 170, 167, 168, 32.21736 + 166, 164, 160, 154, 150, 142, 132, 128, 137, 155, 170, 255, 255, 255, 255, 255, 32.21737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21739 + 255, 255, 255, 255, 255, 255, 131, 179, 187, 184, 177, 174, 177, 177, 171, 161, 32.21740 + 149, 141, 137, 138, 140, 137, 142, 146, 145, 150, 159, 163, 162, 164, 170, 176, 32.21741 + 180, 181, 182, 182, 182, 194, 192, 188, 185, 186, 185, 189, 190, 192, 188, 184, 32.21742 + 183, 187, 188, 188, 186, 186, 187, 187, 185, 189, 194, 196, 191, 186, 180, 173, 32.21743 + 162, 159, 161, 162, 157, 145, 157, 144, 126, 128, 129, 131, 144, 255, 255, 255, 32.21744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21746 + 255, 255, 255, 255, 255, 255, 255, 255, 134, 176, 181, 180, 179, 176, 177, 179, 32.21747 + 174, 167, 155, 145, 139, 138, 139, 139, 143, 146, 146, 152, 161, 166, 165, 166, 32.21748 + 171, 175, 177, 180, 181, 182, 184, 193, 191, 188, 187, 186, 187, 188, 191, 190, 32.21749 + 190, 187, 186, 186, 187, 188, 187, 187, 189, 187, 185, 187, 192, 192, 186, 180, 32.21750 + 177, 171, 161, 158, 159, 155, 150, 140, 146, 134, 114, 109, 112, 120, 172, 255, 32.21751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 183, 180, 182, 190, 188, 32.21754 + 180, 178, 179, 175, 165, 152, 142, 139, 140, 145, 146, 145, 143, 145, 151, 155, 32.21755 + 156, 166, 169, 172, 174, 176, 178, 180, 184, 188, 187, 186, 186, 185, 185, 185, 32.21756 + 187, 188, 189, 189, 187, 185, 184, 185, 186, 188, 189, 187, 183, 184, 187, 186, 32.21757 + 181, 172, 173, 169, 164, 162, 159, 152, 143, 128, 129, 131, 121, 111, 117, 133, 32.21758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 191, 181, 184, 32.21761 + 196, 192, 182, 177, 180, 180, 173, 160, 150, 146, 146, 146, 145, 142, 139, 140, 32.21762 + 143, 147, 149, 155, 161, 167, 171, 173, 174, 177, 179, 180, 182, 181, 181, 181, 32.21763 + 181, 182, 181, 183, 185, 187, 185, 181, 178, 179, 182, 184, 185, 182, 178, 179, 32.21764 + 181, 180, 176, 164, 168, 170, 166, 164, 159, 147, 136, 116, 112, 125, 128, 115, 32.21765 + 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 193, 32.21768 + 180, 181, 192, 187, 178, 175, 180, 182, 178, 169, 160, 155, 154, 143, 140, 138, 32.21769 + 137, 138, 141, 146, 149, 140, 147, 155, 162, 166, 167, 170, 171, 174, 175, 175, 32.21770 + 175, 176, 176, 178, 178, 179, 183, 186, 185, 181, 178, 178, 180, 179, 179, 177, 32.21771 + 173, 173, 176, 175, 170, 160, 165, 167, 163, 157, 148, 132, 118, 105, 94, 103, 32.21772 + 105, 90, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21775 + 185, 194, 184, 187, 193, 187, 182, 177, 179, 180, 178, 174, 169, 163, 162, 151, 32.21776 + 145, 140, 137, 133, 129, 129, 132, 131, 137, 146, 153, 157, 159, 163, 164, 170, 32.21777 + 170, 170, 170, 171, 172, 173, 174, 177, 179, 182, 183, 181, 179, 177, 177, 173, 32.21778 + 173, 170, 166, 166, 168, 166, 162, 158, 159, 156, 147, 138, 130, 116, 105, 96, 32.21779 + 82, 77, 73, 70, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21782 + 255, 255, 180, 191, 189, 193, 193, 189, 191, 182, 180, 177, 177, 176, 174, 169, 32.21783 + 165, 163, 155, 148, 143, 134, 124, 120, 121, 130, 134, 138, 142, 145, 148, 154, 32.21784 + 157, 161, 160, 161, 161, 163, 165, 167, 169, 169, 170, 172, 175, 177, 175, 172, 32.21785 + 169, 168, 168, 164, 158, 157, 158, 156, 152, 155, 150, 141, 127, 121, 119, 114, 32.21786 + 108, 108, 96, 79, 74, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21789 + 255, 255, 255, 255, 255, 181, 185, 190, 188, 185, 194, 186, 181, 176, 175, 177, 32.21790 + 176, 172, 167, 166, 159, 155, 155, 149, 140, 137, 140, 134, 134, 135, 135, 137, 32.21791 + 142, 149, 154, 153, 152, 151, 150, 151, 154, 158, 160, 162, 161, 163, 167, 171, 32.21792 + 171, 166, 161, 166, 166, 161, 154, 151, 152, 148, 143, 148, 141, 127, 113, 110, 32.21793 + 115, 120, 118, 127, 121, 100, 94, 156, 255, 255, 255, 255, 255, 255, 255, 255, 32.21794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21796 + 255, 255, 255, 255, 255, 255, 255, 181, 184, 184, 184, 183, 178, 183, 183, 181, 32.21797 + 179, 176, 173, 170, 168, 164, 160, 156, 156, 157, 154, 147, 140, 131, 128, 122, 32.21798 + 120, 125, 136, 150, 159, 157, 149, 138, 134, 139, 148, 153, 153, 153, 159, 160, 32.21799 + 155, 155, 160, 162, 159, 162, 168, 160, 138, 128, 134, 138, 133, 126, 113, 96, 32.21800 + 100, 118, 122, 114, 113, 117, 108, 103, 107, 255, 255, 255, 255, 255, 255, 255, 32.21801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 186, 182, 180, 175, 173, 187, 32.21804 + 186, 185, 183, 180, 177, 175, 173, 168, 164, 160, 159, 160, 158, 153, 146, 137, 32.21805 + 133, 126, 121, 120, 125, 130, 136, 142, 138, 131, 129, 132, 137, 137, 137, 136, 32.21806 + 146, 150, 146, 143, 146, 152, 153, 158, 157, 147, 132, 126, 129, 129, 123, 105, 32.21807 + 101, 91, 88, 105, 112, 111, 113, 104, 97, 95, 255, 255, 255, 255, 255, 255, 32.21808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 183, 181, 179, 32.21811 + 175, 188, 188, 187, 185, 183, 181, 178, 177, 169, 165, 160, 159, 160, 160, 157, 32.21812 + 152, 147, 143, 138, 132, 126, 122, 119, 119, 122, 120, 119, 124, 129, 130, 126, 32.21813 + 126, 130, 142, 147, 142, 136, 138, 145, 150, 151, 142, 130, 121, 117, 114, 109, 32.21814 + 105, 108, 117, 113, 102, 106, 109, 104, 102, 92, 89, 147, 255, 255, 255, 255, 32.21815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21818 + 232, 187, 187, 187, 187, 187, 184, 182, 180, 178, 177, 170, 166, 162, 161, 161, 32.21819 + 160, 160, 159, 155, 153, 151, 147, 142, 135, 127, 123, 117, 112, 113, 116, 117, 32.21820 + 113, 109, 107, 117, 124, 126, 123, 119, 118, 122, 126, 124, 115, 108, 107, 106, 32.21821 + 102, 101, 103, 120, 137, 136, 121, 120, 114, 101, 88, 81, 139, 255, 255, 255, 32.21822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21825 + 255, 255, 255, 233, 189, 185, 186, 186, 185, 184, 183, 180, 179, 174, 171, 166, 32.21826 + 164, 164, 164, 165, 166, 160, 159, 158, 157, 154, 148, 140, 133, 130, 123, 119, 32.21827 + 116, 110, 101, 95, 95, 99, 97, 95, 96, 97, 98, 97, 98, 94, 92, 93, 32.21828 + 98, 101, 103, 112, 123, 119, 135, 131, 117, 120, 120, 105, 91, 81, 255, 255, 32.21829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21832 + 255, 255, 255, 255, 255, 255, 181, 187, 188, 188, 189, 187, 187, 184, 183, 179, 32.21833 + 177, 173, 171, 169, 170, 171, 172, 163, 161, 159, 159, 157, 153, 146, 139, 141, 32.21834 + 132, 128, 129, 126, 116, 117, 122, 111, 104, 101, 105, 109, 109, 107, 107, 99, 32.21835 + 101, 101, 99, 100, 108, 120, 130, 131, 134, 121, 110, 114, 116, 106, 99, 255, 32.21836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 190, 190, 190, 189, 189, 187, 32.21840 + 186, 179, 178, 175, 173, 170, 170, 170, 172, 167, 163, 159, 158, 160, 159, 154, 32.21841 + 150, 144, 136, 136, 142, 142, 137, 141, 150, 140, 133, 130, 132, 132, 127, 125, 32.21842 + 128, 121, 121, 114, 102, 103, 117, 128, 129, 139, 138, 124, 116, 116, 110, 100, 32.21843 + 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 189, 190, 189, 32.21847 + 189, 187, 186, 176, 176, 173, 172, 168, 167, 167, 169, 171, 166, 160, 160, 164, 32.21848 + 166, 164, 161, 146, 139, 139, 143, 143, 135, 137, 146, 147, 142, 139, 137, 129, 32.21849 + 120, 118, 123, 125, 125, 113, 100, 107, 129, 140, 136, 127, 128, 125, 124, 124, 32.21850 + 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21854 + 233, 184, 183, 184, 188, 180, 177, 171, 169, 168, 168, 167, 166, 163, 165, 170, 32.21855 + 172, 173, 172, 171, 170, 156, 162, 162, 152, 150, 151, 152, 149, 141, 147, 152, 32.21856 + 148, 138, 130, 128, 129, 127, 126, 122, 120, 127, 139, 141, 135, 127, 124, 122, 32.21857 + 123, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21861 + 255, 255, 255, 230, 176, 181, 187, 184, 181, 178, 174, 174, 174, 172, 171, 167, 32.21862 + 168, 172, 173, 172, 171, 169, 167, 163, 169, 168, 159, 154, 156, 160, 161, 158, 32.21863 + 155, 151, 144, 139, 138, 144, 150, 142, 136, 124, 116, 121, 133, 139, 136, 136, 32.21864 + 127, 118, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21868 + 255, 255, 255, 255, 255, 255, 255, 229, 184, 184, 182, 180, 178, 178, 177, 175, 32.21869 + 173, 173, 174, 174, 174, 172, 170, 168, 166, 167, 170, 169, 161, 157, 159, 165, 32.21870 + 168, 163, 156, 148, 142, 139, 142, 148, 152, 140, 133, 123, 118, 125, 138, 145, 32.21871 + 144, 139, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 177, 175, 174, 175, 32.21876 + 176, 173, 169, 174, 174, 174, 173, 172, 170, 169, 167, 169, 167, 167, 164, 163, 32.21877 + 166, 167, 166, 162, 156, 151, 149, 148, 146, 143, 139, 133, 129, 125, 127, 135, 32.21878 + 143, 145, 143, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21883 + 227, 172, 172, 171, 168, 173, 172, 172, 172, 172, 171, 173, 172, 174, 168, 166, 32.21884 + 170, 175, 177, 172, 166, 167, 163, 161, 161, 161, 157, 149, 142, 142, 136, 131, 32.21885 + 134, 139, 141, 140, 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21890 + 255, 255, 255, 255, 228, 172, 171, 170, 170, 170, 170, 171, 171, 173, 173, 171, 32.21891 + 164, 162, 170, 178, 177, 171, 164, 169, 165, 161, 160, 160, 159, 154, 150, 142, 32.21892 + 133, 126, 129, 136, 140, 142, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 169, 168, 168, 169, 169, 172, 32.21898 + 172, 167, 162, 164, 170, 175, 172, 170, 170, 167, 164, 161, 159, 157, 154, 150, 32.21899 + 147, 133, 125, 122, 130, 139, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 168, 32.21905 + 168, 170, 170, 169, 167, 171, 174, 172, 170, 175, 181, 166, 167, 168, 167, 161, 32.21906 + 153, 144, 137, 129, 124, 126, 137, 180, 255, 255, 255, 255, 255, 255, 255, 255, 32.21907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21912 + 255, 255, 255, 255, 255, 225, 167, 168, 167, 166, 169, 171, 172, 167, 168, 166, 32.21913 + 155, 145, 140, 134, 127, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 68, 88, 92, 69, 106, 209, 32.21920 + 255, 255, 255, 255, 255, 255, 255, 218, 117, 51, 67, 99, 120, 124, 255, 255, 32.21921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21926 + 255, 255, 255, 196, 100, 96, 95, 99, 95, 72, 68, 59, 55, 59, 62, 56, 32.21927 + 42, 41, 54, 52, 44, 49, 52, 51, 55, 57, 57, 60, 72, 92, 107, 104, 32.21928 + 95, 62, 47, 27, 17, 15, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 26, 29, 32.21933 + 20, 9, 5, 23, 41, 74, 94, 88, 84, 84, 79, 78, 73, 63, 53, 52, 32.21934 + 52, 46, 35, 44, 48, 43, 41, 50, 51, 48, 54, 35, 37, 45, 65, 90, 32.21935 + 103, 93, 77, 66, 53, 36, 27, 24, 23, 19, 14, 70, 202, 255, 255, 255, 32.21936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 16, 18, 32.21940 + 22, 22, 18, 15, 17, 36, 46, 69, 79, 71, 68, 69, 64, 63, 60, 52, 32.21941 + 45, 44, 47, 47, 43, 49, 42, 34, 39, 48, 44, 38, 47, 38, 40, 42, 32.21942 + 47, 59, 70, 74, 71, 66, 56, 43, 37, 35, 31, 21, 13, 18, 15, 15, 32.21943 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 24, 32.21947 + 20, 21, 25, 28, 30, 36, 46, 58, 57, 64, 65, 56, 55, 59, 54, 43, 32.21948 + 41, 38, 36, 37, 43, 49, 52, 50, 42, 36, 44, 49, 32, 25, 40, 43, 32.21949 + 52, 54, 45, 37, 45, 59, 72, 62, 54, 48, 46, 45, 39, 27, 18, 16, 32.21950 + 15, 15, 17, 20, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 23, 32.21954 + 25, 29, 28, 35, 43, 48, 50, 56, 64, 66, 61, 62, 61, 51, 50, 50, 32.21955 + 41, 39, 36, 34, 33, 32, 34, 40, 47, 48, 45, 45, 54, 52, 31, 24, 32.21956 + 43, 40, 52, 59, 55, 50, 52, 56, 59, 53, 49, 45, 47, 48, 45, 33, 32.21957 + 22, 15, 15, 15, 15, 19, 23, 23, 99, 255, 255, 255, 255, 255, 255, 255, 32.21958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 32.21961 + 21, 27, 35, 36, 39, 49, 62, 67, 64, 60, 61, 60, 55, 60, 65, 59, 32.21962 + 55, 48, 34, 38, 35, 33, 36, 36, 36, 40, 45, 45, 48, 52, 60, 58, 32.21963 + 37, 33, 54, 67, 60, 51, 49, 56, 61, 55, 44, 41, 36, 33, 37, 40, 32.21964 + 39, 30, 21, 21, 19, 17, 15, 18, 24, 23, 20, 25, 96, 255, 255, 255, 32.21965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32.21968 + 28, 26, 27, 35, 44, 51, 47, 51, 60, 64, 62, 57, 55, 59, 52, 56, 32.21969 + 64, 63, 65, 62, 47, 41, 36, 37, 44, 47, 45, 45, 47, 47, 51, 51, 32.21970 + 55, 56, 43, 40, 56, 82, 70, 54, 46, 52, 60, 56, 46, 41, 34, 31, 32.21971 + 33, 38, 39, 33, 27, 31, 28, 23, 17, 19, 25, 24, 18, 24, 14, 15, 32.21972 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 32.21975 + 34, 38, 45, 46, 43, 46, 53, 63, 51, 43, 45, 51, 54, 55, 59, 66, 32.21976 + 54, 52, 57, 61, 71, 75, 66, 52, 46, 46, 54, 54, 48, 43, 43, 53, 32.21977 + 53, 47, 46, 50, 43, 39, 50, 57, 64, 68, 65, 63, 61, 59, 54, 55, 32.21978 + 47, 42, 43, 48, 50, 46, 40, 38, 35, 27, 19, 19, 25, 23, 18, 20, 32.21979 + 10, 11, 16, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21982 + 183, 35, 40, 49, 60, 66, 64, 57, 51, 60, 59, 62, 66, 63, 55, 54, 32.21983 + 59, 59, 63, 56, 46, 53, 67, 65, 50, 52, 48, 49, 67, 82, 72, 57, 32.21984 + 61, 62, 62, 62, 62, 59, 53, 46, 40, 48, 58, 66, 65, 56, 50, 52, 32.21985 + 55, 66, 61, 56, 52, 46, 42, 46, 51, 54, 46, 40, 35, 26, 20, 25, 32.21986 + 35, 29, 27, 23, 20, 18, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21989 + 255, 46, 42, 53, 54, 56, 56, 56, 58, 62, 65, 57, 53, 52, 56, 55, 32.21990 + 50, 48, 53, 54, 56, 49, 38, 42, 55, 53, 40, 49, 56, 55, 56, 66, 32.21991 + 65, 57, 57, 58, 54, 50, 48, 47, 46, 42, 39, 41, 46, 52, 57, 57, 32.21992 + 55, 51, 48, 65, 59, 52, 55, 62, 64, 56, 47, 37, 37, 42, 48, 44, 32.21993 + 32, 21, 18, 21, 20, 18, 15, 14, 15, 16, 97, 255, 255, 255, 255, 255, 32.21994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.21996 + 255, 255, 51, 52, 51, 58, 57, 52, 46, 42, 46, 56, 65, 57, 49, 43, 32.21997 + 46, 49, 47, 42, 39, 44, 46, 39, 29, 31, 41, 39, 27, 30, 46, 42, 32.21998 + 30, 38, 48, 47, 46, 53, 45, 35, 31, 31, 33, 32, 30, 36, 40, 45, 32.21999 + 45, 42, 41, 42, 43, 43, 55, 63, 60, 59, 61, 59, 55, 59, 54, 51, 32.22000 + 53, 52, 42, 27, 18, 22, 21, 18, 16, 15, 15, 16, 17, 255, 255, 255, 32.22001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22003 + 255, 255, 255, 186, 50, 51, 53, 58, 55, 50, 45, 44, 49, 57, 63, 60, 32.22004 + 50, 42, 44, 49, 47, 37, 27, 34, 36, 29, 22, 23, 32, 31, 22, 36, 32.22005 + 48, 41, 34, 43, 56, 56, 59, 55, 45, 33, 27, 27, 30, 29, 27, 31, 32.22006 + 38, 40, 30, 17, 14, 25, 38, 34, 49, 55, 50, 47, 56, 62, 62, 79, 32.22007 + 68, 57, 55, 57, 52, 40, 28, 26, 22, 17, 13, 12, 13, 17, 19, 18, 32.22008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22010 + 255, 255, 255, 255, 189, 49, 43, 43, 46, 47, 39, 30, 28, 35, 43, 49, 32.22011 + 51, 59, 52, 45, 45, 49, 47, 34, 21, 26, 28, 23, 17, 20, 29, 30, 32.22012 + 24, 23, 22, 14, 16, 31, 37, 33, 39, 53, 45, 36, 33, 33, 35, 35, 32.22013 + 33, 27, 30, 30, 25, 17, 16, 23, 30, 45, 39, 29, 29, 49, 69, 72, 32.22014 + 61, 69, 64, 59, 61, 67, 63, 48, 33, 32, 25, 16, 9, 6, 7, 13, 32.22015 + 17, 24, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22017 + 255, 255, 255, 255, 188, 60, 60, 50, 41, 40, 46, 43, 33, 19, 19, 27, 32.22018 + 40, 44, 46, 52, 50, 44, 43, 43, 43, 32, 22, 20, 22, 20, 17, 19, 32.22019 + 27, 29, 27, 34, 29, 19, 24, 41, 41, 36, 40, 40, 36, 33, 32, 32, 32.22020 + 34, 35, 35, 32, 27, 26, 33, 42, 46, 39, 32, 33, 28, 23, 28, 41, 32.22021 + 55, 62, 65, 80, 75, 65, 60, 61, 62, 54, 45, 43, 35, 24, 14, 9, 32.22022 + 10, 13, 17, 29, 18, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22024 + 255, 255, 255, 255, 255, 185, 50, 59, 62, 53, 43, 44, 52, 50, 45, 38, 32.22025 + 39, 43, 49, 49, 48, 37, 40, 37, 31, 29, 32, 30, 26, 18, 19, 17, 32.22026 + 15, 18, 25, 27, 27, 24, 30, 23, 18, 30, 40, 37, 36, 38, 37, 37, 32.22027 + 34, 31, 30, 33, 36, 38, 34, 33, 37, 44, 46, 42, 38, 19, 27, 39, 32.22028 + 46, 39, 31, 40, 58, 79, 78, 69, 59, 56, 60, 61, 59, 53, 46, 36, 32.22029 + 25, 18, 15, 15, 16, 20, 14, 11, 96, 255, 255, 255, 255, 255, 255, 255, 32.22030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22031 + 255, 255, 255, 255, 255, 255, 190, 53, 60, 68, 70, 59, 46, 45, 54, 33, 32.22032 + 37, 41, 44, 43, 38, 31, 26, 26, 31, 29, 20, 17, 22, 28, 29, 17, 32.22033 + 18, 16, 14, 16, 22, 24, 25, 28, 48, 43, 27, 38, 57, 60, 54, 51, 32.22034 + 51, 50, 44, 36, 33, 36, 41, 35, 39, 39, 29, 16, 15, 25, 38, 32, 32.22035 + 34, 45, 61, 55, 35, 28, 35, 40, 53, 65, 66, 66, 68, 65, 59, 53, 32.22036 + 47, 39, 29, 21, 14, 11, 9, 2, 13, 24, 24, 89, 255, 255, 255, 255, 32.22037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22038 + 255, 255, 255, 255, 255, 255, 255, 184, 44, 45, 42, 46, 51, 45, 33, 36, 32.22039 + 49, 51, 42, 30, 27, 31, 32, 26, 19, 25, 25, 25, 25, 24, 21, 19, 32.22040 + 18, 14, 16, 17, 15, 14, 17, 23, 28, 26, 30, 33, 31, 29, 29, 33, 32.22041 + 36, 40, 41, 40, 33, 26, 23, 29, 35, 43, 41, 38, 36, 35, 33, 31, 32.22042 + 32, 28, 31, 32, 35, 37, 39, 39, 38, 39, 44, 50, 57, 60, 62, 63, 32.22043 + 64, 59, 61, 52, 44, 40, 28, 19, 25, 27, 21, 8, 8, 20, 97, 255, 32.22044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22045 + 255, 255, 255, 255, 255, 255, 255, 255, 192, 68, 71, 54, 52, 53, 57, 53, 32.22046 + 42, 33, 33, 37, 31, 26, 25, 29, 30, 29, 26, 18, 19, 19, 18, 17, 32.22047 + 15, 13, 12, 17, 18, 16, 14, 11, 12, 14, 16, 13, 19, 25, 30, 30, 32.22048 + 31, 33, 35, 34, 38, 42, 42, 36, 28, 22, 20, 25, 23, 21, 22, 22, 32.22049 + 21, 17, 15, 23, 26, 27, 30, 32, 34, 34, 34, 43, 41, 39, 37, 37, 32.22050 + 40, 44, 47, 52, 58, 55, 52, 53, 43, 32, 33, 26, 21, 10, 7, 14, 32.22051 + 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 57, 56, 53, 52, 48, 32.22053 + 46, 47, 47, 37, 27, 23, 24, 25, 25, 24, 25, 26, 27, 19, 19, 18, 32.22054 + 17, 16, 15, 14, 13, 19, 16, 14, 12, 11, 11, 10, 9, 10, 16, 24, 32.22055 + 30, 33, 33, 33, 33, 21, 25, 32, 40, 42, 38, 30, 24, 25, 23, 23, 32.22056 + 26, 29, 29, 23, 18, 28, 30, 31, 34, 34, 34, 35, 35, 36, 33, 31, 32.22057 + 30, 32, 37, 42, 46, 39, 48, 48, 52, 58, 51, 35, 32, 26, 24, 14, 32.22058 + 12, 19, 17, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 48, 38, 30, 47, 32.22060 + 49, 42, 33, 37, 50, 51, 42, 23, 27, 30, 28, 21, 17, 18, 20, 20, 32.22061 + 19, 17, 16, 15, 15, 15, 16, 17, 16, 13, 15, 18, 19, 17, 15, 15, 32.22062 + 18, 22, 27, 29, 29, 27, 25, 20, 18, 20, 28, 38, 42, 39, 34, 37, 32.22063 + 33, 32, 36, 41, 43, 38, 34, 35, 36, 38, 37, 37, 36, 34, 34, 28, 32.22064 + 29, 32, 37, 41, 44, 45, 45, 53, 61, 62, 64, 75, 71, 56, 49, 29, 32.22065 + 27, 17, 19, 30, 33, 36, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 59, 48, 32.22067 + 36, 44, 53, 50, 35, 35, 50, 57, 52, 28, 32, 34, 30, 22, 15, 14, 32.22068 + 16, 15, 13, 11, 9, 8, 9, 10, 11, 15, 14, 13, 16, 20, 24, 22, 32.22069 + 20, 17, 15, 13, 14, 17, 20, 17, 15, 29, 23, 20, 25, 33, 38, 34, 32.22070 + 28, 33, 29, 26, 28, 34, 38, 38, 36, 36, 36, 35, 33, 31, 29, 26, 32.22071 + 25, 27, 28, 29, 34, 38, 40, 39, 37, 58, 66, 62, 61, 74, 76, 66, 32.22072 + 61, 43, 36, 23, 25, 37, 40, 36, 41, 207, 255, 255, 255, 255, 255, 255, 32.22073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 64, 32.22074 + 61, 53, 45, 42, 55, 57, 44, 36, 40, 42, 38, 32, 32, 32, 30, 26, 32.22075 + 22, 19, 18, 15, 13, 10, 7, 7, 9, 11, 13, 16, 15, 14, 16, 18, 32.22076 + 21, 22, 22, 21, 15, 10, 10, 15, 20, 20, 18, 22, 19, 19, 27, 36, 32.22077 + 39, 31, 23, 25, 23, 21, 22, 26, 30, 34, 36, 34, 34, 32, 31, 28, 32.22078 + 25, 23, 22, 24, 22, 21, 25, 33, 42, 45, 45, 47, 55, 49, 43, 55, 32.22079 + 63, 61, 60, 65, 55, 39, 36, 45, 39, 26, 26, 74, 255, 255, 255, 255, 32.22080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22081 + 61, 52, 45, 44, 46, 43, 52, 55, 45, 33, 31, 32, 32, 34, 30, 27, 32.22082 + 27, 30, 29, 25, 20, 22, 19, 15, 12, 12, 14, 17, 20, 15, 16, 16, 32.22083 + 16, 15, 18, 22, 25, 28, 20, 12, 12, 19, 23, 22, 19, 19, 17, 19, 32.22084 + 27, 35, 38, 31, 23, 19, 21, 23, 23, 24, 26, 31, 34, 32, 32, 32, 32.22085 + 30, 30, 29, 27, 26, 20, 19, 20, 28, 39, 49, 52, 52, 51, 60, 52, 32.22086 + 41, 48, 58, 59, 63, 70, 65, 50, 46, 48, 34, 18, 19, 16, 255, 255, 32.22087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22088 + 255, 73, 64, 48, 39, 46, 56, 52, 52, 49, 41, 33, 33, 39, 42, 37, 32.22089 + 29, 22, 25, 31, 33, 27, 19, 24, 21, 17, 13, 12, 15, 18, 20, 13, 32.22090 + 16, 16, 16, 16, 20, 26, 32, 28, 19, 11, 12, 18, 21, 19, 14, 32, 32.22091 + 28, 23, 23, 27, 28, 23, 17, 9, 15, 20, 21, 19, 19, 24, 27, 27, 32.22092 + 27, 28, 28, 27, 27, 27, 27, 20, 22, 28, 37, 46, 48, 44, 38, 47, 32.22093 + 55, 46, 30, 34, 42, 45, 48, 56, 57, 48, 45, 44, 29, 15, 18, 19, 32.22094 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22095 + 255, 255, 191, 64, 55, 50, 53, 53, 53, 36, 48, 45, 31, 29, 42, 45, 32.22096 + 35, 27, 31, 21, 13, 20, 23, 23, 28, 19, 20, 21, 17, 12, 9, 11, 32.22097 + 17, 12, 12, 21, 22, 11, 12, 21, 21, 16, 10, 12, 20, 23, 15, 13, 32.22098 + 16, 13, 18, 18, 16, 18, 22, 22, 18, 12, 13, 16, 22, 26, 24, 17, 32.22099 + 10, 16, 11, 12, 21, 26, 24, 23, 25, 16, 26, 37, 44, 50, 54, 50, 32.22100 + 43, 58, 53, 46, 37, 31, 29, 31, 33, 27, 45, 42, 43, 40, 29, 28, 32.22101 + 11, 21, 30, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22102 + 255, 255, 255, 255, 54, 48, 47, 56, 63, 54, 42, 43, 40, 26, 15, 27, 32.22103 + 47, 46, 31, 28, 32, 21, 12, 19, 21, 16, 17, 17, 18, 19, 18, 13, 32.22104 + 11, 12, 16, 20, 15, 15, 11, 3, 10, 23, 25, 26, 23, 22, 26, 26, 32.22105 + 21, 17, 17, 20, 23, 21, 15, 13, 17, 19, 18, 15, 13, 13, 16, 20, 32.22106 + 23, 20, 17, 9, 8, 11, 19, 23, 18, 15, 16, 28, 39, 47, 46, 45, 32.22107 + 47, 47, 47, 51, 47, 42, 34, 26, 23, 24, 28, 21, 43, 43, 44, 35, 32.22108 + 26, 30, 20, 14, 18, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22109 + 255, 255, 255, 255, 255, 185, 50, 53, 52, 53, 54, 51, 47, 37, 34, 22, 32.22110 + 14, 24, 39, 39, 26, 27, 33, 25, 20, 27, 28, 21, 20, 18, 19, 19, 32.22111 + 18, 16, 15, 16, 17, 25, 19, 18, 12, 5, 16, 28, 24, 28, 28, 26, 32.22112 + 22, 22, 23, 20, 16, 29, 31, 27, 19, 16, 17, 19, 21, 22, 17, 12, 32.22113 + 11, 14, 20, 22, 23, 17, 17, 18, 21, 19, 15, 14, 18, 36, 45, 50, 32.22114 + 44, 36, 36, 42, 45, 39, 40, 39, 32, 24, 21, 23, 26, 34, 48, 41, 32.22115 + 40, 36, 30, 32, 16, 14, 16, 16, 94, 255, 255, 255, 255, 255, 255, 255, 32.22116 + 255, 255, 255, 255, 255, 255, 255, 46, 50, 56, 58, 56, 52, 50, 47, 21, 32.22117 + 33, 38, 29, 20, 20, 24, 25, 16, 28, 28, 25, 30, 31, 26, 29, 24, 32.22118 + 24, 21, 17, 16, 19, 20, 20, 28, 30, 33, 28, 21, 31, 36, 23, 22, 32.22119 + 27, 25, 18, 18, 27, 27, 20, 34, 34, 31, 28, 22, 22, 21, 23, 28, 32.22120 + 23, 15, 13, 15, 20, 25, 27, 34, 34, 31, 26, 19, 16, 19, 24, 32, 32.22121 + 40, 42, 37, 29, 30, 34, 35, 30, 34, 37, 33, 27, 23, 26, 30, 39, 32.22122 + 42, 26, 31, 40, 42, 40, 17, 22, 24, 24, 18, 255, 255, 255, 255, 255, 32.22123 + 255, 255, 255, 255, 255, 255, 255, 255, 60, 64, 51, 43, 52, 67, 68, 49, 32.22124 + 30, 20, 33, 41, 34, 20, 14, 21, 29, 11, 28, 32, 26, 25, 21, 20, 32.22125 + 29, 31, 28, 21, 14, 17, 29, 35, 34, 37, 46, 53, 43, 33, 44, 50, 32.22126 + 36, 30, 33, 28, 20, 21, 31, 33, 29, 31, 32, 32, 35, 33, 28, 22, 32.22127 + 20, 28, 27, 24, 23, 25, 31, 34, 36, 44, 49, 50, 45, 37, 29, 24, 32.22128 + 22, 29, 35, 36, 32, 29, 29, 25, 21, 22, 27, 32, 31, 27, 26, 28, 32.22129 + 31, 25, 33, 23, 31, 40, 46, 52, 37, 26, 31, 30, 22, 255, 255, 255, 32.22130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 63, 55, 52, 59, 64, 32.22131 + 58, 45, 35, 36, 30, 24, 22, 22, 24, 28, 34, 23, 39, 40, 29, 24, 32.22132 + 18, 16, 25, 35, 31, 21, 14, 23, 42, 51, 50, 52, 65, 69, 48, 30, 32.22133 + 47, 65, 58, 47, 43, 34, 26, 24, 29, 32, 31, 31, 31, 32, 40, 43, 32.22134 + 35, 23, 18, 26, 29, 30, 35, 38, 43, 45, 46, 50, 62, 74, 76, 69, 32.22135 + 54, 36, 22, 29, 34, 37, 36, 33, 31, 24, 14, 18, 21, 24, 26, 25, 32.22136 + 25, 25, 27, 24, 45, 44, 43, 38, 37, 53, 51, 30, 34, 32, 24, 95, 32.22137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 58, 53, 62, 72, 32.22138 + 73, 59, 44, 44, 54, 46, 29, 16, 18, 27, 30, 29, 30, 34, 43, 39, 32.22139 + 30, 30, 29, 25, 31, 42, 37, 26, 20, 30, 51, 59, 55, 58, 76, 79, 32.22140 + 48, 23, 43, 71, 73, 65, 55, 42, 36, 32, 30, 33, 38, 42, 37, 36, 32.22141 + 46, 53, 45, 30, 20, 23, 28, 33, 37, 40, 42, 42, 44, 53, 67, 82, 32.22142 + 89, 85, 71, 48, 27, 24, 33, 40, 40, 36, 32, 27, 22, 22, 21, 21, 32.22143 + 22, 24, 24, 22, 20, 29, 48, 45, 43, 35, 34, 47, 43, 33, 30, 25, 32.22144 + 20, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 63, 63, 32.22145 + 65, 72, 75, 66, 54, 50, 56, 44, 30, 22, 27, 30, 26, 23, 24, 29, 32.22146 + 34, 27, 22, 32, 38, 34, 37, 48, 44, 33, 25, 35, 54, 59, 52, 52, 32.22147 + 77, 84, 51, 21, 40, 70, 75, 81, 65, 51, 49, 45, 39, 42, 50, 54, 32.22148 + 44, 40, 52, 60, 53, 35, 24, 23, 27, 30, 34, 33, 34, 33, 33, 50, 32.22149 + 61, 73, 78, 78, 70, 49, 28, 15, 29, 41, 41, 35, 32, 33, 32, 26, 32.22150 + 24, 21, 22, 24, 25, 21, 16, 17, 25, 15, 21, 31, 37, 44, 28, 30, 32.22151 + 22, 13, 13, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 67, 32.22152 + 71, 72, 66, 59, 57, 63, 68, 57, 42, 39, 34, 31, 29, 22, 15, 12, 32.22153 + 13, 20, 21, 22, 25, 33, 41, 42, 37, 45, 48, 54, 61, 63, 63, 67, 32.22154 + 73, 79, 76, 79, 83, 65, 34, 47, 94, 99, 89, 76, 69, 62, 53, 48, 32.22155 + 46, 44, 48, 49, 57, 71, 78, 60, 37, 31, 32, 38, 39, 36, 23, 10, 32.22156 + 28, 43, 69, 73, 62, 65, 68, 49, 29, 12, 16, 36, 35, 13, 26, 41, 32.22157 + 19, 21, 20, 19, 19, 21, 21, 19, 17, 12, 12, 16, 20, 21, 22, 31, 32.22158 + 42, 42, 41, 33, 21, 15, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22159 + 76, 69, 67, 66, 78, 86, 81, 68, 54, 37, 24, 39, 29, 20, 20, 21, 32.22160 + 17, 13, 11, 17, 24, 31, 31, 33, 41, 50, 52, 44, 49, 59, 70, 74, 32.22161 + 75, 80, 87, 94, 93, 96, 102, 86, 56, 64, 106, 103, 102, 101, 95, 75, 32.22162 + 50, 39, 43, 51, 48, 44, 53, 74, 86, 68, 42, 35, 38, 40, 43, 50, 32.22163 + 45, 31, 35, 48, 57, 61, 58, 61, 67, 52, 28, 26, 14, 23, 29, 9, 32.22164 + 1, 12, 16, 15, 16, 15, 15, 13, 12, 14, 14, 28, 25, 24, 25, 24, 32.22165 + 24, 32, 43, 43, 43, 39, 37, 40, 43, 255, 255, 255, 255, 255, 255, 255, 32.22166 + 255, 255, 75, 64, 57, 57, 66, 69, 60, 47, 39, 35, 34, 42, 27, 17, 32.22167 + 21, 30, 32, 27, 22, 34, 36, 38, 39, 42, 48, 49, 45, 57, 61, 71, 32.22168 + 84, 91, 93, 97, 101, 105, 106, 111, 117, 105, 74, 73, 105, 112, 113, 119, 32.22169 + 116, 96, 64, 41, 35, 41, 42, 44, 54, 74, 85, 70, 47, 34, 44, 44, 32.22170 + 47, 53, 43, 28, 21, 29, 30, 56, 81, 83, 79, 60, 26, 24, 23, 30, 32.22171 + 38, 27, 10, 8, 18, 13, 14, 13, 12, 12, 14, 17, 20, 20, 19, 22, 32.22172 + 28, 31, 33, 38, 46, 47, 46, 46, 52, 62, 63, 255, 255, 255, 255, 255, 32.22173 + 255, 255, 255, 80, 70, 57, 49, 50, 46, 40, 36, 37, 42, 46, 48, 37, 32.22174 + 25, 19, 27, 38, 42, 40, 35, 33, 45, 55, 52, 47, 51, 58, 64, 80, 32.22175 + 76, 80, 93, 104, 107, 108, 109, 113, 116, 120, 128, 117, 85, 75, 94, 113, 32.22176 + 117, 116, 112, 106, 88, 56, 26, 17, 30, 42, 54, 67, 76, 68, 54, 34, 32.22177 + 45, 43, 59, 67, 45, 27, 17, 15, 15, 57, 97, 89, 78, 64, 34, 23, 32.22178 + 41, 41, 28, 22, 18, 11, 12, 18, 15, 12, 13, 19, 25, 29, 29, 6, 32.22179 + 7, 15, 27, 33, 32, 32, 34, 37, 39, 45, 56, 68, 68, 255, 255, 255, 32.22180 + 255, 255, 255, 255, 255, 80, 67, 52, 43, 41, 43, 48, 53, 52, 48, 41, 32.22181 + 38, 25, 21, 21, 28, 34, 35, 35, 35, 16, 38, 55, 53, 44, 56, 86, 32.22182 + 111, 94, 85, 82, 95, 108, 116, 114, 112, 123, 126, 129, 135, 126, 96, 76, 32.22183 + 84, 108, 124, 123, 104, 102, 105, 78, 37, 19, 22, 24, 38, 62, 83, 81, 32.22184 + 69, 49, 42, 30, 72, 102, 79, 57, 38, 22, 16, 52, 82, 66, 58, 63, 32.22185 + 54, 58, 67, 55, 33, 21, 17, 14, 22, 25, 16, 10, 13, 21, 29, 30, 32.22186 + 27, 21, 17, 18, 24, 27, 24, 19, 17, 20, 28, 38, 50, 61, 63, 255, 32.22187 + 255, 255, 255, 255, 255, 255, 200, 76, 57, 43, 36, 28, 39, 52, 54, 41, 32.22188 + 28, 26, 32, 23, 21, 23, 27, 26, 24, 26, 30, 27, 25, 23, 28, 48, 32.22189 + 77, 98, 108, 91, 84, 84, 97, 110, 118, 119, 120, 130, 132, 133, 137, 131, 32.22190 + 104, 78, 75, 106, 136, 142, 118, 104, 113, 102, 73, 52, 29, 10, 21, 66, 32.22191 + 104, 106, 88, 76, 51, 13, 60, 111, 98, 76, 40, 13, 12, 42, 73, 71, 32.22192 + 70, 78, 79, 65, 56, 57, 63, 46, 17, 10, 23, 24, 15, 8, 9, 17, 32.22193 + 22, 21, 17, 39, 28, 20, 20, 24, 23, 22, 23, 24, 32, 41, 47, 52, 32.22194 + 53, 255, 255, 255, 255, 255, 255, 255, 83, 62, 45, 38, 40, 30, 32, 34, 32.22195 + 31, 21, 13, 18, 30, 26, 22, 20, 22, 22, 22, 27, 33, 41, 25, 15, 32.22196 + 31, 67, 95, 92, 76, 85, 87, 97, 109, 115, 119, 124, 130, 134, 135, 132, 32.22197 + 136, 135, 111, 82, 74, 104, 128, 139, 127, 116, 118, 113, 99, 81, 53, 25, 32.22198 + 31, 72, 112, 117, 100, 97, 80, 21, 40, 81, 85, 79, 39, 9, 12, 30, 32.22199 + 63, 88, 98, 95, 92, 47, 34, 52, 70, 43, 13, 6, 6, 15, 14, 11, 32.22200 + 10, 13, 16, 18, 19, 35, 25, 18, 22, 30, 32, 31, 31, 32, 36, 42, 32.22201 + 46, 50, 52, 255, 255, 255, 255, 255, 255, 255, 80, 54, 39, 42, 54, 45, 32.22202 + 35, 27, 28, 28, 22, 16, 17, 23, 15, 10, 12, 15, 20, 28, 35, 23, 32.22203 + 34, 51, 69, 86, 95, 90, 80, 83, 96, 113, 124, 123, 120, 127, 138, 138, 32.22204 + 139, 135, 139, 141, 120, 89, 78, 96, 102, 111, 118, 122, 118, 107, 99, 91, 32.22205 + 76, 56, 53, 77, 106, 113, 104, 103, 108, 46, 34, 54, 70, 90, 60, 34, 32.22206 + 22, 14, 36, 80, 100, 95, 92, 77, 63, 71, 64, 29, 23, 31, 16, 5, 32.22207 + 11, 15, 16, 14, 16, 24, 32, 26, 19, 18, 28, 36, 33, 25, 20, 22, 32.22208 + 27, 33, 43, 55, 62, 123, 255, 255, 255, 255, 255, 198, 74, 43, 31, 44, 32.22209 + 26, 23, 33, 27, 31, 47, 38, 19, 22, 22, 24, 21, 17, 16, 17, 19, 32.22210 + 18, 24, 54, 84, 94, 89, 92, 103, 114, 108, 111, 115, 120, 126, 132, 136, 32.22211 + 137, 133, 135, 138, 141, 140, 128, 103, 80, 98, 103, 111, 115, 117, 114, 112, 32.22212 + 110, 108, 97, 84, 77, 81, 91, 101, 106, 122, 105, 75, 45, 36, 48, 67, 32.22213 + 78, 69, 62, 64, 72, 76, 76, 85, 101, 119, 98, 75, 64, 60, 50, 26, 32.22214 + 7, 12, 10, 10, 13, 20, 26, 26, 24, 18, 20, 24, 25, 27, 26, 20, 32.22215 + 15, 21, 24, 24, 27, 44, 63, 63, 255, 255, 255, 255, 255, 85, 77, 50, 32.22216 + 32, 43, 38, 26, 31, 32, 35, 42, 37, 26, 26, 36, 31, 24, 20, 18, 32.22217 + 18, 18, 17, 49, 70, 92, 99, 98, 103, 112, 120, 123, 125, 128, 132, 135, 32.22218 + 138, 140, 140, 134, 135, 136, 138, 140, 133, 113, 94, 102, 105, 110, 114, 114, 32.22219 + 111, 107, 105, 110, 105, 97, 91, 90, 96, 106, 113, 123, 111, 89, 61, 40, 32.22220 + 39, 54, 69, 94, 95, 94, 91, 88, 92, 96, 99, 97, 90, 81, 75, 70, 32.22221 + 57, 34, 17, 19, 14, 13, 18, 23, 23, 21, 20, 20, 21, 22, 24, 23, 32.22222 + 23, 19, 16, 27, 28, 22, 22, 41, 61, 55, 255, 255, 255, 255, 255, 90, 32.22223 + 78, 55, 26, 29, 36, 27, 29, 38, 42, 36, 35, 35, 29, 33, 27, 22, 32.22224 + 19, 21, 26, 31, 34, 69, 80, 94, 100, 105, 114, 123, 127, 129, 131, 134, 32.22225 + 137, 137, 136, 135, 133, 135, 134, 134, 135, 139, 138, 126, 113, 109, 111, 115, 32.22226 + 116, 115, 111, 108, 105, 112, 112, 111, 106, 103, 105, 112, 119, 122, 117, 106, 32.22227 + 86, 57, 41, 52, 73, 111, 119, 117, 105, 99, 104, 102, 93, 86, 90, 95, 32.22228 + 95, 85, 68, 49, 38, 33, 24, 22, 28, 32, 27, 22, 20, 23, 22, 21, 32.22229 + 23, 23, 21, 19, 18, 26, 28, 21, 20, 45, 71, 61, 255, 255, 255, 255, 32.22230 + 206, 88, 74, 56, 23, 20, 30, 24, 25, 42, 46, 32, 34, 40, 29, 25, 32.22231 + 21, 19, 18, 20, 26, 41, 52, 72, 79, 88, 97, 110, 123, 129, 130, 131, 32.22232 + 132, 135, 137, 136, 134, 131, 128, 133, 134, 133, 134, 139, 141, 134, 124, 119, 32.22233 + 119, 121, 122, 121, 118, 114, 111, 114, 116, 117, 118, 116, 118, 121, 124, 124, 32.22234 + 120, 118, 109, 85, 66, 74, 96, 114, 119, 119, 113, 108, 108, 104, 96, 98, 32.22235 + 103, 107, 106, 97, 83, 70, 61, 51, 42, 39, 46, 48, 40, 30, 26, 24, 32.22236 + 23, 22, 26, 26, 21, 16, 16, 21, 28, 23, 20, 43, 70, 61, 255, 255, 32.22237 + 255, 255, 103, 80, 65, 55, 31, 27, 32, 21, 23, 39, 43, 31, 35, 42, 32.22238 + 29, 27, 26, 26, 24, 20, 23, 44, 63, 74, 80, 90, 100, 115, 128, 133, 32.22239 + 130, 134, 136, 138, 141, 141, 139, 136, 133, 132, 133, 133, 134, 138, 141, 135, 32.22240 + 126, 126, 124, 123, 124, 125, 124, 120, 117, 116, 117, 118, 123, 127, 130, 127, 32.22241 + 125, 128, 121, 120, 121, 109, 96, 102, 120, 123, 117, 118, 125, 123, 114, 110, 32.22242 + 112, 115, 114, 110, 106, 102, 97, 92, 87, 78, 71, 66, 69, 68, 58, 42, 32.22243 + 32, 23, 22, 25, 32, 31, 22, 15, 13, 20, 28, 26, 19, 32, 52, 45, 32.22244 + 255, 255, 255, 255, 107, 84, 61, 45, 33, 34, 26, 22, 25, 32, 32, 31, 32.22245 + 39, 41, 29, 25, 25, 26, 28, 25, 29, 53, 77, 85, 92, 101, 110, 121, 32.22246 + 132, 135, 132, 134, 136, 137, 139, 140, 140, 138, 137, 132, 133, 133, 133, 136, 32.22247 + 138, 133, 127, 131, 128, 125, 126, 128, 128, 125, 121, 121, 120, 122, 128, 135, 32.22248 + 137, 133, 128, 133, 126, 122, 124, 123, 119, 121, 128, 129, 119, 118, 128, 129, 32.22249 + 118, 114, 120, 121, 116, 108, 106, 107, 108, 108, 108, 105, 104, 98, 90, 87, 32.22250 + 80, 59, 37, 25, 23, 27, 36, 35, 23, 14, 13, 15, 23, 25, 21, 30, 32.22251 + 43, 42, 255, 255, 255, 202, 110, 91, 59, 29, 27, 39, 20, 28, 32, 24, 32.22252 + 18, 32, 44, 41, 35, 27, 21, 20, 27, 30, 38, 58, 79, 90, 99, 109, 32.22253 + 115, 120, 128, 134, 135, 131, 133, 134, 137, 138, 138, 138, 137, 136, 136, 134, 32.22254 + 132, 134, 138, 136, 131, 137, 134, 130, 130, 133, 133, 129, 126, 127, 128, 131, 32.22255 + 135, 137, 137, 137, 135, 135, 131, 127, 127, 131, 133, 133, 129, 125, 120, 118, 32.22256 + 121, 123, 121, 120, 121, 118, 117, 115, 116, 117, 118, 118, 118, 117, 125, 120, 32.22257 + 106, 103, 102, 79, 48, 29, 24, 28, 37, 36, 23, 15, 16, 13, 17, 19, 32.22258 + 23, 31, 40, 43, 255, 255, 255, 86, 102, 91, 55, 17, 25, 50, 25, 34, 32.22259 + 38, 18, 7, 32, 47, 42, 41, 38, 25, 19, 24, 31, 36, 49, 64, 89, 32.22260 + 99, 109, 112, 114, 123, 132, 137, 134, 136, 135, 137, 137, 140, 139, 140, 138, 32.22261 + 138, 134, 131, 133, 138, 139, 135, 146, 140, 135, 135, 137, 137, 132, 128, 132, 32.22262 + 136, 141, 141, 138, 136, 138, 140, 134, 134, 131, 130, 134, 140, 139, 132, 120, 32.22263 + 124, 121, 114, 118, 130, 130, 122, 114, 121, 127, 129, 127, 123, 120, 119, 119, 32.22264 + 132, 130, 112, 112, 117, 95, 58, 32, 26, 27, 36, 35, 23, 17, 20, 20, 32.22265 + 15, 13, 20, 26, 30, 31, 255, 255, 255, 66, 88, 81, 41, 22, 41, 54, 32.22266 + 49, 32, 22, 16, 22, 30, 34, 38, 42, 35, 24, 21, 28, 35, 41, 54, 32.22267 + 69, 91, 102, 114, 121, 126, 133, 137, 137, 133, 134, 137, 139, 139, 138, 137, 32.22268 + 135, 134, 139, 143, 142, 142, 146, 146, 142, 144, 143, 140, 138, 140, 142, 138, 32.22269 + 131, 128, 135, 139, 135, 138, 146, 148, 142, 132, 133, 135, 136, 136, 135, 135, 32.22270 + 135, 130, 131, 131, 130, 126, 124, 127, 131, 126, 124, 123, 126, 129, 131, 130, 32.22271 + 127, 131, 124, 123, 118, 108, 104, 94, 77, 56, 11, 15, 40, 28, 19, 24, 32.22272 + 18, 13, 15, 17, 21, 29, 35, 31, 255, 255, 189, 69, 84, 78, 45, 31, 32.22273 + 46, 59, 55, 32, 19, 9, 12, 21, 28, 32, 37, 37, 28, 20, 17, 22, 32.22274 + 35, 56, 72, 93, 101, 109, 114, 121, 131, 138, 140, 139, 139, 138, 137, 137, 32.22275 + 137, 137, 138, 139, 141, 144, 146, 145, 142, 140, 140, 141, 144, 144, 141, 140, 32.22276 + 143, 141, 137, 134, 139, 141, 140, 142, 145, 145, 143, 142, 142, 138, 134, 133, 32.22277 + 136, 140, 144, 134, 132, 132, 132, 134, 134, 134, 133, 129, 127, 125, 127, 131, 32.22278 + 136, 138, 138, 131, 124, 122, 116, 103, 100, 94, 78, 58, 17, 18, 38, 25, 32.22279 + 16, 22, 19, 17, 16, 14, 15, 25, 36, 38, 255, 255, 53, 63, 68, 62, 32.22280 + 42, 33, 40, 49, 49, 36, 23, 15, 17, 25, 30, 28, 27, 30, 29, 22, 32.22281 + 13, 18, 38, 63, 79, 93, 101, 109, 114, 121, 130, 134, 136, 140, 140, 140, 32.22282 + 140, 139, 139, 138, 138, 138, 135, 139, 147, 149, 142, 139, 143, 138, 143, 144, 32.22283 + 141, 141, 144, 144, 141, 144, 141, 142, 147, 147, 144, 143, 146, 148, 146, 141, 32.22284 + 137, 136, 138, 140, 143, 139, 135, 133, 136, 140, 141, 138, 134, 142, 138, 134, 32.22285 + 133, 134, 138, 139, 140, 132, 126, 124, 115, 100, 97, 95, 84, 60, 25, 22, 32.22286 + 36, 23, 14, 20, 20, 12, 12, 11, 11, 19, 29, 33, 255, 255, 39, 53, 32.22287 + 53, 47, 40, 34, 34, 34, 34, 33, 26, 23, 27, 34, 32, 20, 11, 18, 32.22288 + 26, 27, 20, 26, 49, 74, 86, 96, 105, 114, 121, 126, 132, 131, 127, 135, 32.22289 + 139, 141, 144, 142, 139, 135, 132, 139, 131, 133, 145, 147, 136, 132, 139, 136, 32.22290 + 137, 138, 137, 140, 144, 144, 140, 146, 141, 142, 150, 150, 144, 142, 149, 144, 32.22291 + 144, 144, 144, 143, 141, 137, 134, 142, 139, 138, 138, 139, 139, 135, 132, 140, 32.22292 + 139, 135, 133, 133, 135, 137, 139, 134, 129, 126, 116, 99, 97, 98, 89, 56, 32.22293 + 30, 25, 34, 23, 14, 18, 18, 8, 12, 15, 17, 21, 25, 23, 255, 255, 32.22294 + 35, 49, 46, 44, 45, 40, 34, 27, 25, 22, 20, 18, 21, 27, 26, 14, 32.22295 + 3, 15, 23, 27, 23, 31, 57, 81, 93, 105, 111, 116, 121, 126, 135, 137, 32.22296 + 136, 142, 140, 136, 133, 128, 125, 123, 122, 136, 125, 122, 132, 131, 119, 115, 32.22297 + 121, 131, 129, 127, 127, 136, 145, 145, 139, 141, 137, 140, 149, 150, 144, 143, 32.22298 + 150, 144, 144, 142, 143, 142, 140, 134, 128, 141, 143, 143, 139, 134, 130, 129, 32.22299 + 130, 126, 128, 129, 132, 133, 136, 139, 140, 136, 129, 126, 116, 99, 97, 98, 32.22300 + 90, 50, 33, 27, 31, 25, 17, 16, 17, 12, 18, 20, 20, 23, 26, 24, 32.22301 + 255, 255, 44, 42, 41, 41, 42, 39, 31, 23, 19, 20, 17, 12, 11, 16, 32.22302 + 21, 19, 14, 19, 21, 22, 23, 35, 60, 87, 104, 117, 117, 115, 116, 123, 32.22303 + 138, 146, 148, 150, 140, 124, 109, 99, 98, 101, 105, 102, 94, 94, 102, 106, 32.22304 + 103, 102, 106, 114, 112, 112, 113, 123, 136, 141, 139, 136, 135, 139, 146, 148, 32.22305 + 146, 145, 147, 150, 145, 136, 131, 130, 129, 126, 123, 126, 129, 128, 126, 119, 32.22306 + 116, 118, 121, 126, 128, 131, 132, 132, 133, 134, 136, 134, 127, 125, 116, 101, 32.22307 + 99, 96, 85, 49, 38, 26, 24, 23, 18, 14, 14, 13, 16, 14, 12, 15, 32.22308 + 22, 26, 255, 44, 37, 34, 35, 35, 32, 29, 27, 21, 18, 22, 22, 18, 32.22309 + 13, 14, 20, 23, 19, 14, 12, 17, 30, 49, 71, 96, 115, 125, 124, 121, 32.22310 + 120, 127, 138, 144, 144, 137, 126, 106, 89, 78, 75, 77, 81, 65, 62, 61, 32.22311 + 66, 74, 81, 84, 84, 83, 87, 91, 92, 100, 117, 132, 139, 132, 137, 141, 32.22312 + 143, 145, 148, 147, 144, 145, 137, 127, 121, 117, 113, 107, 102, 94, 93, 91, 32.22313 + 91, 90, 94, 97, 100, 113, 114, 117, 118, 118, 119, 123, 128, 135, 129, 128, 32.22314 + 121, 109, 105, 99, 83, 55, 43, 24, 15, 19, 17, 11, 11, 9, 13, 12, 32.22315 + 9, 9, 15, 20, 255, 24, 12, 32, 35, 33, 27, 24, 27, 27, 24, 21, 32.22316 + 26, 26, 19, 17, 18, 17, 11, 2, 2, 16, 43, 67, 85, 105, 123, 124, 32.22317 + 129, 130, 131, 134, 138, 135, 128, 114, 108, 95, 82, 72, 66, 63, 63, 54, 32.22318 + 52, 47, 44, 49, 59, 60, 55, 57, 68, 76, 78, 81, 99, 123, 138, 133, 32.22319 + 142, 146, 143, 145, 150, 149, 140, 132, 128, 122, 117, 111, 101, 87, 78, 62, 32.22320 + 60, 56, 59, 67, 75, 79, 80, 77, 80, 85, 90, 96, 106, 117, 125, 140, 32.22321 + 134, 131, 127, 117, 113, 104, 85, 62, 49, 22, 8, 15, 16, 10, 11, 9, 32.22322 + 15, 19, 17, 16, 17, 16, 255, 36, 27, 28, 32, 40, 35, 24, 28, 30, 32.22323 + 20, 23, 16, 20, 26, 19, 15, 16, 12, 9, 7, 12, 31, 65, 99, 116, 32.22324 + 119, 126, 129, 121, 126, 135, 116, 96, 104, 100, 84, 69, 65, 66, 64, 64, 32.22325 + 64, 61, 66, 59, 50, 42, 27, 19, 28, 51, 60, 69, 70, 68, 81, 109, 32.22326 + 132, 132, 126, 136, 148, 148, 144, 139, 130, 121, 118, 117, 114, 100, 81, 72, 32.22327 + 74, 59, 52, 47, 48, 54, 58, 59, 60, 59, 45, 58, 78, 82, 98, 117, 32.22328 + 117, 129, 136, 137, 127, 114, 107, 99, 92, 67, 41, 15, 6, 10, 13, 8, 32.22329 + 2, 8, 15, 20, 23, 22, 19, 20, 255, 36, 34, 31, 29, 34, 33, 30, 32.22330 + 37, 38, 26, 21, 18, 24, 25, 15, 15, 18, 12, 15, 12, 14, 35, 72, 32.22331 + 106, 120, 118, 125, 125, 120, 117, 109, 88, 78, 86, 87, 90, 95, 99, 102, 32.22332 + 105, 109, 112, 99, 92, 71, 59, 61, 57, 41, 29, 32, 39, 51, 62, 66, 32.22333 + 75, 96, 116, 111, 121, 133, 140, 136, 132, 127, 126, 117, 107, 98, 95, 96, 32.22334 + 89, 71, 54, 50, 41, 31, 29, 32, 38, 44, 48, 43, 34, 37, 46, 49, 32.22335 + 60, 79, 89, 106, 114, 117, 113, 108, 106, 101, 95, 76, 47, 15, 2, 6, 32.22336 + 11, 11, 11, 18, 22, 23, 22, 20, 21, 101, 255, 33, 36, 42, 31, 27, 32.22337 + 27, 26, 30, 26, 11, 19, 23, 29, 21, 7, 10, 15, 5, 0, 1, 11, 32.22338 + 38, 75, 105, 112, 106, 119, 109, 112, 119, 114, 107, 104, 100, 106, 109, 115, 32.22339 + 117, 116, 112, 112, 114, 110, 99, 78, 58, 58, 73, 81, 79, 87, 76, 72, 32.22340 + 77, 77, 75, 86, 102, 96, 118, 126, 121, 120, 121, 124, 133, 120, 116, 104, 32.22341 + 86, 76, 74, 72, 68, 57, 51, 43, 40, 44, 55, 65, 71, 78, 79, 72, 32.22342 + 65, 62, 55, 57, 69, 81, 88, 94, 99, 104, 108, 108, 104, 86, 54, 19, 32.22343 + 2, 3, 8, 9, 10, 23, 23, 21, 17, 14, 19, 255, 255, 44, 48, 53, 32.22344 + 36, 29, 30, 26, 25, 20, 6, 17, 25, 30, 17, 2, 9, 15, 5, 7, 32.22345 + 25, 51, 79, 105, 124, 128, 125, 130, 115, 118, 121, 105, 107, 122, 122, 124, 32.22346 + 111, 106, 109, 103, 88, 86, 95, 89, 85, 89, 96, 98, 94, 79, 59, 84, 32.22347 + 70, 68, 82, 91, 90, 95, 106, 99, 127, 132, 123, 125, 126, 120, 120, 118, 32.22348 + 113, 105, 93, 76, 66, 67, 75, 62, 63, 62, 61, 63, 71, 76, 79, 99, 32.22349 + 111, 103, 95, 92, 72, 50, 53, 68, 71, 79, 90, 101, 110, 112, 111, 98, 32.22350 + 66, 30, 11, 7, 8, 8, 7, 18, 18, 14, 11, 10, 16, 255, 193, 63, 32.22351 + 62, 50, 31, 29, 35, 33, 29, 26, 17, 9, 18, 25, 14, 5, 18, 32, 32.22352 + 26, 55, 82, 113, 130, 137, 144, 154, 161, 143, 132, 133, 124, 94, 92, 110, 32.22353 + 115, 105, 95, 96, 104, 92, 72, 80, 106, 86, 61, 68, 103, 122, 116, 89, 32.22354 + 55, 58, 51, 58, 81, 97, 96, 94, 98, 115, 133, 140, 135, 136, 135, 121, 32.22355 + 106, 137, 116, 106, 113, 109, 88, 69, 63, 70, 80, 86, 86, 83, 83, 79, 32.22356 + 74, 84, 99, 98, 102, 113, 100, 72, 66, 63, 65, 71, 82, 95, 103, 108, 32.22357 + 110, 109, 74, 33, 10, 6, 9, 13, 17, 13, 16, 15, 15, 16, 22, 255, 32.22358 + 71, 61, 53, 41, 21, 19, 31, 32, 24, 18, 10, 5, 10, 16, 13, 11, 32.22359 + 29, 49, 50, 69, 90, 110, 113, 110, 116, 130, 143, 123, 111, 118, 141, 160, 32.22360 + 163, 141, 110, 88, 95, 104, 102, 80, 64, 77, 104, 84, 68, 81, 99, 91, 32.22361 + 91, 93, 81, 79, 68, 62, 66, 75, 82, 88, 94, 128, 125, 129, 127, 122, 32.22362 + 135, 147, 137, 149, 127, 107, 98, 84, 64, 55, 58, 70, 85, 96, 94, 90, 32.22363 + 89, 85, 79, 75, 81, 83, 92, 109, 112, 100, 94, 67, 64, 67, 77, 87, 32.22364 + 95, 103, 109, 110, 73, 28, 1, 0, 3, 15, 24, 14, 17, 20, 22, 25, 32.22365 + 30, 255, 71, 62, 54, 43, 17, 16, 38, 43, 36, 23, 12, 17, 10, 10, 32.22366 + 10, 9, 24, 43, 49, 44, 55, 67, 72, 81, 92, 103, 108, 101, 91, 94, 32.22367 + 143, 210, 221, 169, 116, 96, 106, 99, 76, 66, 75, 81, 77, 54, 95, 151, 32.22368 + 145, 85, 61, 68, 61, 73, 66, 56, 48, 57, 80, 102, 113, 120, 110, 132, 32.22369 + 140, 115, 128, 159, 155, 122, 119, 101, 71, 51, 51, 62, 69, 62, 75, 79, 32.22370 + 71, 63, 66, 67, 65, 63, 60, 63, 68, 75, 90, 97, 88, 76, 73, 75, 32.22371 + 82, 88, 95, 105, 118, 113, 77, 34, 8, 1, 5, 14, 21, 13, 15, 19, 32.22372 + 22, 23, 30, 255, 84, 84, 82, 54, 25, 26, 56, 74, 70, 55, 41, 33, 32.22373 + 17, 9, 7, 2, 10, 26, 32, 35, 43, 55, 73, 98, 116, 117, 112, 111, 32.22374 + 107, 96, 120, 171, 179, 142, 115, 101, 103, 73, 40, 59, 106, 106, 68, 29, 32.22375 + 98, 169, 154, 89, 80, 102, 88, 71, 79, 82, 75, 81, 100, 113, 114, 96, 32.22376 + 101, 159, 183, 136, 123, 141, 124, 108, 118, 109, 92, 98, 124, 124, 102, 82, 32.22377 + 87, 79, 58, 43, 44, 49, 50, 58, 51, 58, 61, 59, 78, 95, 85, 87, 32.22378 + 84, 85, 91, 95, 101, 115, 131, 122, 91, 55, 31, 20, 16, 16, 16, 9, 32.22379 + 10, 13, 15, 16, 21, 255, 83, 81, 77, 61, 26, 34, 88, 121, 110, 84, 32.22380 + 66, 66, 51, 19, 16, 19, 18, 33, 32, 36, 35, 51, 80, 108, 119, 119, 32.22381 + 119, 128, 120, 115, 115, 115, 115, 117, 120, 97, 81, 59, 57, 84, 112, 105, 32.22382 + 80, 57, 54, 72, 89, 93, 114, 134, 125, 106, 89, 91, 92, 86, 101, 121, 32.22383 + 119, 84, 110, 145, 161, 156, 137, 121, 113, 108, 109, 89, 92, 79, 103, 104, 32.22384 + 113, 108, 145, 160, 129, 88, 67, 54, 42, 56, 78, 84, 75, 67, 64, 70, 32.22385 + 86, 95, 106, 112, 105, 96, 97, 104, 112, 115, 130, 118, 58, 45, 18, 13, 32.22386 + 12, 1, 1, 5, 13, 17, 25, 255, 89, 89, 85, 59, 26, 33, 87, 124, 32.22387 + 123, 103, 85, 95, 88, 59, 48, 37, 25, 34, 30, 45, 46, 59, 86, 110, 32.22388 + 120, 120, 118, 122, 122, 123, 129, 125, 116, 106, 101, 90, 82, 72, 75, 96, 32.22389 + 114, 109, 94, 86, 64, 58, 72, 93, 122, 131, 111, 85, 84, 91, 93, 88, 32.22390 + 89, 95, 93, 99, 110, 127, 147, 156, 150, 132, 116, 109, 104, 82, 83, 76, 32.22391 + 97, 94, 97, 121, 157, 161, 116, 77, 71, 68, 54, 76, 96, 102, 87, 75, 32.22392 + 67, 71, 86, 105, 111, 109, 96, 84, 83, 87, 92, 107, 123, 92, 44, 31, 32.22393 + 11, 8, 5, 13, 11, 8, 8, 14, 27, 255, 103, 104, 101, 60, 29, 34, 32.22394 + 80, 116, 121, 104, 85, 115, 117, 96, 80, 58, 38, 40, 32, 54, 55, 69, 32.22395 + 93, 116, 125, 125, 120, 123, 124, 128, 133, 128, 113, 97, 89, 87, 86, 88, 32.22396 + 94, 102, 107, 105, 101, 106, 85, 74, 76, 88, 108, 114, 99, 84, 95, 98, 32.22397 + 97, 94, 85, 78, 81, 111, 115, 125, 138, 147, 147, 136, 126, 124, 114, 93, 32.22398 + 91, 90, 107, 102, 99, 115, 149, 149, 101, 69, 75, 78, 64, 94, 113, 114, 32.22399 + 97, 83, 71, 72, 85, 97, 100, 96, 87, 81, 84, 89, 92, 90, 111, 59, 32.22400 + 29, 14, 8, 11, 5, 7, 10, 9, 4, 11, 106, 255, 109, 109, 105, 65, 32.22401 + 38, 44, 87, 121, 125, 109, 89, 111, 119, 103, 91, 72, 54, 52, 37, 54, 32.22402 + 60, 77, 100, 121, 131, 130, 127, 133, 128, 125, 125, 120, 110, 101, 99, 102, 32.22403 + 100, 101, 106, 105, 101, 101, 105, 106, 112, 113, 102, 88, 88, 96, 98, 100, 32.22404 + 110, 100, 91, 97, 89, 81, 93, 115, 128, 141, 143, 134, 129, 131, 137, 116, 32.22405 + 109, 92, 86, 84, 94, 92, 90, 98, 124, 128, 100, 79, 84, 88, 80, 102, 32.22406 + 114, 108, 93, 86, 80, 79, 87, 89, 91, 90, 87, 89, 96, 102, 102, 89, 32.22407 + 115, 53, 29, 4, 3, 9, 7, 0, 16, 24, 21, 25, 255, 255, 101, 99, 32.22408 + 93, 70, 49, 64, 113, 143, 144, 128, 111, 109, 119, 103, 93, 82, 69, 62, 32.22409 + 38, 51, 64, 86, 107, 124, 132, 132, 129, 137, 129, 123, 122, 120, 116, 115, 32.22410 + 117, 125, 117, 112, 111, 109, 107, 107, 113, 107, 118, 118, 107, 97, 94, 96, 32.22411 + 102, 102, 106, 91, 83, 96, 97, 93, 106, 114, 131, 147, 145, 132, 124, 129, 32.22412 + 140, 118, 116, 109, 92, 85, 84, 88, 87, 94, 105, 112, 108, 97, 92, 96, 32.22413 + 101, 102, 106, 96, 87, 92, 94, 91, 96, 99, 102, 101, 98, 98, 101, 101, 32.22414 + 97, 104, 130, 74, 39, 4, 2, 7, 15, 32, 53, 65, 55, 49, 255, 255, 32.22415 + 91, 87, 79, 74, 53, 75, 128, 151, 140, 123, 113, 123, 133, 114, 102, 93, 32.22416 + 81, 66, 31, 46, 69, 95, 115, 125, 130, 130, 129, 134, 129, 125, 127, 128, 32.22417 + 125, 124, 126, 128, 121, 110, 105, 106, 109, 112, 113, 107, 107, 94, 92, 108, 32.22418 + 113, 103, 96, 99, 102, 96, 96, 104, 107, 108, 115, 116, 126, 135, 142, 141, 32.22419 + 138, 135, 135, 138, 139, 140, 114, 103, 89, 98, 99, 105, 101, 103, 108, 103, 32.22420 + 95, 99, 112, 103, 106, 98, 93, 103, 108, 104, 106, 109, 112, 112, 107, 105, 32.22421 + 104, 101, 96, 107, 124, 91, 40, 12, 17, 24, 49, 84, 97, 99, 85, 69, 32.22422 + 255, 255, 84, 77, 67, 72, 51, 76, 132, 147, 126, 108, 108, 134, 148, 132, 32.22423 + 117, 105, 90, 68, 27, 37, 68, 102, 121, 126, 129, 132, 133, 130, 126, 124, 32.22424 + 127, 128, 126, 124, 125, 120, 120, 112, 102, 103, 110, 111, 106, 102, 117, 113, 32.22425 + 109, 118, 115, 101, 103, 115, 116, 121, 121, 110, 111, 118, 120, 116, 120, 128, 32.22426 + 139, 146, 146, 139, 133, 136, 138, 143, 113, 104, 85, 97, 97, 112, 109, 109, 32.22427 + 112, 109, 102, 104, 110, 107, 117, 114, 110, 115, 114, 107, 107, 111, 116, 117, 32.22428 + 112, 109, 111, 111, 110, 104, 107, 99, 30, 19, 35, 44, 84, 111, 112, 111, 32.22429 + 101, 255, 255, 255, 255, 67, 58, 69, 49, 78, 140, 155, 129, 117, 124, 133, 32.22430 + 153, 141, 126, 112, 93, 70, 26, 28, 65, 105, 124, 127, 131, 136, 139, 130, 32.22431 + 124, 120, 122, 123, 120, 120, 122, 117, 125, 121, 110, 107, 114, 112, 102, 97, 32.22432 + 145, 166, 152, 130, 104, 98, 122, 135, 133, 142, 136, 107, 104, 119, 120, 110, 32.22433 + 120, 132, 142, 144, 142, 138, 136, 131, 132, 139, 111, 107, 88, 100, 99, 114, 32.22434 + 120, 124, 123, 121, 119, 112, 105, 112, 126, 129, 123, 121, 113, 103, 105, 116, 32.22435 + 122, 122, 116, 112, 115, 118, 120, 115, 102, 106, 21, 18, 39, 46, 93, 110, 32.22436 + 109, 109, 111, 255, 255, 255, 255, 75, 78, 70, 49, 84, 140, 161, 138, 109, 32.22437 + 123, 126, 140, 140, 145, 128, 91, 67, 39, 36, 69, 108, 128, 132, 131, 133, 32.22438 + 134, 125, 130, 129, 123, 123, 128, 131, 129, 131, 129, 124, 116, 119, 122, 117, 32.22439 + 109, 116, 155, 179, 162, 129, 113, 118, 126, 136, 138, 137, 124, 109, 106, 116, 32.22440 + 128, 125, 133, 140, 140, 140, 141, 142, 140, 130, 130, 126, 117, 107, 102, 105, 32.22441 + 110, 105, 108, 115, 120, 117, 113, 115, 122, 114, 121, 123, 117, 110, 108, 108, 32.22442 + 106, 113, 116, 119, 117, 114, 114, 116, 119, 116, 113, 100, 17, 39, 46, 70, 32.22443 + 80, 104, 121, 134, 127, 255, 255, 255, 255, 79, 88, 68, 49, 81, 129, 156, 32.22444 + 144, 112, 117, 125, 136, 131, 133, 117, 84, 63, 39, 49, 72, 100, 118, 125, 32.22445 + 130, 130, 127, 130, 135, 135, 130, 129, 134, 137, 136, 134, 135, 129, 126, 128, 32.22446 + 131, 127, 119, 127, 136, 136, 127, 124, 132, 136, 134, 130, 134, 134, 126, 117, 32.22447 + 116, 125, 134, 118, 126, 133, 134, 133, 135, 137, 134, 124, 126, 127, 123, 115, 32.22448 + 109, 106, 107, 100, 98, 99, 103, 105, 107, 117, 128, 111, 117, 118, 113, 109, 32.22449 + 111, 115, 114, 127, 125, 124, 123, 122, 121, 118, 117, 116, 109, 100, 32, 56, 32.22450 + 62, 87, 100, 120, 148, 163, 255, 255, 255, 255, 255, 76, 90, 74, 55, 73, 32.22451 + 110, 146, 153, 127, 122, 128, 134, 125, 125, 114, 89, 77, 58, 71, 81, 96, 32.22452 + 109, 120, 129, 128, 122, 132, 136, 137, 134, 133, 137, 140, 140, 136, 137, 134, 32.22453 + 134, 137, 139, 136, 129, 128, 126, 120, 121, 135, 149, 144, 131, 122, 124, 125, 32.22454 + 123, 119, 120, 124, 128, 115, 122, 128, 129, 130, 133, 132, 129, 124, 124, 123, 32.22455 + 121, 117, 113, 110, 109, 115, 111, 106, 108, 109, 111, 117, 124, 113, 117, 118, 32.22456 + 113, 112, 117, 124, 126, 133, 127, 123, 122, 125, 124, 120, 114, 124, 106, 100, 32.22457 + 53, 74, 76, 93, 107, 134, 155, 191, 255, 255, 255, 255, 255, 74, 87, 82, 32.22458 + 58, 62, 83, 125, 156, 141, 128, 133, 135, 123, 126, 122, 109, 108, 95, 90, 32.22459 + 95, 102, 109, 120, 129, 129, 122, 130, 132, 134, 134, 133, 136, 139, 141, 137, 32.22460 + 138, 137, 139, 141, 141, 137, 133, 131, 136, 134, 133, 134, 139, 137, 132, 122, 32.22461 + 123, 122, 122, 121, 120, 118, 118, 121, 127, 132, 132, 133, 135, 133, 127, 129, 32.22462 + 124, 117, 112, 112, 114, 117, 118, 125, 125, 124, 127, 126, 124, 119, 118, 120, 32.22463 + 125, 126, 123, 122, 127, 131, 132, 130, 127, 124, 126, 127, 128, 126, 122, 125, 32.22464 + 94, 90, 67, 88, 88, 96, 107, 144, 140, 255, 255, 255, 255, 255, 255, 197, 32.22465 + 88, 76, 55, 51, 62, 108, 152, 142, 123, 134, 134, 119, 124, 125, 121, 128, 32.22466 + 120, 101, 105, 109, 112, 119, 127, 128, 125, 128, 130, 133, 135, 135, 137, 139, 32.22467 + 143, 141, 142, 140, 143, 143, 140, 137, 135, 143, 146, 141, 130, 121, 123, 131, 32.22468 + 139, 127, 125, 122, 124, 124, 124, 120, 116, 129, 134, 135, 135, 135, 136, 133, 32.22469 + 126, 130, 125, 118, 114, 115, 118, 120, 123, 115, 120, 124, 130, 132, 133, 129, 32.22470 + 124, 128, 132, 134, 131, 130, 133, 132, 130, 131, 133, 134, 133, 131, 130, 131, 32.22471 + 132, 116, 81, 83, 83, 105, 107, 110, 118, 150, 126, 255, 255, 255, 255, 255, 32.22472 + 255, 255, 82, 71, 53, 51, 58, 102, 149, 140, 121, 133, 129, 113, 119, 124, 32.22473 + 122, 131, 124, 107, 110, 111, 111, 115, 123, 127, 127, 132, 132, 136, 141, 142, 32.22474 + 142, 144, 149, 149, 148, 146, 149, 148, 143, 141, 142, 143, 142, 138, 136, 133, 32.22475 + 134, 133, 133, 123, 121, 118, 119, 121, 123, 120, 117, 130, 134, 136, 136, 137, 32.22476 + 137, 132, 125, 127, 125, 126, 125, 122, 121, 121, 121, 118, 123, 124, 123, 125, 32.22477 + 131, 132, 133, 131, 136, 136, 135, 133, 135, 133, 129, 133, 136, 137, 133, 127, 32.22478 + 124, 124, 125, 119, 86, 98, 107, 116, 120, 117, 124, 146, 255, 255, 255, 255, 32.22479 + 255, 255, 255, 255, 194, 79, 59, 52, 54, 94, 143, 143, 132, 136, 131, 115, 32.22480 + 122, 128, 127, 136, 127, 113, 112, 109, 106, 112, 124, 131, 131, 136, 135, 139, 32.22481 + 147, 148, 147, 149, 156, 155, 152, 150, 154, 152, 146, 146, 150, 139, 138, 139, 32.22482 + 143, 143, 140, 131, 126, 120, 117, 113, 114, 115, 118, 119, 119, 129, 133, 135, 32.22483 + 135, 138, 140, 134, 127, 126, 127, 127, 124, 119, 116, 118, 122, 131, 136, 133, 32.22484 + 126, 122, 127, 131, 132, 133, 136, 135, 134, 135, 139, 139, 136, 136, 134, 132, 32.22485 + 128, 124, 120, 116, 115, 116, 97, 119, 130, 118, 120, 118, 127, 137, 255, 255, 32.22486 + 255, 255, 255, 255, 255, 255, 255, 86, 61, 47, 41, 78, 132, 144, 143, 140, 32.22487 + 137, 122, 130, 138, 137, 146, 137, 120, 114, 105, 102, 112, 128, 135, 135, 137, 32.22488 + 136, 141, 149, 151, 149, 151, 159, 156, 153, 150, 155, 153, 148, 149, 155, 144, 32.22489 + 140, 135, 130, 123, 121, 125, 131, 126, 122, 117, 115, 115, 118, 120, 122, 128, 32.22490 + 132, 134, 136, 140, 143, 138, 130, 128, 127, 123, 115, 107, 108, 116, 124, 127, 32.22491 + 136, 137, 129, 124, 127, 132, 132, 136, 137, 135, 133, 137, 144, 148, 145, 142, 32.22492 + 137, 131, 128, 128, 126, 119, 114, 100, 93, 127, 138, 115, 118, 124, 139, 135, 32.22493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 54, 48, 52, 59, 84, 126, 32.22494 + 151, 146, 128, 130, 141, 137, 135, 140, 138, 122, 115, 107, 105, 111, 122, 132, 32.22495 + 138, 136, 139, 143, 146, 148, 152, 156, 160, 158, 160, 159, 159, 155, 152, 150, 32.22496 + 150, 136, 133, 128, 124, 125, 128, 126, 124, 116, 114, 114, 119, 126, 128, 125, 32.22497 + 121, 125, 136, 144, 142, 138, 137, 137, 135, 128, 128, 120, 107, 101, 110, 122, 32.22498 + 128, 128, 126, 124, 125, 127, 130, 129, 129, 136, 135, 135, 136, 138, 143, 148, 32.22499 + 151, 146, 141, 135, 134, 135, 132, 121, 114, 105, 106, 121, 131, 125, 125, 132, 32.22500 + 132, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 61, 51, 55, 32.22501 + 79, 111, 130, 148, 134, 135, 143, 141, 139, 138, 135, 129, 120, 110, 108, 113, 32.22502 + 122, 129, 132, 134, 137, 142, 146, 149, 153, 157, 160, 155, 158, 157, 156, 152, 32.22503 + 148, 146, 145, 140, 135, 129, 124, 123, 123, 121, 119, 106, 104, 104, 110, 118, 32.22504 + 123, 123, 121, 134, 132, 133, 140, 148, 149, 142, 134, 135, 131, 121, 110, 105, 32.22505 + 108, 111, 110, 112, 114, 118, 122, 125, 127, 126, 127, 129, 130, 133, 136, 139, 32.22506 + 141, 142, 143, 143, 142, 138, 134, 130, 123, 115, 111, 105, 105, 117, 128, 129, 32.22507 + 136, 137, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 57, 32.22508 + 50, 55, 63, 94, 137, 143, 136, 136, 143, 146, 144, 137, 131, 134, 124, 112, 32.22509 + 110, 115, 122, 125, 124, 128, 132, 139, 144, 147, 151, 154, 157, 154, 157, 155, 32.22510 + 154, 149, 144, 141, 140, 134, 131, 127, 124, 121, 117, 111, 108, 103, 103, 106, 32.22511 + 113, 118, 120, 117, 114, 117, 111, 115, 131, 144, 142, 134, 131, 132, 123, 110, 32.22512 + 100, 99, 104, 105, 101, 98, 106, 115, 120, 121, 120, 120, 121, 123, 126, 131, 32.22513 + 135, 138, 137, 136, 136, 137, 139, 138, 134, 126, 119, 113, 111, 105, 109, 119, 32.22514 + 126, 134, 149, 141, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22515 + 255, 55, 66, 72, 46, 64, 134, 138, 139, 142, 146, 154, 153, 142, 136, 131, 32.22516 + 121, 111, 108, 115, 121, 121, 119, 124, 128, 135, 140, 143, 145, 147, 148, 154, 32.22517 + 156, 154, 152, 146, 140, 137, 135, 126, 124, 126, 129, 126, 118, 110, 107, 103, 32.22518 + 104, 107, 111, 110, 106, 98, 92, 85, 87, 102, 123, 129, 120, 120, 129, 123, 32.22519 + 112, 95, 82, 80, 86, 94, 99, 103, 110, 118, 120, 116, 113, 114, 116, 120, 32.22520 + 122, 126, 130, 132, 133, 132, 132, 132, 133, 133, 131, 126, 121, 116, 113, 103, 32.22521 + 114, 127, 131, 137, 149, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22522 + 255, 255, 255, 192, 79, 80, 40, 40, 97, 136, 151, 153, 154, 165, 163, 148, 32.22523 + 142, 126, 117, 108, 107, 113, 120, 120, 119, 124, 128, 134, 138, 139, 140, 140, 32.22524 + 142, 149, 151, 147, 144, 138, 133, 130, 129, 126, 123, 124, 127, 126, 122, 120, 32.22525 + 124, 110, 107, 102, 97, 93, 89, 85, 82, 81, 83, 99, 120, 126, 116, 113, 32.22526 + 120, 110, 102, 91, 79, 73, 76, 85, 95, 112, 118, 121, 120, 115, 113, 115, 32.22527 + 119, 121, 121, 122, 123, 125, 127, 129, 130, 135, 132, 127, 127, 127, 123, 116, 32.22528 + 109, 96, 115, 135, 136, 135, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22529 + 255, 255, 255, 255, 255, 255, 53, 53, 50, 56, 78, 128, 154, 156, 151, 162, 32.22530 + 160, 142, 141, 125, 118, 112, 108, 112, 116, 121, 122, 125, 128, 133, 135, 135, 32.22531 + 136, 137, 139, 142, 142, 137, 132, 126, 122, 121, 121, 124, 116, 112, 115, 115, 32.22532 + 114, 121, 133, 129, 121, 108, 97, 92, 93, 97, 102, 98, 89, 91, 108, 122, 32.22533 + 118, 107, 100, 86, 86, 89, 90, 87, 87, 93, 102, 115, 117, 118, 116, 114, 32.22534 + 115, 119, 123, 120, 118, 117, 116, 117, 121, 124, 128, 137, 132, 125, 122, 123, 32.22535 + 118, 107, 99, 94, 115, 136, 138, 133, 131, 255, 255, 255, 255, 255, 255, 255, 32.22536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 62, 78, 75, 110, 148, 153, 32.22537 + 145, 158, 157, 141, 146, 134, 129, 121, 114, 112, 114, 120, 124, 120, 123, 126, 32.22538 + 129, 129, 131, 133, 136, 137, 136, 129, 123, 117, 115, 115, 117, 116, 110, 110, 32.22539 + 116, 114, 109, 114, 125, 133, 128, 119, 111, 106, 105, 109, 112, 102, 94, 87, 32.22540 + 94, 105, 110, 104, 94, 82, 82, 87, 96, 101, 101, 104, 110, 115, 114, 114, 32.22541 + 113, 114, 116, 118, 119, 116, 115, 113, 112, 113, 116, 120, 123, 130, 127, 122, 32.22542 + 118, 114, 108, 98, 92, 101, 115, 134, 141, 137, 174, 255, 255, 255, 255, 255, 32.22543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 71, 57, 102, 32.22544 + 146, 154, 146, 163, 164, 153, 160, 142, 138, 130, 120, 112, 113, 120, 125, 115, 32.22545 + 117, 119, 121, 123, 126, 130, 133, 138, 135, 128, 120, 114, 114, 115, 118, 109, 32.22546 + 110, 119, 131, 128, 115, 110, 114, 113, 114, 115, 114, 109, 102, 97, 95, 95, 32.22547 + 97, 94, 88, 90, 99, 105, 104, 103, 96, 91, 97, 102, 101, 101, 104, 114, 32.22548 + 113, 110, 111, 112, 113, 113, 111, 111, 111, 110, 110, 111, 113, 116, 118, 118, 32.22549 + 120, 118, 114, 106, 99, 94, 93, 110, 117, 134, 144, 145, 255, 255, 255, 255, 32.22550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22551 + 190, 72, 125, 166, 158, 140, 145, 154, 154, 148, 147, 131, 118, 118, 115, 112, 32.22552 + 119, 111, 116, 120, 119, 118, 121, 129, 134, 131, 127, 115, 106, 107, 113, 111, 32.22553 + 104, 109, 107, 112, 120, 118, 110, 111, 119, 105, 109, 114, 115, 111, 108, 107, 32.22554 + 108, 112, 105, 106, 115, 116, 105, 96, 93, 89, 92, 95, 99, 103, 105, 106, 32.22555 + 107, 115, 113, 109, 107, 107, 107, 108, 108, 110, 110, 108, 108, 107, 106, 106, 32.22556 + 105, 109, 107, 108, 105, 96, 90, 91, 98, 113, 161, 138, 163, 182, 255, 255, 32.22557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22558 + 255, 255, 255, 63, 101, 145, 161, 157, 151, 156, 160, 147, 147, 128, 108, 106, 32.22559 + 108, 108, 113, 109, 116, 120, 121, 119, 122, 127, 132, 126, 118, 105, 94, 95, 32.22560 + 103, 103, 98, 102, 103, 105, 109, 106, 104, 106, 113, 114, 114, 115, 113, 112, 32.22561 + 114, 120, 125, 115, 110, 107, 112, 114, 109, 103, 100, 95, 95, 97, 100, 103, 32.22562 + 106, 110, 110, 108, 110, 112, 110, 103, 99, 99, 101, 105, 105, 104, 104, 103, 32.22563 + 102, 103, 103, 102, 102, 101, 97, 87, 82, 88, 100, 133, 159, 146, 149, 255, 32.22564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22565 + 255, 255, 255, 255, 255, 255, 255, 120, 152, 159, 149, 152, 166, 163, 161, 135, 32.22566 + 107, 105, 112, 112, 113, 111, 115, 120, 122, 120, 120, 125, 130, 125, 115, 100, 32.22567 + 91, 94, 103, 106, 104, 110, 114, 116, 113, 111, 116, 120, 123, 113, 114, 115, 32.22568 + 115, 117, 120, 126, 131, 119, 116, 110, 107, 109, 113, 113, 109, 107, 106, 105, 32.22569 + 106, 109, 112, 116, 119, 106, 112, 117, 115, 106, 99, 98, 100, 102, 102, 100, 32.22570 + 100, 100, 99, 101, 101, 96, 98, 98, 92, 80, 77, 90, 109, 144, 140, 143, 32.22571 + 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 133, 145, 164, 167, 32.22573 + 163, 132, 100, 103, 115, 118, 116, 115, 116, 118, 119, 117, 117, 123, 132, 125, 32.22574 + 113, 100, 96, 102, 110, 113, 111, 102, 112, 115, 109, 108, 117, 122, 121, 111, 32.22575 + 114, 119, 123, 126, 127, 127, 127, 126, 126, 119, 108, 109, 119, 123, 118, 116, 32.22576 + 116, 115, 115, 116, 119, 120, 121, 112, 115, 119, 117, 112, 106, 103, 103, 102, 32.22577 + 102, 99, 99, 98, 98, 98, 100, 95, 99, 100, 94, 82, 83, 100, 122, 156, 32.22578 + 125, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 32.22580 + 137, 126, 119, 91, 74, 92, 115, 119, 117, 122, 118, 116, 115, 112, 112, 122, 32.22581 + 135, 126, 113, 102, 101, 107, 112, 108, 104, 99, 110, 113, 108, 109, 117, 122, 32.22582 + 120, 117, 119, 122, 127, 130, 130, 128, 126, 131, 132, 126, 114, 115, 124, 127, 32.22583 + 122, 117, 118, 117, 117, 116, 117, 116, 117, 118, 114, 111, 111, 112, 111, 107, 32.22584 + 104, 100, 99, 97, 95, 95, 95, 96, 98, 98, 100, 101, 96, 89, 90, 107, 32.22585 + 126, 162, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22587 + 255, 255, 255, 255, 189, 39, 46, 86, 116, 123, 123, 126, 119, 114, 113, 109, 32.22588 + 108, 120, 136, 133, 119, 108, 109, 113, 111, 102, 96, 101, 107, 108, 106, 103, 32.22589 + 109, 114, 116, 117, 114, 111, 110, 113, 116, 117, 117, 122, 123, 122, 119, 118, 32.22590 + 121, 122, 120, 119, 118, 116, 114, 112, 112, 112, 113, 119, 111, 104, 103, 107, 32.22591 + 109, 106, 102, 94, 93, 91, 90, 91, 93, 95, 97, 101, 100, 98, 97, 93, 32.22592 + 93, 102, 114, 129, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22594 + 255, 255, 255, 255, 255, 255, 255, 255, 36, 92, 122, 126, 126, 127, 118, 114, 32.22595 + 114, 109, 107, 117, 134, 139, 123, 110, 113, 117, 114, 105, 98, 90, 86, 82, 32.22596 + 80, 75, 76, 82, 92, 103, 99, 95, 94, 97, 99, 100, 98, 98, 99, 105, 32.22597 + 111, 112, 108, 105, 106, 115, 111, 105, 100, 97, 98, 101, 104, 104, 97, 91, 32.22598 + 89, 90, 90, 89, 87, 87, 87, 86, 87, 91, 95, 99, 102, 106, 99, 95, 32.22599 + 95, 96, 93, 91, 93, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 97, 124, 121, 119, 127, 32.22602 + 117, 115, 116, 111, 106, 116, 132, 135, 117, 105, 109, 115, 113, 106, 101, 93, 32.22603 + 82, 74, 71, 64, 60, 69, 84, 90, 89, 90, 92, 96, 95, 90, 84, 77, 32.22604 + 78, 88, 103, 104, 94, 89, 94, 105, 98, 88, 80, 78, 81, 87, 90, 81, 32.22605 + 79, 76, 72, 68, 65, 65, 65, 84, 84, 85, 88, 93, 99, 105, 110, 111, 32.22606 + 101, 94, 96, 98, 92, 83, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 116, 122, 32.22609 + 129, 126, 119, 123, 129, 116, 97, 99, 117, 128, 116, 112, 118, 119, 113, 110, 32.22610 + 115, 112, 93, 79, 78, 72, 63, 69, 85, 92, 110, 113, 97, 95, 107, 106, 32.22611 + 92, 96, 116, 124, 109, 97, 99, 102, 98, 118, 105, 89, 79, 78, 82, 85, 32.22612 + 86, 68, 64, 63, 56, 40, 29, 44, 68, 86, 84, 89, 100, 105, 103, 101, 32.22613 + 104, 111, 103, 97, 99, 99, 93, 83, 255, 255, 255, 255, 255, 255, 255, 255, 32.22614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 32.22616 + 120, 124, 127, 119, 115, 120, 126, 113, 95, 98, 115, 126, 117, 114, 120, 121, 32.22617 + 117, 118, 126, 118, 104, 92, 90, 87, 85, 93, 105, 112, 128, 130, 116, 114, 32.22618 + 127, 128, 117, 130, 160, 170, 143, 112, 111, 128, 142, 146, 134, 118, 107, 103, 32.22619 + 102, 101, 99, 75, 68, 63, 57, 47, 42, 59, 82, 95, 92, 95, 103, 107, 32.22620 + 105, 104, 107, 106, 99, 95, 98, 96, 85, 131, 255, 255, 255, 255, 255, 255, 32.22621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22623 + 255, 112, 125, 123, 124, 112, 111, 115, 121, 112, 98, 98, 109, 125, 120, 119, 32.22624 + 124, 123, 119, 122, 130, 119, 113, 105, 99, 97, 102, 106, 111, 118, 131, 134, 32.22625 + 125, 127, 141, 145, 136, 145, 175, 189, 163, 132, 131, 153, 173, 166, 156, 143, 32.22626 + 131, 124, 120, 115, 111, 90, 80, 71, 68, 66, 68, 86, 105, 108, 105, 104, 32.22627 + 108, 111, 108, 107, 108, 99, 94, 93, 97, 94, 80, 255, 255, 255, 255, 255, 32.22628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22630 + 255, 255, 255, 120, 128, 121, 118, 117, 114, 116, 122, 120, 112, 108, 110, 122, 32.22631 + 121, 124, 127, 124, 118, 119, 125, 120, 123, 118, 108, 104, 108, 107, 102, 111, 32.22632 + 120, 123, 119, 124, 138, 145, 141, 140, 160, 168, 157, 144, 146, 155, 161, 167, 32.22633 + 158, 144, 134, 126, 121, 118, 115, 101, 90, 81, 82, 84, 91, 104, 117, 115, 32.22634 + 113, 113, 114, 114, 111, 106, 104, 95, 92, 94, 96, 92, 136, 255, 255, 255, 32.22635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22637 + 255, 255, 255, 255, 255, 126, 129, 117, 112, 124, 120, 119, 124, 128, 127, 119, 32.22638 + 112, 112, 116, 123, 127, 125, 119, 117, 119, 123, 130, 129, 120, 114, 114, 108, 32.22639 + 97, 109, 112, 113, 111, 117, 127, 131, 129, 138, 147, 150, 142, 138, 142, 144, 32.22640 + 142, 157, 148, 135, 123, 115, 113, 111, 111, 100, 91, 87, 91, 96, 102, 108, 32.22641 + 112, 116, 118, 117, 117, 115, 111, 103, 97, 97, 96, 94, 93, 84, 255, 255, 32.22642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22644 + 255, 255, 255, 255, 255, 255, 255, 133, 130, 114, 108, 117, 117, 116, 117, 121, 32.22645 + 122, 116, 108, 104, 110, 117, 124, 126, 124, 120, 119, 120, 127, 129, 124, 119, 32.22646 + 119, 112, 103, 111, 110, 107, 107, 109, 111, 111, 109, 122, 130, 133, 125, 120, 32.22647 + 126, 137, 144, 145, 138, 127, 115, 106, 104, 104, 104, 100, 97, 97, 103, 109, 32.22648 + 113, 112, 109, 116, 119, 118, 114, 112, 108, 101, 93, 97, 98, 97, 88, 132, 32.22649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 138, 131, 113, 107, 107, 115, 118, 32.22652 + 113, 110, 111, 112, 108, 108, 111, 115, 120, 125, 127, 124, 121, 120, 122, 123, 32.22653 + 122, 120, 119, 116, 113, 114, 110, 107, 108, 108, 105, 102, 99, 102, 108, 112, 32.22654 + 110, 110, 117, 127, 134, 127, 123, 116, 108, 102, 98, 98, 99, 102, 104, 106, 32.22655 + 112, 118, 121, 117, 111, 118, 120, 115, 108, 106, 105, 102, 95, 92, 96, 97, 32.22656 + 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 132, 114, 109, 106, 32.22659 + 122, 130, 120, 109, 111, 117, 119, 118, 117, 117, 118, 124, 128, 126, 121, 127, 32.22660 + 123, 123, 123, 123, 122, 121, 124, 120, 114, 112, 116, 117, 113, 107, 106, 105, 32.22661 + 104, 104, 108, 115, 118, 113, 105, 109, 109, 107, 103, 99, 98, 99, 100, 100, 32.22662 + 104, 107, 113, 118, 121, 117, 111, 121, 122, 113, 104, 100, 104, 103, 99, 84, 32.22663 + 93, 98, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 140, 129, 32.22666 + 113, 111, 117, 120, 118, 110, 109, 117, 125, 114, 112, 115, 122, 128, 131, 127, 32.22667 + 120, 125, 124, 123, 121, 121, 122, 123, 123, 117, 120, 123, 120, 114, 110, 111, 32.22668 + 113, 113, 116, 118, 119, 118, 112, 106, 102, 95, 98, 102, 106, 107, 107, 105, 32.22669 + 103, 106, 108, 110, 116, 121, 122, 118, 114, 122, 116, 108, 107, 108, 106, 98, 32.22670 + 90, 95, 88, 80, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 137, 32.22673 + 135, 124, 114, 106, 110, 113, 116, 114, 113, 111, 110, 111, 111, 114, 118, 124, 32.22674 + 126, 126, 123, 113, 113, 114, 116, 117, 118, 120, 120, 113, 116, 118, 115, 109, 32.22675 + 107, 109, 112, 117, 117, 117, 117, 116, 114, 112, 110, 107, 107, 108, 109, 110, 32.22676 + 110, 110, 110, 113, 114, 114, 118, 120, 118, 110, 105, 108, 108, 110, 112, 110, 32.22677 + 105, 98, 93, 91, 91, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22680 + 129, 133, 125, 121, 124, 112, 108, 106, 109, 113, 113, 107, 100, 108, 110, 113, 32.22681 + 115, 117, 120, 123, 125, 115, 115, 117, 119, 120, 121, 122, 122, 121, 123, 123, 32.22682 + 121, 117, 116, 118, 120, 119, 117, 115, 114, 114, 115, 117, 118, 118, 116, 113, 32.22683 + 111, 110, 112, 114, 115, 121, 120, 119, 121, 122, 118, 111, 105, 101, 105, 107, 32.22684 + 104, 97, 90, 84, 83, 85, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22687 + 255, 113, 139, 141, 127, 117, 117, 122, 113, 103, 101, 106, 110, 108, 104, 109, 32.22688 + 112, 115, 114, 111, 114, 120, 126, 124, 123, 122, 121, 121, 122, 123, 124, 129, 32.22689 + 131, 132, 129, 127, 124, 123, 123, 117, 115, 112, 110, 110, 111, 113, 116, 117, 32.22690 + 116, 113, 110, 110, 112, 114, 115, 121, 119, 116, 116, 118, 118, 114, 111, 110, 32.22691 + 108, 104, 97, 89, 85, 83, 84, 80, 85, 255, 255, 255, 255, 255, 255, 255, 32.22692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22694 + 255, 255, 255, 114, 151, 158, 138, 115, 102, 115, 110, 102, 100, 102, 107, 110, 32.22695 + 111, 111, 115, 118, 115, 110, 111, 118, 124, 125, 122, 119, 116, 117, 119, 122, 32.22696 + 124, 124, 127, 130, 129, 126, 121, 117, 113, 111, 110, 108, 106, 105, 104, 103, 32.22697 + 103, 108, 108, 108, 110, 110, 111, 112, 113, 119, 113, 107, 105, 107, 110, 110, 32.22698 + 110, 115, 111, 106, 102, 100, 97, 93, 91, 65, 64, 255, 255, 255, 255, 255, 32.22699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22701 + 255, 255, 255, 255, 71, 114, 141, 147, 139, 125, 115, 105, 105, 104, 105, 106, 32.22702 + 108, 110, 111, 111, 115, 117, 117, 113, 112, 117, 120, 122, 120, 117, 116, 118, 32.22703 + 122, 126, 129, 122, 123, 125, 126, 124, 120, 114, 111, 110, 109, 108, 106, 104, 32.22704 + 101, 98, 97, 104, 106, 109, 112, 114, 114, 114, 114, 124, 118, 109, 105, 106, 32.22705 + 109, 110, 110, 110, 106, 102, 98, 95, 89, 81, 75, 53, 117, 255, 255, 255, 32.22706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22708 + 255, 255, 255, 255, 255, 255, 92, 126, 135, 133, 137, 138, 135, 114, 111, 108, 32.22709 + 107, 107, 109, 108, 108, 106, 110, 115, 118, 117, 117, 118, 119, 124, 124, 124, 32.22710 + 125, 126, 127, 129, 130, 128, 127, 127, 127, 127, 126, 124, 122, 120, 119, 117, 32.22711 + 115, 112, 110, 108, 107, 112, 114, 116, 118, 121, 122, 122, 122, 129, 124, 116, 32.22712 + 113, 113, 114, 114, 112, 105, 102, 96, 88, 81, 79, 81, 83, 82, 255, 255, 32.22713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22715 + 255, 255, 255, 255, 255, 255, 255, 255, 105, 147, 152, 142, 141, 137, 129, 136, 32.22716 + 126, 112, 105, 105, 108, 108, 107, 101, 105, 112, 117, 118, 119, 119, 118, 125, 32.22717 + 126, 128, 130, 130, 128, 125, 123, 132, 130, 127, 126, 128, 132, 133, 134, 132, 32.22718 + 130, 127, 124, 122, 121, 121, 122, 122, 123, 122, 124, 126, 127, 128, 130, 124, 32.22719 + 121, 116, 116, 117, 117, 113, 111, 105, 103, 95, 85, 81, 90, 111, 128, 255, 32.22720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 146, 149, 142, 136, 132, 32.22723 + 137, 138, 133, 123, 111, 101, 97, 98, 100, 97, 102, 105, 104, 109, 118, 122, 32.22724 + 118, 118, 122, 128, 132, 133, 132, 132, 132, 142, 140, 136, 133, 131, 133, 134, 32.22725 + 135, 132, 128, 122, 123, 125, 128, 126, 126, 125, 127, 126, 126, 128, 135, 135, 32.22726 + 133, 132, 130, 122, 113, 110, 113, 113, 110, 97, 112, 99, 82, 85, 86, 88, 32.22727 + 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 142, 140, 137, 32.22730 + 136, 134, 135, 139, 136, 129, 117, 105, 99, 98, 99, 99, 103, 105, 105, 111, 32.22731 + 120, 125, 124, 122, 125, 129, 131, 132, 133, 134, 134, 143, 141, 138, 135, 134, 32.22732 + 135, 136, 136, 134, 131, 128, 127, 127, 129, 130, 129, 129, 131, 129, 127, 129, 32.22733 + 134, 134, 131, 129, 127, 121, 113, 110, 111, 110, 105, 96, 102, 93, 75, 70, 32.22734 + 73, 81, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 144, 32.22737 + 136, 136, 145, 143, 138, 138, 139, 135, 125, 112, 102, 99, 100, 105, 106, 105, 32.22738 + 103, 105, 111, 115, 115, 122, 125, 128, 130, 130, 132, 134, 135, 139, 138, 137, 32.22739 + 135, 134, 134, 134, 134, 133, 133, 133, 131, 129, 128, 129, 130, 132, 133, 131, 32.22740 + 128, 128, 132, 130, 127, 121, 123, 121, 116, 114, 114, 108, 102, 88, 89, 93, 32.22741 + 86, 76, 83, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22744 + 138, 150, 135, 137, 149, 147, 138, 136, 140, 140, 133, 120, 110, 106, 106, 106, 32.22745 + 105, 102, 99, 100, 103, 107, 109, 114, 117, 123, 127, 129, 130, 131, 133, 134, 32.22746 + 133, 132, 132, 132, 132, 131, 130, 130, 133, 135, 133, 129, 126, 127, 131, 132, 32.22747 + 134, 131, 127, 128, 130, 129, 125, 114, 118, 122, 121, 118, 115, 105, 96, 77, 32.22748 + 78, 93, 98, 85, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22751 + 255, 255, 146, 150, 132, 134, 145, 142, 134, 134, 139, 141, 137, 128, 119, 115, 32.22752 + 114, 103, 100, 98, 97, 98, 101, 106, 109, 101, 106, 114, 121, 125, 126, 126, 32.22753 + 127, 129, 129, 128, 128, 129, 129, 128, 129, 130, 132, 135, 135, 130, 128, 128, 32.22754 + 130, 129, 129, 127, 123, 123, 126, 125, 120, 110, 115, 119, 117, 113, 106, 93, 32.22755 + 82, 70, 64, 74, 78, 68, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22758 + 255, 255, 255, 255, 148, 150, 136, 137, 144, 141, 138, 136, 138, 139, 137, 133, 32.22759 + 128, 123, 122, 111, 105, 100, 97, 93, 89, 89, 92, 91, 98, 105, 112, 116, 32.22760 + 118, 119, 120, 125, 125, 123, 123, 124, 125, 126, 127, 128, 130, 133, 134, 132, 32.22761 + 130, 128, 128, 124, 124, 121, 118, 118, 120, 118, 114, 108, 111, 108, 103, 96, 32.22762 + 90, 80, 70, 65, 55, 52, 52, 50, 125, 255, 255, 255, 255, 255, 255, 255, 32.22763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22765 + 255, 255, 255, 255, 255, 255, 141, 144, 139, 142, 144, 143, 147, 141, 139, 136, 32.22766 + 136, 135, 133, 129, 125, 123, 115, 108, 103, 96, 86, 82, 83, 90, 95, 99, 32.22767 + 103, 105, 108, 112, 115, 119, 118, 116, 116, 116, 118, 120, 122, 122, 123, 125, 32.22768 + 128, 130, 128, 125, 123, 122, 122, 118, 112, 111, 112, 110, 104, 105, 102, 93, 32.22769 + 83, 79, 80, 80, 76, 79, 71, 58, 57, 67, 255, 255, 255, 255, 255, 255, 32.22770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 135, 141, 139, 140, 150, 145, 32.22773 + 140, 135, 134, 136, 135, 130, 125, 124, 117, 113, 113, 109, 100, 97, 100, 95, 32.22774 + 95, 96, 96, 97, 102, 109, 114, 113, 112, 109, 108, 108, 111, 115, 117, 117, 32.22775 + 116, 118, 122, 126, 126, 121, 116, 121, 121, 116, 109, 106, 107, 103, 99, 102, 32.22776 + 95, 83, 71, 71, 81, 88, 91, 104, 101, 84, 82, 148, 255, 255, 255, 255, 32.22777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 137, 137, 139, 138, 32.22780 + 136, 139, 140, 138, 135, 132, 129, 125, 123, 119, 115, 111, 112, 113, 110, 103, 32.22781 + 96, 90, 87, 82, 80, 85, 96, 110, 120, 118, 110, 102, 98, 103, 112, 116, 32.22782 + 116, 113, 118, 119, 114, 114, 119, 121, 118, 121, 127, 119, 97, 87, 93, 97, 32.22783 + 92, 86, 73, 57, 64, 86, 93, 87, 92, 101, 96, 97, 105, 255, 255, 255, 32.22784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 141, 137, 32.22787 + 135, 133, 129, 144, 143, 142, 139, 136, 133, 130, 128, 121, 117, 114, 113, 114, 32.22788 + 113, 108, 102, 96, 92, 86, 81, 80, 85, 92, 97, 106, 102, 97, 94, 100, 32.22789 + 105, 105, 102, 99, 106, 110, 106, 103, 106, 112, 113, 118, 117, 107, 92, 86, 32.22790 + 89, 89, 84, 66, 65, 55, 56, 75, 85, 88, 96, 92, 91, 94, 255, 255, 32.22791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22794 + 217, 138, 136, 134, 131, 143, 143, 142, 140, 137, 135, 132, 131, 124, 120, 115, 32.22795 + 115, 116, 116, 113, 111, 106, 102, 97, 91, 86, 82, 81, 81, 87, 84, 85, 32.22796 + 90, 95, 96, 94, 91, 94, 103, 108, 103, 97, 99, 106, 111, 112, 103, 91, 32.22797 + 82, 78, 75, 70, 66, 69, 82, 77, 70, 77, 84, 83, 86, 80, 83, 146, 32.22798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22801 + 255, 255, 255, 255, 217, 142, 141, 139, 140, 139, 139, 137, 134, 132, 131, 125, 32.22802 + 122, 118, 117, 117, 119, 119, 118, 114, 112, 110, 106, 103, 95, 89, 85, 79, 32.22803 + 77, 78, 82, 83, 79, 75, 73, 81, 85, 87, 84, 80, 79, 83, 87, 85, 32.22804 + 76, 69, 68, 67, 63, 62, 64, 82, 102, 102, 89, 91, 92, 82, 75, 70, 32.22805 + 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22808 + 255, 255, 255, 255, 255, 255, 255, 218, 143, 137, 137, 137, 137, 136, 135, 134, 32.22809 + 133, 130, 127, 125, 123, 123, 125, 126, 128, 119, 118, 117, 116, 115, 109, 101, 32.22810 + 96, 92, 85, 81, 81, 75, 66, 59, 59, 60, 58, 56, 57, 58, 59, 58, 32.22811 + 59, 55, 53, 54, 59, 62, 64, 73, 85, 84, 100, 97, 87, 94, 97, 88, 32.22812 + 79, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 139, 139, 139, 140, 139, 32.22816 + 139, 138, 137, 135, 133, 132, 130, 130, 132, 133, 134, 122, 120, 118, 118, 118, 32.22817 + 114, 107, 100, 102, 95, 90, 91, 88, 81, 79, 84, 73, 66, 63, 67, 71, 32.22818 + 71, 69, 69, 61, 63, 63, 61, 62, 70, 82, 92, 96, 101, 90, 80, 89, 32.22819 + 95, 90, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 141, 32.22823 + 141, 141, 141, 142, 141, 135, 135, 134, 133, 132, 132, 133, 134, 126, 122, 118, 32.22824 + 117, 119, 118, 113, 109, 103, 97, 97, 103, 103, 100, 101, 111, 100, 94, 90, 32.22825 + 93, 92, 88, 85, 89, 81, 82, 74, 63, 63, 78, 88, 92, 104, 105, 93, 32.22826 + 88, 94, 93, 88, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22830 + 216, 139, 140, 141, 141, 142, 141, 133, 133, 133, 132, 130, 129, 131, 131, 130, 32.22831 + 125, 119, 119, 123, 125, 123, 120, 105, 98, 98, 104, 102, 94, 96, 105, 108, 32.22832 + 103, 100, 98, 90, 81, 79, 84, 86, 86, 74, 61, 68, 90, 101, 99, 92, 32.22833 + 97, 95, 98, 103, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22837 + 255, 255, 255, 255, 216, 136, 135, 139, 143, 137, 134, 131, 129, 130, 130, 129, 32.22838 + 128, 122, 124, 126, 128, 130, 129, 128, 127, 113, 119, 119, 111, 107, 108, 109, 32.22839 + 106, 100, 106, 111, 107, 97, 89, 87, 88, 86, 85, 81, 79, 86, 98, 100, 32.22840 + 96, 92, 93, 94, 98, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22844 + 255, 255, 255, 255, 255, 255, 255, 214, 131, 136, 142, 141, 138, 135, 134, 134, 32.22845 + 134, 132, 130, 126, 127, 128, 129, 128, 128, 125, 124, 120, 126, 125, 116, 109, 32.22846 + 111, 115, 116, 115, 114, 110, 103, 98, 97, 103, 109, 101, 95, 83, 75, 80, 32.22847 + 92, 98, 97, 101, 96, 89, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 141, 139, 137, 135, 32.22852 + 135, 135, 134, 132, 129, 129, 130, 130, 130, 128, 126, 122, 121, 122, 125, 124, 32.22853 + 116, 109, 111, 117, 120, 120, 115, 107, 101, 98, 101, 107, 111, 99, 92, 82, 32.22854 + 77, 84, 97, 104, 105, 105, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 32.22859 + 132, 130, 129, 130, 128, 125, 123, 130, 130, 129, 129, 128, 126, 123, 121, 123, 32.22860 + 122, 119, 116, 115, 117, 118, 118, 119, 115, 110, 108, 107, 105, 102, 98, 92, 32.22861 + 88, 84, 86, 94, 102, 104, 104, 150, 255, 255, 255, 255, 255, 255, 255, 255, 32.22862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22866 + 255, 255, 255, 255, 211, 124, 122, 121, 119, 127, 127, 127, 127, 126, 125, 124, 32.22867 + 124, 126, 120, 116, 120, 125, 126, 121, 116, 122, 120, 118, 118, 118, 114, 106, 32.22868 + 99, 99, 93, 88, 91, 96, 98, 97, 95, 255, 255, 255, 255, 255, 255, 255, 32.22869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22873 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 120, 120, 123, 125, 125, 125, 124, 32.22874 + 125, 124, 124, 122, 116, 112, 120, 126, 126, 120, 114, 124, 122, 118, 117, 117, 32.22875 + 116, 111, 107, 99, 90, 83, 86, 93, 97, 99, 152, 255, 255, 255, 255, 255, 32.22876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 124, 123, 32.22881 + 123, 122, 122, 123, 123, 116, 112, 112, 118, 120, 117, 116, 119, 122, 120, 117, 32.22882 + 115, 113, 110, 106, 103, 89, 81, 78, 86, 95, 98, 255, 255, 255, 255, 255, 32.22883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22888 + 255, 255, 211, 121, 121, 121, 121, 118, 117, 119, 122, 120, 116, 121, 131, 120, 32.22889 + 123, 124, 123, 117, 110, 101, 96, 88, 83, 85, 96, 152, 255, 255, 255, 255, 32.22890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 119, 118, 117, 116, 118, 120, 32.22896 + 122, 121, 126, 125, 114, 104, 100, 94, 89, 143, 255, 255, 255, 255, 255, 255, 32.22897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 96, 111, 32.22903 + 114, 86, 117, 213, 255, 255, 255, 255, 255, 255, 255, 223, 132, 70, 85, 118, 32.22904 + 141, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22909 + 255, 255, 255, 255, 255, 255, 255, 200, 112, 113, 112, 118, 117, 99, 94, 85, 32.22910 + 79, 82, 83, 73, 57, 58, 71, 69, 61, 66, 68, 67, 70, 75, 74, 77, 32.22911 + 89, 109, 126, 124, 114, 76, 60, 41, 28, 25, 102, 255, 255, 255, 255, 255, 32.22912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22916 + 255, 178, 32, 35, 28, 20, 17, 33, 52, 85, 106, 104, 101, 103, 98, 102, 32.22917 + 98, 87, 77, 73, 71, 61, 50, 61, 65, 60, 58, 67, 68, 65, 70, 53, 32.22918 + 55, 63, 82, 107, 120, 110, 94, 83, 68, 52, 41, 37, 34, 28, 23, 76, 32.22919 + 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22923 + 255, 177, 20, 25, 30, 31, 28, 28, 30, 47, 57, 80, 91, 85, 84, 85, 32.22924 + 83, 86, 83, 76, 67, 66, 66, 63, 59, 66, 60, 52, 56, 66, 61, 55, 32.22925 + 64, 55, 57, 59, 63, 75, 86, 90, 89, 84, 72, 60, 53, 49, 43, 31, 32.22926 + 23, 26, 23, 23, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22930 + 255, 255, 175, 26, 24, 28, 33, 37, 40, 50, 59, 69, 68, 76, 75, 68, 32.22931 + 69, 73, 72, 63, 62, 61, 56, 57, 60, 66, 69, 68, 60, 54, 62, 67, 32.22932 + 50, 43, 57, 60, 69, 71, 62, 54, 61, 76, 89, 81, 74, 66, 63, 62, 32.22933 + 52, 40, 28, 25, 23, 24, 25, 30, 106, 255, 255, 255, 255, 255, 255, 255, 32.22934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22937 + 255, 255, 177, 24, 26, 31, 32, 42, 52, 60, 63, 70, 77, 78, 70, 72, 32.22938 + 72, 63, 62, 63, 58, 57, 56, 55, 54, 53, 52, 57, 62, 66, 64, 64, 32.22939 + 73, 71, 49, 42, 61, 57, 68, 75, 71, 66, 67, 72, 76, 73, 69, 64, 32.22940 + 64, 66, 58, 46, 33, 25, 24, 23, 23, 27, 30, 32, 106, 255, 255, 255, 32.22941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22944 + 255, 255, 255, 18, 19, 28, 36, 38, 43, 56, 71, 79, 77, 74, 74, 72, 32.22945 + 65, 71, 73, 68, 67, 62, 49, 57, 55, 55, 55, 55, 54, 55, 60, 64, 32.22946 + 67, 71, 79, 77, 56, 52, 72, 84, 77, 68, 65, 72, 77, 71, 62, 62, 32.22947 + 60, 55, 56, 59, 53, 44, 33, 31, 29, 26, 23, 27, 32, 33, 31, 36, 32.22948 + 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22951 + 255, 255, 255, 23, 23, 24, 25, 33, 45, 53, 53, 58, 69, 77, 75, 72, 32.22952 + 70, 71, 62, 67, 73, 73, 75, 74, 61, 58, 55, 57, 64, 66, 62, 61, 32.22953 + 63, 66, 70, 70, 74, 75, 62, 59, 75, 99, 87, 71, 63, 66, 74, 70, 32.22954 + 63, 63, 59, 53, 53, 57, 54, 48, 39, 41, 38, 32, 25, 28, 33, 34, 32.22955 + 29, 35, 24, 24, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22958 + 255, 255, 255, 181, 32, 36, 43, 47, 44, 48, 55, 68, 58, 53, 56, 63, 32.22959 + 67, 70, 73, 78, 64, 63, 69, 72, 84, 89, 82, 69, 65, 68, 73, 73, 32.22960 + 65, 59, 59, 71, 72, 66, 65, 69, 62, 58, 69, 74, 81, 85, 82, 77, 32.22961 + 75, 73, 71, 77, 72, 64, 63, 67, 67, 61, 55, 50, 47, 38, 29, 29, 32.22962 + 34, 34, 27, 32, 21, 20, 23, 97, 255, 255, 255, 255, 255, 255, 255, 255, 32.22963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22965 + 255, 255, 255, 255, 186, 44, 49, 58, 69, 75, 73, 66, 60, 70, 69, 74, 32.22966 + 78, 75, 67, 66, 71, 71, 74, 69, 59, 67, 83, 83, 69, 71, 68, 71, 32.22967 + 87, 102, 89, 74, 78, 78, 78, 78, 78, 76, 70, 63, 57, 65, 75, 83, 32.22968 + 82, 73, 67, 69, 74, 87, 85, 78, 74, 67, 64, 66, 71, 72, 64, 54, 32.22969 + 48, 39, 32, 34, 45, 42, 39, 35, 29, 27, 25, 255, 255, 255, 255, 255, 32.22970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22972 + 255, 255, 255, 255, 255, 62, 55, 67, 66, 68, 68, 68, 70, 74, 77, 69, 32.22973 + 65, 64, 68, 67, 62, 60, 63, 65, 67, 62, 51, 59, 72, 74, 61, 70, 32.22974 + 77, 76, 77, 85, 84, 74, 74, 73, 69, 65, 63, 63, 62, 58, 55, 58, 32.22975 + 63, 69, 74, 74, 72, 68, 67, 86, 82, 74, 77, 85, 86, 78, 67, 58, 32.22976 + 57, 59, 64, 57, 44, 31, 29, 35, 34, 30, 27, 25, 23, 22, 100, 255, 32.22977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22979 + 255, 255, 255, 255, 255, 255, 62, 68, 65, 71, 68, 63, 57, 53, 57, 67, 32.22980 + 76, 68, 60, 54, 57, 60, 58, 53, 49, 53, 56, 51, 41, 47, 57, 60, 32.22981 + 48, 51, 67, 63, 51, 56, 64, 63, 62, 68, 60, 50, 46, 47, 49, 48, 32.22982 + 46, 53, 57, 62, 62, 59, 58, 59, 62, 63, 75, 83, 81, 78, 81, 80, 32.22983 + 74, 79, 71, 67, 69, 65, 54, 39, 31, 36, 35, 31, 28, 24, 24, 22, 32.22984 + 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22986 + 255, 255, 255, 255, 255, 255, 255, 189, 61, 67, 67, 71, 65, 60, 55, 54, 32.22987 + 59, 67, 73, 70, 60, 52, 54, 59, 57, 47, 37, 42, 43, 39, 33, 37, 32.22988 + 47, 49, 42, 57, 68, 62, 51, 59, 71, 72, 73, 70, 60, 48, 42, 43, 32.22989 + 46, 45, 43, 48, 55, 57, 47, 34, 31, 42, 55, 51, 68, 75, 68, 66, 32.22990 + 75, 81, 81, 95, 84, 73, 71, 70, 65, 52, 42, 41, 38, 31, 26, 22, 32.22991 + 22, 23, 25, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22993 + 255, 255, 255, 255, 255, 255, 255, 255, 192, 61, 55, 59, 59, 60, 49, 40, 32.22994 + 38, 45, 53, 59, 61, 69, 62, 55, 55, 59, 57, 44, 30, 33, 34, 32, 32.22995 + 28, 34, 43, 47, 41, 43, 41, 31, 33, 46, 51, 47, 53, 67, 58, 49, 32.22996 + 46, 47, 49, 49, 47, 41, 44, 44, 39, 32, 31, 38, 47, 61, 54, 45, 32.22997 + 46, 66, 86, 89, 79, 85, 80, 75, 77, 80, 76, 61, 47, 48, 41, 31, 32.22998 + 23, 17, 18, 20, 23, 28, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.22999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23000 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 70, 70, 62, 53, 54, 59, 53, 32.23001 + 41, 28, 27, 36, 48, 53, 54, 61, 58, 53, 51, 52, 51, 41, 30, 27, 32.23002 + 28, 28, 25, 32, 40, 46, 44, 53, 48, 36, 41, 55, 55, 49, 54, 52, 32.23003 + 49, 46, 45, 46, 48, 49, 49, 46, 41, 40, 47, 57, 61, 54, 46, 47, 32.23004 + 41, 38, 42, 56, 71, 79, 82, 95, 90, 81, 76, 74, 75, 67, 58, 60, 32.23005 + 52, 40, 27, 21, 19, 21, 22, 34, 21, 92, 255, 255, 255, 255, 255, 255, 32.23006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 60, 69, 74, 65, 55, 58, 32.23008 + 65, 59, 52, 46, 46, 51, 56, 57, 55, 45, 47, 45, 38, 37, 39, 38, 32.23009 + 33, 23, 24, 25, 23, 30, 37, 43, 43, 40, 46, 39, 34, 44, 52, 49, 32.23010 + 49, 50, 50, 50, 47, 45, 44, 47, 50, 52, 48, 47, 51, 59, 61, 57, 32.23011 + 52, 30, 37, 51, 57, 50, 43, 53, 72, 93, 92, 84, 74, 69, 73, 74, 32.23012 + 72, 71, 64, 51, 39, 31, 25, 24, 22, 25, 17, 13, 98, 255, 255, 255, 32.23013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 64, 70, 80, 82, 71, 32.23015 + 58, 59, 67, 41, 44, 48, 51, 50, 45, 38, 33, 33, 38, 36, 27, 24, 32.23016 + 29, 35, 36, 22, 22, 21, 22, 26, 34, 38, 41, 44, 64, 59, 41, 50, 32.23017 + 69, 72, 65, 63, 64, 63, 57, 50, 47, 50, 55, 49, 53, 53, 43, 31, 32.23018 + 30, 40, 52, 43, 43, 55, 71, 66, 46, 40, 48, 53, 67, 79, 81, 79, 32.23019 + 81, 78, 75, 69, 66, 55, 44, 32, 25, 18, 16, 7, 15, 26, 24, 90, 32.23020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 56, 57, 54, 60, 32.23022 + 65, 58, 46, 49, 61, 59, 49, 37, 34, 38, 39, 33, 26, 32, 32, 32, 32.23023 + 32, 31, 28, 26, 25, 19, 20, 22, 23, 24, 29, 37, 42, 42, 46, 47, 32.23024 + 45, 41, 41, 43, 47, 52, 52, 51, 44, 37, 34, 40, 46, 55, 53, 50, 32.23025 + 48, 48, 46, 44, 43, 36, 38, 40, 43, 45, 47, 48, 48, 50, 55, 62, 32.23026 + 69, 75, 77, 79, 80, 75, 77, 68, 59, 52, 39, 27, 32, 33, 24, 11, 32.23027 + 9, 21, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 81, 83, 66, 32.23029 + 66, 67, 70, 66, 55, 46, 44, 44, 38, 33, 32, 36, 37, 36, 33, 25, 32.23030 + 26, 26, 25, 24, 22, 20, 19, 22, 22, 21, 19, 21, 22, 26, 30, 29, 32.23031 + 33, 39, 42, 42, 41, 43, 46, 44, 49, 53, 53, 47, 39, 33, 31, 37, 32.23032 + 35, 33, 34, 35, 34, 30, 26, 32, 31, 35, 38, 40, 42, 43, 43, 53, 32.23033 + 52, 50, 49, 52, 55, 60, 63, 69, 74, 71, 65, 66, 53, 41, 40, 30, 32.23034 + 25, 12, 9, 15, 11, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 73, 32.23036 + 71, 68, 68, 64, 61, 60, 59, 47, 36, 30, 31, 32, 32, 31, 32, 33, 32.23037 + 34, 26, 26, 25, 24, 23, 22, 21, 20, 24, 21, 20, 18, 22, 22, 23, 32.23038 + 22, 24, 30, 38, 43, 46, 44, 44, 42, 31, 36, 43, 51, 53, 49, 41, 32.23039 + 35, 37, 35, 35, 38, 42, 42, 36, 30, 35, 35, 38, 40, 41, 41, 42, 32.23040 + 42, 46, 44, 42, 42, 47, 52, 58, 62, 54, 62, 62, 65, 71, 61, 45, 32.23041 + 40, 31, 29, 18, 16, 21, 20, 18, 255, 255, 255, 255, 255, 255, 255, 255, 32.23042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 32.23043 + 64, 53, 46, 63, 65, 57, 47, 49, 61, 60, 50, 30, 34, 37, 35, 28, 32.23044 + 24, 25, 27, 27, 26, 24, 23, 22, 22, 22, 21, 22, 18, 18, 21, 27, 32.23045 + 30, 31, 28, 30, 32, 36, 40, 40, 40, 36, 34, 30, 29, 31, 39, 49, 32.23046 + 53, 50, 45, 49, 45, 44, 48, 54, 56, 51, 44, 43, 43, 44, 43, 44, 32.23047 + 43, 41, 41, 38, 39, 43, 48, 55, 59, 61, 61, 67, 75, 75, 77, 85, 32.23048 + 81, 64, 57, 35, 31, 22, 22, 34, 37, 38, 118, 255, 255, 255, 255, 255, 32.23049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23050 + 255, 75, 75, 65, 55, 62, 70, 64, 49, 46, 60, 64, 59, 35, 39, 41, 32.23051 + 37, 29, 22, 21, 23, 22, 20, 18, 16, 15, 16, 17, 17, 21, 17, 19, 32.23052 + 23, 30, 35, 36, 34, 33, 30, 27, 28, 29, 31, 27, 25, 37, 31, 28, 32.23053 + 33, 42, 47, 43, 37, 43, 39, 36, 38, 44, 48, 48, 46, 44, 42, 40, 32.23054 + 38, 38, 35, 33, 32, 37, 38, 40, 45, 52, 55, 55, 53, 71, 79, 75, 32.23055 + 74, 84, 86, 75, 70, 50, 41, 29, 29, 43, 43, 40, 45, 208, 255, 255, 32.23056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23057 + 255, 255, 73, 78, 77, 72, 63, 59, 72, 73, 57, 46, 49, 49, 45, 39, 32.23058 + 39, 39, 37, 33, 29, 26, 25, 22, 20, 17, 14, 14, 16, 18, 19, 22, 32.23059 + 19, 20, 22, 28, 31, 36, 36, 37, 31, 24, 24, 27, 32, 30, 28, 30, 32.23060 + 27, 27, 35, 45, 48, 40, 32, 35, 33, 31, 32, 36, 40, 44, 45, 41, 32.23061 + 41, 39, 37, 36, 32, 30, 29, 34, 32, 32, 36, 47, 56, 60, 61, 60, 32.23062 + 68, 62, 54, 65, 72, 70, 67, 70, 61, 44, 42, 49, 44, 31, 31, 80, 32.23063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23064 + 255, 255, 255, 255, 74, 66, 61, 63, 64, 62, 69, 70, 57, 43, 40, 38, 32.23065 + 37, 41, 37, 34, 34, 37, 36, 32, 27, 29, 26, 22, 19, 19, 21, 24, 32.23066 + 26, 22, 20, 23, 23, 26, 29, 37, 40, 43, 35, 27, 27, 32, 36, 33, 32.23067 + 30, 27, 25, 27, 35, 44, 47, 40, 32, 29, 31, 33, 33, 34, 36, 41, 32.23068 + 44, 40, 38, 39, 37, 35, 33, 33, 32, 27, 26, 31, 39, 53, 63, 69, 32.23069 + 67, 64, 73, 62, 51, 58, 67, 69, 70, 76, 71, 56, 52, 53, 40, 25, 32.23070 + 24, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23071 + 255, 255, 255, 255, 255, 81, 74, 61, 54, 62, 72, 69, 69, 64, 55, 45, 32.23072 + 42, 47, 49, 47, 37, 30, 32, 38, 40, 34, 25, 30, 27, 23, 21, 20, 32.23073 + 23, 27, 29, 21, 21, 24, 25, 25, 31, 40, 46, 44, 35, 27, 27, 31, 32.23074 + 34, 31, 24, 42, 35, 31, 32, 37, 38, 33, 27, 19, 25, 30, 31, 29, 32.23075 + 29, 34, 37, 35, 33, 35, 35, 34, 33, 32, 31, 27, 29, 36, 48, 57, 32.23076 + 62, 58, 52, 59, 68, 56, 40, 43, 51, 52, 55, 62, 63, 54, 51, 49, 32.23077 + 34, 21, 23, 22, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23078 + 255, 255, 255, 255, 255, 255, 193, 70, 64, 59, 63, 65, 66, 51, 62, 62, 32.23079 + 47, 45, 57, 59, 50, 41, 42, 32, 21, 27, 29, 28, 31, 23, 24, 25, 32.23080 + 25, 22, 19, 24, 28, 21, 21, 31, 32, 22, 25, 34, 34, 31, 25, 26, 32.23081 + 34, 36, 27, 24, 27, 21, 27, 29, 28, 31, 36, 36, 31, 25, 25, 27, 32.23082 + 33, 38, 37, 30, 21, 26, 18, 17, 26, 31, 27, 25, 26, 20, 29, 41, 32.23083 + 50, 57, 62, 58, 52, 69, 63, 56, 47, 40, 38, 38, 40, 33, 51, 46, 32.23084 + 48, 42, 32, 31, 13, 22, 29, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.23085 + 255, 255, 255, 255, 255, 255, 255, 255, 58, 54, 53, 64, 70, 65, 52, 56, 32.23086 + 53, 43, 32, 44, 64, 65, 48, 45, 46, 33, 21, 26, 25, 20, 21, 18, 32.23087 + 20, 24, 24, 23, 23, 27, 28, 30, 25, 27, 23, 15, 22, 38, 39, 40, 32.23088 + 36, 37, 40, 39, 33, 31, 28, 28, 32, 32, 28, 28, 33, 35, 32, 28, 32.23089 + 25, 24, 27, 32, 36, 34, 29, 19, 15, 17, 25, 26, 21, 16, 16, 30, 32.23090 + 40, 51, 50, 51, 52, 55, 55, 59, 57, 52, 44, 35, 32, 34, 35, 29, 32.23091 + 49, 49, 48, 39, 28, 32, 20, 13, 16, 19, 255, 255, 255, 255, 255, 255, 32.23092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 56, 59, 58, 60, 61, 62, 32.23093 + 57, 50, 46, 39, 31, 41, 56, 56, 43, 44, 47, 37, 29, 34, 32, 25, 32.23094 + 22, 20, 22, 23, 25, 26, 26, 28, 29, 36, 28, 29, 23, 17, 28, 41, 32.23095 + 37, 40, 40, 39, 35, 34, 34, 33, 28, 38, 38, 36, 30, 28, 31, 33, 32.23096 + 33, 33, 27, 21, 20, 24, 30, 34, 35, 28, 25, 24, 27, 23, 19, 18, 32.23097 + 21, 39, 47, 55, 48, 43, 43, 50, 54, 50, 52, 49, 42, 34, 30, 32, 32.23098 + 33, 41, 53, 47, 46, 42, 34, 36, 19, 13, 14, 16, 94, 255, 255, 255, 32.23099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 56, 62, 63, 63, 32.23100 + 62, 60, 57, 33, 45, 52, 46, 37, 37, 41, 42, 31, 41, 38, 33, 38, 32.23101 + 36, 29, 32, 28, 28, 25, 22, 25, 31, 33, 33, 37, 39, 43, 38, 34, 32.23102 + 44, 49, 38, 36, 40, 37, 31, 31, 39, 39, 31, 41, 41, 41, 38, 36, 32.23103 + 35, 36, 35, 40, 32, 25, 21, 25, 30, 37, 39, 46, 43, 40, 33, 27, 32.23104 + 22, 24, 28, 36, 45, 49, 42, 37, 37, 43, 45, 41, 46, 49, 43, 37, 32.23105 + 33, 36, 39, 49, 49, 34, 37, 49, 48, 46, 22, 21, 22, 24, 18, 255, 32.23106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 71, 56, 50, 32.23107 + 59, 77, 77, 59, 40, 32, 45, 55, 48, 36, 30, 37, 46, 26, 41, 42, 32.23108 + 35, 33, 27, 24, 30, 33, 31, 24, 20, 25, 39, 46, 45, 49, 55, 62, 32.23109 + 52, 45, 56, 62, 51, 44, 46, 41, 32, 33, 42, 44, 39, 39, 37, 42, 32.23110 + 44, 46, 40, 36, 31, 40, 35, 33, 30, 35, 39, 46, 49, 57, 59, 61, 32.23111 + 54, 46, 38, 30, 28, 37, 41, 44, 39, 39, 38, 36, 34, 36, 39, 44, 32.23112 + 43, 40, 36, 38, 41, 36, 43, 33, 38, 50, 54, 60, 44, 27, 31, 30, 32.23113 + 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 71, 32.23114 + 59, 59, 66, 73, 67, 55, 45, 48, 42, 38, 36, 38, 40, 44, 48, 36, 32.23115 + 50, 51, 39, 31, 23, 19, 25, 36, 33, 23, 17, 29, 49, 61, 60, 63, 32.23116 + 73, 77, 56, 41, 58, 76, 72, 60, 55, 46, 39, 37, 41, 43, 41, 38, 32.23117 + 35, 41, 48, 55, 46, 36, 27, 36, 35, 38, 40, 46, 49, 55, 57, 62, 32.23118 + 74, 86, 86, 79, 62, 44, 29, 38, 42, 46, 44, 44, 41, 35, 28, 32, 32.23119 + 35, 36, 38, 38, 38, 38, 37, 35, 56, 55, 53, 49, 47, 65, 60, 34, 32.23120 + 34, 32, 24, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 32.23121 + 71, 62, 68, 81, 81, 67, 52, 54, 64, 58, 41, 30, 32, 41, 44, 43, 32.23122 + 44, 47, 55, 51, 40, 36, 32, 27, 31, 43, 39, 29, 23, 35, 56, 67, 32.23123 + 62, 65, 83, 87, 56, 34, 54, 82, 86, 77, 66, 53, 48, 44, 41, 43, 32.23124 + 47, 48, 40, 44, 54, 64, 55, 41, 28, 32, 33, 39, 41, 46, 47, 51, 32.23125 + 53, 65, 80, 95, 100, 96, 80, 56, 33, 32, 42, 50, 49, 48, 43, 40, 32.23126 + 34, 36, 35, 35, 36, 39, 37, 35, 33, 42, 61, 58, 53, 48, 44, 60, 32.23127 + 53, 37, 31, 28, 23, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23128 + 255, 100, 77, 71, 71, 80, 83, 74, 62, 60, 66, 56, 42, 36, 41, 44, 32.23129 + 40, 37, 36, 40, 45, 38, 31, 39, 40, 36, 37, 49, 43, 35, 27, 38, 32.23130 + 59, 65, 58, 60, 85, 92, 59, 30, 50, 80, 85, 90, 76, 62, 58, 53, 32.23131 + 49, 51, 59, 59, 47, 48, 59, 71, 62, 46, 31, 31, 31, 36, 36, 39, 32.23132 + 37, 40, 41, 61, 73, 85, 88, 88, 77, 56, 35, 21, 37, 50, 51, 47, 32.23133 + 44, 44, 45, 39, 38, 35, 36, 39, 40, 34, 29, 30, 38, 28, 34, 44, 32.23134 + 50, 57, 38, 34, 23, 16, 16, 22, 255, 255, 255, 255, 255, 255, 255, 255, 32.23135 + 255, 255, 199, 86, 86, 82, 74, 67, 65, 72, 77, 66, 51, 50, 45, 42, 32.23136 + 40, 34, 27, 24, 26, 32, 33, 34, 33, 39, 45, 45, 39, 45, 46, 55, 32.23137 + 63, 66, 68, 72, 78, 86, 83, 86, 90, 72, 44, 57, 104, 108, 99, 86, 32.23138 + 77, 69, 62, 56, 51, 49, 51, 56, 64, 81, 87, 70, 45, 38, 36, 42, 32.23139 + 41, 40, 26, 16, 35, 53, 80, 84, 70, 73, 75, 56, 35, 18, 22, 44, 32.23140 + 44, 23, 38, 52, 31, 34, 33, 32, 32, 34, 34, 31, 29, 24, 24, 30, 32.23141 + 34, 35, 36, 45, 53, 48, 44, 36, 24, 20, 100, 255, 255, 255, 255, 255, 32.23142 + 255, 255, 255, 255, 94, 88, 82, 76, 85, 94, 89, 77, 63, 46, 33, 50, 32.23143 + 40, 31, 31, 33, 29, 25, 21, 28, 37, 41, 40, 40, 45, 52, 53, 44, 32.23144 + 48, 60, 71, 76, 77, 82, 89, 97, 96, 102, 108, 92, 62, 70, 114, 111, 32.23145 + 109, 110, 103, 82, 56, 46, 48, 56, 50, 48, 59, 82, 94, 76, 49, 39, 32.23146 + 41, 42, 44, 52, 47, 34, 41, 56, 65, 70, 66, 69, 72, 57, 32, 30, 32.23147 + 19, 29, 36, 18, 9, 21, 26, 26, 26, 28, 25, 26, 25, 26, 26, 40, 32.23148 + 37, 38, 39, 38, 38, 46, 54, 49, 46, 42, 40, 45, 48, 255, 255, 255, 32.23149 + 255, 255, 255, 255, 255, 255, 94, 81, 72, 66, 73, 77, 68, 55, 47, 43, 32.23150 + 42, 51, 36, 26, 30, 40, 42, 37, 32, 45, 49, 49, 46, 48, 53, 50, 32.23151 + 46, 57, 59, 72, 85, 92, 94, 98, 103, 107, 109, 115, 122, 110, 79, 78, 32.23152 + 112, 118, 119, 126, 123, 102, 69, 48, 39, 42, 44, 48, 60, 81, 92, 77, 32.23153 + 53, 38, 45, 44, 46, 53, 44, 29, 23, 33, 35, 62, 85, 87, 83, 64, 32.23154 + 29, 26, 24, 33, 42, 32, 16, 15, 24, 23, 23, 23, 21, 22, 24, 27, 32.23155 + 30, 29, 28, 33, 39, 42, 44, 52, 57, 54, 52, 52, 58, 68, 69, 255, 32.23156 + 255, 255, 255, 255, 255, 255, 255, 99, 87, 75, 63, 61, 53, 47, 43, 45, 32.23157 + 50, 54, 56, 46, 34, 28, 36, 48, 52, 50, 46, 45, 56, 64, 60, 54, 32.23158 + 55, 61, 65, 79, 76, 80, 91, 104, 105, 108, 109, 113, 116, 123, 131, 121, 32.23159 + 89, 79, 100, 118, 121, 122, 117, 110, 92, 61, 28, 18, 30, 45, 57, 73, 32.23160 + 81, 74, 57, 36, 43, 42, 56, 65, 43, 27, 18, 18, 18, 61, 98, 90, 32.23161 + 78, 64, 33, 22, 40, 42, 30, 25, 20, 14, 16, 25, 22, 19, 20, 28, 32.23162 + 34, 37, 39, 15, 16, 26, 38, 44, 43, 45, 45, 44, 45, 51, 62, 74, 32.23163 + 74, 255, 255, 255, 255, 255, 255, 255, 255, 100, 85, 71, 57, 52, 52, 57, 32.23164 + 62, 62, 58, 52, 49, 34, 30, 30, 37, 44, 45, 45, 46, 28, 49, 65, 32.23165 + 59, 50, 59, 88, 113, 94, 83, 81, 91, 107, 112, 113, 111, 122, 125, 131, 32.23166 + 137, 129, 99, 79, 88, 111, 127, 126, 107, 104, 106, 81, 38, 19, 20, 27, 32.23167 + 40, 68, 87, 87, 71, 50, 39, 28, 67, 100, 75, 56, 38, 22, 16, 52, 32.23168 + 80, 64, 56, 61, 51, 55, 62, 52, 30, 20, 16, 16, 22, 28, 21, 14, 32.23169 + 17, 28, 36, 36, 35, 29, 25, 26, 32, 35, 31, 29, 27, 27, 34, 44, 32.23170 + 56, 68, 70, 255, 255, 255, 255, 255, 255, 255, 206, 94, 74, 60, 51, 39, 32.23171 + 48, 61, 63, 51, 38, 37, 43, 32, 30, 32, 36, 36, 34, 36, 40, 37, 32.23172 + 34, 33, 35, 55, 81, 101, 108, 90, 81, 81, 94, 108, 115, 116, 117, 129, 32.23173 + 131, 132, 136, 134, 107, 81, 78, 110, 139, 145, 119, 107, 114, 103, 73, 50, 32.23174 + 29, 11, 24, 70, 109, 110, 91, 76, 49, 9, 55, 107, 95, 74, 38, 11, 32.23175 + 10, 40, 68, 66, 63, 73, 71, 59, 49, 52, 59, 42, 14, 7, 21, 25, 32.23176 + 18, 10, 13, 21, 26, 27, 23, 47, 36, 28, 28, 31, 30, 32, 30, 30, 32.23177 + 38, 47, 53, 59, 60, 255, 255, 255, 255, 255, 255, 255, 103, 81, 62, 56, 32.23178 + 54, 41, 40, 43, 40, 30, 22, 28, 40, 34, 30, 29, 31, 30, 30, 36, 32.23179 + 43, 51, 34, 25, 38, 75, 99, 94, 76, 84, 85, 95, 105, 112, 115, 120, 32.23180 + 126, 130, 131, 129, 133, 135, 111, 82, 74, 106, 129, 139, 126, 117, 118, 113, 32.23181 + 99, 80, 53, 27, 34, 77, 117, 121, 103, 97, 78, 18, 36, 78, 82, 77, 32.23182 + 37, 7, 6, 25, 58, 81, 89, 88, 83, 39, 25, 44, 63, 38, 8, 3, 32.23183 + 4, 16, 14, 11, 12, 15, 18, 22, 23, 40, 30, 25, 29, 37, 39, 38, 32.23184 + 38, 38, 43, 49, 53, 58, 60, 255, 255, 255, 255, 255, 255, 255, 98, 71, 32.23185 + 57, 59, 69, 57, 44, 36, 37, 37, 29, 26, 24, 31, 23, 19, 20, 24, 32.23186 + 27, 38, 44, 32, 42, 58, 75, 91, 99, 91, 80, 82, 93, 111, 120, 119, 32.23187 + 116, 123, 135, 137, 138, 134, 138, 141, 120, 92, 81, 98, 103, 111, 118, 121, 32.23188 + 117, 108, 97, 91, 74, 55, 54, 79, 108, 114, 104, 102, 105, 42, 29, 50, 32.23189 + 66, 87, 54, 28, 16, 9, 30, 73, 93, 88, 84, 68, 54, 62, 56, 22, 32.23190 + 18, 27, 13, 4, 11, 15, 15, 14, 16, 26, 33, 29, 24, 26, 35, 44, 32.23191 + 44, 36, 28, 30, 34, 40, 50, 63, 70, 130, 255, 255, 255, 255, 255, 204, 32.23192 + 91, 61, 48, 61, 42, 34, 41, 35, 38, 54, 44, 27, 29, 30, 29, 29, 32.23193 + 24, 23, 23, 28, 24, 31, 58, 88, 98, 93, 93, 104, 113, 108, 108, 113, 32.23194 + 116, 122, 128, 132, 136, 135, 140, 143, 146, 145, 131, 108, 83, 100, 105, 110, 32.23195 + 114, 115, 112, 112, 108, 104, 93, 80, 74, 78, 88, 97, 102, 117, 100, 67, 32.23196 + 37, 28, 41, 60, 69, 62, 55, 57, 65, 68, 69, 78, 93, 113, 91, 68, 32.23197 + 58, 54, 45, 21, 3, 11, 10, 9, 12, 18, 23, 24, 22, 16, 23, 29, 32.23198 + 35, 39, 40, 37, 29, 29, 30, 30, 33, 51, 70, 73, 255, 255, 255, 255, 32.23199 + 255, 101, 94, 66, 49, 61, 55, 37, 40, 40, 43, 48, 43, 33, 33, 41, 32.23200 + 37, 31, 27, 24, 25, 26, 24, 53, 73, 95, 102, 99, 104, 113, 121, 122, 32.23201 + 124, 125, 129, 133, 134, 136, 139, 138, 141, 142, 144, 145, 138, 118, 99, 104, 32.23202 + 107, 112, 113, 113, 110, 106, 104, 106, 100, 92, 86, 85, 91, 99, 106, 116, 32.23203 + 104, 80, 52, 31, 30, 43, 59, 86, 88, 87, 83, 82, 85, 90, 92, 92, 32.23204 + 84, 75, 69, 65, 51, 28, 13, 18, 12, 12, 14, 20, 19, 16, 16, 18, 32.23205 + 22, 28, 32, 36, 38, 37, 33, 35, 34, 28, 28, 48, 68, 64, 255, 255, 32.23206 + 255, 255, 255, 104, 93, 71, 43, 47, 53, 38, 37, 46, 50, 42, 41, 42, 32.23207 + 36, 38, 33, 26, 24, 27, 33, 39, 41, 73, 84, 98, 104, 107, 116, 124, 32.23208 + 128, 129, 131, 134, 134, 135, 134, 133, 134, 139, 140, 140, 141, 145, 144, 131, 32.23209 + 118, 114, 114, 117, 118, 117, 113, 107, 104, 109, 109, 108, 103, 99, 101, 108, 32.23210 + 115, 116, 111, 98, 78, 49, 33, 44, 66, 103, 112, 110, 97, 93, 97, 95, 32.23211 + 85, 79, 83, 89, 88, 79, 62, 43, 32, 31, 22, 20, 24, 28, 21, 15, 32.23212 + 15, 21, 21, 25, 29, 33, 36, 36, 32, 34, 34, 27, 26, 52, 78, 68, 32.23213 + 255, 255, 255, 255, 211, 102, 88, 72, 40, 37, 46, 35, 33, 50, 54, 38, 32.23214 + 40, 47, 36, 30, 27, 24, 24, 27, 34, 49, 60, 76, 83, 92, 101, 112, 32.23215 + 125, 132, 131, 133, 132, 135, 137, 136, 132, 129, 129, 139, 140, 139, 140, 145, 32.23216 + 147, 140, 129, 124, 124, 123, 124, 123, 120, 113, 110, 113, 113, 115, 115, 114, 32.23217 + 114, 117, 120, 120, 114, 112, 101, 77, 58, 66, 89, 107, 113, 113, 106, 103, 32.23218 + 102, 97, 89, 92, 96, 102, 100, 92, 78, 64, 55, 49, 39, 37, 41, 44, 32.23219 + 34, 23, 19, 21, 21, 24, 30, 36, 34, 31, 30, 29, 34, 29, 26, 50, 32.23220 + 77, 68, 255, 255, 255, 255, 115, 94, 79, 69, 46, 43, 46, 29, 30, 46, 32.23221 + 50, 37, 41, 46, 33, 32, 32, 31, 30, 27, 31, 50, 69, 79, 84, 94, 32.23222 + 105, 120, 131, 136, 132, 136, 138, 141, 141, 141, 139, 136, 134, 138, 142, 142, 32.23223 + 143, 147, 147, 141, 132, 131, 129, 128, 129, 128, 127, 123, 117, 116, 117, 119, 32.23224 + 121, 126, 128, 126, 122, 125, 116, 115, 116, 104, 91, 97, 113, 116, 111, 112, 32.23225 + 118, 118, 109, 104, 105, 110, 108, 103, 99, 97, 91, 86, 83, 75, 68, 64, 32.23226 + 63, 63, 52, 35, 25, 19, 19, 25, 34, 40, 32, 27, 25, 28, 35, 33, 32.23227 + 26, 38, 58, 52, 255, 255, 255, 255, 119, 97, 74, 59, 47, 50, 40, 30, 32.23228 + 32, 39, 39, 37, 45, 45, 34, 31, 29, 32, 34, 33, 38, 60, 83, 90, 32.23229 + 96, 106, 115, 126, 137, 138, 135, 137, 138, 141, 142, 143, 140, 141, 140, 140, 32.23230 + 142, 142, 142, 145, 147, 142, 133, 137, 133, 130, 131, 133, 131, 128, 124, 124, 32.23231 + 121, 123, 129, 136, 136, 132, 127, 132, 123, 119, 119, 118, 114, 116, 124, 124, 32.23232 + 113, 114, 124, 124, 113, 109, 114, 117, 111, 103, 100, 103, 104, 104, 104, 101, 32.23233 + 102, 95, 84, 81, 73, 51, 30, 20, 19, 27, 39, 42, 32, 24, 22, 22, 32.23234 + 30, 32, 28, 36, 49, 49, 255, 255, 255, 206, 121, 103, 70, 40, 39, 53, 32.23235 + 31, 36, 39, 30, 24, 36, 48, 45, 40, 31, 25, 26, 31, 36, 44, 65, 32.23236 + 86, 96, 104, 114, 120, 126, 134, 140, 141, 137, 136, 140, 140, 141, 140, 141, 32.23237 + 141, 143, 146, 144, 142, 144, 146, 144, 139, 146, 140, 136, 136, 139, 138, 135, 32.23238 + 129, 131, 132, 135, 137, 139, 139, 138, 134, 134, 128, 124, 124, 127, 129, 129, 32.23239 + 125, 123, 116, 116, 119, 121, 119, 117, 117, 114, 113, 111, 111, 114, 114, 114, 32.23240 + 114, 115, 122, 116, 100, 97, 95, 72, 42, 24, 19, 26, 38, 41, 30, 23, 32.23241 + 24, 20, 21, 23, 27, 38, 47, 49, 255, 255, 255, 95, 110, 100, 65, 28, 32.23242 + 37, 63, 36, 41, 45, 24, 13, 36, 51, 46, 44, 42, 30, 22, 29, 37, 32.23243 + 43, 57, 71, 95, 104, 114, 117, 120, 129, 138, 143, 140, 141, 141, 142, 143, 32.23244 + 145, 145, 146, 147, 147, 143, 140, 142, 147, 148, 143, 154, 149, 144, 141, 143, 32.23245 + 143, 139, 134, 138, 140, 145, 145, 142, 138, 139, 141, 135, 133, 130, 126, 130, 32.23246 + 136, 135, 129, 119, 122, 121, 112, 118, 127, 129, 118, 113, 117, 125, 127, 124, 32.23247 + 120, 117, 116, 118, 131, 126, 108, 106, 110, 87, 51, 26, 22, 26, 36, 38, 32.23248 + 27, 23, 25, 24, 19, 17, 24, 33, 37, 37, 255, 255, 255, 73, 96, 90, 32.23249 + 49, 31, 51, 65, 57, 39, 26, 20, 26, 34, 38, 40, 45, 39, 27, 25, 32.23250 + 34, 40, 46, 60, 76, 97, 109, 121, 128, 133, 140, 144, 144, 140, 141, 144, 32.23251 + 146, 146, 145, 144, 145, 144, 150, 154, 153, 153, 155, 155, 151, 153, 151, 148, 32.23252 + 146, 148, 150, 147, 138, 134, 142, 145, 141, 144, 150, 151, 143, 132, 133, 135, 32.23253 + 133, 133, 132, 132, 133, 129, 130, 132, 129, 126, 123, 127, 129, 125, 122, 122, 32.23254 + 125, 128, 130, 128, 125, 129, 122, 120, 114, 103, 98, 88, 71, 51, 8, 12, 32.23255 + 40, 31, 23, 30, 23, 18, 18, 22, 26, 33, 39, 38, 255, 255, 191, 76, 32.23256 + 90, 84, 53, 39, 53, 66, 62, 36, 23, 13, 16, 25, 29, 35, 41, 39, 32.23257 + 31, 24, 23, 27, 41, 63, 79, 101, 108, 116, 121, 128, 138, 145, 147, 146, 32.23258 + 145, 146, 145, 145, 145, 147, 148, 150, 152, 155, 156, 155, 152, 150, 148, 150, 32.23259 + 153, 153, 148, 148, 151, 149, 146, 142, 145, 147, 146, 148, 151, 151, 146, 145, 32.23260 + 141, 137, 133, 132, 132, 136, 140, 135, 134, 134, 134, 135, 135, 135, 134, 130, 32.23261 + 128, 126, 126, 133, 135, 137, 136, 129, 122, 119, 112, 99, 94, 88, 73, 54, 32.23262 + 15, 16, 38, 28, 20, 28, 24, 20, 19, 19, 20, 29, 40, 45, 255, 255, 32.23263 + 56, 68, 74, 68, 47, 39, 47, 56, 55, 40, 27, 16, 18, 26, 31, 31, 32.23264 + 28, 32, 32, 24, 17, 23, 44, 70, 86, 101, 108, 116, 121, 128, 136, 143, 32.23265 + 144, 148, 148, 149, 149, 148, 148, 149, 149, 150, 147, 151, 157, 159, 152, 150, 32.23266 + 153, 148, 151, 153, 150, 150, 153, 153, 149, 151, 149, 150, 154, 154, 150, 148, 32.23267 + 148, 150, 147, 142, 135, 134, 136, 138, 141, 140, 139, 137, 140, 144, 145, 140, 32.23268 + 136, 145, 141, 137, 133, 137, 138, 140, 139, 131, 125, 121, 111, 96, 92, 90, 32.23269 + 79, 56, 23, 23, 37, 26, 18, 26, 25, 16, 16, 14, 14, 22, 32, 37, 32.23270 + 255, 255, 42, 57, 55, 51, 45, 40, 39, 40, 38, 37, 30, 24, 28, 35, 32.23271 + 33, 21, 12, 20, 29, 29, 24, 31, 56, 81, 93, 102, 111, 121, 127, 132, 32.23272 + 137, 139, 135, 144, 147, 149, 151, 152, 149, 145, 142, 150, 142, 144, 156, 156, 32.23273 + 145, 142, 149, 145, 147, 148, 145, 148, 153, 153, 150, 155, 148, 149, 157, 157, 32.23274 + 150, 148, 152, 147, 144, 144, 144, 143, 138, 134, 133, 145, 145, 144, 144, 145, 32.23275 + 143, 139, 136, 145, 142, 139, 137, 137, 137, 139, 139, 135, 128, 125, 112, 96, 32.23276 + 93, 95, 87, 54, 28, 27, 37, 29, 21, 26, 26, 12, 16, 18, 20, 24, 32.23277 + 28, 27, 255, 255, 36, 51, 48, 48, 48, 45, 39, 33, 29, 26, 21, 19, 32.23278 + 22, 28, 27, 15, 4, 15, 25, 30, 28, 36, 62, 88, 101, 110, 116, 122, 32.23279 + 126, 134, 142, 145, 143, 152, 150, 146, 142, 139, 136, 134, 133, 147, 136, 132, 32.23280 + 142, 142, 130, 124, 130, 141, 138, 136, 137, 146, 155, 155, 148, 150, 146, 149, 32.23281 + 158, 159, 150, 149, 153, 147, 146, 144, 142, 141, 138, 132, 129, 147, 151, 151, 32.23282 + 148, 141, 137, 136, 135, 132, 131, 133, 136, 138, 139, 142, 143, 135, 129, 126, 32.23283 + 113, 98, 95, 95, 88, 49, 34, 31, 34, 31, 24, 25, 25, 16, 19, 24, 32.23284 + 24, 26, 29, 29, 255, 255, 44, 44, 43, 43, 45, 43, 36, 27, 23, 21, 32.23285 + 18, 13, 12, 17, 23, 20, 15, 19, 23, 25, 28, 40, 66, 94, 112, 122, 32.23286 + 122, 120, 120, 130, 144, 153, 155, 159, 149, 133, 117, 110, 108, 112, 115, 113, 32.23287 + 105, 102, 111, 115, 113, 112, 114, 123, 122, 120, 122, 132, 146, 151, 150, 146, 32.23288 + 144, 148, 154, 156, 153, 150, 151, 152, 146, 137, 132, 128, 127, 124, 124, 133, 32.23289 + 137, 139, 134, 128, 124, 126, 128, 133, 133, 136, 138, 138, 137, 138, 139, 135, 32.23290 + 126, 124, 115, 100, 97, 96, 86, 50, 39, 30, 30, 32, 28, 24, 22, 17, 32.23291 + 17, 18, 16, 18, 25, 31, 255, 44, 37, 34, 36, 37, 35, 31, 29, 25, 32.23292 + 22, 23, 23, 19, 14, 13, 20, 24, 21, 14, 14, 21, 35, 54, 77, 103, 32.23293 + 123, 129, 128, 125, 124, 133, 144, 151, 151, 146, 134, 117, 99, 90, 87, 89, 32.23294 + 93, 75, 72, 71, 76, 85, 90, 93, 94, 91, 96, 100, 102, 109, 126, 141, 32.23295 + 149, 142, 148, 150, 151, 153, 155, 151, 147, 148, 140, 128, 121, 117, 112, 106, 32.23296 + 102, 101, 102, 103, 101, 101, 102, 106, 108, 121, 121, 124, 123, 123, 125, 129, 32.23297 + 131, 138, 129, 126, 119, 109, 105, 101, 84, 56, 47, 29, 21, 28, 27, 21, 32.23298 + 21, 13, 14, 13, 10, 13, 19, 23, 255, 25, 12, 32, 34, 33, 28, 26, 32.23299 + 27, 28, 25, 23, 28, 28, 20, 18, 18, 18, 11, 3, 4, 20, 48, 72, 32.23300 + 92, 114, 131, 132, 133, 134, 135, 141, 144, 142, 135, 121, 116, 103, 90, 81, 32.23301 + 75, 72, 72, 63, 61, 58, 53, 59, 69, 68, 64, 64, 75, 84, 85, 89, 32.23302 + 105, 129, 145, 144, 151, 155, 152, 151, 156, 152, 143, 135, 130, 122, 116, 110, 32.23303 + 101, 87, 79, 69, 68, 65, 68, 74, 82, 86, 87, 84, 88, 93, 96, 103, 32.23304 + 113, 124, 130, 143, 135, 133, 127, 117, 115, 105, 87, 65, 53, 27, 14, 24, 32.23305 + 26, 20, 19, 13, 16, 20, 18, 19, 20, 20, 255, 36, 26, 27, 30, 39, 32.23306 + 32, 21, 25, 25, 17, 26, 19, 24, 29, 19, 14, 15, 11, 9, 9, 15, 32.23307 + 36, 72, 107, 127, 130, 134, 137, 129, 134, 143, 123, 102, 109, 105, 90, 74, 32.23308 + 70, 71, 69, 68, 70, 71, 76, 72, 61, 53, 36, 27, 36, 57, 65, 74, 32.23309 + 73, 72, 82, 110, 136, 140, 136, 146, 158, 155, 149, 142, 133, 124, 120, 118, 32.23310 + 115, 100, 82, 73, 77, 64, 57, 52, 53, 59, 63, 64, 65, 64, 50, 64, 32.23311 + 85, 90, 106, 125, 125, 135, 140, 141, 129, 117, 110, 102, 94, 71, 45, 19, 32.23312 + 12, 19, 22, 17, 10, 11, 13, 21, 23, 24, 23, 25, 255, 38, 34, 31, 32.23313 + 28, 31, 31, 25, 32, 32, 23, 24, 23, 27, 28, 17, 14, 17, 11, 14, 32.23314 + 12, 18, 40, 79, 114, 131, 129, 135, 133, 128, 125, 117, 95, 84, 92, 92, 32.23315 + 95, 99, 103, 105, 108, 112, 116, 109, 104, 84, 69, 72, 66, 48, 34, 37, 32.23316 + 43, 53, 64, 67, 76, 94, 117, 119, 132, 143, 148, 145, 136, 132, 129, 119, 32.23317 + 109, 99, 96, 98, 90, 74, 57, 53, 44, 34, 31, 34, 40, 48, 52, 47, 32.23318 + 39, 44, 53, 57, 69, 89, 99, 114, 119, 123, 117, 111, 109, 104, 97, 80, 32.23319 + 51, 19, 8, 12, 18, 19, 18, 19, 20, 23, 22, 24, 24, 106, 255, 35, 32.23320 + 36, 43, 30, 25, 25, 22, 26, 23, 9, 23, 29, 33, 23, 8, 10, 14, 32.23321 + 4, 0, 1, 15, 43, 82, 113, 123, 117, 129, 117, 120, 127, 122, 114, 110, 32.23322 + 106, 111, 114, 119, 121, 119, 115, 115, 118, 120, 112, 88, 68, 69, 82, 88, 32.23323 + 84, 92, 81, 75, 80, 78, 76, 85, 103, 104, 129, 136, 129, 129, 126, 129, 32.23324 + 136, 121, 117, 105, 87, 78, 75, 75, 71, 61, 54, 46, 42, 46, 57, 69, 32.23325 + 75, 83, 84, 77, 71, 69, 63, 67, 79, 89, 93, 100, 103, 107, 111, 110, 32.23326 + 105, 89, 58, 23, 8, 9, 14, 16, 14, 24, 21, 21, 17, 18, 22, 255, 32.23327 + 255, 48, 51, 57, 38, 30, 29, 26, 23, 18, 6, 21, 30, 34, 19, 3, 32.23328 + 7, 15, 5, 6, 25, 55, 84, 112, 132, 139, 134, 138, 123, 126, 128, 112, 32.23329 + 113, 128, 127, 129, 116, 110, 113, 106, 91, 89, 99, 100, 95, 99, 105, 107, 32.23330 + 101, 86, 64, 89, 75, 71, 85, 92, 91, 94, 108, 108, 138, 142, 132, 132, 32.23331 + 131, 123, 123, 119, 114, 107, 94, 79, 68, 71, 78, 66, 67, 66, 64, 66, 32.23332 + 73, 81, 83, 104, 116, 109, 101, 100, 80, 58, 61, 74, 75, 83, 94, 104, 32.23333 + 113, 114, 112, 100, 69, 33, 13, 10, 11, 12, 11, 19, 16, 15, 11, 14, 32.23334 + 19, 255, 195, 70, 67, 55, 35, 31, 36, 34, 31, 26, 19, 13, 23, 30, 32.23335 + 18, 7, 17, 32, 26, 57, 85, 117, 135, 144, 152, 165, 170, 151, 137, 138, 32.23336 + 128, 98, 96, 114, 118, 107, 97, 98, 106, 93, 73, 81, 109, 95, 72, 79, 32.23337 + 112, 131, 124, 97, 61, 63, 56, 62, 85, 99, 98, 94, 100, 124, 145, 150, 32.23338 + 144, 143, 140, 124, 109, 138, 117, 108, 114, 112, 90, 73, 67, 74, 84, 90, 32.23339 + 89, 86, 85, 81, 76, 87, 102, 102, 106, 118, 105, 78, 73, 70, 69, 75, 32.23340 + 85, 98, 106, 110, 111, 110, 76, 36, 12, 8, 11, 17, 18, 14, 14, 16, 32.23341 + 15, 20, 25, 255, 80, 71, 61, 48, 25, 25, 36, 35, 28, 20, 14, 9, 32.23342 + 14, 20, 16, 12, 29, 50, 50, 71, 93, 114, 118, 117, 124, 141, 152, 131, 32.23343 + 116, 122, 145, 164, 167, 144, 113, 91, 97, 106, 104, 82, 65, 78, 107, 91, 32.23344 + 77, 90, 106, 99, 96, 99, 88, 84, 74, 66, 70, 77, 84, 89, 97, 138, 32.23345 + 135, 138, 134, 129, 141, 150, 139, 151, 128, 110, 100, 88, 67, 59, 62, 74, 32.23346 + 89, 100, 98, 94, 92, 88, 81, 78, 85, 87, 96, 114, 118, 107, 98, 71, 32.23347 + 67, 70, 80, 90, 97, 104, 110, 111, 75, 30, 2, 0, 5, 18, 25, 15, 32.23348 + 16, 21, 23, 29, 34, 255, 82, 72, 63, 51, 23, 23, 44, 49, 42, 28, 32.23349 + 16, 20, 14, 14, 13, 12, 25, 45, 51, 46, 58, 72, 79, 88, 100, 112, 32.23350 + 117, 109, 95, 98, 147, 214, 225, 173, 119, 99, 108, 101, 78, 68, 77, 83, 32.23351 + 81, 62, 103, 159, 153, 93, 67, 75, 66, 79, 73, 60, 53, 60, 83, 106, 32.23352 + 119, 128, 120, 142, 147, 123, 134, 163, 158, 125, 119, 102, 72, 52, 52, 64, 32.23353 + 73, 67, 82, 86, 77, 67, 69, 70, 68, 67, 64, 65, 71, 79, 94, 101, 32.23354 + 93, 79, 75, 77, 84, 91, 97, 109, 120, 116, 79, 36, 9, 2, 5, 15, 32.23355 + 20, 12, 15, 21, 23, 28, 34, 255, 96, 94, 91, 62, 32, 32, 62, 81, 32.23356 + 76, 62, 47, 36, 19, 11, 9, 4, 12, 28, 35, 38, 46, 60, 80, 105, 32.23357 + 124, 127, 120, 116, 111, 100, 124, 175, 183, 146, 119, 105, 106, 76, 42, 61, 32.23358 + 108, 108, 70, 35, 103, 177, 160, 95, 87, 107, 94, 78, 87, 87, 81, 85, 32.23359 + 104, 117, 121, 105, 112, 169, 191, 142, 127, 144, 127, 108, 118, 111, 93, 100, 32.23360 + 125, 127, 105, 87, 95, 87, 65, 47, 48, 53, 53, 62, 53, 61, 65, 63, 32.23361 + 80, 100, 88, 89, 86, 87, 93, 98, 103, 119, 133, 125, 93, 57, 31, 20, 32.23362 + 17, 15, 16, 9, 10, 16, 17, 22, 29, 255, 94, 91, 84, 69, 33, 41, 32.23363 + 95, 127, 117, 92, 73, 70, 54, 22, 19, 21, 20, 36, 36, 40, 40, 56, 32.23364 + 87, 115, 127, 127, 127, 133, 123, 118, 118, 118, 117, 119, 122, 99, 82, 60, 32.23365 + 58, 85, 113, 106, 83, 62, 59, 79, 94, 98, 120, 140, 132, 111, 95, 97, 32.23366 + 99, 90, 105, 126, 126, 94, 122, 155, 170, 162, 142, 124, 114, 109, 109, 89, 32.23367 + 93, 81, 104, 105, 117, 114, 153, 168, 136, 92, 71, 58, 46, 58, 80, 87, 32.23368 + 76, 69, 65, 73, 88, 95, 106, 112, 107, 99, 99, 108, 114, 118, 132, 120, 32.23369 + 58, 45, 17, 11, 11, 1, 2, 10, 16, 24, 33, 255, 100, 97, 92, 67, 32.23370 + 31, 39, 92, 130, 129, 110, 89, 96, 90, 61, 52, 40, 28, 38, 34, 50, 32.23371 + 51, 65, 93, 118, 129, 128, 124, 128, 125, 127, 132, 129, 119, 109, 104, 93, 32.23372 + 85, 75, 78, 98, 116, 111, 96, 90, 69, 64, 78, 99, 129, 138, 119, 91, 32.23373 + 90, 98, 100, 93, 94, 100, 101, 109, 120, 136, 153, 163, 153, 135, 117, 110, 32.23374 + 105, 82, 83, 77, 99, 96, 101, 127, 165, 169, 124, 82, 75, 72, 56, 78, 32.23375 + 97, 103, 88, 76, 68, 73, 86, 103, 109, 109, 96, 86, 85, 91, 94, 110, 32.23376 + 125, 95, 45, 32, 11, 8, 4, 15, 14, 12, 13, 20, 37, 255, 111, 111, 32.23377 + 106, 65, 34, 37, 85, 119, 124, 108, 88, 116, 119, 97, 83, 63, 42, 45, 32.23378 + 37, 61, 63, 75, 100, 123, 133, 133, 127, 130, 128, 132, 137, 132, 117, 101, 32.23379 + 93, 91, 90, 92, 98, 106, 111, 109, 104, 110, 89, 78, 80, 92, 113, 119, 32.23380 + 105, 90, 102, 105, 104, 102, 93, 86, 90, 122, 126, 134, 145, 155, 151, 140, 32.23381 + 128, 123, 113, 93, 91, 91, 108, 104, 103, 124, 159, 157, 109, 74, 80, 81, 32.23382 + 67, 97, 114, 115, 98, 84, 71, 72, 85, 96, 96, 94, 87, 83, 86, 93, 32.23383 + 97, 96, 116, 63, 32, 16, 8, 11, 6, 10, 15, 14, 11, 19, 113, 255, 32.23384 + 114, 114, 110, 67, 38, 47, 90, 122, 128, 113, 92, 113, 121, 104, 93, 76, 32.23385 + 59, 57, 42, 61, 68, 83, 107, 128, 139, 139, 134, 137, 132, 130, 130, 125, 32.23386 + 115, 106, 104, 107, 105, 106, 111, 110, 106, 106, 109, 111, 116, 117, 106, 93, 32.23387 + 93, 102, 105, 107, 117, 107, 99, 105, 98, 90, 102, 126, 139, 150, 150, 140, 32.23388 + 133, 134, 140, 115, 108, 93, 86, 86, 95, 95, 94, 107, 134, 137, 108, 85, 32.23389 + 89, 91, 83, 103, 114, 109, 92, 86, 80, 79, 85, 85, 87, 88, 87, 91, 32.23390 + 99, 106, 108, 96, 121, 58, 33, 7, 3, 9, 8, 5, 22, 31, 29, 34, 32.23391 + 255, 255, 105, 102, 95, 70, 48, 64, 111, 144, 145, 131, 114, 110, 121, 104, 32.23392 + 94, 86, 75, 68, 43, 59, 72, 94, 114, 131, 140, 139, 136, 142, 132, 126, 32.23393 + 125, 123, 119, 118, 120, 128, 120, 115, 114, 112, 110, 111, 116, 111, 121, 121, 32.23394 + 110, 101, 98, 100, 106, 107, 112, 99, 92, 105, 106, 102, 115, 126, 143, 157, 32.23395 + 153, 138, 129, 132, 140, 118, 115, 108, 92, 87, 85, 89, 90, 104, 115, 121, 32.23396 + 116, 103, 98, 100, 105, 103, 106, 97, 86, 92, 92, 90, 92, 95, 98, 99, 32.23397 + 98, 100, 104, 105, 103, 112, 137, 80, 45, 7, 4, 9, 16, 37, 61, 73, 32.23398 + 65, 60, 255, 255, 93, 86, 78, 71, 50, 73, 126, 150, 139, 124, 114, 123, 32.23399 + 134, 117, 105, 97, 88, 73, 37, 54, 77, 104, 122, 133, 138, 137, 134, 140, 32.23400 + 132, 129, 131, 132, 129, 128, 130, 133, 125, 115, 110, 111, 114, 117, 117, 111, 32.23401 + 110, 97, 95, 112, 117, 107, 101, 105, 108, 105, 105, 113, 116, 117, 124, 128, 32.23402 + 135, 143, 148, 147, 141, 138, 135, 138, 139, 139, 113, 103, 91, 99, 102, 115, 32.23403 + 112, 113, 117, 110, 101, 103, 113, 104, 107, 97, 92, 101, 106, 100, 102, 104, 32.23404 + 107, 108, 105, 105, 107, 106, 103, 115, 132, 99, 47, 16, 19, 26, 52, 91, 32.23405 + 104, 109, 96, 81, 255, 255, 84, 73, 63, 67, 45, 72, 130, 144, 122, 107, 32.23406 + 107, 135, 150, 135, 120, 109, 97, 75, 35, 47, 78, 111, 128, 134, 137, 139, 32.23407 + 138, 136, 130, 129, 132, 133, 131, 129, 130, 126, 125, 118, 108, 109, 116, 117, 32.23408 + 111, 104, 118, 114, 110, 120, 117, 106, 108, 121, 122, 130, 130, 119, 120, 128, 32.23409 + 130, 125, 129, 136, 145, 152, 149, 142, 134, 136, 138, 142, 112, 104, 85, 98, 32.23410 + 100, 122, 120, 120, 121, 116, 109, 108, 111, 109, 118, 113, 109, 113, 110, 103, 32.23411 + 104, 106, 111, 113, 110, 109, 114, 116, 117, 113, 115, 107, 38, 25, 39, 48, 32.23412 + 88, 118, 120, 121, 112, 255, 255, 255, 255, 62, 50, 61, 41, 71, 135, 151, 32.23413 + 125, 114, 123, 134, 155, 144, 129, 116, 101, 77, 34, 36, 73, 114, 131, 135, 32.23414 + 137, 143, 144, 134, 128, 124, 126, 127, 125, 125, 128, 123, 131, 127, 114, 112, 32.23415 + 119, 117, 106, 99, 146, 168, 154, 133, 107, 104, 128, 141, 139, 151, 145, 116, 32.23416 + 113, 129, 130, 120, 130, 140, 150, 150, 147, 141, 139, 134, 135, 142, 113, 108, 32.23417 + 89, 103, 103, 123, 131, 134, 133, 129, 124, 117, 108, 113, 126, 129, 121, 117, 32.23418 + 109, 100, 101, 110, 115, 117, 112, 109, 114, 120, 124, 120, 109, 113, 28, 24, 32.23419 + 45, 51, 96, 116, 114, 116, 120, 255, 255, 255, 255, 64, 65, 56, 35, 72, 32.23420 + 129, 153, 134, 108, 125, 128, 144, 143, 150, 134, 96, 73, 46, 43, 75, 114, 32.23421 + 132, 137, 135, 137, 137, 127, 132, 131, 125, 126, 132, 135, 134, 136, 135, 128, 32.23422 + 119, 119, 122, 116, 109, 117, 155, 182, 165, 132, 116, 122, 130, 142, 145, 146, 32.23423 + 136, 121, 118, 128, 141, 135, 144, 151, 151, 149, 150, 149, 147, 137, 137, 132, 32.23424 + 123, 113, 108, 111, 115, 114, 116, 123, 128, 123, 116, 118, 123, 115, 120, 122, 32.23425 + 114, 107, 104, 104, 101, 107, 110, 111, 110, 108, 108, 112, 118, 118, 118, 106, 32.23426 + 26, 47, 54, 77, 83, 105, 119, 135, 128, 255, 255, 255, 255, 64, 71, 49, 32.23427 + 30, 66, 117, 147, 138, 110, 118, 129, 140, 137, 138, 123, 89, 70, 45, 55, 32.23428 + 78, 104, 122, 129, 134, 132, 128, 131, 134, 136, 131, 132, 137, 141, 140, 139, 32.23429 + 138, 134, 126, 128, 129, 124, 117, 126, 137, 137, 128, 127, 135, 141, 139, 137, 32.23430 + 141, 143, 138, 129, 128, 138, 147, 131, 137, 144, 145, 145, 147, 146, 143, 134, 32.23431 + 136, 135, 131, 122, 116, 113, 113, 106, 103, 105, 108, 110, 110, 120, 131, 111, 32.23432 + 117, 116, 111, 105, 107, 111, 110, 122, 120, 117, 116, 113, 113, 112, 111, 116, 32.23433 + 111, 106, 40, 63, 71, 95, 104, 118, 142, 161, 255, 255, 255, 255, 255, 61, 32.23434 + 72, 55, 35, 58, 97, 135, 147, 123, 120, 132, 139, 131, 131, 121, 95, 85, 32.23435 + 65, 78, 88, 100, 113, 124, 133, 130, 123, 133, 135, 138, 135, 136, 140, 144, 32.23436 + 144, 141, 140, 139, 134, 137, 137, 133, 127, 127, 125, 122, 123, 139, 153, 150, 32.23437 + 137, 130, 132, 135, 133, 132, 133, 138, 141, 128, 134, 140, 141, 140, 143, 142, 32.23438 + 139, 132, 132, 131, 129, 125, 121, 118, 116, 121, 114, 112, 111, 112, 114, 120, 32.23439 + 125, 114, 118, 117, 112, 111, 116, 123, 124, 131, 125, 119, 118, 119, 117, 114, 32.23440 + 109, 125, 109, 106, 59, 80, 82, 99, 111, 132, 151, 190, 255, 255, 255, 255, 32.23441 + 255, 59, 69, 62, 38, 44, 67, 114, 148, 135, 125, 137, 141, 130, 132, 129, 32.23442 + 116, 116, 103, 98, 102, 106, 114, 123, 133, 130, 123, 131, 131, 135, 135, 136, 32.23443 + 139, 143, 145, 142, 141, 142, 139, 141, 139, 134, 130, 131, 135, 137, 135, 139, 32.23444 + 143, 143, 138, 131, 131, 133, 132, 134, 133, 133, 131, 133, 139, 144, 144, 143, 32.23445 + 145, 143, 138, 137, 132, 125, 121, 120, 122, 125, 126, 129, 126, 128, 128, 130, 32.23446 + 125, 121, 119, 122, 126, 125, 122, 121, 126, 133, 132, 130, 127, 123, 122, 123, 32.23447 + 122, 120, 119, 124, 97, 94, 71, 94, 93, 100, 109, 144, 138, 255, 255, 255, 32.23448 + 255, 255, 255, 191, 67, 55, 33, 31, 44, 94, 141, 133, 119, 138, 140, 127, 32.23449 + 131, 134, 129, 137, 128, 109, 113, 114, 117, 122, 130, 129, 125, 129, 129, 134, 32.23450 + 136, 138, 140, 143, 147, 146, 145, 145, 143, 143, 138, 134, 132, 144, 146, 142, 32.23451 + 130, 124, 128, 138, 145, 136, 134, 134, 135, 138, 137, 134, 130, 141, 146, 146, 32.23452 + 146, 146, 147, 141, 135, 139, 134, 126, 122, 123, 126, 129, 129, 117, 119, 126, 32.23453 + 129, 134, 135, 131, 126, 130, 134, 136, 133, 132, 135, 137, 133, 135, 134, 134, 32.23454 + 131, 129, 127, 128, 130, 116, 82, 85, 85, 108, 110, 111, 117, 151, 127, 255, 32.23455 + 255, 255, 255, 255, 255, 255, 61, 49, 31, 30, 39, 86, 136, 130, 115, 137, 32.23456 + 136, 122, 127, 133, 131, 141, 133, 115, 118, 116, 116, 118, 126, 128, 127, 133, 32.23457 + 131, 137, 142, 145, 145, 148, 153, 154, 151, 151, 149, 148, 141, 138, 139, 142, 32.23458 + 143, 140, 137, 137, 137, 139, 140, 133, 130, 130, 131, 136, 137, 135, 132, 143, 32.23459 + 147, 147, 147, 148, 148, 141, 134, 136, 135, 134, 133, 131, 130, 130, 128, 119, 32.23460 + 122, 123, 123, 126, 131, 135, 135, 134, 138, 139, 137, 138, 140, 138, 134, 140, 32.23461 + 140, 139, 134, 126, 121, 122, 124, 119, 88, 100, 109, 117, 119, 116, 122, 145, 32.23462 + 255, 255, 255, 255, 255, 255, 255, 255, 187, 55, 36, 30, 33, 76, 128, 129, 32.23463 + 124, 139, 138, 124, 130, 137, 136, 146, 137, 122, 120, 114, 111, 115, 127, 131, 32.23464 + 130, 137, 134, 140, 148, 151, 150, 153, 160, 160, 155, 155, 154, 152, 144, 143, 32.23465 + 147, 138, 137, 141, 145, 148, 144, 138, 132, 128, 125, 124, 124, 128, 130, 134, 32.23466 + 134, 142, 144, 146, 146, 147, 149, 144, 137, 134, 136, 136, 133, 127, 124, 126, 32.23467 + 126, 131, 133, 131, 125, 122, 126, 132, 133, 137, 139, 141, 139, 143, 147, 147, 32.23468 + 142, 143, 141, 137, 131, 125, 120, 115, 114, 117, 99, 119, 129, 116, 116, 114, 32.23469 + 125, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 35, 22, 18, 59, 32.23470 + 116, 127, 132, 143, 143, 131, 138, 147, 146, 156, 147, 130, 123, 111, 107, 115, 32.23471 + 130, 135, 134, 138, 135, 142, 150, 154, 152, 155, 163, 161, 156, 155, 155, 153, 32.23472 + 146, 146, 152, 144, 140, 137, 132, 128, 126, 132, 138, 134, 130, 128, 126, 128, 32.23473 + 131, 135, 135, 139, 143, 145, 147, 149, 152, 148, 140, 137, 136, 132, 124, 115, 32.23474 + 116, 124, 129, 125, 131, 135, 127, 124, 127, 133, 133, 140, 141, 141, 139, 145, 32.23475 + 152, 156, 154, 149, 143, 136, 131, 129, 126, 118, 113, 101, 95, 126, 137, 113, 32.23476 + 114, 118, 135, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 28, 22, 32.23477 + 28, 38, 64, 108, 139, 147, 134, 138, 148, 146, 144, 150, 148, 132, 124, 113, 32.23478 + 110, 114, 124, 132, 136, 137, 138, 144, 147, 151, 155, 160, 164, 163, 163, 164, 32.23479 + 159, 155, 150, 147, 147, 136, 133, 128, 124, 127, 130, 131, 131, 124, 122, 125, 32.23480 + 130, 139, 141, 138, 134, 136, 145, 153, 151, 147, 146, 145, 143, 137, 137, 127, 32.23481 + 114, 109, 118, 127, 131, 126, 122, 120, 121, 125, 128, 130, 130, 138, 137, 139, 32.23482 + 140, 145, 150, 157, 160, 153, 147, 140, 137, 136, 132, 120, 113, 105, 107, 120, 32.23483 + 129, 122, 120, 125, 127, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23484 + 38, 35, 26, 31, 57, 91, 116, 146, 138, 141, 149, 150, 147, 148, 145, 139, 32.23485 + 129, 117, 113, 116, 124, 128, 130, 135, 136, 143, 147, 152, 156, 161, 164, 160, 32.23486 + 161, 162, 156, 152, 146, 143, 142, 140, 135, 129, 124, 125, 125, 126, 124, 113, 32.23487 + 112, 115, 121, 131, 136, 136, 132, 143, 141, 142, 149, 157, 158, 150, 142, 143, 32.23488 + 138, 128, 117, 113, 116, 116, 112, 110, 110, 114, 118, 123, 125, 127, 128, 131, 32.23489 + 132, 137, 140, 143, 148, 149, 150, 149, 147, 142, 137, 131, 123, 114, 110, 105, 32.23490 + 106, 116, 125, 125, 130, 129, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23491 + 255, 255, 183, 31, 24, 30, 38, 70, 121, 139, 138, 141, 148, 153, 151, 147, 32.23492 + 141, 144, 133, 119, 115, 118, 124, 124, 122, 129, 131, 140, 145, 150, 154, 158, 32.23493 + 161, 159, 160, 160, 154, 149, 142, 138, 137, 133, 130, 127, 124, 123, 119, 116, 32.23494 + 113, 110, 110, 114, 121, 129, 131, 128, 125, 125, 119, 123, 139, 151, 149, 142, 32.23495 + 139, 137, 129, 116, 104, 103, 108, 109, 103, 99, 104, 113, 118, 119, 118, 120, 32.23496 + 121, 123, 126, 132, 136, 139, 141, 140, 140, 140, 141, 139, 133, 124, 116, 111, 32.23497 + 110, 105, 109, 119, 125, 131, 143, 134, 157, 255, 255, 255, 255, 255, 255, 255, 32.23498 + 255, 255, 255, 255, 255, 27, 38, 44, 19, 39, 117, 132, 140, 145, 150, 161, 32.23499 + 160, 151, 146, 141, 130, 117, 114, 118, 123, 121, 117, 125, 127, 136, 141, 146, 32.23500 + 148, 151, 152, 159, 159, 159, 152, 146, 138, 134, 132, 124, 123, 126, 129, 128, 32.23501 + 120, 115, 112, 110, 111, 115, 119, 121, 117, 109, 103, 93, 95, 110, 131, 136, 32.23502 + 127, 127, 137, 128, 117, 98, 86, 84, 90, 98, 100, 103, 108, 118, 118, 114, 32.23503 + 111, 114, 116, 120, 122, 126, 130, 133, 133, 132, 131, 132, 132, 131, 127, 123, 32.23504 + 118, 113, 111, 102, 113, 126, 129, 135, 145, 128, 255, 255, 255, 255, 255, 255, 32.23505 + 255, 255, 255, 255, 255, 255, 255, 183, 50, 51, 13, 15, 78, 129, 149, 154, 32.23506 + 155, 169, 168, 156, 151, 135, 126, 114, 113, 116, 122, 120, 118, 125, 127, 135, 32.23507 + 139, 142, 143, 144, 146, 154, 154, 152, 144, 138, 131, 127, 126, 124, 121, 122, 32.23508 + 125, 125, 121, 122, 128, 116, 113, 110, 105, 103, 99, 95, 92, 89, 89, 105, 32.23509 + 126, 132, 122, 117, 125, 115, 107, 93, 82, 76, 79, 86, 96, 113, 117, 122, 32.23510 + 119, 114, 112, 114, 118, 118, 118, 119, 120, 124, 124, 126, 127, 133, 128, 123, 32.23511 + 121, 121, 117, 110, 106, 95, 116, 135, 135, 134, 137, 255, 255, 255, 255, 255, 32.23512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 24, 23, 30, 59, 118, 32.23513 + 150, 155, 151, 166, 164, 150, 149, 134, 127, 118, 114, 115, 119, 121, 121, 126, 32.23514 + 127, 134, 136, 138, 139, 141, 143, 147, 145, 142, 132, 126, 120, 118, 118, 122, 32.23515 + 114, 110, 113, 114, 113, 123, 135, 133, 127, 116, 105, 102, 103, 107, 109, 105, 32.23516 + 95, 97, 114, 128, 124, 111, 104, 91, 91, 91, 92, 90, 90, 94, 103, 116, 32.23517 + 118, 119, 117, 115, 114, 118, 122, 117, 115, 114, 113, 114, 116, 119, 122, 130, 32.23518 + 125, 118, 116, 115, 110, 101, 93, 94, 115, 138, 139, 131, 128, 255, 255, 255, 32.23519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 35, 51, 32.23520 + 55, 100, 143, 151, 144, 161, 161, 149, 154, 142, 137, 127, 120, 115, 117, 120, 32.23521 + 123, 121, 122, 127, 130, 132, 134, 137, 140, 142, 139, 134, 123, 117, 113, 112, 32.23522 + 114, 113, 107, 107, 113, 113, 108, 115, 126, 136, 131, 125, 117, 113, 112, 118, 32.23523 + 119, 109, 99, 92, 99, 111, 116, 107, 97, 84, 84, 89, 98, 101, 101, 104, 32.23524 + 110, 117, 116, 116, 113, 114, 116, 117, 118, 112, 111, 107, 106, 107, 108, 112, 32.23525 + 114, 119, 117, 112, 109, 104, 99, 92, 86, 101, 115, 136, 142, 136, 173, 255, 32.23526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23527 + 184, 43, 33, 93, 143, 152, 147, 165, 170, 160, 168, 150, 146, 136, 126, 116, 32.23528 + 114, 120, 124, 115, 115, 120, 122, 124, 128, 132, 136, 141, 136, 128, 120, 112, 32.23529 + 110, 112, 113, 107, 108, 117, 130, 127, 116, 111, 117, 116, 120, 121, 120, 116, 32.23530 + 109, 104, 101, 100, 99, 96, 91, 93, 102, 106, 106, 105, 95, 93, 96, 101, 32.23531 + 100, 100, 103, 113, 112, 110, 111, 112, 113, 113, 110, 110, 107, 106, 104, 103, 32.23532 + 105, 105, 107, 107, 108, 108, 103, 97, 90, 88, 87, 110, 117, 136, 145, 145, 32.23533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23534 + 255, 255, 255, 255, 182, 62, 124, 166, 162, 145, 152, 162, 163, 158, 156, 138, 32.23535 + 124, 122, 116, 112, 117, 110, 116, 118, 117, 116, 120, 126, 132, 127, 123, 111, 32.23536 + 102, 102, 106, 104, 97, 105, 106, 112, 120, 120, 114, 117, 125, 111, 116, 120, 32.23537 + 121, 116, 113, 112, 110, 111, 101, 102, 112, 114, 104, 95, 93, 89, 90, 94, 32.23538 + 96, 99, 101, 102, 103, 110, 108, 107, 106, 106, 109, 110, 110, 112, 109, 107, 32.23539 + 104, 101, 98, 95, 94, 98, 96, 98, 95, 89, 82, 87, 93, 112, 159, 139, 32.23540 + 161, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23541 + 255, 255, 255, 255, 255, 255, 255, 52, 97, 144, 164, 161, 158, 163, 168, 157, 32.23542 + 155, 134, 114, 110, 109, 108, 111, 108, 115, 118, 119, 115, 118, 122, 127, 121, 32.23543 + 113, 98, 88, 88, 96, 94, 91, 99, 102, 106, 109, 111, 108, 114, 120, 121, 32.23544 + 121, 121, 119, 117, 119, 122, 124, 111, 105, 103, 108, 111, 107, 102, 99, 94, 32.23545 + 94, 95, 97, 99, 102, 105, 106, 102, 105, 109, 107, 105, 101, 103, 105, 107, 32.23546 + 104, 104, 100, 97, 94, 92, 92, 91, 91, 92, 88, 80, 75, 84, 95, 131, 32.23547 + 156, 145, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 149, 159, 153, 157, 32.23549 + 171, 170, 168, 140, 111, 107, 111, 111, 112, 109, 114, 118, 120, 116, 116, 120, 32.23550 + 125, 120, 110, 93, 85, 87, 96, 99, 97, 106, 113, 116, 113, 116, 120, 128, 32.23551 + 130, 120, 120, 121, 121, 121, 124, 128, 130, 116, 114, 109, 106, 109, 114, 114, 32.23552 + 110, 108, 107, 106, 106, 108, 111, 114, 115, 101, 108, 115, 113, 108, 101, 102, 32.23553 + 104, 104, 101, 100, 96, 94, 91, 90, 90, 85, 89, 89, 83, 73, 70, 86, 32.23554 + 103, 142, 136, 141, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 32.23556 + 132, 146, 168, 172, 168, 135, 104, 104, 116, 116, 114, 113, 115, 116, 117, 115, 32.23557 + 113, 120, 127, 121, 108, 93, 89, 94, 103, 106, 104, 100, 110, 114, 108, 112, 32.23558 + 120, 129, 127, 117, 120, 125, 129, 130, 131, 129, 126, 126, 125, 118, 108, 110, 32.23559 + 120, 124, 119, 117, 117, 116, 116, 116, 118, 119, 120, 110, 111, 117, 115, 111, 32.23560 + 108, 107, 105, 104, 101, 98, 95, 92, 90, 90, 91, 87, 90, 91, 84, 75, 32.23561 + 77, 95, 116, 153, 120, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23563 + 255, 255, 255, 210, 136, 126, 120, 93, 76, 91, 114, 116, 115, 120, 117, 115, 32.23564 + 113, 110, 108, 119, 130, 122, 108, 95, 94, 99, 104, 101, 97, 96, 107, 112, 32.23565 + 107, 112, 120, 128, 126, 123, 125, 128, 132, 133, 133, 129, 125, 132, 132, 126, 32.23566 + 115, 116, 125, 129, 124, 119, 119, 118, 118, 117, 117, 116, 116, 116, 112, 109, 32.23567 + 109, 111, 110, 109, 106, 102, 98, 95, 91, 88, 86, 87, 88, 90, 93, 94, 32.23568 + 89, 83, 84, 101, 119, 157, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23570 + 255, 255, 255, 255, 255, 255, 255, 255, 188, 38, 46, 84, 114, 119, 120, 125, 32.23571 + 118, 113, 112, 107, 106, 117, 133, 129, 115, 103, 102, 107, 103, 95, 91, 98, 32.23572 + 103, 106, 103, 106, 111, 120, 122, 123, 120, 116, 115, 116, 119, 118, 119, 123, 32.23573 + 123, 122, 119, 119, 122, 123, 121, 120, 119, 117, 115, 113, 112, 112, 112, 118, 32.23574 + 109, 102, 101, 106, 108, 108, 101, 93, 91, 89, 86, 84, 86, 86, 90, 95, 32.23575 + 93, 93, 91, 87, 86, 95, 108, 121, 146, 255, 255, 255, 255, 255, 255, 255, 32.23576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 88, 119, 123, 32.23578 + 122, 126, 118, 113, 113, 107, 105, 114, 131, 135, 119, 105, 106, 111, 108, 99, 32.23579 + 92, 86, 82, 79, 76, 77, 77, 87, 97, 108, 104, 100, 99, 100, 102, 101, 32.23580 + 100, 99, 101, 107, 113, 114, 110, 107, 108, 117, 113, 107, 102, 99, 100, 103, 32.23581 + 103, 103, 97, 91, 89, 90, 90, 88, 86, 86, 85, 84, 83, 84, 88, 92, 32.23582 + 95, 102, 95, 91, 91, 90, 86, 85, 85, 140, 255, 255, 255, 255, 255, 255, 32.23583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 93, 32.23585 + 120, 118, 118, 125, 117, 114, 115, 111, 104, 114, 129, 132, 113, 101, 104, 111, 32.23586 + 107, 100, 95, 89, 78, 70, 67, 65, 61, 74, 89, 95, 94, 95, 97, 99, 32.23587 + 98, 91, 86, 77, 78, 88, 103, 105, 95, 90, 94, 106, 99, 89, 81, 78, 32.23588 + 81, 87, 91, 80, 79, 76, 72, 68, 65, 64, 63, 82, 82, 81, 83, 86, 32.23589 + 92, 98, 104, 108, 97, 92, 91, 94, 86, 76, 131, 255, 255, 255, 255, 255, 32.23590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23592 + 255, 95, 112, 119, 128, 124, 119, 123, 128, 116, 95, 97, 114, 125, 112, 108, 32.23593 + 113, 115, 109, 104, 109, 108, 88, 75, 74, 73, 64, 74, 90, 97, 115, 118, 32.23594 + 102, 98, 110, 108, 94, 95, 115, 123, 108, 96, 98, 101, 96, 117, 104, 88, 32.23595 + 78, 77, 81, 84, 85, 70, 67, 64, 57, 39, 28, 43, 64, 82, 80, 84, 32.23596 + 95, 100, 97, 95, 100, 110, 101, 97, 96, 97, 87, 75, 255, 255, 255, 255, 32.23597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23599 + 255, 255, 255, 100, 116, 121, 126, 117, 115, 120, 126, 114, 95, 96, 113, 123, 32.23600 + 114, 110, 116, 117, 113, 112, 119, 113, 99, 88, 86, 88, 86, 98, 110, 117, 32.23601 + 133, 135, 121, 118, 131, 130, 119, 129, 158, 168, 141, 110, 108, 125, 139, 143, 32.23602 + 131, 115, 105, 101, 100, 99, 98, 77, 71, 66, 58, 46, 41, 55, 78, 91, 32.23603 + 88, 90, 98, 101, 99, 98, 103, 105, 99, 96, 96, 93, 80, 127, 255, 255, 32.23604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23606 + 255, 255, 255, 255, 255, 108, 122, 119, 121, 113, 112, 117, 121, 113, 98, 96, 32.23607 + 107, 122, 117, 115, 120, 119, 115, 118, 126, 114, 108, 101, 95, 98, 103, 112, 32.23608 + 117, 124, 137, 140, 131, 132, 146, 148, 139, 146, 176, 189, 163, 132, 130, 152, 32.23609 + 171, 165, 155, 142, 131, 124, 120, 116, 113, 95, 84, 75, 69, 65, 67, 82, 32.23610 + 99, 101, 98, 97, 101, 105, 102, 103, 104, 99, 96, 95, 96, 92, 74, 255, 32.23611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23613 + 255, 255, 255, 255, 255, 255, 255, 116, 126, 118, 116, 118, 115, 118, 124, 121, 32.23614 + 113, 108, 108, 121, 118, 122, 123, 120, 114, 115, 121, 115, 118, 114, 104, 105, 32.23615 + 110, 113, 108, 117, 126, 129, 126, 130, 144, 148, 144, 143, 162, 170, 158, 144, 32.23616 + 146, 155, 160, 166, 157, 144, 134, 127, 123, 120, 118, 106, 96, 85, 83, 85, 32.23617 + 88, 100, 111, 108, 106, 106, 106, 108, 104, 102, 100, 97, 95, 95, 97, 91, 32.23618 + 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 128, 115, 110, 125, 121, 120, 32.23621 + 126, 129, 128, 119, 110, 111, 113, 121, 123, 121, 115, 113, 115, 119, 126, 126, 32.23622 + 117, 116, 117, 114, 103, 115, 119, 120, 119, 123, 133, 135, 133, 143, 151, 153, 32.23623 + 145, 140, 143, 145, 143, 158, 149, 137, 125, 118, 116, 115, 116, 108, 98, 91, 32.23624 + 92, 97, 99, 104, 106, 107, 108, 110, 109, 109, 104, 99, 95, 100, 100, 98, 32.23625 + 93, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 127, 113, 107, 118, 32.23628 + 118, 117, 118, 121, 123, 116, 108, 103, 109, 115, 122, 122, 120, 116, 115, 116, 32.23629 + 123, 126, 121, 122, 122, 118, 109, 118, 117, 115, 115, 116, 118, 116, 114, 128, 32.23630 + 136, 138, 130, 124, 129, 140, 147, 148, 141, 130, 119, 111, 109, 110, 111, 109, 32.23631 + 104, 103, 104, 109, 110, 106, 100, 107, 109, 110, 106, 105, 104, 97, 91, 100, 32.23632 + 102, 100, 90, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 137, 129, 113, 32.23635 + 107, 108, 118, 119, 114, 110, 112, 112, 108, 107, 110, 113, 118, 121, 123, 120, 32.23636 + 117, 116, 118, 121, 120, 123, 122, 123, 120, 122, 118, 115, 116, 116, 113, 107, 32.23637 + 105, 113, 119, 122, 119, 118, 124, 134, 141, 134, 130, 124, 116, 111, 108, 109, 32.23638 + 110, 112, 111, 113, 113, 118, 118, 111, 102, 109, 110, 107, 100, 99, 101, 98, 32.23639 + 93, 94, 102, 100, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 146, 32.23642 + 134, 115, 110, 109, 125, 131, 121, 111, 111, 116, 119, 116, 114, 114, 114, 120, 32.23643 + 123, 121, 117, 124, 121, 123, 124, 126, 125, 127, 130, 126, 121, 119, 121, 122, 32.23644 + 118, 111, 110, 116, 115, 115, 118, 124, 126, 121, 113, 117, 114, 115, 110, 107, 32.23645 + 106, 107, 108, 108, 108, 109, 113, 116, 116, 111, 102, 111, 111, 105, 97, 96, 32.23646 + 99, 99, 96, 86, 96, 98, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23649 + 255, 145, 150, 137, 119, 116, 120, 124, 119, 112, 109, 116, 125, 112, 109, 112, 32.23650 + 117, 124, 125, 121, 115, 125, 127, 126, 125, 125, 126, 127, 128, 119, 123, 124, 32.23651 + 121, 115, 110, 111, 114, 120, 125, 127, 128, 124, 118, 112, 108, 101, 102, 108, 32.23652 + 110, 111, 111, 109, 105, 107, 106, 108, 113, 116, 116, 111, 109, 116, 109, 101, 32.23653 + 101, 102, 101, 93, 87, 93, 85, 74, 133, 255, 255, 255, 255, 255, 255, 255, 32.23654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23656 + 255, 255, 144, 152, 147, 134, 122, 111, 113, 117, 117, 116, 113, 110, 107, 109, 32.23657 + 107, 108, 113, 118, 120, 118, 118, 116, 119, 120, 122, 122, 123, 122, 122, 114, 32.23658 + 117, 117, 114, 109, 105, 107, 112, 123, 125, 125, 123, 122, 120, 118, 114, 111, 32.23659 + 111, 112, 110, 111, 111, 111, 110, 108, 106, 109, 112, 114, 111, 105, 99, 104, 32.23660 + 104, 105, 106, 104, 99, 93, 87, 86, 85, 72, 255, 255, 255, 255, 255, 255, 32.23661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23663 + 255, 255, 255, 255, 148, 148, 138, 132, 130, 117, 111, 107, 110, 115, 113, 106, 32.23664 + 97, 106, 106, 107, 109, 111, 114, 115, 120, 118, 121, 123, 125, 124, 125, 124, 32.23665 + 124, 121, 123, 124, 120, 116, 115, 117, 121, 123, 123, 121, 120, 120, 119, 121, 32.23666 + 122, 122, 117, 114, 112, 111, 112, 114, 115, 116, 115, 114, 115, 118, 114, 106, 32.23667 + 99, 95, 98, 100, 96, 89, 81, 78, 76, 81, 86, 255, 255, 255, 255, 255, 32.23668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23670 + 255, 255, 255, 255, 255, 133, 158, 157, 140, 126, 124, 125, 116, 104, 102, 106, 32.23671 + 110, 107, 104, 107, 108, 109, 108, 105, 108, 114, 121, 127, 129, 128, 127, 125, 32.23672 + 126, 125, 126, 131, 131, 132, 130, 126, 123, 122, 124, 121, 121, 118, 114, 114, 32.23673 + 115, 117, 117, 118, 117, 114, 110, 110, 112, 114, 113, 118, 113, 112, 112, 114, 32.23674 + 113, 109, 105, 103, 101, 97, 90, 82, 77, 75, 78, 76, 80, 255, 255, 255, 32.23675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23677 + 255, 255, 255, 255, 255, 255, 255, 133, 169, 173, 149, 122, 108, 119, 111, 104, 32.23678 + 102, 103, 108, 110, 111, 109, 111, 112, 109, 105, 105, 112, 120, 127, 127, 124, 32.23679 + 122, 120, 122, 125, 126, 126, 129, 129, 129, 126, 121, 117, 114, 115, 114, 112, 32.23680 + 110, 109, 106, 105, 105, 110, 109, 109, 108, 108, 109, 110, 111, 115, 109, 105, 32.23681 + 100, 102, 105, 105, 104, 106, 102, 97, 92, 90, 87, 83, 83, 59, 59, 255, 32.23682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23684 + 255, 255, 255, 255, 255, 255, 255, 255, 91, 134, 157, 161, 149, 132, 119, 106, 32.23685 + 106, 106, 105, 107, 109, 110, 111, 109, 113, 114, 111, 108, 107, 111, 116, 124, 32.23686 + 124, 122, 121, 121, 125, 129, 132, 123, 125, 127, 125, 123, 119, 114, 111, 114, 32.23687 + 113, 112, 110, 106, 103, 100, 98, 105, 107, 107, 110, 112, 112, 112, 112, 123, 32.23688 + 115, 106, 102, 103, 103, 104, 103, 101, 97, 93, 89, 85, 79, 69, 65, 46, 32.23689 + 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 145, 150, 145, 145, 143, 32.23692 + 137, 116, 111, 108, 107, 108, 108, 108, 108, 104, 108, 111, 114, 111, 111, 112, 32.23693 + 114, 125, 125, 126, 127, 128, 130, 132, 133, 131, 130, 130, 128, 128, 127, 126, 32.23694 + 124, 121, 120, 118, 116, 113, 111, 108, 107, 112, 112, 114, 116, 116, 117, 117, 32.23695 + 119, 127, 122, 114, 109, 109, 110, 107, 105, 98, 95, 86, 78, 69, 67, 68, 32.23696 + 72, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 124, 165, 166, 153, 32.23699 + 149, 143, 130, 137, 126, 112, 105, 104, 107, 108, 107, 99, 103, 108, 113, 115, 32.23700 + 113, 113, 115, 125, 127, 129, 131, 131, 130, 127, 125, 135, 133, 130, 129, 131, 32.23701 + 132, 136, 135, 135, 131, 128, 125, 123, 122, 121, 121, 122, 120, 120, 121, 121, 32.23702 + 122, 123, 126, 123, 118, 114, 113, 114, 112, 109, 104, 100, 95, 87, 75, 71, 32.23703 + 80, 100, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 165, 32.23706 + 164, 154, 142, 136, 138, 139, 132, 122, 110, 101, 97, 96, 98, 95, 100, 103, 32.23707 + 100, 105, 114, 118, 115, 118, 122, 128, 132, 133, 133, 133, 133, 146, 144, 140, 32.23708 + 137, 136, 135, 139, 138, 134, 130, 125, 125, 126, 128, 127, 125, 124, 126, 123, 32.23709 + 122, 125, 131, 132, 129, 130, 129, 121, 109, 106, 109, 109, 104, 93, 106, 93, 32.23710 + 73, 76, 77, 79, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23713 + 130, 159, 154, 147, 143, 138, 136, 139, 135, 128, 116, 105, 99, 96, 97, 97, 32.23714 + 101, 103, 103, 107, 116, 121, 120, 121, 125, 129, 131, 132, 133, 134, 135, 146, 32.23715 + 144, 141, 139, 138, 139, 140, 141, 137, 133, 130, 129, 129, 128, 129, 128, 128, 32.23716 + 129, 127, 123, 127, 130, 132, 128, 126, 126, 120, 111, 108, 107, 107, 102, 93, 32.23717 + 99, 87, 68, 63, 66, 74, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23720 + 255, 255, 141, 162, 149, 146, 150, 146, 139, 138, 137, 133, 123, 110, 100, 97, 32.23721 + 98, 103, 104, 103, 101, 103, 109, 113, 113, 119, 122, 127, 129, 130, 132, 136, 32.23722 + 138, 142, 141, 141, 140, 139, 139, 139, 140, 138, 136, 136, 134, 132, 129, 130, 32.23723 + 131, 133, 132, 130, 125, 127, 129, 129, 125, 120, 122, 119, 114, 112, 111, 107, 32.23724 + 100, 86, 87, 92, 84, 74, 81, 97, 255, 255, 255, 255, 255, 255, 255, 255, 32.23725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23727 + 255, 255, 255, 255, 156, 166, 148, 147, 155, 150, 139, 134, 138, 138, 131, 118, 32.23728 + 108, 104, 104, 104, 103, 100, 97, 98, 101, 105, 107, 110, 114, 122, 126, 128, 32.23729 + 129, 133, 135, 136, 136, 136, 136, 136, 136, 138, 137, 136, 137, 139, 135, 133, 32.23730 + 128, 129, 130, 134, 133, 130, 124, 127, 127, 128, 124, 113, 117, 120, 118, 118, 32.23731 + 114, 106, 96, 78, 77, 94, 98, 85, 96, 255, 255, 255, 255, 255, 255, 255, 32.23732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23734 + 255, 255, 255, 255, 255, 255, 163, 167, 144, 142, 151, 145, 135, 132, 135, 139, 32.23735 + 135, 126, 117, 113, 112, 101, 98, 98, 97, 98, 101, 106, 107, 96, 102, 112, 32.23736 + 119, 123, 124, 127, 128, 132, 132, 134, 134, 135, 135, 137, 135, 136, 137, 140, 32.23737 + 138, 135, 131, 131, 131, 132, 130, 128, 122, 124, 125, 126, 119, 109, 114, 119, 32.23738 + 117, 114, 107, 94, 84, 74, 66, 78, 83, 71, 81, 255, 255, 255, 255, 255, 32.23739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23741 + 255, 255, 255, 255, 255, 255, 255, 255, 165, 165, 148, 146, 148, 144, 137, 134, 32.23742 + 134, 137, 135, 131, 126, 121, 120, 109, 103, 100, 97, 93, 89, 89, 90, 89, 32.23743 + 93, 103, 110, 114, 116, 120, 121, 128, 128, 129, 129, 130, 131, 134, 135, 134, 32.23744 + 136, 139, 138, 136, 134, 132, 131, 127, 127, 124, 118, 118, 120, 118, 114, 107, 32.23745 + 109, 108, 102, 97, 91, 82, 74, 70, 60, 58, 59, 59, 130, 255, 255, 255, 32.23746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 160, 150, 151, 148, 146, 32.23749 + 146, 139, 135, 132, 132, 133, 131, 127, 123, 121, 113, 108, 103, 95, 85, 81, 32.23750 + 80, 88, 90, 94, 98, 103, 106, 113, 116, 121, 120, 121, 121, 124, 126, 128, 32.23751 + 130, 130, 131, 133, 134, 136, 134, 131, 126, 125, 125, 121, 114, 113, 114, 112, 32.23752 + 104, 104, 100, 93, 82, 80, 81, 81, 79, 84, 77, 67, 67, 78, 255, 255, 32.23753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 146, 147, 32.23756 + 143, 143, 151, 141, 136, 131, 130, 134, 133, 131, 126, 125, 118, 114, 114, 109, 32.23757 + 100, 97, 98, 90, 90, 91, 91, 95, 100, 109, 114, 114, 113, 113, 112, 115, 32.23758 + 118, 122, 124, 124, 123, 125, 129, 133, 131, 128, 121, 126, 126, 121, 114, 109, 32.23759 + 110, 106, 100, 102, 95, 84, 72, 72, 82, 91, 96, 110, 110, 95, 94, 158, 32.23760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 32.23763 + 145, 143, 142, 141, 137, 136, 134, 132, 132, 131, 130, 128, 126, 124, 120, 114, 32.23764 + 113, 114, 109, 102, 93, 86, 83, 80, 78, 85, 96, 111, 121, 121, 113, 106, 32.23765 + 102, 107, 116, 123, 123, 121, 126, 127, 122, 122, 125, 129, 124, 127, 133, 125, 32.23766 + 103, 93, 99, 103, 96, 87, 73, 58, 66, 89, 97, 92, 99, 111, 108, 111, 32.23767 + 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23770 + 255, 220, 146, 142, 138, 135, 130, 138, 136, 136, 136, 135, 134, 133, 133, 127, 32.23771 + 123, 117, 115, 114, 110, 105, 99, 92, 88, 84, 79, 80, 85, 91, 98, 106, 32.23772 + 104, 98, 98, 103, 108, 108, 108, 106, 114, 118, 114, 111, 114, 120, 121, 126, 32.23773 + 125, 115, 100, 94, 97, 97, 89, 69, 65, 57, 57, 77, 90, 94, 104, 102, 32.23774 + 103, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23777 + 255, 255, 255, 255, 218, 143, 139, 137, 132, 138, 137, 137, 137, 137, 137, 135, 32.23778 + 134, 127, 123, 118, 116, 115, 113, 110, 105, 102, 98, 93, 87, 84, 80, 78, 32.23779 + 80, 85, 84, 84, 91, 96, 97, 95, 95, 98, 108, 113, 108, 102, 104, 111, 32.23780 + 116, 117, 108, 96, 87, 83, 80, 75, 69, 70, 80, 77, 71, 79, 88, 90, 32.23781 + 96, 92, 97, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23784 + 255, 255, 255, 255, 255, 255, 255, 255, 218, 145, 143, 135, 134, 135, 134, 134, 32.23785 + 134, 134, 133, 128, 123, 119, 116, 114, 113, 113, 112, 110, 108, 106, 102, 98, 32.23786 + 93, 86, 82, 78, 75, 76, 81, 82, 78, 76, 74, 83, 88, 90, 87, 83, 32.23787 + 82, 86, 90, 88, 79, 72, 71, 70, 66, 65, 67, 81, 100, 101, 90, 93, 32.23788 + 95, 88, 85, 84, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 145, 133, 132, 133, 32.23792 + 133, 134, 135, 134, 133, 131, 126, 123, 119, 119, 118, 119, 119, 113, 112, 111, 32.23793 + 110, 108, 104, 96, 90, 89, 82, 78, 79, 73, 64, 59, 59, 61, 59, 57, 32.23794 + 58, 59, 60, 59, 60, 56, 54, 55, 60, 63, 65, 74, 84, 80, 96, 95, 32.23795 + 87, 97, 103, 96, 91, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 137, 137, 32.23799 + 134, 135, 136, 137, 137, 138, 137, 134, 130, 128, 124, 123, 123, 124, 125, 116, 32.23800 + 114, 112, 112, 111, 107, 102, 95, 97, 89, 87, 88, 85, 77, 78, 81, 72, 32.23801 + 63, 62, 64, 70, 68, 68, 66, 60, 60, 62, 58, 61, 67, 81, 89, 90, 32.23802 + 96, 87, 80, 92, 102, 100, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23806 + 255, 216, 136, 137, 137, 139, 139, 139, 138, 132, 129, 128, 125, 123, 123, 124, 32.23807 + 125, 120, 116, 112, 111, 113, 112, 107, 103, 97, 90, 92, 98, 98, 94, 99, 32.23808 + 106, 98, 89, 88, 88, 90, 83, 83, 84, 79, 77, 72, 58, 61, 73, 86, 32.23809 + 86, 98, 100, 90, 87, 97, 101, 100, 157, 255, 255, 255, 255, 255, 255, 255, 32.23810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23813 + 255, 255, 255, 255, 216, 138, 139, 139, 139, 139, 136, 127, 127, 125, 124, 121, 32.23814 + 120, 119, 122, 124, 119, 113, 113, 117, 119, 117, 114, 99, 92, 92, 97, 98, 32.23815 + 90, 92, 101, 103, 98, 95, 93, 85, 76, 74, 79, 81, 81, 69, 56, 63, 32.23816 + 85, 96, 93, 86, 92, 93, 99, 108, 154, 255, 255, 255, 255, 255, 255, 255, 32.23817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23820 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 134, 133, 134, 138, 131, 127, 123, 32.23821 + 121, 121, 121, 120, 119, 116, 120, 123, 125, 124, 123, 122, 121, 107, 113, 113, 32.23822 + 105, 101, 102, 103, 100, 94, 100, 105, 101, 91, 83, 81, 82, 80, 79, 75, 32.23823 + 73, 80, 92, 94, 91, 86, 90, 93, 101, 157, 255, 255, 255, 255, 255, 255, 32.23824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 128, 133, 137, 135, 32.23828 + 131, 128, 126, 126, 126, 124, 124, 122, 123, 127, 126, 125, 122, 122, 118, 114, 32.23829 + 120, 119, 110, 104, 106, 110, 111, 109, 108, 104, 97, 92, 91, 97, 103, 95, 32.23830 + 89, 77, 69, 74, 86, 92, 92, 97, 94, 91, 146, 255, 255, 255, 255, 255, 32.23831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.23835 + 135, 134, 132, 130, 129, 129, 128, 126, 126, 128, 129, 131, 129, 127, 123, 122, 32.23836 + 118, 119, 122, 119, 111, 105, 107, 113, 116, 114, 109, 101, 95, 92, 95, 101, 32.23837 + 105, 93, 86, 76, 71, 78, 91, 98, 100, 103, 98, 255, 255, 255, 255, 255, 32.23838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23842 + 255, 255, 255, 213, 127, 125, 124, 125, 126, 123, 123, 131, 131, 132, 130, 129, 32.23843 + 125, 123, 121, 123, 119, 117, 112, 111, 113, 114, 114, 113, 109, 104, 102, 101, 32.23844 + 99, 96, 92, 86, 82, 78, 80, 88, 96, 98, 99, 150, 255, 255, 255, 255, 32.23845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23849 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 122, 123, 122, 122, 130, 130, 132, 32.23850 + 130, 129, 127, 127, 124, 126, 120, 117, 119, 124, 125, 120, 115, 117, 114, 112, 32.23851 + 112, 112, 108, 100, 93, 93, 87, 82, 85, 90, 92, 91, 93, 255, 255, 255, 32.23852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 124, 125, 129, 32.23857 + 130, 130, 130, 130, 128, 128, 127, 125, 116, 113, 121, 128, 125, 119, 113, 119, 32.23858 + 116, 112, 111, 111, 110, 105, 101, 93, 84, 77, 80, 87, 91, 93, 152, 255, 32.23859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23864 + 255, 214, 131, 130, 130, 130, 128, 129, 127, 121, 115, 116, 120, 123, 120, 116, 32.23865 + 118, 119, 117, 114, 112, 110, 107, 103, 100, 86, 78, 75, 83, 92, 95, 255, 32.23866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23871 + 255, 255, 255, 255, 255, 255, 213, 129, 127, 127, 125, 123, 120, 123, 124, 122, 32.23872 + 116, 121, 130, 120, 122, 121, 120, 114, 104, 95, 90, 82, 77, 81, 92, 151, 32.23873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 119, 119, 32.23879 + 116, 115, 115, 117, 121, 123, 127, 123, 110, 98, 92, 84, 76, 136, 255, 255, 32.23880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.23883 +/* Define image 'enemy13' of size 144x144x1x3 and type 'const unsigned char' */ 32.23884 +const unsigned char data_enemy13[] = { 32.23885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 154, 181, 158, 190, 32.23890 + 187, 178, 114, 146, 197, 219, 224, 134, 108, 213, 255, 255, 255, 255, 255, 255, 32.23891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23898 + 224, 187, 140, 138, 154, 132, 145, 171, 185, 145, 133, 136, 147, 167, 150, 175, 32.23899 + 178, 155, 81, 73, 124, 171, 175, 92, 56, 55, 64, 111, 112, 158, 255, 255, 32.23900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 121, 144, 148, 115, 131, 157, 32.23907 + 168, 187, 150, 155, 173, 139, 142, 167, 192, 153, 143, 134, 142, 147, 150, 178, 32.23908 + 208, 168, 88, 93, 120, 172, 192, 159, 185, 199, 205, 246, 252, 251, 246, 248, 32.23909 + 255, 255, 247, 246, 177, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23915 + 255, 255, 255, 255, 255, 255, 226, 179, 154, 179, 141, 147, 133, 110, 130, 158, 32.23916 + 173, 175, 127, 151, 157, 138, 141, 172, 202, 137, 137, 142, 130, 158, 152, 162, 32.23917 + 218, 224, 206, 224, 223, 241, 252, 254, 233, 249, 233, 245, 252, 255, 230, 255, 32.23918 + 246, 253, 207, 218, 216, 249, 196, 119, 240, 255, 255, 255, 255, 255, 255, 255, 32.23919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23924 + 255, 255, 230, 165, 159, 175, 143, 174, 186, 177, 146, 149, 118, 95, 120, 129, 32.23925 + 121, 113, 67, 85, 94, 76, 87, 128, 190, 203, 184, 126, 150, 168, 192, 213, 32.23926 + 221, 225, 222, 221, 251, 247, 248, 254, 247, 246, 252, 245, 225, 226, 255, 243, 32.23927 + 253, 240, 244, 228, 96, 80, 165, 216, 238, 210, 199, 255, 255, 255, 255, 255, 32.23928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23933 + 225, 172, 170, 165, 176, 183, 124, 136, 119, 132, 116, 104, 79, 100, 165, 193, 32.23934 + 209, 241, 237, 209, 242, 252, 246, 244, 233, 226, 138, 125, 179, 163, 148, 123, 32.23935 + 73, 77, 89, 105, 233, 251, 235, 237, 254, 242, 246, 220, 205, 255, 240, 233, 32.23936 + 235, 251, 225, 232, 222, 177, 72, 115, 100, 177, 193, 226, 214, 255, 255, 255, 32.23937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 128, 32.23942 + 121, 150, 165, 141, 124, 152, 124, 170, 159, 159, 164, 137, 131, 177, 229, 222, 32.23943 + 221, 247, 251, 255, 254, 243, 216, 247, 241, 236, 160, 131, 159, 126, 80, 48, 32.23944 + 28, 39, 48, 51, 175, 226, 222, 238, 253, 253, 240, 219, 221, 164, 236, 248, 32.23945 + 234, 234, 248, 243, 244, 212, 0, 77, 72, 109, 152, 158, 182, 193, 216, 255, 32.23946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 186, 185, 179, 120, 32.23951 + 129, 152, 152, 115, 102, 178, 175, 227, 241, 225, 242, 226, 215, 228, 217, 167, 32.23952 + 139, 128, 115, 105, 75, 76, 80, 206, 243, 229, 200, 128, 87, 73, 54, 54, 32.23953 + 77, 64, 45, 23, 20, 47, 62, 132, 179, 248, 230, 227, 246, 47, 136, 247, 32.23954 + 219, 227, 237, 231, 213, 236, 58, 90, 81, 59, 44, 33, 94, 161, 156, 170, 32.23955 + 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 160, 172, 161, 161, 175, 154, 32.23960 + 210, 228, 205, 221, 237, 201, 222, 235, 207, 230, 150, 191, 148, 99, 35, 3, 32.23961 + 13, 25, 36, 60, 44, 65, 56, 138, 116, 59, 47, 78, 43, 80, 100, 97, 32.23962 + 107, 74, 52, 80, 103, 196, 216, 252, 241, 214, 55, 54, 0, 76, 25, 17, 32.23963 + 96, 163, 218, 229, 241, 207, 62, 103, 148, 171, 151, 106, 67, 120, 111, 207, 32.23964 + 155, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23968 + 255, 255, 255, 255, 255, 255, 255, 255, 171, 165, 160, 147, 174, 206, 233, 237, 32.23969 + 222, 184, 155, 169, 161, 60, 147, 190, 186, 221, 79, 24, 45, 77, 86, 108, 32.23970 + 115, 90, 92, 57, 49, 58, 41, 71, 54, 64, 83, 67, 139, 220, 244, 238, 32.23971 + 241, 234, 223, 226, 240, 251, 229, 235, 251, 233, 65, 23, 104, 58, 84, 87, 32.23972 + 29, 22, 102, 122, 206, 222, 193, 218, 181, 184, 207, 195, 77, 2, 37, 123, 32.23973 + 159, 133, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23977 + 255, 255, 255, 255, 255, 255, 255, 164, 175, 169, 170, 201, 238, 245, 214, 177, 32.23978 + 78, 68, 130, 192, 140, 154, 200, 181, 199, 156, 105, 68, 90, 106, 93, 102, 32.23979 + 99, 78, 112, 57, 49, 50, 62, 75, 63, 98, 83, 29, 187, 254, 244, 236, 32.23980 + 244, 249, 227, 246, 229, 237, 238, 246, 237, 185, 42, 41, 158, 237, 194, 181, 32.23981 + 74, 14, 26, 67, 97, 176, 200, 200, 191, 196, 186, 198, 111, 41, 17, 124, 32.23982 + 187, 161, 176, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23986 + 255, 255, 255, 255, 255, 255, 231, 168, 171, 176, 155, 240, 102, 70, 48, 33, 32.23987 + 156, 181, 192, 140, 162, 197, 180, 128, 123, 44, 67, 72, 108, 81, 96, 126, 32.23988 + 81, 82, 46, 74, 182, 187, 186, 237, 251, 246, 238, 216, 240, 243, 249, 239, 32.23989 + 242, 251, 225, 238, 246, 225, 247, 249, 234, 245, 210, 225, 251, 248, 249, 242, 32.23990 + 239, 205, 108, 1, 20, 10, 99, 182, 199, 168, 133, 166, 178, 132, 29, 161, 32.23991 + 190, 194, 191, 116, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.23995 + 255, 255, 255, 255, 255, 227, 183, 199, 174, 117, 83, 177, 46, 11, 197, 195, 32.23996 + 217, 186, 216, 203, 155, 83, 55, 34, 4, 23, 65, 69, 40, 65, 97, 110, 32.23997 + 63, 30, 181, 233, 224, 198, 237, 239, 252, 236, 237, 249, 238, 214, 221, 222, 32.23998 + 234, 232, 239, 232, 249, 232, 186, 167, 210, 238, 255, 255, 254, 232, 238, 240, 32.23999 + 241, 249, 235, 206, 17, 1, 7, 63, 102, 192, 168, 75, 79, 176, 119, 116, 32.24000 + 180, 196, 228, 205, 129, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24004 + 255, 255, 255, 255, 223, 165, 172, 146, 152, 195, 217, 231, 197, 192, 220, 220, 32.24005 + 136, 149, 101, 61, 47, 15, 6, 49, 65, 136, 167, 195, 212, 75, 66, 150, 32.24006 + 171, 210, 220, 137, 82, 186, 228, 251, 239, 234, 255, 249, 247, 244, 255, 255, 32.24007 + 247, 228, 255, 252, 207, 75, 65, 75, 72, 77, 77, 235, 255, 255, 255, 254, 32.24008 + 250, 250, 234, 232, 231, 192, 25, 72, 31, 28, 131, 177, 164, 144, 134, 134, 32.24009 + 182, 138, 100, 213, 225, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24013 + 255, 255, 255, 231, 154, 189, 199, 171, 173, 215, 243, 244, 244, 210, 239, 207, 32.24014 + 48, 84, 70, 83, 23, 35, 45, 72, 98, 134, 219, 228, 205, 174, 30, 96, 32.24015 + 201, 180, 193, 106, 0, 207, 248, 233, 242, 247, 217, 253, 249, 248, 249, 243, 32.24016 + 230, 241, 226, 247, 179, 73, 79, 116, 119, 73, 100, 210, 249, 255, 246, 251, 32.24017 + 251, 243, 234, 248, 246, 204, 135, 104, 99, 29, 75, 150, 198, 129, 128, 155, 32.24018 + 182, 99, 45, 216, 221, 212, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24022 + 255, 255, 255, 173, 191, 166, 169, 230, 218, 186, 232, 248, 219, 244, 110, 65, 32.24023 + 94, 89, 184, 229, 212, 199, 126, 60, 151, 155, 184, 175, 199, 199, 109, 32, 32.24024 + 31, 53, 30, 65, 85, 138, 233, 235, 251, 230, 252, 231, 227, 242, 246, 254, 32.24025 + 240, 244, 121, 72, 247, 229, 255, 255, 218, 253, 219, 228, 230, 238, 250, 255, 32.24026 + 247, 237, 255, 250, 242, 249, 223, 0, 87, 124, 28, 74, 140, 174, 159, 167, 32.24027 + 190, 70, 45, 179, 241, 219, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24031 + 255, 255, 255, 175, 173, 159, 191, 204, 95, 21, 78, 181, 118, 57, 127, 234, 32.24032 + 234, 235, 217, 187, 212, 233, 210, 63, 127, 152, 196, 181, 180, 211, 199, 83, 32.24033 + 90, 115, 87, 79, 123, 60, 179, 242, 227, 248, 233, 249, 244, 243, 221, 237, 32.24034 + 250, 255, 131, 79, 249, 255, 236, 219, 216, 247, 240, 217, 220, 241, 245, 254, 32.24035 + 255, 243, 251, 244, 241, 234, 252, 52, 50, 102, 89, 18, 63, 46, 70, 153, 32.24036 + 203, 99, 38, 144, 223, 238, 230, 214, 255, 255, 255, 255, 255, 255, 255, 255, 32.24037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24040 + 255, 255, 255, 183, 149, 159, 181, 130, 48, 34, 68, 87, 65, 21, 167, 229, 32.24041 + 239, 195, 193, 82, 151, 237, 194, 13, 140, 162, 178, 184, 98, 162, 195, 114, 32.24042 + 56, 101, 117, 102, 114, 37, 86, 233, 227, 251, 234, 230, 234, 249, 242, 246, 32.24043 + 255, 175, 97, 136, 247, 255, 244, 255, 237, 255, 226, 204, 216, 241, 214, 210, 32.24044 + 251, 255, 255, 247, 255, 255, 246, 77, 40, 99, 94, 75, 115, 32, 50, 110, 32.24045 + 212, 177, 46, 157, 233, 201, 223, 204, 164, 255, 255, 255, 255, 255, 255, 255, 32.24046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24049 + 255, 255, 225, 171, 188, 153, 91, 86, 119, 110, 66, 84, 66, 120, 57, 78, 32.24050 + 48, 58, 94, 56, 59, 213, 177, 26, 185, 146, 165, 164, 84, 167, 193, 188, 32.24051 + 57, 131, 81, 115, 81, 103, 61, 27, 121, 210, 240, 247, 235, 242, 237, 245, 32.24052 + 255, 83, 50, 19, 116, 230, 200, 229, 212, 201, 204, 232, 226, 255, 243, 210, 32.24053 + 218, 227, 242, 248, 226, 231, 233, 94, 48, 91, 87, 90, 87, 108, 87, 21, 32.24054 + 223, 218, 16, 60, 215, 236, 132, 35, 222, 54, 255, 255, 255, 255, 255, 255, 32.24055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24058 + 255, 255, 181, 190, 224, 106, 87, 89, 87, 75, 83, 82, 115, 114, 56, 55, 32.24059 + 79, 113, 113, 91, 107, 151, 86, 89, 204, 121, 165, 165, 84, 122, 176, 210, 32.24060 + 45, 47, 109, 106, 105, 118, 109, 94, 51, 42, 84, 161, 244, 236, 248, 237, 32.24061 + 247, 255, 232, 205, 54, 64, 89, 84, 104, 167, 221, 249, 252, 249, 255, 237, 32.24062 + 248, 255, 167, 145, 156, 125, 130, 53, 89, 81, 76, 77, 101, 74, 89, 34, 32.24063 + 218, 235, 29, 14, 147, 212, 55, 21, 190, 99, 139, 255, 255, 255, 255, 255, 32.24064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24067 + 255, 255, 136, 102, 112, 85, 73, 77, 55, 75, 67, 72, 66, 74, 61, 80, 32.24068 + 103, 129, 111, 113, 111, 102, 111, 51, 59, 144, 184, 178, 176, 186, 188, 188, 32.24069 + 111, 19, 11, 27, 21, 23, 113, 98, 90, 71, 65, 148, 253, 234, 245, 255, 32.24070 + 251, 249, 249, 249, 231, 209, 228, 245, 230, 253, 254, 242, 236, 248, 252, 255, 32.24071 + 241, 248, 74, 59, 80, 83, 67, 93, 105, 71, 91, 74, 60, 75, 68, 52, 32.24072 + 222, 232, 22, 57, 88, 241, 31, 16, 80, 178, 48, 255, 255, 255, 255, 255, 32.24073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24076 + 255, 255, 136, 61, 71, 74, 71, 71, 77, 77, 66, 54, 42, 67, 69, 70, 32.24077 + 73, 113, 120, 101, 89, 86, 74, 55, 53, 123, 191, 184, 176, 189, 224, 198, 32.24078 + 108, 10, 68, 83, 97, 46, 69, 107, 86, 92, 84, 131, 255, 249, 248, 254, 32.24079 + 250, 255, 255, 239, 255, 250, 245, 253, 251, 255, 255, 252, 219, 235, 250, 225, 32.24080 + 193, 248, 77, 78, 69, 87, 69, 110, 109, 60, 84, 75, 71, 64, 97, 55, 32.24081 + 199, 221, 38, 72, 48, 207, 40, 38, 27, 242, 117, 145, 255, 255, 255, 255, 32.24082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24085 + 255, 255, 108, 95, 71, 73, 64, 94, 101, 81, 83, 97, 78, 78, 77, 97, 32.24086 + 81, 81, 73, 73, 64, 108, 95, 100, 103, 48, 80, 140, 182, 191, 187, 188, 32.24087 + 200, 212, 235, 235, 237, 142, 88, 84, 98, 100, 67, 136, 241, 242, 254, 248, 32.24088 + 246, 255, 245, 214, 226, 252, 250, 240, 253, 236, 239, 235, 255, 179, 255, 255, 32.24089 + 108, 62, 248, 246, 81, 54, 107, 69, 79, 90, 99, 59, 54, 67, 62, 76, 32.24090 + 63, 209, 55, 56, 82, 119, 90, 74, 66, 185, 223, 68, 255, 255, 255, 255, 32.24091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24094 + 255, 219, 6, 102, 46, 82, 67, 90, 94, 102, 84, 73, 79, 57, 31, 72, 32.24095 + 65, 55, 60, 118, 96, 67, 99, 53, 60, 76, 63, 46, 36, 51, 217, 241, 32.24096 + 221, 237, 246, 234, 251, 251, 232, 8, 70, 92, 86, 109, 238, 238, 250, 255, 32.24097 + 250, 241, 232, 241, 231, 209, 208, 251, 255, 239, 245, 246, 255, 196, 218, 228, 32.24098 + 237, 107, 81, 148, 175, 62, 18, 57, 69, 51, 84, 75, 65, 76, 72, 82, 32.24099 + 22, 173, 134, 48, 122, 73, 121, 96, 106, 63, 218, 88, 144, 255, 255, 255, 32.24100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24103 + 255, 155, 127, 229, 219, 229, 203, 65, 118, 95, 39, 63, 108, 114, 81, 104, 32.24104 + 85, 59, 47, 112, 145, 76, 88, 66, 92, 98, 71, 85, 63, 7, 207, 234, 32.24105 + 234, 249, 245, 252, 230, 243, 247, 43, 83, 96, 92, 26, 251, 254, 237, 251, 32.24106 + 255, 245, 237, 254, 249, 92, 78, 235, 245, 248, 255, 240, 245, 238, 195, 196, 32.24107 + 249, 134, 31, 32, 217, 216, 91, 39, 36, 88, 82, 77, 67, 52, 83, 37, 32.24108 + 49, 66, 181, 61, 99, 87, 114, 104, 112, 23, 151, 141, 106, 217, 255, 255, 32.24109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24112 + 255, 215, 251, 234, 251, 240, 250, 82, 108, 77, 112, 184, 204, 226, 219, 235, 32.24113 + 207, 135, 41, 102, 146, 90, 35, 68, 115, 64, 79, 86, 108, 40, 189, 237, 32.24114 + 254, 252, 249, 255, 246, 254, 222, 83, 45, 95, 118, 13, 175, 221, 240, 238, 32.24115 + 251, 255, 239, 240, 219, 48, 41, 255, 255, 254, 250, 253, 228, 218, 165, 190, 32.24116 + 239, 163, 51, 37, 139, 183, 165, 86, 16, 45, 99, 80, 76, 84, 74, 73, 32.24117 + 62, 29, 209, 110, 65, 103, 108, 101, 105, 57, 126, 165, 112, 117, 255, 255, 32.24118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24121 + 255, 250, 239, 252, 227, 204, 226, 185, 33, 40, 225, 249, 230, 246, 229, 222, 32.24122 + 239, 241, 167, 25, 42, 59, 54, 76, 72, 39, 56, 11, 54, 8, 104, 224, 32.24123 + 249, 243, 248, 241, 247, 255, 251, 71, 34, 96, 80, 88, 37, 89, 252, 250, 32.24124 + 224, 255, 227, 247, 163, 57, 52, 253, 255, 240, 246, 234, 212, 236, 188, 143, 32.24125 + 251, 234, 15, 73, 46, 83, 217, 193, 184, 86, 20, 32, 86, 65, 85, 75, 32.24126 + 68, 11, 218, 173, 68, 100, 115, 84, 91, 72, 130, 151, 100, 76, 255, 255, 32.24127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24130 + 255, 232, 254, 252, 255, 194, 217, 200, 20, 110, 243, 239, 238, 245, 247, 241, 32.24131 + 248, 227, 247, 83, 37, 127, 77, 111, 74, 75, 213, 232, 207, 171, 27, 178, 32.24132 + 249, 249, 231, 242, 251, 253, 240, 51, 36, 69, 81, 103, 67, 55, 84, 143, 32.24133 + 246, 239, 83, 133, 32, 77, 32, 231, 244, 248, 247, 228, 253, 237, 253, 255, 32.24134 + 234, 250, 34, 78, 35, 54, 32, 154, 171, 209, 164, 128, 42, 56, 81, 89, 32.24135 + 51, 48, 206, 208, 47, 97, 108, 96, 161, 36, 99, 78, 103, 81, 134, 255, 32.24136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24139 + 240, 235, 240, 255, 251, 227, 217, 216, 118, 174, 238, 248, 252, 242, 229, 225, 32.24140 + 233, 228, 233, 107, 103, 108, 140, 45, 71, 141, 241, 230, 252, 230, 78, 138, 32.24141 + 231, 251, 247, 255, 255, 239, 249, 45, 90, 41, 79, 84, 91, 97, 47, 84, 32.24142 + 164, 117, 60, 44, 60, 83, 91, 138, 248, 252, 234, 238, 247, 253, 253, 249, 32.24143 + 254, 213, 18, 61, 72, 74, 18, 73, 140, 213, 206, 175, 118, 54, 73, 73, 32.24144 + 85, 50, 188, 184, 41, 90, 51, 100, 176, 24, 86, 116, 92, 82, 96, 255, 32.24145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24148 + 212, 233, 238, 255, 255, 255, 230, 236, 255, 254, 233, 252, 223, 235, 248, 232, 32.24149 + 221, 249, 252, 104, 149, 128, 108, 114, 187, 227, 196, 229, 229, 241, 251, 249, 32.24150 + 251, 229, 255, 253, 236, 192, 130, 37, 78, 78, 87, 101, 84, 96, 68, 51, 32.24151 + 29, 4, 72, 87, 80, 79, 72, 45, 135, 229, 250, 255, 220, 234, 254, 238, 32.24152 + 203, 127, 57, 96, 60, 52, 66, 42, 15, 59, 142, 194, 228, 136, 93, 96, 32.24153 + 109, 61, 157, 160, 43, 68, 61, 84, 124, 194, 99, 92, 69, 98, 108, 255, 32.24154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24157 + 183, 220, 230, 234, 242, 252, 255, 222, 248, 228, 254, 245, 252, 252, 224, 238, 32.24158 + 247, 218, 155, 31, 156, 127, 64, 243, 248, 251, 213, 233, 218, 199, 221, 214, 32.24159 + 241, 238, 251, 207, 127, 57, 35, 112, 62, 103, 64, 64, 70, 66, 73, 79, 32.24160 + 90, 87, 44, 61, 40, 95, 72, 36, 30, 154, 221, 230, 240, 251, 248, 181, 32.24161 + 34, 14, 91, 76, 75, 53, 47, 56, 83, 53, 12, 42, 98, 192, 193, 139, 32.24162 + 72, 85, 73, 59, 91, 59, 55, 75, 6, 228, 164, 98, 87, 117, 106, 157, 32.24163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24166 + 147, 222, 211, 215, 234, 236, 246, 250, 255, 251, 255, 246, 243, 246, 236, 230, 32.24167 + 145, 35, 72, 188, 245, 75, 21, 238, 242, 230, 242, 233, 254, 248, 232, 220, 32.24168 + 255, 255, 249, 40, 72, 71, 99, 148, 99, 87, 60, 41, 60, 66, 60, 37, 32.24169 + 34, 70, 87, 95, 58, 66, 68, 69, 78, 48, 40, 133, 217, 225, 199, 210, 32.24170 + 55, 53, 98, 51, 57, 79, 91, 85, 63, 69, 86, 66, 33, 36, 53, 138, 32.24171 + 64, 69, 78, 84, 64, 34, 93, 132, 74, 152, 147, 67, 73, 95, 79, 97, 32.24172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24175 + 107, 235, 220, 206, 223, 250, 238, 255, 236, 248, 211, 146, 144, 208, 255, 226, 32.24176 + 202, 163, 185, 200, 231, 171, 25, 135, 255, 246, 255, 254, 241, 236, 241, 245, 32.24177 + 249, 232, 255, 41, 53, 95, 127, 178, 163, 62, 62, 96, 120, 119, 48, 45, 32.24178 + 63, 41, 95, 66, 58, 68, 63, 78, 95, 61, 74, 46, 171, 242, 219, 225, 32.24179 + 56, 47, 80, 71, 73, 82, 65, 80, 72, 77, 61, 85, 65, 46, 38, 66, 32.24180 + 44, 65, 85, 75, 90, 74, 202, 231, 188, 114, 220, 112, 86, 77, 73, 95, 32.24181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 32.24184 + 51, 201, 213, 215, 199, 252, 236, 192, 96, 158, 196, 195, 103, 94, 246, 241, 32.24185 + 241, 238, 226, 248, 230, 226, 39, 27, 194, 255, 230, 239, 240, 239, 247, 255, 32.24186 + 246, 152, 180, 203, 140, 199, 226, 234, 145, 96, 235, 250, 238, 252, 237, 194, 32.24187 + 105, 16, 65, 82, 68, 79, 78, 110, 90, 88, 74, 33, 44, 191, 208, 225, 32.24188 + 110, 40, 70, 64, 82, 97, 81, 79, 76, 81, 70, 50, 95, 67, 38, 69, 32.24189 + 81, 55, 80, 87, 70, 73, 212, 217, 240, 209, 223, 237, 168, 126, 121, 120, 32.24190 + 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 32.24193 + 1, 126, 165, 236, 232, 240, 165, 78, 138, 223, 221, 231, 235, 108, 203, 248, 32.24194 + 254, 245, 248, 223, 248, 237, 250, 80, 60, 247, 251, 250, 248, 241, 255, 243, 32.24195 + 183, 34, 93, 225, 227, 241, 231, 178, 120, 123, 255, 253, 243, 243, 252, 246, 32.24196 + 222, 149, 32, 57, 85, 83, 98, 88, 87, 112, 73, 98, 7, 196, 213, 206, 32.24197 + 163, 51, 88, 77, 72, 73, 89, 96, 93, 83, 79, 72, 47, 76, 88, 77, 32.24198 + 75, 71, 67, 67, 100, 93, 88, 164, 221, 217, 242, 185, 175, 188, 154, 70, 32.24199 + 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 32.24202 + 61, 12, 69, 234, 234, 183, 48, 87, 207, 209, 246, 240, 213, 196, 230, 250, 32.24203 + 238, 253, 242, 246, 220, 176, 161, 150, 4, 93, 241, 229, 232, 236, 252, 255, 32.24204 + 233, 155, 54, 201, 219, 255, 234, 119, 66, 207, 255, 251, 255, 251, 241, 242, 32.24205 + 238, 236, 114, 30, 100, 106, 86, 94, 112, 103, 91, 83, 9, 230, 199, 207, 32.24206 + 188, 55, 75, 74, 81, 78, 81, 107, 79, 112, 89, 87, 76, 76, 85, 84, 32.24207 + 72, 67, 70, 62, 47, 71, 29, 34, 245, 214, 227, 224, 166, 138, 182, 158, 32.24208 + 144, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.24211 + 64, 36, 91, 230, 228, 205, 58, 92, 218, 230, 214, 251, 217, 188, 231, 250, 32.24212 + 255, 247, 230, 239, 244, 62, 88, 121, 48, 0, 241, 229, 250, 251, 233, 225, 32.24213 + 255, 223, 99, 175, 210, 236, 221, 143, 132, 238, 255, 250, 241, 240, 249, 246, 32.24214 + 244, 252, 203, 98, 85, 100, 96, 96, 81, 76, 87, 61, 46, 191, 211, 204, 32.24215 + 185, 76, 62, 91, 107, 104, 85, 92, 84, 76, 104, 88, 83, 84, 88, 86, 32.24216 + 80, 77, 79, 52, 83, 72, 36, 29, 225, 248, 219, 228, 173, 103, 161, 144, 32.24217 + 137, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 65, 32.24220 + 43, 59, 219, 202, 207, 213, 98, 46, 174, 228, 246, 230, 225, 212, 255, 255, 32.24221 + 247, 244, 254, 224, 239, 81, 100, 78, 62, 109, 220, 226, 208, 185, 197, 235, 32.24222 + 254, 246, 240, 224, 236, 223, 215, 181, 189, 245, 242, 255, 249, 246, 255, 244, 32.24223 + 247, 247, 241, 207, 75, 83, 82, 88, 66, 68, 81, 59, 83, 60, 215, 197, 32.24224 + 194, 51, 101, 96, 108, 67, 89, 105, 67, 116, 82, 84, 88, 91, 86, 82, 32.24225 + 82, 83, 82, 84, 80, 63, 81, 65, 100, 243, 234, 250, 214, 99, 124, 90, 32.24226 + 103, 91, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 195, 32.24229 + 76, 34, 179, 166, 198, 252, 221, 31, 88, 123, 205, 233, 227, 195, 252, 255, 32.24230 + 238, 253, 255, 248, 233, 251, 221, 213, 235, 202, 170, 103, 9, 75, 217, 234, 32.24231 + 189, 193, 230, 255, 255, 237, 231, 226, 211, 252, 255, 248, 250, 249, 254, 243, 32.24232 + 255, 244, 240, 249, 51, 74, 67, 76, 67, 80, 82, 97, 92, 20, 108, 198, 32.24233 + 143, 0, 67, 47, 42, 60, 61, 86, 66, 81, 82, 78, 88, 90, 78, 71, 32.24234 + 78, 80, 76, 91, 87, 103, 101, 85, 21, 242, 250, 251, 253, 213, 241, 129, 32.24235 + 67, 75, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 219, 32.24238 + 74, 36, 182, 191, 194, 238, 237, 40, 50, 71, 163, 117, 198, 221, 255, 253, 32.24239 + 198, 244, 246, 255, 240, 216, 223, 167, 167, 117, 64, 21, 22, 114, 234, 248, 32.24240 + 197, 162, 236, 255, 255, 255, 241, 247, 212, 243, 254, 253, 255, 253, 255, 239, 32.24241 + 255, 238, 240, 236, 25, 74, 73, 76, 58, 76, 80, 53, 69, 48, 50, 134, 32.24242 + 169, 25, 29, 0, 33, 34, 99, 78, 98, 70, 104, 79, 92, 91, 76, 68, 32.24243 + 76, 79, 72, 107, 73, 79, 89, 99, 44, 230, 255, 251, 255, 255, 245, 154, 32.24244 + 157, 212, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 254, 32.24247 + 141, 49, 198, 245, 225, 247, 237, 167, 148, 113, 105, 200, 255, 255, 255, 252, 32.24248 + 223, 205, 172, 131, 186, 38, 92, 69, 36, 73, 38, 73, 93, 205, 240, 187, 32.24249 + 181, 212, 248, 255, 252, 255, 255, 255, 255, 253, 233, 254, 246, 245, 255, 242, 32.24250 + 240, 249, 251, 249, 34, 63, 66, 79, 56, 65, 65, 73, 64, 42, 30, 5, 32.24251 + 199, 151, 170, 199, 0, 81, 0, 13, 87, 82, 91, 86, 96, 96, 81, 76, 32.24252 + 80, 81, 75, 80, 78, 81, 83, 44, 18, 132, 225, 255, 241, 250, 241, 214, 32.24253 + 255, 254, 240, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 213, 32.24256 + 147, 81, 230, 247, 226, 205, 158, 216, 255, 254, 222, 211, 231, 255, 253, 233, 32.24257 + 255, 189, 235, 232, 255, 96, 14, 60, 85, 45, 95, 75, 152, 242, 221, 184, 32.24258 + 200, 216, 255, 255, 255, 255, 255, 233, 233, 222, 236, 228, 219, 222, 246, 253, 32.24259 + 248, 254, 215, 217, 49, 68, 60, 73, 64, 70, 59, 82, 63, 91, 77, 68, 32.24260 + 158, 182, 189, 206, 168, 214, 230, 16, 35, 64, 96, 89, 93, 92, 84, 82, 32.24261 + 84, 82, 77, 68, 77, 62, 62, 158, 233, 254, 255, 207, 146, 178, 255, 255, 32.24262 + 200, 69, 84, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 254, 221, 32.24265 + 200, 147, 140, 241, 241, 171, 95, 153, 226, 211, 199, 125, 97, 170, 249, 239, 32.24266 + 255, 60, 123, 255, 255, 197, 160, 49, 99, 74, 69, 45, 130, 234, 200, 163, 32.24267 + 225, 244, 239, 249, 255, 248, 245, 97, 67, 79, 177, 237, 237, 231, 240, 255, 32.24268 + 244, 229, 98, 101, 39, 97, 74, 63, 63, 79, 68, 80, 106, 74, 87, 86, 32.24269 + 120, 143, 171, 155, 204, 179, 209, 172, 70, 86, 77, 87, 89, 86, 85, 86, 32.24270 + 86, 82, 80, 102, 91, 103, 102, 247, 243, 238, 250, 254, 150, 75, 126, 215, 32.24271 + 255, 75, 66, 75, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 237, 231, 32.24274 + 230, 209, 35, 242, 247, 139, 76, 134, 207, 224, 203, 132, 29, 138, 246, 234, 32.24275 + 252, 63, 49, 198, 204, 225, 226, 42, 40, 101, 67, 62, 99, 231, 243, 207, 32.24276 + 244, 241, 236, 249, 233, 238, 178, 49, 2, 52, 90, 193, 214, 215, 214, 188, 32.24277 + 201, 173, 5, 36, 77, 91, 63, 89, 76, 70, 83, 90, 93, 96, 87, 96, 32.24278 + 112, 120, 147, 123, 194, 178, 195, 216, 120, 59, 91, 98, 72, 97, 112, 71, 32.24279 + 98, 106, 79, 118, 94, 123, 110, 245, 249, 242, 242, 255, 229, 88, 133, 162, 32.24280 + 255, 89, 91, 92, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 251, 239, 248, 32.24283 + 254, 232, 86, 183, 224, 151, 129, 55, 196, 226, 253, 251, 114, 110, 255, 240, 32.24284 + 143, 248, 121, 0, 6, 189, 228, 153, 73, 80, 70, 54, 37, 113, 215, 241, 32.24285 + 237, 241, 243, 231, 220, 98, 10, 71, 121, 80, 47, 37, 71, 113, 125, 58, 32.24286 + 9, 31, 38, 62, 84, 91, 68, 84, 81, 63, 91, 85, 80, 88, 87, 88, 32.24287 + 94, 113, 164, 135, 172, 192, 132, 214, 212, 31, 61, 100, 133, 77, 86, 112, 32.24288 + 82, 115, 105, 108, 122, 112, 38, 117, 214, 236, 254, 245, 239, 218, 245, 102, 32.24289 + 224, 181, 63, 85, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 237, 255, 32.24292 + 237, 223, 194, 64, 136, 152, 193, 45, 231, 243, 254, 252, 191, 170, 250, 252, 32.24293 + 37, 214, 197, 64, 39, 132, 177, 175, 159, 55, 66, 69, 53, 49, 140, 192, 32.24294 + 181, 187, 150, 49, 39, 39, 74, 101, 76, 58, 83, 72, 89, 65, 72, 99, 32.24295 + 64, 55, 108, 110, 46, 76, 98, 94, 103, 82, 95, 84, 72, 82, 84, 78, 32.24296 + 72, 99, 167, 170, 169, 157, 99, 175, 208, 66, 40, 87, 52, 85, 104, 111, 32.24297 + 76, 61, 62, 104, 99, 77, 34, 92, 249, 250, 255, 231, 255, 201, 238, 191, 32.24298 + 209, 245, 28, 80, 100, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 114, 156, 254, 32.24301 + 246, 252, 218, 19, 51, 90, 125, 27, 237, 249, 234, 247, 224, 175, 241, 245, 32.24302 + 17, 185, 226, 52, 15, 91, 154, 148, 132, 74, 63, 66, 81, 41, 56, 82, 32.24303 + 83, 91, 45, 77, 21, 48, 92, 64, 57, 83, 78, 69, 93, 59, 40, 28, 32.24304 + 36, 138, 231, 243, 62, 85, 113, 85, 88, 87, 78, 91, 77, 83, 82, 75, 32.24305 + 66, 80, 136, 126, 179, 147, 41, 134, 180, 29, 19, 40, 36, 59, 72, 73, 32.24306 + 59, 41, 55, 71, 49, 73, 45, 31, 225, 252, 235, 255, 222, 255, 204, 223, 32.24307 + 214, 255, 54, 72, 104, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 148, 163, 130, 249, 32.24310 + 231, 206, 59, 68, 69, 78, 80, 38, 252, 254, 244, 255, 243, 225, 225, 246, 32.24311 + 42, 101, 189, 170, 112, 73, 206, 50, 45, 49, 56, 62, 71, 56, 54, 61, 32.24312 + 59, 66, 75, 55, 85, 101, 93, 83, 81, 81, 79, 113, 56, 52, 166, 209, 32.24313 + 218, 244, 211, 216, 60, 81, 81, 73, 63, 53, 37, 35, 28, 30, 22, 22, 32.24314 + 20, 15, 36, 29, 33, 33, 157, 235, 222, 241, 232, 132, 36, 64, 65, 84, 32.24315 + 240, 214, 205, 206, 219, 211, 233, 255, 208, 55, 107, 105, 92, 177, 133, 208, 32.24316 + 198, 249, 86, 61, 92, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 199, 255, 186, 255, 32.24319 + 251, 62, 13, 58, 80, 72, 76, 38, 241, 234, 233, 244, 237, 254, 221, 249, 32.24320 + 40, 17, 79, 212, 211, 158, 199, 182, 79, 80, 56, 74, 76, 91, 85, 90, 32.24321 + 96, 87, 110, 93, 101, 77, 68, 98, 100, 87, 102, 93, 172, 203, 241, 217, 32.24322 + 121, 75, 44, 42, 18, 37, 12, 47, 63, 50, 66, 70, 71, 75, 63, 72, 32.24323 + 80, 60, 58, 60, 59, 77, 88, 162, 231, 231, 245, 245, 207, 15, 22, 69, 32.24324 + 125, 164, 232, 245, 255, 251, 245, 242, 250, 130, 50, 59, 52, 89, 119, 85, 32.24325 + 45, 190, 148, 60, 86, 91, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 182, 130, 242, 32.24328 + 255, 34, 37, 77, 95, 75, 71, 38, 229, 250, 255, 255, 230, 224, 244, 229, 32.24329 + 17, 100, 12, 109, 215, 171, 168, 204, 136, 60, 88, 74, 80, 93, 81, 82, 32.24330 + 95, 80, 73, 79, 83, 74, 46, 30, 42, 44, 21, 103, 212, 181, 97, 145, 32.24331 + 182, 161, 197, 188, 196, 161, 103, 54, 66, 47, 65, 54, 62, 71, 62, 71, 32.24332 + 79, 62, 60, 98, 58, 58, 75, 34, 97, 243, 240, 242, 242, 200, 220, 142, 32.24333 + 85, 107, 222, 227, 223, 211, 255, 239, 255, 243, 227, 120, 62, 72, 111, 210, 32.24334 + 174, 62, 190, 70, 84, 98, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 255, 255, 254, 207, 145, 255, 32.24337 + 239, 135, 6, 84, 79, 72, 58, 50, 212, 255, 230, 236, 254, 252, 243, 213, 32.24338 + 15, 46, 45, 65, 106, 149, 156, 195, 142, 54, 68, 75, 65, 67, 79, 79, 32.24339 + 75, 72, 65, 78, 60, 58, 68, 70, 73, 86, 93, 171, 181, 153, 35, 77, 32.24340 + 215, 207, 196, 183, 178, 171, 180, 60, 73, 49, 31, 45, 57, 69, 64, 69, 32.24341 + 73, 62, 73, 85, 71, 92, 104, 0, 15, 201, 242, 242, 248, 252, 254, 184, 32.24342 + 139, 155, 212, 208, 155, 126, 251, 245, 250, 230, 249, 227, 107, 72, 71, 230, 32.24343 + 222, 45, 172, 75, 83, 101, 76, 135, 255, 255, 255, 255, 255, 255, 255, 255, 32.24344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 250, 255, 250, 218, 227, 255, 32.24346 + 251, 224, 68, 63, 30, 62, 81, 49, 100, 246, 215, 223, 233, 240, 190, 91, 32.24347 + 60, 29, 46, 37, 12, 33, 47, 59, 72, 14, 34, 39, 61, 38, 76, 62, 32.24348 + 75, 69, 90, 112, 71, 54, 71, 215, 244, 242, 247, 218, 223, 156, 86, 64, 32.24349 + 198, 181, 181, 160, 167, 136, 180, 129, 115, 61, 58, 46, 70, 58, 76, 84, 32.24350 + 94, 71, 76, 68, 85, 79, 82, 29, 139, 253, 244, 243, 236, 228, 244, 254, 32.24351 + 255, 255, 235, 104, 81, 114, 248, 249, 255, 246, 219, 251, 194, 52, 61, 125, 32.24352 + 126, 89, 102, 117, 52, 93, 88, 68, 255, 255, 255, 255, 255, 255, 255, 255, 32.24353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24354 + 255, 255, 255, 255, 255, 255, 255, 255, 223, 242, 185, 221, 213, 212, 233, 177, 32.24355 + 182, 247, 95, 63, 96, 28, 48, 36, 82, 92, 43, 27, 29, 32, 28, 29, 32.24356 + 89, 83, 73, 36, 25, 34, 16, 15, 46, 34, 62, 48, 33, 18, 126, 193, 32.24357 + 209, 150, 114, 110, 52, 58, 120, 170, 191, 209, 195, 86, 10, 5, 95, 74, 32.24358 + 81, 148, 180, 169, 130, 124, 130, 143, 113, 116, 88, 70, 63, 60, 63, 53, 32.24359 + 65, 48, 83, 74, 82, 51, 92, 59, 226, 255, 255, 244, 244, 231, 240, 253, 32.24360 + 255, 255, 248, 255, 255, 232, 255, 244, 150, 190, 224, 200, 179, 65, 63, 107, 32.24361 + 118, 110, 137, 126, 97, 78, 75, 60, 255, 255, 255, 255, 255, 255, 255, 255, 32.24362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24363 + 255, 255, 255, 255, 255, 255, 255, 255, 92, 159, 111, 49, 53, 52, 26, 66, 32.24364 + 76, 212, 85, 153, 136, 69, 78, 47, 216, 234, 25, 35, 35, 49, 74, 105, 32.24365 + 152, 118, 73, 67, 72, 86, 62, 67, 89, 80, 73, 43, 93, 132, 221, 246, 32.24366 + 254, 244, 254, 176, 128, 43, 75, 74, 57, 35, 39, 73, 127, 101, 75, 78, 32.24367 + 31, 85, 171, 178, 103, 79, 130, 145, 132, 125, 100, 89, 79, 79, 109, 94, 32.24368 + 76, 67, 77, 93, 82, 62, 110, 11, 230, 254, 237, 243, 249, 237, 242, 255, 32.24369 + 255, 255, 255, 255, 255, 255, 242, 255, 250, 70, 8, 22, 93, 112, 111, 106, 32.24370 + 100, 98, 111, 109, 109, 80, 76, 71, 126, 255, 255, 255, 255, 255, 255, 255, 32.24371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24372 + 255, 255, 255, 255, 255, 255, 255, 210, 232, 231, 76, 54, 70, 56, 50, 172, 32.24373 + 193, 219, 79, 116, 90, 59, 68, 149, 235, 198, 56, 79, 67, 75, 92, 95, 32.24374 + 99, 84, 73, 55, 58, 75, 70, 91, 98, 67, 40, 61, 158, 215, 255, 243, 32.24375 + 243, 238, 240, 226, 216, 71, 61, 88, 87, 70, 95, 80, 77, 90, 92, 114, 32.24376 + 51, 41, 137, 196, 189, 118, 138, 154, 154, 110, 119, 131, 104, 50, 79, 69, 32.24377 + 48, 82, 65, 69, 87, 38, 68, 39, 234, 249, 247, 238, 251, 243, 245, 254, 32.24378 + 248, 250, 249, 251, 255, 246, 255, 219, 251, 177, 37, 49, 40, 102, 81, 95, 32.24379 + 124, 131, 112, 106, 126, 96, 187, 192, 174, 255, 255, 255, 255, 255, 255, 255, 32.24380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24381 + 255, 255, 255, 255, 255, 255, 255, 64, 89, 77, 76, 58, 71, 46, 130, 162, 32.24382 + 211, 86, 0, 9, 78, 71, 15, 174, 194, 80, 36, 71, 67, 75, 88, 85, 32.24383 + 79, 93, 97, 99, 90, 92, 84, 101, 117, 122, 170, 218, 255, 247, 243, 238, 32.24384 + 255, 255, 251, 255, 251, 105, 34, 51, 59, 60, 41, 70, 100, 100, 90, 100, 32.24385 + 109, 66, 48, 33, 151, 186, 173, 181, 173, 161, 165, 161, 118, 83, 75, 66, 32.24386 + 66, 91, 85, 48, 59, 88, 116, 37, 123, 237, 252, 239, 250, 241, 242, 244, 32.24387 + 239, 242, 234, 118, 239, 252, 240, 252, 230, 251, 224, 102, 13, 125, 120, 121, 32.24388 + 108, 111, 104, 99, 118, 76, 231, 234, 240, 250, 255, 255, 255, 255, 255, 255, 32.24389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24390 + 255, 255, 255, 255, 255, 255, 82, 80, 106, 70, 91, 101, 159, 154, 217, 207, 32.24391 + 193, 40, 63, 83, 58, 51, 92, 217, 174, 60, 102, 73, 80, 90, 95, 98, 32.24392 + 81, 74, 34, 39, 37, 37, 22, 17, 42, 73, 224, 226, 251, 250, 255, 255, 32.24393 + 243, 244, 248, 240, 239, 108, 39, 143, 188, 188, 176, 52, 64, 26, 106, 107, 32.24394 + 91, 92, 72, 58, 81, 161, 179, 20, 60, 183, 196, 55, 27, 84, 67, 67, 32.24395 + 77, 50, 75, 91, 84, 65, 72, 63, 31, 105, 168, 241, 242, 239, 248, 241, 32.24396 + 239, 245, 222, 71, 55, 136, 238, 236, 248, 255, 246, 216, 28, 44, 73, 110, 32.24397 + 88, 84, 95, 107, 98, 97, 110, 106, 249, 246, 255, 255, 255, 255, 255, 255, 32.24398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24399 + 255, 255, 255, 255, 255, 229, 48, 89, 104, 68, 74, 90, 208, 230, 204, 201, 32.24400 + 120, 27, 92, 77, 94, 43, 101, 240, 159, 27, 75, 94, 89, 80, 73, 77, 32.24401 + 58, 68, 35, 69, 82, 97, 96, 81, 87, 48, 221, 232, 239, 226, 235, 248, 32.24402 + 243, 255, 255, 255, 255, 166, 120, 227, 254, 228, 239, 137, 70, 26, 128, 106, 32.24403 + 98, 123, 55, 84, 32, 94, 169, 0, 37, 146, 134, 13, 1, 52, 52, 67, 32.24404 + 55, 49, 87, 87, 66, 75, 84, 48, 15, 55, 98, 214, 210, 227, 249, 243, 32.24405 + 238, 238, 190, 66, 34, 29, 234, 252, 233, 236, 229, 235, 133, 41, 65, 74, 32.24406 + 46, 60, 111, 118, 102, 136, 43, 49, 204, 232, 254, 255, 255, 255, 255, 255, 32.24407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24408 + 255, 255, 255, 255, 255, 212, 56, 88, 36, 37, 95, 72, 180, 187, 130, 64, 32.24409 + 58, 57, 80, 68, 83, 33, 115, 232, 88, 13, 79, 87, 76, 74, 79, 76, 32.24410 + 42, 82, 89, 212, 224, 244, 252, 251, 233, 100, 236, 220, 250, 250, 245, 250, 32.24411 + 245, 249, 236, 247, 240, 253, 255, 250, 248, 243, 246, 242, 234, 127, 72, 77, 32.24412 + 79, 62, 95, 68, 77, 73, 62, 92, 66, 51, 7, 56, 63, 45, 76, 95, 32.24413 + 26, 59, 67, 74, 89, 91, 107, 115, 122, 51, 56, 33, 29, 69, 116, 105, 32.24414 + 97, 87, 16, 29, 53, 47, 16, 116, 246, 252, 236, 230, 236, 49, 59, 55, 32.24415 + 45, 42, 75, 68, 83, 81, 79, 98, 72, 197, 237, 243, 255, 255, 255, 255, 32.24416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24417 + 255, 255, 255, 255, 206, 85, 65, 71, 100, 159, 219, 150, 70, 32, 59, 103, 32.24418 + 90, 102, 92, 92, 76, 86, 228, 157, 35, 30, 96, 99, 51, 56, 72, 88, 32.24419 + 94, 248, 231, 235, 223, 234, 250, 232, 238, 254, 206, 247, 210, 199, 235, 232, 32.24420 + 255, 247, 249, 252, 255, 253, 230, 255, 248, 253, 254, 239, 250, 252, 52, 75, 32.24421 + 101, 100, 96, 109, 107, 90, 86, 99, 96, 80, 64, 86, 95, 35, 180, 234, 32.24422 + 89, 64, 71, 56, 88, 82, 83, 89, 96, 129, 103, 105, 124, 85, 30, 53, 32.24423 + 30, 57, 74, 129, 99, 95, 46, 45, 199, 231, 227, 213, 200, 57, 29, 76, 32.24424 + 106, 38, 74, 57, 85, 76, 101, 127, 79, 58, 234, 253, 255, 255, 255, 255, 32.24425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24426 + 255, 255, 255, 155, 125, 41, 75, 77, 186, 210, 113, 46, 61, 57, 80, 83, 32.24427 + 90, 109, 91, 65, 61, 167, 230, 20, 106, 70, 22, 58, 90, 69, 197, 219, 32.24428 + 240, 218, 204, 95, 161, 231, 244, 255, 236, 255, 238, 166, 64, 47, 41, 40, 32.24429 + 135, 224, 236, 248, 231, 253, 255, 255, 241, 252, 255, 249, 254, 251, 21, 116, 32.24430 + 104, 98, 93, 106, 99, 78, 78, 89, 90, 94, 93, 117, 80, 62, 139, 203, 32.24431 + 230, 221, 72, 103, 70, 71, 83, 65, 61, 76, 71, 78, 56, 91, 86, 108, 32.24432 + 135, 109, 170, 144, 213, 161, 182, 177, 228, 67, 55, 46, 77, 77, 60, 237, 32.24433 + 247, 241, 220, 247, 222, 222, 183, 165, 207, 184, 81, 248, 241, 255, 255, 255, 32.24434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24435 + 255, 255, 199, 104, 88, 30, 57, 95, 234, 208, 69, 36, 97, 92, 107, 72, 32.24436 + 87, 122, 111, 62, 80, 202, 237, 28, 108, 78, 38, 39, 211, 221, 235, 247, 32.24437 + 174, 61, 88, 48, 144, 255, 250, 254, 255, 248, 121, 71, 55, 54, 46, 61, 32.24438 + 81, 211, 253, 255, 241, 241, 247, 243, 252, 254, 243, 253, 239, 236, 41, 121, 32.24439 + 103, 92, 76, 93, 96, 82, 86, 85, 82, 101, 106, 110, 89, 100, 114, 181, 32.24440 + 209, 213, 165, 136, 41, 17, 38, 32, 36, 36, 40, 38, 3, 71, 63, 130, 32.24441 + 164, 172, 155, 134, 168, 241, 236, 223, 230, 68, 59, 30, 15, 36, 95, 237, 32.24442 + 237, 235, 242, 245, 230, 249, 246, 233, 226, 237, 166, 254, 232, 234, 255, 255, 32.24443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24444 + 255, 201, 131, 56, 61, 117, 170, 174, 212, 158, 48, 67, 95, 69, 86, 59, 32.24445 + 52, 92, 85, 49, 29, 230, 215, 2, 66, 31, 171, 189, 238, 209, 86, 115, 32.24446 + 73, 64, 89, 61, 153, 226, 221, 242, 255, 213, 61, 220, 255, 234, 207, 189, 32.24447 + 91, 219, 251, 243, 254, 253, 229, 237, 238, 238, 231, 252, 245, 246, 108, 68, 32.24448 + 92, 96, 78, 69, 85, 80, 87, 73, 57, 68, 51, 65, 104, 99, 42, 98, 32.24449 + 99, 144, 223, 228, 203, 173, 195, 204, 214, 214, 218, 213, 255, 44, 84, 194, 32.24450 + 195, 181, 121, 117, 71, 59, 234, 231, 223, 230, 224, 206, 125, 126, 226, 249, 32.24451 + 238, 237, 251, 243, 251, 232, 229, 252, 245, 243, 231, 242, 221, 170, 255, 255, 32.24452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 32.24453 + 100, 107, 95, 101, 141, 192, 201, 218, 129, 50, 63, 103, 99, 84, 100, 108, 32.24454 + 83, 112, 90, 56, 115, 201, 45, 101, 75, 106, 204, 166, 73, 73, 60, 64, 32.24455 + 79, 101, 63, 104, 212, 205, 215, 255, 243, 176, 182, 255, 250, 250, 221, 203, 32.24456 + 160, 255, 251, 255, 227, 252, 245, 233, 208, 240, 233, 232, 92, 58, 99, 104, 32.24457 + 92, 68, 120, 188, 168, 116, 113, 117, 138, 182, 163, 113, 96, 87, 64, 79, 32.24458 + 37, 68, 77, 80, 229, 228, 238, 243, 237, 243, 247, 247, 231, 242, 219, 255, 32.24459 + 241, 214, 216, 143, 113, 82, 172, 255, 241, 254, 225, 244, 164, 226, 252, 248, 32.24460 + 219, 252, 198, 199, 190, 152, 188, 221, 242, 254, 252, 250, 252, 180, 191, 255, 32.24461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 99, 32.24462 + 107, 73, 68, 223, 208, 231, 156, 75, 44, 78, 68, 89, 84, 90, 84, 101, 32.24463 + 90, 105, 76, 95, 206, 20, 40, 56, 138, 159, 34, 86, 47, 78, 82, 91, 32.24464 + 94, 107, 80, 155, 255, 237, 253, 255, 245, 197, 245, 255, 233, 254, 197, 223, 32.24465 + 255, 255, 249, 255, 169, 205, 240, 229, 229, 218, 102, 131, 177, 183, 89, 80, 32.24466 + 88, 69, 82, 96, 97, 101, 177, 216, 210, 213, 150, 92, 71, 74, 110, 129, 32.24467 + 85, 94, 39, 12, 247, 249, 250, 255, 252, 251, 246, 249, 255, 241, 254, 232, 32.24468 + 252, 224, 233, 196, 95, 78, 217, 234, 188, 28, 122, 87, 32, 97, 85, 65, 32.24469 + 50, 100, 29, 68, 55, 53, 105, 81, 68, 108, 185, 212, 237, 192, 178, 255, 32.24470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 89, 79, 32.24471 + 87, 50, 127, 218, 220, 173, 96, 42, 53, 81, 84, 91, 85, 99, 84, 80, 32.24472 + 87, 74, 57, 161, 228, 35, 61, 72, 115, 69, 33, 34, 57, 86, 55, 112, 32.24473 + 87, 87, 49, 184, 239, 243, 255, 247, 255, 236, 216, 234, 231, 212, 179, 229, 32.24474 + 255, 251, 255, 249, 217, 225, 248, 216, 226, 159, 37, 132, 220, 236, 94, 94, 32.24475 + 99, 87, 65, 71, 69, 98, 203, 221, 173, 178, 137, 83, 127, 104, 77, 97, 32.24476 + 107, 110, 71, 43, 244, 239, 237, 243, 245, 227, 224, 244, 236, 255, 220, 162, 32.24477 + 185, 198, 159, 154, 79, 55, 150, 179, 121, 55, 45, 50, 26, 34, 43, 18, 32.24478 + 29, 49, 46, 19, 44, 49, 45, 54, 57, 70, 130, 188, 205, 222, 206, 255, 32.24479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 86, 74, 83, 109, 32.24480 + 98, 96, 151, 178, 114, 32, 69, 64, 64, 57, 85, 95, 82, 103, 109, 84, 32.24481 + 88, 37, 33, 218, 197, 42, 63, 84, 12, 35, 85, 67, 41, 71, 92, 86, 32.24482 + 79, 104, 48, 243, 255, 244, 249, 255, 248, 225, 217, 236, 210, 157, 219, 236, 32.24483 + 252, 255, 225, 227, 252, 195, 152, 43, 29, 19, 102, 241, 227, 214, 124, 111, 32.24484 + 114, 117, 102, 115, 90, 88, 156, 115, 30, 68, 82, 84, 81, 72, 95, 111, 32.24485 + 91, 75, 88, 59, 216, 232, 238, 222, 216, 184, 197, 219, 195, 129, 91, 61, 32.24486 + 76, 46, 62, 49, 50, 52, 42, 40, 44, 48, 56, 40, 60, 53, 48, 56, 32.24487 + 53, 44, 56, 53, 37, 52, 25, 44, 42, 38, 55, 75, 97, 203, 227, 255, 32.24488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 76, 102, 70, 108, 32.24489 + 170, 180, 187, 51, 69, 80, 53, 22, 62, 49, 39, 62, 78, 79, 103, 107, 32.24490 + 51, 96, 83, 117, 75, 93, 81, 49, 63, 172, 231, 229, 0, 62, 58, 63, 32.24491 + 245, 60, 40, 215, 199, 224, 212, 245, 216, 218, 69, 94, 102, 90, 248, 218, 32.24492 + 233, 189, 245, 206, 182, 42, 24, 66, 116, 58, 157, 190, 185, 131, 89, 100, 32.24493 + 93, 72, 83, 75, 64, 50, 41, 42, 49, 54, 55, 55, 52, 51, 49, 52, 32.24494 + 55, 58, 60, 49, 39, 33, 38, 46, 50, 53, 56, 51, 52, 53, 54, 56, 32.24495 + 59, 60, 62, 52, 54, 60, 63, 58, 50, 53, 63, 62, 62, 61, 59, 57, 32.24496 + 56, 58, 57, 51, 49, 50, 50, 56, 62, 65, 62, 52, 79, 138, 183, 188, 32.24497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 70, 91, 45, 61, 170, 32.24498 + 203, 230, 236, 191, 178, 183, 79, 44, 45, 52, 57, 68, 64, 71, 54, 88, 32.24499 + 83, 73, 61, 75, 73, 90, 71, 138, 182, 242, 236, 241, 42, 62, 88, 155, 32.24500 + 227, 24, 44, 104, 91, 179, 217, 232, 238, 117, 110, 125, 127, 100, 110, 94, 32.24501 + 89, 90, 91, 110, 83, 68, 80, 73, 88, 61, 76, 73, 81, 63, 49, 61, 32.24502 + 54, 36, 40, 44, 37, 30, 27, 32, 38, 42, 41, 51, 47, 46, 46, 49, 32.24503 + 53, 57, 58, 52, 44, 39, 45, 55, 59, 61, 63, 61, 58, 56, 55, 57, 32.24504 + 60, 64, 65, 60, 58, 60, 66, 65, 61, 61, 64, 64, 64, 64, 62, 60, 32.24505 + 58, 58, 57, 52, 54, 53, 53, 52, 55, 58, 58, 52, 65, 111, 111, 95, 32.24506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 74, 84, 67, 128, 233, 32.24507 + 226, 231, 230, 238, 239, 222, 65, 74, 84, 93, 69, 61, 51, 40, 24, 51, 32.24508 + 80, 80, 92, 49, 60, 83, 88, 217, 228, 225, 191, 199, 37, 67, 104, 102, 32.24509 + 90, 32, 55, 209, 200, 239, 236, 228, 237, 60, 121, 110, 126, 113, 61, 60, 32.24510 + 56, 76, 43, 54, 27, 76, 79, 63, 51, 57, 25, 23, 28, 28, 28, 30, 32.24511 + 32, 29, 27, 39, 37, 36, 38, 46, 52, 53, 51, 55, 51, 49, 52, 56, 32.24512 + 60, 63, 64, 61, 55, 52, 57, 65, 68, 69, 69, 67, 64, 60, 57, 58, 32.24513 + 59, 64, 66, 67, 61, 60, 67, 74, 74, 70, 69, 70, 70, 69, 66, 64, 32.24514 + 61, 58, 56, 54, 56, 55, 53, 49, 48, 50, 51, 47, 63, 107, 180, 215, 32.24515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 87, 47, 173, 235, 246, 32.24516 + 251, 247, 251, 244, 248, 151, 32, 85, 86, 72, 67, 60, 107, 125, 186, 126, 32.24517 + 100, 99, 96, 84, 84, 80, 63, 124, 89, 51, 22, 76, 63, 91, 97, 106, 32.24518 + 63, 132, 193, 231, 225, 184, 189, 214, 159, 64, 86, 75, 94, 82, 79, 65, 32.24519 + 65, 60, 42, 46, 39, 52, 32, 57, 44, 50, 39, 45, 34, 38, 40, 33, 32.24520 + 38, 46, 37, 36, 37, 38, 44, 49, 54, 57, 54, 63, 61, 59, 60, 63, 32.24521 + 67, 69, 69, 71, 68, 66, 67, 72, 74, 72, 70, 72, 69, 66, 62, 61, 32.24522 + 61, 64, 66, 66, 63, 62, 70, 78, 82, 79, 74, 77, 76, 75, 75, 71, 32.24523 + 67, 60, 57, 57, 54, 51, 50, 49, 46, 46, 45, 33, 45, 54, 185, 255, 32.24524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 79, 66, 251, 251, 175, 32.24525 + 202, 225, 239, 252, 246, 71, 59, 105, 69, 62, 163, 192, 216, 209, 238, 77, 32.24526 + 73, 99, 122, 108, 118, 108, 84, 83, 101, 101, 86, 111, 113, 105, 86, 83, 32.24527 + 68, 205, 221, 168, 130, 45, 99, 136, 41, 54, 60, 56, 57, 33, 60, 43, 32.24528 + 44, 34, 36, 32, 50, 38, 25, 61, 57, 55, 61, 47, 29, 38, 49, 41, 32.24529 + 44, 51, 33, 38, 39, 43, 49, 55, 59, 64, 63, 69, 65, 63, 63, 65, 32.24530 + 68, 67, 67, 73, 71, 69, 68, 71, 74, 73, 70, 74, 74, 74, 71, 70, 32.24531 + 67, 67, 66, 63, 66, 71, 76, 82, 87, 89, 88, 85, 82, 81, 80, 77, 32.24532 + 72, 64, 59, 58, 50, 44, 46, 50, 46, 46, 47, 52, 57, 42, 255, 255, 32.24533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 130, 246, 194, 124, 32.24534 + 141, 186, 187, 180, 206, 57, 84, 84, 51, 62, 195, 236, 230, 244, 221, 56, 32.24535 + 98, 90, 112, 113, 105, 103, 113, 83, 101, 112, 114, 131, 86, 86, 97, 68, 32.24536 + 81, 213, 173, 121, 93, 25, 62, 56, 15, 52, 49, 49, 48, 32, 40, 47, 32.24537 + 40, 47, 40, 30, 43, 43, 51, 44, 44, 60, 55, 59, 37, 35, 41, 35, 32.24538 + 41, 48, 40, 44, 48, 54, 60, 68, 73, 78, 79, 73, 70, 69, 69, 70, 32.24539 + 70, 70, 68, 67, 68, 65, 64, 66, 70, 71, 68, 71, 72, 73, 71, 70, 32.24540 + 66, 64, 63, 64, 74, 81, 85, 87, 94, 99, 98, 91, 85, 83, 82, 80, 32.24541 + 76, 68, 62, 57, 46, 40, 44, 47, 46, 48, 55, 46, 43, 255, 255, 255, 32.24542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 161, 88, 47, 32.24543 + 26, 43, 18, 6, 48, 22, 39, 44, 64, 91, 156, 120, 110, 143, 107, 36, 32.24544 + 70, 53, 63, 68, 52, 64, 90, 76, 61, 59, 66, 51, 73, 59, 68, 75, 32.24545 + 48, 48, 53, 30, 53, 47, 57, 46, 53, 65, 40, 53, 61, 53, 48, 50, 32.24546 + 37, 43, 26, 44, 43, 45, 54, 38, 27, 57, 46, 70, 53, 47, 47, 41, 32.24547 + 42, 52, 53, 42, 46, 55, 62, 67, 71, 74, 74, 76, 75, 74, 75, 75, 32.24548 + 76, 74, 73, 68, 69, 66, 62, 63, 68, 69, 68, 73, 74, 73, 70, 69, 32.24549 + 67, 66, 66, 71, 80, 88, 90, 94, 99, 105, 100, 92, 86, 82, 82, 80, 32.24550 + 78, 70, 64, 55, 47, 45, 46, 44, 40, 50, 66, 70, 130, 255, 255, 255, 32.24551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 32, 44, 32.24552 + 44, 57, 42, 47, 20, 53, 34, 30, 36, 36, 32, 27, 28, 37, 31, 47, 32.24553 + 26, 40, 42, 44, 61, 73, 53, 67, 65, 64, 48, 54, 56, 51, 58, 46, 32.24554 + 61, 54, 62, 64, 70, 65, 53, 60, 41, 66, 51, 49, 61, 45, 56, 41, 32.24555 + 41, 43, 42, 38, 42, 34, 35, 60, 32, 50, 44, 43, 46, 55, 63, 59, 32.24556 + 50, 44, 47, 52, 58, 68, 73, 75, 75, 74, 73, 72, 69, 71, 71, 74, 32.24557 + 74, 74, 72, 74, 76, 73, 65, 65, 70, 72, 69, 84, 84, 81, 78, 78, 32.24558 + 77, 79, 80, 78, 85, 90, 89, 95, 101, 102, 95, 93, 87, 81, 81, 81, 32.24559 + 77, 71, 64, 52, 48, 50, 49, 40, 35, 51, 74, 80, 255, 255, 255, 255, 32.24560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 49, 32.24561 + 47, 49, 51, 45, 49, 49, 45, 44, 46, 44, 41, 39, 38, 39, 38, 39, 32.24562 + 42, 47, 53, 67, 80, 72, 73, 88, 62, 71, 58, 54, 53, 55, 56, 56, 32.24563 + 56, 55, 55, 62, 63, 64, 65, 65, 65, 63, 62, 59, 57, 52, 47, 43, 32.24564 + 41, 40, 39, 36, 39, 43, 42, 40, 38, 42, 44, 41, 44, 43, 43, 52, 32.24565 + 63, 59, 49, 61, 62, 65, 67, 70, 71, 71, 69, 71, 69, 70, 70, 71, 32.24566 + 70, 69, 67, 69, 74, 81, 82, 80, 75, 74, 74, 84, 85, 85, 85, 84, 32.24567 + 82, 80, 79, 85, 88, 91, 92, 94, 95, 98, 99, 95, 86, 93, 95, 83, 32.24568 + 85, 81, 57, 47, 52, 60, 57, 45, 40, 56, 76, 165, 255, 255, 255, 255, 32.24569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 52, 32.24570 + 51, 52, 54, 43, 46, 46, 43, 42, 44, 44, 39, 45, 45, 45, 43, 44, 32.24571 + 45, 48, 53, 69, 85, 83, 79, 91, 69, 76, 57, 52, 52, 54, 54, 55, 32.24572 + 54, 54, 54, 60, 61, 62, 64, 64, 65, 65, 64, 61, 58, 52, 47, 43, 32.24573 + 40, 39, 40, 38, 38, 39, 40, 41, 41, 41, 39, 36, 39, 42, 46, 52, 32.24574 + 61, 64, 64, 63, 67, 71, 70, 69, 68, 70, 73, 75, 72, 71, 72, 74, 32.24575 + 73, 72, 71, 75, 78, 82, 83, 82, 83, 83, 83, 87, 85, 88, 89, 89, 32.24576 + 88, 88, 87, 84, 87, 91, 95, 97, 100, 105, 106, 105, 97, 101, 99, 87, 32.24577 + 85, 81, 57, 54, 51, 49, 43, 46, 55, 70, 84, 255, 255, 255, 255, 255, 32.24578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 50, 32.24579 + 48, 48, 48, 41, 44, 43, 40, 40, 42, 42, 39, 44, 45, 46, 45, 46, 32.24580 + 45, 49, 51, 63, 81, 89, 80, 90, 76, 83, 60, 58, 57, 60, 60, 57, 32.24581 + 56, 55, 55, 58, 59, 60, 62, 63, 66, 67, 67, 64, 60, 53, 47, 42, 32.24582 + 40, 40, 40, 42, 38, 37, 38, 43, 44, 41, 37, 41, 41, 46, 53, 56, 32.24583 + 60, 68, 77, 58, 71, 84, 91, 87, 81, 78, 78, 84, 80, 78, 77, 78, 32.24584 + 79, 78, 77, 83, 81, 82, 83, 86, 89, 90, 89, 90, 88, 88, 89, 90, 32.24585 + 91, 94, 95, 92, 95, 98, 100, 101, 102, 105, 107, 110, 104, 104, 102, 92, 32.24586 + 88, 82, 63, 55, 61, 63, 52, 49, 54, 59, 63, 255, 255, 255, 255, 255, 32.24587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.24588 + 42, 40, 38, 42, 45, 44, 41, 41, 44, 44, 41, 38, 38, 44, 46, 47, 32.24589 + 48, 52, 56, 56, 75, 97, 85, 92, 88, 97, 69, 67, 66, 68, 65, 60, 32.24590 + 56, 56, 56, 64, 64, 66, 67, 69, 71, 75, 74, 67, 62, 56, 48, 44, 32.24591 + 41, 41, 41, 44, 39, 39, 39, 42, 43, 42, 42, 48, 45, 50, 62, 64, 32.24592 + 62, 68, 78, 87, 86, 84, 80, 78, 83, 90, 96, 86, 83, 83, 82, 83, 32.24593 + 82, 82, 80, 87, 86, 85, 88, 94, 97, 97, 93, 96, 93, 92, 91, 92, 32.24594 + 93, 97, 98, 95, 98, 101, 104, 105, 106, 109, 111, 109, 104, 103, 101, 97, 32.24595 + 93, 86, 74, 67, 87, 96, 73, 51, 46, 48, 255, 255, 255, 255, 255, 255, 32.24596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.24597 + 42, 39, 37, 42, 45, 44, 40, 40, 44, 45, 42, 36, 37, 43, 46, 48, 32.24598 + 51, 54, 58, 54, 69, 105, 94, 96, 95, 102, 76, 69, 68, 69, 64, 57, 32.24599 + 55, 57, 59, 74, 72, 72, 71, 74, 77, 80, 81, 71, 64, 57, 48, 43, 32.24600 + 41, 41, 42, 41, 42, 44, 42, 41, 41, 46, 48, 53, 50, 55, 68, 75, 32.24601 + 73, 73, 77, 90, 89, 89, 92, 94, 93, 87, 82, 82, 81, 82, 84, 87, 32.24602 + 87, 87, 86, 91, 89, 90, 94, 100, 101, 100, 94, 99, 95, 93, 91, 90, 32.24603 + 91, 91, 92, 81, 85, 91, 97, 103, 110, 117, 122, 110, 107, 102, 101, 103, 32.24604 + 95, 85, 82, 82, 98, 102, 76, 53, 48, 50, 50, 255, 255, 255, 255, 255, 32.24605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.24606 + 46, 45, 44, 41, 43, 42, 38, 38, 43, 44, 42, 41, 43, 46, 47, 50, 32.24607 + 52, 56, 61, 60, 67, 115, 105, 99, 99, 102, 79, 74, 73, 72, 66, 59, 32.24608 + 58, 63, 69, 83, 81, 79, 77, 78, 80, 85, 84, 76, 67, 59, 50, 43, 32.24609 + 42, 43, 44, 40, 42, 45, 43, 41, 41, 48, 54, 57, 57, 63, 74, 83, 32.24610 + 84, 83, 83, 83, 84, 91, 102, 114, 114, 106, 98, 90, 86, 84, 84, 87, 32.24611 + 88, 89, 88, 88, 89, 91, 96, 98, 97, 97, 92, 94, 91, 89, 87, 85, 32.24612 + 82, 82, 81, 77, 79, 83, 87, 93, 100, 110, 115, 114, 113, 103, 99, 101, 32.24613 + 91, 78, 79, 69, 73, 75, 65, 60, 55, 41, 27, 255, 255, 255, 255, 255, 32.24614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.24615 + 47, 47, 47, 42, 44, 42, 38, 39, 44, 46, 44, 44, 45, 48, 49, 53, 32.24616 + 58, 65, 71, 68, 67, 124, 119, 109, 106, 107, 91, 92, 89, 85, 75, 64, 32.24617 + 63, 71, 77, 94, 90, 86, 82, 83, 84, 87, 86, 79, 69, 59, 50, 43, 32.24618 + 42, 43, 45, 41, 41, 42, 42, 45, 47, 52, 55, 64, 72, 80, 83, 86, 32.24619 + 90, 91, 91, 109, 98, 86, 83, 92, 110, 127, 137, 116, 107, 95, 85, 82, 32.24620 + 82, 84, 85, 80, 81, 83, 84, 83, 83, 85, 87, 82, 81, 80, 78, 76, 32.24621 + 73, 71, 69, 75, 74, 75, 75, 79, 83, 94, 100, 110, 110, 95, 88, 94, 32.24622 + 81, 65, 71, 55, 50, 51, 54, 63, 66, 61, 57, 255, 255, 255, 255, 255, 32.24623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 44, 32.24624 + 43, 43, 43, 45, 47, 45, 41, 42, 47, 49, 48, 44, 46, 49, 53, 58, 32.24625 + 64, 75, 82, 74, 68, 129, 130, 119, 115, 117, 105, 107, 102, 94, 80, 66, 32.24626 + 62, 69, 76, 103, 99, 93, 89, 87, 89, 92, 91, 82, 71, 61, 50, 45, 32.24627 + 43, 45, 46, 45, 41, 38, 40, 48, 52, 54, 55, 72, 88, 94, 88, 84, 32.24628 + 89, 96, 96, 97, 100, 103, 104, 104, 103, 102, 101, 142, 128, 107, 88, 79, 32.24629 + 74, 75, 77, 71, 72, 72, 71, 68, 68, 74, 76, 74, 73, 73, 71, 70, 32.24630 + 67, 64, 60, 64, 62, 62, 63, 68, 77, 88, 97, 99, 100, 84, 77, 86, 32.24631 + 70, 54, 64, 63, 53, 42, 45, 58, 84, 121, 148, 255, 255, 255, 255, 255, 32.24632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 44, 45, 32.24633 + 46, 45, 44, 47, 42, 42, 47, 48, 45, 46, 51, 40, 50, 57, 58, 57, 32.24634 + 62, 81, 96, 72, 62, 109, 141, 116, 115, 127, 97, 109, 102, 98, 91, 74, 32.24635 + 58, 64, 78, 96, 86, 89, 95, 87, 86, 93, 91, 94, 72, 57, 55, 51, 32.24636 + 42, 42, 49, 40, 43, 45, 45, 47, 50, 58, 63, 70, 85, 92, 89, 89, 32.24637 + 100, 107, 105, 102, 103, 104, 106, 108, 108, 103, 100, 111, 139, 139, 98, 67, 32.24638 + 68, 77, 75, 69, 76, 72, 67, 74, 67, 64, 77, 71, 55, 57, 71, 65, 32.24639 + 61, 68, 50, 55, 44, 63, 67, 52, 65, 88, 82, 89, 83, 75, 92, 68, 32.24640 + 45, 67, 53, 64, 46, 51, 43, 46, 83, 99, 98, 255, 255, 255, 255, 255, 32.24641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 43, 46, 32.24642 + 45, 46, 43, 48, 42, 43, 45, 48, 44, 48, 53, 49, 58, 70, 71, 72, 32.24643 + 76, 89, 100, 90, 80, 113, 142, 128, 128, 135, 109, 113, 107, 104, 101, 87, 32.24644 + 75, 79, 93, 109, 98, 102, 106, 100, 99, 105, 101, 86, 68, 56, 54, 53, 32.24645 + 47, 46, 51, 50, 52, 53, 55, 55, 61, 68, 74, 80, 93, 99, 97, 99, 32.24646 + 110, 115, 114, 113, 112, 111, 112, 111, 110, 106, 103, 97, 83, 104, 151, 152, 32.24647 + 102, 69, 74, 74, 44, 54, 68, 60, 64, 90, 61, 55, 80, 79, 59, 54, 32.24648 + 50, 75, 51, 55, 70, 64, 62, 61, 51, 69, 98, 78, 64, 63, 48, 33, 32.24649 + 44, 48, 35, 64, 35, 34, 46, 50, 38, 34, 70, 255, 255, 255, 255, 255, 32.24650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 47, 48, 32.24651 + 47, 48, 45, 48, 44, 44, 46, 48, 48, 52, 57, 59, 70, 83, 87, 89, 32.24652 + 91, 97, 105, 103, 94, 106, 126, 131, 133, 129, 112, 114, 108, 106, 106, 100, 32.24653 + 92, 95, 105, 116, 104, 105, 109, 106, 105, 108, 100, 84, 67, 58, 57, 56, 32.24654 + 51, 51, 53, 54, 55, 56, 57, 60, 66, 72, 78, 85, 95, 100, 99, 104, 32.24655 + 112, 116, 115, 118, 117, 114, 110, 108, 107, 102, 100, 96, 104, 94, 85, 112, 32.24656 + 153, 154, 123, 75, 119, 97, 63, 86, 63, 71, 68, 53, 55, 43, 50, 77, 32.24657 + 52, 58, 53, 34, 63, 54, 48, 42, 48, 81, 79, 101, 94, 130, 124, 111, 32.24658 + 115, 94, 96, 68, 130, 131, 79, 93, 124, 98, 85, 255, 255, 255, 255, 255, 32.24659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 55, 55, 54, 32.24660 + 53, 51, 50, 51, 50, 49, 51, 54, 57, 61, 66, 72, 82, 93, 98, 99, 32.24661 + 100, 105, 109, 107, 101, 97, 108, 130, 133, 120, 108, 110, 106, 104, 106, 106, 32.24662 + 100, 102, 107, 114, 103, 104, 108, 106, 107, 106, 93, 88, 76, 66, 65, 62, 32.24663 + 57, 54, 56, 56, 56, 57, 60, 64, 69, 76, 79, 89, 95, 98, 100, 107, 32.24664 + 115, 117, 116, 124, 120, 114, 108, 106, 103, 99, 97, 101, 97, 86, 81, 99, 32.24665 + 131, 149, 151, 139, 89, 61, 71, 88, 56, 83, 59, 61, 64, 54, 49, 73, 32.24666 + 76, 46, 71, 66, 37, 41, 70, 40, 59, 124, 89, 103, 97, 129, 137, 111, 32.24667 + 83, 80, 120, 123, 176, 171, 134, 144, 128, 87, 114, 255, 255, 255, 255, 255, 32.24668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 58, 60, 60, 58, 32.24669 + 55, 53, 51, 55, 57, 58, 60, 64, 70, 75, 78, 92, 97, 103, 105, 108, 32.24670 + 110, 112, 116, 113, 111, 102, 108, 134, 137, 121, 114, 110, 107, 104, 104, 105, 32.24671 + 101, 102, 104, 112, 104, 108, 112, 110, 111, 109, 93, 88, 78, 69, 67, 65, 32.24672 + 61, 58, 58, 65, 64, 65, 68, 73, 79, 83, 85, 93, 95, 99, 103, 112, 32.24673 + 120, 122, 119, 129, 125, 118, 111, 109, 106, 102, 100, 97, 87, 91, 110, 108, 32.24674 + 88, 85, 98, 130, 117, 93, 63, 49, 43, 74, 48, 44, 31, 46, 60, 51, 32.24675 + 63, 43, 184, 139, 82, 106, 165, 122, 81, 107, 86, 73, 62, 44, 56, 51, 32.24676 + 40, 92, 145, 170, 164, 141, 131, 125, 56, 26, 160, 255, 255, 255, 255, 255, 32.24677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 59, 63, 65, 63, 32.24678 + 60, 58, 57, 61, 66, 70, 73, 79, 87, 92, 95, 109, 113, 114, 116, 117, 32.24679 + 120, 121, 123, 116, 117, 112, 114, 131, 136, 126, 121, 115, 113, 109, 105, 102, 32.24680 + 101, 102, 104, 109, 105, 113, 115, 112, 113, 111, 95, 83, 76, 69, 66, 66, 32.24681 + 65, 64, 61, 65, 65, 67, 73, 79, 83, 85, 85, 94, 92, 95, 102, 114, 32.24682 + 121, 123, 120, 127, 122, 116, 110, 108, 105, 102, 100, 98, 109, 102, 80, 77, 32.24683 + 89, 81, 58, 65, 147, 155, 101, 70, 52, 33, 49, 76, 52, 59, 56, 46, 32.24684 + 80, 76, 226, 255, 239, 211, 183, 133, 71, 42, 51, 93, 95, 58, 77, 111, 32.24685 + 126, 155, 152, 94, 90, 69, 43, 38, 26, 42, 255, 255, 255, 255, 255, 255, 32.24686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 65, 52, 61, 69, 74, 74, 32.24687 + 72, 70, 70, 69, 76, 83, 87, 95, 105, 109, 109, 122, 122, 122, 125, 126, 32.24688 + 127, 125, 122, 115, 117, 117, 114, 117, 125, 128, 127, 119, 119, 114, 108, 102, 32.24689 + 101, 104, 104, 105, 107, 115, 119, 113, 115, 113, 98, 86, 80, 72, 66, 66, 32.24690 + 67, 66, 64, 60, 61, 66, 72, 79, 83, 84, 80, 94, 90, 91, 101, 115, 32.24691 + 123, 124, 121, 121, 118, 114, 110, 109, 107, 104, 102, 103, 97, 93, 92, 94, 32.24692 + 91, 80, 71, 71, 28, 76, 146, 126, 121, 61, 42, 35, 59, 66, 45, 126, 32.24693 + 229, 246, 255, 211, 140, 81, 26, 25, 42, 52, 110, 164, 155, 130, 148, 193, 32.24694 + 188, 129, 75, 66, 40, 43, 47, 50, 72, 132, 255, 255, 255, 255, 255, 255, 32.24695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 73, 57, 68, 78, 85, 86, 32.24696 + 85, 85, 85, 76, 85, 93, 98, 106, 118, 122, 120, 127, 128, 128, 130, 131, 32.24697 + 129, 124, 120, 115, 117, 122, 116, 109, 119, 132, 133, 122, 123, 119, 109, 102, 32.24698 + 101, 106, 109, 109, 114, 124, 125, 118, 120, 118, 104, 94, 87, 77, 71, 68, 32.24699 + 70, 67, 63, 60, 62, 67, 77, 84, 87, 85, 82, 103, 97, 99, 108, 124, 32.24700 + 130, 129, 128, 122, 120, 118, 115, 115, 113, 111, 109, 101, 100, 97, 93, 89, 32.24701 + 89, 88, 85, 59, 57, 61, 92, 139, 211, 98, 48, 72, 43, 48, 102, 232, 32.24702 + 245, 255, 242, 201, 45, 19, 42, 49, 51, 53, 121, 211, 169, 154, 167, 214, 32.24703 + 196, 98, 52, 56, 42, 59, 55, 52, 102, 255, 255, 255, 255, 255, 255, 255, 32.24704 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 83, 146, 138, 142, 117, 99, 116, 32.24705 + 127, 114, 103, 95, 99, 111, 116, 114, 124, 131, 126, 142, 132, 135, 145, 138, 32.24706 + 129, 130, 128, 127, 126, 125, 122, 121, 118, 116, 116, 132, 134, 124, 109, 103, 32.24707 + 108, 116, 116, 124, 124, 125, 124, 121, 117, 113, 109, 95, 95, 94, 88, 78, 32.24708 + 72, 72, 73, 57, 63, 72, 78, 81, 88, 96, 103, 107, 117, 123, 123, 124, 32.24709 + 128, 126, 122, 123, 124, 124, 124, 122, 118, 111, 108, 109, 112, 113, 109, 104, 32.24710 + 102, 97, 89, 104, 55, 83, 69, 67, 80, 188, 221, 46, 73, 201, 255, 255, 32.24711 + 252, 232, 117, 59, 22, 48, 49, 30, 56, 88, 114, 151, 86, 112, 132, 90, 32.24712 + 64, 50, 45, 47, 50, 56, 61, 78, 196, 255, 255, 255, 255, 255, 255, 255, 32.24713 + 255, 255, 255, 255, 255, 255, 255, 206, 117, 134, 190, 215, 209, 194, 163, 133, 32.24714 + 137, 143, 127, 123, 116, 125, 136, 134, 134, 141, 143, 142, 133, 136, 145, 140, 32.24715 + 135, 134, 134, 132, 131, 129, 126, 125, 122, 121, 121, 121, 127, 127, 121, 118, 32.24716 + 122, 124, 123, 127, 127, 127, 124, 119, 115, 112, 110, 98, 95, 91, 89, 85, 32.24717 + 83, 79, 78, 72, 76, 84, 86, 90, 93, 100, 106, 111, 117, 119, 116, 118, 32.24718 + 125, 129, 129, 124, 126, 129, 128, 125, 121, 117, 114, 112, 115, 115, 110, 107, 32.24719 + 106, 100, 95, 83, 93, 94, 55, 81, 68, 128, 198, 173, 211, 255, 236, 125, 32.24720 + 84, 79, 16, 61, 39, 42, 36, 50, 68, 77, 112, 122, 52, 57, 72, 62, 32.24721 + 57, 43, 35, 55, 35, 50, 105, 173, 255, 255, 255, 255, 255, 255, 255, 255, 32.24722 + 255, 255, 255, 255, 255, 255, 110, 150, 175, 190, 222, 229, 220, 227, 201, 148, 32.24723 + 151, 175, 159, 139, 123, 128, 146, 142, 133, 139, 148, 145, 137, 140, 148, 143, 32.24724 + 139, 139, 137, 132, 130, 129, 126, 124, 121, 120, 120, 111, 117, 121, 121, 120, 32.24725 + 124, 126, 124, 130, 129, 128, 123, 117, 113, 112, 111, 102, 96, 91, 91, 92, 32.24726 + 93, 90, 86, 86, 88, 94, 93, 95, 96, 102, 106, 111, 115, 117, 117, 119, 32.24727 + 125, 130, 131, 126, 130, 134, 133, 129, 124, 123, 121, 119, 120, 118, 112, 106, 32.24728 + 105, 99, 94, 95, 79, 84, 62, 71, 49, 90, 125, 121, 183, 223, 162, 46, 32.24729 + 30, 51, 41, 42, 47, 39, 44, 86, 85, 57, 81, 79, 57, 59, 52, 47, 32.24730 + 57, 52, 45, 38, 47, 98, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24731 + 255, 255, 255, 255, 255, 142, 144, 184, 207, 208, 218, 232, 231, 238, 215, 169, 32.24732 + 159, 163, 141, 146, 131, 135, 144, 138, 133, 137, 140, 152, 143, 145, 151, 146, 32.24733 + 142, 141, 137, 132, 131, 130, 127, 125, 122, 121, 120, 116, 119, 119, 117, 118, 32.24734 + 122, 125, 124, 131, 131, 127, 122, 115, 111, 112, 112, 103, 99, 96, 94, 96, 32.24735 + 95, 94, 93, 93, 96, 97, 98, 99, 101, 106, 109, 111, 117, 124, 127, 128, 32.24736 + 128, 127, 125, 127, 131, 136, 135, 130, 126, 126, 128, 126, 126, 121, 113, 106, 32.24737 + 104, 97, 92, 83, 63, 81, 66, 60, 73, 114, 97, 116, 153, 151, 112, 44, 32.24738 + 46, 45, 44, 35, 46, 46, 61, 101, 95, 60, 58, 50, 74, 81, 59, 52, 32.24739 + 60, 54, 45, 37, 106, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24740 + 255, 255, 255, 255, 142, 149, 176, 214, 229, 226, 227, 247, 253, 241, 222, 211, 32.24741 + 194, 170, 156, 157, 148, 148, 147, 139, 143, 144, 138, 150, 145, 146, 151, 146, 32.24742 + 144, 143, 136, 137, 136, 134, 131, 130, 127, 127, 127, 124, 123, 124, 125, 127, 32.24743 + 127, 128, 128, 131, 131, 127, 122, 113, 110, 111, 112, 104, 102, 101, 98, 95, 32.24744 + 94, 95, 98, 98, 98, 99, 100, 103, 108, 115, 118, 118, 121, 126, 129, 129, 32.24745 + 124, 122, 121, 126, 129, 133, 133, 130, 128, 128, 129, 125, 126, 122, 115, 109, 32.24746 + 108, 102, 98, 81, 87, 86, 64, 77, 94, 109, 94, 71, 72, 45, 38, 27, 32.24747 + 44, 40, 50, 58, 50, 56, 73, 86, 95, 94, 73, 48, 53, 45, 45, 49, 32.24748 + 43, 44, 59, 93, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24749 + 255, 255, 255, 149, 169, 174, 224, 250, 254, 243, 240, 246, 251, 233, 224, 239, 32.24750 + 234, 212, 205, 168, 163, 160, 151, 145, 150, 150, 138, 143, 140, 143, 148, 143, 32.24751 + 144, 145, 138, 136, 135, 134, 132, 131, 129, 129, 129, 121, 121, 127, 134, 138, 32.24752 + 132, 126, 123, 128, 128, 128, 122, 113, 110, 111, 113, 104, 104, 104, 100, 94, 32.24753 + 93, 95, 100, 102, 101, 101, 102, 107, 112, 119, 122, 125, 122, 122, 122, 121, 32.24754 + 118, 120, 125, 128, 128, 130, 131, 132, 131, 131, 130, 121, 124, 123, 119, 117, 32.24755 + 116, 114, 108, 107, 47, 42, 85, 104, 91, 85, 78, 66, 64, 47, 47, 47, 32.24756 + 48, 47, 65, 61, 47, 66, 89, 78, 97, 124, 83, 77, 59, 46, 68, 68, 32.24757 + 49, 94, 156, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24758 + 255, 221, 143, 168, 194, 198, 245, 252, 251, 243, 235, 253, 249, 244, 238, 232, 32.24759 + 231, 227, 217, 180, 164, 160, 158, 150, 150, 150, 142, 145, 142, 145, 148, 144, 32.24760 + 146, 148, 140, 131, 131, 132, 131, 131, 129, 131, 130, 124, 123, 127, 135, 138, 32.24761 + 132, 126, 124, 125, 127, 128, 122, 114, 110, 112, 114, 107, 104, 101, 99, 96, 32.24762 + 98, 101, 103, 106, 103, 101, 101, 105, 110, 115, 117, 121, 118, 119, 122, 123, 32.24763 + 120, 123, 130, 132, 129, 129, 132, 136, 138, 135, 132, 124, 128, 129, 125, 124, 32.24764 + 123, 120, 113, 102, 63, 69, 116, 129, 113, 90, 70, 47, 53, 58, 52, 56, 32.24765 + 46, 47, 54, 54, 52, 69, 94, 84, 104, 137, 98, 50, 51, 44, 60, 53, 32.24766 + 55, 131, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24767 + 255, 180, 171, 213, 239, 225, 252, 240, 246, 255, 253, 243, 233, 255, 255, 224, 32.24768 + 225, 243, 228, 189, 165, 159, 167, 159, 148, 149, 151, 151, 147, 150, 151, 147, 32.24769 + 148, 149, 137, 134, 134, 135, 135, 135, 134, 136, 134, 139, 131, 130, 134, 137, 32.24770 + 132, 130, 130, 121, 126, 127, 123, 115, 111, 112, 115, 109, 103, 98, 97, 101, 32.24771 + 104, 104, 103, 107, 105, 101, 100, 102, 104, 108, 109, 113, 113, 121, 130, 133, 32.24772 + 128, 127, 132, 136, 131, 130, 133, 140, 143, 139, 134, 131, 135, 136, 132, 128, 32.24773 + 126, 120, 114, 98, 234, 220, 132, 140, 137, 70, 46, 56, 53, 57, 41, 59, 32.24774 + 58, 67, 55, 67, 70, 68, 83, 86, 110, 152, 128, 79, 100, 93, 94, 103, 32.24775 + 146, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24776 + 202, 208, 216, 241, 242, 242, 243, 247, 249, 247, 245, 246, 241, 245, 248, 236, 32.24777 + 219, 229, 250, 222, 165, 171, 147, 184, 166, 166, 142, 154, 158, 148, 141, 151, 32.24778 + 153, 148, 148, 146, 133, 131, 140, 144, 136, 137, 146, 141, 130, 131, 138, 142, 32.24779 + 131, 127, 129, 119, 120, 120, 118, 119, 120, 116, 107, 110, 106, 102, 99, 102, 32.24780 + 107, 106, 104, 109, 108, 106, 104, 105, 111, 115, 116, 114, 118, 120, 118, 121, 32.24781 + 127, 131, 132, 135, 133, 130, 127, 134, 144, 142, 134, 123, 119, 115, 121, 134, 32.24782 + 137, 121, 103, 112, 222, 148, 70, 93, 122, 37, 69, 65, 61, 58, 58, 59, 32.24783 + 64, 68, 69, 75, 65, 90, 91, 93, 114, 119, 134, 104, 101, 137, 166, 216, 32.24784 + 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24785 + 216, 228, 242, 246, 246, 245, 248, 249, 251, 249, 248, 255, 255, 255, 250, 237, 32.24786 + 226, 222, 225, 238, 207, 181, 169, 155, 174, 161, 164, 152, 158, 151, 146, 153, 32.24787 + 154, 146, 145, 147, 138, 135, 139, 141, 136, 136, 140, 133, 126, 130, 139, 142, 32.24788 + 132, 128, 131, 127, 126, 123, 121, 123, 124, 117, 106, 111, 106, 104, 105, 106, 32.24789 + 106, 104, 103, 108, 108, 110, 109, 112, 113, 115, 115, 113, 118, 120, 118, 120, 32.24790 + 126, 130, 130, 132, 130, 127, 125, 132, 140, 139, 132, 121, 114, 114, 127, 135, 32.24791 + 130, 121, 117, 123, 129, 164, 170, 77, 82, 80, 83, 68, 64, 63, 63, 66, 32.24792 + 70, 72, 73, 84, 75, 96, 96, 95, 112, 118, 128, 141, 165, 216, 218, 227, 32.24793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24794 + 255, 235, 243, 246, 246, 247, 248, 249, 249, 249, 248, 238, 246, 247, 244, 248, 32.24795 + 253, 249, 238, 232, 216, 181, 166, 143, 179, 162, 167, 154, 159, 155, 151, 158, 32.24796 + 157, 146, 142, 148, 144, 139, 136, 137, 136, 136, 134, 129, 127, 133, 141, 140, 32.24797 + 129, 125, 128, 123, 122, 118, 118, 121, 122, 114, 102, 105, 99, 101, 107, 109, 32.24798 + 105, 104, 107, 108, 108, 111, 112, 115, 114, 115, 115, 112, 117, 119, 117, 118, 32.24799 + 123, 127, 126, 128, 126, 124, 124, 130, 136, 135, 130, 121, 113, 119, 135, 135, 32.24800 + 123, 121, 131, 124, 86, 132, 178, 92, 77, 75, 84, 66, 63, 65, 67, 71, 32.24801 + 74, 76, 76, 87, 80, 99, 100, 97, 112, 117, 121, 137, 186, 255, 244, 255, 32.24802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24803 + 255, 239, 241, 245, 247, 246, 246, 247, 247, 246, 247, 247, 250, 250, 249, 251, 32.24804 + 254, 248, 238, 238, 223, 205, 175, 182, 199, 178, 163, 158, 162, 157, 151, 160, 32.24805 + 157, 148, 145, 147, 146, 140, 132, 131, 136, 136, 130, 133, 132, 136, 140, 134, 32.24806 + 125, 122, 125, 113, 115, 116, 115, 117, 118, 114, 106, 101, 95, 96, 107, 109, 32.24807 + 103, 104, 112, 109, 108, 110, 113, 115, 114, 115, 116, 112, 116, 118, 116, 117, 32.24808 + 121, 123, 122, 126, 124, 123, 124, 129, 133, 132, 129, 123, 121, 126, 134, 133, 32.24809 + 126, 125, 132, 116, 98, 92, 108, 86, 83, 54, 69, 67, 67, 69, 73, 79, 32.24810 + 83, 84, 85, 90, 90, 103, 106, 106, 118, 125, 122, 113, 164, 242, 238, 255, 32.24811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24812 + 255, 254, 255, 247, 250, 250, 248, 246, 245, 245, 246, 255, 254, 253, 253, 250, 32.24813 + 243, 240, 243, 240, 238, 226, 201, 206, 205, 171, 157, 166, 167, 159, 151, 159, 32.24814 + 158, 151, 150, 143, 142, 137, 130, 129, 133, 135, 129, 133, 131, 133, 132, 127, 32.24815 + 121, 121, 125, 109, 115, 118, 115, 115, 115, 115, 113, 108, 102, 101, 107, 106, 32.24816 + 103, 106, 114, 112, 107, 106, 109, 111, 110, 114, 118, 112, 116, 118, 115, 116, 32.24817 + 119, 120, 119, 125, 122, 123, 126, 130, 131, 131, 130, 128, 133, 133, 128, 130, 32.24818 + 133, 129, 120, 110, 86, 93, 86, 45, 68, 75, 66, 75, 76, 78, 81, 88, 32.24819 + 90, 90, 90, 95, 101, 108, 113, 112, 121, 133, 122, 113, 153, 234, 242, 255, 32.24820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24821 + 255, 255, 255, 253, 255, 253, 251, 248, 245, 245, 247, 244, 242, 244, 251, 250, 32.24822 + 245, 252, 255, 228, 243, 231, 230, 205, 200, 157, 175, 172, 172, 161, 151, 159, 32.24823 + 159, 154, 154, 143, 138, 132, 129, 129, 129, 132, 130, 127, 126, 127, 126, 124, 32.24824 + 124, 125, 127, 113, 117, 117, 112, 110, 111, 111, 110, 118, 116, 113, 109, 104, 32.24825 + 104, 106, 109, 114, 106, 105, 108, 111, 108, 113, 120, 113, 117, 119, 116, 115, 32.24826 + 118, 118, 116, 125, 121, 123, 127, 130, 129, 129, 130, 131, 139, 135, 124, 126, 32.24827 + 136, 127, 108, 108, 77, 92, 91, 56, 74, 87, 79, 80, 80, 80, 83, 86, 32.24828 + 87, 88, 87, 95, 103, 102, 109, 108, 114, 130, 113, 121, 144, 225, 245, 255, 32.24829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24830 + 255, 255, 255, 254, 255, 255, 252, 245, 242, 241, 245, 249, 253, 251, 246, 245, 32.24831 + 246, 247, 246, 242, 248, 248, 250, 236, 204, 163, 194, 176, 175, 163, 154, 161, 32.24832 + 160, 155, 155, 145, 134, 128, 129, 129, 123, 126, 130, 123, 122, 122, 122, 124, 32.24833 + 125, 124, 121, 118, 116, 110, 105, 109, 114, 112, 107, 114, 121, 119, 109, 103, 32.24834 + 107, 109, 104, 113, 105, 106, 112, 115, 109, 112, 119, 113, 118, 120, 117, 116, 32.24835 + 117, 117, 115, 123, 119, 122, 128, 130, 127, 127, 130, 131, 134, 133, 127, 125, 32.24836 + 127, 117, 105, 107, 88, 87, 87, 93, 91, 74, 81, 79, 78, 78, 83, 86, 32.24837 + 89, 90, 90, 95, 105, 99, 108, 106, 113, 132, 114, 131, 123, 198, 239, 255, 32.24838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24839 + 255, 255, 255, 250, 251, 251, 248, 242, 238, 237, 241, 240, 252, 252, 240, 242, 32.24840 + 254, 252, 240, 255, 237, 255, 238, 255, 186, 154, 169, 178, 177, 167, 159, 165, 32.24841 + 165, 157, 155, 149, 134, 126, 130, 129, 119, 121, 129, 124, 123, 122, 123, 125, 32.24842 + 125, 120, 113, 124, 116, 106, 105, 115, 124, 120, 111, 102, 116, 118, 106, 101, 32.24843 + 110, 111, 101, 112, 107, 108, 116, 118, 111, 111, 118, 114, 118, 121, 118, 116, 32.24844 + 117, 117, 114, 122, 118, 121, 127, 129, 125, 125, 129, 130, 127, 128, 130, 126, 32.24845 + 116, 110, 107, 107, 89, 103, 98, 89, 85, 74, 70, 81, 82, 83, 88, 95, 32.24846 + 100, 103, 104, 101, 113, 106, 117, 118, 127, 151, 131, 152, 117, 179, 234, 255, 32.24847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24848 + 255, 255, 255, 253, 247, 247, 246, 246, 246, 247, 248, 248, 242, 244, 251, 247, 32.24849 + 238, 242, 255, 253, 246, 240, 242, 248, 242, 217, 189, 170, 185, 179, 166, 138, 32.24850 + 180, 178, 144, 152, 139, 130, 129, 125, 115, 114, 116, 127, 122, 118, 115, 115, 32.24851 + 118, 118, 116, 116, 110, 106, 105, 107, 108, 107, 105, 107, 104, 105, 108, 111, 32.24852 + 110, 107, 103, 110, 114, 111, 105, 107, 113, 115, 113, 118, 118, 118, 117, 115, 32.24853 + 116, 119, 122, 111, 116, 120, 121, 119, 119, 122, 127, 127, 129, 126, 119, 114, 32.24854 + 111, 112, 112, 92, 90, 90, 88, 86, 82, 81, 83, 94, 96, 91, 98, 111, 32.24855 + 113, 111, 122, 121, 117, 104, 133, 121, 119, 165, 141, 140, 132, 126, 219, 230, 32.24856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24857 + 255, 255, 255, 255, 248, 247, 246, 247, 247, 249, 249, 251, 247, 249, 252, 252, 32.24858 + 245, 248, 255, 251, 246, 241, 243, 248, 244, 223, 199, 190, 177, 170, 186, 163, 32.24859 + 169, 163, 157, 149, 137, 127, 127, 123, 115, 115, 116, 116, 115, 116, 116, 117, 32.24860 + 119, 120, 120, 105, 105, 105, 104, 102, 102, 102, 103, 104, 103, 104, 106, 108, 32.24861 + 108, 106, 102, 108, 111, 111, 107, 109, 113, 113, 109, 115, 116, 118, 118, 116, 32.24862 + 115, 116, 117, 118, 118, 119, 120, 122, 123, 122, 123, 123, 125, 123, 120, 113, 32.24863 + 110, 110, 111, 108, 101, 94, 92, 85, 77, 74, 80, 86, 93, 96, 100, 111, 32.24864 + 109, 112, 125, 130, 129, 124, 144, 137, 135, 164, 150, 153, 141, 129, 204, 238, 32.24865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24866 + 255, 255, 255, 255, 253, 250, 248, 248, 249, 249, 249, 252, 251, 251, 251, 254, 32.24867 + 253, 251, 250, 247, 245, 243, 243, 247, 244, 230, 212, 202, 175, 166, 190, 173, 32.24868 + 159, 151, 156, 146, 133, 125, 125, 122, 115, 113, 117, 109, 111, 117, 119, 118, 32.24869 + 116, 117, 119, 107, 112, 116, 116, 112, 109, 111, 113, 102, 102, 102, 104, 106, 32.24870 + 105, 104, 102, 104, 108, 110, 109, 111, 113, 111, 107, 112, 114, 118, 118, 117, 32.24871 + 114, 113, 113, 121, 118, 116, 117, 121, 122, 119, 116, 118, 121, 118, 116, 111, 32.24872 + 108, 105, 105, 102, 92, 86, 91, 89, 81, 82, 93, 94, 105, 113, 116, 124, 32.24873 + 119, 121, 136, 142, 143, 144, 151, 150, 148, 156, 158, 153, 136, 114, 159, 236, 32.24874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24875 + 255, 255, 255, 255, 255, 252, 251, 252, 250, 249, 248, 250, 250, 250, 247, 252, 32.24876 + 255, 251, 241, 245, 246, 244, 242, 243, 243, 233, 223, 210, 198, 183, 176, 165, 32.24877 + 163, 157, 150, 146, 134, 125, 125, 122, 114, 113, 116, 109, 112, 119, 122, 117, 32.24878 + 110, 108, 111, 102, 105, 107, 106, 103, 101, 102, 104, 103, 102, 102, 103, 104, 32.24879 + 103, 105, 104, 104, 106, 108, 108, 111, 111, 109, 107, 113, 115, 117, 117, 115, 32.24880 + 114, 113, 114, 115, 113, 112, 114, 116, 117, 114, 114, 115, 119, 117, 114, 109, 32.24881 + 104, 100, 100, 89, 78, 77, 91, 95, 88, 89, 100, 97, 105, 107, 111, 118, 32.24882 + 115, 116, 129, 132, 134, 143, 142, 149, 151, 147, 162, 167, 149, 120, 135, 232, 32.24883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24884 + 255, 255, 255, 255, 255, 254, 252, 252, 251, 250, 248, 249, 249, 248, 246, 252, 32.24885 + 253, 248, 237, 246, 247, 244, 241, 239, 239, 233, 226, 227, 221, 199, 168, 164, 32.24886 + 166, 163, 151, 148, 136, 126, 126, 122, 114, 112, 115, 108, 110, 117, 122, 116, 32.24887 + 105, 103, 107, 110, 106, 102, 100, 101, 102, 101, 100, 103, 104, 104, 103, 102, 32.24888 + 103, 105, 106, 106, 105, 105, 107, 109, 109, 109, 111, 117, 117, 117, 115, 113, 32.24889 + 113, 114, 117, 107, 110, 113, 113, 112, 111, 113, 117, 115, 116, 115, 111, 105, 32.24890 + 100, 95, 94, 90, 81, 82, 93, 94, 83, 78, 82, 98, 100, 97, 101, 112, 32.24891 + 113, 113, 124, 117, 119, 128, 129, 138, 142, 139, 154, 157, 146, 132, 136, 237, 32.24892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24893 + 255, 255, 255, 255, 255, 255, 252, 253, 251, 249, 248, 253, 249, 248, 250, 253, 32.24894 + 252, 246, 239, 245, 246, 243, 239, 239, 238, 234, 227, 236, 226, 203, 170, 171, 32.24895 + 155, 154, 156, 148, 136, 126, 126, 122, 113, 111, 114, 105, 103, 110, 117, 115, 32.24896 + 106, 104, 110, 120, 114, 107, 105, 107, 109, 108, 106, 104, 104, 104, 102, 100, 32.24897 + 101, 106, 108, 107, 104, 104, 107, 110, 108, 110, 113, 118, 118, 116, 114, 111, 32.24898 + 112, 114, 117, 105, 110, 114, 114, 111, 110, 113, 116, 111, 112, 110, 106, 100, 32.24899 + 94, 91, 91, 92, 88, 88, 93, 91, 83, 73, 69, 93, 93, 88, 93, 106, 32.24900 + 109, 110, 120, 121, 120, 120, 127, 130, 127, 131, 129, 140, 127, 123, 133, 232, 32.24901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24902 + 255, 255, 255, 255, 255, 255, 249, 251, 251, 249, 250, 255, 249, 247, 252, 254, 32.24903 + 246, 242, 245, 244, 244, 243, 238, 240, 241, 237, 230, 232, 227, 212, 181, 184, 32.24904 + 156, 154, 158, 147, 132, 123, 124, 121, 113, 111, 115, 105, 99, 102, 112, 113, 32.24905 + 107, 106, 112, 104, 102, 100, 99, 98, 99, 98, 98, 102, 103, 102, 100, 98, 32.24906 + 98, 104, 108, 106, 103, 105, 111, 114, 110, 109, 112, 115, 116, 116, 114, 112, 32.24907 + 111, 111, 113, 108, 109, 111, 111, 110, 110, 110, 110, 105, 104, 102, 98, 93, 32.24908 + 90, 89, 88, 86, 88, 88, 87, 89, 90, 82, 70, 71, 75, 72, 74, 82, 32.24909 + 81, 81, 91, 103, 102, 97, 121, 119, 112, 131, 109, 133, 114, 119, 139, 227, 32.24910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24911 + 255, 255, 255, 255, 255, 255, 253, 251, 250, 249, 250, 255, 246, 245, 254, 253, 32.24912 + 242, 240, 247, 242, 243, 241, 240, 242, 245, 240, 232, 225, 240, 234, 190, 197, 32.24913 + 175, 168, 159, 143, 129, 122, 122, 120, 113, 112, 116, 108, 98, 99, 109, 112, 32.24914 + 106, 105, 112, 99, 103, 106, 105, 102, 100, 101, 103, 101, 102, 101, 98, 95, 32.24915 + 96, 103, 107, 103, 102, 106, 114, 117, 111, 108, 110, 111, 113, 116, 115, 113, 32.24916 + 110, 109, 108, 111, 108, 105, 106, 109, 109, 105, 101, 98, 99, 96, 92, 89, 32.24917 + 88, 87, 88, 86, 91, 89, 83, 86, 93, 87, 72, 70, 75, 77, 76, 76, 32.24918 + 67, 65, 77, 53, 55, 57, 103, 106, 104, 141, 107, 80, 73, 106, 161, 255, 32.24919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24920 + 255, 255, 255, 255, 255, 255, 255, 246, 249, 250, 247, 255, 253, 251, 251, 245, 32.24921 + 238, 240, 246, 243, 245, 243, 240, 238, 239, 235, 229, 226, 226, 225, 216, 199, 32.24922 + 176, 163, 158, 147, 135, 132, 119, 113, 115, 110, 113, 100, 100, 102, 104, 106, 32.24923 + 108, 108, 109, 99, 97, 98, 103, 105, 102, 100, 100, 106, 99, 95, 99, 101, 32.24924 + 100, 102, 103, 104, 107, 112, 116, 119, 117, 113, 110, 106, 108, 109, 111, 110, 32.24925 + 108, 106, 104, 117, 113, 109, 108, 109, 107, 100, 94, 94, 96, 97, 96, 92, 32.24926 + 91, 92, 94, 85, 91, 96, 95, 88, 84, 84, 85, 78, 66, 85, 65, 79, 32.24927 + 83, 82, 66, 96, 148, 123, 75, 67, 70, 76, 73, 87, 178, 255, 255, 255, 32.24928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24929 + 255, 255, 255, 255, 255, 255, 255, 241, 240, 246, 248, 255, 252, 249, 247, 244, 32.24930 + 238, 240, 245, 243, 245, 244, 240, 240, 239, 235, 229, 229, 228, 225, 219, 202, 32.24931 + 181, 165, 157, 144, 133, 127, 116, 110, 109, 106, 106, 99, 99, 100, 103, 105, 32.24932 + 106, 107, 108, 102, 96, 94, 96, 98, 98, 99, 102, 95, 92, 92, 98, 102, 32.24933 + 103, 108, 112, 106, 107, 109, 111, 114, 114, 113, 112, 110, 111, 112, 112, 112, 32.24934 + 110, 109, 108, 111, 107, 104, 105, 107, 106, 101, 96, 94, 92, 91, 92, 93, 32.24935 + 94, 93, 91, 90, 93, 96, 95, 90, 87, 88, 87, 97, 75, 69, 79, 73, 32.24936 + 71, 76, 81, 188, 214, 176, 127, 104, 82, 140, 255, 255, 255, 255, 255, 255, 32.24937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24938 + 255, 255, 255, 255, 255, 255, 255, 251, 240, 244, 245, 255, 248, 244, 241, 241, 32.24939 + 239, 241, 244, 244, 244, 243, 239, 239, 238, 234, 228, 232, 228, 223, 222, 211, 32.24940 + 192, 176, 168, 140, 131, 121, 113, 107, 104, 103, 100, 98, 97, 98, 100, 102, 32.24941 + 104, 106, 106, 104, 95, 88, 88, 90, 92, 97, 103, 97, 95, 96, 100, 100, 32.24942 + 98, 103, 109, 108, 107, 106, 106, 108, 110, 113, 115, 112, 112, 111, 111, 111, 32.24943 + 110, 110, 110, 107, 104, 102, 102, 103, 102, 98, 94, 94, 89, 86, 88, 95, 32.24944 + 97, 93, 88, 84, 85, 86, 87, 88, 89, 88, 89, 83, 75, 77, 88, 83, 32.24945 + 85, 75, 189, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24947 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 245, 238, 249, 246, 241, 238, 239, 32.24948 + 241, 243, 243, 243, 245, 242, 239, 238, 239, 233, 229, 234, 228, 223, 222, 217, 32.24949 + 206, 194, 184, 138, 133, 117, 112, 108, 102, 105, 98, 96, 94, 95, 97, 99, 32.24950 + 101, 103, 104, 102, 93, 86, 85, 86, 89, 94, 101, 99, 98, 100, 101, 98, 32.24951 + 94, 98, 104, 108, 107, 105, 104, 107, 110, 112, 114, 110, 110, 109, 108, 107, 32.24952 + 107, 108, 108, 109, 106, 102, 101, 100, 98, 94, 91, 96, 93, 90, 92, 96, 32.24953 + 98, 94, 90, 96, 94, 92, 92, 94, 96, 94, 93, 94, 86, 104, 75, 94, 32.24954 + 86, 52, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 237, 245, 245, 241, 238, 238, 32.24957 + 241, 243, 243, 243, 245, 242, 239, 238, 239, 233, 229, 241, 231, 222, 219, 218, 32.24958 + 208, 199, 193, 142, 138, 115, 114, 111, 102, 111, 100, 94, 92, 92, 93, 95, 32.24959 + 98, 100, 102, 99, 92, 86, 87, 88, 89, 92, 96, 94, 94, 97, 100, 98, 32.24960 + 95, 100, 106, 105, 105, 105, 106, 109, 110, 111, 111, 110, 109, 108, 107, 106, 32.24961 + 107, 107, 107, 108, 105, 103, 100, 99, 97, 94, 92, 98, 98, 98, 97, 95, 32.24962 + 94, 94, 95, 98, 95, 92, 90, 88, 88, 86, 84, 100, 81, 97, 73, 86, 32.24963 + 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 239, 246, 247, 240, 239, 32.24966 + 241, 244, 243, 244, 246, 243, 240, 239, 240, 234, 230, 244, 234, 222, 216, 212, 32.24967 + 202, 191, 185, 149, 146, 114, 115, 111, 100, 114, 99, 91, 89, 89, 90, 92, 32.24968 + 95, 98, 100, 98, 92, 89, 91, 92, 91, 91, 94, 98, 97, 98, 100, 98, 32.24969 + 93, 95, 98, 102, 103, 104, 105, 108, 108, 108, 108, 109, 109, 109, 109, 108, 32.24970 + 108, 107, 107, 103, 102, 100, 99, 98, 98, 98, 98, 95, 98, 99, 98, 94, 32.24971 + 93, 94, 96, 89, 90, 92, 93, 93, 94, 96, 97, 90, 87, 98, 107, 255, 32.24972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 248, 253, 245, 240, 32.24975 + 240, 244, 246, 245, 247, 246, 241, 240, 241, 237, 232, 242, 234, 224, 220, 210, 32.24976 + 196, 184, 178, 157, 154, 114, 114, 109, 94, 111, 92, 90, 87, 87, 88, 90, 32.24977 + 93, 96, 98, 100, 94, 92, 94, 95, 93, 93, 95, 104, 99, 98, 100, 99, 32.24978 + 93, 91, 91, 99, 100, 100, 101, 104, 104, 105, 106, 106, 107, 108, 109, 108, 32.24979 + 107, 105, 104, 101, 101, 99, 98, 96, 96, 97, 98, 91, 90, 90, 92, 92, 32.24980 + 94, 93, 92, 97, 101, 103, 105, 104, 104, 106, 109, 99, 105, 255, 255, 255, 32.24981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 246, 254, 247, 238, 32.24984 + 240, 244, 247, 245, 247, 246, 241, 240, 239, 236, 230, 235, 232, 227, 222, 213, 32.24985 + 197, 183, 176, 162, 158, 113, 112, 106, 87, 107, 86, 89, 86, 86, 86, 88, 32.24986 + 92, 95, 97, 102, 97, 93, 95, 96, 95, 95, 97, 96, 91, 91, 97, 101, 32.24987 + 99, 98, 98, 99, 98, 97, 98, 99, 101, 103, 106, 102, 103, 107, 106, 106, 32.24988 + 104, 102, 100, 103, 103, 100, 97, 94, 92, 93, 94, 87, 83, 81, 85, 92, 32.24989 + 96, 95, 90, 94, 98, 99, 91, 80, 72, 67, 68, 84, 255, 255, 255, 255, 32.24990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.24992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 241, 247, 243, 235, 32.24993 + 234, 243, 253, 246, 248, 232, 238, 236, 231, 197, 237, 231, 228, 238, 212, 200, 32.24994 + 207, 182, 181, 152, 139, 121, 109, 104, 101, 97, 94, 93, 94, 93, 91, 88, 32.24995 + 90, 94, 99, 97, 94, 92, 93, 96, 98, 97, 95, 91, 93, 95, 94, 95, 32.24996 + 96, 96, 94, 94, 99, 104, 103, 98, 98, 104, 112, 104, 106, 109, 109, 109, 32.24997 + 107, 105, 103, 102, 100, 97, 94, 91, 90, 89, 89, 86, 84, 78, 71, 79, 32.24998 + 92, 95, 90, 96, 104, 109, 104, 76, 95, 65, 50, 255, 255, 255, 255, 255, 32.24999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 241, 240, 243, 32.25002 + 243, 238, 235, 238, 239, 247, 247, 249, 208, 176, 213, 227, 237, 214, 217, 191, 32.25003 + 192, 176, 170, 146, 135, 120, 110, 106, 102, 97, 91, 89, 88, 87, 83, 81, 32.25004 + 82, 87, 92, 93, 91, 90, 93, 97, 99, 99, 98, 92, 92, 94, 93, 93, 32.25005 + 96, 95, 94, 92, 97, 100, 100, 98, 97, 101, 106, 104, 106, 107, 107, 106, 32.25006 + 105, 103, 102, 98, 97, 95, 93, 92, 92, 92, 92, 92, 85, 74, 70, 81, 32.25007 + 98, 101, 91, 99, 99, 109, 93, 152, 182, 206, 255, 255, 255, 255, 255, 255, 32.25008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 239, 243, 32.25011 + 242, 240, 235, 255, 241, 251, 232, 236, 189, 187, 232, 222, 240, 198, 226, 194, 32.25012 + 190, 187, 181, 141, 131, 119, 110, 108, 103, 97, 91, 92, 91, 87, 83, 81, 32.25013 + 82, 87, 91, 90, 89, 90, 92, 96, 98, 99, 98, 94, 91, 93, 93, 93, 32.25014 + 94, 94, 95, 95, 96, 97, 98, 99, 99, 99, 100, 103, 103, 103, 102, 102, 32.25015 + 101, 99, 99, 93, 93, 93, 92, 93, 94, 94, 95, 93, 90, 81, 72, 75, 32.25016 + 86, 93, 89, 100, 86, 96, 71, 219, 245, 255, 255, 255, 255, 255, 255, 255, 32.25017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 233, 32.25020 + 232, 239, 252, 244, 237, 255, 245, 249, 217, 205, 230, 224, 225, 200, 217, 199, 32.25021 + 188, 185, 183, 144, 133, 119, 110, 107, 102, 96, 92, 94, 91, 86, 81, 79, 32.25022 + 81, 85, 88, 86, 86, 87, 88, 91, 92, 93, 94, 95, 92, 91, 92, 92, 32.25023 + 91, 92, 95, 98, 97, 97, 99, 102, 102, 99, 96, 100, 99, 100, 97, 98, 32.25024 + 96, 96, 96, 91, 91, 92, 92, 93, 94, 94, 95, 89, 96, 94, 78, 68, 32.25025 + 71, 80, 82, 93, 75, 78, 62, 240, 252, 255, 255, 255, 255, 255, 255, 255, 32.25026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 32.25029 + 228, 233, 241, 244, 244, 242, 241, 237, 247, 221, 224, 230, 205, 215, 192, 195, 32.25030 + 174, 163, 164, 148, 134, 119, 107, 103, 100, 96, 92, 92, 88, 83, 79, 78, 32.25031 + 79, 81, 83, 83, 84, 85, 87, 89, 92, 95, 98, 98, 93, 92, 95, 95, 32.25032 + 92, 93, 98, 97, 95, 93, 96, 99, 99, 95, 91, 97, 96, 96, 93, 93, 32.25033 + 92, 92, 92, 91, 91, 91, 92, 92, 92, 92, 92, 91, 97, 95, 83, 77, 32.25034 + 78, 79, 75, 82, 71, 61, 73, 227, 250, 255, 255, 255, 255, 255, 255, 255, 32.25035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25038 + 241, 226, 217, 250, 247, 229, 222, 211, 248, 224, 218, 228, 198, 224, 185, 201, 32.25039 + 180, 167, 164, 149, 134, 118, 105, 101, 98, 94, 91, 92, 89, 84, 81, 81, 32.25040 + 83, 83, 83, 82, 83, 84, 85, 87, 92, 99, 105, 101, 95, 94, 99, 99, 32.25041 + 93, 94, 100, 95, 93, 91, 91, 94, 93, 90, 87, 94, 93, 94, 93, 92, 32.25042 + 90, 89, 89, 90, 91, 92, 92, 92, 92, 91, 91, 99, 94, 86, 83, 93, 32.25043 + 102, 91, 73, 76, 77, 58, 81, 182, 242, 255, 255, 255, 255, 255, 255, 255, 32.25044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25047 + 255, 236, 224, 220, 222, 238, 235, 230, 239, 218, 199, 214, 203, 212, 189, 199, 32.25048 + 183, 179, 163, 142, 129, 115, 104, 100, 97, 92, 88, 92, 89, 86, 85, 86, 32.25049 + 87, 85, 84, 85, 85, 83, 80, 80, 85, 93, 101, 102, 96, 97, 103, 103, 32.25050 + 96, 94, 101, 95, 92, 90, 87, 90, 87, 87, 86, 90, 90, 93, 92, 91, 32.25051 + 89, 87, 85, 87, 88, 91, 92, 93, 92, 92, 91, 100, 96, 89, 86, 97, 32.25052 + 106, 98, 80, 82, 94, 75, 79, 129, 227, 255, 255, 255, 255, 255, 255, 255, 32.25053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25056 + 255, 255, 254, 215, 208, 237, 223, 228, 222, 226, 222, 197, 207, 188, 187, 182, 32.25057 + 168, 170, 140, 135, 123, 112, 104, 102, 99, 91, 85, 86, 83, 82, 81, 84, 32.25058 + 83, 82, 78, 90, 86, 82, 75, 72, 74, 82, 88, 102, 96, 98, 106, 106, 32.25059 + 96, 95, 99, 96, 93, 91, 88, 88, 86, 87, 88, 88, 89, 91, 91, 90, 32.25060 + 87, 86, 84, 85, 87, 90, 92, 93, 93, 93, 92, 93, 100, 101, 92, 88, 32.25061 + 93, 95, 91, 91, 113, 99, 81, 104, 221, 255, 255, 255, 255, 255, 255, 255, 32.25062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25065 + 255, 255, 255, 253, 232, 216, 229, 230, 220, 220, 200, 190, 200, 201, 182, 165, 32.25066 + 159, 157, 150, 138, 127, 105, 107, 94, 98, 83, 85, 89, 85, 80, 94, 82, 32.25067 + 80, 75, 85, 74, 81, 87, 83, 81, 89, 80, 56, 102, 157, 141, 59, 92, 32.25068 + 92, 72, 114, 82, 83, 88, 85, 98, 73, 91, 84, 87, 87, 89, 88, 86, 32.25069 + 84, 82, 81, 84, 82, 83, 85, 90, 92, 91, 89, 98, 97, 96, 95, 92, 32.25070 + 90, 94, 98, 93, 98, 93, 67, 174, 220, 255, 255, 255, 255, 255, 255, 255, 32.25071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25074 + 255, 255, 255, 255, 255, 234, 201, 212, 211, 209, 181, 196, 182, 177, 181, 176, 32.25075 + 159, 146, 141, 125, 119, 105, 110, 96, 101, 92, 98, 90, 89, 78, 86, 81, 32.25076 + 95, 87, 85, 100, 91, 85, 82, 255, 255, 255, 255, 212, 233, 218, 109, 70, 32.25077 + 84, 93, 90, 96, 92, 86, 82, 91, 71, 89, 84, 87, 87, 88, 87, 86, 32.25078 + 85, 83, 81, 89, 86, 86, 86, 89, 89, 87, 84, 84, 85, 91, 99, 97, 32.25079 + 84, 86, 99, 91, 94, 89, 86, 231, 226, 255, 255, 255, 255, 255, 255, 255, 32.25080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25083 + 255, 255, 255, 255, 255, 255, 255, 232, 196, 206, 179, 183, 183, 179, 171, 164, 32.25084 + 156, 148, 138, 126, 123, 112, 115, 96, 97, 87, 95, 79, 93, 86, 84, 71, 32.25085 + 89, 86, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 128, 32.25086 + 76, 79, 93, 86, 84, 77, 80, 89, 73, 87, 82, 86, 86, 86, 85, 84, 32.25087 + 83, 81, 80, 88, 86, 84, 84, 86, 85, 84, 82, 94, 96, 95, 100, 95, 32.25088 + 73, 65, 77, 72, 62, 77, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 184, 185, 177, 167, 161, 157, 32.25093 + 151, 144, 141, 128, 124, 112, 115, 97, 97, 83, 88, 81, 88, 83, 86, 77, 32.25094 + 90, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 32.25095 + 113, 54, 64, 88, 89, 82, 84, 84, 72, 84, 81, 83, 85, 84, 83, 82, 32.25096 + 81, 81, 80, 83, 82, 82, 82, 84, 83, 84, 83, 88, 93, 83, 81, 88, 32.25097 + 76, 62, 65, 77, 81, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 159, 147, 161, 164, 32.25102 + 146, 133, 135, 117, 111, 100, 109, 101, 106, 92, 93, 94, 83, 71, 89, 144, 32.25103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25104 + 255, 138, 65, 86, 92, 84, 89, 79, 70, 81, 84, 84, 84, 83, 82, 83, 32.25105 + 82, 83, 83, 82, 82, 83, 82, 83, 82, 82, 83, 72, 86, 75, 84, 131, 32.25106 + 156, 147, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 153, 138, 32.25111 + 138, 135, 120, 115, 108, 95, 107, 101, 108, 94, 94, 86, 85, 140, 255, 255, 32.25112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25113 + 255, 255, 142, 42, 62, 65, 93, 87, 82, 84, 82, 88, 87, 86, 85, 86, 32.25114 + 86, 87, 87, 85, 87, 88, 85, 84, 81, 82, 82, 70, 86, 79, 110, 194, 32.25115 + 244, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25120 + 136, 137, 116, 121, 115, 103, 109, 97, 101, 90, 91, 255, 255, 255, 255, 255, 32.25121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25122 + 255, 255, 255, 197, 87, 69, 90, 83, 85, 83, 82, 85, 84, 85, 83, 83, 32.25123 + 85, 87, 88, 88, 91, 93, 90, 88, 85, 87, 88, 76, 81, 75, 125, 220, 32.25124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25129 + 255, 255, 211, 117, 115, 104, 111, 93, 97, 255, 255, 255, 255, 255, 255, 255, 32.25130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25131 + 255, 255, 255, 255, 255, 205, 85, 59, 70, 80, 89, 81, 80, 79, 80, 80, 32.25132 + 82, 85, 88, 89, 92, 94, 95, 92, 91, 93, 94, 95, 87, 80, 255, 255, 32.25133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25140 + 255, 255, 255, 255, 255, 255, 255, 194, 55, 58, 71, 76, 89, 92, 85, 83, 32.25141 + 92, 99, 99, 96, 93, 92, 91, 89, 88, 94, 98, 81, 85, 255, 255, 255, 32.25142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 124, 89, 66, 60, 60, 72, 84, 32.25150 + 84, 76, 66, 90, 94, 97, 98, 95, 92, 84, 78, 58, 255, 255, 255, 255, 32.25151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 65, 47, 43, 62, 83, 32.25159 + 88, 89, 91, 77, 86, 92, 91, 92, 92, 85, 74, 255, 255, 255, 255, 255, 32.25160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 81, 48, 32.25168 + 35, 43, 59, 67, 74, 70, 55, 46, 49, 49, 112, 255, 255, 255, 255, 255, 32.25169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25177 + 255, 138, 122, 115, 127, 135, 134, 140, 191, 255, 255, 255, 255, 255, 255, 255, 32.25178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 151, 178, 157, 191, 32.25186 + 191, 182, 118, 150, 202, 221, 226, 135, 107, 212, 255, 255, 255, 255, 255, 255, 32.25187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25194 + 223, 185, 138, 136, 154, 132, 146, 171, 187, 147, 134, 133, 143, 164, 148, 175, 32.25195 + 181, 158, 86, 79, 130, 175, 177, 93, 57, 54, 61, 106, 107, 156, 255, 255, 32.25196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 120, 139, 143, 107, 126, 152, 32.25203 + 162, 181, 145, 150, 168, 137, 140, 165, 191, 153, 143, 131, 138, 145, 150, 180, 32.25204 + 211, 173, 93, 98, 126, 176, 196, 161, 186, 198, 204, 242, 248, 247, 243, 244, 32.25205 + 254, 254, 248, 249, 180, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25211 + 255, 255, 255, 255, 255, 255, 226, 177, 152, 175, 137, 140, 126, 101, 123, 151, 32.25212 + 165, 166, 121, 145, 151, 132, 135, 168, 199, 134, 133, 138, 126, 155, 151, 164, 32.25213 + 220, 228, 211, 229, 228, 245, 255, 255, 233, 247, 232, 244, 251, 255, 229, 255, 32.25214 + 247, 255, 212, 225, 223, 255, 206, 131, 248, 255, 255, 255, 255, 255, 255, 255, 32.25215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25220 + 255, 255, 231, 168, 161, 176, 144, 173, 185, 176, 143, 145, 112, 89, 113, 122, 32.25221 + 113, 104, 61, 76, 85, 67, 78, 123, 185, 198, 178, 123, 147, 167, 191, 215, 32.25222 + 225, 229, 226, 226, 255, 251, 252, 255, 249, 246, 250, 243, 223, 224, 255, 243, 32.25223 + 255, 245, 251, 238, 108, 93, 179, 232, 255, 228, 210, 255, 255, 255, 255, 255, 32.25224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25229 + 225, 175, 176, 171, 181, 188, 129, 139, 122, 133, 117, 105, 80, 101, 165, 190, 32.25230 + 205, 237, 232, 203, 236, 246, 240, 235, 225, 218, 132, 122, 177, 162, 147, 125, 32.25231 + 77, 81, 96, 112, 241, 255, 239, 238, 255, 241, 245, 218, 203, 254, 240, 234, 32.25232 + 239, 255, 234, 245, 238, 194, 90, 135, 122, 199, 213, 241, 225, 255, 255, 255, 32.25233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 131, 32.25238 + 127, 158, 175, 153, 136, 164, 136, 181, 170, 167, 172, 146, 140, 185, 235, 227, 32.25239 + 223, 248, 250, 254, 251, 240, 211, 242, 235, 230, 156, 128, 157, 125, 82, 52, 32.25240 + 32, 46, 55, 58, 182, 231, 227, 241, 254, 252, 239, 216, 220, 163, 237, 251, 32.25241 + 239, 243, 255, 255, 255, 232, 22, 101, 99, 135, 178, 179, 199, 208, 224, 255, 32.25242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 187, 187, 184, 130, 32.25247 + 141, 168, 170, 136, 123, 199, 196, 249, 255, 244, 255, 245, 233, 246, 232, 182, 32.25248 + 150, 137, 122, 111, 79, 78, 80, 206, 242, 228, 199, 126, 85, 73, 57, 58, 32.25249 + 82, 71, 52, 30, 27, 52, 67, 135, 180, 247, 229, 225, 244, 45, 136, 250, 32.25250 + 224, 237, 249, 247, 232, 255, 84, 118, 112, 89, 74, 60, 120, 184, 176, 187, 32.25251 + 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 166, 174, 166, 168, 185, 167, 32.25256 + 228, 251, 230, 249, 255, 231, 252, 255, 237, 255, 178, 220, 176, 125, 60, 24, 32.25257 + 34, 41, 49, 72, 53, 72, 62, 144, 120, 62, 50, 78, 43, 83, 103, 102, 32.25258 + 112, 81, 59, 87, 110, 201, 221, 255, 244, 214, 53, 52, 0, 75, 27, 21, 32.25259 + 103, 172, 232, 247, 255, 232, 89, 133, 180, 203, 183, 138, 99, 148, 137, 229, 32.25260 + 173, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25264 + 255, 255, 255, 255, 255, 255, 255, 255, 176, 172, 166, 153, 183, 217, 249, 255, 32.25265 + 246, 213, 187, 205, 197, 99, 187, 230, 226, 255, 116, 61, 83, 112, 118, 137, 32.25266 + 144, 113, 113, 75, 65, 70, 52, 79, 63, 72, 90, 70, 140, 223, 247, 243, 32.25267 + 246, 241, 232, 235, 247, 255, 233, 238, 254, 233, 65, 22, 103, 57, 86, 91, 32.25268 + 38, 33, 117, 142, 228, 249, 223, 250, 214, 217, 243, 231, 113, 34, 68, 149, 32.25269 + 181, 151, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25273 + 255, 255, 255, 255, 255, 255, 255, 166, 178, 174, 176, 207, 248, 255, 234, 201, 32.25274 + 110, 104, 171, 235, 185, 199, 245, 226, 243, 197, 145, 104, 125, 140, 124, 131, 32.25275 + 127, 104, 135, 75, 66, 62, 73, 84, 70, 106, 87, 30, 187, 253, 245, 240, 32.25276 + 249, 255, 237, 255, 238, 244, 243, 251, 240, 185, 42, 40, 157, 237, 197, 185, 32.25277 + 81, 25, 41, 87, 124, 206, 233, 239, 233, 239, 232, 247, 160, 87, 60, 162, 32.25278 + 220, 188, 199, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25282 + 255, 255, 255, 255, 255, 255, 230, 166, 173, 179, 162, 245, 111, 85, 70, 65, 32.25283 + 195, 227, 242, 192, 216, 251, 231, 174, 168, 87, 102, 99, 132, 105, 117, 146, 32.25284 + 101, 100, 63, 88, 195, 197, 195, 244, 255, 249, 237, 211, 234, 238, 247, 239, 32.25285 + 246, 255, 233, 248, 255, 235, 255, 254, 239, 249, 211, 224, 248, 247, 249, 246, 32.25286 + 244, 214, 123, 23, 50, 46, 142, 231, 253, 226, 197, 238, 253, 202, 94, 218, 32.25287 + 242, 238, 229, 144, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25291 + 255, 255, 255, 255, 255, 224, 177, 197, 176, 123, 89, 181, 55, 25, 219, 227, 32.25292 + 255, 232, 255, 255, 211, 137, 108, 83, 50, 68, 103, 96, 61, 86, 116, 129, 32.25293 + 82, 47, 196, 246, 235, 207, 245, 244, 255, 238, 235, 243, 232, 208, 217, 220, 32.25294 + 235, 236, 244, 237, 254, 236, 187, 166, 208, 233, 254, 255, 250, 229, 237, 242, 32.25295 + 245, 255, 249, 226, 44, 37, 51, 114, 158, 253, 237, 155, 162, 253, 191, 183, 32.25296 + 238, 247, 255, 239, 155, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25300 + 255, 255, 255, 255, 219, 158, 168, 146, 155, 202, 226, 238, 206, 206, 240, 248, 32.25301 + 171, 189, 145, 108, 96, 66, 57, 98, 115, 183, 210, 228, 241, 103, 91, 175, 32.25302 + 194, 230, 239, 152, 95, 195, 236, 255, 244, 237, 255, 248, 246, 243, 255, 255, 32.25303 + 247, 228, 255, 250, 202, 66, 53, 58, 53, 56, 58, 224, 255, 254, 252, 253, 32.25304 + 252, 254, 242, 247, 252, 220, 59, 114, 77, 77, 189, 248, 240, 216, 201, 196, 32.25305 + 237, 184, 139, 245, 251, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25309 + 255, 255, 255, 228, 146, 185, 199, 174, 180, 224, 253, 251, 253, 222, 255, 228, 32.25310 + 76, 116, 106, 123, 66, 79, 91, 122, 148, 187, 255, 255, 243, 209, 65, 127, 32.25311 + 230, 205, 213, 125, 13, 218, 255, 239, 247, 253, 220, 255, 251, 250, 251, 243, 32.25312 + 229, 237, 220, 236, 164, 52, 52, 84, 83, 35, 69, 194, 242, 251, 241, 247, 32.25313 + 250, 243, 238, 255, 255, 223, 161, 134, 133, 65, 121, 211, 255, 193, 189, 210, 32.25314 + 232, 142, 83, 247, 244, 228, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25318 + 255, 255, 255, 166, 187, 166, 171, 239, 230, 200, 245, 255, 228, 253, 122, 80, 32.25319 + 112, 111, 208, 255, 245, 238, 170, 110, 204, 212, 240, 226, 248, 246, 152, 71, 32.25320 + 65, 82, 54, 85, 102, 151, 245, 244, 255, 236, 255, 238, 237, 249, 251, 255, 32.25321 + 239, 235, 109, 53, 222, 196, 234, 225, 168, 199, 176, 208, 220, 228, 242, 253, 32.25322 + 242, 234, 255, 250, 246, 255, 235, 5, 107, 145, 61, 122, 197, 230, 213, 213, 32.25323 + 233, 108, 78, 207, 255, 235, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25327 + 255, 255, 255, 171, 173, 161, 197, 216, 110, 38, 95, 191, 126, 66, 136, 244, 32.25328 + 244, 247, 231, 205, 237, 255, 252, 110, 183, 212, 255, 242, 238, 255, 251, 129, 32.25329 + 131, 149, 116, 101, 141, 74, 193, 253, 237, 255, 241, 255, 255, 253, 228, 239, 32.25330 + 247, 247, 115, 54, 218, 242, 190, 167, 158, 184, 190, 192, 210, 231, 235, 243, 32.25331 + 247, 234, 244, 239, 237, 233, 255, 56, 57, 110, 107, 55, 110, 91, 113, 195, 32.25332 + 241, 132, 67, 168, 244, 254, 241, 223, 255, 255, 255, 255, 255, 255, 255, 255, 32.25333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25336 + 255, 255, 255, 180, 150, 165, 191, 143, 65, 52, 86, 98, 72, 28, 173, 232, 32.25337 + 241, 198, 199, 91, 168, 255, 230, 59, 195, 225, 246, 254, 167, 225, 255, 166, 32.25338 + 102, 140, 147, 125, 133, 53, 99, 242, 236, 255, 241, 239, 245, 255, 247, 247, 32.25339 + 253, 166, 82, 112, 215, 225, 199, 217, 181, 200, 176, 179, 204, 229, 203, 197, 32.25340 + 238, 250, 250, 236, 252, 251, 240, 72, 36, 95, 101, 102, 154, 69, 85, 143, 32.25341 + 242, 205, 70, 179, 252, 217, 234, 213, 170, 255, 255, 255, 255, 255, 255, 255, 32.25342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25345 + 255, 255, 225, 172, 192, 161, 102, 100, 137, 129, 84, 96, 74, 125, 59, 76, 32.25346 + 44, 54, 91, 57, 70, 233, 209, 69, 239, 208, 233, 237, 157, 235, 255, 243, 32.25347 + 104, 170, 112, 138, 100, 118, 73, 37, 130, 217, 248, 255, 244, 249, 242, 246, 32.25348 + 253, 74, 35, 0, 88, 196, 161, 187, 165, 151, 163, 209, 214, 248, 229, 197, 32.25349 + 205, 213, 227, 234, 211, 218, 220, 84, 38, 80, 87, 108, 117, 137, 115, 47, 32.25350 + 248, 241, 37, 79, 231, 250, 143, 45, 229, 59, 255, 255, 255, 255, 255, 255, 32.25351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25354 + 255, 255, 182, 192, 230, 115, 100, 105, 104, 93, 101, 93, 122, 118, 55, 50, 32.25355 + 72, 105, 106, 89, 111, 166, 113, 129, 253, 179, 230, 237, 159, 192, 239, 255, 32.25356 + 91, 84, 138, 129, 122, 130, 119, 102, 58, 49, 90, 166, 249, 241, 251, 236, 32.25357 + 243, 253, 222, 188, 35, 41, 64, 54, 72, 135, 195, 232, 241, 237, 244, 224, 32.25358 + 233, 243, 152, 130, 141, 111, 117, 39, 77, 68, 71, 91, 124, 96, 111, 54, 32.25359 + 239, 255, 48, 33, 163, 226, 65, 31, 199, 105, 142, 255, 255, 255, 255, 255, 32.25360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25363 + 255, 255, 139, 107, 120, 94, 85, 93, 72, 93, 83, 83, 72, 77, 60, 74, 32.25364 + 95, 120, 102, 107, 113, 115, 134, 86, 103, 197, 243, 246, 248, 252, 248, 240, 32.25365 + 154, 53, 37, 46, 36, 33, 120, 105, 97, 78, 72, 151, 255, 236, 246, 255, 32.25366 + 247, 242, 241, 239, 218, 195, 214, 227, 212, 235, 238, 230, 225, 238, 241, 252, 32.25367 + 228, 235, 61, 45, 68, 71, 55, 82, 94, 60, 89, 85, 78, 93, 87, 70, 32.25368 + 241, 249, 40, 72, 102, 254, 41, 25, 88, 184, 55, 255, 255, 255, 255, 255, 32.25369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25372 + 255, 255, 139, 65, 79, 83, 83, 84, 92, 91, 80, 63, 48, 70, 70, 66, 32.25373 + 67, 106, 113, 98, 92, 96, 94, 85, 92, 167, 242, 245, 238, 246, 255, 241, 32.25374 + 143, 38, 88, 97, 108, 53, 76, 113, 92, 98, 90, 133, 254, 249, 247, 251, 32.25375 + 247, 251, 253, 233, 255, 244, 241, 249, 247, 255, 252, 243, 210, 226, 240, 216, 32.25376 + 182, 237, 68, 68, 60, 79, 62, 106, 105, 58, 86, 86, 87, 80, 114, 70, 32.25377 + 215, 235, 52, 85, 61, 219, 52, 47, 36, 250, 124, 150, 255, 255, 255, 255, 32.25378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25381 + 255, 255, 113, 101, 79, 82, 74, 105, 111, 92, 94, 104, 85, 84, 81, 98, 32.25382 + 80, 77, 71, 72, 69, 118, 115, 126, 136, 84, 124, 190, 234, 239, 229, 222, 32.25383 + 228, 233, 250, 246, 244, 148, 94, 91, 104, 109, 74, 138, 240, 242, 253, 244, 32.25384 + 243, 253, 241, 211, 223, 250, 250, 242, 254, 239, 240, 231, 253, 170, 247, 253, 32.25385 + 100, 54, 243, 242, 79, 54, 109, 74, 85, 97, 108, 73, 70, 83, 78, 91, 32.25386 + 78, 222, 68, 68, 94, 131, 102, 83, 75, 194, 231, 75, 255, 255, 255, 255, 32.25387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25390 + 255, 220, 11, 108, 51, 89, 75, 97, 102, 109, 91, 81, 87, 64, 38, 78, 32.25391 + 70, 60, 64, 123, 105, 80, 116, 75, 86, 105, 96, 83, 75, 85, 246, 255, 32.25392 + 238, 251, 255, 239, 255, 254, 237, 14, 77, 102, 94, 112, 238, 237, 248, 254, 32.25393 + 247, 237, 228, 238, 228, 207, 208, 253, 255, 242, 247, 244, 253, 190, 214, 224, 32.25394 + 233, 106, 81, 152, 180, 71, 31, 74, 87, 70, 103, 92, 81, 92, 88, 97, 32.25395 + 37, 188, 149, 60, 134, 84, 132, 104, 115, 72, 226, 95, 147, 255, 255, 255, 32.25396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25399 + 255, 161, 132, 235, 225, 234, 209, 70, 123, 99, 45, 70, 118, 122, 90, 115, 32.25400 + 95, 69, 56, 123, 157, 90, 105, 86, 113, 122, 97, 112, 91, 30, 226, 248, 32.25401 + 245, 255, 247, 254, 231, 246, 251, 50, 91, 107, 103, 32, 254, 255, 237, 250, 32.25402 + 255, 241, 231, 248, 243, 88, 74, 232, 244, 249, 255, 238, 240, 234, 193, 194, 32.25403 + 249, 135, 37, 40, 228, 231, 112, 64, 64, 117, 111, 99, 84, 69, 99, 51, 32.25404 + 63, 80, 195, 72, 111, 97, 125, 112, 121, 33, 160, 148, 111, 218, 255, 255, 32.25405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25408 + 255, 221, 255, 239, 255, 245, 254, 85, 110, 79, 114, 192, 213, 237, 231, 250, 32.25409 + 222, 151, 56, 118, 161, 106, 51, 86, 134, 83, 97, 104, 124, 52, 200, 244, 32.25410 + 255, 253, 248, 255, 245, 255, 225, 90, 55, 107, 130, 21, 182, 224, 241, 236, 32.25411 + 247, 254, 231, 232, 211, 40, 32, 250, 251, 249, 246, 249, 226, 216, 165, 190, 32.25412 + 240, 168, 59, 51, 157, 204, 194, 118, 52, 84, 135, 104, 95, 103, 92, 89, 32.25413 + 77, 42, 222, 121, 76, 113, 119, 109, 114, 67, 135, 173, 117, 121, 255, 255, 32.25414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25417 + 255, 253, 241, 251, 225, 201, 223, 183, 32, 41, 228, 255, 238, 255, 241, 237, 32.25418 + 254, 255, 181, 38, 54, 70, 67, 92, 89, 58, 74, 24, 63, 16, 110, 228, 32.25419 + 251, 244, 247, 237, 246, 255, 254, 80, 47, 112, 96, 97, 44, 92, 254, 251, 32.25420 + 224, 253, 222, 240, 156, 50, 45, 248, 251, 234, 242, 230, 210, 234, 188, 143, 32.25421 + 255, 240, 25, 87, 66, 108, 248, 228, 224, 128, 60, 60, 108, 84, 104, 92, 32.25422 + 84, 25, 231, 184, 79, 111, 127, 97, 105, 86, 145, 162, 110, 86, 255, 255, 32.25423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25426 + 255, 234, 250, 240, 242, 174, 200, 189, 18, 114, 251, 245, 244, 254, 255, 251, 32.25427 + 255, 235, 252, 86, 37, 129, 83, 123, 92, 98, 233, 243, 212, 180, 36, 187, 32.25428 + 255, 254, 233, 240, 249, 251, 244, 60, 53, 90, 101, 115, 72, 61, 89, 148, 32.25429 + 250, 242, 86, 134, 33, 77, 32, 231, 244, 248, 245, 222, 247, 231, 249, 255, 32.25430 + 236, 255, 45, 93, 54, 76, 62, 188, 210, 252, 203, 159, 67, 80, 101, 107, 32.25431 + 69, 64, 221, 222, 61, 112, 126, 117, 183, 61, 125, 100, 124, 100, 144, 255, 32.25432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25435 + 244, 239, 236, 245, 230, 204, 196, 204, 114, 179, 245, 253, 255, 248, 238, 235, 32.25436 + 243, 233, 234, 104, 100, 105, 140, 54, 86, 162, 255, 238, 255, 236, 87, 149, 32.25437 + 241, 255, 249, 254, 253, 235, 248, 51, 105, 61, 99, 95, 97, 102, 52, 90, 32.25438 + 171, 123, 67, 48, 65, 86, 95, 142, 252, 253, 233, 233, 242, 249, 252, 250, 32.25439 + 255, 220, 29, 75, 90, 96, 45, 103, 175, 252, 244, 206, 144, 78, 97, 92, 32.25440 + 104, 66, 203, 198, 57, 107, 71, 123, 203, 54, 117, 146, 118, 105, 115, 255, 32.25441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25444 + 229, 244, 242, 249, 244, 245, 215, 226, 254, 255, 238, 254, 225, 241, 255, 244, 32.25445 + 233, 255, 255, 103, 146, 125, 107, 117, 194, 240, 209, 234, 233, 247, 255, 255, 32.25446 + 255, 231, 255, 244, 225, 182, 121, 35, 83, 88, 99, 108, 89, 101, 74, 56, 32.25447 + 34, 10, 78, 91, 85, 84, 77, 48, 138, 232, 250, 254, 219, 234, 255, 243, 32.25448 + 210, 136, 67, 110, 77, 71, 90, 68, 44, 91, 174, 222, 253, 160, 117, 115, 32.25449 + 127, 77, 172, 174, 59, 85, 81, 107, 151, 224, 130, 122, 95, 121, 127, 255, 32.25450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25453 + 204, 239, 242, 238, 237, 243, 251, 211, 242, 227, 255, 244, 251, 255, 233, 251, 32.25454 + 255, 228, 163, 32, 153, 122, 58, 240, 248, 255, 218, 236, 219, 203, 227, 219, 32.25455 + 243, 237, 243, 192, 110, 37, 18, 101, 57, 104, 68, 68, 76, 70, 78, 84, 32.25456 + 95, 93, 50, 65, 44, 99, 76, 38, 32, 156, 225, 235, 245, 255, 255, 190, 32.25457 + 45, 26, 105, 90, 91, 70, 66, 78, 106, 78, 37, 67, 122, 215, 216, 157, 32.25458 + 90, 101, 88, 73, 105, 75, 73, 97, 31, 255, 193, 125, 113, 140, 125, 167, 32.25459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25462 + 175, 248, 232, 227, 240, 234, 240, 241, 248, 242, 247, 236, 235, 245, 241, 241, 32.25463 + 158, 48, 83, 192, 244, 70, 14, 233, 239, 227, 241, 234, 255, 252, 236, 222, 32.25464 + 255, 253, 235, 18, 45, 41, 71, 125, 80, 74, 52, 41, 65, 68, 62, 40, 32.25465 + 37, 73, 90, 99, 62, 69, 71, 72, 81, 51, 46, 144, 229, 237, 214, 225, 32.25466 + 70, 69, 113, 67, 72, 93, 107, 101, 79, 86, 105, 87, 55, 58, 75, 156, 32.25467 + 82, 84, 93, 98, 78, 50, 111, 151, 98, 177, 174, 93, 99, 118, 99, 114, 32.25468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25471 + 137, 255, 247, 225, 235, 251, 233, 251, 221, 233, 195, 126, 126, 197, 255, 231, 32.25472 + 213, 176, 198, 209, 235, 169, 20, 130, 253, 241, 253, 253, 242, 240, 243, 245, 32.25473 + 245, 221, 244, 12, 18, 57, 89, 144, 135, 38, 48, 91, 123, 122, 51, 48, 32.25474 + 66, 44, 98, 69, 61, 71, 68, 80, 100, 66, 83, 61, 192, 255, 240, 245, 32.25475 + 77, 67, 99, 89, 88, 96, 78, 90, 82, 88, 75, 103, 86, 67, 57, 83, 32.25476 + 61, 80, 100, 89, 104, 90, 219, 249, 209, 137, 243, 135, 109, 98, 93, 112, 32.25477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 32.25480 + 78, 231, 240, 237, 213, 255, 231, 177, 75, 133, 167, 160, 71, 70, 232, 240, 32.25481 + 248, 249, 239, 255, 236, 228, 39, 25, 194, 254, 229, 240, 241, 240, 249, 255, 32.25482 + 238, 136, 155, 168, 99, 153, 180, 192, 107, 63, 213, 242, 240, 254, 239, 196, 32.25483 + 107, 20, 68, 88, 74, 84, 84, 114, 95, 93, 85, 54, 71, 217, 236, 252, 32.25484 + 137, 66, 94, 84, 99, 111, 91, 87, 81, 86, 78, 65, 112, 85, 56, 86, 32.25485 + 98, 70, 94, 101, 84, 87, 227, 234, 255, 230, 244, 255, 187, 146, 138, 135, 32.25486 + 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 32.25489 + 24, 153, 192, 255, 246, 244, 159, 58, 111, 187, 179, 184, 190, 73, 182, 238, 32.25490 + 255, 252, 255, 234, 255, 243, 254, 84, 64, 253, 255, 253, 249, 242, 255, 241, 32.25491 + 175, 15, 64, 186, 182, 191, 179, 131, 77, 83, 232, 243, 243, 243, 255, 249, 32.25492 + 224, 153, 36, 63, 90, 89, 104, 93, 93, 118, 85, 122, 39, 229, 246, 240, 32.25493 + 196, 82, 115, 100, 91, 87, 99, 101, 96, 84, 84, 85, 64, 93, 106, 93, 32.25494 + 91, 85, 81, 81, 114, 107, 101, 178, 237, 234, 255, 202, 192, 203, 169, 85, 32.25495 + 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 32.25498 + 76, 31, 89, 252, 246, 187, 39, 64, 174, 165, 193, 180, 156, 151, 198, 232, 32.25499 + 233, 255, 252, 255, 233, 187, 172, 162, 19, 109, 255, 234, 236, 240, 254, 254, 32.25500 + 225, 136, 25, 162, 172, 207, 181, 69, 21, 166, 234, 240, 254, 250, 242, 242, 32.25501 + 241, 240, 118, 36, 105, 112, 93, 100, 120, 111, 107, 112, 43, 255, 235, 243, 32.25502 + 224, 89, 107, 100, 103, 94, 92, 112, 82, 114, 92, 96, 91, 91, 100, 100, 32.25503 + 88, 81, 84, 76, 61, 83, 40, 47, 255, 229, 243, 237, 179, 151, 195, 171, 32.25504 + 155, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.25507 + 73, 48, 105, 244, 238, 206, 48, 69, 182, 182, 157, 185, 154, 137, 192, 229, 32.25508 + 249, 248, 237, 249, 255, 75, 103, 138, 69, 11, 255, 239, 255, 255, 237, 225, 32.25509 + 253, 207, 73, 139, 165, 185, 170, 94, 87, 197, 233, 238, 239, 238, 249, 245, 32.25510 + 245, 255, 207, 104, 92, 108, 106, 105, 91, 85, 103, 91, 83, 229, 250, 243, 32.25511 + 224, 115, 97, 121, 132, 123, 99, 101, 88, 78, 108, 97, 97, 99, 103, 102, 32.25512 + 96, 91, 93, 65, 94, 82, 44, 39, 235, 255, 230, 237, 182, 112, 170, 153, 32.25513 + 148, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 61, 32.25516 + 43, 63, 227, 212, 215, 214, 88, 23, 138, 180, 187, 166, 162, 161, 224, 233, 32.25517 + 233, 240, 255, 230, 248, 92, 115, 99, 87, 139, 247, 240, 216, 194, 203, 237, 32.25518 + 250, 232, 218, 192, 195, 178, 170, 139, 150, 211, 218, 250, 245, 242, 254, 244, 32.25519 + 248, 250, 245, 213, 82, 91, 92, 99, 79, 80, 98, 87, 116, 97, 253, 238, 32.25520 + 235, 92, 141, 130, 137, 90, 106, 117, 76, 121, 88, 93, 100, 104, 99, 97, 32.25521 + 97, 98, 96, 97, 91, 72, 89, 73, 107, 249, 241, 255, 219, 105, 130, 96, 32.25522 + 112, 100, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 186, 32.25525 + 71, 33, 182, 174, 206, 253, 214, 11, 56, 79, 152, 175, 171, 150, 217, 245, 32.25526 + 224, 248, 255, 250, 238, 255, 233, 232, 255, 233, 197, 119, 21, 87, 227, 240, 32.25527 + 189, 184, 211, 243, 223, 198, 192, 190, 181, 227, 247, 239, 245, 244, 250, 242, 32.25528 + 255, 245, 245, 255, 60, 85, 79, 90, 80, 92, 99, 124, 124, 53, 146, 239, 32.25529 + 184, 44, 110, 84, 75, 88, 83, 103, 78, 91, 91, 87, 100, 103, 91, 86, 32.25530 + 93, 95, 91, 101, 96, 110, 107, 91, 26, 246, 252, 251, 253, 215, 243, 134, 32.25531 + 73, 81, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 208, 32.25534 + 65, 33, 185, 198, 203, 243, 236, 27, 24, 35, 121, 74, 159, 189, 231, 234, 32.25535 + 186, 235, 242, 254, 238, 216, 227, 179, 186, 142, 89, 40, 37, 129, 249, 255, 32.25536 + 203, 161, 224, 243, 226, 225, 211, 221, 191, 226, 244, 244, 250, 248, 253, 238, 32.25537 + 255, 239, 245, 243, 35, 85, 85, 90, 73, 90, 97, 75, 96, 78, 83, 172, 32.25538 + 209, 68, 72, 36, 69, 66, 126, 100, 115, 85, 116, 88, 101, 104, 89, 83, 32.25539 + 91, 94, 87, 117, 81, 85, 95, 102, 47, 231, 255, 247, 254, 255, 244, 154, 32.25540 + 159, 217, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 243, 32.25543 + 132, 46, 201, 254, 236, 255, 242, 160, 131, 85, 73, 171, 241, 249, 243, 240, 32.25544 + 215, 196, 163, 120, 175, 32, 90, 73, 48, 91, 60, 92, 109, 221, 255, 202, 32.25545 + 192, 214, 242, 243, 232, 237, 233, 249, 243, 244, 229, 247, 239, 238, 253, 239, 32.25546 + 241, 251, 255, 255, 44, 75, 81, 95, 73, 81, 84, 93, 86, 69, 60, 41, 32.25547 + 241, 195, 214, 242, 37, 116, 31, 37, 109, 99, 106, 96, 105, 106, 94, 89, 32.25548 + 95, 96, 90, 90, 86, 87, 87, 47, 18, 131, 223, 251, 233, 245, 237, 213, 32.25549 + 255, 255, 245, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 204, 32.25552 + 138, 78, 233, 255, 241, 221, 168, 217, 251, 234, 201, 197, 221, 248, 248, 229, 32.25553 + 254, 183, 224, 217, 250, 80, 4, 57, 90, 56, 111, 91, 171, 255, 240, 200, 32.25554 + 212, 222, 255, 248, 240, 238, 250, 219, 226, 222, 236, 221, 212, 215, 241, 250, 32.25555 + 249, 255, 221, 224, 59, 80, 75, 89, 81, 86, 78, 98, 79, 113, 106, 103, 32.25556 + 199, 226, 234, 251, 210, 250, 255, 43, 59, 86, 112, 99, 102, 102, 97, 95, 32.25557 + 98, 97, 92, 78, 85, 68, 66, 159, 232, 253, 251, 198, 136, 170, 254, 255, 32.25558 + 200, 71, 89, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 254, 217, 32.25561 + 196, 145, 144, 251, 252, 185, 105, 156, 224, 200, 187, 119, 93, 169, 249, 239, 32.25562 + 255, 58, 119, 248, 250, 188, 155, 48, 104, 83, 82, 61, 146, 253, 216, 179, 32.25563 + 237, 252, 240, 244, 250, 239, 236, 92, 66, 84, 180, 232, 228, 222, 236, 252, 32.25564 + 245, 231, 104, 108, 49, 110, 89, 81, 83, 99, 87, 95, 122, 94, 113, 120, 32.25565 + 161, 188, 221, 205, 253, 223, 249, 204, 98, 109, 94, 96, 94, 94, 94, 95, 32.25566 + 95, 93, 89, 108, 96, 107, 104, 246, 241, 237, 246, 244, 138, 63, 116, 207, 32.25567 + 252, 71, 65, 74, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 242, 233, 32.25570 + 231, 211, 37, 246, 250, 143, 80, 137, 208, 223, 201, 128, 25, 136, 245, 235, 32.25571 + 255, 68, 58, 207, 213, 234, 236, 53, 53, 113, 79, 72, 110, 242, 254, 218, 32.25572 + 253, 250, 243, 254, 236, 241, 182, 53, 7, 60, 94, 187, 204, 206, 207, 184, 32.25573 + 201, 175, 10, 44, 88, 105, 79, 110, 99, 97, 106, 109, 109, 115, 113, 129, 32.25574 + 154, 170, 205, 186, 255, 239, 249, 255, 152, 80, 105, 104, 76, 99, 115, 74, 32.25575 + 101, 107, 80, 118, 95, 121, 109, 243, 248, 241, 240, 251, 213, 72, 117, 147, 32.25576 + 246, 75, 77, 83, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 244, 253, 32.25579 + 255, 234, 88, 184, 224, 151, 131, 58, 199, 231, 255, 249, 110, 108, 254, 241, 32.25580 + 148, 255, 136, 14, 26, 209, 248, 172, 91, 96, 84, 64, 45, 121, 223, 249, 32.25581 + 245, 249, 252, 239, 229, 107, 19, 80, 130, 89, 51, 31, 61, 104, 120, 58, 32.25582 + 10, 36, 43, 69, 94, 104, 83, 101, 101, 86, 114, 104, 99, 109, 112, 121, 32.25583 + 135, 165, 224, 203, 241, 255, 189, 255, 245, 52, 74, 105, 136, 77, 85, 109, 32.25584 + 79, 111, 101, 103, 118, 108, 35, 116, 213, 237, 252, 235, 223, 202, 227, 84, 32.25585 + 206, 161, 45, 71, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 238, 255, 32.25588 + 239, 225, 198, 67, 138, 154, 195, 47, 234, 247, 255, 251, 187, 169, 252, 255, 32.25589 + 46, 227, 213, 82, 60, 153, 200, 196, 180, 74, 80, 78, 60, 56, 147, 199, 32.25590 + 188, 194, 157, 56, 46, 46, 81, 108, 84, 65, 89, 71, 86, 63, 73, 101, 32.25591 + 68, 60, 114, 116, 54, 85, 109, 107, 117, 98, 114, 103, 93, 103, 111, 111, 32.25592 + 113, 147, 223, 235, 235, 219, 151, 215, 236, 82, 50, 93, 56, 86, 101, 107, 32.25593 + 70, 53, 53, 92, 90, 69, 28, 89, 248, 251, 255, 222, 251, 187, 222, 175, 32.25594 + 194, 227, 13, 66, 90, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 106, 151, 253, 32.25597 + 246, 255, 222, 25, 56, 95, 128, 29, 240, 253, 236, 246, 224, 176, 243, 250, 32.25598 + 26, 198, 244, 74, 39, 115, 179, 173, 156, 97, 81, 75, 87, 47, 62, 88, 32.25599 + 89, 97, 51, 83, 27, 54, 98, 70, 64, 89, 83, 71, 95, 65, 47, 36, 32.25600 + 46, 147, 241, 254, 71, 94, 124, 96, 101, 101, 94, 112, 101, 107, 109, 107, 32.25601 + 104, 127, 189, 185, 239, 203, 88, 169, 204, 41, 26, 47, 41, 61, 70, 65, 32.25602 + 47, 28, 40, 54, 35, 61, 38, 29, 225, 255, 235, 253, 212, 246, 192, 209, 32.25603 + 200, 244, 40, 60, 94, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 128, 145, 119, 244, 32.25606 + 231, 209, 65, 75, 77, 84, 85, 41, 255, 255, 244, 255, 243, 226, 230, 253, 32.25607 + 53, 117, 208, 194, 138, 102, 235, 78, 73, 76, 76, 70, 75, 60, 58, 65, 32.25608 + 63, 70, 79, 59, 89, 105, 97, 87, 85, 85, 85, 120, 67, 64, 181, 225, 32.25609 + 235, 255, 229, 233, 75, 97, 96, 88, 79, 70, 57, 62, 57, 59, 51, 54, 32.25610 + 57, 56, 86, 82, 87, 82, 200, 255, 242, 250, 237, 140, 44, 66, 63, 75, 32.25611 + 226, 195, 184, 183, 199, 194, 222, 253, 208, 59, 109, 101, 83, 166, 123, 196, 32.25612 + 186, 238, 75, 52, 86, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 169, 234, 168, 252, 32.25615 + 249, 66, 20, 69, 92, 82, 84, 41, 243, 233, 232, 244, 237, 255, 226, 255, 32.25616 + 51, 33, 100, 236, 240, 189, 230, 213, 109, 109, 79, 83, 80, 94, 88, 93, 32.25617 + 99, 90, 113, 96, 104, 80, 71, 101, 103, 90, 107, 105, 190, 222, 255, 241, 32.25618 + 145, 102, 71, 68, 45, 65, 40, 74, 92, 79, 96, 103, 105, 107, 94, 103, 32.25619 + 113, 98, 102, 107, 107, 120, 125, 186, 247, 236, 249, 254, 216, 18, 19, 57, 32.25620 + 107, 140, 205, 217, 229, 230, 230, 233, 248, 134, 54, 57, 48, 83, 113, 76, 32.25621 + 36, 183, 141, 55, 81, 89, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 225, 198, 152, 109, 230, 32.25624 + 254, 38, 48, 91, 110, 89, 81, 43, 231, 249, 254, 255, 231, 226, 250, 239, 32.25625 + 29, 117, 35, 135, 244, 202, 202, 237, 169, 92, 111, 83, 81, 94, 82, 83, 32.25626 + 96, 81, 74, 80, 84, 75, 47, 31, 43, 45, 27, 119, 233, 206, 124, 175, 32.25627 + 216, 198, 236, 229, 238, 205, 148, 101, 115, 96, 113, 97, 100, 105, 94, 102, 32.25628 + 111, 94, 97, 139, 98, 95, 107, 54, 108, 243, 240, 252, 252, 204, 215, 129, 32.25629 + 64, 79, 190, 195, 193, 188, 239, 230, 255, 248, 233, 120, 60, 70, 108, 207, 32.25630 + 171, 59, 187, 67, 83, 97, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 249, 230, 214, 175, 121, 245, 32.25633 + 238, 141, 19, 100, 96, 87, 70, 57, 216, 254, 230, 236, 255, 255, 248, 222, 32.25634 + 29, 62, 66, 90, 134, 179, 189, 225, 174, 83, 91, 83, 67, 69, 81, 81, 32.25635 + 77, 74, 67, 80, 61, 59, 69, 71, 74, 87, 99, 187, 205, 178, 63, 112, 32.25636 + 253, 251, 246, 235, 234, 232, 245, 126, 141, 119, 94, 97, 99, 106, 98, 99, 32.25637 + 103, 92, 105, 121, 105, 123, 130, 14, 21, 200, 241, 251, 255, 255, 250, 169, 32.25638 + 118, 125, 181, 175, 125, 101, 235, 236, 249, 235, 255, 231, 108, 73, 71, 230, 32.25639 + 222, 44, 171, 74, 83, 101, 79, 138, 255, 255, 255, 255, 255, 255, 255, 255, 32.25640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 229, 224, 211, 188, 206, 250, 32.25642 + 250, 232, 84, 81, 47, 77, 93, 57, 106, 246, 216, 224, 236, 244, 196, 100, 32.25643 + 74, 46, 66, 60, 39, 60, 76, 86, 101, 40, 55, 48, 63, 39, 77, 63, 32.25644 + 76, 70, 91, 113, 72, 55, 72, 215, 244, 242, 252, 231, 242, 177, 113, 98, 32.25645 + 238, 229, 237, 224, 239, 211, 255, 215, 203, 150, 139, 105, 116, 98, 112, 114, 32.25646 + 121, 97, 106, 99, 117, 108, 103, 43, 145, 251, 243, 253, 247, 233, 240, 242, 32.25647 + 239, 234, 206, 73, 54, 92, 232, 241, 255, 251, 225, 255, 199, 56, 65, 131, 32.25648 + 132, 94, 107, 120, 55, 97, 92, 73, 255, 255, 255, 255, 255, 255, 255, 255, 32.25649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25650 + 255, 255, 255, 255, 255, 255, 255, 255, 220, 231, 168, 192, 181, 188, 218, 171, 32.25651 + 186, 255, 111, 81, 116, 45, 63, 47, 90, 97, 46, 29, 32, 37, 34, 40, 32.25652 + 101, 99, 91, 57, 48, 57, 40, 38, 69, 57, 78, 55, 36, 18, 129, 193, 32.25653 + 211, 150, 116, 109, 54, 57, 121, 169, 192, 207, 197, 97, 25, 23, 119, 104, 32.25654 + 119, 196, 239, 236, 207, 209, 221, 239, 213, 217, 178, 134, 113, 105, 100, 83, 32.25655 + 92, 74, 109, 101, 111, 78, 112, 73, 231, 254, 255, 254, 254, 236, 239, 243, 32.25656 + 241, 242, 223, 245, 238, 213, 245, 239, 149, 192, 230, 208, 188, 74, 71, 116, 32.25657 + 126, 118, 145, 132, 104, 84, 82, 65, 255, 255, 255, 255, 255, 255, 255, 255, 32.25658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25659 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 152, 100, 28, 33, 36, 18, 67, 32.25660 + 85, 226, 104, 172, 157, 87, 95, 60, 226, 243, 32, 41, 40, 55, 81, 114, 32.25661 + 163, 132, 90, 85, 91, 106, 82, 86, 107, 95, 84, 47, 94, 131, 222, 245, 32.25662 + 255, 243, 254, 175, 128, 41, 75, 72, 57, 33, 40, 78, 136, 115, 93, 101, 32.25663 + 62, 127, 225, 242, 178, 161, 219, 240, 232, 228, 192, 157, 132, 126, 148, 125, 32.25664 + 103, 91, 101, 119, 109, 88, 130, 24, 237, 255, 238, 249, 255, 242, 243, 250, 32.25665 + 245, 247, 240, 241, 242, 244, 232, 254, 249, 72, 14, 33, 106, 125, 123, 119, 32.25666 + 112, 110, 123, 119, 120, 88, 84, 78, 129, 255, 255, 255, 255, 255, 255, 255, 32.25667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25668 + 255, 255, 255, 255, 255, 255, 255, 209, 229, 228, 71, 45, 61, 50, 51, 179, 32.25669 + 206, 236, 99, 136, 112, 78, 85, 165, 249, 211, 66, 86, 73, 82, 101, 106, 32.25670 + 109, 98, 87, 71, 75, 90, 85, 104, 109, 77, 47, 62, 158, 215, 255, 243, 32.25671 + 243, 238, 239, 225, 215, 70, 60, 86, 85, 68, 96, 83, 85, 99, 106, 133, 32.25672 + 78, 76, 183, 252, 254, 191, 219, 241, 245, 202, 204, 198, 159, 100, 120, 102, 32.25673 + 75, 105, 88, 95, 114, 64, 90, 53, 243, 252, 248, 244, 255, 248, 247, 253, 32.25674 + 244, 244, 241, 243, 249, 238, 254, 218, 252, 178, 43, 63, 57, 119, 97, 112, 32.25675 + 140, 146, 125, 120, 138, 107, 196, 199, 179, 255, 255, 255, 255, 255, 255, 255, 32.25676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25677 + 255, 255, 255, 255, 255, 255, 255, 65, 89, 77, 76, 58, 74, 52, 140, 175, 32.25678 + 229, 106, 7, 31, 99, 91, 35, 192, 211, 97, 50, 83, 75, 85, 97, 95, 32.25679 + 89, 104, 108, 111, 102, 102, 94, 110, 123, 125, 172, 219, 255, 247, 243, 238, 32.25680 + 255, 255, 251, 254, 250, 104, 33, 49, 57, 58, 43, 74, 106, 108, 102, 115, 32.25681 + 129, 92, 82, 76, 203, 243, 236, 250, 245, 234, 236, 226, 176, 133, 116, 99, 32.25682 + 94, 114, 108, 74, 86, 114, 138, 54, 133, 243, 255, 242, 255, 245, 246, 248, 32.25683 + 241, 244, 236, 120, 239, 252, 240, 253, 231, 252, 228, 117, 32, 145, 139, 139, 32.25684 + 125, 127, 120, 114, 132, 86, 240, 241, 245, 252, 255, 255, 255, 255, 255, 255, 32.25685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25686 + 255, 255, 255, 255, 255, 255, 87, 85, 111, 74, 98, 111, 174, 170, 234, 228, 32.25687 + 214, 63, 85, 106, 80, 72, 112, 237, 194, 80, 121, 87, 91, 100, 104, 108, 32.25688 + 91, 85, 45, 50, 45, 45, 28, 21, 44, 72, 222, 226, 252, 251, 255, 255, 32.25689 + 243, 244, 247, 239, 238, 107, 38, 141, 186, 186, 175, 59, 75, 35, 116, 119, 32.25690 + 106, 113, 99, 89, 118, 204, 227, 70, 113, 236, 252, 115, 86, 135, 108, 100, 32.25691 + 105, 74, 99, 118, 111, 91, 96, 81, 45, 112, 172, 244, 245, 244, 253, 249, 32.25692 + 248, 255, 233, 82, 64, 142, 243, 238, 249, 255, 250, 231, 51, 66, 94, 130, 32.25693 + 109, 102, 113, 123, 113, 109, 118, 114, 255, 250, 255, 255, 255, 255, 255, 255, 32.25694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25695 + 255, 255, 255, 255, 255, 230, 56, 96, 111, 75, 84, 108, 231, 255, 230, 225, 32.25696 + 145, 51, 115, 99, 115, 63, 122, 255, 182, 50, 95, 111, 102, 92, 84, 88, 32.25697 + 68, 79, 46, 80, 90, 103, 100, 80, 85, 43, 217, 230, 238, 225, 234, 246, 32.25698 + 241, 253, 254, 253, 253, 163, 117, 223, 250, 224, 239, 147, 84, 38, 140, 117, 32.25699 + 111, 138, 73, 106, 58, 124, 202, 26, 71, 180, 177, 68, 60, 103, 93, 101, 32.25700 + 83, 73, 111, 114, 94, 103, 111, 68, 31, 64, 104, 216, 213, 232, 255, 253, 32.25701 + 252, 254, 206, 82, 49, 40, 243, 255, 233, 235, 233, 250, 156, 63, 88, 95, 32.25702 + 69, 80, 131, 136, 118, 150, 54, 57, 212, 236, 255, 255, 255, 255, 255, 255, 32.25703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25704 + 255, 255, 255, 255, 255, 224, 70, 102, 49, 50, 112, 94, 207, 212, 156, 90, 32.25705 + 82, 79, 102, 89, 104, 53, 134, 252, 108, 36, 99, 104, 90, 87, 89, 85, 32.25706 + 51, 92, 100, 221, 232, 248, 255, 251, 231, 96, 233, 218, 249, 249, 244, 248, 32.25707 + 243, 247, 234, 244, 237, 250, 250, 244, 242, 237, 245, 249, 245, 138, 81, 87, 32.25708 + 88, 73, 109, 83, 95, 92, 83, 112, 88, 72, 36, 99, 113, 87, 114, 128, 32.25709 + 56, 87, 95, 103, 118, 120, 134, 135, 138, 62, 62, 38, 35, 77, 124, 113, 32.25710 + 107, 97, 29, 40, 64, 57, 26, 124, 252, 255, 244, 248, 255, 69, 78, 76, 32.25711 + 65, 62, 94, 85, 99, 93, 91, 107, 80, 203, 242, 243, 255, 255, 255, 255, 32.25712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25713 + 255, 255, 255, 255, 226, 106, 87, 93, 124, 183, 242, 172, 91, 54, 79, 123, 32.25714 + 109, 121, 111, 109, 93, 103, 245, 174, 52, 47, 113, 114, 64, 68, 81, 96, 32.25715 + 102, 255, 239, 242, 228, 240, 255, 234, 239, 253, 205, 245, 209, 199, 235, 232, 32.25716 + 255, 246, 248, 251, 254, 248, 224, 250, 239, 243, 249, 238, 252, 255, 56, 80, 32.25717 + 106, 106, 104, 119, 120, 104, 102, 113, 111, 95, 81, 109, 121, 62, 207, 255, 32.25718 + 121, 97, 104, 89, 121, 111, 108, 107, 111, 138, 112, 116, 138, 96, 37, 57, 32.25719 + 30, 55, 70, 127, 100, 98, 54, 58, 214, 249, 246, 231, 215, 72, 44, 90, 32.25720 + 120, 52, 88, 69, 98, 86, 112, 136, 87, 67, 238, 253, 255, 255, 255, 255, 32.25721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25722 + 255, 255, 255, 175, 148, 67, 102, 106, 215, 238, 138, 67, 79, 75, 99, 100, 32.25723 + 107, 126, 109, 81, 77, 183, 247, 34, 120, 84, 36, 71, 100, 77, 204, 224, 32.25724 + 246, 221, 208, 99, 166, 234, 247, 255, 236, 255, 236, 157, 56, 38, 35, 34, 32.25725 + 130, 222, 236, 246, 229, 249, 254, 254, 234, 245, 254, 246, 253, 250, 24, 119, 32.25726 + 108, 104, 101, 115, 111, 90, 90, 102, 103, 108, 107, 131, 96, 81, 162, 232, 32.25727 + 255, 255, 110, 137, 102, 98, 104, 81, 72, 83, 77, 89, 69, 100, 89, 104, 32.25728 + 125, 95, 157, 131, 205, 158, 185, 190, 245, 88, 76, 61, 88, 88, 71, 246, 32.25729 + 255, 251, 230, 255, 232, 232, 193, 173, 215, 192, 87, 248, 240, 255, 255, 255, 32.25730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25731 + 255, 255, 205, 126, 111, 56, 84, 124, 255, 236, 94, 57, 115, 110, 125, 88, 32.25732 + 104, 137, 127, 78, 96, 215, 251, 41, 122, 92, 50, 49, 219, 227, 240, 249, 32.25733 + 177, 62, 88, 47, 144, 255, 250, 251, 252, 242, 110, 51, 30, 32, 26, 45, 32.25734 + 69, 200, 247, 251, 240, 240, 246, 243, 252, 254, 245, 254, 241, 240, 45, 127, 32.25735 + 111, 101, 87, 106, 110, 96, 101, 100, 98, 117, 122, 126, 106, 119, 139, 209, 32.25736 + 240, 246, 199, 168, 71, 42, 57, 44, 43, 38, 41, 42, 7, 71, 59, 120, 32.25737 + 150, 154, 137, 117, 155, 233, 235, 228, 241, 84, 75, 41, 25, 46, 105, 245, 32.25738 + 247, 243, 250, 253, 238, 255, 254, 238, 231, 242, 170, 255, 232, 234, 255, 255, 32.25739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.25740 + 255, 205, 147, 78, 87, 143, 197, 203, 241, 186, 73, 88, 112, 86, 104, 75, 32.25741 + 68, 107, 100, 64, 45, 243, 228, 15, 79, 44, 183, 197, 244, 212, 88, 115, 32.25742 + 71, 63, 87, 59, 149, 221, 216, 232, 252, 202, 44, 188, 221, 199, 176, 162, 32.25743 + 68, 203, 241, 238, 253, 254, 232, 243, 244, 247, 239, 255, 251, 254, 117, 78, 32.25744 + 105, 108, 92, 84, 102, 97, 104, 91, 74, 85, 68, 82, 123, 121, 66, 126, 32.25745 + 129, 175, 254, 255, 228, 193, 208, 212, 215, 211, 213, 208, 252, 35, 71, 177, 32.25746 + 174, 158, 98, 95, 53, 46, 228, 231, 227, 241, 235, 214, 130, 131, 231, 254, 32.25747 + 243, 242, 255, 248, 255, 237, 234, 255, 250, 247, 235, 244, 223, 170, 255, 255, 32.25748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 32.25749 + 110, 120, 112, 122, 167, 218, 228, 247, 158, 80, 90, 121, 114, 99, 115, 123, 32.25750 + 99, 126, 104, 68, 127, 213, 58, 112, 87, 118, 213, 171, 75, 73, 60, 61, 32.25751 + 77, 98, 59, 97, 203, 195, 206, 247, 229, 161, 159, 224, 200, 204, 180, 168, 32.25752 + 131, 248, 237, 253, 226, 255, 253, 244, 221, 255, 247, 244, 103, 70, 112, 118, 32.25753 + 110, 85, 138, 208, 188, 137, 134, 139, 157, 202, 183, 132, 118, 109, 88, 106, 32.25754 + 65, 96, 103, 101, 247, 241, 245, 243, 233, 234, 236, 233, 215, 225, 197, 241, 32.25755 + 213, 184, 186, 116, 90, 63, 158, 253, 240, 255, 230, 248, 168, 230, 255, 252, 32.25756 + 223, 255, 202, 203, 194, 156, 192, 222, 246, 255, 255, 252, 255, 182, 194, 255, 32.25757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 104, 32.25758 + 117, 86, 85, 244, 231, 255, 183, 104, 73, 108, 95, 106, 99, 105, 99, 116, 32.25759 + 105, 119, 90, 107, 218, 32, 52, 67, 149, 170, 42, 93, 52, 79, 83, 90, 32.25760 + 91, 103, 76, 148, 246, 227, 242, 248, 231, 182, 220, 211, 179, 204, 154, 183, 32.25761 + 226, 246, 234, 246, 168, 210, 250, 243, 246, 237, 120, 147, 192, 197, 104, 99, 32.25762 + 108, 91, 105, 119, 120, 124, 201, 239, 234, 234, 171, 114, 93, 98, 134, 154, 32.25763 + 110, 117, 59, 29, 255, 255, 250, 251, 242, 238, 230, 230, 248, 216, 227, 203, 32.25764 + 221, 192, 202, 165, 69, 56, 199, 223, 181, 25, 121, 87, 32, 96, 85, 64, 32.25765 + 50, 99, 28, 67, 54, 52, 104, 80, 69, 107, 186, 216, 242, 197, 183, 255, 32.25766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 91, 86, 32.25767 + 98, 63, 144, 238, 243, 198, 123, 71, 82, 111, 111, 108, 100, 114, 99, 93, 32.25768 + 100, 85, 68, 172, 239, 45, 71, 83, 126, 80, 44, 42, 65, 91, 60, 115, 32.25769 + 88, 88, 48, 181, 235, 238, 252, 238, 247, 224, 193, 192, 183, 165, 138, 193, 32.25770 + 245, 231, 248, 244, 219, 231, 255, 232, 244, 177, 57, 149, 239, 255, 114, 115, 32.25771 + 122, 109, 89, 95, 96, 123, 228, 245, 198, 200, 159, 107, 150, 127, 100, 119, 32.25772 + 127, 128, 85, 53, 251, 239, 232, 233, 232, 210, 204, 220, 210, 238, 192, 132, 32.25773 + 153, 166, 129, 124, 53, 31, 130, 165, 112, 48, 40, 46, 22, 29, 39, 13, 32.25774 + 25, 47, 44, 17, 42, 47, 43, 52, 56, 68, 130, 192, 211, 228, 212, 255, 32.25775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 88, 76, 88, 115, 32.25776 + 109, 109, 167, 198, 135, 55, 94, 90, 92, 85, 109, 113, 97, 118, 124, 97, 32.25777 + 101, 47, 43, 229, 208, 51, 73, 94, 23, 46, 96, 80, 53, 81, 101, 93, 32.25778 + 85, 109, 51, 244, 255, 243, 246, 254, 243, 217, 201, 204, 171, 120, 186, 209, 32.25779 + 232, 249, 218, 226, 255, 203, 162, 55, 44, 36, 119, 255, 246, 233, 144, 132, 32.25780 + 138, 140, 127, 140, 115, 112, 180, 137, 53, 89, 103, 105, 102, 92, 113, 129, 32.25781 + 107, 87, 97, 62, 215, 226, 228, 207, 200, 164, 176, 193, 167, 101, 63, 31, 32.25782 + 46, 16, 33, 23, 26, 31, 24, 24, 33, 38, 48, 31, 51, 44, 39, 47, 32.25783 + 47, 38, 52, 47, 32, 47, 20, 39, 40, 36, 55, 79, 103, 209, 233, 255, 32.25784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 80, 106, 76, 117, 32.25785 + 181, 193, 202, 68, 88, 101, 75, 46, 88, 74, 61, 78, 92, 93, 116, 118, 32.25786 + 62, 106, 93, 126, 84, 102, 91, 56, 71, 180, 242, 246, 9, 78, 72, 75, 32.25787 + 255, 68, 48, 223, 205, 229, 215, 248, 217, 217, 63, 76, 79, 69, 231, 205, 32.25788 + 225, 185, 245, 208, 186, 49, 31, 76, 126, 68, 169, 205, 204, 150, 109, 121, 32.25789 + 114, 93, 107, 99, 85, 70, 62, 61, 66, 70, 72, 74, 70, 66, 64, 65, 32.25790 + 65, 64, 63, 46, 33, 23, 25, 30, 30, 29, 32, 27, 26, 27, 28, 30, 32.25791 + 33, 36, 37, 30, 34, 42, 47, 44, 38, 43, 55, 52, 52, 51, 49, 47, 32.25792 + 47, 49, 51, 42, 43, 44, 45, 51, 57, 60, 62, 56, 88, 144, 189, 194, 32.25793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 74, 97, 51, 67, 179, 32.25794 + 212, 241, 249, 206, 194, 202, 99, 65, 69, 75, 77, 85, 79, 85, 68, 99, 32.25795 + 94, 84, 72, 84, 82, 99, 81, 145, 190, 250, 247, 255, 63, 80, 106, 171, 32.25796 + 242, 37, 57, 115, 104, 191, 228, 240, 246, 122, 112, 119, 119, 93, 106, 91, 32.25797 + 91, 91, 94, 116, 89, 74, 84, 77, 93, 66, 84, 85, 96, 79, 65, 79, 32.25798 + 74, 56, 60, 64, 55, 46, 42, 45, 50, 53, 53, 62, 58, 55, 55, 56, 32.25799 + 57, 57, 56, 46, 34, 26, 30, 36, 38, 37, 39, 37, 37, 35, 34, 35, 32.25800 + 40, 44, 46, 44, 42, 46, 51, 53, 49, 51, 54, 53, 53, 53, 51, 48, 32.25801 + 48, 48, 48, 43, 45, 47, 47, 47, 50, 53, 56, 56, 74, 117, 117, 101, 32.25802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 80, 93, 73, 134, 239, 32.25803 + 232, 240, 239, 249, 251, 236, 81, 92, 103, 112, 87, 77, 67, 53, 36, 63, 32.25804 + 92, 89, 101, 58, 69, 90, 95, 224, 236, 231, 202, 217, 59, 88, 122, 120, 32.25805 + 107, 50, 72, 225, 217, 255, 253, 242, 251, 72, 130, 114, 130, 116, 67, 67, 32.25806 + 63, 83, 50, 61, 33, 79, 81, 63, 51, 56, 26, 32, 39, 40, 40, 44, 32.25807 + 46, 43, 41, 53, 49, 47, 47, 51, 55, 55, 54, 57, 55, 53, 53, 55, 32.25808 + 57, 58, 57, 51, 42, 37, 41, 47, 48, 48, 48, 45, 44, 40, 39, 39, 32.25809 + 43, 48, 51, 55, 49, 48, 55, 62, 62, 58, 54, 56, 56, 55, 55, 53, 32.25810 + 51, 48, 46, 45, 47, 49, 47, 44, 43, 45, 49, 51, 69, 113, 186, 220, 32.25811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 93, 56, 179, 241, 252, 32.25812 + 255, 252, 255, 253, 255, 161, 46, 100, 103, 89, 84, 77, 124, 139, 200, 139, 32.25813 + 112, 109, 105, 93, 93, 87, 70, 131, 97, 58, 31, 92, 83, 110, 116, 123, 32.25814 + 80, 149, 211, 250, 243, 202, 208, 231, 175, 77, 98, 84, 103, 90, 89, 75, 32.25815 + 74, 69, 49, 53, 45, 54, 32, 55, 41, 44, 37, 46, 40, 44, 49, 42, 32.25816 + 48, 54, 46, 45, 43, 43, 45, 48, 51, 50, 49, 58, 57, 55, 56, 57, 32.25817 + 58, 58, 57, 59, 53, 50, 51, 54, 54, 52, 50, 52, 50, 47, 46, 47, 32.25818 + 49, 52, 54, 56, 51, 50, 55, 63, 66, 63, 58, 62, 61, 62, 61, 60, 32.25819 + 56, 50, 47, 48, 45, 45, 46, 44, 41, 41, 45, 37, 51, 60, 190, 255, 32.25820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 85, 75, 255, 255, 179, 32.25821 + 206, 227, 243, 255, 252, 76, 68, 116, 82, 76, 178, 208, 232, 224, 253, 89, 32.25822 + 84, 110, 132, 115, 125, 115, 91, 89, 107, 108, 95, 124, 128, 119, 100, 96, 32.25823 + 82, 219, 236, 185, 146, 62, 116, 153, 57, 70, 73, 64, 64, 40, 69, 52, 32.25824 + 53, 42, 42, 36, 52, 38, 24, 55, 50, 45, 55, 45, 31, 40, 51, 43, 32.25825 + 48, 52, 35, 38, 37, 39, 41, 45, 48, 49, 49, 55, 53, 51, 51, 53, 32.25826 + 54, 53, 52, 58, 56, 54, 53, 55, 56, 55, 52, 55, 55, 55, 55, 56, 32.25827 + 56, 56, 56, 51, 54, 57, 60, 63, 67, 67, 66, 67, 67, 66, 67, 66, 32.25828 + 61, 54, 49, 50, 41, 38, 42, 45, 44, 44, 47, 56, 62, 47, 255, 255, 32.25829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 139, 252, 198, 126, 32.25830 + 143, 188, 189, 180, 207, 60, 89, 93, 61, 74, 210, 253, 247, 255, 237, 69, 32.25831 + 110, 101, 123, 120, 112, 110, 120, 89, 107, 119, 121, 140, 95, 95, 107, 78, 32.25832 + 91, 223, 184, 134, 106, 39, 77, 70, 31, 65, 60, 53, 49, 35, 43, 50, 32.25833 + 45, 51, 43, 33, 44, 42, 49, 39, 38, 51, 46, 53, 33, 33, 39, 33, 32.25834 + 39, 46, 36, 38, 39, 42, 46, 49, 53, 56, 57, 53, 51, 51, 51, 52, 32.25835 + 53, 51, 49, 50, 51, 50, 49, 51, 56, 57, 52, 52, 54, 54, 55, 56, 32.25836 + 55, 53, 52, 53, 60, 66, 65, 66, 68, 70, 72, 72, 70, 68, 69, 69, 32.25837 + 65, 59, 52, 49, 41, 36, 42, 45, 44, 48, 55, 48, 48, 255, 255, 255, 32.25838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 167, 92, 49, 32.25839 + 26, 43, 18, 4, 47, 23, 42, 51, 73, 101, 169, 137, 128, 160, 123, 50, 32.25840 + 83, 65, 74, 76, 59, 70, 96, 82, 67, 66, 72, 54, 76, 62, 72, 79, 32.25841 + 52, 52, 58, 39, 63, 60, 70, 58, 67, 76, 46, 52, 55, 49, 44, 48, 32.25842 + 37, 42, 25, 43, 41, 43, 50, 32, 22, 49, 38, 62, 48, 41, 41, 35, 32.25843 + 36, 43, 44, 32, 34, 39, 43, 45, 46, 48, 48, 51, 50, 50, 51, 55, 32.25844 + 56, 54, 54, 50, 53, 52, 47, 49, 56, 57, 53, 55, 54, 55, 55, 55, 32.25845 + 56, 55, 55, 58, 65, 69, 66, 66, 69, 71, 71, 73, 72, 69, 69, 70, 32.25846 + 67, 61, 54, 47, 42, 41, 45, 42, 40, 50, 66, 72, 131, 255, 255, 255, 32.25847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 33, 44, 32.25848 + 44, 55, 40, 45, 18, 52, 34, 33, 40, 43, 41, 40, 42, 50, 44, 57, 32.25849 + 35, 47, 48, 47, 62, 71, 52, 66, 62, 62, 46, 49, 52, 46, 55, 45, 32.25850 + 60, 53, 64, 66, 76, 71, 59, 66, 47, 71, 53, 44, 53, 37, 50, 37, 32.25851 + 39, 41, 42, 38, 42, 32, 34, 56, 29, 45, 39, 38, 40, 49, 57, 53, 32.25852 + 41, 35, 37, 40, 44, 49, 53, 53, 50, 48, 47, 47, 48, 47, 50, 54, 32.25853 + 56, 55, 54, 56, 60, 56, 50, 50, 56, 58, 53, 64, 63, 61, 60, 60, 32.25854 + 62, 64, 65, 61, 66, 67, 64, 66, 70, 69, 64, 73, 70, 67, 67, 68, 32.25855 + 67, 60, 55, 44, 44, 46, 47, 40, 35, 51, 74, 80, 255, 255, 255, 255, 32.25856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 47, 32.25857 + 45, 47, 49, 43, 47, 47, 44, 43, 45, 45, 42, 44, 45, 44, 43, 41, 32.25858 + 42, 45, 47, 58, 69, 59, 58, 71, 42, 52, 39, 40, 42, 43, 46, 47, 32.25859 + 48, 50, 52, 59, 60, 61, 62, 62, 60, 58, 57, 51, 49, 47, 43, 42, 32.25860 + 41, 40, 40, 37, 40, 43, 42, 38, 37, 38, 40, 36, 39, 38, 39, 48, 32.25861 + 58, 54, 41, 52, 51, 52, 52, 52, 52, 50, 48, 53, 54, 53, 56, 57, 32.25862 + 58, 55, 53, 55, 60, 64, 65, 61, 56, 53, 53, 63, 64, 64, 64, 63, 32.25863 + 61, 59, 58, 64, 65, 66, 67, 67, 68, 69, 72, 72, 66, 75, 77, 66, 32.25864 + 70, 70, 48, 39, 48, 56, 55, 45, 41, 57, 77, 164, 255, 255, 255, 255, 32.25865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 50, 32.25866 + 49, 50, 52, 41, 44, 44, 41, 40, 42, 42, 39, 47, 47, 46, 44, 40, 32.25867 + 40, 40, 41, 53, 67, 61, 54, 65, 40, 47, 31, 31, 34, 36, 39, 41, 32.25868 + 43, 45, 47, 53, 54, 55, 55, 55, 54, 54, 53, 52, 51, 47, 44, 42, 32.25869 + 40, 40, 41, 42, 42, 40, 41, 41, 41, 40, 37, 34, 37, 40, 42, 48, 32.25870 + 56, 59, 57, 54, 57, 58, 55, 52, 49, 51, 54, 61, 59, 58, 59, 61, 32.25871 + 63, 62, 61, 62, 64, 65, 64, 62, 60, 58, 58, 63, 64, 64, 65, 65, 32.25872 + 64, 64, 63, 59, 62, 66, 70, 72, 75, 78, 81, 83, 75, 81, 81, 68, 32.25873 + 70, 68, 48, 46, 47, 45, 43, 46, 56, 74, 85, 255, 255, 255, 255, 255, 32.25874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 50, 32.25875 + 48, 48, 48, 41, 44, 43, 40, 40, 42, 42, 39, 46, 47, 46, 45, 42, 32.25876 + 40, 39, 40, 47, 63, 68, 56, 61, 46, 53, 31, 34, 37, 40, 42, 42, 32.25877 + 42, 44, 46, 49, 50, 51, 51, 52, 52, 53, 53, 55, 53, 48, 44, 41, 32.25878 + 40, 41, 41, 46, 42, 38, 39, 43, 44, 40, 35, 36, 36, 42, 47, 51, 32.25879 + 52, 61, 68, 48, 58, 70, 74, 68, 61, 57, 57, 67, 66, 64, 64, 65, 32.25880 + 66, 65, 64, 69, 67, 65, 64, 66, 66, 65, 64, 66, 67, 67, 68, 69, 32.25881 + 70, 70, 71, 68, 71, 74, 77, 78, 79, 80, 82, 88, 82, 84, 84, 73, 32.25882 + 73, 69, 54, 47, 57, 59, 52, 49, 55, 63, 64, 255, 255, 255, 255, 255, 32.25883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.25884 + 42, 40, 38, 42, 45, 44, 41, 41, 44, 44, 43, 40, 43, 44, 45, 43, 32.25885 + 43, 42, 42, 38, 55, 73, 59, 62, 57, 63, 39, 41, 45, 47, 45, 42, 32.25886 + 41, 42, 45, 53, 53, 52, 53, 54, 56, 57, 59, 58, 55, 48, 43, 40, 32.25887 + 40, 41, 42, 45, 43, 40, 41, 42, 43, 41, 38, 44, 39, 44, 54, 56, 32.25888 + 53, 58, 68, 73, 72, 67, 62, 58, 60, 67, 73, 67, 66, 66, 68, 69, 32.25889 + 69, 68, 66, 73, 69, 66, 68, 71, 72, 69, 68, 72, 72, 70, 70, 71, 32.25890 + 72, 73, 74, 71, 74, 77, 80, 81, 83, 85, 88, 86, 84, 83, 82, 80, 32.25891 + 78, 72, 65, 59, 83, 92, 73, 51, 47, 52, 255, 255, 255, 255, 255, 255, 32.25892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.25893 + 42, 39, 37, 42, 45, 44, 40, 40, 44, 45, 44, 38, 41, 43, 45, 44, 32.25894 + 43, 44, 44, 36, 48, 79, 64, 62, 61, 67, 42, 39, 42, 43, 40, 36, 32.25895 + 36, 39, 44, 59, 59, 57, 56, 56, 59, 61, 63, 60, 57, 50, 43, 39, 32.25896 + 40, 41, 44, 42, 43, 44, 42, 39, 40, 42, 44, 47, 42, 47, 58, 64, 32.25897 + 60, 59, 63, 72, 71, 69, 70, 71, 68, 62, 57, 62, 62, 63, 67, 70, 32.25898 + 73, 70, 69, 74, 72, 71, 74, 77, 76, 72, 69, 75, 73, 71, 69, 68, 32.25899 + 69, 69, 71, 60, 64, 70, 76, 82, 89, 96, 101, 90, 89, 83, 82, 86, 32.25900 + 82, 74, 73, 74, 94, 98, 76, 53, 49, 54, 54, 255, 255, 255, 255, 255, 32.25901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.25902 + 46, 45, 44, 41, 43, 42, 38, 38, 43, 44, 42, 43, 45, 46, 45, 44, 32.25903 + 44, 45, 46, 41, 43, 85, 74, 64, 62, 65, 44, 43, 45, 44, 40, 35, 32.25904 + 37, 44, 51, 65, 63, 60, 58, 57, 59, 61, 65, 63, 58, 50, 42, 38, 32.25905 + 38, 41, 44, 40, 43, 45, 43, 40, 40, 44, 49, 49, 47, 53, 63, 70, 32.25906 + 70, 66, 65, 61, 62, 67, 78, 87, 87, 79, 71, 67, 66, 64, 65, 68, 32.25907 + 71, 72, 71, 71, 70, 71, 73, 73, 72, 69, 67, 69, 69, 67, 65, 63, 32.25908 + 62, 60, 61, 55, 59, 63, 68, 74, 82, 91, 96, 95, 95, 84, 82, 86, 32.25909 + 78, 67, 72, 61, 69, 71, 65, 60, 56, 45, 31, 255, 255, 255, 255, 255, 32.25910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.25911 + 47, 47, 47, 42, 44, 42, 38, 39, 45, 46, 44, 46, 46, 48, 47, 47, 32.25912 + 48, 51, 53, 47, 42, 93, 86, 72, 67, 66, 52, 56, 57, 53, 45, 38, 32.25913 + 39, 47, 56, 73, 71, 65, 61, 59, 60, 61, 65, 64, 60, 50, 42, 38, 32.25914 + 38, 41, 45, 41, 41, 40, 40, 41, 43, 47, 50, 54, 61, 67, 68, 69, 32.25915 + 72, 71, 69, 82, 71, 58, 55, 63, 81, 98, 108, 88, 82, 72, 65, 62, 32.25916 + 63, 65, 66, 61, 62, 63, 61, 58, 58, 57, 59, 60, 60, 59, 58, 56, 32.25917 + 54, 51, 51, 55, 56, 57, 57, 61, 68, 76, 82, 93, 93, 78, 73, 79, 32.25918 + 68, 54, 64, 47, 46, 47, 54, 63, 68, 65, 61, 255, 255, 255, 255, 255, 32.25919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 44, 32.25920 + 43, 43, 43, 45, 47, 45, 42, 43, 48, 50, 49, 44, 46, 47, 49, 50, 32.25921 + 54, 60, 63, 50, 40, 98, 95, 80, 75, 74, 64, 69, 68, 60, 48, 38, 32.25922 + 36, 43, 52, 79, 75, 69, 63, 61, 61, 64, 67, 64, 60, 50, 41, 37, 32.25923 + 38, 41, 44, 43, 39, 36, 39, 44, 48, 49, 47, 61, 75, 79, 71, 66, 32.25924 + 69, 72, 69, 69, 70, 73, 74, 74, 73, 72, 70, 113, 100, 82, 65, 56, 32.25925 + 54, 56, 58, 52, 53, 52, 48, 43, 43, 46, 51, 52, 52, 52, 52, 51, 32.25926 + 48, 45, 44, 46, 46, 46, 49, 54, 63, 74, 82, 84, 86, 69, 64, 73, 32.25927 + 59, 45, 57, 58, 50, 41, 44, 58, 86, 123, 152, 255, 255, 255, 255, 255, 32.25928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 43, 32.25929 + 44, 44, 43, 46, 41, 41, 46, 47, 44, 45, 50, 39, 46, 51, 49, 47, 32.25930 + 51, 63, 75, 47, 33, 76, 107, 77, 75, 84, 56, 71, 66, 64, 60, 44, 32.25931 + 30, 36, 53, 71, 61, 64, 67, 59, 56, 63, 66, 75, 59, 46, 46, 43, 32.25932 + 37, 38, 45, 36, 39, 41, 41, 41, 45, 50, 55, 59, 72, 77, 70, 69, 32.25933 + 76, 79, 75, 70, 71, 71, 73, 75, 75, 72, 69, 82, 111, 114, 75, 44, 32.25934 + 48, 58, 56, 50, 57, 52, 47, 51, 42, 36, 52, 49, 36, 38, 52, 46, 32.25935 + 45, 52, 36, 39, 30, 49, 56, 41, 54, 77, 71, 76, 70, 62, 79, 57, 32.25936 + 36, 58, 46, 59, 43, 50, 42, 46, 85, 101, 100, 255, 255, 255, 255, 255, 32.25937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 41, 42, 32.25938 + 43, 42, 42, 44, 41, 40, 44, 45, 44, 45, 50, 44, 52, 60, 61, 58, 32.25939 + 61, 70, 79, 65, 51, 80, 105, 90, 88, 92, 69, 73, 68, 68, 67, 56, 32.25940 + 45, 51, 65, 84, 73, 74, 78, 70, 69, 74, 73, 67, 53, 43, 43, 43, 32.25941 + 39, 40, 47, 46, 48, 49, 49, 50, 53, 60, 65, 69, 80, 85, 79, 77, 32.25942 + 83, 85, 82, 79, 78, 77, 78, 78, 77, 75, 72, 68, 55, 79, 126, 129, 32.25943 + 82, 50, 55, 55, 25, 35, 48, 40, 41, 65, 37, 35, 61, 60, 43, 38, 32.25944 + 36, 61, 37, 41, 59, 53, 53, 52, 44, 62, 89, 67, 51, 50, 38, 24, 32.25945 + 37, 41, 30, 61, 32, 33, 45, 50, 38, 36, 72, 255, 255, 255, 255, 255, 32.25946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 42, 42, 32.25947 + 43, 42, 41, 43, 41, 39, 43, 43, 45, 48, 52, 51, 60, 69, 73, 71, 32.25948 + 72, 76, 82, 75, 63, 73, 89, 93, 95, 89, 72, 74, 69, 70, 72, 69, 32.25949 + 62, 67, 77, 88, 76, 77, 81, 76, 75, 77, 72, 64, 52, 45, 46, 46, 32.25950 + 43, 42, 47, 48, 49, 50, 51, 52, 56, 62, 67, 74, 82, 86, 81, 80, 32.25951 + 85, 86, 82, 84, 80, 77, 75, 75, 74, 71, 69, 67, 76, 69, 60, 89, 32.25952 + 133, 135, 106, 58, 102, 80, 44, 67, 43, 51, 47, 35, 39, 27, 34, 61, 32.25953 + 38, 44, 42, 23, 54, 47, 41, 35, 44, 77, 72, 92, 83, 119, 115, 102, 32.25954 + 108, 87, 91, 65, 127, 130, 78, 94, 125, 100, 87, 255, 255, 255, 255, 255, 32.25955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 46, 46, 45, 32.25956 + 44, 42, 42, 43, 42, 42, 44, 47, 50, 54, 57, 61, 67, 75, 80, 80, 32.25957 + 79, 82, 84, 78, 71, 64, 74, 93, 95, 80, 69, 72, 67, 68, 72, 72, 32.25958 + 70, 72, 79, 86, 75, 76, 80, 76, 77, 75, 65, 68, 59, 51, 52, 51, 32.25959 + 47, 46, 47, 50, 50, 51, 52, 54, 59, 65, 68, 78, 82, 84, 82, 82, 32.25960 + 86, 87, 82, 87, 83, 77, 73, 71, 69, 68, 68, 73, 69, 61, 58, 79, 32.25961 + 112, 132, 134, 122, 75, 44, 54, 71, 37, 64, 40, 43, 48, 38, 35, 59, 32.25962 + 65, 35, 62, 57, 30, 37, 66, 36, 57, 121, 86, 94, 88, 120, 130, 104, 32.25963 + 76, 75, 115, 120, 173, 170, 133, 145, 129, 89, 116, 255, 255, 255, 255, 255, 32.25964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 47, 49, 49, 47, 32.25965 + 44, 43, 41, 45, 47, 49, 51, 55, 61, 66, 68, 74, 78, 82, 84, 84, 32.25966 + 85, 87, 89, 84, 81, 69, 74, 97, 100, 82, 75, 72, 69, 69, 70, 71, 32.25967 + 72, 73, 76, 87, 79, 80, 84, 81, 82, 78, 65, 68, 61, 54, 54, 54, 32.25968 + 51, 50, 50, 56, 55, 57, 60, 63, 68, 72, 74, 84, 85, 85, 85, 87, 32.25969 + 91, 89, 84, 92, 86, 80, 76, 74, 72, 71, 70, 69, 59, 66, 87, 88, 32.25970 + 69, 68, 84, 116, 104, 79, 49, 35, 26, 57, 31, 29, 16, 32, 46, 37, 32.25971 + 52, 32, 175, 132, 78, 102, 163, 120, 82, 107, 86, 66, 55, 37, 49, 44, 32.25972 + 35, 87, 140, 167, 161, 140, 130, 126, 57, 27, 161, 255, 255, 255, 255, 255, 32.25973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 46, 50, 52, 51, 32.25974 + 48, 46, 45, 50, 55, 59, 62, 69, 77, 82, 80, 90, 90, 91, 91, 92, 32.25975 + 93, 94, 94, 86, 87, 79, 79, 94, 99, 89, 84, 77, 75, 74, 71, 71, 32.25976 + 72, 74, 76, 84, 80, 85, 87, 83, 84, 80, 67, 63, 57, 52, 51, 52, 32.25977 + 54, 54, 53, 56, 56, 59, 63, 68, 72, 74, 74, 85, 82, 80, 83, 89, 32.25978 + 92, 90, 85, 88, 83, 78, 75, 74, 73, 72, 72, 70, 84, 79, 60, 58, 32.25979 + 72, 67, 45, 52, 134, 142, 88, 56, 38, 19, 34, 61, 37, 45, 42, 35, 32.25980 + 69, 67, 219, 255, 237, 209, 184, 134, 73, 44, 51, 89, 88, 51, 70, 106, 32.25981 + 121, 150, 149, 91, 87, 68, 42, 39, 27, 43, 255, 255, 255, 255, 255, 255, 32.25982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 61, 41, 45, 54, 59, 59, 32.25983 + 57, 55, 56, 55, 62, 70, 74, 82, 92, 96, 95, 99, 97, 97, 98, 99, 32.25984 + 98, 96, 93, 85, 87, 84, 81, 82, 90, 93, 90, 81, 81, 79, 74, 71, 32.25985 + 72, 76, 79, 80, 82, 90, 91, 84, 86, 84, 70, 66, 61, 55, 51, 52, 32.25986 + 56, 56, 54, 52, 53, 56, 62, 68, 72, 70, 69, 85, 81, 78, 84, 92, 32.25987 + 96, 91, 86, 81, 78, 76, 75, 75, 75, 74, 73, 75, 72, 70, 72, 75, 32.25988 + 74, 66, 58, 58, 18, 66, 136, 113, 108, 48, 29, 22, 46, 53, 32, 115, 32.25989 + 219, 237, 252, 207, 138, 79, 27, 26, 45, 55, 112, 160, 148, 123, 141, 188, 32.25990 + 183, 126, 72, 63, 39, 42, 46, 51, 73, 133, 255, 255, 255, 255, 255, 255, 32.25991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 65, 41, 48, 58, 65, 66, 32.25992 + 65, 65, 66, 57, 66, 74, 81, 89, 101, 105, 102, 100, 98, 98, 100, 101, 32.25993 + 99, 94, 90, 85, 87, 89, 83, 74, 85, 97, 96, 82, 83, 81, 74, 69, 32.25994 + 70, 77, 80, 82, 87, 97, 98, 89, 91, 89, 76, 74, 68, 60, 53, 53, 32.25995 + 56, 56, 53, 50, 52, 55, 63, 70, 71, 70, 67, 90, 84, 82, 89, 99, 32.25996 + 103, 98, 93, 84, 82, 80, 80, 81, 81, 81, 81, 73, 75, 74, 70, 68, 32.25997 + 70, 71, 70, 44, 44, 48, 79, 127, 199, 84, 34, 57, 28, 33, 89, 221, 32.25998 + 236, 255, 239, 201, 47, 21, 44, 51, 53, 55, 121, 206, 162, 146, 162, 209, 32.25999 + 193, 95, 51, 55, 41, 58, 54, 51, 101, 255, 255, 255, 255, 255, 255, 255, 32.26000 + 255, 255, 255, 255, 255, 255, 255, 255, 75, 73, 130, 111, 111, 86, 68, 83, 32.26001 + 94, 81, 70, 65, 69, 82, 89, 90, 102, 109, 100, 108, 92, 97, 107, 102, 32.26002 + 95, 96, 96, 95, 94, 91, 88, 84, 81, 79, 77, 91, 90, 83, 70, 65, 32.26003 + 71, 79, 82, 92, 94, 95, 95, 92, 88, 84, 81, 74, 76, 76, 70, 63, 32.26004 + 58, 58, 59, 43, 49, 56, 60, 61, 66, 74, 82, 83, 94, 100, 98, 96, 32.26005 + 99, 97, 91, 89, 90, 90, 90, 88, 84, 80, 77, 80, 84, 85, 81, 78, 32.26006 + 78, 73, 68, 85, 36, 66, 52, 51, 67, 172, 205, 27, 53, 183, 250, 249, 32.26007 + 247, 232, 120, 65, 30, 56, 55, 33, 57, 89, 114, 146, 78, 107, 127, 86, 32.26008 + 63, 49, 46, 48, 51, 55, 60, 77, 194, 255, 255, 255, 255, 255, 255, 255, 32.26009 + 255, 255, 255, 255, 255, 255, 255, 202, 101, 117, 167, 183, 171, 156, 125, 93, 32.26010 + 97, 103, 89, 85, 79, 91, 106, 106, 108, 115, 114, 102, 89, 94, 106, 102, 32.26011 + 99, 101, 101, 100, 99, 95, 92, 88, 85, 83, 81, 78, 82, 84, 78, 78, 32.26012 + 82, 86, 87, 93, 95, 94, 94, 90, 86, 83, 82, 77, 76, 73, 71, 70, 32.26013 + 68, 65, 64, 57, 61, 64, 66, 65, 68, 74, 80, 83, 89, 91, 88, 89, 32.26014 + 96, 100, 100, 93, 95, 95, 94, 91, 87, 83, 83, 81, 86, 85, 80, 78, 32.26015 + 77, 74, 69, 59, 72, 75, 37, 65, 52, 112, 180, 152, 189, 250, 222, 117, 32.26016 + 81, 82, 21, 68, 49, 49, 43, 53, 69, 76, 109, 114, 44, 49, 67, 58, 32.26017 + 56, 44, 36, 56, 36, 49, 104, 170, 255, 255, 255, 255, 255, 255, 255, 255, 32.26018 + 255, 255, 255, 255, 255, 255, 96, 132, 156, 169, 195, 193, 181, 188, 162, 106, 32.26019 + 109, 133, 117, 99, 85, 94, 114, 113, 107, 113, 119, 105, 93, 98, 109, 105, 32.26020 + 103, 106, 104, 100, 98, 95, 92, 87, 84, 82, 80, 68, 74, 78, 78, 80, 32.26021 + 84, 88, 88, 96, 97, 95, 93, 88, 84, 83, 83, 81, 77, 74, 74, 77, 32.26022 + 78, 75, 71, 71, 73, 74, 73, 70, 71, 76, 80, 83, 87, 89, 89, 90, 32.26023 + 96, 101, 102, 95, 99, 100, 99, 95, 90, 89, 90, 88, 91, 88, 82, 77, 32.26024 + 76, 73, 68, 71, 58, 65, 44, 53, 31, 74, 107, 100, 163, 207, 151, 38, 32.26025 + 27, 52, 46, 49, 54, 44, 47, 87, 84, 52, 73, 71, 49, 51, 47, 43, 32.26026 + 56, 53, 46, 39, 48, 97, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26027 + 255, 255, 255, 255, 255, 125, 125, 161, 182, 180, 186, 194, 188, 195, 172, 123, 32.26028 + 113, 117, 97, 104, 91, 97, 110, 109, 105, 109, 111, 112, 101, 106, 114, 108, 32.26029 + 106, 108, 104, 100, 99, 96, 93, 88, 85, 83, 82, 75, 76, 76, 77, 78, 32.26030 + 84, 89, 90, 97, 99, 97, 92, 86, 82, 83, 84, 82, 80, 77, 77, 78, 32.26031 + 80, 79, 78, 78, 78, 77, 76, 74, 76, 80, 83, 83, 89, 96, 99, 99, 32.26032 + 99, 98, 96, 96, 100, 102, 101, 96, 92, 92, 94, 95, 97, 91, 83, 78, 32.26033 + 75, 71, 66, 59, 39, 60, 48, 42, 55, 98, 81, 97, 135, 135, 101, 36, 32.26034 + 43, 46, 47, 40, 51, 47, 60, 98, 90, 52, 48, 40, 64, 71, 51, 47, 32.26035 + 56, 53, 46, 38, 107, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26036 + 255, 255, 255, 255, 124, 127, 150, 183, 197, 190, 189, 202, 205, 193, 174, 163, 32.26037 + 145, 123, 109, 111, 106, 109, 111, 107, 114, 116, 106, 112, 103, 107, 114, 108, 32.26038 + 108, 110, 104, 105, 104, 102, 99, 96, 93, 90, 89, 83, 82, 84, 87, 89, 32.26039 + 91, 92, 94, 97, 99, 97, 92, 84, 81, 83, 87, 80, 83, 82, 81, 78, 32.26040 + 77, 80, 83, 80, 80, 79, 79, 78, 82, 86, 89, 90, 93, 98, 101, 100, 32.26041 + 95, 93, 92, 95, 98, 99, 99, 96, 94, 94, 95, 94, 95, 92, 85, 81, 32.26042 + 80, 76, 72, 57, 63, 65, 44, 59, 76, 91, 77, 53, 56, 31, 28, 19, 32.26043 + 41, 39, 51, 59, 51, 53, 68, 78, 85, 83, 59, 36, 43, 35, 37, 44, 32.26044 + 39, 43, 58, 94, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26045 + 255, 255, 255, 130, 143, 145, 191, 214, 214, 201, 194, 196, 199, 181, 172, 187, 32.26046 + 182, 161, 156, 121, 117, 117, 112, 109, 118, 121, 106, 106, 98, 104, 111, 107, 32.26047 + 111, 113, 106, 104, 103, 102, 100, 97, 95, 92, 92, 82, 82, 89, 97, 102, 32.26048 + 98, 92, 91, 96, 99, 98, 92, 84, 81, 83, 88, 80, 83, 85, 81, 77, 32.26049 + 76, 80, 85, 84, 83, 81, 81, 82, 86, 90, 93, 97, 94, 94, 94, 92, 32.26050 + 89, 91, 96, 97, 97, 96, 97, 98, 97, 97, 96, 90, 93, 93, 89, 87, 32.26051 + 88, 86, 82, 81, 23, 22, 65, 86, 73, 67, 61, 51, 50, 36, 37, 39, 32.26052 + 43, 44, 62, 58, 44, 58, 79, 67, 83, 106, 67, 63, 47, 34, 58, 60, 32.26053 + 44, 90, 155, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26054 + 255, 215, 122, 142, 163, 163, 207, 210, 205, 193, 184, 199, 194, 188, 182, 176, 32.26055 + 175, 172, 165, 129, 117, 114, 116, 113, 114, 117, 109, 106, 100, 106, 111, 108, 32.26056 + 113, 116, 108, 102, 102, 100, 99, 97, 95, 94, 93, 87, 86, 90, 101, 104, 32.26057 + 98, 92, 92, 93, 98, 98, 94, 85, 81, 84, 89, 84, 84, 82, 80, 79, 32.26058 + 81, 84, 86, 88, 85, 81, 80, 81, 84, 86, 89, 93, 90, 91, 94, 94, 32.26059 + 91, 94, 101, 101, 98, 95, 98, 102, 104, 101, 98, 93, 97, 98, 96, 94, 32.26060 + 95, 92, 88, 77, 39, 49, 96, 109, 93, 72, 53, 32, 39, 47, 42, 48, 32.26061 + 38, 42, 49, 46, 44, 58, 80, 68, 86, 115, 78, 34, 37, 32, 50, 45, 32.26062 + 50, 127, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26063 + 255, 157, 144, 182, 203, 184, 207, 193, 196, 201, 198, 186, 176, 196, 198, 164, 32.26064 + 167, 185, 171, 137, 114, 110, 121, 117, 111, 112, 114, 112, 108, 113, 115, 111, 32.26065 + 115, 117, 108, 105, 105, 103, 103, 101, 100, 99, 100, 105, 98, 96, 102, 103, 32.26066 + 100, 98, 101, 92, 97, 99, 95, 86, 82, 84, 90, 86, 83, 78, 78, 82, 32.26067 + 87, 87, 86, 89, 86, 80, 76, 76, 78, 79, 81, 85, 85, 93, 102, 104, 32.26068 + 99, 98, 103, 105, 100, 96, 99, 106, 109, 105, 100, 100, 104, 105, 101, 98, 32.26069 + 96, 92, 86, 73, 209, 197, 112, 120, 117, 51, 29, 41, 39, 46, 30, 49, 32.26070 + 48, 57, 45, 56, 59, 54, 65, 66, 88, 127, 106, 60, 84, 79, 82, 93, 32.26071 + 138, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26072 + 179, 179, 184, 205, 200, 196, 196, 196, 195, 191, 188, 187, 182, 184, 189, 175, 32.26073 + 159, 169, 192, 165, 113, 120, 100, 138, 124, 124, 103, 115, 119, 111, 105, 115, 32.26074 + 120, 116, 119, 117, 105, 101, 110, 112, 104, 103, 112, 108, 100, 99, 108, 110, 32.26075 + 102, 98, 101, 91, 92, 92, 90, 92, 93, 88, 82, 87, 86, 82, 80, 83, 32.26076 + 88, 89, 87, 90, 89, 85, 80, 79, 83, 85, 86, 86, 90, 92, 90, 92, 32.26077 + 98, 102, 103, 104, 102, 96, 93, 100, 110, 108, 100, 89, 85, 84, 90, 103, 32.26078 + 108, 93, 75, 87, 197, 125, 47, 72, 101, 16, 50, 50, 47, 44, 44, 48, 32.26079 + 53, 57, 58, 61, 49, 72, 69, 68, 88, 93, 109, 84, 85, 121, 152, 206, 32.26080 + 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26081 + 188, 196, 206, 204, 200, 198, 197, 198, 197, 193, 191, 202, 200, 196, 189, 176, 32.26082 + 165, 162, 165, 180, 150, 128, 118, 108, 128, 118, 122, 113, 119, 114, 110, 120, 32.26083 + 122, 117, 116, 119, 110, 105, 109, 109, 104, 102, 108, 103, 98, 100, 111, 113, 32.26084 + 104, 100, 103, 99, 98, 95, 93, 96, 97, 89, 78, 86, 83, 81, 85, 87, 32.26085 + 87, 87, 86, 89, 89, 86, 85, 84, 85, 85, 85, 85, 90, 92, 90, 91, 32.26086 + 97, 101, 101, 101, 99, 93, 91, 98, 106, 105, 98, 87, 80, 83, 96, 104, 32.26087 + 99, 92, 89, 95, 104, 139, 147, 53, 61, 59, 64, 53, 50, 47, 47, 50, 32.26088 + 54, 56, 57, 66, 55, 74, 71, 69, 86, 89, 102, 119, 146, 197, 204, 215, 32.26089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26090 + 255, 197, 201, 202, 199, 197, 197, 198, 198, 195, 194, 181, 187, 188, 185, 187, 32.26091 + 192, 187, 178, 171, 158, 126, 113, 92, 130, 115, 124, 112, 120, 118, 115, 125, 32.26092 + 125, 117, 115, 120, 116, 111, 106, 105, 104, 102, 102, 101, 100, 105, 115, 112, 32.26093 + 103, 99, 102, 97, 96, 91, 91, 94, 95, 86, 74, 80, 76, 78, 87, 90, 32.26094 + 86, 85, 88, 89, 89, 87, 88, 87, 86, 85, 85, 84, 89, 91, 89, 89, 32.26095 + 94, 98, 97, 97, 95, 90, 90, 96, 102, 101, 96, 87, 79, 85, 101, 104, 32.26096 + 92, 92, 104, 97, 61, 107, 155, 68, 53, 54, 64, 48, 47, 47, 49, 53, 32.26097 + 56, 56, 56, 65, 58, 74, 74, 71, 83, 88, 95, 115, 166, 236, 228, 255, 32.26098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26099 + 255, 197, 197, 198, 197, 196, 196, 197, 197, 196, 196, 194, 195, 193, 189, 191, 32.26100 + 192, 186, 176, 177, 165, 148, 120, 130, 148, 130, 116, 116, 125, 121, 118, 127, 32.26101 + 128, 119, 118, 119, 118, 112, 104, 101, 104, 102, 98, 105, 105, 110, 114, 108, 32.26102 + 99, 96, 99, 87, 89, 89, 88, 90, 91, 86, 78, 76, 70, 73, 84, 89, 32.26103 + 84, 85, 93, 90, 87, 86, 88, 87, 84, 83, 86, 82, 88, 90, 88, 88, 32.26104 + 92, 94, 93, 95, 93, 89, 90, 95, 99, 98, 95, 89, 87, 92, 101, 102, 32.26105 + 96, 96, 103, 89, 71, 67, 83, 62, 59, 33, 47, 47, 47, 49, 53, 57, 32.26106 + 61, 62, 60, 65, 64, 77, 80, 77, 89, 96, 96, 88, 142, 222, 222, 255, 32.26107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26108 + 255, 239, 212, 200, 200, 200, 201, 200, 199, 200, 200, 207, 201, 198, 197, 193, 32.26109 + 183, 180, 183, 179, 177, 168, 144, 149, 150, 119, 108, 124, 130, 123, 118, 126, 32.26110 + 129, 122, 123, 117, 116, 109, 102, 99, 103, 103, 99, 106, 107, 110, 109, 104, 32.26111 + 98, 98, 102, 86, 92, 94, 91, 88, 88, 87, 85, 83, 77, 78, 84, 86, 32.26112 + 83, 87, 95, 92, 87, 82, 84, 83, 80, 82, 88, 82, 88, 90, 87, 87, 32.26113 + 90, 91, 90, 94, 91, 89, 92, 96, 97, 97, 96, 93, 98, 100, 95, 97, 32.26114 + 103, 100, 92, 83, 59, 68, 61, 21, 44, 50, 41, 53, 54, 56, 59, 63, 32.26115 + 65, 65, 64, 69, 72, 79, 84, 83, 92, 104, 96, 88, 131, 214, 223, 255, 32.26116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26117 + 255, 255, 208, 203, 205, 206, 205, 203, 203, 204, 205, 197, 191, 193, 197, 194, 32.26118 + 187, 192, 202, 167, 182, 170, 172, 147, 143, 100, 124, 130, 135, 125, 118, 126, 32.26119 + 130, 125, 127, 117, 112, 104, 101, 99, 99, 100, 100, 103, 104, 104, 103, 101, 32.26120 + 101, 102, 104, 90, 94, 93, 88, 83, 84, 83, 82, 93, 91, 90, 86, 84, 32.26121 + 84, 87, 90, 94, 86, 80, 83, 81, 78, 81, 90, 84, 89, 91, 88, 86, 32.26122 + 89, 89, 87, 94, 90, 89, 93, 96, 95, 95, 96, 96, 104, 102, 91, 93, 32.26123 + 103, 97, 80, 81, 50, 67, 66, 32, 49, 62, 54, 55, 55, 55, 57, 60, 32.26124 + 61, 59, 58, 66, 74, 73, 80, 79, 85, 101, 87, 94, 119, 203, 226, 255, 32.26125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26126 + 255, 255, 255, 204, 206, 208, 206, 203, 201, 203, 204, 203, 203, 201, 194, 189, 32.26127 + 188, 186, 185, 180, 187, 187, 192, 178, 146, 105, 142, 133, 138, 127, 121, 128, 32.26128 + 131, 126, 128, 119, 108, 100, 101, 99, 93, 94, 100, 99, 100, 100, 100, 103, 32.26129 + 104, 103, 100, 95, 93, 86, 81, 82, 87, 84, 79, 89, 97, 97, 87, 83, 32.26130 + 87, 89, 84, 93, 85, 81, 87, 85, 79, 81, 89, 84, 90, 92, 89, 87, 32.26131 + 88, 88, 86, 92, 88, 88, 94, 96, 93, 93, 96, 95, 99, 98, 92, 92, 32.26132 + 94, 87, 77, 80, 61, 62, 62, 69, 66, 49, 56, 53, 52, 52, 54, 57, 32.26133 + 60, 59, 59, 64, 74, 70, 79, 80, 87, 106, 88, 104, 98, 176, 219, 255, 32.26134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26135 + 255, 255, 255, 203, 206, 205, 204, 200, 197, 199, 200, 196, 205, 202, 188, 188, 32.26136 + 198, 194, 179, 196, 176, 194, 180, 207, 130, 98, 117, 133, 138, 128, 122, 129, 32.26137 + 132, 125, 126, 121, 106, 98, 102, 99, 89, 88, 99, 100, 101, 100, 101, 103, 32.26138 + 103, 98, 91, 102, 94, 82, 81, 91, 99, 95, 86, 77, 94, 96, 84, 81, 32.26139 + 90, 91, 81, 92, 84, 83, 91, 90, 82, 81, 89, 85, 90, 92, 89, 87, 32.26140 + 88, 88, 85, 91, 87, 87, 93, 95, 91, 91, 95, 94, 92, 93, 95, 91, 32.26141 + 83, 77, 77, 78, 61, 75, 70, 63, 59, 47, 43, 52, 51, 52, 56, 63, 32.26142 + 68, 71, 72, 69, 81, 75, 86, 89, 98, 122, 102, 125, 90, 154, 214, 255, 32.26143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26144 + 255, 255, 255, 239, 206, 206, 205, 204, 204, 205, 206, 202, 195, 194, 199, 193, 32.26145 + 182, 186, 200, 195, 188, 182, 184, 192, 188, 163, 137, 122, 138, 134, 123, 100, 32.26146 + 143, 142, 111, 120, 110, 100, 99, 95, 85, 81, 85, 103, 102, 98, 96, 96, 32.26147 + 99, 99, 97, 97, 91, 84, 83, 85, 86, 85, 82, 84, 84, 85, 88, 91, 32.26148 + 90, 84, 80, 87, 89, 86, 80, 79, 86, 87, 84, 89, 89, 87, 86, 84, 32.26149 + 85, 88, 91, 80, 85, 89, 90, 88, 88, 91, 94, 92, 91, 88, 84, 79, 32.26150 + 76, 77, 78, 58, 59, 58, 58, 56, 52, 50, 51, 59, 59, 54, 58, 71, 32.26151 + 73, 74, 85, 86, 82, 69, 98, 89, 87, 133, 110, 111, 105, 101, 197, 211, 32.26152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26153 + 255, 255, 255, 255, 209, 208, 207, 205, 205, 204, 205, 205, 200, 199, 202, 198, 32.26154 + 191, 192, 200, 193, 188, 183, 185, 192, 190, 169, 147, 138, 126, 122, 141, 120, 32.26155 + 131, 126, 124, 116, 105, 97, 97, 92, 84, 81, 87, 93, 95, 96, 96, 97, 32.26156 + 99, 100, 100, 85, 85, 85, 84, 82, 82, 82, 83, 84, 83, 84, 86, 88, 32.26157 + 88, 83, 79, 83, 86, 86, 82, 82, 86, 86, 82, 84, 85, 87, 87, 85, 32.26158 + 84, 85, 86, 87, 87, 88, 89, 91, 92, 91, 90, 88, 87, 85, 82, 78, 32.26159 + 75, 74, 75, 74, 67, 62, 60, 53, 45, 42, 45, 46, 53, 55, 60, 70, 32.26160 + 69, 72, 85, 93, 92, 87, 107, 102, 100, 129, 118, 122, 114, 104, 182, 219, 32.26161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26162 + 255, 255, 255, 255, 241, 211, 209, 206, 205, 203, 203, 205, 204, 201, 201, 200, 32.26163 + 199, 195, 192, 189, 187, 185, 185, 191, 190, 176, 160, 150, 125, 118, 143, 130, 32.26164 + 121, 114, 123, 113, 101, 95, 95, 91, 84, 82, 88, 86, 91, 97, 99, 98, 32.26165 + 96, 97, 99, 87, 92, 96, 96, 92, 89, 91, 93, 82, 82, 82, 84, 86, 32.26166 + 85, 81, 79, 79, 83, 85, 84, 84, 86, 84, 80, 81, 83, 87, 87, 86, 32.26167 + 83, 82, 82, 90, 87, 85, 86, 90, 91, 88, 83, 83, 83, 83, 81, 76, 32.26168 + 73, 71, 71, 68, 58, 54, 59, 57, 49, 50, 58, 57, 68, 73, 79, 84, 32.26169 + 82, 84, 99, 105, 106, 109, 116, 115, 113, 121, 126, 122, 109, 89, 139, 217, 32.26170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26171 + 255, 255, 255, 255, 255, 213, 210, 208, 206, 203, 202, 203, 203, 200, 197, 198, 32.26172 + 201, 193, 183, 187, 188, 186, 184, 187, 187, 179, 169, 158, 146, 132, 130, 122, 32.26173 + 125, 120, 114, 113, 102, 95, 95, 91, 83, 82, 87, 87, 92, 99, 102, 97, 32.26174 + 90, 88, 91, 82, 85, 87, 86, 83, 81, 82, 84, 83, 82, 82, 83, 84, 32.26175 + 83, 82, 81, 79, 81, 83, 83, 84, 84, 82, 80, 82, 84, 86, 86, 84, 32.26176 + 83, 82, 83, 84, 82, 81, 83, 85, 86, 83, 81, 80, 81, 82, 79, 74, 32.26177 + 69, 66, 66, 55, 44, 45, 59, 63, 56, 57, 68, 62, 70, 72, 76, 83, 32.26178 + 80, 81, 94, 95, 99, 108, 107, 114, 116, 112, 130, 138, 122, 98, 115, 213, 32.26179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26180 + 255, 255, 255, 255, 255, 241, 211, 208, 205, 202, 200, 202, 202, 198, 196, 198, 32.26181 + 199, 190, 179, 186, 187, 186, 183, 183, 183, 179, 172, 172, 169, 148, 120, 119, 32.26182 + 125, 124, 115, 115, 104, 96, 96, 91, 83, 81, 86, 86, 90, 97, 102, 96, 32.26183 + 85, 83, 87, 90, 86, 82, 80, 81, 82, 81, 80, 83, 84, 84, 83, 82, 32.26184 + 83, 82, 83, 81, 80, 80, 82, 82, 82, 82, 84, 86, 86, 86, 84, 82, 32.26185 + 82, 83, 86, 76, 79, 82, 82, 81, 80, 82, 84, 80, 81, 80, 76, 70, 32.26186 + 65, 61, 60, 58, 49, 50, 61, 64, 53, 48, 52, 66, 68, 65, 69, 80, 32.26187 + 81, 81, 92, 82, 84, 93, 94, 103, 107, 104, 122, 128, 121, 110, 117, 221, 32.26188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26189 + 255, 255, 255, 255, 255, 255, 213, 209, 205, 201, 201, 206, 202, 198, 199, 199, 32.26190 + 196, 188, 181, 185, 186, 185, 181, 181, 182, 178, 173, 182, 171, 151, 122, 126, 32.26191 + 114, 116, 121, 115, 104, 96, 96, 92, 82, 80, 85, 83, 83, 90, 97, 95, 32.26192 + 86, 84, 90, 100, 94, 87, 85, 87, 89, 88, 86, 84, 84, 84, 82, 80, 32.26193 + 81, 83, 85, 82, 79, 79, 82, 83, 81, 83, 86, 87, 87, 85, 83, 80, 32.26194 + 81, 83, 86, 74, 79, 83, 83, 80, 79, 82, 85, 76, 77, 75, 71, 65, 32.26195 + 60, 57, 57, 60, 56, 56, 61, 61, 53, 43, 39, 64, 64, 59, 64, 77, 32.26196 + 78, 79, 89, 90, 88, 88, 95, 95, 92, 96, 98, 113, 105, 103, 114, 216, 32.26197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26198 + 255, 255, 255, 255, 255, 255, 212, 209, 205, 201, 200, 207, 199, 196, 201, 200, 32.26199 + 190, 184, 185, 184, 184, 183, 180, 182, 185, 181, 174, 176, 173, 160, 130, 137, 32.26200 + 113, 113, 121, 111, 100, 93, 94, 91, 83, 80, 86, 83, 79, 82, 92, 93, 32.26201 + 87, 86, 92, 84, 82, 80, 79, 78, 79, 78, 78, 82, 83, 82, 80, 78, 32.26202 + 78, 81, 85, 81, 78, 80, 86, 87, 83, 82, 85, 84, 85, 85, 83, 81, 32.26203 + 80, 80, 82, 77, 78, 80, 80, 79, 79, 79, 79, 70, 69, 68, 64, 59, 32.26204 + 56, 55, 57, 54, 56, 58, 57, 59, 60, 52, 41, 45, 49, 46, 48, 56, 32.26205 + 52, 52, 62, 74, 71, 66, 90, 87, 80, 99, 78, 106, 92, 99, 123, 213, 32.26206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26207 + 255, 255, 255, 255, 255, 255, 241, 209, 206, 201, 200, 208, 196, 194, 200, 197, 32.26208 + 184, 180, 187, 182, 183, 181, 180, 184, 187, 184, 176, 169, 184, 179, 140, 149, 32.26209 + 130, 127, 122, 107, 97, 90, 92, 90, 83, 81, 87, 86, 78, 79, 89, 92, 32.26210 + 86, 85, 92, 79, 83, 86, 85, 82, 80, 81, 83, 81, 82, 81, 78, 75, 32.26211 + 76, 80, 84, 78, 77, 81, 89, 90, 84, 81, 83, 80, 82, 85, 84, 82, 32.26212 + 79, 78, 77, 80, 77, 74, 75, 78, 78, 74, 70, 64, 64, 62, 58, 55, 32.26213 + 54, 56, 57, 54, 59, 59, 53, 56, 63, 57, 43, 45, 53, 52, 51, 51, 32.26214 + 42, 39, 51, 27, 29, 28, 74, 77, 75, 110, 78, 55, 53, 87, 145, 255, 32.26215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26216 + 255, 255, 255, 255, 255, 255, 255, 206, 207, 204, 200, 209, 204, 200, 197, 189, 32.26217 + 181, 180, 186, 181, 183, 183, 180, 181, 182, 179, 173, 168, 168, 168, 164, 148, 32.26218 + 131, 122, 121, 111, 103, 100, 89, 85, 87, 81, 86, 78, 80, 82, 84, 86, 32.26219 + 88, 88, 89, 79, 77, 78, 83, 85, 82, 80, 80, 86, 79, 75, 79, 81, 32.26220 + 80, 79, 80, 79, 82, 87, 91, 92, 90, 86, 83, 75, 77, 78, 80, 79, 32.26221 + 77, 75, 73, 86, 82, 78, 77, 78, 76, 69, 63, 60, 62, 63, 62, 61, 32.26222 + 60, 61, 63, 55, 61, 66, 65, 59, 55, 55, 59, 56, 46, 63, 43, 57, 32.26223 + 61, 57, 41, 71, 123, 97, 49, 41, 44, 50, 48, 67, 165, 255, 255, 255, 32.26224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26225 + 255, 255, 255, 255, 255, 255, 255, 214, 200, 202, 202, 208, 201, 195, 193, 187, 32.26226 + 181, 180, 185, 181, 183, 182, 180, 180, 182, 178, 172, 169, 167, 167, 164, 151, 32.26227 + 134, 122, 120, 109, 101, 95, 86, 82, 81, 77, 79, 77, 79, 80, 83, 85, 32.26228 + 86, 87, 88, 82, 76, 74, 76, 78, 78, 79, 82, 75, 72, 72, 78, 82, 32.26229 + 83, 85, 89, 81, 82, 84, 86, 87, 87, 86, 85, 79, 80, 81, 81, 81, 32.26230 + 79, 78, 77, 80, 76, 73, 74, 76, 75, 70, 65, 60, 58, 57, 58, 62, 32.26231 + 63, 62, 60, 60, 63, 66, 65, 61, 58, 59, 61, 75, 55, 49, 59, 51, 32.26232 + 49, 54, 61, 168, 194, 154, 105, 82, 60, 125, 255, 255, 255, 255, 255, 255, 32.26233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26234 + 255, 255, 255, 255, 255, 255, 255, 244, 205, 204, 201, 205, 197, 190, 187, 184, 32.26235 + 182, 181, 182, 180, 182, 181, 179, 179, 181, 177, 171, 170, 166, 165, 165, 159, 32.26236 + 145, 133, 130, 105, 99, 89, 83, 79, 76, 74, 73, 76, 77, 78, 80, 82, 32.26237 + 84, 86, 86, 84, 75, 68, 68, 70, 72, 77, 83, 77, 75, 76, 80, 80, 32.26238 + 78, 80, 86, 83, 82, 81, 81, 81, 83, 86, 88, 81, 81, 80, 80, 80, 32.26239 + 79, 79, 79, 76, 73, 71, 71, 72, 71, 67, 63, 63, 58, 55, 57, 64, 32.26240 + 66, 63, 58, 54, 55, 58, 59, 59, 60, 62, 63, 61, 53, 57, 68, 63, 32.26241 + 65, 55, 171, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26243 + 255, 255, 255, 255, 255, 255, 255, 255, 242, 210, 197, 202, 195, 187, 182, 182, 32.26244 + 181, 181, 181, 179, 181, 180, 177, 178, 179, 176, 169, 172, 166, 162, 166, 165, 32.26245 + 158, 149, 146, 103, 100, 85, 83, 80, 74, 76, 71, 74, 74, 75, 77, 79, 32.26246 + 81, 83, 84, 82, 73, 66, 65, 66, 69, 74, 81, 79, 78, 80, 81, 78, 32.26247 + 74, 75, 81, 83, 82, 80, 79, 80, 83, 85, 87, 79, 79, 78, 77, 76, 32.26248 + 76, 77, 77, 78, 75, 71, 70, 69, 67, 63, 60, 65, 62, 59, 61, 65, 32.26249 + 67, 64, 60, 66, 64, 64, 64, 65, 67, 68, 67, 69, 64, 82, 55, 74, 32.26250 + 66, 34, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 201, 198, 194, 188, 183, 181, 32.26253 + 181, 182, 182, 179, 181, 181, 178, 178, 179, 176, 169, 176, 166, 160, 161, 163, 32.26254 + 160, 154, 152, 105, 105, 83, 85, 83, 74, 83, 73, 72, 72, 72, 73, 75, 32.26255 + 78, 80, 82, 79, 72, 66, 67, 68, 69, 72, 76, 74, 74, 77, 80, 78, 32.26256 + 75, 77, 83, 80, 80, 80, 81, 82, 83, 84, 84, 79, 78, 77, 76, 75, 32.26257 + 76, 76, 76, 77, 74, 72, 69, 68, 66, 63, 61, 67, 67, 67, 66, 66, 32.26258 + 65, 64, 65, 70, 67, 64, 62, 62, 62, 60, 58, 75, 59, 75, 51, 66, 32.26259 + 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 194, 195, 192, 185, 179, 32.26262 + 181, 183, 182, 180, 182, 182, 179, 179, 180, 177, 170, 179, 169, 160, 158, 157, 32.26263 + 151, 146, 144, 112, 113, 82, 86, 83, 72, 86, 72, 69, 69, 69, 70, 72, 32.26264 + 75, 78, 80, 78, 72, 69, 71, 72, 71, 71, 74, 78, 77, 78, 80, 78, 32.26265 + 73, 72, 75, 77, 78, 79, 80, 81, 81, 81, 81, 78, 78, 78, 78, 77, 32.26266 + 77, 76, 76, 72, 71, 69, 68, 67, 67, 67, 67, 64, 67, 68, 67, 65, 32.26267 + 64, 64, 66, 61, 62, 64, 65, 67, 68, 70, 71, 65, 62, 73, 85, 255, 32.26268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 197, 198, 190, 180, 32.26271 + 180, 183, 182, 181, 183, 182, 180, 180, 181, 177, 171, 177, 169, 162, 159, 155, 32.26272 + 145, 139, 137, 120, 121, 82, 85, 81, 66, 84, 68, 68, 67, 67, 68, 70, 32.26273 + 73, 76, 78, 80, 74, 72, 74, 75, 73, 73, 75, 84, 79, 78, 80, 79, 32.26274 + 73, 68, 68, 74, 75, 75, 76, 77, 77, 78, 79, 75, 76, 77, 78, 77, 32.26275 + 76, 74, 73, 70, 70, 68, 67, 65, 65, 66, 67, 60, 59, 59, 61, 63, 32.26276 + 65, 65, 64, 69, 73, 77, 79, 78, 78, 80, 83, 73, 80, 255, 255, 255, 32.26277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 200, 203, 194, 183, 32.26280 + 180, 183, 183, 181, 183, 182, 180, 180, 182, 179, 173, 173, 167, 165, 164, 158, 32.26281 + 146, 138, 135, 125, 125, 81, 83, 78, 60, 80, 62, 66, 66, 66, 66, 68, 32.26282 + 72, 75, 77, 82, 77, 73, 75, 76, 76, 75, 77, 76, 71, 71, 77, 81, 32.26283 + 79, 75, 75, 74, 73, 72, 71, 72, 74, 76, 77, 71, 72, 74, 75, 75, 32.26284 + 73, 71, 69, 72, 72, 69, 66, 63, 61, 62, 63, 56, 52, 50, 54, 61, 32.26285 + 65, 64, 60, 64, 68, 71, 65, 56, 48, 46, 47, 62, 255, 255, 255, 255, 32.26286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 203, 204, 196, 184, 32.26289 + 178, 183, 191, 184, 186, 170, 178, 181, 178, 147, 184, 174, 168, 178, 154, 146, 32.26290 + 156, 135, 138, 113, 103, 89, 81, 77, 76, 74, 71, 73, 74, 73, 71, 68, 32.26291 + 70, 74, 79, 77, 74, 73, 74, 77, 79, 78, 76, 73, 75, 77, 76, 75, 32.26292 + 76, 73, 71, 69, 74, 77, 74, 69, 69, 75, 81, 71, 73, 74, 76, 76, 32.26293 + 74, 72, 70, 71, 69, 66, 63, 60, 59, 58, 58, 57, 55, 47, 40, 44, 32.26294 + 57, 59, 54, 62, 73, 79, 78, 57, 77, 50, 36, 255, 255, 255, 255, 255, 32.26295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 205, 199, 196, 32.26298 + 192, 182, 175, 178, 177, 187, 190, 194, 155, 127, 163, 170, 177, 157, 161, 137, 32.26299 + 141, 129, 127, 107, 99, 88, 82, 79, 77, 73, 70, 68, 67, 66, 62, 61, 32.26300 + 62, 67, 72, 73, 71, 71, 74, 78, 80, 80, 79, 72, 74, 74, 73, 73, 32.26301 + 73, 72, 71, 67, 70, 73, 71, 69, 68, 72, 75, 71, 71, 72, 72, 73, 32.26302 + 72, 70, 69, 67, 66, 64, 62, 61, 61, 61, 63, 65, 58, 43, 36, 46, 32.26303 + 60, 61, 52, 63, 65, 79, 69, 134, 169, 199, 255, 255, 255, 255, 255, 255, 32.26304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 203, 199, 32.26307 + 195, 186, 179, 197, 181, 191, 175, 181, 136, 134, 179, 165, 180, 140, 172, 142, 32.26308 + 142, 140, 138, 102, 95, 87, 82, 81, 78, 73, 67, 68, 67, 63, 59, 58, 32.26309 + 59, 64, 68, 68, 67, 68, 70, 74, 76, 77, 76, 72, 71, 70, 70, 70, 32.26310 + 69, 69, 70, 68, 69, 70, 71, 72, 72, 72, 71, 70, 70, 70, 69, 69, 32.26311 + 68, 68, 68, 62, 62, 62, 61, 62, 63, 65, 66, 65, 62, 50, 38, 40, 32.26312 + 51, 54, 50, 64, 55, 68, 47, 201, 231, 255, 255, 255, 255, 255, 255, 255, 32.26313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 197, 32.26316 + 188, 192, 198, 188, 180, 195, 188, 192, 162, 150, 175, 167, 168, 144, 163, 147, 32.26317 + 140, 138, 140, 105, 97, 87, 82, 80, 77, 73, 68, 70, 67, 62, 57, 56, 32.26318 + 58, 62, 65, 63, 64, 65, 66, 69, 70, 71, 72, 70, 67, 66, 67, 67, 32.26319 + 66, 67, 70, 71, 70, 70, 72, 75, 75, 72, 69, 69, 68, 67, 66, 65, 32.26320 + 65, 65, 65, 60, 60, 61, 61, 62, 63, 65, 66, 61, 68, 65, 47, 34, 32.26321 + 36, 41, 46, 59, 44, 50, 38, 222, 238, 255, 255, 255, 255, 255, 255, 255, 32.26322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 32.26325 + 191, 189, 194, 190, 188, 185, 184, 180, 190, 164, 168, 172, 149, 159, 140, 145, 32.26326 + 128, 118, 122, 111, 100, 87, 79, 76, 75, 73, 69, 67, 63, 58, 54, 53, 32.26327 + 54, 56, 58, 58, 59, 60, 63, 65, 68, 71, 74, 71, 66, 65, 68, 68, 32.26328 + 65, 66, 71, 72, 70, 68, 71, 74, 74, 70, 66, 68, 67, 65, 64, 62, 32.26329 + 63, 63, 63, 62, 62, 62, 63, 63, 63, 63, 63, 63, 69, 66, 52, 43, 32.26330 + 44, 43, 39, 48, 41, 35, 52, 209, 236, 255, 255, 255, 255, 255, 255, 255, 32.26331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 32.26334 + 210, 190, 173, 201, 193, 173, 165, 154, 188, 167, 161, 172, 144, 170, 133, 150, 32.26335 + 133, 121, 122, 111, 100, 86, 77, 74, 73, 71, 68, 67, 64, 59, 56, 56, 32.26336 + 58, 58, 58, 57, 58, 59, 60, 62, 68, 75, 78, 72, 66, 65, 70, 70, 32.26337 + 66, 67, 73, 70, 68, 66, 68, 69, 70, 67, 64, 67, 66, 65, 64, 63, 32.26338 + 61, 60, 60, 61, 62, 63, 63, 63, 63, 62, 62, 71, 66, 57, 54, 62, 32.26339 + 68, 57, 39, 44, 49, 34, 60, 164, 228, 255, 255, 255, 255, 255, 255, 255, 32.26340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26343 + 255, 206, 185, 175, 173, 184, 179, 173, 182, 158, 141, 158, 149, 157, 139, 151, 32.26344 + 138, 136, 124, 104, 95, 83, 76, 73, 72, 69, 65, 67, 64, 61, 60, 61, 32.26345 + 62, 60, 59, 60, 60, 58, 55, 55, 60, 68, 74, 73, 65, 66, 74, 74, 32.26346 + 67, 66, 73, 70, 69, 67, 67, 67, 67, 67, 66, 65, 65, 65, 64, 63, 32.26347 + 61, 59, 57, 59, 60, 62, 63, 64, 63, 63, 62, 72, 68, 59, 56, 66, 32.26348 + 75, 66, 50, 54, 68, 54, 59, 113, 213, 255, 255, 255, 255, 255, 255, 255, 32.26349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26352 + 255, 255, 243, 176, 163, 188, 172, 174, 166, 168, 164, 143, 155, 136, 136, 135, 32.26353 + 123, 127, 101, 97, 89, 79, 76, 73, 72, 66, 62, 63, 60, 57, 58, 59, 32.26354 + 60, 57, 55, 65, 63, 57, 52, 47, 51, 57, 63, 73, 67, 67, 77, 77, 32.26355 + 68, 67, 74, 73, 73, 71, 69, 68, 67, 68, 69, 65, 66, 66, 66, 65, 32.26356 + 62, 58, 56, 57, 59, 61, 63, 64, 64, 64, 63, 65, 72, 71, 62, 58, 32.26357 + 63, 65, 63, 65, 89, 79, 63, 88, 210, 255, 255, 255, 255, 255, 255, 255, 32.26358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26361 + 255, 255, 255, 242, 193, 173, 182, 180, 169, 166, 146, 138, 149, 150, 134, 118, 32.26362 + 116, 115, 113, 102, 93, 72, 79, 65, 71, 58, 62, 66, 65, 57, 74, 59, 32.26363 + 60, 52, 65, 50, 60, 63, 62, 57, 69, 56, 32, 74, 129, 111, 31, 64, 32.26364 + 67, 47, 90, 58, 62, 69, 68, 79, 56, 74, 67, 66, 66, 65, 64, 62, 32.26365 + 60, 57, 56, 59, 57, 55, 57, 60, 62, 61, 59, 70, 69, 68, 67, 64, 32.26366 + 62, 65, 72, 69, 77, 73, 51, 160, 209, 255, 255, 255, 255, 255, 255, 255, 32.26367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26370 + 255, 255, 255, 255, 255, 222, 160, 167, 164, 159, 131, 145, 134, 129, 134, 130, 32.26371 + 116, 104, 104, 89, 87, 72, 82, 67, 74, 67, 75, 70, 70, 58, 67, 61, 32.26372 + 76, 67, 66, 79, 72, 64, 63, 255, 255, 255, 255, 188, 208, 193, 84, 46, 32.26373 + 60, 72, 69, 75, 73, 69, 65, 74, 56, 74, 69, 68, 68, 67, 66, 65, 32.26374 + 61, 59, 57, 64, 61, 58, 58, 59, 59, 57, 54, 56, 57, 63, 71, 69, 32.26375 + 58, 60, 75, 70, 74, 71, 70, 220, 215, 255, 255, 255, 255, 255, 255, 255, 32.26376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26379 + 255, 255, 255, 255, 255, 255, 255, 219, 155, 164, 134, 135, 134, 130, 124, 118, 32.26380 + 113, 106, 101, 90, 91, 79, 87, 67, 70, 62, 72, 60, 76, 67, 67, 52, 32.26381 + 72, 67, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 109, 32.26382 + 57, 60, 76, 69, 67, 62, 65, 74, 60, 74, 67, 69, 69, 67, 66, 65, 32.26383 + 62, 60, 59, 64, 62, 59, 59, 58, 57, 54, 52, 66, 68, 69, 74, 69, 32.26384 + 49, 41, 56, 52, 44, 61, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 143, 140, 130, 120, 115, 114, 32.26389 + 109, 105, 103, 92, 92, 79, 87, 68, 70, 58, 65, 62, 74, 66, 72, 60, 32.26390 + 76, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 32.26391 + 98, 39, 49, 73, 76, 67, 71, 71, 59, 71, 68, 68, 68, 67, 66, 63, 32.26392 + 62, 60, 59, 59, 58, 57, 57, 56, 55, 54, 53, 60, 65, 57, 55, 64, 32.26393 + 55, 41, 45, 59, 65, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 113, 101, 115, 121, 32.26398 + 104, 93, 97, 81, 79, 67, 81, 72, 79, 67, 70, 77, 71, 57, 76, 135, 32.26399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26400 + 255, 127, 54, 75, 81, 71, 78, 68, 59, 68, 71, 71, 69, 68, 67, 65, 32.26401 + 64, 64, 62, 58, 58, 57, 56, 55, 54, 52, 53, 44, 58, 49, 58, 107, 32.26402 + 135, 127, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 110, 96, 32.26407 + 99, 95, 84, 78, 76, 62, 79, 72, 81, 69, 71, 72, 75, 131, 255, 255, 32.26408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26409 + 255, 255, 133, 33, 51, 54, 82, 76, 71, 71, 69, 75, 74, 71, 70, 68, 32.26410 + 68, 68, 68, 64, 63, 62, 59, 56, 53, 52, 52, 42, 58, 53, 86, 173, 32.26411 + 224, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26416 + 97, 97, 80, 84, 83, 70, 81, 68, 74, 63, 68, 255, 255, 255, 255, 255, 32.26417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26418 + 255, 255, 255, 194, 78, 60, 81, 72, 74, 72, 71, 74, 73, 72, 70, 68, 32.26419 + 67, 68, 69, 67, 67, 67, 64, 60, 57, 57, 58, 47, 52, 49, 101, 199, 32.26420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26425 + 255, 255, 200, 85, 85, 76, 84, 69, 73, 255, 255, 255, 255, 255, 255, 255, 32.26426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26427 + 255, 255, 255, 255, 255, 202, 78, 50, 61, 71, 80, 72, 71, 68, 67, 65, 32.26428 + 64, 64, 64, 65, 66, 68, 67, 64, 63, 65, 68, 71, 66, 60, 255, 255, 32.26429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26436 + 255, 255, 255, 255, 255, 255, 255, 193, 51, 54, 67, 72, 82, 83, 72, 66, 32.26437 + 71, 74, 71, 66, 63, 62, 61, 61, 63, 70, 79, 66, 71, 255, 255, 255, 32.26438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 86, 64, 56, 51, 59, 67, 32.26446 + 63, 48, 36, 59, 63, 66, 68, 70, 68, 65, 60, 44, 255, 255, 255, 255, 32.26447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 65, 45, 36, 52, 68, 32.26455 + 69, 64, 63, 49, 58, 64, 66, 68, 71, 66, 56, 255, 255, 255, 255, 255, 32.26456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 72, 35, 32.26464 + 18, 22, 35, 42, 49, 45, 31, 25, 30, 32, 102, 255, 255, 255, 255, 255, 32.26465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26473 + 255, 120, 103, 94, 106, 114, 115, 122, 181, 255, 255, 255, 255, 255, 255, 255, 32.26474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 158, 185, 163, 195, 32.26482 + 194, 183, 117, 149, 198, 218, 221, 130, 104, 211, 255, 255, 255, 255, 255, 255, 32.26483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26490 + 224, 188, 141, 139, 156, 134, 148, 171, 186, 146, 136, 142, 157, 175, 159, 183, 32.26491 + 188, 163, 89, 79, 128, 174, 174, 88, 52, 50, 56, 102, 103, 153, 255, 255, 32.26492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 118, 135, 137, 104, 122, 149, 32.26499 + 162, 183, 149, 154, 172, 140, 141, 166, 189, 151, 145, 142, 153, 159, 162, 192, 32.26500 + 220, 179, 97, 101, 126, 177, 195, 158, 181, 196, 200, 239, 245, 244, 238, 241, 32.26501 + 249, 249, 240, 240, 171, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26507 + 255, 255, 255, 255, 255, 255, 225, 178, 153, 176, 134, 132, 116, 94, 115, 145, 32.26508 + 162, 167, 123, 147, 153, 134, 135, 165, 194, 129, 134, 152, 143, 172, 165, 177, 32.26509 + 232, 237, 217, 233, 231, 246, 255, 255, 231, 248, 230, 242, 249, 253, 225, 253, 32.26510 + 242, 250, 205, 217, 215, 248, 195, 119, 240, 255, 255, 255, 255, 255, 255, 255, 32.26511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26516 + 255, 255, 228, 161, 156, 171, 139, 171, 183, 174, 138, 134, 98, 77, 105, 116, 32.26517 + 110, 105, 63, 79, 88, 70, 79, 120, 181, 194, 178, 134, 164, 183, 205, 228, 32.26518 + 236, 238, 235, 232, 255, 254, 253, 255, 248, 248, 253, 246, 224, 225, 255, 243, 32.26519 + 252, 241, 244, 230, 98, 83, 166, 219, 242, 214, 202, 255, 255, 255, 255, 255, 32.26520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26525 + 222, 166, 166, 161, 174, 181, 122, 132, 115, 127, 109, 91, 64, 87, 155, 183, 32.26526 + 202, 238, 236, 207, 240, 250, 242, 236, 223, 215, 132, 133, 191, 176, 161, 138, 32.26527 + 88, 90, 104, 118, 244, 255, 242, 242, 255, 246, 250, 223, 208, 255, 242, 236, 32.26528 + 240, 255, 229, 238, 228, 184, 78, 123, 109, 186, 201, 234, 221, 255, 255, 255, 32.26529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 124, 32.26534 + 117, 147, 164, 141, 122, 150, 122, 167, 156, 154, 157, 129, 123, 172, 225, 221, 32.26535 + 222, 252, 255, 255, 255, 247, 217, 246, 237, 230, 157, 139, 170, 139, 94, 63, 32.26536 + 41, 54, 63, 64, 188, 235, 231, 246, 255, 255, 245, 223, 228, 169, 242, 255, 32.26537 + 242, 242, 255, 253, 253, 223, 10, 88, 84, 122, 165, 170, 193, 201, 218, 255, 32.26538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 183, 182, 177, 121, 32.26543 + 129, 155, 154, 119, 104, 180, 177, 228, 242, 222, 241, 226, 217, 234, 225, 179, 32.26544 + 152, 144, 132, 123, 91, 91, 92, 214, 248, 233, 204, 137, 96, 85, 66, 67, 32.26545 + 88, 77, 58, 36, 33, 58, 73, 142, 185, 255, 237, 236, 255, 56, 146, 255, 32.26546 + 230, 239, 249, 246, 228, 251, 73, 106, 97, 77, 62, 51, 111, 174, 165, 177, 32.26547 + 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 162, 169, 160, 161, 177, 157, 32.26552 + 214, 235, 211, 227, 243, 207, 226, 239, 209, 231, 153, 202, 162, 116, 56, 25, 32.26553 + 39, 54, 65, 88, 70, 90, 78, 158, 131, 71, 57, 86, 51, 90, 110, 108, 32.26554 + 118, 87, 65, 93, 116, 207, 227, 255, 251, 222, 64, 65, 11, 89, 39, 32, 32.26555 + 111, 177, 233, 247, 255, 226, 80, 123, 167, 190, 170, 127, 88, 136, 124, 217, 32.26556 + 161, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26560 + 255, 255, 255, 255, 255, 255, 255, 255, 169, 165, 162, 149, 178, 209, 239, 245, 32.26561 + 230, 195, 164, 179, 169, 68, 153, 196, 191, 224, 85, 43, 72, 106, 117, 141, 32.26562 + 152, 129, 132, 97, 88, 94, 72, 98, 80, 85, 100, 77, 145, 228, 252, 247, 32.26563 + 250, 247, 237, 240, 253, 255, 242, 247, 255, 243, 75, 36, 117, 73, 99, 102, 32.26564 + 45, 39, 120, 141, 225, 244, 215, 239, 203, 206, 231, 219, 101, 21, 53, 136, 32.26565 + 168, 137, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26569 + 255, 255, 255, 255, 255, 255, 255, 153, 169, 167, 172, 207, 247, 253, 223, 185, 32.26570 + 89, 78, 141, 205, 152, 166, 212, 193, 208, 163, 118, 90, 119, 139, 126, 137, 32.26571 + 138, 117, 151, 95, 86, 84, 93, 101, 86, 119, 98, 35, 189, 255, 249, 243, 32.26572 + 253, 255, 239, 255, 243, 250, 249, 255, 247, 193, 50, 48, 165, 247, 206, 194, 32.26573 + 89, 31, 44, 86, 119, 198, 222, 221, 213, 219, 206, 218, 130, 58, 33, 137, 32.26574 + 199, 169, 183, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26578 + 255, 255, 255, 255, 255, 255, 223, 151, 160, 168, 155, 251, 118, 82, 58, 42, 32.26579 + 164, 190, 204, 153, 180, 217, 200, 145, 139, 59, 82, 94, 134, 109, 122, 153, 32.26580 + 108, 110, 73, 99, 204, 207, 204, 252, 255, 255, 243, 215, 236, 242, 250, 241, 32.26581 + 249, 255, 235, 250, 255, 237, 255, 255, 243, 252, 213, 220, 243, 243, 249, 247, 32.26582 + 248, 219, 126, 21, 42, 32, 122, 202, 219, 186, 147, 175, 188, 142, 40, 173, 32.26583 + 204, 211, 208, 130, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26587 + 255, 255, 255, 255, 255, 219, 161, 182, 163, 111, 85, 190, 64, 25, 207, 203, 32.26588 + 223, 193, 226, 218, 174, 105, 78, 54, 22, 39, 80, 91, 64, 91, 122, 135, 32.26589 + 88, 54, 203, 254, 241, 212, 248, 247, 255, 237, 236, 243, 232, 210, 218, 223, 32.26590 + 237, 237, 247, 240, 255, 239, 189, 171, 211, 237, 253, 246, 239, 220, 232, 239, 32.26591 + 246, 255, 250, 224, 37, 23, 28, 83, 119, 211, 182, 84, 84, 183, 128, 130, 32.26592 + 197, 216, 248, 225, 146, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26596 + 255, 255, 255, 255, 213, 142, 156, 134, 146, 194, 223, 246, 215, 206, 229, 226, 32.26597 + 141, 155, 110, 74, 64, 35, 26, 66, 80, 147, 180, 217, 239, 104, 95, 179, 32.26598 + 200, 237, 246, 159, 101, 200, 238, 255, 238, 230, 250, 244, 244, 241, 253, 255, 32.26599 + 247, 228, 255, 253, 206, 71, 57, 66, 59, 63, 62, 220, 246, 248, 247, 251, 32.26600 + 251, 255, 244, 244, 247, 208, 42, 92, 49, 47, 148, 188, 175, 153, 147, 149, 32.26601 + 198, 155, 118, 230, 242, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26605 + 255, 255, 255, 225, 133, 173, 189, 167, 173, 221, 254, 255, 255, 222, 248, 213, 32.26606 + 54, 92, 80, 97, 39, 52, 62, 87, 110, 143, 231, 250, 232, 203, 61, 129, 32.26607 + 234, 212, 222, 132, 20, 222, 255, 235, 240, 241, 209, 250, 248, 247, 248, 241, 32.26608 + 227, 238, 222, 240, 169, 59, 59, 95, 93, 48, 75, 194, 236, 245, 237, 244, 32.26609 + 248, 241, 237, 254, 254, 217, 150, 122, 117, 51, 95, 167, 212, 143, 145, 170, 32.26610 + 197, 115, 62, 232, 236, 225, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26614 + 255, 255, 255, 158, 176, 158, 166, 236, 228, 201, 251, 255, 237, 255, 120, 73, 32.26615 + 100, 98, 194, 243, 228, 217, 143, 73, 160, 161, 191, 195, 226, 228, 142, 66, 32.26616 + 66, 88, 64, 94, 110, 157, 245, 239, 248, 222, 244, 230, 229, 242, 245, 251, 32.26617 + 235, 236, 111, 57, 228, 205, 243, 238, 180, 215, 186, 209, 218, 226, 239, 250, 32.26618 + 238, 229, 251, 248, 245, 255, 235, 5, 108, 148, 54, 96, 162, 195, 179, 184, 32.26619 + 205, 83, 59, 192, 253, 232, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26623 + 255, 255, 255, 160, 165, 156, 195, 216, 113, 45, 103, 203, 139, 75, 141, 246, 32.26624 + 245, 247, 231, 205, 233, 252, 230, 76, 138, 158, 204, 198, 200, 236, 229, 116, 32.26625 + 127, 151, 124, 114, 153, 83, 196, 249, 229, 243, 228, 250, 247, 245, 221, 234, 32.26626 + 242, 245, 115, 57, 223, 250, 200, 179, 172, 201, 202, 196, 209, 229, 233, 239, 32.26627 + 240, 227, 238, 236, 238, 238, 255, 68, 73, 129, 117, 47, 90, 71, 93, 173, 32.26628 + 220, 113, 49, 155, 235, 251, 243, 230, 255, 255, 255, 255, 255, 255, 255, 255, 32.26629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26632 + 255, 255, 255, 173, 145, 165, 193, 149, 73, 64, 100, 116, 90, 44, 187, 247, 32.26633 + 254, 213, 213, 106, 176, 255, 218, 31, 155, 172, 187, 194, 112, 178, 219, 143, 32.26634 + 91, 139, 155, 139, 148, 66, 108, 247, 235, 253, 234, 234, 239, 251, 241, 241, 32.26635 + 246, 161, 79, 110, 216, 230, 206, 226, 192, 215, 187, 185, 206, 229, 199, 191, 32.26636 + 230, 242, 244, 234, 253, 255, 254, 94, 63, 128, 127, 109, 151, 62, 78, 132, 32.26637 + 230, 191, 57, 167, 246, 216, 238, 222, 184, 255, 255, 255, 255, 255, 255, 255, 32.26638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26641 + 255, 255, 222, 167, 191, 163, 108, 111, 151, 146, 104, 118, 97, 147, 82, 100, 32.26642 + 69, 81, 120, 85, 92, 244, 206, 50, 205, 161, 174, 168, 86, 174, 208, 211, 32.26643 + 86, 165, 117, 152, 117, 137, 89, 49, 139, 223, 250, 253, 239, 242, 235, 240, 32.26644 + 247, 67, 28, 0, 85, 195, 164, 191, 173, 160, 171, 215, 216, 248, 226, 191, 32.26645 + 197, 204, 220, 231, 214, 228, 240, 111, 73, 122, 123, 128, 127, 143, 118, 46, 32.26646 + 244, 233, 28, 73, 228, 251, 149, 55, 245, 79, 255, 255, 255, 255, 255, 255, 32.26647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26650 + 255, 255, 174, 189, 230, 120, 109, 120, 122, 115, 125, 121, 150, 147, 86, 82, 32.26651 + 106, 144, 147, 128, 146, 189, 122, 121, 231, 141, 176, 163, 77, 120, 182, 225, 32.26652 + 65, 76, 142, 143, 142, 154, 144, 123, 77, 67, 102, 169, 245, 235, 244, 231, 32.26653 + 234, 244, 212, 180, 28, 35, 60, 54, 73, 138, 198, 238, 245, 239, 243, 218, 32.26654 + 226, 234, 145, 127, 144, 124, 137, 72, 117, 114, 112, 118, 142, 110, 122, 61, 32.26655 + 242, 254, 46, 29, 162, 229, 74, 43, 216, 127, 156, 255, 255, 255, 255, 255, 32.26656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26659 + 255, 255, 132, 103, 122, 101, 97, 109, 92, 117, 109, 113, 104, 108, 92, 110, 32.26660 + 134, 163, 147, 153, 154, 147, 152, 88, 90, 171, 197, 171, 164, 178, 188, 194, 32.26661 + 126, 39, 38, 60, 57, 60, 149, 133, 125, 104, 90, 158, 254, 233, 241, 250, 32.26662 + 238, 232, 230, 229, 209, 186, 205, 223, 208, 233, 238, 234, 229, 239, 239, 246, 32.26663 + 220, 227, 55, 44, 72, 83, 77, 114, 134, 103, 129, 117, 102, 115, 104, 82, 32.26664 + 248, 255, 42, 75, 105, 255, 51, 40, 107, 206, 73, 255, 255, 255, 255, 255, 32.26665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26668 + 255, 255, 132, 64, 81, 90, 95, 101, 115, 118, 109, 94, 80, 101, 101, 99, 32.26669 + 103, 147, 157, 143, 135, 132, 119, 96, 91, 154, 209, 178, 161, 177, 218, 198, 32.26670 + 113, 23, 87, 108, 126, 79, 105, 145, 124, 130, 114, 145, 255, 249, 245, 246, 32.26671 + 238, 240, 241, 219, 241, 232, 229, 240, 238, 248, 249, 246, 213, 227, 239, 211, 32.26672 + 176, 231, 63, 67, 63, 90, 80, 133, 138, 95, 124, 116, 113, 105, 134, 89, 32.26673 + 230, 248, 63, 94, 70, 231, 64, 64, 53, 255, 140, 155, 255, 255, 255, 255, 32.26674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26677 + 255, 255, 106, 99, 81, 89, 86, 123, 136, 120, 122, 133, 113, 110, 108, 126, 32.26678 + 111, 112, 110, 112, 109, 154, 142, 143, 143, 82, 101, 139, 170, 181, 181, 185, 32.26679 + 203, 218, 247, 252, 255, 170, 120, 120, 136, 140, 100, 151, 246, 244, 251, 241, 32.26680 + 236, 242, 229, 196, 208, 237, 238, 231, 246, 232, 235, 232, 255, 173, 248, 251, 32.26681 + 97, 51, 240, 241, 82, 62, 122, 94, 109, 125, 137, 100, 96, 108, 101, 112, 32.26682 + 97, 241, 85, 84, 110, 147, 118, 100, 92, 211, 244, 83, 255, 255, 255, 255, 32.26683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26686 + 255, 217, 4, 104, 54, 97, 88, 116, 125, 137, 119, 104, 108, 83, 56, 94, 32.26687 + 89, 82, 91, 155, 138, 112, 144, 96, 99, 111, 87, 50, 31, 48, 215, 239, 32.26688 + 219, 238, 250, 242, 255, 255, 255, 36, 103, 129, 117, 127, 246, 242, 249, 253, 32.26689 + 242, 228, 216, 223, 213, 194, 196, 242, 248, 235, 244, 245, 255, 192, 215, 223, 32.26690 + 232, 104, 81, 153, 183, 76, 39, 84, 101, 85, 120, 112, 104, 115, 111, 120, 32.26691 + 60, 211, 172, 84, 156, 104, 150, 123, 132, 87, 237, 101, 150, 255, 255, 255, 32.26692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26695 + 255, 151, 125, 231, 225, 240, 221, 89, 145, 126, 69, 89, 130, 133, 99, 121, 32.26696 + 104, 81, 73, 145, 183, 117, 131, 110, 130, 134, 98, 97, 68, 10, 207, 231, 32.26697 + 231, 245, 242, 253, 235, 253, 255, 66, 110, 127, 121, 46, 255, 255, 239, 248, 32.26698 + 250, 232, 219, 236, 229, 76, 63, 225, 239, 244, 253, 239, 244, 235, 194, 195, 32.26699 + 251, 137, 37, 42, 230, 234, 115, 68, 68, 121, 119, 113, 102, 89, 122, 77, 32.26700 + 90, 109, 224, 100, 137, 122, 147, 131, 136, 45, 169, 154, 114, 219, 255, 255, 32.26701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26704 + 255, 211, 249, 233, 255, 251, 255, 102, 131, 104, 137, 205, 220, 241, 231, 247, 32.26705 + 219, 151, 63, 131, 180, 129, 76, 108, 151, 97, 107, 106, 121, 48, 194, 237, 32.26706 + 250, 247, 243, 251, 243, 255, 230, 98, 65, 119, 142, 32, 192, 231, 245, 237, 32.26707 + 244, 246, 220, 221, 198, 29, 23, 244, 247, 246, 245, 250, 227, 219, 167, 192, 32.26708 + 244, 171, 62, 52, 159, 205, 192, 115, 48, 79, 135, 114, 110, 120, 114, 115, 32.26709 + 106, 74, 255, 153, 106, 140, 141, 128, 129, 77, 142, 176, 120, 123, 255, 255, 32.26710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26713 + 255, 246, 236, 249, 228, 208, 234, 196, 48, 59, 243, 255, 240, 255, 237, 232, 32.26714 + 249, 253, 184, 46, 68, 88, 86, 108, 105, 72, 84, 32, 68, 19, 110, 227, 32.26715 + 246, 239, 243, 234, 244, 255, 255, 87, 56, 125, 111, 114, 60, 107, 255, 255, 32.26716 + 226, 252, 218, 234, 148, 44, 39, 245, 248, 234, 243, 231, 211, 235, 188, 143, 32.26717 + 255, 240, 26, 88, 65, 105, 243, 221, 213, 114, 51, 63, 119, 98, 121, 112, 32.26718 + 109, 54, 255, 216, 111, 139, 151, 114, 118, 95, 150, 164, 109, 85, 255, 255, 32.26719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26722 + 255, 231, 249, 244, 250, 183, 208, 197, 23, 117, 253, 245, 244, 253, 255, 250, 32.26723 + 255, 237, 255, 95, 49, 142, 95, 135, 102, 106, 240, 247, 215, 179, 33, 182, 32.26724 + 251, 248, 230, 241, 254, 255, 255, 77, 71, 111, 125, 141, 101, 87, 111, 167, 32.26725 + 255, 251, 91, 138, 35, 77, 32, 231, 244, 248, 248, 226, 251, 231, 246, 251, 32.26726 + 231, 251, 41, 90, 52, 73, 54, 172, 189, 225, 182, 154, 71, 84, 108, 117, 32.26727 + 81, 80, 244, 249, 90, 141, 150, 134, 194, 66, 124, 97, 117, 94, 140, 255, 32.26728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26731 + 242, 238, 237, 252, 239, 212, 203, 206, 113, 173, 238, 249, 255, 246, 237, 234, 32.26732 + 244, 236, 239, 113, 109, 116, 150, 63, 93, 167, 255, 241, 255, 236, 82, 143, 32.26733 + 233, 253, 246, 255, 255, 249, 255, 73, 128, 86, 126, 125, 129, 132, 81, 114, 32.26734 + 190, 137, 77, 57, 71, 91, 98, 145, 255, 255, 238, 239, 246, 248, 248, 244, 32.26735 + 250, 213, 25, 75, 90, 94, 40, 91, 155, 225, 221, 200, 145, 80, 99, 96, 32.26736 + 111, 79, 222, 224, 83, 135, 95, 139, 212, 56, 112, 138, 109, 97, 109, 255, 32.26737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26740 + 221, 240, 241, 253, 251, 251, 220, 227, 253, 251, 232, 251, 222, 237, 255, 240, 32.26741 + 231, 255, 255, 109, 153, 134, 115, 126, 202, 246, 215, 238, 234, 247, 253, 253, 32.26742 + 251, 226, 253, 247, 233, 193, 138, 56, 105, 113, 125, 137, 119, 130, 100, 78, 32.26743 + 53, 26, 90, 102, 91, 90, 83, 55, 145, 239, 255, 255, 224, 234, 253, 237, 32.26744 + 203, 133, 68, 113, 84, 78, 94, 67, 39, 78, 163, 223, 255, 164, 121, 121, 32.26745 + 137, 92, 191, 200, 85, 111, 105, 123, 160, 224, 125, 114, 86, 113, 121, 255, 32.26746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26749 + 195, 233, 238, 239, 241, 246, 255, 215, 242, 225, 250, 240, 247, 253, 228, 244, 32.26750 + 255, 227, 165, 36, 160, 129, 68, 249, 255, 255, 224, 241, 223, 204, 225, 215, 32.26751 + 238, 233, 241, 195, 118, 49, 34, 118, 77, 125, 93, 95, 102, 97, 100, 104, 32.26752 + 114, 109, 62, 76, 55, 108, 85, 50, 44, 168, 236, 241, 248, 255, 254, 185, 32.26753 + 39, 24, 106, 99, 104, 86, 81, 91, 114, 82, 41, 74, 132, 223, 222, 167, 32.26754 + 102, 117, 109, 99, 132, 101, 95, 111, 36, 255, 188, 118, 104, 132, 119, 162, 32.26755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26758 + 163, 239, 227, 225, 240, 237, 242, 244, 249, 243, 245, 235, 232, 241, 235, 233, 32.26759 + 151, 41, 79, 193, 249, 76, 22, 240, 246, 236, 247, 239, 255, 253, 235, 219, 32.26760 + 251, 250, 235, 21, 52, 53, 85, 141, 99, 92, 73, 65, 87, 91, 83, 59, 32.26761 + 54, 88, 105, 111, 74, 84, 86, 89, 98, 68, 60, 150, 229, 235, 209, 218, 32.26762 + 65, 68, 118, 80, 91, 119, 133, 126, 102, 106, 122, 104, 69, 71, 88, 168, 32.26763 + 96, 103, 114, 124, 105, 75, 131, 165, 102, 174, 167, 84, 90, 108, 90, 106, 32.26764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26767 + 127, 255, 240, 221, 233, 253, 237, 255, 226, 236, 196, 127, 126, 195, 250, 225, 32.26768 + 205, 169, 191, 206, 236, 172, 26, 136, 255, 248, 255, 255, 246, 243, 242, 243, 32.26769 + 242, 219, 245, 16, 25, 68, 102, 160, 150, 54, 65, 111, 142, 139, 68, 63, 32.26770 + 81, 59, 113, 84, 78, 88, 87, 101, 122, 88, 100, 66, 187, 255, 231, 234, 32.26771 + 68, 65, 103, 103, 109, 125, 112, 125, 117, 120, 104, 127, 107, 86, 74, 99, 32.26772 + 77, 101, 123, 116, 131, 115, 239, 255, 212, 131, 235, 127, 101, 89, 84, 104, 32.26773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 32.26776 + 69, 223, 233, 234, 213, 255, 235, 182, 82, 139, 172, 164, 74, 70, 229, 235, 32.26777 + 240, 241, 232, 253, 234, 227, 41, 28, 196, 255, 234, 245, 245, 244, 248, 253, 32.26778 + 236, 136, 158, 174, 107, 163, 191, 204, 120, 74, 226, 255, 255, 255, 252, 209, 32.26779 + 120, 32, 83, 102, 90, 104, 106, 141, 124, 123, 105, 57, 62, 204, 221, 235, 32.26780 + 122, 57, 94, 95, 119, 140, 127, 126, 123, 126, 115, 96, 138, 109, 78, 106, 32.26781 + 118, 93, 120, 128, 111, 113, 246, 244, 255, 223, 235, 251, 181, 137, 130, 128, 32.26782 + 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 32.26785 + 16, 146, 185, 254, 246, 247, 163, 67, 120, 199, 189, 192, 195, 77, 181, 236, 32.26786 + 249, 245, 251, 228, 253, 241, 253, 85, 65, 253, 255, 255, 253, 246, 255, 242, 32.26787 + 173, 17, 68, 191, 189, 200, 191, 141, 86, 92, 241, 254, 255, 253, 255, 255, 32.26788 + 236, 164, 48, 79, 109, 111, 130, 123, 125, 152, 109, 122, 24, 210, 225, 216, 32.26789 + 175, 66, 108, 106, 108, 114, 135, 141, 139, 128, 126, 120, 94, 121, 130, 116, 32.26790 + 114, 111, 108, 110, 141, 133, 120, 187, 237, 228, 249, 194, 186, 196, 162, 78, 32.26791 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 32.26794 + 71, 27, 87, 252, 246, 190, 44, 74, 185, 180, 209, 192, 165, 156, 199, 230, 32.26795 + 227, 249, 243, 249, 224, 181, 166, 158, 14, 106, 253, 238, 239, 243, 253, 255, 32.26796 + 223, 138, 29, 167, 178, 214, 191, 78, 28, 172, 240, 246, 255, 255, 247, 250, 32.26797 + 248, 251, 130, 52, 125, 136, 121, 132, 156, 148, 132, 110, 26, 243, 209, 215, 32.26798 + 196, 65, 92, 99, 114, 117, 122, 150, 123, 155, 133, 135, 124, 122, 129, 125, 32.26799 + 113, 107, 111, 105, 90, 109, 60, 56, 255, 222, 233, 230, 172, 144, 188, 164, 32.26800 + 149, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.26803 + 72, 48, 105, 245, 240, 210, 56, 79, 196, 198, 174, 199, 165, 144, 195, 228, 32.26804 + 244, 242, 229, 241, 247, 68, 96, 132, 62, 5, 255, 240, 255, 255, 238, 225, 32.26805 + 253, 208, 76, 143, 170, 192, 177, 100, 92, 201, 235, 240, 242, 241, 251, 250, 32.26806 + 250, 255, 218, 118, 111, 131, 133, 138, 127, 124, 129, 91, 66, 206, 223, 212, 32.26807 + 193, 86, 77, 113, 136, 138, 125, 132, 125, 116, 146, 136, 134, 132, 134, 128, 32.26808 + 122, 118, 122, 97, 124, 109, 65, 51, 237, 253, 222, 232, 177, 107, 165, 148, 32.26809 + 142, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 62, 32.26812 + 45, 66, 230, 214, 218, 219, 96, 33, 152, 196, 205, 180, 173, 170, 229, 236, 32.26813 + 232, 237, 251, 226, 243, 88, 110, 94, 81, 131, 240, 240, 218, 193, 203, 236, 32.26814 + 249, 232, 220, 195, 201, 183, 175, 141, 151, 210, 216, 250, 244, 243, 255, 246, 32.26815 + 250, 255, 254, 225, 100, 114, 119, 131, 114, 118, 126, 91, 105, 79, 228, 206, 32.26816 + 201, 60, 114, 114, 133, 98, 124, 141, 105, 153, 124, 132, 140, 139, 131, 126, 32.26817 + 126, 127, 125, 129, 123, 101, 110, 86, 113, 247, 234, 251, 215, 101, 126, 92, 32.26818 + 107, 95, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 191, 32.26821 + 75, 39, 187, 177, 209, 255, 222, 22, 69, 96, 168, 189, 180, 157, 221, 248, 32.26822 + 223, 245, 251, 247, 234, 255, 229, 228, 254, 225, 192, 118, 21, 85, 226, 238, 32.26823 + 189, 185, 213, 247, 227, 203, 195, 192, 179, 223, 241, 234, 241, 241, 249, 240, 32.26824 + 255, 249, 251, 255, 75, 105, 105, 119, 114, 130, 129, 135, 121, 42, 125, 209, 32.26825 + 150, 11, 82, 66, 66, 91, 94, 121, 102, 118, 122, 126, 140, 138, 123, 117, 32.26826 + 122, 124, 122, 136, 129, 139, 131, 107, 32, 247, 249, 249, 251, 212, 240, 130, 32.26827 + 69, 77, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 214, 32.26830 + 70, 40, 190, 204, 208, 247, 242, 36, 35, 49, 133, 83, 164, 194, 234, 236, 32.26831 + 186, 236, 241, 255, 239, 218, 228, 179, 184, 138, 85, 38, 34, 126, 246, 255, 32.26832 + 201, 159, 224, 245, 230, 230, 213, 220, 186, 219, 235, 237, 244, 244, 248, 234, 32.26833 + 253, 241, 249, 251, 47, 103, 109, 117, 104, 125, 127, 96, 105, 78, 72, 151, 32.26834 + 182, 38, 44, 16, 57, 65, 133, 114, 133, 106, 142, 127, 142, 139, 121, 114, 32.26835 + 120, 125, 118, 152, 117, 117, 121, 121, 56, 235, 253, 246, 251, 251, 240, 152, 32.26836 + 156, 213, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 249, 32.26839 + 137, 53, 206, 255, 240, 255, 246, 167, 141, 97, 84, 175, 241, 250, 243, 240, 32.26840 + 213, 197, 164, 124, 179, 36, 93, 76, 48, 91, 58, 88, 106, 218, 253, 197, 32.26841 + 188, 213, 242, 246, 234, 241, 235, 248, 237, 237, 220, 239, 231, 232, 247, 234, 32.26842 + 236, 250, 255, 255, 54, 91, 102, 121, 101, 114, 116, 120, 107, 78, 58, 27, 32.26843 + 219, 168, 187, 222, 23, 112, 34, 49, 123, 117, 129, 132, 146, 142, 126, 121, 32.26844 + 124, 127, 121, 126, 122, 119, 114, 66, 30, 136, 224, 251, 231, 242, 234, 211, 32.26845 + 253, 253, 241, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 209, 32.26848 + 143, 85, 238, 255, 244, 221, 170, 221, 255, 243, 208, 197, 219, 246, 245, 228, 32.26849 + 253, 185, 228, 224, 255, 90, 12, 64, 94, 60, 111, 88, 165, 255, 234, 197, 32.26850 + 208, 220, 253, 249, 241, 240, 250, 216, 220, 214, 226, 213, 202, 207, 235, 245, 32.26851 + 244, 255, 221, 230, 69, 96, 94, 114, 109, 119, 111, 134, 112, 134, 112, 96, 32.26852 + 181, 203, 211, 231, 198, 246, 255, 52, 71, 100, 135, 135, 141, 138, 129, 127, 32.26853 + 127, 128, 123, 114, 121, 102, 95, 180, 246, 255, 252, 199, 135, 168, 251, 253, 32.26854 + 198, 68, 85, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 252, 218, 32.26857 + 197, 148, 147, 253, 255, 188, 107, 161, 229, 206, 191, 119, 90, 167, 249, 239, 32.26858 + 255, 61, 120, 251, 253, 193, 161, 54, 110, 90, 88, 61, 143, 251, 215, 178, 32.26859 + 237, 254, 242, 248, 253, 242, 237, 89, 62, 78, 173, 226, 223, 215, 227, 245, 32.26860 + 239, 228, 104, 116, 61, 127, 110, 105, 107, 124, 117, 134, 158, 119, 126, 119, 32.26861 + 147, 167, 194, 178, 231, 206, 240, 203, 102, 117, 112, 129, 134, 130, 127, 126, 32.26862 + 126, 123, 120, 140, 126, 136, 129, 255, 254, 243, 247, 245, 138, 63, 115, 205, 32.26863 + 249, 68, 61, 72, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 238, 228, 32.26866 + 226, 208, 36, 249, 255, 152, 89, 144, 213, 228, 204, 129, 26, 139, 250, 240, 32.26867 + 255, 71, 57, 202, 208, 231, 235, 57, 61, 127, 93, 81, 114, 248, 255, 224, 32.26868 + 255, 255, 249, 255, 241, 246, 185, 56, 10, 62, 95, 189, 203, 201, 199, 173, 32.26869 + 191, 170, 13, 57, 108, 131, 105, 131, 117, 108, 124, 141, 145, 145, 130, 134, 32.26870 + 144, 145, 167, 141, 212, 195, 213, 236, 141, 81, 118, 136, 114, 137, 150, 107, 32.26871 + 132, 137, 108, 142, 116, 142, 125, 255, 255, 246, 243, 253, 214, 72, 117, 144, 32.26872 + 243, 72, 74, 78, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 255, 240, 246, 32.26875 + 250, 229, 87, 189, 234, 163, 143, 67, 206, 234, 254, 250, 111, 111, 255, 246, 32.26876 + 152, 255, 131, 4, 14, 197, 239, 170, 95, 109, 97, 76, 56, 134, 234, 255, 32.26877 + 255, 255, 255, 250, 238, 116, 28, 89, 137, 98, 60, 41, 69, 105, 116, 48, 32.26878 + 2, 32, 49, 88, 121, 138, 116, 129, 125, 100, 132, 134, 132, 138, 132, 128, 32.26879 + 127, 142, 186, 152, 186, 205, 144, 228, 228, 47, 83, 134, 171, 111, 117, 140, 32.26880 + 108, 138, 124, 123, 135, 122, 46, 122, 218, 241, 255, 236, 224, 202, 227, 82, 32.26881 + 202, 160, 41, 68, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 233, 250, 32.26884 + 234, 224, 201, 76, 151, 169, 210, 59, 241, 250, 255, 247, 184, 167, 251, 255, 32.26885 + 43, 220, 202, 66, 41, 134, 184, 187, 175, 78, 89, 93, 78, 75, 165, 217, 32.26886 + 206, 212, 173, 74, 62, 62, 97, 124, 97, 81, 105, 89, 103, 74, 77, 100, 32.26887 + 69, 66, 128, 142, 90, 128, 154, 149, 154, 131, 144, 135, 122, 130, 130, 120, 32.26888 + 109, 131, 194, 193, 187, 172, 112, 188, 221, 79, 59, 115, 85, 116, 130, 134, 32.26889 + 96, 77, 74, 112, 107, 82, 38, 96, 253, 255, 255, 223, 251, 187, 222, 175, 32.26890 + 191, 227, 10, 65, 88, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 104, 147, 249, 32.26893 + 244, 255, 231, 39, 75, 115, 147, 42, 249, 255, 233, 241, 216, 171, 240, 246, 32.26894 + 21, 188, 228, 53, 15, 91, 157, 154, 143, 89, 85, 92, 111, 71, 86, 110, 32.26895 + 111, 119, 73, 105, 49, 76, 120, 92, 83, 111, 105, 94, 116, 79, 55, 38, 32.26896 + 47, 152, 253, 255, 104, 135, 169, 141, 143, 138, 127, 139, 125, 131, 128, 120, 32.26897 + 107, 119, 169, 153, 201, 164, 54, 145, 190, 37, 32, 65, 63, 84, 92, 89, 32.26898 + 71, 48, 59, 72, 50, 73, 46, 34, 227, 255, 235, 253, 211, 248, 192, 209, 32.26899 + 200, 244, 40, 60, 93, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 129, 145, 117, 241, 32.26902 + 231, 216, 77, 94, 100, 108, 105, 56, 255, 255, 242, 247, 233, 220, 224, 246, 32.26903 + 45, 104, 189, 168, 109, 71, 205, 53, 51, 59, 74, 89, 104, 89, 87, 94, 32.26904 + 92, 99, 108, 88, 118, 134, 126, 116, 112, 114, 111, 146, 87, 76, 184, 222, 32.26905 + 229, 255, 231, 243, 94, 122, 127, 121, 112, 100, 84, 81, 73, 77, 69, 69, 32.26906 + 66, 58, 77, 64, 61, 53, 173, 248, 230, 247, 241, 151, 57, 81, 77, 92, 32.26907 + 243, 214, 201, 199, 211, 204, 228, 255, 208, 58, 108, 102, 84, 170, 124, 198, 32.26908 + 188, 242, 79, 55, 88, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 169, 234, 168, 251, 32.26911 + 252, 77, 38, 91, 118, 109, 107, 58, 255, 238, 230, 236, 229, 250, 220, 253, 32.26912 + 43, 20, 81, 210, 209, 155, 196, 182, 83, 87, 71, 100, 109, 125, 119, 124, 32.26913 + 130, 121, 144, 127, 135, 111, 102, 132, 134, 121, 136, 127, 204, 228, 255, 228, 32.26914 + 129, 83, 54, 57, 38, 66, 44, 81, 100, 87, 104, 110, 114, 120, 112, 123, 32.26915 + 130, 109, 105, 101, 93, 101, 107, 172, 237, 232, 250, 255, 223, 27, 28, 69, 32.26916 + 119, 154, 220, 231, 242, 239, 235, 236, 249, 133, 53, 58, 49, 87, 117, 81, 32.26917 + 41, 190, 148, 61, 87, 92, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 226, 198, 152, 108, 232, 32.26920 + 255, 50, 66, 117, 139, 116, 106, 62, 244, 255, 255, 251, 226, 223, 248, 238, 32.26921 + 27, 107, 17, 110, 214, 168, 167, 206, 140, 68, 101, 98, 109, 124, 112, 113, 32.26922 + 126, 111, 104, 110, 114, 106, 78, 62, 74, 76, 53, 134, 238, 202, 109, 151, 32.26923 + 183, 157, 192, 187, 198, 169, 115, 69, 85, 67, 91, 88, 101, 114, 109, 123, 32.26924 + 134, 115, 113, 145, 97, 88, 96, 45, 102, 241, 240, 251, 253, 207, 219, 136, 32.26925 + 73, 91, 201, 206, 203, 196, 242, 231, 253, 244, 231, 120, 63, 75, 115, 214, 32.26926 + 180, 70, 198, 76, 91, 103, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 251, 232, 215, 176, 121, 247, 32.26929 + 243, 153, 38, 126, 126, 116, 96, 76, 228, 255, 232, 236, 255, 255, 254, 229, 32.26930 + 32, 61, 57, 71, 109, 151, 158, 197, 150, 63, 83, 96, 90, 92, 104, 106, 32.26931 + 102, 99, 92, 105, 89, 87, 97, 101, 104, 117, 123, 200, 207, 172, 48, 82, 32.26932 + 212, 200, 187, 171, 169, 165, 179, 64, 80, 59, 49, 75, 95, 112, 110, 123, 32.26933 + 131, 120, 128, 135, 114, 125, 127, 11, 19, 198, 239, 246, 253, 253, 249, 172, 32.26934 + 123, 133, 187, 184, 133, 107, 238, 237, 247, 231, 251, 232, 112, 78, 79, 240, 32.26935 + 234, 58, 185, 88, 95, 111, 84, 140, 255, 255, 255, 255, 255, 255, 255, 255, 32.26936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 234, 225, 212, 188, 205, 251, 32.26938 + 255, 243, 100, 105, 75, 106, 119, 78, 120, 254, 220, 229, 245, 255, 210, 115, 32.26939 + 87, 54, 67, 52, 24, 41, 54, 67, 83, 27, 50, 57, 78, 57, 95, 81, 32.26940 + 94, 90, 111, 133, 93, 76, 93, 239, 255, 255, 255, 247, 249, 178, 104, 74, 32.26941 + 203, 179, 174, 150, 157, 126, 175, 126, 116, 66, 72, 73, 106, 98, 124, 138, 32.26942 + 151, 130, 134, 120, 132, 116, 106, 44, 145, 252, 241, 245, 239, 227, 237, 242, 32.26943 + 241, 239, 210, 79, 59, 95, 233, 239, 251, 245, 221, 255, 203, 65, 76, 143, 32.26944 + 148, 113, 126, 139, 72, 109, 101, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.26945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26946 + 255, 255, 255, 255, 255, 255, 255, 255, 222, 237, 174, 196, 182, 186, 215, 171, 32.26947 + 187, 255, 124, 101, 140, 71, 86, 65, 103, 103, 53, 41, 47, 56, 56, 62, 32.26948 + 123, 115, 101, 58, 42, 47, 27, 28, 59, 51, 77, 61, 45, 28, 138, 203, 32.26949 + 223, 162, 129, 123, 69, 73, 139, 187, 210, 228, 218, 117, 44, 35, 123, 96, 32.26950 + 96, 158, 183, 167, 125, 118, 126, 142, 117, 125, 104, 97, 101, 102, 109, 107, 32.26951 + 122, 107, 142, 128, 129, 89, 119, 76, 234, 255, 255, 246, 245, 229, 234, 241, 32.26952 + 241, 244, 226, 248, 240, 215, 245, 236, 145, 187, 226, 210, 193, 83, 84, 131, 32.26953 + 145, 141, 168, 156, 123, 100, 92, 71, 255, 255, 255, 255, 255, 255, 255, 255, 32.26954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26955 + 255, 255, 255, 255, 255, 255, 255, 255, 92, 159, 106, 33, 34, 36, 15, 62, 32.26956 + 82, 227, 110, 186, 174, 107, 115, 76, 238, 250, 40, 55, 60, 79, 109, 143, 32.26957 + 191, 158, 108, 95, 95, 105, 80, 84, 107, 98, 88, 50, 98, 136, 226, 250, 32.26958 + 255, 249, 255, 183, 138, 52, 87, 85, 69, 47, 60, 108, 169, 144, 117, 115, 32.26959 + 64, 113, 193, 192, 113, 85, 137, 156, 146, 145, 125, 118, 114, 120, 155, 146, 32.26960 + 132, 125, 135, 146, 130, 101, 139, 32, 243, 255, 242, 245, 251, 236, 238, 247, 32.26961 + 244, 247, 241, 243, 243, 244, 231, 251, 245, 67, 12, 35, 112, 134, 137, 138, 32.26962 + 134, 136, 149, 146, 142, 107, 97, 84, 131, 255, 255, 255, 255, 255, 255, 255, 32.26963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26964 + 255, 255, 255, 255, 255, 255, 255, 211, 236, 235, 78, 50, 64, 50, 46, 171, 32.26965 + 197, 230, 98, 143, 123, 93, 101, 178, 255, 219, 75, 102, 95, 108, 130, 138, 32.26966 + 144, 127, 113, 87, 85, 97, 90, 110, 115, 86, 55, 64, 156, 215, 255, 243, 32.26967 + 245, 240, 244, 231, 221, 78, 68, 97, 96, 81, 114, 116, 122, 138, 141, 163, 32.26968 + 99, 82, 172, 223, 211, 135, 153, 172, 176, 135, 147, 163, 138, 91, 124, 121, 32.26969 + 102, 137, 120, 122, 135, 79, 101, 62, 252, 255, 253, 244, 253, 244, 244, 251, 32.26970 + 243, 244, 239, 241, 247, 236, 251, 214, 247, 173, 41, 64, 64, 129, 113, 132, 32.26971 + 166, 175, 157, 149, 164, 127, 211, 207, 182, 255, 255, 255, 255, 255, 255, 255, 32.26972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26973 + 255, 255, 255, 255, 255, 255, 255, 70, 97, 85, 84, 66, 79, 52, 132, 165, 32.26974 + 215, 94, 0, 29, 104, 100, 44, 202, 221, 104, 59, 99, 96, 112, 128, 130, 32.26975 + 124, 136, 136, 133, 118, 112, 103, 119, 135, 140, 184, 221, 251, 245, 241, 236, 32.26976 + 255, 255, 253, 255, 255, 112, 41, 60, 68, 69, 58, 101, 140, 145, 140, 154, 32.26977 + 162, 115, 91, 67, 180, 208, 193, 203, 199, 189, 196, 196, 154, 124, 120, 116, 32.26978 + 118, 145, 139, 99, 105, 127, 149, 64, 143, 255, 255, 247, 255, 246, 247, 247, 32.26979 + 240, 243, 233, 117, 237, 250, 238, 248, 226, 247, 227, 120, 39, 156, 156, 163, 32.26980 + 153, 160, 154, 147, 161, 111, 255, 251, 248, 252, 255, 255, 255, 255, 255, 255, 32.26981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26982 + 255, 255, 255, 255, 255, 255, 91, 91, 117, 83, 108, 121, 179, 169, 226, 213, 32.26983 + 197, 45, 72, 98, 78, 75, 119, 244, 201, 87, 128, 100, 111, 125, 135, 143, 32.26984 + 126, 117, 73, 72, 64, 58, 40, 33, 57, 90, 235, 228, 247, 246, 251, 253, 32.26985 + 243, 246, 252, 244, 244, 115, 46, 152, 197, 197, 189, 75, 95, 64, 151, 159, 32.26986 + 145, 144, 118, 94, 110, 184, 201, 41, 83, 210, 227, 89, 64, 126, 110, 115, 32.26987 + 127, 102, 125, 139, 128, 104, 106, 93, 56, 128, 184, 251, 250, 248, 255, 251, 32.26988 + 247, 254, 229, 78, 59, 138, 239, 235, 244, 251, 249, 234, 57, 79, 113, 155, 32.26989 + 138, 138, 149, 157, 144, 135, 137, 125, 255, 249, 255, 255, 255, 255, 255, 255, 32.26990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.26991 + 255, 255, 255, 255, 255, 231, 59, 102, 119, 85, 94, 118, 237, 252, 219, 209, 32.26992 + 123, 29, 95, 86, 108, 62, 125, 255, 188, 56, 102, 121, 118, 114, 112, 120, 32.26993 + 103, 111, 74, 102, 109, 117, 112, 94, 99, 63, 231, 233, 236, 223, 232, 247, 32.26994 + 242, 255, 255, 255, 255, 172, 128, 237, 255, 238, 249, 148, 85, 50, 162, 147, 32.26995 + 145, 169, 95, 117, 57, 112, 185, 7, 54, 166, 160, 45, 40, 94, 95, 113, 32.26996 + 104, 97, 135, 133, 108, 114, 120, 79, 44, 81, 120, 228, 220, 238, 255, 255, 32.26997 + 252, 253, 203, 79, 44, 36, 238, 253, 231, 231, 232, 255, 164, 77, 106, 122, 32.26998 + 100, 117, 168, 172, 151, 176, 72, 68, 215, 235, 253, 255, 255, 255, 255, 255, 32.26999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27000 + 255, 255, 255, 255, 255, 224, 71, 105, 55, 56, 120, 107, 216, 216, 153, 79, 32.27001 + 68, 66, 89, 80, 99, 54, 140, 255, 115, 42, 106, 112, 101, 104, 114, 114, 32.27002 + 80, 119, 122, 238, 245, 255, 255, 255, 242, 111, 244, 221, 247, 247, 242, 249, 32.27003 + 246, 252, 239, 251, 244, 255, 255, 254, 252, 247, 250, 242, 237, 140, 96, 112, 32.27004 + 119, 103, 136, 104, 107, 98, 84, 111, 86, 73, 34, 90, 104, 85, 117, 137, 32.27005 + 67, 99, 106, 111, 124, 126, 141, 146, 154, 82, 84, 57, 51, 90, 137, 124, 32.27006 + 116, 106, 35, 44, 66, 59, 27, 126, 252, 255, 246, 252, 255, 80, 93, 97, 32.27007 + 90, 89, 124, 113, 124, 115, 105, 116, 83, 201, 238, 243, 255, 255, 255, 255, 32.27008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27009 + 255, 255, 255, 255, 217, 101, 84, 91, 124, 185, 248, 186, 108, 67, 90, 130, 32.27010 + 115, 127, 117, 116, 100, 111, 253, 184, 62, 57, 123, 121, 72, 80, 98, 117, 32.27011 + 121, 255, 250, 248, 231, 238, 251, 233, 241, 255, 211, 246, 207, 199, 235, 234, 32.27012 + 255, 251, 253, 255, 255, 252, 226, 253, 240, 244, 246, 234, 249, 255, 67, 100, 32.27013 + 135, 138, 140, 154, 152, 133, 128, 139, 134, 116, 101, 125, 134, 73, 214, 255, 32.27014 + 116, 88, 93, 78, 112, 107, 112, 121, 132, 167, 143, 146, 167, 124, 66, 86, 32.27015 + 58, 79, 93, 148, 118, 113, 65, 66, 219, 253, 250, 235, 220, 79, 51, 99, 32.27016 + 131, 63, 99, 81, 107, 95, 118, 141, 89, 66, 239, 253, 255, 255, 255, 255, 32.27017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27018 + 255, 255, 255, 164, 138, 58, 95, 102, 211, 239, 143, 84, 99, 95, 116, 118, 32.27019 + 123, 142, 123, 96, 90, 196, 255, 47, 133, 97, 47, 79, 109, 90, 220, 243, 32.27020 + 255, 236, 217, 102, 162, 227, 238, 250, 234, 255, 239, 158, 54, 39, 37, 36, 32.27021 + 134, 225, 238, 249, 230, 248, 251, 250, 228, 239, 248, 241, 251, 255, 33, 136, 32.27022 + 133, 136, 137, 154, 151, 130, 128, 137, 135, 137, 134, 158, 119, 96, 170, 230, 32.27023 + 251, 239, 89, 120, 89, 93, 107, 94, 94, 112, 111, 121, 101, 133, 122, 137, 32.27024 + 159, 128, 185, 157, 228, 177, 200, 199, 252, 93, 79, 64, 92, 92, 75, 251, 32.27025 + 255, 253, 232, 255, 234, 234, 195, 175, 217, 194, 87, 248, 238, 255, 255, 255, 32.27026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27027 + 255, 255, 201, 114, 101, 47, 77, 120, 255, 237, 101, 76, 139, 134, 147, 111, 32.27028 + 124, 156, 143, 94, 111, 231, 255, 57, 135, 105, 62, 59, 230, 243, 255, 255, 32.27029 + 196, 80, 100, 52, 142, 250, 242, 246, 249, 244, 114, 53, 33, 35, 28, 48, 32.27030 + 73, 204, 247, 250, 236, 236, 241, 235, 242, 242, 234, 248, 238, 243, 54, 143, 32.27031 + 132, 130, 119, 141, 147, 131, 134, 129, 124, 142, 145, 149, 126, 134, 146, 210, 32.27032 + 234, 235, 185, 155, 61, 39, 61, 56, 62, 63, 69, 69, 32, 97, 84, 147, 32.27033 + 176, 180, 159, 136, 172, 246, 243, 234, 243, 84, 75, 43, 27, 48, 107, 248, 32.27034 + 249, 246, 253, 255, 241, 255, 255, 241, 234, 245, 171, 255, 230, 232, 255, 255, 32.27035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27036 + 255, 202, 136, 66, 76, 134, 192, 199, 239, 187, 80, 109, 138, 112, 128, 100, 32.27037 + 91, 128, 121, 83, 61, 255, 245, 31, 95, 60, 197, 210, 255, 231, 109, 139, 32.27038 + 93, 81, 100, 64, 148, 217, 210, 230, 251, 206, 50, 193, 225, 205, 181, 167, 32.27039 + 74, 206, 242, 235, 249, 248, 223, 231, 230, 230, 224, 250, 247, 255, 124, 90, 32.27040 + 122, 132, 121, 115, 132, 127, 130, 113, 94, 103, 86, 102, 140, 135, 76, 129, 32.27041 + 127, 169, 246, 248, 224, 194, 214, 223, 233, 232, 235, 228, 255, 54, 89, 196, 32.27042 + 193, 176, 114, 108, 65, 55, 232, 233, 226, 237, 231, 216, 134, 135, 235, 255, 32.27043 + 247, 246, 255, 252, 255, 240, 237, 255, 253, 250, 236, 243, 220, 168, 255, 255, 32.27044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 32.27045 + 102, 111, 102, 113, 156, 209, 223, 243, 156, 80, 97, 145, 145, 130, 144, 152, 32.27046 + 125, 152, 130, 92, 149, 235, 77, 130, 103, 134, 230, 190, 96, 97, 86, 88, 32.27047 + 101, 119, 74, 105, 206, 193, 201, 246, 229, 164, 165, 233, 209, 214, 188, 175, 32.27048 + 136, 251, 237, 251, 222, 248, 242, 230, 204, 236, 230, 234, 99, 70, 118, 129, 32.27049 + 124, 105, 160, 232, 212, 158, 153, 153, 171, 211, 194, 147, 132, 122, 98, 113, 32.27050 + 68, 97, 102, 102, 249, 247, 253, 255, 247, 251, 252, 246, 225, 235, 209, 254, 32.27051 + 225, 196, 196, 123, 96, 67, 158, 251, 235, 250, 224, 249, 171, 233, 255, 255, 32.27052 + 226, 255, 205, 206, 197, 159, 195, 226, 249, 255, 255, 251, 253, 179, 192, 255, 32.27053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 98, 32.27054 + 109, 77, 75, 235, 223, 250, 178, 100, 71, 108, 104, 132, 132, 136, 130, 147, 32.27055 + 134, 148, 117, 133, 242, 56, 74, 87, 167, 188, 61, 112, 74, 107, 111, 121, 32.27056 + 118, 126, 91, 156, 249, 225, 238, 247, 230, 185, 226, 222, 192, 216, 164, 194, 32.27057 + 234, 252, 237, 247, 164, 204, 239, 230, 230, 218, 104, 137, 187, 197, 107, 106, 32.27058 + 119, 105, 121, 137, 136, 138, 213, 247, 238, 237, 176, 125, 106, 108, 144, 161, 32.27059 + 117, 123, 66, 36, 255, 255, 255, 255, 253, 248, 240, 236, 251, 220, 232, 208, 32.27060 + 227, 197, 207, 170, 70, 58, 197, 219, 175, 18, 116, 87, 34, 101, 87, 69, 32.27061 + 52, 104, 33, 72, 59, 57, 109, 85, 73, 112, 188, 215, 238, 193, 179, 255, 32.27062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 88, 79, 32.27063 + 90, 54, 134, 229, 235, 192, 118, 67, 80, 111, 120, 134, 133, 147, 132, 127, 32.27064 + 132, 117, 100, 202, 255, 72, 96, 105, 146, 98, 62, 63, 88, 120, 89, 146, 32.27065 + 116, 109, 64, 188, 236, 234, 244, 233, 245, 224, 199, 204, 197, 181, 152, 207, 32.27066 + 255, 240, 254, 248, 218, 229, 251, 222, 232, 163, 45, 141, 235, 253, 115, 120, 32.27067 + 130, 120, 101, 107, 107, 130, 233, 247, 195, 197, 157, 111, 158, 135, 108, 130, 32.27068 + 138, 140, 98, 65, 255, 249, 239, 241, 239, 216, 206, 220, 209, 237, 191, 132, 32.27069 + 154, 169, 131, 126, 52, 31, 129, 162, 107, 42, 36, 45, 23, 33, 40, 17, 32.27070 + 26, 50, 47, 20, 45, 50, 46, 57, 61, 73, 132, 191, 207, 224, 208, 255, 32.27071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 87, 73, 84, 111, 32.27072 + 101, 100, 157, 189, 128, 49, 91, 89, 93, 88, 119, 137, 128, 149, 157, 131, 32.27073 + 135, 82, 78, 255, 238, 80, 100, 119, 45, 66, 116, 99, 75, 108, 130, 122, 32.27074 + 111, 129, 66, 249, 253, 238, 237, 248, 237, 214, 204, 217, 189, 137, 203, 224, 32.27075 + 244, 255, 226, 234, 255, 205, 161, 51, 37, 28, 111, 252, 242, 231, 143, 135, 32.27076 + 142, 146, 134, 147, 120, 116, 180, 134, 45, 80, 96, 106, 107, 99, 123, 139, 32.27077 + 120, 101, 112, 77, 229, 238, 236, 212, 201, 165, 175, 192, 164, 98, 60, 31, 32.27078 + 46, 16, 35, 24, 26, 30, 22, 24, 31, 36, 45, 32, 52, 45, 40, 50, 32.27079 + 49, 40, 53, 51, 36, 51, 24, 45, 45, 41, 57, 78, 99, 205, 229, 255, 32.27080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 79, 105, 72, 112, 32.27081 + 175, 186, 195, 62, 82, 96, 73, 46, 89, 78, 72, 101, 119, 122, 148, 150, 32.27082 + 94, 141, 128, 159, 115, 131, 118, 82, 94, 201, 255, 255, 29, 103, 98, 101, 32.27083 + 255, 87, 61, 226, 201, 222, 204, 237, 209, 212, 65, 88, 97, 86, 249, 222, 32.27084 + 240, 200, 255, 221, 197, 57, 37, 78, 127, 69, 167, 200, 200, 148, 108, 122, 32.27085 + 117, 98, 111, 101, 86, 69, 57, 55, 56, 59, 62, 72, 72, 71, 71, 74, 32.27086 + 77, 78, 78, 63, 47, 34, 32, 33, 31, 29, 30, 25, 25, 26, 27, 31, 32.27087 + 34, 36, 40, 32, 35, 42, 47, 44, 38, 42, 53, 51, 51, 50, 48, 48, 32.27088 + 48, 50, 51, 45, 45, 48, 49, 55, 61, 64, 64, 55, 83, 140, 185, 190, 32.27089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 73, 95, 49, 65, 174, 32.27090 + 207, 235, 242, 201, 191, 200, 98, 66, 71, 81, 88, 103, 102, 111, 95, 129, 32.27091 + 124, 116, 104, 117, 113, 128, 108, 171, 213, 255, 255, 255, 80, 102, 128, 194, 32.27092 + 255, 54, 66, 117, 97, 179, 214, 227, 235, 115, 111, 129, 134, 109, 123, 108, 32.27093 + 106, 109, 109, 132, 103, 86, 95, 86, 99, 72, 86, 83, 91, 76, 64, 79, 32.27094 + 75, 57, 61, 65, 55, 43, 37, 36, 40, 39, 43, 58, 60, 60, 60, 64, 32.27095 + 68, 69, 69, 60, 45, 35, 35, 38, 37, 35, 37, 35, 36, 34, 33, 37, 32.27096 + 41, 45, 48, 45, 43, 46, 54, 55, 51, 52, 55, 51, 51, 51, 49, 48, 32.27097 + 47, 47, 49, 46, 48, 51, 51, 51, 54, 57, 57, 55, 69, 113, 113, 97, 32.27098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 78, 92, 71, 132, 235, 32.27099 + 228, 235, 234, 245, 249, 236, 81, 94, 107, 119, 97, 90, 82, 70, 58, 87, 32.27100 + 118, 118, 132, 89, 100, 119, 123, 250, 255, 253, 220, 231, 72, 105, 142, 140, 32.27101 + 125, 62, 79, 224, 207, 242, 235, 227, 238, 62, 127, 123, 142, 131, 81, 83, 32.27102 + 79, 101, 66, 79, 49, 94, 94, 75, 61, 64, 31, 31, 35, 38, 40, 44, 32.27103 + 47, 44, 41, 53, 47, 43, 42, 44, 46, 44, 45, 54, 56, 56, 57, 61, 32.27104 + 64, 65, 65, 60, 51, 42, 44, 47, 47, 45, 45, 47, 45, 41, 39, 41, 32.27105 + 44, 49, 54, 57, 51, 50, 59, 66, 66, 62, 57, 55, 53, 52, 51, 51, 32.27106 + 49, 47, 45, 46, 48, 51, 49, 48, 47, 49, 50, 50, 65, 109, 182, 216, 32.27107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 91, 55, 177, 239, 250, 32.27108 + 253, 248, 255, 252, 255, 163, 49, 105, 110, 97, 92, 84, 131, 150, 213, 156, 32.27109 + 134, 136, 134, 122, 122, 116, 98, 157, 118, 77, 48, 105, 94, 124, 131, 141, 32.27110 + 96, 159, 215, 246, 231, 186, 189, 215, 162, 67, 94, 89, 112, 101, 99, 87, 32.27111 + 89, 84, 65, 69, 59, 67, 44, 68, 50, 54, 42, 48, 38, 44, 48, 41, 32.27112 + 47, 56, 45, 44, 41, 39, 40, 43, 44, 42, 43, 55, 58, 56, 57, 59, 32.27113 + 61, 62, 61, 61, 56, 51, 52, 54, 53, 51, 49, 53, 52, 49, 47, 47, 32.27114 + 49, 52, 54, 57, 53, 52, 58, 66, 69, 66, 59, 59, 56, 56, 58, 56, 32.27115 + 52, 48, 46, 49, 46, 47, 47, 48, 45, 45, 45, 36, 47, 56, 186, 255, 32.27116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 83, 74, 255, 255, 178, 32.27117 + 205, 226, 242, 255, 252, 80, 73, 122, 90, 85, 185, 208, 231, 227, 255, 101, 32.27118 + 102, 132, 157, 143, 153, 143, 117, 113, 129, 127, 112, 133, 135, 130, 113, 112, 32.27119 + 95, 228, 239, 179, 135, 46, 98, 137, 44, 59, 66, 67, 70, 48, 76, 61, 32.27120 + 62, 53, 54, 47, 64, 48, 32, 65, 57, 53, 59, 46, 28, 39, 50, 42, 32.27121 + 47, 54, 34, 38, 38, 38, 39, 43, 44, 46, 46, 55, 53, 51, 51, 53, 32.27122 + 53, 50, 49, 55, 53, 51, 50, 55, 56, 55, 52, 57, 57, 57, 56, 55, 32.27123 + 54, 54, 54, 51, 54, 57, 61, 65, 69, 70, 68, 63, 60, 59, 61, 60, 32.27124 + 57, 52, 47, 48, 42, 40, 43, 49, 47, 47, 47, 55, 58, 43, 255, 255, 32.27125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 138, 252, 199, 125, 32.27126 + 142, 187, 188, 182, 211, 65, 95, 100, 70, 86, 215, 247, 239, 255, 237, 77, 32.27127 + 122, 119, 145, 146, 140, 138, 146, 113, 129, 138, 137, 147, 100, 104, 119, 90, 32.27128 + 101, 232, 186, 127, 96, 22, 58, 55, 18, 55, 54, 54, 53, 40, 48, 57, 32.27129 + 51, 60, 50, 40, 49, 48, 54, 43, 40, 52, 47, 53, 32, 34, 40, 34, 32.27130 + 40, 47, 37, 40, 40, 44, 46, 51, 54, 58, 59, 55, 53, 51, 49, 48, 32.27131 + 46, 44, 42, 42, 43, 43, 44, 48, 55, 57, 53, 54, 54, 56, 55, 55, 32.27132 + 51, 51, 48, 49, 57, 63, 64, 65, 69, 72, 71, 66, 63, 61, 61, 63, 32.27133 + 59, 54, 50, 47, 38, 35, 43, 48, 47, 50, 55, 47, 44, 255, 255, 255, 32.27134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 162, 167, 93, 48, 32.27135 + 26, 43, 18, 7, 52, 28, 49, 59, 82, 113, 175, 127, 114, 150, 120, 53, 32.27136 + 91, 79, 92, 99, 85, 96, 122, 106, 89, 85, 86, 61, 81, 71, 83, 91, 32.27137 + 63, 61, 61, 34, 52, 43, 52, 44, 54, 68, 42, 50, 55, 50, 45, 51, 32.27138 + 39, 47, 30, 48, 44, 46, 51, 32, 19, 46, 35, 60, 45, 41, 41, 37, 32.27139 + 38, 46, 47, 33, 36, 42, 45, 48, 49, 51, 51, 55, 53, 50, 49, 48, 32.27140 + 47, 43, 40, 36, 40, 43, 40, 46, 56, 59, 56, 55, 53, 55, 52, 52, 32.27141 + 50, 51, 49, 52, 60, 63, 62, 63, 67, 69, 67, 66, 63, 60, 60, 61, 32.27142 + 61, 56, 52, 45, 39, 40, 43, 43, 40, 52, 66, 71, 129, 255, 255, 255, 32.27143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 35, 44, 32.27144 + 44, 56, 41, 48, 23, 58, 42, 40, 49, 53, 46, 31, 29, 40, 37, 56, 32.27145 + 40, 57, 60, 64, 80, 92, 70, 84, 79, 76, 57, 55, 53, 52, 62, 53, 32.27146 + 66, 58, 63, 61, 66, 59, 45, 54, 37, 65, 48, 41, 51, 35, 50, 36, 32.27147 + 40, 44, 44, 40, 42, 33, 32, 53, 24, 39, 35, 35, 40, 49, 57, 55, 32.27148 + 42, 36, 38, 40, 44, 51, 55, 55, 53, 51, 50, 50, 47, 45, 45, 45, 32.27149 + 44, 41, 40, 42, 47, 46, 43, 45, 55, 58, 54, 63, 62, 60, 56, 56, 32.27150 + 57, 59, 58, 54, 60, 61, 59, 62, 67, 64, 59, 64, 62, 58, 58, 60, 32.27151 + 58, 54, 50, 41, 41, 45, 48, 40, 37, 53, 76, 80, 255, 255, 255, 255, 32.27152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 48, 32.27153 + 46, 48, 50, 46, 50, 52, 49, 48, 51, 50, 46, 40, 37, 38, 37, 38, 32.27154 + 42, 48, 51, 63, 75, 66, 65, 79, 51, 58, 43, 40, 40, 43, 45, 48, 32.27155 + 46, 47, 47, 54, 53, 54, 53, 55, 54, 54, 53, 48, 46, 43, 40, 40, 32.27156 + 41, 42, 42, 39, 42, 45, 42, 39, 35, 35, 39, 40, 43, 42, 40, 47, 32.27157 + 55, 50, 38, 47, 45, 46, 47, 48, 48, 47, 45, 49, 47, 46, 47, 48, 32.27158 + 46, 44, 42, 44, 49, 56, 57, 55, 50, 50, 50, 60, 61, 61, 61, 60, 32.27159 + 56, 54, 53, 59, 59, 61, 62, 60, 61, 63, 65, 64, 57, 65, 67, 58, 32.27160 + 63, 64, 43, 36, 45, 55, 56, 47, 45, 61, 79, 164, 255, 255, 255, 255, 32.27161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 51, 32.27162 + 50, 51, 53, 44, 47, 47, 44, 43, 45, 47, 41, 44, 42, 41, 39, 37, 32.27163 + 37, 38, 41, 53, 67, 63, 57, 68, 42, 51, 32, 30, 32, 34, 36, 38, 32.27164 + 39, 40, 41, 47, 48, 49, 50, 50, 50, 50, 49, 47, 45, 43, 39, 40, 32.27165 + 38, 42, 43, 45, 45, 42, 43, 41, 41, 38, 38, 39, 42, 43, 43, 45, 32.27166 + 52, 53, 49, 45, 48, 50, 48, 45, 43, 47, 48, 52, 50, 49, 50, 52, 32.27167 + 53, 52, 51, 53, 55, 57, 57, 55, 54, 53, 54, 61, 61, 62, 63, 63, 32.27168 + 60, 60, 59, 55, 57, 61, 65, 67, 68, 71, 74, 72, 64, 72, 71, 61, 32.27169 + 63, 62, 43, 43, 44, 46, 43, 48, 60, 77, 89, 255, 255, 255, 255, 255, 32.27170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 50, 32.27171 + 48, 48, 48, 41, 44, 45, 42, 42, 44, 44, 41, 43, 44, 44, 43, 39, 32.27172 + 37, 37, 38, 47, 63, 67, 56, 63, 46, 55, 33, 34, 36, 39, 40, 39, 32.27173 + 39, 40, 41, 44, 45, 46, 47, 48, 49, 50, 50, 50, 47, 44, 39, 39, 32.27174 + 38, 43, 43, 47, 43, 40, 41, 43, 44, 38, 36, 40, 40, 43, 47, 48, 32.27175 + 49, 53, 59, 39, 49, 61, 66, 61, 54, 52, 52, 59, 57, 55, 55, 56, 32.27176 + 57, 56, 55, 60, 58, 57, 57, 59, 60, 60, 60, 64, 66, 66, 67, 68, 32.27177 + 67, 68, 67, 64, 67, 70, 71, 72, 73, 75, 75, 77, 71, 75, 74, 66, 32.27178 + 66, 63, 49, 44, 54, 60, 52, 51, 57, 66, 68, 255, 255, 255, 255, 255, 32.27179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.27180 + 42, 40, 38, 42, 45, 46, 43, 43, 46, 46, 42, 39, 39, 42, 43, 42, 32.27181 + 40, 40, 41, 38, 54, 73, 58, 62, 55, 62, 39, 40, 44, 46, 44, 40, 32.27182 + 38, 39, 41, 49, 49, 49, 50, 51, 53, 55, 56, 53, 49, 45, 39, 37, 32.27183 + 38, 41, 44, 47, 44, 42, 40, 42, 41, 39, 37, 45, 41, 44, 52, 53, 32.27184 + 48, 49, 58, 64, 61, 57, 52, 51, 54, 61, 67, 60, 58, 58, 59, 60, 32.27185 + 60, 59, 57, 64, 61, 59, 61, 65, 67, 65, 64, 72, 71, 72, 69, 70, 32.27186 + 71, 73, 72, 69, 70, 73, 76, 77, 77, 81, 82, 78, 73, 74, 75, 73, 32.27187 + 71, 69, 60, 57, 80, 91, 73, 53, 49, 55, 255, 255, 255, 255, 255, 255, 32.27188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.27189 + 42, 39, 37, 42, 45, 44, 40, 40, 44, 45, 43, 37, 40, 43, 43, 43, 32.27190 + 41, 42, 43, 34, 45, 78, 62, 60, 59, 65, 40, 39, 41, 42, 38, 33, 32.27191 + 32, 35, 39, 54, 53, 52, 51, 52, 55, 57, 59, 54, 49, 44, 39, 36, 32.27192 + 38, 41, 43, 44, 45, 44, 42, 40, 38, 41, 41, 47, 40, 45, 56, 58, 32.27193 + 52, 50, 52, 62, 59, 58, 59, 63, 61, 55, 52, 55, 55, 56, 59, 62, 32.27194 + 64, 62, 61, 66, 64, 64, 67, 71, 71, 68, 65, 75, 75, 74, 71, 70, 32.27195 + 71, 71, 70, 59, 61, 67, 73, 79, 84, 93, 96, 81, 79, 76, 75, 79, 32.27196 + 74, 70, 68, 72, 91, 97, 76, 55, 51, 55, 55, 255, 255, 255, 255, 255, 32.27197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.27198 + 46, 45, 44, 41, 43, 42, 38, 38, 41, 44, 42, 42, 44, 46, 46, 44, 32.27199 + 42, 43, 43, 37, 39, 83, 71, 60, 56, 59, 40, 41, 44, 43, 39, 33, 32.27200 + 34, 40, 47, 61, 59, 56, 54, 54, 56, 59, 61, 57, 51, 45, 39, 35, 32.27201 + 37, 42, 44, 42, 45, 45, 43, 38, 38, 41, 46, 47, 45, 51, 59, 62, 32.27202 + 61, 56, 53, 50, 51, 57, 68, 80, 80, 72, 64, 61, 59, 57, 58, 61, 32.27203 + 63, 64, 63, 63, 63, 64, 67, 68, 67, 65, 63, 72, 72, 70, 68, 66, 32.27204 + 63, 62, 62, 57, 58, 62, 64, 70, 78, 87, 90, 88, 85, 77, 74, 79, 32.27205 + 72, 63, 66, 58, 66, 70, 63, 60, 58, 46, 32, 255, 255, 255, 255, 255, 32.27206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 32.27207 + 47, 45, 45, 40, 42, 40, 36, 37, 40, 44, 42, 45, 48, 48, 48, 47, 32.27208 + 47, 50, 51, 44, 38, 90, 81, 66, 60, 60, 47, 56, 58, 54, 45, 37, 32.27209 + 37, 45, 53, 70, 67, 62, 58, 57, 58, 60, 62, 59, 53, 45, 39, 35, 32.27210 + 37, 42, 45, 41, 41, 41, 41, 40, 42, 44, 47, 52, 57, 61, 61, 61, 32.27211 + 62, 60, 56, 71, 60, 47, 44, 55, 73, 90, 102, 84, 77, 66, 58, 55, 32.27212 + 56, 58, 59, 54, 55, 56, 55, 53, 53, 53, 56, 62, 65, 64, 60, 58, 32.27213 + 56, 53, 51, 56, 56, 57, 55, 59, 65, 74, 78, 86, 85, 71, 66, 74, 32.27214 + 62, 50, 58, 44, 43, 46, 52, 63, 67, 64, 62, 255, 255, 255, 255, 255, 32.27215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 44, 32.27216 + 43, 41, 41, 43, 45, 43, 37, 38, 43, 45, 44, 44, 46, 48, 48, 48, 32.27217 + 52, 57, 59, 46, 36, 93, 89, 73, 67, 67, 58, 68, 69, 61, 49, 37, 32.27218 + 35, 42, 50, 77, 73, 67, 62, 60, 60, 63, 65, 60, 54, 46, 36, 34, 32.27219 + 35, 40, 45, 44, 40, 37, 37, 43, 45, 46, 44, 57, 69, 72, 63, 56, 32.27220 + 58, 60, 58, 57, 59, 63, 64, 66, 65, 64, 65, 109, 96, 77, 59, 50, 32.27221 + 47, 49, 51, 45, 46, 45, 42, 38, 38, 42, 47, 55, 57, 57, 56, 53, 32.27222 + 50, 47, 45, 46, 46, 46, 48, 51, 60, 71, 77, 77, 77, 62, 56, 67, 32.27223 + 53, 40, 51, 54, 45, 37, 42, 58, 85, 122, 151, 255, 255, 255, 255, 255, 32.27224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 44, 32.27225 + 45, 42, 41, 42, 37, 37, 41, 42, 39, 40, 45, 37, 47, 53, 50, 46, 32.27226 + 49, 61, 72, 43, 29, 69, 98, 70, 67, 77, 50, 70, 66, 63, 58, 42, 32.27227 + 27, 33, 49, 67, 57, 60, 64, 56, 54, 61, 62, 69, 51, 40, 41, 40, 32.27228 + 34, 37, 44, 37, 40, 40, 40, 41, 42, 48, 52, 53, 64, 70, 63, 60, 32.27229 + 66, 68, 64, 59, 60, 62, 64, 68, 68, 67, 64, 78, 107, 109, 69, 38, 32.27230 + 41, 51, 49, 43, 50, 45, 40, 45, 37, 32, 48, 52, 40, 42, 56, 48, 32.27231 + 46, 53, 36, 39, 29, 48, 54, 37, 50, 73, 65, 68, 62, 54, 71, 51, 32.27232 + 29, 53, 40, 55, 38, 46, 38, 44, 82, 98, 99, 255, 255, 255, 255, 255, 32.27233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 42, 43, 32.27234 + 44, 41, 40, 41, 36, 35, 39, 40, 36, 38, 45, 41, 52, 61, 60, 57, 32.27235 + 58, 66, 74, 60, 45, 73, 97, 81, 80, 83, 61, 73, 69, 68, 66, 54, 32.27236 + 43, 48, 62, 80, 69, 71, 75, 68, 67, 72, 70, 61, 46, 37, 37, 41, 32.27237 + 36, 40, 46, 47, 49, 48, 49, 47, 50, 57, 60, 63, 72, 76, 69, 66, 32.27238 + 74, 75, 71, 69, 68, 68, 69, 71, 70, 70, 67, 64, 51, 74, 121, 123, 32.27239 + 75, 43, 48, 48, 18, 28, 41, 33, 35, 60, 33, 36, 65, 64, 44, 39, 32.27240 + 36, 61, 36, 40, 57, 51, 48, 47, 38, 56, 82, 61, 43, 42, 29, 17, 32.27241 + 29, 35, 24, 56, 27, 29, 41, 48, 36, 33, 69, 255, 255, 255, 255, 255, 32.27242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 46, 44, 32.27243 + 44, 42, 40, 40, 36, 35, 36, 37, 36, 39, 46, 48, 58, 68, 70, 69, 32.27244 + 68, 71, 76, 71, 58, 66, 81, 84, 86, 79, 64, 74, 70, 70, 71, 67, 32.27245 + 60, 64, 74, 85, 73, 74, 78, 74, 73, 75, 69, 57, 45, 39, 40, 44, 32.27246 + 40, 43, 47, 48, 49, 50, 51, 50, 54, 60, 63, 68, 74, 77, 71, 70, 32.27247 + 76, 76, 73, 75, 72, 71, 69, 70, 69, 68, 66, 63, 72, 64, 55, 83, 32.27248 + 126, 128, 98, 50, 94, 72, 37, 60, 36, 44, 42, 35, 40, 28, 35, 62, 32.27249 + 37, 43, 40, 21, 49, 41, 33, 27, 35, 68, 64, 85, 77, 113, 108, 97, 32.27250 + 102, 81, 85, 60, 122, 126, 74, 89, 120, 95, 84, 255, 255, 255, 255, 255, 32.27251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 51, 51, 48, 32.27252 + 47, 43, 40, 40, 39, 36, 36, 39, 42, 46, 50, 57, 64, 73, 76, 76, 32.27253 + 74, 76, 77, 72, 63, 57, 65, 85, 86, 72, 62, 69, 68, 68, 71, 71, 32.27254 + 68, 70, 76, 83, 72, 73, 77, 74, 75, 73, 62, 61, 51, 44, 46, 47, 32.27255 + 45, 44, 48, 50, 50, 51, 50, 52, 57, 61, 62, 72, 74, 75, 72, 75, 32.27256 + 78, 79, 73, 79, 75, 71, 69, 67, 67, 65, 64, 69, 65, 56, 52, 72, 32.27257 + 105, 124, 126, 114, 66, 36, 46, 63, 30, 57, 34, 41, 48, 39, 34, 58, 32.27258 + 63, 33, 57, 52, 22, 28, 57, 27, 45, 112, 77, 87, 81, 113, 122, 98, 32.27259 + 70, 69, 109, 115, 168, 166, 129, 140, 124, 84, 111, 255, 255, 255, 255, 255, 32.27260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 53, 55, 55, 51, 32.27261 + 48, 44, 40, 43, 45, 44, 44, 48, 52, 57, 59, 70, 72, 77, 79, 80, 32.27262 + 80, 82, 82, 78, 73, 62, 65, 89, 92, 75, 68, 69, 68, 67, 68, 69, 32.27263 + 68, 69, 72, 82, 74, 76, 80, 77, 78, 75, 61, 61, 53, 47, 48, 50, 32.27264 + 49, 48, 48, 57, 56, 55, 58, 61, 66, 68, 68, 77, 76, 76, 75, 80, 32.27265 + 83, 82, 78, 86, 81, 77, 72, 72, 71, 69, 68, 65, 55, 61, 81, 81, 32.27266 + 62, 60, 75, 107, 95, 70, 40, 26, 18, 49, 24, 26, 13, 31, 43, 34, 32.27267 + 48, 28, 168, 124, 67, 91, 151, 108, 68, 95, 74, 58, 49, 31, 43, 38, 32.27268 + 29, 81, 134, 162, 156, 135, 125, 120, 51, 21, 158, 255, 255, 255, 255, 255, 32.27269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 53, 57, 59, 55, 32.27270 + 50, 48, 45, 48, 51, 53, 56, 60, 68, 73, 73, 83, 84, 85, 84, 87, 32.27271 + 86, 87, 88, 78, 79, 72, 73, 86, 91, 81, 78, 74, 74, 72, 69, 68, 32.27272 + 68, 70, 72, 79, 75, 81, 83, 79, 80, 77, 63, 56, 50, 45, 44, 49, 32.27273 + 50, 53, 51, 57, 57, 57, 62, 66, 70, 70, 70, 78, 73, 73, 76, 82, 32.27274 + 86, 83, 79, 83, 78, 75, 73, 73, 74, 72, 71, 67, 79, 73, 53, 51, 32.27275 + 64, 58, 36, 43, 125, 133, 79, 47, 29, 10, 27, 56, 34, 42, 39, 31, 32.27276 + 63, 60, 209, 244, 225, 197, 170, 120, 59, 30, 39, 80, 82, 45, 64, 100, 32.27277 + 115, 144, 142, 86, 82, 63, 37, 33, 21, 37, 255, 255, 255, 255, 255, 255, 32.27278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 62, 47, 55, 61, 66, 64, 32.27279 + 60, 58, 56, 54, 59, 64, 68, 74, 84, 87, 86, 91, 90, 90, 89, 92, 32.27280 + 90, 88, 85, 77, 79, 77, 74, 76, 84, 87, 84, 78, 80, 77, 72, 68, 32.27281 + 68, 72, 74, 75, 77, 85, 87, 80, 82, 80, 66, 59, 54, 48, 44, 49, 32.27282 + 52, 55, 53, 50, 51, 55, 61, 66, 70, 67, 65, 78, 72, 70, 76, 84, 32.27283 + 89, 84, 80, 79, 76, 75, 73, 74, 76, 76, 75, 72, 67, 64, 65, 68, 32.27284 + 66, 57, 49, 49, 8, 56, 126, 104, 99, 39, 21, 16, 40, 47, 26, 109, 32.27285 + 210, 228, 242, 196, 125, 66, 13, 12, 28, 38, 98, 151, 142, 117, 135, 182, 32.27286 + 177, 121, 67, 58, 34, 37, 41, 45, 67, 127, 255, 255, 255, 255, 255, 255, 32.27287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 62, 42, 50, 60, 67, 67, 32.27288 + 66, 64, 62, 53, 60, 68, 73, 81, 93, 95, 90, 89, 88, 88, 90, 91, 32.27289 + 89, 84, 80, 75, 77, 80, 74, 68, 76, 91, 90, 80, 81, 78, 70, 64, 32.27290 + 65, 71, 74, 75, 80, 90, 91, 85, 87, 85, 72, 67, 61, 53, 49, 48, 32.27291 + 53, 54, 51, 49, 51, 55, 63, 69, 71, 67, 64, 84, 76, 75, 82, 94, 32.27292 + 96, 93, 89, 81, 79, 79, 78, 80, 82, 83, 80, 70, 70, 68, 64, 63, 32.27293 + 64, 64, 63, 37, 36, 39, 70, 115, 187, 73, 25, 52, 23, 30, 83, 215, 32.27294 + 229, 246, 230, 189, 34, 8, 31, 37, 39, 41, 109, 200, 156, 143, 156, 205, 32.27295 + 188, 90, 46, 50, 36, 53, 49, 46, 96, 255, 255, 255, 255, 255, 255, 255, 32.27296 + 255, 255, 255, 255, 255, 255, 255, 255, 65, 61, 117, 104, 106, 81, 63, 78, 32.27297 + 89, 74, 63, 57, 61, 74, 78, 78, 89, 96, 87, 96, 80, 84, 94, 90, 32.27298 + 83, 84, 83, 84, 83, 81, 78, 76, 72, 71, 70, 85, 87, 77, 63, 56, 32.27299 + 62, 70, 72, 81, 84, 85, 87, 86, 82, 80, 77, 69, 70, 72, 66, 58, 32.27300 + 55, 55, 56, 42, 48, 56, 60, 62, 68, 76, 81, 79, 88, 94, 93, 92, 32.27301 + 95, 93, 88, 87, 88, 88, 88, 86, 83, 78, 75, 76, 80, 82, 78, 77, 32.27302 + 76, 73, 67, 81, 32, 59, 42, 38, 51, 157, 192, 23, 52, 183, 247, 244, 32.27303 + 241, 224, 111, 55, 19, 45, 45, 24, 49, 81, 106, 142, 75, 104, 123, 83, 32.27304 + 59, 45, 41, 43, 46, 51, 56, 73, 192, 255, 255, 255, 255, 255, 255, 255, 32.27305 + 255, 255, 255, 255, 255, 255, 255, 197, 86, 101, 151, 170, 158, 145, 114, 83, 32.27306 + 87, 93, 78, 74, 70, 81, 95, 94, 95, 102, 100, 90, 76, 80, 91, 89, 32.27307 + 85, 86, 86, 87, 86, 85, 82, 79, 76, 74, 73, 72, 77, 77, 71, 68, 32.27308 + 72, 75, 75, 81, 82, 85, 84, 84, 80, 79, 78, 72, 70, 69, 67, 65, 32.27309 + 63, 62, 61, 54, 58, 65, 67, 68, 71, 77, 81, 80, 85, 87, 84, 85, 32.27310 + 92, 96, 96, 90, 92, 93, 92, 89, 85, 81, 80, 78, 82, 83, 78, 80, 32.27311 + 79, 77, 70, 59, 69, 69, 27, 52, 37, 96, 166, 149, 191, 250, 221, 114, 32.27312 + 76, 75, 14, 60, 40, 41, 35, 46, 63, 71, 104, 112, 42, 47, 64, 55, 32.27313 + 52, 39, 31, 51, 31, 45, 100, 168, 255, 255, 255, 255, 255, 255, 255, 255, 32.27314 + 255, 255, 255, 255, 255, 255, 85, 118, 139, 150, 176, 177, 166, 173, 147, 94, 32.27315 + 97, 121, 105, 87, 74, 82, 101, 99, 92, 100, 105, 93, 80, 84, 94, 92, 32.27316 + 89, 91, 89, 87, 85, 85, 82, 78, 75, 73, 72, 62, 68, 71, 71, 70, 32.27317 + 74, 77, 76, 84, 84, 86, 83, 82, 78, 79, 79, 76, 71, 67, 67, 72, 32.27318 + 73, 70, 66, 68, 70, 75, 74, 73, 74, 79, 81, 80, 83, 85, 85, 86, 32.27319 + 92, 97, 98, 92, 96, 98, 97, 93, 88, 87, 87, 85, 87, 86, 80, 79, 32.27320 + 78, 74, 69, 71, 55, 59, 34, 41, 17, 58, 95, 97, 164, 207, 149, 35, 32.27321 + 22, 46, 39, 41, 46, 37, 40, 81, 79, 48, 70, 69, 47, 49, 44, 40, 32.27322 + 52, 48, 41, 34, 43, 93, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27323 + 255, 255, 255, 255, 255, 115, 111, 145, 162, 159, 165, 175, 171, 178, 155, 108, 32.27324 + 98, 102, 84, 90, 79, 84, 98, 95, 91, 97, 97, 100, 87, 91, 98, 95, 32.27325 + 92, 93, 89, 87, 86, 86, 83, 79, 76, 74, 73, 69, 70, 69, 69, 68, 32.27326 + 73, 77, 78, 85, 86, 87, 82, 80, 76, 79, 80, 77, 74, 71, 70, 74, 32.27327 + 75, 74, 73, 75, 76, 78, 78, 77, 79, 83, 84, 80, 85, 92, 95, 95, 32.27328 + 95, 94, 92, 93, 97, 100, 99, 94, 90, 90, 92, 92, 93, 89, 81, 77, 32.27329 + 77, 72, 67, 57, 35, 55, 38, 30, 41, 83, 68, 93, 135, 135, 99, 33, 32.27330 + 38, 40, 40, 33, 44, 41, 55, 93, 86, 49, 46, 39, 63, 70, 49, 44, 32.27331 + 53, 49, 41, 33, 102, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27332 + 255, 255, 255, 255, 110, 113, 133, 163, 176, 168, 166, 181, 183, 171, 152, 143, 32.27333 + 128, 105, 93, 96, 92, 94, 97, 94, 100, 102, 93, 99, 89, 92, 98, 95, 32.27334 + 94, 95, 89, 92, 91, 91, 88, 86, 83, 81, 80, 77, 76, 76, 78, 78, 32.27335 + 79, 80, 82, 85, 86, 87, 82, 78, 75, 79, 82, 76, 77, 76, 74, 71, 32.27336 + 70, 75, 78, 78, 78, 78, 78, 81, 85, 90, 91, 87, 89, 94, 97, 96, 32.27337 + 91, 89, 88, 92, 95, 97, 97, 94, 92, 92, 93, 91, 92, 90, 83, 80, 32.27338 + 79, 75, 71, 55, 59, 60, 35, 47, 62, 77, 67, 49, 56, 30, 26, 16, 32.27339 + 36, 34, 45, 53, 45, 48, 64, 75, 83, 81, 58, 36, 42, 34, 35, 41, 32.27340 + 36, 39, 54, 89, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27341 + 255, 255, 255, 116, 128, 129, 172, 192, 189, 177, 170, 171, 175, 157, 148, 165, 32.27342 + 161, 142, 139, 105, 102, 101, 97, 95, 105, 107, 91, 90, 84, 89, 95, 93, 32.27343 + 96, 98, 91, 91, 90, 91, 89, 87, 85, 83, 83, 75, 75, 80, 88, 90, 32.27344 + 86, 80, 78, 83, 85, 88, 82, 78, 75, 79, 83, 76, 78, 79, 75, 70, 32.27345 + 69, 75, 80, 82, 81, 80, 80, 85, 89, 94, 95, 94, 90, 90, 90, 88, 32.27346 + 85, 87, 92, 94, 94, 94, 95, 96, 95, 95, 94, 87, 90, 91, 87, 87, 32.27347 + 87, 85, 81, 80, 19, 15, 58, 76, 61, 55, 51, 46, 49, 34, 35, 36, 32.27348 + 39, 39, 57, 53, 39, 55, 77, 65, 82, 106, 67, 63, 47, 34, 57, 58, 32.27349 + 41, 87, 151, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27350 + 255, 211, 105, 125, 143, 143, 184, 186, 179, 168, 157, 171, 164, 161, 155, 151, 32.27351 + 152, 151, 144, 110, 99, 98, 100, 97, 100, 102, 94, 91, 86, 91, 95, 94, 32.27352 + 98, 101, 93, 88, 88, 89, 88, 87, 85, 85, 84, 79, 78, 81, 91, 92, 32.27353 + 86, 80, 79, 80, 84, 88, 83, 79, 75, 80, 84, 78, 77, 75, 73, 72, 32.27354 + 74, 77, 79, 84, 81, 80, 79, 81, 85, 88, 88, 90, 86, 87, 90, 90, 32.27355 + 87, 90, 97, 98, 95, 93, 96, 100, 102, 99, 96, 90, 94, 95, 92, 92, 32.27356 + 92, 89, 84, 73, 35, 42, 89, 102, 84, 62, 45, 29, 38, 45, 40, 45, 32.27357 + 35, 38, 45, 43, 41, 56, 79, 68, 86, 117, 79, 35, 37, 32, 49, 43, 32.27358 + 47, 124, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27359 + 255, 141, 125, 162, 181, 162, 184, 167, 169, 173, 168, 156, 146, 166, 169, 138, 32.27360 + 143, 163, 151, 116, 95, 93, 105, 101, 95, 96, 98, 97, 93, 97, 99, 97, 32.27361 + 100, 102, 92, 91, 91, 92, 92, 91, 90, 90, 90, 96, 89, 86, 91, 91, 32.27362 + 87, 85, 87, 78, 83, 88, 84, 80, 76, 80, 85, 80, 76, 71, 71, 76, 32.27363 + 80, 80, 79, 85, 82, 79, 76, 77, 79, 81, 80, 82, 81, 89, 98, 100, 32.27364 + 95, 94, 99, 102, 97, 94, 97, 104, 107, 103, 98, 97, 101, 102, 98, 96, 32.27365 + 94, 89, 83, 69, 205, 191, 105, 113, 110, 44, 22, 38, 38, 44, 28, 47, 32.27366 + 46, 55, 43, 54, 57, 53, 65, 67, 90, 130, 108, 62, 85, 79, 82, 92, 32.27367 + 136, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27368 + 161, 161, 163, 183, 176, 172, 170, 169, 167, 164, 159, 155, 150, 153, 159, 147, 32.27369 + 133, 145, 170, 145, 92, 103, 84, 122, 108, 108, 88, 100, 104, 95, 89, 101, 32.27370 + 105, 101, 103, 103, 91, 90, 99, 101, 93, 93, 102, 99, 90, 88, 97, 97, 32.27371 + 88, 84, 87, 77, 78, 81, 79, 85, 86, 84, 77, 81, 79, 75, 73, 76, 32.27372 + 81, 82, 80, 84, 83, 82, 78, 78, 82, 87, 86, 83, 86, 88, 86, 88, 32.27373 + 94, 98, 99, 101, 99, 94, 91, 98, 108, 106, 98, 87, 83, 81, 87, 100, 32.27374 + 104, 89, 71, 82, 192, 119, 41, 67, 96, 11, 44, 47, 46, 43, 43, 46, 32.27375 + 51, 55, 56, 60, 49, 72, 71, 71, 91, 96, 112, 86, 86, 122, 152, 205, 32.27376 + 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27377 + 167, 175, 182, 180, 176, 172, 170, 171, 169, 166, 162, 170, 166, 165, 160, 148, 32.27378 + 137, 138, 141, 158, 130, 110, 101, 90, 112, 101, 106, 98, 104, 98, 94, 105, 32.27379 + 107, 101, 100, 105, 96, 94, 98, 98, 93, 92, 97, 93, 87, 89, 99, 99, 32.27380 + 90, 86, 89, 85, 84, 84, 82, 89, 90, 85, 74, 81, 77, 75, 78, 80, 32.27381 + 80, 80, 79, 83, 83, 84, 83, 83, 84, 87, 85, 82, 86, 88, 86, 87, 32.27382 + 93, 97, 97, 98, 96, 91, 89, 96, 104, 103, 96, 85, 78, 80, 93, 101, 32.27383 + 96, 88, 85, 91, 99, 134, 141, 49, 56, 54, 60, 50, 49, 47, 47, 50, 32.27384 + 54, 56, 57, 66, 56, 76, 74, 72, 89, 93, 105, 122, 148, 199, 204, 215, 32.27385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27386 + 255, 174, 177, 177, 173, 172, 170, 171, 171, 169, 166, 151, 155, 158, 155, 159, 32.27387 + 164, 164, 154, 150, 138, 106, 95, 73, 113, 97, 107, 96, 105, 102, 99, 110, 32.27388 + 110, 101, 98, 106, 102, 99, 95, 94, 93, 92, 91, 90, 89, 93, 102, 98, 32.27389 + 88, 84, 87, 82, 81, 80, 80, 87, 88, 82, 70, 73, 68, 70, 78, 83, 32.27390 + 79, 78, 81, 83, 83, 83, 84, 86, 85, 85, 85, 81, 85, 87, 85, 85, 32.27391 + 90, 94, 93, 94, 92, 88, 88, 94, 100, 99, 94, 85, 77, 83, 99, 99, 32.27392 + 87, 86, 97, 90, 54, 102, 149, 64, 51, 51, 63, 48, 47, 47, 49, 53, 32.27393 + 56, 57, 57, 67, 60, 77, 77, 74, 87, 92, 98, 118, 168, 238, 229, 255, 32.27394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27395 + 255, 172, 170, 172, 172, 169, 169, 172, 172, 173, 169, 163, 164, 163, 161, 163, 32.27396 + 167, 163, 153, 156, 143, 128, 100, 109, 129, 110, 98, 100, 109, 105, 101, 112, 32.27397 + 112, 103, 101, 105, 104, 100, 92, 90, 93, 92, 87, 94, 94, 97, 101, 93, 32.27398 + 84, 81, 84, 72, 74, 78, 77, 83, 84, 82, 74, 69, 63, 65, 76, 82, 32.27399 + 77, 78, 86, 84, 82, 82, 84, 86, 84, 84, 84, 80, 84, 86, 84, 84, 32.27400 + 88, 90, 89, 92, 90, 87, 88, 93, 97, 96, 93, 87, 85, 90, 96, 97, 32.27401 + 88, 88, 95, 82, 64, 62, 79, 60, 59, 32, 49, 48, 48, 50, 54, 59, 32.27402 + 63, 64, 63, 68, 67, 80, 83, 81, 93, 100, 99, 92, 145, 224, 223, 255, 32.27403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27404 + 255, 230, 184, 172, 173, 175, 175, 176, 175, 177, 176, 180, 170, 168, 170, 166, 32.27405 + 159, 156, 159, 158, 156, 148, 124, 129, 130, 98, 91, 108, 114, 107, 101, 111, 32.27406 + 113, 106, 106, 102, 101, 97, 90, 88, 92, 92, 88, 95, 95, 96, 95, 88, 32.27407 + 82, 82, 86, 70, 76, 82, 79, 81, 81, 83, 81, 76, 70, 70, 76, 77, 32.27408 + 74, 80, 88, 85, 80, 78, 80, 80, 78, 83, 86, 80, 84, 86, 83, 83, 32.27409 + 86, 87, 86, 91, 88, 87, 90, 94, 95, 95, 94, 91, 96, 95, 90, 92, 32.27410 + 95, 92, 81, 74, 52, 63, 57, 19, 44, 53, 44, 55, 56, 58, 61, 66, 32.27411 + 68, 68, 67, 72, 76, 83, 88, 87, 96, 108, 99, 92, 134, 216, 225, 255, 32.27412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27413 + 255, 255, 181, 176, 178, 180, 181, 180, 181, 182, 181, 171, 162, 166, 171, 169, 32.27414 + 163, 168, 178, 146, 161, 151, 152, 127, 123, 80, 105, 114, 119, 109, 101, 111, 32.27415 + 114, 109, 110, 102, 97, 92, 89, 88, 88, 89, 89, 91, 91, 90, 89, 85, 32.27416 + 85, 86, 88, 74, 78, 81, 76, 76, 77, 79, 78, 86, 84, 82, 78, 75, 32.27417 + 75, 80, 83, 87, 79, 76, 79, 79, 76, 82, 88, 80, 85, 87, 84, 82, 32.27418 + 85, 85, 83, 91, 87, 87, 91, 94, 93, 93, 94, 94, 102, 97, 86, 86, 32.27419 + 96, 87, 69, 72, 43, 62, 62, 32, 52, 66, 58, 58, 58, 58, 60, 63, 32.27420 + 64, 63, 62, 70, 78, 77, 84, 83, 89, 105, 90, 99, 123, 206, 228, 255, 32.27421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27422 + 255, 255, 255, 177, 179, 182, 182, 181, 181, 184, 184, 179, 176, 176, 170, 166, 32.27423 + 166, 165, 164, 159, 166, 166, 170, 156, 124, 83, 121, 116, 122, 111, 104, 113, 32.27424 + 115, 110, 111, 104, 93, 88, 89, 88, 82, 83, 89, 87, 87, 86, 86, 86, 32.27425 + 87, 86, 83, 79, 77, 74, 69, 75, 80, 80, 75, 82, 87, 86, 76, 74, 32.27426 + 78, 82, 77, 86, 78, 77, 83, 83, 77, 79, 87, 80, 86, 88, 85, 83, 32.27427 + 84, 84, 82, 89, 85, 86, 92, 94, 91, 91, 94, 95, 97, 94, 88, 85, 32.27428 + 87, 77, 66, 71, 54, 57, 58, 69, 69, 53, 60, 56, 55, 55, 58, 61, 32.27429 + 64, 64, 64, 69, 79, 74, 83, 83, 90, 109, 91, 109, 102, 179, 221, 255, 32.27430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27431 + 255, 255, 255, 175, 177, 179, 179, 178, 177, 180, 180, 171, 179, 177, 164, 164, 32.27432 + 175, 172, 158, 175, 155, 173, 158, 185, 107, 75, 95, 114, 121, 111, 104, 113, 32.27433 + 115, 110, 110, 107, 92, 86, 90, 89, 79, 79, 89, 88, 88, 87, 87, 89, 32.27434 + 89, 84, 77, 88, 80, 70, 71, 81, 92, 88, 79, 70, 83, 85, 73, 72, 32.27435 + 81, 84, 74, 85, 78, 78, 86, 87, 78, 79, 85, 81, 86, 88, 85, 83, 32.27436 + 84, 84, 81, 88, 84, 85, 91, 93, 89, 89, 93, 94, 90, 91, 91, 87, 32.27437 + 76, 70, 69, 72, 57, 72, 69, 64, 62, 52, 48, 56, 56, 57, 61, 68, 32.27438 + 73, 76, 77, 74, 86, 80, 91, 93, 102, 126, 106, 130, 95, 158, 216, 255, 32.27439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27440 + 255, 255, 255, 228, 176, 176, 177, 179, 180, 183, 182, 178, 169, 169, 175, 169, 32.27441 + 159, 163, 178, 173, 166, 160, 162, 169, 164, 139, 115, 100, 118, 115, 104, 81, 32.27442 + 125, 126, 96, 107, 96, 89, 89, 87, 77, 76, 80, 93, 91, 87, 82, 82, 32.27443 + 85, 85, 83, 83, 77, 73, 72, 74, 75, 74, 74, 76, 75, 76, 79, 82, 32.27444 + 81, 76, 72, 79, 82, 79, 73, 75, 79, 83, 78, 83, 83, 82, 81, 79, 32.27445 + 80, 83, 86, 75, 80, 84, 85, 83, 83, 86, 89, 90, 90, 87, 82, 77, 32.27446 + 74, 75, 76, 57, 57, 59, 58, 58, 54, 55, 56, 65, 66, 61, 66, 79, 32.27447 + 81, 81, 92, 92, 88, 75, 104, 94, 92, 138, 115, 116, 110, 105, 200, 213, 32.27448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27449 + 255, 255, 255, 255, 176, 177, 176, 180, 180, 181, 180, 179, 174, 174, 177, 174, 32.27450 + 167, 169, 177, 171, 166, 161, 163, 169, 166, 145, 123, 116, 105, 102, 120, 101, 32.27451 + 112, 108, 107, 101, 92, 87, 87, 87, 79, 79, 81, 85, 84, 85, 85, 86, 32.27452 + 88, 89, 89, 74, 74, 74, 73, 71, 71, 71, 72, 75, 74, 75, 77, 79, 32.27453 + 79, 75, 71, 76, 79, 79, 75, 75, 79, 79, 75, 79, 80, 82, 82, 80, 32.27454 + 79, 80, 81, 82, 82, 83, 84, 86, 87, 86, 85, 86, 86, 84, 81, 76, 32.27455 + 73, 74, 75, 75, 68, 63, 61, 56, 48, 45, 49, 54, 61, 63, 68, 78, 32.27456 + 77, 80, 93, 100, 99, 94, 114, 108, 106, 135, 123, 128, 119, 108, 185, 221, 32.27457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27458 + 255, 255, 255, 255, 230, 180, 178, 181, 180, 179, 179, 179, 178, 176, 176, 176, 32.27459 + 175, 172, 170, 167, 165, 163, 163, 168, 166, 152, 136, 128, 102, 96, 123, 111, 32.27460 + 102, 96, 106, 98, 88, 85, 85, 86, 79, 79, 82, 78, 80, 86, 88, 87, 32.27461 + 85, 86, 88, 76, 81, 85, 85, 81, 78, 80, 82, 73, 73, 73, 75, 77, 32.27462 + 76, 73, 71, 72, 76, 78, 77, 77, 79, 77, 73, 76, 78, 82, 82, 81, 32.27463 + 78, 77, 77, 85, 82, 80, 81, 85, 86, 83, 78, 81, 82, 81, 79, 74, 32.27464 + 71, 70, 70, 69, 59, 55, 60, 60, 52, 53, 62, 64, 75, 81, 86, 92, 32.27465 + 89, 91, 106, 112, 113, 115, 122, 121, 119, 127, 131, 128, 114, 93, 141, 219, 32.27466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27467 + 255, 255, 255, 255, 255, 182, 182, 183, 181, 179, 178, 177, 177, 175, 172, 174, 32.27468 + 177, 171, 161, 165, 166, 164, 162, 164, 164, 155, 145, 136, 124, 111, 107, 103, 32.27469 + 104, 102, 98, 98, 89, 84, 85, 86, 78, 79, 81, 76, 81, 88, 91, 86, 32.27470 + 79, 77, 80, 71, 74, 76, 75, 72, 70, 71, 73, 74, 73, 73, 74, 75, 32.27471 + 74, 74, 73, 72, 74, 76, 76, 77, 77, 75, 73, 77, 79, 81, 81, 79, 32.27472 + 78, 77, 78, 79, 77, 76, 78, 80, 81, 78, 76, 78, 80, 80, 77, 72, 32.27473 + 67, 65, 65, 56, 45, 46, 60, 66, 59, 60, 71, 68, 76, 78, 82, 89, 32.27474 + 86, 87, 100, 102, 105, 114, 113, 120, 122, 118, 135, 143, 127, 101, 117, 215, 32.27475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27476 + 255, 255, 255, 255, 255, 232, 183, 183, 181, 179, 177, 176, 174, 171, 169, 172, 32.27477 + 173, 166, 155, 162, 163, 162, 159, 158, 158, 153, 148, 151, 147, 127, 98, 100, 32.27478 + 105, 107, 99, 100, 91, 85, 86, 86, 78, 76, 80, 75, 79, 86, 91, 85, 32.27479 + 74, 72, 76, 79, 75, 71, 69, 70, 71, 70, 69, 74, 75, 75, 74, 73, 32.27480 + 74, 74, 75, 74, 73, 73, 75, 75, 75, 75, 77, 81, 81, 81, 79, 77, 32.27481 + 77, 78, 81, 71, 74, 77, 77, 76, 75, 77, 79, 78, 79, 78, 74, 68, 32.27482 + 63, 60, 59, 59, 50, 51, 62, 66, 55, 50, 54, 71, 73, 70, 74, 85, 32.27483 + 86, 86, 97, 88, 90, 99, 100, 109, 113, 110, 127, 133, 125, 113, 119, 222, 32.27484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27485 + 255, 255, 255, 255, 255, 255, 184, 184, 181, 178, 175, 180, 174, 171, 172, 173, 32.27486 + 171, 164, 157, 161, 162, 161, 157, 157, 157, 153, 147, 158, 150, 130, 100, 105, 32.27487 + 94, 97, 102, 98, 91, 85, 86, 84, 77, 75, 79, 72, 72, 79, 86, 84, 32.27488 + 75, 73, 79, 89, 83, 76, 74, 76, 78, 77, 75, 75, 75, 75, 73, 71, 32.27489 + 72, 75, 77, 75, 72, 72, 75, 76, 74, 76, 79, 82, 82, 80, 78, 75, 32.27490 + 76, 78, 81, 69, 74, 78, 78, 75, 74, 77, 80, 74, 75, 73, 69, 63, 32.27491 + 58, 56, 56, 61, 57, 57, 62, 63, 55, 45, 41, 68, 68, 63, 68, 81, 32.27492 + 83, 84, 94, 95, 93, 93, 100, 101, 98, 102, 103, 118, 108, 105, 116, 217, 32.27493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27494 + 255, 255, 255, 255, 255, 255, 185, 184, 181, 178, 175, 182, 172, 169, 174, 174, 32.27495 + 165, 160, 161, 160, 160, 159, 156, 158, 160, 156, 149, 153, 149, 138, 109, 117, 32.27496 + 94, 95, 103, 95, 87, 82, 84, 83, 75, 75, 80, 72, 68, 71, 81, 82, 32.27497 + 76, 75, 81, 73, 71, 69, 68, 67, 68, 67, 67, 73, 74, 73, 71, 69, 32.27498 + 69, 73, 77, 74, 71, 73, 79, 80, 76, 75, 78, 79, 80, 80, 78, 76, 32.27499 + 75, 75, 77, 72, 73, 75, 75, 74, 74, 74, 74, 68, 67, 66, 62, 57, 32.27500 + 54, 54, 55, 55, 57, 58, 57, 61, 62, 54, 43, 48, 52, 49, 51, 59, 32.27501 + 56, 56, 66, 78, 76, 71, 95, 92, 85, 104, 83, 111, 95, 101, 124, 213, 32.27502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27503 + 255, 255, 255, 255, 255, 255, 232, 184, 181, 178, 175, 181, 169, 167, 174, 172, 32.27504 + 160, 156, 163, 158, 159, 157, 156, 160, 163, 159, 151, 146, 161, 158, 117, 129, 32.27505 + 109, 109, 104, 91, 82, 77, 81, 80, 75, 76, 81, 75, 67, 68, 78, 81, 32.27506 + 75, 74, 81, 68, 72, 75, 74, 71, 69, 70, 72, 72, 73, 72, 69, 66, 32.27507 + 67, 72, 76, 71, 70, 74, 82, 83, 77, 74, 76, 75, 77, 80, 79, 77, 32.27508 + 74, 73, 72, 75, 72, 69, 70, 73, 73, 69, 65, 62, 62, 60, 56, 53, 32.27509 + 52, 54, 55, 55, 60, 59, 53, 58, 65, 59, 45, 48, 55, 55, 54, 54, 32.27510 + 45, 42, 54, 30, 32, 32, 78, 81, 79, 115, 82, 59, 55, 89, 146, 255, 32.27511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27512 + 255, 255, 255, 255, 255, 255, 255, 180, 182, 180, 174, 182, 174, 171, 169, 162, 32.27513 + 154, 154, 160, 156, 158, 157, 154, 154, 155, 152, 148, 146, 146, 148, 142, 129, 32.27514 + 110, 104, 103, 95, 88, 87, 78, 74, 76, 73, 77, 67, 69, 71, 73, 75, 32.27515 + 77, 77, 78, 68, 66, 67, 72, 74, 71, 69, 69, 77, 70, 66, 70, 72, 32.27516 + 71, 71, 72, 72, 75, 80, 84, 85, 83, 79, 76, 70, 72, 73, 75, 74, 32.27517 + 72, 70, 68, 81, 77, 73, 72, 73, 71, 64, 58, 58, 60, 61, 60, 58, 32.27518 + 57, 59, 61, 55, 61, 66, 65, 61, 57, 57, 60, 58, 47, 65, 45, 59, 32.27519 + 63, 60, 44, 74, 126, 100, 52, 44, 47, 53, 51, 69, 166, 255, 255, 255, 32.27520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27521 + 255, 255, 255, 255, 255, 255, 255, 192, 174, 177, 176, 181, 172, 167, 165, 160, 32.27522 + 154, 154, 159, 156, 158, 157, 154, 154, 155, 151, 145, 145, 146, 147, 143, 130, 32.27523 + 114, 103, 101, 90, 86, 82, 75, 71, 70, 69, 70, 66, 68, 69, 72, 74, 32.27524 + 75, 76, 77, 71, 65, 63, 65, 67, 67, 68, 71, 66, 63, 63, 69, 73, 32.27525 + 74, 77, 81, 74, 75, 77, 79, 80, 80, 79, 78, 74, 75, 76, 76, 76, 32.27526 + 74, 73, 72, 75, 71, 68, 69, 71, 70, 65, 60, 58, 56, 55, 56, 59, 32.27527 + 60, 60, 58, 60, 63, 66, 65, 63, 60, 61, 62, 77, 56, 50, 60, 53, 32.27528 + 51, 56, 62, 169, 195, 156, 107, 84, 62, 126, 255, 255, 255, 255, 255, 255, 32.27529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27530 + 255, 255, 255, 255, 255, 255, 255, 238, 177, 178, 174, 178, 168, 162, 159, 157, 32.27531 + 155, 155, 157, 155, 157, 156, 153, 153, 154, 150, 144, 147, 143, 143, 145, 138, 32.27532 + 125, 114, 111, 86, 84, 76, 72, 68, 65, 66, 64, 65, 66, 67, 69, 71, 32.27533 + 73, 75, 75, 73, 64, 57, 57, 59, 61, 66, 72, 68, 66, 67, 71, 71, 32.27534 + 69, 72, 78, 76, 75, 74, 74, 74, 76, 79, 81, 76, 76, 75, 75, 75, 32.27535 + 74, 74, 74, 71, 68, 66, 66, 67, 66, 62, 58, 60, 55, 52, 54, 61, 32.27536 + 63, 61, 56, 54, 55, 57, 58, 61, 62, 63, 64, 63, 55, 58, 69, 64, 32.27537 + 66, 56, 171, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27539 + 255, 255, 255, 255, 255, 255, 255, 255, 233, 182, 169, 174, 166, 159, 155, 155, 32.27540 + 155, 156, 156, 154, 156, 155, 152, 152, 153, 149, 143, 149, 143, 141, 143, 144, 32.27541 + 136, 130, 127, 84, 83, 70, 69, 68, 63, 68, 62, 63, 63, 64, 66, 68, 32.27542 + 70, 72, 73, 71, 62, 55, 54, 55, 58, 63, 70, 70, 69, 71, 72, 69, 32.27543 + 65, 67, 73, 76, 75, 73, 72, 73, 76, 78, 80, 74, 74, 73, 72, 71, 32.27544 + 71, 72, 72, 73, 70, 66, 65, 64, 62, 58, 55, 62, 59, 56, 58, 62, 32.27545 + 64, 62, 58, 66, 64, 63, 63, 67, 69, 69, 68, 72, 66, 84, 56, 75, 32.27546 + 67, 34, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 169, 168, 163, 157, 153, 152, 32.27549 + 153, 154, 154, 152, 154, 153, 150, 150, 151, 147, 143, 154, 144, 139, 139, 143, 32.27550 + 138, 135, 134, 87, 88, 68, 71, 71, 62, 72, 62, 61, 61, 61, 62, 64, 32.27551 + 67, 69, 71, 68, 61, 55, 56, 57, 58, 61, 65, 65, 65, 68, 71, 69, 32.27552 + 66, 69, 75, 73, 73, 73, 74, 75, 76, 77, 77, 74, 73, 72, 71, 70, 32.27553 + 71, 71, 71, 72, 69, 67, 64, 63, 61, 58, 56, 64, 64, 64, 63, 62, 32.27554 + 61, 62, 63, 69, 66, 63, 61, 63, 63, 61, 59, 78, 61, 77, 53, 67, 32.27555 + 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 163, 164, 162, 155, 151, 32.27558 + 153, 155, 154, 153, 155, 154, 151, 151, 152, 148, 142, 157, 147, 139, 136, 136, 32.27559 + 130, 125, 124, 94, 96, 67, 72, 71, 60, 75, 61, 58, 58, 58, 59, 61, 32.27560 + 64, 67, 69, 67, 61, 58, 60, 61, 60, 60, 63, 69, 68, 69, 71, 69, 32.27561 + 64, 64, 67, 70, 71, 72, 73, 74, 74, 74, 74, 73, 73, 73, 73, 72, 32.27562 + 72, 71, 71, 67, 66, 64, 63, 62, 62, 62, 62, 61, 64, 65, 64, 61, 32.27563 + 60, 62, 64, 60, 61, 63, 64, 68, 69, 71, 72, 68, 65, 76, 87, 255, 32.27564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 166, 168, 160, 152, 32.27567 + 152, 155, 155, 154, 156, 155, 152, 152, 153, 149, 143, 155, 147, 141, 138, 134, 32.27568 + 124, 118, 117, 102, 104, 67, 71, 69, 54, 73, 56, 57, 56, 56, 57, 59, 32.27569 + 62, 65, 67, 69, 63, 61, 63, 64, 62, 62, 64, 75, 70, 69, 71, 70, 32.27570 + 64, 60, 60, 67, 68, 68, 69, 70, 70, 71, 72, 70, 71, 72, 73, 72, 32.27571 + 71, 69, 68, 65, 65, 63, 62, 60, 60, 61, 62, 57, 56, 56, 58, 59, 32.27572 + 61, 62, 61, 68, 72, 76, 78, 79, 79, 81, 84, 76, 83, 255, 255, 255, 32.27573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 167, 172, 163, 153, 32.27576 + 152, 155, 156, 156, 156, 155, 152, 152, 153, 150, 144, 148, 145, 142, 142, 137, 32.27577 + 125, 117, 117, 107, 108, 66, 69, 66, 49, 71, 52, 58, 57, 57, 57, 59, 32.27578 + 61, 64, 66, 71, 66, 62, 64, 65, 62, 64, 66, 67, 62, 62, 68, 72, 32.27579 + 70, 67, 67, 67, 66, 65, 64, 65, 67, 69, 71, 66, 67, 69, 70, 70, 32.27580 + 68, 66, 64, 67, 67, 64, 61, 58, 56, 57, 58, 53, 49, 47, 51, 58, 32.27581 + 62, 62, 58, 64, 68, 70, 64, 56, 48, 45, 46, 64, 255, 255, 255, 255, 32.27582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 167, 172, 166, 155, 32.27585 + 151, 157, 166, 161, 161, 145, 152, 151, 147, 114, 153, 145, 142, 152, 130, 122, 32.27586 + 135, 115, 121, 98, 89, 78, 70, 68, 69, 68, 65, 66, 67, 66, 64, 61, 32.27587 + 61, 65, 70, 66, 63, 59, 60, 63, 64, 64, 62, 61, 65, 67, 66, 66, 32.27588 + 67, 65, 63, 62, 67, 70, 68, 63, 63, 69, 76, 66, 68, 70, 71, 71, 32.27589 + 69, 67, 65, 66, 64, 61, 58, 55, 54, 53, 53, 51, 49, 44, 37, 42, 32.27590 + 55, 59, 54, 61, 71, 79, 77, 53, 73, 45, 33, 255, 255, 255, 255, 255, 32.27591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 171, 167, 166, 32.27594 + 163, 157, 151, 154, 154, 161, 163, 164, 124, 94, 130, 141, 149, 130, 136, 113, 32.27595 + 120, 109, 110, 92, 87, 77, 71, 72, 70, 69, 65, 63, 62, 61, 57, 54, 32.27596 + 55, 58, 63, 62, 60, 57, 60, 64, 65, 65, 65, 61, 64, 65, 64, 64, 32.27597 + 65, 64, 63, 60, 63, 66, 65, 63, 62, 66, 70, 66, 67, 68, 68, 68, 32.27598 + 67, 65, 64, 62, 61, 59, 57, 56, 56, 56, 57, 58, 51, 40, 34, 44, 32.27599 + 59, 62, 53, 63, 64, 79, 67, 130, 163, 195, 255, 255, 255, 255, 255, 255, 32.27600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 171, 170, 32.27603 + 167, 160, 154, 171, 155, 165, 148, 151, 105, 103, 148, 138, 154, 116, 146, 118, 32.27604 + 120, 120, 121, 87, 83, 76, 71, 74, 71, 69, 63, 64, 63, 59, 55, 52, 32.27605 + 53, 56, 60, 57, 56, 57, 57, 61, 63, 64, 63, 61, 62, 62, 62, 62, 32.27606 + 62, 62, 63, 61, 62, 63, 64, 65, 65, 65, 65, 65, 65, 65, 64, 64, 32.27607 + 63, 63, 63, 57, 57, 57, 56, 57, 58, 59, 60, 61, 58, 47, 36, 38, 32.27608 + 49, 55, 51, 64, 53, 67, 45, 199, 228, 255, 255, 255, 255, 255, 255, 255, 32.27609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 165, 32.27612 + 159, 164, 172, 161, 153, 169, 161, 163, 132, 120, 145, 140, 141, 119, 139, 125, 32.27613 + 118, 120, 123, 90, 85, 76, 71, 73, 70, 67, 64, 66, 63, 58, 53, 50, 32.27614 + 52, 54, 57, 55, 53, 54, 55, 58, 57, 58, 61, 63, 60, 59, 60, 60, 32.27615 + 59, 60, 63, 64, 63, 63, 65, 68, 68, 65, 62, 64, 63, 62, 61, 60, 32.27616 + 60, 60, 60, 55, 55, 56, 56, 57, 58, 59, 60, 57, 64, 61, 44, 32, 32.27617 + 34, 42, 46, 58, 42, 49, 36, 220, 235, 255, 255, 255, 255, 255, 255, 255, 32.27618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.27621 + 162, 160, 166, 162, 161, 158, 157, 153, 163, 137, 141, 148, 124, 136, 116, 122, 32.27622 + 105, 99, 106, 95, 88, 76, 68, 69, 68, 67, 63, 63, 59, 54, 50, 48, 32.27623 + 49, 51, 51, 51, 52, 53, 53, 55, 58, 61, 64, 64, 59, 58, 61, 61, 32.27624 + 58, 59, 64, 65, 63, 61, 64, 67, 67, 63, 59, 62, 61, 60, 58, 57, 32.27625 + 57, 57, 57, 56, 56, 56, 57, 57, 57, 57, 57, 59, 65, 62, 49, 42, 32.27626 + 43, 43, 39, 49, 41, 36, 51, 207, 233, 255, 255, 255, 255, 255, 255, 255, 32.27627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 32.27630 + 179, 158, 144, 171, 165, 146, 138, 127, 162, 140, 134, 147, 118, 146, 111, 129, 32.27631 + 113, 105, 106, 98, 88, 75, 66, 67, 66, 65, 62, 63, 60, 55, 52, 51, 32.27632 + 53, 53, 53, 50, 51, 52, 53, 55, 58, 65, 69, 66, 60, 59, 64, 64, 32.27633 + 59, 60, 66, 63, 61, 59, 60, 62, 62, 59, 56, 60, 59, 59, 58, 57, 32.27634 + 55, 54, 54, 55, 56, 57, 57, 57, 57, 56, 56, 67, 62, 53, 50, 60, 32.27635 + 67, 56, 38, 45, 48, 34, 59, 162, 225, 255, 255, 255, 255, 255, 255, 255, 32.27636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27639 + 255, 172, 154, 144, 143, 156, 152, 146, 155, 134, 117, 135, 125, 136, 116, 129, 32.27640 + 117, 119, 107, 91, 83, 72, 65, 66, 65, 63, 59, 62, 59, 56, 55, 56, 32.27641 + 57, 55, 54, 55, 55, 53, 48, 48, 53, 61, 67, 69, 62, 63, 70, 70, 32.27642 + 63, 62, 69, 65, 63, 61, 60, 61, 60, 60, 59, 60, 60, 61, 60, 59, 32.27643 + 57, 55, 53, 55, 56, 58, 59, 60, 59, 59, 58, 69, 65, 57, 54, 64, 32.27644 + 73, 67, 50, 53, 67, 53, 58, 113, 212, 255, 255, 255, 255, 255, 255, 255, 32.27645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27648 + 255, 255, 232, 143, 132, 158, 143, 146, 139, 144, 142, 119, 133, 114, 115, 115, 32.27649 + 104, 111, 86, 84, 77, 70, 65, 67, 65, 61, 56, 57, 54, 52, 52, 54, 32.27650 + 54, 52, 49, 60, 57, 52, 46, 42, 43, 52, 58, 69, 63, 64, 73, 73, 32.27651 + 64, 63, 69, 67, 66, 64, 62, 61, 60, 61, 62, 59, 60, 61, 61, 60, 32.27652 + 57, 54, 52, 53, 55, 57, 59, 60, 60, 60, 59, 62, 69, 69, 60, 56, 32.27653 + 61, 65, 62, 64, 87, 78, 61, 88, 208, 255, 255, 255, 255, 255, 255, 255, 32.27654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27657 + 255, 255, 255, 230, 160, 141, 152, 153, 142, 142, 122, 116, 128, 129, 114, 100, 32.27658 + 99, 99, 97, 88, 81, 63, 68, 59, 64, 53, 56, 60, 58, 51, 67, 53, 32.27659 + 53, 46, 58, 46, 55, 59, 57, 53, 62, 52, 28, 71, 126, 109, 28, 61, 32.27660 + 63, 43, 86, 54, 57, 63, 61, 73, 49, 67, 60, 61, 61, 61, 60, 58, 32.27661 + 56, 53, 52, 55, 53, 52, 54, 58, 60, 59, 57, 67, 66, 65, 64, 63, 32.27662 + 61, 67, 73, 69, 76, 74, 51, 159, 207, 255, 255, 255, 255, 255, 255, 255, 32.27663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27666 + 255, 255, 255, 255, 255, 211, 128, 138, 138, 134, 108, 124, 114, 109, 116, 114, 32.27667 + 100, 90, 88, 77, 74, 63, 71, 59, 67, 62, 69, 63, 63, 51, 60, 54, 32.27668 + 69, 60, 59, 74, 66, 59, 57, 255, 255, 255, 255, 184, 204, 189, 80, 42, 32.27669 + 56, 67, 64, 70, 67, 62, 58, 67, 49, 67, 62, 62, 62, 62, 61, 60, 32.27670 + 57, 55, 53, 60, 57, 55, 55, 57, 57, 55, 52, 53, 54, 60, 68, 68, 32.27671 + 57, 61, 75, 69, 73, 71, 70, 218, 213, 255, 255, 255, 255, 255, 255, 255, 32.27672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27675 + 255, 255, 255, 255, 255, 255, 255, 209, 127, 139, 111, 115, 117, 113, 106, 102, 32.27676 + 97, 92, 85, 78, 78, 70, 76, 59, 61, 55, 64, 53, 68, 60, 59, 45, 32.27677 + 64, 61, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 103, 32.27678 + 51, 54, 69, 62, 60, 55, 58, 67, 52, 66, 60, 62, 62, 61, 60, 59, 32.27679 + 57, 55, 54, 60, 58, 55, 55, 55, 54, 52, 50, 65, 67, 68, 73, 68, 32.27680 + 47, 41, 55, 53, 44, 61, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 121, 121, 112, 102, 99, 98, 32.27685 + 93, 90, 90, 80, 81, 70, 76, 60, 61, 51, 57, 55, 65, 58, 63, 52, 32.27686 + 67, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 32.27687 + 91, 32, 42, 66, 68, 60, 63, 63, 51, 63, 60, 61, 61, 60, 59, 57, 32.27688 + 56, 55, 54, 55, 54, 53, 53, 53, 52, 52, 51, 59, 64, 56, 54, 62, 32.27689 + 52, 40, 44, 59, 65, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 97, 85, 99, 105, 32.27694 + 90, 81, 84, 69, 68, 58, 70, 64, 70, 60, 62, 67, 59, 48, 67, 129, 32.27695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27696 + 255, 121, 48, 69, 75, 65, 72, 62, 53, 62, 65, 65, 64, 63, 62, 61, 32.27697 + 60, 60, 59, 56, 56, 56, 55, 54, 53, 52, 53, 43, 57, 48, 57, 107, 32.27698 + 134, 128, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 94, 82, 32.27703 + 84, 83, 70, 69, 65, 53, 68, 64, 72, 62, 63, 61, 63, 125, 255, 255, 32.27704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27705 + 255, 255, 126, 26, 45, 48, 76, 70, 65, 65, 63, 69, 68, 66, 65, 64, 32.27706 + 64, 64, 64, 61, 61, 61, 58, 55, 52, 52, 52, 41, 57, 52, 84, 172, 32.27707 + 223, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27712 + 82, 85, 66, 75, 72, 61, 70, 60, 65, 56, 60, 255, 255, 255, 255, 255, 32.27713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27714 + 255, 255, 255, 192, 71, 53, 74, 66, 68, 66, 65, 68, 67, 66, 64, 63, 32.27715 + 63, 64, 65, 64, 65, 66, 63, 59, 56, 57, 58, 49, 54, 50, 101, 198, 32.27716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27721 + 255, 255, 195, 72, 74, 65, 73, 59, 63, 255, 255, 255, 255, 255, 255, 255, 32.27722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27723 + 255, 255, 255, 255, 255, 200, 70, 43, 54, 64, 73, 65, 64, 62, 61, 60, 32.27724 + 60, 61, 62, 63, 65, 67, 66, 63, 62, 64, 67, 71, 65, 59, 255, 255, 32.27725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27732 + 255, 255, 255, 255, 255, 255, 255, 190, 42, 45, 58, 61, 72, 74, 64, 59, 32.27733 + 66, 70, 68, 64, 61, 60, 59, 58, 59, 66, 75, 63, 68, 255, 255, 255, 32.27734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 77, 52, 45, 42, 51, 60, 32.27742 + 58, 45, 34, 57, 61, 64, 66, 66, 64, 59, 56, 41, 255, 255, 255, 255, 32.27743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 53, 33, 26, 43, 61, 32.27751 + 63, 60, 60, 46, 55, 61, 62, 64, 66, 60, 52, 255, 255, 255, 255, 255, 32.27752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 63, 27, 32.27760 + 11, 17, 31, 38, 45, 41, 27, 20, 24, 25, 99, 255, 255, 255, 255, 255, 32.27761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27769 + 255, 116, 99, 91, 103, 111, 111, 118, 178, 255, 255, 255, 255, 255, 255, 255, 32.27770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.27773 +/* Define image 'enemy14' of size 132x153x1x3 and type 'const unsigned char' */ 32.27774 +const unsigned char data_enemy14[] = { 32.27775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27779 + 255, 255, 255, 178, 23, 21, 21, 20, 21, 20, 21, 19, 19, 17, 19, 21, 32.27780 + 24, 25, 20, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27787 + 255, 255, 23, 15, 16, 23, 25, 19, 28, 28, 25, 30, 33, 11, 30, 18, 32.27788 + 29, 13, 20, 30, 20, 19, 14, 23, 18, 25, 19, 8, 99, 255, 255, 255, 32.27789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27795 + 16, 27, 25, 25, 24, 19, 20, 25, 27, 26, 21, 36, 30, 0, 30, 36, 32.27796 + 44, 36, 39, 22, 25, 22, 19, 125, 28, 19, 26, 34, 23, 24, 19, 14, 32.27797 + 21, 12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27803 + 180, 16, 26, 32, 39, 29, 22, 28, 28, 22, 28, 39, 38, 28, 29, 29, 32.27804 + 54, 30, 53, 51, 69, 36, 26, 63, 29, 76, 26, 63, 37, 43, 28, 32, 32.27805 + 19, 23, 27, 25, 32, 18, 22, 22, 255, 255, 255, 255, 255, 255, 255, 255, 32.27806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 35, 32.27811 + 13, 23, 36, 34, 34, 12, 39, 50, 52, 19, 27, 33, 38, 46, 54, 57, 32.27812 + 50, 39, 44, 38, 36, 76, 133, 58, 30, 100, 83, 59, 69, 66, 56, 69, 32.27813 + 35, 53, 40, 36, 24, 39, 43, 29, 32, 26, 25, 23, 22, 98, 255, 255, 32.27814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 32.27819 + 31, 21, 38, 50, 25, 38, 62, 37, 38, 42, 69, 52, 52, 46, 59, 51, 32.27820 + 55, 74, 80, 71, 64, 65, 38, 67, 70, 68, 64, 108, 107, 85, 100, 81, 32.27821 + 95, 61, 88, 105, 86, 63, 76, 59, 48, 68, 62, 27, 23, 26, 28, 26, 32.27822 + 25, 22, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27827 + 179, 35, 24, 41, 46, 34, 36, 36, 44, 84, 63, 63, 69, 66, 72, 64, 32.27828 + 69, 72, 87, 67, 63, 77, 80, 68, 68, 82, 64, 103, 69, 77, 88, 108, 32.27829 + 79, 112, 75, 106, 91, 110, 99, 79, 106, 92, 102, 83, 69, 88, 80, 40, 32.27830 + 32, 35, 27, 23, 22, 22, 25, 25, 25, 255, 255, 255, 255, 255, 255, 255, 32.27831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27835 + 174, 14, 30, 23, 25, 60, 22, 61, 61, 51, 43, 24, 47, 95, 54, 77, 32.27836 + 74, 63, 55, 75, 79, 74, 87, 75, 67, 69, 69, 64, 72, 85, 90, 101, 32.27837 + 102, 108, 82, 109, 103, 85, 105, 76, 94, 108, 99, 104, 73, 107, 107, 93, 32.27838 + 75, 88, 84, 63, 56, 45, 32, 28, 23, 22, 24, 25, 24, 21, 99, 255, 32.27839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27843 + 255, 175, 16, 27, 14, 17, 41, 27, 31, 84, 50, 78, 52, 59, 73, 46, 32.27844 + 47, 60, 89, 80, 63, 85, 78, 87, 85, 99, 78, 76, 75, 70, 70, 73, 32.27845 + 79, 84, 96, 95, 97, 103, 101, 101, 102, 105, 99, 112, 98, 101, 103, 92, 32.27846 + 118, 106, 109, 102, 80, 80, 84, 79, 73, 47, 51, 44, 36, 33, 31, 28, 32.27847 + 25, 20, 22, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27851 + 255, 255, 255, 178, 13, 19, 14, 52, 69, 48, 36, 78, 61, 62, 79, 81, 32.27852 + 81, 100, 78, 83, 74, 76, 92, 81, 90, 86, 82, 96, 100, 105, 104, 110, 32.27853 + 105, 103, 97, 95, 139, 88, 106, 124, 104, 88, 106, 106, 94, 102, 94, 101, 32.27854 + 110, 108, 104, 115, 120, 102, 114, 74, 85, 91, 105, 100, 106, 72, 83, 58, 32.27855 + 40, 36, 33, 24, 25, 31, 19, 28, 29, 255, 255, 255, 255, 255, 255, 255, 32.27856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27859 + 255, 255, 255, 255, 255, 178, 26, 13, 23, 22, 23, 21, 57, 51, 42, 60, 32.27860 + 65, 58, 93, 87, 93, 94, 88, 83, 90, 88, 104, 93, 103, 93, 86, 96, 32.27861 + 99, 105, 75, 106, 88, 90, 118, 88, 104, 97, 99, 118, 107, 93, 105, 102, 32.27862 + 96, 112, 108, 110, 114, 106, 98, 105, 106, 87, 81, 108, 80, 84, 74, 99, 32.27863 + 91, 129, 70, 80, 78, 61, 43, 36, 31, 21, 41, 27, 22, 22, 255, 255, 32.27864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27867 + 255, 255, 255, 255, 255, 255, 255, 255, 37, 23, 29, 40, 13, 33, 68, 30, 32.27868 + 78, 92, 93, 88, 110, 100, 102, 89, 99, 85, 93, 80, 101, 97, 106, 93, 32.27869 + 103, 94, 85, 94, 96, 102, 111, 104, 111, 127, 123, 87, 116, 102, 97, 112, 32.27870 + 108, 103, 107, 100, 99, 124, 109, 105, 107, 101, 95, 102, 104, 91, 73, 99, 32.27871 + 99, 89, 120, 126, 116, 116, 91, 95, 94, 85, 78, 72, 53, 26, 40, 24, 32.27872 + 31, 35, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 14, 28, 0, 19, 40, 28, 32.27876 + 43, 26, 64, 35, 61, 88, 97, 85, 94, 94, 103, 90, 98, 94, 95, 89, 32.27877 + 105, 103, 99, 84, 94, 89, 87, 99, 97, 100, 146, 116, 129, 144, 124, 100, 32.27878 + 133, 109, 99, 107, 107, 108, 112, 101, 104, 126, 108, 99, 98, 99, 98, 105, 32.27879 + 110, 99, 116, 91, 105, 96, 129, 147, 159, 101, 114, 99, 94, 102, 101, 85, 32.27880 + 71, 62, 38, 22, 35, 39, 14, 11, 255, 255, 255, 255, 255, 255, 255, 255, 32.27881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 15, 22, 9, 32.27884 + 28, 17, 35, 61, 39, 69, 72, 84, 71, 93, 108, 102, 83, 95, 96, 95, 32.27885 + 96, 109, 94, 100, 102, 102, 101, 82, 91, 92, 97, 111, 105, 102, 112, 119, 32.27886 + 110, 103, 131, 110, 111, 111, 105, 102, 101, 106, 110, 102, 103, 116, 122, 106, 32.27887 + 100, 102, 101, 102, 105, 98, 102, 105, 106, 133, 114, 149, 131, 93, 101, 103, 32.27888 + 108, 106, 89, 71, 78, 91, 58, 32, 28, 32, 25, 27, 28, 255, 255, 255, 32.27889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 12, 32.27892 + 12, 12, 14, 46, 30, 40, 40, 28, 63, 76, 60, 101, 71, 90, 106, 106, 32.27893 + 78, 93, 93, 95, 93, 114, 95, 104, 98, 99, 109, 91, 102, 104, 108, 120, 32.27894 + 111, 103, 100, 99, 108, 101, 119, 117, 117, 93, 106, 100, 99, 102, 106, 105, 32.27895 + 104, 103, 131, 107, 101, 107, 105, 106, 106, 100, 82, 112, 114, 128, 145, 129, 32.27896 + 91, 89, 97, 111, 113, 99, 87, 89, 92, 82, 70, 61, 48, 33, 30, 28, 32.27897 + 24, 22, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27900 + 255, 176, 14, 11, 11, 11, 13, 22, 43, 29, 30, 40, 42, 79, 67, 103, 32.27901 + 88, 98, 112, 103, 98, 96, 95, 90, 95, 103, 95, 95, 99, 98, 109, 97, 32.27902 + 112, 112, 111, 116, 106, 100, 117, 89, 120, 118, 107, 112, 129, 90, 107, 103, 32.27903 + 104, 104, 104, 110, 110, 101, 133, 106, 100, 109, 110, 110, 109, 104, 124, 111, 32.27904 + 109, 95, 141, 104, 106, 122, 117, 113, 104, 96, 102, 111, 103, 78, 71, 87, 32.27905 + 68, 35, 30, 26, 20, 33, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27908 + 255, 255, 255, 255, 19, 17, 14, 11, 11, 11, 17, 33, 33, 47, 67, 76, 32.27909 + 91, 104, 83, 96, 102, 101, 105, 78, 96, 74, 98, 84, 96, 90, 96, 85, 32.27910 + 103, 99, 103, 98, 118, 116, 106, 109, 99, 98, 106, 101, 108, 93, 112, 105, 32.27911 + 104, 111, 108, 109, 114, 111, 107, 116, 120, 106, 140, 112, 103, 112, 114, 108, 32.27912 + 105, 100, 129, 101, 107, 144, 111, 106, 114, 133, 122, 108, 102, 105, 106, 98, 32.27913 + 100, 103, 81, 97, 60, 24, 42, 43, 24, 27, 21, 20, 100, 255, 255, 255, 32.27914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27916 + 255, 255, 255, 255, 255, 255, 255, 24, 20, 14, 7, 7, 13, 19, 14, 30, 32.27917 + 16, 46, 88, 48, 82, 93, 79, 94, 91, 107, 92, 89, 75, 95, 78, 87, 32.27918 + 89, 85, 88, 98, 102, 97, 87, 97, 106, 107, 102, 99, 103, 109, 98, 105, 32.27919 + 113, 112, 107, 105, 108, 112, 114, 105, 105, 113, 119, 113, 106, 102, 130, 118, 32.27920 + 105, 100, 105, 110, 112, 110, 120, 103, 133, 123, 107, 135, 141, 139, 113, 98, 32.27921 + 108, 110, 131, 104, 87, 61, 124, 77, 84, 102, 64, 31, 35, 37, 31, 26, 32.27922 + 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 21, 19, 18, 18, 15, 32.27925 + 12, 12, 38, 46, 69, 23, 64, 75, 51, 104, 107, 99, 84, 76, 88, 89, 32.27926 + 93, 103, 76, 81, 89, 97, 100, 98, 97, 101, 94, 103, 113, 113, 109, 107, 32.27927 + 114, 119, 123, 128, 135, 143, 148, 153, 157, 159, 162, 152, 144, 143, 139, 129, 32.27928 + 121, 117, 122, 116, 108, 107, 110, 119, 126, 128, 101, 141, 128, 105, 123, 138, 32.27929 + 125, 109, 116, 116, 126, 120, 109, 93, 116, 141, 63, 118, 111, 54, 39, 46, 32.27930 + 38, 29, 31, 26, 23, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 20, 17, 32.27933 + 16, 19, 23, 24, 20, 18, 33, 53, 74, 86, 94, 81, 90, 69, 83, 100, 32.27934 + 118, 94, 97, 72, 84, 91, 101, 97, 102, 108, 103, 90, 92, 106, 119, 132, 32.27935 + 151, 165, 176, 192, 208, 221, 201, 202, 203, 210, 216, 221, 222, 221, 237, 234, 32.27936 + 232, 234, 236, 236, 240, 244, 203, 197, 183, 165, 146, 128, 116, 108, 109, 139, 32.27937 + 109, 114, 126, 106, 119, 127, 118, 120, 112, 106, 95, 104, 108, 114, 145, 125, 32.27938 + 106, 91, 67, 42, 38, 50, 33, 32, 29, 25, 23, 255, 255, 255, 255, 255, 32.27939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27941 + 176, 19, 22, 18, 15, 15, 23, 29, 34, 39, 52, 48, 49, 41, 87, 87, 32.27942 + 52, 104, 94, 95, 92, 80, 104, 108, 110, 103, 113, 105, 99, 99, 107, 127, 32.27943 + 162, 195, 209, 214, 218, 215, 210, 209, 214, 220, 239, 239, 239, 238, 239, 236, 32.27944 + 235, 233, 244, 244, 244, 243, 241, 242, 247, 253, 247, 245, 239, 228, 211, 187, 32.27945 + 166, 151, 131, 111, 117, 147, 130, 110, 128, 118, 93, 131, 133, 119, 96, 119, 32.27946 + 120, 113, 81, 108, 86, 79, 112, 96, 58, 67, 38, 34, 32, 27, 23, 99, 32.27947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27949 + 255, 255, 255, 255, 17, 16, 17, 17, 19, 18, 21, 28, 40, 50, 77, 59, 32.27950 + 79, 108, 95, 94, 100, 91, 93, 108, 96, 90, 82, 94, 86, 94, 82, 116, 32.27951 + 155, 180, 194, 201, 200, 195, 205, 210, 217, 219, 220, 225, 233, 238, 230, 232, 32.27952 + 235, 233, 231, 228, 231, 235, 239, 242, 243, 239, 236, 233, 235, 237, 236, 236, 32.27953 + 239, 246, 250, 245, 235, 224, 200, 164, 156, 130, 111, 133, 131, 111, 151, 138, 32.27954 + 106, 111, 120, 149, 124, 97, 99, 92, 115, 106, 68, 88, 101, 49, 41, 37, 32.27955 + 30, 27, 22, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27957 + 255, 255, 255, 255, 255, 255, 255, 176, 16, 13, 12, 16, 22, 23, 26, 31, 32.27958 + 41, 51, 43, 112, 61, 83, 86, 66, 108, 102, 115, 156, 160, 152, 105, 100, 32.27959 + 102, 138, 165, 184, 191, 188, 191, 205, 212, 210, 221, 224, 229, 229, 228, 228, 32.27960 + 234, 238, 233, 239, 242, 239, 235, 233, 238, 244, 226, 234, 238, 236, 237, 238, 32.27961 + 240, 240, 249, 241, 236, 237, 245, 247, 243, 238, 250, 240, 215, 154, 135, 125, 32.27962 + 101, 138, 138, 127, 126, 138, 123, 110, 111, 135, 141, 118, 113, 126, 124, 106, 32.27963 + 101, 112, 56, 47, 37, 30, 28, 27, 27, 255, 255, 255, 255, 255, 255, 255, 32.27964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 17, 17, 14, 13, 15, 32.27966 + 18, 23, 30, 42, 53, 63, 52, 59, 109, 114, 86, 123, 101, 97, 127, 124, 32.27967 + 110, 112, 124, 138, 150, 171, 191, 196, 204, 206, 211, 220, 228, 231, 233, 235, 32.27968 + 238, 239, 238, 240, 243, 244, 245, 245, 244, 242, 238, 235, 237, 240, 245, 250, 32.27969 + 249, 243, 240, 239, 237, 234, 248, 242, 236, 233, 237, 239, 239, 240, 232, 252, 32.27970 + 253, 238, 213, 157, 119, 142, 122, 106, 115, 135, 154, 145, 147, 155, 157, 148, 32.27971 + 154, 147, 121, 111, 90, 46, 70, 55, 40, 32, 32, 32, 32, 29, 255, 255, 32.27972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 16, 32.27974 + 18, 17, 24, 17, 14, 20, 36, 57, 75, 85, 94, 78, 66, 84, 81, 104, 32.27975 + 98, 115, 134, 130, 140, 147, 181, 172, 179, 183, 198, 199, 208, 227, 234, 230, 32.27976 + 233, 238, 248, 249, 250, 249, 248, 246, 247, 246, 252, 248, 246, 245, 245, 246, 32.27977 + 246, 243, 241, 245, 243, 237, 237, 240, 240, 237, 239, 240, 240, 238, 235, 231, 32.27978 + 227, 231, 240, 243, 234, 239, 225, 219, 219, 154, 129, 132, 138, 116, 126, 127, 32.27979 + 139, 130, 128, 165, 141, 93, 86, 87, 87, 105, 76, 59, 40, 30, 31, 30, 32.27980 + 27, 23, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27982 + 255, 174, 15, 12, 11, 16, 10, 18, 22, 47, 42, 100, 74, 91, 90, 84, 32.27983 + 158, 131, 146, 151, 106, 70, 119, 138, 175, 192, 173, 174, 200, 215, 224, 227, 32.27984 + 228, 229, 227, 228, 235, 238, 240, 229, 220, 222, 231, 239, 241, 238, 240, 245, 32.27985 + 248, 247, 243, 238, 236, 235, 234, 234, 234, 236, 237, 238, 240, 241, 241, 242, 32.27986 + 241, 238, 235, 232, 228, 232, 240, 243, 242, 239, 240, 235, 232, 226, 174, 136, 32.27987 + 126, 132, 139, 133, 146, 152, 215, 89, 104, 120, 65, 91, 130, 65, 74, 77, 32.27988 + 70, 49, 34, 30, 25, 16, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27990 + 255, 255, 255, 255, 173, 17, 26, 23, 17, 17, 41, 29, 43, 30, 71, 84, 32.27991 + 90, 77, 95, 121, 89, 116, 130, 121, 157, 155, 165, 158, 168, 186, 191, 206, 32.27992 + 228, 232, 239, 240, 240, 238, 235, 234, 235, 238, 230, 227, 226, 228, 234, 238, 32.27993 + 240, 240, 241, 243, 244, 245, 243, 241, 240, 237, 237, 235, 235, 235, 236, 237, 32.27994 + 238, 240, 244, 244, 245, 244, 242, 240, 237, 240, 246, 248, 246, 244, 243, 236, 32.27995 + 230, 225, 218, 185, 138, 130, 117, 142, 126, 109, 99, 123, 106, 88, 100, 121, 32.27996 + 92, 109, 93, 94, 82, 59, 40, 35, 32, 27, 26, 24, 255, 255, 255, 255, 32.27997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.27998 + 255, 255, 255, 255, 255, 255, 255, 255, 18, 17, 14, 14, 23, 39, 58, 71, 32.27999 + 94, 66, 91, 67, 104, 94, 105, 78, 97, 90, 101, 92, 168, 154, 177, 164, 32.28000 + 168, 187, 206, 228, 240, 237, 247, 247, 249, 247, 245, 243, 242, 243, 238, 240, 32.28001 + 244, 248, 249, 248, 249, 249, 251, 250, 249, 250, 251, 252, 249, 247, 246, 245, 32.28002 + 242, 242, 242, 242, 244, 244, 247, 249, 249, 251, 251, 249, 248, 248, 248, 249, 32.28003 + 247, 245, 242, 235, 228, 223, 230, 202, 189, 132, 123, 103, 128, 113, 129, 123, 32.28004 + 126, 133, 150, 101, 57, 88, 88, 89, 81, 58, 38, 31, 27, 21, 29, 25, 32.28005 + 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 19, 19, 19, 24, 32.28007 + 37, 53, 40, 57, 41, 63, 79, 88, 94, 71, 103, 133, 123, 120, 120, 165, 32.28008 + 143, 172, 158, 170, 192, 214, 225, 233, 239, 238, 246, 248, 248, 250, 249, 248, 32.28009 + 246, 246, 246, 248, 253, 255, 255, 252, 251, 248, 253, 250, 248, 250, 254, 255, 32.28010 + 254, 251, 249, 250, 248, 247, 246, 247, 249, 248, 246, 247, 249, 250, 252, 251, 32.28011 + 248, 247, 242, 243, 244, 245, 244, 241, 234, 229, 220, 218, 196, 195, 123, 117, 32.28012 + 112, 139, 117, 94, 137, 118, 100, 97, 127, 120, 94, 100, 98, 82, 64, 51, 32.28013 + 41, 31, 27, 25, 23, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 32.28015 + 15, 15, 18, 16, 10, 9, 60, 107, 92, 115, 80, 92, 108, 120, 106, 90, 32.28016 + 112, 110, 124, 134, 191, 147, 172, 199, 224, 237, 241, 240, 241, 247, 245, 244, 32.28017 + 246, 248, 251, 250, 249, 248, 252, 248, 248, 247, 248, 246, 243, 239, 245, 241, 32.28018 + 239, 241, 245, 245, 244, 244, 248, 251, 249, 249, 248, 249, 249, 247, 246, 245, 32.28019 + 246, 249, 248, 248, 246, 245, 239, 239, 242, 244, 248, 246, 242, 239, 243, 214, 32.28020 + 223, 195, 193, 144, 141, 115, 138, 140, 121, 143, 106, 133, 84, 87, 79, 85, 32.28021 + 85, 76, 62, 50, 37, 25, 25, 22, 24, 101, 255, 255, 255, 255, 255, 255, 32.28022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28023 + 255, 255, 172, 18, 27, 28, 33, 49, 73, 96, 99, 105, 88, 90, 100, 115, 32.28024 + 128, 119, 130, 131, 113, 139, 137, 177, 147, 192, 215, 231, 234, 235, 243, 245, 32.28025 + 243, 250, 246, 244, 244, 245, 250, 250, 249, 248, 252, 247, 242, 239, 241, 241, 32.28026 + 239, 235, 237, 236, 236, 237, 237, 238, 237, 238, 241, 244, 244, 244, 244, 242, 32.28027 + 239, 238, 241, 240, 242, 242, 243, 245, 246, 242, 242, 241, 242, 246, 249, 249, 32.28028 + 248, 246, 239, 242, 221, 228, 196, 208, 162, 118, 133, 93, 136, 125, 183, 108, 32.28029 + 94, 88, 100, 99, 93, 88, 79, 72, 60, 48, 24, 22, 25, 25, 100, 255, 32.28030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28031 + 255, 255, 255, 255, 255, 255, 23, 33, 34, 22, 14, 25, 48, 71, 70, 82, 32.28032 + 103, 84, 96, 109, 134, 149, 165, 125, 172, 164, 150, 173, 175, 200, 235, 248, 32.28033 + 241, 234, 248, 248, 240, 243, 244, 241, 238, 239, 242, 243, 241, 239, 241, 239, 32.28034 + 237, 234, 232, 232, 234, 235, 230, 233, 235, 236, 235, 231, 230, 233, 233, 235, 32.28035 + 235, 234, 231, 227, 223, 220, 227, 226, 227, 229, 232, 236, 239, 237, 240, 238, 32.28036 + 239, 243, 248, 251, 251, 250, 238, 241, 253, 224, 220, 203, 199, 158, 109, 127, 32.28037 + 124, 131, 65, 111, 97, 115, 96, 91, 87, 84, 83, 74, 59, 43, 29, 25, 32.28038 + 27, 26, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 23, 17, 19, 37, 70, 91, 32.28040 + 80, 65, 103, 101, 111, 91, 86, 103, 87, 94, 135, 182, 151, 178, 152, 169, 32.28041 + 221, 228, 227, 251, 252, 247, 255, 252, 237, 239, 241, 235, 231, 230, 231, 232, 32.28042 + 232, 227, 223, 225, 227, 223, 218, 217, 222, 225, 219, 224, 229, 229, 225, 222, 32.28043 + 221, 223, 222, 224, 224, 223, 220, 214, 209, 206, 210, 210, 212, 216, 222, 227, 32.28044 + 233, 233, 237, 234, 236, 240, 246, 251, 253, 253, 255, 246, 240, 239, 216, 208, 32.28045 + 200, 193, 160, 115, 114, 113, 151, 130, 106, 103, 100, 96, 96, 101, 102, 90, 32.28046 + 68, 46, 35, 31, 28, 26, 21, 98, 255, 255, 255, 255, 255, 255, 255, 255, 32.28047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 19, 27, 32.28048 + 21, 34, 85, 46, 79, 79, 93, 98, 107, 91, 85, 93, 88, 96, 148, 147, 32.28049 + 160, 156, 190, 203, 234, 238, 246, 253, 255, 252, 246, 239, 237, 238, 232, 235, 32.28050 + 223, 231, 217, 230, 224, 226, 220, 222, 219, 233, 217, 222, 219, 231, 238, 238, 32.28051 + 238, 239, 238, 236, 234, 231, 227, 231, 242, 229, 225, 234, 230, 231, 226, 227, 32.28052 + 225, 224, 224, 226, 230, 231, 232, 230, 239, 250, 251, 247, 251, 255, 255, 255, 32.28053 + 250, 241, 235, 227, 208, 185, 187, 137, 100, 122, 94, 86, 128, 96, 113, 105, 32.28054 + 104, 84, 101, 90, 80, 44, 36, 29, 26, 26, 25, 24, 255, 255, 255, 255, 32.28055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28056 + 255, 18, 21, 21, 22, 28, 61, 56, 68, 99, 102, 94, 95, 93, 111, 139, 32.28057 + 138, 143, 124, 142, 160, 182, 200, 224, 236, 242, 250, 252, 252, 250, 245, 239, 32.28058 + 234, 228, 229, 226, 218, 224, 227, 240, 240, 241, 247, 247, 242, 252, 238, 243, 32.28059 + 240, 252, 251, 251, 253, 252, 255, 255, 254, 252, 246, 247, 242, 240, 239, 243, 32.28060 + 252, 253, 255, 251, 240, 238, 241, 244, 243, 240, 235, 235, 227, 220, 231, 254, 32.28061 + 255, 246, 251, 255, 252, 243, 232, 227, 219, 210, 196, 165, 144, 112, 110, 117, 32.28062 + 97, 112, 90, 92, 91, 96, 91, 90, 86, 82, 68, 54, 42, 35, 33, 30, 32.28063 + 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28064 + 255, 255, 255, 255, 175, 18, 21, 22, 46, 65, 95, 108, 73, 102, 103, 96, 32.28065 + 99, 96, 107, 118, 100, 96, 121, 149, 167, 204, 208, 238, 239, 245, 246, 245, 32.28066 + 246, 246, 245, 242, 236, 229, 229, 232, 244, 244, 249, 243, 246, 240, 249, 250, 32.28067 + 244, 254, 240, 249, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 251, 32.28068 + 233, 246, 248, 240, 255, 254, 240, 241, 241, 240, 236, 226, 213, 203, 207, 200, 32.28069 + 214, 238, 243, 232, 240, 255, 253, 255, 255, 255, 246, 234, 218, 204, 201, 185, 32.28070 + 171, 124, 117, 123, 96, 111, 114, 112, 102, 115, 90, 86, 73, 84, 65, 48, 32.28071 + 34, 25, 24, 26, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28072 + 255, 255, 255, 255, 255, 255, 255, 255, 16, 18, 30, 14, 25, 41, 93, 111, 32.28073 + 81, 94, 97, 98, 111, 106, 108, 123, 127, 145, 146, 169, 186, 209, 214, 236, 32.28074 + 242, 247, 242, 238, 236, 233, 232, 229, 226, 222, 252, 243, 241, 208, 198, 178, 32.28075 + 192, 193, 232, 236, 234, 244, 233, 245, 244, 255, 250, 249, 248, 247, 247, 246, 32.28076 + 245, 244, 234, 241, 220, 247, 251, 226, 246, 234, 206, 208, 205, 192, 178, 168, 32.28077 + 166, 167, 180, 217, 231, 212, 208, 231, 243, 235, 237, 234, 234, 239, 246, 243, 32.28078 + 229, 213, 213, 194, 176, 163, 121, 108, 127, 100, 104, 97, 88, 98, 92, 93, 32.28079 + 81, 81, 74, 62, 53, 43, 41, 39, 38, 108, 255, 255, 255, 255, 255, 255, 32.28080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 16, 18, 22, 16, 32.28081 + 27, 35, 98, 86, 84, 79, 99, 107, 131, 132, 128, 128, 125, 141, 170, 185, 32.28082 + 208, 211, 227, 231, 246, 245, 219, 219, 223, 225, 230, 236, 246, 252, 188, 198, 32.28083 + 229, 238, 255, 243, 240, 221, 228, 234, 236, 247, 235, 247, 242, 250, 244, 244, 32.28084 + 243, 241, 241, 241, 240, 239, 233, 241, 219, 243, 246, 222, 241, 228, 215, 223, 32.28085 + 231, 232, 224, 205, 183, 171, 134, 120, 130, 168, 199, 208, 222, 242, 252, 244, 32.28086 + 237, 238, 242, 244, 241, 237, 230, 205, 191, 183, 142, 115, 121, 110, 103, 102, 32.28087 + 108, 95, 106, 102, 101, 86, 74, 69, 62, 51, 35, 26, 22, 19, 255, 255, 32.28088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 32.28089 + 16, 18, 17, 37, 75, 73, 118, 83, 92, 91, 108, 105, 124, 133, 140, 146, 32.28090 + 134, 141, 178, 190, 221, 218, 241, 232, 245, 232, 230, 226, 222, 212, 203, 198, 32.28091 + 201, 206, 218, 197, 186, 191, 221, 238, 246, 235, 230, 242, 241, 249, 235, 244, 32.28092 + 237, 241, 239, 239, 238, 236, 239, 240, 242, 243, 242, 245, 227, 236, 238, 225, 32.28093 + 244, 239, 222, 223, 228, 243, 250, 236, 201, 170, 211, 201, 161, 119, 128, 181, 32.28094 + 214, 213, 219, 227, 240, 248, 248, 239, 238, 242, 240, 218, 213, 167, 163, 142, 32.28095 + 77, 126, 121, 129, 142, 108, 108, 91, 97, 81, 89, 89, 85, 73, 56, 40, 32.28096 + 34, 31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28097 + 255, 255, 175, 15, 16, 18, 30, 46, 88, 67, 88, 86, 93, 131, 182, 154, 32.28098 + 142, 133, 137, 151, 149, 165, 187, 204, 223, 231, 237, 233, 226, 209, 157, 156, 32.28099 + 163, 173, 183, 195, 207, 213, 207, 198, 187, 204, 220, 242, 242, 239, 233, 244, 32.28100 + 242, 247, 230, 240, 233, 236, 235, 234, 233, 231, 234, 236, 237, 239, 241, 245, 32.28101 + 238, 235, 234, 238, 245, 248, 255, 249, 231, 228, 237, 242, 239, 232, 199, 193, 32.28102 + 193, 195, 191, 174, 159, 150, 141, 155, 181, 214, 237, 243, 243, 244, 244, 225, 32.28103 + 221, 165, 168, 156, 80, 123, 102, 106, 111, 99, 94, 87, 90, 90, 82, 82, 32.28104 + 78, 68, 53, 40, 33, 28, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28105 + 255, 255, 255, 255, 255, 255, 18, 18, 19, 22, 21, 36, 95, 83, 93, 116, 32.28106 + 82, 133, 91, 88, 118, 142, 161, 173, 167, 177, 205, 222, 221, 235, 218, 222, 32.28107 + 197, 183, 167, 163, 170, 182, 195, 205, 210, 211, 218, 231, 230, 241, 224, 234, 32.28108 + 234, 246, 239, 250, 246, 249, 233, 246, 240, 242, 237, 236, 234, 233, 233, 235, 32.28109 + 239, 241, 235, 240, 250, 238, 237, 247, 244, 246, 237, 244, 250, 249, 244, 238, 32.28110 + 236, 235, 255, 249, 231, 219, 226, 229, 196, 155, 159, 147, 149, 182, 223, 245, 32.28111 + 246, 243, 248, 231, 217, 191, 168, 158, 134, 113, 117, 104, 86, 105, 99, 107, 32.28112 + 94, 102, 104, 98, 91, 80, 68, 58, 46, 39, 30, 255, 255, 255, 255, 255, 32.28113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 18, 26, 35, 56, 86, 32.28114 + 95, 84, 90, 100, 106, 108, 87, 113, 116, 122, 171, 166, 186, 190, 205, 219, 32.28115 + 224, 214, 202, 197, 188, 175, 205, 210, 219, 225, 227, 230, 234, 239, 246, 246, 32.28116 + 246, 245, 247, 247, 248, 246, 248, 248, 247, 247, 247, 242, 238, 235, 232, 232, 32.28117 + 231, 234, 240, 246, 249, 250, 245, 242, 244, 243, 244, 243, 243, 242, 247, 248, 32.28118 + 248, 247, 246, 247, 247, 247, 244, 247, 248, 244, 244, 246, 242, 234, 179, 179, 32.28119 + 165, 147, 160, 197, 229, 240, 242, 233, 239, 216, 178, 175, 129, 122, 109, 89, 32.28120 + 101, 97, 117, 127, 122, 96, 99, 85, 96, 98, 120, 92, 71, 40, 38, 105, 32.28121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 31, 25, 32.28122 + 27, 34, 62, 83, 87, 86, 102, 110, 96, 80, 105, 130, 113, 165, 169, 154, 32.28123 + 212, 214, 236, 225, 221, 216, 193, 179, 212, 255, 245, 248, 254, 254, 251, 248, 32.28124 + 251, 252, 245, 244, 246, 247, 248, 250, 251, 252, 249, 248, 249, 248, 245, 242, 32.28125 + 239, 236, 233, 233, 233, 236, 242, 247, 252, 249, 244, 240, 242, 242, 241, 241, 32.28126 + 241, 241, 241, 242, 241, 241, 240, 240, 241, 241, 242, 245, 246, 244, 248, 252, 32.28127 + 250, 246, 255, 242, 214, 172, 133, 131, 173, 223, 255, 240, 239, 220, 205, 166, 32.28128 + 191, 122, 135, 94, 100, 85, 102, 89, 119, 123, 132, 101, 80, 109, 91, 73, 32.28129 + 49, 65, 41, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28130 + 255, 18, 18, 21, 36, 52, 40, 70, 86, 88, 97, 102, 96, 93, 121, 133, 32.28131 + 133, 176, 142, 153, 199, 204, 199, 204, 192, 166, 174, 216, 247, 248, 245, 246, 32.28132 + 248, 246, 241, 238, 237, 236, 236, 235, 237, 237, 238, 240, 241, 244, 248, 249, 32.28133 + 245, 242, 240, 237, 236, 236, 235, 237, 237, 238, 240, 240, 243, 243, 242, 241, 32.28134 + 241, 241, 240, 241, 242, 242, 240, 241, 241, 241, 241, 241, 243, 241, 240, 241, 32.28135 + 242, 242, 246, 251, 252, 251, 252, 255, 255, 248, 212, 169, 145, 145, 194, 251, 32.28136 + 217, 228, 203, 204, 180, 159, 101, 192, 133, 75, 73, 123, 89, 95, 92, 107, 32.28137 + 98, 102, 93, 107, 62, 18, 42, 34, 105, 255, 255, 255, 255, 255, 255, 255, 32.28138 + 255, 255, 255, 255, 177, 18, 19, 30, 53, 76, 43, 71, 84, 84, 89, 95, 32.28139 + 102, 115, 136, 137, 182, 166, 147, 195, 179, 192, 198, 184, 189, 219, 254, 255, 32.28140 + 255, 254, 241, 239, 241, 240, 235, 232, 232, 233, 230, 230, 230, 229, 231, 231, 32.28141 + 232, 235, 245, 245, 240, 237, 234, 233, 235, 238, 241, 242, 243, 241, 239, 239, 32.28142 + 237, 237, 243, 243, 241, 240, 239, 240, 241, 242, 240, 240, 241, 241, 242, 242, 32.28143 + 245, 243, 239, 237, 238, 237, 238, 240, 242, 244, 238, 250, 255, 254, 254, 241, 32.28144 + 196, 155, 141, 190, 239, 211, 218, 205, 172, 178, 137, 118, 136, 125, 98, 87, 32.28145 + 121, 89, 100, 98, 112, 97, 99, 75, 81, 75, 47, 38, 31, 255, 255, 255, 32.28146 + 255, 255, 255, 255, 255, 255, 255, 255, 24, 28, 28, 30, 45, 61, 80, 85, 32.28147 + 81, 84, 99, 105, 103, 109, 134, 135, 184, 150, 176, 200, 158, 172, 168, 182, 32.28148 + 215, 248, 255, 250, 243, 241, 246, 245, 245, 244, 242, 241, 240, 241, 238, 238, 32.28149 + 237, 237, 238, 238, 239, 240, 244, 242, 238, 234, 231, 232, 237, 242, 248, 250, 32.28150 + 250, 246, 242, 238, 236, 236, 243, 245, 242, 240, 239, 239, 237, 237, 238, 238, 32.28151 + 240, 241, 242, 242, 245, 243, 244, 239, 239, 238, 237, 236, 239, 242, 245, 250, 32.28152 + 246, 234, 237, 247, 239, 226, 188, 133, 201, 231, 210, 198, 197, 176, 185, 124, 32.28153 + 87, 166, 96, 85, 90, 113, 112, 90, 84, 70, 94, 86, 89, 72, 55, 43, 32.28154 + 32, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 20, 27, 36, 32.28155 + 53, 70, 84, 94, 97, 101, 111, 113, 116, 128, 139, 149, 154, 152, 186, 146, 32.28156 + 141, 155, 200, 238, 255, 252, 244, 254, 255, 247, 250, 247, 246, 246, 244, 242, 32.28157 + 242, 241, 245, 243, 245, 245, 245, 245, 245, 245, 245, 242, 238, 235, 233, 235, 32.28158 + 241, 248, 251, 254, 253, 248, 242, 237, 234, 237, 242, 245, 244, 241, 240, 239, 32.28159 + 236, 235, 238, 238, 240, 241, 241, 243, 244, 243, 242, 237, 238, 240, 239, 237, 32.28160 + 239, 245, 240, 237, 239, 248, 248, 240, 235, 244, 244, 167, 116, 212, 212, 210, 32.28161 + 207, 197, 175, 195, 130, 93, 144, 104, 95, 105, 104, 119, 103, 110, 121, 156, 32.28162 + 117, 67, 58, 46, 35, 30, 255, 255, 255, 255, 255, 255, 255, 255, 255, 22, 32.28163 + 19, 26, 41, 61, 84, 103, 75, 93, 106, 115, 122, 123, 139, 168, 166, 172, 32.28164 + 165, 175, 161, 127, 153, 184, 255, 242, 244, 255, 252, 234, 237, 255, 255, 255, 32.28165 + 253, 253, 254, 252, 252, 251, 249, 247, 249, 249, 249, 249, 250, 248, 246, 242, 32.28166 + 239, 235, 233, 234, 240, 249, 249, 253, 250, 245, 237, 234, 233, 233, 241, 241, 32.28167 + 244, 244, 242, 241, 239, 236, 238, 238, 239, 241, 242, 245, 245, 244, 238, 234, 32.28168 + 237, 241, 238, 234, 236, 242, 245, 234, 231, 238, 243, 240, 240, 246, 249, 221, 32.28169 + 147, 135, 231, 205, 212, 214, 178, 173, 130, 140, 125, 123, 134, 107, 94, 97, 32.28170 + 96, 119, 91, 81, 80, 110, 60, 49, 40, 35, 255, 255, 255, 255, 255, 255, 32.28171 + 255, 255, 255, 14, 19, 33, 49, 62, 73, 84, 92, 94, 95, 109, 133, 145, 32.28172 + 157, 180, 162, 158, 183, 171, 108, 134, 164, 216, 241, 253, 255, 244, 235, 238, 32.28173 + 241, 241, 245, 245, 244, 245, 248, 250, 249, 249, 248, 249, 249, 248, 249, 249, 32.28174 + 251, 250, 244, 241, 238, 236, 235, 235, 241, 250, 246, 251, 248, 242, 236, 235, 32.28175 + 235, 233, 242, 242, 245, 247, 246, 244, 241, 239, 240, 240, 240, 242, 244, 245, 32.28176 + 247, 246, 242, 239, 242, 245, 242, 234, 235, 241, 232, 245, 248, 235, 231, 242, 32.28177 + 248, 247, 235, 255, 217, 142, 164, 232, 202, 205, 202, 194, 157, 124, 119, 92, 32.28178 + 124, 82, 136, 120, 110, 85, 102, 97, 99, 78, 58, 49, 43, 41, 109, 255, 32.28179 + 255, 255, 255, 255, 255, 255, 255, 28, 20, 32, 54, 81, 82, 101, 91, 101, 32.28180 + 140, 103, 117, 151, 165, 157, 147, 187, 153, 170, 106, 166, 216, 243, 241, 249, 32.28181 + 251, 240, 236, 242, 240, 232, 235, 240, 239, 237, 249, 245, 243, 246, 244, 240, 32.28182 + 237, 238, 242, 246, 247, 247, 246, 240, 233, 234, 240, 243, 242, 243, 240, 246, 32.28183 + 246, 244, 240, 237, 228, 218, 231, 238, 248, 250, 242, 238, 238, 244, 245, 240, 32.28184 + 238, 240, 244, 249, 245, 242, 253, 234, 255, 248, 239, 247, 236, 243, 241, 236, 32.28185 + 235, 238, 239, 239, 241, 248, 239, 252, 242, 203, 143, 185, 216, 212, 210, 192, 32.28186 + 175, 121, 138, 126, 106, 126, 94, 93, 106, 102, 118, 118, 95, 114, 87, 73, 32.28187 + 53, 39, 32, 255, 255, 255, 255, 255, 255, 255, 32, 27, 28, 10, 84, 99, 32.28188 + 110, 91, 93, 96, 107, 110, 145, 163, 179, 151, 162, 164, 194, 126, 161, 180, 32.28189 + 254, 252, 255, 242, 238, 246, 247, 238, 233, 238, 248, 247, 239, 240, 255, 255, 32.28190 + 254, 253, 245, 240, 236, 234, 237, 242, 244, 244, 242, 239, 237, 244, 252, 251, 32.28191 + 241, 233, 235, 247, 254, 253, 245, 241, 242, 237, 227, 232, 246, 249, 242, 235, 32.28192 + 237, 240, 237, 244, 251, 244, 235, 233, 245, 255, 255, 255, 255, 255, 255, 255, 32.28193 + 255, 246, 236, 235, 231, 231, 241, 251, 251, 243, 248, 255, 246, 227, 184, 160, 32.28194 + 207, 214, 197, 214, 169, 129, 176, 160, 164, 81, 128, 98, 112, 71, 133, 128, 32.28195 + 127, 100, 131, 78, 37, 34, 33, 255, 255, 255, 255, 255, 255, 255, 7, 27, 32.28196 + 11, 51, 86, 146, 113, 89, 100, 110, 104, 126, 153, 149, 175, 155, 167, 165, 32.28197 + 181, 119, 172, 223, 253, 254, 255, 245, 243, 247, 243, 234, 240, 255, 248, 251, 32.28198 + 240, 234, 233, 234, 232, 243, 241, 239, 236, 238, 242, 248, 252, 253, 247, 240, 32.28199 + 238, 244, 255, 253, 240, 227, 236, 244, 252, 251, 247, 247, 252, 249, 233, 236, 32.28200 + 249, 252, 245, 239, 238, 241, 249, 246, 242, 237, 236, 237, 242, 246, 251, 255, 32.28201 + 248, 255, 255, 255, 255, 252, 255, 254, 245, 231, 233, 248, 255, 254, 245, 249, 32.28202 + 244, 253, 234, 149, 196, 225, 214, 215, 187, 172, 120, 149, 147, 169, 87, 91, 32.28203 + 116, 110, 107, 116, 124, 131, 117, 96, 65, 44, 40, 112, 255, 255, 255, 255, 32.28204 + 255, 176, 25, 22, 25, 23, 71, 104, 129, 123, 104, 120, 115, 125, 142, 143, 32.28205 + 160, 158, 180, 181, 143, 147, 175, 255, 239, 248, 253, 251, 241, 229, 234, 251, 32.28206 + 255, 251, 230, 235, 219, 219, 215, 222, 216, 227, 222, 222, 228, 234, 243, 250, 32.28207 + 255, 255, 255, 246, 236, 238, 247, 247, 235, 223, 227, 226, 226, 230, 241, 251, 32.28208 + 255, 251, 242, 243, 252, 252, 244, 240, 241, 245, 255, 245, 232, 230, 235, 238, 32.28209 + 231, 225, 236, 237, 218, 228, 233, 223, 238, 244, 253, 255, 255, 247, 235, 236, 32.28210 + 252, 255, 242, 239, 242, 255, 255, 168, 176, 223, 197, 215, 210, 183, 105, 185, 32.28211 + 149, 139, 141, 103, 91, 131, 117, 125, 107, 109, 123, 116, 83, 33, 16, 35, 32.28212 + 255, 255, 255, 255, 255, 20, 14, 17, 47, 64, 89, 84, 96, 95, 102, 110, 32.28213 + 117, 116, 146, 176, 157, 159, 197, 180, 136, 165, 224, 252, 255, 252, 255, 246, 32.28214 + 228, 223, 242, 255, 248, 224, 212, 220, 211, 232, 235, 250, 230, 229, 210, 213, 32.28215 + 220, 229, 237, 244, 249, 251, 255, 249, 240, 234, 236, 234, 224, 215, 207, 206, 32.28216 + 206, 210, 221, 232, 247, 250, 243, 242, 247, 245, 240, 238, 245, 250, 247, 243, 32.28217 + 237, 231, 226, 221, 218, 215, 208, 209, 211, 195, 201, 214, 208, 229, 223, 228, 32.28218 + 243, 253, 248, 239, 246, 254, 248, 241, 247, 255, 252, 206, 154, 200, 192, 210, 32.28219 + 205, 173, 153, 147, 181, 103, 193, 122, 102, 107, 139, 129, 143, 124, 114, 98, 32.28220 + 82, 68, 48, 29, 255, 255, 255, 255, 255, 20, 35, 29, 26, 76, 65, 92, 32.28221 + 90, 110, 101, 124, 142, 136, 155, 188, 158, 176, 191, 159, 125, 182, 245, 244, 32.28222 + 255, 255, 249, 237, 234, 237, 236, 225, 220, 225, 227, 254, 251, 255, 224, 217, 32.28223 + 188, 199, 224, 225, 228, 231, 233, 236, 240, 242, 252, 248, 243, 235, 229, 225, 32.28224 + 220, 216, 220, 223, 227, 221, 215, 215, 231, 242, 241, 240, 243, 241, 239, 241, 32.28225 + 250, 255, 244, 236, 229, 226, 227, 227, 219, 211, 194, 211, 223, 190, 206, 240, 32.28226 + 225, 240, 228, 222, 222, 230, 236, 238, 248, 251, 242, 237, 252, 252, 248, 244, 32.28227 + 163, 184, 209, 197, 210, 180, 137, 109, 158, 165, 139, 140, 125, 123, 114, 126, 32.28228 + 156, 160, 144, 110, 67, 36, 24, 28, 255, 255, 255, 255, 255, 18, 21, 9, 32.28229 + 56, 73, 110, 94, 113, 96, 113, 146, 147, 156, 161, 172, 161, 195, 182, 142, 32.28230 + 130, 203, 235, 249, 245, 255, 238, 233, 231, 228, 218, 213, 229, 249, 174, 207, 32.28231 + 211, 232, 203, 221, 219, 252, 251, 247, 241, 235, 229, 228, 232, 239, 241, 245, 32.28232 + 243, 233, 226, 228, 237, 243, 249, 245, 245, 240, 233, 226, 229, 233, 239, 242, 32.28233 + 243, 240, 238, 240, 245, 252, 248, 234, 224, 227, 241, 245, 239, 227, 231, 235, 32.28234 + 217, 202, 224, 236, 232, 249, 232, 239, 231, 215, 210, 227, 247, 244, 230, 231, 32.28235 + 250, 242, 255, 255, 190, 171, 195, 198, 224, 187, 133, 164, 139, 143, 141, 161, 32.28236 + 110, 132, 104, 137, 125, 124, 118, 111, 88, 58, 43, 44, 106, 255, 255, 255, 32.28237 + 255, 16, 30, 33, 51, 81, 78, 107, 118, 115, 130, 148, 107, 142, 164, 165, 32.28238 + 170, 197, 197, 137, 168, 205, 245, 249, 247, 255, 254, 239, 211, 193, 211, 243, 32.28239 + 255, 250, 244, 236, 194, 205, 189, 215, 196, 208, 255, 255, 248, 236, 229, 229, 32.28240 + 236, 247, 241, 245, 240, 225, 216, 227, 254, 255, 254, 239, 235, 242, 254, 253, 32.28241 + 238, 224, 230, 235, 238, 237, 236, 235, 238, 242, 240, 242, 242, 238, 234, 236, 32.28242 + 247, 255, 255, 255, 198, 211, 230, 192, 198, 228, 191, 232, 249, 220, 201, 219, 32.28243 + 243, 235, 233, 243, 253, 237, 255, 239, 201, 149, 197, 199, 211, 216, 184, 119, 32.28244 + 139, 139, 163, 155, 108, 109, 127, 121, 131, 136, 123, 105, 95, 89, 64, 31, 32.28245 + 23, 255, 255, 255, 176, 20, 18, 17, 30, 50, 112, 108, 115, 139, 124, 114, 32.28246 + 115, 136, 167, 167, 164, 200, 177, 151, 138, 216, 231, 240, 251, 251, 255, 250, 32.28247 + 220, 202, 221, 162, 242, 255, 255, 192, 125, 124, 94, 118, 116, 176, 174, 255, 32.28248 + 250, 248, 255, 230, 223, 223, 252, 220, 194, 213, 253, 255, 255, 255, 252, 243, 32.28249 + 237, 239, 246, 254, 255, 255, 234, 228, 220, 255, 242, 246, 255, 251, 255, 245, 32.28250 + 233, 229, 241, 255, 255, 255, 241, 203, 199, 155, 148, 189, 201, 228, 255, 197, 32.28251 + 183, 237, 220, 202, 219, 251, 238, 247, 255, 253, 250, 239, 202, 160, 170, 219, 32.28252 + 205, 220, 188, 147, 175, 140, 167, 151, 114, 79, 132, 118, 155, 172, 206, 173, 32.28253 + 135, 75, 56, 32, 35, 255, 255, 255, 19, 19, 32, 38, 68, 89, 109, 117, 32.28254 + 140, 153, 132, 123, 150, 127, 183, 171, 193, 185, 170, 148, 143, 215, 228, 237, 32.28255 + 250, 252, 255, 248, 199, 227, 174, 229, 255, 255, 245, 151, 139, 111, 134, 234, 32.28256 + 147, 164, 146, 249, 255, 246, 247, 234, 246, 240, 218, 210, 204, 224, 255, 255, 32.28257 + 255, 255, 244, 239, 237, 237, 242, 246, 250, 254, 247, 227, 224, 241, 242, 241, 32.28258 + 255, 255, 229, 235, 240, 239, 238, 246, 254, 255, 218, 180, 141, 132, 131, 141, 32.28259 + 170, 178, 255, 255, 236, 183, 232, 218, 228, 231, 250, 251, 253, 247, 244, 233, 32.28260 + 199, 162, 160, 213, 208, 226, 196, 150, 164, 129, 162, 125, 95, 94, 99, 115, 32.28261 + 146, 124, 110, 107, 92, 73, 50, 45, 36, 255, 255, 255, 18, 18, 23, 6, 32.28262 + 30, 83, 106, 147, 159, 139, 128, 132, 144, 153, 169, 187, 196, 184, 161, 148, 32.28263 + 161, 224, 235, 241, 251, 255, 255, 245, 206, 198, 214, 255, 255, 255, 231, 138, 32.28264 + 134, 95, 131, 248, 143, 139, 161, 223, 229, 229, 233, 230, 238, 217, 193, 213, 32.28265 + 230, 242, 255, 254, 246, 247, 242, 241, 240, 241, 244, 244, 244, 246, 255, 233, 32.28266 + 234, 216, 235, 231, 243, 246, 238, 233, 226, 226, 235, 246, 252, 251, 186, 186, 32.28267 + 162, 211, 207, 155, 172, 147, 246, 255, 255, 254, 190, 216, 231, 236, 245, 245, 32.28268 + 250, 246, 249, 245, 219, 189, 159, 205, 209, 231, 209, 168, 171, 142, 151, 167, 32.28269 + 115, 115, 106, 130, 135, 150, 144, 146, 122, 108, 63, 55, 25, 255, 255, 255, 32.28270 + 17, 17, 19, 22, 47, 103, 107, 132, 138, 144, 137, 138, 138, 179, 161, 177, 32.28271 + 183, 183, 156, 152, 183, 234, 242, 245, 254, 255, 236, 211, 176, 191, 210, 242, 32.28272 + 202, 222, 194, 163, 152, 166, 195, 255, 242, 250, 232, 230, 222, 241, 242, 227, 32.28273 + 231, 213, 197, 230, 249, 249, 250, 244, 233, 233, 240, 241, 244, 245, 246, 243, 32.28274 + 238, 240, 255, 243, 245, 211, 225, 238, 223, 223, 248, 234, 223, 223, 232, 238, 32.28275 + 238, 232, 156, 154, 123, 158, 149, 116, 171, 175, 240, 255, 255, 248, 245, 187, 32.28276 + 192, 243, 233, 240, 251, 252, 253, 252, 235, 215, 169, 206, 213, 231, 225, 194, 32.28277 + 186, 174, 123, 158, 97, 85, 86, 114, 118, 154, 155, 194, 208, 178, 98, 52, 32.28278 + 29, 255, 255, 255, 18, 18, 23, 39, 54, 110, 130, 134, 122, 154, 151, 149, 32.28279 + 165, 167, 172, 153, 186, 164, 155, 159, 204, 240, 246, 246, 251, 248, 255, 171, 32.28280 + 226, 205, 243, 211, 231, 207, 230, 242, 231, 255, 255, 248, 255, 255, 255, 246, 32.28281 + 237, 244, 231, 219, 226, 218, 214, 242, 252, 241, 236, 237, 234, 235, 240, 243, 32.28282 + 247, 248, 246, 242, 234, 234, 240, 252, 248, 216, 213, 250, 225, 222, 216, 227, 32.28283 + 240, 247, 241, 236, 239, 237, 250, 250, 245, 251, 221, 184, 186, 171, 164, 196, 32.28284 + 198, 187, 228, 216, 215, 234, 228, 241, 255, 255, 251, 245, 231, 220, 177, 201, 32.28285 + 212, 227, 232, 208, 188, 185, 158, 137, 101, 96, 99, 137, 171, 155, 190, 159, 32.28286 + 122, 75, 64, 47, 39, 255, 255, 255, 19, 19, 24, 37, 44, 93, 142, 144, 32.28287 + 125, 151, 130, 166, 158, 158, 155, 171, 189, 153, 159, 165, 220, 241, 245, 243, 32.28288 + 244, 238, 220, 201, 209, 234, 215, 247, 224, 233, 230, 240, 250, 255, 255, 255, 32.28289 + 255, 250, 246, 237, 223, 211, 214, 229, 229, 202, 240, 255, 252, 234, 229, 233, 32.28290 + 233, 236, 241, 244, 247, 248, 247, 243, 235, 233, 236, 254, 246, 231, 211, 250, 32.28291 + 243, 244, 216, 220, 230, 239, 246, 251, 255, 255, 255, 243, 253, 255, 252, 255, 32.28292 + 244, 227, 234, 234, 224, 244, 205, 237, 232, 220, 224, 241, 255, 255, 254, 247, 32.28293 + 238, 231, 180, 192, 210, 220, 232, 211, 171, 179, 143, 131, 103, 86, 109, 121, 32.28294 + 157, 155, 140, 146, 156, 111, 83, 38, 34, 255, 255, 255, 20, 21, 29, 57, 32.28295 + 91, 102, 114, 111, 128, 147, 119, 176, 133, 166, 153, 198, 184, 150, 166, 173, 32.28296 + 235, 243, 247, 243, 239, 228, 224, 238, 240, 237, 255, 255, 253, 255, 255, 255, 32.28297 + 255, 255, 255, 255, 255, 249, 234, 228, 220, 212, 231, 255, 242, 214, 255, 255, 32.28298 + 255, 239, 232, 232, 230, 233, 242, 243, 245, 247, 246, 245, 240, 238, 243, 247, 32.28299 + 246, 248, 225, 227, 253, 255, 246, 232, 220, 225, 238, 250, 255, 255, 254, 240, 32.28300 + 248, 255, 255, 255, 255, 238, 235, 245, 249, 221, 255, 218, 222, 247, 226, 241, 32.28301 + 255, 255, 255, 254, 246, 239, 192, 191, 206, 210, 229, 213, 168, 184, 132, 151, 32.28302 + 113, 83, 110, 98, 122, 161, 136, 138, 134, 107, 79, 53, 40, 255, 255, 255, 32.28303 + 21, 23, 25, 32, 73, 75, 92, 115, 149, 124, 144, 175, 143, 161, 193, 187, 32.28304 + 181, 144, 174, 181, 245, 247, 251, 247, 241, 227, 239, 223, 238, 255, 255, 255, 32.28305 + 255, 253, 255, 255, 255, 255, 255, 229, 233, 221, 213, 219, 229, 233, 242, 241, 32.28306 + 231, 239, 254, 255, 255, 247, 245, 243, 240, 243, 244, 243, 242, 245, 248, 248, 32.28307 + 249, 247, 254, 240, 253, 255, 242, 202, 250, 251, 252, 249, 245, 237, 226, 220, 32.28308 + 231, 240, 245, 242, 244, 255, 248, 234, 242, 229, 234, 227, 235, 252, 234, 248, 32.28309 + 242, 218, 235, 246, 253, 255, 254, 250, 240, 228, 208, 199, 206, 204, 227, 221, 32.28310 + 178, 205, 165, 138, 104, 96, 85, 92, 127, 137, 173, 179, 158, 140, 94, 76, 32.28311 + 45, 255, 255, 255, 177, 22, 26, 34, 21, 101, 137, 147, 122, 179, 137, 173, 32.28312 + 128, 177, 181, 221, 147, 178, 154, 218, 255, 249, 237, 233, 228, 227, 221, 232, 32.28313 + 247, 255, 255, 255, 255, 255, 255, 255, 245, 229, 218, 218, 224, 228, 222, 234, 32.28314 + 244, 250, 255, 210, 204, 255, 255, 250, 255, 255, 223, 236, 237, 244, 255, 232, 32.28315 + 249, 239, 251, 251, 255, 236, 252, 255, 255, 255, 255, 231, 218, 240, 255, 255, 32.28316 + 251, 242, 231, 222, 233, 213, 209, 218, 234, 246, 249, 248, 244, 241, 240, 241, 32.28317 + 242, 244, 245, 245, 244, 245, 230, 235, 235, 236, 246, 255, 247, 230, 210, 202, 32.28318 + 198, 211, 233, 238, 174, 210, 214, 152, 113, 94, 80, 112, 110, 134, 147, 126, 32.28319 + 130, 122, 94, 90, 29, 255, 255, 255, 255, 22, 6, 56, 86, 103, 121, 128, 32.28320 + 150, 196, 145, 169, 158, 174, 185, 189, 157, 187, 160, 216, 246, 232, 220, 217, 32.28321 + 219, 224, 233, 244, 255, 255, 255, 253, 246, 248, 232, 233, 227, 221, 216, 218, 32.28322 + 224, 228, 241, 243, 255, 255, 240, 211, 227, 253, 252, 255, 255, 243, 194, 170, 32.28323 + 187, 255, 245, 230, 239, 232, 252, 255, 193, 199, 198, 242, 255, 255, 255, 242, 32.28324 + 217, 206, 248, 255, 255, 255, 241, 226, 232, 218, 214, 220, 224, 228, 233, 239, 32.28325 + 247, 252, 249, 250, 250, 250, 249, 246, 242, 242, 239, 238, 230, 227, 239, 251, 32.28326 + 247, 233, 226, 225, 210, 196, 219, 244, 190, 204, 209, 157, 125, 91, 82, 110, 32.28327 + 117, 131, 173, 173, 138, 135, 100, 64, 61, 255, 255, 255, 255, 22, 33, 22, 32.28328 + 57, 84, 137, 120, 142, 153, 140, 136, 183, 163, 226, 172, 197, 194, 181, 225, 32.28329 + 241, 223, 212, 214, 222, 231, 244, 250, 254, 250, 241, 229, 216, 216, 212, 219, 32.28330 + 223, 226, 227, 231, 234, 237, 255, 254, 255, 255, 206, 218, 250, 250, 255, 236, 32.28331 + 192, 193, 196, 160, 139, 234, 243, 239, 238, 232, 255, 247, 127, 150, 184, 192, 32.28332 + 206, 239, 255, 255, 230, 221, 229, 255, 255, 255, 252, 237, 235, 229, 237, 238, 32.28333 + 230, 224, 221, 225, 232, 239, 248, 249, 251, 253, 253, 250, 248, 246, 249, 241, 32.28334 + 227, 218, 227, 242, 244, 238, 212, 214, 210, 202, 221, 234, 178, 170, 212, 173, 32.28335 + 140, 99, 83, 107, 118, 126, 133, 129, 133, 112, 82, 44, 28, 255, 255, 255, 32.28336 + 255, 22, 18, 45, 100, 94, 125, 136, 163, 129, 165, 159, 141, 186, 177, 184, 32.28337 + 169, 169, 202, 231, 236, 222, 219, 226, 234, 243, 249, 248, 243, 233, 220, 207, 32.28338 + 200, 198, 220, 228, 235, 241, 243, 244, 245, 247, 255, 255, 255, 251, 197, 225, 32.28339 + 250, 249, 246, 238, 196, 186, 185, 162, 151, 245, 248, 246, 239, 236, 253, 221, 32.28340 + 117, 123, 177, 162, 176, 226, 255, 255, 247, 250, 211, 235, 255, 255, 255, 247, 32.28341 + 242, 242, 248, 253, 243, 235, 227, 221, 220, 221, 231, 235, 237, 242, 245, 248, 32.28342 + 250, 252, 251, 244, 230, 218, 220, 231, 241, 241, 247, 219, 205, 199, 207, 215, 32.28343 + 194, 204, 189, 160, 124, 118, 91, 122, 135, 157, 129, 153, 131, 135, 117, 44, 32.28344 + 61, 255, 255, 255, 255, 22, 42, 9, 47, 113, 135, 120, 132, 138, 197, 166, 32.28345 + 157, 161, 186, 167, 196, 179, 206, 223, 223, 219, 229, 239, 242, 244, 247, 242, 32.28346 + 233, 222, 215, 210, 213, 215, 235, 241, 243, 245, 244, 244, 247, 249, 253, 255, 32.28347 + 243, 239, 216, 234, 236, 251, 226, 225, 194, 161, 140, 159, 178, 241, 250, 244, 32.28348 + 242, 242, 245, 198, 166, 139, 146, 175, 211, 235, 242, 250, 251, 245, 211, 224, 32.28349 + 244, 252, 253, 254, 244, 248, 246, 252, 248, 244, 240, 235, 230, 229, 230, 231, 32.28350 + 231, 233, 237, 240, 244, 247, 245, 244, 240, 228, 222, 226, 236, 245, 226, 214, 32.28351 + 226, 228, 223, 211, 192, 179, 190, 159, 109, 137, 93, 120, 124, 160, 172, 131, 32.28352 + 157, 106, 91, 72, 25, 255, 255, 255, 255, 177, 18, 44, 86, 121, 106, 130, 32.28353 + 159, 180, 159, 169, 156, 188, 181, 183, 203, 197, 204, 216, 219, 224, 241, 249, 32.28354 + 245, 245, 239, 236, 230, 223, 222, 228, 237, 242, 248, 248, 246, 246, 242, 241, 32.28355 + 245, 251, 246, 255, 238, 231, 237, 240, 231, 253, 255, 248, 215, 192, 190, 238, 32.28356 + 236, 236, 254, 246, 253, 252, 243, 207, 234, 197, 172, 182, 213, 242, 243, 240, 32.28357 + 246, 247, 219, 224, 245, 248, 250, 255, 243, 249, 251, 251, 247, 245, 243, 243, 32.28358 + 242, 244, 244, 244, 241, 237, 233, 234, 236, 237, 240, 246, 249, 242, 232, 229, 32.28359 + 237, 246, 239, 231, 234, 199, 183, 193, 207, 175, 199, 161, 104, 140, 99, 108, 32.28360 + 112, 143, 179, 160, 144, 123, 101, 65, 48, 255, 255, 255, 255, 255, 41, 17, 32.28361 + 32, 99, 122, 132, 143, 170, 135, 157, 176, 167, 196, 151, 192, 167, 205, 219, 32.28362 + 227, 236, 253, 254, 248, 249, 236, 237, 237, 238, 240, 244, 252, 253, 253, 251, 32.28363 + 247, 243, 238, 237, 240, 246, 244, 255, 247, 227, 240, 240, 241, 250, 255, 255, 32.28364 + 244, 233, 225, 250, 235, 243, 255, 255, 255, 255, 238, 235, 255, 243, 233, 199, 32.28365 + 207, 247, 252, 240, 244, 251, 219, 224, 251, 252, 250, 253, 238, 245, 247, 242, 32.28366 + 237, 236, 237, 241, 242, 246, 251, 252, 250, 245, 238, 234, 232, 232, 240, 246, 32.28367 + 252, 250, 245, 241, 243, 246, 236, 235, 251, 225, 204, 201, 210, 154, 185, 146, 32.28368 + 101, 123, 115, 110, 132, 144, 150, 136, 148, 130, 94, 74, 28, 255, 255, 255, 32.28369 + 255, 255, 24, 35, 66, 99, 121, 134, 154, 171, 143, 179, 159, 177, 184, 187, 32.28370 + 212, 204, 204, 223, 233, 243, 253, 249, 244, 247, 238, 242, 246, 250, 250, 250, 32.28371 + 250, 249, 252, 251, 246, 240, 232, 229, 231, 235, 239, 246, 255, 224, 232, 242, 32.28372 + 255, 255, 255, 255, 242, 236, 241, 250, 224, 255, 244, 255, 255, 246, 222, 252, 32.28373 + 243, 255, 245, 235, 246, 255, 250, 250, 252, 239, 214, 222, 255, 255, 249, 250, 32.28374 + 235, 245, 234, 230, 229, 233, 238, 241, 243, 244, 243, 247, 247, 247, 243, 240, 32.28375 + 236, 236, 244, 246, 247, 250, 249, 244, 240, 240, 246, 219, 231, 218, 199, 183, 32.28376 + 201, 155, 205, 160, 123, 113, 124, 99, 129, 115, 133, 159, 132, 145, 94, 51, 32.28377 + 44, 255, 255, 255, 255, 255, 178, 28, 66, 143, 91, 186, 173, 157, 146, 176, 32.28378 + 148, 190, 161, 206, 202, 214, 207, 232, 250, 248, 244, 244, 242, 236, 239, 239, 32.28379 + 241, 244, 246, 247, 247, 249, 251, 250, 247, 242, 236, 233, 231, 231, 235, 244, 32.28380 + 243, 232, 228, 241, 255, 255, 255, 255, 245, 242, 242, 240, 237, 238, 245, 247, 32.28381 + 246, 241, 240, 243, 243, 243, 241, 242, 248, 252, 255, 254, 252, 248, 205, 231, 32.28382 + 252, 254, 248, 249, 247, 240, 240, 240, 240, 239, 240, 240, 243, 245, 241, 239, 32.28383 + 239, 238, 238, 240, 237, 238, 243, 243, 243, 247, 250, 244, 232, 224, 231, 240, 32.28384 + 216, 230, 219, 195, 195, 149, 224, 142, 133, 121, 121, 112, 122, 118, 136, 146, 32.28385 + 132, 165, 92, 96, 48, 255, 255, 255, 255, 255, 255, 15, 95, 58, 147, 152, 32.28386 + 141, 150, 150, 159, 167, 190, 186, 206, 224, 203, 212, 234, 248, 246, 241, 241, 32.28387 + 238, 231, 239, 237, 239, 241, 241, 241, 240, 243, 250, 250, 246, 241, 236, 232, 32.28388 + 229, 229, 230, 242, 248, 238, 229, 231, 239, 246, 244, 234, 232, 238, 240, 239, 32.28389 + 239, 241, 243, 244, 245, 243, 243, 246, 246, 242, 229, 228, 233, 241, 249, 250, 32.28390 + 244, 236, 226, 244, 255, 252, 246, 245, 242, 236, 242, 243, 242, 242, 240, 240, 32.28391 + 241, 240, 238, 236, 236, 237, 240, 240, 239, 239, 240, 240, 239, 243, 245, 243, 32.28392 + 237, 230, 227, 245, 230, 234, 213, 186, 189, 150, 211, 126, 148, 110, 115, 133, 32.28393 + 117, 151, 143, 152, 126, 124, 51, 49, 25, 255, 255, 255, 255, 255, 255, 175, 32.28394 + 74, 106, 98, 150, 164, 165, 148, 146, 176, 185, 210, 206, 233, 193, 222, 237, 32.28395 + 247, 244, 238, 240, 239, 234, 243, 243, 243, 244, 244, 243, 241, 242, 248, 248, 32.28396 + 244, 240, 236, 233, 232, 234, 234, 246, 250, 240, 226, 218, 219, 219, 225, 225, 32.28397 + 233, 242, 246, 245, 246, 248, 244, 244, 243, 242, 247, 250, 248, 242, 235, 230, 32.28398 + 227, 227, 232, 230, 218, 206, 241, 249, 255, 248, 243, 241, 238, 232, 242, 243, 32.28399 + 242, 242, 241, 241, 241, 242, 244, 242, 241, 240, 243, 244, 242, 241, 241, 239, 32.28400 + 238, 243, 246, 247, 243, 241, 228, 249, 239, 231, 202, 179, 188, 159, 168, 150, 32.28401 + 137, 130, 136, 116, 126, 137, 143, 144, 117, 109, 79, 71, 42, 255, 255, 255, 32.28402 + 255, 255, 255, 255, 51, 89, 130, 133, 193, 167, 141, 158, 163, 180, 212, 209, 32.28403 + 208, 188, 233, 242, 244, 238, 235, 238, 241, 239, 247, 246, 247, 246, 246, 242, 32.28404 + 238, 239, 245, 245, 243, 240, 238, 239, 241, 243, 245, 246, 243, 236, 228, 224, 32.28405 + 225, 224, 223, 227, 238, 247, 247, 245, 245, 247, 244, 243, 242, 242, 247, 250, 32.28406 + 246, 239, 241, 237, 230, 226, 223, 221, 214, 208, 239, 244, 246, 243, 242, 242, 32.28407 + 237, 233, 241, 243, 242, 242, 242, 242, 242, 242, 245, 244, 244, 244, 246, 244, 32.28408 + 243, 243, 246, 244, 242, 241, 245, 246, 244, 243, 229, 244, 234, 222, 198, 183, 32.28409 + 188, 161, 138, 164, 125, 134, 142, 105, 125, 123, 133, 134, 114, 98, 101, 81, 32.28410 + 46, 255, 255, 255, 255, 255, 255, 255, 46, 81, 150, 143, 200, 105, 144, 187, 32.28411 + 146, 185, 201, 213, 175, 202, 244, 244, 240, 234, 231, 238, 243, 246, 249, 247, 32.28412 + 247, 244, 243, 239, 236, 235, 240, 241, 242, 242, 242, 246, 250, 254, 255, 249, 32.28413 + 241, 235, 233, 234, 234, 231, 223, 229, 239, 244, 243, 244, 245, 246, 245, 244, 32.28414 + 242, 242, 246, 249, 243, 237, 240, 242, 238, 234, 232, 234, 237, 240, 234, 238, 32.28415 + 241, 241, 242, 242, 238, 236, 241, 242, 242, 242, 241, 241, 241, 242, 244, 243, 32.28416 + 243, 243, 245, 244, 244, 242, 248, 246, 243, 240, 242, 243, 243, 246, 233, 233, 32.28417 + 225, 221, 208, 196, 182, 148, 140, 144, 135, 105, 117, 130, 111, 147, 152, 159, 32.28418 + 138, 98, 82, 52, 34, 255, 255, 255, 255, 255, 255, 255, 255, 139, 113, 189, 32.28419 + 175, 96, 158, 202, 145, 191, 191, 201, 162, 224, 246, 243, 237, 232, 233, 240, 32.28420 + 246, 248, 249, 246, 244, 243, 240, 237, 233, 233, 236, 238, 240, 243, 248, 250, 32.28421 + 255, 255, 255, 250, 241, 240, 240, 235, 230, 224, 224, 231, 241, 244, 245, 250, 32.28422 + 254, 254, 246, 246, 244, 243, 245, 247, 245, 241, 244, 247, 246, 240, 234, 236, 32.28423 + 243, 248, 239, 239, 242, 243, 241, 239, 236, 236, 240, 241, 241, 241, 241, 241, 32.28424 + 241, 241, 243, 242, 241, 243, 246, 244, 242, 241, 245, 244, 240, 239, 240, 243, 32.28425 + 245, 249, 239, 224, 220, 225, 220, 203, 174, 140, 133, 150, 133, 110, 114, 133, 32.28426 + 119, 141, 159, 161, 142, 105, 80, 57, 115, 255, 255, 255, 255, 255, 255, 255, 32.28427 + 255, 99, 153, 172, 132, 154, 170, 181, 155, 190, 182, 168, 177, 234, 243, 238, 32.28428 + 236, 236, 240, 244, 247, 246, 250, 246, 242, 239, 237, 235, 235, 234, 233, 235, 32.28429 + 241, 245, 249, 252, 255, 255, 250, 246, 240, 239, 235, 229, 230, 229, 233, 238, 32.28430 + 245, 248, 249, 254, 255, 252, 241, 244, 243, 241, 241, 245, 245, 245, 251, 253, 32.28431 + 249, 242, 236, 234, 235, 236, 242, 241, 241, 241, 238, 236, 236, 239, 240, 241, 32.28432 + 240, 240, 240, 240, 239, 239, 241, 241, 240, 242, 245, 245, 244, 242, 243, 243, 32.28433 + 241, 240, 241, 243, 248, 253, 251, 221, 216, 220, 214, 197, 178, 162, 116, 156, 32.28434 + 131, 125, 117, 129, 131, 131, 127, 128, 118, 101, 70, 61, 255, 255, 255, 255, 32.28435 + 255, 255, 255, 255, 255, 78, 141, 130, 141, 153, 176, 150, 164, 181, 175, 137, 32.28436 + 193, 232, 238, 235, 234, 239, 244, 245, 245, 241, 249, 244, 239, 236, 236, 235, 32.28437 + 236, 236, 232, 235, 242, 246, 250, 254, 255, 255, 244, 240, 236, 232, 226, 223, 32.28438 + 233, 241, 238, 243, 247, 245, 245, 247, 245, 239, 236, 239, 240, 237, 237, 242, 32.28439 + 245, 247, 251, 250, 248, 245, 244, 242, 237, 233, 241, 240, 239, 237, 233, 234, 32.28440 + 238, 244, 242, 240, 240, 240, 240, 240, 240, 238, 241, 240, 241, 242, 244, 245, 32.28441 + 243, 243, 243, 244, 241, 239, 240, 242, 246, 251, 255, 223, 211, 211, 199, 189, 32.28442 + 187, 195, 118, 123, 147, 106, 92, 154, 124, 163, 122, 132, 130, 107, 44, 40, 32.28443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 151, 148, 169, 188, 195, 144, 32.28444 + 145, 170, 155, 154, 200, 237, 242, 229, 244, 246, 240, 245, 243, 245, 247, 243, 32.28445 + 241, 238, 236, 235, 233, 232, 231, 240, 245, 246, 250, 255, 248, 239, 239, 237, 32.28446 + 231, 226, 229, 238, 248, 252, 241, 235, 235, 236, 236, 236, 231, 227, 226, 218, 32.28447 + 218, 224, 224, 221, 229, 241, 243, 242, 246, 252, 255, 251, 240, 231, 235, 240, 32.28448 + 243, 243, 238, 238, 239, 238, 236, 240, 247, 245, 239, 235, 240, 245, 238, 238, 32.28449 + 240, 241, 241, 242, 242, 244, 246, 244, 242, 241, 242, 243, 247, 251, 255, 227, 32.28450 + 213, 205, 217, 197, 190, 175, 132, 100, 150, 120, 97, 114, 172, 153, 118, 126, 32.28451 + 110, 85, 75, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 124, 148, 32.28452 + 174, 179, 216, 157, 146, 162, 149, 156, 207, 241, 240, 229, 246, 248, 241, 245, 32.28453 + 241, 243, 244, 242, 239, 238, 238, 235, 234, 233, 233, 239, 245, 247, 247, 245, 32.28454 + 239, 233, 228, 231, 232, 235, 238, 245, 253, 254, 243, 240, 240, 240, 240, 241, 32.28455 + 243, 241, 235, 234, 234, 234, 228, 223, 227, 234, 234, 231, 234, 241, 248, 252, 32.28456 + 249, 244, 238, 237, 235, 234, 235, 239, 242, 238, 237, 233, 237, 239, 240, 241, 32.28457 + 242, 242, 240, 238, 240, 240, 241, 241, 242, 242, 244, 241, 240, 239, 240, 242, 32.28458 + 245, 251, 250, 228, 212, 194, 206, 194, 183, 158, 148, 111, 142, 105, 96, 111, 32.28459 + 162, 152, 126, 109, 105, 92, 57, 38, 255, 255, 255, 255, 255, 255, 255, 255, 32.28460 + 255, 107, 137, 118, 128, 204, 200, 142, 131, 150, 145, 163, 216, 247, 238, 227, 32.28461 + 246, 250, 245, 247, 242, 241, 242, 241, 239, 239, 239, 238, 237, 238, 240, 239, 32.28462 + 242, 243, 238, 230, 226, 227, 223, 229, 237, 245, 248, 251, 252, 249, 248, 246, 32.28463 + 247, 247, 246, 247, 249, 250, 239, 248, 251, 245, 236, 234, 236, 234, 229, 226, 32.28464 + 228, 233, 241, 250, 255, 255, 246, 239, 230, 226, 231, 239, 244, 241, 237, 228, 32.28465 + 228, 234, 241, 245, 243, 238, 240, 240, 240, 240, 241, 241, 241, 242, 242, 241, 32.28466 + 239, 238, 239, 241, 245, 249, 247, 234, 218, 192, 205, 200, 186, 148, 142, 118, 32.28467 + 138, 100, 106, 105, 130, 124, 155, 98, 85, 85, 51, 40, 255, 255, 255, 255, 32.28468 + 255, 255, 255, 255, 255, 93, 123, 160, 128, 191, 167, 120, 119, 144, 148, 175, 32.28469 + 222, 242, 240, 227, 246, 247, 243, 248, 242, 244, 241, 241, 239, 239, 241, 241, 32.28470 + 241, 242, 246, 239, 237, 237, 230, 219, 219, 230, 233, 238, 243, 248, 249, 248, 32.28471 + 246, 243, 246, 244, 243, 245, 247, 247, 246, 241, 233, 248, 254, 248, 241, 242, 32.28472 + 243, 235, 236, 231, 230, 232, 239, 244, 250, 252, 253, 246, 237, 231, 233, 240, 32.28473 + 247, 245, 237, 228, 227, 233, 242, 246, 243, 238, 241, 240, 240, 240, 241, 241, 32.28474 + 241, 241, 241, 240, 236, 237, 238, 240, 244, 249, 248, 233, 218, 196, 211, 203, 32.28475 + 188, 151, 147, 132, 141, 99, 119, 105, 114, 123, 165, 109, 79, 70, 50, 46, 32.28476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 137, 196, 121, 194, 157, 121, 32.28477 + 125, 149, 153, 180, 223, 233, 244, 229, 245, 245, 241, 246, 243, 246, 240, 239, 32.28478 + 241, 241, 242, 244, 244, 246, 248, 240, 234, 232, 226, 219, 226, 237, 247, 245, 32.28479 + 245, 245, 243, 241, 242, 241, 241, 237, 236, 242, 249, 251, 244, 235, 232, 246, 32.28480 + 253, 248, 240, 241, 239, 233, 241, 238, 238, 238, 239, 242, 242, 242, 250, 249, 32.28481 + 246, 239, 236, 237, 243, 246, 238, 236, 237, 238, 241, 244, 243, 242, 241, 241, 32.28482 + 241, 241, 241, 241, 242, 241, 242, 240, 236, 237, 238, 240, 244, 250, 249, 227, 32.28483 + 213, 199, 213, 195, 179, 150, 166, 149, 141, 91, 120, 109, 125, 156, 138, 127, 32.28484 + 94, 61, 45, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 129, 217, 32.28485 + 130, 154, 145, 119, 128, 147, 148, 178, 225, 236, 246, 229, 243, 244, 238, 245, 32.28486 + 244, 247, 240, 239, 241, 242, 245, 245, 247, 249, 248, 242, 235, 232, 229, 231, 32.28487 + 238, 248, 251, 247, 242, 239, 237, 237, 239, 241, 243, 240, 241, 247, 255, 255, 32.28488 + 254, 246, 245, 251, 255, 252, 246, 243, 242, 236, 241, 241, 243, 243, 241, 239, 32.28489 + 236, 235, 239, 243, 245, 243, 238, 236, 241, 244, 242, 244, 247, 245, 242, 241, 32.28490 + 243, 246, 242, 241, 241, 241, 241, 241, 242, 241, 242, 239, 237, 235, 238, 241, 32.28491 + 244, 249, 252, 231, 217, 202, 212, 189, 174, 150, 157, 139, 130, 86, 121, 108, 32.28492 + 123, 159, 129, 125, 86, 49, 47, 42, 255, 255, 255, 255, 255, 255, 255, 255, 32.28493 + 192, 132, 158, 167, 110, 156, 124, 110, 128, 146, 144, 176, 228, 238, 245, 229, 32.28494 + 245, 245, 239, 243, 240, 243, 240, 239, 241, 243, 246, 248, 250, 252, 247, 247, 32.28495 + 242, 236, 238, 245, 252, 252, 245, 244, 241, 238, 237, 236, 236, 239, 243, 246, 32.28496 + 246, 247, 250, 250, 251, 250, 242, 241, 243, 249, 250, 246, 247, 248, 243, 245, 32.28497 + 245, 244, 240, 236, 234, 230, 231, 233, 236, 240, 240, 242, 242, 243, 246, 248, 32.28498 + 250, 249, 245, 244, 247, 247, 242, 242, 241, 241, 242, 242, 242, 241, 243, 238, 32.28499 + 237, 236, 238, 240, 245, 249, 250, 238, 228, 203, 209, 194, 184, 154, 156, 130, 32.28500 + 124, 88, 125, 108, 113, 140, 150, 113, 72, 52, 48, 47, 255, 255, 255, 255, 32.28501 + 255, 255, 255, 255, 75, 130, 148, 163, 145, 143, 115, 111, 137, 155, 148, 176, 32.28502 + 224, 233, 244, 231, 246, 248, 240, 242, 236, 238, 238, 239, 241, 243, 246, 247, 32.28503 + 248, 250, 243, 248, 245, 239, 242, 253, 254, 247, 238, 238, 240, 241, 242, 241, 32.28504 + 239, 242, 247, 252, 250, 243, 233, 230, 235, 240, 225, 219, 223, 237, 246, 248, 32.28505 + 251, 255, 254, 255, 255, 251, 247, 241, 237, 233, 232, 230, 230, 235, 243, 244, 32.28506 + 242, 240, 245, 245, 245, 245, 245, 246, 246, 246, 242, 242, 241, 241, 242, 242, 32.28507 + 242, 241, 243, 240, 237, 236, 239, 242, 245, 250, 240, 241, 233, 199, 205, 202, 32.28508 + 194, 158, 190, 148, 130, 90, 126, 113, 121, 146, 163, 106, 82, 72, 34, 27, 32.28509 + 255, 255, 255, 255, 255, 255, 255, 255, 86, 136, 151, 169, 153, 148, 95, 109, 32.28510 + 147, 144, 147, 167, 223, 231, 241, 242, 244, 243, 238, 236, 238, 239, 238, 238, 32.28511 + 240, 242, 246, 244, 240, 240, 244, 249, 242, 236, 237, 247, 244, 233, 231, 238, 32.28512 + 240, 238, 241, 250, 255, 255, 249, 240, 227, 221, 215, 206, 202, 204, 220, 211, 32.28513 + 204, 205, 215, 222, 223, 222, 245, 254, 255, 255, 255, 250, 251, 252, 244, 238, 32.28514 + 235, 235, 236, 237, 237, 239, 246, 246, 244, 241, 239, 238, 242, 243, 242, 242, 32.28515 + 242, 242, 242, 242, 242, 242, 238, 242, 242, 239, 237, 242, 245, 249, 246, 243, 32.28516 + 219, 209, 202, 202, 197, 154, 174, 162, 108, 115, 126, 121, 116, 146, 140, 156, 32.28517 + 76, 90, 48, 34, 255, 255, 255, 255, 255, 255, 255, 189, 116, 138, 154, 137, 32.28518 + 151, 137, 98, 107, 144, 147, 156, 174, 222, 229, 242, 243, 245, 244, 238, 234, 32.28519 + 236, 238, 238, 238, 241, 242, 243, 242, 236, 237, 238, 242, 245, 247, 244, 238, 32.28520 + 231, 231, 225, 231, 237, 248, 255, 255, 251, 238, 223, 228, 238, 254, 255, 255, 32.28521 + 255, 255, 255, 255, 250, 247, 251, 251, 245, 242, 216, 207, 204, 221, 251, 255, 32.28522 + 255, 254, 244, 242, 242, 242, 243, 240, 236, 233, 241, 242, 240, 238, 236, 237, 32.28523 + 241, 244, 242, 242, 242, 242, 242, 242, 242, 242, 238, 242, 242, 239, 238, 241, 32.28524 + 245, 248, 243, 240, 219, 208, 203, 201, 196, 153, 159, 166, 112, 84, 97, 118, 32.28525 + 136, 149, 160, 135, 60, 61, 49, 30, 104, 255, 255, 255, 255, 255, 255, 48, 32.28526 + 149, 192, 168, 115, 163, 104, 111, 105, 133, 141, 153, 168, 217, 226, 241, 242, 32.28527 + 244, 243, 238, 235, 237, 238, 238, 238, 241, 243, 243, 241, 236, 236, 236, 237, 32.28528 + 242, 255, 251, 239, 237, 245, 240, 244, 251, 255, 255, 254, 231, 214, 225, 237, 32.28529 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28530 + 234, 217, 218, 234, 249, 255, 255, 250, 244, 240, 241, 242, 244, 243, 242, 240, 32.28531 + 240, 239, 238, 238, 241, 244, 242, 242, 242, 242, 242, 242, 242, 242, 238, 241, 32.28532 + 242, 238, 239, 241, 243, 246, 241, 239, 219, 210, 202, 200, 195, 154, 142, 157, 32.28533 + 121, 86, 93, 104, 124, 125, 179, 144, 98, 53, 55, 36, 34, 255, 255, 255, 32.28534 + 255, 255, 255, 86, 142, 175, 180, 117, 140, 146, 146, 124, 142, 147, 158, 170, 32.28535 + 222, 240, 239, 241, 244, 243, 239, 234, 236, 237, 238, 240, 242, 243, 243, 241, 32.28536 + 236, 233, 236, 235, 241, 249, 251, 248, 251, 255, 255, 255, 255, 249, 236, 225, 32.28537 + 219, 217, 218, 221, 224, 223, 216, 209, 208, 210, 206, 204, 205, 209, 215, 217, 32.28538 + 210, 208, 208, 221, 227, 219, 208, 208, 225, 242, 251, 244, 241, 240, 244, 251, 32.28539 + 255, 255, 243, 241, 242, 240, 238, 238, 239, 241, 242, 242, 242, 242, 242, 242, 32.28540 + 242, 242, 239, 241, 241, 239, 239, 241, 242, 243, 241, 239, 220, 214, 206, 201, 32.28541 + 196, 159, 156, 151, 123, 110, 110, 90, 106, 121, 154, 155, 158, 65, 60, 43, 32.28542 + 41, 255, 255, 255, 255, 255, 203, 70, 152, 194, 149, 134, 146, 136, 160, 127, 32.28543 + 139, 149, 159, 164, 215, 238, 238, 240, 243, 243, 239, 236, 235, 237, 240, 240, 32.28544 + 241, 244, 244, 240, 235, 232, 231, 236, 238, 242, 249, 255, 255, 252, 245, 244, 32.28545 + 236, 224, 214, 213, 223, 232, 243, 241, 240, 234, 226, 224, 227, 230, 236, 233, 32.28546 + 232, 234, 238, 240, 236, 236, 239, 242, 240, 236, 232, 225, 217, 213, 219, 221, 32.28547 + 227, 236, 248, 255, 255, 255, 246, 242, 243, 242, 239, 237, 237, 238, 242, 242, 32.28548 + 242, 242, 242, 242, 242, 242, 239, 241, 240, 238, 239, 242, 242, 240, 239, 236, 32.28549 + 220, 215, 205, 197, 192, 158, 191, 167, 124, 114, 106, 95, 121, 148, 128, 141, 32.28550 + 171, 83, 70, 48, 42, 36, 255, 255, 255, 255, 46, 97, 165, 180, 176, 168, 32.28551 + 123, 134, 170, 125, 133, 150, 164, 162, 205, 227, 237, 239, 245, 244, 240, 236, 32.28552 + 234, 237, 240, 241, 243, 244, 244, 242, 236, 231, 225, 234, 241, 242, 249, 255, 32.28553 + 246, 230, 223, 213, 206, 208, 218, 228, 236, 240, 237, 239, 238, 234, 232, 234, 32.28554 + 235, 235, 225, 223, 221, 222, 227, 229, 229, 228, 243, 235, 224, 223, 231, 238, 32.28555 + 238, 234, 219, 214, 209, 210, 218, 230, 243, 243, 245, 241, 243, 243, 241, 238, 32.28556 + 237, 237, 242, 242, 242, 242, 242, 242, 242, 242, 240, 241, 239, 238, 241, 242, 32.28557 + 240, 237, 235, 232, 217, 214, 202, 192, 184, 152, 203, 199, 149, 127, 95, 115, 32.28558 + 135, 142, 156, 143, 153, 113, 97, 65, 41, 54, 255, 255, 255, 183, 67, 100, 32.28559 + 157, 171, 179, 186, 193, 178, 216, 150, 142, 159, 181, 176, 216, 234, 236, 238, 32.28560 + 244, 244, 240, 237, 237, 237, 241, 242, 244, 244, 245, 242, 236, 230, 227, 232, 32.28561 + 242, 247, 250, 245, 236, 228, 227, 222, 219, 226, 236, 240, 243, 246, 241, 242, 32.28562 + 241, 236, 236, 238, 235, 229, 234, 233, 234, 236, 241, 243, 241, 241, 234, 240, 32.28563 + 248, 252, 252, 245, 239, 233, 239, 229, 216, 208, 209, 218, 231, 232, 241, 238, 32.28564 + 242, 243, 242, 241, 240, 240, 242, 242, 242, 242, 242, 242, 242, 242, 240, 240, 32.28565 + 239, 237, 241, 243, 240, 236, 234, 231, 216, 214, 202, 186, 178, 148, 203, 230, 32.28566 + 186, 166, 108, 143, 144, 133, 181, 161, 138, 141, 115, 86, 48, 61, 255, 255, 32.28567 + 255, 30, 73, 115, 142, 169, 240, 213, 233, 225, 245, 160, 132, 144, 170, 168, 32.28568 + 208, 228, 236, 240, 244, 244, 241, 239, 238, 239, 244, 243, 245, 246, 245, 242, 32.28569 + 236, 230, 236, 234, 241, 252, 250, 235, 234, 241, 249, 252, 254, 254, 245, 236, 32.28570 + 238, 247, 246, 247, 243, 241, 245, 252, 251, 246, 248, 249, 249, 250, 251, 248, 32.28571 + 244, 241, 245, 239, 236, 237, 241, 244, 241, 239, 232, 234, 237, 242, 243, 242, 32.28572 + 236, 227, 236, 235, 240, 243, 243, 243, 243, 243, 242, 242, 242, 242, 242, 242, 32.28573 + 242, 242, 240, 240, 240, 239, 241, 243, 239, 236, 236, 233, 218, 216, 202, 185, 32.28574 + 177, 147, 212, 246, 204, 198, 127, 166, 164, 162, 161, 161, 127, 147, 113, 101, 32.28575 + 56, 58, 112, 255, 255, 38, 95, 131, 169, 193, 210, 243, 247, 232, 255, 177, 32.28576 + 131, 141, 165, 169, 205, 227, 233, 238, 240, 245, 248, 236, 231, 242, 245, 244, 32.28577 + 244, 244, 243, 241, 237, 233, 233, 238, 247, 248, 238, 226, 229, 238, 248, 253, 32.28578 + 255, 255, 249, 245, 241, 240, 246, 246, 246, 246, 246, 248, 251, 254, 251, 252, 32.28579 + 254, 254, 252, 249, 247, 244, 232, 232, 235, 237, 240, 242, 246, 246, 251, 251, 32.28580 + 252, 251, 249, 243, 239, 233, 233, 236, 243, 245, 242, 240, 241, 243, 241, 241, 32.28581 + 241, 241, 241, 241, 241, 241, 240, 239, 239, 239, 244, 249, 247, 245, 239, 242, 32.28582 + 221, 210, 207, 189, 169, 149, 222, 247, 229, 226, 191, 157, 199, 213, 243, 204, 32.28583 + 212, 195, 141, 90, 90, 50, 55, 255, 255, 37, 87, 196, 211, 169, 217, 242, 32.28584 + 250, 255, 255, 184, 123, 143, 161, 172, 200, 227, 232, 238, 240, 245, 247, 237, 32.28585 + 232, 242, 245, 243, 243, 242, 243, 241, 238, 235, 238, 242, 247, 246, 236, 228, 32.28586 + 234, 243, 253, 255, 255, 255, 251, 245, 243, 242, 242, 243, 242, 240, 239, 241, 32.28587 + 242, 244, 245, 248, 249, 248, 246, 243, 241, 238, 233, 233, 237, 241, 247, 251, 32.28588 + 255, 255, 255, 255, 255, 255, 250, 245, 240, 237, 233, 237, 243, 244, 242, 240, 32.28589 + 241, 243, 241, 241, 241, 241, 241, 241, 241, 241, 240, 241, 240, 238, 241, 246, 32.28590 + 248, 247, 235, 239, 220, 208, 204, 188, 170, 157, 239, 255, 244, 247, 225, 196, 32.28591 + 226, 231, 255, 255, 228, 210, 214, 134, 83, 72, 50, 255, 255, 36, 102, 246, 32.28592 + 242, 224, 183, 240, 243, 255, 255, 197, 113, 144, 156, 175, 193, 230, 232, 239, 32.28593 + 241, 243, 246, 239, 234, 243, 244, 242, 242, 240, 241, 241, 241, 239, 243, 245, 32.28594 + 245, 244, 237, 233, 238, 247, 250, 252, 253, 250, 245, 241, 238, 240, 243, 245, 32.28595 + 242, 238, 236, 235, 236, 238, 243, 244, 245, 244, 243, 240, 236, 233, 231, 231, 32.28596 + 235, 240, 245, 250, 254, 255, 250, 251, 252, 249, 247, 242, 237, 235, 233, 237, 32.28597 + 243, 244, 242, 240, 241, 243, 241, 241, 241, 241, 241, 240, 240, 240, 239, 242, 32.28598 + 241, 239, 240, 244, 248, 251, 233, 234, 220, 205, 198, 185, 171, 169, 249, 255, 32.28599 + 250, 255, 252, 231, 246, 241, 243, 255, 230, 214, 248, 184, 115, 71, 45, 255, 32.28600 + 255, 36, 105, 238, 255, 245, 221, 200, 234, 251, 255, 216, 105, 141, 149, 178, 32.28601 + 190, 235, 231, 239, 241, 243, 246, 240, 236, 244, 244, 241, 239, 238, 240, 241, 32.28602 + 242, 241, 245, 245, 244, 244, 238, 234, 239, 246, 244, 245, 246, 243, 240, 237, 32.28603 + 235, 238, 244, 245, 242, 238, 235, 234, 234, 237, 242, 243, 245, 243, 240, 238, 32.28604 + 235, 232, 232, 232, 234, 235, 238, 240, 242, 243, 243, 244, 245, 243, 241, 237, 32.28605 + 235, 233, 235, 238, 242, 243, 242, 241, 242, 243, 241, 241, 241, 240, 240, 240, 32.28606 + 240, 239, 238, 242, 242, 238, 237, 241, 247, 252, 233, 230, 221, 203, 193, 182, 32.28607 + 170, 183, 247, 254, 250, 255, 255, 244, 250, 242, 242, 251, 253, 242, 244, 238, 32.28608 + 201, 70, 49, 116, 255, 34, 61, 255, 229, 255, 234, 221, 193, 255, 255, 234, 32.28609 + 105, 135, 143, 181, 191, 239, 230, 239, 240, 241, 244, 240, 238, 244, 243, 241, 32.28610 + 239, 239, 241, 243, 242, 243, 245, 244, 244, 245, 241, 235, 234, 238, 243, 243, 32.28611 + 244, 243, 240, 239, 239, 241, 244, 245, 242, 240, 236, 236, 236, 239, 242, 244, 32.28612 + 245, 244, 241, 238, 235, 234, 238, 240, 239, 238, 238, 237, 239, 238, 239, 240, 32.28613 + 241, 243, 242, 241, 240, 239, 237, 239, 242, 243, 242, 242, 242, 242, 241, 241, 32.28614 + 241, 240, 240, 239, 239, 238, 238, 242, 242, 237, 237, 241, 248, 252, 239, 228, 32.28615 + 224, 203, 188, 180, 169, 192, 246, 250, 251, 255, 253, 245, 250, 246, 255, 249, 32.28616 + 255, 255, 240, 252, 245, 74, 52, 52, 255, 34, 58, 240, 249, 236, 248, 204, 32.28617 + 232, 239, 252, 247, 110, 127, 144, 181, 192, 237, 228, 240, 240, 238, 243, 240, 32.28618 + 238, 243, 242, 241, 240, 241, 242, 244, 242, 243, 245, 243, 244, 246, 244, 236, 32.28619 + 232, 233, 240, 240, 241, 240, 239, 239, 240, 243, 244, 244, 241, 238, 238, 238, 32.28620 + 238, 241, 243, 246, 246, 245, 243, 239, 236, 236, 241, 242, 241, 239, 240, 240, 32.28621 + 239, 239, 236, 237, 240, 241, 243, 244, 245, 245, 242, 240, 241, 242, 243, 243, 32.28622 + 242, 242, 241, 241, 240, 240, 239, 238, 238, 238, 238, 241, 240, 237, 238, 242, 32.28623 + 246, 248, 243, 225, 225, 203, 187, 180, 168, 201, 244, 245, 251, 249, 243, 241, 32.28624 + 243, 246, 247, 243, 243, 254, 250, 242, 235, 97, 56, 53, 255, 36, 64, 239, 32.28625 + 245, 255, 216, 209, 255, 233, 235, 254, 118, 121, 148, 179, 192, 228, 228, 241, 32.28626 + 242, 237, 241, 242, 240, 244, 244, 243, 243, 244, 244, 245, 242, 241, 245, 242, 32.28627 + 241, 244, 244, 239, 234, 234, 236, 237, 239, 237, 238, 238, 240, 242, 245, 245, 32.28628 + 242, 240, 238, 237, 238, 242, 245, 248, 248, 246, 245, 241, 238, 239, 242, 245, 32.28629 + 244, 241, 240, 240, 238, 237, 235, 236, 239, 241, 243, 245, 246, 246, 243, 241, 32.28630 + 241, 242, 243, 243, 243, 242, 241, 241, 240, 240, 239, 238, 237, 237, 238, 239, 32.28631 + 238, 236, 240, 244, 245, 244, 245, 222, 225, 203, 189, 184, 170, 207, 239, 239, 32.28632 + 247, 239, 235, 239, 238, 242, 245, 246, 238, 255, 255, 250, 243, 116, 61, 55, 32.28633 + 255, 37, 49, 242, 250, 241, 251, 203, 255, 255, 226, 255, 127, 118, 151, 176, 32.28634 + 191, 217, 226, 240, 242, 237, 241, 243, 240, 243, 244, 242, 243, 244, 246, 245, 32.28635 + 243, 240, 245, 241, 238, 242, 244, 242, 238, 238, 239, 239, 240, 241, 239, 239, 32.28636 + 242, 246, 246, 245, 242, 241, 240, 237, 239, 240, 245, 246, 248, 246, 245, 242, 32.28637 + 239, 241, 246, 249, 247, 244, 241, 239, 237, 236, 241, 240, 242, 243, 245, 247, 32.28638 + 248, 246, 244, 241, 241, 241, 243, 243, 243, 242, 243, 241, 240, 239, 238, 238, 32.28639 + 237, 235, 240, 239, 237, 236, 241, 246, 243, 240, 244, 218, 223, 201, 191, 187, 32.28640 + 171, 211, 242, 239, 248, 240, 238, 244, 241, 242, 242, 239, 240, 254, 245, 249, 32.28641 + 255, 95, 67, 58, 255, 40, 36, 240, 246, 246, 240, 217, 255, 255, 237, 224, 32.28642 + 150, 120, 145, 159, 192, 214, 225, 237, 241, 239, 245, 246, 239, 242, 241, 239, 32.28643 + 241, 243, 246, 247, 246, 243, 242, 240, 240, 241, 240, 240, 239, 237, 238, 238, 32.28644 + 240, 240, 240, 240, 241, 241, 242, 242, 242, 242, 241, 241, 241, 242, 243, 245, 32.28645 + 244, 243, 241, 242, 242, 242, 242, 244, 242, 242, 241, 241, 240, 240, 240, 240, 32.28646 + 241, 241, 242, 242, 244, 242, 241, 241, 240, 239, 240, 240, 243, 243, 246, 241, 32.28647 + 236, 237, 236, 234, 235, 239, 241, 243, 241, 239, 238, 239, 244, 250, 238, 230, 32.28648 + 228, 183, 188, 180, 184, 218, 242, 253, 250, 246, 251, 243, 237, 253, 242, 239, 32.28649 + 229, 246, 255, 254, 249, 103, 66, 57, 255, 39, 51, 238, 255, 255, 245, 205, 32.28650 + 243, 243, 247, 213, 145, 123, 137, 173, 194, 220, 226, 238, 241, 238, 246, 245, 32.28651 + 241, 242, 240, 237, 238, 241, 243, 244, 244, 242, 239, 239, 240, 241, 240, 240, 32.28652 + 239, 239, 240, 240, 240, 240, 240, 240, 240, 240, 242, 242, 242, 242, 242, 242, 32.28653 + 242, 242, 242, 242, 241, 241, 241, 241, 242, 242, 241, 241, 241, 241, 241, 241, 32.28654 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 240, 241, 243, 32.28655 + 244, 245, 246, 242, 239, 238, 237, 234, 235, 240, 241, 242, 243, 240, 239, 238, 32.28656 + 243, 249, 241, 228, 225, 188, 193, 182, 188, 218, 233, 237, 242, 242, 245, 243, 32.28657 + 242, 251, 239, 232, 232, 251, 253, 252, 255, 108, 65, 56, 255, 41, 58, 226, 32.28658 + 250, 255, 236, 200, 242, 242, 255, 198, 149, 126, 126, 176, 188, 215, 228, 239, 32.28659 + 239, 238, 244, 244, 240, 241, 237, 237, 238, 240, 241, 241, 240, 238, 239, 238, 32.28660 + 239, 240, 241, 241, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 243, 243, 32.28661 + 243, 243, 243, 243, 243, 243, 243, 242, 242, 241, 241, 242, 242, 243, 241, 241, 32.28662 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.28663 + 241, 241, 242, 244, 245, 245, 246, 242, 239, 239, 238, 235, 236, 240, 242, 242, 32.28664 + 242, 239, 239, 241, 244, 249, 238, 221, 215, 188, 192, 178, 188, 217, 229, 225, 32.28665 + 235, 241, 238, 241, 247, 243, 235, 223, 236, 255, 247, 252, 255, 110, 65, 56, 32.28666 + 255, 40, 60, 231, 241, 253, 206, 211, 250, 255, 255, 175, 164, 125, 122, 169, 32.28667 + 183, 210, 230, 240, 240, 236, 244, 243, 238, 241, 238, 239, 240, 241, 240, 239, 32.28668 + 239, 237, 238, 237, 240, 240, 240, 241, 240, 240, 242, 241, 241, 241, 241, 241, 32.28669 + 241, 241, 243, 243, 243, 243, 243, 243, 243, 243, 243, 242, 241, 241, 241, 241, 32.28670 + 242, 243, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28671 + 241, 241, 240, 240, 241, 243, 245, 245, 245, 245, 245, 242, 240, 242, 240, 236, 32.28672 + 236, 241, 242, 242, 241, 239, 241, 242, 245, 249, 237, 217, 210, 188, 186, 168, 32.28673 + 196, 226, 236, 225, 237, 246, 236, 240, 248, 237, 235, 211, 236, 255, 245, 255, 32.28674 + 255, 105, 65, 56, 255, 40, 61, 249, 246, 255, 183, 225, 249, 255, 245, 161, 32.28675 + 186, 127, 128, 161, 193, 220, 230, 239, 240, 237, 244, 243, 237, 238, 238, 240, 32.28676 + 242, 240, 240, 238, 238, 237, 239, 237, 241, 240, 241, 241, 241, 240, 242, 242, 32.28677 + 242, 242, 241, 241, 241, 241, 242, 242, 242, 242, 242, 242, 242, 242, 239, 239, 32.28678 + 238, 237, 237, 238, 239, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28679 + 241, 241, 241, 241, 241, 241, 240, 240, 242, 243, 245, 244, 244, 243, 244, 240, 32.28680 + 239, 242, 240, 236, 236, 240, 244, 242, 239, 238, 241, 244, 246, 248, 238, 220, 32.28681 + 212, 190, 180, 168, 214, 242, 240, 227, 240, 249, 238, 240, 247, 235, 236, 206, 32.28682 + 235, 253, 244, 255, 254, 95, 66, 255, 255, 39, 52, 251, 249, 255, 193, 246, 32.28683 + 247, 253, 243, 182, 211, 144, 131, 156, 192, 220, 229, 238, 240, 239, 246, 245, 32.28684 + 238, 237, 236, 239, 242, 240, 239, 237, 238, 240, 239, 239, 241, 242, 243, 241, 32.28685 + 242, 241, 242, 241, 241, 241, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.28686 + 240, 240, 236, 235, 234, 234, 234, 234, 235, 236, 241, 241, 241, 241, 241, 241, 32.28687 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 242, 243, 243, 244, 242, 32.28688 + 241, 239, 241, 239, 239, 241, 240, 237, 236, 239, 244, 243, 239, 240, 243, 245, 32.28689 + 247, 249, 236, 221, 209, 186, 175, 169, 229, 247, 233, 229, 239, 245, 239, 240, 32.28690 + 243, 239, 231, 204, 234, 249, 247, 255, 237, 84, 64, 255, 255, 40, 48, 236, 32.28691 + 244, 241, 219, 253, 248, 249, 247, 220, 221, 166, 123, 158, 182, 215, 226, 237, 32.28692 + 242, 241, 248, 246, 238, 239, 235, 237, 241, 241, 237, 236, 238, 240, 240, 239, 32.28693 + 243, 242, 244, 243, 244, 242, 241, 241, 240, 240, 239, 239, 239, 239, 239, 239, 32.28694 + 239, 239, 239, 239, 239, 239, 238, 237, 237, 236, 236, 237, 237, 238, 241, 241, 32.28695 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 32.28696 + 243, 243, 243, 241, 239, 237, 241, 237, 238, 240, 239, 236, 235, 239, 245, 243, 32.28697 + 239, 240, 246, 247, 248, 249, 233, 219, 202, 180, 173, 176, 239, 242, 224, 231, 32.28698 + 238, 241, 243, 239, 237, 244, 224, 207, 239, 246, 248, 255, 220, 78, 62, 255, 32.28699 + 255, 40, 60, 227, 240, 225, 238, 247, 243, 245, 243, 237, 215, 177, 113, 167, 32.28700 + 180, 220, 224, 236, 242, 244, 250, 248, 240, 238, 234, 236, 240, 239, 237, 235, 32.28701 + 237, 241, 241, 242, 243, 244, 245, 244, 245, 244, 242, 240, 240, 239, 239, 238, 32.28702 + 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 243, 243, 242, 241, 241, 242, 32.28703 + 243, 243, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28704 + 241, 241, 242, 242, 244, 245, 243, 239, 237, 235, 240, 238, 237, 241, 240, 235, 32.28705 + 235, 238, 245, 243, 241, 242, 247, 250, 250, 251, 236, 223, 202, 181, 178, 188, 32.28706 + 249, 239, 222, 237, 241, 238, 245, 238, 231, 245, 218, 211, 241, 245, 248, 250, 32.28707 + 210, 76, 124, 255, 255, 40, 70, 218, 220, 198, 239, 251, 250, 246, 250, 240, 32.28708 + 218, 206, 113, 152, 169, 221, 225, 234, 244, 247, 248, 247, 243, 236, 241, 238, 32.28709 + 239, 242, 241, 236, 236, 239, 237, 239, 243, 245, 248, 247, 247, 244, 241, 239, 32.28710 + 239, 237, 237, 236, 235, 235, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 32.28711 + 242, 242, 242, 242, 242, 242, 240, 240, 240, 241, 241, 242, 242, 242, 241, 241, 32.28712 + 240, 239, 238, 238, 238, 238, 239, 241, 242, 240, 242, 244, 244, 240, 238, 239, 32.28713 + 239, 241, 241, 239, 239, 240, 247, 247, 243, 241, 245, 250, 249, 245, 241, 220, 32.28714 + 203, 162, 186, 212, 239, 248, 243, 240, 242, 242, 242, 241, 240, 240, 225, 223, 32.28715 + 237, 249, 255, 250, 128, 67, 255, 255, 255, 183, 59, 203, 220, 179, 243, 252, 32.28716 + 247, 250, 250, 255, 179, 235, 109, 134, 181, 199, 226, 234, 242, 244, 245, 246, 32.28717 + 244, 240, 240, 237, 239, 243, 241, 236, 235, 238, 240, 241, 244, 246, 248, 247, 32.28718 + 247, 246, 240, 240, 238, 239, 238, 237, 236, 235, 242, 242, 242, 242, 242, 242, 32.28719 + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 240, 240, 240, 241, 241, 242, 32.28720 + 242, 242, 240, 240, 239, 238, 238, 238, 239, 239, 240, 242, 243, 241, 243, 246, 32.28721 + 244, 239, 237, 239, 241, 242, 242, 242, 239, 240, 246, 247, 241, 239, 244, 248, 32.28722 + 249, 244, 236, 209, 204, 177, 168, 223, 245, 244, 244, 242, 241, 242, 242, 241, 32.28723 + 240, 241, 220, 225, 246, 255, 254, 250, 110, 63, 255, 255, 255, 255, 47, 171, 32.28724 + 229, 168, 248, 255, 250, 254, 252, 209, 226, 221, 157, 113, 176, 191, 226, 235, 32.28725 + 242, 243, 243, 246, 245, 242, 239, 237, 240, 241, 239, 233, 232, 235, 241, 241, 32.28726 + 244, 246, 248, 246, 245, 244, 237, 237, 238, 240, 240, 239, 237, 236, 242, 242, 32.28727 + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 240, 240, 32.28728 + 241, 241, 241, 241, 242, 242, 239, 239, 238, 238, 238, 239, 240, 240, 241, 243, 32.28729 + 245, 243, 244, 246, 243, 237, 234, 237, 241, 243, 244, 243, 239, 240, 247, 246, 32.28730 + 242, 238, 243, 249, 249, 245, 233, 200, 202, 180, 150, 235, 249, 245, 247, 244, 32.28731 + 242, 242, 241, 241, 241, 241, 219, 232, 251, 255, 247, 227, 93, 255, 255, 255, 32.28732 + 255, 255, 40, 130, 240, 187, 251, 255, 255, 248, 224, 179, 255, 214, 223, 107, 32.28733 + 159, 186, 221, 234, 244, 244, 243, 245, 246, 243, 241, 237, 240, 243, 241, 235, 32.28734 + 233, 236, 240, 242, 244, 244, 246, 246, 244, 243, 236, 236, 239, 241, 241, 241, 32.28735 + 238, 238, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 32.28736 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 238, 238, 238, 238, 239, 240, 32.28737 + 241, 241, 241, 244, 246, 244, 246, 246, 242, 235, 233, 237, 241, 246, 246, 244, 32.28738 + 241, 240, 249, 249, 244, 241, 245, 251, 251, 248, 234, 199, 195, 161, 159, 243, 32.28739 + 244, 244, 248, 246, 244, 242, 242, 241, 241, 242, 229, 241, 247, 250, 245, 173, 32.28740 + 87, 255, 255, 255, 255, 255, 43, 88, 232, 217, 246, 255, 255, 240, 198, 224, 32.28741 + 223, 250, 254, 144, 141, 176, 212, 230, 243, 247, 246, 247, 247, 243, 243, 240, 32.28742 + 243, 244, 242, 236, 235, 238, 241, 240, 242, 242, 243, 243, 242, 241, 234, 235, 32.28743 + 238, 240, 241, 241, 240, 239, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 32.28744 + 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 238, 238, 32.28745 + 238, 238, 239, 240, 241, 241, 241, 245, 245, 243, 244, 245, 242, 236, 235, 237, 32.28746 + 242, 246, 246, 244, 241, 239, 247, 246, 242, 239, 244, 249, 249, 245, 228, 203, 32.28747 + 190, 154, 205, 249, 232, 236, 245, 245, 244, 242, 242, 242, 241, 241, 234, 245, 32.28748 + 246, 248, 245, 118, 91, 255, 255, 255, 255, 255, 255, 60, 190, 228, 231, 246, 32.28749 + 253, 235, 229, 247, 221, 255, 255, 222, 115, 176, 202, 224, 241, 245, 244, 245, 32.28750 + 245, 243, 243, 240, 243, 246, 244, 239, 239, 241, 241, 240, 241, 241, 243, 242, 32.28751 + 242, 240, 236, 235, 239, 239, 241, 241, 241, 240, 242, 242, 242, 242, 242, 242, 32.28752 + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 32.28753 + 240, 240, 239, 239, 238, 238, 238, 239, 240, 240, 242, 243, 243, 239, 241, 244, 32.28754 + 243, 237, 237, 240, 243, 245, 245, 243, 240, 239, 242, 243, 238, 237, 242, 246, 32.28755 + 245, 239, 220, 205, 186, 177, 255, 255, 226, 226, 242, 243, 244, 245, 245, 242, 32.28756 + 240, 241, 232, 239, 250, 243, 218, 88, 255, 255, 255, 255, 255, 255, 255, 51, 32.28757 + 122, 203, 212, 232, 224, 240, 255, 231, 255, 245, 255, 255, 101, 171, 195, 218, 32.28758 + 234, 238, 238, 241, 243, 243, 241, 239, 241, 245, 245, 240, 242, 243, 240, 239, 32.28759 + 240, 239, 241, 240, 240, 239, 238, 236, 239, 238, 240, 240, 241, 241, 242, 242, 32.28760 + 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 32.28761 + 242, 241, 241, 240, 240, 240, 240, 240, 239, 238, 238, 238, 239, 239, 241, 242, 32.28762 + 240, 236, 238, 243, 243, 239, 240, 242, 243, 244, 243, 242, 239, 239, 238, 240, 32.28763 + 238, 237, 242, 245, 241, 235, 220, 200, 173, 215, 255, 255, 233, 224, 237, 240, 32.28764 + 243, 245, 246, 244, 242, 240, 227, 229, 253, 220, 155, 83, 255, 255, 255, 255, 32.28765 + 255, 255, 255, 255, 64, 171, 197, 223, 200, 249, 235, 239, 243, 255, 248, 249, 32.28766 + 113, 153, 192, 215, 228, 232, 232, 237, 244, 246, 241, 238, 241, 244, 244, 240, 32.28767 + 240, 242, 242, 242, 240, 240, 241, 242, 242, 240, 241, 240, 238, 239, 239, 239, 32.28768 + 241, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, 32.28769 + 242, 242, 243, 242, 242, 241, 241, 240, 240, 240, 241, 241, 240, 239, 239, 239, 32.28770 + 239, 241, 241, 241, 240, 235, 237, 242, 242, 239, 242, 242, 244, 245, 245, 243, 32.28771 + 241, 242, 238, 241, 241, 242, 247, 249, 244, 235, 225, 191, 155, 234, 255, 247, 32.28772 + 240, 227, 231, 237, 242, 246, 250, 248, 248, 247, 233, 227, 250, 193, 90, 138, 32.28773 + 255, 255, 255, 255, 255, 255, 255, 255, 64, 84, 167, 223, 204, 236, 209, 255, 32.28774 + 253, 255, 255, 254, 91, 151, 174, 219, 228, 233, 238, 237, 247, 242, 236, 236, 32.28775 + 240, 241, 242, 237, 233, 231, 244, 243, 242, 240, 240, 240, 239, 239, 239, 241, 32.28776 + 244, 244, 242, 238, 238, 239, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 32.28777 + 241, 241, 241, 241, 241, 242, 242, 242, 242, 241, 241, 240, 240, 240, 243, 243, 32.28778 + 242, 241, 241, 240, 239, 240, 246, 246, 242, 240, 239, 238, 239, 238, 242, 241, 32.28779 + 240, 241, 245, 244, 242, 241, 241, 244, 244, 245, 248, 251, 240, 225, 210, 180, 32.28780 + 147, 223, 255, 238, 249, 213, 223, 223, 224, 255, 230, 253, 255, 232, 230, 255, 32.28781 + 205, 100, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 119, 177, 32.28782 + 167, 245, 255, 255, 255, 255, 255, 232, 103, 145, 172, 213, 220, 222, 227, 229, 32.28783 + 243, 242, 242, 241, 241, 241, 239, 238, 235, 235, 243, 244, 243, 241, 241, 240, 32.28784 + 241, 239, 239, 241, 244, 245, 242, 238, 239, 239, 242, 242, 242, 242, 242, 242, 32.28785 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 32.28786 + 240, 240, 241, 240, 241, 240, 241, 239, 241, 240, 248, 247, 243, 241, 239, 238, 32.28787 + 238, 238, 240, 240, 241, 243, 245, 246, 243, 241, 239, 242, 243, 243, 246, 245, 32.28788 + 234, 217, 207, 175, 176, 239, 245, 255, 232, 218, 218, 237, 227, 213, 254, 254, 32.28789 + 253, 222, 255, 226, 135, 69, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28790 + 255, 68, 122, 185, 153, 246, 242, 246, 255, 255, 238, 155, 79, 107, 156, 199, 32.28791 + 208, 213, 221, 224, 238, 238, 246, 244, 242, 241, 240, 239, 238, 239, 242, 244, 32.28792 + 243, 242, 241, 240, 241, 240, 238, 239, 241, 243, 241, 238, 239, 239, 242, 242, 32.28793 + 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 32.28794 + 242, 241, 241, 240, 240, 240, 240, 239, 240, 239, 240, 239, 240, 240, 247, 246, 32.28795 + 242, 241, 239, 238, 238, 238, 240, 240, 240, 243, 244, 244, 240, 238, 241, 243, 32.28796 + 244, 245, 245, 243, 230, 216, 205, 172, 159, 238, 241, 254, 238, 249, 218, 249, 32.28797 + 213, 253, 227, 242, 227, 255, 221, 145, 74, 58, 255, 255, 255, 255, 255, 255, 32.28798 + 255, 255, 255, 255, 255, 182, 78, 163, 136, 242, 255, 255, 255, 248, 167, 95, 32.28799 + 134, 255, 132, 180, 197, 207, 218, 222, 236, 234, 244, 243, 243, 242, 241, 240, 32.28800 + 237, 237, 243, 243, 242, 242, 242, 243, 243, 241, 237, 237, 238, 240, 240, 239, 32.28801 + 239, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28802 + 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 240, 239, 240, 239, 241, 239, 32.28803 + 241, 242, 245, 245, 244, 241, 240, 238, 238, 237, 240, 239, 241, 242, 244, 242, 32.28804 + 238, 237, 239, 241, 242, 242, 243, 238, 226, 216, 199, 177, 110, 211, 255, 238, 32.28805 + 248, 255, 250, 235, 247, 255, 240, 223, 252, 248, 123, 81, 61, 255, 255, 255, 32.28806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 122, 113, 238, 233, 249, 32.28807 + 228, 202, 112, 90, 255, 255, 116, 166, 184, 198, 210, 215, 232, 234, 243, 245, 32.28808 + 247, 247, 245, 242, 237, 235, 242, 243, 242, 242, 242, 244, 244, 245, 239, 238, 32.28809 + 238, 239, 240, 239, 239, 238, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28810 + 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 241, 240, 32.28811 + 241, 240, 242, 241, 243, 244, 243, 243, 243, 240, 240, 239, 238, 237, 241, 241, 32.28812 + 242, 242, 243, 242, 238, 236, 237, 237, 236, 236, 235, 226, 215, 207, 196, 171, 32.28813 + 99, 151, 255, 250, 245, 248, 255, 248, 238, 249, 238, 242, 222, 143, 85, 64, 32.28814 + 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 32.28815 + 71, 194, 202, 230, 204, 158, 73, 255, 255, 255, 99, 150, 169, 182, 194, 204, 32.28816 + 227, 234, 243, 245, 248, 250, 248, 244, 237, 235, 240, 241, 241, 241, 243, 244, 32.28817 + 244, 245, 240, 238, 236, 237, 238, 238, 237, 235, 240, 240, 240, 240, 240, 240, 32.28818 + 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 32.28819 + 240, 240, 241, 240, 242, 241, 243, 242, 244, 245, 241, 243, 242, 242, 241, 238, 32.28820 + 237, 239, 241, 241, 240, 239, 241, 240, 240, 238, 242, 237, 236, 235, 229, 218, 32.28821 + 209, 203, 201, 144, 115, 80, 205, 255, 243, 255, 255, 255, 207, 251, 238, 224, 32.28822 + 126, 76, 83, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28823 + 255, 255, 255, 43, 76, 149, 197, 203, 173, 99, 116, 255, 255, 255, 69, 123, 32.28824 + 153, 174, 191, 202, 223, 229, 242, 244, 245, 246, 244, 240, 235, 235, 237, 239, 32.28825 + 239, 238, 240, 242, 242, 243, 241, 238, 235, 235, 237, 237, 235, 234, 240, 240, 32.28826 + 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 32.28827 + 242, 241, 241, 240, 240, 240, 239, 239, 240, 240, 242, 241, 244, 244, 240, 241, 32.28828 + 242, 242, 241, 240, 239, 239, 242, 240, 240, 239, 240, 241, 242, 242, 240, 237, 32.28829 + 233, 234, 229, 218, 210, 208, 196, 110, 121, 68, 128, 222, 227, 255, 255, 243, 32.28830 + 220, 240, 243, 140, 90, 80, 68, 47, 255, 255, 255, 255, 255, 255, 255, 255, 32.28831 + 255, 255, 255, 255, 255, 255, 255, 185, 51, 30, 50, 51, 64, 109, 255, 255, 32.28832 + 255, 255, 33, 97, 139, 172, 194, 203, 219, 220, 240, 242, 241, 239, 238, 236, 32.28833 + 234, 233, 235, 236, 236, 237, 238, 241, 243, 241, 242, 238, 235, 235, 236, 238, 32.28834 + 235, 232, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 32.28835 + 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 238, 237, 239, 238, 241, 240, 32.28836 + 243, 243, 239, 241, 242, 243, 242, 241, 240, 241, 242, 242, 239, 239, 240, 244, 32.28837 + 246, 247, 233, 228, 225, 227, 224, 216, 211, 213, 179, 91, 115, 115, 96, 154, 32.28838 + 194, 221, 230, 193, 172, 216, 142, 94, 69, 59, 56, 255, 255, 255, 255, 255, 32.28839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 40, 47, 47, 32.28840 + 116, 255, 255, 255, 255, 255, 51, 56, 116, 164, 193, 193, 215, 212, 235, 227, 32.28841 + 230, 241, 245, 237, 232, 234, 239, 239, 239, 240, 241, 241, 241, 240, 239, 239, 32.28842 + 239, 238, 237, 235, 235, 237, 237, 238, 238, 239, 239, 240, 240, 240, 241, 241, 32.28843 + 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 240, 239, 32.28844 + 240, 237, 238, 235, 236, 236, 243, 242, 241, 241, 241, 242, 239, 237, 247, 234, 32.28845 + 234, 247, 250, 239, 236, 246, 243, 223, 242, 233, 224, 215, 233, 208, 149, 152, 32.28846 + 112, 102, 106, 85, 160, 173, 192, 178, 148, 112, 85, 69, 60, 56, 118, 255, 32.28847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 46, 97, 139, 175, 180, 32.28849 + 205, 204, 224, 228, 233, 236, 240, 240, 238, 233, 237, 235, 236, 237, 238, 240, 32.28850 + 241, 239, 239, 239, 239, 239, 238, 237, 239, 239, 238, 239, 239, 239, 240, 240, 32.28851 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 32.28852 + 240, 240, 240, 239, 240, 238, 240, 238, 240, 241, 243, 242, 240, 240, 242, 242, 32.28853 + 240, 240, 243, 242, 243, 246, 247, 245, 243, 242, 238, 220, 236, 226, 221, 212, 32.28854 + 216, 181, 125, 124, 125, 96, 88, 71, 100, 118, 122, 116, 97, 78, 61, 53, 32.28855 + 47, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 43, 32.28857 + 79, 117, 161, 173, 200, 202, 210, 226, 232, 229, 233, 242, 243, 233, 236, 236, 32.28858 + 237, 239, 239, 241, 241, 241, 239, 239, 239, 239, 239, 239, 241, 241, 240, 240, 32.28859 + 240, 241, 241, 241, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 32.28860 + 242, 241, 241, 240, 240, 240, 239, 239, 240, 240, 242, 241, 244, 245, 245, 244, 32.28861 + 241, 240, 241, 242, 242, 243, 241, 247, 248, 243, 244, 247, 243, 236, 240, 227, 32.28862 + 236, 227, 224, 216, 202, 152, 111, 105, 140, 90, 68, 66, 52, 73, 65, 64, 32.28863 + 58, 53, 48, 44, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28865 + 255, 255, 255, 42, 66, 97, 152, 172, 197, 203, 203, 217, 226, 227, 230, 238, 32.28866 + 243, 240, 243, 240, 242, 243, 243, 244, 243, 243, 240, 239, 239, 239, 240, 240, 32.28867 + 243, 244, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 32.28868 + 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 239, 239, 240, 239, 242, 241, 32.28869 + 243, 244, 245, 244, 240, 238, 240, 242, 245, 245, 243, 248, 249, 247, 246, 243, 32.28870 + 238, 235, 244, 237, 237, 232, 229, 220, 185, 128, 111, 104, 127, 78, 53, 63, 32.28871 + 43, 59, 48, 49, 49, 49, 45, 113, 255, 255, 255, 255, 255, 255, 255, 255, 32.28872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28873 + 255, 255, 255, 255, 255, 255, 255, 35, 51, 78, 139, 162, 188, 198, 205, 208, 32.28874 + 218, 228, 234, 233, 241, 246, 246, 243, 245, 246, 246, 244, 243, 241, 241, 240, 32.28875 + 241, 240, 239, 239, 243, 244, 243, 243, 243, 242, 242, 242, 242, 242, 241, 241, 32.28876 + 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 240, 240, 239, 239, 32.28877 + 240, 238, 239, 238, 240, 240, 244, 243, 239, 238, 240, 242, 246, 247, 248, 242, 32.28878 + 243, 250, 248, 236, 233, 240, 242, 239, 233, 231, 222, 208, 161, 107, 105, 104, 32.28879 + 92, 64, 44, 51, 48, 48, 43, 44, 43, 255, 255, 255, 255, 255, 255, 255, 32.28880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 46, 65, 128, 152, 32.28882 + 180, 197, 206, 204, 211, 226, 234, 231, 239, 247, 244, 240, 242, 244, 245, 243, 32.28883 + 242, 239, 242, 241, 241, 239, 238, 238, 243, 243, 244, 243, 243, 242, 242, 242, 32.28884 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 242, 241, 241, 240, 32.28885 + 240, 240, 238, 237, 238, 237, 238, 236, 238, 238, 242, 242, 239, 239, 241, 244, 32.28886 + 245, 247, 247, 238, 240, 250, 247, 233, 231, 245, 239, 242, 231, 234, 217, 196, 32.28887 + 142, 103, 99, 100, 66, 60, 45, 46, 47, 35, 109, 255, 255, 255, 255, 255, 32.28888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 32.28890 + 47, 60, 119, 142, 174, 198, 202, 205, 210, 219, 229, 236, 241, 240, 240, 236, 32.28891 + 238, 242, 244, 243, 243, 240, 243, 241, 240, 238, 236, 236, 241, 242, 244, 242, 32.28892 + 242, 242, 241, 241, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 244, 244, 32.28893 + 242, 241, 241, 240, 240, 240, 236, 235, 237, 236, 238, 237, 239, 240, 240, 241, 32.28894 + 240, 240, 243, 245, 245, 246, 241, 239, 241, 243, 241, 234, 236, 245, 239, 246, 32.28895 + 234, 239, 213, 183, 129, 107, 96, 92, 58, 63, 46, 255, 255, 255, 255, 255, 32.28896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28898 + 255, 255, 255, 41, 46, 52, 108, 131, 166, 195, 199, 209, 213, 213, 223, 238, 32.28899 + 243, 230, 238, 235, 240, 243, 245, 245, 245, 244, 242, 240, 240, 237, 235, 237, 32.28900 + 239, 242, 243, 242, 242, 241, 241, 240, 240, 239, 241, 241, 241, 241, 241, 241, 32.28901 + 241, 241, 242, 242, 242, 241, 241, 240, 241, 241, 235, 236, 238, 238, 239, 241, 32.28902 + 242, 243, 238, 238, 239, 240, 243, 245, 244, 246, 235, 243, 243, 237, 234, 239, 32.28903 + 243, 244, 236, 244, 233, 243, 209, 171, 114, 103, 89, 75, 51, 57, 255, 255, 32.28904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28906 + 255, 255, 255, 255, 255, 255, 255, 33, 40, 50, 99, 121, 162, 191, 211, 210, 32.28907 + 225, 229, 220, 231, 244, 233, 237, 238, 241, 244, 245, 245, 247, 248, 240, 239, 32.28908 + 239, 240, 240, 241, 243, 241, 239, 239, 240, 242, 242, 241, 240, 239, 241, 241, 32.28909 + 241, 241, 241, 241, 241, 241, 239, 239, 240, 242, 242, 240, 240, 241, 237, 237, 32.28910 + 238, 237, 239, 241, 242, 243, 242, 243, 244, 244, 243, 241, 242, 241, 238, 246, 32.28911 + 251, 247, 238, 233, 239, 248, 234, 249, 241, 243, 203, 163, 96, 74, 56, 50, 32.28912 + 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 35, 42, 91, 115, 32.28915 + 158, 189, 215, 221, 231, 231, 227, 234, 244, 239, 238, 239, 244, 247, 245, 245, 32.28916 + 246, 245, 240, 238, 239, 239, 241, 243, 243, 243, 238, 238, 240, 241, 242, 241, 32.28917 + 241, 240, 241, 241, 241, 241, 241, 241, 241, 241, 238, 237, 240, 240, 241, 239, 32.28918 + 241, 240, 238, 239, 239, 238, 239, 240, 244, 242, 246, 243, 242, 241, 241, 241, 32.28919 + 244, 246, 244, 245, 244, 241, 239, 238, 241, 243, 235, 245, 236, 234, 196, 150, 32.28920 + 89, 74, 47, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 32.28923 + 33, 37, 86, 110, 156, 187, 211, 227, 231, 227, 231, 233, 234, 238, 236, 238, 32.28924 + 243, 246, 246, 245, 242, 241, 241, 239, 239, 239, 241, 242, 243, 243, 237, 237, 32.28925 + 239, 241, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 238, 238, 32.28926 + 238, 239, 239, 238, 240, 240, 238, 239, 240, 239, 240, 240, 241, 241, 244, 240, 32.28927 + 236, 233, 233, 235, 242, 245, 248, 241, 236, 234, 239, 242, 240, 239, 244, 245, 32.28928 + 235, 229, 190, 139, 88, 84, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28931 + 255, 255, 255, 29, 34, 36, 83, 108, 153, 183, 206, 231, 234, 229, 236, 231, 32.28932 + 224, 232, 230, 233, 240, 245, 246, 245, 243, 241, 241, 239, 239, 238, 239, 241, 32.28933 + 242, 242, 236, 236, 239, 241, 242, 243, 242, 242, 241, 241, 241, 241, 241, 241, 32.28934 + 241, 241, 238, 238, 238, 237, 238, 237, 238, 239, 238, 238, 240, 240, 241, 241, 32.28935 + 241, 240, 240, 237, 235, 232, 233, 234, 240, 243, 246, 240, 234, 235, 242, 244, 32.28936 + 240, 237, 245, 243, 236, 225, 185, 125, 80, 80, 113, 255, 255, 255, 255, 255, 32.28937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28939 + 255, 255, 255, 255, 255, 255, 255, 30, 37, 37, 83, 108, 152, 180, 206, 235, 32.28940 + 242, 239, 244, 235, 224, 229, 224, 228, 237, 242, 245, 246, 244, 243, 240, 238, 32.28941 + 238, 238, 238, 240, 241, 240, 236, 236, 239, 241, 242, 243, 242, 242, 241, 241, 32.28942 + 241, 241, 241, 241, 241, 241, 238, 238, 237, 237, 237, 237, 238, 240, 239, 239, 32.28943 + 241, 241, 242, 241, 240, 240, 241, 240, 241, 240, 239, 240, 242, 244, 239, 239, 32.28944 + 239, 242, 246, 244, 240, 237, 238, 235, 234, 218, 180, 108, 64, 62, 255, 255, 32.28945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 39, 36, 80, 107, 32.28948 + 152, 180, 204, 229, 244, 245, 243, 236, 228, 227, 224, 228, 235, 242, 245, 246, 32.28949 + 246, 246, 241, 238, 237, 237, 239, 240, 241, 240, 237, 237, 239, 241, 242, 242, 32.28950 + 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 238, 237, 237, 238, 32.28951 + 239, 239, 240, 241, 244, 244, 243, 243, 241, 241, 238, 239, 241, 243, 242, 241, 32.28952 + 240, 242, 236, 240, 243, 246, 247, 243, 241, 240, 237, 236, 238, 212, 178, 104, 32.28953 + 60, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 32.28956 + 37, 30, 73, 103, 152, 182, 203, 221, 243, 248, 239, 237, 240, 232, 231, 233, 32.28957 + 238, 243, 245, 247, 248, 247, 243, 241, 239, 240, 241, 241, 242, 240, 238, 238, 32.28958 + 240, 241, 242, 241, 241, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 32.28959 + 240, 238, 238, 238, 240, 241, 242, 242, 244, 244, 243, 243, 242, 241, 235, 236, 32.28960 + 239, 240, 239, 239, 238, 239, 238, 241, 243, 247, 247, 246, 242, 241, 242, 242, 32.28961 + 239, 204, 175, 105, 67, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28964 + 255, 255, 255, 255, 35, 25, 67, 100, 153, 184, 208, 219, 246, 254, 239, 243, 32.28965 + 255, 244, 237, 238, 242, 245, 246, 247, 248, 248, 245, 243, 242, 242, 242, 243, 32.28966 + 244, 242, 239, 239, 240, 242, 242, 241, 240, 239, 241, 241, 241, 241, 241, 241, 32.28967 + 241, 241, 242, 241, 240, 239, 238, 239, 241, 242, 243, 244, 244, 245, 244, 243, 32.28968 + 240, 241, 239, 239, 240, 241, 241, 240, 240, 241, 243, 242, 241, 242, 248, 248, 32.28969 + 244, 243, 242, 241, 235, 191, 165, 102, 69, 48, 255, 255, 255, 255, 255, 255, 32.28970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28972 + 255, 255, 255, 255, 255, 255, 255, 255, 33, 42, 57, 96, 161, 184, 223, 225, 32.28973 + 241, 254, 247, 242, 243, 239, 244, 245, 243, 238, 235, 241, 245, 244, 242, 243, 32.28974 + 244, 246, 247, 248, 248, 246, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28975 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 241, 242, 32.28976 + 242, 244, 244, 243, 242, 242, 242, 241, 241, 241, 240, 239, 240, 241, 236, 236, 32.28977 + 240, 243, 247, 245, 239, 237, 243, 238, 230, 207, 170, 94, 72, 55, 255, 255, 32.28978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 39, 52, 91, 32.28981 + 160, 187, 217, 221, 238, 251, 245, 239, 240, 232, 242, 242, 245, 243, 240, 244, 32.28982 + 244, 241, 242, 241, 243, 244, 247, 247, 248, 245, 242, 241, 241, 241, 241, 241, 32.28983 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28984 + 242, 242, 241, 242, 242, 242, 242, 241, 242, 241, 238, 239, 240, 240, 241, 241, 32.28985 + 243, 244, 236, 237, 239, 243, 245, 244, 237, 235, 241, 235, 225, 199, 163, 87, 32.28986 + 67, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28989 + 34, 39, 47, 83, 155, 188, 218, 223, 240, 252, 246, 242, 243, 234, 240, 243, 32.28990 + 248, 246, 245, 246, 242, 238, 242, 241, 242, 244, 246, 245, 245, 244, 242, 241, 32.28991 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.28992 + 241, 241, 241, 241, 241, 241, 240, 241, 241, 241, 241, 240, 240, 239, 239, 241, 32.28993 + 241, 241, 242, 242, 245, 245, 240, 239, 240, 242, 244, 242, 236, 235, 241, 234, 32.28994 + 222, 194, 157, 82, 64, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.28997 + 255, 255, 255, 255, 40, 45, 48, 79, 150, 186, 221, 226, 241, 250, 244, 243, 32.28998 + 246, 236, 239, 244, 249, 247, 245, 246, 242, 238, 241, 240, 242, 244, 244, 245, 32.28999 + 245, 244, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29000 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 241, 241, 241, 241, 240, 32.29001 + 239, 239, 243, 244, 243, 241, 241, 240, 240, 240, 242, 242, 241, 244, 245, 242, 32.29002 + 235, 234, 246, 238, 223, 194, 155, 82, 65, 50, 255, 255, 255, 255, 255, 255, 32.29003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29005 + 255, 255, 255, 255, 255, 255, 255, 255, 42, 50, 53, 80, 151, 188, 221, 226, 32.29006 + 238, 242, 236, 238, 244, 235, 242, 245, 247, 243, 240, 242, 242, 239, 240, 240, 32.29007 + 242, 243, 243, 244, 245, 243, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29008 + 241, 241, 241, 241, 241, 241, 242, 242, 241, 241, 241, 241, 241, 241, 240, 241, 32.29009 + 240, 240, 240, 239, 238, 239, 242, 244, 242, 240, 240, 239, 239, 239, 244, 244, 32.29010 + 242, 243, 245, 243, 236, 236, 246, 239, 224, 195, 156, 82, 65, 119, 255, 255, 32.29011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 32.29014 + 221, 233, 245, 247, 251, 251, 245, 245, 249, 242, 246, 247, 247, 239, 236, 239, 32.29015 + 240, 239, 240, 238, 241, 243, 243, 244, 244, 243, 242, 241, 241, 241, 241, 241, 32.29016 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 241, 241, 241, 241, 32.29017 + 241, 241, 240, 241, 240, 240, 240, 239, 238, 238, 238, 240, 240, 239, 241, 240, 32.29018 + 240, 242, 244, 243, 243, 243, 244, 243, 237, 239, 243, 238, 224, 195, 158, 83, 32.29019 + 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29023 + 255, 255, 255, 255, 255, 255, 255, 255, 250, 251, 251, 251, 251, 251, 249, 246, 32.29024 + 246, 246, 246, 246, 246, 244, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 32.29025 + 241, 241, 241, 241, 241, 241, 239, 240, 240, 240, 240, 239, 236, 238, 239, 242, 32.29026 + 241, 240, 242, 241, 242, 243, 244, 241, 240, 242, 243, 242, 237, 239, 240, 237, 32.29027 + 226, 198, 162, 85, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29033 + 252, 250, 251, 251, 250, 250, 250, 247, 246, 246, 244, 245, 245, 245, 240, 239, 32.29034 + 236, 238, 244, 246, 245, 242, 243, 241, 240, 239, 243, 241, 240, 240, 243, 242, 32.29035 + 238, 240, 240, 238, 229, 202, 166, 144, 255, 255, 255, 255, 255, 255, 255, 255, 32.29036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29041 + 255, 255, 255, 255, 255, 255, 255, 182, 35, 35, 33, 34, 33, 34, 33, 33, 32.29042 + 31, 31, 31, 35, 36, 39, 38, 38, 255, 255, 255, 255, 255, 255, 255, 255, 32.29043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29049 + 255, 255, 255, 255, 255, 255, 35, 27, 28, 35, 37, 31, 37, 40, 34, 42, 32.29050 + 42, 24, 39, 30, 38, 25, 29, 42, 29, 32, 28, 38, 34, 41, 35, 23, 32.29051 + 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29057 + 255, 255, 255, 255, 30, 41, 37, 38, 34, 29, 28, 33, 35, 34, 27, 42, 32.29058 + 36, 2, 36, 42, 50, 42, 45, 28, 31, 28, 25, 131, 34, 25, 35, 43, 32.29059 + 34, 35, 32, 27, 35, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29065 + 255, 255, 255, 255, 183, 26, 34, 40, 45, 35, 27, 33, 31, 25, 29, 40, 32.29066 + 39, 29, 28, 28, 53, 29, 52, 51, 69, 36, 26, 63, 29, 75, 25, 62, 32.29067 + 36, 42, 28, 33, 23, 28, 33, 34, 42, 31, 34, 36, 255, 255, 255, 255, 32.29068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29073 + 255, 255, 180, 39, 17, 27, 39, 37, 35, 13, 38, 50, 49, 16, 23, 28, 32.29074 + 33, 38, 46, 49, 40, 29, 34, 25, 23, 64, 121, 46, 18, 89, 71, 47, 32.29075 + 57, 54, 44, 56, 22, 43, 30, 28, 19, 37, 43, 32, 38, 34, 35, 35, 32.29076 + 34, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29081 + 255, 255, 255, 180, 32, 22, 38, 48, 23, 34, 54, 27, 29, 33, 57, 40, 32.29082 + 39, 31, 42, 34, 37, 53, 59, 51, 42, 43, 13, 42, 46, 44, 40, 85, 32.29083 + 84, 62, 77, 58, 72, 37, 64, 81, 61, 40, 57, 44, 35, 59, 57, 24, 32.29084 + 24, 31, 36, 36, 34, 34, 34, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29089 + 255, 255, 255, 255, 180, 38, 25, 41, 46, 32, 32, 31, 36, 75, 46, 42, 32.29090 + 48, 46, 50, 42, 45, 46, 60, 40, 33, 46, 47, 36, 36, 50, 28, 65, 32.29091 + 32, 40, 52, 72, 43, 76, 39, 70, 55, 74, 62, 42, 68, 59, 75, 60, 32.29092 + 51, 73, 68, 32, 29, 36, 31, 31, 30, 31, 34, 37, 37, 255, 255, 255, 32.29093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29097 + 255, 255, 255, 255, 179, 27, 38, 29, 30, 64, 22, 58, 57, 46, 35, 16, 32.29098 + 38, 81, 30, 47, 44, 34, 24, 43, 44, 40, 51, 36, 27, 29, 28, 23, 32.29099 + 28, 41, 44, 55, 56, 63, 37, 64, 59, 41, 61, 32, 49, 63, 54, 58, 32.29100 + 27, 64, 74, 65, 51, 67, 69, 51, 50, 44, 35, 32, 31, 31, 33, 34, 32.29101 + 33, 33, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29105 + 255, 255, 255, 255, 255, 181, 30, 40, 24, 26, 46, 31, 31, 80, 42, 66, 32.29106 + 39, 45, 56, 30, 29, 39, 58, 44, 27, 46, 38, 47, 41, 55, 33, 31, 32.29107 + 27, 23, 21, 24, 30, 35, 45, 44, 47, 53, 51, 51, 52, 56, 50, 62, 32.29108 + 48, 51, 53, 43, 67, 60, 72, 71, 50, 54, 61, 62, 60, 39, 47, 43, 32.29109 + 39, 37, 36, 36, 32, 29, 34, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.29110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29113 + 255, 255, 255, 255, 255, 255, 255, 183, 29, 35, 27, 63, 76, 52, 34, 73, 32.29114 + 50, 46, 57, 55, 54, 71, 47, 52, 42, 42, 55, 41, 50, 43, 37, 49, 32.29115 + 49, 55, 51, 57, 52, 50, 47, 45, 89, 38, 53, 72, 54, 38, 56, 56, 32.29116 + 44, 52, 46, 53, 62, 60, 55, 68, 71, 57, 75, 39, 50, 59, 74, 73, 32.29117 + 82, 51, 66, 46, 32, 33, 34, 28, 31, 39, 28, 37, 41, 255, 255, 255, 32.29118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 38, 27, 37, 35, 32, 27, 32.29122 + 59, 48, 33, 46, 45, 33, 62, 53, 57, 56, 48, 43, 50, 47, 64, 51, 32.29123 + 59, 49, 38, 46, 46, 50, 18, 49, 33, 35, 63, 35, 51, 47, 47, 66, 32.29124 + 55, 44, 55, 52, 46, 64, 60, 62, 66, 59, 51, 58, 59, 44, 41, 69, 32.29125 + 41, 48, 38, 65, 59, 100, 44, 60, 64, 49, 37, 36, 32, 25, 46, 34, 32.29126 + 31, 34, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 44, 31, 38, 50, 32.29130 + 23, 39, 68, 27, 71, 81, 77, 68, 85, 70, 68, 51, 59, 46, 52, 39, 32.29131 + 60, 57, 66, 53, 61, 50, 37, 44, 43, 47, 54, 47, 54, 72, 68, 34, 32.29132 + 63, 49, 43, 60, 56, 51, 57, 50, 51, 76, 60, 58, 60, 57, 50, 57, 32.29133 + 59, 48, 32, 60, 60, 50, 80, 88, 80, 82, 60, 69, 72, 67, 65, 62, 32.29134 + 45, 23, 43, 32, 39, 45, 31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 26, 40, 32.29138 + 6, 27, 46, 34, 48, 27, 57, 23, 45, 68, 74, 58, 64, 60, 65, 51, 32.29139 + 58, 51, 52, 46, 61, 60, 59, 44, 52, 45, 40, 51, 47, 47, 89, 59, 32.29140 + 72, 87, 69, 45, 78, 56, 45, 53, 53, 56, 60, 51, 54, 78, 61, 52, 32.29141 + 54, 55, 53, 62, 67, 59, 76, 51, 65, 56, 88, 108, 120, 63, 80, 67, 32.29142 + 64, 76, 79, 67, 54, 52, 37, 28, 41, 47, 27, 25, 255, 255, 255, 255, 32.29143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29146 + 34, 33, 38, 23, 41, 26, 40, 62, 38, 61, 56, 61, 46, 67, 78, 68, 32.29147 + 45, 56, 56, 52, 52, 65, 50, 56, 56, 58, 61, 42, 48, 48, 50, 62, 32.29148 + 55, 49, 54, 61, 52, 45, 73, 55, 56, 56, 48, 48, 46, 53, 57, 52, 32.29149 + 53, 67, 75, 59, 55, 59, 58, 62, 64, 58, 62, 63, 64, 91, 72, 106, 32.29150 + 88, 52, 62, 65, 72, 74, 59, 44, 52, 73, 54, 36, 33, 38, 35, 39, 32.29151 + 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29154 + 255, 255, 255, 34, 35, 35, 34, 62, 44, 47, 41, 24, 54, 61, 34, 71, 32.29155 + 39, 56, 71, 68, 39, 53, 50, 51, 49, 71, 49, 61, 52, 55, 69, 51, 32.29156 + 59, 60, 61, 71, 58, 48, 42, 41, 50, 43, 61, 59, 59, 38, 49, 43, 32.29157 + 42, 47, 51, 52, 54, 54, 82, 63, 56, 64, 65, 66, 67, 62, 42, 70, 32.29158 + 72, 86, 101, 87, 48, 46, 57, 70, 73, 60, 51, 54, 57, 56, 61, 62, 32.29159 + 50, 38, 36, 37, 36, 35, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29162 + 255, 255, 255, 255, 255, 181, 34, 35, 36, 36, 34, 39, 55, 35, 26, 30, 32.29163 + 26, 56, 36, 67, 53, 63, 74, 64, 57, 56, 52, 48, 53, 61, 51, 53, 32.29164 + 55, 56, 69, 57, 70, 68, 63, 66, 53, 45, 60, 30, 61, 59, 48, 55, 32.29165 + 72, 33, 48, 46, 47, 49, 49, 57, 60, 52, 84, 62, 55, 66, 70, 70, 32.29166 + 70, 66, 84, 72, 70, 56, 99, 62, 63, 79, 74, 72, 63, 56, 62, 72, 32.29167 + 64, 49, 58, 83, 67, 35, 33, 31, 28, 43, 33, 255, 255, 255, 255, 255, 32.29168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29170 + 255, 255, 255, 255, 255, 255, 255, 255, 31, 33, 34, 36, 36, 37, 38, 49, 32.29171 + 44, 48, 59, 61, 69, 76, 48, 58, 64, 63, 67, 39, 57, 35, 58, 44, 32.29172 + 56, 48, 54, 43, 61, 57, 61, 54, 71, 68, 56, 57, 44, 41, 47, 42, 32.29173 + 47, 34, 53, 46, 47, 54, 49, 50, 55, 54, 50, 61, 67, 56, 91, 65, 32.29174 + 58, 69, 71, 68, 65, 60, 89, 61, 67, 104, 71, 66, 74, 93, 81, 67, 32.29175 + 61, 65, 64, 58, 60, 71, 64, 87, 54, 19, 39, 45, 28, 35, 31, 33, 32.29176 + 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 33, 30, 27, 30, 32.29179 + 37, 43, 34, 45, 21, 43, 75, 27, 55, 61, 44, 58, 55, 72, 57, 51, 32.29180 + 37, 57, 39, 48, 51, 45, 48, 58, 59, 53, 41, 49, 56, 55, 48, 42, 32.29181 + 44, 49, 38, 45, 50, 52, 48, 47, 49, 54, 54, 47, 47, 56, 62, 59, 32.29182 + 52, 49, 80, 70, 56, 53, 58, 66, 68, 67, 80, 65, 95, 85, 69, 97, 32.29183 + 102, 100, 74, 58, 68, 72, 91, 64, 47, 27, 102, 62, 70, 91, 55, 27, 32.29184 + 34, 39, 39, 36, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 31, 32.29187 + 32, 34, 34, 34, 32, 30, 53, 54, 68, 15, 46, 49, 19, 71, 72, 63, 32.29188 + 48, 40, 52, 54, 57, 68, 38, 41, 50, 56, 57, 53, 53, 53, 42, 50, 32.29189 + 57, 57, 51, 47, 52, 57, 59, 64, 73, 81, 88, 95, 99, 101, 102, 92, 32.29190 + 86, 85, 81, 72, 64, 63, 70, 63, 58, 57, 62, 71, 77, 81, 58, 101, 32.29191 + 88, 65, 84, 99, 88, 71, 78, 78, 88, 82, 71, 55, 78, 107, 37, 98, 32.29192 + 91, 37, 25, 37, 32, 28, 35, 34, 34, 34, 255, 255, 255, 255, 255, 255, 32.29193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29195 + 255, 182, 32, 29, 30, 33, 38, 39, 34, 28, 39, 52, 67, 72, 70, 51, 32.29196 + 55, 32, 49, 66, 84, 60, 63, 38, 48, 55, 62, 57, 58, 63, 55, 41, 32.29197 + 42, 51, 61, 73, 89, 101, 112, 126, 142, 155, 135, 136, 139, 148, 157, 163, 32.29198 + 164, 163, 178, 175, 172, 174, 176, 178, 182, 187, 146, 140, 129, 111, 92, 74, 32.29199 + 61, 55, 61, 92, 65, 69, 83, 65, 79, 89, 80, 84, 76, 70, 59, 68, 32.29200 + 72, 78, 113, 96, 79, 67, 48, 28, 29, 46, 35, 37, 38, 37, 37, 255, 32.29201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29203 + 255, 255, 255, 255, 181, 35, 36, 32, 29, 30, 34, 38, 41, 41, 48, 39, 32.29204 + 35, 21, 60, 55, 16, 65, 58, 61, 58, 46, 70, 72, 71, 63, 71, 61, 32.29205 + 51, 48, 52, 70, 103, 132, 143, 147, 149, 146, 141, 140, 145, 151, 170, 172, 32.29206 + 173, 175, 178, 179, 178, 178, 185, 185, 185, 184, 182, 183, 188, 193, 187, 185, 32.29207 + 181, 170, 153, 129, 106, 93, 74, 57, 65, 97, 81, 65, 84, 76, 53, 92, 32.29208 + 94, 83, 57, 84, 82, 78, 42, 72, 54, 49, 88, 77, 44, 58, 34, 37, 32.29209 + 37, 36, 35, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29211 + 255, 255, 255, 255, 255, 255, 255, 255, 33, 32, 35, 35, 33, 31, 30, 33, 32.29212 + 40, 44, 65, 42, 57, 82, 64, 60, 61, 53, 58, 73, 61, 54, 46, 55, 32.29213 + 46, 50, 34, 65, 99, 121, 131, 134, 130, 122, 131, 137, 141, 143, 144, 149, 32.29214 + 157, 165, 158, 163, 170, 170, 170, 171, 174, 180, 180, 183, 184, 180, 174, 171, 32.29215 + 173, 175, 174, 174, 175, 182, 186, 181, 168, 158, 134, 98, 94, 70, 54, 80, 32.29216 + 82, 66, 107, 96, 66, 73, 80, 111, 84, 57, 57, 50, 76, 71, 38, 64, 32.29217 + 84, 37, 35, 37, 35, 33, 30, 30, 255, 255, 255, 255, 255, 255, 255, 255, 32.29218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 32, 31, 32, 36, 32.29220 + 38, 36, 32, 32, 34, 38, 24, 87, 33, 52, 51, 30, 70, 63, 78, 119, 32.29221 + 122, 114, 65, 58, 58, 90, 114, 126, 130, 121, 118, 128, 134, 131, 142, 145, 32.29222 + 147, 147, 146, 149, 155, 161, 160, 168, 175, 177, 174, 177, 184, 190, 169, 176, 32.29223 + 180, 178, 176, 177, 177, 177, 183, 175, 168, 169, 175, 177, 173, 166, 174, 164, 32.29224 + 143, 86, 71, 66, 46, 87, 90, 83, 82, 97, 82, 69, 70, 94, 95, 72, 32.29225 + 68, 87, 92, 79, 81, 98, 49, 45, 38, 34, 33, 34, 35, 255, 255, 255, 32.29226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 33, 32.29228 + 33, 32, 36, 35, 34, 34, 34, 38, 42, 44, 26, 27, 75, 79, 50, 85, 32.29229 + 62, 58, 88, 85, 71, 71, 80, 93, 102, 120, 133, 135, 135, 132, 131, 136, 32.29230 + 140, 143, 147, 149, 152, 153, 155, 157, 162, 165, 170, 172, 176, 177, 178, 179, 32.29231 + 183, 186, 189, 192, 191, 185, 179, 178, 174, 168, 181, 175, 167, 163, 165, 167, 32.29232 + 165, 162, 149, 166, 171, 162, 141, 90, 59, 87, 71, 58, 67, 90, 111, 102, 32.29233 + 104, 110, 107, 98, 108, 105, 85, 82, 69, 30, 59, 50, 40, 35, 37, 39, 32.29234 + 38, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29236 + 255, 255, 32, 32, 34, 36, 43, 36, 27, 26, 35, 46, 56, 61, 62, 44, 32.29237 + 30, 47, 45, 69, 63, 78, 93, 86, 95, 99, 132, 119, 121, 124, 135, 132, 32.29238 + 138, 153, 158, 153, 152, 160, 171, 173, 174, 173, 171, 171, 172, 173, 181, 180, 32.29239 + 180, 183, 187, 190, 192, 192, 187, 191, 189, 183, 181, 184, 182, 176, 176, 174, 32.29240 + 174, 171, 165, 161, 157, 155, 154, 156, 148, 157, 147, 146, 151, 91, 70, 77, 32.29241 + 88, 67, 81, 84, 99, 87, 79, 114, 95, 51, 50, 57, 61, 84, 59, 46, 32.29242 + 32, 27, 30, 34, 33, 31, 38, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29244 + 255, 255, 255, 255, 255, 181, 34, 31, 30, 32, 23, 27, 26, 44, 32, 82, 32.29245 + 49, 60, 57, 49, 123, 97, 115, 122, 78, 39, 77, 87, 123, 136, 112, 107, 32.29246 + 130, 143, 152, 156, 160, 163, 165, 170, 177, 184, 190, 179, 168, 167, 174, 181, 32.29247 + 180, 177, 178, 183, 188, 190, 187, 184, 185, 186, 189, 191, 191, 191, 190, 191, 32.29248 + 190, 190, 189, 187, 184, 181, 176, 173, 169, 164, 160, 156, 155, 155, 156, 155, 32.29249 + 153, 151, 103, 71, 69, 82, 94, 94, 109, 114, 173, 44, 64, 82, 30, 60, 32.29250 + 99, 35, 44, 50, 48, 34, 27, 31, 31, 26, 34, 255, 255, 255, 255, 255, 32.29251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29252 + 255, 255, 255, 255, 255, 255, 255, 255, 180, 37, 45, 42, 36, 32, 48, 30, 32.29253 + 41, 22, 56, 61, 62, 46, 60, 85, 53, 82, 99, 91, 129, 124, 118, 103, 32.29254 + 112, 124, 123, 136, 154, 156, 164, 168, 172, 176, 179, 184, 189, 194, 190, 187, 32.29255 + 181, 182, 184, 186, 184, 182, 181, 183, 187, 188, 187, 185, 187, 187, 191, 191, 32.29256 + 191, 191, 190, 191, 191, 191, 194, 194, 193, 192, 190, 188, 185, 181, 174, 170, 32.29257 + 166, 164, 161, 156, 150, 147, 144, 117, 75, 75, 68, 99, 89, 71, 57, 82, 32.29258 + 67, 53, 67, 88, 58, 75, 58, 60, 52, 35, 28, 34, 38, 38, 38, 36, 32.29259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 36, 30, 31, 32.29261 + 40, 50, 62, 69, 89, 57, 74, 45, 76, 63, 70, 42, 61, 55, 66, 57, 32.29262 + 134, 114, 127, 108, 110, 126, 142, 160, 171, 166, 176, 180, 185, 187, 189, 192, 32.29263 + 194, 197, 192, 194, 196, 198, 194, 192, 188, 187, 186, 186, 187, 188, 191, 192, 32.29264 + 192, 190, 187, 186, 185, 185, 185, 187, 189, 190, 193, 195, 197, 199, 199, 199, 32.29265 + 198, 196, 187, 184, 180, 176, 170, 163, 155, 149, 158, 134, 125, 73, 68, 54, 32.29266 + 81, 69, 84, 81, 86, 98, 117, 71, 24, 54, 51, 55, 49, 33, 24, 26, 32.29267 + 30, 30, 41, 39, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 32.29269 + 35, 35, 34, 39, 51, 60, 36, 48, 30, 50, 61, 66, 69, 42, 71, 97, 32.29270 + 85, 80, 78, 124, 99, 124, 102, 111, 131, 151, 161, 167, 173, 172, 180, 182, 32.29271 + 187, 190, 191, 194, 194, 194, 194, 196, 196, 197, 194, 190, 185, 182, 185, 182, 32.29272 + 180, 184, 188, 191, 190, 187, 179, 179, 178, 177, 179, 182, 185, 187, 186, 189, 32.29273 + 195, 199, 200, 201, 201, 200, 192, 191, 190, 187, 183, 176, 167, 161, 151, 151, 32.29274 + 130, 133, 63, 60, 57, 88, 68, 52, 97, 83, 67, 67, 94, 86, 58, 64, 32.29275 + 65, 56, 48, 44, 41, 39, 39, 39, 37, 255, 255, 255, 255, 255, 255, 255, 32.29276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29277 + 255, 255, 255, 34, 30, 28, 29, 28, 20, 11, 48, 90, 76, 97, 60, 71, 32.29278 + 83, 92, 75, 55, 72, 66, 74, 83, 136, 89, 107, 132, 157, 171, 176, 175, 32.29279 + 177, 183, 181, 183, 185, 188, 191, 192, 191, 190, 191, 187, 183, 182, 181, 178, 32.29280 + 172, 166, 170, 169, 167, 171, 175, 178, 177, 172, 168, 166, 167, 169, 170, 173, 32.29281 + 177, 180, 180, 183, 189, 193, 197, 198, 199, 200, 198, 198, 197, 197, 194, 189, 32.29282 + 180, 175, 175, 146, 154, 127, 127, 77, 77, 56, 88, 95, 81, 108, 73, 100, 32.29283 + 51, 54, 43, 48, 51, 47, 43, 37, 32, 28, 34, 37, 39, 111, 255, 255, 32.29284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29285 + 255, 255, 255, 255, 255, 255, 177, 33, 40, 39, 40, 55, 78, 93, 82, 81, 32.29286 + 67, 69, 80, 93, 104, 94, 99, 93, 69, 90, 81, 115, 81, 122, 142, 157, 32.29287 + 162, 164, 175, 179, 179, 186, 183, 183, 183, 183, 185, 185, 184, 183, 185, 179, 32.29288 + 171, 168, 168, 168, 164, 160, 160, 159, 161, 162, 165, 166, 165, 162, 156, 156, 32.29289 + 155, 157, 159, 161, 163, 163, 171, 174, 178, 182, 186, 189, 192, 195, 201, 202, 32.29290 + 201, 201, 198, 194, 187, 182, 171, 171, 148, 155, 124, 136, 90, 54, 79, 47, 32.29291 + 95, 88, 149, 75, 61, 53, 62, 60, 58, 56, 56, 55, 51, 48, 32, 37, 32.29292 + 40, 40, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 46, 45, 29, 18, 27, 32.29294 + 49, 62, 47, 53, 76, 59, 72, 85, 111, 124, 135, 86, 124, 109, 86, 103, 32.29295 + 96, 119, 151, 165, 160, 157, 173, 178, 173, 178, 179, 176, 172, 171, 171, 170, 32.29296 + 168, 166, 168, 166, 161, 158, 156, 156, 157, 158, 153, 156, 160, 161, 160, 159, 32.29297 + 157, 156, 147, 148, 148, 149, 148, 146, 145, 143, 152, 154, 157, 162, 166, 172, 32.29298 + 178, 182, 193, 195, 194, 194, 193, 192, 187, 183, 166, 167, 176, 147, 143, 127, 32.29299 + 123, 90, 51, 79, 80, 92, 28, 77, 63, 80, 58, 52, 48, 51, 55, 54, 32.29300 + 45, 38, 35, 39, 40, 39, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 37, 30, 32.29302 + 26, 41, 71, 88, 76, 51, 73, 66, 79, 63, 61, 78, 62, 67, 102, 142, 32.29303 + 100, 117, 82, 91, 135, 138, 135, 160, 165, 165, 179, 176, 166, 169, 171, 168, 32.29304 + 160, 157, 155, 154, 150, 147, 147, 149, 151, 147, 142, 141, 146, 152, 146, 151, 32.29305 + 156, 158, 154, 151, 150, 150, 145, 145, 145, 144, 141, 137, 132, 129, 135, 135, 32.29306 + 137, 141, 147, 155, 161, 167, 180, 180, 180, 183, 185, 186, 184, 182, 182, 170, 32.29307 + 162, 161, 138, 130, 123, 121, 99, 64, 66, 70, 113, 96, 72, 66, 61, 56, 32.29308 + 56, 65, 71, 65, 49, 35, 38, 40, 40, 38, 34, 108, 255, 255, 255, 255, 32.29309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29310 + 255, 33, 33, 38, 26, 34, 82, 40, 69, 62, 61, 62, 73, 60, 56, 66, 32.29311 + 61, 66, 111, 103, 105, 91, 112, 117, 140, 140, 148, 156, 163, 164, 160, 157, 32.29312 + 159, 164, 157, 160, 146, 154, 138, 148, 137, 143, 143, 150, 147, 161, 148, 153, 32.29313 + 150, 164, 171, 172, 172, 173, 172, 170, 168, 168, 164, 168, 176, 162, 158, 165, 32.29314 + 159, 158, 150, 150, 146, 143, 141, 143, 147, 153, 161, 164, 171, 180, 179, 173, 32.29315 + 175, 184, 180, 177, 170, 161, 157, 149, 130, 112, 122, 79, 49, 75, 54, 50, 32.29316 + 94, 59, 74, 64, 62, 45, 67, 61, 55, 28, 33, 35, 34, 34, 34, 36, 32.29317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29318 + 255, 255, 255, 255, 255, 33, 35, 30, 26, 26, 54, 44, 52, 76, 68, 56, 32.29319 + 60, 60, 80, 109, 108, 109, 84, 94, 100, 111, 119, 135, 138, 140, 149, 152, 32.29320 + 157, 157, 157, 154, 152, 150, 150, 147, 139, 145, 145, 155, 155, 161, 174, 181, 32.29321 + 176, 188, 174, 181, 181, 194, 193, 195, 197, 199, 199, 199, 197, 199, 197, 200, 32.29322 + 193, 187, 183, 184, 189, 187, 186, 175, 161, 155, 155, 156, 154, 152, 156, 158, 32.29323 + 150, 142, 153, 174, 178, 166, 169, 173, 172, 163, 154, 149, 141, 134, 126, 102, 32.29324 + 87, 62, 67, 79, 60, 75, 51, 51, 50, 56, 56, 59, 58, 63, 60, 55, 32.29325 + 45, 39, 38, 39, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29326 + 255, 255, 255, 255, 255, 255, 255, 255, 181, 33, 34, 29, 48, 60, 84, 92, 32.29327 + 54, 76, 69, 58, 64, 63, 74, 85, 66, 58, 74, 94, 103, 129, 123, 145, 32.29328 + 137, 142, 148, 149, 150, 153, 156, 155, 150, 146, 147, 153, 164, 164, 169, 162, 32.29329 + 165, 165, 185, 192, 187, 200, 188, 199, 200, 215, 211, 213, 214, 215, 216, 216, 32.29330 + 215, 216, 216, 219, 200, 208, 206, 192, 206, 196, 176, 171, 165, 158, 149, 138, 32.29331 + 123, 113, 120, 116, 130, 155, 160, 149, 158, 181, 171, 176, 180, 176, 168, 156, 32.29332 + 142, 129, 127, 116, 108, 69, 70, 83, 58, 74, 75, 71, 58, 74, 52, 53, 32.29333 + 44, 62, 52, 42, 29, 24, 27, 31, 31, 255, 255, 255, 255, 255, 255, 255, 32.29334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 33, 43, 21, 32.29335 + 25, 34, 80, 92, 56, 66, 63, 63, 76, 71, 73, 86, 88, 100, 93, 109, 32.29336 + 116, 130, 127, 142, 141, 146, 149, 149, 147, 145, 144, 143, 139, 138, 169, 163, 32.29337 + 162, 131, 123, 105, 121, 128, 177, 189, 187, 201, 193, 207, 210, 223, 220, 221, 32.29338 + 220, 220, 218, 217, 216, 217, 214, 223, 198, 220, 219, 190, 203, 186, 149, 145, 32.29339 + 135, 118, 98, 83, 79, 80, 95, 132, 148, 130, 126, 150, 162, 154, 156, 154, 32.29340 + 153, 161, 168, 165, 151, 136, 133, 119, 109, 104, 71, 64, 86, 61, 63, 56, 32.29341 + 44, 57, 52, 58, 51, 55, 56, 48, 40, 37, 37, 42, 43, 114, 255, 255, 32.29342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 32.29343 + 33, 33, 32, 21, 25, 24, 81, 64, 56, 48, 70, 76, 100, 99, 90, 89, 32.29344 + 80, 90, 111, 118, 133, 128, 139, 137, 148, 149, 136, 142, 145, 146, 148, 154, 32.29345 + 163, 172, 109, 121, 156, 169, 196, 183, 181, 168, 185, 199, 201, 217, 208, 222, 32.29346 + 222, 232, 230, 230, 229, 228, 226, 226, 225, 226, 223, 231, 204, 226, 223, 193, 32.29347 + 207, 188, 168, 170, 172, 168, 154, 132, 109, 94, 59, 45, 55, 94, 122, 132, 32.29348 + 146, 167, 175, 168, 160, 160, 164, 163, 160, 155, 146, 125, 118, 120, 88, 68, 32.29349 + 78, 69, 62, 61, 64, 54, 67, 65, 68, 56, 48, 48, 44, 37, 29, 25, 32.29350 + 24, 26, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29351 + 255, 255, 255, 34, 33, 33, 27, 42, 71, 60, 98, 57, 61, 60, 80, 77, 32.29352 + 95, 99, 102, 102, 84, 85, 114, 119, 142, 134, 151, 139, 148, 141, 157, 159, 32.29353 + 152, 140, 126, 119, 122, 128, 140, 123, 119, 128, 166, 188, 199, 195, 200, 214, 32.29354 + 216, 229, 218, 231, 228, 234, 236, 236, 235, 236, 236, 237, 239, 240, 237, 240, 32.29355 + 217, 225, 220, 204, 216, 206, 183, 178, 179, 188, 191, 173, 137, 106, 146, 136, 32.29356 + 96, 52, 62, 113, 147, 145, 148, 155, 165, 171, 167, 158, 155, 156, 152, 131, 32.29357 + 136, 100, 106, 93, 34, 85, 80, 88, 98, 67, 67, 54, 63, 50, 59, 62, 32.29358 + 62, 55, 43, 35, 34, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29359 + 255, 255, 255, 255, 255, 255, 181, 34, 33, 33, 40, 50, 83, 54, 67, 57, 32.29360 + 59, 98, 157, 129, 114, 99, 98, 105, 97, 105, 122, 130, 143, 144, 148, 140, 32.29361 + 131, 122, 92, 99, 104, 109, 115, 122, 132, 139, 133, 130, 126, 149, 173, 202, 32.29362 + 208, 211, 210, 225, 225, 234, 221, 236, 233, 239, 240, 241, 240, 241, 240, 242, 32.29363 + 243, 244, 239, 239, 232, 225, 220, 220, 224, 220, 232, 212, 190, 183, 188, 192, 32.29364 + 186, 177, 146, 140, 138, 141, 135, 116, 98, 87, 74, 84, 108, 137, 156, 160, 32.29365 + 157, 156, 152, 135, 141, 97, 109, 107, 37, 82, 60, 64, 67, 58, 53, 50, 32.29366 + 56, 57, 50, 50, 51, 47, 39, 33, 32, 33, 36, 255, 255, 255, 255, 255, 32.29367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 33, 33, 32, 26, 33, 32.29368 + 86, 67, 68, 86, 47, 100, 63, 63, 87, 104, 117, 122, 107, 112, 134, 144, 32.29369 + 141, 153, 136, 139, 114, 107, 111, 115, 120, 127, 138, 146, 151, 151, 160, 178, 32.29370 + 181, 198, 187, 204, 207, 224, 220, 235, 232, 240, 228, 245, 245, 252, 248, 247, 32.29371 + 245, 244, 242, 241, 241, 241, 233, 238, 246, 232, 227, 236, 228, 228, 216, 219, 32.29372 + 221, 218, 211, 204, 199, 198, 222, 212, 192, 181, 186, 185, 149, 104, 103, 86, 32.29373 + 84, 110, 147, 166, 164, 157, 156, 141, 135, 117, 105, 103, 86, 69, 75, 64, 32.29374 + 46, 65, 59, 68, 57, 64, 68, 65, 61, 56, 50, 45, 40, 39, 35, 255, 32.29375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 28, 32.29376 + 30, 36, 52, 77, 78, 63, 61, 69, 71, 73, 57, 83, 78, 76, 115, 102, 32.29377 + 115, 113, 126, 139, 145, 139, 133, 132, 127, 120, 157, 166, 178, 184, 187, 192, 32.29378 + 199, 206, 215, 217, 218, 220, 222, 224, 225, 227, 233, 234, 236, 237, 239, 241, 32.29379 + 243, 244, 243, 243, 242, 240, 238, 237, 236, 238, 241, 243, 243, 242, 240, 239, 32.29380 + 238, 237, 239, 238, 237, 236, 235, 234, 234, 232, 229, 232, 230, 225, 224, 224, 32.29381 + 214, 202, 142, 136, 113, 89, 94, 128, 155, 161, 154, 144, 152, 136, 105, 110, 32.29382 + 74, 74, 69, 55, 67, 63, 79, 86, 77, 52, 59, 49, 63, 70, 97, 74, 32.29383 + 58, 32, 36, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29384 + 255, 186, 41, 31, 28, 30, 53, 69, 67, 61, 72, 76, 61, 45, 73, 96, 32.29385 + 73, 115, 110, 87, 137, 136, 156, 146, 146, 149, 134, 128, 166, 218, 211, 218, 32.29386 + 226, 230, 232, 233, 238, 241, 236, 237, 237, 238, 239, 239, 240, 241, 238, 238, 32.29387 + 239, 239, 241, 242, 244, 245, 244, 244, 242, 240, 238, 236, 235, 237, 241, 243, 32.29388 + 243, 243, 242, 242, 241, 241, 241, 241, 240, 240, 239, 239, 238, 238, 238, 241, 32.29389 + 241, 239, 241, 241, 236, 226, 228, 210, 174, 126, 80, 72, 109, 154, 179, 154, 32.29390 + 156, 138, 128, 97, 130, 71, 94, 61, 69, 54, 65, 48, 71, 75, 90, 65, 32.29391 + 45, 77, 64, 51, 33, 54, 35, 32, 255, 255, 255, 255, 255, 255, 255, 255, 32.29392 + 255, 255, 255, 255, 255, 30, 26, 26, 35, 48, 31, 56, 66, 63, 67, 68, 32.29393 + 61, 58, 87, 97, 91, 128, 84, 88, 129, 131, 124, 134, 125, 107, 123, 172, 32.29394 + 209, 218, 230, 236, 240, 243, 240, 241, 242, 246, 246, 247, 247, 247, 248, 247, 32.29395 + 248, 246, 242, 240, 241, 240, 242, 243, 245, 245, 244, 243, 242, 240, 239, 239, 32.29396 + 239, 239, 243, 242, 242, 242, 242, 243, 244, 244, 242, 241, 241, 242, 240, 240, 32.29397 + 240, 240, 239, 241, 242, 241, 242, 246, 243, 238, 233, 233, 230, 211, 169, 122, 32.29398 + 95, 87, 122, 174, 138, 150, 126, 133, 116, 103, 56, 152, 100, 42, 36, 84, 32.29399 + 44, 50, 52, 71, 63, 71, 66, 86, 46, 7, 36, 33, 107, 255, 255, 255, 32.29400 + 255, 255, 255, 255, 255, 255, 255, 255, 181, 30, 27, 33, 53, 71, 32, 55, 32.29401 + 63, 57, 59, 61, 67, 77, 100, 98, 141, 118, 92, 134, 115, 125, 131, 121, 32.29402 + 130, 168, 210, 231, 232, 233, 233, 238, 241, 242, 241, 242, 243, 246, 245, 246, 32.29403 + 245, 245, 244, 244, 243, 241, 240, 239, 239, 241, 243, 243, 244, 244, 243, 241, 32.29404 + 239, 237, 238, 240, 242, 242, 244, 243, 242, 241, 241, 242, 243, 244, 242, 242, 32.29405 + 241, 242, 241, 241, 242, 242, 241, 241, 239, 239, 238, 239, 238, 237, 227, 235, 32.29406 + 236, 229, 225, 208, 162, 111, 82, 121, 167, 137, 143, 131, 104, 118, 86, 74, 32.29407 + 98, 90, 61, 50, 80, 48, 61, 63, 78, 66, 71, 52, 63, 62, 40, 36, 32.29408 + 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 38, 34, 34, 32.29409 + 43, 53, 67, 68, 58, 55, 67, 71, 68, 71, 94, 93, 138, 100, 123, 142, 32.29410 + 99, 113, 111, 129, 168, 207, 228, 225, 222, 226, 236, 239, 241, 243, 242, 243, 32.29411 + 244, 246, 244, 244, 243, 243, 242, 243, 241, 240, 239, 240, 241, 244, 246, 247, 32.29412 + 246, 244, 240, 236, 232, 231, 233, 238, 244, 247, 245, 242, 241, 241, 241, 241, 32.29413 + 241, 241, 242, 242, 242, 242, 241, 241, 242, 242, 246, 244, 243, 242, 241, 240, 32.29414 + 241, 243, 242, 245, 237, 223, 222, 230, 220, 198, 141, 76, 138, 161, 137, 124, 32.29415 + 125, 110, 127, 74, 43, 127, 59, 50, 53, 76, 75, 55, 50, 38, 64, 62, 32.29416 + 70, 58, 46, 39, 34, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.29417 + 28, 30, 32, 37, 49, 61, 70, 74, 72, 72, 79, 77, 78, 88, 97, 105, 32.29418 + 106, 104, 135, 95, 88, 105, 153, 195, 225, 222, 221, 237, 244, 236, 236, 235, 32.29419 + 236, 236, 235, 236, 236, 237, 241, 242, 241, 241, 241, 241, 239, 239, 239, 241, 32.29420 + 243, 247, 248, 248, 243, 238, 230, 223, 218, 215, 220, 228, 237, 242, 238, 238, 32.29421 + 239, 240, 241, 241, 241, 240, 242, 243, 242, 242, 240, 240, 239, 240, 242, 241, 32.29422 + 242, 244, 243, 241, 244, 247, 242, 238, 238, 245, 243, 233, 226, 226, 208, 120, 32.29423 + 60, 148, 141, 134, 131, 125, 109, 137, 82, 52, 107, 69, 62, 70, 67, 82, 32.29424 + 68, 78, 92, 130, 96, 52, 48, 40, 35, 33, 255, 255, 255, 255, 255, 255, 32.29425 + 255, 255, 255, 37, 32, 35, 45, 59, 76, 91, 58, 70, 79, 85, 88, 87, 32.29426 + 100, 126, 120, 124, 117, 127, 113, 79, 108, 141, 219, 209, 215, 235, 235, 221, 32.29427 + 228, 250, 238, 235, 234, 234, 235, 236, 236, 237, 235, 235, 235, 235, 235, 235, 32.29428 + 234, 236, 237, 240, 244, 246, 246, 241, 233, 225, 208, 199, 190, 187, 193, 205, 32.29429 + 218, 225, 229, 230, 235, 239, 241, 242, 241, 241, 243, 243, 241, 240, 239, 238, 32.29430 + 236, 237, 234, 233, 236, 240, 239, 235, 237, 244, 248, 237, 232, 239, 243, 240, 32.29431 + 237, 236, 226, 185, 99, 76, 161, 129, 134, 135, 106, 109, 76, 95, 86, 90, 32.29432 + 103, 74, 57, 60, 61, 85, 61, 54, 56, 91, 46, 40, 36, 37, 255, 255, 32.29433 + 255, 255, 255, 255, 255, 255, 255, 28, 29, 39, 50, 59, 64, 71, 73, 69, 32.29434 + 65, 77, 97, 106, 117, 136, 114, 108, 135, 123, 63, 90, 125, 181, 211, 226, 32.29435 + 235, 227, 222, 228, 232, 231, 227, 226, 225, 226, 229, 231, 231, 231, 233, 234, 32.29436 + 234, 235, 236, 236, 236, 236, 235, 238, 241, 242, 239, 231, 221, 211, 187, 177, 32.29437 + 167, 163, 170, 182, 197, 207, 220, 225, 230, 236, 241, 243, 242, 242, 242, 243, 32.29438 + 241, 239, 237, 234, 234, 233, 231, 230, 233, 238, 235, 230, 230, 238, 229, 245, 32.29439 + 248, 235, 231, 242, 248, 241, 219, 237, 179, 92, 99, 156, 122, 125, 126, 126, 32.29440 + 99, 75, 78, 57, 93, 51, 99, 81, 72, 50, 70, 68, 73, 57, 43, 39, 32.29441 + 38, 41, 112, 255, 255, 255, 255, 255, 255, 255, 255, 42, 30, 39, 54, 77, 32.29442 + 70, 84, 69, 75, 108, 67, 78, 111, 124, 112, 97, 136, 103, 125, 62, 126, 32.29443 + 181, 214, 216, 229, 232, 226, 223, 229, 230, 222, 223, 228, 227, 225, 237, 233, 32.29444 + 231, 234, 234, 230, 229, 232, 236, 240, 241, 241, 240, 234, 230, 231, 233, 224, 32.29445 + 206, 186, 162, 152, 144, 142, 150, 158, 163, 167, 194, 210, 228, 233, 231, 231, 32.29446 + 238, 245, 246, 241, 235, 233, 234, 232, 226, 222, 233, 215, 236, 229, 220, 230, 32.29447 + 219, 229, 228, 226, 227, 230, 233, 233, 238, 242, 230, 234, 212, 158, 82, 111, 32.29448 + 135, 131, 132, 121, 114, 70, 95, 89, 73, 93, 55, 54, 66, 64, 82, 86, 32.29449 + 65, 90, 69, 59, 47, 38, 37, 255, 255, 255, 255, 255, 255, 255, 46, 39, 32.29450 + 37, 16, 82, 93, 97, 72, 69, 66, 73, 71, 105, 123, 137, 105, 111, 113, 32.29451 + 144, 81, 121, 145, 225, 227, 234, 223, 221, 229, 231, 220, 215, 220, 231, 230, 32.29452 + 222, 223, 240, 243, 237, 237, 229, 227, 225, 226, 230, 235, 237, 237, 234, 228, 32.29453 + 226, 229, 230, 216, 189, 165, 146, 145, 145, 141, 141, 145, 156, 168, 178, 197, 32.29454 + 215, 224, 225, 225, 230, 237, 234, 241, 244, 234, 218, 210, 218, 228, 227, 234, 32.29455 + 233, 233, 229, 234, 236, 219, 212, 213, 212, 215, 225, 238, 239, 234, 242, 246, 32.29456 + 224, 188, 126, 90, 127, 133, 117, 140, 106, 76, 131, 120, 129, 46, 88, 57, 32.29457 + 72, 31, 95, 94, 96, 74, 111, 63, 29, 31, 37, 255, 255, 255, 255, 255, 32.29458 + 255, 255, 21, 40, 20, 55, 83, 138, 98, 67, 72, 79, 69, 86, 113, 107, 32.29459 + 132, 108, 116, 111, 133, 75, 134, 192, 228, 230, 234, 226, 223, 225, 216, 206, 32.29460 + 211, 225, 215, 218, 207, 201, 200, 201, 200, 211, 212, 212, 213, 217, 224, 231, 32.29461 + 235, 238, 231, 222, 216, 216, 217, 202, 174, 149, 146, 145, 145, 142, 140, 143, 32.29462 + 151, 162, 172, 191, 210, 219, 220, 222, 228, 235, 243, 238, 230, 220, 212, 209, 32.29463 + 208, 209, 213, 227, 208, 219, 222, 216, 235, 214, 219, 220, 213, 203, 205, 222, 32.29464 + 234, 238, 241, 245, 225, 218, 181, 84, 121, 146, 136, 142, 122, 117, 72, 108, 32.29465 + 107, 131, 45, 50, 75, 70, 67, 81, 92, 102, 94, 80, 56, 40, 43, 117, 32.29466 + 255, 255, 255, 255, 255, 181, 39, 35, 31, 25, 67, 94, 110, 99, 75, 87, 32.29467 + 78, 85, 100, 101, 117, 111, 129, 130, 95, 106, 140, 228, 215, 227, 232, 231, 32.29468 + 217, 201, 200, 212, 214, 205, 182, 185, 169, 169, 165, 174, 168, 181, 178, 183, 32.29469 + 190, 201, 211, 223, 229, 234, 236, 222, 204, 195, 191, 181, 161, 143, 142, 137, 32.29470 + 133, 135, 142, 149, 152, 158, 173, 188, 203, 212, 214, 218, 225, 233, 247, 233, 32.29471 + 216, 208, 205, 201, 191, 181, 189, 190, 171, 179, 184, 175, 190, 196, 205, 212, 32.29472 + 217, 207, 197, 200, 219, 238, 238, 239, 227, 233, 207, 107, 102, 146, 122, 145, 32.29473 + 145, 125, 54, 139, 105, 97, 99, 61, 49, 90, 76, 87, 73, 79, 98, 99, 32.29474 + 70, 28, 17, 41, 255, 255, 255, 255, 255, 34, 26, 27, 52, 64, 82, 73, 32.29475 + 76, 70, 72, 76, 78, 75, 102, 131, 111, 112, 146, 129, 88, 124, 190, 224, 32.29476 + 232, 231, 237, 221, 198, 187, 196, 208, 191, 162, 147, 155, 143, 164, 170, 185, 32.29477 + 165, 168, 151, 158, 170, 182, 194, 204, 213, 218, 235, 219, 195, 176, 166, 157, 32.29478 + 145, 138, 134, 137, 139, 139, 141, 146, 151, 158, 168, 179, 190, 197, 202, 210, 32.29479 + 223, 234, 231, 226, 215, 203, 190, 179, 170, 165, 158, 158, 158, 140, 146, 156, 32.29480 + 150, 171, 166, 173, 190, 203, 200, 193, 202, 224, 243, 242, 236, 234, 207, 148, 32.29481 + 85, 127, 119, 142, 142, 114, 100, 97, 132, 57, 148, 77, 57, 65, 98, 89, 32.29482 + 108, 93, 88, 79, 68, 60, 48, 35, 255, 255, 255, 255, 255, 34, 47, 39, 32.29483 + 31, 77, 59, 79, 70, 83, 68, 87, 101, 95, 111, 143, 112, 129, 140, 110, 32.29484 + 80, 142, 211, 216, 238, 235, 226, 210, 197, 193, 183, 162, 152, 153, 158, 186, 32.29485 + 181, 190, 156, 149, 122, 135, 164, 170, 179, 186, 193, 199, 206, 210, 224, 212, 32.29486 + 190, 167, 148, 140, 139, 142, 161, 174, 184, 176, 157, 144, 145, 155, 163, 171, 32.29487 + 180, 187, 195, 207, 224, 237, 225, 215, 201, 193, 188, 179, 165, 154, 139, 155, 32.29488 + 164, 130, 146, 178, 161, 175, 164, 158, 161, 171, 179, 184, 196, 214, 237, 239, 32.29489 + 241, 227, 207, 189, 99, 116, 141, 131, 147, 121, 82, 55, 106, 114, 92, 95, 32.29490 + 80, 78, 70, 86, 118, 126, 116, 90, 54, 29, 24, 33, 255, 255, 255, 255, 32.29491 + 255, 32, 33, 19, 61, 74, 102, 79, 92, 69, 81, 110, 107, 113, 115, 125, 32.29492 + 115, 148, 132, 93, 85, 165, 204, 224, 224, 235, 213, 203, 191, 179, 156, 142, 32.29493 + 151, 173, 111, 151, 155, 176, 147, 165, 165, 202, 206, 206, 206, 205, 205, 208, 32.29494 + 216, 220, 213, 204, 183, 158, 137, 138, 157, 177, 206, 218, 227, 220, 197, 175, 32.29495 + 158, 153, 161, 167, 175, 182, 190, 202, 218, 229, 225, 211, 195, 191, 195, 193, 32.29496 + 181, 167, 172, 178, 158, 141, 162, 171, 163, 180, 163, 171, 165, 151, 149, 168, 32.29497 + 190, 205, 222, 235, 240, 218, 217, 203, 130, 105, 129, 132, 161, 128, 75, 108, 32.29498 + 82, 90, 91, 115, 63, 87, 60, 96, 86, 91, 90, 89, 72, 50, 44, 50, 32.29499 + 113, 255, 255, 255, 255, 30, 42, 43, 56, 79, 66, 88, 93, 85, 96, 110, 32.29500 + 66, 98, 118, 119, 123, 148, 146, 88, 127, 171, 220, 228, 226, 234, 221, 196, 32.29501 + 158, 133, 143, 171, 184, 182, 193, 191, 148, 156, 138, 166, 149, 166, 232, 231, 32.29502 + 223, 216, 211, 213, 220, 226, 206, 196, 177, 149, 134, 146, 185, 221, 227, 229, 32.29503 + 233, 238, 236, 218, 186, 161, 160, 164, 171, 174, 179, 187, 199, 209, 211, 215, 32.29504 + 215, 206, 197, 192, 199, 206, 233, 203, 138, 148, 164, 124, 130, 163, 129, 173, 32.29505 + 191, 162, 142, 159, 180, 188, 218, 239, 242, 217, 228, 195, 147, 87, 130, 131, 32.29506 + 142, 148, 123, 61, 84, 89, 114, 108, 63, 67, 87, 83, 96, 103, 92, 79, 32.29507 + 74, 75, 59, 32, 32, 255, 255, 255, 181, 33, 31, 26, 31, 42, 94, 81, 32.29508 + 84, 102, 85, 73, 74, 92, 121, 119, 114, 146, 121, 100, 100, 191, 216, 227, 32.29509 + 233, 221, 212, 187, 147, 127, 150, 97, 187, 220, 231, 157, 84, 78, 43, 70, 32.29510 + 72, 138, 145, 238, 233, 231, 240, 204, 191, 182, 202, 163, 131, 147, 187, 206, 32.29511 + 214, 231, 242, 246, 246, 246, 242, 236, 229, 223, 184, 171, 157, 197, 173, 179, 32.29512 + 206, 201, 217, 216, 212, 212, 223, 237, 237, 229, 200, 155, 140, 90, 76, 117, 32.29513 + 136, 171, 224, 158, 150, 200, 174, 146, 153, 193, 208, 231, 241, 237, 231, 211, 32.29514 + 160, 105, 99, 139, 120, 140, 118, 89, 130, 99, 119, 103, 73, 44, 101, 89, 32.29515 + 126, 141, 171, 139, 102, 48, 41, 27, 39, 255, 255, 255, 32, 32, 45, 46, 32.29516 + 67, 80, 87, 86, 105, 114, 91, 82, 109, 83, 138, 121, 142, 129, 112, 97, 32.29517 + 108, 195, 218, 229, 232, 218, 206, 178, 118, 146, 100, 168, 226, 225, 216, 122, 32.29518 + 102, 69, 87, 187, 103, 128, 119, 227, 240, 226, 219, 198, 200, 187, 157, 149, 32.29519 + 145, 169, 208, 224, 231, 246, 244, 246, 246, 246, 244, 241, 235, 229, 213, 182, 32.29520 + 169, 177, 171, 167, 197, 201, 182, 202, 218, 223, 224, 229, 235, 234, 183, 134, 32.29521 + 84, 67, 58, 68, 106, 125, 215, 228, 209, 151, 186, 156, 152, 161, 206, 225, 32.29522 + 234, 232, 229, 212, 163, 109, 88, 128, 119, 141, 124, 92, 121, 91, 115, 78, 32.29523 + 56, 64, 71, 92, 118, 95, 72, 68, 52, 40, 30, 36, 38, 255, 255, 255, 32.29524 + 31, 31, 36, 14, 29, 71, 84, 116, 124, 100, 87, 91, 103, 109, 123, 137, 32.29525 + 145, 128, 103, 97, 124, 201, 222, 229, 232, 219, 203, 175, 125, 117, 140, 203, 32.29526 + 229, 227, 205, 114, 102, 55, 87, 201, 99, 99, 130, 194, 201, 199, 195, 182, 32.29527 + 182, 155, 130, 154, 177, 200, 225, 234, 235, 242, 243, 242, 242, 243, 244, 243, 32.29528 + 239, 235, 237, 200, 191, 163, 174, 166, 180, 189, 191, 195, 196, 199, 208, 217, 32.29529 + 218, 215, 145, 138, 103, 146, 135, 83, 107, 90, 200, 221, 217, 209, 130, 139, 32.29530 + 138, 151, 193, 213, 224, 228, 231, 222, 183, 139, 89, 125, 123, 146, 138, 109, 32.29531 + 124, 100, 102, 120, 76, 85, 78, 107, 107, 121, 106, 107, 82, 75, 43, 46, 32.29532 + 27, 255, 255, 255, 30, 30, 32, 30, 46, 91, 85, 101, 103, 105, 96, 97, 32.29533 + 97, 135, 115, 129, 132, 127, 98, 102, 146, 210, 228, 231, 230, 217, 179, 141, 32.29534 + 96, 112, 139, 183, 157, 187, 169, 139, 122, 130, 152, 210, 196, 209, 195, 196, 32.29535 + 187, 200, 193, 170, 164, 145, 131, 171, 204, 219, 233, 239, 236, 237, 242, 240, 32.29536 + 239, 240, 242, 243, 241, 240, 242, 221, 212, 168, 174, 180, 165, 170, 201, 194, 32.29537 + 186, 186, 193, 197, 192, 186, 115, 111, 71, 100, 85, 51, 113, 123, 197, 229, 32.29538 + 230, 197, 176, 102, 90, 149, 173, 200, 219, 226, 230, 225, 197, 165, 104, 128, 32.29539 + 128, 149, 151, 131, 136, 127, 74, 111, 58, 54, 58, 89, 90, 123, 117, 153, 32.29540 + 168, 145, 78, 43, 31, 255, 255, 255, 32, 32, 35, 47, 53, 98, 108, 103, 32.29541 + 87, 115, 110, 108, 124, 123, 126, 105, 135, 110, 97, 106, 165, 213, 228, 228, 32.29542 + 225, 208, 197, 101, 148, 127, 172, 152, 186, 172, 203, 217, 200, 225, 213, 203, 32.29543 + 215, 216, 222, 204, 192, 193, 172, 152, 153, 145, 147, 189, 214, 221, 234, 247, 32.29544 + 248, 246, 241, 239, 237, 238, 242, 243, 244, 243, 237, 240, 225, 186, 172, 203, 32.29545 + 174, 172, 169, 183, 195, 200, 192, 182, 180, 185, 212, 216, 204, 204, 171, 134, 32.29546 + 140, 130, 130, 162, 159, 136, 159, 128, 111, 136, 159, 191, 217, 225, 222, 214, 32.29547 + 194, 172, 114, 127, 132, 147, 158, 143, 131, 135, 108, 90, 62, 65, 71, 112, 32.29548 + 143, 124, 152, 118, 82, 43, 42, 36, 41, 255, 255, 255, 33, 33, 36, 42, 32.29549 + 41, 81, 120, 113, 90, 112, 89, 125, 116, 116, 111, 125, 139, 99, 101, 112, 32.29550 + 180, 211, 223, 221, 215, 196, 162, 132, 133, 157, 147, 190, 179, 196, 200, 210, 32.29551 + 215, 220, 220, 226, 215, 204, 200, 189, 172, 156, 151, 160, 154, 129, 180, 210, 32.29552 + 221, 219, 231, 245, 247, 247, 242, 240, 237, 238, 241, 243, 243, 242, 236, 246, 32.29553 + 229, 206, 178, 209, 198, 197, 169, 173, 181, 188, 190, 191, 196, 206, 223, 218, 32.29554 + 224, 222, 216, 221, 214, 201, 213, 211, 194, 201, 145, 158, 137, 126, 151, 182, 32.29555 + 211, 220, 218, 211, 199, 183, 120, 123, 132, 142, 158, 142, 111, 122, 90, 83, 32.29556 + 64, 53, 81, 96, 129, 124, 100, 106, 116, 79, 61, 27, 37, 255, 255, 255, 32.29557 + 34, 35, 41, 63, 88, 89, 90, 81, 93, 108, 78, 135, 93, 124, 109, 152, 32.29558 + 134, 99, 111, 120, 192, 209, 219, 215, 206, 185, 165, 171, 166, 163, 200, 212, 32.29559 + 208, 228, 223, 219, 222, 212, 218, 229, 213, 201, 186, 178, 166, 154, 170, 189, 32.29560 + 172, 147, 207, 227, 229, 222, 229, 237, 239, 242, 243, 241, 239, 239, 241, 241, 32.29561 + 240, 237, 238, 237, 231, 228, 196, 192, 213, 212, 201, 184, 171, 171, 180, 189, 32.29562 + 197, 207, 226, 224, 230, 236, 239, 246, 243, 230, 229, 238, 233, 193, 215, 155, 32.29563 + 144, 166, 153, 177, 200, 212, 216, 215, 204, 191, 134, 127, 133, 135, 156, 142, 32.29564 + 101, 124, 77, 102, 72, 50, 82, 73, 94, 130, 96, 98, 94, 73, 57, 42, 32.29565 + 40, 255, 255, 255, 35, 35, 34, 36, 68, 62, 69, 85, 111, 85, 103, 134, 32.29566 + 103, 121, 149, 141, 132, 93, 119, 128, 201, 209, 217, 213, 201, 179, 180, 156, 32.29567 + 166, 197, 194, 209, 222, 210, 212, 218, 209, 214, 205, 179, 183, 173, 165, 169, 32.29568 + 178, 180, 185, 182, 171, 182, 212, 231, 232, 224, 228, 232, 235, 242, 244, 243, 32.29569 + 241, 242, 241, 239, 236, 232, 239, 222, 234, 241, 214, 171, 215, 213, 211, 205, 32.29570 + 197, 188, 172, 165, 173, 191, 217, 225, 226, 239, 232, 222, 234, 226, 233, 224, 32.29571 + 224, 231, 198, 198, 179, 149, 164, 177, 193, 201, 206, 207, 194, 179, 151, 135, 32.29572 + 135, 131, 154, 148, 107, 140, 107, 88, 63, 61, 55, 64, 98, 103, 133, 137, 32.29573 + 117, 106, 70, 66, 45, 255, 255, 255, 181, 34, 35, 38, 17, 86, 114, 117, 32.29574 + 84, 140, 96, 132, 88, 137, 136, 175, 98, 128, 99, 165, 210, 206, 198, 193, 32.29575 + 184, 175, 159, 165, 175, 188, 199, 208, 215, 218, 211, 200, 187, 173, 167, 168, 32.29576 + 176, 183, 177, 189, 199, 203, 224, 163, 157, 216, 237, 223, 229, 228, 186, 203, 32.29577 + 212, 229, 252, 235, 255, 241, 243, 233, 225, 201, 221, 230, 228, 229, 229, 201, 32.29578 + 187, 206, 223, 233, 210, 199, 188, 177, 188, 173, 175, 188, 206, 219, 227, 230, 32.29579 + 232, 234, 235, 234, 229, 223, 213, 201, 192, 185, 161, 166, 171, 178, 194, 207, 32.29580 + 198, 178, 152, 139, 129, 138, 160, 163, 101, 143, 154, 102, 69, 59, 50, 84, 32.29581 + 81, 100, 107, 84, 89, 88, 70, 77, 28, 255, 255, 255, 255, 34, 15, 59, 32.29582 + 80, 88, 95, 96, 112, 157, 104, 129, 118, 134, 143, 144, 111, 137, 105, 163, 32.29583 + 197, 187, 175, 172, 169, 167, 171, 177, 186, 194, 199, 201, 201, 200, 172, 169, 32.29584 + 167, 165, 166, 173, 180, 187, 200, 204, 219, 216, 203, 177, 194, 225, 231, 234, 32.29585 + 223, 199, 141, 119, 146, 248, 238, 236, 250, 236, 243, 229, 149, 149, 154, 201, 32.29586 + 226, 225, 227, 214, 189, 178, 217, 236, 226, 220, 206, 193, 199, 184, 173, 177, 32.29587 + 183, 189, 199, 211, 223, 233, 231, 231, 228, 222, 213, 202, 192, 185, 172, 169, 32.29588 + 166, 167, 182, 197, 193, 176, 166, 161, 141, 125, 146, 169, 115, 134, 149, 107, 32.29589 + 81, 55, 50, 80, 86, 96, 131, 131, 95, 99, 77, 51, 60, 255, 255, 255, 32.29590 + 255, 34, 41, 25, 51, 70, 111, 88, 104, 112, 100, 96, 143, 123, 184, 127, 32.29591 + 151, 146, 128, 172, 190, 174, 162, 163, 167, 172, 180, 183, 187, 187, 183, 177, 32.29592 + 171, 166, 150, 154, 164, 175, 183, 191, 199, 204, 225, 221, 235, 227, 178, 195, 32.29593 + 231, 234, 241, 214, 154, 140, 132, 95, 86, 199, 230, 243, 249, 236, 243, 215, 32.29594 + 74, 87, 128, 141, 164, 203, 238, 231, 206, 197, 203, 229, 236, 238, 227, 215, 32.29595 + 217, 202, 187, 180, 174, 170, 171, 180, 191, 200, 210, 211, 211, 209, 204, 200, 32.29596 + 193, 189, 186, 178, 164, 158, 167, 182, 184, 175, 147, 147, 141, 131, 147, 160, 32.29597 + 103, 100, 152, 121, 96, 63, 51, 77, 87, 91, 91, 87, 90, 76, 57, 30, 32.29598 + 27, 255, 255, 255, 255, 35, 26, 45, 91, 77, 99, 104, 123, 88, 125, 119, 32.29599 + 102, 147, 136, 142, 124, 121, 149, 176, 182, 168, 165, 170, 174, 180, 182, 180, 32.29600 + 177, 171, 163, 157, 152, 150, 161, 169, 183, 197, 208, 215, 220, 222, 234, 231, 32.29601 + 231, 226, 178, 210, 241, 239, 230, 211, 153, 128, 117, 93, 94, 204, 231, 243, 32.29602 + 245, 236, 237, 185, 59, 56, 115, 107, 130, 190, 237, 240, 229, 232, 191, 214, 32.29603 + 231, 240, 238, 233, 232, 222, 202, 194, 187, 179, 173, 170, 169, 170, 180, 182, 32.29604 + 184, 187, 190, 193, 195, 197, 194, 187, 171, 158, 157, 166, 174, 174, 178, 150, 32.29605 + 136, 128, 136, 141, 120, 134, 129, 108, 79, 79, 59, 92, 104, 122, 87, 108, 32.29606 + 88, 99, 92, 30, 60, 255, 255, 255, 255, 35, 47, 9, 38, 96, 110, 88, 32.29607 + 92, 97, 157, 126, 118, 122, 145, 125, 151, 130, 152, 168, 167, 160, 170, 178, 32.29608 + 178, 179, 180, 176, 169, 163, 158, 160, 165, 169, 185, 192, 205, 216, 224, 229, 32.29609 + 232, 234, 232, 236, 219, 217, 200, 222, 231, 242, 203, 191, 146, 103, 73, 95, 32.29610 + 123, 200, 229, 234, 238, 235, 225, 162, 115, 79, 85, 119, 167, 201, 221, 235, 32.29611 + 240, 234, 195, 206, 224, 232, 238, 244, 240, 235, 212, 207, 204, 200, 194, 187, 32.29612 + 180, 175, 172, 171, 172, 174, 179, 187, 194, 199, 197, 196, 185, 169, 157, 156, 32.29613 + 165, 171, 152, 140, 155, 157, 152, 140, 121, 111, 130, 107, 63, 98, 61, 90, 32.29614 + 93, 125, 130, 87, 114, 68, 66, 58, 22, 255, 255, 255, 255, 182, 24, 45, 32.29615 + 78, 104, 79, 96, 119, 139, 119, 129, 117, 149, 140, 140, 158, 148, 150, 161, 32.29616 + 160, 163, 178, 184, 179, 177, 170, 169, 166, 165, 168, 177, 189, 198, 206, 212, 32.29617 + 220, 229, 235, 238, 241, 242, 231, 238, 216, 208, 221, 229, 226, 243, 234, 207, 32.29618 + 166, 138, 130, 179, 187, 196, 228, 230, 238, 236, 218, 173, 188, 144, 114, 128, 32.29619 + 172, 213, 226, 231, 238, 239, 207, 208, 225, 230, 236, 246, 239, 242, 233, 227, 32.29620 + 221, 217, 212, 208, 201, 196, 190, 186, 182, 179, 183, 187, 194, 197, 202, 204, 32.29621 + 199, 185, 167, 158, 161, 168, 161, 155, 160, 128, 112, 122, 136, 107, 138, 109, 32.29622 + 57, 101, 64, 78, 78, 108, 135, 116, 99, 85, 76, 51, 45, 255, 255, 255, 32.29623 + 255, 255, 47, 18, 24, 82, 95, 98, 103, 129, 95, 117, 137, 128, 155, 108, 32.29624 + 147, 118, 151, 163, 168, 175, 188, 187, 179, 179, 167, 170, 175, 180, 185, 195, 32.29625 + 204, 211, 221, 227, 233, 239, 241, 245, 246, 245, 233, 236, 224, 204, 220, 227, 32.29626 + 236, 238, 218, 211, 195, 183, 175, 203, 194, 207, 225, 230, 238, 231, 210, 205, 32.29627 + 222, 200, 180, 148, 169, 222, 242, 235, 241, 247, 209, 208, 231, 232, 234, 244, 32.29628 + 234, 245, 250, 245, 238, 233, 228, 224, 217, 212, 208, 205, 201, 198, 198, 200, 32.29629 + 203, 205, 211, 210, 205, 195, 180, 167, 163, 164, 156, 156, 177, 153, 134, 131, 32.29630 + 140, 86, 124, 91, 54, 84, 80, 80, 98, 109, 106, 92, 103, 92, 69, 60, 32.29631 + 25, 255, 255, 255, 255, 255, 32, 38, 58, 82, 94, 100, 114, 130, 102, 139, 32.29632 + 120, 138, 144, 146, 169, 157, 152, 167, 177, 184, 192, 187, 179, 183, 177, 183, 32.29633 + 193, 201, 207, 210, 214, 217, 227, 233, 238, 241, 242, 242, 242, 242, 238, 236, 32.29634 + 236, 203, 209, 221, 245, 228, 226, 217, 193, 191, 201, 213, 193, 228, 218, 231, 32.29635 + 235, 223, 197, 224, 215, 222, 205, 196, 215, 238, 237, 241, 245, 230, 200, 204, 32.29636 + 235, 235, 235, 240, 230, 247, 244, 243, 241, 241, 239, 237, 230, 224, 214, 212, 32.29637 + 212, 213, 213, 214, 214, 214, 218, 214, 209, 203, 191, 179, 168, 164, 167, 143, 32.29638 + 157, 146, 127, 113, 133, 91, 146, 108, 78, 74, 90, 67, 95, 80, 92, 115, 32.29639 + 91, 109, 69, 37, 39, 255, 255, 255, 255, 255, 182, 34, 62, 129, 63, 150, 32.29640 + 131, 113, 102, 131, 107, 150, 121, 164, 160, 168, 158, 181, 198, 197, 190, 190, 32.29641 + 191, 187, 194, 198, 206, 215, 222, 229, 232, 234, 232, 233, 236, 240, 245, 248, 32.29642 + 247, 248, 246, 246, 235, 214, 200, 206, 220, 228, 217, 205, 198, 202, 209, 212, 32.29643 + 218, 224, 233, 236, 235, 229, 224, 224, 223, 220, 218, 222, 228, 234, 237, 234, 32.29644 + 229, 225, 182, 207, 231, 235, 236, 240, 242, 239, 242, 242, 242, 241, 241, 239, 32.29645 + 238, 235, 227, 224, 220, 217, 217, 217, 217, 215, 218, 214, 213, 212, 209, 197, 32.29646 + 177, 160, 161, 166, 140, 154, 147, 125, 129, 89, 173, 96, 91, 82, 87, 78, 32.29647 + 88, 83, 96, 106, 96, 133, 69, 82, 41, 255, 255, 255, 255, 255, 255, 24, 32.29648 + 92, 45, 121, 116, 99, 104, 104, 114, 124, 148, 145, 165, 182, 160, 163, 184, 32.29649 + 198, 196, 192, 193, 193, 190, 201, 206, 213, 223, 229, 235, 238, 238, 234, 234, 32.29650 + 236, 239, 241, 244, 245, 246, 243, 247, 241, 218, 194, 184, 184, 187, 188, 185, 32.29651 + 188, 200, 211, 218, 225, 233, 237, 240, 239, 235, 231, 232, 228, 224, 214, 213, 32.29652 + 214, 218, 222, 220, 211, 203, 196, 216, 234, 236, 235, 240, 241, 237, 242, 242, 32.29653 + 241, 241, 240, 240, 239, 238, 234, 231, 226, 223, 222, 221, 220, 219, 215, 212, 32.29654 + 211, 214, 215, 206, 190, 175, 162, 173, 154, 158, 138, 116, 125, 92, 161, 82, 32.29655 + 106, 72, 79, 99, 81, 116, 105, 114, 91, 94, 30, 35, 18, 255, 255, 255, 32.29656 + 255, 255, 255, 177, 71, 93, 72, 115, 122, 119, 102, 101, 133, 143, 168, 164, 32.29657 + 189, 147, 173, 187, 197, 194, 190, 192, 195, 195, 210, 215, 222, 230, 236, 239, 32.29658 + 241, 240, 239, 237, 238, 238, 240, 242, 243, 243, 236, 241, 235, 213, 186, 168, 32.29659 + 160, 159, 169, 176, 189, 205, 217, 224, 232, 240, 238, 240, 239, 237, 237, 239, 32.29660 + 233, 224, 214, 206, 199, 198, 197, 191, 178, 168, 204, 218, 230, 233, 235, 241, 32.29661 + 242, 238, 242, 242, 242, 242, 241, 241, 241, 240, 240, 237, 231, 229, 228, 226, 32.29662 + 225, 222, 217, 214, 213, 216, 216, 210, 198, 186, 163, 178, 163, 155, 127, 109, 32.29663 + 122, 99, 118, 106, 95, 92, 100, 82, 90, 102, 105, 109, 82, 79, 58, 57, 32.29664 + 35, 255, 255, 255, 255, 255, 255, 255, 48, 76, 104, 98, 151, 121, 95, 113, 32.29665 + 120, 138, 170, 165, 164, 142, 184, 192, 194, 190, 187, 194, 200, 204, 218, 222, 32.29666 + 229, 236, 241, 242, 242, 240, 240, 239, 239, 238, 240, 241, 241, 242, 238, 231, 32.29667 + 218, 199, 180, 167, 162, 162, 167, 179, 196, 210, 218, 224, 231, 237, 238, 239, 32.29668 + 238, 237, 239, 240, 232, 221, 217, 207, 196, 189, 182, 176, 167, 161, 196, 207, 32.29669 + 219, 226, 235, 243, 246, 242, 243, 242, 242, 242, 242, 242, 242, 242, 244, 240, 32.29670 + 236, 234, 232, 231, 228, 226, 225, 220, 217, 216, 215, 209, 199, 190, 166, 173, 32.29671 + 158, 146, 123, 113, 122, 101, 88, 120, 83, 96, 106, 71, 89, 88, 95, 98, 32.29672 + 79, 70, 79, 67, 39, 255, 255, 255, 255, 255, 255, 255, 43, 68, 124, 108, 32.29673 + 160, 61, 98, 142, 103, 142, 158, 167, 129, 155, 194, 194, 190, 186, 187, 197, 32.29674 + 208, 215, 224, 228, 233, 239, 242, 244, 242, 241, 242, 241, 241, 241, 241, 241, 32.29675 + 240, 239, 235, 220, 203, 188, 179, 172, 166, 165, 166, 181, 196, 207, 212, 220, 32.29676 + 230, 236, 239, 240, 238, 238, 241, 241, 234, 222, 214, 208, 200, 190, 183, 181, 32.29677 + 182, 185, 185, 195, 208, 221, 234, 244, 248, 246, 244, 243, 243, 243, 243, 243, 32.29678 + 243, 242, 244, 242, 239, 238, 236, 233, 231, 227, 229, 225, 220, 217, 213, 209, 32.29679 + 200, 193, 170, 162, 149, 145, 134, 124, 116, 88, 90, 100, 93, 67, 81, 96, 32.29680 + 75, 112, 114, 123, 106, 70, 60, 39, 28, 255, 255, 255, 255, 255, 255, 255, 32.29681 + 255, 126, 87, 154, 135, 52, 112, 157, 100, 148, 145, 154, 115, 175, 196, 193, 32.29682 + 189, 187, 192, 202, 215, 223, 230, 233, 236, 239, 242, 243, 244, 244, 242, 243, 32.29683 + 242, 242, 240, 239, 236, 232, 223, 207, 193, 183, 178, 169, 161, 158, 170, 184, 32.29684 + 198, 207, 214, 226, 236, 243, 238, 240, 240, 239, 240, 242, 238, 228, 220, 216, 32.29685 + 208, 195, 183, 178, 182, 187, 182, 191, 204, 217, 229, 237, 243, 244, 243, 242, 32.29686 + 242, 242, 243, 243, 243, 243, 243, 242, 240, 240, 238, 237, 233, 231, 227, 225, 32.29687 + 221, 219, 215, 210, 204, 199, 175, 153, 144, 149, 144, 131, 108, 80, 82, 106, 32.29688 + 92, 72, 78, 99, 83, 106, 121, 125, 109, 79, 61, 46, 111, 255, 255, 255, 32.29689 + 255, 255, 255, 255, 255, 86, 127, 137, 92, 110, 125, 136, 110, 144, 135, 121, 32.29690 + 126, 183, 191, 188, 188, 192, 200, 211, 219, 225, 235, 237, 239, 240, 242, 244, 32.29691 + 246, 246, 244, 245, 244, 242, 238, 233, 227, 222, 205, 193, 181, 175, 169, 162, 32.29692 + 158, 163, 181, 193, 204, 211, 218, 228, 236, 238, 231, 236, 238, 236, 238, 240, 32.29693 + 240, 234, 232, 225, 215, 201, 187, 176, 171, 171, 182, 186, 197, 207, 216, 225, 32.29694 + 233, 240, 240, 241, 241, 241, 242, 242, 243, 243, 243, 241, 241, 241, 242, 240, 32.29695 + 237, 233, 228, 225, 224, 221, 218, 213, 207, 203, 187, 151, 140, 144, 138, 126, 32.29696 + 110, 102, 65, 111, 90, 87, 81, 95, 97, 97, 91, 94, 87, 75, 52, 52, 32.29697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 65, 115, 98, 100, 109, 131, 105, 32.29698 + 119, 136, 128, 88, 140, 180, 186, 185, 189, 198, 209, 216, 221, 226, 238, 239, 32.29699 + 240, 241, 242, 244, 247, 249, 245, 245, 245, 242, 235, 226, 219, 212, 191, 181, 32.29700 + 172, 166, 158, 156, 164, 179, 188, 200, 208, 210, 214, 221, 224, 221, 222, 229, 32.29701 + 232, 232, 232, 237, 240, 238, 238, 231, 220, 210, 199, 189, 176, 170, 178, 181, 32.29702 + 189, 197, 204, 213, 225, 237, 238, 240, 239, 241, 241, 242, 242, 242, 243, 242, 32.29703 + 241, 243, 243, 242, 240, 236, 232, 230, 228, 225, 220, 213, 207, 202, 199, 153, 32.29704 + 135, 133, 123, 118, 119, 134, 67, 78, 106, 68, 56, 120, 90, 129, 86, 97, 32.29705 + 99, 83, 29, 31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 128, 116, 32.29706 + 128, 146, 150, 99, 100, 123, 106, 103, 145, 182, 191, 181, 200, 206, 206, 220, 32.29707 + 224, 234, 240, 242, 243, 244, 245, 244, 244, 243, 243, 248, 247, 237, 232, 225, 32.29708 + 207, 188, 182, 174, 164, 159, 163, 172, 185, 194, 194, 195, 197, 201, 205, 208, 32.29709 + 207, 207, 207, 204, 206, 214, 216, 213, 221, 234, 236, 233, 229, 225, 218, 203, 32.29710 + 185, 172, 174, 181, 190, 196, 200, 206, 213, 220, 227, 237, 244, 244, 240, 237, 32.29711 + 242, 247, 242, 242, 242, 242, 242, 242, 242, 241, 238, 235, 231, 228, 223, 219, 32.29712 + 210, 204, 198, 157, 138, 127, 142, 123, 120, 114, 81, 55, 109, 82, 61, 80, 32.29713 + 138, 119, 84, 94, 80, 62, 59, 50, 255, 255, 255, 255, 255, 255, 255, 255, 32.29714 + 255, 67, 100, 115, 135, 137, 171, 112, 101, 115, 98, 101, 148, 185, 189, 181, 32.29715 + 202, 210, 212, 224, 226, 234, 241, 243, 244, 244, 244, 244, 243, 243, 243, 245, 32.29716 + 243, 234, 224, 212, 196, 183, 171, 168, 168, 171, 178, 187, 195, 202, 200, 202, 32.29717 + 205, 206, 208, 211, 214, 216, 213, 215, 218, 220, 217, 213, 217, 226, 231, 228, 32.29718 + 224, 222, 219, 213, 201, 193, 183, 182, 182, 185, 192, 201, 208, 214, 224, 229, 32.29719 + 232, 236, 239, 242, 242, 244, 242, 242, 242, 242, 242, 242, 241, 242, 239, 236, 32.29720 + 233, 229, 226, 220, 211, 204, 191, 160, 138, 116, 131, 120, 113, 95, 95, 66, 32.29721 + 101, 67, 60, 77, 128, 118, 92, 78, 78, 71, 43, 32, 255, 255, 255, 255, 32.29722 + 255, 255, 255, 255, 255, 93, 113, 85, 89, 162, 155, 97, 84, 101, 93, 107, 32.29723 + 156, 189, 187, 182, 205, 215, 217, 228, 228, 236, 241, 243, 244, 243, 243, 242, 32.29724 + 242, 240, 243, 239, 235, 229, 213, 196, 183, 178, 168, 172, 178, 188, 195, 201, 32.29725 + 205, 206, 210, 212, 213, 213, 214, 215, 219, 221, 213, 223, 229, 227, 220, 220, 32.29726 + 222, 224, 229, 226, 221, 220, 220, 221, 217, 214, 201, 191, 182, 181, 188, 199, 32.29727 + 206, 211, 220, 219, 219, 227, 237, 244, 243, 240, 242, 242, 242, 242, 242, 242, 32.29728 + 242, 241, 241, 238, 234, 231, 226, 221, 212, 205, 189, 166, 144, 114, 130, 127, 32.29729 + 115, 85, 89, 70, 94, 60, 70, 71, 96, 90, 123, 67, 58, 64, 38, 36, 32.29730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 99, 129, 92, 150, 125, 75, 32.29731 + 72, 95, 96, 116, 161, 182, 189, 184, 206, 216, 218, 230, 232, 240, 241, 243, 32.29732 + 243, 243, 243, 241, 240, 238, 242, 232, 224, 219, 203, 184, 178, 183, 184, 188, 32.29733 + 194, 201, 206, 209, 209, 210, 215, 212, 211, 213, 215, 215, 211, 209, 201, 217, 32.29734 + 228, 223, 219, 222, 224, 223, 231, 228, 223, 221, 221, 223, 222, 221, 218, 208, 32.29735 + 197, 191, 193, 201, 208, 214, 218, 218, 216, 224, 234, 242, 242, 238, 241, 242, 32.29736 + 242, 242, 241, 242, 242, 242, 242, 239, 235, 233, 228, 222, 214, 206, 190, 165, 32.29737 + 144, 118, 136, 130, 117, 88, 92, 84, 97, 59, 83, 71, 80, 89, 133, 78, 32.29738 + 53, 52, 40, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 113, 165, 32.29739 + 85, 153, 115, 76, 78, 98, 98, 120, 159, 174, 193, 186, 207, 216, 217, 231, 32.29740 + 235, 245, 242, 243, 243, 243, 242, 240, 238, 236, 237, 225, 215, 209, 197, 184, 32.29741 + 187, 196, 204, 204, 206, 208, 210, 212, 214, 216, 213, 208, 206, 210, 217, 216, 32.29742 + 208, 199, 196, 211, 221, 217, 213, 216, 217, 214, 227, 227, 224, 224, 224, 224, 32.29743 + 222, 221, 226, 223, 218, 211, 206, 206, 212, 218, 219, 221, 222, 227, 231, 236, 32.29744 + 239, 241, 241, 241, 241, 241, 241, 242, 241, 242, 242, 241, 237, 234, 229, 223, 32.29745 + 216, 207, 191, 159, 139, 121, 135, 120, 108, 87, 111, 101, 97, 51, 84, 75, 32.29746 + 93, 124, 106, 96, 68, 42, 35, 35, 255, 255, 255, 255, 255, 255, 255, 255, 32.29747 + 255, 79, 105, 186, 94, 113, 103, 74, 81, 96, 92, 118, 161, 175, 197, 188, 32.29748 + 208, 215, 217, 231, 236, 246, 242, 243, 243, 242, 241, 239, 237, 235, 230, 221, 32.29749 + 212, 205, 198, 198, 204, 211, 214, 212, 211, 211, 213, 217, 221, 223, 218, 214, 32.29750 + 212, 217, 223, 224, 215, 205, 204, 212, 218, 217, 213, 214, 213, 211, 219, 221, 32.29751 + 223, 225, 225, 225, 224, 223, 227, 229, 229, 225, 218, 215, 217, 220, 223, 227, 32.29752 + 229, 230, 231, 233, 237, 242, 240, 241, 241, 241, 241, 241, 241, 242, 244, 241, 32.29753 + 238, 235, 231, 224, 216, 209, 197, 164, 144, 124, 134, 114, 103, 85, 102, 91, 32.29754 + 86, 46, 85, 74, 91, 127, 97, 94, 60, 30, 37, 40, 255, 255, 255, 255, 32.29755 + 255, 255, 255, 255, 190, 119, 134, 136, 73, 115, 82, 65, 81, 95, 88, 116, 32.29756 + 163, 177, 196, 188, 210, 217, 220, 232, 235, 243, 242, 243, 242, 241, 240, 237, 32.29757 + 235, 233, 223, 219, 213, 207, 207, 215, 219, 219, 215, 215, 216, 217, 219, 222, 32.29758 + 224, 224, 223, 220, 217, 216, 215, 214, 210, 207, 199, 198, 202, 209, 213, 213, 32.29759 + 214, 217, 212, 214, 218, 222, 224, 224, 225, 226, 227, 229, 232, 232, 230, 228, 32.29760 + 226, 225, 227, 229, 231, 231, 231, 234, 238, 243, 240, 240, 241, 241, 241, 241, 32.29761 + 241, 242, 245, 243, 239, 236, 231, 226, 217, 209, 195, 173, 155, 125, 132, 119, 32.29762 + 111, 89, 101, 82, 80, 48, 89, 74, 81, 108, 118, 82, 46, 33, 37, 45, 32.29763 + 255, 255, 255, 255, 255, 255, 255, 255, 67, 116, 125, 132, 109, 103, 73, 67, 32.29764 + 91, 105, 92, 116, 159, 170, 193, 188, 211, 220, 222, 233, 232, 240, 242, 243, 32.29765 + 242, 241, 240, 238, 236, 234, 219, 220, 217, 211, 217, 228, 231, 224, 215, 218, 32.29766 + 219, 222, 222, 221, 220, 217, 212, 211, 209, 202, 192, 188, 190, 195, 178, 172, 32.29767 + 176, 192, 203, 207, 211, 219, 208, 211, 214, 216, 218, 219, 221, 223, 226, 226, 32.29768 + 229, 234, 239, 240, 236, 232, 231, 230, 230, 231, 234, 238, 240, 242, 240, 240, 32.29769 + 241, 241, 241, 241, 241, 241, 245, 242, 239, 236, 232, 225, 217, 210, 186, 177, 32.29770 + 160, 120, 126, 125, 119, 91, 135, 101, 86, 50, 90, 79, 90, 114, 131, 77, 32.29771 + 58, 55, 27, 29, 255, 255, 255, 255, 255, 255, 255, 255, 76, 118, 126, 137, 32.29772 + 118, 109, 54, 66, 102, 96, 93, 109, 160, 170, 183, 192, 204, 215, 223, 231, 32.29773 + 239, 244, 244, 243, 242, 242, 242, 240, 236, 230, 222, 223, 220, 216, 223, 236, 32.29774 + 235, 224, 221, 224, 221, 213, 210, 215, 217, 212, 182, 169, 160, 160, 160, 156, 32.29775 + 154, 156, 170, 159, 149, 150, 160, 169, 172, 169, 183, 191, 201, 205, 205, 207, 32.29776 + 214, 223, 221, 223, 226, 231, 236, 241, 243, 241, 242, 241, 239, 236, 234, 234, 32.29777 + 238, 242, 241, 241, 241, 241, 241, 241, 241, 241, 238, 242, 242, 236, 228, 224, 32.29778 + 215, 207, 189, 177, 145, 129, 122, 123, 120, 85, 120, 115, 65, 76, 91, 87, 32.29779 + 85, 115, 110, 130, 56, 77, 45, 42, 255, 255, 255, 255, 255, 255, 255, 187, 32.29780 + 102, 118, 125, 103, 114, 97, 58, 64, 99, 99, 103, 116, 161, 168, 182, 192, 32.29781 + 204, 215, 223, 231, 239, 245, 245, 243, 241, 242, 242, 241, 237, 232, 222, 222, 32.29782 + 226, 233, 234, 231, 227, 224, 215, 214, 212, 215, 217, 213, 193, 169, 137, 141, 32.29783 + 159, 183, 200, 206, 210, 213, 210, 201, 189, 186, 190, 192, 188, 181, 146, 134, 32.29784 + 132, 153, 188, 211, 214, 209, 207, 213, 222, 230, 239, 242, 240, 237, 241, 241, 32.29785 + 239, 237, 235, 236, 240, 243, 241, 241, 241, 241, 241, 241, 241, 240, 238, 242, 32.29786 + 241, 236, 228, 223, 216, 206, 187, 174, 142, 128, 120, 121, 117, 85, 102, 118, 32.29787 + 68, 44, 60, 85, 103, 118, 130, 109, 39, 48, 46, 38, 114, 255, 255, 255, 32.29788 + 255, 255, 255, 38, 134, 170, 138, 80, 125, 62, 68, 62, 88, 92, 100, 110, 32.29789 + 153, 162, 181, 191, 203, 214, 223, 231, 238, 243, 243, 243, 242, 242, 242, 240, 32.29790 + 237, 233, 226, 223, 231, 244, 241, 228, 224, 230, 216, 215, 211, 210, 204, 190, 32.29791 + 160, 135, 135, 147, 172, 197, 213, 217, 217, 219, 223, 217, 209, 210, 214, 215, 32.29792 + 209, 201, 207, 185, 158, 144, 146, 164, 186, 200, 207, 208, 210, 214, 223, 231, 32.29793 + 236, 240, 238, 239, 239, 238, 237, 237, 240, 243, 241, 241, 241, 241, 241, 241, 32.29794 + 241, 240, 238, 241, 241, 235, 229, 223, 214, 204, 185, 171, 142, 130, 122, 121, 32.29795 + 118, 86, 84, 107, 74, 43, 54, 67, 87, 90, 145, 114, 72, 36, 49, 39, 32.29796 + 42, 255, 255, 255, 255, 255, 255, 72, 121, 148, 146, 78, 97, 102, 102, 79, 32.29797 + 94, 98, 104, 112, 158, 176, 179, 190, 203, 214, 222, 230, 237, 242, 243, 242, 32.29798 + 241, 242, 242, 240, 237, 232, 233, 230, 233, 240, 240, 233, 232, 235, 221, 218, 32.29799 + 207, 189, 165, 148, 136, 130, 128, 133, 144, 151, 153, 152, 153, 155, 149, 144, 32.29800 + 142, 146, 152, 155, 153, 147, 137, 146, 150, 142, 131, 133, 152, 173, 186, 188, 32.29801 + 193, 202, 215, 228, 237, 244, 238, 240, 241, 239, 237, 237, 238, 240, 241, 241, 32.29802 + 241, 241, 241, 241, 241, 241, 239, 241, 240, 234, 229, 223, 213, 199, 183, 171, 32.29803 + 143, 134, 126, 122, 119, 89, 96, 97, 73, 63, 67, 49, 67, 82, 116, 119, 32.29804 + 129, 43, 46, 38, 43, 255, 255, 255, 255, 255, 199, 51, 125, 163, 111, 91, 32.29805 + 102, 89, 113, 80, 91, 98, 103, 104, 150, 173, 178, 189, 202, 214, 222, 229, 32.29806 + 235, 240, 242, 241, 240, 240, 241, 239, 236, 233, 234, 237, 238, 235, 235, 238, 32.29807 + 229, 213, 199, 188, 170, 149, 133, 126, 131, 140, 152, 157, 162, 164, 165, 169, 32.29808 + 174, 177, 179, 173, 168, 170, 176, 180, 180, 176, 172, 170, 165, 159, 153, 144, 32.29809 + 136, 132, 143, 151, 166, 185, 205, 222, 231, 237, 238, 241, 242, 241, 238, 236, 32.29810 + 236, 237, 241, 241, 241, 241, 241, 241, 241, 241, 239, 241, 239, 233, 229, 222, 32.29811 + 210, 197, 181, 168, 143, 135, 126, 120, 117, 88, 127, 109, 70, 64, 59, 50, 32.29812 + 78, 105, 85, 101, 135, 53, 49, 35, 36, 38, 255, 255, 255, 255, 32, 72, 32.29813 + 135, 145, 135, 124, 75, 86, 123, 78, 84, 99, 108, 102, 139, 162, 177, 188, 32.29814 + 201, 213, 221, 227, 234, 238, 241, 240, 239, 240, 241, 239, 236, 234, 233, 242, 32.29815 + 242, 238, 236, 232, 212, 186, 168, 151, 133, 128, 132, 138, 144, 150, 153, 161, 32.29816 + 167, 170, 176, 183, 185, 185, 171, 167, 163, 164, 169, 175, 177, 177, 186, 173, 32.29817 + 158, 152, 154, 157, 155, 152, 138, 138, 141, 151, 169, 190, 207, 219, 236, 240, 32.29818 + 242, 242, 240, 237, 236, 236, 241, 241, 241, 241, 241, 241, 241, 241, 240, 241, 32.29819 + 238, 234, 228, 223, 208, 194, 177, 164, 140, 134, 123, 115, 111, 83, 139, 139, 32.29820 + 92, 74, 46, 68, 88, 95, 109, 98, 111, 78, 69, 42, 27, 48, 255, 255, 32.29821 + 255, 183, 49, 72, 124, 132, 136, 139, 145, 130, 169, 103, 93, 108, 122, 114, 32.29822 + 148, 169, 176, 187, 200, 213, 221, 226, 232, 237, 240, 239, 239, 239, 240, 239, 32.29823 + 236, 233, 238, 243, 245, 243, 235, 220, 197, 179, 171, 157, 148, 151, 156, 159, 32.29824 + 162, 166, 167, 174, 181, 182, 189, 195, 194, 187, 188, 185, 183, 185, 190, 197, 32.29825 + 199, 199, 192, 194, 196, 193, 185, 172, 159, 152, 160, 154, 148, 149, 161, 178, 32.29826 + 195, 208, 232, 237, 241, 242, 241, 240, 239, 239, 241, 241, 241, 241, 241, 241, 32.29827 + 241, 241, 240, 241, 238, 233, 228, 221, 207, 190, 174, 161, 139, 134, 123, 111, 32.29828 + 107, 81, 139, 170, 129, 113, 58, 94, 95, 84, 132, 112, 92, 100, 82, 59, 32.29829 + 25, 47, 255, 255, 255, 29, 56, 85, 107, 131, 197, 166, 185, 177, 198, 113, 32.29830 + 82, 93, 111, 106, 140, 160, 175, 186, 200, 213, 221, 226, 231, 234, 239, 238, 32.29831 + 237, 238, 240, 239, 236, 233, 247, 242, 243, 245, 233, 210, 195, 195, 194, 193, 32.29832 + 191, 189, 178, 170, 173, 184, 186, 191, 195, 199, 210, 219, 220, 213, 212, 208, 32.29833 + 207, 208, 210, 212, 212, 211, 216, 209, 200, 192, 188, 183, 174, 168, 162, 168, 32.29834 + 177, 189, 200, 206, 207, 207, 229, 234, 239, 242, 242, 242, 242, 242, 241, 241, 32.29835 + 241, 241, 241, 241, 241, 241, 240, 241, 237, 232, 229, 221, 206, 188, 176, 163, 32.29836 + 141, 137, 124, 112, 108, 82, 150, 188, 150, 148, 78, 119, 117, 113, 113, 112, 32.29837 + 79, 103, 73, 69, 28, 39, 108, 255, 255, 37, 76, 101, 134, 155, 167, 196, 32.29838 + 201, 185, 210, 132, 83, 89, 106, 107, 137, 159, 172, 184, 196, 212, 225, 223, 32.29839 + 222, 235, 237, 236, 234, 236, 238, 238, 237, 236, 239, 244, 247, 239, 220, 201, 32.29840 + 195, 198, 203, 204, 206, 206, 203, 201, 199, 198, 203, 206, 210, 216, 223, 229, 32.29841 + 232, 233, 225, 224, 224, 224, 224, 226, 227, 229, 221, 220, 216, 210, 205, 199, 32.29842 + 194, 193, 195, 198, 206, 211, 216, 219, 219, 221, 228, 235, 242, 244, 241, 239, 32.29843 + 240, 242, 240, 240, 240, 240, 240, 240, 240, 240, 241, 240, 236, 232, 230, 226, 32.29844 + 211, 196, 177, 172, 144, 131, 132, 118, 101, 86, 164, 193, 179, 179, 146, 114, 32.29845 + 154, 169, 195, 155, 165, 149, 100, 54, 59, 27, 45, 255, 255, 36, 70, 169, 32.29846 + 179, 134, 177, 200, 206, 218, 213, 140, 77, 93, 105, 110, 132, 159, 171, 185, 32.29847 + 197, 210, 224, 223, 221, 233, 236, 233, 232, 233, 236, 238, 238, 237, 241, 244, 32.29848 + 244, 237, 221, 207, 206, 212, 219, 220, 223, 224, 221, 220, 219, 218, 215, 216, 32.29849 + 219, 224, 228, 232, 233, 233, 230, 228, 227, 228, 229, 230, 231, 233, 234, 234, 32.29850 + 232, 230, 226, 224, 222, 221, 215, 219, 223, 227, 229, 231, 230, 230, 230, 236, 32.29851 + 242, 243, 241, 239, 240, 242, 240, 240, 240, 240, 240, 240, 240, 240, 241, 240, 32.29852 + 237, 231, 227, 223, 210, 198, 172, 166, 143, 129, 129, 119, 105, 98, 186, 212, 32.29853 + 199, 206, 185, 159, 187, 191, 216, 212, 183, 166, 173, 99, 52, 50, 39, 255, 32.29854 + 255, 37, 87, 223, 213, 193, 146, 202, 203, 225, 220, 156, 69, 95, 100, 113, 32.29855 + 125, 162, 171, 186, 196, 208, 221, 222, 221, 232, 233, 231, 228, 229, 234, 237, 32.29856 + 238, 239, 243, 242, 240, 235, 223, 215, 218, 226, 229, 231, 233, 235, 234, 234, 32.29857 + 234, 233, 228, 228, 230, 232, 234, 235, 234, 233, 233, 233, 232, 233, 233, 235, 32.29858 + 237, 238, 240, 240, 240, 239, 238, 237, 237, 238, 229, 231, 233, 235, 236, 235, 32.29859 + 234, 232, 232, 236, 242, 243, 241, 239, 240, 242, 240, 240, 240, 240, 240, 239, 32.29860 + 239, 239, 240, 242, 238, 231, 224, 218, 208, 199, 169, 161, 143, 128, 124, 116, 32.29861 + 108, 114, 202, 221, 215, 230, 222, 202, 215, 208, 206, 223, 190, 175, 212, 152, 32.29862 + 85, 50, 34, 255, 255, 37, 94, 218, 244, 217, 188, 166, 197, 214, 228, 178, 32.29863 + 65, 95, 94, 118, 122, 167, 170, 186, 196, 206, 219, 221, 221, 231, 230, 227, 32.29864 + 225, 227, 231, 237, 239, 241, 242, 240, 239, 236, 228, 223, 225, 232, 233, 235, 32.29865 + 238, 240, 239, 240, 240, 240, 238, 236, 238, 238, 239, 238, 238, 237, 237, 236, 32.29866 + 235, 236, 237, 239, 240, 242, 243, 243, 241, 240, 239, 238, 237, 237, 234, 235, 32.29867 + 237, 238, 238, 236, 234, 233, 234, 237, 241, 242, 241, 240, 241, 242, 240, 240, 32.29868 + 240, 239, 239, 239, 239, 238, 239, 242, 239, 230, 221, 215, 207, 200, 169, 157, 32.29869 + 144, 125, 119, 114, 109, 130, 206, 223, 222, 237, 238, 224, 229, 217, 212, 218, 32.29870 + 219, 207, 213, 208, 176, 49, 35, 111, 255, 37, 54, 244, 210, 240, 206, 192, 32.29871 + 163, 229, 231, 200, 66, 90, 91, 121, 123, 171, 169, 186, 195, 204, 217, 220, 32.29872 + 221, 229, 228, 226, 224, 225, 230, 236, 240, 240, 240, 239, 239, 240, 236, 230, 32.29873 + 229, 233, 239, 242, 245, 245, 245, 244, 245, 246, 240, 239, 240, 242, 242, 242, 32.29874 + 242, 240, 240, 239, 238, 239, 240, 242, 243, 244, 246, 245, 244, 243, 242, 241, 32.29875 + 240, 240, 239, 240, 242, 242, 241, 240, 239, 238, 237, 239, 242, 243, 242, 242, 32.29876 + 242, 242, 241, 241, 241, 240, 240, 239, 239, 238, 239, 242, 239, 229, 219, 213, 32.29877 + 206, 198, 172, 153, 146, 125, 117, 112, 108, 143, 212, 229, 233, 242, 241, 233, 32.29878 + 236, 228, 232, 222, 236, 231, 212, 228, 224, 58, 39, 42, 255, 39, 53, 230, 32.29879 + 234, 218, 224, 179, 205, 212, 224, 217, 76, 85, 94, 121, 127, 169, 167, 187, 32.29880 + 195, 201, 214, 220, 221, 228, 227, 226, 225, 227, 231, 237, 240, 240, 240, 238, 32.29881 + 238, 242, 240, 235, 232, 233, 242, 245, 245, 244, 243, 243, 244, 245, 240, 240, 32.29882 + 241, 242, 244, 244, 244, 242, 241, 240, 239, 240, 241, 243, 244, 244, 242, 242, 32.29883 + 242, 243, 244, 244, 245, 245, 241, 242, 242, 242, 242, 241, 240, 240, 239, 240, 32.29884 + 241, 242, 243, 243, 242, 242, 241, 241, 240, 240, 239, 238, 238, 238, 239, 241, 32.29885 + 237, 229, 220, 214, 204, 194, 176, 150, 147, 125, 116, 115, 108, 153, 216, 231, 32.29886 + 239, 240, 239, 237, 237, 237, 232, 223, 221, 229, 226, 222, 219, 83, 43, 43, 32.29887 + 255, 41, 63, 233, 234, 246, 197, 189, 233, 210, 210, 226, 86, 81, 98, 121, 32.29888 + 127, 160, 167, 186, 195, 200, 212, 219, 221, 227, 226, 225, 225, 229, 233, 238, 32.29889 + 240, 238, 240, 236, 237, 242, 244, 241, 238, 238, 242, 243, 243, 241, 239, 238, 32.29890 + 239, 240, 239, 239, 241, 242, 242, 243, 242, 242, 240, 239, 239, 240, 240, 242, 32.29891 + 243, 243, 238, 236, 238, 240, 240, 242, 243, 244, 242, 241, 242, 241, 240, 238, 32.29892 + 237, 237, 240, 241, 241, 242, 243, 243, 243, 242, 241, 241, 240, 240, 239, 238, 32.29893 + 237, 237, 239, 239, 236, 228, 222, 216, 203, 190, 178, 147, 147, 125, 118, 119, 32.29894 + 110, 162, 218, 231, 241, 237, 236, 240, 238, 238, 234, 232, 220, 236, 244, 232, 32.29895 + 228, 104, 48, 43, 255, 42, 50, 239, 239, 227, 230, 179, 232, 234, 198, 228, 32.29896 + 93, 78, 103, 120, 128, 154, 167, 187, 195, 198, 210, 218, 221, 226, 226, 227, 32.29897 + 228, 231, 235, 238, 239, 237, 241, 237, 237, 242, 246, 244, 243, 244, 245, 245, 32.29898 + 244, 242, 240, 239, 240, 241, 240, 241, 241, 241, 242, 241, 241, 240, 241, 240, 32.29899 + 239, 240, 240, 242, 243, 243, 240, 239, 239, 240, 240, 241, 242, 241, 246, 245, 32.29900 + 245, 242, 242, 239, 238, 238, 241, 240, 240, 240, 242, 243, 243, 242, 240, 241, 32.29901 + 240, 239, 238, 237, 236, 236, 240, 239, 233, 228, 225, 218, 204, 188, 180, 145, 32.29902 + 148, 126, 120, 122, 113, 167, 221, 231, 242, 238, 237, 245, 241, 241, 234, 228, 32.29903 + 225, 237, 228, 231, 239, 82, 52, 46, 255, 43, 34, 234, 233, 226, 211, 183, 32.29904 + 221, 225, 198, 184, 109, 78, 97, 108, 134, 157, 170, 186, 193, 198, 212, 218, 32.29905 + 218, 224, 226, 228, 230, 234, 237, 240, 239, 239, 239, 239, 241, 242, 242, 242, 32.29906 + 241, 242, 243, 243, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 32.29907 + 241, 241, 242, 241, 240, 239, 239, 240, 242, 242, 241, 240, 241, 241, 241, 241, 32.29908 + 242, 242, 242, 242, 242, 242, 241, 241, 240, 241, 241, 241, 240, 239, 239, 239, 32.29909 + 240, 240, 241, 238, 236, 237, 237, 235, 236, 240, 240, 240, 237, 231, 222, 213, 32.29910 + 207, 201, 179, 162, 155, 112, 120, 119, 128, 174, 218, 239, 238, 236, 242, 237, 32.29911 + 232, 247, 233, 229, 215, 231, 239, 233, 228, 82, 50, 45, 255, 42, 49, 230, 32.29912 + 239, 232, 215, 170, 203, 202, 205, 171, 103, 81, 91, 124, 139, 165, 173, 187, 32.29913 + 193, 197, 211, 217, 217, 224, 226, 228, 231, 234, 236, 237, 235, 235, 239, 240, 32.29914 + 241, 242, 243, 243, 241, 241, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 32.29915 + 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 240, 241, 241, 241, 241, 32.29916 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29917 + 240, 240, 240, 239, 239, 240, 241, 237, 236, 238, 238, 235, 237, 241, 240, 239, 32.29918 + 236, 231, 223, 216, 208, 202, 184, 162, 155, 119, 128, 122, 134, 176, 207, 221, 32.29919 + 228, 230, 234, 234, 236, 245, 230, 223, 220, 236, 234, 231, 231, 86, 49, 44, 32.29920 + 255, 41, 55, 218, 234, 235, 207, 169, 207, 207, 225, 159, 110, 84, 80, 125, 32.29921 + 130, 157, 175, 190, 194, 197, 209, 216, 216, 223, 226, 228, 231, 233, 234, 234, 32.29922 + 233, 234, 239, 239, 240, 241, 242, 242, 241, 241, 243, 243, 243, 243, 243, 243, 32.29923 + 243, 243, 242, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 240, 240, 241, 32.29924 + 241, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29925 + 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 237, 236, 239, 239, 236, 32.29926 + 238, 241, 241, 239, 235, 230, 223, 216, 207, 202, 181, 155, 147, 119, 127, 118, 32.29927 + 137, 177, 205, 209, 221, 229, 229, 235, 241, 238, 229, 214, 224, 242, 229, 231, 32.29928 + 236, 87, 49, 44, 255, 40, 55, 220, 228, 234, 182, 183, 221, 229, 231, 144, 32.29929 + 130, 85, 76, 115, 123, 151, 175, 191, 195, 197, 209, 215, 217, 223, 227, 230, 32.29930 + 233, 234, 233, 232, 232, 233, 238, 238, 239, 241, 241, 242, 241, 241, 243, 243, 32.29931 + 243, 243, 243, 243, 243, 243, 242, 242, 242, 242, 242, 242, 242, 242, 242, 241, 32.29932 + 240, 240, 240, 240, 241, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29933 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 241, 242, 240, 240, 240, 237, 32.29934 + 237, 239, 239, 237, 238, 242, 241, 237, 234, 230, 224, 217, 208, 202, 178, 151, 32.29935 + 141, 121, 122, 112, 146, 188, 215, 211, 225, 236, 230, 236, 243, 233, 231, 205, 32.29936 + 226, 244, 227, 236, 237, 84, 51, 46, 255, 40, 56, 238, 233, 240, 163, 204, 32.29937 + 226, 236, 221, 135, 156, 91, 82, 105, 129, 156, 175, 190, 195, 198, 209, 215, 32.29938 + 216, 223, 227, 231, 235, 235, 233, 231, 231, 233, 236, 237, 238, 240, 240, 240, 32.29939 + 240, 241, 243, 243, 243, 243, 243, 243, 243, 243, 241, 241, 241, 241, 241, 241, 32.29940 + 241, 241, 238, 238, 237, 236, 236, 237, 238, 238, 241, 241, 241, 241, 241, 241, 32.29941 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 241, 241, 32.29942 + 239, 238, 240, 236, 236, 239, 239, 237, 238, 241, 241, 238, 232, 229, 224, 217, 32.29943 + 209, 201, 179, 156, 145, 125, 120, 114, 166, 206, 220, 215, 230, 240, 234, 238, 32.29944 + 245, 233, 232, 200, 225, 242, 229, 241, 230, 74, 52, 255, 255, 39, 44, 238, 32.29945 + 236, 241, 175, 229, 230, 236, 225, 163, 185, 110, 85, 100, 126, 155, 171, 189, 32.29946 + 195, 198, 211, 218, 218, 222, 225, 230, 235, 236, 232, 230, 231, 233, 235, 236, 32.29947 + 236, 239, 240, 240, 241, 240, 241, 242, 242, 242, 242, 242, 242, 242, 239, 239, 32.29948 + 239, 239, 239, 239, 239, 239, 235, 234, 233, 233, 233, 233, 234, 235, 241, 241, 32.29949 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 32.29950 + 241, 242, 240, 239, 236, 234, 237, 235, 234, 238, 239, 236, 237, 240, 241, 236, 32.29951 + 230, 228, 224, 218, 209, 200, 177, 157, 142, 123, 117, 119, 185, 215, 215, 219, 32.29952 + 230, 239, 237, 240, 243, 239, 230, 200, 226, 237, 231, 240, 216, 64, 51, 255, 32.29953 + 255, 39, 38, 222, 228, 226, 203, 240, 235, 239, 236, 205, 200, 134, 78, 102, 32.29954 + 116, 150, 168, 187, 195, 200, 213, 219, 218, 222, 222, 228, 234, 234, 230, 229, 32.29955 + 229, 233, 233, 235, 236, 237, 239, 240, 241, 241, 240, 240, 241, 241, 241, 241, 32.29956 + 241, 241, 238, 238, 238, 238, 238, 238, 238, 238, 237, 236, 236, 235, 235, 236, 32.29957 + 236, 237, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29958 + 241, 241, 242, 242, 241, 242, 239, 236, 232, 230, 234, 233, 234, 237, 239, 236, 32.29959 + 236, 238, 240, 236, 229, 226, 225, 218, 209, 200, 173, 155, 137, 119, 119, 130, 32.29960 + 200, 213, 210, 225, 232, 237, 242, 239, 237, 244, 223, 203, 230, 236, 232, 235, 32.29961 + 198, 58, 49, 255, 255, 39, 50, 212, 224, 210, 224, 234, 233, 236, 234, 226, 32.29962 + 195, 147, 71, 112, 114, 155, 166, 186, 195, 201, 216, 219, 217, 221, 219, 225, 32.29963 + 231, 232, 228, 226, 228, 232, 232, 233, 234, 237, 238, 239, 240, 241, 239, 239, 32.29964 + 239, 240, 240, 240, 240, 240, 237, 237, 237, 237, 237, 237, 237, 237, 242, 242, 32.29965 + 241, 240, 240, 241, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29966 + 241, 241, 241, 241, 241, 241, 242, 242, 243, 241, 238, 234, 230, 228, 233, 231, 32.29967 + 233, 237, 237, 235, 234, 237, 240, 234, 228, 226, 224, 219, 208, 199, 176, 159, 32.29968 + 137, 122, 127, 146, 215, 215, 210, 233, 237, 237, 245, 238, 233, 247, 217, 207, 32.29969 + 235, 235, 232, 230, 185, 56, 117, 255, 255, 39, 57, 201, 202, 181, 223, 238, 32.29970 + 240, 237, 243, 229, 200, 177, 73, 100, 105, 156, 167, 181, 195, 204, 211, 216, 32.29971 + 218, 217, 224, 225, 229, 233, 231, 226, 226, 229, 226, 228, 232, 236, 239, 240, 32.29972 + 240, 239, 238, 238, 238, 238, 238, 237, 237, 237, 241, 241, 241, 241, 241, 241, 32.29973 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 32.29974 + 242, 242, 241, 241, 240, 239, 238, 238, 238, 238, 237, 239, 238, 236, 237, 239, 32.29975 + 237, 231, 229, 232, 235, 237, 238, 239, 238, 237, 240, 236, 230, 225, 222, 219, 32.29976 + 206, 193, 181, 156, 140, 104, 138, 173, 209, 228, 233, 236, 238, 241, 242, 243, 32.29977 + 242, 242, 224, 219, 228, 237, 239, 229, 103, 47, 255, 255, 255, 183, 46, 184, 32.29978 + 202, 159, 224, 237, 234, 239, 241, 245, 161, 209, 70, 84, 121, 138, 167, 179, 32.29979 + 192, 199, 206, 213, 217, 217, 221, 222, 226, 230, 228, 223, 222, 225, 225, 228, 32.29980 + 231, 235, 237, 238, 238, 239, 235, 237, 237, 238, 239, 238, 238, 237, 241, 241, 32.29981 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.29982 + 240, 241, 241, 242, 242, 242, 240, 240, 239, 238, 238, 238, 239, 239, 238, 241, 32.29983 + 239, 238, 238, 239, 235, 230, 228, 230, 234, 238, 239, 239, 238, 237, 237, 234, 32.29984 + 227, 221, 218, 215, 203, 191, 176, 146, 143, 122, 122, 189, 219, 228, 235, 238, 32.29985 + 240, 241, 242, 243, 242, 241, 219, 221, 237, 241, 235, 227, 82, 40, 255, 255, 32.29986 + 255, 255, 32, 152, 206, 147, 226, 237, 232, 239, 238, 195, 208, 197, 121, 69, 32.29987 + 122, 133, 167, 178, 189, 194, 200, 209, 214, 217, 218, 220, 223, 226, 225, 219, 32.29988 + 218, 221, 224, 226, 229, 233, 235, 235, 236, 237, 232, 234, 237, 239, 241, 240, 32.29989 + 240, 238, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.29990 + 241, 241, 240, 240, 241, 241, 241, 241, 242, 242, 239, 239, 238, 238, 238, 239, 32.29991 + 240, 240, 240, 242, 241, 240, 239, 239, 234, 228, 225, 229, 234, 239, 241, 240, 32.29992 + 239, 237, 238, 233, 225, 218, 215, 213, 203, 191, 173, 137, 143, 126, 108, 205, 32.29993 + 227, 231, 238, 240, 241, 241, 242, 242, 242, 242, 218, 226, 241, 238, 226, 201, 32.29994 + 62, 255, 255, 255, 255, 255, 25, 108, 215, 161, 224, 233, 236, 227, 206, 161, 32.29995 + 247, 190, 191, 67, 114, 133, 162, 174, 187, 194, 198, 206, 213, 215, 217, 218, 32.29996 + 221, 224, 222, 216, 215, 218, 223, 225, 227, 229, 231, 233, 233, 234, 229, 231, 32.29997 + 236, 240, 242, 242, 241, 239, 241, 241, 240, 241, 240, 241, 240, 241, 240, 241, 32.29998 + 240, 241, 240, 241, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 238, 238, 32.29999 + 238, 238, 239, 240, 241, 241, 240, 243, 242, 239, 239, 239, 233, 226, 225, 229, 32.30000 + 234, 239, 242, 241, 238, 235, 238, 234, 225, 219, 216, 214, 203, 191, 171, 136, 32.30001 + 136, 110, 121, 215, 226, 234, 239, 240, 240, 241, 241, 242, 242, 241, 225, 233, 32.30002 + 235, 230, 221, 145, 54, 255, 255, 255, 255, 255, 28, 66, 207, 189, 215, 224, 32.30003 + 236, 212, 174, 202, 201, 225, 224, 110, 102, 129, 153, 167, 184, 192, 197, 203, 32.30004 + 209, 212, 215, 217, 220, 224, 222, 216, 215, 218, 222, 223, 225, 227, 228, 230, 32.30005 + 231, 232, 227, 230, 235, 240, 242, 242, 241, 240, 240, 240, 240, 240, 240, 240, 32.30006 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 32.30007 + 241, 241, 238, 238, 238, 238, 239, 240, 241, 241, 240, 241, 240, 238, 237, 238, 32.30008 + 233, 226, 225, 229, 235, 239, 242, 241, 238, 234, 236, 231, 223, 217, 215, 212, 32.30009 + 201, 188, 165, 140, 132, 104, 169, 225, 218, 227, 239, 239, 240, 241, 241, 241, 32.30010 + 240, 240, 229, 235, 231, 227, 219, 87, 56, 255, 255, 255, 255, 255, 255, 38, 32.30011 + 163, 196, 195, 210, 217, 201, 198, 221, 196, 232, 238, 193, 82, 133, 143, 159, 32.30012 + 178, 187, 193, 200, 205, 210, 214, 215, 218, 223, 221, 216, 214, 218, 220, 221, 32.30013 + 222, 224, 226, 227, 229, 229, 227, 230, 234, 239, 240, 242, 242, 241, 240, 240, 32.30014 + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 242, 242, 32.30015 + 241, 241, 241, 241, 240, 240, 239, 239, 238, 238, 238, 239, 240, 240, 238, 239, 32.30016 + 238, 234, 234, 235, 233, 227, 227, 230, 234, 238, 241, 239, 237, 234, 229, 226, 32.30017 + 219, 213, 210, 206, 195, 182, 157, 142, 128, 129, 221, 234, 216, 220, 236, 237, 32.30018 + 238, 241, 241, 241, 239, 238, 224, 229, 233, 222, 190, 55, 255, 255, 255, 255, 32.30019 + 255, 255, 255, 27, 93, 169, 172, 191, 183, 201, 220, 200, 228, 220, 239, 238, 32.30020 + 72, 133, 136, 151, 169, 179, 185, 193, 202, 208, 210, 211, 216, 220, 220, 215, 32.30021 + 215, 218, 219, 220, 221, 222, 224, 225, 227, 228, 229, 232, 234, 238, 240, 241, 32.30022 + 242, 242, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.30023 + 240, 240, 242, 242, 242, 241, 241, 240, 240, 240, 240, 240, 239, 238, 238, 238, 32.30024 + 239, 239, 237, 238, 235, 231, 231, 234, 233, 229, 230, 232, 235, 237, 239, 238, 32.30025 + 236, 235, 225, 223, 218, 213, 210, 205, 191, 178, 157, 137, 115, 167, 238, 235, 32.30026 + 224, 220, 231, 234, 237, 241, 242, 240, 239, 237, 219, 217, 234, 197, 124, 48, 32.30027 + 255, 255, 255, 255, 255, 255, 255, 255, 40, 138, 156, 177, 155, 204, 194, 205, 32.30028 + 213, 237, 222, 221, 84, 112, 131, 146, 163, 171, 177, 188, 201, 209, 208, 209, 32.30029 + 214, 219, 219, 215, 215, 219, 219, 219, 220, 219, 222, 223, 224, 227, 230, 231, 32.30030 + 233, 236, 238, 240, 242, 242, 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 32.30031 + 240, 240, 240, 240, 240, 240, 241, 242, 242, 241, 241, 240, 240, 240, 241, 241, 32.30032 + 240, 239, 238, 238, 238, 237, 236, 236, 232, 228, 228, 233, 233, 231, 232, 234, 32.30033 + 236, 237, 236, 236, 234, 233, 224, 223, 219, 214, 211, 205, 192, 177, 162, 132, 32.30034 + 101, 192, 230, 231, 234, 227, 229, 233, 237, 241, 241, 239, 235, 232, 215, 207, 32.30035 + 229, 169, 62, 120, 255, 255, 255, 255, 255, 255, 255, 255, 51, 58, 127, 175, 32.30036 + 152, 185, 163, 221, 220, 224, 231, 220, 53, 103, 113, 151, 163, 172, 184, 189, 32.30037 + 203, 204, 202, 206, 213, 219, 219, 216, 214, 210, 219, 218, 217, 215, 215, 216, 32.30038 + 218, 220, 221, 227, 234, 239, 238, 238, 238, 241, 242, 242, 242, 242, 242, 242, 32.30039 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 240, 241, 241, 242, 32.30040 + 242, 242, 245, 243, 243, 240, 237, 235, 234, 232, 236, 235, 233, 231, 230, 229, 32.30041 + 230, 231, 233, 232, 232, 231, 232, 231, 229, 227, 223, 222, 216, 209, 204, 199, 32.30042 + 182, 165, 149, 125, 102, 189, 238, 228, 249, 219, 230, 226, 221, 253, 213, 230, 32.30043 + 227, 198, 194, 230, 174, 76, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30044 + 255, 31, 80, 129, 115, 192, 218, 233, 228, 236, 241, 196, 62, 96, 112, 149, 32.30045 + 156, 163, 173, 180, 197, 200, 204, 209, 213, 217, 219, 219, 217, 216, 218, 217, 32.30046 + 216, 214, 213, 215, 215, 218, 219, 225, 232, 236, 238, 238, 239, 240, 242, 242, 32.30047 + 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.30048 + 240, 241, 241, 242, 242, 242, 243, 242, 240, 239, 236, 234, 231, 230, 234, 233, 32.30049 + 232, 230, 230, 229, 231, 231, 233, 232, 231, 230, 231, 229, 226, 223, 220, 219, 32.30050 + 212, 204, 198, 188, 171, 154, 146, 120, 132, 208, 227, 248, 233, 222, 219, 234, 32.30051 + 217, 195, 227, 219, 212, 178, 227, 186, 104, 46, 113, 255, 255, 255, 255, 255, 32.30052 + 255, 255, 255, 255, 255, 49, 88, 141, 105, 199, 200, 207, 228, 240, 206, 120, 32.30053 + 42, 62, 101, 139, 148, 155, 164, 170, 188, 192, 204, 206, 210, 212, 215, 218, 32.30054 + 219, 220, 217, 215, 214, 213, 213, 215, 215, 219, 218, 223, 229, 234, 237, 238, 32.30055 + 239, 241, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 32.30056 + 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 242, 241, 239, 238, 235, 234, 32.30057 + 230, 230, 233, 232, 231, 230, 230, 229, 229, 229, 231, 232, 230, 231, 230, 227, 32.30058 + 222, 219, 218, 216, 211, 203, 196, 185, 167, 151, 142, 117, 114, 204, 219, 242, 32.30059 + 236, 245, 203, 224, 184, 219, 187, 198, 178, 208, 178, 106, 45, 39, 255, 255, 32.30060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 47, 125, 93, 200, 221, 229, 32.30061 + 233, 219, 137, 65, 111, 255, 83, 126, 141, 152, 160, 165, 179, 182, 196, 199, 32.30062 + 205, 209, 214, 217, 218, 218, 216, 214, 213, 213, 214, 215, 218, 220, 217, 221, 32.30063 + 226, 232, 236, 237, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30064 + 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 242, 241, 32.30065 + 239, 238, 236, 234, 231, 231, 231, 231, 230, 230, 229, 229, 229, 229, 230, 229, 32.30066 + 229, 228, 227, 224, 218, 213, 213, 209, 205, 198, 191, 178, 162, 149, 136, 119, 32.30067 + 62, 173, 238, 222, 242, 245, 216, 189, 198, 224, 187, 170, 200, 200, 80, 46, 32.30068 + 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 89, 32.30069 + 75, 201, 199, 219, 202, 178, 88, 63, 255, 255, 73, 117, 134, 144, 152, 156, 32.30070 + 171, 174, 186, 192, 200, 209, 215, 217, 218, 216, 215, 214, 213, 213, 214, 216, 32.30071 + 219, 221, 218, 220, 224, 229, 234, 238, 239, 240, 241, 241, 241, 241, 241, 241, 32.30072 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 32.30073 + 242, 242, 243, 242, 240, 239, 237, 236, 233, 233, 229, 229, 230, 229, 229, 228, 32.30074 + 228, 227, 228, 227, 225, 224, 223, 220, 214, 210, 205, 201, 194, 188, 178, 164, 32.30075 + 148, 138, 131, 112, 48, 111, 239, 230, 233, 226, 211, 182, 171, 183, 174, 181, 32.30076 + 167, 95, 45, 34, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30077 + 255, 255, 255, 33, 41, 164, 173, 205, 181, 136, 50, 255, 255, 255, 66, 109, 32.30078 + 124, 132, 138, 143, 162, 167, 178, 185, 195, 205, 213, 217, 217, 215, 213, 212, 32.30079 + 212, 212, 214, 216, 219, 221, 219, 220, 222, 227, 232, 237, 237, 237, 240, 240, 32.30080 + 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.30081 + 240, 241, 241, 242, 242, 242, 243, 242, 241, 240, 238, 237, 234, 234, 227, 228, 32.30082 + 229, 229, 228, 228, 227, 227, 227, 225, 222, 220, 219, 217, 212, 208, 206, 198, 32.30083 + 190, 183, 171, 154, 140, 134, 133, 83, 64, 35, 173, 240, 226, 235, 205, 193, 32.30084 + 131, 179, 171, 165, 73, 33, 49, 31, 255, 255, 255, 255, 255, 255, 255, 255, 32.30085 + 255, 255, 255, 255, 255, 255, 255, 28, 55, 126, 174, 183, 155, 83, 104, 255, 32.30086 + 255, 255, 42, 92, 113, 127, 135, 138, 153, 155, 171, 177, 186, 196, 203, 210, 32.30087 + 212, 212, 210, 209, 209, 209, 211, 214, 217, 219, 220, 220, 221, 225, 231, 236, 32.30088 + 235, 234, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 32.30089 + 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 241, 241, 239, 239, 237, 236, 32.30090 + 234, 233, 226, 226, 227, 229, 228, 227, 226, 225, 225, 222, 218, 216, 214, 213, 32.30091 + 210, 209, 200, 191, 183, 177, 167, 151, 141, 139, 128, 49, 66, 23, 93, 195, 32.30092 + 207, 230, 209, 163, 144, 169, 179, 85, 45, 44, 42, 31, 255, 255, 255, 255, 32.30093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 37, 15, 35, 36, 32.30094 + 50, 100, 255, 255, 255, 255, 16, 73, 107, 131, 141, 141, 147, 144, 165, 169, 32.30095 + 176, 184, 193, 202, 207, 208, 207, 206, 206, 207, 209, 212, 215, 217, 221, 220, 32.30096 + 221, 225, 231, 234, 234, 232, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 32.30097 + 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 240, 239, 32.30098 + 238, 237, 236, 235, 233, 232, 225, 226, 227, 228, 227, 227, 226, 225, 224, 220, 32.30099 + 216, 211, 211, 211, 210, 208, 187, 179, 171, 169, 160, 149, 142, 144, 114, 31, 32.30100 + 63, 70, 60, 126, 172, 189, 170, 121, 104, 154, 89, 51, 35, 34, 39, 255, 32.30101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30102 + 37, 33, 37, 37, 110, 255, 255, 255, 255, 255, 39, 38, 89, 126, 143, 132, 32.30103 + 145, 136, 157, 152, 161, 182, 196, 197, 199, 205, 209, 209, 209, 210, 211, 212, 32.30104 + 213, 215, 215, 219, 223, 227, 229, 231, 234, 236, 237, 238, 238, 239, 239, 240, 32.30105 + 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 32.30106 + 242, 242, 242, 241, 239, 236, 233, 230, 226, 225, 229, 227, 226, 226, 226, 225, 32.30107 + 222, 219, 225, 211, 206, 215, 214, 202, 197, 203, 191, 166, 184, 171, 160, 148, 32.30108 + 166, 140, 85, 93, 61, 61, 72, 58, 139, 145, 144, 124, 97, 69, 49, 40, 32.30109 + 39, 43, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 33, 32.30111 + 74, 107, 129, 123, 136, 130, 146, 153, 162, 173, 185, 196, 199, 200, 205, 205, 32.30112 + 206, 207, 208, 210, 212, 214, 215, 220, 224, 228, 230, 232, 235, 238, 238, 239, 32.30113 + 239, 239, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.30114 + 240, 241, 241, 242, 242, 242, 242, 241, 239, 237, 235, 233, 230, 230, 229, 227, 32.30115 + 225, 225, 225, 224, 222, 221, 220, 214, 211, 210, 208, 203, 197, 193, 181, 160, 32.30116 + 174, 162, 154, 145, 151, 117, 65, 72, 78, 58, 57, 48, 81, 94, 90, 80, 32.30117 + 64, 50, 41, 38, 39, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30119 + 255, 255, 49, 35, 61, 88, 121, 122, 138, 132, 137, 151, 162, 165, 174, 192, 32.30120 + 198, 195, 202, 204, 204, 206, 209, 211, 212, 213, 215, 220, 224, 228, 229, 234, 32.30121 + 237, 240, 240, 240, 240, 241, 241, 241, 242, 242, 241, 241, 241, 241, 241, 241, 32.30122 + 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 241, 241, 239, 239, 237, 236, 32.30123 + 234, 234, 230, 226, 223, 223, 222, 224, 222, 221, 215, 218, 215, 206, 201, 201, 32.30124 + 194, 183, 180, 163, 170, 160, 157, 152, 139, 92, 56, 58, 98, 57, 43, 46, 32.30125 + 36, 59, 48, 47, 44, 43, 41, 43, 42, 255, 255, 255, 255, 255, 255, 255, 32.30126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30127 + 255, 255, 255, 255, 255, 255, 255, 36, 52, 74, 116, 125, 141, 138, 134, 147, 32.30128 + 158, 163, 170, 183, 193, 195, 206, 208, 209, 210, 213, 214, 214, 215, 216, 220, 32.30129 + 224, 228, 230, 235, 239, 243, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 32.30130 + 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 241, 241, 32.30131 + 239, 238, 237, 236, 233, 233, 230, 226, 223, 221, 221, 222, 223, 222, 214, 215, 32.30132 + 212, 205, 199, 194, 187, 179, 180, 169, 169, 164, 162, 155, 124, 72, 61, 61, 32.30133 + 93, 50, 33, 48, 31, 52, 42, 45, 46, 48, 48, 116, 255, 255, 255, 255, 32.30134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 41, 59, 108, 121, 32.30136 + 138, 140, 141, 142, 152, 164, 171, 174, 183, 197, 208, 211, 213, 214, 213, 214, 32.30137 + 214, 213, 216, 219, 223, 226, 229, 234, 239, 243, 243, 243, 243, 242, 242, 242, 32.30138 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 240, 241, 241, 242, 32.30139 + 242, 242, 241, 241, 239, 237, 234, 233, 230, 229, 229, 225, 222, 221, 221, 222, 32.30140 + 222, 221, 216, 206, 204, 207, 199, 183, 177, 181, 174, 169, 163, 163, 158, 148, 32.30141 + 103, 56, 60, 66, 63, 41, 29, 44, 43, 46, 43, 44, 46, 255, 255, 255, 32.30142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 32.30144 + 37, 50, 101, 117, 134, 144, 148, 142, 147, 162, 170, 168, 176, 192, 204, 208, 32.30145 + 210, 212, 212, 213, 211, 212, 217, 220, 223, 225, 228, 233, 238, 242, 243, 243, 32.30146 + 243, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.30147 + 240, 241, 241, 242, 242, 242, 240, 239, 237, 236, 233, 231, 228, 227, 227, 224, 32.30148 + 222, 220, 221, 222, 221, 219, 215, 202, 198, 205, 196, 177, 174, 184, 170, 170, 32.30149 + 161, 166, 153, 136, 87, 55, 58, 68, 41, 44, 35, 41, 48, 38, 111, 255, 32.30150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30152 + 255, 255, 255, 38, 40, 46, 96, 111, 132, 149, 148, 146, 148, 155, 162, 169, 32.30153 + 173, 181, 197, 202, 206, 210, 211, 213, 212, 213, 218, 220, 222, 224, 226, 231, 32.30154 + 236, 241, 243, 242, 242, 242, 241, 241, 240, 240, 241, 241, 241, 241, 241, 241, 32.30155 + 241, 241, 240, 240, 240, 241, 241, 242, 242, 242, 238, 237, 236, 235, 233, 232, 32.30156 + 229, 229, 225, 223, 221, 221, 223, 223, 221, 218, 208, 202, 198, 196, 188, 178, 32.30157 + 177, 182, 167, 172, 162, 171, 149, 124, 76, 61, 59, 64, 36, 50, 40, 255, 32.30158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30160 + 255, 255, 255, 255, 255, 255, 255, 40, 42, 42, 90, 104, 127, 150, 145, 150, 32.30161 + 149, 147, 154, 171, 175, 171, 194, 199, 203, 209, 212, 215, 216, 217, 218, 221, 32.30162 + 222, 223, 225, 229, 234, 238, 242, 242, 242, 241, 241, 240, 240, 239, 241, 241, 32.30163 + 241, 241, 241, 241, 241, 241, 240, 241, 240, 241, 241, 242, 241, 242, 236, 235, 32.30164 + 234, 235, 234, 233, 232, 232, 224, 223, 221, 223, 224, 223, 220, 217, 202, 204, 32.30165 + 200, 188, 181, 182, 182, 179, 164, 171, 159, 170, 142, 113, 68, 68, 63, 56, 32.30166 + 36, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 43, 48, 88, 100, 32.30169 + 128, 146, 154, 146, 154, 158, 151, 166, 183, 178, 190, 195, 201, 206, 211, 215, 32.30170 + 220, 223, 219, 222, 224, 226, 229, 231, 233, 236, 238, 239, 240, 242, 242, 241, 32.30171 + 240, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 243, 243, 241, 32.30172 + 239, 238, 234, 232, 231, 230, 230, 230, 231, 232, 231, 232, 231, 229, 226, 221, 32.30173 + 215, 212, 202, 204, 206, 196, 183, 175, 178, 183, 166, 176, 161, 164, 131, 106, 32.30174 + 63, 58, 53, 50, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 32.30177 + 41, 44, 82, 98, 126, 145, 156, 154, 158, 158, 158, 171, 185, 186, 189, 194, 32.30178 + 201, 207, 210, 215, 219, 222, 221, 223, 225, 228, 230, 232, 233, 235, 236, 238, 32.30179 + 240, 241, 242, 241, 241, 240, 241, 241, 241, 241, 241, 241, 241, 241, 240, 242, 32.30180 + 242, 242, 242, 240, 238, 237, 233, 232, 230, 229, 228, 229, 231, 231, 237, 236, 32.30181 + 231, 228, 224, 221, 217, 217, 208, 204, 197, 190, 184, 180, 180, 181, 169, 172, 32.30182 + 153, 153, 121, 94, 61, 67, 53, 119, 255, 255, 255, 255, 255, 255, 255, 255, 32.30183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30185 + 255, 255, 255, 36, 39, 39, 77, 93, 124, 143, 152, 160, 158, 154, 162, 170, 32.30186 + 175, 185, 187, 193, 200, 208, 211, 215, 217, 221, 222, 224, 225, 228, 230, 232, 32.30187 + 233, 235, 235, 237, 239, 241, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 32.30188 + 241, 241, 240, 240, 240, 241, 240, 239, 237, 237, 233, 232, 231, 230, 229, 229, 32.30189 + 230, 230, 235, 233, 225, 220, 216, 215, 215, 216, 212, 202, 190, 186, 187, 185, 32.30190 + 182, 177, 178, 172, 152, 148, 115, 83, 60, 77, 51, 255, 255, 255, 255, 255, 32.30191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30193 + 255, 255, 255, 255, 255, 255, 255, 36, 40, 38, 74, 91, 121, 139, 147, 164, 32.30194 + 161, 156, 167, 168, 165, 179, 181, 188, 197, 207, 211, 215, 218, 221, 222, 224, 32.30195 + 225, 227, 229, 231, 232, 234, 234, 236, 239, 241, 242, 243, 242, 242, 241, 241, 32.30196 + 241, 241, 241, 241, 241, 241, 240, 240, 240, 239, 239, 238, 237, 236, 233, 233, 32.30197 + 233, 231, 230, 230, 230, 231, 233, 230, 224, 219, 216, 214, 213, 214, 210, 201, 32.30198 + 191, 188, 190, 189, 183, 176, 181, 170, 154, 144, 112, 69, 52, 72, 117, 255, 32.30199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 43, 38, 74, 91, 32.30202 + 120, 136, 147, 168, 169, 166, 175, 172, 165, 176, 177, 183, 194, 204, 210, 216, 32.30203 + 219, 223, 223, 223, 224, 227, 228, 230, 231, 232, 234, 236, 239, 241, 242, 243, 32.30204 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 239, 239, 238, 238, 32.30205 + 237, 237, 234, 234, 234, 234, 233, 232, 231, 231, 234, 233, 230, 227, 225, 222, 32.30206 + 218, 216, 206, 202, 198, 197, 195, 192, 185, 179, 174, 164, 152, 137, 107, 54, 32.30207 + 37, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 32.30210 + 45, 37, 71, 90, 120, 136, 145, 162, 171, 172, 174, 173, 169, 174, 177, 185, 32.30211 + 195, 204, 210, 217, 221, 226, 224, 225, 226, 228, 229, 230, 231, 232, 235, 237, 32.30212 + 239, 241, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30213 + 240, 239, 238, 239, 238, 238, 237, 236, 237, 237, 236, 234, 232, 232, 231, 232, 32.30214 + 231, 230, 228, 223, 218, 214, 204, 204, 205, 203, 200, 195, 189, 184, 175, 165, 32.30215 + 156, 131, 105, 50, 33, 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30218 + 255, 255, 255, 184, 42, 31, 64, 85, 120, 138, 144, 154, 170, 175, 171, 174, 32.30219 + 181, 179, 184, 190, 198, 206, 212, 218, 223, 229, 226, 228, 228, 231, 231, 233, 32.30220 + 234, 235, 236, 238, 240, 241, 242, 241, 241, 240, 241, 241, 241, 241, 241, 241, 32.30221 + 241, 241, 243, 242, 240, 238, 239, 239, 239, 240, 239, 239, 239, 239, 238, 236, 32.30222 + 235, 234, 228, 229, 229, 227, 225, 221, 216, 213, 209, 208, 206, 206, 204, 201, 32.30223 + 194, 189, 180, 171, 159, 122, 102, 51, 40, 43, 255, 255, 255, 255, 255, 255, 32.30224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30226 + 255, 255, 255, 255, 255, 255, 255, 255, 40, 26, 58, 82, 121, 140, 149, 152, 32.30227 + 173, 181, 171, 181, 197, 191, 190, 195, 202, 208, 213, 218, 225, 230, 228, 230, 32.30228 + 231, 233, 234, 235, 236, 237, 237, 239, 240, 242, 242, 241, 240, 239, 241, 241, 32.30229 + 241, 241, 241, 241, 241, 241, 244, 243, 240, 239, 239, 240, 240, 241, 240, 241, 32.30230 + 241, 240, 239, 238, 235, 234, 232, 232, 230, 228, 227, 224, 220, 218, 215, 210, 32.30231 + 205, 205, 207, 205, 199, 192, 182, 170, 155, 111, 93, 47, 41, 42, 255, 255, 32.30232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 43, 48, 78, 32.30235 + 129, 140, 164, 158, 168, 181, 179, 180, 185, 187, 197, 202, 203, 201, 205, 214, 32.30236 + 222, 226, 227, 230, 233, 237, 239, 240, 240, 241, 240, 241, 241, 241, 241, 241, 32.30237 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30238 + 241, 241, 240, 241, 241, 241, 241, 240, 239, 237, 235, 234, 231, 228, 226, 223, 32.30239 + 220, 219, 210, 209, 209, 210, 210, 207, 198, 191, 186, 170, 152, 127, 98, 41, 32.30240 + 47, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30243 + 36, 40, 43, 73, 128, 143, 158, 154, 165, 178, 177, 177, 182, 182, 195, 202, 32.30244 + 207, 206, 210, 217, 221, 223, 227, 231, 234, 237, 239, 239, 240, 240, 240, 241, 32.30245 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30246 + 241, 241, 241, 241, 241, 241, 240, 241, 241, 241, 241, 240, 239, 238, 234, 232, 32.30247 + 231, 230, 228, 227, 225, 225, 213, 211, 210, 212, 212, 209, 200, 193, 185, 167, 32.30248 + 147, 121, 91, 34, 41, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30251 + 255, 255, 255, 255, 39, 40, 37, 65, 123, 144, 159, 156, 167, 180, 178, 180, 32.30252 + 185, 185, 193, 203, 210, 212, 215, 219, 222, 221, 227, 231, 233, 237, 238, 240, 32.30253 + 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30254 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 242, 242, 242, 241, 32.30255 + 239, 239, 235, 234, 232, 231, 229, 228, 227, 226, 218, 216, 214, 215, 215, 211, 32.30256 + 203, 194, 187, 168, 144, 116, 85, 29, 38, 43, 255, 255, 255, 255, 255, 255, 32.30257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30259 + 255, 255, 255, 255, 255, 255, 255, 255, 45, 46, 38, 61, 118, 142, 162, 159, 32.30260 + 168, 178, 176, 181, 188, 187, 195, 204, 211, 213, 215, 219, 222, 221, 226, 230, 32.30261 + 233, 237, 239, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.30262 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 242, 32.30263 + 242, 242, 242, 241, 240, 239, 239, 237, 234, 233, 229, 226, 224, 222, 223, 220, 32.30264 + 218, 218, 218, 213, 206, 198, 192, 172, 145, 115, 84, 28, 39, 45, 255, 255, 32.30265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 50, 43, 62, 32.30268 + 119, 144, 162, 159, 165, 170, 168, 176, 186, 186, 198, 205, 209, 209, 211, 218, 32.30269 + 222, 222, 227, 230, 233, 236, 238, 239, 240, 239, 240, 241, 241, 241, 241, 241, 32.30270 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 241, 241, 241, 241, 32.30271 + 241, 241, 240, 241, 242, 242, 242, 241, 240, 238, 238, 235, 234, 232, 228, 225, 32.30272 + 223, 221, 225, 222, 221, 220, 219, 216, 209, 201, 195, 173, 147, 116, 85, 30, 32.30273 + 40, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30276 + 255, 255, 255, 213, 210, 219, 226, 225, 226, 227, 207, 204, 210, 209, 217, 222, 32.30277 + 222, 205, 207, 215, 220, 222, 227, 229, 232, 236, 238, 239, 239, 239, 240, 241, 32.30278 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 240, 32.30279 + 241, 241, 241, 241, 241, 241, 240, 241, 242, 242, 242, 241, 240, 239, 234, 231, 32.30280 + 232, 231, 229, 228, 226, 226, 226, 224, 222, 222, 221, 217, 212, 204, 192, 172, 32.30281 + 147, 119, 87, 31, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 249, 249, 250, 32.30286 + 250, 250, 248, 246, 246, 246, 246, 246, 246, 244, 241, 241, 241, 241, 241, 241, 32.30287 + 241, 241, 240, 240, 241, 241, 241, 241, 241, 241, 241, 242, 242, 242, 242, 241, 32.30288 + 241, 239, 235, 233, 233, 232, 230, 229, 228, 227, 226, 224, 221, 221, 222, 219, 32.30289 + 214, 207, 189, 171, 149, 122, 91, 33, 39, 255, 255, 255, 255, 255, 255, 255, 32.30290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30295 + 255, 255, 255, 255, 252, 250, 250, 250, 250, 250, 250, 247, 246, 246, 246, 246, 32.30296 + 246, 246, 242, 241, 241, 239, 240, 237, 237, 234, 231, 229, 226, 225, 225, 224, 32.30297 + 221, 221, 222, 221, 215, 208, 189, 172, 152, 126, 95, 110, 255, 255, 255, 255, 32.30298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 75, 74, 73, 73, 32.30304 + 73, 71, 73, 72, 71, 70, 71, 74, 74, 76, 74, 73, 255, 255, 255, 255, 32.30305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 73, 65, 66, 73, 75, 69, 32.30312 + 76, 78, 73, 80, 81, 59, 78, 68, 77, 63, 68, 80, 68, 67, 63, 71, 32.30313 + 68, 75, 71, 62, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30319 + 255, 255, 255, 255, 255, 255, 255, 255, 69, 78, 75, 73, 70, 64, 64, 69, 32.30320 + 71, 70, 63, 78, 72, 38, 72, 76, 84, 76, 79, 62, 67, 64, 61, 167, 32.30321 + 70, 61, 66, 74, 64, 67, 66, 62, 72, 66, 255, 255, 255, 255, 255, 255, 32.30322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30327 + 255, 255, 255, 255, 255, 255, 255, 255, 195, 61, 71, 76, 79, 67, 59, 63, 32.30328 + 62, 56, 59, 70, 69, 59, 60, 60, 85, 60, 83, 79, 97, 62, 52, 89, 32.30329 + 57, 106, 56, 94, 68, 74, 56, 61, 50, 57, 65, 67, 77, 66, 72, 75, 32.30330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30335 + 255, 255, 255, 255, 255, 255, 191, 68, 46, 56, 70, 68, 65, 43, 69, 78, 32.30336 + 76, 43, 48, 51, 56, 61, 69, 72, 64, 53, 59, 51, 49, 88, 143, 66, 32.30337 + 38, 106, 91, 67, 77, 76, 68, 82, 48, 68, 55, 52, 42, 61, 71, 63, 32.30338 + 70, 70, 71, 73, 72, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30343 + 255, 255, 255, 255, 255, 255, 255, 189, 60, 50, 64, 72, 47, 59, 78, 51, 32.30344 + 50, 54, 77, 60, 57, 50, 60, 50, 53, 68, 74, 63, 55, 56, 32, 61, 32.30345 + 62, 58, 53, 95, 94, 70, 87, 68, 82, 50, 78, 97, 80, 60, 76, 63, 32.30346 + 55, 80, 80, 51, 55, 63, 72, 72, 73, 72, 74, 255, 255, 255, 255, 255, 32.30347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30351 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 69, 55, 69, 72, 56, 55, 53, 32.30352 + 59, 96, 64, 57, 63, 58, 63, 54, 58, 57, 69, 47, 41, 52, 54, 41, 32.30353 + 41, 55, 38, 76, 40, 47, 56, 74, 43, 76, 39, 70, 57, 78, 69, 50, 32.30354 + 79, 70, 90, 76, 67, 92, 90, 56, 58, 67, 66, 67, 67, 70, 75, 77, 32.30355 + 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30359 + 255, 255, 255, 255, 255, 255, 255, 255, 190, 62, 74, 63, 60, 93, 50, 85, 32.30360 + 80, 68, 56, 37, 57, 98, 43, 55, 52, 39, 30, 48, 48, 41, 53, 37, 32.30361 + 27, 27, 26, 19, 25, 38, 46, 57, 56, 60, 32, 58, 50, 32, 52, 23, 32.30362 + 43, 58, 51, 58, 29, 71, 83, 79, 65, 84, 90, 75, 78, 75, 68, 69, 32.30363 + 68, 70, 74, 75, 76, 75, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 65, 75, 59, 59, 76, 60, 32.30368 + 57, 103, 65, 86, 57, 62, 72, 43, 43, 48, 63, 44, 27, 47, 38, 47, 32.30369 + 40, 52, 30, 26, 23, 17, 16, 17, 23, 28, 41, 40, 40, 46, 42, 40, 32.30370 + 41, 42, 36, 51, 39, 42, 46, 38, 64, 60, 79, 79, 60, 67, 77, 80, 32.30371 + 80, 63, 74, 74, 72, 74, 74, 75, 74, 70, 74, 134, 255, 255, 255, 255, 32.30372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 65, 69, 61, 93, 32.30376 + 105, 79, 58, 93, 67, 59, 69, 64, 61, 76, 52, 57, 47, 43, 49, 33, 32.30377 + 42, 36, 31, 43, 45, 48, 45, 51, 46, 44, 40, 36, 80, 29, 45, 61, 32.30378 + 43, 27, 45, 45, 33, 41, 34, 43, 52, 50, 48, 60, 66, 54, 76, 43, 32.30379 + 56, 64, 82, 82, 95, 66, 84, 66, 56, 60, 65, 63, 67, 78, 71, 80, 32.30380 + 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 78, 64, 32.30384 + 74, 69, 61, 53, 84, 69, 52, 61, 56, 39, 67, 54, 57, 55, 46, 41, 32.30385 + 48, 43, 54, 39, 48, 38, 28, 37, 38, 43, 11, 42, 26, 28, 56, 27, 32.30386 + 43, 38, 36, 53, 42, 30, 44, 41, 35, 52, 50, 52, 56, 49, 43, 50, 32.30387 + 51, 38, 39, 70, 42, 48, 40, 66, 64, 105, 55, 72, 81, 71, 63, 64, 32.30388 + 63, 60, 86, 76, 72, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30392 + 86, 70, 77, 86, 58, 71, 92, 46, 89, 97, 90, 77, 91, 72, 67, 50, 32.30393 + 57, 41, 46, 33, 54, 49, 56, 41, 49, 39, 27, 35, 35, 40, 47, 40, 32.30394 + 47, 65, 61, 26, 55, 41, 33, 49, 45, 40, 46, 39, 41, 66, 53, 50, 32.30395 + 52, 48, 44, 51, 53, 41, 28, 55, 55, 45, 78, 87, 80, 83, 66, 78, 32.30396 + 84, 83, 85, 86, 69, 52, 78, 69, 76, 81, 66, 255, 255, 255, 255, 255, 32.30397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30400 + 255, 194, 66, 80, 45, 64, 82, 68, 80, 55, 75, 37, 56, 79, 82, 63, 32.30401 + 64, 58, 62, 44, 50, 44, 43, 37, 52, 51, 47, 32, 40, 34, 30, 41, 32.30402 + 38, 39, 82, 52, 65, 80, 62, 38, 71, 48, 35, 43, 43, 45, 49, 40, 32.30403 + 45, 68, 53, 44, 45, 46, 47, 55, 60, 51, 68, 43, 57, 48, 82, 101, 32.30404 + 115, 62, 79, 70, 72, 87, 92, 83, 73, 76, 68, 62, 75, 83, 62, 60, 32.30405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30408 + 255, 255, 255, 255, 71, 71, 74, 58, 75, 59, 72, 93, 69, 85, 69, 69, 32.30409 + 52, 70, 80, 67, 42, 49, 48, 43, 41, 52, 37, 43, 43, 45, 49, 32, 32.30410 + 39, 39, 42, 55, 48, 43, 50, 57, 48, 41, 69, 50, 51, 49, 39, 38, 32.30411 + 39, 45, 49, 43, 46, 60, 67, 51, 49, 52, 51, 54, 58, 50, 52, 51, 32.30412 + 52, 79, 60, 97, 81, 46, 57, 64, 74, 79, 67, 53, 63, 89, 77, 63, 32.30413 + 63, 70, 70, 77, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30416 + 255, 255, 255, 255, 255, 255, 255, 71, 69, 69, 67, 95, 73, 76, 71, 51, 32.30417 + 83, 84, 45, 73, 40, 55, 69, 65, 32, 43, 41, 40, 36, 55, 34, 45, 32.30418 + 37, 42, 57, 41, 50, 51, 53, 64, 52, 43, 38, 37, 46, 39, 57, 55, 32.30419 + 55, 31, 40, 34, 35, 40, 44, 44, 47, 47, 75, 54, 50, 57, 57, 58, 32.30420 + 60, 53, 30, 56, 58, 72, 88, 75, 39, 37, 49, 66, 71, 61, 53, 58, 32.30421 + 63, 67, 78, 83, 75, 67, 70, 76, 78, 80, 140, 255, 255, 255, 255, 255, 32.30422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 69, 69, 67, 66, 63, 67, 32.30425 + 81, 59, 51, 55, 52, 76, 42, 67, 51, 61, 71, 59, 51, 46, 43, 36, 32.30426 + 39, 47, 38, 39, 42, 42, 57, 45, 58, 57, 53, 57, 45, 38, 53, 24, 32.30427 + 55, 53, 42, 48, 65, 26, 40, 37, 40, 42, 42, 49, 53, 45, 77, 53, 32.30428 + 49, 59, 62, 62, 63, 57, 72, 57, 55, 41, 87, 50, 54, 70, 67, 66, 32.30429 + 59, 54, 62, 73, 65, 53, 68, 98, 85, 59, 66, 69, 74, 92, 85, 255, 32.30430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 69, 69, 67, 32.30433 + 66, 64, 65, 74, 66, 69, 80, 82, 90, 91, 54, 57, 63, 60, 64, 34, 32.30434 + 50, 28, 50, 34, 44, 36, 42, 31, 49, 43, 49, 41, 61, 56, 47, 46, 32.30435 + 37, 32, 41, 34, 42, 26, 47, 38, 40, 45, 41, 42, 47, 47, 43, 54, 32.30436 + 59, 49, 84, 57, 52, 62, 64, 60, 57, 52, 77, 49, 55, 92, 61, 56, 32.30437 + 66, 85, 75, 61, 57, 63, 65, 58, 60, 72, 70, 98, 68, 41, 70, 83, 32.30438 + 73, 84, 82, 85, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 32.30441 + 68, 64, 60, 61, 65, 69, 58, 66, 41, 62, 93, 44, 72, 74, 48, 58, 32.30442 + 55, 70, 55, 48, 34, 54, 34, 41, 42, 37, 38, 48, 50, 42, 28, 35, 32.30443 + 45, 42, 38, 31, 36, 39, 30, 35, 43, 42, 40, 36, 41, 43, 44, 36, 32.30444 + 36, 47, 53, 49, 42, 41, 71, 60, 49, 45, 50, 57, 59, 58, 70, 54, 32.30445 + 84, 74, 60, 88, 95, 93, 69, 56, 66, 71, 91, 64, 47, 26, 104, 67, 32.30446 + 83, 108, 82, 60, 76, 87, 88, 87, 81, 255, 255, 255, 255, 255, 255, 255, 32.30447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30449 + 255, 255, 67, 67, 67, 68, 67, 64, 59, 54, 74, 73, 86, 30, 60, 62, 32.30450 + 32, 80, 76, 63, 48, 40, 52, 52, 57, 66, 37, 39, 45, 50, 50, 47, 32.30451 + 44, 43, 29, 36, 44, 44, 39, 36, 41, 46, 49, 54, 62, 70, 77, 83, 32.30452 + 87, 89, 91, 81, 75, 74, 70, 61, 55, 53, 59, 55, 49, 48, 52, 61, 32.30453 + 70, 73, 49, 91, 80, 57, 77, 94, 82, 68, 75, 77, 87, 81, 70, 54, 32.30454 + 77, 106, 38, 100, 100, 53, 48, 66, 70, 70, 80, 80, 80, 78, 255, 255, 32.30455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30457 + 255, 255, 255, 255, 255, 194, 70, 67, 65, 68, 71, 70, 61, 53, 61, 70, 32.30458 + 83, 85, 83, 61, 62, 39, 50, 67, 85, 61, 64, 37, 50, 55, 63, 57, 32.30459 + 57, 60, 51, 36, 35, 44, 49, 59, 76, 89, 100, 114, 130, 143, 123, 124, 32.30460 + 127, 135, 143, 149, 150, 149, 164, 161, 161, 163, 165, 166, 171, 176, 135, 131, 32.30461 + 119, 101, 82, 64, 54, 47, 51, 82, 56, 63, 77, 61, 77, 88, 79, 84, 32.30462 + 76, 70, 59, 68, 72, 78, 114, 98, 86, 80, 67, 53, 60, 81, 74, 77, 32.30463 + 79, 79, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30465 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 71, 73, 69, 64, 63, 66, 69, 32.30466 + 69, 66, 71, 58, 50, 32, 67, 60, 20, 68, 58, 60, 57, 47, 71, 74, 32.30467 + 74, 64, 73, 62, 51, 45, 49, 63, 97, 123, 131, 131, 134, 131, 126, 125, 32.30468 + 130, 136, 155, 156, 157, 158, 160, 160, 159, 158, 169, 169, 169, 170, 168, 169, 32.30469 + 174, 182, 176, 174, 169, 159, 142, 118, 96, 82, 63, 47, 54, 90, 76, 62, 32.30470 + 83, 77, 53, 93, 95, 83, 58, 82, 81, 76, 43, 74, 59, 59, 102, 96, 32.30471 + 69, 87, 67, 72, 75, 75, 75, 134, 255, 255, 255, 255, 255, 255, 255, 255, 32.30472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 68, 71, 71, 32.30474 + 68, 65, 63, 63, 68, 70, 87, 60, 70, 91, 69, 61, 62, 52, 56, 71, 32.30475 + 59, 54, 46, 56, 47, 51, 34, 64, 98, 117, 124, 126, 122, 113, 118, 122, 32.30476 + 127, 129, 130, 135, 143, 150, 143, 147, 152, 152, 151, 151, 154, 159, 162, 165, 32.30477 + 166, 164, 159, 156, 158, 162, 161, 161, 163, 172, 176, 171, 159, 146, 122, 86, 32.30478 + 83, 60, 47, 76, 78, 63, 106, 97, 66, 72, 80, 108, 82, 55, 58, 52, 32.30479 + 79, 77, 48, 77, 102, 59, 61, 65, 67, 69, 69, 73, 255, 255, 255, 255, 32.30480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.30482 + 68, 67, 67, 69, 72, 68, 66, 63, 65, 64, 46, 106, 47, 60, 55, 30, 32.30483 + 67, 58, 72, 113, 119, 111, 65, 59, 59, 90, 113, 124, 127, 115, 111, 118, 32.30484 + 122, 118, 127, 130, 133, 133, 132, 134, 140, 145, 143, 150, 156, 156, 153, 154, 32.30485 + 160, 166, 149, 156, 160, 158, 158, 159, 160, 162, 169, 161, 155, 158, 165, 167, 32.30486 + 163, 154, 160, 150, 129, 75, 62, 60, 41, 84, 88, 80, 79, 93, 78, 65, 32.30487 + 66, 90, 95, 74, 71, 90, 97, 86, 92, 113, 67, 67, 68, 69, 73, 78, 32.30488 + 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30490 + 255, 255, 193, 69, 69, 68, 70, 68, 68, 66, 69, 71, 72, 72, 51, 48, 32.30491 + 89, 86, 52, 84, 57, 51, 81, 78, 66, 67, 79, 90, 100, 117, 131, 132, 32.30492 + 128, 123, 120, 125, 126, 129, 132, 134, 137, 138, 139, 141, 145, 148, 151, 153, 32.30493 + 155, 155, 154, 154, 157, 160, 166, 170, 169, 163, 160, 159, 156, 152, 165, 159, 32.30494 + 152, 151, 153, 155, 154, 150, 133, 149, 157, 148, 129, 81, 51, 82, 67, 54, 32.30495 + 63, 85, 105, 95, 97, 105, 108, 101, 110, 107, 87, 86, 74, 40, 73, 70, 32.30496 + 66, 68, 75, 83, 86, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30498 + 255, 255, 255, 255, 255, 255, 68, 68, 70, 69, 76, 68, 59, 58, 66, 76, 32.30499 + 84, 85, 83, 60, 40, 54, 45, 65, 57, 70, 89, 83, 92, 95, 128, 115, 32.30500 + 117, 118, 128, 123, 126, 140, 142, 135, 133, 140, 153, 157, 158, 157, 155, 152, 32.30501 + 153, 154, 161, 159, 158, 160, 163, 165, 166, 165, 161, 165, 163, 157, 156, 159, 32.30502 + 160, 157, 158, 158, 158, 155, 153, 149, 145, 142, 139, 139, 133, 145, 135, 137, 32.30503 + 142, 84, 64, 72, 81, 62, 75, 77, 91, 81, 82, 119, 97, 52, 50, 57, 32.30504 + 64, 89, 69, 63, 56, 58, 70, 79, 83, 80, 82, 255, 255, 255, 255, 255, 32.30505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 67, 64, 63, 65, 55, 56, 32.30507 + 55, 71, 57, 104, 68, 76, 68, 56, 129, 98, 113, 118, 74, 36, 79, 92, 32.30508 + 125, 135, 109, 101, 122, 131, 137, 138, 141, 141, 142, 146, 155, 160, 167, 156, 32.30509 + 146, 146, 154, 159, 159, 156, 155, 160, 162, 163, 160, 156, 156, 154, 156, 156, 32.30510 + 157, 158, 160, 161, 163, 163, 165, 166, 164, 161, 158, 155, 153, 151, 149, 146, 32.30511 + 146, 145, 146, 146, 146, 145, 97, 65, 62, 75, 89, 89, 103, 111, 175, 49, 32.30512 + 65, 81, 28, 57, 97, 37, 52, 65, 71, 67, 68, 77, 81, 75, 76, 255, 32.30513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 70, 78, 74, 32.30515 + 68, 63, 77, 58, 65, 45, 75, 79, 76, 54, 67, 89, 55, 81, 97, 89, 32.30516 + 126, 122, 124, 109, 115, 125, 120, 128, 141, 140, 143, 146, 149, 151, 154, 157, 32.30517 + 165, 169, 165, 162, 158, 158, 161, 162, 161, 158, 157, 159, 160, 161, 160, 158, 32.30518 + 156, 154, 157, 154, 156, 156, 157, 158, 161, 161, 167, 169, 171, 170, 168, 167, 32.30519 + 164, 163, 162, 158, 157, 153, 150, 145, 139, 137, 135, 108, 68, 68, 63, 93, 32.30520 + 83, 68, 61, 86, 68, 51, 62, 83, 56, 74, 64, 74, 76, 67, 66, 76, 32.30521 + 86, 84, 80, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30523 + 70, 69, 63, 61, 70, 78, 89, 91, 111, 76, 92, 58, 88, 69, 76, 44, 32.30524 + 61, 53, 64, 55, 132, 114, 130, 109, 109, 123, 133, 147, 155, 146, 154, 154, 32.30525 + 158, 161, 164, 165, 171, 173, 168, 170, 173, 175, 173, 169, 167, 164, 164, 161, 32.30526 + 162, 163, 163, 164, 163, 160, 157, 154, 155, 155, 155, 156, 159, 162, 167, 169, 32.30527 + 173, 175, 175, 176, 175, 174, 169, 166, 164, 160, 155, 148, 140, 136, 146, 123, 32.30528 + 115, 65, 61, 47, 75, 66, 87, 85, 87, 96, 112, 63, 19, 53, 58, 69, 32.30529 + 70, 62, 59, 66, 73, 73, 81, 78, 135, 255, 255, 255, 255, 255, 255, 255, 32.30530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30531 + 255, 255, 255, 192, 69, 68, 65, 68, 78, 86, 59, 69, 47, 67, 75, 78, 32.30532 + 75, 46, 72, 97, 84, 78, 79, 122, 100, 124, 101, 107, 126, 142, 149, 151, 32.30533 + 151, 148, 154, 156, 159, 162, 167, 168, 172, 172, 172, 174, 176, 175, 173, 169, 32.30534 + 163, 160, 162, 159, 157, 160, 162, 164, 163, 160, 153, 151, 152, 151, 152, 154, 32.30535 + 158, 159, 160, 165, 169, 172, 176, 176, 175, 174, 167, 167, 166, 165, 162, 154, 32.30536 + 148, 142, 136, 135, 118, 122, 53, 51, 50, 84, 71, 54, 97, 79, 60, 59, 32.30537 + 89, 84, 62, 74, 82, 81, 77, 77, 77, 76, 79, 78, 76, 255, 255, 255, 32.30538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30539 + 255, 255, 255, 255, 255, 255, 255, 68, 63, 60, 57, 54, 45, 34, 68, 106, 32.30540 + 89, 109, 69, 76, 86, 91, 73, 53, 70, 63, 75, 82, 139, 88, 103, 124, 32.30541 + 148, 157, 158, 153, 152, 155, 153, 154, 157, 160, 167, 168, 171, 170, 170, 166, 32.30542 + 163, 162, 162, 157, 152, 147, 149, 147, 143, 146, 150, 152, 151, 148, 145, 145, 32.30543 + 145, 146, 147, 149, 153, 154, 154, 158, 162, 166, 170, 171, 171, 171, 168, 168, 32.30544 + 168, 167, 166, 162, 155, 150, 156, 127, 139, 114, 115, 68, 68, 50, 89, 98, 32.30545 + 81, 104, 66, 91, 44, 49, 45, 55, 65, 65, 65, 63, 62, 61, 73, 78, 32.30546 + 80, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 66, 72, 67, 68, 79, 32.30548 + 100, 112, 98, 94, 76, 76, 82, 95, 102, 90, 96, 90, 66, 86, 80, 116, 32.30549 + 83, 122, 135, 146, 147, 146, 154, 155, 151, 158, 152, 154, 155, 158, 163, 165, 32.30550 + 166, 165, 166, 160, 153, 150, 149, 149, 145, 141, 142, 139, 140, 139, 143, 142, 32.30551 + 143, 139, 136, 136, 137, 137, 139, 140, 140, 140, 146, 148, 153, 156, 159, 162, 32.30552 + 164, 165, 171, 169, 169, 168, 167, 164, 159, 155, 148, 149, 131, 138, 110, 122, 32.30553 + 78, 45, 79, 49, 93, 82, 140, 66, 54, 49, 61, 65, 65, 69, 72, 74, 32.30554 + 72, 76, 69, 78, 81, 81, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 80, 32.30556 + 75, 57, 43, 48, 69, 79, 57, 58, 81, 62, 72, 83, 105, 117, 127, 79, 32.30557 + 120, 106, 86, 105, 99, 118, 141, 149, 143, 137, 150, 152, 146, 148, 151, 148, 32.30558 + 146, 148, 151, 153, 153, 151, 151, 149, 145, 142, 140, 140, 141, 140, 135, 138, 32.30559 + 141, 140, 141, 137, 138, 136, 130, 129, 131, 129, 130, 127, 125, 123, 129, 130, 32.30560 + 132, 136, 140, 145, 150, 152, 163, 163, 163, 162, 163, 162, 159, 156, 141, 142, 32.30561 + 156, 127, 127, 111, 109, 79, 49, 77, 77, 85, 20, 67, 54, 74, 55, 53, 32.30562 + 53, 58, 67, 66, 60, 60, 69, 78, 82, 81, 80, 255, 255, 255, 255, 255, 32.30563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30564 + 255, 193, 72, 62, 55, 66, 92, 107, 91, 64, 81, 70, 80, 62, 57, 73, 32.30565 + 55, 58, 93, 134, 96, 114, 80, 91, 136, 137, 124, 142, 146, 143, 156, 152, 32.30566 + 138, 143, 145, 142, 138, 138, 139, 141, 139, 136, 133, 135, 137, 133, 128, 127, 32.30567 + 132, 137, 129, 134, 139, 140, 136, 133, 132, 133, 129, 128, 128, 127, 124, 119, 32.30568 + 114, 109, 114, 114, 116, 118, 124, 131, 137, 143, 153, 152, 153, 154, 156, 158, 32.30569 + 155, 154, 155, 144, 139, 139, 118, 110, 105, 107, 94, 61, 62, 63, 104, 86, 32.30570 + 63, 58, 56, 56, 57, 69, 77, 71, 55, 51, 69, 79, 80, 78, 76, 137, 32.30571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30572 + 255, 255, 255, 255, 255, 72, 68, 70, 55, 58, 101, 54, 80, 70, 64, 62, 32.30573 + 72, 57, 52, 59, 52, 56, 102, 94, 98, 85, 108, 116, 140, 137, 137, 139, 32.30574 + 145, 142, 137, 133, 136, 139, 134, 139, 128, 138, 125, 137, 130, 135, 133, 136, 32.30575 + 133, 147, 133, 138, 135, 148, 155, 156, 156, 157, 158, 156, 154, 151, 147, 151, 32.30576 + 160, 146, 141, 149, 141, 141, 134, 132, 129, 124, 123, 125, 129, 133, 141, 142, 32.30577 + 148, 155, 154, 148, 149, 158, 153, 152, 145, 138, 134, 127, 110, 97, 116, 77, 32.30578 + 45, 67, 44, 38, 84, 51, 69, 62, 63, 46, 68, 63, 58, 38, 60, 71, 32.30579 + 71, 73, 75, 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 70, 61, 53, 47, 70, 56, 32.30581 + 62, 82, 69, 55, 58, 55, 75, 101, 98, 99, 74, 84, 92, 105, 115, 131, 32.30582 + 135, 135, 137, 136, 139, 139, 137, 133, 131, 128, 133, 130, 124, 132, 134, 148, 32.30583 + 150, 154, 165, 169, 164, 176, 162, 168, 167, 180, 181, 182, 184, 185, 186, 186, 32.30584 + 186, 185, 182, 184, 178, 171, 168, 168, 174, 171, 172, 161, 146, 141, 140, 142, 32.30585 + 140, 138, 141, 142, 132, 122, 131, 151, 155, 141, 145, 149, 147, 138, 131, 126, 32.30586 + 119, 118, 118, 97, 80, 55, 58, 68, 51, 67, 46, 47, 48, 56, 54, 57, 32.30587 + 55, 67, 83, 86, 78, 74, 76, 80, 140, 255, 255, 255, 255, 255, 255, 255, 32.30588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 72, 68, 58, 32.30589 + 73, 80, 98, 102, 58, 79, 68, 55, 60, 58, 69, 78, 57, 49, 66, 87, 32.30590 + 94, 123, 116, 138, 132, 135, 135, 133, 134, 136, 140, 138, 135, 130, 135, 140, 32.30591 + 153, 155, 162, 158, 161, 160, 176, 181, 178, 190, 177, 188, 188, 202, 200, 201, 32.30592 + 202, 203, 204, 204, 206, 204, 201, 204, 185, 195, 192, 178, 193, 184, 164, 159, 32.30593 + 152, 147, 139, 128, 112, 104, 111, 106, 119, 141, 144, 131, 137, 159, 149, 154, 32.30594 + 157, 153, 146, 134, 119, 110, 118, 109, 101, 62, 62, 73, 49, 66, 70, 67, 32.30595 + 57, 72, 49, 48, 38, 64, 70, 68, 59, 56, 62, 69, 72, 255, 255, 255, 32.30596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30597 + 76, 72, 77, 50, 49, 52, 90, 98, 59, 65, 61, 59, 72, 67, 69, 80, 32.30598 + 83, 94, 87, 101, 108, 123, 118, 134, 133, 136, 134, 133, 133, 131, 132, 130, 32.30599 + 129, 128, 161, 154, 155, 123, 117, 99, 115, 122, 170, 181, 179, 192, 183, 198, 32.30600 + 200, 212, 209, 210, 209, 211, 210, 209, 208, 208, 203, 211, 187, 209, 208, 178, 32.30601 + 194, 176, 140, 136, 127, 109, 89, 76, 70, 71, 90, 127, 140, 119, 114, 133, 32.30602 + 143, 133, 135, 131, 132, 139, 146, 143, 129, 118, 124, 113, 101, 96, 62, 55, 32.30603 + 80, 54, 59, 52, 43, 55, 50, 52, 43, 54, 70, 71, 66, 65, 70, 77, 32.30604 + 83, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30605 + 255, 255, 255, 195, 76, 72, 67, 51, 47, 41, 91, 67, 55, 46, 66, 73, 32.30606 + 97, 94, 87, 84, 77, 87, 107, 112, 127, 120, 129, 125, 135, 135, 120, 126, 32.30607 + 132, 133, 137, 143, 155, 165, 104, 115, 150, 162, 187, 175, 173, 160, 179, 193, 32.30608 + 195, 209, 199, 215, 213, 222, 219, 221, 220, 220, 219, 219, 218, 218, 214, 222, 32.30609 + 197, 218, 217, 187, 198, 180, 160, 162, 164, 159, 146, 125, 100, 86, 54, 40, 32.30610 + 49, 85, 112, 118, 130, 148, 155, 145, 140, 140, 144, 144, 141, 141, 136, 116, 32.30611 + 109, 111, 78, 60, 72, 65, 60, 59, 63, 52, 62, 59, 61, 54, 59, 67, 32.30612 + 66, 62, 57, 57, 62, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30613 + 255, 255, 255, 255, 255, 255, 255, 77, 76, 72, 62, 71, 94, 77, 107, 60, 32.30614 + 59, 57, 76, 73, 91, 97, 101, 101, 83, 84, 112, 115, 135, 124, 140, 124, 32.30615 + 131, 123, 140, 143, 140, 128, 118, 112, 117, 124, 138, 120, 113, 121, 159, 179, 32.30616 + 189, 187, 192, 210, 211, 222, 211, 223, 219, 224, 227, 227, 228, 228, 231, 232, 32.30617 + 234, 235, 233, 236, 215, 221, 216, 199, 212, 199, 176, 172, 172, 181, 183, 164, 32.30618 + 128, 97, 140, 130, 90, 44, 50, 100, 130, 126, 128, 133, 144, 151, 148, 139, 32.30619 + 139, 143, 142, 122, 126, 91, 97, 86, 28, 81, 78, 86, 97, 65, 65, 48, 32.30620 + 54, 47, 67, 77, 80, 77, 69, 67, 70, 76, 255, 255, 255, 255, 255, 255, 32.30621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 77, 76, 72, 75, 79, 32.30622 + 106, 71, 76, 61, 57, 93, 152, 125, 111, 98, 99, 107, 99, 105, 120, 127, 32.30623 + 136, 134, 134, 123, 111, 103, 74, 82, 90, 97, 106, 116, 129, 136, 132, 127, 32.30624 + 121, 142, 165, 192, 196, 199, 204, 219, 218, 226, 214, 227, 225, 230, 233, 233, 32.30625 + 233, 233, 236, 238, 239, 240, 240, 239, 232, 224, 219, 218, 221, 216, 227, 206, 32.30626 + 184, 177, 181, 183, 178, 170, 140, 134, 131, 131, 122, 102, 80, 69, 55, 64, 32.30627 + 89, 119, 139, 144, 144, 144, 141, 126, 132, 86, 101, 100, 31, 80, 61, 65, 32.30628 + 68, 56, 51, 44, 47, 52, 55, 61, 66, 66, 64, 64, 66, 71, 79, 255, 32.30629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 76, 32.30630 + 72, 68, 56, 60, 105, 80, 74, 86, 45, 95, 60, 59, 85, 103, 118, 121, 32.30631 + 107, 110, 132, 140, 134, 142, 124, 125, 98, 93, 98, 103, 109, 120, 131, 142, 32.30632 + 147, 150, 158, 174, 177, 191, 179, 193, 196, 213, 214, 232, 229, 235, 222, 240, 32.30633 + 238, 244, 240, 241, 239, 238, 239, 239, 240, 241, 234, 239, 245, 232, 226, 234, 32.30634 + 228, 224, 211, 214, 215, 213, 204, 195, 191, 190, 216, 206, 185, 172, 174, 172, 32.30635 + 133, 87, 86, 68, 66, 95, 131, 151, 150, 144, 145, 130, 124, 108, 96, 98, 32.30636 + 82, 66, 76, 64, 46, 65, 57, 63, 49, 61, 70, 72, 73, 72, 72, 73, 32.30637 + 74, 77, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30638 + 255, 255, 69, 64, 65, 66, 77, 96, 94, 72, 65, 67, 67, 69, 55, 83, 32.30639 + 77, 76, 114, 100, 109, 107, 121, 132, 138, 133, 126, 126, 122, 115, 153, 163, 32.30640 + 174, 182, 185, 189, 195, 201, 210, 211, 214, 213, 217, 216, 219, 220, 230, 233, 32.30641 + 234, 235, 236, 237, 237, 239, 237, 239, 238, 238, 241, 242, 243, 242, 238, 237, 32.30642 + 239, 238, 237, 236, 235, 234, 236, 236, 233, 232, 229, 226, 226, 225, 224, 227, 32.30643 + 226, 219, 217, 213, 202, 189, 126, 120, 99, 75, 80, 113, 142, 148, 140, 130, 32.30644 + 142, 127, 98, 106, 71, 72, 67, 53, 65, 61, 76, 82, 72, 49, 60, 53, 32.30645 + 70, 82, 115, 98, 88, 69, 76, 136, 255, 255, 255, 255, 255, 255, 255, 255, 32.30646 + 255, 255, 255, 255, 255, 199, 77, 63, 58, 55, 74, 86, 78, 67, 74, 74, 32.30647 + 57, 41, 74, 97, 73, 114, 106, 81, 131, 126, 149, 139, 140, 143, 130, 125, 32.30648 + 166, 218, 210, 218, 225, 228, 228, 228, 232, 235, 229, 229, 230, 231, 232, 233, 32.30649 + 234, 237, 236, 237, 240, 240, 240, 240, 240, 240, 240, 240, 239, 239, 239, 240, 32.30650 + 243, 239, 236, 234, 237, 237, 237, 237, 239, 239, 239, 239, 238, 236, 234, 234, 32.30651 + 231, 233, 235, 238, 238, 235, 235, 235, 227, 215, 217, 199, 162, 113, 66, 58, 32.30652 + 97, 139, 162, 137, 142, 127, 122, 92, 129, 68, 90, 56, 66, 49, 59, 44, 32.30653 + 67, 73, 91, 67, 51, 88, 81, 72, 62, 88, 73, 72, 255, 255, 255, 255, 32.30654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 62, 58, 66, 73, 50, 71, 32.30655 + 77, 69, 69, 66, 57, 54, 86, 97, 92, 126, 80, 82, 121, 122, 118, 126, 32.30656 + 119, 101, 119, 169, 208, 216, 227, 234, 237, 238, 235, 234, 235, 237, 237, 237, 32.30657 + 238, 238, 239, 239, 240, 241, 242, 243, 242, 241, 241, 241, 242, 242, 241, 241, 32.30658 + 238, 237, 237, 237, 240, 238, 237, 234, 236, 236, 237, 240, 243, 243, 241, 239, 32.30659 + 239, 237, 235, 235, 233, 235, 237, 241, 242, 239, 239, 242, 238, 230, 226, 223, 32.30660 + 220, 202, 160, 112, 86, 75, 107, 156, 125, 140, 120, 129, 114, 102, 53, 150, 32.30661 + 95, 37, 30, 79, 39, 47, 50, 71, 67, 79, 81, 105, 73, 39, 72, 73, 32.30662 + 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 68, 63, 64, 32.30663 + 81, 93, 49, 68, 72, 62, 59, 59, 63, 74, 100, 99, 139, 116, 89, 129, 32.30664 + 106, 117, 123, 114, 124, 164, 207, 227, 230, 230, 230, 234, 239, 237, 237, 234, 32.30665 + 237, 237, 238, 236, 238, 235, 237, 235, 237, 237, 244, 243, 244, 242, 242, 242, 32.30666 + 241, 242, 240, 239, 236, 234, 234, 234, 235, 235, 236, 235, 236, 235, 236, 239, 32.30667 + 242, 243, 241, 241, 239, 237, 236, 236, 235, 237, 240, 242, 241, 238, 238, 237, 32.30668 + 235, 231, 221, 228, 229, 222, 217, 199, 153, 100, 66, 105, 153, 126, 137, 128, 32.30669 + 103, 117, 85, 73, 95, 86, 55, 44, 74, 44, 56, 61, 79, 72, 83, 70, 32.30670 + 87, 92, 74, 75, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.30671 + 77, 74, 68, 63, 67, 74, 84, 78, 66, 59, 68, 69, 64, 68, 94, 94, 32.30672 + 138, 99, 119, 138, 93, 105, 104, 123, 162, 201, 223, 220, 217, 223, 235, 239, 32.30673 + 242, 241, 242, 240, 243, 242, 242, 240, 241, 239, 241, 239, 240, 240, 245, 245, 32.30674 + 246, 245, 243, 244, 243, 241, 238, 235, 230, 228, 226, 226, 229, 231, 234, 235, 32.30675 + 236, 235, 236, 238, 240, 240, 241, 241, 239, 237, 236, 236, 235, 237, 245, 247, 32.30676 + 246, 243, 242, 239, 238, 238, 237, 239, 232, 217, 217, 223, 214, 187, 125, 57, 32.30677 + 123, 151, 131, 121, 126, 111, 126, 73, 40, 122, 53, 44, 47, 70, 69, 51, 32.30678 + 49, 41, 72, 76, 90, 84, 77, 74, 73, 136, 255, 255, 255, 255, 255, 255, 32.30679 + 255, 255, 255, 255, 66, 65, 64, 65, 72, 78, 83, 83, 78, 76, 80, 77, 32.30680 + 77, 86, 98, 104, 104, 102, 132, 91, 82, 98, 147, 188, 217, 214, 215, 230, 32.30681 + 238, 232, 236, 237, 237, 237, 236, 236, 236, 236, 240, 240, 240, 240, 240, 240, 32.30682 + 239, 241, 243, 246, 246, 245, 243, 241, 238, 236, 229, 221, 216, 210, 209, 211, 32.30683 + 216, 222, 227, 232, 233, 235, 236, 236, 237, 236, 241, 239, 237, 236, 235, 233, 32.30684 + 233, 235, 242, 242, 243, 245, 242, 240, 240, 244, 237, 233, 233, 240, 237, 227, 32.30685 + 219, 216, 192, 102, 47, 139, 137, 134, 131, 126, 110, 136, 78, 48, 101, 63, 32.30686 + 55, 64, 61, 76, 66, 79, 97, 141, 113, 75, 75, 74, 73, 74, 255, 255, 32.30687 + 255, 255, 255, 255, 255, 255, 255, 76, 67, 68, 74, 83, 97, 105, 68, 78, 32.30688 + 84, 87, 89, 87, 101, 127, 120, 122, 115, 125, 109, 75, 102, 134, 212, 202, 32.30689 + 207, 227, 227, 213, 221, 246, 238, 237, 236, 236, 237, 237, 237, 237, 235, 235, 32.30690 + 235, 235, 235, 235, 235, 236, 238, 241, 240, 240, 237, 233, 225, 221, 206, 197, 32.30691 + 189, 183, 182, 187, 195, 204, 217, 224, 230, 233, 236, 237, 236, 235, 239, 237, 32.30692 + 236, 235, 234, 232, 229, 231, 231, 231, 234, 238, 234, 230, 232, 239, 241, 230, 32.30693 + 226, 233, 235, 232, 230, 226, 210, 169, 87, 68, 159, 129, 134, 138, 107, 109, 32.30694 + 74, 90, 81, 83, 98, 67, 51, 54, 57, 84, 63, 61, 70, 110, 71, 71, 32.30695 + 71, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 65, 71, 78, 80, 32.30696 + 81, 81, 79, 73, 67, 78, 97, 107, 118, 137, 114, 107, 133, 121, 60, 87, 32.30697 + 120, 175, 203, 219, 226, 219, 213, 219, 223, 222, 223, 222, 221, 222, 225, 227, 32.30698 + 227, 227, 228, 229, 229, 229, 230, 230, 231, 233, 230, 231, 232, 230, 225, 219, 32.30699 + 212, 204, 183, 174, 164, 158, 158, 164, 174, 184, 207, 218, 225, 232, 235, 238, 32.30700 + 236, 235, 237, 236, 235, 232, 231, 228, 226, 225, 227, 225, 228, 232, 229, 221, 32.30701 + 224, 229, 222, 235, 240, 225, 221, 232, 238, 229, 204, 222, 168, 85, 95, 156, 32.30702 + 123, 126, 126, 125, 97, 71, 74, 51, 88, 46, 93, 76, 69, 48, 71, 73, 32.30703 + 84, 72, 64, 66, 70, 79, 140, 255, 255, 255, 255, 255, 255, 255, 255, 79, 32.30704 + 65, 68, 78, 94, 82, 92, 72, 76, 109, 67, 79, 112, 128, 115, 96, 133, 32.30705 + 102, 122, 59, 124, 177, 208, 209, 222, 225, 217, 214, 220, 220, 210, 211, 216, 32.30706 + 215, 213, 225, 221, 219, 222, 222, 218, 216, 218, 222, 226, 227, 227, 226, 220, 32.30707 + 215, 214, 215, 209, 194, 177, 158, 150, 142, 137, 139, 141, 141, 146, 185, 206, 32.30708 + 221, 226, 225, 225, 230, 237, 240, 233, 228, 225, 225, 224, 219, 215, 226, 208, 32.30709 + 229, 222, 213, 220, 211, 218, 219, 214, 216, 217, 219, 219, 223, 228, 215, 220, 32.30710 + 202, 152, 79, 110, 134, 130, 130, 119, 111, 66, 89, 83, 68, 88, 50, 49, 32.30711 + 64, 63, 82, 89, 73, 103, 85, 82, 75, 72, 77, 255, 255, 255, 255, 255, 32.30712 + 255, 255, 85, 77, 70, 42, 103, 107, 106, 76, 69, 66, 72, 72, 106, 124, 32.30713 + 141, 108, 110, 110, 143, 78, 119, 141, 221, 222, 228, 216, 213, 219, 218, 208, 32.30714 + 203, 206, 215, 214, 206, 207, 224, 227, 221, 221, 213, 210, 207, 207, 211, 216, 32.30715 + 218, 218, 213, 208, 206, 208, 209, 197, 175, 154, 140, 141, 142, 137, 132, 131, 32.30716 + 139, 152, 171, 191, 210, 219, 218, 216, 222, 228, 225, 232, 234, 225, 210, 202, 32.30717 + 211, 220, 216, 223, 223, 222, 218, 223, 225, 208, 200, 200, 198, 200, 210, 222, 32.30718 + 223, 219, 228, 234, 213, 181, 122, 88, 126, 132, 116, 137, 101, 72, 126, 118, 32.30719 + 127, 44, 86, 55, 70, 29, 94, 95, 101, 83, 123, 82, 53, 62, 74, 255, 32.30720 + 255, 255, 255, 255, 255, 255, 60, 75, 51, 80, 102, 151, 103, 69, 69, 76, 32.30721 + 67, 86, 114, 111, 139, 114, 115, 109, 131, 72, 131, 189, 224, 226, 229, 219, 32.30722 + 214, 214, 205, 194, 197, 210, 200, 203, 192, 186, 185, 186, 185, 196, 196, 195, 32.30723 + 195, 198, 204, 211, 215, 215, 206, 198, 193, 194, 198, 185, 160, 139, 138, 139, 32.30724 + 139, 137, 134, 134, 141, 153, 167, 186, 205, 212, 213, 212, 218, 223, 231, 227, 32.30725 + 218, 210, 202, 198, 199, 200, 202, 216, 198, 209, 212, 206, 224, 203, 207, 208, 32.30726 + 200, 189, 191, 207, 218, 223, 229, 234, 218, 212, 177, 80, 118, 142, 132, 136, 32.30727 + 118, 112, 68, 106, 107, 130, 46, 48, 73, 68, 65, 79, 93, 107, 104, 93, 32.30728 + 77, 67, 76, 142, 255, 255, 255, 255, 255, 193, 78, 70, 63, 48, 84, 103, 32.30729 + 114, 97, 71, 80, 72, 83, 101, 105, 124, 117, 128, 126, 93, 104, 138, 224, 32.30730 + 211, 222, 227, 224, 207, 189, 188, 197, 198, 190, 170, 174, 160, 158, 156, 162, 32.30731 + 158, 168, 167, 168, 177, 184, 196, 204, 212, 214, 212, 196, 181, 176, 174, 167, 32.30732 + 150, 134, 135, 129, 126, 129, 137, 145, 149, 153, 168, 183, 198, 204, 204, 205, 32.30733 + 212, 219, 233, 219, 203, 195, 194, 192, 181, 172, 181, 182, 163, 172, 177, 165, 32.30734 + 180, 186, 195, 202, 205, 195, 184, 186, 204, 224, 227, 231, 220, 228, 203, 102, 32.30735 + 99, 140, 116, 137, 139, 121, 51, 139, 106, 99, 101, 62, 50, 88, 74, 86, 32.30736 + 72, 81, 104, 109, 88, 51, 47, 77, 255, 255, 255, 255, 255, 71, 64, 62, 32.30737 + 82, 88, 98, 81, 77, 65, 64, 67, 71, 71, 103, 136, 121, 120, 145, 125, 32.30738 + 86, 122, 188, 221, 230, 226, 232, 214, 188, 175, 181, 191, 174, 147, 141, 151, 32.30739 + 142, 161, 168, 181, 163, 163, 147, 151, 163, 172, 185, 192, 201, 201, 212, 193, 32.30740 + 176, 162, 156, 149, 140, 132, 127, 130, 131, 133, 140, 147, 155, 161, 165, 172, 32.30741 + 183, 187, 191, 198, 210, 219, 216, 210, 201, 189, 176, 167, 158, 156, 151, 154, 32.30742 + 154, 137, 143, 152, 146, 167, 159, 166, 182, 194, 188, 180, 189, 213, 237, 237, 32.30743 + 232, 230, 202, 144, 78, 120, 112, 133, 135, 108, 96, 96, 135, 60, 153, 82, 32.30744 + 60, 66, 96, 87, 106, 91, 91, 85, 81, 81, 74, 67, 255, 255, 255, 255, 32.30745 + 255, 71, 85, 74, 61, 98, 73, 86, 69, 76, 59, 78, 95, 91, 112, 148, 32.30746 + 122, 137, 139, 106, 77, 140, 209, 213, 235, 230, 220, 201, 188, 180, 167, 145, 32.30747 + 133, 139, 153, 187, 183, 192, 157, 150, 123, 135, 163, 167, 174, 180, 185, 190, 32.30748 + 196, 195, 202, 190, 174, 158, 144, 137, 138, 139, 155, 167, 177, 170, 156, 148, 32.30749 + 154, 163, 161, 164, 171, 177, 184, 195, 209, 220, 210, 198, 187, 178, 173, 165, 32.30750 + 153, 145, 136, 156, 166, 132, 146, 179, 161, 173, 162, 156, 158, 165, 172, 174, 32.30751 + 185, 206, 233, 236, 239, 223, 203, 184, 90, 105, 130, 119, 138, 115, 79, 55, 32.30752 + 110, 121, 100, 102, 85, 81, 71, 84, 115, 124, 115, 92, 64, 45, 48, 63, 32.30753 + 255, 255, 255, 255, 255, 69, 71, 54, 91, 95, 115, 84, 89, 60, 70, 98, 32.30754 + 99, 107, 117, 131, 125, 156, 131, 89, 82, 162, 201, 220, 221, 230, 208, 195, 32.30755 + 181, 165, 141, 124, 131, 159, 106, 152, 156, 177, 148, 166, 165, 201, 203, 202, 32.30756 + 200, 197, 195, 197, 203, 205, 192, 186, 172, 153, 139, 140, 160, 178, 200, 209, 32.30757 + 217, 213, 197, 182, 172, 164, 161, 161, 166, 171, 178, 189, 201, 211, 209, 193, 32.30758 + 179, 175, 180, 179, 169, 159, 174, 184, 162, 146, 167, 177, 168, 183, 166, 172, 32.30759 + 166, 149, 146, 162, 183, 198, 220, 234, 239, 216, 212, 197, 120, 93, 117, 120, 32.30760 + 152, 120, 73, 109, 88, 98, 102, 125, 69, 90, 61, 94, 81, 86, 87, 91, 32.30761 + 82, 65, 64, 76, 133, 255, 255, 255, 255, 69, 82, 79, 86, 101, 78, 92, 32.30762 + 89, 77, 87, 101, 60, 95, 118, 122, 129, 152, 145, 84, 125, 169, 216, 223, 32.30763 + 221, 229, 214, 189, 150, 122, 130, 157, 170, 171, 190, 194, 151, 160, 143, 170, 32.30764 + 155, 168, 232, 227, 218, 207, 199, 200, 205, 209, 186, 179, 168, 149, 140, 153, 32.30765 + 190, 222, 220, 219, 220, 227, 234, 224, 199, 172, 160, 158, 163, 165, 170, 175, 32.30766 + 184, 194, 195, 198, 198, 191, 181, 179, 187, 199, 237, 212, 148, 159, 176, 137, 32.30767 + 141, 171, 134, 175, 190, 160, 138, 151, 173, 180, 213, 236, 238, 210, 219, 186, 32.30768 + 135, 76, 121, 122, 135, 145, 122, 60, 87, 92, 120, 114, 66, 69, 87, 80, 32.30769 + 92, 98, 90, 80, 81, 90, 81, 60, 63, 255, 255, 255, 195, 75, 73, 65, 32.30770 + 62, 65, 106, 86, 81, 96, 80, 67, 70, 89, 121, 119, 115, 146, 120, 97, 32.30771 + 97, 186, 209, 218, 223, 211, 205, 180, 141, 122, 144, 93, 182, 217, 233, 163, 32.30772 + 92, 89, 58, 84, 87, 149, 150, 237, 226, 221, 227, 189, 176, 164, 179, 143, 32.30773 + 122, 148, 197, 218, 223, 233, 233, 229, 227, 228, 231, 236, 237, 231, 183, 164, 32.30774 + 152, 194, 168, 173, 198, 190, 205, 200, 195, 196, 209, 226, 230, 227, 208, 169, 32.30775 + 158, 110, 100, 139, 156, 186, 231, 159, 145, 191, 161, 133, 139, 181, 197, 218, 32.30776 + 228, 222, 216, 197, 148, 98, 97, 140, 123, 143, 118, 87, 124, 93, 115, 101, 32.30777 + 71, 40, 98, 85, 122, 138, 169, 140, 111, 65, 64, 57, 76, 255, 255, 255, 32.30778 + 74, 74, 89, 85, 99, 101, 99, 91, 103, 109, 87, 78, 107, 82, 135, 120, 32.30779 + 139, 128, 111, 94, 104, 188, 208, 218, 220, 206, 197, 170, 114, 143, 99, 167, 32.30780 + 226, 224, 218, 127, 110, 81, 105, 205, 120, 142, 126, 229, 236, 217, 207, 184, 32.30781 + 185, 169, 136, 130, 137, 172, 218, 237, 242, 248, 236, 230, 227, 227, 233, 237, 32.30782 + 240, 235, 211, 176, 166, 175, 169, 164, 191, 193, 172, 187, 204, 208, 213, 221, 32.30783 + 229, 235, 190, 147, 103, 91, 85, 95, 130, 143, 224, 228, 202, 140, 173, 143, 32.30784 + 139, 149, 193, 210, 217, 213, 210, 195, 151, 103, 89, 133, 125, 146, 125, 88, 32.30785 + 112, 80, 107, 72, 49, 56, 67, 86, 114, 91, 71, 71, 61, 57, 55, 67, 32.30786 + 76, 255, 255, 255, 73, 73, 78, 51, 60, 93, 96, 121, 122, 95, 83, 87, 32.30787 + 101, 108, 123, 136, 142, 127, 101, 93, 118, 193, 213, 217, 218, 207, 194, 167, 32.30788 + 121, 113, 137, 202, 226, 225, 204, 114, 107, 64, 100, 217, 114, 110, 136, 196, 32.30789 + 198, 191, 186, 170, 169, 142, 113, 140, 171, 202, 233, 243, 243, 246, 238, 234, 32.30790 + 231, 232, 236, 241, 245, 239, 233, 191, 184, 157, 171, 162, 175, 182, 181, 182, 32.30791 + 185, 188, 199, 213, 216, 217, 153, 150, 121, 166, 159, 107, 129, 107, 210, 224, 32.30792 + 214, 203, 122, 131, 131, 144, 182, 198, 207, 208, 211, 204, 169, 130, 87, 126, 32.30793 + 126, 149, 136, 103, 114, 88, 95, 114, 69, 77, 74, 101, 103, 117, 105, 110, 32.30794 + 91, 92, 68, 77, 65, 255, 255, 255, 72, 72, 74, 67, 77, 113, 97, 106, 32.30795 + 101, 100, 92, 93, 95, 134, 115, 129, 131, 126, 94, 95, 138, 200, 217, 220, 32.30796 + 218, 204, 168, 131, 89, 105, 135, 179, 152, 183, 165, 137, 124, 134, 162, 221, 32.30797 + 207, 217, 202, 197, 185, 194, 186, 161, 155, 134, 119, 163, 199, 219, 239, 246, 32.30798 + 241, 240, 241, 236, 235, 236, 239, 243, 246, 242, 236, 210, 203, 161, 170, 176, 32.30799 + 161, 162, 191, 184, 177, 178, 188, 195, 192, 188, 119, 118, 83, 114, 102, 71, 32.30800 + 128, 136, 204, 230, 226, 193, 171, 97, 88, 147, 163, 188, 204, 209, 212, 208, 32.30801 + 184, 156, 100, 128, 131, 151, 150, 126, 127, 117, 67, 105, 53, 49, 54, 84, 32.30802 + 86, 120, 116, 157, 177, 162, 103, 74, 69, 255, 255, 255, 71, 71, 77, 84, 32.30803 + 84, 120, 120, 108, 85, 110, 106, 104, 122, 124, 126, 105, 134, 108, 93, 100, 32.30804 + 158, 204, 216, 216, 212, 196, 185, 89, 138, 117, 166, 146, 181, 168, 196, 212, 32.30805 + 198, 225, 220, 210, 222, 221, 226, 205, 189, 189, 166, 144, 146, 138, 139, 183, 32.30806 + 211, 220, 237, 249, 251, 248, 243, 240, 238, 239, 243, 245, 246, 242, 228, 228, 32.30807 + 217, 178, 166, 197, 170, 165, 161, 174, 189, 194, 188, 182, 182, 187, 211, 215, 32.30808 + 208, 210, 180, 143, 150, 136, 131, 160, 154, 132, 154, 126, 112, 135, 152, 180, 32.30809 + 203, 208, 204, 196, 178, 160, 107, 124, 131, 146, 155, 137, 122, 126, 101, 84, 32.30810 + 57, 60, 67, 108, 139, 121, 151, 122, 91, 58, 65, 68, 79, 255, 255, 255, 32.30811 + 72, 72, 78, 80, 72, 101, 132, 118, 88, 107, 85, 121, 117, 117, 110, 125, 32.30812 + 140, 97, 97, 104, 172, 201, 212, 208, 201, 182, 148, 117, 120, 147, 138, 181, 32.30813 + 173, 190, 192, 202, 211, 220, 223, 229, 218, 207, 202, 189, 169, 153, 144, 153, 32.30814 + 148, 122, 172, 204, 216, 216, 230, 245, 248, 249, 246, 241, 238, 239, 243, 245, 32.30815 + 245, 239, 228, 235, 221, 199, 171, 203, 193, 191, 163, 167, 176, 184, 189, 191, 32.30816 + 197, 207, 216, 211, 220, 220, 216, 220, 214, 200, 208, 203, 186, 194, 137, 154, 32.30817 + 135, 124, 145, 174, 200, 206, 202, 195, 184, 171, 112, 118, 130, 140, 155, 137, 32.30818 + 103, 115, 84, 79, 59, 48, 78, 92, 125, 121, 100, 107, 125, 94, 84, 57, 32.30819 + 72, 255, 255, 255, 73, 74, 81, 99, 117, 109, 103, 83, 91, 103, 74, 131, 32.30820 + 93, 125, 110, 152, 135, 96, 106, 112, 185, 199, 208, 203, 191, 169, 151, 155, 32.30821 + 153, 150, 188, 203, 202, 221, 216, 212, 219, 209, 218, 232, 216, 201, 186, 177, 32.30822 + 164, 150, 165, 181, 164, 139, 196, 217, 221, 215, 224, 233, 238, 241, 245, 242, 32.30823 + 239, 237, 238, 238, 238, 233, 232, 228, 224, 221, 192, 188, 211, 209, 196, 180, 32.30824 + 167, 169, 178, 188, 197, 205, 215, 209, 218, 225, 230, 239, 234, 219, 215, 222, 32.30825 + 218, 179, 205, 146, 140, 162, 147, 168, 189, 198, 200, 198, 188, 177, 123, 118, 32.30826 + 127, 130, 150, 136, 93, 116, 74, 98, 68, 45, 79, 69, 90, 127, 96, 99, 32.30827 + 103, 89, 78, 72, 76, 255, 255, 255, 74, 75, 75, 73, 98, 80, 79, 87, 32.30828 + 110, 80, 99, 132, 103, 121, 150, 143, 135, 92, 114, 120, 192, 200, 208, 203, 32.30829 + 189, 165, 164, 140, 151, 183, 182, 197, 216, 204, 206, 213, 205, 210, 204, 180, 32.30830 + 184, 173, 163, 168, 175, 176, 178, 174, 161, 171, 198, 216, 221, 216, 221, 228, 32.30831 + 231, 238, 242, 241, 237, 237, 235, 232, 230, 227, 234, 218, 228, 237, 211, 168, 32.30832 + 213, 210, 207, 202, 193, 184, 170, 162, 171, 186, 205, 209, 212, 225, 219, 208, 32.30833 + 221, 209, 215, 205, 206, 214, 184, 187, 172, 142, 158, 170, 183, 189, 192, 191, 32.30834 + 179, 165, 140, 126, 129, 125, 148, 142, 101, 134, 105, 87, 61, 59, 53, 61, 32.30835 + 94, 101, 133, 139, 125, 120, 92, 93, 79, 255, 255, 255, 194, 72, 74, 73, 32.30836 + 44, 105, 124, 119, 83, 135, 92, 130, 88, 138, 139, 177, 101, 127, 94, 157, 32.30837 + 202, 199, 191, 185, 173, 162, 144, 149, 160, 173, 186, 196, 209, 213, 208, 199, 32.30838 + 186, 172, 166, 167, 174, 180, 174, 186, 194, 197, 218, 155, 147, 204, 219, 204, 32.30839 + 214, 216, 178, 198, 208, 224, 245, 228, 245, 230, 232, 223, 217, 195, 219, 230, 32.30840 + 227, 228, 228, 199, 185, 204, 222, 231, 206, 193, 182, 172, 182, 165, 165, 177, 32.30841 + 194, 208, 214, 216, 218, 216, 216, 216, 212, 206, 198, 188, 181, 177, 154, 159, 32.30842 + 162, 167, 181, 193, 184, 165, 141, 130, 122, 132, 154, 158, 95, 137, 153, 101, 32.30843 + 68, 57, 48, 81, 77, 98, 107, 86, 97, 102, 92, 105, 62, 255, 255, 255, 32.30844 + 255, 72, 54, 94, 108, 107, 104, 97, 111, 152, 100, 127, 118, 135, 145, 147, 32.30845 + 114, 136, 100, 155, 192, 181, 170, 166, 160, 156, 158, 161, 171, 178, 185, 190, 32.30846 + 195, 196, 172, 170, 167, 164, 165, 170, 177, 183, 198, 199, 214, 211, 195, 168, 32.30847 + 185, 211, 210, 211, 204, 186, 133, 115, 142, 243, 230, 224, 236, 222, 228, 216, 32.30848 + 138, 142, 153, 205, 228, 226, 226, 213, 188, 175, 215, 234, 222, 214, 200, 184, 32.30849 + 190, 174, 167, 170, 177, 182, 190, 200, 211, 219, 217, 216, 214, 208, 201, 191, 32.30850 + 183, 176, 166, 162, 157, 157, 171, 185, 181, 165, 156, 152, 134, 119, 140, 164, 32.30851 + 110, 132, 149, 108, 82, 55, 51, 78, 84, 94, 132, 133, 104, 113, 97, 77, 32.30852 + 92, 255, 255, 255, 255, 72, 78, 58, 77, 87, 120, 89, 103, 108, 98, 94, 32.30853 + 143, 124, 188, 130, 154, 146, 124, 164, 186, 170, 161, 160, 162, 164, 168, 167, 32.30854 + 171, 172, 171, 166, 165, 165, 153, 158, 166, 174, 182, 189, 195, 199, 223, 216, 32.30855 + 230, 222, 174, 189, 224, 221, 220, 191, 135, 126, 123, 89, 80, 193, 221, 229, 32.30856 + 233, 221, 227, 200, 60, 78, 129, 146, 166, 203, 237, 229, 204, 195, 202, 226, 32.30857 + 233, 234, 220, 204, 205, 191, 186, 179, 175, 170, 170, 177, 185, 193, 201, 202, 32.30858 + 203, 200, 197, 191, 186, 180, 179, 171, 157, 150, 159, 174, 176, 168, 141, 141, 32.30859 + 136, 127, 144, 157, 100, 98, 152, 123, 97, 63, 52, 75, 85, 89, 92, 89, 32.30860 + 99, 90, 78, 56, 59, 255, 255, 255, 255, 70, 63, 79, 118, 95, 108, 105, 32.30861 + 121, 84, 123, 119, 103, 148, 140, 146, 129, 121, 145, 171, 180, 168, 165, 171, 32.30862 + 173, 175, 173, 167, 163, 156, 152, 148, 148, 148, 165, 173, 185, 196, 204, 211, 32.30863 + 215, 218, 231, 228, 228, 222, 174, 205, 234, 229, 214, 192, 137, 116, 108, 86, 32.30864 + 87, 198, 223, 234, 233, 224, 222, 171, 45, 47, 116, 112, 132, 190, 236, 236, 32.30865 + 227, 230, 190, 211, 229, 235, 231, 222, 220, 213, 202, 198, 190, 182, 173, 169, 32.30866 + 168, 167, 176, 178, 178, 182, 185, 188, 188, 190, 185, 178, 163, 150, 150, 160, 32.30867 + 168, 168, 173, 145, 131, 124, 132, 138, 117, 134, 131, 112, 82, 80, 60, 92, 32.30868 + 102, 120, 88, 111, 97, 111, 111, 55, 91, 255, 255, 255, 255, 70, 85, 43, 32.30869 + 65, 114, 116, 89, 90, 93, 155, 126, 119, 125, 151, 129, 156, 133, 150, 163, 32.30870 + 166, 162, 174, 183, 179, 175, 172, 164, 157, 149, 149, 153, 161, 169, 188, 195, 32.30871 + 204, 212, 217, 222, 225, 229, 229, 236, 219, 219, 201, 222, 228, 237, 195, 181, 32.30872 + 134, 92, 64, 86, 118, 196, 226, 232, 235, 229, 216, 148, 98, 68, 84, 122, 32.30873 + 168, 200, 218, 230, 236, 232, 195, 206, 225, 231, 233, 235, 229, 226, 211, 210, 32.30874 + 205, 201, 194, 185, 179, 173, 170, 170, 168, 170, 175, 181, 185, 189, 187, 186, 32.30875 + 178, 163, 153, 154, 163, 170, 151, 139, 153, 155, 150, 138, 119, 110, 132, 111, 32.30876 + 66, 101, 64, 90, 91, 123, 131, 88, 121, 81, 85, 83, 53, 255, 255, 255, 32.30877 + 255, 193, 60, 76, 102, 122, 86, 95, 117, 133, 117, 129, 118, 152, 146, 147, 32.30878 + 163, 151, 148, 158, 162, 168, 186, 190, 181, 176, 165, 160, 156, 153, 158, 173, 32.30879 + 187, 199, 208, 212, 219, 222, 227, 229, 232, 237, 228, 239, 219, 214, 224, 233, 32.30880 + 230, 244, 232, 203, 159, 128, 120, 171, 182, 196, 231, 233, 243, 237, 213, 163, 32.30881 + 172, 130, 110, 128, 170, 209, 219, 226, 235, 236, 207, 209, 227, 230, 233, 239, 32.30882 + 230, 234, 229, 225, 220, 214, 209, 204, 197, 192, 188, 184, 178, 175, 176, 179, 32.30883 + 182, 185, 189, 192, 190, 178, 163, 156, 161, 168, 161, 155, 159, 126, 110, 120, 32.30884 + 134, 108, 143, 113, 63, 104, 68, 78, 79, 106, 136, 117, 106, 98, 95, 76, 32.30885 + 76, 255, 255, 255, 255, 255, 83, 49, 48, 98, 102, 97, 101, 123, 93, 117, 32.30886 + 138, 131, 161, 115, 152, 122, 151, 162, 172, 182, 196, 196, 184, 179, 162, 161, 32.30887 + 164, 169, 178, 190, 204, 213, 222, 225, 230, 230, 232, 234, 236, 240, 231, 238, 32.30888 + 230, 212, 229, 234, 242, 242, 225, 214, 191, 176, 166, 195, 190, 207, 233, 241, 32.30889 + 251, 240, 209, 195, 204, 183, 174, 145, 166, 217, 233, 229, 236, 244, 210, 209, 32.30890 + 233, 233, 234, 239, 225, 235, 241, 236, 230, 224, 219, 216, 210, 203, 202, 199, 32.30891 + 194, 190, 188, 188, 187, 188, 197, 198, 197, 190, 178, 168, 166, 168, 159, 159, 32.30892 + 178, 154, 134, 131, 140, 87, 129, 96, 60, 87, 84, 80, 99, 107, 107, 93, 32.30893 + 110, 105, 88, 85, 56, 255, 255, 255, 255, 255, 69, 71, 82, 98, 103, 101, 32.30894 + 112, 126, 100, 139, 123, 143, 152, 154, 176, 163, 154, 168, 180, 190, 199, 192, 32.30895 + 183, 183, 174, 177, 185, 194, 201, 208, 216, 220, 230, 233, 236, 236, 234, 233, 32.30896 + 234, 235, 234, 235, 240, 208, 215, 226, 249, 233, 229, 219, 189, 185, 193, 205, 32.30897 + 190, 230, 227, 244, 248, 231, 200, 220, 201, 207, 197, 191, 210, 231, 228, 232, 32.30898 + 237, 225, 199, 204, 237, 237, 235, 239, 227, 242, 235, 233, 231, 230, 231, 228, 32.30899 + 222, 217, 208, 206, 206, 204, 203, 201, 200, 200, 205, 203, 200, 197, 189, 177, 32.30900 + 169, 166, 170, 145, 158, 147, 128, 113, 132, 91, 150, 112, 81, 77, 91, 68, 32.30901 + 94, 78, 90, 116, 97, 121, 88, 62, 71, 255, 255, 255, 255, 255, 195, 68, 32.30902 + 87, 146, 75, 154, 132, 112, 103, 134, 113, 159, 132, 176, 172, 178, 161, 180, 32.30903 + 200, 196, 190, 190, 188, 183, 189, 194, 202, 211, 220, 229, 235, 239, 238, 239, 32.30904 + 242, 243, 244, 245, 244, 242, 240, 241, 232, 210, 197, 204, 218, 224, 210, 196, 32.30905 + 188, 194, 202, 208, 214, 224, 237, 240, 239, 231, 224, 220, 216, 212, 212, 215, 32.30906 + 221, 224, 227, 223, 221, 217, 176, 205, 230, 237, 240, 245, 249, 244, 239, 237, 32.30907 + 237, 236, 236, 235, 235, 233, 226, 221, 216, 212, 212, 211, 208, 207, 211, 208, 32.30908 + 205, 206, 203, 191, 172, 158, 161, 167, 142, 156, 150, 127, 130, 89, 172, 96, 32.30909 + 92, 83, 88, 79, 87, 81, 94, 106, 100, 144, 87, 107, 74, 255, 255, 255, 32.30910 + 255, 255, 255, 57, 119, 63, 132, 120, 101, 104, 107, 119, 133, 158, 159, 179, 32.30911 + 196, 170, 167, 185, 197, 195, 188, 189, 188, 186, 198, 203, 212, 221, 229, 237, 32.30912 + 241, 244, 244, 244, 244, 244, 244, 244, 244, 240, 236, 240, 233, 211, 188, 178, 32.30913 + 179, 179, 175, 170, 175, 191, 205, 213, 224, 231, 239, 241, 239, 233, 231, 229, 32.30914 + 226, 220, 209, 206, 207, 210, 213, 210, 202, 194, 188, 212, 232, 236, 239, 246, 32.30915 + 249, 242, 242, 238, 239, 239, 240, 240, 240, 239, 233, 228, 225, 220, 220, 217, 32.30916 + 214, 212, 211, 209, 207, 208, 207, 197, 184, 170, 160, 174, 156, 160, 142, 118, 32.30917 + 126, 91, 160, 79, 107, 71, 81, 98, 81, 114, 102, 113, 95, 104, 49, 61, 32.30918 + 52, 255, 255, 255, 255, 255, 255, 188, 98, 111, 83, 119, 124, 119, 105, 106, 32.30919 + 142, 153, 182, 178, 202, 157, 177, 188, 196, 193, 188, 190, 192, 190, 205, 211, 32.30920 + 219, 229, 234, 240, 243, 243, 244, 243, 242, 241, 241, 241, 239, 238, 231, 235, 32.30921 + 228, 204, 178, 159, 152, 149, 156, 162, 178, 196, 211, 219, 231, 238, 240, 241, 32.30922 + 238, 234, 236, 235, 230, 220, 211, 202, 195, 192, 191, 184, 170, 159, 196, 213, 32.30923 + 226, 230, 233, 241, 243, 238, 240, 238, 240, 240, 241, 241, 241, 241, 239, 234, 32.30924 + 230, 225, 225, 222, 218, 216, 213, 210, 208, 209, 208, 201, 192, 181, 159, 176, 32.30925 + 165, 157, 131, 111, 123, 99, 117, 103, 96, 91, 102, 81, 90, 100, 102, 107, 32.30926 + 86, 89, 77, 83, 69, 255, 255, 255, 255, 255, 255, 255, 75, 94, 115, 104, 32.30927 + 153, 123, 98, 118, 129, 148, 182, 178, 177, 152, 188, 193, 193, 188, 185, 191, 32.30928 + 196, 200, 214, 218, 227, 234, 238, 240, 243, 242, 244, 241, 240, 239, 239, 238, 32.30929 + 239, 237, 232, 224, 211, 191, 170, 156, 153, 151, 154, 165, 184, 201, 212, 219, 32.30930 + 230, 236, 238, 240, 237, 234, 237, 238, 229, 217, 215, 205, 194, 183, 176, 170, 32.30931 + 159, 153, 189, 199, 212, 219, 229, 237, 241, 237, 238, 238, 240, 240, 242, 242, 32.30932 + 242, 242, 242, 239, 234, 232, 229, 225, 221, 219, 220, 216, 212, 209, 207, 201, 32.30933 + 193, 184, 161, 171, 160, 148, 127, 115, 123, 100, 87, 117, 84, 95, 108, 70, 32.30934 + 89, 86, 92, 98, 85, 82, 100, 93, 73, 255, 255, 255, 255, 255, 255, 255, 32.30935 + 70, 86, 135, 114, 161, 62, 101, 147, 110, 152, 168, 178, 140, 163, 197, 195, 32.30936 + 189, 184, 184, 193, 204, 210, 219, 222, 230, 235, 238, 240, 242, 241, 241, 239, 32.30937 + 239, 239, 237, 237, 238, 234, 228, 212, 194, 178, 167, 159, 155, 153, 155, 169, 32.30938 + 187, 199, 209, 218, 227, 235, 239, 239, 237, 235, 238, 238, 229, 217, 213, 207, 32.30939 + 199, 187, 179, 177, 177, 178, 178, 186, 199, 210, 223, 231, 237, 237, 237, 237, 32.30940 + 238, 238, 240, 240, 242, 242, 242, 240, 236, 234, 231, 227, 223, 220, 225, 220, 32.30941 + 214, 209, 205, 200, 193, 187, 165, 160, 149, 145, 135, 125, 117, 87, 89, 97, 32.30942 + 94, 66, 83, 95, 75, 110, 113, 123, 111, 82, 81, 67, 64, 255, 255, 255, 32.30943 + 255, 255, 255, 255, 255, 144, 98, 160, 136, 53, 115, 162, 107, 157, 155, 164, 32.30944 + 125, 181, 199, 194, 187, 184, 188, 199, 210, 218, 224, 227, 233, 236, 239, 239, 32.30945 + 240, 240, 238, 237, 237, 237, 237, 235, 232, 228, 217, 200, 183, 172, 165, 155, 32.30946 + 146, 144, 158, 174, 191, 201, 211, 224, 234, 241, 236, 240, 239, 236, 236, 238, 32.30947 + 232, 222, 218, 213, 207, 192, 180, 174, 179, 182, 175, 181, 193, 204, 213, 222, 32.30948 + 227, 229, 234, 236, 237, 237, 240, 240, 242, 242, 241, 240, 236, 235, 235, 231, 32.30949 + 226, 222, 223, 221, 215, 212, 208, 201, 198, 192, 173, 151, 144, 149, 146, 132, 32.30950 + 109, 79, 79, 103, 90, 71, 80, 100, 83, 104, 120, 127, 116, 92, 83, 76, 32.30951 + 135, 255, 255, 255, 255, 255, 255, 255, 255, 104, 138, 143, 93, 111, 128, 141, 32.30952 + 117, 154, 145, 129, 133, 188, 193, 187, 186, 189, 198, 206, 215, 220, 230, 232, 32.30953 + 234, 235, 238, 239, 242, 242, 236, 236, 237, 235, 232, 227, 223, 216, 199, 185, 32.30954 + 173, 165, 155, 146, 143, 149, 170, 187, 198, 205, 215, 227, 235, 237, 230, 234, 32.30955 + 235, 233, 233, 236, 234, 228, 228, 221, 213, 197, 183, 172, 169, 167, 174, 179, 32.30956 + 186, 195, 202, 207, 214, 224, 230, 233, 235, 236, 239, 239, 242, 242, 242, 239, 32.30957 + 236, 236, 237, 234, 229, 226, 225, 221, 217, 214, 210, 203, 201, 196, 185, 149, 32.30958 + 140, 144, 138, 124, 109, 101, 62, 108, 88, 86, 83, 96, 96, 96, 91, 95, 32.30959 + 93, 88, 74, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 126, 103, 32.30960 + 104, 110, 134, 110, 126, 143, 136, 94, 146, 184, 188, 184, 186, 194, 205, 212, 32.30961 + 217, 221, 234, 235, 235, 235, 238, 239, 243, 242, 235, 234, 236, 233, 228, 222, 32.30962 + 213, 207, 185, 173, 163, 154, 145, 140, 148, 164, 179, 194, 203, 206, 212, 220, 32.30963 + 223, 221, 222, 228, 230, 229, 228, 233, 234, 233, 232, 225, 216, 206, 194, 185, 32.30964 + 173, 165, 173, 175, 180, 185, 190, 196, 208, 219, 227, 232, 234, 235, 236, 239, 32.30965 + 241, 241, 242, 241, 239, 238, 238, 235, 233, 228, 228, 227, 222, 216, 211, 205, 32.30966 + 200, 195, 196, 151, 135, 133, 123, 116, 118, 131, 63, 75, 104, 67, 58, 121, 32.30967 + 89, 128, 86, 101, 107, 97, 52, 62, 255, 255, 255, 255, 255, 255, 255, 255, 32.30968 + 255, 102, 138, 121, 132, 148, 155, 104, 107, 131, 112, 108, 150, 185, 190, 179, 32.30969 + 199, 204, 204, 215, 218, 228, 234, 237, 238, 240, 242, 241, 240, 237, 233, 235, 32.30970 + 236, 228, 222, 217, 201, 184, 175, 167, 156, 150, 151, 158, 170, 182, 188, 193, 32.30971 + 194, 199, 203, 207, 207, 208, 209, 204, 206, 213, 213, 210, 218, 228, 228, 224, 32.30972 + 221, 218, 212, 199, 182, 168, 171, 175, 182, 186, 187, 191, 198, 206, 218, 228, 32.30973 + 237, 239, 235, 234, 241, 246, 241, 241, 239, 237, 236, 234, 234, 234, 235, 230, 32.30974 + 225, 220, 216, 209, 202, 196, 194, 155, 135, 125, 139, 120, 118, 111, 77, 52, 32.30975 + 107, 81, 63, 81, 137, 118, 85, 97, 88, 78, 85, 83, 255, 255, 255, 255, 32.30976 + 255, 255, 255, 255, 255, 84, 113, 122, 138, 139, 176, 117, 108, 121, 103, 106, 32.30977 + 152, 186, 188, 179, 201, 207, 208, 219, 221, 229, 236, 238, 240, 240, 242, 241, 32.30978 + 240, 235, 232, 231, 231, 225, 216, 203, 190, 176, 164, 161, 159, 162, 167, 175, 32.30979 + 183, 191, 194, 201, 203, 205, 209, 213, 216, 219, 216, 217, 219, 220, 215, 211, 32.30980 + 215, 223, 224, 219, 215, 215, 213, 208, 197, 190, 180, 179, 176, 178, 183, 190, 32.30981 + 196, 202, 215, 220, 226, 229, 235, 237, 240, 243, 241, 241, 239, 239, 237, 236, 32.30982 + 236, 234, 235, 232, 227, 220, 217, 209, 202, 196, 187, 157, 135, 114, 128, 117, 32.30983 + 111, 90, 91, 61, 99, 66, 60, 78, 127, 117, 93, 83, 87, 86, 68, 66, 32.30984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 126, 92, 94, 166, 160, 102, 32.30985 + 90, 107, 97, 110, 156, 188, 184, 179, 203, 211, 213, 222, 225, 232, 237, 240, 32.30986 + 240, 242, 242, 241, 238, 235, 234, 227, 225, 220, 206, 187, 177, 171, 161, 165, 32.30987 + 170, 179, 187, 192, 195, 197, 207, 211, 212, 214, 215, 218, 221, 223, 216, 226, 32.30988 + 231, 227, 221, 220, 222, 222, 221, 216, 213, 212, 215, 217, 214, 212, 198, 189, 32.30989 + 178, 176, 181, 191, 197, 203, 212, 212, 214, 221, 234, 240, 241, 237, 241, 241, 32.30990 + 239, 239, 237, 236, 236, 236, 237, 233, 228, 223, 218, 212, 203, 196, 185, 163, 32.30991 + 141, 112, 125, 121, 111, 80, 85, 66, 93, 60, 70, 72, 97, 91, 124, 72, 32.30992 + 67, 81, 64, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 112, 135, 32.30993 + 96, 154, 129, 80, 78, 99, 100, 118, 160, 181, 186, 178, 204, 213, 214, 226, 32.30994 + 230, 237, 239, 240, 242, 242, 242, 241, 238, 235, 233, 222, 215, 209, 196, 178, 32.30995 + 172, 177, 177, 181, 187, 195, 199, 202, 201, 203, 212, 213, 212, 214, 218, 218, 32.30996 + 215, 212, 206, 222, 231, 226, 222, 224, 226, 223, 227, 221, 217, 215, 217, 220, 32.30997 + 219, 219, 216, 207, 197, 189, 191, 196, 203, 209, 211, 209, 210, 219, 231, 239, 32.30998 + 240, 236, 241, 241, 239, 239, 239, 237, 237, 236, 237, 235, 230, 224, 219, 212, 32.30999 + 204, 197, 186, 162, 141, 116, 131, 124, 113, 83, 87, 80, 94, 59, 83, 72, 32.31000 + 81, 90, 134, 83, 64, 68, 65, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.31001 + 255, 102, 126, 173, 89, 157, 119, 81, 84, 103, 101, 120, 157, 170, 189, 180, 32.31002 + 204, 212, 213, 226, 232, 241, 239, 242, 242, 242, 242, 241, 238, 235, 231, 218, 32.31003 + 208, 201, 191, 178, 180, 190, 197, 198, 199, 202, 205, 208, 211, 212, 212, 210, 32.31004 + 208, 213, 220, 220, 212, 203, 200, 215, 226, 222, 218, 220, 220, 216, 226, 225, 32.31005 + 223, 221, 221, 222, 221, 220, 226, 222, 217, 208, 204, 204, 210, 215, 213, 214, 32.31006 + 217, 223, 229, 234, 238, 239, 241, 241, 241, 239, 239, 237, 237, 237, 240, 236, 32.31007 + 231, 227, 220, 213, 205, 198, 187, 156, 136, 117, 131, 115, 102, 80, 106, 97, 32.31008 + 94, 51, 84, 76, 94, 125, 109, 101, 79, 61, 62, 69, 255, 255, 255, 255, 32.31009 + 255, 255, 255, 255, 255, 97, 118, 194, 98, 117, 107, 79, 87, 101, 95, 118, 32.31010 + 159, 170, 192, 182, 202, 211, 212, 228, 234, 244, 241, 242, 242, 242, 242, 241, 32.31011 + 238, 235, 226, 216, 206, 198, 193, 191, 195, 203, 206, 206, 206, 207, 211, 216, 32.31012 + 221, 223, 221, 215, 214, 219, 227, 228, 220, 211, 210, 217, 225, 223, 220, 219, 32.31013 + 218, 215, 221, 222, 224, 225, 225, 225, 224, 223, 227, 228, 229, 225, 217, 214, 32.31014 + 217, 218, 217, 220, 225, 225, 229, 230, 237, 241, 241, 241, 241, 241, 239, 239, 32.31015 + 237, 237, 241, 236, 233, 227, 221, 214, 205, 199, 190, 158, 138, 120, 130, 109, 32.31016 + 97, 79, 97, 87, 83, 46, 85, 75, 92, 128, 100, 100, 71, 49, 64, 77, 32.31017 + 255, 255, 255, 255, 255, 255, 255, 255, 198, 137, 147, 144, 80, 121, 86, 70, 32.31018 + 87, 100, 89, 115, 159, 172, 191, 182, 204, 213, 216, 228, 232, 241, 241, 244, 32.31019 + 244, 244, 242, 241, 238, 235, 221, 216, 209, 201, 202, 207, 212, 212, 207, 209, 32.31020 + 212, 214, 219, 222, 226, 227, 225, 223, 221, 221, 219, 218, 216, 214, 206, 205, 32.31021 + 210, 217, 221, 220, 223, 223, 217, 219, 223, 225, 225, 226, 226, 225, 226, 228, 32.31022 + 231, 230, 229, 228, 226, 223, 221, 223, 227, 227, 230, 232, 239, 242, 241, 241, 32.31023 + 241, 241, 239, 239, 237, 237, 242, 237, 234, 228, 221, 215, 206, 199, 188, 167, 32.31024 + 149, 121, 126, 113, 105, 83, 96, 78, 77, 48, 89, 75, 82, 109, 121, 88, 32.31025 + 59, 53, 67, 82, 255, 255, 255, 255, 255, 255, 255, 255, 91, 133, 135, 138, 32.31026 + 111, 104, 74, 68, 94, 108, 93, 115, 155, 165, 189, 182, 205, 216, 218, 228, 32.31027 + 229, 237, 241, 242, 244, 242, 242, 239, 238, 235, 219, 219, 216, 208, 212, 221, 32.31028 + 223, 216, 207, 211, 214, 218, 221, 222, 222, 221, 218, 217, 213, 206, 196, 192, 32.31029 + 195, 200, 184, 178, 184, 199, 210, 215, 219, 227, 218, 218, 222, 222, 223, 222, 32.31030 + 224, 224, 228, 227, 227, 232, 238, 239, 236, 230, 228, 225, 227, 228, 232, 236, 32.31031 + 240, 241, 241, 241, 241, 241, 239, 239, 237, 239, 242, 239, 234, 228, 222, 215, 32.31032 + 206, 200, 176, 168, 154, 115, 121, 119, 114, 85, 128, 95, 83, 48, 90, 78, 32.31033 + 88, 115, 132, 82, 71, 74, 58, 67, 255, 255, 255, 255, 255, 255, 255, 255, 32.31034 + 100, 134, 132, 138, 114, 102, 48, 60, 99, 94, 91, 107, 155, 167, 182, 191, 32.31035 + 202, 211, 216, 225, 233, 238, 240, 239, 241, 240, 241, 237, 233, 229, 225, 226, 32.31036 + 222, 215, 220, 230, 226, 215, 212, 215, 214, 208, 207, 213, 217, 215, 189, 177, 32.31037 + 167, 165, 163, 157, 154, 156, 171, 161, 154, 155, 165, 175, 177, 177, 194, 202, 32.31038 + 211, 214, 214, 216, 222, 228, 227, 226, 229, 232, 236, 242, 243, 240, 239, 238, 32.31039 + 236, 233, 231, 233, 237, 240, 239, 239, 239, 239, 239, 239, 239, 239, 240, 242, 32.31040 + 240, 229, 219, 212, 204, 195, 178, 165, 136, 122, 115, 116, 114, 78, 110, 105, 32.31041 + 58, 69, 87, 85, 82, 113, 110, 133, 67, 97, 76, 81, 255, 255, 255, 255, 32.31042 + 255, 255, 255, 197, 125, 130, 129, 101, 105, 87, 48, 55, 94, 95, 99, 112, 32.31043 + 158, 165, 182, 191, 202, 211, 216, 222, 232, 237, 238, 239, 239, 240, 238, 237, 32.31044 + 231, 228, 223, 224, 228, 232, 232, 225, 218, 214, 206, 206, 205, 208, 214, 212, 32.31045 + 192, 172, 146, 150, 165, 187, 203, 207, 209, 212, 213, 204, 194, 191, 197, 198, 32.31046 + 194, 188, 156, 145, 143, 164, 199, 221, 224, 216, 214, 218, 224, 232, 238, 239, 32.31047 + 239, 236, 239, 239, 237, 235, 233, 234, 238, 241, 239, 239, 239, 239, 239, 239, 32.31048 + 239, 241, 240, 244, 239, 229, 219, 211, 202, 192, 174, 162, 132, 119, 114, 114, 32.31049 + 112, 76, 91, 106, 59, 36, 54, 80, 98, 115, 128, 112, 48, 66, 75, 75, 32.31050 + 145, 255, 255, 255, 255, 255, 255, 65, 153, 182, 140, 76, 116, 50, 59, 53, 32.31051 + 83, 88, 96, 106, 151, 160, 181, 190, 201, 210, 216, 222, 232, 236, 237, 237, 32.31052 + 237, 238, 238, 236, 231, 228, 224, 222, 229, 242, 239, 224, 218, 223, 212, 211, 32.31053 + 209, 208, 206, 191, 164, 141, 147, 159, 181, 203, 218, 220, 220, 222, 229, 223, 32.31054 + 217, 218, 223, 223, 216, 209, 215, 195, 168, 153, 157, 174, 194, 207, 212, 212, 32.31055 + 211, 215, 221, 227, 233, 235, 235, 237, 237, 236, 235, 235, 238, 241, 239, 239, 32.31056 + 239, 239, 239, 239, 239, 241, 240, 241, 239, 228, 220, 211, 200, 190, 172, 160, 32.31057 + 132, 121, 115, 114, 112, 77, 73, 96, 66, 36, 47, 61, 81, 86, 143, 116, 32.31058 + 81, 52, 75, 74, 88, 255, 255, 255, 255, 255, 255, 97, 138, 157, 147, 73, 32.31059 + 88, 91, 93, 73, 90, 94, 102, 110, 156, 174, 179, 189, 201, 210, 215, 221, 32.31060 + 229, 235, 237, 237, 237, 238, 238, 235, 231, 227, 228, 226, 230, 235, 236, 228, 32.31061 + 226, 231, 219, 216, 206, 191, 169, 154, 144, 139, 140, 147, 157, 162, 161, 158, 32.31062 + 159, 161, 156, 152, 153, 157, 163, 166, 162, 155, 145, 153, 158, 150, 139, 140, 32.31063 + 159, 178, 192, 191, 193, 199, 211, 222, 230, 236, 235, 238, 239, 237, 235, 235, 32.31064 + 236, 238, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 238, 228, 219, 211, 32.31065 + 199, 186, 171, 160, 133, 125, 119, 115, 113, 81, 85, 85, 64, 55, 60, 43, 32.31066 + 60, 77, 113, 119, 134, 56, 69, 70, 84, 255, 255, 255, 255, 255, 208, 71, 32.31067 + 140, 169, 110, 85, 91, 79, 105, 74, 87, 95, 102, 103, 148, 171, 178, 188, 32.31068 + 200, 210, 215, 221, 227, 233, 237, 236, 236, 237, 236, 234, 230, 225, 225, 229, 32.31069 + 230, 229, 232, 234, 226, 214, 201, 191, 174, 156, 140, 135, 142, 153, 167, 172, 32.31070 + 176, 175, 173, 175, 182, 185, 188, 183, 182, 184, 189, 192, 191, 186, 179, 174, 32.31071 + 170, 165, 159, 151, 143, 139, 147, 153, 165, 181, 199, 212, 220, 226, 235, 239, 32.31072 + 240, 239, 236, 234, 234, 235, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.31073 + 235, 227, 219, 211, 197, 181, 169, 157, 135, 128, 121, 114, 112, 80, 117, 97, 32.31074 + 60, 55, 53, 44, 71, 99, 79, 99, 139, 63, 68, 63, 72, 77, 255, 255, 32.31075 + 255, 255, 57, 91, 145, 149, 133, 115, 65, 74, 113, 72, 80, 98, 107, 102, 32.31076 + 140, 160, 177, 185, 198, 208, 214, 220, 226, 232, 236, 236, 236, 237, 236, 234, 32.31077 + 228, 225, 222, 231, 234, 229, 230, 228, 211, 187, 171, 156, 140, 137, 143, 148, 32.31078 + 155, 162, 169, 177, 181, 184, 187, 192, 194, 196, 184, 180, 178, 179, 184, 189, 32.31079 + 190, 186, 192, 176, 162, 158, 160, 164, 163, 158, 144, 140, 140, 147, 162, 180, 32.31080 + 193, 207, 231, 238, 240, 240, 238, 235, 234, 234, 239, 239, 239, 239, 239, 239, 32.31081 + 239, 239, 240, 239, 234, 225, 219, 209, 193, 178, 165, 153, 132, 127, 118, 109, 32.31082 + 105, 76, 129, 128, 81, 66, 39, 62, 82, 89, 103, 95, 113, 85, 84, 68, 32.31083 + 60, 84, 255, 255, 255, 194, 71, 86, 133, 133, 130, 129, 133, 118, 159, 97, 32.31084 + 89, 107, 124, 115, 149, 167, 176, 184, 197, 208, 214, 220, 226, 229, 235, 234, 32.31085 + 235, 235, 236, 234, 228, 224, 224, 229, 234, 234, 230, 216, 198, 182, 174, 163, 32.31086 + 156, 158, 165, 168, 171, 177, 182, 189, 193, 195, 199, 204, 202, 197, 199, 197, 32.31087 + 198, 200, 205, 210, 211, 209, 196, 197, 200, 199, 192, 181, 168, 159, 166, 158, 32.31088 + 147, 145, 151, 166, 181, 196, 225, 233, 237, 238, 237, 236, 235, 235, 237, 237, 32.31089 + 237, 237, 237, 237, 237, 237, 238, 236, 233, 224, 219, 208, 192, 175, 163, 151, 32.31090 + 131, 127, 118, 106, 103, 73, 129, 159, 118, 105, 51, 89, 88, 77, 125, 107, 32.31091 + 92, 104, 93, 78, 53, 80, 255, 255, 255, 61, 75, 97, 113, 130, 190, 156, 32.31092 + 173, 165, 190, 107, 81, 92, 113, 107, 141, 159, 174, 184, 197, 208, 214, 218, 32.31093 + 223, 228, 235, 234, 234, 235, 236, 232, 228, 224, 233, 229, 232, 237, 226, 206, 32.31094 + 196, 197, 199, 197, 199, 195, 185, 174, 179, 192, 198, 204, 207, 209, 217, 226, 32.31095 + 228, 222, 222, 222, 221, 222, 226, 224, 225, 221, 221, 211, 204, 197, 196, 191, 32.31096 + 183, 176, 170, 172, 177, 185, 193, 194, 193, 196, 221, 230, 235, 238, 238, 238, 32.31097 + 238, 238, 237, 237, 237, 237, 237, 237, 237, 237, 238, 236, 232, 222, 217, 208, 32.31098 + 191, 174, 165, 153, 133, 132, 120, 106, 103, 76, 139, 176, 140, 139, 73, 113, 32.31099 + 111, 106, 103, 105, 75, 104, 82, 84, 50, 67, 133, 255, 255, 69, 95, 111, 32.31100 + 138, 154, 160, 186, 188, 175, 204, 127, 81, 91, 108, 108, 138, 158, 171, 182, 32.31101 + 193, 207, 219, 215, 215, 229, 234, 233, 232, 233, 232, 231, 229, 225, 227, 232, 32.31102 + 237, 232, 216, 197, 194, 199, 206, 207, 210, 209, 205, 200, 200, 200, 212, 215, 32.31103 + 220, 224, 229, 233, 238, 240, 234, 236, 236, 236, 238, 236, 238, 236, 227, 224, 32.31104 + 222, 217, 212, 208, 206, 203, 204, 204, 208, 209, 209, 209, 208, 209, 222, 230, 32.31105 + 237, 239, 236, 234, 235, 237, 235, 235, 235, 235, 235, 235, 235, 235, 236, 234, 32.31106 + 229, 222, 219, 212, 197, 182, 166, 164, 138, 126, 127, 114, 98, 79, 153, 181, 32.31107 + 170, 173, 141, 108, 148, 160, 185, 148, 159, 149, 106, 66, 77, 53, 80, 255, 32.31108 + 255, 68, 88, 178, 182, 132, 169, 188, 195, 209, 207, 137, 77, 94, 106, 111, 32.31109 + 133, 158, 170, 181, 191, 204, 216, 214, 215, 226, 231, 231, 230, 228, 230, 231, 32.31110 + 228, 226, 230, 233, 237, 230, 216, 204, 205, 210, 220, 220, 224, 222, 219, 216, 32.31111 + 215, 216, 220, 223, 225, 227, 232, 235, 236, 237, 237, 237, 239, 239, 239, 239, 32.31112 + 239, 239, 239, 238, 238, 236, 233, 233, 231, 229, 223, 223, 226, 226, 224, 222, 32.31113 + 220, 220, 223, 231, 237, 238, 236, 234, 235, 237, 235, 235, 235, 235, 235, 235, 32.31114 + 235, 235, 236, 235, 230, 221, 214, 209, 197, 184, 163, 159, 137, 124, 126, 114, 32.31115 + 101, 92, 178, 202, 193, 200, 183, 153, 182, 183, 207, 203, 177, 163, 177, 106, 32.31116 + 67, 71, 73, 255, 255, 68, 106, 231, 217, 191, 138, 191, 193, 217, 215, 154, 32.31117 + 70, 98, 103, 114, 126, 161, 168, 182, 191, 202, 214, 214, 215, 226, 229, 227, 32.31118 + 225, 225, 228, 228, 229, 229, 235, 235, 236, 230, 220, 213, 217, 223, 228, 228, 32.31119 + 232, 230, 228, 226, 225, 227, 231, 234, 234, 234, 235, 235, 237, 237, 241, 241, 32.31120 + 241, 241, 242, 242, 242, 242, 245, 245, 246, 245, 245, 246, 245, 244, 234, 233, 32.31121 + 235, 234, 232, 229, 225, 223, 227, 231, 237, 238, 236, 234, 235, 237, 235, 235, 32.31122 + 235, 235, 235, 234, 234, 234, 234, 234, 229, 220, 211, 205, 196, 186, 160, 154, 32.31123 + 137, 122, 121, 111, 103, 109, 196, 215, 209, 225, 220, 198, 212, 201, 197, 215, 32.31124 + 182, 170, 212, 157, 95, 69, 66, 255, 255, 68, 111, 227, 248, 216, 181, 157, 32.31125 + 189, 206, 224, 177, 66, 97, 97, 118, 123, 166, 167, 180, 191, 200, 212, 214, 32.31126 + 214, 225, 227, 224, 222, 223, 224, 228, 230, 231, 237, 236, 235, 233, 226, 221, 32.31127 + 224, 231, 231, 233, 235, 235, 234, 233, 233, 235, 238, 239, 239, 238, 238, 237, 32.31128 + 239, 239, 243, 243, 243, 243, 244, 244, 244, 244, 247, 247, 247, 244, 244, 243, 32.31129 + 241, 239, 237, 236, 235, 235, 233, 231, 229, 225, 229, 232, 236, 237, 236, 235, 32.31130 + 236, 237, 235, 235, 235, 234, 234, 234, 234, 233, 233, 234, 230, 219, 208, 202, 32.31131 + 195, 187, 160, 150, 138, 121, 116, 111, 106, 126, 202, 218, 219, 235, 237, 223, 32.31132 + 226, 212, 204, 209, 209, 201, 211, 210, 182, 66, 68, 137, 255, 70, 72, 253, 32.31133 + 214, 239, 202, 184, 155, 221, 228, 199, 67, 93, 93, 121, 122, 168, 166, 180, 32.31134 + 190, 198, 210, 213, 214, 224, 225, 223, 221, 222, 224, 228, 228, 231, 236, 236, 32.31135 + 236, 237, 233, 227, 226, 230, 236, 238, 240, 240, 241, 240, 241, 242, 239, 239, 32.31136 + 241, 241, 240, 240, 242, 242, 243, 243, 245, 245, 245, 245, 245, 245, 249, 249, 32.31137 + 248, 246, 245, 242, 242, 239, 239, 238, 237, 238, 237, 235, 234, 233, 229, 231, 32.31138 + 234, 235, 234, 234, 234, 234, 233, 233, 233, 232, 232, 231, 231, 230, 233, 234, 32.31139 + 230, 218, 205, 199, 194, 186, 164, 147, 142, 121, 113, 109, 105, 139, 210, 224, 32.31140 + 231, 241, 241, 233, 235, 224, 224, 213, 225, 223, 209, 228, 229, 71, 69, 79, 32.31141 + 255, 71, 73, 239, 239, 218, 220, 172, 198, 205, 221, 215, 77, 87, 95, 121, 32.31142 + 125, 166, 164, 181, 189, 193, 206, 211, 214, 221, 222, 223, 222, 224, 225, 229, 32.31143 + 228, 231, 236, 235, 238, 241, 239, 233, 230, 231, 239, 241, 244, 243, 242, 242, 32.31144 + 245, 244, 239, 239, 241, 241, 242, 242, 244, 244, 244, 244, 246, 246, 246, 246, 32.31145 + 246, 246, 244, 244, 244, 244, 243, 243, 243, 241, 237, 236, 237, 236, 238, 236, 32.31146 + 236, 236, 232, 232, 233, 234, 235, 235, 234, 234, 233, 233, 232, 232, 231, 230, 32.31147 + 230, 230, 233, 233, 228, 218, 206, 200, 192, 182, 168, 144, 143, 121, 114, 111, 32.31148 + 107, 151, 213, 228, 239, 241, 240, 238, 237, 232, 225, 214, 210, 222, 222, 221, 32.31149 + 222, 96, 73, 80, 255, 73, 81, 243, 240, 246, 193, 182, 227, 204, 206, 225, 32.31150 + 87, 82, 99, 120, 123, 157, 164, 181, 189, 192, 204, 211, 215, 220, 222, 221, 32.31151 + 221, 224, 227, 230, 228, 229, 237, 236, 238, 243, 244, 240, 237, 237, 240, 241, 32.31152 + 244, 242, 241, 240, 244, 243, 241, 239, 239, 239, 241, 241, 241, 242, 244, 244, 32.31153 + 244, 244, 246, 246, 246, 244, 239, 237, 238, 238, 238, 237, 237, 237, 235, 234, 32.31154 + 235, 233, 235, 232, 232, 232, 233, 233, 233, 234, 235, 235, 235, 234, 233, 233, 32.31155 + 232, 232, 231, 230, 229, 229, 231, 229, 224, 215, 208, 202, 191, 178, 170, 141, 32.31156 + 143, 121, 116, 115, 109, 159, 215, 229, 243, 240, 240, 242, 238, 235, 228, 223, 32.31157 + 210, 227, 238, 230, 231, 116, 76, 81, 255, 74, 70, 250, 247, 227, 229, 175, 32.31158 + 227, 230, 195, 228, 94, 79, 103, 119, 123, 149, 163, 181, 189, 191, 205, 213, 32.31159 + 215, 219, 222, 222, 223, 225, 229, 230, 230, 228, 238, 236, 235, 240, 243, 241, 32.31160 + 239, 242, 243, 243, 243, 244, 242, 241, 245, 245, 242, 240, 239, 239, 241, 240, 32.31161 + 240, 240, 242, 242, 244, 244, 244, 244, 244, 242, 240, 238, 237, 237, 236, 236, 32.31162 + 236, 234, 240, 238, 238, 237, 237, 236, 236, 235, 236, 235, 235, 235, 237, 235, 32.31163 + 235, 234, 233, 233, 232, 231, 230, 232, 231, 230, 232, 229, 222, 215, 210, 204, 32.31164 + 189, 175, 170, 138, 142, 121, 118, 120, 111, 166, 220, 229, 244, 241, 242, 249, 32.31165 + 243, 239, 231, 222, 218, 230, 221, 229, 239, 91, 81, 82, 255, 76, 55, 246, 32.31166 + 242, 228, 213, 182, 219, 224, 199, 185, 113, 80, 97, 105, 130, 150, 165, 182, 32.31167 + 189, 192, 207, 214, 213, 220, 223, 224, 226, 229, 232, 232, 231, 230, 234, 235, 32.31168 + 236, 237, 237, 237, 236, 238, 239, 239, 239, 241, 241, 241, 243, 241, 239, 239, 32.31169 + 239, 239, 239, 239, 239, 239, 240, 240, 241, 240, 240, 241, 242, 240, 239, 239, 32.31170 + 239, 239, 239, 239, 239, 237, 239, 237, 237, 237, 237, 237, 237, 239, 241, 241, 32.31171 + 238, 237, 235, 234, 235, 235, 235, 231, 228, 229, 231, 230, 231, 235, 235, 233, 32.31172 + 226, 218, 206, 196, 189, 184, 165, 151, 148, 106, 117, 118, 129, 175, 218, 239, 32.31173 + 238, 237, 245, 241, 236, 249, 234, 228, 212, 226, 235, 228, 223, 87, 77, 81, 32.31174 + 255, 75, 70, 243, 249, 238, 217, 168, 203, 200, 207, 173, 107, 83, 91, 120, 32.31175 + 134, 160, 167, 183, 189, 193, 207, 213, 213, 220, 223, 223, 225, 228, 230, 231, 32.31176 + 228, 227, 231, 234, 235, 236, 236, 236, 236, 236, 237, 237, 239, 239, 241, 241, 32.31177 + 241, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 238, 238, 238, 238, 32.31178 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.31179 + 239, 241, 243, 243, 240, 238, 238, 236, 235, 236, 235, 231, 229, 230, 232, 230, 32.31180 + 234, 236, 235, 232, 226, 216, 207, 195, 188, 184, 167, 150, 147, 112, 126, 122, 32.31181 + 134, 177, 208, 221, 228, 230, 238, 237, 240, 249, 233, 224, 220, 233, 230, 226, 32.31182 + 226, 89, 75, 80, 255, 75, 76, 231, 244, 240, 209, 166, 205, 203, 225, 160, 32.31183 + 113, 86, 82, 124, 128, 153, 169, 185, 189, 193, 205, 212, 212, 219, 222, 223, 32.31184 + 225, 227, 226, 226, 225, 225, 231, 231, 234, 235, 236, 236, 236, 236, 238, 238, 32.31185 + 240, 240, 240, 240, 240, 240, 240, 238, 238, 238, 238, 238, 238, 238, 238, 237, 32.31186 + 237, 236, 236, 237, 237, 238, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.31187 + 239, 239, 239, 239, 239, 241, 243, 243, 241, 239, 239, 237, 236, 234, 235, 231, 32.31188 + 229, 231, 233, 230, 233, 236, 236, 232, 225, 215, 207, 196, 188, 184, 164, 143, 32.31189 + 138, 114, 125, 118, 136, 177, 205, 209, 221, 229, 232, 237, 245, 242, 231, 215, 32.31190 + 224, 239, 225, 226, 231, 93, 75, 80, 255, 74, 77, 234, 238, 238, 182, 180, 32.31191 + 217, 225, 229, 142, 131, 86, 78, 115, 122, 147, 170, 184, 190, 190, 205, 211, 32.31192 + 212, 219, 223, 225, 227, 228, 225, 224, 224, 224, 230, 230, 234, 235, 235, 236, 32.31193 + 236, 236, 238, 238, 240, 240, 240, 240, 240, 240, 238, 238, 238, 238, 238, 238, 32.31194 + 238, 238, 238, 237, 236, 236, 236, 236, 237, 238, 239, 239, 239, 239, 239, 239, 32.31195 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 243, 243, 241, 240, 240, 237, 32.31196 + 236, 234, 234, 231, 230, 232, 234, 231, 233, 237, 236, 231, 224, 215, 208, 197, 32.31197 + 189, 184, 162, 139, 134, 115, 120, 111, 147, 187, 214, 210, 225, 237, 232, 237, 32.31198 + 247, 234, 232, 205, 225, 243, 225, 232, 233, 89, 76, 81, 255, 74, 78, 252, 32.31199 + 243, 243, 162, 199, 220, 230, 217, 134, 158, 93, 84, 106, 129, 154, 170, 183, 32.31200 + 190, 191, 205, 211, 211, 218, 223, 226, 229, 229, 225, 223, 221, 224, 229, 229, 32.31201 + 231, 232, 235, 235, 235, 235, 238, 238, 238, 238, 240, 240, 240, 240, 237, 236, 32.31202 + 236, 236, 236, 236, 236, 236, 233, 233, 232, 231, 231, 232, 233, 234, 239, 239, 32.31203 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 243, 243, 32.31204 + 242, 240, 240, 236, 235, 232, 231, 227, 229, 232, 234, 231, 233, 236, 236, 229, 32.31205 + 222, 214, 208, 198, 190, 183, 165, 144, 137, 121, 119, 112, 166, 206, 221, 215, 32.31206 + 231, 241, 235, 239, 246, 234, 233, 200, 224, 240, 226, 237, 228, 81, 78, 255, 32.31207 + 255, 73, 67, 255, 246, 244, 173, 222, 222, 228, 221, 159, 186, 111, 87, 101, 32.31208 + 127, 153, 167, 182, 189, 192, 205, 211, 211, 215, 219, 225, 229, 227, 224, 222, 32.31209 + 221, 223, 226, 229, 230, 232, 235, 235, 236, 235, 237, 237, 237, 237, 239, 239, 32.31210 + 239, 237, 234, 234, 234, 234, 234, 234, 234, 234, 230, 229, 228, 228, 228, 228, 32.31211 + 229, 230, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.31212 + 239, 239, 241, 242, 242, 240, 237, 234, 230, 228, 228, 226, 228, 231, 234, 231, 32.31213 + 232, 234, 234, 228, 221, 214, 207, 199, 190, 183, 163, 147, 136, 118, 115, 118, 32.31214 + 186, 216, 215, 218, 231, 239, 238, 240, 243, 239, 228, 199, 224, 237, 231, 239, 32.31215 + 215, 73, 77, 255, 255, 73, 63, 239, 239, 231, 203, 232, 226, 229, 230, 200, 32.31216 + 199, 135, 81, 105, 118, 148, 164, 180, 189, 194, 207, 212, 211, 215, 216, 221, 32.31217 + 226, 226, 222, 219, 220, 223, 225, 226, 230, 231, 233, 233, 236, 236, 235, 235, 32.31218 + 236, 236, 236, 236, 236, 236, 233, 233, 233, 233, 233, 233, 233, 233, 232, 231, 32.31219 + 231, 230, 230, 231, 231, 232, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.31220 + 239, 239, 239, 239, 239, 239, 242, 242, 242, 240, 236, 232, 226, 222, 226, 224, 32.31221 + 225, 228, 231, 228, 230, 233, 234, 228, 219, 213, 208, 200, 192, 185, 162, 145, 32.31222 + 131, 116, 117, 130, 201, 215, 210, 225, 232, 236, 240, 237, 235, 242, 221, 202, 32.31223 + 231, 235, 233, 236, 200, 67, 75, 255, 255, 73, 75, 231, 237, 215, 223, 228, 32.31224 + 224, 227, 227, 220, 194, 147, 73, 115, 116, 153, 162, 177, 187, 194, 207, 213, 32.31225 + 211, 214, 214, 219, 224, 224, 219, 217, 219, 223, 225, 226, 229, 231, 232, 233, 32.31226 + 236, 236, 234, 234, 235, 235, 235, 235, 235, 235, 232, 232, 232, 232, 232, 232, 32.31227 + 232, 232, 237, 237, 236, 235, 235, 236, 237, 237, 239, 239, 239, 239, 239, 239, 32.31228 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 242, 242, 241, 238, 234, 228, 32.31229 + 222, 220, 225, 223, 224, 228, 230, 227, 229, 232, 234, 227, 219, 213, 208, 201, 32.31230 + 192, 185, 165, 150, 131, 118, 126, 147, 216, 215, 210, 232, 236, 235, 243, 236, 32.31231 + 230, 244, 215, 206, 235, 236, 235, 232, 189, 67, 134, 255, 255, 73, 85, 220, 32.31232 + 216, 187, 223, 232, 231, 228, 235, 225, 200, 179, 74, 102, 106, 154, 163, 173, 32.31233 + 188, 197, 203, 211, 213, 210, 217, 217, 220, 224, 222, 217, 216, 220, 220, 222, 32.31234 + 226, 229, 232, 232, 234, 233, 233, 233, 233, 232, 233, 232, 232, 232, 236, 236, 32.31235 + 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 236, 238, 238, 32.31236 + 238, 239, 239, 240, 240, 240, 239, 239, 238, 237, 236, 236, 236, 236, 238, 240, 32.31237 + 237, 233, 233, 233, 229, 224, 220, 222, 226, 228, 231, 231, 233, 232, 234, 230, 32.31238 + 221, 212, 206, 201, 190, 179, 170, 147, 135, 102, 138, 174, 211, 229, 232, 235, 32.31239 + 237, 239, 240, 240, 239, 239, 222, 218, 229, 239, 243, 234, 109, 59, 255, 255, 32.31240 + 255, 194, 74, 204, 216, 168, 226, 232, 228, 233, 236, 241, 161, 210, 71, 85, 32.31241 + 121, 137, 161, 172, 185, 193, 199, 206, 210, 211, 215, 215, 218, 222, 220, 214, 32.31242 + 213, 216, 218, 222, 225, 229, 231, 231, 233, 233, 231, 232, 232, 233, 234, 233, 32.31243 + 233, 232, 237, 236, 237, 236, 237, 236, 237, 236, 237, 236, 237, 236, 237, 236, 32.31244 + 237, 237, 238, 238, 238, 239, 239, 240, 240, 240, 238, 238, 237, 236, 236, 236, 32.31245 + 237, 237, 239, 239, 236, 233, 234, 233, 228, 221, 219, 221, 226, 229, 232, 232, 32.31246 + 233, 230, 232, 228, 218, 209, 203, 198, 188, 177, 165, 137, 138, 119, 122, 188, 32.31247 + 220, 229, 236, 237, 238, 239, 240, 240, 239, 239, 217, 220, 238, 246, 241, 237, 32.31248 + 94, 58, 255, 255, 255, 255, 61, 172, 222, 156, 229, 233, 228, 234, 235, 194, 32.31249 + 208, 197, 123, 70, 122, 131, 161, 171, 183, 189, 194, 203, 209, 212, 213, 213, 32.31250 + 216, 219, 216, 210, 209, 212, 217, 219, 222, 225, 229, 229, 229, 229, 226, 227, 32.31251 + 232, 234, 235, 234, 233, 233, 237, 237, 239, 237, 239, 237, 239, 237, 239, 237, 32.31252 + 239, 237, 239, 237, 239, 239, 238, 238, 239, 239, 239, 239, 240, 240, 237, 237, 32.31253 + 236, 236, 236, 237, 238, 238, 238, 240, 238, 235, 235, 233, 227, 219, 216, 218, 32.31254 + 224, 228, 232, 231, 231, 230, 233, 225, 217, 207, 201, 197, 188, 179, 163, 130, 32.31255 + 139, 124, 109, 205, 229, 231, 239, 241, 239, 239, 237, 237, 237, 237, 214, 226, 32.31256 + 242, 244, 235, 214, 77, 255, 255, 255, 255, 255, 54, 131, 234, 172, 229, 234, 32.31257 + 234, 224, 204, 161, 248, 190, 192, 67, 111, 129, 156, 166, 180, 187, 192, 201, 32.31258 + 208, 211, 213, 212, 215, 218, 215, 209, 205, 208, 216, 218, 220, 222, 226, 227, 32.31259 + 227, 227, 223, 225, 231, 235, 236, 236, 234, 234, 239, 239, 241, 239, 241, 239, 32.31260 + 241, 239, 241, 239, 241, 239, 241, 239, 241, 239, 239, 239, 239, 239, 239, 239, 32.31261 + 239, 239, 236, 236, 236, 236, 237, 238, 239, 239, 238, 241, 239, 235, 233, 231, 32.31262 + 224, 217, 214, 218, 224, 229, 233, 232, 231, 229, 232, 227, 218, 208, 202, 198, 32.31263 + 191, 180, 162, 129, 132, 109, 120, 214, 226, 235, 242, 242, 239, 239, 237, 237, 32.31264 + 237, 237, 222, 231, 239, 239, 234, 160, 71, 255, 255, 255, 255, 255, 57, 89, 32.31265 + 226, 201, 221, 227, 236, 211, 174, 204, 204, 228, 224, 108, 97, 123, 147, 160, 32.31266 + 178, 187, 192, 200, 206, 207, 211, 211, 214, 217, 215, 209, 206, 209, 216, 216, 32.31267 + 218, 220, 221, 222, 225, 225, 221, 224, 228, 232, 236, 236, 235, 235, 241, 241, 32.31268 + 243, 241, 243, 241, 243, 241, 243, 241, 243, 241, 243, 241, 243, 241, 239, 239, 32.31269 + 239, 239, 239, 239, 239, 239, 236, 236, 236, 236, 237, 238, 239, 239, 238, 240, 32.31270 + 237, 234, 231, 230, 224, 217, 215, 218, 225, 229, 233, 232, 231, 228, 230, 224, 32.31271 + 216, 206, 201, 196, 189, 177, 158, 135, 130, 103, 169, 225, 218, 228, 241, 241, 32.31272 + 239, 239, 237, 237, 235, 235, 226, 234, 236, 236, 232, 103, 76, 255, 255, 255, 32.31273 + 255, 255, 255, 61, 182, 209, 205, 214, 221, 202, 203, 224, 200, 235, 237, 189, 32.31274 + 75, 126, 137, 153, 173, 183, 189, 195, 203, 205, 210, 210, 213, 217, 215, 210, 32.31275 + 207, 210, 215, 215, 216, 217, 219, 220, 223, 223, 222, 224, 228, 231, 235, 236, 32.31276 + 236, 236, 241, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 32.31277 + 243, 243, 242, 240, 239, 239, 239, 239, 238, 238, 237, 237, 236, 236, 236, 237, 32.31278 + 238, 238, 237, 236, 235, 228, 228, 228, 224, 218, 217, 220, 225, 228, 232, 230, 32.31279 + 230, 228, 223, 219, 212, 203, 197, 194, 184, 171, 150, 137, 126, 129, 222, 236, 32.31280 + 215, 220, 238, 239, 238, 240, 238, 237, 234, 233, 222, 230, 239, 231, 205, 74, 32.31281 + 255, 255, 255, 255, 255, 255, 255, 51, 113, 183, 183, 197, 189, 204, 226, 205, 32.31282 + 233, 223, 240, 234, 64, 124, 128, 145, 165, 175, 181, 189, 200, 204, 207, 207, 32.31283 + 211, 215, 213, 208, 208, 211, 214, 214, 215, 215, 217, 218, 221, 222, 222, 223, 32.31284 + 228, 230, 232, 233, 236, 237, 243, 245, 245, 245, 245, 245, 245, 245, 245, 245, 32.31285 + 245, 245, 245, 245, 245, 243, 242, 240, 240, 239, 239, 238, 238, 238, 238, 238, 32.31286 + 237, 236, 236, 236, 237, 237, 236, 235, 232, 225, 225, 227, 224, 219, 220, 222, 32.31287 + 224, 227, 230, 229, 227, 226, 219, 216, 211, 203, 199, 193, 180, 167, 150, 132, 32.31288 + 114, 167, 239, 236, 225, 221, 235, 236, 237, 240, 239, 237, 234, 232, 217, 219, 32.31289 + 240, 207, 140, 68, 255, 255, 255, 255, 255, 255, 255, 255, 62, 157, 172, 188, 32.31290 + 162, 209, 198, 206, 215, 238, 221, 217, 78, 106, 126, 141, 159, 166, 172, 183, 32.31291 + 195, 203, 201, 203, 207, 212, 212, 210, 210, 213, 213, 213, 213, 214, 216, 217, 32.31292 + 220, 221, 224, 226, 227, 231, 233, 234, 237, 240, 243, 243, 245, 243, 245, 243, 32.31293 + 245, 243, 245, 243, 245, 243, 245, 243, 245, 243, 242, 240, 240, 239, 239, 238, 32.31294 + 238, 238, 239, 239, 238, 237, 236, 236, 236, 234, 233, 233, 229, 222, 221, 226, 32.31295 + 224, 220, 222, 223, 225, 226, 227, 226, 224, 224, 215, 213, 208, 203, 199, 194, 32.31296 + 181, 166, 155, 128, 99, 193, 230, 232, 236, 227, 230, 232, 234, 237, 236, 234, 32.31297 + 229, 229, 215, 209, 238, 183, 84, 136, 255, 255, 255, 255, 255, 255, 255, 255, 32.31298 + 81, 85, 151, 191, 164, 190, 165, 219, 215, 219, 228, 218, 52, 103, 112, 148, 32.31299 + 159, 167, 174, 177, 192, 191, 190, 195, 202, 208, 213, 211, 210, 205, 214, 211, 32.31300 + 210, 210, 210, 212, 215, 216, 219, 226, 233, 236, 237, 236, 238, 240, 242, 242, 32.31301 + 244, 242, 244, 242, 244, 242, 243, 241, 243, 241, 243, 241, 243, 241, 241, 241, 32.31302 + 241, 241, 241, 241, 239, 239, 242, 241, 238, 236, 234, 232, 231, 229, 234, 233, 32.31303 + 228, 226, 223, 222, 223, 221, 224, 223, 221, 221, 223, 222, 220, 216, 209, 208, 32.31304 + 202, 195, 191, 188, 171, 157, 144, 122, 99, 188, 240, 229, 251, 217, 223, 219, 32.31305 + 212, 244, 205, 222, 222, 196, 196, 237, 190, 98, 78, 255, 255, 255, 255, 255, 32.31306 + 255, 255, 255, 255, 255, 62, 107, 151, 128, 200, 218, 229, 222, 231, 239, 196, 32.31307 + 66, 100, 112, 147, 154, 157, 163, 166, 182, 186, 191, 196, 201, 207, 212, 213, 32.31308 + 213, 212, 211, 208, 209, 207, 209, 210, 214, 215, 220, 225, 232, 237, 239, 238, 32.31309 + 241, 242, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 32.31310 + 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 240, 239, 236, 235, 233, 231, 32.31311 + 229, 228, 231, 230, 228, 226, 223, 222, 223, 221, 223, 221, 221, 221, 220, 219, 32.31312 + 216, 211, 203, 201, 194, 189, 184, 177, 162, 147, 141, 117, 131, 206, 227, 249, 32.31313 + 235, 221, 213, 225, 208, 185, 218, 213, 208, 179, 232, 197, 122, 72, 136, 255, 32.31314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 115, 164, 121, 209, 204, 208, 32.31315 + 227, 238, 209, 126, 50, 69, 104, 138, 147, 151, 157, 160, 177, 179, 192, 195, 32.31316 + 199, 204, 208, 213, 215, 216, 210, 207, 208, 207, 209, 210, 214, 216, 219, 223, 32.31317 + 229, 235, 238, 238, 239, 240, 242, 242, 242, 242, 242, 242, 242, 242, 241, 241, 32.31318 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 239, 238, 32.31319 + 235, 234, 232, 231, 228, 228, 230, 229, 227, 226, 223, 222, 220, 220, 222, 221, 32.31320 + 220, 219, 219, 217, 210, 205, 202, 199, 194, 189, 182, 174, 158, 145, 137, 114, 32.31321 + 111, 203, 221, 244, 239, 244, 200, 220, 180, 217, 185, 199, 181, 214, 188, 124, 32.31322 + 67, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 78, 150, 32.31323 + 113, 214, 230, 235, 238, 224, 147, 77, 122, 255, 87, 126, 140, 149, 156, 158, 32.31324 + 170, 171, 186, 188, 196, 200, 207, 211, 214, 212, 209, 206, 207, 207, 210, 211, 32.31325 + 214, 217, 216, 221, 226, 230, 235, 238, 239, 240, 241, 241, 241, 241, 241, 241, 32.31326 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31327 + 239, 239, 239, 238, 235, 234, 233, 231, 229, 229, 228, 228, 227, 226, 223, 222, 32.31328 + 220, 218, 220, 217, 217, 217, 217, 212, 207, 201, 198, 194, 189, 185, 178, 168, 32.31329 + 153, 143, 131, 117, 60, 172, 239, 223, 244, 248, 215, 189, 201, 227, 193, 178, 32.31330 + 212, 214, 99, 68, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31331 + 255, 255, 66, 118, 100, 219, 215, 231, 215, 191, 104, 82, 255, 255, 82, 120, 32.31332 + 135, 144, 150, 152, 166, 166, 177, 184, 192, 200, 207, 212, 212, 210, 208, 206, 32.31333 + 205, 207, 210, 212, 215, 219, 217, 220, 224, 228, 234, 236, 239, 239, 241, 241, 32.31334 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31335 + 241, 241, 241, 241, 239, 239, 240, 239, 236, 235, 234, 233, 231, 231, 226, 226, 32.31336 + 224, 223, 223, 222, 219, 217, 219, 216, 215, 212, 212, 207, 202, 197, 192, 187, 32.31337 + 180, 176, 167, 153, 140, 133, 127, 108, 47, 111, 241, 232, 237, 229, 215, 186, 32.31338 + 178, 193, 188, 197, 188, 117, 71, 62, 74, 255, 255, 255, 255, 255, 255, 255, 32.31339 + 255, 255, 255, 255, 255, 255, 255, 63, 69, 188, 195, 224, 201, 157, 76, 255, 32.31340 + 255, 255, 77, 115, 127, 133, 139, 142, 158, 161, 172, 177, 187, 199, 207, 210, 32.31341 + 210, 208, 206, 204, 204, 204, 208, 212, 215, 217, 218, 218, 221, 226, 232, 235, 32.31342 + 237, 236, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 241, 241, 241, 241, 32.31343 + 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 240, 239, 237, 236, 235, 234, 32.31344 + 232, 232, 224, 225, 223, 223, 222, 219, 217, 215, 216, 212, 210, 206, 206, 203, 32.31345 + 200, 197, 192, 183, 177, 170, 159, 144, 133, 129, 130, 80, 63, 38, 176, 244, 32.31346 + 232, 240, 213, 202, 143, 193, 189, 187, 101, 63, 82, 65, 255, 255, 255, 255, 32.31347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 86, 154, 200, 208, 32.31348 + 181, 110, 126, 255, 255, 255, 59, 100, 121, 133, 138, 139, 153, 152, 167, 171, 32.31349 + 180, 189, 197, 202, 206, 204, 201, 199, 201, 201, 205, 210, 213, 215, 219, 218, 32.31350 + 220, 224, 231, 234, 233, 232, 240, 240, 240, 240, 240, 240, 240, 240, 241, 241, 32.31351 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 238, 238, 32.31352 + 235, 235, 234, 233, 232, 231, 223, 223, 222, 223, 220, 219, 217, 214, 215, 210, 32.31353 + 205, 202, 201, 199, 197, 194, 188, 178, 172, 166, 156, 142, 134, 134, 125, 48, 32.31354 + 69, 26, 99, 202, 216, 239, 217, 174, 157, 187, 203, 114, 78, 80, 81, 70, 32.31355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 32.31356 + 70, 46, 66, 67, 83, 123, 255, 255, 255, 255, 35, 86, 118, 139, 147, 144, 32.31357 + 150, 144, 162, 163, 170, 177, 187, 193, 200, 201, 196, 196, 198, 199, 203, 206, 32.31358 + 211, 213, 218, 218, 220, 223, 228, 233, 232, 230, 240, 240, 240, 240, 240, 240, 32.31359 + 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31360 + 239, 239, 237, 236, 234, 233, 233, 232, 231, 230, 222, 223, 222, 223, 220, 218, 32.31361 + 215, 212, 212, 207, 202, 197, 197, 196, 196, 193, 174, 165, 159, 158, 150, 140, 32.31362 + 135, 139, 112, 31, 67, 75, 70, 138, 184, 202, 180, 133, 119, 175, 115, 81, 32.31363 + 72, 74, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31364 + 255, 255, 255, 255, 72, 67, 72, 72, 134, 255, 255, 255, 255, 255, 63, 54, 32.31365 + 104, 139, 152, 139, 147, 136, 155, 147, 154, 174, 189, 189, 192, 197, 199, 198, 32.31366 + 199, 200, 203, 206, 209, 211, 213, 218, 223, 225, 227, 228, 232, 234, 237, 238, 32.31367 + 238, 239, 239, 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31368 + 241, 241, 241, 241, 239, 239, 239, 238, 235, 232, 230, 227, 224, 223, 226, 224, 32.31369 + 221, 221, 219, 217, 212, 207, 212, 197, 192, 200, 200, 186, 182, 187, 178, 155, 32.31370 + 173, 160, 150, 139, 158, 137, 85, 97, 68, 69, 86, 73, 156, 160, 156, 137, 32.31371 + 114, 89, 75, 71, 78, 86, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31373 + 255, 255, 68, 53, 92, 122, 140, 130, 139, 129, 144, 148, 156, 164, 178, 187, 32.31374 + 192, 191, 194, 194, 196, 197, 200, 202, 208, 209, 211, 216, 221, 226, 228, 229, 32.31375 + 234, 236, 238, 239, 239, 239, 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, 32.31376 + 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 239, 238, 235, 233, 232, 230, 32.31377 + 228, 228, 226, 222, 220, 218, 217, 214, 210, 207, 206, 200, 196, 194, 193, 187, 32.31378 + 182, 178, 170, 149, 163, 152, 145, 137, 145, 115, 65, 76, 88, 71, 73, 68, 32.31379 + 103, 116, 105, 94, 83, 73, 69, 71, 78, 82, 255, 255, 255, 255, 255, 255, 32.31380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31381 + 255, 255, 255, 255, 255, 255, 80, 59, 83, 106, 132, 129, 141, 132, 131, 145, 32.31382 + 154, 156, 168, 185, 192, 186, 192, 193, 195, 197, 201, 203, 208, 209, 211, 216, 32.31383 + 221, 224, 227, 230, 234, 238, 240, 240, 240, 241, 241, 241, 242, 242, 241, 241, 32.31384 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 238, 238, 32.31385 + 235, 235, 234, 233, 232, 232, 227, 222, 219, 216, 215, 214, 211, 208, 202, 204, 32.31386 + 200, 190, 185, 185, 179, 167, 169, 151, 158, 151, 148, 143, 134, 91, 59, 64, 32.31387 + 110, 74, 64, 71, 65, 85, 67, 65, 67, 68, 72, 77, 80, 255, 255, 255, 32.31388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 77, 94, 130, 133, 32.31390 + 142, 136, 127, 139, 149, 153, 162, 176, 186, 189, 197, 197, 200, 201, 205, 206, 32.31391 + 208, 211, 212, 214, 221, 224, 228, 231, 236, 239, 242, 242, 242, 242, 242, 242, 32.31392 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31393 + 239, 239, 238, 238, 235, 234, 234, 233, 231, 229, 227, 222, 216, 214, 214, 213, 32.31394 + 212, 208, 200, 200, 196, 189, 183, 177, 170, 164, 168, 158, 158, 153, 153, 149, 32.31395 + 121, 71, 64, 70, 107, 72, 60, 79, 67, 85, 68, 70, 73, 79, 81, 140, 32.31396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 32.31398 + 68, 79, 123, 129, 139, 136, 132, 130, 140, 154, 162, 166, 179, 190, 197, 198, 32.31399 + 202, 203, 204, 206, 208, 209, 212, 214, 221, 223, 227, 230, 236, 239, 243, 243, 32.31400 + 243, 242, 242, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31401 + 241, 241, 241, 241, 239, 239, 238, 238, 235, 233, 231, 230, 228, 225, 226, 221, 32.31402 + 215, 214, 214, 213, 212, 208, 203, 192, 187, 190, 182, 165, 160, 165, 161, 157, 32.31403 + 151, 152, 148, 140, 99, 55, 65, 77, 81, 67, 60, 78, 83, 85, 79, 78, 32.31404 + 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31406 + 255, 255, 255, 66, 66, 73, 116, 123, 134, 138, 137, 129, 135, 150, 160, 161, 32.31407 + 171, 187, 194, 195, 199, 201, 203, 203, 206, 205, 213, 215, 219, 222, 226, 229, 32.31408 + 235, 238, 241, 243, 243, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 241, 32.31409 + 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 237, 236, 233, 232, 230, 228, 32.31410 + 226, 223, 224, 220, 215, 213, 214, 211, 209, 207, 202, 186, 182, 186, 179, 160, 32.31411 + 155, 166, 155, 158, 149, 155, 143, 128, 84, 55, 66, 81, 62, 71, 70, 81, 32.31412 + 92, 83, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31414 + 255, 255, 255, 255, 255, 255, 255, 75, 71, 71, 112, 117, 133, 142, 136, 132, 32.31415 + 133, 143, 153, 163, 170, 175, 188, 190, 195, 199, 202, 203, 207, 206, 214, 215, 32.31416 + 218, 221, 224, 227, 232, 237, 241, 242, 242, 242, 241, 241, 240, 240, 241, 241, 32.31417 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 235, 234, 32.31418 + 232, 231, 230, 229, 227, 225, 222, 219, 215, 214, 216, 212, 209, 204, 193, 186, 32.31419 + 182, 178, 172, 161, 159, 165, 153, 159, 150, 160, 139, 116, 72, 63, 67, 79, 32.31420 + 59, 80, 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 75, 67, 106, 111, 32.31423 + 128, 144, 135, 136, 137, 135, 147, 165, 172, 165, 185, 187, 194, 199, 203, 207, 32.31424 + 210, 210, 214, 215, 218, 220, 223, 226, 230, 235, 240, 242, 242, 241, 241, 240, 32.31425 + 240, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 241, 239, 239, 239, 32.31426 + 239, 237, 231, 231, 231, 230, 230, 230, 230, 228, 221, 218, 217, 216, 217, 212, 32.31427 + 208, 203, 187, 187, 183, 171, 163, 163, 164, 161, 149, 156, 148, 161, 136, 111, 32.31428 + 70, 74, 76, 76, 65, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 32.31431 + 76, 72, 104, 107, 129, 141, 147, 137, 148, 152, 144, 160, 178, 173, 184, 188, 32.31432 + 193, 197, 202, 207, 213, 216, 214, 215, 219, 223, 227, 229, 232, 233, 236, 239, 32.31433 + 240, 242, 242, 241, 240, 239, 241, 241, 241, 241, 241, 241, 241, 241, 238, 236, 32.31434 + 239, 238, 238, 235, 234, 233, 229, 226, 225, 224, 225, 226, 227, 228, 227, 226, 32.31435 + 225, 222, 218, 210, 204, 198, 186, 188, 187, 177, 163, 155, 157, 161, 145, 159, 32.31436 + 152, 160, 135, 113, 72, 71, 72, 76, 136, 255, 255, 255, 255, 255, 255, 255, 32.31437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31439 + 255, 255, 255, 77, 75, 69, 99, 106, 129, 142, 152, 148, 152, 152, 153, 164, 32.31440 + 181, 180, 184, 188, 194, 199, 204, 207, 212, 214, 215, 216, 222, 224, 228, 230, 32.31441 + 232, 233, 237, 238, 240, 241, 242, 241, 241, 240, 241, 241, 241, 241, 241, 241, 32.31442 + 241, 239, 237, 236, 237, 237, 236, 234, 231, 230, 227, 226, 223, 222, 222, 223, 32.31443 + 225, 225, 232, 230, 225, 220, 216, 210, 206, 203, 192, 186, 179, 171, 164, 160, 32.31444 + 159, 158, 145, 153, 145, 152, 128, 107, 75, 85, 77, 138, 255, 255, 255, 255, 32.31445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31447 + 255, 255, 255, 255, 255, 255, 255, 78, 73, 64, 96, 103, 127, 140, 148, 154, 32.31448 + 152, 148, 157, 163, 171, 179, 182, 187, 193, 199, 205, 207, 210, 212, 216, 217, 32.31449 + 222, 224, 228, 230, 232, 233, 236, 237, 239, 241, 242, 242, 242, 241, 241, 241, 32.31450 + 241, 241, 241, 241, 241, 239, 237, 235, 235, 236, 234, 233, 232, 232, 227, 226, 32.31451 + 226, 225, 223, 223, 224, 224, 230, 227, 219, 212, 208, 204, 204, 202, 198, 185, 32.31452 + 174, 166, 166, 165, 160, 154, 154, 153, 144, 147, 122, 96, 75, 95, 75, 255, 32.31453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 74, 63, 93, 101, 32.31456 + 124, 136, 143, 156, 155, 149, 160, 161, 159, 173, 176, 182, 190, 198, 205, 207, 32.31457 + 211, 212, 216, 217, 222, 223, 227, 229, 231, 232, 235, 236, 239, 241, 242, 243, 32.31458 + 242, 242, 241, 241, 241, 241, 241, 241, 241, 239, 237, 235, 235, 234, 233, 232, 32.31459 + 232, 231, 227, 227, 227, 226, 224, 224, 224, 224, 227, 224, 218, 211, 208, 203, 32.31460 + 202, 200, 196, 184, 174, 168, 169, 168, 163, 155, 156, 151, 143, 143, 119, 82, 32.31461 + 67, 93, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 32.31464 + 79, 66, 93, 101, 125, 135, 143, 160, 163, 159, 168, 165, 159, 170, 171, 177, 32.31465 + 187, 195, 204, 208, 212, 214, 216, 216, 221, 223, 226, 228, 230, 230, 235, 236, 32.31466 + 239, 241, 242, 243, 242, 242, 241, 241, 241, 241, 241, 241, 241, 239, 237, 235, 32.31467 + 234, 234, 233, 233, 232, 232, 230, 230, 228, 228, 228, 227, 224, 224, 228, 227, 32.31468 + 224, 219, 216, 210, 206, 202, 191, 184, 180, 176, 174, 170, 164, 157, 149, 144, 32.31469 + 141, 136, 116, 68, 54, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31472 + 255, 255, 255, 81, 81, 65, 90, 100, 125, 135, 141, 154, 164, 165, 167, 164, 32.31473 + 161, 166, 169, 178, 187, 195, 204, 209, 214, 217, 217, 217, 222, 223, 227, 228, 32.31474 + 230, 230, 236, 237, 239, 241, 242, 242, 242, 241, 241, 241, 241, 241, 241, 241, 32.31475 + 241, 241, 238, 236, 235, 234, 233, 234, 233, 233, 232, 232, 231, 231, 230, 229, 32.31476 + 225, 225, 225, 224, 222, 221, 219, 211, 205, 200, 189, 188, 186, 184, 180, 173, 32.31477 + 168, 161, 150, 145, 145, 130, 114, 64, 50, 65, 255, 255, 255, 255, 255, 255, 32.31478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31480 + 255, 255, 255, 255, 255, 255, 255, 198, 80, 61, 85, 97, 125, 137, 140, 146, 32.31481 + 163, 166, 162, 165, 173, 171, 176, 183, 190, 197, 205, 210, 216, 219, 219, 220, 32.31482 + 224, 226, 229, 230, 232, 232, 237, 238, 240, 241, 242, 241, 241, 240, 241, 241, 32.31483 + 241, 241, 241, 241, 241, 241, 240, 239, 238, 236, 234, 234, 235, 236, 234, 234, 32.31484 + 235, 235, 232, 230, 229, 228, 220, 221, 220, 218, 216, 209, 203, 200, 195, 191, 32.31485 + 188, 188, 185, 180, 174, 167, 155, 151, 150, 124, 113, 67, 59, 66, 255, 255, 32.31486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 56, 79, 94, 32.31489 + 126, 139, 145, 144, 166, 172, 162, 170, 186, 183, 182, 188, 194, 199, 206, 210, 32.31490 + 217, 220, 221, 222, 227, 228, 231, 232, 234, 234, 238, 239, 240, 242, 242, 241, 32.31491 + 240, 239, 241, 241, 241, 241, 241, 241, 241, 241, 241, 240, 238, 237, 234, 235, 32.31492 + 236, 237, 235, 236, 236, 236, 233, 232, 229, 228, 224, 224, 221, 219, 218, 211, 32.31493 + 209, 204, 201, 195, 189, 187, 189, 186, 180, 171, 156, 150, 146, 112, 104, 66, 32.31494 + 63, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31497 + 78, 74, 69, 90, 134, 139, 160, 150, 161, 172, 168, 169, 174, 176, 189, 195, 32.31498 + 195, 192, 197, 205, 214, 216, 220, 222, 229, 232, 236, 237, 238, 238, 241, 241, 32.31499 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31500 + 239, 239, 239, 239, 237, 237, 236, 237, 236, 236, 236, 235, 234, 231, 227, 226, 32.31501 + 222, 219, 217, 210, 209, 205, 195, 192, 191, 191, 191, 186, 178, 168, 159, 147, 32.31502 + 142, 128, 110, 59, 69, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31505 + 255, 255, 255, 255, 76, 71, 64, 85, 133, 142, 154, 146, 158, 169, 166, 164, 32.31506 + 170, 171, 187, 194, 198, 197, 202, 208, 213, 213, 220, 222, 229, 231, 236, 236, 32.31507 + 238, 237, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31508 + 241, 241, 241, 241, 239, 239, 239, 239, 239, 237, 236, 237, 236, 236, 236, 235, 32.31509 + 234, 231, 225, 224, 222, 220, 219, 216, 213, 211, 199, 196, 194, 194, 193, 189, 32.31510 + 181, 169, 158, 144, 137, 121, 103, 54, 66, 75, 255, 255, 255, 255, 255, 255, 32.31511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31513 + 255, 255, 255, 255, 255, 255, 255, 255, 79, 71, 61, 79, 128, 143, 155, 148, 32.31514 + 158, 168, 167, 167, 173, 171, 185, 195, 201, 202, 207, 210, 213, 211, 220, 222, 32.31515 + 228, 231, 235, 236, 237, 237, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31516 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 239, 239, 239, 236, 237, 32.31517 + 237, 237, 236, 235, 234, 231, 226, 224, 223, 221, 220, 217, 215, 212, 204, 200, 32.31518 + 197, 196, 197, 191, 184, 172, 159, 144, 134, 116, 97, 49, 63, 73, 255, 255, 32.31519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 77, 62, 75, 32.31522 + 123, 141, 158, 151, 159, 166, 165, 168, 176, 173, 186, 196, 202, 203, 207, 210, 32.31523 + 213, 211, 219, 221, 228, 231, 235, 236, 237, 237, 241, 241, 241, 241, 241, 241, 32.31524 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31525 + 239, 239, 236, 237, 237, 237, 236, 235, 234, 231, 230, 227, 225, 222, 217, 215, 32.31526 + 211, 208, 209, 206, 202, 201, 201, 195, 188, 176, 164, 148, 135, 118, 98, 51, 32.31527 + 66, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31530 + 89, 84, 67, 76, 124, 143, 156, 150, 156, 158, 155, 161, 172, 172, 189, 197, 32.31531 + 200, 199, 203, 208, 213, 212, 219, 221, 228, 230, 234, 235, 237, 236, 241, 241, 32.31532 + 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 243, 243, 32.31533 + 241, 241, 241, 241, 239, 239, 238, 239, 237, 237, 237, 236, 235, 233, 229, 226, 32.31534 + 223, 221, 216, 214, 210, 207, 211, 208, 204, 202, 202, 197, 190, 179, 166, 149, 32.31535 + 137, 119, 99, 52, 69, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31538 + 255, 255, 255, 255, 255, 255, 255, 216, 212, 218, 224, 222, 223, 223, 200, 194, 32.31539 + 201, 199, 211, 216, 216, 195, 199, 205, 211, 212, 219, 220, 227, 230, 234, 235, 32.31540 + 236, 236, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 241, 32.31541 + 241, 241, 243, 243, 241, 241, 241, 241, 239, 239, 238, 239, 237, 237, 237, 236, 32.31542 + 235, 233, 225, 222, 221, 220, 217, 216, 213, 213, 212, 209, 205, 205, 203, 200, 32.31543 + 192, 182, 163, 146, 137, 121, 101, 54, 68, 255, 255, 255, 255, 255, 255, 255, 32.31544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31548 + 246, 247, 248, 248, 249, 249, 249, 246, 246, 246, 246, 246, 246, 244, 241, 241, 32.31549 + 241, 241, 241, 241, 241, 241, 243, 243, 243, 243, 241, 241, 241, 241, 238, 239, 32.31550 + 237, 237, 237, 236, 235, 233, 226, 224, 222, 221, 218, 217, 215, 214, 212, 208, 32.31551 + 204, 204, 203, 201, 196, 186, 160, 145, 139, 124, 107, 56, 68, 255, 255, 255, 32.31552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31557 + 255, 255, 255, 255, 255, 255, 255, 255, 252, 250, 251, 251, 251, 251, 250, 247, 32.31558 + 246, 246, 244, 244, 243, 243, 237, 236, 235, 233, 231, 228, 226, 223, 219, 217, 32.31559 + 213, 212, 211, 208, 206, 204, 203, 202, 197, 187, 160, 146, 142, 128, 111, 125, 32.31560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.31562 +/* Define image 'enemy15' of size 152x151x1x3 and type 'const unsigned char' */ 32.31563 +const unsigned char data_enemy15[] = { 32.31564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31567 + 26, 33, 24, 32, 33, 29, 15, 15, 20, 28, 31, 27, 25, 25, 28, 26, 32.31568 + 24, 24, 23, 21, 15, 13, 16, 11, 9, 7, 9, 10, 11, 11, 11, 102, 32.31569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31576 + 255, 255, 255, 255, 187, 33, 42, 29, 32, 29, 33, 35, 46, 39, 40, 47, 32.31577 + 55, 56, 58, 60, 63, 62, 78, 75, 72, 69, 68, 63, 57, 52, 38, 35, 32.31578 + 32, 29, 29, 26, 24, 21, 17, 28, 26, 26, 28, 19, 21, 81, 204, 255, 32.31579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 61, 54, 37, 44, 34, 32.31586 + 51, 50, 71, 71, 87, 76, 82, 95, 101, 96, 97, 103, 107, 105, 99, 99, 32.31587 + 99, 102, 105, 104, 101, 96, 84, 81, 78, 71, 63, 49, 36, 25, 26, 24, 32.31588 + 15, 22, 27, 16, 31, 57, 127, 90, 58, 46, 35, 14, 63, 202, 255, 255, 32.31589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31595 + 191, 70, 66, 61, 60, 65, 87, 93, 99, 103, 106, 107, 110, 111, 110, 112, 32.31596 + 115, 117, 120, 122, 124, 125, 122, 123, 124, 123, 121, 120, 120, 121, 117, 113, 32.31597 + 109, 104, 100, 94, 91, 86, 66, 68, 65, 52, 38, 37, 51, 64, 90, 60, 32.31598 + 50, 61, 49, 16, 6, 13, 10, 68, 201, 255, 255, 255, 255, 255, 255, 255, 32.31599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31604 + 255, 255, 255, 255, 255, 255, 255, 50, 68, 81, 88, 93, 102, 111, 106, 112, 32.31605 + 117, 119, 120, 121, 123, 125, 130, 131, 133, 137, 139, 141, 142, 144, 144, 146, 32.31606 + 146, 143, 139, 138, 137, 137, 134, 131, 128, 125, 122, 118, 116, 112, 110, 107, 32.31607 + 101, 87, 70, 56, 49, 46, 74, 59, 47, 45, 38, 25, 17, 20, 11, 17, 32.31608 + 15, 14, 21, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 84, 88, 32.31614 + 95, 100, 103, 104, 109, 114, 127, 131, 134, 135, 135, 135, 138, 140, 142, 142, 32.31615 + 145, 147, 148, 149, 150, 152, 158, 159, 159, 155, 153, 151, 150, 149, 149, 148, 32.31616 + 147, 146, 146, 143, 143, 140, 125, 120, 118, 115, 110, 104, 93, 85, 62, 59, 32.31617 + 45, 29, 23, 28, 24, 15, 13, 19, 21, 20, 22, 25, 26, 24, 94, 255, 32.31618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31623 + 255, 255, 183, 53, 73, 86, 101, 104, 109, 114, 121, 125, 128, 131, 139, 144, 32.31624 + 145, 145, 145, 146, 149, 152, 149, 149, 152, 153, 153, 154, 155, 155, 159, 162, 32.31625 + 163, 163, 162, 161, 161, 163, 158, 158, 158, 158, 158, 159, 157, 156, 152, 144, 32.31626 + 136, 131, 127, 123, 117, 111, 80, 75, 59, 38, 30, 32, 25, 13, 19, 18, 32.31627 + 25, 24, 25, 32, 32, 18, 15, 20, 18, 95, 255, 255, 255, 255, 255, 255, 32.31628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31632 + 255, 255, 255, 255, 255, 255, 255, 211, 100, 58, 71, 88, 103, 109, 112, 116, 32.31633 + 122, 132, 142, 147, 150, 151, 151, 154, 156, 156, 155, 157, 160, 163, 163, 163, 32.31634 + 163, 163, 162, 162, 162, 164, 166, 169, 171, 171, 170, 169, 169, 169, 164, 162, 32.31635 + 162, 161, 161, 161, 161, 160, 162, 156, 149, 141, 134, 131, 128, 126, 115, 102, 32.31636 + 87, 75, 62, 49, 38, 29, 25, 16, 21, 25, 30, 44, 42, 16, 21, 23, 32.31637 + 19, 16, 9, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.31642 + 78, 89, 105, 121, 128, 128, 134, 136, 142, 147, 149, 152, 149, 148, 161, 164, 32.31643 + 166, 166, 167, 168, 170, 171, 173, 170, 170, 169, 169, 167, 167, 168, 170, 172, 32.31644 + 174, 173, 170, 167, 166, 166, 166, 166, 165, 164, 163, 162, 162, 161, 145, 148, 32.31645 + 151, 150, 146, 144, 144, 145, 135, 120, 108, 104, 93, 72, 58, 53, 37, 20, 32.31646 + 24, 27, 33, 56, 59, 27, 36, 28, 26, 17, 14, 29, 14, 255, 255, 255, 32.31647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31651 + 255, 255, 255, 255, 255, 255, 194, 87, 100, 109, 119, 129, 131, 129, 137, 142, 32.31652 + 149, 154, 159, 164, 166, 167, 168, 171, 173, 174, 173, 172, 172, 171, 171, 170, 32.31653 + 169, 166, 165, 164, 164, 163, 163, 165, 168, 168, 165, 162, 161, 161, 163, 162, 32.31654 + 164, 163, 162, 161, 160, 161, 159, 162, 162, 158, 152, 147, 143, 141, 139, 129, 32.31655 + 121, 119, 111, 97, 84, 75, 60, 38, 37, 35, 33, 62, 74, 43, 50, 32, 32.31656 + 36, 23, 28, 26, 21, 26, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 109, 128, 32.31661 + 139, 144, 145, 149, 151, 152, 161, 164, 167, 168, 167, 168, 170, 172, 173, 174, 32.31662 + 176, 177, 175, 172, 171, 171, 171, 171, 169, 168, 167, 163, 164, 164, 159, 162, 32.31663 + 167, 168, 167, 165, 164, 164, 162, 162, 162, 162, 161, 160, 160, 160, 164, 161, 32.31664 + 157, 155, 154, 155, 155, 153, 140, 140, 135, 129, 126, 120, 110, 97, 88, 63, 32.31665 + 55, 46, 35, 62, 81, 55, 61, 34, 44, 28, 39, 26, 29, 40, 21, 28, 32.31666 + 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31670 + 255, 255, 255, 80, 92, 104, 137, 147, 152, 156, 158, 161, 166, 168, 168, 168, 32.31671 + 170, 170, 171, 171, 172, 172, 172, 172, 174, 175, 175, 174, 174, 174, 174, 174, 32.31672 + 173, 172, 171, 169, 169, 168, 166, 163, 160, 161, 163, 163, 162, 159, 160, 158, 32.31673 + 157, 155, 153, 152, 151, 150, 147, 145, 147, 148, 147, 147, 147, 147, 147, 146, 32.31674 + 146, 145, 142, 139, 135, 130, 108, 107, 83, 73, 79, 56, 38, 57, 45, 32, 32.31675 + 70, 33, 24, 34, 39, 57, 40, 19, 31, 114, 255, 255, 255, 255, 255, 255, 32.31676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 80, 92, 117, 142, 151, 158, 32.31680 + 162, 164, 165, 167, 169, 171, 172, 172, 173, 173, 173, 174, 174, 174, 174, 174, 32.31681 + 175, 175, 175, 175, 175, 175, 173, 173, 172, 171, 170, 168, 168, 167, 163, 160, 32.31682 + 160, 161, 164, 165, 164, 162, 164, 162, 160, 158, 156, 154, 155, 151, 147, 145, 32.31683 + 147, 145, 148, 148, 148, 148, 148, 149, 150, 150, 149, 147, 145, 141, 130, 131, 32.31684 + 110, 96, 94, 71, 54, 74, 71, 51, 79, 41, 33, 41, 43, 55, 87, 46, 32.31685 + 30, 37, 55, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31689 + 90, 95, 114, 138, 151, 157, 162, 166, 168, 169, 169, 169, 170, 171, 173, 173, 32.31690 + 174, 174, 174, 175, 175, 175, 177, 177, 177, 177, 177, 176, 176, 176, 175, 174, 32.31691 + 173, 172, 171, 170, 169, 169, 167, 164, 165, 165, 167, 168, 167, 166, 166, 165, 32.31692 + 163, 160, 158, 157, 158, 155, 148, 144, 144, 142, 143, 142, 142, 143, 148, 149, 32.31693 + 149, 150, 150, 150, 149, 147, 141, 144, 130, 117, 111, 88, 74, 91, 79, 55, 32.31694 + 74, 42, 38, 45, 48, 53, 87, 48, 33, 41, 72, 85, 116, 255, 255, 255, 32.31695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31698 + 255, 255, 255, 255, 255, 255, 194, 83, 98, 124, 155, 174, 171, 159, 169, 171, 32.31699 + 173, 174, 172, 172, 173, 174, 174, 174, 174, 175, 175, 176, 176, 176, 178, 177, 32.31700 + 176, 175, 175, 174, 174, 174, 176, 175, 175, 174, 173, 172, 171, 171, 177, 176, 32.31701 + 175, 174, 175, 173, 172, 171, 171, 169, 167, 165, 164, 162, 163, 160, 151, 147, 32.31702 + 147, 143, 142, 142, 142, 141, 145, 146, 147, 148, 149, 147, 150, 147, 139, 141, 32.31703 + 133, 127, 126, 108, 95, 102, 69, 48, 62, 36, 37, 41, 51, 58, 60, 44, 32.31704 + 45, 45, 65, 81, 55, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 66, 102, 32.31708 + 143, 164, 170, 173, 175, 175, 171, 171, 174, 174, 173, 173, 174, 175, 173, 173, 32.31709 + 173, 173, 174, 174, 174, 175, 177, 177, 176, 174, 174, 174, 174, 175, 176, 176, 32.31710 + 175, 175, 175, 175, 174, 174, 183, 184, 184, 182, 181, 179, 179, 179, 176, 175, 32.31711 + 174, 172, 171, 170, 171, 169, 164, 161, 160, 157, 154, 151, 150, 149, 145, 145, 32.31712 + 143, 143, 143, 143, 145, 144, 135, 134, 132, 132, 134, 121, 108, 103, 68, 50, 32.31713 + 61, 37, 35, 32, 49, 55, 43, 35, 33, 16, 20, 40, 32, 29, 20, 255, 32.31714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31717 + 255, 255, 180, 47, 60, 86, 122, 146, 169, 176, 174, 173, 177, 177, 169, 170, 32.31718 + 172, 173, 172, 172, 173, 174, 171, 171, 171, 172, 172, 172, 173, 175, 178, 177, 32.31719 + 177, 174, 175, 174, 177, 176, 176, 175, 177, 176, 179, 177, 180, 180, 183, 187, 32.31720 + 189, 187, 188, 186, 190, 190, 184, 184, 183, 182, 182, 183, 183, 183, 176, 172, 32.31721 + 171, 169, 166, 162, 157, 155, 150, 148, 146, 143, 142, 141, 142, 141, 140, 136, 32.31722 + 136, 137, 136, 129, 117, 103, 82, 63, 66, 43, 35, 20, 38, 39, 53, 47, 32.31723 + 48, 33, 36, 53, 41, 37, 18, 18, 255, 255, 255, 255, 255, 255, 255, 255, 32.31724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 39, 71, 95, 132, 167, 168, 32.31727 + 169, 168, 175, 180, 176, 167, 170, 170, 172, 172, 170, 170, 170, 171, 170, 170, 32.31728 + 170, 171, 171, 171, 172, 174, 181, 180, 179, 177, 178, 179, 182, 182, 180, 180, 32.31729 + 182, 183, 185, 186, 188, 189, 189, 192, 195, 195, 195, 194, 198, 200, 195, 194, 32.31730 + 194, 195, 196, 197, 196, 196, 186, 183, 183, 180, 176, 170, 163, 160, 162, 158, 32.31731 + 154, 150, 146, 142, 143, 143, 146, 140, 140, 138, 134, 131, 125, 113, 103, 80, 32.31732 + 73, 54, 45, 27, 41, 33, 23, 20, 31, 24, 27, 37, 21, 16, 19, 18, 32.31733 + 20, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31736 + 55, 65, 91, 126, 135, 155, 156, 164, 170, 169, 168, 172, 172, 168, 171, 171, 32.31737 + 172, 172, 169, 168, 168, 169, 170, 170, 170, 171, 171, 171, 172, 174, 182, 182, 32.31738 + 180, 179, 180, 182, 185, 186, 185, 186, 187, 190, 192, 194, 196, 198, 198, 202, 32.31739 + 203, 202, 200, 199, 201, 203, 200, 201, 201, 202, 203, 203, 205, 205, 196, 194, 32.31740 + 194, 192, 188, 181, 173, 168, 169, 165, 161, 155, 149, 145, 144, 143, 146, 141, 32.31741 + 142, 139, 128, 129, 133, 123, 119, 95, 81, 66, 63, 44, 58, 44, 42, 37, 32.31742 + 43, 29, 23, 31, 27, 37, 19, 18, 18, 19, 95, 255, 255, 255, 255, 255, 32.31743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31745 + 255, 255, 255, 255, 255, 255, 255, 73, 97, 115, 133, 145, 152, 152, 165, 167, 32.31746 + 169, 168, 165, 161, 161, 161, 165, 168, 169, 170, 171, 171, 171, 171, 173, 173, 32.31747 + 173, 173, 174, 176, 177, 179, 181, 183, 185, 188, 191, 192, 193, 194, 189, 190, 32.31748 + 193, 196, 198, 199, 199, 201, 201, 209, 206, 204, 210, 209, 202, 204, 208, 202, 32.31749 + 203, 209, 209, 202, 199, 202, 200, 193, 192, 194, 195, 189, 182, 176, 173, 166, 32.31750 + 158, 151, 148, 143, 141, 138, 146, 142, 137, 134, 134, 130, 127, 123, 113, 103, 32.31751 + 92, 82, 68, 58, 63, 72, 65, 67, 78, 42, 23, 32, 18, 22, 19, 13, 32.31752 + 10, 14, 16, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 91, 113, 32.31755 + 129, 143, 153, 161, 162, 160, 167, 169, 169, 166, 164, 161, 160, 163, 165, 168, 32.31756 + 171, 172, 174, 174, 175, 174, 176, 175, 176, 176, 178, 179, 181, 182, 183, 185, 32.31757 + 189, 189, 194, 193, 196, 194, 200, 198, 200, 199, 202, 202, 206, 207, 209, 214, 32.31758 + 211, 206, 212, 209, 202, 202, 216, 212, 209, 205, 197, 189, 185, 184, 186, 186, 32.31759 + 181, 170, 155, 150, 154, 163, 163, 157, 154, 154, 154, 153, 148, 143, 126, 127, 32.31760 + 130, 133, 134, 130, 122, 115, 130, 109, 89, 84, 82, 71, 57, 46, 56, 47, 32.31761 + 68, 64, 44, 25, 8, 31, 33, 22, 12, 11, 12, 12, 94, 255, 255, 255, 32.31762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31764 + 255, 255, 255, 255, 181, 65, 123, 142, 153, 160, 163, 166, 163, 159, 163, 163, 32.31765 + 162, 160, 156, 154, 156, 161, 167, 171, 175, 175, 179, 179, 181, 180, 183, 181, 32.31766 + 183, 182, 185, 185, 188, 189, 191, 192, 195, 196, 199, 200, 201, 201, 211, 209, 32.31767 + 208, 207, 209, 210, 214, 215, 217, 219, 213, 208, 213, 207, 199, 202, 209, 208, 32.31768 + 199, 184, 170, 164, 161, 157, 149, 127, 109, 111, 126, 132, 118, 99, 109, 99, 32.31769 + 91, 89, 98, 107, 111, 111, 131, 123, 113, 107, 109, 115, 122, 124, 119, 109, 32.31770 + 100, 94, 80, 64, 46, 36, 47, 56, 70, 48, 27, 27, 21, 30, 18, 12, 32.31771 + 10, 15, 15, 12, 7, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 44, 73, 109, 133, 148, 32.31774 + 157, 161, 162, 165, 163, 159, 158, 158, 157, 156, 153, 154, 157, 163, 171, 176, 32.31775 + 179, 181, 184, 186, 187, 188, 188, 189, 189, 190, 191, 193, 195, 197, 200, 202, 32.31776 + 203, 205, 207, 208, 208, 208, 213, 213, 214, 215, 217, 219, 221, 222, 219, 217, 32.31777 + 209, 206, 210, 204, 196, 202, 195, 194, 183, 164, 149, 147, 148, 143, 112, 116, 32.31778 + 122, 126, 125, 123, 113, 104, 105, 91, 77, 71, 75, 80, 80, 76, 89, 90, 32.31779 + 94, 96, 97, 92, 85, 79, 103, 102, 103, 98, 87, 70, 58, 50, 33, 56, 32.31780 + 66, 44, 26, 26, 14, 8, 12, 12, 16, 19, 16, 9, 6, 8, 255, 255, 32.31781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31783 + 255, 178, 36, 71, 110, 132, 138, 150, 157, 160, 162, 164, 165, 162, 161, 162, 32.31784 + 161, 161, 162, 164, 169, 174, 178, 182, 185, 188, 190, 193, 194, 194, 195, 196, 32.31785 + 196, 197, 199, 201, 203, 206, 207, 210, 212, 213, 214, 215, 215, 215, 213, 215, 32.31786 + 220, 224, 227, 229, 229, 227, 218, 215, 206, 204, 207, 200, 194, 202, 193, 189, 32.31787 + 177, 162, 149, 149, 151, 151, 140, 144, 147, 142, 136, 133, 127, 119, 95, 91, 32.31788 + 87, 88, 93, 95, 90, 82, 79, 77, 80, 83, 86, 86, 82, 78, 70, 59, 32.31789 + 53, 58, 69, 69, 54, 36, 44, 33, 27, 34, 32, 22, 26, 35, 21, 20, 32.31790 + 20, 18, 11, 6, 11, 20, 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31792 + 255, 255, 255, 255, 255, 255, 255, 255, 184, 47, 63, 89, 121, 123, 140, 150, 32.31793 + 155, 156, 157, 161, 162, 161, 161, 164, 166, 169, 171, 174, 179, 184, 188, 192, 32.31794 + 194, 197, 200, 202, 203, 204, 205, 205, 206, 207, 209, 212, 214, 216, 215, 216, 32.31795 + 217, 218, 218, 218, 218, 218, 215, 219, 225, 231, 235, 237, 236, 233, 223, 215, 32.31796 + 206, 206, 210, 201, 197, 207, 203, 191, 176, 167, 161, 156, 160, 164, 176, 159, 32.31797 + 137, 126, 134, 145, 140, 125, 136, 129, 121, 117, 119, 122, 125, 123, 81, 72, 32.31798 + 61, 56, 61, 75, 89, 95, 91, 88, 85, 84, 91, 97, 93, 84, 65, 60, 32.31799 + 38, 32, 28, 20, 22, 13, 7, 7, 10, 16, 14, 9, 8, 11, 11, 92, 32.31800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 32.31802 + 30, 67, 98, 113, 139, 138, 138, 144, 148, 149, 150, 155, 158, 157, 163, 168, 32.31803 + 174, 178, 181, 185, 190, 194, 200, 202, 204, 207, 209, 211, 212, 212, 214, 214, 32.31804 + 215, 217, 219, 221, 223, 225, 223, 224, 225, 226, 226, 226, 225, 225, 226, 229, 32.31805 + 233, 238, 242, 244, 244, 241, 233, 224, 213, 211, 216, 207, 203, 215, 211, 189, 32.31806 + 173, 173, 173, 167, 170, 177, 174, 175, 167, 148, 139, 144, 152, 154, 142, 135, 32.31807 + 124, 113, 106, 103, 103, 101, 109, 108, 112, 116, 120, 118, 113, 109, 94, 99, 32.31808 + 99, 87, 77, 78, 83, 87, 99, 128, 121, 113, 103, 89, 71, 26, 30, 19, 32.31809 + 12, 15, 18, 15, 7, 6, 12, 12, 93, 255, 255, 255, 255, 255, 255, 255, 32.31810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31811 + 255, 255, 255, 255, 255, 255, 255, 35, 35, 88, 123, 118, 138, 143, 140, 144, 32.31812 + 148, 147, 151, 156, 160, 159, 168, 173, 181, 186, 191, 195, 199, 203, 206, 208, 32.31813 + 211, 213, 215, 216, 217, 217, 219, 220, 221, 222, 224, 227, 229, 233, 231, 232, 32.31814 + 233, 234, 234, 235, 235, 234, 236, 237, 240, 242, 244, 246, 246, 244, 240, 228, 32.31815 + 217, 217, 221, 212, 208, 221, 219, 192, 175, 183, 185, 176, 179, 190, 186, 176, 32.31816 + 164, 158, 169, 173, 154, 127, 94, 108, 127, 142, 146, 142, 136, 130, 124, 121, 32.31817 + 118, 116, 112, 107, 99, 93, 95, 87, 74, 62, 58, 60, 55, 45, 32, 39, 32.31818 + 35, 65, 87, 95, 125, 132, 115, 76, 34, 13, 14, 18, 18, 16, 12, 11, 32.31819 + 11, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 33, 32.31821 + 66, 103, 126, 136, 145, 154, 155, 148, 146, 151, 154, 155, 159, 168, 176, 181, 32.31822 + 186, 186, 189, 194, 200, 204, 211, 208, 209, 215, 218, 216, 216, 221, 214, 218, 32.31823 + 223, 228, 231, 230, 228, 229, 238, 238, 237, 236, 239, 239, 237, 235, 246, 242, 32.31824 + 243, 245, 244, 243, 245, 245, 236, 230, 226, 223, 223, 223, 226, 227, 221, 194, 32.31825 + 193, 202, 191, 188, 197, 191, 182, 180, 173, 156, 139, 132, 140, 150, 166, 159, 32.31826 + 152, 150, 153, 155, 153, 150, 151, 154, 155, 156, 155, 149, 140, 133, 121, 118, 32.31827 + 104, 83, 66, 58, 54, 45, 36, 26, 24, 25, 24, 25, 46, 69, 85, 110, 32.31828 + 124, 94, 46, 14, 8, 9, 14, 4, 8, 16, 255, 255, 255, 255, 255, 255, 32.31829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31830 + 255, 255, 255, 255, 255, 255, 44, 62, 94, 124, 140, 144, 149, 156, 160, 155, 32.31831 + 153, 156, 158, 158, 164, 171, 185, 189, 193, 195, 199, 202, 204, 206, 207, 208, 32.31832 + 205, 200, 204, 212, 212, 205, 213, 215, 219, 224, 228, 231, 233, 233, 244, 242, 32.31833 + 239, 239, 239, 240, 239, 238, 247, 243, 241, 245, 243, 241, 242, 242, 243, 238, 32.31834 + 235, 234, 232, 233, 235, 235, 221, 208, 204, 198, 193, 207, 210, 184, 187, 165, 32.31835 + 147, 148, 168, 183, 185, 179, 174, 174, 176, 182, 189, 194, 195, 196, 205, 204, 32.31836 + 201, 196, 188, 176, 164, 154, 139, 136, 123, 105, 85, 70, 57, 42, 40, 28, 32.31837 + 24, 23, 19, 17, 30, 49, 39, 44, 73, 104, 107, 73, 33, 9, 22, 8, 32.31838 + 4, 4, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 77, 32.31840 + 110, 136, 147, 151, 154, 160, 157, 155, 155, 161, 165, 170, 177, 183, 188, 189, 32.31841 + 191, 195, 196, 196, 194, 193, 202, 208, 203, 191, 196, 213, 216, 203, 209, 210, 32.31842 + 213, 220, 226, 232, 239, 241, 243, 239, 236, 236, 239, 240, 241, 242, 243, 241, 32.31843 + 240, 243, 242, 241, 241, 245, 251, 250, 247, 246, 244, 242, 241, 239, 228, 221, 32.31844 + 218, 212, 208, 216, 208, 181, 172, 170, 175, 184, 195, 200, 200, 196, 193, 197, 32.31845 + 204, 211, 214, 215, 214, 214, 216, 216, 213, 209, 203, 195, 185, 177, 168, 164, 32.31846 + 153, 138, 120, 102, 81, 58, 44, 34, 29, 29, 25, 16, 18, 26, 8, 19, 32.31847 + 32, 53, 90, 108, 77, 25, 13, 10, 8, 9, 10, 94, 255, 255, 255, 255, 32.31848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31849 + 255, 255, 255, 255, 255, 255, 59, 87, 120, 141, 149, 152, 156, 158, 155, 155, 32.31850 + 158, 163, 168, 174, 180, 185, 199, 192, 189, 191, 190, 186, 182, 180, 176, 183, 32.31851 + 182, 176, 182, 196, 204, 200, 204, 206, 211, 218, 225, 235, 242, 243, 240, 236, 32.31852 + 235, 235, 239, 244, 247, 248, 243, 239, 239, 242, 241, 240, 241, 245, 254, 253, 32.31853 + 252, 250, 247, 245, 242, 237, 232, 222, 223, 228, 216, 195, 182, 182, 172, 189, 32.31854 + 206, 207, 197, 191, 195, 202, 210, 214, 219, 222, 220, 215, 211, 209, 214, 213, 32.31855 + 212, 213, 212, 209, 207, 201, 188, 185, 177, 166, 156, 141, 116, 93, 58, 44, 32.31856 + 37, 36, 36, 27, 18, 14, 15, 23, 17, 11, 37, 80, 93, 77, 25, 27, 32.31857 + 18, 5, 7, 8, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 22, 77, 108, 32.31859 + 138, 148, 153, 156, 157, 155, 159, 161, 164, 167, 172, 177, 179, 179, 187, 176, 32.31860 + 168, 168, 167, 162, 158, 159, 160, 163, 169, 176, 181, 184, 194, 204, 199, 204, 32.31861 + 210, 219, 227, 235, 241, 243, 244, 238, 236, 236, 240, 243, 246, 249, 242, 239, 32.31862 + 238, 241, 242, 239, 240, 246, 254, 255, 255, 255, 251, 245, 241, 236, 227, 224, 32.31863 + 221, 215, 198, 175, 172, 187, 198, 192, 186, 187, 193, 203, 211, 215, 217, 220, 32.31864 + 226, 226, 225, 223, 222, 221, 215, 212, 211, 209, 207, 204, 201, 197, 193, 189, 32.31865 + 183, 176, 173, 163, 144, 123, 94, 71, 48, 39, 36, 31, 22, 15, 21, 7, 32.31866 + 10, 30, 36, 37, 66, 105, 91, 89, 56, 15, 9, 15, 255, 255, 255, 255, 32.31867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31868 + 255, 255, 255, 255, 255, 44, 83, 115, 141, 149, 154, 162, 163, 156, 157, 164, 32.31869 + 170, 175, 180, 184, 185, 181, 159, 148, 143, 145, 147, 144, 145, 151, 157, 155, 32.31870 + 163, 175, 178, 178, 186, 200, 203, 206, 213, 220, 228, 234, 239, 242, 250, 246, 32.31871 + 242, 239, 240, 240, 241, 239, 239, 236, 235, 237, 238, 235, 235, 241, 248, 252, 32.31872 + 254, 253, 251, 245, 238, 232, 222, 228, 213, 184, 179, 183, 188, 198, 196, 187, 32.31873 + 180, 186, 200, 216, 220, 220, 224, 224, 227, 228, 228, 228, 227, 225, 214, 208, 32.31874 + 204, 200, 197, 194, 190, 187, 191, 188, 182, 178, 176, 173, 159, 145, 134, 108, 32.31875 + 73, 47, 32, 27, 24, 22, 16, 8, 14, 30, 29, 23, 38, 65, 87, 101, 32.31876 + 69, 19, 12, 15, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 85, 115, 32.31878 + 139, 145, 153, 166, 168, 157, 157, 164, 170, 170, 169, 168, 162, 154, 133, 128, 32.31879 + 130, 143, 149, 151, 159, 170, 148, 148, 150, 153, 163, 172, 179, 181, 208, 211, 32.31880 + 214, 217, 223, 229, 237, 242, 255, 255, 250, 246, 245, 242, 238, 235, 237, 233, 32.31881 + 231, 232, 232, 229, 229, 232, 234, 237, 240, 242, 242, 236, 229, 223, 214, 213, 32.31882 + 185, 166, 183, 196, 193, 195, 181, 188, 195, 201, 206, 212, 215, 219, 230, 228, 32.31883 + 227, 227, 228, 223, 217, 210, 211, 205, 201, 196, 195, 193, 194, 190, 183, 182, 32.31884 + 180, 177, 178, 179, 170, 161, 153, 138, 113, 76, 45, 28, 25, 26, 16, 20, 32.31885 + 18, 8, 11, 25, 31, 25, 70, 106, 91, 49, 44, 45, 32, 255, 255, 255, 32.31886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31887 + 255, 255, 255, 255, 181, 30, 102, 129, 146, 147, 153, 166, 164, 149, 161, 166, 32.31888 + 165, 155, 141, 129, 112, 97, 95, 95, 106, 125, 137, 141, 154, 169, 160, 163, 32.31889 + 158, 154, 171, 195, 200, 189, 214, 214, 213, 214, 218, 224, 234, 242, 253, 254, 32.31890 + 250, 246, 243, 239, 237, 231, 228, 224, 221, 221, 221, 217, 217, 221, 215, 219, 32.31891 + 223, 227, 225, 221, 213, 209, 205, 182, 150, 161, 196, 196, 176, 180, 188, 189, 32.31892 + 190, 194, 202, 211, 218, 224, 228, 226, 225, 225, 227, 222, 213, 202, 193, 187, 32.31893 + 181, 177, 174, 173, 171, 170, 171, 173, 173, 172, 176, 178, 173, 168, 153, 157, 32.31894 + 145, 109, 66, 37, 26, 27, 22, 12, 10, 17, 24, 24, 29, 35, 38, 79, 32.31895 + 64, 19, 17, 20, 10, 11, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 48, 111, 127, 32.31897 + 144, 152, 153, 155, 159, 160, 154, 143, 135, 143, 148, 118, 79, 64, 104, 132, 32.31898 + 146, 136, 134, 147, 155, 150, 155, 158, 161, 168, 178, 189, 200, 206, 203, 221, 32.31899 + 227, 218, 216, 225, 235, 237, 241, 250, 247, 253, 222, 224, 217, 222, 201, 203, 32.31900 + 204, 201, 202, 203, 198, 190, 200, 194, 191, 198, 205, 207, 204, 201, 184, 123, 32.31901 + 155, 195, 189, 183, 176, 182, 188, 186, 189, 202, 209, 207, 209, 217, 218, 219, 32.31902 + 222, 218, 207, 197, 193, 189, 185, 174, 161, 159, 164, 156, 149, 157, 142, 157, 32.31903 + 165, 159, 161, 170, 173, 170, 178, 169, 158, 136, 98, 54, 32, 31, 31, 26, 32.31904 + 21, 16, 19, 23, 24, 21, 29, 62, 107, 39, 9, 10, 15, 19, 255, 255, 32.31905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31906 + 255, 255, 255, 255, 28, 77, 102, 137, 161, 158, 150, 152, 157, 154, 131, 144, 32.31907 + 137, 111, 84, 62, 59, 71, 73, 89, 97, 91, 91, 101, 103, 99, 129, 135, 32.31908 + 141, 148, 159, 176, 197, 210, 232, 215, 209, 217, 226, 225, 229, 240, 237, 238, 32.31909 + 236, 214, 236, 220, 208, 191, 212, 204, 189, 170, 163, 159, 145, 129, 131, 145, 32.31910 + 156, 162, 162, 164, 168, 172, 105, 122, 183, 189, 163, 169, 173, 178, 182, 190, 32.31911 + 200, 209, 208, 205, 207, 211, 223, 210, 205, 204, 198, 196, 190, 178, 157, 167, 32.31912 + 166, 153, 151, 152, 150, 149, 139, 137, 132, 132, 143, 158, 168, 169, 181, 177, 32.31913 + 169, 153, 124, 83, 49, 30, 32, 29, 26, 23, 22, 21, 22, 23, 29, 56, 32.31914 + 110, 70, 32, 36, 42, 54, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 43, 73, 122, 131, 32.31916 + 139, 145, 153, 152, 138, 122, 121, 100, 65, 53, 89, 124, 128, 118, 140, 144, 32.31917 + 149, 148, 151, 155, 156, 155, 147, 150, 152, 149, 145, 147, 158, 168, 177, 191, 32.31918 + 215, 235, 232, 219, 224, 238, 222, 221, 217, 197, 212, 182, 176, 186, 190, 204, 32.31919 + 211, 200, 187, 166, 129, 97, 125, 132, 121, 92, 66, 56, 58, 63, 85, 127, 32.31920 + 172, 165, 158, 177, 177, 173, 182, 199, 213, 214, 208, 204, 205, 206, 209, 189, 32.31921 + 188, 188, 177, 182, 186, 169, 166, 172, 167, 152, 144, 143, 140, 133, 133, 128, 32.31922 + 127, 131, 135, 141, 151, 161, 182, 181, 173, 160, 141, 111, 68, 34, 30, 30, 32.31923 + 31, 29, 24, 19, 21, 25, 25, 37, 94, 86, 26, 22, 23, 47, 23, 255, 32.31924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31925 + 255, 255, 255, 31, 54, 85, 114, 132, 150, 153, 127, 99, 101, 118, 93, 119, 32.31926 + 127, 114, 102, 98, 104, 119, 116, 115, 121, 128, 132, 135, 140, 147, 160, 167, 32.31927 + 171, 173, 170, 166, 166, 167, 146, 152, 160, 174, 200, 224, 223, 202, 224, 206, 32.31928 + 187, 198, 160, 141, 140, 173, 255, 255, 255, 255, 255, 239, 157, 84, 133, 112, 32.31929 + 87, 98, 145, 183, 177, 149, 122, 135, 139, 142, 164, 178, 177, 190, 194, 209, 32.31930 + 218, 212, 205, 204, 203, 197, 190, 179, 187, 184, 164, 168, 178, 165, 169, 153, 32.31931 + 147, 153, 155, 156, 156, 155, 149, 141, 134, 126, 113, 112, 139, 175, 181, 183, 32.31932 + 175, 159, 147, 129, 93, 52, 32, 31, 34, 32, 26, 19, 20, 29, 36, 37, 32.31933 + 94, 106, 26, 13, 6, 34, 26, 96, 255, 255, 255, 255, 255, 255, 255, 255, 32.31934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 54, 88, 127, 119, 32.31935 + 103, 97, 107, 127, 140, 144, 150, 123, 84, 71, 85, 93, 99, 109, 127, 130, 32.31936 + 141, 151, 156, 160, 171, 187, 190, 191, 194, 198, 202, 201, 196, 191, 183, 173, 32.31937 + 151, 135, 146, 178, 201, 205, 189, 182, 170, 152, 101, 137, 144, 111, 191, 234, 32.31938 + 255, 234, 187, 151, 128, 118, 133, 149, 150, 133, 115, 104, 98, 94, 129, 142, 32.31939 + 132, 138, 158, 158, 172, 204, 207, 212, 210, 201, 198, 199, 195, 184, 185, 178, 32.31940 + 179, 170, 150, 149, 147, 132, 103, 94, 100, 105, 104, 113, 123, 115, 124, 127, 32.31941 + 135, 140, 128, 111, 121, 146, 171, 182, 182, 169, 160, 148, 117, 83, 42, 37, 32.31942 + 34, 33, 27, 19, 21, 30, 31, 32, 92, 105, 27, 15, 9, 36, 23, 13, 32.31943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31944 + 255, 255, 255, 32, 54, 97, 69, 119, 144, 127, 117, 132, 129, 110, 73, 75, 32.31945 + 78, 97, 117, 118, 121, 138, 137, 144, 155, 165, 169, 175, 186, 199, 220, 215, 32.31946 + 207, 206, 206, 206, 201, 195, 198, 198, 197, 181, 147, 124, 139, 165, 144, 86, 32.31947 + 114, 140, 124, 87, 120, 135, 155, 165, 168, 164, 162, 163, 157, 150, 151, 145, 32.31948 + 138, 137, 139, 137, 128, 120, 132, 153, 139, 138, 159, 168, 184, 199, 212, 207, 32.31949 + 200, 193, 194, 194, 184, 172, 178, 173, 154, 133, 122, 112, 96, 83, 73, 80, 32.31950 + 99, 97, 87, 107, 132, 125, 112, 108, 115, 132, 136, 123, 113, 113, 148, 167, 32.31951 + 179, 175, 167, 156, 131, 106, 64, 48, 35, 32, 28, 22, 20, 29, 23, 35, 32.31952 + 90, 82, 23, 16, 10, 28, 19, 10, 90, 255, 255, 255, 255, 255, 255, 255, 32.31953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 79, 128, 146, 139, 32.31954 + 105, 73, 78, 104, 97, 69, 93, 112, 119, 122, 129, 132, 145, 166, 173, 180, 32.31955 + 186, 190, 194, 200, 206, 209, 208, 206, 201, 201, 204, 206, 205, 201, 194, 181, 32.31956 + 182, 192, 184, 145, 101, 75, 64, 109, 137, 95, 111, 139, 164, 142, 159, 166, 32.31957 + 173, 176, 178, 176, 180, 180, 164, 154, 148, 141, 129, 123, 134, 154, 174, 176, 32.31958 + 138, 137, 161, 183, 206, 201, 204, 199, 194, 199, 201, 191, 176, 165, 167, 179, 32.31959 + 150, 111, 101, 87, 75, 86, 82, 54, 63, 87, 88, 107, 146, 163, 163, 140, 32.31960 + 114, 105, 109, 112, 116, 121, 129, 146, 161, 164, 162, 153, 137, 121, 92, 63, 32.31961 + 38, 31, 29, 23, 20, 25, 33, 58, 106, 64, 25, 23, 18, 23, 15, 11, 32.31962 + 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31963 + 255, 255, 187, 106, 125, 107, 90, 69, 57, 71, 89, 92, 81, 76, 97, 130, 32.31964 + 147, 147, 156, 168, 179, 188, 204, 209, 209, 208, 212, 218, 217, 211, 209, 211, 32.31965 + 212, 211, 207, 200, 195, 192, 201, 199, 192, 188, 189, 176, 135, 91, 108, 134, 32.31966 + 107, 122, 158, 177, 154, 185, 185, 180, 183, 191, 195, 191, 193, 194, 183, 164, 32.31967 + 155, 151, 136, 118, 119, 134, 215, 190, 137, 133, 148, 166, 208, 221, 197, 193, 32.31968 + 197, 209, 208, 191, 173, 163, 164, 200, 175, 123, 104, 88, 95, 139, 168, 71, 32.31969 + 46, 94, 97, 88, 123, 164, 181, 172, 156, 142, 127, 113, 102, 98, 129, 138, 32.31970 + 147, 153, 153, 149, 142, 135, 111, 74, 41, 31, 32, 26, 21, 23, 26, 62, 32.31971 + 105, 41, 16, 19, 17, 12, 11, 9, 10, 255, 255, 255, 255, 255, 255, 255, 32.31972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 118, 88, 61, 46, 38, 32.31973 + 45, 68, 77, 70, 73, 86, 115, 130, 147, 163, 177, 192, 199, 201, 216, 217, 32.31974 + 217, 216, 215, 213, 212, 213, 218, 213, 205, 196, 192, 191, 194, 196, 186, 190, 32.31975 + 188, 182, 180, 175, 155, 134, 103, 137, 119, 133, 170, 177, 190, 188, 190, 192, 32.31976 + 193, 195, 195, 194, 194, 190, 183, 174, 163, 148, 132, 118, 104, 94, 192, 222, 32.31977 + 138, 120, 116, 175, 187, 178, 187, 202, 205, 201, 193, 180, 188, 215, 229, 232, 32.31978 + 187, 125, 106, 108, 106, 108, 117, 74, 58, 88, 114, 116, 135, 168, 177, 168, 32.31979 + 160, 153, 145, 128, 112, 102, 102, 112, 126, 141, 149, 150, 145, 138, 130, 94, 32.31980 + 58, 40, 31, 26, 26, 34, 37, 102, 85, 22, 15, 21, 10, 9, 9, 12, 32.31981 + 12, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.31982 + 255, 255, 134, 98, 56, 29, 44, 41, 50, 68, 79, 84, 100, 117, 131, 147, 32.31983 + 166, 182, 196, 208, 216, 217, 213, 214, 216, 217, 217, 216, 215, 214, 209, 210, 32.31984 + 210, 207, 200, 197, 192, 191, 199, 194, 184, 172, 167, 166, 161, 154, 102, 109, 32.31985 + 141, 163, 175, 187, 196, 204, 200, 201, 199, 197, 197, 196, 195, 194, 190, 181, 32.31986 + 171, 160, 146, 130, 115, 103, 134, 240, 178, 117, 116, 111, 144, 168, 184, 193, 32.31987 + 185, 182, 188, 196, 211, 233, 236, 239, 205, 156, 125, 116, 107, 101, 68, 77, 32.31988 + 100, 120, 119, 118, 143, 179, 178, 169, 160, 152, 143, 128, 115, 110, 113, 119, 32.31989 + 127, 137, 142, 144, 142, 140, 133, 120, 87, 44, 27, 33, 34, 24, 84, 92, 32.31990 + 52, 12, 19, 22, 9, 2, 3, 7, 9, 7, 90, 255, 255, 255, 255, 255, 32.31991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 34, 30, 35, 42, 44, 32.31992 + 52, 64, 80, 99, 127, 148, 161, 176, 192, 201, 207, 211, 215, 215, 211, 212, 32.31993 + 215, 217, 219, 218, 215, 216, 211, 212, 214, 213, 207, 203, 198, 197, 192, 189, 32.31994 + 187, 182, 171, 162, 160, 160, 120, 92, 146, 176, 176, 195, 197, 209, 206, 206, 32.31995 + 204, 202, 202, 201, 200, 199, 191, 185, 178, 168, 155, 139, 122, 111, 80, 220, 32.31996 + 216, 126, 145, 106, 124, 162, 168, 181, 180, 183, 199, 211, 215, 220, 233, 232, 32.31997 + 227, 196, 159, 140, 131, 120, 121, 132, 137, 131, 131, 147, 169, 185, 168, 160, 32.31998 + 153, 146, 138, 128, 124, 125, 143, 142, 141, 140, 138, 137, 135, 134, 146, 126, 32.31999 + 102, 77, 49, 32, 44, 66, 104, 66, 25, 13, 22, 18, 9, 3, 1, 5, 32.32000 + 9, 8, 11, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32001 + 255, 183, 26, 27, 33, 40, 43, 44, 47, 58, 82, 114, 147, 166, 181, 193, 32.32002 + 203, 204, 205, 205, 208, 209, 213, 215, 217, 219, 219, 215, 213, 211, 211, 209, 32.32003 + 205, 200, 198, 199, 203, 206, 205, 202, 202, 196, 178, 156, 150, 153, 148, 111, 32.32004 + 132, 160, 178, 197, 197, 204, 209, 210, 208, 208, 206, 205, 204, 202, 190, 185, 32.32005 + 180, 172, 160, 145, 128, 115, 120, 86, 236, 198, 147, 135, 111, 138, 153, 177, 32.32006 + 185, 186, 197, 204, 199, 195, 209, 211, 226, 222, 188, 173, 171, 160, 172, 172, 32.32007 + 168, 165, 174, 182, 171, 154, 155, 151, 149, 147, 142, 138, 141, 144, 165, 160, 32.32008 + 155, 148, 144, 140, 138, 136, 128, 126, 130, 117, 71, 38, 67, 124, 76, 36, 32.32009 + 21, 27, 18, 10, 11, 8, 5, 8, 9, 8, 12, 255, 255, 255, 255, 255, 32.32010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 36, 40, 40, 33, 29, 52, 46, 32.32011 + 47, 63, 98, 137, 167, 178, 183, 192, 199, 199, 199, 204, 209, 211, 213, 213, 32.32012 + 212, 211, 209, 205, 202, 200, 195, 193, 187, 183, 183, 187, 196, 201, 230, 223, 32.32013 + 214, 202, 180, 159, 154, 160, 157, 150, 127, 149, 186, 190, 197, 200, 208, 210, 32.32014 + 209, 209, 209, 206, 205, 201, 190, 185, 180, 174, 165, 153, 139, 128, 120, 113, 32.32015 + 135, 227, 221, 121, 120, 120, 147, 173, 181, 174, 177, 183, 188, 197, 193, 201, 32.32016 + 228, 236, 211, 199, 201, 198, 188, 187, 184, 180, 176, 175, 174, 172, 165, 165, 32.32017 + 164, 165, 161, 156, 157, 160, 159, 158, 157, 153, 151, 149, 148, 146, 144, 139, 32.32018 + 124, 111, 110, 110, 100, 81, 54, 27, 27, 32, 14, 10, 18, 11, 9, 8, 32.32019 + 7, 5, 10, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32020 + 255, 25, 22, 24, 35, 50, 63, 52, 53, 83, 126, 163, 183, 189, 195, 197, 32.32021 + 197, 194, 195, 198, 202, 201, 202, 200, 198, 196, 193, 189, 186, 185, 177, 179, 32.32022 + 177, 177, 177, 180, 185, 190, 208, 211, 212, 210, 198, 182, 172, 166, 153, 167, 32.32023 + 133, 153, 190, 180, 192, 204, 208, 211, 213, 217, 215, 212, 208, 204, 190, 184, 32.32024 + 177, 172, 164, 156, 145, 136, 121, 118, 121, 144, 224, 244, 140, 158, 139, 165, 32.32025 + 176, 174, 177, 178, 186, 201, 207, 224, 249, 254, 233, 218, 212, 210, 211, 202, 32.32026 + 188, 179, 176, 178, 190, 204, 193, 190, 187, 187, 182, 172, 167, 167, 158, 156, 32.32027 + 155, 155, 151, 148, 145, 143, 160, 143, 125, 122, 129, 122, 91, 56, 69, 46, 32.32028 + 36, 29, 17, 22, 27, 9, 10, 9, 7, 5, 11, 19, 98, 255, 255, 255, 32.32029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 23, 22, 26, 50, 78, 64, 52, 32.32030 + 60, 101, 150, 178, 191, 195, 200, 199, 194, 190, 188, 191, 188, 182, 184, 184, 32.32031 + 181, 178, 176, 176, 176, 178, 170, 171, 170, 171, 172, 174, 176, 180, 181, 191, 32.32032 + 202, 208, 205, 194, 174, 153, 161, 139, 129, 154, 181, 180, 191, 210, 216, 222, 32.32033 + 227, 231, 230, 227, 222, 216, 205, 195, 183, 173, 162, 153, 144, 137, 140, 95, 32.32034 + 124, 130, 131, 237, 248, 183, 167, 174, 173, 174, 180, 177, 181, 196, 222, 252, 32.32035 + 255, 255, 249, 224, 200, 195, 199, 200, 197, 200, 204, 204, 196, 188, 204, 197, 32.32036 + 192, 192, 189, 179, 172, 169, 166, 164, 162, 157, 152, 146, 144, 139, 133, 145, 32.32037 + 152, 139, 100, 73, 86, 115, 96, 71, 51, 34, 24, 28, 26, 12, 13, 13, 32.32038 + 11, 12, 19, 23, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32039 + 255, 24, 23, 27, 48, 75, 60, 47, 61, 112, 159, 182, 190, 196, 191, 187, 32.32040 + 185, 182, 186, 188, 183, 175, 173, 172, 169, 167, 167, 169, 172, 175, 167, 165, 32.32041 + 159, 157, 158, 162, 167, 173, 190, 196, 194, 185, 183, 178, 160, 134, 180, 102, 32.32042 + 113, 147, 169, 189, 193, 212, 226, 233, 240, 244, 245, 240, 234, 228, 226, 214, 32.32043 + 198, 182, 168, 156, 146, 140, 137, 130, 122, 120, 95, 116, 203, 248, 218, 200, 32.32044 + 170, 160, 167, 170, 176, 196, 219, 255, 255, 255, 248, 217, 179, 171, 185, 195, 32.32045 + 192, 184, 185, 197, 203, 199, 196, 187, 181, 183, 184, 181, 175, 173, 167, 166, 32.32046 + 163, 161, 159, 155, 153, 152, 144, 142, 116, 84, 88, 121, 132, 115, 106, 88, 32.32047 + 66, 46, 32, 24, 21, 19, 18, 19, 20, 22, 28, 30, 22, 92, 255, 255, 32.32048 + 255, 255, 255, 255, 255, 255, 255, 255, 178, 23, 23, 30, 43, 55, 37, 47, 32.32049 + 97, 134, 158, 185, 191, 196, 184, 187, 185, 175, 168, 168, 167, 165, 170, 158, 32.32050 + 159, 175, 187, 184, 174, 167, 152, 151, 146, 142, 140, 143, 154, 163, 174, 178, 32.32051 + 195, 192, 174, 183, 183, 145, 175, 108, 116, 149, 176, 198, 200, 215, 236, 240, 32.32052 + 245, 248, 250, 247, 244, 240, 237, 229, 219, 209, 195, 178, 161, 146, 134, 129, 32.32053 + 125, 122, 117, 119, 132, 144, 211, 239, 220, 186, 193, 197, 192, 203, 231, 255, 32.32054 + 255, 252, 214, 181, 166, 168, 177, 179, 175, 174, 176, 179, 180, 182, 182, 179, 32.32055 + 176, 178, 179, 178, 170, 164, 162, 164, 165, 163, 155, 146, 140, 135, 90, 97, 32.32056 + 112, 127, 134, 133, 125, 117, 110, 101, 91, 77, 62, 49, 37, 29, 32, 22, 32.32057 + 19, 29, 38, 35, 24, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32058 + 27, 26, 25, 28, 34, 41, 48, 61, 114, 148, 169, 189, 196, 199, 193, 180, 32.32059 + 170, 166, 163, 158, 154, 153, 158, 166, 181, 175, 154, 138, 131, 120, 87, 85, 32.32060 + 90, 110, 141, 166, 172, 169, 170, 179, 180, 180, 182, 182, 175, 172, 186, 128, 32.32061 + 130, 146, 164, 191, 207, 232, 240, 244, 249, 253, 254, 253, 251, 247, 240, 234, 32.32062 + 225, 215, 204, 189, 172, 157, 137, 130, 128, 129, 128, 127, 131, 137, 104, 164, 32.32063 + 206, 218, 224, 212, 216, 250, 253, 240, 219, 201, 193, 186, 174, 162, 169, 171, 32.32064 + 169, 168, 170, 173, 175, 174, 192, 185, 175, 170, 169, 168, 163, 159, 166, 164, 32.32065 + 156, 143, 125, 107, 93, 86, 118, 121, 127, 133, 136, 137, 132, 128, 128, 125, 32.32066 + 123, 115, 100, 82, 63, 50, 34, 29, 31, 41, 48, 40, 22, 9, 93, 255, 32.32067 + 255, 255, 255, 255, 255, 255, 255, 255, 28, 30, 29, 29, 28, 30, 46, 63, 32.32068 + 123, 160, 176, 190, 194, 199, 195, 176, 163, 160, 157, 151, 156, 165, 169, 164, 32.32069 + 161, 135, 95, 84, 78, 55, 94, 98, 112, 143, 188, 220, 222, 211, 202, 224, 32.32070 + 216, 204, 198, 167, 151, 176, 148, 125, 141, 158, 174, 199, 216, 235, 244, 248, 32.32071 + 252, 255, 255, 255, 255, 254, 245, 241, 234, 228, 219, 206, 189, 173, 154, 140, 32.32072 + 132, 129, 131, 132, 135, 136, 119, 112, 116, 162, 226, 244, 242, 255, 255, 255, 32.32073 + 240, 214, 192, 179, 174, 173, 193, 191, 187, 182, 178, 176, 172, 169, 173, 174, 32.32074 + 178, 181, 184, 182, 175, 169, 155, 135, 105, 82, 80, 99, 129, 151, 153, 151, 32.32075 + 147, 145, 146, 147, 147, 145, 150, 149, 150, 144, 132, 114, 91, 76, 49, 42, 32.32076 + 41, 48, 48, 36, 19, 6, 10, 89, 255, 255, 255, 255, 255, 255, 255, 255, 32.32077 + 28, 30, 31, 32, 30, 30, 35, 57, 125, 169, 186, 195, 194, 199, 180, 170, 32.32078 + 160, 152, 150, 154, 167, 178, 161, 137, 122, 98, 69, 78, 102, 101, 80, 85, 32.32079 + 94, 113, 153, 197, 220, 222, 220, 216, 193, 177, 178, 176, 179, 201, 122, 126, 32.32080 + 150, 170, 191, 211, 225, 235, 249, 251, 253, 255, 255, 255, 255, 255, 250, 247, 32.32081 + 243, 239, 232, 220, 205, 194, 180, 161, 142, 131, 128, 131, 140, 147, 132, 135, 32.32082 + 137, 144, 155, 165, 204, 255, 255, 234, 205, 185, 185, 187, 182, 172, 185, 185, 32.32083 + 183, 182, 182, 184, 183, 180, 183, 181, 178, 170, 157, 138, 118, 105, 89, 103, 32.32084 + 124, 144, 157, 165, 168, 169, 170, 166, 162, 159, 159, 161, 162, 160, 157, 151, 32.32085 + 145, 138, 129, 115, 99, 88, 73, 60, 48, 41, 34, 24, 14, 8, 7, 6, 32.32086 + 255, 255, 255, 255, 255, 255, 255, 255, 25, 26, 26, 28, 29, 31, 34, 56, 32.32087 + 127, 178, 198, 204, 197, 200, 165, 157, 148, 144, 152, 161, 158, 150, 123, 107, 32.32088 + 107, 103, 82, 98, 153, 193, 132, 127, 112, 109, 143, 196, 231, 238, 234, 201, 32.32089 + 177, 165, 160, 167, 157, 124, 151, 159, 162, 173, 194, 217, 238, 248, 252, 252, 32.32090 + 253, 252, 252, 251, 251, 253, 253, 251, 248, 246, 242, 233, 219, 210, 200, 182, 32.32091 + 160, 143, 132, 130, 139, 149, 161, 151, 142, 148, 167, 175, 171, 170, 124, 162, 32.32092 + 199, 205, 184, 160, 148, 144, 146, 144, 142, 142, 142, 143, 140, 140, 143, 128, 32.32093 + 110, 99, 105, 125, 150, 167, 192, 192, 187, 181, 173, 168, 167, 167, 179, 175, 32.32094 + 176, 173, 173, 171, 167, 163, 152, 143, 134, 124, 119, 109, 98, 88, 81, 66, 32.32095 + 49, 38, 26, 15, 10, 9, 10, 12, 96, 255, 255, 255, 255, 255, 255, 255, 32.32096 + 25, 21, 20, 22, 26, 32, 38, 52, 118, 171, 195, 201, 190, 189, 164, 149, 32.32097 + 139, 145, 160, 160, 138, 114, 131, 111, 100, 99, 92, 86, 108, 144, 139, 138, 32.32098 + 130, 136, 176, 226, 242, 231, 206, 187, 186, 180, 159, 165, 162, 129, 163, 176, 32.32099 + 165, 177, 207, 227, 246, 254, 255, 255, 254, 252, 251, 250, 251, 253, 255, 254, 32.32100 + 251, 250, 248, 242, 232, 224, 212, 200, 185, 169, 153, 139, 136, 140, 149, 159, 32.32101 + 166, 165, 168, 176, 177, 170, 182, 170, 156, 155, 166, 172, 161, 144, 161, 157, 32.32102 + 155, 155, 155, 157, 156, 156, 149, 160, 176, 190, 197, 192, 183, 177, 185, 189, 32.32103 + 193, 197, 198, 200, 204, 205, 186, 184, 186, 183, 183, 176, 171, 162, 155, 145, 32.32104 + 139, 135, 129, 120, 108, 96, 81, 68, 55, 43, 30, 16, 11, 9, 9, 13, 32.32105 + 18, 17, 255, 255, 255, 255, 255, 255, 26, 22, 19, 22, 31, 40, 39, 42, 32.32106 + 98, 151, 181, 190, 179, 177, 166, 143, 136, 150, 152, 132, 122, 125, 168, 147, 32.32107 + 105, 87, 94, 75, 59, 75, 100, 118, 136, 156, 202, 251, 255, 248, 249, 228, 32.32108 + 202, 173, 146, 136, 143, 151, 143, 167, 159, 188, 225, 234, 249, 255, 255, 255, 32.32109 + 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 252, 246, 240, 229, 218, 32.32110 + 206, 194, 178, 159, 145, 140, 151, 161, 172, 171, 166, 179, 196, 201, 206, 209, 32.32111 + 207, 196, 187, 182, 180, 175, 151, 149, 151, 156, 166, 176, 181, 184, 185, 184, 32.32112 + 180, 177, 179, 181, 188, 194, 205, 209, 207, 205, 200, 196, 196, 196, 197, 194, 32.32113 + 193, 190, 188, 183, 178, 170, 162, 152, 146, 142, 138, 131, 119, 106, 88, 77, 32.32114 + 65, 52, 35, 19, 13, 11, 10, 11, 12, 12, 92, 255, 255, 255, 255, 255, 32.32115 + 27, 25, 23, 28, 39, 50, 38, 35, 84, 135, 170, 185, 176, 174, 157, 134, 32.32116 + 135, 149, 129, 96, 115, 163, 178, 180, 136, 103, 114, 108, 99, 125, 134, 157, 32.32117 + 168, 165, 186, 230, 254, 254, 213, 197, 167, 171, 193, 169, 131, 136, 147, 173, 32.32118 + 162, 190, 227, 232, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32119 + 255, 255, 255, 255, 255, 251, 248, 234, 218, 208, 197, 177, 159, 148, 144, 152, 32.32120 + 175, 189, 184, 184, 189, 188, 197, 206, 211, 212, 212, 214, 212, 207, 206, 200, 32.32121 + 194, 190, 190, 192, 192, 193, 197, 201, 204, 206, 207, 207, 208, 210, 211, 216, 32.32122 + 217, 218, 214, 209, 204, 202, 203, 198, 193, 190, 189, 186, 184, 180, 163, 150, 32.32123 + 140, 134, 132, 128, 121, 111, 106, 94, 76, 57, 36, 19, 14, 16, 19, 16, 32.32124 + 13, 14, 17, 255, 255, 255, 255, 255, 31, 19, 15, 24, 35, 40, 38, 26, 32.32125 + 56, 116, 152, 163, 170, 175, 154, 140, 121, 106, 102, 115, 142, 167, 180, 188, 32.32126 + 179, 157, 143, 148, 160, 164, 196, 193, 193, 185, 182, 199, 216, 215, 189, 175, 32.32127 + 158, 155, 159, 157, 147, 139, 165, 167, 175, 198, 226, 244, 254, 255, 255, 255, 32.32128 + 255, 255, 255, 252, 248, 248, 247, 255, 255, 255, 255, 255, 255, 254, 248, 247, 32.32129 + 238, 223, 210, 197, 178, 160, 142, 143, 156, 176, 189, 190, 189, 189, 203, 212, 32.32130 + 218, 216, 219, 226, 227, 223, 225, 224, 224, 223, 222, 220, 219, 217, 220, 222, 32.32131 + 223, 222, 219, 216, 217, 221, 227, 227, 225, 224, 220, 213, 208, 204, 206, 202, 32.32132 + 195, 193, 191, 189, 187, 183, 171, 162, 153, 144, 138, 131, 125, 119, 108, 93, 32.32133 + 72, 52, 38, 28, 19, 12, 13, 23, 35, 34, 19, 97, 255, 255, 255, 255, 32.32134 + 24, 20, 23, 26, 27, 25, 38, 33, 49, 91, 132, 148, 160, 170, 146, 126, 32.32135 + 106, 97, 103, 121, 144, 162, 169, 176, 176, 162, 157, 169, 182, 187, 192, 175, 32.32136 + 178, 189, 185, 182, 197, 210, 143, 168, 189, 177, 148, 133, 150, 176, 179, 179, 32.32137 + 185, 206, 230, 244, 252, 255, 255, 255, 255, 255, 253, 248, 246, 244, 240, 249, 32.32138 + 253, 255, 255, 255, 255, 251, 254, 252, 245, 231, 218, 207, 193, 176, 160, 150, 32.32139 + 149, 157, 167, 176, 186, 196, 203, 211, 219, 222, 229, 237, 239, 234, 236, 235, 32.32140 + 237, 235, 236, 231, 231, 228, 227, 227, 231, 229, 229, 226, 230, 231, 231, 230, 32.32141 + 231, 230, 229, 226, 221, 219, 212, 206, 201, 195, 192, 190, 187, 180, 173, 165, 32.32142 + 157, 149, 142, 136, 129, 123, 113, 99, 79, 58, 40, 29, 21, 17, 18, 25, 32.32143 + 33, 37, 34, 25, 97, 255, 255, 255, 23, 23, 25, 24, 25, 30, 48, 53, 32.32144 + 52, 72, 117, 140, 149, 166, 142, 120, 100, 98, 110, 127, 143, 152, 145, 153, 32.32145 + 157, 153, 156, 170, 181, 183, 196, 199, 197, 178, 167, 180, 176, 149, 255, 217, 32.32146 + 161, 138, 151, 169, 172, 169, 187, 185, 191, 210, 233, 245, 251, 253, 255, 255, 32.32147 + 255, 254, 249, 246, 245, 246, 244, 252, 255, 255, 255, 255, 255, 253, 255, 253, 32.32148 + 245, 232, 220, 213, 203, 192, 178, 164, 153, 150, 155, 167, 181, 195, 209, 216, 32.32149 + 223, 226, 233, 238, 241, 238, 239, 239, 240, 239, 239, 237, 236, 233, 231, 232, 32.32150 + 234, 234, 234, 233, 236, 236, 230, 229, 229, 227, 226, 224, 223, 221, 215, 210, 32.32151 + 204, 198, 195, 191, 188, 182, 178, 171, 164, 157, 150, 141, 132, 124, 119, 109, 32.32152 + 92, 69, 48, 33, 27, 28, 22, 29, 30, 45, 58, 36, 15, 255, 255, 255, 32.32153 + 20, 23, 25, 21, 26, 39, 48, 66, 57, 60, 107, 135, 140, 157, 143, 131, 32.32154 + 120, 119, 126, 133, 143, 151, 156, 161, 166, 168, 174, 184, 189, 187, 194, 180, 32.32155 + 191, 194, 157, 128, 155, 199, 123, 138, 154, 161, 162, 163, 173, 186, 188, 188, 32.32156 + 193, 213, 233, 246, 250, 250, 255, 255, 253, 250, 247, 246, 249, 250, 252, 255, 32.32157 + 255, 255, 255, 255, 255, 254, 250, 246, 236, 223, 213, 208, 204, 199, 185, 176, 32.32158 + 170, 167, 168, 171, 177, 183, 209, 218, 226, 230, 231, 235, 238, 241, 240, 240, 32.32159 + 241, 239, 239, 236, 234, 232, 233, 233, 235, 234, 235, 234, 236, 235, 232, 231, 32.32160 + 229, 225, 221, 219, 217, 215, 216, 212, 206, 202, 197, 194, 190, 184, 180, 175, 32.32161 + 170, 164, 157, 148, 137, 129, 124, 115, 100, 79, 53, 33, 30, 36, 31, 39, 32.32162 + 40, 65, 94, 61, 20, 255, 255, 255, 16, 20, 26, 25, 24, 28, 30, 57, 32.32163 + 51, 51, 96, 130, 133, 143, 139, 143, 146, 146, 141, 137, 146, 157, 167, 173, 32.32164 + 177, 183, 188, 193, 194, 191, 181, 176, 163, 135, 125, 153, 175, 167, 163, 158, 32.32165 + 152, 154, 165, 180, 190, 197, 191, 190, 195, 214, 235, 247, 251, 250, 255, 253, 32.32166 + 252, 252, 250, 248, 252, 253, 252, 255, 255, 255, 255, 255, 255, 251, 247, 241, 32.32167 + 229, 216, 205, 200, 201, 201, 188, 187, 189, 188, 185, 182, 177, 174, 188, 203, 32.32168 + 221, 234, 237, 236, 238, 243, 243, 243, 245, 242, 242, 237, 236, 232, 232, 230, 32.32169 + 232, 232, 236, 235, 238, 236, 238, 236, 233, 229, 224, 221, 217, 216, 214, 211, 32.32170 + 205, 202, 201, 197, 193, 189, 183, 179, 175, 170, 164, 155, 143, 134, 122, 113, 32.32171 + 99, 79, 51, 28, 24, 33, 38, 47, 53, 87, 125, 93, 37, 102, 255, 255, 32.32172 + 32, 17, 20, 26, 25, 22, 20, 43, 46, 52, 93, 129, 137, 141, 135, 147, 32.32173 + 158, 160, 152, 144, 153, 165, 165, 169, 176, 182, 184, 184, 182, 178, 182, 131, 32.32174 + 118, 152, 168, 158, 146, 142, 149, 152, 160, 169, 182, 190, 198, 202, 192, 190, 32.32175 + 198, 215, 237, 250, 254, 253, 254, 255, 255, 255, 255, 253, 252, 252, 253, 255, 32.32176 + 255, 255, 255, 255, 255, 253, 248, 240, 226, 212, 199, 192, 195, 200, 191, 197, 32.32177 + 202, 200, 197, 193, 188, 184, 169, 183, 207, 230, 243, 245, 245, 248, 251, 251, 32.32178 + 252, 250, 249, 245, 243, 240, 232, 230, 232, 234, 239, 241, 243, 241, 238, 236, 32.32179 + 235, 232, 229, 226, 223, 220, 216, 212, 208, 204, 204, 200, 197, 191, 184, 180, 32.32180 + 176, 172, 166, 159, 148, 139, 127, 116, 103, 84, 54, 29, 24, 36, 35, 47, 32.32181 + 55, 86, 129, 115, 58, 20, 255, 255, 71, 50, 37, 32, 32, 30, 28, 43, 32.32182 + 51, 59, 90, 128, 144, 143, 142, 147, 155, 158, 156, 152, 157, 165, 171, 174, 32.32183 + 177, 179, 173, 164, 158, 155, 108, 134, 168, 175, 161, 160, 168, 169, 176, 173, 32.32184 + 175, 186, 201, 209, 204, 198, 194, 190, 196, 214, 235, 246, 251, 249, 252, 254, 32.32185 + 255, 255, 255, 252, 247, 244, 249, 251, 250, 251, 255, 255, 255, 253, 247, 236, 32.32186 + 221, 205, 189, 180, 183, 190, 193, 203, 210, 210, 210, 211, 209, 206, 185, 181, 32.32187 + 188, 209, 232, 244, 248, 251, 255, 255, 255, 255, 255, 254, 254, 251, 244, 240, 32.32188 + 241, 241, 246, 245, 246, 243, 235, 234, 234, 233, 232, 229, 224, 221, 219, 215, 32.32189 + 212, 209, 206, 202, 197, 191, 185, 180, 176, 172, 167, 160, 153, 145, 134, 122, 32.32190 + 107, 90, 60, 35, 29, 40, 37, 46, 54, 79, 122, 133, 86, 24, 255, 255, 32.32191 + 101, 101, 73, 50, 39, 38, 41, 45, 55, 63, 84, 122, 144, 140, 154, 151, 32.32192 + 148, 154, 158, 160, 160, 162, 163, 165, 165, 159, 145, 126, 115, 112, 161, 152, 32.32193 + 160, 174, 165, 156, 169, 182, 183, 188, 195, 202, 208, 210, 207, 204, 193, 187, 32.32194 + 192, 209, 229, 241, 246, 246, 249, 253, 255, 255, 255, 252, 244, 240, 239, 241, 32.32195 + 240, 241, 246, 253, 251, 246, 243, 230, 212, 194, 177, 166, 169, 178, 191, 206, 32.32196 + 218, 223, 224, 226, 225, 220, 219, 193, 176, 188, 215, 236, 247, 252, 254, 255, 32.32197 + 255, 255, 255, 255, 255, 255, 255, 254, 250, 249, 250, 249, 245, 240, 240, 240, 32.32198 + 239, 239, 236, 232, 227, 222, 224, 219, 216, 212, 210, 203, 197, 191, 186, 180, 32.32199 + 175, 171, 167, 162, 155, 148, 135, 121, 108, 89, 61, 34, 27, 39, 50, 55, 32.32200 + 61, 79, 120, 153, 116, 41, 100, 255, 183, 31, 65, 87, 94, 95, 93, 97, 32.32201 + 90, 97, 123, 144, 153, 162, 149, 150, 153, 156, 155, 153, 147, 143, 124, 121, 32.32202 + 117, 119, 126, 138, 152, 162, 185, 183, 179, 176, 177, 182, 188, 194, 199, 193, 32.32203 + 201, 209, 208, 213, 216, 209, 196, 189, 193, 206, 217, 222, 231, 241, 247, 249, 32.32204 + 251, 253, 255, 255, 254, 251, 244, 243, 242, 247, 255, 255, 254, 251, 243, 226, 32.32205 + 210, 179, 138, 115, 122, 132, 160, 189, 219, 233, 241, 246, 241, 232, 224, 221, 32.32206 + 198, 179, 175, 215, 255, 245, 252, 255, 255, 255, 255, 253, 254, 255, 255, 255, 32.32207 + 254, 253, 251, 250, 247, 242, 243, 241, 238, 237, 235, 233, 231, 227, 226, 220, 32.32208 + 215, 211, 210, 205, 199, 193, 188, 184, 179, 174, 170, 164, 158, 151, 139, 125, 32.32209 + 109, 89, 64, 39, 27, 31, 50, 52, 59, 92, 121, 141, 129, 63, 29, 255, 32.32210 + 255, 24, 18, 38, 44, 52, 90, 103, 109, 119, 142, 151, 151, 153, 160, 155, 32.32211 + 148, 140, 131, 122, 111, 106, 120, 126, 135, 147, 158, 167, 172, 177, 183, 186, 32.32212 + 187, 190, 191, 194, 196, 200, 203, 202, 213, 221, 214, 214, 218, 210, 192, 187, 32.32213 + 192, 201, 209, 212, 220, 230, 231, 239, 250, 255, 255, 255, 255, 254, 255, 255, 32.32214 + 255, 255, 255, 255, 255, 254, 244, 229, 191, 136, 91, 72, 77, 90, 118, 152, 32.32215 + 192, 217, 232, 242, 244, 238, 235, 230, 209, 187, 174, 204, 250, 244, 255, 255, 32.32216 + 255, 255, 255, 252, 253, 254, 255, 255, 252, 251, 251, 250, 247, 243, 242, 240, 32.32217 + 239, 237, 236, 234, 230, 227, 225, 219, 212, 208, 206, 204, 202, 196, 188, 184, 32.32218 + 179, 174, 170, 164, 158, 151, 141, 128, 111, 90, 64, 40, 27, 31, 45, 53, 32.32219 + 61, 91, 119, 143, 136, 75, 30, 255, 255, 42, 14, 19, 24, 30, 37, 62, 32.32220 + 80, 92, 105, 108, 104, 104, 97, 97, 100, 108, 119, 129, 137, 140, 150, 157, 32.32221 + 168, 178, 184, 185, 183, 184, 191, 196, 200, 202, 205, 206, 204, 205, 209, 213, 32.32222 + 226, 230, 220, 217, 221, 211, 189, 187, 193, 197, 200, 200, 207, 214, 224, 229, 32.32223 + 237, 246, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 227, 32.32224 + 170, 104, 76, 74, 86, 112, 126, 156, 194, 220, 238, 251, 255, 250, 242, 236, 32.32225 + 219, 198, 171, 188, 239, 250, 255, 255, 255, 255, 255, 252, 252, 253, 253, 251, 32.32226 + 250, 250, 251, 251, 249, 245, 243, 241, 240, 237, 235, 232, 230, 227, 224, 218, 32.32227 + 210, 205, 204, 203, 203, 199, 187, 180, 177, 173, 167, 163, 157, 151, 143, 130, 32.32228 + 113, 89, 63, 39, 27, 30, 37, 51, 61, 87, 115, 144, 147, 90, 32, 255, 32.32229 + 255, 52, 31, 23, 40, 39, 59, 92, 115, 125, 133, 136, 137, 142, 159, 156, 32.32230 + 155, 158, 164, 172, 175, 177, 190, 190, 190, 189, 188, 187, 187, 188, 205, 208, 32.32231 + 209, 210, 210, 210, 211, 211, 220, 222, 230, 232, 223, 223, 223, 211, 187, 191, 32.32232 + 199, 200, 198, 198, 200, 200, 217, 218, 224, 239, 251, 255, 255, 255, 255, 255, 32.32233 + 255, 255, 255, 255, 255, 253, 236, 215, 148, 90, 84, 83, 93, 129, 156, 171, 32.32234 + 190, 210, 230, 248, 252, 249, 246, 238, 224, 206, 171, 174, 231, 255, 255, 255, 32.32235 + 255, 255, 255, 254, 253, 253, 251, 250, 249, 250, 252, 253, 252, 249, 244, 241, 32.32236 + 240, 237, 234, 231, 228, 227, 221, 217, 210, 206, 203, 200, 198, 196, 183, 178, 32.32237 + 173, 169, 166, 161, 155, 148, 142, 131, 113, 87, 61, 39, 27, 26, 33, 46, 32.32238 + 57, 83, 111, 147, 154, 100, 36, 255, 255, 29, 28, 14, 50, 45, 67, 109, 32.32239 + 137, 146, 154, 160, 164, 171, 155, 157, 164, 174, 185, 196, 202, 205, 202, 200, 32.32240 + 197, 194, 194, 198, 203, 206, 217, 217, 213, 211, 212, 214, 220, 223, 231, 228, 32.32241 + 230, 229, 224, 229, 227, 208, 191, 200, 209, 209, 206, 205, 200, 194, 185, 179, 32.32242 + 184, 207, 232, 244, 249, 250, 255, 252, 249, 252, 255, 255, 253, 246, 225, 190, 32.32243 + 130, 105, 121, 118, 123, 164, 188, 184, 185, 198, 225, 250, 255, 255, 248, 239, 32.32244 + 225, 209, 169, 168, 224, 252, 255, 255, 255, 255, 255, 255, 253, 253, 251, 249, 32.32245 + 249, 250, 252, 253, 252, 250, 244, 242, 241, 238, 235, 232, 229, 227, 219, 217, 32.32246 + 214, 210, 203, 197, 193, 188, 179, 175, 171, 167, 163, 160, 154, 148, 141, 129, 32.32247 + 110, 83, 56, 36, 25, 24, 32, 41, 52, 81, 112, 146, 156, 106, 39, 101, 32.32248 + 255, 30, 38, 22, 48, 41, 70, 120, 156, 169, 177, 181, 184, 189, 189, 190, 32.32249 + 192, 198, 201, 202, 200, 198, 201, 202, 204, 204, 208, 211, 214, 217, 218, 215, 32.32250 + 213, 213, 215, 223, 231, 236, 240, 233, 232, 228, 227, 233, 229, 208, 195, 210, 32.32251 + 221, 219, 217, 217, 204, 187, 145, 127, 118, 135, 167, 197, 223, 240, 250, 249, 32.32252 + 246, 249, 253, 252, 244, 237, 215, 175, 138, 144, 167, 162, 162, 192, 211, 199, 32.32253 + 195, 206, 234, 255, 255, 255, 253, 241, 225, 208, 171, 168, 220, 244, 255, 255, 32.32254 + 255, 255, 255, 255, 255, 254, 253, 251, 250, 251, 253, 253, 252, 250, 244, 242, 32.32255 + 241, 237, 234, 230, 228, 225, 216, 216, 215, 210, 203, 194, 189, 185, 180, 175, 32.32256 + 171, 167, 164, 160, 153, 147, 138, 129, 110, 81, 54, 37, 26, 24, 33, 39, 32.32257 + 52, 89, 115, 140, 152, 113, 42, 26, 255, 41, 42, 42, 41, 42, 72, 123, 32.32258 + 163, 175, 182, 186, 188, 194, 191, 192, 194, 197, 202, 204, 204, 203, 207, 210, 32.32259 + 212, 214, 217, 219, 219, 219, 216, 215, 218, 219, 224, 231, 236, 239, 238, 236, 32.32260 + 238, 234, 229, 234, 231, 210, 202, 219, 230, 229, 229, 226, 205, 177, 124, 107, 32.32261 + 102, 117, 141, 164, 189, 211, 232, 237, 240, 243, 240, 236, 233, 231, 218, 186, 32.32262 + 166, 175, 181, 168, 159, 163, 195, 189, 195, 212, 235, 250, 254, 252, 253, 240, 32.32263 + 221, 207, 177, 179, 226, 241, 255, 254, 251, 250, 252, 254, 254, 253, 253, 252, 32.32264 + 250, 250, 250, 250, 249, 245, 244, 241, 240, 237, 235, 231, 226, 224, 216, 215, 32.32265 + 214, 208, 201, 194, 191, 187, 181, 177, 173, 169, 166, 163, 156, 150, 137, 128, 32.32266 + 110, 79, 53, 38, 28, 24, 33, 39, 61, 102, 117, 128, 145, 121, 44, 26, 32.32267 + 255, 31, 15, 40, 29, 48, 73, 120, 156, 162, 170, 177, 181, 188, 191, 192, 32.32268 + 192, 195, 199, 202, 204, 204, 213, 213, 215, 215, 219, 222, 225, 226, 218, 220, 32.32269 + 225, 229, 233, 235, 235, 234, 234, 238, 244, 241, 234, 237, 234, 215, 208, 223, 32.32270 + 234, 233, 233, 231, 204, 170, 118, 125, 147, 173, 184, 179, 176, 182, 212, 226, 32.32271 + 236, 238, 230, 226, 227, 231, 212, 192, 189, 199, 198, 189, 181, 171, 173, 180, 32.32272 + 199, 226, 249, 255, 255, 255, 250, 236, 218, 205, 181, 190, 234, 243, 252, 251, 32.32273 + 247, 248, 251, 254, 254, 253, 254, 252, 250, 249, 249, 248, 246, 242, 246, 242, 32.32274 + 240, 237, 235, 231, 226, 225, 215, 214, 212, 206, 198, 193, 193, 192, 184, 179, 32.32275 + 175, 172, 167, 163, 158, 153, 137, 132, 114, 82, 55, 41, 30, 26, 32, 40, 32.32276 + 70, 114, 121, 124, 144, 131, 48, 30, 255, 24, 35, 43, 47, 49, 65, 105, 32.32277 + 139, 152, 165, 169, 168, 175, 181, 187, 192, 197, 201, 207, 215, 221, 219, 219, 32.32278 + 218, 218, 220, 225, 227, 228, 230, 235, 237, 236, 234, 233, 236, 239, 243, 244, 32.32279 + 245, 246, 244, 241, 238, 233, 205, 216, 229, 236, 240, 234, 212, 186, 143, 161, 32.32280 + 179, 188, 204, 214, 201, 180, 191, 205, 217, 226, 231, 233, 228, 219, 214, 211, 32.32281 + 210, 205, 201, 198, 196, 194, 174, 174, 187, 218, 251, 255, 255, 255, 244, 245, 32.32282 + 223, 187, 182, 215, 239, 243, 255, 253, 245, 245, 251, 255, 255, 255, 255, 253, 32.32283 + 253, 253, 252, 251, 248, 245, 243, 242, 241, 239, 235, 232, 227, 224, 212, 212, 32.32284 + 211, 206, 199, 193, 192, 191, 188, 183, 176, 169, 163, 157, 152, 148, 138, 132, 32.32285 + 117, 93, 67, 44, 30, 27, 31, 42, 63, 117, 153, 112, 143, 139, 62, 29, 32.32286 + 255, 22, 31, 40, 44, 48, 58, 101, 135, 149, 160, 165, 166, 175, 185, 190, 32.32287 + 197, 200, 202, 208, 216, 220, 223, 221, 222, 222, 224, 227, 229, 232, 234, 236, 32.32288 + 237, 236, 235, 236, 238, 240, 245, 245, 246, 246, 246, 245, 244, 241, 214, 218, 32.32289 + 227, 235, 241, 239, 227, 212, 177, 187, 196, 203, 210, 213, 201, 185, 188, 200, 32.32290 + 212, 218, 223, 228, 226, 222, 224, 221, 217, 212, 208, 207, 208, 207, 198, 199, 32.32291 + 210, 227, 246, 255, 255, 254, 242, 238, 214, 190, 193, 218, 235, 237, 252, 251, 32.32292 + 246, 246, 251, 255, 255, 255, 255, 255, 253, 251, 251, 250, 248, 244, 243, 242, 32.32293 + 241, 238, 234, 231, 227, 223, 218, 216, 215, 208, 200, 195, 191, 189, 188, 181, 32.32294 + 174, 166, 159, 153, 149, 146, 134, 128, 115, 93, 68, 46, 31, 27, 28, 42, 32.32295 + 72, 132, 158, 110, 138, 144, 66, 33, 255, 18, 26, 35, 40, 43, 48, 94, 32.32296 + 130, 143, 154, 160, 166, 177, 189, 193, 199, 202, 204, 210, 216, 219, 223, 223, 32.32297 + 225, 226, 227, 230, 233, 236, 237, 236, 234, 234, 237, 240, 242, 242, 247, 247, 32.32298 + 247, 247, 248, 248, 249, 248, 222, 218, 226, 240, 249, 249, 243, 238, 212, 208, 32.32299 + 202, 200, 199, 195, 189, 184, 195, 203, 210, 214, 220, 229, 232, 229, 232, 228, 32.32300 + 224, 219, 216, 217, 220, 222, 220, 222, 228, 230, 234, 238, 242, 243, 235, 225, 32.32301 + 207, 195, 204, 221, 228, 227, 241, 243, 243, 244, 246, 250, 254, 255, 255, 255, 32.32302 + 253, 251, 251, 248, 246, 244, 243, 241, 239, 237, 232, 229, 226, 222, 220, 217, 32.32303 + 216, 210, 203, 197, 193, 189, 184, 178, 170, 163, 156, 150, 145, 141, 130, 124, 32.32304 + 113, 93, 70, 50, 36, 30, 33, 41, 67, 132, 159, 118, 134, 138, 73, 35, 32.32305 + 255, 16, 22, 27, 31, 34, 42, 89, 127, 140, 150, 157, 166, 181, 192, 194, 32.32306 + 200, 204, 207, 212, 217, 220, 223, 224, 228, 229, 230, 233, 236, 239, 241, 238, 32.32307 + 234, 235, 240, 244, 246, 246, 251, 250, 248, 247, 247, 248, 250, 250, 231, 218, 32.32308 + 222, 239, 254, 253, 249, 248, 238, 222, 207, 197, 188, 180, 180, 187, 206, 210, 32.32309 + 213, 213, 219, 228, 235, 235, 236, 234, 231, 228, 226, 227, 229, 230, 227, 230, 32.32310 + 230, 226, 225, 226, 229, 229, 225, 215, 205, 205, 213, 221, 222, 220, 228, 234, 32.32311 + 238, 237, 240, 241, 246, 249, 255, 254, 254, 253, 253, 251, 247, 242, 241, 239, 32.32312 + 237, 233, 229, 225, 223, 220, 215, 213, 212, 209, 205, 200, 194, 192, 183, 177, 32.32313 + 169, 160, 154, 148, 143, 139, 130, 124, 114, 97, 76, 56, 42, 36, 42, 39, 32.32314 + 50, 110, 150, 138, 140, 127, 85, 42, 255, 15, 18, 20, 24, 27, 39, 86, 32.32315 + 123, 138, 149, 157, 169, 185, 190, 192, 198, 203, 209, 214, 219, 220, 223, 226, 32.32316 + 230, 231, 232, 233, 237, 241, 243, 240, 237, 238, 243, 248, 250, 250, 254, 252, 32.32317 + 249, 247, 246, 247, 248, 248, 247, 226, 218, 228, 243, 248, 248, 250, 255, 242, 32.32318 + 230, 223, 211, 197, 194, 202, 217, 219, 218, 215, 219, 228, 235, 236, 242, 241, 32.32319 + 242, 241, 241, 240, 239, 240, 233, 233, 230, 223, 222, 224, 222, 215, 216, 213, 32.32320 + 211, 214, 216, 216, 217, 218, 219, 225, 229, 230, 231, 231, 237, 240, 246, 248, 32.32321 + 252, 255, 255, 253, 247, 241, 240, 238, 235, 230, 227, 223, 221, 218, 212, 210, 32.32322 + 209, 207, 204, 199, 193, 189, 183, 177, 167, 159, 153, 146, 141, 136, 129, 124, 32.32323 + 115, 99, 82, 62, 46, 37, 39, 41, 45, 91, 129, 143, 142, 127, 100, 49, 32.32324 + 255, 16, 15, 17, 18, 22, 40, 86, 121, 136, 150, 159, 172, 186, 189, 190, 32.32325 + 196, 202, 208, 214, 218, 218, 223, 226, 232, 232, 231, 232, 235, 240, 243, 242, 32.32326 + 240, 241, 244, 248, 250, 251, 255, 253, 250, 247, 246, 246, 247, 246, 255, 239, 32.32327 + 221, 216, 222, 234, 244, 250, 255, 253, 254, 253, 243, 226, 218, 218, 229, 231, 32.32328 + 231, 229, 232, 237, 242, 242, 248, 249, 251, 252, 251, 250, 250, 249, 243, 243, 32.32329 + 235, 226, 224, 227, 219, 209, 213, 217, 220, 219, 215, 215, 215, 217, 215, 220, 32.32330 + 223, 222, 224, 223, 228, 231, 237, 240, 245, 250, 253, 252, 246, 239, 239, 235, 32.32331 + 232, 227, 223, 220, 217, 216, 212, 210, 207, 205, 202, 197, 189, 183, 182, 176, 32.32332 + 166, 157, 150, 144, 138, 135, 126, 121, 113, 99, 84, 67, 49, 40, 32, 43, 32.32333 + 56, 95, 115, 133, 130, 131, 106, 50, 255, 16, 15, 15, 18, 22, 43, 85, 32.32334 + 118, 134, 150, 161, 172, 184, 189, 189, 195, 201, 207, 212, 214, 213, 222, 226, 32.32335 + 232, 232, 230, 229, 233, 238, 240, 242, 243, 243, 243, 245, 248, 250, 253, 252, 32.32336 + 250, 249, 248, 248, 249, 248, 255, 252, 237, 218, 213, 222, 235, 244, 245, 251, 32.32337 + 255, 255, 248, 236, 231, 229, 239, 243, 244, 244, 246, 251, 254, 252, 253, 253, 32.32338 + 254, 253, 255, 254, 254, 255, 252, 253, 244, 232, 227, 231, 225, 216, 217, 224, 32.32339 + 226, 220, 214, 217, 218, 215, 216, 218, 218, 217, 218, 220, 223, 224, 229, 231, 32.32340 + 236, 239, 244, 246, 244, 241, 237, 234, 230, 224, 220, 216, 215, 214, 211, 209, 32.32341 + 206, 205, 203, 198, 189, 182, 179, 172, 162, 155, 146, 140, 133, 131, 123, 119, 32.32342 + 113, 103, 89, 74, 55, 45, 36, 42, 65, 117, 124, 128, 109, 121, 102, 44, 32.32343 + 255, 17, 16, 17, 20, 24, 46, 85, 116, 132, 148, 161, 171, 183, 190, 190, 32.32344 + 194, 200, 205, 210, 210, 208, 221, 226, 232, 232, 229, 228, 231, 236, 237, 241, 32.32345 + 244, 244, 242, 242, 245, 248, 251, 251, 250, 250, 250, 251, 252, 251, 250, 255, 32.32346 + 253, 232, 214, 216, 229, 237, 241, 248, 250, 244, 238, 235, 237, 238, 240, 244, 32.32347 + 248, 248, 251, 255, 255, 253, 253, 252, 252, 250, 250, 251, 252, 254, 253, 255, 32.32348 + 249, 232, 227, 230, 230, 223, 220, 228, 228, 217, 214, 221, 220, 212, 218, 217, 32.32349 + 216, 214, 216, 218, 220, 220, 224, 223, 226, 231, 237, 239, 243, 241, 234, 231, 32.32350 + 227, 222, 217, 214, 213, 212, 207, 204, 203, 205, 204, 201, 192, 186, 177, 170, 32.32351 + 160, 152, 143, 136, 130, 126, 122, 119, 115, 107, 96, 81, 64, 53, 48, 37, 32.32352 + 62, 133, 144, 130, 91, 102, 95, 39, 255, 20, 25, 13, 18, 25, 42, 77, 32.32353 + 117, 139, 148, 162, 173, 180, 188, 191, 197, 200, 202, 206, 212, 214, 226, 223, 32.32354 + 224, 226, 231, 235, 236, 236, 239, 241, 242, 244, 246, 247, 249, 249, 249, 250, 32.32355 + 251, 251, 250, 250, 252, 253, 255, 255, 255, 247, 235, 223, 214, 210, 227, 233, 32.32356 + 239, 238, 234, 232, 237, 240, 247, 244, 243, 245, 251, 255, 255, 255, 255, 255, 32.32357 + 255, 255, 255, 254, 254, 255, 254, 254, 247, 240, 236, 238, 236, 234, 230, 224, 32.32358 + 218, 217, 221, 222, 220, 218, 218, 216, 214, 212, 214, 217, 219, 218, 220, 218, 32.32359 + 219, 222, 227, 229, 232, 230, 232, 232, 231, 227, 222, 216, 211, 206, 205, 203, 32.32360 + 200, 199, 196, 194, 192, 191, 178, 169, 158, 147, 138, 131, 126, 121, 121, 122, 32.32361 + 120, 109, 98, 86, 70, 56, 43, 36, 59, 108, 139, 131, 109, 98, 76, 37, 32.32362 + 255, 19, 22, 17, 28, 33, 37, 73, 112, 137, 147, 158, 171, 179, 184, 189, 32.32363 + 196, 200, 203, 208, 214, 217, 225, 224, 225, 228, 234, 238, 240, 241, 240, 241, 32.32364 + 243, 245, 247, 248, 250, 250, 250, 251, 251, 250, 249, 250, 253, 255, 255, 255, 32.32365 + 253, 247, 238, 227, 221, 218, 205, 210, 218, 221, 225, 230, 240, 244, 237, 239, 32.32366 + 244, 248, 253, 255, 255, 255, 254, 254, 255, 255, 255, 255, 255, 255, 254, 254, 32.32367 + 251, 244, 242, 243, 242, 238, 232, 227, 222, 220, 222, 220, 218, 215, 216, 215, 32.32368 + 214, 214, 216, 215, 215, 214, 214, 212, 213, 214, 220, 221, 222, 221, 226, 226, 32.32369 + 227, 226, 223, 218, 215, 212, 205, 203, 201, 199, 197, 195, 189, 185, 182, 170, 32.32370 + 155, 141, 130, 123, 118, 116, 122, 125, 122, 114, 102, 91, 75, 61, 48, 32, 32.32371 + 41, 83, 123, 131, 117, 102, 65, 30, 255, 19, 21, 27, 46, 45, 41, 74, 32.32372 + 115, 137, 147, 156, 166, 175, 182, 187, 195, 199, 203, 209, 216, 220, 223, 222, 32.32373 + 225, 229, 234, 238, 241, 242, 240, 242, 243, 245, 248, 250, 251, 252, 250, 251, 32.32374 + 250, 249, 249, 250, 254, 255, 255, 255, 252, 247, 239, 233, 229, 228, 211, 212, 32.32375 + 214, 217, 222, 231, 240, 243, 232, 238, 247, 252, 253, 254, 254, 253, 254, 254, 32.32376 + 255, 255, 255, 255, 255, 255, 254, 255, 253, 248, 247, 249, 245, 239, 237, 234, 32.32377 + 230, 227, 226, 222, 217, 212, 215, 215, 216, 217, 219, 218, 216, 214, 212, 209, 32.32378 + 209, 210, 214, 215, 215, 214, 218, 218, 221, 221, 222, 219, 218, 216, 207, 203, 32.32379 + 201, 199, 198, 193, 187, 181, 180, 165, 148, 131, 120, 115, 114, 114, 122, 126, 32.32380 + 125, 118, 108, 97, 83, 68, 55, 34, 33, 66, 113, 133, 121, 98, 46, 20, 32.32381 + 255, 177, 26, 44, 69, 59, 56, 84, 120, 141, 149, 156, 164, 174, 182, 187, 32.32382 + 194, 198, 202, 208, 215, 220, 221, 221, 225, 228, 231, 235, 237, 239, 241, 243, 32.32383 + 244, 246, 248, 250, 252, 252, 250, 250, 250, 249, 249, 251, 255, 255, 255, 255, 32.32384 + 251, 245, 239, 235, 234, 234, 228, 223, 220, 221, 226, 234, 241, 243, 237, 243, 32.32385 + 252, 255, 252, 249, 250, 251, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 32.32386 + 255, 251, 250, 250, 246, 238, 244, 241, 240, 236, 233, 225, 219, 214, 217, 216, 32.32387 + 216, 218, 221, 220, 219, 218, 213, 211, 210, 210, 213, 213, 212, 211, 209, 210, 32.32388 + 212, 212, 213, 212, 212, 210, 207, 203, 197, 195, 193, 192, 187, 180, 170, 159, 32.32389 + 141, 125, 116, 112, 113, 116, 122, 127, 126, 120, 111, 102, 88, 73, 53, 38, 32.32390 + 35, 57, 95, 115, 98, 70, 29, 12, 255, 255, 33, 62, 95, 78, 77, 96, 32.32391 + 121, 140, 151, 155, 163, 172, 183, 188, 194, 197, 199, 205, 213, 217, 222, 224, 32.32392 + 228, 230, 231, 232, 234, 236, 242, 244, 245, 246, 248, 249, 251, 251, 249, 249, 32.32393 + 250, 250, 250, 253, 255, 255, 255, 255, 250, 242, 237, 234, 233, 233, 225, 219, 32.32394 + 213, 217, 226, 236, 242, 245, 241, 247, 253, 254, 250, 249, 251, 253, 254, 254, 32.32395 + 254, 254, 254, 255, 255, 255, 255, 255, 255, 252, 253, 251, 246, 236, 246, 245, 32.32396 + 243, 240, 235, 226, 220, 215, 217, 214, 213, 213, 216, 219, 221, 221, 215, 212, 32.32397 + 211, 210, 213, 212, 210, 209, 205, 206, 206, 206, 206, 204, 204, 203, 205, 200, 32.32398 + 193, 190, 188, 188, 187, 183, 166, 155, 141, 126, 115, 108, 110, 112, 121, 126, 32.32399 + 126, 121, 114, 105, 93, 78, 51, 37, 31, 38, 58, 70, 55, 29, 16, 5, 32.32400 + 255, 255, 34, 71, 115, 103, 103, 107, 119, 135, 147, 154, 160, 170, 181, 187, 32.32401 + 192, 194, 197, 203, 211, 216, 225, 227, 232, 233, 233, 233, 234, 237, 243, 245, 32.32402 + 245, 246, 247, 248, 248, 249, 246, 248, 250, 252, 252, 254, 255, 255, 255, 255, 32.32403 + 247, 239, 234, 231, 230, 228, 222, 218, 216, 217, 225, 233, 237, 239, 239, 244, 32.32404 + 248, 250, 249, 250, 254, 255, 247, 246, 247, 250, 253, 255, 255, 255, 255, 255, 32.32405 + 255, 252, 255, 255, 248, 240, 243, 245, 244, 240, 234, 228, 222, 218, 219, 217, 32.32406 + 213, 212, 214, 217, 219, 219, 215, 211, 210, 210, 211, 211, 210, 208, 209, 208, 32.32407 + 207, 205, 202, 201, 200, 199, 200, 197, 193, 189, 184, 184, 185, 183, 167, 157, 32.32408 + 144, 128, 114, 105, 105, 106, 120, 125, 126, 122, 117, 109, 97, 81, 61, 44, 32.32409 + 30, 22, 26, 30, 23, 10, 10, 1, 255, 255, 180, 71, 131, 132, 136, 128, 32.32410 + 125, 133, 145, 152, 157, 165, 178, 183, 189, 191, 195, 202, 211, 216, 222, 226, 32.32411 + 232, 234, 233, 233, 235, 238, 245, 246, 246, 246, 246, 246, 246, 246, 244, 247, 32.32412 + 251, 254, 255, 255, 255, 255, 255, 254, 244, 236, 232, 230, 227, 224, 226, 223, 32.32413 + 223, 223, 227, 228, 229, 232, 239, 242, 244, 247, 249, 251, 253, 251, 242, 242, 32.32414 + 243, 246, 249, 252, 254, 255, 255, 254, 251, 249, 254, 255, 251, 242, 244, 244, 32.32415 + 245, 242, 237, 231, 228, 226, 227, 224, 221, 220, 220, 219, 218, 217, 217, 213, 32.32416 + 212, 211, 212, 212, 211, 209, 210, 209, 207, 203, 201, 199, 197, 196, 194, 196, 32.32417 + 196, 190, 183, 178, 179, 178, 166, 157, 142, 125, 110, 103, 104, 107, 119, 125, 32.32418 + 127, 123, 119, 113, 101, 84, 70, 48, 31, 21, 18, 15, 14, 11, 8, 0, 32.32419 + 255, 255, 255, 60, 135, 150, 165, 151, 137, 140, 148, 151, 150, 157, 169, 177, 32.32420 + 181, 186, 192, 200, 209, 216, 215, 221, 226, 229, 229, 230, 232, 237, 244, 245, 32.32421 + 245, 244, 244, 244, 244, 244, 242, 245, 250, 254, 255, 255, 255, 255, 255, 248, 32.32422 + 238, 231, 228, 227, 224, 220, 219, 219, 221, 225, 227, 229, 230, 234, 240, 242, 32.32423 + 243, 247, 249, 249, 247, 244, 247, 246, 247, 247, 251, 252, 254, 255, 254, 251, 32.32424 + 246, 245, 251, 255, 252, 243, 247, 248, 249, 246, 242, 238, 236, 235, 235, 234, 32.32425 + 232, 231, 228, 225, 221, 217, 220, 218, 215, 215, 215, 216, 212, 211, 210, 206, 32.32426 + 204, 201, 199, 196, 195, 193, 189, 193, 197, 192, 182, 174, 172, 172, 163, 153, 32.32427 + 140, 123, 111, 105, 108, 113, 120, 126, 128, 125, 122, 117, 105, 90, 73, 48, 32.32428 + 34, 26, 20, 14, 11, 10, 8, 1, 255, 255, 255, 183, 105, 164, 170, 192, 32.32429 + 158, 156, 135, 143, 151, 145, 162, 167, 173, 177, 185, 191, 199, 205, 213, 214, 32.32430 + 219, 224, 227, 231, 233, 237, 232, 237, 242, 243, 241, 240, 241, 243, 243, 244, 32.32431 + 249, 250, 252, 251, 248, 245, 246, 237, 228, 220, 217, 217, 219, 220, 221, 229, 32.32432 + 227, 223, 224, 223, 225, 237, 245, 250, 255, 255, 255, 253, 252, 254, 253, 254, 32.32433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 252, 249, 235, 238, 32.32434 + 241, 244, 248, 247, 245, 240, 237, 238, 236, 232, 232, 233, 229, 223, 228, 228, 32.32435 + 227, 225, 220, 214, 213, 213, 211, 210, 208, 206, 205, 200, 195, 189, 185, 186, 32.32436 + 192, 196, 186, 171, 164, 165, 156, 149, 140, 127, 109, 99, 104, 114, 119, 125, 32.32437 + 130, 129, 124, 119, 110, 99, 85, 60, 35, 24, 17, 9, 6, 8, 7, 7, 32.32438 + 255, 255, 255, 255, 92, 165, 178, 200, 181, 169, 137, 141, 142, 149, 161, 167, 32.32439 + 172, 177, 183, 191, 197, 204, 209, 211, 216, 221, 225, 227, 231, 233, 233, 237, 32.32440 + 241, 240, 239, 237, 238, 240, 242, 245, 247, 250, 250, 249, 245, 243, 238, 231, 32.32441 + 223, 216, 214, 215, 219, 220, 223, 228, 225, 221, 225, 224, 225, 236, 246, 249, 32.32442 + 252, 255, 255, 255, 253, 251, 250, 249, 250, 251, 252, 253, 255, 255, 253, 255, 32.32443 + 255, 253, 252, 252, 250, 247, 241, 241, 243, 243, 246, 244, 241, 238, 237, 238, 32.32444 + 236, 233, 232, 234, 231, 225, 230, 230, 230, 227, 223, 218, 217, 217, 221, 219, 32.32445 + 216, 214, 209, 202, 192, 186, 184, 184, 190, 195, 187, 172, 160, 156, 148, 145, 32.32446 + 140, 131, 117, 109, 113, 125, 121, 127, 133, 130, 128, 123, 115, 105, 90, 66, 32.32447 + 39, 23, 15, 8, 3, 5, 7, 7, 255, 255, 255, 255, 75, 159, 182, 198, 32.32448 + 195, 174, 133, 138, 130, 150, 161, 167, 173, 178, 183, 190, 195, 201, 208, 212, 32.32449 + 216, 220, 223, 225, 228, 230, 234, 238, 239, 238, 237, 235, 234, 235, 242, 245, 32.32450 + 248, 251, 251, 250, 246, 244, 232, 226, 219, 214, 214, 216, 220, 221, 224, 227, 32.32451 + 223, 220, 227, 227, 226, 234, 249, 248, 248, 253, 255, 255, 253, 248, 246, 245, 32.32452 + 245, 243, 244, 247, 251, 249, 245, 249, 253, 252, 253, 255, 254, 250, 251, 249, 32.32453 + 248, 247, 246, 244, 240, 237, 232, 234, 234, 234, 235, 239, 237, 232, 229, 228, 32.32454 + 229, 226, 223, 220, 220, 220, 225, 224, 222, 219, 214, 206, 195, 187, 185, 185, 32.32455 + 189, 195, 190, 176, 159, 151, 141, 140, 139, 132, 118, 110, 116, 128, 118, 125, 32.32456 + 130, 128, 126, 121, 114, 103, 91, 68, 42, 24, 14, 8, 4, 5, 7, 90, 32.32457 + 255, 255, 255, 255, 188, 134, 181, 189, 195, 170, 132, 142, 121, 143, 156, 164, 32.32458 + 171, 176, 180, 183, 191, 197, 208, 212, 216, 217, 221, 226, 227, 227, 233, 235, 32.32459 + 235, 234, 234, 234, 234, 234, 242, 243, 247, 250, 251, 248, 244, 241, 228, 223, 32.32460 + 218, 214, 214, 216, 219, 220, 220, 225, 221, 222, 232, 234, 229, 233, 248, 246, 32.32461 + 248, 252, 254, 254, 253, 250, 245, 243, 240, 239, 240, 243, 246, 247, 244, 249, 32.32462 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 249, 244, 245, 32.32463 + 243, 241, 240, 243, 240, 234, 229, 229, 228, 226, 223, 220, 219, 220, 220, 220, 32.32464 + 221, 221, 218, 211, 200, 192, 188, 185, 187, 190, 190, 178, 164, 152, 139, 139, 32.32465 + 135, 126, 112, 102, 109, 122, 117, 123, 128, 129, 127, 122, 115, 105, 92, 72, 32.32466 + 46, 25, 14, 8, 4, 4, 7, 255, 255, 255, 255, 255, 255, 94, 178, 187, 32.32467 + 193, 171, 139, 153, 125, 136, 151, 160, 169, 174, 177, 180, 188, 193, 206, 212, 32.32468 + 216, 215, 218, 226, 227, 225, 227, 228, 228, 230, 231, 233, 233, 233, 239, 242, 32.32469 + 247, 249, 249, 245, 241, 237, 226, 220, 217, 214, 215, 215, 218, 217, 213, 222, 32.32470 + 222, 227, 238, 239, 231, 233, 241, 245, 249, 250, 250, 249, 253, 255, 246, 243, 32.32471 + 240, 240, 241, 244, 247, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 244, 242, 235, 227, 230, 231, 32.32473 + 232, 228, 224, 220, 219, 219, 218, 221, 221, 223, 220, 214, 204, 197, 188, 184, 32.32474 + 181, 180, 182, 177, 167, 156, 141, 137, 130, 120, 107, 100, 107, 119, 122, 128, 32.32475 + 133, 134, 133, 129, 122, 111, 93, 76, 50, 27, 13, 8, 5, 4, 7, 255, 32.32476 + 255, 255, 255, 255, 255, 190, 160, 188, 192, 175, 147, 163, 145, 141, 147, 155, 32.32477 + 167, 172, 174, 178, 185, 191, 200, 209, 213, 211, 215, 224, 225, 223, 222, 223, 32.32478 + 222, 225, 228, 232, 233, 233, 237, 239, 244, 246, 244, 240, 234, 229, 222, 218, 32.32479 + 216, 214, 215, 216, 218, 217, 211, 223, 225, 232, 242, 240, 235, 236, 239, 242, 32.32480 + 246, 248, 248, 249, 254, 255, 254, 254, 253, 253, 253, 255, 255, 255, 255, 255, 32.32481 + 255, 255, 255, 255, 255, 248, 247, 248, 247, 251, 253, 254, 253, 253, 255, 255, 32.32482 + 253, 247, 246, 245, 240, 232, 232, 231, 232, 229, 224, 221, 220, 221, 226, 226, 32.32483 + 226, 224, 221, 214, 206, 198, 188, 182, 177, 172, 171, 171, 165, 155, 140, 132, 32.32484 + 125, 117, 109, 106, 111, 120, 120, 127, 132, 131, 131, 129, 122, 112, 94, 79, 32.32485 + 54, 28, 13, 8, 5, 3, 7, 255, 255, 255, 255, 255, 255, 255, 115, 175, 32.32486 + 185, 175, 146, 163, 169, 159, 140, 150, 162, 169, 171, 175, 179, 186, 193, 203, 32.32487 + 207, 205, 209, 219, 223, 219, 220, 219, 217, 221, 226, 230, 230, 230, 235, 238, 32.32488 + 241, 242, 240, 235, 227, 222, 217, 215, 213, 215, 217, 219, 221, 220, 216, 228, 32.32489 + 230, 233, 239, 237, 236, 241, 238, 239, 241, 245, 248, 252, 255, 255, 255, 255, 32.32490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 252, 246, 238, 238, 237, 32.32491 + 238, 240, 243, 242, 240, 239, 237, 240, 240, 238, 240, 243, 240, 235, 228, 227, 32.32492 + 228, 226, 222, 220, 219, 220, 227, 226, 224, 221, 217, 211, 204, 196, 190, 187, 32.32493 + 181, 172, 168, 168, 164, 154, 137, 128, 122, 119, 115, 112, 111, 112, 113, 122, 32.32494 + 128, 127, 127, 124, 118, 109, 95, 82, 56, 29, 12, 9, 5, 3, 7, 255, 32.32495 + 255, 255, 255, 255, 255, 255, 193, 155, 172, 169, 138, 157, 186, 178, 134, 144, 32.32496 + 157, 164, 167, 168, 174, 181, 187, 198, 202, 199, 206, 217, 220, 216, 220, 219, 32.32497 + 217, 218, 224, 228, 229, 227, 234, 236, 238, 240, 237, 230, 223, 218, 214, 212, 32.32498 + 212, 213, 217, 220, 224, 223, 222, 233, 233, 232, 237, 235, 236, 244, 241, 237, 32.32499 + 238, 242, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32500 + 252, 246, 246, 248, 243, 234, 234, 234, 234, 237, 238, 235, 230, 226, 235, 236, 32.32501 + 235, 231, 232, 232, 229, 223, 221, 221, 222, 221, 220, 216, 217, 218, 223, 222, 32.32502 + 220, 218, 214, 209, 202, 195, 195, 193, 187, 175, 169, 167, 162, 154, 134, 126, 32.32503 + 119, 120, 118, 112, 105, 103, 115, 121, 128, 129, 129, 126, 120, 109, 96, 83, 32.32504 + 58, 29, 12, 9, 6, 3, 7, 255, 255, 255, 255, 255, 255, 255, 255, 106, 32.32505 + 169, 173, 147, 158, 187, 194, 175, 144, 134, 154, 168, 165, 168, 182, 182, 190, 32.32506 + 198, 200, 200, 199, 203, 208, 217, 217, 214, 216, 221, 224, 226, 223, 230, 236, 32.32507 + 240, 238, 232, 226, 219, 210, 211, 210, 213, 217, 223, 225, 225, 222, 220, 226, 32.32508 + 233, 235, 235, 236, 241, 245, 232, 238, 250, 255, 255, 255, 255, 255, 255, 254, 32.32509 + 252, 255, 255, 255, 249, 242, 241, 247, 251, 248, 240, 234, 232, 235, 239, 241, 32.32510 + 242, 239, 235, 231, 231, 230, 232, 233, 235, 234, 233, 228, 218, 210, 206, 205, 32.32511 + 201, 196, 204, 221, 229, 227, 221, 224, 221, 211, 202, 198, 195, 189, 188, 185, 32.32512 + 183, 180, 175, 166, 157, 150, 135, 130, 122, 119, 118, 117, 113, 110, 119, 121, 32.32513 + 123, 124, 128, 130, 126, 114, 98, 80, 55, 31, 16, 9, 5, 6, 8, 255, 32.32514 + 255, 255, 255, 255, 255, 255, 255, 190, 132, 168, 145, 148, 184, 195, 189, 157, 32.32515 + 134, 140, 155, 162, 165, 171, 178, 184, 191, 193, 193, 195, 200, 206, 212, 213, 32.32516 + 212, 215, 219, 224, 224, 224, 225, 230, 233, 228, 223, 219, 214, 209, 208, 207, 32.32517 + 208, 212, 218, 222, 223, 224, 231, 235, 238, 239, 237, 236, 241, 244, 246, 249, 32.32518 + 252, 255, 253, 253, 251, 252, 241, 240, 239, 240, 243, 244, 239, 238, 241, 245, 32.32519 + 244, 239, 232, 227, 227, 229, 245, 244, 241, 234, 229, 225, 226, 227, 226, 221, 32.32520 + 221, 223, 217, 207, 202, 202, 188, 186, 190, 198, 211, 223, 233, 238, 244, 238, 32.32521 + 225, 209, 201, 196, 189, 179, 189, 186, 185, 181, 175, 164, 154, 147, 135, 129, 32.32522 + 123, 118, 117, 114, 111, 108, 114, 117, 121, 123, 127, 131, 125, 113, 101, 84, 32.32523 + 58, 34, 17, 9, 5, 5, 8, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32524 + 90, 156, 152, 145, 176, 196, 201, 175, 143, 129, 137, 154, 161, 160, 172, 176, 32.32525 + 182, 185, 187, 190, 195, 202, 206, 208, 209, 214, 217, 221, 222, 221, 226, 230, 32.32526 + 229, 223, 218, 217, 215, 212, 206, 206, 207, 211, 217, 223, 226, 229, 233, 236, 32.32527 + 237, 234, 233, 233, 239, 244, 255, 255, 255, 252, 250, 247, 242, 240, 246, 245, 32.32528 + 243, 241, 239, 237, 235, 237, 239, 241, 240, 236, 232, 229, 227, 224, 229, 229, 32.32529 + 229, 225, 223, 220, 221, 222, 220, 214, 213, 214, 205, 195, 193, 198, 191, 184, 32.32530 + 185, 194, 206, 214, 227, 237, 255, 248, 226, 208, 203, 201, 192, 178, 187, 186, 32.32531 + 187, 182, 176, 164, 153, 146, 132, 128, 123, 119, 118, 115, 112, 107, 111, 115, 32.32532 + 119, 123, 128, 130, 125, 114, 104, 87, 61, 36, 19, 10, 4, 4, 255, 255, 32.32533 + 255, 255, 255, 255, 255, 255, 255, 255, 188, 124, 158, 151, 160, 186, 203, 192, 32.32534 + 164, 130, 122, 139, 154, 155, 162, 167, 176, 181, 186, 189, 193, 198, 203, 206, 32.32535 + 208, 210, 215, 216, 217, 217, 223, 226, 226, 220, 215, 214, 213, 209, 206, 207, 32.32536 + 211, 216, 221, 227, 232, 232, 232, 233, 233, 233, 234, 239, 245, 250, 255, 255, 32.32537 + 249, 248, 248, 247, 242, 239, 241, 241, 239, 235, 233, 231, 232, 236, 246, 246, 32.32538 + 244, 241, 236, 231, 224, 220, 218, 222, 226, 231, 232, 232, 230, 228, 226, 226, 32.32539 + 224, 217, 213, 211, 208, 204, 216, 208, 196, 187, 189, 200, 212, 217, 250, 237, 32.32540 + 218, 202, 201, 200, 195, 183, 184, 185, 188, 184, 175, 163, 152, 146, 129, 125, 32.32541 + 119, 118, 120, 118, 114, 111, 116, 118, 119, 119, 126, 128, 126, 116, 104, 87, 32.32542 + 61, 37, 20, 11, 5, 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32543 + 255, 74, 149, 156, 146, 175, 190, 193, 178, 140, 117, 123, 138, 148, 151, 157, 32.32544 + 168, 178, 186, 188, 191, 193, 202, 204, 207, 207, 209, 210, 211, 212, 214, 219, 32.32545 + 221, 215, 211, 208, 206, 199, 205, 210, 216, 224, 228, 231, 233, 233, 237, 237, 32.32546 + 237, 239, 241, 246, 253, 255, 255, 250, 246, 246, 251, 254, 251, 247, 242, 242, 32.32547 + 243, 241, 240, 241, 245, 248, 249, 245, 239, 233, 230, 229, 228, 227, 248, 249, 32.32548 + 248, 248, 247, 246, 245, 244, 238, 247, 242, 229, 229, 239, 234, 217, 222, 225, 32.32549 + 211, 189, 184, 196, 204, 198, 216, 212, 202, 190, 188, 189, 190, 185, 186, 188, 32.32550 + 189, 185, 173, 160, 148, 142, 126, 123, 118, 118, 121, 121, 119, 117, 121, 120, 32.32551 + 116, 113, 118, 122, 122, 115, 100, 84, 60, 36, 20, 11, 5, 5, 255, 255, 32.32552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 159, 152, 171, 174, 179, 32.32553 + 175, 149, 122, 112, 123, 137, 142, 147, 159, 171, 179, 184, 186, 189, 199, 202, 32.32554 + 204, 204, 205, 206, 210, 213, 215, 219, 219, 214, 209, 205, 202, 198, 204, 210, 32.32555 + 219, 226, 229, 230, 230, 231, 239, 239, 240, 241, 242, 245, 247, 250, 247, 245, 32.32556 + 244, 246, 251, 253, 251, 247, 246, 244, 244, 241, 241, 241, 242, 243, 231, 228, 32.32557 + 221, 220, 224, 233, 245, 253, 255, 255, 255, 253, 247, 246, 247, 249, 247, 255, 32.32558 + 254, 240, 240, 251, 245, 228, 210, 217, 215, 203, 200, 204, 203, 193, 196, 198, 32.32559 + 195, 187, 182, 184, 189, 188, 194, 195, 193, 184, 170, 155, 142, 137, 128, 124, 32.32560 + 118, 118, 120, 123, 123, 122, 121, 118, 112, 106, 110, 116, 118, 112, 100, 84, 32.32561 + 60, 37, 21, 12, 6, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32562 + 255, 255, 88, 145, 166, 167, 169, 162, 160, 155, 134, 113, 113, 125, 135, 139, 32.32563 + 147, 157, 168, 177, 182, 186, 195, 197, 198, 198, 200, 204, 211, 217, 220, 224, 32.32564 + 221, 213, 208, 205, 204, 201, 208, 213, 221, 226, 227, 228, 229, 231, 236, 237, 32.32565 + 239, 241, 242, 242, 239, 239, 240, 241, 241, 242, 244, 241, 236, 231, 231, 228, 32.32566 + 227, 226, 229, 230, 229, 225, 226, 228, 232, 234, 237, 243, 251, 255, 255, 255, 32.32567 + 251, 246, 243, 244, 244, 246, 253, 255, 254, 247, 239, 235, 237, 241, 210, 207, 32.32568 + 212, 217, 214, 203, 198, 201, 193, 196, 193, 186, 183, 187, 194, 194, 194, 195, 32.32569 + 194, 183, 169, 153, 143, 137, 134, 128, 120, 118, 119, 123, 124, 124, 119, 117, 32.32570 + 112, 107, 111, 117, 119, 113, 103, 87, 63, 40, 23, 13, 5, 88, 255, 255, 32.32571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 118, 164, 151, 170, 149, 32.32572 + 145, 155, 148, 124, 112, 121, 132, 134, 139, 146, 157, 168, 175, 182, 189, 193, 32.32573 + 194, 194, 195, 202, 211, 218, 219, 220, 216, 206, 199, 198, 199, 198, 212, 218, 32.32574 + 222, 223, 223, 224, 227, 232, 233, 237, 240, 244, 248, 247, 243, 241, 238, 241, 32.32575 + 241, 239, 234, 225, 217, 210, 220, 218, 219, 227, 238, 245, 248, 244, 250, 255, 32.32576 + 255, 255, 255, 252, 244, 243, 239, 239, 243, 247, 253, 255, 251, 251, 255, 248, 32.32577 + 247, 249, 233, 214, 224, 248, 225, 207, 208, 223, 217, 190, 186, 202, 190, 188, 32.32578 + 184, 178, 178, 187, 193, 195, 189, 189, 190, 181, 168, 154, 146, 144, 137, 130, 32.32579 + 121, 116, 119, 122, 123, 123, 118, 117, 114, 111, 116, 121, 121, 115, 107, 89, 32.32580 + 66, 42, 24, 13, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32581 + 255, 255, 255, 73, 123, 159, 155, 155, 153, 168, 172, 134, 110, 128, 125, 135, 32.32582 + 137, 133, 142, 161, 168, 165, 175, 185, 195, 196, 192, 193, 200, 208, 218, 215, 32.32583 + 211, 206, 201, 196, 197, 201, 210, 215, 219, 222, 222, 223, 224, 224, 227, 231, 32.32584 + 234, 234, 236, 238, 239, 241, 237, 234, 228, 229, 227, 224, 227, 233, 240, 255, 32.32585 + 255, 254, 238, 244, 254, 254, 255, 255, 255, 255, 252, 249, 248, 248, 242, 251, 32.32586 + 251, 245, 250, 255, 255, 244, 242, 239, 242, 244, 234, 223, 225, 234, 214, 212, 32.32587 + 212, 213, 207, 198, 194, 193, 180, 177, 175, 174, 179, 183, 187, 188, 186, 185, 32.32588 + 179, 170, 157, 146, 142, 141, 133, 127, 124, 121, 122, 123, 124, 124, 117, 115, 32.32589 + 110, 107, 113, 118, 115, 107, 96, 86, 68, 44, 23, 15, 12, 255, 255, 255, 32.32590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 85, 128, 145, 143, 32.32591 + 147, 168, 181, 157, 122, 109, 121, 130, 134, 133, 136, 149, 157, 160, 168, 178, 32.32592 + 185, 188, 187, 190, 201, 210, 215, 212, 208, 204, 198, 198, 201, 205, 210, 215, 32.32593 + 221, 223, 222, 222, 223, 226, 233, 229, 221, 213, 214, 219, 226, 233, 233, 231, 32.32594 + 231, 235, 238, 237, 241, 247, 255, 255, 255, 255, 249, 244, 243, 238, 242, 244, 32.32595 + 242, 241, 240, 240, 242, 246, 249, 251, 248, 248, 249, 249, 250, 246, 247, 242, 32.32596 + 243, 240, 228, 213, 214, 221, 209, 203, 200, 202, 202, 197, 189, 185, 173, 170, 32.32597 + 168, 170, 175, 180, 184, 183, 185, 183, 181, 175, 167, 155, 147, 142, 131, 127, 32.32598 + 123, 122, 123, 124, 125, 124, 121, 117, 111, 108, 113, 118, 116, 107, 86, 79, 32.32599 + 61, 38, 18, 10, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32600 + 255, 255, 255, 255, 186, 91, 119, 121, 132, 148, 159, 161, 148, 122, 118, 124, 32.32601 + 129, 131, 132, 136, 144, 153, 162, 171, 177, 181, 182, 187, 197, 205, 210, 209, 32.32602 + 206, 201, 199, 201, 206, 210, 209, 216, 223, 224, 222, 220, 224, 228, 227, 218, 32.32603 + 207, 199, 201, 209, 221, 231, 229, 229, 230, 234, 237, 237, 240, 244, 240, 246, 32.32604 + 252, 250, 249, 250, 250, 245, 241, 240, 239, 238, 236, 238, 242, 246, 249, 245, 32.32605 + 243, 246, 245, 240, 246, 255, 254, 246, 243, 238, 225, 209, 205, 211, 204, 195, 32.32606 + 191, 195, 199, 194, 186, 181, 170, 169, 168, 172, 177, 181, 184, 183, 183, 182, 32.32607 + 182, 179, 173, 161, 148, 138, 131, 127, 124, 123, 124, 125, 125, 125, 124, 120, 32.32608 + 113, 108, 110, 115, 115, 107, 86, 78, 62, 40, 20, 12, 255, 255, 255, 255, 32.32609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 105, 122, 32.32610 + 149, 150, 137, 149, 151, 128, 116, 119, 124, 133, 133, 131, 135, 143, 156, 163, 32.32611 + 170, 174, 179, 183, 190, 195, 209, 209, 206, 198, 196, 201, 207, 211, 209, 215, 32.32612 + 223, 223, 219, 217, 221, 226, 217, 208, 200, 200, 206, 213, 220, 227, 228, 230, 32.32613 + 232, 234, 236, 236, 236, 237, 248, 246, 246, 249, 250, 250, 251, 252, 251, 248, 32.32614 + 248, 245, 242, 240, 243, 245, 242, 245, 244, 242, 239, 243, 255, 255, 255, 247, 32.32615 + 238, 231, 218, 206, 206, 212, 204, 197, 195, 199, 199, 190, 183, 178, 172, 171, 32.32616 + 174, 177, 183, 186, 187, 185, 184, 181, 180, 178, 172, 159, 144, 132, 132, 128, 32.32617 + 126, 125, 126, 126, 126, 125, 126, 121, 113, 107, 109, 113, 113, 103, 86, 78, 32.32618 + 62, 39, 24, 16, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32619 + 255, 255, 255, 255, 255, 76, 54, 91, 135, 145, 134, 144, 149, 128, 109, 113, 32.32620 + 121, 132, 137, 134, 133, 136, 146, 152, 162, 170, 177, 181, 186, 187, 206, 207, 32.32621 + 203, 196, 193, 201, 207, 210, 213, 217, 223, 223, 219, 218, 222, 227, 219, 206, 32.32622 + 198, 202, 209, 211, 214, 220, 229, 235, 239, 243, 246, 250, 253, 255, 255, 255, 32.32623 + 250, 250, 251, 251, 255, 255, 251, 249, 248, 246, 242, 239, 235, 233, 237, 253, 32.32624 + 253, 236, 232, 250, 255, 255, 252, 242, 227, 220, 211, 202, 206, 212, 203, 200, 32.32625 + 201, 201, 196, 183, 175, 173, 173, 173, 176, 179, 185, 188, 188, 185, 188, 183, 32.32626 + 179, 175, 167, 156, 140, 129, 132, 130, 128, 128, 129, 129, 127, 126, 125, 120, 32.32627 + 112, 106, 107, 111, 108, 100, 80, 70, 54, 33, 19, 10, 255, 255, 255, 255, 32.32628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 18, 34, 32.32629 + 63, 79, 87, 101, 104, 93, 86, 99, 115, 128, 133, 135, 135, 134, 134, 139, 32.32630 + 147, 159, 170, 178, 183, 184, 201, 205, 201, 192, 192, 200, 207, 206, 216, 218, 32.32631 + 221, 223, 223, 225, 227, 231, 215, 199, 189, 196, 207, 212, 218, 227, 238, 245, 32.32632 + 246, 247, 250, 255, 255, 255, 238, 232, 230, 235, 244, 250, 255, 255, 255, 252, 32.32633 + 248, 248, 249, 248, 244, 237, 250, 255, 255, 244, 237, 255, 255, 255, 246, 234, 32.32634 + 218, 213, 206, 200, 203, 207, 201, 198, 199, 198, 189, 177, 170, 171, 174, 175, 32.32635 + 176, 181, 184, 187, 187, 186, 192, 188, 182, 175, 165, 153, 139, 131, 135, 131, 32.32636 + 130, 129, 130, 130, 128, 126, 122, 119, 112, 107, 108, 110, 106, 96, 77, 67, 32.32637 + 48, 27, 13, 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32638 + 255, 255, 255, 255, 255, 255, 177, 23, 20, 21, 30, 28, 26, 32, 50, 80, 32.32639 + 110, 122, 124, 132, 136, 136, 128, 131, 136, 147, 160, 171, 177, 179, 190, 197, 32.32640 + 198, 190, 191, 201, 208, 206, 214, 214, 215, 219, 226, 231, 234, 234, 215, 196, 32.32641 + 188, 199, 213, 220, 226, 236, 246, 252, 249, 243, 244, 251, 254, 251, 237, 232, 32.32642 + 230, 234, 245, 249, 243, 238, 255, 255, 253, 252, 255, 255, 255, 249, 255, 255, 32.32643 + 255, 252, 245, 253, 255, 252, 238, 226, 215, 213, 210, 204, 203, 205, 199, 192, 32.32644 + 186, 185, 181, 176, 174, 176, 179, 179, 179, 182, 185, 187, 189, 187, 187, 187, 32.32645 + 184, 177, 165, 152, 141, 133, 135, 134, 133, 133, 132, 131, 129, 127, 121, 118, 32.32646 + 112, 108, 110, 111, 105, 95, 79, 66, 45, 25, 12, 255, 255, 255, 255, 255, 32.32647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 32.32648 + 18, 23, 32, 16, 15, 33, 22, 65, 104, 114, 116, 125, 136, 139, 131, 129, 32.32649 + 129, 136, 150, 162, 171, 174, 183, 193, 195, 188, 191, 202, 209, 206, 209, 207, 32.32650 + 208, 216, 227, 235, 237, 236, 225, 208, 200, 212, 225, 226, 222, 229, 242, 248, 32.32651 + 244, 238, 239, 249, 254, 250, 221, 220, 222, 234, 252, 255, 246, 230, 255, 255, 32.32652 + 249, 246, 253, 255, 255, 250, 255, 255, 255, 252, 244, 244, 244, 245, 233, 221, 32.32653 + 214, 217, 218, 211, 207, 208, 200, 187, 175, 174, 179, 180, 181, 183, 184, 184, 32.32654 + 184, 185, 190, 191, 191, 191, 181, 183, 186, 179, 165, 150, 140, 134, 137, 134, 32.32655 + 133, 134, 134, 132, 129, 127, 120, 118, 113, 110, 112, 113, 106, 94, 78, 65, 32.32656 + 42, 21, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32657 + 255, 255, 255, 255, 255, 255, 255, 174, 15, 17, 18, 20, 22, 22, 29, 38, 32.32658 + 79, 113, 115, 122, 138, 136, 138, 135, 127, 120, 129, 144, 157, 162, 173, 186, 32.32659 + 193, 187, 188, 201, 210, 209, 206, 210, 211, 208, 217, 232, 234, 225, 215, 216, 32.32660 + 209, 201, 205, 217, 218, 215, 255, 245, 234, 233, 238, 242, 244, 242, 222, 220, 32.32661 + 243, 253, 250, 255, 255, 228, 255, 255, 249, 242, 246, 253, 255, 254, 255, 255, 32.32662 + 255, 255, 250, 245, 248, 250, 236, 228, 220, 215, 213, 212, 206, 201, 178, 173, 32.32663 + 171, 174, 179, 182, 181, 180, 192, 190, 189, 189, 192, 193, 193, 192, 190, 188, 32.32664 + 185, 178, 169, 159, 149, 143, 139, 137, 135, 134, 136, 137, 135, 134, 124, 121, 32.32665 + 119, 117, 111, 104, 99, 95, 82, 61, 38, 22, 255, 255, 255, 255, 255, 255, 32.32666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32667 + 174, 15, 16, 17, 19, 20, 20, 32, 63, 95, 111, 123, 134, 138, 135, 134, 32.32668 + 129, 122, 126, 138, 149, 156, 163, 177, 185, 184, 188, 201, 208, 208, 200, 205, 32.32669 + 203, 202, 210, 225, 227, 221, 210, 213, 207, 199, 206, 217, 218, 214, 238, 234, 32.32670 + 227, 227, 230, 236, 245, 255, 228, 218, 241, 255, 249, 255, 255, 239, 255, 253, 32.32671 + 246, 242, 245, 250, 253, 255, 254, 255, 252, 248, 246, 249, 255, 255, 240, 227, 32.32672 + 220, 218, 217, 207, 190, 174, 166, 166, 171, 178, 183, 185, 184, 183, 191, 192, 32.32673 + 188, 190, 191, 193, 192, 190, 184, 183, 181, 177, 171, 161, 153, 147, 146, 141, 32.32674 + 138, 135, 134, 132, 128, 126, 122, 120, 118, 115, 110, 104, 97, 91, 74, 54, 32.32675 + 31, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 12, 13, 14, 17, 19, 18, 28, 32.32677 + 42, 70, 103, 120, 126, 136, 132, 135, 133, 125, 124, 131, 139, 143, 152, 168, 32.32678 + 179, 182, 187, 197, 204, 203, 196, 199, 197, 195, 201, 214, 216, 211, 205, 206, 32.32679 + 204, 199, 203, 212, 212, 207, 217, 219, 219, 221, 222, 229, 247, 255, 246, 229, 32.32680 + 246, 255, 255, 247, 255, 255, 241, 239, 242, 243, 243, 246, 251, 254, 255, 255, 32.32681 + 255, 255, 252, 249, 247, 241, 228, 224, 226, 223, 211, 192, 170, 153, 159, 167, 32.32682 + 178, 189, 193, 194, 192, 191, 194, 195, 194, 193, 194, 195, 192, 190, 182, 181, 32.32683 + 181, 177, 172, 162, 154, 147, 148, 145, 138, 135, 133, 130, 125, 123, 120, 119, 32.32684 + 117, 114, 110, 102, 93, 84, 66, 47, 26, 255, 255, 255, 255, 255, 255, 255, 32.32685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32686 + 255, 174, 12, 14, 16, 18, 21, 30, 31, 50, 93, 115, 119, 130, 135, 140, 32.32687 + 141, 133, 125, 126, 129, 131, 146, 157, 169, 176, 184, 194, 199, 200, 197, 199, 32.32688 + 196, 191, 196, 203, 206, 203, 203, 204, 202, 198, 202, 205, 205, 201, 203, 205, 32.32689 + 208, 212, 212, 218, 232, 246, 255, 241, 250, 255, 251, 244, 255, 255, 237, 235, 32.32690 + 238, 243, 244, 246, 249, 250, 248, 248, 249, 251, 250, 246, 240, 232, 228, 226, 32.32691 + 218, 198, 174, 160, 160, 165, 173, 182, 194, 204, 206, 205, 203, 204, 202, 201, 32.32692 + 200, 200, 199, 198, 195, 192, 188, 186, 186, 182, 172, 162, 151, 144, 145, 142, 32.32693 + 139, 135, 135, 134, 131, 128, 119, 120, 117, 113, 108, 102, 92, 79, 61, 41, 32.32694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 13, 15, 19, 25, 31, 32.32696 + 26, 38, 81, 106, 115, 131, 137, 146, 146, 137, 128, 124, 124, 121, 135, 144, 32.32697 + 158, 169, 179, 190, 198, 200, 203, 205, 201, 196, 196, 199, 200, 197, 199, 201, 32.32698 + 201, 200, 204, 207, 207, 205, 200, 199, 200, 205, 207, 209, 214, 221, 246, 241, 32.32699 + 245, 246, 245, 249, 255, 255, 244, 237, 237, 240, 245, 249, 246, 245, 239, 237, 32.32700 + 237, 237, 239, 242, 243, 241, 221, 207, 184, 158, 146, 153, 175, 194, 196, 201, 32.32701 + 210, 214, 213, 212, 212, 214, 207, 206, 202, 202, 200, 199, 195, 192, 192, 190, 32.32702 + 189, 183, 174, 163, 152, 146, 147, 143, 140, 139, 137, 137, 134, 131, 120, 121, 32.32703 + 117, 111, 106, 103, 91, 75, 53, 35, 255, 255, 255, 255, 255, 255, 255, 255, 32.32704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32705 + 255, 255, 255, 13, 16, 19, 22, 29, 27, 34, 63, 93, 116, 133, 139, 146, 32.32706 + 147, 139, 131, 126, 122, 119, 122, 130, 142, 155, 172, 185, 196, 203, 207, 207, 32.32707 + 205, 201, 200, 197, 198, 197, 198, 199, 200, 203, 206, 208, 211, 212, 211, 206, 32.32708 + 204, 210, 213, 213, 212, 214, 226, 233, 233, 229, 237, 249, 252, 246, 246, 240, 32.32709 + 236, 238, 242, 244, 241, 238, 246, 247, 247, 243, 234, 223, 211, 202, 175, 164, 32.32710 + 157, 163, 179, 198, 208, 209, 212, 214, 216, 217, 217, 215, 216, 217, 210, 207, 32.32711 + 202, 199, 197, 195, 194, 190, 190, 189, 186, 182, 174, 167, 158, 154, 151, 148, 32.32712 + 143, 141, 137, 136, 132, 128, 121, 121, 115, 105, 103, 102, 89, 71, 47, 105, 32.32713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 20, 22, 27, 32.32715 + 33, 34, 43, 73, 111, 129, 136, 141, 142, 138, 133, 131, 125, 119, 119, 121, 32.32716 + 131, 143, 161, 175, 189, 197, 204, 205, 207, 205, 204, 199, 199, 199, 198, 198, 32.32717 + 197, 199, 200, 202, 205, 209, 215, 210, 208, 211, 214, 214, 215, 217, 214, 224, 32.32718 + 223, 220, 227, 231, 230, 233, 238, 240, 239, 239, 237, 236, 234, 233, 243, 241, 32.32719 + 236, 222, 202, 182, 167, 161, 159, 167, 183, 202, 221, 229, 225, 217, 221, 218, 32.32720 + 217, 219, 220, 221, 219, 217, 214, 209, 202, 198, 195, 194, 194, 190, 188, 186, 32.32721 + 183, 179, 173, 168, 163, 160, 153, 150, 144, 141, 136, 133, 129, 125, 119, 119, 32.32722 + 111, 99, 98, 97, 86, 67, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32724 + 255, 255, 255, 255, 255, 21, 25, 25, 36, 33, 25, 54, 98, 115, 130, 135, 32.32725 + 138, 135, 136, 137, 132, 125, 125, 123, 127, 137, 151, 164, 176, 186, 198, 199, 32.32726 + 203, 206, 203, 200, 197, 199, 199, 197, 194, 194, 192, 191, 194, 198, 202, 198, 32.32727 + 196, 198, 201, 204, 208, 215, 213, 223, 225, 223, 227, 220, 216, 229, 227, 235, 32.32728 + 239, 236, 230, 225, 225, 227, 218, 206, 185, 162, 146, 145, 155, 169, 202, 215, 32.32729 + 227, 229, 224, 221, 226, 233, 226, 223, 221, 223, 226, 226, 222, 219, 218, 213, 32.32730 + 205, 199, 197, 196, 196, 194, 189, 186, 184, 178, 173, 166, 162, 160, 150, 145, 32.32731 + 142, 137, 137, 133, 130, 128, 120, 118, 108, 95, 93, 93, 82, 61, 114, 255, 32.32732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 25, 25, 32.32734 + 30, 29, 22, 28, 60, 102, 124, 131, 135, 139, 139, 136, 134, 135, 132, 129, 32.32735 + 125, 124, 131, 145, 157, 169, 179, 186, 194, 200, 204, 204, 201, 200, 202, 199, 32.32736 + 196, 192, 193, 194, 194, 194, 195, 195, 193, 191, 187, 185, 182, 179, 191, 191, 32.32737 + 194, 197, 202, 203, 203, 203, 208, 205, 198, 191, 183, 178, 174, 173, 157, 157, 32.32738 + 160, 174, 194, 212, 226, 233, 244, 245, 244, 243, 242, 240, 239, 238, 231, 232, 32.32739 + 232, 228, 222, 218, 219, 222, 215, 212, 206, 201, 198, 196, 196, 196, 191, 187, 32.32740 + 179, 172, 175, 180, 175, 162, 149, 140, 135, 132, 131, 129, 128, 129, 128, 117, 32.32741 + 105, 99, 98, 88, 71, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32743 + 255, 255, 255, 255, 255, 255, 178, 25, 28, 27, 20, 19, 40, 72, 109, 124, 32.32744 + 134, 137, 139, 140, 141, 143, 138, 134, 130, 127, 130, 137, 147, 155, 168, 175, 32.32745 + 185, 194, 200, 204, 205, 205, 203, 201, 198, 197, 197, 199, 197, 197, 194, 193, 32.32746 + 191, 189, 185, 182, 179, 178, 163, 165, 168, 171, 176, 175, 174, 173, 161, 160, 32.32747 + 163, 164, 171, 176, 185, 187, 216, 218, 227, 235, 247, 250, 253, 251, 250, 251, 32.32748 + 250, 250, 250, 249, 249, 248, 237, 233, 229, 226, 226, 225, 222, 222, 218, 214, 32.32749 + 207, 201, 196, 193, 193, 193, 181, 179, 174, 169, 172, 174, 167, 154, 143, 136, 32.32750 + 131, 126, 125, 124, 124, 123, 124, 113, 103, 96, 92, 82, 126, 255, 255, 255, 32.32751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32753 + 24, 26, 20, 14, 24, 45, 84, 109, 127, 129, 130, 135, 137, 136, 136, 137, 32.32754 + 136, 131, 130, 131, 135, 142, 158, 165, 175, 187, 196, 203, 207, 208, 204, 203, 32.32755 + 200, 200, 201, 202, 202, 200, 198, 197, 195, 193, 190, 188, 187, 186, 184, 188, 32.32756 + 194, 201, 208, 211, 210, 208, 205, 205, 210, 215, 224, 234, 244, 248, 246, 250, 32.32757 + 255, 255, 255, 251, 246, 243, 253, 253, 253, 252, 252, 251, 249, 249, 236, 230, 32.32758 + 222, 220, 224, 225, 223, 219, 218, 214, 207, 200, 193, 189, 188, 187, 180, 178, 32.32759 + 176, 173, 176, 175, 168, 155, 147, 139, 133, 126, 124, 124, 124, 123, 116, 107, 32.32760 + 99, 92, 86, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32762 + 255, 255, 255, 255, 255, 255, 255, 255, 176, 25, 23, 18, 21, 31, 61, 93, 32.32763 + 119, 124, 125, 130, 132, 128, 132, 135, 138, 135, 130, 129, 131, 135, 149, 157, 32.32764 + 167, 177, 188, 196, 202, 204, 203, 202, 199, 201, 203, 204, 204, 203, 202, 202, 32.32765 + 202, 202, 202, 200, 200, 200, 211, 216, 223, 232, 238, 241, 241, 238, 234, 235, 32.32766 + 237, 239, 243, 247, 250, 251, 255, 255, 255, 255, 249, 244, 245, 247, 250, 250, 32.32767 + 250, 249, 248, 247, 245, 244, 236, 230, 224, 218, 217, 217, 217, 214, 214, 210, 32.32768 + 204, 198, 192, 187, 184, 182, 184, 181, 178, 176, 177, 176, 170, 160, 150, 145, 32.32769 + 137, 129, 125, 126, 124, 120, 107, 101, 93, 87, 76, 255, 255, 255, 255, 255, 32.32770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32772 + 255, 178, 24, 22, 22, 28, 44, 75, 104, 119, 126, 133, 132, 128, 125, 129, 32.32773 + 133, 135, 133, 133, 133, 135, 140, 146, 155, 166, 178, 188, 195, 200, 201, 201, 32.32774 + 200, 202, 204, 205, 206, 205, 204, 203, 206, 208, 212, 212, 214, 215, 224, 226, 32.32775 + 231, 236, 238, 238, 235, 232, 242, 244, 248, 252, 254, 255, 255, 254, 255, 255, 32.32776 + 255, 253, 246, 245, 250, 255, 250, 248, 248, 247, 246, 244, 243, 242, 240, 237, 32.32777 + 231, 222, 214, 209, 210, 211, 205, 203, 201, 198, 194, 188, 185, 181, 183, 178, 32.32778 + 172, 170, 169, 167, 162, 159, 147, 145, 136, 127, 122, 122, 119, 111, 100, 96, 32.32779 + 87, 80, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 23, 23, 26, 31, 51, 32.32782 + 78, 102, 119, 127, 129, 128, 121, 124, 128, 132, 134, 136, 136, 136, 128, 132, 32.32783 + 143, 155, 168, 180, 190, 197, 199, 201, 202, 204, 206, 208, 209, 208, 203, 205, 32.32784 + 207, 211, 216, 219, 221, 223, 229, 233, 237, 241, 245, 246, 244, 241, 233, 236, 32.32785 + 243, 245, 249, 248, 249, 246, 249, 251, 255, 252, 249, 245, 249, 251, 253, 250, 32.32786 + 250, 248, 246, 244, 243, 241, 244, 242, 238, 228, 218, 209, 209, 208, 198, 196, 32.32787 + 198, 198, 195, 191, 186, 181, 181, 174, 167, 166, 163, 159, 155, 155, 148, 149, 32.32788 + 142, 129, 124, 122, 117, 105, 96, 90, 81, 130, 255, 255, 255, 255, 255, 255, 32.32789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32791 + 255, 255, 255, 178, 24, 26, 31, 34, 51, 81, 105, 113, 117, 121, 123, 122, 32.32792 + 121, 126, 132, 136, 136, 133, 124, 126, 136, 147, 159, 171, 181, 188, 196, 197, 32.32793 + 200, 203, 206, 208, 209, 207, 207, 209, 211, 215, 220, 222, 225, 227, 227, 229, 32.32794 + 235, 240, 247, 250, 252, 251, 251, 251, 253, 253, 254, 254, 255, 254, 254, 255, 32.32795 + 255, 255, 253, 250, 252, 251, 250, 246, 245, 242, 240, 237, 238, 235, 240, 238, 32.32796 + 234, 226, 219, 214, 209, 205, 192, 193, 197, 200, 198, 193, 186, 179, 179, 172, 32.32797 + 166, 167, 163, 153, 149, 151, 149, 151, 145, 132, 124, 124, 114, 101, 91, 84, 32.32798 + 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 26, 45, 34, 32.32801 + 40, 70, 98, 105, 109, 117, 124, 121, 118, 122, 130, 135, 133, 128, 125, 127, 32.32802 + 133, 143, 152, 162, 171, 178, 190, 192, 194, 198, 203, 204, 204, 204, 212, 214, 32.32803 + 216, 219, 223, 226, 228, 231, 236, 237, 240, 244, 250, 251, 251, 250, 249, 249, 32.32804 + 246, 245, 246, 248, 251, 253, 251, 249, 246, 242, 240, 242, 246, 246, 241, 239, 32.32805 + 238, 236, 233, 229, 228, 226, 236, 230, 225, 221, 219, 216, 210, 202, 190, 192, 32.32806 + 198, 202, 199, 193, 183, 176, 172, 167, 164, 165, 158, 148, 142, 142, 143, 146, 32.32807 + 141, 127, 120, 119, 107, 90, 87, 79, 255, 255, 255, 255, 255, 255, 255, 255, 32.32808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32810 + 255, 255, 255, 255, 255, 31, 32, 31, 34, 44, 65, 86, 105, 115, 122, 125, 32.32811 + 126, 119, 119, 125, 129, 127, 127, 127, 130, 134, 139, 149, 161, 170, 181, 185, 32.32812 + 190, 194, 199, 200, 201, 202, 211, 214, 218, 223, 227, 230, 232, 233, 235, 238, 32.32813 + 239, 240, 246, 251, 253, 249, 248, 243, 241, 243, 242, 241, 246, 255, 252, 252, 32.32814 + 248, 241, 239, 243, 246, 242, 241, 231, 225, 228, 230, 226, 228, 229, 238, 229, 32.32815 + 221, 214, 216, 220, 216, 205, 189, 190, 193, 193, 193, 194, 190, 184, 178, 174, 32.32816 + 173, 173, 165, 153, 145, 146, 149, 146, 137, 119, 107, 102, 100, 96, 79, 130, 32.32817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 29, 30, 32.32820 + 30, 36, 47, 69, 94, 111, 111, 120, 127, 126, 127, 131, 133, 130, 128, 127, 32.32821 + 128, 132, 137, 145, 155, 163, 177, 182, 188, 193, 198, 200, 201, 202, 207, 211, 32.32822 + 215, 220, 224, 227, 230, 231, 235, 236, 237, 236, 240, 247, 248, 247, 244, 242, 32.32823 + 244, 248, 247, 243, 244, 250, 246, 246, 242, 235, 233, 237, 239, 237, 231, 225, 32.32824 + 225, 230, 231, 229, 228, 231, 227, 226, 222, 217, 216, 214, 206, 194, 180, 186, 32.32825 + 192, 189, 187, 186, 186, 183, 187, 176, 171, 172, 172, 162, 151, 145, 143, 138, 32.32826 + 128, 110, 95, 87, 81, 74, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32829 + 255, 255, 255, 255, 255, 255, 181, 34, 32, 29, 29, 46, 74, 96, 104, 114, 32.32830 + 125, 126, 125, 128, 132, 133, 126, 127, 129, 130, 133, 140, 148, 156, 169, 174, 32.32831 + 182, 189, 195, 197, 200, 199, 203, 206, 210, 214, 220, 224, 227, 228, 234, 234, 32.32832 + 234, 231, 234, 239, 240, 239, 237, 240, 247, 253, 251, 245, 241, 241, 243, 243, 32.32833 + 239, 233, 231, 234, 236, 233, 227, 228, 231, 235, 234, 229, 227, 230, 208, 213, 32.32834 + 218, 217, 216, 212, 204, 191, 180, 190, 196, 193, 185, 181, 182, 183, 189, 175, 32.32835 + 166, 167, 172, 165, 151, 140, 126, 123, 115, 102, 92, 87, 80, 73, 255, 255, 32.32836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 32.32839 + 41, 33, 28, 34, 55, 73, 100, 108, 116, 117, 117, 120, 127, 130, 127, 128, 32.32840 + 129, 130, 131, 137, 144, 151, 158, 165, 174, 184, 190, 194, 196, 197, 201, 203, 32.32841 + 206, 211, 215, 221, 225, 226, 233, 234, 232, 229, 230, 232, 232, 227, 228, 234, 32.32842 + 242, 247, 245, 239, 233, 231, 234, 235, 232, 226, 225, 228, 229, 227, 228, 231, 32.32843 + 232, 230, 225, 219, 219, 221, 206, 208, 211, 211, 212, 210, 199, 184, 185, 198, 32.32844 + 205, 199, 187, 180, 181, 182, 183, 172, 164, 163, 166, 162, 148, 135, 116, 113, 32.32845 + 107, 98, 93, 90, 84, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32848 + 255, 255, 255, 255, 255, 255, 255, 186, 48, 45, 43, 44, 50, 56, 88, 94, 32.32849 + 106, 113, 113, 115, 121, 126, 130, 131, 132, 132, 133, 137, 142, 148, 154, 160, 32.32850 + 169, 179, 188, 193, 196, 196, 199, 200, 203, 208, 213, 219, 223, 225, 231, 234, 32.32851 + 234, 232, 230, 228, 222, 214, 221, 230, 236, 239, 238, 235, 230, 227, 225, 227, 32.32852 + 225, 220, 219, 223, 224, 222, 227, 229, 226, 219, 211, 209, 209, 211, 217, 212, 32.32853 + 204, 200, 204, 204, 193, 178, 181, 193, 202, 198, 187, 181, 181, 182, 179, 175, 32.32854 + 170, 165, 162, 158, 149, 140, 123, 117, 107, 95, 90, 83, 132, 255, 255, 255, 32.32855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32858 + 255, 60, 63, 61, 61, 59, 71, 78, 94, 110, 117, 118, 119, 122, 130, 132, 32.32859 + 134, 133, 133, 136, 141, 144, 153, 159, 168, 178, 187, 191, 195, 196, 195, 196, 32.32860 + 200, 204, 209, 214, 220, 223, 227, 231, 233, 230, 229, 226, 217, 207, 216, 223, 32.32861 + 229, 230, 229, 229, 227, 223, 221, 223, 222, 219, 219, 223, 225, 224, 228, 228, 32.32862 + 223, 213, 209, 213, 215, 215, 212, 207, 201, 197, 201, 204, 198, 187, 175, 183, 32.32863 + 192, 191, 185, 183, 182, 179, 171, 173, 169, 162, 154, 150, 145, 139, 129, 119, 32.32864 + 105, 94, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 74, 73, 73, 73, 69, 70, 32.32868 + 79, 96, 107, 113, 116, 121, 129, 133, 134, 133, 133, 135, 139, 142, 151, 156, 32.32869 + 163, 172, 181, 187, 193, 194, 192, 192, 195, 200, 205, 211, 217, 220, 223, 226, 32.32870 + 228, 225, 224, 222, 215, 206, 206, 215, 221, 221, 221, 223, 221, 216, 216, 219, 32.32871 + 219, 217, 218, 223, 225, 225, 229, 228, 222, 213, 211, 217, 219, 217, 200, 202, 32.32872 + 206, 204, 204, 204, 202, 196, 180, 185, 188, 190, 191, 190, 185, 176, 167, 170, 32.32873 + 166, 157, 150, 146, 142, 135, 122, 111, 97, 142, 255, 255, 255, 255, 255, 255, 32.32874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32877 + 255, 255, 76, 77, 80, 83, 77, 68, 64, 76, 90, 99, 110, 121, 126, 131, 32.32878 + 131, 132, 132, 134, 138, 143, 147, 152, 158, 164, 173, 180, 185, 187, 187, 189, 32.32879 + 191, 195, 201, 207, 212, 217, 218, 220, 222, 220, 220, 220, 216, 208, 196, 206, 32.32880 + 213, 214, 214, 216, 214, 209, 206, 209, 210, 208, 210, 215, 217, 217, 221, 220, 32.32881 + 214, 205, 207, 213, 214, 208, 203, 212, 219, 214, 203, 195, 189, 186, 193, 194, 32.32882 + 193, 194, 199, 198, 186, 172, 172, 173, 167, 158, 152, 152, 144, 136, 116, 103, 32.32883 + 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 77, 75, 67, 66, 32.32887 + 66, 67, 70, 80, 98, 119, 121, 128, 122, 139, 128, 139, 131, 137, 141, 142, 32.32888 + 147, 156, 163, 165, 172, 179, 190, 187, 185, 190, 197, 204, 208, 209, 208, 214, 32.32889 + 218, 215, 212, 209, 212, 214, 206, 201, 198, 203, 214, 222, 223, 224, 211, 210, 32.32890 + 207, 204, 207, 214, 217, 214, 214, 211, 210, 208, 208, 205, 202, 199, 201, 213, 32.32891 + 218, 205, 188, 186, 194, 199, 186, 189, 191, 190, 190, 187, 178, 166, 170, 169, 32.32892 + 165, 158, 148, 137, 129, 124, 110, 100, 255, 255, 255, 255, 255, 255, 255, 255, 32.32893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32896 + 255, 255, 255, 255, 197, 78, 66, 65, 63, 61, 58, 60, 76, 97, 111, 121, 32.32897 + 115, 128, 115, 128, 127, 139, 135, 136, 143, 153, 160, 164, 169, 175, 187, 186, 32.32898 + 185, 190, 195, 201, 202, 202, 210, 214, 216, 216, 212, 209, 208, 207, 217, 213, 32.32899 + 211, 210, 213, 215, 218, 219, 212, 212, 210, 206, 210, 216, 219, 216, 216, 211, 32.32900 + 207, 202, 201, 200, 199, 197, 199, 207, 210, 203, 193, 191, 191, 188, 181, 181, 32.32901 + 182, 184, 190, 192, 185, 173, 169, 164, 158, 150, 138, 126, 112, 103, 151, 255, 32.32902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 67, 66, 32.32906 + 63, 57, 48, 45, 55, 71, 96, 111, 114, 123, 115, 124, 129, 139, 130, 130, 32.32907 + 137, 147, 154, 158, 162, 169, 181, 184, 187, 191, 195, 198, 195, 194, 207, 209, 32.32908 + 211, 213, 211, 209, 206, 204, 210, 210, 211, 211, 213, 216, 222, 227, 213, 214, 32.32909 + 211, 208, 211, 217, 218, 215, 221, 215, 207, 203, 202, 202, 202, 201, 199, 201, 32.32910 + 200, 200, 200, 198, 190, 179, 183, 183, 183, 183, 188, 190, 183, 173, 172, 164, 32.32911 + 152, 143, 133, 120, 104, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32915 + 255, 255, 255, 255, 255, 255, 255, 66, 63, 61, 53, 43, 44, 52, 75, 92, 32.32916 + 107, 119, 119, 125, 127, 131, 133, 131, 132, 138, 145, 146, 152, 161, 175, 180, 32.32917 + 186, 192, 193, 192, 188, 188, 200, 201, 202, 204, 207, 210, 209, 207, 201, 202, 32.32918 + 204, 206, 212, 217, 224, 228, 212, 215, 213, 211, 213, 219, 219, 215, 215, 209, 32.32919 + 204, 201, 202, 202, 203, 201, 199, 196, 196, 197, 201, 199, 189, 179, 180, 184, 32.32920 + 189, 189, 189, 187, 183, 174, 173, 159, 144, 132, 125, 113, 151, 255, 255, 255, 32.32921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32925 + 190, 62, 61, 52, 45, 42, 62, 74, 90, 97, 111, 117, 124, 120, 134, 129, 32.32926 + 126, 128, 133, 137, 145, 155, 165, 174, 182, 187, 186, 185, 184, 185, 201, 200, 32.32927 + 198, 201, 205, 209, 211, 212, 215, 210, 206, 207, 211, 215, 217, 215, 214, 217, 32.32928 + 216, 213, 215, 221, 221, 214, 207, 203, 201, 199, 200, 199, 197, 194, 197, 196, 32.32929 + 197, 196, 195, 191, 187, 184, 171, 183, 193, 193, 187, 181, 179, 176, 164, 148, 32.32930 + 127, 112, 104, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 58, 51, 49, 72, 75, 32.32935 + 83, 78, 94, 105, 121, 118, 127, 123, 119, 121, 124, 128, 138, 149, 152, 161, 32.32936 + 172, 176, 177, 177, 181, 183, 203, 202, 203, 203, 206, 208, 211, 214, 223, 216, 32.32937 + 210, 210, 215, 218, 215, 211, 216, 218, 218, 216, 217, 221, 220, 214, 207, 204, 32.32938 + 202, 200, 199, 195, 192, 188, 193, 193, 195, 194, 188, 181, 183, 189, 179, 189, 32.32939 + 196, 189, 176, 166, 160, 155, 154, 136, 113, 132, 218, 255, 255, 255, 255, 255, 32.32940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32944 + 255, 255, 255, 255, 191, 66, 84, 85, 89, 69, 83, 88, 111, 110, 121, 116, 32.32945 + 113, 115, 118, 120, 126, 135, 138, 150, 160, 164, 164, 167, 175, 182, 194, 198, 32.32946 + 202, 204, 205, 205, 208, 211, 214, 210, 208, 207, 209, 212, 212, 211, 209, 212, 32.32947 + 212, 211, 212, 215, 212, 205, 204, 201, 197, 193, 192, 190, 188, 185, 187, 188, 32.32948 + 192, 192, 183, 173, 175, 182, 188, 190, 186, 174, 162, 150, 141, 131, 136, 121, 32.32949 + 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 86, 32.32954 + 95, 67, 75, 72, 94, 94, 119, 115, 113, 115, 114, 112, 114, 119, 128, 139, 32.32955 + 150, 155, 157, 160, 170, 180, 178, 187, 199, 203, 203, 202, 205, 210, 206, 206, 32.32956 + 206, 202, 198, 197, 199, 202, 200, 203, 204, 203, 204, 206, 203, 197, 191, 186, 32.32957 + 181, 179, 178, 180, 180, 180, 182, 184, 187, 189, 180, 169, 168, 174, 179, 176, 32.32958 + 165, 157, 152, 148, 141, 130, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32963 + 255, 255, 255, 255, 255, 255, 255, 255, 206, 104, 67, 70, 90, 81, 104, 110, 32.32964 + 113, 114, 115, 119, 119, 117, 125, 126, 132, 142, 153, 158, 164, 170, 178, 180, 32.32965 + 187, 192, 195, 194, 191, 188, 202, 202, 204, 201, 197, 191, 185, 182, 192, 192, 32.32966 + 196, 200, 198, 191, 188, 190, 184, 180, 178, 180, 178, 173, 170, 173, 177, 179, 32.32967 + 177, 172, 162, 156, 155, 155, 160, 150, 137, 130, 132, 132, 118, 150, 255, 255, 32.32968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32973 + 255, 255, 255, 255, 255, 91, 86, 91, 95, 99, 105, 109, 110, 104, 120, 122, 32.32974 + 127, 131, 139, 147, 156, 158, 162, 169, 178, 184, 187, 185, 183, 181, 187, 190, 32.32975 + 192, 191, 187, 184, 184, 184, 179, 178, 182, 189, 191, 188, 188, 189, 179, 174, 32.32976 + 170, 171, 169, 168, 168, 172, 165, 167, 169, 163, 155, 148, 145, 144, 146, 141, 32.32977 + 132, 122, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32984 + 255, 255, 255, 255, 229, 179, 182, 187, 188, 185, 178, 176, 180, 184, 178, 174, 32.32985 + 173, 178, 182, 178, 178, 176, 170, 167, 167, 170, 169, 165, 164, 167, 168, 169, 32.32986 + 168, 160, 150, 140, 135, 133, 131, 129, 168, 255, 255, 255, 255, 255, 255, 255, 32.32987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32994 + 255, 255, 226, 165, 169, 176, 175, 168, 164, 167, 171, 170, 167, 166, 168, 167, 32.32995 + 171, 175, 171, 163, 155, 152, 165, 164, 161, 154, 143, 176, 255, 255, 255, 255, 32.32996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.32999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33001 + 255, 255, 255, 255, 255, 255, 255, 255, 14, 22, 10, 18, 19, 15, 1, 1, 32.33002 + 4, 12, 15, 11, 6, 7, 8, 6, 4, 4, 3, 3, 0, 0, 2, 0, 32.33003 + 0, 0, 0, 3, 3, 3, 1, 94, 255, 255, 255, 255, 255, 255, 255, 255, 32.33004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 17, 24, 11, 32.33011 + 14, 11, 13, 15, 24, 18, 15, 23, 29, 30, 32, 34, 34, 33, 48, 45, 32.33012 + 42, 41, 39, 37, 33, 28, 17, 16, 12, 11, 11, 11, 9, 7, 1, 12, 32.33013 + 10, 10, 9, 0, 2, 66, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33020 + 255, 255, 184, 41, 34, 16, 20, 8, 23, 22, 41, 41, 55, 44, 48, 61, 32.33021 + 65, 60, 58, 64, 68, 66, 58, 57, 59, 62, 66, 68, 67, 65, 53, 51, 32.33022 + 50, 46, 38, 25, 12, 4, 4, 2, 0, 0, 5, 0, 8, 34, 106, 71, 32.33023 + 41, 34, 24, 8, 59, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33029 + 255, 255, 255, 255, 255, 255, 255, 255, 183, 46, 42, 35, 34, 35, 51, 54, 32.33030 + 60, 64, 66, 67, 68, 69, 65, 66, 66, 68, 71, 73, 73, 75, 70, 71, 32.33031 + 72, 71, 71, 71, 74, 77, 73, 71, 69, 66, 62, 59, 56, 55, 36, 39, 32.33032 + 36, 23, 9, 8, 22, 37, 65, 37, 29, 45, 37, 6, 0, 7, 4, 63, 32.33033 + 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 22, 32.33039 + 38, 51, 57, 62, 68, 73, 60, 64, 67, 69, 70, 71, 71, 73, 75, 76, 32.33040 + 76, 78, 80, 82, 83, 83, 83, 84, 84, 83, 80, 79, 81, 83, 79, 80, 32.33041 + 78, 77, 74, 73, 70, 71, 71, 71, 65, 51, 34, 20, 14, 14, 43, 30, 32.33042 + 22, 25, 22, 11, 5, 10, 0, 8, 6, 5, 12, 94, 255, 255, 255, 255, 32.33043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33048 + 255, 255, 255, 255, 255, 36, 48, 53, 57, 60, 62, 63, 65, 66, 71, 72, 32.33049 + 73, 75, 74, 75, 76, 78, 80, 80, 80, 82, 83, 84, 85, 86, 89, 90, 32.33050 + 90, 89, 87, 85, 85, 87, 87, 88, 88, 88, 87, 87, 87, 89, 77, 74, 32.33051 + 72, 69, 65, 59, 51, 44, 26, 25, 15, 3, 2, 8, 9, 1, 1, 8, 32.33052 + 10, 9, 11, 16, 17, 15, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 14, 33, 44, 57, 58, 32.33058 + 61, 66, 72, 76, 77, 75, 77, 78, 79, 79, 79, 80, 83, 86, 83, 83, 32.33059 + 83, 84, 84, 85, 86, 86, 88, 90, 92, 93, 91, 91, 92, 95, 92, 94, 32.33060 + 94, 94, 94, 95, 95, 96, 96, 90, 81, 76, 75, 73, 68, 65, 36, 35, 32.33061 + 23, 7, 2, 7, 4, 0, 3, 6, 10, 12, 13, 20, 20, 7, 4, 11, 32.33062 + 9, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 32.33067 + 68, 16, 25, 42, 55, 59, 61, 62, 66, 74, 83, 88, 89, 87, 83, 84, 32.33068 + 85, 86, 86, 89, 91, 95, 94, 95, 94, 95, 96, 96, 96, 96, 96, 99, 32.33069 + 101, 101, 100, 99, 99, 101, 96, 97, 96, 96, 95, 96, 95, 96, 98, 94, 32.33070 + 87, 79, 74, 72, 72, 75, 65, 56, 46, 37, 28, 20, 10, 5, 6, 1, 32.33071 + 4, 10, 15, 29, 27, 4, 9, 11, 7, 5, 0, 102, 255, 255, 255, 255, 32.33072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33076 + 255, 255, 255, 255, 255, 255, 255, 177, 29, 39, 53, 66, 72, 70, 74, 75, 32.33077 + 78, 82, 84, 85, 81, 78, 89, 92, 94, 96, 97, 98, 100, 103, 105, 104, 32.33078 + 104, 103, 103, 103, 103, 103, 102, 104, 106, 105, 102, 99, 98, 98, 98, 98, 32.33079 + 97, 96, 95, 94, 94, 93, 77, 80, 83, 82, 80, 80, 82, 87, 79, 69, 32.33080 + 63, 63, 56, 39, 27, 25, 17, 3, 5, 10, 16, 39, 42, 12, 21, 13, 32.33081 + 11, 5, 2, 17, 2, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 35, 32.33086 + 45, 54, 63, 70, 71, 67, 73, 77, 81, 85, 88, 91, 92, 93, 96, 99, 32.33087 + 103, 104, 103, 104, 104, 106, 106, 106, 105, 105, 104, 103, 103, 102, 99, 102, 32.33088 + 103, 103, 100, 97, 96, 96, 98, 97, 96, 95, 94, 93, 92, 91, 88, 88, 32.33089 + 88, 86, 82, 79, 77, 77, 79, 74, 72, 74, 70, 60, 49, 46, 38, 19, 32.33090 + 16, 16, 14, 43, 55, 26, 33, 15, 19, 8, 13, 11, 6, 14, 11, 255, 32.33091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33095 + 255, 255, 255, 255, 255, 186, 57, 68, 79, 82, 83, 85, 85, 84, 93, 94, 32.33096 + 96, 94, 93, 93, 95, 97, 99, 102, 106, 107, 105, 104, 103, 103, 106, 106, 32.33097 + 105, 104, 103, 102, 100, 100, 96, 99, 102, 103, 102, 100, 99, 99, 94, 94, 32.33098 + 92, 92, 91, 90, 90, 90, 93, 90, 86, 84, 84, 87, 87, 88, 79, 81, 32.33099 + 80, 78, 77, 75, 67, 58, 56, 34, 29, 19, 10, 40, 59, 34, 42, 18, 32.33100 + 28, 13, 24, 14, 17, 28, 10, 19, 101, 255, 255, 255, 255, 255, 255, 255, 32.33101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 49, 55, 76, 77, 32.33105 + 82, 86, 88, 91, 94, 96, 97, 97, 96, 96, 97, 97, 98, 98, 100, 100, 32.33106 + 102, 103, 103, 104, 104, 104, 104, 104, 103, 102, 101, 101, 99, 100, 98, 95, 32.33107 + 92, 93, 95, 95, 92, 89, 90, 88, 86, 84, 82, 81, 80, 80, 79, 80, 32.33108 + 82, 83, 84, 84, 84, 84, 84, 85, 85, 84, 83, 80, 77, 77, 63, 66, 32.33109 + 43, 35, 45, 25, 10, 31, 23, 14, 54, 18, 12, 23, 28, 46, 28, 7, 32.33110 + 19, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33114 + 255, 182, 30, 42, 67, 84, 83, 84, 88, 90, 91, 93, 95, 97, 98, 98, 32.33115 + 99, 99, 99, 100, 100, 100, 102, 102, 103, 103, 103, 103, 103, 103, 101, 101, 32.33116 + 100, 99, 98, 96, 96, 95, 92, 90, 89, 90, 93, 94, 93, 91, 90, 88, 32.33117 + 86, 84, 82, 80, 79, 80, 82, 84, 84, 84, 85, 85, 85, 85, 85, 86, 32.33118 + 85, 85, 84, 82, 80, 80, 77, 82, 62, 51, 53, 33, 20, 44, 45, 30, 32.33119 + 61, 27, 21, 30, 32, 44, 75, 31, 15, 22, 40, 113, 255, 255, 255, 255, 32.33120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33123 + 255, 255, 255, 255, 255, 255, 255, 255, 35, 37, 55, 77, 90, 92, 92, 95, 32.33124 + 97, 98, 98, 98, 99, 100, 102, 102, 103, 103, 103, 104, 104, 104, 103, 103, 32.33125 + 103, 103, 103, 102, 102, 102, 101, 100, 99, 98, 97, 96, 95, 95, 93, 93, 32.33126 + 91, 91, 93, 94, 93, 92, 91, 90, 88, 85, 83, 82, 80, 81, 80, 81, 32.33127 + 79, 79, 78, 79, 79, 80, 85, 86, 86, 87, 87, 87, 86, 86, 86, 93, 32.33128 + 81, 69, 67, 48, 39, 60, 51, 31, 54, 23, 22, 30, 33, 41, 72, 33, 32.33129 + 18, 26, 57, 70, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 25, 32.33133 + 37, 59, 87, 104, 99, 87, 98, 100, 102, 103, 101, 101, 102, 103, 103, 103, 32.33134 + 103, 104, 104, 105, 105, 105, 104, 103, 102, 101, 101, 100, 100, 100, 102, 101, 32.33135 + 101, 100, 99, 98, 97, 97, 102, 101, 100, 99, 97, 95, 94, 93, 93, 91, 32.33136 + 89, 87, 86, 84, 83, 85, 81, 82, 79, 78, 77, 77, 77, 78, 82, 83, 32.33137 + 84, 85, 86, 86, 87, 88, 81, 88, 82, 78, 78, 64, 55, 67, 38, 20, 32.33138 + 38, 14, 17, 22, 35, 42, 45, 29, 30, 30, 50, 66, 43, 102, 255, 255, 32.33139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33142 + 255, 255, 255, 255, 255, 172, 11, 41, 75, 93, 94, 95, 95, 96, 97, 100, 32.33143 + 103, 103, 102, 102, 103, 104, 102, 102, 102, 102, 103, 103, 103, 104, 103, 101, 32.33144 + 100, 98, 98, 98, 98, 99, 100, 100, 99, 99, 99, 99, 98, 98, 105, 105, 32.33145 + 105, 103, 102, 100, 100, 100, 97, 96, 95, 93, 92, 91, 90, 91, 93, 93, 32.33146 + 90, 89, 86, 86, 85, 84, 81, 81, 82, 82, 82, 84, 84, 85, 77, 79, 32.33147 + 77, 81, 85, 76, 64, 63, 33, 19, 31, 11, 11, 10, 29, 36, 27, 20, 32.33148 + 18, 1, 5, 25, 20, 17, 9, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 8, 15, 33, 63, 81, 32.33152 + 98, 100, 94, 91, 92, 97, 95, 99, 101, 102, 101, 101, 102, 103, 100, 100, 32.33153 + 100, 101, 101, 101, 102, 101, 102, 101, 99, 98, 97, 98, 99, 100, 98, 99, 32.33154 + 99, 100, 101, 101, 102, 102, 102, 103, 105, 106, 104, 105, 106, 109, 103, 103, 32.33155 + 102, 101, 101, 102, 102, 103, 102, 102, 101, 99, 96, 94, 92, 90, 86, 87, 32.33156 + 85, 84, 83, 83, 83, 83, 82, 78, 78, 82, 85, 80, 69, 59, 42, 28, 32.33157 + 32, 13, 7, 0, 17, 19, 37, 32, 33, 18, 21, 38, 29, 25, 7, 7, 32.33158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33161 + 255, 0, 0, 26, 44, 74, 103, 100, 95, 92, 95, 100, 94, 87, 96, 99, 32.33162 + 101, 101, 99, 99, 99, 100, 99, 99, 99, 100, 100, 100, 101, 100, 103, 102, 32.33163 + 99, 99, 98, 101, 102, 104, 100, 102, 102, 105, 105, 108, 108, 109, 105, 107, 32.33164 + 110, 112, 110, 111, 113, 117, 112, 111, 111, 112, 113, 114, 115, 117, 110, 111, 32.33165 + 111, 110, 106, 102, 97, 94, 98, 97, 93, 90, 88, 87, 85, 85, 88, 82, 32.33166 + 82, 83, 79, 77, 74, 65, 59, 40, 35, 20, 15, 0, 15, 11, 7, 5, 32.33167 + 16, 9, 12, 22, 9, 4, 8, 7, 9, 93, 255, 255, 255, 255, 255, 255, 32.33168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33170 + 255, 255, 255, 255, 255, 255, 255, 255, 15, 21, 43, 75, 77, 94, 91, 94, 32.33171 + 96, 93, 92, 94, 93, 92, 97, 100, 101, 101, 98, 97, 97, 98, 99, 99, 32.33172 + 99, 100, 100, 100, 101, 100, 104, 102, 100, 99, 100, 102, 105, 106, 105, 106, 32.33173 + 107, 110, 112, 114, 116, 117, 112, 114, 118, 117, 115, 114, 116, 120, 117, 118, 32.33174 + 118, 119, 120, 122, 124, 125, 120, 122, 122, 122, 117, 113, 107, 104, 107, 105, 32.33175 + 101, 97, 93, 92, 88, 88, 88, 83, 84, 81, 73, 73, 79, 73, 73, 51, 32.33176 + 41, 31, 32, 14, 30, 20, 23, 22, 28, 14, 8, 16, 15, 25, 8, 7, 32.33177 + 7, 8, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 32.33180 + 42, 59, 75, 85, 88, 87, 97, 98, 98, 97, 94, 91, 91, 91, 94, 94, 32.33181 + 95, 96, 97, 97, 97, 97, 99, 99, 99, 99, 100, 102, 103, 103, 101, 102, 32.33182 + 104, 107, 110, 111, 112, 113, 108, 109, 112, 115, 117, 118, 118, 117, 115, 121, 32.33183 + 118, 116, 124, 123, 118, 120, 124, 121, 122, 128, 128, 123, 120, 124, 125, 122, 32.33184 + 121, 125, 126, 123, 117, 114, 113, 108, 99, 95, 94, 92, 87, 84, 91, 87, 32.33185 + 82, 79, 76, 74, 73, 72, 65, 57, 50, 44, 34, 29, 35, 48, 46, 52, 32.33186 + 63, 27, 8, 17, 6, 10, 8, 2, 0, 3, 7, 88, 255, 255, 255, 255, 32.33187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33189 + 255, 255, 255, 255, 255, 178, 39, 51, 67, 79, 87, 93, 94, 91, 98, 100, 32.33190 + 100, 99, 96, 96, 97, 98, 94, 94, 95, 98, 98, 100, 99, 100, 100, 101, 32.33191 + 100, 102, 102, 105, 105, 106, 102, 104, 105, 108, 110, 112, 112, 113, 116, 117, 32.33192 + 116, 118, 118, 121, 122, 123, 123, 128, 122, 120, 126, 125, 118, 121, 135, 133, 32.33193 + 129, 126, 119, 111, 107, 108, 115, 117, 115, 104, 90, 85, 92, 103, 104, 101, 32.33194 + 98, 100, 103, 102, 97, 92, 72, 74, 76, 77, 78, 74, 68, 64, 80, 63, 32.33195 + 47, 46, 48, 42, 29, 22, 37, 32, 53, 49, 29, 10, 0, 19, 22, 11, 32.33196 + 1, 0, 3, 3, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 27, 64, 73, 32.33199 + 84, 90, 93, 95, 92, 88, 92, 94, 93, 93, 93, 94, 97, 98, 96, 95, 32.33200 + 97, 99, 101, 103, 103, 104, 105, 105, 105, 106, 107, 109, 110, 111, 107, 108, 32.33201 + 109, 112, 113, 116, 115, 117, 125, 125, 122, 123, 123, 126, 128, 131, 131, 135, 32.33202 + 127, 124, 128, 126, 117, 122, 131, 130, 123, 109, 96, 90, 87, 85, 83, 65, 32.33203 + 47, 49, 65, 71, 59, 43, 53, 44, 36, 37, 46, 57, 61, 61, 81, 74, 32.33204 + 62, 56, 55, 60, 67, 72, 69, 63, 58, 56, 49, 34, 21, 15, 31, 41, 32.33205 + 55, 33, 12, 12, 9, 18, 7, 1, 0, 4, 6, 3, 0, 85, 255, 255, 32.33206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33208 + 255, 255, 170, 13, 40, 65, 71, 77, 87, 89, 91, 91, 90, 86, 87, 87, 32.33209 + 88, 89, 88, 91, 96, 98, 97, 96, 99, 101, 104, 106, 107, 108, 108, 109, 32.33210 + 109, 110, 111, 113, 115, 115, 116, 116, 117, 119, 121, 122, 122, 122, 127, 127, 32.33211 + 128, 129, 131, 133, 135, 136, 134, 135, 127, 124, 130, 124, 117, 124, 119, 120, 32.33212 + 111, 93, 79, 77, 78, 77, 52, 57, 63, 67, 69, 67, 58, 49, 50, 39, 32.33213 + 25, 21, 25, 30, 30, 28, 43, 45, 46, 46, 45, 40, 33, 27, 54, 58, 32.33214 + 61, 62, 56, 45, 34, 30, 17, 41, 51, 29, 11, 11, 2, 0, 1, 1, 32.33215 + 5, 8, 7, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 5, 33, 70, 84, 78, 84, 32.33218 + 91, 92, 92, 93, 92, 89, 88, 89, 90, 90, 93, 97, 101, 104, 100, 100, 32.33219 + 103, 106, 108, 111, 112, 112, 113, 114, 114, 115, 117, 119, 121, 121, 121, 122, 32.33220 + 124, 125, 126, 127, 127, 127, 125, 127, 132, 136, 139, 141, 141, 141, 136, 135, 32.33221 + 125, 125, 131, 124, 119, 128, 121, 119, 109, 94, 83, 84, 87, 89, 84, 92, 32.33222 + 95, 90, 84, 81, 75, 69, 45, 41, 37, 39, 44, 46, 41, 36, 35, 36, 32.33223 + 36, 37, 37, 36, 31, 29, 24, 17, 13, 24, 41, 45, 33, 18, 28, 18, 32.33224 + 12, 19, 17, 7, 14, 23, 10, 9, 9, 7, 2, 0, 2, 11, 0, 255, 32.33225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33227 + 176, 17, 28, 48, 76, 74, 85, 91, 94, 93, 92, 92, 92, 88, 88, 89, 32.33228 + 91, 94, 96, 100, 105, 108, 106, 107, 109, 112, 115, 117, 118, 119, 120, 120, 32.33229 + 121, 122, 124, 127, 129, 130, 126, 128, 129, 130, 130, 130, 130, 130, 127, 131, 32.33230 + 137, 143, 147, 149, 148, 147, 143, 139, 130, 130, 135, 129, 125, 137, 133, 123, 32.33231 + 110, 103, 97, 95, 99, 106, 124, 110, 88, 77, 85, 96, 91, 76, 87, 80, 32.33232 + 72, 68, 70, 73, 76, 77, 41, 32, 19, 11, 15, 26, 40, 49, 46, 46, 32.33233 + 46, 52, 65, 76, 75, 69, 50, 45, 23, 17, 13, 5, 10, 1, 0, 0, 32.33234 + 0, 5, 5, 0, 0, 2, 1, 86, 255, 255, 255, 255, 255, 255, 255, 255, 32.33235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33236 + 255, 255, 255, 255, 255, 255, 255, 172, 1, 33, 58, 67, 88, 87, 87, 94, 32.33237 + 95, 92, 90, 91, 90, 87, 88, 91, 95, 99, 101, 105, 110, 112, 115, 116, 32.33238 + 118, 121, 123, 125, 126, 126, 128, 128, 129, 131, 133, 135, 137, 139, 134, 134, 32.33239 + 135, 136, 136, 136, 135, 135, 136, 139, 143, 148, 152, 154, 154, 155, 154, 149, 32.33240 + 138, 139, 144, 136, 132, 146, 145, 125, 111, 113, 113, 107, 110, 121, 126, 131, 32.33241 + 123, 104, 93, 98, 106, 108, 96, 89, 78, 67, 57, 54, 54, 57, 70, 72, 32.33242 + 73, 75, 75, 71, 66, 62, 49, 58, 63, 57, 53, 58, 68, 73, 84, 113, 32.33243 + 106, 98, 88, 74, 59, 14, 19, 8, 1, 4, 9, 6, 0, 0, 2, 2, 32.33244 + 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 11, 32.33246 + 1, 48, 75, 67, 83, 85, 87, 94, 95, 92, 91, 93, 93, 90, 95, 98, 32.33247 + 103, 108, 111, 115, 119, 121, 121, 122, 125, 127, 129, 130, 131, 131, 133, 134, 32.33248 + 135, 136, 138, 141, 143, 144, 141, 140, 141, 142, 142, 140, 140, 139, 144, 145, 32.33249 + 148, 152, 156, 158, 160, 163, 165, 159, 148, 148, 152, 143, 139, 152, 153, 128, 32.33250 + 113, 123, 127, 120, 123, 139, 141, 135, 122, 116, 124, 128, 108, 81, 45, 59, 32.33251 + 78, 93, 97, 93, 87, 84, 82, 79, 76, 72, 66, 58, 50, 44, 49, 45, 32.33252 + 35, 28, 30, 36, 34, 27, 18, 27, 23, 53, 72, 80, 112, 119, 102, 65, 32.33253 + 21, 2, 3, 7, 8, 6, 3, 3, 2, 87, 255, 255, 255, 255, 255, 255, 32.33254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33255 + 255, 255, 255, 255, 255, 255, 170, 1, 24, 53, 71, 77, 82, 91, 94, 89, 32.33256 + 87, 90, 91, 90, 94, 101, 107, 112, 115, 115, 115, 120, 126, 129, 130, 122, 32.33257 + 123, 129, 132, 130, 130, 135, 128, 132, 137, 142, 145, 144, 142, 140, 145, 142, 32.33258 + 140, 139, 139, 137, 136, 134, 146, 146, 149, 155, 160, 162, 166, 171, 172, 170, 32.33259 + 166, 161, 159, 157, 158, 159, 155, 130, 132, 144, 135, 137, 146, 143, 141, 140, 32.33260 + 131, 112, 93, 85, 90, 100, 115, 108, 102, 100, 103, 105, 103, 100, 100, 100, 32.33261 + 101, 102, 99, 93, 84, 79, 69, 68, 58, 41, 27, 22, 20, 19, 21, 17, 32.33262 + 15, 15, 12, 12, 30, 53, 69, 97, 108, 81, 34, 2, 0, 0, 5, 0, 32.33263 + 2, 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 17, 26, 32.33265 + 45, 68, 79, 79, 82, 89, 95, 90, 88, 91, 93, 93, 96, 103, 117, 121, 32.33266 + 125, 127, 129, 132, 134, 135, 127, 127, 121, 116, 120, 128, 128, 121, 129, 131, 32.33267 + 134, 138, 142, 145, 147, 147, 155, 151, 146, 144, 142, 140, 138, 137, 148, 147, 32.33268 + 149, 157, 162, 164, 167, 173, 179, 178, 173, 170, 166, 165, 165, 165, 153, 144, 32.33269 + 142, 139, 139, 157, 162, 139, 145, 124, 105, 104, 122, 135, 133, 126, 118, 119, 32.33270 + 121, 127, 137, 143, 144, 142, 147, 145, 141, 136, 128, 116, 104, 96, 83, 82, 32.33271 + 73, 57, 41, 28, 17, 11, 23, 18, 15, 13, 7, 4, 17, 35, 22, 30, 32.33272 + 57, 88, 92, 59, 19, 0, 13, 4, 0, 0, 85, 255, 255, 255, 255, 255, 32.33273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33274 + 255, 255, 255, 255, 255, 255, 25, 38, 60, 78, 83, 84, 87, 91, 89, 87, 32.33275 + 87, 93, 97, 102, 107, 113, 118, 119, 121, 125, 128, 128, 126, 123, 128, 132, 32.33276 + 125, 113, 118, 135, 136, 123, 127, 128, 131, 135, 141, 147, 153, 156, 163, 161, 32.33277 + 155, 152, 150, 150, 149, 148, 151, 150, 152, 158, 163, 164, 167, 172, 180, 179, 32.33278 + 176, 172, 170, 168, 166, 167, 157, 155, 157, 155, 155, 167, 163, 138, 129, 126, 32.33279 + 129, 136, 145, 149, 144, 139, 133, 138, 145, 152, 158, 159, 158, 156, 157, 155, 32.33280 + 152, 148, 142, 134, 123, 117, 109, 108, 101, 88, 74, 58, 37, 23, 21, 17, 32.33281 + 14, 15, 10, 3, 5, 14, 0, 7, 19, 40, 75, 94, 61, 13, 4, 4, 32.33282 + 4, 5, 8, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 47, 32.33284 + 68, 81, 84, 85, 87, 89, 85, 85, 88, 93, 98, 104, 110, 114, 128, 123, 32.33285 + 120, 122, 124, 120, 116, 114, 107, 113, 112, 106, 110, 124, 129, 124, 125, 128, 32.33286 + 131, 136, 143, 150, 157, 162, 165, 163, 158, 156, 156, 156, 158, 157, 152, 150, 32.33287 + 151, 157, 161, 161, 164, 168, 174, 173, 171, 169, 168, 165, 163, 162, 161, 155, 32.33288 + 162, 172, 164, 147, 138, 138, 126, 142, 156, 156, 144, 135, 135, 141, 147, 152, 32.33289 + 157, 160, 158, 155, 151, 149, 153, 152, 151, 152, 151, 148, 143, 139, 128, 126, 32.33290 + 121, 114, 106, 93, 70, 53, 27, 19, 13, 16, 17, 12, 5, 2, 5, 13, 32.33291 + 7, 0, 25, 65, 77, 63, 15, 21, 12, 1, 3, 6, 255, 255, 255, 255, 32.33292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33293 + 255, 255, 255, 255, 255, 2, 45, 64, 82, 87, 85, 87, 86, 84, 88, 89, 32.33294 + 94, 97, 102, 106, 110, 110, 118, 110, 103, 103, 102, 97, 95, 97, 99, 102, 32.33295 + 109, 114, 116, 118, 125, 133, 127, 130, 134, 140, 147, 153, 159, 163, 167, 164, 32.33296 + 159, 156, 155, 156, 155, 156, 148, 145, 147, 152, 154, 154, 157, 161, 165, 166, 32.33297 + 167, 167, 166, 164, 161, 159, 156, 156, 159, 158, 147, 128, 127, 143, 148, 141, 32.33298 + 133, 132, 136, 144, 149, 150, 151, 154, 157, 160, 159, 158, 157, 157, 154, 151, 32.33299 + 147, 145, 143, 140, 135, 133, 129, 127, 123, 120, 119, 112, 94, 77, 54, 36, 32.33300 + 17, 11, 14, 15, 9, 5, 14, 0, 3, 21, 24, 22, 50, 91, 81, 83, 32.33301 + 50, 11, 5, 11, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 47, 66, 32.33303 + 82, 85, 86, 93, 92, 87, 87, 94, 102, 107, 111, 118, 119, 116, 94, 85, 32.33304 + 82, 85, 87, 84, 88, 95, 104, 104, 111, 120, 121, 119, 124, 135, 134, 136, 32.33305 + 138, 144, 149, 154, 159, 161, 170, 166, 159, 154, 151, 149, 146, 144, 144, 141, 32.33306 + 141, 146, 148, 147, 149, 153, 159, 162, 165, 168, 168, 165, 162, 159, 152, 164, 32.33307 + 152, 130, 128, 136, 143, 151, 143, 132, 124, 127, 140, 151, 154, 151, 153, 154, 32.33308 + 155, 158, 158, 158, 157, 157, 150, 147, 140, 136, 131, 128, 124, 121, 125, 124, 32.33309 + 120, 118, 120, 119, 108, 95, 86, 64, 33, 13, 6, 8, 12, 13, 11, 3, 32.33310 + 9, 21, 18, 8, 22, 49, 75, 92, 60, 13, 6, 11, 89, 255, 255, 255, 32.33311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33312 + 255, 255, 255, 255, 255, 12, 45, 65, 79, 79, 85, 96, 99, 90, 92, 100, 32.33313 + 106, 106, 107, 108, 101, 95, 76, 73, 77, 90, 98, 100, 109, 123, 103, 103, 32.33314 + 103, 106, 112, 119, 122, 122, 146, 145, 143, 145, 148, 153, 158, 161, 167, 162, 32.33315 + 156, 151, 147, 142, 137, 134, 136, 134, 134, 140, 141, 140, 142, 148, 149, 154, 32.33316 + 159, 163, 164, 161, 158, 156, 151, 153, 128, 112, 132, 148, 145, 145, 124, 130, 32.33317 + 135, 139, 142, 144, 145, 147, 155, 154, 153, 153, 154, 152, 146, 142, 147, 144, 32.33318 + 137, 132, 129, 127, 126, 124, 117, 118, 116, 115, 118, 121, 114, 105, 97, 86, 32.33319 + 64, 36, 15, 6, 10, 17, 11, 18, 13, 2, 0, 10, 15, 9, 58, 95, 32.33320 + 80, 40, 38, 41, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 0, 58, 75, 32.33322 + 84, 81, 85, 98, 96, 84, 101, 108, 107, 97, 85, 74, 60, 44, 44, 46, 32.33323 + 59, 79, 91, 98, 111, 127, 118, 122, 117, 111, 124, 146, 147, 134, 155, 152, 32.33324 + 147, 145, 146, 152, 158, 162, 163, 158, 154, 150, 146, 142, 137, 134, 135, 133, 32.33325 + 134, 138, 140, 140, 142, 146, 141, 145, 152, 157, 159, 156, 152, 149, 148, 126, 32.33326 + 96, 107, 144, 144, 124, 125, 129, 128, 126, 128, 134, 141, 146, 150, 154, 150, 32.33327 + 149, 151, 153, 151, 141, 134, 132, 127, 119, 113, 110, 107, 105, 104, 105, 107, 32.33328 + 109, 110, 114, 118, 115, 108, 91, 97, 90, 65, 30, 11, 10, 17, 18, 10, 32.33329 + 5, 11, 13, 12, 13, 19, 23, 67, 52, 8, 8, 14, 4, 7, 255, 255, 32.33330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33331 + 255, 255, 255, 255, 8, 17, 65, 73, 82, 86, 87, 90, 95, 100, 101, 92, 32.33332 + 85, 93, 100, 72, 35, 19, 62, 91, 107, 99, 97, 111, 119, 115, 118, 118, 32.33333 + 121, 127, 135, 144, 151, 154, 146, 160, 165, 154, 147, 157, 163, 161, 154, 159, 32.33334 + 156, 163, 132, 137, 131, 141, 124, 130, 134, 136, 141, 146, 143, 135, 141, 135, 32.33335 + 135, 143, 152, 156, 155, 151, 134, 73, 104, 142, 134, 128, 120, 124, 127, 121, 32.33336 + 124, 134, 139, 135, 137, 143, 144, 145, 147, 146, 137, 129, 125, 125, 127, 118, 32.33337 + 102, 99, 102, 92, 84, 92, 77, 92, 101, 97, 99, 110, 115, 110, 112, 105, 32.33338 + 99, 88, 58, 24, 12, 17, 23, 20, 15, 10, 8, 11, 9, 6, 14, 50, 32.33339 + 95, 28, 0, 4, 9, 13, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2, 43, 56, 81, 32.33341 + 99, 94, 86, 90, 99, 100, 83, 99, 93, 67, 40, 20, 19, 32, 34, 53, 32.33342 + 62, 59, 58, 68, 72, 66, 92, 95, 100, 107, 116, 131, 148, 159, 177, 158, 32.33343 + 148, 155, 161, 161, 163, 169, 160, 161, 159, 138, 163, 148, 140, 128, 152, 151, 32.33344 + 139, 125, 122, 122, 110, 93, 86, 96, 109, 117, 119, 123, 126, 131, 62, 77, 32.33345 + 134, 137, 107, 111, 113, 114, 117, 122, 132, 139, 138, 133, 135, 139, 151, 138, 32.33346 + 134, 135, 132, 132, 128, 118, 102, 115, 111, 97, 92, 91, 88, 87, 77, 75, 32.33347 + 70, 70, 83, 100, 109, 109, 115, 111, 109, 102, 80, 49, 23, 12, 18, 19, 32.33348 + 17, 14, 11, 10, 10, 8, 14, 41, 95, 58, 21, 27, 33, 48, 92, 255, 32.33349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33350 + 255, 255, 255, 175, 14, 37, 76, 76, 78, 85, 93, 96, 86, 74, 77, 59, 32.33351 + 24, 13, 49, 86, 89, 82, 104, 110, 114, 116, 119, 124, 125, 123, 107, 109, 32.33352 + 109, 104, 100, 100, 109, 117, 125, 136, 159, 176, 172, 159, 162, 177, 162, 164, 32.33353 + 160, 141, 161, 132, 131, 145, 153, 173, 185, 178, 167, 150, 115, 77, 90, 91, 32.33354 + 81, 55, 30, 23, 25, 27, 48, 86, 126, 113, 102, 118, 114, 108, 114, 129, 32.33355 + 143, 144, 138, 134, 135, 135, 140, 123, 123, 126, 118, 126, 131, 117, 117, 123, 32.33356 + 118, 102, 89, 86, 81, 74, 72, 67, 66, 71, 76, 82, 92, 101, 116, 115, 32.33357 + 112, 104, 93, 71, 37, 8, 10, 14, 19, 19, 13, 10, 10, 12, 8, 20, 32.33358 + 79, 74, 15, 13, 14, 38, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 11, 25, 46, 68, 77, 32.33360 + 93, 94, 72, 49, 55, 76, 51, 78, 85, 72, 62, 58, 65, 80, 77, 79, 32.33361 + 85, 93, 97, 100, 105, 111, 117, 120, 124, 124, 121, 117, 115, 114, 94, 100, 32.33362 + 105, 118, 144, 168, 164, 147, 177, 163, 146, 157, 120, 106, 105, 142, 235, 242, 32.33363 + 248, 250, 250, 225, 145, 64, 98, 71, 47, 61, 109, 150, 145, 118, 87, 95, 32.33364 + 94, 92, 108, 117, 112, 122, 124, 139, 148, 142, 135, 135, 134, 131, 125, 117, 32.33365 + 128, 129, 111, 119, 132, 120, 127, 110, 105, 108, 106, 105, 103, 100, 92, 84, 32.33366 + 77, 70, 56, 56, 83, 116, 117, 119, 114, 104, 98, 85, 53, 21, 4, 10, 32.33367 + 18, 20, 15, 10, 14, 18, 19, 18, 77, 91, 14, 2, 0, 25, 20, 92, 32.33368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33369 + 255, 255, 255, 11, 23, 49, 81, 66, 48, 42, 56, 82, 101, 105, 108, 79, 32.33370 + 39, 26, 40, 48, 54, 67, 85, 88, 99, 110, 115, 119, 130, 142, 139, 138, 32.33371 + 141, 145, 149, 149, 144, 139, 131, 121, 99, 83, 94, 126, 149, 156, 150, 147, 32.33372 + 135, 117, 69, 105, 112, 79, 161, 204, 230, 205, 157, 122, 99, 84, 88, 100, 32.33373 + 103, 90, 75, 68, 65, 61, 93, 102, 89, 89, 101, 98, 108, 138, 139, 144, 32.33374 + 142, 132, 129, 133, 130, 121, 125, 123, 128, 123, 107, 108, 110, 97, 66, 57, 32.33375 + 60, 64, 59, 66, 73, 64, 71, 72, 80, 85, 73, 59, 69, 91, 111, 121, 32.33376 + 123, 114, 106, 98, 71, 43, 6, 8, 12, 17, 16, 13, 16, 24, 14, 13, 32.33377 + 73, 88, 15, 4, 0, 27, 17, 7, 255, 255, 255, 255, 255, 255, 255, 255, 32.33378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 23, 58, 22, 68, 32.33379 + 91, 76, 72, 93, 97, 75, 28, 26, 29, 48, 68, 69, 72, 89, 88, 95, 32.33380 + 106, 116, 120, 126, 137, 149, 163, 156, 148, 147, 149, 149, 144, 140, 143, 146, 32.33381 + 145, 131, 97, 75, 90, 120, 105, 51, 79, 105, 88, 48, 79, 94, 113, 120, 32.33382 + 122, 115, 111, 110, 104, 95, 92, 86, 83, 86, 94, 95, 90, 84, 96, 115, 32.33383 + 95, 91, 103, 108, 121, 132, 143, 138, 131, 127, 128, 129, 121, 112, 122, 122, 32.33384 + 109, 92, 85, 79, 66, 53, 42, 47, 64, 60, 45, 64, 85, 75, 61, 57, 32.33385 + 64, 81, 83, 72, 62, 61, 93, 109, 121, 120, 112, 102, 80, 58, 22, 14, 32.33386 + 9, 13, 16, 16, 20, 24, 6, 14, 71, 65, 8, 4, 0, 19, 10, 4, 32.33387 + 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33388 + 255, 255, 255, 12, 48, 89, 101, 88, 54, 23, 35, 69, 68, 37, 46, 59, 32.33389 + 66, 69, 76, 79, 90, 111, 118, 125, 131, 135, 139, 145, 149, 150, 146, 141, 32.33390 + 139, 139, 143, 145, 146, 145, 139, 129, 130, 142, 135, 99, 55, 30, 21, 66, 32.33391 + 92, 50, 62, 86, 109, 82, 96, 99, 102, 100, 97, 93, 94, 99, 88, 84, 32.33392 + 82, 81, 76, 76, 92, 113, 135, 135, 95, 89, 108, 125, 144, 135, 137, 130, 32.33393 + 128, 132, 136, 128, 116, 108, 116, 132, 108, 75, 69, 60, 52, 63, 55, 24, 32.33394 + 32, 54, 50, 67, 103, 117, 116, 90, 64, 56, 58, 63, 67, 72, 78, 93, 32.33395 + 106, 109, 104, 95, 81, 69, 46, 24, 7, 11, 17, 19, 21, 23, 16, 37, 32.33396 + 87, 47, 10, 11, 8, 14, 6, 2, 2, 255, 255, 255, 255, 255, 255, 255, 32.33397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 83, 96, 75, 51, 26, 32.33398 + 12, 26, 48, 56, 49, 40, 50, 77, 92, 92, 101, 111, 120, 129, 145, 149, 32.33399 + 149, 148, 152, 158, 155, 147, 143, 145, 146, 147, 143, 138, 133, 132, 141, 140, 32.33400 + 136, 133, 139, 130, 90, 49, 66, 89, 58, 69, 97, 110, 83, 108, 104, 98, 32.33401 + 96, 100, 99, 94, 93, 99, 99, 89, 83, 87, 79, 69, 76, 93, 178, 153, 32.33402 + 98, 90, 101, 115, 153, 160, 132, 127, 131, 144, 145, 131, 116, 110, 117, 157, 32.33403 + 137, 91, 76, 64, 73, 117, 144, 45, 18, 62, 63, 50, 81, 120, 133, 122, 32.33404 + 106, 91, 76, 62, 53, 48, 79, 86, 92, 95, 95, 91, 86, 84, 62, 34, 32.33405 + 9, 9, 17, 20, 21, 21, 9, 41, 86, 24, 4, 8, 8, 6, 5, 5, 32.33406 + 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33407 + 255, 255, 100, 96, 66, 36, 20, 8, 10, 29, 37, 28, 28, 40, 66, 79, 32.33408 + 95, 108, 121, 134, 139, 140, 153, 152, 152, 151, 150, 148, 147, 145, 148, 143, 32.33409 + 137, 130, 127, 126, 126, 128, 116, 120, 122, 120, 124, 126, 113, 95, 67, 97, 32.33410 + 70, 74, 99, 97, 101, 94, 96, 98, 99, 101, 100, 99, 97, 98, 97, 94, 32.33411 + 88, 82, 75, 69, 62, 58, 160, 191, 107, 88, 79, 134, 144, 128, 126, 136, 32.33412 + 140, 139, 134, 123, 135, 165, 183, 191, 151, 93, 77, 84, 83, 85, 95, 50, 32.33413 + 33, 60, 81, 79, 94, 124, 129, 118, 107, 100, 90, 73, 58, 48, 50, 58, 32.33414 + 72, 84, 92, 92, 89, 87, 81, 54, 26, 16, 15, 16, 22, 28, 20, 83, 32.33415 + 68, 10, 6, 16, 8, 11, 10, 14, 12, 89, 255, 255, 255, 255, 255, 255, 32.33416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 78, 37, 10, 22, 17, 32.33417 + 20, 32, 37, 38, 48, 65, 81, 97, 114, 128, 138, 149, 152, 152, 146, 147, 32.33418 + 149, 150, 150, 149, 148, 146, 139, 140, 140, 139, 135, 129, 122, 117, 123, 120, 32.33419 + 112, 106, 108, 116, 119, 118, 71, 74, 93, 103, 99, 98, 98, 101, 98, 99, 32.33420 + 101, 102, 101, 100, 99, 99, 101, 99, 95, 91, 87, 81, 74, 70, 104, 214, 32.33421 + 151, 90, 85, 79, 110, 124, 127, 129, 123, 122, 131, 141, 160, 186, 192, 198, 32.33422 + 171, 123, 96, 89, 82, 77, 44, 53, 74, 90, 86, 79, 100, 132, 128, 116, 32.33423 + 105, 96, 84, 70, 57, 52, 56, 62, 70, 78, 83, 86, 87, 86, 85, 78, 32.33424 + 51, 16, 5, 19, 24, 14, 65, 73, 37, 1, 10, 20, 9, 6, 7, 11, 32.33425 + 10, 7, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33426 + 255, 255, 36, 15, 11, 16, 20, 20, 22, 28, 35, 50, 72, 93, 109, 124, 32.33427 + 140, 147, 149, 152, 151, 150, 144, 145, 148, 150, 151, 150, 150, 148, 141, 142, 32.33428 + 144, 145, 142, 135, 128, 123, 116, 113, 112, 113, 110, 110, 115, 124, 90, 58, 32.33429 + 100, 117, 101, 106, 98, 106, 102, 104, 104, 104, 104, 102, 99, 100, 99, 99, 32.33430 + 98, 96, 93, 86, 79, 76, 50, 194, 190, 100, 117, 75, 91, 122, 113, 121, 32.33431 + 120, 124, 144, 158, 166, 174, 191, 194, 191, 164, 128, 111, 104, 93, 92, 101, 32.33432 + 104, 97, 92, 103, 121, 133, 112, 103, 94, 88, 78, 69, 65, 66, 84, 83, 32.33433 + 82, 79, 77, 76, 75, 75, 91, 77, 60, 43, 21, 11, 26, 50, 83, 45, 32.33434 + 8, 1, 11, 14, 7, 5, 5, 9, 10, 8, 6, 255, 255, 255, 255, 255, 32.33435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 7, 8, 14, 21, 21, 18, 32.33436 + 15, 19, 36, 62, 91, 110, 126, 138, 148, 148, 145, 144, 144, 144, 145, 148, 32.33437 + 150, 151, 151, 150, 148, 146, 141, 139, 137, 134, 132, 134, 133, 135, 129, 126, 32.33438 + 127, 127, 117, 104, 105, 117, 120, 81, 90, 104, 106, 111, 101, 101, 105, 106, 32.33439 + 106, 106, 103, 102, 99, 99, 94, 95, 95, 96, 94, 89, 81, 78, 89, 58, 32.33440 + 210, 174, 120, 108, 83, 102, 102, 121, 129, 131, 147, 155, 152, 152, 169, 173, 32.33441 + 193, 190, 157, 142, 143, 132, 138, 136, 127, 123, 128, 132, 118, 98, 96, 90, 32.33442 + 87, 86, 81, 77, 78, 83, 104, 101, 94, 87, 80, 76, 74, 74, 69, 74, 32.33443 + 84, 77, 37, 8, 43, 103, 51, 13, 0, 10, 6, 1, 7, 8, 6, 9, 32.33444 + 9, 6, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33445 + 255, 18, 24, 24, 17, 10, 30, 20, 12, 23, 49, 82, 107, 118, 127, 135, 32.33446 + 140, 139, 137, 140, 144, 146, 145, 145, 147, 146, 144, 141, 138, 136, 126, 122, 32.33447 + 118, 117, 119, 123, 128, 131, 155, 147, 139, 133, 118, 104, 108, 121, 131, 124, 32.33448 + 87, 94, 115, 105, 101, 97, 104, 105, 105, 105, 103, 100, 96, 95, 90, 91, 32.33449 + 92, 94, 95, 93, 88, 87, 85, 83, 109, 203, 197, 97, 93, 88, 102, 124, 32.33450 + 132, 128, 132, 140, 147, 157, 156, 165, 195, 204, 181, 168, 173, 166, 148, 144, 32.33451 + 137, 130, 125, 119, 114, 111, 103, 101, 100, 101, 97, 93, 92, 97, 98, 97, 32.33452 + 93, 89, 85, 83, 82, 82, 82, 80, 72, 65, 68, 75, 66, 51, 25, 2, 32.33453 + 4, 13, 0, 0, 12, 7, 7, 8, 5, 3, 5, 11, 255, 255, 255, 255, 32.33454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 9, 8, 10, 21, 31, 41, 23, 32.33455 + 17, 38, 74, 104, 119, 125, 134, 138, 137, 132, 131, 134, 137, 136, 134, 135, 32.33456 + 133, 132, 129, 127, 124, 123, 111, 110, 111, 113, 115, 119, 121, 122, 136, 136, 32.33457 + 140, 141, 136, 127, 123, 127, 128, 142, 97, 101, 119, 95, 98, 101, 104, 106, 32.33458 + 108, 109, 107, 102, 98, 96, 86, 86, 86, 86, 88, 90, 90, 90, 82, 85, 32.33459 + 94, 121, 200, 222, 118, 130, 102, 124, 135, 134, 137, 141, 149, 165, 174, 192, 32.33460 + 219, 224, 205, 190, 184, 178, 168, 153, 137, 126, 119, 119, 129, 142, 128, 124, 32.33461 + 121, 122, 117, 109, 104, 104, 97, 96, 93, 91, 87, 84, 79, 79, 98, 83, 32.33462 + 69, 72, 84, 81, 51, 21, 37, 17, 9, 7, 0, 7, 17, 3, 4, 5, 32.33463 + 3, 1, 5, 10, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33464 + 255, 11, 10, 14, 36, 59, 42, 22, 21, 55, 95, 116, 122, 126, 138, 137, 32.33465 + 132, 126, 124, 125, 123, 117, 119, 118, 117, 116, 116, 117, 117, 117, 105, 106, 32.33466 + 108, 111, 113, 116, 116, 116, 110, 119, 131, 139, 143, 139, 125, 114, 139, 117, 32.33467 + 92, 103, 112, 98, 97, 107, 110, 114, 119, 122, 121, 115, 108, 104, 97, 93, 32.33468 + 88, 83, 82, 83, 84, 85, 95, 58, 93, 103, 107, 215, 226, 159, 137, 142, 32.33469 + 141, 142, 148, 147, 151, 165, 194, 224, 243, 238, 223, 198, 173, 163, 156, 149, 32.33470 + 144, 145, 147, 145, 135, 126, 139, 133, 128, 128, 125, 118, 111, 109, 108, 106, 32.33471 + 102, 97, 90, 84, 80, 77, 71, 85, 96, 85, 51, 28, 43, 74, 60, 39, 32.33472 + 20, 8, 2, 9, 12, 2, 3, 4, 5, 6, 10, 14, 10, 255, 255, 255, 32.33473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 13, 17, 36, 59, 35, 17, 32.33474 + 22, 63, 103, 118, 120, 126, 125, 125, 120, 118, 120, 122, 118, 110, 109, 108, 32.33475 + 107, 108, 111, 114, 117, 118, 106, 104, 102, 102, 103, 107, 111, 113, 125, 127, 32.33476 + 124, 120, 122, 123, 111, 95, 157, 79, 76, 96, 99, 107, 98, 109, 120, 125, 32.33477 + 131, 135, 133, 128, 118, 114, 117, 111, 99, 88, 82, 80, 80, 81, 87, 88, 32.33478 + 85, 89, 68, 90, 179, 226, 194, 173, 143, 133, 140, 143, 152, 172, 195, 235, 32.33479 + 246, 237, 224, 193, 155, 141, 142, 144, 139, 129, 128, 138, 142, 138, 134, 125, 32.33480 + 119, 121, 124, 121, 117, 115, 111, 110, 107, 102, 99, 95, 93, 92, 84, 84, 32.33481 + 60, 31, 37, 72, 85, 72, 66, 52, 32, 16, 6, 2, 3, 3, 4, 7, 32.33482 + 9, 13, 19, 21, 13, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33483 + 175, 14, 14, 20, 31, 39, 12, 17, 57, 84, 99, 119, 119, 124, 118, 122, 32.33484 + 120, 111, 102, 102, 103, 101, 108, 98, 100, 120, 134, 133, 123, 116, 96, 95, 32.33485 + 95, 93, 94, 97, 104, 108, 115, 116, 132, 131, 117, 132, 136, 108, 150, 83, 32.33486 + 79, 96, 105, 113, 104, 111, 128, 130, 136, 139, 138, 135, 128, 126, 128, 124, 32.33487 + 117, 111, 105, 97, 87, 80, 78, 80, 83, 85, 84, 89, 104, 120, 188, 218, 32.33488 + 199, 165, 170, 174, 169, 180, 208, 232, 246, 229, 191, 158, 143, 137, 134, 128, 32.33489 + 124, 121, 120, 122, 123, 122, 121, 118, 117, 119, 122, 121, 115, 109, 108, 110, 32.33490 + 111, 107, 99, 90, 82, 77, 32, 42, 57, 74, 84, 84, 78, 72, 66, 61, 32.33491 + 52, 41, 30, 20, 13, 9, 13, 8, 7, 19, 27, 24, 15, 8, 255, 255, 32.33492 + 255, 255, 255, 255, 255, 255, 255, 255, 18, 17, 16, 18, 22, 25, 23, 31, 32.33493 + 72, 98, 109, 123, 122, 127, 124, 115, 106, 102, 99, 94, 90, 91, 98, 110, 32.33494 + 126, 125, 105, 93, 86, 74, 39, 37, 44, 69, 102, 125, 130, 123, 117, 124, 32.33495 + 123, 123, 129, 132, 132, 135, 159, 101, 89, 91, 91, 104, 111, 128, 132, 134, 32.33496 + 140, 144, 145, 141, 137, 135, 130, 126, 121, 115, 110, 101, 91, 83, 73, 74, 32.33497 + 78, 84, 88, 92, 98, 106, 79, 143, 183, 195, 201, 189, 193, 227, 229, 215, 32.33498 + 194, 176, 168, 161, 146, 129, 125, 121, 118, 117, 117, 117, 117, 117, 132, 125, 32.33499 + 118, 113, 114, 113, 110, 107, 111, 110, 102, 89, 69, 51, 37, 30, 63, 66, 32.33500 + 72, 80, 86, 87, 83, 81, 80, 81, 79, 75, 64, 50, 35, 26, 12, 10, 32.33501 + 16, 29, 37, 29, 13, 3, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33502 + 19, 21, 20, 19, 16, 14, 21, 33, 81, 110, 116, 124, 120, 127, 126, 112, 32.33503 + 99, 96, 93, 90, 94, 105, 113, 109, 110, 88, 52, 43, 38, 15, 51, 57, 32.33504 + 74, 110, 157, 189, 187, 172, 157, 174, 165, 152, 150, 124, 111, 140, 118, 93, 32.33505 + 96, 99, 99, 110, 117, 131, 136, 140, 144, 149, 150, 149, 146, 144, 137, 133, 32.33506 + 130, 126, 121, 112, 101, 93, 80, 74, 72, 77, 84, 89, 93, 100, 88, 85, 32.33507 + 87, 133, 197, 215, 213, 229, 229, 223, 208, 182, 160, 147, 141, 136, 149, 144, 32.33508 + 137, 130, 124, 120, 114, 111, 113, 114, 118, 124, 129, 127, 120, 114, 99, 79, 32.33509 + 49, 26, 22, 41, 71, 93, 95, 93, 89, 90, 91, 94, 94, 94, 99, 101, 32.33510 + 102, 100, 90, 75, 59, 47, 24, 22, 25, 33, 36, 25, 10, 0, 4, 86, 32.33511 + 255, 255, 255, 255, 255, 255, 255, 255, 17, 21, 22, 21, 18, 14, 10, 27, 32.33512 + 85, 119, 126, 130, 122, 127, 114, 106, 96, 90, 89, 94, 107, 122, 106, 87, 32.33513 + 75, 55, 29, 43, 69, 67, 46, 52, 63, 87, 130, 174, 193, 191, 183, 174, 32.33514 + 147, 131, 136, 135, 143, 168, 89, 90, 99, 108, 112, 120, 124, 129, 141, 143, 32.33515 + 148, 151, 153, 152, 150, 149, 144, 141, 139, 137, 132, 125, 114, 106, 99, 87, 32.33516 + 74, 69, 71, 78, 91, 101, 91, 99, 100, 107, 118, 128, 167, 223, 216, 195, 32.33517 + 166, 146, 143, 145, 140, 129, 137, 135, 131, 131, 129, 126, 123, 120, 122, 120, 32.33518 + 117, 109, 98, 79, 59, 46, 27, 42, 62, 83, 95, 104, 107, 108, 109, 106, 32.33519 + 101, 100, 100, 102, 103, 102, 103, 100, 95, 90, 83, 73, 63, 56, 44, 35, 32.33520 + 28, 25, 22, 13, 5, 2, 1, 2, 255, 255, 255, 255, 255, 255, 255, 255, 32.33521 + 14, 15, 17, 17, 17, 15, 9, 26, 87, 128, 138, 139, 125, 128, 99, 95, 32.33522 + 87, 83, 91, 101, 102, 96, 73, 61, 65, 63, 49, 66, 123, 165, 103, 99, 32.33523 + 89, 91, 127, 181, 211, 215, 204, 165, 136, 124, 122, 133, 125, 92, 116, 117, 32.33524 + 105, 104, 112, 122, 135, 139, 144, 146, 149, 152, 152, 153, 151, 150, 148, 147, 32.33525 + 144, 142, 140, 133, 124, 116, 112, 101, 84, 73, 66, 68, 80, 93, 110, 101, 32.33526 + 92, 98, 117, 125, 121, 120, 74, 112, 146, 152, 131, 107, 95, 91, 94, 93, 32.33527 + 89, 86, 85, 82, 77, 75, 76, 61, 44, 33, 41, 61, 86, 101, 122, 120, 32.33528 + 117, 111, 105, 100, 99, 99, 111, 109, 108, 107, 107, 105, 101, 99, 94, 89, 32.33529 + 80, 74, 71, 65, 58, 52, 51, 40, 27, 19, 11, 4, 1, 3, 4, 8, 32.33530 + 93, 255, 255, 255, 255, 255, 255, 255, 12, 10, 9, 11, 14, 16, 13, 22, 32.33531 + 78, 123, 137, 136, 119, 119, 100, 87, 78, 85, 100, 102, 82, 63, 82, 69, 32.33532 + 61, 64, 61, 58, 82, 120, 116, 116, 113, 123, 166, 216, 229, 214, 182, 157, 32.33533 + 152, 143, 125, 134, 134, 99, 123, 127, 104, 104, 120, 127, 141, 145, 148, 149, 32.33534 + 152, 154, 155, 156, 155, 154, 153, 149, 146, 146, 144, 140, 132, 126, 118, 110, 32.33535 + 101, 91, 78, 70, 71, 78, 88, 98, 105, 104, 107, 115, 116, 109, 121, 109, 32.33536 + 94, 93, 102, 110, 99, 84, 104, 102, 98, 95, 94, 92, 90, 87, 78, 90, 32.33537 + 106, 120, 126, 123, 113, 106, 107, 109, 114, 118, 122, 124, 128, 131, 111, 112, 32.33538 + 111, 111, 108, 104, 96, 94, 93, 89, 83, 81, 79, 74, 64, 57, 47, 39, 32.33539 + 30, 24, 15, 5, 0, 3, 3, 9, 14, 13, 255, 255, 255, 255, 255, 255, 32.33540 + 13, 11, 8, 11, 19, 24, 14, 12, 58, 103, 123, 126, 109, 107, 102, 82, 32.33541 + 76, 90, 92, 77, 68, 75, 122, 107, 69, 56, 67, 52, 37, 54, 81, 103, 32.33542 + 124, 147, 196, 245, 251, 235, 229, 202, 171, 140, 115, 107, 116, 120, 102, 115, 32.33543 + 97, 111, 134, 133, 143, 146, 153, 155, 157, 160, 162, 163, 164, 164, 161, 157, 32.33544 + 153, 151, 151, 148, 142, 138, 131, 124, 116, 110, 99, 84, 74, 69, 79, 90, 32.33545 + 101, 100, 94, 107, 126, 130, 135, 138, 136, 125, 114, 110, 108, 108, 90, 90, 32.33546 + 90, 94, 101, 107, 111, 112, 111, 108, 105, 102, 102, 107, 113, 117, 121, 120, 32.33547 + 121, 119, 115, 114, 114, 116, 116, 115, 112, 111, 107, 104, 97, 95, 98, 94, 32.33548 + 88, 86, 87, 83, 73, 66, 54, 48, 40, 32, 20, 8, 2, 5, 4, 7, 32.33549 + 8, 8, 90, 255, 255, 255, 255, 255, 16, 16, 14, 19, 28, 35, 18, 6, 32.33550 + 45, 89, 114, 124, 108, 106, 93, 74, 75, 89, 71, 40, 61, 111, 129, 135, 32.33551 + 95, 66, 81, 76, 69, 97, 107, 134, 149, 151, 174, 218, 242, 238, 193, 170, 32.33552 + 136, 139, 159, 135, 99, 98, 98, 113, 93, 111, 136, 131, 145, 153, 157, 159, 32.33553 + 162, 165, 168, 172, 174, 176, 171, 166, 162, 160, 158, 157, 152, 148, 148, 136, 32.33554 + 124, 120, 113, 99, 83, 74, 69, 77, 100, 114, 108, 108, 115, 114, 121, 127, 32.33555 + 132, 131, 131, 131, 129, 128, 134, 129, 123, 118, 115, 113, 112, 111, 116, 117, 32.33556 + 120, 123, 122, 124, 125, 125, 119, 121, 125, 126, 123, 120, 117, 117, 118, 116, 32.33557 + 111, 108, 107, 105, 103, 104, 97, 90, 80, 76, 76, 77, 71, 67, 67, 59, 32.33558 + 47, 35, 20, 7, 3, 7, 10, 7, 4, 5, 9, 255, 255, 255, 255, 255, 32.33559 + 24, 14, 10, 19, 29, 29, 22, 4, 24, 74, 100, 103, 104, 109, 94, 82, 32.33560 + 63, 47, 43, 56, 86, 111, 125, 133, 126, 106, 92, 98, 110, 116, 150, 149, 32.33561 + 152, 151, 151, 172, 192, 191, 162, 144, 124, 114, 113, 110, 97, 84, 101, 96, 32.33562 + 100, 117, 136, 148, 154, 156, 159, 164, 171, 174, 175, 176, 176, 176, 175, 179, 32.33563 + 180, 176, 170, 165, 159, 153, 147, 149, 142, 132, 122, 114, 99, 85, 71, 73, 32.33564 + 86, 106, 119, 120, 117, 117, 127, 131, 133, 129, 128, 130, 130, 128, 132, 133, 32.33565 + 133, 132, 130, 128, 124, 122, 125, 127, 128, 128, 123, 122, 123, 125, 128, 128, 32.33566 + 129, 128, 125, 121, 117, 115, 120, 117, 113, 111, 111, 110, 108, 108, 105, 100, 32.33567 + 91, 84, 78, 72, 69, 67, 62, 53, 37, 23, 16, 12, 7, 0, 0, 6, 32.33568 + 19, 16, 2, 86, 255, 255, 255, 255, 19, 17, 20, 24, 22, 16, 23, 13, 32.33569 + 19, 52, 83, 92, 95, 106, 86, 68, 46, 37, 42, 60, 83, 101, 108, 116, 32.33570 + 115, 102, 97, 109, 122, 127, 136, 122, 128, 143, 144, 148, 166, 179, 112, 136, 32.33571 + 151, 134, 96, 76, 89, 110, 105, 100, 105, 121, 141, 153, 158, 160, 166, 171, 32.33572 + 177, 180, 183, 184, 185, 187, 183, 188, 189, 184, 178, 172, 164, 156, 158, 156, 32.33573 + 149, 137, 129, 122, 110, 99, 88, 81, 80, 88, 98, 106, 116, 124, 124, 129, 32.33574 + 132, 131, 132, 136, 133, 128, 132, 134, 133, 134, 132, 130, 127, 127, 123, 126, 32.33575 + 127, 128, 125, 125, 126, 130, 128, 129, 130, 131, 130, 130, 129, 128, 123, 120, 32.33576 + 116, 113, 112, 111, 108, 108, 107, 103, 95, 87, 80, 74, 69, 67, 61, 55, 32.33577 + 40, 26, 15, 10, 6, 2, 0, 4, 11, 13, 9, 3, 85, 255, 255, 255, 32.33578 + 16, 18, 20, 19, 20, 21, 33, 33, 22, 33, 68, 84, 87, 102, 80, 58, 32.33579 + 38, 36, 48, 65, 81, 90, 82, 92, 94, 92, 95, 109, 119, 123, 140, 148, 32.33580 + 147, 132, 126, 144, 144, 117, 231, 181, 119, 91, 95, 109, 110, 100, 109, 104, 32.33581 + 108, 125, 143, 155, 161, 164, 174, 179, 183, 189, 192, 196, 202, 204, 202, 206, 32.33582 + 207, 202, 194, 186, 177, 166, 164, 161, 151, 138, 130, 125, 118, 111, 104, 94, 32.33583 + 83, 80, 85, 95, 109, 121, 129, 131, 134, 134, 133, 137, 136, 133, 134, 135, 32.33584 + 135, 135, 134, 133, 131, 129, 126, 128, 129, 130, 129, 129, 131, 132, 125, 126, 32.33585 + 126, 126, 127, 128, 128, 129, 126, 124, 119, 116, 115, 112, 109, 107, 109, 106, 32.33586 + 100, 93, 86, 79, 72, 68, 67, 63, 51, 37, 22, 13, 10, 11, 1, 4, 32.33587 + 4, 17, 29, 9, 0, 255, 255, 255, 10, 16, 18, 14, 20, 28, 33, 46, 32.33588 + 27, 21, 58, 81, 80, 93, 79, 65, 54, 53, 60, 68, 78, 86, 91, 98, 32.33589 + 103, 105, 113, 123, 128, 127, 139, 129, 141, 148, 115, 90, 119, 163, 85, 96, 32.33590 + 108, 110, 102, 100, 107, 114, 108, 103, 107, 125, 145, 158, 164, 168, 180, 184, 32.33591 + 191, 198, 205, 211, 218, 223, 222, 226, 224, 218, 210, 200, 187, 175, 165, 157, 32.33592 + 144, 132, 123, 118, 116, 115, 109, 104, 98, 95, 94, 97, 101, 105, 127, 132, 32.33593 + 135, 135, 132, 132, 133, 134, 133, 135, 134, 134, 132, 131, 127, 127, 126, 128, 32.33594 + 128, 129, 128, 129, 129, 130, 127, 126, 124, 122, 120, 120, 121, 120, 125, 123, 32.33595 + 119, 117, 115, 114, 110, 108, 111, 109, 104, 98, 91, 84, 75, 70, 69, 66, 32.33596 + 60, 44, 24, 11, 11, 17, 5, 9, 8, 34, 61, 31, 0, 255, 255, 255, 32.33597 + 3, 9, 16, 15, 15, 16, 14, 35, 21, 12, 50, 76, 75, 82, 73, 74, 32.33598 + 77, 77, 72, 71, 80, 92, 102, 108, 114, 120, 127, 132, 133, 132, 126, 126, 32.33599 + 114, 88, 82, 112, 135, 127, 120, 111, 101, 97, 102, 111, 118, 121, 106, 102, 32.33600 + 106, 125, 146, 161, 169, 174, 185, 191, 200, 210, 218, 226, 233, 238, 236, 237, 32.33601 + 234, 226, 217, 207, 192, 179, 168, 157, 140, 126, 115, 110, 111, 115, 110, 113, 32.33602 + 115, 114, 109, 104, 97, 93, 104, 115, 129, 138, 136, 133, 133, 136, 136, 136, 32.33603 + 136, 135, 133, 130, 127, 125, 123, 123, 123, 125, 127, 128, 129, 129, 131, 131, 32.33604 + 128, 126, 123, 122, 121, 121, 122, 120, 119, 117, 116, 115, 111, 110, 112, 110, 32.33605 + 106, 101, 95, 86, 79, 74, 66, 63, 57, 43, 20, 3, 3, 12, 8, 14, 32.33606 + 17, 48, 85, 58, 8, 86, 255, 255, 16, 4, 9, 15, 12, 7, 1, 21, 32.33607 + 16, 13, 47, 78, 81, 80, 69, 78, 89, 91, 83, 78, 87, 100, 100, 107, 32.33608 + 115, 121, 125, 125, 123, 122, 127, 79, 68, 103, 121, 113, 101, 96, 99, 99, 32.33609 + 100, 107, 113, 118, 122, 122, 107, 104, 109, 129, 151, 166, 174, 179, 188, 196, 32.33610 + 209, 219, 227, 233, 238, 240, 241, 240, 235, 226, 220, 212, 198, 185, 172, 158, 32.33611 + 140, 123, 110, 103, 106, 114, 111, 119, 124, 122, 117, 113, 107, 100, 81, 92, 32.33612 + 111, 132, 140, 141, 139, 139, 142, 142, 141, 141, 138, 136, 132, 131, 121, 121, 32.33613 + 121, 125, 128, 132, 132, 132, 129, 129, 128, 127, 126, 125, 124, 124, 121, 120, 32.33614 + 119, 118, 117, 115, 112, 111, 112, 109, 105, 101, 95, 88, 82, 77, 68, 64, 32.33615 + 58, 45, 22, 2, 1, 10, 2, 7, 12, 44, 85, 74, 23, 0, 255, 255, 32.33616 + 54, 35, 22, 19, 17, 13, 7, 18, 19, 21, 44, 79, 90, 83, 78, 81, 32.33617 + 89, 94, 92, 90, 95, 105, 111, 115, 121, 123, 118, 110, 103, 101, 54, 80, 32.33618 + 114, 123, 111, 110, 117, 116, 119, 114, 110, 115, 126, 130, 122, 113, 109, 105, 32.33619 + 110, 129, 150, 164, 172, 177, 186, 195, 209, 220, 226, 227, 228, 228, 229, 226, 32.33620 + 221, 215, 211, 207, 196, 185, 171, 156, 136, 119, 102, 93, 96, 105, 113, 124, 32.33621 + 130, 131, 129, 127, 123, 118, 94, 87, 90, 109, 129, 140, 142, 142, 144, 144, 32.33622 + 144, 146, 144, 143, 140, 140, 130, 129, 127, 130, 132, 134, 132, 132, 126, 128, 32.33623 + 128, 128, 127, 126, 125, 125, 124, 123, 121, 120, 120, 117, 112, 111, 110, 108, 32.33624 + 104, 100, 95, 90, 84, 81, 74, 67, 61, 49, 28, 6, 4, 13, 0, 3, 32.33625 + 7, 30, 72, 88, 46, 0, 255, 255, 84, 84, 56, 33, 22, 19, 19, 19, 32.33626 + 21, 23, 38, 73, 91, 82, 92, 87, 86, 92, 98, 100, 102, 104, 107, 109, 32.33627 + 111, 108, 94, 77, 65, 61, 106, 94, 104, 118, 109, 100, 110, 121, 121, 122, 32.33628 + 123, 126, 128, 125, 121, 118, 108, 105, 110, 127, 147, 161, 167, 172, 181, 191, 32.33629 + 204, 215, 218, 217, 213, 211, 207, 205, 199, 195, 194, 192, 185, 174, 167, 150, 32.33630 + 130, 112, 95, 84, 87, 96, 111, 125, 137, 139, 140, 141, 137, 130, 125, 98, 32.33631 + 76, 85, 111, 132, 141, 143, 143, 143, 145, 147, 148, 147, 146, 146, 143, 140, 32.33632 + 136, 135, 136, 135, 131, 129, 129, 131, 133, 133, 131, 129, 126, 126, 128, 127, 32.33633 + 124, 123, 121, 117, 112, 109, 110, 108, 103, 99, 95, 90, 84, 82, 73, 66, 32.33634 + 59, 48, 26, 5, 2, 9, 8, 7, 10, 27, 69, 104, 72, 6, 85, 255, 32.33635 + 176, 14, 48, 70, 75, 74, 68, 67, 56, 57, 78, 93, 100, 107, 91, 92, 32.33636 + 95, 98, 99, 97, 94, 90, 73, 70, 68, 70, 77, 91, 104, 113, 127, 123, 32.33637 + 118, 114, 115, 118, 122, 125, 128, 118, 122, 127, 123, 124, 126, 120, 114, 110, 32.33638 + 113, 126, 135, 140, 151, 162, 171, 177, 184, 190, 198, 204, 204, 201, 191, 188, 32.33639 + 185, 186, 188, 186, 179, 172, 163, 146, 128, 99, 57, 36, 43, 53, 80, 108, 32.33640 + 136, 148, 153, 156, 150, 138, 129, 123, 98, 77, 71, 111, 154, 136, 141, 144, 32.33641 + 146, 145, 142, 140, 141, 143, 147, 144, 141, 140, 138, 137, 134, 131, 132, 132, 32.33642 + 132, 131, 130, 130, 130, 131, 130, 128, 123, 122, 121, 119, 114, 111, 112, 109, 32.33643 + 104, 99, 96, 92, 88, 85, 77, 69, 59, 47, 28, 8, 0, 0, 6, 2, 32.33644 + 6, 37, 65, 87, 81, 23, 0, 255, 255, 4, 1, 19, 23, 29, 61, 71, 32.33645 + 73, 77, 94, 100, 96, 98, 104, 99, 92, 84, 77, 69, 60, 55, 69, 75, 32.33646 + 86, 98, 109, 118, 125, 127, 124, 122, 121, 122, 123, 124, 124, 124, 124, 120, 32.33647 + 128, 132, 125, 124, 126, 121, 112, 111, 113, 123, 127, 130, 138, 148, 149, 160, 32.33648 + 173, 184, 190, 191, 190, 188, 188, 185, 184, 182, 181, 178, 173, 169, 159, 147, 32.33649 + 109, 56, 12, 0, 2, 14, 38, 71, 107, 129, 142, 151, 150, 143, 137, 130, 32.33650 + 107, 85, 70, 100, 146, 138, 145, 146, 147, 145, 142, 139, 140, 141, 144, 142, 32.33651 + 139, 138, 138, 137, 134, 132, 133, 134, 133, 132, 131, 131, 131, 131, 131, 127, 32.33652 + 122, 119, 120, 120, 117, 116, 112, 109, 104, 99, 96, 92, 88, 85, 79, 72, 32.33653 + 61, 48, 28, 9, 0, 0, 1, 3, 8, 36, 60, 87, 86, 34, 0, 255, 32.33654 + 255, 25, 0, 0, 1, 5, 6, 28, 40, 46, 55, 55, 46, 46, 41, 43, 32.33655 + 47, 55, 66, 76, 84, 87, 97, 104, 115, 125, 131, 132, 130, 126, 126, 126, 32.33656 + 128, 130, 129, 127, 124, 120, 122, 124, 135, 138, 128, 125, 127, 122, 109, 111, 32.33657 + 115, 119, 118, 119, 123, 128, 138, 144, 154, 165, 170, 175, 177, 177, 179, 178, 32.33658 + 177, 176, 173, 171, 168, 167, 148, 141, 88, 24, 0, 0, 14, 37, 46, 75, 32.33659 + 108, 132, 148, 160, 161, 154, 144, 136, 116, 95, 69, 86, 137, 144, 149, 148, 32.33660 + 148, 146, 142, 139, 139, 140, 140, 138, 137, 137, 138, 138, 136, 135, 134, 135, 32.33661 + 134, 133, 132, 132, 132, 131, 130, 126, 122, 119, 118, 119, 119, 119, 111, 108, 32.33662 + 103, 99, 95, 91, 87, 85, 81, 76, 64, 49, 28, 10, 2, 1, 0, 1, 32.33663 + 8, 32, 57, 88, 96, 46, 0, 255, 255, 35, 12, 2, 17, 12, 27, 56, 32.33664 + 73, 77, 82, 81, 78, 83, 101, 100, 100, 103, 109, 114, 117, 119, 131, 131, 32.33665 + 131, 130, 129, 128, 126, 125, 135, 134, 133, 131, 128, 125, 122, 120, 128, 127, 32.33666 + 135, 136, 129, 129, 129, 121, 107, 115, 121, 120, 117, 114, 114, 114, 128, 129, 32.33667 + 137, 152, 165, 171, 172, 172, 170, 166, 164, 165, 167, 168, 166, 163, 147, 129, 32.33668 + 63, 10, 5, 8, 21, 54, 76, 90, 106, 122, 140, 154, 156, 151, 146, 138, 32.33669 + 121, 103, 68, 74, 131, 152, 153, 151, 150, 147, 144, 141, 140, 140, 138, 137, 32.33670 + 136, 137, 139, 140, 139, 139, 135, 137, 136, 134, 134, 133, 132, 133, 129, 127, 32.33671 + 124, 122, 119, 119, 117, 118, 109, 106, 101, 97, 94, 91, 87, 84, 82, 77, 32.33672 + 65, 47, 27, 10, 2, 0, 0, 0, 6, 28, 55, 92, 103, 56, 2, 255, 32.33673 + 255, 14, 11, 0, 25, 16, 32, 68, 92, 96, 100, 102, 103, 110, 95, 97, 32.33674 + 103, 113, 124, 132, 138, 140, 134, 132, 127, 125, 125, 129, 132, 135, 141, 136, 32.33675 + 131, 126, 123, 123, 125, 127, 135, 129, 131, 130, 128, 133, 132, 118, 107, 120, 32.33676 + 128, 125, 122, 120, 114, 106, 97, 90, 98, 120, 147, 161, 166, 167, 166, 161, 32.33677 + 157, 160, 166, 167, 163, 156, 137, 104, 45, 23, 40, 39, 46, 85, 108, 103, 32.33678 + 101, 112, 135, 156, 161, 156, 147, 139, 125, 109, 69, 70, 126, 152, 156, 153, 32.33679 + 150, 148, 146, 145, 143, 143, 141, 139, 139, 140, 142, 143, 142, 141, 138, 138, 32.33680 + 137, 135, 135, 134, 133, 133, 129, 129, 128, 126, 122, 118, 113, 112, 107, 105, 32.33681 + 101, 97, 93, 90, 86, 84, 81, 78, 64, 44, 24, 10, 3, 0, 0, 0, 32.33682 + 3, 29, 56, 93, 105, 62, 5, 85, 255, 15, 21, 1, 23, 10, 33, 78, 32.33683 + 110, 117, 121, 122, 120, 126, 125, 126, 126, 130, 133, 132, 130, 127, 127, 127, 32.33684 + 126, 126, 129, 132, 135, 136, 136, 133, 126, 122, 123, 126, 132, 135, 136, 129, 32.33685 + 129, 127, 128, 137, 134, 116, 109, 126, 135, 134, 132, 129, 116, 99, 59, 41, 32.33686 + 34, 53, 87, 118, 144, 159, 165, 160, 157, 159, 163, 162, 156, 149, 127, 89, 32.33687 + 52, 59, 85, 80, 81, 111, 131, 119, 111, 120, 144, 163, 168, 163, 152, 140, 32.33688 + 125, 110, 73, 72, 125, 146, 155, 151, 147, 145, 145, 146, 145, 144, 143, 141, 32.33689 + 140, 141, 143, 143, 142, 141, 140, 139, 138, 137, 136, 135, 134, 134, 128, 131, 32.33690 + 131, 129, 124, 116, 111, 110, 109, 105, 101, 97, 94, 92, 88, 86, 80, 78, 32.33691 + 64, 43, 22, 11, 4, 0, 0, 0, 6, 39, 61, 87, 101, 69, 6, 0, 32.33692 + 255, 29, 26, 21, 14, 11, 35, 81, 114, 121, 124, 125, 123, 126, 123, 122, 32.33693 + 122, 125, 128, 128, 126, 123, 125, 126, 126, 128, 129, 129, 129, 129, 129, 128, 32.33694 + 127, 126, 127, 130, 132, 135, 133, 131, 133, 131, 130, 138, 136, 118, 112, 129, 32.33695 + 140, 139, 139, 138, 117, 92, 41, 28, 24, 41, 67, 92, 119, 139, 154, 156, 32.33696 + 159, 160, 157, 153, 148, 146, 133, 100, 80, 89, 96, 83, 74, 81, 113, 109, 32.33697 + 110, 126, 146, 158, 158, 153, 152, 139, 122, 108, 79, 83, 130, 143, 150, 145, 32.33698 + 142, 141, 143, 145, 145, 144, 144, 143, 141, 141, 141, 141, 140, 139, 142, 141, 32.33699 + 140, 139, 137, 136, 135, 134, 128, 130, 130, 127, 122, 116, 113, 113, 111, 109, 32.33700 + 105, 101, 98, 95, 91, 89, 79, 78, 66, 44, 23, 14, 8, 2, 1, 0, 32.33701 + 16, 54, 66, 77, 96, 77, 8, 0, 255, 20, 0, 19, 2, 17, 34, 78, 32.33702 + 106, 107, 110, 113, 116, 120, 119, 117, 117, 119, 120, 122, 119, 118, 124, 123, 32.33703 + 123, 123, 125, 126, 129, 130, 126, 127, 130, 132, 132, 131, 130, 129, 127, 131, 32.33704 + 139, 136, 131, 136, 135, 119, 114, 131, 142, 142, 143, 141, 116, 85, 37, 46, 32.33705 + 69, 99, 113, 109, 108, 112, 137, 147, 157, 157, 149, 143, 142, 146, 124, 104, 32.33706 + 101, 110, 109, 100, 92, 82, 88, 95, 113, 137, 158, 166, 165, 162, 149, 135, 32.33707 + 117, 107, 85, 94, 140, 145, 146, 140, 136, 138, 140, 144, 144, 144, 145, 143, 32.33708 + 141, 140, 140, 140, 138, 136, 142, 142, 140, 139, 137, 136, 135, 135, 127, 129, 32.33709 + 128, 125, 119, 115, 115, 118, 114, 111, 107, 104, 102, 98, 94, 92, 79, 78, 32.33710 + 66, 42, 24, 15, 10, 4, 1, 4, 25, 64, 67, 69, 90, 83, 8, 0, 32.33711 + 255, 15, 20, 24, 22, 18, 26, 63, 89, 97, 104, 104, 102, 106, 109, 113, 32.33712 + 116, 118, 119, 122, 126, 130, 127, 124, 122, 122, 124, 126, 128, 129, 129, 132, 32.33713 + 134, 133, 129, 128, 129, 133, 137, 138, 139, 140, 139, 136, 133, 132, 111, 124, 32.33714 + 137, 144, 148, 144, 122, 98, 57, 80, 99, 113, 130, 144, 133, 110, 113, 124, 32.33715 + 136, 142, 145, 144, 138, 129, 122, 119, 116, 111, 106, 103, 101, 102, 84, 84, 32.33716 + 95, 123, 155, 169, 165, 157, 141, 145, 123, 89, 87, 120, 145, 145, 150, 139, 32.33717 + 131, 132, 137, 145, 146, 144, 145, 143, 143, 143, 144, 143, 140, 137, 137, 138, 32.33718 + 137, 137, 135, 134, 133, 133, 124, 127, 127, 125, 120, 115, 114, 116, 117, 113, 32.33719 + 108, 104, 99, 93, 88, 83, 76, 71, 62, 47, 28, 16, 9, 6, 2, 6, 32.33720 + 18, 65, 93, 50, 83, 83, 16, 0, 255, 13, 19, 24, 22, 18, 22, 59, 32.33721 + 86, 94, 99, 100, 100, 106, 113, 116, 118, 120, 120, 122, 125, 128, 127, 125, 32.33722 + 123, 123, 125, 128, 130, 131, 129, 130, 131, 130, 129, 130, 132, 134, 139, 139, 32.33723 + 140, 140, 140, 139, 138, 138, 118, 126, 135, 143, 149, 147, 135, 122, 88, 101, 32.33724 + 115, 123, 135, 142, 132, 114, 110, 118, 127, 133, 137, 139, 136, 130, 129, 126, 32.33725 + 121, 116, 112, 111, 112, 113, 106, 107, 114, 131, 147, 155, 154, 151, 139, 135, 32.33726 + 114, 90, 95, 123, 140, 137, 143, 135, 130, 130, 135, 141, 145, 145, 147, 145, 32.33727 + 143, 143, 143, 142, 140, 139, 137, 138, 137, 136, 134, 133, 131, 132, 128, 131, 32.33728 + 131, 127, 121, 116, 113, 114, 114, 111, 106, 102, 98, 92, 85, 81, 69, 66, 32.33729 + 56, 42, 27, 16, 10, 6, 0, 6, 25, 77, 96, 44, 74, 84, 16, 0, 32.33730 + 255, 9, 16, 21, 20, 17, 16, 55, 84, 91, 95, 95, 97, 106, 117, 119, 32.33731 + 120, 122, 122, 124, 125, 127, 127, 127, 126, 127, 128, 131, 134, 135, 132, 130, 32.33732 + 128, 128, 131, 134, 136, 136, 141, 141, 141, 141, 142, 142, 143, 145, 126, 126, 32.33733 + 131, 145, 154, 154, 148, 146, 122, 119, 118, 119, 121, 120, 115, 110, 115, 121, 32.33734 + 125, 129, 134, 140, 142, 139, 140, 136, 129, 124, 121, 122, 125, 127, 128, 130, 32.33735 + 132, 134, 135, 137, 139, 140, 132, 122, 104, 95, 106, 126, 133, 127, 132, 129, 32.33736 + 129, 130, 133, 137, 141, 144, 148, 146, 145, 143, 143, 143, 141, 139, 137, 137, 32.33737 + 135, 134, 132, 131, 130, 131, 130, 132, 132, 129, 124, 118, 115, 115, 113, 110, 32.33738 + 105, 99, 95, 90, 83, 79, 65, 62, 54, 43, 30, 19, 12, 9, 2, 2, 32.33739 + 20, 77, 98, 53, 70, 78, 23, 0, 255, 7, 12, 15, 15, 13, 14, 53, 32.33740 + 83, 90, 91, 92, 97, 109, 117, 120, 121, 124, 125, 126, 126, 128, 127, 128, 32.33741 + 129, 130, 131, 134, 137, 138, 136, 132, 128, 129, 134, 138, 140, 140, 145, 144, 32.33742 + 142, 141, 141, 142, 144, 147, 135, 126, 127, 144, 159, 158, 154, 153, 146, 132, 32.33743 + 118, 113, 107, 100, 102, 109, 124, 128, 128, 128, 133, 142, 146, 146, 146, 144, 32.33744 + 139, 136, 134, 135, 137, 138, 135, 138, 135, 130, 126, 125, 126, 126, 122, 112, 32.33745 + 102, 102, 113, 123, 124, 120, 119, 120, 124, 126, 127, 130, 135, 140, 146, 145, 32.33746 + 146, 147, 148, 146, 142, 138, 137, 136, 134, 133, 131, 130, 129, 129, 125, 128, 32.33747 + 128, 128, 126, 122, 119, 118, 112, 109, 104, 99, 94, 88, 81, 77, 65, 62, 32.33748 + 55, 45, 34, 25, 16, 12, 10, 0, 3, 55, 89, 73, 75, 68, 37, 4, 32.33749 + 255, 6, 8, 10, 10, 9, 15, 55, 83, 88, 90, 92, 98, 110, 115, 118, 32.33750 + 119, 123, 127, 128, 128, 128, 127, 130, 131, 132, 133, 134, 138, 140, 138, 134, 32.33751 + 131, 132, 137, 142, 144, 144, 148, 146, 143, 141, 140, 141, 142, 145, 151, 134, 32.33752 + 124, 134, 147, 152, 152, 154, 160, 148, 138, 135, 125, 113, 113, 121, 132, 134, 32.33753 + 133, 130, 134, 143, 149, 150, 153, 152, 151, 150, 150, 149, 148, 148, 141, 141, 32.33754 + 135, 127, 123, 123, 119, 112, 111, 108, 108, 111, 116, 118, 119, 118, 110, 114, 32.33755 + 118, 121, 120, 122, 128, 134, 140, 142, 146, 151, 152, 149, 143, 139, 137, 135, 32.33756 + 132, 130, 129, 127, 127, 128, 124, 124, 125, 126, 124, 121, 118, 115, 112, 109, 32.33757 + 103, 98, 93, 88, 81, 76, 67, 64, 56, 47, 38, 28, 18, 11, 7, 0, 32.33758 + 0, 36, 68, 81, 80, 71, 52, 11, 255, 6, 7, 7, 7, 7, 19, 56, 32.33759 + 83, 88, 91, 94, 99, 111, 114, 116, 117, 122, 126, 128, 127, 126, 127, 130, 32.33760 + 133, 133, 132, 133, 136, 139, 138, 136, 134, 135, 138, 142, 144, 145, 149, 147, 32.33761 + 144, 141, 140, 140, 141, 143, 165, 147, 127, 120, 126, 135, 145, 151, 157, 157, 32.33762 + 160, 161, 153, 138, 130, 132, 145, 146, 146, 144, 147, 155, 160, 160, 163, 164, 32.33763 + 165, 166, 165, 164, 161, 160, 153, 151, 143, 131, 128, 128, 118, 106, 108, 112, 32.33764 + 117, 116, 115, 115, 117, 117, 109, 111, 114, 116, 115, 117, 122, 127, 133, 136, 32.33765 + 141, 148, 151, 150, 144, 139, 136, 135, 132, 129, 127, 126, 126, 126, 126, 126, 32.33766 + 126, 126, 124, 119, 114, 109, 110, 108, 102, 98, 92, 86, 80, 75, 64, 61, 32.33767 + 54, 47, 40, 29, 20, 12, 0, 2, 9, 42, 56, 72, 71, 76, 62, 14, 32.33768 + 255, 6, 7, 7, 9, 9, 24, 57, 80, 86, 91, 96, 100, 109, 114, 115, 32.33769 + 116, 121, 125, 126, 123, 121, 126, 130, 133, 133, 131, 130, 134, 137, 135, 136, 32.33770 + 137, 137, 137, 139, 142, 144, 147, 146, 144, 143, 142, 142, 143, 145, 163, 158, 32.33771 + 141, 122, 114, 121, 134, 143, 144, 150, 159, 161, 154, 144, 139, 141, 153, 157, 32.33772 + 160, 160, 164, 171, 174, 172, 173, 173, 172, 171, 170, 169, 169, 169, 163, 163, 32.33773 + 152, 137, 131, 132, 124, 113, 112, 119, 123, 117, 114, 117, 118, 115, 111, 112, 32.33774 + 112, 112, 112, 116, 119, 121, 126, 128, 133, 139, 144, 146, 144, 143, 137, 136, 32.33775 + 132, 128, 126, 125, 125, 126, 125, 125, 125, 125, 125, 120, 113, 108, 109, 107, 32.33776 + 101, 96, 91, 85, 77, 73, 63, 59, 54, 49, 43, 34, 24, 16, 2, 1, 32.33777 + 18, 64, 67, 69, 52, 71, 62, 13, 255, 5, 6, 7, 9, 11, 25, 57, 32.33778 + 78, 84, 92, 97, 100, 108, 116, 116, 115, 120, 123, 124, 119, 116, 125, 130, 32.33779 + 133, 133, 130, 129, 132, 135, 132, 135, 138, 138, 136, 136, 139, 142, 145, 145, 32.33780 + 144, 144, 144, 145, 146, 146, 151, 162, 157, 133, 113, 115, 126, 134, 138, 145, 32.33781 + 149, 145, 139, 139, 143, 146, 151, 158, 164, 167, 171, 178, 179, 177, 177, 176, 32.33782 + 173, 171, 170, 171, 171, 172, 167, 168, 159, 140, 133, 134, 131, 122, 117, 125, 32.33783 + 125, 117, 114, 121, 120, 112, 115, 114, 111, 111, 113, 115, 117, 120, 124, 125, 32.33784 + 128, 133, 139, 144, 145, 146, 138, 135, 131, 128, 126, 124, 125, 126, 123, 123, 32.33785 + 123, 125, 126, 123, 116, 112, 107, 105, 99, 94, 90, 83, 76, 70, 62, 59, 32.33786 + 55, 51, 48, 40, 31, 22, 14, 0, 17, 84, 89, 75, 38, 56, 59, 11, 32.33787 + 255, 6, 14, 0, 3, 7, 17, 46, 77, 91, 92, 98, 104, 108, 114, 117, 32.33788 + 118, 120, 120, 120, 121, 122, 130, 127, 125, 127, 132, 136, 137, 135, 134, 135, 32.33789 + 136, 138, 140, 141, 143, 143, 143, 144, 145, 145, 144, 144, 146, 148, 158, 159, 32.33790 + 157, 149, 135, 120, 109, 105, 122, 130, 136, 138, 136, 136, 141, 148, 158, 158, 32.33791 + 159, 164, 171, 178, 184, 186, 186, 186, 183, 181, 180, 178, 175, 174, 169, 168, 32.33792 + 161, 151, 144, 144, 140, 135, 130, 124, 118, 117, 121, 124, 122, 118, 118, 116, 32.33793 + 111, 112, 114, 117, 119, 120, 122, 123, 124, 127, 131, 135, 136, 136, 138, 138, 32.33794 + 137, 136, 132, 128, 123, 120, 121, 122, 120, 119, 118, 116, 116, 117, 110, 105, 32.33795 + 98, 92, 87, 80, 73, 66, 61, 62, 60, 53, 49, 42, 33, 23, 9, 0, 32.33796 + 17, 61, 88, 80, 62, 57, 44, 13, 255, 5, 6, 0, 9, 9, 8, 38, 32.33797 + 71, 87, 91, 96, 105, 109, 112, 115, 117, 120, 121, 122, 123, 125, 129, 128, 32.33798 + 126, 129, 135, 139, 141, 140, 135, 135, 137, 139, 141, 142, 144, 144, 144, 145, 32.33799 + 145, 144, 143, 144, 147, 150, 156, 157, 155, 147, 135, 124, 116, 113, 100, 107, 32.33800 + 115, 121, 127, 134, 144, 153, 149, 153, 160, 168, 175, 180, 185, 188, 186, 186, 32.33801 + 185, 185, 184, 183, 182, 182, 174, 173, 167, 158, 154, 151, 148, 142, 134, 129, 32.33802 + 124, 122, 124, 125, 120, 117, 118, 117, 116, 116, 118, 120, 120, 119, 119, 118, 32.33803 + 119, 123, 126, 130, 131, 130, 135, 136, 136, 136, 135, 132, 129, 128, 124, 123, 32.33804 + 121, 121, 119, 117, 113, 111, 114, 106, 95, 86, 79, 74, 67, 63, 64, 65, 32.33805 + 62, 56, 51, 46, 36, 26, 14, 0, 2, 41, 76, 84, 75, 67, 36, 10, 32.33806 + 255, 3, 1, 3, 18, 14, 3, 33, 67, 86, 91, 96, 105, 109, 110, 113, 32.33807 + 116, 119, 121, 123, 125, 128, 127, 126, 126, 130, 135, 139, 142, 141, 135, 136, 32.33808 + 137, 139, 142, 144, 145, 146, 144, 145, 144, 143, 143, 144, 148, 152, 156, 155, 32.33809 + 152, 144, 136, 129, 125, 124, 108, 109, 111, 117, 127, 137, 146, 152, 144, 152, 32.33810 + 163, 172, 177, 180, 184, 188, 190, 190, 189, 189, 188, 188, 187, 186, 178, 178, 32.33811 + 173, 167, 163, 161, 155, 147, 143, 138, 135, 132, 131, 128, 122, 117, 120, 120, 32.33812 + 121, 122, 124, 125, 122, 120, 118, 118, 118, 120, 123, 125, 125, 124, 128, 130, 32.33813 + 131, 133, 134, 133, 132, 132, 125, 123, 121, 121, 119, 117, 111, 107, 112, 104, 32.33814 + 90, 78, 71, 66, 65, 63, 67, 68, 65, 60, 55, 50, 40, 31, 21, 2, 32.33815 + 0, 27, 70, 92, 85, 69, 24, 6, 255, 171, 2, 14, 33, 17, 10, 34, 32.33816 + 66, 85, 93, 98, 104, 110, 112, 113, 115, 118, 120, 122, 124, 128, 125, 125, 32.33817 + 126, 129, 132, 136, 138, 138, 136, 137, 138, 140, 142, 144, 146, 146, 144, 144, 32.33818 + 144, 143, 143, 145, 150, 153, 157, 155, 148, 142, 135, 131, 130, 130, 125, 123, 32.33819 + 120, 123, 132, 143, 150, 154, 147, 157, 168, 175, 176, 178, 182, 187, 196, 195, 32.33820 + 194, 193, 191, 190, 187, 187, 182, 182, 178, 171, 169, 166, 158, 148, 153, 150, 32.33821 + 146, 142, 139, 134, 125, 120, 124, 123, 123, 125, 128, 129, 128, 127, 122, 122, 32.33822 + 120, 122, 123, 125, 124, 123, 121, 122, 124, 126, 127, 128, 128, 129, 127, 123, 32.33823 + 119, 117, 117, 116, 111, 108, 104, 98, 86, 74, 67, 65, 64, 65, 67, 69, 32.33824 + 66, 62, 58, 53, 43, 34, 22, 8, 1, 21, 59, 80, 67, 45, 13, 2, 32.33825 + 255, 255, 4, 26, 48, 25, 20, 37, 61, 82, 93, 100, 108, 113, 113, 114, 32.33826 + 115, 117, 117, 119, 122, 125, 126, 128, 129, 131, 132, 133, 135, 135, 137, 138, 32.33827 + 139, 140, 142, 143, 145, 145, 143, 143, 144, 144, 144, 147, 151, 154, 160, 154, 32.33828 + 146, 138, 133, 130, 129, 129, 122, 119, 118, 123, 135, 147, 154, 157, 151, 159, 32.33829 + 169, 174, 176, 179, 186, 192, 196, 196, 194, 194, 192, 191, 189, 189, 188, 188, 32.33830 + 182, 177, 175, 172, 162, 150, 158, 155, 152, 149, 144, 137, 129, 124, 126, 124, 32.33831 + 123, 123, 125, 130, 132, 132, 125, 124, 123, 125, 125, 126, 124, 123, 119, 120, 32.33832 + 120, 122, 122, 123, 123, 122, 125, 120, 114, 111, 112, 112, 111, 111, 100, 95, 32.33833 + 86, 75, 68, 63, 63, 63, 66, 68, 67, 62, 59, 55, 46, 37, 22, 12, 32.33834 + 1, 6, 26, 40, 29, 10, 4, 0, 255, 255, 2, 29, 62, 44, 38, 42, 32.33835 + 54, 73, 89, 101, 110, 115, 113, 113, 113, 114, 115, 117, 120, 124, 129, 131, 32.33836 + 133, 134, 134, 134, 135, 136, 138, 139, 139, 140, 141, 142, 142, 143, 140, 142, 32.33837 + 144, 146, 146, 148, 151, 154, 159, 153, 143, 135, 130, 127, 126, 125, 122, 120, 32.33838 + 121, 126, 136, 145, 152, 154, 151, 156, 164, 170, 175, 182, 190, 197, 189, 190, 32.33839 + 191, 191, 192, 193, 193, 194, 194, 192, 186, 181, 180, 177, 167, 156, 158, 157, 32.33840 + 155, 151, 145, 139, 133, 129, 130, 127, 123, 123, 125, 128, 130, 131, 127, 126, 32.33841 + 125, 125, 125, 125, 124, 122, 123, 124, 123, 121, 121, 120, 119, 119, 120, 119, 32.33842 + 114, 110, 108, 108, 109, 111, 101, 97, 89, 77, 67, 60, 58, 57, 65, 67, 32.33843 + 67, 63, 59, 56, 48, 41, 32, 20, 2, 0, 0, 4, 1, 0, 1, 0, 32.33844 + 255, 255, 170, 22, 71, 67, 64, 57, 56, 69, 87, 99, 108, 112, 110, 109, 32.33845 + 110, 111, 113, 116, 120, 124, 126, 130, 133, 135, 134, 134, 136, 137, 140, 140, 32.33846 + 140, 140, 140, 140, 140, 140, 138, 141, 145, 148, 149, 150, 152, 153, 155, 148, 32.33847 + 138, 130, 126, 124, 123, 121, 126, 128, 129, 134, 139, 145, 149, 149, 151, 154, 32.33848 + 160, 167, 175, 183, 189, 193, 186, 188, 189, 190, 190, 191, 191, 192, 192, 189, 32.33849 + 184, 180, 181, 181, 172, 161, 159, 159, 157, 154, 149, 143, 140, 139, 138, 136, 32.33850 + 132, 131, 131, 132, 130, 129, 129, 128, 126, 127, 128, 128, 127, 125, 126, 125, 32.33851 + 123, 122, 120, 118, 117, 116, 114, 118, 117, 114, 107, 102, 103, 106, 100, 97, 32.33852 + 89, 76, 65, 58, 57, 58, 66, 67, 68, 64, 62, 58, 51, 44, 43, 27, 32.33853 + 5, 0, 0, 0, 0, 0, 2, 0, 255, 255, 255, 15, 78, 83, 89, 71, 32.33854 + 60, 68, 84, 98, 105, 108, 108, 107, 109, 112, 113, 118, 123, 127, 123, 126, 32.33855 + 131, 133, 133, 134, 136, 138, 141, 140, 140, 139, 139, 138, 138, 138, 136, 140, 32.33856 + 145, 149, 150, 151, 153, 154, 153, 145, 135, 128, 125, 124, 121, 120, 121, 124, 32.33857 + 130, 135, 142, 146, 149, 150, 152, 153, 159, 167, 175, 181, 184, 183, 188, 188, 32.33858 + 187, 187, 186, 186, 185, 187, 184, 182, 177, 174, 178, 179, 173, 162, 164, 163, 32.33859 + 161, 157, 153, 149, 147, 146, 147, 144, 142, 141, 139, 136, 132, 128, 131, 130, 32.33860 + 130, 130, 131, 132, 131, 130, 126, 125, 123, 120, 118, 116, 115, 115, 111, 117, 32.33861 + 121, 118, 108, 100, 98, 100, 97, 93, 85, 72, 62, 58, 59, 62, 67, 68, 32.33862 + 69, 66, 63, 60, 52, 45, 40, 23, 6, 0, 0, 0, 0, 1, 4, 1, 32.33863 + 255, 255, 255, 173, 57, 99, 89, 102, 67, 71, 63, 85, 110, 104, 109, 107, 32.33864 + 109, 112, 115, 119, 123, 125, 128, 128, 129, 132, 135, 136, 138, 141, 134, 137, 32.33865 + 139, 140, 138, 135, 136, 138, 138, 141, 146, 150, 152, 153, 152, 151, 152, 146, 32.33866 + 134, 126, 122, 122, 124, 125, 126, 135, 136, 133, 138, 138, 140, 152, 156, 164, 32.33867 + 173, 180, 182, 182, 185, 187, 188, 187, 186, 184, 181, 179, 177, 177, 176, 181, 32.33868 + 182, 177, 174, 174, 171, 168, 152, 150, 152, 154, 155, 153, 148, 146, 144, 145, 32.33869 + 143, 139, 137, 138, 134, 128, 135, 137, 138, 137, 135, 133, 134, 134, 130, 129, 32.33870 + 127, 127, 125, 122, 117, 114, 111, 115, 121, 125, 116, 101, 94, 97, 90, 88, 32.33871 + 80, 69, 54, 46, 51, 61, 64, 70, 72, 69, 64, 60, 50, 43, 39, 21, 32.33872 + 3, 0, 0, 0, 0, 4, 2, 2, 255, 255, 255, 255, 51, 105, 97, 107, 32.33873 + 84, 78, 60, 81, 101, 110, 112, 112, 114, 116, 119, 123, 126, 128, 129, 129, 32.33874 + 130, 132, 135, 135, 136, 139, 137, 139, 141, 140, 136, 134, 133, 135, 139, 142, 32.33875 + 147, 152, 154, 155, 154, 153, 150, 143, 134, 127, 123, 124, 126, 127, 129, 137, 32.33876 + 134, 131, 136, 137, 140, 151, 160, 163, 170, 177, 183, 185, 184, 182, 181, 180, 32.33877 + 177, 174, 171, 170, 168, 168, 170, 176, 176, 174, 173, 173, 171, 166, 157, 156, 32.33878 + 156, 154, 153, 150, 145, 142, 144, 145, 143, 138, 137, 137, 133, 127, 135, 137, 32.33879 + 139, 139, 138, 138, 138, 140, 140, 138, 137, 135, 131, 124, 117, 112, 110, 113, 32.33880 + 120, 125, 119, 104, 92, 91, 84, 84, 80, 71, 59, 51, 58, 70, 66, 72, 32.33881 + 75, 72, 68, 63, 54, 45, 38, 21, 5, 0, 0, 0, 1, 5, 2, 2, 32.33882 + 255, 255, 255, 255, 35, 100, 103, 106, 99, 84, 56, 76, 85, 109, 110, 112, 32.33883 + 115, 117, 119, 122, 125, 127, 130, 130, 130, 131, 133, 135, 136, 136, 138, 140, 32.33884 + 141, 138, 134, 132, 131, 132, 139, 142, 148, 153, 155, 156, 155, 154, 144, 138, 32.33885 + 129, 125, 123, 125, 127, 128, 130, 136, 132, 130, 138, 141, 141, 149, 164, 163, 32.33886 + 166, 175, 183, 187, 184, 181, 179, 176, 172, 168, 165, 164, 163, 164, 165, 170, 32.33887 + 174, 175, 175, 178, 176, 172, 172, 168, 165, 162, 159, 155, 150, 147, 141, 143, 32.33888 + 143, 141, 142, 144, 142, 137, 134, 137, 139, 141, 140, 139, 141, 143, 144, 143, 32.33889 + 141, 140, 136, 128, 120, 113, 111, 114, 119, 125, 122, 108, 94, 86, 77, 79, 32.33890 + 79, 72, 60, 52, 61, 75, 65, 70, 72, 70, 66, 61, 53, 45, 39, 23, 32.33891 + 8, 0, 0, 0, 2, 5, 2, 86, 255, 255, 255, 255, 176, 78, 106, 102, 32.33892 + 103, 83, 55, 78, 71, 98, 103, 106, 111, 115, 116, 118, 121, 123, 130, 132, 32.33893 + 131, 131, 132, 136, 137, 135, 137, 137, 137, 136, 134, 131, 131, 131, 139, 143, 32.33894 + 149, 154, 157, 157, 154, 153, 140, 135, 128, 124, 123, 125, 125, 127, 126, 131, 32.33895 + 130, 132, 144, 145, 143, 148, 163, 164, 168, 174, 180, 185, 184, 183, 178, 174, 32.33896 + 170, 164, 161, 160, 161, 162, 165, 172, 177, 180, 184, 189, 188, 183, 185, 181, 32.33897 + 177, 174, 172, 169, 165, 162, 155, 155, 153, 150, 149, 149, 146, 140, 135, 138, 32.33898 + 140, 141, 140, 139, 140, 141, 139, 139, 140, 140, 138, 133, 125, 118, 114, 114, 32.33899 + 117, 122, 122, 113, 99, 88, 78, 78, 75, 66, 54, 47, 56, 69, 64, 70, 32.33900 + 73, 71, 67, 62, 54, 47, 40, 27, 12, 1, 0, 0, 2, 4, 2, 255, 32.33901 + 255, 255, 255, 255, 255, 44, 109, 106, 106, 85, 62, 87, 71, 85, 96, 102, 32.33902 + 109, 113, 113, 114, 118, 121, 130, 133, 134, 130, 132, 137, 138, 135, 133, 132, 32.33903 + 132, 131, 132, 132, 132, 132, 138, 143, 148, 153, 155, 153, 151, 149, 137, 134, 32.33904 + 128, 124, 124, 124, 124, 123, 120, 129, 131, 137, 150, 151, 145, 149, 159, 165, 32.33905 + 171, 174, 176, 180, 184, 188, 177, 174, 170, 165, 162, 161, 162, 164, 177, 181, 32.33906 + 184, 185, 190, 195, 191, 185, 185, 183, 181, 179, 180, 179, 176, 174, 175, 174, 32.33907 + 169, 160, 154, 150, 143, 137, 140, 143, 144, 142, 141, 139, 140, 140, 137, 137, 32.33908 + 140, 142, 140, 136, 129, 123, 114, 113, 111, 112, 114, 112, 102, 92, 80, 76, 32.33909 + 70, 60, 49, 45, 54, 66, 69, 75, 78, 76, 73, 69, 61, 53, 41, 31, 32.33910 + 16, 3, 0, 0, 3, 4, 2, 255, 255, 255, 255, 255, 255, 174, 98, 113, 32.33911 + 111, 94, 72, 94, 85, 85, 89, 97, 107, 112, 113, 114, 117, 121, 128, 133, 32.33912 + 135, 129, 130, 138, 139, 134, 130, 129, 128, 129, 132, 133, 134, 134, 138, 143, 32.33913 + 148, 152, 152, 150, 146, 143, 136, 132, 127, 125, 125, 125, 124, 123, 118, 130, 32.33914 + 134, 141, 152, 152, 147, 152, 158, 164, 170, 172, 174, 178, 185, 190, 185, 183, 32.33915 + 180, 176, 174, 174, 174, 175, 185, 187, 184, 182, 183, 186, 181, 174, 173, 172, 32.33916 + 171, 173, 173, 175, 172, 169, 167, 168, 164, 158, 155, 155, 150, 143, 143, 145, 32.33917 + 146, 145, 143, 140, 141, 140, 142, 142, 142, 143, 141, 136, 128, 124, 114, 112, 32.33918 + 107, 104, 106, 107, 101, 94, 79, 72, 65, 59, 54, 51, 58, 67, 67, 74, 32.33919 + 77, 76, 73, 69, 61, 54, 42, 34, 20, 4, 0, 0, 3, 3, 2, 255, 32.33920 + 255, 255, 255, 255, 255, 255, 60, 108, 110, 98, 71, 92, 105, 99, 80, 90, 32.33921 + 102, 109, 110, 111, 115, 120, 125, 131, 133, 126, 129, 137, 138, 133, 130, 127, 32.33922 + 125, 127, 130, 134, 134, 134, 139, 142, 147, 150, 150, 147, 141, 138, 132, 130, 32.33923 + 126, 126, 127, 128, 127, 126, 123, 135, 139, 142, 150, 149, 148, 156, 158, 161, 32.33924 + 165, 169, 174, 181, 186, 189, 190, 189, 187, 185, 183, 183, 183, 182, 180, 178, 32.33925 + 171, 167, 168, 171, 166, 158, 158, 157, 157, 158, 158, 157, 154, 150, 148, 149, 32.33926 + 149, 147, 149, 152, 151, 146, 139, 141, 142, 142, 141, 139, 140, 139, 143, 142, 32.33927 + 140, 140, 137, 133, 126, 122, 116, 117, 111, 104, 103, 104, 100, 93, 76, 68, 32.33928 + 62, 61, 60, 57, 58, 61, 62, 69, 73, 72, 69, 66, 58, 51, 43, 37, 32.33929 + 22, 5, 0, 1, 3, 3, 2, 255, 255, 255, 255, 255, 255, 255, 177, 96, 32.33930 + 105, 98, 66, 86, 117, 112, 72, 84, 97, 104, 106, 107, 113, 117, 122, 130, 32.33931 + 130, 125, 128, 137, 138, 131, 131, 127, 125, 126, 130, 134, 133, 133, 138, 142, 32.33932 + 146, 150, 149, 144, 139, 134, 129, 127, 125, 127, 128, 130, 130, 129, 129, 140, 32.33933 + 142, 141, 146, 146, 147, 159, 160, 159, 160, 166, 176, 184, 187, 187, 184, 183, 32.33934 + 183, 182, 181, 180, 179, 179, 167, 163, 157, 152, 154, 158, 154, 147, 147, 147, 32.33935 + 147, 147, 147, 144, 138, 134, 142, 143, 142, 138, 139, 141, 138, 134, 132, 135, 32.33936 + 136, 137, 136, 135, 136, 137, 137, 136, 134, 134, 133, 129, 124, 121, 121, 123, 32.33937 + 119, 110, 105, 106, 101, 93, 74, 66, 61, 62, 63, 59, 54, 52, 64, 70, 32.33938 + 75, 74, 71, 68, 60, 53, 44, 38, 24, 5, 0, 1, 4, 3, 2, 255, 32.33939 + 255, 255, 255, 255, 255, 255, 255, 56, 110, 107, 78, 87, 115, 123, 109, 82, 32.33940 + 72, 92, 108, 105, 108, 121, 121, 126, 130, 130, 126, 123, 124, 126, 131, 127, 32.33941 + 124, 124, 129, 132, 131, 131, 135, 144, 150, 149, 146, 142, 135, 128, 129, 128, 32.33942 + 128, 131, 134, 135, 131, 128, 127, 133, 140, 144, 144, 147, 152, 157, 148, 158, 32.33943 + 170, 178, 179, 179, 180, 182, 177, 173, 169, 167, 167, 164, 155, 147, 139, 143, 32.33944 + 147, 145, 139, 135, 135, 138, 142, 144, 145, 142, 135, 129, 127, 129, 130, 133, 32.33945 + 135, 137, 136, 133, 125, 119, 117, 119, 115, 111, 119, 137, 144, 143, 135, 138, 32.33946 + 135, 127, 121, 118, 117, 115, 114, 115, 115, 115, 111, 105, 96, 91, 75, 70, 32.33947 + 64, 61, 63, 64, 62, 59, 68, 70, 70, 69, 70, 72, 66, 58, 46, 35, 32.33948 + 21, 7, 0, 1, 3, 6, 3, 255, 255, 255, 255, 255, 255, 255, 255, 177, 32.33949 + 82, 107, 79, 77, 109, 123, 120, 92, 72, 78, 95, 102, 107, 113, 118, 123, 32.33950 + 126, 125, 121, 121, 124, 126, 127, 124, 123, 125, 129, 132, 132, 132, 133, 140, 32.33951 + 144, 142, 139, 138, 133, 127, 126, 125, 123, 126, 130, 132, 132, 130, 138, 142, 32.33952 + 145, 146, 143, 145, 150, 156, 160, 164, 170, 173, 172, 169, 167, 166, 155, 152, 32.33953 + 149, 149, 147, 146, 141, 135, 131, 132, 131, 129, 123, 120, 121, 123, 139, 138, 32.33954 + 135, 128, 119, 115, 114, 115, 116, 113, 115, 119, 115, 107, 105, 109, 97, 97, 32.33955 + 101, 112, 125, 138, 146, 152, 155, 150, 137, 123, 117, 116, 111, 104, 115, 116, 32.33956 + 117, 118, 111, 103, 95, 88, 75, 71, 65, 63, 64, 63, 60, 57, 63, 66, 32.33957 + 68, 70, 72, 73, 65, 57, 51, 39, 24, 10, 1, 1, 3, 5, 3, 255, 32.33958 + 255, 255, 255, 255, 255, 255, 255, 255, 48, 104, 90, 74, 100, 120, 132, 110, 32.33959 + 81, 67, 77, 96, 105, 104, 114, 118, 121, 121, 119, 120, 123, 126, 124, 122, 32.33960 + 123, 125, 128, 131, 132, 131, 136, 141, 143, 139, 137, 137, 135, 132, 126, 124, 32.33961 + 122, 125, 129, 133, 135, 135, 140, 141, 142, 140, 139, 142, 148, 154, 171, 170, 32.33962 + 166, 163, 161, 157, 152, 148, 152, 149, 145, 141, 136, 132, 130, 128, 123, 122, 32.33963 + 121, 119, 116, 115, 112, 112, 117, 117, 114, 110, 105, 103, 101, 102, 102, 98, 32.33964 + 99, 103, 98, 89, 92, 101, 96, 92, 94, 105, 117, 127, 137, 148, 173, 160, 32.33965 + 138, 122, 119, 120, 112, 103, 113, 116, 119, 119, 112, 103, 94, 88, 74, 70, 32.33966 + 65, 64, 65, 64, 61, 58, 62, 66, 68, 70, 73, 75, 67, 58, 54, 42, 32.33967 + 27, 12, 3, 2, 2, 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33968 + 176, 78, 99, 82, 83, 109, 132, 126, 99, 70, 63, 83, 100, 101, 109, 112, 32.33969 + 116, 120, 121, 121, 123, 124, 123, 122, 122, 124, 126, 127, 128, 128, 134, 140, 32.33970 + 142, 139, 135, 136, 135, 131, 126, 127, 130, 132, 136, 139, 141, 141, 137, 138, 32.33971 + 138, 137, 140, 145, 153, 158, 170, 164, 157, 153, 153, 151, 146, 140, 140, 138, 32.33972 + 134, 129, 124, 120, 121, 121, 127, 125, 123, 121, 119, 114, 108, 104, 102, 104, 32.33973 + 108, 111, 110, 108, 105, 103, 100, 100, 100, 97, 97, 100, 103, 103, 116, 113, 32.33974 + 103, 96, 98, 110, 121, 126, 160, 147, 130, 116, 115, 119, 115, 108, 110, 115, 32.33975 + 120, 121, 114, 104, 94, 88, 71, 67, 64, 65, 67, 67, 65, 62, 67, 69, 32.33976 + 68, 68, 71, 73, 68, 60, 54, 42, 27, 13, 4, 3, 3, 4, 255, 255, 32.33977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 94, 90, 69, 96, 117, 126, 32.33978 + 113, 80, 58, 67, 87, 97, 100, 106, 113, 118, 122, 122, 123, 121, 122, 122, 32.33979 + 122, 122, 123, 124, 125, 126, 128, 133, 136, 133, 131, 130, 128, 124, 127, 131, 32.33980 + 135, 141, 143, 143, 142, 142, 142, 142, 141, 143, 147, 151, 158, 163, 159, 153, 32.33981 + 146, 146, 150, 150, 146, 140, 133, 131, 130, 126, 125, 124, 128, 131, 128, 124, 32.33982 + 118, 113, 113, 112, 110, 109, 130, 129, 126, 124, 122, 119, 116, 113, 102, 111, 32.33983 + 110, 102, 108, 122, 123, 110, 121, 125, 116, 96, 91, 104, 111, 105, 124, 122, 32.33984 + 114, 104, 102, 108, 110, 110, 115, 120, 124, 122, 112, 101, 90, 84, 68, 65, 32.33985 + 63, 65, 68, 70, 70, 68, 72, 71, 65, 62, 63, 67, 64, 59, 50, 39, 32.33986 + 26, 12, 4, 3, 3, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.33987 + 255, 255, 73, 95, 76, 92, 101, 112, 110, 89, 63, 58, 72, 88, 93, 98, 32.33988 + 106, 113, 118, 120, 120, 119, 120, 120, 119, 119, 119, 120, 124, 127, 129, 134, 32.33989 + 137, 134, 131, 129, 126, 123, 126, 133, 138, 143, 144, 142, 141, 140, 144, 144, 32.33990 + 144, 145, 147, 150, 152, 153, 147, 144, 140, 142, 146, 146, 141, 136, 130, 128, 32.33991 + 124, 121, 120, 120, 121, 122, 112, 109, 104, 103, 107, 117, 129, 136, 163, 153, 32.33992 + 140, 128, 120, 117, 116, 114, 106, 116, 114, 106, 110, 127, 130, 119, 105, 116, 32.33993 + 118, 107, 104, 111, 109, 100, 104, 106, 105, 99, 96, 103, 109, 113, 123, 127, 32.33994 + 128, 123, 109, 96, 84, 79, 70, 66, 63, 65, 69, 72, 74, 73, 72, 69, 32.33995 + 61, 55, 57, 61, 60, 56, 50, 39, 26, 13, 5, 4, 4, 5, 255, 255, 32.33996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 81, 90, 88, 96, 92, 32.33997 + 93, 93, 78, 62, 63, 77, 87, 90, 94, 102, 108, 113, 116, 116, 116, 117, 32.33998 + 116, 116, 115, 119, 125, 131, 135, 139, 139, 133, 130, 129, 128, 126, 131, 136, 32.33999 + 141, 143, 142, 141, 140, 140, 141, 142, 143, 145, 145, 145, 144, 142, 139, 137, 32.34000 + 135, 135, 134, 130, 122, 115, 111, 108, 103, 102, 103, 104, 103, 101, 109, 113, 32.34001 + 117, 121, 123, 129, 137, 143, 150, 141, 130, 121, 117, 116, 114, 112, 108, 108, 32.34002 + 108, 108, 105, 108, 117, 127, 100, 103, 112, 120, 118, 107, 101, 105, 101, 104, 32.34003 + 103, 98, 97, 106, 114, 119, 123, 127, 129, 122, 108, 94, 85, 82, 76, 70, 32.34004 + 65, 65, 68, 72, 75, 75, 70, 68, 61, 56, 58, 62, 61, 57, 53, 42, 32.34005 + 29, 16, 7, 5, 3, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34006 + 255, 255, 172, 61, 97, 80, 100, 82, 80, 94, 92, 70, 61, 72, 83, 83, 32.34007 + 86, 91, 99, 108, 113, 116, 115, 114, 114, 114, 115, 120, 129, 136, 137, 140, 32.34008 + 136, 128, 123, 124, 125, 124, 137, 141, 143, 144, 143, 141, 142, 143, 142, 143, 32.34009 + 146, 148, 148, 147, 143, 139, 131, 129, 129, 128, 123, 114, 103, 96, 104, 103, 32.34010 + 102, 108, 117, 124, 124, 123, 131, 140, 150, 151, 143, 131, 123, 119, 114, 112, 32.34011 + 113, 116, 120, 120, 116, 112, 110, 101, 103, 109, 99, 87, 103, 132, 114, 102, 32.34012 + 106, 126, 121, 97, 92, 111, 101, 102, 98, 94, 97, 107, 118, 121, 119, 124, 32.34013 + 127, 120, 109, 96, 91, 89, 82, 75, 68, 65, 68, 71, 74, 74, 69, 68, 32.34014 + 63, 60, 63, 68, 66, 61, 57, 47, 32, 18, 8, 4, 3, 255, 255, 255, 32.34015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 73, 105, 94, 93, 32.34016 + 93, 108, 113, 78, 54, 72, 69, 80, 82, 78, 86, 105, 112, 105, 106, 113, 32.34017 + 120, 121, 117, 117, 124, 132, 142, 139, 135, 132, 127, 125, 126, 130, 137, 140, 32.34018 + 144, 147, 147, 145, 145, 143, 141, 142, 142, 137, 134, 134, 131, 129, 119, 112, 32.34019 + 110, 113, 116, 115, 120, 128, 137, 164, 171, 148, 130, 134, 142, 138, 136, 133, 32.34020 + 130, 124, 117, 112, 109, 107, 98, 105, 105, 99, 102, 112, 110, 99, 100, 102, 32.34021 + 106, 110, 104, 97, 104, 118, 103, 105, 111, 116, 115, 107, 105, 108, 101, 100, 32.34022 + 98, 99, 106, 112, 118, 121, 121, 122, 119, 111, 100, 91, 87, 88, 80, 76, 32.34023 + 73, 72, 73, 74, 73, 73, 66, 64, 60, 57, 60, 65, 62, 56, 47, 45, 32.34024 + 36, 19, 7, 5, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34025 + 255, 255, 255, 174, 47, 84, 92, 86, 91, 112, 124, 101, 66, 53, 65, 75, 32.34026 + 79, 77, 82, 95, 102, 101, 102, 107, 114, 116, 115, 118, 126, 135, 141, 138, 32.34027 + 134, 130, 127, 127, 130, 134, 136, 142, 148, 150, 148, 147, 148, 148, 151, 143, 32.34028 + 129, 116, 110, 111, 116, 117, 111, 106, 109, 118, 124, 128, 135, 142, 165, 179, 32.34029 + 178, 155, 135, 128, 123, 114, 109, 108, 106, 102, 97, 95, 96, 99, 101, 101, 32.34030 + 100, 100, 101, 102, 103, 104, 111, 110, 111, 113, 102, 92, 94, 105, 100, 98, 32.34031 + 101, 107, 112, 108, 104, 105, 98, 97, 98, 100, 107, 113, 117, 119, 122, 123, 32.34032 + 122, 118, 110, 100, 92, 89, 80, 78, 74, 73, 74, 75, 74, 73, 70, 66, 32.34033 + 61, 58, 60, 65, 63, 56, 40, 38, 29, 13, 2, 0, 85, 255, 255, 255, 32.34034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 51, 73, 71, 32.34035 + 80, 97, 106, 109, 93, 68, 64, 70, 75, 77, 78, 82, 89, 94, 97, 102, 32.34036 + 108, 110, 111, 116, 125, 133, 138, 137, 132, 127, 125, 127, 132, 136, 135, 141, 32.34037 + 148, 149, 147, 145, 146, 148, 142, 129, 112, 99, 97, 101, 111, 116, 108, 107, 32.34038 + 110, 117, 120, 121, 124, 129, 120, 125, 125, 118, 111, 108, 104, 101, 102, 104, 32.34039 + 102, 99, 97, 97, 101, 106, 109, 105, 105, 110, 111, 108, 116, 127, 124, 119, 32.34040 + 115, 112, 101, 89, 89, 100, 99, 94, 94, 103, 110, 109, 104, 101, 95, 96, 32.34041 + 98, 102, 109, 114, 117, 119, 120, 122, 123, 122, 116, 106, 93, 85, 80, 78, 32.34042 + 75, 74, 75, 76, 74, 74, 73, 69, 63, 58, 60, 65, 62, 56, 40, 39, 32.34043 + 30, 15, 5, 3, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34044 + 255, 255, 255, 255, 255, 19, 63, 79, 103, 105, 90, 100, 103, 78, 66, 68, 32.34045 + 73, 79, 79, 77, 80, 87, 94, 99, 104, 108, 110, 114, 120, 125, 137, 137, 32.34046 + 132, 124, 122, 127, 133, 136, 134, 140, 145, 145, 141, 139, 141, 145, 131, 117, 32.34047 + 105, 100, 102, 105, 110, 112, 108, 108, 110, 114, 116, 116, 116, 115, 122, 115, 32.34048 + 109, 108, 103, 97, 95, 99, 109, 113, 112, 109, 105, 104, 107, 111, 110, 115, 32.34049 + 118, 118, 119, 126, 139, 150, 133, 123, 114, 109, 101, 92, 95, 107, 103, 101, 32.34050 + 103, 110, 114, 110, 103, 100, 97, 98, 101, 107, 113, 118, 120, 121, 121, 121, 32.34051 + 120, 119, 115, 104, 89, 79, 81, 79, 77, 76, 77, 77, 75, 74, 75, 70, 32.34052 + 63, 57, 59, 63, 60, 54, 42, 39, 30, 17, 9, 7, 255, 255, 255, 255, 32.34053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 21, 54, 32.34054 + 98, 109, 95, 104, 107, 84, 64, 65, 71, 81, 82, 79, 77, 80, 86, 90, 32.34055 + 98, 106, 111, 115, 118, 119, 136, 137, 131, 122, 119, 125, 131, 132, 135, 139, 32.34056 + 144, 144, 139, 137, 138, 141, 128, 114, 101, 101, 103, 103, 104, 104, 107, 109, 32.34057 + 113, 119, 124, 130, 133, 133, 137, 127, 117, 113, 108, 103, 105, 113, 113, 114, 32.34058 + 113, 111, 110, 107, 107, 107, 115, 133, 137, 125, 125, 145, 161, 160, 136, 122, 32.34059 + 109, 104, 100, 95, 100, 112, 108, 109, 114, 119, 116, 107, 99, 99, 98, 100, 32.34060 + 103, 109, 115, 120, 121, 121, 125, 123, 119, 116, 110, 99, 85, 76, 81, 79, 32.34061 + 77, 77, 78, 78, 76, 75, 74, 69, 61, 55, 56, 60, 57, 51, 36, 34, 32.34062 + 23, 11, 4, 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34063 + 255, 255, 255, 255, 255, 199, 0, 4, 34, 48, 55, 67, 68, 55, 46, 55, 32.34064 + 69, 78, 81, 80, 79, 78, 75, 79, 87, 99, 108, 116, 119, 118, 133, 135, 32.34065 + 131, 120, 118, 124, 129, 128, 136, 139, 142, 142, 142, 141, 141, 142, 123, 104, 32.34066 + 89, 92, 101, 104, 108, 111, 112, 114, 118, 121, 128, 138, 145, 146, 122, 115, 32.34067 + 112, 114, 119, 123, 127, 132, 126, 124, 120, 120, 121, 122, 119, 116, 132, 154, 32.34068 + 157, 138, 135, 157, 169, 159, 136, 120, 107, 103, 101, 99, 103, 115, 112, 113, 32.34069 + 117, 119, 113, 103, 98, 99, 101, 100, 103, 108, 114, 119, 118, 119, 127, 125, 32.34070 + 122, 116, 108, 96, 84, 76, 82, 80, 79, 78, 79, 79, 77, 75, 71, 68, 32.34071 + 61, 56, 57, 59, 55, 48, 35, 31, 19, 7, 1, 87, 255, 255, 255, 255, 32.34072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 2, 32.34073 + 0, 0, 6, 2, 0, 1, 16, 42, 66, 74, 74, 77, 80, 80, 72, 73, 32.34074 + 78, 89, 102, 113, 117, 118, 126, 132, 128, 118, 117, 125, 130, 126, 133, 133, 32.34075 + 134, 138, 142, 145, 145, 144, 120, 99, 87, 95, 107, 112, 116, 120, 115, 117, 32.34076 + 116, 115, 122, 135, 144, 147, 137, 135, 134, 141, 152, 157, 151, 138, 153, 141, 32.34077 + 130, 129, 134, 139, 135, 131, 145, 161, 161, 146, 140, 153, 159, 152, 131, 116, 32.34078 + 108, 109, 110, 109, 111, 119, 117, 113, 110, 110, 109, 106, 104, 106, 106, 104, 32.34079 + 106, 109, 115, 119, 120, 120, 122, 124, 124, 118, 108, 95, 84, 78, 82, 81, 32.34080 + 80, 80, 82, 81, 78, 76, 70, 67, 63, 59, 61, 62, 56, 47, 37, 32, 32.34081 + 19, 7, 2, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34082 + 255, 255, 255, 255, 255, 255, 255, 4, 2, 7, 14, 0, 0, 7, 0, 31, 32.34083 + 64, 70, 67, 73, 81, 83, 75, 73, 73, 82, 94, 106, 113, 114, 122, 129, 32.34084 + 127, 118, 117, 126, 131, 126, 128, 126, 127, 132, 141, 146, 147, 144, 128, 108, 32.34085 + 99, 108, 119, 118, 114, 113, 111, 113, 111, 110, 119, 134, 148, 153, 130, 133, 32.34086 + 139, 155, 177, 188, 173, 149, 168, 150, 134, 129, 136, 141, 137, 131, 144, 148, 32.34087 + 148, 141, 136, 138, 139, 139, 126, 116, 110, 118, 123, 120, 121, 126, 121, 111, 32.34088 + 103, 104, 109, 112, 113, 113, 111, 109, 109, 112, 117, 121, 122, 124, 116, 120, 32.34089 + 123, 119, 106, 93, 83, 77, 82, 81, 80, 81, 81, 82, 78, 76, 69, 67, 32.34090 + 64, 61, 63, 64, 57, 49, 38, 31, 16, 3, 85, 255, 255, 255, 255, 255, 32.34091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 32.34092 + 5, 5, 6, 6, 4, 2, 3, 8, 43, 71, 69, 72, 83, 82, 84, 81, 32.34093 + 73, 69, 75, 90, 104, 107, 115, 125, 128, 119, 117, 125, 132, 129, 125, 129, 32.34094 + 127, 124, 131, 143, 144, 133, 118, 116, 108, 97, 99, 111, 112, 100, 129, 112, 32.34095 + 103, 108, 120, 130, 138, 145, 131, 135, 162, 176, 177, 200, 198, 151, 179, 159, 32.34096 + 141, 131, 133, 137, 138, 135, 137, 141, 142, 138, 131, 128, 131, 135, 129, 125, 32.34097 + 119, 119, 121, 123, 124, 123, 102, 102, 101, 106, 111, 114, 113, 110, 117, 115, 32.34098 + 114, 116, 119, 123, 124, 125, 125, 125, 122, 118, 110, 100, 92, 86, 84, 82, 32.34099 + 80, 81, 83, 84, 85, 84, 75, 72, 70, 68, 63, 56, 51, 49, 43, 29, 32.34100 + 13, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34101 + 255, 255, 255, 255, 255, 255, 255, 255, 171, 6, 7, 7, 5, 4, 0, 3, 32.34102 + 28, 54, 66, 74, 82, 84, 81, 80, 75, 71, 75, 87, 98, 103, 108, 119, 32.34103 + 124, 119, 118, 127, 132, 130, 120, 124, 122, 118, 124, 135, 135, 126, 113, 113, 32.34104 + 106, 98, 102, 113, 114, 104, 116, 108, 102, 107, 114, 124, 137, 151, 131, 125, 32.34105 + 149, 170, 163, 170, 175, 151, 161, 151, 141, 135, 134, 134, 136, 135, 131, 129, 32.34106 + 126, 123, 120, 124, 132, 140, 130, 126, 121, 124, 127, 123, 110, 98, 92, 96, 32.34107 + 103, 110, 115, 117, 116, 112, 116, 115, 113, 115, 118, 120, 121, 121, 117, 118, 32.34108 + 118, 117, 110, 102, 94, 90, 89, 86, 83, 80, 81, 79, 78, 76, 73, 71, 32.34109 + 69, 67, 62, 56, 49, 47, 38, 24, 9, 87, 255, 255, 255, 255, 255, 255, 32.34110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34111 + 255, 6, 7, 8, 7, 4, 0, 3, 12, 34, 61, 74, 76, 82, 78, 81, 32.34112 + 79, 74, 73, 82, 90, 94, 102, 113, 120, 118, 119, 127, 130, 128, 118, 120, 32.34113 + 116, 111, 115, 124, 124, 116, 108, 109, 104, 99, 101, 110, 110, 103, 105, 103, 32.34114 + 103, 105, 107, 114, 132, 148, 134, 117, 134, 154, 140, 131, 141, 145, 139, 142, 32.34115 + 140, 138, 135, 134, 132, 133, 130, 128, 126, 124, 120, 118, 114, 116, 119, 124, 32.34116 + 128, 129, 123, 108, 91, 79, 88, 98, 111, 121, 125, 124, 122, 120, 119, 118, 32.34117 + 117, 118, 121, 122, 121, 121, 115, 116, 118, 117, 111, 103, 95, 90, 91, 88, 32.34118 + 84, 81, 78, 77, 75, 73, 71, 70, 69, 66, 62, 57, 47, 42, 32, 19, 32.34119 + 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 8, 8, 7, 6, 5, 8, 32.34121 + 2, 15, 52, 69, 69, 78, 79, 84, 85, 79, 74, 77, 82, 84, 97, 107, 32.34122 + 114, 117, 121, 126, 128, 126, 122, 121, 117, 110, 110, 114, 114, 108, 106, 107, 32.34123 + 105, 101, 102, 108, 108, 101, 99, 98, 101, 102, 100, 103, 115, 128, 135, 118, 32.34124 + 125, 136, 122, 112, 123, 136, 131, 135, 136, 137, 136, 134, 131, 129, 123, 121, 32.34125 + 120, 120, 119, 115, 109, 108, 117, 123, 120, 104, 84, 77, 83, 92, 102, 113, 32.34126 + 127, 135, 137, 134, 132, 130, 124, 124, 123, 123, 124, 125, 124, 123, 119, 121, 32.34127 + 121, 119, 111, 101, 92, 85, 88, 85, 82, 81, 80, 79, 78, 78, 70, 71, 32.34128 + 69, 65, 63, 57, 46, 37, 27, 15, 255, 255, 255, 255, 255, 255, 255, 255, 32.34129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34130 + 255, 255, 172, 8, 9, 8, 10, 12, 0, 6, 40, 61, 66, 79, 81, 88, 32.34131 + 90, 83, 77, 75, 77, 76, 88, 95, 105, 111, 118, 127, 130, 129, 129, 127, 32.34132 + 122, 115, 110, 110, 108, 105, 104, 106, 106, 105, 107, 112, 112, 110, 103, 99, 32.34133 + 98, 101, 101, 99, 99, 105, 125, 119, 118, 117, 114, 116, 124, 129, 134, 133, 32.34134 + 131, 133, 135, 134, 130, 125, 119, 115, 113, 113, 115, 118, 119, 122, 111, 103, 32.34135 + 84, 65, 57, 70, 98, 121, 126, 133, 141, 145, 142, 139, 137, 136, 130, 127, 32.34136 + 125, 125, 125, 126, 124, 123, 123, 125, 124, 120, 113, 102, 93, 87, 88, 86, 32.34137 + 83, 82, 82, 82, 81, 81, 71, 72, 69, 63, 60, 57, 47, 35, 22, 11, 32.34138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 10, 10, 9, 10, 32.34140 + 2, 4, 24, 48, 67, 81, 80, 86, 89, 85, 80, 78, 77, 74, 78, 83, 32.34141 + 92, 102, 113, 124, 131, 136, 133, 132, 127, 122, 116, 111, 108, 105, 103, 104, 32.34142 + 105, 108, 111, 115, 118, 119, 116, 109, 107, 110, 111, 109, 105, 104, 114, 119, 32.34143 + 117, 112, 117, 129, 132, 130, 136, 133, 129, 128, 131, 130, 125, 121, 129, 130, 32.34144 + 130, 126, 119, 108, 98, 92, 67, 60, 57, 68, 90, 113, 129, 136, 142, 146, 32.34145 + 148, 147, 144, 140, 138, 138, 131, 128, 125, 122, 122, 122, 121, 121, 121, 122, 32.34146 + 121, 119, 113, 106, 99, 95, 92, 90, 86, 84, 82, 81, 79, 78, 70, 72, 32.34147 + 67, 60, 57, 56, 45, 31, 15, 89, 255, 255, 255, 255, 255, 255, 255, 255, 32.34148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34149 + 255, 255, 255, 255, 9, 11, 9, 8, 8, 3, 4, 31, 62, 74, 76, 79, 32.34150 + 84, 82, 82, 83, 80, 76, 76, 77, 82, 93, 104, 116, 126, 132, 133, 132, 32.34151 + 129, 126, 120, 113, 109, 107, 103, 103, 105, 107, 107, 111, 114, 118, 119, 113, 32.34152 + 111, 114, 117, 117, 118, 120, 118, 128, 129, 126, 133, 140, 139, 137, 131, 129, 32.34153 + 128, 125, 123, 120, 118, 118, 130, 131, 126, 114, 96, 78, 65, 59, 54, 62, 32.34154 + 81, 107, 132, 145, 147, 143, 149, 148, 147, 146, 146, 144, 140, 138, 135, 130, 32.34155 + 125, 121, 120, 121, 121, 121, 119, 119, 118, 116, 112, 107, 102, 100, 94, 92, 32.34156 + 87, 84, 82, 78, 76, 75, 68, 70, 63, 54, 52, 53, 42, 27, 13, 255, 32.34157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 12, 8, 32.34159 + 14, 7, 0, 18, 58, 69, 71, 75, 78, 79, 82, 86, 83, 78, 78, 76, 32.34160 + 78, 87, 98, 109, 118, 125, 131, 130, 129, 128, 123, 116, 111, 110, 107, 105, 32.34161 + 104, 104, 102, 102, 105, 109, 111, 107, 105, 109, 112, 115, 122, 131, 129, 139, 32.34162 + 141, 142, 146, 139, 135, 139, 124, 126, 130, 127, 119, 114, 114, 118, 109, 100, 32.34163 + 81, 60, 46, 48, 60, 72, 98, 110, 125, 132, 131, 132, 141, 150, 148, 146, 32.34164 + 144, 146, 147, 147, 143, 140, 139, 134, 126, 122, 120, 121, 123, 123, 120, 119, 32.34165 + 117, 113, 110, 106, 101, 100, 93, 91, 85, 83, 80, 78, 75, 73, 66, 67, 32.34166 + 60, 49, 49, 51, 40, 25, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34168 + 255, 255, 255, 255, 255, 174, 10, 9, 11, 9, 1, 4, 34, 68, 74, 72, 32.34169 + 76, 80, 80, 77, 78, 79, 78, 76, 71, 73, 80, 95, 108, 116, 118, 121, 32.34170 + 124, 129, 128, 124, 120, 116, 114, 111, 108, 107, 108, 111, 111, 111, 114, 114, 32.34171 + 113, 113, 112, 110, 108, 108, 118, 116, 115, 116, 116, 115, 111, 109, 110, 105, 32.34172 + 98, 91, 83, 78, 74, 73, 57, 57, 62, 76, 96, 117, 131, 135, 142, 141, 32.34173 + 140, 141, 139, 140, 139, 140, 137, 141, 144, 143, 139, 138, 140, 143, 136, 134, 32.34174 + 127, 124, 121, 122, 123, 126, 121, 118, 112, 108, 112, 117, 112, 104, 97, 91, 32.34175 + 83, 78, 74, 70, 69, 69, 70, 61, 53, 53, 54, 48, 32, 100, 255, 255, 32.34176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 9, 32.34178 + 12, 11, 2, 1, 22, 46, 65, 69, 78, 81, 80, 81, 82, 84, 80, 78, 32.34179 + 76, 76, 79, 88, 100, 106, 110, 114, 120, 126, 129, 128, 125, 124, 119, 116, 32.34180 + 113, 112, 114, 116, 117, 117, 115, 115, 116, 116, 114, 113, 112, 111, 94, 92, 32.34181 + 90, 90, 88, 83, 78, 75, 63, 65, 65, 69, 73, 81, 87, 92, 118, 123, 32.34182 + 129, 140, 149, 155, 155, 153, 147, 147, 146, 146, 144, 143, 143, 144, 134, 135, 32.34183 + 135, 137, 138, 142, 143, 143, 138, 134, 129, 123, 119, 119, 118, 120, 111, 111, 32.34184 + 107, 105, 108, 111, 104, 96, 94, 88, 79, 72, 68, 65, 63, 63, 64, 57, 32.34185 + 51, 50, 50, 43, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34187 + 255, 255, 255, 255, 255, 255, 255, 255, 8, 10, 5, 0, 9, 21, 42, 59, 32.34188 + 75, 77, 75, 79, 81, 80, 80, 81, 82, 80, 79, 82, 88, 93, 103, 107, 32.34189 + 114, 122, 126, 129, 129, 128, 123, 120, 117, 117, 118, 119, 119, 120, 119, 120, 32.34190 + 120, 120, 120, 120, 119, 118, 114, 113, 115, 118, 118, 117, 112, 108, 105, 107, 32.34191 + 110, 117, 124, 136, 144, 150, 146, 152, 157, 161, 157, 153, 146, 143, 150, 150, 32.34192 + 149, 148, 146, 145, 145, 145, 133, 130, 127, 129, 135, 140, 140, 139, 138, 134, 32.34193 + 128, 121, 116, 115, 113, 114, 110, 110, 109, 109, 112, 112, 105, 96, 95, 89, 32.34194 + 80, 71, 66, 65, 64, 63, 57, 52, 49, 48, 46, 109, 255, 255, 255, 255, 32.34195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34197 + 172, 9, 8, 3, 6, 10, 23, 47, 71, 76, 75, 78, 78, 74, 78, 81, 32.34198 + 84, 84, 81, 80, 84, 86, 98, 102, 109, 116, 123, 126, 128, 129, 124, 121, 32.34199 + 118, 118, 120, 121, 121, 120, 122, 123, 125, 128, 129, 130, 130, 130, 138, 139, 32.34200 + 142, 147, 148, 147, 143, 138, 131, 132, 134, 136, 140, 144, 147, 148, 153, 156, 32.34201 + 157, 153, 146, 141, 142, 144, 147, 147, 146, 145, 142, 141, 141, 140, 133, 130, 32.34202 + 126, 124, 126, 129, 129, 131, 134, 130, 125, 119, 115, 113, 111, 112, 114, 113, 32.34203 + 111, 112, 114, 113, 107, 101, 96, 93, 82, 72, 67, 66, 64, 61, 51, 49, 32.34204 + 47, 45, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 10, 8, 8, 9, 10, 35, 32.34207 + 62, 75, 80, 85, 82, 76, 74, 78, 82, 84, 84, 84, 85, 88, 91, 95, 32.34208 + 102, 111, 119, 125, 128, 129, 126, 123, 121, 121, 124, 125, 123, 122, 121, 123, 32.34209 + 127, 131, 135, 138, 140, 141, 147, 148, 148, 149, 147, 143, 135, 129, 138, 140, 32.34210 + 144, 148, 150, 151, 151, 150, 152, 154, 154, 149, 142, 141, 146, 152, 147, 148, 32.34211 + 145, 144, 142, 140, 139, 138, 137, 137, 133, 127, 120, 118, 119, 123, 125, 124, 32.34212 + 122, 119, 117, 113, 112, 111, 112, 109, 105, 106, 106, 104, 102, 100, 92, 90, 32.34213 + 81, 69, 64, 64, 61, 55, 48, 48, 45, 41, 108, 255, 255, 255, 255, 255, 32.34214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34216 + 255, 255, 173, 9, 9, 7, 1, 16, 40, 62, 78, 81, 81, 78, 71, 73, 32.34217 + 77, 81, 85, 87, 88, 88, 83, 87, 94, 105, 113, 121, 127, 130, 128, 126, 32.34218 + 125, 125, 127, 128, 126, 125, 120, 122, 127, 133, 138, 142, 144, 146, 151, 150, 32.34219 + 150, 152, 152, 148, 142, 137, 127, 130, 134, 139, 140, 142, 140, 140, 140, 145, 32.34220 + 147, 146, 140, 139, 140, 145, 150, 150, 147, 145, 143, 141, 139, 138, 141, 142, 32.34221 + 138, 130, 120, 114, 115, 119, 115, 117, 119, 121, 120, 116, 113, 111, 112, 107, 32.34222 + 103, 102, 100, 96, 95, 96, 91, 92, 84, 71, 66, 66, 61, 53, 48, 46, 32.34223 + 42, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 9, 7, 6, 3, 32.34226 + 17, 46, 67, 71, 73, 75, 75, 72, 71, 76, 83, 87, 87, 85, 81, 86, 32.34227 + 91, 100, 109, 116, 122, 125, 129, 126, 125, 126, 127, 127, 126, 124, 124, 127, 32.34228 + 131, 135, 140, 144, 147, 147, 145, 145, 146, 150, 152, 153, 150, 147, 142, 142, 32.34229 + 143, 144, 144, 145, 145, 145, 144, 146, 148, 147, 143, 141, 142, 145, 147, 148, 32.34230 + 145, 142, 140, 137, 135, 135, 140, 138, 134, 128, 121, 116, 113, 114, 109, 114, 32.34231 + 120, 123, 123, 118, 113, 108, 110, 105, 101, 102, 100, 93, 88, 90, 90, 93, 32.34232 + 87, 74, 68, 68, 63, 51, 45, 44, 40, 255, 255, 255, 255, 255, 255, 255, 32.34233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34235 + 255, 255, 255, 255, 173, 8, 21, 6, 11, 39, 63, 67, 68, 73, 78, 73, 32.34236 + 68, 72, 80, 86, 84, 80, 84, 89, 93, 98, 105, 112, 116, 119, 127, 125, 32.34237 + 123, 123, 126, 125, 124, 121, 129, 132, 136, 139, 143, 146, 148, 149, 152, 150, 32.34238 + 150, 151, 153, 152, 149, 146, 140, 139, 136, 135, 136, 138, 141, 143, 141, 139, 32.34239 + 136, 132, 130, 132, 136, 140, 141, 141, 138, 136, 133, 131, 128, 128, 136, 132, 32.34240 + 125, 123, 121, 118, 112, 108, 107, 113, 121, 125, 124, 120, 112, 107, 105, 100, 32.34241 + 99, 102, 98, 88, 81, 83, 84, 88, 83, 72, 64, 65, 57, 44, 45, 43, 32.34242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 11, 7, 32.34245 + 6, 14, 31, 51, 65, 71, 76, 79, 78, 71, 69, 75, 79, 79, 86, 88, 32.34246 + 90, 91, 94, 100, 108, 113, 121, 120, 121, 121, 122, 121, 120, 122, 128, 132, 32.34247 + 136, 141, 145, 148, 150, 149, 148, 149, 149, 147, 149, 152, 151, 145, 139, 134, 32.34248 + 132, 134, 133, 132, 137, 146, 143, 143, 139, 132, 130, 134, 137, 136, 141, 132, 32.34249 + 126, 129, 131, 130, 129, 133, 139, 133, 122, 115, 117, 121, 117, 111, 106, 113, 32.34250 + 116, 116, 118, 121, 119, 115, 111, 107, 108, 110, 104, 92, 86, 87, 90, 88, 32.34251 + 79, 63, 53, 51, 52, 52, 40, 109, 255, 255, 255, 255, 255, 255, 255, 255, 32.34252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34254 + 255, 255, 255, 255, 255, 174, 8, 6, 5, 6, 16, 34, 54, 69, 65, 74, 32.34255 + 79, 78, 77, 81, 83, 82, 85, 86, 88, 89, 92, 98, 105, 108, 118, 119, 32.34256 + 121, 122, 123, 123, 122, 122, 127, 129, 133, 138, 142, 145, 146, 147, 146, 147, 32.34257 + 144, 141, 143, 148, 149, 145, 138, 136, 138, 142, 141, 137, 138, 144, 140, 140, 32.34258 + 136, 129, 127, 131, 133, 133, 130, 126, 126, 131, 135, 133, 134, 137, 133, 132, 32.34259 + 128, 123, 120, 118, 110, 102, 99, 109, 115, 114, 114, 115, 115, 114, 120, 111, 32.34260 + 108, 111, 111, 103, 92, 87, 85, 83, 72, 56, 44, 39, 37, 34, 110, 255, 32.34261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 10, 32.34264 + 7, 0, 0, 10, 34, 54, 58, 68, 77, 78, 77, 80, 84, 85, 83, 84, 32.34265 + 86, 87, 88, 93, 99, 103, 112, 114, 117, 120, 122, 122, 121, 120, 125, 126, 32.34266 + 130, 134, 137, 141, 142, 143, 145, 145, 141, 136, 136, 141, 142, 139, 134, 136, 32.34267 + 143, 149, 147, 141, 137, 137, 139, 139, 135, 129, 127, 130, 132, 130, 126, 127, 32.34268 + 132, 136, 138, 135, 135, 138, 118, 123, 126, 125, 124, 120, 110, 101, 99, 112, 32.34269 + 121, 118, 112, 110, 111, 114, 121, 110, 103, 106, 111, 106, 92, 82, 71, 69, 32.34270 + 61, 51, 44, 41, 40, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34273 + 255, 255, 255, 255, 255, 255, 255, 16, 13, 3, 0, 0, 15, 29, 54, 62, 32.34274 + 68, 69, 69, 72, 79, 85, 82, 83, 84, 85, 86, 90, 95, 98, 103, 106, 32.34275 + 111, 117, 119, 121, 119, 118, 122, 125, 127, 131, 135, 138, 140, 141, 144, 145, 32.34276 + 141, 136, 135, 137, 134, 129, 128, 134, 142, 147, 145, 139, 133, 131, 134, 135, 32.34277 + 132, 126, 125, 128, 129, 127, 127, 130, 133, 134, 131, 127, 129, 133, 120, 122, 32.34278 + 123, 123, 124, 122, 109, 98, 106, 120, 130, 124, 114, 109, 112, 115, 118, 109, 32.34279 + 101, 102, 107, 103, 90, 80, 62, 62, 56, 50, 47, 48, 45, 112, 255, 255, 32.34280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.34283 + 18, 13, 7, 5, 8, 11, 42, 48, 57, 64, 67, 69, 75, 81, 82, 83, 32.34284 + 84, 84, 85, 88, 92, 95, 99, 103, 109, 114, 119, 120, 118, 119, 122, 123, 32.34285 + 126, 129, 132, 136, 138, 140, 141, 145, 143, 138, 136, 134, 126, 119, 126, 132, 32.34286 + 138, 141, 140, 137, 132, 129, 127, 129, 127, 122, 121, 125, 126, 124, 126, 128, 32.34287 + 127, 123, 119, 119, 123, 127, 136, 131, 123, 119, 120, 120, 107, 94, 103, 118, 32.34288 + 127, 123, 113, 110, 112, 115, 114, 112, 106, 104, 103, 99, 91, 85, 72, 67, 32.34289 + 59, 49, 46, 45, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 26, 24, 21, 16, 14, 25, 32, 32.34293 + 45, 61, 71, 72, 73, 76, 80, 81, 83, 84, 84, 87, 90, 94, 98, 102, 32.34294 + 108, 113, 118, 120, 120, 121, 120, 121, 123, 127, 130, 133, 137, 138, 139, 141, 32.34295 + 142, 139, 135, 132, 123, 113, 122, 129, 135, 136, 135, 135, 133, 129, 127, 129, 32.34296 + 128, 125, 125, 129, 131, 128, 127, 127, 124, 118, 117, 124, 131, 134, 132, 129, 32.34297 + 121, 117, 121, 124, 117, 107, 97, 108, 117, 118, 114, 114, 113, 112, 106, 110, 32.34298 + 108, 101, 95, 91, 87, 84, 78, 71, 59, 50, 47, 255, 255, 255, 255, 255, 32.34299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34302 + 255, 182, 33, 31, 28, 27, 20, 21, 30, 47, 61, 67, 72, 75, 78, 79, 32.34303 + 80, 82, 82, 84, 88, 92, 96, 99, 104, 109, 114, 116, 118, 119, 117, 119, 32.34304 + 120, 122, 126, 130, 133, 134, 135, 138, 138, 135, 132, 130, 123, 115, 115, 124, 32.34305 + 130, 130, 130, 132, 130, 125, 125, 128, 128, 126, 127, 132, 134, 131, 128, 127, 32.34306 + 123, 117, 121, 131, 138, 137, 122, 127, 128, 126, 126, 126, 122, 118, 105, 110, 32.34307 + 114, 116, 120, 121, 115, 108, 102, 107, 105, 96, 91, 88, 84, 80, 72, 65, 32.34308 + 53, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 32, 34, 37, 28, 19, 32.34312 + 18, 30, 46, 58, 68, 77, 76, 76, 79, 81, 81, 83, 87, 90, 92, 95, 32.34313 + 99, 104, 108, 113, 116, 116, 116, 116, 118, 120, 123, 128, 131, 133, 132, 134, 32.34314 + 134, 130, 130, 130, 124, 118, 108, 118, 125, 126, 126, 128, 126, 119, 116, 119, 32.34315 + 120, 118, 120, 125, 127, 126, 125, 124, 118, 113, 118, 129, 133, 130, 125, 136, 32.34316 + 143, 138, 127, 119, 113, 110, 119, 120, 122, 123, 128, 128, 118, 107, 107, 109, 32.34317 + 106, 98, 94, 94, 89, 82, 68, 59, 45, 255, 255, 255, 255, 255, 255, 255, 32.34318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34321 + 255, 255, 255, 180, 28, 26, 21, 20, 21, 25, 30, 42, 62, 80, 75, 79, 32.34322 + 72, 89, 77, 88, 78, 82, 86, 85, 88, 97, 102, 104, 109, 114, 121, 116, 32.34323 + 114, 116, 123, 129, 130, 129, 127, 130, 132, 129, 123, 120, 122, 125, 120, 117, 32.34324 + 114, 119, 128, 136, 137, 136, 123, 122, 117, 114, 115, 122, 125, 124, 124, 122, 32.34325 + 121, 122, 123, 123, 122, 121, 122, 137, 144, 131, 114, 112, 120, 127, 116, 121, 32.34326 + 123, 122, 122, 119, 109, 100, 104, 104, 103, 98, 89, 81, 74, 73, 62, 57, 32.34327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 32, 20, 21, 32.34331 + 21, 21, 19, 26, 45, 61, 69, 75, 69, 80, 65, 77, 74, 84, 78, 79, 32.34332 + 84, 94, 101, 105, 110, 114, 119, 117, 116, 119, 124, 127, 127, 124, 130, 133, 32.34333 + 135, 132, 126, 120, 119, 121, 133, 132, 130, 129, 129, 131, 132, 133, 123, 123, 32.34334 + 120, 116, 118, 124, 127, 126, 130, 127, 122, 120, 119, 120, 119, 118, 123, 131, 32.34335 + 135, 128, 121, 119, 119, 118, 112, 115, 116, 118, 121, 123, 116, 107, 104, 102, 32.34336 + 97, 91, 81, 71, 60, 55, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34340 + 255, 255, 255, 255, 255, 181, 21, 22, 21, 18, 12, 11, 23, 37, 55, 66, 32.34341 + 69, 77, 67, 75, 76, 86, 75, 75, 80, 90, 96, 100, 104, 110, 116, 117, 32.34342 + 120, 122, 124, 124, 121, 119, 129, 129, 130, 129, 127, 123, 120, 118, 126, 129, 32.34343 + 130, 130, 129, 132, 136, 141, 124, 125, 122, 119, 121, 127, 128, 126, 135, 130, 32.34344 + 125, 121, 120, 122, 122, 122, 123, 125, 125, 125, 128, 126, 118, 108, 114, 117, 32.34345 + 117, 117, 122, 124, 117, 108, 110, 103, 95, 88, 81, 70, 55, 115, 255, 255, 32.34346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 32.34350 + 23, 22, 17, 12, 12, 18, 36, 51, 65, 75, 73, 77, 76, 78, 80, 76, 32.34351 + 77, 83, 87, 91, 97, 103, 112, 115, 121, 125, 124, 121, 117, 114, 125, 123, 32.34352 + 122, 123, 126, 126, 125, 123, 120, 121, 123, 125, 128, 133, 138, 142, 126, 126, 32.34353 + 124, 122, 124, 129, 129, 126, 129, 127, 122, 121, 122, 124, 124, 125, 123, 121, 32.34354 + 121, 125, 129, 127, 117, 108, 111, 118, 123, 123, 123, 122, 118, 112, 112, 103, 32.34355 + 89, 82, 76, 69, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34359 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 26, 27, 20, 15, 12, 28, 38, 32.34360 + 51, 57, 67, 72, 75, 70, 81, 76, 73, 75, 78, 84, 92, 100, 104, 111, 32.34361 + 119, 122, 121, 117, 114, 114, 127, 124, 122, 123, 125, 127, 129, 130, 133, 128, 32.34362 + 124, 125, 129, 133, 132, 130, 129, 131, 130, 127, 129, 132, 132, 128, 122, 121, 32.34363 + 119, 119, 120, 120, 118, 118, 120, 121, 122, 124, 122, 120, 116, 115, 105, 118, 32.34364 + 128, 128, 122, 119, 117, 115, 107, 93, 77, 66, 62, 122, 255, 255, 255, 255, 32.34365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34369 + 255, 255, 30, 28, 23, 21, 42, 43, 49, 40, 54, 61, 73, 69, 77, 70, 32.34370 + 66, 68, 71, 78, 87, 96, 94, 102, 111, 115, 114, 112, 113, 115, 132, 131, 32.34371 + 129, 127, 128, 130, 133, 134, 143, 136, 128, 128, 133, 136, 133, 129, 131, 133, 32.34372 + 133, 131, 132, 136, 134, 129, 125, 124, 122, 121, 120, 119, 116, 113, 118, 121, 32.34373 + 123, 123, 117, 112, 114, 120, 114, 127, 134, 127, 114, 105, 101, 99, 99, 86, 32.34374 + 67, 100, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 40, 58, 57, 32.34379 + 59, 35, 45, 47, 66, 63, 71, 66, 63, 65, 67, 71, 77, 84, 83, 92, 32.34380 + 102, 106, 105, 106, 111, 118, 126, 130, 132, 132, 131, 131, 132, 135, 135, 131, 32.34381 + 128, 127, 129, 132, 132, 131, 127, 130, 130, 129, 130, 133, 130, 125, 125, 122, 32.34382 + 118, 117, 116, 115, 113, 113, 114, 117, 121, 123, 113, 106, 108, 117, 126, 129, 32.34383 + 125, 115, 103, 93, 86, 79, 85, 75, 126, 255, 255, 255, 255, 255, 255, 255, 32.34384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34388 + 255, 255, 255, 255, 255, 255, 190, 62, 67, 37, 40, 33, 51, 47, 70, 65, 32.34389 + 63, 65, 65, 65, 66, 71, 77, 86, 97, 100, 99, 102, 111, 119, 114, 123, 32.34390 + 131, 135, 133, 132, 133, 136, 130, 130, 127, 123, 119, 118, 120, 123, 121, 124, 32.34391 + 125, 124, 125, 127, 124, 118, 115, 111, 106, 104, 106, 108, 109, 109, 113, 115, 32.34392 + 121, 122, 115, 104, 106, 113, 120, 117, 109, 100, 97, 96, 89, 81, 131, 255, 32.34393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34398 + 198, 76, 33, 33, 47, 34, 55, 59, 62, 63, 66, 72, 74, 72, 78, 77, 32.34399 + 81, 91, 100, 105, 109, 112, 118, 120, 123, 128, 129, 128, 123, 118, 127, 127, 32.34400 + 128, 126, 122, 116, 110, 107, 117, 117, 121, 125, 123, 116, 113, 115, 112, 108, 32.34401 + 107, 109, 109, 104, 104, 107, 112, 114, 115, 109, 101, 95, 96, 98, 105, 98, 32.34402 + 85, 77, 81, 83, 69, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 35, 40, 32.34408 + 44, 48, 56, 64, 65, 61, 75, 77, 79, 84, 90, 98, 102, 105, 106, 111, 32.34409 + 118, 124, 125, 124, 119, 115, 116, 118, 120, 119, 116, 114, 113, 114, 108, 108, 32.34410 + 111, 119, 120, 120, 117, 120, 110, 105, 104, 105, 104, 103, 106, 110, 104, 108, 32.34411 + 110, 106, 98, 91, 90, 92, 96, 92, 83, 76, 134, 255, 255, 255, 255, 255, 32.34412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 115, 116, 118, 32.34419 + 119, 116, 112, 110, 114, 118, 113, 110, 108, 114, 117, 116, 113, 114, 108, 105, 32.34420 + 105, 108, 108, 104, 105, 108, 111, 114, 113, 107, 97, 89, 84, 84, 86, 87, 32.34421 + 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 103, 107, 114, 115, 108, 32.34429 + 104, 108, 112, 111, 108, 107, 109, 108, 112, 116, 115, 107, 100, 100, 115, 114, 32.34430 + 112, 105, 97, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34436 + 14, 20, 10, 17, 19, 14, 1, 0, 5, 12, 16, 11, 8, 7, 9, 5, 32.34437 + 5, 3, 4, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 95, 32.34438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34445 + 255, 255, 255, 255, 182, 17, 24, 9, 14, 9, 14, 14, 26, 17, 18, 23, 32.34446 + 32, 31, 35, 35, 38, 35, 50, 45, 44, 40, 41, 36, 33, 26, 16, 12, 32.34447 + 11, 7, 9, 6, 6, 4, 2, 13, 11, 13, 13, 4, 8, 71, 201, 255, 32.34448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 42, 35, 15, 20, 7, 32.34455 + 22, 21, 41, 41, 56, 45, 49, 62, 67, 62, 61, 67, 71, 69, 62, 59, 32.34456 + 60, 63, 67, 68, 66, 63, 51, 49, 47, 42, 34, 21, 8, 1, 6, 4, 32.34457 + 0, 3, 8, 0, 14, 40, 111, 77, 47, 38, 28, 10, 62, 202, 255, 255, 32.34458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34464 + 183, 46, 42, 34, 33, 33, 51, 55, 61, 65, 67, 68, 70, 71, 68, 69, 32.34465 + 70, 72, 75, 77, 78, 78, 74, 75, 76, 75, 74, 74, 76, 78, 74, 72, 32.34466 + 69, 65, 61, 57, 54, 53, 38, 41, 40, 27, 13, 12, 27, 42, 69, 43, 32.34467 + 34, 48, 39, 7, 0, 9, 6, 65, 200, 255, 255, 255, 255, 255, 255, 255, 32.34468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34473 + 255, 255, 255, 255, 255, 255, 255, 21, 38, 49, 55, 60, 66, 72, 62, 64, 32.34474 + 70, 70, 73, 72, 75, 75, 80, 79, 82, 82, 86, 86, 89, 88, 88, 87, 32.34475 + 89, 85, 84, 81, 84, 83, 82, 79, 79, 75, 74, 70, 70, 69, 72, 73, 32.34476 + 67, 53, 36, 22, 18, 17, 48, 34, 25, 26, 23, 11, 5, 9, 4, 11, 32.34477 + 9, 8, 15, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 48, 51, 32.34483 + 56, 60, 60, 61, 64, 66, 74, 74, 78, 77, 79, 77, 81, 81, 85, 83, 32.34484 + 86, 86, 89, 88, 91, 90, 94, 93, 95, 91, 91, 87, 89, 88, 90, 88, 32.34485 + 90, 87, 89, 86, 88, 88, 77, 76, 75, 72, 68, 62, 55, 48, 28, 26, 32.34486 + 17, 4, 1, 7, 6, 0, 3, 12, 14, 13, 15, 19, 20, 18, 90, 255, 32.34487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34492 + 255, 255, 171, 15, 34, 45, 58, 58, 61, 64, 68, 72, 74, 74, 78, 80, 32.34493 + 83, 81, 83, 82, 87, 88, 87, 85, 88, 87, 89, 88, 91, 89, 92, 93, 32.34494 + 96, 95, 95, 93, 95, 96, 94, 94, 95, 94, 95, 95, 96, 96, 97, 90, 32.34495 + 84, 79, 77, 74, 71, 67, 37, 35, 23, 5, 0, 3, 0, 0, 6, 10, 32.34496 + 15, 16, 17, 24, 24, 11, 8, 14, 12, 91, 255, 255, 255, 255, 255, 255, 32.34497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34501 + 255, 255, 255, 255, 255, 255, 255, 203, 71, 18, 28, 44, 55, 58, 60, 60, 32.34502 + 65, 72, 79, 84, 86, 85, 84, 86, 89, 88, 89, 90, 94, 96, 97, 96, 32.34503 + 97, 96, 98, 97, 98, 97, 98, 99, 103, 101, 102, 99, 101, 100, 97, 95, 32.34504 + 97, 94, 96, 94, 96, 96, 98, 95, 88, 80, 76, 74, 73, 74, 66, 56, 32.34505 + 44, 34, 26, 16, 6, 3, 8, 6, 10, 15, 20, 34, 32, 8, 13, 15, 32.34506 + 11, 9, 2, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 32.34511 + 33, 42, 57, 69, 73, 69, 74, 74, 78, 80, 80, 79, 78, 76, 90, 95, 32.34512 + 97, 98, 99, 100, 102, 104, 106, 105, 105, 104, 104, 103, 103, 101, 101, 103, 32.34513 + 105, 104, 101, 98, 97, 97, 97, 97, 96, 95, 94, 93, 93, 92, 76, 79, 32.34514 + 84, 83, 81, 80, 83, 86, 78, 66, 60, 59, 50, 32, 22, 22, 19, 9, 32.34515 + 11, 16, 22, 45, 48, 17, 26, 18, 16, 9, 6, 21, 6, 255, 255, 255, 32.34516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34520 + 255, 255, 255, 255, 255, 255, 180, 39, 50, 57, 66, 72, 73, 68, 73, 75, 32.34521 + 78, 80, 84, 85, 89, 90, 97, 100, 103, 104, 103, 103, 103, 104, 104, 104, 32.34522 + 103, 102, 101, 100, 100, 99, 97, 97, 99, 99, 96, 93, 92, 92, 94, 93, 32.34523 + 93, 92, 91, 90, 89, 89, 86, 87, 89, 87, 82, 78, 78, 77, 78, 71, 32.34524 + 68, 69, 64, 52, 43, 42, 41, 25, 23, 22, 20, 49, 61, 32, 39, 21, 32.34525 + 25, 13, 18, 16, 11, 18, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 59, 70, 32.34530 + 81, 85, 84, 86, 86, 85, 92, 92, 94, 91, 90, 88, 92, 94, 98, 103, 32.34531 + 106, 107, 105, 103, 102, 102, 104, 104, 103, 102, 101, 99, 98, 98, 91, 94, 32.34532 + 98, 99, 98, 96, 95, 95, 91, 91, 90, 90, 89, 88, 88, 88, 91, 88, 32.34533 + 84, 82, 84, 86, 86, 86, 76, 77, 77, 74, 72, 69, 60, 53, 57, 38, 32.34534 + 32, 24, 14, 43, 62, 39, 46, 21, 31, 18, 29, 18, 21, 32, 14, 22, 32.34535 + 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34539 + 255, 255, 255, 31, 43, 51, 75, 77, 82, 86, 88, 91, 95, 97, 95, 95, 32.34540 + 95, 95, 96, 94, 97, 97, 101, 101, 103, 104, 104, 104, 104, 104, 104, 104, 32.34541 + 103, 102, 101, 100, 99, 99, 95, 92, 89, 90, 92, 92, 90, 87, 88, 86, 32.34542 + 84, 82, 80, 79, 78, 78, 76, 76, 78, 79, 79, 79, 79, 79, 79, 80, 32.34543 + 82, 81, 79, 76, 73, 73, 60, 64, 41, 34, 44, 23, 9, 32, 25, 14, 32.34544 + 55, 21, 16, 27, 34, 52, 32, 11, 23, 109, 255, 255, 255, 255, 255, 255, 32.34545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 23, 35, 60, 80, 80, 83, 32.34549 + 87, 89, 90, 92, 94, 96, 97, 97, 98, 98, 98, 99, 99, 99, 103, 103, 32.34550 + 104, 104, 104, 104, 104, 104, 102, 102, 101, 100, 99, 97, 97, 96, 90, 88, 32.34551 + 87, 88, 91, 92, 91, 89, 89, 87, 85, 83, 81, 79, 79, 78, 78, 79, 32.34552 + 79, 79, 80, 80, 80, 80, 80, 81, 81, 81, 80, 78, 76, 75, 73, 77, 32.34553 + 58, 46, 49, 30, 18, 42, 44, 29, 61, 27, 23, 34, 36, 48, 79, 36, 32.34554 + 20, 27, 45, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34558 + 30, 33, 51, 74, 87, 90, 90, 93, 95, 96, 96, 96, 97, 98, 100, 100, 32.34559 + 101, 101, 101, 102, 102, 102, 104, 104, 104, 104, 104, 103, 103, 103, 102, 101, 32.34560 + 100, 99, 98, 97, 96, 96, 92, 89, 88, 88, 90, 91, 90, 89, 88, 87, 32.34561 + 85, 82, 80, 79, 78, 78, 77, 76, 75, 74, 74, 74, 74, 75, 80, 81, 32.34562 + 81, 82, 82, 82, 81, 81, 83, 89, 77, 65, 64, 46, 37, 58, 50, 31, 32.34563 + 55, 25, 25, 33, 36, 45, 77, 38, 23, 31, 62, 75, 111, 255, 255, 255, 32.34564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34567 + 255, 255, 255, 255, 255, 255, 176, 21, 34, 57, 86, 104, 100, 88, 96, 98, 32.34568 + 100, 101, 99, 99, 100, 101, 101, 101, 101, 102, 102, 103, 103, 103, 105, 104, 32.34569 + 103, 102, 102, 101, 101, 101, 103, 102, 102, 101, 100, 99, 98, 96, 99, 98, 32.34570 + 97, 96, 95, 93, 92, 91, 91, 89, 87, 85, 84, 82, 82, 82, 79, 78, 32.34571 + 76, 74, 73, 73, 73, 73, 77, 78, 79, 80, 81, 81, 82, 84, 77, 84, 32.34572 + 79, 74, 76, 61, 53, 65, 36, 19, 38, 16, 19, 24, 36, 45, 50, 34, 32.34573 + 35, 35, 55, 71, 47, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 6, 38, 32.34577 + 72, 91, 94, 95, 98, 99, 96, 98, 101, 101, 100, 100, 101, 102, 100, 100, 32.34578 + 100, 100, 101, 101, 101, 102, 102, 101, 100, 98, 98, 98, 98, 99, 100, 100, 32.34579 + 99, 99, 99, 99, 98, 98, 103, 101, 101, 99, 98, 96, 96, 96, 93, 92, 32.34580 + 91, 89, 88, 87, 87, 89, 91, 92, 90, 88, 85, 84, 83, 82, 79, 79, 32.34581 + 79, 79, 79, 80, 81, 81, 73, 74, 74, 77, 81, 73, 63, 63, 31, 17, 32.34582 + 31, 12, 11, 12, 30, 38, 30, 25, 23, 6, 10, 30, 24, 21, 13, 255, 32.34583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34586 + 255, 255, 170, 3, 10, 27, 59, 79, 96, 100, 95, 93, 97, 100, 94, 97, 32.34587 + 99, 100, 99, 99, 100, 101, 98, 98, 98, 99, 99, 99, 100, 100, 102, 101, 32.34588 + 99, 98, 97, 98, 99, 100, 98, 99, 99, 100, 101, 101, 102, 100, 99, 101, 32.34589 + 103, 103, 102, 102, 104, 106, 100, 100, 99, 98, 98, 99, 99, 102, 101, 102, 32.34590 + 101, 99, 96, 93, 90, 88, 84, 84, 82, 80, 79, 79, 79, 79, 78, 74, 32.34591 + 76, 79, 82, 76, 67, 58, 42, 26, 31, 13, 6, 0, 16, 20, 40, 37, 32.34592 + 38, 23, 26, 43, 33, 29, 11, 11, 255, 255, 255, 255, 255, 255, 255, 255, 32.34593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 21, 40, 70, 101, 97, 32.34596 + 94, 92, 96, 101, 98, 90, 95, 97, 99, 99, 97, 97, 97, 98, 97, 97, 32.34597 + 97, 98, 98, 98, 99, 99, 103, 102, 100, 99, 99, 101, 103, 104, 101, 102, 32.34598 + 103, 105, 106, 108, 109, 108, 103, 104, 107, 108, 107, 107, 110, 113, 108, 107, 32.34599 + 107, 108, 109, 110, 111, 113, 112, 114, 114, 112, 108, 103, 98, 95, 98, 96, 32.34600 + 92, 89, 86, 84, 83, 83, 84, 78, 78, 78, 76, 75, 73, 63, 58, 40, 32.34601 + 34, 19, 13, 0, 14, 13, 10, 10, 21, 14, 17, 27, 13, 8, 12, 11, 32.34602 + 13, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34605 + 15, 20, 41, 72, 73, 89, 87, 92, 95, 93, 92, 94, 96, 94, 96, 98, 32.34606 + 99, 99, 96, 95, 95, 96, 97, 97, 97, 98, 98, 98, 99, 99, 104, 103, 32.34607 + 101, 100, 101, 103, 106, 107, 106, 107, 108, 111, 113, 115, 117, 116, 111, 112, 32.34608 + 115, 114, 112, 111, 113, 116, 113, 114, 114, 115, 116, 118, 120, 124, 122, 125, 32.34609 + 126, 124, 121, 114, 109, 104, 108, 104, 101, 95, 92, 88, 87, 85, 86, 79, 32.34610 + 80, 77, 70, 72, 79, 72, 73, 50, 41, 29, 30, 12, 29, 20, 27, 27, 32.34611 + 33, 19, 13, 21, 19, 29, 12, 11, 11, 12, 91, 255, 255, 255, 255, 255, 32.34612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34614 + 255, 255, 255, 255, 255, 255, 255, 25, 45, 60, 74, 84, 86, 83, 94, 93, 32.34615 + 94, 93, 92, 89, 89, 89, 92, 93, 94, 95, 96, 96, 96, 96, 98, 98, 32.34616 + 98, 98, 99, 101, 102, 103, 100, 101, 103, 106, 109, 110, 111, 112, 107, 108, 32.34617 + 111, 114, 116, 117, 117, 117, 114, 120, 117, 115, 123, 122, 116, 118, 122, 118, 32.34618 + 119, 125, 125, 119, 116, 122, 129, 126, 127, 128, 131, 125, 121, 115, 115, 107, 32.34619 + 101, 94, 94, 89, 87, 82, 88, 84, 79, 76, 75, 73, 73, 71, 65, 57, 32.34620 + 51, 43, 32, 25, 32, 48, 50, 57, 68, 32, 13, 22, 10, 14, 12, 6, 32.34621 + 3, 7, 10, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 43, 56, 32.34624 + 70, 80, 88, 92, 91, 86, 93, 95, 95, 93, 93, 92, 92, 94, 92, 93, 32.34625 + 95, 97, 98, 99, 99, 99, 100, 100, 100, 101, 102, 104, 105, 106, 101, 103, 32.34626 + 105, 107, 110, 111, 112, 112, 116, 116, 116, 117, 118, 120, 122, 123, 124, 127, 32.34627 + 124, 119, 127, 123, 118, 118, 134, 129, 128, 122, 117, 107, 105, 108, 119, 122, 32.34628 + 119, 108, 94, 89, 95, 105, 106, 102, 99, 100, 102, 101, 96, 91, 70, 70, 32.34629 + 74, 76, 77, 75, 68, 63, 81, 63, 48, 45, 46, 38, 26, 20, 41, 37, 32.34630 + 58, 54, 34, 15, 0, 23, 26, 15, 5, 4, 6, 6, 90, 255, 255, 255, 32.34631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34633 + 255, 255, 255, 255, 170, 24, 68, 78, 87, 92, 93, 93, 88, 82, 86, 87, 32.34634 + 86, 85, 86, 86, 91, 93, 94, 95, 97, 99, 101, 103, 103, 104, 105, 105, 32.34635 + 105, 106, 107, 109, 110, 111, 107, 108, 110, 112, 114, 116, 116, 117, 126, 125, 32.34636 + 123, 123, 124, 126, 129, 131, 132, 135, 130, 124, 131, 125, 119, 121, 131, 128, 32.34637 + 123, 106, 95, 87, 86, 86, 85, 70, 52, 54, 70, 76, 63, 46, 56, 47, 32.34638 + 39, 39, 48, 58, 62, 60, 80, 70, 61, 55, 55, 63, 70, 74, 72, 65, 32.34639 + 59, 55, 47, 32, 17, 12, 34, 46, 60, 38, 17, 17, 13, 22, 11, 5, 32.34640 + 3, 8, 9, 6, 1, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 8, 35, 62, 74, 81, 32.34643 + 89, 90, 89, 88, 84, 80, 81, 81, 81, 81, 82, 84, 91, 94, 96, 97, 32.34644 + 100, 102, 105, 107, 108, 109, 109, 110, 110, 111, 112, 114, 116, 117, 116, 117, 32.34645 + 118, 120, 122, 123, 123, 123, 128, 128, 129, 130, 132, 134, 136, 137, 137, 137, 32.34646 + 131, 126, 133, 125, 120, 124, 121, 119, 112, 91, 79, 75, 78, 78, 54, 61, 32.34647 + 67, 71, 72, 70, 61, 52, 53, 41, 27, 22, 26, 31, 31, 28, 43, 42, 32.34648 + 46, 47, 47, 42, 37, 31, 57, 59, 62, 62, 54, 41, 30, 29, 20, 46, 32.34649 + 56, 34, 16, 16, 6, 0, 5, 5, 9, 12, 10, 3, 0, 0, 255, 255, 32.34650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34652 + 255, 170, 2, 30, 68, 82, 78, 85, 92, 91, 90, 89, 86, 82, 81, 82, 32.34653 + 84, 84, 88, 91, 98, 102, 100, 102, 105, 108, 110, 113, 114, 114, 115, 116, 32.34654 + 116, 117, 119, 121, 123, 124, 122, 121, 123, 124, 125, 126, 126, 126, 124, 126, 32.34655 + 131, 135, 138, 140, 140, 142, 140, 138, 131, 128, 135, 126, 123, 129, 124, 119, 32.34656 + 110, 93, 84, 82, 87, 90, 87, 96, 99, 94, 88, 85, 79, 72, 48, 44, 32.34657 + 40, 42, 47, 49, 44, 38, 36, 34, 37, 39, 40, 39, 36, 33, 27, 19, 32.34658 + 14, 25, 40, 43, 30, 16, 31, 23, 17, 24, 22, 12, 18, 27, 14, 13, 32.34659 + 13, 11, 5, 0, 5, 12, 1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34661 + 255, 255, 255, 255, 255, 255, 255, 255, 176, 15, 26, 46, 73, 70, 82, 87, 32.34662 + 91, 88, 86, 85, 84, 81, 81, 83, 86, 89, 93, 97, 104, 108, 108, 110, 32.34663 + 112, 115, 118, 120, 121, 122, 123, 123, 124, 125, 127, 130, 132, 131, 128, 127, 32.34664 + 128, 129, 129, 129, 129, 129, 126, 130, 136, 142, 146, 148, 147, 148, 146, 143, 32.34665 + 134, 134, 139, 132, 128, 139, 135, 124, 111, 103, 97, 94, 98, 105, 126, 113, 32.34666 + 91, 80, 88, 99, 94, 79, 90, 83, 75, 71, 73, 76, 79, 79, 41, 32, 32.34667 + 21, 14, 18, 30, 44, 52, 49, 48, 49, 53, 64, 73, 71, 66, 53, 50, 32.34668 + 28, 22, 18, 10, 14, 5, 0, 0, 3, 9, 8, 3, 2, 3, 2, 85, 32.34669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 32.34671 + 3, 32, 58, 67, 87, 84, 83, 87, 89, 85, 82, 82, 81, 79, 82, 85, 32.34672 + 91, 95, 100, 104, 111, 114, 118, 119, 121, 124, 126, 128, 129, 129, 131, 131, 32.34673 + 132, 134, 136, 138, 140, 140, 136, 134, 135, 136, 136, 136, 135, 135, 136, 139, 32.34674 + 143, 148, 152, 154, 154, 156, 159, 154, 143, 143, 148, 140, 136, 149, 147, 126, 32.34675 + 112, 113, 113, 107, 110, 122, 126, 132, 124, 105, 95, 100, 108, 110, 98, 91, 32.34676 + 80, 69, 60, 57, 57, 58, 71, 72, 76, 79, 80, 77, 72, 68, 54, 62, 32.34677 + 65, 57, 53, 57, 65, 72, 87, 118, 111, 103, 93, 79, 63, 18, 23, 12, 32.34678 + 5, 8, 12, 9, 1, 0, 3, 1, 86, 255, 255, 255, 255, 255, 255, 255, 32.34679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34680 + 255, 255, 255, 255, 255, 255, 255, 11, 2, 48, 75, 64, 80, 81, 81, 87, 32.34681 + 87, 85, 83, 84, 85, 83, 89, 93, 99, 104, 110, 114, 120, 123, 124, 123, 32.34682 + 128, 128, 132, 133, 134, 134, 136, 137, 138, 139, 141, 144, 146, 148, 143, 143, 32.34683 + 144, 145, 145, 144, 144, 143, 147, 146, 149, 152, 155, 157, 159, 162, 169, 162, 32.34684 + 151, 151, 155, 146, 142, 155, 155, 129, 114, 123, 126, 119, 122, 138, 144, 139, 32.34685 + 126, 120, 129, 131, 111, 84, 49, 62, 81, 96, 100, 96, 90, 86, 83, 80, 32.34686 + 77, 73, 69, 62, 54, 48, 52, 47, 36, 27, 29, 34, 31, 25, 18, 27, 32.34687 + 25, 55, 77, 85, 119, 126, 109, 71, 28, 6, 7, 11, 9, 7, 4, 1, 32.34688 + 3, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 4, 32.34690 + 26, 54, 68, 73, 75, 84, 89, 85, 83, 87, 86, 86, 90, 95, 102, 107, 32.34691 + 111, 111, 112, 117, 123, 126, 129, 121, 124, 128, 133, 131, 131, 136, 129, 133, 32.34692 + 140, 145, 148, 147, 145, 144, 153, 153, 151, 150, 149, 148, 144, 142, 154, 150, 32.34693 + 150, 155, 158, 159, 161, 168, 173, 172, 168, 164, 160, 159, 159, 160, 156, 130, 32.34694 + 131, 142, 134, 134, 143, 143, 149, 151, 143, 125, 104, 95, 99, 109, 122, 113, 32.34695 + 105, 103, 104, 106, 104, 99, 97, 98, 99, 100, 100, 94, 85, 79, 71, 69, 32.34696 + 60, 42, 28, 22, 19, 18, 16, 10, 10, 14, 16, 19, 40, 64, 82, 107, 32.34697 + 119, 88, 38, 4, 0, 0, 6, 0, 4, 10, 255, 255, 255, 255, 255, 255, 32.34698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34699 + 255, 255, 255, 255, 255, 255, 22, 28, 48, 69, 76, 73, 74, 81, 91, 88, 32.34700 + 86, 89, 91, 91, 95, 100, 116, 118, 122, 124, 127, 130, 132, 131, 126, 126, 32.34701 + 121, 116, 120, 128, 128, 121, 129, 131, 137, 141, 145, 148, 150, 150, 161, 160, 32.34702 + 156, 152, 151, 150, 146, 145, 153, 151, 150, 155, 159, 158, 161, 166, 177, 178, 32.34703 + 174, 170, 167, 166, 167, 167, 154, 145, 143, 141, 139, 158, 162, 142, 155, 138, 32.34704 + 119, 119, 135, 147, 145, 136, 127, 125, 126, 130, 139, 142, 143, 140, 145, 141, 32.34705 + 140, 135, 127, 115, 104, 95, 84, 82, 74, 57, 42, 29, 18, 8, 15, 8, 32.34706 + 8, 11, 11, 11, 27, 48, 38, 43, 68, 98, 97, 59, 19, 0, 14, 5, 32.34707 + 1, 1, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 41, 32.34709 + 63, 77, 81, 78, 79, 84, 86, 86, 86, 92, 96, 101, 107, 113, 120, 119, 32.34710 + 121, 125, 127, 127, 125, 123, 129, 132, 125, 113, 118, 135, 137, 124, 129, 130, 32.34711 + 133, 138, 144, 150, 156, 159, 162, 159, 154, 152, 152, 150, 150, 149, 152, 149, 32.34712 + 150, 153, 158, 156, 158, 165, 174, 175, 172, 171, 169, 167, 170, 170, 161, 159, 32.34713 + 162, 161, 163, 173, 170, 147, 139, 139, 142, 148, 156, 158, 155, 148, 141, 144, 32.34714 + 149, 154, 159, 158, 157, 154, 153, 152, 149, 145, 141, 133, 124, 117, 111, 109, 32.34715 + 103, 89, 74, 57, 38, 21, 15, 9, 9, 12, 13, 10, 15, 24, 7, 19, 32.34716 + 29, 47, 80, 94, 62, 13, 5, 6, 5, 6, 9, 93, 255, 255, 255, 255, 32.34717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34718 + 255, 255, 255, 255, 255, 255, 31, 48, 70, 81, 82, 79, 80, 82, 83, 85, 32.34719 + 88, 93, 98, 106, 112, 118, 132, 126, 123, 125, 126, 122, 118, 116, 110, 115, 32.34720 + 114, 108, 113, 127, 133, 126, 128, 128, 132, 138, 145, 153, 160, 161, 160, 156, 32.34721 + 152, 151, 150, 152, 154, 154, 151, 146, 147, 152, 154, 154, 156, 160, 167, 166, 32.34722 + 167, 165, 164, 164, 166, 167, 167, 164, 170, 183, 177, 161, 151, 151, 136, 152, 32.34723 + 167, 165, 152, 144, 143, 149, 155, 157, 160, 161, 159, 154, 150, 148, 150, 149, 32.34724 + 148, 149, 150, 147, 144, 140, 130, 128, 122, 116, 107, 93, 70, 51, 22, 14, 32.34725 + 9, 15, 19, 17, 14, 12, 14, 22, 15, 6, 29, 68, 78, 63, 16, 23, 32.34726 + 14, 2, 4, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 3, 46, 65, 32.34728 + 83, 86, 84, 82, 80, 78, 86, 90, 96, 99, 104, 110, 113, 115, 123, 114, 32.34729 + 109, 109, 110, 105, 103, 102, 104, 107, 111, 117, 120, 122, 128, 137, 130, 131, 32.34730 + 136, 143, 150, 157, 161, 162, 159, 153, 149, 147, 148, 149, 150, 151, 146, 143, 32.34731 + 144, 148, 150, 149, 151, 154, 157, 158, 161, 163, 163, 163, 164, 165, 164, 167, 32.34732 + 174, 173, 164, 146, 147, 158, 157, 146, 139, 138, 142, 150, 154, 156, 155, 156, 32.34733 + 160, 161, 160, 156, 155, 155, 151, 148, 145, 143, 143, 140, 136, 133, 130, 128, 32.34734 + 123, 121, 119, 111, 93, 77, 52, 34, 15, 10, 16, 18, 16, 13, 22, 8, 32.34735 + 10, 26, 28, 25, 51, 91, 82, 85, 52, 12, 6, 12, 255, 255, 255, 255, 32.34736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34737 + 255, 255, 255, 255, 255, 20, 47, 69, 84, 85, 85, 88, 86, 80, 85, 94, 32.34738 + 103, 108, 114, 122, 123, 122, 100, 93, 89, 93, 97, 94, 97, 104, 110, 109, 32.34739 + 115, 125, 127, 123, 129, 139, 137, 138, 142, 146, 152, 157, 162, 160, 163, 157, 32.34740 + 151, 147, 145, 144, 144, 142, 142, 139, 141, 145, 147, 145, 148, 149, 151, 153, 32.34741 + 159, 163, 164, 164, 166, 166, 162, 178, 168, 146, 147, 156, 163, 167, 151, 135, 32.34742 + 127, 131, 142, 155, 158, 154, 157, 156, 158, 158, 158, 158, 157, 156, 148, 144, 32.34743 + 138, 134, 132, 129, 125, 122, 127, 125, 121, 118, 121, 119, 107, 94, 86, 63, 32.34744 + 33, 14, 9, 10, 16, 18, 17, 9, 15, 26, 22, 13, 25, 52, 79, 95, 32.34745 + 63, 15, 8, 12, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 11, 45, 66, 32.34747 + 81, 80, 84, 94, 94, 84, 90, 100, 107, 107, 110, 110, 106, 101, 82, 79, 32.34748 + 85, 98, 107, 109, 120, 133, 110, 110, 109, 112, 117, 125, 128, 126, 149, 147, 32.34749 + 147, 148, 152, 155, 161, 160, 166, 160, 154, 149, 148, 144, 141, 138, 142, 139, 32.34750 + 141, 145, 146, 144, 148, 148, 144, 146, 155, 159, 164, 165, 162, 163, 160, 165, 32.34751 + 143, 128, 147, 164, 161, 157, 130, 129, 135, 140, 143, 145, 147, 150, 159, 155, 32.34752 + 154, 154, 155, 150, 144, 141, 145, 143, 137, 132, 130, 128, 127, 125, 119, 119, 32.34753 + 117, 116, 118, 120, 113, 104, 98, 88, 67, 37, 17, 8, 13, 20, 15, 21, 32.34754 + 17, 6, 4, 15, 18, 12, 62, 99, 84, 43, 40, 42, 27, 255, 255, 255, 32.34755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34756 + 255, 255, 255, 255, 173, 0, 59, 75, 87, 82, 84, 95, 93, 80, 100, 106, 32.34757 + 106, 96, 86, 77, 64, 50, 49, 52, 67, 89, 101, 108, 121, 137, 128, 130, 32.34758 + 125, 118, 132, 152, 153, 139, 159, 155, 151, 148, 150, 155, 162, 163, 165, 160, 32.34759 + 158, 154, 153, 149, 147, 143, 145, 142, 143, 146, 149, 148, 149, 150, 140, 142, 32.34760 + 150, 157, 161, 160, 159, 157, 157, 137, 109, 120, 156, 156, 136, 131, 131, 125, 32.34761 + 126, 129, 135, 143, 147, 151, 155, 152, 151, 152, 154, 149, 142, 133, 131, 126, 32.34762 + 120, 113, 111, 108, 107, 106, 107, 109, 110, 111, 115, 118, 114, 108, 92, 99, 32.34763 + 93, 66, 32, 12, 11, 18, 19, 11, 9, 15, 17, 16, 16, 22, 28, 71, 32.34764 + 56, 12, 11, 16, 4, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 15, 67, 73, 32.34766 + 85, 88, 88, 88, 93, 99, 97, 89, 84, 92, 100, 72, 36, 22, 66, 97, 32.34767 + 112, 106, 105, 121, 129, 122, 126, 126, 129, 133, 142, 149, 155, 158, 152, 165, 32.34768 + 168, 155, 150, 158, 166, 165, 162, 168, 165, 172, 142, 146, 142, 150, 134, 139, 32.34769 + 144, 144, 149, 153, 149, 140, 143, 137, 136, 146, 158, 163, 161, 160, 143, 82, 32.34770 + 111, 148, 140, 133, 123, 123, 126, 117, 122, 133, 139, 136, 138, 144, 145, 146, 32.34771 + 151, 149, 139, 128, 126, 125, 126, 117, 104, 99, 105, 93, 88, 96, 81, 96, 32.34772 + 102, 98, 100, 110, 114, 110, 114, 106, 101, 88, 59, 24, 11, 16, 21, 20, 32.34773 + 17, 12, 12, 15, 14, 11, 19, 54, 99, 32, 3, 6, 9, 13, 255, 255, 32.34774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34775 + 255, 255, 255, 255, 1, 42, 58, 84, 102, 95, 87, 91, 98, 98, 79, 96, 32.34776 + 90, 64, 39, 21, 20, 33, 37, 57, 68, 64, 65, 75, 80, 73, 100, 103, 32.34777 + 108, 113, 123, 136, 152, 164, 182, 164, 153, 158, 165, 162, 165, 173, 170, 171, 32.34778 + 169, 150, 174, 159, 151, 137, 162, 159, 148, 132, 130, 129, 116, 97, 91, 100, 32.34779 + 115, 124, 128, 131, 136, 139, 71, 84, 138, 141, 108, 110, 112, 112, 113, 119, 32.34780 + 129, 137, 138, 134, 136, 142, 154, 141, 138, 138, 134, 133, 129, 118, 105, 117, 32.34781 + 114, 100, 96, 96, 93, 90, 82, 78, 73, 71, 85, 99, 111, 109, 116, 112, 32.34782 + 109, 101, 81, 48, 22, 10, 17, 18, 18, 17, 15, 14, 14, 13, 19, 46, 32.34783 + 100, 62, 25, 30, 34, 48, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 16, 37, 78, 79, 32.34785 + 83, 87, 95, 97, 88, 74, 76, 57, 22, 11, 49, 85, 90, 82, 106, 111, 32.34786 + 118, 121, 124, 129, 131, 128, 115, 115, 116, 111, 107, 106, 113, 122, 129, 141, 32.34787 + 162, 178, 174, 161, 165, 182, 170, 173, 169, 152, 170, 141, 138, 151, 160, 178, 32.34788 + 188, 180, 169, 151, 115, 79, 96, 99, 90, 63, 40, 32, 34, 37, 55, 92, 32.34789 + 129, 115, 101, 114, 109, 102, 111, 129, 143, 144, 140, 136, 137, 139, 143, 125, 32.34790 + 127, 129, 122, 129, 134, 119, 121, 127, 121, 105, 94, 92, 87, 78, 79, 72, 32.34791 + 71, 73, 80, 84, 96, 103, 117, 116, 111, 103, 91, 69, 35, 7, 9, 14, 32.34792 + 19, 20, 17, 13, 16, 19, 14, 26, 84, 78, 19, 16, 15, 39, 17, 255, 32.34793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34794 + 255, 255, 255, 12, 27, 49, 71, 82, 99, 100, 77, 52, 58, 77, 52, 76, 32.34795 + 86, 73, 62, 58, 66, 81, 80, 81, 87, 97, 101, 104, 109, 115, 124, 126, 32.34796 + 130, 130, 127, 121, 120, 120, 98, 104, 108, 121, 147, 169, 166, 150, 183, 170, 32.34797 + 154, 165, 128, 112, 111, 147, 238, 245, 249, 250, 251, 225, 145, 66, 104, 79, 32.34798 + 56, 69, 119, 161, 156, 126, 94, 103, 99, 95, 107, 116, 108, 119, 124, 139, 32.34799 + 148, 144, 137, 138, 137, 135, 131, 122, 134, 134, 117, 123, 135, 125, 131, 117, 32.34800 + 109, 113, 112, 110, 109, 106, 99, 90, 83, 73, 62, 59, 86, 118, 117, 117, 32.34801 + 113, 101, 94, 82, 53, 19, 3, 9, 18, 20, 19, 13, 18, 24, 25, 24, 32.34802 + 83, 96, 18, 6, 0, 26, 20, 92, 255, 255, 255, 255, 255, 255, 255, 255, 32.34803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 28, 52, 84, 72, 32.34804 + 54, 48, 61, 85, 104, 108, 110, 80, 42, 29, 43, 51, 57, 69, 87, 90, 32.34805 + 101, 114, 119, 123, 134, 145, 144, 144, 147, 151, 155, 153, 148, 143, 135, 125, 32.34806 + 103, 87, 98, 128, 151, 159, 155, 153, 141, 123, 74, 110, 115, 82, 163, 206, 32.34807 + 232, 207, 159, 124, 101, 85, 91, 104, 109, 99, 84, 78, 76, 72, 103, 111, 32.34808 + 98, 95, 107, 100, 109, 139, 140, 145, 143, 135, 132, 137, 136, 129, 133, 129, 32.34809 + 135, 129, 114, 116, 117, 103, 73, 64, 68, 72, 66, 74, 82, 71, 79, 78, 32.34810 + 86, 90, 79, 63, 73, 94, 110, 118, 119, 111, 104, 97, 71, 43, 8, 10, 32.34811 + 14, 18, 20, 15, 20, 28, 20, 19, 79, 94, 19, 8, 1, 28, 17, 7, 32.34812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34813 + 255, 255, 255, 13, 28, 63, 28, 73, 97, 83, 77, 98, 100, 79, 33, 30, 32.34814 + 33, 52, 72, 73, 76, 93, 92, 99, 110, 119, 124, 129, 141, 152, 169, 160, 32.34815 + 154, 151, 155, 155, 150, 145, 148, 150, 149, 134, 100, 78, 93, 123, 110, 57, 32.34816 + 85, 109, 92, 53, 85, 98, 117, 125, 125, 119, 116, 116, 110, 100, 94, 88, 32.34817 + 86, 91, 101, 105, 101, 96, 110, 128, 108, 101, 114, 116, 129, 139, 146, 141, 32.34818 + 134, 131, 132, 135, 129, 120, 131, 131, 116, 100, 93, 88, 74, 61, 50, 54, 32.34819 + 71, 68, 55, 73, 95, 84, 70, 64, 71, 86, 89, 77, 67, 63, 90, 105, 32.34820 + 117, 115, 109, 100, 79, 58, 24, 15, 12, 15, 18, 18, 22, 28, 12, 21, 32.34821 + 77, 71, 13, 8, 1, 20, 11, 4, 85, 255, 255, 255, 255, 255, 255, 255, 32.34822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 54, 94, 106, 95, 32.34823 + 61, 32, 42, 75, 72, 42, 52, 67, 72, 75, 82, 85, 96, 117, 123, 130, 32.34824 + 136, 138, 144, 148, 155, 154, 151, 145, 144, 142, 148, 150, 150, 148, 142, 131, 32.34825 + 134, 145, 138, 101, 57, 33, 28, 73, 99, 55, 68, 92, 115, 90, 104, 108, 32.34826 + 110, 110, 106, 103, 105, 106, 88, 82, 83, 83, 82, 84, 104, 129, 153, 153, 32.34827 + 112, 105, 124, 140, 159, 147, 144, 135, 132, 139, 142, 136, 124, 117, 125, 142, 32.34828 + 118, 85, 80, 69, 60, 71, 64, 32, 40, 63, 61, 76, 113, 127, 126, 99, 32.34829 + 73, 62, 65, 69, 73, 75, 74, 85, 101, 104, 102, 94, 82, 71, 49, 27, 32.34830 + 12, 13, 19, 20, 23, 26, 22, 44, 93, 53, 15, 15, 9, 15, 7, 3, 32.34831 + 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34832 + 255, 255, 182, 89, 101, 80, 56, 33, 19, 33, 54, 60, 52, 44, 56, 83, 32.34833 + 98, 97, 106, 117, 124, 133, 147, 151, 149, 148, 152, 158, 158, 148, 147, 147, 32.34834 + 148, 148, 144, 139, 136, 134, 143, 142, 139, 136, 142, 132, 93, 51, 70, 94, 32.34835 + 62, 75, 104, 117, 89, 114, 111, 104, 104, 109, 110, 105, 105, 107, 99, 86, 32.34836 + 84, 88, 85, 75, 86, 107, 195, 171, 116, 109, 119, 132, 172, 175, 140, 131, 32.34837 + 135, 150, 153, 139, 125, 120, 127, 167, 148, 102, 90, 77, 85, 129, 158, 58, 32.34838 + 32, 75, 77, 63, 93, 133, 145, 133, 115, 98, 81, 67, 57, 49, 72, 75, 32.34839 + 85, 91, 91, 89, 85, 83, 65, 35, 12, 11, 20, 22, 23, 24, 15, 48, 32.34840 + 92, 30, 8, 12, 11, 6, 7, 4, 4, 255, 255, 255, 255, 255, 255, 255, 32.34841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 99, 69, 39, 23, 10, 32.34842 + 14, 32, 38, 30, 31, 43, 70, 84, 99, 111, 122, 133, 138, 137, 148, 148, 32.34843 + 148, 147, 146, 144, 145, 144, 150, 145, 138, 131, 125, 124, 125, 127, 118, 122, 32.34844 + 124, 123, 127, 129, 115, 96, 67, 98, 73, 76, 103, 100, 103, 95, 97, 99, 32.34845 + 100, 102, 104, 105, 104, 103, 100, 95, 92, 86, 81, 75, 72, 70, 175, 206, 32.34846 + 123, 103, 96, 150, 161, 140, 131, 138, 144, 144, 140, 130, 143, 176, 194, 205, 32.34847 + 165, 108, 95, 100, 101, 105, 116, 72, 55, 82, 102, 97, 112, 139, 143, 129, 32.34848 + 115, 106, 95, 76, 58, 46, 39, 46, 62, 75, 85, 88, 88, 86, 84, 55, 32.34849 + 27, 16, 16, 17, 21, 30, 26, 89, 74, 14, 11, 20, 11, 10, 12, 13, 32.34850 + 12, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34851 + 255, 255, 114, 79, 39, 12, 24, 17, 22, 32, 39, 40, 50, 67, 84, 100, 32.34852 + 116, 128, 137, 145, 150, 148, 140, 139, 141, 142, 144, 143, 142, 143, 139, 142, 32.34853 + 140, 138, 133, 126, 120, 116, 125, 121, 116, 110, 112, 119, 121, 118, 69, 72, 32.34854 + 93, 103, 101, 100, 99, 102, 96, 97, 100, 100, 102, 102, 103, 103, 105, 101, 32.34855 + 99, 94, 93, 87, 82, 79, 116, 227, 166, 105, 100, 94, 126, 137, 133, 130, 32.34856 + 126, 124, 137, 147, 167, 196, 205, 212, 187, 140, 114, 108, 103, 99, 68, 77, 32.34857 + 99, 114, 107, 100, 119, 148, 140, 126, 111, 99, 86, 69, 56, 48, 47, 51, 32.34858 + 59, 70, 77, 82, 84, 86, 85, 79, 51, 15, 7, 18, 23, 15, 71, 79, 32.34859 + 42, 5, 15, 23, 11, 7, 8, 12, 12, 9, 90, 255, 255, 255, 255, 255, 32.34860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 17, 13, 18, 22, 20, 32.34861 + 24, 28, 38, 53, 75, 96, 113, 128, 142, 147, 148, 148, 149, 146, 138, 139, 32.34862 + 142, 144, 148, 147, 146, 145, 141, 144, 146, 144, 140, 134, 126, 122, 118, 115, 32.34863 + 117, 118, 115, 114, 118, 124, 90, 57, 102, 119, 105, 110, 101, 107, 101, 102, 32.34864 + 102, 103, 105, 105, 103, 103, 102, 100, 101, 99, 98, 92, 86, 83, 60, 205, 32.34865 + 203, 113, 132, 91, 108, 133, 118, 121, 122, 126, 149, 164, 172, 184, 201, 205, 32.34866 + 205, 179, 144, 129, 121, 112, 112, 119, 123, 114, 110, 120, 135, 145, 121, 109, 32.34867 + 98, 87, 77, 65, 61, 60, 76, 75, 74, 74, 72, 73, 74, 77, 94, 80, 32.34868 + 62, 44, 20, 10, 26, 51, 88, 52, 14, 5, 15, 15, 8, 4, 6, 10, 32.34869 + 12, 10, 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34870 + 255, 176, 9, 10, 16, 23, 23, 19, 18, 20, 38, 64, 92, 111, 129, 143, 32.34871 + 151, 149, 145, 143, 142, 140, 142, 142, 144, 148, 148, 148, 146, 144, 143, 141, 32.34872 + 138, 135, 133, 132, 133, 133, 131, 130, 132, 130, 122, 106, 108, 117, 119, 81, 32.34873 + 91, 105, 109, 114, 103, 102, 104, 105, 104, 104, 104, 105, 103, 102, 95, 95, 32.34874 + 98, 98, 96, 92, 87, 85, 97, 70, 221, 187, 135, 123, 98, 114, 107, 122, 32.34875 + 132, 134, 150, 159, 160, 161, 178, 184, 204, 203, 172, 158, 158, 147, 154, 150, 32.34876 + 143, 137, 141, 144, 128, 107, 102, 95, 88, 85, 78, 72, 73, 78, 99, 95, 32.34877 + 89, 84, 78, 76, 75, 75, 71, 76, 86, 78, 36, 6, 41, 102, 55, 19, 32.34878 + 7, 16, 10, 4, 8, 8, 8, 11, 11, 9, 11, 255, 255, 255, 255, 255, 32.34879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 25, 25, 18, 12, 32, 21, 32.34880 + 16, 24, 52, 85, 109, 120, 130, 141, 144, 141, 138, 140, 142, 142, 142, 142, 32.34881 + 143, 144, 142, 141, 138, 137, 129, 126, 121, 118, 119, 121, 127, 131, 159, 151, 32.34882 + 144, 136, 123, 107, 111, 124, 132, 125, 88, 97, 119, 110, 103, 98, 103, 102, 32.34883 + 102, 104, 103, 102, 99, 97, 90, 89, 91, 95, 97, 95, 93, 93, 92, 91, 32.34884 + 120, 216, 211, 111, 108, 101, 109, 128, 136, 131, 137, 147, 153, 165, 164, 175, 32.34885 + 206, 217, 193, 183, 187, 179, 159, 153, 147, 139, 134, 128, 122, 118, 106, 102, 32.34886 + 100, 99, 95, 88, 88, 92, 95, 94, 91, 89, 86, 85, 84, 83, 85, 84, 32.34887 + 74, 67, 69, 73, 65, 51, 29, 6, 10, 17, 2, 1, 12, 6, 8, 8, 32.34888 + 6, 4, 9, 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34889 + 255, 9, 8, 10, 21, 33, 43, 25, 19, 41, 78, 106, 120, 126, 139, 142, 32.34890 + 139, 133, 132, 134, 135, 134, 133, 133, 131, 132, 129, 128, 127, 126, 115, 115, 32.34891 + 115, 114, 116, 118, 121, 123, 139, 140, 144, 146, 141, 132, 127, 130, 131, 145, 32.34892 + 101, 105, 125, 100, 99, 102, 103, 103, 105, 107, 105, 103, 99, 96, 85, 83, 32.34893 + 85, 85, 88, 91, 93, 93, 87, 92, 103, 131, 213, 235, 131, 142, 110, 132, 32.34894 + 143, 142, 145, 149, 157, 175, 185, 203, 231, 236, 217, 202, 198, 189, 177, 159, 32.34895 + 144, 132, 126, 125, 134, 147, 132, 126, 122, 120, 115, 104, 99, 99, 96, 95, 32.34896 + 94, 92, 88, 85, 81, 80, 101, 85, 70, 71, 81, 77, 49, 19, 40, 21, 32.34897 + 14, 10, 0, 10, 18, 3, 6, 6, 4, 2, 9, 15, 95, 255, 255, 255, 32.34898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 11, 12, 16, 36, 61, 44, 24, 32.34899 + 24, 57, 98, 119, 125, 129, 143, 142, 135, 127, 125, 126, 121, 115, 117, 119, 32.34900 + 117, 117, 118, 119, 121, 122, 111, 112, 113, 113, 115, 115, 116, 117, 114, 123, 32.34901 + 137, 144, 148, 144, 129, 117, 142, 120, 99, 108, 117, 102, 98, 108, 110, 112, 32.34902 + 116, 119, 118, 114, 108, 103, 95, 89, 84, 82, 81, 83, 86, 89, 100, 65, 32.34903 + 101, 112, 120, 227, 239, 172, 149, 153, 152, 153, 159, 159, 163, 180, 208, 238, 32.34904 + 255, 251, 236, 211, 188, 174, 165, 154, 150, 150, 153, 151, 140, 131, 143, 134, 32.34905 + 129, 128, 125, 117, 110, 108, 107, 105, 104, 99, 93, 87, 81, 78, 72, 85, 32.34906 + 95, 83, 47, 23, 37, 72, 62, 42, 25, 11, 4, 11, 12, 1, 4, 5, 32.34907 + 7, 8, 15, 19, 15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34908 + 255, 13, 14, 18, 36, 60, 38, 19, 25, 66, 106, 119, 122, 128, 129, 128, 32.34909 + 124, 119, 121, 123, 116, 108, 109, 109, 108, 110, 114, 119, 123, 125, 114, 112, 32.34910 + 108, 107, 106, 110, 112, 115, 129, 132, 132, 126, 129, 129, 115, 100, 163, 85, 32.34911 + 83, 101, 107, 111, 102, 110, 120, 123, 128, 132, 131, 126, 119, 114, 114, 106, 32.34912 + 94, 86, 81, 80, 81, 83, 90, 92, 92, 97, 77, 103, 192, 239, 208, 188, 32.34913 + 158, 148, 155, 158, 168, 188, 211, 251, 255, 253, 240, 209, 171, 153, 151, 149, 32.34914 + 145, 135, 135, 144, 149, 145, 139, 130, 122, 124, 126, 123, 116, 114, 112, 111, 32.34915 + 108, 104, 101, 97, 93, 92, 84, 83, 59, 27, 33, 67, 79, 66, 67, 54, 32.34916 + 33, 18, 7, 4, 3, 4, 4, 9, 13, 16, 24, 26, 18, 90, 255, 255, 32.34917 + 255, 255, 255, 255, 255, 255, 255, 255, 175, 15, 15, 21, 31, 40, 15, 17, 32.34918 + 58, 85, 101, 121, 122, 127, 122, 126, 124, 112, 103, 103, 103, 101, 109, 98, 32.34919 + 102, 123, 140, 138, 130, 125, 107, 106, 102, 99, 97, 100, 107, 111, 119, 121, 32.34920 + 140, 139, 124, 139, 144, 115, 156, 89, 86, 102, 113, 118, 108, 112, 128, 129, 32.34921 + 133, 136, 136, 133, 129, 126, 125, 120, 113, 108, 104, 94, 86, 81, 79, 83, 32.34922 + 87, 92, 93, 99, 116, 134, 206, 237, 218, 184, 190, 194, 189, 200, 228, 252, 32.34923 + 255, 249, 211, 178, 161, 153, 144, 135, 131, 129, 129, 131, 132, 130, 129, 126, 32.34924 + 123, 125, 128, 127, 120, 112, 108, 110, 111, 108, 100, 91, 81, 76, 30, 39, 32.34925 + 54, 68, 77, 77, 70, 67, 65, 62, 53, 43, 31, 22, 13, 10, 15, 8, 32.34926 + 9, 20, 31, 28, 20, 12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.34927 + 19, 18, 17, 19, 24, 26, 26, 31, 74, 99, 111, 124, 123, 128, 127, 119, 32.34928 + 107, 103, 99, 94, 90, 92, 98, 111, 129, 128, 111, 100, 93, 84, 53, 51, 32.34929 + 55, 77, 107, 129, 134, 126, 123, 130, 132, 132, 139, 141, 141, 143, 166, 106, 32.34930 + 97, 97, 98, 110, 113, 129, 132, 133, 137, 141, 142, 140, 137, 134, 129, 124, 32.34931 + 118, 113, 108, 99, 90, 82, 73, 75, 81, 89, 96, 99, 109, 121, 98, 162, 32.34932 + 203, 215, 221, 209, 213, 247, 251, 236, 216, 197, 190, 182, 168, 146, 138, 130, 32.34933 + 127, 126, 127, 128, 129, 126, 142, 135, 125, 120, 120, 119, 116, 111, 114, 110, 32.34934 + 102, 89, 70, 50, 36, 29, 60, 63, 67, 74, 79, 80, 76, 75, 78, 82, 32.34935 + 80, 76, 64, 51, 34, 26, 14, 12, 19, 31, 41, 33, 18, 7, 90, 255, 32.34936 + 255, 255, 255, 255, 255, 255, 255, 255, 22, 24, 23, 20, 18, 15, 24, 33, 32.34937 + 83, 111, 116, 125, 121, 128, 129, 113, 100, 97, 93, 89, 95, 105, 114, 112, 32.34938 + 115, 94, 59, 51, 47, 26, 68, 73, 87, 119, 163, 194, 193, 177, 164, 183, 32.34939 + 174, 164, 162, 134, 122, 150, 126, 98, 103, 105, 106, 116, 120, 132, 136, 138, 32.34940 + 142, 147, 148, 149, 147, 145, 137, 133, 129, 124, 120, 112, 99, 92, 79, 75, 32.34941 + 74, 81, 90, 96, 103, 112, 104, 104, 107, 153, 217, 235, 233, 249, 251, 244, 32.34942 + 231, 203, 183, 168, 162, 154, 162, 154, 148, 142, 137, 131, 126, 123, 123, 124, 32.34943 + 128, 133, 135, 133, 126, 119, 100, 78, 48, 25, 21, 40, 70, 91, 93, 91, 32.34944 + 85, 85, 86, 88, 88, 90, 98, 101, 102, 101, 91, 76, 60, 49, 27, 24, 32.34945 + 28, 36, 40, 29, 15, 4, 6, 87, 255, 255, 255, 255, 255, 255, 255, 255, 32.34946 + 21, 24, 25, 25, 20, 15, 13, 27, 86, 120, 126, 128, 123, 128, 115, 107, 32.34947 + 97, 91, 88, 93, 107, 123, 109, 90, 81, 62, 37, 50, 78, 81, 63, 71, 32.34948 + 79, 100, 140, 180, 200, 197, 191, 184, 158, 142, 148, 149, 157, 179, 96, 94, 32.34949 + 104, 113, 118, 127, 128, 131, 141, 141, 145, 150, 152, 153, 152, 151, 146, 141, 32.34950 + 138, 135, 132, 123, 111, 104, 98, 86, 75, 72, 77, 84, 97, 111, 105, 113, 32.34951 + 117, 124, 135, 145, 185, 241, 235, 214, 185, 165, 163, 165, 160, 148, 151, 146, 32.34952 + 143, 140, 139, 138, 133, 130, 130, 128, 125, 116, 104, 83, 65, 50, 28, 41, 32.34953 + 63, 82, 96, 103, 106, 107, 108, 105, 98, 96, 96, 98, 99, 100, 101, 99, 32.34954 + 96, 90, 85, 74, 63, 57, 46, 38, 30, 28, 26, 17, 10, 6, 3, 3, 32.34955 + 255, 255, 255, 255, 255, 255, 255, 255, 20, 21, 20, 21, 19, 16, 12, 26, 32.34956 + 87, 127, 138, 137, 126, 129, 100, 96, 86, 82, 90, 100, 101, 96, 74, 63, 32.34957 + 69, 71, 56, 77, 135, 179, 123, 121, 107, 105, 138, 188, 220, 223, 214, 177, 32.34958 + 150, 138, 137, 147, 140, 105, 122, 121, 111, 109, 118, 128, 139, 142, 144, 146, 32.34959 + 148, 150, 152, 154, 153, 153, 152, 148, 145, 143, 138, 131, 120, 114, 110, 100, 32.34960 + 84, 75, 68, 73, 86, 102, 119, 110, 103, 109, 128, 136, 133, 132, 86, 124, 32.34961 + 162, 168, 149, 125, 113, 107, 106, 102, 99, 95, 94, 90, 85, 83, 83, 68, 32.34962 + 48, 35, 42, 61, 87, 102, 124, 121, 119, 111, 106, 99, 98, 98, 112, 110, 32.34963 + 109, 108, 108, 106, 102, 99, 93, 87, 80, 73, 71, 66, 59, 54, 53, 43, 32.34964 + 30, 23, 16, 8, 4, 5, 6, 9, 94, 255, 255, 255, 255, 255, 255, 255, 32.34965 + 19, 16, 13, 15, 16, 17, 16, 22, 78, 121, 136, 134, 117, 117, 100, 88, 32.34966 + 77, 84, 99, 100, 81, 62, 85, 71, 66, 70, 69, 70, 95, 136, 136, 137, 32.34967 + 132, 140, 177, 225, 238, 224, 195, 169, 168, 160, 141, 150, 149, 111, 131, 131, 32.34968 + 111, 111, 128, 135, 146, 148, 148, 149, 150, 153, 156, 157, 157, 157, 157, 153, 32.34969 + 150, 147, 143, 138, 130, 123, 116, 109, 101, 91, 82, 73, 77, 83, 93, 103, 32.34970 + 110, 109, 114, 122, 124, 117, 129, 117, 105, 104, 116, 123, 112, 96, 113, 108, 32.34971 + 105, 103, 101, 98, 94, 92, 82, 92, 106, 118, 124, 118, 111, 104, 107, 112, 32.34972 + 117, 121, 124, 126, 130, 132, 115, 115, 115, 114, 112, 107, 100, 95, 94, 88, 32.34973 + 84, 81, 80, 74, 65, 58, 48, 41, 34, 26, 20, 9, 4, 5, 5, 10, 32.34974 + 15, 14, 255, 255, 255, 255, 255, 255, 20, 17, 12, 15, 21, 25, 17, 12, 32.34975 + 58, 101, 121, 124, 107, 105, 102, 81, 75, 89, 91, 74, 66, 74, 124, 108, 32.34976 + 73, 62, 76, 62, 49, 69, 103, 126, 144, 164, 210, 255, 255, 245, 241, 215, 32.34977 + 187, 157, 131, 125, 133, 135, 110, 119, 102, 117, 141, 139, 147, 149, 153, 154, 32.34978 + 157, 158, 161, 164, 167, 168, 164, 160, 156, 152, 150, 147, 139, 136, 128, 122, 32.34979 + 116, 110, 102, 88, 78, 73, 80, 88, 99, 98, 95, 108, 128, 134, 139, 144, 32.34980 + 144, 133, 125, 121, 119, 117, 97, 96, 95, 99, 105, 110, 113, 115, 112, 108, 32.34981 + 102, 97, 96, 98, 107, 111, 121, 124, 124, 122, 118, 116, 118, 119, 122, 120, 32.34982 + 118, 116, 114, 110, 104, 100, 98, 92, 87, 85, 86, 83, 75, 67, 55, 50, 32.34983 + 44, 34, 25, 12, 6, 7, 6, 8, 9, 9, 90, 255, 255, 255, 255, 255, 32.34984 + 22, 21, 19, 22, 32, 38, 19, 8, 46, 89, 113, 121, 107, 105, 93, 73, 32.34985 + 74, 89, 70, 39, 61, 113, 132, 140, 101, 73, 90, 87, 81, 112, 126, 154, 32.34986 + 168, 166, 188, 232, 254, 251, 205, 185, 152, 154, 175, 151, 114, 109, 102, 115, 32.34987 + 96, 114, 141, 135, 149, 155, 161, 161, 164, 168, 172, 177, 181, 183, 180, 174, 32.34988 + 168, 164, 162, 160, 153, 149, 148, 135, 124, 119, 113, 99, 85, 73, 66, 74, 32.34989 + 97, 111, 108, 108, 114, 115, 125, 132, 137, 138, 138, 139, 137, 134, 138, 133, 32.34990 + 127, 121, 119, 116, 115, 113, 115, 117, 118, 119, 117, 118, 119, 122, 120, 125, 32.34991 + 130, 131, 128, 124, 123, 122, 123, 122, 117, 114, 113, 111, 110, 108, 99, 90, 32.34992 + 80, 75, 77, 76, 72, 68, 70, 63, 51, 38, 23, 11, 7, 10, 13, 10, 32.34993 + 5, 6, 7, 255, 255, 255, 255, 255, 31, 20, 16, 25, 33, 33, 25, 6, 32.34994 + 25, 75, 102, 103, 106, 110, 94, 81, 62, 49, 45, 58, 89, 114, 130, 139, 32.34995 + 134, 113, 101, 109, 121, 128, 163, 164, 166, 165, 166, 187, 208, 207, 179, 160, 32.34996 + 140, 128, 126, 120, 108, 89, 99, 92, 95, 114, 135, 149, 156, 160, 165, 171, 32.34997 + 180, 183, 187, 188, 190, 190, 189, 195, 195, 189, 180, 176, 167, 159, 151, 150, 32.34998 + 143, 129, 120, 110, 94, 80, 69, 75, 88, 108, 121, 122, 120, 120, 131, 137, 32.34999 + 140, 137, 137, 141, 139, 136, 140, 138, 138, 137, 135, 133, 130, 126, 129, 131, 32.35000 + 132, 129, 125, 123, 124, 127, 131, 131, 133, 132, 129, 124, 122, 119, 123, 122, 32.35001 + 117, 115, 114, 113, 113, 112, 107, 103, 94, 86, 78, 74, 70, 69, 64, 54, 32.35002 + 41, 27, 19, 15, 11, 4, 5, 12, 20, 14, 0, 85, 255, 255, 255, 255, 32.35003 + 26, 24, 27, 29, 26, 19, 28, 15, 21, 53, 86, 93, 99, 107, 86, 67, 32.35004 + 48, 39, 47, 65, 88, 106, 115, 124, 123, 110, 107, 119, 134, 139, 147, 132, 32.35005 + 139, 156, 160, 164, 182, 195, 128, 151, 164, 144, 108, 85, 96, 112, 102, 93, 32.35006 + 98, 116, 137, 152, 159, 164, 174, 180, 187, 193, 194, 198, 200, 202, 200, 204, 32.35007 + 205, 198, 191, 183, 173, 162, 162, 158, 150, 135, 125, 115, 104, 93, 89, 84, 32.35008 + 83, 91, 101, 108, 118, 127, 129, 133, 138, 138, 141, 144, 143, 138, 139, 140, 32.35009 + 140, 140, 139, 136, 134, 133, 130, 132, 134, 134, 132, 131, 133, 136, 132, 133, 32.35010 + 136, 136, 135, 134, 134, 133, 127, 123, 121, 117, 115, 114, 111, 111, 109, 106, 32.35011 + 98, 90, 81, 75, 71, 68, 63, 56, 43, 29, 18, 12, 11, 7, 7, 9, 32.35012 + 13, 11, 2, 0, 85, 255, 255, 255, 23, 24, 26, 25, 24, 24, 38, 35, 32.35013 + 24, 34, 71, 85, 90, 103, 81, 59, 41, 39, 51, 68, 86, 95, 90, 99, 32.35014 + 103, 100, 103, 117, 130, 133, 149, 155, 158, 143, 140, 158, 159, 132, 247, 195, 32.35015 + 131, 101, 106, 117, 115, 103, 107, 100, 104, 122, 142, 155, 161, 166, 179, 185, 32.35016 + 190, 197, 201, 205, 211, 214, 214, 217, 218, 211, 204, 196, 184, 172, 169, 162, 32.35017 + 151, 138, 129, 121, 115, 108, 105, 96, 85, 82, 87, 96, 110, 122, 132, 134, 32.35018 + 138, 139, 141, 143, 143, 140, 141, 142, 142, 142, 141, 140, 138, 136, 133, 135, 32.35019 + 136, 137, 136, 136, 138, 139, 130, 130, 130, 130, 132, 132, 132, 132, 130, 127, 32.35020 + 124, 120, 118, 115, 112, 111, 112, 110, 101, 94, 87, 80, 74, 69, 69, 65, 32.35021 + 55, 40, 25, 15, 16, 17, 8, 10, 7, 14, 23, 0, 0, 255, 255, 255, 32.35022 + 18, 23, 25, 21, 24, 32, 36, 48, 29, 22, 61, 81, 80, 94, 80, 67, 32.35023 + 58, 57, 64, 72, 84, 92, 99, 106, 112, 114, 121, 131, 136, 135, 145, 134, 32.35024 + 150, 158, 125, 101, 133, 177, 98, 108, 119, 119, 110, 108, 111, 117, 107, 100, 32.35025 + 106, 124, 144, 157, 165, 170, 184, 188, 196, 202, 209, 217, 224, 228, 230, 232, 32.35026 + 231, 223, 216, 206, 191, 178, 168, 159, 145, 131, 123, 117, 115, 113, 111, 105, 32.35027 + 101, 96, 95, 96, 103, 105, 129, 133, 140, 139, 137, 136, 140, 142, 141, 142, 32.35028 + 142, 141, 140, 138, 135, 134, 134, 135, 136, 136, 136, 136, 137, 137, 132, 131, 32.35029 + 129, 126, 126, 125, 125, 124, 130, 127, 125, 122, 119, 117, 113, 112, 114, 113, 32.35030 + 106, 100, 93, 85, 78, 72, 72, 69, 61, 48, 28, 14, 17, 23, 14, 17, 32.35031 + 11, 32, 56, 23, 0, 255, 255, 255, 12, 17, 24, 23, 20, 20, 17, 37, 32.35032 + 23, 13, 50, 76, 74, 81, 75, 77, 80, 80, 77, 75, 84, 96, 108, 114, 32.35033 + 122, 128, 134, 139, 140, 138, 131, 129, 118, 94, 89, 120, 146, 138, 130, 121, 32.35034 + 110, 104, 110, 116, 122, 123, 109, 101, 108, 127, 148, 162, 171, 174, 187, 192, 32.35035 + 202, 212, 221, 228, 235, 241, 239, 239, 237, 227, 220, 210, 196, 182, 171, 157, 32.35036 + 142, 126, 117, 110, 113, 116, 110, 112, 116, 113, 109, 102, 98, 92, 104, 114, 32.35037 + 132, 140, 140, 136, 138, 142, 142, 142, 142, 141, 139, 136, 133, 131, 129, 129, 32.35038 + 129, 131, 133, 134, 135, 135, 137, 136, 133, 130, 127, 125, 125, 125, 127, 125, 32.35039 + 122, 120, 121, 119, 115, 115, 116, 113, 109, 104, 98, 89, 80, 76, 69, 66, 32.35040 + 59, 47, 25, 7, 10, 19, 18, 23, 21, 49, 83, 52, 4, 85, 255, 255, 32.35041 + 26, 13, 17, 21, 19, 12, 5, 23, 18, 14, 47, 75, 80, 79, 71, 81, 32.35042 + 92, 94, 88, 82, 91, 104, 106, 112, 120, 126, 131, 129, 129, 125, 130, 81, 32.35043 + 71, 107, 127, 118, 108, 106, 108, 107, 108, 112, 118, 122, 126, 125, 110, 105, 32.35044 + 111, 130, 152, 166, 175, 180, 189, 198, 209, 220, 229, 234, 238, 242, 243, 241, 32.35045 + 235, 227, 221, 213, 200, 186, 174, 160, 143, 125, 114, 107, 110, 117, 112, 117, 32.35046 + 124, 120, 116, 112, 106, 98, 80, 91, 113, 133, 143, 142, 143, 144, 148, 148, 32.35047 + 148, 147, 145, 142, 139, 137, 128, 127, 128, 131, 135, 138, 139, 138, 135, 135, 32.35048 + 134, 132, 130, 129, 129, 128, 127, 125, 123, 121, 123, 120, 117, 114, 115, 113, 32.35049 + 109, 105, 99, 92, 84, 78, 70, 66, 61, 48, 27, 7, 7, 19, 13, 16, 32.35050 + 19, 46, 84, 70, 19, 0, 255, 255, 62, 42, 29, 26, 24, 19, 12, 21, 32.35051 + 20, 20, 44, 75, 88, 82, 79, 83, 91, 95, 93, 91, 96, 105, 113, 117, 32.35052 + 122, 124, 121, 110, 106, 101, 52, 78, 114, 125, 114, 113, 122, 122, 126, 120, 32.35053 + 116, 119, 130, 133, 124, 116, 112, 108, 113, 132, 153, 166, 175, 178, 187, 197, 32.35054 + 210, 221, 227, 230, 230, 229, 231, 229, 223, 217, 214, 209, 199, 186, 173, 159, 32.35055 + 141, 122, 108, 99, 102, 110, 112, 120, 129, 127, 126, 125, 122, 116, 93, 85, 32.35056 + 91, 109, 130, 139, 144, 145, 150, 151, 152, 153, 152, 150, 148, 147, 138, 136, 32.35057 + 135, 137, 140, 141, 140, 139, 131, 132, 132, 132, 132, 130, 128, 127, 128, 126, 32.35058 + 126, 124, 123, 120, 115, 114, 114, 112, 107, 103, 98, 92, 87, 82, 76, 70, 32.35059 + 64, 53, 33, 11, 10, 20, 10, 13, 15, 33, 71, 85, 44, 0, 255, 255, 32.35060 + 92, 92, 64, 41, 28, 23, 22, 22, 22, 23, 38, 69, 87, 80, 93, 88, 32.35061 + 87, 93, 98, 100, 101, 103, 106, 108, 111, 105, 93, 73, 64, 58, 103, 92, 32.35062 + 103, 119, 110, 101, 114, 126, 126, 126, 127, 130, 131, 128, 122, 119, 111, 109, 32.35063 + 112, 129, 149, 162, 170, 173, 182, 192, 207, 218, 222, 221, 218, 215, 212, 209, 32.35064 + 203, 198, 198, 197, 187, 177, 169, 153, 134, 116, 99, 88, 93, 100, 110, 122, 32.35065 + 134, 137, 138, 138, 135, 129, 123, 96, 76, 86, 110, 131, 141, 146, 149, 151, 32.35066 + 153, 155, 156, 155, 154, 154, 151, 148, 144, 143, 144, 143, 139, 136, 135, 136, 32.35067 + 137, 137, 136, 133, 130, 128, 132, 130, 129, 127, 125, 120, 115, 113, 114, 112, 32.35068 + 106, 102, 98, 93, 88, 84, 76, 69, 62, 52, 30, 9, 6, 17, 20, 19, 32.35069 + 17, 31, 68, 100, 69, 4, 85, 255, 179, 22, 56, 78, 81, 79, 72, 69, 32.35070 + 57, 57, 75, 90, 96, 104, 90, 91, 94, 97, 98, 96, 90, 86, 69, 66, 32.35071 + 64, 65, 73, 85, 100, 108, 125, 122, 117, 115, 116, 119, 126, 130, 132, 123, 32.35072 + 127, 131, 126, 126, 128, 122, 116, 113, 116, 129, 137, 142, 154, 165, 175, 181, 32.35073 + 191, 198, 207, 213, 215, 212, 199, 194, 192, 193, 195, 192, 184, 177, 166, 149, 32.35074 + 132, 102, 63, 41, 49, 58, 79, 105, 132, 145, 151, 155, 149, 136, 127, 122, 32.35075 + 96, 75, 70, 110, 154, 139, 147, 150, 152, 151, 148, 146, 147, 149, 153, 150, 32.35076 + 147, 146, 144, 143, 140, 137, 138, 137, 136, 135, 134, 133, 134, 133, 132, 129, 32.35077 + 126, 124, 123, 120, 117, 115, 116, 113, 108, 103, 97, 93, 90, 87, 80, 72, 32.35078 + 62, 51, 32, 13, 5, 6, 19, 14, 14, 42, 66, 85, 79, 23, 1, 255, 32.35079 + 255, 13, 9, 25, 30, 35, 66, 74, 75, 78, 92, 96, 93, 93, 103, 98, 32.35080 + 91, 83, 75, 65, 56, 51, 65, 71, 81, 91, 104, 111, 119, 120, 120, 120, 32.35081 + 122, 123, 124, 126, 127, 128, 129, 124, 133, 136, 127, 126, 127, 123, 113, 113, 32.35082 + 116, 123, 129, 132, 140, 152, 153, 165, 181, 193, 201, 204, 204, 200, 199, 196, 32.35083 + 195, 192, 190, 185, 179, 174, 164, 151, 113, 59, 17, 0, 7, 18, 37, 68, 32.35084 + 104, 127, 141, 150, 150, 141, 136, 130, 105, 83, 69, 99, 145, 138, 148, 152, 32.35085 + 153, 151, 148, 145, 146, 147, 150, 148, 145, 144, 144, 143, 140, 138, 138, 138, 32.35086 + 137, 136, 135, 134, 134, 133, 132, 128, 124, 121, 121, 120, 120, 117, 114, 113, 32.35087 + 108, 103, 97, 93, 90, 86, 80, 73, 64, 50, 32, 14, 5, 6, 14, 14, 32.35088 + 16, 41, 62, 86, 85, 32, 1, 255, 255, 31, 1, 6, 9, 9, 11, 29, 32.35089 + 41, 46, 54, 51, 44, 42, 40, 41, 43, 51, 62, 72, 80, 81, 91, 98, 32.35090 + 109, 117, 125, 124, 124, 122, 124, 126, 129, 131, 131, 130, 127, 125, 128, 128, 32.35091 + 140, 141, 131, 126, 128, 124, 110, 111, 115, 119, 120, 118, 123, 131, 141, 149, 32.35092 + 162, 174, 182, 188, 191, 192, 194, 189, 188, 185, 182, 177, 174, 171, 152, 144, 32.35093 + 92, 27, 4, 3, 18, 41, 45, 72, 107, 131, 148, 159, 161, 155, 143, 136, 32.35094 + 117, 96, 67, 84, 135, 144, 152, 152, 152, 150, 146, 143, 143, 144, 144, 142, 32.35095 + 141, 141, 142, 142, 140, 138, 137, 137, 136, 134, 135, 134, 133, 132, 131, 127, 32.35096 + 121, 118, 119, 119, 119, 120, 113, 111, 104, 100, 96, 92, 87, 86, 82, 76, 32.35097 + 67, 50, 32, 14, 6, 6, 5, 12, 16, 35, 56, 87, 95, 45, 3, 255, 32.35098 + 255, 41, 18, 9, 23, 17, 32, 58, 75, 77, 81, 78, 74, 79, 99, 99, 32.35099 + 97, 100, 106, 112, 113, 115, 127, 125, 125, 124, 123, 120, 121, 120, 135, 135, 32.35100 + 135, 134, 132, 128, 126, 125, 133, 131, 139, 140, 130, 130, 130, 123, 106, 115, 32.35101 + 121, 119, 116, 112, 115, 115, 130, 133, 145, 161, 176, 184, 187, 185, 182, 177, 32.35102 + 174, 175, 175, 173, 171, 165, 149, 132, 66, 13, 10, 12, 25, 58, 77, 87, 32.35103 + 104, 121, 140, 155, 158, 152, 148, 138, 122, 104, 69, 72, 129, 151, 156, 155, 32.35104 + 154, 151, 148, 145, 144, 144, 142, 141, 140, 141, 143, 144, 143, 142, 138, 138, 32.35105 + 137, 135, 136, 134, 133, 133, 130, 127, 123, 120, 119, 118, 116, 118, 110, 109, 32.35106 + 102, 98, 95, 91, 86, 82, 82, 77, 65, 48, 28, 12, 5, 4, 2, 9, 32.35107 + 11, 31, 54, 89, 100, 55, 3, 255, 255, 19, 17, 0, 31, 21, 38, 72, 32.35108 + 95, 97, 98, 100, 100, 107, 94, 96, 102, 112, 121, 130, 136, 138, 131, 129, 32.35109 + 125, 120, 120, 122, 128, 131, 143, 142, 135, 131, 127, 128, 131, 131, 139, 134, 32.35110 + 136, 133, 130, 135, 136, 120, 107, 119, 127, 123, 120, 117, 113, 105, 96, 92, 32.35111 + 101, 126, 154, 169, 176, 177, 175, 168, 162, 165, 169, 168, 163, 156, 136, 105, 32.35112 + 48, 27, 46, 44, 52, 90, 109, 102, 101, 113, 137, 157, 163, 159, 151, 141, 32.35113 + 127, 111, 71, 69, 125, 152, 159, 156, 153, 151, 149, 148, 146, 146, 144, 142, 32.35114 + 142, 143, 145, 146, 145, 144, 140, 139, 138, 136, 135, 133, 134, 133, 128, 127, 32.35115 + 127, 124, 119, 114, 112, 112, 108, 105, 101, 97, 91, 88, 85, 82, 81, 77, 32.35116 + 64, 45, 25, 11, 5, 1, 3, 5, 7, 31, 55, 89, 102, 61, 6, 86, 32.35117 + 255, 20, 27, 6, 29, 16, 40, 82, 113, 119, 120, 118, 118, 121, 125, 126, 32.35118 + 127, 131, 132, 132, 130, 125, 126, 124, 124, 124, 125, 128, 131, 135, 140, 139, 32.35119 + 132, 129, 128, 133, 137, 141, 143, 136, 133, 131, 131, 139, 138, 119, 110, 124, 32.35120 + 134, 131, 129, 127, 114, 97, 58, 40, 34, 55, 90, 123, 150, 165, 170, 162, 32.35121 + 159, 159, 163, 161, 154, 147, 126, 88, 53, 62, 89, 86, 88, 117, 132, 118, 32.35122 + 111, 121, 146, 166, 172, 166, 156, 144, 127, 111, 74, 73, 123, 145, 157, 154, 32.35123 + 150, 148, 148, 149, 148, 147, 146, 144, 143, 144, 146, 146, 145, 144, 141, 140, 32.35124 + 139, 137, 135, 133, 134, 133, 126, 128, 129, 126, 120, 112, 109, 107, 107, 105, 32.35125 + 101, 97, 92, 89, 86, 83, 79, 77, 64, 42, 23, 12, 6, 2, 5, 3, 32.35126 + 9, 40, 59, 83, 98, 66, 8, 3, 255, 33, 29, 26, 21, 17, 42, 85, 32.35127 + 117, 121, 123, 122, 121, 123, 124, 124, 125, 128, 129, 130, 126, 124, 127, 126, 32.35128 + 127, 127, 128, 129, 128, 129, 135, 136, 134, 134, 134, 138, 139, 142, 138, 136, 32.35129 + 138, 135, 135, 142, 140, 121, 112, 129, 140, 138, 138, 134, 113, 87, 37, 24, 32.35130 + 22, 41, 68, 95, 121, 140, 154, 153, 156, 156, 153, 147, 143, 141, 130, 99, 32.35131 + 81, 92, 101, 88, 81, 87, 115, 110, 113, 129, 150, 161, 162, 158, 156, 143, 32.35132 + 125, 111, 80, 84, 131, 144, 152, 148, 145, 144, 146, 148, 148, 147, 147, 146, 32.35133 + 144, 144, 144, 144, 143, 141, 140, 139, 138, 136, 136, 134, 134, 133, 126, 127, 32.35134 + 128, 124, 118, 112, 109, 110, 109, 108, 102, 98, 95, 92, 89, 86, 78, 77, 32.35135 + 65, 42, 23, 14, 9, 4, 6, 5, 19, 52, 62, 73, 92, 74, 10, 3, 32.35136 + 255, 24, 2, 24, 7, 22, 39, 82, 109, 110, 110, 113, 114, 119, 122, 121, 32.35137 + 121, 121, 123, 125, 122, 121, 126, 125, 124, 124, 126, 128, 130, 132, 131, 135, 32.35138 + 136, 139, 138, 138, 137, 134, 133, 137, 144, 141, 135, 140, 140, 121, 115, 132, 32.35139 + 143, 141, 142, 140, 114, 82, 33, 42, 67, 96, 111, 109, 107, 112, 134, 143, 32.35140 + 153, 154, 145, 139, 139, 143, 122, 103, 100, 112, 113, 104, 98, 88, 91, 98, 32.35141 + 116, 141, 163, 170, 169, 165, 153, 139, 121, 108, 86, 95, 140, 146, 150, 146, 32.35142 + 142, 141, 146, 147, 147, 147, 148, 146, 144, 143, 143, 140, 138, 136, 141, 140, 32.35143 + 138, 136, 136, 134, 134, 134, 125, 126, 126, 122, 115, 111, 111, 115, 112, 110, 32.35144 + 104, 101, 98, 96, 92, 91, 78, 78, 66, 42, 22, 14, 9, 6, 6, 8, 32.35145 + 28, 65, 65, 66, 88, 81, 9, 2, 255, 18, 23, 28, 26, 23, 31, 67, 32.35146 + 92, 100, 109, 108, 104, 109, 112, 114, 118, 121, 123, 125, 130, 135, 130, 128, 32.35147 + 126, 126, 126, 129, 131, 132, 133, 136, 138, 137, 134, 133, 135, 137, 141, 142, 32.35148 + 143, 144, 143, 140, 138, 136, 112, 127, 140, 145, 149, 144, 122, 97, 56, 79, 32.35149 + 98, 110, 127, 142, 130, 108, 113, 123, 135, 142, 146, 146, 138, 129, 123, 120, 32.35150 + 117, 112, 110, 107, 105, 105, 86, 86, 98, 127, 159, 172, 169, 161, 145, 147, 32.35151 + 125, 88, 85, 118, 143, 146, 156, 147, 139, 138, 145, 151, 152, 150, 148, 146, 32.35152 + 144, 144, 144, 141, 138, 135, 137, 137, 136, 135, 135, 133, 133, 132, 122, 124, 32.35153 + 125, 122, 116, 111, 110, 113, 115, 111, 107, 102, 97, 93, 89, 87, 79, 76, 32.35154 + 67, 50, 31, 15, 8, 5, 6, 10, 21, 69, 95, 51, 83, 84, 16, 0, 32.35155 + 255, 16, 21, 25, 24, 20, 26, 61, 90, 99, 104, 106, 104, 109, 116, 117, 32.35156 + 121, 123, 122, 125, 130, 133, 131, 129, 128, 128, 128, 131, 133, 135, 133, 134, 32.35157 + 135, 134, 133, 134, 136, 138, 143, 143, 144, 144, 144, 143, 142, 141, 122, 129, 32.35158 + 138, 146, 152, 150, 138, 124, 90, 102, 114, 122, 132, 138, 127, 110, 110, 120, 32.35159 + 130, 136, 140, 143, 138, 133, 133, 130, 123, 118, 114, 113, 114, 114, 109, 110, 32.35160 + 118, 135, 150, 159, 158, 155, 142, 138, 114, 90, 94, 121, 138, 139, 149, 146, 32.35161 + 139, 139, 144, 149, 151, 151, 150, 148, 144, 143, 141, 140, 137, 136, 137, 137, 32.35162 + 136, 134, 134, 132, 132, 131, 127, 128, 129, 124, 117, 112, 109, 111, 113, 109, 32.35163 + 105, 100, 97, 91, 86, 85, 75, 71, 62, 47, 31, 16, 9, 5, 2, 10, 32.35164 + 31, 82, 101, 48, 75, 84, 15, 0, 255, 12, 17, 21, 21, 18, 19, 56, 32.35165 + 87, 95, 99, 101, 102, 110, 120, 120, 123, 125, 124, 127, 130, 132, 131, 131, 32.35166 + 131, 132, 131, 134, 137, 139, 136, 134, 132, 132, 135, 138, 140, 140, 145, 145, 32.35167 + 145, 145, 146, 146, 147, 148, 130, 129, 135, 149, 158, 158, 152, 149, 124, 121, 32.35168 + 118, 118, 119, 117, 112, 107, 116, 123, 128, 132, 137, 144, 144, 141, 143, 139, 32.35169 + 133, 128, 125, 126, 129, 131, 131, 133, 136, 138, 138, 141, 143, 144, 135, 125, 32.35170 + 105, 95, 105, 124, 131, 129, 138, 137, 137, 138, 139, 143, 147, 150, 151, 149, 32.35171 + 145, 143, 141, 140, 138, 136, 137, 138, 136, 135, 132, 130, 131, 130, 129, 129, 32.35172 + 130, 126, 120, 114, 113, 112, 111, 107, 103, 97, 94, 89, 84, 82, 71, 67, 32.35173 + 60, 46, 31, 17, 10, 8, 7, 7, 26, 83, 105, 57, 71, 78, 22, 0, 32.35174 + 255, 8, 11, 15, 15, 12, 13, 53, 84, 93, 95, 98, 102, 113, 121, 121, 32.35175 + 124, 127, 127, 129, 131, 133, 131, 132, 134, 135, 134, 137, 140, 142, 140, 136, 32.35176 + 132, 133, 138, 142, 144, 144, 149, 148, 146, 145, 145, 146, 148, 150, 137, 129, 32.35177 + 131, 148, 163, 162, 158, 157, 149, 134, 120, 113, 106, 99, 100, 107, 126, 130, 32.35178 + 131, 131, 136, 145, 148, 148, 148, 146, 142, 139, 137, 138, 140, 141, 138, 141, 32.35179 + 139, 134, 129, 129, 130, 130, 125, 115, 103, 103, 113, 122, 123, 120, 125, 128, 32.35180 + 132, 133, 133, 136, 141, 145, 149, 148, 146, 147, 145, 143, 139, 137, 138, 137, 32.35181 + 135, 133, 130, 128, 129, 128, 124, 125, 126, 125, 122, 118, 116, 115, 110, 106, 32.35182 + 102, 96, 93, 87, 82, 78, 69, 67, 61, 49, 36, 23, 15, 10, 13, 5, 32.35183 + 9, 61, 96, 79, 79, 70, 35, 1, 255, 7, 7, 9, 9, 7, 13, 53, 32.35184 + 83, 91, 94, 96, 104, 115, 119, 119, 122, 126, 129, 131, 133, 133, 131, 134, 32.35185 + 136, 137, 136, 137, 141, 144, 142, 138, 135, 136, 141, 146, 148, 148, 152, 150, 32.35186 + 147, 145, 144, 145, 146, 148, 153, 135, 125, 135, 149, 154, 154, 156, 162, 149, 32.35187 + 139, 134, 124, 111, 110, 120, 135, 137, 136, 133, 137, 146, 152, 153, 157, 156, 32.35188 + 156, 155, 155, 154, 153, 153, 144, 144, 139, 131, 126, 127, 123, 116, 115, 112, 32.35189 + 109, 112, 116, 117, 118, 118, 116, 121, 124, 126, 126, 127, 131, 136, 142, 144, 32.35190 + 146, 150, 151, 148, 142, 137, 138, 136, 133, 130, 130, 128, 127, 127, 123, 123, 32.35191 + 123, 123, 123, 119, 115, 112, 110, 108, 101, 95, 92, 86, 81, 76, 70, 66, 32.35192 + 60, 49, 39, 26, 15, 10, 10, 6, 4, 42, 75, 86, 83, 72, 52, 10, 32.35193 + 255, 7, 5, 5, 3, 2, 16, 54, 82, 88, 93, 98, 106, 116, 118, 117, 32.35194 + 120, 125, 128, 131, 132, 131, 131, 134, 138, 138, 135, 136, 139, 143, 142, 140, 32.35195 + 138, 139, 142, 146, 148, 149, 153, 151, 148, 145, 144, 144, 145, 146, 167, 148, 32.35196 + 128, 122, 128, 138, 148, 154, 160, 159, 161, 162, 153, 137, 129, 131, 145, 149, 32.35197 + 149, 147, 150, 157, 162, 162, 166, 167, 168, 169, 168, 167, 165, 164, 155, 154, 32.35198 + 146, 135, 130, 131, 122, 110, 112, 116, 118, 117, 115, 115, 116, 117, 113, 117, 32.35199 + 119, 120, 120, 121, 124, 128, 134, 137, 140, 146, 149, 148, 142, 137, 137, 135, 32.35200 + 132, 128, 128, 126, 125, 125, 125, 124, 123, 122, 122, 117, 111, 108, 111, 107, 32.35201 + 100, 94, 90, 84, 79, 75, 67, 63, 58, 49, 41, 28, 16, 9, 0, 8, 32.35202 + 15, 48, 62, 77, 75, 79, 63, 14, 255, 7, 5, 4, 4, 3, 20, 54, 32.35203 + 79, 86, 93, 100, 104, 114, 118, 116, 119, 124, 127, 129, 128, 126, 130, 134, 32.35204 + 138, 138, 134, 133, 137, 141, 139, 140, 141, 141, 141, 143, 146, 148, 151, 150, 32.35205 + 148, 147, 146, 146, 147, 148, 165, 159, 143, 124, 117, 125, 138, 147, 148, 154, 32.35206 + 162, 163, 155, 145, 140, 140, 154, 158, 160, 160, 166, 172, 175, 173, 176, 176, 32.35207 + 176, 175, 175, 174, 174, 172, 165, 165, 155, 141, 133, 135, 128, 117, 116, 123, 32.35208 + 124, 118, 114, 117, 118, 115, 115, 116, 116, 116, 114, 117, 120, 122, 127, 129, 32.35209 + 134, 139, 144, 146, 144, 142, 139, 137, 133, 129, 126, 124, 125, 125, 124, 123, 32.35210 + 124, 124, 123, 118, 113, 107, 109, 105, 98, 92, 88, 82, 76, 72, 65, 61, 32.35211 + 56, 49, 43, 32, 19, 12, 3, 7, 24, 70, 73, 75, 58, 74, 62, 11, 32.35212 + 255, 5, 4, 5, 5, 5, 20, 53, 75, 82, 93, 98, 104, 112, 117, 117, 32.35213 + 118, 123, 125, 127, 124, 121, 129, 134, 138, 138, 133, 132, 135, 139, 136, 139, 32.35214 + 142, 142, 140, 140, 143, 146, 149, 149, 148, 148, 148, 149, 150, 150, 154, 163, 32.35215 + 159, 136, 117, 119, 130, 138, 142, 149, 153, 148, 142, 141, 144, 147, 153, 159, 32.35216 + 164, 166, 172, 178, 179, 177, 179, 178, 176, 174, 173, 174, 177, 176, 170, 170, 32.35217 + 161, 143, 134, 136, 134, 126, 120, 128, 126, 117, 114, 121, 120, 112, 118, 117, 32.35218 + 115, 114, 114, 116, 118, 120, 124, 124, 127, 132, 138, 142, 144, 144, 139, 136, 32.35219 + 132, 128, 125, 123, 124, 125, 121, 120, 122, 124, 124, 121, 116, 111, 107, 103, 32.35220 + 96, 90, 86, 79, 74, 69, 64, 61, 57, 52, 46, 38, 26, 19, 15, 3, 32.35221 + 22, 90, 95, 80, 44, 59, 59, 10, 255, 6, 12, 0, 0, 3, 13, 43, 32.35222 + 75, 89, 93, 99, 107, 111, 115, 118, 121, 123, 122, 123, 126, 127, 134, 131, 32.35223 + 130, 132, 135, 139, 140, 139, 138, 139, 140, 142, 144, 145, 147, 147, 147, 148, 32.35224 + 149, 149, 148, 148, 150, 152, 159, 160, 158, 150, 137, 123, 113, 109, 126, 133, 32.35225 + 139, 140, 137, 137, 142, 149, 160, 159, 159, 163, 172, 178, 185, 187, 187, 187, 32.35226 + 187, 185, 184, 182, 181, 180, 172, 169, 162, 153, 145, 145, 142, 138, 132, 126, 32.35227 + 118, 117, 121, 123, 121, 118, 118, 116, 112, 112, 114, 117, 119, 119, 121, 121, 32.35228 + 122, 125, 132, 135, 137, 136, 138, 138, 137, 135, 132, 127, 122, 119, 121, 121, 32.35229 + 121, 120, 118, 116, 116, 116, 109, 105, 97, 89, 83, 76, 69, 63, 61, 62, 32.35230 + 60, 52, 45, 39, 27, 18, 8, 2, 21, 67, 95, 85, 68, 61, 45, 13, 32.35231 + 255, 4, 6, 0, 5, 5, 4, 34, 69, 86, 90, 97, 106, 111, 113, 116, 32.35232 + 120, 123, 123, 125, 128, 130, 133, 132, 131, 134, 138, 142, 144, 144, 139, 139, 32.35233 + 141, 143, 145, 146, 148, 148, 148, 149, 149, 148, 147, 148, 151, 154, 158, 158, 32.35234 + 156, 149, 138, 127, 120, 117, 104, 110, 118, 123, 128, 135, 145, 152, 148, 154, 32.35235 + 160, 167, 175, 180, 186, 188, 185, 185, 187, 187, 188, 187, 187, 186, 175, 172, 32.35236 + 167, 159, 153, 152, 149, 144, 135, 130, 123, 121, 123, 123, 119, 116, 117, 116, 32.35237 + 115, 115, 117, 118, 118, 117, 117, 116, 117, 120, 126, 129, 130, 129, 134, 135, 32.35238 + 135, 135, 134, 131, 128, 126, 123, 122, 122, 121, 119, 117, 113, 112, 115, 106, 32.35239 + 94, 83, 75, 69, 63, 59, 63, 65, 62, 55, 48, 41, 29, 22, 13, 0, 32.35240 + 5, 45, 82, 90, 79, 71, 38, 11, 255, 3, 2, 3, 17, 12, 2, 31, 32.35241 + 67, 85, 90, 96, 104, 110, 111, 114, 119, 122, 123, 126, 130, 133, 131, 130, 32.35242 + 131, 135, 138, 142, 145, 145, 139, 140, 141, 143, 146, 148, 149, 150, 148, 149, 32.35243 + 148, 147, 147, 148, 152, 156, 156, 155, 152, 145, 137, 130, 126, 125, 109, 110, 32.35244 + 112, 117, 125, 135, 144, 151, 143, 151, 163, 171, 177, 179, 184, 186, 190, 190, 32.35245 + 191, 191, 193, 193, 193, 191, 178, 176, 172, 166, 161, 160, 155, 148, 143, 139, 32.35246 + 133, 130, 129, 126, 120, 115, 116, 116, 117, 118, 120, 120, 120, 118, 116, 115, 32.35247 + 117, 119, 122, 124, 125, 124, 128, 129, 131, 132, 133, 132, 133, 132, 127, 124, 32.35248 + 122, 121, 122, 119, 113, 108, 113, 103, 88, 74, 66, 61, 60, 59, 64, 66, 32.35249 + 64, 58, 51, 44, 33, 25, 20, 3, 0, 30, 77, 98, 89, 73, 26, 6, 32.35250 + 255, 171, 2, 14, 35, 19, 12, 35, 66, 84, 92, 96, 103, 110, 112, 114, 32.35251 + 118, 121, 122, 125, 129, 133, 129, 129, 131, 134, 135, 139, 141, 142, 140, 141, 32.35252 + 142, 144, 146, 148, 150, 150, 148, 148, 148, 147, 147, 149, 154, 157, 158, 155, 32.35253 + 149, 143, 136, 132, 131, 131, 126, 123, 120, 122, 130, 140, 147, 150, 147, 156, 32.35254 + 168, 174, 176, 176, 181, 185, 195, 194, 195, 194, 195, 194, 195, 193, 183, 179, 32.35255 + 176, 170, 166, 164, 157, 148, 152, 149, 144, 140, 137, 131, 123, 118, 119, 118, 32.35256 + 118, 120, 123, 124, 125, 124, 119, 118, 119, 120, 122, 123, 123, 122, 120, 121, 32.35257 + 123, 125, 126, 126, 128, 128, 128, 124, 119, 117, 119, 118, 113, 109, 105, 97, 32.35258 + 83, 70, 62, 59, 59, 61, 64, 67, 65, 60, 54, 48, 37, 27, 19, 8, 32.35259 + 2, 23, 63, 84, 72, 48, 14, 1, 255, 255, 6, 28, 54, 31, 26, 41, 32.35260 + 63, 81, 92, 97, 105, 109, 113, 115, 118, 120, 119, 122, 127, 130, 130, 132, 32.35261 + 134, 136, 135, 136, 138, 139, 141, 142, 143, 144, 146, 147, 149, 149, 147, 147, 32.35262 + 148, 148, 148, 151, 155, 158, 161, 155, 147, 139, 134, 131, 130, 130, 123, 119, 32.35263 + 116, 121, 132, 143, 150, 153, 151, 158, 169, 173, 175, 177, 184, 189, 194, 195, 32.35264 + 196, 196, 197, 197, 198, 194, 188, 183, 179, 174, 171, 168, 160, 149, 156, 154, 32.35265 + 149, 146, 141, 133, 126, 121, 121, 116, 115, 115, 120, 124, 128, 128, 124, 122, 32.35266 + 121, 122, 124, 125, 123, 122, 118, 119, 119, 120, 122, 122, 122, 121, 126, 121, 32.35267 + 117, 114, 114, 114, 113, 112, 101, 94, 83, 71, 62, 57, 57, 58, 61, 64, 32.35268 + 63, 58, 54, 48, 38, 31, 18, 8, 1, 7, 29, 42, 32, 12, 6, 0, 32.35269 + 255, 255, 5, 33, 68, 50, 46, 46, 58, 74, 87, 97, 103, 110, 112, 114, 32.35270 + 116, 117, 117, 120, 125, 129, 133, 135, 138, 139, 137, 137, 138, 140, 142, 143, 32.35271 + 143, 144, 145, 146, 146, 147, 144, 146, 148, 150, 150, 152, 155, 158, 160, 154, 32.35272 + 144, 136, 131, 128, 127, 126, 122, 119, 119, 123, 132, 141, 147, 149, 150, 155, 32.35273 + 164, 169, 174, 179, 188, 193, 188, 189, 192, 193, 197, 198, 201, 198, 192, 186, 32.35274 + 181, 177, 175, 173, 164, 154, 155, 155, 151, 147, 141, 135, 129, 123, 122, 119, 32.35275 + 115, 115, 119, 122, 126, 127, 125, 123, 122, 122, 124, 124, 123, 121, 122, 122, 32.35276 + 121, 119, 120, 119, 118, 118, 121, 119, 117, 113, 110, 110, 111, 112, 102, 96, 32.35277 + 86, 73, 61, 54, 52, 52, 60, 63, 63, 59, 55, 50, 41, 33, 26, 16, 32.35278 + 1, 0, 0, 7, 4, 0, 2, 0, 255, 255, 170, 28, 79, 75, 75, 63, 32.35279 + 61, 70, 85, 95, 101, 106, 109, 110, 113, 114, 115, 119, 125, 129, 130, 134, 32.35280 + 138, 140, 137, 137, 139, 141, 144, 144, 144, 144, 144, 144, 144, 144, 142, 145, 32.35281 + 149, 152, 153, 154, 156, 157, 157, 150, 140, 132, 128, 126, 124, 122, 126, 126, 32.35282 + 127, 130, 135, 139, 142, 143, 150, 153, 160, 166, 174, 180, 187, 189, 185, 186, 32.35283 + 189, 193, 196, 198, 199, 196, 190, 183, 178, 175, 175, 176, 168, 158, 156, 156, 32.35284 + 153, 150, 145, 139, 136, 132, 130, 126, 124, 123, 125, 125, 126, 125, 127, 125, 32.35285 + 125, 125, 126, 126, 127, 125, 124, 123, 123, 121, 119, 117, 118, 117, 115, 118, 32.35286 + 120, 116, 109, 104, 105, 107, 101, 96, 85, 71, 59, 52, 51, 53, 60, 63, 32.35287 + 64, 60, 55, 51, 42, 36, 36, 22, 4, 0, 0, 0, 0, 1, 4, 0, 32.35288 + 255, 255, 255, 18, 85, 92, 99, 80, 66, 72, 84, 94, 99, 103, 105, 107, 32.35289 + 110, 113, 116, 120, 126, 131, 126, 130, 135, 137, 135, 136, 138, 141, 144, 144, 32.35290 + 144, 143, 143, 142, 142, 142, 140, 144, 149, 153, 154, 155, 156, 157, 154, 146, 32.35291 + 136, 129, 126, 125, 122, 120, 120, 122, 127, 134, 139, 142, 145, 148, 151, 155, 32.35292 + 159, 166, 174, 178, 179, 180, 184, 186, 187, 187, 190, 190, 190, 188, 182, 175, 32.35293 + 170, 168, 172, 175, 169, 159, 160, 160, 157, 151, 147, 143, 141, 138, 137, 135, 32.35294 + 134, 133, 133, 130, 126, 124, 127, 128, 127, 127, 129, 130, 128, 127, 124, 122, 32.35295 + 122, 119, 117, 115, 116, 115, 111, 117, 123, 119, 109, 101, 99, 101, 98, 92, 32.35296 + 82, 68, 57, 52, 54, 58, 61, 64, 65, 62, 59, 53, 46, 39, 35, 19, 32.35297 + 5, 1, 0, 0, 0, 2, 5, 1, 255, 255, 255, 172, 57, 103, 96, 112, 32.35298 + 76, 78, 67, 84, 104, 98, 105, 106, 109, 110, 115, 120, 123, 126, 131, 131, 32.35299 + 131, 135, 138, 140, 142, 143, 135, 139, 142, 143, 141, 139, 140, 142, 142, 144, 32.35300 + 149, 152, 154, 154, 153, 151, 150, 143, 132, 124, 118, 118, 120, 121, 124, 133, 32.35301 + 135, 133, 139, 141, 143, 155, 160, 167, 176, 181, 179, 178, 179, 181, 182, 181, 32.35302 + 181, 180, 178, 177, 176, 176, 171, 175, 176, 173, 170, 170, 168, 165, 148, 146, 32.35303 + 146, 146, 147, 145, 139, 136, 136, 137, 135, 131, 131, 132, 128, 124, 130, 134, 32.35304 + 134, 133, 132, 129, 129, 130, 127, 126, 124, 123, 124, 120, 115, 111, 110, 113, 32.35305 + 119, 123, 116, 101, 94, 96, 91, 87, 79, 67, 51, 42, 47, 57, 61, 67, 32.35306 + 70, 68, 63, 56, 49, 42, 41, 22, 4, 0, 0, 0, 0, 5, 6, 6, 32.35307 + 255, 255, 255, 255, 49, 107, 104, 117, 95, 87, 66, 81, 97, 103, 108, 109, 32.35308 + 112, 115, 117, 122, 124, 128, 130, 131, 131, 134, 137, 138, 140, 140, 139, 140, 32.35309 + 143, 142, 139, 137, 137, 139, 142, 145, 149, 153, 155, 155, 153, 152, 148, 139, 32.35310 + 130, 123, 120, 119, 121, 122, 127, 134, 133, 131, 140, 143, 145, 156, 163, 166, 32.35311 + 172, 178, 180, 181, 179, 177, 174, 173, 170, 168, 167, 166, 166, 166, 164, 169, 32.35312 + 172, 169, 169, 169, 167, 163, 155, 153, 149, 146, 145, 140, 133, 130, 136, 138, 32.35313 + 136, 132, 131, 131, 130, 124, 131, 132, 136, 135, 133, 131, 133, 134, 137, 135, 32.35314 + 133, 131, 129, 122, 114, 109, 109, 111, 118, 123, 118, 103, 91, 89, 84, 83, 32.35315 + 79, 70, 57, 49, 55, 67, 63, 69, 73, 70, 67, 62, 53, 45, 42, 24, 32.35316 + 6, 0, 0, 0, 2, 5, 6, 6, 255, 255, 255, 255, 35, 102, 109, 117, 32.35317 + 110, 93, 62, 77, 82, 103, 107, 109, 113, 116, 117, 121, 125, 128, 130, 132, 32.35318 + 133, 135, 135, 137, 139, 137, 140, 141, 142, 140, 137, 135, 134, 135, 142, 145, 32.35319 + 150, 154, 156, 156, 154, 153, 142, 136, 128, 121, 120, 122, 122, 123, 128, 133, 32.35320 + 131, 130, 140, 144, 144, 152, 167, 166, 168, 175, 180, 183, 179, 175, 171, 169, 32.35321 + 165, 162, 160, 160, 161, 161, 158, 163, 169, 169, 171, 174, 174, 168, 168, 164, 32.35322 + 161, 157, 152, 147, 141, 138, 136, 138, 138, 136, 137, 140, 140, 135, 132, 134, 32.35323 + 138, 138, 136, 135, 136, 137, 141, 140, 138, 136, 134, 126, 117, 110, 110, 112, 32.35324 + 117, 123, 121, 107, 92, 84, 77, 78, 78, 71, 58, 50, 58, 71, 61, 67, 32.35325 + 70, 68, 65, 60, 52, 44, 43, 26, 9, 0, 0, 0, 3, 5, 6, 89, 32.35326 + 255, 255, 255, 255, 175, 81, 113, 111, 114, 91, 61, 79, 70, 93, 99, 104, 32.35327 + 110, 114, 114, 116, 121, 124, 130, 133, 134, 134, 134, 138, 139, 138, 139, 138, 32.35328 + 138, 137, 136, 134, 134, 134, 142, 145, 150, 155, 157, 156, 153, 152, 139, 134, 32.35329 + 128, 123, 122, 122, 123, 122, 124, 129, 129, 131, 143, 147, 144, 151, 166, 166, 32.35330 + 169, 174, 177, 180, 179, 177, 170, 167, 162, 158, 156, 156, 158, 159, 158, 164, 32.35331 + 171, 174, 179, 184, 185, 180, 182, 177, 173, 170, 166, 161, 156, 155, 151, 154, 32.35332 + 152, 149, 148, 149, 146, 140, 135, 137, 138, 138, 136, 135, 135, 136, 136, 136, 32.35333 + 137, 137, 137, 131, 122, 115, 113, 112, 115, 119, 121, 111, 97, 86, 77, 77, 32.35334 + 74, 65, 52, 44, 52, 65, 60, 66, 70, 69, 66, 61, 53, 46, 44, 30, 32.35335 + 13, 1, 0, 0, 3, 4, 6, 255, 255, 255, 255, 255, 255, 45, 114, 113, 32.35336 + 115, 94, 68, 89, 69, 82, 93, 100, 108, 112, 113, 115, 118, 122, 132, 136, 32.35337 + 136, 133, 135, 141, 140, 137, 134, 134, 134, 134, 135, 136, 136, 136, 142, 146, 32.35338 + 151, 155, 156, 154, 151, 148, 139, 135, 130, 124, 123, 121, 122, 121, 115, 124, 32.35339 + 128, 136, 148, 150, 144, 149, 161, 166, 171, 174, 173, 175, 179, 182, 170, 167, 32.35340 + 162, 159, 157, 157, 159, 160, 170, 171, 176, 179, 185, 189, 188, 184, 184, 180, 32.35341 + 178, 177, 176, 174, 170, 171, 174, 173, 168, 160, 154, 151, 144, 137, 140, 142, 32.35342 + 143, 141, 137, 135, 135, 135, 134, 135, 137, 139, 139, 134, 126, 120, 113, 111, 32.35343 + 109, 109, 113, 110, 100, 90, 79, 75, 69, 59, 47, 42, 50, 62, 65, 71, 32.35344 + 75, 74, 72, 68, 60, 52, 45, 34, 17, 3, 0, 0, 4, 4, 6, 255, 32.35345 + 255, 255, 255, 255, 255, 175, 103, 120, 120, 101, 77, 97, 85, 84, 87, 95, 32.35346 + 106, 111, 112, 114, 116, 121, 129, 135, 135, 131, 133, 141, 140, 136, 131, 130, 32.35347 + 129, 131, 134, 136, 137, 137, 141, 145, 150, 153, 153, 150, 145, 144, 139, 135, 32.35348 + 131, 127, 125, 124, 122, 121, 113, 125, 131, 138, 151, 150, 145, 150, 157, 164, 32.35349 + 170, 172, 171, 174, 180, 185, 178, 177, 173, 170, 169, 170, 171, 170, 177, 178, 32.35350 + 177, 175, 179, 183, 181, 173, 172, 172, 173, 173, 172, 171, 169, 167, 169, 172, 32.35351 + 168, 162, 160, 157, 152, 145, 145, 144, 145, 143, 140, 136, 136, 136, 140, 140, 32.35352 + 140, 140, 140, 134, 126, 121, 113, 110, 105, 101, 104, 105, 99, 91, 78, 71, 32.35353 + 64, 57, 51, 48, 54, 63, 63, 70, 74, 73, 71, 68, 60, 53, 46, 37, 32.35354 + 21, 4, 0, 0, 4, 3, 6, 255, 255, 255, 255, 255, 255, 255, 65, 115, 32.35355 + 117, 106, 76, 96, 106, 99, 80, 90, 102, 109, 109, 111, 115, 121, 124, 132, 32.35356 + 134, 129, 130, 139, 141, 134, 130, 128, 126, 128, 132, 136, 136, 136, 141, 144, 32.35357 + 148, 151, 150, 146, 140, 138, 137, 135, 132, 130, 127, 127, 125, 124, 118, 130, 32.35358 + 134, 137, 146, 145, 144, 153, 157, 161, 165, 169, 171, 177, 182, 185, 184, 183, 32.35359 + 181, 180, 179, 179, 180, 178, 173, 171, 167, 162, 166, 170, 167, 161, 161, 160, 32.35360 + 163, 162, 163, 160, 157, 154, 154, 156, 156, 154, 156, 157, 155, 150, 143, 142, 32.35361 + 143, 140, 138, 136, 136, 136, 141, 140, 138, 137, 136, 131, 124, 119, 115, 115, 32.35362 + 109, 101, 101, 102, 98, 90, 75, 67, 61, 59, 57, 54, 54, 57, 58, 65, 32.35363 + 70, 69, 67, 64, 57, 50, 47, 40, 23, 5, 0, 0, 4, 3, 6, 255, 32.35364 + 255, 255, 255, 255, 255, 255, 178, 102, 112, 104, 70, 90, 120, 114, 73, 84, 32.35365 + 97, 104, 105, 106, 112, 117, 120, 129, 131, 126, 128, 138, 140, 134, 133, 128, 32.35366 + 126, 127, 131, 135, 135, 134, 140, 143, 147, 150, 148, 143, 137, 134, 134, 134, 32.35367 + 131, 130, 130, 129, 130, 127, 124, 135, 137, 136, 143, 142, 143, 156, 159, 159, 32.35368 + 160, 166, 173, 181, 184, 184, 179, 179, 178, 178, 178, 178, 178, 176, 162, 157, 32.35369 + 155, 150, 155, 160, 158, 153, 155, 155, 155, 156, 154, 151, 143, 139, 152, 153, 32.35370 + 152, 148, 147, 148, 143, 138, 136, 138, 137, 137, 136, 132, 135, 134, 136, 135, 32.35371 + 133, 132, 132, 128, 122, 118, 120, 121, 116, 106, 103, 103, 98, 90, 73, 65, 32.35372 + 59, 60, 60, 55, 50, 48, 60, 66, 71, 71, 69, 66, 59, 52, 48, 41, 32.35373 + 25, 5, 0, 0, 5, 3, 6, 255, 255, 255, 255, 255, 255, 255, 255, 59, 32.35374 + 114, 111, 81, 91, 118, 127, 111, 85, 73, 93, 108, 105, 107, 120, 120, 126, 32.35375 + 129, 130, 127, 125, 127, 128, 132, 129, 126, 127, 132, 135, 135, 134, 139, 147, 32.35376 + 152, 151, 147, 142, 135, 130, 133, 134, 133, 134, 136, 134, 131, 126, 122, 128, 32.35377 + 135, 139, 141, 143, 148, 155, 148, 159, 171, 178, 177, 177, 179, 181, 174, 170, 32.35378 + 165, 165, 166, 163, 155, 145, 137, 140, 148, 146, 143, 140, 142, 147, 153, 155, 32.35379 + 156, 153, 145, 140, 136, 137, 143, 145, 145, 146, 145, 141, 133, 126, 121, 122, 32.35380 + 118, 114, 122, 137, 147, 143, 134, 137, 134, 125, 120, 117, 115, 112, 113, 113, 32.35381 + 112, 111, 109, 102, 93, 87, 74, 69, 62, 59, 60, 60, 58, 55, 64, 66, 32.35382 + 66, 66, 68, 70, 65, 57, 50, 38, 22, 7, 0, 0, 4, 6, 7, 255, 32.35383 + 255, 255, 255, 255, 255, 255, 255, 177, 85, 112, 83, 81, 113, 126, 125, 96, 32.35384 + 73, 79, 95, 102, 106, 111, 117, 122, 124, 124, 122, 122, 126, 127, 130, 126, 32.35385 + 125, 127, 131, 135, 135, 135, 136, 142, 146, 143, 139, 137, 132, 129, 130, 129, 32.35386 + 128, 129, 129, 131, 129, 128, 133, 137, 140, 141, 141, 142, 147, 154, 161, 167, 32.35387 + 172, 175, 171, 169, 167, 167, 154, 151, 148, 148, 148, 147, 142, 136, 132, 134, 32.35388 + 135, 132, 129, 128, 131, 135, 151, 150, 149, 140, 132, 126, 126, 127, 129, 126, 32.35389 + 127, 128, 126, 117, 114, 117, 102, 101, 105, 115, 128, 141, 152, 155, 157, 149, 32.35390 + 136, 122, 117, 115, 109, 101, 114, 114, 114, 113, 109, 100, 91, 84, 74, 69, 32.35391 + 63, 60, 60, 59, 56, 53, 59, 62, 64, 66, 69, 71, 64, 56, 54, 42, 32.35392 + 25, 10, 1, 0, 4, 5, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35393 + 49, 106, 93, 78, 104, 124, 137, 114, 84, 70, 79, 95, 104, 103, 112, 116, 32.35394 + 120, 121, 118, 120, 124, 126, 126, 123, 124, 127, 130, 133, 134, 133, 138, 143, 32.35395 + 144, 139, 136, 136, 134, 131, 127, 126, 125, 126, 128, 132, 132, 133, 135, 137, 32.35396 + 140, 138, 139, 141, 147, 154, 173, 173, 170, 167, 163, 159, 154, 151, 153, 151, 32.35397 + 146, 143, 139, 136, 134, 131, 126, 126, 127, 125, 125, 125, 125, 124, 129, 129, 32.35398 + 129, 123, 117, 112, 111, 112, 114, 109, 109, 112, 108, 99, 100, 108, 102, 97, 32.35399 + 101, 111, 123, 133, 146, 154, 175, 159, 137, 121, 119, 119, 111, 100, 112, 114, 32.35400 + 116, 114, 110, 100, 90, 84, 72, 68, 63, 61, 61, 60, 57, 53, 57, 61, 32.35401 + 64, 66, 70, 72, 65, 57, 57, 45, 28, 12, 3, 0, 3, 4, 255, 255, 32.35402 + 255, 255, 255, 255, 255, 255, 255, 255, 176, 80, 103, 85, 89, 115, 138, 130, 32.35403 + 103, 72, 65, 84, 98, 99, 105, 109, 115, 119, 119, 120, 123, 125, 124, 122, 32.35404 + 123, 125, 128, 129, 130, 130, 136, 141, 142, 138, 134, 134, 133, 129, 125, 126, 32.35405 + 129, 130, 133, 135, 138, 138, 133, 134, 136, 138, 140, 146, 154, 161, 175, 169, 32.35406 + 162, 159, 157, 155, 150, 145, 144, 142, 138, 133, 129, 126, 127, 128, 133, 130, 32.35407 + 130, 130, 128, 123, 119, 117, 115, 116, 120, 123, 121, 118, 113, 111, 111, 111, 32.35408 + 111, 107, 106, 109, 110, 111, 124, 119, 111, 103, 107, 119, 130, 133, 162, 147, 32.35409 + 129, 115, 116, 118, 114, 105, 109, 113, 117, 116, 111, 100, 90, 84, 69, 65, 32.35410 + 61, 61, 63, 63, 60, 57, 62, 64, 64, 64, 68, 70, 66, 59, 57, 45, 32.35411 + 28, 13, 4, 1, 4, 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35412 + 255, 34, 97, 92, 75, 102, 124, 133, 117, 82, 60, 68, 84, 94, 97, 103, 32.35413 + 110, 117, 122, 123, 124, 122, 123, 124, 125, 125, 126, 127, 128, 129, 131, 136, 32.35414 + 139, 135, 132, 130, 128, 121, 125, 127, 132, 137, 140, 139, 139, 137, 140, 140, 32.35415 + 142, 144, 148, 155, 162, 169, 166, 160, 154, 154, 156, 157, 153, 148, 139, 138, 32.35416 + 136, 133, 132, 132, 136, 139, 135, 131, 127, 122, 122, 121, 122, 121, 142, 139, 32.35417 + 137, 134, 130, 126, 121, 119, 112, 121, 121, 111, 117, 130, 130, 118, 129, 133, 32.35418 + 124, 106, 102, 115, 122, 115, 127, 122, 113, 103, 103, 107, 109, 107, 113, 117, 32.35419 + 120, 117, 109, 97, 86, 80, 66, 63, 60, 61, 64, 66, 65, 63, 67, 66, 32.35420 + 61, 58, 60, 64, 62, 58, 53, 42, 27, 12, 4, 1, 4, 5, 255, 255, 32.35421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 96, 80, 98, 108, 119, 32.35422 + 114, 91, 65, 58, 69, 84, 89, 94, 102, 111, 117, 120, 121, 119, 123, 122, 32.35423 + 122, 122, 122, 123, 127, 130, 132, 137, 139, 135, 131, 129, 126, 120, 122, 127, 32.35424 + 134, 137, 139, 138, 135, 135, 142, 142, 145, 147, 151, 156, 158, 160, 155, 152, 32.35425 + 149, 151, 153, 154, 150, 145, 139, 137, 133, 130, 129, 129, 130, 131, 118, 115, 32.35426 + 112, 111, 116, 126, 140, 145, 172, 162, 149, 136, 127, 122, 121, 118, 114, 124, 32.35427 + 123, 115, 118, 135, 137, 125, 112, 124, 127, 118, 116, 122, 123, 111, 109, 107, 32.35428 + 105, 98, 97, 102, 108, 110, 121, 124, 124, 118, 106, 92, 80, 75, 68, 64, 32.35429 + 60, 61, 65, 68, 69, 68, 67, 64, 57, 51, 53, 58, 58, 55, 53, 42, 32.35430 + 27, 13, 5, 2, 5, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35431 + 255, 255, 40, 82, 94, 93, 103, 100, 100, 98, 79, 61, 62, 75, 83, 86, 32.35432 + 90, 99, 107, 113, 117, 116, 119, 118, 118, 118, 118, 122, 128, 134, 138, 142, 32.35433 + 141, 134, 130, 129, 128, 123, 125, 128, 134, 137, 137, 134, 134, 135, 139, 140, 32.35434 + 144, 147, 152, 154, 152, 151, 147, 146, 145, 145, 143, 139, 132, 126, 121, 118, 32.35435 + 113, 112, 114, 115, 114, 111, 115, 118, 124, 127, 131, 137, 145, 152, 159, 150, 32.35436 + 135, 125, 120, 117, 114, 113, 115, 116, 118, 115, 112, 115, 126, 135, 109, 112, 32.35437 + 122, 131, 130, 121, 118, 117, 106, 105, 103, 97, 98, 105, 113, 116, 121, 124, 32.35438 + 125, 117, 105, 90, 81, 77, 74, 68, 62, 61, 64, 68, 70, 70, 65, 63, 32.35439 + 57, 52, 54, 59, 59, 56, 56, 45, 30, 16, 7, 3, 4, 88, 255, 255, 32.35440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 67, 104, 88, 110, 91, 32.35441 + 88, 101, 95, 70, 60, 68, 79, 80, 82, 88, 97, 108, 114, 117, 116, 117, 32.35442 + 117, 117, 118, 124, 133, 138, 139, 141, 137, 128, 123, 123, 124, 121, 131, 133, 32.35443 + 138, 137, 136, 135, 137, 139, 141, 143, 147, 152, 156, 157, 155, 150, 141, 141, 32.35444 + 141, 137, 132, 123, 113, 104, 113, 110, 110, 114, 124, 131, 132, 130, 135, 144, 32.35445 + 154, 157, 149, 138, 130, 127, 122, 119, 121, 122, 125, 124, 120, 117, 117, 109, 32.35446 + 112, 118, 106, 94, 112, 141, 121, 109, 117, 137, 132, 108, 106, 120, 103, 101, 32.35447 + 97, 92, 94, 106, 115, 118, 117, 120, 122, 115, 105, 92, 86, 84, 79, 72, 32.35448 + 64, 61, 64, 67, 69, 69, 64, 63, 59, 56, 59, 64, 63, 59, 60, 51, 32.35449 + 33, 18, 9, 5, 4, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35450 + 255, 255, 255, 40, 84, 118, 109, 106, 103, 116, 119, 81, 55, 71, 68, 77, 32.35451 + 79, 75, 85, 106, 113, 107, 109, 116, 124, 125, 121, 121, 128, 134, 144, 141, 32.35452 + 137, 133, 126, 123, 124, 126, 131, 134, 139, 142, 142, 141, 141, 140, 142, 144, 32.35453 + 145, 144, 145, 145, 144, 143, 133, 125, 122, 122, 123, 121, 126, 132, 138, 162, 32.35454 + 170, 148, 128, 133, 141, 138, 136, 135, 132, 129, 123, 119, 116, 116, 108, 116, 32.35455 + 116, 110, 114, 124, 122, 112, 112, 112, 118, 121, 114, 108, 113, 127, 110, 113, 32.35456 + 117, 123, 120, 112, 111, 111, 97, 94, 92, 93, 99, 106, 111, 113, 115, 115, 32.35457 + 111, 103, 93, 84, 80, 82, 76, 73, 70, 68, 68, 69, 69, 69, 62, 60, 32.35458 + 53, 50, 54, 59, 56, 53, 50, 49, 39, 22, 8, 6, 8, 255, 255, 255, 32.35459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 60, 97, 108, 101, 32.35460 + 104, 121, 131, 104, 67, 52, 64, 72, 76, 76, 82, 95, 105, 103, 106, 111, 32.35461 + 118, 120, 119, 122, 130, 139, 142, 139, 135, 131, 125, 125, 128, 130, 133, 136, 32.35462 + 142, 144, 145, 144, 145, 146, 153, 146, 134, 123, 121, 124, 129, 130, 126, 120, 32.35463 + 120, 127, 132, 134, 139, 146, 166, 178, 178, 154, 135, 129, 125, 116, 112, 110, 32.35464 + 110, 107, 103, 102, 106, 109, 113, 113, 114, 114, 115, 118, 119, 118, 123, 121, 32.35465 + 124, 124, 113, 101, 104, 114, 106, 103, 106, 111, 114, 110, 107, 104, 93, 90, 32.35466 + 90, 92, 98, 104, 109, 110, 115, 115, 114, 109, 103, 93, 85, 83, 76, 74, 32.35467 + 70, 69, 69, 70, 70, 69, 66, 62, 54, 51, 54, 59, 57, 53, 42, 42, 32.35468 + 34, 16, 5, 1, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35469 + 255, 255, 255, 255, 179, 62, 86, 83, 92, 106, 114, 113, 96, 66, 62, 68, 32.35470 + 73, 75, 78, 82, 92, 96, 101, 105, 111, 114, 115, 120, 128, 136, 139, 138, 32.35471 + 133, 128, 124, 126, 131, 133, 132, 136, 143, 144, 144, 142, 144, 147, 145, 133, 32.35472 + 118, 107, 108, 114, 124, 129, 123, 120, 120, 126, 129, 130, 133, 136, 129, 132, 32.35473 + 134, 129, 124, 120, 117, 111, 109, 108, 109, 106, 104, 105, 110, 115, 120, 116, 32.35474 + 118, 122, 122, 121, 128, 139, 136, 130, 128, 124, 112, 99, 100, 109, 106, 100, 32.35475 + 101, 108, 114, 112, 106, 100, 90, 89, 90, 94, 100, 105, 109, 110, 113, 114, 32.35476 + 115, 113, 109, 99, 86, 79, 76, 73, 70, 69, 70, 71, 70, 70, 69, 65, 32.35477 + 56, 51, 53, 58, 56, 53, 42, 42, 35, 18, 8, 4, 255, 255, 255, 255, 32.35478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 75, 89, 32.35479 + 113, 112, 96, 104, 103, 77, 65, 65, 70, 77, 79, 77, 83, 88, 97, 100, 32.35480 + 106, 110, 113, 117, 122, 127, 138, 138, 133, 125, 121, 126, 132, 133, 131, 135, 32.35481 + 141, 141, 139, 137, 140, 144, 134, 122, 111, 108, 113, 118, 123, 125, 120, 121, 32.35482 + 121, 124, 126, 126, 126, 126, 134, 129, 125, 125, 121, 117, 116, 117, 121, 120, 32.35483 + 122, 119, 115, 114, 119, 122, 123, 127, 130, 129, 129, 135, 150, 159, 144, 134, 32.35484 + 125, 120, 110, 100, 104, 114, 109, 105, 108, 114, 117, 111, 104, 100, 92, 91, 32.35485 + 94, 99, 105, 109, 112, 112, 114, 113, 112, 111, 108, 97, 82, 71, 77, 74, 32.35486 + 72, 71, 72, 72, 71, 70, 71, 66, 56, 50, 52, 56, 54, 50, 43, 42, 32.35487 + 35, 19, 12, 8, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35488 + 255, 255, 255, 255, 255, 62, 30, 62, 105, 113, 98, 105, 108, 83, 61, 63, 32.35489 + 70, 80, 85, 82, 80, 81, 88, 91, 99, 107, 113, 117, 119, 120, 136, 137, 32.35490 + 132, 123, 118, 125, 131, 130, 133, 135, 140, 140, 138, 136, 138, 142, 133, 119, 32.35491 + 108, 109, 115, 116, 117, 117, 120, 121, 125, 130, 137, 142, 145, 146, 151, 142, 32.35492 + 134, 131, 128, 125, 130, 135, 129, 128, 127, 125, 123, 120, 120, 119, 126, 143, 32.35493 + 148, 134, 133, 152, 169, 170, 147, 134, 121, 115, 109, 103, 110, 120, 114, 114, 32.35494 + 120, 123, 119, 109, 101, 98, 93, 93, 96, 101, 107, 111, 113, 112, 118, 115, 32.35495 + 111, 108, 103, 92, 78, 68, 77, 75, 73, 73, 74, 74, 72, 71, 70, 65, 32.35496 + 57, 51, 52, 56, 53, 47, 37, 36, 28, 13, 7, 4, 255, 255, 255, 255, 32.35497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 0, 12, 32.35498 + 39, 53, 58, 68, 68, 54, 44, 54, 69, 79, 83, 83, 82, 79, 77, 79, 32.35499 + 87, 99, 109, 117, 119, 119, 132, 135, 131, 121, 117, 124, 129, 126, 135, 135, 32.35500 + 138, 139, 141, 141, 142, 144, 128, 110, 97, 101, 113, 117, 121, 124, 126, 128, 32.35501 + 131, 133, 141, 150, 156, 159, 135, 131, 128, 131, 137, 142, 149, 152, 144, 139, 32.35502 + 135, 135, 136, 136, 135, 131, 146, 167, 168, 148, 146, 167, 177, 169, 147, 130, 32.35503 + 116, 112, 108, 105, 111, 120, 116, 116, 121, 122, 115, 104, 101, 100, 95, 94, 32.35504 + 96, 101, 106, 110, 111, 111, 121, 118, 114, 108, 101, 89, 77, 69, 76, 76, 32.35505 + 75, 74, 75, 75, 73, 71, 67, 64, 57, 52, 53, 55, 51, 46, 37, 33, 32.35506 + 23, 8, 3, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35507 + 255, 255, 255, 255, 255, 255, 172, 7, 1, 1, 6, 1, 0, 0, 15, 41, 32.35508 + 67, 74, 75, 80, 83, 81, 73, 72, 77, 88, 101, 112, 116, 117, 124, 130, 32.35509 + 128, 119, 116, 125, 130, 125, 132, 130, 131, 135, 142, 146, 147, 146, 126, 106, 32.35510 + 95, 104, 119, 125, 129, 133, 131, 132, 133, 130, 135, 146, 155, 158, 147, 146, 32.35511 + 145, 151, 163, 168, 162, 150, 168, 156, 148, 147, 152, 156, 152, 147, 161, 175, 32.35512 + 174, 158, 154, 165, 170, 162, 141, 125, 116, 116, 118, 115, 116, 122, 121, 116, 32.35513 + 114, 114, 112, 108, 106, 106, 100, 98, 99, 102, 107, 110, 113, 112, 116, 117, 32.35514 + 116, 110, 101, 88, 77, 71, 76, 75, 74, 74, 75, 74, 74, 72, 66, 63, 32.35515 + 58, 54, 57, 58, 52, 45, 39, 33, 22, 7, 3, 255, 255, 255, 255, 255, 32.35516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 7, 32.35517 + 3, 8, 14, 0, 0, 6, 0, 30, 65, 71, 70, 75, 84, 84, 76, 72, 32.35518 + 72, 80, 93, 105, 111, 113, 119, 127, 126, 118, 116, 126, 131, 125, 127, 123, 32.35519 + 124, 130, 142, 148, 149, 147, 135, 116, 107, 117, 131, 131, 127, 126, 127, 128, 32.35520 + 128, 125, 131, 147, 160, 162, 139, 141, 147, 161, 184, 195, 180, 158, 182, 167, 32.35521 + 151, 147, 154, 159, 156, 150, 162, 165, 164, 157, 151, 152, 153, 151, 136, 123, 32.35522 + 117, 123, 129, 125, 124, 128, 124, 113, 106, 106, 111, 113, 114, 113, 105, 103, 32.35523 + 103, 105, 110, 113, 115, 116, 110, 113, 116, 111, 100, 86, 76, 70, 77, 75, 32.35524 + 74, 75, 75, 75, 74, 72, 65, 63, 59, 56, 59, 60, 53, 46, 39, 32, 32.35525 + 19, 3, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35526 + 255, 255, 255, 255, 255, 255, 255, 171, 6, 5, 6, 5, 4, 1, 4, 8, 32.35527 + 45, 73, 71, 75, 86, 82, 84, 79, 71, 66, 73, 88, 100, 104, 111, 122, 32.35528 + 126, 118, 115, 125, 132, 128, 124, 126, 125, 122, 132, 145, 146, 136, 125, 124, 32.35529 + 116, 106, 111, 123, 124, 113, 143, 129, 119, 122, 134, 142, 150, 154, 140, 142, 32.35530 + 169, 182, 184, 206, 206, 159, 191, 175, 157, 148, 151, 156, 157, 155, 156, 160, 32.35531 + 161, 157, 150, 146, 149, 150, 137, 129, 125, 123, 124, 125, 126, 123, 102, 100, 32.35532 + 101, 105, 110, 113, 114, 110, 112, 109, 108, 109, 112, 115, 117, 117, 119, 118, 32.35533 + 115, 110, 104, 94, 85, 79, 77, 75, 73, 73, 77, 78, 78, 77, 70, 67, 32.35534 + 66, 64, 61, 54, 49, 49, 44, 30, 16, 6, 255, 255, 255, 255, 255, 255, 32.35535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35536 + 172, 7, 8, 6, 5, 4, 0, 5, 32, 58, 69, 77, 84, 84, 81, 78, 32.35537 + 73, 68, 72, 84, 94, 99, 103, 115, 121, 117, 116, 126, 132, 128, 119, 121, 32.35538 + 119, 116, 125, 137, 138, 130, 120, 121, 114, 106, 113, 124, 125, 117, 131, 122, 32.35539 + 116, 119, 127, 136, 150, 162, 142, 135, 160, 179, 172, 181, 185, 163, 173, 165, 32.35540 + 156, 151, 151, 153, 155, 154, 151, 150, 147, 141, 141, 142, 151, 155, 139, 130, 32.35541 + 124, 125, 129, 123, 109, 98, 91, 94, 100, 109, 114, 116, 115, 110, 111, 109, 32.35542 + 107, 109, 111, 113, 115, 114, 111, 112, 111, 109, 105, 96, 88, 83, 82, 79, 32.35543 + 76, 73, 75, 73, 71, 69, 68, 66, 65, 63, 60, 54, 47, 46, 38, 24, 32.35544 + 11, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 7, 8, 8, 7, 0, 6, 32.35546 + 14, 36, 63, 76, 77, 82, 78, 79, 77, 71, 70, 78, 85, 89, 95, 108, 32.35547 + 116, 116, 116, 125, 129, 125, 116, 116, 113, 109, 116, 126, 127, 120, 115, 116, 32.35548 + 112, 107, 112, 121, 121, 114, 117, 116, 116, 118, 120, 127, 147, 163, 148, 131, 32.35549 + 150, 170, 157, 150, 160, 162, 152, 153, 153, 152, 150, 150, 151, 150, 148, 147, 32.35550 + 146, 142, 141, 136, 133, 130, 125, 126, 129, 129, 122, 106, 87, 76, 84, 93, 32.35551 + 105, 118, 122, 122, 120, 118, 114, 112, 111, 112, 114, 115, 115, 114, 109, 110, 32.35552 + 111, 109, 106, 97, 89, 83, 82, 79, 74, 71, 71, 69, 68, 66, 66, 65, 32.35553 + 65, 62, 60, 54, 47, 43, 31, 18, 7, 255, 255, 255, 255, 255, 255, 255, 32.35554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35555 + 255, 172, 9, 10, 10, 10, 8, 11, 6, 19, 56, 72, 72, 80, 80, 83, 32.35556 + 84, 77, 71, 73, 76, 78, 90, 100, 109, 113, 116, 123, 126, 123, 119, 117, 32.35557 + 113, 107, 111, 116, 117, 112, 113, 114, 112, 108, 112, 117, 117, 111, 108, 108, 32.35558 + 111, 113, 112, 116, 131, 144, 152, 136, 143, 155, 142, 133, 144, 154, 143, 145, 32.35559 + 149, 149, 149, 148, 147, 144, 139, 138, 138, 136, 135, 131, 123, 119, 123, 124, 32.35560 + 121, 102, 83, 73, 77, 86, 96, 106, 121, 130, 132, 130, 130, 127, 120, 118, 32.35561 + 117, 117, 118, 118, 118, 116, 114, 115, 115, 112, 106, 96, 86, 79, 79, 76, 32.35562 + 73, 71, 73, 72, 72, 71, 65, 66, 65, 61, 60, 54, 46, 38, 26, 14, 32.35563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 12, 13, 12, 15, 16, 32.35565 + 3, 9, 44, 64, 69, 81, 82, 87, 89, 81, 74, 71, 71, 70, 80, 88, 32.35566 + 99, 107, 113, 122, 127, 125, 126, 123, 118, 112, 111, 112, 111, 108, 110, 112, 32.35567 + 112, 111, 116, 120, 120, 118, 112, 109, 109, 112, 113, 112, 112, 118, 140, 134, 32.35568 + 135, 135, 132, 135, 143, 146, 145, 142, 143, 143, 146, 147, 143, 137, 131, 126, 32.35569 + 124, 124, 125, 128, 129, 128, 114, 102, 84, 60, 53, 64, 90, 114, 118, 124, 32.35570 + 134, 138, 136, 133, 134, 132, 124, 122, 119, 119, 119, 119, 118, 116, 118, 119, 32.35571 + 118, 113, 108, 97, 87, 81, 80, 75, 74, 73, 75, 75, 75, 74, 66, 68, 32.35572 + 67, 61, 60, 57, 48, 35, 20, 9, 255, 255, 255, 255, 255, 255, 255, 255, 32.35573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35574 + 255, 255, 255, 12, 14, 15, 16, 14, 6, 6, 27, 51, 70, 83, 82, 86, 32.35575 + 88, 83, 77, 74, 71, 68, 69, 75, 85, 96, 107, 119, 127, 130, 130, 127, 32.35576 + 123, 118, 116, 112, 110, 108, 109, 110, 111, 114, 119, 123, 126, 127, 124, 118, 32.35577 + 116, 120, 122, 120, 115, 115, 126, 129, 128, 121, 129, 139, 142, 141, 145, 143, 32.35578 + 139, 137, 140, 140, 136, 130, 138, 138, 138, 132, 124, 111, 100, 93, 67, 59, 32.35579 + 55, 64, 84, 106, 122, 127, 132, 137, 139, 139, 137, 134, 134, 133, 126, 123, 32.35580 + 119, 116, 116, 115, 115, 114, 116, 116, 115, 112, 108, 101, 93, 87, 84, 79, 32.35581 + 77, 75, 75, 74, 73, 71, 67, 68, 65, 57, 57, 56, 46, 31, 16, 88, 32.35582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 16, 16, 14, 32.35584 + 14, 8, 9, 33, 65, 77, 78, 80, 83, 81, 79, 79, 74, 69, 67, 68, 32.35585 + 75, 86, 97, 110, 121, 126, 129, 126, 125, 122, 120, 114, 111, 110, 109, 109, 32.35586 + 110, 112, 115, 118, 121, 125, 130, 124, 122, 125, 126, 126, 125, 127, 122, 132, 32.35587 + 130, 126, 134, 139, 138, 138, 139, 138, 137, 133, 131, 129, 127, 125, 136, 134, 32.35588 + 129, 114, 96, 75, 61, 55, 51, 59, 77, 101, 124, 135, 137, 132, 137, 138, 32.35589 + 137, 137, 137, 136, 135, 133, 130, 125, 119, 115, 114, 114, 115, 114, 114, 113, 32.35590 + 112, 109, 107, 102, 97, 92, 86, 81, 76, 73, 72, 71, 70, 68, 65, 66, 32.35591 + 61, 51, 52, 52, 43, 27, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35593 + 255, 255, 255, 255, 255, 16, 19, 14, 17, 10, 0, 20, 59, 71, 73, 75, 32.35594 + 80, 78, 80, 83, 79, 72, 72, 68, 73, 80, 92, 102, 114, 120, 125, 125, 32.35595 + 126, 126, 122, 116, 112, 112, 110, 108, 106, 106, 104, 104, 109, 113, 118, 114, 32.35596 + 112, 115, 116, 119, 125, 131, 129, 137, 139, 138, 142, 135, 131, 138, 128, 132, 32.35597 + 136, 132, 126, 120, 120, 123, 112, 102, 80, 58, 44, 42, 54, 66, 95, 107, 32.35598 + 121, 126, 126, 126, 134, 142, 138, 136, 136, 138, 140, 140, 136, 133, 132, 127, 32.35599 + 121, 116, 114, 115, 117, 117, 113, 113, 111, 107, 103, 98, 96, 92, 82, 79, 32.35600 + 74, 71, 71, 71, 70, 70, 64, 66, 58, 49, 48, 52, 41, 25, 96, 255, 32.35601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 13, 10, 32.35603 + 13, 10, 0, 4, 33, 67, 75, 74, 80, 82, 82, 79, 79, 78, 76, 72, 32.35604 + 69, 69, 76, 88, 103, 110, 115, 117, 122, 127, 128, 125, 119, 116, 113, 110, 32.35605 + 106, 104, 105, 105, 107, 107, 111, 113, 112, 111, 109, 107, 105, 102, 112, 111, 32.35606 + 111, 113, 115, 114, 112, 109, 111, 107, 100, 91, 85, 78, 74, 73, 57, 57, 32.35607 + 61, 75, 95, 113, 127, 132, 140, 140, 139, 139, 140, 140, 139, 139, 135, 138, 32.35608 + 140, 138, 133, 131, 133, 136, 129, 124, 120, 116, 113, 113, 116, 118, 113, 111, 32.35609 + 104, 99, 103, 108, 105, 93, 84, 77, 72, 68, 67, 64, 65, 68, 69, 62, 32.35610 + 55, 55, 55, 49, 33, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35612 + 255, 255, 255, 255, 255, 255, 173, 10, 12, 11, 0, 0, 20, 45, 66, 72, 32.35613 + 81, 84, 82, 83, 84, 86, 79, 77, 74, 73, 75, 83, 94, 101, 106, 111, 32.35614 + 118, 125, 127, 128, 124, 123, 117, 113, 108, 107, 106, 108, 108, 110, 110, 111, 32.35615 + 111, 110, 108, 106, 104, 103, 87, 86, 86, 87, 87, 84, 80, 76, 62, 63, 32.35616 + 64, 67, 72, 79, 86, 90, 117, 121, 128, 138, 148, 153, 154, 152, 148, 148, 32.35617 + 147, 147, 146, 145, 145, 145, 135, 134, 133, 133, 134, 136, 136, 136, 129, 125, 32.35618 + 119, 113, 111, 110, 112, 113, 103, 102, 99, 96, 99, 102, 95, 85, 80, 74, 32.35619 + 68, 62, 61, 61, 62, 63, 66, 60, 55, 52, 52, 44, 104, 255, 255, 255, 32.35620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35622 + 8, 10, 2, 0, 6, 19, 43, 60, 77, 79, 78, 82, 82, 81, 81, 82, 32.35623 + 80, 77, 75, 77, 82, 88, 98, 103, 111, 120, 124, 128, 127, 127, 120, 116, 32.35624 + 111, 111, 112, 113, 111, 113, 114, 114, 114, 113, 112, 111, 110, 109, 106, 107, 32.35625 + 110, 114, 117, 117, 113, 110, 105, 106, 110, 116, 124, 135, 144, 149, 146, 151, 32.35626 + 157, 160, 157, 152, 146, 143, 151, 151, 150, 149, 148, 147, 146, 146, 134, 130, 32.35627 + 125, 126, 131, 135, 134, 132, 131, 127, 121, 114, 108, 106, 107, 107, 102, 101, 32.35628 + 101, 100, 103, 103, 98, 88, 84, 78, 72, 64, 62, 61, 63, 63, 59, 55, 32.35629 + 52, 49, 47, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35631 + 255, 255, 255, 255, 255, 255, 255, 255, 171, 9, 5, 0, 3, 7, 22, 47, 32.35632 + 71, 76, 76, 80, 78, 74, 78, 81, 82, 81, 76, 75, 78, 81, 94, 97, 32.35633 + 105, 113, 119, 124, 125, 126, 120, 118, 114, 112, 114, 115, 113, 114, 115, 116, 32.35634 + 119, 119, 122, 120, 122, 120, 131, 131, 138, 142, 147, 145, 144, 138, 132, 133, 32.35635 + 135, 137, 141, 145, 148, 149, 154, 157, 158, 154, 147, 142, 143, 145, 148, 148, 32.35636 + 147, 146, 144, 143, 142, 141, 134, 130, 125, 122, 123, 125, 125, 125, 127, 123, 32.35637 + 118, 112, 107, 104, 104, 104, 106, 104, 103, 103, 105, 104, 100, 93, 86, 82, 32.35638 + 75, 65, 63, 65, 64, 63, 54, 51, 49, 47, 42, 255, 255, 255, 255, 255, 32.35639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35641 + 255, 173, 7, 5, 5, 5, 9, 35, 63, 76, 80, 85, 83, 78, 73, 77, 32.35642 + 79, 81, 80, 80, 81, 82, 86, 91, 96, 106, 113, 120, 122, 125, 121, 119, 32.35643 + 116, 117, 117, 118, 117, 116, 115, 114, 120, 121, 127, 127, 131, 130, 139, 138, 32.35644 + 142, 142, 144, 139, 135, 130, 139, 141, 145, 149, 151, 152, 152, 151, 153, 155, 32.35645 + 155, 150, 143, 142, 147, 153, 148, 148, 146, 145, 143, 141, 140, 139, 138, 137, 32.35646 + 132, 125, 118, 115, 116, 119, 118, 117, 115, 112, 111, 107, 105, 103, 106, 102, 32.35647 + 97, 97, 99, 97, 94, 92, 85, 83, 76, 65, 62, 62, 60, 56, 50, 48, 32.35648 + 46, 42, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 6, 6, 3, 0, 14, 32.35651 + 39, 62, 76, 81, 81, 79, 70, 72, 76, 78, 81, 83, 84, 84, 77, 81, 32.35652 + 87, 98, 108, 115, 122, 124, 124, 121, 119, 120, 120, 121, 120, 119, 112, 114, 32.35653 + 118, 123, 128, 132, 134, 136, 141, 142, 143, 146, 147, 145, 140, 136, 129, 132, 32.35654 + 137, 141, 143, 144, 143, 142, 143, 147, 150, 148, 143, 141, 143, 147, 151, 150, 32.35655 + 148, 146, 144, 142, 140, 139, 142, 142, 138, 129, 119, 112, 113, 115, 109, 110, 32.35656 + 112, 113, 114, 110, 106, 103, 105, 99, 94, 93, 93, 89, 87, 88, 84, 85, 32.35657 + 80, 67, 64, 65, 62, 55, 48, 47, 43, 110, 255, 255, 255, 255, 255, 255, 32.35658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35660 + 255, 255, 255, 172, 6, 3, 2, 0, 15, 44, 66, 72, 72, 75, 75, 71, 32.35661 + 70, 75, 79, 83, 83, 81, 74, 78, 85, 92, 102, 109, 116, 118, 123, 120, 32.35662 + 119, 120, 122, 123, 120, 118, 116, 116, 120, 124, 129, 132, 135, 136, 134, 135, 32.35663 + 138, 142, 146, 147, 146, 146, 145, 145, 146, 147, 147, 148, 148, 148, 147, 149, 32.35664 + 151, 150, 146, 144, 145, 147, 150, 149, 147, 144, 142, 139, 138, 137, 142, 140, 32.35665 + 136, 129, 122, 117, 114, 113, 105, 109, 114, 117, 117, 112, 107, 102, 103, 97, 32.35666 + 95, 96, 93, 85, 83, 85, 86, 89, 85, 72, 67, 67, 62, 52, 47, 45, 32.35667 + 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 4, 17, 2, 32.35670 + 7, 36, 61, 66, 66, 72, 78, 73, 67, 71, 79, 82, 80, 76, 78, 80, 32.35671 + 85, 92, 97, 105, 109, 113, 120, 119, 117, 117, 120, 120, 117, 115, 121, 121, 32.35672 + 125, 128, 132, 135, 137, 138, 142, 141, 142, 144, 147, 147, 145, 143, 143, 142, 32.35673 + 139, 138, 139, 141, 144, 146, 144, 142, 139, 135, 133, 135, 139, 142, 143, 142, 32.35674 + 140, 138, 135, 132, 130, 129, 138, 133, 127, 124, 122, 119, 113, 108, 103, 108, 32.35675 + 115, 119, 118, 113, 106, 100, 97, 92, 93, 95, 90, 80, 76, 77, 80, 84, 32.35676 + 81, 69, 63, 65, 58, 46, 47, 45, 255, 255, 255, 255, 255, 255, 255, 255, 32.35677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35679 + 255, 255, 255, 255, 255, 11, 8, 3, 3, 12, 29, 49, 65, 72, 76, 79, 32.35680 + 78, 69, 68, 74, 78, 75, 80, 81, 82, 84, 88, 93, 100, 106, 113, 114, 32.35681 + 114, 115, 116, 116, 116, 115, 120, 121, 125, 130, 134, 137, 139, 139, 139, 141, 32.35682 + 141, 140, 143, 147, 147, 142, 142, 137, 135, 137, 136, 135, 140, 149, 146, 146, 32.35683 + 142, 135, 133, 137, 140, 138, 143, 135, 129, 132, 134, 132, 132, 135, 142, 135, 32.35684 + 125, 118, 120, 124, 120, 112, 102, 107, 110, 110, 113, 115, 113, 108, 105, 101, 32.35685 + 104, 105, 99, 87, 80, 81, 86, 86, 78, 62, 53, 50, 52, 53, 41, 110, 32.35686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 5, 2, 32.35689 + 1, 4, 13, 32, 54, 70, 65, 74, 79, 78, 76, 80, 82, 80, 79, 80, 32.35690 + 80, 82, 86, 92, 98, 101, 112, 112, 115, 116, 118, 117, 117, 115, 118, 118, 32.35691 + 122, 127, 131, 134, 136, 137, 138, 139, 137, 135, 137, 143, 144, 143, 140, 138, 32.35692 + 140, 144, 143, 139, 140, 146, 142, 142, 138, 131, 129, 133, 135, 134, 134, 129, 32.35693 + 129, 134, 137, 135, 135, 138, 134, 133, 129, 124, 122, 120, 112, 103, 95, 103, 32.35694 + 109, 108, 108, 109, 109, 107, 114, 105, 103, 106, 106, 97, 86, 83, 83, 80, 32.35695 + 71, 54, 43, 39, 38, 35, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35698 + 255, 255, 255, 255, 255, 255, 172, 8, 3, 0, 0, 10, 34, 55, 60, 70, 32.35699 + 77, 78, 77, 80, 82, 83, 77, 78, 80, 81, 82, 87, 92, 95, 105, 106, 32.35700 + 111, 113, 116, 117, 116, 113, 115, 117, 121, 125, 129, 133, 135, 136, 139, 139, 32.35701 + 136, 132, 133, 138, 139, 137, 135, 137, 144, 150, 148, 142, 138, 138, 140, 140, 32.35702 + 136, 130, 128, 131, 133, 131, 130, 131, 135, 139, 140, 136, 136, 139, 118, 123, 32.35703 + 127, 126, 125, 121, 111, 101, 96, 108, 116, 113, 106, 104, 107, 109, 118, 106, 32.35704 + 98, 101, 108, 102, 88, 78, 68, 67, 61, 50, 44, 41, 40, 37, 255, 255, 32.35705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 32.35708 + 10, 1, 0, 0, 15, 30, 56, 64, 68, 69, 69, 72, 77, 82, 79, 78, 32.35709 + 79, 80, 80, 84, 88, 92, 96, 100, 104, 111, 113, 115, 113, 113, 115, 115, 32.35710 + 120, 122, 128, 130, 135, 134, 140, 139, 138, 131, 133, 133, 133, 128, 128, 134, 32.35711 + 142, 147, 145, 139, 133, 131, 134, 135, 132, 126, 125, 128, 129, 129, 131, 134, 32.35712 + 136, 136, 132, 128, 129, 132, 119, 121, 122, 122, 123, 121, 109, 97, 102, 116, 32.35713 + 125, 119, 108, 103, 107, 109, 114, 104, 96, 97, 103, 99, 86, 77, 60, 59, 32.35714 + 55, 48, 47, 49, 46, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35717 + 255, 255, 255, 255, 255, 255, 255, 176, 18, 14, 7, 6, 10, 14, 44, 50, 32.35718 + 60, 67, 67, 69, 75, 78, 80, 81, 80, 80, 81, 83, 85, 89, 92, 96, 32.35719 + 101, 108, 112, 114, 114, 113, 116, 115, 120, 122, 128, 130, 135, 135, 140, 141, 32.35720 + 142, 136, 136, 132, 127, 117, 124, 131, 137, 140, 139, 136, 131, 128, 126, 128, 32.35721 + 126, 121, 120, 124, 125, 125, 130, 134, 132, 127, 122, 121, 124, 127, 135, 130, 32.35722 + 122, 118, 120, 120, 108, 94, 99, 113, 122, 118, 110, 106, 107, 109, 110, 107, 32.35723 + 104, 101, 99, 95, 87, 82, 69, 66, 59, 49, 47, 44, 109, 255, 255, 255, 32.35724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35727 + 255, 27, 25, 22, 19, 17, 27, 34, 48, 64, 71, 72, 73, 76, 79, 80, 32.35728 + 80, 80, 80, 83, 86, 87, 91, 95, 100, 107, 111, 114, 115, 116, 114, 115, 32.35729 + 117, 121, 125, 129, 133, 135, 137, 140, 141, 138, 135, 132, 123, 113, 120, 127, 32.35730 + 133, 134, 133, 133, 131, 127, 125, 127, 126, 123, 123, 127, 129, 129, 131, 133, 32.35731 + 129, 122, 120, 126, 131, 133, 131, 127, 120, 116, 120, 123, 116, 106, 93, 103, 32.35732 + 112, 112, 110, 109, 108, 106, 102, 105, 105, 98, 91, 87, 83, 81, 75, 69, 32.35733 + 59, 49, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 37, 35, 31, 30, 23, 24, 32.35737 + 33, 50, 61, 67, 71, 75, 77, 79, 80, 81, 79, 81, 84, 85, 89, 92, 32.35738 + 96, 102, 106, 110, 113, 114, 112, 113, 115, 118, 122, 127, 131, 133, 134, 137, 32.35739 + 138, 135, 133, 131, 124, 114, 112, 121, 127, 127, 127, 129, 127, 122, 122, 125, 32.35740 + 125, 123, 124, 129, 131, 131, 132, 133, 128, 121, 123, 132, 137, 136, 120, 124, 32.35741 + 126, 124, 124, 124, 121, 116, 100, 105, 111, 113, 116, 116, 113, 105, 98, 102, 32.35742 + 102, 93, 87, 84, 80, 77, 71, 65, 52, 114, 255, 255, 255, 255, 255, 255, 32.35743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35746 + 255, 255, 36, 35, 37, 40, 31, 22, 20, 32, 47, 56, 69, 76, 77, 79, 32.35747 + 81, 80, 78, 80, 83, 84, 85, 88, 91, 96, 102, 107, 111, 112, 110, 110, 32.35748 + 112, 115, 119, 124, 128, 131, 131, 133, 133, 130, 130, 130, 125, 118, 106, 116, 32.35749 + 123, 124, 124, 126, 124, 118, 115, 118, 119, 117, 119, 124, 126, 125, 127, 128, 32.35750 + 122, 116, 120, 129, 132, 128, 125, 136, 143, 138, 127, 119, 113, 110, 116, 117, 32.35751 + 120, 121, 126, 126, 117, 105, 105, 107, 105, 97, 92, 92, 86, 80, 66, 56, 32.35752 + 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 31, 29, 23, 22, 32.35756 + 24, 27, 31, 41, 62, 81, 78, 83, 75, 90, 76, 85, 74, 77, 79, 78, 32.35757 + 82, 91, 97, 99, 104, 110, 116, 112, 110, 113, 120, 126, 128, 128, 126, 130, 32.35758 + 133, 130, 125, 122, 124, 127, 119, 115, 112, 117, 127, 135, 136, 135, 122, 121, 32.35759 + 117, 114, 116, 123, 126, 124, 126, 124, 125, 125, 126, 125, 123, 121, 125, 139, 32.35760 + 145, 132, 115, 113, 121, 128, 118, 122, 124, 123, 123, 120, 112, 102, 108, 108, 32.35761 + 106, 100, 93, 84, 77, 72, 58, 51, 255, 255, 255, 255, 255, 255, 255, 255, 32.35762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35765 + 255, 255, 255, 255, 182, 34, 22, 22, 23, 22, 20, 25, 43, 61, 73, 78, 32.35766 + 72, 80, 64, 74, 70, 79, 71, 72, 78, 88, 97, 101, 106, 111, 116, 112, 32.35767 + 111, 115, 120, 124, 124, 122, 129, 132, 134, 132, 127, 122, 121, 122, 133, 131, 32.35768 + 129, 128, 129, 131, 133, 134, 125, 125, 122, 118, 121, 127, 130, 128, 131, 127, 32.35769 + 125, 122, 121, 121, 122, 121, 125, 133, 139, 132, 124, 122, 122, 120, 115, 117, 32.35770 + 118, 120, 124, 126, 121, 111, 110, 107, 102, 95, 87, 76, 64, 55, 118, 255, 32.35771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 23, 23, 32.35775 + 23, 19, 12, 10, 24, 38, 59, 69, 72, 77, 65, 71, 72, 80, 68, 68, 32.35776 + 73, 83, 92, 96, 102, 106, 112, 111, 114, 117, 120, 121, 118, 116, 127, 128, 32.35777 + 129, 129, 127, 124, 121, 119, 126, 128, 129, 129, 129, 132, 137, 142, 126, 127, 32.35778 + 124, 121, 123, 129, 130, 128, 138, 133, 127, 123, 122, 123, 125, 125, 127, 129, 32.35779 + 129, 129, 132, 130, 122, 112, 117, 119, 119, 119, 126, 128, 121, 112, 115, 108, 32.35780 + 101, 93, 85, 73, 58, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35784 + 255, 255, 255, 255, 255, 255, 255, 25, 24, 23, 17, 10, 13, 19, 39, 55, 32.35785 + 67, 76, 73, 73, 72, 72, 74, 69, 70, 76, 83, 86, 94, 99, 107, 109, 32.35786 + 115, 119, 119, 117, 113, 111, 122, 121, 121, 122, 125, 126, 125, 123, 119, 120, 32.35787 + 122, 124, 128, 133, 139, 143, 127, 128, 126, 124, 126, 131, 131, 128, 132, 129, 32.35788 + 124, 122, 123, 124, 127, 127, 127, 125, 125, 128, 133, 131, 121, 112, 114, 120, 32.35789 + 125, 125, 127, 126, 122, 115, 117, 106, 94, 85, 79, 70, 122, 255, 255, 255, 32.35790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35794 + 177, 26, 28, 21, 15, 12, 29, 40, 52, 57, 66, 67, 70, 63, 75, 70, 32.35795 + 67, 69, 73, 78, 88, 95, 99, 106, 114, 118, 117, 114, 112, 112, 126, 124, 32.35796 + 122, 123, 126, 129, 131, 132, 135, 130, 126, 127, 131, 135, 135, 133, 132, 134, 32.35797 + 133, 130, 132, 136, 136, 131, 127, 125, 123, 122, 123, 123, 123, 122, 126, 126, 32.35798 + 127, 128, 129, 126, 122, 120, 109, 122, 132, 132, 128, 124, 122, 120, 113, 98, 32.35799 + 80, 68, 64, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 28, 22, 20, 42, 44, 32.35804 + 48, 39, 52, 58, 69, 64, 70, 64, 60, 62, 65, 71, 83, 92, 90, 96, 32.35805 + 106, 110, 109, 108, 110, 112, 130, 129, 128, 127, 128, 130, 133, 135, 144, 137, 32.35806 + 130, 130, 135, 138, 135, 131, 134, 136, 136, 134, 135, 139, 137, 132, 129, 127, 32.35807 + 125, 124, 123, 121, 120, 117, 123, 125, 127, 127, 123, 117, 119, 125, 118, 130, 32.35808 + 137, 130, 119, 110, 105, 102, 104, 89, 69, 101, 210, 255, 255, 255, 255, 255, 32.35809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35813 + 255, 255, 255, 255, 182, 41, 59, 56, 57, 33, 42, 43, 61, 57, 64, 59, 32.35814 + 56, 58, 63, 66, 73, 80, 78, 88, 98, 102, 101, 103, 109, 116, 125, 129, 32.35815 + 132, 133, 132, 132, 134, 137, 138, 134, 131, 130, 132, 135, 135, 134, 131, 134, 32.35816 + 134, 133, 134, 137, 134, 128, 130, 127, 123, 121, 120, 119, 118, 117, 121, 123, 32.35817 + 127, 128, 121, 113, 115, 123, 131, 134, 130, 119, 109, 99, 91, 83, 90, 78, 32.35818 + 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 62, 32.35823 + 66, 35, 38, 28, 45, 41, 65, 58, 56, 58, 60, 59, 62, 67, 73, 80, 32.35824 + 91, 95, 95, 98, 107, 116, 112, 121, 130, 134, 133, 132, 134, 137, 132, 132, 32.35825 + 130, 126, 122, 121, 123, 126, 124, 127, 128, 127, 128, 130, 127, 121, 119, 115, 32.35826 + 110, 108, 109, 112, 113, 113, 118, 120, 125, 129, 121, 110, 111, 118, 124, 121, 32.35827 + 112, 106, 102, 100, 93, 85, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35832 + 255, 255, 255, 255, 255, 255, 255, 255, 198, 73, 31, 27, 41, 28, 50, 55, 32.35833 + 58, 59, 61, 66, 69, 67, 72, 72, 77, 87, 96, 101, 106, 110, 117, 119, 32.35834 + 123, 128, 130, 129, 124, 120, 131, 131, 132, 130, 126, 120, 114, 111, 121, 121, 32.35835 + 125, 129, 127, 120, 117, 119, 116, 112, 111, 113, 112, 109, 108, 111, 118, 120, 32.35836 + 120, 117, 108, 102, 102, 104, 110, 102, 89, 83, 86, 87, 73, 123, 255, 255, 32.35837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35842 + 255, 255, 255, 255, 255, 39, 31, 36, 40, 44, 51, 58, 60, 55, 70, 71, 32.35843 + 75, 78, 86, 93, 100, 101, 105, 109, 118, 123, 126, 123, 120, 116, 120, 121, 32.35844 + 124, 122, 120, 116, 117, 116, 112, 110, 115, 121, 124, 121, 121, 123, 113, 108, 32.35845 + 106, 107, 108, 107, 109, 113, 109, 112, 116, 112, 104, 97, 95, 96, 99, 96, 32.35846 + 87, 79, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35853 + 255, 255, 255, 255, 210, 116, 120, 121, 124, 119, 116, 112, 118, 120, 117, 111, 32.35854 + 112, 115, 121, 117, 117, 117, 111, 108, 108, 111, 113, 109, 109, 112, 117, 119, 32.35855 + 119, 113, 103, 94, 89, 88, 89, 91, 143, 255, 255, 255, 255, 255, 255, 255, 32.35856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35863 + 255, 255, 206, 106, 110, 117, 117, 110, 106, 110, 114, 113, 110, 109, 111, 110, 32.35864 + 114, 118, 118, 110, 103, 102, 118, 117, 116, 109, 100, 147, 255, 255, 255, 255, 32.35865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35867 + 255, 255, 255, 255, 255, 255, 255, 255 }; 32.35868 +/* Define image 'enemy16' of size 139x185x1x3 and type 'const unsigned char' */ 32.35869 +const unsigned char data_enemy16[] = { 32.35870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 250, 248, 250, 253, 32.35874 + 255, 250, 250, 249, 249, 250, 252, 255, 255, 255, 255, 255, 255, 254, 251, 247, 32.35875 + 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 32.35882 + 250, 248, 241, 236, 241, 241, 241, 239, 236, 236, 240, 243, 239, 237, 235, 235, 32.35883 + 237, 241, 246, 250, 246, 241, 239, 244, 248, 242, 227, 213, 206, 199, 186, 172, 32.35884 + 168, 179, 200, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35890 + 255, 255, 255, 255, 255, 255, 255, 255, 248, 230, 231, 234, 230, 221, 212, 206, 32.35891 + 206, 204, 198, 193, 190, 192, 195, 197, 195, 192, 191, 193, 199, 206, 210, 222, 32.35892 + 214, 211, 220, 230, 223, 198, 174, 148, 151, 152, 144, 135, 133, 140, 148, 152, 32.35893 + 158, 177, 201, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 32.35899 + 199, 187, 189, 185, 178, 172, 165, 158, 152, 148, 135, 139, 144, 148, 153, 153, 32.35900 + 143, 131, 132, 141, 145, 139, 133, 131, 129, 124, 142, 137, 134, 135, 140, 140, 32.35901 + 134, 125, 107, 108, 112, 121, 127, 127, 120, 112, 112, 114, 116, 130, 159, 187, 32.35902 + 195, 187, 186, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35907 + 255, 255, 255, 255, 255, 255, 255, 251, 228, 208, 186, 170, 159, 163, 159, 154, 32.35908 + 149, 146, 141, 136, 132, 123, 126, 128, 129, 132, 134, 129, 121, 120, 125, 126, 32.35909 + 124, 124, 125, 121, 114, 113, 109, 106, 109, 113, 112, 107, 101, 97, 98, 103, 32.35910 + 113, 124, 126, 121, 116, 102, 101, 101, 106, 123, 142, 153, 155, 146, 151, 168, 32.35911 + 199, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35916 + 249, 228, 213, 196, 179, 165, 156, 152, 144, 141, 136, 133, 129, 123, 119, 116, 32.35917 + 113, 115, 114, 111, 111, 114, 114, 111, 109, 108, 107, 106, 109, 111, 106, 99, 32.35918 + 93, 90, 89, 90, 95, 95, 90, 83, 83, 85, 92, 103, 114, 121, 122, 121, 32.35919 + 102, 96, 93, 94, 95, 103, 116, 130, 137, 130, 132, 154, 185, 213, 234, 246, 32.35920 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 225, 203, 195, 183, 170, 160, 32.35925 + 156, 156, 156, 146, 141, 135, 129, 123, 118, 111, 107, 104, 107, 106, 101, 98, 32.35926 + 100, 101, 100, 102, 100, 97, 95, 95, 95, 92, 88, 90, 88, 88, 88, 90, 32.35927 + 90, 83, 78, 71, 75, 82, 92, 105, 114, 120, 121, 112, 103, 96, 96, 93, 32.35928 + 92, 105, 121, 128, 117, 111, 123, 145, 177, 207, 228, 255, 244, 215, 188, 207, 32.35929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35933 + 255, 255, 255, 206, 207, 207, 183, 177, 166, 155, 147, 144, 143, 144, 143, 139, 32.35934 + 132, 125, 118, 111, 104, 101, 95, 100, 101, 96, 93, 93, 92, 89, 93, 92, 32.35935 + 91, 88, 84, 82, 84, 87, 89, 88, 88, 87, 87, 84, 76, 70, 68, 69, 32.35936 + 74, 82, 94, 106, 113, 119, 121, 109, 100, 99, 97, 95, 101, 112, 113, 106, 32.35937 + 101, 104, 114, 135, 165, 188, 231, 242, 238, 212, 186, 172, 164, 160, 192, 255, 32.35938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 191, 190, 32.35942 + 186, 165, 161, 151, 142, 134, 128, 127, 125, 124, 120, 115, 109, 105, 100, 94, 32.35943 + 91, 90, 95, 98, 97, 97, 97, 93, 87, 83, 82, 82, 81, 77, 74, 80, 32.35944 + 88, 89, 87, 88, 87, 86, 80, 73, 68, 68, 68, 70, 76, 85, 97, 108, 32.35945 + 115, 126, 115, 104, 98, 98, 98, 98, 101, 99, 96, 94, 90, 89, 98, 118, 32.35946 + 140, 183, 191, 213, 231, 208, 163, 146, 159, 143, 185, 255, 255, 255, 255, 255, 32.35947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35950 + 255, 255, 255, 255, 255, 255, 255, 178, 180, 177, 172, 166, 148, 145, 136, 128, 32.35951 + 122, 117, 114, 114, 109, 105, 100, 96, 92, 89, 85, 82, 87, 91, 95, 98, 32.35952 + 103, 106, 101, 93, 87, 81, 78, 79, 78, 76, 81, 88, 91, 91, 93, 91, 32.35953 + 90, 84, 78, 74, 69, 68, 69, 72, 79, 92, 105, 113, 120, 115, 104, 94, 32.35954 + 91, 95, 98, 98, 99, 94, 89, 83, 78, 79, 93, 107, 117, 151, 175, 179, 32.35955 + 186, 188, 163, 127, 139, 125, 138, 208, 255, 255, 255, 255, 255, 255, 255, 255, 32.35956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35959 + 255, 176, 175, 175, 171, 163, 156, 145, 140, 131, 122, 113, 107, 105, 102, 104, 32.35960 + 101, 96, 92, 89, 85, 81, 76, 79, 82, 85, 91, 99, 105, 101, 93, 97, 32.35961 + 86, 77, 79, 81, 79, 81, 85, 90, 92, 94, 95, 93, 87, 81, 77, 70, 32.35962 + 68, 68, 70, 77, 90, 103, 113, 107, 109, 99, 83, 79, 89, 97, 96, 105, 32.35963 + 97, 89, 82, 78, 77, 86, 96, 104, 108, 130, 162, 178, 168, 151, 141, 127, 32.35964 + 120, 122, 144, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 192, 189, 178, 162, 147, 32.35968 + 138, 133, 124, 120, 113, 106, 100, 97, 96, 95, 93, 94, 94, 93, 91, 87, 32.35969 + 83, 80, 77, 76, 76, 79, 83, 86, 87, 87, 84, 83, 83, 81, 79, 76, 32.35970 + 73, 72, 85, 85, 83, 79, 76, 78, 83, 88, 69, 60, 60, 69, 75, 78, 32.35971 + 91, 107, 118, 113, 103, 93, 88, 86, 88, 90, 100, 104, 98, 85, 73, 72, 32.35972 + 72, 71, 89, 92, 97, 108, 129, 149, 154, 148, 132, 121, 112, 112, 128, 161, 32.35973 + 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35976 + 255, 255, 255, 255, 230, 187, 182, 175, 161, 147, 133, 122, 118, 108, 108, 106, 32.35977 + 101, 98, 92, 89, 88, 89, 89, 90, 90, 89, 89, 88, 87, 83, 81, 79, 32.35978 + 79, 81, 83, 84, 83, 83, 83, 81, 79, 78, 76, 74, 74, 72, 78, 83, 32.35979 + 85, 83, 79, 76, 74, 73, 65, 64, 70, 73, 74, 83, 96, 112, 113, 109, 32.35980 + 99, 88, 82, 85, 89, 98, 103, 99, 88, 77, 74, 71, 69, 74, 81, 87, 32.35981 + 93, 106, 123, 133, 136, 135, 125, 113, 107, 114, 136, 169, 255, 255, 255, 255, 32.35982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 173, 32.35985 + 170, 163, 151, 138, 126, 116, 107, 102, 94, 96, 97, 97, 94, 90, 85, 81, 32.35986 + 82, 81, 81, 81, 82, 85, 88, 90, 89, 86, 83, 81, 81, 81, 80, 79, 32.35987 + 82, 82, 81, 80, 78, 77, 76, 76, 71, 77, 86, 90, 89, 83, 77, 73, 32.35988 + 74, 70, 67, 72, 73, 70, 77, 87, 104, 112, 115, 106, 90, 81, 81, 88, 32.35989 + 94, 99, 99, 92, 82, 77, 70, 66, 66, 74, 82, 83, 86, 99, 114, 123, 32.35990 + 123, 114, 106, 99, 102, 117, 141, 164, 255, 255, 255, 255, 255, 255, 255, 255, 32.35991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.35993 + 255, 255, 255, 255, 255, 255, 255, 255, 228, 166, 161, 147, 137, 124, 114, 107, 32.35994 + 103, 98, 95, 88, 88, 91, 93, 92, 88, 85, 82, 78, 76, 74, 72, 74, 32.35995 + 77, 81, 84, 90, 89, 89, 89, 88, 85, 81, 78, 80, 81, 82, 83, 83, 32.35996 + 81, 79, 78, 79, 82, 85, 87, 88, 87, 86, 86, 73, 71, 71, 74, 73, 32.35997 + 72, 75, 83, 93, 104, 113, 110, 98, 85, 82, 83, 90, 95, 98, 96, 88, 32.35998 + 80, 70, 65, 64, 71, 76, 77, 79, 87, 98, 107, 110, 105, 99, 96, 96, 32.35999 + 106, 127, 148, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36002 + 255, 255, 224, 153, 144, 139, 123, 115, 103, 95, 92, 90, 88, 85, 83, 84, 32.36003 + 84, 85, 85, 85, 84, 84, 78, 76, 72, 68, 68, 69, 72, 75, 84, 86, 32.36004 + 89, 93, 93, 90, 83, 77, 79, 81, 84, 86, 87, 85, 83, 81, 85, 85, 32.36005 + 86, 88, 91, 93, 95, 95, 79, 77, 77, 78, 75, 73, 74, 78, 86, 94, 32.36006 + 103, 109, 105, 95, 85, 79, 87, 91, 95, 98, 93, 83, 72, 67, 62, 62, 32.36007 + 65, 70, 74, 77, 83, 86, 109, 105, 100, 94, 89, 94, 111, 129, 151, 255, 32.36008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 138, 126, 116, 32.36011 + 111, 104, 99, 91, 83, 79, 77, 75, 74, 76, 75, 75, 75, 75, 76, 77, 32.36012 + 78, 79, 76, 73, 70, 68, 68, 68, 69, 77, 80, 86, 92, 94, 91, 84, 32.36013 + 79, 79, 81, 83, 85, 86, 86, 86, 86, 84, 86, 89, 93, 97, 97, 94, 32.36014 + 91, 85, 85, 83, 80, 75, 72, 72, 73, 82, 86, 93, 101, 105, 102, 89, 32.36015 + 79, 85, 87, 91, 98, 95, 86, 75, 72, 64, 60, 60, 67, 72, 75, 76, 32.36016 + 77, 97, 96, 95, 91, 86, 86, 100, 115, 137, 147, 255, 255, 255, 255, 255, 32.36017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36019 + 255, 255, 255, 255, 255, 255, 140, 129, 116, 106, 98, 95, 92, 92, 87, 81, 32.36020 + 75, 70, 70, 70, 70, 70, 69, 69, 69, 69, 69, 69, 71, 71, 71, 71, 32.36021 + 70, 68, 67, 66, 70, 72, 77, 82, 85, 85, 81, 77, 82, 80, 78, 77, 32.36022 + 79, 83, 89, 92, 92, 93, 95, 98, 100, 99, 94, 89, 87, 87, 84, 80, 32.36023 + 75, 74, 72, 73, 85, 84, 84, 92, 99, 98, 92, 86, 84, 84, 88, 96, 32.36024 + 96, 88, 79, 77, 68, 62, 61, 67, 72, 74, 76, 80, 81, 85, 90, 92, 32.36025 + 86, 84, 94, 108, 122, 134, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36028 + 217, 128, 116, 105, 97, 92, 91, 87, 88, 88, 83, 76, 72, 71, 73, 66, 32.36029 + 66, 66, 68, 67, 67, 65, 64, 61, 63, 65, 67, 68, 66, 65, 63, 67, 32.36030 + 68, 70, 73, 77, 79, 78, 76, 85, 80, 74, 70, 73, 80, 90, 96, 104, 32.36031 + 100, 97, 97, 98, 98, 95, 92, 82, 84, 82, 78, 74, 75, 77, 77, 88, 32.36032 + 83, 82, 85, 91, 94, 94, 92, 84, 82, 85, 95, 95, 88, 81, 81, 67, 32.36033 + 61, 60, 64, 66, 66, 74, 83, 79, 86, 95, 96, 87, 80, 84, 95, 118, 32.36034 + 130, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 133, 115, 99, 92, 90, 32.36037 + 90, 89, 86, 85, 82, 77, 72, 68, 64, 63, 60, 60, 60, 59, 59, 59, 32.36038 + 58, 58, 54, 54, 54, 55, 55, 56, 56, 56, 63, 64, 65, 66, 67, 68, 32.36039 + 69, 69, 72, 74, 74, 71, 68, 68, 74, 80, 107, 110, 110, 104, 95, 92, 32.36040 + 98, 104, 87, 86, 82, 80, 78, 77, 78, 78, 81, 81, 82, 83, 85, 86, 32.36041 + 85, 85, 81, 75, 73, 77, 88, 94, 89, 83, 73, 70, 67, 64, 64, 65, 32.36042 + 69, 72, 83, 83, 88, 89, 85, 83, 88, 96, 112, 121, 130, 255, 255, 255, 32.36043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36045 + 255, 255, 255, 255, 223, 147, 135, 115, 102, 94, 92, 92, 90, 84, 83, 78, 32.36046 + 74, 70, 65, 62, 60, 57, 57, 57, 56, 56, 55, 55, 54, 54, 55, 55, 32.36047 + 56, 57, 57, 58, 58, 61, 61, 62, 64, 65, 67, 68, 68, 71, 74, 75, 32.36048 + 73, 69, 69, 73, 78, 92, 103, 113, 116, 111, 102, 95, 91, 88, 87, 83, 32.36049 + 80, 78, 77, 77, 77, 78, 82, 85, 85, 81, 78, 78, 80, 81, 76, 73, 32.36050 + 75, 83, 88, 89, 86, 77, 72, 66, 60, 59, 59, 63, 66, 78, 79, 82, 32.36051 + 85, 83, 81, 85, 93, 108, 117, 125, 170, 255, 255, 255, 255, 255, 255, 255, 32.36052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 32.36054 + 143, 131, 114, 101, 96, 93, 92, 91, 79, 78, 75, 72, 67, 64, 60, 59, 32.36055 + 58, 58, 57, 56, 55, 54, 53, 53, 53, 54, 54, 55, 56, 57, 57, 58, 32.36056 + 60, 60, 62, 63, 65, 67, 68, 69, 72, 75, 77, 75, 72, 71, 73, 76, 32.36057 + 85, 95, 110, 119, 119, 109, 97, 88, 87, 86, 81, 78, 75, 74, 74, 74, 32.36058 + 74, 81, 87, 86, 79, 73, 72, 74, 77, 76, 72, 73, 76, 82, 85, 88, 32.36059 + 83, 77, 69, 60, 57, 55, 58, 61, 69, 70, 74, 79, 80, 78, 84, 91, 32.36060 + 104, 113, 121, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36062 + 255, 255, 255, 255, 255, 255, 255, 255, 222, 151, 147, 134, 124, 109, 98, 93, 32.36063 + 90, 89, 87, 76, 75, 73, 70, 67, 65, 63, 61, 63, 63, 62, 61, 60, 32.36064 + 59, 58, 58, 55, 55, 56, 57, 58, 58, 59, 59, 62, 63, 64, 66, 68, 32.36065 + 70, 71, 72, 73, 76, 78, 78, 76, 74, 74, 75, 87, 91, 97, 107, 110, 32.36066 + 108, 100, 93, 86, 84, 79, 76, 72, 70, 70, 70, 69, 74, 80, 81, 77, 32.36067 + 73, 70, 70, 70, 70, 71, 70, 71, 74, 79, 82, 85, 80, 73, 66, 61, 32.36068 + 58, 58, 58, 59, 60, 66, 73, 77, 77, 82, 88, 102, 111, 118, 121, 255, 32.36069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36071 + 255, 255, 255, 151, 142, 136, 121, 111, 100, 91, 87, 86, 83, 81, 76, 75, 32.36072 + 74, 72, 72, 70, 69, 68, 70, 70, 69, 68, 67, 66, 66, 65, 59, 59, 32.36073 + 59, 60, 60, 61, 61, 61, 61, 61, 63, 64, 66, 68, 69, 70, 74, 77, 32.36074 + 79, 80, 78, 77, 76, 75, 87, 86, 86, 92, 99, 102, 100, 97, 87, 85, 32.36075 + 80, 77, 73, 71, 71, 71, 67, 67, 69, 73, 77, 77, 73, 69, 61, 64, 32.36076 + 67, 69, 68, 69, 72, 74, 78, 76, 75, 71, 67, 62, 59, 57, 55, 55, 32.36077 + 60, 68, 75, 76, 81, 89, 104, 112, 118, 120, 166, 255, 255, 255, 255, 255, 32.36078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 140, 130, 32.36080 + 121, 106, 99, 89, 83, 82, 80, 77, 74, 76, 76, 76, 76, 77, 76, 78, 32.36081 + 77, 76, 75, 75, 75, 75, 74, 74, 74, 68, 68, 67, 67, 67, 66, 66, 32.36082 + 66, 61, 61, 62, 63, 64, 65, 66, 67, 73, 74, 76, 78, 78, 77, 77, 32.36083 + 76, 78, 78, 82, 87, 93, 96, 94, 90, 89, 87, 82, 80, 77, 75, 75, 32.36084 + 75, 69, 64, 61, 65, 72, 75, 71, 66, 59, 61, 63, 65, 66, 66, 68, 32.36085 + 69, 71, 71, 73, 72, 70, 64, 60, 57, 55, 54, 57, 66, 73, 77, 84, 32.36086 + 90, 104, 112, 117, 118, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36088 + 255, 255, 255, 255, 255, 255, 221, 148, 139, 129, 115, 108, 93, 86, 80, 76, 32.36089 + 75, 76, 72, 71, 75, 75, 77, 79, 81, 83, 84, 85, 79, 79, 80, 80, 32.36090 + 80, 80, 81, 81, 75, 74, 73, 72, 71, 70, 69, 68, 64, 64, 65, 65, 32.36091 + 65, 66, 66, 66, 70, 70, 71, 73, 75, 76, 76, 75, 74, 76, 79, 84, 32.36092 + 88, 89, 89, 87, 87, 86, 81, 79, 77, 75, 76, 76, 75, 70, 64, 63, 32.36093 + 65, 67, 67, 66, 60, 59, 60, 61, 63, 66, 67, 68, 71, 71, 73, 73, 32.36094 + 71, 67, 64, 61, 57, 54, 57, 65, 73, 79, 87, 94, 106, 112, 117, 116, 32.36095 + 116, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36097 + 223, 151, 143, 132, 119, 107, 98, 85, 81, 75, 74, 74, 74, 72, 68, 74, 32.36098 + 76, 77, 80, 83, 85, 87, 87, 79, 79, 80, 80, 81, 82, 82, 83, 80, 32.36099 + 80, 78, 77, 75, 73, 72, 71, 70, 70, 70, 70, 70, 70, 70, 70, 68, 32.36100 + 67, 67, 69, 72, 74, 74, 74, 76, 77, 77, 80, 81, 84, 86, 89, 83, 32.36101 + 82, 78, 76, 74, 73, 73, 74, 80, 76, 70, 63, 59, 59, 63, 65, 64, 32.36102 + 61, 59, 58, 61, 65, 69, 70, 76, 75, 75, 74, 73, 69, 68, 67, 60, 32.36103 + 56, 56, 65, 73, 81, 89, 96, 105, 111, 115, 114, 114, 116, 255, 255, 255, 32.36104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 164, 153, 134, 123, 116, 32.36106 + 109, 102, 81, 77, 72, 70, 70, 71, 70, 71, 72, 74, 75, 76, 77, 80, 32.36107 + 84, 87, 86, 83, 81, 81, 86, 89, 89, 89, 85, 85, 84, 83, 83, 82, 32.36108 + 81, 81, 80, 79, 80, 81, 80, 79, 78, 76, 77, 75, 73, 70, 69, 68, 32.36109 + 68, 68, 70, 71, 73, 76, 78, 81, 82, 84, 78, 78, 79, 77, 75, 73, 32.36110 + 70, 69, 73, 71, 69, 67, 65, 65, 66, 66, 68, 68, 68, 68, 69, 70, 32.36111 + 72, 73, 78, 80, 83, 83, 81, 78, 76, 76, 69, 67, 65, 63, 68, 78, 32.36112 + 93, 105, 109, 112, 116, 117, 116, 112, 158, 255, 255, 255, 255, 255, 255, 255, 32.36113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36114 + 255, 255, 255, 255, 232, 172, 164, 148, 126, 113, 105, 97, 88, 78, 75, 71, 32.36115 + 70, 70, 70, 70, 70, 70, 71, 73, 74, 74, 76, 79, 83, 83, 81, 81, 32.36116 + 84, 88, 90, 90, 90, 87, 87, 87, 86, 86, 85, 85, 84, 82, 83, 84, 32.36117 + 85, 85, 82, 81, 80, 78, 77, 74, 71, 69, 68, 68, 68, 72, 73, 75, 32.36118 + 77, 80, 82, 84, 85, 83, 84, 82, 82, 79, 75, 73, 71, 74, 73, 72, 32.36119 + 70, 69, 69, 69, 69, 70, 69, 70, 71, 71, 74, 75, 75, 83, 86, 88, 32.36120 + 89, 87, 85, 84, 84, 79, 74, 68, 67, 73, 84, 95, 102, 110, 112, 114, 32.36121 + 116, 114, 111, 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 186, 32.36123 + 166, 152, 129, 107, 93, 86, 76, 67, 69, 67, 66, 66, 68, 67, 67, 64, 32.36124 + 65, 66, 69, 69, 70, 71, 73, 75, 79, 80, 83, 86, 90, 93, 92, 92, 32.36125 + 92, 92, 92, 91, 91, 91, 91, 91, 89, 90, 91, 89, 89, 88, 87, 86, 32.36126 + 84, 83, 81, 78, 76, 75, 74, 73, 77, 78, 80, 82, 84, 87, 88, 89, 32.36127 + 92, 92, 90, 89, 86, 84, 80, 78, 76, 76, 76, 75, 75, 74, 74, 74, 32.36128 + 76, 76, 78, 78, 79, 80, 83, 84, 91, 93, 96, 97, 96, 94, 94, 95, 32.36129 + 92, 82, 73, 72, 79, 92, 99, 105, 113, 114, 114, 114, 112, 112, 114, 162, 32.36130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36131 + 255, 255, 255, 255, 255, 255, 255, 255, 184, 183, 178, 147, 131, 109, 92, 82, 32.36132 + 73, 63, 54, 60, 60, 60, 62, 62, 62, 60, 58, 60, 62, 64, 66, 66, 32.36133 + 67, 69, 71, 79, 82, 86, 93, 97, 99, 99, 99, 99, 99, 99, 99, 99, 32.36134 + 99, 100, 100, 97, 98, 98, 98, 98, 97, 97, 97, 97, 96, 95, 93, 92, 32.36135 + 91, 91, 90, 92, 93, 94, 96, 99, 101, 102, 103, 106, 106, 106, 103, 100, 32.36136 + 97, 93, 91, 85, 86, 86, 86, 86, 86, 86, 86, 90, 90, 91, 91, 93, 32.36137 + 94, 96, 97, 105, 108, 110, 111, 111, 110, 111, 112, 106, 99, 88, 83, 84, 32.36138 + 93, 104, 110, 117, 117, 116, 114, 111, 111, 114, 117, 161, 255, 255, 255, 255, 32.36139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36140 + 255, 255, 172, 174, 168, 161, 132, 118, 101, 90, 83, 73, 61, 53, 57, 57, 32.36141 + 59, 60, 61, 62, 58, 56, 59, 61, 65, 65, 66, 68, 72, 74, 85, 89, 32.36142 + 97, 104, 109, 111, 112, 112, 113, 113, 113, 114, 114, 115, 115, 116, 112, 112, 32.36143 + 112, 114, 114, 114, 115, 115, 115, 115, 116, 116, 116, 116, 115, 115, 117, 118, 32.36144 + 119, 121, 123, 125, 126, 127, 128, 128, 126, 124, 121, 118, 113, 111, 104, 104, 32.36145 + 105, 105, 106, 107, 107, 108, 110, 110, 109, 110, 112, 112, 114, 114, 124, 127, 32.36146 + 129, 130, 129, 129, 131, 133, 128, 124, 115, 104, 95, 95, 104, 113, 121, 121, 32.36147 + 121, 117, 113, 113, 113, 115, 114, 161, 255, 255, 255, 255, 255, 255, 255, 255, 32.36148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 163, 158, 149, 32.36149 + 140, 121, 109, 99, 91, 84, 73, 61, 54, 62, 60, 61, 62, 65, 64, 62, 32.36150 + 60, 60, 61, 65, 67, 69, 73, 79, 83, 98, 104, 112, 120, 124, 129, 130, 32.36151 + 133, 130, 131, 132, 133, 134, 135, 135, 136, 135, 135, 135, 136, 138, 140, 143, 32.36152 + 144, 144, 144, 145, 146, 146, 146, 145, 145, 146, 147, 148, 149, 151, 153, 154, 32.36153 + 155, 152, 152, 152, 150, 148, 145, 142, 138, 132, 131, 131, 131, 132, 135, 137, 32.36154 + 139, 136, 136, 135, 136, 135, 136, 136, 136, 149, 151, 152, 153, 152, 153, 154, 32.36155 + 156, 159, 159, 151, 134, 115, 103, 103, 107, 121, 122, 124, 122, 118, 116, 115, 32.36156 + 115, 114, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36157 + 255, 255, 255, 255, 255, 255, 169, 161, 152, 144, 131, 120, 113, 104, 97, 92, 32.36158 + 87, 73, 66, 63, 65, 64, 64, 65, 65, 66, 64, 62, 63, 65, 67, 68, 32.36159 + 73, 80, 89, 94, 113, 120, 129, 135, 141, 146, 151, 154, 152, 153, 154, 155, 32.36160 + 157, 158, 159, 159, 161, 161, 162, 163, 167, 170, 173, 176, 179, 180, 180, 180, 32.36161 + 180, 178, 176, 175, 172, 173, 174, 175, 177, 179, 180, 180, 177, 178, 177, 177, 32.36162 + 174, 170, 168, 166, 163, 161, 160, 159, 161, 165, 169, 172, 168, 169, 167, 166, 32.36163 + 164, 165, 165, 164, 173, 174, 175, 175, 174, 174, 176, 178, 180, 182, 180, 166, 32.36164 + 144, 123, 112, 105, 117, 121, 126, 127, 125, 122, 118, 117, 115, 115, 255, 255, 32.36165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36166 + 227, 167, 156, 147, 135, 121, 110, 111, 105, 99, 97, 92, 82, 77, 81, 67, 32.36167 + 65, 63, 64, 64, 65, 63, 62, 65, 67, 69, 71, 76, 85, 96, 102, 123, 32.36168 + 130, 138, 146, 151, 157, 163, 167, 166, 166, 168, 169, 171, 172, 173, 174, 180, 32.36169 + 179, 181, 182, 187, 190, 193, 197, 205, 206, 205, 204, 202, 200, 197, 195, 186, 32.36170 + 186, 187, 189, 190, 192, 193, 193, 193, 193, 193, 191, 190, 188, 185, 184, 183, 32.36171 + 181, 178, 177, 180, 184, 190, 194, 192, 192, 190, 189, 187, 187, 186, 186, 188, 32.36172 + 189, 189, 189, 187, 188, 190, 192, 191, 194, 193, 187, 169, 144, 120, 107, 114, 32.36173 + 118, 126, 130, 130, 126, 123, 121, 116, 116, 156, 255, 255, 255, 255, 255, 255, 32.36174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 177, 169, 155, 138, 125, 32.36175 + 121, 119, 93, 95, 97, 97, 91, 83, 75, 70, 64, 66, 68, 68, 68, 67, 32.36176 + 69, 70, 70, 74, 77, 83, 92, 105, 121, 132, 148, 155, 168, 179, 187, 192, 32.36177 + 194, 196, 202, 201, 198, 197, 197, 199, 202, 203, 207, 208, 210, 214, 218, 223, 32.36178 + 227, 229, 239, 239, 237, 236, 234, 232, 231, 230, 225, 225, 225, 225, 225, 225, 32.36179 + 224, 224, 219, 220, 222, 222, 222, 220, 219, 217, 211, 210, 208, 208, 210, 214, 32.36180 + 218, 221, 227, 226, 226, 227, 226, 224, 223, 221, 215, 214, 212, 211, 213, 215, 32.36181 + 218, 219, 223, 217, 211, 207, 205, 192, 159, 128, 112, 117, 121, 127, 131, 132, 32.36182 + 133, 132, 122, 116, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36183 + 255, 255, 255, 255, 255, 178, 175, 165, 153, 138, 125, 116, 113, 90, 90, 90, 32.36184 + 88, 84, 79, 74, 71, 65, 67, 67, 67, 66, 67, 71, 73, 77, 83, 87, 32.36185 + 96, 105, 121, 138, 149, 166, 173, 186, 195, 202, 207, 211, 213, 216, 213, 211, 32.36186 + 209, 209, 212, 215, 217, 218, 220, 221, 224, 229, 232, 236, 237, 245, 245, 245, 32.36187 + 246, 244, 243, 242, 241, 236, 236, 236, 236, 236, 236, 236, 236, 230, 232, 233, 32.36188 + 235, 234, 233, 230, 229, 226, 225, 224, 224, 225, 229, 233, 235, 239, 238, 239, 32.36189 + 238, 237, 237, 235, 234, 228, 227, 224, 223, 223, 223, 226, 227, 230, 224, 219, 32.36190 + 216, 216, 207, 181, 158, 115, 113, 115, 124, 137, 139, 133, 123, 122, 114, 106, 32.36191 + 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 32.36192 + 179, 170, 158, 147, 136, 125, 113, 106, 86, 86, 84, 80, 77, 73, 71, 69, 32.36193 + 65, 66, 66, 66, 67, 69, 74, 77, 91, 96, 105, 113, 126, 142, 160, 174, 32.36194 + 190, 198, 210, 218, 224, 227, 229, 230, 231, 229, 225, 221, 222, 227, 231, 233, 32.36195 + 235, 235, 237, 238, 242, 244, 247, 248, 253, 252, 254, 253, 254, 254, 254, 253, 32.36196 + 249, 249, 249, 249, 249, 249, 249, 249, 244, 245, 246, 247, 246, 245, 243, 242, 32.36197 + 243, 242, 241, 241, 242, 245, 248, 250, 249, 249, 251, 250, 249, 249, 248, 247, 32.36198 + 245, 243, 240, 238, 235, 236, 236, 237, 239, 237, 231, 229, 227, 220, 204, 191, 32.36199 + 137, 121, 110, 116, 134, 144, 138, 126, 124, 116, 107, 99, 145, 255, 255, 255, 32.36200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 187, 180, 167, 149, 137, 130, 32.36201 + 122, 112, 102, 87, 85, 81, 78, 73, 70, 67, 66, 60, 63, 63, 64, 68, 32.36202 + 73, 79, 84, 104, 110, 119, 131, 144, 162, 182, 194, 210, 216, 226, 234, 239, 32.36203 + 241, 243, 244, 242, 238, 233, 231, 231, 235, 241, 246, 248, 248, 248, 249, 251, 32.36204 + 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 253, 253, 253, 253, 32.36205 + 254, 254, 254, 252, 253, 253, 254, 253, 252, 251, 250, 251, 251, 250, 250, 251, 32.36206 + 253, 255, 255, 254, 254, 255, 255, 255, 253, 252, 251, 254, 253, 251, 249, 246, 32.36207 + 247, 246, 247, 249, 247, 244, 239, 235, 227, 217, 207, 175, 147, 117, 106, 120, 32.36208 + 139, 143, 144, 132, 121, 112, 103, 95, 217, 255, 255, 255, 255, 255, 255, 255, 32.36209 + 255, 255, 255, 255, 183, 182, 179, 160, 140, 126, 122, 119, 109, 101, 89, 88, 32.36210 + 85, 81, 74, 68, 62, 59, 56, 57, 61, 66, 71, 80, 88, 94, 113, 119, 32.36211 + 130, 142, 156, 174, 192, 204, 221, 227, 237, 244, 248, 249, 249, 250, 246, 243, 32.36212 + 240, 236, 237, 243, 247, 250, 254, 254, 254, 252, 253, 254, 255, 255, 255, 255, 32.36213 + 255, 255, 255, 255, 254, 254, 252, 253, 253, 253, 254, 254, 255, 255, 255, 255, 32.36214 + 255, 255, 255, 254, 254, 253, 254, 254, 253, 253, 253, 255, 255, 255, 253, 255, 32.36215 + 255, 255, 255, 254, 253, 254, 255, 255, 254, 254, 252, 253, 253, 253, 253, 253, 32.36216 + 251, 250, 244, 233, 222, 218, 203, 174, 137, 112, 111, 123, 139, 150, 142, 131, 32.36217 + 117, 108, 98, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 176, 32.36218 + 177, 171, 153, 131, 117, 114, 111, 105, 96, 91, 88, 85, 79, 73, 67, 60, 32.36219 + 56, 53, 57, 62, 69, 75, 85, 94, 100, 114, 120, 133, 145, 161, 178, 196, 32.36220 + 210, 227, 233, 243, 249, 252, 253, 255, 255, 249, 246, 244, 242, 243, 247, 251, 32.36221 + 254, 253, 253, 253, 253, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36222 + 254, 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 255, 255, 255, 255, 254, 32.36224 + 254, 254, 254, 254, 254, 255, 255, 255, 255, 253, 252, 253, 255, 250, 240, 231, 32.36225 + 228, 212, 195, 166, 134, 113, 112, 125, 139, 145, 136, 126, 117, 104, 92, 142, 32.36226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 171, 173, 158, 142, 124, 112, 32.36227 + 109, 106, 97, 89, 88, 86, 80, 73, 67, 62, 59, 58, 55, 59, 65, 72, 32.36228 + 80, 86, 95, 100, 110, 117, 131, 145, 160, 179, 200, 211, 228, 233, 242, 249, 32.36229 + 252, 254, 254, 254, 248, 245, 245, 244, 246, 248, 251, 255, 254, 252, 253, 253, 32.36230 + 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 252, 253, 254, 32.36231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 32.36232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 32.36233 + 254, 255, 254, 254, 255, 251, 251, 255, 251, 243, 235, 235, 217, 212, 192, 158, 32.36234 + 126, 109, 115, 128, 141, 137, 133, 127, 114, 97, 89, 255, 255, 255, 255, 255, 32.36235 + 255, 255, 255, 233, 164, 169, 172, 148, 135, 120, 111, 107, 102, 91, 83, 87, 32.36236 + 82, 75, 66, 62, 59, 59, 60, 57, 61, 68, 76, 82, 89, 95, 98, 105, 32.36237 + 114, 128, 144, 160, 180, 200, 213, 225, 232, 239, 246, 250, 251, 251, 251, 245, 32.36238 + 244, 244, 242, 243, 248, 250, 252, 254, 252, 253, 253, 253, 254, 255, 254, 251, 32.36239 + 252, 252, 254, 254, 255, 255, 255, 251, 252, 252, 253, 254, 255, 255, 255, 255, 32.36240 + 255, 254, 254, 252, 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 253, 32.36241 + 253, 253, 255, 255, 254, 255, 254, 254, 254, 255, 255, 255, 255, 254, 253, 255, 32.36242 + 252, 249, 252, 249, 241, 235, 234, 224, 223, 207, 173, 133, 112, 114, 125, 135, 32.36243 + 136, 139, 135, 120, 101, 92, 255, 255, 255, 255, 255, 255, 255, 255, 184, 175, 32.36244 + 176, 168, 137, 129, 117, 108, 100, 93, 88, 82, 75, 72, 68, 65, 60, 59, 32.36245 + 58, 58, 67, 70, 74, 77, 82, 90, 99, 106, 119, 128, 143, 157, 171, 187, 32.36246 + 202, 213, 229, 235, 242, 248, 250, 251, 253, 254, 245, 243, 240, 239, 240, 245, 32.36247 + 250, 252, 250, 253, 255, 255, 255, 255, 255, 255, 255, 254, 253, 251, 251, 252, 32.36248 + 252, 253, 250, 252, 254, 254, 254, 251, 249, 246, 255, 255, 255, 254, 254, 255, 32.36249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 255, 254, 255, 255, 32.36250 + 255, 255, 253, 253, 253, 253, 253, 254, 254, 255, 255, 254, 252, 251, 249, 246, 32.36251 + 245, 244, 235, 224, 218, 209, 175, 132, 115, 121, 119, 122, 130, 136, 123, 102, 32.36252 + 93, 150, 255, 255, 255, 255, 255, 255, 255, 174, 179, 172, 158, 130, 122, 112, 32.36253 + 103, 95, 91, 84, 81, 74, 72, 68, 64, 62, 61, 60, 61, 72, 73, 76, 32.36254 + 79, 84, 91, 101, 107, 122, 131, 145, 160, 172, 187, 200, 209, 224, 229, 238, 32.36255 + 245, 249, 252, 254, 255, 248, 246, 243, 242, 243, 247, 252, 254, 250, 253, 255, 32.36256 + 255, 254, 254, 255, 255, 255, 255, 254, 254, 252, 253, 253, 253, 251, 253, 254, 32.36257 + 255, 255, 252, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36258 + 255, 255, 255, 255, 255, 253, 253, 255, 254, 255, 255, 255, 255, 255, 255, 254, 32.36259 + 254, 252, 253, 252, 252, 255, 254, 251, 250, 248, 245, 244, 244, 233, 226, 222, 32.36260 + 213, 186, 148, 124, 119, 115, 119, 124, 129, 125, 111, 101, 97, 255, 255, 255, 32.36261 + 255, 255, 255, 230, 181, 178, 160, 140, 123, 117, 109, 101, 94, 89, 83, 79, 32.36262 + 71, 69, 68, 64, 64, 64, 65, 64, 75, 77, 78, 81, 86, 95, 106, 112, 32.36263 + 126, 135, 149, 160, 172, 184, 196, 203, 218, 224, 234, 242, 246, 250, 253, 255, 32.36264 + 249, 247, 244, 242, 243, 248, 252, 254, 251, 253, 255, 255, 254, 253, 253, 254, 32.36265 + 253, 254, 254, 255, 255, 255, 255, 254, 251, 253, 255, 255, 255, 255, 254, 253, 32.36266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36267 + 253, 253, 255, 254, 255, 255, 255, 255, 255, 255, 255, 254, 252, 252, 251, 251, 32.36268 + 255, 254, 251, 250, 248, 244, 243, 243, 231, 231, 227, 219, 198, 170, 139, 116, 32.36269 + 113, 118, 123, 124, 125, 119, 107, 96, 255, 255, 255, 255, 255, 255, 177, 175, 32.36270 + 166, 144, 123, 120, 116, 108, 100, 92, 85, 78, 75, 66, 64, 63, 63, 64, 32.36271 + 65, 67, 67, 76, 76, 78, 83, 88, 98, 110, 117, 132, 140, 152, 162, 171, 32.36272 + 181, 190, 198, 216, 223, 232, 241, 246, 249, 251, 252, 247, 245, 242, 240, 241, 32.36273 + 245, 249, 251, 252, 254, 255, 255, 254, 253, 253, 254, 252, 254, 255, 255, 255, 32.36274 + 255, 255, 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36275 + 255, 255, 255, 255, 255, 255, 254, 254, 255, 255, 255, 253, 253, 255, 254, 255, 32.36276 + 255, 255, 255, 255, 255, 254, 254, 252, 253, 251, 252, 254, 254, 251, 249, 247, 32.36277 + 243, 242, 242, 231, 235, 230, 218, 207, 190, 155, 123, 113, 122, 125, 121, 119, 32.36278 + 120, 109, 96, 255, 255, 255, 255, 255, 255, 165, 161, 154, 134, 113, 115, 111, 32.36279 + 106, 97, 86, 76, 70, 66, 59, 60, 61, 62, 63, 65, 66, 69, 72, 75, 32.36280 + 79, 84, 92, 103, 114, 123, 133, 141, 152, 160, 168, 177, 186, 192, 216, 223, 32.36281 + 233, 241, 246, 248, 248, 248, 247, 245, 241, 239, 240, 244, 248, 250, 253, 255, 32.36282 + 255, 255, 254, 253, 253, 254, 252, 253, 255, 255, 255, 255, 255, 255, 252, 253, 32.36283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36284 + 254, 254, 254, 255, 255, 255, 253, 253, 255, 254, 255, 255, 255, 255, 254, 254, 32.36285 + 253, 253, 253, 254, 253, 254, 254, 253, 250, 248, 246, 242, 241, 240, 234, 237, 32.36286 + 230, 215, 209, 201, 171, 136, 113, 123, 126, 121, 115, 115, 111, 101, 255, 255, 32.36287 + 255, 255, 255, 255, 151, 148, 145, 129, 110, 105, 104, 99, 91, 79, 67, 61, 32.36288 + 56, 55, 58, 59, 61, 63, 67, 68, 69, 72, 75, 81, 87, 96, 105, 116, 32.36289 + 123, 134, 139, 149, 155, 162, 171, 181, 190, 214, 222, 232, 241, 245, 247, 247, 32.36290 + 247, 248, 246, 242, 240, 241, 244, 248, 250, 251, 253, 255, 255, 254, 253, 253, 32.36291 + 254, 253, 254, 255, 255, 255, 254, 254, 254, 252, 253, 253, 255, 255, 255, 255, 32.36292 + 255, 255, 255, 255, 254, 254, 255, 255, 255, 254, 254, 254, 253, 254, 255, 255, 32.36293 + 255, 253, 253, 255, 254, 255, 255, 255, 255, 253, 253, 253, 253, 253, 254, 254, 32.36294 + 255, 254, 253, 250, 248, 245, 241, 240, 239, 235, 238, 229, 213, 208, 206, 182, 32.36295 + 153, 114, 121, 122, 117, 112, 113, 112, 110, 152, 255, 255, 255, 255, 255, 141, 32.36296 + 143, 142, 128, 109, 97, 96, 94, 86, 74, 63, 56, 53, 55, 56, 60, 63, 32.36297 + 64, 67, 69, 69, 75, 80, 86, 92, 100, 108, 117, 123, 132, 136, 145, 151, 32.36298 + 157, 168, 179, 187, 209, 216, 228, 238, 244, 247, 247, 247, 247, 245, 241, 238, 32.36299 + 239, 243, 247, 248, 247, 250, 252, 252, 251, 251, 252, 253, 255, 254, 253, 253, 32.36300 + 253, 253, 253, 253, 251, 251, 252, 252, 253, 253, 254, 254, 254, 254, 253, 253, 32.36301 + 253, 253, 254, 254, 254, 253, 253, 253, 254, 254, 255, 255, 253, 253, 255, 254, 32.36302 + 255, 255, 255, 255, 255, 254, 254, 254, 252, 253, 253, 253, 254, 253, 249, 247, 32.36303 + 244, 240, 239, 238, 235, 237, 230, 217, 211, 206, 190, 168, 126, 120, 114, 115, 32.36304 + 114, 111, 110, 112, 104, 255, 255, 255, 255, 135, 135, 140, 140, 126, 106, 92, 32.36305 + 94, 93, 86, 74, 64, 57, 55, 55, 57, 61, 63, 68, 68, 70, 71, 81, 32.36306 + 83, 90, 96, 103, 109, 116, 121, 130, 134, 142, 147, 154, 164, 177, 187, 203, 32.36307 + 212, 224, 235, 243, 245, 247, 248, 244, 242, 238, 235, 236, 239, 243, 245, 244, 32.36308 + 246, 249, 250, 249, 249, 250, 252, 255, 254, 254, 252, 251, 252, 252, 253, 252, 32.36309 + 250, 251, 250, 251, 251, 252, 253, 254, 253, 252, 252, 252, 252, 253, 254, 253, 32.36310 + 253, 253, 253, 253, 254, 255, 255, 253, 253, 255, 254, 255, 255, 255, 255, 255, 32.36311 + 255, 255, 254, 252, 252, 251, 251, 253, 253, 249, 247, 244, 240, 238, 237, 235, 32.36312 + 238, 232, 220, 214, 206, 193, 179, 138, 122, 112, 114, 116, 109, 105, 107, 103, 32.36313 + 148, 255, 255, 255, 123, 136, 142, 137, 121, 106, 85, 86, 85, 79, 72, 64, 32.36314 + 58, 56, 63, 64, 66, 68, 68, 71, 74, 77, 80, 91, 102, 109, 110, 110, 32.36315 + 115, 119, 134, 136, 140, 145, 153, 166, 177, 187, 199, 210, 221, 231, 239, 241, 32.36316 + 244, 244, 244, 242, 239, 238, 237, 236, 238, 238, 239, 242, 248, 248, 247, 245, 32.36317 + 247, 249, 252, 253, 254, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 32.36318 + 254, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 255, 32.36319 + 255, 255, 254, 252, 250, 252, 254, 255, 255, 255, 255, 255, 255, 254, 253, 252, 32.36320 + 252, 252, 249, 249, 246, 245, 241, 240, 238, 237, 236, 236, 233, 226, 217, 206, 32.36321 + 195, 191, 158, 137, 114, 106, 102, 100, 99, 101, 103, 95, 255, 255, 255, 121, 32.36322 + 133, 140, 132, 115, 99, 84, 85, 84, 79, 72, 65, 60, 60, 64, 65, 66, 32.36323 + 67, 68, 71, 74, 77, 87, 97, 107, 112, 112, 112, 115, 121, 133, 136, 139, 32.36324 + 145, 152, 164, 178, 185, 197, 206, 219, 229, 237, 240, 241, 244, 241, 240, 239, 32.36325 + 240, 239, 238, 240, 239, 238, 241, 246, 246, 245, 244, 246, 247, 248, 249, 250, 32.36326 + 252, 253, 254, 253, 253, 254, 252, 253, 252, 253, 253, 253, 252, 253, 253, 254, 32.36327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 251, 32.36328 + 251, 253, 254, 255, 254, 255, 255, 254, 252, 251, 250, 250, 250, 248, 248, 245, 32.36329 + 243, 240, 239, 239, 239, 236, 236, 232, 226, 217, 206, 197, 191, 161, 140, 116, 32.36330 + 105, 100, 98, 97, 99, 101, 95, 255, 255, 255, 119, 130, 135, 126, 106, 90, 32.36331 + 82, 83, 80, 77, 71, 67, 65, 64, 65, 66, 67, 66, 67, 71, 77, 82, 32.36332 + 96, 103, 109, 113, 112, 111, 114, 117, 130, 133, 138, 143, 151, 164, 175, 184, 32.36333 + 193, 203, 216, 227, 235, 238, 240, 242, 239, 240, 240, 242, 242, 241, 241, 240, 32.36334 + 236, 238, 242, 243, 243, 242, 243, 244, 245, 247, 248, 251, 252, 254, 253, 253, 32.36335 + 253, 251, 252, 252, 253, 252, 253, 251, 252, 252, 252, 252, 252, 253, 254, 254, 32.36336 + 255, 255, 255, 254, 255, 255, 255, 255, 252, 252, 250, 251, 252, 254, 254, 254, 32.36337 + 255, 255, 253, 251, 250, 249, 249, 249, 246, 245, 243, 239, 238, 238, 240, 240, 32.36338 + 234, 233, 231, 225, 216, 207, 197, 193, 169, 146, 121, 105, 98, 96, 95, 94, 32.36339 + 100, 96, 255, 255, 255, 119, 129, 131, 119, 99, 83, 78, 78, 78, 74, 69, 32.36340 + 67, 68, 68, 65, 65, 66, 66, 70, 76, 84, 89, 100, 104, 109, 109, 107, 32.36341 + 105, 108, 111, 128, 130, 135, 142, 152, 162, 174, 182, 191, 199, 211, 223, 230, 32.36342 + 236, 238, 241, 239, 241, 242, 245, 245, 242, 241, 238, 235, 236, 239, 240, 240, 32.36343 + 240, 242, 242, 246, 247, 249, 252, 253, 255, 255, 255, 253, 252, 252, 253, 254, 32.36344 + 254, 254, 253, 254, 253, 252, 251, 251, 253, 255, 255, 254, 254, 253, 253, 253, 32.36345 + 254, 254, 255, 254, 252, 250, 250, 253, 253, 253, 252, 255, 255, 253, 251, 250, 32.36346 + 249, 248, 248, 245, 243, 238, 236, 235, 236, 239, 241, 232, 232, 230, 224, 215, 32.36347 + 207, 199, 194, 176, 155, 126, 107, 98, 95, 93, 91, 99, 98, 255, 255, 255, 32.36348 + 119, 129, 128, 114, 94, 79, 75, 76, 76, 74, 70, 69, 69, 71, 65, 66, 32.36349 + 68, 70, 75, 82, 91, 98, 104, 105, 107, 105, 101, 102, 104, 107, 123, 127, 32.36350 + 134, 142, 152, 164, 174, 183, 189, 197, 208, 219, 228, 233, 237, 239, 241, 243, 32.36351 + 245, 247, 246, 243, 240, 238, 236, 235, 237, 238, 239, 240, 241, 241, 245, 247, 32.36352 + 248, 251, 253, 255, 254, 255, 254, 253, 254, 254, 255, 255, 255, 255, 255, 255, 32.36353 + 253, 253, 253, 255, 255, 255, 253, 253, 252, 251, 251, 251, 252, 252, 255, 253, 32.36354 + 250, 252, 252, 253, 253, 252, 254, 253, 251, 249, 247, 246, 245, 245, 241, 239, 32.36355 + 237, 234, 233, 235, 236, 239, 230, 229, 227, 222, 216, 208, 201, 197, 183, 161, 32.36356 + 131, 108, 98, 95, 91, 89, 99, 100, 255, 255, 255, 120, 127, 125, 112, 93, 32.36357 + 80, 73, 75, 76, 75, 73, 72, 72, 74, 66, 69, 71, 77, 82, 90, 98, 32.36358 + 103, 107, 107, 105, 103, 100, 101, 104, 106, 120, 124, 133, 142, 153, 165, 177, 32.36359 + 185, 189, 196, 207, 218, 225, 231, 234, 237, 242, 243, 245, 248, 247, 244, 243, 32.36360 + 240, 238, 236, 237, 237, 240, 241, 242, 242, 244, 246, 247, 249, 251, 252, 251, 32.36361 + 252, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36362 + 255, 253, 253, 252, 251, 251, 251, 251, 252, 255, 253, 253, 252, 253, 254, 253, 32.36363 + 252, 251, 250, 248, 246, 244, 242, 242, 241, 239, 237, 235, 233, 233, 233, 235, 32.36364 + 236, 229, 228, 225, 221, 215, 207, 202, 199, 186, 167, 138, 112, 101, 98, 93, 32.36365 + 86, 96, 101, 255, 255, 255, 120, 127, 122, 110, 92, 80, 76, 78, 80, 80, 32.36366 + 80, 78, 77, 78, 72, 74, 78, 83, 87, 94, 101, 106, 109, 108, 105, 100, 32.36367 + 99, 101, 105, 107, 118, 123, 130, 143, 154, 167, 180, 187, 189, 197, 207, 216, 32.36368 + 224, 228, 233, 236, 240, 241, 243, 247, 248, 247, 247, 246, 240, 237, 237, 237, 32.36369 + 241, 243, 244, 243, 246, 247, 248, 250, 251, 252, 251, 251, 254, 252, 254, 254, 32.36370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 32.36371 + 252, 252, 253, 253, 255, 255, 254, 254, 254, 255, 255, 254, 253, 251, 249, 247, 32.36372 + 245, 243, 242, 242, 237, 236, 235, 233, 231, 232, 231, 232, 229, 227, 224, 220, 32.36373 + 215, 209, 203, 199, 187, 170, 141, 116, 104, 102, 96, 87, 92, 99, 255, 255, 32.36374 + 255, 119, 125, 121, 109, 91, 81, 77, 80, 84, 84, 84, 81, 80, 80, 76, 32.36375 + 78, 82, 87, 92, 96, 102, 105, 107, 105, 102, 97, 97, 100, 103, 107, 116, 32.36376 + 122, 130, 143, 155, 169, 181, 189, 190, 197, 207, 216, 222, 228, 233, 235, 237, 32.36377 + 239, 241, 246, 248, 249, 251, 251, 242, 239, 238, 238, 242, 245, 245, 244, 250, 32.36378 + 251, 252, 253, 254, 255, 253, 253, 252, 251, 252, 253, 255, 255, 255, 255, 253, 32.36379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 255, 32.36380 + 255, 255, 254, 255, 255, 255, 254, 255, 255, 253, 250, 248, 247, 246, 245, 236, 32.36381 + 236, 235, 234, 232, 231, 230, 230, 227, 227, 224, 220, 214, 209, 204, 202, 188, 32.36382 + 171, 144, 117, 106, 105, 98, 88, 89, 97, 255, 255, 255, 117, 124, 121, 105, 32.36383 + 92, 87, 82, 85, 88, 87, 90, 93, 90, 84, 82, 90, 94, 93, 95, 101, 32.36384 + 103, 100, 108, 103, 96, 90, 91, 97, 104, 109, 119, 125, 136, 150, 162, 176, 32.36385 + 187, 195, 202, 205, 210, 216, 222, 228, 233, 236, 235, 238, 243, 248, 251, 253, 32.36386 + 252, 252, 249, 247, 245, 243, 242, 243, 245, 246, 247, 247, 248, 251, 252, 254, 32.36387 + 254, 255, 255, 255, 255, 255, 255, 255, 253, 254, 252, 252, 252, 253, 253, 254, 32.36388 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255, 255, 255, 32.36389 + 255, 255, 255, 255, 255, 255, 255, 254, 253, 252, 242, 239, 239, 238, 239, 238, 32.36390 + 236, 232, 230, 227, 225, 220, 215, 210, 205, 202, 191, 177, 148, 122, 109, 103, 32.36391 + 99, 93, 85, 87, 255, 255, 255, 122, 124, 118, 101, 90, 87, 85, 89, 92, 32.36392 + 89, 89, 92, 91, 87, 90, 96, 98, 95, 95, 99, 99, 95, 105, 100, 95, 32.36393 + 90, 90, 96, 103, 107, 121, 129, 140, 152, 165, 176, 187, 193, 202, 205, 210, 32.36394 + 214, 222, 228, 232, 234, 236, 238, 242, 246, 250, 251, 252, 252, 249, 248, 245, 32.36395 + 244, 243, 243, 245, 246, 247, 248, 250, 251, 252, 254, 255, 255, 255, 254, 254, 32.36396 + 254, 254, 253, 253, 252, 252, 252, 252, 253, 253, 253, 254, 254, 255, 255, 255, 32.36397 + 255, 255, 255, 255, 255, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.36398 + 255, 255, 254, 253, 252, 244, 241, 239, 238, 239, 238, 236, 233, 231, 228, 225, 32.36399 + 219, 214, 209, 206, 204, 192, 179, 151, 122, 105, 98, 95, 90, 85, 87, 255, 32.36400 + 255, 255, 127, 123, 112, 97, 89, 89, 89, 94, 96, 91, 88, 90, 92, 91, 32.36401 + 97, 99, 100, 97, 96, 98, 97, 93, 100, 98, 92, 90, 90, 95, 101, 106, 32.36402 + 124, 131, 142, 154, 166, 176, 187, 192, 202, 205, 208, 214, 220, 226, 229, 233, 32.36403 + 235, 237, 241, 245, 247, 251, 251, 252, 250, 249, 247, 245, 244, 244, 245, 246, 32.36404 + 248, 248, 250, 251, 253, 255, 255, 255, 253, 253, 254, 253, 253, 252, 252, 253, 32.36405 + 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36406 + 252, 253, 253, 255, 255, 255, 254, 254, 255, 255, 255, 255, 254, 255, 253, 253, 32.36407 + 247, 243, 240, 237, 238, 238, 237, 234, 232, 228, 224, 218, 213, 209, 207, 206, 32.36408 + 192, 182, 154, 123, 102, 92, 90, 89, 86, 86, 255, 255, 255, 130, 121, 107, 32.36409 + 94, 91, 92, 91, 96, 99, 91, 86, 88, 92, 94, 98, 98, 98, 97, 98, 32.36410 + 99, 98, 95, 95, 94, 90, 89, 91, 96, 100, 105, 125, 131, 144, 155, 168, 32.36411 + 178, 187, 192, 203, 204, 207, 213, 218, 222, 227, 228, 233, 234, 239, 242, 246, 32.36412 + 247, 250, 250, 251, 250, 248, 247, 246, 246, 246, 246, 250, 251, 251, 253, 255, 32.36413 + 255, 255, 255, 253, 253, 252, 253, 254, 254, 253, 254, 253, 253, 254, 254, 254, 32.36414 + 255, 255, 255, 255, 255, 255, 255, 254, 254, 255, 255, 251, 252, 253, 255, 254, 32.36415 + 255, 254, 253, 253, 253, 255, 255, 255, 254, 254, 253, 251, 245, 241, 238, 238, 32.36416 + 238, 238, 235, 233, 228, 224, 217, 212, 210, 208, 208, 192, 183, 157, 125, 100, 32.36417 + 89, 90, 92, 87, 86, 255, 255, 255, 129, 118, 104, 95, 93, 94, 91, 96, 32.36418 + 98, 91, 86, 89, 94, 96, 101, 98, 95, 96, 98, 97, 95, 94, 90, 89, 32.36419 + 87, 86, 90, 96, 102, 107, 124, 131, 144, 156, 169, 179, 188, 193, 201, 203, 32.36420 + 205, 210, 213, 218, 221, 223, 230, 233, 235, 239, 242, 245, 246, 247, 250, 250, 32.36421 + 249, 248, 248, 248, 248, 248, 251, 251, 252, 254, 254, 255, 255, 255, 253, 253, 32.36422 + 254, 254, 255, 255, 255, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 32.36423 + 255, 254, 254, 254, 254, 255, 251, 252, 253, 255, 254, 255, 254, 253, 252, 254, 32.36424 + 254, 255, 255, 255, 254, 253, 253, 247, 243, 239, 239, 238, 238, 235, 233, 228, 32.36425 + 224, 218, 213, 210, 209, 209, 191, 184, 158, 126, 101, 91, 93, 96, 90, 87, 32.36426 + 255, 255, 255, 126, 114, 103, 96, 94, 91, 90, 94, 96, 91, 89, 93, 97, 32.36427 + 98, 104, 97, 93, 95, 96, 93, 90, 90, 87, 86, 85, 84, 89, 97, 105, 32.36428 + 111, 127, 134, 147, 159, 170, 181, 189, 195, 200, 201, 203, 207, 211, 213, 217, 32.36429 + 218, 228, 229, 231, 234, 239, 241, 244, 245, 249, 249, 249, 250, 250, 250, 251, 32.36430 + 251, 253, 253, 252, 253, 254, 253, 254, 253, 253, 253, 254, 255, 255, 255, 255, 32.36431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 253, 254, 32.36432 + 254, 252, 253, 253, 255, 255, 255, 254, 254, 253, 253, 253, 254, 255, 255, 255, 32.36433 + 254, 254, 249, 245, 242, 241, 239, 238, 234, 231, 228, 224, 219, 214, 211, 210, 32.36434 + 209, 192, 183, 157, 125, 101, 92, 95, 98, 93, 89, 255, 255, 255, 123, 111, 32.36435 + 103, 98, 92, 85, 89, 92, 94, 92, 94, 100, 103, 101, 101, 93, 88, 92, 32.36436 + 94, 92, 89, 90, 86, 83, 82, 83, 89, 98, 108, 115, 134, 142, 153, 164, 32.36437 + 174, 181, 188, 193, 198, 199, 201, 205, 207, 210, 212, 213, 225, 227, 228, 231, 32.36438 + 234, 238, 241, 242, 247, 248, 249, 251, 252, 253, 253, 253, 253, 253, 253, 252, 32.36439 + 252, 250, 250, 251, 251, 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.36440 + 255, 255, 255, 255, 255, 255, 254, 254, 253, 253, 254, 254, 253, 254, 254, 255, 32.36441 + 255, 255, 255, 255, 252, 253, 254, 255, 254, 255, 255, 254, 255, 250, 247, 244, 32.36442 + 243, 240, 237, 233, 230, 227, 225, 221, 216, 213, 210, 208, 193, 183, 155, 123, 32.36443 + 100, 92, 94, 96, 97, 90, 255, 255, 255, 121, 110, 103, 98, 90, 80, 89, 32.36444 + 92, 94, 93, 98, 105, 106, 103, 95, 86, 83, 89, 94, 93, 92, 93, 85, 32.36445 + 83, 81, 81, 88, 100, 112, 119, 140, 148, 158, 169, 176, 182, 189, 191, 197, 32.36446 + 198, 199, 203, 206, 208, 210, 211, 224, 225, 227, 229, 232, 237, 239, 241, 246, 32.36447 + 247, 249, 251, 253, 254, 255, 255, 254, 254, 252, 252, 250, 250, 247, 248, 250, 32.36448 + 251, 251, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36449 + 255, 254, 253, 253, 253, 253, 254, 253, 255, 255, 255, 255, 255, 255, 255, 252, 32.36450 + 252, 254, 254, 255, 255, 255, 255, 254, 250, 248, 246, 244, 241, 237, 232, 229, 32.36451 + 227, 226, 222, 217, 213, 209, 207, 195, 183, 153, 121, 99, 91, 92, 92, 99, 32.36452 + 91, 255, 255, 255, 116, 109, 100, 91, 86, 86, 84, 90, 94, 96, 98, 101, 32.36453 + 100, 96, 79, 81, 83, 87, 88, 88, 87, 86, 82, 81, 81, 85, 94, 107, 32.36454 + 119, 127, 151, 157, 165, 171, 175, 179, 183, 185, 190, 192, 197, 199, 200, 202, 32.36455 + 204, 206, 220, 212, 211, 220, 226, 228, 228, 233, 242, 239, 236, 238, 240, 240, 32.36456 + 237, 235, 243, 244, 247, 250, 254, 255, 255, 255, 247, 248, 251, 254, 254, 254, 32.36457 + 252, 251, 253, 252, 253, 254, 254, 255, 255, 254, 251, 252, 253, 253, 250, 251, 32.36458 + 254, 255, 255, 254, 252, 253, 254, 254, 253, 251, 254, 254, 253, 253, 254, 253, 32.36459 + 254, 253, 253, 254, 251, 250, 246, 241, 236, 233, 228, 228, 224, 223, 219, 214, 32.36460 + 211, 210, 195, 175, 152, 124, 94, 87, 94, 96, 91, 144, 255, 255, 255, 117, 32.36461 + 110, 100, 90, 85, 83, 84, 89, 94, 96, 97, 100, 98, 94, 79, 80, 83, 32.36462 + 86, 87, 87, 85, 84, 82, 81, 82, 88, 98, 111, 125, 133, 153, 157, 165, 32.36463 + 170, 174, 178, 182, 183, 188, 191, 194, 197, 198, 200, 202, 205, 210, 208, 212, 32.36464 + 219, 224, 224, 227, 236, 234, 232, 228, 225, 223, 221, 219, 215, 224, 230, 241, 32.36465 + 250, 255, 255, 255, 253, 251, 252, 255, 255, 255, 255, 253, 252, 251, 250, 251, 32.36466 + 253, 255, 255, 255, 255, 252, 254, 254, 253, 251, 251, 255, 255, 255, 254, 253, 32.36467 + 253, 254, 254, 253, 251, 253, 253, 254, 253, 252, 251, 251, 251, 253, 254, 254, 32.36468 + 251, 249, 244, 240, 236, 235, 233, 231, 227, 222, 218, 213, 211, 194, 176, 153, 32.36469 + 124, 94, 84, 92, 93, 91, 255, 255, 255, 255, 116, 111, 99, 89, 83, 80, 32.36470 + 84, 89, 92, 92, 95, 96, 95, 90, 80, 80, 81, 82, 84, 83, 83, 83, 32.36471 + 83, 83, 86, 93, 105, 120, 133, 142, 154, 159, 165, 169, 173, 176, 179, 182, 32.36472 + 185, 188, 190, 193, 195, 197, 200, 202, 203, 206, 215, 219, 219, 217, 222, 228, 32.36473 + 219, 218, 214, 207, 199, 192, 190, 189, 195, 204, 216, 231, 242, 249, 252, 252, 32.36474 + 251, 252, 254, 254, 254, 254, 251, 249, 244, 246, 248, 250, 252, 253, 254, 254, 32.36475 + 253, 254, 254, 255, 253, 253, 255, 255, 255, 254, 253, 253, 255, 254, 252, 250, 32.36476 + 254, 253, 252, 251, 250, 248, 247, 247, 251, 252, 252, 252, 248, 245, 242, 240, 32.36477 + 240, 237, 235, 229, 225, 219, 214, 212, 195, 175, 154, 125, 92, 83, 90, 91, 32.36478 + 90, 255, 255, 255, 255, 117, 110, 99, 88, 80, 76, 82, 86, 91, 91, 91, 32.36479 + 94, 91, 86, 79, 78, 80, 80, 79, 81, 81, 80, 83, 86, 91, 101, 115, 32.36480 + 130, 144, 150, 157, 162, 166, 169, 172, 174, 176, 179, 181, 183, 186, 189, 190, 32.36481 + 192, 196, 200, 206, 210, 214, 216, 215, 213, 212, 214, 203, 202, 196, 188, 175, 32.36482 + 168, 164, 165, 167, 171, 180, 191, 207, 223, 237, 245, 239, 240, 244, 246, 247, 32.36483 + 247, 245, 244, 240, 241, 242, 244, 247, 247, 250, 250, 254, 254, 254, 254, 253, 32.36484 + 255, 255, 255, 254, 253, 253, 254, 255, 254, 252, 249, 253, 252, 250, 249, 247, 32.36485 + 244, 243, 242, 245, 247, 248, 247, 246, 244, 240, 239, 242, 239, 236, 230, 223, 32.36486 + 216, 212, 209, 195, 176, 154, 125, 92, 82, 87, 87, 89, 255, 255, 255, 255, 32.36487 + 116, 110, 98, 85, 76, 73, 80, 85, 87, 88, 88, 89, 88, 83, 78, 77, 32.36488 + 76, 76, 75, 77, 79, 80, 85, 89, 98, 109, 122, 138, 152, 161, 162, 165, 32.36489 + 168, 169, 171, 171, 174, 177, 177, 180, 182, 184, 185, 190, 194, 197, 207, 208, 32.36490 + 209, 210, 212, 209, 204, 199, 187, 185, 179, 169, 158, 150, 148, 148, 147, 147, 32.36491 + 151, 159, 173, 192, 207, 218, 217, 219, 223, 230, 234, 236, 237, 237, 234, 235, 32.36492 + 237, 238, 241, 242, 243, 242, 250, 250, 249, 251, 251, 253, 253, 253, 250, 249, 32.36493 + 250, 251, 252, 251, 248, 246, 248, 248, 245, 242, 240, 239, 236, 235, 240, 242, 32.36494 + 244, 244, 242, 241, 238, 237, 239, 236, 233, 227, 221, 215, 209, 206, 195, 176, 32.36495 + 155, 124, 92, 82, 86, 86, 84, 255, 255, 255, 255, 113, 108, 97, 84, 74, 32.36496 + 70, 77, 82, 85, 84, 86, 88, 85, 80, 76, 74, 73, 71, 73, 75, 77, 32.36497 + 79, 88, 92, 102, 114, 130, 147, 161, 168, 166, 169, 170, 172, 170, 171, 172, 32.36498 + 176, 175, 176, 180, 181, 183, 187, 192, 195, 204, 204, 201, 201, 204, 205, 197, 32.36499 + 188, 172, 169, 162, 154, 145, 139, 137, 137, 133, 134, 135, 141, 150, 159, 169, 32.36500 + 173, 187, 191, 198, 206, 213, 218, 221, 221, 223, 224, 227, 230, 233, 235, 237, 32.36501 + 236, 239, 240, 240, 244, 246, 248, 247, 245, 242, 242, 243, 245, 246, 245, 241, 32.36502 + 238, 239, 238, 237, 234, 230, 229, 227, 227, 235, 236, 239, 239, 239, 237, 235, 32.36503 + 233, 233, 230, 228, 222, 216, 212, 206, 204, 193, 175, 154, 124, 92, 80, 85, 32.36504 + 85, 139, 255, 255, 255, 255, 111, 107, 96, 82, 72, 68, 74, 79, 82, 82, 32.36505 + 82, 86, 84, 79, 74, 72, 70, 69, 69, 73, 77, 80, 89, 93, 105, 119, 32.36506 + 136, 151, 165, 172, 170, 171, 174, 173, 171, 170, 173, 174, 173, 176, 177, 180, 32.36507 + 181, 186, 191, 195, 199, 202, 201, 194, 192, 191, 187, 178, 162, 156, 148, 140, 32.36508 + 136, 132, 128, 127, 121, 121, 123, 126, 129, 132, 137, 139, 156, 159, 168, 178, 32.36509 + 186, 193, 197, 198, 206, 208, 211, 216, 221, 223, 225, 228, 229, 229, 229, 233, 32.36510 + 238, 240, 240, 238, 234, 234, 235, 237, 238, 237, 233, 229, 228, 227, 225, 224, 32.36511 + 221, 219, 217, 216, 228, 228, 230, 230, 231, 229, 227, 224, 220, 219, 217, 213, 32.36512 + 208, 204, 199, 198, 192, 172, 154, 124, 92, 81, 86, 85, 255, 255, 255, 255, 32.36513 + 205, 110, 105, 95, 81, 71, 67, 72, 78, 81, 81, 82, 85, 83, 78, 72, 32.36514 + 71, 68, 68, 68, 73, 77, 79, 90, 96, 106, 121, 137, 153, 167, 174, 174, 32.36515 + 175, 175, 173, 171, 171, 172, 174, 174, 175, 176, 178, 181, 185, 191, 195, 197, 32.36516 + 204, 202, 192, 183, 178, 176, 171, 155, 148, 139, 132, 130, 128, 124, 120, 116, 32.36517 + 113, 110, 109, 113, 117, 123, 126, 133, 138, 146, 157, 166, 173, 177, 178, 190, 32.36518 + 193, 198, 203, 209, 213, 218, 219, 221, 220, 221, 227, 232, 235, 234, 232, 227, 32.36519 + 228, 229, 231, 232, 230, 226, 223, 219, 219, 219, 216, 213, 213, 212, 210, 219, 32.36520 + 220, 222, 222, 222, 220, 218, 217, 209, 207, 206, 203, 198, 196, 191, 190, 191, 32.36521 + 171, 151, 124, 92, 81, 85, 84, 255, 255, 255, 255, 110, 112, 105, 92, 79, 32.36522 + 71, 70, 69, 73, 80, 85, 89, 88, 85, 83, 73, 73, 72, 72, 72, 75, 32.36523 + 76, 76, 89, 99, 114, 132, 148, 160, 168, 170, 171, 174, 178, 179, 180, 179, 32.36524 + 175, 174, 174, 178, 181, 185, 189, 194, 196, 197, 200, 198, 193, 187, 176, 168, 32.36525 + 161, 157, 142, 138, 132, 128, 127, 126, 124, 124, 115, 113, 110, 108, 106, 106, 32.36526 + 108, 109, 113, 116, 123, 131, 139, 147, 153, 157, 168, 173, 180, 188, 193, 198, 32.36527 + 203, 207, 210, 214, 219, 226, 228, 229, 227, 227, 217, 219, 220, 221, 220, 216, 32.36528 + 213, 211, 201, 200, 197, 196, 197, 196, 196, 194, 197, 198, 201, 200, 198, 194, 32.36529 + 188, 185, 173, 172, 173, 176, 183, 187, 187, 186, 182, 168, 156, 131, 98, 87, 32.36530 + 87, 85, 255, 255, 255, 255, 112, 113, 106, 92, 78, 70, 65, 69, 74, 82, 32.36531 + 88, 92, 90, 87, 84, 74, 74, 73, 73, 76, 77, 78, 79, 90, 100, 116, 32.36532 + 134, 149, 160, 167, 169, 169, 172, 179, 184, 186, 184, 180, 178, 179, 182, 184, 32.36533 + 187, 190, 194, 196, 198, 193, 192, 187, 181, 171, 162, 155, 152, 140, 137, 133, 32.36534 + 129, 126, 122, 119, 116, 111, 109, 107, 104, 102, 101, 101, 101, 103, 106, 111, 32.36535 + 117, 123, 129, 133, 136, 149, 154, 163, 172, 179, 186, 191, 196, 200, 204, 210, 32.36536 + 214, 219, 220, 220, 218, 210, 210, 212, 212, 211, 206, 201, 198, 187, 185, 182, 32.36537 + 180, 180, 179, 178, 177, 176, 176, 178, 177, 176, 171, 168, 166, 161, 160, 160, 32.36538 + 162, 168, 171, 172, 171, 170, 158, 148, 125, 95, 83, 86, 85, 255, 255, 255, 32.36539 + 255, 113, 114, 108, 95, 80, 71, 65, 69, 74, 82, 89, 91, 88, 82, 78, 32.36540 + 74, 73, 73, 74, 77, 79, 82, 84, 91, 101, 118, 138, 154, 163, 168, 170, 32.36541 + 169, 174, 180, 185, 189, 188, 185, 183, 185, 185, 185, 186, 187, 190, 191, 194, 32.36542 + 186, 184, 178, 172, 165, 154, 148, 144, 136, 132, 128, 125, 121, 116, 108, 103, 32.36543 + 106, 106, 105, 104, 103, 102, 101, 101, 100, 100, 104, 107, 111, 115, 118, 119, 32.36544 + 130, 136, 146, 155, 165, 173, 181, 186, 188, 192, 196, 203, 207, 209, 209, 209, 32.36545 + 205, 204, 206, 204, 201, 196, 189, 186, 172, 170, 166, 163, 160, 160, 158, 157, 32.36546 + 153, 153, 154, 154, 152, 152, 149, 148, 146, 145, 144, 147, 152, 154, 155, 155, 32.36547 + 155, 146, 138, 118, 92, 80, 83, 139, 255, 255, 255, 207, 114, 115, 111, 100, 32.36548 + 88, 78, 73, 74, 79, 86, 90, 88, 83, 75, 70, 71, 71, 71, 73, 77, 32.36549 + 81, 86, 88, 96, 107, 124, 143, 159, 168, 171, 173, 175, 177, 182, 185, 187, 32.36550 + 188, 188, 188, 186, 186, 184, 183, 184, 184, 185, 185, 181, 177, 171, 166, 157, 32.36551 + 149, 141, 135, 127, 124, 119, 115, 111, 106, 100, 96, 96, 97, 98, 99, 99, 32.36552 + 99, 98, 98, 97, 99, 100, 101, 104, 107, 108, 109, 116, 121, 131, 140, 147, 32.36553 + 158, 167, 171, 180, 183, 186, 193, 195, 197, 198, 197, 196, 198, 197, 195, 190, 32.36554 + 185, 178, 174, 156, 153, 148, 144, 142, 142, 139, 137, 134, 134, 134, 134, 133, 32.36555 + 134, 135, 136, 132, 132, 134, 135, 139, 143, 145, 146, 147, 137, 130, 114, 86, 32.36556 + 76, 81, 255, 255, 255, 255, 111, 113, 116, 114, 107, 98, 91, 86, 84, 87, 32.36557 + 90, 90, 85, 78, 70, 64, 66, 65, 67, 70, 75, 80, 87, 90, 102, 112, 32.36558 + 130, 150, 165, 173, 177, 178, 183, 182, 183, 184, 185, 185, 187, 187, 188, 187, 32.36559 + 186, 184, 182, 181, 178, 178, 174, 170, 166, 158, 152, 145, 136, 129, 120, 115, 32.36560 + 109, 106, 103, 102, 100, 99, 92, 93, 93, 93, 93, 92, 91, 90, 90, 90, 32.36561 + 91, 94, 95, 97, 99, 99, 104, 108, 116, 124, 132, 140, 148, 154, 171, 173, 32.36562 + 177, 181, 186, 186, 185, 184, 184, 184, 183, 180, 175, 168, 162, 158, 139, 135, 32.36563 + 129, 125, 123, 122, 120, 118, 114, 114, 114, 114, 116, 118, 120, 121, 122, 123, 32.36564 + 124, 128, 132, 137, 143, 146, 146, 137, 130, 113, 85, 75, 77, 255, 255, 255, 32.36565 + 255, 110, 112, 115, 115, 113, 108, 104, 100, 97, 96, 93, 89, 82, 74, 68, 32.36566 + 62, 62, 61, 64, 66, 73, 82, 88, 92, 108, 118, 135, 153, 168, 179, 181, 32.36567 + 184, 191, 189, 188, 186, 185, 184, 184, 186, 191, 191, 189, 188, 183, 181, 177, 32.36568 + 176, 170, 164, 156, 151, 147, 138, 130, 123, 114, 110, 104, 101, 100, 102, 102, 32.36569 + 100, 100, 100, 98, 96, 94, 92, 91, 90, 86, 87, 88, 89, 93, 93, 95, 32.36570 + 96, 100, 104, 110, 117, 123, 131, 137, 143, 159, 164, 168, 175, 178, 178, 176, 32.36571 + 175, 179, 178, 176, 173, 166, 157, 150, 145, 130, 125, 119, 113, 111, 110, 109, 32.36572 + 108, 102, 102, 105, 106, 109, 111, 115, 116, 117, 118, 120, 123, 126, 133, 139, 32.36573 + 145, 148, 138, 131, 112, 85, 74, 78, 255, 255, 255, 255, 112, 112, 114, 116, 32.36574 + 117, 115, 112, 109, 101, 98, 92, 83, 75, 68, 63, 62, 58, 60, 61, 65, 32.36575 + 73, 82, 90, 96, 112, 121, 137, 154, 170, 179, 185, 187, 192, 193, 193, 192, 32.36576 + 190, 187, 184, 184, 190, 191, 190, 187, 184, 180, 174, 171, 162, 155, 149, 143, 32.36577 + 139, 132, 121, 114, 105, 102, 98, 97, 99, 98, 98, 95, 101, 100, 98, 96, 32.36578 + 94, 94, 94, 95, 87, 87, 89, 90, 91, 93, 94, 94, 96, 99, 105, 111, 32.36579 + 117, 125, 133, 138, 151, 155, 164, 172, 177, 177, 176, 173, 179, 177, 174, 168, 32.36580 + 159, 147, 139, 132, 122, 118, 111, 107, 103, 102, 102, 102, 98, 99, 102, 104, 32.36581 + 108, 112, 114, 115, 116, 119, 121, 123, 125, 131, 138, 145, 150, 139, 131, 112, 32.36582 + 84, 76, 82, 255, 255, 255, 255, 113, 112, 113, 115, 117, 117, 116, 114, 100, 32.36583 + 94, 86, 75, 68, 63, 61, 60, 58, 57, 60, 65, 74, 84, 92, 98, 115, 32.36584 + 123, 137, 153, 168, 179, 186, 188, 193, 194, 196, 198, 195, 190, 185, 180, 186, 32.36585 + 188, 188, 186, 183, 176, 169, 166, 156, 150, 142, 136, 133, 127, 116, 107, 97, 32.36586 + 95, 94, 95, 95, 94, 91, 89, 90, 89, 88, 88, 89, 92, 95, 97, 86, 32.36587 + 86, 86, 87, 87, 90, 90, 90, 89, 92, 97, 103, 109, 117, 124, 130, 148, 32.36588 + 153, 164, 174, 180, 181, 179, 176, 175, 173, 169, 160, 149, 137, 126, 120, 113, 32.36589 + 108, 102, 96, 95, 93, 94, 94, 93, 94, 99, 103, 106, 110, 112, 112, 120, 32.36590 + 122, 124, 125, 127, 131, 139, 145, 150, 141, 131, 112, 84, 76, 83, 255, 255, 32.36591 + 255, 255, 113, 115, 118, 120, 127, 130, 125, 114, 99, 89, 82, 78, 71, 63, 32.36592 + 63, 67, 59, 60, 61, 65, 71, 85, 98, 108, 116, 125, 139, 155, 169, 180, 32.36593 + 189, 195, 190, 195, 202, 202, 197, 193, 191, 190, 188, 189, 193, 192, 189, 177, 32.36594 + 164, 154, 151, 145, 139, 130, 120, 110, 100, 93, 94, 93, 92, 88, 84, 78, 32.36595 + 72, 69, 64, 69, 73, 73, 77, 87, 95, 98, 95, 95, 93, 90, 85, 85, 32.36596 + 89, 93, 91, 89, 91, 99, 106, 114, 126, 137, 146, 160, 175, 186, 194, 196, 32.36597 + 190, 182, 176, 171, 163, 151, 137, 123, 112, 105, 96, 94, 91, 87, 85, 84, 32.36598 + 85, 85, 98, 95, 92, 95, 101, 104, 106, 105, 119, 122, 127, 130, 132, 136, 32.36599 + 139, 141, 151, 145, 128, 106, 87, 81, 81, 255, 255, 255, 255, 111, 113, 113, 32.36600 + 116, 121, 123, 117, 106, 94, 86, 80, 77, 71, 65, 62, 66, 63, 64, 63, 32.36601 + 67, 73, 86, 99, 108, 119, 128, 141, 155, 168, 179, 189, 195, 198, 200, 202, 32.36602 + 203, 201, 197, 191, 186, 192, 194, 197, 194, 187, 175, 164, 157, 147, 141, 132, 32.36603 + 125, 117, 109, 101, 97, 99, 96, 90, 84, 77, 72, 68, 66, 57, 64, 70, 32.36604 + 76, 83, 93, 98, 97, 92, 92, 93, 92, 89, 89, 90, 91, 93, 91, 94, 32.36605 + 100, 109, 118, 130, 142, 152, 168, 186, 200, 208, 209, 200, 189, 175, 169, 158, 32.36606 + 144, 130, 116, 105, 99, 89, 87, 86, 84, 83, 86, 88, 90, 94, 94, 94, 32.36607 + 97, 100, 101, 101, 101, 109, 115, 123, 129, 131, 134, 139, 143, 147, 142, 126, 32.36608 + 103, 86, 79, 255, 255, 255, 255, 205, 108, 110, 109, 110, 114, 116, 109, 99, 32.36609 + 91, 86, 82, 79, 75, 69, 66, 68, 66, 67, 67, 70, 76, 87, 98, 107, 32.36610 + 122, 130, 141, 155, 167, 179, 189, 195, 202, 201, 203, 205, 208, 205, 197, 188, 32.36611 + 187, 191, 198, 196, 190, 178, 166, 159, 149, 143, 133, 125, 120, 114, 111, 109, 32.36612 + 108, 103, 97, 87, 81, 74, 69, 67, 58, 66, 75, 87, 97, 107, 106, 101, 32.36613 + 94, 93, 93, 93, 95, 93, 92, 89, 90, 89, 93, 102, 110, 120, 131, 144, 32.36614 + 162, 179, 203, 219, 227, 226, 215, 203, 177, 166, 148, 131, 117, 104, 97, 92, 32.36615 + 85, 83, 82, 82, 85, 90, 96, 99, 97, 99, 102, 103, 102, 101, 101, 102, 32.36616 + 100, 108, 118, 126, 128, 132, 139, 145, 141, 137, 122, 102, 84, 77, 255, 255, 32.36617 + 255, 255, 99, 104, 103, 103, 103, 107, 111, 104, 94, 90, 88, 87, 84, 80, 32.36618 + 77, 73, 73, 70, 69, 69, 71, 76, 86, 96, 105, 121, 129, 139, 152, 165, 32.36619 + 177, 189, 196, 197, 200, 202, 208, 211, 209, 205, 199, 183, 186, 194, 199, 199, 32.36620 + 190, 177, 167, 159, 153, 144, 135, 131, 129, 127, 126, 124, 121, 115, 108, 100, 32.36621 + 92, 87, 85, 77, 83, 91, 102, 117, 126, 123, 115, 105, 101, 96, 95, 96, 32.36622 + 96, 94, 91, 91, 90, 94, 104, 112, 123, 137, 148, 172, 191, 214, 232, 239, 32.36623 + 240, 230, 218, 183, 167, 142, 121, 105, 95, 90, 88, 82, 81, 81, 82, 87, 32.36624 + 93, 101, 106, 103, 107, 110, 109, 107, 105, 107, 110, 100, 103, 110, 117, 126, 32.36625 + 132, 140, 143, 136, 134, 120, 99, 83, 76, 255, 255, 255, 255, 94, 93, 93, 32.36626 + 94, 95, 101, 106, 101, 92, 90, 91, 89, 87, 84, 81, 79, 75, 71, 72, 32.36627 + 72, 71, 76, 84, 94, 99, 118, 125, 136, 150, 163, 176, 188, 195, 192, 199, 32.36628 + 205, 211, 210, 207, 207, 206, 194, 188, 187, 189, 195, 194, 185, 176, 166, 158, 32.36629 + 151, 145, 143, 142, 143, 143, 144, 142, 143, 140, 136, 129, 122, 117, 112, 112, 32.36630 + 115, 122, 135, 145, 141, 133, 126, 118, 109, 105, 102, 103, 100, 99, 101, 100, 32.36631 + 103, 112, 121, 130, 144, 155, 182, 198, 220, 236, 246, 247, 239, 230, 190, 170, 32.36632 + 140, 115, 99, 92, 89, 87, 80, 81, 80, 80, 84, 90, 96, 99, 102, 104, 32.36633 + 107, 105, 103, 104, 108, 111, 107, 104, 104, 109, 120, 131, 137, 141, 136, 133, 32.36634 + 119, 99, 82, 76, 255, 255, 255, 255, 89, 82, 85, 85, 89, 96, 103, 100, 32.36635 + 93, 88, 91, 89, 86, 83, 82, 80, 76, 75, 75, 74, 74, 77, 84, 92, 32.36636 + 97, 117, 124, 136, 150, 162, 174, 185, 192, 190, 199, 207, 211, 207, 205, 203, 32.36637 + 205, 202, 189, 177, 170, 174, 176, 175, 171, 164, 161, 156, 154, 155, 157, 155, 32.36638 + 155, 161, 164, 166, 168, 167, 162, 158, 154, 148, 146, 143, 145, 155, 162, 160, 32.36639 + 152, 149, 142, 133, 123, 117, 116, 115, 115, 111, 110, 114, 122, 130, 138, 151, 32.36640 + 162, 188, 204, 224, 239, 247, 251, 246, 237, 199, 175, 141, 114, 98, 92, 91, 32.36641 + 89, 80, 79, 77, 77, 77, 79, 82, 83, 86, 90, 92, 96, 97, 98, 102, 32.36642 + 103, 110, 104, 100, 103, 113, 126, 134, 137, 139, 136, 121, 100, 82, 76, 255, 32.36643 + 255, 255, 255, 85, 81, 81, 83, 88, 96, 104, 102, 95, 91, 95, 92, 86, 32.36644 + 84, 84, 83, 78, 78, 78, 78, 77, 78, 84, 90, 96, 119, 128, 139, 152, 32.36645 + 164, 173, 181, 187, 190, 194, 201, 205, 207, 206, 203, 202, 197, 190, 182, 172, 32.36646 + 167, 163, 162, 161, 162, 162, 163, 165, 170, 173, 175, 175, 175, 177, 180, 184, 32.36647 + 186, 183, 181, 180, 178, 176, 172, 171, 175, 180, 179, 173, 170, 167, 158, 148, 32.36648 + 139, 134, 134, 134, 129, 127, 129, 136, 142, 150, 162, 173, 192, 207, 228, 243, 32.36649 + 253, 254, 248, 241, 205, 179, 143, 113, 98, 93, 92, 91, 83, 82, 80, 75, 32.36650 + 73, 70, 68, 66, 72, 76, 82, 89, 96, 99, 97, 96, 102, 102, 102, 104, 32.36651 + 107, 117, 129, 138, 146, 140, 125, 101, 84, 77, 255, 255, 255, 255, 82, 85, 32.36652 + 85, 86, 91, 99, 107, 106, 99, 95, 98, 95, 87, 85, 87, 86, 81, 81, 32.36653 + 81, 80, 79, 80, 85, 91, 97, 123, 131, 142, 155, 165, 172, 179, 183, 186, 32.36654 + 188, 193, 200, 208, 211, 206, 202, 191, 195, 199, 193, 181, 168, 161, 160, 164, 32.36655 + 165, 171, 177, 184, 190, 191, 190, 181, 183, 186, 188, 190, 192, 193, 193, 196, 32.36656 + 195, 191, 188, 191, 195, 193, 187, 181, 180, 175, 166, 155, 148, 147, 147, 149, 32.36657 + 147, 148, 154, 160, 167, 178, 188, 193, 210, 232, 247, 255, 255, 250, 240, 207, 32.36658 + 180, 144, 113, 98, 94, 93, 93, 88, 87, 82, 77, 71, 64, 61, 58, 67, 32.36659 + 71, 80, 93, 103, 104, 99, 94, 92, 100, 105, 106, 104, 111, 125, 137, 149, 32.36660 + 143, 126, 104, 85, 79, 255, 255, 255, 255, 86, 86, 97, 94, 102, 106, 108, 32.36661 + 119, 112, 105, 105, 101, 91, 87, 91, 93, 91, 90, 90, 90, 87, 88, 93, 32.36662 + 98, 103, 121, 130, 145, 159, 169, 175, 179, 180, 191, 192, 191, 192, 193, 193, 32.36663 + 194, 194, 206, 207, 209, 208, 204, 199, 194, 189, 192, 192, 192, 194, 199, 205, 32.36664 + 210, 214, 205, 200, 197, 194, 194, 195, 193, 192, 194, 194, 193, 192, 190, 189, 32.36665 + 190, 192, 180, 181, 181, 182, 182, 182, 180, 180, 174, 174, 174, 177, 182, 189, 32.36666 + 197, 202, 209, 218, 232, 241, 251, 255, 250, 242, 222, 195, 157, 128, 119, 120, 32.36667 + 123, 123, 112, 114, 116, 115, 111, 101, 89, 79, 89, 88, 93, 106, 122, 125, 32.36668 + 117, 107, 93, 100, 108, 115, 113, 115, 125, 136, 142, 137, 124, 102, 84, 79, 32.36669 + 255, 255, 255, 255, 83, 81, 93, 89, 99, 105, 109, 122, 115, 105, 106, 100, 32.36670 + 92, 90, 95, 98, 96, 95, 93, 87, 84, 84, 89, 99, 105, 120, 131, 144, 32.36671 + 159, 169, 175, 179, 180, 191, 190, 191, 193, 195, 196, 198, 199, 207, 209, 212, 32.36672 + 212, 213, 212, 211, 208, 208, 206, 204, 203, 204, 207, 211, 214, 212, 207, 202, 32.36673 + 197, 194, 190, 185, 181, 181, 183, 185, 186, 186, 188, 190, 193, 190, 189, 190, 32.36674 + 191, 193, 196, 197, 198, 193, 192, 192, 191, 195, 201, 207, 210, 214, 222, 234, 32.36675 + 243, 250, 255, 251, 243, 228, 203, 169, 142, 134, 137, 143, 146, 140, 142, 147, 32.36676 + 147, 146, 137, 124, 115, 118, 116, 119, 128, 140, 143, 136, 126, 117, 115, 116, 32.36677 + 121, 125, 125, 131, 138, 143, 138, 124, 102, 84, 79, 255, 255, 255, 255, 81, 32.36678 + 75, 87, 86, 96, 104, 110, 124, 119, 111, 110, 104, 97, 96, 101, 104, 104, 32.36679 + 99, 95, 89, 82, 82, 89, 98, 105, 120, 131, 145, 159, 168, 174, 178, 179, 32.36680 + 190, 190, 191, 193, 196, 200, 204, 206, 213, 216, 219, 223, 224, 227, 227, 227, 32.36681 + 220, 216, 210, 204, 201, 200, 201, 202, 207, 202, 198, 194, 192, 188, 183, 179, 32.36682 + 173, 176, 180, 184, 187, 189, 192, 194, 199, 201, 202, 205, 208, 213, 217, 219, 32.36683 + 216, 215, 212, 210, 211, 214, 218, 219, 221, 228, 237, 244, 252, 255, 254, 246, 32.36684 + 235, 217, 186, 166, 158, 162, 171, 177, 172, 176, 181, 185, 185, 179, 169, 161, 32.36685 + 155, 152, 153, 158, 165, 166, 160, 152, 147, 138, 133, 135, 139, 140, 142, 144, 32.36686 + 143, 138, 124, 102, 84, 79, 255, 255, 255, 255, 80, 74, 85, 83, 95, 103, 32.36687 + 110, 125, 121, 121, 118, 109, 103, 101, 104, 109, 110, 102, 97, 93, 88, 87, 32.36688 + 91, 98, 106, 123, 131, 146, 159, 168, 173, 175, 179, 190, 190, 191, 193, 197, 32.36689 + 201, 206, 208, 222, 224, 229, 233, 233, 234, 233, 233, 228, 224, 217, 209, 204, 32.36690 + 201, 200, 200, 189, 186, 181, 181, 181, 183, 183, 183, 174, 177, 183, 186, 189, 32.36691 + 190, 193, 195, 206, 208, 214, 218, 224, 228, 232, 233, 234, 232, 227, 223, 222, 32.36692 + 221, 222, 224, 227, 235, 240, 246, 252, 255, 254, 249, 240, 226, 205, 190, 183, 32.36693 + 187, 192, 198, 194, 195, 200, 203, 204, 202, 196, 192, 183, 180, 177, 179, 183, 32.36694 + 185, 181, 176, 173, 163, 154, 153, 151, 149, 148, 150, 144, 139, 125, 103, 84, 32.36695 + 138, 255, 255, 255, 255, 82, 75, 88, 84, 95, 105, 110, 126, 121, 129, 121, 32.36696 + 111, 103, 100, 100, 104, 107, 103, 103, 101, 98, 96, 98, 103, 106, 126, 135, 32.36697 + 147, 160, 168, 173, 174, 175, 189, 189, 192, 193, 197, 201, 206, 208, 223, 227, 32.36698 + 232, 236, 240, 238, 234, 232, 230, 228, 224, 221, 219, 219, 220, 220, 193, 188, 32.36699 + 180, 177, 176, 176, 178, 177, 175, 179, 183, 188, 190, 193, 196, 199, 215, 220, 32.36700 + 226, 234, 238, 241, 241, 240, 242, 240, 236, 231, 227, 226, 225, 226, 232, 238, 32.36701 + 243, 247, 253, 255, 255, 250, 244, 232, 220, 208, 203, 203, 204, 206, 205, 201, 32.36702 + 199, 198, 199, 200, 200, 199, 193, 189, 187, 188, 191, 193, 193, 191, 192, 185, 32.36703 + 179, 170, 157, 147, 147, 150, 145, 140, 126, 103, 85, 255, 255, 255, 255, 255, 32.36704 + 197, 76, 88, 83, 94, 104, 109, 126, 122, 130, 119, 109, 99, 94, 91, 95, 32.36705 + 102, 109, 111, 113, 113, 112, 111, 112, 113, 131, 139, 152, 163, 170, 172, 173, 32.36706 + 174, 187, 188, 191, 195, 199, 204, 206, 208, 219, 223, 228, 234, 235, 234, 231, 32.36707 + 229, 225, 226, 228, 231, 235, 238, 241, 243, 229, 221, 210, 200, 194, 189, 186, 32.36708 + 184, 183, 185, 188, 192, 196, 200, 207, 210, 228, 233, 241, 247, 250, 247, 245, 32.36709 + 242, 241, 239, 235, 231, 228, 226, 226, 225, 232, 238, 244, 247, 254, 255, 254, 32.36710 + 249, 245, 236, 224, 218, 214, 212, 210, 209, 208, 202, 194, 188, 186, 189, 189, 32.36711 + 190, 188, 187, 187, 186, 188, 190, 193, 193, 200, 199, 194, 183, 161, 144, 141, 32.36712 + 146, 146, 141, 127, 104, 85, 255, 255, 255, 255, 255, 255, 72, 84, 81, 92, 32.36713 + 102, 109, 126, 122, 132, 119, 106, 97, 91, 87, 93, 99, 121, 123, 125, 126, 32.36714 + 125, 124, 125, 127, 135, 143, 154, 165, 171, 172, 172, 172, 182, 187, 192, 199, 32.36715 + 204, 209, 210, 213, 219, 222, 223, 225, 227, 227, 228, 227, 226, 229, 234, 239, 32.36716 + 244, 248, 250, 251, 255, 250, 241, 233, 224, 218, 211, 208, 204, 205, 207, 207, 32.36717 + 211, 216, 221, 226, 241, 244, 249, 251, 252, 248, 244, 240, 233, 232, 228, 225, 32.36718 + 224, 222, 222, 222, 229, 235, 241, 248, 252, 255, 254, 246, 249, 238, 225, 219, 32.36719 + 220, 219, 216, 212, 207, 199, 189, 180, 175, 174, 175, 174, 174, 176, 177, 176, 32.36720 + 176, 179, 183, 185, 194, 197, 197, 188, 168, 150, 144, 148, 147, 142, 127, 104, 32.36721 + 85, 255, 255, 255, 255, 255, 255, 69, 81, 79, 90, 100, 109, 126, 123, 133, 32.36722 + 120, 106, 99, 94, 90, 94, 102, 130, 131, 132, 133, 132, 132, 134, 137, 139, 32.36723 + 146, 158, 166, 171, 172, 172, 171, 180, 184, 192, 201, 208, 212, 214, 216, 225, 32.36724 + 223, 221, 219, 219, 221, 222, 224, 234, 237, 242, 247, 251, 252, 252, 251, 251, 32.36725 + 250, 248, 247, 243, 238, 233, 229, 229, 229, 228, 226, 225, 229, 234, 238, 248, 32.36726 + 249, 251, 250, 249, 245, 240, 237, 224, 222, 221, 218, 219, 218, 219, 218, 225, 32.36727 + 234, 241, 246, 252, 255, 252, 244, 253, 239, 223, 218, 220, 223, 221, 217, 207, 32.36728 + 198, 188, 177, 170, 166, 163, 162, 162, 165, 166, 167, 166, 167, 171, 175, 186, 32.36729 + 188, 191, 187, 175, 159, 152, 154, 147, 142, 127, 104, 85, 255, 255, 255, 255, 32.36730 + 255, 255, 77, 82, 82, 79, 91, 113, 125, 126, 129, 120, 110, 101, 95, 93, 32.36731 + 102, 111, 130, 144, 151, 140, 134, 140, 147, 147, 153, 158, 164, 167, 170, 171, 32.36732 + 175, 177, 179, 187, 197, 207, 214, 218, 220, 221, 212, 215, 220, 225, 231, 235, 32.36733 + 238, 241, 251, 250, 249, 248, 248, 249, 250, 251, 254, 255, 254, 254, 254, 252, 32.36734 + 251, 251, 251, 252, 254, 255, 255, 255, 254, 252, 249, 251, 254, 254, 252, 244, 32.36735 + 236, 231, 224, 222, 217, 214, 213, 213, 213, 215, 219, 226, 234, 244, 252, 253, 32.36736 + 249, 246, 249, 239, 228, 223, 222, 223, 228, 236, 224, 212, 193, 176, 167, 160, 32.36737 + 158, 155, 153, 150, 145, 140, 140, 144, 153, 161, 178, 180, 182, 182, 181, 178, 32.36738 + 175, 173, 167, 154, 129, 103, 83, 255, 255, 255, 255, 255, 255, 79, 84, 84, 32.36739 + 82, 93, 115, 127, 129, 128, 120, 109, 102, 97, 98, 106, 118, 143, 154, 156, 32.36740 + 146, 140, 146, 149, 148, 158, 160, 164, 167, 169, 173, 175, 178, 182, 189, 198, 32.36741 + 206, 211, 215, 216, 217, 214, 216, 222, 228, 235, 240, 243, 246, 252, 251, 249, 32.36742 + 249, 249, 249, 251, 252, 255, 255, 254, 255, 255, 252, 252, 252, 252, 252, 254, 32.36743 + 254, 255, 255, 254, 254, 251, 253, 253, 252, 248, 243, 239, 235, 223, 221, 217, 32.36744 + 212, 210, 210, 211, 213, 219, 223, 233, 244, 253, 254, 252, 248, 250, 240, 228, 32.36745 + 222, 221, 222, 228, 236, 234, 223, 207, 192, 179, 166, 157, 151, 146, 144, 141, 32.36746 + 137, 136, 139, 146, 150, 166, 170, 177, 182, 183, 182, 178, 175, 168, 155, 129, 32.36747 + 103, 83, 255, 255, 255, 255, 255, 255, 79, 83, 84, 82, 93, 113, 126, 131, 32.36748 + 133, 124, 112, 104, 99, 100, 111, 124, 157, 162, 162, 153, 152, 156, 158, 154, 32.36749 + 162, 164, 166, 169, 170, 173, 177, 179, 185, 192, 199, 206, 210, 212, 213, 215, 32.36750 + 217, 220, 227, 236, 242, 247, 252, 253, 252, 251, 250, 249, 249, 250, 251, 252, 32.36751 + 255, 255, 255, 255, 255, 253, 253, 253, 254, 254, 254, 253, 254, 254, 255, 255, 32.36752 + 254, 254, 252, 250, 247, 244, 241, 239, 226, 222, 214, 210, 205, 207, 208, 210, 32.36753 + 217, 223, 233, 244, 253, 255, 254, 252, 255, 241, 227, 220, 217, 219, 226, 233, 32.36754 + 242, 236, 228, 216, 202, 187, 172, 163, 148, 148, 145, 143, 140, 142, 146, 148, 32.36755 + 159, 165, 174, 185, 191, 195, 194, 193, 170, 156, 129, 102, 83, 255, 255, 255, 32.36756 + 255, 255, 255, 77, 80, 81, 81, 90, 109, 124, 132, 139, 130, 118, 108, 100, 32.36757 + 102, 115, 131, 163, 166, 163, 160, 160, 166, 167, 164, 167, 168, 169, 171, 171, 32.36758 + 176, 179, 183, 188, 194, 200, 206, 210, 213, 215, 217, 225, 228, 234, 242, 247, 32.36759 + 251, 255, 255, 253, 252, 250, 249, 249, 250, 252, 253, 255, 255, 255, 255, 255, 32.36760 + 254, 254, 253, 255, 254, 253, 251, 251, 254, 255, 255, 255, 255, 254, 252, 250, 32.36761 + 245, 242, 241, 227, 223, 215, 207, 203, 203, 207, 210, 215, 221, 230, 243, 253, 32.36762 + 255, 255, 255, 255, 242, 228, 219, 215, 216, 222, 230, 242, 242, 241, 237, 227, 32.36763 + 215, 204, 195, 174, 172, 169, 164, 161, 161, 165, 168, 163, 166, 173, 182, 191, 32.36764 + 199, 204, 207, 173, 157, 129, 102, 83, 255, 255, 255, 255, 255, 255, 196, 79, 32.36765 + 80, 82, 90, 108, 124, 134, 142, 133, 122, 111, 105, 108, 123, 139, 168, 167, 32.36766 + 163, 161, 163, 168, 169, 169, 170, 172, 175, 175, 177, 179, 183, 188, 189, 194, 32.36767 + 200, 206, 211, 216, 220, 223, 232, 235, 242, 247, 251, 255, 255, 255, 254, 253, 32.36768 + 252, 251, 251, 252, 253, 254, 255, 255, 255, 255, 255, 254, 254, 253, 255, 255, 32.36769 + 254, 251, 251, 253, 254, 255, 255, 255, 255, 255, 250, 244, 239, 236, 225, 219, 32.36770 + 213, 207, 204, 203, 207, 208, 214, 218, 229, 242, 252, 255, 255, 255, 255, 244, 32.36771 + 228, 218, 213, 214, 219, 226, 238, 242, 247, 249, 246, 237, 232, 226, 207, 205, 32.36772 + 201, 196, 192, 193, 196, 198, 182, 181, 178, 180, 184, 193, 202, 208, 176, 158, 32.36773 + 129, 101, 83, 255, 255, 255, 255, 255, 255, 255, 80, 82, 84, 92, 108, 125, 32.36774 + 139, 143, 136, 127, 117, 110, 113, 130, 147, 171, 168, 163, 162, 162, 165, 166, 32.36775 + 168, 173, 175, 178, 180, 182, 185, 189, 192, 190, 195, 200, 206, 212, 218, 223, 32.36776 + 228, 236, 239, 245, 250, 252, 255, 255, 254, 255, 255, 254, 253, 253, 254, 255, 32.36777 + 255, 255, 255, 255, 255, 255, 253, 253, 253, 255, 255, 254, 254, 253, 254, 254, 32.36778 + 254, 255, 255, 254, 251, 245, 238, 230, 224, 220, 216, 210, 206, 203, 205, 208, 32.36779 + 209, 212, 217, 227, 240, 251, 255, 255, 255, 255, 245, 229, 217, 213, 211, 214, 32.36780 + 221, 236, 241, 248, 253, 251, 247, 243, 240, 235, 233, 231, 227, 223, 221, 223, 32.36781 + 224, 216, 210, 202, 195, 192, 195, 199, 202, 179, 160, 129, 101, 83, 255, 255, 32.36782 + 255, 255, 255, 255, 255, 80, 82, 85, 92, 107, 125, 141, 149, 143, 133, 122, 32.36783 + 114, 114, 130, 146, 167, 164, 161, 161, 161, 162, 166, 169, 174, 178, 182, 186, 32.36784 + 187, 189, 193, 196, 190, 195, 199, 205, 210, 217, 223, 228, 236, 241, 246, 251, 32.36785 + 254, 254, 254, 252, 255, 255, 255, 254, 254, 255, 255, 255, 255, 255, 254, 255, 32.36786 + 255, 252, 252, 252, 254, 254, 255, 255, 254, 254, 252, 252, 253, 251, 246, 241, 32.36787 + 232, 225, 218, 214, 214, 211, 208, 205, 203, 205, 208, 209, 211, 216, 226, 239, 32.36788 + 250, 255, 255, 255, 255, 245, 230, 219, 212, 209, 210, 215, 236, 243, 252, 255, 32.36789 + 255, 250, 246, 245, 248, 250, 251, 251, 246, 242, 240, 238, 239, 235, 229, 220, 32.36790 + 213, 207, 202, 201, 181, 161, 129, 101, 83, 255, 255, 255, 255, 255, 255, 255, 32.36791 + 77, 79, 83, 90, 104, 123, 140, 158, 150, 140, 127, 114, 111, 124, 140, 160, 32.36792 + 159, 159, 159, 160, 163, 169, 175, 176, 179, 184, 189, 191, 192, 195, 198, 191, 32.36793 + 195, 199, 203, 209, 215, 221, 226, 235, 240, 245, 250, 254, 254, 254, 253, 255, 32.36794 + 255, 255, 254, 254, 255, 255, 255, 254, 255, 254, 254, 254, 252, 251, 251, 252, 32.36795 + 254, 255, 255, 255, 254, 252, 251, 250, 247, 240, 230, 221, 215, 210, 206, 208, 32.36796 + 207, 204, 203, 203, 205, 208, 208, 211, 215, 225, 238, 248, 255, 255, 255, 255, 32.36797 + 245, 231, 220, 213, 207, 209, 213, 236, 244, 255, 255, 255, 253, 248, 245, 252, 32.36798 + 255, 255, 255, 255, 253, 246, 243, 242, 242, 240, 234, 226, 214, 204, 199, 182, 32.36799 + 161, 129, 100, 83, 255, 255, 255, 255, 255, 255, 255, 255, 80, 81, 80, 94, 32.36800 + 126, 156, 164, 160, 153, 142, 130, 124, 124, 128, 146, 160, 165, 158, 155, 163, 32.36801 + 169, 167, 180, 182, 186, 189, 194, 195, 197, 197, 189, 189, 193, 197, 204, 211, 32.36802 + 219, 221, 234, 238, 243, 248, 250, 251, 249, 248, 252, 249, 247, 245, 248, 252, 32.36803 + 255, 255, 251, 252, 253, 254, 254, 254, 254, 253, 246, 249, 253, 255, 255, 255, 32.36804 + 246, 239, 228, 223, 217, 210, 204, 200, 200, 200, 206, 205, 203, 202, 203, 206, 32.36805 + 210, 213, 214, 223, 234, 242, 247, 251, 254, 255, 255, 249, 237, 223, 212, 205, 32.36806 + 206, 208, 223, 231, 245, 255, 255, 254, 249, 249, 251, 253, 254, 254, 251, 250, 32.36807 + 248, 249, 241, 242, 243, 240, 235, 227, 220, 216, 194, 176, 143, 103, 78, 255, 32.36808 + 255, 255, 255, 255, 255, 255, 255, 82, 83, 83, 97, 128, 157, 176, 177, 173, 32.36809 + 164, 154, 142, 134, 129, 142, 155, 162, 159, 157, 166, 170, 168, 179, 182, 187, 32.36810 + 191, 195, 196, 197, 196, 190, 191, 191, 195, 202, 208, 216, 221, 235, 238, 243, 32.36811 + 248, 250, 249, 249, 247, 244, 243, 240, 240, 240, 243, 247, 251, 250, 250, 251, 32.36812 + 253, 254, 255, 255, 255, 251, 253, 254, 255, 253, 245, 233, 224, 214, 212, 206, 32.36813 + 200, 197, 196, 197, 198, 202, 202, 201, 202, 205, 208, 210, 213, 215, 222, 234, 32.36814 + 243, 250, 255, 255, 255, 255, 250, 238, 224, 214, 208, 204, 203, 211, 222, 236, 32.36815 + 247, 252, 252, 252, 252, 251, 253, 255, 255, 255, 254, 255, 255, 248, 249, 247, 32.36816 + 245, 239, 232, 224, 219, 196, 178, 144, 104, 79, 255, 255, 255, 255, 255, 255, 32.36817 + 255, 255, 255, 83, 83, 95, 127, 156, 184, 189, 192, 193, 186, 171, 153, 141, 32.36818 + 136, 147, 156, 155, 159, 166, 170, 167, 179, 182, 188, 193, 197, 197, 196, 195, 32.36819 + 192, 191, 189, 191, 196, 204, 213, 219, 234, 236, 240, 242, 243, 243, 242, 242, 32.36820 + 234, 233, 230, 230, 230, 233, 235, 237, 243, 243, 244, 246, 248, 250, 252, 254, 32.36821 + 255, 255, 255, 250, 244, 233, 221, 212, 199, 197, 194, 191, 191, 194, 198, 200, 32.36822 + 203, 202, 202, 203, 207, 209, 212, 214, 217, 224, 233, 244, 253, 255, 255, 255, 32.36823 + 255, 250, 238, 229, 220, 211, 201, 195, 198, 206, 220, 232, 242, 247, 249, 252, 32.36824 + 249, 252, 254, 255, 255, 255, 255, 255, 251, 251, 252, 249, 243, 236, 228, 223, 32.36825 + 199, 180, 145, 105, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 81, 32.36826 + 93, 124, 153, 187, 194, 204, 212, 212, 199, 177, 163, 138, 145, 149, 149, 154, 32.36827 + 164, 170, 171, 179, 183, 190, 194, 199, 198, 196, 194, 194, 191, 187, 187, 190, 32.36828 + 199, 209, 215, 229, 229, 231, 233, 233, 232, 232, 231, 223, 224, 221, 220, 220, 32.36829 + 222, 224, 226, 235, 235, 236, 238, 241, 245, 248, 249, 248, 246, 242, 236, 226, 32.36830 + 216, 206, 199, 188, 187, 185, 186, 189, 196, 203, 208, 209, 207, 204, 203, 206, 32.36831 + 210, 215, 218, 223, 225, 233, 243, 254, 255, 255, 255, 255, 251, 241, 232, 225, 32.36832 + 215, 199, 189, 184, 191, 200, 212, 224, 233, 241, 245, 245, 247, 248, 250, 251, 32.36833 + 251, 255, 255, 251, 252, 252, 249, 244, 235, 227, 224, 201, 181, 145, 105, 81, 32.36834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 79, 92, 124, 153, 192, 199, 32.36835 + 211, 220, 223, 213, 196, 181, 152, 149, 146, 144, 150, 162, 173, 177, 181, 184, 32.36836 + 191, 195, 199, 198, 196, 194, 193, 190, 184, 182, 186, 194, 204, 210, 222, 221, 32.36837 + 221, 221, 220, 219, 220, 219, 214, 212, 212, 210, 211, 212, 216, 217, 228, 228, 32.36838 + 230, 232, 235, 238, 241, 242, 233, 230, 222, 211, 199, 190, 184, 179, 179, 178, 32.36839 + 178, 181, 188, 197, 206, 212, 219, 214, 209, 206, 206, 211, 218, 223, 228, 230, 32.36840 + 233, 242, 252, 255, 255, 255, 255, 254, 245, 236, 229, 217, 201, 190, 171, 173, 32.36841 + 178, 188, 202, 216, 229, 236, 240, 241, 245, 245, 246, 245, 248, 249, 249, 250, 32.36842 + 251, 248, 243, 235, 227, 224, 202, 181, 144, 104, 81, 255, 255, 255, 255, 255, 32.36843 + 255, 255, 255, 255, 255, 78, 94, 125, 155, 199, 206, 213, 218, 216, 207, 193, 32.36844 + 184, 163, 155, 143, 141, 148, 163, 176, 185, 183, 186, 191, 195, 199, 198, 197, 32.36845 + 196, 194, 189, 183, 180, 182, 189, 199, 206, 213, 212, 210, 208, 207, 206, 206, 32.36846 + 206, 201, 200, 200, 200, 202, 204, 206, 207, 218, 220, 222, 225, 227, 228, 229, 32.36847 + 229, 222, 215, 204, 190, 176, 167, 164, 164, 170, 169, 170, 173, 181, 193, 204, 32.36848 + 210, 224, 220, 212, 207, 208, 213, 220, 224, 231, 232, 236, 243, 250, 255, 255, 32.36849 + 255, 255, 255, 248, 240, 230, 218, 205, 196, 171, 167, 164, 167, 179, 196, 213, 32.36850 + 221, 232, 234, 239, 240, 241, 241, 242, 243, 245, 246, 248, 246, 242, 236, 228, 32.36851 + 224, 201, 179, 142, 103, 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36852 + 255, 91, 125, 157, 200, 204, 208, 208, 201, 191, 180, 173, 165, 151, 137, 135, 32.36853 + 144, 162, 177, 185, 185, 187, 192, 195, 198, 198, 198, 197, 193, 188, 181, 178, 32.36854 + 180, 186, 195, 201, 202, 200, 195, 192, 190, 190, 189, 190, 188, 188, 189, 190, 32.36855 + 193, 194, 197, 198, 207, 209, 212, 215, 216, 215, 214, 212, 201, 195, 181, 165, 32.36856 + 152, 148, 150, 154, 164, 163, 164, 167, 176, 187, 199, 206, 220, 217, 214, 212, 32.36857 + 212, 215, 221, 224, 228, 233, 241, 247, 252, 252, 253, 253, 255, 255, 249, 241, 32.36858 + 230, 218, 210, 205, 184, 174, 160, 154, 159, 174, 190, 198, 219, 223, 230, 233, 32.36859 + 236, 235, 236, 236, 240, 241, 241, 241, 236, 231, 224, 221, 199, 177, 140, 101, 32.36860 + 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 124, 155, 193, 32.36861 + 197, 201, 198, 187, 175, 166, 161, 158, 144, 130, 129, 141, 157, 173, 181, 187, 32.36862 + 188, 192, 194, 197, 198, 199, 198, 192, 187, 181, 177, 179, 185, 192, 198, 191, 32.36863 + 189, 183, 180, 178, 177, 177, 178, 179, 179, 181, 184, 185, 188, 190, 191, 196, 32.36864 + 198, 202, 205, 205, 203, 200, 198, 178, 169, 157, 142, 131, 130, 138, 144, 162, 32.36865 + 162, 161, 165, 175, 186, 198, 204, 216, 214, 214, 214, 215, 218, 220, 223, 224, 32.36866 + 233, 246, 252, 253, 251, 249, 248, 255, 255, 251, 241, 230, 220, 213, 212, 200, 32.36867 + 186, 164, 150, 148, 158, 171, 178, 207, 213, 221, 226, 230, 231, 230, 230, 231, 32.36868 + 233, 235, 234, 232, 226, 221, 217, 198, 175, 138, 100, 81, 136, 255, 255, 255, 32.36869 + 255, 255, 255, 255, 255, 255, 255, 255, 146, 128, 174, 179, 183, 184, 179, 173, 32.36870 + 167, 164, 158, 147, 136, 133, 146, 162, 173, 179, 188, 188, 189, 190, 191, 192, 32.36871 + 192, 193, 188, 185, 181, 177, 178, 178, 178, 178, 180, 175, 165, 159, 158, 160, 32.36872 + 163, 165, 168, 168, 169, 172, 175, 179, 183, 185, 186, 189, 188, 185, 184, 183, 32.36873 + 175, 164, 152, 141, 128, 118, 117, 125, 137, 147, 154, 155, 157, 161, 166, 177, 32.36874 + 191, 199, 206, 208, 209, 213, 214, 216, 215, 214, 223, 228, 238, 246, 253, 255, 32.36875 + 253, 250, 255, 255, 250, 239, 229, 221, 215, 212, 205, 194, 176, 152, 133, 129, 32.36876 + 140, 150, 173, 189, 206, 214, 220, 225, 225, 219, 226, 228, 228, 225, 221, 219, 32.36877 + 218, 217, 190, 166, 130, 100, 84, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.36878 + 255, 255, 255, 223, 119, 163, 169, 177, 182, 180, 175, 167, 164, 159, 150, 140, 32.36879 + 137, 145, 159, 171, 179, 186, 187, 187, 188, 189, 190, 190, 191, 187, 183, 180, 32.36880 + 177, 178, 177, 175, 173, 169, 162, 153, 147, 147, 148, 152, 153, 158, 160, 161, 32.36881 + 162, 167, 172, 175, 177, 178, 180, 179, 173, 170, 168, 158, 148, 136, 130, 119, 32.36882 + 115, 117, 126, 138, 146, 150, 146, 143, 146, 154, 166, 177, 183, 196, 198, 202, 32.36883 + 205, 208, 212, 212, 214, 220, 226, 235, 243, 250, 252, 251, 250, 255, 254, 246, 32.36884 + 236, 227, 218, 214, 211, 203, 195, 178, 157, 139, 131, 133, 136, 154, 173, 191, 32.36885 + 203, 214, 221, 222, 219, 220, 221, 220, 218, 214, 211, 210, 211, 188, 165, 131, 32.36886 + 101, 84, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 111, 32.36887 + 146, 155, 168, 176, 179, 176, 169, 165, 161, 155, 146, 141, 145, 156, 169, 177, 32.36888 + 184, 184, 184, 185, 186, 186, 187, 187, 184, 182, 178, 177, 175, 173, 170, 166, 32.36889 + 155, 148, 138, 134, 132, 136, 138, 140, 147, 149, 151, 155, 159, 162, 167, 169, 32.36890 + 168, 169, 165, 157, 151, 145, 136, 127, 115, 113, 112, 113, 118, 129, 140, 146, 32.36891 + 148, 140, 131, 130, 139, 150, 159, 163, 180, 183, 187, 193, 197, 202, 205, 207, 32.36892 + 214, 219, 227, 234, 240, 244, 243, 244, 250, 246, 240, 231, 223, 216, 211, 207, 32.36893 + 201, 193, 178, 161, 143, 130, 121, 117, 134, 149, 169, 187, 200, 210, 213, 212, 32.36894 + 212, 211, 210, 206, 202, 200, 201, 202, 184, 163, 130, 101, 84, 77, 255, 255, 32.36895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 131, 140, 154, 165, 170, 32.36896 + 170, 169, 169, 163, 159, 155, 149, 148, 155, 167, 176, 182, 182, 182, 183, 183, 32.36897 + 184, 184, 184, 179, 178, 177, 175, 173, 170, 163, 159, 145, 136, 127, 122, 121, 32.36898 + 125, 128, 131, 140, 141, 145, 148, 151, 156, 159, 160, 159, 157, 152, 144, 136, 32.36899 + 127, 120, 113, 100, 102, 107, 115, 123, 132, 140, 146, 149, 141, 130, 123, 125, 32.36900 + 132, 140, 147, 164, 167, 171, 176, 181, 186, 190, 191, 199, 204, 213, 220, 226, 32.36901 + 229, 232, 234, 237, 234, 229, 223, 216, 210, 205, 200, 197, 187, 173, 157, 142, 32.36902 + 126, 110, 101, 116, 128, 148, 168, 183, 194, 199, 199, 203, 203, 199, 194, 190, 32.36903 + 188, 191, 193, 179, 159, 128, 102, 84, 77, 255, 255, 255, 255, 255, 255, 255, 32.36904 + 255, 255, 255, 255, 255, 255, 211, 129, 138, 149, 157, 163, 168, 171, 164, 163, 32.36905 + 159, 155, 151, 156, 167, 176, 179, 179, 179, 179, 180, 180, 180, 180, 176, 176, 32.36906 + 173, 172, 170, 164, 156, 152, 137, 128, 118, 111, 112, 115, 121, 125, 133, 134, 32.36907 + 138, 140, 143, 146, 147, 148, 144, 141, 137, 130, 123, 113, 106, 104, 100, 104, 32.36908 + 113, 123, 132, 140, 144, 147, 149, 145, 136, 122, 114, 114, 123, 133, 146, 148, 32.36909 + 152, 155, 159, 164, 167, 170, 180, 187, 196, 204, 209, 213, 216, 220, 222, 221, 32.36910 + 216, 211, 205, 198, 193, 190, 188, 176, 163, 149, 135, 120, 104, 93, 99, 110, 32.36911 + 126, 148, 167, 179, 185, 190, 193, 191, 189, 184, 181, 178, 179, 182, 169, 152, 32.36912 + 126, 101, 84, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36913 + 255, 255, 117, 125, 132, 141, 149, 158, 164, 162, 160, 159, 156, 154, 159, 167, 32.36914 + 172, 173, 173, 173, 174, 174, 174, 174, 174, 173, 172, 170, 168, 164, 159, 153, 32.36915 + 149, 130, 123, 111, 106, 105, 110, 115, 119, 127, 128, 129, 131, 132, 132, 133, 32.36916 + 132, 127, 123, 120, 117, 110, 102, 100, 102, 108, 115, 126, 137, 146, 151, 152, 32.36917 + 152, 153, 150, 141, 126, 109, 102, 109, 116, 127, 127, 128, 131, 135, 139, 142, 32.36918 + 143, 155, 165, 175, 185, 190, 195, 200, 204, 204, 202, 200, 196, 191, 184, 178, 32.36919 + 175, 174, 165, 153, 142, 130, 116, 104, 94, 86, 92, 106, 129, 151, 165, 176, 32.36920 + 183, 181, 179, 178, 173, 169, 166, 167, 169, 159, 145, 122, 98, 83, 77, 255, 32.36921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 113, 119, 32.36922 + 128, 136, 145, 152, 157, 156, 155, 154, 155, 159, 164, 169, 169, 169, 169, 169, 32.36923 + 169, 168, 168, 168, 170, 169, 166, 164, 160, 156, 150, 147, 128, 120, 109, 103, 32.36924 + 104, 108, 113, 117, 124, 125, 126, 124, 124, 123, 122, 120, 112, 109, 109, 109, 32.36925 + 106, 100, 101, 107, 119, 127, 141, 153, 160, 162, 162, 161, 162, 158, 148, 130, 32.36926 + 112, 101, 100, 102, 106, 106, 108, 109, 113, 116, 119, 122, 127, 138, 152, 164, 32.36927 + 169, 174, 179, 183, 186, 187, 184, 183, 177, 170, 162, 157, 158, 154, 149, 140, 32.36928 + 129, 116, 107, 99, 81, 82, 94, 115, 136, 150, 162, 170, 167, 167, 165, 162, 32.36929 + 158, 155, 155, 155, 151, 140, 118, 96, 82, 77, 255, 255, 255, 255, 255, 255, 32.36930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 113, 120, 129, 136, 142, 154, 32.36931 + 153, 151, 151, 154, 159, 163, 166, 166, 166, 166, 166, 165, 165, 165, 165, 170, 32.36932 + 167, 163, 161, 158, 155, 150, 147, 129, 121, 111, 104, 105, 110, 115, 119, 124, 32.36933 + 125, 124, 124, 123, 119, 117, 115, 106, 103, 105, 107, 105, 100, 105, 112, 128, 32.36934 + 136, 148, 162, 169, 171, 169, 167, 172, 163, 150, 134, 118, 105, 98, 95, 93, 32.36935 + 93, 93, 96, 99, 104, 107, 109, 106, 119, 135, 147, 154, 158, 163, 166, 176, 32.36936 + 176, 176, 172, 167, 160, 153, 147, 148, 147, 145, 140, 131, 118, 109, 103, 84, 32.36937 + 82, 89, 108, 127, 140, 150, 161, 157, 159, 158, 155, 151, 148, 145, 145, 147, 32.36938 + 135, 115, 95, 82, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36939 + 255, 255, 255, 255, 255, 255, 207, 115, 115, 116, 120, 126, 131, 131, 138, 151, 32.36940 + 162, 166, 164, 162, 159, 157, 157, 157, 159, 160, 165, 166, 165, 162, 157, 154, 32.36941 + 151, 152, 132, 130, 119, 107, 105, 110, 114, 115, 117, 119, 120, 117, 112, 107, 32.36942 + 108, 110, 98, 94, 89, 90, 92, 96, 107, 116, 135, 146, 159, 174, 183, 190, 32.36943 + 193, 195, 187, 185, 172, 155, 136, 118, 99, 84, 80, 81, 80, 80, 82, 85, 32.36944 + 89, 92, 94, 100, 109, 120, 128, 134, 138, 138, 137, 142, 148, 147, 141, 134, 32.36945 + 130, 128, 139, 146, 149, 146, 141, 133, 120, 111, 97, 93, 92, 98, 106, 115, 32.36946 + 128, 140, 146, 146, 144, 140, 133, 129, 128, 130, 127, 121, 111, 96, 82, 77, 32.36947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36948 + 255, 255, 207, 111, 110, 110, 114, 116, 121, 132, 148, 160, 164, 162, 160, 157, 32.36949 + 155, 154, 154, 156, 157, 163, 163, 164, 161, 157, 154, 152, 153, 141, 136, 125, 32.36950 + 111, 107, 111, 115, 116, 118, 118, 117, 115, 112, 107, 106, 105, 98, 93, 90, 32.36951 + 93, 95, 103, 115, 125, 141, 149, 163, 176, 184, 189, 193, 195, 193, 190, 180, 32.36952 + 163, 145, 128, 108, 93, 81, 80, 78, 76, 76, 78, 82, 85, 87, 92, 99, 32.36953 + 108, 114, 119, 122, 122, 121, 127, 131, 133, 130, 125, 124, 125, 139, 147, 153, 32.36954 + 151, 147, 138, 127, 115, 101, 95, 91, 93, 101, 110, 120, 131, 140, 141, 140, 32.36955 + 135, 129, 125, 124, 127, 124, 119, 109, 95, 82, 77, 255, 255, 255, 255, 255, 32.36956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 32.36957 + 102, 103, 104, 111, 125, 145, 154, 157, 158, 156, 152, 150, 148, 148, 150, 150, 32.36958 + 158, 160, 160, 160, 156, 156, 156, 157, 149, 143, 133, 117, 111, 114, 117, 116, 32.36959 + 118, 117, 115, 113, 110, 107, 101, 98, 96, 93, 92, 96, 103, 112, 127, 140, 32.36960 + 153, 160, 169, 180, 185, 191, 196, 198, 199, 198, 189, 174, 157, 139, 119, 103, 32.36961 + 88, 84, 79, 75, 74, 74, 76, 77, 80, 82, 88, 93, 98, 100, 102, 102, 32.36962 + 102, 107, 112, 116, 116, 118, 121, 125, 142, 151, 158, 160, 155, 147, 134, 121, 32.36963 + 109, 97, 88, 88, 94, 103, 112, 120, 132, 132, 132, 127, 122, 119, 119, 121, 32.36964 + 121, 116, 108, 95, 82, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 134, 105, 121, 32.36966 + 140, 150, 150, 154, 152, 149, 146, 145, 145, 146, 146, 154, 156, 157, 155, 155, 32.36967 + 156, 158, 160, 154, 149, 137, 122, 115, 117, 122, 122, 120, 117, 113, 111, 109, 32.36968 + 105, 98, 91, 97, 92, 94, 102, 112, 123, 139, 153, 166, 172, 179, 186, 191, 32.36969 + 196, 198, 201, 200, 201, 196, 182, 167, 151, 130, 115, 97, 92, 84, 78, 76, 32.36970 + 76, 77, 79, 77, 78, 80, 83, 86, 87, 87, 87, 90, 94, 101, 106, 110, 32.36971 + 117, 126, 133, 147, 157, 167, 167, 163, 153, 138, 124, 113, 100, 88, 84, 88, 32.36972 + 95, 103, 111, 121, 125, 126, 123, 117, 113, 116, 119, 119, 115, 108, 96, 84, 32.36973 + 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 119, 137, 145, 144, 150, 148, 32.36975 + 145, 142, 141, 141, 142, 143, 150, 151, 153, 153, 153, 157, 160, 163, 155, 150, 32.36976 + 138, 126, 119, 122, 126, 127, 124, 120, 114, 110, 107, 103, 95, 89, 96, 95, 32.36977 + 99, 108, 119, 133, 149, 163, 176, 180, 187, 192, 194, 198, 200, 203, 202, 204, 32.36978 + 201, 192, 179, 164, 146, 129, 110, 101, 90, 83, 79, 80, 79, 79, 75, 76, 32.36979 + 77, 78, 79, 80, 81, 81, 84, 89, 96, 102, 109, 118, 130, 140, 155, 164, 32.36980 + 173, 174, 168, 157, 140, 126, 117, 102, 89, 83, 85, 90, 100, 107, 116, 121, 32.36981 + 124, 119, 113, 112, 115, 120, 121, 117, 110, 97, 85, 78, 255, 255, 255, 255, 32.36982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36983 + 255, 255, 255, 255, 255, 119, 135, 144, 144, 144, 142, 140, 137, 137, 137, 139, 32.36984 + 140, 148, 149, 151, 151, 154, 156, 161, 164, 156, 153, 141, 128, 124, 127, 130, 32.36985 + 131, 127, 124, 117, 112, 106, 99, 94, 90, 97, 97, 102, 115, 126, 139, 154, 32.36986 + 167, 179, 182, 189, 191, 194, 195, 198, 199, 202, 205, 204, 198, 190, 179, 162, 32.36987 + 148, 123, 113, 99, 88, 84, 82, 81, 79, 76, 76, 76, 76, 77, 79, 80, 32.36988 + 81, 85, 90, 96, 102, 109, 121, 134, 142, 161, 170, 178, 177, 172, 161, 144, 32.36989 + 132, 119, 108, 95, 87, 85, 86, 96, 105, 112, 117, 121, 118, 112, 111, 116, 32.36990 + 122, 124, 119, 110, 97, 83, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.36992 + 123, 135, 142, 144, 137, 135, 133, 132, 132, 133, 135, 136, 145, 146, 149, 150, 32.36993 + 152, 156, 160, 166, 161, 156, 145, 131, 126, 129, 133, 133, 132, 128, 123, 113, 32.36994 + 104, 97, 94, 92, 97, 99, 107, 120, 133, 143, 156, 168, 174, 178, 184, 188, 32.36995 + 189, 189, 191, 192, 199, 203, 204, 199, 193, 186, 173, 161, 142, 130, 111, 98, 32.36996 + 91, 87, 84, 81, 78, 77, 77, 78, 80, 84, 87, 90, 91, 96, 101, 106, 32.36997 + 112, 123, 136, 144, 164, 174, 181, 181, 176, 165, 151, 138, 123, 115, 102, 93, 32.36998 + 86, 84, 93, 105, 108, 115, 119, 117, 110, 109, 117, 124, 125, 119, 109, 94, 32.36999 + 80, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 141, 142, 133, 32.37001 + 132, 130, 129, 129, 131, 133, 135, 145, 146, 149, 149, 152, 155, 162, 165, 165, 32.37002 + 160, 147, 133, 128, 131, 134, 133, 135, 133, 125, 114, 103, 94, 94, 95, 99, 32.37003 + 101, 109, 123, 135, 144, 157, 167, 170, 173, 179, 184, 185, 185, 185, 185, 195, 32.37004 + 199, 199, 196, 192, 187, 175, 164, 157, 142, 122, 107, 97, 93, 87, 83, 81, 32.37005 + 80, 80, 81, 86, 91, 95, 97, 97, 101, 107, 112, 116, 126, 137, 145, 165, 32.37006 + 174, 182, 183, 178, 170, 156, 144, 127, 120, 110, 97, 85, 82, 90, 103, 107, 32.37007 + 113, 118, 116, 110, 108, 117, 124, 126, 119, 108, 92, 78, 72, 255, 255, 255, 32.37008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37009 + 255, 255, 255, 255, 255, 255, 255, 138, 134, 130, 132, 130, 129, 128, 128, 130, 32.37010 + 132, 134, 135, 137, 139, 142, 145, 150, 157, 161, 164, 159, 149, 137, 129, 128, 32.37011 + 133, 138, 142, 137, 131, 118, 108, 102, 104, 106, 110, 110, 116, 124, 134, 139, 32.37012 + 148, 157, 159, 160, 163, 164, 168, 169, 171, 171, 183, 181, 180, 180, 180, 178, 32.37013 + 176, 172, 159, 150, 136, 122, 112, 102, 95, 90, 88, 88, 88, 89, 90, 92, 32.37014 + 94, 95, 102, 109, 114, 119, 125, 133, 144, 154, 164, 171, 180, 185, 182, 169, 32.37015 + 155, 144, 135, 125, 112, 98, 85, 79, 84, 92, 105, 116, 124, 123, 118, 119, 32.37016 + 124, 128, 123, 110, 97, 87, 78, 133, 255, 255, 255, 255, 255, 255, 255, 255, 32.37017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37018 + 255, 255, 135, 133, 131, 130, 128, 127, 126, 126, 128, 130, 132, 134, 135, 138, 32.37019 + 140, 144, 150, 156, 162, 165, 160, 150, 137, 128, 127, 133, 138, 144, 142, 136, 32.37020 + 126, 116, 110, 110, 113, 114, 113, 115, 122, 127, 131, 138, 146, 144, 146, 148, 32.37021 + 152, 155, 159, 161, 161, 169, 168, 169, 169, 168, 167, 163, 162, 155, 146, 134, 32.37022 + 122, 112, 104, 96, 92, 89, 90, 90, 92, 94, 96, 98, 99, 102, 108, 114, 32.37023 + 117, 124, 131, 144, 154, 163, 170, 179, 184, 182, 170, 157, 148, 134, 123, 111, 32.37024 + 99, 87, 80, 85, 93, 105, 117, 126, 124, 120, 124, 127, 130, 121, 109, 96, 32.37025 + 86, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 132, 130, 32.37027 + 126, 125, 124, 124, 124, 125, 127, 128, 131, 132, 134, 137, 142, 148, 156, 162, 32.37028 + 167, 162, 151, 138, 128, 126, 133, 139, 150, 148, 145, 137, 128, 121, 119, 122, 32.37029 + 113, 108, 105, 107, 108, 109, 115, 121, 121, 122, 125, 128, 134, 138, 141, 142, 32.37030 + 147, 147, 148, 147, 148, 147, 146, 146, 143, 137, 131, 121, 115, 108, 101, 97, 32.37031 + 93, 93, 94, 96, 98, 101, 103, 105, 102, 106, 111, 116, 122, 132, 144, 154, 32.37032 + 158, 164, 172, 176, 175, 165, 155, 147, 130, 120, 109, 99, 87, 83, 87, 97, 32.37033 + 107, 117, 126, 126, 125, 129, 132, 134, 118, 107, 95, 86, 76, 255, 255, 255, 32.37034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 128, 125, 125, 124, 124, 124, 32.37036 + 125, 126, 127, 126, 127, 131, 132, 138, 146, 154, 161, 168, 164, 154, 140, 128, 32.37037 + 125, 132, 138, 155, 156, 156, 149, 140, 132, 130, 128, 111, 103, 93, 91, 89, 32.37038 + 88, 92, 96, 96, 96, 98, 103, 108, 111, 115, 117, 123, 124, 125, 126, 124, 32.37039 + 124, 125, 126, 128, 124, 121, 117, 113, 109, 105, 101, 96, 97, 97, 98, 100, 32.37040 + 101, 103, 104, 99, 103, 107, 111, 118, 130, 140, 148, 148, 153, 159, 161, 159, 32.37041 + 154, 146, 140, 123, 116, 106, 96, 88, 86, 91, 100, 113, 121, 129, 131, 131, 32.37042 + 135, 138, 135, 115, 105, 95, 85, 75, 255, 255, 255, 255, 255, 255, 255, 255, 32.37043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37044 + 255, 255, 255, 255, 127, 125, 124, 123, 123, 123, 124, 124, 125, 126, 121, 123, 32.37045 + 125, 128, 134, 142, 151, 158, 169, 166, 157, 143, 129, 125, 131, 137, 159, 163, 32.37046 + 165, 161, 152, 143, 137, 134, 112, 100, 86, 78, 74, 72, 73, 78, 74, 75, 32.37047 + 77, 81, 85, 90, 95, 96, 102, 104, 106, 106, 104, 104, 106, 109, 111, 110, 32.37048 + 107, 108, 107, 107, 103, 100, 102, 101, 101, 100, 100, 101, 102, 102, 96, 99, 32.37049 + 102, 107, 113, 121, 129, 134, 135, 136, 140, 142, 140, 137, 133, 131, 116, 109, 32.37050 + 103, 98, 93, 91, 99, 110, 122, 129, 135, 136, 137, 139, 139, 135, 112, 104, 32.37051 + 95, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 124, 32.37053 + 121, 122, 123, 123, 123, 124, 124, 124, 124, 118, 119, 121, 124, 128, 136, 147, 32.37054 + 154, 168, 168, 161, 146, 131, 125, 129, 135, 158, 165, 173, 172, 166, 156, 147, 32.37055 + 144, 115, 98, 80, 67, 62, 58, 59, 62, 62, 62, 65, 69, 74, 81, 85, 32.37056 + 89, 95, 97, 99, 98, 95, 95, 100, 103, 104, 104, 103, 103, 104, 102, 101, 32.37057 + 98, 102, 102, 101, 99, 99, 99, 99, 99, 96, 97, 98, 101, 103, 107, 109, 32.37058 + 111, 115, 115, 118, 119, 119, 120, 120, 120, 113, 108, 104, 102, 101, 103, 114, 32.37059 + 126, 133, 138, 139, 140, 142, 143, 138, 131, 109, 103, 96, 143, 255, 255, 255, 32.37060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 121, 118, 118, 119, 120, 32.37062 + 120, 120, 120, 120, 116, 116, 116, 119, 124, 133, 142, 150, 167, 168, 163, 150, 32.37063 + 134, 125, 127, 132, 157, 165, 176, 180, 177, 168, 160, 156, 127, 108, 84, 69, 32.37064 + 59, 55, 54, 57, 57, 58, 62, 67, 74, 83, 90, 94, 102, 106, 107, 106, 32.37065 + 102, 102, 105, 111, 114, 113, 109, 108, 106, 105, 104, 101, 102, 102, 101, 100, 32.37066 + 100, 100, 100, 101, 99, 99, 97, 96, 95, 91, 88, 85, 90, 90, 92, 95, 32.37067 + 98, 103, 107, 109, 114, 110, 110, 111, 113, 118, 130, 143, 143, 145, 146, 143, 32.37068 + 145, 144, 137, 127, 108, 103, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37070 + 255, 255, 255, 255, 255, 255, 120, 116, 117, 118, 118, 119, 119, 118, 118, 115, 32.37071 + 115, 115, 117, 121, 129, 139, 146, 166, 169, 165, 152, 135, 125, 127, 131, 154, 32.37072 + 165, 179, 186, 183, 175, 169, 164, 146, 123, 98, 80, 68, 62, 61, 63, 55, 32.37073 + 59, 63, 68, 78, 88, 97, 101, 116, 118, 120, 118, 114, 113, 116, 123, 128, 32.37074 + 125, 120, 116, 115, 113, 108, 107, 101, 100, 100, 100, 100, 101, 102, 103, 103, 32.37075 + 100, 99, 95, 89, 81, 74, 68, 68, 69, 71, 77, 83, 90, 97, 102, 116, 32.37076 + 114, 115, 119, 123, 129, 142, 155, 148, 150, 149, 147, 146, 145, 135, 124, 108, 32.37077 + 103, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37079 + 255, 120, 112, 112, 111, 112, 116, 117, 116, 116, 112, 111, 111, 112, 115, 123, 32.37080 + 132, 137, 159, 164, 166, 157, 140, 127, 123, 124, 147, 160, 177, 189, 190, 186, 32.37081 + 183, 182, 162, 159, 147, 126, 107, 92, 79, 69, 71, 65, 64, 66, 77, 93, 32.37082 + 106, 114, 129, 138, 143, 136, 132, 135, 145, 152, 161, 155, 148, 143, 146, 145, 32.37083 + 136, 122, 116, 105, 106, 116, 114, 112, 114, 110, 104, 114, 113, 107, 101, 82, 32.37084 + 62, 59, 51, 55, 60, 67, 76, 87, 96, 103, 118, 129, 137, 139, 145, 155, 32.37085 + 160, 159, 162, 152, 148, 152, 150, 135, 118, 109, 97, 97, 255, 255, 255, 255, 32.37086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 113, 112, 111, 32.37088 + 112, 113, 116, 116, 114, 108, 109, 109, 109, 112, 118, 126, 133, 155, 161, 165, 32.37089 + 158, 145, 130, 123, 122, 141, 155, 175, 189, 192, 190, 187, 186, 177, 177, 171, 32.37090 + 159, 145, 128, 105, 88, 73, 70, 68, 71, 82, 94, 106, 112, 132, 143, 152, 32.37091 + 150, 149, 158, 174, 183, 181, 171, 160, 161, 169, 173, 162, 145, 128, 113, 118, 32.37092 + 129, 129, 126, 124, 118, 114, 122, 122, 114, 107, 85, 62, 56, 48, 53, 60, 32.37093 + 70, 81, 95, 108, 117, 137, 142, 149, 150, 157, 166, 168, 167, 158, 154, 154, 32.37094 + 158, 154, 140, 123, 113, 108, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37096 + 255, 255, 255, 255, 255, 255, 255, 117, 115, 113, 111, 111, 112, 113, 112, 111, 32.37097 + 105, 105, 106, 106, 107, 112, 119, 125, 149, 157, 163, 160, 149, 133, 123, 118, 32.37098 + 134, 149, 171, 187, 195, 195, 192, 193, 192, 192, 189, 184, 177, 165, 142, 123, 32.37099 + 98, 91, 81, 78, 83, 96, 107, 113, 135, 150, 162, 163, 164, 175, 196, 211, 32.37100 + 202, 188, 173, 176, 193, 201, 187, 166, 137, 122, 127, 142, 144, 140, 133, 124, 32.37101 + 123, 131, 128, 121, 114, 89, 61, 51, 51, 58, 68, 81, 94, 112, 126, 134, 32.37102 + 159, 161, 164, 167, 173, 179, 177, 172, 151, 150, 152, 155, 149, 134, 120, 111, 32.37103 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37105 + 255, 255, 209, 116, 114, 111, 109, 109, 110, 108, 107, 102, 103, 103, 103, 103, 32.37106 + 107, 113, 117, 141, 149, 161, 163, 154, 138, 124, 114, 127, 144, 166, 185, 197, 32.37107 + 198, 197, 195, 204, 205, 203, 198, 194, 190, 178, 168, 139, 125, 107, 92, 89, 32.37108 + 97, 109, 115, 136, 151, 162, 162, 164, 176, 197, 212, 209, 196, 181, 183, 199, 32.37109 + 208, 194, 175, 144, 125, 127, 145, 151, 146, 141, 133, 131, 138, 133, 125, 116, 32.37110 + 92, 62, 49, 66, 73, 85, 100, 117, 133, 148, 156, 175, 175, 178, 183, 187, 32.37111 + 186, 177, 168, 147, 147, 150, 151, 148, 140, 133, 129, 255, 255, 255, 255, 255, 32.37112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 115, 32.37114 + 111, 108, 107, 105, 104, 102, 100, 100, 100, 101, 102, 104, 109, 112, 131, 141, 32.37115 + 155, 164, 160, 145, 125, 113, 124, 138, 161, 181, 193, 198, 198, 195, 212, 219, 32.37116 + 222, 217, 208, 205, 200, 196, 175, 162, 142, 124, 114, 111, 112, 114, 130, 144, 32.37117 + 157, 159, 160, 173, 193, 207, 206, 198, 189, 189, 197, 203, 194, 178, 150, 129, 32.37118 + 129, 148, 153, 150, 147, 143, 141, 147, 139, 128, 117, 94, 66, 58, 81, 91, 32.37119 + 106, 124, 140, 157, 170, 178, 184, 185, 189, 195, 197, 188, 171, 159, 147, 150, 32.37120 + 154, 160, 167, 176, 183, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 117, 111, 107, 103, 102, 99, 32.37123 + 99, 98, 98, 98, 97, 99, 102, 107, 110, 122, 134, 150, 163, 163, 149, 129, 32.37124 + 114, 119, 132, 154, 176, 190, 197, 197, 196, 209, 222, 234, 232, 222, 211, 202, 32.37125 + 195, 189, 184, 173, 162, 151, 137, 126, 119, 129, 141, 152, 155, 159, 172, 188, 32.37126 + 198, 196, 193, 189, 188, 193, 197, 189, 179, 156, 133, 134, 151, 155, 149, 149, 32.37127 + 147, 150, 155, 146, 133, 121, 101, 83, 81, 100, 112, 130, 150, 166, 181, 190, 32.37128 + 196, 192, 192, 197, 203, 199, 182, 163, 151, 142, 149, 159, 174, 198, 222, 244, 32.37129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37131 + 255, 255, 255, 255, 122, 118, 110, 105, 102, 99, 97, 96, 93, 93, 95, 95, 32.37132 + 97, 99, 104, 107, 116, 127, 146, 162, 166, 154, 132, 116, 114, 126, 146, 168, 32.37133 + 186, 195, 198, 197, 204, 217, 232, 234, 228, 216, 202, 192, 192, 190, 188, 183, 32.37134 + 175, 165, 154, 145, 142, 149, 155, 154, 156, 162, 169, 173, 172, 171, 170, 173, 32.37135 + 182, 186, 179, 168, 153, 132, 133, 152, 151, 141, 138, 139, 145, 153, 145, 132, 32.37136 + 124, 113, 107, 116, 130, 141, 159, 177, 189, 198, 203, 205, 195, 195, 198, 201, 32.37137 + 191, 171, 154, 147, 139, 150, 168, 190, 220, 250, 255, 255, 255, 255, 255, 255, 32.37138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 124, 32.37140 + 118, 110, 104, 100, 98, 96, 95, 91, 91, 94, 94, 94, 97, 101, 106, 113, 32.37141 + 124, 142, 161, 166, 156, 134, 116, 109, 121, 141, 164, 183, 195, 200, 199, 204, 32.37142 + 215, 226, 231, 230, 223, 211, 197, 195, 190, 188, 185, 184, 180, 177, 174, 155, 32.37143 + 160, 159, 153, 148, 147, 148, 146, 148, 147, 150, 156, 168, 176, 168, 155, 146, 32.37144 + 127, 130, 148, 144, 128, 124, 126, 134, 143, 138, 129, 126, 123, 126, 141, 156, 32.37145 + 167, 183, 196, 204, 207, 206, 207, 195, 193, 196, 196, 183, 162, 146, 141, 146, 32.37146 + 160, 178, 203, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 120, 116, 107, 100, 98, 32.37149 + 96, 92, 93, 91, 89, 88, 89, 93, 97, 100, 106, 117, 133, 147, 159, 156, 32.37150 + 140, 121, 110, 113, 127, 152, 177, 190, 196, 201, 205, 210, 218, 229, 232, 227, 32.37151 + 212, 198, 201, 193, 186, 183, 181, 180, 184, 190, 194, 191, 185, 180, 172, 162, 32.37152 + 150, 143, 130, 127, 128, 136, 147, 152, 150, 145, 124, 124, 127, 129, 130, 128, 32.37153 + 124, 120, 125, 129, 134, 139, 142, 150, 160, 167, 176, 189, 203, 210, 211, 209, 32.37154 + 201, 193, 201, 197, 192, 179, 161, 143, 135, 137, 144, 162, 181, 213, 255, 255, 32.37155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37157 + 255, 255, 255, 255, 255, 255, 121, 118, 109, 102, 98, 93, 90, 92, 89, 88, 32.37158 + 87, 89, 92, 96, 100, 102, 113, 129, 142, 154, 153, 138, 121, 108, 110, 122, 32.37159 + 146, 171, 186, 194, 199, 202, 206, 213, 223, 229, 226, 214, 206, 199, 191, 183, 32.37160 + 180, 179, 178, 182, 189, 196, 196, 198, 199, 193, 180, 166, 153, 144, 138, 133, 32.37161 + 133, 138, 140, 134, 129, 116, 115, 116, 120, 123, 123, 122, 120, 124, 130, 139, 32.37162 + 146, 152, 158, 165, 172, 178, 190, 202, 206, 207, 204, 198, 190, 197, 191, 183, 32.37163 + 169, 151, 135, 131, 134, 148, 170, 196, 235, 255, 255, 255, 255, 255, 255, 255, 32.37164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37166 + 255, 149, 119, 112, 104, 100, 94, 86, 89, 89, 86, 86, 87, 91, 94, 96, 32.37167 + 97, 108, 122, 135, 146, 147, 137, 123, 107, 106, 115, 138, 163, 180, 191, 197, 32.37168 + 200, 202, 209, 217, 223, 223, 217, 211, 199, 191, 182, 179, 178, 178, 182, 190, 32.37169 + 197, 199, 202, 206, 205, 197, 188, 180, 175, 167, 156, 149, 147, 142, 135, 128, 32.37170 + 117, 117, 118, 120, 125, 128, 128, 127, 132, 141, 151, 159, 162, 167, 170, 174, 32.37171 + 184, 194, 202, 204, 203, 201, 195, 189, 189, 182, 171, 156, 140, 129, 131, 138, 32.37172 + 159, 188, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 118, 114, 109, 32.37175 + 103, 95, 88, 89, 88, 85, 83, 86, 88, 92, 94, 93, 102, 114, 128, 139, 32.37176 + 143, 136, 126, 108, 104, 110, 130, 153, 173, 188, 197, 198, 199, 203, 211, 216, 32.37177 + 219, 216, 214, 201, 192, 184, 179, 176, 175, 181, 189, 196, 194, 194, 194, 198, 32.37178 + 200, 202, 204, 201, 194, 185, 175, 170, 162, 152, 144, 137, 135, 134, 137, 142, 32.37179 + 145, 147, 147, 152, 158, 165, 168, 169, 169, 172, 174, 189, 197, 202, 201, 198, 32.37180 + 196, 192, 187, 183, 172, 158, 142, 130, 127, 138, 152, 179, 225, 255, 255, 255, 32.37181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37183 + 255, 255, 255, 255, 255, 255, 255, 255, 115, 115, 112, 108, 101, 94, 89, 88, 32.37184 + 85, 83, 83, 86, 88, 91, 91, 100, 110, 119, 131, 139, 137, 131, 112, 106, 32.37185 + 107, 124, 146, 166, 184, 196, 199, 200, 203, 207, 212, 215, 215, 214, 202, 191, 32.37186 + 182, 176, 172, 170, 174, 181, 187, 186, 183, 183, 186, 192, 199, 205, 202, 198, 32.37187 + 193, 190, 183, 177, 167, 160, 156, 156, 154, 155, 158, 162, 164, 164, 170, 171, 32.37188 + 174, 173, 170, 170, 174, 178, 192, 198, 202, 199, 196, 194, 191, 187, 179, 166, 32.37189 + 146, 129, 121, 126, 146, 165, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37192 + 255, 255, 255, 207, 114, 114, 112, 106, 99, 92, 89, 86, 83, 82, 84, 86, 32.37193 + 88, 90, 97, 106, 114, 124, 134, 137, 134, 119, 110, 105, 118, 137, 159, 180, 32.37194 + 193, 197, 199, 202, 206, 211, 213, 212, 212, 201, 192, 182, 174, 168, 163, 162, 32.37195 + 167, 175, 177, 179, 179, 179, 180, 182, 184, 187, 186, 187, 189, 186, 180, 173, 32.37196 + 166, 167, 164, 162, 163, 167, 169, 171, 171, 175, 174, 175, 173, 171, 173, 178, 32.37197 + 184, 190, 196, 199, 196, 193, 192, 189, 185, 174, 158, 137, 121, 117, 132, 161, 32.37198 + 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 32.37201 + 114, 114, 109, 103, 94, 93, 87, 83, 81, 82, 83, 86, 90, 95, 101, 108, 32.37202 + 117, 130, 135, 135, 125, 112, 104, 111, 129, 152, 173, 188, 192, 197, 202, 208, 32.37203 + 210, 213, 212, 212, 206, 196, 186, 177, 168, 160, 156, 158, 161, 165, 172, 174, 32.37204 + 172, 169, 170, 170, 173, 174, 175, 178, 177, 174, 170, 166, 167, 165, 164, 166, 32.37205 + 171, 173, 174, 173, 173, 175, 174, 173, 171, 174, 179, 185, 189, 195, 198, 195, 32.37206 + 193, 192, 190, 186, 166, 150, 130, 118, 123, 149, 189, 232, 255, 255, 255, 255, 32.37207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 114, 109, 104, 96, 32.37210 + 94, 88, 84, 82, 81, 82, 83, 89, 94, 99, 104, 115, 126, 133, 135, 127, 32.37211 + 113, 103, 108, 125, 147, 170, 185, 189, 195, 203, 208, 211, 214, 213, 213, 210, 32.37212 + 201, 191, 182, 171, 160, 155, 156, 152, 156, 162, 163, 163, 163, 166, 168, 164, 32.37213 + 164, 164, 164, 164, 163, 162, 160, 166, 165, 166, 169, 174, 176, 176, 175, 173, 32.37214 + 174, 176, 174, 172, 172, 177, 181, 186, 192, 196, 194, 192, 192, 190, 186, 157, 32.37215 + 142, 126, 119, 132, 165, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37218 + 255, 255, 255, 255, 255, 255, 208, 114, 109, 107, 104, 102, 94, 88, 83, 80, 32.37219 + 81, 80, 91, 95, 98, 104, 111, 120, 132, 139, 133, 122, 110, 107, 117, 138, 32.37220 + 158, 172, 185, 191, 197, 201, 204, 208, 210, 211, 201, 201, 198, 190, 177, 166, 32.37221 + 158, 156, 153, 154, 156, 157, 158, 159, 159, 159, 158, 155, 154, 152, 151, 149, 32.37222 + 149, 149, 146, 151, 155, 159, 159, 160, 163, 167, 163, 165, 164, 166, 169, 175, 32.37223 + 178, 181, 191, 194, 196, 196, 196, 195, 186, 175, 154, 136, 125, 138, 174, 211, 32.37224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37227 + 255, 255, 112, 109, 108, 106, 102, 95, 89, 84, 82, 82, 81, 91, 93, 97, 32.37228 + 102, 110, 119, 131, 137, 135, 124, 111, 106, 114, 133, 155, 168, 180, 184, 191, 32.37229 + 196, 200, 202, 206, 208, 201, 200, 195, 187, 177, 168, 161, 157, 155, 155, 155, 32.37230 + 154, 154, 154, 154, 154, 153, 152, 151, 148, 147, 146, 146, 144, 141, 146, 150, 32.37231 + 154, 155, 158, 160, 163, 160, 161, 161, 165, 168, 173, 177, 181, 191, 194, 196, 32.37232 + 195, 196, 192, 181, 168, 131, 127, 137, 170, 211, 255, 255, 255, 255, 255, 255, 32.37233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 108, 107, 32.37236 + 107, 104, 97, 90, 87, 84, 83, 85, 91, 93, 97, 101, 108, 116, 126, 134, 32.37237 + 137, 125, 112, 103, 108, 126, 147, 161, 171, 176, 183, 190, 194, 197, 203, 205, 32.37238 + 201, 198, 192, 187, 179, 172, 165, 160, 159, 158, 155, 153, 151, 151, 151, 151, 32.37239 + 150, 149, 148, 145, 143, 140, 140, 139, 140, 143, 146, 151, 152, 154, 157, 161, 32.37240 + 156, 156, 159, 162, 165, 172, 177, 180, 193, 195, 198, 196, 194, 187, 174, 160, 32.37241 + 137, 139, 154, 184, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 108, 111, 106, 100, 94, 89, 32.37245 + 87, 87, 86, 91, 92, 95, 99, 106, 113, 123, 129, 137, 127, 113, 102, 101, 32.37246 + 117, 137, 153, 163, 168, 176, 183, 189, 194, 200, 205, 202, 198, 192, 187, 184, 32.37247 + 180, 173, 166, 165, 163, 159, 156, 154, 154, 155, 156, 157, 155, 150, 147, 144, 32.37248 + 142, 138, 138, 143, 145, 148, 151, 154, 156, 158, 160, 155, 156, 157, 161, 166, 32.37249 + 172, 179, 182, 193, 198, 199, 196, 193, 183, 167, 152, 132, 152, 187, 236, 255, 32.37250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37253 + 255, 255, 255, 255, 205, 108, 112, 107, 102, 96, 91, 88, 88, 88, 91, 93, 32.37254 + 94, 98, 102, 110, 118, 124, 135, 127, 114, 102, 99, 108, 127, 143, 155, 161, 32.37255 + 169, 178, 185, 193, 201, 205, 204, 200, 195, 192, 191, 187, 181, 176, 172, 170, 32.37256 + 167, 165, 164, 164, 165, 167, 169, 167, 163, 159, 154, 151, 148, 147, 153, 153, 32.37257 + 154, 156, 157, 160, 161, 162, 157, 159, 160, 164, 169, 176, 181, 184, 194, 198, 32.37258 + 200, 196, 190, 178, 159, 142, 164, 185, 219, 255, 255, 255, 255, 255, 255, 255, 32.37259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37262 + 206, 113, 108, 102, 96, 91, 89, 89, 90, 91, 92, 93, 95, 99, 107, 114, 32.37263 + 120, 129, 125, 117, 104, 97, 103, 118, 132, 149, 154, 163, 172, 180, 191, 198, 32.37264 + 204, 205, 205, 202, 202, 201, 197, 192, 189, 180, 179, 177, 176, 175, 176, 177, 32.37265 + 177, 184, 182, 180, 176, 171, 170, 167, 167, 168, 166, 163, 163, 165, 167, 166, 32.37266 + 165, 164, 164, 167, 169, 175, 180, 187, 190, 196, 200, 201, 196, 186, 169, 146, 32.37267 + 128, 168, 193, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 108, 104, 96, 32.37271 + 92, 89, 90, 90, 90, 92, 93, 94, 97, 103, 111, 116, 121, 123, 118, 107, 32.37272 + 98, 98, 110, 122, 141, 145, 154, 163, 175, 185, 194, 202, 206, 207, 211, 212, 32.37273 + 209, 204, 200, 198, 190, 190, 189, 188, 188, 187, 186, 186, 197, 195, 194, 193, 32.37274 + 193, 191, 192, 192, 186, 182, 179, 177, 177, 177, 174, 172, 171, 171, 174, 176, 32.37275 + 181, 187, 192, 195, 200, 202, 202, 193, 180, 159, 131, 110, 98, 173, 255, 255, 32.37276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37279 + 255, 255, 255, 255, 255, 255, 255, 114, 110, 104, 96, 92, 89, 90, 90, 90, 32.37280 + 90, 92, 92, 96, 102, 110, 115, 117, 121, 119, 110, 98, 97, 107, 117, 133, 32.37281 + 140, 148, 159, 170, 180, 191, 197, 206, 212, 218, 218, 214, 209, 206, 205, 202, 32.37282 + 202, 201, 201, 199, 197, 195, 194, 204, 204, 202, 204, 205, 207, 207, 208, 201, 32.37283 + 197, 192, 188, 188, 188, 184, 182, 176, 177, 177, 180, 184, 191, 195, 199, 202, 32.37284 + 203, 202, 192, 174, 150, 120, 97, 87, 255, 255, 255, 255, 255, 255, 255, 255, 32.37285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37288 + 255, 255, 206, 109, 106, 105, 100, 96, 91, 90, 91, 89, 89, 88, 91, 94, 32.37289 + 99, 103, 110, 113, 117, 112, 103, 96, 96, 98, 115, 121, 129, 140, 152, 170, 32.37290 + 188, 200, 205, 210, 217, 222, 224, 222, 221, 221, 213, 213, 211, 211, 209, 209, 32.37291 + 207, 209, 208, 209, 211, 214, 218, 222, 225, 227, 218, 213, 208, 203, 197, 191, 32.37292 + 186, 182, 181, 180, 180, 184, 192, 199, 203, 205, 202, 201, 196, 181, 160, 134, 32.37293 + 103, 80, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 106, 105, 32.37297 + 104, 100, 95, 92, 90, 90, 89, 87, 85, 87, 92, 96, 98, 104, 109, 112, 32.37298 + 109, 102, 96, 92, 93, 109, 115, 123, 134, 147, 164, 180, 192, 201, 206, 215, 32.37299 + 222, 227, 230, 231, 234, 227, 226, 223, 222, 221, 223, 225, 227, 232, 232, 232, 32.37300 + 232, 233, 234, 235, 236, 228, 224, 218, 213, 209, 204, 198, 195, 194, 193, 193, 32.37301 + 196, 201, 207, 210, 211, 197, 197, 188, 168, 144, 117, 86, 128, 255, 255, 255, 32.37302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 103, 101, 99, 95, 92, 90, 32.37306 + 88, 87, 84, 83, 84, 87, 92, 94, 99, 101, 104, 103, 100, 96, 91, 88, 32.37307 + 101, 106, 116, 124, 137, 153, 170, 181, 193, 199, 208, 216, 222, 229, 234, 239, 32.37308 + 237, 235, 232, 232, 232, 236, 240, 242, 250, 249, 248, 246, 245, 245, 245, 245, 32.37309 + 242, 239, 235, 230, 226, 223, 218, 215, 211, 210, 208, 208, 212, 213, 214, 212, 32.37310 + 199, 196, 183, 156, 126, 96, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37314 + 255, 255, 255, 255, 255, 203, 99, 97, 95, 92, 91, 88, 87, 84, 82, 81, 32.37315 + 83, 86, 88, 95, 95, 96, 97, 98, 96, 88, 83, 94, 98, 106, 115, 127, 32.37316 + 139, 156, 169, 186, 190, 198, 204, 211, 217, 224, 229, 236, 235, 234, 233, 236, 32.37317 + 238, 241, 243, 247, 247, 247, 246, 247, 247, 248, 249, 252, 249, 245, 241, 240, 32.37318 + 238, 234, 231, 224, 220, 218, 217, 217, 215, 212, 211, 199, 193, 173, 139, 104, 32.37319 + 75, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37323 + 255, 202, 96, 95, 93, 91, 90, 88, 84, 81, 80, 82, 84, 86, 91, 90, 32.37324 + 89, 93, 95, 93, 87, 82, 90, 94, 100, 107, 115, 129, 144, 153, 173, 176, 32.37325 + 184, 191, 197, 204, 210, 215, 228, 230, 231, 233, 233, 235, 234, 235, 238, 237, 32.37326 + 237, 238, 238, 240, 241, 242, 251, 248, 244, 244, 242, 242, 239, 236, 229, 227, 32.37327 + 225, 222, 218, 213, 208, 204, 189, 178, 152, 116, 82, 58, 113, 255, 255, 255, 32.37328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 95, 94, 32.37332 + 93, 91, 90, 85, 81, 80, 80, 81, 82, 87, 86, 84, 87, 89, 88, 85, 32.37333 + 81, 85, 89, 93, 99, 105, 116, 130, 140, 157, 162, 168, 177, 184, 192, 200, 32.37334 + 205, 219, 221, 223, 226, 227, 227, 225, 226, 233, 233, 232, 231, 230, 230, 231, 32.37335 + 231, 237, 235, 234, 234, 235, 235, 232, 231, 228, 226, 222, 219, 215, 208, 200, 32.37336 + 193, 177, 161, 132, 93, 65, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 94, 93, 91, 90, 85, 80, 32.37341 + 77, 77, 77, 79, 83, 82, 81, 82, 82, 81, 80, 79, 81, 84, 88, 92, 32.37342 + 97, 107, 118, 128, 142, 148, 156, 166, 173, 181, 188, 192, 202, 203, 206, 209, 32.37343 + 212, 213, 215, 215, 221, 220, 219, 218, 217, 216, 216, 217, 222, 219, 218, 219, 32.37344 + 222, 222, 221, 220, 220, 218, 214, 211, 204, 197, 188, 181, 163, 144, 111, 75, 32.37345 + 52, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37349 + 255, 255, 255, 255, 202, 94, 93, 93, 89, 84, 79, 76, 75, 76, 76, 80, 32.37350 + 80, 79, 78, 78, 76, 78, 77, 80, 82, 85, 87, 92, 100, 111, 120, 134, 32.37351 + 139, 148, 156, 164, 170, 176, 179, 187, 189, 190, 193, 196, 201, 204, 206, 207, 32.37352 + 207, 206, 206, 205, 206, 207, 207, 209, 208, 208, 209, 212, 213, 212, 211, 211, 32.37353 + 208, 205, 202, 196, 188, 177, 171, 148, 127, 91, 58, 41, 255, 255, 255, 255, 32.37354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37358 + 201, 94, 85, 85, 82, 80, 79, 78, 77, 77, 76, 76, 76, 76, 76, 76, 32.37359 + 76, 76, 79, 80, 81, 83, 89, 96, 101, 104, 120, 125, 137, 146, 153, 156, 32.37360 + 156, 156, 169, 171, 172, 176, 180, 184, 188, 189, 186, 186, 189, 190, 192, 194, 32.37361 + 194, 194, 194, 193, 193, 193, 195, 194, 192, 190, 190, 188, 187, 186, 184, 175, 32.37362 + 162, 154, 124, 99, 66, 47, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 93, 83, 83, 83, 32.37367 + 81, 80, 78, 78, 75, 76, 76, 76, 76, 76, 76, 76, 76, 77, 77, 80, 32.37368 + 83, 88, 94, 98, 100, 112, 119, 128, 138, 147, 149, 149, 149, 157, 157, 160, 32.37369 + 163, 168, 171, 176, 177, 175, 176, 178, 179, 180, 183, 183, 183, 185, 184, 183, 32.37370 + 183, 185, 186, 185, 183, 181, 180, 179, 178, 175, 165, 153, 144, 110, 85, 57, 32.37371 + 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37375 + 255, 255, 255, 255, 255, 255, 255, 255, 84, 84, 82, 81, 80, 79, 76, 76, 32.37376 + 74, 74, 74, 74, 74, 74, 74, 74, 73, 75, 76, 81, 85, 89, 91, 92, 32.37377 + 102, 108, 117, 127, 133, 135, 136, 136, 138, 140, 142, 145, 147, 152, 155, 158, 32.37378 + 160, 160, 161, 162, 164, 165, 165, 165, 169, 167, 166, 166, 168, 170, 171, 171, 32.37379 + 168, 167, 165, 163, 159, 150, 136, 126, 87, 67, 48, 111, 255, 255, 255, 255, 32.37380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37384 + 255, 255, 255, 255, 83, 83, 81, 80, 77, 77, 75, 73, 73, 73, 73, 73, 32.37385 + 73, 73, 73, 68, 72, 74, 77, 81, 83, 84, 85, 93, 98, 105, 114, 120, 32.37386 + 122, 123, 121, 121, 121, 123, 125, 129, 132, 136, 137, 145, 145, 146, 146, 147, 32.37387 + 147, 149, 149, 154, 151, 149, 149, 152, 156, 157, 158, 153, 151, 151, 148, 144, 32.37388 + 133, 117, 107, 68, 54, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37393 + 81, 80, 78, 76, 75, 75, 71, 71, 71, 71, 71, 71, 71, 71, 67, 68, 32.37394 + 70, 72, 75, 76, 76, 78, 84, 89, 96, 102, 107, 109, 109, 107, 106, 107, 32.37395 + 109, 111, 114, 116, 118, 121, 129, 131, 131, 133, 133, 134, 134, 137, 137, 135, 32.37396 + 133, 133, 137, 140, 142, 143, 139, 138, 136, 134, 128, 114, 99, 86, 54, 46, 32.37397 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 75, 75, 72, 32.37402 + 72, 70, 70, 70, 70, 70, 70, 70, 70, 67, 68, 68, 69, 70, 71, 72, 32.37403 + 72, 80, 83, 88, 93, 96, 97, 96, 95, 94, 96, 97, 99, 100, 102, 105, 32.37404 + 107, 113, 114, 116, 117, 119, 121, 121, 122, 123, 121, 119, 120, 123, 126, 127, 32.37405 + 127, 124, 122, 120, 117, 110, 95, 78, 66, 46, 113, 255, 255, 255, 255, 255, 32.37406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37410 + 255, 255, 255, 255, 255, 255, 255, 255, 195, 71, 71, 71, 68, 68, 68, 68, 32.37411 + 68, 68, 68, 68, 68, 67, 66, 66, 65, 66, 68, 69, 76, 78, 82, 84, 32.37412 + 87, 86, 86, 85, 85, 86, 86, 88, 90, 92, 94, 95, 97, 99, 100, 102, 32.37413 + 104, 107, 109, 109, 109, 108, 108, 109, 112, 113, 113, 112, 109, 108, 104, 100, 32.37414 + 92, 78, 60, 46, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37419 + 255, 255, 255, 255, 255, 70, 70, 68, 68, 68, 68, 68, 68, 68, 68, 69, 32.37420 + 68, 64, 63, 64, 65, 67, 69, 73, 75, 79, 80, 81, 80, 79, 78, 79, 32.37421 + 80, 80, 81, 83, 85, 88, 88, 86, 87, 89, 91, 95, 98, 99, 100, 100, 32.37422 + 100, 100, 102, 104, 105, 104, 102, 99, 98, 94, 91, 82, 67, 116, 255, 255, 32.37423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37428 + 255, 195, 69, 69, 69, 69, 69, 69, 69, 69, 64, 64, 65, 65, 65, 64, 32.37429 + 63, 63, 69, 69, 69, 69, 69, 69, 69, 69, 76, 75, 75, 75, 74, 73, 32.37430 + 73, 73, 77, 77, 77, 77, 78, 79, 81, 82, 84, 85, 87, 89, 90, 91, 32.37431 + 90, 89, 92, 87, 78, 68, 52, 39, 255, 255, 255, 255, 255, 255, 255, 255, 32.37432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 111, 32.37437 + 69, 69, 69, 69, 69, 63, 64, 65, 65, 65, 64, 64, 63, 68, 68, 68, 32.37438 + 68, 68, 68, 68, 68, 71, 71, 71, 70, 70, 70, 69, 69, 71, 70, 70, 32.37439 + 70, 71, 72, 73, 74, 78, 80, 82, 83, 83, 84, 86, 88, 88, 78, 65, 32.37440 + 55, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 69, 69, 69, 32.37446 + 63, 64, 65, 65, 65, 65, 64, 64, 68, 68, 68, 68, 68, 68, 68, 68, 32.37447 + 67, 66, 66, 66, 66, 65, 65, 65, 66, 65, 65, 65, 65, 65, 66, 67, 32.37448 + 71, 73, 75, 74, 74, 77, 83, 89, 87, 71, 53, 113, 255, 255, 255, 255, 32.37449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 65, 66, 67, 67, 68, 32.37455 + 68, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 62, 62, 61, 61, 61, 32.37456 + 61, 61, 61, 63, 63, 62, 62, 62, 62, 63, 64, 67, 68, 69, 68, 68, 32.37457 + 73, 83, 92, 92, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 68, 68, 68, 68, 67, 67, 32.37464 + 67, 67, 67, 67, 67, 67, 60, 60, 60, 60, 60, 61, 61, 61, 63, 62, 32.37465 + 62, 62, 62, 63, 64, 64, 65, 65, 65, 64, 130, 255, 255, 255, 255, 255, 32.37466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 68, 68, 68, 68, 68, 32.37473 + 68, 60, 60, 60, 60, 61, 61, 61, 61, 61, 61, 126, 255, 255, 255, 255, 32.37474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 182, 32.37481 + 160, 162, 164, 167, 161, 161, 160, 161, 162, 164, 168, 169, 173, 172, 172, 170, 32.37482 + 168, 164, 160, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37489 + 255, 255, 223, 160, 158, 149, 144, 150, 150, 149, 147, 144, 144, 147, 150, 146, 32.37490 + 144, 142, 143, 145, 150, 155, 159, 161, 156, 154, 158, 162, 156, 141, 127, 121, 32.37491 + 114, 101, 86, 82, 93, 114, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 138, 139, 141, 136, 32.37498 + 126, 117, 112, 112, 110, 103, 98, 95, 96, 99, 101, 99, 96, 96, 98, 104, 32.37499 + 112, 116, 136, 128, 125, 134, 144, 137, 112, 88, 67, 70, 71, 63, 54, 52, 32.37500 + 59, 67, 83, 86, 97, 114, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37506 + 255, 255, 212, 108, 99, 106, 102, 97, 93, 89, 84, 80, 76, 65, 69, 74, 32.37507 + 78, 83, 83, 73, 61, 61, 70, 75, 69, 62, 59, 56, 50, 70, 66, 63, 32.37508 + 65, 70, 71, 64, 57, 50, 49, 54, 58, 63, 61, 52, 44, 45, 47, 50, 32.37509 + 62, 86, 109, 110, 98, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 133, 117, 99, 84, 75, 32.37515 + 82, 80, 76, 74, 72, 69, 66, 63, 57, 60, 62, 63, 66, 68, 63, 55, 32.37516 + 53, 58, 59, 57, 57, 57, 52, 44, 45, 41, 40, 43, 49, 49, 43, 37, 32.37517 + 44, 45, 48, 56, 63, 63, 57, 52, 43, 45, 46, 50, 63, 78, 83, 81, 32.37518 + 73, 74, 86, 108, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37523 + 255, 255, 255, 217, 133, 121, 106, 93, 83, 76, 73, 71, 68, 65, 63, 61, 32.37524 + 59, 55, 53, 56, 58, 57, 54, 54, 57, 57, 54, 51, 50, 50, 49, 51, 32.37525 + 52, 47, 39, 34, 31, 30, 34, 39, 40, 34, 28, 35, 37, 42, 51, 61, 32.37526 + 67, 65, 62, 51, 48, 47, 49, 50, 54, 65, 75, 75, 65, 62, 75, 98, 32.37527 + 119, 134, 143, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 124, 113, 108, 32.37532 + 97, 88, 81, 81, 82, 85, 80, 77, 73, 68, 64, 61, 56, 52, 56, 59, 32.37533 + 58, 53, 50, 52, 53, 52, 54, 52, 49, 47, 47, 46, 43, 39, 41, 39, 32.37534 + 39, 42, 45, 44, 38, 33, 30, 31, 37, 46, 57, 65, 68, 70, 59, 52, 32.37535 + 49, 52, 51, 48, 59, 73, 75, 63, 53, 58, 74, 95, 118, 133, 150, 136, 32.37536 + 111, 87, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37540 + 255, 255, 255, 255, 255, 255, 113, 113, 111, 103, 96, 88, 79, 76, 75, 77, 32.37541 + 79, 86, 82, 76, 72, 67, 63, 57, 54, 54, 59, 60, 55, 52, 52, 51, 32.37542 + 48, 51, 50, 49, 46, 42, 40, 42, 45, 46, 46, 46, 48, 49, 45, 39, 32.37543 + 33, 31, 32, 35, 41, 51, 61, 68, 72, 61, 51, 47, 50, 49, 46, 49, 32.37544 + 58, 65, 58, 52, 51, 54, 66, 87, 105, 135, 146, 142, 117, 90, 78, 73, 32.37545 + 69, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37549 + 205, 105, 100, 97, 90, 86, 81, 73, 69, 67, 67, 68, 71, 69, 65, 61, 32.37550 + 58, 56, 51, 48, 52, 57, 60, 59, 59, 59, 55, 49, 44, 43, 42, 41, 32.37551 + 37, 34, 41, 49, 47, 48, 50, 50, 49, 45, 37, 31, 32, 32, 33, 37, 32.37552 + 45, 55, 65, 71, 67, 57, 51, 49, 49, 46, 44, 45, 51, 50, 50, 46, 32.37553 + 42, 42, 55, 71, 103, 109, 129, 145, 122, 79, 65, 80, 69, 133, 255, 255, 32.37554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 99, 96, 90, 84, 78, 32.37558 + 75, 70, 65, 62, 61, 60, 62, 56, 54, 51, 48, 47, 45, 42, 39, 45, 32.37559 + 49, 53, 56, 61, 64, 59, 51, 44, 37, 34, 34, 33, 32, 38, 45, 47, 32.37560 + 49, 51, 52, 50, 45, 39, 34, 34, 32, 32, 33, 39, 50, 62, 69, 71, 32.37561 + 68, 60, 51, 48, 51, 49, 47, 47, 46, 47, 45, 39, 34, 39, 48, 52, 32.37562 + 82, 104, 104, 109, 113, 92, 58, 73, 55, 60, 154, 255, 255, 255, 255, 255, 32.37563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37566 + 255, 255, 255, 255, 98, 98, 98, 94, 86, 79, 77, 74, 67, 61, 57, 55, 32.37567 + 54, 54, 51, 48, 45, 43, 42, 39, 37, 34, 35, 38, 41, 47, 55, 61, 32.37568 + 57, 49, 51, 39, 29, 31, 33, 32, 35, 39, 43, 45, 49, 50, 49, 45, 32.37569 + 39, 34, 34, 32, 31, 31, 38, 48, 60, 69, 69, 73, 66, 51, 46, 52, 32.37570 + 55, 52, 51, 48, 47, 47, 43, 38, 38, 42, 47, 48, 65, 94, 109, 100, 32.37571 + 86, 80, 66, 55, 48, 64, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 111, 110, 32.37575 + 103, 91, 81, 73, 71, 65, 63, 59, 55, 53, 52, 52, 53, 48, 49, 49, 32.37576 + 48, 46, 42, 38, 35, 36, 35, 35, 38, 43, 47, 48, 48, 43, 42, 42, 32.37577 + 40, 38, 34, 31, 30, 49, 49, 47, 43, 40, 42, 47, 52, 38, 29, 26, 32.37578 + 31, 33, 34, 46, 62, 72, 67, 58, 49, 44, 44, 46, 49, 59, 63, 60, 32.37579 + 46, 35, 33, 35, 33, 45, 47, 50, 56, 74, 90, 93, 87, 65, 58, 52, 32.37580 + 55, 68, 92, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37583 + 255, 255, 255, 255, 255, 255, 255, 206, 108, 105, 100, 90, 77, 67, 60, 56, 32.37584 + 54, 54, 53, 52, 50, 48, 47, 46, 46, 46, 47, 47, 46, 46, 45, 44, 32.37585 + 42, 40, 38, 39, 41, 43, 44, 43, 42, 42, 40, 38, 37, 35, 33, 32, 32.37586 + 37, 43, 48, 50, 48, 44, 41, 39, 42, 34, 30, 32, 33, 30, 38, 52, 32.37587 + 69, 69, 64, 55, 44, 40, 43, 51, 56, 61, 61, 49, 39, 35, 34, 31, 32.37588 + 33, 38, 42, 44, 54, 68, 77, 77, 72, 65, 57, 54, 57, 71, 95, 255, 32.37589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37592 + 255, 205, 101, 97, 90, 81, 70, 62, 54, 47, 44, 42, 44, 48, 49, 49, 32.37593 + 46, 43, 42, 41, 40, 40, 40, 41, 44, 47, 49, 51, 48, 45, 43, 42, 32.37594 + 42, 41, 40, 41, 41, 40, 39, 37, 36, 35, 35, 33, 39, 48, 52, 51, 32.37595 + 45, 39, 35, 44, 37, 33, 35, 33, 29, 34, 44, 60, 68, 72, 62, 48, 32.37596 + 39, 42, 49, 52, 57, 60, 53, 44, 38, 33, 28, 29, 38, 42, 41, 42, 32.37597 + 51, 64, 72, 67, 62, 55, 51, 50, 58, 76, 94, 255, 255, 255, 255, 255, 32.37598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 97, 92, 80, 71, 32.37601 + 60, 52, 49, 46, 44, 41, 40, 42, 45, 49, 50, 48, 45, 44, 39, 37, 32.37602 + 35, 33, 35, 38, 42, 45, 52, 51, 51, 50, 49, 46, 41, 38, 39, 40, 32.37603 + 41, 42, 42, 40, 38, 37, 41, 44, 47, 49, 50, 49, 48, 48, 43, 38, 32.37604 + 38, 39, 37, 33, 36, 42, 50, 61, 69, 68, 56, 46, 43, 46, 48, 53, 32.37605 + 59, 57, 50, 41, 33, 28, 32, 37, 41, 41, 40, 46, 56, 65, 61, 58, 32.37606 + 54, 51, 49, 54, 70, 87, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37609 + 255, 255, 255, 255, 255, 202, 87, 78, 73, 62, 54, 45, 39, 39, 40, 40, 32.37610 + 38, 40, 41, 44, 45, 47, 47, 46, 46, 41, 39, 35, 31, 31, 32, 35, 32.37611 + 38, 49, 51, 53, 57, 57, 53, 46, 40, 38, 40, 43, 45, 46, 45, 43, 32.37612 + 41, 46, 46, 47, 49, 52, 54, 56, 56, 46, 44, 44, 44, 41, 37, 38, 32.37613 + 42, 42, 50, 61, 67, 66, 58, 48, 42, 44, 49, 56, 59, 55, 45, 36, 32.37614 + 30, 32, 32, 34, 37, 40, 42, 46, 49, 65, 63, 58, 52, 45, 46, 60, 32.37615 + 76, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 32.37618 + 77, 68, 58, 53, 49, 45, 38, 34, 34, 33, 34, 33, 39, 38, 38, 39, 32.37619 + 39, 40, 41, 42, 44, 41, 38, 35, 33, 33, 33, 34, 41, 44, 50, 56, 32.37620 + 57, 54, 47, 42, 37, 40, 42, 44, 46, 46, 47, 47, 45, 47, 50, 54, 32.37621 + 58, 58, 55, 52, 52, 53, 51, 48, 43, 39, 39, 39, 39, 43, 51, 62, 32.37622 + 68, 65, 54, 44, 42, 44, 52, 59, 57, 48, 39, 35, 34, 30, 30, 36, 32.37623 + 42, 43, 43, 44, 58, 56, 55, 51, 43, 42, 54, 69, 79, 89, 255, 255, 32.37624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 71, 61, 53, 47, 44, 42, 32.37627 + 42, 41, 38, 34, 33, 34, 36, 36, 36, 35, 34, 34, 34, 35, 35, 37, 32.37628 + 37, 37, 37, 36, 34, 33, 32, 35, 37, 42, 47, 50, 50, 46, 42, 40, 32.37629 + 39, 37, 36, 39, 44, 50, 53, 50, 51, 53, 56, 58, 57, 52, 47, 53, 32.37630 + 53, 52, 49, 43, 42, 41, 42, 41, 41, 44, 53, 62, 64, 57, 51, 41, 32.37631 + 41, 49, 57, 59, 50, 43, 41, 38, 32, 30, 36, 42, 42, 44, 48, 43, 32.37632 + 47, 50, 49, 43, 41, 51, 65, 67, 79, 145, 255, 255, 255, 255, 255, 255, 32.37633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37635 + 255, 255, 255, 197, 72, 62, 53, 47, 44, 43, 38, 41, 43, 42, 39, 39, 32.37636 + 40, 44, 34, 34, 35, 34, 34, 32, 30, 30, 29, 31, 33, 35, 36, 34, 32.37637 + 33, 31, 31, 32, 34, 38, 42, 45, 44, 42, 43, 38, 33, 29, 33, 41, 32.37638 + 51, 57, 62, 58, 55, 55, 56, 56, 53, 50, 48, 50, 51, 47, 45, 45, 32.37639 + 46, 45, 44, 42, 42, 48, 54, 60, 59, 57, 41, 39, 46, 56, 58, 50, 32.37640 + 45, 45, 35, 30, 29, 33, 36, 36, 42, 51, 41, 47, 53, 54, 44, 37, 32.37641 + 43, 54, 65, 77, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 78, 62, 32.37644 + 50, 47, 48, 50, 51, 45, 44, 43, 40, 37, 34, 32, 31, 33, 33, 33, 32.37645 + 32, 32, 32, 31, 31, 27, 27, 27, 27, 27, 28, 28, 28, 31, 33, 34, 32.37646 + 35, 36, 37, 38, 39, 36, 38, 39, 36, 33, 34, 40, 46, 64, 67, 68, 32.37647 + 61, 52, 47, 50, 56, 50, 49, 47, 45, 44, 45, 46, 46, 45, 45, 46, 32.37648 + 47, 49, 50, 49, 49, 47, 41, 39, 44, 53, 56, 50, 44, 36, 35, 32, 32.37649 + 30, 30, 34, 37, 40, 42, 42, 45, 46, 43, 41, 46, 54, 60, 69, 78, 32.37650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37652 + 255, 255, 255, 255, 255, 255, 255, 201, 89, 77, 62, 50, 46, 48, 49, 50, 32.37653 + 45, 44, 41, 39, 36, 34, 31, 30, 29, 29, 29, 28, 28, 27, 27, 26, 32.37654 + 24, 25, 25, 25, 26, 26, 27, 27, 29, 29, 30, 33, 34, 36, 37, 37, 32.37655 + 35, 38, 40, 38, 34, 35, 39, 44, 52, 60, 71, 73, 68, 57, 50, 46, 32.37656 + 51, 49, 48, 45, 44, 45, 45, 45, 44, 48, 51, 51, 47, 44, 44, 46, 32.37657 + 47, 42, 39, 41, 48, 53, 50, 47, 40, 37, 31, 26, 25, 27, 31, 34, 32.37658 + 38, 40, 43, 46, 43, 41, 46, 54, 59, 68, 76, 138, 255, 255, 255, 255, 32.37659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37661 + 255, 255, 89, 84, 73, 59, 49, 46, 47, 47, 48, 44, 43, 42, 39, 36, 32.37662 + 33, 30, 29, 28, 28, 27, 26, 25, 24, 23, 23, 23, 24, 23, 24, 25, 32.37663 + 26, 26, 27, 28, 28, 30, 31, 33, 35, 37, 38, 37, 40, 42, 40, 37, 32.37664 + 36, 39, 42, 44, 55, 68, 77, 76, 66, 52, 42, 49, 48, 46, 43, 41, 32.37665 + 41, 41, 41, 40, 47, 53, 52, 45, 39, 38, 40, 46, 42, 39, 39, 42, 32.37666 + 46, 49, 49, 46, 41, 33, 26, 22, 23, 26, 29, 35, 36, 40, 44, 44, 32.37667 + 42, 46, 53, 54, 64, 72, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 88, 84, 74, 66, 32.37670 + 53, 46, 43, 44, 44, 44, 46, 45, 43, 39, 36, 34, 32, 32, 28, 28, 32.37671 + 27, 26, 25, 24, 23, 23, 23, 23, 24, 25, 25, 25, 26, 26, 26, 28, 32.37672 + 29, 31, 33, 35, 36, 38, 38, 41, 43, 43, 41, 39, 39, 40, 48, 51, 32.37673 + 58, 65, 68, 65, 56, 49, 48, 46, 43, 40, 38, 37, 37, 37, 36, 41, 32.37674 + 47, 48, 44, 40, 37, 37, 39, 39, 38, 37, 37, 40, 43, 46, 47, 44, 32.37675 + 37, 31, 26, 26, 26, 25, 31, 32, 36, 42, 43, 42, 46, 52, 54, 63, 32.37676 + 70, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37678 + 255, 255, 255, 255, 255, 255, 88, 80, 74, 63, 55, 46, 41, 41, 41, 42, 32.37679 + 40, 46, 45, 44, 42, 39, 37, 35, 34, 34, 34, 33, 32, 31, 30, 30, 32.37680 + 29, 27, 27, 27, 28, 28, 29, 28, 28, 25, 26, 28, 29, 31, 33, 34, 32.37681 + 36, 39, 42, 44, 45, 43, 42, 41, 40, 48, 47, 48, 53, 57, 60, 56, 32.37682 + 53, 48, 46, 44, 41, 38, 38, 38, 37, 34, 34, 36, 40, 44, 44, 40, 32.37683 + 36, 32, 35, 36, 35, 35, 34, 38, 40, 41, 40, 39, 37, 32, 30, 27, 32.37684 + 25, 31, 29, 32, 38, 41, 41, 45, 50, 56, 64, 70, 72, 134, 255, 255, 32.37685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37687 + 86, 79, 68, 62, 52, 47, 39, 37, 39, 41, 41, 39, 44, 44, 43, 42, 32.37688 + 41, 39, 39, 38, 40, 39, 39, 39, 39, 38, 38, 38, 35, 34, 33, 33, 32.37689 + 33, 32, 32, 31, 24, 24, 25, 27, 28, 29, 30, 31, 39, 40, 41, 43, 32.37690 + 43, 42, 42, 41, 41, 42, 44, 50, 54, 54, 52, 47, 50, 48, 46, 43, 32.37691 + 42, 41, 41, 41, 38, 33, 30, 34, 41, 44, 40, 35, 30, 32, 33, 34, 32.37692 + 32, 33, 34, 35, 34, 36, 38, 38, 36, 32, 28, 25, 31, 28, 30, 35, 32.37693 + 39, 40, 45, 49, 58, 66, 71, 73, 74, 255, 255, 255, 255, 255, 255, 255, 32.37694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 85, 78, 68, 56, 49, 45, 32.37696 + 41, 36, 36, 39, 42, 42, 40, 41, 41, 41, 40, 40, 39, 40, 39, 41, 32.37697 + 41, 42, 42, 42, 42, 43, 43, 42, 41, 40, 39, 38, 37, 35, 34, 28, 32.37698 + 28, 29, 29, 29, 31, 31, 31, 36, 36, 37, 38, 40, 41, 40, 39, 37, 32.37699 + 40, 43, 46, 49, 50, 46, 44, 48, 47, 44, 42, 42, 41, 42, 42, 44, 32.37700 + 39, 33, 32, 34, 36, 36, 35, 34, 32, 30, 29, 31, 32, 34, 36, 35, 32.37701 + 37, 38, 40, 38, 36, 33, 30, 33, 28, 27, 31, 36, 38, 44, 49, 60, 32.37702 + 66, 71, 71, 71, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37704 + 255, 255, 255, 201, 87, 81, 71, 60, 48, 40, 41, 37, 36, 36, 40, 44, 32.37705 + 43, 42, 38, 38, 39, 39, 40, 40, 40, 40, 42, 42, 43, 43, 44, 45, 32.37706 + 45, 46, 46, 46, 44, 43, 41, 38, 37, 36, 32, 33, 33, 33, 33, 33, 32.37707 + 33, 34, 34, 33, 33, 34, 37, 39, 38, 38, 39, 41, 41, 42, 44, 45, 32.37708 + 46, 46, 44, 43, 41, 39, 38, 39, 39, 40, 48, 44, 38, 31, 27, 27, 32.37709 + 31, 33, 38, 34, 29, 28, 29, 34, 36, 38, 40, 41, 41, 41, 40, 39, 32.37710 + 37, 36, 35, 29, 27, 30, 34, 38, 43, 50, 61, 67, 71, 70, 70, 72, 32.37711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 93, 85, 32.37713 + 70, 62, 59, 54, 49, 45, 41, 37, 35, 37, 38, 40, 41, 38, 40, 40, 32.37714 + 39, 40, 44, 48, 52, 47, 45, 42, 42, 44, 46, 45, 43, 42, 42, 41, 32.37715 + 40, 40, 39, 38, 38, 30, 32, 35, 37, 39, 41, 40, 40, 38, 36, 34, 32.37716 + 31, 29, 28, 28, 28, 29, 30, 32, 35, 37, 41, 42, 44, 40, 40, 41, 32.37717 + 41, 41, 39, 37, 36, 39, 37, 35, 33, 31, 31, 32, 32, 35, 35, 33, 32.37718 + 33, 33, 34, 34, 35, 39, 41, 43, 43, 40, 37, 34, 34, 34, 35, 35, 32.37719 + 34, 35, 39, 46, 52, 65, 68, 72, 75, 74, 73, 132, 255, 255, 255, 255, 32.37720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37721 + 255, 255, 255, 255, 255, 255, 255, 205, 102, 96, 81, 65, 55, 53, 49, 42, 32.37722 + 41, 38, 36, 35, 36, 39, 39, 39, 37, 38, 39, 38, 38, 41, 45, 47, 32.37723 + 44, 42, 41, 42, 45, 45, 44, 42, 43, 43, 43, 42, 42, 41, 41, 39, 32.37724 + 35, 36, 39, 40, 42, 42, 43, 42, 37, 36, 33, 30, 28, 27, 26, 26, 32.37725 + 27, 28, 30, 32, 35, 37, 39, 41, 41, 42, 42, 42, 41, 39, 37, 35, 32.37726 + 39, 38, 37, 35, 34, 34, 34, 34, 37, 36, 35, 35, 35, 36, 37, 37, 32.37727 + 39, 42, 44, 45, 42, 40, 39, 39, 42, 39, 34, 34, 38, 43, 48, 51, 32.37728 + 64, 66, 70, 72, 72, 72, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37730 + 255, 109, 105, 95, 84, 66, 49, 43, 41, 37, 30, 33, 31, 30, 32, 34, 32.37731 + 35, 35, 34, 36, 36, 37, 37, 36, 37, 38, 41, 39, 39, 40, 42, 45, 32.37732 + 45, 42, 39, 44, 44, 44, 43, 43, 43, 43, 43, 40, 41, 42, 43, 45, 32.37733 + 44, 45, 44, 40, 39, 37, 33, 31, 30, 29, 28, 26, 27, 29, 31, 34, 32.37734 + 37, 38, 39, 44, 44, 45, 43, 42, 40, 37, 35, 40, 40, 40, 39, 39, 32.37735 + 38, 38, 38, 40, 40, 40, 40, 39, 41, 41, 42, 43, 45, 48, 49, 48, 32.37736 + 46, 47, 48, 49, 42, 35, 34, 41, 49, 54, 56, 65, 66, 69, 69, 68, 32.37737 + 70, 72, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 103, 98, 79, 67, 32.37739 + 50, 40, 37, 36, 31, 26, 23, 23, 25, 27, 30, 31, 29, 27, 34, 34, 32.37740 + 36, 35, 34, 33, 34, 35, 35, 36, 40, 43, 45, 44, 41, 39, 44, 44, 32.37741 + 44, 44, 45, 45, 46, 46, 43, 44, 44, 44, 45, 46, 46, 46, 44, 43, 32.37742 + 42, 40, 39, 37, 37, 36, 32, 33, 34, 36, 39, 42, 43, 44, 49, 49, 32.37743 + 49, 48, 47, 44, 41, 39, 41, 42, 42, 42, 42, 42, 42, 42, 46, 46, 32.37744 + 46, 46, 46, 47, 47, 48, 47, 50, 53, 54, 55, 54, 56, 57, 55, 48, 32.37745 + 39, 35, 39, 47, 58, 64, 68, 68, 69, 67, 66, 68, 71, 74, 128, 255, 32.37746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37747 + 255, 255, 255, 255, 255, 99, 98, 92, 85, 67, 56, 45, 41, 42, 39, 33, 32.37748 + 28, 22, 22, 24, 28, 30, 31, 30, 28, 33, 33, 34, 33, 31, 31, 33, 32.37749 + 36, 34, 38, 43, 46, 48, 47, 45, 43, 46, 46, 46, 48, 48, 49, 49, 32.37750 + 50, 48, 48, 48, 48, 48, 48, 49, 49, 48, 48, 49, 49, 49, 48, 47, 32.37751 + 47, 44, 45, 46, 48, 51, 53, 54, 55, 58, 58, 59, 57, 55, 52, 49, 32.37752 + 47, 48, 48, 49, 49, 50, 51, 51, 52, 54, 54, 53, 52, 52, 52, 53, 32.37753 + 53, 56, 59, 62, 63, 63, 64, 66, 68, 66, 62, 54, 44, 38, 42, 55, 32.37754 + 65, 70, 70, 70, 68, 66, 66, 68, 70, 64, 130, 255, 255, 255, 255, 255, 32.37755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 32.37756 + 91, 88, 79, 70, 59, 51, 45, 45, 43, 37, 30, 26, 27, 28, 29, 31, 32.37757 + 34, 36, 34, 32, 32, 33, 33, 32, 31, 32, 36, 39, 39, 44, 51, 54, 32.37758 + 54, 54, 53, 53, 52, 54, 55, 56, 58, 59, 59, 60, 56, 56, 56, 56, 32.37759 + 56, 59, 59, 60, 60, 59, 60, 61, 61, 61, 60, 59, 61, 62, 63, 65, 32.37760 + 67, 69, 70, 71, 71, 71, 71, 71, 68, 67, 64, 62, 60, 59, 59, 59, 32.37761 + 60, 63, 65, 67, 66, 65, 64, 62, 61, 61, 61, 61, 69, 71, 72, 74, 32.37762 + 73, 75, 76, 78, 82, 82, 76, 62, 48, 43, 49, 59, 69, 70, 72, 71, 32.37763 + 69, 67, 67, 67, 64, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 90, 84, 78, 67, 56, 55, 32.37765 + 48, 44, 46, 43, 36, 32, 31, 33, 32, 32, 35, 37, 38, 38, 36, 33, 32.37766 + 33, 32, 30, 31, 35, 41, 45, 48, 53, 59, 63, 63, 62, 63, 64, 62, 32.37767 + 64, 65, 67, 69, 71, 72, 72, 70, 70, 69, 69, 70, 72, 75, 76, 78, 32.37768 + 79, 79, 79, 79, 76, 74, 73, 75, 76, 77, 78, 80, 83, 84, 84, 84, 32.37769 + 85, 85, 85, 84, 82, 80, 78, 76, 74, 73, 72, 74, 78, 82, 85, 84, 32.37770 + 83, 81, 78, 76, 75, 75, 74, 82, 83, 84, 85, 84, 85, 87, 89, 94, 32.37771 + 95, 92, 83, 68, 56, 52, 52, 64, 68, 73, 75, 74, 71, 69, 68, 65, 32.37772 + 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37773 + 255, 255, 255, 202, 94, 88, 80, 72, 60, 49, 57, 51, 49, 51, 49, 41, 32.37774 + 40, 44, 35, 33, 33, 34, 37, 38, 37, 36, 33, 33, 31, 29, 30, 36, 32.37775 + 44, 49, 55, 60, 66, 68, 68, 69, 70, 72, 71, 72, 74, 75, 78, 80, 32.37776 + 81, 82, 80, 79, 80, 79, 81, 83, 86, 88, 95, 96, 95, 94, 92, 89, 32.37777 + 86, 84, 85, 85, 86, 88, 89, 91, 92, 93, 93, 95, 94, 95, 94, 93, 32.37778 + 90, 89, 87, 85, 82, 81, 84, 88, 94, 98, 99, 97, 95, 92, 90, 88, 32.37779 + 87, 87, 91, 92, 92, 92, 91, 92, 94, 96, 97, 100, 100, 96, 85, 72, 32.37780 + 59, 52, 59, 65, 73, 78, 78, 75, 71, 69, 66, 70, 130, 255, 255, 255, 32.37781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 100, 96, 32.37782 + 86, 73, 65, 63, 63, 47, 49, 53, 54, 52, 46, 40, 35, 35, 36, 38, 32.37783 + 38, 36, 35, 38, 39, 37, 40, 42, 41, 41, 45, 51, 56, 62, 65, 71, 32.37784 + 76, 77, 80, 82, 84, 81, 82, 83, 85, 85, 84, 83, 82, 89, 90, 90, 32.37785 + 93, 95, 98, 100, 102, 107, 107, 107, 106, 105, 105, 104, 103, 101, 101, 101, 32.37786 + 101, 102, 102, 101, 101, 101, 104, 105, 108, 107, 107, 106, 103, 102, 101, 99, 32.37787 + 99, 101, 105, 109, 112, 112, 111, 111, 110, 108, 107, 104, 102, 102, 101, 99, 32.37788 + 96, 95, 97, 98, 99, 110, 106, 101, 102, 107, 103, 79, 51, 52, 59, 69, 32.37789 + 77, 81, 81, 78, 75, 71, 69, 66, 255, 255, 255, 255, 255, 255, 255, 255, 32.37790 + 255, 255, 255, 255, 255, 255, 255, 255, 100, 98, 92, 84, 75, 66, 60, 59, 32.37791 + 44, 46, 47, 47, 45, 42, 39, 36, 36, 37, 37, 35, 34, 36, 37, 40, 32.37792 + 41, 45, 48, 49, 52, 55, 63, 68, 76, 80, 85, 88, 90, 91, 93, 95, 32.37793 + 91, 91, 92, 93, 93, 93, 93, 92, 97, 96, 97, 99, 102, 103, 106, 107, 32.37794 + 112, 111, 113, 114, 114, 113, 114, 112, 111, 111, 111, 112, 112, 112, 112, 112, 32.37795 + 111, 113, 116, 117, 118, 116, 116, 115, 114, 113, 112, 112, 112, 116, 120, 122, 32.37796 + 121, 120, 120, 120, 117, 115, 114, 113, 111, 110, 107, 104, 102, 102, 102, 103, 32.37797 + 113, 109, 106, 106, 113, 113, 96, 76, 52, 52, 59, 72, 86, 88, 78, 66, 32.37798 + 71, 67, 64, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37799 + 255, 255, 207, 103, 96, 88, 80, 75, 67, 60, 54, 42, 42, 41, 39, 38, 32.37800 + 38, 36, 35, 36, 36, 36, 34, 33, 35, 39, 43, 49, 53, 58, 61, 65, 32.37801 + 70, 78, 85, 93, 96, 100, 102, 103, 104, 104, 105, 101, 101, 99, 100, 101, 32.37802 + 101, 103, 103, 106, 106, 106, 108, 109, 112, 113, 115, 116, 116, 118, 120, 121, 32.37803 + 122, 122, 121, 121, 121, 121, 121, 122, 122, 122, 122, 121, 122, 125, 126, 127, 32.37804 + 126, 126, 125, 127, 125, 124, 124, 124, 126, 129, 131, 128, 128, 128, 127, 125, 32.37805 + 123, 122, 121, 123, 121, 117, 114, 110, 109, 108, 108, 116, 114, 110, 111, 116, 32.37806 + 118, 109, 99, 67, 55, 48, 60, 81, 91, 83, 71, 73, 68, 64, 62, 122, 32.37807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 113, 107, 95, 32.37808 + 81, 73, 71, 67, 60, 53, 43, 42, 40, 39, 36, 35, 33, 32, 33, 33, 32.37809 + 33, 32, 34, 38, 43, 48, 57, 61, 67, 71, 75, 81, 90, 96, 104, 107, 32.37810 + 110, 111, 110, 109, 109, 110, 104, 102, 102, 102, 102, 104, 105, 108, 110, 110, 32.37811 + 111, 112, 113, 115, 116, 118, 116, 117, 119, 121, 121, 123, 123, 122, 124, 125, 32.37812 + 125, 125, 125, 126, 126, 126, 125, 126, 128, 129, 131, 131, 130, 129, 131, 131, 32.37813 + 130, 129, 129, 130, 131, 133, 129, 129, 129, 128, 127, 125, 122, 122, 128, 125, 32.37814 + 123, 119, 116, 114, 113, 112, 119, 117, 116, 114, 115, 115, 111, 106, 96, 72, 32.37815 + 48, 45, 62, 83, 90, 89, 82, 73, 65, 61, 56, 210, 255, 255, 255, 255, 32.37816 + 255, 255, 255, 255, 255, 255, 255, 111, 108, 109, 92, 73, 65, 65, 66, 60, 32.37817 + 53, 46, 45, 44, 42, 39, 34, 30, 27, 29, 30, 31, 32, 35, 41, 48, 32.37818 + 55, 62, 67, 72, 77, 80, 87, 93, 100, 109, 111, 113, 114, 111, 109, 109, 32.37819 + 110, 105, 104, 102, 103, 104, 105, 108, 109, 110, 110, 111, 112, 113, 115, 117, 32.37820 + 117, 119, 120, 121, 121, 122, 122, 121, 121, 124, 125, 125, 125, 126, 126, 127, 32.37821 + 127, 128, 129, 129, 131, 131, 132, 132, 133, 133, 133, 131, 130, 129, 131, 131, 32.37822 + 132, 129, 128, 128, 128, 127, 124, 123, 122, 126, 124, 122, 120, 118, 116, 116, 32.37823 + 115, 116, 116, 117, 117, 116, 113, 110, 108, 114, 90, 61, 45, 49, 67, 86, 32.37824 + 97, 92, 81, 69, 61, 55, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.37825 + 255, 204, 104, 103, 103, 86, 66, 58, 58, 61, 56, 50, 48, 47, 46, 42, 32.37826 + 38, 33, 28, 26, 27, 30, 32, 35, 38, 44, 52, 57, 61, 66, 73, 79, 32.37827 + 81, 87, 94, 99, 111, 112, 115, 114, 111, 108, 107, 107, 106, 105, 105, 105, 32.37828 + 106, 108, 110, 111, 107, 108, 108, 110, 111, 113, 116, 118, 122, 123, 124, 124, 32.37829 + 124, 124, 123, 122, 127, 127, 127, 128, 128, 129, 129, 130, 130, 130, 132, 132, 32.37830 + 133, 135, 135, 135, 134, 134, 132, 132, 131, 132, 132, 132, 130, 130, 130, 130, 32.37831 + 128, 127, 124, 124, 122, 122, 120, 120, 118, 117, 116, 116, 114, 113, 114, 118, 32.37832 + 119, 114, 112, 113, 114, 102, 82, 61, 49, 54, 72, 88, 94, 85, 74, 66, 32.37833 + 57, 48, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 99, 99, 91, 32.37834 + 77, 60, 54, 55, 55, 50, 44, 47, 45, 41, 36, 33, 30, 29, 28, 29, 32.37835 + 32, 35, 38, 41, 46, 51, 55, 57, 63, 71, 76, 80, 86, 93, 99, 108, 32.37836 + 110, 112, 111, 108, 106, 104, 103, 103, 104, 106, 107, 109, 109, 110, 110, 105, 32.37837 + 106, 107, 110, 112, 115, 116, 119, 122, 123, 125, 126, 127, 127, 127, 126, 129, 32.37838 + 129, 130, 131, 131, 131, 132, 132, 130, 131, 131, 132, 134, 135, 136, 136, 136, 32.37839 + 135, 134, 134, 134, 133, 133, 133, 134, 134, 133, 132, 131, 130, 127, 127, 122, 32.37840 + 121, 121, 120, 119, 117, 116, 114, 117, 112, 112, 116, 118, 115, 113, 116, 112, 32.37841 + 112, 102, 81, 58, 51, 62, 77, 91, 86, 80, 73, 63, 52, 52, 255, 255, 32.37842 + 255, 255, 255, 255, 255, 255, 219, 94, 97, 98, 80, 69, 57, 52, 54, 53, 32.37843 + 45, 39, 46, 43, 36, 31, 28, 27, 29, 30, 31, 34, 38, 40, 43, 46, 32.37844 + 50, 54, 53, 60, 68, 75, 80, 85, 93, 99, 105, 106, 108, 107, 104, 102, 32.37845 + 100, 100, 101, 103, 105, 107, 108, 109, 109, 108, 105, 106, 107, 109, 112, 115, 32.37846 + 119, 120, 120, 121, 123, 125, 126, 129, 129, 129, 130, 131, 130, 131, 131, 132, 32.37847 + 133, 133, 129, 129, 130, 130, 131, 134, 135, 136, 134, 133, 133, 133, 132, 132, 32.37848 + 132, 132, 134, 134, 134, 134, 131, 130, 128, 127, 124, 124, 123, 122, 120, 117, 32.37849 + 116, 115, 120, 113, 108, 113, 114, 112, 111, 114, 115, 120, 115, 92, 65, 51, 32.37850 + 61, 74, 85, 84, 84, 79, 68, 56, 53, 255, 255, 255, 255, 255, 255, 255, 32.37851 + 255, 130, 104, 103, 97, 79, 72, 61, 55, 50, 47, 44, 41, 38, 37, 34, 32.37852 + 31, 31, 30, 31, 33, 32, 35, 39, 42, 43, 46, 50, 53, 62, 67, 74, 32.37853 + 78, 83, 90, 98, 105, 110, 110, 110, 107, 103, 102, 103, 104, 106, 105, 105, 32.37854 + 106, 105, 106, 106, 107, 108, 111, 114, 116, 116, 116, 119, 120, 122, 122, 122, 32.37855 + 123, 124, 127, 129, 130, 133, 135, 137, 139, 138, 138, 136, 134, 135, 135, 136, 32.37856 + 135, 136, 137, 136, 137, 137, 137, 136, 134, 134, 134, 133, 133, 134, 135, 134, 32.37857 + 133, 132, 130, 129, 129, 126, 125, 125, 123, 123, 121, 121, 120, 117, 116, 116, 32.37858 + 114, 114, 114, 113, 113, 117, 108, 106, 106, 85, 55, 49, 63, 79, 79, 83, 32.37859 + 85, 73, 54, 50, 124, 255, 255, 255, 255, 255, 255, 255, 105, 109, 101, 89, 32.37860 + 74, 68, 58, 52, 48, 45, 43, 40, 38, 36, 34, 33, 31, 31, 33, 34, 32.37861 + 35, 38, 41, 42, 45, 47, 52, 54, 65, 70, 76, 81, 84, 90, 97, 102, 32.37862 + 105, 106, 107, 106, 104, 103, 104, 105, 109, 108, 108, 109, 108, 108, 108, 109, 32.37863 + 108, 111, 114, 114, 114, 115, 116, 117, 120, 120, 121, 122, 125, 127, 130, 129, 32.37864 + 132, 134, 137, 139, 139, 139, 137, 136, 135, 136, 136, 136, 137, 137, 137, 137, 32.37865 + 137, 136, 135, 134, 134, 133, 133, 133, 134, 135, 134, 133, 132, 130, 129, 129, 32.37866 + 128, 127, 126, 124, 122, 120, 119, 117, 118, 116, 115, 114, 113, 113, 113, 113, 32.37867 + 113, 110, 110, 110, 93, 69, 57, 58, 74, 73, 77, 80, 75, 65, 58, 58, 32.37868 + 255, 255, 255, 255, 255, 255, 206, 110, 108, 93, 75, 69, 64, 57, 52, 47, 32.37869 + 45, 41, 39, 35, 35, 34, 33, 33, 34, 35, 37, 38, 40, 43, 44, 45, 32.37870 + 49, 54, 58, 69, 74, 80, 84, 87, 89, 95, 99, 101, 103, 104, 105, 104, 32.37871 + 104, 105, 107, 110, 109, 109, 109, 108, 109, 108, 109, 108, 111, 113, 114, 113, 32.37872 + 113, 113, 115, 117, 118, 120, 123, 125, 128, 128, 130, 132, 134, 136, 138, 140, 32.37873 + 140, 140, 139, 136, 136, 137, 137, 137, 138, 137, 138, 136, 136, 135, 134, 133, 32.37874 + 133, 133, 134, 134, 135, 134, 133, 132, 130, 129, 129, 129, 128, 127, 124, 122, 32.37875 + 119, 118, 116, 119, 117, 116, 114, 114, 113, 112, 113, 111, 112, 114, 112, 104, 32.37876 + 88, 68, 53, 67, 71, 73, 74, 75, 73, 64, 54, 255, 255, 255, 255, 255, 32.37877 + 255, 104, 104, 99, 82, 62, 67, 64, 58, 53, 48, 43, 41, 38, 32, 32, 32.37878 + 31, 31, 32, 33, 35, 37, 37, 39, 41, 44, 47, 52, 58, 63, 73, 78, 32.37879 + 83, 86, 86, 88, 91, 95, 100, 103, 105, 105, 105, 105, 105, 107, 108, 107, 32.37880 + 107, 107, 106, 106, 105, 106, 109, 112, 114, 114, 113, 112, 113, 114, 113, 115, 32.37881 + 119, 123, 126, 128, 129, 129, 130, 131, 135, 138, 139, 141, 141, 141, 137, 138, 32.37882 + 137, 138, 138, 137, 138, 137, 135, 135, 134, 132, 132, 133, 133, 134, 134, 135, 32.37883 + 134, 133, 132, 130, 129, 129, 127, 127, 125, 124, 122, 120, 118, 117, 118, 118, 32.37884 + 117, 114, 113, 112, 112, 112, 109, 114, 114, 110, 109, 104, 80, 53, 62, 71, 32.37885 + 74, 71, 71, 73, 66, 53, 255, 255, 255, 255, 255, 255, 93, 91, 88, 73, 32.37886 + 56, 64, 62, 57, 51, 44, 38, 34, 32, 29, 28, 29, 30, 31, 33, 34, 32.37887 + 35, 33, 36, 40, 45, 49, 55, 61, 66, 74, 79, 84, 84, 84, 85, 89, 32.37888 + 93, 102, 105, 107, 108, 107, 106, 107, 107, 108, 107, 106, 106, 105, 105, 104, 32.37889 + 105, 111, 113, 114, 114, 113, 112, 112, 113, 111, 114, 117, 121, 125, 126, 127, 32.37890 + 127, 129, 130, 132, 135, 136, 139, 141, 141, 137, 137, 137, 137, 137, 137, 137, 32.37891 + 137, 134, 134, 132, 132, 132, 133, 132, 133, 134, 135, 134, 133, 132, 130, 129, 32.37892 + 129, 125, 125, 124, 122, 122, 121, 120, 119, 118, 117, 116, 113, 112, 111, 111, 32.37893 + 110, 110, 115, 110, 103, 107, 111, 90, 61, 56, 68, 74, 71, 68, 71, 67, 32.37894 + 58, 255, 255, 255, 255, 255, 255, 83, 82, 83, 71, 56, 56, 56, 52, 47, 32.37895 + 38, 30, 26, 24, 27, 28, 29, 29, 31, 32, 33, 33, 31, 36, 42, 46, 32.37896 + 52, 57, 63, 66, 74, 77, 81, 81, 81, 84, 88, 93, 101, 106, 108, 110, 32.37897 + 108, 107, 108, 108, 109, 108, 107, 107, 106, 105, 104, 105, 109, 112, 114, 114, 32.37898 + 113, 112, 112, 114, 113, 114, 116, 118, 121, 123, 125, 125, 128, 129, 131, 132, 32.37899 + 135, 137, 139, 138, 137, 136, 137, 136, 136, 136, 135, 135, 133, 132, 132, 131, 32.37900 + 132, 132, 132, 133, 134, 135, 134, 133, 132, 130, 129, 129, 123, 123, 124, 122, 32.37901 + 122, 121, 121, 120, 118, 116, 115, 112, 111, 110, 109, 109, 111, 113, 108, 99, 32.37902 + 103, 110, 98, 74, 53, 61, 69, 69, 68, 69, 68, 66, 126, 255, 255, 255, 32.37903 + 255, 255, 78, 80, 82, 71, 54, 49, 50, 49, 44, 36, 28, 23, 22, 27, 32.37904 + 28, 30, 31, 32, 32, 33, 33, 34, 39, 45, 51, 56, 59, 63, 65, 72, 32.37905 + 75, 77, 77, 78, 80, 87, 94, 98, 102, 106, 108, 109, 109, 109, 110, 108, 32.37906 + 107, 106, 105, 104, 104, 103, 103, 106, 109, 111, 111, 111, 111, 112, 113, 113, 32.37907 + 114, 114, 116, 119, 120, 123, 124, 128, 128, 128, 130, 131, 134, 136, 136, 135, 32.37908 + 135, 135, 135, 134, 134, 134, 133, 132, 131, 131, 131, 131, 131, 132, 133, 134, 32.37909 + 135, 134, 133, 132, 130, 129, 129, 125, 124, 124, 123, 121, 120, 120, 119, 117, 32.37910 + 115, 113, 111, 109, 108, 108, 107, 109, 112, 107, 99, 102, 108, 102, 86, 61, 32.37911 + 58, 60, 67, 70, 68, 66, 66, 63, 255, 255, 255, 255, 77, 75, 80, 82, 32.37912 + 69, 51, 47, 48, 49, 44, 36, 29, 24, 24, 29, 29, 30, 32, 33, 33, 32.37913 + 33, 33, 38, 42, 49, 55, 59, 60, 62, 63, 70, 73, 74, 73, 75, 79, 32.37914 + 88, 94, 94, 98, 103, 108, 108, 109, 109, 111, 105, 104, 103, 102, 101, 100, 32.37915 + 99, 100, 104, 106, 109, 110, 109, 109, 110, 112, 115, 114, 114, 116, 117, 119, 32.37916 + 122, 123, 126, 127, 128, 129, 129, 132, 133, 134, 135, 134, 134, 134, 133, 133, 32.37917 + 133, 133, 131, 131, 131, 131, 130, 131, 133, 133, 134, 135, 134, 133, 132, 130, 32.37918 + 129, 129, 127, 126, 125, 123, 121, 119, 118, 117, 115, 115, 113, 110, 109, 108, 32.37919 + 106, 106, 109, 112, 109, 102, 103, 107, 103, 93, 71, 59, 56, 65, 71, 66, 32.37920 + 61, 61, 62, 123, 255, 255, 255, 69, 73, 78, 73, 60, 49, 40, 42, 42, 32.37921 + 39, 34, 29, 26, 25, 33, 34, 34, 33, 32, 31, 35, 36, 39, 48, 56, 32.37922 + 61, 57, 54, 57, 62, 64, 66, 71, 73, 77, 82, 88, 92, 96, 100, 106, 32.37923 + 110, 111, 110, 111, 111, 114, 111, 107, 103, 101, 100, 101, 102, 105, 108, 111, 32.37924 + 111, 108, 106, 107, 109, 112, 113, 116, 117, 120, 121, 121, 121, 123, 125, 126, 32.37925 + 127, 127, 128, 128, 129, 130, 132, 133, 134, 134, 133, 131, 130, 131, 130, 130, 32.37926 + 129, 130, 130, 131, 130, 133, 131, 131, 131, 131, 132, 129, 128, 125, 124, 123, 32.37927 + 121, 120, 119, 118, 118, 114, 113, 112, 111, 110, 110, 110, 110, 108, 108, 106, 32.37928 + 104, 103, 101, 100, 99, 82, 68, 56, 59, 63, 63, 62, 63, 65, 56, 255, 32.37929 + 255, 255, 68, 74, 77, 71, 58, 46, 41, 41, 40, 39, 34, 30, 28, 28, 32.37930 + 34, 35, 34, 32, 30, 31, 33, 36, 46, 54, 61, 64, 59, 58, 60, 64, 32.37931 + 63, 66, 70, 73, 76, 80, 86, 90, 94, 99, 104, 107, 109, 109, 110, 111, 32.37932 + 111, 110, 108, 106, 103, 102, 102, 102, 103, 106, 108, 108, 106, 105, 105, 106, 32.37933 + 108, 109, 112, 114, 117, 118, 119, 119, 122, 123, 124, 125, 126, 127, 126, 128, 32.37934 + 130, 130, 131, 132, 131, 131, 131, 131, 131, 131, 131, 130, 130, 130, 131, 132, 32.37935 + 132, 130, 129, 130, 130, 131, 128, 127, 123, 122, 121, 119, 118, 117, 116, 116, 32.37936 + 112, 112, 111, 109, 109, 110, 111, 111, 108, 108, 105, 104, 103, 102, 100, 99, 32.37937 + 85, 71, 58, 58, 61, 61, 60, 61, 62, 56, 255, 255, 255, 70, 76, 76, 32.37938 + 69, 55, 43, 40, 40, 39, 37, 33, 31, 30, 32, 36, 35, 33, 30, 29, 32.37939 + 31, 36, 39, 53, 58, 63, 63, 59, 57, 59, 63, 63, 66, 69, 73, 75, 32.37940 + 79, 83, 86, 91, 95, 101, 105, 107, 109, 109, 111, 110, 110, 109, 108, 106, 32.37941 + 105, 102, 101, 101, 103, 104, 105, 103, 102, 102, 103, 105, 107, 110, 113, 116, 32.37942 + 118, 119, 119, 121, 122, 123, 125, 126, 126, 126, 126, 129, 129, 129, 129, 129, 32.37943 + 130, 130, 130, 131, 131, 131, 130, 130, 130, 130, 131, 131, 129, 128, 127, 129, 32.37944 + 128, 127, 126, 123, 122, 120, 118, 117, 116, 115, 115, 112, 111, 108, 107, 106, 32.37945 + 108, 111, 113, 108, 107, 106, 103, 102, 100, 100, 100, 91, 76, 61, 57, 59, 32.37946 + 59, 58, 57, 61, 57, 255, 255, 255, 72, 76, 77, 68, 52, 40, 39, 38, 32.37947 + 37, 34, 31, 31, 32, 34, 34, 34, 32, 30, 29, 34, 40, 46, 55, 59, 32.37948 + 61, 59, 54, 53, 55, 59, 62, 64, 68, 72, 74, 77, 80, 83, 89, 93, 32.37949 + 98, 102, 104, 106, 108, 110, 110, 112, 112, 112, 109, 106, 102, 99, 99, 100, 32.37950 + 101, 102, 100, 100, 100, 100, 106, 107, 110, 113, 116, 118, 121, 121, 120, 122, 32.37951 + 123, 126, 126, 127, 127, 128, 131, 130, 129, 128, 128, 130, 132, 133, 130, 130, 32.37952 + 129, 129, 129, 129, 129, 130, 131, 129, 126, 126, 127, 127, 125, 124, 123, 122, 32.37953 + 120, 118, 117, 116, 114, 114, 111, 108, 105, 103, 104, 107, 111, 113, 108, 107, 32.37954 + 105, 102, 101, 100, 101, 100, 94, 80, 65, 56, 56, 58, 55, 53, 59, 58, 32.37955 + 255, 255, 255, 71, 76, 75, 65, 51, 40, 37, 37, 37, 34, 32, 31, 33, 32.37956 + 36, 32, 32, 32, 32, 35, 41, 48, 53, 57, 57, 57, 55, 51, 50, 53, 32.37957 + 56, 60, 64, 69, 72, 74, 76, 79, 81, 88, 90, 96, 100, 102, 104, 107, 32.37958 + 109, 111, 113, 115, 114, 110, 107, 100, 98, 100, 99, 99, 100, 99, 100, 99, 32.37959 + 99, 105, 107, 109, 112, 116, 118, 120, 121, 121, 123, 124, 126, 128, 129, 129, 32.37960 + 130, 132, 132, 130, 130, 130, 132, 133, 135, 129, 129, 128, 127, 127, 127, 128, 32.37961 + 128, 131, 129, 126, 125, 125, 125, 123, 123, 121, 120, 118, 116, 114, 113, 111, 32.37962 + 111, 109, 107, 104, 103, 103, 106, 110, 113, 108, 107, 104, 102, 100, 100, 100, 32.37963 + 100, 97, 85, 68, 58, 57, 57, 56, 51, 59, 59, 255, 255, 255, 70, 73, 32.37964 + 72, 63, 49, 41, 37, 39, 39, 38, 35, 35, 35, 37, 33, 34, 35, 37, 32.37965 + 40, 46, 53, 59, 58, 58, 55, 53, 50, 52, 55, 58, 59, 63, 68, 72, 32.37966 + 75, 77, 79, 81, 88, 92, 95, 99, 100, 102, 105, 108, 112, 113, 115, 115, 32.37967 + 112, 108, 104, 100, 103, 101, 99, 99, 100, 101, 101, 101, 103, 105, 108, 110, 32.37968 + 114, 115, 117, 118, 122, 122, 125, 127, 129, 130, 130, 131, 132, 132, 131, 131, 32.37969 + 132, 134, 135, 135, 130, 130, 129, 128, 128, 128, 127, 128, 132, 129, 126, 125, 32.37970 + 124, 124, 124, 123, 118, 117, 115, 113, 111, 109, 108, 107, 108, 107, 105, 104, 32.37971 + 103, 106, 109, 110, 108, 105, 104, 101, 99, 99, 100, 101, 97, 86, 71, 61, 32.37972 + 58, 60, 57, 50, 55, 60, 255, 255, 255, 65, 68, 66, 58, 48, 40, 40, 32.37973 + 42, 43, 42, 39, 38, 37, 39, 37, 39, 41, 43, 45, 50, 56, 60, 57, 32.37974 + 56, 52, 50, 49, 52, 56, 61, 58, 62, 68, 73, 76, 77, 80, 83, 90, 32.37975 + 92, 96, 99, 99, 101, 104, 107, 108, 110, 113, 114, 114, 112, 108, 107, 105, 32.37976 + 102, 99, 99, 102, 104, 103, 102, 105, 106, 109, 111, 114, 115, 117, 117, 120, 32.37977 + 121, 124, 125, 127, 129, 130, 130, 130, 130, 131, 132, 133, 133, 133, 133, 132, 32.37978 + 132, 131, 130, 129, 129, 130, 130, 133, 129, 127, 125, 125, 125, 123, 123, 120, 32.37979 + 118, 116, 114, 112, 110, 108, 108, 108, 107, 105, 104, 104, 106, 107, 108, 108, 32.37980 + 106, 103, 100, 99, 98, 101, 101, 96, 88, 74, 63, 62, 64, 60, 50, 51, 32.37981 + 58, 255, 255, 255, 62, 65, 62, 55, 45, 38, 43, 45, 47, 46, 43, 41, 32.37982 + 41, 41, 41, 43, 45, 47, 48, 51, 56, 59, 55, 53, 49, 47, 47, 51, 32.37983 + 56, 61, 56, 61, 68, 73, 77, 79, 81, 83, 91, 94, 96, 99, 99, 101, 32.37984 + 104, 106, 105, 107, 110, 113, 114, 115, 113, 112, 108, 105, 101, 101, 103, 106, 32.37985 + 105, 104, 109, 110, 113, 114, 116, 117, 118, 118, 118, 120, 121, 124, 126, 128, 32.37986 + 128, 130, 127, 129, 131, 133, 133, 133, 132, 131, 134, 134, 133, 132, 131, 131, 32.37987 + 131, 132, 134, 130, 126, 124, 124, 125, 124, 123, 124, 122, 120, 117, 115, 114, 32.37988 + 112, 111, 108, 107, 107, 105, 106, 105, 106, 106, 108, 106, 102, 100, 98, 98, 32.37989 + 100, 102, 95, 89, 75, 64, 64, 67, 62, 51, 47, 55, 255, 255, 255, 64, 32.37990 + 72, 69, 57, 48, 47, 42, 45, 45, 44, 45, 47, 44, 38, 36, 44, 48, 32.37991 + 47, 49, 55, 57, 54, 55, 51, 48, 45, 46, 48, 53, 55, 53, 58, 63, 32.37992 + 69, 76, 82, 90, 94, 90, 92, 93, 96, 99, 102, 103, 105, 101, 104, 109, 32.37993 + 112, 115, 115, 113, 112, 107, 105, 103, 102, 101, 102, 104, 105, 113, 113, 114, 32.37994 + 114, 115, 115, 115, 116, 118, 119, 123, 126, 129, 131, 132, 133, 131, 131, 131, 32.37995 + 133, 133, 135, 135, 135, 132, 131, 130, 129, 129, 130, 130, 131, 131, 131, 130, 32.37996 + 129, 129, 128, 127, 127, 124, 123, 121, 118, 118, 116, 116, 115, 110, 109, 108, 32.37997 + 107, 107, 108, 106, 105, 105, 105, 104, 103, 102, 100, 98, 96, 97, 90, 77, 32.37998 + 66, 63, 65, 62, 56, 51, 54, 255, 255, 255, 69, 72, 66, 53, 46, 47, 32.37999 + 45, 49, 49, 46, 44, 46, 45, 41, 44, 50, 52, 49, 49, 53, 53, 49, 32.38000 + 53, 50, 47, 44, 44, 47, 50, 53, 55, 59, 64, 71, 76, 82, 88, 92, 32.38001 + 91, 92, 94, 97, 99, 102, 104, 105, 102, 104, 107, 112, 114, 114, 113, 112, 32.38002 + 108, 107, 104, 103, 102, 102, 104, 105, 111, 111, 111, 112, 113, 115, 115, 115, 32.38003 + 117, 120, 122, 125, 128, 129, 130, 131, 131, 131, 131, 133, 133, 134, 135, 135, 32.38004 + 131, 130, 130, 129, 129, 129, 129, 130, 131, 130, 129, 128, 128, 127, 126, 127, 32.38005 + 124, 123, 121, 121, 118, 118, 115, 115, 112, 111, 108, 107, 107, 108, 106, 106, 32.38006 + 106, 105, 104, 102, 101, 99, 98, 98, 98, 92, 80, 66, 59, 60, 58, 53, 32.38007 + 51, 54, 255, 255, 255, 75, 71, 60, 49, 45, 49, 49, 54, 53, 48, 43, 32.38008 + 44, 46, 45, 51, 53, 54, 51, 50, 52, 51, 47, 50, 47, 46, 44, 44, 32.38009 + 45, 48, 49, 56, 59, 66, 71, 75, 80, 85, 89, 91, 92, 94, 97, 99, 32.38010 + 101, 103, 105, 101, 103, 108, 111, 113, 114, 113, 112, 110, 109, 107, 105, 104, 32.38011 + 104, 105, 106, 108, 108, 110, 111, 113, 115, 116, 117, 119, 119, 122, 124, 127, 32.38012 + 128, 129, 130, 131, 131, 131, 131, 132, 133, 133, 134, 130, 130, 129, 128, 128, 32.38013 + 129, 129, 129, 130, 129, 128, 128, 127, 126, 125, 126, 123, 123, 123, 121, 120, 32.38014 + 118, 117, 115, 115, 113, 109, 107, 107, 108, 107, 107, 106, 105, 102, 100, 99, 32.38015 + 98, 99, 99, 98, 95, 83, 67, 56, 54, 53, 52, 52, 53, 255, 255, 255, 32.38016 + 78, 69, 55, 46, 46, 51, 51, 56, 56, 48, 41, 42, 46, 48, 52, 52, 32.38017 + 52, 51, 52, 53, 52, 49, 46, 44, 43, 42, 42, 44, 45, 46, 52, 57, 32.38018 + 64, 70, 75, 80, 83, 87, 90, 92, 94, 96, 99, 100, 103, 104, 101, 102, 32.38019 + 105, 108, 111, 112, 112, 112, 111, 110, 108, 107, 106, 106, 106, 106, 105, 106, 32.38020 + 108, 110, 113, 116, 117, 118, 121, 121, 123, 125, 126, 127, 129, 129, 130, 130, 32.38021 + 131, 131, 132, 133, 133, 133, 129, 129, 128, 128, 127, 127, 128, 128, 129, 128, 32.38022 + 128, 127, 126, 126, 125, 125, 124, 124, 123, 123, 121, 120, 117, 116, 118, 114, 32.38023 + 110, 108, 108, 109, 109, 108, 107, 104, 102, 99, 98, 99, 99, 101, 98, 96, 32.38024 + 86, 69, 54, 51, 53, 55, 53, 53, 255, 255, 255, 77, 66, 52, 47, 48, 32.38025 + 53, 51, 56, 55, 48, 41, 43, 48, 50, 55, 52, 49, 50, 52, 51, 49, 32.38026 + 48, 43, 42, 41, 41, 41, 44, 44, 46, 50, 55, 62, 69, 74, 79, 83, 32.38027 + 85, 89, 89, 92, 95, 96, 99, 101, 101, 100, 101, 103, 105, 108, 109, 110, 32.38028 + 112, 111, 110, 109, 108, 108, 108, 107, 107, 106, 106, 109, 111, 114, 118, 120, 32.38029 + 121, 124, 124, 125, 126, 127, 128, 129, 130, 130, 130, 130, 131, 131, 131, 132, 32.38030 + 132, 129, 129, 128, 127, 127, 127, 127, 128, 129, 128, 128, 127, 126, 126, 125, 32.38031 + 125, 124, 125, 125, 124, 123, 121, 119, 118, 120, 116, 112, 110, 109, 109, 109, 32.38032 + 108, 107, 104, 102, 100, 99, 99, 100, 102, 97, 97, 87, 69, 55, 53, 56, 32.38033 + 58, 56, 54, 255, 255, 255, 74, 62, 51, 47, 49, 50, 50, 54, 53, 48, 32.38034 + 44, 47, 51, 52, 58, 51, 47, 49, 50, 47, 44, 44, 42, 41, 40, 39, 32.38035 + 40, 44, 46, 49, 51, 57, 65, 70, 75, 78, 82, 84, 86, 88, 90, 92, 32.38036 + 94, 97, 98, 100, 98, 99, 100, 102, 104, 107, 108, 110, 110, 109, 109, 110, 32.38037 + 109, 109, 110, 109, 107, 109, 111, 114, 117, 120, 122, 124, 126, 126, 126, 127, 32.38038 + 128, 129, 129, 130, 129, 130, 130, 130, 130, 130, 130, 130, 129, 129, 128, 127, 32.38039 + 126, 127, 128, 128, 130, 129, 128, 128, 127, 126, 125, 126, 125, 125, 125, 125, 32.38040 + 124, 122, 119, 118, 120, 118, 114, 113, 112, 111, 109, 108, 105, 105, 102, 101, 32.38041 + 100, 100, 102, 102, 98, 96, 86, 68, 55, 53, 57, 60, 59, 56, 255, 255, 32.38042 + 255, 71, 59, 51, 49, 47, 43, 49, 52, 51, 49, 49, 54, 57, 55, 55, 32.38043 + 47, 42, 46, 48, 46, 43, 44, 41, 40, 39, 38, 41, 45, 50, 54, 57, 32.38044 + 63, 69, 74, 77, 79, 80, 81, 85, 86, 88, 90, 92, 95, 96, 97, 97, 32.38045 + 96, 97, 98, 101, 103, 107, 109, 107, 108, 109, 110, 111, 111, 111, 111, 111, 32.38046 + 112, 114, 118, 120, 123, 125, 126, 126, 127, 125, 126, 126, 127, 128, 128, 129, 32.38047 + 129, 130, 130, 130, 130, 130, 130, 129, 128, 128, 128, 127, 127, 128, 128, 131, 32.38048 + 130, 129, 128, 128, 127, 126, 127, 126, 125, 127, 126, 124, 123, 121, 119, 121, 32.38049 + 119, 116, 115, 114, 112, 109, 107, 105, 104, 104, 104, 103, 103, 102, 102, 98, 32.38050 + 95, 83, 66, 53, 53, 56, 58, 63, 57, 255, 255, 255, 69, 58, 51, 49, 32.38051 + 44, 38, 49, 52, 51, 50, 53, 59, 60, 57, 49, 40, 37, 43, 48, 47, 32.38052 + 46, 47, 42, 40, 38, 37, 40, 46, 52, 56, 64, 68, 74, 77, 79, 79, 32.38053 + 79, 80, 84, 85, 86, 88, 91, 93, 95, 97, 96, 96, 96, 97, 99, 102, 32.38054 + 105, 108, 106, 107, 108, 110, 111, 112, 112, 112, 114, 114, 117, 119, 122, 124, 32.38055 + 126, 128, 126, 126, 125, 125, 124, 125, 126, 127, 130, 130, 129, 130, 130, 130, 32.38056 + 130, 130, 130, 129, 128, 127, 127, 128, 128, 129, 131, 131, 130, 129, 129, 128, 32.38057 + 127, 127, 126, 126, 127, 127, 125, 123, 121, 119, 119, 119, 117, 118, 116, 114, 32.38058 + 109, 106, 104, 105, 105, 105, 104, 103, 102, 101, 100, 95, 81, 64, 52, 52, 32.38059 + 54, 54, 65, 58, 255, 255, 255, 68, 61, 51, 46, 45, 47, 43, 49, 53, 32.38060 + 53, 55, 56, 55, 49, 38, 40, 42, 44, 45, 43, 42, 39, 40, 38, 37, 32.38061 + 37, 41, 46, 52, 56, 65, 68, 72, 76, 76, 76, 76, 76, 82, 84, 86, 32.38062 + 89, 89, 89, 92, 94, 99, 91, 88, 94, 99, 99, 100, 104, 112, 109, 107, 32.38063 + 109, 113, 116, 114, 112, 115, 116, 117, 121, 122, 122, 124, 124, 120, 121, 123, 32.38064 + 124, 124, 124, 123, 123, 121, 122, 123, 124, 125, 126, 126, 126, 127, 128, 130, 32.38065 + 128, 125, 124, 127, 129, 130, 129, 128, 129, 131, 130, 129, 127, 123, 123, 123, 32.38066 + 123, 122, 120, 119, 117, 118, 120, 120, 120, 118, 113, 109, 106, 101, 102, 102, 32.38067 + 103, 103, 102, 99, 100, 98, 87, 79, 65, 46, 44, 53, 55, 56, 120, 255, 32.38068 + 255, 255, 69, 62, 51, 45, 44, 47, 45, 50, 53, 53, 54, 55, 53, 49, 32.38069 + 40, 41, 42, 43, 44, 42, 40, 39, 39, 38, 38, 40, 43, 48, 55, 57, 32.38070 + 64, 68, 72, 74, 75, 75, 74, 76, 80, 83, 86, 87, 88, 89, 91, 93, 32.38071 + 91, 89, 90, 95, 98, 97, 101, 108, 109, 107, 104, 104, 104, 103, 101, 100, 32.38072 + 103, 109, 118, 125, 128, 127, 123, 121, 124, 124, 125, 126, 126, 124, 121, 121, 32.38073 + 118, 120, 121, 123, 124, 125, 126, 126, 125, 127, 128, 126, 122, 122, 124, 126, 32.38074 + 127, 127, 126, 127, 128, 128, 127, 124, 122, 123, 121, 121, 120, 118, 116, 116, 32.38075 + 118, 119, 120, 120, 119, 115, 111, 108, 106, 107, 107, 107, 106, 103, 102, 101, 32.38076 + 100, 88, 80, 65, 46, 43, 53, 54, 56, 255, 255, 255, 255, 70, 62, 53, 32.38077 + 46, 44, 43, 45, 50, 53, 51, 51, 52, 50, 45, 41, 41, 42, 41, 40, 32.38078 + 39, 38, 38, 38, 38, 40, 43, 47, 53, 59, 62, 65, 68, 72, 73, 73, 32.38079 + 72, 73, 74, 78, 81, 83, 85, 85, 87, 89, 91, 86, 89, 95, 99, 97, 32.38080 + 96, 100, 106, 103, 102, 99, 95, 88, 85, 83, 84, 88, 95, 106, 115, 122, 32.38081 + 125, 124, 123, 124, 125, 125, 125, 124, 121, 119, 117, 113, 115, 117, 119, 121, 32.38082 + 122, 122, 122, 124, 123, 124, 123, 121, 119, 121, 122, 124, 124, 123, 124, 126, 32.38083 + 125, 123, 120, 121, 120, 120, 119, 118, 116, 114, 114, 114, 115, 118, 118, 117, 32.38084 + 116, 112, 110, 111, 111, 111, 110, 107, 104, 101, 100, 100, 90, 81, 66, 46, 32.38085 + 42, 51, 52, 57, 255, 255, 255, 255, 71, 64, 52, 44, 41, 41, 46, 50, 32.38086 + 52, 50, 50, 50, 47, 42, 43, 42, 41, 39, 38, 37, 37, 36, 38, 39, 32.38087 + 42, 46, 53, 59, 63, 67, 66, 69, 71, 73, 72, 71, 72, 73, 76, 78, 32.38088 + 82, 82, 84, 84, 89, 90, 90, 94, 98, 100, 99, 96, 95, 97, 95, 96, 32.38089 + 93, 86, 77, 71, 72, 72, 76, 78, 82, 89, 100, 111, 121, 127, 118, 119, 32.38090 + 120, 121, 119, 118, 115, 114, 110, 111, 112, 114, 115, 115, 116, 116, 120, 120, 32.38091 + 121, 120, 119, 118, 117, 117, 121, 120, 121, 122, 123, 122, 120, 117, 117, 117, 32.38092 + 117, 117, 115, 114, 112, 111, 109, 112, 113, 116, 116, 114, 111, 110, 113, 113, 32.38093 + 112, 111, 108, 104, 101, 99, 102, 90, 83, 68, 46, 43, 51, 51, 56, 255, 32.38094 + 255, 255, 255, 72, 64, 53, 44, 39, 38, 43, 48, 50, 49, 49, 48, 44, 32.38095 + 39, 41, 40, 39, 37, 36, 36, 35, 36, 38, 40, 45, 50, 57, 64, 69, 32.38096 + 71, 69, 71, 72, 73, 71, 71, 72, 73, 75, 77, 79, 80, 81, 84, 88, 32.38097 + 91, 95, 96, 97, 98, 100, 99, 94, 88, 86, 86, 84, 77, 70, 66, 67, 32.38098 + 68, 68, 67, 67, 70, 78, 91, 103, 112, 106, 108, 111, 114, 116, 115, 113, 32.38099 + 113, 109, 110, 111, 112, 112, 111, 111, 110, 115, 115, 115, 116, 116, 115, 115, 32.38100 + 113, 116, 116, 117, 119, 120, 119, 115, 113, 114, 114, 114, 113, 113, 112, 111, 32.38101 + 109, 109, 111, 113, 115, 116, 115, 113, 111, 114, 114, 113, 112, 109, 106, 102, 32.38102 + 100, 102, 92, 84, 69, 47, 43, 49, 49, 53, 255, 255, 255, 255, 70, 63, 32.38103 + 53, 43, 37, 36, 42, 47, 48, 47, 46, 46, 43, 38, 41, 39, 36, 34, 32.38104 + 33, 33, 35, 37, 39, 41, 47, 54, 61, 67, 72, 73, 72, 74, 75, 74, 32.38105 + 72, 71, 72, 74, 76, 77, 78, 80, 81, 83, 89, 92, 93, 93, 93, 94, 32.38106 + 98, 99, 93, 83, 77, 75, 72, 68, 65, 62, 64, 66, 63, 63, 62, 64, 32.38107 + 68, 73, 79, 83, 90, 93, 98, 104, 107, 109, 109, 109, 106, 107, 108, 109, 32.38108 + 108, 108, 108, 107, 108, 108, 108, 110, 112, 112, 111, 108, 110, 111, 112, 115, 32.38109 + 116, 115, 110, 107, 108, 108, 109, 109, 109, 110, 109, 109, 109, 111, 114, 117, 32.38110 + 117, 116, 113, 112, 114, 113, 113, 112, 110, 107, 104, 104, 101, 91, 84, 69, 32.38111 + 47, 43, 50, 50, 118, 255, 255, 255, 255, 68, 62, 52, 43, 37, 34, 39, 32.38112 + 44, 47, 45, 45, 46, 42, 37, 39, 37, 35, 32, 32, 33, 35, 38, 39, 32.38113 + 43, 49, 57, 63, 70, 72, 74, 76, 77, 77, 76, 74, 73, 74, 75, 75, 32.38114 + 77, 78, 79, 80, 84, 89, 93, 90, 94, 95, 91, 90, 90, 85, 79, 70, 32.38115 + 66, 62, 60, 59, 61, 61, 61, 57, 57, 57, 56, 57, 59, 61, 62, 72, 32.38116 + 76, 82, 88, 93, 96, 97, 97, 96, 97, 98, 101, 102, 102, 103, 103, 99, 32.38117 + 99, 100, 103, 107, 108, 105, 103, 105, 105, 107, 109, 110, 109, 105, 101, 101, 32.38118 + 102, 103, 104, 106, 105, 105, 105, 106, 109, 111, 114, 115, 114, 111, 110, 107, 32.38119 + 108, 108, 108, 107, 104, 103, 101, 100, 90, 84, 71, 49, 44, 51, 50, 255, 32.38120 + 255, 255, 255, 192, 67, 62, 51, 41, 35, 33, 38, 43, 46, 44, 45, 45, 32.38121 + 43, 38, 38, 36, 33, 31, 31, 33, 37, 39, 40, 44, 51, 58, 65, 71, 32.38122 + 73, 75, 78, 79, 79, 76, 74, 74, 75, 77, 76, 77, 78, 79, 80, 84, 32.38123 + 89, 93, 90, 97, 99, 91, 83, 80, 77, 73, 65, 60, 55, 53, 55, 58, 32.38124 + 58, 56, 54, 51, 48, 45, 46, 50, 55, 58, 58, 62, 69, 75, 81, 84, 32.38125 + 84, 84, 84, 86, 88, 92, 94, 97, 97, 98, 93, 93, 95, 98, 104, 105, 32.38126 + 103, 99, 100, 101, 103, 105, 107, 104, 100, 97, 95, 96, 98, 100, 101, 103, 32.38127 + 103, 103, 102, 105, 107, 110, 110, 109, 106, 104, 99, 99, 100, 102, 101, 100, 32.38128 + 98, 97, 99, 89, 83, 71, 49, 44, 51, 50, 255, 255, 255, 255, 66, 68, 32.38129 + 62, 51, 39, 34, 33, 34, 38, 43, 48, 50, 49, 46, 44, 36, 36, 35, 32.38130 + 35, 35, 36, 37, 37, 43, 47, 53, 60, 67, 71, 75, 77, 79, 77, 77, 32.38131 + 74, 73, 72, 70, 69, 75, 77, 80, 82, 84, 87, 87, 88, 89, 89, 88, 32.38132 + 85, 80, 75, 71, 70, 62, 58, 55, 52, 53, 56, 56, 56, 54, 52, 49, 32.38133 + 46, 44, 44, 46, 47, 51, 53, 56, 60, 64, 69, 72, 73, 74, 78, 83, 32.38134 + 86, 87, 88, 91, 92, 94, 94, 96, 97, 97, 98, 98, 97, 97, 97, 97, 32.38135 + 98, 99, 99, 100, 99, 93, 92, 91, 93, 95, 99, 99, 99, 101, 103, 106, 32.38136 + 107, 106, 104, 101, 97, 91, 90, 89, 92, 97, 99, 100, 99, 97, 90, 87, 32.38137 + 73, 50, 44, 50, 50, 255, 255, 255, 255, 68, 69, 63, 51, 39, 30, 28, 32.38138 + 32, 37, 45, 51, 53, 51, 48, 45, 37, 37, 36, 36, 36, 38, 39, 40, 32.38139 + 42, 47, 53, 61, 67, 71, 74, 74, 75, 76, 77, 77, 77, 77, 76, 76, 32.38140 + 80, 81, 83, 84, 85, 87, 89, 89, 85, 85, 84, 82, 77, 72, 69, 67, 32.38141 + 63, 60, 57, 55, 54, 54, 51, 49, 52, 50, 48, 45, 43, 42, 41, 41, 32.38142 + 44, 45, 47, 49, 52, 54, 57, 57, 60, 64, 69, 75, 78, 80, 84, 86, 32.38143 + 88, 88, 90, 91, 92, 93, 94, 95, 93, 93, 93, 91, 92, 91, 91, 90, 32.38144 + 85, 83, 81, 82, 84, 87, 86, 87, 84, 86, 88, 89, 90, 87, 84, 84, 32.38145 + 82, 81, 80, 82, 85, 89, 88, 87, 89, 83, 82, 71, 49, 44, 51, 51, 32.38146 + 255, 255, 255, 255, 69, 70, 65, 52, 39, 30, 26, 32, 37, 45, 52, 54, 32.38147 + 51, 45, 41, 38, 37, 37, 37, 38, 40, 41, 43, 41, 46, 54, 62, 69, 32.38148 + 73, 74, 74, 73, 73, 76, 78, 80, 81, 81, 81, 84, 84, 84, 83, 84, 32.38149 + 85, 86, 87, 83, 82, 80, 77, 73, 68, 63, 62, 60, 59, 56, 55, 53, 32.38150 + 49, 44, 40, 49, 49, 48, 46, 45, 44, 43, 43, 44, 44, 45, 45, 47, 32.38151 + 47, 48, 47, 51, 55, 61, 67, 71, 76, 80, 84, 83, 83, 84, 85, 87, 32.38152 + 88, 91, 92, 92, 91, 91, 89, 89, 86, 86, 86, 79, 77, 75, 75, 76, 32.38153 + 78, 78, 77, 73, 73, 74, 75, 74, 74, 74, 73, 72, 71, 70, 72, 74, 32.38154 + 76, 76, 76, 80, 77, 77, 69, 49, 45, 51, 119, 255, 255, 255, 192, 70, 32.38155 + 71, 67, 57, 45, 35, 30, 35, 40, 47, 51, 51, 46, 40, 35, 37, 37, 32.38156 + 35, 36, 38, 40, 42, 45, 44, 50, 58, 66, 73, 75, 75, 75, 75, 75, 32.38157 + 75, 77, 79, 81, 84, 86, 85, 85, 83, 82, 81, 81, 82, 82, 81, 79, 32.38158 + 77, 74, 72, 67, 62, 59, 57, 54, 51, 48, 47, 45, 41, 37, 42, 43, 32.38159 + 43, 44, 44, 44, 42, 42, 46, 46, 46, 45, 44, 45, 45, 44, 46, 49, 32.38160 + 55, 61, 65, 69, 75, 79, 82, 81, 81, 82, 82, 84, 87, 88, 88, 88, 32.38161 + 87, 85, 84, 83, 82, 81, 75, 72, 69, 66, 67, 68, 68, 68, 64, 64, 32.38162 + 64, 64, 64, 65, 66, 67, 66, 66, 65, 66, 69, 71, 74, 75, 78, 74, 32.38163 + 76, 68, 49, 44, 51, 255, 255, 255, 255, 68, 69, 72, 70, 63, 54, 45, 32.38164 + 40, 43, 46, 49, 51, 48, 43, 35, 30, 34, 33, 33, 33, 36, 39, 44, 32.38165 + 45, 49, 53, 63, 71, 76, 79, 79, 79, 81, 78, 75, 73, 74, 78, 83, 32.38166 + 87, 88, 87, 85, 83, 81, 80, 79, 79, 80, 77, 75, 73, 71, 66, 61, 32.38167 + 56, 54, 51, 46, 45, 44, 44, 45, 44, 39, 40, 40, 40, 40, 38, 37, 32.38168 + 36, 41, 41, 40, 41, 41, 41, 40, 41, 41, 43, 49, 52, 56, 61, 66, 32.38169 + 70, 78, 78, 78, 78, 79, 78, 80, 80, 80, 80, 80, 78, 77, 75, 75, 32.38170 + 74, 67, 63, 59, 56, 57, 57, 58, 57, 52, 52, 52, 52, 54, 55, 57, 32.38171 + 58, 59, 60, 61, 63, 65, 70, 74, 77, 80, 76, 78, 69, 50, 43, 49, 32.38172 + 255, 255, 255, 255, 68, 70, 72, 72, 68, 63, 56, 52, 54, 53, 52, 50, 32.38173 + 45, 39, 34, 30, 31, 30, 30, 30, 34, 39, 43, 46, 54, 57, 65, 72, 32.38174 + 78, 81, 82, 82, 85, 81, 77, 74, 74, 78, 82, 86, 89, 89, 88, 87, 32.38175 + 84, 82, 79, 78, 78, 75, 71, 69, 68, 65, 59, 53, 53, 49, 45, 44, 32.38176 + 45, 48, 50, 50, 49, 49, 46, 44, 42, 40, 39, 38, 37, 38, 39, 39, 32.38177 + 40, 40, 41, 42, 42, 44, 48, 50, 53, 55, 60, 64, 70, 71, 73, 73, 32.38178 + 75, 75, 74, 73, 80, 79, 77, 76, 72, 71, 70, 68, 63, 58, 53, 51, 32.38179 + 51, 52, 53, 52, 48, 48, 48, 49, 51, 53, 54, 55, 55, 56, 58, 60, 32.38180 + 63, 67, 74, 78, 85, 80, 79, 69, 48, 42, 48, 255, 255, 255, 255, 70, 32.38181 + 70, 71, 71, 70, 68, 63, 60, 57, 54, 49, 44, 38, 34, 31, 30, 30, 32.38182 + 29, 29, 29, 34, 39, 44, 48, 55, 59, 66, 72, 78, 81, 83, 84, 84, 32.38183 + 82, 81, 80, 79, 81, 82, 84, 89, 89, 90, 89, 87, 83, 79, 76, 74, 32.38184 + 70, 65, 64, 63, 60, 53, 47, 46, 45, 43, 44, 47, 48, 50, 49, 52, 32.38185 + 51, 49, 47, 45, 44, 44, 45, 39, 39, 39, 40, 41, 41, 42, 42, 42, 32.38186 + 43, 46, 48, 49, 53, 57, 61, 62, 65, 69, 73, 76, 75, 74, 73, 83, 32.38187 + 81, 78, 74, 70, 66, 63, 62, 59, 54, 49, 46, 46, 47, 49, 48, 46, 32.38188 + 47, 49, 51, 54, 55, 56, 57, 55, 57, 59, 60, 62, 65, 72, 78, 87, 32.38189 + 81, 79, 68, 47, 42, 48, 255, 255, 255, 255, 71, 70, 70, 70, 70, 68, 32.38190 + 65, 63, 54, 50, 43, 36, 31, 29, 29, 30, 29, 29, 28, 29, 33, 39, 32.38191 + 46, 50, 56, 59, 64, 71, 76, 80, 83, 83, 83, 84, 84, 84, 85, 84, 32.38192 + 84, 83, 85, 86, 88, 88, 86, 81, 75, 72, 70, 66, 60, 59, 59, 56, 32.38193 + 49, 42, 40, 41, 41, 43, 45, 46, 45, 43, 43, 42, 41, 40, 41, 44, 32.38194 + 47, 49, 37, 37, 37, 38, 38, 38, 38, 38, 35, 36, 39, 40, 42, 45, 32.38195 + 51, 54, 59, 63, 69, 75, 79, 79, 77, 76, 80, 78, 74, 69, 64, 57, 32.38196 + 53, 51, 51, 46, 41, 37, 37, 39, 40, 41, 43, 45, 47, 50, 51, 53, 32.38197 + 53, 54, 58, 60, 62, 61, 61, 65, 72, 78, 87, 80, 78, 66, 45, 41, 32.38198 + 48, 255, 255, 255, 255, 69, 69, 70, 70, 75, 75, 68, 57, 46, 39, 33, 32.38199 + 33, 29, 26, 27, 32, 26, 27, 29, 31, 35, 41, 48, 54, 52, 58, 67, 32.38200 + 74, 79, 83, 86, 88, 77, 82, 86, 86, 84, 83, 85, 89, 85, 86, 86, 32.38201 + 88, 88, 83, 76, 70, 65, 63, 60, 57, 54, 49, 43, 39, 36, 37, 39, 32.38202 + 39, 39, 37, 35, 33, 29, 35, 36, 31, 32, 36, 42, 43, 46, 47, 45, 32.38203 + 42, 37, 37, 40, 44, 38, 36, 37, 41, 43, 43, 48, 55, 59, 67, 76, 32.38204 + 79, 84, 85, 83, 79, 78, 75, 71, 67, 62, 59, 56, 56, 48, 46, 42, 32.38205 + 40, 37, 35, 36, 36, 45, 42, 40, 44, 50, 56, 58, 57, 63, 64, 67, 32.38206 + 68, 69, 70, 72, 74, 83, 83, 73, 58, 47, 45, 47, 255, 255, 255, 255, 32.38207 + 68, 69, 67, 66, 69, 68, 59, 49, 41, 35, 31, 32, 29, 25, 26, 30, 32.38208 + 27, 29, 31, 33, 37, 42, 49, 54, 56, 61, 69, 74, 78, 82, 86, 88, 32.38209 + 87, 87, 86, 87, 88, 87, 85, 83, 89, 91, 90, 90, 86, 81, 76, 73, 32.38210 + 63, 59, 55, 52, 50, 47, 43, 40, 39, 38, 36, 34, 31, 28, 27, 26, 32.38211 + 23, 28, 33, 35, 38, 44, 45, 43, 43, 42, 43, 42, 41, 40, 41, 42, 32.38212 + 40, 38, 40, 45, 48, 47, 54, 60, 63, 74, 85, 92, 96, 97, 92, 85, 32.38213 + 80, 74, 67, 61, 56, 53, 51, 52, 45, 43, 39, 36, 35, 36, 38, 40, 32.38214 + 40, 40, 41, 44, 47, 50, 50, 50, 52, 59, 65, 68, 67, 68, 71, 75, 32.38215 + 81, 81, 73, 59, 48, 46, 255, 255, 255, 255, 192, 67, 67, 65, 62, 62, 32.38216 + 60, 51, 40, 36, 33, 31, 32, 31, 27, 29, 31, 29, 30, 33, 35, 37, 32.38217 + 43, 50, 55, 59, 63, 69, 74, 77, 82, 85, 87, 92, 89, 87, 89, 92, 32.38218 + 93, 90, 85, 84, 88, 92, 92, 89, 84, 78, 75, 67, 63, 56, 52, 50, 32.38219 + 51, 49, 48, 47, 44, 39, 33, 29, 25, 23, 22, 22, 27, 34, 43, 51, 32.38220 + 57, 54, 47, 38, 39, 39, 40, 42, 43, 42, 40, 36, 36, 39, 44, 48, 32.38221 + 50, 56, 63, 70, 82, 97, 106, 110, 111, 104, 95, 83, 75, 64, 53, 49, 32.38222 + 46, 46, 45, 43, 41, 38, 37, 37, 40, 43, 46, 41, 43, 46, 47, 47, 32.38223 + 46, 46, 47, 42, 50, 59, 64, 65, 67, 72, 76, 79, 79, 73, 60, 50, 32.38224 + 47, 255, 255, 255, 255, 63, 65, 64, 60, 57, 57, 55, 46, 34, 33, 33, 32.38225 + 33, 35, 35, 33, 33, 33, 29, 31, 33, 34, 37, 42, 48, 53, 58, 62, 32.38226 + 67, 71, 75, 80, 85, 88, 89, 88, 89, 92, 95, 98, 95, 94, 80, 83, 32.38227 + 88, 95, 98, 96, 89, 83, 77, 73, 65, 60, 59, 60, 60, 61, 58, 55, 32.38228 + 51, 47, 41, 37, 33, 31, 34, 38, 44, 53, 64, 72, 66, 56, 43, 39, 32.38229 + 36, 37, 40, 42, 40, 38, 36, 35, 38, 45, 49, 52, 58, 66, 75, 89, 32.38230 + 102, 113, 119, 120, 114, 105, 89, 77, 61, 49, 42, 41, 40, 40, 42, 41, 32.38231 + 38, 38, 39, 43, 49, 52, 49, 51, 54, 53, 49, 47, 49, 50, 44, 47, 32.38232 + 52, 57, 62, 67, 72, 75, 75, 77, 73, 59, 50, 47, 255, 255, 255, 255, 32.38233 + 59, 58, 56, 53, 50, 51, 50, 42, 32, 30, 31, 33, 33, 35, 36, 35, 32.38234 + 34, 29, 30, 32, 35, 38, 40, 46, 49, 55, 59, 65, 69, 73, 79, 84, 32.38235 + 87, 86, 89, 93, 95, 94, 94, 96, 99, 91, 85, 81, 86, 95, 100, 97, 32.38236 + 92, 82, 77, 70, 65, 65, 67, 67, 67, 70, 70, 71, 69, 66, 61, 55, 32.38237 + 53, 54, 54, 55, 60, 72, 79, 75, 66, 53, 47, 40, 38, 39, 41, 41, 32.38238 + 40, 41, 40, 44, 50, 54, 55, 62, 69, 79, 90, 103, 111, 118, 121, 117, 32.38239 + 111, 96, 81, 62, 47, 40, 39, 39, 39, 39, 38, 37, 35, 38, 41, 46, 32.38240 + 49, 49, 51, 52, 51, 47, 45, 48, 51, 53, 48, 45, 49, 57, 67, 71, 32.38241 + 73, 75, 76, 71, 59, 49, 47, 255, 255, 255, 255, 54, 51, 50, 46, 44, 32.38242 + 45, 46, 39, 30, 26, 29, 32, 30, 32, 35, 35, 33, 29, 31, 33, 35, 32.38243 + 37, 40, 44, 47, 55, 58, 65, 69, 72, 76, 80, 83, 86, 91, 95, 95, 32.38244 + 91, 90, 92, 96, 100, 87, 71, 67, 74, 82, 87, 88, 77, 74, 69, 67, 32.38245 + 68, 70, 71, 71, 79, 81, 86, 87, 87, 83, 79, 74, 74, 72, 69, 69, 32.38246 + 76, 83, 80, 72, 66, 61, 53, 47, 46, 46, 49, 49, 47, 47, 48, 53, 32.38247 + 55, 56, 61, 68, 79, 90, 101, 109, 116, 119, 117, 112, 101, 84, 63, 46, 32.38248 + 39, 39, 38, 36, 35, 34, 32, 32, 32, 34, 37, 38, 40, 41, 43, 43, 32.38249 + 43, 42, 43, 44, 56, 50, 44, 44, 53, 62, 68, 71, 76, 77, 72, 57, 32.38250 + 47, 45, 255, 255, 255, 255, 51, 51, 50, 46, 44, 47, 47, 41, 31, 27, 32.38251 + 31, 32, 29, 31, 35, 37, 34, 31, 33, 34, 36, 38, 40, 44, 46, 57, 32.38252 + 62, 68, 71, 74, 75, 76, 78, 86, 87, 90, 92, 91, 91, 91, 92, 95, 32.38253 + 88, 76, 69, 67, 70, 75, 78, 71, 71, 71, 73, 77, 80, 80, 80, 84, 32.38254 + 86, 90, 93, 95, 94, 91, 90, 90, 87, 83, 79, 83, 88, 85, 79, 77, 32.38255 + 74, 70, 64, 59, 58, 60, 63, 59, 57, 59, 62, 62, 62, 66, 73, 79, 32.38256 + 89, 101, 108, 114, 118, 116, 110, 103, 86, 63, 46, 40, 39, 38, 35, 33, 32.38257 + 31, 31, 30, 29, 29, 28, 29, 31, 33, 37, 43, 46, 46, 43, 40, 50, 32.38258 + 48, 46, 46, 47, 55, 65, 73, 79, 78, 71, 56, 45, 43, 255, 255, 255, 32.38259 + 255, 48, 55, 54, 51, 47, 49, 51, 45, 35, 29, 34, 33, 30, 32, 38, 32.38260 + 40, 37, 31, 34, 37, 39, 40, 41, 45, 47, 61, 65, 71, 74, 75, 74, 32.38261 + 74, 74, 84, 81, 82, 87, 92, 96, 94, 90, 89, 93, 93, 90, 81, 75, 32.38262 + 74, 77, 70, 71, 75, 82, 87, 91, 91, 90, 85, 87, 89, 93, 94, 95, 32.38263 + 96, 96, 98, 97, 93, 90, 90, 94, 92, 86, 82, 83, 82, 77, 70, 68, 32.38264 + 70, 72, 76, 74, 75, 77, 77, 75, 78, 84, 78, 89, 102, 110, 116, 119, 32.38265 + 114, 107, 104, 86, 63, 46, 40, 38, 37, 34, 34, 34, 33, 32, 30, 27, 32.38266 + 25, 23, 28, 32, 39, 48, 54, 54, 46, 39, 40, 46, 51, 48, 45, 49, 32.38267 + 62, 74, 80, 79, 70, 55, 44, 42, 255, 255, 255, 255, 51, 48, 56, 47, 32.38268 + 50, 49, 45, 54, 43, 36, 39, 38, 32, 33, 37, 38, 33, 34, 35, 36, 32.38269 + 35, 36, 39, 43, 47, 57, 63, 68, 73, 76, 76, 78, 79, 77, 78, 79, 32.38270 + 80, 81, 83, 85, 85, 94, 96, 100, 100, 99, 95, 89, 86, 84, 85, 85, 32.38271 + 87, 93, 99, 104, 108, 97, 94, 92, 91, 92, 94, 94, 95, 98, 98, 97, 32.38272 + 95, 90, 89, 89, 91, 84, 85, 86, 85, 85, 83, 81, 79, 82, 82, 82, 32.38273 + 82, 82, 83, 83, 84, 86, 94, 103, 109, 117, 120, 117, 110, 102, 85, 64, 32.38274 + 52, 50, 50, 47, 42, 44, 44, 44, 45, 45, 43, 38, 34, 37, 34, 37, 32.38275 + 51, 63, 66, 56, 44, 36, 41, 48, 53, 50, 49, 58, 69, 79, 79, 72, 32.38276 + 58, 47, 45, 255, 255, 255, 255, 48, 43, 52, 44, 47, 48, 46, 54, 46, 32.38277 + 36, 38, 37, 33, 34, 39, 40, 38, 39, 38, 36, 34, 34, 38, 44, 49, 32.38278 + 56, 61, 67, 73, 76, 76, 78, 79, 77, 78, 79, 81, 84, 87, 89, 90, 32.38279 + 91, 93, 98, 101, 104, 104, 102, 102, 99, 97, 95, 94, 95, 98, 102, 105, 32.38280 + 103, 100, 97, 94, 92, 89, 86, 83, 84, 86, 89, 88, 88, 88, 90, 91, 32.38281 + 90, 89, 89, 90, 91, 92, 93, 94, 93, 92, 92, 91, 90, 88, 86, 86, 32.38282 + 87, 94, 101, 107, 114, 118, 115, 109, 104, 89, 71, 60, 59, 62, 62, 61, 32.38283 + 65, 65, 68, 71, 71, 67, 62, 57, 55, 53, 55, 64, 74, 75, 66, 56, 32.38284 + 52, 50, 51, 57, 59, 59, 64, 71, 80, 80, 72, 58, 47, 45, 255, 255, 32.38285 + 255, 255, 46, 39, 49, 41, 46, 47, 45, 56, 48, 39, 40, 40, 36, 37, 32.38286 + 42, 46, 44, 43, 41, 36, 33, 33, 36, 44, 49, 54, 60, 66, 70, 75, 32.38287 + 75, 77, 78, 77, 78, 79, 81, 85, 89, 93, 96, 92, 96, 100, 106, 110, 32.38288 + 113, 114, 114, 109, 104, 98, 92, 89, 88, 89, 90, 97, 95, 92, 90, 89, 32.38289 + 87, 84, 81, 76, 79, 83, 86, 86, 88, 90, 92, 92, 91, 93, 94, 98, 32.38290 + 102, 106, 108, 106, 105, 103, 99, 95, 91, 88, 87, 88, 94, 100, 104, 110, 32.38291 + 115, 114, 108, 105, 95, 81, 72, 73, 77, 82, 84, 87, 89, 92, 96, 98, 32.38292 + 94, 87, 82, 78, 75, 74, 79, 84, 86, 78, 70, 69, 62, 57, 62, 69, 32.38293 + 73, 75, 79, 80, 80, 72, 58, 47, 45, 255, 255, 255, 255, 44, 40, 49, 32.38294 + 41, 45, 46, 45, 56, 48, 48, 46, 43, 40, 40, 43, 46, 47, 42, 42, 32.38295 + 40, 36, 35, 38, 43, 46, 53, 58, 65, 71, 73, 74, 76, 77, 79, 79, 32.38296 + 81, 81, 86, 91, 94, 96, 97, 100, 106, 110, 114, 115, 113, 113, 111, 107, 32.38297 + 99, 91, 86, 82, 81, 81, 77, 76, 73, 74, 77, 80, 81, 81, 75, 78, 32.38298 + 82, 85, 87, 88, 89, 91, 89, 91, 95, 100, 105, 109, 112, 113, 113, 110, 32.38299 + 107, 102, 96, 90, 84, 81, 88, 93, 97, 100, 106, 112, 113, 109, 105, 98, 32.38300 + 90, 85, 86, 91, 95, 97, 97, 98, 100, 103, 103, 101, 97, 93, 91, 88, 32.38301 + 85, 87, 91, 92, 88, 83, 83, 74, 70, 73, 76, 78, 81, 85, 81, 81, 32.38302 + 73, 59, 47, 115, 255, 255, 255, 255, 44, 43, 52, 42, 45, 45, 44, 54, 32.38303 + 46, 52, 47, 41, 38, 36, 36, 39, 42, 40, 42, 44, 44, 42, 41, 42, 32.38304 + 43, 52, 58, 65, 70, 73, 74, 75, 76, 81, 81, 82, 83, 86, 89, 92, 32.38305 + 94, 97, 102, 107, 112, 114, 112, 108, 105, 107, 105, 101, 97, 95, 94, 95, 32.38306 + 95, 77, 72, 67, 65, 65, 69, 71, 73, 73, 75, 79, 81, 84, 85, 88, 32.38307 + 91, 90, 95, 102, 108, 113, 114, 112, 112, 113, 110, 108, 102, 95, 89, 83, 32.38308 + 79, 88, 92, 96, 99, 105, 112, 112, 108, 103, 99, 96, 94, 95, 98, 98, 32.38309 + 98, 96, 95, 92, 92, 93, 94, 92, 91, 92, 91, 89, 90, 93, 95, 95, 32.38310 + 94, 93, 90, 87, 85, 79, 75, 78, 85, 82, 82, 74, 59, 48, 255, 255, 32.38311 + 255, 255, 255, 185, 46, 54, 42, 44, 44, 43, 52, 44, 51, 44, 36, 33, 32.38312 + 29, 26, 28, 32, 40, 44, 49, 51, 50, 47, 45, 44, 55, 59, 66, 70, 32.38313 + 72, 72, 73, 74, 80, 81, 83, 85, 89, 90, 93, 93, 95, 98, 104, 108, 32.38314 + 109, 106, 102, 100, 96, 97, 99, 102, 106, 108, 111, 113, 107, 100, 91, 84, 32.38315 + 79, 76, 75, 75, 73, 75, 78, 81, 84, 88, 92, 95, 100, 105, 111, 117, 32.38316 + 119, 116, 112, 109, 106, 106, 104, 101, 96, 89, 84, 81, 85, 91, 95, 99, 32.38317 + 106, 113, 114, 110, 105, 100, 96, 96, 98, 100, 98, 95, 94, 90, 84, 82, 32.38318 + 83, 83, 83, 82, 86, 87, 87, 88, 90, 93, 96, 99, 99, 101, 101, 96, 32.38319 + 82, 70, 71, 80, 83, 83, 75, 60, 48, 255, 255, 255, 255, 255, 255, 45, 32.38320 + 52, 40, 42, 42, 40, 52, 44, 51, 41, 32, 28, 24, 20, 23, 29, 44, 32.38321 + 49, 55, 59, 58, 54, 51, 50, 58, 62, 68, 71, 73, 72, 72, 74, 78, 32.38322 + 80, 84, 89, 92, 95, 95, 96, 98, 99, 101, 101, 100, 98, 97, 95, 92, 32.38323 + 95, 100, 106, 111, 115, 117, 118, 127, 122, 116, 109, 105, 100, 96, 93, 90, 32.38324 + 91, 91, 92, 93, 97, 102, 107, 112, 115, 118, 120, 118, 114, 108, 103, 96, 32.38325 + 97, 97, 96, 93, 89, 84, 81, 83, 90, 95, 100, 107, 115, 115, 111, 110, 32.38326 + 102, 94, 93, 98, 102, 100, 96, 91, 86, 81, 78, 77, 76, 74, 72, 76, 32.38327 + 78, 80, 82, 83, 87, 91, 96, 96, 100, 104, 101, 87, 75, 74, 80, 84, 32.38328 + 84, 75, 60, 48, 255, 255, 255, 255, 255, 255, 42, 49, 38, 40, 40, 40, 32.38329 + 50, 44, 52, 41, 32, 28, 24, 20, 24, 30, 49, 53, 59, 63, 62, 59, 32.38330 + 56, 56, 59, 63, 69, 72, 73, 72, 72, 73, 76, 80, 86, 92, 96, 98, 32.38331 + 99, 99, 105, 103, 99, 95, 92, 92, 92, 92, 98, 101, 106, 112, 116, 118, 32.38332 + 118, 117, 121, 120, 119, 120, 120, 118, 115, 111, 112, 112, 109, 105, 105, 106, 32.38333 + 111, 115, 120, 120, 120, 119, 115, 108, 103, 100, 88, 89, 91, 91, 89, 86, 32.38334 + 82, 80, 82, 89, 95, 101, 109, 117, 116, 112, 114, 104, 92, 91, 97, 104, 32.38335 + 102, 98, 87, 85, 81, 78, 75, 73, 69, 66, 68, 71, 73, 75, 77, 79, 32.38336 + 86, 90, 89, 94, 100, 102, 94, 84, 81, 85, 84, 84, 75, 60, 48, 255, 32.38337 + 255, 255, 255, 255, 255, 40, 47, 45, 37, 40, 49, 50, 42, 45, 38, 31, 32.38338 + 26, 23, 22, 30, 38, 54, 68, 72, 61, 53, 59, 65, 65, 65, 67, 71, 32.38339 + 72, 72, 71, 73, 73, 74, 80, 89, 95, 99, 99, 100, 99, 94, 95, 97, 32.38340 + 101, 104, 106, 108, 108, 112, 111, 110, 110, 110, 111, 112, 113, 118, 119, 121, 32.38341 + 121, 122, 123, 122, 122, 122, 123, 123, 122, 120, 117, 115, 113, 117, 119, 120, 32.38342 + 120, 114, 106, 98, 92, 83, 84, 85, 87, 87, 87, 85, 85, 82, 87, 93, 32.38343 + 103, 113, 119, 121, 120, 112, 103, 97, 96, 97, 97, 100, 105, 101, 92, 80, 32.38344 + 70, 66, 65, 63, 61, 63, 65, 65, 64, 66, 69, 74, 78, 88, 91, 93, 32.38345 + 95, 94, 91, 87, 85, 90, 84, 73, 58, 47, 255, 255, 255, 255, 255, 255, 32.38346 + 42, 49, 47, 40, 42, 51, 52, 45, 44, 37, 30, 26, 22, 24, 34, 45, 32.38347 + 64, 73, 75, 64, 58, 61, 64, 61, 67, 69, 71, 72, 71, 71, 73, 74, 32.38348 + 77, 82, 90, 94, 96, 96, 96, 96, 94, 96, 99, 104, 108, 112, 114, 114, 32.38349 + 116, 115, 113, 113, 113, 113, 115, 116, 119, 119, 120, 121, 123, 123, 123, 123, 32.38350 + 123, 123, 122, 121, 119, 117, 116, 114, 117, 117, 116, 115, 110, 105, 99, 95, 32.38351 + 86, 85, 86, 85, 84, 84, 83, 82, 82, 86, 93, 103, 113, 119, 122, 122, 32.38352 + 112, 104, 96, 95, 95, 96, 100, 105, 109, 101, 91, 81, 73, 64, 57, 51, 32.38353 + 53, 55, 56, 56, 56, 58, 61, 64, 78, 83, 90, 95, 96, 95, 90, 86, 32.38354 + 91, 85, 72, 58, 47, 255, 255, 255, 255, 255, 255, 42, 48, 47, 40, 42, 32.38355 + 49, 51, 47, 47, 39, 31, 26, 23, 25, 37, 50, 72, 77, 76, 67, 63, 32.38356 + 67, 67, 63, 71, 71, 73, 72, 71, 71, 74, 76, 81, 85, 91, 95, 95, 32.38357 + 93, 93, 94, 96, 100, 104, 110, 115, 118, 121, 122, 119, 118, 117, 116, 115, 32.38358 + 116, 117, 117, 119, 119, 121, 122, 122, 123, 123, 123, 122, 122, 120, 119, 117, 32.38359 + 117, 116, 116, 115, 115, 113, 111, 107, 104, 101, 98, 91, 90, 87, 84, 82, 32.38360 + 80, 79, 78, 80, 85, 92, 102, 113, 120, 123, 123, 113, 104, 94, 93, 93, 32.38361 + 95, 100, 107, 114, 110, 104, 95, 86, 74, 62, 54, 51, 52, 53, 52, 52, 32.38362 + 52, 55, 57, 72, 78, 88, 97, 103, 103, 102, 100, 93, 86, 72, 56, 46, 32.38363 + 255, 255, 255, 255, 255, 255, 40, 45, 44, 39, 39, 45, 49, 48, 51, 43, 32.38364 + 35, 28, 23, 26, 40, 54, 74, 75, 72, 67, 67, 71, 72, 69, 74, 75, 32.38365 + 74, 74, 72, 73, 76, 78, 84, 87, 92, 95, 95, 95, 96, 96, 102, 105, 32.38366 + 110, 116, 120, 123, 125, 126, 123, 121, 119, 117, 117, 117, 119, 119, 118, 119, 32.38367 + 121, 122, 123, 123, 123, 122, 120, 119, 118, 116, 116, 116, 117, 118, 115, 115, 32.38368 + 115, 112, 110, 106, 103, 102, 97, 95, 90, 86, 81, 79, 78, 78, 80, 84, 32.38369 + 91, 102, 112, 120, 124, 125, 115, 104, 94, 91, 92, 93, 100, 107, 111, 111, 32.38370 + 110, 107, 101, 92, 83, 78, 68, 68, 66, 63, 62, 62, 67, 70, 72, 75, 32.38371 + 83, 92, 99, 106, 110, 113, 97, 87, 72, 56, 46, 255, 255, 255, 255, 255, 32.38372 + 255, 183, 44, 43, 40, 39, 44, 49, 50, 50, 44, 38, 30, 25, 29, 44, 32.38373 + 61, 75, 74, 70, 67, 69, 72, 73, 70, 77, 77, 78, 76, 76, 76, 79, 32.38374 + 81, 85, 88, 92, 95, 96, 98, 101, 102, 109, 110, 115, 119, 122, 124, 124, 32.38375 + 124, 122, 121, 119, 118, 117, 117, 118, 118, 118, 119, 120, 121, 122, 123, 123, 32.38376 + 122, 118, 117, 116, 116, 116, 118, 119, 120, 115, 116, 117, 116, 114, 109, 104, 32.38377 + 101, 101, 98, 93, 88, 84, 80, 79, 79, 81, 83, 90, 101, 111, 119, 123, 32.38378 + 124, 116, 104, 94, 90, 91, 93, 98, 106, 107, 108, 109, 109, 108, 105, 103, 32.38379 + 101, 94, 92, 87, 82, 80, 81, 86, 91, 82, 81, 81, 83, 88, 96, 105, 32.38380 + 110, 100, 88, 72, 55, 46, 255, 255, 255, 255, 255, 255, 255, 45, 45, 42, 32.38381 + 41, 44, 50, 55, 49, 45, 39, 34, 29, 33, 49, 67, 79, 76, 71, 68, 32.38382 + 68, 69, 70, 70, 78, 80, 81, 81, 79, 81, 82, 86, 86, 89, 93, 95, 32.38383 + 98, 100, 104, 107, 111, 114, 118, 122, 123, 122, 120, 119, 119, 117, 116, 115, 32.38384 + 114, 115, 116, 117, 118, 118, 120, 121, 122, 122, 122, 122, 116, 116, 116, 116, 32.38385 + 118, 119, 121, 121, 117, 117, 118, 117, 113, 107, 101, 97, 100, 98, 94, 89, 32.38386 + 86, 83, 81, 80, 80, 84, 89, 99, 109, 118, 122, 124, 118, 107, 96, 91, 32.38387 + 91, 92, 98, 104, 105, 106, 108, 107, 108, 108, 110, 111, 110, 108, 103, 96, 32.38388 + 94, 97, 102, 107, 101, 98, 93, 89, 90, 95, 101, 105, 103, 91, 72, 54, 32.38389 + 45, 255, 255, 255, 255, 255, 255, 255, 45, 45, 43, 41, 43, 50, 57, 54, 32.38390 + 51, 45, 37, 31, 32, 47, 65, 78, 75, 72, 69, 67, 68, 71, 74, 79, 32.38391 + 80, 83, 85, 85, 85, 87, 88, 87, 89, 92, 94, 96, 99, 104, 107, 111, 32.38392 + 114, 117, 121, 121, 120, 118, 116, 115, 114, 112, 111, 111, 112, 114, 115, 117, 32.38393 + 117, 119, 120, 122, 122, 122, 122, 113, 115, 116, 118, 120, 121, 122, 122, 117, 32.38394 + 117, 114, 111, 106, 100, 95, 93, 95, 95, 93, 90, 88, 85, 82, 81, 82, 32.38395 + 83, 89, 98, 108, 116, 121, 122, 119, 108, 98, 94, 92, 91, 96, 101, 105, 32.38396 + 107, 109, 109, 107, 108, 110, 114, 113, 112, 109, 106, 104, 104, 107, 109, 111, 32.38397 + 109, 108, 106, 105, 105, 105, 105, 106, 92, 71, 54, 45, 255, 255, 255, 255, 32.38398 + 255, 255, 255, 42, 42, 41, 39, 40, 48, 56, 63, 58, 50, 40, 31, 29, 32.38399 + 42, 57, 73, 72, 70, 70, 68, 69, 75, 81, 78, 81, 85, 88, 89, 89, 32.38400 + 89, 90, 88, 89, 92, 92, 95, 97, 102, 105, 111, 113, 116, 120, 121, 119, 32.38401 + 116, 114, 112, 111, 110, 110, 110, 111, 112, 113, 117, 118, 120, 120, 121, 122, 32.38402 + 121, 121, 112, 114, 116, 119, 121, 122, 122, 121, 119, 116, 110, 104, 99, 94, 32.38403 + 91, 89, 91, 92, 92, 91, 88, 86, 82, 80, 82, 84, 88, 97, 106, 115, 32.38404 + 119, 121, 120, 109, 99, 95, 93, 92, 95, 99, 107, 109, 112, 110, 110, 110, 32.38405 + 112, 115, 111, 111, 112, 111, 108, 107, 106, 108, 104, 107, 113, 115, 115, 113, 32.38406 + 108, 104, 107, 92, 71, 53, 45, 255, 255, 255, 255, 255, 255, 255, 255, 37, 32.38407 + 38, 39, 42, 52, 65, 67, 63, 56, 46, 37, 35, 38, 43, 59, 71, 74, 32.38408 + 65, 61, 69, 74, 74, 74, 76, 80, 84, 87, 88, 89, 89, 84, 87, 90, 32.38409 + 94, 97, 99, 101, 101, 110, 113, 116, 118, 118, 114, 110, 107, 109, 106, 102, 32.38410 + 100, 100, 102, 104, 107, 111, 112, 113, 114, 114, 114, 114, 113, 110, 111, 113, 32.38411 + 117, 120, 120, 116, 112, 103, 102, 99, 95, 91, 87, 85, 83, 90, 89, 89, 32.38412 + 88, 86, 85, 83, 82, 80, 85, 92, 100, 104, 110, 119, 125, 115, 111, 105, 32.38413 + 97, 92, 92, 94, 97, 103, 108, 114, 116, 113, 110, 108, 108, 111, 113, 114, 32.38414 + 113, 110, 107, 105, 104, 112, 113, 114, 115, 115, 115, 114, 114, 101, 94, 78, 32.38415 + 56, 41, 255, 255, 255, 255, 255, 255, 255, 255, 39, 42, 41, 45, 54, 65, 32.38416 + 76, 74, 69, 63, 54, 47, 42, 39, 52, 66, 71, 66, 64, 71, 75, 73, 32.38417 + 73, 77, 81, 86, 88, 89, 89, 88, 85, 85, 88, 92, 95, 97, 100, 101, 32.38418 + 111, 113, 116, 118, 118, 115, 110, 108, 105, 102, 99, 96, 96, 97, 101, 102, 32.38419 + 109, 109, 110, 112, 113, 114, 114, 115, 116, 115, 115, 115, 115, 111, 104, 99, 32.38420 + 92, 92, 90, 87, 86, 83, 82, 81, 85, 86, 87, 88, 86, 85, 83, 82, 32.38421 + 80, 85, 93, 101, 109, 114, 120, 123, 116, 112, 105, 98, 94, 92, 92, 92, 32.38422 + 98, 102, 109, 112, 112, 111, 111, 111, 111, 113, 115, 114, 112, 111, 110, 110, 32.38423 + 115, 116, 116, 117, 117, 117, 117, 116, 103, 97, 79, 57, 43, 255, 255, 255, 32.38424 + 255, 255, 255, 255, 255, 255, 41, 43, 45, 54, 64, 78, 81, 82, 83, 77, 32.38425 + 66, 53, 45, 46, 57, 65, 64, 66, 73, 75, 72, 73, 77, 82, 88, 90, 32.38426 + 90, 88, 87, 86, 85, 86, 88, 90, 95, 98, 101, 108, 111, 113, 114, 113, 32.38427 + 110, 107, 104, 101, 98, 94, 92, 91, 92, 94, 96, 104, 104, 105, 107, 109, 32.38428 + 111, 113, 115, 122, 121, 118, 116, 111, 103, 95, 89, 82, 81, 81, 81, 81, 32.38429 + 81, 83, 84, 83, 84, 86, 86, 86, 85, 84, 82, 84, 86, 93, 102, 111, 32.38430 + 118, 121, 123, 119, 112, 105, 99, 96, 93, 89, 84, 90, 94, 100, 105, 108, 32.38431 + 109, 110, 112, 110, 111, 113, 113, 112, 111, 112, 115, 116, 116, 117, 118, 117, 32.38432 + 117, 117, 115, 107, 99, 81, 59, 44, 255, 255, 255, 255, 255, 255, 255, 255, 32.38433 + 255, 41, 41, 43, 51, 62, 77, 81, 87, 94, 95, 85, 71, 59, 47, 54, 32.38434 + 59, 59, 63, 70, 74, 72, 74, 79, 85, 90, 92, 91, 88, 85, 86, 85, 32.38435 + 83, 83, 87, 92, 97, 101, 105, 105, 106, 106, 106, 103, 101, 99, 97, 95, 32.38436 + 92, 90, 89, 90, 92, 94, 98, 98, 99, 101, 104, 108, 111, 112, 118, 116, 32.38437 + 113, 108, 101, 93, 86, 81, 75, 76, 76, 79, 81, 85, 88, 89, 87, 87, 32.38438 + 86, 85, 83, 83, 84, 84, 88, 88, 92, 100, 113, 121, 124, 126, 120, 113, 32.38439 + 105, 100, 99, 94, 87, 81, 82, 85, 88, 92, 97, 101, 106, 108, 106, 108, 32.38440 + 109, 109, 108, 108, 110, 113, 114, 115, 115, 116, 116, 115, 114, 114, 109, 101, 32.38441 + 81, 59, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 41, 43, 52, 32.38442 + 62, 82, 86, 90, 96, 99, 95, 84, 75, 57, 58, 56, 56, 62, 71, 77, 32.38443 + 77, 77, 80, 86, 91, 93, 91, 87, 85, 85, 83, 80, 80, 82, 88, 95, 32.38444 + 100, 101, 101, 102, 100, 99, 97, 95, 94, 95, 93, 91, 89, 88, 89, 91, 32.38445 + 92, 95, 95, 97, 99, 102, 105, 108, 109, 108, 106, 102, 94, 86, 77, 72, 32.38446 + 70, 74, 75, 75, 78, 81, 87, 91, 93, 96, 92, 87, 83, 82, 83, 84, 32.38447 + 87, 92, 91, 92, 99, 111, 121, 127, 129, 123, 114, 104, 99, 98, 95, 89, 32.38448 + 82, 73, 72, 73, 77, 84, 93, 101, 105, 104, 106, 107, 107, 107, 106, 107, 32.38449 + 108, 111, 112, 113, 115, 115, 114, 114, 114, 110, 101, 80, 58, 46, 255, 255, 32.38450 + 255, 255, 255, 255, 255, 255, 255, 255, 42, 45, 56, 66, 94, 94, 95, 95, 32.38451 + 93, 89, 84, 80, 66, 61, 55, 55, 62, 71, 80, 82, 79, 83, 87, 91, 32.38452 + 93, 91, 88, 87, 83, 80, 78, 77, 80, 86, 92, 97, 98, 97, 95, 94, 32.38453 + 92, 91, 90, 90, 89, 88, 87, 87, 86, 88, 89, 90, 92, 94, 96, 99, 32.38454 + 101, 102, 103, 103, 101, 98, 92, 83, 74, 67, 66, 66, 72, 71, 72, 74, 32.38455 + 78, 82, 88, 90, 98, 94, 88, 83, 81, 82, 83, 86, 92, 91, 94, 100, 32.38456 + 109, 120, 126, 131, 123, 116, 106, 99, 96, 94, 91, 90, 70, 66, 62, 63, 32.38457 + 71, 82, 93, 98, 102, 104, 108, 109, 107, 107, 107, 108, 109, 110, 112, 115, 32.38458 + 116, 117, 116, 116, 109, 98, 78, 57, 45, 255, 255, 255, 255, 255, 255, 255, 32.38459 + 255, 255, 255, 255, 44, 55, 67, 100, 98, 93, 86, 79, 75, 73, 74, 66, 32.38460 + 57, 49, 51, 60, 70, 78, 80, 82, 84, 88, 92, 92, 91, 89, 88, 81, 32.38461 + 79, 76, 77, 79, 84, 89, 94, 92, 90, 88, 85, 83, 82, 82, 82, 81, 32.38462 + 81, 81, 82, 83, 84, 85, 87, 86, 88, 91, 94, 95, 94, 93, 91, 87, 32.38463 + 84, 78, 69, 62, 59, 61, 65, 72, 71, 70, 71, 74, 78, 82, 84, 93, 32.38464 + 91, 88, 85, 84, 83, 83, 84, 87, 90, 98, 104, 111, 118, 125, 127, 123, 32.38465 + 117, 107, 98, 93, 94, 96, 99, 81, 72, 60, 55, 58, 68, 78, 84, 94, 32.38466 + 98, 104, 107, 107, 107, 106, 106, 106, 107, 109, 112, 114, 115, 116, 117, 106, 32.38467 + 96, 75, 54, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 32.38468 + 54, 67, 98, 96, 89, 77, 67, 61, 63, 66, 59, 50, 42, 46, 57, 67, 32.38469 + 74, 77, 84, 85, 88, 91, 91, 91, 90, 89, 80, 78, 76, 76, 78, 83, 32.38470 + 89, 93, 84, 83, 80, 77, 75, 75, 74, 74, 76, 76, 77, 77, 79, 80, 32.38471 + 82, 84, 78, 80, 84, 87, 87, 85, 82, 80, 67, 64, 58, 53, 48, 49, 32.38472 + 56, 62, 74, 73, 71, 71, 72, 76, 80, 82, 86, 87, 88, 87, 87, 84, 32.38473 + 82, 81, 81, 90, 101, 109, 114, 117, 121, 124, 123, 118, 107, 97, 91, 93, 32.38474 + 99, 106, 95, 82, 65, 52, 50, 57, 65, 70, 86, 92, 99, 104, 105, 105, 32.38475 + 104, 104, 101, 103, 105, 108, 111, 113, 114, 114, 105, 93, 73, 53, 44, 114, 32.38476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 59, 89, 86, 81, 32.38477 + 72, 64, 59, 58, 59, 50, 45, 41, 47, 60, 72, 78, 78, 83, 84, 86, 32.38478 + 87, 88, 89, 89, 89, 84, 81, 79, 79, 82, 84, 86, 86, 83, 79, 74, 32.38479 + 70, 70, 70, 70, 71, 75, 73, 73, 72, 73, 74, 76, 76, 77, 82, 84, 32.38480 + 83, 84, 84, 77, 65, 63, 58, 50, 44, 45, 52, 62, 68, 70, 71, 71, 32.38481 + 70, 69, 72, 78, 83, 85, 86, 87, 86, 86, 85, 82, 81, 87, 91, 97, 32.38482 + 105, 113, 118, 120, 120, 115, 112, 106, 100, 95, 93, 94, 94, 92, 89, 81, 32.38483 + 66, 51, 46, 50, 56, 72, 85, 94, 98, 98, 100, 98, 93, 96, 99, 103, 32.38484 + 105, 107, 108, 111, 112, 109, 92, 71, 54, 47, 45, 255, 255, 255, 255, 255, 32.38485 + 255, 255, 255, 255, 255, 255, 209, 54, 78, 78, 77, 73, 67, 61, 58, 57, 32.38486 + 51, 49, 46, 50, 60, 70, 76, 79, 81, 82, 83, 85, 86, 87, 87, 87, 32.38487 + 83, 81, 79, 79, 81, 83, 82, 82, 75, 71, 66, 63, 63, 64, 63, 64, 32.38488 + 67, 67, 67, 66, 68, 70, 72, 72, 73, 77, 78, 75, 75, 74, 67, 57, 32.38489 + 54, 50, 45, 42, 44, 52, 60, 66, 68, 64, 61, 59, 63, 67, 71, 73, 32.38490 + 77, 79, 81, 82, 84, 84, 84, 83, 87, 89, 96, 102, 108, 114, 117, 118, 32.38491 + 112, 109, 104, 99, 95, 93, 92, 92, 90, 88, 82, 71, 57, 49, 46, 48, 32.38492 + 58, 71, 84, 90, 94, 100, 99, 96, 94, 96, 99, 101, 102, 104, 107, 109, 32.38493 + 109, 94, 72, 55, 47, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38494 + 255, 255, 47, 63, 65, 69, 71, 67, 64, 60, 58, 56, 54, 52, 54, 59, 32.38495 + 67, 75, 79, 81, 81, 82, 83, 85, 84, 85, 85, 82, 81, 80, 80, 81, 32.38496 + 80, 79, 78, 68, 64, 58, 55, 55, 56, 57, 58, 61, 60, 61, 62, 65, 32.38497 + 67, 69, 70, 68, 71, 70, 67, 65, 62, 56, 49, 42, 42, 41, 42, 45, 32.38498 + 52, 59, 62, 67, 59, 51, 48, 53, 60, 64, 64, 67, 69, 72, 76, 79, 32.38499 + 81, 83, 83, 84, 86, 90, 95, 100, 105, 109, 110, 106, 104, 100, 97, 94, 32.38500 + 92, 91, 92, 88, 86, 82, 75, 64, 52, 43, 37, 43, 55, 69, 79, 87, 32.38501 + 94, 97, 96, 93, 94, 94, 95, 95, 97, 101, 104, 108, 93, 73, 57, 49, 32.38502 + 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 53, 57, 32.38503 + 63, 66, 66, 64, 63, 62, 60, 60, 60, 58, 59, 65, 75, 81, 80, 80, 32.38504 + 81, 83, 83, 84, 83, 83, 81, 80, 80, 81, 80, 78, 74, 72, 65, 60, 32.38505 + 54, 50, 51, 53, 55, 55, 58, 59, 60, 62, 65, 67, 69, 70, 66, 66, 32.38506 + 65, 63, 58, 54, 49, 44, 37, 37, 39, 43, 48, 54, 58, 60, 67, 61, 32.38507 + 52, 46, 47, 52, 57, 60, 60, 62, 64, 68, 72, 75, 78, 79, 79, 81, 32.38508 + 83, 88, 90, 93, 99, 101, 99, 98, 97, 95, 93, 92, 90, 89, 86, 83, 32.38509 + 79, 73, 64, 53, 39, 30, 36, 45, 57, 68, 78, 86, 91, 91, 92, 92, 32.38510 + 92, 91, 91, 92, 97, 100, 104, 92, 74, 58, 49, 46, 255, 255, 255, 255, 32.38511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 52, 56, 59, 60, 62, 64, 32.38512 + 65, 64, 64, 64, 62, 60, 66, 75, 83, 79, 80, 80, 81, 82, 82, 82, 32.38513 + 81, 80, 79, 79, 79, 78, 76, 71, 66, 61, 57, 50, 47, 48, 51, 53, 32.38514 + 55, 56, 57, 59, 61, 64, 65, 66, 68, 63, 61, 59, 56, 51, 45, 42, 32.38515 + 42, 38, 40, 44, 50, 54, 58, 61, 61, 68, 65, 60, 49, 41, 41, 49, 32.38516 + 57, 55, 56, 58, 60, 63, 66, 68, 68, 73, 76, 80, 82, 83, 86, 90, 32.38517 + 94, 92, 92, 93, 93, 92, 90, 88, 86, 84, 79, 73, 68, 62, 52, 39, 32.38518 + 29, 33, 37, 46, 59, 71, 80, 86, 89, 92, 92, 91, 88, 88, 89, 93, 32.38519 + 95, 98, 89, 73, 58, 49, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38520 + 255, 255, 255, 255, 255, 49, 52, 53, 55, 57, 60, 64, 63, 63, 62, 60, 32.38521 + 60, 66, 75, 83, 77, 78, 78, 80, 80, 80, 79, 79, 79, 78, 77, 76, 32.38522 + 76, 73, 69, 64, 58, 52, 47, 43, 44, 47, 51, 53, 54, 55, 56, 58, 32.38523 + 59, 59, 60, 59, 55, 52, 51, 49, 44, 38, 38, 40, 44, 47, 53, 60, 32.38524 + 64, 66, 68, 68, 69, 69, 65, 53, 40, 34, 40, 47, 50, 50, 49, 50, 32.38525 + 52, 53, 55, 56, 67, 71, 76, 77, 77, 78, 82, 86, 82, 85, 87, 88, 32.38526 + 88, 86, 83, 81, 79, 75, 70, 64, 59, 51, 41, 33, 32, 31, 37, 51, 32.38527 + 64, 74, 84, 90, 88, 89, 88, 87, 84, 83, 86, 88, 92, 83, 70, 57, 32.38528 + 49, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38529 + 186, 49, 49, 50, 51, 54, 57, 60, 59, 57, 56, 59, 65, 74, 79, 75, 32.38530 + 75, 76, 76, 76, 75, 75, 75, 78, 76, 75, 75, 75, 72, 68, 64, 57, 32.38531 + 52, 44, 41, 43, 47, 51, 54, 54, 55, 56, 57, 57, 56, 55, 54, 49, 32.38532 + 46, 45, 44, 40, 34, 36, 43, 50, 54, 61, 68, 75, 78, 79, 78, 75, 32.38533 + 74, 69, 58, 45, 35, 34, 36, 41, 41, 40, 40, 42, 43, 44, 45, 54, 32.38534 + 61, 67, 69, 69, 68, 71, 75, 73, 75, 80, 82, 82, 80, 77, 74, 74, 32.38535 + 72, 69, 64, 59, 52, 45, 39, 37, 32, 34, 45, 57, 67, 76, 85, 82, 32.38536 + 82, 83, 81, 78, 78, 77, 79, 85, 78, 68, 57, 48, 45, 255, 255, 255, 32.38537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 48, 47, 47, 32.38538 + 49, 49, 58, 55, 53, 53, 58, 65, 72, 77, 71, 72, 73, 73, 72, 72, 32.38539 + 72, 71, 78, 76, 75, 74, 72, 70, 67, 64, 58, 52, 46, 42, 44, 49, 32.38540 + 53, 56, 57, 58, 58, 58, 57, 56, 54, 51, 48, 43, 42, 44, 40, 34, 32.38541 + 38, 46, 53, 58, 65, 74, 81, 85, 88, 88, 82, 79, 72, 62, 51, 41, 32.38542 + 33, 30, 35, 35, 33, 34, 35, 36, 37, 39, 44, 52, 59, 61, 60, 59, 32.38543 + 62, 66, 67, 70, 74, 77, 78, 76, 72, 69, 70, 71, 69, 67, 61, 54, 32.38544 + 48, 44, 45, 37, 33, 42, 52, 59, 68, 77, 76, 78, 78, 78, 74, 72, 32.38545 + 71, 71, 80, 76, 66, 55, 47, 45, 255, 255, 255, 255, 255, 255, 255, 255, 32.38546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 49, 47, 44, 46, 49, 50, 32.38547 + 49, 53, 62, 69, 72, 76, 74, 71, 69, 69, 69, 71, 72, 73, 74, 75, 32.38548 + 74, 72, 70, 70, 71, 59, 59, 53, 45, 44, 49, 53, 53, 57, 58, 59, 32.38549 + 56, 51, 48, 49, 51, 46, 42, 38, 39, 37, 38, 44, 53, 59, 64, 73, 32.38550 + 80, 84, 87, 90, 92, 91, 88, 79, 67, 57, 50, 39, 30, 30, 32, 34, 32.38551 + 33, 33, 32, 33, 33, 37, 41, 46, 51, 53, 53, 52, 51, 56, 62, 69, 32.38552 + 72, 70, 67, 64, 64, 66, 69, 69, 64, 61, 59, 57, 51, 34, 30, 32, 32.38553 + 38, 44, 50, 60, 68, 72, 73, 73, 72, 69, 68, 69, 71, 74, 74, 69, 32.38554 + 60, 51, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38555 + 255, 255, 255, 255, 255, 186, 47, 44, 39, 41, 42, 43, 51, 63, 71, 73, 32.38556 + 74, 72, 69, 67, 66, 66, 68, 69, 71, 73, 74, 73, 72, 70, 71, 72, 32.38557 + 66, 65, 57, 49, 46, 50, 53, 52, 56, 58, 56, 54, 51, 48, 47, 46, 32.38558 + 43, 39, 37, 37, 38, 41, 48, 58, 61, 66, 72, 78, 83, 84, 88, 90, 32.38559 + 96, 94, 86, 74, 65, 56, 45, 35, 31, 31, 31, 31, 29, 29, 29, 29, 32.38560 + 32, 35, 40, 44, 47, 46, 45, 44, 46, 52, 58, 62, 60, 58, 58, 59, 32.38561 + 67, 71, 71, 68, 65, 64, 61, 54, 41, 35, 32, 37, 43, 48, 56, 63, 32.38562 + 67, 68, 69, 68, 64, 64, 65, 68, 71, 72, 67, 59, 51, 48, 255, 255, 32.38563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38564 + 255, 255, 185, 38, 38, 37, 38, 49, 63, 71, 72, 72, 70, 66, 64, 62, 32.38565 + 62, 64, 64, 68, 70, 72, 72, 71, 71, 72, 73, 73, 70, 63, 53, 49, 32.38566 + 52, 53, 52, 56, 55, 53, 52, 51, 48, 43, 40, 38, 34, 33, 37, 40, 32.38567 + 44, 54, 64, 68, 71, 75, 78, 81, 84, 88, 91, 100, 99, 93, 83, 73, 32.38568 + 64, 53, 42, 36, 34, 32, 30, 28, 27, 27, 26, 29, 32, 35, 39, 40, 32.38569 + 41, 40, 39, 38, 43, 48, 50, 50, 50, 54, 58, 69, 74, 77, 74, 73, 32.38570 + 70, 65, 58, 51, 41, 34, 35, 40, 45, 51, 58, 61, 64, 65, 63, 59, 32.38571 + 58, 60, 64, 68, 68, 65, 59, 51, 48, 255, 255, 255, 255, 255, 255, 255, 32.38572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 32.38573 + 87, 40, 50, 64, 70, 69, 70, 68, 65, 62, 61, 61, 62, 62, 65, 67, 32.38574 + 68, 69, 70, 71, 73, 75, 76, 74, 66, 56, 51, 53, 56, 54, 57, 54, 32.38575 + 51, 50, 50, 47, 40, 35, 34, 32, 34, 39, 44, 50, 61, 72, 75, 78, 32.38576 + 80, 81, 83, 85, 90, 93, 100, 101, 97, 89, 80, 71, 59, 48, 42, 40, 32.38577 + 35, 33, 32, 30, 30, 29, 31, 32, 34, 37, 37, 38, 38, 39, 36, 40, 32.38578 + 43, 45, 46, 49, 56, 62, 72, 78, 82, 80, 77, 74, 66, 59, 57, 46, 32.38579 + 35, 34, 38, 43, 48, 54, 56, 60, 61, 60, 56, 54, 57, 62, 66, 67, 32.38580 + 65, 60, 53, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 52, 65, 69, 32.38582 + 67, 68, 66, 63, 60, 59, 59, 60, 61, 64, 65, 67, 67, 67, 69, 72, 32.38583 + 75, 76, 74, 66, 56, 53, 56, 58, 57, 59, 54, 51, 49, 48, 45, 39, 32.38584 + 35, 33, 32, 37, 45, 51, 57, 68, 78, 83, 84, 85, 85, 86, 87, 92, 32.38585 + 95, 98, 100, 99, 93, 87, 79, 67, 56, 49, 43, 38, 34, 33, 34, 33, 32.38586 + 32, 32, 33, 34, 35, 36, 37, 38, 38, 38, 40, 44, 44, 46, 52, 60, 32.38587 + 67, 76, 82, 87, 84, 80, 76, 67, 58, 58, 48, 36, 34, 36, 40, 46, 32.38588 + 52, 54, 59, 62, 60, 54, 53, 58, 63, 68, 69, 67, 60, 54, 48, 255, 32.38589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38590 + 255, 255, 255, 255, 255, 255, 255, 255, 54, 65, 68, 67, 64, 62, 60, 57, 32.38591 + 57, 57, 59, 60, 63, 64, 64, 65, 65, 68, 71, 74, 76, 74, 67, 57, 32.38592 + 54, 57, 60, 59, 60, 57, 54, 50, 47, 44, 40, 37, 37, 37, 43, 52, 32.38593 + 59, 64, 72, 81, 85, 87, 87, 87, 87, 88, 91, 94, 96, 99, 100, 96, 32.38594 + 92, 87, 78, 69, 55, 49, 40, 35, 35, 35, 34, 32, 32, 32, 32, 32, 32.38595 + 33, 36, 37, 38, 38, 41, 43, 44, 46, 53, 62, 69, 80, 85, 88, 86, 32.38596 + 82, 77, 70, 61, 59, 49, 40, 36, 34, 35, 43, 51, 54, 59, 63, 60, 32.38597 + 55, 54, 59, 65, 70, 71, 67, 60, 52, 47, 255, 255, 255, 255, 255, 255, 32.38598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38599 + 255, 255, 255, 59, 65, 66, 65, 60, 58, 56, 55, 55, 56, 58, 59, 62, 32.38600 + 63, 64, 64, 63, 66, 70, 74, 79, 77, 69, 58, 56, 59, 61, 59, 63, 32.38601 + 61, 57, 51, 45, 42, 42, 42, 41, 44, 50, 60, 66, 68, 74, 82, 81, 32.38602 + 82, 85, 85, 84, 84, 88, 90, 90, 94, 95, 94, 93, 91, 85, 76, 67, 32.38603 + 59, 47, 40, 38, 36, 34, 31, 34, 33, 33, 33, 33, 35, 38, 40, 40, 32.38604 + 43, 45, 46, 49, 55, 64, 70, 81, 86, 89, 87, 84, 82, 75, 68, 58, 32.38605 + 52, 45, 39, 32, 30, 38, 49, 54, 59, 64, 62, 56, 55, 60, 67, 71, 32.38606 + 71, 66, 57, 48, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 32.38608 + 64, 63, 55, 54, 52, 51, 51, 53, 55, 57, 62, 63, 64, 63, 63, 65, 32.38609 + 70, 73, 81, 80, 72, 61, 57, 59, 60, 59, 64, 64, 59, 52, 44, 40, 32.38610 + 41, 45, 45, 48, 55, 66, 70, 73, 75, 81, 77, 79, 81, 83, 82, 82, 32.38611 + 83, 86, 84, 88, 90, 89, 90, 90, 85, 78, 77, 67, 54, 45, 41, 40, 32.38612 + 36, 32, 37, 36, 34, 34, 35, 38, 41, 43, 44, 47, 49, 50, 51, 58, 32.38613 + 67, 73, 81, 86, 90, 87, 87, 85, 79, 73, 58, 55, 49, 41, 31, 26, 32.38614 + 35, 46, 53, 59, 64, 63, 55, 54, 60, 68, 72, 71, 65, 55, 46, 42, 32.38615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 60, 53, 58, 56, 56, 32.38617 + 55, 55, 57, 59, 61, 65, 65, 64, 63, 63, 66, 70, 74, 78, 75, 69, 32.38618 + 62, 58, 58, 61, 66, 67, 66, 62, 55, 47, 44, 46, 50, 47, 48, 54, 32.38619 + 61, 65, 64, 66, 70, 69, 71, 73, 76, 77, 77, 77, 76, 82, 83, 83, 32.38620 + 86, 87, 86, 83, 81, 76, 69, 58, 49, 43, 38, 35, 32, 31, 32, 32, 32.38621 + 34, 36, 39, 41, 42, 44, 48, 50, 51, 51, 55, 65, 73, 81, 85, 89, 32.38622 + 91, 90, 85, 78, 74, 62, 56, 48, 40, 33, 28, 34, 43, 51, 60, 65, 32.38623 + 60, 56, 59, 66, 72, 75, 66, 58, 53, 48, 113, 255, 255, 255, 255, 255, 32.38624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38625 + 255, 255, 255, 255, 255, 64, 59, 54, 56, 54, 54, 53, 53, 55, 57, 59, 32.38626 + 64, 65, 63, 63, 63, 66, 71, 75, 79, 76, 70, 62, 57, 57, 61, 66, 32.38627 + 68, 68, 65, 59, 52, 49, 51, 55, 52, 52, 54, 60, 61, 59, 60, 64, 32.38628 + 62, 63, 66, 68, 70, 72, 71, 71, 74, 75, 76, 78, 80, 79, 77, 76, 32.38629 + 75, 68, 60, 53, 49, 44, 40, 37, 32, 34, 34, 37, 40, 43, 45, 46, 32.38630 + 48, 51, 52, 52, 52, 56, 65, 73, 82, 84, 88, 91, 90, 86, 81, 77, 32.38631 + 66, 59, 51, 43, 35, 30, 35, 44, 49, 59, 64, 62, 58, 62, 69, 74, 32.38632 + 73, 65, 57, 52, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38634 + 190, 59, 56, 54, 53, 52, 53, 53, 54, 56, 57, 62, 63, 61, 61, 63, 32.38635 + 66, 72, 77, 80, 77, 71, 63, 57, 56, 61, 67, 72, 72, 70, 64, 58, 32.38636 + 55, 56, 59, 53, 48, 47, 49, 49, 46, 46, 49, 48, 50, 52, 54, 57, 32.38637 + 58, 60, 61, 61, 63, 65, 66, 67, 67, 65, 64, 70, 66, 61, 57, 54, 32.38638 + 50, 47, 45, 35, 35, 37, 39, 42, 46, 48, 51, 51, 53, 53, 52, 53, 32.38639 + 57, 66, 74, 80, 83, 86, 88, 87, 84, 79, 77, 67, 60, 52, 45, 37, 32.38640 + 32, 36, 44, 49, 58, 63, 62, 61, 67, 74, 78, 70, 63, 56, 52, 46, 32.38641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 55, 53, 53, 32.38643 + 52, 52, 53, 54, 55, 56, 59, 60, 60, 59, 61, 65, 72, 77, 81, 79, 32.38644 + 74, 65, 57, 55, 60, 67, 75, 76, 76, 70, 63, 59, 60, 62, 51, 44, 32.38645 + 39, 38, 36, 33, 33, 35, 36, 37, 38, 39, 40, 42, 44, 44, 46, 47, 32.38646 + 49, 50, 50, 50, 50, 50, 58, 56, 54, 54, 54, 53, 51, 48, 39, 40, 32.38647 + 40, 42, 44, 46, 48, 49, 50, 51, 51, 51, 53, 59, 66, 72, 75, 76, 32.38648 + 78, 79, 78, 76, 71, 70, 64, 58, 52, 45, 37, 32, 36, 43, 52, 59, 32.38649 + 63, 63, 65, 71, 77, 78, 67, 61, 56, 51, 45, 255, 255, 255, 255, 255, 32.38650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38651 + 255, 255, 255, 255, 255, 255, 255, 60, 54, 53, 52, 53, 53, 54, 54, 55, 32.38652 + 56, 58, 57, 57, 56, 58, 62, 70, 76, 81, 80, 76, 67, 57, 55, 59, 32.38653 + 66, 77, 79, 79, 76, 68, 63, 62, 63, 53, 42, 33, 28, 26, 24, 25, 32.38654 + 28, 28, 27, 27, 27, 28, 29, 31, 32, 33, 35, 35, 36, 34, 33, 34, 32.38655 + 37, 41, 40, 41, 43, 46, 47, 46, 44, 43, 42, 42, 41, 42, 43, 44, 32.38656 + 44, 47, 47, 48, 49, 51, 56, 62, 66, 67, 68, 69, 69, 67, 66, 64, 32.38657 + 61, 59, 55, 50, 46, 39, 35, 39, 47, 56, 62, 65, 66, 70, 75, 78, 32.38658 + 76, 64, 60, 56, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38660 + 255, 255, 60, 52, 51, 52, 52, 53, 54, 54, 54, 54, 56, 55, 54, 53, 32.38661 + 54, 60, 67, 73, 79, 82, 80, 70, 59, 55, 58, 64, 76, 79, 81, 79, 32.38662 + 73, 68, 67, 67, 53, 39, 26, 20, 17, 15, 17, 20, 26, 24, 22, 22, 32.38663 + 24, 25, 28, 30, 31, 33, 34, 33, 29, 28, 30, 32, 34, 33, 34, 36, 32.38664 + 39, 41, 39, 38, 43, 43, 42, 41, 41, 41, 41, 41, 42, 43, 44, 44, 32.38665 + 47, 48, 51, 54, 56, 56, 57, 56, 56, 56, 56, 56, 54, 51, 50, 48, 32.38666 + 44, 42, 47, 55, 64, 67, 68, 69, 72, 77, 77, 72, 61, 59, 57, 120, 32.38667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 54, 50, 32.38669 + 50, 51, 52, 52, 53, 53, 53, 55, 54, 52, 50, 51, 56, 65, 70, 78, 32.38670 + 81, 82, 74, 62, 55, 56, 61, 72, 76, 81, 81, 79, 75, 75, 76, 62, 32.38671 + 46, 28, 19, 17, 14, 16, 20, 27, 26, 25, 26, 28, 32, 35, 38, 44, 32.38672 + 46, 48, 45, 39, 37, 40, 43, 43, 41, 40, 40, 41, 41, 40, 38, 42, 32.38673 + 42, 41, 40, 40, 40, 40, 41, 41, 40, 40, 40, 41, 40, 37, 36, 37, 32.38674 + 37, 39, 41, 42, 44, 47, 49, 52, 51, 52, 53, 52, 51, 57, 65, 71, 32.38675 + 73, 71, 71, 74, 78, 74, 68, 60, 59, 58, 255, 255, 255, 255, 255, 255, 32.38676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 48, 49, 50, 50, 51, 51, 32.38678 + 51, 51, 54, 52, 50, 48, 50, 55, 63, 69, 77, 82, 83, 76, 63, 55, 32.38679 + 56, 60, 69, 74, 81, 83, 82, 81, 82, 83, 78, 60, 40, 31, 26, 24, 32.38680 + 25, 28, 30, 29, 28, 30, 33, 38, 44, 47, 60, 62, 63, 59, 53, 51, 32.38681 + 53, 57, 57, 54, 50, 48, 47, 47, 44, 43, 41, 40, 40, 40, 40, 41, 32.38682 + 42, 43, 41, 40, 39, 39, 37, 33, 28, 24, 21, 22, 24, 27, 32, 36, 32.38683 + 40, 43, 54, 53, 55, 58, 58, 59, 66, 74, 77, 76, 75, 72, 75, 77, 32.38684 + 72, 64, 60, 59, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38686 + 255, 255, 255, 255, 53, 48, 47, 46, 48, 49, 51, 50, 48, 50, 49, 48, 32.38687 + 48, 48, 53, 60, 66, 73, 80, 85, 80, 66, 54, 50, 51, 65, 75, 87, 32.38688 + 91, 87, 82, 79, 78, 74, 72, 63, 49, 38, 33, 29, 23, 26, 27, 28, 32.38689 + 33, 41, 48, 53, 53, 75, 82, 84, 76, 68, 69, 77, 82, 76, 73, 68, 32.38690 + 68, 72, 75, 67, 55, 49, 38, 41, 51, 51, 51, 53, 49, 41, 52, 53, 32.38691 + 50, 47, 31, 14, 12, 10, 12, 17, 21, 27, 35, 43, 49, 50, 58, 60, 32.38692 + 59, 63, 73, 80, 79, 78, 70, 67, 76, 81, 76, 68, 65, 58, 59, 255, 32.38693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 32.38695 + 50, 47, 46, 47, 49, 49, 50, 48, 48, 47, 46, 44, 45, 50, 56, 61, 32.38696 + 71, 79, 84, 81, 69, 56, 50, 49, 61, 73, 85, 91, 91, 86, 83, 82, 32.38697 + 86, 86, 82, 75, 68, 59, 45, 31, 23, 24, 27, 35, 42, 49, 55, 56, 32.38698 + 77, 88, 93, 88, 85, 90, 103, 112, 97, 90, 81, 84, 96, 102, 92, 77, 32.38699 + 61, 49, 54, 67, 67, 65, 63, 57, 53, 63, 64, 61, 57, 39, 18, 13, 32.38700 + 8, 11, 17, 23, 31, 40, 50, 57, 64, 68, 69, 68, 73, 82, 86, 85, 32.38701 + 78, 73, 74, 82, 86, 79, 70, 66, 64, 130, 255, 255, 255, 255, 255, 255, 32.38702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 50, 48, 46, 46, 48, 32.38704 + 49, 48, 47, 47, 46, 44, 43, 43, 45, 51, 54, 68, 76, 84, 83, 73, 32.38705 + 59, 50, 47, 57, 69, 83, 92, 95, 92, 89, 87, 97, 96, 93, 90, 88, 32.38706 + 80, 65, 49, 36, 32, 30, 31, 38, 48, 56, 59, 80, 93, 101, 99, 96, 32.38707 + 104, 121, 134, 118, 106, 94, 98, 117, 127, 114, 96, 74, 59, 64, 80, 84, 32.38708 + 80, 76, 67, 65, 75, 75, 71, 68, 48, 23, 14, 13, 16, 23, 30, 39, 32.38709 + 50, 61, 68, 80, 79, 78, 79, 83, 90, 91, 87, 75, 74, 75, 79, 79, 32.38710 + 71, 62, 58, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38712 + 255, 255, 255, 255, 255, 187, 51, 49, 46, 46, 46, 47, 47, 46, 47, 45, 32.38713 + 44, 41, 40, 42, 46, 50, 64, 72, 81, 83, 76, 64, 51, 45, 54, 65, 32.38714 + 81, 92, 97, 95, 91, 90, 103, 103, 98, 93, 91, 90, 84, 75, 63, 52, 32.38715 + 40, 33, 34, 42, 52, 59, 76, 90, 100, 96, 93, 102, 121, 134, 127, 114, 32.38716 + 103, 106, 122, 132, 120, 101, 81, 64, 66, 86, 92, 90, 85, 77, 74, 82, 32.38717 + 80, 77, 72, 51, 25, 15, 24, 29, 36, 45, 53, 62, 72, 78, 88, 86, 32.38718 + 85, 88, 93, 93, 88, 81, 75, 75, 75, 74, 73, 70, 67, 67, 255, 255, 32.38719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38721 + 255, 53, 50, 46, 45, 45, 46, 45, 45, 47, 47, 45, 42, 40, 40, 44, 32.38722 + 47, 59, 68, 78, 84, 80, 68, 54, 44, 53, 63, 77, 90, 95, 95, 93, 32.38723 + 90, 106, 110, 110, 103, 96, 94, 93, 90, 81, 72, 59, 48, 43, 43, 46, 32.38724 + 48, 63, 77, 88, 88, 87, 99, 117, 130, 129, 121, 112, 113, 122, 128, 118, 32.38725 + 104, 89, 68, 70, 89, 97, 94, 92, 88, 86, 91, 87, 79, 71, 48, 24, 32.38726 + 17, 30, 37, 47, 58, 67, 77, 86, 90, 90, 89, 91, 97, 100, 94, 82, 32.38727 + 72, 78, 78, 78, 80, 86, 97, 106, 110, 255, 255, 255, 255, 255, 255, 255, 32.38728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 50, 46, 44, 32.38730 + 44, 44, 44, 44, 46, 46, 45, 42, 39, 40, 43, 46, 55, 64, 74, 83, 32.38731 + 83, 73, 58, 46, 51, 59, 72, 84, 92, 94, 91, 89, 98, 110, 118, 113, 32.38732 + 103, 96, 89, 85, 83, 79, 74, 68, 61, 54, 46, 42, 52, 64, 76, 79, 32.38733 + 84, 98, 115, 125, 122, 120, 117, 116, 121, 124, 115, 104, 97, 74, 75, 95, 32.38734 + 99, 94, 94, 95, 93, 97, 90, 76, 66, 45, 28, 26, 35, 44, 58, 71, 32.38735 + 82, 89, 96, 100, 91, 92, 97, 102, 102, 90, 77, 69, 71, 74, 79, 89, 32.38736 + 106, 129, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38738 + 255, 255, 255, 255, 255, 255, 255, 55, 51, 45, 43, 43, 44, 43, 42, 44, 32.38739 + 44, 43, 41, 39, 39, 41, 44, 53, 59, 70, 81, 85, 76, 61, 48, 47, 32.38740 + 54, 65, 78, 87, 91, 92, 89, 88, 101, 113, 115, 109, 101, 90, 82, 76, 32.38741 + 76, 75, 74, 72, 66, 59, 54, 53, 63, 71, 75, 79, 90, 100, 106, 104, 32.38742 + 103, 103, 106, 113, 116, 109, 97, 93, 72, 76, 95, 96, 86, 85, 86, 87, 32.38743 + 93, 84, 70, 60, 46, 38, 44, 50, 60, 74, 87, 95, 99, 101, 101, 92, 32.38744 + 93, 96, 100, 96, 81, 70, 67, 68, 73, 83, 98, 121, 182, 255, 255, 255, 32.38745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38747 + 255, 255, 55, 51, 45, 42, 42, 42, 42, 43, 42, 42, 42, 40, 38, 38, 32.38748 + 40, 43, 51, 57, 69, 80, 85, 78, 63, 51, 44, 50, 61, 73, 84, 90, 32.38749 + 92, 91, 88, 97, 106, 111, 113, 110, 100, 90, 72, 70, 68, 69, 71, 74, 32.38750 + 74, 74, 60, 67, 71, 70, 71, 77, 80, 80, 84, 83, 84, 90, 102, 107, 32.38751 + 99, 85, 86, 67, 73, 93, 89, 75, 71, 73, 74, 81, 74, 61, 53, 46, 32.38752 + 48, 60, 67, 76, 90, 101, 105, 104, 102, 100, 92, 90, 93, 95, 88, 74, 32.38753 + 65, 65, 73, 80, 92, 108, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 57, 51, 32.38756 + 42, 37, 38, 40, 39, 40, 41, 41, 40, 39, 39, 36, 37, 50, 56, 63, 32.38757 + 70, 78, 78, 67, 54, 52, 49, 54, 71, 84, 90, 91, 92, 91, 94, 101, 32.38758 + 110, 116, 112, 101, 91, 83, 77, 73, 73, 71, 68, 69, 73, 80, 78, 76, 32.38759 + 77, 77, 73, 65, 59, 59, 58, 60, 68, 79, 84, 81, 76, 66, 66, 66, 32.38760 + 67, 68, 64, 61, 57, 60, 62, 61, 58, 56, 56, 61, 67, 71, 85, 100, 32.38761 + 108, 110, 109, 101, 92, 94, 94, 94, 91, 79, 67, 63, 67, 72, 83, 96, 32.38762 + 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 53, 44, 39, 38, 37, 35, 32.38765 + 39, 39, 40, 39, 39, 38, 37, 37, 46, 51, 59, 66, 74, 77, 67, 54, 32.38766 + 48, 47, 51, 66, 80, 88, 91, 92, 90, 92, 97, 106, 113, 111, 103, 96, 32.38767 + 86, 79, 73, 72, 69, 66, 67, 72, 78, 82, 87, 92, 91, 85, 74, 65, 32.38768 + 63, 59, 54, 57, 64, 66, 62, 56, 52, 51, 52, 54, 55, 55, 52, 50, 32.38769 + 51, 56, 61, 62, 62, 64, 68, 73, 76, 89, 102, 107, 109, 106, 100, 92, 32.38770 + 94, 92, 91, 85, 72, 60, 59, 64, 72, 88, 106, 170, 255, 255, 255, 255, 32.38771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38773 + 255, 255, 255, 255, 101, 56, 47, 41, 38, 35, 32, 36, 36, 38, 38, 39, 32.38774 + 38, 38, 37, 41, 46, 54, 62, 70, 74, 67, 56, 45, 43, 47, 60, 76, 32.38775 + 84, 89, 92, 89, 90, 93, 100, 107, 108, 106, 101, 92, 84, 77, 74, 70, 32.38776 + 66, 67, 71, 76, 81, 88, 95, 98, 96, 89, 82, 79, 73, 65, 63, 63, 32.38777 + 62, 56, 51, 44, 45, 44, 46, 49, 50, 50, 50, 48, 55, 63, 68, 70, 32.38778 + 71, 74, 77, 83, 93, 102, 105, 105, 103, 97, 91, 95, 90, 85, 77, 64, 32.38779 + 56, 58, 65, 75, 100, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 32.38782 + 54, 49, 44, 41, 37, 32, 34, 35, 36, 37, 37, 38, 37, 37, 37, 42, 32.38783 + 50, 58, 67, 73, 69, 60, 46, 41, 43, 56, 72, 83, 89, 94, 92, 91, 32.38784 + 92, 96, 101, 104, 105, 104, 100, 92, 83, 78, 73, 68, 68, 72, 75, 76, 32.38785 + 77, 81, 86, 93, 97, 101, 93, 88, 81, 79, 77, 73, 68, 62, 55, 53, 32.38786 + 52, 54, 56, 59, 60, 60, 56, 62, 69, 72, 73, 73, 76, 78, 90, 98, 32.38787 + 104, 104, 101, 99, 95, 90, 94, 88, 79, 69, 60, 55, 62, 72, 88, 163, 32.38788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 50, 47, 44, 41, 32.38791 + 36, 34, 35, 36, 37, 37, 37, 37, 38, 35, 42, 48, 55, 65, 72, 71, 32.38792 + 65, 49, 43, 43, 53, 68, 80, 89, 94, 96, 94, 93, 95, 97, 100, 102, 32.38793 + 103, 102, 94, 86, 79, 73, 67, 66, 69, 72, 71, 70, 71, 74, 83, 91, 32.38794 + 97, 88, 87, 86, 88, 88, 84, 77, 71, 68, 66, 64, 63, 67, 68, 70, 32.38795 + 70, 66, 70, 73, 73, 73, 74, 80, 83, 93, 99, 104, 102, 99, 97, 94, 32.38796 + 90, 95, 86, 73, 61, 53, 53, 65, 81, 156, 255, 255, 255, 255, 255, 255, 32.38797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38799 + 255, 255, 255, 255, 255, 255, 187, 51, 49, 49, 44, 39, 35, 36, 37, 37, 32.38800 + 37, 38, 37, 37, 34, 41, 46, 53, 62, 71, 72, 69, 55, 46, 42, 51, 32.38801 + 65, 76, 86, 94, 97, 96, 95, 95, 96, 98, 99, 101, 100, 92, 85, 79, 32.38802 + 73, 65, 63, 65, 70, 72, 74, 74, 74, 75, 77, 79, 77, 79, 83, 87, 32.38803 + 88, 86, 80, 76, 73, 70, 68, 68, 70, 73, 72, 72, 71, 73, 74, 74, 32.38804 + 74, 78, 84, 90, 94, 100, 104, 102, 99, 98, 94, 90, 92, 81, 67, 55, 32.38805 + 49, 55, 76, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38808 + 255, 255, 50, 49, 49, 45, 41, 37, 37, 38, 38, 38, 37, 36, 37, 34, 32.38809 + 39, 45, 51, 59, 68, 73, 70, 59, 48, 43, 48, 61, 72, 83, 91, 95, 32.38810 + 96, 97, 97, 98, 98, 99, 101, 99, 94, 87, 83, 75, 67, 63, 64, 66, 32.38811 + 70, 74, 76, 73, 70, 68, 68, 73, 74, 77, 81, 82, 80, 76, 73, 72, 32.38812 + 70, 69, 70, 72, 75, 74, 73, 74, 76, 77, 76, 76, 79, 86, 92, 93, 32.38813 + 100, 103, 101, 99, 98, 95, 91, 83, 72, 59, 51, 53, 69, 97, 166, 255, 32.38814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 49, 32.38817 + 46, 42, 39, 38, 39, 39, 39, 38, 37, 36, 33, 38, 43, 49, 57, 66, 32.38818 + 71, 70, 61, 49, 42, 47, 58, 70, 80, 87, 93, 95, 98, 99, 99, 99, 32.38819 + 100, 100, 101, 96, 92, 88, 80, 71, 66, 67, 62, 66, 69, 71, 69, 68, 32.38820 + 68, 70, 70, 70, 71, 71, 71, 70, 68, 66, 71, 70, 70, 73, 76, 78, 32.38821 + 76, 75, 76, 79, 81, 79, 77, 79, 84, 89, 92, 98, 103, 101, 100, 99, 32.38822 + 97, 92, 74, 64, 55, 52, 61, 84, 164, 255, 255, 255, 255, 255, 255, 255, 32.38823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 43, 45, 47, 40, 40, 38, 32.38826 + 38, 37, 36, 35, 33, 35, 36, 40, 42, 48, 56, 65, 73, 68, 59, 49, 32.38827 + 46, 53, 65, 76, 84, 87, 90, 95, 98, 98, 98, 99, 100, 91, 93, 94, 32.38828 + 89, 79, 72, 68, 67, 58, 59, 61, 62, 62, 63, 63, 63, 65, 65, 64, 32.38829 + 63, 62, 63, 63, 64, 66, 69, 73, 75, 73, 71, 73, 74, 77, 76, 75, 32.38830 + 75, 78, 81, 84, 87, 96, 98, 99, 98, 99, 99, 92, 83, 80, 59, 43, 32.38831 + 51, 80, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38834 + 255, 255, 255, 255, 255, 43, 45, 46, 41, 40, 40, 39, 38, 36, 36, 35, 32.38835 + 35, 37, 39, 42, 47, 55, 64, 71, 70, 61, 50, 45, 50, 62, 74, 82, 32.38836 + 83, 85, 90, 94, 94, 95, 96, 97, 94, 94, 93, 89, 82, 76, 71, 69, 32.38837 + 62, 62, 61, 60, 60, 60, 60, 60, 64, 63, 62, 62, 61, 61, 61, 62, 32.38838 + 60, 64, 68, 69, 69, 69, 71, 72, 75, 74, 74, 76, 79, 83, 87, 88, 32.38839 + 97, 99, 99, 98, 99, 98, 90, 80, 59, 53, 60, 88, 124, 255, 255, 255, 32.38840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38843 + 185, 44, 45, 42, 42, 42, 41, 39, 38, 37, 36, 37, 37, 39, 41, 46, 32.38844 + 53, 62, 68, 71, 63, 51, 44, 45, 56, 70, 79, 78, 81, 86, 89, 90, 32.38845 + 91, 93, 95, 98, 95, 92, 89, 85, 81, 76, 73, 70, 69, 66, 64, 62, 32.38846 + 61, 61, 61, 64, 63, 62, 60, 58, 57, 57, 58, 57, 60, 63, 66, 67, 32.38847 + 67, 70, 71, 73, 73, 74, 76, 79, 84, 90, 93, 98, 100, 101, 99, 99, 32.38848 + 97, 87, 77, 65, 64, 75, 105, 176, 255, 255, 255, 255, 255, 255, 255, 255, 32.38849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 44, 43, 42, 32.38852 + 42, 42, 41, 39, 38, 37, 37, 38, 39, 41, 44, 50, 59, 65, 71, 65, 32.38853 + 55, 45, 42, 51, 64, 74, 75, 78, 82, 86, 88, 91, 92, 95, 101, 97, 32.38854 + 92, 91, 90, 88, 82, 78, 80, 78, 74, 70, 68, 68, 69, 70, 68, 66, 32.38855 + 64, 61, 59, 57, 56, 55, 58, 60, 63, 63, 66, 68, 70, 72, 72, 73, 32.38856 + 75, 77, 81, 88, 93, 96, 99, 101, 102, 102, 101, 97, 86, 74, 51, 69, 32.38857 + 103, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38860 + 255, 255, 255, 255, 255, 255, 255, 184, 44, 45, 44, 43, 43, 42, 40, 38, 32.38861 + 38, 38, 39, 38, 40, 43, 49, 56, 62, 69, 65, 57, 47, 42, 45, 57, 32.38862 + 67, 73, 77, 81, 84, 88, 91, 95, 97, 102, 99, 96, 95, 96, 94, 88, 32.38863 + 84, 84, 81, 78, 76, 75, 74, 75, 77, 75, 73, 71, 66, 64, 61, 59, 32.38864 + 58, 62, 62, 63, 65, 67, 70, 71, 72, 74, 74, 75, 79, 84, 89, 95, 32.38865 + 98, 98, 102, 103, 103, 102, 96, 83, 70, 75, 97, 129, 255, 255, 255, 255, 32.38866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38869 + 255, 255, 255, 184, 44, 43, 43, 43, 42, 39, 39, 37, 38, 39, 39, 40, 32.38870 + 42, 46, 53, 58, 63, 65, 60, 51, 42, 41, 52, 60, 69, 73, 79, 82, 32.38871 + 85, 90, 95, 98, 100, 100, 100, 100, 100, 98, 92, 89, 84, 83, 81, 79, 32.38872 + 78, 79, 80, 80, 82, 79, 77, 75, 72, 71, 70, 70, 70, 68, 68, 67, 32.38873 + 70, 72, 72, 71, 78, 78, 78, 81, 86, 92, 96, 99, 99, 102, 104, 102, 32.38874 + 99, 91, 75, 61, 86, 109, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 32.38878 + 43, 42, 41, 40, 40, 38, 37, 40, 39, 39, 39, 40, 45, 50, 56, 58, 32.38879 + 62, 64, 55, 44, 40, 46, 54, 65, 68, 73, 77, 81, 86, 92, 96, 97, 32.38880 + 101, 105, 105, 102, 99, 95, 93, 87, 87, 86, 85, 85, 84, 82, 82, 84, 32.38881 + 84, 83, 83, 83, 83, 84, 84, 82, 80, 77, 76, 78, 79, 78, 76, 81, 32.38882 + 81, 82, 84, 88, 92, 97, 101, 100, 104, 104, 99, 94, 82, 63, 48, 32, 32.38883 + 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 43, 42, 41, 40, 40, 32.38887 + 38, 38, 40, 40, 40, 39, 39, 44, 49, 55, 54, 60, 65, 58, 46, 39, 32.38888 + 44, 51, 61, 64, 69, 73, 78, 83, 89, 94, 95, 101, 107, 109, 105, 100, 32.38889 + 97, 96, 93, 93, 92, 91, 89, 87, 85, 84, 85, 85, 86, 87, 90, 92, 32.38890 + 94, 95, 94, 90, 86, 84, 86, 87, 85, 83, 84, 84, 84, 85, 89, 93, 32.38891 + 97, 100, 102, 104, 104, 98, 90, 75, 54, 37, 36, 255, 255, 255, 255, 255, 32.38892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38895 + 255, 255, 255, 255, 255, 184, 42, 43, 43, 42, 40, 38, 37, 38, 39, 40, 32.38896 + 42, 42, 44, 46, 46, 54, 59, 63, 60, 50, 45, 45, 47, 51, 56, 63, 32.38897 + 68, 73, 79, 88, 94, 96, 100, 105, 108, 107, 106, 104, 105, 103, 101, 99, 32.38898 + 97, 95, 93, 92, 91, 89, 90, 92, 95, 99, 103, 105, 107, 103, 100, 96, 32.38899 + 95, 95, 92, 88, 87, 86, 84, 83, 87, 93, 100, 105, 107, 108, 108, 104, 32.38900 + 96, 86, 71, 52, 36, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38904 + 255, 41, 41, 42, 42, 39, 37, 37, 36, 36, 38, 39, 41, 42, 43, 43, 32.38905 + 50, 55, 58, 56, 51, 45, 43, 44, 47, 52, 59, 65, 69, 75, 83, 90, 32.38906 + 91, 96, 103, 108, 110, 113, 115, 116, 111, 110, 107, 104, 103, 104, 106, 106, 32.38907 + 109, 109, 108, 108, 109, 110, 111, 112, 106, 103, 102, 100, 99, 98, 94, 93, 32.38908 + 94, 92, 91, 94, 98, 104, 108, 109, 104, 104, 98, 87, 73, 58, 40, 103, 32.38909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 41, 41, 40, 32.38913 + 39, 37, 37, 34, 34, 35, 36, 38, 39, 40, 41, 46, 48, 51, 52, 51, 32.38914 + 47, 43, 40, 41, 46, 53, 58, 61, 68, 76, 83, 86, 90, 97, 103, 109, 32.38915 + 114, 118, 121, 118, 114, 111, 108, 109, 111, 115, 117, 121, 120, 119, 117, 116, 32.38916 + 116, 116, 116, 111, 110, 107, 106, 106, 104, 103, 100, 101, 100, 99, 101, 104, 32.38917 + 107, 108, 109, 106, 105, 97, 80, 62, 46, 34, 255, 255, 255, 255, 255, 255, 32.38918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38921 + 255, 255, 255, 255, 255, 255, 255, 255, 183, 41, 41, 39, 38, 36, 34, 34, 32.38922 + 35, 35, 36, 37, 38, 39, 43, 43, 44, 48, 50, 48, 43, 37, 37, 42, 32.38923 + 48, 52, 56, 61, 69, 75, 82, 86, 90, 96, 99, 105, 110, 114, 112, 111, 32.38924 + 109, 108, 109, 111, 112, 114, 113, 113, 113, 112, 113, 113, 115, 116, 116, 112, 32.38925 + 111, 111, 111, 110, 108, 107, 106, 105, 104, 105, 106, 108, 106, 105, 107, 106, 32.38926 + 94, 72, 51, 37, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38930 + 255, 255, 255, 255, 183, 40, 39, 39, 37, 34, 35, 35, 36, 36, 37, 38, 32.38931 + 38, 42, 40, 41, 45, 49, 49, 43, 38, 36, 41, 46, 49, 52, 56, 63, 32.38932 + 69, 76, 80, 84, 88, 91, 95, 100, 104, 107, 106, 107, 108, 108, 107, 107, 32.38933 + 106, 106, 105, 105, 106, 107, 109, 110, 111, 113, 112, 110, 110, 112, 111, 110, 32.38934 + 108, 108, 107, 107, 108, 109, 107, 105, 102, 102, 98, 82, 58, 38, 27, 100, 32.38935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38939 + 183, 39, 38, 37, 35, 36, 36, 36, 36, 36, 38, 37, 39, 38, 38, 41, 32.38940 + 44, 45, 42, 38, 36, 40, 45, 47, 47, 51, 57, 61, 69, 72, 78, 82, 32.38941 + 86, 91, 94, 98, 100, 102, 104, 106, 107, 105, 103, 102, 103, 103, 102, 102, 32.38942 + 101, 102, 103, 103, 107, 105, 103, 105, 107, 107, 107, 106, 106, 105, 108, 109, 32.38943 + 110, 108, 103, 100, 98, 90, 70, 46, 30, 25, 255, 255, 255, 255, 255, 255, 32.38944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 38, 37, 35, 32.38948 + 36, 36, 36, 36, 36, 36, 36, 37, 36, 36, 37, 39, 40, 39, 38, 37, 32.38949 + 40, 42, 44, 44, 45, 50, 54, 64, 68, 74, 79, 82, 84, 87, 89, 90, 32.38950 + 91, 93, 96, 97, 98, 98, 98, 99, 98, 97, 97, 96, 96, 96, 97, 98, 32.38951 + 97, 96, 97, 100, 102, 100, 99, 100, 101, 103, 106, 107, 105, 101, 95, 92, 32.38952 + 80, 58, 34, 25, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38956 + 255, 255, 255, 255, 255, 255, 255, 183, 38, 37, 35, 35, 35, 35, 35, 36, 32.38957 + 35, 35, 35, 35, 34, 35, 34, 35, 37, 38, 36, 40, 41, 42, 40, 42, 32.38958 + 46, 50, 62, 66, 72, 75, 77, 77, 78, 79, 80, 81, 82, 83, 86, 89, 32.38959 + 92, 95, 90, 90, 90, 90, 90, 91, 93, 93, 93, 92, 92, 92, 95, 98, 32.38960 + 97, 96, 93, 95, 98, 101, 103, 101, 96, 90, 82, 68, 44, 23, 15, 255, 32.38961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38965 + 255, 255, 255, 184, 40, 37, 37, 36, 36, 34, 35, 33, 33, 34, 35, 35, 32.38966 + 36, 36, 35, 35, 34, 38, 36, 36, 37, 39, 42, 46, 49, 59, 61, 66, 32.38967 + 70, 73, 75, 75, 75, 77, 78, 79, 79, 82, 84, 86, 87, 87, 87, 87, 32.38968 + 88, 88, 89, 90, 90, 90, 89, 89, 89, 91, 90, 88, 86, 92, 90, 91, 32.38969 + 95, 98, 96, 89, 84, 78, 55, 31, 21, 21, 255, 255, 255, 255, 255, 255, 32.38970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 32.38974 + 38, 38, 37, 37, 35, 34, 34, 34, 34, 35, 35, 36, 36, 35, 35, 34, 32.38975 + 36, 36, 37, 37, 40, 42, 44, 47, 53, 57, 61, 65, 68, 70, 70, 70, 32.38976 + 72, 72, 72, 74, 75, 76, 79, 80, 80, 81, 80, 81, 80, 81, 82, 82, 32.38977 + 84, 83, 82, 82, 84, 85, 84, 82, 86, 85, 87, 90, 92, 89, 83, 77, 32.38978 + 65, 45, 25, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 38, 38, 36, 37, 32.38983 + 35, 35, 34, 34, 34, 35, 35, 35, 35, 34, 34, 34, 34, 35, 36, 39, 32.38984 + 41, 41, 42, 47, 49, 53, 57, 60, 62, 63, 63, 63, 63, 63, 65, 65, 32.38985 + 68, 70, 70, 72, 71, 70, 71, 71, 70, 71, 72, 76, 74, 73, 73, 75, 32.38986 + 77, 78, 78, 79, 78, 80, 82, 83, 80, 73, 66, 45, 31, 17, 96, 255, 32.38987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38991 + 255, 255, 255, 255, 255, 255, 255, 39, 38, 38, 36, 35, 35, 35, 33, 33, 32.38992 + 34, 34, 34, 34, 33, 33, 31, 33, 35, 36, 38, 38, 40, 39, 41, 43, 32.38993 + 46, 50, 54, 56, 57, 57, 57, 57, 57, 57, 57, 59, 60, 62, 66, 65, 32.38994 + 64, 64, 64, 64, 64, 65, 70, 67, 65, 65, 68, 72, 73, 74, 76, 74, 32.38995 + 74, 75, 76, 71, 63, 56, 32, 21, 15, 255, 255, 255, 255, 255, 255, 255, 32.38996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.38999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39000 + 255, 255, 255, 38, 36, 36, 36, 34, 34, 33, 34, 34, 35, 35, 34, 34, 32.39001 + 33, 30, 31, 33, 36, 36, 37, 37, 37, 38, 39, 43, 45, 48, 50, 52, 32.39002 + 52, 52, 52, 51, 52, 53, 53, 54, 54, 61, 60, 60, 60, 60, 60, 61, 32.39003 + 61, 64, 62, 60, 60, 64, 67, 69, 70, 71, 70, 69, 69, 68, 63, 53, 32.39004 + 46, 25, 18, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 32.39009 + 35, 34, 34, 34, 32, 33, 33, 33, 33, 33, 33, 32, 32, 33, 33, 34, 32.39010 + 35, 36, 37, 37, 37, 38, 40, 41, 42, 45, 46, 47, 48, 47, 47, 47, 32.39011 + 46, 47, 47, 48, 54, 55, 54, 55, 55, 56, 57, 58, 59, 57, 55, 56, 32.39012 + 59, 62, 63, 63, 65, 63, 62, 63, 61, 53, 43, 35, 22, 98, 255, 255, 32.39013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 33, 33, 33, 32, 32.39018 + 32, 33, 33, 33, 33, 32, 32, 35, 33, 32, 32, 34, 35, 37, 38, 37, 32.39019 + 37, 37, 38, 39, 40, 41, 41, 41, 41, 41, 39, 40, 40, 40, 41, 45, 32.39020 + 45, 46, 45, 48, 49, 51, 52, 52, 51, 51, 52, 55, 56, 56, 55, 58, 32.39021 + 56, 54, 53, 50, 43, 32, 24, 98, 255, 255, 255, 255, 255, 255, 255, 255, 32.39022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39026 + 255, 255, 255, 255, 255, 255, 255, 255, 32, 31, 32, 32, 32, 33, 33, 32, 32.39027 + 32, 32, 35, 34, 33, 32, 33, 35, 37, 39, 36, 36, 36, 35, 36, 37, 32.39028 + 38, 39, 38, 36, 36, 34, 34, 35, 36, 36, 38, 38, 38, 40, 42, 44, 32.39029 + 45, 47, 47, 47, 47, 49, 51, 52, 51, 49, 52, 50, 48, 47, 44, 36, 32.39030 + 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39035 + 255, 255, 255, 255, 180, 32, 32, 32, 32, 32, 32, 32, 32, 33, 33, 34, 32.39036 + 34, 34, 33, 32, 32, 35, 35, 35, 35, 35, 35, 35, 35, 36, 35, 35, 32.39037 + 35, 34, 33, 33, 33, 37, 37, 37, 37, 38, 39, 41, 42, 39, 40, 41, 32.39038 + 43, 44, 46, 46, 45, 49, 48, 47, 44, 34, 23, 255, 255, 255, 255, 255, 32.39039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39044 + 255, 206, 82, 32, 32, 32, 32, 32, 32, 33, 34, 34, 34, 33, 33, 32, 32.39045 + 34, 34, 34, 34, 34, 34, 34, 34, 35, 35, 35, 34, 34, 34, 33, 33, 32.39046 + 35, 34, 34, 34, 35, 36, 37, 38, 37, 39, 40, 41, 41, 43, 45, 48, 32.39047 + 49, 43, 38, 33, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 32.39053 + 32, 32, 32, 32, 33, 34, 34, 34, 34, 33, 33, 34, 34, 34, 34, 34, 32.39054 + 34, 34, 34, 36, 35, 35, 35, 35, 34, 34, 34, 35, 34, 34, 34, 34, 32.39055 + 34, 35, 36, 36, 37, 39, 38, 38, 41, 48, 55, 53, 41, 28, 100, 255, 32.39056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 31, 32, 32.39062 + 33, 33, 34, 34, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 35, 35, 32.39063 + 34, 34, 34, 34, 34, 34, 36, 36, 35, 35, 35, 35, 36, 37, 37, 38, 32.39064 + 38, 37, 37, 43, 54, 63, 62, 115, 255, 255, 255, 255, 255, 255, 255, 255, 32.39065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34, 34, 34, 34, 32.39071 + 34, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 32.39072 + 34, 36, 35, 35, 35, 35, 36, 37, 37, 39, 39, 38, 37, 112, 255, 255, 32.39073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 34, 34, 32.39080 + 34, 34, 34, 34, 32, 32, 32, 32, 33, 33, 33, 33, 34, 34, 108, 255, 32.39081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39088 + 255, 207, 86, 37, 39, 44, 47, 43, 43, 40, 38, 38, 38, 39, 38, 44, 32.39089 + 45, 47, 47, 49, 49, 47, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39096 + 255, 255, 255, 255, 255, 184, 46, 48, 46, 45, 45, 45, 46, 46, 43, 45, 32.39097 + 51, 54, 51, 49, 46, 44, 44, 45, 50, 52, 55, 50, 48, 55, 61, 57, 32.39098 + 42, 28, 41, 34, 21, 9, 5, 16, 37, 121, 255, 255, 255, 255, 255, 255, 32.39099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 37, 32.39105 + 40, 45, 46, 42, 37, 24, 25, 23, 19, 16, 15, 19, 23, 27, 23, 19, 32.39106 + 16, 16, 20, 25, 28, 49, 41, 38, 49, 59, 52, 27, 3, 1, 4, 5, 32.39107 + 0, 0, 0, 0, 4, 6, 4, 8, 19, 101, 255, 255, 255, 255, 255, 255, 32.39108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39113 + 255, 255, 255, 255, 255, 186, 35, 27, 26, 22, 18, 16, 13, 9, 6, 4, 32.39114 + 0, 0, 2, 6, 11, 11, 1, 0, 0, 4, 5, 0, 0, 0, 5, 3, 32.39115 + 11, 4, 1, 3, 10, 14, 13, 8, 5, 5, 8, 14, 17, 13, 5, 0, 32.39116 + 2, 2, 0, 1, 18, 35, 30, 18, 85, 255, 255, 255, 255, 255, 255, 255, 32.39117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 49, 38, 32.39122 + 22, 11, 3, 16, 13, 10, 9, 9, 10, 7, 4, 0, 2, 4, 5, 8, 32.39123 + 10, 5, 0, 1, 5, 4, 2, 4, 10, 11, 8, 0, 0, 0, 0, 3, 32.39124 + 6, 5, 2, 4, 3, 7, 13, 19, 19, 11, 6, 0, 0, 0, 0, 0, 32.39125 + 7, 11, 8, 4, 4, 12, 29, 111, 255, 255, 255, 255, 255, 255, 255, 255, 32.39126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39130 + 255, 255, 255, 255, 255, 255, 188, 49, 38, 28, 18, 10, 7, 6, 18, 15, 32.39131 + 13, 12, 14, 13, 11, 9, 13, 15, 14, 11, 11, 14, 14, 11, 11, 10, 32.39132 + 7, 6, 11, 18, 17, 11, 2, 0, 0, 0, 6, 10, 11, 7, 0, 1, 32.39133 + 5, 12, 21, 23, 20, 18, 6, 0, 0, 0, 0, 0, 2, 11, 18, 7, 32.39134 + 2, 8, 21, 32, 38, 40, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 32.39139 + 42, 35, 31, 22, 15, 12, 14, 19, 23, 30, 29, 26, 23, 20, 18, 15, 32.39140 + 11, 16, 19, 18, 13, 10, 12, 13, 12, 16, 14, 11, 9, 11, 13, 11, 32.39141 + 9, 11, 7, 6, 8, 14, 18, 15, 14, 0, 2, 4, 12, 19, 25, 28, 32.39142 + 27, 17, 9, 5, 5, 3, 0, 10, 25, 31, 17, 5, 4, 12, 22, 38, 32.39143 + 49, 49, 38, 16, 0, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 41, 37, 34, 30, 22, 17, 32.39148 + 14, 16, 19, 23, 33, 29, 25, 22, 20, 17, 13, 10, 10, 15, 16, 11, 32.39149 + 8, 8, 7, 4, 9, 8, 9, 8, 4, 2, 4, 7, 11, 8, 6, 7, 32.39150 + 10, 12, 10, 7, 5, 5, 6, 9, 16, 22, 26, 30, 24, 13, 7, 9, 32.39151 + 9, 6, 10, 20, 29, 20, 12, 7, 4, 9, 23, 37, 48, 60, 58, 35, 32.39152 + 13, 4, 2, 0, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39156 + 255, 255, 255, 186, 44, 37, 31, 32, 28, 22, 16, 15, 13, 15, 15, 19, 32.39157 + 16, 14, 12, 12, 11, 8, 5, 3, 8, 11, 10, 10, 10, 6, 0, 1, 32.39158 + 2, 6, 6, 2, 0, 0, 6, 7, 5, 5, 5, 7, 7, 3, 2, 10, 32.39159 + 8, 6, 6, 9, 15, 22, 26, 27, 17, 11, 8, 9, 7, 6, 8, 15, 32.39160 + 14, 13, 7, 0, 0, 4, 16, 32, 36, 56, 72, 49, 9, 0, 14, 6, 32.39161 + 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 46, 40, 32.39165 + 32, 26, 26, 23, 18, 14, 12, 12, 13, 14, 14, 11, 10, 8, 8, 10, 32.39166 + 7, 5, 3, 7, 11, 14, 19, 22, 17, 9, 10, 8, 9, 11, 10, 5, 32.39167 + 6, 10, 12, 11, 11, 11, 14, 12, 10, 9, 12, 8, 5, 2, 3, 8, 32.39168 + 17, 22, 28, 24, 15, 6, 3, 6, 6, 4, 7, 6, 7, 6, 0, 0, 32.39169 + 0, 4, 0, 25, 42, 37, 41, 46, 26, 0, 15, 0, 0, 105, 255, 255, 32.39170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39173 + 255, 255, 255, 255, 255, 255, 255, 49, 46, 46, 40, 32, 23, 28, 26, 19, 32.39174 + 14, 10, 7, 7, 6, 19, 16, 14, 13, 14, 13, 12, 10, 0, 3, 6, 32.39175 + 12, 20, 26, 22, 14, 28, 21, 15, 19, 21, 14, 12, 13, 15, 15, 16, 32.39176 + 17, 20, 20, 17, 17, 12, 8, 4, 0, 0, 6, 15, 20, 20, 23, 15, 32.39177 + 0, 0, 0, 5, 3, 7, 5, 5, 7, 3, 0, 0, 4, 2, 0, 9, 32.39178 + 33, 44, 35, 22, 17, 12, 0, 0, 0, 103, 255, 255, 255, 255, 255, 255, 32.39179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39182 + 188, 55, 53, 46, 35, 23, 17, 14, 21, 18, 15, 12, 11, 11, 13, 13, 32.39183 + 15, 16, 16, 15, 13, 9, 5, 2, 8, 5, 5, 6, 7, 8, 7, 7, 32.39184 + 13, 12, 12, 12, 10, 9, 6, 5, 13, 13, 11, 7, 4, 6, 11, 16, 32.39185 + 7, 0, 1, 10, 9, 7, 13, 23, 20, 18, 16, 12, 9, 6, 4, 5, 32.39186 + 15, 19, 15, 3, 0, 2, 9, 12, 10, 8, 8, 9, 20, 32, 30, 22, 32.39187 + 10, 4, 0, 2, 8, 23, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 52, 49, 45, 36, 26, 32.39191 + 17, 11, 7, 10, 10, 11, 11, 10, 9, 7, 8, 12, 12, 13, 13, 12, 32.39192 + 12, 11, 10, 10, 8, 6, 4, 6, 7, 8, 7, 12, 12, 10, 10, 9, 32.39193 + 7, 5, 7, 0, 5, 10, 12, 10, 6, 3, 1, 11, 5, 3, 9, 8, 32.39194 + 3, 5, 15, 18, 22, 22, 18, 9, 2, 3, 6, 14, 19, 16, 6, 0, 32.39195 + 2, 8, 10, 1, 3, 3, 1, 4, 12, 18, 17, 19, 13, 8, 4, 2, 32.39196 + 7, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39199 + 255, 255, 255, 255, 185, 42, 42, 37, 30, 23, 18, 15, 10, 7, 2, 4, 32.39200 + 8, 9, 10, 7, 5, 3, 9, 8, 8, 8, 9, 12, 15, 17, 14, 12, 32.39201 + 9, 7, 9, 9, 10, 9, 11, 11, 10, 9, 7, 6, 5, 5, 0, 2, 32.39202 + 11, 15, 14, 8, 2, 0, 10, 6, 5, 8, 7, 0, 0, 9, 13, 23, 32.39203 + 30, 23, 10, 1, 1, 6, 12, 15, 17, 10, 5, 5, 6, 5, 0, 6, 32.39204 + 7, 1, 0, 2, 11, 17, 18, 15, 10, 5, 0, 2, 12, 25, 255, 255, 32.39205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 40, 32.39208 + 35, 28, 21, 16, 11, 12, 16, 16, 15, 4, 6, 9, 12, 12, 12, 9, 32.39209 + 7, 8, 6, 4, 2, 4, 7, 11, 14, 13, 14, 15, 17, 18, 17, 15, 32.39210 + 12, 11, 12, 11, 12, 12, 8, 6, 5, 2, 5, 8, 10, 11, 10, 9, 32.39211 + 9, 9, 5, 5, 7, 5, 2, 3, 10, 8, 19, 30, 28, 16, 5, 2, 32.39212 + 4, 10, 13, 16, 16, 11, 8, 4, 2, 7, 10, 11, 5, 0, 2, 8, 32.39213 + 15, 18, 16, 13, 10, 5, 6, 17, 32, 113, 255, 255, 255, 255, 255, 255, 32.39214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39216 + 255, 255, 255, 255, 255, 255, 255, 255, 186, 37, 26, 21, 17, 10, 5, 4, 32.39217 + 8, 15, 18, 18, 8, 9, 9, 10, 11, 11, 10, 10, 12, 10, 6, 2, 32.39218 + 2, 3, 6, 9, 11, 13, 17, 23, 25, 24, 19, 14, 10, 12, 13, 15, 32.39219 + 14, 10, 7, 5, 7, 7, 8, 10, 13, 15, 17, 17, 11, 9, 9, 9, 32.39220 + 6, 3, 6, 10, 5, 13, 21, 27, 25, 16, 6, 0, 9, 11, 15, 18, 32.39221 + 16, 9, 4, 3, 8, 6, 6, 4, 3, 2, 2, 5, 26, 25, 20, 14, 32.39222 + 6, 6, 17, 32, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39225 + 255, 255, 184, 33, 22, 12, 5, 10, 7, 4, 2, 5, 8, 12, 13, 10, 32.39226 + 9, 9, 7, 7, 6, 7, 6, 16, 13, 10, 7, 5, 5, 5, 6, 7, 32.39227 + 10, 18, 24, 28, 25, 18, 15, 12, 12, 12, 12, 11, 10, 8, 8, 4, 32.39228 + 6, 9, 13, 17, 17, 14, 11, 17, 15, 12, 9, 4, 4, 8, 11, 7, 32.39229 + 9, 13, 21, 24, 21, 12, 4, 8, 9, 13, 18, 18, 11, 5, 6, 10, 32.39230 + 4, 2, 5, 8, 5, 2, 3, 19, 20, 19, 15, 8, 7, 18, 33, 41, 32.39231 + 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 33, 22, 13, 32.39234 + 4, 1, 7, 9, 8, 6, 6, 6, 8, 9, 9, 9, 7, 6, 4, 2, 32.39235 + 0, 0, 10, 10, 10, 10, 9, 7, 6, 5, 7, 9, 14, 17, 20, 18, 32.39236 + 14, 10, 15, 11, 7, 4, 3, 5, 9, 10, 10, 11, 13, 16, 18, 17, 32.39237 + 12, 7, 16, 15, 11, 5, 2, 4, 10, 14, 14, 9, 8, 10, 17, 19, 32.39238 + 15, 13, 7, 6, 10, 16, 17, 13, 9, 9, 14, 6, 2, 5, 8, 4, 32.39239 + 5, 9, 6, 10, 14, 14, 8, 7, 19, 33, 28, 38, 118, 255, 255, 255, 32.39240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39242 + 255, 255, 255, 255, 255, 255, 186, 37, 26, 16, 10, 6, 3, 6, 11, 12, 32.39243 + 12, 10, 8, 11, 14, 11, 9, 7, 6, 3, 0, 0, 0, 4, 6, 8, 32.39244 + 10, 11, 9, 8, 6, 7, 8, 8, 10, 10, 10, 9, 5, 18, 13, 3, 32.39245 + 0, 0, 2, 8, 14, 22, 18, 15, 15, 16, 16, 13, 10, 11, 12, 7, 32.39246 + 1, 3, 7, 15, 20, 19, 12, 6, 4, 9, 15, 19, 19, 9, 5, 7, 32.39247 + 15, 16, 13, 9, 13, 10, 2, 0, 2, 2, 0, 3, 12, 4, 8, 15, 32.39248 + 16, 9, 5, 13, 26, 21, 33, 46, 255, 255, 255, 255, 255, 255, 255, 255, 32.39249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39251 + 186, 37, 22, 10, 8, 10, 14, 15, 17, 16, 14, 13, 9, 7, 7, 6, 32.39252 + 6, 6, 6, 5, 5, 5, 4, 4, 0, 0, 0, 3, 3, 6, 6, 7, 32.39253 + 6, 5, 6, 6, 7, 6, 7, 5, 10, 12, 11, 6, 1, 0, 3, 9, 32.39254 + 30, 32, 28, 18, 7, 5, 10, 18, 8, 7, 5, 5, 6, 6, 8, 8, 32.39255 + 9, 9, 10, 11, 13, 14, 13, 13, 22, 13, 4, 3, 13, 19, 17, 13, 32.39256 + 7, 5, 4, 2, 3, 6, 12, 15, 12, 12, 13, 12, 5, 1, 4, 12, 32.39257 + 21, 30, 38, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 49, 37, 22, 11, 8, 32.39260 + 13, 14, 15, 14, 15, 12, 11, 8, 6, 3, 2, 5, 5, 5, 4, 4, 32.39261 + 3, 3, 2, 0, 1, 1, 4, 5, 6, 7, 7, 6, 6, 5, 5, 6, 32.39262 + 7, 8, 8, 9, 12, 12, 8, 2, 0, 4, 7, 17, 25, 31, 30, 25, 32.39263 + 15, 9, 7, 9, 10, 8, 7, 6, 7, 7, 7, 7, 11, 14, 14, 10, 32.39264 + 7, 7, 9, 20, 14, 4, 3, 10, 15, 17, 16, 13, 9, 3, 0, 0, 32.39265 + 2, 8, 11, 12, 11, 12, 13, 8, 5, 7, 13, 19, 28, 35, 110, 255, 32.39266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39268 + 255, 255, 255, 255, 255, 47, 44, 35, 20, 12, 11, 13, 14, 14, 12, 11, 32.39269 + 11, 8, 7, 4, 2, 1, 4, 4, 3, 2, 1, 0, 0, 0, 0, 0, 32.39270 + 2, 3, 5, 6, 8, 9, 7, 7, 9, 8, 10, 10, 9, 10, 9, 12, 32.39271 + 12, 10, 5, 4, 4, 7, 12, 19, 28, 35, 33, 24, 13, 6, 10, 9, 32.39272 + 8, 5, 4, 6, 6, 6, 5, 12, 18, 17, 10, 4, 3, 5, 18, 14, 32.39273 + 6, 2, 5, 10, 15, 18, 20, 15, 9, 1, 0, 0, 5, 8, 10, 9, 32.39274 + 12, 14, 12, 8, 10, 16, 17, 24, 32, 34, 255, 255, 255, 255, 255, 255, 32.39275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 45, 32.39277 + 41, 37, 28, 16, 9, 8, 11, 11, 12, 10, 11, 9, 8, 5, 5, 3, 32.39278 + 2, 6, 6, 5, 4, 3, 2, 1, 1, 0, 0, 3, 4, 6, 6, 9, 32.39279 + 9, 10, 9, 10, 11, 13, 13, 14, 13, 8, 11, 13, 13, 11, 7, 7, 32.39280 + 8, 15, 16, 19, 23, 26, 23, 17, 12, 11, 10, 7, 6, 3, 4, 4, 32.39281 + 4, 3, 8, 14, 15, 11, 7, 4, 4, 10, 10, 7, 4, 2, 5, 9, 32.39282 + 12, 24, 20, 13, 9, 4, 5, 5, 6, 7, 8, 10, 14, 15, 12, 14, 32.39283 + 18, 16, 25, 30, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 39, 33, 25, 18, 10, 6, 32.39286 + 7, 8, 10, 10, 10, 9, 8, 8, 8, 6, 7, 6, 8, 8, 7, 6, 32.39287 + 5, 4, 4, 3, 2, 2, 2, 5, 7, 8, 9, 9, 9, 7, 9, 9, 32.39288 + 11, 11, 12, 11, 7, 10, 12, 15, 13, 12, 11, 10, 17, 14, 11, 12, 32.39289 + 15, 20, 19, 18, 15, 13, 10, 9, 6, 7, 7, 9, 3, 3, 5, 9, 32.39290 + 13, 13, 9, 5, 2, 5, 7, 7, 4, 2, 3, 5, 15, 14, 15, 12, 32.39291 + 10, 7, 6, 4, 7, 6, 8, 12, 13, 11, 13, 19, 20, 28, 32, 32, 32.39292 + 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39294 + 255, 255, 255, 43, 35, 27, 20, 14, 8, 2, 1, 5, 8, 9, 7, 6, 32.39295 + 6, 8, 7, 9, 10, 10, 9, 8, 7, 7, 7, 7, 6, 6, 6, 4, 32.39296 + 6, 5, 6, 6, 7, 7, 9, 5, 5, 6, 5, 6, 5, 4, 5, 4, 32.39297 + 5, 9, 11, 13, 12, 14, 13, 12, 8, 7, 8, 13, 14, 14, 12, 19, 32.39298 + 17, 14, 14, 14, 13, 14, 14, 9, 4, 1, 5, 12, 15, 11, 6, 0, 32.39299 + 2, 5, 6, 5, 2, 0, 0, 5, 6, 10, 11, 9, 7, 3, 0, 5, 32.39300 + 3, 3, 7, 11, 11, 14, 17, 22, 30, 35, 34, 33, 255, 255, 255, 255, 32.39301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 41, 34, 24, 32.39303 + 14, 7, 5, 2, 0, 0, 3, 7, 8, 9, 4, 4, 5, 7, 10, 10, 32.39304 + 13, 13, 4, 4, 5, 5, 5, 5, 6, 6, 7, 6, 7, 6, 7, 6, 32.39305 + 7, 6, 6, 6, 5, 3, 3, 3, 3, 3, 0, 1, 2, 6, 10, 13, 32.39306 + 14, 13, 8, 8, 7, 7, 8, 11, 11, 10, 19, 18, 15, 15, 14, 14, 32.39307 + 15, 17, 16, 11, 5, 4, 6, 8, 8, 7, 1, 2, 4, 6, 6, 4, 32.39308 + 1, 0, 1, 2, 6, 7, 7, 7, 4, 1, 5, 1, 0, 3, 7, 6, 32.39309 + 10, 16, 26, 32, 35, 32, 32, 107, 255, 255, 255, 255, 255, 255, 255, 255, 32.39310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39311 + 255, 255, 255, 255, 255, 255, 185, 39, 34, 26, 16, 6, 0, 2, 0, 0, 32.39312 + 0, 3, 8, 9, 9, 2, 2, 3, 7, 8, 11, 12, 14, 0, 0, 1, 32.39313 + 1, 2, 3, 3, 4, 8, 9, 7, 8, 6, 6, 5, 4, 9, 7, 7, 32.39314 + 6, 6, 4, 4, 2, 0, 0, 0, 2, 7, 11, 12, 12, 10, 9, 5, 32.39315 + 3, 2, 6, 10, 12, 15, 14, 14, 12, 12, 14, 14, 15, 23, 19, 13, 32.39316 + 6, 2, 2, 6, 8, 5, 4, 3, 4, 6, 6, 3, 0, 4, 4, 4, 32.39317 + 6, 7, 5, 6, 5, 5, 0, 0, 0, 3, 4, 10, 16, 26, 32, 34, 32.39318 + 33, 31, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39320 + 46, 47, 40, 26, 18, 16, 13, 9, 13, 9, 5, 3, 4, 5, 6, 7, 32.39321 + 1, 5, 10, 12, 13, 12, 14, 14, 16, 9, 3, 0, 2, 4, 6, 7, 32.39322 + 7, 7, 6, 5, 6, 5, 6, 6, 5, 6, 6, 8, 7, 5, 4, 4, 32.39323 + 7, 5, 3, 2, 3, 2, 3, 3, 1, 2, 2, 5, 5, 6, 7, 9, 32.39324 + 3, 3, 4, 5, 4, 4, 2, 3, 11, 9, 7, 5, 3, 3, 4, 4, 32.39325 + 4, 4, 1, 1, 0, 0, 0, 0, 0, 2, 7, 8, 10, 9, 9, 10, 32.39326 + 12, 10, 7, 4, 4, 8, 16, 21, 30, 33, 35, 37, 36, 32, 105, 255, 32.39327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 53, 49, 36, 21, 15, 32.39329 + 14, 13, 6, 14, 11, 8, 7, 8, 10, 10, 10, 4, 7, 11, 12, 12, 32.39330 + 11, 10, 11, 15, 11, 5, 2, 3, 6, 8, 6, 6, 6, 8, 7, 7, 32.39331 + 6, 6, 6, 7, 8, 10, 9, 10, 7, 7, 5, 5, 4, 3, 0, 0, 32.39332 + 0, 1, 1, 0, 0, 1, 1, 4, 4, 6, 6, 3, 4, 6, 7, 5, 32.39333 + 5, 3, 1, 9, 8, 7, 5, 4, 4, 4, 4, 4, 3, 3, 1, 1, 32.39334 + 0, 1, 0, 2, 5, 7, 10, 9, 9, 8, 8, 16, 11, 6, 3, 6, 32.39335 + 11, 18, 20, 28, 30, 33, 35, 32, 31, 31, 255, 255, 255, 255, 255, 255, 32.39336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39337 + 255, 255, 255, 255, 58, 52, 49, 39, 23, 11, 8, 10, 8, 3, 9, 7, 32.39338 + 6, 7, 9, 10, 10, 8, 6, 8, 12, 14, 11, 9, 6, 6, 14, 11, 32.39339 + 6, 5, 6, 7, 7, 5, 6, 6, 6, 5, 5, 5, 5, 5, 10, 11, 32.39340 + 10, 10, 10, 7, 7, 6, 3, 4, 2, 0, 0, 0, 0, 0, 0, 0, 32.39341 + 0, 0, 1, 2, 3, 4, 6, 6, 6, 7, 7, 5, 3, 1, 8, 8, 32.39342 + 8, 7, 7, 6, 6, 6, 6, 6, 4, 4, 3, 2, 3, 4, 7, 7, 32.39343 + 10, 11, 8, 6, 5, 6, 15, 7, 0, 0, 5, 15, 21, 24, 25, 26, 32.39344 + 30, 30, 29, 30, 32, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 50, 32.39346 + 45, 34, 23, 10, 3, 6, 9, 8, 4, 4, 4, 5, 7, 9, 10, 8, 32.39347 + 6, 7, 10, 14, 14, 11, 6, 4, 1, 10, 10, 7, 6, 5, 5, 4, 32.39348 + 3, 5, 3, 3, 3, 1, 1, 2, 2, 7, 8, 6, 6, 5, 3, 3, 32.39349 + 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 32.39350 + 4, 6, 6, 6, 7, 7, 4, 2, 0, 4, 5, 5, 5, 5, 5, 5, 32.39351 + 5, 7, 7, 5, 5, 4, 3, 4, 5, 9, 12, 10, 9, 6, 3, 2, 32.39352 + 1, 10, 3, 0, 0, 0, 11, 24, 30, 25, 25, 27, 25, 25, 26, 29, 32.39353 + 32, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39354 + 255, 255, 255, 255, 255, 255, 255, 255, 48, 46, 40, 33, 25, 15, 8, 8, 32.39355 + 14, 14, 12, 8, 2, 2, 4, 7, 9, 10, 8, 6, 8, 11, 14, 12, 32.39356 + 9, 4, 2, 0, 7, 7, 7, 6, 4, 3, 2, 1, 3, 1, 1, 0, 32.39357 + 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.39358 + 0, 0, 0, 0, 1, 2, 1, 3, 3, 5, 4, 5, 6, 6, 6, 5, 32.39359 + 5, 2, 1, 0, 1, 1, 2, 2, 3, 4, 4, 5, 5, 5, 2, 2, 32.39360 + 0, 0, 0, 0, 9, 12, 10, 8, 3, 0, 0, 0, 7, 5, 0, 0, 32.39361 + 0, 0, 15, 27, 23, 23, 25, 25, 24, 24, 27, 29, 27, 106, 255, 255, 32.39362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39363 + 255, 255, 185, 41, 37, 28, 19, 20, 13, 9, 12, 15, 13, 9, 5, 7, 32.39364 + 7, 8, 10, 13, 14, 12, 10, 8, 11, 12, 10, 8, 4, 2, 2, 5, 32.39365 + 7, 7, 4, 2, 0, 0, 2, 3, 2, 3, 0, 0, 0, 0, 0, 0, 32.39366 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 32.39367 + 5, 6, 5, 7, 7, 8, 7, 5, 5, 6, 5, 5, 5, 2, 0, 1, 32.39368 + 0, 0, 0, 1, 4, 6, 8, 4, 3, 2, 0, 0, 0, 0, 0, 10, 32.39369 + 10, 9, 8, 4, 1, 1, 3, 10, 12, 11, 3, 0, 0, 3, 13, 19, 32.39370 + 20, 24, 24, 26, 26, 27, 27, 27, 32, 255, 255, 255, 255, 255, 255, 255, 32.39371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 44, 37, 30, 32.39372 + 19, 10, 18, 13, 10, 13, 14, 9, 7, 6, 10, 9, 9, 11, 13, 14, 32.39373 + 13, 11, 7, 10, 10, 7, 6, 4, 5, 5, 6, 8, 7, 4, 1, 0, 32.39374 + 0, 2, 9, 8, 7, 4, 5, 4, 1, 1, 0, 0, 0, 0, 0, 0, 32.39375 + 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 6, 7, 8, 7, 9, 9, 32.39376 + 8, 8, 6, 7, 8, 8, 8, 8, 6, 4, 5, 3, 2, 1, 3, 7, 32.39377 + 11, 14, 11, 10, 8, 4, 2, 0, 0, 0, 11, 12, 11, 9, 6, 5, 32.39378 + 5, 7, 9, 15, 18, 15, 8, 1, 0, 2, 10, 16, 23, 27, 29, 28, 32.39379 + 28, 28, 28, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39380 + 255, 255, 255, 255, 255, 255, 187, 49, 43, 35, 28, 15, 4, 23, 17, 16, 32.39381 + 18, 17, 13, 13, 17, 10, 8, 7, 8, 10, 11, 10, 9, 8, 8, 8, 32.39382 + 5, 4, 3, 5, 7, 8, 8, 8, 4, 0, 0, 1, 4, 13, 11, 12, 32.39383 + 11, 9, 7, 6, 5, 2, 1, 2, 0, 3, 3, 6, 6, 6, 7, 8, 32.39384 + 7, 7, 7, 4, 2, 7, 7, 8, 8, 9, 9, 10, 8, 7, 8, 9, 32.39385 + 9, 10, 11, 8, 7, 10, 8, 5, 4, 7, 11, 17, 21, 19, 17, 15, 32.39386 + 11, 9, 5, 4, 2, 12, 13, 11, 11, 7, 8, 10, 10, 7, 13, 20, 32.39387 + 25, 21, 14, 4, 0, 3, 11, 21, 30, 31, 32, 31, 30, 29, 34, 106, 32.39388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39389 + 188, 56, 53, 45, 33, 28, 26, 28, 11, 13, 18, 20, 21, 17, 12, 7, 32.39390 + 5, 8, 12, 14, 13, 10, 9, 8, 4, 5, 4, 0, 0, 0, 0, 6, 32.39391 + 3, 3, 3, 1, 0, 0, 0, 0, 2, 2, 2, 3, 3, 3, 3, 3, 32.39392 + 2, 2, 3, 2, 2, 5, 5, 7, 9, 9, 11, 10, 11, 10, 11, 10, 32.39393 + 15, 15, 13, 11, 9, 8, 5, 5, 1, 5, 9, 12, 14, 15, 14, 14, 32.39394 + 7, 6, 4, 4, 6, 10, 14, 17, 23, 20, 18, 15, 10, 4, 0, 0, 32.39395 + 6, 7, 5, 5, 5, 9, 11, 12, 16, 14, 12, 19, 32, 37, 20, 0, 32.39396 + 15, 19, 22, 26, 28, 26, 24, 22, 28, 27, 25, 255, 255, 255, 255, 255, 32.39397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 52, 47, 42, 34, 32.39398 + 26, 23, 21, 8, 11, 13, 15, 14, 13, 11, 8, 6, 9, 11, 12, 11, 32.39399 + 8, 9, 7, 7, 8, 7, 5, 2, 3, 8, 13, 13, 13, 13, 8, 6, 32.39400 + 4, 5, 7, 9, 8, 8, 8, 8, 9, 10, 10, 8, 8, 7, 7, 9, 32.39401 + 9, 10, 9, 11, 12, 13, 16, 16, 17, 17, 18, 19, 19, 18, 16, 14, 32.39402 + 14, 12, 12, 7, 11, 13, 17, 19, 20, 20, 19, 12, 13, 12, 14, 16, 32.39403 + 20, 26, 28, 31, 30, 28, 24, 20, 14, 10, 9, 15, 14, 12, 10, 11, 32.39404 + 11, 14, 15, 18, 16, 14, 21, 36, 43, 32, 18, 9, 8, 12, 22, 33, 32.39405 + 33, 24, 13, 28, 25, 22, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.39406 + 255, 255, 255, 255, 255, 192, 53, 47, 39, 35, 31, 27, 20, 15, 7, 7, 32.39407 + 7, 7, 7, 10, 8, 8, 6, 8, 10, 11, 8, 8, 7, 8, 11, 11, 32.39408 + 14, 11, 11, 12, 18, 25, 22, 21, 21, 17, 14, 11, 11, 12, 15, 14, 32.39409 + 12, 11, 12, 14, 16, 17, 15, 15, 15, 14, 14, 14, 14, 14, 12, 14, 32.39410 + 16, 19, 20, 22, 22, 21, 22, 22, 20, 20, 19, 17, 17, 17, 15, 16, 32.39411 + 20, 21, 23, 22, 23, 22, 18, 19, 19, 21, 26, 32, 37, 41, 37, 37, 32.39412 + 35, 33, 29, 23, 22, 19, 24, 22, 21, 18, 17, 16, 17, 17, 20, 18, 32.39413 + 17, 23, 34, 43, 41, 34, 18, 5, 0, 9, 29, 39, 29, 17, 26, 22, 32.39414 + 21, 20, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.39415 + 68, 56, 45, 32, 27, 27, 26, 20, 13, 8, 8, 8, 8, 7, 7, 6, 32.39416 + 5, 4, 5, 7, 9, 9, 8, 9, 12, 15, 18, 19, 17, 16, 18, 25, 32.39417 + 31, 26, 25, 23, 18, 16, 11, 12, 13, 16, 14, 12, 11, 11, 14, 17, 32.39418 + 20, 21, 19, 17, 16, 15, 16, 15, 14, 11, 12, 13, 17, 19, 20, 22, 32.39419 + 21, 17, 18, 18, 18, 16, 17, 17, 17, 18, 19, 20, 21, 22, 24, 23, 32.39420 + 22, 18, 18, 20, 24, 30, 36, 41, 45, 37, 36, 36, 33, 30, 26, 24, 32.39421 + 21, 26, 24, 24, 21, 20, 21, 20, 20, 21, 21, 19, 22, 28, 33, 37, 32.39422 + 34, 39, 15, 0, 0, 12, 32, 38, 35, 33, 25, 19, 19, 17, 202, 255, 32.39423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 61, 60, 43, 28, 20, 32.39424 + 22, 26, 20, 15, 12, 11, 12, 11, 11, 7, 5, 2, 0, 3, 5, 7, 32.39425 + 9, 10, 13, 16, 19, 20, 22, 21, 18, 20, 25, 29, 27, 26, 25, 20, 32.39426 + 15, 12, 12, 13, 15, 13, 11, 10, 11, 14, 17, 19, 21, 21, 19, 17, 32.39427 + 15, 14, 14, 14, 12, 13, 15, 15, 17, 17, 18, 18, 14, 15, 15, 16, 32.39428 + 17, 17, 18, 18, 23, 24, 24, 23, 23, 23, 23, 23, 18, 20, 22, 26, 32.39429 + 29, 35, 39, 42, 33, 33, 33, 31, 30, 26, 25, 24, 25, 24, 22, 23, 32.39430 + 21, 22, 22, 24, 20, 20, 20, 24, 25, 27, 28, 31, 48, 26, 3, 0, 32.39431 + 0, 16, 34, 45, 39, 30, 20, 17, 13, 65, 255, 255, 255, 255, 255, 255, 32.39432 + 255, 255, 255, 255, 189, 56, 54, 58, 43, 24, 18, 21, 24, 23, 16, 14, 32.39433 + 15, 15, 13, 10, 6, 3, 2, 0, 3, 6, 10, 11, 12, 14, 15, 19, 32.39434 + 20, 21, 21, 18, 17, 22, 27, 28, 29, 28, 24, 19, 15, 17, 17, 14, 32.39435 + 13, 12, 11, 12, 15, 18, 19, 21, 19, 17, 16, 15, 15, 15, 14, 16, 32.39436 + 16, 17, 19, 19, 20, 22, 21, 17, 17, 20, 21, 23, 24, 26, 27, 31, 32.39437 + 31, 30, 30, 29, 30, 28, 28, 23, 25, 26, 29, 31, 36, 39, 40, 30, 32.39438 + 30, 30, 30, 29, 28, 26, 26, 22, 22, 23, 23, 24, 26, 25, 25, 21, 32.39439 + 18, 19, 24, 28, 27, 28, 30, 39, 33, 20, 8, 1, 6, 20, 35, 37, 32.39440 + 30, 24, 19, 13, 9, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.39441 + 49, 50, 49, 37, 22, 17, 21, 24, 20, 15, 15, 13, 10, 7, 6, 5, 32.39442 + 5, 4, 2, 5, 9, 11, 12, 11, 12, 13, 15, 17, 21, 19, 17, 17, 32.39443 + 21, 25, 30, 30, 28, 23, 21, 20, 19, 20, 12, 12, 13, 13, 15, 16, 32.39444 + 18, 19, 21, 20, 21, 18, 17, 17, 17, 19, 17, 18, 19, 22, 25, 25, 32.39445 + 26, 25, 23, 23, 26, 28, 31, 33, 34, 36, 39, 39, 38, 36, 35, 33, 32.39446 + 34, 32, 32, 31, 33, 33, 35, 37, 37, 39, 30, 30, 32, 32, 31, 30, 32.39447 + 30, 30, 24, 26, 26, 28, 27, 28, 27, 26, 26, 21, 19, 23, 25, 26, 32.39448 + 27, 32, 31, 37, 39, 27, 9, 3, 12, 24, 32, 29, 26, 26, 18, 10, 32.39449 + 10, 255, 255, 255, 255, 255, 255, 255, 255, 208, 45, 47, 49, 43, 34, 22, 32.39450 + 20, 23, 23, 19, 12, 14, 12, 5, 3, 1, 2, 5, 6, 4, 7, 12, 32.39451 + 14, 14, 12, 9, 9, 13, 16, 18, 18, 17, 17, 21, 26, 29, 29, 26, 32.39452 + 24, 21, 18, 19, 21, 12, 13, 14, 15, 16, 18, 19, 19, 23, 21, 21, 32.39453 + 20, 20, 20, 20, 21, 16, 17, 19, 23, 25, 27, 29, 29, 26, 27, 29, 32.39454 + 32, 35, 38, 40, 40, 44, 42, 42, 40, 38, 38, 37, 36, 35, 37, 37, 32.39455 + 37, 36, 36, 36, 36, 30, 30, 30, 30, 31, 30, 31, 30, 28, 28, 30, 32.39456 + 29, 30, 29, 28, 27, 32, 22, 16, 20, 22, 21, 25, 28, 32, 43, 50, 32.39457 + 37, 16, 4, 11, 21, 24, 26, 30, 30, 21, 14, 10, 255, 255, 255, 255, 32.39458 + 255, 255, 255, 255, 86, 52, 58, 55, 31, 27, 24, 23, 23, 21, 17, 13, 32.39459 + 11, 9, 6, 3, 1, 0, 1, 2, 4, 7, 11, 14, 12, 11, 10, 11, 32.39460 + 9, 13, 17, 19, 19, 22, 27, 33, 28, 28, 28, 27, 23, 18, 18, 19, 32.39461 + 15, 14, 13, 13, 13, 15, 17, 18, 24, 25, 26, 21, 18, 13, 12, 13, 32.39462 + 15, 14, 16, 16, 19, 21, 25, 26, 27, 29, 31, 33, 35, 34, 34, 32, 32.39463 + 44, 40, 36, 31, 30, 31, 32, 33, 30, 30, 31, 29, 30, 30, 32, 32, 32.39464 + 30, 29, 27, 26, 26, 28, 32, 36, 23, 24, 24, 25, 27, 28, 30, 30, 32.39465 + 26, 27, 30, 33, 33, 31, 28, 25, 29, 25, 30, 37, 23, 1, 0, 17, 32.39466 + 27, 26, 27, 30, 20, 6, 7, 96, 255, 255, 255, 255, 255, 255, 255, 50, 32.39467 + 57, 55, 47, 27, 24, 20, 21, 20, 19, 15, 12, 12, 10, 7, 5, 3, 32.39468 + 3, 4, 5, 6, 10, 13, 13, 14, 12, 12, 12, 10, 15, 19, 22, 20, 32.39469 + 22, 28, 32, 25, 26, 27, 25, 23, 19, 19, 20, 18, 17, 16, 16, 16, 32.39470 + 17, 19, 20, 26, 27, 26, 24, 17, 14, 13, 12, 15, 18, 18, 21, 22, 32.39471 + 25, 27, 29, 28, 30, 34, 36, 38, 37, 38, 37, 42, 41, 36, 32, 31, 32.39472 + 31, 33, 35, 30, 29, 30, 30, 30, 32, 32, 32, 30, 29, 27, 26, 26, 32.39473 + 28, 32, 36, 27, 26, 27, 28, 28, 27, 28, 27, 24, 25, 27, 30, 31, 32.39474 + 28, 25, 23, 26, 25, 34, 41, 32, 13, 5, 11, 22, 21, 23, 24, 24, 32.39475 + 16, 15, 17, 255, 255, 255, 255, 255, 255, 189, 56, 57, 48, 33, 23, 22, 32.39476 + 20, 20, 21, 20, 16, 13, 9, 8, 7, 5, 5, 6, 7, 8, 9, 11, 32.39477 + 15, 15, 13, 13, 14, 14, 14, 19, 21, 24, 22, 23, 25, 28, 22, 24, 32.39478 + 26, 25, 22, 19, 19, 19, 19, 18, 17, 16, 16, 18, 19, 20, 29, 29, 32.39479 + 29, 26, 21, 16, 15, 14, 18, 19, 21, 25, 27, 31, 31, 34, 32, 34, 32.39480 + 36, 40, 41, 44, 43, 43, 43, 39, 35, 31, 31, 32, 35, 38, 31, 31, 32.39481 + 30, 30, 32, 32, 34, 35, 30, 29, 27, 26, 26, 28, 32, 36, 30, 29, 32.39482 + 30, 28, 28, 26, 27, 26, 20, 23, 26, 26, 27, 23, 21, 19, 24, 28, 32.39483 + 36, 42, 42, 32, 16, 2, 15, 17, 20, 21, 24, 24, 21, 12, 255, 255, 32.39484 + 255, 255, 255, 255, 53, 52, 47, 35, 18, 23, 24, 23, 25, 23, 19, 15, 32.39485 + 12, 7, 7, 6, 6, 7, 8, 10, 11, 6, 10, 12, 13, 15, 16, 18, 32.39486 + 19, 17, 21, 24, 24, 22, 21, 23, 26, 23, 27, 28, 27, 25, 19, 19, 32.39487 + 18, 17, 16, 15, 14, 14, 15, 16, 17, 30, 30, 30, 28, 23, 20, 18, 32.39488 + 19, 18, 20, 25, 28, 32, 36, 36, 36, 34, 35, 38, 42, 45, 46, 48, 32.39489 + 48, 42, 38, 35, 32, 32, 33, 36, 40, 30, 30, 30, 31, 31, 34, 34, 32.39490 + 35, 30, 29, 27, 26, 26, 28, 32, 36, 33, 33, 31, 30, 28, 27, 27, 32.39491 + 27, 18, 19, 22, 24, 24, 21, 18, 16, 23, 31, 37, 38, 44, 45, 25, 32.39492 + 1, 9, 18, 21, 20, 22, 27, 21, 10, 255, 255, 255, 255, 255, 255, 43, 32.39493 + 39, 38, 28, 13, 21, 22, 24, 25, 20, 15, 12, 7, 3, 3, 4, 5, 32.39494 + 6, 8, 9, 10, 2, 5, 9, 14, 15, 17, 19, 21, 16, 20, 23, 22, 32.39495 + 20, 20, 21, 25, 29, 31, 31, 31, 26, 20, 19, 17, 17, 16, 14, 13, 32.39496 + 13, 14, 15, 16, 29, 29, 30, 28, 25, 22, 20, 21, 19, 21, 26, 29, 32.39497 + 34, 35, 36, 36, 33, 34, 36, 40, 43, 45, 48, 48, 40, 35, 33, 31, 32.39498 + 31, 35, 37, 42, 30, 30, 31, 31, 33, 34, 36, 37, 30, 29, 27, 26, 32.39499 + 26, 28, 32, 36, 33, 33, 32, 31, 31, 28, 27, 27, 18, 18, 21, 23, 32.39500 + 23, 20, 17, 14, 24, 30, 32, 31, 41, 49, 34, 6, 3, 14, 24, 22, 32.39501 + 22, 24, 22, 13, 255, 255, 255, 255, 255, 255, 34, 30, 34, 25, 12, 15, 32.39502 + 18, 22, 22, 16, 11, 6, 3, 3, 4, 5, 6, 8, 10, 11, 11, 0, 32.39503 + 5, 11, 14, 17, 19, 21, 21, 14, 16, 20, 18, 16, 17, 21, 25, 31, 32.39504 + 33, 34, 32, 27, 20, 17, 15, 18, 17, 15, 14, 14, 14, 15, 16, 23, 32.39505 + 24, 26, 24, 23, 20, 20, 19, 18, 19, 23, 27, 29, 32, 33, 33, 30, 32.39506 + 31, 32, 36, 38, 41, 43, 44, 37, 34, 31, 30, 30, 34, 38, 42, 29, 32.39507 + 31, 31, 32, 33, 36, 36, 39, 30, 29, 27, 26, 26, 28, 32, 36, 35, 32.39508 + 35, 33, 32, 31, 28, 28, 28, 19, 22, 25, 24, 24, 20, 18, 15, 25, 32.39509 + 29, 29, 26, 37, 49, 38, 15, 0, 9, 19, 21, 23, 24, 21, 19, 96, 32.39510 + 255, 255, 255, 255, 255, 27, 27, 32, 26, 13, 9, 14, 18, 20, 15, 9, 32.39511 + 4, 1, 3, 4, 6, 8, 9, 10, 11, 11, 2, 7, 13, 19, 21, 19, 32.39512 + 19, 19, 10, 12, 14, 14, 12, 16, 22, 27, 29, 32, 33, 32, 28, 21, 32.39513 + 18, 16, 17, 16, 14, 12, 12, 13, 14, 14, 14, 17, 19, 19, 16, 16, 32.39514 + 17, 18, 17, 17, 19, 20, 24, 27, 29, 30, 25, 25, 28, 29, 32, 34, 32.39515 + 38, 38, 33, 31, 29, 29, 30, 34, 39, 40, 31, 30, 32, 32, 35, 35, 32.39516 + 38, 39, 30, 29, 27, 26, 26, 28, 32, 36, 39, 38, 36, 33, 30, 27, 32.39517 + 27, 24, 23, 24, 25, 27, 27, 23, 20, 17, 22, 28, 29, 27, 35, 43, 32.39518 + 39, 26, 7, 7, 13, 21, 25, 23, 19, 17, 19, 255, 255, 255, 255, 31, 32.39519 + 23, 28, 32, 24, 10, 6, 14, 20, 20, 17, 10, 5, 4, 6, 7, 9, 32.39520 + 11, 13, 13, 14, 14, 4, 10, 17, 23, 24, 20, 18, 17, 8, 10, 11, 32.39521 + 10, 9, 14, 22, 27, 25, 28, 32, 31, 27, 23, 18, 17, 14, 13, 11, 32.39522 + 9, 9, 9, 10, 11, 9, 11, 14, 13, 12, 12, 13, 15, 17, 16, 17, 32.39523 + 17, 20, 24, 26, 27, 23, 23, 24, 25, 28, 30, 33, 34, 31, 30, 28, 32.39524 + 28, 29, 33, 38, 42, 30, 30, 32, 32, 34, 37, 39, 39, 30, 29, 27, 32.39525 + 26, 26, 28, 32, 36, 43, 40, 37, 33, 30, 26, 25, 22, 24, 26, 27, 32.39526 + 29, 28, 25, 21, 18, 22, 28, 31, 28, 34, 42, 40, 32, 16, 8, 9, 32.39527 + 22, 29, 21, 14, 12, 16, 93, 255, 255, 255, 25, 29, 32, 29, 16, 6, 32.39528 + 0, 5, 10, 14, 13, 9, 5, 4, 5, 8, 11, 13, 10, 6, 6, 6, 32.39529 + 0, 6, 20, 25, 23, 17, 17, 17, 13, 15, 16, 14, 15, 18, 22, 26, 32.39530 + 19, 21, 23, 21, 20, 19, 20, 20, 20, 20, 22, 21, 17, 12, 7, 3, 32.39531 + 8, 11, 15, 15, 13, 11, 12, 14, 15, 16, 18, 19, 21, 22, 22, 22, 32.39532 + 23, 23, 19, 20, 20, 25, 28, 33, 26, 28, 30, 34, 36, 37, 38, 37, 32.39533 + 31, 32, 34, 37, 40, 45, 47, 49, 44, 38, 31, 27, 27, 29, 32, 35, 32.39534 + 30, 29, 28, 28, 29, 28, 29, 29, 24, 25, 25, 24, 20, 16, 9, 7, 32.39535 + 19, 21, 25, 27, 30, 33, 32, 34, 20, 11, 8, 17, 24, 21, 17, 14, 32.39536 + 20, 13, 255, 255, 255, 24, 30, 33, 27, 15, 4, 0, 4, 11, 14, 13, 32.39537 + 10, 5, 5, 6, 9, 11, 10, 9, 6, 5, 6, 2, 12, 25, 28, 25, 32.39538 + 20, 19, 19, 12, 15, 15, 14, 14, 16, 21, 24, 19, 21, 21, 21, 18, 32.39539 + 18, 19, 20, 15, 16, 18, 21, 19, 16, 13, 8, 11, 14, 17, 17, 15, 32.39540 + 14, 15, 16, 11, 12, 14, 16, 18, 19, 20, 20, 22, 21, 20, 18, 21, 32.39541 + 25, 29, 32, 24, 26, 27, 29, 31, 33, 35, 35, 31, 33, 35, 37, 40, 32.39542 + 43, 46, 48, 41, 37, 30, 26, 26, 28, 31, 32, 28, 27, 26, 26, 27, 32.39543 + 26, 27, 27, 24, 26, 26, 24, 21, 18, 14, 10, 19, 21, 24, 27, 30, 32.39544 + 31, 32, 32, 23, 14, 8, 14, 20, 19, 16, 14, 19, 15, 255, 255, 255, 32.39545 + 27, 30, 32, 24, 12, 0, 0, 5, 9, 12, 12, 9, 8, 7, 6, 7, 32.39546 + 8, 8, 6, 6, 6, 7, 10, 17, 27, 28, 25, 19, 18, 17, 11, 14, 32.39547 + 14, 13, 13, 15, 18, 21, 17, 20, 20, 20, 18, 18, 19, 21, 9, 12, 32.39548 + 18, 21, 22, 21, 17, 16, 11, 13, 15, 16, 15, 14, 14, 15, 8, 10, 32.39549 + 12, 15, 17, 19, 20, 20, 23, 21, 21, 20, 23, 26, 31, 33, 23, 23, 32.39550 + 25, 25, 26, 27, 30, 30, 31, 31, 33, 34, 38, 40, 43, 44, 38, 35, 32.39551 + 29, 27, 26, 28, 30, 29, 28, 27, 25, 25, 26, 25, 26, 26, 25, 26, 32.39552 + 26, 25, 23, 22, 20, 18, 21, 22, 24, 26, 29, 30, 31, 31, 29, 17, 32.39553 + 9, 11, 18, 17, 16, 13, 20, 18, 255, 255, 255, 30, 34, 33, 25, 10, 32.39554 + 0, 0, 3, 7, 9, 8, 9, 8, 7, 5, 6, 7, 6, 7, 9, 11, 32.39555 + 14, 13, 18, 25, 24, 20, 14, 13, 12, 10, 12, 13, 12, 12, 13, 16, 32.39556 + 18, 17, 19, 18, 19, 17, 18, 20, 22, 8, 11, 16, 21, 23, 22, 21, 32.39557 + 18, 11, 12, 13, 14, 13, 13, 14, 14, 11, 12, 15, 18, 20, 22, 24, 32.39558 + 24, 25, 24, 22, 23, 25, 30, 34, 36, 25, 24, 25, 24, 24, 26, 28, 32.39559 + 29, 30, 30, 31, 31, 33, 36, 37, 38, 37, 35, 30, 28, 27, 27, 26, 32.39560 + 25, 28, 27, 25, 25, 26, 25, 25, 25, 26, 26, 26, 24, 24, 24, 24, 32.39561 + 24, 22, 23, 25, 25, 28, 28, 30, 30, 34, 23, 11, 9, 14, 16, 16, 32.39562 + 14, 23, 22, 255, 255, 255, 33, 36, 33, 24, 9, 0, 0, 4, 8, 9, 32.39563 + 9, 8, 7, 8, 1, 4, 6, 9, 10, 13, 16, 20, 15, 17, 22, 20, 32.39564 + 16, 11, 10, 9, 7, 11, 13, 12, 12, 13, 15, 17, 18, 18, 20, 18, 32.39565 + 18, 20, 21, 25, 13, 15, 19, 21, 22, 23, 21, 21, 12, 11, 11, 12, 32.39566 + 12, 13, 13, 13, 10, 12, 14, 17, 20, 22, 23, 24, 28, 27, 26, 27, 32.39567 + 29, 34, 38, 40, 29, 29, 27, 27, 26, 28, 29, 31, 29, 29, 28, 27, 32.39568 + 29, 29, 32, 32, 35, 33, 30, 30, 30, 28, 25, 22, 26, 25, 23, 23, 32.39569 + 23, 22, 22, 22, 24, 24, 25, 25, 25, 25, 26, 28, 23, 24, 24, 24, 32.39570 + 27, 28, 28, 29, 38, 27, 14, 9, 13, 18, 18, 15, 24, 27, 255, 255, 32.39571 + 255, 35, 35, 32, 23, 10, 2, 1, 7, 12, 12, 12, 9, 8, 8, 0, 32.39572 + 4, 9, 12, 16, 19, 22, 24, 17, 18, 20, 18, 15, 12, 12, 10, 5, 32.39573 + 9, 12, 12, 13, 14, 16, 18, 20, 21, 21, 19, 18, 19, 22, 25, 18, 32.39574 + 19, 19, 20, 20, 20, 23, 21, 13, 11, 10, 10, 12, 13, 13, 13, 11, 32.39575 + 13, 15, 17, 20, 21, 22, 23, 31, 31, 29, 30, 32, 37, 41, 46, 36, 32.39576 + 34, 33, 31, 32, 31, 32, 32, 27, 27, 26, 25, 25, 25, 27, 28, 34, 32.39577 + 33, 33, 32, 32, 28, 23, 21, 23, 22, 20, 20, 20, 18, 19, 18, 18, 32.39578 + 19, 21, 23, 25, 25, 25, 25, 25, 25, 25, 25, 26, 26, 28, 28, 39, 32.39579 + 30, 16, 8, 13, 21, 21, 18, 25, 30, 255, 255, 255, 34, 34, 29, 21, 32.39580 + 11, 4, 6, 10, 16, 19, 17, 13, 11, 10, 5, 9, 14, 18, 20, 21, 32.39581 + 23, 26, 17, 17, 18, 15, 14, 12, 13, 12, 4, 8, 11, 13, 14, 15, 32.39582 + 18, 20, 23, 24, 24, 20, 19, 20, 21, 26, 23, 20, 19, 19, 19, 22, 32.39583 + 23, 24, 13, 10, 8, 8, 11, 13, 13, 12, 13, 14, 16, 18, 20, 21, 32.39584 + 22, 22, 31, 30, 30, 31, 33, 38, 43, 45, 40, 38, 39, 39, 37, 35, 32.39585 + 33, 33, 29, 29, 28, 27, 25, 25, 26, 26, 33, 34, 34, 34, 33, 29, 32.39586 + 23, 19, 25, 23, 21, 21, 21, 19, 19, 19, 14, 16, 19, 21, 23, 22, 32.39587 + 21, 22, 27, 25, 24, 24, 24, 26, 27, 28, 39, 32, 19, 11, 14, 25, 32.39588 + 26, 23, 23, 30, 255, 255, 255, 32, 31, 28, 19, 9, 3, 8, 15, 20, 32.39589 + 23, 21, 16, 12, 10, 9, 13, 18, 21, 23, 22, 23, 25, 15, 14, 15, 32.39590 + 12, 12, 11, 12, 12, 2, 7, 11, 13, 15, 17, 19, 21, 26, 25, 24, 32.39591 + 22, 19, 20, 23, 25, 23, 22, 19, 18, 17, 20, 25, 27, 11, 8, 5, 32.39592 + 5, 8, 11, 10, 9, 19, 20, 22, 23, 25, 26, 26, 26, 31, 30, 30, 32.39593 + 30, 34, 37, 44, 46, 40, 42, 41, 41, 40, 37, 34, 33, 31, 31, 30, 32.39594 + 28, 27, 27, 25, 26, 34, 33, 34, 36, 34, 31, 24, 19, 29, 27, 25, 32.39595 + 24, 24, 23, 23, 22, 11, 13, 18, 21, 22, 21, 20, 18, 26, 27, 25, 32.39596 + 24, 23, 26, 27, 27, 38, 33, 18, 10, 16, 28, 30, 24, 22, 30, 255, 32.39597 + 255, 255, 30, 33, 30, 19, 11, 11, 7, 10, 11, 10, 12, 14, 11, 5, 32.39598 + 2, 10, 14, 13, 15, 21, 23, 20, 15, 12, 10, 6, 7, 7, 6, 8, 32.39599 + 3, 6, 10, 13, 15, 18, 22, 24, 24, 24, 23, 20, 19, 17, 15, 15, 32.39600 + 16, 15, 14, 13, 15, 17, 20, 24, 21, 19, 17, 14, 13, 14, 14, 15, 32.39601 + 14, 14, 17, 18, 19, 22, 22, 23, 29, 28, 25, 24, 27, 33, 39, 44, 32.39602 + 40, 40, 38, 38, 36, 35, 35, 33, 32, 29, 28, 26, 26, 24, 24, 25, 32.39603 + 30, 35, 37, 38, 38, 36, 33, 28, 20, 22, 24, 27, 24, 18, 12, 9, 32.39604 + 10, 13, 20, 27, 32, 33, 30, 26, 23, 22, 23, 23, 22, 21, 20, 20, 32.39605 + 23, 19, 11, 7, 11, 16, 17, 12, 16, 19, 255, 255, 255, 35, 33, 27, 32.39606 + 15, 9, 11, 10, 14, 15, 12, 11, 13, 12, 8, 10, 16, 18, 15, 15, 32.39607 + 19, 19, 15, 16, 13, 11, 10, 8, 7, 6, 7, 7, 8, 12, 15, 16, 32.39608 + 18, 21, 24, 22, 22, 21, 20, 19, 17, 15, 14, 17, 15, 15, 15, 15, 32.39609 + 18, 22, 24, 20, 19, 14, 13, 12, 12, 12, 13, 12, 15, 16, 17, 18, 32.39610 + 22, 23, 23, 26, 25, 24, 24, 26, 31, 37, 40, 40, 38, 38, 38, 36, 32.39611 + 34, 35, 33, 34, 33, 30, 29, 27, 26, 26, 27, 30, 34, 36, 37, 37, 32.39612 + 35, 32, 28, 20, 22, 24, 26, 24, 19, 14, 11, 12, 15, 20, 25, 32, 32.39613 + 32, 30, 27, 26, 25, 25, 23, 23, 24, 23, 24, 24, 21, 14, 7, 7, 32.39614 + 11, 13, 9, 16, 19, 255, 255, 255, 38, 32, 21, 11, 10, 14, 14, 19, 32.39615 + 19, 14, 10, 11, 13, 12, 17, 19, 20, 17, 16, 18, 17, 13, 17, 16, 32.39616 + 13, 11, 10, 8, 6, 6, 9, 11, 16, 17, 18, 19, 21, 23, 22, 22, 32.39617 + 21, 20, 18, 17, 16, 16, 16, 16, 17, 16, 18, 20, 22, 24, 15, 14, 32.39618 + 12, 10, 9, 9, 10, 11, 13, 13, 15, 16, 18, 20, 21, 22, 24, 22, 32.39619 + 22, 23, 27, 30, 35, 37, 38, 37, 37, 35, 36, 34, 34, 35, 35, 35, 32.39620 + 34, 31, 31, 29, 29, 27, 29, 33, 35, 37, 36, 34, 31, 27, 22, 23, 32.39621 + 25, 26, 25, 22, 18, 16, 17, 19, 21, 23, 27, 30, 29, 28, 29, 28, 32.39622 + 27, 26, 26, 26, 27, 29, 26, 26, 19, 8, 4, 7, 9, 10, 17, 18, 32.39623 + 255, 255, 255, 41, 30, 16, 10, 13, 19, 16, 21, 22, 14, 8, 9, 13, 32.39624 + 15, 18, 18, 18, 17, 18, 19, 18, 15, 16, 17, 15, 14, 10, 7, 6, 32.39625 + 4, 7, 10, 15, 16, 18, 19, 20, 22, 20, 20, 18, 17, 17, 15, 17, 32.39626 + 16, 16, 17, 18, 19, 21, 22, 23, 23, 13, 12, 11, 10, 9, 11, 11, 32.39627 + 11, 14, 15, 16, 16, 19, 21, 20, 21, 21, 21, 22, 26, 27, 30, 33, 32.39628 + 36, 34, 34, 35, 35, 33, 34, 34, 34, 38, 36, 35, 33, 32, 30, 31, 32.39629 + 31, 28, 32, 35, 36, 35, 34, 31, 26, 22, 23, 23, 25, 26, 25, 21, 32.39630 + 20, 25, 23, 20, 22, 24, 26, 28, 27, 31, 30, 29, 27, 27, 28, 30, 32.39631 + 33, 26, 27, 22, 12, 4, 4, 9, 13, 18, 18, 255, 255, 255, 38, 27, 32.39632 + 15, 11, 17, 23, 16, 21, 21, 14, 8, 10, 15, 17, 21, 18, 15, 16, 32.39633 + 18, 17, 15, 14, 15, 16, 15, 12, 9, 7, 4, 2, 3, 6, 12, 15, 32.39634 + 16, 17, 18, 20, 17, 16, 16, 15, 16, 15, 15, 15, 14, 16, 18, 20, 32.39635 + 23, 23, 22, 22, 10, 12, 11, 11, 13, 13, 15, 15, 17, 17, 17, 19, 32.39636 + 19, 20, 20, 21, 22, 22, 24, 27, 30, 31, 32, 33, 30, 30, 32, 33, 32.39637 + 33, 33, 34, 34, 38, 36, 35, 32, 32, 30, 30, 31, 28, 32, 35, 36, 32.39638 + 35, 34, 31, 26, 23, 24, 24, 24, 25, 26, 27, 28, 29, 25, 22, 19, 32.39639 + 21, 25, 26, 27, 31, 30, 29, 28, 28, 28, 31, 34, 27, 30, 25, 14, 32.39640 + 6, 8, 14, 19, 21, 19, 255, 255, 255, 35, 23, 14, 14, 20, 22, 15, 32.39641 + 19, 19, 14, 11, 14, 18, 19, 24, 17, 13, 15, 16, 13, 10, 10, 13, 32.39642 + 12, 11, 8, 7, 4, 2, 2, 1, 5, 9, 12, 11, 12, 12, 13, 13, 32.39643 + 12, 12, 12, 14, 14, 14, 13, 12, 15, 18, 20, 23, 22, 20, 20, 9, 32.39644 + 11, 12, 15, 17, 19, 22, 23, 21, 22, 21, 21, 21, 19, 21, 20, 19, 32.39645 + 21, 25, 30, 31, 32, 30, 29, 27, 28, 30, 30, 33, 33, 35, 35, 34, 32.39646 + 34, 33, 30, 29, 27, 28, 26, 29, 33, 35, 37, 36, 34, 31, 27, 26, 32.39647 + 24, 24, 24, 26, 29, 31, 34, 33, 28, 23, 21, 21, 22, 25, 24, 28, 32.39648 + 28, 27, 27, 27, 28, 30, 32, 28, 29, 24, 13, 6, 10, 18, 21, 24, 32.39649 + 21, 255, 255, 255, 31, 19, 14, 16, 18, 18, 14, 17, 17, 15, 16, 21, 32.39650 + 24, 22, 21, 13, 8, 12, 14, 12, 9, 10, 10, 8, 7, 5, 3, 1, 32.39651 + 0, 0, 1, 6, 9, 11, 9, 7, 7, 7, 9, 8, 10, 10, 11, 12, 32.39652 + 11, 12, 10, 14, 17, 21, 22, 21, 20, 18, 9, 11, 14, 18, 23, 25, 32.39653 + 27, 29, 25, 24, 23, 23, 20, 20, 19, 18, 16, 19, 24, 29, 32, 30, 32.39654 + 27, 26, 26, 26, 28, 28, 30, 33, 35, 35, 32, 31, 28, 28, 25, 24, 32.39655 + 25, 25, 30, 34, 36, 37, 37, 35, 32, 28, 26, 24, 24, 24, 26, 32, 32.39656 + 36, 38, 36, 31, 25, 21, 20, 21, 22, 23, 25, 24, 25, 25, 25, 28, 32.39657 + 27, 28, 30, 31, 24, 13, 7, 10, 17, 21, 28, 22, 255, 255, 255, 29, 32.39658 + 18, 14, 17, 18, 13, 14, 17, 17, 16, 20, 26, 27, 24, 15, 6, 3, 32.39659 + 9, 14, 13, 12, 13, 8, 6, 4, 0, 0, 0, 0, 2, 6, 9, 10, 32.39660 + 10, 8, 4, 2, 1, 6, 7, 8, 8, 10, 10, 12, 11, 9, 13, 18, 32.39661 + 22, 22, 21, 18, 17, 9, 12, 16, 20, 25, 30, 33, 33, 27, 27, 27, 32.39662 + 24, 21, 21, 19, 18, 14, 18, 23, 28, 30, 29, 25, 23, 24, 24, 26, 32.39663 + 28, 30, 33, 35, 35, 30, 27, 26, 24, 24, 22, 22, 23, 30, 35, 37, 32.39664 + 38, 38, 36, 33, 28, 26, 24, 24, 24, 27, 32, 36, 41, 37, 31, 26, 32.39665 + 21, 19, 21, 22, 22, 22, 22, 24, 25, 24, 24, 24, 25, 32, 31, 22, 32.39666 + 11, 6, 9, 15, 17, 30, 23, 255, 255, 255, 30, 25, 18, 15, 13, 16, 32.39667 + 11, 17, 21, 21, 23, 25, 24, 19, 6, 8, 10, 12, 13, 12, 11, 9, 32.39668 + 2, 3, 0, 0, 0, 1, 0, 2, 4, 8, 11, 12, 9, 9, 8, 7, 32.39669 + 10, 12, 14, 12, 10, 9, 10, 12, 16, 10, 11, 18, 22, 18, 11, 12, 32.39670 + 18, 15, 13, 15, 18, 20, 20, 18, 16, 17, 19, 20, 22, 23, 25, 25, 32.39671 + 15, 18, 26, 30, 30, 26, 19, 16, 23, 24, 27, 30, 33, 35, 35, 37, 32.39672 + 31, 30, 27, 22, 19, 19, 24, 28, 40, 36, 30, 29, 28, 30, 31, 31, 32.39673 + 33, 32, 27, 25, 24, 25, 29, 29, 37, 35, 30, 26, 21, 16, 14, 13, 32.39674 + 20, 18, 17, 17, 18, 20, 23, 25, 29, 23, 26, 21, 10, 12, 21, 23, 32.39675 + 26, 102, 255, 255, 255, 31, 26, 19, 14, 14, 15, 12, 17, 21, 21, 22, 32.39676 + 24, 22, 18, 7, 8, 10, 11, 12, 11, 9, 8, 4, 4, 3, 4, 4, 32.39677 + 4, 6, 5, 6, 8, 11, 13, 10, 9, 9, 8, 8, 11, 13, 12, 11, 32.39678 + 10, 10, 11, 7, 9, 13, 21, 22, 16, 16, 19, 19, 17, 14, 13, 14, 32.39679 + 13, 11, 9, 10, 16, 24, 32, 34, 31, 28, 23, 21, 23, 29, 32, 32, 32.39680 + 26, 20, 15, 23, 24, 27, 29, 33, 35, 38, 38, 32, 32, 28, 23, 18, 32.39681 + 20, 24, 28, 36, 34, 29, 25, 25, 26, 27, 27, 31, 29, 26, 23, 22, 32.39682 + 23, 24, 26, 37, 37, 31, 29, 25, 21, 19, 17, 23, 23, 21, 20, 19, 32.39683 + 20, 23, 26, 30, 25, 27, 21, 10, 11, 20, 21, 26, 255, 255, 255, 255, 32.39684 + 34, 29, 20, 14, 13, 14, 14, 19, 22, 21, 22, 23, 21, 16, 10, 10, 32.39685 + 11, 11, 11, 10, 9, 9, 7, 7, 7, 10, 9, 10, 12, 11, 7, 11, 32.39686 + 13, 13, 13, 11, 11, 10, 8, 11, 11, 12, 10, 8, 10, 10, 6, 10, 32.39687 + 19, 23, 20, 17, 17, 21, 18, 19, 16, 13, 6, 3, 1, 3, 6, 12, 32.39688 + 21, 28, 35, 35, 33, 31, 27, 30, 33, 33, 30, 26, 19, 16, 22, 24, 32.39689 + 26, 29, 33, 34, 37, 37, 33, 32, 28, 23, 21, 20, 24, 27, 33, 30, 32.39690 + 25, 22, 24, 23, 22, 22, 30, 27, 22, 19, 18, 18, 21, 23, 36, 34, 32.39691 + 31, 29, 26, 25, 24, 24, 28, 26, 23, 20, 19, 21, 21, 24, 32, 26, 32.39692 + 28, 24, 10, 10, 20, 21, 26, 255, 255, 255, 255, 35, 30, 22, 15, 12, 32.39693 + 11, 14, 18, 21, 20, 20, 21, 18, 13, 11, 10, 10, 9, 8, 8, 8, 32.39694 + 7, 9, 11, 12, 15, 16, 17, 16, 15, 9, 12, 13, 13, 12, 12, 11, 32.39695 + 13, 8, 10, 11, 10, 10, 9, 11, 11, 13, 17, 21, 23, 22, 19, 16, 32.39696 + 18, 20, 20, 18, 12, 4, 0, 0, 2, 5, 8, 9, 14, 20, 29, 36, 32.39697 + 40, 29, 30, 32, 31, 28, 26, 19, 18, 22, 23, 26, 28, 30, 30, 31, 32.39698 + 31, 35, 33, 30, 25, 22, 24, 26, 29, 30, 27, 23, 21, 22, 21, 20, 32.39699 + 19, 29, 27, 22, 19, 17, 18, 21, 21, 33, 31, 31, 28, 28, 28, 27, 32.39700 + 29, 30, 28, 24, 21, 19, 20, 20, 22, 33, 29, 31, 25, 12, 12, 19, 32.39701 + 19, 25, 255, 255, 255, 255, 37, 31, 22, 14, 10, 10, 14, 19, 21, 20, 32.39702 + 20, 20, 17, 12, 12, 11, 10, 8, 7, 8, 8, 9, 10, 10, 14, 18, 32.39703 + 19, 19, 19, 18, 8, 10, 12, 12, 11, 11, 10, 12, 9, 10, 10, 9, 32.39704 + 8, 10, 12, 15, 21, 20, 21, 22, 24, 24, 19, 16, 16, 18, 16, 10, 32.39705 + 6, 2, 4, 7, 9, 6, 3, 4, 10, 19, 30, 38, 25, 27, 27, 27, 32.39706 + 28, 26, 23, 23, 25, 26, 27, 28, 29, 29, 28, 27, 34, 33, 28, 26, 32.39707 + 24, 26, 27, 28, 29, 25, 22, 19, 20, 19, 20, 18, 29, 25, 23, 19, 32.39708 + 18, 19, 19, 22, 31, 31, 31, 31, 31, 31, 33, 34, 32, 29, 26, 23, 32.39709 + 23, 23, 22, 24, 35, 30, 32, 28, 14, 12, 20, 20, 22, 255, 255, 255, 32.39710 + 255, 35, 32, 24, 15, 10, 8, 14, 19, 21, 20, 20, 21, 18, 13, 13, 32.39711 + 11, 9, 7, 7, 8, 10, 12, 7, 10, 16, 18, 19, 18, 16, 15, 8, 32.39712 + 10, 11, 11, 9, 9, 10, 12, 11, 10, 12, 10, 9, 10, 14, 17, 21, 32.39713 + 21, 18, 16, 22, 25, 22, 15, 11, 11, 9, 7, 6, 6, 9, 12, 11, 32.39714 + 9, 7, 8, 10, 12, 17, 20, 21, 20, 20, 22, 23, 24, 25, 25, 26, 32.39715 + 27, 26, 28, 26, 27, 25, 24, 30, 26, 23, 23, 23, 24, 27, 27, 27, 32.39716 + 23, 21, 21, 20, 21, 19, 17, 26, 24, 22, 19, 18, 20, 21, 22, 32, 32.39717 + 31, 32, 32, 34, 37, 38, 39, 34, 33, 30, 27, 26, 26, 29, 29, 34, 32.39718 + 31, 33, 30, 14, 14, 22, 20, 98, 255, 255, 255, 255, 34, 31, 23, 14, 32.39719 + 9, 7, 11, 16, 19, 18, 18, 20, 17, 12, 11, 9, 7, 5, 5, 7, 32.39720 + 10, 13, 6, 8, 12, 16, 18, 15, 11, 9, 6, 7, 8, 7, 6, 5, 32.39721 + 7, 8, 12, 12, 11, 11, 10, 12, 15, 19, 21, 22, 19, 14, 15, 18, 32.39722 + 19, 14, 7, 4, 1, 1, 3, 7, 9, 11, 9, 9, 7, 5, 7, 8, 32.39723 + 9, 10, 10, 10, 9, 10, 13, 15, 19, 19, 17, 18, 18, 20, 20, 21, 32.39724 + 20, 21, 23, 21, 17, 17, 19, 23, 23, 22, 24, 22, 20, 18, 19, 18, 32.39725 + 16, 14, 24, 22, 20, 17, 17, 19, 21, 23, 29, 29, 29, 31, 32, 34, 32.39726 + 38, 39, 31, 29, 26, 25, 27, 28, 29, 32, 35, 30, 33, 31, 17, 15, 32.39727 + 23, 22, 255, 255, 255, 255, 180, 33, 30, 24, 15, 9, 6, 10, 15, 18, 32.39728 + 17, 18, 19, 17, 12, 10, 8, 5, 4, 4, 7, 11, 13, 3, 7, 12, 32.39729 + 15, 15, 13, 9, 7, 4, 5, 5, 5, 3, 5, 6, 8, 13, 14, 13, 32.39730 + 12, 12, 12, 15, 19, 22, 25, 24, 13, 7, 9, 12, 12, 2, 0, 0, 32.39731 + 0, 0, 6, 8, 8, 7, 4, 1, 0, 1, 5, 10, 13, 1, 0, 0, 32.39732 + 0, 1, 4, 7, 10, 6, 8, 9, 11, 13, 14, 14, 15, 18, 14, 11, 32.39733 + 14, 17, 19, 21, 20, 23, 22, 19, 18, 17, 17, 15, 13, 21, 19, 17, 32.39734 + 15, 15, 18, 21, 23, 23, 24, 24, 26, 28, 30, 34, 34, 24, 24, 22, 32.39735 + 22, 22, 24, 28, 30, 34, 31, 34, 31, 17, 17, 23, 22, 255, 255, 255, 32.39736 + 255, 29, 33, 28, 21, 13, 8, 7, 6, 10, 14, 19, 19, 18, 15, 13, 32.39737 + 9, 9, 8, 8, 8, 7, 8, 8, 7, 7, 8, 10, 12, 15, 16, 18, 32.39738 + 6, 6, 7, 6, 5, 4, 2, 1, 7, 9, 12, 13, 16, 19, 18, 19, 32.39739 + 18, 20, 22, 21, 20, 18, 18, 17, 9, 5, 3, 2, 4, 7, 9, 11, 32.39740 + 10, 8, 5, 5, 3, 5, 9, 10, 2, 2, 4, 6, 6, 7, 9, 9, 32.39741 + 10, 12, 14, 14, 11, 9, 9, 9, 17, 16, 16, 14, 15, 16, 17, 19, 32.39742 + 21, 20, 19, 18, 18, 19, 22, 23, 21, 20, 17, 18, 20, 20, 20, 19, 32.39743 + 17, 21, 26, 29, 29, 28, 24, 23, 18, 17, 17, 19, 22, 25, 23, 22, 32.39744 + 30, 28, 32, 27, 12, 10, 21, 22, 255, 255, 255, 255, 31, 34, 29, 21, 32.39745 + 10, 4, 2, 3, 8, 16, 22, 22, 20, 17, 14, 11, 10, 9, 9, 10, 32.39746 + 9, 10, 11, 4, 7, 9, 10, 11, 13, 15, 16, 1, 2, 5, 7, 8, 32.39747 + 7, 5, 4, 12, 13, 15, 15, 17, 19, 21, 22, 13, 15, 15, 17, 15, 32.39748 + 12, 12, 12, 9, 8, 7, 6, 6, 7, 6, 6, 8, 6, 6, 3, 3, 32.39749 + 2, 4, 4, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 5, 7, 6, 32.39750 + 6, 6, 7, 16, 13, 12, 11, 13, 14, 18, 18, 16, 14, 13, 10, 10, 32.39751 + 11, 14, 15, 13, 11, 9, 9, 10, 10, 9, 9, 7, 8, 12, 15, 17, 32.39752 + 14, 12, 11, 13, 12, 11, 11, 15, 16, 16, 14, 24, 25, 30, 27, 13, 32.39753 + 13, 23, 24, 255, 255, 255, 255, 30, 33, 30, 20, 9, 2, 0, 3, 8, 32.39754 + 16, 23, 25, 22, 16, 12, 12, 11, 11, 10, 9, 11, 11, 13, 4, 5, 32.39755 + 8, 10, 12, 13, 13, 14, 0, 1, 5, 8, 11, 11, 10, 9, 14, 14, 32.39756 + 14, 14, 15, 17, 18, 19, 8, 8, 9, 9, 10, 7, 6, 6, 10, 8, 32.39757 + 6, 6, 6, 4, 0, 0, 4, 6, 5, 6, 5, 6, 5, 5, 7, 7, 32.39758 + 5, 4, 3, 0, 0, 0, 0, 0, 4, 4, 7, 7, 10, 12, 15, 14, 32.39759 + 10, 11, 11, 15, 19, 22, 14, 13, 10, 8, 7, 7, 9, 11, 10, 8, 32.39760 + 5, 4, 4, 5, 5, 4, 4, 4, 5, 8, 8, 8, 9, 8, 9, 8, 32.39761 + 7, 7, 8, 10, 9, 9, 22, 22, 30, 29, 15, 17, 26, 103, 255, 255, 32.39762 + 255, 179, 31, 34, 30, 22, 11, 3, 0, 4, 9, 16, 20, 22, 17, 12, 32.39763 + 7, 12, 12, 9, 9, 9, 10, 13, 13, 4, 7, 10, 12, 14, 14, 14, 32.39764 + 14, 0, 1, 3, 5, 7, 9, 11, 12, 13, 13, 13, 12, 12, 14, 15, 32.39765 + 15, 6, 6, 7, 7, 7, 7, 3, 1, 6, 5, 4, 3, 3, 1, 0, 32.39766 + 0, 0, 0, 2, 3, 5, 5, 5, 5, 15, 14, 12, 10, 8, 6, 4, 32.39767 + 4, 0, 0, 5, 5, 7, 9, 12, 14, 17, 15, 13, 11, 12, 14, 18, 32.39768 + 21, 13, 11, 8, 6, 6, 8, 8, 11, 10, 7, 3, 2, 2, 3, 4, 32.39769 + 3, 4, 5, 5, 5, 5, 6, 7, 8, 8, 8, 8, 7, 9, 12, 12, 32.39770 + 13, 23, 23, 32, 32, 20, 19, 27, 255, 255, 255, 255, 26, 30, 33, 31, 32.39771 + 26, 17, 9, 6, 11, 14, 17, 20, 19, 15, 7, 3, 11, 10, 8, 6, 32.39772 + 7, 9, 12, 12, 7, 9, 11, 15, 16, 17, 16, 14, 7, 5, 3, 2, 32.39773 + 3, 6, 10, 12, 13, 12, 13, 13, 13, 12, 12, 12, 8, 7, 5, 8, 32.39774 + 8, 9, 4, 1, 6, 5, 2, 1, 2, 4, 6, 5, 0, 0, 0, 0, 32.39775 + 0, 0, 0, 0, 11, 11, 9, 9, 7, 6, 6, 4, 0, 1, 4, 4, 32.39776 + 4, 5, 8, 10, 17, 14, 11, 11, 11, 13, 15, 17, 7, 7, 5, 3, 32.39777 + 4, 5, 8, 10, 8, 4, 0, 0, 0, 1, 1, 2, 1, 1, 1, 1, 32.39778 + 3, 4, 4, 5, 6, 7, 8, 9, 12, 15, 19, 20, 28, 29, 38, 34, 32.39779 + 22, 18, 27, 255, 255, 255, 255, 26, 28, 30, 30, 27, 22, 16, 12, 20, 32.39780 + 19, 20, 19, 16, 11, 7, 5, 10, 9, 5, 4, 5, 7, 10, 12, 10, 32.39781 + 10, 13, 16, 16, 18, 17, 16, 11, 8, 5, 2, 2, 4, 7, 10, 14, 32.39782 + 15, 16, 17, 16, 15, 14, 13, 11, 9, 6, 9, 11, 10, 7, 2, 8, 32.39783 + 4, 1, 1, 6, 10, 13, 13, 6, 6, 6, 4, 3, 3, 2, 1, 5, 32.39784 + 6, 7, 6, 6, 6, 5, 6, 5, 7, 7, 7, 4, 5, 6, 8, 10, 32.39785 + 10, 9, 7, 8, 9, 10, 11, 13, 12, 9, 8, 8, 10, 11, 12, 8, 32.39786 + 5, 1, 0, 1, 4, 6, 5, 4, 4, 3, 4, 5, 7, 7, 8, 6, 32.39787 + 7, 7, 9, 10, 15, 20, 25, 34, 34, 39, 35, 19, 17, 24, 255, 255, 32.39788 + 255, 255, 28, 28, 29, 30, 28, 26, 22, 19, 22, 19, 15, 13, 9, 7, 32.39789 + 6, 5, 9, 8, 6, 3, 5, 7, 10, 12, 10, 12, 12, 14, 15, 16, 32.39790 + 17, 17, 11, 10, 9, 8, 7, 7, 7, 8, 11, 14, 15, 16, 18, 15, 32.39791 + 13, 12, 11, 6, 5, 8, 11, 10, 6, 2, 2, 2, 2, 4, 8, 11, 32.39792 + 14, 13, 11, 10, 8, 7, 5, 7, 7, 10, 3, 3, 4, 3, 4, 4, 32.39793 + 5, 3, 6, 6, 6, 5, 4, 3, 7, 9, 2, 3, 5, 6, 8, 9, 32.39794 + 10, 11, 23, 20, 17, 13, 12, 11, 13, 13, 8, 6, 2, 1, 3, 6, 32.39795 + 9, 10, 7, 7, 9, 9, 10, 10, 10, 11, 8, 10, 10, 9, 11, 13, 32.39796 + 20, 26, 36, 35, 39, 33, 18, 15, 21, 255, 255, 255, 255, 29, 28, 28, 32.39797 + 28, 28, 25, 22, 20, 18, 15, 9, 5, 2, 2, 4, 6, 11, 8, 5, 32.39798 + 3, 5, 6, 12, 14, 12, 11, 11, 11, 13, 13, 16, 17, 8, 9, 10, 32.39799 + 11, 10, 8, 6, 4, 7, 11, 13, 15, 17, 15, 11, 8, 9, 6, 4, 32.39800 + 5, 10, 10, 6, 0, 0, 0, 0, 3, 8, 10, 11, 9, 1, 0, 0, 32.39801 + 0, 3, 6, 11, 13, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 32.39802 + 0, 0, 0, 0, 2, 0, 1, 3, 8, 11, 13, 13, 14, 24, 20, 16, 32.39803 + 12, 10, 8, 8, 9, 4, 0, 0, 0, 0, 1, 4, 7, 6, 5, 8, 32.39804 + 10, 10, 10, 9, 8, 11, 13, 13, 13, 11, 13, 20, 26, 36, 33, 36, 32.39805 + 30, 14, 13, 20, 255, 255, 255, 255, 34, 35, 34, 33, 36, 34, 25, 14, 32.39806 + 14, 6, 3, 4, 4, 0, 5, 10, 9, 8, 6, 4, 3, 6, 11, 16, 32.39807 + 14, 16, 19, 19, 16, 12, 11, 10, 0, 4, 9, 9, 8, 6, 9, 11, 32.39808 + 8, 11, 14, 17, 18, 13, 5, 0, 6, 5, 4, 4, 4, 2, 0, 0, 32.39809 + 0, 2, 5, 7, 8, 9, 8, 7, 7, 10, 10, 6, 3, 5, 10, 12, 32.39810 + 6, 7, 5, 4, 1, 1, 7, 11, 6, 2, 0, 1, 0, 0, 2, 8, 32.39811 + 5, 8, 9, 7, 9, 13, 13, 12, 13, 15, 20, 23, 22, 15, 7, 0, 32.39812 + 0, 0, 0, 0, 0, 2, 4, 6, 5, 2, 0, 1, 7, 10, 12, 9, 32.39813 + 14, 16, 17, 19, 18, 20, 20, 22, 34, 36, 32, 20, 12, 11, 12, 255, 32.39814 + 255, 255, 255, 34, 34, 31, 29, 30, 29, 19, 6, 9, 4, 1, 3, 4, 32.39815 + 0, 2, 8, 11, 10, 8, 5, 3, 7, 12, 16, 15, 18, 21, 19, 16, 32.39816 + 13, 11, 10, 8, 9, 9, 10, 12, 10, 7, 4, 12, 16, 18, 19, 16, 32.39817 + 11, 5, 1, 3, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 32.39818 + 0, 0, 0, 0, 2, 6, 5, 7, 11, 11, 9, 3, 5, 6, 7, 5, 32.39819 + 7, 8, 9, 9, 6, 4, 4, 3, 1, 5, 10, 5, 12, 15, 17, 20, 32.39820 + 21, 19, 14, 16, 16, 20, 21, 17, 12, 4, 0, 0, 0, 0, 0, 0, 32.39821 + 1, 5, 7, 2, 2, 1, 4, 5, 5, 5, 5, 7, 12, 19, 21, 21, 32.39822 + 20, 24, 28, 33, 36, 31, 22, 12, 11, 255, 255, 255, 255, 181, 35, 33, 32.39823 + 30, 26, 25, 23, 13, 0, 5, 2, 2, 4, 4, 2, 3, 5, 11, 11, 32.39824 + 8, 7, 4, 8, 12, 16, 18, 20, 19, 19, 15, 13, 12, 12, 15, 13, 32.39825 + 12, 14, 17, 17, 12, 6, 7, 11, 18, 19, 17, 14, 7, 3, 9, 4, 32.39826 + 0, 0, 0, 0, 0, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.39827 + 2, 8, 15, 20, 15, 9, 3, 3, 3, 6, 8, 10, 9, 8, 8, 5, 32.39828 + 3, 4, 1, 0, 1, 8, 7, 14, 23, 26, 30, 30, 25, 20, 21, 20, 32.39829 + 17, 14, 14, 8, 3, 0, 3, 1, 0, 0, 1, 5, 9, 12, 6, 8, 32.39830 + 9, 10, 8, 5, 5, 6, 2, 10, 19, 23, 22, 25, 29, 34, 30, 33, 32.39831 + 32, 22, 13, 13, 255, 255, 255, 255, 31, 34, 31, 26, 23, 22, 20, 9, 32.39832 + 0, 4, 3, 5, 5, 6, 6, 7, 7, 9, 8, 7, 5, 4, 7, 10, 32.39833 + 16, 15, 17, 17, 15, 13, 12, 12, 15, 14, 14, 13, 17, 18, 19, 16, 32.39834 + 13, 1, 6, 14, 22, 26, 24, 17, 10, 17, 14, 6, 2, 1, 3, 5, 32.39835 + 5, 6, 5, 3, 2, 0, 0, 0, 0, 0, 0, 2, 12, 22, 28, 21, 32.39836 + 12, 6, 2, 0, 0, 5, 6, 6, 4, 6, 4, 1, 1, 0, 0, 1, 32.39837 + 8, 7, 17, 26, 31, 33, 34, 31, 25, 28, 24, 14, 11, 7, 5, 3, 32.39838 + 0, 7, 6, 3, 3, 3, 8, 12, 16, 15, 18, 19, 18, 12, 9, 11, 32.39839 + 13, 9, 10, 15, 20, 26, 29, 35, 36, 28, 32, 31, 23, 15, 13, 255, 32.39840 + 255, 255, 255, 29, 28, 27, 23, 17, 18, 17, 8, 0, 2, 3, 6, 5, 32.39841 + 5, 7, 6, 4, 5, 6, 6, 3, 2, 5, 10, 12, 11, 11, 13, 13, 32.39842 + 11, 11, 13, 15, 12, 14, 19, 20, 17, 14, 15, 17, 12, 6, 5, 11, 32.39843 + 20, 26, 23, 19, 20, 14, 7, 2, 1, 2, 5, 5, 9, 11, 13, 15, 32.39844 + 15, 12, 10, 7, 4, 4, 5, 9, 21, 27, 23, 14, 10, 5, 0, 0, 32.39845 + 0, 0, 0, 0, 5, 3, 0, 1, 1, 0, 2, 8, 10, 17, 24, 27, 32.39846 + 31, 34, 32, 29, 35, 25, 14, 8, 6, 7, 4, 1, 7, 6, 5, 2, 32.39847 + 5, 8, 13, 14, 17, 19, 21, 17, 12, 11, 12, 15, 19, 15, 11, 15, 32.39848 + 22, 31, 36, 38, 28, 31, 31, 23, 16, 15, 255, 255, 255, 255, 24, 22, 32.39849 + 22, 17, 15, 14, 16, 8, 0, 1, 4, 5, 3, 3, 5, 4, 1, 5, 32.39850 + 4, 3, 2, 2, 5, 8, 10, 8, 8, 11, 13, 10, 11, 12, 14, 13, 32.39851 + 18, 21, 20, 14, 10, 10, 13, 18, 5, 0, 0, 0, 8, 13, 12, 10, 32.39852 + 7, 0, 0, 0, 0, 0, 0, 6, 11, 17, 22, 26, 24, 23, 21, 13, 32.39853 + 11, 8, 9, 17, 24, 21, 13, 14, 8, 2, 0, 0, 0, 0, 0, 0, 32.39854 + 0, 0, 0, 0, 0, 0, 6, 12, 19, 23, 25, 28, 34, 34, 30, 38, 32.39855 + 27, 14, 7, 5, 7, 4, 2, 4, 3, 1, 1, 1, 3, 6, 7, 7, 32.39856 + 9, 11, 11, 9, 9, 9, 10, 22, 16, 9, 10, 17, 26, 33, 36, 32, 32.39857 + 35, 32, 23, 15, 14, 255, 255, 255, 255, 23, 23, 22, 19, 17, 17, 18, 32.39858 + 12, 3, 2, 6, 6, 0, 0, 3, 4, 0, 5, 4, 5, 4, 3, 5, 32.39859 + 8, 11, 8, 10, 14, 15, 12, 10, 10, 9, 13, 15, 18, 16, 14, 10, 32.39860 + 7, 7, 13, 6, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2, 32.39861 + 0, 0, 3, 7, 12, 20, 25, 26, 28, 28, 19, 19, 15, 12, 16, 21, 32.39862 + 21, 15, 16, 13, 7, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.39863 + 5, 13, 13, 19, 24, 26, 31, 34, 34, 32, 37, 25, 12, 3, 3, 5, 32.39864 + 4, 0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 1, 6, 10, 13, 14, 32.39865 + 9, 7, 13, 12, 9, 9, 10, 18, 27, 35, 36, 37, 35, 23, 16, 15, 32.39866 + 255, 255, 255, 255, 20, 27, 26, 23, 20, 22, 24, 17, 7, 5, 9, 8, 32.39867 + 1, 1, 5, 6, 2, 4, 6, 5, 4, 5, 6, 9, 12, 10, 13, 17, 32.39868 + 18, 13, 9, 8, 7, 12, 9, 10, 11, 15, 15, 10, 4, 5, 11, 15, 32.39869 + 13, 5, 0, 0, 1, 0, 0, 0, 2, 6, 8, 6, 4, 0, 1, 8, 32.39870 + 13, 18, 24, 27, 28, 23, 24, 20, 17, 20, 24, 22, 18, 15, 15, 15, 32.39871 + 9, 3, 0, 2, 4, 8, 6, 6, 9, 11, 12, 18, 23, 15, 20, 27, 32.39872 + 30, 34, 38, 36, 30, 37, 24, 10, 1, 2, 3, 2, 0, 0, 2, 1, 32.39873 + 1, 2, 1, 1, 1, 0, 0, 7, 15, 22, 21, 14, 8, 1, 8, 13, 32.39874 + 10, 5, 10, 21, 33, 38, 41, 35, 23, 16, 15, 255, 255, 255, 255, 29, 32.39875 + 25, 34, 27, 28, 22, 12, 14, 1, 0, 4, 3, 0, 0, 1, 0, 0, 32.39876 + 1, 5, 12, 13, 14, 15, 13, 14, 11, 11, 12, 12, 9, 8, 8, 9, 32.39877 + 6, 7, 5, 4, 5, 4, 3, 3, 8, 7, 9, 9, 8, 10, 8, 9, 32.39878 + 9, 7, 5, 5, 9, 13, 16, 20, 9, 8, 9, 12, 17, 22, 26, 27, 32.39879 + 22, 22, 21, 18, 14, 11, 11, 11, 7, 8, 6, 6, 4, 2, 0, 0, 32.39880 + 0, 0, 0, 2, 4, 7, 10, 12, 16, 20, 22, 24, 32, 38, 40, 36, 32.39881 + 39, 22, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.39882 + 0, 0, 0, 12, 23, 24, 12, 1, 6, 9, 12, 12, 6, 0, 5, 14, 32.39883 + 28, 33, 32, 23, 18, 18, 255, 255, 255, 255, 26, 20, 30, 23, 25, 21, 32.39884 + 13, 15, 4, 0, 1, 2, 1, 1, 4, 3, 0, 6, 7, 7, 9, 9, 32.39885 + 9, 13, 16, 8, 10, 11, 12, 9, 8, 10, 9, 6, 6, 5, 5, 5, 32.39886 + 5, 7, 7, 6, 6, 9, 9, 11, 14, 17, 18, 17, 15, 13, 11, 12, 32.39887 + 13, 17, 20, 20, 18, 16, 17, 18, 19, 19, 18, 13, 15, 15, 15, 13, 32.39888 + 12, 14, 16, 12, 11, 9, 8, 7, 7, 8, 7, 5, 4, 6, 6, 7, 32.39889 + 10, 13, 14, 18, 19, 22, 23, 28, 37, 39, 36, 42, 27, 10, 0, 1, 32.39890 + 4, 6, 6, 10, 9, 11, 13, 14, 15, 13, 9, 12, 9, 11, 18, 26, 32.39891 + 26, 15, 5, 14, 10, 9, 13, 11, 7, 11, 18, 29, 34, 32, 23, 18, 32.39892 + 18, 255, 255, 255, 255, 24, 15, 26, 20, 23, 20, 13, 17, 6, 0, 4, 32.39893 + 5, 5, 5, 10, 9, 8, 6, 5, 4, 1, 1, 4, 8, 12, 6, 8, 32.39894 + 10, 10, 8, 8, 9, 10, 7, 6, 5, 5, 6, 8, 11, 11, 9, 9, 32.39895 + 8, 11, 13, 17, 20, 22, 20, 18, 12, 6, 5, 4, 7, 8, 18, 17, 32.39896 + 16, 17, 20, 19, 19, 16, 7, 10, 14, 15, 14, 16, 16, 18, 14, 12, 32.39897 + 11, 12, 11, 12, 14, 16, 9, 10, 10, 10, 10, 13, 13, 15, 19, 21, 32.39898 + 20, 19, 24, 33, 37, 35, 43, 32, 16, 8, 8, 10, 14, 15, 20, 20, 32.39899 + 24, 28, 31, 30, 29, 25, 22, 19, 18, 22, 28, 27, 20, 10, 20, 12, 32.39900 + 7, 11, 17, 20, 22, 25, 29, 34, 32, 23, 18, 18, 255, 255, 255, 255, 32.39901 + 22, 15, 25, 19, 22, 19, 13, 17, 7, 7, 8, 8, 7, 9, 12, 13, 32.39902 + 14, 5, 3, 0, 0, 0, 0, 4, 9, 4, 7, 9, 8, 9, 7, 9, 32.39903 + 11, 8, 7, 6, 5, 5, 6, 8, 10, 13, 14, 13, 14, 14, 15, 16, 32.39904 + 16, 18, 14, 9, 3, 0, 0, 0, 1, 1, 1, 0, 2, 6, 13, 15, 32.39905 + 15, 7, 10, 14, 15, 15, 16, 16, 18, 10, 11, 13, 13, 15, 15, 17, 32.39906 + 16, 9, 9, 10, 9, 11, 10, 11, 11, 19, 19, 18, 15, 20, 29, 34, 32.39907 + 34, 41, 33, 23, 17, 15, 15, 16, 17, 18, 19, 22, 27, 31, 31, 29, 32.39908 + 26, 24, 21, 18, 20, 24, 25, 21, 14, 23, 14, 10, 14, 19, 22, 26, 32.39909 + 29, 30, 35, 33, 24, 18, 97, 255, 255, 255, 255, 23, 18, 28, 20, 22, 32.39910 + 19, 12, 16, 6, 10, 8, 7, 6, 8, 8, 9, 12, 0, 0, 0, 0, 32.39911 + 0, 0, 0, 2, 3, 6, 7, 8, 9, 9, 10, 11, 9, 9, 7, 4, 32.39912 + 4, 3, 4, 5, 12, 12, 14, 14, 12, 12, 8, 8, 13, 11, 8, 7, 32.39913 + 9, 10, 11, 13, 0, 0, 0, 0, 0, 0, 0, 2, 1, 4, 6, 9, 32.39914 + 10, 10, 13, 16, 8, 11, 16, 21, 21, 21, 18, 15, 12, 12, 11, 11, 32.39915 + 10, 9, 9, 9, 18, 17, 16, 13, 17, 27, 33, 32, 34, 30, 26, 23, 32.39916 + 20, 17, 14, 10, 11, 11, 10, 14, 17, 20, 19, 18, 20, 18, 16, 17, 32.39917 + 20, 24, 24, 23, 25, 22, 22, 21, 17, 16, 21, 27, 31, 36, 34, 24, 32.39918 + 19, 255, 255, 255, 255, 255, 178, 20, 29, 20, 21, 18, 11, 15, 5, 8, 32.39919 + 4, 1, 1, 1, 0, 1, 6, 0, 0, 1, 0, 0, 0, 0, 2, 5, 32.39920 + 6, 9, 9, 9, 10, 11, 12, 10, 9, 8, 6, 4, 2, 1, 0, 5, 32.39921 + 6, 8, 8, 9, 9, 8, 8, 4, 5, 8, 11, 15, 20, 23, 25, 24, 32.39922 + 17, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 6, 9, 12, 13, 32.39923 + 18, 23, 29, 29, 26, 21, 18, 14, 15, 14, 15, 13, 11, 10, 10, 15, 32.39924 + 14, 11, 9, 16, 26, 29, 29, 30, 26, 21, 21, 21, 18, 12, 7, 8, 32.39925 + 6, 5, 6, 8, 9, 9, 7, 12, 12, 12, 15, 19, 22, 27, 29, 27, 32.39926 + 30, 32, 29, 16, 7, 11, 20, 32, 37, 35, 25, 19, 255, 255, 255, 255, 32.39927 + 255, 255, 18, 27, 18, 19, 16, 9, 15, 5, 8, 2, 0, 0, 0, 0, 32.39928 + 0, 3, 0, 2, 3, 4, 3, 2, 4, 6, 6, 7, 9, 10, 10, 10, 32.39929 + 10, 13, 7, 8, 9, 10, 8, 6, 2, 1, 5, 5, 2, 3, 3, 6, 32.39930 + 9, 10, 3, 6, 11, 15, 20, 22, 24, 25, 38, 33, 26, 19, 15, 10, 32.39931 + 5, 2, 2, 3, 4, 3, 3, 7, 10, 15, 20, 23, 28, 30, 31, 29, 32.39932 + 24, 22, 16, 16, 15, 15, 15, 14, 11, 9, 10, 11, 9, 10, 14, 25, 32.39933 + 30, 29, 29, 24, 16, 17, 21, 22, 17, 9, 8, 6, 6, 6, 6, 5, 32.39934 + 2, 0, 3, 7, 9, 12, 14, 20, 24, 30, 25, 29, 35, 34, 22, 10, 32.39935 + 12, 17, 33, 38, 35, 25, 19, 255, 255, 255, 255, 255, 255, 15, 24, 16, 32.39936 + 17, 14, 9, 14, 5, 7, 0, 0, 0, 0, 0, 0, 6, 6, 5, 6, 32.39937 + 4, 3, 6, 8, 13, 8, 9, 11, 11, 10, 10, 12, 12, 5, 7, 10, 32.39938 + 10, 10, 9, 6, 4, 8, 6, 0, 0, 0, 1, 8, 10, 12, 15, 18, 32.39939 + 22, 24, 23, 21, 18, 27, 26, 25, 25, 24, 23, 19, 15, 19, 19, 15, 32.39940 + 12, 10, 12, 15, 19, 23, 26, 29, 29, 30, 28, 25, 22, 14, 14, 15, 32.39941 + 14, 14, 12, 10, 8, 6, 10, 9, 8, 15, 24, 28, 27, 31, 22, 12, 32.39942 + 14, 20, 24, 20, 14, 9, 9, 9, 10, 9, 4, 0, 0, 0, 1, 4, 32.39943 + 8, 11, 15, 22, 26, 20, 24, 30, 35, 28, 19, 17, 20, 33, 38, 35, 32.39944 + 25, 19, 255, 255, 255, 255, 255, 255, 11, 19, 19, 13, 13, 14, 10, 0, 32.39945 + 0, 0, 1, 3, 1, 0, 0, 0, 0, 10, 15, 4, 0, 3, 9, 9, 32.39946 + 0, 0, 2, 6, 7, 9, 11, 12, 6, 10, 16, 19, 19, 15, 14, 13, 32.39947 + 0, 0, 1, 5, 9, 12, 14, 15, 17, 16, 15, 12, 12, 12, 13, 14, 32.39948 + 18, 19, 20, 20, 21, 21, 20, 20, 18, 19, 19, 19, 18, 16, 14, 12, 32.39949 + 16, 19, 23, 25, 23, 17, 10, 7, 11, 11, 10, 10, 10, 10, 10, 10, 32.39950 + 1, 6, 13, 23, 32, 34, 34, 33, 34, 25, 17, 15, 15, 20, 25, 33, 32.39951 + 24, 14, 2, 0, 0, 1, 7, 10, 0, 1, 2, 4, 5, 4, 8, 12, 32.39952 + 25, 25, 25, 24, 23, 22, 23, 22, 38, 33, 26, 19, 15, 255, 255, 255, 32.39953 + 255, 255, 255, 13, 21, 21, 16, 15, 16, 12, 1, 0, 0, 0, 3, 0, 32.39954 + 0, 0, 2, 7, 17, 19, 8, 2, 6, 9, 7, 0, 0, 2, 6, 6, 32.39955 + 7, 9, 11, 9, 12, 17, 18, 15, 12, 9, 7, 0, 1, 3, 6, 11, 32.39956 + 13, 13, 14, 17, 16, 14, 14, 14, 14, 16, 17, 20, 20, 21, 22, 23, 32.39957 + 22, 22, 22, 21, 21, 21, 20, 19, 18, 17, 16, 18, 18, 20, 21, 21, 32.39958 + 17, 14, 10, 8, 9, 8, 8, 8, 8, 10, 10, 4, 8, 16, 24, 34, 32.39959 + 38, 38, 37, 40, 30, 21, 18, 18, 20, 25, 33, 27, 18, 8, 2, 0, 32.39960 + 0, 0, 0, 0, 0, 2, 3, 3, 3, 4, 5, 14, 16, 21, 24, 25, 32.39961 + 26, 26, 26, 37, 34, 27, 19, 15, 255, 255, 255, 255, 255, 255, 13, 20, 32.39962 + 21, 16, 15, 14, 11, 3, 0, 0, 1, 3, 0, 0, 0, 5, 15, 20, 32.39963 + 19, 10, 7, 11, 12, 8, 1, 2, 4, 4, 4, 5, 8, 10, 10, 15, 32.39964 + 18, 16, 14, 9, 6, 5, 3, 5, 8, 10, 12, 14, 15, 14, 14, 15, 32.39965 + 14, 15, 18, 21, 22, 25, 25, 25, 26, 27, 27, 27, 27, 27, 24, 24, 32.39966 + 23, 22, 21, 21, 21, 21, 20, 20, 20, 20, 19, 19, 16, 16, 9, 8, 32.39967 + 6, 7, 5, 9, 11, 13, 8, 13, 20, 30, 38, 42, 43, 42, 47, 36, 32.39968 + 25, 22, 21, 21, 24, 31, 27, 23, 18, 12, 9, 4, 0, 0, 0, 1, 32.39969 + 4, 5, 4, 2, 2, 2, 5, 9, 15, 25, 32, 36, 39, 41, 37, 35, 32.39970 + 27, 20, 17, 255, 255, 255, 255, 255, 255, 11, 17, 18, 15, 12, 10, 9, 32.39971 + 4, 3, 0, 3, 3, 0, 0, 0, 8, 16, 18, 15, 10, 10, 15, 16, 32.39972 + 13, 7, 8, 6, 6, 4, 6, 9, 12, 13, 15, 17, 16, 12, 8, 6, 32.39973 + 5, 9, 11, 14, 14, 15, 14, 13, 12, 13, 13, 13, 16, 19, 24, 28, 32.39974 + 30, 29, 30, 31, 32, 32, 32, 32, 31, 28, 27, 26, 24, 24, 25, 26, 32.39975 + 27, 23, 23, 24, 24, 25, 23, 22, 21, 9, 8, 6, 5, 6, 9, 13, 32.39976 + 14, 14, 16, 22, 31, 40, 45, 47, 45, 53, 41, 31, 26, 24, 23, 25, 32.39977 + 30, 21, 21, 20, 19, 17, 15, 12, 9, 6, 7, 8, 7, 5, 3, 4, 32.39978 + 5, 1, 2, 7, 16, 26, 37, 48, 52, 39, 35, 27, 22, 19, 255, 255, 32.39979 + 255, 255, 255, 255, 174, 16, 17, 16, 12, 9, 9, 6, 0, 0, 2, 1, 32.39980 + 0, 0, 3, 12, 14, 13, 9, 6, 8, 12, 13, 11, 10, 11, 10, 8, 32.39981 + 8, 7, 8, 11, 12, 14, 17, 14, 13, 11, 11, 11, 16, 17, 20, 18, 32.39982 + 18, 16, 13, 10, 13, 13, 14, 17, 20, 25, 28, 30, 30, 31, 32, 33, 32.39983 + 33, 33, 33, 32, 27, 26, 25, 24, 24, 26, 27, 28, 25, 28, 29, 31, 32.39984 + 30, 27, 23, 20, 11, 9, 7, 6, 8, 10, 14, 14, 16, 19, 25, 32, 32.39985 + 40, 44, 45, 45, 50, 42, 31, 29, 26, 24, 25, 30, 19, 19, 20, 21, 32.39986 + 20, 20, 20, 21, 14, 14, 14, 11, 8, 7, 7, 9, 6, 3, 2, 4, 32.39987 + 11, 25, 37, 47, 40, 36, 29, 22, 20, 255, 255, 255, 255, 255, 255, 255, 32.39988 + 17, 19, 18, 14, 9, 10, 11, 0, 0, 3, 4, 0, 0, 4, 16, 16, 32.39989 + 13, 8, 6, 6, 8, 9, 9, 14, 14, 13, 13, 10, 10, 10, 12, 13, 32.39990 + 15, 15, 14, 12, 12, 12, 14, 19, 21, 23, 23, 21, 19, 15, 12, 15, 32.39991 + 16, 15, 16, 19, 22, 23, 26, 29, 29, 30, 31, 31, 31, 31, 31, 25, 32.39992 + 25, 25, 25, 26, 27, 28, 28, 28, 29, 32, 32, 30, 25, 20, 18, 13, 32.39993 + 11, 9, 9, 7, 10, 12, 14, 16, 19, 24, 30, 37, 41, 42, 42, 44, 32.39994 + 35, 31, 30, 28, 26, 25, 27, 25, 24, 23, 21, 16, 15, 17, 19, 18, 32.39995 + 18, 16, 14, 11, 9, 11, 12, 20, 14, 8, 5, 6, 17, 28, 36, 41, 32.39996 + 36, 29, 24, 22, 255, 255, 255, 255, 255, 255, 255, 17, 19, 19, 14, 8, 32.39997 + 10, 13, 0, 4, 7, 6, 1, 0, 3, 12, 12, 9, 6, 4, 3, 4, 32.39998 + 7, 10, 15, 15, 16, 17, 13, 12, 13, 13, 12, 13, 14, 12, 10, 11, 32.39999 + 12, 14, 18, 21, 23, 25, 26, 23, 19, 17, 19, 18, 16, 15, 15, 16, 32.40000 + 18, 19, 26, 26, 27, 28, 29, 28, 28, 28, 21, 22, 23, 24, 25, 26, 32.40001 + 26, 26, 29, 30, 29, 27, 22, 18, 15, 12, 11, 12, 10, 9, 8, 7, 32.40002 + 8, 8, 16, 16, 21, 27, 34, 37, 37, 36, 34, 28, 26, 30, 31, 27, 32.40003 + 26, 28, 35, 33, 30, 23, 15, 10, 8, 10, 21, 23, 23, 23, 20, 16, 32.40004 + 16, 15, 24, 22, 19, 17, 17, 21, 26, 29, 41, 37, 31, 26, 24, 255, 32.40005 + 255, 255, 255, 255, 255, 255, 14, 16, 17, 12, 5, 8, 12, 9, 9, 13, 32.40006 + 10, 0, 0, 0, 5, 6, 5, 4, 4, 3, 5, 11, 17, 15, 16, 18, 32.40007 + 20, 17, 14, 13, 15, 13, 13, 12, 10, 9, 7, 10, 12, 15, 18, 22, 32.40008 + 26, 28, 27, 25, 23, 19, 18, 17, 14, 14, 14, 15, 16, 23, 24, 25, 32.40009 + 25, 26, 26, 25, 25, 17, 19, 21, 23, 24, 24, 24, 23, 31, 28, 24, 32.40010 + 19, 14, 13, 9, 9, 11, 11, 10, 9, 7, 6, 6, 5, 16, 16, 18, 32.40011 + 25, 30, 35, 34, 33, 27, 23, 24, 29, 32, 27, 25, 26, 42, 41, 36, 32.40012 + 27, 16, 8, 4, 3, 23, 26, 31, 33, 30, 24, 19, 18, 15, 17, 20, 32.40013 + 21, 23, 25, 24, 24, 42, 37, 31, 27, 24, 255, 255, 255, 255, 255, 255, 32.40014 + 255, 255, 21, 21, 11, 3, 3, 12, 12, 8, 3, 0, 0, 0, 3, 12, 32.40015 + 5, 15, 17, 6, 0, 8, 16, 15, 26, 24, 20, 18, 17, 16, 17, 17, 32.40016 + 3, 5, 11, 15, 17, 17, 14, 14, 24, 23, 23, 22, 20, 18, 17, 15, 32.40017 + 13, 10, 9, 9, 12, 17, 21, 24, 26, 27, 28, 29, 29, 29, 29, 28, 32.40018 + 24, 22, 18, 19, 22, 21, 20, 19, 11, 11, 12, 14, 11, 9, 5, 4, 32.40019 + 13, 14, 18, 18, 17, 16, 12, 10, 17, 22, 26, 28, 26, 28, 29, 32, 32.40020 + 39, 36, 30, 21, 16, 16, 20, 25, 25, 28, 32, 33, 27, 23, 20, 20, 32.40021 + 24, 26, 26, 25, 20, 15, 13, 13, 21, 22, 23, 25, 29, 33, 38, 40, 32.40022 + 42, 44, 38, 28, 22, 255, 255, 255, 255, 255, 255, 255, 255, 23, 24, 16, 32.40023 + 6, 7, 14, 17, 16, 14, 9, 4, 1, 1, 2, 0, 10, 16, 9, 5, 32.40024 + 13, 17, 15, 23, 22, 21, 20, 18, 17, 17, 16, 4, 7, 11, 15, 15, 32.40025 + 15, 15, 14, 23, 23, 23, 22, 20, 18, 17, 17, 10, 10, 7, 7, 9, 32.40026 + 12, 16, 20, 21, 21, 22, 24, 25, 26, 26, 27, 26, 24, 20, 18, 17, 32.40027 + 16, 13, 9, 6, 6, 7, 7, 7, 3, 1, 1, 8, 11, 16, 18, 18, 32.40028 + 17, 12, 10, 12, 17, 22, 27, 30, 32, 34, 34, 40, 37, 30, 22, 18, 32.40029 + 17, 18, 20, 20, 24, 30, 30, 27, 23, 21, 19, 23, 25, 27, 24, 20, 32.40030 + 19, 17, 17, 24, 25, 25, 26, 31, 34, 39, 41, 42, 42, 37, 27, 19, 32.40031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 25, 17, 8, 9, 15, 16, 19, 32.40032 + 19, 20, 18, 11, 3, 0, 0, 4, 10, 9, 9, 16, 17, 14, 21, 20, 32.40033 + 20, 20, 18, 18, 16, 15, 8, 9, 11, 13, 12, 13, 15, 14, 21, 21, 32.40034 + 20, 17, 17, 15, 15, 15, 10, 8, 6, 4, 6, 10, 12, 14, 11, 11, 32.40035 + 12, 14, 16, 18, 20, 22, 27, 24, 22, 21, 20, 15, 11, 9, 3, 4, 32.40036 + 5, 6, 4, 1, 0, 0, 7, 10, 13, 16, 17, 15, 13, 10, 9, 11, 32.40037 + 18, 26, 35, 39, 40, 40, 42, 37, 30, 24, 22, 19, 15, 12, 15, 18, 32.40038 + 22, 24, 23, 20, 17, 17, 19, 21, 23, 21, 20, 18, 19, 19, 24, 24, 32.40039 + 25, 27, 30, 33, 36, 40, 42, 43, 37, 25, 18, 255, 255, 255, 255, 255, 32.40040 + 255, 255, 255, 255, 24, 16, 8, 8, 15, 14, 15, 18, 24, 26, 22, 13, 32.40041 + 4, 0, 1, 6, 7, 10, 16, 16, 13, 17, 18, 20, 19, 20, 19, 16, 32.40042 + 16, 11, 11, 10, 10, 10, 12, 15, 15, 19, 17, 14, 13, 11, 11, 13, 32.40043 + 14, 12, 11, 8, 6, 7, 8, 10, 12, 4, 4, 5, 7, 10, 14, 17, 32.40044 + 18, 20, 20, 21, 19, 17, 15, 10, 9, 5, 5, 7, 7, 8, 6, 5, 32.40045 + 5, 10, 11, 14, 15, 15, 14, 12, 11, 6, 8, 13, 22, 34, 44, 46, 32.40046 + 46, 43, 38, 31, 26, 25, 21, 13, 8, 8, 11, 14, 16, 18, 16, 14, 32.40047 + 12, 15, 17, 18, 17, 16, 14, 17, 17, 20, 21, 21, 25, 27, 29, 34, 32.40048 + 37, 42, 42, 35, 23, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 32.40049 + 18, 10, 12, 18, 19, 20, 19, 22, 25, 25, 20, 13, 3, 5, 4, 6, 32.40050 + 12, 18, 19, 17, 16, 17, 20, 18, 19, 19, 18, 16, 13, 11, 9, 8, 32.40051 + 9, 10, 13, 15, 18, 15, 12, 11, 10, 11, 13, 14, 15, 13, 12, 10, 32.40052 + 10, 9, 11, 12, 4, 4, 6, 8, 11, 14, 17, 18, 15, 16, 16, 14, 32.40053 + 10, 7, 6, 3, 8, 9, 9, 11, 11, 12, 11, 11, 18, 17, 14, 13, 32.40054 + 12, 12, 13, 13, 8, 8, 12, 20, 32, 43, 48, 51, 45, 39, 32, 27, 32.40055 + 26, 22, 15, 9, 0, 2, 5, 6, 12, 15, 14, 15, 16, 16, 18, 16, 32.40056 + 16, 13, 15, 16, 20, 21, 22, 24, 28, 31, 34, 39, 43, 42, 34, 22, 32.40057 + 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 13, 17, 26, 36, 32.40058 + 31, 25, 18, 16, 15, 17, 17, 11, 9, 7, 8, 13, 20, 22, 23, 16, 32.40059 + 17, 16, 18, 19, 19, 19, 20, 14, 11, 10, 8, 8, 11, 12, 14, 18, 32.40060 + 16, 12, 8, 9, 11, 15, 17, 15, 14, 11, 11, 9, 11, 10, 11, 7, 32.40061 + 9, 11, 14, 16, 17, 18, 18, 18, 18, 16, 13, 8, 5, 3, 3, 7, 32.40062 + 6, 9, 9, 12, 13, 15, 14, 21, 18, 16, 13, 12, 12, 11, 13, 9, 32.40063 + 9, 12, 21, 29, 39, 44, 47, 45, 41, 34, 28, 25, 22, 18, 16, 0, 32.40064 + 0, 0, 2, 7, 12, 17, 18, 16, 18, 20, 21, 18, 18, 17, 18, 21, 32.40065 + 22, 24, 27, 31, 37, 40, 43, 44, 42, 34, 23, 19, 255, 255, 255, 255, 32.40066 + 255, 255, 255, 255, 255, 255, 255, 14, 19, 30, 48, 40, 26, 11, 2, 2, 32.40067 + 5, 9, 11, 5, 1, 5, 14, 21, 21, 22, 16, 15, 17, 17, 18, 19, 32.40068 + 20, 21, 15, 12, 10, 9, 9, 9, 11, 12, 17, 13, 8, 5, 5, 9, 32.40069 + 12, 17, 11, 11, 9, 9, 8, 7, 9, 8, 7, 9, 12, 15, 16, 15, 32.40070 + 14, 12, 14, 13, 12, 8, 2, 1, 3, 5, 5, 6, 6, 10, 12, 13, 32.40071 + 15, 17, 14, 15, 14, 14, 13, 11, 11, 9, 7, 11, 19, 25, 31, 33, 32.40072 + 38, 40, 45, 42, 35, 28, 23, 22, 23, 25, 12, 8, 1, 0, 4, 10, 32.40073 + 14, 14, 12, 14, 20, 22, 23, 20, 20, 18, 21, 22, 24, 28, 31, 38, 32.40074 + 43, 46, 45, 41, 33, 24, 21, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40075 + 255, 255, 13, 20, 29, 50, 40, 25, 4, 0, 0, 0, 2, 2, 0, 0, 32.40076 + 2, 11, 17, 17, 16, 17, 16, 15, 16, 17, 19, 21, 22, 14, 13, 10, 32.40077 + 8, 8, 9, 10, 12, 12, 9, 3, 0, 0, 3, 8, 11, 9, 7, 6, 32.40078 + 5, 5, 5, 7, 6, 4, 6, 10, 13, 13, 11, 8, 6, 0, 0, 0, 32.40079 + 0, 0, 0, 0, 2, 3, 5, 8, 9, 13, 15, 18, 19, 8, 10, 14, 32.40080 + 16, 16, 13, 9, 7, 3, 12, 22, 30, 31, 30, 32, 34, 45, 43, 36, 32.40081 + 27, 22, 22, 26, 32, 27, 19, 8, 3, 1, 3, 7, 6, 5, 11, 16, 32.40082 + 21, 21, 21, 19, 19, 17, 19, 21, 24, 32, 37, 44, 47, 46, 43, 33, 32.40083 + 25, 25, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 20, 32.40084 + 35, 29, 17, 6, 0, 0, 0, 4, 3, 0, 0, 0, 9, 19, 22, 22, 32.40085 + 17, 13, 11, 8, 9, 10, 14, 16, 13, 10, 7, 6, 8, 12, 13, 13, 32.40086 + 6, 3, 3, 4, 7, 8, 9, 9, 16, 15, 12, 10, 7, 8, 6, 7, 32.40087 + 12, 14, 11, 8, 9, 16, 14, 8, 7, 4, 1, 0, 0, 1, 7, 12, 32.40088 + 6, 9, 12, 13, 14, 15, 20, 22, 12, 13, 14, 15, 15, 15, 13, 12, 32.40089 + 11, 13, 18, 23, 26, 27, 25, 22, 33, 34, 35, 35, 32, 28, 25, 22, 32.40090 + 34, 32, 27, 15, 1, 0, 0, 4, 2, 12, 18, 15, 15, 18, 21, 17, 32.40091 + 10, 15, 21, 27, 34, 37, 43, 47, 54, 43, 29, 21, 21, 22, 255, 255, 32.40092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 16, 24, 21, 15, 6, 0, 32.40093 + 0, 0, 1, 2, 0, 0, 0, 6, 14, 18, 19, 15, 14, 10, 8, 7, 32.40094 + 10, 12, 14, 12, 9, 7, 8, 10, 11, 12, 11, 1, 0, 0, 0, 3, 32.40095 + 4, 5, 4, 10, 8, 6, 5, 3, 4, 5, 4, 8, 10, 8, 4, 7, 32.40096 + 12, 10, 4, 4, 1, 0, 0, 0, 5, 11, 13, 8, 6, 5, 5, 8, 32.40097 + 10, 13, 12, 9, 11, 12, 12, 14, 13, 11, 11, 8, 11, 15, 20, 22, 32.40098 + 23, 22, 20, 26, 28, 30, 31, 30, 27, 25, 24, 32, 32, 31, 22, 10, 32.40099 + 2, 1, 2, 0, 7, 14, 14, 16, 21, 22, 19, 10, 14, 20, 24, 30, 32.40100 + 36, 41, 45, 52, 42, 30, 21, 20, 20, 255, 255, 255, 255, 255, 255, 255, 32.40101 + 255, 255, 255, 255, 255, 11, 11, 12, 10, 6, 3, 1, 1, 2, 1, 0, 32.40102 + 0, 0, 2, 7, 13, 16, 15, 14, 10, 8, 7, 9, 11, 13, 10, 9, 32.40103 + 9, 9, 11, 11, 9, 7, 1, 0, 0, 0, 1, 3, 2, 2, 4, 2, 32.40104 + 1, 1, 3, 3, 4, 5, 6, 8, 6, 5, 6, 8, 7, 3, 0, 0, 32.40105 + 0, 0, 2, 8, 12, 15, 12, 6, 0, 0, 2, 7, 8, 5, 7, 7, 32.40106 + 9, 9, 9, 10, 10, 9, 6, 7, 10, 12, 13, 14, 14, 13, 17, 18, 32.40107 + 21, 26, 28, 28, 30, 29, 32, 32, 31, 28, 21, 13, 5, 0, 0, 3, 32.40108 + 10, 15, 17, 21, 22, 19, 13, 15, 19, 23, 27, 31, 39, 43, 50, 41, 32.40109 + 28, 20, 19, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40110 + 173, 4, 5, 8, 7, 5, 4, 5, 6, 2, 3, 4, 1, 1, 3, 10, 32.40111 + 15, 16, 14, 11, 8, 7, 9, 11, 13, 8, 9, 9, 11, 11, 11, 8, 32.40112 + 5, 6, 2, 1, 0, 0, 3, 4, 3, 2, 3, 3, 3, 6, 7, 7, 32.40113 + 8, 9, 9, 11, 10, 9, 9, 7, 5, 0, 0, 0, 3, 6, 8, 11, 32.40114 + 13, 17, 12, 4, 0, 0, 3, 5, 6, 7, 7, 8, 6, 7, 6, 6, 32.40115 + 5, 1, 3, 5, 6, 6, 7, 8, 10, 8, 10, 15, 20, 26, 30, 33, 32.40116 + 33, 31, 30, 28, 27, 25, 18, 7, 0, 0, 5, 12, 16, 20, 21, 19, 32.40117 + 16, 20, 20, 22, 24, 26, 31, 36, 41, 46, 39, 28, 21, 17, 15, 255, 32.40118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 6, 8, 7, 32.40119 + 7, 8, 11, 13, 5, 7, 8, 5, 3, 4, 10, 16, 17, 15, 12, 8, 32.40120 + 9, 9, 11, 13, 6, 8, 9, 10, 13, 12, 7, 5, 9, 5, 1, 1, 32.40121 + 2, 5, 4, 4, 2, 1, 3, 5, 7, 9, 10, 9, 10, 10, 11, 11, 32.40122 + 11, 6, 4, 5, 1, 2, 3, 7, 6, 10, 9, 10, 15, 14, 11, 4, 32.40123 + 0, 0, 2, 8, 10, 9, 7, 6, 5, 3, 3, 2, 1, 4, 7, 7, 32.40124 + 6, 7, 6, 10, 6, 8, 13, 19, 24, 28, 33, 35, 33, 28, 23, 21, 32.40125 + 21, 15, 7, 1, 1, 4, 9, 17, 21, 21, 18, 17, 24, 25, 26, 27, 32.40126 + 27, 31, 36, 41, 42, 36, 29, 23, 17, 15, 255, 255, 255, 255, 255, 255, 32.40127 + 255, 255, 255, 255, 255, 255, 255, 255, 10, 11, 10, 8, 8, 11, 14, 6, 32.40128 + 8, 9, 9, 6, 7, 12, 17, 17, 14, 10, 8, 8, 8, 11, 11, 7, 32.40129 + 6, 8, 9, 12, 12, 9, 7, 10, 6, 3, 0, 0, 3, 3, 3, 1, 32.40130 + 2, 3, 5, 6, 6, 7, 6, 7, 8, 10, 12, 9, 2, 0, 1, 8, 32.40131 + 8, 8, 8, 8, 9, 8, 8, 9, 13, 13, 8, 0, 0, 1, 8, 8, 32.40132 + 8, 6, 3, 2, 2, 1, 2, 3, 7, 11, 12, 9, 8, 10, 12, 5, 32.40133 + 8, 11, 15, 21, 25, 29, 30, 31, 25, 20, 15, 13, 11, 6, 4, 0, 32.40134 + 0, 4, 13, 19, 21, 21, 21, 27, 27, 28, 28, 29, 29, 33, 35, 39, 32.40135 + 36, 30, 25, 21, 17, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40136 + 255, 255, 255, 175, 14, 13, 11, 10, 9, 11, 7, 6, 8, 7, 9, 11, 32.40137 + 14, 16, 14, 13, 9, 6, 6, 5, 6, 8, 5, 6, 5, 9, 11, 12, 32.40138 + 12, 10, 11, 7, 2, 0, 0, 2, 2, 3, 2, 3, 4, 4, 5, 4, 32.40139 + 3, 2, 6, 5, 9, 12, 8, 0, 0, 0, 11, 11, 12, 11, 10, 8, 32.40140 + 9, 8, 6, 10, 12, 10, 3, 0, 0, 4, 3, 1, 1, 0, 0, 2, 32.40141 + 2, 3, 0, 5, 10, 13, 10, 8, 9, 11, 7, 9, 9, 12, 16, 20, 32.40142 + 23, 24, 27, 22, 18, 12, 8, 8, 6, 3, 0, 0, 0, 9, 16, 17, 32.40143 + 17, 20, 25, 27, 27, 26, 25, 26, 28, 29, 37, 37, 33, 28, 23, 20, 32.40144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.40145 + 16, 12, 9, 6, 6, 7, 6, 6, 6, 10, 13, 15, 17, 13, 11, 6, 32.40146 + 4, 2, 3, 5, 7, 5, 5, 4, 7, 11, 13, 13, 10, 14, 10, 4, 32.40147 + 1, 0, 4, 4, 3, 4, 6, 6, 6, 7, 5, 3, 3, 8, 7, 9, 32.40148 + 13, 8, 0, 0, 0, 14, 12, 11, 11, 10, 10, 9, 11, 6, 9, 10, 32.40149 + 12, 9, 6, 3, 2, 0, 0, 0, 0, 0, 1, 3, 5, 0, 0, 9, 32.40150 + 10, 8, 4, 6, 7, 8, 8, 8, 9, 12, 16, 19, 20, 24, 21, 17, 32.40151 + 12, 9, 6, 4, 4, 4, 0, 0, 7, 13, 12, 12, 15, 21, 23, 25, 32.40152 + 26, 22, 22, 22, 22, 37, 36, 33, 29, 25, 22, 255, 255, 255, 255, 255, 32.40153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 14, 10, 6, 32.40154 + 1, 3, 3, 0, 0, 6, 10, 11, 12, 10, 7, 5, 5, 5, 7, 8, 32.40155 + 8, 11, 12, 10, 8, 6, 5, 8, 6, 7, 5, 0, 0, 4, 6, 4, 32.40156 + 7, 11, 12, 11, 7, 6, 7, 9, 6, 5, 7, 12, 7, 1, 0, 2, 32.40157 + 10, 14, 16, 19, 19, 20, 23, 25, 17, 17, 10, 4, 1, 5, 2, 0, 32.40158 + 0, 0, 1, 3, 3, 1, 0, 0, 8, 11, 11, 12, 11, 6, 1, 0, 32.40159 + 0, 0, 10, 15, 16, 14, 14, 16, 21, 23, 20, 14, 10, 10, 6, 1, 32.40160 + 0, 0, 0, 4, 7, 8, 13, 20, 25, 28, 27, 27, 25, 24, 27, 31, 32.40161 + 30, 32, 31, 26, 20, 16, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40162 + 255, 255, 255, 255, 255, 255, 255, 255, 175, 11, 9, 0, 0, 0, 0, 0, 32.40163 + 8, 15, 16, 10, 8, 5, 3, 2, 2, 4, 5, 8, 10, 11, 10, 8, 32.40164 + 6, 6, 7, 11, 13, 8, 2, 1, 5, 6, 4, 7, 8, 9, 9, 7, 32.40165 + 6, 5, 6, 4, 3, 5, 10, 8, 4, 3, 6, 12, 12, 15, 15, 15, 32.40166 + 16, 20, 22, 19, 18, 14, 8, 6, 6, 4, 0, 0, 0, 1, 2, 1, 32.40167 + 0, 0, 0, 2, 5, 6, 8, 5, 3, 0, 0, 0, 0, 3, 8, 8, 32.40168 + 6, 8, 9, 17, 21, 21, 18, 15, 15, 13, 9, 5, 1, 0, 2, 6, 32.40169 + 7, 10, 16, 22, 23, 25, 25, 22, 20, 23, 26, 29, 30, 29, 25, 20, 32.40170 + 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40171 + 255, 255, 255, 255, 255, 174, 2, 0, 0, 0, 0, 13, 17, 17, 11, 9, 32.40172 + 5, 3, 1, 1, 3, 3, 6, 8, 9, 9, 7, 7, 8, 9, 15, 15, 32.40173 + 12, 5, 2, 5, 5, 4, 5, 6, 6, 7, 7, 6, 3, 2, 0, 0, 32.40174 + 1, 7, 7, 5, 9, 14, 14, 15, 13, 12, 10, 12, 16, 19, 19, 18, 32.40175 + 16, 12, 9, 7, 5, 0, 0, 0, 2, 1, 2, 0, 0, 0, 0, 0, 32.40176 + 1, 3, 3, 1, 0, 0, 0, 0, 0, 2, 0, 1, 2, 6, 14, 20, 32.40177 + 22, 23, 25, 24, 23, 17, 14, 6, 0, 1, 4, 5, 7, 11, 17, 19, 32.40178 + 22, 19, 16, 14, 18, 21, 26, 28, 30, 27, 22, 18, 255, 255, 255, 255, 32.40179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40180 + 255, 255, 201, 59, 0, 6, 15, 19, 16, 10, 8, 5, 2, 1, 1, 2, 32.40181 + 2, 7, 9, 8, 8, 6, 7, 9, 11, 14, 16, 12, 6, 3, 7, 8, 32.40182 + 7, 4, 3, 2, 5, 6, 7, 2, 0, 0, 0, 0, 4, 7, 7, 12, 32.40183 + 19, 18, 17, 15, 13, 11, 13, 17, 21, 14, 16, 14, 12, 9, 8, 3, 32.40184 + 0, 3, 3, 2, 4, 5, 6, 4, 2, 0, 0, 1, 3, 4, 5, 5, 32.40185 + 3, 0, 2, 3, 1, 0, 0, 5, 10, 14, 21, 27, 27, 28, 31, 26, 32.40186 + 21, 20, 10, 1, 1, 3, 4, 7, 9, 14, 18, 19, 17, 12, 10, 15, 32.40187 + 19, 26, 27, 30, 28, 24, 19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 32.40189 + 10, 17, 19, 15, 12, 10, 7, 4, 3, 3, 4, 5, 7, 8, 8, 8, 32.40190 + 6, 6, 9, 11, 10, 12, 8, 4, 3, 8, 11, 8, 5, 2, 0, 2, 32.40191 + 4, 5, 2, 0, 0, 0, 0, 4, 6, 8, 15, 23, 22, 23, 19, 15, 32.40192 + 13, 15, 20, 23, 11, 13, 15, 12, 12, 12, 8, 1, 5, 3, 1, 2, 32.40193 + 7, 10, 9, 6, 0, 1, 2, 3, 4, 5, 6, 6, 5, 7, 7, 6, 32.40194 + 3, 4, 9, 16, 17, 24, 30, 31, 32, 31, 26, 19, 24, 14, 4, 2, 32.40195 + 3, 5, 8, 13, 13, 18, 21, 18, 12, 11, 13, 18, 28, 31, 33, 31, 32.40196 + 26, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 12, 16, 18, 13, 11, 32.40198 + 9, 7, 4, 4, 4, 6, 7, 9, 9, 10, 6, 5, 5, 8, 11, 7, 32.40199 + 8, 6, 3, 3, 8, 11, 11, 5, 4, 3, 3, 5, 5, 4, 3, 1, 32.40200 + 0, 1, 8, 7, 9, 16, 24, 24, 23, 21, 16, 15, 16, 21, 26, 10, 32.40201 + 13, 15, 14, 17, 20, 16, 12, 6, 3, 0, 1, 5, 7, 8, 6, 3, 32.40202 + 3, 3, 3, 4, 4, 5, 6, 8, 9, 9, 6, 3, 8, 14, 18, 25, 32.40203 + 30, 35, 33, 32, 31, 25, 19, 25, 17, 10, 7, 5, 4, 9, 15, 16, 32.40204 + 21, 23, 20, 12, 11, 14, 20, 32, 35, 35, 31, 24, 21, 255, 255, 255, 32.40205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40206 + 255, 255, 255, 255, 255, 255, 15, 16, 14, 9, 8, 6, 4, 3, 3, 4, 32.40207 + 6, 7, 10, 11, 9, 7, 5, 4, 7, 9, 6, 8, 7, 3, 4, 10, 32.40208 + 13, 12, 6, 6, 5, 4, 3, 3, 5, 7, 4, 5, 5, 10, 11, 10, 32.40209 + 14, 21, 20, 21, 20, 18, 16, 16, 21, 24, 5, 9, 12, 13, 18, 23, 32.40210 + 22, 19, 12, 7, 1, 2, 4, 7, 7, 4, 7, 6, 4, 4, 3, 3, 32.40211 + 6, 7, 9, 11, 10, 9, 6, 10, 16, 21, 29, 36, 38, 35, 33, 32, 32.40212 + 26, 19, 26, 21, 16, 11, 6, 2, 7, 16, 16, 22, 25, 21, 12, 11, 32.40213 + 15, 22, 33, 35, 34, 30, 23, 18, 255, 255, 255, 255, 255, 255, 255, 255, 32.40214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40215 + 255, 255, 13, 10, 7, 6, 5, 3, 2, 2, 4, 6, 8, 12, 11, 10, 32.40216 + 6, 5, 3, 7, 8, 8, 11, 7, 3, 5, 11, 13, 12, 8, 9, 7, 32.40217 + 5, 2, 2, 7, 12, 9, 8, 8, 11, 12, 11, 15, 20, 18, 17, 16, 32.40218 + 15, 15, 15, 17, 21, 2, 6, 8, 11, 16, 22, 23, 19, 18, 12, 5, 32.40219 + 4, 6, 8, 7, 3, 12, 11, 8, 6, 4, 6, 7, 7, 10, 13, 12, 32.40220 + 11, 9, 13, 18, 25, 34, 38, 39, 36, 34, 31, 27, 21, 27, 25, 21, 32.40221 + 16, 5, 1, 5, 16, 17, 21, 26, 23, 14, 10, 15, 21, 34, 35, 33, 32.40222 + 28, 21, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 25, 15, 7, 32.40224 + 9, 7, 5, 4, 2, 2, 4, 6, 3, 6, 7, 7, 5, 4, 3, 5, 32.40225 + 5, 5, 6, 4, 4, 7, 11, 16, 2, 4, 5, 4, 2, 4, 8, 13, 32.40226 + 4, 1, 3, 7, 8, 7, 10, 16, 17, 15, 10, 5, 4, 4, 7, 8, 32.40227 + 14, 12, 12, 14, 18, 23, 26, 26, 32, 26, 19, 14, 12, 10, 9, 10, 32.40228 + 11, 9, 7, 4, 0, 0, 0, 0, 0, 4, 12, 14, 16, 17, 24, 30, 32.40229 + 39, 38, 34, 30, 27, 25, 22, 22, 27, 25, 23, 20, 11, 0, 0, 0, 32.40230 + 17, 23, 25, 16, 9, 9, 18, 23, 37, 31, 27, 26, 24, 97, 255, 255, 32.40231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40232 + 255, 255, 255, 255, 255, 255, 255, 255, 22, 14, 8, 7, 5, 3, 2, 0, 32.40233 + 2, 2, 4, 4, 5, 6, 7, 7, 6, 6, 8, 6, 6, 7, 5, 5, 32.40234 + 6, 11, 16, 6, 7, 9, 7, 6, 5, 11, 17, 11, 8, 9, 11, 11, 32.40235 + 9, 11, 16, 15, 13, 10, 6, 5, 5, 8, 9, 6, 5, 6, 7, 9, 32.40236 + 15, 18, 19, 24, 19, 13, 11, 8, 8, 7, 6, 12, 11, 7, 6, 4, 32.40237 + 3, 3, 2, 2, 8, 13, 14, 14, 16, 22, 26, 37, 35, 33, 30, 27, 32.40238 + 24, 23, 23, 29, 24, 23, 20, 13, 3, 0, 4, 14, 21, 23, 15, 9, 32.40239 + 13, 21, 27, 35, 30, 26, 25, 23, 255, 255, 255, 255, 255, 255, 255, 255, 32.40240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40241 + 255, 255, 255, 176, 16, 11, 6, 3, 2, 1, 1, 0, 2, 1, 3, 6, 32.40242 + 8, 9, 7, 8, 10, 12, 9, 12, 10, 6, 5, 5, 11, 17, 10, 12, 32.40243 + 12, 9, 7, 7, 12, 16, 16, 11, 9, 11, 9, 5, 7, 9, 13, 10, 32.40244 + 7, 5, 5, 5, 7, 8, 0, 0, 0, 0, 2, 8, 10, 14, 15, 12, 32.40245 + 10, 9, 10, 10, 9, 6, 13, 11, 10, 9, 7, 7, 7, 7, 8, 11, 32.40246 + 15, 14, 12, 15, 18, 23, 31, 30, 27, 25, 23, 21, 19, 18, 26, 23, 32.40247 + 22, 19, 12, 5, 5, 10, 9, 16, 19, 14, 13, 18, 28, 31, 32, 28, 32.40248 + 25, 25, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 32.40250 + 10, 5, 5, 2, 2, 1, 2, 1, 2, 4, 7, 8, 8, 9, 10, 12, 32.40251 + 15, 14, 15, 15, 10, 5, 4, 10, 15, 16, 17, 17, 11, 7, 6, 11, 32.40252 + 14, 15, 10, 5, 7, 5, 3, 3, 6, 8, 7, 4, 3, 1, 1, 2, 32.40253 + 3, 0, 1, 0, 0, 1, 5, 10, 14, 9, 9, 9, 11, 14, 16, 17, 32.40254 + 14, 12, 11, 10, 9, 9, 7, 7, 8, 9, 11, 14, 14, 13, 15, 17, 32.40255 + 20, 24, 24, 22, 19, 15, 14, 13, 11, 20, 18, 16, 14, 8, 4, 6, 32.40256 + 13, 7, 12, 15, 14, 15, 23, 32, 33, 29, 26, 25, 24, 21, 255, 255, 32.40257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 17, 10, 7, 6, 4, 2, 32.40259 + 3, 2, 3, 4, 5, 5, 8, 8, 9, 11, 14, 16, 18, 19, 20, 15, 32.40260 + 7, 4, 9, 14, 21, 19, 18, 12, 6, 4, 7, 11, 13, 5, 1, 3, 32.40261 + 3, 2, 2, 3, 4, 4, 2, 1, 0, 0, 0, 0, 4, 4, 3, 2, 32.40262 + 0, 3, 9, 13, 5, 4, 7, 11, 17, 19, 19, 19, 13, 12, 10, 7, 32.40263 + 5, 5, 4, 4, 7, 8, 12, 12, 14, 14, 17, 17, 20, 19, 17, 16, 32.40264 + 12, 10, 9, 9, 14, 11, 10, 7, 3, 0, 5, 14, 6, 10, 13, 14, 32.40265 + 18, 27, 34, 34, 26, 25, 25, 25, 255, 255, 255, 255, 255, 255, 255, 255, 32.40266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40267 + 255, 255, 255, 255, 255, 16, 10, 5, 6, 6, 4, 3, 3, 2, 2, 5, 32.40268 + 7, 9, 9, 9, 10, 14, 17, 19, 25, 25, 20, 9, 4, 6, 12, 20, 32.40269 + 20, 18, 12, 6, 4, 6, 11, 6, 0, 0, 0, 0, 0, 0, 0, 2, 32.40270 + 1, 3, 2, 1, 0, 0, 0, 6, 6, 4, 1, 0, 0, 5, 10, 0, 32.40271 + 1, 3, 7, 11, 13, 14, 14, 11, 9, 8, 4, 4, 3, 3, 3, 4, 32.40272 + 7, 10, 14, 14, 14, 13, 11, 16, 14, 13, 13, 12, 12, 10, 10, 10, 32.40273 + 6, 4, 2, 0, 0, 5, 13, 9, 11, 12, 13, 20, 29, 33, 32, 23, 32.40274 + 24, 26, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40276 + 16, 11, 5, 5, 4, 3, 3, 1, 1, 1, 8, 7, 8, 8, 8, 10, 32.40277 + 13, 17, 20, 27, 29, 24, 12, 4, 4, 7, 18, 18, 17, 13, 8, 6, 32.40278 + 11, 15, 6, 0, 0, 0, 0, 0, 0, 0, 1, 3, 6, 6, 5, 5, 32.40279 + 4, 3, 7, 9, 6, 0, 0, 0, 0, 6, 1, 1, 0, 1, 3, 5, 32.40280 + 5, 3, 8, 6, 5, 4, 4, 3, 3, 4, 4, 6, 10, 13, 15, 11, 32.40281 + 6, 3, 5, 5, 7, 7, 9, 10, 11, 12, 11, 7, 4, 3, 0, 0, 32.40282 + 6, 16, 12, 14, 13, 13, 22, 30, 31, 28, 22, 24, 27, 255, 255, 255, 32.40283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 12, 3, 4, 3, 32.40285 + 3, 2, 2, 0, 0, 7, 8, 8, 7, 8, 8, 13, 15, 21, 29, 33, 32.40286 + 27, 13, 4, 4, 6, 15, 17, 16, 14, 10, 11, 15, 20, 17, 7, 0, 32.40287 + 1, 2, 1, 1, 0, 0, 5, 8, 11, 12, 11, 12, 9, 11, 11, 8, 32.40288 + 1, 0, 0, 0, 7, 5, 2, 0, 0, 0, 0, 0, 0, 5, 4, 4, 32.40289 + 4, 3, 4, 5, 6, 4, 6, 11, 16, 15, 11, 4, 0, 0, 0, 0, 32.40290 + 2, 5, 8, 11, 13, 13, 9, 5, 4, 0, 0, 8, 18, 15, 15, 14, 32.40291 + 15, 21, 30, 31, 27, 22, 24, 103, 255, 255, 255, 255, 255, 255, 255, 255, 32.40292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40293 + 255, 255, 255, 255, 255, 255, 255, 8, 10, 7, 4, 4, 4, 3, 2, 0, 32.40294 + 13, 10, 7, 4, 3, 4, 10, 14, 12, 20, 29, 28, 17, 9, 7, 8, 32.40295 + 15, 21, 27, 26, 20, 11, 8, 7, 3, 3, 1, 0, 0, 1, 6, 7, 32.40296 + 5, 8, 12, 16, 17, 17, 11, 6, 15, 23, 24, 16, 7, 8, 16, 22, 32.40297 + 19, 15, 5, 3, 7, 13, 8, 0, 7, 0, 0, 9, 8, 7, 9, 5, 32.40298 + 0, 11, 17, 20, 23, 14, 2, 2, 4, 3, 1, 0, 0, 0, 1, 5, 32.40299 + 11, 16, 14, 6, 5, 13, 19, 18, 18, 12, 14, 27, 39, 36, 31, 28, 32.40300 + 17, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40302 + 255, 255, 8, 9, 7, 4, 5, 5, 4, 2, 0, 11, 8, 5, 2, 0, 32.40303 + 3, 7, 11, 11, 21, 29, 29, 20, 11, 7, 6, 8, 17, 23, 26, 21, 32.40304 + 13, 10, 9, 13, 15, 14, 13, 16, 17, 11, 2, 0, 0, 5, 13, 16, 32.40305 + 16, 12, 9, 20, 31, 35, 27, 23, 27, 39, 46, 35, 25, 14, 14, 27, 32.40306 + 36, 30, 16, 16, 3, 8, 20, 20, 18, 16, 10, 6, 19, 26, 29, 34, 32.40307 + 23, 7, 6, 0, 0, 0, 0, 0, 0, 4, 7, 19, 19, 16, 12, 13, 32.40308 + 20, 26, 25, 17, 17, 21, 32, 39, 35, 28, 24, 29, 107, 255, 255, 255, 32.40309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 9, 10, 8, 32.40311 + 4, 4, 4, 5, 2, 1, 9, 6, 5, 0, 0, 0, 4, 8, 12, 20, 32.40312 + 28, 31, 24, 14, 7, 5, 3, 10, 20, 24, 20, 17, 12, 11, 17, 19, 32.40313 + 17, 18, 22, 23, 13, 0, 0, 0, 0, 1, 5, 12, 13, 13, 26, 38, 32.40314 + 44, 38, 33, 38, 53, 64, 48, 33, 19, 23, 41, 54, 45, 27, 23, 8, 32.40315 + 13, 29, 32, 28, 23, 14, 15, 28, 35, 38, 44, 30, 12, 5, 0, 0, 32.40316 + 0, 0, 0, 1, 7, 8, 23, 21, 17, 16, 21, 30, 32, 30, 15, 16, 32.40317 + 19, 27, 28, 20, 12, 8, 18, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40319 + 255, 255, 255, 255, 255, 255, 255, 255, 173, 11, 9, 4, 3, 3, 4, 3, 32.40320 + 2, 8, 7, 4, 0, 0, 0, 3, 7, 10, 18, 28, 30, 27, 17, 8, 32.40321 + 4, 0, 8, 17, 22, 22, 18, 13, 9, 21, 19, 15, 12, 14, 15, 14, 32.40322 + 8, 14, 7, 0, 0, 0, 1, 7, 12, 24, 36, 43, 35, 27, 31, 46, 32.40323 + 59, 51, 38, 21, 24, 40, 54, 45, 30, 27, 9, 11, 30, 36, 33, 28, 32.40324 + 20, 21, 33, 38, 41, 45, 31, 9, 3, 2, 4, 4, 6, 5, 6, 10, 32.40325 + 12, 19, 18, 16, 20, 29, 32, 32, 27, 16, 16, 17, 18, 16, 11, 7, 32.40326 + 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40328 + 255, 255, 255, 255, 11, 8, 6, 4, 4, 4, 3, 2, 7, 7, 6, 2, 32.40329 + 1, 2, 4, 7, 9, 17, 26, 31, 29, 22, 10, 3, 1, 6, 15, 20, 32.40330 + 20, 18, 12, 9, 22, 27, 24, 17, 12, 12, 13, 14, 27, 19, 9, 0, 32.40331 + 0, 0, 0, 0, 11, 24, 31, 26, 19, 26, 41, 52, 51, 41, 30, 29, 32.40332 + 39, 47, 43, 31, 34, 13, 14, 33, 40, 37, 35, 31, 32, 40, 40, 39, 32.40333 + 38, 22, 2, 0, 0, 3, 7, 10, 12, 14, 16, 18, 16, 15, 18, 26, 32.40334 + 32, 32, 24, 18, 19, 20, 20, 19, 23, 31, 38, 40, 255, 255, 255, 255, 32.40335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 12, 32.40337 + 8, 6, 3, 4, 4, 5, 5, 6, 6, 5, 3, 2, 3, 7, 10, 10, 32.40338 + 15, 22, 30, 30, 24, 16, 7, 4, 8, 14, 19, 21, 19, 13, 11, 17, 32.40339 + 28, 35, 29, 19, 13, 9, 6, 25, 21, 17, 14, 8, 2, 0, 0, 0, 32.40340 + 8, 18, 17, 16, 25, 38, 46, 47, 43, 35, 34, 39, 47, 42, 36, 41, 32.40341 + 18, 19, 38, 42, 37, 37, 37, 40, 47, 43, 33, 27, 12, 0, 0, 0, 32.40342 + 0, 8, 15, 20, 22, 24, 24, 19, 17, 22, 30, 34, 27, 18, 13, 15, 32.40343 + 17, 20, 25, 39, 59, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 9, 5, 2, 3, 5, 32.40346 + 5, 4, 4, 4, 4, 3, 2, 5, 8, 11, 10, 12, 20, 28, 32, 28, 32.40347 + 19, 11, 4, 6, 12, 16, 19, 18, 18, 14, 13, 24, 33, 33, 29, 21, 32.40348 + 14, 7, 15, 16, 15, 15, 13, 9, 3, 0, 0, 4, 9, 9, 11, 18, 32.40349 + 25, 28, 31, 28, 25, 28, 36, 44, 40, 31, 41, 20, 23, 42, 42, 32, 32.40350 + 31, 32, 37, 43, 37, 23, 16, 4, 0, 6, 0, 7, 17, 27, 31, 31, 32.40351 + 29, 28, 23, 21, 24, 30, 28, 18, 10, 8, 14, 19, 26, 35, 53, 132, 32.40352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40354 + 255, 255, 255, 255, 255, 13, 9, 5, 3, 4, 5, 4, 6, 2, 2, 3, 32.40355 + 4, 3, 4, 9, 12, 10, 12, 18, 25, 32, 30, 21, 13, 4, 6, 10, 32.40356 + 16, 19, 22, 20, 18, 15, 23, 30, 33, 36, 34, 28, 18, 13, 10, 7, 32.40357 + 8, 11, 14, 15, 15, 2, 6, 8, 4, 3, 5, 7, 4, 13, 11, 10, 32.40358 + 16, 28, 38, 34, 23, 34, 15, 20, 39, 35, 21, 17, 19, 24, 32, 26, 32.40359 + 14, 8, 2, 2, 15, 9, 19, 29, 37, 38, 35, 31, 28, 25, 23, 24, 32.40360 + 25, 20, 10, 2, 5, 22, 27, 33, 44, 58, 255, 255, 255, 255, 255, 255, 32.40361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40363 + 176, 16, 9, 0, 0, 1, 7, 7, 6, 6, 5, 4, 4, 5, 5, 6, 32.40364 + 13, 12, 14, 16, 23, 29, 22, 12, 15, 11, 9, 18, 27, 28, 25, 25, 32.40365 + 20, 21, 24, 30, 33, 31, 20, 11, 21, 16, 13, 14, 12, 5, 4, 6, 32.40366 + 10, 8, 7, 10, 11, 7, 0, 0, 3, 0, 0, 3, 14, 21, 22, 19, 32.40367 + 20, 20, 21, 20, 19, 16, 10, 6, 20, 20, 18, 11, 5, 2, 4, 8, 32.40368 + 23, 32, 41, 42, 38, 34, 26, 20, 26, 27, 29, 28, 19, 7, 4, 7, 32.40369 + 14, 26, 32, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 13, 2, 0, 32.40372 + 1, 2, 4, 5, 4, 4, 3, 4, 4, 5, 6, 9, 10, 10, 14, 21, 32.40373 + 27, 21, 11, 11, 6, 7, 15, 23, 27, 25, 24, 18, 19, 20, 26, 30, 32.40374 + 30, 22, 17, 20, 15, 10, 10, 8, 2, 0, 3, 8, 12, 18, 24, 25, 32.40375 + 19, 9, 1, 10, 2, 0, 0, 1, 5, 3, 1, 6, 5, 6, 6, 6, 32.40376 + 6, 1, 0, 8, 11, 15, 15, 12, 12, 15, 18, 27, 35, 42, 40, 36, 32.40377 + 33, 27, 19, 25, 25, 28, 23, 15, 3, 1, 5, 12, 28, 43, 124, 255, 32.40378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40380 + 255, 255, 255, 255, 255, 255, 255, 71, 15, 5, 0, 1, 1, 0, 2, 2, 32.40381 + 2, 2, 3, 4, 5, 5, 4, 7, 9, 11, 18, 23, 18, 11, 6, 2, 32.40382 + 2, 11, 22, 24, 23, 26, 17, 16, 16, 20, 24, 27, 25, 22, 20, 14, 32.40383 + 9, 9, 6, 2, 0, 3, 7, 11, 18, 26, 30, 28, 22, 17, 29, 21, 32.40384 + 8, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 8, 32.40385 + 15, 21, 21, 21, 24, 26, 31, 37, 40, 37, 34, 30, 24, 20, 25, 23, 32.40386 + 24, 20, 12, 3, 5, 12, 11, 36, 122, 255, 255, 255, 255, 255, 255, 255, 32.40387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40389 + 255, 255, 203, 16, 9, 4, 2, 0, 0, 3, 3, 3, 3, 4, 5, 6, 32.40390 + 7, 2, 5, 6, 9, 17, 22, 17, 10, 5, 0, 0, 9, 19, 23, 24, 32.40391 + 27, 18, 16, 13, 15, 18, 23, 24, 25, 22, 16, 11, 10, 6, 0, 0, 32.40392 + 3, 6, 6, 8, 13, 20, 25, 31, 34, 46, 36, 26, 19, 16, 13, 8, 32.40393 + 6, 7, 5, 4, 4, 5, 8, 7, 7, 5, 11, 19, 22, 23, 23, 28, 32.40394 + 30, 35, 39, 41, 35, 30, 28, 24, 21, 26, 24, 22, 16, 9, 5, 10, 32.40395 + 19, 18, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 10, 32.40398 + 7, 6, 4, 0, 4, 4, 4, 4, 4, 5, 6, 7, 0, 5, 7, 9, 32.40399 + 15, 20, 19, 13, 5, 0, 0, 7, 19, 23, 25, 28, 21, 18, 14, 13, 32.40400 + 14, 19, 22, 24, 24, 17, 12, 10, 6, 1, 1, 3, 5, 4, 2, 5, 32.40401 + 8, 16, 26, 32, 38, 34, 30, 26, 24, 23, 17, 13, 18, 16, 12, 12, 32.40402 + 14, 14, 16, 16, 13, 16, 21, 21, 22, 24, 29, 35, 36, 40, 39, 33, 32.40403 + 28, 26, 25, 22, 31, 25, 20, 12, 4, 2, 10, 21, 105, 255, 255, 255, 32.40404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 10, 7, 8, 5, 2, 6, 32.40407 + 5, 5, 4, 4, 5, 5, 6, 1, 4, 9, 9, 15, 18, 18, 13, 9, 32.40408 + 2, 0, 8, 17, 22, 24, 27, 21, 19, 15, 13, 13, 17, 19, 22, 22, 32.40409 + 17, 16, 13, 9, 2, 0, 1, 4, 6, 8, 8, 8, 9, 11, 13, 24, 32.40410 + 23, 22, 23, 23, 22, 19, 16, 21, 16, 14, 12, 15, 15, 15, 13, 16, 32.40411 + 19, 20, 19, 21, 24, 32, 38, 34, 39, 38, 32, 27, 28, 26, 24, 34, 32.40412 + 25, 16, 7, 0, 0, 12, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40415 + 255, 255, 255, 255, 255, 9, 7, 9, 7, 2, 10, 10, 8, 7, 6, 6, 32.40416 + 6, 7, 1, 4, 8, 8, 13, 17, 16, 12, 11, 2, 0, 5, 14, 19, 32.40417 + 21, 23, 18, 18, 16, 15, 14, 17, 19, 22, 27, 22, 20, 21, 14, 6, 32.40418 + 2, 2, 2, 6, 11, 13, 8, 5, 4, 4, 14, 14, 14, 13, 14, 16, 32.40419 + 14, 12, 16, 14, 11, 12, 13, 14, 14, 13, 19, 21, 22, 21, 20, 21, 32.40420 + 27, 33, 32, 36, 35, 31, 27, 28, 29, 27, 29, 23, 13, 6, 2, 8, 32.40421 + 24, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40424 + 255, 7, 7, 5, 3, 12, 11, 9, 8, 7, 6, 6, 6, 0, 5, 6, 32.40425 + 8, 11, 14, 14, 12, 11, 3, 0, 3, 13, 16, 18, 22, 16, 17, 17, 32.40426 + 16, 15, 18, 20, 22, 32, 30, 27, 27, 23, 13, 8, 7, 0, 4, 8, 32.40427 + 8, 7, 4, 5, 7, 9, 8, 4, 2, 2, 3, 6, 5, 13, 12, 10, 32.40428 + 13, 15, 15, 14, 13, 23, 25, 25, 23, 19, 18, 23, 26, 30, 34, 34, 32.40429 + 31, 27, 29, 30, 28, 24, 16, 11, 7, 9, 19, 113, 255, 255, 255, 255, 32.40430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 1, 0, 0, 32.40433 + 2, 3, 1, 1, 1, 1, 2, 3, 2, 4, 3, 5, 7, 12, 20, 25, 32.40434 + 14, 8, 2, 1, 5, 12, 18, 21, 16, 20, 23, 23, 22, 21, 20, 19, 32.40435 + 16, 20, 21, 19, 14, 10, 6, 7, 2, 3, 7, 8, 11, 12, 13, 13, 32.40436 + 4, 3, 4, 3, 4, 4, 6, 7, 7, 11, 13, 15, 14, 11, 13, 15, 32.40437 + 20, 20, 19, 20, 23, 27, 30, 33, 40, 38, 31, 27, 30, 38, 40, 36, 32.40438 + 33, 13, 0, 0, 16, 35, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40441 + 255, 255, 255, 255, 255, 255, 255, 255, 1, 0, 0, 3, 3, 1, 2, 2, 32.40442 + 2, 3, 2, 2, 4, 2, 5, 6, 11, 19, 23, 16, 10, 3, 0, 4, 32.40443 + 10, 18, 21, 14, 17, 20, 20, 20, 17, 17, 16, 16, 18, 19, 18, 14, 32.40444 + 11, 8, 6, 5, 5, 7, 6, 8, 8, 9, 9, 4, 3, 4, 3, 4, 32.40445 + 6, 6, 6, 4, 8, 12, 12, 12, 13, 15, 17, 20, 20, 20, 20, 21, 32.40446 + 23, 27, 29, 36, 35, 30, 27, 30, 36, 37, 32, 9, 4, 8, 30, 57, 32.40447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40450 + 255, 255, 255, 170, 0, 0, 4, 3, 3, 1, 1, 4, 3, 4, 3, 4, 32.40451 + 2, 4, 5, 9, 16, 20, 19, 12, 6, 0, 1, 5, 14, 19, 11, 15, 32.40452 + 17, 19, 17, 15, 16, 16, 19, 18, 16, 16, 13, 11, 8, 6, 10, 11, 32.40453 + 8, 8, 6, 8, 8, 8, 5, 4, 5, 3, 3, 3, 3, 3, 3, 6, 32.40454 + 9, 12, 13, 14, 17, 19, 21, 19, 19, 19, 18, 20, 23, 24, 32, 32, 32.40455 + 30, 28, 31, 35, 33, 27, 7, 7, 16, 39, 126, 255, 255, 255, 255, 255, 32.40456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 32.40459 + 0, 4, 4, 2, 3, 3, 3, 5, 4, 3, 4, 2, 3, 3, 6, 13, 32.40460 + 17, 19, 16, 9, 2, 0, 3, 11, 17, 12, 15, 18, 18, 16, 16, 17, 32.40461 + 18, 19, 17, 14, 14, 16, 15, 11, 6, 16, 14, 10, 9, 7, 9, 10, 32.40462 + 13, 10, 8, 5, 4, 2, 2, 0, 1, 4, 6, 9, 13, 16, 18, 22, 32.40463 + 24, 22, 21, 19, 17, 16, 18, 20, 21, 27, 30, 31, 32, 34, 36, 31, 32.40464 + 25, 0, 1, 31, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 3, 3, 3, 3, 32.40468 + 2, 2, 3, 5, 4, 5, 1, 2, 1, 4, 9, 13, 17, 16, 12, 6, 32.40469 + 0, 1, 6, 15, 15, 17, 18, 20, 19, 17, 21, 22, 18, 17, 13, 14, 32.40470 + 16, 16, 11, 9, 13, 13, 10, 10, 9, 11, 12, 15, 11, 11, 8, 5, 32.40471 + 2, 1, 0, 0, 5, 5, 8, 12, 14, 18, 21, 22, 20, 19, 18, 15, 32.40472 + 17, 18, 20, 21, 22, 28, 32, 36, 39, 40, 33, 22, 7, 25, 51, 255, 32.40473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40476 + 255, 255, 255, 255, 255, 255, 170, 3, 1, 1, 1, 2, 2, 4, 3, 4, 32.40477 + 5, 1, 1, 0, 1, 6, 9, 11, 15, 17, 11, 3, 0, 4, 10, 16, 32.40478 + 18, 19, 20, 17, 20, 20, 22, 17, 17, 16, 18, 20, 17, 14, 11, 8, 32.40479 + 9, 7, 8, 7, 10, 11, 12, 10, 10, 8, 7, 4, 4, 2, 2, 5, 32.40480 + 3, 4, 6, 12, 16, 18, 17, 19, 19, 18, 17, 18, 21, 23, 26, 22, 32.40481 + 29, 36, 41, 45, 42, 29, 18, 30, 47, 134, 255, 255, 255, 255, 255, 255, 32.40482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40485 + 255, 255, 1, 1, 1, 0, 0, 0, 1, 3, 5, 5, 1, 0, 0, 0, 32.40486 + 3, 6, 5, 15, 20, 16, 6, 0, 2, 7, 15, 16, 17, 16, 17, 18, 32.40487 + 18, 22, 14, 17, 21, 23, 20, 16, 14, 12, 8, 8, 7, 8, 8, 9, 32.40488 + 9, 9, 6, 5, 4, 6, 8, 8, 11, 11, 9, 6, 5, 8, 11, 16, 32.40489 + 17, 15, 18, 18, 17, 19, 21, 24, 29, 31, 25, 33, 41, 45, 45, 40, 32.40490 + 24, 9, 0, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 1, 1, 1, 32.40494 + 0, 0, 0, 1, 1, 5, 5, 1, 0, 0, 0, 2, 5, 1, 13, 21, 32.40495 + 19, 7, 0, 1, 3, 11, 14, 13, 14, 13, 14, 17, 19, 13, 19, 25, 32.40496 + 26, 22, 17, 15, 14, 10, 11, 10, 12, 10, 10, 8, 7, 1, 3, 3, 32.40497 + 7, 9, 12, 14, 15, 14, 12, 10, 11, 14, 19, 18, 18, 17, 17, 17, 32.40498 + 19, 23, 28, 32, 35, 27, 36, 43, 46, 46, 36, 19, 1, 19, 255, 255, 32.40499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40502 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 0, 2, 6, 5, 7, 6, 6, 32.40503 + 4, 6, 8, 9, 9, 7, 6, 3, 7, 12, 16, 13, 6, 0, 2, 4, 32.40504 + 13, 14, 13, 10, 7, 8, 12, 16, 14, 21, 31, 38, 38, 33, 25, 22, 32.40505 + 18, 17, 15, 11, 9, 6, 3, 3, 0, 0, 0, 5, 9, 13, 18, 20, 32.40506 + 22, 20, 20, 22, 23, 24, 23, 23, 4, 7, 12, 19, 28, 33, 34, 34, 32.40507 + 34, 38, 41, 41, 41, 36, 23, 11, 92, 255, 255, 255, 255, 255, 255, 255, 32.40508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40511 + 255, 255, 255, 255, 0, 3, 5, 5, 6, 6, 6, 2, 4, 6, 6, 7, 32.40512 + 5, 3, 2, 3, 9, 12, 12, 6, 2, 0, 3, 10, 11, 13, 10, 7, 32.40513 + 9, 12, 18, 14, 21, 31, 38, 40, 36, 32, 29, 26, 23, 20, 16, 15, 32.40514 + 14, 16, 15, 16, 16, 18, 18, 19, 20, 23, 24, 21, 20, 19, 20, 22, 32.40515 + 24, 23, 21, 8, 10, 16, 22, 29, 35, 34, 34, 27, 34, 35, 34, 31, 32.40516 + 26, 16, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 32.40520 + 2, 5, 6, 6, 6, 5, 0, 2, 3, 6, 5, 3, 1, 1, 2, 4, 32.40521 + 7, 9, 10, 6, 3, 0, 7, 10, 12, 10, 9, 11, 15, 20, 16, 21, 32.40522 + 28, 33, 33, 33, 31, 31, 28, 25, 20, 18, 16, 19, 22, 24, 30, 29, 32.40523 + 28, 26, 25, 25, 25, 25, 20, 18, 18, 18, 20, 22, 22, 20, 12, 15, 32.40524 + 17, 23, 29, 33, 32, 32, 29, 35, 36, 31, 26, 19, 12, 255, 255, 255, 32.40525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 4, 6, 6, 4, 32.40529 + 5, 0, 2, 3, 5, 5, 3, 2, 0, 3, 3, 4, 8, 10, 10, 4, 32.40530 + 1, 7, 9, 11, 9, 10, 12, 16, 23, 21, 23, 25, 24, 23, 21, 21, 32.40531 + 23, 22, 21, 17, 16, 16, 18, 18, 20, 26, 26, 26, 23, 24, 24, 24, 32.40532 + 25, 17, 16, 16, 17, 19, 21, 21, 19, 16, 16, 18, 23, 25, 28, 28, 32.40533 + 27, 34, 39, 38, 29, 19, 14, 11, 255, 255, 255, 255, 255, 255, 255, 255, 32.40534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40537 + 255, 255, 255, 255, 255, 255, 255, 172, 7, 6, 5, 3, 0, 1, 3, 5, 32.40538 + 7, 6, 4, 2, 2, 3, 3, 9, 13, 14, 8, 3, 8, 9, 12, 11, 32.40539 + 9, 13, 18, 23, 23, 22, 22, 19, 15, 13, 13, 15, 18, 18, 19, 18, 32.40540 + 16, 16, 14, 14, 24, 22, 22, 21, 19, 19, 20, 20, 15, 13, 13, 15, 32.40541 + 18, 20, 19, 17, 19, 20, 20, 22, 26, 29, 28, 28, 35, 37, 33, 21, 32.40542 + 13, 9, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40546 + 255, 255, 255, 172, 6, 5, 4, 0, 2, 4, 7, 7, 7, 6, 4, 3, 32.40547 + 2, 4, 7, 11, 13, 10, 6, 4, 8, 9, 8, 9, 11, 16, 22, 19, 32.40548 + 19, 16, 14, 11, 13, 16, 20, 18, 18, 20, 20, 21, 19, 17, 16, 27, 32.40549 + 25, 24, 19, 17, 15, 14, 14, 13, 11, 12, 13, 16, 18, 17, 16, 23, 32.40550 + 22, 22, 24, 29, 32, 32, 31, 39, 36, 29, 16, 10, 9, 255, 255, 255, 32.40551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 32.40555 + 5, 4, 0, 2, 4, 7, 8, 8, 6, 4, 3, 3, 3, 6, 7, 10, 32.40556 + 9, 10, 2, 5, 6, 6, 4, 6, 11, 17, 16, 15, 14, 12, 11, 13, 32.40557 + 17, 20, 14, 15, 15, 18, 17, 17, 18, 18, 26, 25, 22, 18, 15, 10, 32.40558 + 9, 10, 12, 11, 10, 12, 15, 16, 17, 16, 22, 22, 21, 25, 28, 32, 32.40559 + 34, 34, 40, 34, 24, 12, 8, 10, 255, 255, 255, 255, 255, 255, 255, 255, 32.40560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 5, 2, 0, 1, 3, 32.40564 + 6, 7, 7, 5, 3, 2, 2, 3, 3, 5, 7, 9, 9, 1, 2, 4, 32.40565 + 3, 1, 4, 8, 14, 14, 15, 12, 10, 8, 10, 13, 17, 8, 8, 9, 32.40566 + 8, 11, 13, 16, 16, 20, 20, 15, 13, 9, 8, 5, 5, 10, 9, 9, 32.40567 + 12, 15, 17, 16, 15, 19, 19, 18, 21, 26, 32, 33, 34, 34, 26, 14, 32.40568 + 3, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40572 + 255, 255, 255, 255, 255, 255, 172, 4, 0, 0, 0, 1, 1, 3, 4, 6, 32.40573 + 9, 7, 3, 1, 1, 3, 7, 9, 10, 7, 5, 3, 4, 4, 7, 8, 32.40574 + 14, 13, 14, 12, 12, 12, 12, 12, 10, 11, 10, 10, 9, 9, 11, 12, 32.40575 + 19, 20, 23, 26, 25, 23, 19, 17, 17, 16, 16, 16, 18, 17, 15, 13, 32.40576 + 21, 17, 14, 16, 23, 30, 34, 35, 45, 28, 9, 4, 7, 255, 255, 255, 32.40577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40581 + 255, 255, 4, 0, 0, 1, 2, 4, 5, 7, 6, 9, 7, 5, 1, 1, 32.40582 + 5, 7, 9, 8, 6, 5, 4, 4, 5, 6, 7, 9, 10, 9, 10, 11, 32.40583 + 11, 11, 11, 8, 8, 8, 8, 8, 8, 10, 9, 14, 17, 19, 20, 20, 32.40584 + 17, 14, 12, 14, 13, 12, 12, 14, 15, 14, 12, 20, 17, 14, 18, 24, 32.40585 + 29, 32, 34, 36, 19, 4, 3, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2, 2, 32.40590 + 3, 3, 5, 8, 7, 9, 9, 8, 4, 2, 2, 4, 8, 9, 5, 4, 32.40591 + 3, 3, 5, 5, 4, 5, 6, 5, 5, 5, 5, 7, 8, 10, 8, 7, 32.40592 + 7, 6, 5, 6, 6, 7, 9, 11, 13, 16, 14, 12, 9, 5, 9, 7, 32.40593 + 6, 6, 8, 10, 11, 11, 21, 18, 16, 19, 25, 29, 30, 30, 20, 7, 32.40594 + 0, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 4, 5, 6, 9, 10, 11, 32.40599 + 10, 8, 7, 5, 1, 1, 5, 7, 8, 2, 4, 4, 4, 4, 5, 5, 32.40600 + 5, 2, 4, 2, 2, 4, 6, 7, 9, 11, 11, 9, 8, 7, 6, 8, 32.40601 + 7, 10, 12, 14, 16, 14, 10, 7, 5, 10, 7, 5, 5, 8, 12, 13, 32.40602 + 14, 24, 22, 22, 24, 31, 32, 29, 27, 10, 2, 0, 255, 255, 255, 255, 32.40603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40607 + 255, 255, 255, 255, 255, 255, 6, 9, 11, 11, 12, 12, 10, 8, 5, 3, 32.40608 + 3, 5, 8, 10, 1, 2, 4, 4, 5, 6, 4, 5, 4, 2, 3, 2, 32.40609 + 4, 6, 9, 11, 14, 13, 13, 10, 9, 9, 8, 9, 12, 14, 16, 17, 32.40610 + 17, 13, 10, 9, 11, 9, 7, 7, 11, 14, 16, 17, 26, 25, 26, 29, 32.40611 + 32, 32, 27, 21, 7, 4, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40616 + 255, 255, 173, 10, 12, 13, 15, 11, 7, 6, 4, 4, 6, 7, 11, 2, 32.40617 + 3, 3, 4, 5, 6, 7, 7, 5, 5, 4, 2, 4, 6, 9, 11, 15, 32.40618 + 14, 14, 10, 8, 8, 7, 8, 10, 13, 17, 18, 17, 16, 13, 10, 11, 32.40619 + 9, 7, 8, 11, 14, 15, 15, 23, 23, 25, 29, 31, 28, 21, 14, 10, 32.40620 + 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 12, 32.40625 + 14, 14, 10, 8, 5, 3, 3, 5, 8, 10, 4, 5, 4, 4, 5, 7, 32.40626 + 9, 10, 8, 7, 4, 4, 3, 6, 10, 12, 12, 12, 10, 7, 5, 3, 32.40627 + 2, 3, 6, 9, 12, 15, 15, 12, 11, 9, 9, 8, 8, 9, 12, 13, 32.40628 + 13, 12, 15, 17, 19, 23, 26, 21, 11, 3, 92, 255, 255, 255, 255, 255, 32.40629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 14, 10, 8, 6, 32.40634 + 3, 3, 6, 8, 10, 7, 6, 4, 3, 5, 7, 11, 13, 9, 7, 4, 32.40635 + 2, 3, 5, 8, 10, 10, 9, 7, 4, 1, 0, 0, 0, 2, 5, 7, 32.40636 + 9, 11, 10, 7, 7, 7, 7, 7, 9, 11, 12, 11, 9, 10, 10, 14, 32.40637 + 20, 21, 15, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40642 + 255, 255, 255, 255, 255, 255, 255, 172, 6, 6, 6, 6, 6, 6, 6, 6, 32.40643 + 5, 5, 6, 6, 6, 5, 4, 4, 8, 8, 8, 8, 8, 8, 8, 8, 32.40644 + 10, 9, 9, 9, 8, 7, 7, 7, 12, 12, 12, 12, 13, 14, 16, 17, 32.40645 + 8, 11, 15, 19, 18, 15, 11, 8, 15, 17, 19, 20, 10, 0, 255, 255, 32.40646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40651 + 255, 255, 255, 255, 200, 62, 6, 6, 6, 6, 6, 4, 5, 6, 6, 6, 32.40652 + 5, 5, 4, 7, 7, 7, 7, 7, 7, 7, 7, 9, 9, 9, 8, 8, 32.40653 + 8, 7, 7, 9, 8, 8, 8, 9, 10, 11, 12, 7, 11, 15, 17, 16, 32.40654 + 15, 13, 12, 18, 13, 11, 10, 89, 255, 255, 255, 255, 255, 255, 255, 255, 32.40655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40660 + 255, 255, 6, 6, 6, 6, 4, 5, 6, 6, 6, 6, 5, 5, 7, 7, 32.40661 + 7, 7, 7, 7, 7, 7, 8, 7, 7, 7, 7, 6, 6, 6, 7, 6, 32.40662 + 6, 6, 6, 6, 7, 8, 8, 11, 17, 16, 14, 15, 18, 20, 25, 15, 32.40663 + 6, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40669 + 6, 4, 5, 6, 6, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 32.40670 + 6, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 7, 32.40671 + 8, 11, 14, 17, 17, 16, 17, 24, 31, 36, 100, 255, 255, 255, 255, 255, 32.40672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 7, 32.40678 + 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 32.40679 + 6, 7, 7, 7, 7, 6, 6, 6, 6, 7, 8, 8, 14, 16, 17, 16, 32.40680 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40687 + 172, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 5, 32.40688 + 5, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40691 + 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.40692 +/* Define image 'enemy2' of size 116x155x1x3 and type 'const unsigned char' */ 32.40693 +const unsigned char data_enemy2[] = { 32.40694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40696 + 253, 248, 248, 248, 248, 250, 250, 250, 251, 252, 252, 252, 252, 254, 254, 254, 32.40697 + 251, 250, 249, 249, 250, 249, 251, 251, 244, 248, 255, 243, 253, 242, 249, 250, 32.40698 + 252, 237, 241, 249, 247, 255, 254, 243, 248, 255, 255, 255, 255, 255, 255, 255, 32.40699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.40703 + 253, 253, 253, 251, 250, 250, 250, 250, 250, 250, 251, 251, 251, 251, 253, 253, 32.40704 + 253, 254, 254, 254, 252, 250, 252, 252, 251, 252, 253, 252, 255, 252, 255, 255, 32.40705 + 254, 255, 255, 233, 255, 255, 255, 255, 253, 255, 255, 250, 253, 252, 253, 251, 32.40706 + 251, 251, 249, 250, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.40710 + 251, 250, 251, 251, 251, 251, 251, 253, 253, 254, 254, 254, 254, 254, 255, 255, 32.40711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 32.40712 + 255, 255, 251, 251, 212, 246, 242, 208, 217, 248, 255, 255, 255, 247, 247, 255, 32.40713 + 255, 255, 255, 255, 254, 254, 253, 253, 254, 254, 255, 254, 254, 253, 253, 253, 32.40714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40717 + 255, 253, 251, 251, 250, 250, 250, 251, 251, 253, 253, 254, 255, 255, 255, 255, 32.40718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40719 + 255, 255, 255, 255, 251, 252, 239, 225, 143, 193, 205, 182, 137, 202, 250, 255, 32.40720 + 249, 232, 232, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40721 + 255, 255, 254, 254, 254, 253, 253, 251, 251, 255, 255, 255, 255, 255, 255, 255, 32.40722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40724 + 255, 255, 255, 255, 255, 254, 251, 249, 250, 243, 252, 239, 254, 242, 248, 244, 32.40725 + 247, 255, 255, 255, 255, 255, 255, 255, 255, 247, 252, 255, 232, 239, 255, 255, 32.40726 + 255, 255, 255, 255, 251, 250, 254, 219, 232, 189, 193, 171, 181, 215, 189, 206, 32.40727 + 164, 194, 217, 198, 169, 174, 160, 192, 213, 230, 213, 235, 255, 255, 255, 255, 32.40728 + 255, 255, 250, 255, 251, 249, 243, 255, 252, 246, 247, 253, 254, 248, 250, 255, 32.40729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40731 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 250, 249, 248, 251, 243, 248, 238, 32.40732 + 254, 249, 253, 241, 242, 237, 229, 221, 222, 232, 242, 240, 222, 204, 190, 196, 32.40733 + 201, 197, 191, 179, 148, 168, 209, 216, 189, 177, 180, 176, 156, 157, 177, 174, 32.40734 + 155, 203, 203, 226, 202, 192, 165, 155, 142, 159, 139, 178, 158, 175, 164, 166, 32.40735 + 162, 196, 213, 255, 239, 239, 208, 164, 165, 237, 255, 252, 255, 255, 255, 255, 32.40736 + 254, 247, 244, 245, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 249, 248, 247, 32.40739 + 249, 243, 251, 243, 255, 255, 255, 230, 250, 231, 207, 198, 197, 213, 214, 204, 32.40740 + 211, 203, 191, 203, 230, 213, 178, 173, 127, 167, 227, 217, 198, 204, 194, 206, 32.40741 + 172, 194, 198, 195, 138, 179, 197, 202, 210, 186, 122, 124, 119, 149, 128, 180, 32.40742 + 168, 190, 190, 173, 123, 152, 131, 177, 157, 202, 182, 130, 103, 149, 255, 253, 32.40743 + 251, 255, 255, 253, 252, 252, 254, 252, 252, 253, 254, 255, 255, 255, 255, 255, 32.40744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 254, 32.40746 + 253, 251, 248, 248, 245, 246, 254, 249, 248, 255, 255, 227, 249, 226, 204, 202, 32.40747 + 191, 212, 211, 197, 187, 184, 200, 217, 223, 201, 170, 167, 125, 161, 208, 174, 32.40748 + 173, 205, 182, 186, 191, 191, 175, 174, 129, 154, 194, 174, 184, 184, 123, 131, 32.40749 + 113, 144, 122, 176, 156, 187, 199, 192, 143, 141, 101, 106, 113, 187, 185, 191, 32.40750 + 127, 70, 230, 255, 255, 255, 255, 251, 252, 255, 255, 252, 245, 248, 253, 255, 32.40751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 32.40753 + 255, 255, 255, 254, 254, 252, 249, 249, 246, 246, 253, 246, 229, 250, 255, 239, 32.40754 + 235, 215, 197, 205, 185, 218, 225, 217, 214, 190, 224, 235, 213, 204, 189, 179, 32.40755 + 155, 163, 191, 161, 160, 180, 153, 167, 185, 161, 148, 144, 131, 128, 184, 155, 32.40756 + 167, 190, 139, 146, 115, 140, 115, 146, 174, 200, 201, 198, 170, 148, 150, 135, 32.40757 + 135, 169, 176, 195, 151, 87, 191, 231, 255, 255, 255, 255, 255, 255, 255, 246, 32.40758 + 248, 250, 252, 252, 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40760 + 254, 254, 254, 255, 255, 255, 255, 255, 254, 252, 249, 251, 252, 246, 250, 242, 32.40761 + 208, 231, 252, 244, 233, 215, 197, 210, 179, 222, 240, 237, 231, 191, 219, 219, 32.40762 + 196, 210, 201, 184, 163, 147, 171, 168, 147, 132, 128, 168, 194, 164, 157, 135, 32.40763 + 130, 103, 153, 130, 175, 186, 139, 151, 126, 150, 133, 131, 184, 197, 186, 179, 32.40764 + 150, 124, 160, 154, 149, 162, 192, 169, 159, 152, 147, 163, 208, 215, 233, 249, 32.40765 + 255, 255, 255, 255, 255, 255, 255, 253, 250, 251, 254, 255, 255, 255, 255, 255, 32.40766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40767 + 255, 255, 255, 254, 254, 254, 254, 255, 255, 255, 254, 253, 253, 251, 248, 249, 32.40768 + 255, 248, 252, 254, 202, 214, 225, 215, 213, 196, 185, 206, 170, 218, 237, 234, 32.40769 + 228, 204, 225, 210, 201, 217, 195, 186, 145, 134, 156, 165, 135, 123, 154, 193, 32.40770 + 186, 167, 152, 118, 112, 103, 134, 125, 185, 170, 131, 153, 137, 154, 158, 142, 32.40771 + 187, 182, 181, 190, 159, 159, 177, 191, 157, 196, 215, 201, 189, 172, 126, 131, 32.40772 + 140, 150, 176, 202, 208, 208, 228, 251, 246, 247, 252, 255, 255, 255, 255, 255, 32.40773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40774 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 253, 253, 253, 251, 251, 252, 251, 32.40775 + 251, 250, 249, 249, 255, 252, 255, 255, 211, 207, 200, 177, 164, 152, 154, 190, 32.40776 + 158, 212, 228, 222, 201, 209, 230, 199, 194, 195, 150, 156, 118, 126, 142, 143, 32.40777 + 120, 142, 203, 217, 213, 199, 162, 118, 109, 128, 138, 133, 187, 155, 127, 155, 32.40778 + 136, 140, 160, 147, 183, 155, 158, 182, 148, 178, 160, 185, 161, 218, 181, 227, 32.40779 + 207, 126, 106, 115, 119, 125, 143, 156, 145, 140, 171, 214, 216, 227, 244, 255, 32.40780 + 255, 255, 248, 243, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 253, 250, 249, 247, 32.40782 + 244, 249, 251, 251, 250, 250, 252, 252, 255, 252, 255, 255, 238, 217, 202, 178, 32.40783 + 149, 126, 155, 183, 138, 206, 208, 184, 206, 220, 211, 171, 172, 143, 132, 113, 32.40784 + 115, 119, 105, 140, 161, 197, 207, 210, 203, 194, 146, 112, 115, 140, 127, 184, 32.40785 + 222, 149, 167, 152, 115, 138, 131, 114, 168, 179, 161, 176, 166, 180, 193, 202, 32.40786 + 165, 187, 178, 209, 177, 138, 110, 93, 106, 94, 115, 148, 142, 155, 152, 176, 32.40787 + 164, 164, 197, 240, 255, 249, 255, 253, 251, 250, 255, 255, 255, 255, 255, 255, 32.40788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 253, 32.40789 + 253, 250, 249, 247, 249, 249, 251, 248, 246, 246, 248, 250, 255, 252, 254, 244, 32.40790 + 224, 217, 197, 152, 118, 123, 113, 137, 137, 166, 150, 204, 209, 182, 150, 119, 32.40791 + 102, 95, 103, 79, 110, 106, 138, 202, 222, 208, 192, 209, 191, 202, 180, 146, 32.40792 + 163, 192, 190, 231, 178, 169, 189, 140, 85, 78, 77, 105, 161, 177, 175, 189, 32.40793 + 183, 177, 178, 172, 166, 195, 184, 191, 150, 122, 103, 88, 97, 83, 89, 113, 32.40794 + 122, 165, 178, 200, 189, 168, 162, 179, 208, 251, 255, 238, 249, 247, 252, 255, 32.40795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40796 + 254, 254, 254, 253, 253, 252, 251, 250, 252, 250, 249, 249, 251, 253, 255, 255, 32.40797 + 245, 244, 241, 223, 209, 218, 195, 135, 96, 110, 91, 112, 128, 139, 128, 207, 32.40798 + 191, 158, 124, 116, 88, 99, 110, 70, 115, 99, 151, 189, 200, 167, 143, 173, 32.40799 + 169, 202, 209, 177, 197, 210, 208, 224, 169, 177, 165, 100, 70, 63, 60, 115, 32.40800 + 179, 192, 197, 198, 196, 173, 178, 167, 181, 201, 184, 174, 141, 123, 104, 83, 32.40801 + 89, 88, 98, 111, 115, 164, 183, 205, 183, 159, 152, 150, 160, 255, 255, 244, 32.40802 + 248, 249, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40803 + 255, 255, 255, 255, 253, 254, 254, 254, 253, 252, 251, 251, 255, 254, 252, 254, 32.40804 + 255, 255, 255, 255, 229, 231, 232, 214, 198, 205, 189, 139, 98, 87, 93, 121, 32.40805 + 108, 139, 155, 172, 140, 153, 118, 111, 85, 101, 105, 71, 128, 111, 154, 130, 32.40806 + 137, 132, 117, 135, 139, 180, 207, 186, 204, 188, 182, 182, 184, 156, 111, 59, 32.40807 + 59, 76, 98, 158, 209, 213, 212, 193, 190, 167, 194, 194, 205, 198, 177, 164, 32.40808 + 154, 144, 121, 97, 94, 100, 121, 127, 108, 141, 169, 209, 193, 148, 156, 143, 32.40809 + 147, 239, 255, 255, 250, 252, 253, 252, 253, 255, 255, 255, 255, 255, 255, 255, 32.40810 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 254, 254, 254, 254, 253, 252, 254, 32.40811 + 255, 255, 250, 250, 250, 244, 237, 238, 220, 218, 223, 208, 177, 169, 162, 136, 32.40812 + 108, 68, 80, 120, 101, 132, 161, 143, 111, 177, 125, 88, 71, 85, 93, 80, 32.40813 + 110, 100, 134, 95, 105, 116, 100, 105, 116, 150, 181, 182, 197, 171, 173, 175, 32.40814 + 161, 108, 73, 52, 49, 84, 148, 210, 211, 216, 213, 190, 185, 168, 206, 216, 32.40815 + 219, 191, 171, 159, 161, 152, 141, 134, 122, 114, 125, 130, 103, 126, 157, 211, 32.40816 + 229, 152, 161, 135, 134, 182, 229, 255, 255, 255, 252, 248, 251, 255, 255, 255, 32.40817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 254, 254, 254, 32.40818 + 254, 254, 253, 255, 255, 245, 234, 234, 232, 224, 216, 215, 216, 203, 205, 190, 32.40819 + 149, 126, 124, 111, 107, 69, 57, 103, 117, 116, 132, 143, 96, 181, 127, 81, 32.40820 + 80, 84, 98, 95, 104, 86, 100, 82, 88, 93, 81, 86, 109, 134, 151, 166, 32.40821 + 178, 157, 167, 170, 109, 58, 51, 71, 80, 124, 194, 226, 190, 202, 203, 197, 32.40822 + 192, 183, 212, 221, 220, 191, 185, 163, 157, 145, 150, 167, 158, 137, 143, 156, 32.40823 + 133, 142, 150, 188, 219, 170, 194, 167, 137, 131, 195, 255, 255, 255, 254, 248, 32.40824 + 250, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 32.40825 + 253, 254, 255, 255, 255, 255, 255, 255, 250, 232, 216, 215, 215, 209, 204, 205, 32.40826 + 208, 189, 181, 165, 128, 109, 104, 89, 86, 76, 61, 98, 125, 110, 121, 134, 32.40827 + 82, 143, 100, 73, 88, 81, 107, 87, 119, 102, 88, 89, 84, 88, 83, 90, 32.40828 + 105, 134, 133, 150, 144, 135, 134, 121, 72, 49, 58, 97, 132, 173, 205, 194, 32.40829 + 170, 182, 175, 189, 188, 195, 213, 219, 220, 202, 211, 176, 170, 155, 153, 162, 32.40830 + 160, 150, 160, 172, 149, 157, 148, 167, 199, 194, 212, 199, 153, 129, 167, 215, 32.40831 + 243, 254, 255, 253, 247, 251, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.40832 + 255, 255, 254, 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 238, 215, 210, 32.40833 + 207, 200, 195, 197, 200, 177, 164, 147, 121, 112, 106, 81, 60, 72, 82, 106, 32.40834 + 113, 111, 131, 112, 107, 122, 77, 66, 88, 78, 123, 86, 100, 105, 81, 88, 32.40835 + 76, 88, 85, 79, 95, 134, 125, 139, 121, 117, 100, 67, 56, 74, 91, 120, 32.40836 + 155, 180, 182, 153, 161, 165, 144, 165, 168, 193, 209, 217, 222, 213, 231, 193, 32.40837 + 192, 179, 154, 138, 134, 138, 150, 149, 122, 144, 151, 174, 217, 212, 180, 183, 32.40838 + 159, 152, 144, 140, 225, 247, 255, 255, 247, 249, 252, 255, 255, 255, 255, 255, 32.40839 + 255, 255, 255, 255, 255, 255, 253, 251, 246, 252, 255, 255, 254, 254, 255, 255, 32.40840 + 255, 252, 226, 201, 193, 201, 208, 209, 202, 169, 168, 169, 130, 101, 95, 84, 32.40841 + 65, 72, 88, 103, 114, 117, 113, 105, 101, 99, 86, 84, 98, 73, 96, 83, 32.40842 + 99, 89, 74, 67, 74, 89, 91, 85, 95, 114, 105, 119, 112, 95, 53, 56, 32.40843 + 75, 89, 112, 136, 151, 151, 143, 135, 148, 147, 152, 153, 162, 189, 208, 204, 32.40844 + 222, 213, 213, 221, 213, 182, 150, 132, 144, 134, 134, 144, 144, 136, 138, 153, 32.40845 + 193, 199, 182, 157, 142, 174, 142, 116, 161, 252, 255, 255, 245, 246, 251, 252, 32.40846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 250, 253, 255, 255, 32.40847 + 255, 255, 255, 255, 255, 240, 212, 206, 213, 216, 215, 213, 195, 194, 182, 161, 32.40848 + 144, 127, 108, 97, 64, 73, 87, 98, 103, 103, 101, 98, 105, 100, 93, 94, 32.40849 + 101, 90, 101, 96, 92, 87, 80, 78, 85, 94, 92, 83, 112, 115, 106, 103, 32.40850 + 90, 79, 64, 70, 98, 108, 122, 131, 131, 125, 120, 116, 126, 128, 139, 151, 32.40851 + 167, 194, 206, 195, 221, 225, 229, 227, 208, 178, 154, 142, 144, 144, 144, 148, 32.40852 + 152, 153, 155, 157, 148, 154, 149, 124, 116, 143, 130, 122, 151, 177, 255, 251, 32.40853 + 252, 255, 246, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 251, 32.40854 + 254, 253, 253, 255, 255, 255, 255, 253, 248, 213, 190, 206, 228, 226, 212, 202, 32.40855 + 159, 188, 162, 122, 125, 126, 102, 91, 79, 85, 94, 101, 100, 97, 95, 96, 32.40856 + 109, 103, 105, 111, 109, 117, 108, 116, 95, 92, 88, 87, 92, 98, 95, 89, 32.40857 + 95, 83, 89, 82, 78, 76, 95, 102, 104, 108, 111, 105, 96, 89, 90, 92, 32.40858 + 135, 140, 158, 179, 199, 222, 228, 213, 221, 219, 210, 196, 188, 182, 176, 170, 32.40859 + 161, 161, 152, 142, 143, 149, 151, 145, 129, 130, 142, 117, 113, 122, 123, 122, 32.40860 + 139, 132, 239, 252, 255, 255, 248, 252, 254, 255, 255, 255, 255, 255, 255, 255, 32.40861 + 255, 251, 251, 251, 254, 253, 254, 252, 255, 255, 245, 240, 215, 193, 183, 206, 32.40862 + 232, 231, 210, 193, 161, 184, 164, 124, 123, 131, 118, 101, 94, 95, 101, 106, 32.40863 + 108, 105, 102, 104, 110, 106, 119, 131, 124, 144, 119, 136, 113, 105, 97, 92, 32.40864 + 94, 97, 98, 98, 94, 77, 94, 86, 84, 75, 98, 94, 114, 113, 109, 102, 32.40865 + 98, 99, 109, 116, 148, 152, 169, 183, 193, 206, 209, 196, 211, 203, 187, 179, 32.40866 + 191, 210, 205, 185, 170, 157, 139, 125, 123, 129, 133, 131, 111, 103, 125, 104, 32.40867 + 112, 102, 99, 95, 131, 149, 166, 254, 255, 248, 255, 246, 254, 254, 255, 255, 32.40868 + 255, 255, 255, 255, 255, 251, 251, 251, 252, 251, 255, 252, 255, 255, 226, 221, 32.40869 + 199, 196, 195, 204, 223, 231, 222, 204, 188, 186, 186, 167, 141, 137, 131, 102, 32.40870 + 93, 88, 94, 107, 117, 118, 119, 121, 114, 117, 137, 154, 148, 166, 139, 155, 32.40871 + 135, 125, 112, 103, 100, 98, 98, 99, 93, 76, 96, 94, 98, 88, 105, 91, 32.40872 + 93, 89, 84, 84, 92, 104, 118, 126, 174, 177, 188, 192, 187, 192, 199, 194, 32.40873 + 204, 207, 208, 210, 221, 228, 207, 176, 151, 130, 116, 116, 119, 116, 120, 129, 32.40874 + 108, 89, 104, 92, 111, 103, 92, 82, 115, 150, 118, 219, 255, 245, 255, 245, 32.40875 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 251, 250, 250, 249, 250, 255, 250, 32.40876 + 255, 255, 208, 207, 198, 202, 200, 199, 209, 222, 225, 217, 199, 185, 199, 195, 32.40877 + 152, 124, 114, 86, 86, 86, 97, 119, 134, 138, 143, 150, 131, 139, 158, 176, 32.40878 + 178, 184, 171, 179, 157, 144, 129, 119, 114, 107, 99, 95, 83, 73, 84, 90, 32.40879 + 98, 97, 107, 103, 103, 100, 98, 102, 113, 125, 137, 142, 148, 151, 165, 170, 32.40880 + 166, 176, 193, 198, 214, 226, 233, 226, 217, 208, 188, 166, 134, 117, 110, 120, 32.40881 + 120, 109, 108, 116, 124, 101, 103, 95, 109, 111, 98, 91, 98, 108, 115, 158, 32.40882 + 249, 254, 253, 247, 254, 254, 255, 255, 255, 255, 255, 255, 255, 251, 250, 250, 32.40883 + 247, 250, 255, 246, 255, 255, 199, 204, 198, 194, 194, 201, 211, 214, 213, 209, 32.40884 + 204, 199, 204, 194, 158, 117, 99, 92, 88, 94, 114, 139, 149, 150, 160, 173, 32.40885 + 156, 167, 180, 194, 206, 197, 208, 205, 183, 162, 139, 129, 123, 114, 105, 101, 32.40886 + 97, 98, 90, 93, 91, 93, 89, 100, 98, 100, 102, 104, 107, 110, 115, 118, 32.40887 + 134, 136, 153, 166, 171, 186, 207, 214, 211, 217, 217, 207, 195, 184, 172, 161, 32.40888 + 134, 125, 118, 116, 110, 102, 99, 100, 108, 99, 98, 97, 96, 111, 97, 98, 32.40889 + 93, 80, 113, 121, 199, 255, 255, 248, 254, 254, 254, 255, 255, 255, 255, 255, 32.40890 + 255, 253, 251, 250, 245, 249, 255, 243, 255, 255, 198, 208, 201, 189, 192, 214, 32.40891 + 227, 217, 201, 196, 195, 207, 191, 169, 149, 108, 85, 105, 94, 106, 131, 152, 32.40892 + 154, 151, 161, 180, 174, 186, 192, 204, 223, 201, 229, 220, 201, 173, 142, 126, 32.40893 + 121, 117, 113, 114, 91, 107, 94, 105, 102, 109, 99, 124, 107, 112, 118, 116, 32.40894 + 110, 104, 103, 106, 116, 115, 129, 145, 150, 162, 177, 178, 186, 184, 187, 194, 32.40895 + 195, 187, 166, 148, 129, 127, 115, 99, 91, 96, 99, 96, 84, 93, 103, 113, 32.40896 + 104, 127, 114, 124, 99, 89, 100, 119, 149, 252, 255, 248, 255, 254, 254, 255, 32.40897 + 255, 255, 255, 255, 255, 254, 251, 246, 246, 247, 254, 255, 249, 255, 183, 194, 32.40898 + 197, 205, 210, 212, 212, 208, 200, 191, 192, 195, 181, 160, 145, 130, 118, 119, 32.40899 + 104, 122, 154, 178, 178, 165, 166, 177, 179, 183, 203, 227, 235, 225, 218, 217, 32.40900 + 209, 194, 172, 154, 142, 134, 127, 123, 111, 110, 115, 113, 108, 117, 124, 116, 32.40901 + 113, 108, 104, 103, 104, 103, 99, 96, 107, 108, 111, 119, 132, 146, 156, 161, 32.40902 + 161, 152, 145, 148, 157, 156, 136, 116, 85, 97, 96, 89, 79, 84, 83, 83, 32.40903 + 99, 98, 103, 114, 120, 123, 128, 135, 140, 113, 94, 127, 130, 238, 255, 253, 32.40904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 247, 248, 246, 252, 255, 32.40905 + 250, 255, 181, 191, 201, 203, 206, 211, 212, 208, 200, 195, 182, 185, 157, 160, 32.40906 + 146, 152, 130, 133, 130, 143, 170, 193, 199, 192, 196, 206, 206, 208, 219, 238, 32.40907 + 242, 234, 228, 230, 228, 220, 208, 197, 185, 171, 153, 142, 136, 124, 121, 125, 32.40908 + 123, 127, 125, 113, 110, 104, 99, 98, 100, 100, 98, 94, 102, 105, 112, 119, 32.40909 + 127, 128, 127, 124, 149, 142, 133, 129, 129, 123, 109, 95, 89, 96, 96, 84, 32.40910 + 80, 82, 83, 81, 105, 105, 109, 118, 130, 138, 137, 134, 149, 120, 98, 108, 32.40911 + 143, 205, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 247, 32.40912 + 248, 245, 253, 255, 254, 255, 183, 192, 198, 196, 198, 204, 202, 193, 189, 192, 32.40913 + 149, 167, 150, 165, 139, 156, 143, 165, 164, 170, 190, 211, 219, 220, 226, 237, 32.40914 + 238, 235, 239, 249, 249, 244, 241, 246, 245, 245, 244, 242, 236, 224, 207, 196, 32.40915 + 184, 157, 148, 155, 157, 152, 141, 124, 120, 114, 109, 107, 110, 112, 112, 108, 32.40916 + 102, 97, 92, 89, 90, 89, 89, 88, 71, 74, 80, 88, 94, 95, 95, 93, 32.40917 + 102, 101, 98, 82, 81, 81, 83, 74, 84, 82, 81, 89, 110, 132, 136, 126, 32.40918 + 140, 114, 101, 91, 151, 160, 212, 252, 255, 255, 255, 255, 255, 255, 255, 255, 32.40919 + 255, 255, 252, 247, 247, 244, 251, 255, 255, 255, 188, 196, 194, 192, 193, 195, 32.40920 + 184, 170, 170, 180, 142, 155, 150, 162, 156, 166, 164, 184, 188, 191, 205, 222, 32.40921 + 233, 237, 242, 248, 251, 246, 247, 251, 252, 246, 246, 250, 250, 251, 254, 255, 32.40922 + 255, 252, 245, 241, 229, 197, 183, 192, 191, 179, 163, 148, 138, 131, 126, 123, 32.40923 + 126, 129, 131, 129, 127, 119, 110, 102, 99, 99, 100, 100, 90, 94, 104, 113, 32.40924 + 120, 117, 115, 114, 115, 109, 104, 82, 85, 80, 80, 67, 60, 60, 56, 56, 32.40925 + 79, 109, 120, 112, 120, 102, 108, 103, 147, 144, 201, 247, 254, 253, 255, 255, 32.40926 + 255, 255, 255, 255, 255, 255, 252, 247, 247, 245, 252, 255, 255, 245, 184, 192, 32.40927 + 194, 195, 195, 189, 172, 156, 156, 169, 164, 147, 142, 147, 190, 189, 187, 178, 32.40928 + 199, 201, 213, 230, 240, 245, 247, 247, 247, 245, 245, 249, 249, 246, 246, 247, 32.40929 + 250, 251, 253, 254, 255, 251, 247, 245, 246, 218, 210, 214, 206, 191, 178, 167, 32.40930 + 159, 150, 145, 140, 144, 145, 149, 147, 140, 138, 138, 138, 136, 130, 123, 117, 32.40931 + 105, 101, 103, 111, 118, 116, 114, 113, 128, 120, 117, 88, 95, 82, 84, 64, 32.40932 + 58, 62, 60, 57, 71, 96, 108, 105, 112, 102, 117, 126, 132, 155, 217, 255, 32.40933 + 249, 248, 253, 254, 255, 255, 255, 255, 255, 255, 252, 247, 248, 247, 252, 255, 32.40934 + 255, 221, 169, 177, 192, 197, 195, 184, 169, 160, 161, 167, 161, 144, 153, 149, 32.40935 + 199, 182, 190, 183, 201, 208, 221, 234, 246, 249, 249, 247, 241, 241, 243, 246, 32.40936 + 247, 246, 247, 247, 248, 251, 255, 255, 255, 255, 251, 248, 248, 231, 228, 227, 32.40937 + 213, 200, 196, 190, 184, 178, 170, 166, 167, 169, 169, 169, 147, 145, 142, 139, 32.40938 + 138, 134, 131, 127, 124, 111, 107, 115, 131, 136, 142, 148, 144, 135, 139, 107, 32.40939 + 117, 96, 99, 75, 51, 58, 66, 68, 76, 92, 100, 102, 108, 107, 114, 129, 32.40940 + 113, 156, 218, 255, 250, 249, 252, 253, 255, 255, 255, 255, 255, 255, 252, 247, 32.40941 + 247, 248, 255, 255, 250, 204, 159, 169, 179, 184, 181, 171, 166, 171, 171, 164, 32.40942 + 147, 154, 176, 174, 192, 172, 189, 206, 210, 217, 228, 239, 247, 249, 247, 244, 32.40943 + 239, 240, 242, 244, 245, 247, 249, 249, 248, 251, 255, 255, 255, 255, 255, 255, 32.40944 + 249, 239, 238, 233, 221, 217, 217, 211, 209, 205, 197, 192, 193, 193, 192, 190, 32.40945 + 181, 173, 161, 152, 148, 146, 147, 147, 146, 133, 126, 132, 140, 139, 142, 147, 32.40946 + 158, 151, 162, 129, 142, 116, 120, 94, 60, 59, 62, 67, 72, 79, 88, 94, 32.40947 + 103, 113, 109, 117, 116, 143, 190, 252, 255, 253, 255, 254, 255, 255, 255, 255, 32.40948 + 255, 255, 252, 249, 245, 248, 255, 255, 250, 198, 160, 171, 165, 168, 162, 155, 32.40949 + 163, 180, 177, 160, 158, 169, 182, 195, 202, 194, 199, 218, 219, 226, 235, 238, 32.40950 + 243, 244, 242, 238, 239, 240, 241, 241, 243, 247, 250, 251, 254, 254, 254, 251, 32.40951 + 251, 251, 254, 255, 247, 242, 241, 235, 224, 226, 230, 220, 222, 216, 210, 206, 32.40952 + 204, 204, 201, 199, 194, 191, 186, 180, 172, 162, 152, 145, 145, 139, 141, 153, 32.40953 + 158, 152, 150, 156, 166, 163, 181, 147, 162, 133, 139, 111, 96, 80, 69, 66, 32.40954 + 65, 66, 76, 84, 99, 122, 112, 112, 136, 132, 162, 241, 255, 255, 255, 255, 32.40955 + 255, 255, 255, 255, 255, 255, 253, 251, 240, 247, 255, 255, 229, 189, 164, 158, 32.40956 + 136, 140, 156, 166, 164, 167, 167, 158, 160, 190, 208, 208, 209, 210, 216, 230, 32.40957 + 231, 235, 242, 244, 243, 241, 241, 243, 233, 234, 237, 240, 244, 248, 251, 251, 32.40958 + 251, 251, 252, 253, 252, 252, 252, 253, 248, 247, 246, 244, 242, 241, 238, 237, 32.40959 + 234, 233, 230, 224, 217, 211, 206, 202, 206, 206, 204, 195, 185, 175, 169, 167, 32.40960 + 170, 170, 147, 155, 162, 160, 177, 166, 175, 176, 192, 166, 165, 152, 156, 124, 32.40961 + 108, 71, 57, 73, 65, 56, 76, 74, 83, 120, 109, 97, 133, 147, 154, 197, 32.40962 + 255, 254, 255, 249, 255, 255, 255, 255, 255, 255, 254, 252, 247, 249, 255, 255, 32.40963 + 208, 166, 141, 137, 144, 149, 161, 171, 173, 169, 163, 160, 164, 197, 215, 213, 32.40964 + 215, 220, 226, 237, 235, 239, 245, 245, 242, 240, 241, 241, 238, 238, 239, 242, 32.40965 + 245, 248, 250, 250, 251, 251, 252, 253, 252, 251, 252, 253, 248, 247, 246, 246, 32.40966 + 245, 243, 241, 240, 240, 239, 236, 232, 229, 224, 220, 218, 203, 204, 203, 197, 32.40967 + 188, 180, 175, 173, 161, 167, 155, 166, 171, 164, 172, 160, 175, 179, 197, 181, 32.40968 + 182, 175, 178, 149, 112, 72, 57, 63, 69, 70, 66, 63, 81, 109, 101, 111, 32.40969 + 139, 134, 144, 174, 251, 255, 255, 254, 255, 255, 255, 255, 255, 255, 254, 252, 32.40970 + 251, 249, 252, 251, 183, 151, 135, 140, 150, 155, 161, 171, 175, 162, 150, 154, 32.40971 + 168, 202, 219, 213, 219, 231, 238, 242, 241, 243, 246, 244, 241, 240, 240, 240, 32.40972 + 242, 241, 242, 245, 247, 249, 249, 251, 252, 252, 253, 252, 252, 251, 252, 251, 32.40973 + 249, 248, 246, 247, 248, 247, 247, 246, 244, 245, 244, 242, 240, 237, 235, 233, 32.40974 + 220, 219, 218, 212, 206, 198, 193, 191, 173, 181, 176, 184, 185, 178, 182, 174, 32.40975 + 181, 187, 205, 198, 202, 201, 202, 175, 140, 96, 73, 57, 78, 96, 72, 77, 32.40976 + 94, 108, 98, 124, 141, 127, 148, 160, 218, 255, 255, 255, 255, 255, 255, 255, 32.40977 + 255, 255, 254, 252, 251, 246, 244, 243, 172, 154, 157, 171, 152, 156, 159, 168, 32.40978 + 173, 156, 143, 154, 171, 202, 211, 209, 223, 241, 243, 238, 241, 242, 242, 241, 32.40979 + 239, 237, 238, 239, 241, 240, 241, 244, 246, 249, 249, 251, 252, 252, 252, 252, 32.40980 + 251, 252, 252, 251, 249, 247, 247, 248, 249, 249, 249, 249, 243, 245, 245, 244, 32.40981 + 243, 241, 241, 240, 240, 238, 236, 230, 224, 216, 210, 207, 202, 204, 200, 198, 32.40982 + 195, 192, 197, 199, 194, 198, 210, 208, 208, 210, 209, 187, 171, 127, 99, 57, 32.40983 + 77, 110, 88, 112, 117, 120, 106, 129, 137, 133, 169, 164, 180, 247, 255, 253, 32.40984 + 255, 255, 255, 255, 255, 255, 254, 252, 252, 252, 249, 235, 178, 164, 169, 182, 32.40985 + 149, 153, 159, 166, 166, 157, 155, 166, 177, 200, 205, 208, 229, 247, 242, 231, 32.40986 + 236, 235, 236, 236, 236, 237, 238, 238, 238, 239, 239, 242, 245, 248, 251, 251, 32.40987 + 250, 250, 251, 252, 252, 252, 250, 250, 248, 247, 245, 247, 248, 249, 248, 249, 32.40988 + 241, 243, 242, 241, 241, 240, 240, 239, 244, 243, 241, 238, 233, 227, 221, 219, 32.40989 + 219, 216, 215, 205, 200, 201, 202, 209, 205, 205, 209, 210, 204, 211, 208, 192, 32.40990 + 178, 144, 119, 67, 74, 106, 94, 131, 120, 124, 117, 125, 130, 145, 179, 162, 32.40991 + 155, 248, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 253, 255, 255, 220, 32.40992 + 189, 164, 159, 157, 146, 146, 159, 160, 147, 153, 170, 176, 182, 200, 207, 216, 32.40993 + 237, 247, 240, 233, 232, 232, 234, 236, 238, 239, 240, 240, 237, 238, 238, 241, 32.40994 + 243, 247, 250, 252, 251, 251, 251, 251, 251, 250, 249, 248, 248, 246, 245, 245, 32.40995 + 246, 246, 245, 244, 243, 242, 242, 240, 239, 239, 238, 238, 240, 240, 240, 238, 32.40996 + 239, 236, 231, 229, 224, 221, 229, 219, 215, 216, 207, 213, 211, 209, 207, 213, 32.40997 + 203, 214, 208, 196, 175, 154, 136, 95, 84, 98, 96, 122, 108, 115, 123, 116, 32.40998 + 121, 146, 162, 148, 142, 252, 253, 255, 255, 255, 255, 255, 255, 255, 254, 252, 32.40999 + 248, 255, 248, 187, 192, 162, 152, 137, 154, 148, 166, 157, 125, 143, 178, 173, 32.41000 + 181, 200, 215, 228, 240, 239, 234, 239, 235, 233, 236, 239, 243, 244, 243, 241, 32.41001 + 240, 239, 240, 241, 242, 246, 250, 251, 250, 250, 251, 251, 251, 250, 249, 248, 32.41002 + 247, 245, 243, 243, 243, 243, 241, 241, 240, 241, 241, 240, 240, 238, 237, 238, 32.41003 + 239, 238, 237, 239, 241, 240, 236, 234, 226, 222, 235, 226, 223, 227, 214, 221, 32.41004 + 218, 217, 211, 223, 207, 221, 212, 203, 186, 164, 146, 123, 100, 97, 102, 108, 32.41005 + 105, 101, 123, 107, 113, 136, 129, 137, 136, 253, 247, 255, 255, 255, 255, 255, 32.41006 + 255, 255, 254, 253, 242, 255, 236, 158, 188, 162, 155, 139, 172, 162, 180, 162, 32.41007 + 115, 138, 182, 170, 181, 200, 221, 235, 240, 228, 227, 242, 238, 237, 241, 244, 32.41008 + 246, 246, 245, 242, 243, 242, 243, 244, 244, 247, 249, 251, 251, 251, 250, 251, 32.41009 + 250, 250, 249, 248, 251, 248, 247, 245, 246, 244, 242, 240, 240, 240, 240, 239, 32.41010 + 240, 238, 238, 239, 238, 236, 236, 236, 238, 236, 231, 229, 227, 219, 231, 221, 32.41011 + 220, 230, 216, 227, 225, 223, 218, 232, 214, 226, 213, 203, 201, 172, 144, 134, 32.41012 + 106, 96, 106, 95, 113, 95, 120, 100, 106, 125, 105, 136, 137, 255, 249, 255, 32.41013 + 255, 255, 255, 255, 254, 254, 254, 255, 255, 255, 203, 177, 185, 159, 159, 149, 32.41014 + 161, 138, 173, 126, 152, 158, 166, 178, 183, 201, 225, 236, 236, 232, 234, 235, 32.41015 + 239, 236, 232, 232, 236, 238, 244, 243, 242, 242, 243, 244, 247, 248, 251, 252, 32.41016 + 250, 250, 251, 251, 252, 252, 252, 252, 249, 249, 251, 251, 251, 249, 248, 247, 32.41017 + 250, 249, 247, 245, 244, 241, 240, 240, 242, 241, 241, 240, 240, 237, 235, 235, 32.41018 + 231, 229, 227, 226, 226, 228, 227, 227, 228, 225, 224, 223, 223, 219, 212, 208, 32.41019 + 208, 173, 157, 138, 97, 91, 105, 98, 88, 92, 99, 101, 93, 95, 107, 122, 32.41020 + 142, 252, 255, 253, 255, 255, 255, 255, 254, 254, 254, 255, 255, 255, 193, 166, 32.41021 + 176, 151, 150, 154, 141, 123, 164, 128, 154, 157, 161, 170, 185, 202, 224, 234, 32.41022 + 235, 229, 231, 234, 239, 236, 234, 235, 236, 240, 242, 243, 240, 240, 241, 243, 32.41023 + 244, 247, 249, 251, 250, 251, 251, 251, 252, 252, 252, 253, 252, 252, 253, 253, 32.41024 + 253, 252, 250, 249, 251, 250, 248, 246, 244, 242, 241, 241, 239, 240, 242, 242, 32.41025 + 242, 240, 239, 238, 231, 229, 227, 226, 227, 227, 227, 226, 227, 227, 227, 226, 32.41026 + 224, 219, 213, 211, 204, 174, 162, 145, 103, 91, 100, 90, 74, 80, 81, 92, 32.41027 + 98, 102, 118, 123, 150, 255, 255, 253, 255, 255, 255, 255, 255, 254, 254, 255, 32.41028 + 255, 255, 180, 156, 167, 138, 131, 148, 121, 110, 151, 129, 154, 158, 162, 169, 32.41029 + 192, 208, 228, 236, 237, 231, 233, 236, 238, 237, 236, 237, 239, 241, 242, 242, 32.41030 + 239, 239, 238, 240, 241, 243, 245, 246, 246, 246, 246, 247, 247, 248, 248, 248, 32.41031 + 250, 250, 251, 251, 250, 249, 248, 248, 246, 246, 244, 243, 243, 241, 241, 242, 32.41032 + 241, 241, 241, 240, 241, 239, 237, 236, 232, 230, 228, 227, 227, 227, 228, 226, 32.41033 + 227, 230, 234, 233, 229, 223, 217, 217, 203, 182, 173, 152, 114, 96, 98, 87, 32.41034 + 79, 96, 90, 97, 102, 94, 118, 112, 136, 246, 255, 253, 255, 255, 255, 255, 32.41035 + 255, 254, 254, 255, 255, 255, 173, 156, 166, 134, 118, 140, 117, 108, 139, 125, 32.41036 + 148, 156, 168, 178, 202, 215, 234, 240, 240, 236, 237, 240, 237, 237, 237, 239, 32.41037 + 240, 242, 241, 240, 240, 240, 239, 239, 241, 242, 244, 242, 244, 243, 245, 244, 32.41038 + 246, 245, 246, 245, 250, 249, 250, 249, 249, 248, 248, 247, 245, 244, 243, 242, 32.41039 + 243, 242, 242, 242, 244, 246, 244, 242, 239, 235, 234, 232, 233, 231, 229, 228, 32.41040 + 228, 227, 228, 226, 227, 232, 238, 238, 232, 225, 220, 221, 209, 193, 181, 157, 32.41041 + 122, 105, 104, 96, 94, 116, 110, 107, 104, 82, 114, 105, 115, 223, 255, 255, 32.41042 + 255, 255, 255, 255, 255, 254, 254, 255, 255, 255, 165, 156, 160, 138, 124, 145, 32.41043 + 129, 116, 126, 116, 134, 147, 170, 187, 210, 222, 237, 242, 241, 238, 238, 241, 32.41044 + 235, 235, 235, 238, 240, 241, 239, 237, 242, 242, 241, 241, 242, 244, 243, 244, 32.41045 + 244, 242, 244, 243, 245, 243, 246, 244, 249, 247, 248, 246, 247, 245, 247, 245, 32.41046 + 243, 243, 242, 242, 242, 241, 242, 243, 244, 244, 243, 242, 238, 235, 233, 231, 32.41047 + 234, 232, 230, 229, 228, 228, 228, 227, 226, 232, 238, 238, 233, 226, 222, 222, 32.41048 + 215, 201, 182, 154, 126, 112, 108, 102, 100, 107, 106, 100, 110, 89, 119, 113, 32.41049 + 130, 219, 255, 255, 255, 255, 255, 255, 255, 253, 254, 255, 255, 247, 151, 147, 32.41050 + 142, 145, 143, 153, 134, 121, 116, 111, 124, 140, 170, 191, 216, 225, 235, 240, 32.41051 + 239, 237, 237, 240, 237, 237, 237, 239, 241, 242, 240, 238, 244, 243, 243, 243, 32.41052 + 245, 246, 245, 245, 244, 244, 245, 245, 245, 246, 246, 246, 247, 247, 246, 245, 32.41053 + 244, 244, 245, 245, 243, 242, 244, 243, 242, 242, 241, 242, 240, 240, 241, 240, 32.41054 + 240, 238, 237, 236, 235, 233, 231, 230, 229, 228, 229, 227, 228, 231, 235, 236, 32.41055 + 233, 228, 224, 223, 217, 205, 179, 149, 130, 118, 107, 100, 110, 89, 100, 88, 32.41056 + 113, 98, 122, 130, 188, 238, 255, 254, 255, 255, 255, 255, 255, 253, 254, 255, 32.41057 + 255, 233, 138, 138, 122, 142, 145, 137, 122, 114, 108, 115, 128, 146, 177, 199, 32.41058 + 221, 228, 236, 240, 240, 237, 238, 238, 241, 240, 239, 241, 242, 243, 243, 242, 32.41059 + 243, 243, 244, 243, 244, 246, 247, 247, 247, 246, 247, 247, 248, 248, 248, 248, 32.41060 + 247, 246, 244, 243, 243, 243, 244, 244, 244, 243, 243, 242, 241, 241, 241, 241, 32.41061 + 239, 239, 240, 239, 239, 238, 236, 237, 236, 234, 232, 230, 230, 229, 229, 227, 32.41062 + 231, 231, 233, 234, 233, 231, 226, 222, 216, 207, 181, 152, 140, 124, 102, 89, 32.41063 + 117, 88, 126, 99, 107, 91, 120, 168, 241, 254, 255, 252, 255, 255, 255, 255, 32.41064 + 255, 255, 253, 255, 250, 220, 129, 132, 107, 135, 134, 111, 103, 104, 103, 122, 32.41065 + 137, 157, 187, 206, 225, 230, 238, 241, 240, 238, 238, 240, 245, 243, 242, 242, 32.41066 + 243, 245, 245, 244, 243, 243, 242, 243, 244, 246, 248, 248, 249, 249, 249, 249, 32.41067 + 250, 250, 250, 251, 247, 246, 244, 243, 242, 243, 244, 245, 245, 245, 245, 243, 32.41068 + 241, 240, 242, 241, 242, 241, 242, 240, 239, 236, 234, 235, 237, 235, 233, 231, 32.41069 + 230, 229, 229, 227, 233, 231, 231, 232, 234, 233, 228, 223, 217, 211, 186, 159, 32.41070 + 150, 130, 101, 82, 111, 92, 158, 117, 103, 82, 126, 212, 255, 255, 255, 251, 32.41071 + 255, 255, 255, 255, 255, 255, 253, 253, 255, 205, 137, 116, 124, 113, 151, 118, 32.41072 + 116, 108, 117, 130, 135, 153, 187, 210, 225, 229, 236, 240, 240, 239, 238, 239, 32.41073 + 239, 240, 240, 242, 243, 245, 245, 246, 245, 243, 244, 245, 246, 248, 250, 250, 32.41074 + 251, 250, 251, 251, 251, 250, 249, 248, 249, 247, 244, 241, 240, 240, 240, 241, 32.41075 + 245, 244, 244, 243, 243, 244, 248, 249, 246, 244, 242, 239, 238, 237, 236, 238, 32.41076 + 242, 239, 235, 232, 230, 229, 229, 227, 231, 231, 231, 230, 228, 226, 224, 222, 32.41077 + 215, 219, 181, 170, 134, 125, 107, 88, 101, 89, 155, 116, 112, 86, 117, 231, 32.41078 + 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 254, 253, 253, 225, 158, 122, 32.41079 + 109, 117, 136, 131, 119, 108, 111, 121, 131, 157, 190, 205, 228, 231, 237, 238, 32.41080 + 238, 237, 237, 238, 240, 239, 238, 238, 239, 240, 242, 243, 240, 242, 244, 247, 32.41081 + 248, 249, 250, 250, 252, 252, 252, 252, 252, 251, 250, 249, 246, 245, 242, 240, 32.41082 + 238, 239, 240, 240, 245, 244, 244, 244, 244, 246, 248, 249, 248, 247, 246, 243, 32.41083 + 242, 241, 240, 241, 240, 238, 235, 232, 231, 229, 227, 225, 230, 230, 231, 231, 32.41084 + 230, 228, 227, 226, 212, 218, 182, 168, 132, 123, 113, 103, 105, 100, 146, 113, 32.41085 + 115, 82, 120, 219, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 253, 32.41086 + 249, 248, 181, 121, 102, 136, 125, 143, 127, 114, 113, 118, 134, 170, 204, 213, 32.41087 + 233, 234, 238, 238, 238, 236, 236, 237, 240, 239, 237, 237, 237, 239, 241, 240, 32.41088 + 240, 242, 244, 247, 249, 250, 250, 250, 251, 251, 251, 252, 251, 250, 249, 249, 32.41089 + 250, 248, 247, 245, 245, 245, 246, 247, 246, 246, 247, 247, 247, 248, 249, 251, 32.41090 + 248, 248, 248, 247, 247, 245, 243, 243, 239, 238, 237, 235, 234, 230, 228, 224, 32.41091 + 227, 228, 229, 229, 229, 228, 227, 226, 213, 219, 189, 171, 133, 117, 118, 116, 32.41092 + 105, 112, 131, 112, 128, 92, 147, 226, 255, 253, 253, 255, 255, 255, 255, 255, 32.41093 + 255, 255, 255, 253, 255, 255, 200, 109, 108, 154, 126, 147, 127, 118, 118, 121, 32.41094 + 139, 183, 219, 227, 236, 237, 239, 238, 238, 236, 236, 236, 239, 240, 241, 242, 32.41095 + 243, 244, 242, 242, 246, 246, 246, 247, 248, 249, 250, 251, 249, 248, 250, 248, 32.41096 + 250, 247, 248, 245, 252, 249, 250, 248, 250, 248, 252, 250, 249, 249, 248, 248, 32.41097 + 249, 249, 252, 253, 245, 246, 246, 248, 247, 244, 243, 241, 242, 242, 242, 241, 32.41098 + 239, 235, 231, 227, 225, 225, 226, 226, 225, 224, 223, 222, 217, 223, 203, 181, 32.41099 + 141, 113, 119, 123, 107, 124, 118, 112, 142, 112, 192, 251, 255, 254, 254, 255, 32.41100 + 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 229, 111, 108, 142, 126, 145, 32.41101 + 115, 111, 115, 121, 142, 186, 225, 234, 241, 240, 239, 238, 238, 237, 236, 235, 32.41102 + 238, 241, 246, 250, 252, 251, 247, 245, 250, 249, 246, 244, 242, 244, 247, 250, 32.41103 + 247, 248, 249, 248, 249, 247, 247, 245, 247, 246, 246, 245, 247, 246, 248, 247, 32.41104 + 249, 249, 249, 250, 252, 251, 252, 252, 244, 246, 247, 248, 247, 245, 245, 243, 32.41105 + 246, 246, 246, 246, 244, 240, 235, 230, 227, 227, 227, 226, 224, 222, 221, 219, 32.41106 + 218, 222, 212, 193, 156, 117, 123, 126, 117, 129, 110, 110, 139, 122, 227, 255, 32.41107 + 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 140, 32.41108 + 103, 113, 122, 135, 110, 108, 118, 134, 157, 195, 230, 240, 245, 242, 239, 237, 32.41109 + 239, 237, 237, 236, 238, 242, 247, 251, 253, 252, 247, 244, 248, 246, 243, 241, 32.41110 + 239, 241, 243, 247, 247, 247, 247, 248, 247, 246, 245, 245, 245, 245, 245, 245, 32.41111 + 245, 246, 246, 246, 245, 246, 247, 247, 249, 249, 249, 249, 246, 246, 247, 247, 32.41112 + 248, 247, 246, 246, 248, 247, 247, 247, 245, 241, 237, 232, 231, 230, 230, 229, 32.41113 + 227, 224, 222, 220, 216, 218, 216, 200, 174, 123, 127, 129, 130, 129, 113, 109, 32.41114 + 121, 115, 239, 255, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41115 + 255, 253, 255, 185, 104, 107, 122, 121, 119, 111, 125, 152, 181, 211, 236, 243, 32.41116 + 247, 243, 239, 236, 239, 239, 239, 237, 240, 241, 243, 244, 243, 242, 240, 239, 32.41117 + 237, 237, 238, 239, 238, 239, 239, 241, 242, 244, 244, 244, 244, 243, 242, 242, 32.41118 + 246, 246, 246, 247, 246, 246, 245, 245, 242, 243, 244, 245, 246, 245, 245, 244, 32.41119 + 244, 244, 246, 245, 246, 246, 246, 246, 246, 245, 244, 243, 241, 238, 234, 230, 32.41120 + 229, 229, 230, 229, 228, 226, 224, 222, 220, 216, 217, 203, 183, 125, 127, 124, 32.41121 + 139, 123, 121, 113, 107, 114, 248, 255, 255, 251, 251, 255, 255, 255, 255, 255, 32.41122 + 255, 255, 255, 255, 255, 249, 255, 215, 111, 122, 130, 111, 127, 114, 127, 162, 32.41123 + 193, 219, 236, 238, 248, 243, 239, 237, 239, 240, 241, 240, 244, 243, 241, 239, 32.41124 + 238, 236, 238, 237, 230, 233, 238, 242, 243, 243, 241, 241, 239, 242, 242, 242, 32.41125 + 242, 241, 240, 237, 243, 243, 242, 242, 242, 240, 239, 238, 239, 240, 241, 243, 32.41126 + 243, 244, 244, 243, 243, 243, 242, 241, 242, 243, 244, 244, 244, 242, 241, 239, 32.41127 + 237, 236, 231, 229, 226, 227, 227, 227, 227, 226, 225, 224, 227, 220, 217, 202, 32.41128 + 183, 121, 121, 115, 142, 118, 129, 121, 104, 121, 255, 255, 254, 251, 252, 255, 32.41129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 255, 237, 134, 126, 134, 113, 32.41130 + 128, 142, 121, 180, 205, 221, 248, 240, 242, 249, 246, 244, 245, 240, 237, 248, 32.41131 + 251, 244, 240, 242, 241, 235, 235, 237, 231, 234, 235, 237, 243, 251, 252, 248, 32.41132 + 238, 242, 236, 232, 244, 222, 247, 233, 242, 245, 240, 238, 241, 236, 232, 242, 32.41133 + 243, 237, 238, 246, 247, 241, 241, 245, 244, 247, 235, 245, 229, 239, 233, 241, 32.41134 + 233, 243, 245, 234, 229, 233, 236, 232, 232, 221, 234, 226, 234, 224, 233, 221, 32.41135 + 222, 221, 231, 209, 200, 133, 136, 122, 139, 113, 149, 110, 121, 117, 254, 255, 32.41136 + 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 32.41137 + 170, 131, 133, 111, 127, 139, 128, 183, 207, 228, 245, 243, 248, 249, 241, 234, 32.41138 + 243, 248, 244, 241, 233, 224, 218, 214, 210, 205, 203, 206, 203, 213, 221, 221, 32.41139 + 220, 219, 220, 219, 204, 206, 193, 203, 208, 194, 206, 198, 235, 245, 246, 238, 32.41140 + 239, 236, 236, 244, 236, 238, 235, 231, 232, 232, 229, 222, 229, 226, 219, 224, 32.41141 + 220, 225, 225, 229, 222, 220, 217, 209, 209, 209, 212, 209, 226, 222, 232, 230, 32.41142 + 230, 226, 229, 222, 229, 224, 234, 215, 205, 130, 128, 117, 141, 111, 138, 130, 32.41143 + 134, 144, 244, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41144 + 255, 254, 255, 255, 208, 131, 126, 110, 130, 134, 140, 190, 215, 240, 242, 246, 32.41145 + 247, 244, 238, 235, 247, 255, 246, 230, 213, 207, 200, 196, 193, 190, 188, 190, 32.41146 + 193, 206, 215, 209, 197, 187, 187, 186, 168, 163, 151, 170, 171, 161, 166, 166, 32.41147 + 205, 234, 246, 238, 235, 236, 238, 245, 236, 237, 228, 216, 215, 220, 213, 196, 32.41148 + 206, 196, 196, 193, 203, 198, 204, 205, 211, 214, 218, 214, 205, 195, 200, 208, 32.41149 + 204, 213, 218, 228, 221, 224, 218, 220, 234, 227, 235, 222, 216, 132, 125, 119, 32.41150 + 130, 112, 125, 125, 133, 186, 238, 255, 254, 255, 255, 255, 255, 255, 255, 255, 32.41151 + 255, 255, 255, 255, 255, 255, 253, 255, 234, 133, 120, 118, 135, 137, 156, 203, 32.41152 + 226, 252, 239, 251, 243, 237, 240, 242, 235, 224, 211, 200, 179, 175, 170, 165, 32.41153 + 162, 158, 155, 151, 151, 159, 163, 152, 139, 132, 132, 133, 125, 116, 120, 129, 32.41154 + 137, 122, 131, 136, 160, 210, 241, 237, 235, 239, 239, 242, 232, 224, 210, 199, 32.41155 + 199, 198, 189, 176, 180, 161, 162, 152, 167, 153, 161, 159, 174, 170, 175, 182, 32.41156 + 181, 168, 164, 167, 172, 191, 194, 216, 213, 231, 227, 242, 234, 230, 236, 226, 32.41157 + 228, 139, 127, 129, 115, 118, 127, 103, 141, 226, 249, 249, 254, 255, 255, 255, 32.41158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 254, 155, 121, 124, 32.41159 + 143, 146, 169, 218, 239, 255, 241, 252, 251, 238, 244, 238, 199, 164, 157, 162, 32.41160 + 158, 158, 158, 151, 146, 139, 131, 122, 108, 108, 102, 91, 85, 87, 92, 93, 32.41161 + 97, 87, 111, 105, 121, 99, 115, 124, 121, 184, 232, 238, 239, 242, 238, 235, 32.41162 + 223, 199, 178, 178, 178, 166, 157, 156, 146, 125, 121, 108, 118, 97, 104, 102, 32.41163 + 128, 109, 103, 117, 134, 132, 123, 115, 104, 123, 117, 137, 148, 180, 190, 221, 32.41164 + 233, 233, 236, 227, 237, 148, 133, 140, 116, 123, 135, 105, 188, 251, 255, 248, 32.41165 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 251, 255, 32.41166 + 255, 186, 119, 117, 144, 155, 171, 229, 247, 255, 245, 251, 255, 241, 243, 227, 32.41167 + 170, 138, 149, 166, 165, 171, 173, 173, 171, 168, 159, 149, 131, 122, 105, 90, 32.41168 + 85, 89, 90, 88, 86, 81, 108, 97, 110, 101, 108, 116, 108, 172, 226, 240, 32.41169 + 247, 246, 237, 231, 220, 188, 162, 161, 158, 141, 134, 141, 123, 103, 93, 88, 32.41170 + 87, 71, 74, 79, 89, 90, 92, 93, 95, 98, 112, 124, 118, 128, 109, 108, 32.41171 + 126, 150, 165, 199, 226, 234, 237, 227, 243, 158, 138, 141, 120, 119, 133, 127, 32.41172 + 244, 253, 250, 248, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41173 + 255, 250, 252, 255, 255, 219, 122, 115, 137, 158, 165, 233, 251, 248, 250, 246, 32.41174 + 251, 243, 244, 219, 164, 155, 180, 187, 178, 185, 189, 189, 189, 190, 184, 174, 32.41175 + 163, 153, 134, 116, 107, 103, 100, 94, 88, 91, 99, 104, 95, 120, 99, 108, 32.41176 + 123, 178, 225, 242, 251, 248, 237, 236, 226, 198, 168, 154, 143, 130, 125, 129, 32.41177 + 112, 98, 85, 93, 83, 78, 78, 92, 79, 98, 111, 104, 96, 102, 127, 146, 32.41178 + 143, 149, 133, 116, 138, 135, 137, 158, 207, 228, 236, 226, 249, 168, 144, 141, 32.41179 + 122, 126, 122, 138, 255, 249, 244, 248, 253, 255, 255, 255, 255, 255, 255, 255, 32.41180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 133, 125, 131, 156, 157, 233, 32.41181 + 250, 241, 251, 244, 244, 245, 248, 215, 166, 176, 200, 188, 206, 212, 209, 203, 32.41182 + 202, 199, 192, 180, 171, 165, 154, 139, 130, 124, 119, 115, 120, 130, 117, 141, 32.41183 + 111, 166, 120, 128, 143, 188, 226, 243, 251, 248, 239, 238, 228, 208, 174, 146, 32.41184 + 131, 125, 121, 116, 104, 95, 83, 100, 87, 92, 90, 112, 113, 119, 123, 126, 32.41185 + 142, 157, 161, 151, 155, 167, 166, 149, 178, 155, 142, 149, 189, 220, 232, 224, 32.41186 + 253, 176, 149, 143, 124, 147, 120, 135, 255, 254, 252, 250, 253, 255, 255, 255, 32.41187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 112, 32.41188 + 122, 142, 193, 220, 255, 252, 255, 243, 242, 243, 228, 205, 191, 195, 209, 215, 32.41189 + 203, 214, 217, 211, 200, 184, 164, 143, 148, 138, 135, 115, 117, 105, 126, 110, 32.41190 + 100, 141, 134, 165, 134, 149, 138, 137, 157, 192, 236, 241, 255, 243, 254, 245, 32.41191 + 227, 216, 172, 144, 128, 122, 133, 128, 136, 96, 92, 111, 99, 73, 84, 115, 32.41192 + 105, 128, 136, 133, 146, 160, 176, 188, 190, 191, 195, 197, 185, 169, 164, 170, 32.41193 + 187, 206, 235, 244, 238, 192, 141, 147, 121, 157, 131, 148, 255, 255, 244, 246, 32.41194 + 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 252, 32.41195 + 255, 255, 111, 133, 120, 138, 191, 226, 255, 243, 246, 239, 239, 234, 216, 199, 32.41196 + 198, 212, 223, 226, 223, 210, 194, 178, 159, 148, 153, 163, 153, 132, 127, 114, 32.41197 + 108, 99, 102, 101, 112, 124, 105, 134, 134, 161, 167, 165, 168, 207, 243, 243, 32.41198 + 255, 247, 255, 242, 229, 220, 184, 164, 152, 145, 150, 137, 114, 100, 94, 88, 32.41199 + 83, 90, 97, 92, 93, 121, 127, 116, 126, 149, 176, 196, 229, 205, 200, 217, 32.41200 + 215, 189, 175, 182, 194, 209, 233, 239, 236, 195, 144, 151, 117, 159, 142, 198, 32.41201 + 254, 244, 246, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41202 + 255, 255, 255, 255, 255, 255, 107, 147, 115, 125, 181, 228, 255, 243, 246, 246, 32.41203 + 242, 228, 208, 196, 207, 226, 234, 228, 231, 192, 161, 158, 158, 146, 138, 138, 32.41204 + 133, 98, 95, 96, 90, 93, 76, 101, 96, 100, 92, 105, 113, 126, 155, 169, 32.41205 + 175, 228, 252, 249, 255, 253, 255, 242, 246, 238, 204, 185, 169, 152, 145, 124, 32.41206 + 94, 93, 90, 74, 71, 88, 89, 67, 84, 96, 90, 84, 108, 138, 161, 174, 32.41207 + 186, 204, 220, 223, 222, 224, 219, 212, 206, 214, 231, 236, 237, 202, 150, 154, 32.41208 + 131, 151, 155, 248, 255, 255, 251, 243, 254, 254, 255, 255, 255, 255, 255, 255, 32.41209 + 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 142, 139, 127, 125, 175, 234, 32.41210 + 255, 244, 247, 246, 246, 234, 214, 204, 214, 228, 229, 217, 211, 176, 153, 156, 32.41211 + 165, 158, 140, 125, 134, 86, 77, 81, 76, 92, 69, 121, 113, 109, 104, 99, 32.41212 + 107, 92, 126, 136, 167, 241, 255, 255, 255, 255, 255, 243, 255, 250, 214, 189, 32.41213 + 162, 138, 127, 106, 97, 92, 98, 100, 84, 73, 66, 59, 80, 77, 74, 88, 32.41214 + 119, 132, 143, 157, 171, 200, 223, 224, 221, 222, 209, 193, 217, 221, 233, 237, 32.41215 + 242, 211, 158, 155, 155, 144, 186, 255, 255, 255, 251, 241, 255, 254, 254, 255, 32.41216 + 255, 255, 255, 255, 255, 255, 255, 253, 255, 240, 231, 226, 234, 244, 206, 139, 32.41217 + 159, 142, 181, 242, 249, 243, 240, 236, 246, 240, 228, 217, 218, 224, 219, 203, 32.41218 + 187, 177, 164, 149, 144, 153, 167, 173, 182, 122, 88, 74, 71, 96, 86, 155, 32.41219 + 180, 151, 123, 103, 123, 103, 126, 119, 152, 245, 255, 255, 255, 250, 255, 245, 32.41220 + 248, 248, 214, 185, 151, 125, 121, 108, 113, 113, 132, 140, 107, 68, 59, 64, 32.41221 + 79, 72, 85, 127, 158, 146, 143, 162, 164, 144, 159, 214, 244, 232, 216, 221, 32.41222 + 218, 222, 232, 237, 246, 216, 160, 152, 161, 146, 228, 234, 226, 242, 246, 255, 32.41223 + 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 198, 190, 32.41224 + 205, 227, 255, 176, 169, 150, 186, 249, 245, 247, 245, 236, 240, 242, 239, 228, 32.41225 + 223, 222, 213, 200, 180, 178, 168, 149, 146, 165, 189, 203, 210, 158, 103, 69, 32.41226 + 75, 101, 119, 186, 206, 176, 137, 106, 115, 107, 138, 137, 148, 250, 255, 255, 32.41227 + 255, 246, 252, 246, 248, 251, 218, 186, 149, 121, 123, 114, 117, 133, 160, 161, 32.41228 + 122, 83, 68, 62, 89, 65, 78, 144, 199, 183, 151, 147, 184, 165, 171, 206, 32.41229 + 225, 215, 205, 213, 218, 223, 232, 236, 245, 217, 159, 148, 151, 151, 241, 222, 32.41230 + 221, 232, 224, 238, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41231 + 255, 216, 181, 174, 185, 217, 255, 227, 160, 149, 191, 255, 239, 251, 252, 244, 32.41232 + 237, 243, 244, 234, 228, 224, 216, 201, 189, 182, 180, 175, 173, 177, 187, 197, 32.41233 + 206, 180, 129, 87, 108, 123, 154, 200, 188, 180, 152, 126, 124, 122, 152, 154, 32.41234 + 158, 255, 246, 255, 255, 243, 246, 243, 250, 252, 220, 190, 156, 127, 124, 113, 32.41235 + 120, 134, 159, 164, 137, 105, 85, 70, 90, 77, 94, 156, 214, 204, 165, 145, 32.41236 + 143, 164, 185, 195, 205, 221, 230, 231, 221, 228, 235, 236, 245, 218, 163, 151, 32.41237 + 147, 183, 231, 234, 233, 219, 200, 202, 255, 254, 254, 255, 255, 255, 255, 255, 32.41238 + 255, 255, 255, 255, 248, 209, 172, 169, 172, 211, 230, 253, 157, 154, 201, 255, 32.41239 + 234, 243, 247, 239, 239, 245, 245, 235, 228, 224, 214, 197, 196, 198, 207, 206, 32.41240 + 183, 163, 175, 204, 209, 208, 168, 127, 155, 154, 182, 203, 190, 186, 162, 158, 32.41241 + 168, 174, 175, 152, 170, 255, 237, 255, 255, 243, 244, 241, 242, 245, 216, 193, 32.41242 + 164, 137, 130, 116, 133, 128, 149, 173, 157, 123, 99, 88, 83, 115, 154, 191, 32.41243 + 211, 198, 180, 180, 149, 153, 172, 199, 217, 216, 215, 216, 225, 230, 239, 238, 32.41244 + 246, 221, 165, 156, 155, 227, 227, 245, 216, 184, 189, 214, 255, 254, 254, 255, 32.41245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 173, 155, 173, 214, 234, 245, 32.41246 + 173, 163, 204, 251, 233, 248, 241, 245, 242, 246, 246, 241, 236, 232, 225, 218, 32.41247 + 219, 222, 222, 218, 210, 196, 185, 177, 198, 211, 191, 168, 178, 190, 189, 192, 32.41248 + 189, 186, 187, 191, 198, 199, 191, 181, 198, 246, 244, 243, 255, 252, 244, 244, 32.41249 + 241, 243, 235, 221, 199, 180, 170, 166, 166, 169, 167, 163, 174, 184, 171, 146, 32.41250 + 153, 161, 188, 189, 194, 176, 198, 214, 202, 196, 198, 211, 221, 220, 223, 227, 32.41251 + 227, 222, 225, 237, 238, 216, 179, 150, 155, 213, 229, 235, 198, 183, 187, 198, 32.41252 + 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 252, 210, 166, 171, 32.41253 + 175, 235, 228, 229, 181, 164, 207, 247, 239, 249, 246, 246, 243, 248, 249, 246, 32.41254 + 242, 238, 230, 226, 230, 232, 232, 231, 224, 214, 205, 199, 192, 201, 196, 184, 32.41255 + 186, 189, 183, 177, 190, 193, 201, 204, 205, 203, 198, 191, 215, 252, 244, 244, 32.41256 + 255, 255, 244, 238, 245, 244, 235, 220, 205, 196, 197, 200, 176, 179, 177, 174, 32.41257 + 185, 198, 188, 168, 166, 170, 195, 167, 188, 174, 214, 220, 221, 214, 210, 213, 32.41258 + 219, 224, 231, 234, 227, 222, 228, 237, 241, 220, 183, 153, 148, 223, 237, 222, 32.41259 + 182, 182, 192, 187, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.41260 + 251, 217, 157, 177, 168, 254, 226, 220, 196, 171, 213, 244, 246, 246, 249, 244, 32.41261 + 241, 247, 251, 248, 247, 247, 242, 238, 243, 244, 243, 240, 233, 227, 219, 216, 32.41262 + 215, 206, 202, 198, 189, 193, 199, 195, 199, 204, 214, 214, 212, 209, 212, 215, 32.41263 + 233, 255, 244, 246, 255, 255, 244, 232, 240, 241, 235, 225, 218, 214, 217, 220, 32.41264 + 198, 199, 192, 185, 191, 199, 190, 174, 181, 179, 202, 158, 191, 180, 227, 223, 32.41265 + 233, 233, 231, 226, 226, 231, 237, 237, 232, 227, 232, 240, 245, 228, 192, 161, 32.41266 + 149, 225, 239, 222, 177, 176, 189, 191, 255, 254, 254, 254, 255, 255, 255, 255, 32.41267 + 255, 255, 255, 255, 255, 221, 159, 166, 163, 255, 235, 226, 213, 177, 219, 242, 32.41268 + 252, 243, 248, 239, 241, 247, 251, 249, 250, 250, 248, 245, 248, 248, 245, 240, 32.41269 + 234, 227, 222, 218, 223, 203, 203, 205, 191, 194, 210, 210, 213, 215, 221, 220, 32.41270 + 218, 222, 233, 241, 238, 254, 241, 245, 255, 254, 245, 234, 231, 237, 239, 238, 32.41271 + 233, 226, 222, 220, 217, 216, 208, 197, 197, 202, 196, 184, 200, 197, 212, 182, 32.41272 + 205, 198, 228, 225, 229, 239, 244, 236, 234, 238, 240, 234, 236, 232, 235, 244, 32.41273 + 249, 234, 199, 166, 149, 212, 230, 233, 186, 164, 180, 206, 255, 254, 254, 254, 32.41274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 180, 163, 176, 247, 247, 232, 32.41275 + 213, 176, 218, 244, 254, 243, 247, 241, 243, 250, 252, 250, 250, 253, 250, 249, 32.41276 + 248, 247, 244, 239, 235, 229, 225, 222, 225, 211, 221, 231, 218, 213, 220, 217, 32.41277 + 221, 222, 226, 229, 233, 239, 245, 249, 237, 247, 241, 248, 255, 243, 243, 236, 32.41278 + 229, 235, 241, 243, 240, 232, 224, 218, 218, 220, 215, 207, 210, 216, 217, 213, 32.41279 + 224, 218, 216, 218, 217, 215, 223, 233, 226, 236, 242, 236, 235, 239, 241, 234, 32.41280 + 237, 233, 236, 243, 250, 238, 202, 166, 145, 208, 229, 235, 188, 164, 181, 211, 32.41281 + 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 209, 181, 32.41282 + 203, 242, 246, 223, 199, 168, 209, 246, 251, 247, 249, 246, 246, 252, 253, 251, 32.41283 + 252, 254, 253, 250, 246, 246, 246, 244, 240, 237, 234, 235, 241, 231, 232, 232, 32.41284 + 224, 220, 227, 230, 222, 225, 231, 241, 248, 250, 249, 245, 238, 245, 244, 255, 32.41285 + 250, 234, 238, 233, 236, 240, 241, 241, 240, 238, 234, 231, 223, 225, 222, 215, 32.41286 + 215, 219, 223, 224, 239, 232, 218, 233, 220, 226, 225, 243, 232, 233, 233, 229, 32.41287 + 230, 235, 240, 239, 234, 231, 234, 241, 248, 237, 201, 161, 148, 226, 247, 236, 32.41288 + 189, 183, 201, 219, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.41289 + 255, 232, 227, 203, 221, 238, 229, 203, 185, 161, 201, 251, 246, 250, 244, 247, 32.41290 + 244, 249, 251, 249, 250, 252, 252, 250, 248, 249, 249, 248, 245, 242, 241, 239, 32.41291 + 235, 233, 221, 209, 208, 209, 219, 232, 229, 230, 235, 242, 248, 249, 247, 242, 32.41292 + 243, 243, 244, 255, 251, 235, 240, 232, 241, 242, 241, 241, 240, 240, 237, 236, 32.41293 + 233, 235, 231, 220, 213, 212, 215, 217, 228, 228, 225, 228, 224, 227, 233, 241, 32.41294 + 239, 233, 230, 230, 232, 231, 233, 235, 228, 228, 231, 238, 245, 235, 196, 154, 32.41295 + 159, 233, 250, 240, 195, 194, 218, 239, 255, 254, 254, 255, 255, 255, 255, 255, 32.41296 + 255, 255, 255, 255, 255, 236, 230, 213, 220, 234, 212, 187, 179, 159, 196, 254, 32.41297 + 241, 249, 238, 242, 239, 242, 246, 244, 245, 249, 250, 248, 252, 251, 251, 249, 32.41298 + 245, 241, 236, 235, 227, 240, 233, 222, 228, 227, 226, 238, 239, 238, 238, 235, 32.41299 + 237, 241, 246, 248, 244, 241, 243, 255, 255, 240, 245, 234, 241, 242, 244, 245, 32.41300 + 244, 240, 235, 231, 239, 243, 239, 228, 218, 216, 219, 221, 207, 216, 232, 218, 32.41301 + 229, 228, 239, 230, 241, 234, 232, 240, 242, 232, 225, 226, 224, 226, 229, 235, 32.41302 + 243, 235, 193, 148, 165, 217, 233, 241, 202, 186, 215, 255, 255, 254, 254, 255, 32.41303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 243, 226, 223, 231, 216, 181, 32.41304 + 169, 177, 181, 254, 243, 251, 242, 254, 251, 249, 249, 246, 245, 244, 246, 247, 32.41305 + 246, 249, 251, 248, 250, 253, 249, 241, 235, 237, 235, 231, 234, 243, 246, 241, 32.41306 + 242, 242, 244, 242, 242, 241, 244, 246, 238, 243, 251, 255, 251, 245, 240, 238, 32.41307 + 244, 239, 238, 244, 247, 243, 241, 242, 242, 239, 234, 234, 234, 233, 225, 218, 32.41308 + 214, 216, 221, 222, 224, 226, 231, 233, 235, 237, 240, 239, 234, 230, 227, 225, 32.41309 + 224, 227, 232, 237, 244, 233, 184, 135, 177, 209, 223, 246, 194, 206, 251, 255, 32.41310 + 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 250, 233, 32.41311 + 226, 233, 216, 183, 169, 196, 176, 250, 247, 244, 248, 249, 247, 248, 246, 244, 32.41312 + 244, 242, 244, 246, 248, 251, 251, 249, 253, 255, 252, 245, 241, 242, 240, 237, 32.41313 + 241, 246, 249, 244, 241, 242, 244, 243, 243, 242, 243, 244, 239, 243, 251, 255, 32.41314 + 252, 247, 242, 240, 240, 238, 238, 244, 245, 240, 236, 236, 233, 231, 232, 235, 32.41315 + 239, 238, 235, 227, 222, 224, 228, 229, 229, 231, 232, 235, 235, 237, 240, 239, 32.41316 + 235, 231, 229, 228, 226, 229, 233, 239, 241, 228, 189, 153, 178, 208, 222, 238, 32.41317 + 196, 215, 255, 255, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.41318 + 255, 255, 255, 244, 233, 232, 216, 189, 168, 215, 174, 239, 249, 241, 251, 243, 32.41319 + 244, 244, 243, 242, 242, 243, 243, 243, 247, 250, 250, 250, 251, 254, 252, 247, 32.41320 + 247, 248, 247, 245, 249, 251, 252, 247, 241, 242, 245, 243, 244, 243, 244, 242, 32.41321 + 240, 243, 250, 254, 253, 249, 245, 242, 239, 238, 239, 243, 242, 236, 233, 231, 32.41322 + 230, 230, 233, 238, 244, 245, 242, 237, 231, 232, 235, 236, 235, 234, 235, 236, 32.41323 + 234, 237, 240, 240, 237, 235, 233, 232, 228, 229, 234, 242, 243, 230, 206, 187, 32.41324 + 187, 214, 227, 234, 208, 231, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 32.41325 + 255, 255, 255, 254, 252, 254, 255, 251, 238, 233, 219, 196, 173, 219, 187, 226, 32.41326 + 247, 247, 243, 242, 242, 244, 243, 242, 243, 243, 242, 243, 244, 245, 246, 247, 32.41327 + 249, 250, 249, 248, 250, 250, 250, 251, 252, 253, 251, 247, 245, 245, 243, 242, 32.41328 + 244, 245, 245, 244, 242, 243, 249, 252, 252, 250, 246, 243, 243, 242, 243, 243, 32.41329 + 241, 236, 233, 231, 239, 238, 239, 241, 243, 244, 244, 240, 238, 238, 240, 240, 32.41330 + 239, 237, 234, 233, 234, 236, 239, 239, 238, 236, 236, 236, 232, 228, 232, 244, 32.41331 + 249, 242, 230, 221, 198, 218, 234, 233, 224, 244, 255, 252, 255, 254, 255, 255, 32.41332 + 255, 255, 255, 255, 255, 255, 255, 255, 250, 252, 255, 255, 245, 238, 226, 212, 32.41333 + 183, 213, 207, 216, 241, 255, 233, 244, 242, 244, 246, 246, 246, 245, 245, 245, 32.41334 + 244, 244, 244, 246, 246, 246, 247, 248, 249, 248, 248, 251, 251, 249, 246, 245, 32.41335 + 249, 245, 242, 241, 242, 246, 248, 248, 243, 243, 246, 249, 250, 249, 246, 242, 32.41336 + 244, 244, 243, 239, 235, 232, 231, 229, 242, 239, 238, 236, 236, 237, 239, 239, 32.41337 + 240, 239, 239, 239, 240, 237, 233, 231, 234, 237, 239, 240, 239, 238, 238, 237, 32.41338 + 236, 227, 227, 241, 252, 251, 242, 233, 199, 214, 236, 232, 238, 254, 255, 245, 32.41339 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 255, 255, 32.41340 + 252, 245, 236, 226, 198, 211, 226, 221, 238, 255, 230, 247, 244, 246, 248, 248, 32.41341 + 248, 247, 245, 244, 244, 243, 243, 246, 245, 243, 245, 249, 246, 243, 243, 247, 32.41342 + 248, 245, 242, 243, 248, 244, 243, 241, 244, 249, 251, 251, 245, 242, 243, 245, 32.41343 + 247, 246, 243, 239, 238, 243, 242, 236, 231, 229, 227, 224, 237, 235, 234, 232, 32.41344 + 232, 234, 237, 238, 240, 237, 236, 235, 237, 235, 232, 229, 233, 235, 237, 237, 32.41345 + 236, 236, 237, 237, 237, 229, 227, 237, 250, 252, 240, 222, 198, 204, 232, 230, 32.41346 + 250, 255, 253, 245, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41347 + 255, 251, 255, 255, 254, 247, 242, 235, 211, 221, 235, 236, 242, 248, 240, 243, 32.41348 + 246, 248, 249, 250, 249, 246, 243, 241, 242, 240, 242, 245, 243, 240, 240, 247, 32.41349 + 245, 240, 239, 244, 245, 242, 240, 243, 243, 242, 243, 244, 250, 254, 252, 249, 32.41350 + 245, 240, 240, 242, 243, 241, 238, 235, 232, 239, 242, 237, 233, 230, 225, 219, 32.41351 + 231, 232, 235, 236, 236, 237, 238, 240, 240, 238, 235, 235, 236, 235, 232, 230, 32.41352 + 232, 234, 235, 235, 234, 234, 236, 235, 230, 231, 232, 237, 247, 252, 238, 214, 32.41353 + 207, 204, 234, 232, 255, 255, 248, 251, 254, 255, 255, 255, 255, 255, 255, 255, 32.41354 + 255, 255, 255, 255, 255, 250, 254, 255, 253, 246, 242, 236, 218, 230, 235, 249, 32.41355 + 246, 236, 252, 239, 244, 247, 248, 248, 246, 245, 243, 240, 238, 236, 238, 241, 32.41356 + 239, 234, 237, 244, 247, 241, 238, 244, 246, 244, 244, 247, 238, 239, 240, 245, 32.41357 + 252, 253, 251, 246, 245, 241, 240, 241, 242, 239, 235, 232, 228, 240, 246, 243, 32.41358 + 238, 233, 227, 218, 233, 236, 242, 244, 244, 243, 242, 242, 242, 239, 235, 235, 32.41359 + 237, 237, 235, 233, 232, 234, 235, 234, 233, 232, 233, 233, 223, 231, 237, 239, 32.41360 + 246, 253, 237, 212, 218, 209, 237, 233, 255, 255, 244, 252, 255, 255, 255, 255, 32.41361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 253, 242, 229, 253, 32.41362 + 226, 237, 239, 240, 248, 244, 240, 245, 241, 241, 243, 243, 241, 242, 241, 238, 32.41363 + 232, 232, 235, 238, 241, 239, 237, 237, 244, 244, 245, 244, 243, 243, 241, 237, 32.41364 + 236, 236, 238, 241, 248, 249, 249, 245, 243, 247, 239, 234, 243, 240, 225, 218, 32.41365 + 230, 236, 239, 238, 242, 244, 236, 222, 232, 234, 239, 242, 245, 246, 246, 245, 32.41366 + 238, 237, 236, 237, 236, 237, 237, 237, 234, 237, 238, 236, 234, 233, 232, 231, 32.41367 + 231, 229, 239, 246, 249, 249, 234, 207, 206, 217, 233, 247, 254, 254, 251, 252, 32.41368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255, 255, 32.41369 + 255, 244, 230, 251, 234, 241, 239, 239, 249, 247, 241, 243, 241, 241, 242, 241, 32.41370 + 241, 240, 241, 238, 232, 232, 236, 238, 239, 238, 237, 236, 238, 239, 243, 243, 32.41371 + 244, 242, 239, 236, 237, 233, 234, 238, 242, 245, 244, 243, 229, 240, 243, 240, 32.41372 + 241, 235, 229, 237, 234, 240, 240, 239, 244, 255, 255, 247, 232, 233, 238, 242, 32.41373 + 244, 245, 247, 245, 238, 236, 237, 236, 239, 238, 237, 237, 237, 237, 239, 236, 32.41374 + 234, 231, 232, 230, 229, 226, 236, 244, 246, 246, 233, 207, 217, 221, 233, 249, 32.41375 + 255, 251, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41376 + 255, 254, 255, 255, 255, 246, 230, 248, 247, 248, 240, 238, 247, 247, 241, 243, 32.41377 + 242, 242, 242, 241, 241, 240, 240, 238, 233, 233, 236, 237, 238, 237, 236, 235, 32.41378 + 233, 235, 239, 241, 241, 239, 237, 234, 226, 231, 241, 252, 255, 255, 249, 242, 32.41379 + 246, 240, 229, 231, 241, 236, 220, 217, 213, 226, 234, 238, 243, 250, 249, 241, 32.41380 + 230, 231, 236, 239, 241, 242, 243, 242, 233, 234, 236, 235, 237, 236, 235, 234, 32.41381 + 237, 237, 238, 235, 233, 230, 231, 230, 231, 228, 235, 243, 244, 246, 237, 215, 32.41382 + 231, 225, 233, 251, 255, 251, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 231, 247, 253, 250, 237, 234, 32.41384 + 247, 248, 243, 244, 243, 242, 243, 241, 241, 239, 240, 237, 236, 236, 237, 237, 32.41385 + 237, 236, 236, 235, 236, 236, 238, 238, 238, 237, 239, 236, 237, 239, 246, 250, 32.41386 + 250, 244, 234, 228, 229, 233, 230, 231, 234, 230, 227, 237, 235, 241, 238, 231, 32.41387 + 233, 246, 255, 255, 228, 230, 232, 234, 238, 236, 238, 236, 230, 231, 233, 233, 32.41388 + 235, 234, 232, 231, 234, 234, 236, 233, 231, 228, 228, 227, 235, 230, 237, 246, 32.41389 + 246, 247, 242, 226, 241, 228, 232, 253, 255, 250, 255, 255, 255, 255, 255, 255, 32.41390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 253, 237, 251, 32.41391 + 253, 249, 234, 231, 246, 251, 245, 245, 244, 243, 243, 241, 241, 239, 237, 236, 32.41392 + 240, 240, 239, 238, 237, 237, 237, 237, 238, 236, 234, 232, 232, 233, 237, 238, 32.41393 + 244, 242, 242, 242, 244, 247, 249, 249, 239, 236, 224, 223, 237, 237, 226, 222, 32.41394 + 222, 234, 241, 240, 241, 247, 246, 240, 229, 230, 232, 232, 234, 232, 232, 232, 32.41395 + 228, 228, 230, 230, 232, 231, 230, 229, 230, 231, 233, 230, 229, 226, 227, 226, 32.41396 + 235, 232, 239, 247, 244, 244, 243, 233, 245, 230, 233, 253, 255, 250, 255, 255, 32.41397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.41398 + 255, 255, 242, 253, 247, 246, 232, 231, 247, 251, 246, 247, 246, 243, 243, 241, 32.41399 + 240, 239, 237, 238, 242, 240, 240, 236, 235, 234, 235, 235, 235, 233, 231, 229, 32.41400 + 229, 232, 237, 238, 240, 243, 246, 248, 245, 232, 219, 208, 210, 227, 226, 219, 32.41401 + 225, 228, 218, 212, 217, 226, 231, 232, 237, 245, 247, 239, 233, 233, 233, 234, 32.41402 + 233, 231, 230, 229, 227, 226, 227, 225, 227, 227, 228, 228, 227, 228, 231, 229, 32.41403 + 228, 226, 228, 227, 236, 230, 238, 245, 240, 237, 238, 232, 245, 236, 239, 254, 32.41404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41405 + 255, 255, 255, 252, 255, 255, 237, 244, 242, 244, 236, 234, 248, 250, 245, 247, 32.41406 + 246, 245, 244, 241, 240, 237, 237, 238, 242, 240, 238, 234, 233, 231, 232, 232, 32.41407 + 229, 229, 230, 231, 234, 238, 240, 241, 245, 248, 250, 241, 218, 181, 141, 118, 32.41408 + 128, 200, 245, 230, 206, 207, 227, 250, 197, 179, 147, 124, 135, 171, 208, 227, 32.41409 + 239, 239, 239, 237, 235, 230, 230, 228, 226, 225, 224, 221, 224, 224, 226, 228, 32.41410 + 226, 227, 230, 229, 230, 228, 230, 230, 236, 231, 240, 247, 239, 233, 234, 228, 32.41411 + 244, 243, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 231, 240, 245, 238, 237, 32.41413 + 249, 249, 244, 247, 247, 246, 244, 241, 240, 237, 236, 237, 241, 239, 236, 232, 32.41414 + 230, 230, 230, 231, 227, 228, 233, 237, 242, 245, 245, 245, 248, 247, 242, 231, 32.41415 + 212, 184, 157, 142, 159, 206, 228, 220, 228, 236, 223, 199, 180, 164, 136, 117, 32.41416 + 130, 165, 196, 210, 244, 243, 243, 240, 236, 232, 229, 229, 226, 224, 222, 219, 32.41417 + 221, 223, 226, 228, 227, 227, 231, 230, 231, 231, 233, 235, 240, 234, 243, 250, 32.41418 + 241, 233, 233, 229, 243, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 247, 234, 223, 32.41420 + 236, 236, 235, 238, 243, 248, 250, 249, 247, 243, 241, 242, 240, 236, 236, 239, 32.41421 + 245, 240, 233, 230, 231, 233, 230, 229, 236, 234, 235, 238, 242, 245, 246, 245, 32.41422 + 245, 249, 255, 249, 225, 192, 175, 172, 187, 206, 226, 229, 229, 239, 234, 207, 32.41423 + 189, 193, 180, 176, 171, 171, 195, 204, 242, 245, 240, 236, 240, 236, 227, 230, 32.41424 + 229, 227, 224, 220, 222, 222, 224, 226, 228, 230, 235, 234, 234, 231, 230, 231, 32.41425 + 236, 236, 247, 240, 237, 242, 228, 230, 230, 243, 255, 255, 255, 255, 255, 255, 32.41426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41427 + 255, 251, 231, 215, 225, 228, 229, 236, 244, 248, 248, 244, 247, 244, 242, 243, 32.41428 + 242, 235, 235, 237, 235, 234, 234, 235, 236, 238, 237, 236, 239, 241, 244, 245, 32.41429 + 248, 248, 248, 247, 247, 251, 253, 248, 227, 199, 183, 178, 183, 196, 215, 220, 32.41430 + 217, 223, 221, 204, 190, 199, 189, 190, 186, 185, 206, 210, 233, 239, 238, 238, 32.41431 + 245, 241, 236, 241, 231, 229, 226, 222, 223, 224, 226, 227, 224, 226, 232, 232, 32.41432 + 234, 232, 233, 234, 236, 234, 246, 239, 234, 233, 218, 223, 221, 237, 253, 255, 32.41433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41434 + 255, 255, 255, 255, 255, 254, 232, 213, 221, 223, 223, 229, 237, 245, 248, 248, 32.41435 + 245, 242, 243, 243, 242, 235, 233, 235, 226, 230, 234, 238, 239, 240, 239, 240, 32.41436 + 239, 243, 247, 249, 249, 245, 246, 246, 248, 249, 249, 245, 231, 210, 195, 190, 32.41437 + 176, 178, 190, 199, 194, 194, 196, 189, 172, 186, 184, 195, 197, 198, 218, 220, 32.41438 + 233, 242, 243, 242, 246, 239, 235, 243, 237, 234, 231, 226, 226, 226, 228, 229, 32.41439 + 224, 226, 231, 232, 233, 231, 232, 233, 234, 229, 244, 242, 235, 230, 219, 231, 32.41440 + 214, 234, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 223, 226, 222, 215, 216, 32.41442 + 223, 235, 245, 250, 245, 241, 241, 245, 242, 236, 232, 233, 224, 231, 237, 239, 32.41443 + 238, 237, 237, 239, 242, 245, 247, 248, 246, 245, 246, 247, 248, 247, 245, 241, 32.41444 + 235, 223, 210, 203, 181, 167, 169, 180, 178, 171, 173, 172, 165, 178, 182, 196, 32.41445 + 200, 202, 220, 223, 232, 244, 246, 244, 246, 239, 235, 242, 242, 240, 236, 231, 32.41446 + 230, 228, 229, 229, 230, 231, 234, 233, 232, 230, 230, 228, 236, 230, 244, 243, 32.41447 + 235, 226, 216, 228, 220, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 32.41449 + 232, 227, 220, 218, 224, 233, 241, 244, 243, 241, 240, 244, 241, 235, 232, 233, 32.41450 + 229, 233, 237, 238, 236, 236, 238, 241, 248, 247, 246, 244, 244, 245, 249, 251, 32.41451 + 249, 248, 243, 238, 234, 227, 218, 209, 195, 166, 158, 169, 170, 164, 164, 164, 32.41452 + 185, 196, 194, 202, 203, 200, 214, 214, 220, 233, 239, 239, 244, 239, 237, 245, 32.41453 + 242, 240, 238, 233, 233, 230, 229, 228, 232, 233, 235, 233, 233, 230, 230, 229, 32.41454 + 240, 233, 244, 239, 229, 222, 209, 220, 234, 246, 255, 255, 255, 255, 255, 255, 32.41455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41456 + 255, 255, 255, 254, 242, 242, 240, 243, 246, 247, 243, 241, 242, 241, 239, 241, 32.41457 + 239, 236, 235, 237, 234, 236, 238, 240, 240, 239, 240, 241, 238, 233, 229, 229, 32.41458 + 231, 236, 240, 242, 244, 245, 241, 235, 230, 227, 220, 212, 203, 171, 157, 164, 32.41459 + 165, 161, 164, 164, 195, 205, 198, 204, 203, 199, 212, 211, 219, 229, 230, 231, 32.41460 + 235, 228, 224, 230, 231, 231, 233, 232, 233, 231, 229, 227, 229, 230, 233, 232, 32.41461 + 232, 231, 233, 233, 233, 227, 239, 235, 233, 240, 231, 237, 248, 254, 255, 255, 32.41462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41463 + 255, 255, 255, 255, 255, 255, 255, 255, 252, 253, 255, 255, 255, 255, 248, 241, 32.41464 + 242, 238, 237, 239, 237, 235, 237, 240, 238, 237, 238, 241, 240, 237, 233, 228, 32.41465 + 219, 213, 208, 210, 218, 224, 225, 224, 228, 232, 234, 229, 228, 227, 225, 219, 32.41466 + 207, 181, 169, 170, 166, 165, 173, 177, 196, 204, 198, 204, 203, 198, 211, 209, 32.41467 + 219, 226, 222, 218, 221, 214, 207, 210, 214, 217, 223, 227, 232, 231, 229, 227, 32.41468 + 228, 228, 231, 229, 229, 228, 231, 231, 224, 226, 237, 231, 241, 255, 255, 255, 32.41469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 253, 32.41471 + 255, 253, 246, 242, 243, 240, 238, 237, 238, 235, 238, 242, 241, 238, 240, 241, 32.41472 + 240, 232, 223, 215, 210, 205, 201, 205, 215, 222, 221, 216, 212, 220, 225, 223, 32.41473 + 225, 230, 232, 229, 215, 196, 188, 185, 176, 178, 191, 200, 206, 214, 206, 210, 32.41474 + 205, 197, 206, 201, 212, 214, 212, 208, 214, 211, 203, 206, 203, 208, 215, 224, 32.41475 + 230, 231, 229, 227, 230, 229, 230, 229, 226, 225, 225, 227, 229, 230, 240, 228, 32.41476 + 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41478 + 255, 254, 251, 250, 254, 255, 250, 241, 246, 243, 241, 242, 240, 236, 237, 239, 32.41479 + 241, 238, 240, 243, 237, 225, 220, 222, 209, 200, 194, 199, 206, 209, 212, 218, 32.41480 + 214, 219, 227, 228, 231, 235, 236, 233, 232, 212, 202, 202, 201, 208, 218, 216, 32.41481 + 219, 215, 211, 209, 210, 210, 207, 204, 212, 215, 212, 211, 218, 214, 205, 205, 32.41482 + 206, 209, 208, 216, 232, 232, 223, 225, 229, 229, 228, 229, 232, 233, 236, 237, 32.41483 + 241, 238, 236, 235, 245, 255, 255, 252, 254, 255, 255, 255, 255, 255, 255, 255, 32.41484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41485 + 255, 255, 255, 255, 255, 255, 251, 251, 254, 255, 252, 245, 248, 244, 242, 242, 32.41486 + 238, 233, 235, 237, 252, 246, 246, 245, 239, 228, 221, 222, 216, 205, 183, 164, 32.41487 + 166, 187, 207, 216, 217, 220, 221, 220, 222, 225, 224, 220, 215, 204, 207, 213, 32.41488 + 212, 215, 221, 217, 215, 212, 209, 207, 207, 206, 204, 202, 202, 212, 213, 212, 32.41489 + 216, 210, 202, 205, 205, 207, 202, 208, 227, 231, 223, 224, 229, 229, 227, 228, 32.41490 + 230, 232, 233, 233, 236, 234, 234, 238, 248, 255, 255, 250, 254, 255, 255, 255, 32.41491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 255, 255, 253, 247, 32.41493 + 246, 243, 241, 240, 235, 230, 234, 238, 252, 245, 242, 240, 236, 228, 220, 217, 32.41494 + 216, 204, 168, 130, 125, 156, 185, 194, 212, 212, 209, 204, 203, 204, 203, 198, 32.41495 + 190, 187, 199, 210, 208, 207, 209, 203, 196, 197, 199, 201, 201, 202, 204, 206, 32.41496 + 204, 218, 221, 216, 212, 202, 197, 206, 204, 206, 200, 204, 222, 228, 222, 224, 32.41497 + 230, 229, 227, 227, 228, 229, 229, 230, 228, 231, 234, 241, 253, 255, 255, 250, 32.41498 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.41500 + 255, 255, 255, 249, 241, 240, 239, 238, 232, 228, 234, 242, 246, 241, 239, 239, 32.41501 + 238, 232, 224, 215, 206, 188, 152, 119, 114, 136, 155, 160, 176, 179, 177, 169, 32.41502 + 162, 163, 166, 167, 174, 167, 174, 183, 182, 181, 181, 173, 168, 172, 178, 182, 32.41503 + 184, 188, 195, 200, 204, 217, 216, 202, 189, 177, 178, 192, 198, 207, 206, 208, 32.41504 + 220, 225, 223, 228, 231, 230, 228, 227, 227, 228, 228, 228, 227, 227, 233, 244, 32.41505 + 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41507 + 255, 255, 255, 255, 255, 255, 255, 253, 241, 238, 236, 235, 231, 228, 235, 243, 32.41508 + 245, 243, 243, 243, 243, 237, 226, 214, 200, 176, 148, 136, 138, 146, 152, 156, 32.41509 + 168, 178, 182, 174, 166, 168, 180, 188, 186, 167, 161, 164, 165, 167, 167, 157, 32.41510 + 155, 158, 162, 163, 164, 168, 174, 179, 181, 191, 185, 166, 151, 141, 146, 165, 32.41511 + 182, 202, 210, 211, 218, 223, 225, 234, 231, 230, 228, 227, 228, 229, 229, 229, 32.41512 + 228, 228, 235, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41514 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 245, 238, 233, 231, 32.41515 + 230, 229, 235, 241, 241, 243, 243, 240, 237, 231, 220, 208, 210, 189, 172, 173, 32.41516 + 182, 186, 191, 197, 199, 211, 217, 212, 207, 212, 227, 237, 200, 175, 163, 163, 32.41517 + 165, 168, 168, 157, 158, 156, 153, 150, 147, 148, 151, 154, 149, 158, 152, 137, 32.41518 + 127, 120, 126, 143, 171, 196, 207, 208, 216, 223, 227, 236, 228, 228, 226, 227, 32.41519 + 228, 230, 231, 231, 232, 230, 237, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.41520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41522 + 252, 242, 232, 229, 230, 229, 232, 234, 233, 236, 235, 229, 224, 221, 215, 207, 32.41523 + 214, 211, 207, 207, 215, 224, 231, 231, 216, 222, 224, 219, 216, 221, 230, 235, 32.41524 + 245, 226, 221, 224, 225, 226, 224, 213, 216, 210, 203, 199, 199, 201, 204, 205, 32.41525 + 202, 213, 212, 206, 204, 198, 196, 206, 181, 201, 206, 204, 214, 224, 224, 229, 32.41526 + 223, 223, 223, 224, 227, 231, 232, 233, 233, 233, 242, 254, 255, 255, 255, 255, 32.41527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41529 + 255, 255, 255, 255, 255, 246, 233, 229, 230, 231, 229, 229, 230, 233, 232, 224, 32.41530 + 219, 220, 220, 215, 203, 220, 227, 219, 222, 235, 241, 236, 228, 228, 223, 216, 32.41531 + 214, 217, 218, 215, 204, 194, 198, 207, 206, 203, 200, 189, 194, 187, 180, 178, 32.41532 + 183, 190, 196, 198, 204, 217, 221, 222, 224, 215, 205, 208, 199, 212, 209, 203, 32.41533 + 215, 224, 221, 220, 220, 220, 220, 223, 226, 230, 232, 232, 231, 233, 244, 255, 32.41534 + 255, 255, 253, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41536 + 255, 255, 255, 255, 255, 255, 254, 255, 254, 244, 235, 234, 234, 231, 232, 236, 32.41537 + 231, 232, 232, 227, 220, 214, 213, 213, 215, 219, 223, 229, 233, 234, 234, 234, 32.41538 + 227, 225, 224, 224, 222, 215, 205, 197, 202, 199, 196, 194, 197, 198, 197, 194, 32.41539 + 196, 190, 184, 187, 202, 216, 219, 213, 221, 230, 228, 223, 223, 217, 214, 222, 32.41540 + 207, 208, 209, 213, 217, 222, 223, 225, 227, 218, 215, 223, 231, 234, 237, 240, 32.41541 + 232, 241, 252, 255, 255, 255, 254, 249, 255, 255, 255, 255, 255, 255, 255, 255, 32.41542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 253, 255, 248, 241, 238, 32.41544 + 235, 231, 231, 235, 231, 232, 232, 229, 222, 217, 214, 214, 219, 222, 226, 231, 32.41545 + 232, 231, 230, 229, 222, 223, 222, 223, 224, 221, 215, 209, 201, 200, 199, 198, 32.41546 + 200, 201, 202, 202, 198, 195, 192, 194, 206, 218, 221, 216, 217, 226, 225, 221, 32.41547 + 222, 216, 213, 220, 209, 209, 210, 213, 217, 222, 224, 227, 222, 219, 221, 229, 32.41548 + 234, 234, 236, 239, 231, 240, 251, 255, 255, 255, 253, 249, 255, 255, 255, 255, 32.41549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 251, 32.41551 + 255, 251, 246, 241, 237, 233, 233, 236, 233, 233, 233, 228, 222, 219, 216, 215, 32.41552 + 219, 223, 227, 232, 233, 231, 229, 227, 218, 216, 212, 210, 210, 208, 204, 200, 32.41553 + 203, 203, 203, 203, 205, 206, 209, 209, 201, 203, 205, 207, 214, 224, 227, 225, 32.41554 + 215, 225, 225, 222, 224, 218, 213, 219, 212, 212, 211, 213, 217, 222, 226, 229, 32.41555 + 220, 223, 229, 234, 233, 230, 232, 237, 243, 249, 255, 255, 255, 255, 252, 248, 32.41556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41558 + 255, 251, 249, 250, 255, 254, 248, 244, 238, 235, 235, 238, 233, 232, 232, 228, 32.41559 + 225, 221, 219, 217, 217, 221, 226, 230, 231, 230, 226, 226, 218, 214, 207, 203, 32.41560 + 202, 200, 198, 195, 197, 194, 192, 192, 197, 199, 199, 196, 197, 202, 206, 205, 32.41561 + 206, 210, 212, 211, 219, 228, 227, 225, 227, 220, 212, 217, 214, 213, 212, 213, 32.41562 + 217, 223, 227, 231, 223, 228, 232, 232, 228, 227, 232, 237, 248, 253, 255, 255, 32.41563 + 255, 254, 252, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41565 + 255, 255, 255, 255, 255, 249, 247, 249, 253, 255, 254, 247, 238, 233, 234, 237, 32.41566 + 236, 234, 231, 228, 226, 223, 222, 220, 219, 222, 226, 228, 229, 227, 222, 220, 32.41567 + 219, 215, 207, 202, 201, 200, 198, 195, 190, 183, 176, 177, 185, 187, 183, 175, 32.41568 + 189, 197, 203, 202, 199, 201, 204, 204, 221, 228, 227, 224, 226, 218, 209, 212, 32.41569 + 215, 214, 212, 213, 217, 223, 227, 231, 227, 231, 232, 229, 227, 232, 241, 246, 32.41570 + 250, 253, 255, 255, 253, 253, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255, 32.41571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 248, 249, 254, 255, 255, 249, 32.41573 + 236, 233, 233, 235, 236, 233, 230, 227, 227, 226, 224, 222, 224, 225, 228, 227, 32.41574 + 226, 223, 219, 218, 216, 211, 200, 192, 186, 180, 173, 167, 161, 153, 145, 145, 32.41575 + 152, 153, 148, 140, 152, 163, 175, 180, 185, 194, 202, 205, 218, 225, 221, 218, 32.41576 + 221, 215, 206, 208, 215, 214, 213, 214, 218, 223, 226, 229, 228, 231, 230, 228, 32.41577 + 232, 241, 247, 246, 255, 255, 255, 255, 254, 252, 251, 248, 252, 255, 255, 255, 32.41578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 249, 251, 32.41580 + 250, 255, 255, 252, 239, 237, 239, 242, 237, 233, 229, 227, 228, 227, 226, 224, 32.41581 + 224, 224, 226, 227, 227, 226, 225, 226, 222, 217, 208, 199, 191, 181, 171, 163, 32.41582 + 147, 144, 141, 138, 139, 138, 137, 134, 139, 150, 162, 170, 178, 190, 198, 202, 32.41583 + 216, 221, 216, 214, 219, 215, 207, 210, 213, 213, 213, 215, 218, 222, 224, 226, 32.41584 + 226, 228, 228, 230, 237, 243, 237, 224, 238, 245, 255, 255, 254, 252, 250, 245, 32.41585 + 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41587 + 255, 255, 250, 252, 243, 255, 255, 252, 243, 242, 247, 249, 235, 230, 227, 225, 32.41588 + 227, 226, 226, 224, 219, 220, 222, 225, 229, 232, 235, 237, 237, 233, 229, 226, 32.41589 + 223, 217, 210, 204, 193, 196, 196, 192, 186, 183, 187, 192, 198, 206, 211, 211, 32.41590 + 212, 217, 220, 219, 215, 219, 215, 213, 220, 217, 212, 216, 212, 211, 213, 216, 32.41591 + 219, 222, 223, 225, 225, 227, 228, 232, 239, 239, 222, 199, 193, 208, 227, 242, 32.41592 + 249, 255, 255, 252, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41594 + 255, 255, 255, 255, 255, 255, 251, 253, 249, 255, 255, 255, 231, 248, 247, 242, 32.41595 + 238, 235, 226, 219, 221, 227, 225, 217, 231, 226, 221, 222, 228, 235, 240, 241, 32.41596 + 247, 243, 236, 229, 227, 224, 215, 204, 200, 205, 206, 196, 188, 192, 201, 206, 32.41597 + 214, 214, 213, 213, 214, 218, 221, 223, 220, 221, 219, 217, 217, 217, 212, 204, 32.41598 + 217, 215, 215, 215, 218, 221, 225, 227, 217, 234, 231, 232, 251, 245, 215, 200, 32.41599 + 206, 196, 219, 245, 255, 255, 246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 32.41600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 249, 255, 255, 254, 32.41602 + 231, 244, 243, 239, 242, 239, 230, 221, 221, 225, 224, 219, 220, 217, 219, 223, 32.41603 + 231, 237, 240, 240, 233, 233, 231, 228, 227, 227, 223, 215, 206, 208, 207, 203, 32.41604 + 198, 200, 206, 213, 214, 213, 213, 213, 214, 216, 218, 219, 219, 221, 221, 219, 32.41605 + 220, 221, 216, 209, 214, 214, 214, 215, 217, 221, 224, 226, 227, 237, 227, 222, 32.41606 + 237, 235, 212, 201, 208, 196, 206, 219, 241, 255, 251, 255, 253, 252, 255, 255, 32.41607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 32.41609 + 250, 255, 255, 255, 231, 241, 239, 235, 247, 245, 238, 229, 225, 225, 225, 222, 32.41610 + 216, 216, 220, 226, 233, 238, 237, 235, 233, 236, 236, 232, 228, 226, 222, 215, 32.41611 + 209, 206, 205, 208, 206, 202, 206, 215, 207, 208, 209, 210, 212, 214, 215, 216, 32.41612 + 216, 219, 220, 219, 220, 222, 219, 213, 219, 219, 219, 220, 223, 226, 229, 231, 32.41613 + 235, 239, 228, 221, 233, 232, 214, 201, 207, 197, 197, 193, 221, 255, 255, 254, 32.41614 + 254, 253, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41616 + 255, 255, 251, 253, 250, 255, 255, 255, 231, 239, 235, 232, 247, 247, 245, 239, 32.41617 + 233, 228, 225, 224, 221, 220, 222, 226, 231, 233, 231, 228, 230, 235, 236, 230, 32.41618 + 225, 222, 217, 213, 212, 201, 200, 209, 209, 199, 199, 209, 199, 201, 204, 207, 32.41619 + 210, 212, 213, 214, 213, 217, 218, 217, 218, 220, 218, 213, 221, 221, 221, 223, 32.41620 + 225, 228, 230, 232, 229, 232, 228, 226, 234, 235, 218, 199, 206, 203, 199, 184, 32.41621 + 210, 255, 255, 248, 254, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41623 + 255, 255, 255, 255, 255, 255, 251, 253, 251, 255, 255, 255, 233, 237, 232, 230, 32.41624 + 242, 244, 246, 246, 241, 233, 227, 225, 225, 221, 220, 220, 223, 225, 224, 222, 32.41625 + 218, 224, 226, 222, 221, 220, 217, 214, 212, 202, 201, 210, 208, 198, 197, 205, 32.41626 + 201, 202, 204, 206, 208, 210, 210, 210, 213, 218, 220, 218, 218, 219, 217, 213, 32.41627 + 216, 217, 217, 218, 220, 222, 223, 224, 221, 221, 222, 224, 231, 237, 225, 204, 32.41628 + 214, 212, 206, 182, 199, 248, 255, 247, 255, 254, 253, 253, 255, 255, 255, 255, 32.41629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 251, 255, 255, 255, 32.41631 + 235, 237, 231, 230, 235, 236, 240, 246, 246, 238, 232, 230, 226, 221, 217, 215, 32.41632 + 217, 220, 220, 218, 215, 219, 218, 213, 210, 209, 206, 201, 202, 197, 198, 201, 32.41633 + 198, 191, 192, 200, 207, 206, 206, 206, 206, 206, 206, 206, 214, 220, 223, 221, 32.41634 + 220, 221, 220, 217, 217, 218, 218, 219, 219, 220, 220, 220, 225, 218, 220, 223, 32.41635 + 228, 240, 237, 215, 222, 219, 216, 188, 193, 233, 250, 255, 255, 255, 254, 253, 32.41636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 32.41638 + 251, 255, 255, 255, 237, 238, 231, 231, 231, 228, 231, 240, 246, 242, 238, 237, 32.41639 + 234, 228, 223, 220, 220, 220, 217, 216, 215, 214, 208, 202, 200, 199, 195, 188, 32.41640 + 191, 194, 197, 195, 191, 190, 195, 200, 201, 199, 199, 198, 199, 201, 202, 204, 32.41641 + 211, 218, 223, 221, 220, 222, 223, 221, 223, 223, 223, 223, 222, 222, 221, 220, 32.41642 + 224, 216, 222, 228, 229, 241, 239, 213, 209, 211, 217, 195, 190, 215, 239, 255, 32.41643 + 255, 255, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41645 + 255, 251, 251, 253, 251, 254, 255, 255, 239, 239, 231, 232, 229, 223, 224, 235, 32.41646 + 244, 244, 242, 243, 245, 239, 234, 229, 226, 222, 216, 213, 203, 201, 195, 192, 32.41647 + 195, 199, 197, 191, 188, 196, 202, 196, 191, 195, 204, 207, 189, 188, 188, 189, 32.41648 + 192, 197, 201, 204, 206, 214, 219, 219, 219, 222, 223, 222, 221, 221, 220, 220, 32.41649 + 219, 217, 216, 215, 210, 205, 218, 228, 227, 234, 225, 192, 181, 190, 209, 198, 32.41650 + 188, 197, 220, 255, 255, 255, 255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 32.41651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41652 + 255, 255, 255, 255, 255, 250, 249, 250, 252, 255, 255, 253, 238, 234, 237, 232, 32.41653 + 228, 226, 227, 233, 237, 237, 240, 245, 248, 243, 240, 237, 235, 232, 227, 224, 32.41654 + 210, 209, 206, 204, 202, 200, 198, 195, 193, 198, 206, 211, 213, 211, 209, 205, 32.41655 + 185, 193, 200, 198, 197, 199, 202, 203, 216, 217, 220, 222, 223, 223, 221, 220, 32.41656 + 219, 218, 217, 215, 213, 210, 207, 206, 206, 217, 211, 219, 227, 224, 217, 189, 32.41657 + 153, 158, 175, 205, 206, 211, 204, 245, 255, 255, 253, 246, 251, 251, 255, 255, 32.41658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 249, 250, 252, 255, 255, 254, 32.41660 + 239, 235, 238, 232, 226, 223, 223, 227, 230, 229, 231, 236, 240, 238, 237, 236, 32.41661 + 236, 234, 229, 226, 217, 216, 212, 210, 209, 208, 207, 205, 206, 208, 212, 215, 32.41662 + 215, 215, 213, 212, 198, 204, 207, 204, 201, 204, 208, 210, 219, 220, 222, 223, 32.41663 + 222, 221, 219, 217, 218, 217, 215, 213, 211, 209, 208, 207, 206, 217, 211, 218, 32.41664 + 227, 226, 223, 199, 161, 139, 135, 167, 187, 208, 198, 228, 255, 255, 255, 249, 32.41665 + 254, 253, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 250, 249, 250, 32.41667 + 251, 255, 255, 255, 241, 237, 239, 231, 228, 224, 223, 226, 227, 226, 227, 231, 32.41668 + 237, 237, 239, 240, 241, 240, 237, 235, 225, 224, 220, 218, 217, 216, 216, 215, 32.41669 + 217, 216, 216, 215, 215, 215, 216, 217, 211, 215, 215, 209, 206, 210, 214, 215, 32.41670 + 221, 221, 221, 221, 219, 217, 215, 213, 217, 215, 212, 210, 209, 209, 210, 211, 32.41671 + 208, 218, 211, 219, 227, 228, 229, 209, 183, 139, 110, 134, 168, 213, 203, 210, 32.41672 + 254, 255, 255, 249, 254, 253, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.41674 + 253, 250, 249, 250, 251, 254, 255, 255, 243, 238, 239, 231, 229, 225, 223, 225, 32.41675 + 226, 224, 225, 230, 236, 235, 237, 238, 239, 240, 240, 240, 234, 230, 225, 222, 32.41676 + 222, 221, 220, 219, 219, 218, 216, 216, 216, 217, 218, 218, 213, 217, 217, 212, 32.41677 + 210, 213, 216, 215, 217, 217, 217, 216, 215, 213, 211, 210, 214, 212, 208, 206, 32.41678 + 205, 207, 210, 212, 209, 217, 210, 217, 223, 224, 228, 215, 203, 163, 124, 122, 32.41679 + 148, 213, 212, 201, 245, 255, 255, 248, 251, 251, 246, 255, 255, 255, 255, 255, 32.41680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41681 + 255, 255, 255, 253, 253, 250, 249, 250, 252, 254, 255, 254, 242, 239, 240, 231, 32.41682 + 225, 220, 218, 219, 220, 219, 221, 226, 230, 229, 229, 227, 227, 229, 232, 235, 32.41683 + 236, 232, 227, 223, 222, 219, 217, 217, 216, 216, 217, 218, 218, 218, 218, 218, 32.41684 + 211, 216, 218, 215, 214, 216, 216, 213, 210, 210, 210, 210, 210, 209, 208, 208, 32.41685 + 211, 209, 205, 202, 202, 205, 209, 211, 208, 216, 208, 216, 219, 216, 223, 213, 32.41686 + 197, 180, 151, 127, 131, 206, 216, 200, 235, 253, 255, 250, 250, 251, 246, 247, 32.41687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41688 + 255, 255, 255, 255, 255, 255, 254, 253, 253, 250, 249, 250, 253, 253, 255, 251, 32.41689 + 240, 239, 240, 231, 227, 222, 219, 219, 220, 218, 221, 226, 227, 226, 226, 224, 32.41690 + 222, 223, 227, 230, 234, 231, 227, 224, 222, 219, 215, 212, 215, 218, 219, 220, 32.41691 + 221, 221, 220, 219, 211, 216, 218, 216, 216, 218, 215, 211, 205, 205, 205, 205, 32.41692 + 205, 206, 206, 206, 208, 206, 203, 200, 200, 203, 206, 209, 204, 212, 207, 216, 32.41693 + 217, 210, 217, 209, 189, 184, 172, 143, 130, 199, 219, 208, 230, 254, 255, 253, 32.41694 + 252, 251, 247, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 253, 250, 249, 250, 32.41696 + 253, 252, 254, 247, 237, 237, 240, 232, 231, 225, 221, 220, 219, 217, 219, 223, 32.41697 + 221, 223, 227, 226, 223, 222, 224, 226, 227, 226, 224, 224, 222, 219, 216, 213, 32.41698 + 217, 218, 218, 218, 217, 218, 217, 216, 215, 217, 216, 212, 212, 213, 212, 207, 32.41699 + 204, 204, 204, 203, 203, 204, 204, 204, 206, 205, 203, 201, 201, 202, 205, 207, 32.41700 + 199, 209, 207, 218, 218, 209, 214, 207, 197, 179, 174, 164, 146, 200, 219, 217, 32.41701 + 223, 251, 255, 254, 252, 251, 248, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.41702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 253, 32.41703 + 253, 250, 249, 250, 255, 252, 253, 247, 237, 239, 242, 233, 231, 224, 220, 218, 32.41704 + 215, 211, 212, 217, 212, 217, 224, 225, 223, 220, 219, 219, 225, 225, 226, 227, 32.41705 + 227, 224, 220, 216, 221, 219, 217, 214, 215, 214, 213, 213, 217, 217, 212, 206, 32.41706 + 205, 208, 207, 203, 206, 205, 204, 203, 203, 203, 203, 204, 205, 204, 202, 201, 32.41707 + 200, 201, 203, 204, 194, 206, 207, 220, 219, 208, 214, 210, 212, 173, 166, 174, 32.41708 + 159, 198, 212, 217, 217, 247, 255, 252, 249, 251, 245, 245, 255, 255, 255, 255, 32.41709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41710 + 255, 254, 254, 253, 253, 252, 251, 251, 249, 255, 247, 210, 230, 246, 237, 245, 32.41711 + 237, 230, 225, 223, 226, 225, 219, 213, 218, 217, 216, 217, 218, 218, 215, 213, 32.41712 + 216, 218, 219, 217, 215, 212, 212, 213, 212, 211, 211, 212, 213, 212, 209, 206, 32.41713 + 212, 207, 205, 207, 207, 202, 203, 208, 205, 204, 203, 201, 200, 199, 198, 198, 32.41714 + 205, 204, 203, 203, 203, 202, 200, 197, 199, 208, 210, 205, 205, 212, 210, 204, 32.41715 + 204, 187, 160, 182, 157, 127, 226, 224, 231, 255, 255, 252, 252, 253, 248, 246, 32.41716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41717 + 255, 255, 255, 254, 253, 254, 253, 253, 253, 252, 252, 252, 248, 255, 238, 207, 32.41718 + 230, 247, 241, 248, 236, 231, 225, 223, 223, 221, 217, 212, 215, 214, 212, 213, 32.41719 + 216, 218, 219, 219, 216, 217, 218, 216, 213, 211, 210, 211, 211, 210, 210, 210, 32.41720 + 211, 210, 207, 204, 207, 202, 201, 203, 202, 198, 198, 202, 202, 201, 201, 200, 32.41721 + 200, 200, 201, 201, 204, 202, 200, 199, 200, 200, 199, 197, 199, 207, 209, 203, 32.41722 + 204, 210, 209, 203, 194, 189, 168, 170, 157, 126, 207, 226, 232, 255, 255, 253, 32.41723 + 253, 255, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41724 + 255, 255, 255, 254, 254, 254, 254, 254, 253, 254, 253, 253, 253, 252, 252, 252, 32.41725 + 251, 255, 226, 205, 224, 244, 241, 245, 233, 231, 228, 224, 221, 217, 214, 213, 32.41726 + 214, 211, 208, 208, 211, 214, 217, 218, 214, 216, 216, 214, 211, 208, 207, 207, 32.41727 + 209, 208, 207, 207, 208, 207, 205, 203, 205, 202, 201, 202, 201, 197, 196, 198, 32.41728 + 199, 199, 199, 199, 200, 202, 203, 204, 203, 200, 196, 195, 196, 197, 198, 197, 32.41729 + 198, 204, 206, 202, 203, 209, 209, 204, 196, 197, 177, 163, 164, 124, 169, 224, 32.41730 + 237, 255, 255, 254, 255, 255, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 32.41731 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 253, 254, 253, 253, 32.41732 + 253, 252, 252, 252, 255, 255, 216, 207, 217, 238, 240, 241, 232, 233, 232, 228, 32.41733 + 221, 216, 214, 214, 213, 210, 207, 206, 208, 210, 210, 210, 213, 215, 215, 213, 32.41734 + 209, 206, 206, 206, 208, 206, 205, 205, 206, 206, 204, 202, 202, 201, 200, 200, 32.41735 + 198, 195, 194, 194, 198, 198, 198, 199, 200, 201, 203, 204, 202, 198, 194, 192, 32.41736 + 193, 196, 198, 198, 198, 202, 204, 201, 202, 207, 207, 205, 201, 195, 177, 160, 32.41737 + 177, 124, 136, 226, 240, 255, 255, 252, 255, 255, 251, 253, 255, 255, 255, 255, 32.41738 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 32.41739 + 253, 254, 253, 253, 253, 252, 252, 252, 255, 255, 209, 212, 210, 230, 241, 243, 32.41740 + 231, 233, 233, 228, 219, 213, 211, 212, 206, 205, 205, 206, 208, 208, 207, 205, 32.41741 + 212, 213, 214, 212, 209, 206, 205, 206, 207, 205, 204, 204, 205, 205, 204, 203, 32.41742 + 200, 200, 199, 196, 195, 195, 194, 193, 201, 201, 200, 200, 200, 201, 201, 202, 32.41743 + 201, 197, 192, 190, 192, 196, 198, 200, 198, 201, 203, 202, 203, 205, 205, 204, 32.41744 + 199, 179, 165, 160, 189, 129, 127, 233, 243, 255, 255, 251, 254, 254, 249, 255, 32.41745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 32.41746 + 254, 254, 254, 254, 253, 254, 253, 253, 253, 252, 252, 252, 252, 255, 206, 219, 32.41747 + 202, 220, 240, 244, 228, 230, 230, 225, 217, 210, 207, 206, 199, 199, 201, 204, 32.41748 + 208, 209, 208, 206, 209, 211, 212, 210, 208, 206, 205, 206, 206, 204, 202, 202, 32.41749 + 203, 204, 204, 203, 203, 204, 202, 198, 197, 200, 201, 199, 203, 202, 201, 200, 32.41750 + 199, 199, 199, 200, 198, 194, 190, 189, 191, 195, 198, 199, 199, 201, 204, 205, 32.41751 + 206, 205, 203, 202, 207, 180, 164, 161, 183, 128, 137, 231, 245, 255, 255, 250, 32.41752 + 253, 253, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 32.41753 + 254, 254, 254, 254, 254, 254, 254, 254, 253, 254, 253, 253, 253, 252, 252, 252, 32.41754 + 252, 255, 208, 226, 193, 205, 230, 238, 229, 229, 228, 224, 217, 210, 205, 203, 32.41755 + 200, 199, 199, 201, 205, 208, 208, 208, 205, 207, 208, 208, 206, 204, 204, 205, 32.41756 + 203, 201, 199, 199, 200, 202, 202, 201, 203, 204, 201, 195, 195, 201, 204, 202, 32.41757 + 202, 201, 200, 200, 199, 199, 200, 200, 194, 191, 188, 187, 190, 193, 195, 196, 32.41758 + 200, 202, 206, 209, 208, 205, 201, 200, 209, 190, 173, 163, 167, 135, 174, 240, 32.41759 + 249, 255, 255, 251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 32.41760 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 253, 254, 253, 253, 32.41761 + 253, 252, 252, 252, 255, 255, 213, 231, 185, 192, 220, 229, 232, 231, 229, 225, 32.41762 + 220, 213, 207, 203, 205, 202, 199, 199, 201, 204, 206, 206, 202, 204, 206, 205, 32.41763 + 204, 203, 203, 204, 201, 199, 197, 196, 198, 200, 200, 200, 194, 196, 192, 185, 32.41764 + 186, 193, 198, 196, 201, 200, 199, 199, 199, 200, 201, 201, 190, 188, 186, 186, 32.41765 + 189, 192, 193, 194, 201, 203, 207, 211, 210, 205, 199, 198, 196, 192, 177, 161, 32.41766 + 158, 151, 218, 255, 251, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 32.41767 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.41768 + 253, 253, 253, 254, 254, 254, 254, 255, 254, 255, 237, 232, 155, 196, 215, 217, 32.41769 + 218, 229, 221, 214, 220, 211, 200, 210, 200, 201, 200, 197, 193, 193, 196, 200, 32.41770 + 201, 206, 208, 206, 202, 201, 202, 202, 201, 194, 190, 192, 192, 190, 191, 193, 32.41771 + 189, 193, 195, 196, 196, 196, 198, 200, 199, 199, 198, 198, 195, 192, 193, 194, 32.41772 + 185, 187, 189, 189, 189, 191, 197, 202, 209, 200, 198, 205, 207, 200, 197, 201, 32.41773 + 195, 187, 177, 162, 159, 238, 255, 252, 255, 255, 254, 254, 254, 255, 255, 255, 32.41774 + 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.41775 + 254, 254, 254, 254, 253, 253, 253, 254, 254, 253, 254, 254, 255, 255, 249, 225, 32.41776 + 143, 187, 214, 216, 218, 224, 221, 217, 217, 210, 204, 207, 198, 199, 198, 195, 32.41777 + 192, 192, 195, 198, 194, 197, 199, 200, 200, 203, 206, 207, 202, 198, 196, 196, 32.41778 + 193, 189, 188, 192, 193, 194, 196, 197, 196, 197, 198, 200, 196, 196, 195, 195, 32.41779 + 194, 192, 191, 190, 185, 186, 188, 188, 189, 192, 197, 202, 203, 198, 197, 202, 32.41780 + 204, 202, 200, 200, 193, 193, 172, 167, 155, 248, 255, 251, 255, 254, 253, 254, 32.41781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 32.41782 + 254, 254, 254, 254, 254, 254, 254, 254, 253, 253, 253, 253, 253, 253, 253, 254, 32.41783 + 255, 252, 255, 230, 132, 184, 207, 211, 217, 215, 221, 222, 214, 210, 209, 203, 32.41784 + 197, 197, 196, 194, 191, 191, 193, 195, 201, 199, 197, 197, 199, 199, 199, 199, 32.41785 + 198, 198, 199, 200, 195, 189, 189, 194, 194, 196, 198, 198, 197, 196, 198, 200, 32.41786 + 192, 192, 192, 192, 193, 192, 190, 185, 184, 185, 187, 188, 189, 193, 197, 201, 32.41787 + 199, 201, 200, 199, 200, 202, 200, 196, 192, 196, 166, 171, 157, 255, 253, 251, 32.41788 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41789 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 253, 254, 253, 253, 32.41790 + 253, 252, 252, 253, 252, 249, 255, 249, 125, 191, 196, 203, 214, 208, 220, 225, 32.41791 + 210, 209, 213, 201, 196, 195, 194, 192, 191, 191, 191, 192, 202, 197, 195, 198, 32.41792 + 200, 198, 194, 192, 189, 192, 198, 201, 196, 191, 192, 200, 196, 198, 199, 198, 32.41793 + 197, 196, 197, 198, 188, 190, 190, 190, 192, 193, 190, 184, 185, 185, 186, 188, 32.41794 + 190, 194, 197, 199, 201, 207, 206, 198, 196, 200, 198, 189, 189, 190, 168, 169, 32.41795 + 176, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 32.41797 + 253, 254, 253, 253, 252, 251, 251, 252, 252, 252, 255, 255, 119, 196, 186, 200, 32.41798 + 209, 203, 216, 222, 208, 208, 212, 200, 196, 195, 193, 192, 192, 192, 191, 191, 32.41799 + 188, 185, 187, 196, 201, 198, 194, 193, 186, 189, 196, 199, 196, 190, 192, 199, 32.41800 + 198, 200, 200, 199, 197, 195, 196, 197, 187, 191, 193, 191, 192, 195, 192, 185, 32.41801 + 187, 186, 187, 189, 192, 195, 197, 198, 200, 207, 206, 198, 195, 199, 197, 190, 32.41802 + 185, 180, 177, 167, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41804 + 255, 255, 254, 254, 253, 254, 253, 253, 252, 251, 250, 251, 255, 255, 252, 255, 32.41805 + 131, 193, 184, 199, 203, 203, 210, 214, 208, 207, 208, 203, 197, 196, 194, 194, 32.41806 + 194, 194, 193, 191, 186, 182, 185, 194, 196, 189, 185, 188, 189, 190, 194, 198, 32.41807 + 195, 190, 190, 196, 198, 200, 200, 198, 195, 193, 194, 195, 184, 192, 195, 190, 32.41808 + 189, 194, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 32.41812 + 255, 255, 250, 255, 170, 190, 190, 192, 197, 205, 205, 205, 209, 205, 202, 206, 32.41813 + 199, 197, 195, 196, 197, 197, 194, 192, 193, 187, 188, 193, 191, 182, 181, 188, 32.41814 + 192, 190, 192, 197, 197, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 254, 254, 32.41821 + 253, 253, 252, 252, 245, 248, 255, 243, 251, 241, 247, 249, 250, 236, 239, 249, 32.41822 + 247, 255, 255, 244, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41827 + 255, 255, 255, 255, 255, 255, 254, 254, 255, 255, 254, 254, 254, 254, 254, 254, 32.41828 + 253, 253, 253, 253, 252, 252, 251, 250, 251, 248, 249, 251, 246, 253, 251, 225, 32.41829 + 253, 250, 253, 252, 249, 254, 255, 250, 253, 253, 254, 255, 254, 254, 254, 254, 32.41830 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41834 + 255, 255, 255, 255, 254, 253, 253, 253, 254, 254, 253, 253, 253, 253, 253, 253, 32.41835 + 253, 252, 252, 253, 251, 252, 252, 251, 250, 250, 249, 248, 250, 246, 238, 236, 32.41836 + 195, 229, 225, 191, 203, 234, 252, 252, 244, 236, 238, 248, 251, 252, 252, 254, 32.41837 + 254, 254, 253, 253, 254, 254, 253, 254, 254, 255, 254, 254, 255, 255, 255, 255, 32.41838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41841 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 252, 252, 252, 252, 252, 252, 32.41842 + 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 250, 249, 248, 247, 247, 247, 32.41843 + 232, 232, 217, 201, 119, 167, 179, 156, 114, 180, 228, 237, 229, 214, 215, 240, 32.41844 + 243, 245, 246, 249, 251, 253, 253, 253, 253, 253, 253, 253, 254, 254, 254, 254, 32.41845 + 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41848 + 255, 255, 255, 255, 255, 249, 255, 244, 255, 243, 249, 241, 236, 242, 249, 243, 32.41849 + 242, 242, 249, 250, 246, 228, 234, 238, 212, 219, 250, 238, 240, 237, 246, 250, 32.41850 + 231, 228, 230, 193, 204, 160, 164, 140, 148, 180, 154, 174, 133, 163, 186, 170, 32.41851 + 140, 147, 134, 169, 191, 211, 195, 219, 250, 242, 249, 245, 245, 249, 241, 254, 32.41852 + 246, 244, 239, 251, 251, 246, 247, 254, 255, 252, 252, 255, 255, 255, 255, 255, 32.41853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41855 + 254, 253, 254, 255, 254, 254, 253, 254, 255, 248, 253, 241, 255, 249, 250, 232, 32.41856 + 224, 215, 205, 197, 198, 208, 215, 214, 196, 178, 162, 168, 173, 169, 163, 151, 32.41857 + 122, 142, 181, 188, 160, 148, 149, 143, 121, 122, 141, 136, 114, 162, 163, 186, 32.41858 + 165, 156, 129, 119, 106, 124, 107, 147, 130, 148, 138, 140, 139, 173, 191, 239, 32.41859 + 223, 225, 194, 151, 155, 228, 253, 245, 252, 252, 255, 255, 254, 249, 245, 246, 32.41860 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41862 + 255, 255, 255, 254, 252, 252, 252, 253, 253, 253, 252, 253, 254, 248, 252, 242, 32.41863 + 252, 252, 247, 216, 227, 202, 178, 169, 165, 181, 182, 173, 178, 170, 158, 170, 32.41864 + 195, 178, 143, 138, 94, 136, 194, 185, 163, 168, 158, 168, 134, 154, 156, 153, 32.41865 + 94, 135, 153, 158, 169, 145, 81, 85, 79, 112, 91, 144, 132, 155, 158, 141, 32.41866 + 92, 121, 100, 150, 134, 183, 163, 112, 85, 133, 243, 243, 242, 248, 250, 248, 32.41867 + 248, 251, 252, 252, 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41869 + 255, 255, 255, 255, 255, 255, 254, 253, 252, 252, 252, 254, 253, 253, 252, 252, 32.41870 + 250, 248, 253, 244, 241, 249, 243, 207, 220, 193, 168, 166, 156, 177, 176, 160, 32.41871 + 150, 147, 162, 179, 185, 163, 129, 129, 89, 127, 172, 138, 135, 167, 142, 146, 32.41872 + 151, 149, 133, 133, 85, 110, 150, 130, 140, 143, 79, 90, 72, 102, 82, 136, 32.41873 + 119, 150, 163, 156, 107, 107, 65, 74, 85, 162, 160, 168, 104, 49, 212, 251, 32.41874 + 247, 250, 248, 244, 244, 251, 253, 251, 243, 248, 253, 255, 255, 255, 255, 255, 32.41875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41876 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 253, 253, 253, 253, 254, 32.41877 + 254, 253, 253, 253, 248, 247, 250, 239, 216, 233, 240, 215, 202, 180, 160, 168, 32.41878 + 148, 181, 188, 179, 176, 152, 183, 194, 172, 163, 147, 138, 119, 127, 155, 125, 32.41879 + 123, 143, 116, 130, 148, 121, 108, 104, 91, 88, 144, 115, 127, 150, 97, 106, 32.41880 + 75, 100, 75, 106, 137, 163, 164, 161, 133, 112, 112, 99, 101, 137, 144, 165, 32.41881 + 123, 60, 168, 210, 246, 249, 249, 249, 250, 251, 248, 241, 247, 250, 252, 252, 32.41882 + 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 253, 32.41884 + 253, 253, 254, 255, 254, 253, 253, 253, 252, 245, 242, 231, 191, 211, 228, 216, 32.41885 + 200, 178, 160, 173, 142, 185, 201, 199, 193, 150, 178, 178, 155, 169, 158, 143, 32.41886 + 127, 111, 135, 132, 111, 96, 92, 132, 158, 128, 121, 99, 94, 67, 117, 94, 32.41887 + 137, 148, 101, 113, 88, 112, 95, 93, 146, 160, 148, 142, 113, 87, 123, 117, 32.41888 + 112, 125, 157, 135, 125, 122, 119, 138, 185, 196, 215, 235, 244, 246, 248, 253, 32.41889 + 255, 255, 255, 253, 250, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.41891 + 254, 254, 254, 253, 252, 252, 252, 253, 253, 252, 252, 251, 255, 244, 242, 239, 32.41892 + 181, 189, 196, 183, 180, 160, 149, 170, 134, 182, 200, 197, 191, 166, 186, 172, 32.41893 + 163, 179, 154, 148, 109, 100, 122, 131, 101, 89, 122, 161, 154, 135, 122, 88, 32.41894 + 81, 72, 103, 93, 150, 135, 96, 118, 102, 119, 122, 106, 151, 146, 145, 154, 32.41895 + 123, 123, 141, 154, 116, 155, 176, 165, 152, 138, 94, 103, 113, 127, 157, 184, 32.41896 + 192, 194, 214, 242, 242, 247, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41898 + 255, 255, 254, 254, 254, 254, 254, 255, 251, 251, 252, 253, 252, 251, 250, 249, 32.41899 + 255, 244, 248, 250, 186, 177, 166, 143, 131, 119, 118, 155, 123, 177, 191, 185, 32.41900 + 164, 172, 193, 162, 157, 158, 113, 121, 86, 94, 110, 111, 86, 108, 168, 182, 32.41901 + 178, 164, 130, 86, 77, 97, 107, 102, 156, 124, 96, 124, 105, 108, 128, 112, 32.41902 + 148, 120, 122, 146, 112, 142, 124, 148, 120, 175, 140, 188, 170, 92, 75, 85, 32.41903 + 93, 100, 120, 135, 126, 121, 152, 198, 206, 220, 237, 251, 254, 254, 248, 243, 32.41904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41905 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 253, 252, 250, 255, 255, 255, 32.41906 + 255, 254, 252, 251, 253, 241, 242, 238, 206, 181, 163, 141, 117, 95, 123, 151, 32.41907 + 104, 172, 172, 148, 172, 186, 177, 139, 140, 113, 102, 85, 88, 92, 75, 109, 32.41908 + 125, 160, 169, 169, 162, 153, 105, 71, 77, 104, 91, 149, 191, 121, 139, 124, 32.41909 + 87, 108, 101, 82, 134, 145, 125, 140, 129, 143, 156, 165, 125, 147, 141, 173, 32.41910 + 143, 108, 83, 67, 80, 70, 91, 124, 116, 129, 124, 148, 137, 141, 178, 224, 32.41911 + 252, 242, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 253, 252, 32.41913 + 255, 255, 255, 254, 250, 248, 247, 245, 251, 237, 231, 216, 191, 180, 156, 114, 32.41914 + 86, 93, 83, 105, 106, 132, 115, 171, 176, 151, 119, 89, 75, 69, 77, 53, 32.41915 + 84, 81, 111, 171, 186, 171, 152, 167, 149, 160, 135, 104, 123, 155, 153, 197, 32.41916 + 150, 143, 163, 114, 57, 50, 47, 75, 127, 143, 139, 153, 146, 140, 141, 135, 32.41917 + 125, 154, 146, 157, 118, 92, 76, 62, 71, 57, 63, 86, 92, 133, 144, 166, 32.41918 + 155, 136, 134, 156, 192, 241, 253, 238, 253, 255, 255, 255, 255, 255, 255, 255, 32.41919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 255, 32.41920 + 254, 253, 252, 251, 254, 252, 251, 251, 251, 252, 253, 253, 234, 227, 219, 195, 32.41921 + 176, 181, 154, 97, 65, 82, 63, 82, 96, 108, 94, 173, 157, 127, 93, 86, 32.41922 + 61, 73, 84, 46, 91, 73, 124, 159, 166, 131, 105, 132, 128, 161, 167, 136, 32.41923 + 159, 174, 172, 192, 141, 151, 139, 74, 42, 35, 30, 85, 145, 158, 161, 162, 32.41924 + 159, 136, 141, 130, 140, 160, 146, 138, 107, 93, 77, 56, 62, 61, 71, 84, 32.41925 + 85, 132, 149, 171, 147, 125, 121, 124, 142, 244, 254, 243, 250, 255, 255, 255, 32.41926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41927 + 253, 254, 254, 254, 254, 253, 252, 251, 255, 251, 249, 251, 252, 252, 250, 250, 32.41928 + 214, 213, 209, 187, 165, 170, 151, 103, 70, 61, 67, 93, 78, 107, 124, 141, 32.41929 + 109, 123, 88, 83, 59, 77, 81, 47, 104, 87, 128, 103, 105, 98, 81, 99, 32.41930 + 101, 142, 169, 148, 168, 154, 147, 150, 156, 130, 85, 33, 31, 48, 68, 128, 32.41931 + 175, 179, 176, 157, 153, 130, 157, 157, 164, 157, 136, 126, 120, 112, 91, 67, 32.41932 + 64, 73, 91, 97, 76, 109, 135, 173, 156, 112, 124, 116, 125, 225, 249, 251, 32.41933 + 250, 254, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41934 + 255, 255, 255, 255, 253, 254, 254, 254, 254, 253, 252, 250, 254, 249, 241, 241, 32.41935 + 240, 231, 224, 221, 202, 196, 197, 179, 146, 134, 126, 102, 81, 43, 55, 94, 32.41936 + 73, 102, 131, 113, 81, 147, 95, 60, 45, 60, 68, 58, 86, 76, 108, 67, 32.41937 + 74, 84, 68, 70, 79, 114, 146, 147, 165, 139, 141, 144, 133, 82, 47, 26, 32.41938 + 21, 56, 118, 180, 177, 182, 177, 154, 148, 131, 169, 179, 178, 150, 130, 121, 32.41939 + 125, 118, 107, 102, 90, 84, 93, 98, 71, 92, 121, 175, 189, 112, 125, 104, 32.41940 + 108, 164, 215, 250, 254, 255, 252, 250, 253, 255, 255, 255, 255, 255, 255, 255, 32.41941 + 255, 255, 255, 255, 255, 255, 255, 254, 253, 254, 254, 254, 254, 253, 252, 250, 32.41942 + 245, 228, 217, 217, 215, 206, 198, 196, 194, 180, 178, 162, 119, 94, 90, 79, 32.41943 + 82, 47, 35, 78, 91, 88, 104, 113, 66, 154, 99, 55, 55, 59, 76, 73, 32.41944 + 79, 62, 74, 56, 60, 65, 50, 55, 77, 102, 120, 135, 147, 129, 139, 142, 32.41945 + 83, 32, 25, 45, 52, 96, 164, 196, 156, 168, 167, 161, 155, 146, 175, 184, 32.41946 + 178, 149, 144, 122, 119, 109, 114, 133, 124, 105, 109, 122, 99, 108, 114, 151, 32.41947 + 180, 129, 157, 132, 108, 108, 177, 245, 250, 254, 253, 248, 250, 255, 255, 255, 32.41948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 254, 254, 254, 32.41949 + 254, 252, 251, 249, 232, 210, 194, 193, 193, 186, 181, 182, 182, 162, 154, 137, 32.41950 + 98, 77, 73, 59, 64, 55, 40, 76, 101, 84, 93, 106, 54, 115, 72, 47, 32.41951 + 63, 56, 84, 65, 97, 80, 63, 64, 57, 61, 55, 62, 77, 106, 105, 122, 32.41952 + 116, 108, 107, 94, 46, 23, 32, 71, 104, 145, 175, 164, 136, 148, 139, 153, 32.41953 + 151, 158, 176, 182, 178, 160, 169, 135, 129, 117, 115, 126, 124, 116, 124, 136, 32.41954 + 113, 121, 112, 130, 158, 153, 172, 163, 122, 102, 145, 198, 230, 245, 254, 249, 32.41955 + 247, 251, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.41956 + 253, 254, 254, 253, 253, 252, 251, 248, 238, 210, 187, 182, 180, 173, 168, 170, 32.41957 + 172, 149, 136, 119, 91, 82, 76, 53, 39, 54, 61, 86, 91, 87, 105, 84, 32.41958 + 79, 94, 51, 40, 61, 53, 97, 64, 78, 83, 56, 63, 51, 63, 60, 54, 32.41959 + 70, 109, 100, 114, 94, 92, 75, 42, 30, 48, 65, 94, 127, 152, 152, 123, 32.41960 + 127, 131, 108, 129, 131, 156, 172, 180, 181, 171, 189, 151, 151, 138, 116, 100, 32.41961 + 96, 102, 114, 113, 86, 108, 115, 137, 176, 171, 141, 146, 125, 124, 118, 121, 32.41962 + 208, 234, 253, 251, 245, 249, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41963 + 255, 255, 254, 255, 247, 252, 255, 254, 249, 247, 253, 241, 233, 219, 193, 168, 32.41964 + 160, 168, 176, 177, 172, 139, 138, 139, 103, 74, 68, 58, 44, 55, 70, 83, 32.41965 + 92, 93, 87, 79, 73, 71, 58, 58, 71, 48, 70, 58, 74, 64, 49, 42, 32.41966 + 52, 67, 69, 63, 73, 92, 83, 97, 87, 73, 31, 31, 49, 63, 86, 110, 32.41967 + 123, 123, 113, 105, 114, 113, 116, 117, 125, 152, 171, 167, 181, 172, 172, 180, 32.41968 + 172, 141, 109, 94, 106, 96, 98, 108, 108, 100, 104, 117, 154, 160, 143, 120, 32.41969 + 108, 144, 115, 93, 142, 238, 245, 253, 241, 246, 252, 253, 255, 255, 255, 255, 32.41970 + 255, 255, 255, 255, 255, 255, 255, 255, 251, 253, 254, 254, 250, 249, 253, 240, 32.41971 + 236, 205, 177, 171, 178, 181, 179, 179, 161, 162, 150, 131, 117, 100, 81, 73, 32.41972 + 46, 57, 69, 78, 81, 79, 75, 70, 77, 72, 65, 66, 73, 63, 74, 71, 32.41973 + 65, 62, 55, 53, 63, 72, 70, 63, 92, 95, 84, 81, 68, 57, 42, 48, 32.41974 + 72, 82, 96, 105, 103, 97, 90, 86, 92, 94, 103, 115, 130, 157, 169, 158, 32.41975 + 183, 184, 188, 186, 167, 137, 113, 101, 106, 106, 108, 112, 116, 119, 121, 123, 32.41976 + 113, 117, 114, 89, 82, 111, 102, 97, 130, 161, 252, 242, 248, 254, 246, 255, 32.41977 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 250, 32.41978 + 251, 253, 245, 234, 217, 176, 153, 170, 192, 190, 174, 166, 123, 154, 131, 92, 32.41979 + 98, 98, 76, 67, 61, 69, 76, 81, 78, 73, 69, 69, 79, 73, 75, 80, 32.41980 + 78, 89, 79, 89, 67, 66, 62, 63, 70, 76, 75, 69, 75, 66, 69, 62, 32.41981 + 56, 54, 73, 80, 78, 82, 85, 79, 68, 61, 60, 62, 101, 106, 122, 143, 32.41982 + 162, 185, 191, 176, 183, 181, 172, 158, 147, 141, 135, 129, 123, 123, 116, 106, 32.41983 + 109, 117, 119, 114, 98, 99, 108, 83, 82, 91, 93, 96, 117, 113, 223, 242, 32.41984 + 250, 255, 248, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.41985 + 255, 253, 253, 247, 253, 252, 229, 218, 184, 157, 147, 170, 194, 194, 173, 156, 32.41986 + 124, 149, 130, 92, 93, 103, 92, 76, 76, 77, 81, 84, 84, 79, 75, 74, 32.41987 + 78, 74, 87, 99, 92, 113, 88, 105, 82, 77, 69, 66, 70, 76, 78, 78, 32.41988 + 77, 60, 74, 66, 62, 54, 76, 70, 88, 87, 83, 76, 70, 71, 79, 86, 32.41989 + 114, 118, 133, 147, 156, 169, 172, 159, 175, 167, 151, 141, 153, 169, 164, 147, 32.41990 + 132, 121, 103, 91, 91, 99, 103, 104, 84, 76, 96, 75, 83, 73, 69, 68, 32.41991 + 107, 128, 148, 241, 250, 244, 255, 248, 254, 254, 255, 255, 255, 255, 255, 255, 32.41992 + 255, 255, 254, 255, 253, 251, 254, 245, 253, 250, 208, 198, 168, 161, 159, 168, 32.41993 + 186, 194, 182, 167, 151, 151, 152, 135, 111, 109, 104, 80, 73, 71, 74, 86, 32.41994 + 93, 92, 89, 90, 83, 83, 103, 119, 113, 134, 107, 123, 103, 93, 82, 76, 32.41995 + 76, 77, 78, 80, 76, 59, 76, 75, 77, 67, 81, 67, 67, 63, 58, 58, 32.41996 + 64, 76, 88, 96, 140, 143, 152, 156, 150, 155, 162, 159, 170, 175, 174, 174, 32.41997 + 185, 190, 169, 138, 113, 94, 82, 84, 89, 89, 94, 105, 84, 65, 79, 67, 32.41998 + 84, 74, 63, 55, 89, 128, 99, 205, 253, 240, 255, 245, 254, 254, 255, 255, 32.41999 + 255, 255, 255, 255, 255, 255, 255, 255, 250, 250, 254, 243, 252, 246, 190, 184, 32.42000 + 167, 167, 164, 163, 172, 185, 186, 178, 162, 150, 163, 163, 121, 97, 87, 64, 32.42001 + 66, 66, 76, 95, 108, 111, 112, 116, 97, 104, 122, 140, 142, 149, 136, 144, 32.42002 + 123, 110, 97, 92, 88, 83, 78, 76, 66, 56, 65, 71, 77, 76, 83, 79, 32.42003 + 77, 74, 72, 76, 85, 97, 107, 112, 114, 117, 129, 134, 129, 139, 156, 163, 32.42004 + 182, 196, 201, 192, 183, 172, 150, 128, 98, 83, 78, 90, 93, 83, 84, 95, 32.42005 + 104, 81, 82, 72, 84, 85, 69, 64, 71, 84, 97, 142, 239, 250, 252, 247, 32.42006 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 250, 254, 239, 32.42007 + 251, 244, 180, 181, 167, 162, 160, 165, 174, 177, 174, 170, 167, 164, 168, 162, 32.42008 + 127, 90, 72, 70, 68, 74, 93, 115, 124, 123, 129, 140, 121, 130, 143, 158, 32.42009 + 170, 161, 172, 169, 147, 128, 108, 99, 96, 91, 84, 82, 81, 82, 71, 74, 32.42010 + 70, 70, 64, 74, 72, 74, 76, 78, 79, 82, 85, 88, 100, 102, 117, 130, 32.42011 + 134, 149, 170, 179, 181, 187, 187, 175, 161, 150, 136, 125, 98, 91, 86, 86, 32.42012 + 83, 76, 75, 80, 92, 83, 81, 76, 73, 85, 68, 72, 66, 56, 95, 106, 32.42013 + 189, 250, 252, 247, 254, 254, 254, 255, 255, 255, 255, 255, 255, 254, 255, 255, 32.42014 + 249, 250, 255, 235, 249, 241, 176, 181, 169, 155, 156, 178, 190, 177, 161, 156, 32.42015 + 158, 170, 155, 135, 117, 77, 57, 79, 70, 82, 107, 126, 127, 121, 130, 146, 32.42016 + 138, 150, 156, 169, 188, 169, 196, 188, 169, 141, 112, 98, 95, 93, 92, 93, 32.42017 + 70, 86, 73, 82, 77, 82, 72, 97, 79, 86, 92, 90, 82, 76, 76, 76, 32.42018 + 84, 83, 97, 111, 116, 128, 143, 147, 156, 157, 160, 164, 165, 155, 134, 116, 32.42019 + 97, 97, 87, 73, 67, 72, 78, 79, 68, 77, 86, 92, 79, 101, 85, 95, 32.42020 + 72, 63, 80, 102, 135, 242, 254, 243, 254, 254, 254, 255, 255, 255, 255, 255, 32.42021 + 254, 254, 253, 252, 251, 251, 255, 254, 236, 250, 155, 161, 161, 164, 169, 172, 32.42022 + 172, 168, 160, 151, 152, 158, 144, 124, 111, 96, 84, 88, 74, 92, 124, 148, 32.42023 + 146, 133, 131, 142, 144, 150, 172, 198, 207, 199, 192, 194, 183, 169, 147, 129, 32.42024 + 117, 109, 103, 97, 85, 83, 85, 82, 77, 83, 90, 85, 83, 81, 77, 76, 32.42025 + 77, 76, 72, 69, 79, 80, 83, 91, 104, 118, 128, 133, 134, 125, 117, 122, 32.42026 + 131, 130, 110, 90, 60, 72, 74, 68, 58, 63, 65, 65, 79, 78, 82, 88, 32.42027 + 93, 93, 98, 103, 110, 85, 67, 104, 108, 219, 251, 239, 253, 255, 255, 255, 32.42028 + 255, 255, 255, 255, 254, 254, 253, 251, 253, 251, 255, 253, 237, 247, 152, 156, 32.42029 + 160, 161, 164, 169, 170, 166, 160, 155, 142, 145, 120, 123, 111, 117, 95, 99, 32.42030 + 96, 111, 138, 161, 164, 157, 161, 173, 173, 176, 191, 212, 218, 212, 208, 212, 32.42031 + 209, 201, 189, 176, 162, 146, 128, 115, 108, 94, 89, 91, 89, 92, 90, 79, 32.42032 + 80, 77, 72, 71, 73, 73, 71, 68, 74, 79, 86, 95, 101, 104, 101, 98, 32.42033 + 122, 115, 105, 103, 103, 99, 85, 73, 67, 75, 75, 66, 59, 64, 65, 63, 32.42034 + 85, 84, 85, 92, 103, 108, 107, 102, 117, 89, 69, 82, 116, 180, 227, 242, 32.42035 + 252, 254, 255, 255, 255, 255, 255, 255, 254, 254, 252, 251, 254, 250, 254, 253, 32.42036 + 241, 243, 154, 157, 157, 154, 156, 162, 162, 153, 149, 152, 112, 130, 113, 128, 32.42037 + 104, 121, 108, 131, 130, 138, 158, 179, 187, 187, 193, 204, 206, 206, 213, 225, 32.42038 + 229, 226, 224, 229, 229, 229, 226, 224, 217, 203, 184, 171, 157, 129, 118, 123, 32.42039 + 123, 118, 106, 90, 88, 84, 79, 77, 80, 82, 82, 81, 72, 70, 64, 63, 32.42040 + 62, 63, 61, 60, 44, 47, 53, 61, 66, 69, 69, 69, 78, 79, 76, 61, 32.42041 + 59, 60, 62, 56, 64, 62, 59, 65, 84, 105, 106, 96, 109, 83, 72, 65, 32.42042 + 124, 136, 189, 235, 251, 254, 255, 255, 255, 255, 255, 255, 254, 254, 252, 251, 32.42043 + 253, 250, 253, 254, 247, 238, 159, 161, 153, 150, 151, 153, 144, 130, 130, 140, 32.42044 + 105, 118, 113, 125, 121, 131, 129, 150, 153, 159, 173, 189, 200, 204, 209, 216, 32.42045 + 222, 220, 223, 231, 234, 232, 233, 237, 237, 238, 240, 242, 241, 234, 226, 218, 32.42046 + 204, 170, 155, 162, 159, 145, 129, 114, 106, 101, 94, 93, 94, 99, 99, 99, 32.42047 + 95, 89, 80, 72, 69, 69, 70, 70, 60, 64, 74, 86, 90, 89, 87, 88, 32.42048 + 89, 85, 80, 57, 60, 55, 58, 47, 42, 42, 36, 34, 55, 83, 92, 84, 32.42049 + 92, 74, 81, 76, 121, 121, 177, 229, 245, 249, 253, 255, 255, 255, 255, 255, 32.42050 + 254, 254, 252, 251, 253, 249, 252, 254, 245, 221, 153, 156, 153, 153, 155, 149, 32.42051 + 132, 116, 119, 132, 127, 110, 106, 111, 154, 153, 151, 144, 164, 168, 180, 197, 32.42052 + 209, 213, 215, 217, 220, 221, 225, 232, 236, 236, 237, 240, 243, 244, 244, 244, 32.42053 + 242, 237, 231, 226, 225, 195, 183, 186, 176, 159, 146, 135, 125, 118, 111, 108, 32.42054 + 110, 113, 115, 115, 106, 106, 106, 106, 104, 98, 91, 85, 73, 70, 72, 81, 32.42055 + 87, 86, 84, 86, 100, 92, 89, 62, 69, 56, 57, 42, 42, 47, 44, 39, 32.42056 + 51, 75, 84, 79, 86, 76, 90, 99, 105, 129, 191, 236, 240, 245, 249, 253, 32.42057 + 255, 255, 255, 255, 254, 254, 252, 251, 252, 251, 252, 250, 238, 197, 138, 141, 32.42058 + 151, 155, 155, 144, 129, 120, 124, 130, 124, 107, 117, 113, 163, 146, 154, 148, 32.42059 + 168, 175, 188, 202, 214, 220, 219, 219, 217, 221, 226, 233, 238, 242, 243, 244, 32.42060 + 245, 247, 252, 254, 251, 245, 237, 232, 229, 210, 202, 200, 185, 172, 166, 158, 32.42061 + 149, 144, 136, 132, 133, 135, 135, 135, 113, 111, 108, 105, 102, 100, 95, 93, 32.42062 + 90, 77, 73, 84, 97, 105, 110, 118, 112, 105, 109, 77, 87, 66, 68, 51, 32.42063 + 35, 46, 51, 52, 58, 72, 78, 78, 84, 81, 88, 102, 86, 129, 191, 239, 32.42064 + 240, 244, 247, 249, 255, 255, 255, 255, 254, 254, 252, 251, 251, 252, 254, 249, 32.42065 + 233, 178, 126, 131, 138, 144, 141, 131, 129, 134, 134, 127, 111, 118, 140, 138, 32.42066 + 158, 138, 154, 171, 177, 185, 196, 207, 215, 219, 219, 217, 216, 221, 227, 233, 32.42067 + 241, 247, 249, 250, 248, 251, 255, 254, 254, 253, 249, 246, 233, 222, 217, 210, 32.42068 + 196, 190, 189, 180, 177, 170, 162, 157, 157, 157, 156, 154, 145, 137, 125, 116, 32.42069 + 110, 110, 110, 111, 110, 97, 90, 98, 104, 105, 108, 116, 124, 120, 130, 97, 32.42070 + 110, 84, 88, 68, 44, 47, 50, 52, 56, 61, 68, 72, 79, 89, 83, 91, 32.42071 + 88, 115, 162, 229, 244, 248, 250, 250, 255, 255, 255, 255, 254, 254, 253, 251, 32.42072 + 249, 252, 255, 249, 232, 170, 125, 130, 125, 128, 122, 115, 126, 143, 140, 123, 32.42073 + 122, 133, 146, 159, 167, 159, 164, 186, 187, 194, 203, 208, 213, 215, 215, 213, 32.42074 + 219, 223, 228, 234, 240, 248, 253, 253, 255, 255, 254, 251, 247, 246, 245, 246, 32.42075 + 233, 226, 222, 214, 201, 204, 205, 193, 191, 184, 175, 171, 169, 167, 164, 163, 32.42076 + 158, 155, 148, 142, 134, 124, 114, 108, 109, 103, 105, 117, 122, 116, 116, 122, 32.42077 + 132, 129, 145, 113, 126, 99, 103, 83, 78, 67, 57, 51, 49, 50, 56, 64, 32.42078 + 77, 98, 86, 86, 108, 105, 135, 219, 251, 253, 252, 251, 255, 255, 255, 255, 32.42079 + 255, 254, 254, 253, 244, 249, 254, 249, 211, 162, 128, 118, 96, 103, 119, 129, 32.42080 + 127, 130, 131, 122, 124, 154, 173, 173, 174, 175, 184, 197, 199, 205, 212, 214, 32.42081 + 213, 212, 216, 220, 214, 219, 226, 235, 243, 249, 253, 255, 255, 255, 253, 253, 32.42082 + 251, 248, 247, 246, 238, 235, 230, 226, 223, 220, 215, 211, 205, 202, 197, 191, 32.42083 + 184, 176, 171, 167, 171, 171, 168, 159, 147, 137, 131, 129, 134, 134, 111, 119, 32.42084 + 126, 124, 141, 130, 139, 140, 155, 130, 128, 116, 119, 94, 87, 56, 42, 58, 32.42085 + 49, 40, 56, 54, 61, 96, 83, 71, 106, 117, 124, 173, 246, 247, 250, 244, 32.42086 + 255, 255, 255, 255, 255, 255, 253, 253, 249, 251, 254, 247, 188, 137, 103, 95, 32.42087 + 104, 112, 124, 134, 136, 132, 127, 124, 128, 162, 180, 178, 180, 185, 194, 206, 32.42088 + 206, 211, 215, 217, 213, 213, 216, 221, 219, 223, 230, 237, 244, 249, 252, 255, 32.42089 + 255, 255, 253, 253, 251, 250, 247, 246, 239, 237, 232, 230, 227, 225, 222, 219, 32.42090 + 212, 210, 207, 203, 197, 193, 187, 185, 170, 172, 168, 162, 151, 144, 139, 137, 32.42091 + 125, 131, 119, 130, 135, 128, 136, 124, 138, 142, 160, 144, 145, 138, 141, 117, 32.42092 + 90, 56, 41, 47, 53, 52, 46, 43, 59, 85, 75, 84, 109, 105, 113, 148, 32.42093 + 235, 251, 253, 249, 255, 255, 255, 255, 255, 255, 253, 253, 253, 250, 247, 241, 32.42094 + 161, 120, 97, 98, 110, 118, 124, 134, 139, 126, 114, 118, 133, 167, 184, 180, 32.42095 + 186, 198, 205, 211, 213, 217, 218, 217, 214, 213, 215, 220, 223, 226, 231, 238, 32.42096 + 243, 248, 251, 253, 254, 253, 253, 252, 251, 250, 247, 246, 242, 239, 236, 234, 32.42097 + 234, 233, 231, 228, 220, 219, 218, 216, 212, 209, 206, 204, 188, 188, 185, 180, 32.42098 + 171, 163, 158, 156, 138, 146, 141, 149, 149, 142, 146, 138, 143, 149, 168, 161, 32.42099 + 162, 161, 162, 141, 114, 74, 53, 36, 57, 75, 51, 57, 72, 84, 72, 97, 32.42100 + 111, 96, 114, 134, 202, 246, 253, 248, 255, 255, 255, 255, 255, 255, 253, 253, 32.42101 + 253, 247, 239, 230, 149, 123, 117, 130, 112, 119, 122, 131, 137, 120, 107, 118, 32.42102 + 136, 167, 178, 176, 190, 208, 210, 206, 213, 216, 215, 214, 212, 213, 215, 219, 32.42103 + 222, 225, 230, 235, 241, 245, 250, 251, 252, 252, 252, 251, 250, 248, 247, 246, 32.42104 + 242, 240, 238, 238, 239, 239, 236, 235, 223, 223, 223, 222, 219, 218, 215, 214, 32.42105 + 212, 211, 207, 201, 193, 185, 177, 175, 167, 169, 165, 163, 158, 156, 161, 163, 32.42106 + 156, 160, 172, 171, 168, 170, 169, 151, 141, 101, 75, 32, 55, 88, 66, 90, 32.42107 + 92, 96, 78, 102, 106, 102, 136, 136, 162, 237, 249, 246, 255, 255, 255, 255, 32.42108 + 255, 255, 253, 253, 252, 251, 242, 222, 155, 132, 127, 138, 112, 118, 124, 131, 32.42109 + 130, 121, 121, 131, 142, 165, 172, 175, 196, 214, 210, 202, 210, 212, 213, 213, 32.42110 + 212, 213, 215, 218, 219, 222, 226, 231, 237, 243, 247, 250, 249, 249, 250, 248, 32.42111 + 248, 247, 245, 245, 241, 240, 238, 238, 239, 240, 237, 236, 227, 226, 225, 224, 32.42112 + 223, 220, 218, 217, 221, 220, 215, 211, 204, 198, 192, 188, 186, 183, 182, 172, 32.42113 + 165, 166, 167, 174, 169, 169, 171, 172, 163, 170, 167, 154, 144, 114, 91, 39, 32.42114 + 47, 79, 69, 106, 95, 100, 89, 98, 99, 114, 146, 134, 137, 238, 247, 250, 32.42115 + 255, 255, 255, 255, 255, 255, 253, 253, 254, 255, 248, 206, 166, 132, 117, 113, 32.42116 + 109, 111, 124, 125, 111, 117, 135, 141, 147, 165, 174, 183, 204, 214, 208, 204, 32.42117 + 209, 211, 211, 213, 214, 215, 218, 217, 217, 219, 223, 228, 234, 239, 245, 247, 32.42118 + 246, 246, 246, 246, 246, 245, 244, 243, 241, 239, 238, 238, 239, 239, 238, 235, 32.42119 + 230, 229, 229, 227, 225, 222, 220, 218, 221, 218, 217, 215, 213, 210, 205, 202, 32.42120 + 192, 188, 196, 186, 179, 181, 172, 178, 174, 173, 169, 175, 162, 173, 167, 158, 32.42121 + 139, 120, 104, 63, 53, 70, 69, 97, 83, 88, 95, 88, 89, 115, 127, 118, 32.42122 + 124, 239, 243, 252, 255, 255, 255, 255, 255, 255, 253, 253, 249, 255, 241, 173, 32.42123 + 166, 127, 108, 93, 117, 113, 131, 122, 89, 107, 143, 138, 149, 168, 182, 195, 32.42124 + 208, 207, 202, 210, 212, 215, 215, 217, 219, 220, 219, 218, 220, 220, 222, 226, 32.42125 + 231, 237, 240, 243, 243, 243, 244, 244, 244, 243, 242, 241, 242, 240, 238, 238, 32.42126 + 238, 238, 236, 234, 231, 230, 230, 229, 227, 225, 223, 221, 221, 219, 218, 217, 32.42127 + 218, 217, 213, 208, 197, 190, 203, 194, 190, 194, 178, 186, 181, 180, 173, 185, 32.42128 + 169, 183, 171, 163, 149, 127, 110, 89, 68, 66, 75, 81, 78, 74, 95, 79, 32.42129 + 81, 105, 94, 107, 118, 240, 237, 252, 255, 255, 255, 255, 255, 254, 253, 252, 32.42130 + 241, 254, 226, 140, 161, 126, 111, 95, 135, 127, 145, 127, 79, 102, 147, 135, 32.42131 + 146, 167, 188, 204, 208, 199, 198, 214, 217, 218, 220, 222, 224, 224, 221, 220, 32.42132 + 223, 223, 224, 227, 231, 234, 238, 240, 240, 240, 241, 242, 241, 241, 240, 239, 32.42133 + 241, 240, 237, 237, 236, 236, 232, 231, 229, 229, 229, 228, 227, 225, 224, 222, 32.42134 + 220, 216, 214, 214, 215, 213, 208, 203, 198, 187, 199, 189, 188, 197, 183, 191, 32.42135 + 189, 188, 181, 195, 177, 189, 175, 165, 161, 133, 107, 98, 74, 65, 79, 70, 32.42136 + 88, 70, 93, 72, 76, 95, 71, 108, 118, 243, 236, 253, 255, 255, 255, 255, 32.42137 + 255, 254, 253, 251, 251, 252, 185, 151, 152, 121, 113, 105, 126, 105, 139, 92, 32.42138 + 116, 122, 130, 143, 148, 168, 194, 207, 209, 206, 208, 212, 218, 214, 210, 210, 32.42139 + 214, 219, 222, 223, 222, 224, 225, 227, 230, 234, 237, 237, 235, 235, 236, 236, 32.42140 + 237, 237, 237, 237, 234, 235, 236, 237, 236, 235, 233, 232, 235, 234, 232, 230, 32.42141 + 227, 224, 221, 220, 219, 219, 217, 216, 214, 211, 209, 207, 203, 199, 197, 197, 32.42142 + 196, 196, 195, 194, 195, 192, 188, 187, 187, 184, 177, 172, 171, 134, 120, 104, 32.42143 + 67, 63, 80, 76, 66, 70, 74, 77, 67, 69, 77, 96, 121, 234, 243, 243, 32.42144 + 255, 255, 255, 255, 255, 254, 252, 251, 250, 249, 171, 137, 141, 111, 104, 110, 32.42145 + 106, 92, 130, 94, 118, 121, 125, 134, 150, 169, 193, 207, 207, 206, 208, 213, 32.42146 + 217, 214, 212, 213, 217, 221, 223, 224, 222, 222, 223, 225, 227, 230, 232, 234, 32.42147 + 232, 233, 233, 233, 234, 234, 234, 235, 234, 234, 235, 235, 235, 234, 232, 231, 32.42148 + 233, 232, 230, 228, 225, 223, 221, 221, 216, 216, 215, 215, 214, 212, 211, 210, 32.42149 + 203, 201, 197, 196, 197, 197, 195, 194, 195, 195, 194, 193, 191, 186, 180, 176, 32.42150 + 167, 137, 126, 111, 73, 65, 75, 68, 52, 59, 59, 70, 74, 78, 92, 97, 32.42151 + 127, 239, 249, 240, 255, 255, 255, 255, 255, 254, 252, 251, 247, 246, 158, 127, 32.42152 + 132, 98, 87, 107, 86, 79, 117, 95, 118, 122, 126, 133, 157, 175, 197, 209, 32.42153 + 209, 208, 210, 214, 216, 215, 214, 215, 220, 222, 222, 222, 221, 221, 221, 223, 32.42154 + 224, 226, 228, 229, 231, 231, 231, 232, 232, 233, 233, 233, 235, 235, 236, 236, 32.42155 + 235, 234, 233, 233, 231, 231, 229, 228, 226, 224, 222, 222, 218, 219, 217, 216, 32.42156 + 215, 213, 211, 210, 204, 202, 198, 197, 197, 197, 196, 194, 195, 198, 201, 200, 32.42157 + 196, 190, 184, 182, 167, 145, 137, 121, 84, 70, 73, 65, 57, 74, 68, 75, 32.42158 + 78, 70, 92, 88, 115, 228, 250, 240, 255, 255, 255, 255, 255, 254, 252, 251, 32.42159 + 244, 244, 151, 129, 131, 94, 74, 99, 82, 77, 105, 91, 112, 120, 132, 143, 32.42160 + 169, 184, 202, 213, 214, 213, 215, 218, 215, 215, 215, 217, 221, 223, 221, 220, 32.42161 + 222, 222, 222, 222, 224, 225, 227, 228, 229, 229, 230, 230, 231, 231, 231, 231, 32.42162 + 235, 235, 235, 235, 234, 234, 233, 233, 230, 229, 228, 227, 226, 225, 223, 223, 32.42163 + 224, 224, 222, 218, 216, 212, 208, 206, 205, 203, 199, 198, 198, 197, 196, 194, 32.42164 + 195, 200, 205, 205, 199, 192, 187, 186, 173, 158, 145, 126, 92, 77, 78, 71, 32.42165 + 72, 94, 88, 85, 80, 58, 88, 81, 94, 205, 246, 245, 255, 255, 255, 255, 32.42166 + 255, 254, 252, 251, 249, 242, 143, 129, 125, 101, 83, 104, 94, 85, 95, 85, 32.42167 + 100, 113, 135, 152, 177, 191, 205, 215, 215, 215, 216, 219, 216, 216, 216, 219, 32.42168 + 221, 222, 221, 219, 224, 224, 224, 224, 225, 227, 229, 229, 231, 231, 230, 232, 32.42169 + 231, 232, 232, 233, 235, 236, 234, 235, 233, 234, 233, 234, 230, 230, 229, 229, 32.42170 + 227, 226, 225, 224, 226, 224, 223, 220, 216, 213, 210, 208, 208, 204, 200, 199, 32.42171 + 198, 198, 196, 195, 194, 200, 205, 205, 200, 193, 189, 187, 179, 166, 146, 123, 32.42172 + 96, 84, 82, 78, 78, 85, 84, 78, 86, 65, 95, 91, 111, 203, 245, 247, 32.42173 + 255, 255, 255, 255, 255, 255, 252, 251, 253, 234, 131, 121, 110, 109, 102, 114, 32.42174 + 100, 90, 85, 80, 90, 106, 135, 156, 183, 194, 206, 213, 213, 214, 215, 218, 32.42175 + 218, 218, 218, 220, 222, 223, 222, 220, 226, 226, 226, 226, 228, 229, 231, 232, 32.42176 + 233, 233, 234, 234, 234, 235, 235, 235, 236, 236, 235, 234, 233, 233, 234, 234, 32.42177 + 232, 231, 231, 230, 229, 227, 227, 225, 222, 222, 221, 221, 218, 216, 215, 213, 32.42178 + 209, 205, 201, 200, 199, 198, 197, 195, 196, 199, 202, 203, 200, 195, 191, 188, 32.42179 + 181, 170, 145, 117, 98, 88, 79, 74, 85, 67, 78, 66, 89, 74, 98, 110, 32.42180 + 170, 224, 249, 245, 255, 255, 255, 255, 255, 255, 252, 251, 252, 220, 118, 112, 32.42181 + 91, 108, 106, 101, 88, 85, 77, 84, 94, 112, 142, 164, 188, 197, 207, 212, 32.42182 + 214, 214, 216, 219, 222, 221, 220, 222, 224, 225, 225, 224, 226, 226, 227, 229, 32.42183 + 230, 232, 233, 234, 236, 237, 238, 238, 239, 239, 239, 239, 238, 237, 235, 234, 32.42184 + 234, 234, 235, 235, 235, 234, 232, 231, 231, 228, 227, 227, 222, 223, 222, 221, 32.42185 + 220, 219, 217, 215, 210, 206, 202, 200, 200, 199, 197, 195, 199, 199, 200, 201, 32.42186 + 200, 198, 193, 189, 182, 173, 147, 120, 108, 94, 74, 63, 91, 64, 102, 75, 32.42187 + 85, 69, 98, 147, 227, 244, 250, 245, 255, 255, 255, 255, 255, 255, 253, 251, 32.42188 + 243, 207, 111, 109, 79, 101, 97, 74, 72, 75, 72, 91, 103, 122, 152, 173, 32.42189 + 194, 201, 210, 215, 217, 216, 219, 221, 226, 224, 223, 223, 225, 227, 227, 227, 32.42190 + 226, 226, 228, 229, 230, 232, 234, 235, 238, 240, 240, 240, 241, 241, 241, 242, 32.42191 + 238, 237, 235, 234, 233, 234, 235, 236, 236, 236, 234, 232, 231, 230, 228, 227, 32.42192 + 225, 225, 224, 222, 220, 217, 215, 213, 211, 207, 203, 201, 200, 199, 197, 195, 32.42193 + 201, 199, 198, 199, 201, 200, 195, 190, 183, 177, 152, 127, 118, 100, 71, 54, 32.42194 + 83, 66, 134, 93, 81, 60, 104, 194, 251, 248, 249, 246, 255, 255, 255, 255, 32.42195 + 255, 255, 253, 252, 254, 192, 119, 93, 96, 82, 116, 83, 85, 78, 87, 100, 32.42196 + 103, 121, 155, 177, 194, 200, 208, 214, 217, 217, 219, 221, 221, 222, 222, 224, 32.42197 + 225, 227, 228, 229, 228, 229, 230, 231, 233, 235, 237, 237, 240, 241, 242, 242, 32.42198 + 242, 241, 240, 239, 240, 238, 235, 232, 231, 231, 231, 232, 236, 235, 233, 232, 32.42199 + 233, 234, 234, 235, 229, 228, 224, 221, 219, 218, 217, 216, 216, 211, 205, 202, 32.42200 + 200, 199, 197, 195, 199, 199, 198, 197, 195, 193, 191, 189, 183, 187, 149, 138, 32.42201 + 102, 95, 77, 61, 73, 63, 131, 92, 90, 64, 97, 214, 247, 249, 249, 252, 32.42202 + 255, 255, 255, 255, 255, 255, 254, 252, 246, 215, 142, 101, 83, 87, 101, 96, 32.42203 + 88, 78, 81, 91, 99, 125, 157, 174, 196, 202, 209, 215, 216, 218, 219, 220, 32.42204 + 222, 221, 220, 220, 221, 223, 225, 226, 226, 228, 230, 233, 235, 236, 237, 237, 32.42205 + 241, 243, 243, 243, 243, 242, 241, 240, 237, 236, 233, 231, 229, 230, 231, 231, 32.42206 + 236, 235, 233, 233, 234, 233, 234, 235, 231, 231, 228, 225, 223, 222, 221, 219, 32.42207 + 214, 210, 205, 202, 201, 199, 195, 193, 198, 198, 198, 198, 197, 195, 194, 193, 32.42208 + 180, 186, 150, 136, 100, 91, 83, 73, 75, 72, 120, 89, 93, 62, 100, 204, 32.42209 + 248, 250, 250, 255, 255, 255, 255, 255, 255, 255, 255, 252, 244, 238, 165, 100, 32.42210 + 78, 109, 92, 110, 97, 87, 83, 88, 104, 139, 173, 182, 201, 205, 210, 215, 32.42211 + 216, 217, 218, 219, 222, 221, 220, 220, 220, 222, 224, 226, 226, 228, 231, 234, 32.42212 + 236, 237, 237, 237, 240, 240, 240, 241, 240, 239, 238, 238, 239, 237, 236, 234, 32.42213 + 234, 234, 235, 236, 235, 235, 234, 234, 234, 233, 235, 234, 230, 230, 228, 228, 32.42214 + 225, 223, 221, 220, 213, 210, 207, 205, 204, 200, 196, 192, 195, 196, 196, 196, 32.42215 + 196, 195, 194, 193, 182, 189, 157, 139, 101, 85, 87, 86, 75, 85, 105, 88, 32.42216 + 106, 72, 126, 210, 251, 252, 252, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.42217 + 252, 251, 186, 91, 84, 127, 95, 116, 97, 91, 88, 91, 108, 152, 188, 196, 32.42218 + 207, 209, 213, 215, 216, 217, 218, 218, 221, 222, 224, 225, 226, 227, 228, 228, 32.42219 + 232, 232, 233, 234, 235, 236, 237, 238, 235, 237, 236, 237, 236, 236, 234, 234, 32.42220 + 238, 238, 236, 237, 236, 237, 238, 239, 236, 236, 235, 235, 234, 234, 235, 234, 32.42221 + 227, 226, 226, 226, 225, 222, 220, 218, 216, 214, 212, 211, 209, 205, 199, 195, 32.42222 + 193, 193, 193, 193, 192, 191, 190, 189, 186, 193, 171, 149, 109, 82, 88, 92, 32.42223 + 75, 94, 90, 88, 120, 92, 174, 238, 253, 254, 254, 255, 255, 255, 255, 255, 32.42224 + 255, 255, 255, 252, 255, 252, 215, 94, 86, 117, 97, 114, 85, 84, 87, 93, 32.42225 + 111, 155, 194, 203, 212, 212, 213, 215, 216, 217, 218, 219, 221, 224, 229, 233, 32.42226 + 235, 234, 233, 231, 237, 236, 233, 231, 231, 233, 236, 237, 233, 234, 234, 234, 32.42227 + 234, 233, 232, 231, 232, 232, 231, 231, 232, 232, 233, 233, 234, 234, 234, 235, 32.42228 + 235, 234, 233, 233, 224, 224, 225, 224, 224, 222, 219, 217, 218, 218, 216, 216, 32.42229 + 214, 210, 203, 198, 195, 195, 194, 193, 191, 189, 188, 186, 187, 194, 182, 161, 32.42230 + 124, 83, 89, 95, 86, 99, 82, 86, 117, 102, 209, 253, 255, 255, 255, 255, 32.42231 + 255, 255, 255, 255, 255, 255, 255, 254, 252, 251, 245, 123, 81, 88, 93, 106, 32.42232 + 83, 81, 90, 106, 126, 164, 199, 209, 216, 214, 213, 215, 217, 219, 219, 220, 32.42233 + 221, 225, 230, 234, 236, 235, 233, 230, 235, 233, 230, 228, 228, 230, 232, 234, 32.42234 + 232, 232, 232, 233, 232, 231, 230, 230, 230, 230, 230, 230, 230, 231, 231, 231, 32.42235 + 230, 231, 232, 232, 232, 232, 230, 229, 223, 224, 223, 223, 222, 221, 220, 220, 32.42236 + 220, 219, 217, 217, 215, 211, 205, 200, 199, 198, 197, 196, 194, 191, 189, 189, 32.42237 + 185, 190, 186, 170, 140, 89, 93, 95, 99, 99, 86, 85, 99, 97, 221, 250, 32.42238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 247, 253, 168, 32.42239 + 82, 82, 96, 92, 92, 85, 97, 124, 150, 180, 205, 212, 218, 215, 213, 214, 32.42240 + 217, 221, 221, 220, 223, 224, 226, 227, 229, 228, 226, 225, 224, 224, 225, 226, 32.42241 + 227, 228, 228, 228, 227, 226, 226, 226, 226, 225, 224, 224, 228, 228, 228, 229, 32.42242 + 228, 228, 227, 227, 224, 225, 226, 227, 227, 226, 225, 224, 221, 220, 219, 218, 32.42243 + 218, 218, 218, 218, 218, 217, 214, 213, 211, 208, 202, 198, 197, 197, 197, 196, 32.42244 + 195, 193, 191, 191, 189, 188, 187, 173, 149, 91, 93, 90, 108, 93, 94, 89, 32.42245 + 85, 96, 230, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42246 + 255, 242, 244, 200, 91, 97, 104, 82, 100, 87, 100, 134, 165, 191, 207, 209, 32.42247 + 218, 215, 212, 213, 217, 220, 221, 220, 224, 224, 222, 220, 218, 218, 218, 219, 32.42248 + 212, 215, 220, 224, 226, 226, 224, 222, 219, 218, 218, 219, 218, 218, 216, 216, 32.42249 + 222, 222, 223, 223, 223, 222, 221, 220, 220, 221, 222, 223, 223, 221, 219, 219, 32.42250 + 216, 215, 214, 213, 213, 214, 215, 216, 216, 215, 212, 210, 208, 204, 199, 196, 32.42251 + 193, 194, 194, 194, 194, 193, 192, 191, 196, 189, 186, 171, 151, 89, 90, 84, 32.42252 + 109, 87, 102, 95, 82, 103, 242, 253, 254, 255, 255, 255, 255, 255, 255, 255, 32.42253 + 255, 255, 255, 255, 254, 239, 245, 221, 113, 102, 107, 84, 99, 115, 94, 153, 32.42254 + 177, 194, 220, 213, 215, 222, 219, 217, 221, 216, 213, 222, 223, 215, 211, 213, 32.42255 + 212, 208, 206, 210, 204, 207, 208, 210, 215, 224, 224, 220, 208, 210, 204, 200, 32.42256 + 212, 190, 215, 203, 214, 218, 216, 215, 221, 217, 215, 223, 221, 214, 215, 220, 32.42257 + 219, 211, 209, 213, 210, 213, 202, 212, 198, 208, 202, 213, 206, 217, 217, 206, 32.42258 + 198, 201, 201, 197, 197, 186, 199, 191, 199, 189, 201, 189, 189, 188, 199, 180, 32.42259 + 172, 105, 106, 91, 106, 80, 118, 83, 99, 100, 245, 251, 254, 254, 255, 255, 32.42260 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 244, 252, 240, 152, 110, 106, 82, 32.42261 + 98, 110, 101, 155, 180, 202, 219, 216, 223, 224, 214, 207, 216, 221, 216, 212, 32.42262 + 200, 191, 183, 181, 177, 172, 170, 173, 170, 180, 188, 188, 187, 188, 187, 186, 32.42263 + 171, 170, 157, 166, 171, 157, 170, 165, 202, 216, 218, 214, 217, 216, 217, 226, 32.42264 + 213, 211, 208, 202, 200, 199, 193, 186, 191, 190, 183, 191, 188, 194, 194, 201, 32.42265 + 196, 196, 189, 181, 177, 177, 176, 173, 190, 186, 196, 194, 195, 191, 197, 190, 32.42266 + 193, 191, 202, 186, 178, 103, 98, 86, 108, 78, 108, 103, 114, 131, 238, 255, 32.42267 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 252, 249, 32.42268 + 191, 111, 100, 83, 101, 105, 113, 162, 188, 214, 215, 222, 222, 219, 211, 208, 32.42269 + 219, 228, 218, 201, 180, 172, 163, 161, 158, 155, 156, 158, 161, 174, 184, 178, 32.42270 + 166, 159, 156, 155, 135, 130, 118, 135, 136, 126, 131, 133, 172, 205, 218, 211, 32.42271 + 211, 216, 219, 225, 210, 210, 199, 185, 184, 187, 177, 160, 170, 161, 161, 161, 32.42272 + 172, 170, 176, 179, 187, 190, 190, 186, 173, 163, 164, 172, 168, 177, 182, 192, 32.42273 + 186, 189, 186, 188, 199, 194, 203, 193, 189, 105, 95, 88, 97, 79, 94, 99, 32.42274 + 115, 174, 234, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42275 + 255, 253, 246, 246, 218, 115, 98, 92, 108, 107, 128, 176, 199, 226, 215, 227, 32.42276 + 218, 212, 213, 215, 207, 196, 184, 169, 144, 138, 132, 128, 125, 123, 120, 119, 32.42277 + 119, 128, 132, 124, 111, 106, 104, 105, 94, 85, 89, 97, 105, 87, 96, 103, 32.42278 + 129, 181, 212, 211, 211, 216, 219, 220, 206, 195, 179, 168, 166, 165, 154, 141, 32.42279 + 145, 129, 130, 122, 139, 127, 135, 135, 150, 146, 147, 154, 149, 136, 128, 131, 32.42280 + 136, 155, 158, 180, 178, 196, 195, 210, 199, 194, 203, 197, 199, 112, 99, 99, 32.42281 + 84, 87, 98, 79, 124, 216, 246, 250, 254, 255, 255, 255, 255, 255, 255, 255, 32.42282 + 255, 255, 255, 255, 255, 254, 245, 247, 240, 138, 100, 99, 115, 116, 141, 191, 32.42283 + 211, 233, 217, 230, 228, 214, 217, 212, 172, 135, 129, 129, 121, 120, 117, 113, 32.42284 + 109, 104, 96, 90, 76, 77, 71, 63, 59, 63, 66, 67, 71, 59, 83, 75, 32.42285 + 91, 67, 83, 92, 90, 155, 203, 212, 215, 220, 215, 211, 196, 168, 147, 145, 32.42286 + 143, 131, 122, 121, 114, 93, 91, 81, 94, 76, 83, 81, 104, 85, 75, 89, 32.42287 + 102, 100, 87, 79, 68, 87, 81, 101, 113, 145, 158, 189, 198, 197, 203, 198, 32.42288 + 208, 121, 105, 110, 85, 92, 108, 83, 172, 242, 255, 250, 254, 255, 255, 255, 32.42289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 246, 250, 249, 170, 100, 94, 32.42290 + 116, 124, 142, 202, 221, 231, 223, 229, 235, 219, 219, 199, 141, 107, 118, 131, 32.42291 + 127, 130, 132, 132, 133, 131, 124, 117, 99, 91, 77, 64, 61, 65, 66, 64, 32.42292 + 62, 55, 81, 70, 80, 71, 76, 84, 77, 144, 197, 214, 220, 222, 214, 207, 32.42293 + 191, 155, 129, 129, 123, 106, 99, 107, 91, 73, 66, 62, 66, 52, 55, 60, 32.42294 + 68, 66, 64, 65, 63, 66, 76, 88, 82, 92, 73, 72, 91, 115, 133, 167, 32.42295 + 189, 199, 204, 198, 216, 131, 110, 114, 90, 89, 105, 106, 230, 246, 250, 252, 32.42296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 248, 250, 32.42297 + 246, 202, 104, 94, 110, 127, 136, 205, 224, 224, 228, 226, 231, 221, 221, 192, 32.42298 + 136, 124, 148, 151, 137, 142, 146, 148, 151, 154, 149, 142, 131, 123, 106, 90, 32.42299 + 83, 82, 79, 73, 64, 68, 74, 79, 68, 93, 69, 78, 92, 150, 196, 216, 32.42300 + 224, 224, 214, 209, 194, 163, 133, 119, 108, 95, 91, 95, 80, 68, 60, 70, 32.42301 + 64, 61, 61, 75, 58, 74, 83, 76, 64, 70, 91, 110, 107, 113, 97, 80, 32.42302 + 103, 100, 105, 126, 170, 193, 203, 197, 222, 141, 116, 113, 92, 99, 96, 117, 32.42303 + 252, 244, 245, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42304 + 255, 255, 253, 249, 242, 226, 115, 103, 104, 127, 128, 207, 226, 219, 231, 224, 32.42305 + 224, 223, 225, 188, 138, 144, 166, 151, 164, 167, 166, 162, 161, 163, 156, 148, 32.42306 + 139, 137, 126, 115, 106, 103, 99, 94, 97, 107, 92, 116, 84, 139, 90, 98, 32.42307 + 113, 160, 199, 217, 227, 226, 216, 214, 196, 173, 139, 111, 96, 91, 87, 85, 32.42308 + 74, 68, 58, 79, 68, 75, 75, 95, 92, 95, 95, 98, 110, 125, 125, 115, 32.42309 + 119, 131, 130, 113, 143, 120, 110, 117, 152, 185, 199, 195, 226, 151, 121, 115, 32.42310 + 94, 120, 94, 114, 247, 249, 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 32.42311 + 255, 255, 255, 255, 255, 255, 250, 246, 251, 238, 114, 88, 93, 113, 164, 194, 32.42312 + 235, 230, 235, 225, 222, 221, 205, 178, 160, 163, 173, 178, 161, 169, 174, 170, 32.42313 + 159, 148, 128, 111, 116, 110, 107, 91, 93, 84, 106, 89, 77, 116, 109, 140, 32.42314 + 107, 122, 108, 107, 129, 164, 209, 215, 232, 221, 234, 223, 198, 183, 139, 112, 32.42315 + 93, 88, 102, 97, 107, 69, 67, 90, 80, 56, 69, 100, 84, 104, 108, 105, 32.42316 + 114, 128, 140, 152, 154, 155, 159, 161, 150, 134, 132, 138, 150, 171, 202, 215, 32.42317 + 211, 167, 113, 119, 91, 127, 103, 127, 241, 247, 243, 249, 254, 254, 255, 255, 32.42318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 248, 241, 242, 239, 89, 107, 32.42319 + 91, 109, 163, 200, 232, 223, 228, 221, 221, 212, 193, 172, 167, 178, 186, 186, 32.42320 + 181, 167, 151, 137, 121, 112, 118, 131, 121, 102, 99, 88, 84, 78, 81, 80, 32.42321 + 87, 99, 78, 107, 107, 134, 137, 135, 140, 180, 217, 220, 236, 227, 238, 222, 32.42322 + 201, 189, 151, 132, 120, 113, 119, 108, 85, 74, 69, 67, 64, 73, 82, 76, 32.42323 + 72, 97, 99, 88, 94, 117, 140, 160, 193, 169, 164, 181, 180, 154, 143, 150, 32.42324 + 159, 174, 200, 210, 209, 168, 116, 121, 85, 127, 114, 172, 237, 234, 244, 255, 32.42325 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 244, 32.42326 + 239, 244, 79, 118, 83, 96, 153, 205, 233, 223, 229, 229, 224, 209, 185, 169, 32.42327 + 174, 190, 193, 188, 189, 151, 120, 117, 120, 110, 104, 106, 101, 68, 68, 70, 32.42328 + 66, 69, 52, 77, 69, 73, 63, 76, 84, 97, 125, 139, 147, 201, 229, 227, 32.42329 + 241, 236, 245, 223, 219, 209, 173, 154, 138, 122, 115, 95, 65, 67, 65, 53, 32.42330 + 51, 71, 73, 49, 62, 72, 62, 56, 76, 106, 125, 138, 150, 168, 184, 187, 32.42331 + 187, 189, 187, 180, 171, 181, 199, 207, 210, 175, 122, 124, 97, 117, 123, 221, 32.42332 + 250, 247, 242, 241, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 32.42333 + 252, 249, 246, 237, 232, 236, 110, 106, 96, 96, 148, 211, 233, 226, 230, 232, 32.42334 + 230, 215, 191, 175, 179, 190, 187, 175, 170, 138, 112, 118, 129, 124, 106, 93, 32.42335 + 102, 56, 47, 54, 50, 68, 43, 95, 83, 78, 73, 70, 76, 62, 96, 108, 32.42336 + 140, 216, 237, 237, 243, 240, 250, 228, 231, 222, 187, 160, 134, 108, 97, 77, 32.42337 + 70, 65, 73, 76, 62, 53, 48, 41, 58, 53, 46, 60, 87, 100, 107, 121, 32.42338 + 135, 164, 187, 188, 186, 187, 177, 161, 182, 188, 201, 208, 215, 182, 127, 123, 32.42339 + 120, 109, 152, 227, 241, 249, 239, 235, 253, 254, 254, 255, 255, 255, 255, 255, 32.42340 + 255, 255, 255, 253, 253, 230, 214, 204, 206, 211, 169, 102, 126, 113, 154, 219, 32.42341 + 230, 227, 226, 222, 230, 222, 205, 188, 182, 183, 174, 161, 146, 141, 126, 113, 32.42342 + 108, 119, 133, 141, 150, 92, 58, 47, 44, 70, 59, 128, 149, 117, 89, 72, 32.42343 + 89, 71, 96, 91, 125, 222, 240, 244, 244, 239, 249, 234, 228, 221, 188, 158, 32.42344 + 124, 97, 94, 81, 86, 86, 107, 116, 85, 47, 38, 43, 57, 48, 57, 99, 32.42345 + 126, 114, 107, 126, 128, 108, 123, 178, 209, 197, 184, 189, 185, 191, 203, 210, 32.42346 + 219, 188, 128, 118, 124, 107, 191, 199, 197, 219, 228, 252, 253, 254, 254, 255, 32.42347 + 255, 255, 255, 255, 255, 255, 255, 252, 255, 214, 180, 167, 174, 190, 217, 138, 32.42348 + 137, 122, 159, 226, 226, 231, 231, 224, 224, 224, 215, 199, 187, 180, 167, 155, 32.42349 + 142, 144, 132, 115, 112, 131, 157, 171, 178, 126, 73, 39, 45, 74, 89, 156, 32.42350 + 172, 140, 101, 72, 81, 72, 106, 109, 121, 227, 236, 249, 246, 237, 247, 236, 32.42351 + 229, 227, 195, 160, 124, 95, 96, 87, 90, 106, 134, 135, 97, 60, 45, 39, 32.42352 + 65, 41, 50, 116, 167, 151, 115, 111, 148, 129, 135, 170, 190, 180, 173, 181, 32.42353 + 185, 192, 203, 209, 218, 189, 127, 112, 112, 110, 200, 184, 190, 205, 203, 224, 32.42354 + 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 253, 252, 202, 159, 147, 32.42355 + 150, 179, 215, 186, 125, 121, 164, 232, 222, 235, 238, 232, 220, 225, 220, 205, 32.42356 + 192, 182, 169, 156, 153, 150, 146, 143, 141, 145, 155, 165, 174, 148, 97, 55, 32.42357 + 76, 93, 122, 168, 152, 142, 114, 90, 88, 87, 120, 126, 132, 235, 228, 248, 32.42358 + 247, 235, 242, 235, 233, 229, 198, 167, 131, 101, 96, 86, 93, 107, 132, 138, 32.42359 + 110, 79, 59, 44, 65, 53, 66, 128, 182, 172, 129, 109, 107, 128, 149, 159, 32.42360 + 170, 186, 198, 199, 190, 196, 206, 209, 218, 190, 129, 114, 106, 140, 187, 194, 32.42361 + 198, 189, 175, 187, 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.42362 + 238, 193, 149, 140, 137, 170, 185, 211, 122, 126, 174, 239, 216, 229, 235, 227, 32.42363 + 222, 227, 221, 207, 195, 187, 172, 158, 161, 166, 175, 174, 151, 131, 143, 169, 32.42364 + 175, 174, 134, 93, 121, 118, 146, 167, 153, 148, 124, 120, 130, 137, 142, 123, 32.42365 + 147, 244, 223, 247, 249, 235, 239, 231, 223, 221, 192, 167, 137, 111, 102, 86, 32.42366 + 103, 98, 119, 143, 129, 95, 70, 59, 55, 85, 122, 159, 177, 162, 144, 144, 32.42367 + 113, 117, 136, 164, 182, 184, 183, 185, 196, 203, 212, 211, 219, 193, 133, 119, 32.42368 + 114, 183, 186, 205, 179, 151, 159, 194, 252, 254, 254, 255, 255, 255, 255, 255, 32.42369 + 255, 255, 253, 251, 244, 186, 150, 126, 138, 173, 191, 203, 137, 132, 178, 232, 32.42370 + 218, 237, 230, 232, 225, 226, 222, 215, 208, 204, 197, 190, 190, 190, 190, 186, 32.42371 + 177, 163, 150, 140, 162, 173, 153, 128, 138, 148, 147, 152, 152, 149, 147, 149, 32.42372 + 155, 158, 155, 152, 176, 230, 234, 234, 252, 244, 234, 229, 217, 214, 206, 190, 32.42373 + 168, 149, 138, 134, 134, 138, 133, 129, 140, 150, 137, 112, 116, 122, 148, 149, 32.42374 + 154, 136, 157, 176, 166, 160, 163, 178, 188, 189, 192, 198, 202, 200, 203, 212, 32.42375 + 211, 187, 146, 115, 117, 175, 188, 194, 160, 145, 150, 170, 252, 254, 254, 254, 32.42376 + 255, 255, 255, 255, 255, 255, 253, 251, 237, 192, 143, 142, 140, 197, 185, 187, 32.42377 + 143, 132, 181, 227, 224, 238, 236, 235, 226, 228, 225, 220, 216, 214, 210, 204, 32.42378 + 201, 202, 202, 199, 192, 180, 169, 162, 155, 163, 155, 142, 144, 145, 139, 135, 32.42379 + 153, 157, 160, 163, 162, 161, 162, 163, 196, 240, 236, 237, 254, 246, 230, 219, 32.42380 + 217, 212, 202, 187, 172, 163, 162, 165, 141, 145, 141, 139, 150, 163, 153, 132, 32.42381 + 125, 126, 151, 125, 146, 134, 173, 182, 185, 179, 177, 182, 188, 193, 199, 207, 32.42382 + 206, 204, 206, 215, 214, 191, 152, 120, 111, 186, 199, 184, 144, 144, 151, 158, 32.42383 + 252, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 251, 236, 199, 133, 148, 32.42384 + 135, 217, 185, 178, 158, 136, 185, 222, 231, 235, 239, 233, 226, 229, 229, 224, 32.42385 + 223, 225, 222, 218, 216, 215, 214, 210, 203, 195, 186, 180, 180, 169, 164, 157, 32.42386 + 148, 151, 157, 158, 165, 172, 178, 176, 170, 172, 178, 189, 215, 246, 236, 239, 32.42387 + 254, 247, 230, 213, 212, 209, 203, 194, 185, 181, 184, 188, 163, 165, 158, 151, 32.42388 + 155, 164, 155, 137, 139, 137, 160, 118, 151, 142, 189, 187, 198, 200, 198, 195, 32.42389 + 194, 202, 208, 211, 211, 209, 209, 217, 218, 199, 161, 128, 112, 188, 202, 186, 32.42390 + 141, 140, 151, 164, 252, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 251, 32.42391 + 241, 203, 135, 138, 132, 220, 197, 185, 172, 141, 190, 218, 235, 229, 237, 228, 32.42392 + 226, 229, 229, 227, 228, 230, 229, 226, 223, 221, 218, 213, 206, 197, 190, 186, 32.42393 + 190, 168, 166, 168, 153, 156, 172, 174, 182, 187, 188, 184, 180, 186, 201, 214, 32.42394 + 220, 242, 235, 241, 253, 243, 231, 215, 202, 205, 207, 206, 200, 193, 189, 187, 32.42395 + 182, 181, 173, 163, 161, 166, 160, 148, 160, 157, 171, 144, 167, 162, 191, 190, 32.42396 + 196, 208, 213, 207, 205, 210, 212, 208, 215, 214, 212, 218, 222, 205, 168, 133, 32.42397 + 114, 175, 193, 196, 149, 129, 145, 180, 252, 254, 254, 254, 255, 255, 255, 255, 32.42398 + 255, 255, 255, 252, 244, 205, 158, 137, 147, 214, 210, 194, 173, 138, 187, 218, 32.42399 + 235, 230, 236, 228, 228, 232, 232, 230, 230, 235, 235, 232, 224, 222, 219, 214, 32.42400 + 208, 202, 197, 194, 196, 179, 188, 198, 183, 178, 185, 184, 194, 196, 197, 197, 32.42401 + 199, 207, 217, 225, 220, 237, 234, 244, 246, 232, 228, 215, 202, 205, 211, 214, 32.42402 + 208, 200, 192, 187, 185, 187, 182, 175, 175, 181, 182, 177, 188, 182, 180, 183, 32.42403 + 182, 183, 190, 202, 195, 207, 213, 208, 207, 213, 215, 211, 216, 214, 213, 217, 32.42404 + 223, 209, 171, 133, 110, 173, 194, 200, 153, 132, 149, 188, 253, 254, 254, 254, 32.42405 + 255, 255, 255, 255, 255, 255, 255, 252, 245, 209, 189, 158, 175, 211, 211, 187, 32.42406 + 159, 128, 176, 220, 233, 232, 236, 233, 231, 235, 235, 233, 234, 237, 238, 235, 32.42407 + 227, 225, 222, 221, 217, 214, 210, 208, 213, 203, 203, 203, 193, 189, 196, 203, 32.42408 + 200, 203, 207, 213, 218, 221, 222, 222, 224, 235, 237, 248, 241, 223, 223, 212, 32.42409 + 209, 210, 211, 211, 210, 206, 202, 199, 190, 192, 189, 182, 180, 184, 188, 189, 32.42410 + 204, 197, 185, 200, 187, 195, 193, 214, 203, 205, 205, 203, 204, 208, 213, 215, 32.42411 + 212, 212, 211, 215, 221, 208, 168, 128, 113, 191, 212, 203, 156, 152, 172, 197, 32.42412 + 253, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 251, 249, 217, 209, 181, 32.42413 + 195, 209, 198, 168, 143, 120, 166, 224, 226, 235, 231, 234, 229, 232, 233, 231, 32.42414 + 231, 237, 238, 236, 230, 230, 228, 227, 224, 222, 218, 216, 211, 209, 194, 183, 32.42415 + 182, 183, 192, 209, 211, 213, 215, 217, 221, 222, 222, 223, 228, 234, 237, 252, 32.42416 + 242, 222, 223, 212, 214, 213, 212, 213, 212, 210, 207, 207, 201, 203, 199, 188, 32.42417 + 180, 179, 182, 184, 197, 197, 194, 197, 192, 198, 204, 213, 211, 207, 204, 206, 32.42418 + 208, 207, 209, 213, 209, 209, 208, 212, 218, 206, 163, 121, 123, 197, 217, 209, 32.42419 + 166, 167, 192, 221, 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.42420 + 253, 225, 213, 193, 196, 206, 183, 155, 138, 118, 161, 227, 221, 234, 225, 231, 32.42421 + 224, 228, 227, 226, 228, 234, 236, 234, 234, 233, 231, 230, 226, 222, 217, 215, 32.42422 + 207, 220, 211, 200, 206, 205, 203, 219, 225, 224, 219, 215, 212, 216, 222, 231, 32.42423 + 231, 232, 236, 254, 246, 227, 228, 214, 214, 213, 215, 216, 216, 212, 205, 201, 32.42424 + 209, 211, 207, 196, 186, 183, 185, 189, 178, 189, 203, 190, 200, 200, 211, 204, 32.42425 + 215, 208, 208, 216, 218, 208, 203, 204, 205, 207, 206, 209, 216, 203, 160, 115, 32.42426 + 129, 184, 202, 212, 175, 163, 193, 242, 253, 254, 254, 255, 255, 255, 255, 255, 32.42427 + 255, 255, 255, 250, 250, 243, 228, 208, 201, 208, 190, 150, 129, 136, 146, 227, 32.42428 + 223, 236, 229, 243, 236, 235, 230, 228, 228, 229, 232, 233, 230, 234, 233, 230, 32.42429 + 232, 236, 232, 222, 216, 219, 215, 211, 214, 223, 226, 223, 229, 229, 226, 221, 32.42430 + 216, 217, 223, 229, 225, 234, 244, 248, 242, 232, 223, 218, 219, 212, 211, 217, 32.42431 + 220, 216, 213, 214, 214, 209, 204, 204, 204, 201, 193, 186, 186, 190, 193, 196, 32.42432 + 196, 199, 204, 209, 211, 213, 216, 215, 212, 208, 205, 203, 205, 208, 209, 211, 32.42433 + 217, 201, 151, 99, 144, 176, 194, 219, 171, 187, 233, 242, 253, 254, 254, 255, 32.42434 + 255, 255, 255, 255, 255, 255, 255, 250, 254, 248, 237, 219, 208, 211, 193, 154, 32.42435 + 129, 155, 141, 223, 227, 229, 235, 236, 232, 231, 228, 226, 225, 227, 230, 232, 32.42436 + 232, 235, 236, 234, 235, 238, 235, 228, 224, 225, 223, 220, 223, 229, 231, 227, 32.42437 + 228, 229, 226, 222, 217, 218, 222, 227, 226, 234, 244, 248, 243, 234, 225, 220, 32.42438 + 215, 211, 211, 217, 218, 213, 208, 208, 205, 203, 202, 205, 209, 208, 203, 197, 32.42439 + 194, 198, 202, 203, 202, 204, 208, 211, 211, 213, 216, 215, 213, 209, 207, 206, 32.42440 + 206, 210, 211, 213, 213, 196, 156, 117, 145, 177, 195, 215, 177, 199, 243, 249, 32.42441 + 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 250, 253, 251, 246, 231, 32.42442 + 216, 214, 196, 162, 131, 175, 141, 213, 231, 226, 238, 230, 229, 227, 225, 224, 32.42443 + 224, 226, 228, 229, 232, 235, 235, 235, 236, 239, 237, 232, 232, 233, 232, 231, 32.42444 + 232, 237, 235, 233, 228, 228, 226, 222, 219, 218, 220, 225, 227, 234, 243, 247, 32.42445 + 244, 236, 228, 222, 217, 214, 215, 219, 218, 212, 206, 204, 203, 203, 205, 210, 32.42446 + 216, 217, 212, 209, 204, 208, 211, 212, 211, 210, 211, 212, 210, 213, 216, 216, 32.42447 + 213, 211, 209, 210, 208, 209, 212, 216, 214, 198, 173, 152, 154, 182, 199, 212, 32.42448 + 190, 217, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.42449 + 248, 249, 250, 240, 224, 216, 201, 173, 138, 181, 156, 200, 228, 234, 232, 229, 32.42450 + 227, 226, 223, 222, 223, 225, 227, 228, 229, 230, 231, 232, 234, 235, 234, 233, 32.42451 + 235, 235, 235, 236, 238, 239, 237, 233, 231, 228, 223, 219, 216, 217, 222, 225, 32.42452 + 227, 234, 242, 245, 243, 237, 229, 224, 221, 220, 219, 219, 217, 212, 206, 204, 32.42453 + 212, 211, 211, 213, 215, 216, 214, 212, 211, 214, 216, 216, 215, 213, 210, 209, 32.42454 + 210, 212, 215, 215, 214, 212, 212, 212, 212, 208, 210, 218, 220, 211, 194, 186, 32.42455 + 165, 189, 208, 214, 207, 234, 254, 249, 254, 254, 255, 255, 255, 255, 255, 255, 32.42456 + 255, 255, 255, 255, 246, 247, 252, 248, 232, 224, 212, 190, 151, 177, 178, 192, 32.42457 + 224, 244, 222, 233, 227, 226, 224, 224, 224, 225, 226, 228, 226, 226, 229, 231, 32.42458 + 231, 231, 232, 233, 234, 233, 233, 236, 238, 236, 233, 231, 232, 227, 219, 214, 32.42459 + 213, 217, 223, 228, 229, 233, 239, 242, 241, 236, 228, 223, 222, 222, 221, 217, 32.42460 + 213, 210, 208, 206, 218, 215, 211, 209, 209, 210, 211, 211, 213, 215, 215, 215, 32.42461 + 213, 210, 206, 204, 208, 211, 213, 214, 213, 212, 212, 213, 216, 207, 205, 215, 32.42462 + 223, 220, 206, 198, 166, 185, 210, 212, 224, 245, 253, 244, 254, 255, 255, 255, 32.42463 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 247, 254, 254, 241, 232, 223, 207, 32.42464 + 167, 176, 198, 199, 223, 247, 220, 236, 229, 228, 226, 224, 224, 225, 225, 225, 32.42465 + 227, 225, 228, 231, 230, 228, 230, 234, 231, 228, 228, 232, 235, 232, 229, 229, 32.42466 + 230, 225, 216, 212, 214, 219, 224, 228, 228, 232, 236, 238, 238, 233, 225, 220, 32.42467 + 219, 221, 220, 214, 209, 207, 204, 201, 213, 211, 207, 205, 205, 207, 209, 211, 32.42468 + 213, 213, 212, 211, 210, 208, 205, 202, 207, 209, 211, 211, 210, 208, 209, 210, 32.42469 + 217, 209, 205, 211, 221, 221, 204, 189, 165, 175, 209, 212, 237, 251, 250, 246, 32.42470 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 247, 253, 254, 32.42471 + 245, 237, 229, 217, 183, 189, 209, 216, 227, 237, 230, 232, 229, 228, 225, 224, 32.42472 + 223, 222, 223, 223, 225, 223, 225, 228, 226, 223, 225, 232, 230, 225, 226, 231, 32.42473 + 232, 229, 227, 229, 225, 220, 215, 214, 217, 221, 223, 227, 228, 230, 231, 235, 32.42474 + 234, 230, 223, 216, 213, 220, 223, 218, 212, 209, 203, 197, 208, 209, 209, 210, 32.42475 + 209, 210, 211, 213, 213, 211, 208, 208, 210, 209, 206, 204, 204, 206, 207, 207, 32.42476 + 206, 205, 207, 209, 210, 211, 210, 210, 218, 221, 202, 181, 174, 175, 211, 214, 32.42477 + 249, 254, 247, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42478 + 254, 246, 249, 253, 244, 235, 229, 218, 192, 202, 213, 230, 232, 225, 241, 228, 32.42479 + 229, 228, 226, 224, 222, 221, 221, 220, 221, 219, 221, 224, 222, 217, 220, 227, 32.42480 + 230, 224, 224, 230, 232, 227, 227, 230, 220, 217, 216, 218, 222, 224, 224, 224, 32.42481 + 228, 229, 230, 231, 232, 229, 220, 215, 210, 221, 227, 224, 216, 211, 204, 195, 32.42482 + 207, 210, 214, 216, 216, 215, 214, 214, 214, 211, 207, 207, 209, 209, 207, 205, 32.42483 + 202, 204, 206, 205, 204, 203, 205, 207, 203, 211, 215, 213, 218, 222, 206, 181, 32.42484 + 189, 183, 218, 219, 254, 255, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42485 + 255, 255, 255, 255, 255, 248, 253, 249, 242, 228, 214, 236, 205, 216, 219, 224, 32.42486 + 234, 232, 228, 234, 227, 226, 224, 223, 221, 220, 219, 219, 216, 218, 221, 224, 32.42487 + 224, 222, 220, 219, 226, 226, 225, 224, 223, 221, 218, 217, 218, 218, 219, 222, 32.42488 + 224, 226, 226, 225, 225, 229, 222, 220, 229, 228, 212, 204, 212, 216, 217, 216, 32.42489 + 218, 220, 209, 195, 204, 204, 207, 210, 211, 212, 212, 213, 209, 208, 206, 205, 32.42490 + 204, 203, 203, 203, 200, 203, 206, 207, 205, 205, 206, 208, 212, 210, 217, 223, 32.42491 + 223, 222, 207, 180, 183, 198, 219, 238, 251, 255, 255, 255, 255, 255, 255, 255, 32.42492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 253, 248, 243, 230, 215, 233, 32.42493 + 216, 223, 221, 223, 233, 233, 227, 232, 227, 226, 225, 224, 221, 221, 219, 219, 32.42494 + 216, 218, 220, 222, 223, 222, 219, 218, 218, 219, 221, 221, 220, 218, 215, 213, 32.42495 + 219, 219, 218, 220, 223, 225, 224, 223, 207, 221, 223, 222, 225, 219, 215, 221, 32.42496 + 214, 218, 218, 215, 220, 228, 227, 219, 202, 203, 206, 208, 210, 211, 211, 211, 32.42497 + 206, 207, 205, 204, 203, 202, 201, 201, 201, 203, 205, 207, 205, 205, 206, 209, 32.42498 + 210, 207, 214, 221, 220, 221, 208, 184, 196, 204, 221, 242, 254, 255, 255, 255, 32.42499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 249, 32.42500 + 244, 232, 215, 230, 227, 228, 220, 220, 231, 233, 227, 229, 227, 227, 225, 224, 32.42501 + 221, 221, 218, 219, 215, 217, 218, 219, 220, 219, 216, 215, 213, 215, 217, 219, 32.42502 + 219, 217, 215, 214, 211, 217, 226, 234, 239, 235, 227, 220, 222, 218, 207, 209, 32.42503 + 222, 217, 202, 198, 191, 202, 210, 211, 216, 224, 221, 213, 200, 201, 204, 207, 32.42504 + 209, 210, 209, 210, 204, 205, 204, 203, 201, 200, 199, 198, 201, 203, 204, 206, 32.42505 + 204, 204, 205, 207, 209, 206, 213, 220, 218, 219, 212, 192, 210, 207, 220, 244, 32.42506 + 255, 253, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42507 + 255, 255, 253, 249, 245, 236, 217, 229, 232, 229, 216, 215, 229, 233, 228, 229, 32.42508 + 228, 227, 226, 224, 221, 219, 218, 218, 216, 216, 217, 217, 217, 216, 216, 215, 32.42509 + 216, 216, 216, 216, 216, 217, 217, 218, 222, 224, 228, 231, 230, 222, 210, 202, 32.42510 + 203, 207, 204, 205, 211, 207, 204, 214, 209, 213, 210, 203, 205, 218, 228, 229, 32.42511 + 198, 200, 202, 204, 206, 206, 205, 206, 201, 202, 201, 201, 199, 198, 196, 195, 32.42512 + 198, 200, 202, 204, 202, 202, 202, 204, 211, 206, 214, 220, 219, 220, 217, 203, 32.42513 + 219, 210, 218, 244, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42514 + 255, 255, 255, 255, 255, 255, 253, 246, 246, 242, 223, 234, 230, 224, 211, 211, 32.42515 + 225, 232, 227, 230, 229, 228, 226, 224, 221, 219, 218, 217, 218, 218, 217, 216, 32.42516 + 215, 215, 215, 215, 218, 216, 214, 212, 212, 215, 217, 220, 230, 228, 225, 224, 32.42517 + 224, 225, 223, 222, 210, 207, 195, 194, 208, 209, 198, 195, 193, 205, 212, 211, 32.42518 + 212, 218, 217, 211, 199, 200, 202, 204, 204, 204, 202, 202, 198, 199, 198, 198, 32.42519 + 196, 195, 194, 193, 194, 197, 199, 201, 200, 200, 201, 203, 211, 205, 213, 219, 32.42520 + 217, 217, 216, 207, 222, 212, 219, 244, 254, 250, 255, 255, 255, 255, 255, 255, 32.42521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 249, 249, 231, 238, 32.42522 + 225, 219, 208, 208, 224, 231, 227, 230, 229, 228, 226, 224, 222, 219, 217, 216, 32.42523 + 218, 216, 213, 212, 211, 212, 213, 213, 215, 213, 211, 209, 211, 214, 219, 222, 32.42524 + 223, 226, 229, 230, 223, 209, 192, 179, 179, 194, 193, 186, 192, 195, 187, 181, 32.42525 + 184, 194, 198, 199, 204, 213, 215, 210, 204, 203, 205, 206, 204, 204, 201, 200, 32.42526 + 197, 197, 195, 193, 191, 191, 192, 192, 191, 194, 197, 200, 199, 200, 202, 204, 32.42527 + 210, 203, 210, 217, 212, 210, 211, 206, 221, 216, 225, 243, 254, 255, 255, 255, 32.42528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 32.42529 + 252, 251, 228, 230, 220, 218, 209, 210, 226, 230, 226, 230, 229, 228, 227, 224, 32.42530 + 222, 219, 217, 216, 215, 213, 210, 207, 206, 207, 208, 210, 210, 210, 212, 213, 32.42531 + 216, 220, 224, 225, 229, 232, 232, 222, 195, 156, 113, 86, 93, 165, 208, 193, 32.42532 + 169, 170, 190, 213, 161, 143, 112, 89, 100, 138, 177, 195, 210, 209, 211, 210, 32.42533 + 208, 205, 203, 201, 198, 196, 192, 189, 188, 188, 190, 192, 190, 193, 196, 200, 32.42534 + 201, 202, 204, 207, 210, 203, 210, 217, 210, 205, 206, 205, 222, 225, 233, 245, 32.42535 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42536 + 255, 255, 255, 253, 254, 249, 221, 218, 218, 219, 212, 214, 227, 229, 225, 228, 32.42537 + 230, 229, 227, 224, 222, 219, 216, 215, 214, 211, 208, 204, 203, 203, 206, 207, 32.42538 + 205, 209, 214, 219, 224, 227, 229, 229, 232, 229, 223, 210, 187, 157, 126, 107, 32.42539 + 123, 168, 190, 182, 187, 198, 182, 161, 142, 127, 99, 81, 94, 130, 163, 179, 32.42540 + 215, 215, 215, 213, 212, 207, 204, 202, 198, 195, 190, 187, 185, 187, 190, 192, 32.42541 + 191, 193, 197, 201, 202, 205, 207, 209, 212, 206, 213, 220, 212, 205, 207, 205, 32.42542 + 223, 230, 240, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42543 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 242, 227, 210, 217, 213, 212, 216, 32.42544 + 223, 230, 231, 232, 230, 226, 224, 225, 222, 216, 214, 215, 217, 210, 205, 202, 32.42545 + 204, 206, 206, 205, 214, 215, 216, 219, 224, 227, 228, 227, 227, 230, 234, 226, 32.42546 + 198, 164, 143, 138, 149, 166, 185, 188, 187, 198, 191, 166, 149, 156, 143, 140, 32.42547 + 135, 136, 162, 173, 213, 217, 212, 209, 216, 212, 204, 206, 201, 198, 192, 188, 32.42548 + 186, 186, 188, 190, 192, 196, 201, 205, 205, 205, 204, 205, 208, 206, 217, 210, 32.42549 + 209, 214, 204, 208, 212, 226, 241, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.42550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 246, 226, 205, 32.42551 + 207, 206, 210, 217, 226, 231, 231, 230, 230, 227, 225, 226, 222, 215, 213, 213, 32.42552 + 207, 206, 206, 207, 209, 211, 213, 212, 217, 219, 222, 226, 229, 230, 229, 228, 32.42553 + 228, 230, 230, 223, 199, 168, 148, 142, 146, 156, 173, 178, 175, 181, 179, 162, 32.42554 + 150, 160, 152, 153, 150, 149, 171, 177, 202, 210, 210, 211, 218, 217, 211, 217, 32.42555 + 203, 200, 194, 190, 187, 188, 190, 191, 188, 192, 198, 203, 205, 206, 207, 208, 32.42556 + 208, 204, 216, 211, 206, 206, 196, 203, 204, 222, 242, 255, 255, 255, 255, 255, 32.42557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42558 + 255, 253, 229, 206, 207, 205, 207, 212, 223, 231, 234, 235, 230, 227, 226, 226, 32.42559 + 222, 215, 211, 211, 199, 204, 208, 212, 213, 214, 216, 217, 216, 220, 224, 227, 32.42560 + 227, 226, 224, 224, 226, 226, 223, 218, 200, 178, 160, 154, 139, 138, 150, 159, 32.42561 + 154, 154, 155, 149, 132, 147, 147, 158, 161, 162, 183, 187, 202, 213, 215, 216, 32.42562 + 219, 215, 211, 216, 209, 205, 199, 194, 190, 190, 192, 193, 188, 192, 197, 203, 32.42563 + 204, 205, 206, 207, 206, 201, 216, 216, 211, 208, 199, 212, 199, 221, 243, 255, 32.42564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42565 + 255, 255, 255, 255, 255, 255, 236, 219, 216, 210, 202, 203, 213, 225, 234, 239, 32.42566 + 232, 228, 227, 227, 222, 214, 208, 209, 201, 205, 211, 213, 212, 211, 214, 216, 32.42567 + 219, 222, 224, 225, 223, 222, 223, 224, 225, 221, 218, 212, 202, 188, 174, 167, 32.42568 + 144, 127, 129, 140, 138, 134, 135, 135, 125, 141, 145, 159, 164, 166, 185, 188, 32.42569 + 199, 213, 217, 216, 218, 213, 208, 215, 214, 211, 204, 199, 194, 192, 193, 193, 32.42570 + 194, 197, 200, 204, 203, 204, 204, 205, 210, 204, 218, 220, 213, 206, 197, 213, 32.42571 + 207, 227, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 225, 218, 211, 211, 32.42573 + 217, 226, 232, 235, 232, 228, 226, 226, 221, 213, 208, 210, 206, 210, 214, 215, 32.42574 + 213, 213, 215, 218, 222, 221, 220, 218, 218, 219, 223, 225, 223, 220, 216, 209, 32.42575 + 201, 192, 182, 173, 158, 129, 121, 132, 132, 128, 128, 128, 148, 159, 157, 167, 32.42576 + 167, 164, 179, 179, 187, 202, 208, 210, 215, 211, 209, 217, 213, 211, 206, 201, 32.42577 + 197, 194, 193, 192, 196, 199, 201, 204, 204, 204, 204, 206, 214, 207, 218, 216, 32.42578 + 210, 204, 195, 207, 223, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.42580 + 239, 237, 237, 240, 243, 242, 238, 233, 233, 228, 224, 223, 219, 212, 208, 211, 32.42581 + 212, 214, 216, 217, 217, 216, 217, 218, 212, 207, 203, 201, 203, 208, 212, 214, 32.42582 + 216, 216, 212, 204, 197, 192, 184, 176, 166, 134, 120, 128, 129, 127, 130, 130, 32.42583 + 159, 168, 163, 169, 167, 163, 177, 176, 187, 196, 199, 200, 203, 199, 195, 201, 32.42584 + 202, 202, 201, 200, 197, 195, 193, 191, 193, 196, 199, 203, 203, 205, 207, 210, 32.42585 + 207, 204, 216, 213, 215, 223, 218, 226, 241, 249, 255, 255, 255, 255, 255, 255, 32.42586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42587 + 255, 255, 255, 255, 251, 252, 254, 255, 255, 253, 244, 236, 233, 227, 222, 221, 32.42588 + 217, 211, 210, 214, 217, 218, 219, 220, 219, 216, 210, 205, 193, 185, 180, 181, 32.42589 + 189, 195, 196, 195, 198, 203, 202, 196, 193, 192, 189, 183, 171, 145, 133, 136, 32.42590 + 132, 133, 141, 145, 160, 168, 162, 168, 169, 164, 176, 174, 187, 194, 189, 187, 32.42591 + 190, 183, 176, 178, 185, 188, 191, 195, 196, 195, 193, 191, 192, 194, 197, 200, 32.42592 + 200, 202, 205, 208, 201, 203, 215, 212, 225, 248, 248, 250, 250, 255, 255, 255, 32.42593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 254, 254, 249, 241, 235, 32.42595 + 232, 227, 221, 219, 216, 211, 212, 216, 220, 219, 219, 220, 217, 209, 197, 188, 32.42596 + 181, 173, 169, 173, 184, 191, 188, 184, 180, 188, 192, 190, 190, 195, 196, 193, 32.42597 + 179, 160, 152, 151, 142, 144, 159, 166, 170, 178, 170, 174, 171, 163, 172, 166, 32.42598 + 177, 182, 177, 176, 181, 178, 170, 173, 171, 176, 183, 191, 194, 195, 193, 191, 32.42599 + 194, 195, 198, 197, 197, 197, 199, 201, 206, 209, 218, 210, 223, 252, 251, 249, 32.42600 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 249, 32.42602 + 250, 250, 241, 231, 231, 226, 221, 220, 218, 213, 211, 213, 219, 216, 217, 217, 32.42603 + 209, 196, 188, 189, 174, 163, 157, 162, 170, 173, 177, 183, 179, 186, 192, 193, 32.42604 + 196, 200, 200, 197, 194, 174, 164, 164, 163, 170, 180, 178, 183, 180, 176, 174, 32.42605 + 174, 174, 171, 168, 176, 180, 176, 176, 183, 179, 170, 170, 171, 173, 172, 180, 32.42606 + 196, 196, 190, 192, 196, 196, 196, 197, 200, 204, 207, 209, 215, 217, 214, 217, 32.42607 + 231, 247, 252, 247, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42609 + 255, 255, 251, 250, 250, 251, 241, 232, 231, 226, 222, 220, 215, 210, 209, 214, 32.42610 + 229, 224, 220, 217, 210, 196, 188, 187, 177, 167, 145, 126, 128, 150, 171, 180, 32.42611 + 182, 185, 186, 185, 187, 190, 188, 184, 177, 166, 169, 175, 171, 174, 180, 180, 32.42612 + 178, 177, 174, 172, 171, 170, 168, 166, 166, 176, 177, 176, 180, 174, 166, 169, 32.42613 + 168, 170, 167, 173, 191, 195, 190, 191, 196, 196, 195, 196, 198, 200, 204, 205, 32.42614 + 210, 212, 215, 220, 234, 248, 251, 247, 253, 255, 255, 255, 255, 255, 255, 255, 32.42615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42616 + 255, 255, 255, 255, 255, 255, 254, 250, 251, 250, 244, 234, 229, 225, 221, 218, 32.42617 + 212, 207, 208, 215, 229, 223, 216, 212, 207, 196, 187, 182, 177, 166, 130, 92, 32.42618 + 89, 120, 149, 158, 177, 177, 174, 169, 168, 169, 167, 162, 152, 149, 161, 172, 32.42619 + 167, 166, 168, 166, 159, 162, 164, 166, 165, 166, 168, 170, 168, 182, 185, 180, 32.42620 + 176, 166, 161, 170, 167, 169, 165, 169, 186, 192, 189, 191, 197, 196, 195, 195, 32.42621 + 196, 197, 200, 202, 205, 209, 215, 224, 239, 249, 252, 247, 253, 255, 255, 255, 32.42622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 252, 246, 238, 32.42624 + 227, 223, 219, 216, 209, 205, 208, 216, 223, 218, 213, 211, 209, 200, 188, 179, 32.42625 + 167, 150, 114, 81, 78, 100, 119, 124, 141, 144, 142, 134, 127, 128, 130, 131, 32.42626 + 136, 129, 136, 145, 141, 140, 140, 135, 131, 137, 143, 147, 148, 152, 159, 164, 32.42627 + 168, 181, 180, 166, 153, 141, 142, 155, 161, 170, 171, 173, 184, 189, 190, 195, 32.42628 + 198, 197, 196, 195, 195, 196, 199, 200, 204, 208, 215, 227, 240, 250, 252, 250, 32.42629 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42631 + 251, 252, 248, 242, 226, 221, 216, 213, 208, 205, 209, 217, 222, 220, 217, 215, 32.42632 + 214, 205, 190, 178, 161, 138, 110, 98, 102, 110, 117, 121, 133, 143, 147, 139, 32.42633 + 131, 133, 144, 152, 148, 129, 123, 126, 124, 126, 126, 119, 118, 122, 126, 127, 32.42634 + 128, 132, 138, 143, 145, 155, 149, 130, 114, 104, 109, 128, 145, 165, 175, 176, 32.42635 + 182, 187, 192, 201, 198, 197, 196, 195, 196, 197, 200, 201, 206, 209, 217, 230, 32.42636 + 242, 250, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42638 + 255, 255, 255, 255, 253, 253, 250, 246, 232, 224, 215, 211, 208, 206, 207, 213, 32.42639 + 215, 217, 215, 211, 205, 198, 184, 171, 173, 150, 133, 136, 145, 151, 156, 162, 32.42640 + 164, 176, 182, 177, 172, 177, 191, 201, 162, 137, 125, 125, 124, 127, 127, 119, 32.42641 + 121, 120, 117, 114, 111, 112, 115, 118, 113, 122, 116, 101, 90, 83, 89, 106, 32.42642 + 134, 159, 172, 173, 180, 187, 194, 203, 195, 195, 194, 195, 196, 198, 202, 203, 32.42643 + 210, 212, 220, 234, 245, 250, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 249, 241, 229, 215, 209, 32.42646 + 208, 206, 204, 206, 207, 210, 207, 200, 192, 188, 179, 170, 177, 174, 170, 170, 32.42647 + 178, 189, 196, 199, 181, 187, 189, 184, 181, 186, 194, 199, 207, 188, 183, 186, 32.42648 + 184, 185, 183, 175, 179, 174, 167, 163, 163, 165, 168, 169, 166, 177, 175, 169, 32.42649 + 167, 161, 159, 169, 144, 164, 171, 169, 178, 188, 191, 196, 190, 190, 191, 192, 32.42650 + 195, 199, 203, 205, 211, 215, 225, 241, 250, 252, 251, 254, 255, 255, 255, 255, 32.42651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.42653 + 249, 233, 216, 209, 208, 205, 201, 201, 202, 207, 204, 195, 187, 187, 182, 177, 32.42654 + 166, 183, 190, 184, 187, 203, 208, 203, 193, 193, 188, 181, 179, 182, 182, 179, 32.42655 + 166, 156, 160, 169, 165, 162, 159, 151, 157, 151, 144, 142, 147, 154, 160, 162, 32.42656 + 168, 181, 184, 185, 187, 178, 168, 171, 162, 175, 174, 168, 179, 188, 188, 187, 32.42657 + 187, 187, 188, 191, 194, 198, 203, 206, 211, 216, 229, 247, 253, 252, 249, 251, 32.42658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42660 + 255, 253, 252, 252, 246, 233, 220, 216, 212, 205, 204, 209, 203, 204, 203, 198, 32.42661 + 188, 181, 175, 175, 177, 182, 187, 193, 197, 201, 201, 201, 192, 190, 189, 189, 32.42662 + 187, 180, 169, 161, 164, 161, 158, 156, 156, 157, 156, 156, 158, 154, 148, 151, 32.42663 + 166, 180, 183, 177, 184, 193, 191, 186, 186, 180, 177, 185, 170, 171, 174, 178, 32.42664 + 181, 186, 190, 192, 194, 185, 183, 191, 199, 202, 208, 214, 214, 226, 239, 245, 32.42665 + 249, 251, 250, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42667 + 255, 255, 255, 255, 255, 253, 251, 251, 252, 239, 226, 220, 213, 205, 204, 206, 32.42668 + 203, 204, 203, 197, 189, 181, 176, 176, 181, 184, 190, 195, 199, 200, 199, 198, 32.42669 + 189, 188, 187, 188, 189, 186, 179, 173, 163, 162, 161, 160, 159, 160, 161, 164, 32.42670 + 160, 159, 156, 158, 170, 182, 185, 180, 180, 189, 188, 184, 185, 179, 176, 183, 32.42671 + 172, 172, 175, 178, 181, 186, 191, 194, 189, 186, 189, 197, 202, 202, 207, 212, 32.42672 + 212, 227, 240, 247, 249, 252, 252, 249, 255, 255, 255, 255, 255, 255, 255, 255, 32.42673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 249, 252, 243, 233, 224, 32.42675 + 215, 207, 206, 207, 204, 204, 201, 196, 189, 183, 178, 177, 181, 185, 191, 196, 32.42676 + 200, 199, 197, 196, 185, 181, 177, 175, 175, 173, 168, 164, 165, 165, 165, 165, 32.42677 + 164, 165, 168, 171, 163, 167, 169, 171, 178, 188, 190, 188, 178, 188, 188, 185, 32.42678 + 187, 181, 176, 182, 175, 175, 176, 178, 181, 186, 193, 196, 187, 190, 197, 202, 32.42679 + 201, 198, 203, 210, 226, 238, 249, 253, 253, 253, 250, 248, 255, 255, 255, 255, 32.42680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 250, 250, 32.42682 + 251, 246, 237, 227, 216, 209, 208, 209, 204, 203, 200, 195, 189, 185, 181, 179, 32.42683 + 179, 183, 190, 197, 199, 198, 197, 194, 185, 179, 172, 168, 167, 165, 162, 159, 32.42684 + 159, 156, 154, 154, 156, 158, 158, 158, 159, 166, 170, 169, 170, 174, 175, 174, 32.42685 + 182, 191, 190, 188, 190, 183, 175, 180, 177, 176, 177, 178, 181, 187, 194, 198, 32.42686 + 190, 195, 200, 200, 196, 195, 203, 213, 234, 244, 252, 252, 251, 253, 252, 251, 32.42687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42689 + 255, 253, 251, 250, 251, 251, 243, 230, 216, 207, 205, 206, 204, 202, 198, 195, 32.42690 + 190, 187, 184, 182, 181, 184, 190, 194, 197, 195, 193, 191, 186, 180, 172, 167, 32.42691 + 166, 165, 162, 159, 152, 145, 138, 139, 144, 146, 142, 137, 151, 161, 167, 166, 32.42692 + 162, 164, 167, 167, 184, 191, 190, 187, 189, 181, 172, 175, 178, 177, 177, 178, 32.42693 + 181, 187, 194, 198, 194, 198, 200, 197, 195, 200, 212, 222, 235, 244, 248, 248, 32.42694 + 247, 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42696 + 255, 255, 255, 255, 255, 253, 251, 250, 254, 254, 250, 234, 216, 207, 204, 204, 32.42697 + 204, 201, 197, 194, 191, 190, 186, 184, 186, 189, 192, 193, 194, 194, 191, 189, 32.42698 + 183, 176, 165, 157, 151, 145, 137, 131, 123, 115, 107, 107, 111, 112, 107, 102, 32.42699 + 114, 127, 139, 144, 148, 157, 165, 168, 181, 188, 184, 181, 184, 178, 169, 171, 32.42700 + 178, 177, 178, 179, 182, 187, 193, 196, 195, 198, 198, 196, 200, 209, 218, 222, 32.42701 + 243, 251, 253, 254, 250, 250, 251, 249, 255, 255, 255, 255, 255, 255, 255, 255, 32.42702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 252, 250, 254, 252, 237, 32.42704 + 219, 211, 210, 211, 205, 201, 196, 194, 192, 191, 188, 186, 186, 188, 189, 193, 32.42705 + 195, 196, 197, 197, 189, 182, 173, 164, 156, 146, 135, 127, 109, 106, 103, 100, 32.42706 + 98, 97, 96, 96, 101, 114, 126, 134, 141, 153, 161, 165, 179, 184, 179, 177, 32.42707 + 182, 178, 170, 173, 176, 176, 178, 180, 182, 186, 191, 193, 193, 195, 196, 198, 32.42708 + 205, 211, 208, 200, 223, 235, 247, 250, 250, 250, 250, 246, 255, 255, 255, 255, 32.42709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 32.42711 + 243, 252, 252, 239, 223, 218, 219, 220, 206, 201, 195, 193, 193, 192, 190, 188, 32.42712 + 183, 184, 188, 193, 197, 203, 206, 208, 204, 200, 196, 194, 190, 185, 175, 169, 32.42713 + 157, 160, 160, 156, 148, 145, 149, 154, 162, 170, 175, 175, 176, 180, 183, 182, 32.42714 + 178, 182, 178, 176, 183, 180, 175, 179, 175, 176, 177, 180, 183, 186, 190, 192, 32.42715 + 192, 194, 196, 200, 207, 207, 190, 173, 175, 194, 217, 233, 244, 252, 255, 254, 32.42716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42718 + 255, 255, 255, 254, 249, 254, 248, 243, 214, 225, 220, 214, 210, 207, 198, 191, 32.42719 + 191, 198, 196, 188, 199, 194, 189, 190, 196, 203, 208, 210, 216, 212, 205, 198, 32.42720 + 196, 193, 182, 172, 168, 173, 171, 161, 153, 157, 165, 170, 180, 180, 179, 179, 32.42721 + 180, 183, 186, 188, 185, 186, 184, 182, 182, 182, 176, 168, 181, 182, 182, 182, 32.42722 + 185, 188, 192, 194, 184, 201, 198, 199, 218, 212, 182, 168, 179, 171, 198, 227, 32.42723 + 249, 254, 242, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42725 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 254, 248, 243, 214, 224, 218, 212, 32.42726 + 215, 213, 204, 195, 193, 197, 196, 191, 191, 188, 187, 191, 200, 206, 209, 209, 32.42727 + 204, 204, 202, 199, 198, 199, 192, 184, 175, 176, 175, 171, 166, 165, 171, 179, 32.42728 + 180, 179, 179, 179, 180, 182, 183, 184, 184, 186, 186, 184, 185, 186, 180, 173, 32.42729 + 181, 181, 181, 182, 184, 188, 191, 193, 194, 204, 194, 189, 204, 202, 179, 168, 32.42730 + 176, 166, 180, 198, 225, 248, 246, 255, 254, 255, 255, 255, 255, 255, 255, 255, 32.42731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 254, 247, 244, 32.42733 + 214, 221, 214, 208, 220, 219, 212, 203, 197, 197, 197, 194, 187, 187, 188, 194, 32.42734 + 202, 207, 206, 204, 202, 205, 205, 201, 197, 195, 189, 183, 177, 171, 170, 173, 32.42735 + 171, 166, 170, 179, 173, 174, 175, 176, 178, 180, 180, 181, 181, 184, 185, 184, 32.42736 + 185, 187, 184, 177, 186, 186, 186, 187, 190, 193, 196, 198, 202, 206, 195, 188, 32.42737 + 200, 199, 181, 168, 175, 167, 171, 172, 205, 249, 254, 253, 254, 254, 255, 255, 32.42738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42740 + 250, 253, 247, 245, 214, 219, 210, 205, 220, 221, 219, 213, 205, 200, 197, 196, 32.42741 + 192, 191, 190, 194, 200, 202, 200, 197, 199, 204, 205, 199, 192, 190, 185, 178, 32.42742 + 177, 166, 165, 173, 173, 163, 163, 173, 165, 167, 170, 173, 176, 178, 178, 179, 32.42743 + 178, 182, 183, 182, 183, 185, 183, 178, 188, 188, 188, 190, 192, 195, 197, 199, 32.42744 + 196, 199, 195, 193, 201, 202, 185, 166, 174, 173, 173, 162, 193, 247, 254, 244, 32.42745 + 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42747 + 255, 255, 255, 255, 251, 253, 247, 247, 216, 217, 207, 203, 215, 218, 220, 220, 32.42748 + 213, 205, 199, 197, 196, 192, 188, 188, 192, 194, 193, 191, 185, 192, 194, 190, 32.42749 + 186, 185, 182, 178, 176, 166, 165, 172, 170, 161, 160, 169, 167, 168, 170, 172, 32.42750 + 174, 176, 175, 175, 178, 183, 185, 183, 183, 184, 182, 178, 183, 184, 184, 185, 32.42751 + 187, 189, 190, 191, 188, 188, 189, 191, 198, 204, 192, 171, 180, 180, 178, 157, 32.42752 + 180, 234, 246, 242, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.42753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42754 + 255, 255, 255, 255, 255, 255, 255, 255, 251, 252, 247, 249, 218, 217, 206, 203, 32.42755 + 208, 210, 214, 220, 218, 210, 204, 202, 197, 192, 185, 183, 186, 189, 189, 187, 32.42756 + 182, 184, 183, 178, 175, 174, 170, 165, 166, 161, 160, 163, 161, 154, 155, 163, 32.42757 + 171, 172, 172, 172, 172, 172, 171, 171, 179, 185, 188, 186, 185, 186, 185, 182, 32.42758 + 184, 185, 185, 186, 186, 187, 187, 187, 192, 185, 187, 190, 195, 207, 204, 182, 32.42759 + 188, 187, 186, 161, 172, 217, 240, 254, 253, 254, 254, 255, 255, 255, 255, 255, 32.42760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 251, 247, 251, 32.42762 + 220, 218, 206, 204, 204, 202, 205, 214, 218, 214, 210, 209, 205, 199, 191, 188, 32.42763 + 189, 189, 186, 183, 180, 177, 172, 166, 164, 163, 157, 150, 153, 156, 157, 155, 32.42764 + 151, 150, 155, 160, 165, 164, 164, 163, 164, 166, 167, 169, 176, 183, 188, 186, 32.42765 + 185, 187, 188, 186, 187, 187, 187, 187, 186, 186, 185, 184, 188, 180, 186, 192, 32.42766 + 193, 205, 203, 178, 173, 177, 185, 168, 167, 197, 225, 253, 253, 253, 254, 254, 32.42767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42769 + 251, 250, 247, 252, 222, 219, 206, 205, 202, 197, 198, 209, 216, 216, 214, 215, 32.42770 + 216, 210, 202, 197, 195, 191, 185, 180, 168, 164, 159, 156, 159, 163, 159, 153, 32.42771 + 150, 158, 162, 156, 151, 155, 162, 167, 153, 153, 153, 154, 157, 162, 166, 169, 32.42772 + 171, 179, 184, 184, 184, 187, 188, 187, 186, 185, 184, 184, 183, 181, 180, 179, 32.42773 + 174, 169, 182, 192, 191, 198, 189, 157, 145, 154, 177, 170, 162, 178, 204, 246, 32.42774 + 252, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42776 + 255, 254, 253, 252, 252, 251, 253, 242, 221, 214, 212, 205, 201, 200, 201, 207, 32.42777 + 209, 209, 212, 217, 219, 214, 208, 205, 204, 201, 196, 191, 175, 172, 169, 167, 32.42778 + 166, 164, 160, 157, 155, 160, 165, 170, 173, 171, 167, 165, 149, 158, 165, 163, 32.42779 + 162, 164, 167, 168, 181, 182, 185, 187, 188, 188, 186, 185, 184, 183, 182, 180, 32.42780 + 178, 175, 172, 171, 171, 182, 176, 184, 192, 189, 182, 154, 117, 122, 140, 174, 32.42781 + 179, 190, 186, 233, 248, 254, 250, 247, 253, 253, 255, 255, 255, 255, 255, 255, 32.42782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42783 + 255, 255, 255, 255, 255, 254, 253, 252, 252, 251, 253, 243, 222, 215, 213, 205, 32.42784 + 199, 197, 197, 201, 202, 201, 203, 208, 211, 209, 205, 204, 205, 203, 198, 193, 32.42785 + 182, 179, 175, 173, 172, 172, 169, 167, 168, 170, 171, 174, 174, 175, 172, 171, 32.42786 + 161, 169, 172, 169, 166, 169, 173, 175, 184, 185, 187, 188, 187, 186, 184, 182, 32.42787 + 183, 182, 180, 178, 176, 174, 173, 172, 171, 182, 176, 183, 192, 191, 188, 162, 32.42788 + 123, 102, 99, 135, 158, 185, 179, 212, 247, 254, 253, 248, 255, 255, 254, 255, 32.42789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42790 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 253, 252, 251, 251, 253, 244, 32.42791 + 224, 217, 214, 204, 201, 198, 197, 200, 199, 198, 199, 203, 208, 208, 207, 208, 32.42792 + 210, 209, 206, 204, 192, 189, 184, 183, 182, 181, 179, 178, 180, 180, 178, 177, 32.42793 + 177, 177, 178, 179, 174, 180, 180, 174, 171, 175, 179, 180, 186, 186, 187, 187, 32.42794 + 185, 183, 181, 178, 180, 178, 175, 173, 172, 172, 173, 174, 171, 181, 174, 182, 32.42795 + 190, 191, 192, 172, 145, 102, 74, 99, 137, 186, 180, 192, 240, 253, 253, 248, 32.42796 + 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 253, 252, 32.42798 + 251, 250, 253, 244, 226, 218, 214, 204, 202, 199, 197, 199, 198, 196, 197, 202, 32.42799 + 207, 206, 205, 206, 208, 209, 209, 209, 201, 197, 192, 189, 186, 186, 184, 182, 32.42800 + 182, 181, 179, 178, 178, 179, 180, 181, 178, 182, 182, 177, 175, 178, 181, 180, 32.42801 + 182, 182, 183, 182, 181, 179, 177, 176, 177, 175, 171, 169, 168, 170, 173, 175, 32.42802 + 172, 180, 173, 180, 186, 187, 191, 177, 162, 123, 86, 87, 116, 184, 186, 182, 32.42803 + 229, 247, 251, 248, 252, 253, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.42805 + 254, 254, 253, 252, 252, 250, 251, 243, 225, 219, 215, 204, 198, 194, 192, 193, 32.42806 + 192, 191, 193, 198, 201, 200, 197, 195, 196, 198, 201, 204, 204, 200, 195, 191, 32.42807 + 189, 186, 184, 181, 180, 181, 182, 181, 181, 181, 181, 181, 176, 181, 183, 180, 32.42808 + 179, 181, 181, 178, 175, 175, 176, 176, 176, 175, 174, 174, 174, 172, 168, 165, 32.42809 + 165, 168, 172, 174, 171, 179, 171, 179, 182, 179, 186, 175, 156, 140, 113, 91, 32.42810 + 96, 175, 189, 179, 219, 243, 251, 247, 251, 253, 251, 252, 255, 255, 255, 255, 32.42811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42812 + 255, 255, 254, 254, 254, 254, 253, 252, 253, 249, 248, 240, 223, 219, 215, 204, 32.42813 + 200, 196, 193, 193, 192, 190, 193, 198, 198, 197, 194, 192, 191, 192, 196, 198, 32.42814 + 202, 199, 195, 192, 190, 187, 182, 179, 182, 182, 183, 185, 186, 184, 183, 182, 32.42815 + 176, 181, 183, 181, 181, 183, 180, 176, 170, 170, 171, 171, 171, 172, 172, 172, 32.42816 + 172, 169, 166, 163, 163, 166, 169, 172, 167, 175, 170, 179, 180, 173, 180, 171, 32.42817 + 147, 142, 131, 107, 95, 168, 192, 185, 212, 242, 253, 250, 253, 255, 253, 254, 32.42818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42819 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 253, 252, 253, 248, 246, 236, 32.42820 + 220, 217, 215, 205, 204, 199, 195, 194, 191, 189, 191, 195, 192, 194, 195, 194, 32.42821 + 192, 191, 193, 194, 198, 196, 194, 194, 192, 190, 184, 181, 185, 185, 185, 185, 32.42822 + 184, 182, 181, 180, 179, 181, 181, 177, 177, 178, 177, 172, 169, 169, 170, 169, 32.42823 + 169, 170, 170, 170, 170, 167, 165, 163, 163, 164, 167, 169, 161, 171, 169, 180, 32.42824 + 180, 171, 176, 169, 155, 137, 134, 126, 110, 168, 190, 194, 206, 239, 254, 250, 32.42825 + 253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 253, 252, 32.42827 + 254, 247, 244, 234, 218, 217, 215, 205, 203, 196, 191, 189, 186, 182, 183, 188, 32.42828 + 180, 186, 191, 192, 190, 187, 186, 186, 193, 193, 194, 195, 195, 192, 187, 183, 32.42829 + 188, 186, 184, 181, 180, 179, 178, 178, 182, 182, 177, 171, 170, 173, 172, 168, 32.42830 + 171, 170, 170, 169, 169, 169, 169, 168, 169, 166, 164, 163, 162, 163, 165, 166, 32.42831 + 156, 168, 169, 182, 181, 170, 176, 169, 167, 129, 124, 137, 123, 166, 184, 194, 32.42832 + 200, 235, 252, 248, 250, 253, 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.42833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 254, 32.42834 + 254, 254, 253, 252, 246, 254, 234, 194, 208, 218, 205, 212, 204, 197, 189, 187, 32.42835 + 190, 189, 183, 177, 182, 182, 180, 182, 183, 183, 180, 178, 181, 183, 184, 182, 32.42836 + 180, 177, 177, 178, 177, 176, 176, 177, 177, 176, 173, 170, 176, 171, 169, 171, 32.42837 + 171, 166, 167, 172, 169, 168, 167, 165, 164, 163, 162, 162, 169, 168, 167, 167, 32.42838 + 167, 166, 164, 161, 163, 172, 174, 169, 169, 176, 174, 164, 160, 142, 119, 143, 32.42839 + 123, 97, 200, 203, 215, 245, 254, 249, 251, 254, 252, 250, 255, 255, 255, 255, 32.42840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.42841 + 252, 253, 254, 254, 254, 254, 252, 251, 243, 253, 224, 189, 204, 218, 208, 212, 32.42842 + 199, 194, 188, 186, 186, 184, 180, 175, 178, 177, 175, 176, 179, 181, 182, 182, 32.42843 + 180, 181, 182, 180, 177, 175, 174, 175, 175, 174, 174, 174, 175, 174, 171, 168, 32.42844 + 171, 166, 165, 167, 166, 162, 162, 166, 166, 165, 165, 164, 164, 164, 165, 165, 32.42845 + 168, 166, 164, 163, 164, 164, 163, 161, 163, 171, 173, 167, 168, 174, 173, 166, 32.42846 + 150, 144, 124, 133, 123, 99, 183, 208, 219, 246, 254, 250, 251, 254, 252, 251, 32.42847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.42848 + 254, 254, 254, 254, 252, 253, 254, 254, 254, 254, 252, 251, 246, 249, 212, 187, 32.42849 + 198, 215, 208, 209, 196, 194, 191, 187, 184, 180, 177, 176, 177, 174, 171, 171, 32.42850 + 174, 177, 180, 181, 178, 180, 180, 178, 175, 172, 171, 171, 173, 172, 171, 171, 32.42851 + 172, 171, 169, 167, 169, 166, 165, 166, 165, 161, 160, 162, 163, 163, 163, 163, 32.42852 + 164, 166, 167, 168, 167, 164, 160, 159, 160, 161, 162, 161, 162, 168, 170, 166, 32.42853 + 167, 173, 173, 167, 152, 154, 136, 126, 130, 96, 144, 206, 224, 249, 254, 250, 32.42854 + 253, 254, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42855 + 255, 255, 254, 254, 254, 254, 254, 254, 253, 253, 254, 254, 254, 254, 252, 251, 32.42856 + 251, 249, 202, 189, 191, 209, 207, 206, 195, 196, 195, 191, 184, 179, 177, 177, 32.42857 + 176, 173, 170, 169, 171, 173, 173, 174, 177, 179, 179, 177, 173, 170, 170, 170, 32.42858 + 172, 170, 169, 169, 170, 170, 168, 166, 166, 165, 164, 164, 162, 159, 158, 158, 32.42859 + 162, 162, 162, 163, 164, 165, 167, 168, 166, 162, 158, 156, 157, 160, 162, 162, 32.42860 + 162, 166, 168, 165, 166, 171, 171, 168, 157, 151, 136, 125, 145, 98, 114, 209, 32.42861 + 228, 250, 254, 251, 253, 255, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.42862 + 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 253, 254, 254, 254, 32.42863 + 254, 254, 252, 251, 251, 248, 195, 194, 184, 201, 208, 208, 194, 196, 196, 191, 32.42864 + 182, 176, 174, 175, 169, 168, 168, 169, 171, 171, 170, 169, 176, 177, 178, 176, 32.42865 + 173, 170, 169, 170, 171, 169, 168, 168, 169, 169, 168, 167, 162, 162, 161, 158, 32.42866 + 157, 157, 156, 155, 163, 163, 162, 162, 162, 163, 163, 164, 165, 161, 156, 154, 32.42867 + 156, 160, 162, 164, 162, 165, 167, 166, 167, 169, 169, 167, 158, 138, 126, 125, 32.42868 + 157, 103, 106, 217, 231, 250, 253, 250, 252, 254, 250, 255, 255, 255, 255, 255, 32.42869 + 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.42870 + 253, 254, 254, 254, 254, 253, 252, 251, 247, 246, 192, 201, 176, 191, 207, 209, 32.42871 + 191, 193, 193, 188, 180, 173, 170, 169, 162, 162, 164, 167, 171, 172, 171, 170, 32.42872 + 173, 175, 176, 174, 172, 170, 169, 170, 170, 168, 166, 166, 167, 168, 168, 167, 32.42873 + 165, 166, 164, 160, 159, 162, 163, 161, 165, 164, 163, 162, 161, 161, 161, 162, 32.42874 + 162, 158, 154, 153, 155, 159, 162, 163, 163, 165, 168, 169, 170, 169, 167, 165, 32.42875 + 166, 139, 124, 127, 153, 103, 118, 218, 235, 250, 253, 249, 253, 253, 251, 255, 32.42876 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 32.42877 + 254, 254, 254, 254, 253, 254, 254, 254, 254, 253, 252, 251, 247, 250, 194, 208, 32.42878 + 167, 176, 197, 203, 192, 193, 192, 188, 181, 174, 169, 167, 164, 163, 163, 165, 32.42879 + 169, 172, 172, 172, 169, 171, 172, 172, 170, 168, 168, 169, 167, 165, 163, 163, 32.42880 + 164, 166, 166, 165, 165, 166, 163, 157, 157, 163, 166, 164, 164, 163, 162, 162, 32.42881 + 161, 161, 162, 162, 158, 155, 152, 151, 154, 157, 159, 160, 164, 166, 170, 173, 32.42882 + 172, 169, 165, 163, 169, 151, 136, 129, 139, 113, 158, 228, 241, 252, 252, 250, 32.42883 + 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 32.42884 + 254, 254, 254, 254, 254, 254, 254, 254, 253, 254, 254, 254, 254, 253, 252, 250, 32.42885 + 251, 253, 198, 213, 159, 163, 187, 194, 196, 195, 193, 189, 184, 177, 171, 167, 32.42886 + 169, 166, 163, 163, 165, 168, 170, 170, 166, 168, 170, 169, 168, 167, 167, 168, 32.42887 + 165, 163, 161, 160, 162, 164, 164, 164, 156, 158, 154, 147, 148, 155, 160, 158, 32.42888 + 163, 162, 161, 161, 161, 162, 163, 163, 154, 152, 150, 150, 153, 156, 157, 158, 32.42889 + 165, 167, 171, 175, 174, 169, 163, 161, 156, 152, 141, 129, 131, 130, 205, 254, 32.42890 + 244, 255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 32.42891 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 253, 253, 255, 255, 32.42892 + 255, 255, 253, 253, 248, 253, 222, 214, 129, 167, 183, 182, 182, 193, 185, 178, 32.42893 + 184, 175, 164, 174, 164, 165, 164, 161, 157, 157, 160, 164, 165, 170, 172, 170, 32.42894 + 166, 165, 166, 166, 165, 158, 154, 156, 156, 154, 155, 157, 151, 152, 154, 155, 32.42895 + 155, 155, 157, 159, 158, 158, 157, 157, 154, 151, 152, 156, 149, 151, 153, 153, 32.42896 + 153, 155, 161, 166, 173, 164, 162, 169, 171, 164, 161, 164, 155, 150, 143, 131, 32.42897 + 137, 221, 248, 246, 253, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 32.42898 + 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.42899 + 253, 253, 255, 255, 255, 254, 253, 252, 251, 250, 234, 207, 117, 158, 182, 181, 32.42900 + 182, 188, 185, 181, 181, 174, 168, 171, 162, 163, 162, 159, 156, 156, 159, 162, 32.42901 + 158, 161, 163, 164, 164, 167, 170, 171, 166, 162, 160, 160, 157, 153, 152, 156, 32.42902 + 152, 153, 155, 156, 155, 156, 157, 159, 155, 155, 154, 154, 153, 151, 150, 152, 32.42903 + 147, 150, 152, 152, 153, 156, 161, 166, 167, 162, 161, 166, 168, 166, 164, 164, 32.42904 + 156, 156, 137, 139, 134, 232, 246, 247, 254, 255, 255, 255, 255, 255, 255, 255, 32.42905 + 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.42906 + 254, 254, 254, 254, 253, 253, 255, 255, 254, 254, 252, 252, 251, 242, 251, 212, 32.42907 + 106, 155, 175, 177, 181, 179, 185, 186, 178, 174, 173, 167, 161, 161, 160, 158, 32.42908 + 155, 155, 157, 159, 165, 163, 161, 161, 163, 163, 163, 163, 162, 162, 163, 164, 32.42909 + 159, 153, 153, 158, 153, 155, 157, 157, 156, 155, 157, 159, 151, 151, 151, 151, 32.42910 + 152, 151, 149, 147, 146, 149, 151, 152, 153, 157, 161, 165, 163, 165, 164, 163, 32.42911 + 164, 166, 164, 160, 155, 160, 134, 144, 138, 243, 246, 248, 255, 255, 255, 255, 32.42912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 32.42913 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 254, 253, 251, 251, 32.42914 + 246, 239, 251, 231, 99, 163, 164, 169, 178, 172, 184, 189, 174, 173, 177, 165, 32.42915 + 160, 159, 158, 156, 155, 155, 155, 156, 166, 161, 159, 162, 164, 162, 158, 156, 32.42916 + 153, 156, 162, 165, 160, 155, 156, 162, 155, 157, 158, 157, 156, 155, 156, 157, 32.42917 + 147, 149, 149, 149, 151, 152, 149, 143, 147, 149, 150, 152, 154, 158, 161, 163, 32.42918 + 165, 171, 170, 162, 160, 164, 162, 153, 152, 156, 137, 144, 159, 248, 251, 251, 32.42919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42920 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 32.42921 + 253, 252, 250, 250, 246, 242, 251, 243, 93, 168, 154, 166, 173, 167, 180, 186, 32.42922 + 172, 172, 176, 164, 160, 159, 157, 156, 156, 156, 155, 155, 152, 149, 151, 160, 32.42923 + 165, 162, 158, 157, 150, 153, 160, 163, 160, 154, 156, 161, 157, 158, 158, 157, 32.42924 + 155, 153, 154, 155, 145, 149, 151, 149, 150, 153, 150, 144, 149, 150, 151, 153, 32.42925 + 156, 159, 161, 162, 164, 171, 170, 162, 159, 163, 161, 154, 149, 145, 146, 144, 32.42926 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 32.42928 + 254, 255, 255, 255, 253, 252, 249, 249, 251, 245, 237, 240, 105, 165, 152, 165, 32.42929 + 167, 167, 174, 178, 172, 171, 172, 167, 161, 160, 158, 158, 158, 158, 157, 155, 32.42930 + 150, 146, 149, 158, 160, 153, 149, 152, 153, 154, 158, 162, 159, 154, 154, 158, 32.42931 + 157, 158, 158, 156, 153, 151, 152, 153, 142, 150, 153, 148, 147, 152, 186, 255, 32.42932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 251, 245, 235, 239, 32.42936 + 144, 162, 158, 158, 161, 169, 169, 169, 173, 169, 166, 170, 163, 161, 159, 160, 32.42937 + 161, 161, 158, 156, 157, 151, 152, 157, 155, 146, 145, 152, 156, 154, 156, 161, 32.42938 + 161, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42945 + 247, 250, 255, 243, 252, 239, 248, 247, 251, 234, 240, 249, 247, 255, 255, 246, 32.42946 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42950 + 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 255, 255, 255, 255, 255, 32.42951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42952 + 255, 254, 254, 251, 252, 247, 249, 248, 244, 250, 248, 222, 250, 247, 249, 248, 32.42953 + 246, 253, 253, 250, 253, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 32.42954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42957 + 255, 255, 255, 255, 255, 255, 255, 254, 250, 250, 250, 250, 252, 252, 252, 254, 32.42958 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 252, 252, 252, 252, 32.42959 + 255, 255, 253, 252, 252, 250, 247, 246, 248, 242, 232, 229, 188, 222, 217, 183, 32.42960 + 194, 225, 244, 244, 238, 230, 233, 245, 247, 249, 251, 252, 254, 254, 255, 255, 32.42961 + 254, 252, 254, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 252, 252, 250, 250, 250, 32.42965 + 250, 250, 250, 250, 252, 252, 252, 252, 250, 250, 250, 250, 248, 248, 248, 248, 32.42966 + 246, 246, 246, 246, 248, 248, 248, 245, 245, 242, 240, 239, 225, 223, 206, 189, 32.42967 + 107, 154, 166, 143, 100, 166, 215, 223, 218, 202, 205, 231, 235, 236, 240, 244, 32.42968 + 248, 249, 250, 250, 250, 250, 250, 250, 252, 252, 254, 254, 254, 255, 255, 255, 32.42969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.42972 + 252, 245, 251, 238, 251, 237, 243, 234, 230, 237, 242, 236, 235, 235, 241, 242, 32.42973 + 239, 221, 224, 229, 203, 210, 239, 228, 233, 230, 239, 241, 222, 217, 218, 180, 32.42974 + 192, 146, 148, 122, 131, 161, 135, 153, 112, 142, 166, 149, 122, 130, 119, 153, 32.42975 + 177, 197, 183, 206, 240, 231, 240, 237, 239, 242, 234, 248, 242, 240, 236, 248, 32.42976 + 249, 246, 247, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 32.42979 + 254, 253, 252, 252, 253, 244, 247, 234, 249, 241, 243, 223, 214, 204, 195, 185, 32.42980 + 186, 196, 204, 201, 183, 165, 150, 154, 159, 155, 149, 137, 109, 129, 167, 174, 32.42981 + 146, 132, 131, 124, 102, 102, 119, 113, 92, 140, 138, 161, 139, 130, 105, 95, 32.42982 + 84, 102, 86, 127, 109, 129, 121, 123, 123, 157, 177, 225, 210, 214, 183, 142, 32.42983 + 146, 221, 246, 239, 248, 249, 253, 253, 254, 248, 247, 248, 254, 255, 255, 255, 32.42984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42986 + 251, 251, 253, 253, 253, 252, 251, 251, 250, 244, 247, 237, 245, 244, 238, 205, 32.42987 + 213, 188, 164, 153, 150, 166, 167, 155, 161, 153, 141, 151, 176, 159, 124, 119, 32.42988 + 75, 116, 175, 164, 143, 146, 136, 145, 111, 129, 132, 128, 69, 108, 126, 131, 32.42989 + 141, 117, 53, 56, 53, 86, 65, 120, 108, 133, 135, 120, 72, 101, 80, 131, 32.42990 + 118, 168, 148, 98, 71, 120, 234, 234, 235, 242, 246, 244, 245, 249, 253, 252, 32.42991 + 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42993 + 255, 255, 254, 254, 251, 251, 253, 254, 253, 252, 251, 251, 246, 243, 248, 238, 32.42994 + 233, 240, 234, 196, 204, 176, 152, 150, 137, 158, 157, 141, 131, 128, 143, 158, 32.42995 + 164, 142, 109, 108, 67, 102, 150, 114, 112, 144, 117, 121, 125, 124, 108, 105, 32.42996 + 58, 83, 123, 103, 113, 115, 52, 62, 44, 77, 56, 110, 93, 124, 139, 132, 32.42997 + 83, 82, 43, 51, 64, 140, 140, 150, 86, 32, 198, 238, 236, 241, 239, 236, 32.42998 + 241, 247, 250, 247, 244, 248, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.42999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43000 + 255, 255, 255, 255, 254, 254, 254, 254, 252, 252, 254, 254, 255, 255, 254, 252, 32.43001 + 245, 242, 245, 233, 208, 225, 231, 203, 187, 161, 142, 150, 130, 163, 169, 160, 32.43002 + 157, 131, 163, 174, 152, 141, 125, 116, 95, 101, 131, 99, 97, 117, 90, 104, 32.43003 + 122, 96, 83, 78, 65, 62, 118, 89, 101, 124, 72, 80, 49, 75, 50, 81, 32.43004 + 111, 137, 138, 135, 107, 86, 89, 75, 76, 112, 121, 141, 101, 39, 150, 193, 32.43005 + 232, 236, 238, 239, 244, 244, 242, 237, 245, 250, 252, 252, 251, 251, 255, 255, 32.43006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43007 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 252, 252, 255, 255, 32.43008 + 255, 255, 254, 252, 252, 241, 239, 225, 184, 202, 218, 204, 185, 160, 144, 155, 32.43009 + 124, 167, 184, 180, 174, 130, 160, 158, 135, 147, 139, 121, 103, 85, 109, 106, 32.43010 + 85, 70, 68, 108, 134, 104, 97, 75, 70, 43, 93, 70, 114, 125, 78, 90, 32.43011 + 65, 89, 72, 70, 123, 134, 125, 116, 87, 61, 97, 91, 83, 96, 129, 107, 32.43012 + 100, 98, 97, 118, 167, 181, 201, 224, 235, 236, 239, 247, 253, 255, 255, 253, 32.43013 + 250, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 32.43015 + 251, 251, 253, 253, 255, 254, 253, 250, 255, 241, 240, 234, 176, 182, 188, 172, 32.43016 + 165, 144, 135, 154, 118, 166, 184, 179, 173, 147, 169, 153, 144, 158, 136, 127, 32.43017 + 85, 75, 97, 106, 76, 64, 99, 138, 131, 112, 98, 64, 60, 51, 82, 72, 32.43018 + 130, 115, 76, 98, 80, 97, 100, 84, 129, 122, 123, 130, 99, 99, 117, 127, 32.43019 + 86, 123, 145, 133, 125, 111, 69, 81, 92, 109, 142, 170, 179, 183, 205, 235, 32.43020 + 239, 247, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 32.43022 + 254, 255, 255, 254, 251, 249, 252, 252, 254, 253, 252, 249, 253, 241, 245, 244, 32.43023 + 179, 167, 156, 131, 116, 102, 102, 136, 104, 157, 172, 166, 145, 153, 174, 143, 32.43024 + 138, 139, 94, 99, 61, 69, 85, 86, 61, 83, 146, 160, 156, 142, 107, 63, 32.43025 + 56, 76, 86, 81, 136, 104, 76, 103, 84, 87, 107, 90, 126, 98, 100, 122, 32.43026 + 88, 118, 100, 121, 90, 143, 110, 159, 141, 64, 47, 61, 70, 78, 102, 118, 32.43027 + 109, 106, 137, 185, 197, 214, 231, 247, 251, 252, 246, 243, 254, 255, 255, 255, 32.43028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43029 + 255, 255, 255, 255, 255, 255, 255, 255, 248, 253, 255, 255, 255, 255, 252, 249, 32.43030 + 250, 237, 235, 228, 195, 167, 148, 123, 96, 74, 100, 128, 79, 145, 146, 122, 32.43031 + 145, 159, 150, 114, 115, 89, 78, 61, 61, 63, 47, 81, 99, 134, 146, 147, 32.43032 + 140, 131, 83, 49, 54, 80, 67, 127, 170, 99, 117, 100, 63, 84, 77, 57, 32.43033 + 109, 120, 101, 114, 103, 117, 130, 138, 99, 121, 115, 147, 116, 80, 56, 40, 32.43034 + 55, 44, 67, 100, 93, 106, 102, 127, 118, 123, 163, 211, 244, 236, 251, 254, 32.43035 + 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43036 + 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 253, 255, 255, 252, 32.43037 + 249, 247, 245, 242, 246, 230, 223, 204, 176, 162, 138, 93, 63, 69, 59, 80, 32.43038 + 78, 104, 87, 140, 145, 122, 90, 61, 48, 42, 52, 28, 57, 51, 82, 143, 32.43039 + 160, 145, 127, 143, 125, 136, 112, 80, 98, 129, 127, 172, 126, 120, 138, 89, 32.43040 + 33, 26, 21, 49, 102, 118, 113, 127, 120, 114, 114, 108, 103, 132, 123, 132, 32.43041 + 93, 66, 49, 35, 44, 30, 36, 59, 66, 108, 119, 141, 130, 113, 113, 140, 32.43042 + 179, 232, 248, 236, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43043 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 255, 255, 254, 253, 32.43044 + 251, 249, 248, 248, 249, 248, 250, 250, 228, 219, 208, 181, 159, 163, 136, 76, 32.43045 + 44, 58, 39, 56, 71, 80, 66, 145, 129, 98, 65, 60, 34, 48, 61, 20, 32.43046 + 63, 46, 97, 133, 141, 107, 82, 110, 106, 139, 145, 114, 136, 150, 148, 167, 32.43047 + 117, 128, 114, 49, 18, 11, 4, 59, 120, 133, 135, 136, 133, 110, 114, 103, 32.43048 + 118, 138, 123, 114, 82, 67, 50, 29, 35, 34, 44, 57, 59, 107, 124, 146, 32.43049 + 121, 100, 100, 107, 128, 235, 248, 239, 249, 255, 255, 255, 255, 255, 255, 255, 32.43050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 254, 254, 254, 32.43051 + 255, 255, 254, 251, 251, 246, 244, 246, 248, 246, 245, 244, 207, 203, 195, 170, 32.43052 + 146, 150, 130, 81, 48, 38, 44, 69, 54, 82, 96, 112, 81, 95, 62, 59, 32.43053 + 34, 53, 57, 23, 78, 59, 103, 76, 82, 73, 59, 75, 80, 119, 148, 125, 32.43054 + 146, 129, 125, 127, 134, 107, 60, 8, 7, 24, 42, 102, 150, 154, 150, 131, 32.43055 + 127, 104, 130, 130, 142, 135, 114, 103, 95, 87, 65, 41, 38, 46, 65, 71, 32.43056 + 51, 84, 110, 149, 130, 86, 101, 97, 111, 214, 243, 247, 248, 253, 254, 253, 32.43057 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43058 + 253, 254, 254, 254, 254, 253, 252, 247, 248, 242, 234, 234, 231, 223, 216, 213, 32.43059 + 192, 183, 182, 161, 125, 112, 102, 77, 60, 21, 33, 71, 49, 76, 105, 85, 32.43060 + 55, 121, 69, 36, 22, 38, 46, 35, 62, 50, 85, 43, 53, 61, 47, 48, 32.43061 + 60, 92, 126, 125, 144, 116, 120, 123, 111, 59, 22, 1, 0, 32, 92, 154, 32.43062 + 152, 157, 151, 128, 122, 105, 142, 152, 156, 128, 108, 98, 101, 93, 82, 77, 32.43063 + 65, 58, 68, 73, 46, 67, 97, 149, 163, 86, 101, 83, 91, 150, 206, 245, 32.43064 + 251, 253, 252, 249, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43065 + 255, 255, 255, 254, 253, 254, 254, 254, 254, 251, 250, 246, 237, 220, 209, 207, 32.43066 + 205, 194, 186, 182, 180, 164, 159, 141, 95, 69, 63, 54, 60, 26, 14, 56, 32.43067 + 68, 64, 80, 87, 40, 127, 75, 32, 33, 37, 55, 52, 57, 38, 51, 33, 32.43068 + 38, 43, 29, 34, 56, 81, 99, 114, 126, 107, 117, 120, 60, 9, 0, 20, 32.43069 + 28, 72, 138, 170, 131, 143, 141, 135, 129, 120, 148, 157, 156, 127, 122, 100, 32.43070 + 96, 85, 90, 108, 99, 80, 84, 97, 74, 83, 90, 125, 151, 101, 131, 110, 32.43071 + 90, 92, 167, 237, 245, 251, 251, 248, 250, 255, 255, 255, 255, 255, 255, 255, 32.43072 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 254, 252, 252, 252, 249, 248, 244, 32.43073 + 222, 197, 181, 180, 180, 172, 167, 166, 165, 143, 133, 115, 74, 52, 45, 33, 32.43074 + 41, 34, 19, 53, 77, 59, 69, 82, 30, 91, 50, 24, 41, 36, 66, 44, 32.43075 + 74, 57, 41, 42, 36, 40, 34, 41, 56, 85, 84, 101, 95, 87, 86, 73, 32.43076 + 23, 0, 7, 46, 80, 121, 149, 138, 111, 123, 113, 127, 125, 132, 149, 155, 32.43077 + 156, 138, 147, 113, 107, 94, 92, 102, 100, 91, 100, 112, 89, 97, 88, 104, 32.43078 + 130, 123, 146, 139, 101, 83, 132, 188, 222, 240, 251, 248, 247, 253, 254, 255, 32.43079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 250, 32.43080 + 250, 248, 247, 240, 225, 196, 173, 168, 163, 156, 149, 151, 151, 128, 114, 95, 32.43081 + 65, 56, 48, 29, 18, 34, 40, 62, 68, 63, 80, 60, 55, 70, 28, 17, 32.43082 + 42, 33, 80, 43, 57, 60, 34, 41, 29, 41, 38, 32, 48, 87, 78, 92, 32.43083 + 73, 70, 53, 20, 7, 25, 40, 69, 103, 128, 126, 97, 102, 106, 82, 103, 32.43084 + 105, 130, 145, 153, 159, 149, 167, 129, 129, 116, 93, 77, 73, 78, 90, 89, 32.43085 + 62, 84, 91, 111, 146, 141, 112, 120, 100, 103, 101, 107, 198, 226, 248, 248, 32.43086 + 246, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43087 + 249, 252, 253, 251, 245, 241, 246, 232, 221, 204, 176, 151, 141, 149, 155, 156, 32.43088 + 148, 115, 114, 113, 76, 47, 41, 33, 23, 35, 48, 59, 69, 69, 62, 54, 32.43089 + 49, 47, 36, 35, 52, 28, 53, 38, 54, 42, 27, 20, 29, 44, 46, 40, 32.43090 + 50, 69, 60, 74, 65, 50, 8, 9, 26, 40, 61, 85, 99, 99, 87, 79, 32.43091 + 89, 88, 90, 91, 99, 126, 144, 140, 159, 150, 150, 158, 150, 119, 87, 71, 32.43092 + 83, 73, 74, 84, 84, 76, 79, 91, 125, 129, 114, 93, 81, 120, 94, 75, 32.43093 + 128, 227, 239, 250, 240, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43094 + 255, 255, 255, 255, 253, 253, 252, 250, 244, 242, 244, 228, 220, 186, 158, 151, 32.43095 + 158, 159, 157, 154, 136, 137, 125, 105, 90, 73, 54, 49, 24, 34, 47, 54, 32.43096 + 57, 53, 50, 46, 53, 48, 43, 44, 52, 44, 57, 51, 44, 40, 33, 31, 32.43097 + 40, 49, 47, 39, 68, 71, 61, 58, 45, 34, 19, 25, 49, 59, 71, 80, 32.43098 + 79, 73, 64, 60, 67, 69, 77, 89, 104, 131, 142, 131, 160, 162, 166, 164, 32.43099 + 145, 115, 91, 79, 83, 83, 84, 88, 92, 94, 96, 96, 83, 88, 84, 61, 32.43100 + 54, 86, 78, 75, 113, 146, 243, 237, 245, 255, 248, 255, 254, 255, 255, 255, 32.43101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 250, 246, 244, 244, 234, 220, 32.43102 + 199, 157, 134, 148, 170, 166, 151, 140, 97, 127, 103, 66, 71, 74, 51, 43, 32.43103 + 39, 46, 54, 57, 54, 47, 44, 42, 53, 47, 51, 59, 58, 68, 61, 70, 32.43104 + 46, 43, 39, 39, 46, 52, 50, 44, 50, 40, 44, 37, 32, 30, 49, 56, 32.43105 + 55, 59, 60, 54, 44, 37, 34, 36, 76, 81, 96, 117, 136, 159, 164, 149, 32.43106 + 160, 158, 149, 135, 125, 119, 113, 107, 100, 100, 92, 82, 84, 92, 94, 86, 32.43107 + 69, 70, 80, 55, 53, 63, 67, 73, 96, 96, 210, 233, 246, 253, 250, 255, 32.43108 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 243, 32.43109 + 246, 243, 216, 204, 164, 135, 125, 146, 171, 168, 147, 129, 97, 121, 103, 67, 32.43110 + 69, 81, 69, 54, 52, 53, 57, 60, 58, 52, 48, 46, 53, 49, 62, 76, 32.43111 + 71, 93, 68, 85, 61, 53, 47, 41, 46, 49, 53, 51, 51, 32, 49, 39, 32.43112 + 38, 27, 52, 46, 65, 64, 58, 51, 46, 47, 53, 60, 89, 93, 107, 121, 32.43113 + 130, 143, 145, 132, 151, 143, 127, 118, 130, 147, 142, 124, 109, 97, 79, 66, 32.43114 + 66, 73, 77, 77, 55, 47, 66, 45, 53, 43, 41, 41, 83, 109, 134, 232, 32.43115 + 244, 241, 255, 247, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43116 + 255, 251, 251, 239, 244, 239, 194, 182, 148, 139, 137, 144, 160, 167, 156, 140, 32.43117 + 124, 123, 125, 110, 87, 87, 83, 57, 49, 45, 49, 59, 67, 65, 61, 61, 32.43118 + 55, 56, 78, 97, 91, 113, 86, 102, 80, 68, 58, 49, 50, 48, 51, 50, 32.43119 + 48, 29, 49, 45, 50, 38, 55, 41, 44, 40, 33, 33, 40, 52, 62, 70, 32.43120 + 115, 118, 126, 130, 124, 129, 135, 131, 145, 150, 149, 150, 161, 167, 146, 115, 32.43121 + 90, 70, 57, 59, 63, 62, 67, 77, 56, 37, 49, 36, 54, 42, 33, 26, 32.43122 + 64, 105, 82, 192, 244, 236, 253, 245, 254, 254, 255, 255, 255, 255, 255, 255, 32.43123 + 255, 255, 255, 255, 254, 250, 251, 237, 243, 233, 176, 166, 146, 145, 140, 137, 32.43124 + 146, 158, 157, 149, 135, 122, 139, 140, 100, 76, 68, 43, 41, 39, 49, 67, 32.43125 + 81, 82, 83, 88, 69, 76, 96, 116, 118, 127, 116, 122, 98, 85, 72, 65, 32.43126 + 61, 55, 49, 46, 36, 26, 35, 41, 48, 47, 55, 51, 52, 51, 47, 51, 32.43127 + 61, 73, 81, 86, 89, 92, 103, 108, 103, 113, 129, 135, 157, 170, 176, 167, 32.43128 + 158, 148, 127, 105, 74, 58, 53, 64, 66, 56, 56, 66, 77, 54, 53, 41, 32.43129 + 53, 52, 37, 34, 44, 60, 75, 126, 229, 241, 248, 245, 254, 254, 255, 255, 32.43130 + 255, 255, 255, 255, 255, 255, 255, 255, 252, 250, 251, 233, 242, 231, 165, 163, 32.43131 + 146, 139, 135, 139, 148, 150, 145, 141, 140, 136, 144, 139, 106, 69, 53, 49, 32.43132 + 43, 47, 66, 87, 94, 93, 100, 109, 91, 103, 116, 132, 146, 137, 150, 147, 32.43133 + 123, 101, 80, 71, 67, 60, 53, 50, 48, 49, 39, 42, 39, 39, 34, 47, 32.43134 + 47, 51, 51, 53, 55, 58, 59, 62, 75, 77, 91, 104, 108, 123, 143, 151, 32.43135 + 155, 161, 161, 150, 136, 125, 112, 101, 74, 66, 61, 60, 56, 49, 47, 53, 32.43136 + 66, 57, 51, 45, 41, 52, 34, 39, 37, 30, 71, 87, 177, 240, 247, 243, 32.43137 + 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 252, 253, 232, 32.43138 + 241, 229, 162, 162, 148, 130, 132, 152, 164, 151, 135, 130, 131, 143, 129, 110, 32.43139 + 94, 56, 36, 56, 44, 54, 79, 99, 98, 93, 102, 119, 112, 124, 132, 147, 32.43140 + 168, 148, 177, 167, 146, 118, 88, 74, 68, 65, 63, 64, 41, 55, 42, 51, 32.43141 + 47, 53, 43, 68, 55, 61, 67, 65, 58, 52, 49, 50, 59, 58, 72, 86, 32.43142 + 91, 103, 116, 119, 130, 130, 133, 138, 139, 132, 111, 93, 74, 73, 63, 48, 32.43143 + 41, 46, 51, 53, 42, 51, 58, 61, 48, 68, 53, 65, 43, 38, 56, 84, 32.43144 + 122, 233, 246, 239, 252, 254, 254, 255, 255, 255, 255, 255, 250, 252, 252, 252, 32.43145 + 254, 254, 255, 251, 230, 239, 141, 142, 139, 142, 147, 147, 147, 143, 135, 125, 32.43146 + 126, 131, 117, 98, 84, 69, 57, 60, 46, 66, 98, 122, 121, 110, 109, 122, 32.43147 + 125, 131, 154, 182, 193, 184, 179, 178, 166, 149, 127, 109, 95, 87, 79, 74, 32.43148 + 60, 56, 57, 54, 48, 55, 62, 57, 57, 54, 50, 49, 50, 49, 45, 42, 32.43149 + 55, 56, 59, 67, 80, 94, 104, 109, 107, 98, 93, 97, 106, 107, 87, 67, 32.43150 + 38, 50, 53, 47, 37, 42, 43, 43, 54, 51, 53, 61, 64, 65, 70, 78, 32.43151 + 86, 63, 48, 90, 97, 212, 244, 236, 250, 253, 253, 255, 255, 255, 255, 255, 32.43152 + 249, 249, 250, 250, 255, 254, 255, 252, 231, 236, 138, 137, 140, 139, 140, 145, 32.43153 + 146, 142, 135, 130, 116, 119, 93, 96, 83, 89, 65, 71, 69, 86, 113, 138, 32.43154 + 142, 137, 142, 156, 158, 163, 179, 199, 206, 199, 197, 200, 195, 186, 174, 159, 32.43155 + 144, 126, 108, 94, 86, 70, 64, 64, 62, 64, 62, 51, 54, 50, 45, 44, 32.43156 + 46, 46, 44, 41, 50, 54, 61, 69, 78, 80, 78, 73, 95, 88, 81, 78, 32.43157 + 80, 75, 61, 50, 44, 54, 54, 46, 40, 44, 45, 41, 61, 57, 59, 65, 32.43158 + 76, 82, 81, 77, 96, 69, 53, 67, 107, 173, 221, 238, 249, 251, 253, 255, 32.43159 + 255, 255, 255, 255, 249, 249, 250, 250, 254, 253, 255, 250, 235, 232, 138, 137, 32.43160 + 135, 130, 132, 138, 137, 128, 124, 127, 86, 104, 86, 101, 76, 93, 80, 103, 32.43161 + 105, 115, 135, 158, 166, 168, 176, 189, 191, 192, 200, 213, 218, 214, 214, 219, 32.43162 + 216, 216, 212, 210, 202, 186, 166, 151, 136, 107, 94, 98, 96, 91, 78, 62, 32.43163 + 63, 58, 53, 51, 54, 56, 56, 54, 46, 43, 40, 38, 38, 38, 37, 36, 32.43164 + 17, 20, 26, 34, 42, 44, 44, 45, 54, 56, 53, 40, 38, 39, 41, 34, 32.43165 + 40, 37, 35, 39, 59, 78, 80, 70, 88, 63, 54, 48, 113, 126, 181, 228, 32.43166 + 248, 251, 253, 255, 255, 255, 255, 255, 249, 249, 250, 250, 253, 250, 252, 251, 32.43167 + 241, 227, 143, 141, 131, 126, 127, 129, 119, 105, 105, 115, 79, 92, 86, 98, 32.43168 + 93, 103, 101, 123, 131, 138, 152, 170, 181, 187, 194, 203, 208, 207, 211, 220, 32.43169 + 224, 221, 224, 228, 228, 229, 231, 231, 228, 220, 211, 200, 184, 149, 133, 138, 32.43170 + 134, 118, 102, 87, 81, 75, 69, 67, 69, 73, 74, 73, 70, 63, 56, 48, 32.43171 + 45, 45, 46, 44, 34, 38, 48, 59, 64, 65, 63, 63, 66, 61, 56, 35, 32.43172 + 38, 33, 37, 23, 20, 18, 12, 10, 31, 58, 68, 60, 70, 52, 60, 59, 32.43173 + 106, 107, 165, 219, 240, 246, 252, 255, 255, 255, 255, 255, 249, 249, 250, 250, 32.43174 + 253, 250, 252, 250, 238, 209, 135, 134, 131, 129, 130, 124, 107, 91, 93, 106, 32.43175 + 101, 84, 80, 85, 128, 127, 125, 119, 144, 149, 161, 180, 191, 198, 202, 206, 32.43176 + 209, 211, 216, 222, 227, 226, 228, 232, 235, 236, 237, 235, 233, 226, 218, 211, 32.43177 + 208, 177, 162, 164, 152, 134, 121, 110, 100, 93, 86, 83, 85, 88, 90, 90, 32.43178 + 81, 81, 81, 81, 79, 73, 66, 60, 48, 42, 44, 53, 59, 60, 58, 59, 32.43179 + 76, 68, 65, 39, 46, 33, 36, 19, 19, 24, 21, 15, 26, 48, 58, 54, 32.43180 + 63, 53, 69, 80, 88, 112, 176, 222, 233, 240, 246, 252, 255, 255, 255, 255, 32.43181 + 249, 249, 250, 250, 253, 252, 252, 247, 230, 185, 120, 119, 129, 131, 130, 119, 32.43182 + 104, 95, 98, 104, 98, 81, 91, 87, 137, 120, 130, 126, 149, 158, 171, 187, 32.43183 + 199, 206, 208, 208, 207, 212, 218, 225, 229, 233, 234, 237, 240, 244, 248, 248, 32.43184 + 244, 236, 228, 219, 215, 193, 185, 179, 163, 148, 142, 135, 127, 119, 111, 107, 32.43185 + 108, 110, 110, 110, 88, 86, 83, 80, 78, 75, 71, 68, 63, 50, 46, 56, 32.43186 + 70, 77, 85, 92, 87, 79, 85, 53, 63, 42, 47, 27, 12, 24, 30, 29, 32.43187 + 34, 47, 54, 52, 60, 58, 65, 81, 65, 108, 172, 225, 231, 240, 244, 246, 32.43188 + 255, 255, 255, 255, 249, 249, 250, 250, 252, 251, 252, 243, 223, 165, 107, 110, 32.43189 + 116, 119, 116, 106, 103, 108, 108, 101, 87, 94, 116, 114, 133, 113, 132, 151, 32.43190 + 160, 170, 181, 194, 204, 209, 208, 208, 208, 214, 220, 227, 232, 239, 241, 244, 32.43191 + 246, 251, 253, 251, 250, 245, 240, 234, 220, 206, 200, 192, 176, 169, 168, 159, 32.43192 + 156, 148, 140, 135, 135, 135, 134, 132, 121, 113, 101, 92, 87, 86, 84, 85, 32.43193 + 84, 71, 64, 71, 78, 78, 81, 88, 97, 92, 105, 72, 85, 59, 65, 45, 32.43194 + 21, 25, 28, 29, 33, 37, 43, 48, 55, 65, 60, 68, 66, 93, 140, 211, 32.43195 + 235, 242, 246, 247, 255, 255, 255, 255, 249, 249, 248, 248, 248, 251, 253, 244, 32.43196 + 222, 156, 105, 108, 100, 103, 97, 90, 100, 117, 114, 97, 98, 109, 122, 135, 32.43197 + 145, 137, 142, 165, 172, 181, 190, 197, 203, 207, 206, 206, 212, 216, 222, 228, 32.43198 + 233, 242, 246, 248, 255, 255, 255, 251, 244, 242, 238, 237, 224, 213, 208, 197, 32.43199 + 183, 183, 185, 172, 171, 163, 155, 151, 149, 148, 145, 141, 136, 131, 125, 119, 32.43200 + 111, 101, 91, 82, 83, 77, 79, 91, 96, 90, 89, 95, 105, 102, 119, 86, 32.43201 + 102, 74, 79, 59, 56, 48, 35, 30, 26, 27, 32, 39, 53, 74, 61, 61, 32.43202 + 84, 78, 108, 198, 239, 247, 249, 247, 255, 255, 255, 255, 250, 249, 249, 250, 32.43203 + 243, 246, 251, 242, 199, 145, 106, 93, 71, 76, 93, 103, 101, 104, 107, 98, 32.43204 + 102, 132, 151, 151, 154, 155, 163, 178, 186, 194, 201, 204, 203, 204, 209, 214, 32.43205 + 208, 214, 220, 229, 238, 244, 248, 252, 255, 255, 255, 253, 249, 245, 243, 238, 32.43206 + 229, 223, 217, 212, 208, 203, 199, 194, 187, 182, 178, 172, 165, 157, 152, 147, 32.43207 + 151, 149, 146, 137, 126, 114, 108, 106, 110, 110, 87, 95, 100, 98, 115, 104, 32.43208 + 113, 114, 129, 104, 102, 90, 93, 70, 66, 35, 21, 37, 26, 17, 32, 30, 32.43209 + 37, 72, 58, 44, 79, 89, 96, 149, 235, 239, 244, 240, 255, 255, 255, 255, 32.43210 + 250, 247, 249, 248, 246, 248, 251, 241, 177, 119, 82, 70, 78, 85, 98, 108, 32.43211 + 110, 106, 103, 100, 106, 140, 158, 158, 160, 165, 173, 188, 192, 199, 205, 206, 32.43212 + 205, 204, 211, 214, 215, 218, 225, 231, 240, 244, 247, 251, 255, 255, 255, 253, 32.43213 + 249, 246, 244, 240, 232, 228, 221, 217, 213, 211, 207, 202, 198, 194, 191, 187, 32.43214 + 182, 175, 170, 166, 151, 151, 148, 140, 132, 122, 117, 113, 103, 107, 97, 106, 32.43215 + 111, 102, 112, 98, 112, 116, 134, 118, 119, 112, 115, 92, 67, 33, 18, 24, 32.43216 + 30, 30, 22, 19, 36, 61, 50, 57, 81, 75, 84, 123, 222, 244, 248, 243, 32.43217 + 255, 255, 255, 255, 250, 247, 249, 248, 250, 245, 243, 232, 148, 100, 74, 73, 32.43218 + 84, 91, 97, 107, 113, 100, 90, 94, 111, 145, 164, 161, 167, 179, 186, 193, 32.43219 + 199, 204, 207, 206, 205, 204, 210, 213, 219, 221, 227, 232, 240, 244, 246, 250, 32.43220 + 253, 255, 255, 252, 249, 246, 244, 242, 236, 232, 227, 225, 223, 222, 218, 214, 32.43221 + 208, 206, 205, 203, 198, 195, 192, 188, 173, 170, 166, 159, 152, 143, 138, 134, 32.43222 + 118, 124, 121, 127, 127, 118, 124, 114, 120, 126, 142, 135, 137, 136, 137, 116, 32.43223 + 91, 51, 29, 15, 36, 54, 30, 33, 49, 60, 47, 70, 83, 67, 86, 109, 32.43224 + 189, 237, 246, 242, 255, 255, 255, 255, 250, 247, 248, 248, 250, 242, 235, 221, 32.43225 + 135, 103, 92, 102, 86, 92, 95, 104, 111, 94, 83, 94, 114, 147, 159, 157, 32.43226 + 171, 191, 193, 191, 199, 203, 204, 203, 203, 203, 207, 212, 216, 220, 226, 230, 32.43227 + 237, 242, 245, 249, 252, 252, 252, 249, 248, 245, 243, 242, 236, 234, 231, 229, 32.43228 + 230, 229, 227, 224, 212, 212, 212, 209, 207, 204, 202, 199, 198, 194, 189, 183, 32.43229 + 175, 165, 158, 154, 148, 149, 146, 143, 139, 134, 139, 141, 135, 137, 149, 145, 32.43230 + 143, 145, 144, 127, 117, 78, 51, 10, 32, 67, 45, 69, 70, 72, 56, 75, 32.43231 + 78, 73, 105, 112, 148, 228, 242, 240, 255, 255, 255, 255, 250, 247, 248, 248, 32.43232 + 250, 247, 236, 213, 141, 111, 102, 109, 83, 88, 96, 103, 104, 95, 96, 109, 32.43233 + 122, 145, 153, 156, 179, 199, 195, 186, 195, 196, 199, 199, 200, 203, 207, 211, 32.43234 + 213, 215, 220, 227, 234, 239, 244, 246, 247, 247, 248, 245, 245, 243, 241, 241, 32.43235 + 235, 234, 232, 231, 232, 233, 231, 228, 218, 218, 215, 214, 213, 209, 207, 204, 32.43236 + 207, 204, 200, 194, 188, 180, 174, 168, 169, 164, 165, 153, 146, 146, 147, 152, 32.43237 + 147, 147, 150, 149, 141, 148, 145, 131, 119, 88, 67, 17, 26, 58, 49, 86, 32.43238 + 73, 76, 67, 71, 71, 85, 115, 110, 123, 229, 240, 244, 255, 255, 255, 255, 32.43239 + 250, 247, 248, 247, 249, 251, 242, 197, 150, 111, 92, 84, 80, 81, 96, 97, 32.43240 + 85, 91, 113, 119, 127, 145, 155, 166, 189, 199, 193, 188, 193, 194, 197, 199, 32.43241 + 202, 203, 207, 209, 210, 213, 218, 222, 229, 236, 242, 244, 242, 242, 242, 242, 32.43242 + 242, 241, 240, 239, 235, 233, 232, 232, 233, 233, 232, 228, 224, 221, 221, 218, 32.43243 + 216, 212, 210, 207, 207, 204, 203, 199, 198, 193, 188, 183, 177, 171, 179, 169, 32.43244 + 163, 162, 153, 158, 155, 151, 148, 154, 142, 151, 145, 135, 113, 93, 79, 40, 32.43245 + 32, 49, 50, 77, 61, 67, 73, 64, 64, 87, 99, 94, 110, 230, 234, 244, 32.43246 + 255, 255, 255, 255, 250, 247, 248, 247, 244, 250, 235, 164, 151, 107, 83, 64, 32.43247 + 88, 83, 103, 94, 63, 81, 121, 116, 128, 147, 163, 178, 193, 192, 189, 196, 32.43248 + 194, 195, 198, 203, 207, 208, 209, 210, 213, 214, 218, 221, 227, 232, 238, 240, 32.43249 + 237, 237, 238, 238, 238, 237, 236, 235, 238, 236, 234, 234, 234, 234, 232, 228, 32.43250 + 226, 224, 224, 223, 219, 216, 214, 211, 209, 205, 204, 203, 202, 201, 197, 191, 32.43251 + 183, 175, 188, 179, 175, 177, 162, 167, 163, 161, 154, 164, 148, 162, 149, 138, 32.43252 + 122, 100, 84, 64, 47, 46, 56, 62, 59, 53, 73, 55, 56, 77, 66, 83, 32.43253 + 104, 231, 228, 245, 255, 255, 255, 255, 251, 249, 248, 247, 236, 248, 217, 128, 32.43254 + 144, 104, 86, 66, 106, 97, 117, 99, 53, 76, 125, 113, 126, 148, 171, 186, 32.43255 + 193, 183, 184, 200, 200, 201, 203, 208, 211, 211, 211, 209, 214, 216, 218, 220, 32.43256 + 225, 228, 234, 236, 234, 234, 236, 237, 236, 236, 235, 234, 239, 237, 235, 234, 32.43257 + 234, 233, 230, 226, 225, 225, 225, 222, 219, 217, 215, 214, 210, 205, 201, 201, 32.43258 + 201, 197, 192, 188, 184, 174, 186, 174, 175, 182, 168, 175, 173, 169, 163, 176, 32.43259 + 158, 170, 154, 142, 135, 104, 81, 74, 51, 44, 58, 50, 68, 50, 72, 50, 32.43260 + 52, 69, 44, 84, 103, 232, 227, 244, 255, 255, 255, 255, 255, 252, 251, 248, 32.43261 + 245, 244, 175, 138, 133, 98, 87, 76, 96, 74, 111, 64, 90, 96, 108, 121, 32.43262 + 128, 149, 176, 189, 192, 191, 193, 196, 201, 200, 196, 196, 201, 205, 209, 212, 32.43263 + 211, 214, 215, 217, 222, 225, 228, 230, 230, 232, 233, 233, 234, 234, 234, 234, 32.43264 + 231, 232, 233, 234, 233, 232, 230, 229, 232, 229, 227, 225, 220, 217, 214, 213, 32.43265 + 211, 208, 205, 204, 201, 198, 196, 195, 191, 188, 186, 183, 185, 183, 182, 179, 32.43266 + 180, 175, 172, 171, 171, 165, 158, 150, 145, 105, 94, 79, 43, 41, 58, 55, 32.43267 + 45, 49, 52, 53, 42, 42, 51, 71, 102, 220, 232, 234, 255, 255, 255, 255, 32.43268 + 255, 254, 253, 248, 246, 241, 160, 121, 121, 86, 78, 81, 76, 61, 102, 66, 32.43269 + 92, 95, 103, 112, 131, 150, 175, 190, 193, 190, 192, 196, 203, 200, 198, 199, 32.43270 + 203, 207, 209, 210, 210, 210, 211, 213, 217, 220, 222, 226, 228, 231, 231, 231, 32.43271 + 232, 232, 232, 233, 232, 232, 233, 233, 233, 232, 230, 229, 229, 228, 226, 224, 32.43272 + 219, 217, 214, 214, 208, 206, 206, 204, 202, 200, 199, 198, 191, 189, 186, 185, 32.43273 + 186, 186, 182, 181, 180, 180, 179, 178, 174, 169, 163, 156, 141, 108, 100, 84, 32.43274 + 49, 42, 53, 47, 31, 38, 36, 46, 50, 52, 65, 74, 109, 224, 236, 231, 32.43275 + 255, 255, 255, 255, 255, 254, 253, 248, 243, 238, 147, 111, 112, 73, 60, 77, 32.43276 + 56, 48, 89, 67, 92, 96, 104, 111, 138, 156, 179, 192, 195, 192, 196, 200, 32.43277 + 202, 201, 200, 201, 206, 208, 211, 211, 209, 209, 211, 213, 214, 216, 218, 221, 32.43278 + 226, 228, 228, 229, 229, 230, 230, 230, 232, 232, 233, 233, 232, 231, 230, 230, 32.43279 + 226, 226, 224, 223, 219, 217, 215, 215, 210, 208, 207, 204, 202, 200, 198, 197, 32.43280 + 192, 190, 187, 186, 186, 186, 183, 181, 180, 183, 186, 185, 179, 173, 167, 162, 32.43281 + 141, 116, 111, 93, 60, 47, 51, 42, 36, 53, 45, 51, 54, 44, 65, 64, 32.43282 + 96, 214, 237, 231, 255, 255, 255, 255, 255, 254, 253, 248, 240, 235, 140, 112, 32.43283 + 111, 69, 47, 69, 52, 46, 77, 63, 86, 96, 110, 123, 150, 164, 187, 196, 32.43284 + 199, 197, 201, 204, 201, 201, 201, 203, 207, 209, 210, 209, 210, 210, 212, 212, 32.43285 + 214, 215, 217, 219, 224, 226, 227, 227, 228, 228, 228, 228, 232, 232, 232, 232, 32.43286 + 231, 231, 230, 230, 225, 224, 223, 222, 219, 218, 216, 216, 215, 213, 211, 206, 32.43287 + 202, 198, 195, 193, 193, 191, 188, 187, 187, 186, 183, 181, 180, 185, 190, 190, 32.43288 + 182, 175, 170, 166, 147, 130, 119, 98, 68, 53, 55, 49, 51, 73, 65, 62, 32.43289 + 56, 32, 63, 57, 77, 191, 235, 236, 255, 255, 255, 255, 255, 254, 253, 248, 32.43290 + 244, 233, 132, 112, 105, 75, 55, 74, 64, 56, 67, 57, 75, 88, 113, 132, 32.43291 + 158, 171, 190, 198, 200, 199, 202, 205, 202, 202, 202, 205, 207, 208, 209, 207, 32.43292 + 214, 214, 214, 214, 217, 219, 220, 222, 225, 227, 227, 228, 228, 228, 229, 229, 32.43293 + 232, 232, 231, 231, 230, 230, 230, 230, 224, 224, 223, 223, 220, 219, 217, 217, 32.43294 + 216, 213, 212, 207, 202, 199, 196, 194, 195, 192, 189, 188, 187, 187, 183, 182, 32.43295 + 179, 185, 190, 190, 183, 176, 172, 167, 153, 138, 120, 95, 72, 60, 59, 54, 32.43296 + 55, 62, 61, 55, 62, 39, 69, 68, 96, 190, 236, 240, 255, 255, 255, 255, 32.43297 + 255, 254, 253, 248, 248, 225, 120, 104, 89, 83, 74, 83, 72, 61, 57, 52, 32.43298 + 65, 81, 115, 136, 164, 176, 190, 196, 198, 198, 201, 204, 204, 204, 204, 206, 32.43299 + 208, 209, 210, 208, 216, 216, 216, 216, 220, 221, 222, 224, 227, 229, 230, 230, 32.43300 + 230, 231, 231, 231, 232, 232, 231, 230, 229, 229, 230, 230, 226, 225, 225, 224, 32.43301 + 221, 220, 218, 217, 212, 210, 210, 207, 204, 202, 201, 199, 196, 193, 190, 189, 32.43302 + 188, 187, 184, 182, 181, 184, 187, 188, 183, 178, 174, 169, 157, 142, 118, 92, 32.43303 + 73, 64, 57, 51, 63, 44, 55, 43, 65, 50, 72, 86, 156, 213, 240, 238, 32.43304 + 255, 255, 255, 255, 255, 254, 253, 248, 246, 211, 107, 95, 70, 81, 77, 69, 32.43305 + 60, 55, 49, 56, 69, 87, 122, 144, 169, 179, 191, 198, 201, 200, 203, 205, 32.43306 + 208, 207, 206, 208, 212, 213, 215, 214, 216, 216, 219, 220, 221, 223, 224, 226, 32.43307 + 230, 232, 233, 233, 234, 234, 234, 234, 233, 232, 230, 229, 229, 229, 230, 230, 32.43308 + 228, 227, 226, 225, 222, 220, 218, 218, 212, 210, 210, 207, 205, 204, 202, 201, 32.43309 + 197, 194, 191, 189, 189, 188, 184, 182, 184, 184, 185, 186, 183, 181, 176, 170, 32.43310 + 157, 146, 122, 95, 83, 68, 50, 38, 68, 40, 78, 51, 61, 45, 74, 126, 32.43311 + 214, 235, 243, 239, 255, 255, 255, 255, 255, 255, 253, 248, 237, 198, 99, 91, 32.43312 + 57, 74, 68, 45, 43, 45, 44, 63, 78, 100, 132, 154, 176, 185, 196, 200, 32.43313 + 203, 202, 205, 207, 212, 210, 209, 209, 213, 215, 217, 217, 216, 216, 219, 220, 32.43314 + 221, 223, 225, 227, 232, 235, 235, 235, 236, 236, 236, 237, 233, 232, 230, 229, 32.43315 + 228, 229, 230, 231, 229, 229, 228, 226, 222, 221, 219, 218, 215, 212, 212, 208, 32.43316 + 205, 202, 200, 199, 198, 195, 192, 190, 189, 188, 184, 182, 186, 184, 183, 184, 32.43317 + 184, 183, 178, 171, 158, 150, 127, 102, 93, 74, 47, 30, 61, 43, 110, 69, 32.43318 + 57, 36, 80, 174, 239, 241, 243, 242, 255, 255, 255, 255, 255, 255, 253, 248, 32.43319 + 248, 183, 107, 75, 74, 54, 86, 53, 56, 50, 61, 74, 80, 98, 134, 158, 32.43320 + 176, 184, 194, 199, 203, 204, 205, 207, 209, 210, 210, 212, 215, 217, 218, 219, 32.43321 + 220, 220, 221, 222, 225, 227, 229, 229, 234, 236, 237, 237, 237, 236, 235, 234, 32.43322 + 235, 233, 230, 227, 226, 226, 226, 227, 229, 228, 227, 226, 224, 225, 225, 226, 32.43323 + 219, 215, 212, 207, 204, 203, 202, 202, 203, 199, 194, 191, 189, 188, 184, 182, 32.43324 + 184, 184, 183, 182, 178, 176, 174, 170, 160, 162, 124, 113, 77, 69, 51, 34, 32.43325 + 49, 38, 107, 68, 67, 41, 73, 196, 237, 245, 245, 250, 255, 255, 255, 255, 32.43326 + 255, 255, 254, 248, 240, 205, 129, 82, 60, 59, 71, 66, 59, 50, 55, 65, 32.43327 + 76, 104, 138, 154, 181, 186, 195, 201, 203, 204, 205, 206, 210, 209, 208, 208, 32.43328 + 211, 213, 215, 216, 217, 219, 221, 224, 227, 228, 229, 231, 237, 238, 238, 238, 32.43329 + 238, 237, 236, 235, 232, 231, 228, 226, 224, 225, 226, 226, 229, 228, 227, 227, 32.43330 + 225, 225, 225, 226, 221, 218, 216, 211, 208, 207, 206, 205, 201, 198, 194, 191, 32.43331 + 190, 188, 182, 180, 183, 183, 183, 183, 180, 178, 177, 174, 157, 161, 125, 111, 32.43332 + 75, 66, 57, 47, 51, 48, 97, 65, 70, 38, 76, 185, 239, 247, 247, 255, 32.43333 + 255, 255, 255, 255, 255, 255, 255, 248, 238, 228, 152, 81, 54, 80, 61, 79, 32.43334 + 69, 60, 57, 62, 80, 118, 153, 162, 186, 189, 196, 201, 203, 203, 206, 207, 32.43335 + 210, 209, 210, 210, 210, 212, 216, 217, 217, 219, 223, 226, 228, 229, 231, 231, 32.43336 + 236, 236, 236, 237, 236, 235, 234, 234, 235, 233, 232, 230, 230, 230, 231, 232, 32.43337 + 229, 229, 228, 228, 226, 226, 226, 226, 220, 218, 217, 214, 211, 209, 207, 206, 32.43338 + 200, 198, 196, 194, 193, 189, 183, 179, 180, 181, 181, 181, 179, 178, 177, 174, 32.43339 + 161, 165, 132, 114, 76, 60, 59, 58, 49, 58, 80, 64, 83, 48, 105, 194, 32.43340 + 243, 250, 250, 255, 255, 255, 255, 255, 255, 255, 255, 248, 246, 240, 173, 71, 32.43341 + 60, 98, 64, 85, 69, 64, 62, 67, 87, 131, 168, 178, 191, 195, 200, 201, 32.43342 + 203, 203, 206, 206, 209, 210, 214, 215, 216, 217, 219, 219, 223, 223, 225, 226, 32.43343 + 227, 228, 231, 232, 232, 233, 233, 233, 233, 232, 231, 230, 235, 234, 233, 233, 32.43344 + 233, 233, 235, 235, 230, 230, 229, 229, 227, 227, 227, 227, 217, 215, 215, 213, 32.43345 + 211, 208, 206, 204, 203, 202, 201, 200, 198, 194, 186, 182, 178, 178, 178, 178, 32.43346 + 175, 174, 173, 170, 165, 169, 148, 124, 84, 54, 60, 64, 50, 68, 66, 62, 32.43347 + 97, 68, 152, 222, 247, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 248, 32.43348 + 248, 241, 202, 74, 62, 87, 65, 83, 57, 57, 63, 69, 90, 134, 174, 185, 32.43349 + 196, 198, 200, 201, 203, 206, 206, 206, 211, 214, 219, 223, 227, 226, 224, 222, 32.43350 + 229, 228, 225, 223, 225, 227, 230, 231, 230, 231, 231, 231, 231, 230, 229, 228, 32.43351 + 229, 229, 228, 228, 229, 229, 230, 230, 229, 229, 229, 230, 228, 227, 226, 226, 32.43352 + 215, 213, 214, 212, 210, 208, 206, 204, 206, 206, 205, 205, 203, 199, 190, 185, 32.43353 + 180, 180, 179, 178, 174, 172, 171, 167, 166, 170, 158, 136, 99, 56, 62, 66, 32.43354 + 58, 73, 58, 60, 94, 78, 187, 237, 250, 255, 255, 255, 255, 255, 255, 255, 32.43355 + 255, 255, 255, 253, 245, 239, 231, 103, 57, 58, 61, 74, 54, 54, 66, 82, 32.43356 + 105, 143, 181, 191, 202, 200, 200, 202, 206, 207, 207, 207, 211, 215, 220, 224, 32.43357 + 228, 227, 224, 221, 227, 225, 222, 220, 222, 224, 226, 228, 229, 229, 229, 230, 32.43358 + 229, 228, 227, 227, 227, 227, 227, 227, 227, 228, 228, 228, 225, 226, 227, 227, 32.43359 + 225, 225, 223, 222, 215, 213, 213, 211, 209, 208, 207, 207, 208, 207, 206, 206, 32.43360 + 204, 200, 192, 187, 184, 183, 182, 181, 177, 174, 172, 171, 165, 168, 162, 144, 32.43361 + 115, 62, 65, 67, 71, 71, 59, 61, 76, 75, 201, 236, 251, 255, 255, 255, 32.43362 + 255, 255, 255, 255, 255, 255, 255, 255, 246, 235, 239, 148, 58, 52, 63, 60, 32.43363 + 63, 58, 73, 100, 129, 159, 187, 194, 204, 201, 200, 201, 206, 209, 211, 210, 32.43364 + 213, 214, 216, 217, 220, 219, 217, 216, 216, 216, 219, 220, 221, 222, 222, 222, 32.43365 + 224, 224, 224, 224, 224, 223, 222, 222, 226, 226, 226, 227, 226, 226, 225, 225, 32.43366 + 220, 221, 222, 223, 221, 220, 218, 217, 213, 210, 210, 207, 206, 206, 206, 206, 32.43367 + 206, 205, 203, 202, 200, 197, 189, 185, 182, 182, 182, 181, 178, 176, 174, 173, 32.43368 + 169, 166, 163, 147, 124, 64, 65, 62, 79, 65, 67, 65, 62, 74, 210, 234, 32.43369 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 234, 232, 181, 32.43370 + 66, 67, 71, 50, 70, 58, 73, 110, 143, 170, 189, 195, 207, 204, 201, 203, 32.43371 + 206, 209, 210, 209, 213, 210, 208, 206, 207, 206, 207, 207, 202, 205, 210, 214, 32.43372 + 218, 216, 216, 215, 212, 214, 214, 213, 214, 212, 212, 211, 217, 217, 217, 219, 32.43373 + 219, 218, 217, 216, 214, 214, 215, 216, 216, 213, 212, 209, 207, 204, 202, 201, 32.43374 + 199, 200, 201, 202, 202, 198, 198, 194, 194, 189, 184, 181, 176, 177, 177, 177, 32.43375 + 175, 174, 173, 172, 176, 169, 166, 150, 128, 64, 62, 55, 78, 58, 73, 70, 32.43376 + 59, 83, 226, 243, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43377 + 255, 236, 237, 206, 92, 74, 77, 52, 67, 85, 65, 126, 156, 175, 206, 202, 32.43378 + 206, 215, 212, 208, 211, 206, 201, 209, 209, 199, 195, 197, 196, 191, 190, 193, 32.43379 + 187, 190, 191, 193, 201, 207, 210, 206, 197, 199, 193, 187, 201, 177, 204, 192, 32.43380 + 202, 207, 206, 207, 214, 210, 208, 216, 208, 200, 201, 207, 207, 200, 198, 202, 32.43381 + 200, 201, 187, 197, 180, 188, 182, 192, 185, 194, 196, 184, 178, 180, 181, 177, 32.43382 + 177, 166, 179, 171, 179, 169, 180, 168, 172, 173, 184, 162, 151, 83, 80, 62, 32.43383 + 73, 47, 87, 54, 75, 82, 230, 242, 252, 255, 255, 255, 255, 255, 255, 255, 32.43384 + 255, 255, 255, 255, 255, 242, 246, 227, 132, 83, 77, 50, 66, 78, 72, 131, 32.43385 + 159, 185, 206, 207, 216, 217, 207, 198, 207, 210, 204, 198, 183, 172, 164, 162, 32.43386 + 158, 153, 151, 154, 151, 161, 169, 169, 168, 168, 168, 167, 154, 154, 141, 150, 32.43387 + 155, 141, 154, 148, 187, 200, 206, 202, 206, 207, 210, 216, 199, 194, 191, 186, 32.43388 + 185, 184, 181, 172, 178, 174, 167, 172, 167, 173, 173, 179, 171, 170, 165, 157, 32.43389 + 154, 154, 154, 151, 168, 164, 174, 172, 173, 169, 174, 169, 177, 176, 189, 170, 32.43390 + 159, 82, 72, 57, 75, 43, 74, 74, 90, 114, 226, 248, 252, 254, 255, 255, 32.43391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 247, 238, 173, 87, 75, 54, 32.43392 + 71, 75, 86, 140, 169, 199, 204, 212, 215, 212, 204, 199, 208, 216, 204, 185, 32.43393 + 161, 152, 144, 141, 138, 135, 135, 137, 140, 153, 163, 157, 145, 137, 135, 135, 32.43394 + 116, 111, 99, 116, 117, 107, 112, 114, 155, 189, 206, 200, 201, 207, 212, 214, 32.43395 + 195, 191, 181, 167, 166, 170, 163, 144, 154, 142, 142, 140, 151, 148, 152, 154, 32.43396 + 161, 164, 166, 162, 150, 140, 142, 150, 146, 155, 160, 170, 164, 167, 163, 167, 32.43397 + 180, 177, 188, 177, 170, 84, 71, 60, 66, 46, 63, 72, 93, 158, 223, 250, 32.43398 + 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 240, 237, 32.43399 + 203, 95, 74, 67, 79, 79, 104, 155, 182, 211, 203, 217, 211, 205, 204, 204, 32.43400 + 195, 182, 167, 151, 125, 119, 113, 109, 106, 103, 100, 98, 98, 107, 111, 102, 32.43401 + 89, 83, 82, 83, 73, 64, 68, 76, 84, 67, 76, 84, 109, 163, 198, 198, 32.43402 + 201, 208, 212, 209, 191, 177, 161, 150, 149, 146, 135, 122, 126, 108, 109, 98, 32.43403 + 117, 102, 110, 109, 124, 120, 123, 130, 126, 113, 106, 109, 114, 133, 136, 158, 32.43404 + 156, 174, 172, 189, 180, 178, 188, 181, 181, 91, 75, 71, 53, 56, 68, 53, 32.43405 + 106, 204, 239, 245, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43406 + 255, 255, 242, 241, 229, 122, 81, 77, 91, 92, 120, 172, 197, 220, 205, 219, 32.43407 + 220, 204, 206, 199, 155, 117, 108, 110, 102, 101, 99, 94, 90, 84, 76, 69, 32.43408 + 55, 56, 50, 41, 36, 39, 43, 44, 48, 35, 59, 51, 67, 44, 60, 71, 32.43409 + 70, 137, 189, 199, 205, 209, 207, 199, 179, 148, 127, 126, 124, 111, 102, 101, 32.43410 + 93, 70, 67, 54, 68, 47, 54, 52, 78, 59, 51, 65, 79, 77, 65, 57, 32.43411 + 46, 65, 59, 79, 91, 123, 135, 168, 179, 181, 188, 182, 192, 102, 83, 84, 32.43412 + 56, 63, 81, 60, 157, 233, 251, 249, 254, 255, 255, 255, 255, 255, 255, 255, 32.43413 + 255, 255, 255, 255, 255, 249, 243, 245, 240, 157, 85, 76, 95, 103, 124, 185, 32.43414 + 208, 219, 212, 218, 227, 208, 207, 185, 123, 87, 97, 109, 108, 112, 114, 114, 32.43415 + 114, 112, 104, 96, 78, 70, 55, 41, 37, 41, 42, 38, 36, 28, 54, 41, 32.43416 + 54, 45, 51, 61, 56, 123, 181, 199, 209, 212, 206, 195, 175, 136, 110, 108, 32.43417 + 103, 84, 77, 82, 68, 47, 39, 35, 37, 22, 25, 30, 41, 40, 40, 41, 32.43418 + 40, 43, 54, 66, 60, 70, 51, 50, 69, 93, 110, 144, 171, 180, 189, 182, 32.43419 + 199, 112, 88, 87, 62, 61, 81, 85, 217, 240, 250, 253, 254, 255, 255, 255, 32.43420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 247, 244, 238, 192, 90, 77, 32.43421 + 91, 109, 120, 191, 213, 214, 217, 217, 220, 208, 207, 175, 115, 103, 123, 127, 32.43422 + 117, 123, 127, 128, 130, 132, 127, 119, 108, 99, 82, 65, 57, 55, 52, 46, 32.43423 + 36, 37, 44, 48, 39, 64, 41, 52, 71, 129, 180, 201, 213, 214, 206, 198, 32.43424 + 179, 144, 113, 99, 88, 73, 66, 68, 55, 40, 30, 39, 34, 31, 31, 45, 32.43425 + 31, 48, 59, 52, 41, 47, 69, 88, 85, 91, 75, 58, 81, 78, 82, 103, 32.43426 + 152, 174, 188, 181, 205, 122, 95, 89, 66, 72, 73, 98, 241, 240, 247, 255, 32.43427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 246, 32.43428 + 234, 216, 103, 89, 87, 111, 114, 194, 214, 208, 222, 215, 213, 210, 211, 171, 32.43429 + 117, 121, 141, 125, 142, 148, 147, 142, 141, 141, 134, 125, 116, 113, 102, 89, 32.43430 + 80, 76, 72, 65, 66, 76, 61, 85, 54, 109, 62, 72, 89, 139, 180, 202, 32.43431 + 215, 215, 208, 202, 181, 154, 120, 91, 74, 66, 60, 57, 46, 39, 28, 48, 32.43432 + 38, 45, 44, 65, 65, 69, 71, 74, 87, 102, 103, 93, 97, 109, 108, 91, 32.43433 + 121, 98, 87, 94, 134, 166, 184, 179, 209, 131, 100, 91, 68, 93, 71, 95, 32.43434 + 238, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43435 + 255, 255, 247, 241, 244, 228, 103, 76, 79, 97, 150, 181, 223, 219, 226, 215, 32.43436 + 211, 208, 189, 159, 139, 138, 147, 152, 139, 150, 155, 150, 139, 126, 106, 88, 32.43437 + 93, 86, 83, 65, 67, 57, 79, 60, 46, 85, 78, 109, 77, 92, 80, 81, 32.43438 + 105, 143, 192, 200, 220, 210, 225, 212, 184, 164, 120, 91, 71, 63, 74, 68, 32.43439 + 77, 39, 36, 59, 50, 26, 40, 71, 57, 78, 84, 81, 91, 105, 118, 130, 32.43440 + 132, 133, 137, 139, 128, 112, 109, 115, 132, 152, 187, 199, 194, 147, 92, 95, 32.43441 + 65, 101, 81, 108, 232, 244, 248, 254, 255, 254, 255, 255, 255, 255, 255, 255, 32.43442 + 255, 255, 255, 255, 255, 243, 245, 235, 234, 230, 78, 94, 77, 93, 149, 187, 32.43443 + 220, 212, 218, 211, 209, 199, 177, 153, 146, 153, 160, 161, 159, 148, 132, 117, 32.43444 + 100, 90, 96, 108, 98, 78, 75, 63, 58, 51, 54, 51, 57, 68, 48, 77, 32.43445 + 77, 104, 109, 109, 118, 159, 200, 206, 225, 218, 231, 213, 187, 171, 134, 111, 32.43446 + 97, 88, 91, 78, 53, 41, 38, 36, 34, 45, 53, 50, 45, 71, 75, 64, 32.43447 + 71, 94, 118, 138, 171, 147, 142, 159, 158, 132, 120, 127, 140, 155, 185, 194, 32.43448 + 192, 149, 95, 97, 60, 102, 92, 155, 227, 232, 247, 255, 255, 254, 255, 255, 32.43449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 248, 237, 230, 232, 67, 104, 32.43450 + 68, 80, 139, 191, 220, 212, 219, 219, 212, 195, 171, 152, 155, 168, 171, 163, 32.43451 + 167, 129, 98, 95, 97, 86, 79, 81, 76, 42, 41, 43, 38, 41, 24, 49, 32.43452 + 40, 43, 33, 46, 54, 67, 97, 113, 125, 182, 213, 214, 231, 228, 238, 216, 32.43453 + 208, 195, 155, 134, 117, 96, 87, 65, 33, 34, 34, 22, 24, 45, 48, 25, 32.43454 + 38, 46, 38, 32, 53, 83, 103, 116, 128, 146, 162, 165, 165, 167, 164, 157, 32.43455 + 152, 162, 184, 191, 193, 156, 100, 98, 70, 90, 100, 202, 239, 244, 245, 244, 32.43456 + 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 247, 241, 238, 227, 32.43457 + 220, 222, 97, 91, 78, 78, 131, 195, 220, 214, 220, 221, 217, 201, 177, 159, 32.43458 + 160, 171, 165, 153, 148, 115, 90, 95, 105, 99, 81, 68, 77, 30, 21, 27, 32.43459 + 23, 40, 16, 68, 55, 49, 44, 40, 47, 34, 70, 84, 119, 196, 223, 223, 32.43460 + 235, 233, 244, 221, 221, 210, 170, 142, 112, 82, 69, 47, 40, 35, 43, 48, 32.43461 + 38, 29, 26, 19, 34, 27, 22, 36, 64, 77, 85, 99, 113, 142, 165, 166, 32.43462 + 164, 165, 154, 140, 163, 171, 186, 192, 198, 164, 106, 98, 92, 81, 127, 207, 32.43463 + 229, 242, 239, 237, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 245, 32.43464 + 244, 220, 204, 191, 192, 194, 153, 84, 107, 95, 137, 203, 216, 214, 215, 211, 32.43465 + 217, 208, 191, 174, 166, 165, 155, 139, 124, 117, 103, 89, 84, 94, 108, 116, 32.43466 + 125, 66, 32, 20, 17, 43, 32, 101, 121, 90, 62, 44, 62, 46, 72, 69, 32.43467 + 106, 204, 226, 232, 237, 233, 247, 230, 219, 210, 173, 141, 103, 73, 67, 51, 32.43468 + 56, 56, 77, 90, 62, 26, 19, 22, 33, 22, 33, 75, 103, 91, 85, 104, 32.43469 + 106, 86, 101, 156, 187, 175, 161, 168, 166, 173, 187, 193, 200, 167, 105, 91, 32.43470 + 95, 78, 164, 177, 183, 211, 226, 251, 254, 254, 254, 255, 255, 255, 255, 255, 32.43471 + 255, 255, 255, 243, 243, 202, 166, 151, 156, 172, 199, 119, 116, 101, 140, 208, 32.43472 + 211, 216, 218, 212, 211, 212, 203, 185, 171, 164, 151, 136, 119, 119, 108, 90, 32.43473 + 87, 106, 132, 146, 153, 101, 47, 13, 19, 47, 63, 130, 145, 114, 75, 45, 32.43474 + 56, 50, 85, 88, 104, 211, 222, 238, 240, 232, 244, 234, 222, 217, 181, 143, 32.43475 + 102, 70, 69, 58, 61, 77, 107, 110, 75, 42, 29, 21, 41, 15, 26, 92, 32.43476 + 144, 128, 93, 89, 126, 107, 113, 148, 168, 158, 150, 160, 166, 174, 187, 192, 32.43477 + 199, 168, 104, 86, 83, 80, 172, 161, 172, 194, 198, 223, 252, 254, 254, 255, 32.43478 + 255, 255, 255, 255, 255, 255, 255, 241, 239, 189, 145, 130, 131, 160, 196, 166, 32.43479 + 103, 99, 145, 214, 206, 220, 225, 218, 210, 213, 208, 191, 178, 166, 153, 137, 32.43480 + 129, 125, 121, 118, 116, 120, 130, 140, 149, 123, 72, 30, 51, 67, 97, 143, 32.43481 + 128, 119, 91, 66, 66, 65, 99, 105, 115, 221, 216, 239, 243, 232, 239, 232, 32.43482 + 226, 221, 185, 151, 111, 78, 72, 57, 64, 78, 105, 115, 91, 62, 46, 29, 32.43483 + 43, 27, 42, 104, 159, 149, 107, 87, 85, 106, 127, 137, 148, 164, 175, 178, 32.43484 + 172, 181, 192, 192, 199, 169, 104, 87, 76, 108, 158, 169, 179, 178, 170, 184, 32.43485 + 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 252, 241, 226, 178, 133, 122, 32.43486 + 118, 150, 166, 189, 100, 104, 155, 222, 202, 216, 223, 215, 212, 215, 209, 193, 32.43487 + 180, 171, 158, 141, 141, 145, 154, 153, 130, 108, 120, 147, 150, 149, 109, 68, 32.43488 + 94, 92, 120, 141, 127, 125, 101, 97, 109, 118, 123, 105, 131, 230, 212, 238, 32.43489 + 244, 232, 236, 229, 216, 211, 180, 152, 118, 88, 78, 60, 77, 70, 93, 119, 32.43490 + 107, 74, 54, 41, 31, 59, 97, 134, 152, 138, 122, 122, 91, 95, 114, 144, 32.43491 + 162, 163, 162, 165, 178, 186, 195, 194, 200, 172, 110, 93, 86, 154, 158, 180, 32.43492 + 160, 134, 148, 187, 250, 254, 254, 255, 255, 255, 255, 255, 255, 255, 247, 244, 32.43493 + 235, 174, 136, 110, 119, 153, 172, 181, 115, 111, 163, 218, 211, 231, 224, 226, 32.43494 + 217, 217, 210, 202, 194, 190, 185, 178, 176, 177, 175, 171, 162, 146, 131, 121, 32.43495 + 140, 150, 130, 103, 112, 123, 122, 126, 125, 123, 122, 127, 136, 140, 139, 136, 32.43496 + 162, 217, 224, 225, 246, 241, 232, 224, 207, 200, 190, 172, 150, 128, 115, 109, 32.43497 + 109, 110, 106, 102, 113, 123, 110, 85, 89, 93, 122, 123, 129, 111, 135, 153, 32.43498 + 144, 138, 143, 159, 169, 169, 174, 180, 182, 179, 182, 192, 192, 169, 127, 95, 32.43499 + 96, 152, 166, 172, 139, 124, 131, 156, 247, 254, 254, 254, 255, 255, 255, 255, 32.43500 + 255, 255, 249, 244, 230, 182, 129, 126, 121, 178, 166, 165, 122, 111, 166, 216, 32.43501 + 219, 236, 234, 231, 219, 219, 213, 207, 203, 202, 199, 193, 193, 192, 192, 188, 32.43502 + 181, 168, 153, 144, 136, 142, 133, 118, 119, 120, 114, 110, 126, 131, 138, 141, 32.43503 + 145, 145, 148, 149, 182, 226, 225, 227, 248, 241, 229, 215, 206, 197, 187, 170, 32.43504 + 155, 144, 142, 143, 119, 120, 115, 111, 122, 133, 123, 100, 97, 99, 124, 100, 32.43505 + 121, 109, 151, 161, 163, 159, 158, 162, 170, 175, 184, 190, 187, 182, 185, 194, 32.43506 + 195, 173, 134, 103, 93, 168, 180, 163, 123, 121, 129, 140, 245, 254, 254, 254, 32.43507 + 255, 255, 255, 255, 255, 255, 255, 244, 229, 189, 121, 134, 118, 198, 165, 156, 32.43508 + 135, 116, 171, 211, 226, 231, 237, 229, 219, 219, 218, 212, 211, 212, 213, 209, 32.43509 + 209, 207, 206, 200, 192, 182, 171, 164, 161, 150, 143, 135, 126, 127, 133, 132, 32.43510 + 140, 147, 156, 157, 154, 156, 166, 176, 201, 234, 225, 229, 248, 242, 229, 209, 32.43511 + 201, 194, 188, 176, 168, 162, 165, 167, 141, 140, 133, 124, 129, 136, 127, 108, 32.43512 + 114, 112, 135, 93, 126, 119, 166, 165, 178, 181, 179, 177, 179, 186, 194, 194, 32.43513 + 192, 189, 191, 199, 199, 181, 143, 111, 94, 170, 183, 164, 119, 116, 128, 145, 32.43514 + 245, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 244, 234, 193, 123, 124, 32.43515 + 114, 201, 176, 163, 150, 119, 174, 206, 228, 226, 233, 224, 219, 219, 218, 214, 32.43516 + 215, 219, 222, 219, 218, 214, 211, 204, 195, 186, 177, 171, 173, 149, 147, 149, 32.43517 + 132, 135, 149, 152, 161, 166, 169, 168, 167, 174, 190, 203, 208, 230, 223, 230, 32.43518 + 246, 239, 228, 209, 194, 192, 194, 191, 185, 176, 172, 168, 162, 159, 151, 138, 32.43519 + 137, 142, 134, 122, 135, 132, 149, 121, 146, 140, 172, 170, 177, 190, 195, 191, 32.43520 + 189, 196, 198, 193, 198, 194, 194, 201, 203, 187, 150, 116, 95, 157, 174, 177, 32.43521 + 130, 107, 123, 163, 247, 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 246, 32.43522 + 238, 197, 147, 124, 131, 195, 191, 173, 148, 115, 169, 205, 228, 224, 232, 222, 32.43523 + 221, 222, 221, 219, 219, 225, 228, 225, 220, 217, 214, 207, 201, 193, 186, 182, 32.43524 + 182, 164, 171, 181, 164, 158, 165, 165, 177, 181, 183, 184, 189, 196, 206, 215, 32.43525 + 210, 227, 224, 233, 239, 226, 223, 210, 193, 194, 200, 200, 195, 185, 177, 169, 32.43526 + 168, 168, 163, 154, 155, 159, 160, 155, 166, 160, 158, 161, 162, 162, 171, 184, 32.43527 + 177, 191, 197, 194, 193, 200, 202, 197, 199, 197, 195, 200, 206, 193, 153, 116, 32.43528 + 91, 154, 175, 181, 134, 111, 128, 172, 247, 254, 254, 254, 255, 255, 255, 255, 32.43529 + 255, 255, 255, 246, 239, 201, 178, 144, 161, 193, 192, 165, 133, 102, 157, 205, 32.43530 + 223, 225, 230, 227, 224, 227, 225, 223, 224, 229, 233, 230, 223, 220, 218, 215, 32.43531 + 211, 206, 200, 197, 201, 189, 189, 187, 175, 171, 178, 186, 186, 190, 195, 202, 32.43532 + 210, 213, 215, 214, 215, 225, 227, 238, 234, 217, 218, 207, 200, 200, 201, 200, 32.43533 + 199, 193, 189, 184, 175, 175, 172, 163, 161, 165, 169, 170, 185, 178, 166, 181, 32.43534 + 170, 177, 178, 198, 187, 191, 191, 190, 191, 197, 202, 203, 198, 195, 195, 198, 32.43535 + 204, 192, 151, 111, 94, 172, 193, 184, 137, 134, 154, 183, 247, 254, 254, 254, 32.43536 + 255, 255, 255, 255, 255, 255, 255, 248, 245, 210, 199, 168, 182, 193, 180, 146, 32.43537 + 118, 92, 146, 207, 215, 228, 225, 228, 222, 224, 223, 221, 224, 230, 235, 233, 32.43538 + 228, 226, 225, 222, 219, 215, 212, 208, 201, 197, 183, 170, 167, 168, 175, 193, 32.43539 + 199, 203, 206, 210, 214, 215, 217, 216, 221, 225, 227, 242, 233, 214, 216, 205, 32.43540 + 207, 205, 204, 202, 201, 199, 196, 193, 188, 190, 186, 173, 165, 162, 165, 167, 32.43541 + 179, 179, 176, 179, 177, 182, 190, 199, 197, 194, 191, 194, 196, 197, 199, 200, 32.43542 + 194, 192, 192, 197, 201, 190, 146, 104, 107, 181, 200, 191, 148, 150, 175, 207, 32.43543 + 249, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 249, 248, 219, 205, 182, 32.43544 + 184, 192, 167, 134, 110, 90, 139, 210, 210, 227, 219, 225, 219, 219, 220, 216, 32.43545 + 221, 229, 233, 233, 232, 231, 230, 226, 222, 216, 211, 208, 198, 209, 200, 187, 32.43546 + 193, 191, 189, 205, 214, 215, 213, 208, 208, 212, 218, 224, 223, 223, 226, 244, 32.43547 + 237, 219, 221, 207, 207, 205, 207, 208, 205, 201, 195, 190, 198, 200, 196, 183, 32.43548 + 173, 168, 173, 174, 164, 172, 189, 176, 186, 188, 199, 191, 202, 195, 196, 204, 32.43549 + 208, 198, 192, 193, 191, 192, 192, 194, 199, 188, 143, 98, 113, 167, 184, 196, 32.43550 + 158, 147, 179, 232, 249, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 247, 32.43551 + 247, 238, 221, 198, 190, 194, 175, 130, 103, 108, 124, 210, 212, 229, 223, 237, 32.43552 + 231, 226, 223, 218, 221, 224, 229, 232, 230, 231, 231, 226, 228, 229, 225, 215, 32.43553 + 209, 209, 206, 200, 203, 212, 215, 211, 220, 221, 222, 216, 215, 213, 218, 222, 32.43554 + 217, 225, 234, 238, 233, 224, 216, 211, 212, 203, 202, 208, 211, 205, 202, 203, 32.43555 + 203, 199, 194, 193, 193, 188, 182, 173, 174, 175, 181, 183, 184, 188, 193, 197, 32.43556 + 199, 201, 206, 205, 201, 197, 194, 192, 191, 193, 195, 196, 200, 186, 134, 83, 32.43557 + 127, 159, 178, 202, 157, 172, 219, 233, 250, 254, 254, 255, 255, 255, 255, 255, 32.43558 + 255, 255, 255, 249, 251, 243, 231, 210, 196, 198, 179, 136, 103, 127, 121, 206, 32.43559 + 216, 222, 229, 230, 225, 223, 218, 216, 218, 220, 227, 231, 232, 235, 233, 231, 32.43560 + 231, 234, 228, 221, 217, 217, 215, 210, 213, 219, 221, 217, 220, 221, 222, 219, 32.43561 + 216, 216, 217, 220, 218, 225, 234, 238, 234, 226, 218, 213, 208, 202, 202, 208, 32.43562 + 209, 204, 197, 197, 194, 192, 192, 195, 198, 197, 192, 186, 182, 185, 189, 190, 32.43563 + 191, 193, 196, 199, 199, 201, 206, 205, 202, 198, 196, 195, 195, 196, 198, 200, 32.43564 + 199, 181, 139, 101, 128, 159, 178, 199, 163, 186, 232, 240, 250, 254, 254, 255, 32.43565 + 255, 255, 255, 255, 255, 255, 255, 249, 250, 248, 242, 223, 206, 202, 185, 145, 32.43566 + 105, 149, 122, 198, 221, 219, 232, 224, 222, 219, 215, 214, 214, 218, 223, 226, 32.43567 + 229, 232, 232, 232, 231, 234, 232, 225, 225, 226, 225, 222, 224, 228, 227, 224, 32.43568 + 219, 219, 220, 217, 215, 214, 216, 218, 219, 225, 233, 237, 235, 228, 221, 215, 32.43569 + 206, 202, 203, 207, 206, 200, 195, 193, 192, 192, 194, 199, 205, 206, 202, 198, 32.43570 + 193, 196, 199, 200, 199, 198, 199, 200, 198, 201, 204, 204, 201, 199, 197, 199, 32.43571 + 197, 198, 199, 203, 200, 183, 156, 133, 137, 167, 185, 198, 178, 206, 243, 245, 32.43572 + 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 247, 246, 245, 234, 32.43573 + 215, 206, 191, 157, 116, 158, 138, 187, 221, 228, 228, 223, 220, 216, 212, 211, 32.43574 + 212, 215, 220, 223, 224, 227, 228, 229, 229, 230, 229, 228, 228, 228, 228, 229, 32.43575 + 229, 230, 228, 224, 222, 218, 216, 213, 212, 213, 216, 219, 220, 225, 232, 235, 32.43576 + 234, 229, 222, 217, 210, 207, 207, 207, 205, 200, 195, 193, 201, 200, 200, 202, 32.43577 + 204, 205, 204, 201, 200, 202, 204, 204, 203, 201, 198, 197, 198, 200, 203, 203, 32.43578 + 202, 200, 200, 200, 201, 197, 199, 205, 206, 193, 178, 167, 148, 173, 193, 200, 32.43579 + 197, 224, 246, 244, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43580 + 245, 244, 249, 243, 224, 215, 201, 176, 130, 155, 162, 180, 217, 241, 218, 229, 32.43581 + 220, 216, 213, 211, 211, 214, 219, 221, 222, 222, 224, 226, 226, 226, 225, 226, 32.43582 + 227, 226, 226, 229, 229, 227, 224, 222, 222, 215, 211, 207, 207, 211, 216, 221, 32.43583 + 220, 223, 229, 232, 232, 228, 224, 216, 211, 208, 207, 203, 199, 196, 194, 192, 32.43584 + 206, 203, 200, 198, 198, 199, 200, 200, 202, 203, 203, 203, 202, 199, 195, 193, 32.43585 + 195, 198, 200, 201, 200, 199, 199, 201, 205, 196, 194, 202, 209, 202, 190, 179, 32.43586 + 149, 169, 197, 201, 215, 236, 247, 239, 252, 255, 255, 255, 255, 255, 255, 255, 32.43587 + 255, 255, 255, 255, 250, 246, 251, 248, 235, 224, 214, 193, 147, 156, 184, 188, 32.43588 + 218, 243, 218, 232, 222, 218, 215, 212, 212, 212, 216, 218, 220, 221, 223, 226, 32.43589 + 225, 223, 223, 227, 224, 221, 221, 225, 226, 223, 220, 218, 218, 211, 205, 204, 32.43590 + 206, 211, 217, 220, 220, 222, 226, 228, 229, 225, 221, 213, 205, 207, 206, 200, 32.43591 + 195, 193, 190, 187, 201, 199, 196, 194, 194, 196, 198, 200, 202, 201, 200, 199, 32.43592 + 199, 197, 194, 191, 194, 196, 198, 198, 197, 196, 197, 199, 206, 200, 194, 198, 32.43593 + 207, 203, 188, 170, 148, 159, 195, 200, 228, 243, 245, 241, 252, 255, 255, 255, 32.43594 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 246, 250, 248, 238, 228, 220, 203, 32.43595 + 162, 168, 194, 205, 222, 235, 228, 228, 222, 219, 213, 211, 210, 210, 212, 213, 32.43596 + 218, 216, 218, 221, 219, 216, 218, 225, 223, 218, 217, 222, 223, 220, 218, 218, 32.43597 + 211, 206, 203, 204, 208, 212, 215, 216, 218, 220, 222, 225, 227, 224, 218, 209, 32.43598 + 199, 203, 206, 201, 195, 192, 189, 183, 194, 195, 196, 197, 198, 199, 200, 202, 32.43599 + 202, 200, 197, 197, 197, 196, 193, 191, 192, 194, 193, 193, 192, 191, 193, 196, 32.43600 + 201, 202, 199, 199, 204, 203, 186, 162, 157, 159, 197, 202, 240, 245, 242, 247, 32.43601 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 246, 250, 32.43602 + 239, 229, 221, 208, 177, 188, 202, 223, 229, 223, 239, 224, 224, 221, 215, 212, 32.43603 + 210, 209, 208, 209, 213, 211, 213, 216, 214, 209, 212, 219, 222, 216, 215, 219, 32.43604 + 223, 217, 219, 220, 208, 206, 206, 209, 214, 216, 215, 213, 218, 217, 220, 221, 32.43605 + 223, 220, 213, 207, 196, 206, 212, 209, 202, 197, 190, 181, 194, 197, 202, 204, 32.43606 + 204, 203, 202, 202, 202, 199, 196, 195, 197, 197, 195, 193, 191, 193, 192, 191, 32.43607 + 190, 189, 191, 194, 192, 202, 204, 200, 204, 204, 188, 163, 171, 168, 204, 208, 32.43608 + 246, 250, 241, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43609 + 255, 249, 253, 247, 240, 225, 209, 229, 200, 213, 218, 224, 234, 232, 228, 232, 32.43610 + 224, 219, 217, 214, 210, 207, 206, 205, 203, 207, 210, 213, 214, 212, 210, 209, 32.43611 + 216, 216, 216, 213, 214, 210, 210, 208, 214, 214, 215, 216, 220, 220, 218, 216, 32.43612 + 213, 217, 212, 209, 218, 216, 203, 193, 200, 205, 206, 205, 206, 208, 198, 184, 32.43613 + 192, 193, 194, 197, 199, 200, 200, 200, 195, 194, 195, 192, 191, 191, 191, 191, 32.43614 + 188, 191, 193, 193, 191, 191, 191, 194, 198, 196, 203, 207, 206, 203, 188, 161, 32.43615 + 165, 183, 206, 229, 246, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43616 + 255, 255, 255, 255, 255, 247, 255, 247, 243, 227, 212, 231, 216, 223, 221, 224, 32.43617 + 234, 233, 227, 230, 224, 221, 218, 214, 212, 207, 206, 204, 203, 205, 207, 209, 32.43618 + 210, 209, 207, 206, 207, 208, 210, 210, 210, 208, 205, 207, 217, 218, 218, 218, 32.43619 + 217, 218, 215, 212, 196, 207, 212, 208, 212, 206, 202, 208, 205, 207, 207, 205, 32.43620 + 210, 217, 216, 208, 191, 192, 193, 196, 198, 199, 199, 199, 193, 193, 192, 191, 32.43621 + 191, 190, 189, 189, 189, 191, 193, 193, 191, 190, 191, 192, 196, 192, 200, 205, 32.43622 + 203, 201, 188, 166, 179, 188, 209, 234, 250, 254, 255, 255, 255, 255, 255, 255, 32.43623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 248, 244, 229, 212, 226, 32.43624 + 226, 227, 219, 220, 231, 232, 226, 228, 224, 222, 218, 214, 212, 207, 205, 204, 32.43625 + 203, 204, 206, 207, 208, 207, 205, 204, 202, 204, 206, 208, 208, 206, 204, 205, 32.43626 + 206, 214, 223, 230, 232, 226, 216, 207, 210, 204, 194, 195, 208, 203, 188, 184, 32.43627 + 180, 190, 198, 200, 205, 211, 209, 201, 189, 190, 193, 196, 198, 199, 199, 197, 32.43628 + 190, 191, 191, 190, 189, 188, 187, 186, 189, 191, 192, 192, 190, 189, 190, 191, 32.43629 + 196, 192, 199, 204, 201, 202, 192, 174, 193, 193, 211, 236, 251, 252, 254, 255, 32.43630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 32.43631 + 244, 232, 214, 225, 227, 224, 213, 211, 225, 228, 225, 226, 223, 220, 218, 214, 32.43632 + 212, 208, 205, 204, 205, 205, 206, 206, 206, 205, 205, 204, 205, 205, 205, 205, 32.43633 + 205, 206, 206, 208, 215, 219, 224, 224, 221, 211, 198, 189, 190, 192, 189, 190, 32.43634 + 195, 193, 190, 200, 196, 201, 196, 189, 191, 206, 216, 217, 187, 189, 191, 193, 32.43635 + 195, 195, 196, 195, 187, 188, 188, 188, 187, 186, 184, 183, 186, 188, 190, 190, 32.43636 + 188, 187, 187, 188, 199, 194, 200, 205, 202, 203, 197, 185, 205, 196, 209, 237, 32.43637 + 251, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43638 + 255, 255, 255, 244, 245, 238, 220, 227, 224, 217, 205, 204, 220, 226, 223, 225, 32.43639 + 222, 221, 218, 214, 212, 208, 204, 203, 207, 207, 206, 205, 204, 204, 204, 204, 32.43640 + 207, 205, 203, 201, 201, 203, 206, 210, 221, 219, 217, 214, 213, 211, 208, 205, 32.43641 + 194, 191, 179, 178, 192, 195, 184, 178, 177, 187, 196, 195, 196, 204, 203, 197, 32.43642 + 188, 189, 192, 193, 194, 193, 194, 192, 187, 185, 185, 185, 184, 183, 182, 181, 32.43643 + 182, 185, 187, 187, 186, 185, 186, 187, 199, 194, 200, 205, 200, 200, 199, 190, 32.43644 + 208, 200, 210, 237, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43645 + 255, 255, 255, 255, 255, 255, 255, 243, 247, 244, 227, 231, 214, 208, 198, 200, 32.43646 + 216, 224, 220, 223, 222, 221, 218, 216, 212, 208, 206, 203, 208, 206, 204, 202, 32.43647 + 201, 201, 202, 202, 204, 202, 200, 198, 199, 202, 207, 209, 213, 216, 219, 216, 32.43648 + 209, 193, 175, 161, 161, 175, 174, 167, 175, 178, 169, 163, 165, 173, 179, 180, 32.43649 + 187, 198, 200, 196, 190, 192, 194, 195, 196, 195, 193, 192, 186, 183, 182, 180, 32.43650 + 179, 179, 180, 180, 179, 182, 185, 186, 185, 185, 187, 188, 197, 192, 198, 205, 32.43651 + 198, 193, 194, 191, 209, 205, 216, 237, 251, 255, 255, 255, 255, 255, 255, 255, 32.43652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 250, 246, 223, 221, 32.43653 + 207, 205, 198, 198, 215, 221, 219, 222, 222, 221, 219, 216, 212, 207, 206, 205, 32.43654 + 204, 202, 199, 196, 195, 195, 196, 197, 196, 196, 198, 199, 202, 206, 209, 212, 32.43655 + 216, 219, 218, 207, 179, 136, 92, 65, 73, 145, 189, 174, 151, 152, 172, 194, 32.43656 + 139, 121, 90, 67, 80, 119, 159, 180, 196, 198, 200, 199, 199, 198, 196, 192, 32.43657 + 186, 182, 179, 176, 176, 176, 178, 180, 178, 181, 184, 186, 187, 187, 189, 191, 32.43658 + 197, 191, 199, 206, 196, 191, 192, 191, 211, 215, 226, 241, 252, 255, 255, 255, 32.43659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 32.43660 + 251, 243, 216, 209, 205, 204, 199, 200, 216, 218, 218, 221, 223, 222, 219, 216, 32.43661 + 212, 209, 205, 204, 203, 200, 197, 193, 192, 192, 194, 195, 192, 195, 200, 205, 32.43662 + 210, 213, 214, 214, 217, 215, 208, 193, 167, 136, 105, 85, 101, 145, 169, 161, 32.43663 + 167, 177, 164, 140, 119, 101, 73, 57, 72, 110, 144, 161, 199, 201, 203, 202, 32.43664 + 202, 200, 199, 195, 186, 181, 177, 174, 173, 175, 178, 180, 179, 181, 185, 187, 32.43665 + 188, 190, 192, 194, 200, 194, 202, 209, 198, 193, 194, 193, 214, 223, 235, 243, 32.43666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43667 + 255, 255, 255, 255, 246, 236, 221, 201, 203, 197, 198, 202, 212, 218, 224, 224, 32.43668 + 223, 219, 216, 217, 212, 207, 203, 205, 206, 200, 194, 191, 193, 195, 194, 193, 32.43669 + 201, 201, 202, 205, 210, 213, 214, 213, 213, 215, 217, 208, 179, 143, 120, 113, 32.43670 + 126, 141, 163, 166, 165, 176, 172, 144, 123, 129, 116, 114, 111, 114, 143, 155, 32.43671 + 197, 203, 200, 198, 206, 202, 196, 196, 189, 184, 179, 175, 174, 174, 176, 178, 32.43672 + 180, 184, 189, 191, 191, 190, 189, 190, 196, 195, 206, 199, 197, 202, 192, 197, 32.43673 + 202, 219, 238, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43674 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 240, 220, 195, 193, 192, 196, 203, 32.43675 + 214, 221, 223, 221, 223, 220, 217, 218, 213, 204, 202, 201, 196, 195, 195, 196, 32.43676 + 198, 200, 201, 200, 204, 206, 209, 212, 215, 216, 215, 213, 213, 213, 212, 203, 32.43677 + 178, 147, 126, 118, 120, 131, 149, 154, 153, 159, 157, 138, 124, 131, 125, 126, 32.43678 + 124, 125, 151, 158, 184, 194, 198, 200, 207, 207, 204, 207, 191, 186, 181, 177, 32.43679 + 175, 176, 178, 179, 176, 180, 186, 189, 191, 191, 192, 193, 196, 193, 205, 199, 32.43680 + 194, 195, 185, 194, 196, 215, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 222, 196, 32.43682 + 194, 191, 194, 202, 212, 222, 225, 227, 223, 220, 218, 218, 213, 204, 200, 199, 32.43683 + 188, 191, 195, 199, 200, 201, 202, 203, 202, 206, 210, 213, 213, 211, 210, 210, 32.43684 + 212, 210, 206, 199, 180, 157, 138, 130, 113, 112, 124, 133, 129, 129, 133, 124, 32.43685 + 106, 118, 120, 131, 135, 138, 163, 168, 184, 197, 201, 203, 208, 203, 201, 205, 32.43686 + 197, 191, 186, 181, 178, 178, 180, 181, 176, 180, 185, 189, 190, 190, 191, 192, 32.43687 + 192, 187, 204, 203, 199, 195, 190, 205, 192, 215, 241, 255, 255, 255, 255, 255, 32.43688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43689 + 255, 255, 229, 208, 206, 198, 193, 194, 204, 216, 228, 233, 224, 220, 218, 217, 32.43690 + 213, 203, 196, 197, 187, 192, 198, 200, 199, 198, 200, 202, 205, 208, 210, 211, 32.43691 + 209, 208, 209, 210, 209, 206, 201, 194, 183, 166, 152, 143, 118, 101, 103, 114, 32.43692 + 113, 108, 112, 109, 99, 112, 118, 132, 138, 142, 163, 168, 180, 195, 201, 202, 32.43693 + 206, 200, 197, 204, 202, 197, 191, 186, 182, 180, 181, 181, 182, 185, 188, 190, 32.43694 + 189, 189, 189, 189, 195, 189, 205, 206, 200, 195, 190, 206, 201, 222, 248, 255, 32.43695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43696 + 255, 255, 255, 255, 255, 255, 255, 230, 215, 209, 204, 203, 209, 218, 227, 230, 32.43697 + 226, 220, 217, 216, 212, 202, 196, 196, 192, 196, 200, 201, 199, 199, 201, 204, 32.43698 + 209, 208, 207, 205, 205, 206, 210, 212, 208, 206, 199, 191, 182, 170, 160, 149, 32.43699 + 132, 103, 95, 106, 109, 104, 104, 102, 121, 132, 130, 139, 141, 140, 157, 159, 32.43700 + 168, 184, 190, 194, 199, 197, 197, 205, 199, 197, 193, 188, 185, 182, 181, 180, 32.43701 + 184, 187, 189, 190, 190, 189, 189, 190, 199, 192, 205, 202, 196, 192, 186, 199, 32.43702 + 217, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 232, 231, 230, 235, 32.43704 + 238, 238, 234, 230, 228, 222, 217, 213, 210, 200, 197, 198, 198, 200, 202, 203, 32.43705 + 203, 202, 203, 204, 199, 194, 190, 189, 191, 196, 200, 202, 202, 202, 196, 186, 32.43706 + 178, 172, 162, 152, 140, 108, 94, 102, 105, 102, 105, 105, 133, 141, 135, 141, 32.43707 + 141, 139, 155, 154, 166, 177, 181, 182, 188, 183, 179, 187, 188, 188, 188, 187, 32.43708 + 185, 183, 181, 179, 181, 184, 187, 189, 189, 190, 192, 194, 192, 188, 202, 200, 32.43709 + 203, 213, 210, 220, 235, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43711 + 246, 247, 249, 251, 251, 250, 241, 232, 228, 221, 215, 211, 208, 199, 199, 201, 32.43712 + 200, 201, 202, 203, 202, 199, 194, 189, 178, 171, 166, 167, 175, 181, 182, 181, 32.43713 + 187, 189, 187, 179, 174, 172, 167, 159, 145, 119, 107, 109, 107, 108, 118, 120, 32.43714 + 134, 142, 136, 142, 144, 139, 154, 152, 166, 173, 170, 167, 172, 165, 158, 163, 32.43715 + 171, 174, 178, 182, 184, 183, 181, 179, 180, 182, 185, 186, 186, 187, 190, 192, 32.43716 + 185, 187, 201, 198, 212, 237, 239, 243, 244, 250, 255, 255, 255, 255, 255, 255, 32.43717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43718 + 255, 255, 255, 255, 255, 250, 250, 249, 252, 246, 237, 229, 228, 219, 213, 209, 32.43719 + 205, 199, 199, 203, 203, 202, 202, 203, 201, 193, 182, 171, 165, 158, 154, 158, 32.43720 + 166, 173, 171, 169, 167, 175, 177, 173, 171, 175, 174, 169, 155, 134, 126, 124, 32.43721 + 117, 119, 136, 141, 144, 152, 144, 148, 146, 138, 147, 144, 155, 161, 157, 155, 32.43722 + 162, 159, 151, 156, 156, 161, 168, 176, 180, 181, 181, 179, 182, 183, 185, 184, 32.43723 + 183, 183, 184, 186, 190, 192, 204, 196, 213, 243, 244, 243, 248, 252, 255, 255, 32.43724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 247, 247, 246, 236, 222, 32.43726 + 224, 216, 210, 207, 205, 199, 198, 200, 205, 202, 203, 202, 195, 180, 173, 172, 32.43727 + 155, 145, 138, 143, 148, 151, 155, 163, 160, 169, 173, 174, 176, 180, 178, 175, 32.43728 + 173, 151, 141, 141, 140, 147, 157, 155, 157, 152, 148, 146, 148, 148, 145, 144, 32.43729 + 152, 158, 154, 154, 163, 159, 150, 150, 152, 157, 156, 164, 180, 180, 175, 177, 32.43730 + 181, 181, 181, 182, 187, 190, 193, 195, 200, 200, 200, 205, 222, 238, 246, 243, 32.43731 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 248, 32.43733 + 247, 245, 235, 224, 223, 214, 211, 207, 201, 196, 196, 200, 215, 210, 207, 203, 32.43734 + 194, 181, 171, 168, 160, 148, 124, 105, 105, 124, 145, 156, 162, 166, 166, 165, 32.43735 + 167, 170, 166, 162, 156, 145, 146, 152, 149, 152, 158, 154, 152, 149, 146, 144, 32.43736 + 145, 144, 142, 140, 142, 152, 153, 152, 158, 152, 144, 147, 150, 152, 148, 154, 32.43737 + 175, 179, 173, 174, 181, 181, 180, 181, 185, 187, 190, 191, 195, 198, 201, 208, 32.43738 + 225, 242, 245, 242, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43740 + 255, 255, 254, 248, 248, 247, 239, 226, 221, 213, 210, 205, 198, 193, 193, 199, 32.43741 + 215, 209, 201, 198, 191, 181, 170, 163, 160, 147, 109, 71, 65, 96, 123, 134, 32.43742 + 157, 158, 154, 149, 148, 149, 145, 140, 131, 128, 138, 149, 145, 144, 146, 140, 32.43743 + 133, 134, 136, 138, 139, 140, 144, 146, 144, 158, 163, 158, 154, 144, 139, 148, 32.43744 + 149, 151, 146, 150, 170, 176, 172, 174, 182, 181, 180, 180, 183, 184, 186, 188, 32.43745 + 191, 195, 201, 214, 230, 243, 246, 242, 251, 255, 255, 255, 255, 255, 255, 255, 32.43746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43747 + 255, 255, 255, 255, 255, 255, 255, 249, 250, 248, 241, 232, 218, 213, 208, 203, 32.43748 + 195, 191, 193, 201, 209, 204, 198, 197, 193, 185, 172, 163, 150, 131, 95, 60, 32.43749 + 56, 76, 95, 100, 121, 125, 122, 114, 107, 108, 108, 109, 115, 108, 113, 122, 32.43750 + 119, 118, 118, 112, 105, 109, 115, 119, 122, 126, 135, 140, 144, 157, 158, 144, 32.43751 + 131, 119, 120, 136, 143, 152, 152, 154, 168, 173, 173, 178, 183, 182, 181, 180, 32.43752 + 182, 183, 185, 186, 190, 194, 203, 217, 233, 244, 249, 247, 252, 255, 255, 255, 32.43753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 248, 243, 236, 32.43755 + 219, 213, 205, 200, 194, 191, 194, 202, 208, 206, 202, 201, 198, 190, 174, 162, 32.43756 + 144, 119, 91, 77, 80, 88, 95, 99, 113, 124, 127, 119, 111, 113, 122, 130, 32.43757 + 127, 108, 100, 103, 102, 104, 104, 96, 92, 96, 100, 101, 102, 106, 114, 119, 32.43758 + 123, 133, 127, 108, 95, 85, 90, 109, 127, 147, 156, 157, 166, 171, 175, 184, 32.43759 + 183, 182, 181, 180, 183, 184, 186, 187, 192, 195, 205, 219, 234, 243, 250, 251, 32.43760 + 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43762 + 251, 250, 247, 241, 226, 215, 205, 200, 195, 192, 193, 199, 202, 204, 201, 197, 32.43763 + 190, 183, 168, 155, 157, 133, 116, 117, 126, 129, 134, 142, 145, 157, 162, 157, 32.43764 + 152, 157, 169, 179, 141, 116, 102, 102, 102, 105, 105, 96, 95, 94, 91, 88, 32.43765 + 85, 86, 91, 94, 91, 100, 94, 79, 71, 64, 70, 87, 116, 141, 153, 154, 32.43766 + 164, 171, 177, 186, 180, 180, 179, 180, 183, 185, 188, 191, 197, 200, 210, 225, 32.43767 + 239, 245, 250, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43769 + 255, 255, 255, 255, 255, 251, 250, 246, 235, 221, 207, 198, 195, 192, 190, 192, 32.43770 + 192, 195, 193, 186, 177, 173, 165, 154, 161, 156, 152, 151, 159, 169, 176, 178, 32.43771 + 162, 168, 169, 164, 161, 166, 172, 177, 186, 167, 160, 163, 162, 163, 161, 152, 32.43772 + 153, 148, 141, 137, 139, 141, 146, 147, 144, 155, 156, 150, 148, 142, 140, 150, 32.43773 + 126, 146, 152, 150, 162, 172, 174, 179, 175, 175, 176, 177, 182, 186, 189, 193, 32.43774 + 200, 205, 217, 233, 244, 246, 248, 252, 255, 255, 255, 255, 255, 255, 255, 255, 32.43775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 253, 248, 244, 227, 208, 198, 32.43777 + 195, 192, 187, 187, 188, 192, 190, 181, 172, 172, 169, 164, 150, 167, 174, 165, 32.43778 + 168, 182, 189, 184, 174, 174, 168, 161, 159, 162, 160, 157, 145, 135, 137, 146, 32.43779 + 143, 140, 137, 128, 131, 125, 118, 116, 123, 130, 138, 140, 146, 159, 165, 166, 32.43780 + 168, 159, 149, 152, 144, 157, 155, 149, 163, 172, 171, 170, 172, 172, 173, 176, 32.43781 + 181, 185, 189, 193, 200, 208, 222, 241, 248, 249, 248, 249, 255, 255, 255, 255, 32.43782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 251, 32.43784 + 243, 229, 213, 206, 199, 192, 190, 192, 189, 190, 189, 184, 173, 166, 162, 162, 32.43785 + 164, 166, 171, 177, 181, 182, 184, 182, 173, 171, 169, 169, 167, 160, 147, 139, 32.43786 + 143, 140, 135, 133, 134, 135, 134, 133, 135, 130, 124, 127, 144, 158, 161, 155, 32.43787 + 165, 174, 172, 167, 168, 162, 159, 167, 152, 153, 155, 159, 165, 170, 173, 175, 32.43788 + 179, 170, 168, 176, 186, 189, 194, 201, 204, 219, 231, 239, 243, 247, 249, 248, 32.43789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43791 + 255, 253, 252, 252, 249, 234, 219, 210, 200, 192, 187, 190, 189, 190, 189, 184, 32.43792 + 174, 167, 163, 163, 168, 171, 174, 179, 182, 182, 181, 180, 170, 169, 167, 168, 32.43793 + 169, 166, 157, 151, 142, 141, 138, 137, 137, 138, 139, 141, 137, 135, 132, 134, 32.43794 + 148, 160, 163, 158, 161, 170, 169, 165, 167, 161, 158, 165, 154, 154, 156, 159, 32.43795 + 165, 170, 174, 177, 174, 171, 174, 182, 189, 189, 193, 201, 205, 219, 234, 242, 32.43796 + 246, 249, 250, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43798 + 255, 255, 255, 255, 255, 254, 253, 250, 252, 240, 227, 216, 204, 194, 189, 189, 32.43799 + 188, 188, 186, 181, 174, 169, 165, 164, 168, 172, 177, 182, 185, 184, 182, 178, 32.43800 + 166, 162, 157, 155, 155, 153, 146, 142, 144, 144, 142, 142, 142, 143, 146, 148, 32.43801 + 140, 143, 147, 149, 156, 166, 171, 169, 159, 169, 170, 167, 169, 163, 160, 166, 32.43802 + 157, 157, 157, 159, 165, 170, 176, 179, 172, 175, 182, 187, 188, 185, 189, 199, 32.43803 + 218, 232, 245, 247, 250, 252, 251, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.43804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 252, 252, 244, 233, 219, 32.43806 + 205, 196, 191, 191, 188, 187, 185, 180, 175, 171, 168, 166, 166, 170, 176, 182, 32.43807 + 184, 183, 181, 179, 168, 160, 152, 148, 147, 145, 140, 137, 138, 135, 131, 131, 32.43808 + 134, 136, 136, 135, 136, 142, 148, 147, 148, 152, 156, 155, 163, 172, 172, 170, 32.43809 + 172, 165, 159, 164, 159, 158, 158, 159, 165, 171, 177, 181, 175, 180, 185, 185, 32.43810 + 183, 182, 189, 201, 225, 239, 247, 249, 248, 251, 252, 250, 255, 255, 255, 255, 32.43811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 32.43813 + 252, 248, 239, 223, 205, 194, 189, 188, 189, 187, 183, 180, 176, 173, 173, 171, 32.43814 + 170, 173, 178, 182, 184, 182, 179, 177, 169, 161, 152, 147, 146, 145, 140, 137, 32.43815 + 131, 124, 115, 116, 122, 124, 120, 114, 130, 139, 145, 144, 143, 145, 148, 148, 32.43816 + 166, 173, 172, 169, 173, 165, 156, 159, 160, 159, 158, 159, 165, 171, 177, 181, 32.43817 + 179, 183, 185, 182, 182, 187, 198, 210, 228, 239, 246, 246, 247, 250, 254, 255, 32.43818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43820 + 255, 255, 255, 254, 255, 253, 248, 227, 205, 194, 188, 186, 189, 186, 182, 179, 32.43821 + 177, 176, 175, 173, 175, 177, 180, 181, 181, 180, 179, 175, 166, 157, 145, 137, 32.43822 + 131, 125, 115, 109, 102, 94, 84, 84, 89, 90, 85, 79, 93, 105, 117, 122, 32.43823 + 129, 138, 146, 149, 163, 170, 166, 163, 168, 162, 153, 155, 160, 159, 159, 160, 32.43824 + 166, 171, 176, 179, 180, 183, 183, 181, 187, 196, 204, 210, 236, 249, 251, 251, 32.43825 + 249, 251, 253, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43827 + 255, 255, 255, 255, 255, 255, 255, 255, 252, 253, 250, 230, 208, 198, 194, 193, 32.43828 + 190, 186, 181, 179, 178, 177, 177, 175, 175, 176, 180, 183, 184, 185, 185, 183, 32.43829 + 172, 163, 153, 144, 136, 126, 113, 105, 88, 85, 80, 77, 76, 75, 74, 73, 32.43830 + 80, 92, 104, 112, 122, 134, 142, 146, 161, 166, 163, 161, 166, 162, 154, 157, 32.43831 + 158, 158, 159, 161, 166, 170, 174, 176, 178, 180, 181, 183, 192, 198, 194, 188, 32.43832 + 218, 233, 245, 247, 249, 251, 252, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.43833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 251, 250, 233, 32.43835 + 214, 206, 205, 204, 190, 185, 182, 178, 181, 180, 178, 176, 171, 172, 176, 180, 32.43836 + 184, 189, 192, 192, 187, 181, 177, 173, 171, 164, 155, 147, 135, 138, 138, 132, 32.43837 + 125, 122, 126, 131, 138, 146, 151, 153, 154, 161, 164, 163, 160, 164, 162, 160, 32.43838 + 167, 164, 159, 163, 159, 157, 161, 164, 167, 170, 173, 175, 177, 179, 181, 185, 32.43839 + 194, 194, 177, 160, 165, 185, 208, 228, 240, 251, 255, 253, 255, 255, 255, 255, 32.43840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43842 + 249, 253, 245, 237, 206, 217, 209, 202, 198, 193, 186, 177, 180, 184, 182, 174, 32.43843 + 184, 179, 174, 175, 181, 188, 193, 192, 198, 194, 187, 178, 178, 173, 163, 151, 32.43844 + 147, 152, 151, 139, 131, 135, 143, 146, 153, 153, 152, 154, 155, 161, 164, 166, 32.43845 + 165, 166, 165, 163, 163, 163, 160, 152, 165, 165, 167, 167, 170, 173, 177, 179, 32.43846 + 169, 186, 183, 184, 203, 197, 167, 153, 160, 151, 179, 213, 240, 246, 239, 251, 32.43847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43849 + 255, 255, 255, 254, 249, 251, 245, 237, 207, 215, 211, 201, 204, 200, 191, 182, 32.43850 + 181, 185, 182, 177, 175, 172, 172, 176, 182, 188, 191, 191, 186, 186, 184, 181, 32.43851 + 180, 178, 172, 163, 154, 155, 154, 148, 143, 143, 149, 154, 153, 151, 152, 152, 32.43852 + 155, 157, 161, 162, 164, 166, 167, 165, 166, 167, 164, 157, 166, 166, 166, 167, 32.43853 + 169, 173, 176, 178, 179, 189, 179, 174, 189, 187, 164, 149, 153, 140, 157, 179, 32.43854 + 210, 238, 240, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43856 + 255, 255, 255, 255, 255, 255, 255, 254, 250, 251, 244, 238, 207, 212, 207, 197, 32.43857 + 209, 206, 199, 190, 185, 185, 183, 180, 171, 171, 173, 179, 184, 189, 188, 186, 32.43858 + 182, 185, 185, 181, 177, 175, 170, 162, 156, 149, 148, 151, 149, 142, 146, 155, 32.43859 + 146, 147, 148, 149, 153, 155, 158, 159, 161, 164, 165, 164, 166, 168, 165, 161, 32.43860 + 171, 171, 171, 172, 175, 178, 181, 183, 187, 191, 180, 173, 185, 184, 166, 149, 32.43861 + 152, 141, 148, 153, 190, 239, 248, 249, 254, 255, 255, 255, 255, 255, 255, 255, 32.43862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 250, 250, 244, 239, 32.43864 + 207, 210, 203, 194, 209, 208, 206, 200, 193, 188, 183, 182, 176, 175, 175, 179, 32.43865 + 182, 184, 182, 179, 179, 184, 185, 179, 173, 169, 164, 156, 155, 144, 143, 149, 32.43866 + 149, 139, 139, 149, 138, 140, 143, 146, 151, 153, 156, 157, 158, 162, 163, 162, 32.43867 + 164, 166, 164, 159, 171, 173, 173, 175, 177, 180, 182, 184, 181, 184, 180, 178, 32.43868 + 186, 187, 170, 147, 149, 147, 150, 141, 177, 235, 246, 241, 254, 255, 255, 255, 32.43869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.43871 + 251, 250, 244, 241, 209, 208, 200, 192, 204, 205, 207, 207, 201, 193, 185, 183, 32.43872 + 180, 176, 173, 173, 174, 176, 175, 173, 166, 171, 173, 169, 166, 163, 160, 156, 32.43873 + 154, 142, 141, 149, 147, 135, 134, 143, 142, 143, 145, 147, 149, 151, 153, 153, 32.43874 + 156, 161, 165, 163, 163, 164, 163, 159, 166, 167, 167, 168, 170, 172, 173, 174, 32.43875 + 171, 171, 172, 174, 181, 187, 175, 152, 155, 155, 154, 137, 165, 223, 239, 238, 32.43876 + 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43878 + 255, 255, 255, 254, 251, 249, 244, 243, 211, 208, 199, 192, 197, 197, 201, 207, 32.43879 + 206, 198, 190, 188, 181, 176, 170, 168, 168, 171, 171, 167, 163, 164, 163, 158, 32.43880 + 153, 152, 148, 143, 142, 137, 137, 140, 135, 128, 129, 137, 147, 147, 147, 147, 32.43881 + 147, 147, 149, 149, 157, 163, 168, 166, 165, 166, 166, 163, 167, 168, 168, 169, 32.43882 + 169, 170, 170, 170, 175, 168, 170, 173, 178, 190, 187, 163, 163, 162, 162, 140, 32.43883 + 155, 204, 231, 248, 250, 252, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.43884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43885 + 255, 255, 255, 255, 255, 255, 255, 254, 251, 248, 244, 245, 213, 209, 199, 193, 32.43886 + 193, 189, 192, 201, 206, 202, 196, 195, 189, 183, 176, 173, 171, 171, 168, 164, 32.43887 + 161, 158, 150, 144, 142, 141, 134, 127, 130, 133, 132, 130, 126, 125, 129, 135, 32.43888 + 141, 142, 142, 141, 142, 144, 145, 147, 154, 161, 166, 164, 165, 167, 168, 167, 32.43889 + 171, 171, 171, 171, 170, 170, 169, 168, 172, 164, 170, 176, 177, 189, 187, 159, 32.43890 + 149, 152, 162, 147, 149, 183, 214, 246, 249, 250, 252, 254, 254, 255, 255, 255, 32.43891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 247, 244, 246, 32.43893 + 215, 210, 199, 194, 191, 184, 185, 196, 204, 204, 200, 201, 200, 194, 187, 182, 32.43894 + 177, 173, 167, 161, 149, 145, 137, 134, 137, 141, 136, 130, 127, 135, 137, 131, 32.43895 + 126, 130, 137, 142, 131, 131, 131, 132, 135, 140, 144, 147, 149, 157, 162, 162, 32.43896 + 164, 167, 168, 167, 167, 169, 168, 168, 167, 165, 164, 163, 158, 153, 166, 176, 32.43897 + 175, 182, 173, 138, 121, 130, 154, 149, 145, 163, 191, 236, 247, 249, 250, 252, 32.43898 + 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.43900 + 252, 248, 250, 236, 214, 205, 205, 194, 190, 187, 188, 194, 197, 197, 198, 203, 32.43901 + 203, 198, 193, 190, 186, 183, 178, 172, 156, 153, 150, 148, 144, 142, 139, 136, 32.43902 + 132, 137, 143, 148, 148, 146, 143, 140, 127, 138, 145, 143, 140, 142, 145, 146, 32.43903 + 159, 160, 163, 165, 166, 166, 164, 165, 165, 164, 163, 161, 159, 156, 153, 152, 32.43904 + 152, 163, 157, 165, 173, 170, 163, 134, 93, 98, 118, 153, 160, 173, 172, 221, 32.43905 + 242, 248, 245, 242, 250, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43907 + 255, 255, 254, 251, 252, 248, 250, 237, 215, 206, 206, 194, 188, 184, 184, 188, 32.43908 + 190, 189, 189, 194, 195, 193, 190, 189, 187, 185, 180, 176, 163, 160, 157, 154, 32.43909 + 153, 150, 150, 146, 147, 147, 149, 152, 152, 150, 150, 149, 142, 149, 152, 149, 32.43910 + 144, 147, 151, 153, 162, 163, 165, 166, 165, 164, 162, 160, 163, 163, 161, 159, 32.43911 + 157, 155, 154, 153, 152, 163, 157, 164, 173, 172, 169, 143, 100, 76, 75, 114, 32.43912 + 140, 167, 165, 199, 238, 246, 246, 243, 250, 252, 251, 255, 255, 255, 255, 255, 32.43913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43914 + 255, 255, 255, 255, 255, 255, 254, 251, 251, 248, 250, 238, 217, 208, 207, 193, 32.43915 + 190, 185, 184, 187, 187, 186, 185, 189, 192, 192, 192, 193, 192, 191, 188, 186, 32.43916 + 175, 170, 168, 164, 163, 161, 161, 159, 161, 158, 157, 156, 156, 154, 157, 158, 32.43917 + 155, 161, 160, 154, 151, 155, 157, 158, 164, 164, 162, 162, 160, 158, 156, 156, 32.43918 + 161, 160, 157, 155, 154, 154, 155, 156, 153, 163, 156, 164, 172, 173, 174, 153, 32.43919 + 122, 76, 50, 77, 117, 167, 166, 178, 229, 244, 244, 243, 250, 250, 249, 255, 32.43920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 251, 247, 250, 238, 32.43922 + 219, 209, 207, 193, 191, 186, 184, 186, 186, 184, 183, 188, 191, 190, 190, 191, 32.43923 + 190, 191, 191, 191, 184, 180, 177, 172, 170, 167, 168, 164, 164, 162, 160, 157, 32.43924 + 159, 158, 161, 162, 159, 163, 162, 157, 155, 158, 159, 158, 160, 160, 158, 157, 32.43925 + 156, 154, 152, 151, 158, 157, 153, 151, 150, 152, 155, 157, 154, 162, 155, 162, 32.43926 + 168, 169, 173, 158, 140, 98, 63, 65, 95, 166, 171, 167, 216, 237, 243, 240, 32.43927 + 246, 248, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.43929 + 252, 247, 248, 237, 218, 210, 208, 193, 187, 181, 179, 180, 180, 179, 179, 184, 32.43930 + 185, 184, 182, 180, 178, 180, 183, 186, 189, 185, 182, 176, 174, 169, 169, 165, 32.43931 + 164, 162, 163, 162, 163, 162, 163, 163, 157, 162, 164, 161, 159, 161, 161, 158, 32.43932 + 153, 153, 151, 151, 149, 148, 147, 149, 155, 153, 149, 146, 146, 149, 153, 155, 32.43933 + 152, 160, 152, 160, 163, 160, 167, 154, 134, 115, 90, 69, 76, 155, 172, 162, 32.43934 + 204, 231, 241, 240, 245, 248, 247, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.43935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43936 + 255, 255, 254, 251, 253, 246, 245, 234, 216, 210, 208, 193, 189, 183, 180, 180, 32.43937 + 180, 178, 179, 184, 182, 181, 179, 177, 173, 174, 178, 183, 189, 186, 182, 179, 32.43938 + 177, 172, 167, 164, 167, 166, 167, 166, 167, 166, 165, 164, 157, 162, 164, 162, 32.43939 + 161, 163, 160, 156, 148, 148, 146, 146, 144, 145, 145, 147, 150, 150, 147, 144, 32.43940 + 144, 147, 150, 153, 148, 156, 151, 160, 161, 154, 161, 150, 125, 118, 109, 83, 32.43941 + 73, 147, 173, 169, 198, 230, 244, 241, 247, 250, 249, 250, 255, 255, 255, 255, 32.43942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43943 + 255, 255, 255, 255, 255, 255, 254, 251, 253, 245, 243, 230, 213, 208, 208, 194, 32.43944 + 193, 186, 182, 181, 179, 177, 177, 181, 176, 178, 180, 179, 174, 173, 175, 179, 32.43945 + 184, 185, 183, 183, 181, 176, 171, 166, 170, 170, 170, 168, 167, 166, 165, 164, 32.43946 + 163, 165, 162, 158, 158, 159, 157, 152, 147, 147, 145, 144, 142, 143, 142, 143, 32.43947 + 148, 148, 146, 144, 144, 145, 148, 150, 142, 152, 150, 161, 161, 152, 157, 148, 32.43948 + 133, 113, 109, 103, 88, 147, 172, 176, 190, 225, 243, 241, 247, 250, 250, 250, 32.43949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 251, 252, 243, 239, 226, 32.43951 + 211, 206, 204, 193, 191, 182, 177, 175, 172, 168, 167, 172, 165, 168, 176, 175, 32.43952 + 173, 170, 169, 169, 178, 178, 179, 180, 180, 177, 172, 166, 171, 169, 167, 164, 32.43953 + 161, 160, 159, 159, 163, 163, 157, 151, 150, 153, 152, 146, 149, 148, 145, 144, 32.43954 + 142, 142, 142, 142, 147, 145, 145, 142, 143, 142, 146, 145, 137, 147, 150, 161, 32.43955 + 162, 149, 157, 149, 144, 104, 99, 111, 99, 143, 163, 176, 184, 221, 241, 239, 32.43956 + 244, 250, 249, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 250, 247, 32.43958 + 241, 246, 225, 181, 195, 206, 192, 197, 189, 180, 173, 171, 174, 173, 167, 161, 32.43959 + 166, 163, 164, 163, 164, 164, 161, 159, 161, 163, 164, 162, 160, 157, 157, 156, 32.43960 + 155, 154, 154, 155, 155, 154, 151, 148, 154, 149, 147, 149, 149, 144, 145, 148, 32.43961 + 145, 144, 143, 141, 140, 139, 138, 138, 145, 144, 145, 143, 145, 142, 142, 137, 32.43962 + 141, 148, 152, 145, 147, 152, 152, 139, 133, 113, 89, 114, 96, 71, 177, 184, 32.43963 + 199, 233, 244, 244, 249, 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 32.43964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255, 255, 255, 32.43965 + 255, 253, 250, 246, 237, 244, 213, 175, 191, 204, 193, 196, 181, 176, 170, 168, 32.43966 + 168, 166, 162, 157, 160, 159, 157, 158, 161, 163, 164, 163, 158, 157, 158, 156, 32.43967 + 153, 151, 150, 151, 151, 150, 150, 150, 151, 150, 147, 144, 147, 142, 141, 143, 32.43968 + 142, 138, 138, 142, 142, 141, 141, 140, 140, 140, 141, 141, 144, 142, 140, 139, 32.43969 + 140, 140, 139, 137, 139, 147, 149, 143, 144, 150, 149, 140, 121, 113, 95, 104, 32.43970 + 96, 72, 159, 188, 203, 234, 246, 245, 252, 255, 255, 255, 255, 255, 255, 255, 32.43971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 32.43972 + 255, 255, 255, 255, 255, 253, 250, 246, 240, 240, 203, 175, 185, 201, 193, 193, 32.43973 + 178, 175, 172, 168, 165, 161, 158, 157, 158, 155, 152, 152, 155, 158, 161, 162, 32.43974 + 156, 156, 156, 154, 151, 148, 147, 147, 149, 148, 147, 147, 148, 147, 145, 143, 32.43975 + 145, 142, 141, 142, 141, 137, 136, 138, 139, 139, 139, 139, 140, 142, 143, 144, 32.43976 + 143, 140, 136, 135, 136, 137, 138, 137, 138, 144, 146, 142, 143, 149, 149, 141, 32.43977 + 123, 122, 106, 97, 103, 72, 122, 186, 208, 238, 248, 247, 254, 255, 255, 255, 32.43978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 32.43979 + 254, 254, 254, 254, 255, 255, 255, 255, 255, 253, 250, 246, 245, 240, 193, 177, 32.43980 + 178, 193, 190, 187, 176, 177, 176, 172, 165, 160, 158, 158, 157, 154, 151, 150, 32.43981 + 152, 154, 154, 152, 155, 155, 155, 153, 149, 146, 146, 146, 148, 146, 145, 145, 32.43982 + 146, 146, 144, 142, 142, 141, 140, 140, 138, 135, 134, 134, 138, 138, 138, 139, 32.43983 + 140, 141, 143, 144, 142, 138, 134, 132, 133, 136, 138, 138, 138, 142, 144, 141, 32.43984 + 142, 147, 147, 142, 128, 122, 108, 97, 120, 73, 91, 191, 214, 239, 248, 247, 32.43985 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43986 + 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 255, 253, 250, 247, 32.43987 + 247, 241, 186, 182, 171, 185, 191, 189, 175, 177, 177, 172, 163, 157, 155, 156, 32.43988 + 150, 149, 149, 150, 152, 152, 151, 147, 154, 153, 154, 152, 149, 146, 145, 146, 32.43989 + 147, 145, 144, 144, 145, 145, 144, 143, 139, 139, 138, 135, 134, 134, 133, 132, 32.43990 + 140, 140, 139, 139, 139, 140, 140, 141, 141, 137, 132, 130, 132, 136, 138, 140, 32.43991 + 138, 141, 143, 142, 143, 145, 145, 141, 130, 108, 97, 97, 132, 80, 85, 201, 32.43992 + 217, 240, 249, 248, 253, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.43993 + 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, 255, 32.43994 + 255, 255, 252, 247, 243, 239, 183, 189, 163, 175, 190, 189, 172, 174, 174, 169, 32.43995 + 161, 154, 151, 150, 143, 143, 145, 148, 152, 153, 152, 148, 149, 151, 152, 150, 32.43996 + 148, 146, 145, 146, 146, 144, 142, 142, 143, 144, 144, 143, 142, 143, 141, 137, 32.43997 + 136, 139, 140, 138, 142, 141, 140, 139, 138, 138, 138, 139, 138, 134, 130, 129, 32.43998 + 131, 135, 138, 139, 139, 141, 144, 145, 146, 145, 143, 139, 138, 111, 98, 100, 32.43999 + 129, 81, 101, 202, 223, 242, 248, 247, 253, 255, 254, 255, 255, 255, 255, 255, 32.44000 + 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.44001 + 253, 254, 255, 255, 255, 255, 252, 249, 244, 245, 185, 196, 152, 158, 178, 183, 32.44002 + 173, 171, 170, 166, 159, 152, 147, 145, 142, 141, 141, 143, 147, 150, 150, 150, 32.44003 + 145, 147, 148, 148, 146, 144, 144, 145, 143, 141, 139, 139, 140, 142, 142, 141, 32.44004 + 142, 143, 140, 134, 134, 140, 143, 141, 141, 140, 139, 139, 138, 138, 139, 139, 32.44005 + 134, 131, 128, 127, 130, 133, 135, 136, 140, 142, 146, 149, 148, 145, 141, 137, 32.44006 + 143, 122, 109, 104, 117, 92, 142, 214, 230, 246, 249, 248, 255, 255, 255, 255, 32.44007 + 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.44008 + 254, 254, 254, 254, 253, 254, 255, 255, 255, 255, 254, 251, 248, 248, 191, 201, 32.44009 + 144, 145, 168, 174, 174, 173, 171, 167, 162, 155, 149, 145, 147, 144, 141, 141, 32.44010 + 143, 146, 148, 148, 142, 144, 146, 145, 144, 143, 143, 144, 141, 139, 137, 136, 32.44011 + 138, 140, 140, 140, 133, 135, 131, 124, 125, 132, 137, 135, 140, 139, 138, 138, 32.44012 + 138, 139, 140, 140, 130, 128, 126, 126, 129, 132, 133, 134, 141, 143, 147, 151, 32.44013 + 150, 145, 139, 135, 130, 126, 115, 106, 110, 113, 189, 241, 236, 248, 250, 252, 32.44014 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 32.44015 + 254, 254, 254, 254, 254, 254, 254, 254, 251, 251, 254, 255, 255, 255, 255, 255, 32.44016 + 248, 248, 215, 202, 114, 149, 162, 160, 160, 171, 163, 156, 162, 153, 142, 152, 32.44017 + 142, 143, 142, 139, 135, 135, 138, 142, 141, 146, 148, 146, 142, 141, 142, 142, 32.44018 + 141, 134, 130, 132, 132, 130, 131, 133, 128, 130, 132, 133, 133, 133, 135, 137, 32.44019 + 136, 136, 135, 135, 132, 129, 130, 133, 125, 127, 129, 129, 129, 131, 137, 142, 32.44020 + 149, 140, 138, 145, 147, 140, 137, 138, 129, 123, 118, 110, 116, 205, 234, 234, 32.44021 + 247, 249, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 32.44022 + 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 251, 251, 254, 255, 32.44023 + 255, 255, 255, 255, 251, 248, 227, 195, 104, 140, 161, 159, 160, 166, 163, 159, 32.44024 + 159, 152, 146, 149, 140, 141, 140, 137, 134, 134, 137, 140, 134, 137, 139, 140, 32.44025 + 140, 143, 146, 147, 142, 138, 136, 136, 133, 129, 128, 132, 130, 131, 133, 134, 32.44026 + 133, 134, 135, 137, 133, 133, 132, 132, 131, 129, 128, 129, 124, 126, 128, 128, 32.44027 + 129, 132, 137, 142, 143, 138, 137, 142, 144, 142, 140, 140, 130, 130, 115, 118, 32.44028 + 115, 217, 234, 238, 249, 250, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.44029 + 255, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 32.44030 + 251, 251, 254, 254, 255, 255, 255, 255, 253, 241, 246, 200, 93, 137, 152, 152, 32.44031 + 157, 155, 161, 162, 154, 150, 149, 143, 137, 137, 136, 134, 131, 131, 133, 135, 32.44032 + 141, 139, 137, 137, 139, 139, 139, 139, 138, 138, 139, 140, 135, 129, 129, 134, 32.44033 + 131, 133, 135, 135, 134, 133, 135, 137, 129, 129, 129, 129, 130, 129, 127, 124, 32.44034 + 123, 125, 127, 128, 129, 133, 137, 141, 139, 141, 140, 139, 140, 142, 140, 136, 32.44035 + 129, 134, 111, 123, 121, 230, 236, 241, 250, 253, 255, 255, 255, 255, 255, 255, 32.44036 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 254, 254, 254, 254, 254, 254, 32.44037 + 254, 254, 254, 252, 249, 250, 252, 254, 255, 255, 255, 255, 250, 238, 246, 221, 32.44038 + 84, 142, 141, 144, 154, 148, 160, 165, 150, 149, 153, 141, 136, 135, 134, 132, 32.44039 + 131, 131, 131, 132, 142, 137, 135, 138, 140, 138, 134, 132, 129, 132, 138, 141, 32.44040 + 136, 131, 132, 139, 133, 135, 136, 135, 134, 133, 134, 135, 125, 127, 127, 127, 32.44041 + 129, 130, 127, 121, 124, 125, 126, 128, 130, 134, 137, 139, 141, 147, 146, 138, 32.44042 + 136, 140, 138, 129, 126, 131, 116, 124, 143, 236, 242, 248, 255, 255, 255, 255, 32.44043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44044 + 255, 255, 254, 254, 254, 254, 254, 252, 249, 250, 252, 254, 255, 255, 255, 255, 32.44045 + 250, 241, 246, 233, 78, 147, 131, 139, 149, 143, 156, 162, 148, 148, 152, 140, 32.44046 + 136, 135, 133, 132, 132, 132, 131, 131, 128, 125, 127, 136, 141, 138, 134, 133, 32.44047 + 126, 129, 136, 139, 136, 130, 132, 138, 135, 136, 136, 135, 133, 131, 132, 133, 32.44048 + 123, 127, 129, 127, 128, 131, 128, 122, 126, 126, 127, 129, 132, 135, 137, 138, 32.44049 + 140, 147, 146, 138, 135, 139, 137, 130, 125, 123, 126, 126, 200, 255, 255, 255, 32.44050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 249, 249, 250, 254, 32.44052 + 255, 255, 255, 254, 255, 246, 234, 230, 90, 144, 127, 138, 143, 143, 150, 154, 32.44053 + 148, 147, 148, 143, 137, 136, 134, 134, 134, 134, 133, 131, 126, 122, 125, 134, 32.44054 + 136, 129, 125, 128, 129, 130, 134, 138, 135, 130, 130, 135, 135, 136, 136, 134, 32.44055 + 131, 129, 130, 131, 120, 128, 131, 126, 125, 130, 172, 255, 255, 255, 255, 255, 32.44056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44059 + 255, 255, 255, 255, 255, 255, 255, 254, 255, 246, 232, 229, 129, 141, 133, 131, 32.44060 + 137, 145, 145, 145, 149, 145, 142, 146, 139, 137, 135, 136, 137, 137, 134, 132, 32.44061 + 133, 127, 128, 133, 131, 122, 121, 128, 132, 130, 132, 137, 137, 174, 255, 255, 32.44062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44065 + 255, 255, 255, 255 }; 32.44066 +/* Define image 'enemy3' of size 104x134x1x3 and type 'const unsigned char' */ 32.44067 +const unsigned char data_enemy3[] = { 32.44068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44071 + 255, 255, 255, 255, 170, 168, 179, 181, 170, 185, 181, 197, 211, 184, 186, 216, 32.44072 + 197, 199, 216, 221, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 152, 156, 178, 164, 171, 178, 32.44078 + 183, 195, 191, 188, 192, 175, 176, 202, 192, 204, 218, 221, 209, 241, 237, 233, 32.44079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 181, 127, 143, 32.44084 + 112, 117, 136, 131, 165, 161, 169, 166, 162, 138, 137, 127, 128, 118, 115, 137, 32.44085 + 131, 136, 151, 163, 166, 220, 230, 229, 223, 238, 255, 255, 255, 255, 255, 255, 32.44086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44090 + 255, 255, 219, 133, 123, 100, 87, 89, 93, 91, 106, 110, 125, 119, 145, 124, 32.44091 + 95, 78, 72, 80, 88, 83, 80, 89, 91, 102, 88, 123, 127, 152, 199, 194, 32.44092 + 207, 211, 232, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44096 + 255, 255, 255, 255, 255, 255, 255, 255, 211, 94, 82, 78, 78, 69, 69, 76, 32.44097 + 77, 74, 80, 85, 95, 95, 110, 97, 68, 72, 66, 76, 84, 77, 72, 75, 32.44098 + 74, 77, 65, 87, 85, 105, 143, 145, 174, 212, 240, 230, 246, 255, 255, 255, 32.44099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 117, 32.44103 + 114, 77, 73, 77, 77, 71, 81, 89, 84, 82, 76, 86, 87, 92, 90, 88, 32.44104 + 66, 77, 74, 87, 95, 90, 86, 87, 83, 90, 86, 97, 89, 108, 130, 137, 32.44105 + 188, 200, 235, 230, 243, 230, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44109 + 255, 255, 243, 209, 188, 139, 96, 75, 72, 78, 83, 89, 82, 71, 77, 84, 32.44110 + 77, 80, 69, 84, 78, 85, 69, 78, 67, 77, 73, 81, 84, 77, 77, 77, 32.44111 + 72, 66, 73, 76, 67, 81, 83, 85, 142, 178, 218, 219, 237, 230, 237, 241, 32.44112 + 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44115 + 255, 255, 255, 255, 255, 255, 255, 255, 242, 196, 180, 174, 145, 99, 68, 74, 32.44116 + 79, 72, 80, 90, 77, 59, 60, 71, 67, 75, 67, 86, 79, 81, 62, 77, 32.44117 + 75, 87, 78, 75, 70, 60, 62, 64, 56, 67, 79, 79, 71, 74, 56, 49, 32.44118 + 93, 112, 160, 169, 198, 202, 216, 219, 219, 226, 255, 255, 255, 255, 255, 255, 32.44119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 207, 32.44122 + 217, 208, 175, 164, 129, 84, 56, 73, 72, 79, 83, 91, 80, 59, 56, 67, 32.44123 + 70, 70, 69, 84, 86, 83, 75, 85, 84, 89, 80, 78, 70, 63, 66, 71, 32.44124 + 62, 60, 72, 74, 73, 74, 58, 49, 72, 110, 157, 167, 200, 212, 227, 220, 32.44125 + 212, 206, 225, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44128 + 255, 255, 255, 255, 239, 223, 208, 207, 205, 152, 113, 113, 96, 81, 71, 97, 32.44129 + 87, 72, 66, 70, 68, 55, 53, 64, 72, 69, 71, 78, 91, 88, 99, 98, 32.44130 + 89, 90, 85, 86, 81, 76, 79, 78, 65, 67, 72, 72, 78, 83, 83, 86, 32.44131 + 89, 104, 141, 140, 171, 191, 218, 215, 205, 210, 228, 219, 237, 255, 255, 255, 32.44132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 225, 245, 222, 199, 32.44135 + 176, 121, 76, 79, 72, 73, 69, 90, 70, 59, 46, 49, 60, 60, 65, 80, 32.44136 + 89, 92, 96, 93, 116, 115, 142, 130, 115, 124, 121, 122, 118, 107, 105, 95, 32.44137 + 73, 66, 62, 55, 62, 69, 79, 91, 82, 91, 119, 106, 137, 170, 214, 227, 32.44138 + 223, 203, 218, 203, 205, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44141 + 255, 255, 204, 196, 206, 190, 176, 169, 133, 87, 77, 70, 68, 70, 72, 66, 32.44142 + 58, 47, 57, 71, 79, 86, 98, 111, 123, 127, 151, 161, 178, 183, 177, 179, 32.44143 + 165, 180, 164, 173, 149, 162, 152, 138, 122, 116, 92, 92, 81, 79, 90, 83, 32.44144 + 106, 109, 114, 113, 115, 134, 160, 178, 183, 213, 226, 219, 212, 224, 220, 224, 32.44145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44147 + 255, 255, 255, 255, 255, 255, 255, 255, 234, 201, 204, 206, 213, 196, 175, 163, 32.44148 + 124, 81, 79, 74, 72, 73, 68, 60, 53, 48, 58, 71, 79, 88, 102, 118, 32.44149 + 126, 137, 158, 168, 185, 189, 182, 185, 172, 177, 172, 174, 163, 156, 156, 132, 32.44150 + 125, 112, 102, 106, 87, 84, 99, 91, 99, 116, 114, 106, 104, 122, 155, 185, 32.44151 + 200, 206, 225, 218, 211, 222, 224, 213, 229, 255, 255, 255, 255, 255, 255, 255, 32.44152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 32.44154 + 218, 222, 225, 208, 184, 149, 124, 114, 80, 67, 70, 76, 79, 80, 76, 72, 32.44155 + 67, 87, 96, 108, 115, 126, 144, 159, 167, 169, 189, 197, 211, 215, 209, 212, 32.44156 + 200, 199, 204, 201, 203, 183, 194, 166, 169, 140, 141, 137, 109, 98, 110, 103, 32.44157 + 100, 119, 119, 112, 104, 105, 112, 122, 125, 168, 199, 202, 200, 223, 239, 236, 32.44158 + 235, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44160 + 255, 255, 255, 255, 255, 255, 242, 239, 226, 222, 224, 191, 147, 105, 87, 86, 32.44161 + 64, 61, 68, 78, 85, 87, 87, 88, 89, 109, 120, 129, 135, 151, 171, 185, 32.44162 + 191, 189, 209, 212, 224, 226, 220, 226, 213, 217, 216, 217, 212, 198, 207, 187, 32.44163 + 187, 178, 175, 161, 129, 112, 115, 116, 114, 94, 99, 101, 100, 93, 88, 82, 32.44164 + 80, 111, 150, 165, 167, 198, 221, 218, 213, 219, 210, 255, 255, 255, 255, 255, 32.44165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 219, 235, 32.44167 + 214, 216, 225, 187, 140, 102, 81, 78, 62, 71, 78, 85, 88, 90, 91, 98, 32.44168 + 102, 118, 129, 138, 145, 163, 185, 199, 200, 207, 224, 225, 233, 233, 228, 235, 32.44169 + 223, 234, 220, 226, 204, 208, 205, 196, 190, 190, 183, 164, 148, 130, 115, 117, 32.44170 + 119, 105, 100, 98, 94, 88, 87, 91, 96, 111, 152, 170, 176, 206, 229, 224, 32.44171 + 218, 219, 198, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44173 + 255, 255, 255, 255, 255, 202, 207, 226, 205, 202, 205, 159, 115, 89, 73, 75, 32.44174 + 71, 73, 77, 82, 87, 93, 103, 114, 125, 134, 148, 158, 165, 185, 210, 222, 32.44175 + 219, 223, 238, 236, 243, 242, 235, 243, 233, 243, 227, 239, 212, 228, 224, 226, 32.44176 + 219, 202, 197, 180, 175, 155, 126, 120, 110, 121, 109, 104, 99, 91, 86, 87, 32.44177 + 92, 81, 118, 135, 148, 187, 217, 225, 227, 215, 201, 199, 255, 255, 255, 255, 32.44178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 183, 185, 200, 32.44180 + 173, 138, 141, 100, 76, 75, 71, 81, 90, 73, 75, 82, 90, 102, 117, 133, 32.44181 + 146, 145, 160, 171, 180, 201, 227, 236, 229, 230, 243, 240, 243, 242, 235, 243, 32.44182 + 234, 237, 231, 241, 227, 232, 241, 239, 241, 220, 225, 208, 202, 187, 159, 152, 32.44183 + 126, 98, 90, 93, 102, 101, 93, 84, 83, 79, 103, 110, 123, 168, 204, 226, 32.44184 + 244, 237, 233, 247, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44186 + 255, 255, 255, 232, 232, 207, 193, 186, 142, 100, 108, 81, 74, 81, 66, 60, 32.44187 + 63, 84, 87, 90, 97, 111, 126, 140, 151, 163, 181, 192, 198, 222, 247, 253, 32.44188 + 245, 249, 255, 255, 255, 255, 251, 255, 251, 248, 252, 251, 250, 231, 250, 235, 32.44189 + 247, 223, 239, 222, 216, 209, 200, 202, 167, 113, 100, 99, 105, 103, 90, 79, 32.44190 + 73, 96, 105, 93, 93, 128, 158, 184, 209, 205, 208, 246, 212, 255, 255, 255, 32.44191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 235, 222, 195, 202, 197, 32.44193 + 132, 106, 104, 86, 72, 85, 65, 80, 55, 72, 88, 93, 101, 121, 136, 146, 32.44194 + 162, 170, 186, 209, 212, 223, 244, 246, 253, 251, 250, 250, 249, 249, 248, 249, 32.44195 + 249, 251, 249, 249, 247, 249, 250, 251, 251, 237, 234, 229, 227, 226, 218, 199, 32.44196 + 173, 121, 109, 110, 105, 95, 98, 97, 82, 98, 101, 92, 96, 124, 143, 170, 32.44197 + 212, 206, 207, 242, 201, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44199 + 255, 255, 217, 221, 204, 170, 169, 165, 123, 71, 75, 68, 75, 81, 60, 73, 32.44200 + 67, 77, 95, 105, 115, 134, 149, 157, 172, 184, 197, 219, 219, 228, 248, 247, 32.44201 + 249, 251, 251, 250, 250, 250, 250, 249, 250, 250, 249, 248, 247, 248, 250, 252, 32.44202 + 252, 253, 248, 241, 235, 237, 237, 233, 217, 168, 153, 142, 125, 106, 107, 110, 32.44203 + 101, 92, 96, 87, 85, 95, 100, 118, 155, 149, 174, 225, 196, 205, 255, 255, 32.44204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 195, 199, 162, 109, 91, 76, 32.44206 + 54, 56, 63, 61, 83, 73, 52, 56, 66, 78, 98, 109, 120, 141, 154, 159, 32.44207 + 172, 189, 199, 219, 218, 229, 250, 247, 247, 251, 251, 252, 252, 252, 252, 251, 32.44208 + 250, 250, 249, 249, 249, 249, 249, 252, 252, 255, 253, 248, 241, 243, 247, 250, 32.44209 + 242, 205, 187, 168, 140, 110, 107, 115, 114, 100, 102, 97, 91, 87, 81, 92, 32.44210 + 119, 119, 160, 221, 210, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44212 + 255, 217, 214, 214, 160, 103, 90, 76, 66, 62, 71, 65, 86, 63, 57, 49, 32.44213 + 65, 82, 101, 113, 124, 143, 157, 163, 176, 191, 199, 216, 216, 229, 252, 248, 32.44214 + 248, 249, 250, 252, 253, 253, 252, 250, 248, 249, 248, 250, 250, 250, 251, 251, 32.44215 + 251, 245, 249, 250, 245, 245, 245, 245, 238, 215, 200, 185, 155, 119, 106, 112, 32.44216 + 109, 105, 101, 97, 96, 93, 87, 95, 113, 119, 156, 213, 225, 223, 233, 255, 32.44217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44218 + 255, 255, 255, 255, 255, 255, 255, 255, 253, 217, 219, 193, 119, 66, 66, 68, 32.44219 + 58, 67, 76, 69, 74, 58, 73, 65, 74, 94, 111, 122, 130, 150, 164, 172, 32.44220 + 186, 197, 203, 219, 217, 230, 252, 247, 247, 247, 249, 250, 252, 252, 251, 250, 32.44221 + 248, 249, 249, 249, 251, 251, 251, 251, 250, 239, 245, 248, 246, 244, 243, 242, 32.44222 + 238, 223, 213, 208, 187, 151, 127, 117, 106, 100, 83, 78, 81, 80, 80, 90, 32.44223 + 99, 106, 127, 169, 210, 215, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44225 + 228, 226, 231, 165, 85, 39, 44, 68, 54, 73, 75, 73, 63, 57, 77, 70, 32.44226 + 77, 103, 119, 129, 137, 155, 168, 176, 191, 207, 215, 228, 224, 233, 250, 245, 32.44227 + 247, 248, 249, 250, 250, 250, 250, 250, 248, 250, 250, 251, 251, 250, 252, 251, 32.44228 + 250, 247, 249, 249, 246, 244, 249, 251, 250, 239, 233, 234, 224, 193, 162, 139, 32.44229 + 118, 106, 79, 70, 72, 67, 70, 79, 84, 89, 97, 117, 169, 176, 214, 255, 32.44230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44231 + 255, 255, 255, 255, 255, 255, 255, 188, 209, 196, 201, 116, 59, 36, 36, 79, 32.44232 + 63, 74, 65, 77, 62, 66, 68, 64, 78, 104, 122, 133, 141, 158, 169, 175, 32.44233 + 186, 210, 218, 233, 226, 232, 248, 245, 248, 250, 250, 249, 250, 250, 251, 252, 32.44234 + 251, 250, 250, 251, 251, 251, 251, 249, 248, 250, 251, 250, 247, 247, 252, 255, 32.44235 + 255, 250, 242, 243, 242, 220, 192, 165, 139, 122, 91, 80, 77, 65, 66, 78, 32.44236 + 80, 86, 99, 99, 138, 136, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 185, 32.44238 + 205, 198, 202, 105, 70, 53, 31, 74, 51, 66, 48, 75, 67, 76, 64, 65, 32.44239 + 88, 105, 126, 139, 147, 165, 173, 177, 185, 206, 216, 232, 227, 230, 246, 246, 32.44240 + 251, 252, 252, 250, 250, 250, 250, 252, 252, 250, 248, 251, 250, 252, 248, 249, 32.44241 + 245, 247, 247, 249, 246, 248, 250, 247, 245, 248, 236, 237, 241, 229, 208, 182, 32.44242 + 155, 127, 97, 88, 84, 64, 63, 77, 80, 89, 111, 103, 126, 117, 197, 255, 32.44243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44244 + 255, 255, 255, 255, 255, 255, 227, 202, 215, 157, 173, 63, 70, 64, 63, 58, 32.44245 + 67, 69, 60, 87, 75, 81, 64, 70, 87, 122, 139, 157, 169, 176, 179, 180, 32.44246 + 183, 211, 214, 219, 227, 228, 229, 242, 255, 250, 250, 250, 251, 252, 252, 254, 32.44247 + 254, 245, 248, 253, 252, 251, 248, 249, 250, 244, 248, 250, 245, 242, 244, 247, 32.44248 + 250, 255, 255, 255, 246, 232, 219, 206, 196, 165, 127, 116, 103, 74, 58, 67, 32.44249 + 72, 79, 105, 106, 110, 112, 176, 243, 255, 255, 255, 255, 255, 255, 255, 255, 32.44250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 196, 32.44251 + 200, 150, 151, 60, 54, 59, 64, 61, 74, 90, 68, 80, 69, 84, 77, 77, 32.44252 + 89, 121, 140, 159, 171, 181, 192, 197, 199, 211, 216, 225, 233, 236, 237, 242, 32.44253 + 250, 247, 247, 247, 247, 247, 248, 250, 249, 249, 249, 248, 246, 245, 246, 252, 32.44254 + 255, 248, 253, 252, 247, 244, 245, 246, 248, 255, 255, 255, 252, 243, 234, 226, 32.44255 + 218, 191, 158, 140, 122, 84, 63, 69, 75, 72, 98, 98, 97, 103, 169, 205, 32.44256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44257 + 255, 255, 255, 255, 255, 243, 225, 204, 196, 136, 124, 73, 50, 65, 67, 57, 32.44258 + 72, 87, 69, 80, 70, 81, 78, 78, 89, 122, 143, 161, 168, 177, 194, 202, 32.44259 + 202, 215, 216, 222, 229, 234, 238, 243, 248, 249, 250, 249, 250, 250, 251, 253, 32.44260 + 252, 252, 250, 248, 246, 245, 245, 249, 253, 248, 253, 253, 248, 246, 248, 250, 32.44261 + 250, 255, 255, 254, 249, 241, 233, 226, 219, 206, 178, 155, 136, 93, 70, 67, 32.44262 + 73, 73, 93, 95, 91, 97, 153, 176, 255, 255, 255, 255, 255, 255, 255, 255, 32.44263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 197, 171, 32.44264 + 147, 95, 85, 82, 51, 74, 70, 54, 69, 65, 68, 93, 84, 76, 72, 78, 32.44265 + 104, 136, 157, 170, 168, 175, 192, 200, 197, 216, 213, 212, 216, 226, 235, 244, 32.44266 + 250, 251, 251, 251, 250, 252, 253, 252, 253, 251, 251, 253, 251, 250, 247, 245, 32.44267 + 243, 244, 248, 250, 246, 248, 252, 255, 254, 255, 255, 253, 248, 241, 234, 231, 32.44268 + 225, 214, 193, 167, 153, 115, 94, 76, 78, 82, 89, 97, 98, 98, 131, 158, 32.44269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44270 + 255, 255, 255, 255, 255, 206, 199, 152, 112, 55, 51, 80, 50, 72, 67, 57, 32.44271 + 77, 60, 71, 96, 91, 77, 82, 94, 127, 156, 173, 180, 177, 180, 193, 199, 32.44272 + 197, 209, 211, 212, 215, 226, 236, 245, 248, 248, 248, 248, 247, 248, 249, 249, 32.44273 + 249, 250, 250, 250, 251, 251, 248, 246, 244, 241, 245, 246, 245, 248, 252, 255, 32.44274 + 253, 250, 250, 252, 250, 249, 248, 248, 245, 229, 215, 185, 182, 151, 133, 96, 32.44275 + 90, 86, 80, 97, 108, 105, 111, 144, 199, 255, 255, 255, 255, 255, 255, 255, 32.44276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 218, 197, 128, 32.44277 + 85, 57, 53, 78, 52, 63, 59, 60, 80, 70, 71, 76, 79, 77, 104, 113, 32.44278 + 141, 162, 173, 179, 181, 184, 192, 199, 203, 202, 212, 223, 230, 239, 245, 247, 32.44279 + 245, 250, 250, 249, 249, 249, 251, 251, 251, 253, 248, 244, 244, 246, 249, 253, 32.44280 + 255, 244, 245, 246, 244, 246, 250, 252, 247, 244, 245, 246, 247, 245, 243, 242, 32.44281 + 242, 233, 228, 191, 195, 167, 152, 101, 89, 82, 69, 92, 105, 107, 100, 136, 32.44282 + 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44283 + 255, 255, 255, 255, 220, 228, 199, 124, 94, 69, 64, 72, 55, 57, 55, 61, 32.44284 + 73, 76, 71, 67, 76, 81, 120, 126, 151, 162, 166, 175, 185, 189, 192, 200, 32.44285 + 212, 204, 221, 236, 242, 247, 251, 250, 246, 253, 253, 252, 251, 252, 254, 254, 32.44286 + 254, 255, 250, 245, 245, 247, 250, 253, 252, 244, 245, 245, 244, 247, 251, 253, 32.44287 + 247, 243, 242, 244, 244, 242, 238, 236, 233, 231, 232, 193, 199, 169, 156, 98, 32.44288 + 87, 79, 70, 94, 97, 106, 100, 133, 150, 196, 255, 255, 255, 255, 255, 255, 32.44289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 195, 197, 161, 89, 32.44290 + 73, 54, 53, 52, 52, 54, 56, 64, 68, 77, 80, 81, 94, 95, 136, 139, 32.44291 + 164, 167, 168, 178, 192, 196, 195, 204, 220, 214, 232, 243, 245, 246, 250, 251, 32.44292 + 250, 249, 247, 246, 247, 249, 249, 250, 251, 255, 255, 252, 253, 251, 249, 242, 32.44293 + 238, 240, 241, 240, 242, 248, 255, 255, 250, 244, 246, 252, 255, 255, 254, 252, 32.44294 + 251, 235, 242, 204, 210, 178, 167, 109, 104, 86, 79, 100, 93, 103, 104, 132, 32.44295 + 130, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44296 + 255, 255, 255, 172, 171, 178, 123, 59, 52, 52, 50, 49, 50, 55, 61, 66, 32.44297 + 71, 81, 70, 71, 94, 120, 136, 151, 164, 168, 173, 176, 180, 192, 203, 207, 32.44298 + 209, 233, 238, 246, 252, 252, 247, 248, 254, 251, 247, 247, 251, 250, 246, 248, 32.44299 + 255, 255, 254, 253, 250, 247, 244, 243, 241, 239, 238, 242, 249, 251, 247, 247, 32.44300 + 247, 247, 247, 250, 251, 252, 254, 255, 255, 242, 250, 215, 229, 197, 180, 114, 32.44301 + 106, 100, 93, 91, 115, 103, 116, 108, 105, 154, 180, 255, 255, 255, 255, 255, 32.44302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 168, 176, 117, 70, 32.44303 + 60, 55, 52, 51, 51, 54, 59, 65, 73, 78, 72, 75, 98, 123, 137, 148, 32.44304 + 160, 165, 172, 178, 181, 190, 200, 205, 210, 225, 238, 248, 251, 247, 245, 247, 32.44305 + 250, 252, 248, 246, 248, 248, 245, 248, 255, 251, 251, 249, 247, 244, 242, 240, 32.44306 + 238, 242, 241, 242, 249, 251, 248, 247, 250, 248, 249, 250, 250, 249, 249, 252, 32.44307 + 254, 243, 239, 218, 210, 198, 163, 115, 99, 95, 91, 92, 113, 100, 112, 106, 32.44308 + 104, 154, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44309 + 255, 255, 243, 171, 171, 173, 106, 75, 60, 58, 56, 55, 53, 55, 59, 64, 32.44310 + 72, 76, 76, 83, 107, 132, 147, 157, 166, 174, 183, 191, 193, 194, 201, 205, 32.44311 + 210, 219, 238, 248, 246, 243, 246, 246, 244, 251, 248, 247, 247, 248, 248, 253, 32.44312 + 255, 250, 250, 248, 245, 243, 243, 244, 243, 250, 248, 250, 252, 252, 249, 249, 32.44313 + 250, 239, 241, 244, 243, 240, 239, 244, 247, 252, 239, 238, 210, 219, 163, 131, 32.44314 + 98, 84, 87, 93, 108, 95, 107, 109, 108, 148, 144, 191, 255, 255, 255, 255, 32.44315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 166, 165, 162, 92, 77, 32.44316 + 60, 56, 56, 59, 59, 60, 61, 64, 71, 85, 89, 98, 119, 139, 150, 157, 32.44317 + 164, 173, 185, 195, 194, 194, 197, 204, 209, 214, 233, 239, 236, 239, 247, 245, 32.44318 + 235, 245, 246, 249, 249, 250, 252, 255, 255, 254, 252, 250, 249, 250, 249, 251, 32.44319 + 251, 253, 253, 254, 254, 254, 249, 246, 243, 247, 250, 254, 250, 247, 247, 253, 32.44320 + 255, 233, 220, 228, 204, 213, 158, 125, 84, 82, 86, 97, 100, 91, 104, 116, 32.44321 + 116, 137, 134, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44322 + 255, 255, 209, 150, 148, 147, 84, 78, 67, 50, 55, 62, 64, 64, 63, 64, 32.44323 + 70, 93, 100, 108, 120, 133, 139, 142, 146, 160, 174, 184, 184, 185, 191, 199, 32.44324 + 207, 210, 221, 225, 225, 235, 248, 246, 233, 243, 248, 252, 253, 254, 254, 255, 32.44325 + 254, 255, 253, 252, 254, 254, 255, 255, 255, 249, 252, 255, 255, 253, 248, 241, 32.44326 + 235, 222, 223, 226, 223, 220, 218, 221, 224, 217, 205, 204, 198, 190, 161, 125, 32.44327 + 85, 84, 89, 101, 93, 87, 99, 122, 122, 133, 129, 121, 255, 255, 255, 255, 32.44328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 205, 151, 136, 132, 80, 72, 32.44329 + 71, 49, 54, 63, 66, 65, 63, 63, 69, 86, 95, 105, 117, 128, 137, 143, 32.44330 + 147, 171, 182, 187, 184, 182, 185, 192, 197, 207, 210, 212, 215, 227, 242, 243, 32.44331 + 235, 243, 251, 254, 255, 255, 255, 255, 255, 252, 251, 252, 253, 253, 255, 254, 32.44332 + 254, 252, 255, 255, 252, 246, 240, 232, 222, 216, 216, 217, 218, 216, 215, 215, 32.44333 + 215, 213, 202, 188, 194, 174, 170, 136, 103, 85, 91, 105, 85, 84, 98, 125, 32.44334 + 122, 136, 133, 116, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44335 + 255, 184, 207, 159, 126, 116, 74, 60, 72, 53, 57, 64, 64, 61, 59, 62, 32.44336 + 70, 76, 88, 101, 113, 126, 141, 152, 159, 174, 180, 181, 175, 170, 175, 180, 32.44337 + 181, 190, 188, 188, 190, 196, 203, 212, 216, 219, 228, 234, 234, 239, 249, 255, 32.44338 + 254, 246, 246, 248, 251, 252, 252, 250, 249, 254, 253, 245, 230, 215, 206, 195, 32.44339 + 181, 163, 163, 169, 175, 181, 182, 181, 178, 188, 175, 167, 175, 156, 156, 128, 32.44340 + 90, 81, 88, 104, 79, 83, 94, 122, 113, 137, 138, 116, 134, 255, 255, 255, 32.44341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 195, 154, 111, 101, 70, 53, 32.44342 + 75, 58, 61, 64, 61, 57, 56, 60, 68, 78, 89, 100, 109, 118, 131, 143, 32.44343 + 149, 145, 151, 152, 148, 149, 157, 165, 166, 165, 160, 161, 159, 155, 155, 167, 32.44344 + 182, 182, 191, 197, 199, 211, 226, 239, 242, 242, 243, 248, 250, 251, 249, 246, 32.44345 + 243, 246, 240, 223, 196, 175, 160, 147, 131, 113, 114, 123, 136, 149, 154, 155, 32.44346 + 150, 167, 155, 161, 168, 158, 150, 123, 75, 76, 84, 103, 77, 83, 93, 118, 32.44347 + 104, 132, 139, 115, 130, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44348 + 228, 174, 194, 162, 106, 100, 58, 65, 70, 61, 62, 64, 58, 53, 54, 63, 32.44349 + 74, 85, 92, 108, 94, 127, 127, 130, 149, 137, 146, 156, 135, 140, 165, 148, 32.44350 + 155, 154, 156, 148, 154, 155, 155, 151, 166, 195, 176, 183, 202, 201, 216, 237, 32.44351 + 241, 245, 240, 244, 255, 239, 246, 230, 250, 230, 240, 212, 176, 162, 155, 145, 32.44352 + 121, 114, 99, 122, 121, 140, 155, 129, 148, 144, 163, 144, 150, 160, 142, 120, 32.44353 + 78, 72, 83, 106, 83, 82, 86, 115, 111, 131, 131, 130, 121, 154, 255, 255, 32.44354 + 255, 255, 255, 255, 255, 255, 255, 255, 153, 149, 167, 133, 86, 89, 59, 70, 32.44355 + 79, 60, 60, 59, 56, 54, 55, 58, 64, 81, 84, 103, 106, 127, 125, 116, 32.44356 + 123, 143, 142, 129, 137, 162, 186, 209, 218, 219, 229, 199, 170, 119, 128, 138, 32.44357 + 171, 155, 155, 173, 177, 182, 191, 205, 190, 214, 203, 220, 208, 236, 233, 217, 32.44358 + 199, 219, 189, 184, 187, 176, 189, 203, 172, 134, 102, 106, 129, 153, 151, 132, 32.44359 + 149, 144, 160, 156, 143, 127, 120, 123, 107, 81, 82, 93, 84, 81, 87, 109, 32.44360 + 114, 141, 138, 133, 117, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 32.44361 + 163, 160, 169, 125, 81, 86, 62, 70, 78, 58, 56, 56, 55, 55, 54, 54, 32.44362 + 54, 72, 72, 98, 117, 106, 106, 100, 116, 137, 161, 163, 192, 191, 150, 145, 32.44363 + 118, 107, 124, 97, 101, 71, 133, 139, 150, 157, 168, 184, 151, 160, 170, 189, 32.44364 + 163, 178, 166, 187, 177, 195, 186, 189, 197, 178, 199, 226, 230, 216, 205, 179, 32.44365 + 142, 97, 99, 116, 166, 188, 170, 166, 166, 144, 132, 148, 159, 169, 173, 130, 32.44366 + 75, 95, 78, 73, 86, 79, 88, 102, 118, 144, 141, 141, 123, 130, 168, 255, 32.44367 + 255, 255, 255, 255, 255, 255, 255, 211, 187, 184, 186, 131, 92, 92, 70, 67, 32.44368 + 73, 53, 55, 58, 57, 55, 52, 52, 55, 70, 72, 101, 117, 76, 80, 95, 32.44369 + 135, 172, 169, 152, 121, 89, 54, 80, 82, 179, 230, 220, 216, 132, 195, 191, 32.44370 + 188, 177, 196, 206, 138, 143, 142, 160, 124, 96, 98, 113, 130, 92, 92, 121, 32.44371 + 203, 212, 206, 117, 57, 144, 226, 223, 232, 153, 187, 190, 210, 202, 191, 231, 32.44372 + 230, 210, 123, 89, 85, 129, 190, 162, 103, 105, 75, 58, 88, 82, 92, 98, 32.44373 + 119, 135, 137, 146, 138, 143, 127, 255, 255, 255, 255, 255, 255, 255, 255, 202, 32.44374 + 186, 183, 182, 123, 95, 97, 80, 69, 74, 50, 57, 63, 59, 52, 48, 55, 32.44375 + 62, 83, 78, 99, 108, 63, 70, 91, 134, 172, 158, 166, 108, 79, 72, 90, 32.44376 + 96, 173, 233, 226, 221, 119, 198, 196, 173, 154, 188, 206, 143, 151, 143, 151, 32.44377 + 118, 88, 99, 118, 130, 86, 88, 120, 202, 190, 184, 100, 43, 147, 234, 214, 32.44378 + 217, 168, 205, 207, 227, 199, 176, 229, 229, 183, 121, 111, 104, 125, 169, 146, 32.44379 + 102, 103, 69, 52, 88, 86, 95, 98, 119, 130, 132, 144, 141, 151, 133, 255, 32.44380 + 255, 255, 255, 255, 255, 255, 232, 192, 181, 174, 173, 112, 94, 95, 83, 69, 32.44381 + 75, 56, 62, 66, 58, 47, 45, 57, 70, 88, 74, 79, 80, 62, 67, 71, 32.44382 + 95, 126, 92, 110, 50, 45, 62, 83, 80, 212, 255, 251, 249, 153, 233, 210, 32.44383 + 147, 174, 197, 194, 131, 120, 97, 94, 83, 98, 109, 133, 104, 103, 93, 92, 32.44384 + 88, 95, 87, 95, 95, 157, 231, 235, 246, 167, 171, 187, 240, 215, 163, 188, 32.44385 + 189, 149, 128, 118, 97, 85, 106, 110, 96, 89, 64, 58, 85, 92, 98, 103, 32.44386 + 113, 132, 131, 137, 131, 145, 133, 255, 255, 255, 255, 255, 255, 255, 190, 191, 32.44387 + 179, 170, 168, 104, 91, 89, 81, 64, 73, 68, 68, 64, 52, 43, 44, 58, 32.44388 + 70, 80, 65, 63, 49, 58, 57, 52, 64, 66, 39, 63, 39, 53, 59, 95, 32.44389 + 81, 186, 248, 255, 255, 142, 199, 182, 112, 109, 124, 117, 87, 83, 73, 84, 32.44390 + 112, 179, 192, 207, 168, 174, 160, 122, 72, 71, 38, 47, 61, 135, 224, 230, 32.44391 + 235, 189, 156, 155, 196, 161, 107, 123, 130, 98, 101, 84, 68, 59, 61, 69, 32.44392 + 58, 69, 57, 68, 80, 94, 99, 109, 104, 127, 130, 135, 123, 138, 131, 188, 32.44393 + 255, 255, 255, 255, 255, 235, 189, 181, 168, 161, 159, 93, 84, 80, 78, 62, 32.44394 + 74, 78, 71, 60, 46, 39, 43, 55, 66, 69, 63, 65, 34, 55, 49, 49, 32.44395 + 65, 68, 46, 54, 48, 52, 33, 100, 87, 201, 241, 255, 247, 149, 212, 187, 32.44396 + 95, 103, 115, 109, 102, 90, 71, 69, 109, 178, 198, 200, 193, 164, 164, 112, 32.44397 + 86, 59, 76, 73, 49, 134, 222, 216, 249, 177, 156, 172, 198, 158, 113, 119, 32.44398 + 115, 77, 99, 76, 70, 72, 66, 76, 64, 55, 54, 76, 78, 96, 98, 111, 32.44399 + 96, 116, 125, 137, 123, 139, 132, 152, 255, 255, 255, 255, 255, 201, 225, 188, 32.44400 + 186, 190, 166, 103, 74, 85, 65, 44, 70, 71, 63, 54, 50, 52, 51, 46, 32.44401 + 40, 40, 30, 35, 56, 73, 75, 73, 73, 84, 75, 77, 51, 44, 37, 55, 32.44402 + 51, 152, 205, 211, 212, 109, 129, 85, 49, 43, 32, 50, 68, 78, 73, 81, 32.44403 + 135, 209, 226, 208, 214, 213, 211, 137, 77, 59, 72, 54, 79, 73, 126, 134, 32.44404 + 153, 150, 107, 94, 90, 60, 52, 68, 69, 53, 52, 66, 67, 50, 50, 54, 32.44405 + 43, 69, 64, 75, 89, 86, 87, 98, 103, 115, 113, 119, 144, 120, 130, 149, 32.44406 + 255, 255, 255, 255, 255, 203, 228, 194, 186, 174, 150, 95, 60, 65, 56, 41, 32.44407 + 48, 58, 53, 46, 45, 49, 49, 44, 40, 35, 33, 44, 64, 75, 71, 68, 32.44408 + 68, 73, 55, 57, 42, 43, 33, 46, 39, 65, 88, 106, 106, 51, 61, 56, 32.44409 + 39, 42, 36, 47, 50, 61, 66, 75, 117, 187, 201, 202, 223, 223, 223, 151, 32.44410 + 78, 68, 63, 40, 64, 44, 71, 71, 97, 81, 58, 65, 72, 51, 46, 56, 32.44411 + 51, 55, 42, 42, 46, 55, 88, 109, 94, 83, 70, 68, 78, 81, 83, 89, 32.44412 + 91, 104, 107, 127, 156, 125, 129, 150, 255, 255, 255, 255, 238, 174, 193, 153, 32.44413 + 129, 134, 111, 74, 48, 53, 64, 63, 53, 49, 46, 43, 44, 47, 46, 44, 32.44414 + 40, 40, 45, 60, 82, 93, 93, 97, 102, 73, 46, 45, 40, 45, 31, 37, 32.44415 + 28, 30, 32, 74, 77, 67, 42, 52, 40, 34, 34, 40, 36, 49, 69, 83, 32.44416 + 122, 191, 200, 220, 243, 234, 232, 169, 81, 80, 64, 43, 69, 48, 52, 51, 32.44417 + 86, 84, 69, 66, 60, 36, 41, 56, 53, 36, 45, 57, 54, 57, 95, 120, 32.44418 + 105, 101, 75, 62, 68, 74, 79, 80, 77, 89, 91, 126, 156, 120, 118, 140, 32.44419 + 255, 255, 255, 255, 216, 187, 208, 163, 128, 131, 97, 70, 55, 49, 58, 61, 32.44420 + 42, 47, 46, 45, 45, 45, 44, 41, 41, 46, 49, 59, 79, 92, 102, 113, 32.44421 + 122, 91, 58, 55, 47, 49, 29, 32, 25, 34, 33, 76, 80, 85, 48, 49, 32.44422 + 31, 32, 31, 42, 40, 53, 74, 96, 144, 195, 194, 223, 239, 215, 215, 176, 32.44423 + 88, 70, 55, 42, 66, 49, 50, 53, 83, 101, 91, 78, 51, 27, 37, 55, 32.44424 + 56, 31, 55, 75, 69, 67, 105, 125, 101, 111, 82, 64, 68, 73, 76, 74, 32.44425 + 67, 95, 92, 129, 153, 123, 118, 143, 255, 255, 255, 255, 206, 186, 201, 145, 32.44426 + 110, 120, 78, 62, 64, 52, 51, 55, 42, 41, 42, 44, 44, 44, 42, 41, 32.44427 + 43, 69, 70, 76, 89, 103, 112, 116, 118, 98, 68, 63, 52, 48, 28, 37, 32.44428 + 34, 35, 35, 50, 50, 52, 43, 44, 35, 42, 38, 49, 52, 59, 68, 94, 32.44429 + 153, 206, 199, 230, 233, 204, 211, 200, 124, 68, 61, 50, 54, 40, 44, 44, 32.44430 + 56, 56, 64, 61, 41, 29, 39, 49, 44, 60, 63, 67, 60, 83, 144, 162, 32.44431 + 123, 118, 89, 74, 78, 78, 77, 74, 66, 86, 75, 102, 118, 109, 109, 134, 32.44432 + 255, 255, 255, 255, 179, 162, 162, 93, 70, 89, 53, 49, 62, 55, 48, 54, 32.44433 + 49, 32, 36, 40, 40, 40, 40, 42, 48, 81, 86, 96, 110, 123, 129, 125, 32.44434 + 119, 92, 68, 65, 50, 45, 29, 45, 46, 31, 38, 37, 36, 37, 45, 43, 32.44435 + 40, 41, 35, 47, 53, 62, 70, 95, 160, 228, 220, 247, 236, 213, 217, 221, 32.44436 + 156, 73, 71, 57, 46, 34, 40, 38, 34, 39, 52, 50, 36, 33, 41, 46, 32.44437 + 43, 69, 73, 74, 68, 89, 147, 165, 127, 122, 96, 85, 87, 85, 81, 75, 32.44438 + 67, 67, 57, 71, 80, 96, 98, 120, 255, 255, 255, 255, 171, 166, 155, 84, 32.44439 + 88, 76, 61, 58, 61, 53, 44, 42, 35, 33, 37, 41, 40, 38, 38, 45, 32.44440 + 54, 71, 84, 97, 111, 122, 126, 125, 122, 94, 73, 70, 49, 46, 35, 51, 32.44441 + 43, 27, 30, 32, 31, 43, 39, 35, 35, 40, 38, 45, 46, 63, 88, 114, 32.44442 + 168, 221, 218, 244, 231, 221, 219, 220, 154, 77, 68, 54, 39, 36, 37, 35, 32.44443 + 26, 53, 58, 49, 34, 36, 45, 50, 53, 64, 76, 88, 86, 100, 147, 160, 32.44444 + 121, 129, 99, 87, 90, 88, 84, 75, 63, 67, 66, 72, 71, 107, 103, 117, 32.44445 + 255, 255, 255, 255, 150, 140, 115, 39, 59, 49, 54, 58, 56, 56, 60, 56, 32.44446 + 49, 40, 44, 46, 43, 39, 38, 45, 55, 84, 98, 111, 118, 123, 129, 135, 32.44447 + 138, 106, 89, 82, 56, 52, 44, 53, 37, 40, 28, 33, 27, 51, 36, 44, 32.44448 + 54, 52, 51, 52, 43, 65, 102, 127, 165, 210, 212, 242, 238, 244, 242, 235, 32.44449 + 167, 100, 84, 69, 57, 57, 53, 49, 43, 32, 40, 38, 33, 46, 53, 54, 32.44450 + 60, 78, 72, 75, 89, 126, 184, 191, 141, 135, 102, 86, 88, 89, 84, 74, 32.44451 + 60, 57, 64, 66, 59, 102, 90, 98, 255, 255, 255, 255, 184, 191, 116, 49, 32.44452 + 58, 51, 54, 59, 64, 64, 60, 54, 53, 48, 45, 45, 44, 43, 43, 50, 32.44453 + 62, 95, 104, 112, 124, 135, 142, 146, 147, 127, 116, 111, 70, 54, 63, 40, 32.44454 + 33, 40, 45, 53, 54, 55, 54, 50, 46, 48, 59, 53, 73, 84, 131, 149, 32.44455 + 169, 201, 208, 226, 232, 236, 235, 208, 194, 148, 141, 68, 54, 70, 59, 67, 32.44456 + 48, 46, 42, 50, 54, 50, 56, 69, 74, 70, 86, 114, 116, 174, 189, 202, 32.44457 + 135, 135, 99, 76, 72, 75, 78, 73, 56, 54, 55, 65, 77, 86, 91, 104, 32.44458 + 255, 255, 255, 255, 191, 194, 117, 52, 51, 51, 51, 56, 62, 62, 55, 49, 32.44459 + 49, 46, 44, 44, 44, 44, 42, 49, 61, 88, 98, 108, 120, 132, 140, 147, 32.44460 + 149, 152, 138, 130, 94, 72, 73, 53, 50, 45, 48, 57, 62, 59, 52, 49, 32.44461 + 48, 54, 72, 80, 107, 116, 146, 149, 161, 204, 209, 228, 234, 241, 240, 215, 32.44462 + 203, 189, 173, 94, 65, 62, 45, 56, 40, 48, 45, 54, 58, 53, 58, 70, 32.44463 + 72, 96, 122, 158, 164, 206, 202, 198, 125, 137, 96, 73, 74, 78, 78, 72, 32.44464 + 57, 50, 51, 59, 73, 85, 91, 100, 255, 255, 255, 255, 196, 188, 111, 63, 32.44465 + 56, 57, 53, 58, 67, 65, 52, 44, 47, 44, 43, 44, 46, 45, 42, 49, 32.44466 + 58, 86, 97, 109, 121, 136, 146, 153, 157, 156, 143, 135, 108, 85, 73, 55, 32.44467 + 58, 59, 59, 67, 73, 69, 61, 59, 66, 55, 68, 79, 103, 116, 148, 165, 32.44468 + 184, 202, 209, 231, 237, 245, 245, 221, 211, 196, 182, 118, 91, 78, 63, 76, 32.44469 + 66, 61, 58, 67, 71, 67, 74, 86, 89, 102, 129, 167, 174, 207, 201, 206, 32.44470 + 148, 141, 94, 70, 79, 84, 79, 72, 64, 53, 51, 55, 67, 80, 89, 96, 32.44471 + 255, 255, 255, 255, 169, 150, 76, 57, 53, 68, 60, 62, 74, 70, 52, 44, 32.44472 + 49, 42, 42, 46, 47, 45, 41, 47, 58, 87, 98, 110, 123, 138, 148, 156, 32.44473 + 161, 168, 160, 158, 146, 124, 102, 87, 90, 75, 70, 73, 80, 79, 74, 82, 32.44474 + 95, 90, 108, 130, 154, 160, 162, 159, 167, 202, 209, 231, 238, 246, 249, 227, 32.44475 + 219, 216, 209, 170, 148, 124, 96, 93, 78, 77, 71, 78, 81, 81, 93, 113, 32.44476 + 122, 167, 187, 207, 201, 207, 190, 194, 151, 144, 92, 68, 79, 84, 80, 77, 32.44477 + 76, 63, 59, 57, 62, 74, 82, 88, 255, 255, 255, 255, 186, 160, 81, 80, 32.44478 + 86, 74, 67, 67, 75, 70, 53, 45, 49, 44, 43, 45, 46, 44, 43, 47, 32.44479 + 57, 85, 95, 107, 120, 134, 146, 154, 160, 173, 175, 176, 181, 164, 135, 125, 32.44480 + 124, 133, 128, 128, 132, 134, 139, 154, 170, 171, 160, 154, 149, 150, 154, 174, 32.44481 + 196, 202, 207, 229, 236, 244, 248, 232, 227, 215, 217, 214, 215, 204, 189, 188, 32.44482 + 174, 136, 128, 131, 135, 137, 156, 184, 196, 216, 231, 240, 230, 212, 179, 174, 32.44483 + 136, 141, 89, 63, 71, 75, 73, 78, 82, 77, 69, 62, 61, 66, 74, 80, 32.44484 + 255, 255, 255, 255, 190, 163, 68, 65, 73, 75, 70, 69, 69, 62, 53, 46, 32.44485 + 46, 45, 44, 46, 46, 45, 42, 47, 58, 84, 94, 105, 119, 134, 146, 156, 32.44486 + 162, 169, 179, 181, 194, 186, 161, 157, 149, 136, 136, 133, 134, 139, 149, 162, 32.44487 + 167, 174, 160, 162, 159, 165, 152, 167, 180, 205, 208, 230, 235, 242, 248, 235, 32.44488 + 235, 227, 218, 219, 223, 209, 198, 197, 187, 141, 132, 135, 139, 141, 161, 187, 32.44489 + 199, 228, 234, 231, 224, 199, 171, 167, 143, 132, 87, 62, 63, 62, 64, 72, 32.44490 + 76, 80, 77, 69, 62, 63, 69, 73, 255, 255, 255, 255, 175, 164, 66, 61, 32.44491 + 75, 73, 75, 72, 63, 56, 54, 49, 43, 48, 45, 46, 45, 44, 42, 48, 32.44492 + 59, 80, 89, 103, 118, 134, 147, 159, 167, 182, 197, 193, 209, 210, 201, 209, 32.44493 + 199, 212, 219, 219, 217, 221, 230, 228, 218, 223, 187, 168, 146, 151, 140, 167, 32.44494 + 189, 209, 211, 230, 233, 241, 249, 239, 243, 230, 211, 220, 228, 227, 236, 245, 32.44495 + 239, 223, 216, 222, 225, 224, 235, 251, 255, 255, 255, 242, 236, 202, 169, 157, 32.44496 + 133, 126, 90, 69, 62, 55, 57, 64, 66, 72, 74, 74, 67, 66, 70, 72, 32.44497 + 255, 255, 255, 255, 126, 138, 51, 55, 78, 75, 79, 74, 61, 55, 58, 53, 32.44498 + 44, 52, 48, 46, 45, 42, 42, 48, 58, 71, 80, 93, 110, 125, 140, 151, 32.44499 + 159, 182, 198, 191, 208, 221, 223, 244, 236, 227, 239, 243, 237, 239, 244, 230, 32.44500 + 205, 204, 170, 160, 147, 162, 150, 176, 195, 218, 218, 235, 236, 241, 248, 239, 32.44501 + 244, 227, 199, 206, 214, 213, 227, 235, 230, 239, 238, 247, 251, 246, 247, 255, 32.44502 + 252, 241, 245, 243, 250, 217, 174, 144, 111, 122, 95, 75, 64, 52, 54, 61, 32.44503 + 57, 61, 70, 75, 71, 69, 70, 70, 255, 255, 255, 255, 135, 137, 59, 58, 32.44504 + 67, 73, 72, 71, 58, 47, 57, 61, 48, 51, 50, 47, 43, 41, 43, 48, 32.44505 + 54, 68, 66, 91, 108, 126, 135, 132, 149, 168, 183, 184, 200, 216, 230, 253, 32.44506 + 253, 247, 242, 248, 249, 240, 240, 226, 186, 180, 165, 160, 166, 168, 169, 188, 32.44507 + 217, 227, 227, 241, 231, 238, 234, 245, 231, 228, 232, 222, 224, 208, 220, 221, 32.44508 + 229, 224, 225, 236, 246, 252, 252, 251, 250, 250, 239, 232, 219, 182, 179, 142, 32.44509 + 121, 117, 90, 69, 60, 63, 63, 63, 61, 63, 63, 72, 72, 60, 58, 62, 32.44510 + 255, 255, 255, 255, 138, 146, 72, 63, 65, 69, 70, 69, 57, 47, 58, 64, 32.44511 + 51, 54, 52, 47, 43, 41, 43, 47, 54, 66, 64, 86, 103, 118, 129, 127, 32.44512 + 144, 162, 180, 183, 200, 218, 233, 255, 255, 252, 249, 255, 255, 246, 244, 227, 32.44513 + 190, 180, 161, 152, 160, 169, 172, 186, 209, 228, 228, 244, 237, 245, 239, 245, 32.44514 + 227, 228, 232, 220, 220, 202, 212, 213, 221, 229, 230, 239, 250, 255, 255, 255, 32.44515 + 253, 251, 238, 229, 215, 179, 178, 142, 123, 110, 87, 65, 59, 60, 60, 60, 32.44516 + 58, 60, 60, 70, 72, 62, 58, 62, 255, 255, 255, 255, 152, 161, 90, 69, 32.44517 + 60, 65, 65, 64, 54, 47, 60, 66, 54, 52, 50, 47, 43, 40, 42, 47, 32.44518 + 52, 62, 60, 83, 98, 113, 123, 124, 142, 155, 173, 176, 194, 212, 227, 250, 32.44519 + 251, 252, 250, 255, 250, 234, 223, 201, 167, 175, 149, 137, 146, 161, 168, 175, 32.44520 + 189, 211, 213, 235, 236, 251, 245, 248, 225, 220, 223, 210, 211, 195, 204, 204, 32.44521 + 216, 221, 222, 228, 238, 249, 254, 250, 244, 244, 229, 220, 206, 170, 169, 135, 32.44522 + 118, 106, 83, 64, 58, 59, 57, 56, 53, 58, 57, 69, 73, 66, 63, 63, 32.44523 + 255, 255, 255, 255, 157, 162, 94, 72, 59, 62, 61, 60, 51, 46, 61, 68, 32.44524 + 56, 53, 51, 47, 43, 40, 42, 46, 51, 59, 57, 79, 92, 106, 117, 119, 32.44525 + 140, 154, 171, 171, 188, 205, 218, 241, 240, 249, 250, 251, 242, 226, 207, 181, 32.44526 + 152, 145, 122, 106, 113, 127, 132, 134, 144, 181, 187, 215, 224, 243, 241, 242, 32.44527 + 217, 180, 180, 171, 178, 166, 177, 180, 198, 211, 214, 218, 226, 239, 247, 245, 32.44528 + 236, 236, 220, 211, 201, 164, 160, 124, 108, 98, 77, 61, 56, 58, 55, 52, 32.44529 + 49, 57, 56, 68, 74, 68, 65, 63, 255, 255, 255, 255, 155, 153, 94, 73, 32.44530 + 62, 62, 60, 59, 50, 46, 62, 70, 58, 53, 51, 47, 42, 40, 41, 46, 32.44531 + 51, 59, 54, 75, 87, 98, 110, 113, 135, 159, 174, 172, 184, 199, 210, 232, 32.44532 + 230, 238, 241, 238, 229, 222, 203, 175, 155, 146, 125, 112, 114, 119, 121, 122, 32.44533 + 131, 167, 174, 204, 216, 238, 234, 233, 207, 160, 163, 157, 170, 161, 174, 180, 32.44534 + 200, 204, 208, 210, 216, 229, 241, 242, 232, 228, 212, 206, 197, 161, 154, 117, 32.44535 + 101, 93, 73, 60, 56, 57, 54, 51, 49, 59, 59, 70, 74, 67, 64, 65, 32.44536 + 255, 255, 255, 255, 176, 163, 103, 79, 67, 65, 62, 59, 51, 47, 64, 72, 32.44537 + 57, 54, 52, 47, 42, 40, 41, 45, 49, 59, 55, 73, 82, 92, 103, 107, 32.44538 + 130, 157, 168, 164, 173, 184, 195, 217, 214, 222, 222, 211, 202, 197, 177, 148, 32.44539 + 133, 114, 97, 86, 82, 83, 79, 80, 87, 130, 137, 166, 173, 191, 185, 184, 32.44540 + 158, 110, 112, 110, 127, 119, 130, 134, 157, 179, 186, 187, 188, 202, 219, 223, 32.44541 + 218, 212, 196, 190, 184, 149, 142, 106, 92, 87, 70, 60, 56, 56, 54, 51, 32.44542 + 52, 65, 65, 74, 74, 63, 60, 64, 255, 255, 255, 255, 198, 178, 120, 88, 32.44543 + 69, 69, 65, 61, 51, 49, 66, 72, 58, 54, 51, 47, 43, 38, 39, 43, 32.44544 + 49, 60, 55, 73, 80, 87, 97, 102, 127, 149, 160, 152, 158, 167, 177, 201, 32.44545 + 199, 208, 205, 184, 171, 171, 150, 118, 107, 106, 90, 77, 72, 71, 68, 65, 32.44546 + 67, 77, 84, 111, 115, 127, 120, 120, 98, 86, 90, 89, 110, 101, 110, 111, 32.44547 + 134, 154, 164, 163, 161, 174, 194, 204, 203, 193, 174, 167, 163, 131, 127, 95, 32.44548 + 88, 84, 69, 59, 56, 57, 55, 54, 56, 72, 72, 81, 76, 60, 56, 65, 32.44549 + 255, 255, 255, 255, 197, 181, 127, 92, 70, 72, 67, 62, 52, 51, 65, 72, 32.44550 + 58, 53, 51, 47, 43, 38, 39, 43, 47, 62, 55, 72, 78, 83, 93, 99, 32.44551 + 123, 147, 155, 145, 149, 159, 171, 194, 192, 199, 194, 171, 158, 166, 147, 118, 32.44552 + 110, 100, 84, 67, 63, 65, 63, 57, 55, 75, 83, 108, 111, 122, 113, 118, 32.44553 + 100, 72, 76, 77, 99, 91, 98, 100, 122, 148, 158, 158, 154, 164, 187, 201, 32.44554 + 202, 183, 161, 153, 149, 119, 118, 93, 90, 81, 67, 57, 55, 56, 56, 56, 32.44555 + 59, 76, 77, 84, 76, 56, 52, 65, 255, 255, 255, 255, 180, 165, 126, 88, 32.44556 + 61, 67, 65, 55, 49, 53, 64, 69, 65, 56, 51, 43, 39, 38, 37, 37, 32.44557 + 36, 50, 51, 59, 75, 83, 85, 94, 106, 125, 132, 133, 132, 137, 154, 173, 32.44558 + 183, 182, 144, 127, 132, 128, 115, 103, 90, 80, 74, 68, 64, 63, 60, 57, 32.44559 + 57, 58, 76, 75, 92, 89, 90, 73, 81, 85, 77, 81, 98, 97, 84, 90, 32.44560 + 111, 117, 126, 130, 128, 135, 152, 167, 173, 156, 160, 129, 132, 113, 107, 93, 32.44561 + 76, 78, 65, 57, 56, 58, 60, 64, 73, 87, 87, 89, 76, 60, 66, 79, 32.44562 + 255, 255, 255, 255, 168, 143, 107, 80, 53, 57, 58, 51, 45, 47, 56, 60, 32.44563 + 59, 60, 54, 45, 40, 39, 40, 40, 41, 44, 46, 54, 69, 76, 78, 86, 32.44564 + 98, 102, 111, 116, 116, 123, 137, 150, 155, 148, 119, 106, 109, 104, 97, 90, 32.44565 + 79, 79, 69, 62, 57, 60, 63, 69, 74, 81, 91, 75, 77, 66, 75, 74, 32.44566 + 96, 87, 79, 82, 92, 90, 80, 80, 92, 105, 109, 104, 98, 104, 122, 139, 32.44567 + 147, 135, 141, 114, 119, 99, 95, 82, 67, 75, 65, 57, 56, 59, 59, 65, 32.44568 + 73, 88, 84, 84, 77, 66, 69, 142, 255, 255, 255, 255, 171, 130, 98, 84, 32.44569 + 55, 56, 57, 54, 49, 47, 53, 58, 60, 63, 56, 47, 41, 39, 41, 44, 32.44570 + 47, 42, 43, 51, 65, 71, 72, 77, 89, 84, 90, 98, 103, 110, 120, 125, 32.44571 + 123, 119, 103, 96, 93, 87, 88, 85, 74, 65, 63, 61, 61, 65, 67, 71, 32.44572 + 74, 73, 87, 78, 83, 71, 76, 76, 100, 90, 85, 85, 90, 91, 90, 88, 32.44573 + 89, 86, 90, 93, 94, 98, 105, 108, 105, 115, 125, 103, 108, 87, 83, 72, 32.44574 + 62, 73, 65, 58, 56, 59, 60, 66, 71, 90, 81, 78, 76, 72, 76, 255, 32.44575 + 255, 255, 255, 255, 173, 119, 91, 82, 53, 56, 58, 57, 53, 49, 51, 57, 32.44576 + 62, 65, 58, 48, 41, 39, 42, 46, 50, 46, 45, 51, 64, 68, 65, 70, 32.44577 + 80, 77, 84, 91, 95, 102, 107, 106, 101, 95, 92, 95, 90, 81, 87, 87, 32.44578 + 74, 76, 73, 70, 70, 72, 73, 77, 80, 71, 84, 81, 95, 85, 84, 78, 32.44579 + 98, 99, 96, 88, 84, 85, 87, 83, 77, 82, 87, 92, 94, 95, 95, 90, 32.44580 + 83, 107, 119, 100, 105, 82, 77, 68, 60, 67, 63, 56, 55, 56, 60, 64, 32.44581 + 68, 88, 76, 70, 72, 77, 78, 255, 255, 255, 255, 255, 157, 105, 81, 73, 32.44582 + 46, 52, 52, 50, 47, 44, 44, 47, 53, 63, 56, 45, 39, 38, 42, 45, 32.44583 + 49, 49, 49, 53, 61, 63, 59, 60, 70, 77, 80, 85, 86, 89, 91, 89, 32.44584 + 83, 72, 79, 91, 89, 82, 90, 94, 80, 86, 80, 76, 70, 71, 76, 86, 32.44585 + 92, 100, 99, 81, 89, 82, 87, 85, 108, 93, 95, 93, 92, 99, 110, 116, 32.44586 + 114, 97, 92, 85, 79, 77, 79, 84, 89, 107, 120, 101, 104, 79, 73, 66, 32.44587 + 60, 62, 59, 55, 53, 54, 59, 62, 64, 80, 70, 59, 61, 73, 72, 255, 32.44588 + 255, 255, 255, 130, 137, 100, 80, 70, 51, 53, 49, 45, 43, 41, 41, 43, 32.44589 + 50, 58, 53, 45, 40, 40, 41, 43, 45, 48, 47, 50, 58, 59, 52, 54, 32.44590 + 61, 70, 74, 78, 76, 75, 76, 74, 69, 60, 70, 85, 92, 89, 97, 103, 32.44591 + 94, 105, 111, 119, 125, 127, 128, 130, 128, 125, 120, 101, 115, 113, 119, 117, 32.44592 + 141, 129, 130, 125, 115, 105, 100, 99, 98, 97, 93, 88, 85, 79, 76, 84, 32.44593 + 91, 108, 121, 100, 102, 77, 71, 65, 58, 58, 57, 54, 49, 52, 59, 62, 32.44594 + 60, 70, 67, 52, 51, 65, 66, 255, 255, 255, 255, 113, 120, 100, 84, 67, 32.44595 + 56, 58, 49, 42, 42, 42, 42, 44, 50, 54, 51, 45, 43, 41, 41, 41, 32.44596 + 42, 48, 47, 50, 58, 59, 53, 54, 61, 63, 71, 75, 73, 70, 69, 68, 32.44597 + 66, 63, 68, 85, 94, 92, 97, 105, 102, 82, 96, 115, 127, 132, 131, 129, 32.44598 + 125, 101, 104, 99, 121, 119, 120, 114, 138, 114, 123, 130, 128, 113, 103, 105, 32.44599 + 112, 91, 91, 95, 97, 89, 81, 85, 93, 109, 119, 96, 98, 77, 73, 67, 32.44600 + 59, 56, 57, 53, 50, 53, 60, 62, 59, 69, 72, 55, 47, 64, 255, 255, 32.44601 + 255, 255, 255, 95, 102, 90, 75, 55, 47, 58, 45, 36, 37, 39, 37, 41, 32.44602 + 45, 51, 48, 45, 44, 44, 42, 40, 40, 49, 47, 51, 59, 60, 55, 57, 32.44603 + 64, 61, 71, 79, 77, 73, 71, 70, 69, 70, 69, 81, 89, 85, 89, 99, 32.44604 + 101, 108, 113, 118, 124, 129, 139, 152, 157, 170, 173, 168, 188, 180, 177, 175, 32.44605 + 204, 195, 198, 196, 175, 133, 93, 79, 81, 93, 92, 91, 84, 77, 71, 83, 32.44606 + 99, 108, 116, 92, 95, 77, 75, 71, 61, 57, 58, 54, 50, 53, 61, 63, 32.44607 + 60, 71, 80, 61, 49, 67, 255, 255, 255, 255, 217, 102, 100, 85, 68, 55, 32.44608 + 50, 49, 44, 37, 33, 31, 32, 34, 33, 43, 40, 38, 38, 40, 40, 38, 32.44609 + 36, 47, 42, 44, 53, 57, 52, 50, 56, 57, 65, 72, 76, 72, 69, 69, 32.44610 + 70, 60, 73, 84, 93, 94, 99, 95, 92, 96, 132, 149, 163, 172, 184, 202, 32.44611 + 191, 209, 206, 218, 232, 234, 226, 225, 233, 220, 214, 236, 192, 157, 115, 100, 32.44612 + 113, 123, 120, 117, 102, 79, 73, 80, 81, 93, 88, 80, 72, 69, 70, 67, 32.44613 + 60, 55, 60, 60, 54, 49, 53, 62, 68, 80, 89, 65, 49, 63, 255, 255, 32.44614 + 255, 255, 129, 102, 97, 83, 75, 55, 53, 50, 44, 36, 31, 31, 31, 31, 32.44615 + 32, 36, 35, 35, 37, 41, 41, 39, 37, 46, 41, 44, 53, 54, 48, 47, 32.44616 + 54, 58, 64, 72, 74, 74, 71, 72, 76, 87, 101, 114, 120, 121, 123, 120, 32.44617 + 117, 108, 130, 131, 135, 130, 126, 134, 122, 132, 124, 126, 133, 135, 134, 142, 32.44618 + 156, 149, 153, 185, 176, 168, 157, 156, 174, 147, 137, 132, 116, 92, 83, 87, 32.44619 + 83, 86, 81, 72, 65, 64, 66, 63, 56, 56, 59, 57, 52, 50, 56, 65, 32.44620 + 68, 86, 90, 67, 47, 54, 255, 255, 255, 255, 114, 101, 93, 81, 86, 58, 32.44621 + 63, 51, 45, 37, 32, 32, 31, 30, 31, 31, 32, 35, 38, 43, 42, 41, 32.44622 + 39, 44, 43, 47, 52, 51, 43, 45, 53, 54, 62, 69, 71, 73, 73, 75, 32.44623 + 79, 77, 94, 115, 119, 123, 119, 122, 119, 122, 136, 132, 136, 135, 128, 138, 32.44624 + 132, 150, 141, 141, 143, 144, 146, 158, 172, 170, 171, 183, 181, 164, 159, 144, 32.44625 + 150, 151, 136, 127, 112, 92, 84, 87, 80, 81, 76, 68, 61, 60, 62, 59, 32.44626 + 53, 57, 57, 53, 50, 52, 59, 66, 67, 75, 79, 63, 50, 122, 255, 255, 32.44627 + 255, 200, 82, 81, 73, 61, 75, 44, 53, 50, 45, 37, 32, 31, 30, 29, 32.44628 + 29, 27, 29, 34, 38, 43, 43, 42, 41, 44, 45, 49, 50, 46, 41, 44, 32.44629 + 53, 52, 56, 63, 67, 70, 73, 77, 83, 90, 110, 138, 143, 157, 153, 160, 32.44630 + 156, 147, 159, 161, 176, 178, 174, 194, 199, 182, 182, 188, 194, 193, 191, 196, 32.44631 + 200, 176, 179, 175, 188, 177, 186, 171, 171, 135, 113, 104, 97, 83, 81, 81, 32.44632 + 76, 76, 72, 66, 59, 59, 62, 59, 54, 55, 56, 52, 51, 55, 62, 62, 32.44633 + 58, 57, 65, 58, 54, 255, 255, 255, 255, 88, 75, 78, 73, 55, 69, 41, 32.44634 + 48, 48, 43, 36, 32, 31, 29, 28, 28, 25, 28, 34, 38, 43, 42, 42, 32.44635 + 42, 43, 47, 50, 49, 45, 40, 44, 51, 53, 56, 61, 65, 70, 74, 80, 32.44636 + 87, 78, 98, 130, 133, 156, 150, 163, 158, 168, 184, 187, 198, 195, 188, 210, 32.44637 + 217, 216, 221, 232, 240, 238, 232, 231, 231, 224, 223, 200, 207, 190, 195, 180, 32.44638 + 166, 126, 100, 92, 92, 84, 84, 85, 81, 74, 71, 65, 59, 60, 63, 62, 32.44639 + 57, 54, 55, 53, 53, 57, 61, 57, 50, 55, 59, 60, 59, 255, 255, 255, 32.44640 + 255, 92, 81, 80, 82, 56, 61, 47, 49, 46, 42, 36, 33, 33, 31, 30, 32.44641 + 29, 26, 30, 35, 38, 40, 39, 41, 42, 44, 46, 48, 47, 44, 44, 47, 32.44642 + 51, 56, 56, 58, 63, 69, 77, 84, 91, 83, 97, 130, 127, 159, 151, 166, 32.44643 + 159, 167, 184, 185, 193, 190, 189, 210, 216, 222, 226, 232, 236, 233, 231, 231, 32.44644 + 232, 223, 224, 204, 208, 203, 203, 200, 181, 125, 96, 89, 91, 85, 83, 85, 32.44645 + 83, 72, 70, 64, 59, 60, 64, 64, 57, 54, 54, 55, 55, 57, 59, 55, 32.44646 + 47, 57, 59, 65, 128, 255, 255, 255, 255, 68, 66, 56, 70, 39, 36, 41, 32.44647 + 38, 47, 43, 37, 35, 36, 34, 33, 33, 29, 32, 36, 37, 38, 36, 39, 32.44648 + 41, 47, 47, 47, 45, 46, 47, 49, 50, 54, 54, 55, 59, 66, 73, 81, 32.44649 + 89, 81, 87, 117, 111, 147, 139, 159, 149, 158, 173, 167, 169, 176, 186, 207, 32.44650 + 204, 210, 213, 216, 216, 213, 213, 215, 216, 212, 215, 199, 193, 193, 177, 184, 32.44651 + 154, 114, 85, 78, 82, 75, 72, 75, 75, 68, 64, 59, 55, 56, 61, 61, 32.44652 + 56, 55, 56, 57, 54, 55, 59, 59, 55, 53, 53, 62, 255, 255, 255, 255, 32.44653 + 255, 59, 63, 50, 74, 42, 36, 56, 48, 46, 44, 39, 37, 38, 37, 36, 32.44654 + 36, 31, 34, 37, 36, 36, 34, 38, 40, 47, 47, 45, 43, 46, 48, 50, 32.44655 + 48, 51, 49, 49, 52, 60, 69, 77, 83, 80, 81, 110, 102, 144, 136, 157, 32.44656 + 146, 158, 166, 147, 143, 151, 165, 183, 169, 164, 167, 171, 169, 168, 166, 166, 32.44657 + 166, 178, 184, 178, 169, 178, 153, 168, 136, 100, 74, 69, 72, 65, 61, 66, 32.44658 + 67, 63, 60, 56, 52, 54, 59, 60, 53, 56, 57, 56, 53, 54, 59, 63, 32.44659 + 62, 49, 46, 55, 255, 255, 255, 255, 255, 62, 51, 42, 42, 39, 34, 36, 32.44660 + 43, 41, 43, 43, 44, 44, 39, 36, 34, 28, 32, 39, 41, 44, 42, 42, 32.44661 + 41, 46, 46, 46, 45, 46, 45, 46, 46, 48, 45, 43, 46, 56, 62, 65, 32.44662 + 67, 66, 74, 82, 92, 105, 123, 142, 156, 159, 153, 147, 146, 149, 152, 151, 32.44663 + 145, 133, 130, 130, 133, 136, 140, 143, 144, 140, 144, 157, 158, 142, 133, 130, 32.44664 + 119, 91, 68, 71, 67, 64, 62, 48, 56, 58, 53, 50, 49, 51, 55, 58, 32.44665 + 59, 57, 55, 54, 56, 61, 62, 62, 59, 67, 57, 125, 255, 255, 255, 255, 32.44666 + 92, 61, 49, 41, 42, 41, 37, 38, 45, 39, 40, 40, 41, 41, 38, 35, 32.44667 + 34, 29, 33, 38, 40, 42, 41, 42, 42, 49, 48, 47, 45, 46, 45, 46, 32.44668 + 47, 45, 42, 41, 45, 53, 60, 61, 60, 58, 65, 75, 83, 94, 112, 136, 32.44669 + 152, 151, 146, 140, 140, 144, 143, 140, 135, 124, 122, 122, 126, 132, 134, 136, 32.44670 + 131, 138, 136, 145, 146, 133, 127, 120, 107, 86, 66, 69, 63, 62, 61, 48, 32.44671 + 54, 54, 51, 47, 45, 49, 52, 55, 55, 55, 54, 55, 57, 61, 62, 62, 32.44672 + 60, 67, 59, 255, 255, 255, 255, 255, 98, 56, 43, 36, 37, 39, 36, 36, 32.44673 + 41, 37, 37, 36, 36, 36, 35, 34, 34, 32, 34, 38, 38, 41, 40, 43, 32.44674 + 44, 45, 45, 44, 41, 41, 40, 41, 39, 40, 39, 38, 43, 49, 54, 55, 32.44675 + 53, 51, 56, 64, 68, 77, 95, 121, 143, 146, 145, 143, 142, 145, 146, 143, 32.44676 + 136, 125, 120, 121, 127, 134, 136, 130, 125, 128, 122, 125, 126, 118, 111, 104, 32.44677 + 87, 79, 63, 66, 59, 58, 61, 48, 53, 53, 50, 46, 44, 47, 49, 53, 32.44678 + 53, 55, 53, 53, 56, 59, 60, 61, 61, 75, 71, 255, 255, 255, 255, 255, 32.44679 + 86, 57, 42, 32, 36, 39, 37, 37, 40, 35, 35, 32, 31, 32, 32, 33, 32.44680 + 34, 35, 36, 38, 38, 40, 40, 44, 46, 43, 40, 39, 37, 37, 34, 35, 32.44681 + 35, 37, 36, 38, 40, 47, 48, 47, 45, 46, 51, 57, 58, 62, 79, 108, 32.44682 + 132, 140, 142, 146, 149, 151, 151, 148, 142, 132, 126, 125, 128, 134, 135, 130, 32.44683 + 122, 118, 112, 118, 119, 110, 101, 93, 77, 72, 61, 64, 54, 54, 60, 49, 32.44684 + 51, 55, 52, 48, 47, 49, 51, 54, 52, 53, 52, 52, 54, 56, 59, 60, 32.44685 + 59, 78, 80, 255, 255, 255, 255, 255, 75, 65, 46, 33, 36, 39, 38, 38, 32.44686 + 40, 34, 34, 31, 30, 31, 31, 32, 34, 37, 38, 39, 38, 40, 40, 44, 32.44687 + 47, 43, 43, 42, 40, 39, 37, 37, 36, 33, 36, 38, 40, 44, 44, 43, 32.44688 + 41, 43, 48, 52, 53, 56, 73, 104, 128, 134, 139, 146, 148, 148, 146, 144, 32.44689 + 140, 136, 128, 122, 120, 122, 123, 120, 116, 114, 114, 125, 126, 112, 102, 95, 32.44690 + 81, 67, 58, 62, 50, 49, 60, 50, 48, 52, 50, 47, 47, 50, 51, 54, 32.44691 + 52, 51, 51, 52, 54, 55, 58, 61, 64, 77, 136, 255, 255, 255, 255, 255, 32.44692 + 92, 71, 49, 31, 32, 35, 33, 33, 33, 35, 35, 32, 30, 31, 31, 31, 32.44693 + 33, 35, 36, 38, 37, 38, 38, 42, 44, 41, 39, 38, 36, 35, 35, 35, 32.44694 + 35, 35, 35, 38, 40, 41, 41, 40, 38, 42, 46, 49, 51, 58, 76, 104, 32.44695 + 125, 129, 136, 142, 145, 143, 139, 138, 136, 133, 125, 117, 111, 109, 109, 108, 32.44696 + 108, 112, 112, 122, 124, 110, 99, 92, 78, 65, 58, 62, 45, 46, 60, 49, 32.44697 + 44, 48, 46, 44, 44, 47, 50, 52, 50, 50, 50, 54, 58, 60, 66, 73, 32.44698 + 76, 87, 255, 255, 255, 255, 255, 255, 205, 80, 55, 32, 30, 33, 31, 28, 32.44699 + 28, 37, 36, 34, 33, 33, 31, 31, 31, 31, 33, 35, 35, 36, 35, 38, 32.44700 + 39, 37, 36, 35, 33, 33, 33, 34, 34, 36, 38, 40, 40, 40, 40, 40, 32.44701 + 39, 43, 45, 48, 51, 58, 72, 96, 113, 115, 124, 133, 134, 133, 131, 135, 32.44702 + 135, 130, 125, 119, 112, 106, 104, 107, 109, 113, 107, 109, 109, 98, 90, 82, 32.44703 + 66, 63, 59, 63, 43, 43, 59, 49, 39, 43, 42, 43, 44, 47, 50, 51, 32.44704 + 51, 48, 51, 58, 64, 70, 79, 90, 96, 157, 255, 255, 255, 255, 255, 255, 32.44705 + 255, 95, 67, 43, 38, 41, 38, 34, 33, 38, 38, 36, 35, 34, 32, 32, 32.44706 + 31, 29, 31, 33, 34, 33, 32, 33, 33, 38, 38, 36, 36, 37, 37, 39, 32.44707 + 39, 39, 39, 41, 39, 38, 38, 39, 39, 45, 46, 48, 48, 53, 65, 81, 32.44708 + 93, 91, 101, 113, 119, 118, 121, 125, 130, 130, 128, 124, 117, 109, 106, 109, 32.44709 + 112, 115, 101, 97, 93, 86, 82, 72, 55, 62, 58, 62, 41, 41, 59, 46, 32.44710 + 38, 44, 43, 44, 46, 50, 52, 53, 53, 48, 53, 61, 70, 80, 91, 103, 32.44711 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 84, 68, 51, 41, 40, 42, 40, 32.44712 + 37, 39, 40, 41, 42, 39, 37, 34, 32, 32, 31, 31, 31, 31, 32, 33, 32.44713 + 34, 35, 36, 39, 40, 41, 38, 38, 35, 39, 39, 39, 39, 39, 39, 38, 32.44714 + 39, 44, 48, 52, 52, 56, 64, 74, 84, 89, 98, 108, 114, 114, 112, 121, 32.44715 + 132, 124, 124, 122, 121, 117, 113, 108, 106, 98, 95, 89, 84, 80, 73, 65, 32.44716 + 57, 57, 60, 59, 48, 45, 50, 48, 40, 44, 43, 43, 45, 48, 50, 51, 32.44717 + 52, 55, 62, 69, 74, 78, 84, 98, 255, 255, 255, 255, 255, 255, 255, 255, 32.44718 + 255, 89, 74, 58, 48, 46, 46, 42, 38, 35, 36, 39, 41, 41, 41, 38, 32.44719 + 37, 33, 33, 31, 32, 32, 33, 31, 32, 34, 36, 38, 40, 40, 39, 38, 32.44720 + 37, 38, 38, 39, 39, 38, 37, 36, 37, 45, 52, 55, 56, 56, 57, 62, 32.44721 + 68, 68, 77, 94, 105, 109, 111, 120, 131, 134, 131, 127, 122, 116, 112, 108, 32.44722 + 104, 97, 91, 83, 74, 68, 63, 59, 54, 49, 54, 53, 44, 42, 47, 46, 32.44723 + 38, 44, 44, 45, 46, 49, 52, 55, 57, 49, 54, 66, 80, 92, 101, 162, 32.44724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 80, 65, 56, 53, 50, 44, 32.44725 + 38, 35, 36, 38, 40, 41, 40, 38, 37, 33, 33, 32, 33, 33, 33, 32, 32.44726 + 32, 34, 35, 37, 38, 39, 38, 37, 36, 37, 38, 38, 38, 38, 37, 36, 32.44727 + 37, 40, 47, 52, 53, 52, 51, 52, 54, 54, 65, 84, 100, 106, 109, 121, 32.44728 + 131, 138, 132, 127, 119, 112, 106, 102, 100, 99, 90, 77, 68, 61, 58, 57, 32.44729 + 53, 47, 51, 50, 43, 42, 47, 46, 40, 48, 49, 48, 45, 41, 41, 44, 32.44730 + 48, 52, 54, 67, 86, 104, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44731 + 255, 255, 81, 68, 60, 57, 53, 46, 38, 39, 39, 40, 40, 39, 38, 34, 32.44732 + 33, 33, 34, 33, 34, 34, 34, 32, 32, 33, 34, 36, 37, 37, 37, 36, 32.44733 + 36, 36, 36, 37, 37, 37, 37, 36, 36, 37, 43, 51, 53, 52, 52, 55, 32.44734 + 57, 59, 67, 82, 96, 102, 106, 116, 127, 129, 125, 119, 111, 105, 103, 100, 32.44735 + 98, 98, 90, 76, 65, 59, 56, 55, 53, 49, 51, 51, 47, 46, 50, 49, 32.44736 + 45, 47, 49, 49, 45, 39, 38, 42, 48, 58, 58, 67, 82, 94, 155, 255, 32.44737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 66, 60, 58, 55, 46, 32.44738 + 38, 39, 39, 39, 39, 38, 37, 34, 33, 33, 34, 34, 35, 36, 35, 33, 32.44739 + 32, 33, 33, 34, 35, 35, 35, 35, 35, 34, 35, 36, 36, 36, 36, 36, 32.44740 + 36, 43, 47, 52, 53, 53, 54, 59, 64, 65, 71, 81, 90, 96, 100, 109, 32.44741 + 120, 118, 114, 109, 104, 101, 100, 102, 102, 94, 86, 77, 68, 63, 59, 57, 32.44742 + 52, 50, 51, 51, 49, 49, 51, 51, 49, 39, 43, 47, 48, 47, 50, 57, 32.44743 + 64, 58, 58, 64, 69, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44744 + 255, 255, 195, 64, 59, 58, 54, 45, 37, 36, 36, 36, 37, 38, 38, 37, 32.44745 + 37, 33, 35, 35, 37, 37, 36, 33, 33, 32, 32, 33, 33, 33, 34, 34, 32.44746 + 34, 33, 34, 35, 35, 36, 36, 35, 36, 42, 45, 48, 46, 45, 47, 53, 32.44747 + 59, 64, 66, 73, 82, 87, 92, 104, 113, 101, 99, 95, 93, 91, 92, 93, 32.44748 + 95, 87, 81, 73, 67, 63, 59, 57, 54, 49, 48, 48, 48, 48, 48, 48, 32.44749 + 48, 39, 42, 46, 48, 48, 51, 55, 60, 58, 59, 66, 66, 61, 255, 255, 32.44750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 60, 58, 54, 45, 32.44751 + 37, 36, 36, 36, 36, 37, 38, 37, 38, 34, 35, 36, 38, 38, 37, 34, 32.44752 + 33, 32, 32, 32, 32, 32, 33, 33, 34, 32, 33, 34, 35, 35, 35, 35, 32.44753 + 35, 35, 38, 42, 39, 39, 40, 44, 49, 57, 60, 66, 76, 82, 85, 95, 32.44754 + 103, 90, 88, 84, 82, 79, 80, 81, 81, 80, 73, 66, 61, 60, 58, 57, 32.44755 + 54, 49, 47, 47, 48, 47, 47, 46, 47, 44, 45, 46, 47, 46, 45, 44, 32.44756 + 44, 55, 59, 69, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44757 + 255, 255, 255, 255, 62, 59, 54, 45, 37, 40, 39, 38, 37, 36, 36, 34, 32.44758 + 34, 34, 35, 37, 38, 39, 38, 34, 33, 32, 31, 31, 31, 31, 32, 33, 32.44759 + 34, 32, 32, 33, 34, 35, 35, 35, 35, 34, 38, 42, 43, 42, 43, 46, 32.44760 + 51, 53, 57, 66, 74, 80, 83, 88, 94, 88, 86, 83, 80, 78, 77, 76, 32.44761 + 75, 74, 68, 60, 54, 53, 54, 56, 55, 51, 48, 48, 49, 49, 47, 47, 32.44762 + 48, 44, 44, 46, 49, 51, 51, 48, 45, 48, 53, 66, 73, 255, 255, 255, 32.44763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 65, 62, 51, 32.44764 + 41, 42, 39, 37, 37, 38, 40, 38, 37, 37, 35, 33, 36, 40, 42, 38, 32.44765 + 36, 35, 34, 33, 31, 31, 30, 30, 30, 31, 31, 31, 32, 33, 36, 38, 32.44766 + 40, 38, 41, 43, 42, 40, 40, 42, 46, 47, 50, 56, 62, 67, 75, 82, 32.44767 + 89, 89, 85, 82, 77, 75, 74, 72, 72, 72, 63, 58, 60, 59, 52, 50, 32.44768 + 52, 44, 45, 45, 45, 45, 45, 45, 45, 45, 47, 48, 48, 46, 48, 52, 32.44769 + 57, 60, 63, 74, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44770 + 255, 255, 255, 255, 255, 255, 66, 56, 47, 47, 44, 40, 38, 37, 36, 33, 32.44771 + 31, 32, 31, 31, 34, 38, 39, 35, 33, 34, 33, 32, 31, 30, 30, 30, 32.44772 + 31, 31, 31, 31, 32, 33, 36, 38, 40, 38, 41, 43, 42, 40, 40, 42, 32.44773 + 45, 50, 52, 56, 58, 63, 69, 78, 84, 85, 83, 80, 77, 76, 73, 73, 32.44774 + 72, 72, 63, 58, 58, 56, 50, 48, 49, 49, 48, 47, 46, 45, 44, 43, 32.44775 + 42, 41, 44, 47, 47, 47, 52, 61, 69, 77, 84, 103, 255, 255, 255, 255, 32.44776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 58, 32.44777 + 48, 49, 46, 42, 39, 37, 35, 30, 28, 29, 29, 31, 34, 38, 39, 35, 32.44778 + 33, 33, 32, 31, 31, 31, 31, 31, 32, 31, 31, 31, 32, 33, 36, 38, 32.44779 + 40, 39, 40, 41, 41, 40, 40, 41, 43, 51, 51, 54, 54, 58, 63, 72, 32.44780 + 77, 76, 75, 74, 71, 70, 67, 66, 64, 67, 60, 54, 53, 51, 47, 44, 32.44781 + 44, 49, 48, 48, 47, 46, 45, 44, 43, 37, 41, 45, 44, 44, 49, 61, 32.44782 + 71, 70, 78, 152, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44783 + 255, 255, 255, 255, 255, 255, 255, 189, 45, 49, 46, 42, 40, 38, 36, 31, 32.44784 + 29, 28, 30, 33, 36, 39, 39, 36, 34, 35, 34, 33, 33, 33, 33, 34, 32.44785 + 34, 31, 31, 31, 32, 33, 36, 38, 40, 37, 38, 38, 38, 38, 38, 38, 32.44786 + 40, 44, 47, 49, 53, 55, 59, 64, 67, 68, 66, 67, 64, 62, 57, 55, 32.44787 + 52, 59, 54, 49, 48, 47, 44, 42, 41, 45, 45, 45, 46, 47, 47, 48, 32.44788 + 48, 41, 46, 50, 48, 44, 46, 56, 65, 58, 132, 255, 255, 255, 255, 255, 32.44789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44790 + 255, 188, 50, 46, 44, 41, 38, 31, 28, 27, 30, 32, 35, 36, 36, 34, 32.44791 + 34, 38, 37, 37, 36, 36, 36, 36, 37, 31, 31, 31, 32, 33, 36, 38, 32.44792 + 40, 37, 37, 36, 36, 36, 36, 36, 36, 38, 43, 50, 57, 61, 62, 64, 32.44793 + 64, 67, 64, 65, 61, 58, 54, 52, 48, 52, 50, 48, 45, 46, 45, 44, 32.44794 + 41, 44, 44, 45, 45, 46, 47, 48, 48, 46, 51, 55, 53, 49, 49, 55, 32.44795 + 62, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 53, 49, 44, 39, 31, 32.44797 + 26, 26, 29, 30, 31, 31, 31, 30, 32, 42, 41, 40, 38, 37, 37, 37, 32.44798 + 37, 31, 31, 31, 32, 33, 36, 38, 40, 37, 36, 35, 35, 36, 35, 35, 32.44799 + 34, 36, 44, 53, 63, 67, 67, 67, 65, 70, 67, 66, 63, 61, 57, 56, 32.44800 + 54, 51, 50, 48, 46, 45, 49, 48, 45, 46, 46, 45, 45, 45, 44, 44, 32.44801 + 44, 40, 43, 46, 48, 48, 52, 58, 63, 255, 255, 255, 255, 255, 255, 255, 32.44802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44803 + 255, 255, 255, 189, 53, 48, 42, 34, 29, 28, 30, 30, 29, 27, 27, 28, 32.44804 + 31, 44, 42, 41, 39, 37, 36, 36, 36, 31, 31, 31, 32, 33, 36, 38, 32.44805 + 40, 40, 39, 37, 36, 38, 38, 36, 34, 38, 45, 54, 62, 66, 66, 66, 32.44806 + 65, 63, 62, 60, 58, 58, 59, 60, 60, 50, 50, 48, 42, 43, 48, 46, 32.44807 + 42, 44, 44, 44, 44, 44, 43, 43, 43, 39, 38, 38, 41, 48, 57, 66, 32.44808 + 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 52, 47, 39, 32.44810 + 35, 32, 32, 32, 30, 27, 28, 30, 34, 44, 43, 41, 38, 36, 36, 35, 32.44811 + 35, 32, 31, 31, 32, 33, 36, 36, 40, 42, 41, 38, 37, 39, 40, 37, 32.44812 + 35, 39, 44, 51, 57, 61, 62, 62, 61, 55, 51, 50, 50, 52, 54, 58, 32.44813 + 60, 47, 49, 44, 39, 39, 43, 41, 36, 39, 40, 41, 42, 43, 45, 46, 32.44814 + 47, 50, 46, 42, 44, 54, 67, 77, 255, 255, 255, 255, 255, 255, 255, 255, 32.44815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44816 + 255, 255, 255, 255, 255, 255, 60, 52, 43, 37, 29, 29, 33, 34, 34, 46, 32.44817 + 59, 46, 39, 36, 39, 40, 39, 40, 45, 39, 36, 34, 32, 33, 33, 34, 32.44818 + 37, 36, 36, 36, 36, 36, 36, 37, 39, 34, 39, 43, 46, 54, 60, 61, 32.44819 + 54, 53, 51, 52, 51, 50, 49, 51, 53, 45, 44, 42, 40, 37, 37, 37, 32.44820 + 38, 41, 42, 42, 43, 43, 47, 49, 51, 55, 43, 59, 59, 71, 86, 166, 32.44821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 32.44823 + 41, 43, 37, 34, 35, 36, 38, 51, 64, 50, 43, 39, 40, 41, 37, 37, 32.44824 + 40, 33, 33, 30, 30, 31, 31, 34, 36, 36, 37, 37, 36, 35, 36, 37, 32.44825 + 37, 34, 40, 47, 47, 49, 54, 56, 54, 53, 53, 54, 53, 49, 48, 48, 32.44826 + 50, 45, 43, 41, 38, 37, 37, 37, 40, 43, 42, 41, 40, 40, 46, 51, 32.44827 + 56, 67, 64, 64, 60, 67, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44829 + 255, 255, 255, 255, 255, 255, 61, 59, 53, 38, 41, 50, 58, 60, 54, 52, 32.44830 + 51, 44, 39, 37, 38, 40, 38, 39, 41, 34, 34, 31, 30, 32, 31, 33, 32.44831 + 35, 39, 40, 37, 37, 36, 36, 36, 37, 37, 46, 53, 52, 50, 53, 56, 32.44832 + 55, 54, 54, 55, 54, 50, 46, 45, 45, 43, 42, 40, 37, 36, 37, 37, 32.44833 + 39, 42, 40, 38, 36, 38, 43, 51, 57, 49, 64, 57, 65, 77, 255, 255, 32.44834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63, 32.44836 + 57, 60, 71, 86, 95, 96, 87, 76, 66, 48, 44, 42, 41, 43, 43, 43, 32.44837 + 43, 43, 41, 37, 35, 34, 32, 31, 31, 39, 41, 38, 37, 36, 36, 36, 32.44838 + 37, 38, 44, 49, 48, 48, 53, 54, 51, 49, 51, 53, 52, 48, 44, 42, 32.44839 + 39, 44, 42, 40, 38, 38, 36, 39, 41, 45, 44, 41, 40, 41, 45, 52, 32.44840 + 58, 66, 99, 84, 87, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 91, 94, 91, 92, 93, 87, 32.44843 + 81, 60, 57, 53, 47, 46, 45, 45, 42, 45, 43, 40, 37, 35, 32, 31, 32.44844 + 31, 39, 41, 40, 37, 36, 37, 37, 38, 37, 36, 37, 38, 45, 50, 49, 32.44845 + 42, 42, 44, 47, 48, 45, 42, 39, 39, 44, 42, 41, 37, 37, 37, 39, 32.44846 + 42, 46, 47, 46, 46, 47, 52, 57, 62, 82, 126, 113, 110, 255, 255, 255, 32.44847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44849 + 255, 255, 255, 255, 255, 255, 201, 86, 74, 55, 54, 48, 42, 41, 47, 49, 32.44850 + 47, 43, 41, 40, 38, 36, 33, 33, 32, 38, 40, 40, 40, 38, 38, 39, 32.44851 + 40, 43, 39, 35, 38, 47, 54, 52, 40, 37, 40, 43, 43, 41, 40, 38, 32.44852 + 39, 41, 40, 37, 36, 35, 36, 37, 41, 43, 44, 44, 44, 48, 55, 63, 32.44853 + 69, 84, 125, 129, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44856 + 255, 190, 59, 50, 42, 42, 52, 56, 54, 47, 45, 44, 42, 39, 37, 33, 32.44857 + 35, 39, 40, 39, 39, 39, 40, 41, 42, 47, 45, 42, 42, 47, 52, 50, 32.44858 + 43, 38, 40, 41, 41, 39, 39, 38, 40, 38, 37, 34, 33, 32, 33, 34, 32.44859 + 38, 45, 46, 44, 47, 53, 65, 80, 91, 121, 146, 190, 255, 255, 255, 255, 32.44860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 57, 52, 56, 57, 32.44863 + 53, 56, 54, 51, 48, 44, 39, 35, 34, 38, 39, 39, 39, 39, 41, 42, 32.44864 + 43, 43, 44, 42, 38, 39, 42, 42, 37, 40, 41, 42, 41, 38, 38, 38, 32.44865 + 40, 36, 34, 33, 30, 30, 31, 33, 37, 60, 59, 56, 57, 68, 85, 106, 32.44866 + 119, 145, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44869 + 255, 255, 255, 255, 255, 60, 57, 59, 61, 53, 55, 54, 50, 43, 39, 39, 32.44870 + 40, 42, 42, 41, 40, 39, 41, 42, 43, 44, 43, 43, 41, 42, 41, 42, 32.44871 + 42, 43, 42, 41, 40, 40, 39, 38, 38, 41, 37, 36, 34, 34, 34, 35, 32.44872 + 40, 48, 69, 59, 64, 77, 85, 109, 119, 152, 255, 255, 255, 255, 255, 255, 32.44873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 63, 32.44876 + 65, 62, 61, 61, 54, 49, 45, 43, 44, 41, 40, 39, 38, 38, 37, 38, 32.44877 + 39, 45, 44, 43, 41, 42, 42, 43, 43, 42, 41, 41, 40, 40, 39, 39, 32.44878 + 39, 37, 37, 38, 39, 40, 42, 45, 49, 56, 73, 60, 67, 91, 110, 146, 32.44879 + 166, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44882 + 255, 255, 255, 255, 255, 255, 255, 255, 196, 77, 75, 72, 64, 59, 55, 52, 32.44883 + 53, 48, 45, 43, 41, 41, 40, 40, 41, 42, 41, 39, 39, 40, 41, 41, 32.44884 + 42, 41, 39, 39, 39, 40, 40, 41, 41, 38, 39, 43, 45, 48, 50, 53, 32.44885 + 57, 59, 83, 80, 96, 121, 137, 194, 255, 255, 255, 255, 255, 255, 255, 255, 32.44886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44889 + 255, 255, 84, 80, 71, 66, 61, 59, 58, 54, 52, 50, 46, 45, 42, 43, 32.44890 + 42, 39, 38, 35, 34, 34, 37, 38, 39, 38, 38, 39, 39, 41, 41, 42, 32.44891 + 43, 41, 43, 46, 49, 51, 53, 54, 57, 86, 115, 118, 138, 163, 199, 255, 32.44892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 76, 72, 67, 64, 32.44896 + 59, 59, 54, 52, 47, 44, 41, 41, 40, 40, 38, 35, 33, 33, 34, 38, 32.44897 + 38, 37, 37, 37, 39, 42, 43, 45, 47, 42, 44, 47, 52, 56, 61, 63, 32.44898 + 68, 87, 113, 112, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44902 + 255, 255, 255, 255, 255, 255, 198, 77, 73, 67, 63, 59, 54, 50, 48, 45, 32.44903 + 44, 46, 43, 40, 36, 36, 37, 41, 40, 36, 34, 37, 39, 42, 44, 48, 32.44904 + 49, 49, 51, 58, 66, 74, 83, 91, 98, 122, 147, 186, 255, 255, 255, 255, 32.44905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44909 + 199, 77, 71, 67, 61, 57, 54, 51, 51, 50, 47, 42, 38, 37, 38, 39, 32.44910 + 40, 33, 34, 37, 39, 43, 45, 49, 52, 54, 58, 66, 76, 90, 103, 116, 32.44911 + 125, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 75, 70, 64, 59, 55, 53, 32.44916 + 51, 53, 48, 45, 40, 38, 39, 41, 41, 38, 39, 41, 43, 48, 51, 54, 32.44917 + 57, 57, 60, 68, 80, 95, 111, 168, 255, 255, 255, 255, 255, 255, 255, 255, 32.44918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44922 + 255, 255, 255, 196, 77, 73, 69, 64, 62, 59, 58, 56, 50, 48, 51, 51, 32.44923 + 51, 53, 55, 50, 46, 51, 63, 75, 79, 88, 90, 152, 255, 255, 255, 255, 32.44924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 71, 32.44929 + 72, 72, 71, 67, 61, 61, 64, 64, 62, 64, 66, 70, 76, 81, 88, 96, 32.44930 + 102, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 70, 75, 81, 81, 32.44936 + 76, 73, 75, 82, 95, 102, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44942 + 255, 255, 255, 255, 130, 128, 139, 141, 127, 141, 134, 150, 164, 137, 139, 169, 32.44943 + 150, 152, 169, 174, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 112, 116, 138, 124, 131, 138, 32.44949 + 140, 151, 144, 141, 145, 128, 129, 155, 145, 157, 171, 174, 162, 194, 190, 186, 32.44950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 150, 89, 105, 32.44955 + 74, 79, 98, 93, 127, 123, 131, 128, 124, 98, 95, 85, 86, 76, 75, 94, 32.44956 + 88, 93, 108, 119, 122, 173, 183, 182, 175, 206, 255, 255, 255, 255, 255, 255, 32.44957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44961 + 255, 255, 205, 93, 83, 62, 50, 55, 59, 59, 74, 78, 93, 87, 113, 92, 32.44962 + 63, 45, 40, 49, 57, 51, 51, 57, 59, 68, 51, 85, 87, 108, 152, 148, 32.44963 + 159, 162, 183, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44967 + 255, 255, 255, 255, 255, 255, 255, 255, 199, 54, 42, 40, 40, 32, 35, 44, 32.44968 + 45, 44, 50, 55, 66, 66, 81, 65, 39, 41, 38, 48, 57, 50, 46, 48, 32.44969 + 46, 47, 32, 53, 47, 65, 99, 99, 127, 161, 189, 179, 212, 255, 255, 255, 32.44970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 81, 32.44974 + 78, 40, 36, 40, 40, 37, 47, 56, 51, 50, 44, 54, 55, 60, 58, 55, 32.44975 + 35, 45, 44, 56, 66, 61, 58, 59, 55, 60, 53, 63, 52, 70, 90, 95, 32.44976 + 142, 149, 183, 177, 190, 177, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44980 + 255, 255, 230, 171, 151, 104, 63, 42, 38, 45, 50, 56, 49, 37, 43, 51, 32.44981 + 45, 46, 35, 50, 45, 49, 33, 43, 32, 42, 38, 46, 51, 45, 45, 47, 32.44982 + 42, 36, 40, 43, 33, 44, 45, 45, 98, 127, 166, 166, 184, 177, 184, 189, 32.44983 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44986 + 255, 255, 255, 255, 255, 255, 255, 255, 229, 159, 145, 139, 112, 66, 36, 42, 32.44987 + 46, 41, 51, 59, 46, 26, 27, 37, 33, 39, 29, 49, 40, 40, 21, 36, 32.44988 + 34, 46, 37, 37, 33, 24, 26, 30, 24, 35, 47, 46, 38, 40, 22, 12, 32.44989 + 51, 61, 105, 113, 142, 149, 163, 167, 169, 178, 255, 255, 255, 255, 255, 255, 32.44990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 168, 32.44993 + 180, 173, 142, 131, 96, 52, 24, 41, 42, 50, 55, 62, 49, 26, 22, 30, 32.44994 + 32, 31, 27, 41, 41, 36, 29, 39, 38, 41, 34, 31, 27, 20, 27, 34, 32.44995 + 26, 26, 38, 40, 41, 42, 26, 17, 32, 59, 100, 110, 144, 159, 175, 170, 32.44996 + 164, 159, 181, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.44999 + 255, 255, 255, 255, 224, 181, 169, 170, 169, 119, 81, 81, 64, 49, 39, 64, 32.45000 + 57, 44, 38, 41, 37, 21, 16, 24, 29, 24, 23, 28, 39, 34, 45, 44, 32.45001 + 35, 34, 31, 31, 30, 25, 32, 35, 23, 28, 35, 36, 44, 51, 51, 54, 32.45002 + 52, 53, 84, 83, 115, 138, 166, 165, 157, 163, 184, 175, 209, 255, 255, 255, 32.45003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 183, 206, 185, 163, 32.45006 + 143, 89, 44, 47, 40, 41, 35, 56, 37, 30, 17, 18, 26, 22, 23, 34, 32.45007 + 41, 40, 40, 36, 57, 54, 79, 67, 52, 60, 57, 60, 58, 49, 49, 43, 32.45008 + 25, 21, 19, 16, 25, 33, 46, 58, 43, 38, 60, 49, 81, 117, 165, 179, 32.45009 + 177, 159, 176, 161, 163, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45012 + 255, 255, 158, 152, 164, 152, 140, 136, 101, 55, 48, 38, 36, 36, 36, 30, 32.45013 + 24, 14, 24, 34, 39, 43, 50, 59, 66, 66, 86, 93, 108, 110, 105, 107, 32.45014 + 92, 107, 91, 100, 78, 93, 87, 77, 65, 62, 42, 46, 36, 38, 52, 46, 32.45015 + 63, 56, 55, 56, 62, 82, 111, 132, 139, 171, 186, 180, 173, 182, 178, 196, 32.45016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45018 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 157, 160, 164, 174, 158, 142, 131, 32.45019 + 92, 52, 47, 42, 39, 35, 28, 20, 13, 10, 20, 28, 32, 36, 45, 54, 32.45020 + 60, 65, 83, 89, 104, 106, 99, 102, 89, 94, 88, 92, 83, 76, 80, 59, 32.45021 + 56, 47, 41, 50, 36, 36, 53, 46, 52, 61, 57, 50, 53, 73, 109, 141, 32.45022 + 158, 166, 185, 179, 169, 180, 181, 170, 200, 255, 255, 255, 255, 255, 255, 255, 32.45023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 32.45025 + 178, 180, 183, 166, 146, 113, 90, 82, 48, 35, 38, 40, 42, 38, 33, 26, 32.45026 + 21, 40, 49, 56, 59, 65, 76, 85, 88, 85, 103, 107, 119, 121, 115, 118, 32.45027 + 105, 104, 109, 108, 112, 92, 107, 81, 87, 65, 68, 71, 46, 39, 54, 52, 32.45028 + 48, 64, 64, 61, 56, 58, 69, 80, 86, 130, 159, 163, 158, 180, 193, 189, 32.45029 + 189, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45031 + 255, 255, 255, 255, 255, 255, 227, 199, 186, 180, 185, 151, 109, 71, 53, 54, 32.45032 + 32, 29, 35, 41, 43, 42, 39, 37, 37, 55, 63, 68, 71, 79, 92, 101, 32.45033 + 101, 94, 110, 111, 121, 123, 117, 121, 109, 112, 112, 113, 111, 98, 110, 91, 32.45034 + 95, 92, 92, 83, 57, 44, 50, 55, 57, 39, 47, 53, 53, 50, 47, 45, 32.45035 + 43, 73, 112, 123, 123, 152, 173, 169, 166, 178, 184, 255, 255, 255, 255, 255, 32.45036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 176, 194, 32.45038 + 175, 176, 185, 149, 104, 68, 49, 46, 30, 38, 41, 44, 43, 39, 39, 42, 32.45039 + 45, 55, 63, 68, 70, 80, 97, 104, 100, 101, 114, 113, 121, 121, 116, 121, 32.45040 + 111, 120, 107, 113, 91, 98, 96, 90, 86, 93, 89, 76, 65, 51, 41, 47, 32.45041 + 54, 51, 52, 51, 49, 47, 49, 54, 60, 75, 114, 128, 130, 158, 177, 171, 32.45042 + 166, 178, 160, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45044 + 255, 255, 255, 255, 255, 160, 167, 187, 166, 162, 167, 123, 81, 57, 41, 43, 32.45045 + 38, 37, 38, 39, 39, 41, 45, 54, 62, 66, 75, 79, 83, 95, 114, 118, 32.45046 + 110, 108, 121, 118, 122, 121, 116, 124, 114, 124, 108, 117, 93, 111, 109, 112, 32.45047 + 109, 96, 96, 84, 84, 68, 43, 41, 40, 65, 63, 59, 57, 53, 49, 51, 32.45048 + 56, 45, 80, 93, 102, 138, 163, 167, 174, 172, 163, 153, 255, 255, 255, 255, 32.45049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 141, 145, 161, 32.45051 + 134, 100, 103, 64, 42, 43, 39, 49, 57, 37, 37, 37, 40, 46, 57, 69, 32.45052 + 77, 72, 82, 87, 90, 104, 125, 127, 115, 109, 119, 114, 117, 116, 111, 119, 32.45053 + 110, 113, 107, 114, 103, 108, 118, 118, 124, 106, 116, 104, 105, 92, 70, 67, 32.45054 + 52, 42, 45, 51, 61, 64, 58, 51, 50, 43, 65, 68, 77, 116, 147, 166, 32.45055 + 188, 194, 192, 200, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45057 + 255, 255, 255, 190, 191, 170, 157, 149, 105, 62, 72, 45, 40, 49, 34, 28, 32.45058 + 30, 48, 46, 43, 45, 51, 61, 71, 77, 80, 90, 98, 101, 117, 137, 138, 32.45059 + 124, 125, 136, 128, 131, 129, 125, 133, 124, 122, 126, 125, 124, 105, 123, 111, 32.45060 + 124, 104, 125, 112, 111, 108, 103, 108, 84, 50, 49, 52, 59, 61, 52, 44, 32.45061 + 40, 60, 67, 53, 49, 78, 104, 126, 156, 160, 166, 199, 160, 255, 255, 255, 32.45062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 194, 185, 162, 170, 169, 32.45064 + 102, 70, 68, 50, 39, 53, 36, 51, 23, 35, 45, 45, 45, 57, 65, 70, 32.45065 + 78, 73, 81, 103, 102, 110, 128, 126, 131, 126, 126, 123, 123, 123, 124, 125, 32.45066 + 127, 129, 127, 125, 123, 122, 123, 124, 124, 112, 112, 112, 112, 114, 110, 94, 32.45067 + 78, 42, 43, 47, 46, 44, 52, 56, 45, 62, 65, 54, 56, 80, 97, 121, 32.45068 + 163, 161, 165, 195, 153, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45070 + 255, 255, 172, 180, 167, 138, 141, 138, 95, 38, 39, 32, 43, 49, 31, 44, 32.45071 + 35, 40, 52, 55, 55, 68, 75, 77, 83, 82, 87, 105, 104, 112, 130, 124, 32.45072 + 127, 126, 126, 126, 126, 126, 126, 127, 128, 129, 128, 125, 124, 124, 123, 123, 32.45073 + 125, 126, 123, 118, 117, 120, 124, 120, 113, 80, 74, 68, 57, 45, 53, 63, 32.45074 + 59, 55, 60, 51, 47, 56, 58, 75, 110, 107, 132, 180, 150, 157, 255, 255, 32.45075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 153, 158, 125, 77, 63, 49, 32.45077 + 26, 22, 27, 25, 51, 41, 23, 24, 33, 40, 53, 58, 59, 72, 78, 79, 32.45078 + 83, 87, 89, 105, 103, 113, 132, 125, 125, 126, 126, 128, 128, 128, 128, 128, 32.45079 + 127, 129, 128, 126, 126, 124, 124, 125, 125, 130, 130, 126, 122, 126, 134, 137, 32.45080 + 137, 111, 100, 87, 65, 44, 47, 63, 67, 58, 63, 59, 53, 50, 42, 50, 32.45081 + 78, 77, 118, 176, 164, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45083 + 255, 172, 172, 173, 123, 71, 62, 49, 38, 28, 35, 31, 52, 31, 25, 17, 32.45084 + 30, 41, 55, 57, 61, 73, 79, 81, 85, 87, 88, 103, 102, 113, 132, 126, 32.45085 + 125, 124, 125, 128, 129, 129, 129, 127, 127, 131, 130, 128, 127, 127, 126, 126, 32.45086 + 126, 120, 126, 128, 128, 128, 131, 132, 130, 114, 106, 94, 72, 43, 40, 52, 32.45087 + 57, 58, 58, 58, 59, 56, 50, 58, 76, 78, 114, 168, 180, 175, 201, 255, 32.45088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45089 + 255, 255, 255, 255, 255, 255, 255, 255, 238, 172, 178, 155, 83, 34, 38, 41, 32.45090 + 30, 33, 39, 35, 40, 24, 40, 29, 37, 52, 64, 65, 66, 78, 85, 88, 32.45091 + 94, 92, 93, 106, 103, 115, 133, 125, 124, 122, 125, 125, 127, 129, 128, 127, 32.45092 + 126, 130, 130, 130, 129, 129, 128, 127, 126, 115, 123, 129, 129, 127, 128, 129, 32.45093 + 126, 114, 108, 107, 92, 64, 49, 48, 46, 46, 36, 35, 42, 44, 47, 57, 32.45094 + 66, 68, 85, 124, 165, 167, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45096 + 186, 184, 190, 128, 49, 7, 16, 41, 26, 39, 38, 39, 29, 23, 41, 33, 32.45097 + 36, 57, 68, 69, 69, 80, 87, 90, 95, 102, 103, 114, 109, 116, 131, 124, 32.45098 + 124, 124, 125, 125, 127, 127, 128, 128, 128, 130, 131, 131, 132, 130, 130, 129, 32.45099 + 128, 125, 130, 130, 129, 129, 134, 138, 137, 124, 119, 123, 120, 97, 75, 61, 32.45100 + 49, 47, 27, 23, 31, 32, 39, 50, 53, 53, 57, 75, 124, 129, 166, 255, 32.45101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45102 + 255, 255, 255, 255, 255, 255, 255, 145, 166, 155, 163, 79, 26, 4, 8, 52, 32.45103 + 35, 40, 28, 43, 28, 30, 31, 26, 33, 54, 67, 69, 70, 80, 86, 85, 32.45104 + 89, 104, 106, 120, 111, 115, 130, 124, 125, 125, 125, 126, 127, 126, 129, 129, 32.45105 + 131, 130, 132, 133, 133, 133, 131, 129, 128, 130, 133, 132, 129, 132, 137, 140, 32.45106 + 138, 127, 119, 123, 129, 115, 94, 76, 61, 53, 31, 30, 35, 28, 35, 51, 32.45107 + 51, 51, 59, 57, 93, 89, 150, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 144, 32.45109 + 164, 160, 165, 69, 37, 21, 3, 46, 23, 32, 11, 41, 31, 40, 25, 22, 32.45110 + 42, 54, 67, 71, 72, 83, 86, 83, 86, 98, 103, 117, 110, 111, 128, 123, 32.45111 + 128, 127, 127, 127, 126, 128, 130, 132, 134, 132, 132, 133, 134, 134, 133, 131, 32.45112 + 130, 129, 132, 131, 131, 133, 135, 132, 126, 121, 108, 112, 121, 115, 101, 84, 32.45113 + 68, 52, 31, 32, 38, 26, 32, 50, 53, 54, 74, 62, 84, 72, 150, 255, 32.45114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45115 + 255, 255, 255, 255, 255, 255, 188, 163, 176, 118, 136, 27, 37, 32, 35, 30, 32.45116 + 39, 36, 26, 50, 39, 44, 23, 25, 37, 67, 77, 85, 91, 90, 88, 85, 32.45117 + 83, 101, 101, 104, 110, 109, 110, 119, 132, 127, 127, 126, 127, 129, 132, 133, 32.45118 + 135, 129, 134, 137, 138, 135, 134, 133, 136, 128, 134, 135, 130, 127, 129, 132, 32.45119 + 131, 129, 128, 127, 121, 112, 104, 100, 100, 80, 53, 53, 52, 32, 23, 40, 32.45120 + 45, 44, 67, 65, 68, 67, 129, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.45121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 157, 32.45122 + 163, 113, 115, 27, 22, 29, 36, 33, 46, 57, 34, 44, 32, 46, 35, 31, 32.45123 + 36, 62, 75, 84, 89, 91, 96, 98, 94, 101, 101, 107, 116, 117, 115, 118, 32.45124 + 126, 123, 123, 123, 124, 127, 129, 131, 133, 134, 134, 133, 131, 130, 133, 139, 32.45125 + 144, 135, 139, 138, 133, 129, 130, 131, 129, 128, 127, 128, 124, 118, 114, 113, 32.45126 + 114, 99, 76, 72, 65, 38, 25, 38, 47, 37, 62, 60, 56, 58, 122, 167, 32.45127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45128 + 255, 255, 255, 255, 255, 231, 188, 167, 160, 100, 91, 39, 18, 35, 39, 29, 32.45129 + 44, 55, 35, 44, 33, 40, 34, 29, 35, 60, 74, 82, 82, 85, 97, 101, 32.45130 + 95, 102, 100, 104, 111, 114, 116, 119, 124, 125, 126, 126, 127, 129, 132, 134, 32.45131 + 135, 137, 136, 134, 132, 131, 134, 138, 143, 138, 141, 141, 134, 131, 133, 132, 32.45132 + 131, 129, 128, 126, 121, 114, 109, 107, 110, 106, 89, 80, 71, 39, 26, 31, 32.45133 + 41, 38, 57, 57, 50, 52, 106, 128, 255, 255, 255, 255, 255, 255, 255, 255, 32.45134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 161, 135, 32.45135 + 114, 62, 53, 50, 22, 46, 42, 26, 41, 33, 36, 57, 47, 35, 26, 27, 32.45136 + 45, 71, 84, 89, 80, 79, 91, 94, 88, 101, 97, 93, 95, 103, 112, 120, 32.45137 + 126, 127, 126, 128, 129, 131, 134, 135, 138, 135, 137, 139, 140, 139, 138, 136, 32.45138 + 134, 135, 138, 137, 134, 132, 137, 137, 135, 132, 131, 127, 121, 114, 109, 108, 32.45139 + 110, 108, 98, 84, 83, 56, 44, 34, 42, 48, 55, 59, 57, 56, 84, 110, 32.45140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45141 + 255, 255, 255, 255, 255, 168, 163, 116, 78, 21, 19, 48, 20, 44, 39, 29, 32.45142 + 49, 28, 40, 61, 55, 35, 37, 41, 67, 89, 99, 98, 87, 83, 89, 92, 32.45143 + 86, 92, 91, 91, 94, 102, 113, 120, 123, 123, 123, 125, 126, 127, 129, 132, 32.45144 + 134, 134, 136, 138, 141, 141, 141, 139, 138, 135, 136, 136, 133, 132, 136, 137, 32.45145 + 133, 132, 132, 131, 127, 124, 123, 124, 126, 118, 113, 94, 104, 85, 78, 49, 32.45146 + 48, 50, 45, 59, 67, 63, 64, 96, 165, 255, 255, 255, 255, 255, 255, 255, 32.45147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 180, 161, 94, 32.45148 + 53, 25, 23, 48, 22, 35, 31, 32, 52, 41, 40, 44, 43, 36, 58, 59, 32.45149 + 82, 93, 96, 95, 89, 84, 86, 89, 89, 84, 92, 101, 108, 115, 121, 122, 32.45150 + 120, 125, 125, 125, 128, 129, 131, 134, 135, 138, 136, 134, 134, 139, 143, 148, 32.45151 + 150, 138, 139, 136, 131, 132, 134, 132, 129, 129, 131, 129, 126, 122, 118, 118, 32.45152 + 119, 118, 120, 96, 112, 97, 91, 48, 43, 44, 34, 56, 67, 65, 53, 88, 32.45153 + 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45154 + 255, 255, 255, 255, 183, 190, 163, 90, 62, 37, 34, 42, 27, 29, 27, 33, 32.45155 + 45, 47, 40, 35, 41, 40, 74, 72, 89, 91, 88, 89, 90, 87, 84, 88, 32.45156 + 96, 86, 100, 113, 120, 122, 125, 124, 121, 128, 128, 128, 130, 132, 134, 136, 32.45157 + 138, 141, 138, 134, 135, 140, 144, 148, 149, 139, 139, 135, 131, 133, 135, 133, 32.45158 + 129, 131, 133, 131, 127, 121, 115, 111, 110, 112, 122, 95, 112, 95, 92, 41, 32.45159 + 40, 42, 35, 58, 59, 64, 55, 85, 99, 160, 255, 255, 255, 255, 255, 255, 32.45160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 157, 161, 127, 57, 32.45161 + 43, 24, 25, 24, 24, 26, 28, 36, 39, 45, 44, 44, 53, 49, 83, 79, 32.45162 + 97, 93, 86, 87, 96, 94, 89, 94, 106, 93, 107, 118, 120, 120, 124, 127, 32.45163 + 126, 125, 126, 126, 127, 129, 132, 135, 135, 143, 140, 140, 143, 145, 145, 141, 32.45164 + 137, 136, 136, 134, 132, 134, 140, 138, 135, 135, 137, 139, 138, 133, 129, 127, 32.45165 + 127, 115, 131, 103, 119, 99, 97, 46, 50, 44, 43, 62, 52, 61, 59, 84, 32.45166 + 79, 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45167 + 255, 255, 255, 136, 137, 146, 94, 31, 26, 26, 24, 23, 24, 27, 34, 37, 32.45168 + 38, 40, 24, 21, 40, 61, 72, 79, 87, 86, 85, 84, 84, 91, 99, 101, 32.45169 + 98, 109, 111, 119, 127, 126, 123, 126, 134, 134, 130, 132, 136, 135, 131, 133, 32.45170 + 140, 138, 139, 139, 140, 141, 142, 143, 143, 141, 138, 138, 143, 141, 134, 130, 32.45171 + 133, 134, 134, 133, 129, 126, 126, 128, 131, 123, 138, 113, 136, 115, 105, 45, 32.45172 + 46, 49, 48, 46, 70, 58, 71, 61, 58, 106, 148, 255, 255, 255, 255, 255, 32.45173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 133, 136, 144, 89, 42, 32.45174 + 34, 32, 29, 25, 25, 27, 32, 36, 38, 33, 20, 19, 38, 58, 67, 73, 32.45175 + 79, 78, 81, 84, 86, 90, 99, 104, 101, 104, 112, 123, 127, 126, 125, 129, 32.45176 + 134, 138, 134, 132, 134, 132, 130, 133, 140, 134, 134, 135, 135, 136, 137, 139, 32.45177 + 140, 144, 141, 141, 144, 143, 136, 134, 137, 137, 137, 135, 130, 124, 123, 126, 32.45178 + 130, 126, 128, 116, 115, 115, 86, 45, 35, 40, 42, 45, 66, 55, 67, 61, 32.45179 + 59, 108, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45180 + 255, 255, 231, 137, 139, 141, 78, 47, 34, 35, 33, 29, 27, 28, 32, 35, 32.45181 + 37, 29, 22, 27, 47, 67, 77, 82, 87, 90, 95, 99, 97, 97, 101, 105, 32.45182 + 104, 104, 118, 131, 131, 127, 132, 134, 132, 139, 136, 135, 135, 134, 134, 138, 32.45183 + 144, 135, 135, 134, 134, 136, 137, 139, 141, 150, 147, 146, 147, 146, 141, 139, 32.45184 + 140, 134, 135, 134, 128, 120, 118, 123, 129, 139, 131, 138, 119, 137, 88, 63, 32.45185 + 37, 32, 38, 46, 61, 50, 62, 64, 63, 101, 97, 157, 255, 255, 255, 255, 32.45186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 132, 133, 130, 64, 49, 32.45187 + 34, 33, 33, 33, 33, 33, 34, 35, 36, 38, 34, 42, 59, 74, 81, 83, 32.45188 + 85, 90, 98, 104, 102, 98, 101, 106, 109, 108, 123, 131, 128, 131, 141, 138, 32.45189 + 128, 138, 138, 138, 139, 138, 138, 141, 144, 140, 141, 139, 139, 140, 142, 145, 32.45190 + 147, 149, 149, 150, 150, 149, 144, 141, 140, 148, 151, 150, 144, 135, 133, 138, 32.45191 + 144, 125, 118, 134, 117, 135, 86, 59, 24, 30, 39, 50, 55, 46, 59, 71, 32.45192 + 71, 90, 87, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45193 + 255, 255, 173, 116, 116, 115, 56, 50, 41, 27, 32, 36, 38, 36, 35, 35, 32.45194 + 34, 46, 45, 52, 62, 69, 70, 69, 68, 78, 89, 97, 95, 92, 98, 106, 32.45195 + 112, 114, 123, 127, 127, 136, 151, 149, 134, 142, 145, 147, 145, 143, 142, 141, 32.45196 + 142, 145, 146, 145, 145, 145, 146, 148, 149, 142, 147, 151, 152, 152, 148, 144, 32.45197 + 139, 130, 133, 131, 126, 117, 113, 115, 118, 113, 109, 115, 117, 116, 92, 60, 32.45198 + 28, 33, 43, 55, 47, 42, 56, 79, 79, 88, 82, 73, 255, 255, 255, 255, 32.45199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 169, 117, 104, 100, 52, 44, 32.45200 + 45, 26, 31, 37, 40, 37, 35, 34, 33, 39, 43, 50, 59, 67, 70, 72, 32.45201 + 73, 93, 100, 104, 99, 94, 97, 104, 109, 119, 122, 124, 127, 139, 154, 155, 32.45202 + 145, 149, 153, 155, 152, 149, 149, 148, 147, 146, 147, 147, 146, 147, 146, 145, 32.45203 + 145, 145, 151, 153, 152, 150, 147, 141, 135, 135, 135, 134, 130, 124, 119, 116, 32.45204 + 117, 119, 112, 105, 118, 103, 105, 75, 47, 37, 45, 59, 42, 41, 55, 82, 32.45205 + 79, 91, 86, 68, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45206 + 255, 148, 171, 126, 94, 84, 47, 33, 46, 30, 34, 38, 38, 33, 31, 32, 32.45207 + 34, 30, 37, 46, 57, 66, 76, 83, 86, 100, 104, 103, 95, 90, 93, 98, 32.45208 + 101, 114, 114, 114, 115, 120, 127, 133, 136, 135, 139, 140, 136, 137, 143, 148, 32.45209 + 149, 144, 146, 147, 147, 145, 143, 141, 140, 147, 149, 145, 135, 126, 121, 113, 32.45210 + 105, 94, 93, 95, 96, 98, 98, 93, 90, 102, 93, 91, 105, 91, 96, 71, 32.45211 + 38, 34, 45, 61, 38, 42, 53, 81, 70, 92, 91, 68, 83, 255, 255, 255, 32.45212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 159, 121, 79, 69, 43, 26, 32.45213 + 49, 35, 38, 38, 35, 29, 28, 30, 34, 35, 41, 48, 54, 60, 69, 78, 32.45214 + 82, 74, 78, 79, 75, 74, 82, 90, 95, 100, 99, 97, 95, 90, 88, 98, 32.45215 + 108, 105, 110, 110, 109, 114, 128, 140, 143, 145, 147, 148, 149, 147, 144, 139, 32.45216 + 138, 142, 140, 128, 109, 93, 84, 73, 64, 52, 53, 58, 66, 75, 78, 76, 32.45217 + 72, 90, 81, 93, 104, 98, 94, 69, 27, 31, 43, 62, 36, 42, 52, 77, 32.45218 + 63, 89, 92, 67, 77, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45219 + 216, 138, 158, 129, 75, 69, 31, 38, 44, 38, 39, 38, 32, 25, 26, 33, 32.45220 + 40, 43, 45, 60, 42, 72, 69, 70, 85, 72, 79, 89, 68, 73, 98, 83, 32.45221 + 94, 98, 104, 93, 99, 98, 99, 91, 102, 127, 104, 106, 121, 114, 126, 144, 32.45222 + 149, 152, 148, 148, 158, 139, 146, 129, 150, 132, 148, 125, 96, 89, 88, 81, 32.45223 + 63, 60, 48, 66, 60, 75, 87, 59, 79, 76, 98, 81, 92, 106, 91, 73, 32.45224 + 33, 31, 44, 67, 44, 44, 48, 77, 70, 88, 84, 81, 68, 98, 255, 255, 32.45225 + 255, 255, 255, 255, 255, 255, 255, 255, 115, 113, 131, 100, 55, 58, 32, 43, 32.45226 + 53, 37, 37, 33, 30, 26, 27, 28, 30, 42, 38, 56, 58, 76, 73, 60, 32.45227 + 65, 83, 82, 69, 77, 102, 128, 151, 163, 172, 183, 153, 124, 72, 79, 87, 32.45228 + 116, 97, 90, 105, 105, 105, 110, 122, 106, 126, 111, 129, 115, 141, 138, 125, 32.45229 + 108, 130, 106, 106, 116, 112, 131, 148, 121, 88, 57, 58, 76, 95, 90, 69, 32.45230 + 87, 83, 102, 100, 91, 78, 75, 78, 66, 42, 43, 54, 45, 43, 49, 71, 32.45231 + 73, 98, 91, 84, 64, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 32.45232 + 124, 123, 134, 92, 50, 55, 35, 43, 52, 35, 33, 30, 29, 27, 26, 24, 32.45233 + 22, 35, 31, 55, 72, 59, 58, 50, 64, 85, 106, 111, 140, 140, 99, 94, 32.45234 + 71, 65, 84, 57, 61, 29, 91, 95, 102, 105, 112, 125, 89, 94, 100, 117, 32.45235 + 86, 94, 78, 99, 89, 107, 101, 106, 115, 102, 126, 159, 170, 162, 154, 132, 32.45236 + 99, 56, 58, 73, 118, 136, 117, 110, 109, 88, 79, 98, 113, 125, 133, 92, 32.45237 + 38, 58, 41, 36, 49, 42, 51, 64, 77, 101, 95, 92, 70, 74, 130, 255, 32.45238 + 255, 255, 255, 255, 255, 255, 255, 167, 144, 147, 151, 98, 61, 61, 43, 40, 32.45239 + 47, 30, 32, 32, 31, 27, 24, 22, 22, 34, 35, 62, 79, 33, 38, 50, 32.45240 + 88, 125, 122, 105, 76, 43, 11, 38, 43, 143, 196, 186, 182, 95, 158, 153, 32.45241 + 148, 135, 150, 157, 85, 86, 84, 98, 54, 15, 12, 29, 47, 12, 13, 46, 32.45242 + 134, 147, 146, 61, 7, 97, 183, 184, 195, 116, 150, 151, 168, 155, 143, 182, 32.45243 + 179, 160, 76, 44, 44, 89, 154, 127, 70, 69, 39, 23, 53, 45, 55, 60, 32.45244 + 81, 94, 91, 97, 85, 87, 69, 255, 255, 255, 255, 255, 255, 255, 255, 154, 32.45245 + 140, 145, 147, 91, 64, 66, 53, 42, 48, 27, 34, 37, 32, 23, 19, 25, 32.45246 + 32, 50, 45, 64, 73, 25, 32, 50, 93, 131, 117, 127, 71, 42, 36, 56, 32.45247 + 62, 140, 200, 195, 190, 88, 167, 163, 140, 120, 150, 166, 99, 103, 94, 100, 32.45248 + 57, 8, 14, 35, 51, 12, 18, 55, 144, 138, 135, 54, 1, 108, 198, 178, 32.45249 + 184, 135, 170, 171, 187, 156, 132, 182, 183, 138, 79, 72, 69, 91, 137, 114, 32.45250 + 70, 70, 36, 19, 55, 51, 60, 61, 80, 89, 86, 95, 88, 95, 75, 255, 32.45251 + 255, 255, 255, 255, 255, 255, 216, 140, 134, 136, 138, 80, 63, 64, 56, 42, 32.45252 + 49, 33, 39, 39, 31, 18, 16, 27, 40, 59, 43, 48, 47, 27, 32, 34, 32.45253 + 58, 89, 57, 74, 17, 13, 32, 55, 51, 181, 227, 222, 219, 123, 205, 182, 32.45254 + 118, 143, 164, 160, 94, 80, 55, 50, 27, 22, 23, 52, 28, 35, 30, 36, 32.45255 + 40, 51, 49, 59, 61, 125, 199, 206, 215, 136, 138, 151, 203, 174, 120, 145, 32.45256 + 147, 108, 87, 82, 63, 54, 77, 82, 68, 57, 31, 25, 52, 57, 63, 66, 32.45257 + 74, 91, 85, 88, 78, 89, 75, 255, 255, 255, 255, 255, 255, 255, 141, 138, 32.45258 + 130, 132, 133, 72, 60, 58, 54, 37, 47, 45, 45, 37, 25, 14, 15, 27, 32.45259 + 40, 51, 36, 35, 18, 27, 24, 17, 29, 33, 8, 31, 10, 25, 32, 70, 32.45260 + 53, 157, 218, 244, 234, 114, 173, 156, 86, 81, 96, 88, 57, 50, 39, 48, 32.45261 + 63, 104, 106, 127, 95, 108, 104, 74, 32, 34, 8, 18, 33, 109, 198, 203, 32.45262 + 208, 158, 125, 121, 159, 122, 66, 83, 90, 59, 65, 50, 36, 31, 35, 46, 32.45263 + 32, 37, 24, 35, 47, 61, 63, 72, 65, 86, 84, 86, 70, 82, 73, 146, 32.45264 + 255, 255, 255, 255, 255, 221, 142, 132, 121, 123, 124, 60, 53, 51, 51, 36, 32.45265 + 51, 55, 49, 36, 22, 12, 16, 28, 39, 43, 37, 38, 5, 24, 16, 14, 32.45266 + 30, 32, 13, 25, 20, 28, 10, 80, 66, 176, 213, 230, 222, 124, 188, 166, 32.45267 + 74, 82, 94, 85, 75, 60, 35, 29, 56, 102, 115, 120, 118, 97, 105, 60, 32.45268 + 43, 22, 46, 46, 25, 111, 196, 190, 222, 146, 125, 140, 166, 125, 80, 86, 32.45269 + 83, 44, 66, 45, 42, 45, 40, 53, 38, 24, 19, 41, 43, 63, 63, 76, 32.45270 + 59, 75, 82, 88, 72, 83, 75, 90, 255, 255, 255, 255, 255, 158, 182, 145, 32.45271 + 145, 153, 130, 70, 42, 57, 39, 22, 51, 51, 43, 36, 32, 32, 31, 26, 32.45272 + 20, 20, 10, 11, 28, 41, 39, 34, 35, 45, 38, 44, 23, 22, 18, 40, 32.45273 + 36, 132, 182, 188, 190, 90, 111, 70, 35, 29, 18, 30, 43, 44, 30, 30, 32.45274 + 73, 133, 144, 126, 134, 136, 141, 74, 24, 16, 36, 26, 53, 47, 100, 106, 32.45275 + 124, 117, 74, 65, 67, 40, 34, 50, 49, 31, 25, 38, 39, 22, 24, 31, 32.45276 + 16, 34, 26, 38, 52, 51, 52, 63, 68, 77, 72, 72, 96, 68, 74, 88, 32.45277 + 255, 255, 255, 255, 255, 162, 190, 156, 149, 138, 116, 63, 31, 37, 33, 19, 32.45278 + 29, 40, 35, 29, 28, 30, 30, 25, 21, 16, 13, 19, 36, 42, 32, 25, 32.45279 + 25, 30, 16, 24, 14, 20, 18, 35, 28, 49, 69, 87, 87, 34, 45, 43, 32.45280 + 30, 34, 24, 29, 25, 24, 19, 17, 50, 110, 119, 118, 138, 138, 143, 81, 32.45281 + 17, 21, 26, 11, 38, 21, 45, 43, 67, 47, 26, 39, 54, 39, 36, 46, 32.45282 + 38, 36, 17, 13, 16, 26, 61, 82, 66, 47, 29, 30, 42, 45, 48, 57, 32.45283 + 56, 68, 66, 82, 108, 73, 73, 90, 255, 255, 255, 255, 224, 136, 156, 116, 32.45284 + 94, 98, 77, 42, 19, 25, 41, 41, 34, 31, 28, 26, 27, 28, 27, 23, 32.45285 + 20, 20, 23, 33, 50, 56, 52, 52, 57, 30, 7, 12, 12, 25, 16, 26, 32.45286 + 19, 16, 16, 56, 61, 51, 28, 41, 30, 26, 22, 22, 8, 11, 20, 25, 32.45287 + 53, 110, 112, 129, 154, 145, 148, 95, 19, 32, 25, 14, 46, 26, 30, 27, 32.45288 + 59, 56, 42, 46, 43, 26, 33, 46, 39, 16, 18, 27, 22, 24, 64, 89, 32.45289 + 74, 63, 34, 24, 32, 37, 44, 48, 42, 53, 53, 84, 110, 70, 64, 83, 32.45290 + 255, 255, 255, 255, 175, 150, 173, 128, 95, 98, 65, 41, 27, 23, 35, 39, 32.45291 + 23, 29, 28, 28, 28, 26, 25, 20, 18, 22, 23, 30, 43, 54, 59, 66, 32.45292 + 75, 46, 16, 19, 19, 29, 14, 22, 17, 23, 20, 61, 66, 71, 35, 38, 32.45293 + 21, 24, 19, 22, 11, 13, 23, 35, 71, 109, 100, 127, 143, 123, 128, 99, 32.45294 + 23, 19, 16, 13, 42, 29, 30, 29, 59, 78, 71, 61, 38, 17, 29, 45, 32.45295 + 39, 8, 25, 41, 31, 28, 68, 90, 65, 73, 41, 26, 32, 36, 41, 42, 32.45296 + 35, 60, 54, 87, 108, 73, 66, 87, 255, 255, 255, 255, 169, 150, 168, 112, 32.45297 + 79, 88, 46, 33, 36, 26, 28, 33, 23, 23, 24, 25, 25, 23, 21, 20, 32.45298 + 20, 41, 39, 41, 51, 61, 66, 68, 70, 51, 25, 27, 22, 28, 13, 27, 32.45299 + 29, 27, 25, 39, 39, 41, 32, 34, 25, 32, 24, 28, 21, 17, 15, 29, 32.45300 + 77, 114, 100, 129, 132, 106, 118, 119, 56, 13, 19, 18, 30, 20, 25, 24, 32.45301 + 36, 37, 46, 48, 30, 20, 30, 36, 26, 31, 29, 25, 17, 38, 99, 120, 32.45302 + 83, 76, 48, 36, 42, 41, 42, 41, 34, 51, 39, 61, 76, 61, 59, 80, 32.45303 + 255, 255, 255, 255, 143, 129, 131, 61, 41, 57, 24, 20, 34, 29, 26, 32, 32.45304 + 30, 14, 18, 21, 21, 19, 19, 21, 24, 50, 51, 58, 68, 77, 79, 74, 32.45305 + 67, 42, 23, 26, 18, 22, 14, 34, 37, 25, 29, 27, 25, 26, 34, 32, 32.45306 + 28, 29, 19, 23, 20, 16, 13, 29, 80, 131, 114, 140, 130, 107, 120, 134, 32.45307 + 82, 15, 25, 23, 19, 13, 20, 18, 16, 23, 38, 39, 27, 24, 31, 29, 32.45308 + 19, 35, 31, 26, 17, 37, 97, 118, 81, 77, 54, 44, 49, 48, 46, 42, 32.45309 + 34, 34, 22, 33, 39, 51, 50, 68, 255, 255, 255, 255, 138, 134, 126, 56, 32.45310 + 60, 47, 32, 29, 33, 27, 22, 20, 16, 15, 19, 22, 21, 17, 17, 21, 32.45311 + 27, 36, 44, 55, 65, 71, 72, 70, 66, 40, 25, 29, 16, 19, 16, 36, 32.45312 + 33, 18, 21, 22, 20, 28, 24, 20, 19, 24, 17, 17, 9, 14, 27, 44, 32.45313 + 84, 120, 105, 130, 119, 110, 117, 127, 74, 12, 17, 16, 9, 11, 16, 13, 32.45314 + 7, 37, 47, 39, 25, 25, 31, 28, 23, 24, 27, 32, 28, 42, 90, 105, 32.45315 + 70, 83, 57, 46, 52, 51, 49, 42, 32, 36, 34, 35, 33, 65, 58, 69, 32.45316 + 255, 255, 255, 255, 118, 111, 87, 13, 33, 21, 26, 30, 30, 33, 38, 37, 32.45317 + 30, 22, 26, 27, 24, 18, 17, 21, 27, 48, 57, 66, 69, 68, 70, 74, 32.45318 + 77, 49, 35, 35, 17, 20, 17, 32, 21, 25, 16, 17, 9, 32, 15, 25, 32.45319 + 33, 31, 26, 19, 1, 12, 40, 53, 80, 105, 96, 125, 120, 129, 134, 136, 32.45320 + 82, 30, 27, 26, 23, 26, 25, 23, 18, 14, 26, 24, 20, 29, 33, 26, 32.45321 + 23, 29, 15, 12, 23, 60, 121, 131, 86, 87, 57, 43, 50, 52, 51, 43, 32.45322 + 29, 26, 33, 31, 22, 61, 48, 51, 255, 255, 255, 255, 154, 163, 90, 23, 32.45323 + 32, 23, 26, 31, 38, 41, 38, 35, 34, 30, 27, 25, 24, 19, 19, 25, 32.45324 + 34, 57, 60, 65, 71, 76, 79, 81, 82, 63, 56, 56, 23, 14, 29, 11, 32.45325 + 8, 20, 25, 29, 29, 28, 25, 21, 17, 19, 26, 15, 27, 27, 65, 72, 32.45326 + 80, 94, 89, 105, 110, 117, 122, 104, 103, 71, 76, 17, 12, 32, 24, 33, 32.45327 + 17, 20, 21, 30, 34, 26, 27, 32, 27, 13, 21, 43, 42, 103, 120, 138, 32.45328 + 76, 85, 54, 33, 34, 38, 45, 42, 27, 25, 26, 34, 44, 49, 53, 61, 32.45329 + 255, 255, 255, 255, 163, 166, 91, 29, 28, 25, 25, 30, 39, 40, 33, 30, 32.45330 + 30, 28, 26, 24, 24, 20, 18, 24, 31, 50, 53, 59, 65, 71, 75, 78, 32.45331 + 78, 83, 73, 68, 37, 23, 29, 15, 16, 14, 19, 24, 25, 21, 14, 11, 32.45332 + 10, 16, 32, 37, 56, 54, 75, 70, 69, 94, 90, 107, 112, 118, 122, 105, 32.45333 + 104, 104, 101, 33, 12, 14, 1, 11, 0, 13, 15, 24, 29, 20, 20, 22, 32.45334 + 16, 30, 48, 81, 85, 131, 129, 133, 65, 85, 51, 30, 36, 41, 45, 40, 32.45335 + 30, 23, 24, 30, 42, 49, 54, 62, 255, 255, 255, 255, 168, 160, 85, 40, 32.45336 + 33, 31, 27, 32, 44, 43, 30, 25, 29, 26, 25, 24, 23, 20, 17, 21, 32.45337 + 28, 48, 51, 58, 66, 73, 77, 80, 81, 81, 70, 66, 42, 24, 17, 6, 32.45338 + 12, 17, 17, 21, 26, 21, 10, 11, 17, 8, 21, 28, 45, 50, 73, 82, 32.45339 + 91, 94, 92, 109, 115, 119, 123, 107, 107, 103, 101, 47, 27, 20, 6, 18, 32.45340 + 12, 15, 14, 24, 28, 21, 22, 26, 22, 27, 48, 82, 91, 129, 127, 139, 32.45341 + 88, 89, 49, 27, 38, 47, 46, 43, 36, 25, 23, 27, 38, 47, 53, 59, 32.45342 + 255, 255, 255, 255, 140, 122, 50, 31, 30, 42, 34, 39, 51, 48, 33, 26, 32.45343 + 31, 24, 22, 23, 24, 20, 16, 19, 25, 49, 52, 58, 66, 73, 77, 80, 32.45344 + 81, 85, 80, 79, 71, 54, 36, 26, 32, 18, 13, 15, 20, 18, 13, 22, 32.45345 + 37, 34, 51, 72, 90, 89, 83, 73, 71, 94, 93, 110, 115, 120, 123, 107, 32.45346 + 110, 117, 119, 90, 73, 53, 26, 22, 11, 16, 14, 22, 25, 21, 30, 42, 32.45347 + 43, 83, 98, 117, 113, 125, 115, 127, 92, 92, 45, 22, 38, 47, 47, 48, 32.45348 + 48, 37, 33, 31, 34, 42, 49, 55, 255, 255, 255, 255, 157, 133, 55, 54, 32.45349 + 60, 48, 41, 44, 52, 48, 34, 27, 31, 24, 23, 22, 23, 19, 15, 17, 32.45350 + 24, 46, 48, 55, 62, 69, 73, 74, 74, 85, 87, 90, 96, 85, 59, 51, 32.45351 + 52, 63, 57, 54, 57, 60, 65, 81, 101, 106, 96, 88, 79, 75, 71, 86, 32.45352 + 100, 96, 94, 112, 114, 118, 122, 108, 111, 108, 118, 122, 130, 122, 106, 105, 32.45353 + 95, 62, 58, 62, 64, 64, 80, 102, 108, 122, 135, 144, 138, 129, 105, 108, 32.45354 + 78, 89, 42, 17, 30, 39, 42, 49, 54, 51, 46, 39, 35, 38, 45, 48, 32.45355 + 255, 255, 255, 255, 158, 134, 41, 39, 47, 49, 47, 46, 48, 43, 34, 28, 32.45356 + 28, 25, 24, 23, 23, 17, 14, 17, 25, 44, 48, 54, 61, 67, 71, 73, 32.45357 + 74, 77, 85, 87, 101, 97, 76, 74, 68, 56, 53, 49, 49, 54, 66, 80, 32.45358 + 91, 101, 89, 91, 85, 86, 68, 75, 82, 101, 99, 114, 113, 116, 120, 109, 32.45359 + 113, 114, 111, 121, 128, 116, 106, 103, 94, 56, 52, 55, 57, 58, 73, 96, 32.45360 + 102, 127, 131, 132, 131, 117, 97, 103, 86, 81, 40, 16, 21, 26, 32, 43, 32.45361 + 50, 57, 54, 46, 39, 37, 41, 44, 255, 255, 255, 255, 144, 135, 39, 36, 32.45362 + 49, 50, 52, 49, 42, 37, 35, 31, 25, 28, 25, 23, 22, 16, 14, 18, 32.45363 + 26, 42, 46, 52, 60, 67, 72, 74, 74, 86, 97, 93, 111, 116, 108, 118, 32.45364 + 110, 122, 127, 126, 122, 126, 137, 141, 135, 145, 112, 93, 69, 71, 55, 75, 32.45365 + 91, 107, 104, 116, 113, 115, 120, 112, 118, 114, 101, 114, 126, 126, 135, 142, 32.45366 + 140, 129, 126, 133, 136, 133, 140, 153, 154, 151, 148, 139, 141, 118, 95, 94, 32.45367 + 79, 75, 43, 23, 20, 19, 25, 36, 40, 48, 52, 50, 44, 40, 42, 43, 32.45368 + 255, 255, 255, 255, 93, 107, 22, 28, 52, 49, 56, 51, 38, 33, 36, 34, 32.45369 + 25, 30, 25, 23, 20, 17, 14, 20, 27, 34, 38, 46, 55, 63, 68, 72, 32.45370 + 73, 88, 100, 92, 109, 122, 125, 146, 138, 125, 136, 137, 132, 134, 143, 135, 32.45371 + 116, 120, 90, 81, 69, 78, 60, 80, 93, 110, 106, 118, 113, 114, 120, 113, 32.45372 + 121, 111, 87, 98, 108, 107, 121, 127, 125, 140, 141, 150, 154, 145, 145, 149, 32.45373 + 144, 133, 139, 142, 158, 135, 101, 82, 56, 75, 50, 34, 26, 19, 25, 33, 32.45374 + 33, 39, 48, 51, 47, 42, 43, 42, 255, 255, 255, 255, 99, 104, 27, 29, 32.45375 + 40, 45, 46, 45, 32, 21, 31, 38, 24, 27, 26, 23, 19, 16, 18, 23, 32.45376 + 27, 34, 29, 48, 61, 71, 75, 65, 74, 85, 95, 90, 101, 113, 124, 146, 32.45377 + 144, 134, 124, 130, 131, 124, 131, 123, 90, 91, 82, 78, 83, 78, 75, 88, 32.45378 + 107, 107, 100, 114, 107, 114, 112, 126, 116, 116, 121, 111, 113, 97, 109, 109, 32.45379 + 121, 123, 127, 134, 142, 145, 143, 140, 139, 140, 135, 136, 131, 103, 110, 80, 32.45380 + 68, 73, 54, 33, 28, 32, 36, 37, 37, 41, 40, 49, 49, 35, 31, 35, 32.45381 + 255, 255, 255, 255, 102, 113, 40, 34, 36, 41, 42, 41, 29, 19, 30, 38, 32.45382 + 25, 27, 25, 23, 19, 17, 19, 25, 27, 34, 28, 47, 60, 70, 74, 65, 32.45383 + 74, 85, 96, 91, 103, 115, 126, 147, 145, 133, 127, 132, 134, 128, 132, 123, 32.45384 + 94, 92, 78, 70, 78, 81, 80, 87, 100, 105, 100, 117, 115, 125, 123, 133, 32.45385 + 118, 121, 125, 113, 113, 94, 104, 102, 113, 127, 130, 134, 143, 147, 147, 142, 32.45386 + 140, 142, 134, 133, 128, 101, 108, 79, 70, 70, 53, 33, 28, 31, 34, 34, 32.45387 + 34, 38, 37, 47, 49, 37, 33, 35, 255, 255, 255, 255, 116, 128, 58, 40, 32.45388 + 31, 37, 37, 36, 26, 19, 32, 40, 28, 28, 26, 23, 19, 18, 20, 25, 32.45389 + 28, 32, 27, 46, 56, 66, 71, 64, 75, 80, 90, 86, 98, 110, 121, 141, 32.45390 + 140, 136, 134, 137, 133, 122, 116, 103, 77, 93, 74, 63, 72, 83, 84, 86, 32.45391 + 90, 96, 92, 116, 122, 138, 137, 142, 123, 121, 124, 111, 112, 94, 103, 101, 32.45392 + 113, 120, 119, 123, 130, 137, 140, 135, 128, 132, 124, 123, 118, 92, 98, 70, 32.45393 + 62, 64, 48, 32, 27, 30, 31, 30, 29, 36, 35, 44, 48, 39, 36, 36, 32.45394 + 255, 255, 255, 255, 121, 129, 65, 43, 30, 34, 33, 32, 23, 18, 33, 42, 32.45395 + 30, 29, 27, 23, 19, 18, 20, 24, 27, 31, 25, 43, 53, 61, 66, 61, 32.45396 + 74, 80, 90, 85, 96, 106, 115, 135, 132, 139, 140, 138, 132, 119, 107, 88, 32.45397 + 70, 71, 54, 42, 49, 58, 59, 57, 57, 77, 78, 107, 119, 143, 142, 145, 32.45398 + 123, 88, 91, 82, 89, 74, 85, 87, 102, 114, 112, 112, 119, 128, 135, 130, 32.45399 + 121, 125, 114, 115, 113, 85, 89, 58, 52, 57, 45, 30, 27, 29, 29, 25, 32.45400 + 25, 35, 34, 44, 50, 41, 38, 36, 255, 255, 255, 255, 121, 121, 65, 44, 32.45401 + 34, 34, 32, 31, 22, 20, 36, 43, 31, 29, 27, 25, 20, 18, 19, 23, 32.45402 + 27, 32, 26, 43, 51, 57, 62, 58, 73, 89, 97, 89, 95, 102, 111, 130, 32.45403 + 126, 135, 138, 135, 129, 123, 110, 92, 80, 82, 69, 59, 61, 64, 61, 58, 32.45404 + 57, 77, 78, 110, 125, 149, 147, 148, 124, 80, 83, 79, 92, 81, 94, 98, 32.45405 + 115, 110, 110, 108, 110, 122, 132, 131, 123, 120, 110, 112, 113, 84, 84, 52, 32.45406 + 46, 52, 40, 28, 27, 28, 28, 24, 25, 37, 37, 46, 50, 41, 38, 37, 32.45407 + 255, 255, 255, 255, 142, 131, 75, 51, 39, 37, 34, 31, 23, 21, 38, 45, 32.45408 + 33, 30, 28, 25, 20, 18, 19, 22, 27, 35, 29, 44, 49, 53, 58, 56, 32.45409 + 72, 91, 97, 85, 88, 94, 101, 119, 117, 127, 129, 118, 108, 108, 94, 73, 32.45410 + 68, 59, 51, 43, 41, 37, 31, 28, 25, 54, 55, 86, 96, 115, 109, 110, 32.45411 + 87, 39, 43, 41, 58, 50, 61, 63, 81, 93, 93, 90, 90, 100, 115, 119, 32.45412 + 114, 112, 99, 101, 103, 77, 76, 45, 41, 48, 38, 28, 26, 28, 27, 27, 32.45413 + 28, 43, 43, 50, 51, 37, 34, 37, 255, 255, 255, 255, 166, 149, 92, 60, 32.45414 + 43, 43, 39, 35, 25, 22, 39, 48, 34, 30, 29, 24, 20, 18, 19, 23, 32.45415 + 26, 38, 31, 45, 48, 51, 56, 55, 72, 89, 93, 78, 79, 84, 91, 110, 32.45416 + 110, 123, 122, 100, 87, 90, 74, 51, 50, 59, 51, 42, 38, 37, 30, 22, 32.45417 + 16, 14, 16, 43, 49, 63, 56, 58, 38, 26, 30, 29, 51, 42, 51, 52, 32.45418 + 69, 77, 79, 76, 72, 81, 100, 110, 109, 103, 87, 88, 91, 67, 69, 43, 32.45419 + 42, 46, 37, 27, 26, 29, 28, 30, 32, 48, 48, 55, 50, 33, 29, 37, 32.45420 + 255, 255, 255, 255, 165, 153, 101, 66, 44, 46, 41, 36, 26, 24, 41, 48, 32.45421 + 34, 31, 29, 24, 20, 18, 19, 23, 27, 39, 33, 45, 48, 50, 54, 53, 32.45422 + 72, 90, 93, 78, 77, 82, 90, 110, 111, 124, 120, 95, 84, 91, 80, 58, 32.45423 + 60, 60, 50, 40, 37, 37, 32, 21, 12, 22, 24, 51, 54, 65, 58, 64, 32.45424 + 46, 20, 24, 26, 48, 40, 48, 49, 66, 81, 84, 81, 75, 83, 104, 116, 32.45425 + 119, 102, 86, 83, 87, 64, 70, 48, 51, 47, 37, 27, 27, 29, 29, 32, 32.45426 + 35, 52, 54, 58, 50, 29, 25, 37, 255, 255, 255, 255, 150, 137, 100, 65, 32.45427 + 38, 40, 38, 31, 25, 29, 40, 45, 43, 33, 28, 23, 19, 18, 17, 17, 32.45428 + 16, 30, 29, 35, 47, 51, 49, 52, 60, 74, 75, 72, 66, 67, 80, 97, 32.45429 + 109, 115, 80, 61, 66, 62, 53, 48, 44, 44, 44, 44, 42, 38, 31, 24, 32.45430 + 18, 11, 25, 24, 41, 38, 42, 25, 33, 37, 29, 35, 52, 51, 40, 44, 32.45431 + 61, 60, 65, 65, 61, 66, 81, 96, 104, 89, 96, 71, 82, 68, 69, 58, 32.45432 + 43, 46, 35, 27, 27, 31, 33, 40, 49, 63, 64, 63, 50, 33, 38, 48, 32.45433 + 255, 255, 255, 255, 140, 117, 84, 58, 31, 33, 31, 27, 21, 23, 32, 38, 32.45434 + 37, 37, 31, 25, 20, 19, 20, 20, 21, 24, 23, 29, 42, 46, 44, 48, 32.45435 + 56, 56, 60, 61, 58, 61, 72, 84, 91, 90, 63, 48, 49, 43, 40, 39, 32.45436 + 34, 43, 41, 37, 35, 33, 34, 36, 37, 38, 44, 28, 30, 19, 28, 27, 32.45437 + 49, 40, 32, 36, 47, 48, 38, 38, 48, 55, 55, 48, 41, 44, 61, 78, 32.45438 + 87, 78, 87, 66, 77, 63, 63, 53, 40, 45, 37, 28, 29, 32, 34, 41, 32.45439 + 49, 64, 61, 58, 50, 37, 41, 121, 255, 255, 255, 255, 143, 103, 74, 62, 32.45440 + 33, 32, 33, 30, 25, 25, 31, 35, 37, 43, 36, 27, 21, 20, 22, 25, 32.45441 + 27, 22, 20, 26, 38, 42, 39, 43, 51, 42, 47, 51, 52, 58, 65, 68, 32.45442 + 68, 69, 53, 44, 38, 30, 32, 37, 29, 29, 31, 33, 34, 34, 34, 34, 32.45443 + 32, 30, 42, 33, 38, 24, 29, 28, 52, 42, 38, 39, 45, 49, 48, 46, 32.45444 + 47, 42, 44, 46, 44, 47, 51, 54, 54, 65, 79, 63, 73, 56, 56, 50, 32.45445 + 39, 45, 37, 30, 29, 32, 36, 42, 49, 66, 58, 52, 49, 43, 45, 255, 32.45446 + 255, 255, 255, 255, 146, 95, 69, 63, 34, 34, 34, 33, 29, 27, 29, 34, 32.45447 + 39, 45, 38, 28, 21, 20, 23, 27, 30, 22, 20, 26, 36, 39, 35, 37, 32.45448 + 46, 41, 45, 49, 52, 57, 62, 59, 54, 53, 50, 49, 39, 28, 34, 38, 32.45449 + 29, 35, 36, 38, 38, 35, 34, 34, 34, 26, 39, 36, 48, 36, 36, 27, 32.45450 + 47, 48, 45, 40, 36, 39, 43, 39, 33, 40, 42, 46, 48, 47, 45, 40, 32.45451 + 35, 61, 77, 64, 73, 53, 52, 47, 39, 41, 35, 29, 28, 32, 36, 42, 32.45452 + 46, 64, 52, 42, 44, 45, 47, 255, 255, 255, 255, 255, 130, 81, 59, 54, 32.45453 + 27, 30, 28, 28, 25, 22, 22, 27, 33, 43, 36, 26, 20, 19, 23, 26, 32.45454 + 28, 23, 21, 25, 33, 34, 28, 30, 37, 43, 46, 49, 49, 52, 54, 51, 32.45455 + 45, 36, 41, 49, 42, 31, 37, 43, 31, 41, 39, 35, 29, 26, 27, 33, 32.45456 + 39, 52, 53, 34, 41, 31, 35, 30, 53, 36, 40, 41, 40, 49, 63, 69, 32.45457 + 68, 52, 47, 38, 33, 29, 31, 36, 41, 60, 77, 63, 71, 50, 47, 43, 32.45458 + 37, 36, 33, 29, 27, 30, 35, 40, 42, 56, 46, 31, 33, 41, 41, 255, 32.45459 + 255, 255, 255, 102, 113, 78, 61, 52, 32, 31, 25, 23, 21, 19, 19, 23, 32.45460 + 30, 38, 33, 26, 21, 21, 22, 24, 24, 22, 19, 22, 30, 29, 23, 23, 32.45461 + 31, 40, 44, 46, 44, 43, 45, 43, 38, 29, 35, 47, 47, 38, 44, 50, 32.45462 + 43, 56, 64, 74, 79, 76, 71, 69, 69, 74, 72, 53, 65, 58, 62, 59, 32.45463 + 83, 68, 72, 69, 59, 51, 49, 49, 51, 50, 46, 41, 37, 31, 28, 33, 32.45464 + 43, 61, 75, 58, 65, 45, 44, 39, 32, 32, 31, 28, 26, 28, 35, 40, 32.45465 + 38, 46, 43, 24, 21, 33, 33, 255, 255, 255, 255, 85, 96, 78, 65, 49, 32.45466 + 37, 36, 27, 20, 20, 19, 19, 24, 30, 34, 31, 26, 24, 24, 24, 24, 32.45467 + 21, 20, 17, 20, 28, 29, 24, 25, 32, 34, 43, 47, 45, 42, 42, 41, 32.45468 + 39, 37, 37, 47, 48, 41, 44, 52, 49, 31, 45, 64, 75, 75, 68, 62, 32.45469 + 60, 46, 54, 47, 67, 61, 59, 52, 76, 52, 61, 70, 68, 56, 48, 51, 32.45470 + 61, 40, 42, 46, 46, 38, 30, 32, 42, 60, 72, 53, 59, 41, 41, 38, 32.45471 + 31, 30, 31, 30, 27, 30, 38, 40, 37, 45, 48, 27, 17, 32, 255, 255, 32.45472 + 255, 255, 255, 68, 78, 68, 55, 35, 27, 38, 25, 16, 17, 19, 19, 23, 32.45473 + 28, 32, 31, 28, 27, 27, 25, 23, 19, 21, 17, 21, 31, 32, 27, 29, 32.45474 + 37, 34, 44, 52, 51, 47, 45, 44, 44, 43, 38, 44, 46, 36, 36, 44, 32.45475 + 44, 51, 55, 60, 62, 62, 68, 77, 86, 110, 119, 112, 128, 116, 111, 108, 32.45476 + 137, 128, 133, 132, 114, 76, 38, 26, 30, 42, 41, 40, 36, 26, 22, 34, 32.45477 + 52, 62, 73, 50, 57, 41, 43, 39, 32, 29, 32, 31, 27, 31, 39, 41, 32.45478 + 38, 49, 56, 34, 21, 35, 255, 255, 255, 255, 209, 79, 77, 60, 45, 32, 32.45479 + 27, 31, 26, 20, 16, 17, 19, 21, 23, 30, 27, 25, 25, 26, 26, 21, 32.45480 + 17, 22, 15, 17, 28, 32, 27, 27, 33, 34, 41, 48, 50, 46, 41, 40, 32.45481 + 41, 31, 42, 47, 52, 47, 47, 38, 31, 31, 64, 77, 88, 94, 103, 119, 32.45482 + 115, 144, 146, 155, 166, 164, 151, 149, 157, 145, 141, 170, 129, 100, 62, 51, 32.45483 + 66, 73, 70, 69, 56, 34, 30, 41, 44, 57, 54, 48, 40, 39, 40, 37, 32.45484 + 30, 27, 33, 36, 30, 27, 33, 42, 48, 61, 67, 41, 23, 33, 255, 255, 32.45485 + 255, 255, 109, 79, 74, 58, 50, 30, 30, 31, 27, 22, 18, 18, 21, 23, 32.45486 + 24, 28, 27, 25, 27, 27, 27, 22, 19, 22, 17, 20, 31, 31, 25, 27, 32.45487 + 34, 35, 41, 48, 50, 46, 43, 43, 45, 54, 66, 76, 78, 73, 69, 60, 32.45488 + 51, 36, 54, 51, 51, 44, 38, 46, 38, 59, 56, 54, 58, 55, 50, 56, 32.45489 + 70, 65, 73, 111, 107, 105, 101, 103, 125, 98, 90, 86, 71, 49, 45, 51, 32.45490 + 51, 54, 51, 44, 37, 36, 38, 33, 28, 27, 32, 32, 27, 28, 36, 45, 32.45491 + 50, 67, 71, 44, 21, 26, 255, 255, 255, 255, 94, 81, 73, 58, 63, 33, 32.45492 + 40, 32, 28, 23, 19, 19, 21, 22, 23, 23, 24, 25, 28, 29, 28, 24, 32.45493 + 21, 22, 19, 23, 30, 28, 23, 25, 33, 34, 39, 45, 47, 45, 45, 46, 32.45494 + 48, 41, 53, 70, 72, 72, 62, 57, 48, 47, 55, 47, 49, 44, 34, 44, 32.45495 + 41, 68, 62, 58, 58, 55, 52, 62, 76, 76, 81, 97, 102, 91, 93, 81, 32.45496 + 94, 100, 89, 81, 70, 51, 47, 51, 48, 49, 46, 40, 33, 32, 34, 31, 32.45497 + 25, 28, 30, 29, 26, 30, 39, 47, 48, 56, 60, 40, 24, 104, 255, 255, 32.45498 + 255, 193, 62, 61, 53, 38, 52, 19, 30, 31, 28, 23, 19, 18, 20, 21, 32.45499 + 21, 19, 21, 24, 28, 29, 29, 25, 23, 22, 23, 27, 30, 26, 21, 24, 32.45500 + 33, 32, 36, 41, 43, 43, 45, 48, 50, 52, 66, 91, 92, 100, 90, 91, 32.45501 + 82, 67, 75, 72, 83, 83, 77, 95, 102, 93, 93, 95, 98, 94, 89, 90, 32.45502 + 96, 72, 79, 81, 99, 94, 110, 98, 106, 81, 67, 59, 55, 45, 44, 48, 32.45503 + 44, 46, 44, 38, 31, 31, 34, 31, 26, 28, 29, 28, 27, 33, 40, 43, 32.45504 + 39, 38, 43, 35, 28, 255, 255, 255, 255, 68, 55, 58, 53, 32, 46, 18, 32.45505 + 28, 29, 26, 22, 19, 18, 19, 20, 20, 17, 20, 24, 28, 29, 28, 25, 32.45506 + 24, 23, 25, 27, 29, 25, 21, 25, 32, 34, 36, 39, 41, 43, 48, 52, 32.45507 + 54, 36, 49, 79, 79, 96, 84, 91, 80, 84, 94, 93, 102, 97, 88, 107, 32.45508 + 117, 119, 124, 130, 134, 130, 123, 117, 119, 112, 115, 98, 110, 100, 109, 97, 32.45509 + 95, 72, 56, 50, 51, 47, 49, 53, 52, 46, 44, 38, 32, 33, 36, 34, 32.45510 + 29, 27, 28, 29, 29, 35, 39, 35, 28, 33, 37, 37, 33, 255, 255, 255, 32.45511 + 255, 72, 61, 60, 62, 33, 38, 24, 29, 27, 25, 22, 20, 20, 21, 22, 32.45512 + 21, 18, 22, 25, 28, 26, 25, 24, 24, 24, 26, 28, 29, 25, 25, 28, 32.45513 + 32, 37, 37, 38, 41, 45, 51, 56, 58, 42, 48, 77, 71, 96, 83, 92, 32.45514 + 80, 82, 95, 92, 95, 91, 87, 108, 114, 120, 124, 128, 128, 124, 119, 117, 32.45515 + 118, 111, 116, 100, 110, 110, 114, 116, 108, 71, 54, 48, 53, 50, 50, 56, 32.45516 + 55, 45, 43, 37, 32, 33, 37, 36, 30, 27, 30, 31, 31, 35, 37, 33, 32.45517 + 25, 35, 36, 39, 111, 255, 255, 255, 255, 48, 46, 37, 51, 18, 15, 20, 32.45518 + 17, 28, 26, 23, 22, 23, 24, 25, 25, 21, 24, 26, 27, 24, 22, 22, 32.45519 + 23, 27, 27, 27, 27, 27, 30, 32, 33, 37, 35, 35, 37, 42, 50, 55, 32.45520 + 58, 41, 40, 66, 56, 88, 75, 87, 71, 76, 85, 75, 76, 78, 87, 108, 32.45521 + 105, 112, 115, 117, 112, 107, 105, 107, 108, 104, 111, 99, 99, 104, 93, 101, 32.45522 + 85, 64, 47, 42, 47, 42, 40, 47, 49, 41, 40, 35, 31, 32, 37, 34, 32.45523 + 29, 28, 32, 33, 32, 33, 37, 35, 32, 30, 30, 36, 255, 255, 255, 255, 32.45524 + 255, 39, 43, 31, 55, 21, 15, 35, 29, 29, 27, 25, 24, 25, 27, 28, 32.45525 + 28, 23, 26, 27, 26, 22, 20, 21, 23, 29, 29, 27, 26, 29, 33, 35, 32.45526 + 33, 34, 32, 31, 32, 38, 45, 51, 54, 44, 40, 64, 53, 89, 76, 91, 32.45527 + 73, 80, 84, 62, 54, 59, 71, 87, 75, 72, 77, 79, 75, 70, 68, 68, 32.45528 + 68, 79, 90, 88, 85, 97, 76, 93, 72, 54, 37, 34, 39, 33, 32, 40, 32.45529 + 43, 39, 38, 32, 28, 30, 35, 33, 29, 32, 35, 34, 31, 32, 37, 40, 32.45530 + 39, 26, 23, 29, 255, 255, 255, 255, 255, 42, 31, 23, 23, 20, 15, 17, 32.45531 + 24, 24, 26, 29, 31, 31, 29, 28, 26, 20, 24, 29, 31, 30, 28, 25, 32.45532 + 24, 28, 28, 27, 28, 29, 30, 31, 33, 33, 28, 25, 26, 34, 40, 42, 32.45533 + 39, 35, 38, 44, 50, 58, 69, 83, 91, 89, 79, 69, 64, 65, 66, 62, 32.45534 + 59, 53, 51, 50, 50, 53, 56, 59, 60, 57, 63, 80, 87, 75, 69, 68, 32.45535 + 65, 50, 35, 38, 36, 36, 36, 24, 34, 36, 33, 27, 27, 29, 33, 34, 32.45536 + 35, 35, 33, 32, 34, 38, 39, 36, 33, 41, 31, 106, 255, 255, 255, 255, 32.45537 + 70, 41, 31, 22, 23, 22, 18, 19, 26, 22, 23, 26, 28, 28, 28, 27, 32.45538 + 26, 21, 25, 28, 30, 28, 27, 25, 25, 31, 31, 30, 31, 31, 32, 33, 32.45539 + 34, 30, 27, 24, 27, 33, 38, 39, 37, 30, 36, 42, 46, 53, 66, 82, 32.45540 + 95, 88, 80, 69, 65, 65, 64, 60, 56, 53, 53, 53, 57, 61, 63, 63, 32.45541 + 60, 69, 69, 81, 86, 77, 73, 70, 62, 49, 35, 38, 34, 36, 37, 26, 32.45542 + 34, 34, 31, 27, 25, 27, 30, 31, 33, 36, 35, 33, 35, 38, 39, 36, 32.45543 + 34, 41, 33, 255, 255, 255, 255, 255, 76, 36, 25, 17, 20, 22, 19, 18, 32.45544 + 24, 20, 20, 22, 23, 23, 25, 26, 26, 24, 26, 28, 28, 27, 26, 26, 32.45545 + 27, 28, 28, 27, 26, 26, 27, 28, 28, 27, 24, 24, 26, 31, 35, 33, 32.45546 + 31, 29, 34, 38, 39, 41, 54, 75, 91, 89, 84, 78, 75, 74, 72, 68, 32.45547 + 65, 61, 60, 61, 68, 73, 75, 71, 66, 71, 67, 74, 79, 72, 69, 63, 32.45548 + 50, 46, 34, 39, 33, 35, 39, 28, 35, 34, 31, 28, 26, 27, 29, 31, 32.45549 + 31, 36, 36, 34, 34, 36, 37, 35, 33, 47, 43, 255, 255, 255, 255, 255, 32.45550 + 64, 37, 24, 15, 19, 22, 20, 19, 23, 18, 18, 18, 18, 19, 22, 25, 32.45551 + 26, 27, 28, 28, 28, 26, 26, 27, 29, 26, 26, 24, 24, 24, 23, 24, 32.45552 + 24, 24, 23, 23, 26, 29, 30, 28, 26, 28, 32, 35, 32, 30, 42, 65, 32.45553 + 84, 88, 86, 85, 85, 84, 82, 79, 77, 75, 72, 71, 74, 81, 82, 77, 32.45554 + 71, 67, 65, 72, 77, 69, 65, 58, 44, 43, 33, 38, 31, 32, 40, 31, 32.45555 + 33, 36, 33, 29, 29, 29, 31, 32, 33, 36, 35, 33, 32, 33, 33, 32, 32.45556 + 31, 50, 52, 255, 255, 255, 255, 255, 53, 45, 28, 16, 19, 24, 23, 20, 32.45557 + 23, 17, 17, 17, 17, 18, 21, 24, 26, 29, 30, 29, 28, 26, 26, 27, 32.45558 + 30, 29, 29, 27, 27, 26, 26, 26, 27, 22, 23, 23, 26, 26, 26, 24, 32.45559 + 21, 26, 31, 32, 29, 28, 40, 63, 81, 84, 85, 86, 87, 83, 79, 77, 32.45560 + 76, 80, 77, 71, 69, 71, 72, 69, 67, 67, 69, 81, 86, 74, 66, 60, 32.45561 + 48, 40, 35, 39, 28, 29, 42, 32, 31, 35, 33, 30, 29, 30, 31, 32, 32.45562 + 33, 34, 34, 33, 32, 32, 32, 33, 35, 48, 117, 255, 255, 255, 255, 255, 32.45563 + 70, 52, 31, 14, 15, 20, 18, 15, 16, 18, 18, 18, 17, 18, 21, 23, 32.45564 + 25, 27, 28, 28, 27, 24, 24, 25, 27, 27, 26, 25, 26, 24, 24, 26, 32.45565 + 26, 24, 24, 25, 26, 24, 23, 21, 20, 25, 29, 30, 29, 30, 43, 63, 32.45566 + 80, 79, 82, 85, 84, 78, 74, 71, 72, 76, 71, 63, 58, 56, 56, 57, 32.45567 + 59, 66, 67, 78, 82, 70, 61, 56, 45, 37, 36, 40, 25, 28, 43, 32, 32.45568 + 27, 31, 29, 27, 27, 29, 30, 30, 31, 33, 34, 35, 36, 37, 40, 44, 32.45569 + 47, 58, 255, 255, 255, 255, 255, 255, 198, 61, 37, 15, 13, 18, 16, 13, 32.45570 + 13, 20, 19, 20, 20, 20, 21, 23, 23, 23, 25, 25, 25, 22, 21, 21, 32.45571 + 22, 23, 23, 22, 23, 22, 24, 25, 25, 27, 27, 27, 26, 23, 22, 21, 32.45572 + 21, 26, 28, 28, 27, 29, 39, 55, 67, 63, 68, 73, 73, 68, 65, 66, 32.45573 + 70, 71, 68, 62, 55, 49, 48, 52, 56, 63, 58, 62, 63, 54, 48, 41, 32.45574 + 29, 36, 37, 41, 23, 25, 42, 32, 24, 28, 27, 26, 27, 29, 32, 32, 32.45575 + 32, 31, 35, 39, 42, 47, 53, 61, 67, 136, 255, 255, 255, 255, 255, 255, 32.45576 + 255, 75, 49, 24, 21, 24, 23, 19, 18, 21, 21, 22, 21, 21, 22, 22, 32.45577 + 21, 19, 21, 23, 21, 20, 17, 18, 18, 25, 25, 26, 25, 26, 28, 28, 32.45578 + 30, 28, 28, 28, 26, 24, 21, 21, 21, 28, 27, 25, 24, 25, 32, 42, 32.45579 + 50, 43, 49, 57, 59, 57, 56, 60, 67, 71, 71, 67, 60, 52, 51, 56, 32.45580 + 61, 66, 54, 51, 51, 44, 41, 34, 20, 36, 39, 42, 23, 24, 42, 32, 32.45581 + 23, 29, 28, 27, 29, 32, 34, 35, 35, 31, 36, 42, 48, 54, 63, 74, 32.45582 + 82, 255, 255, 255, 255, 255, 255, 255, 255, 61, 48, 32, 24, 22, 24, 22, 32.45583 + 19, 22, 23, 24, 25, 25, 23, 19, 19, 19, 18, 18, 18, 18, 19, 20, 32.45584 + 21, 22, 23, 26, 26, 27, 27, 24, 24, 25, 25, 25, 26, 26, 24, 23, 32.45585 + 22, 23, 24, 27, 27, 29, 34, 42, 48, 50, 55, 61, 64, 58, 55, 61, 32.45586 + 73, 69, 69, 69, 67, 66, 63, 62, 62, 56, 54, 51, 49, 44, 40, 33, 32.45587 + 29, 35, 42, 41, 31, 28, 33, 31, 23, 27, 26, 26, 28, 31, 33, 34, 32.45588 + 34, 38, 43, 50, 53, 52, 56, 69, 255, 255, 255, 255, 255, 255, 255, 255, 32.45589 + 255, 66, 54, 37, 29, 28, 28, 24, 20, 18, 19, 22, 24, 24, 24, 23, 32.45590 + 22, 18, 18, 18, 19, 18, 19, 20, 21, 20, 22, 24, 26, 26, 25, 24, 32.45591 + 23, 24, 24, 25, 25, 24, 23, 22, 22, 24, 27, 30, 31, 28, 30, 33, 32.45592 + 36, 32, 40, 51, 58, 59, 57, 64, 76, 81, 80, 76, 72, 69, 66, 63, 32.45593 + 63, 59, 54, 47, 42, 38, 35, 31, 30, 31, 37, 36, 27, 25, 30, 29, 32.45594 + 21, 27, 27, 28, 29, 32, 35, 38, 40, 30, 35, 45, 57, 66, 73, 140, 32.45595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 60, 44, 37, 35, 32, 26, 32.45596 + 20, 18, 19, 21, 23, 24, 23, 23, 22, 18, 18, 19, 20, 19, 19, 21, 32.45597 + 21, 20, 21, 23, 24, 25, 24, 23, 22, 23, 24, 24, 24, 24, 23, 22, 32.45598 + 22, 19, 23, 28, 29, 27, 24, 23, 24, 20, 29, 43, 55, 58, 59, 67, 32.45599 + 77, 84, 81, 76, 69, 65, 62, 60, 59, 61, 55, 44, 36, 31, 30, 28, 32.45600 + 29, 29, 34, 33, 26, 25, 30, 29, 23, 31, 32, 31, 28, 24, 24, 27, 32.45601 + 31, 33, 35, 46, 63, 78, 88, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45602 + 255, 255, 61, 47, 41, 39, 35, 28, 20, 22, 22, 23, 23, 22, 21, 19, 32.45603 + 18, 18, 19, 20, 21, 20, 20, 21, 21, 19, 20, 22, 23, 23, 23, 22, 32.45604 + 22, 22, 22, 23, 23, 23, 23, 22, 21, 18, 22, 27, 29, 29, 27, 28, 32.45605 + 29, 27, 34, 45, 55, 57, 59, 66, 76, 80, 75, 69, 64, 59, 58, 59, 32.45606 + 60, 61, 54, 44, 36, 31, 29, 28, 29, 30, 34, 34, 30, 29, 33, 32, 32.45607 + 28, 30, 32, 32, 28, 22, 21, 25, 31, 39, 39, 46, 59, 68, 136, 255, 32.45608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 45, 41, 39, 36, 28, 32.45609 + 20, 22, 22, 22, 22, 21, 20, 19, 18, 18, 19, 21, 22, 22, 21, 22, 32.45610 + 21, 19, 19, 20, 21, 21, 21, 21, 21, 20, 21, 22, 22, 22, 22, 22, 32.45611 + 21, 24, 28, 31, 32, 33, 34, 36, 40, 37, 39, 45, 52, 54, 56, 64, 32.45612 + 73, 71, 67, 62, 58, 57, 58, 61, 64, 59, 53, 45, 39, 35, 32, 30, 32.45613 + 30, 31, 34, 34, 32, 32, 34, 34, 32, 22, 26, 30, 31, 30, 33, 40, 32.45614 + 47, 39, 39, 42, 46, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45615 + 255, 255, 189, 45, 40, 39, 35, 27, 20, 19, 19, 19, 20, 21, 21, 22, 32.45616 + 22, 18, 20, 22, 24, 23, 22, 22, 22, 18, 18, 19, 19, 19, 20, 20, 32.45617 + 20, 19, 20, 21, 21, 22, 22, 21, 21, 24, 28, 29, 29, 26, 28, 33, 32.45618 + 37, 37, 38, 42, 47, 49, 52, 60, 69, 57, 55, 51, 48, 49, 51, 55, 32.45619 + 58, 54, 49, 44, 39, 36, 35, 33, 31, 30, 31, 31, 31, 31, 31, 31, 32.45620 + 31, 22, 25, 29, 31, 31, 34, 38, 43, 39, 40, 44, 43, 35, 255, 255, 32.45621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 41, 39, 35, 27, 32.45622 + 20, 19, 19, 19, 19, 20, 21, 22, 23, 19, 20, 23, 25, 24, 23, 23, 32.45623 + 22, 18, 18, 18, 18, 18, 19, 19, 20, 18, 19, 20, 21, 21, 21, 21, 32.45624 + 22, 20, 23, 25, 24, 22, 23, 27, 31, 35, 34, 39, 45, 47, 49, 55, 32.45625 + 63, 48, 46, 44, 41, 41, 43, 46, 48, 48, 44, 38, 34, 33, 34, 32, 32.45626 + 34, 30, 30, 30, 31, 30, 30, 29, 30, 27, 28, 29, 30, 29, 28, 27, 32.45627 + 27, 35, 40, 47, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45628 + 255, 255, 255, 255, 43, 40, 35, 27, 20, 23, 22, 21, 20, 19, 19, 19, 32.45629 + 19, 19, 20, 24, 25, 25, 24, 23, 22, 18, 17, 17, 17, 17, 18, 19, 32.45630 + 20, 18, 18, 19, 20, 21, 21, 21, 22, 19, 23, 27, 28, 27, 28, 31, 32.45631 + 34, 33, 35, 40, 47, 49, 48, 52, 58, 50, 48, 45, 44, 41, 42, 43, 32.45632 + 43, 45, 40, 33, 30, 29, 32, 33, 35, 32, 31, 31, 32, 32, 30, 30, 32.45633 + 31, 27, 27, 29, 32, 34, 34, 31, 28, 28, 34, 44, 49, 255, 255, 255, 32.45634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 46, 43, 32, 32.45635 + 22, 25, 22, 20, 20, 21, 23, 23, 22, 22, 20, 20, 23, 26, 28, 27, 32.45636 + 25, 21, 20, 19, 17, 17, 16, 16, 16, 17, 17, 17, 18, 19, 22, 24, 32.45637 + 27, 25, 28, 30, 29, 27, 27, 29, 32, 29, 31, 33, 36, 39, 44, 50, 32.45638 + 54, 53, 50, 47, 44, 42, 43, 43, 44, 44, 37, 34, 38, 36, 32, 30, 32.45639 + 33, 27, 28, 28, 28, 28, 28, 28, 28, 28, 30, 31, 31, 29, 31, 35, 32.45640 + 40, 40, 43, 51, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45641 + 255, 255, 255, 255, 255, 255, 47, 37, 28, 30, 27, 23, 21, 20, 19, 18, 32.45642 + 16, 17, 16, 18, 21, 24, 25, 24, 22, 20, 19, 18, 17, 16, 16, 16, 32.45643 + 17, 17, 17, 17, 18, 19, 22, 24, 27, 25, 28, 30, 29, 27, 27, 29, 32.45644 + 30, 33, 34, 34, 35, 36, 41, 47, 52, 53, 50, 49, 46, 45, 44, 45, 32.45645 + 46, 46, 39, 36, 38, 36, 32, 29, 30, 32, 31, 30, 29, 28, 27, 26, 32.45646 + 25, 24, 27, 30, 30, 30, 35, 44, 52, 57, 64, 80, 255, 255, 255, 255, 32.45647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 39, 32.45648 + 29, 32, 29, 25, 22, 20, 18, 15, 13, 14, 14, 18, 21, 24, 25, 24, 32.45649 + 22, 19, 18, 17, 17, 17, 17, 17, 18, 17, 17, 17, 18, 19, 22, 24, 32.45650 + 27, 26, 27, 28, 28, 27, 27, 28, 28, 34, 33, 32, 31, 31, 34, 41, 32.45651 + 46, 47, 46, 45, 44, 43, 41, 40, 40, 43, 38, 34, 35, 32, 28, 25, 32.45652 + 27, 32, 31, 31, 30, 29, 28, 27, 26, 20, 24, 28, 27, 27, 32, 44, 32.45653 + 54, 50, 58, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45654 + 255, 255, 255, 255, 255, 255, 255, 182, 26, 32, 29, 25, 23, 21, 19, 16, 32.45655 + 14, 13, 15, 20, 23, 25, 25, 25, 23, 21, 20, 19, 19, 19, 19, 20, 32.45656 + 20, 17, 17, 17, 18, 19, 22, 24, 26, 24, 25, 25, 25, 25, 25, 25, 32.45657 + 25, 27, 29, 29, 30, 29, 32, 35, 38, 41, 40, 39, 38, 36, 34, 31, 32.45658 + 30, 37, 34, 31, 30, 28, 27, 25, 24, 28, 28, 28, 29, 30, 30, 31, 32.45659 + 31, 24, 29, 33, 31, 27, 29, 39, 48, 38, 119, 255, 255, 255, 255, 255, 32.45660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45661 + 255, 182, 33, 29, 27, 24, 21, 16, 13, 12, 15, 19, 22, 22, 22, 23, 32.45662 + 23, 24, 23, 23, 22, 22, 22, 22, 23, 17, 17, 17, 18, 19, 22, 24, 32.45663 + 26, 22, 22, 21, 21, 22, 22, 21, 21, 21, 24, 30, 33, 35, 35, 35, 32.45664 + 35, 41, 41, 39, 38, 34, 32, 30, 28, 32, 32, 29, 28, 29, 30, 29, 32.45665 + 26, 27, 27, 28, 28, 29, 30, 31, 31, 29, 34, 38, 36, 32, 32, 38, 32.45666 + 45, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 36, 32, 27, 22, 16, 32.45668 + 11, 11, 14, 17, 18, 17, 17, 19, 21, 28, 27, 26, 24, 23, 23, 23, 32.45669 + 23, 17, 17, 17, 18, 19, 22, 24, 26, 22, 21, 20, 20, 21, 21, 20, 32.45670 + 19, 19, 25, 33, 39, 41, 39, 38, 37, 44, 44, 42, 41, 39, 38, 36, 32.45671 + 36, 33, 33, 31, 29, 30, 34, 33, 30, 29, 29, 28, 28, 28, 27, 27, 32.45672 + 27, 23, 26, 29, 31, 31, 35, 41, 46, 255, 255, 255, 255, 255, 255, 255, 32.45673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45674 + 255, 255, 255, 183, 36, 31, 25, 19, 14, 13, 15, 17, 16, 13, 13, 17, 32.45675 + 20, 30, 28, 27, 25, 23, 22, 22, 22, 17, 17, 17, 18, 19, 22, 24, 32.45676 + 26, 25, 21, 19, 21, 23, 23, 21, 19, 21, 26, 34, 38, 39, 38, 37, 32.45677 + 37, 40, 40, 38, 38, 38, 39, 40, 42, 31, 33, 31, 28, 28, 33, 33, 32.45678 + 27, 27, 27, 27, 27, 27, 26, 26, 26, 22, 21, 21, 24, 31, 40, 49, 32.45679 + 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 35, 30, 24, 32.45681 + 20, 17, 19, 19, 17, 14, 15, 19, 23, 31, 30, 28, 25, 23, 21, 20, 32.45682 + 20, 17, 17, 17, 18, 19, 23, 25, 27, 27, 23, 20, 22, 24, 25, 22, 32.45683 + 20, 22, 25, 31, 35, 34, 34, 34, 35, 31, 32, 30, 30, 32, 36, 40, 32.45684 + 42, 30, 32, 30, 25, 25, 29, 28, 22, 22, 23, 24, 25, 26, 28, 29, 32.45685 + 28, 31, 26, 22, 26, 35, 50, 62, 255, 255, 255, 255, 255, 255, 255, 255, 32.45686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45687 + 255, 255, 255, 255, 255, 255, 43, 37, 29, 23, 18, 18, 22, 23, 24, 33, 32.45688 + 46, 34, 27, 22, 25, 25, 21, 22, 27, 21, 20, 19, 18, 20, 23, 25, 32.45689 + 27, 23, 21, 21, 21, 21, 23, 24, 24, 19, 22, 25, 26, 32, 36, 34, 32.45690 + 30, 31, 33, 34, 33, 32, 33, 34, 36, 28, 27, 25, 23, 23, 23, 23, 32.45691 + 24, 23, 23, 24, 25, 28, 29, 30, 30, 30, 16, 32, 35, 51, 69, 158, 32.45692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 32.45694 + 27, 32, 26, 23, 24, 25, 28, 38, 51, 38, 31, 25, 26, 24, 19, 17, 32.45695 + 20, 15, 15, 15, 16, 18, 22, 26, 27, 23, 22, 22, 21, 22, 23, 24, 32.45696 + 24, 20, 26, 30, 29, 29, 32, 32, 30, 33, 35, 36, 35, 33, 32, 31, 32.45697 + 33, 28, 26, 24, 24, 23, 23, 23, 23, 25, 23, 22, 22, 24, 28, 30, 32.45698 + 31, 38, 32, 32, 32, 45, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45700 + 255, 255, 255, 255, 255, 255, 46, 44, 39, 27, 32, 41, 49, 49, 43, 39, 32.45701 + 38, 32, 27, 23, 24, 23, 20, 19, 21, 16, 16, 16, 16, 19, 22, 25, 32.45702 + 26, 24, 22, 22, 22, 23, 23, 23, 24, 24, 32, 36, 34, 30, 31, 32, 32.45703 + 33, 34, 36, 37, 36, 33, 29, 28, 28, 29, 28, 26, 24, 23, 24, 24, 32.45704 + 25, 24, 21, 19, 18, 20, 23, 27, 30, 17, 31, 24, 33, 51, 255, 255, 32.45705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 32.45707 + 46, 51, 62, 77, 86, 85, 76, 63, 53, 36, 32, 28, 27, 26, 25, 23, 32.45708 + 23, 23, 23, 22, 21, 21, 21, 22, 22, 24, 23, 23, 22, 23, 23, 23, 32.45709 + 24, 25, 31, 32, 30, 28, 31, 30, 29, 29, 33, 35, 34, 31, 27, 25, 32.45710 + 25, 30, 29, 27, 25, 25, 26, 26, 26, 27, 24, 22, 21, 21, 24, 27, 32.45711 + 28, 30, 62, 47, 52, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 81, 85, 82, 81, 82, 77, 32.45714 + 68, 48, 43, 36, 30, 27, 26, 24, 22, 25, 25, 25, 23, 22, 21, 22, 32.45715 + 21, 24, 23, 22, 22, 23, 24, 24, 25, 24, 23, 20, 20, 25, 30, 26, 32.45716 + 19, 22, 26, 29, 30, 28, 25, 25, 25, 29, 29, 28, 26, 26, 28, 28, 32.45717 + 29, 28, 27, 26, 25, 26, 27, 28, 28, 43, 83, 71, 69, 255, 255, 255, 32.45718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45720 + 255, 255, 255, 255, 255, 255, 198, 75, 61, 41, 38, 31, 24, 22, 26, 28, 32.45721 + 26, 22, 22, 22, 23, 23, 22, 23, 22, 23, 22, 22, 22, 23, 25, 26, 32.45722 + 27, 30, 26, 21, 21, 29, 34, 29, 20, 19, 22, 25, 25, 24, 23, 24, 32.45723 + 25, 28, 27, 26, 25, 26, 27, 28, 28, 23, 22, 21, 21, 23, 26, 29, 32.45724 + 30, 39, 77, 79, 139, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45727 + 255, 184, 41, 32, 22, 22, 29, 33, 30, 23, 24, 25, 25, 24, 24, 23, 32.45728 + 22, 22, 21, 22, 22, 24, 25, 28, 29, 34, 32, 28, 25, 28, 33, 30, 32.45729 + 23, 20, 22, 23, 23, 22, 22, 23, 25, 25, 24, 23, 22, 23, 24, 24, 32.45730 + 25, 25, 23, 20, 20, 25, 33, 41, 46, 69, 92, 152, 255, 255, 255, 255, 32.45731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 35, 28, 32, 32, 32.45734 + 28, 31, 31, 31, 29, 27, 24, 22, 19, 21, 20, 20, 22, 24, 26, 29, 32.45735 + 30, 30, 31, 28, 24, 22, 23, 22, 18, 21, 23, 24, 23, 21, 21, 23, 32.45736 + 25, 21, 21, 20, 19, 19, 20, 22, 22, 37, 32, 28, 28, 34, 48, 61, 32.45737 + 69, 88, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45740 + 255, 255, 255, 255, 255, 33, 30, 32, 34, 26, 28, 29, 27, 23, 20, 22, 32.45741 + 23, 23, 23, 22, 23, 25, 27, 29, 30, 31, 30, 28, 26, 25, 24, 23, 32.45742 + 23, 24, 25, 24, 23, 23, 22, 21, 21, 24, 22, 21, 19, 19, 21, 22, 32.45743 + 22, 21, 36, 26, 29, 38, 42, 59, 63, 89, 255, 255, 255, 255, 255, 255, 32.45744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 33, 32.45747 + 35, 32, 33, 33, 30, 25, 23, 23, 24, 21, 20, 19, 19, 21, 23, 25, 32.45748 + 26, 32, 31, 28, 26, 25, 25, 24, 26, 25, 24, 24, 23, 23, 22, 22, 32.45749 + 22, 18, 18, 19, 20, 21, 25, 26, 27, 24, 37, 24, 29, 46, 62, 90, 32.45750 + 103, 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45753 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 44, 43, 40, 36, 31, 28, 28, 32.45754 + 29, 25, 25, 23, 23, 24, 26, 27, 28, 29, 28, 26, 24, 22, 23, 23, 32.45755 + 24, 23, 24, 24, 24, 23, 23, 22, 22, 18, 19, 21, 23, 26, 28, 29, 32.45756 + 30, 23, 42, 39, 52, 71, 84, 153, 255, 255, 255, 255, 255, 255, 255, 255, 32.45757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45760 + 255, 255, 49, 44, 39, 34, 31, 31, 31, 30, 29, 27, 26, 27, 28, 29, 32.45761 + 29, 26, 25, 22, 21, 19, 19, 20, 21, 23, 23, 24, 24, 24, 24, 23, 32.45762 + 23, 19, 19, 20, 21, 23, 24, 25, 25, 45, 69, 72, 89, 108, 160, 255, 32.45763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 41, 36, 34, 32, 32.45767 + 31, 32, 32, 30, 27, 26, 27, 27, 27, 27, 25, 22, 20, 18, 19, 20, 32.45768 + 23, 23, 23, 23, 24, 25, 24, 25, 25, 15, 16, 18, 20, 23, 26, 28, 32.45769 + 28, 41, 61, 60, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45773 + 255, 255, 255, 255, 255, 255, 186, 44, 41, 40, 39, 37, 34, 32, 31, 31, 32.45774 + 31, 33, 30, 27, 23, 21, 22, 23, 25, 22, 23, 23, 24, 24, 25, 25, 32.45775 + 25, 21, 22, 25, 31, 37, 45, 50, 54, 70, 92, 147, 255, 255, 255, 255, 32.45776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45780 + 188, 49, 47, 45, 41, 39, 37, 37, 37, 37, 34, 29, 25, 22, 23, 24, 32.45781 + 26, 22, 23, 23, 24, 25, 26, 26, 25, 25, 26, 31, 38, 49, 61, 72, 32.45782 + 78, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 47, 44, 41, 37, 35, 35, 32.45787 + 34, 36, 34, 28, 23, 21, 20, 22, 24, 20, 21, 22, 22, 23, 24, 24, 32.45788 + 25, 20, 22, 26, 34, 45, 60, 134, 255, 255, 255, 255, 255, 255, 255, 255, 32.45789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45793 + 255, 255, 255, 185, 46, 46, 43, 41, 40, 37, 39, 34, 28, 27, 28, 28, 32.45794 + 25, 24, 24, 20, 14, 15, 24, 32, 34, 37, 38, 115, 255, 255, 255, 255, 32.45795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 44, 32.45800 + 46, 46, 45, 41, 36, 34, 37, 36, 31, 28, 28, 30, 34, 38, 41, 45, 32.45801 + 47, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 43, 47, 53, 50, 32.45807 + 44, 36, 33, 39, 49, 55, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45813 + 255, 255, 255, 255, 120, 118, 129, 131, 118, 130, 124, 140, 154, 127, 129, 159, 32.45814 + 140, 142, 159, 164, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 102, 106, 128, 114, 121, 128, 32.45820 + 131, 140, 134, 131, 135, 118, 119, 145, 135, 147, 161, 164, 152, 184, 180, 176, 32.45821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 142, 78, 94, 32.45826 + 63, 68, 87, 82, 116, 112, 120, 117, 111, 86, 81, 71, 74, 64, 63, 85, 32.45827 + 79, 84, 99, 110, 111, 163, 173, 172, 163, 198, 255, 255, 255, 255, 255, 255, 32.45828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45832 + 255, 255, 201, 83, 73, 53, 41, 45, 49, 48, 63, 67, 82, 74, 100, 79, 32.45833 + 48, 26, 19, 29, 39, 36, 37, 46, 48, 58, 42, 76, 77, 97, 142, 135, 32.45834 + 145, 145, 166, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45838 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 42, 32, 29, 31, 23, 25, 33, 32.45839 + 34, 34, 39, 44, 52, 52, 67, 52, 21, 20, 14, 27, 38, 33, 31, 37, 32.45840 + 35, 37, 23, 43, 38, 55, 88, 86, 111, 142, 168, 160, 200, 255, 255, 255, 32.45841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 65, 32.45845 + 64, 31, 27, 31, 32, 28, 38, 47, 42, 39, 33, 43, 42, 47, 43, 40, 32.45846 + 17, 24, 20, 36, 48, 45, 44, 48, 44, 50, 44, 54, 43, 59, 78, 83, 32.45847 + 127, 130, 162, 159, 172, 163, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45851 + 255, 255, 223, 152, 132, 85, 46, 27, 26, 36, 43, 49, 42, 28, 34, 42, 32.45852 + 34, 36, 23, 38, 30, 33, 17, 24, 12, 20, 16, 26, 32, 30, 32, 36, 32.45853 + 32, 26, 31, 34, 24, 35, 34, 35, 85, 110, 145, 148, 166, 163, 170, 178, 32.45854 + 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45857 + 255, 255, 255, 255, 255, 255, 255, 255, 223, 140, 125, 120, 95, 51, 23, 29, 32.45858 + 37, 36, 47, 54, 41, 19, 18, 28, 23, 27, 16, 33, 23, 22, 3, 16, 32.45859 + 14, 24, 17, 18, 15, 8, 12, 18, 13, 24, 36, 37, 29, 30, 12, 3, 32.45860 + 39, 44, 85, 96, 125, 135, 149, 156, 158, 168, 255, 255, 255, 255, 255, 255, 32.45861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 151, 32.45864 + 162, 154, 125, 114, 81, 39, 11, 30, 32, 46, 52, 58, 44, 19, 13, 21, 32.45865 + 19, 16, 11, 24, 22, 16, 6, 16, 15, 19, 11, 11, 8, 3, 10, 18, 32.45866 + 12, 14, 26, 30, 30, 31, 15, 6, 20, 42, 81, 93, 127, 145, 161, 159, 32.45867 + 152, 149, 170, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45870 + 255, 255, 255, 255, 220, 167, 154, 154, 153, 102, 66, 66, 51, 36, 28, 55, 32.45871 + 49, 41, 35, 37, 32, 12, 7, 12, 13, 5, 3, 5, 15, 8, 19, 18, 32.45872 + 9, 11, 7, 10, 9, 6, 14, 18, 7, 13, 19, 22, 32, 38, 38, 41, 32.45873 + 36, 36, 65, 66, 98, 124, 152, 154, 145, 153, 173, 162, 200, 255, 255, 255, 32.45874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 169, 191, 169, 147, 32.45877 + 128, 74, 29, 34, 27, 30, 25, 46, 30, 26, 13, 13, 17, 11, 9, 18, 32.45878 + 21, 18, 15, 7, 27, 23, 48, 36, 21, 32, 30, 35, 32, 25, 26, 21, 32.45879 + 3, 0, 2, 0, 9, 17, 31, 43, 26, 22, 42, 32, 64, 103, 150, 167, 32.45880 + 164, 148, 164, 147, 149, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45883 + 255, 255, 145, 139, 150, 139, 126, 121, 88, 42, 34, 25, 23, 24, 24, 18, 32.45884 + 14, 7, 17, 25, 27, 27, 30, 37, 39, 37, 54, 58, 72, 75, 67, 69, 32.45885 + 57, 74, 59, 68, 48, 64, 59, 49, 38, 36, 19, 23, 15, 20, 33, 28, 32.45886 + 46, 38, 37, 39, 44, 68, 96, 119, 126, 159, 174, 165, 158, 166, 162, 184, 32.45887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45889 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 146, 147, 150, 159, 145, 127, 118, 32.45890 + 79, 38, 34, 29, 24, 22, 16, 8, 1, 0, 7, 12, 14, 14, 18, 26, 32.45891 + 26, 27, 43, 48, 61, 64, 55, 58, 47, 54, 51, 54, 46, 41, 44, 26, 32.45892 + 23, 15, 12, 23, 9, 13, 30, 25, 32, 41, 38, 33, 34, 58, 93, 128, 32.45893 + 144, 154, 173, 164, 155, 164, 165, 153, 189, 255, 255, 255, 255, 255, 255, 255, 32.45894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.45896 + 170, 168, 169, 154, 133, 101, 78, 69, 35, 20, 23, 26, 26, 22, 17, 10, 32.45897 + 5, 24, 29, 34, 34, 36, 41, 48, 47, 39, 54, 57, 68, 70, 64, 67, 32.45898 + 57, 58, 63, 64, 67, 48, 62, 40, 47, 26, 33, 37, 13, 9, 27, 25, 32.45899 + 24, 43, 44, 42, 36, 42, 52, 66, 71, 117, 147, 148, 144, 164, 178, 173, 32.45900 + 173, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45902 + 255, 255, 255, 255, 255, 255, 224, 191, 178, 168, 170, 139, 96, 59, 41, 41, 32.45903 + 19, 14, 18, 25, 27, 23, 19, 18, 16, 31, 36, 39, 36, 41, 51, 55, 32.45904 + 51, 40, 55, 55, 63, 65, 59, 66, 54, 57, 59, 60, 57, 46, 59, 41, 32.45905 + 46, 45, 48, 44, 19, 9, 18, 24, 28, 18, 26, 33, 33, 33, 29, 29, 32.45906 + 27, 60, 99, 109, 110, 137, 159, 154, 150, 160, 172, 255, 255, 255, 255, 255, 32.45907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 167, 188, 32.45909 + 168, 166, 173, 138, 92, 56, 36, 33, 17, 23, 25, 26, 24, 18, 17, 19, 32.45910 + 18, 24, 29, 32, 30, 36, 47, 50, 41, 41, 51, 49, 57, 57, 52, 59, 32.45911 + 48, 58, 47, 53, 31, 39, 37, 32, 31, 40, 38, 30, 21, 12, 4, 11, 32.45912 + 22, 27, 30, 31, 28, 29, 30, 38, 44, 61, 101, 114, 117, 144, 164, 157, 32.45913 + 152, 160, 141, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45915 + 255, 255, 255, 255, 255, 146, 157, 180, 159, 152, 154, 111, 69, 44, 28, 30, 32.45916 + 23, 21, 21, 20, 17, 17, 21, 28, 31, 29, 34, 36, 35, 43, 56, 57, 32.45917 + 45, 41, 52, 48, 53, 52, 48, 56, 48, 56, 40, 50, 25, 44, 44, 49, 32.45918 + 46, 36, 40, 33, 37, 23, 1, 2, 6, 40, 40, 38, 35, 34, 30, 35, 32.45919 + 40, 31, 67, 79, 89, 124, 151, 155, 160, 153, 142, 137, 255, 255, 255, 255, 32.45920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 127, 135, 154, 32.45922 + 127, 91, 92, 52, 30, 32, 28, 36, 42, 21, 18, 16, 17, 21, 29, 41, 32.45923 + 44, 31, 36, 40, 38, 49, 63, 62, 45, 38, 45, 40, 43, 42, 39, 49, 32.45924 + 40, 41, 35, 43, 31, 38, 48, 49, 57, 43, 57, 49, 54, 46, 26, 26, 32.45925 + 15, 15, 22, 29, 39, 45, 38, 34, 33, 29, 52, 54, 64, 103, 136, 155, 32.45926 + 175, 175, 172, 184, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45928 + 255, 255, 255, 166, 171, 154, 145, 141, 97, 51, 58, 33, 28, 38, 23, 15, 32.45929 + 15, 32, 28, 23, 21, 23, 31, 40, 40, 36, 43, 47, 46, 59, 74, 71, 32.45930 + 55, 53, 62, 53, 56, 54, 51, 62, 53, 48, 52, 51, 50, 31, 52, 41, 32.45931 + 56, 38, 62, 51, 54, 54, 52, 57, 40, 17, 22, 26, 35, 39, 31, 25, 32.45932 + 23, 46, 54, 41, 36, 67, 92, 114, 140, 141, 144, 181, 146, 255, 255, 255, 32.45933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 172, 166, 147, 159, 158, 32.45935 + 92, 56, 52, 36, 24, 40, 22, 37, 8, 19, 28, 23, 20, 29, 33, 36, 32.45936 + 41, 28, 33, 53, 49, 52, 67, 63, 64, 59, 56, 52, 49, 49, 52, 53, 32.45937 + 54, 56, 54, 53, 51, 51, 54, 55, 55, 46, 45, 45, 47, 50, 46, 29, 32.45938 + 20, 0, 8, 14, 16, 17, 29, 38, 29, 48, 53, 43, 44, 67, 82, 106, 32.45939 + 146, 138, 141, 175, 133, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45941 + 255, 255, 149, 160, 149, 123, 129, 127, 84, 23, 23, 18, 28, 36, 17, 30, 32.45942 + 20, 22, 33, 32, 29, 36, 40, 42, 43, 34, 36, 53, 50, 55, 69, 64, 32.45943 + 62, 60, 59, 56, 54, 54, 54, 54, 55, 58, 57, 55, 54, 54, 54, 55, 32.45944 + 56, 59, 56, 50, 47, 51, 54, 50, 50, 30, 33, 29, 22, 16, 27, 43, 32.45945 + 43, 39, 46, 39, 34, 41, 42, 58, 91, 83, 107, 157, 127, 137, 255, 255, 32.45946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 131, 138, 107, 62, 51, 38, 32.45948 + 15, 10, 13, 11, 38, 28, 9, 9, 16, 21, 32, 31, 30, 39, 42, 42, 32.45949 + 41, 38, 36, 51, 48, 54, 70, 62, 60, 60, 59, 58, 58, 58, 58, 58, 32.45950 + 57, 60, 59, 58, 58, 57, 57, 58, 58, 65, 63, 59, 54, 57, 64, 67, 32.45951 + 72, 59, 55, 44, 26, 10, 19, 41, 47, 42, 48, 46, 40, 34, 27, 34, 32.45952 + 60, 55, 94, 153, 141, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45954 + 255, 149, 150, 155, 105, 56, 50, 38, 27, 16, 23, 19, 40, 18, 12, 2, 32.45955 + 11, 21, 31, 30, 28, 39, 41, 41, 40, 36, 32, 47, 42, 52, 71, 61, 32.45956 + 58, 57, 58, 58, 59, 59, 61, 59, 58, 61, 60, 61, 59, 60, 59, 60, 32.45957 + 60, 54, 59, 61, 59, 59, 61, 62, 65, 58, 55, 49, 30, 7, 8, 24, 32.45958 + 33, 38, 41, 43, 43, 40, 34, 42, 57, 56, 90, 145, 157, 155, 188, 255, 32.45959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45960 + 255, 255, 255, 255, 255, 255, 255, 255, 231, 151, 156, 136, 67, 19, 26, 30, 32.45961 + 19, 23, 30, 25, 30, 12, 25, 13, 18, 30, 38, 35, 30, 40, 44, 42, 32.45962 + 45, 37, 32, 46, 40, 50, 67, 58, 56, 55, 55, 58, 60, 61, 61, 60, 32.45963 + 59, 62, 62, 64, 62, 64, 61, 63, 62, 51, 58, 63, 62, 60, 61, 61, 32.45964 + 60, 55, 51, 55, 44, 21, 11, 15, 18, 22, 16, 18, 25, 28, 30, 40, 32.45965 + 47, 45, 61, 101, 142, 147, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45967 + 164, 162, 170, 110, 33, 0, 4, 30, 15, 30, 29, 29, 19, 11, 27, 15, 32.45968 + 16, 33, 39, 35, 30, 38, 42, 41, 44, 44, 40, 51, 44, 49, 63, 55, 32.45969 + 56, 54, 55, 58, 60, 60, 63, 63, 65, 67, 65, 68, 66, 67, 65, 66, 32.45970 + 63, 60, 64, 64, 62, 62, 67, 70, 69, 61, 57, 67, 67, 49, 32, 23, 32.45971 + 16, 17, 3, 3, 13, 13, 21, 34, 35, 31, 32, 51, 101, 109, 146, 255, 32.45972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45973 + 255, 255, 255, 255, 255, 255, 255, 126, 147, 135, 144, 61, 9, 0, 0, 41, 32.45974 + 24, 31, 20, 33, 18, 18, 15, 7, 10, 27, 36, 33, 28, 34, 36, 33, 32.45975 + 34, 42, 40, 54, 44, 46, 60, 55, 57, 58, 58, 59, 60, 62, 66, 69, 32.45976 + 70, 69, 68, 71, 69, 71, 68, 68, 65, 67, 69, 68, 65, 67, 72, 73, 32.45977 + 69, 60, 52, 60, 69, 60, 45, 32, 22, 20, 3, 5, 13, 9, 17, 34, 32.45978 + 33, 29, 34, 35, 72, 69, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 126, 32.45980 + 146, 141, 147, 53, 22, 8, 0, 35, 12, 23, 3, 31, 19, 26, 8, 3, 32.45981 + 18, 25, 33, 32, 30, 35, 33, 31, 27, 34, 37, 50, 43, 43, 58, 55, 32.45982 + 60, 60, 61, 60, 62, 65, 69, 72, 73, 71, 71, 72, 73, 73, 70, 70, 32.45983 + 67, 67, 67, 67, 66, 68, 70, 67, 58, 50, 37, 45, 58, 55, 47, 35, 32.45984 + 23, 13, 0, 5, 14, 5, 12, 33, 34, 32, 48, 40, 62, 51, 130, 255, 32.45985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45986 + 255, 255, 255, 255, 255, 255, 171, 146, 159, 101, 120, 11, 22, 19, 23, 19, 32.45987 + 28, 27, 17, 41, 25, 28, 3, 2, 10, 36, 40, 45, 45, 41, 35, 31, 32.45988 + 24, 38, 35, 37, 43, 41, 42, 52, 65, 60, 60, 62, 65, 69, 72, 76, 32.45989 + 77, 70, 74, 78, 78, 76, 72, 74, 74, 67, 71, 72, 67, 64, 64, 67, 32.45990 + 63, 56, 54, 54, 54, 49, 47, 48, 52, 39, 16, 22, 25, 8, 3, 21, 32.45991 + 26, 22, 44, 43, 46, 46, 109, 228, 255, 255, 255, 255, 255, 255, 255, 255, 32.45992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 140, 32.45993 + 147, 97, 99, 12, 9, 18, 24, 22, 35, 48, 24, 32, 16, 27, 13, 5, 32.45994 + 5, 28, 35, 42, 42, 41, 45, 43, 36, 38, 36, 43, 49, 51, 50, 54, 32.45995 + 62, 59, 59, 61, 64, 67, 71, 75, 76, 79, 79, 78, 74, 73, 75, 81, 32.45996 + 84, 75, 77, 76, 70, 66, 67, 66, 61, 55, 52, 53, 53, 52, 53, 57, 32.45997 + 63, 52, 36, 37, 35, 12, 2, 18, 26, 15, 38, 37, 34, 37, 102, 154, 32.45998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.45999 + 255, 255, 255, 255, 255, 225, 172, 151, 146, 86, 76, 27, 5, 24, 27, 17, 32.46000 + 32, 44, 23, 30, 15, 20, 9, 0, 1, 23, 33, 39, 33, 34, 44, 47, 32.46001 + 39, 42, 39, 43, 49, 53, 53, 57, 62, 63, 66, 66, 68, 72, 76, 78, 32.46002 + 81, 83, 82, 80, 78, 77, 78, 82, 84, 77, 78, 78, 72, 68, 70, 70, 32.46003 + 65, 58, 53, 53, 50, 47, 45, 49, 54, 56, 45, 41, 39, 11, 1, 9, 32.46004 + 18, 16, 33, 34, 28, 31, 86, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.46005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 145, 121, 32.46006 + 99, 47, 40, 37, 8, 34, 30, 14, 29, 20, 21, 41, 28, 13, 0, 0, 32.46007 + 11, 33, 43, 42, 32, 28, 37, 42, 32, 46, 40, 35, 38, 44, 52, 60, 32.46008 + 66, 67, 68, 69, 72, 76, 78, 81, 84, 84, 85, 89, 87, 86, 82, 80, 32.46009 + 77, 76, 77, 77, 71, 71, 74, 75, 69, 62, 57, 53, 50, 45, 43, 48, 32.46010 + 53, 56, 50, 42, 47, 26, 17, 10, 18, 23, 30, 36, 35, 34, 64, 90, 32.46011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46012 + 255, 255, 255, 255, 255, 155, 149, 104, 66, 9, 8, 37, 9, 32, 27, 17, 32.46013 + 35, 13, 22, 41, 31, 10, 6, 7, 30, 47, 54, 51, 37, 32, 36, 40, 32.46014 + 33, 39, 39, 38, 41, 48, 56, 64, 65, 65, 67, 68, 71, 72, 76, 79, 32.46015 + 80, 85, 86, 90, 90, 90, 87, 83, 80, 77, 77, 75, 70, 71, 75, 76, 32.46016 + 70, 62, 60, 60, 57, 57, 57, 62, 68, 63, 64, 50, 65, 51, 47, 21, 32.46017 + 23, 26, 23, 36, 45, 41, 44, 76, 152, 255, 255, 255, 255, 255, 255, 255, 32.46018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 167, 147, 82, 32.46019 + 40, 14, 12, 37, 11, 23, 19, 20, 38, 23, 20, 21, 17, 8, 25, 23, 32.46020 + 42, 51, 52, 48, 40, 34, 36, 38, 37, 36, 42, 52, 57, 63, 67, 68, 32.46021 + 64, 69, 69, 71, 73, 76, 78, 81, 84, 91, 88, 85, 85, 87, 91, 93, 32.46022 + 93, 80, 81, 77, 71, 70, 73, 72, 67, 62, 60, 59, 57, 54, 52, 54, 32.46023 + 59, 63, 71, 50, 70, 61, 60, 17, 17, 21, 12, 32, 44, 43, 33, 68, 32.46024 + 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46025 + 255, 255, 255, 255, 167, 177, 151, 80, 51, 26, 23, 31, 15, 17, 15, 21, 32.46026 + 31, 29, 19, 10, 13, 10, 40, 36, 50, 49, 42, 42, 42, 39, 35, 38, 32.46027 + 47, 40, 55, 69, 73, 74, 75, 73, 67, 74, 74, 76, 77, 80, 82, 86, 32.46028 + 87, 94, 92, 88, 86, 88, 92, 93, 91, 81, 81, 76, 71, 71, 74, 73, 32.46029 + 67, 65, 64, 61, 57, 52, 48, 47, 50, 56, 71, 48, 69, 58, 57, 11, 32.46030 + 12, 16, 13, 34, 36, 42, 34, 65, 80, 146, 255, 255, 255, 255, 255, 255, 32.46031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 144, 149, 115, 46, 32.46032 + 32, 13, 11, 12, 10, 14, 14, 24, 23, 24, 20, 18, 25, 16, 49, 42, 32.46033 + 55, 48, 39, 40, 46, 45, 39, 43, 56, 46, 59, 70, 72, 72, 74, 76, 32.46034 + 74, 73, 73, 73, 75, 77, 79, 81, 84, 93, 93, 92, 94, 95, 94, 89, 32.46035 + 83, 81, 79, 76, 73, 74, 77, 76, 70, 68, 68, 71, 69, 66, 63, 63, 32.46036 + 65, 55, 75, 51, 72, 58, 61, 15, 22, 20, 21, 39, 30, 39, 38, 64, 32.46037 + 60, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46038 + 255, 255, 255, 124, 125, 133, 80, 17, 11, 11, 7, 8, 7, 13, 17, 23, 32.46039 + 21, 20, 0, 0, 12, 29, 37, 41, 45, 39, 37, 33, 33, 39, 46, 49, 32.46040 + 43, 55, 56, 64, 73, 75, 71, 75, 82, 81, 77, 78, 82, 81, 77, 79, 32.46041 + 85, 85, 85, 87, 89, 93, 94, 94, 94, 92, 86, 83, 85, 80, 68, 63, 32.46042 + 63, 64, 66, 66, 66, 65, 65, 65, 65, 57, 74, 51, 79, 67, 65, 12, 32.46043 + 18, 28, 29, 27, 51, 37, 50, 41, 38, 84, 134, 255, 255, 255, 255, 255, 32.46044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 125, 131, 75, 28, 32.46045 + 19, 14, 11, 8, 8, 10, 15, 20, 19, 12, 0, 0, 10, 28, 33, 34, 32.46046 + 36, 33, 34, 33, 32, 38, 45, 50, 45, 47, 54, 67, 73, 73, 72, 79, 32.46047 + 83, 88, 84, 82, 82, 81, 76, 79, 85, 80, 80, 81, 85, 87, 90, 93, 32.46048 + 93, 95, 91, 87, 87, 81, 72, 66, 69, 68, 71, 72, 70, 66, 64, 65, 32.46049 + 66, 57, 59, 50, 57, 65, 44, 11, 8, 20, 25, 27, 48, 34, 46, 40, 32.46050 + 38, 85, 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46051 + 255, 255, 227, 125, 126, 128, 64, 33, 19, 17, 15, 12, 10, 11, 15, 19, 32.46052 + 18, 9, 0, 2, 19, 37, 43, 43, 46, 46, 49, 50, 47, 46, 49, 53, 32.46053 + 52, 50, 65, 77, 77, 76, 80, 86, 84, 91, 88, 87, 85, 82, 80, 84, 32.46054 + 89, 80, 80, 80, 81, 84, 87, 91, 92, 100, 95, 93, 90, 88, 79, 76, 32.46055 + 77, 69, 73, 75, 73, 67, 63, 66, 67, 73, 66, 76, 62, 89, 48, 28, 32.46056 + 9, 11, 21, 28, 43, 31, 43, 43, 42, 81, 77, 143, 255, 255, 255, 255, 32.46057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 120, 120, 117, 50, 35, 32.46058 + 19, 15, 15, 16, 16, 16, 17, 19, 17, 18, 13, 19, 33, 46, 48, 46, 32.46059 + 46, 48, 53, 59, 55, 50, 51, 57, 59, 58, 72, 82, 79, 84, 93, 92, 32.46060 + 82, 92, 92, 92, 90, 88, 86, 89, 90, 86, 86, 84, 86, 87, 88, 93, 32.46061 + 94, 96, 96, 97, 95, 94, 87, 84, 82, 89, 94, 97, 92, 85, 81, 84, 32.46062 + 86, 63, 56, 73, 63, 87, 46, 25, 0, 9, 21, 32, 36, 27, 40, 50, 32.46063 + 50, 70, 67, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46064 + 255, 255, 161, 104, 103, 102, 42, 36, 26, 11, 16, 21, 23, 22, 21, 21, 32.46065 + 18, 28, 24, 29, 38, 42, 39, 36, 30, 38, 48, 54, 51, 48, 54, 62, 32.46066 + 66, 66, 76, 82, 82, 94, 108, 106, 92, 100, 102, 102, 99, 97, 94, 94, 32.46067 + 92, 92, 90, 89, 89, 89, 90, 92, 93, 88, 92, 98, 99, 100, 98, 93, 32.46068 + 89, 79, 83, 83, 81, 74, 68, 67, 66, 58, 51, 57, 62, 69, 53, 28, 32.46069 + 1, 14, 27, 39, 31, 23, 37, 60, 60, 67, 62, 51, 255, 255, 255, 255, 32.46070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 157, 105, 91, 87, 38, 30, 32.46071 + 30, 10, 15, 22, 25, 23, 21, 20, 17, 21, 22, 29, 35, 39, 41, 40, 32.46072 + 38, 55, 62, 64, 58, 54, 57, 64, 69, 79, 82, 84, 89, 101, 116, 117, 32.46073 + 108, 111, 114, 114, 111, 105, 103, 102, 98, 96, 94, 92, 90, 89, 89, 88, 32.46074 + 88, 89, 96, 100, 102, 102, 103, 97, 92, 90, 92, 92, 90, 87, 79, 74, 32.46075 + 70, 68, 59, 51, 68, 59, 67, 44, 22, 17, 29, 43, 25, 22, 36, 63, 32.46076 + 60, 70, 66, 48, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46077 + 255, 136, 157, 111, 79, 69, 30, 16, 29, 14, 18, 23, 23, 21, 19, 21, 32.46078 + 20, 14, 16, 25, 34, 40, 48, 52, 54, 65, 68, 67, 58, 53, 56, 61, 32.46079 + 66, 80, 79, 79, 83, 88, 95, 100, 103, 101, 105, 104, 99, 97, 101, 104, 32.46080 + 102, 96, 94, 93, 92, 89, 86, 82, 83, 91, 96, 95, 87, 84, 82, 76, 32.46081 + 69, 55, 57, 60, 63, 68, 64, 57, 50, 55, 45, 41, 56, 49, 60, 41, 32.46082 + 14, 14, 28, 44, 20, 24, 35, 61, 51, 73, 71, 48, 64, 255, 255, 255, 32.46083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 145, 106, 64, 54, 26, 9, 32.46084 + 32, 19, 22, 23, 20, 17, 16, 19, 22, 18, 21, 27, 33, 36, 44, 50, 32.46085 + 53, 44, 46, 47, 43, 43, 51, 59, 65, 70, 70, 69, 67, 62, 61, 69, 32.46086 + 79, 77, 80, 80, 75, 79, 89, 99, 101, 100, 97, 98, 95, 92, 87, 83, 32.46087 + 81, 89, 90, 82, 66, 55, 50, 44, 35, 21, 22, 30, 40, 50, 52, 45, 32.46088 + 36, 48, 36, 46, 60, 61, 61, 41, 4, 12, 25, 44, 18, 24, 34, 57, 32.46089 + 43, 70, 74, 47, 59, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46090 + 212, 124, 142, 112, 57, 51, 12, 21, 27, 22, 23, 25, 19, 13, 14, 23, 32.46091 + 28, 27, 27, 40, 21, 51, 45, 44, 58, 44, 52, 62, 41, 46, 71, 55, 32.46092 + 66, 75, 82, 72, 78, 78, 76, 67, 77, 104, 79, 78, 91, 84, 92, 110, 32.46093 + 110, 109, 101, 100, 109, 89, 94, 77, 98, 83, 101, 82, 59, 56, 59, 56, 32.46094 + 39, 32, 21, 43, 41, 55, 66, 34, 48, 39, 58, 40, 52, 70, 60, 47, 32.46095 + 12, 13, 27, 50, 27, 25, 29, 58, 52, 69, 66, 64, 50, 81, 255, 255, 32.46096 + 255, 255, 255, 255, 255, 255, 255, 255, 102, 97, 115, 83, 37, 40, 13, 26, 32.46097 + 36, 21, 21, 20, 17, 14, 15, 18, 20, 27, 22, 38, 38, 55, 51, 37, 32.46098 + 41, 57, 56, 43, 53, 78, 106, 129, 142, 152, 167, 137, 108, 56, 62, 68, 32.46099 + 96, 77, 70, 82, 80, 79, 81, 92, 72, 88, 70, 85, 71, 95, 90, 78, 32.46100 + 63, 86, 66, 70, 84, 84, 107, 127, 100, 65, 34, 38, 60, 81, 72, 51, 32.46101 + 62, 52, 65, 63, 54, 46, 46, 57, 48, 25, 26, 37, 28, 24, 30, 52, 32.46102 + 55, 79, 73, 67, 48, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 32.46103 + 109, 107, 115, 73, 30, 37, 16, 26, 35, 19, 17, 17, 16, 16, 15, 16, 32.46104 + 11, 19, 13, 38, 53, 39, 36, 27, 42, 63, 85, 89, 119, 119, 80, 75, 32.46105 + 53, 49, 72, 45, 49, 17, 79, 82, 88, 91, 95, 107, 68, 72, 75, 92, 32.46106 + 58, 58, 40, 61, 49, 67, 60, 66, 77, 66, 93, 130, 142, 138, 133, 114, 32.46107 + 80, 36, 38, 56, 104, 123, 103, 95, 89, 61, 47, 65, 80, 96, 107, 73, 32.46108 + 20, 42, 25, 18, 31, 24, 33, 45, 59, 84, 79, 75, 54, 59, 120, 255, 32.46109 + 255, 255, 255, 255, 255, 255, 255, 154, 128, 129, 132, 79, 41, 43, 24, 23, 32.46110 + 30, 14, 16, 19, 18, 16, 13, 14, 13, 20, 17, 45, 60, 14, 16, 29, 32.46111 + 68, 105, 102, 87, 57, 27, 0, 22, 28, 131, 186, 177, 173, 87, 150, 144, 32.46112 + 140, 123, 137, 142, 69, 69, 64, 77, 29, 0, 0, 0, 13, 0, 0, 15, 32.46113 + 103, 119, 120, 38, 0, 77, 166, 167, 177, 98, 132, 136, 156, 145, 133, 168, 32.46114 + 162, 137, 48, 13, 14, 63, 130, 108, 55, 53, 23, 4, 34, 27, 37, 41, 32.46115 + 62, 76, 75, 80, 69, 72, 55, 255, 255, 255, 255, 255, 255, 255, 255, 140, 32.46116 + 124, 126, 127, 70, 43, 46, 34, 25, 31, 11, 18, 24, 21, 15, 11, 17, 32.46117 + 22, 35, 26, 45, 53, 6, 11, 30, 73, 111, 99, 110, 53, 26, 22, 44, 32.46118 + 52, 131, 193, 190, 185, 83, 162, 158, 133, 111, 141, 156, 86, 89, 79, 83, 32.46119 + 36, 0, 0, 5, 21, 0, 0, 33, 124, 117, 118, 38, 0, 91, 182, 162, 32.46120 + 167, 116, 151, 157, 177, 149, 123, 172, 168, 117, 54, 43, 41, 66, 116, 99, 32.46121 + 57, 55, 19, 2, 38, 32, 41, 43, 63, 71, 70, 80, 74, 80, 61, 255, 32.46122 + 255, 255, 255, 255, 255, 255, 211, 126, 118, 117, 118, 59, 42, 44, 35, 25, 32.46123 + 32, 17, 23, 28, 20, 10, 8, 19, 30, 43, 25, 28, 28, 7, 12, 15, 32.46124 + 39, 70, 38, 58, 2, 0, 21, 44, 43, 176, 223, 218, 217, 121, 202, 179, 32.46125 + 114, 138, 157, 151, 85, 70, 43, 37, 10, 0, 0, 25, 4, 14, 13, 21, 32.46126 + 26, 38, 36, 47, 49, 112, 184, 190, 197, 118, 121, 137, 194, 168, 114, 136, 32.46127 + 133, 90, 65, 56, 36, 33, 59, 68, 56, 42, 14, 8, 35, 38, 44, 48, 32.46128 + 57, 73, 69, 73, 64, 74, 61, 255, 255, 255, 255, 255, 255, 255, 126, 122, 32.46129 + 113, 111, 111, 51, 39, 38, 33, 20, 30, 29, 29, 26, 14, 6, 7, 22, 32.46130 + 30, 35, 18, 14, 0, 7, 5, 0, 10, 14, 0, 16, 0, 14, 23, 63, 32.46131 + 49, 153, 216, 242, 233, 113, 172, 155, 85, 78, 92, 82, 49, 41, 29, 36, 32.46132 + 48, 81, 81, 104, 76, 92, 91, 64, 24, 26, 0, 10, 22, 96, 183, 186, 32.46133 + 189, 140, 107, 109, 150, 115, 60, 75, 78, 42, 43, 25, 11, 10, 18, 32, 32.46134 + 19, 22, 7, 18, 30, 44, 47, 54, 48, 68, 68, 71, 56, 67, 59, 138, 32.46135 + 255, 255, 255, 255, 255, 215, 124, 115, 103, 104, 104, 41, 33, 33, 32, 19, 32.46136 + 35, 41, 35, 24, 12, 5, 9, 21, 30, 30, 22, 21, 0, 6, 0, 0, 32.46137 + 11, 16, 0, 9, 8, 18, 2, 73, 61, 171, 209, 226, 217, 120, 186, 163, 32.46138 + 73, 81, 91, 81, 68, 50, 23, 17, 38, 76, 85, 93, 95, 78, 89, 49, 32.46139 + 34, 14, 38, 37, 13, 97, 181, 175, 205, 128, 107, 127, 155, 118, 73, 77, 32.46140 + 72, 29, 49, 25, 21, 26, 23, 39, 25, 6, 0, 22, 24, 44, 44, 57, 32.46141 + 40, 57, 65, 71, 55, 66, 58, 75, 255, 255, 255, 255, 255, 139, 163, 126, 32.46142 + 127, 137, 116, 55, 27, 43, 24, 8, 37, 40, 32, 26, 22, 25, 24, 19, 32.46143 + 13, 13, 1, 1, 16, 26, 23, 17, 16, 28, 22, 29, 11, 11, 11, 35, 32.46144 + 29, 121, 168, 174, 176, 76, 101, 63, 32, 28, 17, 29, 38, 34, 14, 11, 32.46145 + 48, 97, 104, 89, 101, 108, 116, 56, 6, 0, 22, 12, 38, 32, 85, 92, 32.46146 + 108, 102, 59, 51, 53, 29, 22, 40, 40, 20, 14, 26, 25, 8, 9, 15, 32.46147 + 0, 14, 5, 19, 33, 31, 32, 43, 48, 58, 52, 52, 74, 46, 51, 67, 32.46148 + 255, 255, 255, 255, 255, 142, 169, 135, 130, 124, 104, 50, 17, 25, 19, 6, 32.46149 + 15, 30, 25, 21, 20, 24, 24, 19, 15, 10, 6, 12, 25, 27, 17, 8, 32.46150 + 8, 13, 1, 9, 2, 12, 11, 31, 22, 36, 54, 72, 72, 18, 32, 35, 32.46151 + 25, 32, 24, 29, 20, 15, 3, 0, 21, 66, 71, 74, 101, 107, 116, 56, 32.46152 + 0, 1, 8, 0, 23, 5, 32, 31, 56, 35, 13, 26, 40, 25, 24, 36, 32.46153 + 29, 29, 10, 5, 6, 12, 44, 65, 45, 25, 7, 9, 20, 23, 26, 36, 32.46154 + 36, 46, 44, 59, 85, 49, 48, 64, 255, 255, 255, 255, 218, 117, 137, 97, 32.46155 + 75, 84, 65, 29, 5, 13, 27, 28, 20, 21, 18, 18, 19, 22, 21, 18, 32.46156 + 13, 13, 12, 22, 37, 40, 34, 33, 38, 13, 0, 0, 0, 16, 11, 24, 32.46157 + 14, 7, 3, 44, 48, 38, 17, 35, 28, 24, 22, 22, 4, 2, 5, 3, 32.46158 + 22, 65, 62, 84, 114, 111, 120, 70, 0, 12, 8, 0, 32, 13, 19, 17, 32.46159 + 50, 45, 31, 35, 33, 14, 22, 36, 30, 7, 11, 17, 11, 9, 46, 69, 32.46160 + 53, 42, 12, 3, 10, 18, 24, 27, 22, 31, 30, 60, 86, 45, 38, 56, 32.46161 + 255, 255, 255, 255, 157, 132, 153, 109, 76, 83, 52, 27, 13, 10, 21, 26, 32.46162 + 9, 19, 18, 20, 20, 20, 19, 15, 12, 12, 10, 14, 27, 35, 40, 46, 32.46163 + 55, 27, 0, 5, 8, 22, 9, 20, 14, 17, 12, 54, 57, 62, 27, 34, 32.46164 + 19, 22, 19, 21, 7, 3, 6, 14, 39, 62, 48, 79, 101, 86, 98, 73, 32.46165 + 1, 0, 0, 0, 30, 18, 21, 25, 55, 72, 62, 53, 29, 7, 18, 35, 32.46166 + 31, 0, 15, 31, 18, 13, 49, 68, 43, 50, 19, 5, 10, 17, 21, 21, 32.46167 + 14, 40, 33, 65, 85, 50, 42, 62, 255, 255, 255, 255, 151, 134, 149, 95, 32.46168 + 61, 73, 33, 19, 22, 13, 14, 20, 9, 13, 14, 18, 18, 18, 16, 15, 32.46169 + 12, 27, 21, 22, 30, 39, 43, 45, 47, 31, 8, 13, 12, 21, 10, 26, 32.46170 + 26, 25, 23, 35, 35, 35, 28, 32, 24, 33, 24, 27, 16, 5, 0, 7, 32.46171 + 43, 65, 43, 77, 86, 67, 85, 92, 33, 0, 3, 5, 20, 13, 19, 23, 32.46172 + 35, 33, 42, 42, 24, 13, 21, 27, 16, 23, 19, 13, 1, 19, 78, 96, 32.46173 + 58, 54, 26, 15, 20, 22, 22, 22, 13, 31, 17, 39, 52, 38, 34, 56, 32.46174 + 255, 255, 255, 255, 127, 114, 113, 46, 25, 44, 10, 6, 20, 16, 12, 19, 32.46175 + 16, 4, 8, 14, 14, 14, 14, 16, 14, 32, 29, 35, 44, 53, 54, 47, 32.46176 + 43, 19, 4, 11, 7, 16, 9, 32, 38, 25, 30, 26, 23, 22, 30, 30, 32.46177 + 28, 29, 19, 21, 13, 3, 0, 5, 45, 80, 56, 86, 82, 67, 85, 106, 32.46178 + 57, 0, 9, 11, 10, 8, 19, 19, 16, 23, 35, 35, 22, 17, 22, 21, 32.46179 + 9, 25, 19, 12, 0, 16, 72, 90, 55, 54, 32, 24, 28, 29, 26, 23, 32.46180 + 15, 15, 2, 12, 17, 28, 27, 46, 255, 255, 255, 255, 123, 121, 110, 42, 32.46181 + 46, 33, 18, 15, 19, 14, 8, 7, 2, 5, 9, 15, 14, 12, 12, 17, 32.46182 + 18, 16, 19, 30, 39, 44, 44, 40, 39, 16, 3, 11, 1, 10, 10, 33, 32.46183 + 32, 21, 24, 23, 18, 25, 21, 17, 19, 24, 14, 13, 0, 0, 6, 18, 32.46184 + 47, 66, 47, 76, 71, 67, 79, 96, 47, 0, 0, 3, 1, 7, 15, 15, 32.46185 + 9, 38, 45, 37, 20, 19, 22, 17, 12, 12, 13, 15, 8, 18, 63, 75, 32.46186 + 41, 59, 35, 26, 31, 32, 30, 25, 12, 16, 13, 16, 12, 43, 35, 47, 32.46187 + 255, 255, 255, 255, 105, 97, 73, 0, 18, 7, 12, 16, 15, 19, 24, 23, 32.46188 + 16, 12, 16, 20, 17, 13, 12, 17, 16, 26, 29, 37, 39, 38, 40, 45, 32.46189 + 48, 22, 11, 15, 0, 9, 10, 27, 21, 28, 20, 18, 7, 26, 10, 19, 32.46190 + 28, 28, 21, 12, 0, 0, 17, 26, 41, 50, 37, 71, 70, 85, 96, 104, 32.46191 + 53, 5, 8, 10, 13, 21, 22, 24, 21, 14, 25, 21, 14, 21, 22, 14, 32.46192 + 7, 14, 0, 0, 1, 34, 90, 97, 55, 64, 36, 24, 31, 34, 32, 25, 32.46193 + 11, 8, 13, 12, 3, 41, 26, 31, 255, 255, 255, 255, 143, 151, 77, 10, 32.46194 + 19, 9, 12, 17, 23, 27, 24, 21, 20, 20, 17, 18, 17, 15, 15, 21, 32.46195 + 23, 34, 31, 35, 40, 44, 46, 49, 50, 35, 30, 35, 5, 2, 19, 3, 32.46196 + 4, 21, 26, 27, 24, 19, 17, 13, 9, 13, 17, 4, 12, 7, 39, 42, 32.46197 + 40, 40, 31, 50, 61, 74, 82, 69, 72, 45, 54, 0, 0, 23, 18, 31, 32.46198 + 15, 19, 16, 23, 25, 14, 13, 16, 9, 0, 1, 21, 17, 73, 87, 102, 32.46199 + 42, 60, 33, 14, 15, 20, 26, 24, 11, 9, 8, 16, 25, 31, 34, 42, 32.46200 + 255, 255, 255, 255, 151, 154, 78, 15, 14, 10, 10, 15, 23, 26, 19, 16, 32.46201 + 16, 18, 16, 17, 17, 16, 14, 20, 21, 27, 24, 29, 34, 40, 43, 45, 32.46202 + 46, 52, 43, 43, 17, 6, 16, 4, 7, 11, 15, 17, 16, 8, 1, 0, 32.46203 + 0, 5, 20, 21, 37, 31, 47, 39, 30, 43, 34, 54, 63, 76, 82, 68, 32.46204 + 72, 75, 76, 12, 0, 0, 0, 5, 0, 7, 7, 13, 15, 3, 1, 2, 32.46205 + 0, 6, 23, 53, 55, 99, 94, 93, 29, 61, 32, 13, 17, 23, 28, 25, 32.46206 + 13, 6, 7, 14, 24, 33, 36, 43, 255, 255, 255, 255, 154, 146, 70, 24, 32.46207 + 17, 16, 12, 17, 28, 29, 16, 11, 15, 16, 15, 17, 17, 16, 13, 18, 32.46208 + 18, 27, 25, 29, 36, 42, 44, 47, 47, 49, 38, 37, 18, 5, 0, 0, 32.46209 + 0, 5, 5, 8, 10, 1, 0, 0, 0, 0, 3, 9, 25, 24, 44, 50, 32.46210 + 50, 45, 39, 60, 68, 78, 82, 70, 70, 70, 71, 19, 2, 0, 0, 4, 32.46211 + 0, 2, 1, 7, 9, 0, 0, 0, 0, 0, 18, 51, 57, 91, 88, 96, 32.46212 + 51, 65, 30, 10, 20, 29, 29, 27, 22, 11, 9, 13, 22, 32, 37, 43, 32.46213 + 255, 255, 255, 255, 126, 108, 35, 16, 14, 27, 19, 23, 35, 34, 18, 12, 32.46214 + 17, 14, 13, 17, 18, 16, 12, 16, 18, 30, 28, 34, 39, 43, 45, 46, 32.46215 + 46, 51, 47, 48, 42, 29, 14, 5, 12, 0, 0, 0, 0, 0, 0, 0, 32.46216 + 13, 11, 31, 50, 65, 61, 52, 38, 31, 48, 46, 65, 71, 79, 83, 70, 32.46217 + 71, 78, 84, 55, 42, 25, 1, 0, 0, 0, 0, 0, 0, 0, 0, 10, 32.46218 + 10, 49, 64, 82, 77, 85, 73, 82, 52, 68, 27, 6, 20, 31, 30, 34, 32.46219 + 34, 22, 18, 16, 20, 29, 34, 40, 255, 255, 255, 255, 141, 116, 38, 37, 32.46220 + 43, 33, 26, 28, 36, 34, 19, 13, 17, 15, 14, 16, 17, 15, 12, 15, 32.46221 + 17, 31, 28, 33, 38, 41, 41, 41, 39, 49, 51, 55, 65, 55, 33, 26, 32.46222 + 27, 37, 29, 25, 26, 25, 30, 48, 70, 78, 69, 62, 53, 44, 39, 50, 32.46223 + 60, 54, 50, 69, 73, 78, 82, 70, 70, 66, 77, 83, 91, 85, 74, 75, 32.46224 + 65, 37, 32, 33, 32, 31, 44, 64, 70, 84, 97, 104, 97, 87, 60, 60, 32.46225 + 38, 65, 24, 1, 12, 23, 24, 35, 40, 38, 32, 25, 20, 24, 29, 33, 32.46226 + 255, 255, 255, 255, 143, 118, 24, 22, 30, 34, 31, 30, 31, 28, 19, 14, 32.46227 + 14, 16, 15, 17, 17, 14, 11, 15, 20, 32, 32, 35, 39, 41, 42, 41, 32.46228 + 38, 40, 49, 51, 67, 65, 45, 44, 38, 23, 19, 13, 10, 13, 26, 42, 32.46229 + 55, 68, 59, 63, 56, 55, 32, 38, 43, 62, 60, 75, 74, 78, 81, 69, 32.46230 + 72, 70, 67, 76, 84, 73, 65, 67, 60, 25, 19, 20, 20, 18, 33, 52, 32.46231 + 60, 85, 90, 90, 88, 70, 50, 55, 43, 54, 22, 0, 5, 10, 17, 29, 32.46232 + 35, 43, 40, 32, 25, 24, 27, 30, 255, 255, 255, 255, 126, 117, 20, 16, 32.46233 + 32, 34, 36, 33, 25, 22, 20, 17, 11, 19, 16, 17, 16, 13, 11, 16, 32.46234 + 21, 31, 30, 35, 40, 41, 43, 43, 40, 48, 61, 57, 74, 82, 75, 87, 32.46235 + 76, 85, 86, 83, 78, 80, 93, 98, 95, 109, 80, 62, 39, 38, 18, 36, 32.46236 + 52, 69, 68, 80, 78, 77, 81, 71, 74, 67, 52, 66, 78, 80, 89, 101, 32.46237 + 99, 93, 89, 93, 94, 89, 96, 108, 109, 107, 104, 96, 95, 72, 46, 43, 32.46238 + 35, 48, 25, 7, 4, 3, 10, 22, 27, 36, 39, 38, 30, 27, 28, 29, 32.46239 + 255, 255, 255, 255, 76, 89, 4, 9, 35, 34, 40, 35, 22, 19, 22, 20, 32.46240 + 11, 19, 17, 15, 13, 12, 10, 16, 22, 25, 24, 30, 35, 40, 43, 42, 32.46241 + 40, 54, 63, 53, 70, 83, 88, 109, 101, 85, 95, 95, 87, 89, 97, 91, 32.46242 + 74, 83, 53, 48, 33, 42, 25, 42, 55, 74, 69, 83, 79, 79, 81, 72, 32.46243 + 77, 64, 39, 49, 58, 59, 73, 81, 80, 98, 99, 107, 109, 99, 96, 101, 32.46244 + 95, 86, 91, 96, 111, 88, 56, 35, 15, 49, 31, 14, 7, 2, 9, 21, 32.46245 + 21, 26, 37, 41, 37, 31, 32, 30, 255, 255, 255, 255, 85, 89, 12, 13, 32.46246 + 23, 31, 31, 30, 17, 8, 18, 24, 12, 15, 16, 13, 9, 9, 11, 16, 32.46247 + 18, 22, 13, 32, 43, 51, 51, 38, 45, 53, 59, 52, 60, 72, 82, 104, 32.46248 + 103, 94, 86, 92, 93, 85, 90, 82, 50, 51, 42, 38, 43, 41, 39, 54, 32.46249 + 72, 72, 65, 79, 71, 76, 73, 84, 71, 70, 75, 65, 67, 51, 63, 63, 32.46250 + 74, 77, 80, 85, 91, 93, 87, 85, 84, 87, 84, 86, 85, 62, 69, 43, 32.46251 + 34, 46, 30, 11, 7, 14, 19, 24, 25, 30, 32, 41, 41, 28, 24, 26, 32.46252 + 255, 255, 255, 255, 88, 98, 25, 18, 20, 27, 28, 27, 15, 7, 18, 25, 32.46253 + 12, 16, 14, 11, 7, 7, 9, 14, 16, 21, 14, 32, 43, 50, 53, 42, 32.46254 + 48, 55, 62, 54, 61, 74, 82, 102, 101, 93, 90, 96, 100, 92, 94, 84, 32.46255 + 54, 52, 36, 30, 38, 43, 43, 55, 69, 72, 65, 82, 78, 88, 84, 93, 32.46256 + 75, 77, 81, 67, 67, 48, 58, 56, 67, 79, 81, 86, 91, 94, 91, 85, 32.46257 + 84, 86, 83, 85, 85, 63, 74, 46, 39, 44, 28, 10, 7, 13, 17, 21, 32.46258 + 22, 27, 29, 41, 43, 32, 26, 28, 255, 255, 255, 255, 102, 113, 43, 24, 32.46259 + 15, 23, 23, 22, 12, 7, 20, 27, 15, 16, 14, 13, 9, 7, 9, 14, 32.46260 + 16, 21, 12, 30, 40, 48, 49, 40, 48, 49, 56, 51, 58, 70, 79, 98, 32.46261 + 97, 99, 97, 101, 98, 85, 80, 66, 40, 55, 34, 24, 33, 47, 50, 56, 32.46262 + 59, 65, 61, 84, 88, 104, 99, 103, 83, 79, 82, 69, 70, 50, 59, 58, 32.46263 + 70, 76, 74, 76, 81, 87, 88, 81, 77, 82, 77, 80, 78, 56, 66, 40, 32.46264 + 35, 40, 26, 11, 7, 14, 16, 17, 17, 25, 24, 37, 41, 32, 27, 27, 32.46265 + 255, 255, 255, 255, 107, 114, 49, 27, 14, 20, 19, 18, 9, 6, 21, 29, 32.46266 + 17, 17, 15, 13, 9, 7, 9, 13, 15, 19, 12, 29, 36, 42, 45, 39, 32.46267 + 48, 51, 60, 50, 59, 67, 74, 95, 93, 102, 105, 104, 97, 85, 73, 54, 32.46268 + 33, 34, 17, 4, 13, 25, 27, 29, 29, 50, 49, 78, 89, 111, 110, 110, 32.46269 + 87, 49, 51, 42, 49, 33, 44, 46, 62, 72, 72, 70, 75, 82, 87, 83, 32.46270 + 74, 80, 72, 75, 77, 52, 59, 32, 29, 35, 24, 10, 9, 15, 16, 14, 32.46271 + 13, 24, 23, 34, 40, 32, 27, 25, 255, 255, 255, 255, 109, 108, 51, 30, 32.46272 + 20, 22, 20, 19, 10, 7, 23, 32, 20, 17, 15, 14, 9, 7, 8, 15, 32.46273 + 17, 21, 12, 28, 35, 39, 42, 37, 48, 63, 67, 57, 61, 67, 72, 92, 32.46274 + 89, 100, 105, 104, 97, 92, 77, 60, 48, 47, 34, 25, 29, 34, 33, 33, 32.46275 + 32, 53, 53, 84, 98, 119, 117, 117, 92, 45, 48, 41, 54, 44, 57, 61, 32.46276 + 78, 74, 73, 70, 71, 80, 89, 88, 80, 81, 72, 76, 79, 54, 58, 30, 32.46277 + 26, 34, 23, 13, 13, 14, 15, 13, 15, 26, 26, 36, 38, 28, 23, 23, 32.46278 + 255, 255, 255, 255, 130, 118, 61, 37, 25, 25, 22, 19, 11, 8, 25, 34, 32.46279 + 21, 18, 16, 14, 9, 7, 8, 14, 16, 23, 16, 30, 34, 36, 39, 35, 32.46280 + 50, 65, 69, 55, 57, 60, 67, 84, 82, 95, 96, 87, 80, 78, 64, 44, 32.46281 + 38, 28, 18, 11, 11, 11, 8, 6, 4, 31, 33, 63, 70, 89, 83, 83, 32.46282 + 57, 9, 10, 8, 25, 17, 28, 31, 49, 60, 60, 57, 55, 62, 76, 80, 32.46283 + 75, 76, 66, 69, 74, 52, 52, 26, 22, 33, 25, 15, 15, 16, 16, 17, 32.46284 + 18, 32, 30, 38, 37, 22, 17, 20, 255, 255, 255, 255, 153, 135, 78, 46, 32.46285 + 28, 30, 26, 22, 12, 11, 28, 36, 22, 20, 18, 16, 12, 9, 10, 14, 32.46286 + 18, 27, 19, 33, 35, 35, 38, 35, 51, 65, 67, 51, 49, 54, 58, 79, 32.46287 + 78, 92, 92, 72, 59, 63, 48, 24, 21, 31, 22, 14, 11, 12, 9, 3, 32.46288 + 0, 0, 0, 22, 25, 38, 31, 33, 10, 0, 2, 1, 21, 12, 21, 22, 32.46289 + 39, 47, 50, 46, 40, 48, 66, 76, 75, 69, 57, 58, 66, 42, 49, 22, 32.46290 + 26, 33, 26, 16, 16, 18, 19, 20, 22, 36, 36, 42, 35, 16, 10, 16, 32.46291 + 255, 255, 255, 255, 152, 139, 86, 51, 29, 33, 28, 23, 13, 13, 29, 36, 32.46292 + 22, 20, 18, 16, 12, 9, 10, 14, 18, 31, 22, 34, 37, 35, 39, 37, 32.46293 + 53, 70, 70, 52, 52, 54, 61, 82, 82, 95, 91, 69, 57, 68, 54, 34, 32.46294 + 35, 34, 23, 13, 12, 15, 12, 5, 0, 4, 6, 31, 34, 45, 37, 40, 32.46295 + 22, 0, 0, 0, 21, 13, 21, 22, 39, 54, 57, 53, 45, 53, 72, 85, 32.46296 + 87, 72, 57, 57, 62, 43, 48, 29, 34, 35, 26, 17, 16, 20, 20, 22, 32.46297 + 25, 40, 40, 45, 33, 10, 4, 15, 255, 255, 255, 255, 139, 125, 87, 51, 32.46298 + 24, 29, 27, 19, 13, 17, 28, 35, 32, 25, 20, 14, 10, 11, 10, 10, 32.46299 + 7, 21, 18, 25, 36, 40, 35, 38, 44, 55, 55, 51, 42, 42, 55, 73, 32.46300 + 84, 88, 53, 35, 40, 40, 30, 27, 21, 20, 20, 20, 19, 18, 13, 9, 32.46301 + 3, 0, 6, 5, 22, 19, 22, 3, 11, 15, 7, 11, 28, 27, 15, 18, 32.46302 + 36, 33, 37, 37, 32, 37, 51, 66, 73, 60, 69, 47, 59, 45, 48, 39, 32.46303 + 26, 35, 25, 19, 19, 24, 26, 30, 39, 51, 50, 50, 33, 14, 17, 27, 32.46304 + 255, 255, 255, 255, 128, 104, 70, 44, 17, 21, 20, 15, 9, 11, 20, 27, 32.46305 + 26, 29, 23, 16, 11, 12, 13, 13, 14, 17, 15, 22, 33, 36, 34, 35, 32.46306 + 42, 40, 41, 41, 38, 40, 50, 62, 66, 66, 38, 24, 25, 22, 20, 18, 32.46307 + 13, 21, 19, 15, 12, 14, 18, 21, 21, 21, 26, 10, 12, 1, 10, 7, 32.46308 + 29, 20, 12, 13, 24, 24, 14, 13, 23, 30, 29, 21, 14, 16, 33, 49, 32.46309 + 59, 51, 61, 43, 53, 41, 42, 35, 23, 34, 26, 20, 20, 25, 27, 31, 32.46310 + 39, 52, 47, 45, 33, 19, 20, 107, 255, 255, 255, 255, 132, 92, 62, 49, 32.46311 + 20, 20, 21, 20, 15, 14, 20, 27, 29, 34, 27, 20, 14, 13, 15, 18, 32.46312 + 20, 15, 14, 21, 31, 34, 30, 33, 38, 28, 30, 33, 33, 37, 44, 48, 32.46313 + 47, 44, 28, 22, 17, 11, 15, 17, 10, 7, 10, 12, 13, 16, 17, 18, 32.46314 + 18, 13, 23, 14, 19, 6, 11, 8, 32, 22, 18, 16, 22, 25, 24, 21, 32.46315 + 22, 17, 20, 20, 19, 20, 25, 28, 27, 40, 55, 38, 51, 36, 37, 29, 32.46316 + 23, 33, 26, 19, 18, 23, 26, 32, 38, 54, 44, 39, 32, 25, 25, 255, 32.46317 + 255, 255, 255, 255, 135, 83, 56, 49, 20, 21, 22, 23, 19, 16, 18, 26, 32.46318 + 31, 36, 29, 21, 14, 13, 16, 20, 23, 18, 16, 22, 32, 33, 27, 28, 32.46319 + 36, 27, 30, 33, 35, 38, 43, 39, 34, 29, 26, 26, 20, 10, 16, 21, 32.46320 + 10, 17, 17, 17, 17, 17, 17, 18, 18, 7, 18, 17, 28, 19, 16, 8, 32.46321 + 26, 27, 24, 18, 13, 15, 18, 14, 8, 16, 19, 23, 24, 24, 22, 17, 32.46322 + 12, 38, 53, 42, 52, 35, 32, 28, 22, 28, 24, 18, 17, 22, 26, 31, 32.46323 + 35, 52, 40, 30, 30, 30, 29, 255, 255, 255, 255, 255, 119, 69, 46, 40, 32.46324 + 13, 19, 18, 17, 14, 11, 11, 18, 24, 36, 29, 19, 13, 13, 17, 20, 32.46325 + 23, 22, 18, 22, 29, 30, 23, 22, 28, 33, 34, 35, 33, 34, 36, 32, 32.46326 + 26, 14, 18, 27, 24, 14, 21, 26, 14, 22, 19, 15, 9, 7, 10, 17, 32.46327 + 23, 32, 30, 14, 19, 12, 14, 10, 32, 16, 19, 19, 16, 24, 37, 43, 32.46328 + 42, 31, 26, 18, 10, 7, 9, 14, 19, 40, 58, 44, 52, 32, 30, 27, 32.46329 + 21, 21, 20, 16, 14, 18, 23, 29, 31, 46, 34, 19, 19, 26, 23, 255, 32.46330 + 255, 255, 255, 91, 101, 65, 47, 38, 18, 20, 15, 12, 10, 8, 8, 14, 32.46331 + 21, 31, 26, 19, 14, 15, 16, 18, 19, 21, 18, 19, 27, 27, 19, 18, 32.46332 + 23, 30, 33, 33, 29, 28, 27, 25, 18, 8, 13, 26, 28, 21, 28, 34, 32.46333 + 26, 39, 44, 53, 56, 57, 52, 51, 51, 53, 49, 31, 42, 37, 42, 39, 32.46334 + 61, 47, 48, 46, 34, 25, 20, 22, 25, 30, 28, 23, 17, 11, 8, 14, 32.46335 + 23, 43, 59, 42, 47, 30, 27, 24, 17, 17, 16, 13, 12, 16, 23, 29, 32.46336 + 27, 36, 33, 13, 10, 20, 18, 255, 255, 255, 255, 74, 84, 65, 51, 35, 32.46337 + 23, 25, 16, 9, 9, 11, 11, 15, 21, 27, 24, 19, 17, 17, 17, 17, 32.46338 + 16, 19, 17, 20, 26, 27, 20, 19, 24, 26, 32, 35, 31, 28, 25, 24, 32.46339 + 20, 14, 16, 28, 32, 24, 28, 34, 31, 12, 24, 43, 53, 56, 50, 45, 32.46340 + 42, 25, 29, 25, 43, 39, 38, 31, 53, 29, 36, 46, 42, 29, 18, 23, 32.46341 + 34, 21, 25, 29, 29, 21, 13, 16, 25, 45, 56, 37, 42, 27, 26, 24, 32.46342 + 17, 13, 14, 14, 11, 16, 25, 29, 26, 35, 38, 16, 6, 19, 255, 255, 32.46343 + 255, 255, 255, 59, 68, 57, 44, 24, 16, 27, 14, 7, 8, 10, 9, 13, 32.46344 + 18, 25, 23, 20, 19, 20, 18, 16, 14, 18, 15, 19, 28, 29, 23, 25, 32.46345 + 30, 27, 35, 41, 38, 32, 30, 27, 24, 22, 17, 25, 29, 19, 18, 24, 32.46346 + 25, 31, 33, 38, 41, 43, 50, 58, 66, 84, 91, 85, 100, 89, 85, 82, 32.46347 + 111, 101, 105, 105, 86, 47, 8, 0, 3, 21, 22, 21, 16, 9, 5, 19, 32.46348 + 36, 47, 57, 36, 44, 27, 30, 26, 18, 15, 17, 17, 13, 17, 26, 30, 32.46349 + 27, 38, 44, 23, 9, 24, 255, 255, 255, 255, 206, 71, 69, 53, 37, 24, 32.46350 + 19, 21, 16, 12, 8, 8, 10, 12, 13, 21, 18, 16, 16, 17, 17, 13, 32.46351 + 10, 15, 6, 10, 21, 25, 22, 21, 25, 26, 31, 36, 37, 31, 27, 24, 32.46352 + 25, 13, 22, 28, 32, 27, 26, 18, 10, 9, 41, 55, 65, 74, 84, 101, 32.46353 + 92, 112, 110, 120, 131, 130, 119, 117, 125, 114, 109, 138, 98, 70, 30, 19, 32.46354 + 36, 48, 47, 46, 33, 13, 13, 24, 28, 43, 42, 37, 29, 28, 29, 26, 32.46355 + 19, 16, 24, 26, 20, 16, 22, 31, 37, 47, 54, 29, 10, 22, 255, 255, 32.46356 + 255, 255, 102, 73, 68, 53, 45, 25, 24, 24, 19, 13, 9, 9, 11, 12, 32.46357 + 13, 17, 16, 15, 17, 18, 18, 14, 9, 12, 5, 10, 20, 23, 17, 20, 32.46358 + 27, 27, 33, 38, 38, 34, 29, 27, 27, 35, 46, 55, 56, 51, 45, 34, 32.46359 + 25, 11, 28, 26, 27, 21, 16, 24, 12, 24, 17, 14, 19, 18, 14, 21, 32.46360 + 35, 31, 38, 76, 74, 72, 68, 71, 93, 68, 64, 62, 48, 30, 26, 35, 32.46361 + 36, 41, 40, 33, 26, 25, 27, 22, 17, 19, 25, 25, 20, 17, 25, 34, 32.46362 + 38, 53, 57, 30, 8, 14, 255, 255, 255, 255, 85, 74, 66, 52, 57, 28, 32.46363 + 34, 25, 20, 14, 10, 10, 11, 11, 12, 12, 13, 15, 18, 20, 19, 16, 32.46364 + 11, 11, 7, 13, 19, 20, 16, 18, 26, 25, 31, 35, 35, 33, 31, 30, 32.46365 + 30, 19, 31, 47, 46, 45, 33, 27, 18, 16, 25, 18, 21, 17, 8, 18, 32.46366 + 12, 31, 21, 18, 19, 15, 14, 24, 38, 40, 46, 62, 69, 58, 59, 48, 32.46367 + 61, 71, 63, 57, 46, 31, 28, 35, 33, 36, 35, 29, 22, 21, 23, 20, 32.46368 + 14, 20, 23, 19, 16, 19, 28, 33, 34, 42, 46, 26, 11, 96, 255, 255, 32.46369 + 255, 190, 53, 54, 46, 32, 46, 14, 24, 24, 20, 14, 10, 9, 10, 10, 32.46370 + 10, 8, 10, 14, 18, 20, 20, 17, 13, 11, 10, 16, 21, 19, 14, 17, 32.46371 + 26, 25, 27, 30, 31, 32, 33, 34, 31, 29, 39, 63, 63, 71, 59, 58, 32.46372 + 47, 32, 39, 38, 50, 51, 45, 64, 69, 53, 51, 54, 58, 55, 49, 51, 32.46373 + 57, 35, 43, 45, 65, 60, 76, 65, 74, 53, 43, 36, 33, 26, 26, 33, 32.46374 + 31, 35, 32, 27, 20, 20, 23, 20, 15, 19, 22, 18, 17, 22, 29, 29, 32.46375 + 25, 24, 30, 21, 15, 255, 255, 255, 255, 59, 46, 51, 46, 26, 40, 12, 32.46376 + 21, 22, 18, 13, 10, 9, 9, 9, 9, 6, 9, 14, 18, 20, 19, 17, 32.46377 + 14, 12, 14, 19, 20, 18, 14, 19, 25, 27, 27, 28, 29, 32, 35, 38, 32.46378 + 35, 11, 19, 48, 45, 62, 49, 53, 42, 47, 57, 57, 64, 60, 52, 72, 32.46379 + 81, 77, 82, 90, 94, 91, 84, 80, 81, 75, 77, 60, 75, 65, 74, 63, 32.46380 + 63, 44, 31, 26, 29, 28, 30, 38, 38, 34, 33, 27, 21, 22, 25, 23, 32.46381 + 18, 18, 19, 19, 19, 24, 28, 22, 15, 19, 23, 23, 20, 255, 255, 255, 32.46382 + 255, 63, 52, 53, 55, 27, 32, 18, 22, 20, 17, 13, 11, 11, 11, 11, 32.46383 + 10, 7, 11, 15, 18, 17, 16, 16, 14, 15, 15, 19, 19, 18, 18, 22, 32.46384 + 26, 30, 30, 29, 30, 33, 38, 42, 39, 14, 16, 45, 38, 61, 46, 53, 32.46385 + 41, 43, 55, 51, 56, 50, 47, 70, 76, 80, 84, 89, 89, 85, 81, 80, 32.46386 + 81, 74, 78, 63, 73, 76, 80, 82, 76, 45, 30, 26, 32, 31, 33, 42, 32.46387 + 43, 34, 32, 26, 21, 22, 26, 25, 19, 18, 20, 21, 21, 24, 24, 20, 32.46388 + 12, 21, 22, 26, 102, 255, 255, 255, 255, 39, 37, 30, 44, 13, 10, 15, 32.46389 + 12, 21, 18, 14, 13, 14, 14, 14, 14, 10, 13, 16, 17, 15, 13, 14, 32.46390 + 13, 18, 16, 18, 17, 20, 23, 25, 26, 29, 28, 26, 26, 30, 36, 40, 32.46391 + 38, 15, 10, 35, 25, 54, 39, 49, 33, 36, 45, 34, 35, 39, 48, 69, 32.46392 + 66, 73, 76, 78, 73, 68, 67, 69, 70, 68, 76, 65, 65, 72, 59, 69, 32.46393 + 54, 39, 26, 20, 27, 25, 25, 33, 36, 30, 30, 25, 21, 20, 25, 23, 32.46394 + 18, 19, 22, 21, 19, 20, 24, 23, 18, 16, 16, 21, 255, 255, 255, 255, 32.46395 + 255, 30, 34, 24, 48, 16, 10, 30, 23, 21, 19, 16, 15, 16, 17, 17, 32.46396 + 17, 12, 15, 17, 16, 13, 11, 13, 15, 19, 17, 17, 18, 22, 26, 28, 32.46397 + 26, 27, 24, 21, 21, 27, 33, 38, 36, 20, 12, 38, 23, 58, 42, 56, 32.46398 + 38, 42, 46, 23, 14, 22, 33, 49, 39, 35, 42, 42, 39, 35, 33, 33, 32.46399 + 33, 47, 56, 54, 51, 67, 46, 64, 45, 31, 18, 14, 20, 18, 18, 27, 32.46400 + 31, 29, 27, 22, 18, 20, 23, 22, 17, 22, 24, 21, 18, 19, 24, 26, 32.46401 + 25, 12, 9, 14, 255, 255, 255, 255, 255, 31, 22, 16, 16, 14, 9, 11, 32.46402 + 18, 16, 18, 20, 22, 22, 19, 17, 15, 9, 13, 19, 21, 21, 19, 17, 32.46403 + 16, 18, 18, 20, 20, 22, 23, 26, 25, 26, 20, 15, 15, 23, 27, 28, 32.46404 + 25, 15, 16, 23, 26, 32, 41, 53, 59, 55, 44, 33, 27, 31, 31, 28, 32.46405 + 24, 20, 18, 17, 18, 19, 22, 25, 26, 25, 33, 50, 57, 48, 42, 43, 32.46406 + 41, 30, 16, 19, 18, 22, 23, 12, 23, 25, 24, 19, 16, 18, 22, 22, 32.46407 + 23, 22, 20, 19, 21, 24, 25, 23, 20, 26, 16, 97, 255, 255, 255, 255, 32.46408 + 57, 30, 19, 15, 16, 16, 12, 13, 20, 14, 15, 17, 19, 19, 18, 16, 32.46409 + 15, 10, 14, 18, 20, 19, 18, 17, 17, 21, 21, 22, 22, 24, 24, 27, 32.46410 + 28, 23, 20, 16, 17, 22, 25, 25, 23, 16, 20, 25, 27, 33, 42, 56, 32.46411 + 66, 57, 48, 37, 33, 34, 33, 27, 25, 23, 22, 22, 26, 31, 31, 31, 32.46412 + 28, 38, 40, 53, 58, 52, 49, 47, 41, 30, 17, 20, 18, 23, 25, 15, 32.46413 + 23, 25, 22, 18, 16, 16, 19, 19, 20, 22, 21, 20, 22, 24, 25, 23, 32.46414 + 21, 26, 18, 255, 255, 255, 255, 255, 63, 25, 13, 10, 12, 15, 12, 14, 32.46415 + 17, 12, 12, 13, 14, 14, 15, 15, 15, 13, 15, 18, 18, 18, 17, 18, 32.46416 + 19, 20, 20, 20, 19, 21, 21, 22, 22, 21, 17, 15, 16, 19, 21, 19, 32.46417 + 18, 18, 23, 25, 23, 25, 34, 52, 67, 62, 56, 48, 46, 44, 43, 39, 32.46418 + 37, 34, 32, 33, 38, 44, 46, 41, 36, 42, 37, 47, 53, 48, 45, 41, 32.46419 + 31, 29, 18, 22, 18, 21, 26, 17, 25, 27, 24, 18, 16, 16, 18, 18, 32.46420 + 18, 21, 20, 19, 20, 22, 23, 20, 19, 33, 29, 255, 255, 255, 255, 255, 32.46421 + 50, 26, 12, 7, 11, 15, 13, 15, 16, 11, 10, 9, 9, 10, 12, 14, 32.46422 + 15, 16, 17, 18, 18, 17, 17, 19, 21, 18, 17, 17, 16, 18, 17, 18, 32.46423 + 18, 18, 15, 16, 15, 19, 18, 14, 12, 18, 25, 24, 19, 17, 24, 46, 32.46424 + 62, 64, 59, 57, 57, 57, 53, 50, 49, 48, 46, 43, 46, 50, 51, 46, 32.46425 + 40, 38, 37, 46, 52, 47, 41, 38, 25, 27, 19, 23, 17, 19, 29, 21, 32.46426 + 23, 29, 26, 22, 19, 18, 20, 19, 19, 20, 19, 18, 18, 19, 20, 18, 32.46427 + 17, 36, 38, 255, 255, 255, 255, 255, 39, 34, 16, 8, 11, 17, 16, 16, 32.46428 + 16, 10, 9, 8, 8, 9, 11, 13, 15, 18, 19, 19, 18, 17, 17, 19, 32.46429 + 22, 20, 20, 20, 19, 20, 20, 22, 22, 16, 15, 16, 15, 16, 14, 10, 32.46430 + 10, 18, 24, 23, 17, 16, 23, 45, 61, 61, 59, 60, 58, 55, 52, 50, 32.46431 + 49, 53, 50, 42, 40, 40, 41, 38, 35, 37, 40, 54, 60, 51, 42, 40, 32.46432 + 29, 23, 21, 25, 15, 18, 32, 22, 23, 28, 25, 22, 19, 19, 20, 19, 32.46433 + 19, 18, 18, 18, 18, 16, 17, 19, 21, 32, 106, 255, 255, 255, 255, 255, 32.46434 + 56, 38, 19, 6, 7, 13, 11, 11, 9, 11, 10, 9, 8, 9, 11, 12, 32.46435 + 14, 16, 17, 18, 17, 15, 15, 17, 19, 18, 17, 17, 17, 18, 18, 21, 32.46436 + 21, 18, 18, 17, 17, 14, 11, 7, 8, 18, 22, 23, 18, 18, 26, 45, 32.46437 + 59, 56, 56, 56, 55, 50, 44, 44, 44, 49, 43, 35, 27, 25, 24, 26, 32.46438 + 27, 33, 36, 51, 57, 45, 38, 34, 26, 23, 22, 27, 14, 18, 33, 24, 32.46439 + 19, 24, 22, 19, 17, 19, 19, 17, 17, 17, 18, 20, 22, 21, 25, 30, 32.46440 + 33, 42, 255, 255, 255, 255, 255, 255, 193, 47, 25, 7, 5, 11, 9, 8, 32.46441 + 6, 13, 11, 11, 11, 11, 11, 12, 12, 12, 14, 15, 15, 13, 12, 13, 32.46442 + 14, 14, 14, 14, 14, 16, 17, 20, 20, 20, 21, 19, 17, 13, 10, 7, 32.46443 + 9, 18, 20, 19, 15, 15, 22, 37, 44, 39, 41, 45, 44, 38, 33, 37, 32.46444 + 40, 41, 39, 33, 25, 19, 15, 21, 24, 30, 26, 34, 37, 29, 24, 19, 32.46445 + 10, 19, 23, 28, 12, 15, 32, 24, 17, 21, 20, 18, 17, 19, 20, 18, 32.46446 + 18, 15, 19, 24, 28, 31, 38, 45, 51, 126, 255, 255, 255, 255, 255, 255, 32.46447 + 255, 64, 39, 17, 13, 17, 16, 14, 13, 14, 13, 13, 12, 12, 12, 12, 32.46448 + 11, 9, 11, 14, 13, 12, 10, 11, 11, 17, 17, 17, 19, 20, 21, 24, 32.46449 + 25, 22, 22, 22, 18, 15, 13, 11, 11, 20, 20, 17, 14, 13, 17, 25, 32.46450 + 31, 21, 25, 32, 31, 28, 26, 30, 36, 41, 41, 37, 30, 22, 20, 25, 32.46451 + 30, 36, 26, 27, 27, 22, 21, 15, 1, 23, 25, 31, 13, 14, 34, 23, 32.46452 + 16, 22, 21, 19, 21, 22, 22, 23, 21, 15, 20, 27, 34, 39, 49, 58, 32.46453 + 66, 255, 255, 255, 255, 255, 255, 255, 255, 53, 41, 25, 17, 18, 20, 20, 32.46454 + 15, 15, 15, 16, 17, 16, 14, 12, 11, 11, 10, 12, 12, 12, 13, 14, 32.46455 + 15, 16, 17, 20, 23, 24, 23, 21, 20, 22, 22, 22, 20, 20, 19, 18, 32.46456 + 15, 18, 20, 22, 20, 22, 26, 31, 34, 33, 38, 41, 41, 33, 26, 33, 32.46457 + 43, 39, 39, 38, 39, 37, 36, 36, 37, 32, 32, 32, 30, 28, 25, 20, 32.46458 + 17, 24, 32, 31, 23, 20, 25, 23, 15, 19, 18, 18, 20, 23, 23, 24, 32.46459 + 22, 22, 26, 33, 36, 37, 42, 55, 255, 255, 255, 255, 255, 255, 255, 255, 32.46460 + 255, 60, 47, 32, 23, 24, 24, 22, 16, 11, 11, 14, 16, 16, 16, 16, 32.46461 + 15, 13, 13, 12, 13, 15, 16, 16, 17, 17, 19, 21, 23, 23, 22, 21, 32.46462 + 20, 21, 21, 22, 22, 21, 20, 19, 17, 21, 23, 25, 26, 24, 23, 25, 32.46463 + 25, 20, 24, 34, 38, 34, 31, 37, 46, 50, 49, 47, 45, 43, 42, 40, 32.46464 + 41, 40, 36, 33, 29, 27, 23, 20, 20, 21, 29, 28, 19, 17, 22, 21, 32.46465 + 13, 19, 19, 20, 21, 24, 27, 30, 30, 15, 18, 28, 41, 51, 59, 132, 32.46466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 53, 39, 31, 31, 28, 24, 32.46467 + 16, 11, 11, 13, 15, 16, 15, 16, 15, 13, 13, 13, 14, 16, 16, 17, 32.46468 + 17, 17, 18, 20, 21, 22, 21, 20, 19, 20, 21, 21, 21, 21, 20, 19, 32.46469 + 17, 16, 19, 24, 25, 22, 17, 15, 14, 8, 13, 25, 34, 35, 32, 39, 32.46470 + 49, 56, 52, 49, 42, 39, 37, 36, 37, 42, 36, 29, 23, 20, 19, 20, 32.46471 + 19, 19, 26, 25, 18, 17, 22, 21, 15, 23, 24, 23, 20, 16, 16, 19, 32.46472 + 21, 18, 18, 29, 47, 63, 74, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46473 + 255, 255, 54, 42, 35, 35, 31, 26, 16, 15, 14, 15, 15, 14, 13, 12, 32.46474 + 11, 13, 14, 14, 15, 17, 17, 17, 17, 16, 17, 19, 20, 20, 20, 19, 32.46475 + 19, 19, 19, 20, 20, 20, 20, 19, 16, 14, 17, 23, 25, 23, 22, 21, 32.46476 + 18, 14, 17, 27, 33, 34, 33, 39, 47, 50, 48, 42, 38, 35, 35, 37, 32.46477 + 39, 43, 38, 29, 22, 20, 18, 19, 19, 23, 26, 26, 22, 21, 25, 24, 32.46478 + 20, 22, 24, 24, 20, 14, 13, 17, 21, 24, 22, 29, 43, 53, 127, 255, 32.46479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 40, 35, 35, 32, 24, 32.46480 + 16, 15, 14, 14, 14, 13, 12, 12, 11, 13, 14, 15, 16, 19, 18, 18, 32.46481 + 17, 16, 16, 17, 18, 18, 18, 18, 18, 17, 18, 19, 19, 19, 19, 19, 32.46482 + 16, 20, 22, 26, 27, 26, 27, 28, 30, 25, 24, 29, 31, 32, 31, 35, 32.46483 + 45, 43, 41, 36, 34, 32, 34, 41, 45, 40, 36, 30, 25, 24, 21, 21, 32.46484 + 19, 24, 26, 26, 24, 24, 26, 26, 24, 14, 18, 22, 23, 22, 25, 32, 32.46485 + 37, 25, 24, 28, 32, 31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46486 + 255, 255, 186, 39, 34, 35, 31, 23, 13, 12, 11, 11, 12, 13, 13, 15, 32.46487 + 15, 13, 15, 16, 18, 20, 19, 18, 18, 15, 15, 16, 16, 16, 17, 17, 32.46488 + 17, 16, 17, 18, 18, 19, 19, 18, 16, 20, 21, 23, 22, 19, 21, 26, 32.46489 + 26, 26, 24, 24, 27, 26, 27, 33, 42, 30, 30, 26, 25, 25, 29, 36, 32.46490 + 40, 37, 34, 30, 27, 25, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 32.46491 + 23, 14, 17, 21, 23, 23, 26, 30, 33, 25, 25, 30, 29, 22, 255, 255, 32.46492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 35, 35, 31, 23, 32.46493 + 13, 12, 11, 11, 11, 12, 13, 15, 16, 14, 15, 17, 19, 21, 20, 19, 32.46494 + 18, 15, 15, 15, 15, 15, 16, 16, 17, 15, 16, 17, 18, 18, 18, 18, 32.46495 + 16, 15, 16, 18, 17, 15, 15, 19, 21, 24, 21, 22, 25, 25, 25, 30, 32.46496 + 37, 23, 22, 19, 19, 20, 24, 27, 31, 33, 30, 26, 23, 22, 24, 25, 32.46497 + 25, 23, 22, 22, 23, 22, 22, 21, 22, 19, 20, 21, 22, 21, 20, 19, 32.46498 + 17, 24, 26, 34, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46499 + 255, 255, 255, 255, 37, 36, 31, 23, 13, 16, 14, 13, 12, 11, 11, 12, 32.46500 + 12, 14, 15, 18, 19, 22, 21, 19, 18, 15, 14, 14, 14, 14, 15, 16, 32.46501 + 17, 15, 15, 16, 17, 18, 18, 18, 16, 14, 16, 20, 21, 20, 21, 24, 32.46502 + 24, 22, 21, 23, 28, 28, 26, 28, 34, 27, 25, 24, 22, 22, 23, 26, 32.46503 + 28, 31, 28, 22, 18, 19, 21, 25, 26, 25, 23, 23, 24, 24, 22, 22, 32.46504 + 23, 19, 19, 21, 24, 26, 26, 23, 18, 17, 20, 33, 37, 255, 255, 255, 32.46505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 40, 37, 28, 32.46506 + 16, 18, 14, 12, 12, 13, 15, 16, 15, 17, 15, 14, 17, 23, 25, 23, 32.46507 + 21, 18, 17, 16, 14, 14, 13, 13, 13, 14, 14, 14, 15, 16, 19, 21, 32.46508 + 21, 19, 20, 24, 23, 21, 19, 21, 23, 19, 17, 17, 19, 18, 23, 27, 32.46509 + 32, 31, 28, 27, 25, 23, 25, 27, 30, 30, 24, 22, 27, 28, 23, 23, 32.46510 + 26, 19, 20, 20, 20, 20, 20, 20, 20, 20, 22, 23, 23, 21, 23, 27, 32.46511 + 32, 31, 32, 43, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46512 + 255, 255, 255, 255, 255, 255, 41, 33, 22, 22, 19, 15, 13, 12, 11, 11, 32.46513 + 9, 12, 11, 12, 15, 21, 22, 20, 18, 17, 16, 15, 14, 13, 13, 13, 32.46514 + 14, 14, 14, 14, 15, 16, 19, 21, 21, 19, 20, 24, 23, 21, 21, 21, 32.46515 + 23, 23, 22, 20, 19, 17, 20, 26, 31, 32, 31, 31, 28, 27, 28, 31, 32.46516 + 33, 33, 27, 25, 27, 27, 22, 22, 23, 24, 23, 22, 21, 20, 19, 18, 32.46517 + 17, 16, 19, 22, 22, 22, 27, 36, 44, 48, 55, 72, 255, 255, 255, 255, 32.46518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 33, 32.46519 + 23, 24, 21, 17, 14, 12, 10, 8, 6, 9, 9, 12, 15, 21, 22, 20, 32.46520 + 18, 16, 15, 14, 14, 14, 14, 14, 15, 14, 14, 14, 15, 16, 19, 21, 32.46521 + 21, 20, 19, 22, 22, 21, 21, 22, 21, 26, 23, 19, 17, 14, 16, 21, 32.46522 + 26, 29, 28, 29, 27, 26, 26, 27, 28, 31, 27, 23, 25, 25, 21, 18, 32.46523 + 19, 24, 23, 23, 22, 21, 20, 19, 18, 12, 16, 20, 19, 19, 24, 36, 32.46524 + 46, 43, 51, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46525 + 255, 255, 255, 255, 255, 255, 255, 180, 20, 24, 21, 17, 15, 13, 11, 9, 32.46526 + 7, 8, 10, 14, 17, 22, 22, 21, 19, 18, 17, 16, 16, 16, 16, 17, 32.46527 + 17, 14, 14, 14, 15, 16, 19, 21, 23, 18, 17, 19, 19, 19, 19, 19, 32.46528 + 20, 20, 19, 18, 16, 14, 15, 17, 20, 24, 25, 25, 23, 23, 20, 19, 32.46529 + 17, 26, 23, 21, 20, 21, 19, 17, 16, 20, 20, 20, 21, 22, 22, 23, 32.46530 + 23, 16, 21, 25, 23, 19, 21, 31, 40, 31, 114, 255, 255, 255, 255, 255, 32.46531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46532 + 255, 179, 25, 21, 19, 16, 13, 9, 6, 7, 10, 13, 16, 19, 19, 19, 32.46533 + 19, 21, 20, 20, 19, 19, 19, 19, 20, 14, 14, 14, 15, 16, 19, 21, 32.46534 + 23, 17, 17, 16, 16, 19, 19, 16, 16, 14, 17, 21, 21, 22, 18, 19, 32.46535 + 19, 26, 27, 26, 24, 22, 19, 17, 17, 23, 22, 22, 20, 22, 23, 22, 32.46536 + 19, 19, 19, 20, 20, 21, 22, 23, 23, 21, 26, 30, 28, 24, 24, 30, 32.46537 + 37, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 28, 24, 19, 14, 9, 32.46539 + 4, 6, 9, 11, 12, 14, 14, 15, 17, 25, 24, 23, 21, 20, 20, 20, 32.46540 + 20, 14, 14, 14, 15, 16, 19, 21, 23, 17, 16, 15, 15, 18, 18, 15, 32.46541 + 14, 12, 18, 24, 27, 28, 25, 22, 23, 31, 30, 30, 28, 26, 24, 25, 32.46542 + 24, 23, 23, 23, 21, 23, 27, 26, 23, 21, 21, 20, 20, 20, 19, 19, 32.46543 + 19, 15, 18, 21, 23, 23, 27, 33, 38, 255, 255, 255, 255, 255, 255, 255, 32.46544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46545 + 255, 255, 255, 181, 28, 23, 17, 12, 7, 8, 10, 11, 10, 10, 10, 13, 32.46546 + 16, 27, 25, 24, 22, 20, 19, 19, 19, 14, 14, 14, 15, 16, 19, 21, 32.46547 + 23, 20, 17, 15, 16, 20, 20, 18, 14, 14, 19, 25, 28, 28, 24, 21, 32.46548 + 23, 26, 27, 27, 27, 27, 28, 31, 32, 24, 25, 23, 19, 21, 26, 25, 32.46549 + 20, 19, 19, 19, 19, 19, 18, 18, 18, 14, 13, 13, 16, 23, 32, 41, 32.46550 + 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 27, 23, 17, 32.46552 + 15, 12, 13, 13, 11, 8, 9, 15, 17, 25, 24, 22, 19, 17, 18, 17, 32.46553 + 17, 14, 14, 14, 15, 16, 17, 19, 21, 22, 19, 16, 17, 21, 22, 19, 32.46554 + 15, 15, 18, 22, 24, 23, 22, 20, 22, 19, 18, 19, 19, 21, 24, 30, 32.46555 + 32, 22, 24, 21, 16, 16, 20, 20, 13, 14, 15, 17, 18, 19, 21, 22, 32.46556 + 21, 24, 17, 13, 16, 28, 42, 55, 255, 255, 255, 255, 255, 255, 255, 255, 32.46557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46558 + 255, 255, 255, 255, 255, 255, 36, 32, 26, 20, 14, 14, 16, 17, 15, 27, 32.46559 + 38, 22, 15, 13, 16, 18, 17, 20, 27, 21, 20, 16, 15, 14, 14, 16, 32.46560 + 18, 17, 18, 16, 16, 16, 17, 18, 17, 12, 14, 15, 17, 21, 24, 23, 32.46561 + 18, 20, 21, 22, 21, 20, 20, 24, 26, 18, 17, 15, 13, 12, 12, 14, 32.46562 + 13, 13, 16, 20, 23, 25, 27, 26, 25, 23, 5, 21, 23, 42, 61, 154, 32.46563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 32.46565 + 24, 28, 22, 19, 20, 19, 19, 30, 42, 24, 15, 14, 15, 17, 15, 16, 32.46566 + 21, 15, 15, 12, 13, 12, 13, 15, 18, 17, 19, 17, 16, 16, 17, 16, 32.46567 + 16, 11, 17, 20, 19, 18, 21, 22, 20, 22, 23, 24, 23, 20, 19, 21, 32.46568 + 23, 18, 16, 14, 13, 14, 12, 14, 13, 15, 16, 18, 20, 24, 28, 27, 32.46569 + 26, 30, 21, 19, 18, 32, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46571 + 255, 255, 255, 255, 255, 255, 39, 41, 36, 23, 27, 36, 44, 43, 37, 31, 32.46572 + 29, 18, 11, 12, 13, 16, 16, 18, 22, 16, 16, 13, 13, 13, 13, 14, 32.46573 + 17, 19, 20, 17, 17, 17, 17, 15, 16, 15, 23, 26, 24, 19, 20, 22, 32.46574 + 22, 23, 24, 25, 24, 23, 19, 18, 18, 20, 19, 17, 15, 15, 15, 16, 32.46575 + 16, 14, 14, 13, 16, 20, 22, 23, 23, 6, 16, 7, 18, 38, 255, 255, 32.46576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 32.46578 + 42, 46, 57, 72, 81, 79, 70, 55, 44, 22, 18, 17, 16, 19, 21, 22, 32.46579 + 24, 24, 23, 19, 18, 15, 15, 13, 13, 19, 21, 18, 17, 17, 17, 15, 32.46580 + 16, 16, 22, 22, 20, 17, 20, 20, 18, 18, 21, 23, 22, 21, 17, 15, 32.46581 + 14, 21, 20, 19, 17, 17, 17, 20, 19, 17, 15, 16, 17, 20, 21, 22, 32.46582 + 18, 16, 44, 28, 33, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 79, 80, 77, 75, 76, 68, 32.46585 + 59, 36, 30, 26, 20, 21, 22, 23, 21, 24, 23, 22, 20, 16, 15, 13, 32.46586 + 12, 19, 19, 18, 17, 15, 16, 16, 17, 15, 14, 10, 10, 16, 21, 18, 32.46587 + 11, 11, 14, 19, 20, 18, 15, 16, 16, 22, 21, 22, 20, 20, 21, 24, 32.46588 + 21, 18, 18, 19, 20, 21, 23, 20, 16, 26, 64, 49, 47, 255, 255, 255, 32.46589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46591 + 255, 255, 255, 255, 255, 255, 196, 69, 52, 30, 25, 21, 14, 15, 21, 25, 32.46592 + 23, 19, 18, 20, 18, 17, 16, 14, 13, 18, 18, 18, 18, 16, 17, 18, 32.46593 + 19, 21, 17, 10, 11, 19, 25, 21, 11, 9, 10, 15, 15, 14, 13, 15, 32.46594 + 16, 20, 19, 20, 19, 21, 22, 23, 22, 14, 11, 13, 13, 18, 18, 19, 32.46595 + 15, 18, 54, 54, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46598 + 255, 181, 29, 22, 13, 13, 23, 27, 26, 19, 19, 21, 18, 17, 16, 14, 32.46599 + 14, 15, 15, 15, 15, 17, 18, 19, 20, 25, 23, 19, 17, 21, 26, 23, 32.46600 + 14, 10, 12, 13, 13, 14, 14, 16, 18, 19, 18, 19, 18, 18, 19, 22, 32.46601 + 19, 14, 9, 8, 11, 14, 22, 26, 27, 47, 66, 134, 255, 255, 255, 255, 32.46602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 24, 18, 22, 25, 32.46605 + 21, 26, 25, 24, 22, 19, 17, 14, 12, 14, 14, 14, 15, 17, 19, 20, 32.46606 + 21, 21, 22, 19, 15, 14, 16, 15, 11, 14, 13, 14, 13, 13, 13, 16, 32.46607 + 18, 16, 15, 14, 13, 15, 16, 18, 15, 23, 15, 14, 14, 22, 32, 42, 32.46608 + 46, 61, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46611 + 255, 255, 255, 255, 255, 22, 19, 23, 25, 17, 19, 22, 19, 14, 13, 14, 32.46612 + 15, 16, 16, 15, 15, 16, 18, 20, 21, 22, 21, 21, 19, 18, 17, 17, 32.46613 + 16, 17, 17, 16, 15, 16, 15, 14, 14, 17, 15, 14, 12, 14, 15, 16, 32.46614 + 12, 4, 17, 7, 10, 21, 23, 36, 36, 58, 255, 255, 255, 255, 255, 255, 32.46615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 22, 32.46618 + 24, 21, 21, 22, 18, 15, 12, 14, 15, 14, 13, 12, 12, 13, 14, 16, 32.46619 + 17, 23, 22, 21, 19, 18, 18, 18, 19, 18, 16, 17, 16, 16, 15, 15, 32.46620 + 15, 11, 11, 12, 13, 14, 17, 19, 14, 3, 13, 0, 6, 25, 39, 63, 32.46621 + 72, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46624 + 255, 255, 255, 255, 255, 255, 255, 255, 179, 29, 28, 27, 22, 19, 17, 18, 32.46625 + 19, 17, 16, 14, 13, 14, 15, 18, 19, 21, 20, 18, 17, 18, 19, 19, 32.46626 + 20, 19, 17, 19, 17, 16, 16, 15, 15, 9, 10, 10, 12, 13, 15, 17, 32.46627 + 13, 0, 14, 11, 25, 44, 53, 132, 255, 255, 255, 255, 255, 255, 255, 255, 32.46628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46631 + 255, 255, 30, 28, 24, 21, 20, 19, 20, 20, 21, 19, 17, 17, 17, 20, 32.46632 + 20, 18, 17, 14, 13, 14, 15, 16, 17, 18, 18, 19, 19, 17, 17, 16, 32.46633 + 14, 8, 7, 7, 9, 9, 10, 11, 4, 17, 36, 39, 57, 77, 137, 255, 32.46634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 22, 20, 19, 19, 32.46638 + 19, 23, 21, 19, 16, 16, 16, 18, 18, 19, 17, 16, 14, 13, 14, 18, 32.46639 + 20, 20, 20, 20, 19, 18, 17, 16, 14, 4, 4, 4, 5, 6, 7, 9, 32.46640 + 3, 8, 24, 23, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46644 + 255, 255, 255, 255, 255, 255, 180, 29, 28, 29, 29, 26, 23, 22, 21, 22, 32.46645 + 22, 25, 22, 21, 17, 16, 17, 21, 22, 21, 21, 22, 21, 20, 18, 17, 32.46646 + 13, 9, 8, 8, 12, 18, 24, 28, 27, 33, 51, 122, 255, 255, 255, 255, 32.46647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46651 + 184, 38, 37, 34, 30, 29, 27, 28, 28, 29, 26, 23, 19, 17, 18, 21, 32.46652 + 23, 20, 21, 22, 21, 21, 19, 18, 14, 11, 11, 12, 17, 27, 37, 47, 32.46653 + 48, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 35, 31, 27, 24, 24, 23, 32.46658 + 24, 26, 25, 20, 15, 13, 13, 15, 17, 16, 19, 18, 17, 18, 15, 14, 32.46659 + 12, 4, 3, 4, 10, 20, 31, 114, 255, 255, 255, 255, 255, 255, 255, 255, 32.46660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46664 + 255, 255, 255, 179, 26, 27, 26, 25, 26, 23, 24, 20, 14, 10, 12, 12, 32.46665 + 12, 16, 19, 12, 3, 3, 9, 16, 15, 16, 14, 97, 255, 255, 255, 255, 32.46666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 25, 32.46671 + 29, 29, 28, 24, 16, 15, 16, 15, 13, 16, 17, 18, 20, 22, 23, 26, 32.46672 + 26, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 22, 26, 31, 29, 32.46678 + 23, 20, 19, 23, 33, 37, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.46681 +/* Define image 'enemy4' of size 141x151x1x3 and type 'const unsigned char' */ 32.46682 +const unsigned char data_enemy4[] = { 32.46683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46687 + 255, 255, 255, 74, 86, 88, 35, 37, 86, 134, 52, 30, 50, 80, 68, 81, 32.46688 + 68, 74, 82, 89, 94, 100, 121, 185, 255, 255, 255, 255, 255, 255, 255, 255, 32.46689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 113, 127, 116, 126, 151, 162, 32.46696 + 180, 175, 164, 77, 71, 85, 113, 136, 139, 134, 113, 102, 151, 151, 136, 122, 32.46697 + 130, 132, 131, 152, 182, 198, 205, 239, 255, 255, 255, 255, 255, 255, 255, 255, 32.46698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46704 + 255, 204, 85, 73, 102, 101, 112, 156, 194, 202, 196, 206, 192, 160, 173, 152, 32.46705 + 169, 164, 190, 176, 153, 159, 138, 152, 160, 187, 176, 139, 135, 145, 148, 144, 32.46706 + 162, 192, 204, 194, 202, 215, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 106, 121, 131, 32.46713 + 145, 141, 177, 189, 203, 209, 220, 196, 181, 186, 159, 166, 152, 178, 195, 210, 32.46714 + 205, 163, 156, 152, 208, 209, 183, 169, 174, 152, 161, 166, 163, 178, 203, 213, 32.46715 + 206, 189, 195, 205, 216, 231, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46721 + 255, 255, 255, 255, 255, 255, 194, 85, 98, 108, 74, 84, 104, 135, 146, 206, 32.46722 + 224, 217, 189, 195, 178, 177, 165, 165, 170, 182, 193, 213, 174, 168, 188, 198, 32.46723 + 197, 185, 160, 166, 152, 171, 169, 171, 166, 153, 151, 158, 162, 155, 182, 182, 32.46724 + 185, 189, 193, 197, 206, 226, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46730 + 255, 48, 46, 64, 67, 78, 114, 119, 142, 149, 157, 151, 191, 195, 199, 173, 32.46731 + 177, 164, 178, 163, 176, 215, 169, 190, 168, 174, 192, 199, 177, 209, 227, 214, 32.46732 + 203, 145, 188, 172, 171, 163, 149, 142, 144, 147, 147, 164, 151, 136, 128, 130, 32.46733 + 142, 159, 174, 201, 215, 231, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 124, 110, 109, 32.46739 + 92, 102, 138, 154, 157, 181, 144, 178, 237, 203, 203, 179, 152, 162, 167, 154, 32.46740 + 182, 191, 168, 165, 166, 179, 166, 199, 160, 160, 183, 202, 185, 165, 173, 191, 32.46741 + 179, 150, 124, 124, 132, 134, 136, 141, 129, 166, 152, 128, 141, 135, 118, 131, 32.46742 + 143, 171, 214, 202, 200, 230, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46747 + 255, 255, 255, 255, 255, 255, 255, 205, 126, 116, 137, 135, 159, 172, 196, 233, 32.46748 + 201, 232, 223, 218, 194, 200, 195, 173, 155, 165, 170, 154, 185, 152, 151, 155, 32.46749 + 162, 159, 172, 170, 170, 147, 172, 185, 171, 163, 184, 187, 162, 128, 147, 151, 32.46750 + 138, 137, 151, 154, 143, 133, 142, 129, 130, 154, 145, 115, 108, 111, 111, 139, 32.46751 + 166, 184, 192, 194, 226, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46756 + 255, 255, 100, 115, 117, 134, 197, 192, 226, 225, 219, 235, 224, 235, 231, 209, 32.46757 + 188, 175, 186, 169, 171, 188, 160, 169, 146, 148, 150, 160, 189, 171, 129, 126, 32.46758 + 166, 170, 179, 157, 151, 166, 183, 195, 183, 156, 161, 164, 168, 165, 151, 137, 32.46759 + 134, 137, 144, 155, 159, 142, 110, 94, 116, 152, 144, 116, 97, 122, 146, 153, 32.46760 + 172, 184, 189, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 78, 54, 32.46765 + 96, 121, 154, 230, 198, 231, 211, 226, 219, 187, 202, 178, 161, 122, 127, 153, 32.46766 + 137, 151, 188, 153, 195, 187, 177, 178, 170, 174, 160, 167, 172, 205, 186, 203, 32.46767 + 183, 194, 209, 178, 135, 142, 172, 190, 182, 178, 171, 149, 129, 142, 167, 180, 32.46768 + 140, 120, 129, 141, 150, 135, 103, 113, 119, 107, 134, 155, 158, 172, 158, 150, 32.46769 + 151, 193, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46773 + 255, 255, 255, 255, 255, 255, 255, 210, 67, 42, 83, 93, 120, 196, 189, 244, 32.46774 + 217, 210, 208, 215, 205, 185, 191, 131, 145, 139, 117, 107, 120, 153, 156, 182, 32.46775 + 190, 222, 180, 186, 159, 160, 140, 141, 192, 190, 194, 169, 156, 149, 154, 161, 32.46776 + 158, 157, 158, 151, 150, 171, 169, 132, 104, 109, 131, 145, 139, 130, 137, 133, 32.46777 + 122, 139, 151, 131, 102, 117, 111, 129, 139, 137, 163, 160, 151, 135, 140, 171, 32.46778 + 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46782 + 255, 255, 255, 75, 103, 110, 113, 153, 146, 186, 218, 198, 221, 187, 193, 206, 32.46783 + 209, 185, 159, 173, 139, 148, 162, 133, 154, 177, 183, 185, 193, 176, 190, 149, 32.46784 + 135, 148, 164, 134, 140, 180, 169, 177, 175, 185, 198, 201, 172, 138, 133, 138, 32.46785 + 128, 128, 126, 122, 114, 110, 110, 109, 105, 135, 131, 132, 119, 109, 135, 156, 32.46786 + 145, 149, 133, 110, 108, 97, 87, 119, 148, 157, 136, 136, 157, 166, 165, 194, 32.46787 + 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 149, 126, 32.46791 + 132, 143, 183, 185, 206, 215, 211, 177, 180, 164, 183, 190, 220, 192, 193, 181, 32.46792 + 171, 196, 176, 177, 141, 180, 217, 162, 161, 163, 129, 144, 150, 139, 171, 168, 32.46793 + 131, 166, 190, 192, 207, 197, 179, 155, 136, 127, 120, 118, 110, 91, 115, 96, 32.46794 + 97, 119, 131, 120, 114, 120, 115, 119, 130, 133, 130, 134, 134, 120, 134, 120, 32.46795 + 121, 120, 116, 112, 109, 125, 134, 125, 126, 143, 158, 156, 137, 120, 144, 188, 32.46796 + 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46799 + 255, 255, 255, 255, 255, 255, 255, 255, 225, 166, 124, 133, 166, 183, 187, 224, 32.46800 + 191, 184, 221, 210, 173, 179, 176, 164, 189, 193, 163, 197, 210, 211, 189, 185, 32.46801 + 146, 140, 121, 159, 133, 137, 153, 164, 138, 113, 132, 154, 171, 171, 212, 166, 32.46802 + 145, 179, 178, 155, 150, 139, 115, 98, 108, 115, 102, 82, 108, 120, 99, 73, 32.46803 + 69, 84, 96, 114, 105, 104, 113, 120, 122, 125, 127, 133, 127, 134, 116, 128, 32.46804 + 157, 137, 127, 104, 107, 108, 116, 136, 144, 116, 75, 81, 87, 99, 128, 184, 32.46805 + 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46808 + 255, 255, 238, 231, 193, 163, 145, 149, 179, 203, 197, 170, 209, 176, 185, 150, 32.46809 + 165, 179, 160, 156, 175, 191, 207, 203, 195, 211, 192, 146, 132, 123, 161, 126, 32.46810 + 150, 138, 135, 148, 163, 178, 198, 218, 208, 170, 163, 136, 124, 107, 139, 142, 32.46811 + 133, 128, 110, 107, 114, 99, 88, 103, 119, 87, 67, 60, 53, 59, 75, 84, 32.46812 + 81, 95, 108, 113, 110, 111, 120, 129, 127, 123, 116, 110, 105, 101, 97, 94, 32.46813 + 97, 89, 102, 113, 107, 109, 113, 97, 93, 106, 81, 82, 93, 94, 133, 179, 32.46814 + 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 233, 32.46817 + 215, 170, 131, 135, 160, 197, 170, 152, 196, 147, 155, 148, 138, 165, 152, 179, 32.46818 + 185, 183, 183, 212, 156, 182, 144, 166, 139, 115, 91, 107, 155, 132, 147, 161, 32.46819 + 167, 168, 173, 182, 189, 206, 177, 167, 142, 128, 94, 90, 78, 76, 67, 54, 32.46820 + 54, 64, 65, 65, 72, 57, 52, 62, 76, 75, 72, 65, 55, 73, 84, 94, 32.46821 + 100, 101, 100, 102, 104, 111, 107, 102, 97, 94, 90, 86, 83, 73, 84, 97, 32.46822 + 97, 82, 77, 86, 88, 97, 110, 97, 92, 91, 84, 83, 81, 78, 121, 220, 32.46823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46825 + 255, 255, 255, 255, 255, 255, 255, 255, 236, 160, 203, 203, 170, 189, 188, 142, 32.46826 + 144, 154, 159, 146, 145, 164, 150, 140, 130, 170, 196, 203, 201, 150, 144, 126, 32.46827 + 183, 190, 176, 138, 138, 105, 117, 135, 110, 84, 98, 112, 123, 131, 145, 157, 32.46828 + 148, 130, 112, 114, 118, 105, 100, 73, 73, 82, 60, 52, 50, 52, 57, 71, 32.46829 + 77, 68, 39, 41, 56, 68, 70, 74, 70, 55, 73, 72, 71, 73, 78, 84, 32.46830 + 88, 91, 90, 88, 85, 83, 82, 79, 75, 74, 75, 79, 76, 75, 80, 81, 32.46831 + 79, 82, 89, 106, 122, 114, 109, 106, 96, 106, 66, 39, 55, 142, 255, 255, 32.46832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46834 + 255, 255, 255, 255, 211, 113, 183, 192, 194, 187, 174, 148, 157, 174, 128, 133, 32.46835 + 155, 177, 136, 134, 112, 99, 138, 140, 156, 143, 124, 157, 157, 174, 169, 135, 32.46836 + 142, 131, 136, 121, 91, 95, 65, 98, 108, 120, 134, 148, 148, 127, 102, 113, 32.46837 + 98, 80, 92, 133, 127, 93, 74, 58, 55, 63, 61, 54, 68, 75, 54, 56, 32.46838 + 53, 52, 48, 47, 63, 73, 64, 64, 64, 64, 67, 73, 79, 84, 87, 80, 32.46839 + 79, 79, 79, 79, 77, 73, 70, 80, 83, 68, 66, 89, 98, 93, 104, 98, 32.46840 + 93, 106, 99, 113, 122, 89, 88, 87, 73, 109, 157, 200, 255, 255, 255, 255, 32.46841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 158, 32.46843 + 167, 221, 193, 159, 159, 180, 214, 183, 151, 174, 177, 158, 130, 135, 172, 165, 32.46844 + 121, 151, 150, 150, 140, 143, 156, 182, 147, 154, 146, 92, 77, 88, 84, 116, 32.46845 + 114, 103, 115, 95, 105, 120, 141, 148, 129, 97, 77, 73, 54, 80, 91, 100, 32.46846 + 101, 80, 52, 55, 50, 49, 57, 47, 33, 46, 56, 37, 48, 46, 48, 44, 32.46847 + 41, 55, 63, 56, 52, 59, 68, 75, 78, 79, 78, 77, 76, 75, 75, 75, 32.46848 + 75, 74, 71, 69, 66, 79, 72, 66, 80, 86, 100, 128, 104, 76, 74, 82, 32.46849 + 127, 150, 98, 73, 70, 104, 152, 176, 174, 255, 255, 255, 255, 255, 255, 255, 32.46850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 188, 176, 157, 172, 168, 32.46852 + 172, 146, 165, 183, 174, 195, 187, 147, 182, 192, 173, 184, 172, 176, 164, 158, 32.46853 + 148, 133, 160, 147, 153, 94, 105, 112, 111, 107, 113, 144, 128, 86, 94, 91, 32.46854 + 122, 152, 144, 139, 132, 110, 82, 73, 79, 60, 73, 75, 90, 91, 90, 69, 32.46855 + 65, 50, 49, 47, 35, 28, 41, 53, 47, 39, 37, 44, 48, 47, 58, 66, 32.46856 + 61, 65, 64, 62, 61, 63, 70, 78, 83, 73, 72, 70, 69, 69, 67, 64, 32.46857 + 62, 64, 66, 61, 59, 72, 85, 98, 112, 95, 94, 99, 107, 134, 146, 122, 32.46858 + 113, 107, 122, 152, 192, 189, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46860 + 255, 255, 255, 255, 255, 255, 245, 219, 233, 207, 196, 200, 181, 147, 134, 197, 32.46861 + 200, 164, 174, 174, 145, 150, 158, 158, 156, 152, 215, 173, 168, 169, 188, 200, 32.46862 + 145, 134, 129, 133, 109, 101, 140, 90, 108, 154, 147, 138, 113, 157, 132, 110, 32.46863 + 85, 70, 67, 65, 63, 61, 61, 77, 83, 86, 52, 59, 70, 87, 46, 46, 32.46864 + 36, 29, 37, 44, 43, 43, 46, 38, 43, 50, 50, 59, 72, 76, 74, 63, 32.46865 + 50, 46, 53, 67, 79, 86, 70, 67, 63, 61, 59, 57, 54, 53, 66, 51, 32.46866 + 49, 58, 71, 87, 92, 83, 103, 130, 127, 115, 98, 88, 106, 123, 125, 128, 32.46867 + 135, 181, 189, 184, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46869 + 255, 255, 231, 202, 191, 216, 178, 159, 157, 177, 175, 166, 167, 160, 188, 191, 32.46870 + 172, 177, 156, 139, 155, 147, 206, 179, 190, 181, 157, 126, 113, 108, 115, 107, 32.46871 + 123, 139, 101, 101, 142, 146, 175, 136, 120, 121, 103, 87, 93, 87, 71, 63, 32.46872 + 64, 62, 54, 59, 54, 53, 73, 55, 77, 75, 66, 48, 52, 40, 39, 59, 32.46873 + 57, 38, 36, 48, 38, 45, 56, 55, 56, 66, 71, 56, 50, 48, 56, 71, 32.46874 + 79, 76, 70, 70, 66, 60, 56, 54, 52, 49, 47, 48, 42, 57, 68, 61, 32.46875 + 70, 84, 78, 112, 133, 106, 92, 79, 75, 115, 135, 138, 191, 182, 158, 146, 32.46876 + 180, 171, 197, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 161, 32.46878 + 146, 143, 166, 151, 194, 153, 145, 137, 131, 173, 170, 181, 161, 178, 175, 136, 32.46879 + 115, 136, 148, 183, 181, 172, 138, 137, 136, 149, 104, 120, 89, 90, 86, 126, 32.46880 + 126, 163, 203, 121, 148, 80, 96, 85, 69, 68, 75, 73, 58, 56, 63, 63, 32.46881 + 51, 50, 56, 67, 71, 64, 55, 53, 42, 44, 47, 46, 41, 38, 38, 40, 32.46882 + 49, 44, 42, 44, 44, 44, 47, 52, 50, 49, 48, 49, 53, 58, 64, 68, 32.46883 + 74, 59, 54, 64, 64, 50, 43, 47, 44, 47, 51, 53, 56, 64, 77, 88, 32.46884 + 85, 90, 102, 112, 118, 121, 129, 138, 161, 162, 159, 151, 149, 160, 178, 192, 32.46885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 180, 209, 219, 189, 167, 202, 32.46887 + 203, 195, 135, 150, 214, 218, 212, 192, 187, 180, 166, 160, 120, 127, 149, 198, 32.46888 + 197, 214, 165, 170, 176, 152, 166, 129, 117, 111, 117, 118, 120, 139, 105, 93, 32.46889 + 91, 74, 85, 90, 66, 74, 70, 74, 72, 59, 56, 60, 56, 57, 53, 54, 32.46890 + 61, 63, 57, 53, 50, 64, 61, 55, 45, 36, 33, 35, 39, 39, 35, 33, 32.46891 + 35, 36, 35, 38, 42, 42, 41, 40, 40, 42, 47, 52, 55, 67, 55, 48, 32.46892 + 52, 53, 46, 42, 45, 34, 37, 41, 42, 43, 50, 61, 70, 76, 97, 122, 32.46893 + 134, 127, 118, 123, 135, 130, 138, 146, 149, 148, 148, 150, 152, 155, 255, 255, 32.46894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46895 + 255, 255, 255, 255, 255, 223, 180, 203, 195, 185, 188, 235, 223, 202, 191, 207, 32.46896 + 247, 213, 240, 178, 154, 162, 168, 123, 152, 172, 194, 230, 223, 197, 198, 218, 32.46897 + 190, 149, 126, 140, 126, 111, 124, 115, 121, 107, 118, 137, 146, 117, 100, 71, 32.46898 + 67, 67, 63, 59, 63, 62, 52, 51, 55, 50, 62, 56, 52, 53, 52, 50, 32.46899 + 50, 50, 60, 55, 48, 38, 31, 29, 34, 40, 34, 30, 30, 32, 33, 32, 32.46900 + 34, 39, 40, 38, 36, 36, 37, 41, 44, 47, 55, 48, 41, 37, 39, 41, 32.46901 + 42, 41, 37, 38, 39, 38, 38, 43, 52, 59, 84, 97, 110, 112, 101, 92, 32.46902 + 99, 113, 114, 125, 140, 151, 151, 142, 132, 126, 132, 255, 255, 255, 255, 255, 32.46903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46904 + 255, 145, 143, 153, 180, 196, 184, 214, 204, 176, 174, 168, 206, 202, 160, 137, 32.46905 + 169, 191, 159, 146, 166, 217, 224, 237, 233, 195, 191, 153, 145, 122, 142, 136, 32.46906 + 104, 73, 87, 129, 130, 130, 108, 84, 124, 146, 101, 131, 105, 82, 40, 52, 32.46907 + 51, 59, 60, 50, 52, 59, 58, 61, 57, 52, 48, 47, 47, 49, 49, 46, 32.46908 + 44, 44, 39, 34, 32, 34, 37, 36, 33, 33, 36, 37, 35, 37, 40, 40, 32.46909 + 39, 37, 36, 36, 38, 41, 43, 44, 45, 40, 32, 34, 42, 43, 38, 44, 32.46910 + 44, 43, 42, 42, 46, 52, 57, 77, 73, 70, 72, 73, 73, 77, 83, 94, 32.46911 + 101, 115, 128, 131, 125, 116, 112, 127, 180, 255, 255, 255, 255, 255, 255, 255, 32.46912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 133, 143, 32.46913 + 178, 215, 221, 203, 201, 169, 213, 209, 165, 190, 156, 205, 228, 161, 109, 127, 32.46914 + 162, 218, 236, 244, 202, 199, 177, 112, 123, 121, 132, 112, 127, 132, 113, 98, 32.46915 + 62, 62, 105, 139, 176, 157, 156, 139, 111, 133, 119, 45, 67, 66, 75, 74, 32.46916 + 59, 58, 67, 68, 53, 52, 50, 46, 45, 46, 48, 48, 53, 51, 48, 41, 32.46917 + 34, 29, 30, 32, 34, 31, 32, 36, 36, 33, 33, 36, 32, 31, 29, 28, 32.46918 + 29, 30, 32, 34, 37, 43, 42, 34, 35, 43, 43, 35, 40, 40, 38, 36, 32.46919 + 39, 41, 47, 51, 48, 46, 51, 61, 69, 71, 72, 74, 79, 84, 98, 115, 32.46920 + 124, 122, 121, 123, 139, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 133, 121, 162, 239, 235, 202, 32.46922 + 216, 184, 206, 198, 232, 240, 255, 225, 166, 159, 166, 162, 156, 142, 190, 183, 32.46923 + 175, 195, 143, 109, 121, 146, 126, 117, 133, 108, 115, 98, 102, 105, 146, 178, 32.46924 + 167, 136, 122, 149, 140, 127, 109, 126, 104, 85, 82, 87, 82, 64, 58, 63, 32.46925 + 62, 46, 50, 50, 46, 44, 46, 47, 45, 53, 48, 42, 33, 26, 25, 31, 32.46926 + 36, 34, 32, 33, 37, 37, 32, 31, 32, 28, 28, 27, 27, 28, 29, 31, 32.46927 + 33, 38, 44, 45, 41, 40, 44, 42, 35, 38, 37, 34, 33, 35, 37, 41, 32.46928 + 43, 45, 48, 54, 56, 55, 56, 68, 81, 70, 76, 94, 116, 127, 127, 129, 32.46929 + 136, 141, 127, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46930 + 255, 255, 255, 255, 255, 202, 135, 139, 137, 168, 205, 184, 179, 228, 156, 224, 32.46931 + 202, 240, 219, 167, 183, 148, 165, 138, 149, 155, 148, 157, 159, 184, 143, 157, 32.46932 + 129, 131, 102, 120, 106, 126, 104, 109, 111, 105, 116, 131, 155, 117, 137, 128, 32.46933 + 144, 124, 148, 102, 95, 80, 81, 72, 72, 69, 56, 53, 53, 45, 43, 48, 32.46934 + 49, 43, 40, 42, 44, 41, 40, 38, 35, 30, 27, 28, 35, 41, 36, 34, 32.46935 + 36, 39, 38, 32, 29, 30, 27, 27, 27, 28, 29, 32, 34, 35, 41, 43, 32.46936 + 44, 43, 41, 40, 38, 36, 40, 38, 35, 33, 33, 34, 37, 38, 52, 50, 32.46937 + 50, 49, 48, 51, 66, 81, 64, 69, 85, 104, 110, 107, 111, 122, 122, 132, 32.46938 + 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46939 + 255, 189, 90, 139, 132, 148, 167, 183, 206, 197, 147, 215, 204, 214, 167, 175, 32.46940 + 202, 157, 172, 148, 128, 143, 117, 146, 184, 196, 183, 180, 159, 144, 123, 135, 32.46941 + 110, 110, 116, 147, 115, 122, 121, 163, 157, 196, 163, 141, 125, 116, 133, 65, 32.46942 + 104, 107, 85, 68, 54, 51, 53, 50, 52, 50, 37, 43, 48, 48, 39, 35, 32.46943 + 38, 41, 39, 36, 40, 43, 42, 38, 35, 35, 37, 34, 32, 33, 36, 35, 32.46944 + 28, 24, 25, 23, 23, 24, 26, 28, 31, 33, 35, 45, 43, 43, 43, 40, 32.46945 + 36, 35, 37, 41, 38, 35, 32, 31, 31, 33, 32, 37, 34, 38, 52, 67, 32.46946 + 71, 70, 68, 82, 83, 92, 103, 102, 96, 103, 119, 100, 119, 134, 255, 255, 32.46947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 125, 176, 32.46948 + 200, 225, 211, 171, 212, 237, 188, 187, 142, 156, 147, 165, 130, 145, 174, 161, 32.46949 + 140, 108, 107, 154, 179, 150, 135, 159, 132, 130, 141, 127, 134, 119, 130, 129, 32.46950 + 102, 114, 135, 149, 169, 179, 157, 134, 120, 123, 103, 104, 98, 123, 108, 94, 32.46951 + 75, 62, 55, 59, 56, 47, 45, 50, 57, 54, 51, 45, 40, 31, 36, 41, 32.46952 + 36, 39, 37, 31, 32, 38, 40, 37, 27, 34, 43, 46, 37, 23, 18, 20, 32.46953 + 25, 23, 23, 25, 30, 35, 38, 39, 35, 39, 43, 44, 43, 40, 39, 38, 32.46954 + 36, 41, 43, 40, 34, 34, 40, 48, 35, 40, 46, 56, 66, 71, 70, 68, 32.46955 + 69, 65, 67, 75, 84, 90, 97, 105, 102, 101, 119, 126, 255, 255, 255, 255, 32.46956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 193, 183, 171, 210, 230, 195, 32.46957 + 170, 191, 191, 172, 168, 186, 189, 172, 167, 177, 160, 142, 122, 141, 153, 167, 32.46958 + 174, 164, 145, 129, 124, 146, 132, 121, 131, 135, 132, 118, 112, 161, 152, 130, 32.46959 + 147, 156, 143, 150, 139, 110, 140, 167, 153, 126, 96, 83, 74, 82, 66, 55, 32.46960 + 57, 55, 49, 48, 53, 53, 47, 40, 40, 40, 37, 37, 38, 35, 37, 36, 32.46961 + 31, 31, 36, 39, 36, 41, 32, 27, 31, 36, 34, 26, 21, 17, 19, 22, 32.46962 + 25, 29, 32, 34, 36, 46, 47, 49, 47, 44, 40, 38, 38, 37, 38, 38, 32.46963 + 36, 35, 36, 38, 40, 35, 37, 42, 49, 56, 59, 58, 56, 54, 51, 54, 32.46964 + 63, 72, 80, 90, 98, 96, 97, 117, 126, 177, 255, 255, 255, 255, 255, 255, 32.46965 + 255, 255, 255, 255, 255, 237, 178, 201, 200, 201, 195, 200, 158, 167, 196, 205, 32.46966 + 230, 225, 159, 143, 173, 155, 142, 123, 135, 128, 121, 117, 107, 89, 87, 114, 32.46967 + 134, 128, 107, 114, 109, 128, 108, 116, 114, 134, 160, 174, 201, 165, 155, 178, 32.46968 + 157, 156, 194, 136, 122, 129, 149, 104, 96, 99, 79, 61, 48, 48, 48, 46, 32.46969 + 46, 50, 52, 41, 33, 37, 42, 41, 36, 33, 34, 35, 33, 30, 30, 35, 32.46970 + 37, 36, 42, 41, 40, 37, 28, 19, 20, 26, 21, 26, 30, 32, 31, 31, 32.46971 + 32, 35, 42, 42, 42, 39, 34, 31, 30, 30, 35, 33, 31, 32, 35, 37, 32.46972 + 35, 33, 33, 35, 38, 43, 47, 47, 45, 43, 48, 46, 48, 55, 64, 71, 32.46973 + 82, 92, 93, 91, 107, 112, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.46974 + 255, 185, 130, 110, 116, 154, 211, 217, 209, 187, 197, 207, 200, 186, 147, 157, 32.46975 + 159, 150, 123, 161, 140, 99, 134, 159, 147, 151, 159, 152, 149, 149, 141, 126, 32.46976 + 133, 118, 102, 84, 119, 165, 209, 199, 160, 103, 132, 151, 124, 131, 108, 108, 32.46977 + 129, 142, 122, 131, 126, 102, 51, 69, 54, 42, 42, 45, 46, 46, 47, 51, 32.46978 + 42, 35, 38, 42, 39, 34, 30, 34, 34, 32, 30, 31, 33, 36, 36, 32, 32.46979 + 39, 47, 45, 32, 19, 20, 28, 33, 36, 39, 36, 30, 26, 29, 32, 41, 32.46980 + 41, 40, 37, 34, 33, 34, 36, 28, 27, 28, 30, 33, 35, 33, 32, 32, 32.46981 + 34, 36, 39, 41, 40, 38, 36, 48, 45, 46, 51, 56, 62, 72, 82, 92, 32.46982 + 86, 94, 91, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 169, 32.46983 + 165, 190, 197, 152, 200, 190, 202, 194, 193, 205, 178, 148, 163, 145, 165, 175, 32.46984 + 153, 158, 131, 134, 110, 139, 196, 238, 224, 175, 140, 127, 110, 124, 137, 128, 32.46985 + 152, 166, 169, 142, 121, 129, 164, 131, 127, 150, 113, 102, 121, 103, 87, 95, 32.46986 + 71, 53, 53, 80, 59, 49, 43, 45, 49, 51, 49, 48, 46, 42, 39, 41, 32.46987 + 40, 36, 35, 38, 37, 35, 33, 32, 32, 33, 35, 37, 33, 26, 26, 35, 32.46988 + 44, 44, 38, 33, 36, 38, 36, 30, 23, 21, 25, 30, 29, 29, 28, 25, 32.46989 + 22, 22, 24, 26, 21, 24, 28, 29, 30, 30, 32, 34, 32, 34, 36, 38, 32.46990 + 38, 38, 37, 36, 42, 40, 41, 45, 48, 52, 62, 71, 83, 79, 88, 83, 32.46991 + 87, 101, 255, 255, 255, 255, 255, 255, 255, 255, 45, 101, 130, 129, 89, 132, 32.46992 + 167, 184, 185, 212, 190, 175, 191, 173, 171, 129, 166, 162, 163, 156, 158, 138, 32.46993 + 186, 209, 203, 177, 152, 142, 133, 131, 146, 121, 119, 123, 105, 142, 152, 148, 32.46994 + 104, 107, 88, 58, 94, 110, 91, 119, 124, 112, 102, 69, 67, 54, 71, 47, 32.46995 + 33, 46, 43, 42, 44, 46, 47, 45, 43, 38, 39, 40, 42, 39, 36, 41, 32.46996 + 49, 42, 38, 35, 35, 35, 33, 34, 38, 38, 30, 26, 33, 41, 44, 44, 32.46997 + 45, 37, 36, 33, 27, 23, 24, 29, 34, 22, 22, 20, 18, 15, 13, 15, 32.46998 + 17, 23, 25, 28, 29, 27, 28, 31, 34, 31, 34, 37, 38, 37, 36, 36, 32.46999 + 37, 37, 37, 41, 46, 48, 50, 59, 69, 69, 70, 88, 87, 89, 98, 149, 32.47000 + 255, 255, 255, 255, 255, 255, 204, 97, 129, 108, 103, 86, 143, 184, 160, 174, 32.47001 + 193, 195, 187, 176, 164, 163, 184, 163, 151, 158, 147, 163, 181, 157, 154, 163, 32.47002 + 139, 132, 160, 152, 122, 123, 122, 129, 136, 134, 138, 129, 111, 85, 66, 77, 32.47003 + 102, 82, 68, 78, 73, 87, 91, 72, 65, 77, 66, 42, 35, 51, 39, 41, 32.47004 + 42, 41, 39, 39, 39, 39, 38, 38, 39, 40, 38, 36, 43, 52, 47, 41, 32.47005 + 38, 39, 37, 33, 34, 39, 41, 39, 39, 41, 40, 37, 39, 44, 36, 33, 32.47006 + 30, 27, 25, 26, 28, 30, 30, 31, 32, 31, 29, 29, 30, 32, 32, 30, 32.47007 + 27, 26, 28, 29, 28, 28, 30, 33, 36, 36, 34, 33, 34, 35, 37, 38, 32.47008 + 43, 47, 47, 47, 54, 63, 63, 65, 82, 79, 79, 87, 86, 255, 255, 255, 32.47009 + 255, 255, 255, 67, 101, 158, 154, 167, 169, 190, 200, 251, 234, 181, 176, 173, 32.47010 + 153, 170, 178, 155, 161, 159, 151, 155, 143, 178, 154, 142, 153, 125, 118, 147, 32.47011 + 128, 107, 141, 156, 148, 129, 137, 112, 103, 79, 79, 87, 74, 62, 73, 77, 32.47012 + 70, 74, 78, 48, 63, 72, 38, 44, 44, 45, 17, 42, 46, 47, 43, 38, 32.47013 + 38, 40, 41, 42, 40, 37, 38, 36, 35, 40, 47, 51, 44, 40, 41, 39, 32.47014 + 34, 34, 40, 45, 32, 27, 40, 57, 58, 43, 30, 32, 29, 25, 23, 22, 32.47015 + 21, 19, 17, 18, 20, 23, 25, 26, 27, 30, 32, 42, 34, 26, 25, 29, 32.47016 + 30, 27, 22, 30, 33, 35, 34, 31, 30, 31, 32, 35, 37, 41, 43, 41, 32.47017 + 37, 43, 50, 66, 63, 73, 63, 60, 70, 75, 255, 255, 255, 255, 255, 79, 32.47018 + 90, 104, 79, 162, 144, 118, 176, 184, 185, 182, 167, 157, 152, 161, 165, 167, 32.47019 + 154, 150, 158, 149, 152, 162, 147, 142, 125, 143, 110, 149, 131, 153, 152, 153, 32.47020 + 105, 110, 114, 129, 106, 105, 88, 76, 78, 70, 64, 65, 72, 78, 78, 76, 32.47021 + 80, 69, 60, 56, 44, 30, 29, 38, 39, 41, 45, 49, 48, 44, 37, 31, 32.47022 + 33, 36, 37, 37, 34, 29, 26, 25, 33, 34, 34, 34, 35, 37, 35, 32, 32.47023 + 39, 35, 35, 40, 42, 37, 32, 30, 16, 17, 19, 21, 22, 22, 21, 21, 32.47024 + 18, 20, 22, 24, 26, 29, 33, 35, 39, 39, 38, 33, 28, 27, 29, 32, 32.47025 + 41, 34, 32, 37, 38, 33, 29, 30, 36, 27, 27, 38, 40, 36, 48, 67, 32.47026 + 58, 53, 48, 47, 53, 64, 74, 138, 255, 255, 255, 255, 166, 173, 130, 144, 32.47027 + 142, 112, 165, 171, 173, 145, 162, 177, 180, 173, 161, 145, 134, 157, 150, 154, 32.47028 + 141, 139, 141, 120, 112, 101, 130, 129, 169, 155, 149, 127, 109, 109, 105, 99, 32.47029 + 110, 90, 96, 82, 71, 39, 45, 57, 67, 75, 78, 79, 78, 71, 58, 52, 32.47030 + 50, 44, 35, 37, 48, 46, 46, 48, 50, 48, 44, 38, 33, 42, 42, 41, 32.47031 + 40, 37, 33, 30, 28, 28, 28, 27, 25, 25, 25, 24, 22, 34, 30, 31, 32.47032 + 37, 39, 36, 32, 32, 27, 26, 25, 24, 23, 21, 19, 18, 19, 24, 29, 32.47033 + 30, 29, 31, 38, 44, 40, 39, 35, 30, 26, 26, 30, 34, 26, 23, 26, 32.47034 + 34, 38, 35, 33, 35, 41, 37, 39, 45, 45, 42, 50, 63, 70, 64, 57, 32.47035 + 53, 54, 59, 65, 68, 255, 255, 255, 255, 77, 70, 139, 90, 147, 195, 156, 32.47036 + 162, 174, 158, 170, 179, 171, 165, 158, 160, 158, 147, 143, 151, 143, 141, 142, 32.47037 + 123, 118, 113, 133, 142, 159, 152, 131, 117, 98, 114, 108, 99, 111, 96, 105, 32.47038 + 92, 80, 55, 53, 56, 64, 73, 75, 70, 65, 59, 48, 41, 39, 38, 35, 32.47039 + 39, 48, 48, 48, 49, 50, 49, 48, 44, 40, 44, 43, 40, 40, 40, 38, 32.47040 + 34, 32, 32, 30, 28, 26, 24, 22, 22, 23, 30, 27, 28, 33, 36, 33, 32.47041 + 31, 32, 28, 26, 23, 20, 17, 16, 15, 15, 24, 31, 37, 35, 29, 28, 32.47042 + 35, 42, 37, 35, 32, 27, 25, 27, 31, 36, 28, 28, 32, 36, 34, 29, 32.47043 + 26, 28, 43, 46, 49, 49, 48, 49, 55, 59, 65, 63, 59, 56, 57, 60, 32.47044 + 64, 67, 255, 255, 255, 255, 77, 92, 129, 125, 103, 90, 125, 160, 145, 182, 32.47045 + 188, 195, 180, 178, 164, 164, 157, 150, 148, 158, 146, 134, 128, 108, 107, 139, 32.47046 + 140, 145, 133, 134, 115, 120, 114, 118, 117, 114, 126, 105, 107, 89, 75, 74, 32.47047 + 78, 85, 80, 72, 62, 57, 55, 60, 50, 41, 39, 39, 36, 41, 46, 46, 32.47048 + 46, 46, 48, 49, 50, 50, 49, 35, 36, 35, 39, 41, 40, 36, 33, 36, 32.47049 + 33, 32, 31, 30, 29, 31, 35, 32, 29, 30, 33, 34, 30, 28, 30, 23, 32.47050 + 21, 18, 16, 15, 16, 18, 20, 33, 36, 36, 32, 25, 21, 24, 27, 31, 32.47051 + 30, 29, 29, 29, 31, 34, 36, 35, 36, 37, 35, 29, 24, 24, 26, 41, 32.47052 + 49, 51, 45, 43, 50, 55, 53, 53, 54, 55, 56, 58, 60, 63, 65, 125, 32.47053 + 255, 255, 188, 81, 74, 65, 112, 158, 135, 120, 163, 170, 176, 161, 152, 129, 32.47054 + 149, 157, 183, 185, 148, 149, 164, 155, 143, 137, 125, 133, 132, 127, 142, 122, 32.47055 + 129, 110, 114, 109, 118, 121, 119, 125, 93, 87, 68, 59, 56, 78, 100, 95, 32.47056 + 73, 55, 57, 64, 70, 60, 50, 47, 48, 48, 50, 50, 47, 45, 44, 46, 32.47057 + 46, 48, 48, 48, 31, 34, 37, 41, 43, 39, 34, 29, 33, 30, 30, 34, 32.47058 + 33, 32, 36, 44, 38, 36, 36, 38, 34, 28, 25, 26, 23, 21, 19, 17, 32.47059 + 18, 21, 25, 27, 38, 34, 30, 27, 24, 22, 19, 17, 25, 27, 30, 33, 32.47060 + 36, 37, 36, 35, 29, 30, 30, 26, 24, 26, 32, 37, 40, 48, 47, 36, 32.47061 + 32, 39, 45, 42, 47, 50, 53, 54, 54, 54, 55, 56, 62, 255, 255, 93, 32.47062 + 80, 82, 87, 136, 115, 131, 161, 156, 173, 157, 155, 179, 179, 215, 202, 200, 32.47063 + 173, 136, 135, 152, 150, 148, 150, 145, 157, 119, 110, 126, 106, 115, 104, 103, 32.47064 + 102, 115, 116, 112, 114, 82, 82, 73, 72, 70, 68, 66, 66, 68, 68, 68, 32.47065 + 68, 69, 57, 49, 48, 54, 57, 56, 54, 51, 49, 46, 45, 43, 43, 41, 32.47066 + 40, 37, 41, 44, 45, 41, 35, 29, 26, 32, 29, 32, 38, 37, 33, 38, 32.47067 + 48, 40, 39, 41, 42, 37, 29, 25, 26, 22, 20, 18, 16, 17, 19, 22, 32.47068 + 24, 34, 29, 25, 25, 28, 30, 27, 23, 27, 29, 33, 38, 42, 41, 36, 32.47069 + 32, 28, 28, 24, 18, 17, 24, 31, 34, 41, 45, 42, 31, 24, 28, 33, 32.47070 + 31, 35, 41, 48, 51, 53, 53, 56, 59, 67, 255, 255, 76, 85, 96, 84, 32.47071 + 95, 153, 144, 120, 199, 163, 177, 160, 167, 146, 178, 161, 164, 139, 148, 132, 32.47072 + 134, 128, 126, 125, 111, 116, 125, 106, 111, 89, 94, 100, 98, 107, 109, 107, 32.47073 + 101, 105, 81, 88, 85, 87, 90, 71, 55, 56, 73, 83, 76, 63, 59, 52, 32.47074 + 45, 45, 54, 61, 59, 52, 53, 50, 47, 45, 42, 40, 38, 35, 41, 46, 32.47075 + 48, 45, 36, 29, 28, 29, 36, 32, 35, 41, 38, 30, 33, 44, 34, 36, 32.47076 + 41, 45, 41, 33, 29, 30, 18, 17, 15, 14, 15, 17, 19, 21, 26, 25, 32.47077 + 25, 27, 31, 34, 35, 35, 36, 36, 38, 41, 43, 41, 35, 30, 37, 35, 32.47078 + 27, 17, 15, 21, 23, 20, 35, 37, 37, 32, 26, 25, 29, 31, 31, 38, 32.47079 + 47, 52, 54, 55, 59, 62, 63, 120, 255, 100, 85, 96, 114, 153, 121, 157, 32.47080 + 166, 147, 181, 154, 138, 147, 127, 168, 161, 179, 162, 160, 135, 128, 124, 129, 32.47081 + 132, 114, 114, 130, 109, 108, 89, 90, 104, 96, 109, 106, 101, 92, 98, 75, 32.47082 + 82, 74, 70, 61, 74, 90, 95, 92, 81, 73, 67, 58, 49, 43, 46, 56, 32.47083 + 63, 60, 52, 52, 49, 47, 45, 45, 44, 41, 37, 41, 45, 48, 40, 30, 32.47084 + 25, 29, 35, 35, 32, 35, 40, 34, 23, 24, 34, 27, 31, 39, 45, 43, 32.47085 + 36, 35, 35, 18, 18, 18, 19, 21, 22, 25, 26, 21, 23, 27, 29, 30, 32.47086 + 32, 37, 41, 45, 43, 44, 42, 42, 39, 34, 29, 38, 36, 28, 19, 19, 32.47087 + 25, 24, 18, 27, 29, 33, 35, 32, 30, 32, 36, 42, 49, 55, 56, 53, 32.47088 + 50, 52, 54, 54, 55, 255, 92, 105, 120, 152, 175, 196, 187, 161, 160, 158, 32.47089 + 150, 157, 183, 174, 170, 177, 159, 162, 149, 154, 136, 129, 138, 117, 99, 119, 32.47090 + 109, 108, 97, 93, 102, 106, 109, 118, 97, 92, 88, 86, 79, 68, 62, 62, 32.47091 + 57, 59, 77, 81, 66, 68, 73, 53, 54, 51, 55, 62, 58, 49, 50, 63, 32.47092 + 58, 63, 63, 57, 50, 45, 40, 34, 41, 44, 46, 42, 37, 35, 29, 25, 32.47093 + 35, 33, 37, 44, 42, 32, 27, 27, 35, 36, 44, 51, 51, 44, 39, 37, 32.47094 + 29, 28, 27, 29, 32, 30, 25, 21, 27, 27, 25, 25, 26, 28, 30, 32, 32.47095 + 37, 33, 35, 41, 44, 41, 37, 35, 33, 29, 37, 41, 27, 20, 26, 31, 32.47096 + 36, 39, 40, 40, 39, 43, 49, 53, 57, 58, 58, 56, 54, 54, 55, 55, 32.47097 + 45, 56, 255, 80, 98, 129, 142, 158, 196, 204, 178, 155, 131, 182, 169, 171, 32.47098 + 158, 163, 175, 154, 149, 148, 153, 137, 126, 134, 129, 118, 122, 114, 117, 109, 32.47099 + 101, 102, 97, 92, 98, 95, 89, 82, 78, 71, 62, 58, 59, 67, 69, 82, 32.47100 + 81, 63, 60, 63, 50, 44, 50, 54, 53, 51, 51, 54, 58, 54, 58, 57, 32.47101 + 52, 48, 48, 45, 40, 40, 45, 45, 41, 37, 37, 33, 30, 32, 30, 31, 32.47102 + 36, 34, 27, 24, 26, 32, 36, 44, 53, 57, 52, 48, 48, 34, 34, 34, 32.47103 + 35, 35, 33, 29, 24, 28, 27, 27, 26, 27, 29, 31, 33, 41, 40, 41, 32.47104 + 47, 48, 45, 42, 43, 46, 37, 41, 44, 35, 30, 31, 29, 34, 39, 44, 32.47105 + 46, 49, 50, 52, 54, 51, 52, 53, 51, 50, 49, 51, 51, 48, 54, 255, 32.47106 + 81, 105, 119, 134, 148, 175, 168, 139, 140, 142, 162, 182, 202, 174, 140, 135, 32.47107 + 147, 177, 150, 151, 138, 120, 118, 123, 117, 105, 102, 110, 107, 104, 105, 96, 32.47108 + 86, 88, 94, 87, 80, 76, 71, 64, 63, 66, 80, 81, 88, 81, 63, 59, 32.47109 + 61, 54, 45, 56, 60, 50, 47, 55, 57, 51, 61, 62, 59, 55, 55, 59, 32.47110 + 56, 50, 45, 50, 48, 43, 39, 39, 36, 33, 38, 35, 35, 37, 36, 32, 32.47111 + 33, 34, 38, 41, 46, 54, 56, 50, 45, 44, 40, 42, 43, 41, 39, 36, 32.47112 + 35, 34, 30, 28, 28, 29, 30, 32, 34, 35, 41, 41, 43, 47, 47, 43, 32.47113 + 43, 47, 52, 37, 37, 43, 40, 39, 35, 27, 38, 43, 49, 53, 55, 52, 32.47114 + 50, 50, 47, 49, 50, 49, 48, 47, 48, 49, 55, 55, 120, 196, 95, 128, 32.47115 + 150, 164, 177, 149, 120, 149, 183, 158, 163, 167, 160, 152, 151, 151, 157, 161, 32.47116 + 154, 148, 136, 124, 125, 123, 110, 94, 100, 99, 100, 106, 99, 86, 85, 88, 32.47117 + 82, 78, 77, 75, 70, 70, 73, 87, 85, 84, 78, 69, 66, 67, 64, 60, 32.47118 + 66, 67, 58, 53, 53, 53, 48, 70, 69, 65, 63, 66, 66, 61, 52, 53, 32.47119 + 57, 56, 51, 45, 43, 38, 33, 40, 40, 42, 43, 42, 40, 38, 39, 36, 32.47120 + 36, 43, 48, 48, 42, 38, 37, 46, 48, 51, 48, 43, 38, 41, 40, 32, 32.47121 + 31, 32, 33, 34, 33, 37, 37, 36, 36, 39, 42, 39, 36, 39, 44, 47, 32.47122 + 37, 36, 42, 42, 44, 42, 32, 44, 47, 51, 52, 52, 48, 43, 40, 47, 32.47123 + 49, 50, 50, 50, 49, 50, 50, 57, 52, 48, 255, 74, 117, 126, 131, 147, 32.47124 + 138, 117, 136, 154, 157, 145, 131, 139, 155, 158, 148, 132, 149, 139, 141, 143, 32.47125 + 131, 121, 121, 121, 107, 107, 99, 98, 106, 100, 83, 78, 80, 77, 76, 78, 32.47126 + 76, 71, 69, 71, 91, 87, 78, 73, 75, 70, 68, 68, 75, 70, 68, 68, 32.47127 + 62, 51, 50, 54, 65, 66, 65, 63, 66, 65, 57, 45, 53, 59, 60, 57, 32.47128 + 52, 49, 45, 40, 38, 40, 43, 44, 42, 40, 36, 35, 28, 28, 33, 41, 32.47129 + 44, 43, 43, 45, 56, 57, 58, 53, 46, 40, 40, 40, 36, 35, 36, 37, 32.47130 + 37, 37, 38, 38, 36, 38, 41, 43, 40, 34, 37, 43, 46, 42, 47, 49, 32.47131 + 42, 44, 46, 38, 43, 44, 44, 43, 44, 41, 38, 36, 45, 48, 50, 51, 32.47132 + 51, 50, 51, 51, 52, 46, 43, 255, 89, 129, 133, 127, 139, 140, 133, 152, 32.47133 + 161, 147, 157, 150, 148, 135, 123, 141, 150, 143, 135, 133, 137, 131, 115, 108, 32.47134 + 115, 114, 112, 100, 97, 105, 100, 87, 83, 81, 79, 79, 82, 80, 75, 73, 32.47135 + 74, 87, 85, 74, 69, 74, 69, 63, 68, 77, 68, 67, 74, 71, 59, 57, 32.47136 + 65, 61, 64, 66, 66, 67, 65, 57, 45, 46, 52, 57, 55, 54, 53, 53, 32.47137 + 49, 41, 48, 50, 48, 47, 46, 41, 36, 37, 35, 36, 42, 47, 47, 50, 32.47138 + 54, 68, 67, 64, 56, 49, 43, 40, 38, 43, 43, 44, 43, 43, 43, 42, 32.47139 + 42, 46, 44, 46, 48, 47, 42, 42, 44, 45, 44, 50, 47, 36, 35, 38, 32.47140 + 33, 36, 35, 33, 34, 37, 38, 37, 36, 41, 44, 47, 49, 49, 49, 49, 32.47141 + 49, 55, 48, 44, 255, 112, 114, 131, 130, 133, 129, 129, 154, 162, 163, 160, 32.47142 + 137, 142, 139, 128, 141, 138, 145, 145, 130, 124, 133, 122, 105, 107, 105, 108, 32.47143 + 101, 95, 99, 94, 87, 91, 79, 77, 77, 81, 82, 81, 82, 88, 79, 86, 32.47144 + 78, 73, 76, 66, 61, 76, 77, 75, 75, 77, 77, 75, 71, 74, 70, 74, 32.47145 + 75, 70, 66, 63, 57, 48, 42, 47, 50, 47, 48, 51, 55, 55, 55, 59, 32.47146 + 59, 54, 52, 53, 50, 44, 51, 47, 45, 48, 51, 52, 57, 63, 70, 67, 32.47147 + 63, 60, 57, 54, 51, 48, 52, 51, 51, 52, 51, 48, 46, 45, 52, 48, 32.47148 + 48, 52, 52, 46, 42, 42, 42, 40, 45, 41, 30, 31, 34, 24, 31, 30, 32.47149 + 29, 31, 36, 37, 36, 34, 39, 42, 46, 48, 49, 48, 49, 48, 59, 51, 32.47150 + 47, 255, 139, 110, 137, 146, 159, 164, 160, 166, 154, 157, 151, 126, 138, 144, 32.47151 + 132, 140, 127, 118, 127, 103, 89, 115, 118, 95, 91, 101, 109, 104, 94, 90, 32.47152 + 81, 77, 86, 69, 66, 67, 73, 78, 81, 87, 96, 71, 87, 84, 78, 80, 32.47153 + 66, 65, 89, 79, 86, 86, 79, 80, 88, 85, 76, 80, 82, 80, 71, 63, 32.47154 + 57, 52, 46, 45, 46, 45, 40, 40, 47, 53, 54, 63, 67, 64, 56, 55, 32.47155 + 57, 56, 51, 52, 48, 47, 52, 58, 63, 72, 80, 67, 64, 61, 61, 64, 32.47156 + 66, 65, 60, 58, 59, 59, 58, 57, 54, 52, 49, 52, 46, 46, 50, 51, 32.47157 + 46, 40, 36, 41, 40, 44, 39, 32, 37, 38, 27, 32, 31, 30, 32, 37, 32.47158 + 36, 32, 29, 40, 43, 47, 50, 51, 50, 50, 50, 57, 48, 44, 255, 222, 32.47159 + 108, 158, 160, 155, 154, 173, 154, 152, 154, 161, 136, 134, 126, 113, 128, 117, 32.47160 + 105, 99, 107, 122, 118, 101, 100, 114, 113, 97, 85, 83, 81, 76, 76, 82, 32.47161 + 72, 75, 76, 75, 72, 73, 78, 86, 81, 88, 89, 84, 86, 89, 92, 89, 32.47162 + 90, 88, 82, 77, 80, 89, 94, 94, 98, 93, 85, 74, 65, 56, 50, 45, 32.47163 + 51, 45, 42, 43, 50, 55, 58, 60, 59, 67, 70, 66, 66, 67, 65, 60, 32.47164 + 64, 66, 57, 68, 61, 78, 84, 100, 77, 78, 84, 89, 80, 66, 69, 81, 32.47165 + 85, 81, 75, 68, 63, 57, 54, 52, 55, 58, 57, 51, 45, 44, 45, 43, 32.47166 + 40, 44, 48, 45, 37, 32, 34, 35, 33, 32, 33, 36, 41, 43, 43, 42, 32.47167 + 36, 37, 44, 50, 49, 44, 46, 53, 52, 47, 42, 255, 255, 111, 147, 169, 32.47168 + 201, 188, 162, 132, 152, 161, 159, 142, 138, 132, 120, 114, 100, 105, 85, 74, 32.47169 + 83, 98, 103, 103, 104, 101, 83, 73, 82, 93, 90, 78, 70, 83, 80, 77, 32.47170 + 78, 81, 85, 87, 89, 83, 90, 90, 87, 86, 89, 91, 88, 93, 94, 87, 32.47171 + 78, 77, 83, 89, 90, 101, 94, 83, 77, 73, 67, 56, 49, 49, 47, 46, 32.47172 + 49, 53, 59, 62, 63, 68, 72, 71, 67, 67, 70, 68, 63, 72, 79, 75, 32.47173 + 85, 73, 81, 77, 87, 98, 91, 91, 98, 100, 91, 85, 85, 83, 81, 79, 32.47174 + 76, 73, 69, 65, 61, 54, 58, 58, 50, 45, 44, 43, 39, 47, 50, 53, 32.47175 + 49, 43, 38, 38, 39, 37, 36, 36, 38, 43, 43, 42, 41, 41, 40, 42, 32.47176 + 44, 44, 44, 52, 62, 66, 52, 46, 255, 255, 142, 141, 147, 193, 194, 166, 32.47177 + 130, 143, 158, 141, 135, 127, 127, 123, 100, 90, 85, 87, 92, 101, 106, 106, 32.47178 + 105, 105, 93, 78, 71, 83, 94, 90, 78, 71, 85, 78, 73, 76, 85, 91, 32.47179 + 89, 86, 98, 104, 105, 102, 100, 102, 104, 103, 106, 107, 101, 89, 83, 86, 32.47180 + 91, 94, 83, 78, 75, 80, 88, 92, 85, 78, 63, 63, 62, 64, 66, 70, 32.47181 + 73, 75, 76, 76, 71, 66, 69, 73, 75, 73, 92, 103, 101, 108, 90, 93, 32.47182 + 85, 91, 93, 99, 108, 109, 97, 82, 85, 98, 96, 96, 97, 98, 96, 88, 32.47183 + 80, 74, 58, 60, 61, 54, 50, 48, 46, 40, 52, 51, 51, 49, 46, 43, 32.47184 + 40, 37, 41, 40, 40, 41, 44, 44, 42, 40, 44, 43, 44, 46, 47, 49, 32.47185 + 56, 64, 61, 43, 39, 255, 255, 218, 144, 137, 163, 168, 171, 144, 134, 138, 32.47186 + 115, 121, 111, 114, 120, 94, 95, 66, 77, 96, 108, 101, 85, 82, 89, 88, 32.47187 + 80, 76, 77, 74, 68, 70, 79, 79, 75, 73, 79, 87, 91, 88, 85, 110, 32.47188 + 116, 119, 121, 119, 119, 120, 122, 121, 127, 125, 116, 110, 110, 114, 116, 113, 32.47189 + 110, 105, 106, 105, 102, 94, 87, 81, 79, 74, 70, 67, 68, 70, 72, 78, 32.47190 + 77, 75, 70, 69, 75, 85, 91, 112, 125, 120, 122, 101, 106, 102, 107, 94, 32.47191 + 101, 110, 105, 88, 75, 81, 94, 87, 87, 95, 99, 102, 97, 89, 79, 68, 32.47192 + 68, 65, 59, 54, 53, 51, 48, 54, 51, 50, 49, 49, 48, 43, 39, 43, 32.47193 + 40, 40, 41, 45, 45, 44, 42, 44, 47, 52, 56, 57, 55, 57, 58, 54, 32.47194 + 44, 43, 255, 255, 255, 147, 161, 174, 158, 166, 150, 138, 119, 104, 118, 113, 32.47195 + 112, 113, 88, 94, 86, 72, 71, 82, 82, 70, 72, 86, 85, 77, 71, 69, 32.47196 + 63, 57, 63, 75, 72, 76, 81, 86, 90, 91, 90, 90, 108, 115, 122, 126, 32.47197 + 125, 124, 127, 133, 132, 142, 146, 141, 137, 136, 137, 139, 142, 143, 141, 137, 32.47198 + 129, 122, 116, 114, 112, 105, 94, 85, 78, 75, 74, 74, 71, 73, 75, 72, 32.47199 + 70, 76, 93, 108, 116, 129, 125, 126, 106, 114, 108, 109, 119, 107, 100, 98, 32.47200 + 100, 97, 88, 81, 82, 84, 93, 104, 113, 113, 109, 100, 78, 76, 69, 60, 32.47201 + 57, 58, 57, 54, 56, 51, 49, 50, 53, 53, 48, 42, 39, 37, 37, 40, 32.47202 + 45, 47, 47, 45, 51, 55, 58, 58, 58, 58, 57, 55, 58, 62, 61, 255, 32.47203 + 255, 255, 152, 164, 184, 165, 168, 154, 142, 112, 108, 122, 125, 117, 102, 82, 32.47204 + 83, 92, 83, 79, 80, 73, 65, 77, 98, 88, 75, 68, 74, 77, 73, 69, 32.47205 + 70, 67, 75, 83, 87, 86, 86, 90, 96, 107, 114, 124, 130, 130, 129, 134, 32.47206 + 141, 140, 148, 154, 153, 151, 153, 153, 152, 145, 149, 153, 150, 144, 140, 140, 32.47207 + 141, 132, 120, 106, 94, 89, 85, 81, 79, 70, 71, 74, 75, 77, 84, 102, 32.47208 + 120, 117, 132, 132, 136, 119, 125, 111, 107, 121, 116, 111, 110, 109, 105, 97, 32.47209 + 88, 98, 97, 100, 108, 116, 116, 111, 102, 84, 81, 72, 64, 61, 62, 61, 32.47210 + 56, 50, 48, 45, 46, 48, 47, 43, 38, 37, 35, 36, 40, 47, 49, 50, 32.47211 + 49, 60, 60, 57, 51, 51, 56, 59, 57, 49, 61, 64, 255, 255, 255, 161, 32.47212 + 155, 172, 157, 167, 150, 127, 108, 109, 107, 117, 109, 86, 80, 76, 73, 87, 32.47213 + 92, 78, 64, 65, 75, 84, 90, 80, 76, 82, 85, 79, 74, 76, 71, 76, 32.47214 + 81, 82, 82, 86, 93, 103, 114, 122, 132, 141, 142, 139, 146, 155, 151, 155, 32.47215 + 159, 157, 157, 161, 160, 157, 167, 167, 163, 157, 150, 141, 137, 135, 133, 121, 32.47216 + 109, 103, 103, 99, 92, 85, 81, 77, 78, 85, 94, 102, 116, 131, 128, 140, 32.47217 + 136, 140, 127, 139, 125, 118, 108, 120, 130, 127, 115, 104, 101, 103, 106, 99, 32.47218 + 96, 97, 101, 102, 97, 88, 87, 85, 81, 74, 72, 69, 64, 57, 51, 50, 32.47219 + 49, 49, 46, 43, 40, 36, 38, 36, 38, 42, 49, 52, 52, 51, 57, 58, 32.47220 + 54, 47, 49, 55, 57, 54, 40, 48, 56, 255, 255, 255, 166, 168, 169, 139, 32.47221 + 151, 136, 106, 107, 105, 87, 99, 97, 74, 85, 80, 98, 106, 92, 67, 70, 32.47222 + 94, 92, 68, 84, 83, 84, 83, 73, 63, 70, 84, 85, 86, 85, 85, 87, 32.47223 + 94, 104, 114, 122, 129, 140, 149, 148, 146, 151, 161, 162, 162, 162, 158, 159, 32.47224 + 163, 164, 160, 165, 163, 160, 159, 157, 157, 154, 151, 158, 149, 138, 139, 143, 32.47225 + 142, 133, 123, 95, 86, 84, 95, 111, 121, 129, 138, 135, 143, 131, 134, 126, 32.47226 + 145, 138, 133, 114, 119, 128, 132, 131, 124, 111, 99, 114, 108, 104, 104, 112, 32.47227 + 115, 114, 109, 93, 91, 89, 84, 82, 78, 70, 58, 62, 61, 60, 58, 52, 32.47228 + 48, 44, 41, 41, 41, 42, 46, 50, 53, 54, 53, 46, 51, 53, 50, 52, 32.47229 + 56, 54, 46, 52, 50, 59, 255, 255, 255, 151, 155, 131, 130, 143, 134, 116, 32.47230 + 132, 95, 76, 80, 88, 92, 93, 87, 96, 80, 67, 68, 71, 69, 65, 66, 32.47231 + 79, 80, 83, 83, 75, 67, 70, 76, 83, 86, 90, 91, 95, 101, 112, 122, 32.47232 + 136, 140, 143, 148, 153, 158, 162, 164, 162, 160, 159, 160, 163, 162, 160, 156, 32.47233 + 162, 158, 154, 153, 155, 157, 156, 153, 149, 154, 151, 141, 139, 147, 152, 149, 32.47234 + 148, 138, 128, 124, 129, 136, 141, 144, 155, 155, 151, 145, 137, 132, 132, 135, 32.47235 + 138, 124, 118, 125, 133, 126, 110, 97, 101, 102, 133, 133, 114, 105, 99, 106, 32.47236 + 100, 97, 93, 87, 88, 87, 81, 73, 73, 68, 60, 56, 52, 52, 52, 52, 32.47237 + 42, 48, 55, 57, 55, 52, 53, 54, 52, 45, 43, 45, 43, 39, 46, 57, 32.47238 + 55, 46, 50, 255, 255, 255, 215, 129, 126, 135, 134, 131, 135, 104, 96, 110, 32.47239 + 133, 136, 126, 111, 96, 79, 66, 57, 58, 62, 66, 72, 78, 77, 77, 75, 32.47240 + 72, 66, 64, 72, 82, 78, 84, 92, 97, 104, 114, 127, 138, 150, 152, 154, 32.47241 + 155, 156, 157, 157, 157, 167, 165, 162, 160, 158, 154, 151, 148, 155, 153, 151, 32.47242 + 153, 157, 160, 161, 161, 161, 164, 162, 156, 153, 154, 155, 154, 157, 149, 140, 32.47243 + 135, 138, 141, 141, 139, 162, 160, 155, 149, 145, 142, 143, 144, 139, 133, 130, 32.47244 + 132, 131, 121, 108, 102, 110, 90, 100, 111, 126, 139, 117, 98, 114, 117, 114, 32.47245 + 103, 95, 86, 79, 70, 72, 66, 60, 57, 55, 56, 56, 56, 54, 55, 57, 32.47246 + 60, 61, 59, 57, 54, 57, 55, 55, 57, 56, 53, 55, 58, 60, 52, 122, 32.47247 + 255, 255, 255, 255, 159, 140, 130, 131, 130, 129, 135, 107, 86, 72, 59, 67, 32.47248 + 91, 107, 77, 78, 83, 91, 92, 84, 75, 70, 75, 71, 69, 67, 64, 63, 32.47249 + 72, 81, 73, 79, 89, 98, 110, 122, 136, 148, 158, 160, 162, 162, 162, 160, 32.47250 + 157, 156, 163, 164, 164, 163, 162, 162, 163, 165, 160, 159, 160, 162, 166, 169, 32.47251 + 170, 170, 169, 168, 167, 167, 163, 157, 155, 158, 156, 151, 147, 146, 148, 149, 32.47252 + 150, 148, 153, 149, 143, 140, 140, 141, 142, 143, 138, 141, 143, 142, 131, 119, 32.47253 + 113, 117, 113, 103, 114, 114, 121, 140, 126, 111, 121, 128, 128, 116, 103, 90, 32.47254 + 82, 74, 71, 66, 61, 59, 57, 57, 56, 55, 56, 52, 50, 52, 55, 56, 32.47255 + 52, 47, 53, 57, 59, 59, 60, 61, 57, 50, 58, 52, 255, 255, 255, 255, 32.47256 + 255, 162, 134, 115, 114, 111, 107, 114, 105, 105, 103, 89, 85, 94, 98, 103, 32.47257 + 91, 78, 71, 69, 72, 75, 77, 72, 69, 70, 70, 69, 65, 67, 72, 72, 32.47258 + 78, 89, 99, 112, 123, 136, 145, 156, 160, 163, 166, 168, 167, 165, 163, 160, 32.47259 + 163, 166, 166, 166, 168, 174, 179, 168, 168, 169, 170, 171, 171, 170, 170, 174, 32.47260 + 168, 168, 173, 170, 161, 161, 168, 158, 155, 153, 153, 155, 156, 156, 155, 158, 32.47261 + 152, 147, 146, 151, 156, 158, 158, 139, 144, 150, 149, 138, 128, 127, 135, 119, 32.47262 + 126, 146, 130, 117, 132, 132, 132, 121, 127, 127, 120, 109, 102, 92, 85, 75, 32.47263 + 70, 66, 61, 57, 55, 51, 49, 49, 47, 45, 45, 47, 48, 47, 45, 49, 32.47264 + 56, 57, 54, 56, 61, 54, 41, 51, 49, 255, 255, 255, 255, 255, 210, 123, 32.47265 + 124, 111, 103, 114, 117, 102, 96, 89, 78, 80, 90, 92, 103, 91, 75, 67, 32.47266 + 70, 77, 81, 80, 76, 70, 65, 65, 65, 61, 61, 64, 73, 79, 91, 102, 32.47267 + 114, 125, 135, 143, 154, 158, 163, 168, 171, 172, 172, 171, 170, 171, 171, 168, 32.47268 + 164, 163, 166, 170, 171, 171, 172, 172, 171, 170, 170, 169, 178, 172, 172, 177, 32.47269 + 176, 170, 173, 182, 170, 167, 163, 160, 157, 154, 154, 152, 158, 153, 151, 152, 32.47270 + 157, 162, 165, 165, 149, 150, 153, 154, 148, 141, 139, 144, 134, 131, 142, 130, 32.47271 + 126, 147, 142, 133, 130, 130, 126, 120, 114, 110, 102, 90, 79, 74, 67, 62, 32.47272 + 56, 53, 48, 45, 45, 47, 48, 47, 46, 46, 50, 53, 52, 56, 55, 50, 32.47273 + 52, 57, 53, 42, 48, 49, 255, 255, 255, 255, 255, 255, 115, 117, 109, 102, 32.47274 + 109, 120, 110, 110, 109, 99, 94, 87, 75, 94, 96, 98, 98, 98, 95, 84, 32.47275 + 73, 82, 70, 58, 54, 57, 59, 65, 70, 79, 85, 97, 110, 124, 133, 142, 32.47276 + 146, 159, 162, 166, 170, 173, 174, 174, 174, 177, 177, 176, 174, 171, 169, 169, 32.47277 + 170, 175, 176, 178, 178, 177, 177, 179, 181, 177, 175, 175, 176, 175, 174, 178, 32.47278 + 184, 172, 171, 170, 167, 164, 161, 161, 159, 158, 156, 155, 155, 158, 160, 162, 32.47279 + 163, 164, 160, 157, 157, 154, 147, 142, 143, 142, 131, 139, 131, 129, 146, 137, 32.47280 + 128, 143, 141, 133, 125, 118, 113, 102, 90, 81, 76, 69, 63, 59, 54, 51, 32.47281 + 49, 42, 46, 49, 48, 46, 46, 50, 55, 53, 53, 51, 46, 46, 49, 48, 32.47282 + 44, 43, 46, 255, 255, 255, 255, 255, 255, 107, 96, 93, 88, 85, 109, 97, 32.47283 + 92, 91, 88, 94, 99, 92, 98, 101, 96, 84, 75, 76, 79, 79, 80, 67, 32.47284 + 55, 54, 62, 68, 75, 80, 88, 94, 106, 119, 132, 141, 147, 149, 165, 168, 32.47285 + 170, 172, 174, 175, 176, 176, 177, 176, 176, 178, 180, 180, 179, 178, 177, 179, 32.47286 + 180, 180, 179, 180, 184, 188, 178, 182, 182, 178, 175, 176, 176, 175, 170, 173, 32.47287 + 176, 177, 174, 171, 168, 166, 176, 176, 175, 173, 171, 169, 169, 169, 172, 166, 32.47288 + 160, 159, 154, 147, 141, 141, 139, 130, 145, 141, 133, 141, 136, 138, 142, 142, 32.47289 + 140, 131, 123, 113, 102, 91, 88, 82, 73, 65, 60, 55, 52, 50, 43, 44, 32.47290 + 45, 45, 45, 45, 46, 47, 51, 48, 46, 45, 42, 39, 40, 44, 43, 44, 32.47291 + 255, 255, 255, 255, 255, 255, 125, 120, 97, 90, 106, 127, 112, 101, 91, 81, 32.47292 + 86, 90, 83, 77, 93, 103, 95, 81, 76, 77, 78, 73, 63, 58, 63, 75, 32.47293 + 80, 84, 88, 96, 103, 112, 125, 136, 144, 146, 149, 168, 170, 171, 173, 175, 32.47294 + 177, 179, 179, 177, 175, 174, 176, 179, 180, 176, 172, 174, 176, 176, 174, 172, 32.47295 + 174, 178, 182, 186, 194, 195, 187, 182, 183, 179, 171, 179, 183, 187, 187, 182, 32.47296 + 173, 165, 160, 177, 179, 178, 174, 167, 161, 160, 161, 172, 167, 161, 159, 153, 32.47297 + 146, 141, 142, 135, 120, 134, 143, 148, 159, 153, 153, 129, 136, 140, 134, 124, 32.47298 + 115, 106, 97, 99, 90, 79, 67, 60, 54, 50, 48, 48, 46, 44, 45, 49, 32.47299 + 49, 46, 42, 53, 48, 47, 50, 45, 36, 38, 47, 50, 49, 255, 255, 255, 32.47300 + 255, 255, 255, 220, 151, 140, 119, 116, 104, 103, 95, 103, 105, 95, 94, 87, 32.47301 + 82, 77, 80, 87, 84, 72, 63, 63, 69, 71, 72, 77, 82, 86, 92, 96, 32.47302 + 110, 117, 127, 138, 145, 150, 153, 157, 172, 174, 174, 173, 172, 172, 175, 177, 32.47303 + 177, 177, 179, 180, 180, 180, 180, 180, 179, 181, 183, 181, 178, 177, 178, 181, 32.47304 + 175, 182, 190, 193, 190, 183, 175, 171, 165, 168, 172, 177, 181, 181, 180, 179, 32.47305 + 172, 174, 177, 174, 169, 166, 167, 170, 166, 163, 160, 162, 164, 164, 158, 155, 32.47306 + 134, 141, 128, 140, 139, 167, 155, 147, 141, 130, 132, 135, 126, 121, 122, 117, 32.47307 + 104, 93, 78, 67, 56, 45, 43, 45, 45, 46, 49, 51, 46, 41, 45, 52, 32.47308 + 55, 53, 51, 50, 49, 47, 45, 44, 47, 48, 255, 255, 255, 255, 255, 255, 32.47309 + 255, 157, 134, 117, 145, 125, 109, 101, 101, 104, 100, 85, 77, 82, 76, 76, 32.47310 + 80, 76, 65, 58, 61, 74, 79, 84, 85, 83, 85, 91, 99, 115, 124, 133, 32.47311 + 143, 149, 153, 158, 161, 171, 175, 177, 178, 177, 176, 176, 177, 176, 177, 177, 32.47312 + 177, 177, 177, 176, 175, 183, 185, 187, 186, 185, 185, 187, 190, 201, 200, 197, 32.47313 + 191, 186, 183, 182, 183, 182, 183, 184, 183, 183, 179, 174, 172, 177, 179, 182, 32.47314 + 180, 176, 172, 169, 167, 160, 156, 151, 149, 149, 151, 151, 151, 148, 140, 122, 32.47315 + 136, 136, 154, 143, 144, 140, 136, 139, 138, 129, 126, 127, 120, 116, 102, 85, 32.47316 + 71, 56, 42, 37, 37, 47, 48, 50, 53, 50, 45, 47, 52, 54, 53, 51, 32.47317 + 50, 49, 48, 47, 47, 46, 54, 255, 255, 255, 255, 255, 255, 255, 216, 122, 32.47318 + 109, 157, 132, 106, 106, 90, 90, 97, 79, 88, 83, 75, 71, 72, 66, 57, 32.47319 + 54, 60, 75, 87, 96, 96, 91, 92, 102, 113, 125, 132, 140, 150, 155, 158, 32.47320 + 162, 164, 172, 176, 180, 182, 181, 179, 177, 177, 181, 182, 182, 182, 181, 180, 32.47321 + 178, 178, 179, 178, 179, 180, 180, 182, 186, 189, 198, 195, 189, 183, 180, 182, 32.47322 + 187, 192, 195, 194, 192, 189, 183, 177, 173, 169, 185, 182, 180, 178, 177, 176, 32.47323 + 177, 175, 176, 173, 166, 160, 157, 159, 163, 167, 155, 139, 125, 144, 146, 150, 32.47324 + 139, 144, 137, 141, 147, 142, 131, 132, 133, 121, 116, 104, 89, 75, 60, 46, 32.47325 + 41, 41, 45, 43, 45, 50, 49, 45, 43, 45, 50, 49, 47, 46, 46, 46, 32.47326 + 47, 48, 42, 55, 255, 255, 255, 255, 255, 255, 255, 255, 120, 110, 162, 139, 32.47327 + 112, 121, 90, 79, 92, 77, 106, 84, 75, 68, 67, 61, 54, 57, 66, 77, 32.47328 + 92, 104, 108, 107, 111, 122, 129, 133, 140, 147, 155, 159, 162, 165, 167, 173, 32.47329 + 177, 180, 181, 180, 179, 178, 179, 182, 183, 183, 184, 183, 183, 182, 180, 176, 32.47330 + 174, 174, 174, 175, 178, 181, 183, 186, 186, 185, 183, 182, 182, 185, 188, 191, 32.47331 + 191, 191, 189, 185, 181, 179, 177, 188, 181, 174, 171, 175, 180, 186, 187, 175, 32.47332 + 175, 171, 165, 158, 156, 157, 160, 140, 136, 136, 151, 155, 153, 143, 142, 134, 32.47333 + 141, 152, 142, 130, 135, 138, 123, 118, 106, 92, 79, 64, 49, 43, 43, 44, 32.47334 + 41, 43, 48, 50, 46, 42, 41, 43, 43, 42, 41, 40, 42, 45, 48, 49, 32.47335 + 59, 255, 255, 255, 255, 255, 255, 255, 255, 128, 112, 172, 158, 129, 137, 108, 32.47336 + 95, 103, 78, 98, 86, 77, 70, 68, 62, 57, 63, 78, 86, 101, 113, 120, 32.47337 + 124, 133, 139, 142, 141, 147, 153, 158, 161, 165, 168, 170, 176, 177, 178, 178, 32.47338 + 176, 177, 179, 180, 176, 177, 178, 180, 181, 181, 181, 180, 181, 178, 177, 177, 32.47339 + 178, 179, 180, 181, 191, 191, 191, 188, 184, 181, 180, 181, 182, 182, 183, 184, 32.47340 + 185, 184, 183, 182, 183, 178, 174, 173, 176, 180, 181, 183, 170, 173, 173, 170, 32.47341 + 161, 154, 147, 146, 126, 136, 145, 143, 148, 150, 149, 141, 138, 143, 153, 145, 32.47342 + 134, 141, 143, 125, 128, 116, 100, 85, 65, 47, 36, 33, 45, 43, 45, 50, 32.47343 + 52, 47, 43, 43, 39, 39, 38, 37, 36, 39, 44, 49, 67, 66, 255, 255, 32.47344 + 255, 255, 255, 255, 255, 255, 121, 92, 156, 155, 129, 131, 119, 120, 120, 87, 32.47345 + 84, 88, 79, 73, 71, 65, 60, 68, 84, 96, 115, 127, 132, 135, 145, 148, 32.47346 + 146, 148, 153, 157, 163, 165, 167, 169, 171, 176, 177, 177, 176, 175, 175, 178, 32.47347 + 181, 176, 177, 179, 181, 182, 183, 184, 183, 182, 181, 179, 180, 181, 181, 179, 32.47348 + 177, 189, 188, 185, 182, 179, 180, 183, 187, 180, 180, 181, 182, 183, 183, 183, 32.47349 + 182, 177, 177, 180, 181, 181, 178, 173, 169, 175, 178, 180, 178, 172, 162, 152, 32.47350 + 147, 137, 145, 151, 135, 143, 148, 157, 149, 146, 145, 153, 148, 143, 146, 146, 32.47351 + 132, 128, 115, 101, 87, 68, 50, 39, 35, 42, 41, 43, 47, 47, 43, 41, 32.47352 + 43, 42, 42, 41, 39, 37, 41, 48, 55, 74, 130, 255, 255, 255, 255, 255, 32.47353 + 255, 255, 255, 255, 85, 131, 142, 130, 124, 123, 122, 115, 98, 92, 89, 81, 32.47354 + 76, 74, 66, 61, 67, 83, 101, 124, 140, 143, 141, 147, 151, 150, 154, 160, 32.47355 + 163, 167, 168, 171, 173, 175, 175, 176, 178, 178, 177, 176, 178, 179, 179, 180, 32.47356 + 181, 183, 184, 184, 184, 183, 180, 178, 178, 179, 181, 180, 177, 173, 178, 178, 32.47357 + 177, 176, 176, 178, 183, 187, 183, 183, 183, 183, 183, 183, 182, 182, 177, 180, 32.47358 + 182, 182, 180, 176, 173, 171, 173, 173, 171, 170, 167, 162, 153, 148, 152, 145, 32.47359 + 148, 136, 152, 150, 161, 155, 154, 143, 147, 149, 147, 147, 146, 135, 122, 112, 32.47360 + 99, 87, 71, 54, 43, 40, 36, 37, 39, 42, 39, 34, 36, 41, 43, 44, 32.47361 + 43, 39, 37, 41, 50, 57, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47362 + 255, 139, 124, 145, 148, 136, 128, 112, 95, 105, 109, 92, 84, 80, 75, 67, 32.47363 + 59, 65, 80, 98, 127, 149, 147, 142, 146, 153, 155, 160, 163, 167, 169, 169, 32.47364 + 170, 174, 176, 175, 178, 182, 183, 182, 180, 179, 179, 179, 178, 179, 179, 180, 32.47365 + 179, 179, 179, 181, 181, 181, 184, 187, 185, 181, 176, 180, 181, 183, 183, 180, 32.47366 + 178, 176, 176, 187, 187, 186, 185, 185, 184, 185, 185, 182, 182, 181, 176, 174, 32.47367 + 175, 180, 187, 183, 178, 173, 171, 171, 170, 165, 162, 153, 132, 137, 138, 164, 32.47368 + 151, 158, 152, 157, 142, 141, 148, 147, 146, 144, 135, 128, 116, 103, 89, 70, 32.47369 + 50, 39, 33, 37, 37, 41, 42, 38, 32, 37, 43, 43, 42, 42, 37, 35, 32.47370 + 38, 48, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 127, 32.47371 + 123, 127, 123, 118, 112, 110, 107, 104, 107, 91, 82, 84, 83, 77, 75, 83, 32.47372 + 102, 130, 149, 153, 152, 154, 155, 152, 162, 164, 167, 169, 169, 170, 173, 175, 32.47373 + 177, 179, 181, 181, 176, 173, 179, 188, 178, 180, 183, 184, 185, 185, 187, 187, 32.47374 + 183, 183, 184, 183, 183, 181, 185, 185, 180, 178, 180, 182, 184, 184, 181, 178, 32.47375 + 179, 180, 183, 184, 184, 183, 182, 181, 185, 179, 177, 180, 183, 180, 178, 181, 32.47376 + 179, 174, 172, 174, 175, 171, 166, 164, 170, 166, 164, 165, 165, 162, 163, 167, 32.47377 + 158, 157, 154, 148, 143, 139, 139, 139, 125, 119, 106, 96, 87, 62, 44, 47, 32.47378 + 46, 41, 41, 42, 46, 42, 35, 25, 28, 30, 35, 43, 51, 41, 41, 123, 32.47379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 131, 132, 125, 32.47380 + 116, 111, 112, 113, 112, 103, 94, 93, 94, 87, 73, 72, 84, 103, 131, 150, 32.47381 + 155, 155, 158, 159, 157, 161, 163, 167, 169, 171, 173, 175, 178, 176, 175, 177, 32.47382 + 181, 180, 178, 179, 183, 177, 180, 182, 182, 181, 182, 183, 185, 183, 184, 184, 32.47383 + 184, 183, 183, 184, 185, 183, 182, 180, 181, 183, 183, 182, 180, 182, 183, 184, 32.47384 + 185, 184, 183, 180, 179, 180, 175, 174, 178, 180, 177, 174, 177, 176, 174, 171, 32.47385 + 175, 177, 172, 169, 170, 167, 163, 164, 166, 165, 162, 164, 167, 163, 158, 153, 32.47386 + 150, 148, 145, 140, 135, 125, 119, 105, 96, 89, 64, 44, 47, 43, 40, 39, 32.47387 + 38, 38, 36, 34, 32, 48, 45, 36, 34, 37, 36, 117, 255, 255, 255, 255, 32.47388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 134, 125, 114, 109, 111, 32.47389 + 115, 113, 104, 102, 107, 106, 89, 65, 63, 80, 105, 133, 153, 157, 158, 162, 32.47390 + 165, 163, 165, 165, 169, 171, 173, 174, 176, 176, 178, 174, 173, 178, 180, 175, 32.47391 + 171, 170, 174, 175, 177, 178, 178, 178, 179, 180, 183, 183, 182, 182, 183, 183, 32.47392 + 184, 184, 186, 184, 180, 181, 183, 184, 184, 183, 186, 186, 186, 186, 184, 181, 32.47393 + 178, 177, 178, 174, 174, 178, 179, 176, 173, 175, 178, 176, 174, 177, 178, 173, 32.47394 + 171, 172, 166, 163, 163, 167, 166, 162, 162, 164, 163, 157, 151, 150, 151, 149, 32.47395 + 141, 132, 128, 119, 105, 96, 90, 65, 43, 43, 50, 48, 45, 41, 36, 35, 32.47396 + 38, 42, 45, 46, 40, 36, 36, 32, 255, 255, 255, 255, 255, 255, 255, 255, 32.47397 + 255, 255, 255, 255, 255, 255, 255, 255, 138, 134, 125, 124, 127, 125, 120, 103, 32.47398 + 101, 108, 109, 90, 63, 63, 83, 110, 137, 156, 160, 161, 165, 168, 166, 171, 32.47399 + 170, 172, 172, 173, 173, 173, 172, 173, 170, 170, 173, 173, 169, 166, 168, 168, 32.47400 + 170, 173, 174, 173, 173, 175, 176, 181, 182, 181, 182, 184, 185, 184, 183, 187, 32.47401 + 186, 183, 184, 186, 187, 186, 187, 190, 190, 188, 187, 184, 180, 178, 176, 179, 32.47402 + 177, 178, 182, 182, 178, 175, 178, 183, 179, 178, 179, 179, 172, 169, 169, 167, 32.47403 + 164, 164, 167, 167, 162, 162, 163, 159, 155, 151, 150, 150, 147, 139, 131, 132, 32.47404 + 121, 107, 97, 90, 63, 40, 37, 46, 41, 35, 30, 25, 25, 26, 28, 26, 32.47405 + 35, 37, 38, 42, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47406 + 255, 255, 255, 255, 255, 210, 125, 124, 127, 129, 120, 105, 102, 98, 101, 104, 32.47407 + 89, 65, 68, 90, 117, 143, 161, 164, 163, 167, 169, 168, 174, 172, 172, 172, 32.47408 + 173, 172, 170, 166, 164, 163, 164, 164, 160, 156, 161, 168, 163, 165, 169, 170, 32.47409 + 171, 172, 174, 177, 179, 178, 179, 181, 185, 186, 185, 183, 186, 186, 187, 189, 32.47410 + 191, 191, 188, 186, 192, 191, 189, 187, 184, 180, 178, 176, 181, 179, 180, 183, 32.47411 + 182, 178, 177, 181, 182, 181, 180, 181, 179, 172, 170, 171, 169, 165, 166, 168, 32.47412 + 168, 162, 160, 161, 155, 155, 155, 152, 148, 143, 139, 135, 133, 124, 109, 98, 32.47413 + 87, 60, 36, 33, 50, 41, 34, 31, 33, 35, 34, 32, 27, 37, 38, 87, 32.47414 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47415 + 255, 255, 255, 137, 140, 146, 149, 135, 115, 118, 106, 103, 105, 86, 61, 63, 32.47416 + 86, 125, 149, 166, 168, 167, 171, 173, 172, 176, 172, 171, 170, 171, 170, 166, 32.47417 + 161, 162, 159, 157, 152, 142, 135, 138, 146, 151, 155, 159, 163, 166, 168, 171, 32.47418 + 173, 174, 173, 174, 178, 184, 186, 184, 181, 186, 185, 184, 186, 188, 188, 187, 32.47419 + 185, 189, 188, 186, 184, 182, 179, 178, 177, 180, 178, 178, 180, 178, 175, 176, 32.47420 + 182, 178, 178, 179, 181, 178, 173, 172, 176, 170, 166, 166, 167, 166, 160, 159, 32.47421 + 160, 155, 156, 156, 152, 146, 141, 138, 137, 128, 122, 110, 99, 84, 54, 32, 32.47422 + 33, 51, 42, 35, 36, 43, 50, 52, 51, 42, 55, 124, 255, 255, 255, 255, 32.47423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47424 + 146, 117, 125, 131, 116, 95, 122, 108, 106, 107, 87, 62, 65, 93, 129, 153, 32.47425 + 170, 173, 173, 177, 181, 179, 184, 178, 173, 169, 167, 163, 156, 148, 148, 144, 32.47426 + 142, 139, 132, 124, 123, 127, 132, 136, 142, 149, 153, 156, 161, 164, 167, 164, 32.47427 + 166, 171, 179, 182, 182, 178, 186, 182, 178, 177, 180, 183, 186, 187, 186, 185, 32.47428 + 184, 182, 180, 179, 178, 178, 182, 180, 179, 180, 177, 174, 177, 183, 177, 178, 32.47429 + 180, 181, 178, 172, 172, 176, 170, 165, 162, 163, 162, 157, 156, 158, 153, 151, 32.47430 + 147, 144, 142, 140, 135, 133, 120, 117, 108, 98, 82, 52, 33, 35, 38, 30, 32.47431 + 24, 24, 31, 41, 50, 55, 59, 134, 255, 255, 255, 255, 255, 255, 255, 255, 32.47432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 129, 137, 32.47433 + 145, 133, 114, 102, 96, 100, 109, 94, 72, 84, 118, 131, 155, 173, 176, 177, 32.47434 + 182, 186, 186, 194, 186, 177, 170, 164, 156, 146, 138, 118, 114, 117, 125, 131, 32.47435 + 131, 132, 133, 117, 121, 129, 134, 139, 144, 151, 153, 160, 159, 161, 168, 176, 32.47436 + 180, 180, 176, 186, 181, 173, 170, 173, 178, 184, 187, 182, 181, 180, 178, 177, 32.47437 + 177, 177, 177, 184, 181, 180, 180, 177, 174, 179, 186, 181, 180, 181, 180, 176, 32.47438 + 170, 168, 172, 169, 164, 160, 159, 157, 154, 154, 156, 152, 145, 138, 136, 138, 32.47439 + 136, 131, 125, 113, 114, 107, 97, 81, 51, 35, 39, 47, 41, 35, 31, 34, 32.47440 + 45, 60, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 140, 154, 144, 126, 32.47442 + 106, 105, 98, 93, 84, 72, 86, 125, 142, 162, 178, 182, 181, 182, 187, 190, 32.47443 + 183, 190, 193, 183, 172, 167, 164, 160, 165, 165, 162, 155, 148, 144, 145, 147, 32.47444 + 151, 134, 131, 115, 133, 125, 133, 121, 126, 126, 130, 134, 141, 148, 154, 158, 32.47445 + 151, 162, 167, 163, 167, 176, 178, 172, 175, 175, 175, 175, 175, 175, 175, 175, 32.47446 + 178, 177, 177, 176, 177, 179, 180, 182, 183, 185, 183, 177, 171, 167, 165, 166, 32.47447 + 160, 165, 164, 157, 156, 159, 156, 146, 142, 139, 136, 130, 126, 126, 124, 118, 32.47448 + 109, 112, 108, 96, 75, 44, 35, 48, 49, 41, 38, 39, 40, 114, 255, 255, 32.47449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47450 + 255, 255, 255, 255, 255, 255, 255, 255, 211, 132, 136, 136, 137, 114, 122, 109, 32.47451 + 96, 97, 85, 89, 119, 152, 168, 182, 186, 186, 188, 190, 190, 187, 190, 190, 32.47452 + 184, 180, 180, 177, 172, 172, 175, 179, 181, 181, 177, 172, 168, 167, 166, 172, 32.47453 + 145, 133, 105, 108, 103, 106, 107, 111, 112, 113, 112, 111, 111, 139, 150, 156, 32.47454 + 154, 160, 171, 175, 172, 174, 174, 174, 173, 174, 174, 175, 175, 181, 180, 178, 32.47455 + 177, 176, 175, 175, 176, 174, 175, 174, 170, 165, 160, 158, 158, 154, 157, 158, 32.47456 + 155, 154, 153, 149, 143, 136, 132, 124, 113, 107, 110, 109, 106, 106, 104, 103, 32.47457 + 92, 67, 42, 42, 52, 36, 32, 35, 41, 44, 255, 255, 255, 255, 255, 255, 32.47458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47459 + 255, 255, 255, 255, 255, 255, 136, 128, 140, 162, 123, 143, 128, 120, 141, 129, 32.47460 + 117, 142, 169, 179, 188, 191, 194, 196, 195, 191, 190, 187, 184, 180, 182, 184, 32.47461 + 181, 176, 181, 176, 172, 169, 171, 174, 173, 173, 180, 169, 170, 165, 176, 156, 32.47462 + 133, 105, 103, 98, 93, 89, 92, 102, 115, 125, 128, 137, 144, 145, 151, 164, 32.47463 + 172, 172, 173, 173, 172, 171, 172, 173, 175, 176, 180, 179, 178, 177, 175, 174, 32.47464 + 173, 173, 178, 175, 171, 167, 163, 157, 151, 146, 145, 142, 141, 141, 136, 126, 32.47465 + 120, 119, 111, 110, 104, 96, 95, 97, 95, 89, 91, 82, 94, 92, 60, 43, 32.47466 + 49, 47, 46, 41, 39, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47468 + 255, 255, 255, 144, 128, 144, 175, 215, 210, 154, 123, 139, 123, 113, 155, 183, 32.47469 + 189, 193, 196, 201, 203, 198, 190, 188, 183, 177, 172, 171, 172, 170, 167, 167, 32.47470 + 170, 172, 175, 174, 171, 163, 158, 165, 163, 159, 151, 149, 150, 161, 168, 139, 32.47471 + 131, 118, 105, 100, 105, 119, 129, 128, 136, 141, 141, 146, 157, 167, 169, 172, 32.47472 + 171, 170, 169, 170, 172, 174, 175, 173, 174, 174, 175, 174, 173, 172, 172, 165, 32.47473 + 157, 146, 138, 133, 125, 118, 112, 109, 103, 102, 106, 103, 93, 92, 98, 94, 32.47474 + 101, 107, 110, 112, 109, 100, 89, 74, 65, 89, 94, 58, 43, 49, 34, 35, 32.47475 + 42, 55, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47477 + 141, 126, 137, 162, 206, 208, 180, 180, 203, 166, 131, 164, 195, 197, 198, 200, 32.47478 + 206, 207, 200, 190, 185, 180, 175, 168, 163, 161, 161, 164, 165, 164, 157, 152, 32.47479 + 149, 151, 154, 157, 136, 140, 140, 140, 130, 130, 131, 138, 135, 137, 139, 134, 32.47480 + 128, 122, 123, 125, 138, 142, 145, 144, 147, 155, 163, 166, 170, 170, 169, 169, 32.47481 + 169, 170, 172, 173, 170, 171, 172, 173, 172, 170, 168, 167, 153, 144, 129, 118, 32.47482 + 113, 105, 101, 97, 77, 73, 79, 88, 93, 93, 102, 114, 117, 127, 137, 142, 32.47483 + 142, 136, 123, 109, 84, 73, 91, 92, 56, 44, 50, 34, 45, 48, 52, 54, 32.47484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 128, 32.47486 + 145, 246, 229, 182, 163, 174, 149, 139, 178, 203, 203, 203, 204, 209, 210, 202, 32.47487 + 192, 185, 179, 174, 170, 165, 161, 163, 168, 167, 159, 145, 134, 127, 125, 125, 32.47488 + 125, 134, 133, 130, 146, 147, 151, 128, 118, 118, 129, 139, 142, 141, 139, 142, 32.47489 + 145, 149, 149, 151, 150, 152, 155, 161, 165, 170, 170, 170, 170, 170, 170, 170, 32.47490 + 169, 171, 172, 173, 173, 170, 166, 161, 158, 149, 142, 130, 120, 114, 111, 110, 32.47491 + 110, 103, 104, 111, 118, 123, 129, 140, 151, 153, 157, 159, 157, 152, 146, 134, 32.47492 + 122, 111, 99, 99, 87, 57, 50, 61, 55, 67, 67, 64, 122, 255, 255, 255, 32.47493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 127, 139, 175, 180, 32.47495 + 160, 149, 162, 161, 160, 176, 207, 208, 209, 208, 211, 211, 204, 195, 188, 177, 32.47496 + 170, 169, 169, 165, 164, 164, 143, 140, 139, 143, 139, 123, 95, 74, 70, 81, 32.47497 + 72, 72, 49, 64, 77, 106, 120, 131, 137, 137, 135, 134, 139, 143, 152, 152, 32.47498 + 154, 155, 156, 158, 163, 167, 171, 172, 173, 173, 172, 171, 168, 167, 170, 171, 32.47499 + 173, 173, 170, 164, 159, 154, 135, 133, 128, 122, 117, 114, 115, 116, 130, 137, 32.47500 + 145, 144, 145, 150, 157, 159, 157, 158, 155, 149, 145, 142, 134, 124, 122, 116, 32.47501 + 104, 85, 68, 66, 78, 84, 63, 82, 154, 255, 255, 255, 255, 255, 255, 255, 32.47502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47503 + 255, 255, 255, 255, 255, 255, 255, 255, 115, 125, 135, 169, 188, 182, 163, 169, 32.47504 + 182, 186, 182, 210, 211, 212, 211, 212, 212, 206, 198, 191, 175, 165, 165, 168, 32.47505 + 165, 159, 157, 137, 113, 88, 80, 88, 95, 89, 78, 58, 63, 54, 68, 56, 32.47506 + 65, 50, 53, 73, 94, 116, 133, 137, 137, 138, 140, 150, 152, 155, 157, 158, 32.47507 + 160, 164, 169, 171, 171, 174, 174, 174, 170, 167, 164, 165, 166, 170, 170, 170, 32.47508 + 164, 160, 156, 138, 140, 139, 135, 129, 125, 123, 124, 110, 124, 132, 130, 131, 32.47509 + 137, 141, 138, 138, 143, 144, 141, 141, 140, 134, 124, 115, 117, 105, 87, 81, 32.47510 + 79, 87, 101, 88, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47512 + 255, 255, 255, 255, 255, 113, 117, 113, 145, 217, 195, 190, 205, 211, 180, 175, 32.47513 + 200, 226, 222, 218, 220, 211, 208, 195, 188, 182, 177, 164, 157, 167, 171, 155, 32.47514 + 131, 128, 102, 81, 78, 73, 81, 107, 121, 62, 99, 92, 51, 128, 65, 83, 32.47515 + 63, 61, 50, 81, 136, 139, 124, 141, 149, 152, 155, 154, 151, 154, 163, 169, 32.47516 + 166, 166, 170, 170, 171, 169, 167, 165, 170, 167, 164, 161, 161, 158, 156, 151, 32.47517 + 142, 129, 122, 127, 124, 111, 102, 101, 85, 67, 55, 67, 88, 103, 109, 110, 32.47518 + 111, 111, 120, 134, 142, 138, 124, 113, 124, 119, 105, 92, 92, 104, 106, 100, 32.47519 + 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47521 + 255, 255, 105, 105, 104, 127, 197, 194, 182, 195, 206, 192, 179, 201, 226, 223, 32.47522 + 219, 219, 208, 204, 189, 193, 185, 183, 177, 170, 173, 173, 161, 165, 154, 133, 32.47523 + 124, 127, 127, 128, 135, 139, 79, 101, 71, 76, 86, 91, 98, 69, 137, 133, 32.47524 + 80, 81, 113, 130, 139, 136, 144, 153, 159, 160, 158, 155, 154, 167, 169, 171, 32.47525 + 173, 173, 171, 169, 167, 165, 167, 166, 162, 154, 147, 143, 139, 130, 127, 127, 32.47526 + 117, 89, 63, 63, 74, 68, 63, 58, 57, 58, 53, 41, 31, 86, 99, 114, 32.47527 + 125, 125, 119, 123, 128, 126, 122, 110, 97, 98, 109, 111, 104, 108, 255, 255, 32.47528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 32.47530 + 112, 124, 144, 197, 204, 182, 186, 187, 196, 178, 200, 226, 225, 222, 223, 212, 32.47531 + 206, 190, 199, 187, 188, 190, 183, 178, 177, 167, 163, 159, 159, 151, 129, 116, 32.47532 + 120, 123, 125, 98, 102, 83, 102, 54, 83, 76, 108, 165, 169, 128, 113, 121, 32.47533 + 131, 145, 145, 149, 151, 155, 156, 159, 161, 161, 170, 172, 175, 176, 176, 175, 32.47534 + 172, 170, 166, 167, 164, 156, 145, 138, 136, 136, 120, 109, 101, 91, 78, 68, 32.47535 + 74, 85, 37, 64, 84, 78, 61, 57, 62, 70, 53, 69, 93, 114, 121, 121, 32.47536 + 127, 132, 127, 124, 115, 105, 105, 114, 115, 110, 111, 255, 255, 255, 255, 255, 32.47537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 148, 171, 32.47539 + 191, 202, 185, 185, 172, 195, 176, 197, 225, 226, 227, 230, 219, 214, 198, 203, 32.47540 + 185, 187, 195, 188, 177, 176, 173, 171, 167, 180, 174, 139, 120, 120, 114, 116, 32.47541 + 121, 83, 89, 91, 89, 116, 139, 156, 161, 159, 159, 152, 120, 104, 120, 152, 32.47542 + 156, 158, 155, 153, 155, 161, 169, 172, 174, 178, 180, 180, 178, 174, 172, 172, 32.47543 + 166, 155, 145, 139, 138, 140, 141, 134, 127, 124, 118, 106, 89, 80, 77, 94, 32.47544 + 85, 76, 82, 112, 135, 120, 92, 58, 56, 66, 89, 115, 128, 132, 128, 127, 32.47545 + 124, 117, 108, 109, 113, 113, 108, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.47546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 141, 161, 160, 180, 191, 32.47548 + 197, 175, 195, 181, 196, 225, 227, 228, 232, 222, 216, 200, 205, 186, 186, 195, 32.47549 + 190, 179, 178, 179, 187, 167, 173, 183, 174, 166, 154, 129, 93, 128, 116, 130, 32.47550 + 117, 133, 104, 120, 127, 133, 130, 124, 121, 117, 119, 129, 144, 156, 166, 167, 32.47551 + 159, 152, 152, 157, 172, 175, 179, 181, 181, 179, 175, 172, 172, 160, 146, 140, 32.47552 + 142, 143, 141, 135, 138, 147, 153, 142, 117, 96, 92, 100, 88, 98, 105, 107, 32.47553 + 119, 134, 128, 113, 90, 73, 62, 75, 104, 124, 130, 130, 127, 125, 121, 114, 32.47554 + 112, 111, 108, 106, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47556 + 255, 255, 255, 255, 255, 255, 255, 255, 129, 146, 148, 167, 202, 211, 188, 191, 32.47557 + 177, 197, 226, 226, 227, 229, 219, 213, 198, 206, 187, 186, 193, 189, 182, 183, 32.47558 + 183, 174, 165, 169, 177, 177, 173, 165, 154, 148, 157, 150, 114, 112, 124, 101, 32.47559 + 111, 101, 103, 108, 114, 125, 140, 153, 160, 156, 164, 168, 165, 156, 150, 156, 32.47560 + 164, 171, 174, 178, 181, 181, 178, 174, 171, 165, 153, 142, 141, 147, 148, 139, 32.47561 + 126, 88, 111, 140, 160, 154, 127, 97, 77, 92, 89, 92, 109, 138, 146, 122, 32.47562 + 89, 88, 85, 88, 103, 118, 127, 131, 133, 128, 126, 123, 119, 115, 112, 108, 32.47563 + 104, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47565 + 255, 255, 255, 255, 255, 127, 146, 165, 170, 198, 200, 193, 181, 166, 194, 225, 32.47566 + 227, 227, 230, 220, 215, 200, 199, 185, 185, 190, 187, 185, 187, 182, 173, 180, 32.47567 + 181, 177, 173, 164, 163, 176, 155, 158, 173, 154, 168, 159, 145, 136, 150, 130, 32.47568 + 132, 152, 158, 151, 152, 157, 172, 169, 162, 155, 152, 154, 164, 172, 168, 172, 32.47569 + 177, 180, 180, 177, 172, 169, 163, 151, 141, 140, 147, 151, 148, 141, 163, 138, 32.47570 + 114, 105, 114, 120, 116, 105, 95, 107, 119, 120, 115, 104, 100, 100, 94, 101, 32.47571 + 116, 134, 141, 138, 133, 130, 125, 123, 123, 121, 117, 111, 106, 156, 255, 255, 32.47572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47574 + 255, 255, 255, 145, 178, 166, 180, 176, 186, 174, 161, 193, 224, 226, 228, 232, 32.47575 + 224, 221, 207, 191, 181, 184, 187, 185, 185, 186, 177, 180, 181, 166, 162, 175, 32.47576 + 169, 162, 175, 175, 171, 159, 166, 170, 167, 169, 166, 169, 165, 169, 165, 152, 32.47577 + 154, 165, 165, 162, 159, 157, 157, 161, 162, 159, 157, 167, 170, 175, 178, 178, 32.47578 + 175, 170, 167, 165, 152, 138, 134, 141, 153, 162, 165, 156, 152, 148, 146, 143, 32.47579 + 136, 121, 109, 104, 93, 85, 88, 97, 101, 107, 114, 137, 131, 128, 132, 138, 32.47580 + 137, 132, 128, 120, 118, 120, 119, 116, 110, 139, 255, 255, 255, 255, 255, 255, 32.47581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47583 + 255, 108, 189, 209, 165, 169, 167, 145, 166, 231, 235, 229, 239, 218, 205, 212, 32.47584 + 199, 193, 191, 187, 180, 173, 177, 186, 186, 182, 180, 181, 181, 171, 165, 164, 32.47585 + 165, 166, 168, 169, 169, 169, 168, 165, 158, 161, 166, 167, 163, 162, 162, 164, 32.47586 + 161, 164, 168, 166, 162, 160, 161, 163, 171, 171, 171, 175, 178, 177, 172, 167, 32.47587 + 163, 152, 142, 142, 146, 150, 155, 160, 151, 153, 157, 157, 156, 151, 145, 142, 32.47588 + 157, 148, 138, 136, 143, 146, 143, 139, 141, 137, 136, 140, 147, 147, 136, 124, 32.47589 + 114, 113, 117, 117, 115, 108, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 205, 32.47592 + 235, 219, 192, 175, 149, 148, 212, 227, 226, 233, 222, 214, 206, 196, 191, 192, 32.47593 + 195, 194, 187, 184, 185, 183, 178, 178, 181, 181, 176, 170, 169, 174, 174, 174, 32.47594 + 174, 173, 172, 171, 171, 169, 170, 171, 170, 170, 167, 167, 166, 165, 167, 168, 32.47595 + 167, 163, 162, 160, 160, 172, 171, 171, 174, 177, 177, 172, 167, 162, 151, 141, 32.47596 + 140, 143, 147, 152, 156, 158, 155, 153, 150, 148, 149, 149, 150, 160, 154, 147, 32.47597 + 146, 149, 149, 146, 140, 147, 148, 147, 150, 153, 149, 139, 126, 118, 114, 115, 32.47598 + 115, 111, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 130, 100, 142, 32.47601 + 199, 145, 155, 203, 222, 229, 229, 223, 221, 197, 195, 189, 188, 192, 194, 190, 32.47602 + 186, 183, 186, 179, 177, 182, 186, 183, 179, 177, 179, 179, 179, 178, 176, 175, 32.47603 + 175, 173, 175, 173, 171, 169, 169, 168, 165, 163, 167, 166, 166, 167, 167, 167, 32.47604 + 165, 164, 172, 171, 172, 175, 178, 177, 172, 167, 161, 150, 141, 139, 141, 144, 32.47605 + 148, 151, 157, 156, 154, 151, 151, 153, 155, 156, 155, 154, 153, 152, 153, 151, 32.47606 + 147, 145, 156, 158, 159, 158, 157, 149, 137, 129, 120, 115, 114, 113, 157, 255, 32.47607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 164, 160, 175, 205, 32.47610 + 214, 223, 237, 229, 219, 221, 192, 200, 195, 189, 185, 184, 184, 185, 186, 185, 32.47611 + 178, 175, 181, 186, 185, 181, 178, 180, 178, 176, 174, 175, 174, 176, 175, 177, 32.47612 + 172, 168, 167, 169, 169, 167, 164, 165, 163, 163, 168, 173, 175, 174, 170, 176, 32.47613 + 173, 174, 177, 180, 179, 174, 169, 163, 152, 142, 140, 142, 143, 146, 150, 151, 32.47614 + 153, 157, 160, 163, 163, 161, 160, 154, 156, 158, 159, 158, 158, 158, 159, 163, 32.47615 + 165, 163, 159, 152, 143, 134, 128, 120, 113, 110, 158, 255, 255, 255, 255, 255, 32.47616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47618 + 255, 255, 255, 255, 255, 255, 255, 255, 209, 148, 204, 255, 252, 227, 220, 241, 32.47619 + 231, 213, 216, 194, 200, 200, 196, 189, 184, 184, 188, 191, 184, 177, 174, 179, 32.47620 + 183, 181, 177, 176, 178, 177, 176, 175, 176, 176, 179, 180, 179, 176, 172, 172, 32.47621 + 174, 175, 173, 171, 170, 168, 166, 170, 175, 178, 178, 175, 179, 177, 178, 181, 32.47622 + 184, 183, 178, 174, 168, 157, 148, 146, 147, 147, 150, 151, 148, 151, 156, 161, 32.47623 + 165, 166, 166, 166, 165, 167, 168, 167, 166, 167, 170, 175, 168, 168, 163, 157, 32.47624 + 146, 138, 133, 129, 117, 109, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47627 + 255, 255, 255, 255, 255, 255, 255, 238, 248, 252, 223, 211, 235, 229, 213, 214, 32.47628 + 195, 188, 194, 198, 193, 188, 186, 187, 186, 187, 183, 181, 184, 185, 182, 181, 32.47629 + 183, 182, 182, 182, 180, 182, 181, 184, 185, 176, 176, 175, 175, 176, 176, 175, 32.47630 + 173, 177, 175, 174, 175, 176, 179, 179, 176, 180, 178, 178, 182, 185, 184, 179, 32.47631 + 174, 171, 160, 151, 150, 151, 151, 152, 155, 154, 152, 152, 153, 156, 163, 169, 32.47632 + 173, 177, 175, 175, 172, 169, 169, 170, 173, 172, 169, 164, 156, 147, 139, 133, 32.47633 + 127, 112, 103, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47636 + 255, 255, 255, 255, 233, 217, 210, 209, 208, 227, 229, 216, 213, 192, 190, 194, 32.47637 + 195, 190, 188, 188, 188, 183, 187, 185, 185, 187, 185, 182, 184, 189, 185, 186, 32.47638 + 186, 185, 186, 184, 184, 184, 176, 177, 179, 178, 177, 174, 173, 173, 179, 180, 32.47639 + 180, 178, 179, 179, 181, 182, 181, 177, 177, 180, 183, 183, 178, 173, 172, 161, 32.47640 + 153, 152, 153, 153, 154, 157, 159, 157, 156, 155, 157, 163, 168, 171, 177, 174, 32.47641 + 175, 172, 170, 168, 165, 164, 168, 167, 163, 156, 150, 141, 131, 122, 108, 97, 32.47642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47645 + 255, 244, 188, 172, 199, 209, 222, 227, 220, 214, 187, 206, 205, 196, 187, 186, 32.47646 + 191, 190, 183, 178, 179, 182, 182, 181, 178, 182, 190, 190, 190, 191, 189, 190, 32.47647 + 185, 185, 184, 182, 186, 189, 188, 183, 178, 177, 179, 176, 179, 181, 179, 177, 32.47648 + 180, 184, 186, 179, 176, 176, 180, 183, 182, 177, 171, 171, 161, 153, 152, 154, 32.47649 + 154, 155, 158, 161, 162, 164, 165, 168, 167, 167, 167, 175, 174, 175, 177, 175, 32.47650 + 173, 168, 163, 161, 161, 160, 157, 151, 141, 128, 116, 105, 147, 255, 255, 255, 32.47651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 32.47654 + 173, 183, 198, 230, 218, 223, 203, 189, 192, 192, 189, 186, 181, 179, 180, 183, 32.47655 + 187, 183, 183, 187, 188, 183, 183, 188, 193, 194, 194, 193, 193, 191, 191, 189, 32.47656 + 184, 184, 186, 186, 181, 173, 172, 176, 178, 171, 172, 178, 180, 176, 174, 176, 32.47657 + 178, 179, 179, 180, 183, 187, 183, 174, 161, 157, 155, 155, 152, 150, 155, 162, 32.47658 + 162, 165, 170, 171, 172, 172, 176, 178, 176, 175, 174, 174, 172, 170, 170, 170, 32.47659 + 170, 171, 158, 148, 150, 141, 124, 114, 97, 255, 255, 255, 255, 255, 255, 255, 32.47660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 176, 177, 189, 32.47663 + 214, 216, 219, 210, 200, 197, 193, 188, 184, 183, 181, 179, 178, 184, 181, 181, 32.47664 + 185, 185, 181, 183, 187, 191, 190, 187, 184, 183, 181, 183, 182, 177, 175, 175, 32.47665 + 174, 167, 160, 161, 165, 168, 163, 164, 171, 174, 172, 169, 172, 174, 176, 176, 32.47666 + 176, 180, 183, 178, 171, 164, 159, 155, 153, 148, 145, 148, 154, 163, 166, 171, 32.47667 + 174, 177, 176, 178, 177, 177, 176, 176, 173, 173, 171, 169, 171, 168, 168, 162, 32.47668 + 159, 152, 132, 124, 137, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 173, 195, 213, 228, 216, 32.47672 + 208, 198, 198, 190, 184, 182, 184, 183, 177, 172, 180, 179, 179, 181, 181, 179, 32.47673 + 179, 181, 184, 186, 184, 182, 180, 176, 174, 172, 167, 165, 162, 160, 156, 151, 32.47674 + 156, 163, 166, 164, 167, 172, 176, 176, 175, 177, 173, 174, 173, 173, 176, 180, 32.47675 + 176, 169, 164, 158, 154, 151, 145, 140, 143, 148, 156, 159, 166, 173, 180, 181, 32.47676 + 179, 177, 179, 178, 178, 175, 175, 173, 170, 171, 168, 165, 158, 158, 148, 131, 32.47677 + 143, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47680 + 255, 255, 255, 255, 255, 255, 255, 255, 184, 209, 213, 231, 207, 203, 197, 189, 32.47681 + 184, 180, 178, 179, 178, 173, 171, 177, 177, 177, 178, 178, 177, 177, 178, 177, 32.47682 + 179, 182, 182, 178, 171, 163, 160, 162, 160, 157, 156, 154, 154, 163, 173, 170, 32.47683 + 169, 171, 176, 180, 181, 180, 180, 174, 175, 174, 173, 176, 180, 176, 169, 162, 32.47684 + 157, 152, 150, 144, 140, 143, 149, 143, 148, 156, 166, 176, 182, 182, 181, 179, 32.47685 + 179, 178, 176, 175, 171, 170, 169, 171, 164, 152, 144, 139, 134, 156, 255, 255, 32.47686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47689 + 255, 255, 255, 255, 255, 200, 219, 205, 218, 196, 199, 201, 182, 181, 180, 177, 32.47690 + 174, 172, 172, 175, 175, 177, 177, 176, 175, 176, 176, 175, 172, 172, 172, 171, 32.47691 + 168, 163, 158, 156, 165, 163, 161, 160, 158, 159, 168, 179, 174, 175, 176, 178, 32.47692 + 180, 182, 181, 178, 176, 176, 174, 172, 175, 179, 175, 169, 165, 159, 155, 151, 32.47693 + 145, 141, 143, 148, 139, 141, 149, 157, 166, 173, 177, 178, 177, 178, 178, 176, 32.47694 + 174, 170, 168, 166, 165, 166, 154, 140, 136, 128, 126, 255, 255, 255, 255, 255, 32.47695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47698 + 255, 255, 255, 224, 210, 216, 202, 189, 186, 182, 182, 181, 176, 172, 170, 173, 32.47699 + 178, 172, 175, 175, 173, 172, 174, 174, 170, 175, 171, 165, 159, 158, 159, 163, 32.47700 + 166, 170, 168, 166, 164, 161, 160, 166, 175, 177, 179, 180, 181, 183, 186, 183, 32.47701 + 178, 177, 176, 174, 171, 174, 178, 175, 169, 171, 165, 159, 154, 146, 140, 141, 32.47702 + 146, 142, 145, 152, 155, 159, 163, 168, 171, 175, 175, 174, 174, 171, 167, 164, 32.47703 + 161, 154, 162, 158, 145, 133, 105, 132, 255, 255, 255, 255, 255, 255, 255, 255, 32.47704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47707 + 244, 206, 208, 212, 186, 177, 187, 183, 177, 172, 169, 169, 170, 172, 166, 172, 32.47708 + 172, 168, 168, 172, 170, 166, 171, 167, 162, 158, 159, 162, 167, 171, 169, 168, 32.47709 + 166, 165, 163, 160, 164, 171, 178, 181, 182, 181, 182, 186, 184, 178, 180, 179, 32.47710 + 176, 174, 177, 181, 178, 172, 172, 166, 160, 155, 147, 141, 142, 147, 142, 149, 32.47711 + 157, 159, 159, 158, 162, 167, 172, 173, 172, 172, 169, 165, 160, 156, 150, 154, 32.47712 + 152, 144, 124, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 182, 32.47716 + 212, 195, 192, 192, 182, 171, 166, 166, 167, 165, 164, 163, 170, 170, 165, 165, 32.47717 + 170, 168, 163, 155, 157, 159, 161, 162, 163, 162, 162, 164, 163, 164, 165, 163, 32.47718 + 160, 163, 170, 168, 173, 175, 173, 176, 180, 179, 173, 185, 184, 181, 178, 181, 32.47719 + 185, 182, 176, 168, 162, 158, 154, 148, 143, 145, 151, 139, 150, 161, 165, 160, 32.47720 + 159, 163, 168, 170, 169, 170, 169, 166, 162, 156, 153, 154, 147, 140, 131, 109, 32.47721 + 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 193, 169, 196, 195, 32.47725 + 189, 187, 181, 174, 172, 172, 168, 164, 163, 166, 169, 168, 165, 161, 159, 159, 32.47726 + 153, 156, 160, 162, 162, 162, 163, 164, 156, 158, 160, 161, 162, 161, 159, 158, 32.47727 + 164, 167, 172, 174, 174, 173, 174, 175, 171, 173, 176, 181, 185, 186, 182, 180, 32.47728 + 169, 168, 163, 153, 142, 140, 147, 155, 143, 150, 159, 166, 165, 162, 158, 157, 32.47729 + 162, 163, 166, 165, 163, 160, 155, 150, 141, 137, 133, 129, 143, 164, 255, 255, 32.47730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 194, 191, 198, 188, 186, 181, 32.47734 + 174, 172, 173, 169, 166, 168, 170, 170, 168, 164, 160, 158, 158, 154, 156, 157, 32.47735 + 157, 155, 155, 156, 157, 160, 161, 163, 164, 165, 165, 163, 162, 169, 170, 172, 32.47736 + 171, 169, 170, 174, 180, 172, 178, 185, 192, 195, 191, 182, 176, 163, 165, 164, 32.47737 + 158, 150, 147, 148, 149, 145, 151, 160, 163, 163, 159, 157, 154, 158, 157, 160, 32.47738 + 161, 161, 158, 153, 147, 143, 132, 135, 151, 168, 174, 255, 255, 255, 255, 255, 32.47739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47742 + 255, 255, 255, 255, 255, 255, 255, 213, 190, 198, 187, 186, 181, 174, 171, 173, 32.47743 + 171, 168, 174, 174, 171, 167, 162, 158, 157, 157, 165, 167, 167, 164, 161, 160, 32.47744 + 162, 163, 158, 159, 158, 159, 159, 160, 160, 158, 155, 160, 164, 165, 161, 161, 32.47745 + 166, 171, 184, 189, 195, 200, 202, 198, 189, 183, 169, 167, 163, 158, 154, 151, 32.47746 + 150, 148, 150, 153, 160, 162, 162, 158, 157, 156, 154, 152, 154, 157, 158, 156, 32.47747 + 151, 143, 135, 121, 135, 170, 188, 180, 255, 255, 255, 255, 255, 255, 255, 255, 32.47748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47751 + 255, 255, 255, 255, 255, 197, 191, 186, 186, 182, 174, 171, 173, 172, 169, 179, 32.47752 + 178, 174, 167, 162, 158, 157, 160, 161, 163, 163, 163, 160, 158, 160, 161, 166, 32.47753 + 166, 166, 166, 166, 168, 168, 169, 163, 164, 162, 158, 154, 155, 166, 177, 181, 32.47754 + 181, 181, 182, 184, 184, 182, 180, 178, 169, 158, 151, 148, 150, 152, 151, 153, 32.47755 + 154, 159, 161, 162, 161, 161, 158, 148, 147, 149, 153, 156, 155, 147, 139, 130, 32.47756 + 127, 146, 177, 186, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47760 + 255, 255, 255, 183, 187, 187, 183, 174, 170, 172, 173, 171, 178, 178, 174, 167, 32.47761 + 162, 160, 160, 163, 162, 165, 167, 166, 164, 164, 164, 166, 164, 165, 165, 166, 32.47762 + 167, 168, 167, 168, 177, 171, 160, 148, 141, 143, 152, 162, 175, 174, 173, 174, 32.47763 + 176, 177, 176, 175, 168, 160, 150, 145, 145, 148, 150, 147, 148, 147, 151, 154, 32.47764 + 158, 159, 159, 159, 147, 147, 150, 154, 155, 152, 145, 136, 141, 155, 176, 185, 32.47765 + 184, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47769 + 230, 188, 188, 184, 175, 169, 171, 172, 172, 176, 175, 174, 168, 164, 163, 166, 32.47770 + 168, 165, 165, 163, 160, 157, 158, 160, 164, 176, 178, 179, 181, 182, 181, 182, 32.47771 + 180, 173, 175, 176, 174, 166, 154, 144, 138, 160, 161, 164, 168, 170, 169, 163, 32.47772 + 159, 148, 146, 146, 148, 150, 150, 146, 141, 144, 141, 143, 146, 151, 154, 156, 32.47773 + 155, 148, 151, 155, 156, 154, 148, 142, 134, 126, 151, 174, 172, 170, 255, 255, 32.47774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 32.47778 + 186, 175, 168, 169, 172, 172, 171, 171, 171, 170, 167, 167, 170, 173, 160, 154, 32.47779 + 146, 136, 130, 129, 135, 144, 146, 149, 152, 154, 155, 153, 154, 151, 172, 176, 32.47780 + 182, 189, 191, 182, 171, 160, 153, 152, 154, 156, 157, 156, 150, 146, 146, 148, 32.47781 + 150, 153, 153, 151, 147, 141, 145, 140, 141, 142, 148, 151, 153, 153, 151, 157, 32.47782 + 162, 161, 154, 145, 140, 135, 136, 159, 178, 174, 171, 255, 255, 255, 255, 255, 32.47783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 186, 174, 168, 32.47787 + 167, 171, 171, 169, 170, 172, 170, 169, 170, 173, 176, 176, 168, 151, 136, 126, 32.47788 + 128, 136, 146, 151, 156, 159, 163, 166, 166, 166, 165, 164, 155, 145, 147, 158, 32.47789 + 176, 191, 197, 195, 190, 185, 181, 181, 181, 180, 178, 168, 167, 165, 163, 160, 32.47790 + 158, 158, 154, 153, 148, 145, 145, 149, 153, 153, 153, 153, 160, 165, 163, 153, 32.47791 + 143, 139, 134, 85, 99, 105, 99, 88, 255, 255, 255, 255, 255, 255, 255, 255, 32.47792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 180, 179, 173, 169, 167, 32.47796 + 174, 176, 175, 176, 175, 173, 173, 172, 178, 174, 167, 157, 146, 134, 126, 122, 32.47797 + 150, 150, 160, 159, 167, 170, 165, 186, 181, 190, 184, 175, 175, 170, 160, 159, 32.47798 + 165, 174, 166, 166, 154, 141, 151, 147, 148, 150, 153, 156, 159, 158, 157, 150, 32.47799 + 127, 127, 135, 141, 146, 150, 157, 160, 154, 168, 173, 156, 140, 143, 132, 98, 32.47800 + 44, 43, 45, 46, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47804 + 255, 255, 255, 255, 255, 255, 255, 255, 230, 174, 168, 166, 168, 173, 174, 173, 32.47805 + 173, 172, 171, 172, 171, 172, 177, 179, 172, 158, 140, 130, 124, 113, 141, 164, 32.47806 + 151, 154, 171, 168, 177, 176, 185, 182, 179, 185, 184, 177, 179, 174, 181, 171, 32.47807 + 174, 169, 161, 168, 162, 165, 160, 154, 149, 146, 147, 149, 143, 128, 131, 140, 32.47808 + 148, 153, 156, 158, 160, 173, 162, 156, 153, 157, 152, 109, 46, 46, 41, 36, 32.47809 + 33, 35, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47813 + 255, 255, 255, 255, 255, 255, 227, 166, 165, 170, 177, 177, 177, 175, 174, 174, 32.47814 + 175, 176, 172, 179, 185, 180, 165, 151, 142, 139, 126, 148, 165, 152, 156, 163, 32.47815 + 147, 145, 150, 159, 154, 150, 159, 159, 152, 151, 160, 165, 157, 163, 163, 157, 32.47816 + 165, 158, 162, 163, 164, 164, 162, 158, 156, 147, 137, 139, 149, 157, 161, 160, 32.47817 + 158, 157, 162, 160, 156, 139, 125, 141, 170, 178, 144, 137, 128, 124, 170, 255, 32.47818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47822 + 255, 255, 255, 255, 226, 167, 169, 176, 177, 178, 179, 179, 178, 177, 178, 175, 32.47823 + 179, 180, 177, 169, 161, 157, 155, 146, 131, 133, 148, 175, 179, 155, 156, 155, 32.47824 + 161, 154, 150, 158, 159, 152, 150, 128, 135, 132, 138, 136, 130, 139, 135, 150, 32.47825 + 151, 152, 153, 153, 154, 154, 148, 154, 153, 160, 164, 166, 162, 157, 153, 157, 32.47826 + 142, 134, 130, 132, 157, 186, 196, 174, 171, 168, 167, 255, 255, 255, 255, 255, 32.47827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47831 + 255, 255, 169, 167, 167, 171, 175, 177, 178, 176, 173, 172, 180, 178, 174, 174, 32.47832 + 175, 170, 161, 155, 170, 142, 130, 137, 162, 167, 143, 145, 155, 159, 156, 157, 32.47833 + 170, 178, 174, 174, 148, 160, 161, 168, 164, 156, 170, 172, 165, 156, 141, 128, 32.47834 + 126, 135, 149, 154, 163, 158, 160, 160, 161, 158, 156, 151, 153, 130, 124, 140, 32.47835 + 156, 172, 172, 158, 175, 176, 178, 178, 255, 255, 255, 255, 255, 255, 255, 255, 32.47836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47840 + 166, 165, 169, 173, 176, 178, 176, 173, 173, 180, 177, 175, 179, 185, 178, 161, 32.47841 + 150, 176, 174, 159, 130, 128, 132, 114, 113, 153, 156, 153, 153, 172, 180, 180, 32.47842 + 178, 147, 163, 169, 176, 171, 163, 181, 185, 167, 157, 144, 135, 134, 144, 158, 32.47843 + 163, 159, 153, 151, 151, 153, 153, 151, 147, 131, 135, 153, 159, 156, 165, 185, 32.47844 + 193, 172, 170, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 168, 32.47849 + 169, 171, 174, 175, 176, 177, 179, 177, 176, 180, 185, 180, 168, 159, 155, 167, 32.47850 + 169, 142, 129, 128, 118, 130, 159, 160, 154, 153, 171, 178, 174, 171, 155, 169, 32.47851 + 173, 182, 179, 169, 183, 184, 139, 140, 140, 141, 144, 151, 155, 157, 153, 150, 32.47852 + 146, 147, 148, 148, 144, 139, 136, 147, 168, 174, 168, 171, 171, 160, 176, 175, 32.47853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 163, 163, 166, 32.47858 + 168, 172, 175, 178, 175, 174, 175, 179, 179, 178, 178, 166, 165, 173, 168, 155, 32.47859 + 131, 117, 143, 149, 150, 144, 143, 160, 167, 163, 161, 153, 165, 163, 172, 170, 32.47860 + 158, 167, 164, 149, 148, 143, 140, 144, 151, 160, 164, 155, 152, 148, 148, 148, 32.47861 + 145, 138, 133, 159, 176, 193, 185, 166, 168, 179, 177, 172, 255, 255, 255, 255, 32.47862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 160, 165, 170, 170, 168, 32.47867 + 171, 174, 176, 179, 178, 177, 175, 176, 166, 164, 164, 171, 168, 155, 147, 147, 32.47868 + 153, 143, 158, 157, 170, 145, 147, 144, 129, 130, 132, 135, 140, 143, 147, 148, 32.47869 + 159, 148, 138, 138, 148, 157, 158, 155, 156, 152, 143, 139, 141, 148, 145, 138, 32.47870 + 187, 185, 184, 175, 163, 154, 156, 163, 255, 255, 255, 255, 255, 255, 255, 255, 32.47871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47875 + 255, 255, 255, 255, 255, 255, 255, 255, 162, 168, 171, 174, 172, 167, 170, 172, 32.47876 + 174, 174, 174, 173, 175, 175, 159, 150, 160, 173, 171, 167, 168, 166, 156, 158, 32.47877 + 158, 160, 144, 143, 147, 147, 147, 146, 145, 146, 151, 156, 158, 155, 150, 147, 32.47878 + 149, 155, 157, 154, 149, 141, 153, 154, 144, 140, 147, 147, 142, 129, 117, 100, 32.47879 + 81, 59, 42, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47884 + 255, 255, 255, 255, 255, 255, 226, 172, 176, 175, 170, 170, 171, 173, 174, 175, 32.47885 + 173, 175, 180, 164, 153, 158, 170, 177, 184, 191, 188, 181, 167, 169, 156, 149, 32.47886 + 144, 153, 155, 157, 157, 157, 158, 160, 163, 162, 152, 153, 155, 161, 163, 157, 32.47887 + 150, 143, 154, 153, 142, 131, 134, 140, 132, 113, 49, 42, 39, 43, 46, 45, 32.47888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47893 + 255, 255, 255, 255, 227, 174, 176, 177, 176, 175, 175, 174, 174, 175, 175, 176, 32.47894 + 173, 171, 168, 166, 169, 184, 200, 211, 208, 189, 195, 174, 175, 162, 171, 172, 32.47895 + 174, 177, 175, 173, 168, 161, 155, 152, 155, 161, 162, 162, 155, 148, 143, 137, 32.47896 + 134, 133, 130, 119, 94, 63, 40, 49, 49, 54, 63, 64, 255, 255, 255, 255, 32.47897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47902 + 255, 255, 228, 177, 181, 180, 178, 176, 173, 170, 170, 172, 174, 177, 178, 174, 32.47903 + 166, 163, 169, 179, 197, 201, 190, 203, 189, 194, 180, 187, 197, 196, 189, 181, 32.47904 + 170, 161, 152, 145, 155, 155, 157, 157, 153, 149, 148, 145, 144, 136, 131, 114, 32.47905 + 76, 45, 57, 88, 112, 118, 132, 184, 255, 255, 255, 255, 255, 255, 255, 255, 32.47906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47911 + 230, 180, 179, 178, 174, 170, 167, 165, 167, 179, 175, 168, 169, 171, 168, 158, 32.47912 + 151, 154, 162, 165, 176, 175, 181, 176, 180, 191, 184, 174, 164, 155, 154, 153, 32.47913 + 151, 157, 154, 152, 151, 148, 148, 147, 144, 128, 109, 94, 81, 61, 61, 105, 32.47914 + 161, 191, 187, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 178, 32.47920 + 176, 176, 172, 168, 165, 167, 179, 176, 168, 167, 172, 168, 155, 143, 139, 141, 32.47921 + 150, 149, 160, 159, 163, 161, 165, 163, 158, 154, 152, 154, 157, 157, 154, 152, 32.47922 + 149, 150, 150, 149, 146, 138, 128, 128, 142, 156, 164, 168, 176, 186, 194, 255, 32.47923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 178, 178, 177, 32.47929 + 172, 169, 170, 174, 178, 176, 172, 168, 166, 159, 157, 160, 156, 160, 145, 155, 32.47930 + 144, 155, 149, 155, 156, 159, 163, 164, 163, 159, 155, 152, 152, 151, 153, 154, 32.47931 + 149, 142, 132, 141, 160, 178, 176, 175, 180, 179, 173, 255, 255, 255, 255, 255, 32.47932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 175, 176, 175, 173, 171, 32.47938 + 175, 176, 173, 171, 169, 168, 168, 168, 162, 162, 161, 163, 163, 165, 165, 165, 32.47939 + 159, 160, 163, 163, 160, 159, 161, 162, 159, 158, 159, 158, 151, 142, 143, 144, 32.47940 + 182, 172, 174, 182, 185, 177, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 179, 179, 179, 177, 176, 175, 32.47947 + 173, 173, 173, 174, 175, 169, 168, 165, 163, 161, 159, 158, 156, 157, 159, 162, 32.47948 + 161, 161, 160, 162, 163, 164, 162, 161, 152, 134, 128, 146, 169, 157, 165, 180, 32.47949 + 188, 184, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47955 + 255, 255, 255, 255, 255, 255, 255, 178, 181, 182, 179, 178, 176, 175, 174, 176, 32.47956 + 178, 179, 178, 177, 174, 171, 169, 167, 165, 163, 165, 165, 164, 163, 163, 163, 32.47957 + 165, 166, 170, 163, 157, 152, 146, 147, 161, 177, 180, 188, 194, 190, 255, 255, 32.47958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47964 + 255, 255, 255, 255, 255, 229, 182, 181, 179, 176, 174, 174, 175, 177, 179, 180, 32.47965 + 179, 177, 175, 174, 173, 172, 172, 168, 167, 165, 165, 165, 166, 168, 169, 165, 32.47966 + 162, 153, 144, 150, 168, 179, 179, 180, 181, 206, 255, 255, 255, 255, 255, 255, 32.47967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47973 + 255, 255, 255, 230, 182, 180, 178, 176, 175, 175, 177, 178, 180, 179, 177, 175, 32.47974 + 174, 173, 172, 172, 170, 168, 166, 165, 166, 168, 169, 168, 157, 161, 152, 138, 32.47975 + 147, 172, 177, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47982 + 255, 255, 230, 180, 179, 178, 178, 179, 179, 188, 186, 184, 181, 178, 176, 175, 32.47983 + 175, 171, 169, 167, 167, 168, 168, 168, 164, 159, 150, 144, 152, 176, 183, 255, 32.47984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47991 + 175, 177, 178, 178, 178, 177, 187, 186, 183, 181, 179, 177, 176, 176, 175, 173, 32.47992 + 169, 168, 169, 166, 162, 158, 163, 142, 144, 172, 184, 255, 255, 255, 255, 255, 32.47993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.47999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.48000 + 176, 177, 175, 176, 175, 175, 173, 174, 173, 174, 175, 178, 174, 171, 169, 168, 32.48001 + 164, 159, 152, 156, 144, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48009 + 170, 173, 178, 174, 170, 167, 172, 176, 164, 166, 165, 161, 158, 157, 155, 149, 32.48010 + 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 76, 32.48018 + 80, 27, 31, 80, 128, 43, 19, 39, 69, 57, 72, 59, 67, 74, 81, 86, 32.48019 + 95, 116, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48026 + 255, 255, 255, 255, 196, 93, 107, 98, 108, 135, 148, 168, 163, 155, 67, 64, 32.48027 + 77, 105, 126, 129, 121, 103, 89, 141, 141, 127, 113, 123, 123, 124, 145, 177, 32.48028 + 191, 201, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 68, 54, 80, 32.48035 + 79, 90, 134, 172, 183, 178, 190, 176, 147, 159, 140, 157, 155, 181, 164, 141, 32.48036 + 147, 124, 140, 146, 175, 164, 129, 125, 137, 138, 136, 154, 186, 196, 187, 195, 32.48037 + 210, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48043 + 255, 255, 255, 255, 255, 255, 255, 207, 94, 108, 116, 128, 119, 154, 167, 181, 32.48044 + 187, 198, 177, 164, 169, 143, 150, 139, 165, 184, 197, 192, 150, 143, 136, 195, 32.48045 + 196, 170, 156, 162, 140, 152, 154, 154, 169, 196, 204, 198, 180, 188, 198, 210, 32.48046 + 227, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48052 + 255, 192, 79, 91, 99, 66, 73, 93, 120, 125, 183, 201, 194, 168, 174, 159, 32.48053 + 158, 146, 148, 153, 167, 178, 200, 159, 153, 173, 183, 180, 170, 145, 151, 137, 32.48054 + 158, 156, 160, 153, 142, 140, 150, 151, 146, 174, 174, 176, 180, 186, 190, 203, 32.48055 + 224, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 40, 58, 60, 32.48061 + 71, 107, 111, 134, 138, 144, 133, 168, 172, 176, 152, 156, 146, 160, 145, 158, 32.48062 + 198, 152, 175, 153, 159, 177, 183, 161, 193, 211, 199, 188, 130, 173, 160, 159, 32.48063 + 151, 137, 131, 133, 136, 136, 155, 143, 128, 120, 124, 136, 155, 170, 199, 213, 32.48064 + 231, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48069 + 255, 255, 255, 255, 255, 255, 255, 209, 118, 103, 102, 85, 94, 130, 146, 149, 32.48070 + 173, 136, 165, 219, 182, 182, 158, 131, 141, 149, 136, 164, 173, 152, 149, 150, 32.48071 + 163, 150, 183, 143, 143, 167, 186, 169, 149, 159, 177, 164, 135, 112, 112, 120, 32.48072 + 122, 125, 130, 120, 157, 145, 120, 133, 129, 115, 127, 141, 169, 215, 202, 202, 32.48073 + 231, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48078 + 255, 255, 203, 118, 109, 128, 126, 151, 164, 188, 222, 193, 224, 215, 210, 183, 32.48079 + 183, 177, 152, 137, 144, 152, 136, 167, 134, 133, 139, 146, 143, 156, 154, 154, 32.48080 + 130, 155, 169, 155, 147, 168, 173, 148, 114, 133, 139, 126, 125, 139, 143, 132, 32.48081 + 125, 133, 122, 123, 147, 138, 109, 105, 108, 109, 137, 164, 185, 193, 195, 226, 32.48082 + 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 107, 110, 32.48087 + 125, 188, 181, 215, 214, 208, 224, 212, 224, 223, 201, 182, 164, 171, 153, 153, 32.48088 + 172, 142, 153, 130, 132, 134, 144, 173, 155, 113, 110, 150, 154, 163, 141, 135, 32.48089 + 150, 169, 181, 169, 142, 149, 152, 156, 153, 140, 126, 123, 126, 136, 147, 151, 32.48090 + 134, 103, 87, 109, 147, 139, 113, 94, 119, 143, 150, 170, 182, 189, 233, 255, 32.48091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48095 + 255, 255, 255, 255, 255, 255, 255, 255, 192, 80, 48, 87, 112, 143, 219, 185, 32.48096 + 216, 196, 211, 204, 172, 190, 167, 153, 114, 119, 141, 122, 136, 173, 137, 180, 32.48097 + 171, 162, 162, 154, 158, 144, 151, 156, 189, 170, 187, 167, 178, 195, 164, 121, 32.48098 + 127, 160, 178, 170, 166, 160, 138, 118, 131, 159, 172, 132, 112, 121, 135, 143, 32.48099 + 128, 96, 106, 112, 100, 127, 148, 151, 166, 152, 148, 151, 192, 246, 255, 255, 32.48100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48104 + 255, 255, 210, 67, 42, 83, 91, 113, 184, 177, 231, 202, 194, 190, 197, 189, 32.48105 + 169, 175, 116, 134, 131, 109, 99, 109, 141, 144, 170, 175, 210, 165, 174, 144, 32.48106 + 145, 125, 126, 177, 175, 179, 154, 141, 135, 139, 146, 143, 145, 146, 139, 138, 32.48107 + 160, 158, 124, 96, 101, 123, 137, 131, 124, 129, 125, 114, 131, 143, 123, 94, 32.48108 + 109, 103, 121, 127, 125, 151, 151, 145, 134, 137, 168, 224, 255, 255, 255, 255, 32.48109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 99, 32.48113 + 104, 109, 147, 140, 177, 205, 185, 206, 170, 175, 186, 189, 165, 142, 155, 124, 32.48114 + 136, 151, 125, 146, 166, 172, 174, 182, 164, 178, 137, 123, 136, 152, 119, 125, 32.48115 + 165, 154, 162, 160, 170, 183, 186, 160, 126, 121, 126, 117, 117, 118, 114, 106, 32.48116 + 102, 102, 101, 97, 129, 125, 124, 111, 101, 127, 148, 134, 138, 120, 97, 95, 32.48117 + 81, 71, 103, 136, 150, 133, 133, 154, 163, 162, 193, 232, 255, 255, 255, 255, 32.48118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48121 + 255, 255, 255, 255, 255, 255, 255, 255, 214, 137, 116, 120, 133, 171, 175, 194, 32.48122 + 203, 199, 164, 164, 147, 165, 170, 200, 171, 172, 161, 153, 180, 161, 166, 133, 32.48123 + 172, 209, 154, 153, 155, 118, 133, 139, 128, 160, 157, 118, 153, 177, 179, 194, 32.48124 + 184, 166, 143, 123, 114, 107, 107, 99, 80, 104, 88, 89, 112, 124, 113, 107, 32.48125 + 113, 109, 114, 123, 126, 123, 127, 123, 109, 122, 105, 106, 105, 99, 95, 92, 32.48126 + 109, 126, 120, 121, 138, 155, 153, 135, 118, 144, 188, 229, 255, 255, 255, 255, 32.48127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48130 + 255, 255, 255, 220, 152, 110, 119, 152, 169, 173, 210, 177, 170, 207, 197, 157, 32.48131 + 162, 159, 146, 169, 173, 143, 177, 192, 193, 172, 173, 135, 129, 113, 151, 125, 32.48132 + 129, 145, 156, 130, 102, 121, 143, 160, 160, 201, 153, 134, 166, 167, 144, 139, 32.48133 + 128, 104, 90, 100, 106, 93, 73, 101, 113, 92, 66, 62, 77, 89, 108, 98, 32.48134 + 96, 105, 112, 114, 114, 116, 120, 112, 119, 101, 111, 140, 120, 111, 93, 99, 32.48135 + 102, 109, 131, 139, 110, 72, 77, 85, 97, 128, 184, 229, 255, 255, 255, 255, 32.48136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 221, 180, 32.48139 + 150, 132, 136, 166, 190, 184, 157, 196, 163, 172, 137, 150, 162, 143, 139, 158, 32.48140 + 174, 190, 186, 180, 196, 177, 133, 119, 112, 149, 115, 142, 130, 127, 140, 155, 32.48141 + 170, 190, 210, 200, 162, 155, 128, 112, 98, 127, 133, 126, 121, 103, 100, 107, 32.48142 + 92, 81, 96, 112, 81, 61, 54, 47, 53, 69, 77, 72, 84, 97, 102, 99, 32.48143 + 100, 109, 118, 116, 110, 103, 97, 92, 88, 84, 81, 84, 76, 91, 101, 95, 32.48144 + 100, 104, 90, 86, 100, 75, 79, 90, 90, 131, 178, 226, 255, 255, 255, 255, 32.48145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 220, 202, 157, 118, 122, 147, 32.48148 + 184, 157, 139, 183, 134, 142, 135, 125, 150, 135, 162, 168, 166, 168, 197, 143, 32.48149 + 169, 131, 153, 127, 103, 79, 95, 144, 124, 139, 153, 159, 160, 165, 174, 181, 32.48150 + 198, 169, 158, 133, 119, 85, 81, 71, 68, 61, 48, 48, 58, 59, 59, 66, 32.48151 + 51, 46, 56, 70, 69, 66, 59, 47, 64, 72, 82, 88, 89, 88, 90, 92, 32.48152 + 99, 95, 90, 85, 82, 78, 74, 71, 60, 68, 84, 84, 69, 65, 74, 79, 32.48153 + 88, 101, 90, 85, 85, 78, 80, 77, 75, 118, 220, 255, 255, 255, 255, 255, 32.48154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48156 + 255, 255, 255, 236, 157, 195, 190, 157, 176, 175, 129, 131, 141, 146, 133, 132, 32.48157 + 151, 137, 127, 117, 157, 181, 188, 186, 135, 129, 113, 170, 177, 163, 127, 126, 32.48158 + 93, 105, 126, 101, 76, 90, 104, 115, 123, 137, 149, 140, 122, 103, 105, 109, 32.48159 + 96, 91, 64, 64, 75, 52, 46, 44, 46, 51, 65, 71, 62, 33, 35, 50, 32.48160 + 62, 64, 68, 64, 47, 64, 63, 62, 64, 69, 75, 79, 82, 81, 79, 76, 32.48161 + 74, 73, 70, 66, 62, 62, 66, 63, 62, 68, 69, 67, 73, 80, 99, 115, 32.48162 + 107, 103, 100, 90, 102, 63, 36, 52, 140, 255, 255, 255, 255, 255, 255, 255, 32.48163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 32.48165 + 110, 178, 181, 181, 174, 161, 135, 144, 161, 115, 120, 142, 164, 123, 121, 99, 32.48166 + 86, 125, 128, 144, 128, 112, 144, 144, 161, 158, 124, 131, 119, 127, 112, 82, 32.48167 + 86, 56, 90, 100, 112, 126, 140, 140, 119, 94, 104, 89, 71, 83, 124, 118, 32.48168 + 84, 66, 52, 49, 57, 55, 48, 62, 69, 48, 50, 47, 46, 42, 41, 57, 32.48169 + 67, 58, 56, 55, 55, 58, 64, 70, 75, 78, 71, 70, 70, 70, 70, 68, 32.48170 + 64, 61, 68, 70, 55, 54, 77, 86, 84, 95, 91, 86, 99, 92, 107, 116, 32.48171 + 83, 82, 83, 70, 106, 154, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 152, 161, 216, 188, 152, 148, 32.48174 + 167, 201, 170, 138, 161, 164, 145, 117, 122, 159, 152, 108, 138, 137, 137, 128, 32.48175 + 132, 144, 171, 136, 143, 135, 84, 69, 80, 75, 109, 107, 96, 108, 88, 98, 32.48176 + 113, 134, 141, 122, 90, 70, 66, 47, 73, 84, 93, 93, 72, 44, 47, 44, 32.48177 + 45, 53, 43, 29, 42, 52, 33, 44, 42, 44, 40, 37, 51, 59, 50, 44, 32.48178 + 52, 61, 68, 71, 72, 71, 70, 69, 68, 68, 68, 68, 67, 64, 60, 54, 32.48179 + 67, 60, 54, 68, 77, 91, 119, 97, 69, 67, 75, 121, 144, 92, 67, 66, 32.48180 + 100, 148, 172, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48182 + 255, 255, 255, 255, 255, 229, 179, 167, 148, 165, 161, 164, 135, 152, 170, 161, 32.48183 + 182, 174, 134, 169, 179, 160, 171, 159, 163, 151, 145, 135, 122, 149, 136, 142, 32.48184 + 83, 97, 104, 103, 99, 106, 137, 121, 79, 89, 86, 117, 145, 137, 132, 125, 32.48185 + 103, 75, 66, 72, 53, 66, 68, 83, 83, 82, 61, 59, 43, 45, 43, 31, 32.48186 + 24, 37, 49, 43, 35, 33, 40, 44, 43, 54, 62, 57, 59, 57, 54, 54, 32.48187 + 55, 63, 70, 76, 65, 65, 62, 62, 61, 60, 56, 55, 54, 57, 49, 50, 32.48188 + 63, 76, 89, 103, 88, 87, 92, 100, 128, 140, 116, 107, 104, 119, 148, 189, 32.48189 + 185, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48191 + 255, 241, 207, 222, 196, 185, 192, 173, 136, 121, 184, 187, 151, 161, 161, 132, 32.48192 + 137, 145, 145, 143, 139, 202, 160, 155, 156, 177, 192, 137, 126, 121, 125, 101, 32.48193 + 95, 133, 85, 103, 149, 142, 135, 110, 152, 125, 103, 78, 63, 60, 58, 56, 32.48194 + 54, 53, 69, 75, 78, 44, 51, 62, 81, 39, 42, 32, 25, 33, 40, 39, 32.48195 + 39, 42, 34, 39, 46, 46, 55, 68, 72, 68, 57, 44, 40, 47, 61, 73, 32.48196 + 80, 64, 61, 57, 55, 53, 51, 48, 45, 58, 43, 39, 50, 63, 79, 84, 32.48197 + 75, 95, 122, 120, 108, 92, 82, 100, 117, 122, 125, 132, 178, 186, 181, 192, 32.48198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 189, 178, 32.48200 + 201, 166, 147, 146, 166, 164, 153, 154, 147, 175, 178, 159, 164, 143, 126, 142, 32.48201 + 134, 193, 166, 177, 168, 146, 115, 105, 100, 107, 99, 115, 133, 95, 96, 137, 32.48202 + 141, 170, 133, 117, 118, 100, 82, 86, 80, 64, 56, 57, 55, 47, 51, 46, 32.48203 + 45, 65, 47, 69, 67, 59, 44, 48, 36, 35, 55, 53, 34, 32, 44, 34, 32.48204 + 41, 52, 51, 52, 62, 67, 49, 44, 42, 50, 65, 73, 70, 64, 64, 60, 32.48205 + 54, 50, 48, 46, 43, 41, 40, 34, 49, 60, 53, 62, 76, 70, 104, 125, 32.48206 + 99, 85, 73, 69, 109, 129, 132, 188, 179, 155, 143, 177, 168, 195, 255, 255, 32.48207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 146, 131, 128, 149, 136, 179, 32.48209 + 141, 133, 125, 119, 160, 157, 168, 148, 165, 162, 123, 102, 123, 135, 170, 168, 32.48210 + 159, 125, 126, 125, 141, 96, 112, 81, 82, 80, 120, 121, 158, 198, 116, 145, 32.48211 + 77, 93, 82, 63, 62, 69, 67, 52, 50, 57, 57, 45, 44, 50, 60, 64, 32.48212 + 57, 48, 46, 38, 41, 44, 43, 38, 35, 35, 37, 46, 41, 39, 41, 41, 32.48213 + 41, 44, 49, 46, 45, 44, 45, 49, 54, 60, 64, 70, 55, 50, 60, 60, 32.48214 + 46, 39, 43, 37, 40, 44, 46, 49, 58, 71, 82, 79, 84, 96, 106, 111, 32.48215 + 114, 122, 133, 156, 157, 154, 146, 144, 155, 173, 187, 255, 255, 255, 255, 255, 32.48216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48217 + 255, 255, 255, 255, 220, 167, 194, 204, 172, 150, 186, 187, 180, 120, 138, 202, 32.48218 + 206, 199, 179, 174, 167, 153, 147, 107, 114, 136, 185, 184, 201, 152, 157, 163, 32.48219 + 141, 158, 121, 109, 103, 109, 110, 114, 132, 100, 88, 86, 69, 82, 87, 63, 32.48220 + 68, 64, 68, 66, 53, 50, 54, 50, 51, 47, 47, 54, 56, 50, 46, 46, 32.48221 + 61, 58, 52, 42, 33, 30, 32, 36, 36, 32, 30, 32, 33, 32, 35, 39, 32.48222 + 38, 37, 36, 36, 38, 43, 48, 51, 63, 51, 44, 48, 49, 42, 38, 41, 32.48223 + 30, 33, 34, 35, 36, 43, 54, 64, 70, 91, 116, 128, 120, 111, 116, 128, 32.48224 + 125, 133, 141, 144, 143, 143, 145, 147, 150, 255, 255, 255, 255, 255, 255, 255, 32.48225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48226 + 219, 167, 188, 180, 168, 170, 217, 205, 186, 177, 193, 235, 201, 228, 165, 141, 32.48227 + 149, 155, 110, 139, 159, 181, 217, 210, 184, 185, 205, 177, 136, 115, 129, 115, 32.48228 + 100, 113, 107, 113, 99, 110, 130, 139, 110, 93, 66, 62, 62, 57, 53, 57, 32.48229 + 56, 46, 45, 49, 43, 55, 49, 45, 46, 45, 43, 43, 46, 57, 54, 47, 32.48230 + 37, 30, 28, 33, 39, 33, 29, 29, 31, 32, 31, 33, 39, 37, 35, 33, 32.48231 + 33, 34, 38, 41, 44, 52, 45, 38, 34, 36, 38, 39, 38, 34, 35, 34, 32.48232 + 34, 34, 39, 48, 55, 78, 91, 104, 106, 94, 85, 92, 106, 109, 120, 135, 32.48233 + 146, 146, 137, 127, 121, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 132, 138, 165, 32.48235 + 179, 167, 196, 186, 158, 158, 154, 192, 190, 148, 125, 156, 178, 146, 133, 153, 32.48236 + 204, 211, 224, 220, 182, 178, 140, 132, 109, 129, 124, 93, 61, 76, 118, 119, 32.48237 + 119, 100, 76, 116, 137, 94, 124, 98, 75, 34, 46, 45, 53, 54, 44, 46, 32.48238 + 52, 51, 54, 50, 45, 41, 40, 40, 42, 44, 43, 43, 43, 38, 33, 31, 32.48239 + 33, 36, 35, 32, 32, 35, 36, 34, 36, 39, 37, 36, 34, 33, 33, 35, 32.48240 + 38, 40, 41, 42, 37, 29, 31, 39, 40, 35, 41, 41, 40, 39, 37, 42, 32.48241 + 48, 53, 71, 67, 64, 66, 66, 66, 70, 76, 89, 96, 110, 123, 126, 120, 32.48242 + 111, 107, 122, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48243 + 255, 255, 255, 255, 255, 255, 255, 255, 212, 122, 132, 163, 200, 204, 185, 183, 32.48244 + 151, 197, 193, 150, 175, 144, 193, 216, 148, 96, 114, 149, 205, 223, 231, 189, 32.48245 + 186, 164, 99, 110, 108, 119, 99, 115, 120, 98, 86, 49, 49, 92, 128, 165, 32.48246 + 146, 144, 130, 102, 124, 110, 38, 61, 62, 71, 70, 55, 54, 63, 64, 49, 32.48247 + 48, 45, 41, 40, 41, 43, 43, 50, 50, 47, 40, 33, 28, 29, 31, 33, 32.48248 + 30, 31, 35, 35, 32, 32, 35, 32, 31, 29, 28, 29, 30, 32, 34, 37, 32.48249 + 43, 42, 34, 35, 43, 43, 35, 39, 39, 37, 36, 36, 38, 43, 47, 42, 32.48250 + 40, 45, 55, 62, 64, 65, 67, 72, 77, 91, 108, 117, 115, 114, 116, 132, 32.48251 + 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48252 + 255, 255, 255, 255, 126, 125, 110, 150, 224, 220, 184, 198, 166, 188, 182, 216, 32.48253 + 225, 243, 213, 154, 146, 153, 149, 143, 129, 177, 170, 162, 182, 130, 96, 108, 32.48254 + 133, 113, 104, 120, 93, 100, 83, 87, 90, 133, 165, 154, 123, 111, 137, 128, 32.48255 + 115, 100, 117, 97, 79, 78, 83, 78, 60, 54, 59, 58, 42, 46, 45, 41, 32.48256 + 39, 41, 42, 42, 49, 47, 41, 32, 25, 24, 30, 35, 33, 31, 32, 36, 32.48257 + 36, 31, 30, 31, 27, 28, 27, 27, 28, 29, 31, 33, 38, 44, 45, 41, 32.48258 + 40, 44, 42, 35, 37, 36, 33, 32, 32, 34, 37, 39, 39, 42, 48, 50, 32.48259 + 48, 49, 61, 74, 63, 69, 87, 109, 120, 120, 122, 129, 134, 120, 224, 255, 32.48260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48261 + 204, 132, 131, 126, 156, 190, 169, 161, 210, 138, 206, 186, 224, 204, 155, 171, 32.48262 + 138, 152, 125, 136, 142, 135, 144, 146, 171, 130, 144, 116, 118, 89, 107, 93, 32.48263 + 113, 89, 92, 94, 88, 99, 116, 140, 104, 124, 115, 131, 112, 136, 90, 83, 32.48264 + 71, 75, 68, 68, 65, 52, 49, 49, 41, 38, 43, 44, 38, 35, 37, 39, 32.48265 + 38, 36, 37, 34, 29, 26, 27, 34, 40, 35, 33, 35, 38, 37, 31, 28, 32.48266 + 29, 28, 28, 28, 29, 30, 33, 35, 36, 42, 44, 45, 44, 42, 41, 39, 32.48267 + 37, 41, 39, 34, 32, 33, 34, 34, 36, 48, 47, 44, 43, 41, 44, 58, 32.48268 + 72, 57, 62, 78, 97, 103, 100, 104, 115, 115, 125, 163, 255, 255, 255, 255, 32.48269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 91, 134, 121, 32.48270 + 136, 155, 168, 191, 180, 130, 197, 187, 197, 152, 160, 190, 145, 160, 136, 116, 32.48271 + 131, 105, 134, 172, 184, 171, 167, 146, 131, 110, 122, 97, 97, 101, 132, 99, 32.48272 + 106, 104, 146, 142, 181, 150, 128, 112, 103, 122, 54, 93, 96, 76, 62, 50, 32.48273 + 47, 49, 46, 48, 46, 33, 38, 43, 43, 36, 30, 35, 36, 36, 35, 39, 32.48274 + 42, 41, 37, 34, 34, 36, 33, 31, 32, 35, 34, 27, 23, 24, 24, 24, 32.48275 + 25, 27, 29, 32, 34, 36, 46, 44, 44, 44, 41, 37, 36, 38, 42, 39, 32.48276 + 34, 31, 31, 31, 30, 29, 35, 30, 34, 49, 61, 65, 63, 61, 76, 77, 32.48277 + 86, 97, 96, 90, 97, 112, 93, 112, 127, 255, 255, 255, 255, 255, 255, 255, 32.48278 + 255, 255, 255, 255, 255, 255, 255, 255, 198, 124, 172, 188, 212, 196, 156, 197, 32.48279 + 222, 173, 172, 125, 141, 132, 150, 115, 130, 159, 146, 125, 93, 92, 139, 164, 32.48280 + 135, 120, 144, 117, 115, 126, 112, 119, 104, 115, 114, 87, 100, 121, 134, 154, 32.48281 + 167, 145, 122, 108, 112, 92, 93, 87, 115, 100, 86, 69, 55, 48, 52, 52, 32.48282 + 43, 41, 46, 54, 51, 48, 45, 37, 30, 33, 40, 35, 38, 36, 30, 31, 32.48283 + 37, 39, 36, 26, 33, 42, 45, 36, 22, 17, 19, 26, 24, 24, 26, 31, 32.48284 + 36, 39, 40, 36, 40, 44, 45, 44, 41, 40, 39, 35, 40, 42, 39, 33, 32.48285 + 33, 39, 48, 35, 37, 43, 53, 63, 68, 67, 66, 65, 62, 63, 72, 80, 32.48286 + 87, 94, 99, 96, 95, 113, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48287 + 255, 255, 255, 255, 230, 190, 178, 162, 197, 215, 180, 155, 176, 176, 157, 153, 32.48288 + 171, 174, 157, 152, 162, 145, 127, 107, 126, 139, 153, 160, 150, 131, 114, 109, 32.48289 + 131, 117, 106, 116, 120, 117, 103, 97, 147, 138, 116, 135, 144, 131, 138, 129, 32.48290 + 100, 129, 156, 145, 118, 88, 75, 67, 76, 59, 48, 50, 51, 45, 44, 49, 32.48291 + 50, 44, 40, 40, 39, 36, 36, 37, 34, 36, 35, 30, 30, 35, 38, 35, 32.48292 + 40, 31, 26, 30, 35, 33, 25, 20, 18, 20, 23, 26, 30, 33, 35, 37, 32.48293 + 47, 48, 50, 48, 45, 41, 39, 39, 36, 37, 37, 35, 34, 35, 37, 39, 32.48294 + 34, 36, 41, 48, 55, 58, 57, 56, 52, 49, 52, 61, 70, 78, 87, 95, 32.48295 + 90, 91, 111, 120, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48296 + 238, 177, 198, 196, 193, 182, 185, 143, 152, 181, 190, 215, 210, 144, 128, 158, 32.48297 + 140, 127, 108, 120, 113, 106, 103, 93, 75, 73, 100, 119, 113, 92, 99, 94, 32.48298 + 113, 93, 101, 99, 119, 148, 162, 189, 153, 143, 167, 146, 145, 183, 128, 114, 32.48299 + 121, 141, 98, 89, 92, 73, 54, 41, 41, 44, 42, 42, 46, 49, 38, 33, 32.48300 + 37, 41, 40, 35, 32, 33, 34, 32, 29, 29, 34, 36, 35, 41, 40, 39, 32.48301 + 36, 27, 18, 19, 25, 22, 27, 31, 33, 32, 32, 33, 36, 43, 43, 43, 32.48302 + 40, 35, 32, 31, 31, 34, 32, 30, 31, 34, 36, 34, 32, 32, 34, 37, 32.48303 + 42, 46, 46, 44, 43, 46, 44, 46, 53, 62, 69, 79, 89, 87, 85, 101, 32.48304 + 106, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 132, 109, 113, 32.48305 + 147, 203, 204, 194, 172, 182, 192, 185, 171, 132, 142, 144, 135, 108, 146, 125, 32.48306 + 84, 119, 144, 133, 137, 145, 138, 135, 134, 126, 111, 118, 103, 87, 69, 104, 32.48307 + 150, 194, 187, 149, 91, 121, 140, 113, 120, 100, 100, 121, 134, 115, 124, 121, 32.48308 + 95, 45, 63, 47, 35, 35, 41, 42, 42, 43, 48, 39, 35, 38, 41, 38, 32.48309 + 33, 29, 33, 33, 31, 29, 30, 32, 35, 35, 31, 38, 46, 44, 31, 18, 32.48310 + 19, 27, 34, 37, 40, 37, 31, 27, 30, 33, 42, 42, 41, 38, 35, 34, 32.48311 + 35, 37, 27, 26, 27, 29, 32, 34, 32, 31, 31, 33, 35, 38, 40, 39, 32.48312 + 37, 36, 46, 43, 44, 49, 54, 60, 69, 79, 86, 80, 88, 85, 91, 255, 32.48313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 172, 165, 188, 191, 145, 187, 32.48314 + 175, 187, 179, 178, 190, 163, 133, 148, 130, 150, 160, 138, 143, 116, 119, 95, 32.48315 + 125, 182, 224, 209, 160, 125, 112, 95, 109, 122, 113, 137, 151, 154, 129, 110, 32.48316 + 121, 153, 123, 119, 142, 105, 95, 114, 96, 80, 90, 66, 50, 47, 74, 53, 32.48317 + 42, 36, 38, 45, 47, 45, 44, 43, 39, 39, 41, 39, 35, 34, 37, 36, 32.48318 + 34, 32, 31, 31, 32, 34, 36, 32, 25, 25, 34, 43, 43, 37, 32, 37, 32.48319 + 39, 37, 31, 24, 22, 26, 31, 30, 30, 29, 26, 23, 23, 25, 27, 20, 32.48320 + 23, 27, 28, 29, 29, 31, 33, 31, 33, 35, 37, 37, 37, 36, 36, 39, 32.48321 + 38, 39, 43, 46, 50, 58, 67, 77, 73, 82, 77, 80, 94, 255, 255, 255, 32.48322 + 255, 255, 255, 255, 255, 56, 108, 133, 129, 85, 126, 160, 171, 170, 197, 175, 32.48323 + 160, 176, 158, 156, 114, 151, 147, 148, 141, 143, 123, 171, 194, 189, 163, 138, 32.48324 + 127, 118, 116, 131, 106, 104, 108, 90, 127, 137, 133, 91, 96, 80, 50, 86, 32.48325 + 101, 84, 112, 117, 105, 96, 63, 64, 51, 68, 44, 29, 39, 36, 35, 37, 32.48326 + 42, 43, 41, 39, 35, 36, 40, 42, 38, 35, 40, 48, 41, 37, 34, 34, 32.48327 + 34, 32, 33, 37, 37, 29, 25, 32, 40, 43, 43, 44, 38, 37, 34, 28, 32.48328 + 24, 25, 30, 35, 23, 23, 21, 19, 16, 14, 16, 18, 22, 24, 27, 28, 32.48329 + 26, 27, 30, 33, 30, 33, 36, 37, 36, 35, 35, 37, 34, 35, 39, 44, 32.48330 + 46, 48, 55, 65, 63, 64, 82, 81, 82, 91, 144, 255, 255, 255, 255, 255, 32.48331 + 255, 208, 106, 134, 110, 101, 83, 138, 176, 147, 159, 178, 180, 172, 161, 149, 32.48332 + 148, 169, 148, 136, 143, 132, 148, 166, 142, 139, 148, 124, 117, 145, 137, 107, 32.48333 + 108, 107, 114, 121, 119, 122, 113, 95, 72, 57, 70, 95, 75, 61, 71, 66, 32.48334 + 81, 85, 69, 62, 73, 62, 40, 33, 47, 32, 34, 35, 34, 35, 35, 35, 32.48335 + 35, 35, 35, 39, 40, 37, 35, 42, 51, 46, 40, 37, 38, 36, 32, 33, 32.48336 + 38, 40, 38, 38, 40, 39, 36, 38, 43, 37, 34, 31, 28, 26, 27, 29, 32.48337 + 31, 31, 32, 33, 32, 30, 30, 31, 33, 31, 29, 26, 25, 27, 28, 27, 32.48338 + 27, 29, 32, 35, 35, 33, 32, 33, 35, 34, 36, 41, 45, 45, 45, 50, 32.48339 + 59, 57, 59, 76, 73, 71, 79, 79, 255, 255, 255, 255, 255, 255, 79, 111, 32.48340 + 164, 156, 165, 164, 183, 192, 238, 219, 166, 161, 158, 138, 155, 163, 140, 146, 32.48341 + 144, 136, 140, 128, 163, 139, 127, 138, 110, 103, 132, 113, 92, 126, 141, 133, 32.48342 + 114, 122, 96, 87, 63, 66, 78, 67, 55, 66, 70, 62, 68, 72, 44, 59, 32.48343 + 68, 34, 42, 42, 43, 15, 35, 39, 40, 36, 34, 34, 36, 37, 39, 37, 32.48344 + 37, 38, 35, 34, 39, 46, 50, 43, 39, 40, 38, 33, 33, 39, 44, 31, 32.48345 + 26, 39, 56, 57, 42, 29, 33, 30, 26, 24, 23, 22, 20, 18, 19, 21, 32.48346 + 24, 26, 27, 28, 31, 33, 41, 33, 25, 24, 28, 29, 26, 21, 29, 32, 32.48347 + 34, 33, 30, 29, 30, 32, 32, 35, 39, 41, 39, 35, 39, 46, 60, 57, 32.48348 + 67, 57, 52, 62, 68, 255, 255, 255, 255, 255, 93, 102, 114, 85, 164, 143, 32.48349 + 113, 170, 173, 172, 167, 152, 142, 137, 146, 150, 152, 139, 135, 143, 134, 137, 32.48350 + 147, 132, 127, 110, 128, 95, 134, 116, 138, 137, 138, 90, 95, 98, 113, 90, 32.48351 + 89, 72, 63, 69, 62, 56, 57, 64, 70, 72, 70, 76, 65, 56, 52, 41, 32.48352 + 27, 26, 35, 32, 34, 38, 42, 44, 40, 33, 27, 30, 33, 37, 37, 33, 32.48353 + 28, 25, 24, 32, 33, 33, 33, 34, 36, 34, 31, 38, 34, 34, 39, 41, 32.48354 + 36, 31, 29, 17, 18, 20, 22, 23, 23, 22, 22, 19, 21, 23, 25, 27, 32.48355 + 30, 34, 36, 38, 38, 37, 32, 27, 26, 28, 31, 40, 33, 31, 36, 37, 32.48356 + 32, 28, 30, 33, 24, 24, 35, 38, 34, 44, 63, 52, 47, 42, 41, 45, 32.48357 + 56, 66, 134, 255, 255, 255, 255, 180, 184, 140, 150, 144, 111, 160, 165, 162, 32.48358 + 132, 147, 162, 165, 158, 146, 130, 119, 142, 135, 139, 126, 124, 126, 105, 97, 32.48359 + 86, 115, 114, 154, 140, 134, 112, 94, 94, 90, 83, 94, 74, 80, 66, 58, 32.48360 + 30, 37, 49, 59, 67, 70, 71, 72, 64, 54, 48, 46, 40, 32, 34, 44, 32.48361 + 39, 39, 41, 43, 44, 40, 34, 29, 39, 39, 41, 40, 36, 32, 29, 27, 32.48362 + 27, 27, 26, 24, 24, 24, 23, 21, 33, 29, 30, 36, 38, 35, 31, 31, 32.48363 + 28, 27, 26, 25, 24, 22, 20, 19, 20, 25, 30, 31, 30, 32, 39, 45, 32.48364 + 39, 38, 34, 29, 25, 25, 29, 33, 25, 22, 25, 33, 37, 34, 32, 34, 32.48365 + 38, 34, 36, 42, 43, 40, 46, 59, 64, 58, 51, 47, 46, 51, 57, 60, 32.48366 + 255, 255, 255, 255, 91, 81, 146, 93, 148, 192, 151, 156, 163, 145, 155, 164, 32.48367 + 156, 150, 143, 145, 143, 132, 128, 136, 128, 126, 127, 108, 103, 98, 118, 127, 32.48368 + 144, 137, 116, 102, 83, 98, 92, 83, 95, 80, 89, 76, 67, 43, 43, 46, 32.48369 + 54, 63, 67, 62, 57, 50, 41, 34, 35, 34, 31, 35, 44, 41, 41, 42, 32.48370 + 43, 45, 44, 40, 36, 41, 40, 40, 40, 39, 37, 33, 31, 31, 29, 27, 32.48371 + 25, 23, 21, 21, 22, 29, 26, 27, 32, 35, 32, 30, 31, 29, 27, 24, 32.48372 + 21, 18, 17, 16, 16, 25, 32, 38, 36, 30, 29, 36, 43, 36, 34, 31, 32.48373 + 26, 24, 26, 30, 35, 27, 27, 31, 35, 33, 28, 25, 27, 40, 43, 46, 32.48374 + 46, 45, 46, 51, 55, 58, 56, 53, 50, 49, 52, 56, 59, 255, 255, 255, 32.48375 + 255, 88, 102, 136, 128, 104, 87, 118, 152, 134, 169, 173, 180, 165, 163, 149, 32.48376 + 149, 142, 135, 133, 143, 131, 119, 113, 93, 92, 124, 125, 130, 118, 119, 100, 32.48377 + 105, 99, 102, 101, 98, 110, 89, 91, 73, 62, 62, 68, 73, 70, 62, 52, 32.48378 + 47, 47, 51, 41, 32, 32, 32, 32, 34, 39, 39, 39, 39, 41, 45, 46, 32.48379 + 46, 45, 32, 33, 35, 39, 40, 39, 35, 32, 35, 32, 31, 30, 29, 28, 32.48380 + 30, 34, 31, 28, 29, 32, 33, 29, 27, 29, 24, 22, 19, 17, 16, 17, 32.48381 + 19, 21, 34, 37, 37, 33, 26, 22, 25, 28, 30, 29, 28, 28, 28, 30, 32.48382 + 33, 35, 34, 35, 36, 34, 28, 23, 23, 25, 38, 46, 48, 42, 40, 47, 32.48383 + 51, 49, 46, 47, 49, 50, 50, 52, 55, 57, 121, 255, 255, 193, 92, 84, 32.48384 + 72, 115, 159, 132, 113, 155, 159, 163, 146, 137, 114, 134, 142, 168, 170, 133, 32.48385 + 134, 149, 140, 128, 122, 110, 118, 117, 112, 127, 107, 114, 95, 98, 93, 102, 32.48386 + 105, 103, 109, 77, 71, 52, 43, 42, 66, 86, 83, 61, 43, 44, 54, 60, 32.48387 + 50, 40, 38, 39, 41, 41, 43, 40, 38, 37, 39, 42, 44, 44, 44, 28, 32.48388 + 31, 37, 41, 42, 38, 33, 28, 32, 29, 29, 33, 32, 31, 35, 43, 37, 32.48389 + 35, 35, 37, 33, 27, 24, 25, 24, 22, 20, 18, 19, 22, 26, 28, 39, 32.48390 + 35, 31, 28, 25, 23, 20, 18, 24, 26, 29, 32, 35, 36, 35, 34, 28, 32.48391 + 29, 29, 25, 23, 25, 31, 36, 37, 45, 44, 33, 29, 36, 41, 38, 40, 32.48392 + 43, 46, 47, 46, 46, 47, 48, 56, 255, 255, 106, 91, 90, 93, 139, 115, 32.48393 + 128, 154, 148, 162, 142, 140, 164, 164, 200, 187, 185, 158, 121, 120, 137, 135, 32.48394 + 133, 135, 130, 142, 104, 95, 111, 91, 100, 89, 87, 86, 99, 100, 96, 98, 32.48395 + 66, 66, 57, 56, 56, 54, 52, 52, 54, 56, 55, 55, 56, 47, 39, 38, 32.48396 + 44, 48, 47, 45, 44, 42, 39, 38, 39, 39, 37, 36, 34, 38, 44, 45, 32.48397 + 40, 34, 28, 25, 31, 28, 31, 37, 36, 32, 37, 47, 39, 38, 40, 41, 32.48398 + 36, 28, 24, 25, 23, 21, 19, 17, 18, 20, 23, 25, 35, 30, 26, 26, 32.48399 + 29, 31, 28, 24, 26, 28, 32, 37, 41, 40, 35, 31, 27, 27, 23, 17, 32.48400 + 16, 23, 30, 33, 38, 42, 39, 28, 21, 25, 29, 27, 28, 34, 41, 44, 32.48401 + 45, 45, 48, 51, 61, 255, 255, 89, 96, 104, 89, 96, 151, 141, 113, 191, 32.48402 + 152, 162, 145, 152, 131, 163, 146, 149, 124, 133, 117, 119, 113, 111, 110, 96, 32.48403 + 101, 110, 91, 96, 74, 79, 85, 82, 91, 93, 91, 85, 89, 65, 72, 69, 32.48404 + 71, 74, 55, 39, 42, 59, 69, 62, 51, 47, 40, 32, 35, 44, 51, 49, 32.48405 + 43, 46, 43, 40, 38, 38, 36, 34, 31, 38, 43, 48, 45, 35, 28, 27, 32.48406 + 28, 35, 31, 34, 40, 37, 29, 32, 43, 33, 35, 40, 44, 40, 32, 28, 32.48407 + 29, 19, 18, 16, 15, 16, 18, 20, 22, 27, 26, 26, 28, 32, 35, 36, 32.48408 + 36, 35, 35, 37, 40, 42, 40, 34, 29, 36, 34, 26, 16, 14, 20, 22, 32.48409 + 19, 32, 34, 34, 29, 23, 22, 25, 27, 24, 31, 40, 45, 46, 47, 51, 32.48410 + 54, 57, 116, 255, 113, 94, 101, 116, 153, 117, 151, 159, 139, 170, 141, 123, 32.48411 + 132, 112, 153, 146, 164, 147, 145, 120, 113, 109, 114, 117, 99, 99, 115, 94, 32.48412 + 93, 74, 75, 88, 80, 93, 90, 85, 76, 82, 59, 65, 57, 53, 44, 57, 32.48413 + 73, 81, 78, 69, 59, 55, 45, 39, 33, 36, 46, 55, 51, 43, 43, 40, 32.48414 + 38, 38, 38, 37, 34, 33, 36, 42, 45, 40, 29, 24, 28, 34, 34, 31, 32.48415 + 34, 39, 33, 22, 23, 33, 26, 30, 38, 45, 42, 36, 32, 34, 17, 17, 32.48416 + 17, 18, 20, 23, 26, 27, 22, 24, 28, 30, 31, 33, 38, 42, 44, 42, 32.48417 + 41, 41, 41, 38, 33, 28, 37, 35, 27, 18, 18, 24, 23, 17, 24, 26, 32.48418 + 30, 32, 29, 25, 28, 32, 35, 42, 48, 49, 44, 42, 44, 46, 48, 49, 32.48419 + 255, 106, 114, 122, 149, 169, 189, 179, 154, 155, 151, 138, 142, 168, 159, 155, 32.48420 + 162, 144, 147, 134, 139, 121, 114, 122, 101, 83, 103, 96, 95, 84, 80, 89, 32.48421 + 93, 96, 105, 83, 78, 74, 72, 65, 54, 48, 48, 43, 45, 63, 68, 53, 32.48422 + 58, 60, 43, 45, 42, 46, 55, 51, 42, 46, 56, 50, 53, 53, 47, 40, 32.48423 + 36, 31, 27, 34, 40, 42, 39, 34, 32, 29, 24, 36, 34, 38, 45, 43, 32.48424 + 33, 26, 26, 35, 36, 41, 48, 48, 41, 34, 34, 26, 24, 23, 25, 28, 32.48425 + 29, 24, 20, 26, 26, 26, 26, 27, 29, 31, 31, 34, 30, 30, 38, 41, 32.48426 + 38, 34, 32, 32, 28, 38, 42, 28, 21, 27, 30, 33, 34, 35, 35, 34, 32.48427 + 36, 42, 46, 48, 49, 49, 47, 44, 44, 45, 46, 39, 50, 255, 94, 107, 32.48428 + 129, 138, 148, 185, 196, 172, 150, 126, 170, 154, 156, 143, 148, 160, 139, 134, 32.48429 + 133, 138, 122, 111, 118, 113, 102, 106, 101, 104, 96, 88, 89, 84, 79, 84, 32.48430 + 81, 75, 68, 64, 57, 48, 43, 44, 52, 54, 69, 68, 50, 50, 53, 40, 32.48431 + 35, 43, 47, 46, 44, 47, 50, 51, 44, 45, 44, 39, 38, 38, 36, 31, 32.48432 + 33, 38, 41, 37, 34, 34, 33, 29, 33, 31, 32, 37, 35, 28, 23, 25, 32.48433 + 32, 33, 41, 50, 53, 48, 44, 44, 29, 29, 29, 30, 30, 29, 25, 23, 32.48434 + 27, 26, 26, 27, 28, 30, 32, 32, 38, 35, 36, 42, 45, 42, 39, 40, 32.48435 + 45, 36, 40, 45, 36, 31, 32, 28, 31, 34, 39, 41, 42, 43, 45, 47, 32.48436 + 42, 43, 44, 42, 40, 39, 41, 42, 39, 47, 255, 95, 114, 119, 130, 138, 32.48437 + 164, 160, 133, 135, 137, 150, 167, 187, 159, 125, 120, 132, 162, 135, 136, 123, 32.48438 + 105, 102, 107, 101, 89, 89, 97, 94, 91, 92, 83, 72, 74, 80, 73, 66, 32.48439 + 62, 57, 50, 49, 52, 65, 66, 73, 68, 50, 46, 51, 44, 35, 47, 51, 32.48440 + 43, 40, 48, 50, 44, 51, 49, 46, 42, 45, 49, 47, 41, 38, 43, 43, 32.48441 + 38, 36, 36, 35, 32, 37, 34, 34, 36, 35, 31, 30, 31, 35, 36, 42, 32.48442 + 50, 49, 43, 38, 37, 32, 34, 35, 36, 34, 31, 30, 31, 27, 27, 27, 32.48443 + 28, 29, 31, 33, 34, 38, 36, 38, 42, 42, 38, 40, 44, 49, 36, 36, 32.48444 + 42, 39, 38, 36, 26, 35, 38, 44, 48, 48, 45, 43, 43, 38, 40, 41, 32.48445 + 40, 38, 37, 38, 40, 46, 48, 115, 201, 105, 129, 146, 155, 166, 141, 114, 32.48446 + 144, 176, 146, 148, 152, 145, 137, 136, 136, 142, 146, 139, 133, 121, 108, 109, 32.48447 + 107, 94, 81, 87, 86, 87, 93, 86, 72, 71, 74, 68, 64, 63, 61, 56, 32.48448 + 56, 59, 72, 70, 69, 63, 54, 53, 54, 54, 50, 56, 57, 49, 44, 46, 32.48449 + 44, 39, 57, 56, 52, 50, 53, 56, 50, 43, 46, 50, 51, 46, 42, 40, 32.48450 + 37, 32, 39, 39, 39, 40, 39, 37, 35, 34, 31, 32, 36, 41, 41, 35, 32.48451 + 29, 30, 37, 40, 41, 40, 35, 33, 33, 35, 27, 28, 29, 30, 31, 32, 32.48452 + 34, 34, 31, 31, 34, 37, 34, 31, 34, 41, 44, 34, 35, 41, 41, 43, 32.48453 + 43, 31, 41, 42, 46, 47, 45, 41, 36, 33, 38, 40, 41, 41, 40, 39, 32.48454 + 40, 41, 48, 45, 41, 255, 82, 118, 122, 122, 136, 127, 109, 129, 148, 145, 32.48455 + 130, 116, 124, 140, 143, 133, 117, 134, 124, 125, 127, 115, 105, 105, 105, 94, 32.48456 + 94, 86, 85, 93, 87, 69, 64, 66, 63, 62, 64, 62, 57, 55, 57, 74, 32.48457 + 70, 61, 56, 58, 56, 54, 55, 62, 57, 55, 58, 52, 43, 40, 44, 52, 32.48458 + 51, 50, 50, 53, 54, 46, 36, 46, 52, 55, 52, 49, 46, 42, 37, 35, 32.48459 + 37, 38, 39, 37, 35, 31, 28, 21, 21, 24, 32, 35, 34, 33, 36, 45, 32.48460 + 48, 47, 44, 37, 33, 31, 33, 29, 30, 31, 32, 32, 34, 33, 33, 31, 32.48461 + 31, 34, 36, 33, 29, 32, 38, 43, 39, 44, 46, 42, 44, 46, 38, 40, 32.48462 + 39, 39, 38, 37, 34, 31, 29, 36, 39, 41, 42, 41, 40, 41, 42, 43, 32.48463 + 39, 36, 255, 97, 130, 129, 118, 128, 129, 125, 145, 155, 135, 142, 135, 133, 32.48464 + 120, 108, 126, 135, 128, 120, 117, 121, 115, 99, 92, 99, 101, 99, 87, 84, 32.48465 + 92, 87, 73, 69, 67, 65, 65, 68, 66, 61, 59, 60, 70, 68, 57, 52, 32.48466 + 57, 52, 46, 54, 63, 54, 53, 60, 58, 46, 44, 52, 46, 49, 51, 51, 32.48467 + 52, 52, 43, 34, 37, 45, 49, 50, 49, 50, 48, 44, 36, 41, 43, 41, 32.48468 + 38, 37, 32, 27, 26, 25, 26, 32, 34, 34, 37, 41, 55, 54, 50, 45, 32.48469 + 38, 32, 29, 29, 34, 34, 35, 36, 36, 36, 35, 35, 39, 37, 39, 41, 32.48470 + 40, 35, 35, 39, 40, 41, 47, 44, 33, 35, 38, 30, 31, 30, 28, 29, 32.48471 + 30, 31, 30, 29, 32, 35, 38, 40, 39, 39, 39, 40, 46, 41, 37, 255, 32.48472 + 120, 113, 124, 118, 120, 118, 121, 147, 156, 152, 148, 125, 130, 126, 115, 128, 32.48473 + 125, 132, 132, 117, 111, 120, 109, 92, 94, 92, 95, 87, 81, 85, 80, 73, 32.48474 + 77, 65, 63, 63, 67, 68, 67, 68, 71, 61, 68, 60, 55, 58, 48, 43, 32.48475 + 59, 60, 58, 58, 60, 60, 58, 57, 57, 53, 57, 57, 55, 51, 50, 43, 32.48476 + 37, 31, 38, 40, 39, 40, 46, 47, 47, 46, 50, 50, 45, 41, 42, 39, 32.48477 + 34, 38, 34, 32, 35, 37, 38, 43, 49, 55, 52, 48, 45, 42, 41, 38, 32.48478 + 35, 39, 41, 40, 42, 40, 39, 37, 36, 43, 39, 39, 43, 43, 39, 35, 32.48479 + 35, 35, 35, 40, 36, 25, 28, 31, 21, 26, 25, 24, 26, 29, 30, 29, 32.48480 + 27, 30, 33, 37, 39, 39, 38, 39, 39, 50, 44, 40, 255, 145, 109, 131, 32.48481 + 134, 146, 152, 152, 160, 148, 146, 139, 114, 126, 131, 119, 127, 114, 105, 114, 32.48482 + 90, 76, 102, 105, 82, 78, 88, 95, 90, 80, 76, 67, 63, 72, 55, 52, 32.48483 + 53, 59, 64, 67, 73, 80, 53, 67, 64, 60, 60, 48, 45, 69, 59, 66, 32.48484 + 66, 59, 60, 68, 67, 58, 60, 63, 61, 53, 45, 42, 37, 32, 31, 35, 32.48485 + 34, 30, 30, 37, 43, 45, 52, 54, 51, 43, 40, 42, 41, 36, 35, 31, 32.48486 + 30, 35, 39, 45, 54, 62, 48, 45, 42, 44, 47, 49, 48, 46, 43, 45, 32.48487 + 44, 45, 44, 41, 39, 39, 41, 37, 37, 41, 42, 37, 31, 29, 34, 33, 32.48488 + 37, 34, 27, 32, 33, 22, 27, 26, 25, 27, 30, 29, 25, 22, 31, 34, 32.48489 + 38, 41, 41, 40, 40, 41, 48, 41, 37, 255, 223, 107, 152, 148, 142, 142, 32.48490 + 162, 146, 144, 143, 148, 123, 121, 113, 100, 115, 104, 92, 86, 94, 109, 105, 32.48491 + 88, 86, 100, 99, 83, 71, 69, 67, 62, 62, 68, 58, 61, 62, 61, 58, 32.48492 + 59, 64, 70, 61, 66, 67, 65, 64, 70, 70, 67, 68, 66, 60, 55, 58, 32.48493 + 67, 72, 72, 75, 70, 62, 53, 44, 37, 31, 27, 33, 30, 27, 29, 36, 32.48494 + 44, 47, 46, 44, 52, 55, 51, 49, 50, 48, 43, 45, 48, 39, 50, 41, 32.48495 + 58, 64, 80, 57, 58, 64, 69, 60, 48, 50, 63, 66, 64, 58, 51, 46, 32.48496 + 43, 40, 38, 42, 47, 46, 40, 34, 35, 36, 34, 31, 37, 41, 38, 30, 32.48497 + 25, 27, 30, 28, 27, 28, 31, 34, 36, 36, 35, 27, 28, 35, 41, 39, 32.48498 + 34, 36, 44, 43, 40, 35, 255, 255, 110, 139, 156, 186, 176, 151, 124, 144, 32.48499 + 150, 146, 129, 125, 119, 107, 101, 87, 92, 72, 61, 70, 85, 90, 89, 90, 32.48500 + 87, 69, 59, 68, 79, 76, 64, 56, 69, 66, 63, 64, 67, 72, 74, 73, 32.48501 + 64, 68, 68, 65, 64, 67, 67, 64, 69, 67, 60, 51, 50, 56, 62, 63, 32.48502 + 74, 67, 58, 52, 50, 44, 36, 28, 30, 28, 28, 31, 38, 44, 47, 48, 32.48503 + 51, 53, 52, 48, 46, 50, 48, 43, 49, 56, 52, 63, 49, 57, 53, 63, 32.48504 + 73, 66, 66, 75, 77, 68, 62, 65, 63, 61, 59, 58, 55, 51, 47, 44, 32.48505 + 39, 45, 45, 39, 34, 33, 32, 30, 38, 41, 44, 42, 36, 31, 31, 32, 32.48506 + 32, 31, 31, 33, 36, 36, 35, 34, 32, 31, 33, 35, 34, 34, 42, 53, 32.48507 + 57, 45, 39, 255, 255, 139, 133, 134, 178, 179, 154, 119, 135, 147, 130, 124, 32.48508 + 116, 116, 112, 89, 79, 73, 75, 80, 89, 94, 94, 93, 93, 79, 64, 57, 32.48509 + 69, 80, 76, 64, 57, 71, 64, 60, 63, 72, 78, 76, 70, 76, 81, 82, 32.48510 + 79, 77, 79, 78, 77, 80, 79, 73, 61, 55, 58, 63, 66, 53, 48, 46, 32.48511 + 51, 61, 65, 60, 53, 40, 40, 41, 43, 47, 51, 54, 56, 55, 56, 51, 32.48512 + 46, 46, 50, 52, 50, 67, 79, 77, 84, 63, 66, 58, 64, 66, 72, 81, 32.48513 + 82, 70, 58, 61, 74, 72, 74, 75, 76, 74, 68, 60, 56, 41, 45, 46, 32.48514 + 41, 37, 35, 33, 29, 41, 42, 42, 40, 37, 34, 31, 30, 36, 35, 35, 32.48515 + 36, 37, 37, 35, 33, 35, 34, 35, 37, 37, 39, 46, 55, 52, 36, 32, 32.48516 + 255, 255, 217, 136, 124, 148, 153, 159, 133, 126, 127, 104, 110, 100, 103, 109, 32.48517 + 83, 84, 54, 65, 84, 96, 89, 73, 70, 77, 74, 66, 62, 63, 60, 54, 32.48518 + 56, 65, 65, 61, 60, 66, 74, 78, 75, 69, 88, 93, 96, 95, 93, 93, 32.48519 + 94, 94, 93, 97, 95, 86, 78, 78, 82, 84, 79, 76, 72, 73, 75, 72, 32.48520 + 65, 58, 54, 52, 49, 45, 44, 45, 47, 49, 55, 54, 50, 45, 44, 50, 32.48521 + 58, 64, 85, 96, 91, 94, 73, 78, 72, 79, 64, 73, 80, 77, 59, 47, 32.48522 + 52, 67, 60, 63, 68, 75, 78, 75, 65, 59, 51, 53, 50, 44, 41, 40, 32.48523 + 38, 35, 43, 40, 39, 40, 40, 39, 34, 30, 36, 35, 35, 36, 38, 38, 32.48524 + 37, 35, 35, 38, 43, 47, 47, 45, 47, 49, 45, 37, 36, 255, 255, 255, 32.48525 + 139, 148, 157, 143, 154, 139, 130, 108, 93, 107, 102, 101, 102, 76, 82, 74, 32.48526 + 60, 59, 70, 70, 58, 60, 74, 71, 63, 57, 55, 49, 43, 49, 61, 58, 32.48527 + 62, 68, 73, 77, 78, 77, 74, 87, 89, 96, 98, 97, 96, 99, 104, 103, 32.48528 + 110, 114, 109, 103, 102, 103, 103, 104, 105, 104, 100, 95, 88, 83, 81, 82, 32.48529 + 75, 65, 56, 51, 48, 49, 49, 46, 48, 48, 45, 43, 49, 64, 79, 87, 32.48530 + 99, 95, 96, 76, 84, 76, 79, 87, 77, 67, 68, 70, 67, 58, 53, 54, 32.48531 + 58, 65, 78, 86, 90, 82, 78, 59, 59, 54, 45, 42, 43, 44, 41, 43, 32.48532 + 41, 39, 40, 43, 43, 38, 33, 32, 32, 32, 35, 38, 40, 40, 38, 42, 32.48533 + 46, 49, 49, 48, 48, 47, 46, 49, 55, 54, 255, 255, 255, 142, 148, 167, 32.48534 + 150, 156, 143, 134, 101, 97, 111, 114, 106, 91, 70, 71, 80, 71, 67, 68, 32.48535 + 61, 53, 65, 86, 74, 61, 54, 60, 63, 59, 55, 56, 53, 61, 70, 74, 32.48536 + 73, 73, 77, 79, 84, 88, 96, 102, 102, 101, 105, 112, 108, 116, 120, 119, 32.48537 + 117, 117, 117, 114, 105, 109, 113, 112, 106, 103, 103, 107, 98, 87, 73, 64, 32.48538 + 59, 56, 52, 50, 43, 44, 47, 48, 48, 55, 73, 90, 87, 102, 99, 103, 32.48539 + 87, 93, 79, 75, 89, 84, 79, 78, 77, 73, 65, 58, 68, 69, 72, 80, 32.48540 + 88, 90, 85, 78, 65, 64, 57, 49, 46, 47, 46, 43, 37, 35, 35, 36, 32.48541 + 38, 37, 33, 29, 30, 30, 31, 35, 40, 42, 43, 42, 51, 51, 48, 42, 32.48542 + 41, 46, 49, 48, 40, 54, 57, 255, 255, 255, 151, 139, 155, 142, 155, 139, 32.48543 + 119, 100, 101, 99, 109, 101, 78, 71, 67, 64, 78, 83, 69, 54, 55, 65, 32.48544 + 72, 76, 65, 62, 68, 71, 65, 60, 62, 57, 63, 68, 69, 69, 73, 80, 32.48545 + 86, 91, 94, 104, 113, 113, 110, 114, 123, 117, 121, 123, 121, 121, 123, 122, 32.48546 + 119, 125, 125, 121, 115, 108, 101, 99, 99, 97, 87, 75, 71, 70, 69, 62, 32.48547 + 55, 52, 48, 49, 56, 64, 72, 86, 98, 95, 107, 102, 106, 93, 105, 91, 32.48548 + 84, 74, 86, 96, 93, 81, 72, 69, 71, 74, 69, 66, 69, 73, 74, 69, 32.48549 + 64, 68, 68, 64, 57, 55, 54, 49, 42, 38, 37, 36, 36, 36, 33, 30, 32.48550 + 27, 31, 31, 33, 37, 42, 45, 45, 44, 48, 49, 45, 38, 39, 45, 47, 32.48551 + 45, 31, 41, 49, 255, 255, 255, 158, 155, 154, 124, 139, 126, 95, 96, 97, 32.48552 + 76, 91, 86, 66, 76, 71, 89, 97, 83, 58, 60, 84, 82, 58, 71, 68, 32.48553 + 70, 69, 59, 49, 56, 70, 69, 70, 69, 69, 71, 78, 88, 95, 96, 100, 32.48554 + 111, 120, 119, 114, 119, 129, 128, 128, 126, 122, 123, 127, 126, 122, 125, 121, 32.48555 + 118, 117, 117, 117, 116, 115, 122, 113, 104, 105, 111, 110, 100, 90, 65, 56, 32.48556 + 54, 65, 78, 88, 96, 104, 101, 109, 97, 98, 89, 109, 101, 96, 77, 85, 32.48557 + 94, 98, 97, 90, 77, 67, 82, 76, 72, 74, 82, 87, 86, 82, 70, 72, 32.48558 + 70, 65, 63, 61, 53, 43, 47, 48, 47, 45, 42, 38, 34, 32, 34, 33, 32.48559 + 34, 38, 43, 46, 45, 44, 37, 42, 44, 41, 41, 46, 43, 37, 43, 43, 32.48560 + 52, 255, 255, 255, 144, 145, 119, 117, 131, 122, 104, 119, 84, 63, 68, 75, 32.48561 + 80, 81, 75, 87, 71, 57, 58, 63, 61, 57, 56, 66, 67, 70, 70, 61, 32.48562 + 53, 53, 59, 65, 68, 70, 72, 73, 79, 90, 99, 107, 108, 111, 116, 121, 32.48563 + 124, 128, 130, 128, 126, 125, 126, 129, 128, 124, 120, 126, 122, 118, 117, 119, 32.48564 + 121, 120, 119, 115, 120, 117, 107, 105, 113, 118, 115, 115, 105, 95, 91, 95, 32.48565 + 102, 107, 107, 118, 119, 115, 107, 99, 94, 94, 97, 100, 87, 81, 88, 96, 32.48566 + 92, 76, 63, 67, 70, 101, 101, 82, 75, 69, 78, 73, 73, 69, 65, 65, 32.48567 + 67, 63, 56, 59, 54, 47, 43, 41, 41, 41, 41, 33, 39, 46, 48, 46, 32.48568 + 43, 42, 43, 41, 34, 32, 34, 32, 28, 35, 48, 46, 39, 43, 255, 255, 32.48569 + 255, 214, 120, 117, 124, 122, 116, 120, 91, 83, 97, 120, 123, 113, 99, 84, 32.48570 + 70, 57, 47, 48, 54, 58, 64, 70, 67, 64, 62, 59, 52, 50, 55, 65, 32.48571 + 60, 64, 70, 75, 80, 90, 103, 112, 118, 118, 120, 121, 122, 123, 123, 123, 32.48572 + 133, 131, 128, 126, 124, 120, 117, 114, 122, 120, 118, 120, 124, 127, 127, 127, 32.48573 + 127, 130, 128, 122, 119, 120, 121, 120, 123, 115, 106, 101, 101, 104, 104, 102, 32.48574 + 124, 122, 117, 111, 105, 102, 103, 104, 101, 95, 93, 95, 94, 84, 74, 68, 32.48575 + 76, 56, 68, 79, 94, 107, 87, 68, 86, 89, 87, 79, 71, 66, 59, 53, 32.48576 + 55, 52, 47, 44, 44, 45, 45, 45, 43, 44, 46, 49, 50, 48, 46, 43, 32.48577 + 46, 44, 44, 46, 45, 42, 44, 49, 51, 45, 117, 255, 255, 255, 255, 152, 32.48578 + 130, 119, 119, 115, 114, 122, 94, 73, 59, 46, 54, 79, 95, 68, 69, 73, 32.48579 + 81, 84, 76, 67, 62, 65, 61, 56, 54, 50, 49, 56, 65, 55, 61, 70, 32.48580 + 79, 88, 100, 112, 122, 126, 126, 128, 128, 128, 126, 123, 122, 129, 130, 130, 32.48581 + 129, 128, 128, 129, 131, 127, 126, 127, 129, 132, 135, 136, 136, 135, 134, 133, 32.48582 + 133, 129, 123, 121, 124, 122, 117, 113, 112, 114, 115, 113, 111, 115, 111, 105, 32.48583 + 102, 100, 101, 102, 103, 100, 103, 106, 105, 94, 82, 79, 83, 79, 69, 82, 32.48584 + 82, 89, 108, 96, 81, 93, 100, 101, 92, 79, 70, 62, 57, 54, 52, 48, 32.48585 + 46, 46, 46, 45, 44, 45, 41, 39, 41, 44, 45, 41, 36, 42, 46, 48, 32.48586 + 48, 49, 50, 46, 41, 49, 45, 255, 255, 255, 255, 255, 155, 126, 106, 103, 32.48587 + 99, 92, 101, 92, 92, 90, 76, 72, 82, 86, 94, 82, 68, 61, 61, 64, 32.48588 + 67, 69, 62, 59, 57, 57, 55, 51, 51, 56, 54, 60, 70, 80, 90, 101, 32.48589 + 112, 119, 124, 126, 129, 132, 134, 133, 131, 129, 126, 129, 132, 132, 132, 134, 32.48590 + 140, 145, 135, 135, 136, 137, 137, 137, 136, 136, 140, 134, 134, 139, 136, 127, 32.48591 + 127, 134, 124, 121, 119, 119, 121, 122, 119, 118, 120, 114, 109, 108, 111, 116, 32.48592 + 118, 118, 101, 106, 113, 112, 101, 91, 93, 101, 85, 92, 114, 98, 85, 100, 32.48593 + 102, 102, 93, 99, 100, 93, 85, 80, 72, 67, 58, 56, 51, 48, 46, 44, 32.48594 + 40, 38, 38, 36, 34, 34, 36, 37, 36, 34, 38, 45, 46, 43, 45, 50, 32.48595 + 43, 32, 44, 42, 255, 255, 255, 255, 255, 209, 115, 115, 100, 91, 102, 104, 32.48596 + 89, 83, 76, 65, 67, 78, 80, 94, 82, 65, 57, 62, 69, 73, 72, 66, 32.48597 + 60, 55, 55, 53, 49, 47, 50, 57, 63, 73, 84, 95, 106, 113, 117, 122, 32.48598 + 124, 129, 134, 137, 138, 138, 137, 136, 137, 137, 134, 130, 129, 132, 136, 138, 32.48599 + 138, 138, 138, 137, 136, 136, 135, 144, 138, 138, 143, 142, 136, 138, 147, 137, 32.48600 + 134, 129, 126, 123, 120, 117, 115, 121, 116, 113, 114, 119, 124, 127, 127, 111, 32.48601 + 112, 116, 117, 111, 104, 105, 110, 100, 97, 110, 98, 94, 115, 112, 103, 102, 32.48602 + 102, 100, 94, 90, 88, 80, 70, 61, 57, 52, 49, 45, 42, 39, 36, 36, 32.48603 + 38, 39, 38, 37, 37, 41, 44, 43, 47, 46, 41, 43, 48, 44, 33, 41, 32.48604 + 42, 255, 255, 255, 255, 255, 255, 109, 108, 98, 90, 97, 107, 97, 97, 96, 32.48605 + 86, 81, 75, 63, 85, 87, 88, 88, 90, 87, 76, 65, 72, 60, 48, 44, 32.48606 + 45, 47, 51, 56, 63, 69, 79, 92, 105, 114, 120, 123, 127, 128, 132, 136, 32.48607 + 139, 140, 140, 140, 143, 143, 142, 140, 137, 135, 135, 136, 142, 143, 144, 144, 32.48608 + 143, 143, 145, 147, 143, 141, 141, 142, 141, 140, 143, 149, 139, 138, 136, 133, 32.48609 + 130, 127, 124, 122, 121, 119, 117, 117, 120, 122, 124, 125, 126, 122, 120, 120, 32.48610 + 117, 110, 108, 109, 108, 97, 107, 99, 97, 114, 107, 98, 115, 113, 107, 99, 32.48611 + 94, 89, 78, 68, 61, 58, 52, 48, 46, 43, 42, 40, 33, 37, 40, 39, 32.48612 + 37, 37, 41, 46, 44, 44, 42, 37, 37, 40, 39, 35, 36, 39, 255, 255, 32.48613 + 255, 255, 255, 255, 103, 89, 82, 76, 73, 96, 84, 79, 78, 75, 81, 87, 32.48614 + 80, 89, 92, 86, 74, 67, 68, 71, 71, 70, 57, 45, 44, 50, 56, 61, 32.48615 + 67, 72, 78, 89, 102, 113, 122, 125, 126, 133, 134, 136, 138, 140, 141, 142, 32.48616 + 142, 143, 142, 142, 144, 146, 146, 145, 144, 145, 147, 148, 148, 147, 148, 152, 32.48617 + 156, 145, 149, 149, 145, 142, 143, 143, 142, 137, 140, 143, 144, 141, 138, 134, 32.48618 + 132, 139, 139, 138, 136, 133, 131, 131, 131, 134, 128, 123, 122, 117, 110, 107, 32.48619 + 107, 105, 96, 113, 109, 101, 109, 106, 108, 114, 116, 114, 105, 96, 89, 78, 32.48620 + 69, 68, 64, 56, 51, 47, 45, 43, 41, 34, 35, 36, 36, 36, 36, 37, 32.48621 + 38, 42, 39, 37, 36, 33, 30, 31, 35, 36, 37, 255, 255, 255, 255, 255, 32.48622 + 255, 121, 112, 89, 79, 94, 114, 99, 88, 78, 68, 73, 78, 71, 68, 84, 32.48623 + 93, 85, 73, 68, 69, 70, 63, 53, 48, 54, 63, 68, 71, 72, 80, 85, 32.48624 + 95, 106, 117, 122, 124, 123, 136, 136, 137, 139, 141, 143, 145, 145, 143, 141, 32.48625 + 140, 142, 145, 146, 142, 138, 142, 144, 144, 142, 140, 142, 146, 150, 153, 161, 32.48626 + 162, 154, 149, 150, 146, 138, 146, 150, 154, 154, 149, 140, 131, 126, 140, 142, 32.48627 + 141, 137, 129, 123, 122, 123, 134, 129, 124, 122, 116, 109, 107, 108, 101, 86, 32.48628 + 102, 111, 116, 127, 123, 125, 101, 110, 114, 108, 97, 88, 79, 73, 76, 70, 32.48629 + 60, 53, 47, 44, 41, 39, 39, 37, 35, 36, 40, 40, 37, 33, 44, 39, 32.48630 + 38, 41, 36, 27, 29, 38, 43, 42, 255, 255, 255, 255, 255, 255, 219, 145, 32.48631 + 131, 108, 105, 91, 90, 82, 90, 92, 82, 82, 75, 73, 68, 70, 77, 76, 32.48632 + 64, 55, 55, 59, 59, 60, 65, 68, 73, 76, 80, 93, 98, 108, 116, 124, 32.48633 + 127, 130, 131, 140, 140, 140, 139, 138, 138, 141, 143, 143, 143, 145, 146, 146, 32.48634 + 146, 146, 146, 147, 149, 151, 149, 146, 145, 145, 148, 142, 149, 157, 160, 157, 32.48635 + 150, 142, 138, 134, 137, 141, 147, 148, 148, 147, 146, 138, 140, 140, 137, 132, 32.48636 + 129, 130, 133, 128, 125, 123, 125, 127, 127, 124, 121, 100, 107, 96, 108, 107, 32.48637 + 135, 125, 119, 113, 104, 106, 109, 98, 93, 94, 90, 80, 71, 60, 50, 42, 32.48638 + 35, 34, 38, 38, 39, 42, 44, 39, 34, 38, 45, 48, 46, 44, 43, 42, 32.48639 + 40, 38, 37, 40, 41, 255, 255, 255, 255, 255, 255, 255, 151, 127, 109, 134, 32.48640 + 112, 96, 88, 88, 91, 87, 73, 65, 73, 67, 66, 70, 68, 57, 50, 51, 32.48641 + 62, 65, 70, 71, 70, 69, 75, 81, 96, 102, 111, 120, 126, 130, 132, 133, 32.48642 + 139, 141, 143, 144, 143, 142, 142, 143, 142, 143, 143, 143, 143, 143, 142, 141, 32.48643 + 151, 153, 155, 154, 153, 153, 154, 157, 168, 167, 164, 158, 153, 150, 149, 150, 32.48644 + 151, 152, 153, 152, 150, 146, 141, 139, 143, 145, 145, 143, 139, 135, 132, 130, 32.48645 + 122, 118, 114, 112, 112, 114, 117, 117, 114, 106, 90, 104, 104, 122, 113, 116, 32.48646 + 114, 110, 113, 112, 101, 98, 99, 92, 89, 78, 65, 54, 42, 32, 28, 30, 32.48647 + 40, 41, 43, 46, 43, 38, 40, 45, 47, 46, 44, 43, 42, 41, 40, 40, 32.48648 + 39, 47, 255, 255, 255, 255, 255, 255, 255, 214, 115, 101, 146, 119, 93, 93, 32.48649 + 77, 77, 84, 67, 76, 74, 66, 61, 62, 58, 49, 46, 50, 61, 71, 80, 32.48650 + 80, 75, 74, 83, 91, 103, 109, 117, 124, 129, 132, 135, 137, 140, 142, 146, 32.48651 + 148, 147, 145, 143, 143, 147, 148, 148, 148, 147, 146, 144, 144, 147, 148, 149, 32.48652 + 150, 150, 152, 156, 159, 168, 165, 158, 152, 149, 151, 156, 161, 164, 163, 161, 32.48653 + 158, 152, 147, 140, 136, 152, 149, 146, 144, 143, 142, 140, 138, 138, 135, 129, 32.48654 + 123, 120, 122, 129, 133, 121, 105, 93, 112, 114, 118, 109, 116, 111, 115, 121, 32.48655 + 115, 102, 102, 103, 91, 87, 77, 66, 57, 46, 36, 33, 34, 38, 36, 38, 32.48656 + 43, 42, 38, 36, 38, 43, 42, 40, 39, 39, 39, 40, 41, 35, 48, 255, 32.48657 + 255, 255, 255, 255, 255, 255, 255, 114, 102, 151, 126, 99, 108, 77, 66, 79, 32.48658 + 65, 94, 75, 66, 58, 57, 53, 46, 49, 56, 61, 74, 86, 89, 88, 92, 32.48659 + 100, 106, 110, 114, 121, 127, 131, 133, 136, 138, 141, 143, 146, 147, 146, 145, 32.48660 + 144, 145, 148, 149, 149, 150, 149, 149, 148, 148, 144, 144, 144, 144, 145, 148, 32.48661 + 151, 153, 156, 156, 154, 152, 151, 151, 154, 157, 160, 160, 160, 158, 154, 150, 32.48662 + 146, 144, 155, 148, 140, 137, 141, 146, 149, 150, 137, 137, 134, 128, 121, 119, 32.48663 + 123, 126, 106, 102, 104, 119, 123, 121, 113, 114, 108, 118, 125, 115, 101, 106, 32.48664 + 106, 90, 88, 79, 69, 61, 50, 39, 35, 36, 37, 34, 36, 41, 43, 39, 32.48665 + 35, 34, 36, 36, 35, 34, 33, 35, 38, 41, 42, 52, 255, 255, 255, 255, 32.48666 + 255, 255, 255, 255, 122, 104, 161, 145, 116, 124, 95, 82, 90, 66, 86, 77, 32.48667 + 68, 60, 58, 54, 49, 55, 66, 68, 82, 94, 98, 102, 110, 116, 116, 115, 32.48668 + 119, 125, 129, 132, 133, 136, 138, 142, 143, 144, 144, 142, 143, 145, 146, 142, 32.48669 + 143, 144, 146, 147, 147, 147, 148, 149, 148, 147, 147, 148, 149, 150, 151, 161, 32.48670 + 161, 160, 157, 153, 150, 149, 150, 153, 153, 154, 155, 154, 153, 153, 152, 150, 32.48671 + 145, 140, 139, 142, 146, 147, 146, 132, 135, 136, 133, 124, 117, 113, 112, 92, 32.48672 + 102, 113, 111, 116, 118, 119, 113, 112, 120, 126, 118, 105, 109, 109, 93, 98, 32.48673 + 88, 76, 65, 51, 37, 30, 29, 41, 38, 40, 45, 47, 42, 38, 38, 34, 32.48674 + 34, 33, 32, 31, 34, 39, 45, 60, 59, 255, 255, 255, 255, 255, 255, 255, 32.48675 + 255, 115, 85, 148, 142, 116, 118, 106, 107, 107, 75, 72, 79, 70, 63, 61, 32.48676 + 57, 52, 60, 72, 78, 93, 105, 108, 112, 119, 122, 118, 120, 124, 128, 131, 32.48677 + 133, 134, 136, 138, 142, 143, 143, 142, 141, 141, 144, 147, 142, 143, 145, 147, 32.48678 + 148, 149, 150, 151, 152, 151, 149, 150, 151, 151, 149, 147, 159, 158, 154, 151, 32.48679 + 148, 149, 152, 156, 151, 151, 152, 153, 152, 152, 153, 152, 144, 144, 146, 147, 32.48680 + 147, 144, 139, 135, 137, 140, 143, 141, 135, 125, 118, 113, 103, 111, 119, 103, 32.48681 + 111, 116, 127, 121, 120, 122, 126, 121, 111, 114, 112, 98, 95, 87, 77, 67, 32.48682 + 54, 40, 33, 31, 38, 36, 38, 42, 42, 38, 36, 38, 37, 37, 36, 34, 32.48683 + 32, 36, 43, 51, 67, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 32.48684 + 123, 129, 117, 111, 110, 109, 102, 86, 80, 80, 72, 66, 64, 58, 53, 59, 32.48685 + 71, 81, 100, 116, 116, 115, 119, 123, 120, 125, 128, 131, 134, 135, 135, 137, 32.48686 + 139, 141, 142, 144, 144, 143, 142, 144, 145, 145, 146, 147, 149, 150, 150, 150, 32.48687 + 151, 150, 150, 150, 151, 152, 151, 148, 144, 149, 149, 148, 147, 147, 149, 154, 32.48688 + 158, 154, 154, 154, 154, 152, 152, 151, 151, 144, 147, 149, 149, 146, 142, 139, 32.48689 + 137, 135, 135, 134, 133, 130, 125, 119, 114, 118, 111, 116, 104, 120, 118, 131, 32.48690 + 127, 128, 121, 120, 122, 115, 115, 112, 101, 89, 82, 75, 67, 57, 44, 37, 32.48691 + 36, 32, 32, 34, 37, 34, 29, 31, 36, 38, 39, 38, 34, 32, 36, 45, 32.48692 + 53, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 117, 133, 135, 32.48693 + 123, 115, 96, 79, 89, 96, 79, 72, 68, 65, 57, 51, 57, 68, 79, 104, 32.48694 + 122, 121, 114, 118, 123, 125, 128, 131, 134, 136, 136, 137, 138, 140, 139, 142, 32.48695 + 146, 147, 146, 144, 143, 143, 143, 144, 145, 145, 146, 146, 145, 145, 151, 151, 32.48696 + 151, 154, 157, 157, 151, 147, 150, 152, 154, 154, 151, 149, 147, 147, 156, 156, 32.48697 + 155, 154, 154, 154, 152, 152, 149, 149, 148, 143, 140, 141, 146, 150, 145, 140, 32.48698 + 135, 134, 134, 133, 131, 128, 119, 100, 105, 106, 132, 119, 126, 123, 130, 115, 32.48699 + 114, 119, 115, 112, 110, 101, 96, 88, 79, 69, 56, 40, 31, 29, 33, 34, 32.48700 + 36, 39, 33, 29, 32, 40, 38, 39, 37, 34, 30, 35, 43, 52, 255, 255, 32.48701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 122, 113, 114, 110, 102, 95, 32.48702 + 91, 88, 85, 88, 74, 66, 70, 73, 69, 69, 73, 83, 104, 123, 127, 124, 32.48703 + 126, 127, 124, 133, 135, 135, 137, 137, 138, 139, 141, 139, 139, 141, 141, 138, 32.48704 + 135, 141, 150, 140, 144, 147, 148, 149, 149, 151, 154, 150, 151, 152, 151, 151, 32.48705 + 151, 153, 155, 147, 148, 150, 152, 153, 153, 150, 147, 146, 147, 150, 151, 151, 32.48706 + 150, 147, 147, 151, 145, 143, 146, 149, 146, 144, 144, 139, 134, 132, 136, 139, 32.48707 + 135, 132, 132, 138, 134, 132, 133, 131, 128, 129, 133, 126, 125, 122, 116, 110, 32.48708 + 106, 106, 107, 96, 93, 84, 78, 70, 49, 34, 40, 43, 41, 38, 42, 43, 32.48709 + 42, 32, 25, 25, 30, 32, 43, 48, 41, 38, 121, 255, 255, 255, 255, 255, 32.48710 + 255, 255, 255, 255, 255, 255, 255, 208, 122, 120, 112, 100, 92, 91, 90, 89, 32.48711 + 82, 75, 76, 81, 75, 65, 66, 74, 84, 105, 124, 129, 127, 130, 131, 129, 32.48712 + 132, 134, 135, 137, 139, 141, 143, 144, 138, 135, 137, 141, 142, 140, 141, 145, 32.48713 + 141, 144, 146, 149, 148, 149, 150, 152, 150, 151, 150, 150, 151, 151, 152, 153, 32.48714 + 150, 149, 150, 151, 152, 152, 151, 149, 147, 149, 150, 151, 150, 149, 146, 145, 32.48715 + 146, 141, 140, 144, 146, 143, 140, 140, 136, 131, 131, 137, 141, 138, 137, 138, 32.48716 + 138, 134, 132, 134, 131, 128, 128, 131, 129, 124, 119, 116, 115, 112, 108, 106, 32.48717 + 97, 93, 83, 78, 72, 51, 33, 38, 40, 40, 39, 38, 38, 36, 34, 32, 32.48718 + 48, 45, 36, 34, 37, 36, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48719 + 255, 255, 255, 255, 255, 126, 122, 112, 98, 90, 92, 94, 92, 83, 83, 90, 32.48720 + 93, 77, 57, 57, 70, 86, 107, 127, 131, 130, 134, 137, 135, 136, 136, 137, 32.48721 + 139, 141, 142, 144, 144, 144, 140, 139, 144, 146, 141, 137, 136, 141, 143, 145, 32.48722 + 146, 146, 146, 147, 148, 149, 149, 150, 150, 151, 151, 152, 152, 153, 151, 150, 32.48723 + 151, 152, 153, 153, 152, 151, 152, 152, 152, 150, 147, 144, 143, 144, 140, 140, 32.48724 + 144, 145, 142, 139, 138, 138, 133, 134, 139, 141, 139, 139, 140, 136, 133, 133, 32.48725 + 135, 132, 128, 125, 127, 129, 123, 117, 116, 118, 116, 109, 103, 100, 96, 83, 32.48726 + 78, 73, 52, 32, 36, 47, 48, 45, 41, 36, 35, 38, 42, 45, 46, 40, 32.48727 + 36, 36, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48728 + 255, 255, 255, 129, 122, 112, 107, 108, 106, 99, 82, 82, 91, 96, 78, 56, 32.48729 + 57, 73, 91, 111, 130, 134, 133, 137, 140, 138, 142, 141, 140, 140, 141, 141, 32.48730 + 141, 140, 144, 141, 141, 144, 144, 140, 137, 139, 139, 141, 144, 145, 144, 144, 32.48731 + 146, 147, 149, 148, 149, 150, 152, 153, 152, 151, 154, 153, 153, 154, 155, 156, 32.48732 + 155, 154, 156, 156, 154, 153, 150, 146, 144, 142, 145, 143, 144, 148, 148, 144, 32.48733 + 141, 141, 143, 139, 140, 142, 142, 138, 137, 139, 137, 134, 134, 137, 135, 128, 32.48734 + 125, 126, 125, 121, 117, 116, 117, 114, 107, 102, 104, 98, 85, 79, 73, 50, 32.48735 + 29, 30, 43, 41, 35, 30, 25, 25, 26, 28, 26, 35, 37, 38, 42, 113, 32.48736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48737 + 208, 116, 112, 111, 112, 101, 86, 83, 79, 84, 91, 77, 58, 62, 81, 98, 32.48738 + 117, 135, 138, 135, 139, 141, 140, 145, 143, 140, 140, 141, 140, 138, 137, 136, 32.48739 + 137, 138, 138, 134, 130, 133, 140, 135, 137, 141, 142, 143, 144, 146, 148, 147, 32.48740 + 146, 147, 149, 153, 154, 152, 150, 153, 153, 154, 156, 158, 158, 155, 153, 158, 32.48741 + 157, 155, 153, 150, 146, 144, 142, 147, 145, 146, 149, 148, 144, 143, 144, 144, 32.48742 + 141, 142, 144, 142, 138, 138, 141, 139, 137, 136, 138, 136, 130, 126, 127, 121, 32.48743 + 121, 121, 118, 114, 109, 107, 106, 105, 101, 87, 80, 73, 47, 25, 26, 47, 32.48744 + 41, 34, 31, 33, 35, 34, 32, 27, 37, 38, 87, 210, 255, 255, 255, 255, 32.48745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 131, 32.48746 + 133, 133, 118, 96, 99, 87, 86, 89, 74, 52, 55, 74, 103, 123, 140, 142, 32.48747 + 139, 143, 145, 144, 147, 143, 139, 138, 139, 138, 134, 132, 136, 136, 134, 129, 32.48748 + 119, 109, 112, 120, 123, 127, 131, 134, 137, 139, 142, 144, 142, 141, 142, 146, 32.48749 + 152, 154, 151, 148, 153, 152, 151, 153, 155, 155, 154, 152, 155, 154, 152, 150, 32.48750 + 148, 145, 144, 143, 146, 144, 144, 146, 144, 141, 142, 145, 140, 138, 141, 144, 32.48751 + 144, 141, 142, 146, 142, 138, 136, 137, 134, 128, 125, 126, 121, 122, 122, 118, 32.48752 + 112, 109, 109, 109, 102, 98, 88, 81, 70, 44, 23, 26, 48, 42, 35, 36, 32.48753 + 43, 50, 52, 51, 42, 55, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 110, 113, 115, 99, 32.48755 + 76, 101, 89, 89, 91, 74, 50, 56, 80, 107, 127, 144, 147, 145, 149, 153, 32.48756 + 151, 155, 149, 141, 137, 135, 131, 124, 119, 121, 118, 116, 113, 106, 96, 95, 32.48757 + 99, 102, 106, 112, 117, 121, 124, 129, 132, 135, 134, 136, 141, 149, 152, 149, 32.48758 + 145, 153, 149, 145, 144, 146, 149, 152, 153, 149, 148, 147, 145, 143, 142, 141, 32.48759 + 141, 145, 143, 142, 143, 140, 137, 140, 146, 138, 137, 141, 144, 144, 139, 142, 32.48760 + 146, 142, 137, 134, 133, 129, 124, 122, 124, 120, 119, 115, 112, 110, 108, 106, 32.48761 + 105, 94, 95, 88, 81, 68, 42, 24, 30, 35, 30, 24, 24, 31, 41, 50, 32.48762 + 55, 59, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48763 + 255, 255, 255, 255, 255, 255, 255, 255, 226, 122, 125, 129, 116, 93, 81, 75, 32.48764 + 81, 92, 78, 59, 72, 102, 109, 129, 147, 150, 149, 154, 158, 158, 165, 157, 32.48765 + 145, 138, 132, 124, 114, 106, 89, 87, 89, 97, 102, 102, 100, 101, 85, 89, 32.48766 + 95, 100, 105, 110, 114, 119, 130, 129, 131, 138, 146, 150, 147, 143, 153, 148, 32.48767 + 140, 137, 139, 144, 150, 153, 145, 144, 143, 141, 140, 140, 140, 140, 147, 144, 32.48768 + 143, 143, 140, 137, 142, 149, 142, 141, 144, 146, 142, 137, 138, 144, 141, 136, 32.48769 + 132, 131, 127, 121, 120, 123, 119, 112, 106, 104, 106, 107, 102, 97, 87, 92, 32.48770 + 87, 80, 66, 40, 26, 34, 44, 41, 35, 31, 34, 45, 60, 132, 255, 255, 32.48771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48772 + 255, 255, 255, 255, 255, 255, 112, 128, 138, 125, 105, 83, 82, 75, 72, 65, 32.48773 + 55, 70, 107, 119, 136, 152, 156, 153, 154, 159, 162, 154, 161, 161, 151, 140, 32.48774 + 135, 132, 128, 132, 132, 129, 122, 114, 110, 111, 113, 114, 97, 94, 78, 96, 32.48775 + 88, 94, 87, 96, 98, 102, 106, 111, 118, 124, 128, 118, 129, 133, 129, 130, 32.48776 + 139, 141, 135, 138, 139, 139, 139, 139, 139, 139, 139, 142, 141, 141, 140, 141, 32.48777 + 143, 144, 145, 144, 146, 146, 143, 137, 134, 135, 138, 132, 138, 136, 129, 126, 32.48778 + 129, 123, 113, 109, 109, 104, 98, 96, 96, 94, 90, 82, 90, 90, 82, 62, 32.48779 + 33, 26, 43, 46, 40, 37, 38, 39, 113, 255, 255, 255, 255, 255, 255, 255, 32.48780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48781 + 255, 255, 255, 208, 120, 120, 117, 114, 88, 96, 83, 73, 75, 66, 70, 100, 32.48782 + 129, 142, 156, 160, 158, 160, 162, 162, 158, 161, 158, 152, 148, 148, 145, 138, 32.48783 + 136, 139, 141, 145, 145, 141, 135, 131, 129, 128, 133, 108, 96, 68, 71, 68, 32.48784 + 76, 79, 83, 84, 83, 82, 81, 81, 106, 117, 122, 120, 123, 134, 138, 135, 32.48785 + 138, 138, 138, 137, 138, 138, 139, 139, 145, 144, 142, 141, 140, 139, 139, 139, 32.48786 + 135, 136, 137, 136, 132, 130, 130, 130, 127, 130, 130, 127, 124, 123, 116, 110, 32.48787 + 106, 102, 91, 81, 77, 80, 81, 80, 82, 82, 85, 78, 54, 33, 35, 47, 32.48788 + 33, 31, 34, 40, 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48790 + 255, 122, 110, 118, 136, 95, 116, 101, 93, 115, 106, 94, 120, 143, 153, 162, 32.48791 + 165, 166, 168, 167, 163, 161, 158, 152, 148, 150, 152, 149, 142, 143, 138, 132, 32.48792 + 131, 133, 136, 136, 136, 143, 132, 133, 130, 141, 121, 98, 72, 74, 71, 66, 32.48793 + 62, 63, 73, 85, 95, 95, 104, 110, 108, 114, 127, 134, 134, 135, 135, 134, 32.48794 + 133, 134, 135, 137, 138, 142, 141, 140, 139, 137, 136, 135, 135, 139, 136, 134, 32.48795 + 132, 130, 127, 122, 119, 118, 115, 114, 114, 107, 97, 90, 89, 81, 80, 74, 32.48796 + 66, 65, 67, 67, 63, 67, 62, 76, 78, 50, 34, 42, 42, 42, 40, 38, 32.48797 + 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 109, 32.48799 + 120, 147, 186, 178, 122, 91, 110, 95, 87, 129, 157, 163, 167, 170, 173, 175, 32.48800 + 170, 162, 159, 154, 145, 140, 139, 140, 138, 133, 131, 132, 134, 137, 138, 135, 32.48801 + 129, 124, 132, 130, 129, 121, 120, 121, 132, 140, 112, 104, 91, 78, 71, 76, 32.48802 + 89, 99, 95, 102, 104, 104, 109, 120, 129, 131, 134, 133, 132, 131, 132, 134, 32.48803 + 136, 137, 135, 136, 136, 137, 136, 135, 134, 134, 126, 120, 111, 105, 100, 96, 32.48804 + 89, 85, 82, 76, 75, 79, 74, 64, 62, 68, 64, 71, 77, 80, 82, 81, 32.48805 + 72, 62, 50, 45, 70, 79, 47, 36, 41, 31, 31, 41, 54, 64, 255, 255, 32.48806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 124, 104, 110, 133, 172, 32.48808 + 175, 144, 144, 170, 134, 102, 136, 167, 171, 172, 174, 178, 179, 172, 162, 156, 32.48809 + 151, 143, 136, 131, 129, 129, 132, 132, 128, 124, 119, 117, 119, 124, 129, 109, 32.48810 + 116, 117, 117, 110, 110, 112, 118, 110, 112, 112, 107, 99, 93, 93, 95, 106, 32.48811 + 108, 108, 107, 109, 117, 123, 126, 132, 132, 131, 131, 131, 132, 134, 135, 132, 32.48812 + 133, 134, 135, 134, 132, 130, 129, 116, 107, 94, 85, 80, 76, 72, 70, 53, 32.48813 + 49, 52, 61, 64, 64, 72, 84, 88, 98, 107, 112, 114, 108, 95, 82, 60, 32.48814 + 53, 74, 79, 45, 37, 42, 31, 41, 47, 51, 53, 255, 255, 255, 255, 255, 32.48815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 100, 113, 210, 191, 144, 125, 32.48817 + 138, 116, 105, 146, 175, 177, 177, 178, 181, 182, 174, 164, 156, 150, 142, 138, 32.48818 + 133, 129, 131, 136, 135, 128, 116, 105, 99, 99, 102, 103, 114, 115, 113, 132, 32.48819 + 134, 138, 118, 103, 98, 104, 112, 115, 112, 110, 112, 115, 115, 115, 114, 113, 32.48820 + 114, 117, 121, 125, 132, 132, 132, 132, 132, 132, 132, 131, 133, 134, 135, 135, 32.48821 + 132, 128, 123, 120, 112, 105, 95, 87, 84, 82, 83, 83, 79, 80, 84, 91, 32.48822 + 94, 100, 110, 121, 124, 128, 129, 127, 124, 118, 107, 98, 87, 79, 82, 74, 32.48823 + 46, 43, 53, 52, 63, 66, 63, 122, 255, 255, 255, 255, 255, 255, 255, 255, 32.48824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48825 + 255, 255, 255, 255, 255, 255, 96, 97, 105, 137, 140, 120, 109, 122, 123, 122, 32.48826 + 142, 179, 182, 183, 182, 183, 183, 176, 167, 159, 148, 138, 137, 137, 133, 132, 32.48827 + 135, 114, 113, 113, 117, 116, 102, 76, 57, 56, 69, 64, 66, 45, 60, 74, 32.48828 + 97, 101, 106, 112, 112, 108, 105, 109, 113, 118, 118, 118, 119, 118, 120, 123, 32.48829 + 127, 131, 132, 133, 133, 132, 131, 128, 127, 130, 131, 133, 133, 130, 124, 119, 32.48830 + 116, 98, 96, 93, 89, 87, 85, 88, 89, 106, 113, 118, 117, 116, 121, 127, 32.48831 + 129, 128, 129, 126, 120, 117, 114, 107, 100, 98, 96, 87, 72, 57, 59, 70, 32.48832 + 80, 59, 81, 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48834 + 255, 255, 255, 93, 97, 103, 133, 150, 142, 123, 129, 144, 148, 148, 182, 185, 32.48835 + 186, 185, 185, 185, 178, 170, 162, 146, 133, 133, 136, 133, 127, 125, 110, 87, 32.48836 + 62, 57, 66, 76, 73, 64, 48, 57, 50, 68, 58, 68, 53, 53, 60, 75, 32.48837 + 96, 110, 112, 110, 108, 107, 116, 115, 117, 119, 120, 122, 126, 131, 131, 133, 32.48838 + 134, 136, 134, 132, 127, 126, 125, 128, 130, 132, 130, 126, 120, 118, 104, 107, 32.48839 + 109, 108, 104, 102, 103, 105, 91, 105, 113, 110, 108, 114, 116, 113, 113, 116, 32.48840 + 117, 114, 114, 113, 107, 100, 91, 97, 88, 74, 72, 74, 83, 100, 87, 101, 32.48841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48843 + 94, 95, 87, 116, 185, 161, 153, 168, 174, 142, 141, 174, 204, 200, 196, 195, 32.48844 + 186, 181, 168, 159, 153, 145, 132, 123, 133, 137, 123, 99, 98, 74, 54, 56, 32.48845 + 53, 64, 94, 112, 57, 98, 94, 56, 134, 74, 88, 60, 52, 37, 64, 113, 32.48846 + 112, 91, 104, 111, 112, 112, 111, 111, 116, 125, 133, 128, 130, 132, 134, 133, 32.48847 + 133, 129, 129, 132, 131, 126, 125, 123, 122, 118, 117, 112, 102, 99, 108, 109, 32.48848 + 100, 94, 95, 81, 63, 50, 59, 79, 93, 96, 96, 92, 91, 97, 112, 118, 32.48849 + 112, 98, 90, 101, 100, 91, 82, 87, 103, 108, 101, 110, 255, 255, 255, 255, 32.48850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 86, 83, 32.48852 + 101, 169, 161, 148, 160, 168, 154, 146, 175, 206, 201, 197, 194, 183, 177, 162, 32.48853 + 164, 156, 151, 145, 136, 139, 139, 127, 133, 121, 103, 95, 102, 107, 111, 122, 32.48854 + 130, 74, 100, 73, 80, 92, 100, 104, 69, 130, 123, 66, 58, 84, 95, 100, 32.48855 + 95, 101, 109, 116, 120, 120, 119, 118, 131, 133, 135, 137, 137, 135, 133, 131, 32.48856 + 129, 131, 130, 126, 118, 111, 107, 105, 102, 105, 107, 100, 78, 58, 59, 74, 32.48857 + 69, 64, 58, 56, 53, 46, 32, 21, 71, 80, 94, 103, 101, 96, 97, 105, 32.48858 + 104, 104, 96, 88, 95, 109, 115, 109, 112, 255, 255, 255, 255, 255, 255, 255, 32.48859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 95, 105, 121, 169, 174, 32.48861 + 149, 151, 152, 161, 145, 174, 206, 203, 200, 198, 187, 179, 163, 170, 158, 156, 32.48862 + 158, 149, 144, 141, 133, 131, 127, 129, 122, 102, 93, 101, 108, 111, 88, 94, 32.48863 + 79, 101, 56, 85, 76, 103, 156, 156, 109, 90, 92, 96, 106, 104, 106, 108, 32.48864 + 112, 116, 121, 125, 128, 134, 136, 139, 140, 140, 139, 136, 134, 130, 131, 128, 32.48865 + 120, 109, 102, 100, 102, 92, 85, 78, 74, 64, 60, 68, 83, 37, 64, 82, 32.48866 + 74, 56, 50, 53, 57, 36, 50, 73, 92, 97, 98, 101, 109, 105, 106, 101, 32.48867 + 96, 102, 114, 119, 115, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48869 + 255, 255, 255, 255, 255, 255, 255, 255, 109, 131, 148, 165, 174, 155, 152, 139, 32.48870 + 162, 146, 171, 205, 204, 205, 205, 194, 187, 171, 174, 156, 155, 163, 154, 143, 32.48871 + 140, 137, 137, 135, 148, 144, 111, 93, 97, 94, 98, 106, 72, 79, 83, 84, 32.48872 + 110, 134, 147, 148, 142, 139, 125, 90, 69, 81, 112, 113, 115, 115, 115, 119, 32.48873 + 128, 136, 136, 138, 142, 144, 144, 142, 138, 136, 136, 130, 119, 109, 103, 102, 32.48874 + 104, 107, 106, 103, 101, 99, 91, 78, 71, 73, 92, 83, 72, 77, 105, 126, 32.48875 + 110, 78, 39, 36, 43, 67, 91, 105, 106, 105, 105, 108, 104, 101, 106, 113, 32.48876 + 117, 113, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48878 + 255, 255, 255, 255, 255, 205, 125, 139, 137, 154, 163, 169, 145, 165, 151, 171, 32.48879 + 203, 205, 206, 207, 197, 189, 173, 176, 154, 153, 162, 154, 143, 142, 143, 151, 32.48880 + 133, 139, 151, 142, 136, 127, 104, 70, 107, 97, 112, 101, 119, 90, 106, 110, 32.48881 + 114, 110, 99, 92, 84, 82, 88, 101, 113, 126, 127, 121, 116, 119, 124, 136, 32.48882 + 139, 143, 145, 145, 143, 139, 136, 136, 124, 110, 104, 106, 107, 105, 101, 108, 32.48883 + 120, 128, 122, 99, 82, 82, 91, 82, 92, 97, 97, 108, 121, 113, 96, 70, 32.48884 + 50, 39, 51, 77, 98, 107, 108, 108, 108, 108, 107, 108, 113, 114, 111, 108, 32.48885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48887 + 255, 255, 255, 113, 127, 127, 144, 176, 185, 160, 163, 149, 172, 204, 204, 205, 32.48888 + 204, 194, 186, 169, 174, 155, 153, 160, 153, 146, 147, 147, 138, 129, 133, 143, 32.48889 + 143, 141, 135, 124, 119, 129, 125, 89, 88, 100, 80, 90, 78, 78, 81, 85, 32.48890 + 92, 103, 114, 119, 113, 121, 128, 127, 118, 117, 123, 131, 135, 138, 142, 145, 32.48891 + 145, 142, 138, 135, 129, 117, 106, 105, 111, 112, 103, 92, 58, 83, 116, 137, 32.48892 + 135, 112, 83, 66, 80, 79, 81, 98, 123, 131, 105, 71, 65, 61, 64, 76, 32.48893 + 92, 101, 108, 111, 110, 112, 113, 115, 114, 114, 114, 112, 161, 255, 255, 255, 32.48894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48896 + 114, 129, 144, 147, 175, 177, 167, 155, 140, 172, 203, 202, 202, 203, 193, 186, 32.48897 + 171, 167, 153, 152, 157, 151, 149, 149, 144, 135, 143, 143, 141, 137, 127, 129, 32.48898 + 142, 121, 125, 140, 120, 137, 128, 114, 107, 121, 101, 102, 119, 121, 112, 111, 32.48899 + 114, 129, 126, 122, 117, 114, 121, 131, 139, 132, 134, 139, 142, 142, 139, 134, 32.48900 + 131, 125, 113, 103, 102, 109, 113, 110, 105, 131, 110, 87, 80, 91, 101, 98, 32.48901 + 90, 79, 92, 104, 105, 96, 85, 80, 77, 67, 74, 89, 106, 113, 112, 109, 32.48902 + 111, 109, 111, 114, 118, 118, 115, 115, 161, 255, 255, 255, 255, 255, 255, 255, 32.48903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 157, 32.48905 + 143, 157, 153, 163, 151, 139, 171, 202, 201, 203, 205, 197, 192, 178, 159, 149, 32.48906 + 151, 154, 149, 149, 148, 139, 142, 144, 128, 124, 135, 131, 124, 137, 136, 132, 32.48907 + 120, 126, 132, 129, 131, 128, 134, 132, 134, 128, 113, 113, 122, 122, 119, 116, 32.48908 + 114, 117, 123, 126, 126, 124, 129, 132, 137, 140, 140, 137, 132, 129, 127, 114, 32.48909 + 100, 96, 103, 115, 124, 129, 124, 122, 120, 119, 118, 113, 100, 88, 85, 74, 32.48910 + 66, 67, 74, 78, 82, 87, 109, 101, 98, 104, 110, 111, 108, 108, 103, 108, 32.48911 + 113, 119, 118, 116, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 166, 186, 144, 32.48914 + 148, 146, 124, 144, 206, 208, 202, 212, 191, 176, 181, 166, 160, 155, 151, 142, 32.48915 + 135, 139, 148, 146, 143, 141, 142, 139, 131, 125, 124, 122, 123, 125, 125, 125, 32.48916 + 125, 124, 124, 119, 124, 127, 127, 123, 119, 119, 119, 117, 121, 125, 126, 124, 32.48917 + 124, 125, 127, 133, 131, 131, 135, 138, 137, 132, 127, 123, 112, 102, 102, 106, 32.48918 + 110, 115, 122, 117, 121, 125, 127, 127, 124, 120, 117, 132, 123, 113, 111, 115, 32.48919 + 119, 114, 109, 109, 105, 104, 111, 119, 121, 112, 104, 100, 103, 110, 116, 117, 32.48920 + 114, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 182, 212, 198, 174, 157, 131, 32.48923 + 126, 187, 200, 199, 206, 193, 183, 175, 163, 158, 156, 159, 156, 149, 146, 147, 32.48924 + 143, 139, 136, 139, 139, 134, 127, 126, 129, 129, 129, 129, 128, 127, 126, 126, 32.48925 + 129, 130, 131, 130, 127, 124, 122, 121, 121, 123, 125, 124, 123, 122, 122, 122, 32.48926 + 132, 131, 131, 134, 137, 137, 132, 127, 122, 111, 101, 100, 103, 107, 112, 118, 32.48927 + 122, 121, 119, 118, 118, 119, 120, 121, 131, 125, 118, 117, 118, 118, 113, 107, 32.48928 + 113, 112, 113, 118, 123, 123, 115, 108, 104, 105, 110, 116, 116, 160, 255, 255, 32.48929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48931 + 255, 255, 255, 255, 255, 255, 255, 215, 107, 79, 124, 182, 127, 133, 176, 195, 32.48932 + 202, 200, 194, 190, 166, 162, 156, 152, 154, 156, 152, 146, 143, 144, 137, 135, 32.48933 + 140, 144, 141, 135, 133, 134, 134, 132, 131, 128, 127, 127, 128, 132, 130, 128, 32.48934 + 126, 125, 124, 121, 119, 123, 122, 122, 123, 124, 124, 122, 121, 132, 131, 132, 32.48935 + 135, 138, 137, 132, 127, 121, 110, 101, 99, 101, 104, 108, 113, 121, 120, 118, 32.48936 + 117, 117, 119, 121, 122, 120, 119, 118, 117, 118, 116, 112, 108, 118, 118, 121, 32.48937 + 124, 125, 121, 115, 111, 107, 108, 111, 115, 161, 255, 255, 255, 255, 255, 255, 32.48938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48940 + 255, 255, 255, 255, 255, 255, 138, 145, 143, 158, 180, 187, 196, 210, 200, 190, 32.48941 + 190, 161, 167, 159, 151, 147, 146, 146, 145, 146, 143, 136, 133, 139, 144, 142, 32.48942 + 137, 134, 135, 133, 131, 129, 127, 129, 128, 130, 133, 129, 125, 124, 125, 125, 32.48943 + 123, 120, 121, 119, 119, 121, 126, 128, 127, 126, 133, 133, 134, 137, 140, 139, 32.48944 + 134, 129, 123, 112, 102, 100, 102, 103, 106, 110, 113, 117, 121, 124, 125, 125, 32.48945 + 123, 122, 116, 117, 119, 120, 119, 119, 119, 121, 121, 123, 124, 123, 120, 115, 32.48946 + 112, 111, 110, 108, 109, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48949 + 255, 255, 255, 202, 129, 187, 248, 227, 200, 192, 213, 202, 184, 185, 161, 164, 32.48950 + 164, 158, 151, 144, 144, 148, 151, 141, 134, 131, 136, 140, 138, 134, 133, 135, 32.48951 + 134, 133, 132, 131, 133, 134, 135, 135, 132, 128, 128, 130, 131, 129, 127, 123, 32.48952 + 121, 119, 121, 126, 129, 128, 126, 135, 134, 135, 138, 141, 140, 135, 131, 125, 32.48953 + 114, 105, 103, 104, 104, 107, 111, 110, 113, 118, 123, 125, 126, 126, 126, 125, 32.48954 + 127, 128, 127, 125, 126, 129, 132, 124, 125, 124, 119, 114, 110, 111, 112, 107, 32.48955 + 104, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48958 + 255, 254, 220, 231, 230, 196, 183, 207, 200, 182, 181, 162, 152, 158, 160, 155, 32.48959 + 148, 146, 147, 146, 144, 140, 138, 141, 142, 139, 138, 140, 139, 139, 139, 139, 32.48960 + 139, 140, 141, 142, 133, 132, 131, 131, 132, 132, 131, 129, 130, 128, 125, 125, 32.48961 + 126, 126, 126, 126, 136, 135, 135, 139, 142, 141, 136, 131, 128, 117, 108, 107, 32.48962 + 108, 108, 109, 112, 114, 114, 112, 113, 116, 121, 127, 131, 133, 132, 130, 129, 32.48963 + 126, 126, 127, 129, 126, 126, 122, 118, 113, 111, 111, 113, 102, 98, 150, 255, 32.48964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 32.48967 + 200, 188, 182, 180, 199, 198, 185, 180, 159, 154, 158, 157, 152, 148, 148, 145, 32.48968 + 140, 144, 142, 145, 147, 144, 141, 143, 148, 144, 145, 145, 146, 145, 145, 143, 32.48969 + 144, 134, 135, 137, 136, 133, 130, 129, 129, 132, 132, 130, 128, 126, 124, 126, 32.48970 + 129, 134, 134, 134, 137, 140, 140, 135, 130, 129, 118, 110, 109, 110, 110, 111, 32.48971 + 114, 119, 117, 114, 113, 115, 119, 124, 127, 130, 130, 128, 128, 125, 123, 120, 32.48972 + 120, 122, 121, 120, 119, 116, 113, 109, 108, 97, 92, 255, 255, 255, 255, 255, 32.48973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 169, 147, 172, 32.48976 + 181, 194, 196, 189, 181, 154, 173, 169, 160, 149, 148, 153, 150, 143, 135, 136, 32.48977 + 139, 142, 138, 135, 139, 147, 147, 147, 148, 149, 147, 145, 142, 141, 140, 142, 32.48978 + 145, 144, 139, 134, 133, 132, 129, 130, 132, 130, 127, 127, 131, 136, 132, 132, 32.48979 + 132, 136, 139, 138, 133, 128, 128, 118, 110, 109, 111, 111, 112, 115, 118, 120, 32.48980 + 120, 121, 121, 120, 119, 119, 127, 127, 128, 130, 130, 128, 123, 119, 115, 115, 32.48981 + 117, 117, 117, 113, 105, 102, 94, 144, 255, 255, 255, 255, 255, 255, 255, 255, 32.48982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 148, 156, 170, 202, 189, 32.48985 + 194, 172, 158, 160, 159, 156, 150, 145, 143, 144, 145, 144, 139, 139, 144, 144, 32.48986 + 139, 138, 144, 146, 147, 147, 146, 144, 144, 142, 142, 137, 137, 139, 139, 134, 32.48987 + 126, 125, 129, 131, 126, 127, 133, 135, 131, 129, 131, 131, 132, 132, 133, 136, 32.48988 + 140, 136, 129, 116, 112, 110, 110, 109, 107, 112, 119, 117, 121, 123, 124, 123, 32.48989 + 123, 126, 128, 126, 126, 127, 127, 127, 127, 127, 127, 124, 125, 114, 108, 116, 32.48990 + 112, 101, 99, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.48993 + 255, 255, 255, 255, 255, 255, 255, 223, 149, 150, 161, 186, 187, 190, 179, 169, 32.48994 + 165, 161, 155, 151, 149, 147, 145, 142, 141, 137, 137, 141, 141, 137, 136, 140, 32.48995 + 144, 141, 138, 135, 133, 132, 133, 133, 128, 126, 126, 125, 118, 113, 112, 118, 32.48996 + 121, 118, 119, 126, 129, 127, 126, 127, 127, 127, 127, 127, 131, 134, 131, 124, 32.48997 + 119, 114, 110, 108, 105, 102, 105, 111, 116, 119, 122, 125, 126, 125, 125, 124, 32.48998 + 126, 127, 127, 128, 128, 128, 129, 128, 121, 121, 119, 121, 119, 105, 103, 122, 32.48999 + 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49002 + 255, 255, 255, 255, 255, 144, 146, 167, 185, 199, 187, 177, 167, 166, 158, 151, 32.49003 + 149, 150, 149, 143, 136, 137, 135, 135, 137, 137, 135, 135, 137, 140, 139, 137, 32.49004 + 135, 131, 129, 125, 123, 118, 114, 111, 109, 105, 102, 105, 114, 117, 115, 118, 32.49005 + 125, 129, 129, 128, 130, 124, 125, 124, 124, 127, 131, 129, 122, 119, 113, 109, 32.49006 + 106, 102, 97, 100, 105, 109, 112, 117, 124, 129, 130, 128, 126, 128, 129, 129, 32.49007 + 130, 130, 130, 130, 128, 124, 121, 118, 121, 115, 104, 122, 166, 255, 255, 255, 32.49008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49011 + 255, 255, 255, 157, 181, 185, 202, 178, 172, 166, 157, 152, 147, 145, 145, 144, 32.49012 + 139, 135, 134, 133, 133, 134, 134, 133, 133, 134, 133, 135, 138, 138, 134, 127, 32.49013 + 119, 113, 113, 109, 106, 105, 103, 103, 112, 122, 119, 118, 120, 125, 129, 130, 32.49014 + 129, 129, 125, 126, 125, 124, 127, 131, 129, 122, 117, 112, 107, 105, 101, 97, 32.49015 + 100, 106, 98, 101, 107, 117, 125, 131, 131, 130, 128, 130, 131, 131, 132, 131, 32.49016 + 130, 129, 128, 124, 114, 110, 108, 109, 137, 255, 255, 255, 255, 255, 255, 255, 32.49017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49020 + 173, 191, 177, 189, 167, 168, 170, 150, 149, 147, 144, 140, 138, 138, 139, 132, 32.49021 + 133, 133, 132, 132, 133, 133, 132, 129, 129, 129, 128, 125, 120, 115, 112, 118, 32.49022 + 114, 110, 109, 107, 108, 117, 128, 121, 122, 123, 125, 127, 129, 128, 125, 125, 32.49023 + 127, 125, 123, 126, 130, 128, 122, 120, 114, 110, 106, 102, 98, 100, 105, 94, 32.49024 + 96, 102, 110, 117, 124, 128, 129, 128, 129, 131, 131, 131, 130, 128, 128, 125, 32.49025 + 128, 117, 107, 107, 105, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 182, 32.49029 + 187, 173, 158, 155, 150, 150, 148, 143, 138, 136, 139, 142, 129, 131, 131, 129, 32.49030 + 129, 131, 131, 130, 135, 131, 125, 121, 118, 121, 123, 126, 125, 121, 117, 115, 32.49031 + 112, 111, 117, 126, 126, 128, 129, 128, 130, 133, 130, 125, 126, 127, 125, 122, 32.49032 + 125, 129, 128, 122, 126, 120, 114, 109, 103, 97, 98, 103, 97, 100, 105, 108, 32.49033 + 110, 114, 119, 122, 126, 128, 129, 131, 131, 129, 126, 124, 117, 128, 125, 116, 32.49034 + 108, 84, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 178, 179, 183, 155, 32.49038 + 146, 155, 151, 144, 139, 135, 135, 136, 136, 126, 129, 129, 125, 125, 129, 130, 32.49039 + 126, 131, 129, 124, 122, 121, 126, 129, 133, 126, 123, 121, 120, 116, 113, 117, 32.49040 + 124, 129, 132, 133, 130, 131, 135, 133, 127, 131, 130, 127, 125, 128, 132, 131, 32.49041 + 125, 127, 121, 115, 110, 104, 98, 99, 104, 99, 106, 112, 114, 112, 111, 115, 32.49042 + 120, 125, 126, 127, 129, 129, 127, 123, 122, 118, 124, 123, 117, 100, 64, 255, 32.49043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 153, 183, 164, 161, 160, 150, 32.49047 + 138, 133, 132, 133, 131, 128, 123, 127, 127, 122, 122, 127, 128, 123, 117, 119, 32.49048 + 123, 125, 126, 127, 126, 124, 124, 123, 124, 125, 120, 117, 120, 127, 123, 128, 32.49049 + 128, 126, 129, 133, 130, 124, 136, 135, 132, 129, 132, 136, 135, 129, 123, 117, 32.49050 + 113, 109, 105, 100, 102, 108, 96, 107, 118, 120, 115, 112, 116, 121, 123, 124, 32.49051 + 127, 129, 128, 125, 122, 121, 124, 120, 113, 108, 90, 54, 255, 255, 255, 255, 32.49052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49055 + 255, 255, 255, 255, 255, 255, 221, 164, 140, 165, 164, 157, 155, 148, 141, 138, 32.49056 + 138, 134, 128, 125, 126, 129, 128, 125, 121, 119, 119, 115, 118, 122, 124, 124, 32.49057 + 124, 125, 126, 118, 120, 122, 123, 122, 121, 119, 118, 124, 127, 129, 131, 131, 32.49058 + 130, 131, 130, 124, 124, 127, 132, 136, 137, 135, 133, 124, 123, 118, 108, 99, 32.49059 + 97, 104, 112, 103, 110, 119, 123, 122, 117, 113, 112, 117, 120, 123, 125, 125, 32.49060 + 123, 121, 120, 114, 114, 110, 110, 125, 150, 255, 255, 255, 255, 255, 255, 255, 32.49061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49064 + 255, 255, 255, 255, 154, 165, 160, 167, 156, 154, 148, 141, 138, 139, 135, 130, 32.49065 + 130, 130, 130, 128, 124, 120, 118, 118, 114, 116, 117, 117, 115, 115, 116, 117, 32.49066 + 122, 123, 125, 126, 125, 125, 123, 124, 131, 132, 132, 131, 129, 130, 134, 137, 32.49067 + 125, 129, 136, 143, 146, 142, 135, 129, 118, 120, 119, 113, 107, 104, 105, 109, 32.49068 + 107, 113, 120, 123, 120, 116, 112, 111, 115, 117, 120, 123, 124, 124, 121, 119, 32.49069 + 120, 113, 116, 136, 154, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49073 + 255, 255, 184, 159, 167, 155, 154, 148, 141, 137, 139, 137, 132, 136, 136, 133, 32.49074 + 129, 122, 118, 117, 117, 125, 124, 124, 121, 118, 117, 118, 119, 113, 114, 115, 32.49075 + 116, 116, 117, 117, 118, 115, 120, 124, 125, 123, 123, 128, 131, 137, 140, 146, 32.49076 + 151, 153, 149, 142, 136, 124, 122, 118, 113, 111, 108, 107, 108, 112, 116, 122, 32.49077 + 124, 122, 118, 114, 113, 111, 112, 114, 119, 124, 124, 119, 116, 115, 106, 120, 32.49078 + 159, 178, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49082 + 166, 160, 154, 154, 149, 141, 137, 139, 138, 135, 143, 140, 136, 129, 122, 118, 32.49083 + 117, 117, 118, 119, 119, 116, 113, 111, 111, 112, 115, 115, 115, 115, 117, 119, 32.49084 + 121, 122, 118, 119, 119, 115, 111, 115, 126, 134, 134, 132, 132, 133, 135, 135, 32.49085 + 135, 133, 133, 124, 113, 106, 105, 107, 109, 111, 115, 117, 121, 123, 122, 121, 32.49086 + 118, 118, 108, 109, 111, 116, 122, 123, 117, 112, 113, 113, 135, 167, 178, 167, 32.49087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 155, 32.49091 + 155, 150, 141, 136, 138, 139, 137, 144, 142, 138, 131, 124, 120, 120, 120, 118, 32.49092 + 118, 118, 116, 114, 111, 111, 111, 104, 104, 104, 105, 107, 110, 112, 113, 124, 32.49093 + 120, 111, 101, 94, 96, 107, 117, 126, 125, 124, 125, 127, 128, 129, 128, 123, 32.49094 + 115, 105, 100, 102, 105, 107, 107, 111, 113, 114, 117, 120, 121, 119, 119, 107, 32.49095 + 109, 112, 117, 121, 120, 115, 112, 126, 146, 168, 180, 178, 176, 255, 255, 255, 32.49096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 156, 156, 151, 142, 32.49100 + 135, 137, 138, 138, 142, 141, 138, 132, 126, 123, 123, 124, 118, 116, 113, 107, 32.49101 + 102, 100, 102, 103, 106, 106, 107, 109, 112, 115, 116, 119, 113, 117, 121, 121, 32.49102 + 113, 103, 93, 89, 111, 112, 115, 119, 121, 120, 116, 112, 103, 101, 101, 103, 32.49103 + 107, 107, 103, 101, 107, 107, 106, 109, 113, 116, 116, 115, 110, 113, 118, 122, 32.49104 + 122, 118, 114, 112, 113, 146, 169, 168, 166, 255, 255, 255, 255, 255, 255, 255, 32.49105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 153, 142, 134, 135, 138, 32.49109 + 138, 139, 139, 137, 134, 129, 127, 127, 129, 111, 104, 91, 78, 71, 70, 74, 32.49110 + 76, 67, 67, 70, 73, 76, 78, 79, 81, 104, 110, 121, 129, 133, 127, 116, 32.49111 + 107, 102, 103, 105, 107, 108, 107, 103, 99, 101, 103, 105, 108, 110, 108, 104, 32.49112 + 101, 108, 106, 104, 105, 110, 113, 113, 113, 113, 119, 125, 127, 122, 115, 112, 32.49113 + 113, 125, 154, 173, 170, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49117 + 255, 255, 255, 255, 255, 255, 255, 223, 154, 142, 134, 135, 137, 137, 135, 136, 32.49118 + 136, 134, 131, 130, 130, 132, 127, 115, 96, 77, 65, 64, 71, 76, 72, 74, 32.49119 + 77, 81, 84, 84, 84, 83, 83, 76, 68, 72, 86, 105, 122, 131, 129, 126, 32.49120 + 121, 120, 120, 121, 122, 123, 113, 112, 110, 107, 104, 102, 102, 103, 110, 107, 32.49121 + 104, 105, 109, 113, 113, 113, 115, 123, 131, 131, 123, 115, 112, 114, 74, 91, 32.49122 + 99, 93, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49126 + 255, 255, 255, 255, 255, 221, 151, 147, 144, 137, 133, 136, 136, 137, 138, 135, 32.49127 + 133, 130, 128, 129, 124, 112, 98, 82, 69, 58, 52, 82, 80, 86, 80, 82, 32.49128 + 81, 69, 89, 80, 88, 83, 77, 81, 78, 69, 69, 72, 81, 75, 77, 69, 32.49129 + 61, 72, 71, 73, 75, 78, 79, 79, 78, 75, 77, 68, 77, 85, 92, 99, 32.49130 + 106, 114, 120, 118, 134, 143, 128, 113, 119, 109, 79, 30, 33, 35, 36, 36, 32.49131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49135 + 255, 255, 255, 220, 145, 139, 137, 136, 135, 134, 133, 133, 132, 131, 129, 128, 32.49136 + 125, 127, 124, 113, 94, 75, 60, 54, 45, 73, 94, 77, 75, 86, 78, 86, 32.49137 + 80, 89, 86, 82, 91, 92, 86, 87, 78, 86, 78, 83, 82, 76, 86, 81, 32.49138 + 84, 79, 71, 63, 58, 56, 56, 61, 66, 77, 89, 99, 106, 112, 118, 122, 32.49139 + 140, 133, 130, 129, 135, 132, 90, 31, 34, 31, 26, 23, 25, 255, 255, 255, 32.49140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49144 + 255, 217, 137, 136, 138, 139, 137, 137, 137, 136, 136, 135, 133, 125, 130, 132, 32.49145 + 122, 104, 86, 72, 67, 52, 74, 93, 82, 88, 97, 81, 81, 86, 93, 88, 32.49146 + 84, 90, 88, 81, 80, 90, 97, 87, 95, 95, 89, 95, 88, 90, 88, 87, 32.49147 + 83, 78, 74, 70, 70, 78, 89, 101, 112, 118, 122, 124, 125, 134, 137, 137, 32.49148 + 121, 108, 127, 157, 169, 139, 133, 124, 120, 168, 255, 255, 255, 255, 255, 255, 32.49149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 32.49153 + 138, 137, 138, 139, 140, 141, 141, 140, 137, 135, 131, 130, 127, 119, 108, 97, 32.49154 + 89, 83, 67, 52, 61, 82, 117, 128, 110, 117, 118, 124, 117, 109, 113, 111, 32.49155 + 101, 101, 83, 92, 85, 89, 85, 75, 81, 74, 84, 82, 79, 78, 76, 74, 32.49156 + 74, 77, 100, 108, 117, 124, 128, 128, 128, 127, 135, 123, 118, 118, 122, 148, 32.49157 + 179, 191, 173, 171, 168, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 140, 135, 131, 32.49162 + 133, 137, 141, 140, 138, 133, 129, 136, 129, 124, 119, 116, 109, 97, 85, 87, 32.49163 + 59, 55, 73, 112, 130, 116, 127, 143, 150, 144, 141, 151, 152, 144, 144, 127, 32.49164 + 141, 138, 138, 127, 113, 121, 116, 105, 92, 72, 57, 55, 64, 78, 92, 114, 32.49165 + 118, 122, 126, 129, 130, 130, 129, 135, 116, 114, 132, 152, 169, 171, 159, 177, 32.49166 + 178, 180, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 129, 133, 137, 140, 32.49171 + 140, 138, 133, 130, 136, 130, 125, 126, 127, 119, 100, 82, 93, 88, 84, 68, 32.49172 + 80, 99, 95, 104, 150, 158, 152, 151, 164, 167, 161, 161, 139, 157, 156, 157, 32.49173 + 141, 125, 133, 131, 107, 95, 79, 69, 68, 79, 93, 107, 114, 116, 117, 119, 32.49174 + 123, 127, 127, 128, 117, 125, 145, 155, 153, 166, 187, 195, 174, 175, 175, 255, 32.49175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 134, 135, 137, 138, 137, 136, 32.49180 + 134, 135, 130, 127, 130, 132, 125, 110, 95, 75, 85, 93, 77, 77, 89, 90, 32.49181 + 112, 148, 153, 147, 147, 160, 166, 159, 158, 147, 162, 160, 160, 146, 128, 134, 32.49182 + 128, 77, 76, 76, 77, 82, 91, 99, 106, 113, 114, 112, 115, 118, 121, 122, 32.49183 + 121, 122, 137, 161, 171, 167, 171, 173, 162, 178, 177, 255, 255, 255, 255, 255, 32.49184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49188 + 255, 255, 255, 255, 255, 255, 255, 130, 129, 129, 130, 132, 134, 135, 135, 131, 32.49189 + 127, 126, 129, 129, 125, 118, 93, 87, 100, 101, 94, 80, 72, 106, 117, 122, 32.49190 + 118, 120, 137, 146, 142, 142, 136, 146, 140, 140, 127, 109, 109, 100, 83, 79, 32.49191 + 77, 78, 86, 97, 111, 119, 117, 116, 114, 115, 118, 118, 115, 113, 142, 163, 32.49192 + 183, 180, 162, 167, 179, 177, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49197 + 255, 255, 255, 255, 255, 127, 128, 131, 134, 132, 128, 128, 130, 132, 132, 131, 32.49198 + 128, 126, 123, 104, 94, 94, 101, 97, 84, 76, 81, 89, 83, 103, 108, 126, 32.49199 + 105, 111, 110, 92, 89, 87, 84, 80, 79, 76, 76, 84, 76, 72, 78, 93, 32.49200 + 108, 113, 115, 118, 115, 109, 106, 111, 119, 120, 114, 167, 169, 170, 165, 154, 32.49201 + 148, 151, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49206 + 255, 255, 255, 130, 134, 137, 136, 134, 127, 127, 129, 130, 130, 130, 129, 126, 32.49207 + 119, 98, 85, 89, 93, 88, 80, 78, 76, 71, 79, 86, 96, 87, 93, 97, 32.49208 + 91, 87, 82, 76, 74, 74, 77, 79, 78, 78, 81, 91, 104, 112, 114, 112, 32.49209 + 107, 119, 121, 111, 109, 118, 121, 118, 107, 98, 84, 66, 48, 33, 28, 255, 32.49210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49215 + 255, 215, 138, 138, 137, 130, 130, 131, 130, 131, 132, 133, 132, 130, 110, 91, 32.49216 + 87, 87, 85, 83, 86, 81, 76, 70, 79, 75, 77, 78, 87, 80, 77, 76, 32.49217 + 74, 75, 77, 80, 83, 75, 82, 94, 106, 114, 117, 114, 111, 124, 123, 111, 32.49218 + 102, 106, 114, 106, 88, 26, 23, 22, 28, 31, 33, 255, 255, 255, 255, 255, 32.49219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 32.49224 + 138, 138, 137, 136, 135, 135, 136, 136, 137, 137, 131, 122, 111, 99, 85, 77, 32.49225 + 83, 95, 103, 100, 87, 99, 84, 93, 85, 94, 86, 86, 87, 87, 85, 82, 32.49226 + 80, 80, 81, 91, 103, 113, 117, 117, 114, 113, 110, 109, 108, 106, 95, 73, 32.49227 + 41, 19, 30, 30, 37, 48, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 141, 143, 32.49233 + 142, 140, 138, 137, 136, 136, 136, 129, 126, 120, 110, 94, 84, 82, 87, 101, 32.49234 + 105, 97, 111, 99, 108, 99, 104, 109, 105, 101, 95, 89, 84, 80, 79, 95, 32.49235 + 102, 110, 114, 115, 115, 116, 119, 126, 121, 116, 99, 60, 29, 41, 73, 97, 32.49236 + 103, 120, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 142, 141, 140, 138, 32.49242 + 136, 135, 133, 131, 132, 122, 113, 111, 110, 102, 87, 76, 77, 83, 84, 95, 32.49243 + 92, 98, 93, 94, 103, 98, 90, 84, 82, 85, 91, 95, 108, 111, 114, 114, 32.49244 + 114, 116, 118, 121, 115, 102, 87, 73, 53, 52, 96, 150, 180, 176, 205, 255, 32.49245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 140, 140, 140, 138, 136, 133, 32.49251 + 131, 130, 121, 115, 117, 122, 119, 104, 90, 83, 83, 85, 79, 84, 79, 81, 32.49252 + 77, 83, 83, 82, 84, 90, 98, 108, 114, 116, 118, 120, 121, 121, 120, 119, 32.49253 + 119, 122, 129, 141, 155, 163, 166, 174, 181, 189, 255, 255, 255, 255, 255, 255, 32.49254 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49259 + 255, 255, 255, 255, 255, 255, 255, 217, 142, 142, 141, 138, 135, 132, 126, 125, 32.49260 + 126, 125, 124, 123, 119, 114, 117, 108, 109, 86, 93, 77, 84, 78, 85, 91, 32.49261 + 97, 104, 110, 114, 114, 117, 118, 120, 123, 127, 128, 126, 119, 116, 138, 165, 32.49262 + 183, 181, 177, 182, 180, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49268 + 255, 255, 255, 255, 255, 216, 137, 136, 135, 133, 131, 131, 129, 129, 126, 126, 32.49269 + 125, 125, 125, 119, 117, 116, 115, 113, 114, 114, 114, 111, 115, 118, 118, 115, 32.49270 + 115, 117, 120, 121, 122, 127, 132, 129, 124, 127, 136, 183, 179, 180, 188, 190, 32.49271 + 182, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49277 + 255, 255, 255, 255, 138, 136, 136, 136, 134, 133, 132, 130, 130, 130, 131, 132, 32.49278 + 126, 125, 121, 119, 117, 115, 114, 115, 120, 122, 123, 121, 118, 118, 118, 121, 32.49279 + 125, 126, 129, 126, 115, 112, 134, 162, 158, 170, 185, 193, 189, 182, 255, 255, 32.49280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49286 + 255, 255, 138, 138, 139, 136, 135, 133, 132, 131, 133, 135, 136, 135, 134, 131, 32.49287 + 128, 126, 124, 121, 122, 126, 126, 125, 123, 120, 119, 121, 124, 130, 127, 125, 32.49288 + 126, 126, 133, 151, 170, 179, 188, 193, 189, 255, 255, 255, 255, 255, 255, 255, 32.49289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49295 + 216, 139, 138, 136, 133, 131, 131, 132, 134, 136, 137, 136, 134, 132, 131, 130, 32.49296 + 128, 129, 127, 127, 125, 122, 121, 122, 124, 127, 127, 128, 123, 120, 132, 154, 32.49297 + 169, 172, 175, 177, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 139, 32.49304 + 138, 136, 134, 132, 132, 134, 135, 137, 136, 134, 132, 131, 130, 129, 129, 127, 32.49305 + 125, 123, 121, 122, 124, 127, 128, 120, 128, 123, 115, 130, 159, 168, 157, 255, 32.49306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 138, 137, 32.49313 + 135, 135, 136, 136, 145, 143, 141, 138, 135, 133, 132, 132, 128, 126, 123, 123, 32.49314 + 124, 125, 125, 126, 125, 120, 117, 131, 161, 172, 255, 255, 255, 255, 255, 255, 32.49315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 137, 138, 138, 138, 32.49322 + 137, 147, 146, 143, 141, 138, 136, 135, 136, 132, 131, 127, 125, 126, 126, 123, 32.49323 + 121, 130, 114, 120, 154, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 138, 137, 137, 136, 137, 32.49331 + 135, 134, 133, 134, 133, 135, 138, 134, 131, 129, 130, 127, 122, 119, 127, 119, 32.49332 + 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 136, 139, 137, 131, 32.49340 + 130, 133, 137, 126, 128, 129, 124, 124, 124, 121, 119, 109, 255, 255, 255, 255, 32.49341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 52, 66, 67, 16, 17, 68, 116, 32.49349 + 34, 13, 33, 63, 53, 67, 54, 61, 71, 78, 83, 91, 113, 180, 255, 255, 32.49350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.49357 + 82, 98, 86, 98, 122, 137, 154, 151, 140, 55, 48, 64, 92, 114, 119, 112, 32.49358 + 93, 81, 132, 132, 118, 106, 115, 116, 116, 139, 171, 185, 197, 237, 255, 255, 32.49359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49365 + 255, 255, 255, 255, 255, 255, 255, 193, 50, 37, 67, 66, 79, 121, 161, 169, 32.49366 + 166, 175, 163, 131, 146, 124, 143, 138, 166, 148, 125, 131, 111, 126, 133, 161, 32.49367 + 152, 117, 113, 124, 128, 125, 143, 174, 185, 177, 187, 204, 241, 255, 255, 255, 32.49368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49374 + 255, 255, 202, 78, 91, 97, 110, 105, 140, 153, 167, 173, 184, 162, 148, 153, 32.49375 + 127, 134, 122, 148, 166, 180, 175, 131, 124, 120, 178, 179, 153, 140, 146, 124, 32.49376 + 135, 140, 139, 154, 180, 189, 185, 171, 178, 190, 203, 223, 241, 255, 255, 255, 32.49377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 65, 75, 82, 32.49383 + 47, 55, 73, 101, 108, 167, 185, 178, 151, 157, 142, 141, 129, 130, 135, 148, 32.49384 + 159, 181, 140, 132, 150, 160, 160, 149, 124, 130, 118, 139, 137, 140, 136, 124, 32.49385 + 122, 131, 133, 129, 161, 163, 167, 171, 176, 180, 195, 219, 240, 255, 255, 255, 32.49386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49391 + 255, 255, 255, 255, 255, 255, 255, 30, 26, 44, 44, 53, 88, 92, 115, 118, 32.49392 + 125, 113, 150, 154, 158, 133, 137, 126, 140, 125, 138, 178, 132, 154, 132, 138, 32.49393 + 154, 158, 136, 168, 186, 176, 165, 107, 150, 138, 137, 129, 115, 111, 113, 116, 32.49394 + 118, 140, 130, 115, 109, 112, 124, 143, 159, 187, 203, 224, 242, 255, 255, 255, 32.49395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49400 + 255, 255, 204, 102, 87, 84, 67, 75, 111, 125, 128, 152, 115, 146, 199, 161, 32.49401 + 161, 137, 110, 120, 127, 114, 142, 151, 129, 126, 127, 140, 127, 160, 117, 117, 32.49402 + 141, 160, 144, 124, 133, 151, 141, 112, 88, 88, 98, 100, 103, 110, 103, 142, 32.49403 + 129, 107, 120, 115, 100, 115, 128, 156, 201, 190, 190, 224, 241, 255, 255, 255, 32.49404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 105, 93, 32.49409 + 111, 109, 132, 145, 167, 202, 172, 203, 194, 189, 161, 163, 155, 131, 115, 123, 32.49410 + 130, 114, 145, 112, 111, 116, 123, 120, 133, 131, 129, 104, 127, 143, 129, 121, 32.49411 + 142, 147, 122, 88, 107, 115, 102, 101, 115, 121, 112, 106, 116, 104, 105, 129, 32.49412 + 122, 93, 88, 91, 94, 122, 149, 171, 179, 181, 218, 249, 255, 255, 255, 255, 32.49413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49417 + 255, 255, 255, 255, 255, 255, 255, 255, 84, 94, 94, 108, 171, 163, 195, 192, 32.49418 + 186, 202, 190, 202, 202, 180, 160, 142, 150, 130, 131, 149, 120, 130, 107, 109, 32.49419 + 111, 121, 150, 132, 90, 87, 127, 129, 137, 115, 109, 124, 143, 155, 143, 116, 32.49420 + 125, 128, 132, 129, 118, 104, 101, 104, 115, 128, 132, 115, 84, 69, 91, 128, 32.49421 + 120, 96, 77, 102, 128, 135, 155, 169, 181, 231, 255, 255, 255, 255, 255, 255, 32.49422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49426 + 255, 255, 255, 188, 67, 34, 72, 95, 125, 201, 166, 195, 173, 188, 181, 149, 32.49427 + 168, 147, 132, 93, 98, 119, 99, 113, 150, 114, 157, 148, 139, 139, 131, 135, 32.49428 + 121, 128, 133, 166, 147, 162, 141, 153, 169, 138, 95, 104, 136, 154, 146, 144, 32.49429 + 138, 116, 96, 111, 136, 151, 111, 91, 100, 113, 124, 109, 77, 87, 94, 82, 32.49430 + 109, 132, 135, 150, 136, 135, 139, 184, 245, 255, 255, 255, 255, 255, 255, 255, 32.49431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 55, 30, 32.49435 + 71, 78, 97, 168, 161, 214, 181, 171, 168, 173, 164, 144, 152, 93, 112, 110, 32.49436 + 88, 78, 87, 119, 122, 148, 154, 188, 144, 152, 123, 124, 104, 105, 156, 154, 32.49437 + 158, 131, 118, 109, 116, 123, 120, 121, 124, 117, 116, 138, 138, 103, 75, 80, 32.49438 + 104, 116, 108, 100, 106, 102, 91, 110, 122, 102, 73, 90, 84, 102, 111, 109, 32.49439 + 135, 134, 129, 116, 122, 155, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 87, 92, 97, 135, 126, 162, 32.49444 + 189, 168, 187, 150, 151, 162, 164, 140, 116, 131, 101, 114, 129, 106, 127, 146, 32.49445 + 150, 152, 160, 142, 156, 115, 101, 114, 130, 98, 104, 144, 133, 141, 139, 149, 32.49446 + 160, 165, 138, 104, 99, 104, 97, 97, 97, 93, 87, 83, 83, 82, 78, 105, 32.49447 + 99, 101, 88, 78, 104, 127, 114, 118, 101, 80, 78, 65, 55, 88, 120, 132, 32.49448 + 114, 114, 137, 146, 149, 185, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49452 + 255, 255, 255, 210, 125, 104, 108, 121, 159, 163, 182, 191, 185, 148, 148, 127, 32.49453 + 143, 146, 175, 144, 145, 136, 129, 157, 140, 144, 114, 153, 188, 133, 132, 134, 32.49454 + 98, 113, 119, 108, 140, 137, 99, 134, 158, 160, 175, 165, 147, 121, 104, 95, 32.49455 + 88, 87, 79, 62, 86, 69, 70, 94, 106, 95, 89, 94, 85, 85, 97, 100, 32.49456 + 97, 101, 101, 87, 100, 84, 87, 86, 81, 77, 76, 93, 107, 100, 101, 118, 32.49457 + 136, 136, 120, 105, 134, 181, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 32.49461 + 97, 106, 139, 156, 160, 197, 164, 157, 194, 181, 141, 144, 139, 124, 145, 149, 32.49462 + 118, 152, 168, 171, 152, 151, 115, 111, 94, 130, 104, 108, 124, 135, 109, 82, 32.49463 + 101, 123, 140, 140, 181, 136, 116, 149, 149, 126, 121, 110, 86, 71, 81, 89, 32.49464 + 76, 56, 83, 95, 74, 50, 46, 61, 71, 86, 72, 73, 82, 89, 91, 94, 32.49465 + 96, 101, 93, 100, 82, 95, 124, 104, 95, 75, 78, 80, 90, 112, 120, 94, 32.49466 + 57, 65, 73, 85, 119, 178, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49469 + 255, 255, 255, 255, 255, 255, 255, 255, 231, 208, 163, 133, 115, 119, 149, 173, 32.49470 + 167, 140, 179, 146, 155, 120, 131, 144, 123, 119, 138, 154, 170, 166, 159, 177, 32.49471 + 158, 116, 102, 94, 133, 97, 121, 107, 106, 119, 134, 149, 171, 191, 181, 143, 32.49472 + 136, 109, 96, 81, 111, 116, 110, 105, 87, 84, 91, 76, 65, 80, 96, 65, 32.49473 + 45, 38, 33, 39, 55, 61, 55, 66, 79, 84, 81, 82, 91, 100, 98, 93, 32.49474 + 86, 80, 76, 72, 68, 64, 67, 59, 73, 85, 79, 83, 87, 74, 70, 86, 32.49475 + 61, 64, 75, 78, 119, 173, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49478 + 255, 255, 255, 255, 230, 201, 183, 138, 99, 103, 128, 165, 138, 120, 164, 115, 32.49479 + 123, 116, 106, 129, 115, 142, 148, 148, 149, 178, 124, 152, 114, 137, 111, 87, 32.49480 + 63, 79, 126, 103, 116, 132, 138, 139, 144, 155, 162, 179, 150, 141, 116, 102, 32.49481 + 68, 66, 55, 55, 47, 34, 34, 44, 45, 45, 52, 37, 32, 42, 56, 55, 32.49482 + 52, 45, 34, 49, 56, 66, 72, 73, 72, 74, 76, 83, 79, 74, 69, 66, 32.49483 + 62, 58, 55, 44, 52, 68, 68, 53, 49, 58, 62, 73, 86, 74, 69, 69, 32.49484 + 62, 65, 65, 68, 114, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 140, 32.49487 + 176, 171, 138, 157, 156, 110, 112, 122, 127, 114, 113, 132, 118, 108, 98, 138, 32.49488 + 160, 167, 165, 114, 110, 94, 151, 158, 146, 109, 110, 77, 89, 109, 84, 57, 32.49489 + 69, 83, 94, 102, 118, 130, 121, 103, 86, 88, 92, 79, 76, 49, 49, 59, 32.49490 + 39, 34, 32, 34, 39, 53, 59, 50, 21, 23, 38, 50, 52, 56, 52, 34, 32.49491 + 49, 48, 47, 49, 54, 60, 64, 67, 66, 64, 61, 59, 58, 55, 51, 46, 32.49492 + 46, 50, 47, 46, 52, 53, 53, 58, 65, 83, 99, 91, 87, 84, 76, 90, 32.49493 + 54, 29, 45, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 95, 159, 163, 162, 155, 32.49496 + 142, 116, 125, 142, 96, 101, 123, 145, 104, 102, 80, 67, 106, 106, 122, 107, 32.49497 + 90, 125, 125, 142, 138, 106, 113, 103, 110, 95, 65, 69, 39, 71, 79, 91, 32.49498 + 105, 121, 121, 100, 75, 87, 72, 54, 66, 109, 103, 69, 53, 40, 37, 45, 32.49499 + 43, 36, 50, 57, 36, 38, 35, 34, 30, 29, 45, 55, 46, 43, 40, 40, 32.49500 + 43, 49, 55, 60, 63, 56, 55, 55, 55, 55, 53, 49, 46, 52, 54, 39, 32.49501 + 38, 61, 70, 69, 80, 75, 70, 83, 76, 91, 100, 69, 70, 72, 61, 97, 32.49502 + 145, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49504 + 255, 255, 255, 255, 213, 136, 145, 197, 169, 133, 128, 148, 182, 151, 119, 142, 32.49505 + 145, 126, 98, 103, 140, 133, 89, 119, 118, 118, 106, 110, 122, 149, 116, 123, 32.49506 + 115, 63, 50, 61, 58, 91, 89, 78, 90, 70, 79, 94, 115, 122, 103, 71, 32.49507 + 52, 48, 31, 57, 68, 77, 80, 59, 31, 34, 32, 34, 42, 32, 18, 31, 32.49508 + 41, 22, 33, 31, 33, 29, 26, 40, 48, 38, 31, 36, 45, 52, 55, 56, 32.49509 + 55, 54, 53, 52, 52, 52, 52, 51, 48, 45, 40, 53, 46, 40, 54, 62, 32.49510 + 76, 104, 81, 53, 51, 59, 105, 128, 76, 53, 54, 89, 137, 161, 159, 255, 32.49511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49513 + 225, 164, 150, 131, 146, 142, 143, 115, 133, 151, 142, 163, 155, 115, 150, 160, 32.49514 + 141, 152, 140, 144, 132, 126, 116, 100, 127, 114, 120, 63, 76, 83, 82, 80, 32.49515 + 87, 119, 103, 61, 70, 67, 98, 126, 118, 113, 106, 84, 57, 48, 54, 37, 32.49516 + 50, 52, 67, 70, 69, 48, 47, 33, 34, 32, 20, 13, 26, 38, 32, 24, 32.49517 + 22, 29, 33, 32, 43, 51, 46, 45, 41, 41, 38, 42, 47, 57, 60, 52, 32.49518 + 49, 49, 46, 48, 44, 43, 39, 42, 42, 37, 35, 48, 61, 74, 88, 72, 32.49519 + 71, 76, 84, 112, 124, 100, 91, 89, 104, 136, 174, 173, 200, 255, 255, 255, 32.49520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 191, 204, 176, 32.49522 + 165, 171, 152, 116, 102, 165, 168, 132, 142, 142, 113, 118, 126, 126, 124, 120, 32.49523 + 183, 141, 136, 137, 155, 169, 114, 103, 100, 104, 80, 73, 114, 65, 84, 130, 32.49524 + 123, 116, 91, 133, 107, 85, 60, 45, 42, 42, 40, 38, 40, 56, 62, 65, 32.49525 + 33, 40, 51, 69, 29, 33, 23, 16, 24, 31, 30, 30, 33, 25, 30, 37, 32.49526 + 37, 46, 59, 61, 56, 43, 32, 26, 35, 47, 61, 66, 52, 47, 45, 41, 32.49527 + 41, 37, 36, 32, 47, 30, 29, 37, 50, 66, 71, 62, 82, 109, 104, 92, 32.49528 + 76, 66, 84, 101, 105, 108, 117, 161, 171, 164, 182, 255, 255, 255, 255, 255, 32.49529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49530 + 255, 255, 255, 255, 255, 255, 255, 255, 203, 173, 161, 182, 144, 125, 124, 144, 32.49531 + 142, 134, 135, 128, 156, 159, 140, 145, 124, 107, 123, 115, 174, 147, 158, 149, 32.49532 + 126, 93, 82, 77, 84, 78, 94, 111, 73, 76, 117, 122, 151, 114, 98, 99, 32.49533 + 81, 63, 68, 62, 46, 40, 41, 39, 31, 38, 33, 32, 54, 36, 58, 56, 32.49534 + 49, 35, 39, 27, 26, 46, 44, 25, 23, 35, 25, 32, 43, 42, 43, 53, 32.49535 + 58, 39, 32, 30, 38, 53, 61, 58, 52, 52, 48, 42, 38, 36, 34, 31, 32.49536 + 29, 29, 23, 38, 49, 42, 49, 63, 57, 91, 112, 83, 69, 57, 53, 93, 32.49537 + 113, 116, 171, 162, 138, 126, 160, 151, 184, 255, 255, 255, 255, 255, 255, 255, 32.49538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49539 + 255, 255, 255, 255, 220, 127, 112, 107, 129, 113, 156, 117, 109, 101, 97, 141, 32.49540 + 138, 149, 129, 146, 143, 104, 83, 104, 116, 151, 149, 140, 106, 106, 103, 118, 32.49541 + 73, 89, 60, 61, 58, 98, 101, 138, 179, 97, 126, 58, 74, 63, 47, 46, 32.49542 + 53, 51, 38, 36, 43, 43, 33, 32, 38, 50, 54, 47, 38, 36, 29, 34, 32.49543 + 37, 36, 31, 28, 28, 30, 39, 34, 32, 34, 34, 34, 37, 40, 35, 34, 32.49544 + 33, 34, 38, 43, 49, 53, 59, 44, 39, 49, 49, 35, 28, 32, 27, 30, 32.49545 + 34, 36, 39, 46, 59, 70, 65, 70, 80, 90, 95, 98, 104, 114, 137, 138, 32.49546 + 135, 127, 125, 136, 154, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 32.49548 + 148, 175, 183, 152, 130, 163, 164, 157, 97, 112, 178, 184, 180, 160, 155, 148, 32.49549 + 134, 128, 88, 95, 117, 166, 165, 182, 133, 138, 144, 119, 135, 98, 86, 82, 32.49550 + 88, 89, 92, 113, 80, 69, 67, 50, 63, 68, 44, 52, 48, 52, 52, 39, 32.49551 + 36, 40, 38, 39, 35, 37, 44, 46, 40, 36, 37, 54, 51, 45, 35, 26, 32.49552 + 23, 25, 29, 29, 25, 23, 25, 26, 25, 28, 32, 29, 26, 25, 25, 27, 32.49553 + 32, 37, 40, 52, 40, 33, 37, 38, 31, 27, 30, 21, 24, 26, 25, 26, 32.49554 + 33, 44, 52, 56, 77, 100, 112, 104, 95, 98, 110, 106, 114, 122, 125, 124, 32.49555 + 124, 126, 128, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 148, 169, 161, 148, 32.49557 + 150, 195, 183, 163, 151, 167, 209, 177, 206, 146, 122, 130, 136, 91, 120, 140, 32.49558 + 162, 198, 191, 165, 166, 186, 158, 117, 93, 107, 93, 78, 93, 86, 92, 78, 32.49559 + 91, 111, 121, 92, 75, 47, 43, 43, 41, 39, 43, 44, 34, 33, 37, 33, 32.49560 + 45, 39, 37, 38, 37, 35, 35, 37, 50, 49, 42, 32, 25, 23, 28, 34, 32.49561 + 28, 24, 24, 26, 27, 26, 28, 31, 28, 26, 24, 24, 25, 29, 32, 35, 32.49562 + 43, 36, 29, 25, 27, 29, 30, 29, 27, 28, 28, 25, 25, 28, 37, 43, 32.49563 + 64, 77, 88, 90, 76, 67, 74, 88, 90, 101, 116, 127, 127, 118, 108, 102, 32.49564 + 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49565 + 255, 255, 255, 255, 255, 255, 255, 114, 112, 119, 146, 159, 147, 174, 164, 136, 32.49566 + 135, 128, 166, 164, 124, 103, 137, 159, 127, 114, 134, 185, 192, 205, 201, 163, 32.49567 + 159, 121, 113, 90, 110, 102, 71, 39, 54, 98, 99, 99, 79, 57, 97, 120, 32.49568 + 76, 106, 80, 57, 18, 32, 31, 41, 42, 32, 34, 42, 41, 44, 40, 37, 32.49569 + 33, 32, 32, 34, 38, 38, 38, 38, 33, 28, 26, 28, 31, 30, 27, 27, 32.49570 + 30, 31, 29, 31, 34, 30, 27, 25, 24, 24, 26, 29, 31, 32, 33, 28, 32.49571 + 20, 22, 30, 31, 26, 34, 34, 33, 32, 31, 33, 37, 42, 59, 53, 48, 32.49572 + 50, 48, 48, 52, 58, 70, 77, 91, 104, 107, 101, 92, 88, 103, 164, 255, 32.49573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49574 + 255, 255, 255, 205, 100, 110, 142, 179, 184, 165, 161, 129, 174, 170, 127, 152, 32.49575 + 120, 169, 194, 129, 77, 95, 130, 186, 204, 212, 170, 167, 145, 80, 91, 89, 32.49576 + 100, 80, 93, 98, 77, 64, 30, 30, 73, 108, 147, 128, 128, 113, 85, 107, 32.49577 + 93, 22, 47, 50, 59, 58, 44, 43, 52, 53, 40, 39, 39, 35, 34, 35, 32.49578 + 37, 37, 45, 46, 43, 36, 29, 24, 25, 27, 29, 26, 27, 31, 31, 28, 32.49579 + 28, 30, 24, 23, 21, 20, 21, 22, 24, 26, 29, 35, 34, 26, 27, 35, 32.49580 + 35, 27, 34, 34, 32, 28, 29, 29, 32, 36, 30, 26, 29, 39, 44, 46, 32.49581 + 47, 49, 54, 59, 73, 90, 99, 97, 96, 98, 114, 104, 255, 255, 255, 255, 32.49582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 32.49583 + 102, 88, 128, 203, 199, 164, 178, 144, 166, 159, 193, 202, 219, 189, 130, 127, 32.49584 + 134, 130, 124, 110, 158, 151, 143, 163, 111, 77, 89, 114, 94, 85, 101, 72, 32.49585 + 79, 62, 66, 71, 114, 146, 135, 106, 93, 121, 112, 99, 83, 100, 81, 65, 32.49586 + 66, 71, 66, 49, 43, 48, 47, 33, 37, 39, 35, 33, 35, 36, 37, 46, 32.49587 + 43, 37, 28, 21, 20, 26, 31, 29, 27, 28, 32, 32, 27, 26, 27, 22, 32.49588 + 20, 19, 19, 20, 21, 23, 25, 30, 36, 37, 33, 32, 36, 34, 27, 32, 32.49589 + 31, 28, 27, 25, 27, 28, 28, 27, 28, 34, 34, 30, 31, 43, 56, 45, 32.49590 + 51, 69, 91, 102, 102, 104, 111, 116, 102, 220, 255, 255, 255, 255, 255, 255, 32.49591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 115, 108, 104, 134, 32.49592 + 169, 148, 141, 190, 118, 186, 163, 201, 181, 131, 147, 113, 133, 106, 117, 123, 32.49593 + 116, 125, 127, 152, 111, 125, 97, 99, 70, 88, 74, 94, 68, 72, 74, 68, 32.49594 + 81, 97, 121, 85, 107, 98, 115, 96, 120, 74, 67, 56, 63, 57, 57, 54, 32.49595 + 41, 38, 40, 32, 32, 37, 38, 32, 31, 33, 35, 33, 33, 35, 32, 27, 32.49596 + 24, 25, 32, 38, 33, 31, 33, 36, 35, 29, 26, 25, 22, 20, 20, 21, 32.49597 + 22, 25, 27, 28, 34, 36, 37, 36, 34, 33, 31, 29, 35, 34, 29, 27, 32.49598 + 25, 26, 25, 24, 36, 32, 30, 27, 23, 26, 39, 55, 39, 46, 62, 81, 32.49599 + 87, 84, 88, 99, 99, 109, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49600 + 255, 255, 255, 255, 255, 255, 255, 190, 85, 115, 99, 114, 133, 147, 170, 160, 32.49601 + 110, 177, 167, 177, 129, 139, 166, 123, 138, 114, 94, 109, 83, 112, 150, 162, 32.49602 + 149, 148, 127, 112, 91, 103, 78, 78, 82, 111, 76, 83, 84, 126, 121, 160, 32.49603 + 131, 109, 93, 86, 104, 36, 75, 78, 59, 50, 39, 36, 38, 35, 37, 37, 32.49604 + 24, 32, 37, 37, 29, 26, 30, 32, 31, 31, 35, 40, 37, 35, 30, 32, 32.49605 + 32, 31, 27, 30, 31, 32, 23, 21, 20, 18, 16, 19, 19, 23, 24, 28, 32.49606 + 28, 40, 36, 38, 36, 35, 29, 30, 32, 36, 34, 29, 26, 23, 23, 23, 32.49607 + 20, 23, 19, 22, 34, 47, 51, 47, 45, 60, 61, 72, 81, 82, 74, 81, 32.49608 + 96, 77, 96, 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.49609 + 255, 255, 255, 197, 120, 163, 172, 193, 177, 137, 178, 203, 154, 153, 107, 122, 32.49610 + 113, 129, 96, 109, 140, 125, 102, 70, 69, 116, 141, 112, 97, 121, 96, 94, 32.49611 + 105, 91, 98, 83, 96, 93, 64, 74, 95, 111, 131, 143, 121, 100, 86, 90, 32.49612 + 72, 73, 67, 94, 79, 67, 55, 45, 38, 42, 43, 34, 32, 37, 47, 44, 32.49613 + 41, 37, 32, 25, 28, 35, 30, 33, 32, 25, 27, 32, 35, 31, 22, 28, 32.49614 + 38, 40, 32, 17, 13, 14, 21, 18, 19, 20, 26, 30, 34, 34, 31, 34, 32.49615 + 39, 39, 39, 35, 35, 33, 30, 35, 37, 34, 28, 28, 34, 40, 27, 30, 32.49616 + 36, 44, 54, 59, 58, 54, 53, 47, 51, 57, 68, 72, 79, 85, 80, 79, 32.49617 + 97, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.49618 + 185, 172, 153, 181, 196, 161, 136, 157, 157, 138, 134, 152, 155, 138, 133, 143, 32.49619 + 126, 108, 86, 103, 113, 127, 134, 124, 105, 91, 86, 108, 94, 85, 95, 99, 32.49620 + 96, 84, 76, 121, 112, 90, 109, 118, 107, 114, 104, 75, 107, 134, 122, 95, 32.49621 + 65, 54, 48, 62, 49, 38, 40, 42, 36, 35, 40, 43, 37, 32, 32, 34, 32.49622 + 31, 31, 32, 29, 31, 30, 25, 25, 30, 33, 30, 35, 26, 21, 25, 30, 32.49623 + 28, 20, 15, 13, 15, 18, 21, 25, 28, 30, 32, 42, 43, 45, 43, 40, 32.49624 + 36, 34, 34, 31, 32, 32, 30, 29, 30, 32, 34, 29, 31, 36, 43, 50, 32.49625 + 53, 52, 48, 40, 36, 39, 48, 57, 65, 72, 80, 74, 75, 95, 104, 160, 32.49626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 173, 191, 187, 182, 32.49627 + 166, 166, 124, 133, 162, 171, 196, 191, 125, 109, 139, 121, 108, 89, 101, 92, 32.49628 + 83, 77, 67, 49, 47, 74, 96, 90, 71, 78, 73, 92, 74, 82, 80, 98, 32.49629 + 124, 138, 165, 129, 119, 145, 124, 123, 161, 107, 93, 100, 120, 76, 70, 74, 32.49630 + 61, 44, 31, 31, 35, 33, 33, 37, 42, 31, 25, 29, 36, 35, 30, 27, 32.49631 + 28, 29, 27, 24, 24, 29, 31, 30, 36, 35, 34, 31, 22, 13, 14, 20, 32.49632 + 17, 22, 26, 28, 27, 27, 28, 31, 38, 38, 38, 35, 30, 27, 26, 26, 32.49633 + 29, 27, 25, 26, 29, 31, 29, 27, 27, 29, 32, 37, 41, 41, 39, 35, 32.49634 + 34, 31, 33, 40, 49, 56, 64, 74, 73, 71, 85, 90, 99, 255, 255, 255, 32.49635 + 255, 255, 255, 255, 255, 255, 255, 187, 127, 104, 104, 137, 190, 187, 175, 153, 32.49636 + 163, 173, 166, 152, 113, 123, 125, 116, 89, 127, 106, 65, 98, 121, 107, 111, 32.49637 + 119, 112, 109, 111, 103, 90, 97, 82, 66, 50, 85, 131, 175, 165, 127, 69, 32.49638 + 99, 118, 93, 100, 79, 79, 102, 115, 96, 105, 102, 77, 29, 51, 37, 25, 32.49639 + 25, 32, 33, 33, 34, 41, 32, 27, 30, 36, 33, 28, 24, 28, 28, 26, 32.49640 + 24, 25, 27, 30, 30, 26, 33, 41, 39, 26, 13, 14, 22, 29, 32, 35, 32.49641 + 32, 26, 22, 25, 28, 37, 37, 36, 33, 30, 29, 30, 32, 22, 21, 22, 32.49642 + 24, 27, 29, 27, 26, 26, 28, 30, 33, 35, 34, 32, 28, 34, 30, 31, 32.49643 + 36, 41, 47, 54, 64, 72, 66, 72, 69, 75, 255, 255, 255, 255, 255, 255, 32.49644 + 255, 255, 255, 255, 173, 165, 157, 176, 177, 129, 170, 156, 168, 160, 159, 171, 32.49645 + 144, 114, 129, 111, 131, 141, 119, 124, 97, 98, 72, 99, 156, 198, 186, 137, 32.49646 + 102, 89, 74, 88, 103, 94, 118, 132, 135, 110, 90, 100, 133, 102, 98, 123, 32.49647 + 86, 76, 95, 78, 62, 71, 47, 33, 31, 60, 41, 32, 26, 28, 36, 38, 32.49648 + 36, 35, 36, 32, 31, 33, 34, 30, 29, 32, 31, 29, 27, 26, 26, 27, 32.49649 + 29, 31, 27, 20, 20, 29, 38, 38, 32, 27, 32, 34, 32, 26, 19, 17, 32.49650 + 21, 26, 25, 25, 24, 21, 18, 18, 20, 22, 15, 18, 22, 23, 24, 24, 32.49651 + 26, 28, 26, 28, 30, 32, 32, 32, 31, 28, 30, 26, 27, 31, 33, 37, 32.49652 + 46, 55, 63, 59, 66, 61, 64, 78, 255, 255, 255, 255, 255, 255, 255, 255, 32.49653 + 52, 101, 124, 117, 73, 110, 142, 154, 151, 178, 156, 141, 157, 139, 137, 95, 32.49654 + 132, 128, 129, 122, 124, 104, 150, 171, 163, 137, 112, 104, 95, 93, 108, 85, 32.49655 + 83, 89, 71, 108, 118, 114, 72, 78, 61, 31, 67, 84, 66, 94, 101, 89, 32.49656 + 80, 47, 49, 36, 53, 29, 17, 29, 26, 25, 27, 33, 34, 32, 30, 28, 32.49657 + 29, 32, 34, 33, 30, 35, 43, 36, 32, 29, 29, 29, 27, 28, 32, 32, 32.49658 + 24, 20, 27, 35, 38, 38, 39, 33, 32, 29, 23, 19, 20, 25, 30, 18, 32.49659 + 18, 16, 14, 11, 9, 11, 13, 17, 19, 22, 23, 21, 22, 25, 28, 25, 32.49660 + 28, 31, 32, 31, 30, 30, 29, 25, 23, 27, 32, 33, 35, 43, 53, 49, 32.49661 + 50, 68, 65, 66, 75, 134, 255, 255, 255, 255, 255, 255, 207, 101, 127, 99, 32.49662 + 88, 66, 119, 157, 128, 140, 159, 161, 153, 142, 130, 129, 150, 129, 117, 124, 32.49663 + 113, 129, 147, 121, 116, 125, 101, 94, 122, 114, 86, 87, 88, 95, 102, 100, 32.49664 + 106, 97, 79, 55, 40, 52, 77, 57, 45, 55, 50, 67, 71, 54, 47, 61, 32.49665 + 50, 27, 20, 36, 22, 24, 25, 24, 26, 26, 26, 26, 28, 28, 31, 32, 32.49666 + 32, 30, 37, 46, 41, 35, 32, 33, 31, 27, 28, 33, 35, 33, 33, 35, 32.49667 + 34, 31, 33, 38, 32, 29, 26, 23, 21, 22, 24, 26, 26, 27, 28, 27, 32.49668 + 25, 25, 26, 28, 26, 24, 21, 20, 22, 23, 22, 22, 24, 27, 30, 30, 32.49669 + 28, 27, 28, 27, 25, 24, 29, 33, 33, 33, 38, 47, 45, 45, 62, 59, 32.49670 + 58, 66, 63, 255, 255, 255, 255, 255, 255, 77, 103, 154, 143, 150, 145, 164, 32.49671 + 171, 219, 200, 147, 142, 139, 119, 136, 144, 121, 127, 125, 117, 121, 109, 144, 32.49672 + 118, 106, 115, 87, 80, 109, 90, 71, 105, 122, 114, 95, 103, 80, 71, 47, 32.49673 + 50, 63, 51, 39, 50, 54, 49, 54, 58, 32, 47, 56, 22, 30, 30, 31, 32.49674 + 3, 25, 29, 30, 26, 25, 25, 27, 28, 32, 30, 29, 30, 30, 29, 34, 32.49675 + 41, 45, 38, 34, 35, 33, 28, 28, 34, 39, 26, 21, 34, 51, 52, 37, 32.49676 + 24, 28, 25, 21, 19, 18, 17, 15, 13, 14, 16, 19, 21, 22, 23, 26, 32.49677 + 28, 36, 28, 20, 19, 23, 24, 21, 16, 24, 27, 29, 28, 25, 24, 25, 32.49678 + 24, 23, 23, 27, 29, 27, 23, 27, 34, 48, 45, 53, 43, 39, 49, 52, 32.49679 + 255, 255, 255, 255, 255, 93, 98, 106, 75, 150, 125, 94, 148, 153, 153, 148, 32.49680 + 133, 123, 118, 127, 131, 133, 120, 116, 124, 115, 118, 128, 113, 106, 89, 105, 32.49681 + 74, 113, 95, 117, 118, 119, 71, 76, 82, 97, 74, 73, 56, 47, 54, 49, 32.49682 + 43, 44, 51, 59, 60, 58, 65, 54, 45, 41, 32, 18, 17, 26, 22, 24, 32.49683 + 28, 32, 35, 31, 24, 18, 23, 26, 29, 29, 28, 23, 20, 19, 27, 28, 32.49684 + 28, 28, 29, 31, 29, 26, 33, 29, 29, 34, 36, 31, 26, 24, 12, 13, 32.49685 + 15, 17, 18, 18, 17, 17, 14, 16, 18, 20, 22, 25, 29, 31, 33, 33, 32.49686 + 32, 27, 22, 21, 23, 26, 35, 28, 26, 31, 32, 27, 23, 22, 24, 15, 32.49687 + 15, 26, 26, 22, 33, 52, 40, 35, 30, 29, 32, 43, 53, 125, 255, 255, 32.49688 + 255, 255, 180, 180, 132, 138, 130, 93, 140, 143, 140, 113, 128, 143, 146, 139, 32.49689 + 127, 111, 100, 123, 116, 120, 107, 105, 107, 86, 78, 65, 92, 93, 133, 119, 32.49690 + 113, 93, 75, 75, 71, 67, 78, 58, 64, 50, 42, 15, 24, 36, 46, 56, 32.49691 + 59, 60, 60, 54, 43, 37, 35, 31, 23, 25, 35, 29, 29, 31, 33, 35, 32.49692 + 31, 25, 20, 32, 32, 33, 32, 31, 27, 24, 22, 22, 22, 21, 19, 19, 32.49693 + 19, 18, 16, 28, 24, 25, 31, 33, 30, 26, 26, 23, 22, 21, 20, 19, 32.49694 + 17, 15, 14, 15, 20, 25, 26, 25, 27, 34, 40, 34, 33, 29, 24, 20, 32.49695 + 20, 24, 28, 20, 17, 20, 28, 32, 29, 27, 29, 31, 25, 27, 33, 31, 32.49696 + 28, 35, 48, 52, 46, 39, 35, 33, 38, 44, 47, 255, 255, 255, 255, 92, 32.49697 + 77, 139, 82, 134, 173, 131, 134, 141, 126, 136, 145, 137, 131, 124, 126, 124, 32.49698 + 113, 109, 117, 109, 107, 108, 89, 84, 77, 97, 106, 123, 118, 97, 83, 64, 32.49699 + 82, 76, 67, 79, 65, 74, 61, 51, 29, 31, 34, 42, 53, 56, 51, 46, 32.49700 + 41, 31, 24, 24, 25, 22, 26, 35, 31, 31, 32, 33, 36, 35, 31, 27, 32.49701 + 34, 33, 32, 32, 34, 32, 28, 26, 26, 24, 22, 20, 18, 16, 16, 17, 32.49702 + 24, 21, 22, 27, 30, 27, 25, 26, 24, 22, 19, 16, 13, 12, 11, 11, 32.49703 + 20, 27, 33, 31, 25, 24, 31, 38, 31, 29, 26, 21, 19, 21, 25, 30, 32.49704 + 22, 22, 26, 30, 28, 23, 20, 22, 33, 36, 37, 37, 36, 37, 40, 44, 32.49705 + 48, 46, 41, 38, 38, 41, 45, 46, 255, 255, 255, 255, 90, 101, 129, 119, 32.49706 + 90, 70, 99, 131, 112, 150, 154, 161, 146, 144, 130, 130, 123, 116, 114, 124, 32.49707 + 112, 100, 94, 74, 73, 103, 104, 109, 97, 100, 81, 86, 80, 86, 85, 82, 32.49708 + 94, 74, 76, 58, 46, 48, 56, 61, 58, 52, 42, 37, 36, 42, 32, 23, 32.49709 + 22, 24, 23, 26, 31, 29, 29, 29, 31, 36, 37, 37, 36, 25, 26, 27, 32.49710 + 31, 35, 34, 30, 27, 30, 27, 26, 25, 24, 23, 25, 29, 26, 23, 24, 32.49711 + 27, 28, 24, 22, 24, 19, 17, 14, 12, 11, 12, 14, 16, 29, 32, 32, 32.49712 + 28, 21, 17, 20, 23, 25, 24, 23, 23, 23, 25, 28, 30, 29, 30, 31, 32.49713 + 29, 23, 18, 18, 20, 31, 39, 39, 33, 31, 38, 40, 38, 36, 37, 37, 32.49714 + 38, 39, 41, 44, 44, 112, 255, 255, 195, 94, 83, 65, 106, 145, 115, 94, 32.49715 + 134, 137, 144, 127, 118, 95, 115, 123, 149, 151, 114, 115, 130, 121, 109, 103, 32.49716 + 91, 99, 96, 91, 108, 88, 95, 76, 82, 77, 86, 89, 88, 94, 62, 56, 32.49717 + 37, 28, 29, 52, 75, 71, 49, 31, 35, 44, 50, 40, 31, 29, 30, 31, 32.49718 + 32, 33, 30, 28, 27, 29, 33, 35, 35, 35, 21, 24, 29, 33, 37, 33, 32.49719 + 28, 23, 27, 24, 24, 28, 27, 26, 30, 38, 32, 30, 30, 32, 28, 22, 32.49720 + 19, 20, 19, 17, 15, 13, 14, 17, 21, 23, 34, 30, 26, 23, 20, 18, 32.49721 + 15, 13, 19, 21, 24, 27, 30, 31, 30, 29, 23, 24, 24, 20, 18, 20, 32.49722 + 26, 31, 30, 38, 37, 26, 20, 27, 32, 29, 30, 33, 36, 37, 35, 35, 32.49723 + 36, 35, 42, 255, 255, 114, 95, 92, 89, 132, 103, 113, 135, 127, 140, 123, 32.49724 + 121, 145, 145, 181, 168, 166, 139, 102, 101, 118, 116, 114, 116, 111, 123, 83, 32.49725 + 74, 92, 72, 81, 70, 71, 70, 83, 84, 81, 83, 51, 51, 42, 41, 43, 32.49726 + 41, 41, 41, 43, 44, 46, 46, 47, 37, 30, 29, 35, 39, 38, 36, 34, 32.49727 + 32, 29, 28, 30, 30, 28, 27, 27, 31, 36, 37, 35, 29, 23, 20, 26, 32.49728 + 23, 26, 32, 31, 27, 32, 42, 34, 33, 35, 36, 31, 23, 19, 20, 18, 32.49729 + 16, 14, 12, 13, 15, 18, 20, 30, 25, 21, 21, 24, 26, 23, 19, 21, 32.49730 + 23, 27, 32, 36, 35, 30, 26, 22, 22, 18, 12, 11, 18, 25, 28, 31, 32.49731 + 35, 32, 21, 12, 16, 20, 18, 18, 24, 31, 34, 34, 34, 37, 38, 47, 32.49732 + 255, 255, 98, 100, 106, 85, 90, 139, 126, 95, 172, 132, 143, 126, 133, 112, 32.49733 + 144, 127, 130, 105, 114, 98, 100, 94, 92, 91, 77, 82, 91, 72, 77, 55, 32.49734 + 60, 66, 66, 75, 77, 75, 70, 74, 52, 59, 56, 58, 61, 42, 26, 29, 32.49735 + 46, 56, 51, 39, 35, 28, 23, 25, 34, 41, 40, 34, 36, 33, 30, 28, 32.49736 + 29, 27, 25, 22, 31, 36, 40, 37, 30, 23, 22, 23, 30, 26, 29, 35, 32.49737 + 32, 24, 27, 38, 28, 30, 35, 39, 35, 27, 23, 24, 14, 13, 11, 10, 32.49738 + 11, 13, 15, 17, 22, 21, 21, 23, 27, 30, 31, 31, 30, 30, 32, 35, 32.49739 + 37, 35, 29, 24, 31, 29, 21, 11, 9, 15, 17, 14, 25, 27, 27, 22, 32.49740 + 16, 15, 16, 18, 16, 23, 30, 35, 35, 36, 40, 41, 43, 106, 255, 122, 32.49741 + 99, 104, 113, 145, 105, 135, 141, 120, 150, 122, 102, 113, 91, 134, 127, 145, 32.49742 + 128, 126, 101, 94, 90, 95, 98, 80, 80, 96, 75, 74, 55, 56, 72, 64, 32.49743 + 77, 75, 70, 61, 69, 46, 55, 47, 43, 34, 47, 63, 70, 67, 57, 48, 32.49744 + 43, 36, 29, 23, 26, 36, 44, 42, 34, 34, 31, 29, 28, 30, 29, 26, 32.49745 + 24, 30, 35, 38, 32, 24, 19, 23, 29, 29, 26, 29, 34, 28, 17, 18, 32.49746 + 28, 21, 25, 33, 37, 37, 28, 27, 29, 13, 13, 13, 14, 16, 18, 21, 32.49747 + 22, 17, 19, 23, 25, 26, 28, 33, 37, 39, 37, 36, 36, 36, 33, 28, 32.49748 + 23, 32, 30, 22, 13, 13, 19, 18, 12, 17, 19, 23, 25, 22, 19, 19, 32.49749 + 23, 27, 34, 38, 39, 35, 31, 33, 35, 34, 35, 255, 115, 119, 121, 142, 32.49750 + 157, 173, 160, 135, 135, 132, 116, 119, 147, 136, 134, 141, 123, 126, 113, 118, 32.49751 + 102, 95, 106, 85, 67, 87, 77, 76, 67, 63, 72, 77, 80, 89, 70, 65, 32.49752 + 61, 61, 54, 45, 39, 39, 34, 36, 54, 59, 44, 48, 51, 33, 36, 33, 32.49753 + 37, 45, 41, 32, 35, 46, 39, 43, 43, 37, 31, 27, 22, 17, 26, 31, 32.49754 + 33, 30, 27, 25, 21, 19, 30, 29, 33, 40, 37, 27, 21, 21, 27, 28, 32.49755 + 34, 39, 41, 32, 28, 27, 21, 21, 20, 22, 25, 25, 20, 16, 22, 22, 32.49756 + 21, 21, 22, 24, 26, 27, 29, 25, 26, 33, 36, 33, 29, 27, 27, 23, 32.49757 + 32, 36, 22, 15, 21, 25, 28, 30, 31, 31, 28, 30, 36, 40, 41, 42, 32.49758 + 42, 38, 35, 35, 36, 37, 27, 38, 255, 103, 112, 127, 129, 136, 167, 177, 32.49759 + 150, 131, 106, 148, 131, 133, 120, 125, 137, 118, 113, 112, 117, 103, 92, 102, 32.49760 + 97, 86, 90, 82, 85, 79, 71, 73, 68, 63, 71, 68, 64, 57, 53, 48, 32.49761 + 39, 36, 37, 45, 47, 61, 60, 42, 41, 44, 31, 26, 33, 37, 36, 34, 32.49762 + 36, 39, 41, 34, 36, 35, 30, 29, 29, 27, 22, 25, 30, 32, 28, 27, 32.49763 + 27, 25, 24, 27, 26, 27, 32, 29, 22, 18, 20, 24, 26, 32, 41, 44, 32.49764 + 39, 35, 35, 25, 26, 26, 27, 27, 26, 22, 19, 23, 22, 22, 22, 23, 32.49765 + 25, 27, 28, 33, 31, 32, 38, 40, 37, 34, 35, 40, 31, 35, 39, 30, 32.49766 + 25, 26, 23, 26, 30, 35, 37, 36, 37, 39, 41, 35, 36, 37, 35, 31, 32.49767 + 30, 32, 33, 30, 37, 255, 104, 119, 117, 121, 126, 146, 141, 111, 116, 117, 32.49768 + 128, 144, 164, 136, 104, 99, 111, 141, 116, 117, 104, 86, 86, 91, 85, 73, 32.49769 + 72, 80, 77, 74, 76, 67, 59, 61, 67, 60, 55, 51, 48, 41, 40, 43, 32.49770 + 58, 59, 66, 60, 42, 38, 42, 35, 26, 38, 42, 33, 30, 38, 40, 34, 32.49771 + 42, 41, 38, 34, 36, 40, 40, 34, 30, 35, 37, 32, 29, 29, 30, 27, 32.49772 + 32, 29, 29, 31, 30, 26, 23, 24, 28, 30, 33, 41, 41, 35, 28, 29, 32.49773 + 29, 31, 32, 32, 30, 27, 26, 26, 22, 22, 22, 23, 24, 26, 28, 29, 32.49774 + 33, 32, 34, 38, 38, 34, 35, 39, 44, 31, 31, 37, 34, 33, 30, 21, 32.49775 + 30, 34, 40, 44, 42, 39, 37, 37, 31, 33, 34, 33, 29, 28, 29, 31, 32.49776 + 37, 38, 108, 204, 107, 124, 135, 140, 148, 120, 92, 124, 157, 124, 125, 129, 32.49777 + 122, 116, 115, 115, 121, 127, 120, 114, 102, 92, 93, 91, 78, 64, 70, 69, 32.49778 + 70, 77, 70, 59, 58, 61, 55, 53, 52, 52, 47, 47, 50, 65, 63, 62, 32.49779 + 56, 47, 45, 46, 45, 41, 47, 48, 40, 35, 36, 35, 30, 49, 48, 44, 32.49780 + 42, 45, 47, 44, 36, 38, 42, 45, 40, 35, 33, 32, 27, 34, 34, 34, 32.49781 + 35, 34, 30, 28, 28, 25, 23, 28, 33, 33, 25, 20, 20, 32, 37, 39, 32.49782 + 37, 32, 29, 30, 31, 23, 23, 24, 25, 26, 27, 29, 29, 27, 27, 30, 32.49783 + 33, 30, 27, 30, 36, 39, 29, 30, 36, 36, 38, 37, 26, 36, 38, 42, 32.49784 + 43, 39, 35, 30, 27, 31, 33, 34, 34, 31, 30, 31, 32, 39, 35, 31, 32.49785 + 255, 85, 113, 111, 107, 118, 107, 88, 110, 126, 123, 107, 95, 103, 119, 122, 32.49786 + 114, 98, 115, 105, 109, 111, 99, 89, 89, 89, 77, 77, 70, 69, 77, 71, 32.49787 + 56, 51, 53, 50, 51, 53, 51, 46, 46, 48, 66, 62, 53, 48, 50, 47, 32.49788 + 45, 46, 53, 48, 46, 48, 42, 32, 30, 34, 44, 44, 45, 44, 47, 48, 32.49789 + 42, 31, 40, 46, 51, 48, 44, 41, 37, 32, 30, 32, 32, 33, 31, 29, 32.49790 + 25, 20, 13, 13, 17, 23, 26, 25, 24, 27, 41, 43, 43, 39, 32, 27, 32.49791 + 26, 27, 23, 24, 25, 26, 26, 27, 27, 27, 25, 25, 28, 30, 27, 23, 32.49792 + 26, 32, 36, 32, 37, 39, 34, 36, 38, 30, 35, 35, 35, 34, 31, 28, 32.49793 + 25, 23, 29, 32, 34, 35, 32, 31, 32, 33, 34, 29, 26, 255, 100, 125, 32.49794 + 118, 103, 110, 109, 104, 126, 133, 113, 119, 114, 112, 99, 87, 107, 116, 109, 32.49795 + 101, 101, 105, 99, 83, 76, 83, 84, 82, 71, 68, 76, 71, 60, 56, 54, 32.49796 + 52, 54, 57, 55, 50, 50, 51, 62, 60, 49, 44, 49, 44, 38, 45, 54, 32.49797 + 45, 44, 51, 49, 37, 35, 43, 39, 42, 46, 46, 47, 46, 40, 30, 32, 32.49798 + 39, 46, 46, 45, 45, 44, 40, 32, 35, 37, 35, 33, 30, 25, 20, 20, 32.49799 + 16, 17, 23, 26, 25, 28, 32, 49, 48, 47, 39, 34, 26, 25, 22, 29, 32.49800 + 27, 30, 28, 30, 28, 29, 29, 33, 31, 33, 35, 34, 29, 29, 33, 34, 32.49801 + 34, 40, 37, 26, 27, 30, 23, 27, 26, 24, 25, 24, 25, 24, 23, 25, 32.49802 + 28, 31, 33, 30, 30, 30, 31, 37, 31, 27, 255, 123, 109, 114, 104, 103, 32.49803 + 98, 100, 128, 134, 130, 126, 103, 108, 107, 96, 109, 106, 115, 115, 100, 94, 32.49804 + 104, 93, 76, 78, 76, 79, 74, 68, 72, 67, 60, 64, 52, 50, 50, 54, 32.49805 + 55, 54, 57, 61, 51, 58, 50, 45, 48, 38, 33, 49, 50, 48, 48, 50, 32.49806 + 50, 48, 46, 49, 46, 50, 53, 50, 46, 44, 40, 33, 27, 33, 38, 36, 32.49807 + 37, 42, 44, 44, 41, 43, 43, 38, 35, 36, 33, 25, 30, 26, 24, 26, 32.49808 + 28, 29, 34, 40, 48, 45, 43, 38, 37, 33, 32, 27, 33, 32, 34, 33, 32.49809 + 34, 30, 30, 29, 38, 34, 34, 38, 38, 33, 29, 29, 29, 29, 34, 30, 32.49810 + 19, 21, 24, 14, 22, 21, 20, 22, 23, 24, 23, 21, 23, 26, 30, 32, 32.49811 + 30, 29, 30, 30, 41, 34, 30, 255, 146, 104, 119, 118, 127, 130, 129, 138, 32.49812 + 126, 126, 117, 92, 104, 112, 100, 108, 95, 88, 97, 73, 59, 86, 89, 66, 32.49813 + 62, 72, 82, 77, 67, 63, 54, 50, 59, 42, 39, 40, 46, 51, 54, 60, 32.49814 + 67, 43, 56, 55, 48, 51, 36, 36, 58, 50, 55, 57, 48, 51, 57, 57, 32.49815 + 48, 53, 57, 55, 49, 41, 37, 32, 29, 28, 31, 30, 28, 28, 35, 41, 32.49816 + 40, 46, 48, 45, 37, 35, 35, 34, 29, 28, 23, 22, 27, 32, 35, 44, 32.49817 + 52, 41, 38, 36, 36, 40, 41, 41, 37, 36, 36, 37, 36, 36, 32, 31, 32.49818 + 30, 35, 32, 32, 36, 37, 32, 26, 23, 28, 27, 31, 28, 21, 26, 27, 32.49819 + 16, 23, 22, 21, 23, 24, 23, 19, 16, 24, 27, 31, 34, 32, 31, 31, 32.49820 + 32, 39, 31, 27, 255, 224, 102, 140, 132, 123, 120, 140, 125, 123, 123, 129, 32.49821 + 104, 102, 94, 81, 98, 87, 75, 69, 78, 93, 89, 72, 73, 87, 86, 70, 32.49822 + 58, 56, 54, 49, 49, 55, 45, 48, 49, 48, 45, 46, 51, 55, 50, 53, 32.49823 + 56, 51, 53, 56, 59, 54, 57, 53, 49, 42, 47, 54, 61, 61, 69, 64, 32.49824 + 56, 48, 39, 31, 25, 23, 29, 25, 22, 26, 33, 40, 43, 43, 39, 45, 32.49825 + 48, 44, 42, 43, 41, 35, 38, 38, 29, 40, 32, 47, 53, 71, 48, 49, 32.49826 + 57, 60, 53, 38, 43, 53, 59, 54, 50, 41, 38, 32, 31, 29, 36, 41, 32.49827 + 40, 34, 28, 28, 29, 27, 24, 29, 33, 30, 22, 17, 19, 24, 24, 23, 32.49828 + 24, 27, 28, 30, 30, 29, 20, 21, 28, 34, 30, 25, 27, 35, 34, 30, 32.49829 + 25, 255, 255, 105, 128, 140, 165, 154, 129, 103, 123, 130, 127, 110, 106, 100, 32.49830 + 88, 84, 70, 75, 55, 45, 54, 69, 74, 76, 77, 76, 58, 48, 55, 66, 32.49831 + 63, 51, 43, 56, 53, 50, 51, 54, 56, 58, 58, 50, 55, 55, 52, 51, 32.49832 + 54, 55, 52, 57, 56, 49, 40, 39, 45, 51, 52, 67, 60, 53, 47, 44, 32.49833 + 38, 29, 23, 24, 22, 24, 27, 33, 39, 44, 43, 44, 47, 46, 42, 41, 32.49834 + 43, 41, 34, 41, 48, 44, 52, 39, 47, 43, 53, 66, 59, 59, 67, 69, 32.49835 + 60, 54, 56, 54, 52, 50, 48, 45, 41, 37, 36, 32, 39, 39, 33, 28, 32.49836 + 27, 26, 23, 31, 34, 37, 34, 28, 23, 23, 24, 28, 27, 27, 29, 30, 32.49837 + 30, 29, 28, 25, 24, 26, 28, 25, 25, 33, 44, 48, 35, 29, 255, 255, 32.49838 + 134, 120, 117, 157, 158, 132, 99, 114, 127, 110, 104, 96, 98, 94, 71, 61, 32.49839 + 57, 59, 66, 75, 80, 80, 79, 79, 68, 53, 46, 58, 69, 65, 51, 44, 32.49840 + 58, 51, 44, 47, 56, 62, 60, 54, 62, 67, 68, 65, 63, 65, 65, 64, 32.49841 + 67, 67, 61, 49, 43, 46, 51, 55, 45, 40, 40, 45, 54, 58, 53, 48, 32.49842 + 34, 34, 36, 38, 41, 45, 50, 50, 50, 49, 44, 39, 40, 42, 44, 42, 32.49843 + 60, 69, 67, 74, 54, 55, 47, 53, 57, 63, 72, 73, 61, 48, 51, 64, 32.49844 + 62, 63, 64, 65, 63, 57, 49, 46, 34, 40, 41, 35, 31, 29, 27, 23, 32.49845 + 35, 35, 35, 33, 30, 27, 24, 22, 32, 31, 31, 32, 31, 31, 29, 27, 32.49846 + 28, 27, 28, 30, 28, 30, 37, 46, 43, 26, 22, 255, 255, 215, 123, 107, 32.49847 + 127, 130, 135, 111, 105, 107, 84, 90, 80, 85, 91, 65, 66, 38, 49, 70, 32.49848 + 82, 75, 59, 56, 65, 65, 57, 51, 52, 49, 43, 43, 52, 52, 48, 44, 32.49849 + 50, 58, 62, 58, 53, 74, 79, 82, 82, 80, 80, 81, 82, 81, 86, 84, 32.49850 + 75, 67, 67, 71, 73, 70, 67, 63, 64, 65, 64, 57, 50, 47, 45, 42, 32.49851 + 40, 38, 39, 41, 43, 49, 48, 45, 38, 37, 43, 51, 55, 76, 88, 83, 32.49852 + 83, 62, 67, 62, 68, 54, 62, 72, 66, 51, 36, 44, 56, 51, 51, 59, 32.49853 + 63, 68, 62, 55, 50, 44, 48, 45, 39, 35, 34, 32, 29, 37, 34, 33, 32.49854 + 33, 33, 32, 27, 23, 30, 31, 31, 32, 32, 32, 31, 29, 28, 31, 36, 32.49855 + 40, 38, 36, 38, 40, 36, 27, 26, 255, 255, 255, 126, 131, 137, 120, 130, 32.49856 + 117, 109, 88, 75, 89, 84, 83, 84, 60, 66, 58, 44, 45, 56, 56, 44, 32.49857 + 48, 62, 62, 54, 48, 46, 38, 32, 36, 48, 45, 49, 52, 57, 60, 61, 32.49858 + 60, 58, 70, 74, 81, 84, 83, 82, 85, 90, 89, 97, 101, 96, 91, 90, 32.49859 + 91, 91, 95, 96, 95, 91, 85, 79, 74, 72, 74, 67, 57, 50, 44, 41, 32.49860 + 42, 42, 39, 41, 41, 38, 36, 40, 56, 71, 79, 89, 85, 86, 66, 73, 32.49861 + 65, 68, 76, 66, 58, 57, 60, 56, 48, 41, 43, 45, 54, 65, 75, 76, 32.49862 + 71, 67, 52, 52, 47, 38, 35, 36, 36, 33, 35, 32, 30, 31, 34, 34, 32.49863 + 29, 26, 26, 28, 28, 31, 32, 34, 34, 32, 35, 39, 42, 42, 39, 39, 32.49864 + 38, 37, 40, 45, 44, 255, 255, 255, 130, 132, 147, 127, 132, 121, 111, 83, 32.49865 + 79, 93, 96, 88, 73, 54, 55, 64, 55, 53, 54, 47, 39, 53, 74, 65, 32.49866 + 52, 45, 51, 52, 48, 42, 43, 40, 48, 54, 58, 56, 56, 60, 63, 68, 32.49867 + 73, 82, 88, 88, 87, 91, 98, 95, 103, 108, 107, 105, 105, 105, 103, 95, 32.49868 + 99, 103, 101, 95, 94, 94, 97, 88, 78, 64, 54, 51, 48, 44, 42, 36, 32.49869 + 37, 40, 41, 40, 47, 65, 82, 77, 92, 90, 94, 76, 82, 68, 64, 78, 32.49870 + 73, 68, 67, 66, 62, 54, 47, 57, 57, 60, 68, 76, 77, 72, 66, 58, 32.49871 + 57, 50, 42, 39, 40, 39, 35, 29, 27, 26, 27, 29, 28, 24, 22, 24, 32.49872 + 26, 27, 31, 34, 36, 37, 36, 44, 44, 41, 35, 32, 37, 40, 39, 31, 32.49873 + 44, 47, 255, 255, 255, 139, 123, 135, 119, 131, 117, 96, 81, 82, 80, 90, 32.49874 + 82, 59, 54, 50, 49, 63, 68, 54, 42, 43, 53, 60, 67, 58, 53, 59, 32.49875 + 60, 54, 49, 49, 44, 47, 52, 53, 52, 56, 61, 68, 75, 80, 90, 99, 32.49876 + 99, 96, 101, 110, 105, 109, 111, 109, 109, 112, 111, 108, 113, 113, 109, 103, 32.49877 + 96, 91, 88, 87, 85, 77, 65, 60, 61, 59, 52, 47, 46, 42, 41, 48, 32.49878 + 56, 64, 76, 89, 86, 98, 92, 96, 83, 95, 81, 74, 64, 76, 86, 83, 32.49879 + 71, 61, 58, 60, 63, 58, 55, 57, 61, 62, 57, 52, 61, 61, 57, 50, 32.49880 + 48, 47, 42, 35, 30, 29, 28, 28, 27, 24, 21, 20, 25, 27, 29, 33, 32.49881 + 36, 39, 39, 38, 41, 42, 38, 31, 30, 36, 38, 36, 22, 31, 39, 255, 32.49882 + 255, 255, 147, 139, 135, 101, 115, 101, 73, 76, 78, 58, 72, 68, 47, 59, 32.49883 + 54, 74, 82, 68, 43, 48, 72, 70, 48, 62, 61, 61, 60, 48, 38, 45, 32.49884 + 59, 56, 55, 54, 54, 56, 62, 72, 78, 81, 86, 97, 106, 105, 101, 106, 32.49885 + 116, 116, 116, 114, 110, 111, 115, 115, 111, 113, 109, 106, 105, 105, 105, 105, 32.49886 + 103, 110, 101, 94, 95, 100, 99, 91, 81, 57, 48, 46, 57, 71, 79, 87, 32.49887 + 95, 92, 99, 87, 86, 80, 97, 92, 87, 68, 75, 84, 88, 87, 80, 67, 32.49888 + 56, 71, 65, 61, 63, 71, 75, 74, 71, 62, 65, 63, 58, 56, 53, 45, 32.49889 + 36, 40, 40, 39, 37, 33, 29, 25, 25, 28, 30, 31, 35, 37, 40, 40, 32.49890 + 39, 30, 35, 37, 34, 35, 37, 37, 28, 34, 33, 42, 255, 255, 255, 136, 32.49891 + 133, 103, 98, 109, 98, 80, 100, 66, 47, 52, 59, 64, 67, 61, 72, 56, 32.49892 + 45, 46, 50, 48, 46, 46, 57, 58, 61, 61, 50, 42, 43, 49, 53, 56, 32.49893 + 59, 58, 60, 66, 77, 85, 93, 95, 98, 103, 108, 112, 116, 118, 116, 114, 32.49894 + 113, 114, 117, 116, 112, 108, 112, 108, 104, 103, 105, 107, 108, 107, 105, 110, 32.49895 + 107, 97, 96, 104, 109, 106, 106, 96, 86, 82, 86, 92, 97, 98, 109, 107, 32.49896 + 103, 94, 88, 81, 83, 86, 91, 78, 72, 79, 87, 82, 66, 53, 57, 59, 32.49897 + 90, 90, 71, 64, 58, 66, 62, 61, 59, 54, 57, 58, 53, 48, 50, 45, 32.49898 + 39, 35, 35, 35, 35, 37, 28, 34, 41, 43, 41, 38, 38, 39, 37, 30, 32.49899 + 28, 30, 28, 22, 31, 41, 37, 29, 33, 255, 255, 255, 212, 111, 102, 106, 32.49900 + 100, 93, 97, 72, 66, 81, 104, 107, 97, 85, 70, 55, 42, 35, 36, 41, 32.49901 + 45, 53, 59, 57, 55, 53, 50, 41, 39, 45, 55, 48, 53, 59, 64, 68, 32.49902 + 78, 91, 99, 107, 106, 108, 109, 110, 111, 111, 111, 121, 119, 116, 114, 112, 32.49903 + 108, 105, 102, 107, 105, 103, 105, 109, 112, 115, 115, 117, 120, 118, 112, 110, 32.49904 + 111, 112, 111, 114, 106, 97, 92, 92, 95, 95, 93, 113, 111, 104, 98, 93, 32.49905 + 90, 91, 92, 92, 86, 84, 86, 85, 75, 64, 58, 66, 46, 57, 68, 83, 32.49906 + 96, 76, 57, 74, 77, 76, 67, 61, 55, 50, 43, 47, 43, 39, 36, 38, 32.49907 + 39, 41, 41, 39, 40, 42, 45, 46, 44, 42, 39, 42, 40, 40, 42, 41, 32.49908 + 38, 40, 42, 44, 35, 110, 255, 255, 255, 255, 142, 118, 101, 97, 92, 93, 32.49909 + 103, 77, 57, 43, 30, 38, 65, 81, 53, 54, 61, 69, 71, 63, 56, 51, 32.49910 + 55, 51, 47, 45, 39, 38, 43, 52, 43, 49, 56, 65, 75, 87, 100, 109, 32.49911 + 115, 114, 116, 116, 116, 114, 111, 110, 117, 118, 118, 117, 116, 116, 117, 119, 32.49912 + 112, 111, 112, 114, 120, 123, 124, 124, 125, 124, 123, 123, 120, 114, 112, 115, 32.49913 + 113, 108, 104, 103, 104, 105, 104, 102, 104, 100, 94, 91, 88, 89, 90, 91, 32.49914 + 91, 94, 97, 96, 85, 73, 69, 73, 69, 59, 71, 71, 78, 97, 85, 70, 32.49915 + 81, 88, 90, 80, 69, 59, 53, 47, 46, 43, 40, 38, 40, 40, 39, 38, 32.49916 + 41, 37, 35, 37, 40, 41, 37, 32, 38, 42, 44, 44, 45, 46, 42, 34, 32.49917 + 42, 35, 255, 255, 255, 255, 255, 147, 113, 89, 83, 77, 71, 82, 75, 76, 32.49918 + 74, 60, 56, 68, 72, 79, 67, 56, 49, 48, 51, 56, 58, 52, 49, 48, 32.49919 + 48, 44, 40, 38, 43, 42, 48, 56, 66, 77, 88, 100, 106, 111, 114, 117, 32.49920 + 120, 122, 121, 119, 117, 114, 117, 120, 120, 120, 122, 128, 133, 120, 120, 121, 32.49921 + 122, 125, 125, 124, 124, 130, 124, 124, 129, 127, 118, 118, 125, 115, 112, 110, 32.49922 + 110, 111, 112, 110, 109, 109, 103, 98, 97, 99, 104, 106, 106, 92, 97, 104, 32.49923 + 103, 92, 82, 83, 91, 75, 82, 103, 87, 74, 89, 91, 91, 81, 87, 89, 32.49924 + 82, 75, 69, 63, 57, 50, 47, 44, 40, 40, 38, 34, 32, 34, 32, 30, 32.49925 + 30, 32, 33, 32, 30, 34, 41, 42, 39, 41, 46, 39, 25, 36, 32, 255, 32.49926 + 255, 255, 255, 255, 206, 102, 98, 80, 69, 80, 85, 72, 67, 60, 49, 51, 32.49927 + 64, 66, 79, 67, 53, 45, 49, 56, 62, 61, 54, 48, 43, 43, 41, 37, 32.49928 + 34, 37, 42, 48, 59, 70, 80, 91, 99, 104, 109, 112, 117, 122, 125, 126, 32.49929 + 126, 125, 124, 125, 125, 122, 118, 117, 120, 124, 123, 123, 126, 126, 125, 124, 32.49930 + 126, 125, 134, 128, 129, 134, 133, 127, 132, 141, 130, 127, 120, 117, 114, 111, 32.49931 + 108, 106, 112, 107, 102, 103, 108, 113, 114, 114, 102, 103, 107, 108, 102, 95, 32.49932 + 95, 100, 90, 87, 99, 87, 83, 104, 101, 92, 90, 90, 87, 81, 78, 75, 32.49933 + 69, 59, 51, 49, 45, 41, 39, 36, 32, 29, 31, 33, 34, 33, 32, 32, 32.49934 + 36, 39, 38, 42, 41, 36, 38, 43, 39, 26, 33, 32, 255, 255, 255, 255, 32.49935 + 255, 255, 97, 93, 78, 68, 75, 88, 80, 81, 80, 70, 65, 61, 49, 70, 32.49936 + 72, 76, 76, 77, 74, 65, 54, 60, 48, 36, 32, 33, 33, 38, 43, 48, 32.49937 + 54, 65, 78, 90, 99, 106, 109, 114, 116, 120, 124, 127, 128, 128, 128, 131, 32.49938 + 131, 130, 128, 125, 123, 123, 124, 127, 128, 132, 132, 131, 131, 135, 137, 133, 32.49939 + 131, 132, 133, 132, 131, 137, 143, 132, 131, 127, 124, 121, 118, 115, 113, 112, 32.49940 + 110, 106, 106, 109, 111, 111, 114, 117, 113, 111, 111, 108, 101, 98, 99, 98, 32.49941 + 87, 96, 88, 86, 103, 96, 87, 103, 101, 94, 86, 82, 77, 68, 57, 52, 32.49942 + 48, 44, 41, 40, 37, 35, 33, 28, 32, 35, 34, 32, 32, 36, 41, 39, 32.49943 + 39, 37, 32, 32, 35, 34, 28, 28, 29, 255, 255, 255, 255, 255, 255, 91, 32.49944 + 73, 64, 54, 51, 77, 67, 63, 62, 59, 65, 73, 66, 74, 77, 74, 62, 32.49945 + 54, 55, 60, 60, 58, 45, 33, 32, 36, 42, 48, 51, 57, 63, 73, 86, 32.49946 + 98, 107, 111, 112, 120, 122, 124, 126, 128, 129, 130, 130, 131, 130, 130, 132, 32.49947 + 134, 134, 133, 132, 132, 134, 135, 135, 136, 137, 141, 145, 136, 140, 140, 136, 32.49948 + 135, 136, 136, 135, 130, 133, 136, 137, 132, 129, 125, 123, 130, 130, 129, 127, 32.49949 + 122, 120, 120, 120, 125, 119, 114, 113, 108, 101, 97, 97, 95, 86, 102, 98, 32.49950 + 90, 98, 95, 97, 100, 101, 101, 92, 85, 77, 68, 58, 59, 54, 48, 42, 32.49951 + 39, 36, 34, 34, 29, 30, 31, 31, 31, 31, 32, 33, 37, 34, 32, 31, 32.49952 + 28, 25, 26, 28, 28, 27, 255, 255, 255, 255, 255, 255, 110, 99, 70, 57, 32.49953 + 72, 95, 82, 72, 62, 52, 57, 64, 57, 53, 69, 81, 73, 60, 55, 58, 32.49954 + 59, 51, 41, 36, 39, 49, 54, 55, 57, 65, 71, 79, 91, 102, 108, 110, 32.49955 + 110, 123, 124, 125, 127, 129, 131, 133, 133, 131, 129, 128, 130, 133, 134, 130, 32.49956 + 126, 129, 131, 131, 129, 129, 131, 135, 139, 144, 152, 153, 145, 142, 143, 139, 32.49957 + 131, 139, 143, 147, 147, 142, 131, 122, 117, 131, 133, 132, 128, 118, 112, 111, 32.49958 + 112, 125, 120, 115, 113, 107, 100, 97, 98, 91, 76, 91, 100, 105, 116, 112, 32.49959 + 113, 87, 95, 101, 95, 86, 77, 70, 63, 68, 61, 53, 44, 39, 35, 32, 32.49960 + 30, 34, 32, 30, 31, 35, 35, 32, 28, 39, 34, 33, 36, 31, 22, 24, 32.49961 + 31, 35, 32, 255, 255, 255, 255, 255, 255, 216, 131, 114, 88, 83, 72, 73, 32.49962 + 66, 74, 76, 66, 68, 61, 58, 53, 58, 65, 63, 51, 44, 44, 47, 45, 32.49963 + 46, 51, 55, 57, 61, 65, 77, 83, 93, 102, 107, 111, 114, 116, 127, 128, 32.49964 + 128, 127, 126, 126, 129, 131, 131, 131, 133, 134, 134, 134, 134, 134, 136, 138, 32.49965 + 140, 138, 135, 134, 136, 139, 133, 140, 150, 153, 152, 145, 137, 133, 129, 132, 32.49966 + 136, 139, 141, 141, 138, 137, 129, 131, 131, 128, 123, 120, 121, 124, 119, 116, 32.49967 + 114, 116, 118, 118, 114, 111, 90, 97, 85, 97, 96, 124, 114, 107, 99, 89, 32.49968 + 91, 94, 86, 81, 83, 79, 70, 60, 50, 40, 33, 25, 25, 28, 32, 33, 32.49969 + 36, 38, 33, 28, 32, 39, 42, 40, 38, 37, 36, 34, 32, 29, 32, 31, 32.49970 + 255, 255, 255, 255, 255, 255, 255, 139, 109, 88, 112, 95, 79, 72, 72, 75, 32.49971 + 71, 59, 51, 58, 52, 54, 58, 55, 44, 39, 39, 50, 52, 57, 58, 54, 32.49972 + 54, 60, 67, 81, 88, 97, 106, 110, 114, 117, 119, 126, 129, 131, 132, 131, 32.49973 + 130, 130, 131, 130, 131, 131, 131, 131, 131, 130, 129, 140, 142, 144, 143, 142, 32.49974 + 142, 145, 148, 159, 158, 157, 151, 148, 145, 144, 145, 146, 147, 148, 147, 143, 32.49975 + 139, 134, 130, 134, 136, 136, 134, 130, 126, 123, 121, 113, 109, 105, 103, 103, 32.49976 + 105, 107, 107, 104, 96, 79, 93, 93, 111, 102, 104, 99, 95, 98, 97, 89, 32.49977 + 86, 88, 81, 80, 68, 56, 44, 33, 22, 19, 20, 32, 35, 37, 40, 37, 32.49978 + 32, 34, 39, 41, 40, 38, 37, 36, 35, 34, 32, 31, 37, 255, 255, 255, 32.49979 + 255, 255, 255, 255, 210, 99, 80, 124, 102, 76, 77, 61, 61, 68, 53, 62, 32.49980 + 59, 51, 49, 50, 45, 36, 35, 38, 50, 58, 65, 65, 60, 60, 68, 77, 32.49981 + 89, 95, 101, 109, 114, 117, 118, 120, 127, 130, 134, 136, 135, 133, 131, 131, 32.49982 + 135, 136, 136, 136, 135, 134, 132, 132, 136, 137, 138, 139, 140, 142, 146, 149, 32.49983 + 160, 157, 153, 147, 144, 146, 151, 156, 159, 158, 156, 153, 147, 139, 133, 129, 32.49984 + 143, 140, 137, 135, 133, 132, 131, 129, 129, 126, 120, 114, 111, 113, 119, 123, 32.49985 + 111, 95, 82, 101, 103, 107, 98, 104, 96, 98, 104, 98, 88, 91, 93, 81, 32.49986 + 79, 68, 58, 47, 37, 26, 22, 24, 30, 30, 32, 37, 36, 32, 30, 32, 32.49987 + 37, 36, 34, 33, 33, 33, 34, 33, 27, 38, 255, 255, 255, 255, 255, 255, 32.49988 + 255, 255, 98, 83, 131, 109, 82, 92, 61, 50, 63, 51, 80, 60, 51, 46, 32.49989 + 45, 40, 33, 38, 44, 48, 62, 72, 75, 74, 78, 86, 92, 96, 101, 106, 32.49990 + 113, 117, 119, 120, 122, 128, 131, 134, 135, 134, 133, 132, 133, 136, 137, 137, 32.49991 + 138, 137, 137, 136, 135, 133, 133, 133, 133, 135, 138, 141, 143, 148, 148, 149, 32.49992 + 147, 146, 146, 149, 152, 155, 155, 155, 153, 149, 145, 139, 137, 146, 139, 131, 32.49993 + 128, 131, 136, 140, 141, 128, 128, 125, 119, 112, 110, 113, 116, 96, 92, 93, 32.49994 + 108, 112, 110, 102, 100, 93, 100, 108, 98, 87, 92, 95, 81, 80, 70, 61, 32.49995 + 51, 41, 29, 24, 26, 29, 28, 30, 35, 37, 33, 29, 28, 30, 30, 29, 32.49996 + 28, 27, 29, 32, 33, 34, 42, 255, 255, 255, 255, 255, 255, 255, 255, 106, 32.49997 + 85, 141, 128, 99, 108, 79, 66, 74, 52, 72, 62, 53, 48, 46, 41, 36, 32.49998 + 44, 54, 56, 68, 80, 85, 88, 96, 102, 103, 100, 105, 111, 115, 116, 118, 32.49999 + 121, 123, 130, 131, 132, 132, 130, 131, 133, 134, 130, 131, 132, 134, 135, 135, 32.50000 + 135, 135, 138, 138, 137, 137, 138, 139, 142, 143, 153, 153, 155, 152, 150, 147, 32.50001 + 146, 147, 149, 149, 150, 151, 149, 148, 145, 144, 143, 138, 131, 130, 133, 137, 32.50002 + 138, 138, 123, 126, 127, 124, 115, 108, 103, 102, 82, 92, 102, 100, 105, 107, 32.50003 + 108, 99, 97, 102, 109, 101, 91, 96, 99, 82, 88, 77, 66, 54, 40, 25, 32.50004 + 18, 18, 32, 32, 34, 39, 41, 36, 32, 32, 28, 28, 27, 26, 25, 28, 32.50005 + 33, 36, 52, 49, 255, 255, 255, 255, 255, 255, 255, 255, 101, 66, 127, 125, 32.50006 + 99, 102, 90, 91, 91, 61, 58, 64, 55, 51, 49, 44, 39, 49, 60, 66, 32.50007 + 80, 92, 96, 98, 106, 109, 106, 106, 110, 114, 118, 118, 119, 121, 123, 130, 32.50008 + 131, 131, 130, 129, 129, 132, 135, 130, 131, 133, 135, 136, 137, 138, 138, 142, 32.50009 + 141, 139, 140, 141, 141, 141, 139, 151, 150, 149, 146, 145, 146, 149, 153, 147, 32.50010 + 147, 148, 149, 147, 147, 145, 144, 137, 137, 137, 138, 138, 135, 130, 126, 128, 32.50011 + 131, 134, 132, 126, 116, 108, 103, 93, 101, 108, 92, 100, 105, 116, 107, 103, 32.50012 + 104, 109, 104, 98, 101, 102, 88, 86, 76, 67, 56, 43, 28, 21, 20, 29, 32.50013 + 30, 32, 36, 36, 32, 30, 32, 31, 31, 30, 28, 26, 30, 37, 42, 59, 32.50014 + 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 102, 112, 100, 95, 94, 32.50015 + 93, 86, 72, 66, 65, 57, 54, 52, 45, 40, 48, 59, 70, 88, 104, 105, 32.50016 + 102, 107, 111, 109, 111, 115, 116, 119, 120, 121, 123, 125, 129, 130, 132, 132, 32.50017 + 131, 130, 132, 133, 133, 134, 135, 137, 138, 138, 138, 138, 140, 139, 139, 140, 32.50018 + 144, 143, 140, 136, 143, 143, 142, 141, 143, 145, 150, 154, 150, 150, 150, 150, 32.50019 + 147, 147, 146, 146, 137, 140, 142, 142, 137, 133, 130, 128, 126, 126, 125, 124, 32.50020 + 121, 116, 109, 104, 108, 101, 105, 93, 109, 107, 120, 113, 111, 100, 103, 105, 32.50021 + 102, 102, 102, 91, 80, 72, 65, 56, 46, 32, 25, 25, 23, 26, 28, 31, 32.50022 + 28, 23, 25, 30, 32, 33, 32, 28, 26, 30, 39, 44, 55, 255, 255, 255, 32.50023 + 255, 255, 255, 255, 255, 255, 255, 123, 101, 117, 119, 107, 99, 81, 64, 74, 32.50024 + 80, 63, 58, 54, 53, 45, 38, 46, 56, 65, 90, 111, 108, 102, 106, 112, 32.50025 + 114, 115, 118, 119, 121, 121, 122, 124, 126, 127, 130, 134, 135, 134, 132, 131, 32.50026 + 131, 131, 132, 133, 133, 134, 131, 133, 133, 140, 140, 140, 144, 147, 146, 141, 32.50027 + 139, 142, 146, 148, 148, 147, 145, 143, 143, 151, 151, 150, 149, 149, 146, 147, 32.50028 + 145, 142, 142, 141, 136, 131, 132, 137, 142, 136, 131, 126, 125, 125, 124, 121, 32.50029 + 118, 109, 89, 94, 95, 121, 108, 115, 109, 113, 98, 97, 103, 102, 100, 98, 32.50030 + 91, 85, 77, 67, 58, 45, 30, 20, 18, 24, 27, 30, 32, 27, 22, 26, 32.50031 + 33, 32, 32, 31, 27, 24, 28, 37, 46, 255, 255, 255, 255, 255, 255, 255, 32.50032 + 255, 255, 255, 255, 229, 116, 101, 98, 94, 87, 79, 76, 73, 70, 73, 58, 32.50033 + 51, 57, 61, 56, 57, 61, 69, 89, 110, 112, 110, 112, 113, 110, 119, 121, 32.50034 + 122, 124, 124, 125, 127, 129, 128, 129, 131, 131, 127, 124, 128, 137, 127, 130, 32.50035 + 133, 134, 135, 133, 137, 139, 135, 138, 139, 140, 140, 140, 142, 145, 138, 140, 32.50036 + 142, 144, 148, 148, 147, 142, 139, 140, 143, 144, 144, 141, 141, 138, 142, 136, 32.50037 + 134, 137, 140, 137, 135, 136, 131, 124, 122, 125, 127, 123, 120, 119, 125, 121, 32.50038 + 119, 120, 119, 116, 117, 121, 113, 112, 109, 103, 95, 91, 91, 94, 82, 80, 32.50039 + 71, 66, 60, 40, 25, 32, 34, 31, 29, 32, 34, 32, 23, 15, 16, 20, 32.50040 + 23, 33, 39, 31, 29, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50041 + 255, 255, 207, 113, 106, 96, 85, 77, 74, 74, 73, 65, 58, 60, 65, 61, 32.50042 + 52, 54, 62, 69, 90, 109, 114, 113, 116, 117, 115, 118, 120, 122, 124, 126, 32.50043 + 128, 130, 132, 127, 125, 127, 131, 131, 129, 128, 132, 127, 130, 132, 134, 131, 32.50044 + 132, 133, 135, 135, 136, 138, 138, 138, 138, 141, 142, 141, 140, 142, 143, 147, 32.50045 + 147, 148, 144, 141, 140, 141, 142, 141, 140, 137, 136, 137, 132, 131, 135, 137, 32.50046 + 134, 131, 132, 128, 122, 121, 126, 129, 126, 124, 125, 124, 120, 119, 121, 119, 32.50047 + 116, 116, 119, 117, 112, 107, 104, 100, 97, 93, 90, 83, 80, 70, 66, 62, 32.50048 + 42, 27, 31, 31, 30, 29, 28, 28, 26, 24, 22, 38, 35, 26, 24, 27, 32.50049 + 26, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50050 + 117, 108, 96, 83, 75, 77, 77, 75, 66, 66, 74, 77, 63, 44, 45, 58, 32.50051 + 71, 92, 112, 116, 116, 120, 123, 121, 122, 122, 124, 126, 128, 129, 131, 131, 32.50052 + 132, 128, 127, 132, 134, 129, 125, 124, 126, 128, 130, 131, 131, 131, 132, 133, 32.50053 + 137, 137, 137, 137, 140, 140, 141, 141, 144, 142, 142, 143, 147, 148, 148, 147, 32.50054 + 145, 143, 143, 143, 141, 138, 135, 134, 135, 131, 131, 135, 136, 133, 130, 130, 32.50055 + 130, 126, 126, 130, 132, 129, 128, 129, 125, 122, 122, 124, 122, 118, 116, 118, 32.50056 + 119, 113, 105, 104, 103, 101, 94, 87, 86, 82, 70, 66, 63, 43, 26, 28, 32.50057 + 38, 38, 35, 31, 26, 25, 28, 32, 35, 36, 30, 26, 26, 22, 255, 255, 32.50058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 108, 32.50059 + 96, 91, 93, 89, 82, 65, 65, 75, 79, 64, 40, 43, 61, 76, 96, 115, 32.50060 + 119, 119, 123, 126, 124, 128, 127, 127, 127, 128, 128, 128, 127, 130, 127, 127, 32.50061 + 130, 130, 126, 123, 125, 123, 125, 128, 129, 128, 128, 130, 131, 136, 136, 136, 32.50062 + 137, 141, 142, 141, 140, 145, 144, 145, 146, 150, 151, 150, 147, 147, 147, 145, 32.50063 + 144, 141, 137, 135, 133, 136, 134, 135, 139, 139, 135, 132, 133, 135, 131, 131, 32.50064 + 133, 133, 128, 126, 128, 126, 123, 123, 126, 124, 118, 116, 117, 115, 111, 105, 32.50065 + 104, 102, 99, 92, 86, 90, 84, 72, 69, 65, 42, 23, 22, 34, 31, 25, 32.50066 + 20, 15, 15, 16, 18, 16, 25, 27, 28, 32, 106, 255, 255, 255, 255, 255, 32.50067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 101, 96, 95, 96, 32.50068 + 84, 69, 66, 62, 68, 74, 63, 42, 48, 66, 83, 102, 120, 123, 121, 125, 32.50069 + 127, 126, 131, 129, 127, 127, 128, 127, 125, 123, 122, 122, 123, 123, 119, 115, 32.50070 + 119, 126, 121, 123, 127, 128, 129, 130, 132, 134, 134, 133, 136, 138, 142, 143, 32.50071 + 143, 141, 144, 144, 147, 149, 151, 151, 148, 146, 149, 148, 146, 144, 141, 137, 32.50072 + 135, 133, 138, 136, 137, 140, 139, 135, 134, 136, 135, 133, 133, 135, 133, 128, 32.50073 + 127, 130, 128, 125, 125, 127, 125, 119, 116, 117, 111, 111, 109, 106, 102, 97, 32.50074 + 94, 92, 93, 87, 74, 70, 64, 39, 19, 18, 40, 33, 26, 23, 25, 27, 32.50075 + 26, 24, 19, 29, 30, 81, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 116, 116, 117, 117, 100, 79, 82, 32.50077 + 70, 70, 73, 58, 37, 42, 60, 89, 108, 125, 127, 125, 129, 131, 130, 133, 32.50078 + 129, 126, 125, 126, 125, 121, 118, 121, 120, 118, 113, 103, 94, 97, 105, 109, 32.50079 + 113, 117, 120, 123, 125, 128, 130, 129, 128, 131, 135, 141, 143, 142, 139, 144, 32.50080 + 143, 144, 146, 148, 148, 147, 143, 146, 145, 143, 141, 139, 136, 135, 134, 137, 32.50081 + 135, 135, 137, 135, 132, 133, 137, 131, 130, 132, 135, 134, 130, 131, 135, 130, 32.50082 + 126, 125, 126, 123, 117, 115, 116, 111, 112, 112, 106, 100, 96, 95, 95, 89, 32.50083 + 86, 77, 71, 61, 35, 16, 18, 41, 34, 27, 28, 35, 42, 44, 43, 34, 32.50084 + 47, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50085 + 255, 255, 255, 255, 255, 255, 130, 94, 97, 99, 81, 59, 84, 72, 71, 75, 32.50086 + 58, 34, 41, 64, 93, 112, 129, 132, 131, 135, 139, 137, 141, 135, 128, 124, 32.50087 + 122, 118, 111, 105, 104, 101, 101, 98, 91, 82, 81, 85, 91, 95, 101, 106, 32.50088 + 110, 113, 118, 121, 124, 123, 125, 130, 139, 142, 140, 136, 144, 140, 136, 135, 32.50089 + 137, 140, 143, 144, 141, 139, 138, 136, 134, 133, 132, 132, 136, 134, 133, 134, 32.50090 + 131, 128, 131, 137, 131, 131, 134, 136, 135, 130, 132, 136, 131, 126, 123, 123, 32.50091 + 120, 115, 113, 115, 111, 108, 104, 101, 97, 95, 92, 91, 81, 82, 77, 71, 32.50092 + 59, 33, 17, 24, 28, 22, 16, 16, 23, 33, 42, 47, 51, 128, 255, 255, 32.50093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50094 + 255, 255, 255, 223, 106, 111, 113, 100, 76, 64, 58, 64, 74, 62, 43, 58, 32.50095 + 87, 95, 114, 132, 135, 135, 140, 144, 144, 151, 143, 132, 125, 119, 111, 101, 32.50096 + 93, 73, 70, 75, 83, 88, 88, 87, 88, 74, 78, 85, 90, 95, 100, 106, 32.50097 + 109, 119, 118, 120, 127, 136, 140, 138, 134, 144, 139, 131, 128, 130, 135, 141, 32.50098 + 143, 136, 135, 134, 132, 131, 131, 131, 131, 138, 135, 134, 134, 131, 128, 133, 32.50099 + 140, 135, 134, 136, 137, 133, 128, 128, 133, 130, 125, 121, 120, 117, 112, 111, 32.50100 + 114, 110, 103, 95, 93, 93, 93, 88, 83, 74, 79, 76, 72, 59, 34, 21, 32.50101 + 28, 37, 33, 27, 23, 26, 37, 52, 127, 255, 255, 255, 255, 255, 255, 255, 32.50102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50103 + 255, 96, 114, 122, 110, 88, 67, 66, 59, 55, 50, 39, 55, 93, 105, 121, 32.50104 + 137, 141, 139, 140, 145, 148, 140, 147, 148, 138, 127, 122, 119, 115, 117, 117, 32.50105 + 114, 107, 102, 98, 101, 103, 105, 88, 86, 70, 88, 80, 89, 78, 86, 87, 32.50106 + 91, 95, 101, 108, 114, 118, 109, 120, 124, 120, 121, 130, 132, 126, 129, 127, 32.50107 + 127, 127, 127, 127, 127, 127, 130, 129, 129, 128, 129, 131, 132, 136, 137, 139, 32.50108 + 138, 134, 128, 125, 125, 127, 121, 127, 125, 118, 116, 119, 114, 104, 100, 99, 32.50109 + 93, 87, 85, 85, 83, 78, 71, 77, 78, 73, 54, 27, 21, 37, 41, 35, 32.50110 + 32, 33, 34, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 106, 32.50112 + 105, 102, 98, 73, 81, 68, 57, 61, 51, 56, 85, 113, 127, 141, 145, 144, 32.50113 + 146, 148, 148, 144, 147, 145, 139, 135, 135, 132, 126, 122, 125, 128, 131, 133, 32.50114 + 129, 126, 122, 120, 119, 126, 100, 90, 62, 65, 62, 68, 68, 72, 73, 73, 32.50115 + 72, 71, 71, 97, 108, 113, 111, 114, 125, 129, 126, 126, 126, 126, 125, 126, 32.50116 + 126, 127, 127, 133, 132, 130, 129, 128, 127, 127, 130, 128, 129, 129, 127, 123, 32.50117 + 120, 119, 119, 116, 119, 119, 116, 114, 113, 107, 101, 96, 92, 82, 70, 66, 32.50118 + 69, 69, 67, 70, 71, 75, 69, 46, 26, 29, 41, 28, 26, 29, 35, 38, 32.50119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 96, 104, 121, 32.50121 + 81, 99, 84, 76, 100, 90, 80, 106, 128, 138, 147, 150, 152, 154, 153, 149, 32.50122 + 147, 144, 139, 135, 137, 139, 136, 130, 130, 125, 120, 118, 122, 125, 127, 127, 32.50123 + 135, 124, 127, 124, 137, 117, 94, 67, 66, 62, 57, 53, 55, 65, 75, 85, 32.50124 + 86, 95, 100, 99, 105, 118, 123, 123, 124, 124, 123, 122, 123, 124, 126, 127, 32.50125 + 131, 130, 129, 128, 126, 125, 124, 126, 132, 131, 128, 126, 123, 119, 114, 110, 32.50126 + 109, 106, 105, 105, 99, 89, 82, 81, 73, 70, 64, 56, 54, 56, 55, 50, 32.50127 + 55, 51, 66, 69, 41, 27, 36, 38, 39, 36, 34, 35, 255, 255, 255, 255, 32.50128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 95, 108, 133, 172, 163, 107, 32.50130 + 76, 96, 81, 74, 116, 142, 148, 152, 155, 159, 161, 156, 148, 145, 140, 132, 32.50131 + 127, 126, 127, 125, 121, 117, 119, 121, 124, 126, 123, 119, 114, 123, 121, 121, 32.50132 + 113, 114, 115, 128, 136, 105, 95, 82, 69, 63, 68, 79, 89, 86, 93, 95, 32.50133 + 95, 100, 111, 118, 120, 123, 122, 121, 120, 121, 123, 125, 126, 124, 125, 125, 32.50134 + 126, 125, 124, 123, 125, 119, 114, 105, 98, 93, 88, 81, 76, 73, 67, 66, 32.50135 + 70, 66, 56, 54, 60, 56, 63, 67, 70, 71, 69, 60, 51, 40, 34, 63, 32.50136 + 72, 41, 30, 38, 26, 28, 37, 50, 60, 255, 255, 255, 255, 255, 255, 255, 32.50137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50138 + 255, 255, 255, 255, 255, 255, 114, 91, 99, 119, 160, 160, 130, 130, 155, 119, 32.50139 + 88, 122, 153, 156, 157, 159, 164, 165, 158, 148, 142, 137, 130, 123, 118, 116, 32.50140 + 116, 119, 117, 112, 109, 104, 104, 106, 113, 117, 98, 106, 109, 109, 103, 103, 32.50141 + 106, 111, 103, 105, 105, 100, 91, 85, 83, 85, 95, 98, 99, 98, 98, 106, 32.50142 + 113, 116, 119, 119, 118, 118, 118, 119, 121, 122, 119, 120, 121, 122, 121, 119, 32.50143 + 117, 118, 108, 101, 88, 78, 73, 68, 64, 61, 43, 39, 43, 52, 56, 56, 32.50144 + 64, 76, 80, 90, 97, 102, 103, 97, 84, 71, 50, 42, 66, 71, 39, 31, 32.50145 + 39, 26, 38, 43, 47, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50147 + 255, 255, 255, 255, 86, 89, 100, 198, 178, 131, 112, 124, 101, 93, 133, 161, 32.50148 + 162, 162, 163, 167, 168, 160, 150, 142, 136, 129, 125, 120, 116, 118, 121, 120, 32.50149 + 110, 100, 89, 85, 84, 88, 89, 103, 103, 103, 121, 125, 129, 109, 96, 91, 32.50150 + 97, 105, 108, 104, 102, 102, 105, 105, 105, 105, 104, 103, 106, 111, 115, 119, 32.50151 + 119, 119, 119, 119, 119, 119, 118, 120, 121, 122, 122, 119, 115, 110, 109, 104, 32.50152 + 99, 89, 80, 76, 74, 74, 74, 69, 70, 75, 82, 86, 92, 102, 113, 116, 32.50153 + 120, 119, 117, 113, 107, 96, 86, 77, 70, 74, 66, 40, 37, 50, 47, 60, 32.50154 + 62, 59, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50156 + 255, 84, 87, 93, 126, 128, 108, 97, 110, 110, 111, 130, 165, 167, 168, 167, 32.50157 + 169, 169, 162, 153, 145, 134, 125, 124, 124, 120, 119, 119, 98, 94, 96, 100, 32.50158 + 100, 85, 61, 41, 43, 55, 51, 54, 34, 49, 65, 88, 94, 101, 105, 105, 32.50159 + 99, 97, 99, 103, 108, 108, 106, 107, 107, 109, 111, 115, 119, 120, 121, 121, 32.50160 + 120, 119, 116, 115, 118, 119, 121, 121, 118, 112, 107, 105, 90, 90, 87, 82, 32.50161 + 79, 77, 79, 80, 96, 103, 109, 108, 108, 113, 119, 121, 120, 121, 118, 112, 32.50162 + 106, 103, 96, 88, 88, 87, 79, 64, 51, 53, 67, 77, 56, 77, 150, 255, 32.50163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 85, 32.50165 + 90, 121, 139, 132, 113, 119, 133, 139, 138, 168, 168, 169, 168, 168, 168, 164, 32.50166 + 156, 148, 132, 120, 120, 123, 120, 114, 112, 93, 70, 47, 41, 52, 62, 58, 32.50167 + 51, 36, 45, 39, 58, 47, 59, 46, 45, 52, 68, 89, 102, 105, 101, 100, 32.50168 + 98, 106, 106, 106, 108, 109, 109, 113, 118, 119, 120, 122, 123, 122, 119, 115, 32.50169 + 113, 113, 115, 118, 119, 118, 113, 108, 107, 95, 100, 101, 101, 97, 96, 96, 32.50170 + 99, 85, 99, 106, 103, 102, 106, 109, 106, 106, 109, 108, 105, 103, 102, 96, 32.50171 + 88, 79, 86, 80, 66, 67, 70, 80, 98, 85, 99, 255, 255, 255, 255, 255, 32.50172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 81, 72, 102, 174, 32.50174 + 151, 145, 160, 168, 139, 132, 157, 183, 179, 175, 175, 166, 164, 151, 143, 137, 32.50175 + 130, 117, 111, 121, 125, 110, 88, 87, 63, 43, 45, 44, 56, 86, 105, 51, 32.50176 + 93, 89, 52, 130, 71, 84, 53, 43, 29, 56, 107, 105, 84, 96, 102, 104, 32.50177 + 103, 102, 99, 103, 112, 119, 115, 118, 121, 122, 122, 121, 118, 117, 121, 119, 32.50178 + 115, 113, 112, 110, 107, 105, 102, 93, 91, 101, 104, 98, 92, 95, 80, 62, 32.50179 + 47, 56, 74, 84, 87, 87, 86, 84, 89, 101, 106, 99, 85, 76, 87, 86, 32.50180 + 80, 73, 81, 99, 107, 103, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50182 + 255, 255, 255, 255, 255, 255, 255, 255, 73, 71, 66, 88, 157, 152, 139, 154, 32.50183 + 165, 153, 139, 158, 182, 178, 174, 174, 163, 158, 143, 148, 140, 136, 130, 124, 32.50184 + 127, 127, 115, 122, 112, 95, 87, 95, 100, 104, 116, 125, 70, 96, 70, 79, 32.50185 + 92, 99, 102, 61, 120, 114, 57, 52, 78, 89, 93, 89, 94, 100, 107, 108, 32.50186 + 107, 103, 102, 119, 121, 123, 125, 125, 123, 121, 119, 117, 119, 118, 114, 106, 32.50187 + 99, 95, 93, 91, 94, 98, 93, 76, 55, 60, 76, 73, 66, 58, 54, 49, 32.50188 + 38, 23, 11, 64, 74, 87, 92, 89, 82, 82, 89, 90, 90, 85, 79, 90, 32.50189 + 107, 116, 112, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50191 + 255, 255, 255, 255, 255, 80, 79, 90, 107, 157, 163, 140, 145, 146, 157, 136, 32.50192 + 157, 182, 180, 177, 178, 167, 160, 144, 154, 142, 141, 143, 137, 132, 129, 121, 32.50193 + 120, 116, 119, 114, 93, 85, 94, 101, 108, 86, 92, 78, 99, 55, 84, 74, 32.50194 + 97, 147, 148, 102, 84, 86, 90, 99, 98, 99, 99, 103, 104, 108, 109, 111, 32.50195 + 122, 124, 127, 128, 128, 127, 124, 122, 118, 119, 116, 108, 97, 90, 88, 90, 32.50196 + 81, 75, 70, 67, 61, 58, 70, 84, 39, 66, 83, 71, 52, 42, 44, 48, 32.50197 + 29, 44, 66, 81, 85, 84, 86, 93, 91, 94, 92, 89, 97, 112, 120, 118, 32.50198 + 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50200 + 255, 255, 255, 93, 115, 134, 152, 162, 144, 143, 130, 155, 136, 154, 181, 181, 32.50201 + 182, 185, 174, 168, 152, 158, 140, 140, 148, 142, 131, 128, 125, 125, 124, 137, 32.50202 + 134, 100, 84, 89, 87, 94, 103, 70, 77, 81, 81, 110, 131, 140, 139, 134, 32.50203 + 130, 118, 82, 63, 74, 104, 106, 106, 105, 102, 105, 111, 121, 124, 126, 130, 32.50204 + 132, 132, 130, 126, 124, 124, 118, 107, 97, 91, 90, 92, 95, 95, 93, 93, 32.50205 + 93, 88, 76, 72, 74, 93, 84, 71, 74, 99, 119, 101, 69, 32, 29, 35, 32.50206 + 56, 79, 91, 91, 91, 92, 95, 95, 93, 101, 111, 118, 116, 113, 255, 255, 32.50207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50209 + 200, 109, 125, 121, 139, 149, 157, 134, 155, 140, 151, 180, 182, 183, 187, 177, 32.50210 + 170, 154, 160, 139, 138, 147, 142, 131, 130, 131, 139, 121, 127, 140, 131, 126, 32.50211 + 118, 97, 64, 102, 93, 110, 101, 118, 90, 105, 103, 107, 103, 92, 86, 77, 32.50212 + 76, 82, 94, 106, 116, 117, 108, 102, 104, 109, 124, 127, 131, 133, 133, 131, 32.50213 + 127, 124, 124, 112, 98, 92, 94, 95, 93, 89, 98, 111, 121, 115, 95, 79, 32.50214 + 81, 92, 82, 92, 95, 95, 104, 115, 106, 88, 63, 42, 31, 41, 66, 85, 32.50215 + 93, 94, 94, 98, 99, 99, 105, 112, 114, 114, 109, 255, 255, 255, 255, 255, 32.50216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 112, 32.50218 + 110, 128, 161, 170, 146, 149, 135, 152, 181, 181, 182, 184, 174, 167, 151, 159, 32.50219 + 140, 138, 145, 141, 134, 135, 135, 124, 115, 121, 131, 133, 130, 125, 116, 113, 32.50220 + 125, 121, 85, 86, 98, 79, 87, 72, 71, 74, 77, 85, 95, 107, 113, 106, 32.50221 + 114, 118, 116, 105, 102, 108, 116, 123, 126, 130, 133, 133, 130, 126, 123, 117, 32.50222 + 105, 94, 93, 99, 100, 91, 80, 47, 72, 106, 129, 129, 107, 82, 64, 80, 32.50223 + 78, 79, 94, 118, 124, 97, 61, 57, 51, 54, 65, 79, 88, 94, 98, 98, 32.50224 + 101, 104, 106, 110, 113, 114, 114, 161, 255, 255, 255, 255, 255, 255, 255, 255, 32.50225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 113, 127, 129, 157, 32.50227 + 159, 150, 138, 123, 151, 180, 180, 180, 184, 174, 168, 153, 152, 138, 137, 142, 32.50228 + 139, 137, 138, 133, 122, 127, 130, 127, 125, 118, 119, 133, 112, 118, 135, 118, 32.50229 + 135, 126, 112, 103, 115, 93, 94, 112, 115, 105, 105, 107, 122, 119, 112, 106, 32.50230 + 101, 106, 116, 124, 120, 123, 128, 131, 131, 128, 123, 120, 114, 102, 92, 91, 32.50231 + 98, 102, 99, 93, 120, 99, 78, 73, 85, 95, 94, 87, 79, 89, 101, 100, 32.50232 + 90, 78, 73, 69, 58, 63, 78, 94, 101, 99, 97, 97, 96, 99, 105, 111, 32.50233 + 113, 114, 114, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 112, 140, 125, 139, 135, 145, 133, 32.50236 + 118, 148, 179, 179, 181, 186, 178, 174, 160, 144, 134, 136, 139, 137, 137, 137, 32.50237 + 126, 129, 128, 115, 111, 125, 120, 115, 128, 129, 125, 115, 124, 129, 126, 130, 32.50238 + 125, 128, 123, 128, 120, 106, 107, 115, 115, 112, 109, 105, 107, 110, 112, 111, 32.50239 + 109, 118, 121, 126, 129, 129, 126, 121, 118, 116, 103, 89, 85, 92, 104, 113, 32.50240 + 117, 113, 111, 109, 110, 111, 107, 95, 83, 81, 70, 62, 62, 68, 70, 75, 32.50241 + 78, 98, 90, 87, 92, 98, 98, 96, 97, 93, 98, 105, 111, 113, 114, 146, 32.50242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50244 + 255, 255, 255, 255, 255, 255, 255, 70, 148, 168, 123, 127, 125, 103, 121, 184, 32.50245 + 187, 181, 193, 172, 158, 163, 151, 145, 141, 137, 131, 124, 128, 135, 134, 128, 32.50246 + 126, 127, 127, 119, 115, 114, 115, 117, 119, 122, 122, 122, 123, 120, 112, 115, 32.50247 + 120, 119, 115, 112, 112, 113, 108, 112, 116, 116, 113, 112, 111, 113, 122, 121, 32.50248 + 121, 125, 128, 127, 122, 117, 113, 102, 92, 92, 96, 100, 105, 111, 105, 110, 32.50249 + 114, 117, 119, 117, 113, 112, 128, 119, 109, 106, 111, 112, 108, 101, 98, 92, 32.50250 + 91, 97, 107, 108, 100, 93, 89, 94, 104, 111, 114, 112, 224, 255, 255, 255, 32.50251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50253 + 255, 255, 255, 255, 211, 166, 194, 179, 152, 137, 109, 103, 165, 179, 178, 187, 32.50254 + 175, 165, 157, 148, 143, 142, 145, 145, 138, 135, 136, 131, 124, 122, 125, 127, 32.50255 + 122, 118, 117, 123, 123, 124, 124, 125, 124, 123, 121, 121, 122, 123, 122, 120, 32.50256 + 117, 116, 115, 112, 114, 116, 115, 113, 112, 109, 109, 122, 121, 121, 124, 127, 32.50257 + 127, 122, 117, 112, 101, 91, 90, 93, 97, 102, 107, 110, 109, 109, 107, 108, 32.50258 + 111, 112, 113, 125, 119, 112, 111, 113, 113, 106, 98, 101, 100, 101, 105, 112, 32.50259 + 110, 105, 98, 95, 96, 104, 111, 112, 158, 255, 255, 255, 255, 255, 255, 255, 32.50260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50262 + 255, 255, 210, 91, 62, 104, 164, 107, 112, 155, 174, 181, 182, 176, 172, 148, 32.50263 + 147, 141, 138, 141, 145, 141, 136, 133, 132, 125, 123, 128, 132, 129, 126, 124, 32.50264 + 128, 128, 126, 125, 124, 123, 123, 123, 125, 121, 119, 117, 116, 115, 112, 110, 32.50265 + 114, 113, 113, 114, 115, 115, 113, 112, 122, 121, 122, 125, 128, 127, 122, 117, 32.50266 + 111, 100, 91, 89, 91, 94, 98, 102, 109, 108, 106, 107, 107, 110, 112, 113, 32.50267 + 114, 113, 112, 111, 112, 110, 106, 100, 107, 106, 108, 112, 114, 109, 104, 101, 32.50268 + 99, 100, 106, 110, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50271 + 255, 121, 128, 125, 140, 160, 166, 175, 189, 182, 172, 172, 143, 152, 145, 138, 32.50272 + 134, 135, 135, 135, 136, 131, 124, 121, 127, 132, 133, 128, 125, 129, 127, 125, 32.50273 + 123, 123, 124, 124, 124, 124, 120, 116, 115, 116, 116, 114, 111, 112, 110, 110, 32.50274 + 113, 118, 120, 119, 117, 124, 123, 124, 127, 130, 129, 124, 119, 113, 102, 92, 32.50275 + 90, 92, 93, 96, 100, 102, 105, 109, 112, 114, 114, 114, 113, 107, 110, 112, 32.50276 + 113, 114, 114, 114, 112, 109, 109, 109, 109, 107, 104, 101, 101, 101, 102, 104, 32.50277 + 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 114, 32.50280 + 171, 230, 207, 179, 171, 192, 184, 166, 167, 144, 150, 150, 145, 138, 134, 134, 32.50281 + 138, 141, 132, 125, 122, 127, 131, 131, 127, 126, 128, 127, 127, 126, 126, 127, 32.50282 + 129, 129, 126, 121, 117, 117, 119, 120, 118, 116, 115, 113, 111, 114, 119, 122, 32.50283 + 121, 119, 126, 125, 126, 129, 132, 131, 126, 122, 116, 105, 96, 94, 95, 95, 32.50284 + 98, 101, 97, 100, 105, 110, 113, 114, 116, 116, 115, 119, 120, 119, 119, 120, 32.50285 + 123, 125, 111, 109, 109, 106, 101, 99, 100, 104, 98, 98, 98, 255, 255, 255, 32.50286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 206, 215, 209, 32.50289 + 175, 162, 186, 182, 164, 164, 145, 138, 144, 147, 142, 138, 136, 137, 136, 135, 32.50290 + 131, 129, 132, 135, 132, 131, 133, 132, 132, 133, 133, 133, 134, 135, 135, 124, 32.50291 + 121, 120, 120, 121, 121, 120, 118, 122, 120, 118, 118, 119, 120, 120, 119, 127, 32.50292 + 126, 126, 130, 133, 132, 127, 122, 119, 108, 99, 98, 99, 99, 100, 103, 102, 32.50293 + 101, 100, 101, 104, 109, 115, 119, 124, 123, 124, 122, 120, 120, 121, 120, 111, 32.50294 + 109, 106, 105, 101, 100, 100, 104, 93, 92, 146, 255, 255, 255, 255, 255, 255, 32.50295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 184, 167, 161, 159, 178, 32.50298 + 180, 167, 163, 142, 140, 144, 144, 139, 138, 138, 136, 131, 137, 135, 137, 139, 32.50299 + 138, 135, 137, 142, 138, 139, 139, 139, 139, 138, 137, 136, 122, 121, 123, 122, 32.50300 + 122, 119, 118, 118, 122, 122, 123, 121, 120, 119, 121, 123, 126, 125, 125, 128, 32.50301 + 131, 131, 126, 121, 120, 109, 101, 100, 101, 101, 102, 105, 107, 105, 102, 101, 32.50302 + 101, 106, 111, 114, 120, 119, 120, 119, 119, 117, 115, 111, 107, 105, 104, 103, 32.50303 + 104, 102, 98, 99, 91, 86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50306 + 255, 255, 255, 255, 255, 255, 255, 233, 154, 127, 151, 160, 173, 178, 171, 164, 32.50307 + 137, 158, 155, 146, 136, 137, 142, 140, 133, 128, 129, 132, 134, 131, 128, 133, 32.50308 + 140, 141, 140, 142, 141, 141, 137, 136, 134, 128, 131, 134, 133, 128, 123, 124, 32.50309 + 122, 121, 123, 125, 123, 120, 121, 125, 129, 124, 123, 123, 127, 130, 129, 124, 32.50310 + 119, 119, 109, 101, 100, 102, 102, 103, 106, 109, 108, 111, 110, 111, 110, 109, 32.50311 + 109, 117, 119, 120, 122, 124, 122, 118, 110, 100, 99, 101, 105, 107, 102, 97, 32.50312 + 93, 88, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50315 + 255, 255, 255, 255, 255, 149, 128, 135, 149, 181, 171, 176, 154, 140, 145, 144, 32.50316 + 141, 136, 133, 131, 132, 134, 135, 130, 130, 135, 135, 130, 132, 135, 140, 139, 32.50317 + 141, 138, 139, 136, 137, 134, 129, 129, 131, 131, 126, 118, 119, 121, 125, 120, 32.50318 + 121, 127, 129, 125, 123, 125, 125, 126, 126, 127, 130, 134, 130, 123, 110, 106, 32.50319 + 104, 104, 102, 100, 105, 112, 111, 112, 117, 116, 116, 116, 119, 121, 119, 121, 32.50320 + 121, 121, 121, 120, 120, 118, 111, 112, 103, 98, 107, 104, 95, 92, 82, 255, 32.50321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50324 + 255, 255, 216, 130, 129, 140, 165, 169, 172, 161, 151, 150, 146, 140, 136, 137, 32.50325 + 135, 133, 130, 132, 128, 128, 132, 132, 128, 128, 132, 136, 134, 131, 128, 126, 32.50326 + 125, 126, 126, 123, 121, 121, 120, 113, 107, 107, 112, 115, 112, 113, 120, 123, 32.50327 + 121, 119, 121, 121, 122, 122, 122, 126, 129, 125, 118, 113, 108, 104, 102, 98, 32.50328 + 95, 98, 104, 110, 113, 117, 120, 122, 121, 121, 120, 122, 122, 122, 122, 122, 32.50329 + 121, 121, 119, 111, 111, 110, 112, 112, 98, 98, 117, 126, 255, 255, 255, 255, 32.50330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50333 + 125, 125, 146, 164, 181, 169, 159, 149, 151, 143, 136, 134, 138, 137, 131, 124, 32.50334 + 128, 126, 126, 128, 128, 126, 126, 128, 131, 131, 129, 127, 124, 121, 118, 116, 32.50335 + 113, 110, 107, 105, 101, 97, 101, 109, 112, 110, 113, 119, 123, 123, 122, 124, 32.50336 + 119, 120, 119, 119, 122, 126, 123, 116, 113, 107, 103, 100, 95, 90, 93, 98, 32.50337 + 103, 106, 112, 119, 125, 126, 124, 122, 124, 124, 124, 124, 124, 123, 122, 119, 32.50338 + 113, 110, 108, 112, 108, 97, 117, 161, 255, 255, 255, 255, 255, 255, 255, 255, 32.50339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 160, 32.50342 + 164, 184, 160, 154, 148, 142, 137, 132, 130, 133, 132, 127, 123, 125, 124, 124, 32.50343 + 125, 125, 124, 124, 125, 124, 126, 129, 129, 125, 118, 110, 105, 108, 105, 102, 32.50344 + 101, 99, 99, 108, 118, 115, 114, 116, 121, 125, 126, 125, 125, 120, 121, 120, 32.50345 + 119, 122, 126, 123, 116, 111, 106, 101, 99, 94, 90, 93, 99, 92, 95, 102, 32.50346 + 112, 121, 127, 127, 126, 124, 125, 125, 125, 125, 123, 122, 121, 119, 114, 105, 32.50347 + 101, 103, 104, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 170, 156, 171, 149, 32.50351 + 150, 152, 135, 134, 132, 129, 128, 126, 126, 127, 123, 124, 124, 123, 123, 124, 32.50352 + 124, 123, 120, 120, 120, 119, 116, 111, 106, 103, 112, 109, 106, 105, 103, 104, 32.50353 + 113, 124, 117, 118, 119, 121, 123, 125, 124, 121, 121, 122, 120, 118, 121, 125, 32.50354 + 122, 116, 114, 108, 104, 100, 95, 91, 93, 98, 88, 90, 96, 104, 112, 119, 32.50355 + 123, 124, 123, 124, 125, 125, 124, 122, 120, 119, 115, 117, 108, 98, 101, 99, 32.50356 + 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 161, 169, 155, 140, 137, 135, 32.50360 + 135, 133, 128, 126, 124, 127, 130, 120, 122, 122, 120, 120, 122, 122, 120, 125, 32.50361 + 121, 115, 110, 108, 110, 113, 116, 119, 115, 112, 110, 107, 106, 112, 121, 122, 32.50362 + 124, 125, 124, 126, 129, 126, 121, 122, 122, 120, 117, 120, 124, 122, 116, 120, 32.50363 + 114, 108, 103, 96, 90, 91, 96, 91, 94, 99, 102, 105, 109, 114, 117, 121, 32.50364 + 122, 123, 124, 123, 120, 117, 115, 108, 118, 116, 108, 103, 79, 118, 255, 255, 32.50365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50368 + 255, 255, 255, 255, 255, 255, 228, 157, 161, 165, 137, 128, 140, 136, 129, 124, 32.50369 + 123, 123, 124, 124, 116, 120, 120, 116, 116, 120, 120, 116, 121, 118, 113, 110, 32.50370 + 110, 114, 118, 122, 119, 117, 115, 114, 110, 107, 111, 118, 124, 127, 128, 126, 32.50371 + 127, 131, 129, 123, 126, 125, 122, 120, 123, 127, 125, 119, 121, 115, 109, 104, 32.50372 + 97, 91, 92, 97, 92, 99, 106, 108, 106, 105, 109, 114, 119, 120, 121, 122, 32.50373 + 121, 118, 114, 112, 107, 114, 115, 110, 96, 60, 255, 255, 255, 255, 255, 255, 32.50374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50377 + 255, 255, 255, 255, 134, 135, 165, 146, 143, 145, 135, 123, 118, 120, 121, 119, 32.50378 + 116, 113, 118, 118, 113, 113, 118, 118, 113, 106, 108, 111, 113, 114, 115, 114, 32.50379 + 113, 116, 115, 116, 117, 113, 110, 113, 120, 117, 122, 122, 120, 123, 127, 125, 32.50380 + 119, 131, 130, 127, 124, 127, 131, 129, 123, 117, 111, 107, 103, 98, 93, 95, 32.50381 + 101, 89, 100, 111, 114, 109, 106, 110, 115, 117, 118, 120, 121, 119, 116, 112, 32.50382 + 110, 114, 111, 106, 102, 86, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50386 + 255, 214, 146, 122, 147, 146, 142, 140, 133, 126, 126, 126, 122, 116, 114, 116, 32.50387 + 119, 118, 115, 111, 109, 109, 104, 107, 111, 113, 113, 113, 114, 115, 109, 111, 32.50388 + 113, 114, 114, 113, 111, 110, 116, 119, 122, 124, 124, 123, 124, 124, 118, 119, 32.50389 + 122, 127, 131, 132, 129, 127, 118, 117, 112, 102, 92, 90, 97, 105, 95, 102, 32.50390 + 111, 116, 115, 111, 107, 106, 111, 113, 116, 117, 116, 114, 111, 110, 105, 108, 32.50391 + 104, 104, 123, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 32.50395 + 147, 142, 149, 141, 139, 133, 126, 126, 127, 123, 118, 119, 120, 120, 118, 114, 32.50396 + 110, 108, 108, 104, 106, 107, 107, 105, 105, 106, 107, 113, 114, 116, 117, 117, 32.50397 + 117, 115, 115, 122, 123, 124, 123, 121, 122, 126, 130, 119, 124, 131, 138, 141, 32.50398 + 137, 129, 123, 112, 114, 113, 107, 100, 97, 98, 101, 98, 104, 112, 115, 113, 32.50399 + 109, 106, 104, 108, 109, 112, 114, 115, 114, 110, 108, 112, 107, 110, 131, 153, 32.50400 + 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 141, 149, 32.50404 + 140, 139, 133, 126, 125, 127, 125, 120, 125, 125, 122, 118, 112, 108, 107, 107, 32.50405 + 115, 115, 115, 112, 109, 108, 109, 110, 107, 108, 108, 109, 109, 110, 110, 110, 32.50406 + 107, 112, 116, 117, 114, 114, 119, 123, 131, 135, 141, 146, 148, 144, 136, 130, 32.50407 + 118, 116, 112, 107, 104, 101, 100, 100, 103, 107, 113, 115, 114, 110, 107, 106, 32.50408 + 104, 104, 106, 110, 114, 113, 108, 105, 108, 101, 115, 155, 176, 170, 255, 255, 32.50409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 142, 139, 139, 134, 32.50413 + 126, 125, 127, 126, 123, 131, 129, 125, 118, 112, 108, 107, 108, 109, 110, 110, 32.50414 + 108, 105, 103, 104, 105, 111, 111, 111, 111, 112, 114, 115, 116, 112, 113, 112, 32.50415 + 108, 104, 107, 118, 127, 128, 127, 127, 128, 130, 130, 129, 127, 127, 118, 107, 32.50416 + 100, 98, 100, 102, 103, 106, 108, 112, 114, 114, 113, 111, 110, 100, 100, 102, 32.50417 + 107, 112, 112, 106, 103, 106, 110, 131, 165, 176, 167, 255, 255, 255, 255, 255, 32.50418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 140, 140, 135, 126, 124, 126, 32.50422 + 127, 125, 132, 130, 126, 119, 113, 110, 110, 111, 109, 110, 111, 109, 107, 105, 32.50423 + 105, 106, 103, 103, 103, 104, 106, 108, 109, 110, 120, 116, 106, 95, 88, 90, 32.50424 + 101, 111, 121, 120, 119, 120, 122, 123, 123, 122, 117, 109, 99, 94, 95, 98, 32.50425 + 100, 99, 102, 103, 105, 108, 111, 112, 111, 111, 99, 100, 103, 108, 111, 109, 32.50426 + 104, 102, 119, 141, 165, 177, 178, 177, 255, 255, 255, 255, 255, 255, 255, 255, 32.50427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50430 + 255, 255, 255, 255, 255, 255, 214, 141, 141, 136, 127, 123, 125, 126, 126, 130, 32.50431 + 129, 126, 120, 115, 113, 114, 115, 110, 109, 106, 101, 97, 96, 98, 100, 108, 32.50432 + 109, 110, 112, 114, 116, 117, 118, 112, 115, 118, 117, 109, 99, 89, 84, 106, 32.50433 + 107, 110, 114, 116, 115, 110, 106, 97, 95, 95, 97, 100, 100, 96, 93, 98, 32.50434 + 97, 97, 100, 104, 107, 108, 107, 101, 104, 109, 112, 111, 107, 102, 101, 105, 32.50435 + 142, 166, 167, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50439 + 255, 255, 255, 255, 255, 143, 138, 127, 122, 123, 126, 126, 126, 126, 125, 122, 32.50440 + 118, 117, 118, 120, 104, 97, 86, 74, 67, 66, 71, 75, 72, 73, 76, 79, 32.50441 + 81, 82, 83, 83, 105, 111, 120, 128, 131, 124, 113, 103, 98, 98, 100, 102, 32.50442 + 103, 102, 97, 93, 95, 97, 99, 102, 103, 101, 97, 93, 99, 96, 95, 96, 32.50443 + 101, 104, 105, 105, 104, 110, 116, 117, 111, 104, 100, 102, 119, 150, 170, 169, 32.50444 + 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50448 + 255, 255, 218, 139, 127, 122, 122, 125, 125, 123, 124, 124, 122, 120, 120, 121, 32.50449 + 123, 120, 109, 91, 73, 62, 62, 69, 76, 75, 78, 83, 87, 90, 90, 90, 32.50450 + 89, 89, 81, 74, 77, 90, 109, 125, 133, 130, 126, 121, 119, 119, 120, 120, 32.50451 + 120, 110, 109, 107, 106, 103, 101, 101, 100, 104, 101, 98, 97, 101, 105, 105, 32.50452 + 103, 106, 114, 121, 120, 112, 104, 101, 105, 70, 89, 99, 93, 85, 255, 255, 32.50453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50457 + 216, 137, 134, 130, 124, 121, 125, 126, 126, 127, 125, 123, 121, 119, 122, 117, 32.50458 + 107, 94, 80, 67, 57, 52, 81, 78, 87, 83, 87, 87, 80, 100, 94, 102, 32.50459 + 99, 92, 95, 91, 84, 81, 82, 89, 82, 83, 74, 64, 77, 75, 78, 80, 32.50460 + 83, 87, 88, 87, 87, 86, 70, 76, 84, 88, 93, 97, 105, 108, 106, 122, 32.50461 + 132, 116, 102, 109, 101, 73, 29, 34, 36, 37, 37, 255, 255, 255, 255, 255, 32.50462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 131, 32.50466 + 125, 123, 123, 124, 124, 123, 123, 122, 121, 120, 119, 117, 120, 119, 109, 92, 32.50467 + 73, 60, 54, 44, 70, 94, 78, 78, 91, 87, 95, 92, 101, 100, 99, 107, 32.50468 + 107, 101, 100, 89, 92, 86, 90, 88, 81, 92, 87, 91, 86, 81, 74, 72, 32.50469 + 71, 74, 73, 71, 77, 88, 95, 100, 103, 106, 109, 125, 119, 117, 117, 124, 32.50470 + 123, 83, 26, 34, 32, 27, 24, 26, 255, 255, 255, 255, 255, 255, 255, 255, 32.50471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 123, 122, 125, 32.50475 + 128, 127, 127, 126, 125, 125, 125, 124, 117, 123, 126, 118, 101, 84, 72, 68, 32.50476 + 53, 75, 96, 84, 89, 98, 83, 82, 87, 95, 92, 88, 95, 94, 87, 86, 32.50477 + 92, 96, 87, 94, 96, 90, 97, 90, 94, 93, 95, 92, 91, 87, 83, 80, 32.50478 + 82, 88, 99, 107, 111, 111, 112, 112, 120, 121, 122, 107, 98, 118, 149, 164, 32.50479 + 136, 132, 123, 119, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 124, 124, 127, 128, 129, 32.50484 + 130, 130, 129, 127, 126, 122, 123, 121, 115, 105, 95, 88, 84, 72, 57, 65, 32.50485 + 83, 116, 125, 105, 110, 110, 116, 109, 103, 110, 107, 100, 97, 77, 83, 77, 32.50486 + 82, 81, 72, 79, 73, 86, 85, 86, 85, 86, 85, 85, 83, 100, 103, 111, 32.50487 + 116, 119, 116, 114, 112, 121, 108, 103, 104, 112, 139, 171, 187, 169, 169, 166, 32.50488 + 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50492 + 255, 255, 255, 255, 255, 255, 255, 255, 126, 122, 119, 122, 126, 129, 129, 127, 32.50493 + 123, 120, 127, 122, 117, 114, 112, 106, 95, 87, 95, 67, 62, 74, 111, 122, 32.50494 + 105, 113, 127, 133, 128, 125, 137, 139, 134, 133, 110, 124, 124, 127, 118, 106, 32.50495 + 117, 115, 105, 93, 77, 63, 61, 70, 84, 95, 110, 110, 113, 116, 118, 118, 32.50496 + 117, 115, 121, 103, 102, 121, 143, 162, 166, 154, 174, 175, 177, 177, 255, 255, 32.50497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50501 + 255, 255, 255, 255, 255, 255, 121, 117, 121, 125, 128, 129, 127, 123, 121, 127, 32.50502 + 122, 118, 120, 123, 115, 97, 83, 103, 99, 91, 71, 78, 92, 81, 87, 131, 32.50503 + 136, 131, 130, 145, 148, 146, 143, 118, 135, 139, 142, 130, 116, 129, 129, 107, 32.50504 + 96, 83, 73, 72, 83, 97, 106, 108, 107, 107, 108, 112, 114, 115, 114, 104, 32.50505 + 113, 134, 146, 146, 160, 182, 192, 171, 171, 172, 255, 255, 255, 255, 255, 255, 32.50506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50510 + 255, 255, 255, 255, 210, 122, 123, 125, 126, 126, 126, 125, 126, 122, 120, 123, 32.50511 + 126, 120, 106, 95, 84, 97, 103, 83, 79, 84, 79, 98, 130, 134, 128, 125, 32.50512 + 140, 144, 140, 139, 126, 143, 143, 146, 137, 122, 130, 127, 78, 77, 77, 78, 32.50513 + 83, 91, 98, 103, 105, 102, 102, 104, 108, 110, 111, 111, 113, 128, 153, 166, 32.50514 + 163, 169, 170, 159, 175, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50519 + 255, 255, 118, 117, 117, 118, 120, 123, 125, 126, 122, 119, 119, 122, 122, 119, 32.50520 + 117, 102, 100, 109, 108, 99, 79, 69, 98, 106, 110, 103, 104, 119, 127, 123, 32.50521 + 125, 120, 131, 126, 129, 121, 105, 108, 101, 85, 82, 79, 79, 85, 95, 107, 32.50522 + 113, 108, 104, 104, 106, 108, 109, 107, 106, 135, 157, 181, 177, 161, 165, 179, 32.50523 + 177, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50528 + 114, 115, 119, 122, 121, 118, 119, 121, 123, 124, 123, 121, 119, 119, 109, 104, 32.50529 + 102, 109, 105, 90, 82, 83, 89, 82, 98, 101, 115, 93, 97, 98, 83, 83, 32.50530 + 82, 81, 80, 80, 80, 80, 89, 80, 74, 78, 90, 103, 107, 107, 109, 106, 32.50531 + 100, 97, 103, 113, 116, 112, 166, 169, 170, 166, 155, 150, 155, 160, 255, 255, 32.50532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 117, 122, 32.50537 + 125, 125, 123, 117, 118, 120, 121, 121, 121, 120, 121, 120, 103, 91, 97, 104, 32.50538 + 98, 89, 88, 85, 78, 84, 87, 94, 80, 86, 90, 90, 87, 83, 79, 78, 32.50539 + 80, 83, 85, 84, 82, 83, 90, 100, 106, 106, 103, 97, 110, 112, 104, 104, 32.50540 + 114, 120, 118, 109, 100, 87, 69, 52, 36, 33, 255, 255, 255, 255, 255, 255, 32.50541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 126, 127, 126, 32.50546 + 120, 120, 121, 121, 122, 123, 123, 125, 129, 110, 94, 93, 97, 98, 97, 101, 32.50547 + 97, 90, 81, 88, 81, 78, 79, 88, 85, 86, 85, 84, 85, 87, 88, 89, 32.50548 + 81, 86, 93, 103, 109, 109, 102, 100, 114, 115, 106, 98, 103, 113, 109, 92, 32.50549 + 32, 27, 28, 33, 36, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 126, 127, 127, 126, 125, 32.50555 + 125, 125, 125, 126, 128, 126, 119, 113, 102, 94, 88, 97, 110, 119, 116, 101, 32.50556 + 110, 94, 99, 91, 100, 97, 98, 99, 99, 97, 93, 87, 85, 85, 92, 101, 32.50557 + 108, 111, 108, 102, 102, 101, 102, 103, 102, 93, 72, 44, 24, 36, 36, 43, 32.50558 + 53, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50563 + 255, 255, 255, 255, 255, 255, 255, 255, 212, 129, 132, 131, 129, 127, 125, 124, 32.50564 + 124, 124, 123, 122, 119, 110, 98, 90, 91, 98, 113, 117, 108, 122, 111, 117, 32.50565 + 108, 114, 121, 120, 115, 108, 98, 92, 84, 81, 94, 98, 104, 107, 104, 103, 32.50566 + 103, 106, 116, 114, 111, 96, 60, 30, 44, 78, 102, 110, 124, 179, 255, 255, 32.50567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50572 + 255, 255, 255, 255, 255, 255, 214, 131, 130, 129, 126, 124, 122, 120, 119, 124, 32.50573 + 116, 110, 109, 109, 103, 91, 81, 83, 89, 93, 104, 102, 108, 103, 107, 117, 32.50574 + 111, 103, 95, 89, 90, 92, 94, 103, 104, 105, 105, 102, 103, 104, 107, 106, 32.50575 + 94, 81, 70, 51, 53, 99, 156, 186, 182, 207, 255, 255, 255, 255, 255, 255, 32.50576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50581 + 255, 255, 255, 255, 213, 129, 128, 128, 126, 123, 120, 119, 123, 114, 109, 110, 32.50582 + 115, 112, 100, 86, 82, 82, 89, 87, 94, 90, 93, 92, 97, 96, 92, 92, 32.50583 + 93, 99, 104, 108, 107, 108, 106, 107, 107, 106, 102, 104, 110, 121, 136, 151, 32.50584 + 161, 167, 177, 187, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50590 + 255, 255, 213, 130, 130, 129, 126, 123, 121, 116, 117, 117, 117, 115, 114, 111, 32.50591 + 107, 111, 104, 108, 90, 98, 84, 92, 86, 95, 97, 102, 106, 108, 110, 108, 32.50592 + 108, 106, 107, 109, 112, 113, 110, 103, 101, 129, 158, 177, 177, 174, 181, 182, 32.50593 + 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50599 + 212, 126, 126, 125, 123, 121, 122, 121, 120, 120, 119, 118, 119, 119, 113, 112, 32.50600 + 113, 113, 112, 113, 113, 113, 111, 112, 115, 113, 109, 106, 106, 108, 108, 108, 32.50601 + 112, 117, 115, 110, 112, 125, 175, 172, 176, 184, 186, 178, 203, 255, 255, 255, 32.50602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 32.50608 + 127, 127, 127, 125, 124, 125, 123, 123, 123, 125, 126, 120, 119, 118, 116, 114, 32.50609 + 112, 111, 111, 114, 114, 116, 113, 109, 106, 105, 107, 110, 112, 114, 111, 101, 32.50610 + 99, 122, 152, 152, 166, 181, 189, 185, 178, 255, 255, 255, 255, 255, 255, 255, 32.50611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 130, 131, 132, 32.50617 + 127, 126, 124, 123, 122, 124, 128, 129, 128, 127, 125, 122, 120, 118, 118, 118, 32.50618 + 119, 119, 118, 115, 111, 108, 108, 110, 118, 113, 112, 113, 115, 122, 141, 162, 32.50619 + 175, 186, 191, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 132, 129, 127, 124, 32.50626 + 122, 122, 123, 127, 129, 130, 129, 128, 126, 125, 124, 125, 123, 121, 119, 117, 32.50627 + 113, 110, 111, 113, 115, 114, 116, 112, 108, 122, 145, 160, 166, 172, 176, 202, 32.50628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 130, 126, 124, 122, 123, 123, 32.50635 + 125, 126, 130, 129, 127, 125, 125, 124, 123, 123, 120, 116, 114, 112, 111, 113, 32.50636 + 115, 118, 111, 119, 115, 107, 123, 153, 163, 154, 255, 255, 255, 255, 255, 255, 32.50637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50643 + 255, 255, 255, 255, 255, 255, 255, 255, 212, 126, 125, 126, 126, 127, 127, 138, 32.50644 + 136, 134, 131, 129, 127, 126, 125, 119, 117, 114, 114, 115, 116, 116, 117, 116, 32.50645 + 112, 110, 126, 156, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50652 + 255, 255, 255, 255, 255, 255, 123, 125, 128, 128, 128, 127, 139, 138, 135, 133, 32.50653 + 132, 130, 129, 128, 123, 119, 115, 116, 117, 118, 116, 115, 125, 110, 116, 152, 32.50654 + 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50661 + 255, 255, 255, 255, 255, 126, 127, 127, 126, 128, 128, 127, 127, 127, 127, 127, 32.50662 + 127, 128, 122, 119, 119, 121, 119, 116, 114, 123, 115, 136, 255, 255, 255, 255, 32.50663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50670 + 255, 255, 255, 255, 255, 255, 124, 128, 132, 131, 126, 124, 128, 130, 117, 117, 32.50671 + 117, 115, 115, 117, 119, 117, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50675 + 255 }; 32.50676 +/* Define image 'enemy5' of size 140x152x1x3 and type 'const unsigned char' */ 32.50677 +const unsigned char data_enemy5[] = { 32.50678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 32.50682 + 52, 43, 230, 55, 63, 107, 69, 71, 63, 61, 88, 72, 241, 109, 255, 255, 32.50683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50690 + 187, 71, 55, 61, 55, 60, 67, 65, 78, 66, 61, 47, 63, 71, 145, 48, 32.50691 + 60, 88, 82, 122, 74, 59, 103, 118, 153, 66, 138, 232, 222, 246, 255, 255, 32.50692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 98, 123, 110, 92, 65, 82, 32.50699 + 63, 54, 91, 63, 68, 56, 77, 81, 70, 71, 87, 82, 68, 64, 130, 65, 32.50700 + 129, 148, 131, 93, 94, 130, 137, 172, 155, 207, 200, 224, 230, 220, 226, 255, 32.50701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50707 + 255, 255, 188, 61, 30, 137, 170, 119, 77, 76, 52, 44, 94, 102, 49, 66, 32.50708 + 58, 73, 112, 76, 47, 113, 129, 132, 112, 62, 194, 129, 152, 147, 178, 161, 32.50709 + 131, 100, 90, 163, 220, 221, 227, 226, 229, 230, 240, 252, 205, 195, 255, 255, 32.50710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 89, 75, 47, 32.50716 + 157, 137, 147, 111, 89, 98, 120, 108, 72, 73, 146, 103, 85, 98, 153, 151, 32.50717 + 178, 234, 155, 171, 171, 145, 177, 156, 161, 197, 162, 187, 202, 168, 149, 153, 32.50718 + 164, 166, 201, 174, 201, 228, 217, 210, 197, 163, 158, 116, 92, 138, 255, 255, 32.50719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50724 + 255, 255, 255, 255, 255, 255, 255, 165, 143, 142, 165, 171, 159, 195, 193, 139, 32.50725 + 199, 188, 130, 128, 157, 156, 194, 160, 227, 201, 196, 193, 176, 178, 171, 194, 32.50726 + 145, 140, 192, 158, 147, 207, 187, 143, 137, 153, 180, 172, 135, 178, 184, 194, 32.50727 + 195, 216, 200, 178, 183, 183, 183, 124, 75, 90, 79, 140, 255, 255, 255, 255, 32.50728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50733 + 255, 255, 177, 146, 175, 203, 171, 126, 167, 166, 205, 208, 144, 139, 142, 122, 32.50734 + 207, 231, 172, 184, 225, 152, 152, 177, 165, 150, 209, 129, 198, 166, 178, 191, 32.50735 + 199, 166, 159, 178, 136, 144, 167, 154, 122, 190, 186, 198, 161, 158, 165, 169, 32.50736 + 153, 119, 110, 109, 120, 119, 65, 65, 97, 96, 255, 255, 255, 255, 255, 255, 32.50737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 115, 180, 154, 32.50742 + 182, 226, 212, 219, 186, 181, 180, 175, 187, 164, 158, 164, 179, 162, 210, 200, 32.50743 + 175, 164, 206, 155, 171, 174, 155, 194, 213, 214, 192, 204, 174, 160, 124, 140, 32.50744 + 128, 120, 143, 134, 123, 142, 128, 151, 167, 176, 159, 153, 142, 115, 125, 106, 32.50745 + 130, 114, 92, 81, 79, 76, 39, 112, 255, 255, 255, 255, 255, 255, 255, 255, 32.50746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50750 + 255, 255, 255, 255, 255, 255, 255, 225, 124, 192, 93, 127, 173, 240, 233, 211, 32.50751 + 189, 179, 216, 170, 180, 156, 194, 190, 168, 175, 212, 222, 148, 185, 119, 146, 32.50752 + 203, 156, 203, 218, 182, 152, 174, 197, 187, 158, 183, 148, 124, 196, 137, 94, 32.50753 + 129, 120, 92, 149, 172, 128, 94, 160, 93, 96, 148, 127, 93, 214, 77, 73, 32.50754 + 89, 78, 79, 88, 102, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50759 + 255, 255, 129, 137, 206, 180, 114, 222, 203, 243, 221, 220, 207, 242, 187, 177, 32.50760 + 188, 194, 216, 205, 165, 199, 243, 172, 198, 167, 169, 132, 152, 226, 197, 162, 32.50761 + 180, 136, 168, 182, 153, 189, 216, 190, 148, 176, 138, 106, 102, 80, 112, 142, 32.50762 + 130, 116, 104, 101, 95, 122, 96, 108, 125, 143, 107, 139, 74, 72, 66, 63, 32.50763 + 85, 67, 100, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 104, 106, 138, 32.50768 + 139, 216, 226, 214, 244, 210, 245, 212, 222, 209, 190, 181, 208, 228, 210, 223, 32.50769 + 221, 231, 184, 194, 180, 179, 89, 203, 220, 153, 161, 157, 149, 129, 136, 150, 32.50770 + 151, 100, 117, 179, 181, 136, 112, 123, 111, 112, 117, 104, 108, 98, 95, 69, 32.50771 + 80, 90, 66, 136, 79, 104, 139, 107, 62, 79, 73, 78, 75, 85, 83, 81, 32.50772 + 70, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50776 + 255, 255, 255, 255, 255, 255, 219, 136, 105, 147, 175, 198, 165, 176, 181, 198, 32.50777 + 223, 223, 244, 235, 192, 185, 206, 232, 224, 232, 218, 203, 195, 219, 211, 241, 32.50778 + 139, 150, 254, 188, 168, 196, 158, 156, 141, 186, 118, 157, 143, 137, 174, 130, 32.50779 + 164, 132, 92, 125, 119, 135, 103, 90, 107, 108, 103, 71, 55, 57, 69, 142, 32.50780 + 97, 79, 114, 107, 88, 63, 108, 76, 80, 60, 93, 45, 95, 89, 77, 128, 32.50781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50785 + 255, 152, 128, 118, 89, 121, 164, 238, 188, 219, 215, 239, 205, 237, 254, 217, 32.50786 + 212, 214, 217, 209, 238, 235, 194, 169, 224, 220, 169, 213, 157, 201, 208, 185, 32.50787 + 209, 190, 209, 201, 220, 152, 181, 153, 172, 144, 128, 136, 121, 197, 122, 140, 32.50788 + 144, 118, 103, 118, 103, 127, 109, 64, 49, 71, 67, 104, 99, 51, 100, 101, 32.50789 + 91, 85, 81, 76, 66, 95, 82, 81, 87, 101, 68, 91, 43, 255, 255, 255, 32.50790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 230, 198, 120, 74, 32.50794 + 176, 125, 215, 229, 181, 186, 206, 214, 217, 231, 241, 195, 240, 212, 227, 217, 32.50795 + 204, 205, 234, 234, 249, 201, 176, 168, 214, 243, 137, 180, 176, 237, 223, 181, 32.50796 + 169, 196, 159, 200, 142, 177, 114, 114, 145, 151, 153, 180, 141, 186, 67, 112, 32.50797 + 111, 109, 66, 58, 60, 56, 55, 79, 64, 95, 103, 61, 88, 103, 89, 84, 32.50798 + 92, 87, 108, 66, 107, 79, 75, 76, 85, 80, 127, 255, 255, 255, 255, 255, 32.50799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50802 + 255, 255, 255, 255, 255, 255, 255, 116, 168, 183, 199, 98, 80, 163, 216, 160, 32.50803 + 251, 152, 220, 176, 207, 239, 193, 222, 195, 207, 213, 216, 231, 240, 219, 219, 32.50804 + 243, 231, 238, 244, 225, 176, 210, 202, 216, 205, 220, 198, 140, 137, 115, 125, 32.50805 + 130, 151, 98, 109, 91, 135, 130, 156, 179, 137, 78, 83, 98, 84, 62, 64, 32.50806 + 71, 34, 55, 71, 82, 123, 74, 90, 104, 88, 140, 94, 81, 87, 69, 67, 32.50807 + 76, 64, 61, 61, 112, 110, 96, 138, 255, 255, 255, 255, 255, 255, 255, 255, 32.50808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50811 + 255, 255, 238, 121, 172, 148, 91, 133, 160, 174, 206, 220, 146, 160, 190, 210, 32.50812 + 208, 212, 223, 197, 182, 215, 194, 217, 192, 197, 184, 218, 209, 198, 223, 221, 32.50813 + 206, 248, 247, 172, 227, 150, 221, 178, 214, 151, 207, 86, 98, 168, 143, 119, 32.50814 + 143, 94, 192, 176, 102, 132, 113, 83, 58, 87, 129, 62, 76, 56, 63, 69, 32.50815 + 54, 60, 73, 101, 78, 125, 80, 95, 90, 81, 82, 71, 91, 51, 60, 36, 32.50816 + 68, 52, 39, 60, 65, 49, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 173, 138, 136, 32.50820 + 167, 144, 94, 205, 153, 171, 217, 203, 197, 174, 210, 203, 220, 185, 196, 215, 32.50821 + 195, 189, 201, 199, 214, 184, 186, 208, 208, 184, 228, 225, 216, 209, 183, 205, 32.50822 + 143, 185, 127, 239, 115, 135, 172, 82, 139, 133, 130, 173, 145, 158, 158, 134, 32.50823 + 114, 91, 92, 64, 72, 67, 82, 68, 76, 62, 62, 59, 52, 63, 80, 86, 32.50824 + 93, 107, 110, 99, 74, 77, 91, 84, 78, 71, 51, 46, 74, 56, 46, 60, 32.50825 + 57, 59, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50828 + 255, 255, 255, 255, 255, 255, 255, 193, 151, 182, 90, 151, 174, 209, 217, 201, 32.50829 + 213, 181, 215, 196, 207, 193, 203, 206, 193, 213, 235, 192, 182, 213, 180, 190, 32.50830 + 185, 218, 147, 181, 168, 194, 170, 165, 189, 150, 151, 166, 147, 230, 137, 219, 32.50831 + 210, 96, 214, 101, 95, 183, 192, 173, 148, 117, 160, 107, 77, 90, 54, 61, 32.50832 + 62, 69, 68, 73, 67, 67, 63, 56, 48, 54, 63, 60, 62, 68, 68, 58, 32.50833 + 43, 58, 80, 74, 70, 80, 82, 60, 66, 44, 54, 55, 54, 83, 65, 86, 32.50834 + 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50837 + 255, 255, 193, 111, 197, 172, 165, 170, 210, 231, 232, 196, 211, 148, 230, 210, 32.50838 + 180, 175, 204, 216, 177, 188, 190, 159, 198, 249, 187, 195, 170, 237, 203, 243, 32.50839 + 169, 173, 172, 186, 148, 131, 135, 119, 136, 154, 131, 217, 192, 147, 189, 109, 32.50840 + 51, 180, 156, 165, 110, 144, 158, 77, 89, 57, 54, 57, 51, 66, 53, 72, 32.50841 + 57, 69, 61, 71, 61, 65, 68, 60, 58, 60, 56, 57, 45, 58, 78, 71, 32.50842 + 60, 63, 69, 60, 48, 35, 63, 57, 57, 96, 69, 78, 71, 70, 255, 255, 32.50843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 107, 76, 32.50846 + 224, 178, 219, 255, 156, 229, 237, 199, 221, 166, 203, 188, 190, 200, 189, 190, 32.50847 + 218, 226, 180, 159, 171, 201, 186, 171, 217, 175, 196, 167, 196, 116, 168, 147, 32.50848 + 87, 85, 110, 101, 138, 108, 173, 185, 198, 173, 153, 158, 150, 160, 175, 114, 32.50849 + 131, 153, 165, 85, 56, 67, 48, 50, 47, 56, 50, 62, 56, 65, 62, 63, 32.50850 + 57, 62, 65, 59, 60, 63, 57, 48, 46, 57, 77, 90, 91, 84, 73, 67, 32.50851 + 49, 53, 76, 78, 80, 95, 92, 75, 74, 70, 62, 138, 255, 255, 255, 255, 32.50852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50854 + 255, 255, 255, 255, 255, 255, 255, 255, 198, 69, 190, 208, 161, 234, 241, 225, 32.50855 + 225, 196, 193, 229, 198, 179, 169, 163, 183, 202, 187, 210, 178, 170, 179, 223, 32.50856 + 198, 204, 242, 201, 196, 178, 143, 173, 131, 116, 130, 138, 132, 67, 88, 82, 32.50857 + 90, 74, 141, 169, 149, 131, 108, 125, 92, 129, 61, 70, 123, 152, 119, 84, 32.50858 + 39, 54, 38, 46, 47, 44, 52, 48, 58, 57, 61, 52, 49, 55, 58, 54, 32.50859 + 59, 64, 58, 45, 59, 66, 72, 91, 106, 100, 86, 69, 57, 68, 66, 81, 32.50860 + 83, 65, 103, 82, 77, 58, 65, 67, 140, 255, 255, 255, 255, 255, 255, 255, 32.50861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50863 + 255, 223, 114, 119, 103, 132, 218, 165, 193, 187, 233, 183, 198, 202, 212, 221, 32.50864 + 156, 174, 171, 182, 177, 175, 193, 204, 211, 236, 179, 177, 202, 242, 231, 220, 32.50865 + 176, 150, 197, 156, 131, 140, 117, 133, 105, 64, 74, 85, 88, 68, 169, 131, 32.50866 + 135, 135, 90, 193, 97, 117, 88, 49, 71, 120, 51, 65, 59, 40, 47, 41, 32.50867 + 46, 37, 51, 39, 56, 49, 57, 54, 51, 55, 55, 51, 57, 63, 56, 56, 32.50868 + 79, 80, 67, 72, 82, 85, 87, 79, 74, 74, 60, 75, 73, 53, 94, 62, 32.50869 + 66, 61, 84, 77, 93, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 72, 92, 197, 32.50872 + 166, 239, 209, 255, 209, 227, 241, 209, 193, 232, 183, 185, 191, 200, 167, 192, 32.50873 + 208, 174, 189, 209, 135, 187, 218, 229, 193, 206, 210, 166, 157, 137, 122, 105, 32.50874 + 115, 191, 82, 141, 69, 86, 78, 87, 92, 64, 157, 99, 92, 101, 103, 88, 32.50875 + 80, 37, 39, 35, 60, 46, 40, 58, 36, 73, 40, 39, 39, 38, 41, 41, 32.50876 + 45, 46, 48, 46, 43, 46, 44, 39, 48, 56, 48, 43, 60, 62, 63, 74, 32.50877 + 76, 79, 98, 94, 102, 86, 95, 97, 82, 89, 87, 65, 59, 55, 55, 50, 32.50878 + 64, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50880 + 255, 255, 255, 255, 255, 255, 255, 73, 68, 81, 112, 160, 157, 246, 249, 238, 32.50881 + 211, 205, 241, 185, 180, 180, 210, 201, 212, 176, 163, 189, 174, 128, 204, 183, 32.50882 + 165, 207, 172, 181, 173, 177, 156, 121, 146, 126, 120, 141, 108, 179, 74, 111, 32.50883 + 84, 88, 79, 78, 76, 104, 87, 73, 99, 79, 54, 59, 55, 42, 47, 53, 32.50884 + 28, 47, 44, 31, 44, 44, 38, 38, 33, 42, 31, 45, 34, 44, 40, 48, 32.50885 + 46, 49, 48, 45, 57, 67, 61, 48, 49, 48, 69, 92, 79, 67, 85, 82, 32.50886 + 97, 74, 116, 105, 76, 112, 60, 86, 66, 70, 57, 70, 65, 73, 121, 255, 32.50887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50889 + 255, 255, 48, 56, 52, 86, 95, 176, 214, 225, 238, 204, 212, 186, 178, 219, 32.50890 + 178, 164, 176, 178, 188, 183, 177, 160, 146, 178, 161, 184, 153, 184, 125, 137, 32.50891 + 224, 140, 175, 164, 112, 83, 99, 101, 100, 105, 81, 92, 71, 88, 84, 74, 32.50892 + 83, 72, 71, 73, 64, 55, 52, 50, 46, 42, 40, 32, 39, 39, 32, 32, 32.50893 + 39, 41, 36, 38, 43, 33, 45, 32, 46, 38, 44, 48, 49, 49, 47, 43, 32.50894 + 40, 39, 39, 36, 68, 67, 64, 61, 56, 70, 73, 83, 71, 75, 103, 111, 32.50895 + 78, 60, 77, 109, 97, 77, 62, 75, 58, 59, 101, 132, 255, 255, 255, 255, 32.50896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 62, 51, 32.50898 + 104, 51, 174, 183, 152, 223, 206, 225, 199, 163, 166, 187, 173, 187, 199, 151, 32.50899 + 233, 184, 164, 201, 192, 110, 158, 136, 172, 123, 183, 162, 150, 184, 155, 207, 32.50900 + 148, 100, 92, 47, 73, 137, 68, 93, 71, 77, 54, 71, 94, 56, 70, 55, 32.50901 + 53, 50, 46, 41, 36, 34, 34, 33, 37, 38, 34, 31, 32, 32, 30, 40, 32.50902 + 37, 22, 36, 33, 49, 39, 38, 49, 48, 46, 46, 46, 45, 43, 42, 60, 32.50903 + 78, 64, 56, 50, 43, 58, 66, 55, 86, 93, 84, 97, 114, 111, 99, 102, 32.50904 + 105, 85, 70, 101, 97, 96, 73, 78, 255, 255, 255, 255, 255, 255, 255, 255, 32.50905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50906 + 255, 255, 255, 255, 255, 255, 255, 255, 29, 35, 59, 44, 84, 114, 162, 144, 32.50907 + 207, 208, 225, 208, 178, 162, 195, 189, 175, 168, 149, 184, 159, 186, 178, 152, 32.50908 + 114, 107, 165, 192, 194, 155, 133, 156, 203, 149, 160, 122, 153, 99, 93, 87, 32.50909 + 71, 106, 80, 65, 94, 93, 67, 73, 69, 43, 57, 41, 46, 47, 44, 37, 32.50910 + 31, 30, 32, 30, 31, 34, 38, 36, 33, 35, 40, 34, 39, 36, 44, 37, 32.50911 + 44, 41, 45, 46, 43, 41, 42, 45, 46, 45, 43, 66, 73, 54, 49, 46, 32.50912 + 35, 48, 59, 82, 93, 92, 87, 89, 86, 90, 103, 67, 80, 115, 118, 43, 32.50913 + 86, 57, 134, 112, 78, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50915 + 255, 255, 186, 54, 51, 27, 41, 53, 96, 127, 105, 124, 206, 200, 210, 204, 32.50916 + 182, 149, 174, 168, 179, 176, 160, 181, 142, 181, 140, 156, 127, 146, 125, 158, 32.50917 + 186, 160, 152, 131, 135, 179, 122, 135, 99, 76, 104, 79, 61, 101, 78, 72, 32.50918 + 127, 108, 92, 65, 36, 54, 37, 38, 41, 42, 36, 32, 31, 31, 30, 32, 32.50919 + 28, 31, 37, 38, 32, 37, 46, 33, 35, 37, 39, 37, 37, 36, 36, 44, 32.50920 + 43, 42, 42, 44, 46, 48, 49, 46, 51, 38, 48, 53, 40, 47, 55, 79, 32.50921 + 65, 65, 86, 87, 61, 71, 118, 158, 114, 113, 95, 92, 57, 90, 74, 101, 32.50922 + 61, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 50, 62, 32.50924 + 57, 32, 55, 83, 86, 90, 101, 156, 199, 163, 217, 190, 201, 162, 167, 168, 32.50925 + 175, 155, 139, 167, 142, 131, 195, 122, 103, 135, 196, 177, 177, 197, 126, 152, 32.50926 + 128, 108, 155, 172, 83, 60, 83, 84, 84, 87, 84, 124, 128, 116, 87, 38, 32.50927 + 40, 64, 33, 40, 39, 35, 27, 28, 32, 31, 26, 38, 31, 30, 34, 36, 32.50928 + 32, 38, 46, 61, 47, 39, 35, 48, 50, 51, 44, 43, 45, 45, 43, 41, 32.50929 + 42, 48, 53, 32, 38, 28, 43, 53, 42, 47, 52, 51, 63, 67, 67, 70, 32.50930 + 67, 74, 94, 88, 69, 143, 75, 51, 67, 74, 73, 62, 43, 73, 161, 255, 32.50931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50932 + 255, 255, 255, 255, 255, 255, 255, 255, 46, 47, 53, 64, 54, 59, 107, 123, 32.50933 + 153, 73, 183, 229, 208, 202, 216, 191, 196, 144, 120, 119, 128, 136, 141, 141, 32.50934 + 177, 124, 99, 166, 141, 161, 199, 206, 205, 211, 185, 198, 179, 237, 206, 146, 32.50935 + 117, 95, 77, 97, 93, 56, 89, 120, 96, 142, 93, 24, 50, 52, 46, 49, 32.50936 + 48, 39, 30, 31, 36, 34, 27, 37, 32, 30, 37, 46, 52, 56, 60, 61, 32.50937 + 54, 52, 40, 47, 47, 63, 69, 43, 43, 41, 37, 34, 35, 40, 45, 39, 32.50938 + 44, 29, 34, 43, 36, 44, 47, 50, 69, 72, 64, 63, 60, 56, 59, 85, 32.50939 + 124, 100, 140, 65, 76, 63, 26, 52, 43, 68, 92, 120, 255, 255, 255, 255, 32.50940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50941 + 255, 255, 255, 187, 57, 51, 81, 103, 81, 99, 152, 215, 190, 178, 229, 241, 32.50942 + 245, 194, 200, 135, 134, 136, 137, 127, 111, 132, 127, 114, 146, 136, 218, 160, 32.50943 + 183, 155, 201, 117, 234, 206, 200, 188, 124, 168, 122, 172, 131, 130, 104, 55, 32.50944 + 63, 84, 77, 76, 92, 135, 107, 42, 40, 54, 55, 55, 59, 52, 40, 37, 32.50945 + 39, 37, 30, 34, 35, 35, 41, 56, 69, 70, 64, 45, 38, 47, 43, 66, 32.50946 + 62, 70, 61, 56, 47, 38, 34, 37, 39, 39, 37, 42, 53, 34, 31, 35, 32.50947 + 32, 40, 40, 39, 41, 49, 68, 78, 61, 54, 67, 75, 69, 87, 90, 80, 32.50948 + 59, 68, 49, 51, 45, 46, 40, 34, 255, 255, 255, 255, 255, 255, 255, 255, 32.50949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 47, 58, 32.50950 + 66, 58, 116, 157, 122, 130, 166, 236, 194, 189, 234, 243, 193, 225, 186, 179, 32.50951 + 141, 155, 154, 115, 84, 133, 128, 99, 119, 178, 140, 211, 175, 163, 171, 106, 32.50952 + 169, 170, 218, 204, 181, 190, 166, 149, 141, 100, 96, 106, 94, 96, 99, 60, 32.50953 + 116, 83, 96, 66, 24, 79, 53, 51, 61, 58, 46, 36, 36, 32, 28, 37, 32.50954 + 40, 36, 37, 50, 61, 53, 37, 71, 39, 37, 63, 133, 136, 107, 51, 79, 32.50955 + 63, 49, 46, 54, 58, 53, 43, 38, 55, 40, 33, 37, 35, 41, 36, 39, 32.50956 + 45, 54, 70, 84, 74, 60, 63, 73, 107, 75, 62, 48, 48, 110, 78, 60, 32.50957 + 59, 53, 34, 54, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50958 + 255, 255, 255, 255, 255, 255, 255, 183, 59, 43, 47, 75, 47, 60, 118, 154, 32.50959 + 193, 224, 201, 242, 219, 209, 237, 238, 210, 196, 199, 211, 185, 117, 121, 123, 32.50960 + 102, 112, 116, 110, 196, 243, 184, 205, 174, 173, 168, 169, 204, 221, 191, 193, 32.50961 + 162, 157, 150, 159, 118, 120, 102, 76, 67, 93, 72, 90, 71, 76, 44, 77, 32.50962 + 59, 64, 32, 47, 42, 35, 33, 36, 40, 41, 40, 36, 38, 38, 37, 36, 32.50963 + 43, 56, 66, 27, 78, 50, 86, 170, 137, 131, 82, 102, 131, 116, 108, 90, 32.50964 + 87, 61, 66, 83, 74, 65, 47, 29, 30, 37, 33, 42, 56, 80, 77, 79, 32.50965 + 70, 47, 53, 49, 46, 77, 70, 51, 92, 77, 90, 64, 60, 71, 51, 42, 32.50966 + 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.50967 + 255, 255, 183, 60, 32, 78, 41, 65, 98, 77, 173, 239, 234, 220, 230, 213, 32.50968 + 239, 230, 239, 204, 215, 204, 207, 148, 118, 178, 106, 94, 103, 83, 101, 116, 32.50969 + 146, 201, 203, 174, 119, 149, 148, 168, 168, 179, 196, 195, 167, 116, 101, 131, 32.50970 + 94, 103, 95, 80, 72, 90, 63, 85, 67, 63, 39, 65, 62, 68, 46, 51, 32.50971 + 47, 42, 38, 37, 36, 35, 35, 30, 32, 33, 30, 28, 30, 38, 45, 21, 32.50972 + 109, 96, 212, 135, 182, 181, 203, 152, 131, 124, 97, 77, 113, 142, 110, 77, 32.50973 + 72, 74, 68, 58, 58, 59, 49, 67, 61, 64, 55, 49, 41, 37, 67, 37, 32.50974 + 60, 65, 58, 84, 116, 75, 110, 99, 113, 83, 40, 48, 50, 22, 255, 255, 32.50975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 25, 93, 32.50976 + 61, 56, 65, 66, 128, 87, 188, 241, 216, 209, 248, 209, 203, 230, 187, 233, 32.50977 + 208, 214, 167, 198, 140, 109, 104, 116, 134, 85, 64, 160, 196, 180, 157, 151, 32.50978 + 134, 139, 135, 161, 171, 179, 160, 120, 140, 107, 102, 104, 69, 81, 80, 75, 32.50979 + 70, 84, 59, 74, 64, 52, 42, 51, 60, 58, 46, 50, 49, 46, 42, 37, 32.50980 + 33, 32, 33, 30, 32, 35, 32, 30, 30, 34, 39, 68, 59, 186, 151, 194, 32.50981 + 191, 174, 159, 156, 147, 137, 106, 125, 115, 105, 75, 70, 68, 75, 76, 72, 32.50982 + 74, 72, 60, 63, 50, 51, 47, 46, 44, 54, 100, 44, 17, 44, 61, 48, 32.50983 + 100, 98, 88, 112, 151, 94, 38, 55, 57, 39, 39, 255, 255, 255, 255, 255, 32.50984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 74, 93, 99, 69, 46, 73, 32.50985 + 135, 150, 218, 234, 212, 218, 235, 223, 207, 204, 198, 195, 200, 199, 212, 188, 32.50986 + 83, 165, 115, 110, 87, 119, 185, 160, 163, 156, 184, 193, 162, 120, 159, 196, 32.50987 + 149, 166, 189, 158, 128, 76, 80, 87, 59, 68, 65, 66, 63, 81, 63, 66, 32.50988 + 70, 58, 59, 46, 55, 43, 39, 41, 44, 45, 43, 38, 35, 35, 37, 34, 32.50989 + 35, 35, 34, 34, 35, 40, 44, 80, 180, 179, 188, 185, 191, 155, 115, 124, 32.50990 + 107, 85, 78, 106, 76, 57, 72, 66, 65, 69, 67, 58, 62, 66, 58, 45, 32.50991 + 39, 45, 40, 38, 32, 26, 54, 47, 48, 39, 40, 52, 86, 74, 104, 85, 32.50992 + 126, 79, 39, 38, 35, 46, 44, 112, 255, 255, 255, 255, 255, 255, 255, 255, 32.50993 + 255, 255, 255, 255, 92, 26, 45, 68, 63, 79, 141, 110, 153, 193, 183, 206, 32.50994 + 208, 214, 218, 216, 192, 181, 203, 193, 208, 179, 199, 125, 138, 98, 80, 114, 32.50995 + 122, 101, 236, 150, 119, 170, 197, 140, 136, 109, 142, 169, 190, 241, 204, 156, 32.50996 + 126, 100, 73, 73, 55, 65, 61, 65, 60, 77, 69, 70, 80, 67, 70, 42, 32.50997 + 50, 37, 43, 36, 39, 42, 42, 38, 36, 37, 39, 36, 36, 33, 30, 31, 32.50998 + 33, 39, 43, 69, 146, 151, 126, 124, 130, 120, 91, 130, 89, 83, 103, 77, 32.50999 + 81, 95, 102, 66, 66, 70, 65, 50, 53, 60, 56, 37, 40, 46, 34, 37, 32.51000 + 39, 21, 26, 50, 58, 47, 47, 45, 63, 63, 101, 89, 96, 71, 60, 38, 32.51001 + 29, 52, 35, 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.51002 + 105, 128, 78, 46, 135, 157, 131, 208, 226, 235, 169, 217, 226, 218, 231, 212, 32.51003 + 175, 180, 173, 209, 221, 183, 158, 146, 136, 102, 78, 67, 82, 192, 142, 158, 32.51004 + 158, 184, 153, 98, 121, 94, 102, 157, 124, 128, 130, 131, 79, 70, 61, 62, 32.51005 + 51, 65, 63, 70, 59, 72, 67, 71, 74, 59, 59, 34, 42, 38, 48, 37, 32.51006 + 38, 39, 39, 36, 35, 35, 35, 42, 40, 35, 31, 30, 33, 36, 39, 74, 32.51007 + 26, 115, 83, 76, 126, 80, 78, 72, 75, 66, 77, 51, 63, 55, 59, 63, 32.51008 + 66, 74, 74, 63, 61, 64, 57, 47, 48, 46, 27, 36, 52, 39, 41, 40, 32.51009 + 26, 43, 63, 22, 38, 62, 68, 101, 68, 57, 67, 50, 48, 58, 30, 37, 32.51010 + 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 57, 76, 54, 101, 32.51011 + 96, 91, 189, 218, 214, 230, 206, 219, 205, 202, 197, 213, 206, 192, 185, 162, 32.51012 + 218, 184, 198, 158, 121, 93, 95, 61, 152, 143, 118, 132, 157, 158, 166, 151, 32.51013 + 118, 87, 95, 77, 132, 137, 127, 107, 78, 87, 67, 67, 53, 59, 53, 65, 32.51014 + 54, 63, 59, 69, 62, 48, 47, 38, 42, 39, 42, 36, 35, 34, 33, 34, 32.51015 + 34, 33, 32, 42, 40, 37, 34, 34, 36, 36, 37, 29, 15, 69, 67, 61, 32.51016 + 37, 78, 49, 44, 64, 43, 33, 54, 58, 47, 69, 58, 57, 64, 68, 66, 32.51017 + 70, 68, 54, 66, 58, 49, 27, 27, 33, 20, 29, 27, 53, 32, 43, 55, 32.51018 + 49, 36, 76, 77, 44, 39, 41, 43, 49, 38, 27, 36, 46, 255, 255, 255, 32.51019 + 255, 255, 255, 255, 255, 255, 195, 61, 82, 55, 64, 168, 122, 185, 217, 226, 32.51020 + 181, 208, 243, 188, 177, 234, 218, 190, 160, 196, 170, 208, 203, 168, 147, 128, 32.51021 + 135, 77, 126, 143, 122, 84, 99, 112, 167, 174, 165, 105, 92, 131, 64, 66, 32.51022 + 137, 122, 143, 107, 65, 68, 65, 81, 61, 53, 39, 54, 47, 56, 53, 70, 32.51023 + 59, 49, 51, 55, 54, 44, 36, 35, 31, 29, 30, 34, 36, 35, 33, 32, 32.51024 + 31, 30, 33, 35, 37, 36, 35, 38, 54, 49, 38, 46, 43, 58, 51, 61, 32.51025 + 30, 46, 54, 62, 45, 54, 40, 55, 45, 46, 51, 55, 65, 63, 46, 61, 32.51026 + 52, 53, 46, 47, 42, 29, 48, 44, 30, 21, 49, 35, 44, 54, 58, 69, 32.51027 + 55, 51, 34, 45, 53, 29, 46, 44, 46, 110, 255, 255, 255, 255, 255, 255, 32.51028 + 255, 255, 83, 116, 71, 63, 66, 231, 173, 231, 178, 207, 171, 198, 197, 199, 32.51029 + 191, 241, 234, 214, 154, 215, 205, 234, 177, 183, 213, 153, 150, 123, 113, 117, 32.51030 + 98, 79, 114, 193, 204, 177, 191, 159, 145, 94, 101, 96, 149, 77, 86, 86, 32.51031 + 62, 70, 59, 59, 61, 47, 53, 35, 47, 43, 54, 45, 48, 52, 54, 53, 32.51032 + 49, 44, 40, 32, 45, 38, 38, 21, 36, 32, 35, 41, 37, 31, 29, 30, 32.51033 + 34, 37, 38, 37, 52, 44, 57, 56, 43, 56, 44, 56, 53, 51, 50, 51, 32.51034 + 52, 55, 58, 60, 60, 58, 58, 56, 53, 51, 49, 43, 46, 50, 50, 42, 32.51035 + 35, 36, 41, 34, 39, 41, 36, 34, 40, 46, 49, 78, 89, 74, 81, 44, 32.51036 + 41, 45, 43, 38, 34, 45, 255, 255, 255, 255, 255, 255, 255, 194, 174, 90, 32.51037 + 67, 89, 63, 239, 204, 252, 184, 195, 172, 185, 155, 188, 200, 240, 207, 173, 32.51038 + 169, 183, 206, 212, 196, 184, 162, 99, 139, 114, 83, 113, 109, 112, 120, 220, 32.51039 + 198, 225, 165, 134, 95, 119, 73, 72, 133, 111, 113, 90, 48, 55, 55, 48, 32.51040 + 53, 45, 53, 39, 50, 45, 53, 45, 46, 47, 48, 47, 45, 42, 40, 39, 32.51041 + 38, 28, 40, 30, 37, 28, 33, 32, 33, 33, 34, 33, 32, 32, 31, 44, 32.51042 + 53, 51, 60, 58, 52, 56, 50, 55, 53, 49, 46, 44, 44, 46, 47, 52, 32.51043 + 55, 58, 60, 60, 56, 51, 48, 34, 38, 43, 45, 46, 45, 41, 36, 38, 32.51044 + 39, 37, 33, 34, 40, 43, 43, 61, 78, 73, 87, 52, 42, 39, 32, 52, 32.51045 + 25, 50, 130, 255, 255, 255, 255, 255, 255, 89, 71, 130, 42, 143, 193, 246, 32.51046 + 198, 237, 154, 206, 176, 209, 153, 187, 251, 207, 210, 189, 220, 214, 194, 166, 32.51047 + 185, 183, 149, 214, 92, 138, 133, 152, 106, 122, 187, 227, 190, 130, 157, 52, 32.51048 + 74, 41, 47, 70, 79, 77, 86, 92, 68, 72, 63, 54, 57, 52, 55, 42, 32.51049 + 44, 36, 37, 41, 41, 41, 40, 39, 38, 38, 38, 35, 33, 26, 43, 28, 32.51050 + 27, 20, 35, 32, 35, 38, 37, 34, 32, 33, 36, 49, 49, 61, 59, 58, 32.51051 + 60, 50, 53, 52, 50, 45, 41, 38, 36, 36, 37, 42, 47, 54, 60, 61, 32.51052 + 58, 53, 49, 40, 41, 39, 38, 44, 52, 48, 38, 43, 42, 38, 35, 38, 32.51053 + 45, 47, 42, 62, 73, 69, 80, 53, 44, 48, 40, 38, 41, 40, 52, 255, 32.51054 + 255, 255, 255, 255, 194, 79, 58, 102, 133, 201, 126, 222, 206, 215, 177, 168, 32.51055 + 185, 137, 141, 166, 197, 175, 173, 211, 177, 197, 196, 191, 167, 191, 227, 239, 32.51056 + 201, 171, 174, 166, 114, 157, 245, 150, 118, 67, 93, 79, 66, 36, 73, 77, 32.51057 + 74, 116, 120, 110, 72, 62, 49, 59, 60, 55, 55, 46, 42, 34, 31, 39, 32.51058 + 40, 40, 39, 39, 38, 37, 37, 25, 36, 36, 43, 21, 25, 28, 47, 47, 32.51059 + 47, 45, 38, 32, 33, 40, 48, 48, 43, 66, 59, 57, 62, 40, 47, 46, 32.51060 + 46, 43, 39, 37, 35, 35, 35, 37, 40, 46, 51, 54, 54, 53, 52, 54, 32.51061 + 52, 42, 31, 34, 48, 51, 44, 42, 44, 43, 40, 41, 46, 50, 47, 53, 32.51062 + 63, 67, 78, 63, 51, 54, 39, 40, 32, 58, 85, 142, 255, 255, 255, 255, 32.51063 + 39, 86, 68, 119, 169, 221, 68, 191, 177, 197, 166, 183, 176, 157, 120, 190, 32.51064 + 225, 180, 185, 166, 166, 169, 196, 218, 196, 226, 206, 249, 156, 167, 167, 151, 32.51065 + 224, 194, 174, 115, 100, 109, 59, 92, 31, 42, 36, 47, 20, 62, 75, 84, 32.51066 + 70, 66, 54, 46, 43, 46, 45, 47, 44, 44, 42, 37, 39, 41, 42, 42, 32.51067 + 40, 38, 36, 23, 40, 35, 36, 24, 48, 52, 56, 53, 53, 50, 42, 36, 32.51068 + 36, 44, 52, 47, 43, 66, 59, 56, 59, 35, 41, 42, 41, 39, 38, 38, 32.51069 + 38, 41, 42, 41, 41, 41, 43, 46, 51, 56, 59, 56, 58, 51, 38, 35, 32.51070 + 44, 50, 50, 41, 48, 52, 45, 39, 39, 44, 45, 31, 44, 66, 89, 88, 32.51071 + 65, 55, 24, 46, 58, 108, 56, 78, 255, 255, 255, 255, 54, 68, 108, 196, 32.51072 + 181, 166, 144, 203, 156, 120, 184, 156, 183, 150, 105, 238, 209, 228, 145, 140, 32.51073 + 208, 167, 215, 210, 193, 236, 165, 167, 169, 187, 166, 231, 154, 191, 149, 120, 32.51074 + 69, 66, 72, 59, 59, 82, 72, 107, 52, 40, 44, 60, 70, 66, 48, 38, 32.51075 + 35, 41, 37, 47, 42, 47, 43, 35, 37, 40, 42, 42, 40, 37, 35, 30, 32.51076 + 39, 25, 29, 37, 76, 70, 55, 44, 46, 47, 45, 41, 40, 43, 46, 52, 32.51077 + 52, 62, 59, 54, 50, 37, 38, 39, 39, 40, 40, 41, 42, 46, 46, 46, 32.51078 + 44, 43, 43, 46, 50, 57, 60, 44, 50, 55, 53, 46, 43, 46, 51, 40, 32.51079 + 51, 56, 48, 36, 31, 33, 34, 38, 41, 60, 81, 95, 77, 72, 37, 130, 32.51080 + 62, 44, 80, 77, 89, 255, 255, 255, 57, 124, 208, 214, 163, 149, 202, 151, 32.51081 + 179, 180, 208, 179, 166, 180, 93, 215, 215, 201, 162, 169, 168, 154, 215, 214, 32.51082 + 162, 207, 211, 166, 171, 226, 155, 200, 176, 211, 117, 164, 78, 61, 65, 71, 32.51083 + 54, 81, 72, 36, 38, 41, 58, 47, 47, 52, 54, 44, 39, 46, 37, 50, 32.51084 + 38, 40, 32, 33, 34, 34, 35, 35, 34, 34, 33, 34, 37, 23, 34, 41, 32.51085 + 70, 59, 47, 36, 36, 37, 38, 40, 42, 47, 49, 58, 63, 54, 54, 46, 32.51086 + 38, 43, 38, 40, 41, 41, 41, 41, 41, 44, 44, 42, 43, 45, 47, 49, 32.51087 + 50, 50, 50, 39, 41, 50, 57, 51, 40, 40, 49, 38, 48, 54, 48, 39, 32.51088 + 34, 32, 29, 53, 41, 46, 58, 85, 78, 88, 59, 122, 85, 50, 92, 58, 32.51089 + 116, 255, 255, 255, 50, 77, 217, 135, 182, 182, 167, 218, 178, 167, 213, 220, 32.51090 + 191, 160, 88, 148, 173, 175, 203, 180, 138, 187, 137, 184, 188, 194, 181, 143, 32.51091 + 229, 151, 177, 129, 202, 202, 163, 89, 84, 63, 47, 61, 55, 46, 47, 50, 32.51092 + 57, 34, 54, 43, 48, 46, 42, 46, 40, 51, 41, 57, 42, 45, 35, 32, 32.51093 + 31, 31, 29, 30, 30, 33, 33, 32, 37, 34, 45, 36, 45, 38, 42, 37, 32.51094 + 33, 28, 28, 36, 45, 53, 58, 64, 69, 46, 48, 41, 30, 46, 41, 43, 32.51095 + 43, 44, 41, 42, 41, 40, 40, 35, 39, 45, 49, 51, 47, 42, 38, 45, 32.51096 + 38, 42, 53, 48, 34, 35, 48, 35, 44, 50, 49, 45, 42, 38, 31, 43, 32.51097 + 28, 33, 46, 80, 74, 84, 50, 73, 41, 76, 55, 53, 54, 255, 255, 255, 32.51098 + 37, 141, 184, 214, 187, 199, 174, 200, 168, 161, 193, 189, 185, 133, 120, 195, 32.51099 + 97, 159, 131, 136, 182, 103, 117, 171, 135, 174, 137, 160, 103, 95, 163, 199, 32.51100 + 158, 163, 113, 73, 67, 51, 58, 54, 71, 47, 64, 52, 58, 55, 43, 41, 32.51101 + 47, 40, 25, 31, 37, 47, 30, 40, 99, 53, 29, 36, 36, 32, 17, 44, 32.51102 + 17, 49, 22, 32, 39, 32, 51, 57, 39, 47, 34, 32, 26, 37, 47, 40, 32.51103 + 35, 43, 47, 48, 41, 34, 32, 35, 39, 42, 42, 45, 46, 47, 46, 46, 32.51104 + 43, 40, 37, 37, 34, 34, 41, 50, 55, 52, 47, 49, 37, 42, 55, 44, 32.51105 + 58, 32, 52, 42, 42, 44, 47, 45, 39, 38, 38, 37, 42, 28, 33, 42, 32.51106 + 73, 97, 53, 52, 30, 46, 59, 41, 53, 85, 255, 255, 78, 163, 208, 197, 32.51107 + 182, 194, 170, 190, 167, 160, 180, 195, 184, 136, 132, 134, 143, 169, 141, 155, 32.51108 + 136, 136, 117, 155, 126, 169, 139, 122, 95, 93, 142, 154, 127, 140, 98, 52, 32.51109 + 58, 72, 60, 56, 47, 38, 59, 59, 58, 47, 33, 33, 42, 46, 43, 46, 32.51110 + 36, 43, 41, 50, 92, 49, 38, 32, 34, 41, 33, 32, 36, 36, 38, 33, 32.51111 + 51, 48, 52, 39, 25, 44, 48, 52, 41, 36, 35, 34, 42, 45, 33, 32, 32.51112 + 32, 33, 36, 39, 41, 41, 39, 49, 51, 52, 50, 46, 41, 39, 39, 37, 32.51113 + 34, 33, 37, 43, 46, 45, 42, 48, 35, 38, 51, 43, 56, 32, 47, 38, 32.51114 + 40, 46, 51, 48, 39, 33, 33, 35, 39, 28, 32, 36, 59, 84, 55, 33, 32.51115 + 43, 54, 67, 73, 63, 57, 255, 255, 150, 149, 145, 181, 192, 156, 175, 143, 32.51116 + 197, 172, 210, 178, 170, 188, 195, 102, 121, 153, 191, 154, 123, 129, 160, 115, 32.51117 + 131, 157, 128, 122, 126, 121, 144, 125, 115, 125, 96, 55, 47, 68, 47, 71, 32.51118 + 49, 42, 45, 51, 50, 47, 44, 43, 43, 41, 40, 39, 35, 54, 55, 43, 32.51119 + 54, 35, 58, 40, 22, 93, 26, 73, 29, 51, 44, 40, 50, 44, 47, 45, 32.51120 + 38, 43, 35, 55, 46, 37, 28, 28, 44, 45, 25, 38, 40, 42, 41, 39, 32.51121 + 38, 37, 37, 51, 53, 54, 51, 45, 40, 38, 38, 34, 34, 33, 34, 36, 32.51122 + 39, 42, 44, 49, 37, 36, 47, 46, 54, 36, 43, 33, 34, 38, 42, 41, 32.51123 + 35, 33, 35, 34, 37, 32, 34, 32, 45, 72, 65, 46, 71, 56, 56, 85, 32.51124 + 66, 42, 255, 255, 212, 182, 159, 166, 182, 195, 183, 189, 193, 187, 180, 185, 32.51125 + 150, 186, 191, 143, 124, 138, 142, 139, 136, 92, 153, 85, 117, 150, 107, 116, 32.51126 + 123, 111, 125, 97, 98, 98, 80, 70, 51, 62, 47, 81, 67, 56, 52, 46, 32.51127 + 45, 47, 52, 51, 42, 35, 34, 36, 37, 58, 56, 40, 39, 35, 64, 37, 32.51128 + 44, 78, 59, 60, 47, 41, 42, 51, 46, 35, 36, 43, 47, 46, 36, 48, 32.51129 + 39, 36, 33, 29, 37, 40, 30, 44, 44, 42, 38, 34, 34, 39, 44, 50, 32.51130 + 49, 47, 46, 44, 41, 37, 35, 31, 33, 34, 33, 34, 38, 45, 51, 52, 32.51131 + 41, 37, 45, 50, 53, 42, 41, 36, 32, 30, 32, 33, 35, 43, 52, 33, 32.51132 + 36, 37, 38, 32, 37, 61, 77, 68, 82, 56, 49, 78, 64, 47, 79, 255, 32.51133 + 160, 102, 73, 180, 210, 199, 219, 180, 199, 170, 160, 191, 185, 183, 165, 179, 32.51134 + 153, 160, 104, 169, 167, 137, 128, 137, 145, 177, 125, 99, 93, 74, 95, 84, 32.51135 + 88, 78, 69, 53, 47, 58, 50, 61, 52, 38, 45, 48, 44, 43, 45, 44, 32.51136 + 40, 40, 44, 52, 40, 43, 42, 54, 60, 52, 48, 54, 73, 60, 74, 60, 32.51137 + 60, 61, 54, 56, 48, 42, 30, 26, 33, 46, 62, 67, 38, 26, 33, 34, 32.51138 + 33, 34, 32, 29, 31, 32, 32, 33, 37, 44, 51, 45, 40, 36, 37, 41, 32.51139 + 42, 37, 31, 31, 34, 35, 34, 33, 35, 42, 48, 51, 43, 37, 42, 52, 32.51140 + 48, 47, 39, 42, 37, 33, 33, 35, 39, 50, 60, 30, 33, 39, 37, 33, 32.51141 + 35, 51, 79, 71, 68, 60, 64, 73, 64, 55, 63, 255, 210, 114, 130, 194, 32.51142 + 186, 204, 177, 196, 167, 205, 187, 185, 215, 183, 177, 170, 131, 158, 143, 132, 32.51143 + 135, 152, 102, 146, 168, 121, 100, 104, 85, 68, 82, 87, 85, 69, 63, 56, 32.51144 + 49, 57, 56, 72, 63, 33, 30, 37, 42, 47, 50, 49, 47, 45, 43, 45, 32.51145 + 39, 42, 34, 51, 54, 55, 42, 47, 51, 34, 32, 49, 35, 63, 42, 53, 32.51146 + 38, 42, 41, 39, 41, 43, 64, 94, 45, 18, 29, 36, 35, 32, 29, 25, 32.51147 + 29, 35, 39, 41, 42, 42, 43, 39, 34, 30, 33, 38, 41, 37, 33, 35, 32.51148 + 37, 38, 36, 33, 31, 33, 36, 47, 43, 37, 37, 51, 40, 48, 35, 39, 32.51149 + 36, 35, 36, 36, 36, 41, 48, 27, 29, 37, 31, 34, 37, 39, 69, 80, 32.51150 + 62, 62, 69, 62, 58, 61, 60, 255, 255, 164, 182, 172, 175, 180, 212, 197, 32.51151 + 188, 206, 204, 198, 196, 159, 173, 173, 128, 153, 146, 123, 133, 158, 108, 151, 32.51152 + 168, 107, 106, 92, 81, 78, 68, 75, 63, 52, 49, 82, 64, 80, 67, 104, 32.51153 + 83, 63, 50, 36, 49, 58, 57, 54, 52, 45, 36, 30, 34, 45, 36, 43, 32.51154 + 29, 45, 45, 63, 71, 44, 72, 55, 85, 66, 64, 49, 25, 38, 48, 52, 32.51155 + 51, 49, 81, 76, 42, 26, 31, 33, 34, 35, 31, 35, 36, 39, 42, 44, 32.51156 + 43, 39, 36, 35, 35, 35, 35, 36, 36, 38, 39, 37, 39, 41, 40, 37, 32.51157 + 34, 31, 30, 45, 46, 39, 36, 51, 34, 51, 35, 39, 35, 33, 34, 33, 32.51158 + 32, 37, 44, 30, 31, 38, 28, 38, 44, 31, 55, 99, 81, 69, 64, 58, 32.51159 + 55, 62, 70, 255, 255, 230, 196, 207, 189, 186, 205, 193, 170, 206, 209, 206, 32.51160 + 206, 208, 185, 193, 162, 192, 144, 151, 144, 162, 78, 159, 113, 150, 138, 76, 32.51161 + 79, 91, 63, 70, 56, 53, 54, 58, 48, 87, 49, 87, 48, 61, 64, 57, 32.51162 + 66, 62, 46, 40, 47, 49, 43, 41, 31, 36, 36, 52, 30, 43, 40, 51, 32.51163 + 36, 70, 49, 77, 69, 51, 37, 46, 27, 44, 42, 28, 31, 64, 137, 32, 32.51164 + 32, 40, 40, 29, 29, 38, 38, 34, 31, 28, 31, 36, 41, 43, 42, 33, 32.51165 + 39, 43, 40, 34, 32, 38, 44, 37, 39, 42, 45, 44, 40, 35, 32, 45, 32.51166 + 49, 43, 38, 53, 33, 55, 37, 47, 40, 34, 32, 32, 35, 46, 57, 34, 32.51167 + 34, 39, 26, 41, 49, 26, 45, 102, 98, 79, 69, 71, 59, 54, 72, 126, 32.51168 + 255, 255, 226, 183, 161, 224, 220, 187, 193, 177, 195, 229, 182, 210, 185, 190, 32.51169 + 198, 176, 152, 144, 134, 119, 95, 158, 121, 99, 88, 117, 73, 59, 82, 68, 32.51170 + 38, 53, 38, 62, 54, 53, 55, 55, 52, 54, 60, 50, 63, 72, 64, 34, 32.51171 + 78, 34, 43, 41, 39, 37, 38, 40, 40, 37, 34, 36, 49, 39, 71, 49, 32.51172 + 45, 52, 48, 27, 52, 31, 41, 29, 38, 111, 100, 32, 33, 33, 34, 35, 32.51173 + 34, 34, 33, 36, 37, 39, 41, 41, 39, 37, 36, 35, 37, 39, 37, 35, 32.51174 + 35, 38, 41, 46, 45, 42, 37, 32, 31, 34, 38, 39, 42, 42, 39, 39, 32.51175 + 42, 41, 38, 45, 28, 41, 33, 34, 53, 41, 36, 33, 33, 32, 34, 40, 32.51176 + 45, 42, 35, 73, 105, 87, 57, 60, 60, 80, 61, 52, 255, 255, 255, 255, 32.51177 + 255, 242, 221, 202, 210, 202, 208, 209, 190, 198, 181, 180, 185, 144, 151, 163, 32.51178 + 204, 118, 143, 156, 211, 114, 110, 86, 98, 62, 56, 101, 66, 80, 52, 53, 32.51179 + 48, 48, 55, 59, 57, 56, 58, 61, 59, 63, 71, 62, 108, 59, 57, 45, 32.51180 + 42, 38, 38, 38, 38, 35, 33, 43, 52, 41, 66, 46, 45, 55, 52, 48, 32.51181 + 28, 26, 43, 40, 37, 68, 98, 34, 36, 37, 39, 40, 41, 42, 42, 39, 32.51182 + 39, 39, 38, 37, 34, 32, 31, 33, 35, 37, 37, 36, 37, 40, 43, 41, 32.51183 + 43, 43, 41, 37, 35, 35, 37, 35, 39, 40, 38, 37, 39, 37, 33, 42, 32.51184 + 28, 46, 46, 44, 52, 37, 32, 39, 36, 31, 31, 38, 46, 45, 39, 69, 32.51185 + 104, 76, 81, 53, 60, 55, 56, 64, 255, 255, 255, 255, 255, 255, 255, 255, 32.51186 + 242, 226, 223, 188, 194, 189, 184, 181, 181, 131, 164, 134, 147, 187, 150, 119, 32.51187 + 128, 167, 131, 53, 126, 109, 105, 71, 88, 59, 59, 54, 49, 51, 59, 65, 32.51188 + 63, 58, 54, 51, 43, 47, 65, 66, 102, 60, 59, 49, 46, 41, 38, 37, 32.51189 + 36, 35, 34, 42, 48, 46, 65, 50, 49, 55, 50, 53, 25, 46, 36, 30, 32.51190 + 40, 56, 139, 37, 38, 39, 40, 41, 42, 42, 42, 39, 38, 36, 34, 33, 32.51191 + 32, 31, 31, 32, 34, 35, 36, 35, 35, 37, 39, 35, 38, 42, 43, 41, 32.51192 + 39, 37, 37, 34, 38, 39, 37, 37, 38, 36, 32, 42, 28, 45, 52, 47, 32.51193 + 44, 32, 31, 47, 40, 31, 29, 38, 49, 49, 43, 61, 84, 83, 81, 95, 32.51194 + 87, 81, 61, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 32.51195 + 211, 209, 201, 185, 167, 128, 149, 138, 178, 181, 147, 147, 140, 153, 179, 65, 32.51196 + 87, 169, 104, 58, 52, 59, 56, 59, 54, 52, 56, 61, 60, 52, 45, 38, 32.51197 + 36, 44, 58, 48, 66, 42, 55, 53, 49, 44, 40, 38, 39, 40, 41, 38, 32.51198 + 43, 55, 69, 59, 54, 51, 41, 37, 37, 56, 23, 25, 53, 59, 122, 38, 32.51199 + 38, 38, 38, 37, 36, 34, 33, 37, 35, 33, 32, 32, 33, 35, 36, 35, 32.51200 + 35, 35, 34, 33, 31, 31, 30, 31, 34, 38, 40, 41, 40, 38, 37, 38, 32.51201 + 40, 39, 36, 36, 39, 40, 37, 46, 30, 38, 48, 41, 32, 30, 34, 49, 32.51202 + 42, 32, 30, 40, 51, 50, 44, 40, 95, 74, 113, 71, 113, 59, 51, 77, 32.51203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 215, 203, 186, 32.51204 + 158, 149, 138, 129, 187, 149, 133, 135, 143, 108, 146, 158, 125, 130, 110, 83, 32.51205 + 78, 62, 35, 59, 52, 46, 47, 51, 53, 50, 40, 46, 45, 49, 56, 42, 32.51206 + 47, 38, 54, 52, 50, 46, 42, 41, 43, 46, 49, 49, 48, 66, 67, 60, 32.51207 + 54, 47, 36, 28, 39, 33, 20, 43, 59, 40, 33, 39, 39, 39, 38, 37, 32.51208 + 36, 35, 34, 39, 37, 34, 33, 33, 34, 37, 38, 36, 36, 36, 36, 35, 32.51209 + 34, 32, 30, 31, 31, 32, 34, 36, 37, 38, 38, 39, 40, 37, 32, 32, 32.51210 + 38, 42, 42, 46, 33, 36, 50, 42, 30, 33, 33, 46, 41, 35, 34, 42, 32.51211 + 51, 49, 41, 27, 63, 96, 104, 106, 96, 79, 78, 88, 255, 255, 255, 255, 32.51212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 190, 175, 149, 158, 127, 123, 32.51213 + 176, 204, 145, 146, 125, 137, 133, 110, 182, 117, 161, 69, 52, 28, 68, 55, 32.51214 + 52, 46, 44, 50, 56, 57, 49, 53, 46, 40, 44, 42, 45, 40, 42, 47, 32.51215 + 46, 45, 42, 41, 43, 48, 52, 67, 56, 71, 55, 52, 50, 46, 37, 35, 32.51216 + 40, 21, 34, 49, 39, 35, 16, 38, 39, 40, 42, 43, 43, 43, 43, 43, 32.51217 + 41, 38, 35, 34, 33, 34, 35, 35, 35, 36, 38, 41, 41, 39, 37, 33, 32.51218 + 31, 29, 30, 33, 35, 37, 37, 36, 37, 34, 29, 31, 38, 43, 44, 40, 32.51219 + 37, 38, 56, 51, 37, 41, 29, 41, 40, 37, 36, 41, 47, 45, 39, 49, 32.51220 + 54, 45, 108, 97, 119, 62, 81, 84, 255, 255, 255, 255, 255, 255, 255, 255, 32.51221 + 255, 255, 255, 255, 255, 255, 183, 160, 139, 130, 108, 125, 207, 169, 154, 158, 32.51222 + 166, 108, 139, 80, 93, 80, 68, 98, 67, 52, 34, 48, 50, 47, 44, 49, 32.51223 + 57, 61, 55, 48, 44, 36, 36, 41, 42, 42, 33, 41, 41, 41, 39, 37, 32.51224 + 38, 43, 47, 64, 47, 67, 43, 45, 47, 45, 38, 40, 37, 29, 40, 33, 32.51225 + 25, 44, 44, 36, 37, 39, 41, 42, 43, 43, 43, 42, 41, 38, 36, 34, 32.51226 + 34, 34, 34, 34, 33, 35, 38, 42, 43, 40, 38, 35, 32, 30, 31, 33, 32.51227 + 35, 35, 34, 31, 34, 34, 33, 35, 42, 45, 44, 39, 41, 36, 52, 51, 32.51228 + 43, 50, 29, 38, 39, 38, 35, 37, 42, 43, 40, 44, 29, 57, 93, 175, 32.51229 + 216, 209, 209, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51230 + 255, 255, 180, 164, 158, 135, 137, 172, 191, 164, 208, 130, 161, 122, 136, 118, 32.51231 + 69, 135, 49, 52, 77, 61, 46, 39, 44, 44, 40, 43, 50, 54, 48, 44, 32.51232 + 52, 49, 44, 44, 41, 48, 39, 36, 38, 38, 35, 33, 34, 38, 42, 47, 32.51233 + 34, 60, 38, 47, 51, 47, 39, 41, 28, 33, 36, 27, 34, 39, 22, 34, 32.51234 + 35, 36, 36, 37, 36, 36, 36, 37, 37, 36, 35, 35, 36, 36, 37, 34, 32.51235 + 33, 33, 36, 39, 39, 35, 31, 36, 34, 32, 33, 36, 36, 34, 31, 29, 32.51236 + 34, 38, 39, 42, 47, 48, 45, 42, 44, 30, 41, 42, 42, 56, 33, 36, 32.51237 + 38, 38, 35, 34, 39, 43, 42, 35, 64, 91, 92, 145, 225, 234, 238, 232, 32.51238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 143, 32.51239 + 135, 138, 156, 194, 178, 155, 182, 148, 172, 148, 133, 113, 65, 137, 83, 51, 32.51240 + 78, 51, 51, 61, 45, 38, 47, 49, 39, 42, 54, 44, 42, 40, 41, 43, 32.51241 + 43, 40, 36, 43, 42, 40, 36, 33, 34, 40, 48, 56, 57, 49, 46, 51, 32.51242 + 59, 55, 46, 51, 45, 43, 43, 42, 33, 28, 28, 34, 32, 31, 34, 35, 32.51243 + 34, 36, 41, 34, 36, 38, 36, 32, 31, 32, 34, 43, 36, 31, 34, 41, 32.51244 + 44, 41, 35, 28, 32, 32, 30, 33, 38, 35, 28, 35, 38, 35, 33, 42, 32.51245 + 52, 46, 31, 55, 45, 36, 34, 39, 42, 38, 31, 37, 31, 34, 43, 44, 32.51246 + 38, 39, 48, 21, 49, 104, 62, 160, 217, 214, 222, 240, 255, 255, 255, 255, 32.51247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 170, 164, 139, 165, 212, 32.51248 + 165, 154, 145, 169, 160, 155, 114, 187, 106, 111, 104, 120, 36, 80, 50, 66, 32.51249 + 54, 46, 49, 55, 55, 51, 46, 44, 43, 42, 42, 42, 42, 40, 38, 40, 32.51250 + 41, 40, 37, 32, 31, 33, 38, 50, 57, 56, 54, 58, 65, 67, 67, 67, 32.51251 + 61, 50, 41, 35, 32, 32, 33, 30, 29, 30, 35, 37, 36, 39, 43, 41, 32.51252 + 43, 44, 42, 39, 37, 38, 40, 38, 37, 37, 37, 39, 40, 41, 42, 28, 32.51253 + 34, 36, 33, 31, 34, 34, 32, 35, 31, 31, 38, 46, 48, 44, 41, 50, 32.51254 + 43, 36, 35, 39, 41, 38, 32, 32, 27, 32, 42, 45, 40, 42, 49, 40, 32.51255 + 33, 84, 106, 194, 226, 223, 231, 221, 255, 255, 255, 255, 255, 255, 255, 255, 32.51256 + 255, 255, 255, 255, 255, 255, 255, 145, 138, 169, 197, 217, 165, 158, 135, 179, 32.51257 + 161, 167, 130, 101, 86, 75, 69, 102, 54, 139, 72, 55, 56, 52, 45, 45, 32.51258 + 51, 48, 37, 41, 43, 44, 43, 41, 39, 39, 39, 37, 38, 39, 37, 34, 32.51259 + 32, 32, 35, 48, 59, 63, 58, 54, 57, 63, 68, 74, 73, 63, 44, 36, 32.51260 + 37, 39, 34, 32, 31, 32, 37, 39, 37, 38, 41, 34, 35, 36, 35, 32, 32.51261 + 31, 31, 32, 33, 38, 42, 40, 36, 35, 40, 46, 30, 37, 40, 35, 31, 32.51262 + 32, 34, 35, 38, 30, 31, 44, 48, 41, 39, 47, 42, 39, 37, 36, 38, 32.51263 + 39, 40, 36, 30, 26, 31, 41, 45, 42, 44, 49, 49, 34, 80, 157, 204, 32.51264 + 213, 218, 217, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51265 + 255, 255, 255, 143, 151, 224, 181, 200, 182, 163, 167, 164, 173, 174, 178, 125, 32.51266 + 103, 86, 92, 67, 64, 75, 55, 48, 57, 57, 47, 35, 34, 39, 41, 38, 32.51267 + 40, 44, 42, 39, 36, 38, 39, 35, 35, 37, 37, 38, 37, 38, 40, 48, 32.51268 + 55, 59, 55, 50, 51, 57, 64, 71, 81, 76, 58, 46, 48, 44, 33, 39, 32.51269 + 37, 38, 42, 42, 37, 36, 38, 42, 42, 41, 41, 39, 38, 38, 38, 34, 32.51270 + 39, 42, 39, 34, 32, 37, 42, 37, 38, 38, 35, 33, 34, 35, 36, 40, 32.51271 + 37, 38, 44, 43, 37, 36, 42, 35, 36, 37, 37, 37, 38, 40, 41, 31, 32.51272 + 27, 31, 39, 43, 43, 44, 47, 36, 42, 93, 191, 192, 197, 221, 213, 207, 32.51273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 32.51274 + 129, 213, 186, 186, 193, 171, 184, 154, 168, 166, 195, 150, 115, 89, 98, 64, 32.51275 + 100, 65, 61, 65, 60, 55, 51, 43, 36, 40, 48, 35, 36, 41, 39, 38, 32.51276 + 34, 38, 38, 37, 34, 35, 33, 36, 37, 40, 42, 41, 43, 45, 48, 52, 32.51277 + 56, 61, 68, 68, 82, 82, 64, 51, 50, 47, 38, 40, 38, 40, 43, 43, 32.51278 + 39, 38, 40, 42, 42, 41, 40, 40, 39, 38, 37, 38, 38, 37, 35, 33, 32.51279 + 32, 32, 33, 44, 38, 32, 33, 37, 38, 36, 34, 36, 43, 44, 38, 35, 32.51280 + 39, 39, 35, 30, 33, 36, 37, 37, 37, 39, 40, 33, 29, 32, 36, 40, 32.51281 + 42, 42, 43, 28, 41, 90, 208, 207, 204, 230, 223, 210, 255, 255, 255, 255, 32.51282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 112, 145, 202, 187, 32.51283 + 187, 176, 172, 164, 152, 151, 170, 166, 148, 111, 86, 67, 73, 77, 58, 84, 32.51284 + 63, 49, 50, 52, 47, 42, 43, 33, 36, 38, 39, 39, 39, 40, 41, 39, 32.51285 + 37, 33, 33, 34, 36, 37, 40, 49, 45, 44, 48, 53, 55, 60, 63, 69, 32.51286 + 79, 79, 63, 49, 46, 47, 43, 37, 34, 36, 41, 43, 41, 42, 45, 37, 32.51287 + 35, 33, 33, 34, 34, 32, 30, 40, 36, 32, 32, 33, 33, 31, 28, 47, 32.51288 + 36, 28, 31, 38, 40, 38, 35, 31, 42, 43, 33, 32, 41, 42, 34, 30, 32.51289 + 32, 35, 37, 37, 37, 37, 36, 33, 30, 32, 34, 39, 41, 42, 42, 41, 32.51290 + 32, 64, 190, 224, 214, 217, 220, 217, 255, 255, 255, 255, 255, 255, 255, 255, 32.51291 + 255, 255, 255, 255, 255, 255, 255, 221, 154, 126, 177, 186, 184, 178, 165, 178, 32.51292 + 148, 143, 154, 178, 136, 117, 108, 106, 61, 89, 107, 80, 72, 60, 51, 48, 32.51293 + 48, 44, 37, 36, 36, 38, 41, 44, 46, 46, 45, 40, 38, 36, 37, 40, 32.51294 + 41, 39, 40, 54, 49, 47, 51, 52, 51, 54, 60, 69, 77, 81, 73, 56, 32.51295 + 45, 43, 44, 35, 31, 32, 37, 39, 39, 41, 45, 44, 42, 40, 40, 41, 32.51296 + 41, 39, 37, 37, 34, 31, 31, 33, 34, 33, 31, 45, 35, 28, 31, 36, 32.51297 + 37, 38, 40, 37, 37, 36, 34, 34, 36, 36, 34, 31, 32, 34, 37, 38, 32.51298 + 37, 34, 31, 33, 31, 29, 32, 38, 43, 44, 42, 47, 35, 41, 127, 200, 32.51299 + 215, 203, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51300 + 255, 255, 255, 255, 108, 128, 180, 176, 186, 178, 180, 181, 158, 145, 163, 178, 32.51301 + 153, 142, 87, 96, 113, 93, 70, 67, 85, 86, 61, 42, 43, 48, 43, 39, 32.51302 + 38, 38, 42, 48, 51, 50, 48, 37, 37, 39, 43, 48, 49, 46, 44, 45, 32.51303 + 43, 44, 50, 51, 52, 57, 66, 67, 77, 88, 88, 70, 49, 40, 40, 36, 32.51304 + 32, 31, 34, 35, 34, 36, 41, 38, 35, 33, 33, 35, 35, 33, 30, 32, 32.51305 + 33, 33, 33, 33, 34, 36, 37, 42, 34, 30, 33, 34, 33, 37, 44, 46, 32.51306 + 35, 32, 38, 38, 29, 27, 33, 32, 32, 34, 36, 38, 37, 33, 28, 31, 32.51307 + 29, 28, 29, 36, 44, 46, 45, 34, 40, 30, 67, 164, 214, 211, 224, 255, 32.51308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51309 + 73, 101, 180, 176, 179, 172, 173, 176, 164, 150, 156, 182, 153, 125, 114, 114, 32.51310 + 123, 111, 81, 75, 66, 86, 75, 63, 57, 35, 49, 40, 48, 49, 51, 56, 32.51311 + 49, 43, 48, 48, 35, 36, 44, 44, 43, 39, 30, 47, 47, 46, 49, 54, 32.51312 + 60, 62, 63, 65, 79, 92, 90, 69, 47, 41, 45, 34, 33, 34, 34, 33, 32.51313 + 33, 35, 36, 37, 33, 30, 29, 32, 33, 32, 30, 34, 34, 34, 33, 33, 32.51314 + 32, 32, 31, 37, 35, 32, 33, 36, 40, 43, 44, 43, 39, 35, 35, 39, 32.51315 + 40, 36, 31, 33, 32, 31, 34, 37, 38, 35, 31, 30, 33, 35, 34, 35, 32.51316 + 37, 38, 35, 55, 36, 37, 46, 121, 190, 233, 217, 255, 255, 255, 255, 255, 32.51317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 92, 154, 158, 32.51318 + 165, 171, 171, 157, 146, 147, 156, 168, 135, 141, 106, 140, 120, 138, 103, 84, 32.51319 + 76, 82, 76, 65, 54, 38, 43, 47, 46, 42, 41, 53, 50, 49, 54, 59, 32.51320 + 52, 58, 55, 43, 35, 42, 43, 42, 42, 41, 41, 46, 53, 62, 68, 76, 32.51321 + 82, 89, 89, 75, 55, 45, 41, 35, 34, 35, 35, 34, 34, 35, 37, 37, 32.51322 + 34, 31, 31, 32, 34, 33, 31, 33, 33, 33, 32, 32, 32, 32, 32, 32, 32.51323 + 31, 31, 32, 34, 34, 33, 31, 42, 38, 35, 35, 37, 37, 34, 32, 33, 32.51324 + 31, 29, 31, 34, 37, 38, 36, 27, 31, 33, 32, 35, 39, 42, 39, 44, 32.51325 + 35, 30, 24, 55, 99, 121, 101, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51326 + 255, 255, 255, 255, 255, 255, 255, 255, 89, 109, 157, 160, 157, 168, 172, 152, 32.51327 + 146, 156, 159, 165, 151, 146, 133, 133, 129, 130, 110, 90, 87, 76, 79, 72, 32.51328 + 58, 55, 49, 59, 55, 49, 50, 62, 60, 57, 63, 65, 57, 59, 55, 39, 32.51329 + 33, 41, 45, 46, 47, 45, 42, 45, 53, 69, 81, 86, 87, 89, 88, 79, 32.51330 + 61, 47, 38, 36, 35, 36, 36, 35, 35, 36, 37, 36, 34, 32, 32, 33, 32.51331 + 34, 33, 32, 32, 32, 32, 32, 32, 33, 33, 33, 30, 31, 33, 36, 38, 32.51332 + 36, 32, 28, 39, 38, 36, 35, 34, 33, 33, 32, 33, 30, 28, 28, 32, 32.51333 + 37, 40, 41, 29, 32, 33, 32, 33, 39, 41, 40, 40, 45, 38, 32, 30, 32.51334 + 70, 83, 72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51335 + 255, 255, 255, 255, 73, 99, 138, 177, 157, 164, 174, 161, 165, 174, 160, 173, 32.51336 + 167, 157, 152, 124, 121, 111, 101, 92, 93, 71, 79, 81, 70, 79, 63, 63, 32.51337 + 64, 63, 66, 72, 61, 55, 62, 64, 48, 46, 47, 44, 42, 44, 40, 50, 32.51338 + 55, 54, 49, 48, 54, 71, 85, 91, 90, 89, 88, 79, 61, 47, 36, 38, 32.51339 + 36, 37, 37, 35, 35, 36, 38, 33, 33, 32, 32, 32, 33, 32, 32, 32, 32.51340 + 32, 33, 33, 34, 34, 35, 35, 29, 30, 33, 37, 40, 40, 36, 33, 38, 32.51341 + 38, 37, 34, 31, 30, 31, 33, 32, 30, 29, 30, 32, 35, 38, 39, 35, 32.51342 + 37, 35, 32, 32, 35, 38, 35, 29, 38, 30, 31, 24, 74, 91, 87, 255, 32.51343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51344 + 98, 120, 152, 183, 162, 166, 178, 166, 172, 181, 168, 170, 153, 174, 136, 141, 32.51345 + 101, 121, 103, 101, 100, 73, 79, 83, 73, 83, 65, 59, 62, 66, 66, 66, 32.51346 + 50, 49, 63, 59, 46, 49, 53, 52, 49, 51, 45, 50, 55, 57, 51, 47, 32.51347 + 48, 59, 71, 87, 90, 91, 89, 77, 57, 44, 36, 38, 37, 38, 37, 35, 32.51348 + 35, 36, 37, 30, 31, 32, 32, 31, 31, 31, 32, 33, 33, 34, 35, 35, 32.51349 + 36, 36, 36, 30, 30, 31, 33, 35, 36, 35, 33, 39, 39, 37, 33, 30, 32.51350 + 29, 30, 32, 30, 31, 32, 33, 34, 34, 34, 34, 34, 37, 36, 31, 30, 32.51351 + 34, 37, 35, 35, 39, 22, 22, 17, 64, 74, 63, 255, 255, 255, 255, 255, 32.51352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 115, 138, 183, 32.51353 + 175, 182, 186, 170, 170, 182, 183, 167, 155, 166, 144, 138, 112, 121, 113, 114, 32.51354 + 106, 84, 77, 74, 69, 68, 53, 61, 63, 64, 62, 58, 44, 51, 76, 47, 32.51355 + 48, 61, 63, 49, 41, 49, 54, 53, 60, 63, 58, 51, 48, 53, 62, 82, 32.51356 + 87, 93, 91, 77, 56, 43, 37, 38, 36, 37, 36, 35, 34, 34, 36, 29, 32.51357 + 31, 33, 33, 32, 31, 32, 33, 34, 34, 34, 35, 35, 35, 35, 35, 40, 32.51358 + 37, 35, 34, 35, 36, 35, 34, 42, 39, 35, 32, 31, 30, 31, 31, 29, 32.51359 + 31, 34, 35, 34, 32, 32, 33, 30, 33, 32, 28, 27, 33, 38, 38, 40, 32.51360 + 41, 30, 22, 22, 58, 66, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51361 + 255, 255, 255, 255, 255, 255, 255, 255, 102, 120, 138, 190, 190, 190, 191, 184, 32.51362 + 179, 183, 191, 174, 168, 157, 160, 130, 129, 122, 123, 122, 105, 94, 75, 68, 32.51363 + 70, 57, 49, 70, 68, 68, 66, 65, 49, 56, 79, 44, 44, 60, 62, 49, 32.51364 + 41, 51, 56, 62, 67, 69, 65, 58, 53, 55, 60, 79, 84, 91, 92, 78, 32.51365 + 59, 43, 37, 38, 36, 37, 36, 34, 32, 33, 34, 30, 33, 36, 36, 35, 32.51366 + 33, 34, 36, 33, 33, 33, 33, 33, 32, 32, 32, 42, 40, 38, 38, 39, 32.51367 + 39, 37, 36, 45, 40, 34, 31, 32, 33, 32, 30, 28, 30, 33, 32, 31, 32.51368 + 31, 34, 37, 29, 32, 31, 26, 26, 32, 37, 38, 28, 30, 31, 11, 16, 32.51369 + 41, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51370 + 255, 255, 255, 255, 111, 132, 148, 194, 190, 177, 178, 192, 188, 179, 182, 184, 32.51371 + 160, 172, 145, 152, 120, 140, 130, 121, 101, 101, 76, 72, 81, 61, 59, 74, 32.51372 + 73, 71, 75, 73, 54, 50, 69, 50, 44, 50, 59, 57, 57, 60, 59, 67, 32.51373 + 72, 71, 66, 58, 52, 53, 54, 75, 79, 86, 91, 82, 65, 49, 38, 37, 32.51374 + 35, 36, 35, 33, 32, 32, 34, 31, 35, 38, 39, 38, 35, 37, 38, 32, 32.51375 + 32, 32, 31, 30, 30, 29, 29, 33, 33, 33, 35, 37, 38, 36, 34, 47, 32.51376 + 40, 33, 31, 33, 35, 33, 29, 28, 29, 30, 29, 29, 31, 37, 42, 32, 32.51377 + 34, 32, 26, 26, 31, 35, 35, 36, 38, 42, 5, 8, 28, 70, 255, 255, 32.51378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51379 + 99, 111, 132, 160, 188, 172, 193, 182, 193, 199, 170, 182, 173, 156, 151, 129, 32.51380 + 146, 132, 145, 126, 127, 103, 103, 81, 90, 80, 80, 62, 75, 87, 58, 48, 32.51381 + 65, 62, 60, 55, 52, 53, 56, 60, 64, 71, 81, 71, 70, 65, 59, 51, 32.51382 + 47, 50, 57, 75, 59, 88, 83, 81, 76, 40, 48, 38, 34, 35, 35, 36, 32.51383 + 37, 39, 39, 39, 39, 37, 35, 34, 31, 35, 35, 35, 34, 33, 33, 32, 32.51384 + 31, 30, 30, 32, 32, 33, 34, 35, 35, 36, 37, 36, 36, 34, 33, 31, 32.51385 + 30, 29, 28, 32, 31, 28, 27, 28, 31, 34, 36, 27, 29, 29, 30, 32, 32.51386 + 33, 38, 40, 47, 36, 34, 16, 10, 39, 79, 255, 255, 255, 255, 255, 255, 32.51387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 108, 124, 171, 32.51388 + 191, 168, 190, 186, 201, 215, 198, 172, 166, 153, 146, 124, 137, 125, 143, 125, 32.51389 + 124, 108, 110, 90, 96, 91, 96, 69, 57, 71, 69, 62, 56, 50, 68, 42, 32.51390 + 53, 60, 63, 66, 72, 75, 75, 72, 71, 68, 61, 50, 41, 43, 52, 63, 32.51391 + 53, 85, 83, 81, 76, 45, 52, 39, 34, 34, 35, 36, 37, 38, 38, 37, 32.51392 + 37, 38, 36, 33, 32, 34, 33, 34, 34, 33, 32, 31, 31, 30, 30, 33, 32.51393 + 33, 34, 35, 36, 37, 37, 38, 34, 34, 33, 32, 31, 30, 29, 29, 32, 32.51394 + 30, 29, 28, 28, 31, 34, 36, 34, 32, 32, 33, 36, 38, 40, 40, 29, 32.51395 + 33, 41, 6, 15, 92, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51396 + 255, 255, 255, 255, 255, 255, 255, 255, 113, 126, 173, 165, 185, 167, 201, 205, 32.51397 + 210, 214, 197, 174, 161, 149, 142, 133, 146, 132, 138, 115, 120, 120, 128, 108, 32.51398 + 97, 87, 90, 67, 87, 100, 69, 66, 91, 79, 58, 52, 63, 69, 64, 60, 32.51399 + 61, 60, 53, 71, 71, 70, 64, 50, 39, 40, 50, 52, 51, 83, 86, 82, 32.51400 + 76, 50, 54, 39, 34, 35, 36, 37, 37, 37, 37, 36, 36, 36, 34, 31, 32.51401 + 30, 31, 32, 33, 33, 33, 32, 31, 31, 30, 30, 32, 32, 33, 33, 34, 32.51402 + 35, 35, 36, 32, 32, 31, 31, 30, 30, 30, 29, 31, 30, 29, 28, 29, 32.51403 + 31, 34, 36, 39, 36, 33, 34, 39, 40, 39, 37, 27, 40, 28, 28, 22, 32.51404 + 145, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51405 + 255, 255, 255, 255, 166, 125, 158, 169, 189, 168, 207, 214, 211, 204, 190, 183, 32.51406 + 157, 141, 136, 144, 157, 137, 128, 121, 127, 131, 134, 114, 93, 84, 89, 89, 32.51407 + 83, 91, 85, 81, 83, 65, 63, 55, 57, 58, 55, 57, 59, 65, 72, 71, 32.51408 + 72, 72, 68, 54, 39, 39, 49, 48, 50, 80, 86, 87, 80, 54, 51, 40, 32.51409 + 35, 37, 38, 39, 39, 38, 38, 36, 37, 37, 35, 32, 31, 31, 32, 33, 32.51410 + 32, 32, 31, 31, 30, 30, 30, 29, 29, 29, 30, 30, 31, 31, 31, 30, 32.51411 + 30, 30, 30, 30, 30, 30, 30, 31, 30, 29, 29, 29, 31, 34, 35, 38, 32.51412 + 34, 32, 34, 38, 40, 38, 33, 41, 33, 19, 37, 55, 122, 158, 255, 255, 32.51413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51414 + 127, 130, 155, 189, 209, 176, 206, 216, 214, 208, 204, 177, 154, 144, 133, 142, 32.51415 + 149, 134, 128, 136, 135, 135, 128, 114, 97, 99, 105, 105, 94, 98, 90, 89, 32.51416 + 93, 74, 72, 74, 63, 57, 60, 62, 56, 61, 76, 73, 73, 75, 74, 61, 32.51417 + 42, 40, 49, 50, 55, 77, 88, 91, 83, 59, 46, 41, 36, 39, 41, 41, 32.51418 + 41, 40, 39, 37, 38, 38, 37, 34, 32, 32, 33, 32, 31, 31, 31, 31, 32.51419 + 30, 30, 30, 29, 29, 29, 29, 29, 30, 30, 30, 29, 29, 29, 30, 30, 32.51420 + 30, 31, 31, 30, 30, 29, 29, 30, 32, 33, 34, 37, 33, 31, 35, 40, 32.51421 + 42, 38, 33, 40, 22, 24, 15, 79, 74, 165, 255, 255, 255, 255, 255, 255, 32.51422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 120, 160, 178, 32.51423 + 212, 186, 214, 227, 218, 203, 193, 164, 152, 159, 136, 135, 131, 131, 140, 132, 32.51424 + 137, 147, 139, 138, 121, 118, 109, 107, 116, 118, 83, 85, 119, 110, 86, 80, 32.51425 + 68, 62, 68, 70, 63, 61, 67, 77, 75, 76, 80, 70, 51, 44, 50, 56, 32.51426 + 67, 83, 94, 94, 81, 61, 43, 41, 36, 39, 41, 42, 42, 40, 39, 37, 32.51427 + 38, 39, 38, 35, 33, 33, 33, 31, 31, 31, 30, 30, 30, 30, 30, 31, 32.51428 + 31, 31, 31, 32, 32, 32, 32, 30, 30, 30, 30, 31, 31, 31, 31, 30, 32.51429 + 30, 30, 30, 31, 32, 33, 34, 36, 36, 35, 38, 41, 42, 39, 35, 23, 32.51430 + 42, 10, 28, 42, 103, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51431 + 255, 255, 255, 255, 255, 255, 255, 255, 116, 134, 150, 150, 203, 188, 219, 231, 32.51432 + 215, 183, 163, 156, 146, 157, 129, 132, 126, 132, 142, 140, 145, 157, 143, 150, 32.51433 + 135, 127, 100, 123, 97, 94, 91, 94, 100, 99, 117, 76, 78, 74, 72, 83, 32.51434 + 97, 94, 83, 80, 76, 77, 85, 80, 60, 49, 53, 62, 81, 94, 102, 92, 32.51435 + 73, 61, 44, 39, 36, 39, 41, 41, 40, 38, 37, 35, 36, 38, 37, 34, 32.51436 + 32, 31, 31, 30, 30, 30, 30, 30, 30, 30, 30, 32, 32, 32, 32, 32, 32.51437 + 32, 32, 32, 32, 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 30, 31, 32.51438 + 32, 33, 33, 37, 38, 39, 40, 38, 38, 35, 33, 24, 51, 7, 38, 6, 32.51439 + 155, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51440 + 255, 255, 255, 255, 255, 109, 134, 145, 202, 184, 206, 216, 203, 173, 153, 155, 32.51441 + 131, 135, 113, 130, 128, 129, 129, 172, 166, 157, 124, 133, 129, 132, 106, 125, 32.51442 + 119, 114, 84, 86, 121, 125, 122, 124, 130, 115, 87, 90, 111, 102, 73, 83, 32.51443 + 76, 77, 89, 85, 65, 54, 56, 65, 89, 104, 107, 89, 66, 58, 46, 37, 32.51444 + 34, 39, 40, 41, 38, 36, 35, 34, 35, 37, 36, 33, 31, 29, 29, 30, 32.51445 + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 33, 32.51446 + 33, 33, 32, 32, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 34, 37, 32.51447 + 38, 39, 38, 34, 30, 29, 28, 39, 26, 28, 9, 18, 156, 255, 255, 255, 32.51448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51449 + 255, 153, 128, 151, 198, 203, 217, 199, 172, 130, 145, 127, 117, 110, 115, 104, 32.51450 + 136, 129, 137, 159, 160, 200, 140, 145, 127, 114, 116, 126, 107, 154, 96, 92, 32.51451 + 105, 108, 131, 124, 131, 138, 129, 110, 90, 82, 81, 86, 89, 75, 76, 85, 32.51452 + 66, 50, 63, 96, 104, 108, 99, 81, 63, 52, 45, 41, 34, 36, 40, 42, 32.51453 + 37, 36, 36, 33, 32, 32, 34, 34, 34, 31, 29, 33, 32, 32, 31, 31, 32.51454 + 30, 30, 29, 31, 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 32.51455 + 30, 30, 30, 29, 29, 30, 31, 31, 32, 33, 34, 33, 48, 42, 45, 27, 32.51456 + 17, 37, 23, 32, 17, 38, 17, 22, 164, 255, 255, 255, 255, 255, 255, 255, 32.51457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 118, 146, 32.51458 + 170, 191, 183, 196, 158, 137, 127, 115, 95, 100, 97, 102, 125, 129, 160, 171, 32.51459 + 169, 206, 117, 101, 145, 117, 128, 130, 156, 114, 115, 79, 116, 93, 129, 102, 32.51460 + 112, 130, 128, 129, 113, 112, 110, 99, 97, 81, 73, 76, 65, 63, 85, 99, 32.51461 + 107, 110, 100, 82, 61, 49, 42, 38, 35, 36, 39, 40, 36, 34, 34, 37, 32.51462 + 36, 34, 35, 35, 32, 28, 25, 30, 30, 30, 30, 29, 29, 29, 29, 31, 32.51463 + 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 30, 30, 30, 29, 32.51464 + 29, 30, 31, 31, 32, 33, 34, 41, 38, 28, 43, 39, 26, 36, 24, 18, 32.51465 + 43, 29, 44, 20, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 121, 175, 172, 168, 135, 137, 32.51467 + 119, 119, 103, 104, 82, 99, 91, 106, 114, 116, 183, 168, 162, 163, 124, 133, 32.51468 + 121, 164, 149, 122, 168, 99, 112, 105, 107, 102, 117, 112, 111, 124, 112, 121, 32.51469 + 102, 106, 98, 100, 99, 84, 73, 71, 66, 78, 104, 105, 110, 109, 98, 78, 32.51470 + 59, 45, 39, 43, 40, 42, 46, 46, 41, 40, 40, 41, 39, 36, 36, 36, 32.51471 + 33, 29, 26, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 33, 33, 33, 32.51472 + 33, 32, 32, 31, 31, 31, 31, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32.51473 + 32, 33, 34, 40, 44, 31, 32, 26, 21, 35, 33, 41, 30, 24, 71, 118, 32.51474 + 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51475 + 255, 255, 255, 255, 255, 142, 149, 192, 191, 157, 129, 88, 110, 117, 120, 104, 32.51476 + 90, 107, 107, 104, 103, 94, 191, 186, 165, 126, 132, 130, 113, 142, 118, 105, 32.51477 + 143, 109, 127, 129, 116, 122, 112, 105, 97, 103, 88, 106, 98, 115, 112, 91, 32.51478 + 89, 83, 77, 76, 75, 88, 107, 115, 114, 106, 90, 71, 55, 45, 41, 49, 32.51479 + 48, 50, 51, 50, 44, 43, 45, 40, 37, 36, 38, 37, 37, 34, 31, 33, 32.51480 + 33, 34, 35, 35, 36, 36, 36, 32, 32, 33, 34, 34, 33, 32, 32, 32, 32.51481 + 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 34, 33, 32.51482 + 48, 39, 24, 23, 28, 32, 29, 40, 32, 94, 170, 222, 179, 255, 255, 255, 32.51483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51484 + 255, 150, 160, 125, 139, 122, 103, 60, 84, 102, 116, 111, 103, 105, 109, 83, 32.51485 + 88, 87, 198, 206, 169, 147, 132, 112, 192, 116, 117, 103, 120, 117, 162, 111, 32.51486 + 139, 120, 114, 112, 101, 98, 88, 106, 107, 122, 120, 94, 86, 82, 80, 78, 32.51487 + 82, 97, 105, 123, 119, 104, 85, 64, 52, 45, 45, 51, 51, 51, 54, 51, 32.51488 + 45, 43, 45, 42, 41, 41, 41, 41, 41, 38, 34, 34, 34, 35, 35, 36, 32.51489 + 37, 37, 37, 32, 33, 34, 34, 34, 34, 33, 32, 34, 34, 33, 33, 32, 32.51490 + 32, 31, 31, 29, 29, 30, 31, 31, 32, 33, 34, 34, 36, 31, 30, 41, 32.51491 + 39, 33, 49, 63, 98, 157, 231, 233, 223, 255, 255, 255, 255, 255, 255, 255, 32.51492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 137, 133, 32.51493 + 141, 144, 107, 105, 96, 123, 130, 115, 106, 87, 87, 66, 77, 114, 210, 205, 32.51494 + 159, 164, 137, 184, 187, 137, 121, 113, 99, 131, 152, 99, 124, 109, 100, 131, 32.51495 + 124, 110, 107, 103, 105, 101, 97, 106, 92, 86, 82, 75, 87, 106, 111, 129, 32.51496 + 120, 102, 80, 62, 51, 47, 50, 57, 58, 61, 61, 57, 49, 48, 51, 49, 32.51497 + 47, 46, 46, 44, 41, 37, 34, 34, 33, 33, 33, 34, 34, 34, 34, 33, 32.51498 + 33, 34, 34, 34, 34, 33, 33, 35, 35, 34, 34, 33, 32, 32, 31, 29, 32.51499 + 29, 30, 31, 31, 32, 33, 34, 42, 31, 31, 34, 34, 16, 41, 124, 142, 32.51500 + 193, 216, 211, 217, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 174, 167, 166, 158, 137, 163, 32.51502 + 145, 141, 137, 118, 98, 77, 62, 77, 81, 164, 219, 209, 179, 149, 129, 208, 32.51503 + 105, 126, 100, 118, 107, 133, 140, 108, 113, 98, 93, 123, 121, 102, 111, 94, 32.51504 + 109, 96, 100, 104, 92, 92, 86, 74, 88, 114, 120, 129, 120, 102, 81, 64, 32.51505 + 53, 48, 50, 64, 65, 68, 68, 63, 56, 54, 58, 54, 50, 49, 48, 48, 32.51506 + 44, 40, 36, 35, 34, 34, 33, 33, 33, 33, 33, 33, 34, 34, 35, 35, 32.51507 + 34, 34, 33, 36, 36, 35, 34, 33, 32, 32, 31, 29, 29, 30, 31, 31, 32.51508 + 32, 33, 34, 42, 39, 41, 32, 30, 19, 47, 139, 145, 206, 224, 214, 231, 32.51509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51510 + 255, 255, 255, 255, 255, 255, 169, 177, 185, 166, 199, 230, 229, 172, 161, 121, 32.51511 + 93, 80, 55, 102, 95, 207, 224, 213, 212, 143, 115, 139, 132, 120, 143, 110, 32.51512 + 142, 109, 170, 106, 145, 86, 105, 130, 129, 97, 110, 80, 105, 88, 99, 90, 32.51513 + 85, 96, 96, 79, 93, 121, 126, 127, 118, 102, 83, 67, 56, 51, 51, 66, 32.51514 + 69, 70, 71, 64, 55, 56, 60, 54, 52, 51, 52, 52, 51, 48, 44, 40, 32.51515 + 37, 37, 36, 36, 35, 35, 34, 34, 35, 35, 35, 35, 34, 34, 33, 37, 32.51516 + 36, 35, 35, 34, 33, 32, 32, 29, 29, 30, 31, 31, 32, 33, 34, 35, 32.51517 + 42, 43, 32, 60, 71, 45, 67, 71, 109, 82, 213, 243, 255, 255, 255, 255, 32.51518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51519 + 255, 255, 165, 158, 165, 157, 167, 181, 184, 194, 189, 160, 100, 66, 94, 97, 32.51520 + 153, 249, 218, 197, 166, 129, 139, 119, 114, 106, 128, 90, 94, 111, 112, 148, 32.51521 + 186, 120, 149, 127, 110, 107, 109, 92, 80, 90, 102, 97, 89, 99, 102, 89, 32.51522 + 98, 123, 128, 119, 117, 106, 83, 64, 61, 63, 65, 71, 75, 77, 77, 73, 32.51523 + 70, 68, 67, 61, 58, 57, 62, 63, 59, 54, 52, 56, 52, 48, 45, 41, 32.51524 + 41, 42, 43, 38, 39, 38, 33, 29, 29, 32, 36, 32, 29, 30, 34, 34, 32.51525 + 31, 30, 33, 26, 29, 32, 32, 32, 32, 35, 39, 53, 54, 57, 64, 71, 32.51526 + 74, 67, 59, 67, 55, 84, 88, 230, 255, 255, 255, 255, 255, 255, 255, 255, 32.51527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 163, 32.51528 + 177, 125, 122, 190, 212, 196, 192, 157, 86, 82, 109, 105, 176, 237, 237, 206, 32.51529 + 175, 134, 135, 117, 117, 112, 127, 92, 86, 128, 120, 157, 159, 100, 109, 117, 32.51530 + 104, 108, 117, 103, 88, 88, 94, 102, 90, 96, 96, 86, 99, 129, 141, 121, 32.51531 + 113, 94, 73, 65, 68, 70, 69, 77, 81, 83, 83, 79, 76, 75, 73, 72, 32.51532 + 66, 64, 67, 68, 65, 62, 62, 58, 53, 51, 47, 45, 44, 46, 47, 44, 32.51533 + 43, 43, 39, 36, 33, 35, 37, 37, 34, 34, 37, 36, 32, 31, 33, 41, 32.51534 + 38, 34, 33, 36, 40, 43, 45, 59, 61, 62, 62, 69, 78, 77, 69, 61, 32.51535 + 73, 84, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 141, 123, 142, 179, 187, 32.51537 + 215, 240, 194, 171, 121, 148, 146, 124, 216, 225, 236, 196, 171, 135, 127, 115, 32.51538 + 117, 111, 113, 126, 96, 113, 109, 116, 131, 94, 111, 111, 101, 107, 117, 106, 32.51539 + 95, 91, 91, 100, 93, 97, 95, 87, 96, 125, 141, 125, 110, 86, 69, 67, 32.51540 + 71, 73, 70, 79, 82, 84, 85, 81, 77, 76, 74, 77, 70, 66, 69, 69, 32.51541 + 68, 68, 67, 58, 54, 54, 50, 49, 48, 49, 48, 48, 47, 47, 45, 42, 32.51542 + 39, 40, 39, 41, 38, 38, 40, 39, 34, 33, 35, 37, 33, 30, 34, 43, 32.51543 + 52, 57, 58, 55, 65, 71, 66, 72, 85, 88, 81, 69, 88, 80, 255, 255, 32.51544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51545 + 255, 255, 255, 255, 255, 255, 129, 124, 137, 153, 185, 198, 199, 219, 228, 162, 32.51546 + 175, 215, 187, 146, 245, 224, 212, 175, 161, 138, 124, 118, 119, 108, 95, 127, 32.51547 + 97, 91, 129, 94, 138, 90, 108, 117, 101, 103, 109, 101, 94, 95, 94, 95, 32.51548 + 96, 102, 103, 94, 94, 107, 119, 121, 104, 84, 70, 69, 72, 70, 70, 76, 32.51549 + 81, 84, 84, 80, 78, 75, 73, 75, 70, 68, 69, 71, 68, 67, 67, 60, 32.51550 + 58, 57, 55, 54, 52, 52, 51, 52, 51, 51, 48, 46, 44, 42, 41, 42, 32.51551 + 38, 39, 42, 41, 37, 36, 38, 28, 28, 30, 37, 46, 56, 64, 68, 58, 32.51552 + 75, 84, 76, 77, 83, 82, 70, 56, 56, 122, 255, 255, 255, 255, 255, 255, 32.51553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51554 + 255, 255, 152, 153, 148, 127, 130, 150, 172, 197, 193, 126, 190, 229, 218, 172, 32.51555 + 241, 224, 197, 166, 157, 143, 125, 126, 125, 117, 98, 132, 96, 82, 125, 91, 32.51556 + 137, 98, 107, 121, 106, 105, 108, 100, 95, 99, 97, 92, 98, 102, 103, 98, 32.51557 + 91, 93, 103, 102, 92, 80, 71, 69, 67, 68, 70, 77, 82, 84, 85, 81, 32.51558 + 78, 76, 74, 73, 69, 69, 72, 74, 70, 67, 66, 62, 61, 61, 59, 58, 32.51559 + 56, 55, 53, 53, 52, 51, 50, 49, 47, 45, 42, 39, 36, 37, 41, 42, 32.51560 + 39, 39, 41, 36, 38, 39, 39, 42, 53, 69, 81, 74, 85, 88, 74, 66, 32.51561 + 64, 60, 48, 57, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 170, 32.51563 + 162, 161, 162, 162, 208, 227, 151, 126, 195, 228, 242, 210, 229, 218, 200, 165, 32.51564 + 154, 141, 118, 122, 120, 122, 109, 139, 97, 96, 101, 100, 115, 109, 103, 115, 32.51565 + 107, 114, 119, 110, 103, 103, 96, 95, 97, 93, 91, 96, 92, 91, 104, 85, 32.51566 + 79, 74, 72, 68, 63, 66, 73, 79, 84, 87, 87, 83, 81, 79, 78, 75, 32.51567 + 72, 73, 78, 79, 73, 69, 69, 65, 64, 65, 64, 63, 59, 57, 55, 55, 32.51568 + 51, 50, 49, 49, 48, 47, 43, 38, 35, 37, 41, 43, 40, 40, 43, 42, 32.51569 + 43, 43, 41, 43, 57, 81, 98, 74, 75, 69, 55, 49, 48, 50, 50, 122, 32.51570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 115, 165, 143, 146, 207, 32.51572 + 214, 172, 136, 155, 208, 239, 244, 230, 229, 212, 197, 157, 144, 138, 114, 119, 32.51573 + 109, 116, 107, 105, 89, 109, 107, 116, 110, 101, 84, 107, 105, 116, 121, 112, 32.51574 + 105, 105, 98, 97, 98, 86, 85, 97, 95, 90, 102, 86, 80, 74, 75, 71, 32.51575 + 66, 67, 73, 79, 84, 84, 85, 83, 80, 78, 78, 78, 74, 74, 78, 80, 32.51576 + 75, 73, 72, 69, 69, 71, 69, 67, 63, 59, 55, 57, 53, 48, 47, 49, 32.51577 + 51, 49, 46, 40, 37, 38, 42, 42, 40, 39, 42, 38, 42, 45, 47, 49, 32.51578 + 58, 71, 82, 65, 55, 49, 46, 45, 43, 50, 123, 255, 255, 255, 255, 255, 32.51579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51580 + 255, 255, 255, 255, 255, 255, 255, 175, 150, 125, 157, 203, 210, 189, 154, 165, 32.51581 + 212, 244, 220, 224, 236, 210, 185, 149, 139, 142, 120, 125, 106, 111, 102, 99, 32.51582 + 100, 91, 95, 85, 109, 103, 111, 102, 103, 113, 117, 105, 102, 106, 102, 98, 32.51583 + 98, 87, 85, 102, 95, 85, 95, 99, 87, 79, 77, 75, 69, 68, 72, 76, 32.51584 + 81, 82, 82, 80, 78, 76, 75, 80, 75, 73, 74, 76, 74, 74, 76, 73, 32.51585 + 72, 73, 72, 70, 65, 60, 56, 58, 53, 49, 47, 49, 52, 51, 48, 43, 32.51586 + 40, 40, 43, 43, 40, 39, 41, 41, 46, 53, 57, 55, 49, 42, 38, 64, 32.51587 + 53, 48, 52, 50, 42, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51589 + 255, 255, 255, 255, 147, 138, 152, 189, 213, 185, 141, 170, 250, 224, 221, 247, 32.51590 + 217, 195, 179, 149, 130, 122, 126, 125, 113, 107, 111, 96, 98, 103, 106, 102, 32.51591 + 100, 99, 102, 104, 105, 107, 113, 116, 114, 104, 92, 93, 93, 92, 90, 92, 32.51592 + 95, 93, 84, 88, 89, 88, 81, 73, 68, 69, 74, 78, 82, 85, 85, 83, 32.51593 + 80, 77, 76, 81, 79, 77, 75, 76, 80, 84, 85, 74, 74, 75, 72, 69, 32.51594 + 63, 61, 60, 61, 63, 62, 55, 51, 51, 47, 41, 47, 42, 45, 45, 43, 32.51595 + 51, 51, 37, 58, 48, 42, 43, 43, 39, 39, 42, 47, 46, 45, 46, 44, 32.51596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51598 + 255, 187, 207, 217, 192, 174, 158, 196, 252, 236, 234, 240, 221, 205, 165, 139, 32.51599 + 147, 144, 124, 111, 109, 108, 103, 97, 99, 105, 107, 108, 107, 109, 108, 112, 32.51600 + 107, 103, 103, 109, 112, 111, 106, 97, 95, 93, 90, 92, 94, 91, 85, 86, 32.51601 + 89, 89, 86, 78, 72, 72, 73, 77, 79, 81, 80, 78, 77, 76, 78, 83, 32.51602 + 82, 80, 78, 79, 78, 82, 82, 78, 77, 76, 72, 68, 64, 65, 65, 60, 32.51603 + 60, 56, 51, 51, 52, 50, 43, 46, 39, 40, 43, 46, 58, 60, 47, 50, 32.51604 + 43, 39, 41, 43, 41, 40, 41, 41, 40, 40, 113, 255, 255, 255, 255, 255, 32.51605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 246, 32.51607 + 207, 193, 181, 220, 242, 229, 228, 221, 215, 214, 167, 131, 142, 139, 120, 109, 32.51608 + 108, 108, 99, 98, 99, 101, 104, 107, 107, 107, 104, 112, 106, 100, 101, 105, 32.51609 + 111, 116, 114, 101, 99, 96, 92, 92, 95, 91, 86, 85, 88, 89, 88, 81, 32.51610 + 74, 72, 72, 77, 78, 78, 77, 76, 77, 79, 82, 86, 85, 83, 81, 80, 32.51611 + 78, 79, 78, 79, 78, 76, 71, 67, 65, 68, 68, 61, 60, 54, 49, 50, 32.51612 + 51, 49, 41, 46, 36, 38, 42, 46, 58, 62, 51, 40, 36, 35, 38, 41, 32.51613 + 40, 40, 42, 37, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 171, 216, 178, 186, 185, 233, 32.51616 + 230, 215, 226, 231, 219, 208, 175, 137, 125, 118, 123, 123, 113, 105, 105, 103, 32.51617 + 101, 100, 102, 105, 104, 102, 98, 105, 103, 103, 107, 110, 112, 113, 111, 103, 32.51618 + 100, 97, 91, 89, 92, 90, 86, 84, 86, 88, 84, 80, 75, 73, 72, 77, 32.51619 + 79, 80, 80, 80, 80, 83, 85, 85, 84, 83, 82, 81, 79, 78, 77, 77, 32.51620 + 76, 76, 72, 69, 66, 66, 67, 61, 58, 54, 51, 51, 53, 48, 39, 46, 32.51621 + 39, 43, 46, 43, 49, 53, 46, 36, 35, 36, 38, 40, 41, 41, 42, 38, 32.51622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51624 + 255, 255, 255, 255, 255, 255, 181, 215, 191, 207, 197, 214, 189, 158, 188, 234, 32.51625 + 215, 177, 163, 153, 146, 140, 138, 131, 116, 106, 103, 105, 102, 103, 104, 107, 32.51626 + 107, 105, 101, 103, 103, 105, 107, 110, 109, 108, 105, 101, 102, 99, 91, 88, 32.51627 + 90, 88, 86, 88, 87, 86, 81, 78, 76, 76, 76, 74, 77, 82, 84, 83, 32.51628 + 83, 83, 83, 82, 82, 84, 83, 83, 82, 81, 79, 71, 73, 76, 74, 71, 32.51629 + 66, 64, 60, 55, 56, 55, 54, 56, 56, 51, 42, 43, 40, 48, 50, 39, 32.51630 + 37, 43, 41, 37, 39, 40, 39, 39, 40, 40, 40, 255, 255, 255, 255, 255, 32.51631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51633 + 255, 255, 150, 194, 208, 233, 217, 206, 161, 122, 160, 229, 227, 199, 205, 175, 32.51634 + 197, 198, 162, 127, 114, 106, 95, 98, 97, 99, 101, 103, 104, 105, 103, 107, 32.51635 + 105, 103, 101, 102, 104, 107, 107, 100, 102, 102, 95, 90, 91, 89, 87, 92, 32.51636 + 90, 87, 84, 82, 80, 82, 80, 73, 76, 82, 84, 84, 82, 81, 81, 82, 32.51637 + 81, 82, 82, 81, 82, 83, 81, 70, 72, 74, 74, 70, 65, 61, 57, 51, 32.51638 + 54, 58, 57, 57, 59, 58, 52, 42, 39, 47, 50, 38, 33, 39, 40, 39, 32.51639 + 43, 42, 38, 36, 37, 39, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 220, 32.51642 + 223, 229, 211, 155, 129, 134, 166, 194, 202, 200, 210, 191, 219, 220, 178, 133, 32.51643 + 115, 105, 95, 93, 94, 96, 95, 96, 96, 98, 101, 105, 104, 101, 98, 99, 32.51644 + 101, 105, 107, 99, 103, 104, 99, 94, 93, 92, 90, 90, 89, 88, 87, 86, 32.51645 + 84, 83, 80, 78, 79, 83, 84, 83, 82, 83, 84, 86, 84, 82, 80, 80, 32.51646 + 80, 83, 81, 74, 75, 75, 74, 69, 64, 61, 58, 55, 60, 63, 59, 55, 32.51647 + 57, 61, 60, 55, 42, 43, 45, 37, 34, 39, 38, 38, 42, 41, 34, 31, 32.51648 + 34, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 208, 231, 211, 171, 142, 32.51651 + 162, 237, 255, 229, 217, 221, 216, 201, 206, 203, 184, 149, 120, 105, 103, 97, 32.51652 + 99, 101, 99, 95, 94, 96, 99, 97, 99, 101, 101, 101, 100, 101, 102, 98, 32.51653 + 104, 107, 102, 97, 96, 96, 93, 86, 86, 86, 86, 86, 83, 79, 75, 85, 32.51654 + 84, 86, 85, 83, 84, 86, 89, 86, 84, 80, 77, 76, 77, 81, 81, 78, 32.51655 + 76, 76, 73, 67, 63, 61, 60, 65, 70, 68, 58, 51, 52, 58, 59, 69, 32.51656 + 49, 41, 42, 38, 37, 40, 36, 36, 41, 39, 31, 27, 255, 255, 255, 255, 32.51657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51659 + 255, 255, 255, 255, 255, 255, 229, 215, 218, 187, 157, 142, 255, 255, 247, 223, 32.51660 + 223, 224, 214, 231, 223, 214, 179, 130, 116, 113, 92, 100, 95, 89, 87, 87, 32.51661 + 91, 93, 97, 88, 90, 93, 95, 97, 98, 98, 98, 101, 100, 99, 97, 94, 32.51662 + 93, 95, 95, 83, 86, 87, 81, 80, 84, 82, 77, 84, 76, 74, 82, 88, 32.51663 + 86, 81, 80, 84, 84, 81, 78, 80, 84, 81, 73, 79, 70, 70, 74, 66, 32.51664 + 52, 57, 71, 56, 64, 57, 57, 62, 49, 53, 83, 48, 41, 37, 38, 38, 32.51665 + 34, 30, 30, 42, 42, 41, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51668 + 255, 255, 198, 207, 204, 158, 152, 255, 255, 216, 172, 199, 218, 245, 228, 203, 32.51669 + 199, 194, 164, 124, 113, 114, 97, 98, 91, 89, 87, 89, 91, 93, 94, 100, 32.51670 + 99, 98, 97, 99, 99, 101, 102, 99, 99, 99, 96, 95, 93, 92, 92, 83, 32.51671 + 86, 85, 81, 79, 83, 80, 78, 82, 76, 75, 82, 86, 83, 80, 80, 82, 32.51672 + 84, 82, 79, 79, 81, 79, 73, 73, 67, 67, 69, 64, 56, 59, 69, 63, 32.51673 + 48, 61, 63, 49, 66, 78, 46, 47, 40, 36, 38, 38, 34, 32, 32, 39, 32.51674 + 39, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 204, 32.51677 + 179, 166, 238, 255, 223, 166, 145, 185, 235, 224, 168, 203, 198, 189, 160, 122, 32.51678 + 110, 109, 98, 95, 92, 89, 88, 90, 92, 93, 93, 104, 102, 101, 97, 96, 32.51679 + 95, 96, 97, 98, 99, 97, 97, 97, 95, 92, 90, 85, 86, 84, 81, 80, 32.51680 + 82, 79, 78, 79, 79, 80, 84, 85, 81, 81, 83, 80, 85, 87, 84, 80, 32.51681 + 80, 79, 75, 70, 68, 67, 65, 64, 62, 65, 67, 57, 60, 53, 52, 71, 32.51682 + 77, 57, 35, 44, 38, 36, 38, 38, 35, 34, 36, 37, 110, 255, 255, 255, 32.51683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 190, 170, 174, 250, 234, 32.51686 + 193, 124, 111, 106, 230, 237, 199, 211, 204, 189, 157, 125, 111, 105, 99, 93, 32.51687 + 90, 89, 89, 92, 92, 92, 93, 101, 99, 99, 97, 95, 93, 91, 91, 98, 32.51688 + 98, 96, 97, 97, 96, 92, 89, 87, 86, 85, 81, 81, 80, 80, 79, 81, 32.51689 + 84, 86, 86, 84, 82, 84, 85, 83, 87, 88, 83, 77, 79, 80, 78, 71, 32.51690 + 71, 70, 65, 64, 69, 68, 65, 61, 63, 50, 57, 80, 60, 32, 43, 41, 32.51691 + 37, 36, 38, 39, 36, 36, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51694 + 255, 255, 255, 255, 255, 255, 240, 184, 166, 206, 255, 181, 160, 144, 148, 123, 32.51695 + 222, 246, 221, 200, 194, 170, 143, 123, 111, 103, 103, 92, 91, 90, 91, 93, 32.51696 + 93, 93, 91, 98, 100, 104, 106, 104, 100, 97, 93, 99, 96, 95, 97, 98, 32.51697 + 97, 92, 89, 89, 86, 84, 82, 81, 79, 79, 81, 84, 89, 91, 88, 85, 32.51698 + 84, 87, 87, 86, 89, 87, 81, 75, 77, 81, 81, 71, 73, 74, 69, 68, 32.51699 + 70, 70, 65, 73, 50, 66, 77, 47, 36, 45, 37, 39, 36, 36, 39, 39, 32.51700 + 37, 38, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51703 + 255, 255, 212, 182, 174, 195, 167, 182, 121, 119, 103, 102, 141, 236, 247, 196, 32.51704 + 184, 152, 127, 118, 109, 97, 99, 94, 92, 90, 90, 92, 91, 92, 90, 95, 32.51705 + 98, 106, 109, 108, 104, 100, 96, 101, 96, 94, 94, 97, 97, 92, 89, 91, 32.51706 + 87, 84, 84, 81, 78, 78, 84, 87, 93, 95, 89, 86, 87, 89, 89, 86, 32.51707 + 87, 85, 77, 75, 77, 80, 77, 71, 71, 75, 76, 73, 69, 68, 66, 63, 32.51708 + 72, 75, 57, 34, 35, 43, 39, 38, 36, 37, 40, 39, 37, 255, 255, 255, 32.51709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 180, 32.51712 + 128, 150, 140, 141, 78, 74, 62, 74, 78, 202, 224, 197, 182, 142, 116, 116, 32.51713 + 108, 92, 94, 96, 94, 91, 89, 90, 90, 90, 89, 93, 96, 103, 106, 106, 32.51714 + 103, 100, 96, 101, 95, 92, 93, 96, 96, 93, 90, 92, 87, 83, 84, 81, 32.51715 + 77, 78, 85, 90, 95, 94, 88, 85, 88, 89, 87, 84, 84, 81, 77, 77, 32.51716 + 79, 77, 70, 66, 65, 74, 80, 78, 68, 66, 71, 65, 85, 60, 33, 45, 32.51717 + 43, 31, 45, 37, 36, 38, 40, 111, 255, 255, 255, 255, 255, 255, 255, 255, 32.51718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173, 210, 115, 113, 126, 83, 32.51721 + 63, 59, 71, 66, 80, 190, 201, 189, 173, 130, 107, 116, 109, 94, 99, 97, 32.51722 + 95, 91, 88, 89, 89, 90, 88, 97, 99, 103, 105, 105, 103, 101, 99, 102, 32.51723 + 96, 91, 91, 93, 95, 94, 90, 93, 87, 83, 85, 83, 77, 78, 86, 91, 32.51724 + 96, 93, 86, 86, 89, 90, 83, 80, 80, 79, 78, 80, 79, 74, 62, 59, 32.51725 + 58, 70, 83, 79, 65, 63, 74, 91, 52, 40, 46, 40, 42, 47, 37, 38, 32.51726 + 37, 39, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51729 + 255, 255, 255, 255, 255, 255, 202, 219, 133, 105, 101, 73, 50, 81, 70, 129, 32.51730 + 77, 176, 226, 175, 159, 138, 125, 116, 105, 95, 90, 99, 96, 92, 91, 91, 32.51731 + 87, 83, 78, 90, 95, 100, 107, 109, 107, 105, 101, 98, 91, 91, 95, 96, 32.51732 + 92, 93, 98, 94, 92, 90, 86, 84, 84, 84, 85, 92, 94, 92, 91, 91, 32.51733 + 88, 88, 85, 88, 82, 80, 81, 77, 67, 63, 63, 72, 54, 57, 71, 74, 32.51734 + 77, 86, 88, 56, 52, 48, 44, 43, 42, 39, 38, 38, 36, 110, 255, 255, 32.51735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51738 + 255, 255, 207, 219, 173, 153, 126, 81, 87, 112, 150, 177, 111, 200, 203, 177, 32.51739 + 154, 126, 111, 107, 104, 101, 98, 93, 92, 91, 94, 95, 95, 91, 88, 87, 32.51740 + 92, 97, 102, 104, 105, 102, 99, 96, 90, 90, 94, 94, 91, 90, 94, 96, 32.51741 + 94, 91, 88, 85, 84, 83, 84, 93, 95, 93, 92, 90, 89, 88, 86, 87, 32.51742 + 81, 78, 78, 72, 63, 57, 56, 59, 48, 50, 58, 68, 83, 88, 77, 53, 32.51743 + 49, 44, 41, 39, 40, 38, 38, 112, 255, 255, 255, 255, 255, 255, 255, 255, 32.51744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51745 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51746 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 196, 32.51747 + 206, 225, 211, 194, 180, 182, 206, 192, 160, 212, 225, 195, 165, 128, 110, 106, 32.51748 + 105, 99, 93, 87, 87, 88, 91, 92, 93, 89, 87, 86, 88, 91, 96, 98, 32.51749 + 99, 99, 97, 91, 88, 88, 91, 91, 88, 87, 89, 93, 92, 91, 89, 89, 32.51750 + 88, 88, 90, 94, 96, 94, 93, 91, 90, 87, 86, 82, 76, 74, 72, 67, 32.51751 + 58, 54, 52, 57, 50, 49, 50, 60, 78, 77, 53, 51, 48, 43, 40, 38, 32.51752 + 39, 39, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 181, 171, 204, 32.51756 + 188, 219, 224, 207, 218, 180, 224, 200, 169, 132, 115, 111, 107, 94, 82, 88, 32.51757 + 88, 88, 88, 88, 85, 82, 80, 84, 86, 87, 89, 91, 93, 94, 95, 89, 32.51758 + 89, 89, 90, 90, 88, 86, 86, 87, 87, 88, 90, 92, 93, 95, 97, 96, 32.51759 + 96, 96, 95, 92, 91, 88, 85, 73, 70, 69, 66, 63, 58, 55, 54, 56, 32.51760 + 49, 50, 51, 55, 65, 63, 43, 45, 44, 45, 43, 42, 41, 111, 255, 255, 32.51761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51763 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51764 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 224, 32.51765 + 237, 160, 206, 189, 159, 124, 108, 107, 104, 92, 82, 92, 92, 92, 89, 87, 32.51766 + 84, 83, 82, 82, 82, 84, 86, 87, 90, 92, 94, 90, 91, 91, 90, 89, 32.51767 + 89, 88, 87, 85, 86, 89, 92, 94, 96, 97, 98, 97, 97, 96, 94, 92, 32.51768 + 90, 87, 85, 73, 71, 67, 62, 60, 58, 54, 53, 48, 38, 46, 59, 56, 32.51769 + 54, 57, 54, 38, 41, 45, 46, 44, 111, 255, 255, 255, 255, 255, 255, 255, 32.51770 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51771 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 222, 196, 210, 190, 32.51774 + 162, 128, 108, 102, 97, 91, 87, 85, 87, 86, 84, 81, 80, 81, 84, 82, 32.51775 + 81, 82, 85, 86, 89, 92, 94, 91, 92, 91, 88, 88, 91, 91, 89, 89, 32.51776 + 90, 92, 93, 93, 93, 93, 92, 96, 96, 94, 93, 92, 89, 86, 83, 76, 32.51777 + 74, 70, 61, 55, 54, 51, 45, 49, 42, 53, 64, 53, 42, 48, 55, 32, 32.51778 + 38, 43, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51782 + 255, 255, 255, 255, 255, 255, 255, 250, 228, 232, 198, 186, 166, 137, 116, 103, 32.51783 + 92, 84, 84, 80, 81, 79, 76, 73, 75, 80, 84, 80, 82, 82, 84, 86, 32.51784 + 88, 90, 94, 89, 91, 89, 84, 85, 91, 93, 91, 90, 91, 92, 93, 93, 32.51785 + 92, 90, 89, 95, 95, 93, 91, 89, 86, 84, 81, 76, 74, 69, 59, 52, 32.51786 + 51, 48, 43, 50, 50, 61, 62, 47, 40, 45, 44, 255, 255, 255, 255, 255, 32.51787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51789 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51791 + 255, 255, 255, 255, 232, 232, 184, 159, 148, 134, 121, 108, 97, 89, 87, 85, 32.51792 + 84, 82, 77, 73, 76, 82, 87, 81, 83, 84, 86, 87, 89, 93, 92, 88, 32.51793 + 89, 88, 81, 82, 90, 93, 92, 87, 88, 90, 91, 93, 92, 92, 91, 95, 32.51794 + 95, 93, 91, 89, 86, 84, 79, 72, 72, 66, 55, 52, 52, 50, 45, 40, 32.51795 + 49, 60, 53, 42, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51800 + 248, 241, 166, 170, 150, 128, 120, 113, 103, 98, 96, 89, 86, 85, 81, 78, 32.51801 + 75, 75, 76, 81, 82, 84, 87, 89, 90, 92, 92, 87, 84, 83, 81, 80, 32.51802 + 81, 83, 84, 88, 90, 95, 95, 90, 84, 88, 98, 95, 94, 90, 88, 87, 32.51803 + 89, 88, 84, 72, 66, 61, 60, 59, 56, 52, 46, 38, 47, 67, 44, 118, 32.51804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 250, 247, 193, 32.51809 + 164, 133, 122, 119, 114, 110, 104, 87, 83, 82, 82, 78, 75, 74, 73, 80, 32.51810 + 81, 83, 87, 88, 91, 92, 91, 85, 81, 81, 80, 79, 80, 82, 85, 84, 32.51811 + 85, 90, 92, 87, 82, 85, 93, 95, 92, 90, 90, 88, 80, 80, 84, 62, 32.51812 + 57, 54, 51, 51, 49, 47, 43, 48, 118, 255, 255, 255, 255, 255, 255, 255, 32.51813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51817 + 255, 255, 255, 255, 255, 255, 255, 255, 227, 225, 255, 194, 163, 132, 121, 118, 32.51818 + 112, 106, 100, 90, 85, 84, 83, 81, 78, 76, 74, 79, 80, 82, 83, 85, 32.51819 + 88, 90, 88, 81, 79, 78, 77, 77, 79, 81, 85, 87, 86, 88, 91, 89, 32.51820 + 85, 87, 94, 93, 90, 91, 92, 86, 74, 74, 81, 57, 55, 54, 51, 49, 32.51821 + 46, 48, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51826 + 255, 255, 255, 255, 255, 230, 244, 160, 144, 131, 128, 126, 115, 106, 101, 98, 32.51827 + 92, 88, 85, 83, 82, 81, 80, 79, 79, 80, 81, 84, 85, 86, 86, 79, 32.51828 + 77, 76, 75, 76, 78, 82, 83, 86, 85, 85, 88, 90, 86, 87, 90, 89, 32.51829 + 90, 90, 87, 85, 83, 79, 73, 53, 55, 54, 51, 47, 47, 120, 255, 255, 32.51830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51835 + 254, 237, 248, 119, 118, 126, 137, 136, 123, 114, 111, 107, 98, 90, 85, 85, 32.51836 + 86, 87, 87, 80, 80, 81, 79, 82, 83, 83, 81, 78, 74, 75, 74, 75, 32.51837 + 77, 80, 82, 78, 76, 77, 80, 83, 78, 81, 84, 83, 91, 89, 81, 85, 32.51838 + 95, 85, 63, 49, 49, 48, 44, 42, 113, 255, 255, 255, 255, 255, 255, 255, 32.51839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 244, 112, 32.51844 + 105, 108, 121, 126, 119, 111, 108, 111, 103, 94, 88, 88, 87, 88, 86, 83, 32.51845 + 83, 80, 80, 80, 79, 79, 78, 76, 75, 73, 72, 72, 76, 78, 80, 75, 32.51846 + 75, 77, 80, 80, 77, 78, 83, 83, 87, 84, 78, 87, 99, 86, 59, 51, 32.51847 + 49, 45, 41, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 235, 173, 135, 102, 98, 111, 32.51853 + 114, 108, 100, 114, 108, 99, 95, 95, 93, 88, 84, 86, 85, 82, 80, 79, 32.51854 + 77, 77, 75, 76, 75, 72, 71, 71, 73, 75, 76, 73, 77, 80, 82, 80, 32.51855 + 76, 80, 87, 86, 80, 79, 85, 92, 88, 75, 62, 59, 53, 46, 113, 255, 32.51856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51861 + 255, 255, 255, 255, 255, 246, 202, 255, 187, 116, 94, 112, 123, 115, 103, 116, 32.51862 + 113, 107, 103, 103, 99, 91, 83, 88, 85, 84, 81, 78, 76, 75, 72, 77, 32.51863 + 73, 73, 71, 70, 71, 74, 75, 69, 72, 79, 81, 76, 71, 77, 86, 88, 32.51864 + 74, 73, 91, 95, 76, 63, 65, 63, 53, 115, 255, 255, 255, 255, 255, 255, 32.51865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51870 + 255, 255, 255, 215, 228, 235, 217, 252, 233, 176, 103, 99, 112, 90, 106, 104, 32.51871 + 112, 101, 98, 88, 86, 85, 83, 80, 79, 76, 75, 81, 75, 69, 64, 63, 32.51872 + 65, 72, 75, 78, 77, 75, 74, 79, 83, 82, 80, 80, 83, 90, 96, 89, 32.51873 + 73, 67, 68, 60, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51879 + 255, 255, 255, 239, 243, 231, 201, 112, 104, 103, 111, 100, 98, 95, 105, 91, 32.51880 + 90, 86, 84, 82, 79, 78, 75, 75, 72, 70, 69, 69, 70, 74, 75, 77, 32.51881 + 75, 72, 70, 74, 77, 78, 76, 75, 88, 94, 84, 72, 69, 69, 63, 62, 32.51882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51888 + 247, 238, 239, 164, 101, 108, 107, 99, 92, 92, 105, 94, 92, 88, 85, 83, 32.51889 + 81, 79, 77, 71, 70, 73, 74, 74, 73, 72, 71, 79, 77, 77, 75, 75, 32.51890 + 76, 78, 78, 78, 99, 99, 72, 58, 66, 68, 58, 255, 255, 255, 255, 255, 32.51891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 222, 231, 32.51897 + 105, 99, 96, 101, 102, 97, 97, 98, 95, 92, 87, 85, 81, 80, 77, 74, 32.51898 + 74, 74, 74, 72, 69, 68, 66, 76, 75, 78, 79, 76, 74, 76, 80, 93, 32.51899 + 102, 97, 70, 59, 65, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 230, 255, 105, 89, 93, 104, 32.51906 + 108, 98, 88, 98, 95, 93, 90, 87, 82, 83, 79, 79, 76, 75, 74, 73, 32.51907 + 72, 73, 73, 68, 69, 74, 78, 74, 69, 72, 79, 109, 96, 83, 72, 68, 32.51908 + 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51914 + 255, 255, 255, 255, 255, 255, 231, 233, 111, 90, 101, 101, 104, 98, 87, 97, 32.51915 + 96, 92, 90, 88, 85, 83, 80, 78, 75, 75, 75, 76, 78, 82, 84, 68, 32.51916 + 68, 74, 79, 75, 70, 78, 90, 114, 86, 69, 72, 134, 255, 255, 255, 255, 32.51917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51923 + 255, 255, 221, 226, 133, 91, 109, 99, 106, 106, 92, 95, 94, 93, 89, 88, 32.51924 + 86, 85, 83, 74, 72, 75, 77, 79, 81, 84, 85, 75, 73, 77, 80, 77, 32.51925 + 75, 91, 107, 109, 80, 64, 71, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 239, 32.51932 + 159, 90, 108, 98, 116, 118, 99, 96, 95, 93, 92, 89, 86, 85, 81, 71, 32.51933 + 70, 72, 76, 77, 78, 78, 77, 77, 73, 73, 75, 70, 71, 91, 115, 103, 32.51934 + 81, 68, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 241, 89, 119, 127, 32.51941 + 96, 118, 105, 95, 110, 97, 100, 91, 79, 90, 77, 76, 72, 80, 76, 62, 32.51942 + 77, 92, 77, 77, 86, 82, 63, 68, 89, 98, 86, 87, 77, 136, 255, 255, 32.51943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51949 + 255, 255, 255, 255, 255, 255, 255, 221, 255, 133, 113, 102, 115, 109, 120, 109, 32.51950 + 112, 97, 104, 98, 80, 85, 74, 79, 60, 72, 89, 83, 79, 83, 78, 83, 32.51951 + 64, 75, 103, 73, 79, 83, 80, 61, 134, 255, 255, 255, 255, 255, 255, 255, 32.51952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51958 + 255, 255, 255, 229, 205, 255, 139, 100, 138, 117, 111, 118, 110, 93, 101, 99, 32.51959 + 86, 89, 83, 82, 60, 64, 77, 77, 75, 78, 77, 77, 69, 78, 81, 79, 32.51960 + 86, 91, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51967 + 224, 234, 245, 150, 116, 128, 112, 115, 108, 96, 91, 87, 83, 85, 80, 79, 32.51968 + 81, 82, 73, 72, 84, 86, 75, 89, 87, 81, 43, 88, 76, 73, 120, 255, 32.51969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 212, 223, 255, 32.51976 + 101, 106, 131, 110, 116, 116, 100, 90, 93, 89, 80, 72, 86, 91, 80, 77, 32.51977 + 81, 79, 74, 75, 63, 78, 91, 95, 70, 63, 255, 255, 255, 255, 255, 255, 32.51978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 210, 233, 215, 104, 117, 91, 32.51985 + 98, 110, 97, 89, 94, 85, 83, 88, 86, 80, 79, 82, 72, 80, 106, 81, 32.51986 + 99, 133, 167, 74, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51993 + 255, 255, 255, 255, 255, 255, 237, 229, 220, 209, 117, 124, 102, 105, 94, 88, 32.51994 + 88, 82, 100, 86, 85, 77, 78, 90, 87, 96, 125, 155, 200, 195, 146, 64, 32.51995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.51999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52002 + 255, 255, 255, 255, 255, 206, 218, 231, 175, 155, 139, 126, 118, 114, 152, 155, 32.52003 + 185, 194, 197, 218, 223, 212, 211, 195, 231, 174, 62, 255, 255, 255, 255, 255, 32.52004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 32.52012 + 60, 49, 236, 61, 69, 111, 73, 75, 67, 64, 95, 84, 255, 121, 255, 255, 32.52013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52020 + 192, 86, 70, 76, 70, 75, 80, 77, 90, 75, 70, 55, 71, 77, 151, 54, 32.52021 + 66, 92, 86, 126, 78, 62, 110, 130, 169, 82, 156, 253, 245, 255, 255, 255, 32.52022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 111, 136, 123, 105, 78, 95, 32.52029 + 76, 67, 104, 75, 77, 65, 86, 87, 76, 77, 93, 85, 71, 68, 134, 67, 32.52030 + 132, 151, 135, 104, 108, 144, 153, 188, 173, 225, 218, 242, 246, 234, 234, 255, 32.52031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52037 + 255, 255, 192, 72, 41, 148, 181, 130, 88, 87, 63, 55, 105, 113, 61, 75, 32.52038 + 67, 82, 121, 82, 53, 119, 135, 135, 115, 66, 198, 131, 155, 150, 182, 169, 32.52039 + 141, 112, 102, 177, 234, 237, 243, 240, 243, 240, 248, 255, 208, 196, 255, 255, 32.52040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 98, 84, 56, 32.52046 + 166, 146, 156, 120, 98, 107, 129, 117, 81, 82, 155, 110, 93, 105, 160, 157, 32.52047 + 184, 237, 158, 173, 173, 147, 179, 157, 162, 198, 165, 191, 208, 176, 157, 164, 32.52048 + 175, 178, 213, 185, 212, 234, 223, 213, 199, 163, 156, 115, 91, 139, 255, 255, 32.52049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52054 + 255, 255, 255, 255, 255, 255, 255, 172, 150, 146, 172, 175, 166, 199, 200, 143, 32.52055 + 206, 192, 137, 132, 164, 160, 201, 167, 235, 208, 203, 199, 180, 181, 174, 196, 32.52056 + 147, 142, 194, 159, 148, 208, 188, 145, 139, 156, 183, 178, 141, 186, 192, 200, 32.52057 + 201, 219, 202, 178, 183, 180, 179, 121, 73, 89, 81, 143, 255, 255, 255, 255, 32.52058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52063 + 255, 255, 185, 150, 179, 205, 175, 128, 171, 168, 209, 210, 148, 141, 146, 124, 32.52064 + 211, 233, 176, 188, 230, 156, 156, 181, 167, 152, 211, 129, 198, 166, 179, 189, 32.52065 + 197, 165, 157, 179, 136, 144, 167, 156, 124, 192, 188, 200, 163, 158, 165, 167, 32.52066 + 151, 115, 106, 104, 115, 117, 65, 67, 101, 102, 255, 255, 255, 255, 255, 255, 32.52067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 121, 186, 156, 32.52072 + 184, 228, 214, 221, 188, 183, 182, 177, 189, 166, 160, 166, 181, 164, 213, 203, 32.52073 + 180, 168, 210, 157, 173, 176, 157, 194, 213, 214, 190, 202, 172, 159, 122, 138, 32.52074 + 124, 116, 139, 132, 121, 140, 126, 149, 165, 174, 155, 149, 138, 111, 119, 99, 32.52075 + 124, 109, 90, 81, 81, 80, 45, 118, 255, 255, 255, 255, 255, 255, 255, 255, 32.52076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52080 + 255, 255, 255, 255, 255, 255, 255, 227, 131, 196, 97, 129, 174, 241, 234, 212, 32.52081 + 190, 180, 217, 171, 181, 157, 195, 191, 169, 176, 215, 225, 151, 188, 122, 146, 32.52082 + 203, 156, 203, 215, 179, 150, 170, 193, 184, 155, 180, 144, 118, 190, 131, 88, 32.52083 + 123, 114, 86, 143, 166, 122, 88, 154, 87, 92, 142, 120, 87, 208, 72, 71, 32.52084 + 89, 78, 81, 90, 106, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52089 + 255, 255, 133, 141, 210, 182, 116, 223, 204, 244, 222, 221, 208, 243, 188, 178, 32.52090 + 189, 195, 217, 206, 166, 200, 244, 175, 201, 170, 170, 132, 152, 226, 194, 159, 32.52091 + 177, 132, 164, 178, 150, 186, 213, 184, 142, 168, 130, 98, 94, 70, 104, 132, 32.52092 + 122, 108, 98, 95, 92, 118, 93, 101, 117, 137, 101, 134, 72, 70, 66, 63, 32.52093 + 87, 69, 102, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 153, 106, 108, 140, 32.52098 + 141, 216, 226, 215, 245, 211, 246, 213, 223, 210, 191, 182, 209, 229, 211, 224, 32.52099 + 222, 232, 185, 195, 181, 180, 87, 201, 218, 150, 157, 153, 145, 122, 130, 144, 32.52100 + 145, 94, 111, 172, 174, 126, 103, 113, 102, 100, 108, 92, 99, 90, 89, 63, 32.52101 + 77, 87, 63, 129, 72, 97, 132, 102, 60, 77, 71, 76, 74, 84, 82, 80, 32.52102 + 69, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52106 + 255, 255, 255, 255, 255, 255, 221, 139, 108, 149, 177, 199, 166, 176, 181, 199, 32.52107 + 224, 224, 245, 236, 193, 186, 207, 233, 225, 233, 219, 204, 196, 220, 212, 242, 32.52108 + 140, 148, 252, 186, 166, 192, 154, 152, 137, 179, 112, 151, 137, 131, 168, 123, 32.52109 + 157, 123, 83, 113, 107, 123, 91, 78, 95, 99, 97, 65, 52, 56, 68, 137, 32.52110 + 90, 72, 107, 102, 83, 60, 106, 73, 78, 59, 92, 44, 94, 88, 76, 129, 32.52111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52115 + 255, 155, 131, 119, 90, 122, 165, 236, 186, 217, 213, 240, 206, 238, 255, 218, 32.52116 + 213, 215, 218, 210, 239, 236, 195, 170, 225, 221, 170, 211, 156, 199, 206, 181, 32.52117 + 205, 186, 205, 194, 213, 143, 173, 145, 164, 137, 121, 129, 114, 188, 113, 128, 32.52118 + 130, 104, 89, 104, 91, 118, 103, 58, 46, 70, 66, 98, 94, 45, 95, 95, 32.52119 + 86, 79, 76, 73, 63, 94, 81, 80, 86, 102, 70, 93, 45, 255, 255, 255, 32.52120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 231, 201, 123, 75, 32.52124 + 177, 126, 216, 227, 179, 184, 204, 215, 218, 232, 242, 196, 241, 213, 228, 218, 32.52125 + 205, 206, 235, 235, 250, 202, 177, 166, 213, 241, 135, 176, 172, 233, 219, 174, 32.52126 + 162, 187, 151, 192, 134, 170, 107, 107, 138, 142, 144, 166, 127, 170, 51, 98, 32.52127 + 99, 100, 60, 55, 59, 57, 56, 76, 58, 89, 97, 55, 82, 97, 83, 81, 32.52128 + 89, 86, 107, 65, 108, 80, 76, 78, 87, 82, 128, 255, 255, 255, 255, 255, 32.52129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52132 + 255, 255, 255, 255, 255, 255, 255, 119, 171, 184, 200, 96, 78, 161, 214, 156, 32.52133 + 247, 148, 218, 177, 209, 241, 195, 224, 197, 209, 215, 218, 233, 242, 221, 221, 32.52134 + 245, 233, 239, 242, 222, 173, 207, 198, 212, 198, 213, 189, 131, 128, 107, 115, 32.52135 + 120, 142, 89, 102, 84, 126, 121, 143, 166, 121, 62, 70, 86, 75, 57, 61, 32.52136 + 70, 36, 56, 68, 79, 117, 68, 84, 98, 82, 134, 91, 78, 85, 67, 68, 32.52137 + 77, 65, 64, 62, 114, 112, 98, 140, 255, 255, 255, 255, 255, 255, 255, 255, 32.52138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52141 + 255, 255, 239, 122, 173, 149, 92, 131, 158, 172, 204, 216, 142, 156, 188, 211, 32.52142 + 209, 213, 224, 198, 183, 216, 195, 218, 193, 198, 185, 219, 210, 199, 224, 219, 32.52143 + 203, 245, 243, 168, 223, 146, 214, 171, 207, 142, 199, 78, 90, 159, 136, 112, 32.52144 + 136, 86, 184, 164, 90, 118, 99, 71, 46, 78, 123, 59, 75, 55, 62, 67, 32.52145 + 51, 56, 70, 95, 75, 119, 77, 91, 87, 79, 80, 72, 92, 52, 63, 39, 32.52146 + 71, 55, 42, 63, 68, 51, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 171, 139, 134, 32.52150 + 165, 142, 92, 203, 151, 169, 215, 201, 195, 172, 208, 201, 218, 183, 194, 213, 32.52151 + 193, 187, 199, 197, 212, 182, 184, 206, 206, 182, 226, 223, 214, 207, 181, 203, 32.52152 + 141, 183, 123, 235, 111, 129, 166, 76, 133, 125, 123, 167, 139, 152, 152, 126, 32.52153 + 105, 81, 82, 54, 62, 59, 74, 62, 70, 57, 59, 55, 50, 61, 78, 82, 32.52154 + 91, 103, 108, 97, 72, 75, 89, 82, 76, 69, 52, 51, 79, 61, 51, 65, 32.52155 + 62, 62, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52158 + 255, 255, 255, 255, 255, 255, 255, 193, 149, 180, 88, 149, 172, 207, 215, 199, 32.52159 + 211, 179, 213, 194, 205, 191, 201, 203, 190, 210, 232, 189, 179, 210, 177, 187, 32.52160 + 182, 215, 144, 178, 165, 191, 167, 163, 187, 148, 149, 164, 145, 228, 135, 215, 32.52161 + 206, 93, 211, 95, 89, 177, 187, 169, 144, 111, 155, 100, 71, 82, 48, 52, 32.52162 + 55, 60, 62, 65, 61, 60, 57, 54, 46, 52, 61, 58, 60, 66, 66, 56, 32.52163 + 41, 56, 78, 72, 68, 78, 83, 65, 74, 52, 62, 63, 62, 88, 70, 91, 32.52164 + 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52167 + 255, 255, 192, 110, 195, 170, 163, 168, 208, 229, 230, 194, 209, 146, 228, 208, 32.52168 + 178, 173, 202, 213, 174, 185, 187, 156, 195, 246, 184, 192, 167, 234, 200, 240, 32.52169 + 166, 170, 169, 184, 146, 129, 133, 117, 134, 152, 129, 213, 188, 143, 185, 106, 32.52170 + 48, 177, 153, 163, 108, 139, 156, 71, 86, 51, 50, 50, 47, 59, 49, 66, 32.52171 + 54, 63, 58, 69, 61, 65, 68, 60, 58, 60, 56, 57, 45, 58, 78, 71, 32.52172 + 60, 63, 70, 65, 53, 40, 68, 62, 62, 100, 73, 82, 73, 72, 255, 255, 32.52173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 102, 73, 32.52176 + 222, 176, 217, 253, 154, 227, 235, 197, 219, 164, 201, 186, 188, 198, 187, 187, 32.52177 + 215, 223, 177, 156, 168, 198, 183, 168, 214, 172, 193, 164, 193, 113, 165, 145, 32.52178 + 85, 83, 108, 99, 136, 106, 171, 181, 194, 169, 149, 154, 147, 156, 172, 112, 32.52179 + 131, 150, 164, 82, 54, 63, 45, 46, 44, 52, 48, 58, 54, 61, 60, 63, 32.52180 + 57, 62, 65, 59, 60, 63, 57, 48, 46, 57, 77, 90, 91, 84, 74, 70, 32.52181 + 54, 58, 81, 81, 83, 99, 94, 77, 76, 72, 62, 138, 255, 255, 255, 255, 32.52182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52184 + 255, 255, 255, 255, 255, 255, 255, 255, 195, 60, 183, 205, 159, 232, 239, 223, 32.52185 + 223, 194, 191, 227, 196, 177, 167, 161, 181, 200, 185, 207, 175, 167, 176, 220, 32.52186 + 195, 201, 239, 198, 193, 175, 140, 170, 128, 113, 127, 136, 130, 65, 86, 80, 32.52187 + 88, 72, 139, 167, 147, 129, 106, 123, 90, 127, 59, 69, 125, 150, 120, 82, 32.52188 + 39, 51, 38, 43, 47, 41, 52, 45, 58, 55, 61, 52, 49, 55, 58, 54, 32.52189 + 59, 64, 58, 45, 59, 66, 72, 91, 106, 100, 86, 72, 60, 71, 69, 83, 32.52190 + 85, 67, 102, 82, 77, 58, 63, 65, 138, 255, 255, 255, 255, 255, 255, 255, 32.52191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52193 + 255, 221, 107, 110, 94, 123, 211, 162, 191, 185, 231, 181, 196, 200, 210, 219, 32.52194 + 154, 172, 169, 180, 175, 173, 191, 201, 208, 233, 176, 174, 199, 239, 228, 217, 32.52195 + 173, 147, 194, 153, 128, 137, 114, 131, 103, 62, 72, 83, 86, 66, 167, 129, 32.52196 + 133, 133, 88, 191, 95, 115, 88, 50, 73, 121, 53, 65, 61, 40, 48, 40, 32.52197 + 47, 36, 52, 39, 58, 49, 57, 54, 51, 55, 55, 51, 57, 63, 56, 56, 32.52198 + 79, 80, 67, 72, 82, 85, 87, 80, 76, 76, 62, 77, 75, 52, 93, 62, 32.52199 + 66, 59, 82, 75, 91, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 66, 86, 190, 32.52202 + 159, 232, 202, 252, 207, 225, 239, 207, 191, 230, 181, 183, 189, 198, 165, 190, 32.52203 + 206, 172, 187, 206, 132, 184, 215, 226, 190, 203, 207, 163, 154, 134, 119, 102, 32.52204 + 112, 188, 79, 139, 67, 84, 76, 85, 90, 62, 155, 99, 92, 101, 103, 88, 32.52205 + 80, 37, 41, 37, 63, 48, 43, 59, 39, 74, 43, 40, 42, 39, 44, 42, 32.52206 + 48, 47, 49, 47, 44, 47, 45, 40, 49, 57, 49, 44, 61, 63, 64, 75, 32.52207 + 77, 80, 98, 95, 101, 85, 94, 96, 81, 87, 85, 63, 57, 51, 51, 46, 32.52208 + 60, 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52210 + 255, 255, 255, 255, 255, 255, 255, 74, 69, 79, 110, 157, 154, 243, 246, 236, 32.52211 + 209, 203, 239, 183, 178, 178, 208, 199, 210, 174, 161, 187, 172, 126, 202, 180, 32.52212 + 162, 204, 169, 178, 170, 174, 153, 118, 143, 123, 117, 138, 105, 176, 71, 109, 32.52213 + 82, 86, 77, 76, 74, 102, 87, 73, 99, 79, 54, 59, 57, 44, 48, 56, 32.52214 + 31, 50, 47, 34, 47, 47, 41, 40, 35, 45, 34, 48, 37, 47, 43, 49, 32.52215 + 47, 50, 49, 46, 58, 68, 62, 49, 50, 49, 70, 93, 80, 68, 87, 80, 32.52216 + 96, 72, 115, 104, 75, 109, 58, 84, 64, 65, 53, 66, 61, 67, 117, 255, 32.52217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52219 + 255, 255, 57, 63, 59, 90, 99, 179, 217, 228, 239, 202, 210, 184, 176, 217, 32.52220 + 176, 162, 174, 176, 186, 181, 175, 158, 144, 176, 159, 181, 150, 181, 122, 134, 32.52221 + 221, 137, 172, 161, 109, 80, 96, 98, 97, 102, 78, 88, 67, 84, 80, 72, 32.52222 + 81, 72, 71, 73, 66, 56, 53, 51, 49, 45, 43, 34, 41, 41, 34, 34, 32.52223 + 41, 43, 38, 41, 46, 35, 47, 34, 48, 40, 47, 49, 50, 50, 48, 44, 32.52224 + 41, 40, 40, 37, 69, 68, 65, 62, 57, 71, 74, 81, 69, 73, 101, 109, 32.52225 + 77, 57, 75, 107, 95, 72, 58, 71, 54, 53, 95, 128, 255, 255, 255, 255, 32.52226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 75, 62, 32.52228 + 113, 60, 181, 190, 159, 230, 210, 226, 197, 161, 164, 185, 171, 185, 197, 149, 32.52229 + 231, 182, 162, 199, 190, 108, 156, 133, 169, 120, 180, 159, 147, 181, 152, 204, 32.52230 + 145, 97, 89, 44, 70, 134, 65, 89, 67, 73, 50, 69, 92, 56, 70, 57, 32.52231 + 55, 51, 49, 44, 39, 37, 36, 35, 39, 40, 36, 33, 34, 34, 33, 43, 32.52232 + 40, 24, 38, 35, 51, 41, 40, 50, 49, 47, 47, 47, 46, 44, 43, 61, 32.52233 + 79, 65, 57, 51, 44, 59, 67, 55, 84, 91, 82, 95, 112, 108, 96, 99, 32.52234 + 103, 80, 65, 96, 93, 92, 67, 71, 255, 255, 255, 255, 255, 255, 255, 255, 32.52235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52236 + 255, 255, 255, 255, 255, 255, 255, 255, 46, 52, 74, 57, 97, 125, 171, 153, 32.52237 + 216, 217, 229, 209, 176, 160, 193, 187, 173, 166, 147, 182, 157, 184, 176, 150, 32.52238 + 112, 105, 163, 189, 191, 152, 130, 153, 200, 146, 157, 119, 150, 96, 90, 84, 32.52239 + 68, 103, 77, 62, 91, 89, 63, 71, 67, 43, 57, 42, 47, 50, 47, 40, 32.52240 + 36, 35, 37, 32, 33, 36, 40, 38, 35, 38, 43, 37, 42, 39, 47, 39, 32.52241 + 46, 43, 47, 48, 45, 43, 44, 47, 48, 47, 45, 68, 75, 56, 51, 48, 32.52242 + 37, 50, 60, 83, 93, 92, 87, 89, 86, 88, 101, 66, 79, 113, 116, 41, 32.52243 + 84, 55, 129, 107, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52245 + 255, 255, 193, 71, 68, 42, 56, 66, 109, 138, 114, 133, 215, 207, 214, 205, 32.52246 + 180, 147, 172, 166, 177, 174, 158, 179, 140, 179, 138, 154, 125, 144, 123, 155, 32.52247 + 183, 157, 149, 128, 132, 176, 119, 132, 96, 73, 101, 76, 58, 98, 75, 69, 32.52248 + 124, 104, 88, 63, 34, 54, 37, 39, 44, 45, 41, 37, 38, 38, 36, 33, 32.52249 + 29, 31, 39, 38, 34, 38, 49, 34, 38, 38, 42, 38, 39, 37, 38, 46, 32.52250 + 45, 44, 44, 46, 48, 50, 51, 48, 53, 40, 50, 55, 42, 49, 57, 80, 32.52251 + 66, 66, 87, 87, 61, 71, 116, 156, 113, 112, 93, 90, 55, 88, 72, 98, 32.52252 + 58, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 67, 77, 32.52254 + 72, 45, 68, 94, 95, 98, 107, 162, 205, 167, 219, 191, 199, 160, 165, 166, 32.52255 + 173, 153, 137, 165, 140, 129, 193, 120, 101, 133, 194, 174, 174, 194, 123, 149, 32.52256 + 125, 105, 152, 169, 80, 57, 80, 81, 81, 84, 81, 118, 122, 113, 83, 36, 32.52257 + 38, 64, 33, 41, 42, 38, 32, 33, 38, 37, 32, 39, 31, 28, 34, 35, 32.52258 + 33, 38, 48, 61, 49, 39, 36, 48, 51, 50, 45, 45, 47, 47, 45, 43, 32.52259 + 44, 50, 55, 34, 40, 30, 45, 55, 44, 49, 54, 53, 65, 69, 69, 71, 32.52260 + 68, 75, 94, 89, 70, 144, 74, 50, 66, 73, 72, 60, 41, 71, 162, 255, 32.52261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52262 + 255, 255, 255, 255, 255, 255, 255, 255, 59, 60, 66, 75, 65, 68, 116, 130, 32.52263 + 160, 77, 187, 231, 210, 202, 217, 189, 194, 142, 118, 117, 126, 134, 139, 139, 32.52264 + 175, 122, 97, 164, 139, 159, 197, 203, 202, 208, 182, 195, 176, 234, 203, 143, 32.52265 + 114, 92, 74, 94, 90, 53, 86, 114, 90, 139, 90, 22, 48, 52, 48, 52, 32.52266 + 51, 44, 37, 37, 45, 43, 33, 36, 30, 28, 36, 45, 51, 56, 60, 61, 32.52267 + 54, 52, 40, 47, 47, 62, 68, 45, 45, 43, 39, 36, 37, 42, 47, 41, 32.52268 + 46, 31, 36, 45, 38, 46, 49, 52, 71, 74, 66, 65, 62, 57, 60, 87, 32.52269 + 125, 101, 141, 66, 75, 62, 25, 50, 44, 68, 94, 122, 255, 255, 255, 255, 32.52270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52271 + 255, 255, 255, 191, 66, 60, 90, 110, 88, 103, 156, 217, 192, 178, 227, 239, 32.52272 + 243, 190, 196, 133, 132, 134, 135, 125, 109, 130, 125, 112, 144, 134, 216, 158, 32.52273 + 181, 153, 199, 114, 231, 203, 197, 185, 121, 165, 119, 169, 128, 127, 101, 52, 32.52274 + 60, 81, 74, 70, 86, 132, 104, 40, 38, 54, 57, 58, 62, 57, 47, 43, 32.52275 + 48, 46, 36, 33, 30, 30, 37, 52, 66, 67, 62, 43, 36, 45, 40, 63, 32.52276 + 59, 67, 60, 58, 51, 42, 38, 41, 43, 43, 41, 46, 57, 38, 35, 39, 32.52277 + 36, 44, 44, 43, 45, 53, 72, 83, 66, 57, 70, 78, 71, 89, 93, 83, 32.52278 + 61, 70, 50, 52, 45, 48, 44, 40, 255, 255, 255, 255, 255, 255, 255, 255, 32.52279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 64, 67, 32.52280 + 73, 65, 123, 161, 126, 132, 168, 237, 195, 187, 230, 239, 189, 221, 182, 177, 32.52281 + 139, 153, 152, 113, 82, 131, 126, 97, 117, 176, 138, 209, 173, 161, 168, 103, 32.52282 + 163, 164, 212, 198, 178, 184, 163, 146, 138, 97, 93, 103, 91, 92, 96, 57, 32.52283 + 113, 81, 94, 64, 24, 81, 54, 54, 63, 63, 51, 42, 42, 41, 32, 37, 32.52284 + 35, 34, 36, 49, 62, 55, 39, 73, 39, 37, 61, 129, 132, 100, 46, 80, 32.52285 + 65, 51, 48, 56, 60, 55, 47, 42, 59, 44, 39, 43, 41, 47, 42, 45, 32.52286 + 51, 58, 76, 89, 79, 65, 68, 79, 113, 78, 66, 52, 52, 113, 80, 57, 32.52287 + 56, 53, 36, 60, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52288 + 255, 255, 255, 255, 255, 255, 255, 187, 73, 57, 60, 81, 51, 64, 122, 156, 32.52289 + 195, 226, 203, 243, 220, 207, 235, 236, 208, 194, 197, 209, 185, 117, 122, 124, 32.52290 + 103, 111, 115, 109, 195, 242, 183, 202, 171, 169, 165, 162, 197, 214, 184, 186, 32.52291 + 157, 150, 144, 153, 112, 116, 98, 72, 63, 89, 70, 88, 72, 77, 44, 77, 32.52292 + 61, 65, 33, 48, 43, 37, 35, 38, 41, 42, 41, 34, 36, 38, 39, 41, 32.52293 + 50, 63, 74, 35, 84, 52, 84, 163, 127, 118, 72, 97, 128, 116, 108, 91, 32.52294 + 88, 62, 68, 87, 78, 71, 56, 38, 38, 45, 41, 51, 65, 86, 86, 85, 32.52295 + 76, 53, 60, 56, 53, 84, 77, 58, 99, 84, 93, 59, 53, 66, 48, 43, 32.52296 + 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52297 + 255, 255, 187, 71, 43, 90, 52, 71, 102, 81, 177, 241, 236, 222, 232, 214, 32.52298 + 240, 228, 237, 203, 214, 203, 205, 148, 118, 178, 107, 95, 104, 82, 100, 115, 32.52299 + 145, 200, 202, 171, 116, 145, 142, 161, 160, 171, 188, 188, 160, 109, 95, 125, 32.52300 + 88, 99, 91, 76, 68, 86, 61, 85, 69, 65, 41, 67, 64, 69, 47, 52, 32.52301 + 48, 42, 38, 37, 36, 34, 35, 28, 32, 33, 34, 34, 40, 49, 57, 31, 32.52302 + 117, 98, 210, 127, 169, 164, 189, 143, 127, 121, 94, 77, 112, 143, 112, 79, 32.52303 + 76, 80, 77, 66, 68, 69, 59, 76, 70, 73, 64, 58, 50, 46, 76, 46, 32.52304 + 69, 74, 67, 93, 125, 84, 115, 94, 104, 76, 35, 48, 53, 27, 255, 255, 32.52305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 36, 104, 32.52306 + 72, 69, 76, 72, 132, 89, 190, 243, 218, 210, 249, 210, 204, 229, 186, 232, 32.52307 + 207, 213, 165, 198, 140, 109, 105, 114, 132, 84, 63, 159, 195, 179, 156, 148, 32.52308 + 130, 135, 129, 154, 164, 172, 153, 113, 133, 101, 96, 98, 66, 77, 76, 73, 32.52309 + 68, 81, 57, 74, 66, 54, 44, 53, 62, 59, 47, 51, 50, 46, 42, 37, 32.52310 + 33, 32, 33, 28, 32, 35, 36, 36, 40, 45, 51, 78, 67, 188, 149, 188, 32.52311 + 181, 160, 146, 149, 143, 134, 103, 124, 114, 106, 77, 72, 72, 81, 85, 80, 32.52312 + 82, 82, 70, 72, 59, 60, 56, 55, 53, 63, 109, 53, 26, 53, 70, 57, 32.52313 + 109, 107, 93, 107, 142, 87, 35, 55, 60, 44, 46, 255, 255, 255, 255, 255, 32.52314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 85, 104, 110, 82, 57, 79, 32.52315 + 139, 152, 220, 236, 214, 219, 236, 224, 208, 203, 197, 194, 199, 198, 210, 186, 32.52316 + 83, 163, 113, 108, 86, 118, 184, 159, 162, 155, 183, 189, 158, 116, 155, 191, 32.52317 + 142, 159, 182, 151, 123, 70, 74, 84, 56, 64, 61, 64, 61, 78, 63, 68, 32.52318 + 72, 60, 61, 48, 56, 44, 40, 42, 44, 45, 43, 38, 35, 35, 37, 32, 32.52319 + 35, 37, 38, 40, 45, 50, 56, 90, 188, 181, 186, 178, 183, 142, 105, 117, 32.52320 + 104, 82, 75, 105, 75, 58, 74, 71, 69, 75, 73, 66, 70, 76, 68, 54, 32.52321 + 48, 54, 49, 47, 41, 35, 63, 56, 57, 48, 49, 61, 95, 83, 109, 80, 32.52322 + 119, 74, 36, 38, 38, 51, 51, 116, 255, 255, 255, 255, 255, 255, 255, 255, 32.52323 + 255, 255, 255, 255, 101, 35, 54, 80, 75, 90, 150, 114, 155, 195, 185, 208, 32.52324 + 210, 215, 219, 214, 190, 180, 202, 190, 205, 176, 196, 121, 136, 94, 76, 111, 32.52325 + 119, 98, 233, 149, 118, 169, 196, 138, 134, 107, 138, 164, 185, 236, 199, 150, 32.52326 + 120, 94, 70, 69, 51, 63, 59, 62, 57, 77, 69, 72, 82, 69, 72, 43, 32.52327 + 51, 38, 44, 37, 39, 42, 42, 38, 36, 37, 39, 36, 36, 35, 35, 37, 32.52328 + 43, 49, 53, 77, 152, 154, 126, 120, 121, 110, 82, 126, 86, 80, 103, 76, 32.52329 + 80, 96, 104, 71, 70, 76, 71, 59, 62, 68, 65, 43, 46, 52, 40, 43, 32.52330 + 45, 27, 32, 56, 64, 53, 53, 51, 69, 69, 103, 86, 89, 66, 57, 38, 32.52331 + 32, 58, 43, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 32.52332 + 114, 137, 87, 58, 147, 169, 140, 212, 228, 237, 171, 219, 228, 219, 232, 210, 32.52333 + 174, 179, 172, 206, 218, 180, 155, 142, 132, 98, 75, 64, 79, 189, 139, 157, 32.52334 + 157, 183, 152, 96, 119, 92, 100, 154, 119, 123, 125, 125, 76, 67, 58, 58, 32.52335 + 49, 63, 60, 67, 59, 72, 68, 72, 76, 61, 60, 35, 43, 39, 49, 37, 32.52336 + 38, 39, 39, 36, 35, 35, 35, 42, 40, 37, 36, 36, 39, 46, 49, 81, 32.52337 + 32, 118, 83, 72, 119, 71, 69, 67, 72, 66, 77, 50, 64, 57, 61, 68, 32.52338 + 71, 80, 80, 69, 70, 72, 66, 53, 54, 52, 33, 42, 58, 45, 47, 46, 32.52339 + 32, 49, 69, 28, 44, 68, 70, 98, 63, 54, 67, 51, 49, 61, 36, 43, 32.52340 + 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 65, 86, 64, 111, 32.52341 + 106, 100, 197, 222, 216, 231, 207, 220, 206, 200, 195, 212, 205, 189, 182, 159, 32.52342 + 215, 181, 195, 152, 115, 87, 89, 55, 147, 140, 116, 129, 154, 157, 165, 149, 32.52343 + 116, 85, 93, 74, 129, 134, 124, 104, 75, 83, 65, 65, 53, 59, 53, 65, 32.52344 + 55, 64, 60, 70, 65, 51, 50, 41, 45, 41, 44, 38, 37, 36, 35, 36, 32.52345 + 36, 34, 33, 42, 40, 39, 39, 40, 42, 46, 47, 36, 21, 72, 68, 58, 32.52346 + 33, 71, 42, 41, 63, 42, 32, 55, 59, 49, 71, 63, 62, 68, 74, 72, 32.52347 + 76, 74, 60, 72, 64, 55, 33, 33, 39, 26, 35, 33, 59, 38, 49, 61, 32.52348 + 55, 42, 81, 76, 41, 36, 40, 44, 50, 41, 33, 42, 54, 255, 255, 255, 32.52349 + 255, 255, 255, 255, 255, 255, 198, 69, 90, 65, 74, 178, 132, 195, 225, 229, 32.52350 + 183, 209, 244, 189, 178, 232, 217, 189, 159, 193, 167, 205, 200, 165, 142, 122, 32.52351 + 129, 71, 121, 138, 117, 79, 97, 109, 164, 173, 164, 103, 90, 129, 62, 63, 32.52352 + 134, 119, 140, 104, 63, 66, 65, 81, 61, 53, 40, 55, 48, 57, 54, 73, 32.52353 + 62, 52, 54, 58, 56, 46, 38, 37, 33, 31, 32, 36, 38, 36, 35, 32, 32.52354 + 33, 35, 38, 41, 43, 46, 45, 45, 61, 52, 39, 46, 40, 53, 46, 60, 32.52355 + 29, 45, 55, 63, 46, 56, 42, 60, 50, 50, 55, 61, 71, 69, 52, 67, 32.52356 + 58, 59, 52, 53, 48, 35, 54, 50, 36, 27, 55, 41, 50, 60, 63, 70, 32.52357 + 54, 50, 33, 46, 54, 32, 49, 47, 52, 114, 255, 255, 255, 255, 255, 255, 32.52358 + 255, 255, 91, 124, 79, 71, 74, 239, 181, 239, 186, 210, 172, 199, 198, 197, 32.52359 + 189, 240, 233, 211, 151, 212, 202, 229, 172, 178, 208, 146, 143, 116, 106, 110, 32.52360 + 93, 74, 109, 191, 201, 174, 188, 157, 143, 92, 99, 94, 147, 75, 84, 84, 32.52361 + 63, 70, 59, 59, 62, 48, 54, 36, 49, 45, 56, 47, 50, 54, 56, 55, 32.52362 + 51, 46, 42, 34, 47, 40, 40, 23, 38, 34, 37, 43, 39, 36, 34, 36, 32.52363 + 40, 44, 45, 44, 59, 47, 60, 57, 42, 55, 43, 55, 54, 52, 51, 52, 32.52364 + 54, 57, 60, 62, 62, 63, 63, 60, 57, 55, 53, 48, 51, 55, 55, 47, 32.52365 + 40, 41, 46, 39, 44, 46, 41, 39, 45, 51, 54, 80, 90, 75, 82, 45, 32.52366 + 42, 46, 46, 41, 37, 48, 255, 255, 255, 255, 255, 255, 255, 196, 182, 98, 32.52367 + 75, 97, 71, 247, 212, 255, 189, 196, 173, 186, 156, 186, 199, 239, 206, 170, 32.52368 + 166, 180, 203, 207, 191, 179, 155, 90, 130, 105, 76, 106, 102, 106, 115, 215, 32.52369 + 196, 222, 162, 132, 93, 116, 71, 70, 131, 109, 114, 91, 48, 55, 57, 49, 32.52370 + 54, 46, 56, 41, 52, 47, 55, 47, 48, 49, 50, 49, 47, 44, 42, 41, 32.52371 + 40, 30, 42, 32, 39, 30, 35, 34, 35, 38, 39, 39, 38, 39, 38, 51, 32.52372 + 58, 56, 63, 60, 53, 57, 51, 56, 54, 50, 47, 46, 46, 48, 49, 54, 32.52373 + 57, 63, 65, 64, 60, 55, 52, 39, 43, 48, 50, 51, 50, 46, 41, 43, 32.52374 + 44, 42, 38, 39, 45, 48, 48, 66, 81, 76, 88, 53, 43, 40, 34, 54, 32.52375 + 29, 54, 132, 255, 255, 255, 255, 255, 255, 98, 80, 137, 50, 148, 198, 251, 32.52376 + 203, 242, 159, 207, 174, 208, 152, 186, 250, 204, 207, 186, 217, 209, 189, 161, 32.52377 + 180, 176, 142, 206, 81, 127, 125, 144, 100, 116, 182, 222, 185, 127, 154, 50, 32.52378 + 72, 41, 47, 71, 80, 78, 86, 92, 70, 74, 64, 55, 60, 54, 60, 47, 32.52379 + 49, 41, 42, 46, 46, 45, 44, 43, 42, 42, 42, 39, 37, 30, 47, 32, 32.52380 + 31, 24, 39, 37, 40, 43, 42, 39, 37, 38, 41, 54, 54, 66, 64, 63, 32.52381 + 62, 52, 55, 54, 52, 47, 43, 40, 38, 38, 39, 44, 49, 56, 62, 63, 32.52382 + 60, 55, 51, 42, 43, 41, 40, 46, 54, 50, 40, 45, 44, 40, 37, 40, 32.52383 + 47, 49, 47, 67, 78, 74, 83, 54, 45, 48, 40, 38, 43, 42, 56, 255, 32.52384 + 255, 255, 255, 255, 197, 88, 67, 109, 140, 205, 131, 227, 211, 220, 180, 169, 32.52385 + 183, 136, 140, 165, 196, 172, 170, 208, 174, 192, 191, 186, 162, 184, 219, 228, 32.52386 + 190, 160, 163, 155, 106, 151, 239, 145, 113, 64, 90, 77, 64, 36, 73, 77, 32.52387 + 75, 116, 122, 112, 74, 63, 52, 62, 63, 60, 60, 51, 47, 39, 36, 43, 32.52388 + 44, 44, 43, 43, 42, 41, 41, 29, 40, 40, 47, 25, 29, 32, 52, 52, 32.52389 + 52, 50, 43, 37, 38, 45, 53, 53, 48, 71, 64, 62, 67, 45, 52, 51, 32.52390 + 48, 45, 41, 39, 37, 37, 37, 39, 42, 48, 53, 56, 56, 55, 54, 56, 32.52391 + 54, 44, 33, 36, 50, 53, 46, 44, 46, 45, 42, 43, 48, 52, 52, 60, 32.52392 + 70, 72, 83, 66, 52, 54, 39, 40, 33, 60, 89, 144, 255, 255, 255, 255, 32.52393 + 50, 94, 76, 125, 176, 225, 72, 194, 180, 200, 169, 184, 175, 156, 119, 187, 32.52394 + 222, 177, 182, 161, 161, 164, 191, 212, 190, 220, 198, 236, 143, 154, 156, 140, 32.52395 + 216, 188, 168, 110, 95, 106, 56, 90, 31, 42, 36, 49, 22, 64, 77, 86, 32.52396 + 73, 69, 57, 49, 48, 51, 50, 53, 50, 50, 48, 41, 43, 45, 46, 46, 32.52397 + 44, 42, 40, 27, 44, 39, 40, 28, 52, 57, 61, 58, 58, 55, 47, 41, 32.52398 + 41, 49, 57, 52, 48, 72, 65, 62, 65, 41, 47, 46, 45, 44, 43, 43, 32.52399 + 43, 43, 44, 43, 43, 43, 45, 48, 53, 57, 60, 58, 60, 53, 40, 37, 32.52400 + 46, 52, 52, 43, 50, 54, 47, 41, 41, 46, 50, 38, 54, 73, 94, 91, 32.52401 + 66, 55, 24, 44, 59, 110, 60, 82, 255, 255, 255, 255, 64, 76, 116, 202, 32.52402 + 187, 170, 148, 205, 159, 123, 187, 155, 182, 149, 104, 235, 206, 225, 142, 135, 32.52403 + 203, 162, 210, 204, 187, 230, 157, 154, 154, 175, 154, 220, 143, 183, 143, 115, 32.52404 + 64, 63, 70, 57, 59, 82, 72, 109, 54, 42, 46, 63, 73, 69, 51, 43, 32.52405 + 40, 46, 42, 53, 48, 53, 49, 39, 41, 44, 46, 46, 44, 41, 39, 34, 32.52406 + 43, 29, 33, 41, 80, 75, 60, 49, 51, 52, 50, 46, 45, 48, 51, 57, 32.52407 + 57, 68, 65, 60, 59, 46, 47, 45, 43, 45, 45, 46, 47, 48, 48, 48, 32.52408 + 46, 45, 45, 48, 52, 58, 61, 46, 52, 57, 55, 48, 45, 48, 53, 42, 32.52409 + 53, 58, 50, 38, 33, 35, 39, 45, 51, 67, 86, 98, 78, 72, 37, 128, 32.52410 + 60, 45, 83, 82, 97, 255, 255, 255, 67, 132, 216, 220, 169, 153, 206, 153, 32.52411 + 181, 182, 211, 178, 165, 179, 92, 212, 212, 196, 157, 164, 163, 147, 208, 208, 32.52412 + 156, 201, 203, 154, 156, 211, 143, 190, 166, 203, 111, 159, 73, 58, 63, 69, 32.52413 + 54, 81, 72, 38, 40, 44, 61, 50, 50, 57, 59, 49, 44, 52, 43, 56, 32.52414 + 44, 49, 41, 38, 39, 40, 41, 41, 40, 40, 39, 40, 43, 29, 40, 47, 32.52415 + 76, 65, 53, 43, 43, 42, 43, 45, 47, 49, 51, 62, 67, 60, 60, 55, 32.52416 + 47, 52, 47, 46, 45, 45, 45, 46, 46, 46, 46, 44, 45, 47, 49, 50, 32.52417 + 51, 51, 51, 41, 43, 52, 59, 53, 42, 42, 51, 40, 50, 56, 50, 41, 32.52418 + 36, 34, 34, 63, 51, 53, 63, 88, 79, 88, 57, 120, 83, 51, 95, 63, 32.52419 + 124, 255, 255, 255, 58, 85, 223, 141, 186, 186, 169, 220, 181, 169, 214, 218, 32.52420 + 188, 157, 85, 145, 168, 170, 198, 175, 133, 180, 131, 178, 182, 186, 173, 132, 32.52421 + 218, 139, 166, 118, 194, 194, 155, 82, 79, 60, 45, 61, 57, 47, 48, 52, 32.52422 + 59, 37, 57, 46, 51, 51, 47, 51, 45, 56, 47, 62, 48, 51, 41, 38, 32.52423 + 37, 35, 35, 34, 36, 37, 39, 36, 43, 38, 51, 40, 51, 43, 47, 42, 32.52424 + 38, 33, 33, 38, 47, 55, 60, 66, 73, 50, 52, 47, 36, 55, 47, 47, 32.52425 + 47, 46, 45, 44, 43, 42, 42, 37, 41, 47, 51, 52, 48, 43, 39, 47, 32.52426 + 40, 44, 55, 50, 36, 37, 50, 37, 46, 52, 51, 47, 44, 40, 36, 52, 32.52427 + 38, 40, 53, 85, 77, 85, 50, 73, 42, 79, 58, 58, 62, 255, 255, 255, 32.52428 + 43, 147, 188, 218, 189, 201, 175, 201, 169, 162, 191, 183, 177, 126, 113, 188, 32.52429 + 90, 152, 125, 130, 176, 95, 109, 163, 127, 163, 129, 155, 99, 89, 157, 193, 32.52430 + 150, 154, 104, 66, 61, 47, 58, 56, 77, 53, 69, 55, 61, 58, 46, 44, 32.52431 + 49, 42, 27, 33, 39, 49, 35, 42, 104, 58, 34, 41, 41, 34, 22, 46, 32.52432 + 22, 51, 27, 34, 44, 34, 55, 59, 43, 49, 36, 34, 28, 39, 49, 40, 32.52433 + 35, 43, 47, 48, 43, 36, 34, 37, 41, 44, 44, 47, 48, 47, 48, 46, 32.52434 + 43, 40, 37, 37, 34, 34, 41, 50, 55, 52, 47, 51, 39, 44, 57, 46, 32.52435 + 60, 34, 54, 44, 44, 46, 49, 47, 41, 40, 42, 43, 48, 34, 40, 49, 32.52436 + 78, 103, 59, 58, 37, 53, 66, 49, 62, 95, 255, 255, 84, 167, 212, 199, 32.52437 + 184, 195, 171, 191, 168, 159, 177, 187, 174, 127, 123, 127, 136, 163, 135, 149, 32.52438 + 130, 128, 109, 144, 115, 157, 131, 117, 93, 88, 137, 147, 120, 131, 91, 44, 32.52439 + 52, 68, 60, 59, 53, 45, 66, 64, 60, 49, 35, 35, 44, 48, 45, 48, 32.52440 + 38, 45, 43, 52, 94, 51, 40, 35, 37, 43, 35, 34, 38, 38, 40, 35, 32.52441 + 53, 50, 54, 41, 27, 46, 50, 52, 41, 36, 35, 34, 42, 45, 33, 32, 32.52442 + 32, 33, 36, 39, 41, 41, 39, 49, 51, 52, 50, 46, 41, 39, 39, 37, 32.52443 + 34, 33, 37, 43, 46, 45, 42, 50, 37, 40, 53, 45, 58, 34, 49, 40, 32.52444 + 42, 48, 53, 50, 41, 35, 35, 39, 45, 34, 38, 43, 66, 91, 63, 41, 32.52445 + 51, 63, 76, 82, 72, 67, 255, 255, 156, 153, 149, 183, 194, 157, 176, 141, 32.52446 + 195, 171, 207, 170, 160, 179, 186, 93, 113, 145, 183, 146, 115, 118, 149, 104, 32.52447 + 120, 144, 120, 117, 124, 116, 139, 118, 108, 118, 89, 47, 41, 64, 47, 72, 32.52448 + 55, 49, 52, 56, 52, 49, 46, 45, 45, 43, 42, 41, 37, 56, 57, 45, 32.52449 + 56, 37, 60, 43, 25, 95, 28, 75, 31, 53, 46, 42, 52, 46, 49, 47, 32.52450 + 40, 45, 37, 55, 46, 37, 28, 28, 44, 45, 25, 38, 40, 42, 41, 39, 32.52451 + 38, 37, 37, 51, 53, 54, 51, 45, 40, 38, 38, 34, 34, 33, 34, 36, 32.52452 + 39, 42, 44, 51, 39, 38, 49, 48, 56, 38, 45, 35, 36, 40, 44, 43, 32.52453 + 37, 35, 37, 38, 41, 37, 39, 37, 50, 77, 71, 52, 77, 63, 63, 93, 32.52454 + 74, 50, 255, 255, 216, 186, 163, 168, 184, 196, 184, 187, 191, 186, 177, 177, 32.52455 + 140, 177, 182, 134, 116, 130, 134, 131, 125, 81, 142, 74, 106, 137, 96, 110, 32.52456 + 121, 106, 120, 90, 91, 91, 73, 64, 47, 59, 47, 82, 73, 61, 59, 48, 32.52457 + 47, 49, 54, 53, 44, 37, 36, 38, 39, 60, 58, 42, 41, 37, 66, 40, 32.52458 + 47, 80, 61, 62, 49, 43, 44, 53, 48, 37, 38, 45, 49, 48, 38, 48, 32.52459 + 39, 36, 33, 29, 37, 40, 30, 44, 44, 42, 38, 34, 34, 39, 44, 50, 32.52460 + 49, 47, 46, 44, 41, 37, 35, 31, 33, 34, 33, 34, 38, 45, 51, 54, 32.52461 + 43, 39, 47, 52, 55, 44, 43, 38, 34, 32, 34, 35, 37, 45, 54, 37, 32.52462 + 40, 42, 43, 37, 42, 66, 83, 74, 88, 63, 56, 85, 72, 55, 87, 255, 32.52463 + 162, 104, 75, 181, 211, 200, 220, 178, 197, 169, 157, 185, 177, 174, 156, 170, 32.52464 + 145, 149, 93, 159, 155, 125, 116, 124, 132, 161, 114, 93, 89, 69, 90, 77, 32.52465 + 81, 71, 62, 47, 43, 55, 50, 62, 58, 43, 52, 50, 46, 45, 47, 46, 32.52466 + 42, 42, 46, 54, 42, 45, 44, 56, 62, 54, 50, 57, 76, 62, 76, 62, 32.52467 + 62, 63, 56, 58, 50, 44, 32, 28, 35, 48, 64, 67, 38, 26, 33, 34, 32.52468 + 33, 34, 32, 29, 31, 32, 32, 33, 37, 44, 51, 45, 40, 36, 37, 41, 32.52469 + 42, 37, 31, 31, 34, 35, 34, 33, 35, 42, 48, 53, 45, 39, 44, 54, 32.52470 + 50, 49, 41, 44, 39, 35, 35, 37, 41, 52, 62, 34, 37, 43, 42, 38, 32.52471 + 40, 56, 85, 77, 74, 67, 71, 80, 71, 63, 71, 255, 211, 116, 131, 195, 32.52472 + 187, 205, 178, 194, 165, 204, 184, 179, 208, 174, 168, 162, 120, 147, 131, 120, 32.52473 + 123, 137, 90, 131, 153, 105, 87, 96, 81, 63, 77, 80, 78, 62, 57, 52, 32.52474 + 47, 57, 58, 73, 66, 38, 35, 39, 44, 49, 52, 51, 49, 47, 45, 47, 32.52475 + 41, 44, 36, 53, 56, 57, 44, 50, 54, 36, 34, 51, 37, 65, 44, 55, 32.52476 + 40, 44, 43, 41, 43, 45, 66, 94, 45, 18, 29, 36, 35, 32, 29, 25, 32.52477 + 29, 35, 39, 41, 42, 42, 43, 39, 34, 30, 33, 38, 41, 37, 33, 35, 32.52478 + 37, 38, 36, 33, 31, 33, 36, 49, 45, 39, 39, 53, 42, 50, 37, 41, 32.52479 + 38, 37, 38, 38, 38, 43, 50, 31, 33, 41, 35, 39, 42, 44, 75, 86, 32.52480 + 68, 68, 76, 69, 65, 69, 65, 255, 255, 165, 180, 170, 173, 178, 210, 195, 32.52481 + 186, 204, 201, 192, 189, 150, 164, 162, 117, 141, 131, 108, 118, 142, 93, 134, 32.52482 + 151, 90, 93, 84, 75, 72, 62, 70, 58, 46, 46, 78, 62, 80, 69, 105, 32.52483 + 86, 66, 53, 38, 51, 60, 59, 56, 54, 47, 38, 32, 36, 47, 38, 45, 32.52484 + 31, 47, 47, 66, 74, 46, 74, 57, 87, 68, 66, 51, 27, 40, 50, 54, 32.52485 + 53, 51, 83, 76, 42, 26, 31, 33, 34, 35, 31, 35, 36, 39, 42, 44, 32.52486 + 43, 39, 36, 35, 35, 35, 35, 36, 36, 38, 39, 37, 39, 41, 40, 37, 32.52487 + 34, 31, 30, 47, 48, 41, 38, 53, 36, 53, 37, 41, 37, 35, 36, 35, 32.52488 + 34, 39, 46, 31, 32, 40, 30, 40, 46, 34, 58, 102, 84, 73, 68, 62, 32.52489 + 59, 66, 75, 255, 255, 230, 194, 205, 187, 184, 203, 191, 168, 204, 207, 203, 32.52490 + 200, 201, 177, 182, 150, 177, 128, 135, 126, 144, 60, 141, 96, 133, 123, 65, 32.52491 + 73, 85, 57, 65, 51, 50, 53, 56, 49, 87, 51, 88, 51, 64, 67, 59, 32.52492 + 68, 64, 48, 42, 49, 51, 45, 43, 33, 38, 38, 54, 32, 45, 42, 54, 32.52493 + 39, 72, 51, 79, 71, 53, 39, 48, 29, 46, 44, 30, 33, 66, 139, 32, 32.52494 + 32, 40, 40, 29, 29, 38, 38, 34, 31, 28, 31, 36, 41, 43, 42, 33, 32.52495 + 39, 43, 40, 34, 32, 38, 44, 37, 39, 42, 45, 44, 40, 35, 32, 47, 32.52496 + 51, 45, 40, 55, 35, 57, 39, 49, 42, 36, 34, 34, 37, 48, 59, 35, 32.52497 + 35, 40, 28, 43, 51, 28, 48, 105, 101, 83, 73, 75, 63, 58, 75, 126, 32.52498 + 255, 255, 225, 180, 158, 221, 217, 185, 191, 175, 193, 226, 176, 203, 177, 177, 32.52499 + 183, 160, 134, 124, 114, 98, 74, 137, 103, 80, 73, 106, 65, 53, 76, 63, 32.52500 + 33, 50, 37, 60, 55, 53, 57, 56, 53, 55, 61, 52, 65, 74, 66, 36, 32.52501 + 80, 36, 45, 43, 41, 39, 40, 42, 42, 39, 36, 39, 52, 41, 73, 51, 32.52502 + 47, 54, 50, 29, 54, 33, 43, 31, 40, 113, 102, 32, 33, 33, 34, 35, 32.52503 + 34, 34, 33, 36, 37, 39, 41, 41, 39, 37, 36, 35, 37, 39, 37, 35, 32.52504 + 35, 38, 41, 46, 45, 42, 37, 32, 31, 34, 38, 41, 44, 44, 41, 41, 32.52505 + 44, 43, 40, 47, 30, 43, 35, 36, 55, 43, 38, 34, 34, 33, 36, 42, 32.52506 + 47, 44, 38, 76, 108, 91, 61, 64, 64, 84, 64, 53, 255, 255, 255, 255, 32.52507 + 255, 241, 218, 200, 208, 200, 206, 206, 187, 191, 173, 167, 168, 126, 131, 141, 32.52508 + 182, 93, 121, 133, 190, 93, 93, 74, 90, 54, 50, 96, 64, 79, 53, 54, 32.52509 + 49, 50, 57, 60, 58, 57, 59, 63, 61, 65, 73, 64, 110, 61, 59, 47, 32.52510 + 44, 40, 40, 40, 40, 37, 35, 46, 55, 43, 68, 48, 47, 57, 54, 50, 32.52511 + 30, 28, 45, 42, 39, 70, 100, 34, 36, 37, 39, 40, 41, 42, 42, 39, 32.52512 + 39, 39, 38, 37, 34, 32, 31, 33, 35, 37, 37, 36, 37, 40, 43, 41, 32.52513 + 43, 43, 41, 37, 35, 35, 37, 37, 41, 42, 40, 39, 41, 39, 35, 44, 32.52514 + 30, 48, 48, 46, 54, 39, 34, 40, 37, 32, 32, 40, 48, 47, 41, 72, 32.52515 + 107, 79, 85, 57, 64, 59, 59, 62, 255, 255, 255, 255, 255, 255, 255, 255, 32.52516 + 241, 222, 220, 185, 191, 182, 176, 166, 164, 110, 142, 109, 123, 160, 125, 97, 32.52517 + 107, 146, 114, 41, 118, 101, 99, 66, 86, 58, 60, 55, 51, 53, 61, 66, 32.52518 + 64, 57, 55, 53, 45, 49, 67, 68, 104, 62, 61, 51, 48, 43, 40, 39, 32.52519 + 38, 37, 36, 45, 51, 48, 67, 52, 51, 57, 52, 55, 27, 48, 38, 32, 32.52520 + 42, 58, 141, 37, 38, 39, 40, 41, 42, 42, 42, 39, 38, 36, 34, 33, 32.52521 + 32, 31, 31, 32, 34, 35, 36, 35, 35, 37, 39, 35, 38, 42, 43, 41, 32.52522 + 39, 37, 37, 36, 40, 41, 39, 39, 40, 38, 34, 44, 30, 47, 54, 49, 32.52523 + 46, 34, 33, 46, 39, 31, 29, 38, 49, 49, 44, 62, 85, 85, 83, 97, 32.52524 + 89, 83, 64, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 32.52525 + 208, 204, 193, 170, 149, 106, 124, 112, 152, 153, 120, 122, 118, 130, 161, 50, 32.52526 + 76, 161, 98, 53, 51, 60, 59, 61, 56, 54, 58, 62, 61, 51, 44, 39, 32.52527 + 38, 46, 60, 50, 68, 44, 57, 55, 51, 46, 42, 40, 41, 42, 43, 41, 32.52528 + 46, 57, 71, 61, 56, 53, 43, 39, 39, 58, 25, 27, 55, 61, 124, 38, 32.52529 + 38, 38, 38, 37, 36, 34, 33, 37, 35, 33, 32, 32, 33, 35, 36, 35, 32.52530 + 35, 35, 34, 33, 31, 31, 30, 31, 34, 38, 40, 41, 40, 38, 37, 40, 32.52531 + 42, 41, 38, 38, 41, 42, 39, 48, 32, 40, 50, 43, 34, 32, 35, 48, 32.52532 + 41, 31, 30, 40, 51, 50, 45, 41, 96, 75, 115, 73, 115, 61, 52, 75, 32.52533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 210, 195, 171, 32.52534 + 140, 127, 111, 101, 159, 118, 105, 110, 121, 85, 128, 143, 114, 122, 104, 78, 32.52535 + 77, 63, 38, 61, 56, 49, 49, 52, 53, 47, 39, 47, 47, 51, 58, 44, 32.52536 + 49, 40, 56, 54, 52, 48, 44, 43, 45, 48, 51, 52, 51, 68, 69, 62, 32.52537 + 56, 49, 38, 30, 41, 35, 22, 45, 61, 42, 35, 39, 39, 39, 38, 37, 32.52538 + 36, 35, 34, 39, 37, 34, 33, 33, 34, 37, 38, 36, 36, 36, 36, 35, 32.52539 + 34, 32, 30, 31, 31, 32, 34, 36, 37, 38, 38, 41, 42, 39, 34, 34, 32.52540 + 40, 44, 44, 48, 35, 38, 52, 44, 32, 35, 34, 45, 40, 34, 34, 42, 32.52541 + 51, 49, 42, 28, 64, 97, 106, 108, 98, 81, 79, 85, 255, 255, 255, 255, 32.52542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 182, 160, 131, 133, 99, 92, 32.52543 + 145, 173, 117, 119, 100, 114, 112, 95, 171, 106, 155, 64, 51, 29, 71, 59, 32.52544 + 56, 49, 47, 50, 56, 54, 48, 54, 48, 42, 46, 44, 47, 42, 44, 49, 32.52545 + 48, 47, 44, 43, 45, 50, 54, 70, 59, 73, 57, 54, 52, 48, 39, 37, 32.52546 + 42, 23, 36, 51, 41, 37, 18, 38, 39, 40, 42, 43, 43, 43, 43, 43, 32.52547 + 41, 38, 35, 34, 33, 34, 35, 35, 35, 36, 38, 41, 41, 39, 37, 33, 32.52548 + 31, 29, 30, 33, 35, 37, 37, 38, 39, 36, 31, 33, 40, 45, 46, 42, 32.52549 + 39, 40, 58, 53, 39, 43, 30, 40, 39, 36, 35, 41, 47, 45, 40, 50, 32.52550 + 55, 46, 110, 99, 121, 64, 82, 81, 255, 255, 255, 255, 255, 255, 255, 255, 32.52551 + 255, 255, 255, 255, 255, 255, 175, 145, 118, 103, 80, 94, 175, 138, 126, 131, 32.52552 + 141, 86, 118, 65, 82, 69, 62, 93, 66, 53, 37, 52, 54, 50, 47, 49, 32.52553 + 57, 58, 54, 49, 46, 38, 38, 43, 44, 44, 35, 43, 43, 43, 41, 39, 32.52554 + 40, 45, 49, 67, 50, 69, 45, 47, 49, 47, 40, 42, 39, 31, 42, 35, 32.52555 + 27, 46, 46, 36, 37, 39, 41, 42, 43, 43, 43, 42, 41, 38, 36, 34, 32.52556 + 34, 34, 34, 34, 33, 35, 38, 42, 43, 40, 38, 35, 32, 30, 31, 33, 32.52557 + 35, 35, 34, 33, 36, 36, 35, 37, 44, 47, 46, 41, 43, 38, 54, 53, 32.52558 + 45, 52, 30, 37, 38, 37, 34, 37, 42, 43, 41, 45, 30, 58, 95, 177, 32.52559 + 218, 211, 210, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52560 + 255, 255, 168, 146, 136, 109, 109, 142, 161, 134, 181, 104, 136, 100, 118, 103, 32.52561 + 57, 124, 41, 47, 75, 60, 47, 41, 46, 46, 41, 43, 49, 51, 47, 45, 32.52562 + 54, 51, 46, 46, 43, 50, 41, 38, 40, 40, 37, 35, 36, 40, 43, 47, 32.52563 + 31, 60, 38, 46, 48, 44, 36, 36, 23, 28, 32, 26, 36, 40, 26, 34, 32.52564 + 35, 36, 36, 37, 36, 36, 36, 37, 37, 36, 35, 35, 36, 36, 37, 34, 32.52565 + 33, 33, 36, 39, 39, 35, 31, 36, 34, 32, 33, 36, 36, 34, 31, 31, 32.52566 + 36, 40, 41, 44, 49, 50, 47, 44, 46, 32, 43, 44, 44, 58, 34, 37, 32.52567 + 39, 37, 33, 32, 37, 41, 42, 37, 69, 97, 98, 149, 227, 235, 235, 226, 32.52568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 120, 32.52569 + 110, 112, 129, 165, 149, 126, 156, 125, 151, 128, 115, 98, 53, 125, 72, 43, 32.52570 + 71, 45, 48, 59, 43, 38, 47, 46, 35, 38, 53, 44, 42, 40, 41, 43, 32.52571 + 43, 40, 36, 43, 42, 40, 36, 33, 34, 40, 45, 48, 45, 39, 36, 41, 32.52572 + 46, 41, 29, 31, 25, 24, 30, 34, 33, 31, 33, 35, 32, 31, 34, 35, 32.52573 + 34, 36, 41, 34, 36, 38, 36, 32, 31, 32, 34, 43, 36, 31, 34, 41, 32.52574 + 44, 41, 35, 28, 32, 32, 30, 33, 38, 35, 28, 35, 38, 35, 33, 42, 32.52575 + 52, 46, 31, 55, 45, 36, 34, 39, 42, 38, 33, 43, 37, 35, 38, 35, 32.52576 + 29, 35, 48, 31, 63, 118, 75, 168, 219, 209, 214, 231, 255, 255, 255, 255, 32.52577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 138, 111, 135, 181, 32.52578 + 132, 124, 117, 143, 137, 134, 94, 171, 91, 96, 92, 109, 28, 73, 44, 60, 32.52579 + 50, 43, 46, 52, 51, 47, 45, 44, 43, 42, 42, 42, 42, 40, 38, 40, 32.52580 + 41, 40, 37, 32, 31, 33, 35, 38, 41, 42, 40, 41, 46, 47, 43, 39, 32.52581 + 33, 26, 22, 24, 30, 35, 37, 31, 29, 30, 35, 37, 36, 39, 43, 41, 32.52582 + 43, 44, 42, 39, 37, 38, 40, 38, 37, 37, 37, 39, 40, 41, 42, 28, 32.52583 + 34, 36, 33, 31, 34, 34, 32, 35, 31, 31, 38, 46, 48, 44, 41, 50, 32.52584 + 43, 36, 35, 39, 41, 38, 36, 41, 36, 34, 38, 34, 29, 36, 49, 50, 32.52585 + 49, 103, 124, 204, 228, 215, 220, 214, 255, 255, 255, 255, 255, 255, 255, 255, 32.52586 + 255, 255, 255, 255, 255, 255, 255, 126, 115, 138, 162, 180, 126, 120, 99, 144, 32.52587 + 130, 140, 106, 81, 68, 57, 52, 87, 41, 130, 65, 49, 52, 49, 42, 44, 32.52588 + 50, 47, 38, 41, 43, 44, 43, 41, 39, 39, 39, 37, 38, 39, 37, 34, 32.52589 + 32, 32, 32, 38, 46, 49, 45, 40, 40, 43, 44, 46, 45, 36, 24, 22, 32.52590 + 33, 40, 39, 33, 31, 32, 37, 39, 37, 38, 41, 34, 35, 36, 35, 32, 32.52591 + 31, 31, 32, 33, 38, 42, 40, 36, 35, 40, 46, 30, 37, 40, 35, 31, 32.52592 + 32, 34, 35, 38, 30, 31, 44, 48, 41, 39, 47, 42, 39, 37, 36, 38, 32.52593 + 39, 40, 40, 39, 35, 33, 37, 34, 31, 38, 49, 59, 47, 97, 172, 212, 32.52594 + 212, 212, 211, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52595 + 255, 255, 255, 131, 131, 195, 144, 155, 135, 116, 120, 120, 133, 140, 148, 99, 32.52596 + 81, 64, 71, 49, 49, 62, 46, 40, 51, 53, 44, 35, 35, 40, 42, 38, 32.52597 + 42, 44, 44, 39, 38, 38, 41, 35, 37, 37, 39, 38, 39, 38, 39, 38, 32.52598 + 43, 46, 42, 37, 34, 37, 40, 43, 52, 48, 34, 31, 40, 43, 37, 39, 32.52599 + 37, 38, 42, 42, 37, 36, 38, 42, 42, 41, 41, 39, 38, 38, 38, 34, 32.52600 + 39, 42, 39, 34, 32, 37, 42, 37, 38, 38, 35, 33, 34, 35, 36, 40, 32.52601 + 37, 38, 44, 43, 37, 36, 42, 35, 36, 37, 37, 37, 38, 40, 43, 40, 32.52602 + 36, 33, 35, 34, 32, 38, 46, 42, 54, 107, 204, 199, 196, 214, 208, 211, 32.52603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 118, 32.52604 + 115, 185, 147, 138, 139, 114, 128, 103, 122, 126, 160, 119, 89, 62, 73, 41, 32.52605 + 81, 48, 48, 55, 52, 51, 48, 43, 37, 41, 51, 37, 41, 43, 44, 40, 32.52606 + 39, 40, 43, 39, 39, 37, 38, 38, 42, 42, 43, 32, 33, 35, 37, 39, 32.52607 + 39, 41, 41, 39, 50, 50, 38, 32, 39, 43, 38, 40, 38, 40, 43, 43, 32.52608 + 39, 38, 40, 42, 42, 41, 40, 40, 39, 38, 37, 38, 38, 37, 35, 33, 32.52609 + 32, 32, 33, 44, 38, 32, 33, 37, 38, 36, 34, 36, 43, 44, 38, 35, 32.52610 + 39, 39, 35, 30, 33, 36, 37, 37, 37, 39, 42, 42, 38, 34, 34, 34, 32.52611 + 33, 36, 42, 30, 48, 100, 219, 211, 205, 224, 221, 214, 255, 255, 255, 255, 32.52612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 133, 107, 125, 166, 138, 32.52613 + 129, 112, 108, 107, 100, 106, 132, 131, 116, 80, 58, 40, 50, 56, 41, 70, 32.52614 + 53, 43, 46, 52, 48, 45, 46, 38, 41, 43, 44, 44, 44, 45, 46, 44, 32.52615 + 42, 38, 38, 39, 41, 42, 41, 42, 36, 35, 39, 42, 40, 37, 36, 37, 32.52616 + 46, 46, 34, 26, 31, 39, 41, 35, 34, 36, 41, 43, 41, 42, 45, 37, 32.52617 + 35, 33, 33, 34, 34, 32, 30, 40, 36, 32, 32, 33, 33, 31, 28, 47, 32.52618 + 36, 28, 31, 38, 40, 38, 35, 31, 42, 43, 33, 32, 41, 42, 34, 30, 32.52619 + 32, 35, 37, 37, 37, 37, 38, 42, 39, 34, 32, 33, 35, 36, 38, 42, 32.52620 + 37, 72, 198, 228, 216, 215, 219, 219, 255, 255, 255, 255, 255, 255, 255, 255, 32.52621 + 255, 255, 255, 255, 255, 255, 255, 230, 164, 116, 147, 139, 123, 112, 99, 118, 32.52622 + 97, 99, 117, 140, 100, 82, 76, 75, 32, 62, 84, 62, 58, 50, 47, 48, 32.52623 + 50, 47, 43, 41, 41, 43, 46, 49, 51, 51, 50, 45, 43, 41, 42, 45, 32.52624 + 46, 44, 41, 50, 42, 40, 42, 41, 36, 31, 32, 36, 41, 45, 41, 32, 32.52625 + 28, 32, 39, 33, 31, 32, 37, 39, 39, 41, 45, 44, 42, 40, 40, 41, 32.52626 + 41, 39, 37, 37, 34, 31, 31, 33, 34, 33, 31, 45, 35, 28, 31, 36, 32.52627 + 37, 38, 40, 37, 37, 36, 34, 34, 36, 36, 34, 31, 32, 34, 37, 38, 32.52628 + 37, 34, 33, 39, 37, 33, 32, 34, 37, 38, 38, 46, 36, 44, 133, 206, 32.52629 + 218, 207, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52630 + 255, 255, 255, 255, 133, 129, 160, 133, 127, 112, 113, 121, 107, 101, 126, 138, 32.52631 + 112, 104, 51, 59, 80, 62, 43, 45, 67, 74, 55, 40, 45, 52, 49, 45, 32.52632 + 43, 43, 47, 53, 56, 55, 53, 42, 42, 44, 48, 53, 54, 51, 47, 40, 32.52633 + 36, 36, 40, 40, 34, 34, 38, 31, 40, 51, 55, 44, 29, 27, 32, 35, 32.52634 + 32, 31, 34, 35, 34, 36, 41, 38, 35, 33, 33, 35, 35, 33, 30, 32, 32.52635 + 33, 33, 33, 33, 34, 36, 37, 42, 34, 30, 33, 34, 33, 37, 44, 46, 32.52636 + 35, 32, 38, 38, 29, 27, 33, 32, 32, 34, 36, 38, 37, 33, 30, 37, 32.52637 + 35, 32, 31, 34, 40, 40, 39, 30, 39, 31, 72, 171, 224, 221, 230, 255, 32.52638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52639 + 114, 117, 170, 143, 126, 107, 107, 116, 113, 111, 119, 142, 111, 83, 73, 73, 32.52640 + 86, 76, 50, 49, 44, 70, 66, 60, 58, 39, 53, 46, 54, 55, 57, 62, 32.52641 + 55, 49, 54, 54, 41, 42, 50, 50, 49, 45, 33, 42, 40, 38, 39, 43, 32.52642 + 42, 39, 35, 29, 40, 53, 54, 39, 24, 26, 35, 30, 33, 34, 34, 33, 32.52643 + 33, 35, 36, 37, 33, 30, 29, 32, 33, 32, 30, 34, 34, 34, 33, 33, 32.52644 + 32, 32, 31, 37, 35, 32, 33, 36, 40, 43, 44, 43, 39, 35, 35, 39, 32.52645 + 40, 36, 31, 33, 32, 31, 34, 37, 38, 35, 33, 34, 39, 39, 36, 35, 32.52646 + 35, 34, 29, 49, 32, 37, 51, 132, 206, 253, 233, 255, 255, 255, 255, 255, 32.52647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 120, 156, 132, 32.52648 + 118, 111, 107, 100, 97, 108, 121, 126, 91, 96, 61, 98, 79, 100, 68, 55, 32.52649 + 53, 65, 64, 59, 52, 41, 47, 50, 52, 45, 47, 56, 56, 52, 60, 62, 32.52650 + 58, 61, 61, 46, 41, 45, 44, 37, 35, 32, 32, 32, 36, 37, 38, 39, 32.52651 + 43, 51, 52, 43, 31, 27, 31, 31, 34, 35, 35, 34, 34, 35, 37, 37, 32.52652 + 34, 31, 31, 32, 34, 33, 31, 33, 33, 33, 32, 32, 32, 32, 32, 32, 32.52653 + 31, 31, 32, 34, 34, 33, 31, 42, 38, 35, 35, 37, 37, 34, 32, 33, 32.52654 + 31, 29, 31, 34, 37, 38, 38, 31, 35, 37, 36, 37, 39, 38, 33, 38, 32.52655 + 31, 30, 30, 70, 120, 148, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52656 + 255, 255, 255, 255, 255, 255, 255, 255, 155, 150, 170, 143, 116, 112, 111, 97, 32.52657 + 100, 120, 124, 124, 105, 100, 87, 87, 84, 87, 71, 57, 60, 54, 63, 63, 32.52658 + 55, 56, 52, 61, 58, 51, 53, 64, 63, 59, 66, 67, 60, 61, 58, 41, 32.52659 + 36, 43, 45, 39, 38, 34, 31, 30, 34, 42, 49, 49, 46, 48, 51, 47, 32.52660 + 37, 28, 27, 32, 35, 36, 36, 35, 35, 36, 37, 36, 34, 32, 32, 33, 32.52661 + 34, 33, 32, 32, 32, 32, 32, 32, 33, 33, 33, 30, 31, 33, 36, 38, 32.52662 + 36, 32, 28, 39, 38, 36, 35, 34, 33, 33, 32, 33, 30, 28, 28, 32, 32.52663 + 37, 40, 41, 30, 36, 37, 36, 38, 41, 40, 36, 34, 41, 40, 41, 50, 32.52664 + 99, 123, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52665 + 255, 255, 255, 255, 146, 148, 159, 166, 121, 110, 114, 104, 116, 135, 125, 129, 32.52666 + 121, 110, 104, 76, 75, 66, 60, 55, 62, 45, 62, 70, 63, 76, 64, 63, 32.52667 + 66, 63, 68, 72, 63, 55, 64, 64, 50, 46, 49, 44, 44, 44, 38, 41, 32.52668 + 42, 41, 36, 30, 34, 42, 51, 52, 49, 48, 51, 47, 36, 28, 25, 34, 32.52669 + 36, 37, 37, 35, 35, 36, 38, 33, 33, 32, 32, 32, 33, 32, 32, 32, 32.52670 + 32, 33, 33, 34, 34, 35, 35, 29, 30, 33, 37, 40, 40, 36, 33, 38, 32.52671 + 38, 37, 34, 31, 30, 31, 33, 32, 30, 29, 30, 32, 35, 38, 39, 35, 32.52672 + 38, 39, 36, 37, 40, 38, 34, 25, 36, 31, 43, 49, 113, 141, 147, 255, 32.52673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52674 + 172, 173, 177, 175, 128, 115, 117, 107, 119, 138, 129, 126, 108, 127, 89, 93, 32.52675 + 53, 73, 58, 59, 64, 44, 58, 67, 65, 78, 62, 57, 62, 64, 66, 64, 32.52676 + 50, 47, 63, 57, 46, 47, 53, 50, 49, 49, 41, 37, 41, 42, 36, 28, 32.52677 + 25, 30, 37, 48, 47, 50, 52, 45, 32, 26, 26, 34, 37, 38, 37, 35, 32.52678 + 35, 36, 37, 30, 31, 32, 32, 31, 31, 31, 32, 33, 33, 34, 35, 35, 32.52679 + 36, 36, 36, 30, 30, 31, 33, 35, 36, 35, 33, 39, 39, 37, 33, 30, 32.52680 + 29, 30, 32, 30, 31, 32, 33, 34, 34, 34, 34, 34, 37, 38, 35, 36, 32.52681 + 40, 39, 35, 31, 37, 28, 38, 47, 111, 134, 135, 255, 255, 255, 255, 255, 32.52682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 170, 166, 177, 32.52683 + 143, 131, 125, 109, 115, 135, 142, 124, 110, 119, 97, 88, 62, 73, 66, 71, 32.52684 + 69, 53, 51, 57, 58, 59, 47, 57, 61, 60, 60, 54, 42, 47, 74, 43, 32.52685 + 46, 57, 61, 45, 39, 45, 48, 39, 43, 46, 41, 30, 23, 23, 26, 40, 32.52686 + 44, 52, 54, 44, 31, 25, 27, 34, 36, 37, 36, 35, 34, 34, 36, 29, 32.52687 + 31, 33, 33, 32, 31, 32, 33, 34, 34, 34, 35, 35, 35, 35, 35, 40, 32.52688 + 37, 35, 34, 35, 36, 35, 34, 42, 39, 35, 32, 31, 30, 31, 31, 29, 32.52689 + 31, 34, 35, 34, 32, 32, 33, 28, 33, 34, 34, 36, 42, 43, 40, 38, 32.52690 + 41, 38, 42, 58, 111, 133, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52691 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 175, 166, 184, 159, 136, 125, 119, 32.52692 + 119, 132, 146, 131, 123, 110, 113, 80, 79, 71, 74, 76, 66, 61, 48, 49, 32.52693 + 57, 46, 42, 64, 64, 61, 62, 58, 45, 49, 75, 37, 40, 53, 58, 42, 32.52694 + 37, 44, 48, 45, 49, 50, 46, 38, 28, 25, 24, 37, 41, 49, 55, 48, 32.52695 + 36, 28, 27, 34, 36, 37, 36, 34, 32, 33, 34, 30, 33, 36, 36, 35, 32.52696 + 33, 34, 36, 33, 33, 33, 33, 33, 32, 32, 32, 42, 40, 38, 38, 39, 32.52697 + 39, 37, 36, 45, 40, 34, 31, 32, 33, 32, 30, 28, 30, 33, 32, 31, 32.52698 + 31, 34, 37, 27, 30, 33, 32, 35, 41, 42, 40, 26, 31, 41, 33, 57, 32.52699 + 101, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52700 + 255, 255, 255, 255, 186, 190, 180, 194, 162, 127, 118, 128, 128, 128, 137, 137, 32.52701 + 113, 125, 98, 105, 74, 92, 83, 76, 60, 64, 45, 47, 63, 44, 46, 65, 32.52702 + 65, 63, 69, 67, 48, 44, 63, 44, 36, 42, 51, 47, 47, 50, 45, 48, 32.52703 + 50, 51, 47, 39, 32, 26, 24, 39, 42, 49, 55, 52, 40, 30, 27, 33, 32.52704 + 35, 36, 35, 33, 32, 32, 34, 31, 35, 38, 39, 36, 35, 35, 38, 32, 32.52705 + 32, 32, 31, 30, 30, 29, 29, 33, 33, 33, 35, 37, 38, 36, 34, 47, 32.52706 + 40, 33, 31, 33, 35, 33, 29, 28, 29, 30, 29, 29, 31, 37, 42, 30, 32.52707 + 34, 34, 30, 32, 38, 37, 36, 35, 40, 52, 30, 50, 89, 146, 255, 255, 32.52708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52709 + 176, 173, 170, 169, 171, 134, 142, 128, 139, 153, 125, 131, 122, 109, 105, 88, 32.52710 + 107, 90, 103, 84, 82, 60, 62, 46, 62, 53, 59, 50, 67, 79, 51, 41, 32.52711 + 58, 55, 52, 47, 42, 41, 42, 44, 46, 53, 59, 46, 45, 43, 41, 36, 32.52712 + 34, 35, 38, 51, 31, 56, 51, 49, 48, 13, 29, 33, 34, 35, 35, 36, 32.52713 + 37, 38, 38, 38, 38, 36, 34, 30, 30, 31, 34, 35, 34, 33, 33, 32, 32.52714 + 31, 30, 30, 32, 32, 33, 34, 35, 35, 36, 37, 36, 36, 34, 33, 31, 32.52715 + 30, 29, 28, 32, 31, 28, 27, 28, 31, 34, 36, 28, 30, 33, 35, 34, 32.52716 + 34, 35, 37, 42, 37, 45, 41, 53, 99, 152, 255, 255, 255, 255, 255, 255, 32.52717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 171, 166, 184, 32.52718 + 180, 135, 145, 136, 152, 171, 152, 118, 112, 106, 102, 85, 100, 88, 103, 80, 32.52719 + 78, 61, 65, 49, 61, 59, 72, 53, 47, 60, 61, 54, 49, 43, 61, 33, 32.52720 + 41, 46, 47, 48, 53, 53, 49, 44, 44, 45, 43, 37, 32, 34, 39, 45, 32.52721 + 29, 57, 54, 49, 46, 15, 32, 31, 34, 34, 35, 36, 37, 37, 37, 36, 32.52722 + 36, 34, 32, 29, 28, 30, 32, 34, 34, 33, 32, 31, 31, 30, 30, 33, 32.52723 + 33, 34, 35, 36, 37, 37, 38, 34, 34, 33, 32, 31, 30, 29, 29, 32, 32.52724 + 30, 29, 28, 28, 31, 34, 36, 35, 36, 36, 38, 37, 37, 35, 36, 24, 32.52725 + 34, 52, 31, 58, 149, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52726 + 255, 255, 255, 255, 255, 255, 255, 255, 190, 189, 215, 179, 176, 136, 156, 155, 32.52727 + 161, 168, 151, 120, 107, 99, 96, 93, 109, 92, 96, 69, 72, 72, 81, 65, 32.52728 + 61, 52, 64, 49, 75, 88, 58, 55, 83, 70, 49, 40, 51, 55, 48, 42, 32.52729 + 42, 38, 30, 43, 44, 47, 46, 37, 28, 29, 35, 32, 25, 54, 54, 50, 32.52730 + 46, 20, 33, 31, 34, 35, 36, 37, 37, 37, 37, 35, 35, 35, 33, 30, 32.52731 + 29, 30, 31, 33, 33, 33, 32, 31, 31, 30, 30, 32, 32, 33, 33, 34, 32.52732 + 35, 35, 36, 32, 32, 31, 31, 30, 30, 30, 29, 31, 30, 29, 28, 29, 32.52733 + 31, 34, 36, 40, 37, 37, 39, 40, 39, 36, 32, 24, 42, 40, 55, 65, 32.52734 + 202, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52735 + 255, 255, 255, 255, 240, 186, 199, 183, 180, 139, 164, 166, 162, 158, 144, 129, 32.52736 + 103, 91, 90, 104, 120, 97, 86, 75, 76, 80, 86, 69, 52, 48, 59, 69, 32.52737 + 67, 76, 70, 68, 72, 53, 51, 43, 45, 44, 42, 40, 42, 46, 49, 43, 32.52738 + 44, 49, 50, 40, 26, 24, 32, 26, 24, 48, 54, 55, 50, 25, 30, 32, 32.52739 + 35, 37, 38, 39, 39, 38, 38, 35, 36, 36, 34, 31, 30, 30, 31, 33, 32.52740 + 32, 32, 31, 31, 30, 30, 30, 29, 29, 29, 30, 30, 31, 31, 31, 30, 32.52741 + 30, 30, 30, 30, 30, 30, 30, 31, 30, 29, 29, 29, 31, 34, 35, 39, 32.52742 + 35, 34, 36, 40, 41, 35, 30, 40, 38, 34, 64, 98, 179, 229, 255, 255, 32.52743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52744 + 200, 189, 196, 206, 202, 148, 165, 170, 164, 162, 155, 121, 98, 94, 87, 100, 32.52745 + 109, 92, 83, 88, 83, 82, 77, 67, 55, 61, 73, 81, 74, 80, 72, 72, 32.52746 + 77, 61, 59, 60, 49, 44, 47, 45, 39, 44, 55, 45, 45, 49, 55, 44, 32.52747 + 27, 23, 29, 26, 27, 43, 55, 59, 53, 30, 25, 33, 36, 39, 41, 41, 32.52748 + 41, 40, 39, 37, 38, 38, 37, 34, 32, 32, 33, 32, 31, 31, 31, 31, 32.52749 + 30, 30, 30, 29, 29, 29, 29, 29, 30, 30, 30, 29, 29, 29, 30, 30, 32.52750 + 30, 31, 31, 30, 30, 29, 29, 30, 32, 33, 34, 37, 34, 33, 37, 42, 32.52751 + 43, 37, 32, 41, 28, 39, 44, 121, 131, 235, 255, 255, 255, 255, 255, 255, 32.52752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 178, 201, 196, 32.52753 + 209, 163, 177, 182, 171, 156, 144, 108, 98, 109, 90, 93, 91, 89, 95, 81, 32.52754 + 82, 91, 83, 87, 74, 76, 73, 79, 94, 96, 62, 66, 102, 94, 73, 66, 32.52755 + 54, 49, 52, 53, 46, 44, 46, 49, 44, 50, 58, 50, 32, 24, 27, 28, 32.52756 + 35, 47, 58, 60, 51, 34, 24, 33, 36, 39, 41, 42, 42, 40, 39, 37, 32.52757 + 38, 39, 38, 35, 33, 33, 33, 31, 31, 31, 30, 30, 30, 30, 30, 31, 32.52758 + 31, 31, 31, 32, 32, 32, 32, 30, 30, 30, 30, 31, 31, 31, 31, 30, 32.52759 + 30, 30, 30, 31, 32, 33, 34, 36, 36, 37, 40, 43, 44, 40, 36, 25, 32.52760 + 48, 26, 54, 84, 158, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52761 + 255, 255, 255, 255, 255, 255, 255, 255, 182, 190, 190, 170, 204, 170, 186, 190, 32.52762 + 169, 136, 112, 102, 91, 107, 85, 90, 86, 90, 96, 88, 90, 100, 86, 98, 32.52763 + 87, 82, 62, 92, 70, 67, 66, 73, 81, 81, 101, 60, 62, 58, 56, 66, 32.52764 + 80, 77, 62, 52, 46, 50, 62, 58, 37, 24, 26, 30, 45, 56, 64, 58, 32.52765 + 43, 33, 24, 31, 35, 38, 40, 41, 40, 38, 37, 36, 37, 39, 38, 35, 32.52766 + 33, 32, 32, 30, 30, 30, 30, 30, 30, 30, 30, 32, 32, 32, 32, 32, 32.52767 + 32, 32, 32, 32, 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 30, 31, 32.52768 + 32, 33, 33, 35, 36, 39, 42, 43, 40, 37, 35, 26, 60, 21, 64, 45, 32.52769 + 207, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52770 + 255, 255, 255, 255, 255, 165, 176, 169, 208, 170, 179, 180, 159, 126, 102, 100, 32.52771 + 79, 87, 69, 88, 88, 87, 83, 120, 109, 98, 65, 78, 78, 84, 65, 90, 32.52772 + 91, 86, 57, 63, 100, 106, 104, 106, 114, 97, 70, 73, 94, 83, 52, 55, 32.52773 + 46, 50, 63, 61, 41, 25, 26, 29, 51, 64, 69, 55, 36, 33, 28, 29, 32.52774 + 33, 35, 39, 40, 38, 36, 35, 34, 36, 38, 37, 34, 32, 30, 30, 30, 32.52775 + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 33, 32.52776 + 33, 33, 32, 32, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 32, 33, 32.52777 + 36, 39, 40, 39, 35, 31, 30, 44, 35, 42, 34, 54, 203, 255, 255, 255, 32.52778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52779 + 255, 209, 171, 178, 208, 197, 196, 167, 132, 83, 95, 75, 66, 64, 73, 64, 32.52780 + 96, 87, 91, 107, 103, 141, 81, 88, 75, 64, 74, 90, 76, 123, 67, 66, 32.52781 + 82, 86, 112, 105, 113, 119, 110, 91, 71, 61, 59, 56, 57, 47, 49, 57, 32.52782 + 38, 17, 26, 56, 62, 66, 59, 47, 32, 26, 27, 31, 31, 31, 36, 38, 32.52783 + 36, 35, 36, 33, 32, 32, 34, 35, 35, 32, 30, 33, 32, 32, 31, 31, 32.52784 + 30, 30, 29, 31, 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 32.52785 + 30, 30, 30, 29, 29, 30, 31, 31, 32, 33, 32, 29, 44, 41, 47, 32, 32.52786 + 23, 42, 28, 37, 23, 50, 37, 54, 207, 255, 255, 255, 255, 255, 255, 255, 32.52787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 163, 177, 32.52788 + 186, 191, 167, 168, 120, 91, 77, 64, 47, 55, 55, 65, 88, 87, 114, 119, 32.52789 + 112, 147, 58, 43, 90, 67, 83, 94, 124, 83, 87, 52, 90, 70, 107, 80, 32.52790 + 90, 108, 107, 106, 90, 89, 85, 67, 65, 50, 44, 46, 33, 26, 45, 55, 32.52791 + 61, 64, 58, 45, 32, 25, 24, 29, 28, 29, 34, 35, 33, 30, 33, 36, 32.52792 + 35, 34, 35, 35, 33, 29, 26, 30, 30, 30, 30, 29, 29, 29, 29, 31, 32.52793 + 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 30, 30, 30, 29, 32.52794 + 29, 30, 31, 31, 32, 33, 32, 37, 34, 27, 45, 44, 32, 41, 29, 23, 32.52795 + 49, 40, 61, 47, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 170, 210, 194, 174, 126, 115, 32.52797 + 85, 75, 56, 56, 35, 57, 53, 70, 78, 76, 138, 116, 105, 105, 66, 75, 32.52798 + 66, 112, 103, 86, 136, 68, 84, 78, 81, 79, 94, 89, 88, 101, 89, 95, 32.52799 + 76, 79, 70, 68, 65, 52, 42, 39, 32, 38, 60, 57, 61, 61, 54, 41, 32.52800 + 30, 24, 23, 32, 31, 33, 37, 37, 34, 32, 35, 36, 35, 35, 35, 35, 32.52801 + 33, 29, 26, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 33, 33, 33, 32.52802 + 33, 32, 32, 31, 31, 31, 31, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32.52803 + 32, 33, 32, 36, 40, 31, 34, 31, 27, 40, 38, 43, 32, 31, 82, 138, 32.52804 + 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52805 + 255, 255, 255, 255, 255, 201, 200, 233, 219, 171, 128, 70, 78, 75, 74, 59, 32.52806 + 48, 69, 71, 70, 69, 57, 149, 135, 110, 68, 74, 72, 58, 90, 74, 69, 32.52807 + 113, 78, 99, 102, 89, 96, 89, 82, 71, 77, 60, 79, 69, 84, 79, 57, 32.52808 + 55, 48, 44, 40, 37, 44, 59, 63, 62, 56, 46, 34, 25, 23, 25, 36, 32.52809 + 35, 37, 41, 40, 35, 34, 38, 33, 32, 32, 34, 36, 36, 33, 31, 33, 32.52810 + 33, 34, 35, 35, 36, 36, 36, 32, 32, 33, 34, 34, 33, 32, 32, 32, 32.52811 + 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 32, 29, 32.52812 + 44, 39, 28, 29, 34, 37, 32, 41, 33, 95, 176, 236, 200, 255, 255, 255, 32.52813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52814 + 255, 209, 213, 170, 172, 143, 108, 48, 56, 62, 72, 69, 65, 69, 77, 53, 32.52815 + 56, 51, 158, 158, 114, 89, 74, 54, 138, 66, 73, 67, 90, 86, 134, 84, 32.52816 + 112, 94, 88, 86, 73, 70, 59, 74, 74, 86, 85, 58, 52, 47, 44, 40, 32.52817 + 42, 50, 55, 69, 63, 52, 38, 27, 22, 25, 29, 34, 35, 37, 40, 37, 32.52818 + 32, 33, 36, 33, 34, 34, 36, 37, 37, 34, 33, 34, 34, 35, 35, 36, 32.52819 + 37, 37, 37, 32, 33, 34, 34, 34, 34, 33, 32, 34, 34, 33, 33, 32, 32.52820 + 32, 31, 31, 29, 29, 30, 31, 31, 32, 33, 32, 29, 31, 31, 34, 47, 32.52821 + 45, 38, 52, 63, 95, 155, 233, 240, 237, 255, 255, 255, 255, 255, 255, 255, 32.52822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 194, 182, 32.52823 + 179, 168, 116, 94, 72, 86, 88, 77, 70, 55, 57, 39, 47, 80, 170, 159, 32.52824 + 107, 106, 79, 128, 133, 87, 77, 79, 71, 103, 124, 72, 97, 83, 74, 103, 32.52825 + 94, 81, 75, 70, 69, 64, 60, 70, 56, 51, 45, 35, 43, 58, 59, 73, 32.52826 + 64, 48, 33, 23, 21, 27, 32, 39, 40, 43, 45, 41, 35, 35, 41, 39, 32.52827 + 38, 37, 39, 39, 37, 33, 30, 33, 33, 33, 33, 34, 34, 34, 34, 33, 32.52828 + 33, 34, 34, 34, 34, 33, 33, 35, 35, 34, 34, 33, 32, 32, 31, 29, 32.52829 + 29, 30, 31, 31, 32, 33, 32, 37, 26, 31, 38, 40, 26, 46, 127, 142, 32.52830 + 189, 213, 208, 220, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 233, 220, 208, 186, 150, 157, 32.52832 + 123, 105, 97, 82, 63, 47, 34, 50, 54, 133, 182, 163, 127, 93, 71, 152, 32.52833 + 53, 76, 56, 84, 79, 105, 114, 81, 86, 70, 65, 94, 92, 70, 77, 58, 32.52834 + 71, 57, 61, 68, 56, 56, 49, 34, 44, 64, 66, 71, 62, 48, 34, 25, 32.52835 + 23, 28, 32, 44, 46, 49, 50, 45, 40, 40, 45, 41, 40, 40, 41, 41, 32.52836 + 39, 35, 32, 34, 34, 34, 33, 33, 33, 33, 33, 33, 34, 34, 35, 35, 32.52837 + 34, 34, 33, 36, 36, 35, 34, 33, 32, 32, 31, 29, 29, 30, 31, 31, 32.52838 + 32, 33, 32, 37, 34, 41, 36, 36, 29, 52, 142, 143, 200, 217, 209, 229, 32.52839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52840 + 255, 255, 255, 255, 255, 255, 230, 234, 235, 202, 220, 233, 217, 144, 125, 85, 32.52841 + 57, 48, 25, 75, 65, 173, 184, 167, 160, 86, 59, 84, 80, 73, 101, 78, 32.52842 + 116, 84, 145, 81, 118, 59, 78, 101, 100, 65, 77, 44, 68, 49, 61, 52, 32.52843 + 47, 58, 55, 36, 45, 69, 70, 69, 62, 48, 36, 29, 25, 27, 30, 42, 32.52844 + 43, 47, 48, 42, 36, 36, 42, 37, 38, 38, 39, 42, 41, 39, 37, 36, 32.52845 + 36, 36, 35, 35, 34, 34, 33, 33, 34, 34, 35, 35, 34, 34, 33, 37, 32.52846 + 36, 35, 35, 34, 33, 32, 32, 29, 29, 30, 31, 31, 32, 33, 32, 30, 32.52847 + 37, 41, 34, 65, 76, 48, 69, 69, 103, 76, 208, 241, 255, 255, 255, 255, 32.52848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52849 + 255, 255, 226, 220, 225, 207, 203, 199, 187, 182, 163, 123, 59, 29, 59, 63, 32.52850 + 119, 214, 176, 149, 111, 72, 82, 64, 64, 60, 87, 62, 72, 89, 90, 126, 32.52851 + 161, 95, 124, 100, 81, 78, 78, 61, 47, 55, 65, 59, 47, 54, 55, 38, 32.52852 + 45, 67, 72, 61, 63, 54, 37, 24, 27, 33, 35, 39, 42, 45, 45, 44, 32.52853 + 42, 40, 41, 38, 36, 38, 42, 45, 41, 37, 38, 47, 45, 41, 38, 36, 32.52854 + 36, 37, 38, 34, 35, 34, 32, 28, 28, 31, 35, 32, 29, 30, 34, 34, 32.52855 + 31, 30, 33, 26, 29, 32, 32, 32, 32, 35, 37, 48, 48, 53, 60, 70, 32.52856 + 73, 66, 59, 65, 53, 82, 89, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.52857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 228, 32.52858 + 239, 180, 165, 217, 221, 190, 171, 117, 41, 41, 70, 70, 141, 198, 193, 156, 32.52859 + 120, 75, 78, 62, 66, 66, 89, 65, 65, 107, 98, 135, 134, 75, 82, 90, 32.52860 + 76, 80, 86, 72, 56, 56, 58, 61, 48, 49, 48, 33, 43, 73, 85, 64, 32.52861 + 59, 44, 29, 25, 32, 37, 37, 41, 43, 47, 47, 46, 44, 43, 44, 44, 32.52862 + 40, 41, 44, 46, 43, 43, 44, 45, 44, 40, 38, 36, 37, 39, 40, 36, 32.52863 + 38, 38, 35, 32, 32, 34, 36, 37, 34, 34, 37, 36, 32, 31, 33, 41, 32.52864 + 38, 34, 33, 36, 40, 43, 44, 55, 56, 56, 58, 65, 74, 74, 69, 61, 32.52865 + 75, 86, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 206, 184, 195, 221, 210, 32.52867 + 223, 229, 168, 129, 74, 104, 107, 87, 179, 186, 192, 146, 116, 76, 68, 58, 32.52868 + 65, 63, 72, 98, 74, 91, 84, 91, 104, 67, 83, 83, 70, 76, 85, 74, 32.52869 + 60, 56, 55, 59, 51, 52, 48, 36, 43, 69, 85, 71, 58, 38, 25, 27, 32.52870 + 38, 41, 38, 43, 46, 48, 49, 48, 45, 44, 45, 49, 44, 43, 46, 47, 32.52871 + 46, 46, 49, 44, 44, 41, 40, 39, 39, 40, 41, 41, 42, 42, 40, 37, 32.52872 + 35, 36, 38, 41, 38, 38, 40, 39, 34, 33, 35, 37, 33, 30, 34, 43, 32.52873 + 52, 57, 58, 53, 63, 67, 64, 71, 84, 87, 82, 70, 90, 82, 255, 255, 32.52874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52875 + 255, 255, 255, 255, 255, 255, 190, 186, 198, 204, 223, 219, 201, 204, 198, 118, 32.52876 + 125, 170, 146, 107, 206, 183, 166, 123, 104, 77, 65, 61, 67, 60, 54, 96, 32.52877 + 72, 64, 103, 66, 110, 59, 78, 85, 69, 68, 75, 65, 58, 57, 56, 55, 32.52878 + 56, 60, 58, 46, 43, 54, 66, 69, 56, 38, 28, 31, 39, 41, 38, 43, 32.52879 + 45, 48, 48, 47, 45, 43, 44, 47, 42, 42, 46, 48, 46, 45, 48, 44, 32.52880 + 44, 43, 42, 41, 42, 42, 42, 43, 44, 44, 43, 41, 39, 37, 37, 41, 32.52881 + 38, 39, 42, 41, 37, 36, 38, 28, 28, 30, 37, 46, 56, 64, 68, 58, 32.52882 + 75, 82, 76, 76, 83, 83, 73, 57, 59, 124, 255, 255, 255, 255, 255, 255, 32.52883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52884 + 255, 255, 213, 215, 207, 176, 166, 164, 169, 176, 157, 79, 139, 182, 173, 131, 32.52885 + 200, 180, 150, 114, 100, 82, 64, 67, 70, 66, 56, 100, 70, 54, 97, 60, 32.52886 + 107, 66, 75, 86, 72, 69, 72, 62, 58, 58, 57, 52, 58, 60, 58, 51, 32.52887 + 43, 44, 54, 54, 46, 36, 32, 33, 35, 39, 41, 44, 46, 48, 49, 48, 32.52888 + 45, 44, 45, 45, 41, 43, 49, 51, 47, 44, 44, 44, 45, 45, 45, 44, 32.52889 + 43, 42, 43, 43, 43, 42, 43, 42, 40, 38, 37, 38, 36, 37, 41, 42, 32.52890 + 39, 39, 41, 36, 38, 39, 39, 42, 53, 69, 81, 74, 87, 88, 76, 66, 32.52891 + 66, 62, 53, 59, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 232, 32.52893 + 219, 208, 194, 173, 200, 200, 110, 74, 141, 177, 195, 166, 185, 172, 150, 110, 32.52894 + 96, 80, 57, 63, 65, 71, 64, 104, 67, 64, 69, 65, 81, 73, 67, 77, 32.52895 + 70, 74, 79, 68, 61, 58, 54, 55, 60, 52, 49, 51, 45, 44, 57, 39, 32.52896 + 36, 35, 35, 35, 34, 39, 44, 46, 48, 51, 51, 50, 48, 47, 46, 46, 32.52897 + 44, 45, 52, 53, 50, 46, 46, 46, 47, 47, 48, 47, 45, 43, 42, 42, 32.52898 + 41, 40, 40, 40, 41, 40, 38, 37, 35, 37, 41, 43, 40, 40, 43, 42, 32.52899 + 43, 43, 41, 43, 57, 81, 100, 76, 77, 71, 60, 51, 53, 55, 56, 126, 32.52900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 176, 220, 188, 174, 211, 32.52902 + 198, 137, 90, 101, 152, 185, 194, 184, 183, 165, 145, 100, 86, 77, 53, 60, 32.52903 + 54, 65, 62, 69, 57, 75, 73, 80, 74, 64, 47, 67, 65, 74, 80, 68, 32.52904 + 61, 59, 54, 57, 61, 48, 44, 55, 50, 44, 59, 43, 38, 37, 39, 39, 32.52905 + 37, 40, 46, 46, 49, 51, 52, 50, 47, 46, 46, 49, 47, 46, 50, 52, 32.52906 + 49, 47, 49, 46, 48, 49, 50, 48, 45, 43, 41, 43, 40, 38, 38, 40, 32.52907 + 42, 42, 41, 41, 39, 40, 44, 44, 42, 41, 44, 40, 44, 47, 49, 51, 32.52908 + 60, 73, 84, 67, 60, 54, 53, 50, 49, 56, 129, 255, 255, 255, 255, 255, 32.52909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52910 + 255, 255, 255, 255, 255, 255, 255, 236, 205, 166, 180, 203, 189, 151, 102, 107, 32.52911 + 154, 190, 170, 177, 190, 160, 133, 92, 81, 79, 59, 66, 51, 60, 57, 61, 32.52912 + 64, 55, 57, 48, 69, 63, 69, 60, 59, 69, 71, 59, 55, 59, 56, 58, 32.52913 + 62, 49, 47, 61, 54, 42, 54, 57, 48, 43, 44, 43, 40, 41, 45, 43, 32.52914 + 46, 49, 49, 47, 45, 44, 43, 51, 46, 44, 46, 48, 46, 46, 50, 47, 32.52915 + 49, 50, 51, 48, 46, 42, 40, 44, 41, 36, 37, 40, 43, 44, 43, 44, 32.52916 + 42, 42, 45, 45, 42, 41, 43, 43, 48, 55, 59, 57, 51, 44, 40, 69, 32.52917 + 58, 55, 59, 56, 48, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52919 + 255, 255, 255, 255, 200, 178, 174, 185, 187, 140, 84, 109, 190, 168, 170, 200, 32.52920 + 171, 145, 127, 92, 72, 59, 65, 68, 61, 59, 66, 56, 61, 66, 66, 62, 32.52921 + 58, 57, 58, 60, 59, 61, 66, 69, 64, 54, 46, 53, 56, 54, 52, 54, 32.52922 + 57, 52, 46, 49, 52, 52, 48, 41, 39, 42, 45, 47, 49, 52, 52, 50, 32.52923 + 47, 46, 45, 50, 48, 45, 46, 47, 51, 55, 57, 48, 52, 52, 51, 48, 32.52924 + 44, 43, 44, 47, 51, 49, 45, 42, 42, 40, 36, 48, 44, 47, 47, 45, 32.52925 + 53, 53, 39, 60, 50, 44, 45, 45, 41, 41, 44, 52, 53, 52, 53, 53, 32.52926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52928 + 255, 224, 224, 211, 163, 126, 100, 136, 192, 180, 183, 193, 175, 158, 113, 82, 32.52929 + 89, 83, 65, 54, 58, 60, 58, 57, 62, 65, 67, 66, 65, 65, 64, 66, 32.52930 + 61, 56, 56, 59, 62, 61, 59, 55, 58, 55, 52, 54, 56, 53, 47, 49, 32.52931 + 54, 56, 53, 46, 43, 43, 44, 46, 46, 48, 47, 45, 44, 45, 47, 52, 32.52932 + 51, 48, 46, 47, 49, 50, 53, 51, 52, 50, 49, 47, 45, 46, 49, 46, 32.52933 + 47, 46, 42, 42, 45, 43, 40, 47, 41, 42, 45, 48, 60, 62, 49, 52, 32.52934 + 45, 41, 43, 45, 43, 42, 46, 46, 47, 47, 118, 255, 255, 255, 255, 255, 32.52935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 239, 32.52937 + 176, 142, 121, 158, 182, 175, 178, 174, 169, 167, 117, 76, 84, 80, 63, 54, 32.52938 + 60, 62, 57, 57, 58, 60, 63, 65, 65, 62, 60, 66, 60, 53, 51, 55, 32.52939 + 61, 64, 67, 57, 59, 55, 51, 51, 54, 53, 48, 48, 53, 56, 55, 49, 32.52940 + 45, 43, 43, 46, 46, 46, 45, 43, 44, 46, 49, 53, 52, 50, 48, 47, 32.52941 + 46, 46, 46, 52, 53, 51, 48, 46, 46, 49, 52, 47, 47, 44, 40, 43, 32.52942 + 46, 44, 40, 48, 41, 43, 47, 51, 63, 67, 56, 45, 41, 40, 43, 46, 32.52943 + 45, 45, 47, 42, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 207, 147, 134, 123, 171, 32.52946 + 172, 161, 176, 185, 173, 162, 128, 82, 68, 61, 68, 71, 67, 63, 65, 62, 32.52947 + 60, 59, 61, 63, 62, 57, 53, 59, 57, 55, 57, 60, 62, 61, 61, 57, 32.52948 + 58, 55, 50, 48, 51, 52, 48, 47, 51, 52, 51, 47, 43, 41, 41, 46, 32.52949 + 47, 48, 48, 47, 47, 50, 52, 52, 51, 50, 49, 48, 46, 45, 45, 48, 32.52950 + 51, 51, 49, 48, 47, 48, 51, 47, 48, 45, 44, 46, 49, 44, 38, 48, 32.52951 + 44, 48, 51, 48, 54, 58, 51, 41, 40, 41, 43, 45, 46, 46, 47, 43, 32.52952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52954 + 255, 255, 255, 255, 255, 255, 197, 206, 158, 152, 135, 152, 131, 104, 141, 190, 32.52955 + 171, 133, 117, 101, 91, 85, 86, 80, 71, 66, 66, 67, 64, 62, 63, 65, 32.52956 + 65, 60, 56, 57, 57, 57, 59, 60, 59, 56, 55, 55, 57, 54, 49, 47, 32.52957 + 49, 50, 48, 51, 52, 50, 48, 45, 43, 43, 45, 43, 46, 50, 52, 51, 32.52958 + 51, 50, 50, 49, 49, 48, 47, 47, 46, 45, 46, 44, 48, 50, 51, 50, 32.52959 + 47, 46, 46, 42, 46, 48, 49, 52, 55, 50, 42, 45, 45, 53, 55, 44, 32.52960 + 42, 48, 46, 42, 44, 45, 44, 44, 45, 45, 45, 255, 255, 255, 255, 255, 32.52961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52963 + 255, 255, 166, 182, 176, 179, 155, 146, 105, 71, 113, 185, 186, 155, 159, 125, 32.52964 + 145, 143, 110, 79, 72, 69, 59, 60, 59, 58, 60, 60, 62, 60, 58, 60, 32.52965 + 59, 55, 53, 51, 54, 55, 57, 52, 56, 55, 50, 48, 50, 51, 49, 55, 32.52966 + 53, 51, 48, 46, 47, 46, 47, 42, 45, 50, 52, 52, 50, 48, 48, 49, 32.52967 + 48, 46, 46, 45, 46, 47, 48, 43, 47, 51, 53, 51, 47, 45, 43, 38, 32.52968 + 45, 50, 53, 56, 59, 58, 54, 47, 44, 52, 55, 43, 38, 44, 45, 44, 32.52969 + 48, 47, 43, 41, 42, 44, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 209, 32.52972 + 191, 175, 149, 95, 73, 83, 121, 153, 163, 159, 166, 143, 169, 168, 127, 87, 32.52973 + 73, 68, 59, 55, 56, 58, 57, 55, 55, 55, 56, 58, 57, 53, 50, 48, 32.52974 + 50, 54, 56, 51, 57, 57, 54, 52, 52, 54, 52, 53, 52, 51, 50, 48, 32.52975 + 48, 45, 44, 46, 49, 51, 52, 51, 50, 50, 51, 51, 49, 46, 44, 44, 32.52976 + 44, 46, 48, 47, 50, 52, 53, 50, 46, 45, 46, 45, 53, 58, 55, 54, 32.52977 + 57, 61, 62, 60, 48, 49, 51, 43, 40, 45, 44, 44, 48, 47, 40, 37, 32.52978 + 40, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 196, 198, 156, 109, 84, 32.52981 + 108, 187, 221, 190, 178, 182, 172, 153, 156, 151, 132, 101, 75, 64, 65, 60, 32.52982 + 62, 64, 61, 57, 53, 55, 56, 52, 54, 54, 54, 53, 52, 53, 54, 50, 32.52983 + 58, 61, 57, 55, 55, 55, 55, 49, 49, 49, 50, 50, 47, 43, 39, 52, 32.52984 + 53, 54, 53, 51, 52, 54, 57, 54, 52, 47, 44, 43, 44, 45, 48, 51, 32.52985 + 53, 53, 51, 49, 46, 47, 47, 56, 62, 64, 57, 51, 54, 59, 63, 75, 32.52986 + 55, 47, 48, 44, 43, 46, 42, 42, 47, 45, 37, 33, 255, 255, 255, 255, 32.52987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52989 + 255, 255, 255, 255, 255, 255, 243, 203, 182, 134, 96, 85, 217, 216, 206, 186, 32.52990 + 188, 187, 173, 185, 173, 159, 123, 77, 64, 66, 49, 63, 60, 54, 50, 50, 32.52991 + 53, 55, 56, 47, 47, 48, 50, 50, 51, 51, 52, 55, 56, 55, 52, 52, 32.52992 + 52, 54, 57, 46, 51, 51, 48, 47, 51, 50, 45, 51, 43, 41, 50, 57, 32.52993 + 56, 51, 50, 54, 54, 50, 47, 49, 53, 50, 44, 53, 49, 51, 56, 49, 32.52994 + 37, 44, 60, 48, 59, 56, 57, 64, 53, 57, 89, 54, 47, 43, 44, 44, 32.52995 + 40, 36, 36, 48, 48, 47, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.52998 + 255, 255, 209, 191, 164, 100, 86, 207, 220, 166, 128, 160, 181, 206, 187, 157, 32.52999 + 149, 139, 109, 68, 62, 65, 54, 61, 58, 54, 52, 52, 54, 55, 56, 59, 32.53000 + 58, 56, 55, 54, 54, 54, 56, 55, 55, 55, 54, 53, 53, 54, 56, 46, 32.53001 + 51, 52, 48, 47, 51, 51, 46, 49, 43, 42, 50, 54, 53, 50, 50, 52, 32.53002 + 54, 54, 51, 51, 53, 51, 46, 50, 48, 49, 53, 47, 43, 48, 59, 54, 32.53003 + 44, 59, 65, 51, 70, 84, 52, 53, 46, 42, 44, 44, 40, 38, 38, 45, 32.53004 + 45, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 181, 32.53007 + 133, 100, 164, 197, 162, 109, 95, 139, 191, 180, 123, 153, 147, 135, 106, 71, 32.53008 + 62, 64, 57, 58, 57, 54, 53, 53, 55, 55, 55, 63, 59, 56, 52, 49, 32.53009 + 48, 49, 51, 54, 55, 55, 55, 55, 55, 54, 54, 48, 51, 51, 48, 49, 32.53010 + 51, 50, 46, 46, 43, 45, 49, 50, 49, 49, 51, 50, 55, 57, 54, 52, 32.53011 + 52, 50, 48, 49, 49, 49, 48, 47, 49, 54, 59, 51, 56, 51, 54, 73, 32.53012 + 81, 63, 41, 50, 44, 42, 44, 44, 41, 40, 42, 43, 114, 255, 255, 255, 32.53013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 162, 121, 105, 174, 162, 32.53016 + 128, 66, 57, 59, 185, 192, 152, 160, 153, 135, 106, 78, 67, 65, 62, 56, 32.53017 + 55, 54, 54, 55, 55, 54, 52, 58, 56, 54, 52, 48, 46, 44, 45, 54, 32.53018 + 54, 54, 55, 57, 56, 54, 51, 50, 51, 50, 48, 48, 49, 48, 48, 45, 32.53019 + 47, 49, 51, 49, 47, 50, 53, 51, 57, 58, 52, 49, 50, 51, 52, 49, 32.53020 + 53, 52, 48, 49, 56, 58, 57, 55, 62, 50, 59, 84, 64, 38, 49, 47, 32.53021 + 43, 42, 44, 45, 42, 42, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53024 + 255, 255, 255, 255, 255, 255, 234, 155, 114, 137, 184, 109, 94, 85, 93, 73, 32.53025 + 175, 199, 174, 149, 141, 119, 94, 78, 70, 68, 69, 56, 54, 53, 54, 55, 32.53026 + 55, 52, 50, 55, 57, 59, 59, 57, 53, 49, 47, 55, 54, 53, 55, 58, 32.53027 + 57, 54, 51, 52, 51, 49, 49, 48, 48, 48, 48, 47, 50, 52, 51, 49, 32.53028 + 49, 53, 55, 54, 57, 56, 50, 46, 48, 54, 55, 52, 57, 58, 55, 55, 32.53029 + 59, 60, 57, 67, 48, 66, 79, 51, 40, 51, 43, 45, 42, 42, 45, 45, 32.53030 + 43, 44, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53033 + 255, 255, 210, 156, 128, 131, 97, 118, 63, 66, 55, 57, 97, 192, 200, 145, 32.53034 + 133, 101, 78, 75, 70, 64, 68, 58, 55, 53, 53, 54, 53, 51, 49, 52, 32.53035 + 55, 59, 62, 61, 57, 52, 49, 56, 54, 52, 54, 57, 56, 54, 51, 54, 32.53036 + 50, 49, 49, 48, 45, 47, 49, 48, 52, 54, 51, 48, 51, 55, 55, 54, 32.53037 + 56, 54, 48, 46, 49, 52, 54, 53, 57, 61, 63, 62, 60, 60, 60, 59, 32.53038 + 70, 75, 59, 38, 39, 49, 45, 44, 42, 43, 46, 45, 43, 255, 255, 255, 32.53039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 167, 32.53042 + 96, 100, 86, 93, 35, 36, 27, 39, 44, 165, 180, 150, 131, 91, 67, 72, 32.53043 + 69, 59, 63, 60, 57, 54, 52, 52, 52, 49, 48, 50, 53, 56, 59, 59, 32.53044 + 56, 52, 49, 59, 55, 52, 53, 55, 58, 55, 52, 55, 50, 48, 49, 48, 32.53045 + 44, 45, 50, 49, 52, 51, 47, 47, 52, 55, 53, 52, 53, 53, 50, 49, 32.53046 + 53, 50, 48, 50, 53, 61, 70, 67, 59, 58, 65, 61, 83, 60, 35, 49, 32.53047 + 49, 37, 51, 43, 42, 44, 46, 115, 255, 255, 255, 255, 255, 255, 255, 255, 32.53048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 211, 99, 83, 92, 54, 32.53051 + 39, 37, 49, 45, 55, 160, 163, 144, 123, 78, 57, 70, 70, 59, 65, 62, 32.53052 + 58, 54, 51, 51, 51, 49, 47, 54, 56, 58, 58, 58, 56, 53, 52, 60, 32.53053 + 56, 51, 51, 55, 57, 56, 52, 56, 50, 48, 50, 48, 44, 45, 49, 48, 32.53054 + 51, 50, 45, 45, 53, 54, 51, 49, 52, 52, 52, 54, 55, 50, 42, 45, 32.53055 + 48, 60, 74, 70, 57, 57, 70, 89, 52, 42, 50, 46, 48, 53, 43, 44, 32.53056 + 43, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53059 + 255, 255, 255, 255, 255, 255, 235, 237, 136, 96, 91, 69, 47, 79, 67, 122, 32.53060 + 64, 154, 195, 134, 110, 87, 74, 69, 63, 57, 55, 64, 61, 57, 56, 54, 32.53061 + 50, 45, 40, 49, 52, 58, 62, 64, 62, 58, 56, 57, 53, 53, 57, 58, 32.53062 + 54, 57, 62, 58, 56, 53, 51, 49, 49, 49, 48, 49, 49, 50, 50, 50, 32.53063 + 52, 52, 53, 57, 54, 54, 58, 55, 47, 43, 46, 59, 45, 48, 64, 67, 32.53064 + 72, 82, 86, 54, 52, 50, 48, 49, 48, 48, 47, 44, 42, 114, 255, 255, 32.53065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53068 + 255, 255, 250, 251, 193, 163, 133, 93, 100, 124, 158, 180, 106, 183, 176, 138, 32.53069 + 106, 74, 59, 58, 61, 63, 63, 60, 59, 59, 59, 60, 58, 55, 50, 49, 32.53070 + 51, 56, 60, 62, 60, 57, 57, 55, 52, 52, 56, 56, 53, 54, 58, 60, 32.53071 + 58, 54, 51, 50, 49, 48, 48, 51, 50, 51, 51, 52, 53, 53, 54, 59, 32.53072 + 56, 55, 56, 52, 45, 40, 41, 49, 41, 43, 53, 63, 79, 87, 77, 53, 32.53073 + 50, 48, 45, 45, 46, 47, 47, 116, 255, 255, 255, 255, 255, 255, 255, 255, 32.53074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 237, 32.53077 + 237, 248, 231, 218, 204, 205, 223, 201, 159, 199, 199, 157, 119, 76, 58, 58, 32.53078 + 62, 60, 58, 56, 56, 57, 59, 60, 58, 54, 51, 50, 50, 53, 55, 57, 32.53079 + 57, 57, 56, 53, 52, 52, 55, 55, 52, 51, 53, 57, 56, 55, 53, 53, 32.53080 + 52, 52, 52, 52, 51, 52, 53, 54, 54, 55, 55, 55, 53, 52, 54, 50, 32.53081 + 43, 41, 41, 50, 46, 44, 47, 56, 77, 75, 53, 51, 49, 47, 44, 44, 32.53082 + 45, 49, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 208, 194, 230, 32.53086 + 212, 242, 241, 216, 217, 164, 197, 160, 121, 80, 63, 65, 65, 59, 51, 60, 32.53087 + 60, 60, 60, 57, 54, 50, 48, 49, 50, 51, 51, 53, 55, 56, 57, 53, 32.53088 + 53, 53, 54, 54, 52, 50, 50, 51, 51, 52, 54, 56, 57, 59, 59, 54, 32.53089 + 54, 54, 55, 56, 57, 58, 59, 51, 52, 52, 52, 50, 47, 46, 47, 51, 32.53090 + 46, 47, 50, 54, 65, 63, 45, 46, 48, 49, 49, 48, 47, 118, 255, 255, 32.53091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 228, 32.53095 + 231, 139, 175, 146, 110, 72, 59, 64, 67, 64, 57, 65, 65, 66, 63, 59, 32.53096 + 56, 53, 52, 50, 50, 50, 50, 51, 54, 56, 58, 54, 54, 54, 53, 52, 32.53097 + 52, 52, 51, 49, 50, 51, 54, 56, 58, 59, 60, 55, 55, 56, 57, 58, 32.53098 + 59, 59, 61, 52, 54, 54, 52, 51, 51, 49, 48, 45, 38, 45, 58, 55, 32.53099 + 54, 57, 55, 39, 45, 49, 52, 50, 117, 255, 255, 255, 255, 255, 255, 255, 32.53100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 208, 170, 174, 143, 32.53104 + 111, 75, 60, 61, 65, 67, 67, 63, 62, 62, 60, 57, 54, 55, 56, 52, 32.53105 + 51, 50, 51, 52, 55, 58, 58, 54, 55, 54, 51, 51, 54, 55, 53, 53, 32.53106 + 54, 54, 55, 55, 55, 55, 55, 56, 56, 57, 58, 58, 59, 60, 61, 58, 32.53107 + 61, 58, 53, 51, 51, 47, 44, 48, 41, 52, 65, 53, 44, 49, 56, 36, 32.53108 + 42, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53112 + 255, 255, 255, 255, 255, 255, 255, 245, 204, 198, 156, 136, 112, 85, 70, 66, 32.53113 + 65, 68, 69, 60, 59, 57, 54, 51, 51, 54, 58, 52, 52, 52, 52, 54, 32.53114 + 56, 58, 60, 54, 56, 54, 49, 48, 54, 57, 55, 54, 55, 54, 55, 55, 32.53115 + 54, 52, 52, 55, 56, 56, 58, 58, 59, 60, 61, 60, 63, 60, 53, 49, 32.53116 + 51, 49, 44, 51, 51, 62, 63, 47, 42, 46, 48, 255, 255, 255, 255, 255, 32.53117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53121 + 255, 255, 255, 255, 205, 196, 140, 109, 96, 82, 75, 71, 66, 66, 68, 65, 32.53122 + 64, 60, 55, 51, 52, 56, 61, 53, 52, 53, 54, 55, 57, 59, 60, 53, 32.53123 + 57, 53, 46, 47, 55, 58, 57, 51, 52, 54, 55, 55, 54, 54, 54, 56, 32.53124 + 56, 56, 58, 58, 59, 60, 61, 57, 60, 58, 51, 49, 51, 51, 46, 41, 32.53125 + 51, 60, 55, 44, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53130 + 220, 206, 125, 125, 102, 80, 73, 69, 62, 59, 63, 66, 67, 64, 60, 54, 32.53131 + 50, 48, 47, 49, 51, 51, 52, 54, 55, 56, 57, 55, 53, 50, 48, 47, 32.53132 + 49, 51, 52, 53, 55, 60, 60, 54, 48, 52, 61, 56, 55, 53, 54, 57, 32.53133 + 63, 66, 67, 58, 56, 52, 53, 54, 53, 49, 45, 40, 51, 69, 48, 120, 32.53134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 215, 209, 151, 32.53139 + 119, 87, 74, 72, 67, 63, 65, 60, 63, 61, 58, 54, 48, 45, 44, 48, 32.53140 + 49, 50, 51, 53, 54, 55, 56, 54, 53, 50, 49, 48, 49, 51, 53, 52, 32.53141 + 53, 55, 57, 53, 48, 51, 57, 56, 53, 55, 59, 58, 55, 59, 68, 48, 32.53142 + 47, 47, 47, 46, 46, 44, 42, 50, 120, 255, 255, 255, 255, 255, 255, 255, 32.53143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53147 + 255, 255, 255, 255, 255, 255, 255, 255, 201, 193, 220, 153, 121, 87, 75, 72, 32.53148 + 66, 60, 61, 61, 62, 60, 57, 55, 50, 47, 45, 47, 48, 49, 50, 52, 32.53149 + 53, 55, 56, 53, 52, 50, 49, 49, 51, 53, 54, 56, 55, 56, 59, 57, 32.53150 + 53, 55, 60, 56, 53, 57, 62, 58, 51, 55, 67, 44, 46, 47, 46, 46, 32.53151 + 45, 47, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53156 + 255, 255, 255, 255, 228, 199, 209, 122, 103, 89, 86, 82, 71, 62, 61, 67, 32.53157 + 65, 61, 57, 55, 54, 52, 51, 47, 47, 49, 50, 51, 52, 54, 55, 52, 32.53158 + 52, 49, 48, 49, 51, 54, 55, 58, 54, 55, 58, 58, 56, 55, 58, 53, 32.53159 + 56, 59, 59, 60, 62, 61, 61, 44, 48, 49, 48, 46, 46, 119, 255, 255, 32.53160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53165 + 229, 209, 218, 84, 82, 88, 97, 96, 83, 72, 74, 73, 68, 60, 55, 54, 32.53166 + 55, 56, 56, 49, 49, 50, 50, 51, 52, 52, 53, 53, 52, 50, 49, 50, 32.53167 + 52, 53, 55, 52, 48, 49, 52, 53, 50, 51, 54, 51, 59, 59, 54, 62, 32.53168 + 78, 71, 53, 42, 44, 45, 43, 41, 114, 255, 255, 255, 255, 255, 255, 255, 32.53169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 216, 81, 32.53174 + 73, 73, 85, 90, 83, 73, 72, 75, 69, 60, 54, 53, 55, 55, 55, 52, 32.53175 + 52, 51, 51, 52, 52, 51, 51, 54, 53, 51, 50, 50, 51, 53, 55, 51, 32.53176 + 49, 51, 54, 52, 49, 50, 55, 53, 59, 57, 55, 68, 83, 74, 50, 47, 32.53177 + 46, 44, 42, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 211, 147, 107, 71, 68, 79, 32.53183 + 82, 73, 66, 77, 71, 63, 59, 59, 58, 56, 52, 55, 54, 54, 53, 52, 32.53184 + 52, 51, 50, 55, 54, 51, 50, 50, 51, 53, 54, 51, 52, 56, 58, 54, 32.53185 + 50, 54, 61, 58, 53, 53, 64, 74, 74, 65, 55, 56, 52, 47, 114, 255, 32.53186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53191 + 255, 255, 255, 255, 255, 240, 182, 234, 163, 90, 68, 84, 95, 84, 71, 78, 32.53192 + 73, 66, 65, 65, 63, 56, 51, 57, 57, 56, 54, 53, 51, 51, 50, 56, 32.53193 + 55, 52, 50, 49, 50, 52, 53, 47, 50, 55, 57, 52, 47, 51, 59, 63, 32.53194 + 48, 52, 74, 79, 64, 54, 60, 60, 54, 116, 255, 255, 255, 255, 255, 255, 32.53195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53200 + 255, 255, 255, 197, 208, 213, 195, 227, 209, 149, 72, 61, 70, 48, 65, 66, 32.53201 + 76, 67, 66, 58, 58, 57, 57, 56, 55, 54, 53, 60, 57, 51, 46, 45, 32.53202 + 47, 51, 54, 56, 55, 53, 52, 55, 59, 58, 55, 57, 61, 71, 80, 75, 32.53203 + 63, 60, 65, 59, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53209 + 255, 255, 255, 218, 223, 209, 174, 74, 62, 61, 70, 59, 60, 59, 71, 59, 32.53210 + 60, 58, 58, 56, 55, 53, 53, 54, 54, 52, 51, 51, 52, 53, 54, 55, 32.53211 + 53, 50, 48, 50, 53, 54, 54, 54, 69, 76, 67, 59, 60, 62, 60, 61, 32.53212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53218 + 242, 220, 214, 128, 59, 66, 66, 59, 55, 56, 71, 63, 62, 61, 59, 57, 32.53219 + 55, 52, 52, 50, 51, 52, 53, 53, 52, 49, 49, 57, 55, 52, 50, 50, 32.53220 + 51, 53, 56, 56, 80, 81, 58, 45, 57, 64, 55, 255, 255, 255, 255, 255, 32.53221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 200, 196, 32.53227 + 63, 57, 55, 64, 65, 62, 62, 64, 64, 62, 60, 57, 55, 52, 52, 51, 32.53228 + 53, 53, 53, 51, 48, 45, 43, 54, 53, 53, 54, 51, 49, 51, 55, 71, 32.53229 + 84, 79, 56, 46, 56, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 212, 220, 64, 48, 52, 67, 32.53236 + 71, 63, 53, 64, 64, 61, 60, 56, 54, 52, 52, 53, 53, 52, 51, 50, 32.53237 + 49, 47, 47, 43, 44, 47, 51, 47, 42, 45, 54, 87, 78, 65, 58, 55, 32.53238 + 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53244 + 255, 255, 255, 255, 255, 255, 214, 200, 70, 49, 64, 64, 67, 63, 52, 63, 32.53245 + 62, 61, 58, 56, 54, 52, 51, 52, 52, 52, 52, 53, 55, 56, 58, 43, 32.53246 + 43, 47, 52, 48, 43, 50, 63, 91, 67, 51, 58, 125, 255, 255, 255, 255, 32.53247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53253 + 255, 255, 204, 193, 95, 53, 72, 62, 71, 71, 57, 62, 60, 59, 57, 56, 32.53254 + 54, 52, 52, 48, 49, 49, 51, 53, 55, 57, 58, 48, 46, 48, 51, 48, 32.53255 + 46, 60, 80, 86, 61, 46, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 211, 32.53262 + 123, 54, 72, 63, 79, 81, 62, 59, 58, 57, 56, 54, 54, 52, 52, 45, 32.53263 + 47, 49, 50, 51, 51, 51, 50, 48, 44, 44, 46, 43, 44, 63, 87, 80, 32.53264 + 62, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 210, 57, 84, 89, 32.53271 + 56, 73, 61, 51, 66, 55, 60, 55, 44, 58, 49, 54, 51, 58, 51, 38, 32.53272 + 51, 65, 50, 47, 58, 54, 36, 42, 65, 73, 63, 65, 58, 123, 255, 255, 32.53273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53279 + 255, 255, 255, 255, 255, 255, 255, 200, 236, 102, 81, 66, 74, 64, 74, 63, 32.53280 + 66, 52, 62, 60, 46, 53, 48, 57, 42, 51, 67, 59, 53, 56, 51, 53, 32.53281 + 36, 48, 77, 49, 56, 62, 61, 43, 122, 255, 255, 255, 255, 255, 255, 255, 32.53282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53288 + 255, 255, 255, 211, 183, 233, 108, 65, 100, 75, 66, 74, 66, 51, 61, 63, 32.53289 + 52, 57, 57, 60, 42, 43, 55, 53, 49, 53, 52, 50, 43, 53, 58, 57, 32.53290 + 66, 72, 56, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53297 + 206, 212, 218, 119, 81, 90, 72, 73, 68, 56, 54, 53, 51, 55, 54, 58, 32.53298 + 63, 61, 53, 51, 60, 62, 51, 65, 65, 59, 24, 69, 58, 56, 111, 255, 32.53299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 194, 203, 235, 32.53306 + 73, 74, 97, 74, 80, 80, 66, 58, 63, 58, 53, 51, 68, 70, 60, 57, 32.53307 + 60, 58, 53, 55, 45, 60, 76, 79, 56, 50, 255, 255, 255, 255, 255, 255, 32.53308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 194, 213, 191, 76, 87, 61, 32.53315 + 67, 78, 65, 59, 66, 57, 58, 67, 68, 62, 61, 62, 55, 63, 89, 64, 32.53316 + 83, 118, 154, 62, 73, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53323 + 255, 255, 255, 255, 255, 255, 233, 215, 203, 188, 93, 98, 76, 77, 66, 62, 32.53324 + 64, 57, 78, 65, 67, 59, 62, 72, 71, 80, 111, 141, 188, 185, 138, 57, 32.53325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53332 + 255, 255, 255, 255, 255, 190, 201, 210, 154, 131, 115, 104, 96, 92, 131, 137, 32.53333 + 168, 177, 180, 202, 209, 198, 199, 183, 221, 166, 56, 255, 255, 255, 255, 255, 32.53334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.53342 + 45, 37, 224, 49, 57, 97, 58, 60, 50, 45, 77, 70, 244, 112, 255, 255, 32.53343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53350 + 186, 67, 51, 57, 51, 56, 60, 57, 68, 56, 51, 40, 56, 65, 139, 42, 32.53351 + 54, 78, 71, 111, 61, 43, 92, 116, 156, 69, 142, 238, 229, 250, 255, 255, 32.53352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 93, 118, 105, 87, 60, 77, 32.53359 + 58, 49, 84, 55, 56, 46, 67, 73, 62, 65, 81, 74, 60, 54, 119, 53, 32.53360 + 115, 132, 118, 90, 95, 131, 140, 175, 159, 211, 204, 228, 233, 221, 226, 255, 32.53361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53367 + 255, 255, 186, 55, 24, 131, 164, 113, 71, 70, 46, 38, 88, 96, 41, 56, 32.53368 + 46, 63, 102, 68, 39, 107, 123, 124, 104, 52, 183, 117, 138, 131, 165, 156, 32.53369 + 130, 100, 90, 164, 221, 224, 230, 227, 230, 229, 237, 248, 199, 190, 255, 255, 32.53370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 81, 67, 39, 32.53376 + 149, 129, 139, 103, 81, 90, 112, 100, 64, 65, 136, 92, 72, 87, 142, 143, 32.53377 + 170, 226, 147, 162, 162, 134, 165, 143, 146, 180, 148, 177, 196, 163, 144, 150, 32.53378 + 161, 164, 199, 171, 198, 222, 211, 202, 188, 153, 144, 97, 70, 125, 255, 255, 32.53379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53384 + 255, 255, 255, 255, 255, 255, 255, 156, 134, 131, 156, 160, 150, 184, 184, 128, 32.53385 + 190, 177, 121, 117, 148, 145, 183, 149, 214, 190, 185, 185, 166, 170, 163, 185, 32.53386 + 136, 129, 180, 145, 132, 190, 172, 132, 128, 145, 172, 166, 129, 173, 179, 188, 32.53387 + 189, 208, 191, 168, 173, 171, 167, 102, 52, 68, 59, 128, 255, 255, 255, 255, 32.53388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53393 + 255, 255, 170, 135, 164, 191, 160, 114, 156, 154, 194, 196, 133, 127, 131, 110, 32.53394 + 196, 219, 159, 171, 210, 139, 139, 167, 154, 141, 200, 119, 188, 154, 165, 176, 32.53395 + 182, 147, 142, 165, 124, 132, 155, 143, 111, 179, 175, 187, 150, 146, 153, 155, 32.53396 + 139, 104, 94, 85, 93, 94, 41, 43, 76, 76, 255, 255, 255, 255, 255, 255, 32.53397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 107, 172, 142, 32.53402 + 170, 214, 200, 207, 174, 169, 168, 163, 175, 152, 146, 152, 167, 150, 196, 186, 32.53403 + 160, 151, 193, 144, 160, 165, 146, 184, 203, 202, 177, 189, 157, 141, 107, 125, 32.53404 + 113, 105, 128, 120, 109, 128, 114, 137, 153, 162, 144, 138, 127, 100, 105, 80, 32.53405 + 102, 87, 67, 57, 57, 55, 19, 92, 255, 255, 255, 255, 255, 255, 255, 255, 32.53406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53410 + 255, 255, 255, 255, 255, 255, 255, 222, 115, 182, 83, 115, 160, 227, 220, 198, 32.53411 + 176, 166, 203, 157, 167, 143, 181, 177, 155, 162, 198, 208, 132, 171, 105, 134, 32.53412 + 191, 146, 193, 206, 170, 138, 158, 181, 169, 138, 165, 132, 106, 178, 119, 76, 32.53413 + 111, 102, 74, 131, 154, 110, 76, 142, 75, 80, 128, 101, 65, 186, 50, 48, 32.53414 + 65, 54, 57, 66, 81, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53419 + 255, 255, 118, 126, 195, 169, 103, 209, 190, 230, 208, 207, 194, 229, 174, 164, 32.53420 + 175, 181, 203, 192, 152, 186, 228, 158, 182, 153, 154, 120, 140, 216, 185, 150, 32.53421 + 168, 121, 152, 166, 135, 169, 196, 170, 128, 157, 117, 87, 81, 60, 91, 122, 32.53422 + 109, 97, 84, 83, 77, 106, 76, 82, 96, 115, 79, 112, 49, 47, 42, 39, 32.53423 + 63, 45, 78, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 92, 94, 126, 32.53428 + 127, 204, 214, 201, 231, 197, 232, 199, 209, 196, 177, 168, 195, 215, 197, 210, 32.53429 + 208, 218, 169, 179, 163, 164, 72, 189, 206, 141, 148, 144, 136, 112, 118, 132, 32.53430 + 131, 78, 95, 156, 158, 114, 88, 101, 87, 88, 93, 80, 84, 77, 73, 49, 32.53431 + 60, 72, 46, 110, 53, 78, 113, 82, 39, 56, 50, 55, 53, 63, 61, 59, 32.53432 + 48, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53436 + 255, 255, 255, 255, 255, 255, 215, 122, 91, 135, 163, 185, 152, 164, 169, 185, 32.53437 + 210, 210, 231, 222, 179, 172, 193, 219, 211, 219, 205, 190, 182, 206, 196, 226, 32.53438 + 122, 133, 237, 174, 154, 183, 145, 143, 128, 169, 100, 139, 123, 115, 152, 107, 32.53439 + 141, 108, 68, 99, 93, 109, 77, 64, 81, 84, 81, 49, 35, 38, 50, 118, 32.53440 + 71, 54, 88, 83, 63, 41, 85, 54, 57, 39, 71, 24, 73, 68, 55, 113, 32.53441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53445 + 255, 138, 114, 103, 74, 108, 151, 223, 173, 205, 201, 226, 192, 224, 241, 204, 32.53446 + 199, 201, 204, 196, 225, 222, 181, 156, 211, 207, 154, 196, 138, 184, 191, 170, 32.53447 + 194, 177, 196, 186, 205, 134, 162, 134, 151, 121, 105, 113, 98, 173, 98, 114, 32.53448 + 117, 91, 76, 91, 77, 103, 87, 42, 29, 52, 48, 82, 75, 29, 76, 79, 32.53449 + 67, 63, 57, 56, 44, 76, 61, 62, 66, 84, 49, 71, 21, 255, 255, 255, 32.53450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 225, 184, 106, 59, 32.53454 + 161, 112, 202, 214, 166, 172, 192, 201, 204, 218, 228, 182, 227, 199, 214, 204, 32.53455 + 191, 192, 221, 221, 236, 188, 161, 151, 195, 226, 120, 165, 161, 224, 210, 166, 32.53456 + 154, 178, 140, 181, 121, 154, 91, 91, 122, 127, 129, 153, 114, 157, 38, 85, 32.53457 + 85, 85, 44, 38, 41, 39, 38, 59, 42, 73, 81, 39, 66, 81, 67, 64, 32.53458 + 72, 68, 89, 47, 90, 62, 58, 57, 65, 60, 114, 255, 255, 255, 255, 255, 32.53459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53462 + 255, 255, 255, 255, 255, 255, 255, 100, 152, 168, 184, 81, 63, 148, 201, 144, 32.53463 + 235, 137, 206, 163, 195, 227, 181, 210, 183, 195, 201, 204, 219, 228, 207, 207, 32.53464 + 231, 219, 223, 227, 205, 158, 192, 187, 201, 190, 205, 182, 124, 119, 96, 105, 32.53465 + 108, 127, 74, 84, 66, 109, 104, 127, 150, 106, 47, 54, 70, 58, 38, 42, 32.53466 + 50, 15, 38, 51, 64, 103, 54, 70, 84, 68, 120, 76, 63, 70, 52, 52, 32.53467 + 61, 49, 45, 44, 93, 91, 77, 126, 255, 255, 255, 255, 255, 255, 255, 255, 32.53468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53471 + 255, 255, 233, 104, 155, 133, 76, 116, 143, 159, 191, 204, 130, 144, 175, 197, 32.53472 + 195, 199, 210, 184, 169, 202, 181, 204, 179, 184, 171, 205, 196, 185, 208, 204, 32.53473 + 188, 230, 231, 156, 212, 135, 204, 163, 197, 133, 188, 65, 77, 144, 120, 93, 32.53474 + 117, 67, 165, 148, 74, 105, 86, 57, 32, 63, 107, 40, 55, 35, 44, 52, 32.53475 + 36, 44, 55, 83, 60, 107, 62, 79, 72, 66, 65, 58, 76, 38, 46, 20, 32.53476 + 52, 34, 21, 42, 47, 29, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 156, 123, 119, 32.53480 + 150, 127, 77, 188, 136, 154, 200, 186, 180, 157, 193, 186, 203, 168, 179, 198, 32.53481 + 178, 172, 184, 182, 197, 167, 169, 191, 191, 167, 211, 210, 201, 194, 168, 190, 32.53482 + 128, 170, 111, 224, 99, 117, 152, 62, 119, 112, 105, 145, 115, 128, 130, 107, 32.53483 + 90, 69, 70, 44, 52, 46, 61, 46, 54, 38, 42, 43, 37, 49, 65, 71, 32.53484 + 78, 92, 95, 85, 59, 63, 76, 70, 63, 57, 38, 31, 57, 39, 29, 43, 32.53485 + 40, 41, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53488 + 255, 255, 255, 255, 255, 255, 255, 187, 134, 165, 73, 134, 157, 192, 200, 184, 32.53489 + 196, 164, 198, 179, 190, 176, 186, 188, 175, 195, 217, 174, 164, 195, 162, 172, 32.53490 + 167, 200, 129, 163, 150, 176, 152, 151, 175, 136, 137, 151, 132, 215, 122, 203, 32.53491 + 194, 78, 196, 81, 75, 163, 168, 144, 117, 87, 133, 82, 55, 71, 36, 43, 32.53492 + 45, 51, 50, 52, 45, 44, 41, 41, 34, 40, 49, 46, 48, 54, 54, 44, 32.53493 + 29, 44, 66, 60, 56, 66, 69, 45, 51, 29, 39, 40, 39, 66, 48, 69, 32.53494 + 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53497 + 255, 255, 186, 92, 180, 155, 148, 153, 193, 214, 215, 179, 194, 131, 213, 193, 32.53498 + 163, 158, 187, 198, 159, 170, 172, 141, 180, 231, 169, 177, 152, 219, 185, 225, 32.53499 + 151, 155, 154, 172, 134, 117, 121, 104, 121, 139, 116, 201, 176, 131, 173, 91, 32.53500 + 33, 162, 136, 140, 83, 117, 135, 55, 71, 39, 39, 42, 36, 49, 37, 54, 32.53501 + 39, 49, 43, 56, 49, 53, 56, 48, 46, 48, 44, 45, 33, 46, 66, 59, 32.53502 + 48, 51, 56, 45, 31, 18, 46, 40, 40, 77, 50, 59, 51, 50, 255, 255, 32.53503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 83, 56, 32.53506 + 207, 161, 202, 238, 139, 212, 220, 182, 204, 149, 186, 171, 173, 183, 172, 172, 32.53507 + 200, 208, 162, 141, 153, 183, 168, 153, 199, 157, 178, 149, 178, 98, 150, 132, 32.53508 + 73, 71, 96, 86, 123, 93, 158, 169, 182, 157, 137, 142, 132, 144, 155, 91, 32.53509 + 107, 131, 146, 67, 41, 52, 36, 37, 35, 43, 36, 47, 41, 49, 47, 51, 32.53510 + 45, 50, 53, 47, 48, 51, 45, 36, 34, 45, 65, 78, 79, 72, 60, 51, 32.53511 + 32, 36, 59, 60, 62, 76, 72, 55, 54, 50, 38, 122, 255, 255, 255, 255, 32.53512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53514 + 255, 255, 255, 255, 255, 255, 255, 255, 189, 43, 165, 188, 144, 217, 224, 208, 32.53515 + 208, 179, 176, 212, 181, 162, 152, 146, 166, 185, 170, 192, 160, 152, 161, 205, 32.53516 + 180, 186, 224, 183, 178, 160, 125, 155, 113, 98, 112, 123, 117, 52, 73, 67, 32.53517 + 75, 59, 126, 155, 135, 117, 94, 111, 77, 115, 46, 51, 104, 135, 104, 69, 32.53518 + 27, 42, 30, 36, 39, 34, 42, 36, 46, 43, 49, 40, 39, 45, 48, 44, 32.53519 + 49, 54, 48, 35, 49, 56, 62, 81, 96, 90, 74, 53, 39, 50, 48, 61, 32.53520 + 63, 45, 81, 58, 53, 34, 38, 40, 122, 255, 255, 255, 255, 255, 255, 255, 32.53521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53523 + 255, 218, 97, 95, 79, 106, 195, 147, 176, 170, 216, 166, 181, 185, 195, 204, 32.53524 + 139, 157, 154, 165, 160, 158, 176, 186, 193, 218, 161, 159, 184, 224, 213, 202, 32.53525 + 158, 132, 179, 138, 113, 122, 99, 118, 90, 49, 59, 70, 73, 53, 154, 117, 32.53526 + 121, 121, 76, 179, 83, 103, 76, 36, 59, 107, 40, 55, 50, 32, 40, 35, 32.53527 + 41, 31, 44, 31, 47, 39, 47, 44, 41, 45, 45, 41, 47, 53, 46, 46, 32.53528 + 69, 70, 57, 62, 72, 75, 75, 64, 55, 55, 41, 56, 53, 31, 72, 38, 32.53529 + 42, 34, 57, 50, 66, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 52, 72, 174, 32.53532 + 143, 216, 186, 237, 192, 210, 224, 192, 176, 215, 166, 168, 174, 183, 150, 175, 32.53533 + 191, 157, 172, 191, 117, 169, 200, 211, 175, 188, 192, 148, 139, 119, 104, 87, 32.53534 + 97, 173, 64, 126, 54, 71, 63, 72, 77, 50, 143, 87, 80, 91, 93, 78, 32.53535 + 70, 27, 30, 26, 52, 37, 32, 51, 30, 68, 36, 35, 35, 33, 37, 36, 32.53536 + 39, 39, 41, 39, 36, 39, 37, 32, 41, 49, 41, 36, 53, 55, 56, 67, 32.53537 + 69, 72, 86, 79, 83, 67, 74, 76, 61, 66, 64, 40, 34, 26, 26, 19, 32.53538 + 33, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53540 + 255, 255, 255, 255, 255, 255, 255, 60, 55, 64, 95, 142, 137, 226, 229, 221, 32.53541 + 194, 188, 224, 168, 163, 163, 193, 184, 195, 159, 146, 172, 157, 111, 187, 165, 32.53542 + 147, 189, 154, 163, 155, 159, 138, 103, 128, 108, 102, 123, 90, 161, 56, 96, 32.53543 + 69, 73, 64, 63, 61, 90, 75, 61, 87, 69, 44, 49, 46, 33, 40, 47, 32.53544 + 24, 43, 40, 27, 40, 40, 34, 35, 30, 38, 27, 41, 30, 40, 36, 43, 32.53545 + 39, 42, 41, 38, 50, 60, 54, 41, 42, 41, 62, 85, 72, 60, 76, 67, 32.53546 + 78, 57, 97, 86, 55, 90, 37, 63, 41, 43, 28, 41, 34, 41, 100, 255, 32.53547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53549 + 255, 255, 40, 47, 43, 75, 82, 162, 200, 211, 223, 187, 195, 169, 161, 202, 32.53550 + 161, 147, 159, 161, 171, 166, 160, 143, 129, 161, 144, 166, 135, 166, 107, 119, 32.53551 + 206, 122, 157, 146, 94, 65, 81, 83, 82, 87, 63, 76, 55, 72, 68, 60, 32.53552 + 69, 60, 59, 63, 55, 48, 45, 43, 40, 36, 36, 29, 36, 36, 29, 29, 32.53553 + 36, 38, 33, 34, 39, 30, 42, 29, 43, 35, 40, 43, 44, 44, 42, 38, 32.53554 + 35, 34, 34, 31, 63, 62, 59, 56, 51, 65, 66, 69, 54, 60, 86, 94, 32.53555 + 59, 38, 54, 86, 72, 50, 33, 46, 29, 27, 71, 113, 255, 255, 255, 255, 32.53556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 42, 57, 45, 32.53558 + 96, 43, 165, 172, 141, 212, 193, 210, 182, 146, 149, 170, 156, 170, 182, 134, 32.53559 + 216, 167, 147, 184, 175, 93, 141, 118, 154, 105, 165, 144, 132, 166, 137, 189, 32.53560 + 130, 82, 74, 29, 55, 119, 50, 77, 55, 61, 38, 57, 80, 44, 58, 46, 32.53561 + 44, 43, 40, 35, 32, 30, 31, 32, 36, 37, 33, 28, 29, 29, 26, 36, 32.53562 + 33, 19, 33, 30, 46, 36, 35, 44, 43, 41, 41, 41, 40, 38, 37, 55, 32.53563 + 73, 59, 51, 45, 38, 53, 59, 45, 72, 79, 69, 82, 97, 91, 77, 80, 32.53564 + 82, 60, 43, 74, 68, 67, 43, 52, 255, 255, 255, 255, 255, 255, 255, 255, 32.53565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53566 + 255, 255, 255, 255, 255, 255, 255, 255, 27, 33, 55, 39, 79, 108, 154, 136, 32.53567 + 199, 200, 214, 193, 161, 145, 178, 172, 158, 151, 132, 167, 142, 169, 161, 135, 32.53568 + 97, 90, 148, 174, 176, 137, 115, 138, 185, 131, 142, 104, 135, 81, 75, 69, 32.53569 + 53, 88, 62, 47, 76, 77, 51, 59, 55, 33, 47, 34, 39, 43, 40, 33, 32.53570 + 30, 29, 31, 31, 32, 35, 37, 33, 30, 31, 36, 30, 33, 32, 40, 34, 32.53571 + 41, 38, 42, 43, 40, 38, 39, 42, 43, 42, 40, 63, 70, 51, 46, 43, 32.53572 + 32, 45, 54, 75, 85, 82, 77, 79, 74, 75, 86, 48, 59, 92, 93, 18, 32.53573 + 59, 30, 107, 88, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53575 + 255, 255, 186, 52, 49, 23, 37, 48, 91, 121, 97, 116, 198, 191, 199, 189, 32.53576 + 165, 132, 157, 151, 162, 159, 143, 164, 125, 164, 123, 139, 110, 129, 108, 140, 32.53577 + 168, 142, 134, 113, 117, 161, 104, 117, 81, 58, 86, 61, 43, 83, 60, 54, 32.53578 + 109, 92, 76, 51, 22, 44, 27, 31, 35, 38, 34, 31, 31, 31, 32, 35, 32.53579 + 31, 31, 36, 36, 29, 32, 40, 26, 29, 30, 35, 32, 34, 32, 33, 41, 32.53580 + 40, 39, 39, 41, 43, 45, 46, 43, 48, 35, 45, 50, 37, 44, 52, 75, 32.53581 + 60, 60, 79, 79, 51, 59, 103, 141, 95, 92, 72, 69, 32, 65, 49, 81, 32.53582 + 41, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 48, 58, 32.53584 + 53, 27, 50, 77, 78, 83, 93, 148, 191, 153, 205, 175, 184, 145, 150, 151, 32.53585 + 158, 138, 122, 150, 125, 114, 178, 105, 86, 118, 179, 159, 159, 179, 108, 134, 32.53586 + 110, 90, 137, 154, 65, 42, 65, 66, 66, 69, 66, 104, 108, 98, 71, 24, 32.53587 + 26, 54, 23, 33, 33, 31, 26, 29, 34, 33, 30, 41, 33, 29, 32, 33, 32.53588 + 27, 30, 37, 51, 38, 29, 28, 40, 45, 46, 40, 42, 44, 44, 42, 40, 32.53589 + 41, 47, 52, 31, 37, 27, 42, 52, 41, 46, 51, 50, 62, 66, 64, 66, 32.53590 + 62, 67, 84, 75, 54, 126, 54, 30, 45, 52, 51, 45, 26, 58, 151, 255, 32.53591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53592 + 255, 255, 255, 255, 255, 255, 255, 255, 41, 42, 48, 58, 48, 51, 99, 114, 32.53593 + 144, 63, 173, 218, 197, 190, 203, 176, 179, 127, 103, 102, 111, 119, 124, 124, 32.53594 + 160, 107, 82, 149, 124, 144, 182, 188, 187, 193, 167, 180, 161, 219, 188, 128, 32.53595 + 99, 77, 59, 79, 75, 38, 71, 100, 76, 124, 75, 10, 36, 42, 37, 43, 32.53596 + 44, 38, 30, 33, 40, 40, 31, 41, 33, 31, 34, 41, 46, 48, 48, 49, 32.53597 + 42, 42, 30, 39, 39, 57, 64, 42, 42, 40, 36, 33, 34, 39, 44, 38, 32.53598 + 43, 28, 33, 42, 35, 43, 48, 51, 70, 73, 63, 62, 57, 51, 52, 74, 32.53599 + 111, 85, 123, 48, 55, 42, 5, 35, 30, 56, 80, 113, 255, 255, 255, 255, 32.53600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53601 + 255, 255, 255, 184, 47, 41, 71, 94, 72, 88, 141, 203, 178, 166, 215, 227, 32.53602 + 231, 179, 184, 120, 117, 119, 120, 110, 94, 115, 110, 97, 129, 119, 201, 143, 32.53603 + 166, 138, 184, 99, 216, 188, 182, 170, 106, 150, 104, 154, 113, 112, 86, 37, 32.53604 + 45, 66, 59, 56, 72, 117, 89, 28, 26, 44, 46, 49, 55, 51, 40, 39, 32.53605 + 45, 43, 34, 38, 34, 34, 36, 49, 59, 58, 50, 31, 23, 33, 31, 56, 32.53606 + 52, 62, 56, 55, 50, 41, 37, 40, 42, 42, 40, 45, 56, 37, 34, 38, 32.53607 + 35, 43, 43, 44, 46, 54, 71, 79, 60, 50, 61, 67, 58, 75, 76, 64, 32.53608 + 40, 49, 32, 38, 33, 37, 30, 28, 255, 255, 255, 255, 255, 255, 255, 255, 32.53609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 45, 50, 32.53610 + 55, 49, 107, 146, 111, 118, 154, 223, 181, 174, 218, 227, 177, 209, 170, 164, 32.53611 + 126, 140, 137, 98, 67, 116, 111, 82, 102, 161, 123, 194, 158, 146, 153, 86, 32.53612 + 147, 148, 196, 182, 161, 170, 148, 131, 123, 82, 78, 88, 76, 80, 81, 42, 32.53613 + 98, 66, 81, 52, 12, 70, 46, 47, 58, 57, 47, 40, 40, 38, 33, 39, 32.53614 + 39, 35, 34, 45, 56, 44, 26, 60, 27, 25, 49, 120, 123, 94, 40, 75, 32.53615 + 62, 48, 45, 53, 57, 52, 46, 41, 58, 43, 37, 41, 41, 47, 42, 45, 32.53616 + 51, 59, 74, 85, 75, 59, 61, 69, 103, 67, 52, 37, 37, 96, 66, 48, 32.53617 + 47, 43, 25, 48, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53618 + 255, 255, 255, 255, 255, 255, 255, 182, 58, 42, 43, 67, 36, 50, 107, 142, 32.53619 + 181, 212, 189, 227, 204, 192, 220, 221, 193, 179, 184, 197, 175, 105, 108, 108, 32.53620 + 87, 93, 97, 91, 177, 224, 165, 187, 156, 157, 150, 144, 178, 196, 166, 168, 32.53621 + 138, 134, 128, 139, 98, 104, 86, 60, 51, 78, 57, 75, 58, 63, 32, 65, 32.53622 + 50, 57, 25, 42, 38, 34, 34, 37, 43, 44, 43, 37, 37, 38, 38, 37, 32.53623 + 43, 55, 63, 22, 70, 39, 72, 153, 118, 109, 63, 91, 121, 108, 100, 85, 32.53624 + 82, 57, 65, 86, 77, 71, 55, 37, 40, 47, 43, 48, 62, 84, 81, 81, 32.53625 + 72, 49, 53, 49, 46, 77, 69, 50, 91, 76, 84, 53, 47, 60, 41, 35, 32.53626 + 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53627 + 255, 255, 182, 57, 29, 76, 38, 57, 88, 67, 163, 227, 222, 208, 218, 198, 32.53628 + 224, 213, 222, 185, 196, 185, 190, 138, 108, 166, 93, 81, 88, 64, 82, 95, 32.53629 + 125, 182, 184, 156, 101, 133, 128, 143, 139, 152, 169, 169, 142, 93, 79, 111, 32.53630 + 74, 87, 79, 65, 57, 75, 49, 73, 55, 52, 28, 56, 53, 61, 41, 47, 32.53631 + 43, 42, 38, 39, 38, 39, 37, 29, 32, 33, 33, 30, 32, 41, 47, 20, 32.53632 + 104, 85, 198, 116, 160, 154, 180, 134, 118, 112, 85, 69, 107, 138, 107, 78, 32.53633 + 75, 80, 76, 68, 69, 71, 60, 73, 65, 68, 59, 53, 45, 41, 71, 41, 32.53634 + 64, 69, 62, 88, 120, 79, 109, 90, 99, 70, 29, 40, 44, 20, 255, 255, 32.53635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 19, 88, 32.53636 + 56, 52, 60, 58, 118, 76, 177, 229, 204, 196, 235, 194, 188, 211, 168, 214, 32.53637 + 189, 195, 150, 186, 130, 97, 91, 101, 117, 66, 43, 139, 175, 161, 138, 133, 32.53638 + 118, 124, 115, 136, 145, 153, 134, 95, 115, 85, 80, 84, 51, 65, 64, 61, 32.53639 + 56, 72, 45, 62, 53, 41, 31, 42, 51, 51, 41, 46, 45, 46, 42, 39, 32.53640 + 35, 34, 35, 29, 32, 35, 35, 32, 32, 37, 41, 67, 54, 175, 137, 176, 32.53641 + 171, 151, 137, 139, 134, 127, 96, 119, 109, 101, 72, 71, 71, 81, 84, 82, 32.53642 + 84, 84, 71, 69, 54, 55, 51, 50, 48, 58, 104, 48, 21, 48, 65, 52, 32.53643 + 104, 102, 87, 103, 137, 81, 28, 47, 51, 37, 38, 255, 255, 255, 255, 255, 32.53644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 68, 87, 93, 65, 41, 65, 32.53645 + 125, 139, 207, 222, 200, 205, 222, 208, 192, 185, 179, 176, 181, 180, 195, 174, 32.53646 + 71, 151, 100, 93, 68, 98, 164, 139, 142, 137, 165, 177, 146, 105, 143, 172, 32.53647 + 123, 140, 163, 133, 104, 54, 58, 69, 41, 52, 49, 52, 49, 69, 53, 57, 32.53648 + 59, 47, 48, 37, 48, 38, 34, 37, 42, 45, 43, 40, 37, 37, 39, 33, 32.53649 + 35, 36, 37, 36, 37, 42, 46, 79, 177, 170, 174, 168, 172, 133, 96, 109, 32.53650 + 95, 75, 68, 100, 70, 53, 69, 67, 68, 75, 73, 68, 72, 78, 69, 51, 32.53651 + 43, 49, 44, 42, 36, 30, 58, 51, 52, 43, 44, 56, 90, 78, 103, 76, 32.53652 + 113, 68, 29, 30, 29, 44, 43, 111, 255, 255, 255, 255, 255, 255, 255, 255, 32.53653 + 255, 255, 255, 255, 80, 14, 35, 60, 55, 73, 133, 99, 141, 181, 171, 194, 32.53654 + 196, 199, 203, 199, 175, 162, 184, 173, 188, 157, 179, 109, 124, 83, 64, 96, 32.53655 + 102, 79, 214, 129, 98, 151, 178, 125, 121, 95, 126, 145, 165, 217, 180, 134, 32.53656 + 104, 80, 55, 57, 39, 51, 47, 53, 48, 69, 59, 61, 71, 58, 61, 35, 32.53657 + 43, 32, 38, 32, 37, 42, 42, 40, 38, 39, 41, 36, 36, 32, 31, 33, 32.53658 + 35, 41, 44, 66, 142, 143, 114, 109, 112, 101, 73, 117, 79, 73, 95, 71, 32.53659 + 75, 91, 99, 67, 69, 76, 71, 58, 61, 70, 64, 41, 42, 48, 36, 39, 32.53660 + 41, 23, 28, 52, 60, 49, 49, 47, 65, 65, 98, 81, 83, 60, 50, 30, 32.53661 + 23, 48, 32, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 32.53662 + 93, 116, 66, 36, 125, 149, 121, 197, 214, 223, 157, 205, 214, 203, 216, 195, 32.53663 + 156, 161, 154, 189, 201, 161, 138, 130, 120, 86, 60, 47, 60, 170, 120, 137, 32.53664 + 137, 165, 134, 83, 106, 80, 87, 137, 100, 104, 106, 109, 59, 52, 43, 46, 32.53665 + 37, 51, 51, 58, 49, 64, 60, 64, 65, 50, 52, 27, 35, 33, 44, 35, 32.53666 + 36, 39, 39, 38, 37, 37, 37, 42, 40, 34, 32, 32, 35, 38, 40, 73, 32.53667 + 22, 109, 73, 63, 109, 62, 62, 61, 65, 58, 69, 45, 58, 52, 56, 64, 32.53668 + 67, 78, 80, 69, 69, 74, 65, 51, 50, 48, 29, 38, 54, 41, 43, 42, 32.53669 + 28, 45, 65, 24, 40, 64, 65, 93, 57, 47, 59, 43, 41, 52, 26, 33, 32.53670 + 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 42, 62, 40, 87, 32.53671 + 82, 79, 176, 205, 202, 217, 193, 204, 190, 185, 180, 194, 187, 172, 163, 140, 32.53672 + 196, 162, 178, 138, 101, 73, 73, 39, 128, 121, 95, 110, 135, 139, 147, 136, 32.53673 + 103, 73, 80, 57, 112, 117, 107, 89, 60, 71, 52, 53, 41, 49, 45, 57, 32.53674 + 47, 58, 52, 62, 56, 42, 43, 34, 38, 36, 39, 35, 34, 35, 34, 35, 32.53675 + 35, 36, 35, 42, 40, 36, 35, 36, 38, 38, 38, 28, 11, 63, 60, 51, 32.53676 + 24, 63, 34, 34, 58, 37, 27, 50, 54, 44, 66, 59, 58, 67, 72, 72, 32.53677 + 76, 74, 60, 70, 60, 51, 29, 29, 35, 22, 31, 29, 55, 34, 45, 57, 32.53678 + 51, 38, 75, 71, 36, 31, 35, 36, 42, 32, 23, 32, 43, 255, 255, 255, 32.53679 + 255, 255, 255, 255, 255, 255, 190, 46, 67, 41, 50, 154, 108, 171, 204, 212, 32.53680 + 169, 195, 230, 173, 162, 217, 199, 171, 141, 174, 148, 186, 181, 146, 123, 106, 32.53681 + 113, 55, 102, 119, 97, 59, 76, 90, 145, 155, 146, 90, 77, 117, 49, 48, 32.53682 + 117, 102, 123, 89, 48, 53, 53, 69, 51, 45, 32, 47, 42, 51, 48, 66, 32.53683 + 55, 45, 47, 51, 51, 41, 33, 34, 30, 30, 31, 35, 37, 38, 34, 32, 32.53684 + 32, 31, 34, 37, 39, 38, 37, 37, 53, 45, 31, 38, 33, 47, 40, 55, 32.53685 + 24, 40, 49, 58, 41, 51, 37, 56, 46, 49, 54, 61, 71, 69, 50, 63, 32.53686 + 54, 55, 48, 49, 44, 31, 50, 46, 32, 23, 51, 37, 46, 56, 57, 65, 32.53687 + 49, 45, 28, 38, 46, 23, 40, 38, 40, 106, 255, 255, 255, 255, 255, 255, 32.53688 + 255, 255, 70, 101, 56, 48, 51, 216, 158, 216, 165, 193, 156, 183, 182, 182, 32.53689 + 174, 222, 215, 194, 132, 193, 183, 209, 152, 158, 189, 130, 127, 100, 88, 92, 32.53690 + 73, 54, 87, 170, 182, 157, 171, 144, 130, 80, 87, 81, 132, 60, 69, 71, 32.53691 + 49, 58, 47, 49, 54, 40, 48, 30, 44, 40, 51, 42, 45, 49, 51, 50, 32.53692 + 48, 43, 39, 31, 44, 39, 39, 22, 37, 33, 36, 42, 36, 32, 30, 32, 32.53693 + 36, 37, 38, 37, 51, 40, 53, 51, 37, 50, 38, 50, 49, 47, 46, 47, 32.53694 + 49, 54, 57, 59, 59, 59, 59, 59, 56, 54, 52, 44, 47, 51, 51, 43, 32.53695 + 36, 37, 42, 35, 40, 42, 37, 35, 41, 47, 48, 75, 84, 69, 76, 37, 32.53696 + 34, 38, 37, 30, 26, 37, 255, 255, 255, 255, 255, 255, 255, 189, 161, 77, 32.53697 + 52, 74, 48, 224, 189, 237, 169, 180, 157, 170, 140, 171, 181, 221, 188, 151, 32.53698 + 147, 161, 184, 187, 171, 159, 136, 73, 113, 88, 57, 87, 83, 84, 93, 195, 32.53699 + 175, 205, 147, 119, 81, 107, 59, 57, 116, 94, 100, 77, 36, 43, 46, 41, 32.53700 + 46, 40, 49, 36, 47, 42, 50, 42, 43, 46, 47, 46, 44, 41, 39, 38, 32.53701 + 37, 29, 41, 31, 38, 29, 34, 31, 32, 34, 35, 35, 34, 32, 31, 44, 32.53702 + 52, 50, 56, 55, 47, 52, 46, 51, 49, 45, 42, 41, 41, 45, 46, 51, 32.53703 + 54, 59, 61, 63, 59, 54, 51, 35, 39, 44, 46, 47, 46, 42, 37, 39, 32.53704 + 40, 38, 34, 35, 41, 44, 44, 60, 74, 69, 82, 45, 35, 32, 23, 43, 32.53705 + 15, 40, 122, 255, 255, 255, 255, 255, 255, 79, 61, 119, 29, 128, 178, 231, 32.53706 + 183, 222, 139, 191, 159, 190, 134, 168, 232, 187, 188, 167, 198, 189, 169, 141, 32.53707 + 160, 157, 123, 187, 63, 109, 104, 123, 78, 94, 160, 202, 165, 110, 139, 37, 32.53708 + 60, 31, 35, 57, 66, 64, 74, 80, 57, 63, 56, 47, 53, 49, 54, 43, 32.53709 + 45, 37, 38, 42, 42, 44, 43, 42, 41, 41, 41, 38, 36, 29, 46, 31, 32.53710 + 30, 23, 38, 33, 36, 39, 38, 35, 33, 34, 37, 50, 50, 62, 58, 59, 32.53711 + 57, 49, 52, 51, 49, 44, 40, 37, 35, 35, 36, 41, 46, 53, 59, 60, 32.53712 + 57, 52, 48, 39, 40, 38, 37, 43, 51, 47, 37, 42, 41, 37, 34, 37, 32.53713 + 44, 46, 43, 61, 72, 67, 76, 46, 37, 38, 30, 28, 30, 29, 41, 255, 32.53714 + 255, 255, 255, 255, 191, 71, 50, 93, 122, 188, 111, 207, 191, 200, 161, 153, 32.53715 + 168, 118, 122, 147, 178, 153, 151, 189, 155, 172, 171, 166, 142, 165, 200, 210, 32.53716 + 170, 140, 143, 135, 85, 129, 217, 125, 93, 45, 75, 64, 52, 26, 63, 65, 32.53717 + 61, 104, 109, 99, 63, 55, 43, 55, 56, 54, 54, 47, 43, 35, 32, 42, 32.53718 + 43, 43, 42, 42, 41, 40, 40, 28, 39, 39, 46, 24, 28, 31, 48, 48, 32.53719 + 48, 46, 39, 33, 34, 41, 49, 49, 44, 67, 60, 58, 63, 41, 48, 47, 32.53720 + 45, 42, 38, 36, 34, 34, 34, 36, 39, 45, 50, 53, 53, 52, 51, 53, 32.53721 + 51, 41, 30, 33, 47, 50, 43, 41, 43, 42, 39, 40, 45, 49, 48, 53, 32.53722 + 63, 65, 76, 57, 44, 44, 29, 28, 19, 46, 72, 133, 255, 255, 255, 255, 32.53723 + 36, 81, 61, 111, 160, 210, 55, 177, 163, 183, 152, 166, 157, 138, 101, 170, 32.53724 + 205, 158, 163, 141, 141, 144, 171, 190, 168, 198, 177, 217, 124, 135, 134, 118, 32.53725 + 193, 164, 144, 88, 75, 87, 41, 77, 19, 32, 26, 36, 9, 51, 64, 75, 32.53726 + 62, 60, 48, 42, 42, 47, 46, 51, 48, 48, 46, 42, 44, 46, 47, 47, 32.53727 + 45, 41, 39, 26, 43, 38, 39, 27, 51, 53, 57, 54, 52, 49, 41, 37, 32.53728 + 37, 45, 53, 48, 44, 68, 61, 60, 63, 39, 45, 45, 44, 40, 39, 39, 32.53729 + 39, 40, 41, 40, 40, 38, 40, 43, 48, 52, 55, 55, 57, 50, 37, 34, 32.53730 + 43, 49, 49, 40, 47, 51, 44, 38, 38, 43, 46, 31, 46, 65, 87, 82, 32.53731 + 58, 45, 14, 32, 45, 96, 43, 65, 255, 255, 255, 255, 53, 65, 103, 190, 32.53732 + 173, 156, 133, 191, 142, 106, 170, 137, 164, 131, 86, 218, 189, 206, 123, 115, 32.53733 + 183, 142, 190, 182, 165, 208, 136, 135, 135, 153, 132, 198, 121, 160, 119, 93, 32.53734 + 44, 44, 55, 44, 47, 72, 62, 96, 41, 29, 33, 52, 62, 60, 44, 37, 32.53735 + 34, 42, 38, 51, 46, 51, 47, 40, 42, 45, 47, 47, 45, 40, 38, 33, 32.53736 + 42, 28, 32, 40, 79, 71, 56, 43, 45, 46, 44, 42, 41, 44, 47, 53, 32.53737 + 53, 64, 61, 58, 56, 43, 44, 43, 42, 41, 41, 42, 43, 45, 45, 45, 32.53738 + 43, 40, 40, 43, 47, 53, 56, 43, 49, 54, 52, 45, 42, 45, 50, 39, 32.53739 + 50, 55, 47, 35, 30, 32, 35, 38, 43, 59, 79, 89, 70, 62, 25, 116, 32.53740 + 47, 29, 66, 62, 76, 255, 255, 255, 56, 121, 203, 208, 155, 139, 191, 139, 32.53741 + 167, 168, 194, 160, 147, 161, 74, 193, 193, 177, 138, 144, 143, 128, 189, 186, 32.53742 + 134, 179, 182, 132, 135, 190, 121, 165, 141, 180, 87, 137, 53, 39, 48, 56, 32.53743 + 42, 71, 62, 25, 27, 33, 50, 41, 41, 50, 52, 43, 38, 48, 39, 54, 32.53744 + 42, 48, 40, 41, 42, 40, 41, 41, 40, 40, 39, 38, 41, 27, 38, 45, 32.53745 + 74, 61, 49, 36, 36, 36, 37, 41, 43, 46, 48, 61, 66, 58, 58, 52, 32.53746 + 44, 49, 44, 44, 44, 44, 44, 42, 42, 43, 43, 41, 42, 42, 44, 45, 32.53747 + 46, 46, 46, 38, 40, 49, 56, 50, 39, 39, 48, 37, 47, 53, 47, 38, 32.53748 + 33, 31, 30, 55, 43, 46, 56, 79, 71, 78, 45, 108, 70, 35, 78, 43, 32.53749 + 101, 255, 255, 255, 47, 74, 211, 129, 172, 172, 155, 206, 164, 155, 198, 203, 32.53750 + 171, 140, 68, 126, 149, 151, 178, 155, 111, 161, 109, 156, 160, 165, 152, 110, 32.53751 + 196, 117, 144, 96, 171, 173, 134, 63, 60, 43, 32, 49, 46, 39, 40, 41, 32.53752 + 48, 28, 48, 37, 44, 44, 40, 45, 39, 52, 43, 58, 46, 49, 39, 38, 32.53753 + 37, 34, 33, 33, 34, 36, 37, 35, 41, 37, 49, 39, 49, 39, 43, 38, 32.53754 + 32, 27, 27, 35, 44, 52, 57, 65, 72, 49, 51, 45, 34, 52, 45, 46, 32.53755 + 46, 45, 44, 41, 40, 39, 39, 34, 38, 42, 46, 47, 43, 38, 34, 44, 32.53756 + 37, 41, 52, 47, 33, 34, 47, 34, 43, 49, 48, 44, 41, 37, 32, 47, 32.53757 + 30, 33, 46, 78, 68, 77, 40, 61, 28, 62, 41, 38, 39, 255, 255, 255, 32.53758 + 31, 135, 174, 204, 175, 187, 159, 185, 151, 146, 176, 169, 164, 110, 97, 170, 32.53759 + 71, 133, 103, 108, 152, 74, 88, 142, 108, 145, 110, 133, 74, 67, 135, 171, 32.53760 + 131, 137, 87, 50, 47, 35, 46, 45, 67, 43, 62, 48, 54, 51, 39, 37, 32.53761 + 44, 37, 22, 28, 34, 44, 29, 37, 100, 54, 30, 35, 35, 31, 18, 43, 32.53762 + 18, 48, 23, 31, 40, 33, 54, 58, 42, 48, 33, 31, 25, 36, 46, 38, 32.53763 + 33, 41, 45, 46, 40, 33, 31, 34, 38, 41, 41, 44, 45, 45, 45, 44, 32.53764 + 41, 38, 35, 35, 32, 32, 39, 48, 53, 50, 45, 50, 38, 43, 56, 45, 32.53765 + 59, 33, 53, 43, 43, 45, 48, 46, 40, 39, 41, 41, 44, 30, 33, 42, 32.53766 + 71, 93, 47, 44, 21, 35, 48, 28, 41, 71, 255, 255, 72, 153, 198, 185, 32.53767 + 170, 179, 155, 173, 150, 141, 160, 174, 162, 112, 106, 109, 117, 141, 113, 125, 32.53768 + 106, 105, 86, 124, 97, 141, 112, 95, 68, 66, 115, 128, 101, 116, 75, 33, 32.53769 + 40, 59, 50, 50, 43, 37, 58, 58, 55, 44, 30, 30, 39, 43, 40, 43, 32.53770 + 33, 40, 38, 47, 89, 46, 35, 28, 30, 38, 30, 29, 33, 35, 37, 32, 32.53771 + 50, 49, 53, 40, 26, 45, 49, 50, 39, 34, 33, 32, 40, 43, 31, 30, 32.53772 + 30, 31, 34, 37, 39, 39, 37, 47, 49, 50, 48, 44, 39, 37, 37, 35, 32.53773 + 32, 31, 35, 41, 44, 43, 40, 49, 36, 39, 52, 44, 57, 33, 48, 39, 32.53774 + 41, 47, 52, 49, 40, 34, 34, 38, 43, 30, 34, 36, 58, 83, 50, 28, 32.53775 + 36, 46, 57, 61, 51, 43, 255, 255, 144, 139, 135, 169, 180, 141, 160, 126, 32.53776 + 180, 153, 190, 157, 148, 164, 169, 76, 94, 124, 160, 123, 92, 96, 127, 84, 32.53777 + 100, 127, 101, 95, 99, 94, 117, 99, 89, 102, 73, 36, 29, 55, 37, 64, 32.53778 + 45, 41, 44, 50, 47, 44, 41, 40, 40, 38, 37, 36, 32, 51, 52, 40, 32.53779 + 51, 32, 55, 36, 18, 90, 23, 70, 26, 50, 43, 39, 49, 45, 48, 46, 32.53780 + 39, 44, 36, 53, 44, 35, 26, 26, 42, 43, 23, 36, 38, 40, 39, 37, 32.53781 + 36, 35, 35, 49, 51, 52, 49, 43, 38, 36, 36, 32, 32, 31, 32, 34, 32.53782 + 37, 40, 42, 50, 38, 37, 48, 47, 55, 37, 44, 34, 35, 39, 43, 42, 32.53783 + 36, 34, 36, 37, 40, 33, 35, 31, 43, 70, 59, 40, 63, 47, 45, 72, 32.53784 + 53, 29, 255, 255, 202, 172, 149, 154, 170, 180, 168, 172, 176, 168, 160, 164, 32.53785 + 128, 162, 165, 117, 95, 109, 111, 108, 103, 59, 120, 54, 86, 120, 76, 88, 32.53786 + 96, 84, 98, 71, 72, 75, 57, 52, 35, 50, 37, 74, 63, 54, 51, 43, 32.53787 + 42, 44, 49, 48, 39, 32, 31, 33, 34, 55, 53, 37, 36, 32, 61, 33, 32.53788 + 40, 75, 56, 57, 44, 40, 41, 50, 45, 36, 37, 44, 48, 47, 37, 46, 32.53789 + 37, 34, 31, 27, 35, 38, 28, 42, 42, 40, 36, 32, 32, 37, 42, 48, 32.53790 + 47, 45, 44, 42, 39, 35, 33, 29, 31, 32, 31, 32, 36, 43, 49, 53, 32.53791 + 42, 38, 46, 51, 54, 43, 42, 37, 33, 31, 33, 34, 36, 44, 53, 36, 32.53792 + 39, 38, 39, 31, 36, 59, 73, 62, 74, 47, 40, 67, 51, 34, 66, 255, 32.53793 + 149, 91, 61, 167, 197, 184, 204, 163, 182, 151, 140, 171, 164, 159, 139, 153, 32.53794 + 124, 129, 71, 134, 131, 103, 94, 105, 113, 145, 94, 71, 64, 47, 68, 58, 32.53795 + 62, 55, 46, 35, 31, 46, 40, 54, 48, 36, 44, 45, 41, 40, 42, 41, 32.53796 + 37, 37, 41, 49, 37, 40, 39, 51, 57, 49, 45, 50, 69, 57, 71, 57, 32.53797 + 57, 60, 53, 55, 47, 43, 31, 27, 34, 47, 63, 65, 36, 24, 31, 32, 32.53798 + 31, 32, 30, 27, 29, 30, 30, 31, 35, 42, 49, 43, 38, 34, 35, 39, 32.53799 + 40, 35, 29, 29, 32, 33, 32, 31, 33, 40, 46, 52, 44, 38, 43, 53, 32.53800 + 49, 48, 40, 43, 38, 34, 34, 36, 40, 51, 61, 33, 36, 42, 38, 32, 32.53801 + 34, 49, 75, 65, 60, 51, 55, 62, 53, 42, 50, 255, 207, 102, 117, 181, 32.53802 + 173, 189, 162, 179, 150, 186, 167, 165, 192, 159, 151, 143, 100, 125, 109, 96, 32.53803 + 99, 116, 68, 112, 134, 89, 68, 73, 56, 41, 55, 61, 59, 46, 41, 40, 32.53804 + 34, 47, 47, 65, 57, 31, 28, 34, 39, 44, 47, 46, 44, 42, 40, 42, 32.53805 + 36, 39, 31, 48, 51, 52, 39, 43, 47, 31, 29, 46, 32, 62, 41, 52, 32.53806 + 37, 43, 42, 40, 42, 44, 65, 92, 43, 16, 27, 34, 33, 30, 27, 23, 32.53807 + 27, 33, 37, 39, 40, 40, 41, 37, 32, 28, 31, 36, 39, 35, 31, 33, 32.53808 + 35, 36, 34, 31, 29, 31, 34, 48, 44, 38, 38, 52, 41, 49, 36, 40, 32.53809 + 37, 36, 37, 37, 37, 42, 49, 30, 32, 40, 34, 35, 36, 37, 65, 76, 32.53810 + 56, 54, 60, 51, 47, 48, 45, 255, 255, 151, 167, 155, 158, 163, 195, 180, 32.53811 + 171, 189, 186, 176, 173, 135, 147, 144, 97, 119, 108, 85, 95, 119, 70, 114, 32.53812 + 131, 72, 74, 61, 51, 50, 40, 50, 38, 30, 29, 66, 49, 70, 58, 97, 32.53813 + 77, 59, 46, 33, 46, 55, 54, 51, 49, 42, 33, 27, 31, 42, 33, 40, 32.53814 + 26, 42, 42, 59, 67, 41, 69, 52, 82, 65, 63, 48, 24, 39, 49, 53, 32.53815 + 52, 50, 82, 74, 40, 24, 29, 31, 32, 33, 29, 33, 34, 37, 40, 42, 32.53816 + 41, 37, 34, 33, 33, 33, 33, 34, 34, 36, 37, 35, 37, 39, 38, 35, 32.53817 + 32, 29, 28, 46, 47, 40, 37, 52, 35, 52, 36, 40, 36, 34, 35, 34, 32.53818 + 33, 38, 45, 33, 34, 39, 29, 37, 41, 27, 49, 93, 73, 59, 53, 45, 32.53819 + 42, 49, 55, 255, 255, 225, 181, 190, 172, 169, 188, 176, 153, 189, 192, 186, 32.53820 + 184, 183, 158, 162, 128, 154, 105, 112, 104, 122, 38, 121, 76, 115, 104, 43, 32.53821 + 49, 63, 35, 45, 31, 33, 35, 43, 35, 77, 40, 80, 42, 57, 60, 54, 32.53822 + 63, 59, 43, 37, 44, 46, 40, 38, 28, 33, 33, 49, 27, 40, 37, 47, 32.53823 + 32, 67, 46, 74, 66, 50, 36, 45, 26, 45, 43, 29, 32, 65, 138, 30, 32.53824 + 30, 38, 38, 27, 27, 36, 36, 32, 29, 26, 29, 34, 39, 41, 40, 31, 32.53825 + 37, 41, 38, 32, 30, 36, 42, 35, 37, 40, 43, 42, 38, 33, 30, 46, 32.53826 + 50, 44, 39, 54, 34, 56, 38, 48, 41, 35, 33, 33, 36, 47, 58, 37, 32.53827 + 37, 42, 27, 42, 48, 23, 41, 96, 90, 69, 59, 60, 46, 41, 58, 114, 32.53828 + 255, 255, 220, 165, 143, 206, 202, 170, 176, 160, 178, 209, 160, 185, 158, 158, 32.53829 + 162, 137, 112, 100, 90, 77, 53, 118, 83, 63, 54, 84, 42, 31, 54, 43, 32.53830 + 13, 33, 19, 47, 41, 43, 46, 48, 45, 49, 55, 47, 60, 69, 61, 31, 32.53831 + 75, 31, 40, 38, 36, 34, 35, 37, 37, 34, 31, 32, 45, 36, 68, 46, 32.53832 + 42, 51, 47, 26, 51, 32, 42, 30, 39, 112, 101, 30, 31, 31, 32, 33, 32.53833 + 32, 32, 31, 34, 35, 37, 39, 39, 37, 35, 34, 33, 35, 37, 35, 33, 32.53834 + 33, 36, 39, 44, 43, 40, 35, 30, 29, 32, 36, 40, 43, 43, 40, 40, 32.53835 + 43, 42, 39, 46, 29, 42, 34, 35, 54, 42, 37, 36, 36, 35, 35, 41, 32.53836 + 44, 39, 31, 67, 97, 77, 47, 49, 49, 67, 47, 35, 255, 255, 255, 255, 32.53837 + 255, 236, 203, 185, 193, 185, 191, 189, 168, 172, 152, 148, 148, 104, 107, 118, 32.53838 + 159, 73, 100, 115, 171, 76, 75, 52, 67, 33, 28, 76, 43, 61, 35, 40, 32.53839 + 35, 39, 46, 52, 50, 51, 53, 58, 56, 60, 68, 59, 105, 56, 54, 42, 32.53840 + 39, 35, 35, 35, 35, 32, 30, 39, 48, 38, 63, 43, 42, 54, 51, 47, 32.53841 + 27, 27, 44, 41, 38, 69, 99, 32, 34, 35, 37, 38, 39, 40, 40, 37, 32.53842 + 37, 37, 36, 35, 32, 30, 29, 31, 33, 35, 35, 34, 35, 38, 41, 39, 32.53843 + 41, 41, 39, 35, 33, 33, 35, 36, 40, 41, 39, 38, 40, 38, 34, 43, 32.53844 + 29, 47, 47, 45, 53, 38, 33, 44, 41, 34, 34, 39, 45, 44, 36, 65, 32.53845 + 98, 68, 71, 43, 49, 44, 42, 47, 255, 255, 255, 255, 255, 255, 255, 255, 32.53846 + 237, 210, 205, 168, 172, 163, 155, 147, 144, 89, 119, 87, 99, 139, 103, 76, 32.53847 + 86, 127, 94, 19, 95, 80, 77, 46, 65, 40, 42, 41, 37, 42, 50, 58, 32.53848 + 56, 52, 49, 48, 40, 44, 62, 63, 99, 57, 56, 46, 43, 38, 35, 34, 32.53849 + 33, 32, 31, 38, 44, 43, 62, 47, 46, 54, 49, 52, 24, 47, 37, 31, 32.53850 + 41, 57, 140, 35, 36, 37, 38, 39, 40, 40, 40, 37, 36, 34, 32, 31, 32.53851 + 30, 29, 29, 30, 32, 33, 34, 33, 33, 35, 37, 33, 36, 40, 41, 39, 32.53852 + 37, 35, 35, 35, 39, 40, 38, 38, 39, 37, 33, 43, 29, 46, 53, 48, 32.53853 + 45, 33, 32, 51, 44, 33, 31, 38, 47, 47, 39, 56, 77, 74, 70, 84, 32.53854 + 75, 69, 47, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 32.53855 + 189, 184, 172, 149, 127, 83, 102, 89, 129, 132, 99, 102, 97, 112, 141, 29, 32.53856 + 54, 140, 76, 33, 30, 42, 40, 47, 42, 43, 47, 54, 53, 46, 39, 34, 32.53857 + 33, 41, 55, 45, 63, 39, 52, 50, 46, 41, 37, 35, 36, 37, 38, 34, 32.53858 + 39, 52, 66, 56, 51, 50, 40, 36, 36, 57, 24, 26, 54, 60, 123, 36, 32.53859 + 36, 36, 36, 35, 34, 32, 31, 35, 33, 31, 30, 30, 31, 33, 34, 33, 32.53860 + 33, 33, 32, 31, 29, 29, 28, 29, 32, 36, 38, 39, 38, 36, 35, 39, 32.53861 + 41, 40, 37, 37, 40, 41, 38, 47, 31, 39, 49, 42, 33, 31, 37, 53, 32.53862 + 46, 36, 32, 42, 51, 48, 40, 35, 88, 67, 104, 60, 102, 47, 38, 60, 32.53863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 190, 174, 150, 32.53864 + 118, 104, 90, 79, 137, 98, 84, 90, 100, 67, 108, 122, 92, 101, 82, 58, 32.53865 + 56, 45, 19, 47, 41, 38, 38, 44, 45, 42, 34, 42, 42, 46, 53, 39, 32.53866 + 44, 35, 51, 49, 47, 43, 39, 38, 40, 43, 46, 45, 44, 63, 64, 57, 32.53867 + 51, 46, 35, 27, 38, 34, 21, 44, 60, 41, 34, 37, 37, 37, 36, 35, 32.53868 + 34, 33, 32, 37, 35, 32, 31, 31, 32, 35, 36, 34, 34, 34, 34, 33, 32.53869 + 32, 30, 28, 29, 29, 30, 32, 34, 35, 36, 36, 40, 41, 38, 33, 33, 32.53870 + 39, 43, 43, 47, 34, 37, 51, 43, 31, 34, 36, 50, 45, 39, 36, 44, 32.53871 + 51, 47, 37, 22, 56, 89, 95, 95, 85, 67, 65, 70, 255, 255, 255, 255, 32.53872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 159, 139, 109, 111, 78, 71, 32.53873 + 124, 153, 96, 100, 80, 96, 93, 74, 149, 86, 133, 44, 30, 11, 52, 44, 32.53874 + 41, 38, 36, 42, 48, 49, 43, 49, 43, 37, 41, 39, 42, 37, 39, 44, 32.53875 + 43, 42, 39, 38, 40, 45, 49, 63, 52, 68, 52, 49, 47, 45, 36, 34, 32.53876 + 39, 22, 35, 50, 40, 36, 17, 36, 37, 38, 40, 41, 41, 41, 41, 41, 32.53877 + 39, 36, 33, 32, 31, 32, 33, 33, 33, 34, 36, 39, 39, 37, 35, 31, 32.53878 + 29, 27, 28, 31, 33, 35, 35, 37, 38, 35, 30, 32, 39, 44, 45, 41, 32.53879 + 38, 39, 57, 52, 38, 42, 32, 45, 45, 41, 40, 43, 47, 45, 35, 45, 32.53880 + 49, 38, 99, 86, 108, 50, 68, 66, 255, 255, 255, 255, 255, 255, 255, 255, 32.53881 + 255, 255, 255, 255, 255, 255, 152, 124, 97, 82, 58, 73, 154, 117, 105, 112, 32.53882 + 121, 65, 97, 44, 60, 49, 40, 73, 45, 35, 18, 37, 39, 39, 36, 41, 32.53883 + 49, 53, 49, 44, 41, 33, 33, 38, 39, 39, 30, 38, 38, 38, 36, 34, 32.53884 + 35, 40, 44, 60, 43, 64, 40, 42, 44, 44, 37, 39, 36, 30, 41, 34, 32.53885 + 26, 45, 45, 34, 35, 37, 39, 40, 41, 41, 41, 40, 39, 36, 34, 32, 32.53886 + 32, 32, 32, 32, 31, 33, 36, 40, 41, 38, 36, 33, 30, 28, 29, 31, 32.53887 + 33, 33, 32, 32, 35, 35, 34, 36, 43, 46, 45, 40, 42, 37, 53, 52, 32.53888 + 44, 51, 32, 42, 44, 42, 39, 39, 42, 43, 36, 40, 24, 50, 84, 164, 32.53889 + 205, 198, 196, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53890 + 255, 255, 146, 126, 115, 86, 85, 118, 135, 108, 154, 81, 114, 77, 96, 80, 32.53891 + 35, 104, 20, 27, 54, 42, 31, 27, 33, 35, 33, 35, 44, 46, 43, 40, 32.53892 + 49, 48, 41, 43, 38, 47, 36, 35, 35, 37, 32, 32, 31, 37, 38, 39, 32.53893 + 22, 52, 30, 41, 43, 39, 31, 32, 19, 24, 29, 24, 35, 42, 27, 34, 32.53894 + 33, 34, 34, 35, 34, 34, 34, 35, 35, 34, 33, 33, 34, 34, 35, 32, 32.53895 + 31, 31, 34, 37, 37, 33, 29, 34, 32, 30, 31, 34, 34, 32, 29, 30, 32.53896 + 35, 39, 40, 43, 48, 49, 46, 43, 45, 31, 42, 43, 43, 57, 36, 41, 32.53897 + 43, 42, 36, 35, 40, 42, 40, 32, 62, 87, 86, 134, 213, 219, 220, 212, 32.53898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 102, 32.53899 + 90, 89, 102, 135, 115, 92, 121, 93, 122, 103, 91, 75, 29, 103, 52, 24, 32.53900 + 52, 29, 33, 46, 31, 28, 39, 41, 32, 35, 51, 42, 40, 40, 39, 43, 32.53901 + 41, 40, 34, 43, 40, 40, 34, 33, 32, 40, 40, 37, 31, 27, 26, 32, 32.53902 + 38, 32, 21, 22, 16, 17, 24, 32, 35, 38, 39, 37, 32, 31, 34, 35, 32.53903 + 34, 36, 41, 34, 36, 38, 36, 32, 31, 32, 34, 43, 36, 31, 34, 41, 32.53904 + 44, 41, 35, 28, 32, 32, 30, 33, 38, 35, 28, 35, 38, 35, 33, 42, 32.53905 + 52, 46, 31, 55, 45, 36, 34, 39, 42, 38, 32, 43, 37, 37, 42, 40, 32.53906 + 34, 36, 46, 23, 50, 103, 57, 147, 198, 189, 195, 214, 255, 255, 255, 255, 32.53907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 121, 90, 109, 150, 32.53908 + 97, 86, 78, 108, 105, 107, 69, 146, 68, 75, 70, 89, 9, 55, 28, 48, 32.53909 + 39, 34, 39, 47, 48, 46, 43, 44, 43, 42, 42, 42, 42, 40, 38, 40, 32.53910 + 41, 40, 37, 32, 31, 33, 30, 24, 25, 29, 29, 33, 39, 38, 31, 27, 32.53911 + 21, 14, 15, 22, 31, 42, 46, 35, 29, 30, 35, 37, 36, 39, 43, 41, 32.53912 + 43, 44, 42, 39, 37, 38, 40, 38, 37, 37, 37, 39, 40, 41, 42, 28, 32.53913 + 34, 36, 33, 31, 34, 34, 32, 35, 31, 31, 38, 46, 48, 44, 41, 50, 32.53914 + 43, 36, 35, 39, 41, 38, 35, 38, 33, 33, 39, 40, 35, 38, 47, 42, 32.53915 + 36, 84, 102, 180, 206, 192, 198, 195, 255, 255, 255, 255, 255, 255, 255, 255, 32.53916 + 255, 255, 255, 255, 255, 255, 255, 112, 101, 120, 140, 153, 93, 84, 65, 112, 32.53917 + 101, 113, 82, 57, 44, 35, 32, 68, 24, 113, 49, 37, 41, 40, 35, 39, 32.53918 + 45, 43, 33, 39, 41, 42, 41, 39, 37, 37, 37, 35, 36, 37, 35, 32, 32.53919 + 30, 30, 27, 26, 30, 38, 36, 31, 32, 34, 32, 34, 33, 25, 15, 19, 32.53920 + 32, 45, 45, 35, 31, 32, 37, 39, 37, 38, 41, 34, 35, 36, 35, 32, 32.53921 + 31, 31, 32, 33, 38, 42, 40, 36, 35, 40, 46, 30, 37, 40, 35, 31, 32.53922 + 32, 34, 35, 38, 30, 31, 44, 48, 41, 39, 47, 42, 39, 37, 36, 38, 32.53923 + 39, 40, 39, 36, 32, 32, 38, 40, 37, 40, 47, 51, 37, 81, 153, 191, 32.53924 + 191, 190, 189, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53925 + 255, 255, 255, 119, 120, 181, 126, 132, 107, 86, 90, 91, 107, 115, 124, 76, 32.53926 + 58, 43, 50, 29, 30, 45, 29, 27, 39, 42, 35, 27, 29, 35, 37, 36, 32.53927 + 39, 42, 41, 37, 35, 36, 38, 33, 34, 35, 36, 36, 36, 36, 34, 28, 32.53928 + 29, 37, 34, 29, 26, 28, 28, 31, 38, 36, 24, 26, 38, 48, 40, 41, 32.53929 + 37, 38, 42, 42, 37, 36, 38, 42, 42, 41, 41, 39, 38, 38, 38, 34, 32.53930 + 39, 42, 39, 34, 32, 37, 42, 37, 38, 38, 35, 33, 34, 35, 36, 40, 32.53931 + 37, 38, 44, 43, 37, 36, 42, 35, 36, 37, 37, 37, 38, 40, 42, 37, 32.53932 + 33, 32, 36, 39, 38, 40, 44, 38, 44, 92, 186, 181, 176, 195, 186, 186, 32.53933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 32.53934 + 106, 174, 132, 118, 115, 87, 101, 76, 96, 101, 138, 98, 66, 41, 53, 23, 32.53935 + 64, 32, 32, 43, 41, 40, 39, 35, 29, 35, 44, 32, 35, 38, 38, 35, 32.53936 + 33, 35, 37, 34, 33, 32, 32, 33, 36, 37, 37, 23, 23, 26, 31, 33, 32.53937 + 32, 32, 30, 25, 35, 37, 25, 25, 35, 44, 40, 40, 38, 40, 43, 43, 32.53938 + 39, 38, 40, 42, 42, 41, 40, 40, 39, 38, 37, 38, 38, 37, 35, 33, 32.53939 + 32, 32, 33, 44, 38, 32, 33, 37, 38, 36, 34, 36, 43, 44, 38, 35, 32.53940 + 39, 39, 35, 30, 33, 36, 37, 37, 37, 39, 41, 39, 35, 33, 35, 36, 32.53941 + 36, 38, 40, 27, 40, 89, 203, 196, 189, 208, 200, 189, 255, 255, 255, 255, 32.53942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 101, 116, 154, 121, 32.53943 + 107, 87, 81, 80, 76, 83, 109, 109, 95, 59, 37, 21, 32, 39, 25, 57, 32.53944 + 41, 31, 35, 42, 40, 36, 39, 31, 35, 37, 38, 38, 38, 39, 40, 38, 32.53945 + 36, 32, 32, 33, 35, 36, 35, 34, 27, 28, 32, 36, 33, 29, 25, 24, 32.53946 + 31, 31, 20, 18, 26, 37, 42, 36, 34, 36, 41, 43, 41, 42, 45, 37, 32.53947 + 35, 33, 33, 34, 34, 32, 30, 40, 36, 32, 32, 33, 33, 31, 28, 47, 32.53948 + 36, 28, 31, 38, 40, 38, 35, 31, 42, 43, 33, 32, 41, 42, 34, 30, 32.53949 + 32, 35, 37, 37, 37, 37, 37, 39, 36, 33, 33, 35, 37, 38, 37, 37, 32.53950 + 30, 61, 185, 214, 202, 200, 201, 197, 255, 255, 255, 255, 255, 255, 255, 255, 32.53951 + 255, 255, 255, 255, 255, 255, 255, 227, 156, 107, 136, 123, 104, 88, 73, 92, 32.53952 + 70, 74, 91, 117, 78, 60, 55, 55, 14, 45, 68, 48, 45, 38, 35, 36, 32.53953 + 39, 36, 33, 34, 34, 36, 39, 42, 44, 44, 43, 38, 36, 34, 35, 38, 32.53954 + 39, 37, 35, 41, 34, 34, 37, 37, 31, 23, 21, 21, 25, 29, 26, 20, 32.53955 + 20, 28, 36, 34, 31, 32, 37, 39, 39, 41, 45, 44, 42, 40, 40, 41, 32.53956 + 41, 39, 37, 37, 34, 31, 31, 33, 34, 33, 31, 45, 35, 28, 31, 36, 32.53957 + 37, 38, 40, 37, 37, 36, 34, 34, 36, 36, 34, 31, 32, 34, 37, 38, 32.53958 + 37, 34, 32, 37, 35, 32, 32, 35, 39, 38, 37, 42, 31, 37, 123, 196, 32.53959 + 207, 193, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53960 + 255, 255, 255, 255, 127, 121, 149, 117, 109, 90, 87, 95, 78, 74, 99, 113, 32.53961 + 90, 81, 29, 40, 61, 44, 26, 31, 53, 60, 41, 27, 32, 38, 37, 35, 32.53962 + 36, 36, 40, 46, 49, 48, 46, 35, 35, 37, 41, 46, 47, 44, 38, 34, 32.53963 + 30, 33, 38, 36, 30, 26, 27, 17, 22, 33, 38, 31, 20, 21, 30, 33, 32.53964 + 32, 31, 34, 35, 34, 36, 41, 38, 35, 33, 33, 35, 35, 33, 30, 32, 32.53965 + 33, 33, 33, 33, 34, 36, 37, 42, 34, 30, 33, 34, 33, 37, 44, 46, 32.53966 + 35, 32, 38, 38, 29, 27, 33, 32, 32, 34, 36, 38, 37, 33, 29, 35, 32.53967 + 33, 31, 30, 35, 41, 40, 39, 27, 35, 26, 65, 163, 215, 210, 218, 255, 32.53968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53969 + 106, 107, 158, 126, 108, 85, 81, 88, 84, 82, 92, 116, 87, 59, 51, 53, 32.53970 + 67, 57, 32, 34, 30, 55, 51, 45, 44, 24, 39, 36, 44, 45, 47, 52, 32.53971 + 45, 39, 44, 44, 31, 32, 40, 40, 39, 35, 24, 36, 34, 35, 37, 39, 32.53972 + 38, 31, 24, 15, 23, 36, 38, 28, 16, 21, 33, 29, 33, 34, 34, 33, 32.53973 + 33, 35, 36, 37, 33, 30, 29, 32, 33, 32, 30, 34, 34, 34, 33, 33, 32.53974 + 32, 32, 31, 37, 35, 32, 33, 36, 40, 43, 44, 43, 39, 35, 35, 39, 32.53975 + 40, 36, 31, 33, 32, 31, 34, 37, 38, 35, 32, 35, 39, 38, 35, 35, 32.53976 + 36, 33, 29, 49, 31, 35, 45, 124, 196, 244, 222, 255, 255, 255, 255, 255, 32.53977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 108, 142, 115, 32.53978 + 98, 87, 80, 71, 65, 77, 91, 101, 66, 73, 38, 76, 59, 81, 49, 39, 32.53979 + 37, 49, 48, 43, 37, 24, 32, 39, 42, 36, 37, 47, 46, 43, 50, 53, 32.53980 + 48, 52, 51, 37, 31, 36, 36, 31, 29, 27, 27, 29, 29, 30, 27, 23, 32.53981 + 26, 32, 34, 32, 21, 23, 29, 30, 34, 35, 35, 34, 34, 35, 37, 37, 32.53982 + 34, 31, 31, 32, 34, 33, 31, 33, 33, 33, 32, 32, 32, 32, 32, 32, 32.53983 + 31, 31, 32, 34, 34, 33, 31, 42, 38, 35, 35, 37, 37, 34, 32, 33, 32.53984 + 31, 29, 31, 34, 37, 38, 37, 32, 36, 36, 35, 36, 39, 37, 33, 38, 32.53985 + 30, 28, 28, 65, 113, 141, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53986 + 255, 255, 255, 255, 255, 255, 255, 255, 141, 134, 153, 123, 94, 87, 83, 66, 32.53987 + 67, 88, 92, 96, 79, 76, 64, 64, 63, 70, 54, 40, 43, 40, 48, 46, 32.53988 + 38, 38, 35, 48, 47, 40, 42, 53, 52, 48, 55, 56, 49, 50, 47, 30, 32.53989 + 25, 32, 35, 31, 31, 30, 27, 27, 28, 35, 38, 33, 28, 30, 33, 36, 32.53990 + 27, 24, 25, 31, 35, 36, 36, 35, 35, 36, 37, 36, 34, 32, 32, 33, 32.53991 + 34, 33, 32, 32, 32, 32, 32, 32, 33, 33, 33, 30, 31, 33, 36, 38, 32.53992 + 36, 32, 28, 39, 38, 36, 35, 34, 33, 33, 32, 33, 30, 28, 28, 32, 32.53993 + 37, 40, 41, 32, 37, 36, 35, 34, 38, 38, 35, 34, 40, 39, 40, 48, 32.53994 + 94, 115, 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.53995 + 255, 255, 255, 255, 129, 129, 140, 144, 97, 84, 86, 74, 84, 102, 93, 100, 32.53996 + 95, 84, 81, 53, 52, 47, 42, 37, 44, 30, 46, 52, 45, 59, 48, 51, 32.53997 + 55, 53, 57, 62, 52, 45, 53, 54, 39, 36, 38, 34, 33, 34, 26, 32, 32.53998 + 34, 35, 30, 26, 27, 34, 39, 35, 31, 30, 35, 36, 29, 24, 23, 33, 32.53999 + 36, 37, 37, 35, 35, 36, 38, 33, 33, 32, 32, 32, 33, 32, 32, 32, 32.54000 + 32, 33, 33, 34, 34, 35, 35, 29, 30, 33, 37, 40, 40, 36, 33, 38, 32.54001 + 38, 37, 34, 31, 30, 31, 33, 32, 30, 29, 30, 32, 35, 38, 39, 37, 32.54002 + 40, 38, 35, 33, 36, 36, 32, 24, 37, 33, 43, 46, 108, 132, 137, 255, 32.54003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54004 + 155, 153, 155, 152, 103, 88, 89, 77, 88, 106, 98, 97, 79, 99, 63, 70, 32.54005 + 31, 53, 39, 43, 48, 28, 41, 51, 46, 59, 45, 44, 50, 52, 54, 52, 32.54006 + 38, 35, 51, 45, 34, 35, 41, 38, 37, 37, 30, 28, 32, 35, 29, 22, 32.54007 + 19, 22, 25, 31, 30, 32, 36, 34, 25, 22, 25, 33, 37, 38, 37, 35, 32.54008 + 35, 36, 37, 30, 31, 32, 32, 31, 31, 31, 32, 33, 33, 34, 35, 35, 32.54009 + 36, 36, 36, 30, 30, 31, 33, 35, 36, 35, 33, 39, 39, 37, 33, 30, 32.54010 + 29, 30, 32, 30, 31, 32, 33, 34, 34, 34, 34, 36, 39, 37, 34, 32, 32.54011 + 36, 34, 33, 30, 38, 28, 37, 45, 105, 126, 124, 255, 255, 255, 255, 255, 32.54012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 149, 143, 153, 32.54013 + 118, 104, 97, 80, 85, 105, 112, 92, 79, 91, 69, 63, 39, 51, 48, 54, 32.54014 + 51, 35, 34, 39, 40, 42, 31, 45, 49, 49, 48, 43, 30, 36, 62, 32, 32.54015 + 34, 46, 49, 34, 27, 34, 36, 28, 33, 38, 34, 25, 18, 13, 14, 24, 32.54016 + 27, 34, 38, 35, 26, 23, 26, 33, 36, 37, 36, 35, 34, 34, 36, 29, 32.54017 + 31, 33, 33, 32, 31, 32, 33, 34, 34, 34, 35, 35, 35, 35, 35, 40, 32.54018 + 37, 35, 34, 35, 36, 35, 34, 42, 39, 35, 32, 31, 30, 31, 31, 29, 32.54019 + 31, 34, 35, 34, 32, 32, 33, 31, 35, 33, 32, 31, 37, 37, 35, 39, 32.54020 + 43, 40, 41, 56, 105, 124, 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54021 + 255, 255, 255, 255, 255, 255, 255, 255, 157, 154, 143, 158, 131, 110, 99, 91, 32.54022 + 91, 103, 117, 99, 92, 82, 85, 55, 56, 50, 57, 60, 49, 44, 31, 32, 32.54023 + 38, 28, 24, 52, 53, 51, 51, 48, 34, 39, 64, 27, 29, 43, 47, 32, 32.54024 + 26, 34, 37, 35, 39, 43, 39, 31, 21, 15, 12, 21, 24, 33, 39, 38, 32.54025 + 30, 25, 26, 33, 36, 37, 36, 34, 32, 33, 34, 30, 33, 36, 36, 35, 32.54026 + 33, 34, 36, 33, 33, 33, 33, 33, 32, 32, 32, 42, 40, 38, 38, 39, 32.54027 + 39, 37, 36, 45, 40, 34, 31, 32, 33, 32, 30, 28, 30, 33, 32, 31, 32.54028 + 31, 34, 37, 30, 33, 32, 30, 30, 36, 36, 35, 27, 33, 42, 31, 53, 32.54029 + 93, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54030 + 255, 255, 255, 255, 166, 168, 157, 170, 138, 104, 92, 101, 100, 99, 106, 107, 32.54031 + 83, 97, 70, 79, 50, 70, 63, 57, 42, 46, 25, 27, 43, 26, 29, 50, 32.54032 + 52, 50, 55, 55, 36, 32, 51, 32, 25, 31, 40, 37, 37, 40, 34, 34, 32.54033 + 37, 40, 40, 32, 25, 17, 13, 25, 26, 33, 41, 42, 33, 26, 25, 32, 32.54034 + 35, 36, 35, 33, 32, 32, 34, 31, 35, 38, 37, 37, 33, 36, 38, 32, 32.54035 + 32, 32, 31, 30, 30, 29, 29, 33, 33, 33, 35, 37, 38, 36, 34, 47, 32.54036 + 40, 33, 31, 33, 35, 33, 29, 28, 29, 30, 29, 29, 31, 37, 42, 33, 32.54037 + 36, 33, 29, 28, 31, 32, 31, 33, 39, 51, 27, 46, 81, 136, 255, 255, 32.54038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54039 + 156, 150, 147, 148, 151, 115, 121, 102, 111, 120, 92, 102, 95, 83, 79, 60, 32.54040 + 78, 65, 79, 60, 61, 41, 42, 26, 40, 32, 38, 28, 46, 60, 32, 23, 32.54041 + 42, 39, 39, 34, 30, 29, 31, 31, 34, 39, 45, 26, 25, 29, 31, 29, 32.54042 + 26, 28, 31, 41, 19, 43, 38, 38, 37, 6, 25, 30, 34, 35, 35, 36, 32.54043 + 37, 36, 36, 36, 36, 34, 30, 29, 26, 30, 32, 35, 34, 33, 33, 32, 32.54044 + 31, 30, 30, 32, 32, 33, 34, 35, 35, 36, 37, 36, 36, 34, 33, 31, 32.54045 + 30, 29, 28, 32, 31, 28, 27, 28, 31, 34, 38, 32, 34, 34, 31, 29, 32.54046 + 28, 28, 30, 38, 32, 39, 35, 44, 89, 141, 255, 255, 255, 255, 255, 255, 32.54047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 150, 144, 166, 32.54048 + 162, 118, 124, 113, 122, 136, 118, 90, 86, 80, 75, 56, 71, 61, 77, 57, 32.54049 + 55, 41, 44, 29, 39, 38, 48, 28, 22, 38, 38, 35, 30, 27, 45, 18, 32.54050 + 27, 33, 34, 34, 39, 39, 32, 23, 23, 29, 31, 29, 25, 29, 31, 35, 32.54051 + 17, 45, 40, 38, 36, 7, 25, 29, 34, 34, 35, 36, 37, 35, 35, 34, 32.54052 + 34, 31, 29, 26, 25, 27, 30, 34, 34, 33, 32, 31, 31, 30, 30, 33, 32.54053 + 33, 34, 35, 36, 37, 37, 38, 34, 34, 33, 32, 31, 30, 29, 29, 32, 32.54054 + 30, 29, 28, 28, 31, 34, 38, 39, 39, 37, 34, 32, 32, 29, 27, 18, 32.54055 + 28, 46, 25, 49, 140, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54056 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 168, 195, 162, 159, 118, 135, 132, 32.54057 + 131, 135, 118, 94, 83, 74, 70, 67, 82, 66, 71, 46, 50, 52, 61, 46, 32.54058 + 39, 30, 41, 25, 51, 66, 36, 37, 64, 55, 34, 26, 37, 42, 35, 28, 32.54059 + 27, 24, 12, 22, 23, 31, 34, 29, 22, 23, 28, 23, 12, 40, 41, 39, 32.54060 + 36, 12, 28, 29, 34, 35, 36, 37, 37, 37, 37, 33, 33, 33, 31, 28, 32.54061 + 27, 28, 29, 33, 33, 33, 32, 31, 31, 30, 30, 32, 32, 33, 33, 34, 32.54062 + 35, 35, 36, 32, 32, 31, 31, 30, 30, 30, 29, 31, 30, 29, 28, 29, 32.54063 + 31, 34, 38, 44, 41, 38, 35, 35, 34, 29, 26, 19, 37, 36, 50, 58, 32.54064 + 193, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54065 + 255, 255, 255, 255, 223, 168, 181, 166, 163, 123, 145, 143, 132, 125, 111, 103, 32.54066 + 79, 66, 64, 78, 93, 71, 61, 52, 55, 61, 66, 50, 32, 26, 35, 44, 32.54067 + 42, 53, 49, 49, 54, 37, 37, 29, 31, 31, 26, 24, 26, 31, 31, 21, 32.54068 + 22, 31, 36, 31, 20, 19, 24, 15, 11, 35, 39, 44, 40, 17, 25, 30, 32.54069 + 35, 37, 38, 39, 39, 38, 38, 33, 34, 34, 32, 29, 28, 28, 29, 33, 32.54070 + 32, 32, 31, 31, 30, 30, 30, 29, 29, 29, 30, 30, 31, 31, 31, 30, 32.54071 + 30, 30, 30, 30, 30, 30, 30, 31, 30, 29, 29, 29, 31, 34, 35, 41, 32.54072 + 37, 33, 33, 35, 35, 30, 25, 35, 32, 29, 59, 91, 172, 221, 255, 255, 32.54073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54074 + 183, 171, 178, 190, 186, 134, 147, 146, 137, 129, 123, 96, 75, 71, 63, 75, 32.54075 + 83, 68, 60, 66, 62, 64, 58, 47, 33, 38, 50, 57, 50, 58, 52, 54, 32.54076 + 61, 45, 43, 47, 36, 28, 31, 29, 23, 26, 36, 23, 23, 32, 41, 36, 32.54077 + 20, 16, 20, 14, 15, 31, 40, 48, 43, 24, 22, 31, 36, 39, 41, 41, 32.54078 + 41, 40, 39, 37, 38, 38, 37, 34, 32, 32, 33, 32, 31, 31, 31, 31, 32.54079 + 30, 30, 30, 29, 29, 29, 29, 29, 30, 30, 30, 29, 29, 29, 30, 30, 32.54080 + 30, 31, 31, 30, 30, 29, 29, 30, 32, 33, 34, 39, 36, 32, 34, 37, 32.54081 + 37, 32, 27, 36, 24, 36, 40, 117, 125, 227, 255, 255, 255, 255, 255, 255, 32.54082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 163, 185, 182, 32.54083 + 194, 149, 159, 159, 143, 126, 112, 83, 74, 86, 66, 68, 65, 65, 72, 60, 32.54084 + 62, 74, 66, 68, 54, 54, 49, 57, 71, 75, 41, 49, 84, 79, 57, 53, 32.54085 + 41, 33, 37, 37, 30, 26, 27, 27, 23, 33, 44, 41, 25, 17, 19, 17, 32.54086 + 22, 33, 46, 50, 41, 27, 20, 31, 36, 39, 41, 42, 42, 40, 39, 37, 32.54087 + 38, 39, 38, 35, 33, 33, 33, 31, 31, 31, 30, 30, 30, 30, 30, 31, 32.54088 + 31, 31, 31, 32, 32, 32, 32, 30, 30, 30, 30, 31, 31, 31, 31, 30, 32.54089 + 30, 30, 30, 31, 32, 33, 34, 38, 36, 34, 37, 38, 39, 34, 31, 22, 32.54090 + 46, 25, 51, 82, 153, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54091 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 177, 179, 158, 190, 156, 169, 168, 32.54092 + 143, 108, 83, 78, 70, 84, 60, 66, 61, 66, 73, 67, 70, 81, 67, 77, 32.54093 + 65, 59, 39, 71, 49, 48, 46, 56, 64, 67, 86, 45, 47, 43, 41, 50, 32.54094 + 62, 59, 43, 30, 22, 31, 48, 47, 29, 17, 17, 19, 33, 43, 53, 48, 32.54095 + 35, 29, 23, 29, 33, 36, 38, 41, 40, 38, 37, 38, 39, 41, 40, 37, 32.54096 + 35, 34, 34, 30, 30, 30, 30, 30, 30, 30, 30, 32, 32, 32, 32, 32, 32.54097 + 32, 32, 32, 32, 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 30, 31, 32.54098 + 32, 33, 33, 36, 37, 37, 39, 37, 35, 32, 30, 23, 57, 21, 63, 42, 32.54099 + 203, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54100 + 255, 255, 255, 255, 255, 154, 166, 156, 196, 157, 162, 158, 134, 98, 75, 79, 32.54101 + 57, 64, 44, 64, 63, 63, 60, 99, 90, 80, 47, 58, 57, 62, 43, 68, 32.54102 + 69, 65, 38, 45, 83, 91, 90, 92, 99, 83, 54, 55, 76, 66, 31, 31, 32.54103 + 22, 31, 48, 49, 31, 17, 16, 17, 38, 52, 58, 45, 28, 29, 26, 27, 32.54104 + 29, 34, 37, 38, 38, 36, 35, 36, 38, 40, 39, 36, 34, 32, 32, 30, 32.54105 + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 33, 32.54106 + 33, 33, 32, 32, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 33, 34, 32.54107 + 37, 37, 37, 33, 29, 26, 25, 40, 32, 42, 31, 50, 197, 255, 255, 255, 32.54108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54109 + 255, 200, 162, 169, 197, 183, 179, 146, 107, 57, 68, 53, 45, 41, 49, 39, 32.54110 + 71, 63, 68, 86, 84, 123, 63, 68, 53, 41, 50, 68, 55, 103, 49, 49, 32.54111 + 66, 72, 97, 91, 99, 104, 95, 74, 54, 42, 38, 32, 34, 26, 32, 45, 32.54112 + 27, 8, 17, 44, 48, 52, 47, 38, 27, 25, 25, 29, 26, 28, 33, 35, 32.54113 + 34, 33, 34, 33, 32, 32, 34, 37, 37, 34, 32, 33, 32, 32, 31, 31, 32.54114 + 30, 30, 29, 31, 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 32.54115 + 30, 30, 30, 29, 29, 30, 31, 31, 32, 33, 33, 30, 45, 39, 44, 28, 32.54116 + 19, 36, 22, 33, 21, 48, 35, 49, 198, 255, 255, 255, 255, 255, 255, 255, 32.54117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 156, 169, 32.54118 + 175, 179, 151, 147, 97, 67, 52, 43, 25, 32, 31, 39, 62, 63, 91, 98, 32.54119 + 93, 129, 40, 23, 69, 44, 60, 72, 103, 63, 66, 35, 73, 54, 93, 67, 32.54120 + 76, 94, 90, 90, 72, 71, 63, 44, 42, 30, 28, 35, 22, 17, 35, 44, 32.54121 + 48, 51, 46, 37, 28, 23, 22, 24, 22, 23, 28, 31, 28, 27, 29, 34, 32.54122 + 33, 34, 35, 35, 35, 31, 28, 30, 30, 30, 30, 29, 29, 29, 29, 31, 32.54123 + 32, 32, 33, 33, 32, 32, 31, 30, 30, 30, 30, 30, 30, 30, 30, 29, 32.54124 + 29, 30, 31, 31, 32, 33, 33, 38, 35, 25, 42, 40, 28, 35, 23, 17, 32.54125 + 45, 36, 55, 40, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 164, 203, 182, 162, 109, 94, 32.54127 + 60, 50, 30, 34, 15, 35, 30, 46, 54, 51, 115, 95, 86, 85, 46, 55, 32.54128 + 45, 88, 79, 62, 115, 48, 63, 61, 64, 63, 78, 75, 74, 87, 73, 80, 32.54129 + 59, 62, 49, 45, 40, 31, 24, 26, 22, 30, 49, 45, 47, 49, 43, 33, 32.54130 + 26, 23, 23, 26, 24, 26, 30, 32, 28, 29, 31, 33, 32, 33, 33, 33, 32.54131 + 33, 29, 26, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 33, 33, 33, 32.54132 + 33, 32, 32, 31, 31, 31, 31, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32.54133 + 32, 33, 33, 37, 41, 31, 33, 27, 23, 34, 32, 38, 27, 24, 74, 127, 32.54134 + 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54135 + 255, 255, 255, 255, 255, 197, 195, 225, 207, 156, 110, 50, 55, 51, 50, 38, 32.54136 + 26, 46, 47, 45, 44, 31, 125, 114, 90, 48, 54, 52, 37, 66, 49, 45, 32.54137 + 89, 57, 78, 83, 72, 81, 73, 68, 58, 62, 46, 62, 53, 66, 60, 32, 32.54138 + 30, 28, 27, 28, 26, 35, 49, 50, 49, 45, 35, 26, 23, 25, 25, 28, 32.54139 + 26, 28, 31, 31, 28, 27, 32, 27, 28, 29, 31, 34, 34, 31, 31, 33, 32.54140 + 33, 34, 35, 35, 36, 36, 36, 32, 32, 33, 34, 34, 33, 32, 32, 32, 32.54141 + 32, 32, 32, 31, 31, 31, 31, 29, 29, 30, 31, 31, 32, 33, 33, 30, 32.54142 + 45, 39, 27, 25, 30, 31, 25, 35, 25, 87, 166, 221, 183, 255, 255, 255, 32.54143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54144 + 255, 205, 207, 163, 161, 128, 88, 26, 32, 37, 47, 47, 44, 47, 54, 27, 32.54145 + 31, 25, 133, 135, 93, 69, 54, 32, 114, 41, 48, 43, 66, 65, 113, 65, 32.54146 + 95, 79, 73, 73, 61, 56, 45, 59, 59, 70, 66, 34, 27, 27, 28, 27, 32.54147 + 32, 40, 44, 57, 50, 39, 28, 19, 20, 26, 29, 26, 22, 26, 29, 28, 32.54148 + 23, 24, 29, 26, 28, 28, 32, 34, 34, 31, 31, 34, 34, 35, 35, 36, 32.54149 + 37, 37, 37, 32, 33, 34, 34, 34, 34, 33, 32, 34, 34, 33, 33, 32, 32.54150 + 32, 31, 31, 29, 29, 30, 31, 31, 32, 33, 33, 33, 35, 31, 33, 43, 32.54151 + 41, 32, 45, 55, 86, 143, 219, 222, 214, 255, 255, 255, 255, 255, 255, 255, 32.54152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 188, 176, 32.54153 + 168, 154, 97, 74, 48, 60, 64, 54, 48, 32, 33, 12, 21, 53, 145, 135, 32.54154 + 85, 86, 59, 105, 109, 62, 52, 54, 47, 81, 102, 53, 78, 68, 59, 91, 32.54155 + 83, 67, 62, 55, 55, 48, 42, 46, 32, 31, 27, 23, 32, 46, 46, 60, 32.54156 + 51, 36, 23, 16, 19, 28, 32, 29, 26, 29, 32, 28, 24, 26, 32, 30, 32.54157 + 31, 30, 33, 35, 34, 30, 27, 31, 33, 33, 33, 34, 34, 34, 34, 33, 32.54158 + 33, 34, 34, 34, 34, 33, 33, 35, 35, 34, 34, 33, 32, 32, 31, 29, 32.54159 + 29, 30, 31, 31, 32, 33, 33, 41, 30, 31, 37, 36, 18, 39, 118, 132, 32.54160 + 178, 198, 191, 199, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 227, 212, 196, 171, 130, 135, 32.54162 + 99, 79, 72, 60, 43, 23, 10, 23, 27, 105, 156, 139, 105, 70, 49, 129, 32.54163 + 29, 49, 29, 59, 55, 83, 91, 62, 67, 56, 51, 80, 78, 57, 65, 44, 32.54164 + 58, 42, 44, 44, 32, 34, 31, 22, 33, 53, 54, 59, 50, 36, 24, 18, 32.54165 + 21, 29, 30, 33, 31, 34, 36, 31, 27, 29, 36, 32, 31, 33, 35, 35, 32.54166 + 35, 31, 29, 32, 34, 34, 33, 33, 33, 33, 33, 33, 34, 34, 35, 35, 32.54167 + 34, 34, 33, 36, 36, 35, 34, 33, 32, 32, 31, 29, 29, 30, 31, 31, 32.54168 + 32, 33, 33, 41, 38, 41, 35, 32, 21, 45, 133, 131, 188, 201, 190, 206, 32.54169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54170 + 255, 255, 255, 255, 255, 255, 225, 227, 224, 188, 203, 212, 193, 120, 101, 61, 32.54171 + 33, 23, 0, 46, 37, 146, 158, 143, 138, 66, 36, 63, 56, 47, 76, 55, 32.54172 + 93, 62, 123, 61, 99, 42, 61, 85, 84, 50, 62, 30, 52, 34, 42, 29, 32.54173 + 24, 37, 37, 20, 31, 56, 57, 57, 49, 36, 26, 20, 20, 25, 25, 30, 32.54174 + 28, 31, 34, 28, 22, 25, 30, 27, 27, 29, 31, 33, 32, 32, 31, 33, 32.54175 + 34, 34, 33, 33, 32, 32, 31, 31, 32, 32, 35, 35, 34, 34, 33, 37, 32.54176 + 36, 35, 35, 34, 33, 32, 32, 29, 29, 30, 31, 31, 32, 33, 33, 34, 32.54177 + 41, 42, 33, 61, 70, 41, 58, 57, 91, 60, 189, 218, 255, 255, 255, 255, 32.54178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54179 + 255, 255, 221, 215, 217, 198, 191, 183, 166, 158, 138, 97, 31, 0, 29, 35, 32.54180 + 91, 186, 151, 126, 90, 52, 62, 44, 41, 36, 65, 41, 51, 68, 69, 105, 32.54181 + 141, 75, 104, 81, 63, 60, 58, 41, 28, 36, 46, 36, 23, 33, 37, 21, 32.54182 + 29, 54, 59, 49, 51, 41, 24, 14, 17, 23, 24, 26, 27, 30, 32, 30, 32.54183 + 28, 28, 28, 24, 23, 24, 31, 33, 29, 27, 29, 40, 39, 35, 32, 32, 32.54184 + 32, 33, 34, 31, 32, 31, 30, 26, 26, 29, 33, 30, 27, 28, 32, 32, 32.54185 + 29, 28, 31, 24, 27, 30, 30, 30, 30, 33, 38, 52, 52, 54, 61, 68, 32.54186 + 69, 61, 49, 53, 40, 67, 71, 211, 255, 255, 255, 255, 255, 255, 255, 255, 32.54187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 224, 32.54188 + 234, 174, 155, 202, 200, 166, 144, 91, 12, 11, 39, 40, 111, 169, 166, 133, 32.54189 + 99, 57, 59, 42, 45, 43, 66, 44, 46, 88, 77, 114, 114, 55, 61, 69, 32.54190 + 55, 59, 65, 51, 35, 35, 36, 39, 24, 29, 28, 15, 26, 60, 72, 53, 32.54191 + 47, 33, 16, 13, 18, 22, 22, 27, 30, 33, 33, 31, 29, 30, 30, 30, 32.54192 + 25, 27, 30, 32, 29, 29, 32, 36, 35, 34, 31, 29, 31, 33, 34, 33, 32.54193 + 34, 35, 32, 29, 30, 32, 34, 35, 32, 32, 35, 34, 30, 29, 31, 39, 32.54194 + 36, 32, 31, 34, 38, 41, 42, 56, 60, 58, 59, 64, 71, 69, 61, 51, 32.54195 + 62, 72, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 202, 179, 187, 209, 194, 32.54197 + 202, 207, 143, 104, 46, 75, 76, 58, 150, 157, 165, 123, 95, 58, 50, 39, 32.54198 + 44, 41, 50, 77, 53, 70, 62, 69, 83, 46, 61, 61, 49, 55, 62, 51, 32.54199 + 38, 34, 33, 37, 27, 31, 28, 17, 25, 56, 72, 59, 45, 26, 12, 15, 32.54200 + 23, 26, 23, 27, 30, 32, 33, 33, 30, 31, 31, 35, 29, 29, 32, 33, 32.54201 + 32, 32, 35, 33, 34, 33, 31, 30, 32, 33, 33, 35, 36, 38, 36, 33, 32.54202 + 32, 33, 34, 39, 36, 36, 38, 37, 32, 31, 33, 35, 31, 28, 32, 41, 32.54203 + 50, 55, 56, 54, 64, 68, 65, 69, 80, 82, 74, 62, 79, 71, 255, 255, 32.54204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54205 + 255, 255, 255, 255, 255, 255, 185, 183, 191, 197, 212, 204, 180, 181, 172, 91, 32.54206 + 98, 141, 116, 78, 177, 155, 140, 101, 84, 59, 47, 42, 46, 38, 32, 75, 32.54207 + 50, 43, 80, 45, 88, 38, 54, 64, 46, 46, 50, 43, 34, 36, 33, 30, 32.54208 + 31, 38, 37, 26, 24, 40, 52, 56, 42, 25, 14, 18, 24, 25, 23, 26, 32.54209 + 29, 32, 32, 32, 30, 30, 30, 33, 28, 29, 32, 34, 32, 31, 34, 31, 32.54210 + 33, 32, 33, 32, 33, 33, 35, 36, 38, 38, 39, 37, 35, 33, 34, 39, 32.54211 + 36, 37, 40, 39, 35, 34, 36, 26, 26, 28, 35, 44, 54, 62, 66, 58, 32.54212 + 75, 83, 76, 74, 81, 78, 66, 51, 52, 118, 255, 255, 255, 255, 255, 255, 32.54213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54214 + 255, 255, 206, 210, 201, 170, 154, 149, 150, 155, 133, 53, 112, 154, 144, 103, 32.54215 + 172, 153, 124, 92, 80, 64, 46, 49, 50, 45, 34, 79, 47, 32, 73, 39, 32.54216 + 83, 43, 50, 64, 47, 45, 46, 39, 32, 36, 32, 27, 33, 38, 37, 31, 32.54217 + 23, 29, 39, 40, 31, 23, 17, 19, 20, 23, 25, 27, 30, 32, 33, 31, 32.54218 + 28, 29, 29, 31, 27, 28, 33, 37, 33, 30, 30, 30, 32, 32, 34, 33, 32.54219 + 34, 33, 34, 34, 36, 35, 37, 36, 34, 32, 33, 34, 34, 35, 39, 40, 32.54220 + 37, 37, 39, 34, 36, 37, 37, 40, 51, 67, 79, 72, 84, 86, 73, 64, 32.54221 + 63, 59, 47, 54, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 227, 32.54223 + 213, 200, 183, 159, 181, 179, 88, 50, 115, 150, 167, 139, 158, 146, 125, 89, 32.54224 + 76, 62, 39, 45, 45, 50, 43, 82, 43, 41, 46, 43, 56, 49, 43, 54, 32.54225 + 44, 49, 53, 44, 36, 35, 30, 30, 34, 30, 27, 30, 25, 28, 41, 24, 32.54226 + 20, 20, 19, 20, 18, 22, 28, 29, 32, 35, 35, 33, 31, 32, 31, 32, 32.54227 + 30, 31, 37, 40, 36, 32, 32, 31, 31, 33, 33, 34, 34, 32, 33, 33, 32.54228 + 32, 31, 33, 35, 35, 34, 34, 33, 33, 35, 39, 41, 38, 38, 41, 40, 32.54229 + 41, 41, 39, 41, 55, 79, 97, 73, 74, 68, 56, 48, 49, 51, 52, 123, 32.54230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 171, 215, 181, 162, 197, 32.54232 + 182, 118, 67, 77, 127, 159, 167, 158, 157, 139, 121, 80, 66, 59, 35, 42, 32.54233 + 34, 44, 39, 45, 32, 50, 48, 56, 48, 38, 21, 42, 39, 49, 52, 43, 32.54234 + 34, 35, 29, 32, 35, 25, 22, 33, 29, 28, 42, 27, 22, 21, 23, 24, 32.54235 + 21, 23, 29, 29, 30, 32, 33, 33, 30, 31, 31, 33, 30, 32, 36, 38, 32.54236 + 34, 32, 33, 30, 31, 35, 35, 34, 31, 30, 30, 32, 31, 29, 29, 33, 32.54237 + 35, 36, 37, 36, 36, 37, 41, 41, 39, 38, 41, 37, 41, 44, 46, 48, 32.54238 + 57, 70, 81, 62, 54, 48, 46, 46, 45, 54, 127, 255, 255, 255, 255, 255, 32.54239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54240 + 255, 255, 255, 255, 255, 255, 255, 231, 199, 158, 170, 191, 172, 132, 81, 85, 32.54241 + 130, 164, 143, 151, 164, 135, 109, 72, 61, 62, 41, 48, 31, 39, 34, 38, 32.54242 + 40, 31, 34, 22, 44, 38, 44, 35, 34, 42, 45, 33, 29, 33, 30, 32, 32.54243 + 36, 26, 24, 39, 32, 25, 36, 41, 31, 27, 27, 28, 24, 24, 26, 26, 32.54244 + 27, 30, 30, 30, 28, 29, 28, 35, 30, 30, 32, 34, 32, 32, 35, 30, 32.54245 + 31, 34, 34, 34, 31, 28, 27, 33, 29, 28, 28, 33, 36, 38, 39, 39, 32.54246 + 39, 39, 42, 42, 39, 38, 40, 40, 45, 52, 56, 54, 48, 41, 37, 63, 32.54247 + 52, 48, 52, 52, 44, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54249 + 255, 255, 255, 255, 194, 170, 162, 173, 172, 121, 64, 88, 166, 143, 143, 174, 32.54250 + 145, 120, 103, 72, 52, 42, 47, 49, 40, 37, 43, 31, 35, 40, 41, 37, 32.54251 + 34, 32, 33, 35, 33, 35, 40, 41, 37, 27, 20, 27, 30, 31, 29, 31, 32.54252 + 34, 34, 27, 32, 34, 36, 31, 26, 23, 25, 27, 29, 30, 33, 33, 31, 32.54253 + 28, 28, 27, 32, 30, 30, 30, 33, 37, 41, 43, 31, 31, 34, 32, 31, 32.54254 + 29, 29, 31, 36, 39, 41, 36, 35, 35, 34, 32, 43, 41, 44, 44, 42, 32.54255 + 50, 50, 36, 57, 47, 41, 42, 42, 38, 38, 41, 46, 46, 45, 46, 48, 32.54256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54258 + 255, 216, 214, 197, 147, 106, 78, 112, 168, 155, 156, 167, 149, 132, 89, 62, 32.54259 + 69, 65, 47, 35, 37, 38, 35, 32, 36, 40, 42, 42, 41, 40, 39, 42, 32.54260 + 35, 30, 30, 32, 35, 34, 33, 30, 32, 32, 29, 31, 33, 34, 28, 31, 32.54261 + 35, 39, 36, 31, 27, 27, 26, 26, 27, 29, 28, 26, 25, 27, 29, 34, 32.54262 + 33, 33, 31, 34, 35, 37, 37, 32, 32, 33, 31, 30, 28, 32, 36, 35, 32.54263 + 38, 37, 35, 35, 39, 37, 35, 42, 38, 39, 42, 45, 57, 59, 46, 49, 32.54264 + 42, 38, 40, 42, 40, 39, 42, 40, 40, 40, 113, 255, 255, 255, 255, 255, 32.54265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 223, 32.54267 + 158, 121, 97, 135, 158, 149, 151, 148, 143, 141, 92, 55, 64, 62, 44, 34, 32.54268 + 38, 39, 33, 35, 36, 38, 41, 41, 41, 39, 35, 42, 36, 27, 26, 30, 32.54269 + 36, 40, 41, 32, 34, 33, 29, 29, 32, 34, 29, 30, 34, 39, 38, 34, 32.54270 + 29, 27, 25, 26, 25, 25, 24, 24, 25, 27, 30, 36, 35, 35, 33, 32, 32.54271 + 31, 31, 31, 33, 31, 31, 30, 29, 29, 35, 39, 36, 38, 35, 33, 37, 32.54272 + 42, 40, 36, 45, 37, 39, 43, 47, 59, 63, 52, 41, 37, 36, 39, 42, 32.54273 + 41, 41, 43, 36, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 192, 127, 112, 100, 148, 32.54276 + 148, 135, 149, 159, 147, 136, 102, 61, 48, 42, 48, 50, 44, 39, 40, 40, 32.54277 + 38, 37, 39, 41, 38, 34, 30, 36, 33, 32, 32, 35, 37, 37, 38, 34, 32.54278 + 34, 33, 28, 26, 29, 33, 29, 29, 32, 36, 34, 32, 28, 26, 23, 26, 32.54279 + 26, 27, 27, 28, 28, 31, 33, 35, 34, 35, 34, 33, 31, 30, 30, 30, 32.54280 + 29, 31, 31, 31, 32, 34, 38, 38, 39, 38, 38, 42, 46, 41, 36, 45, 32.54281 + 40, 44, 47, 44, 50, 54, 47, 37, 36, 37, 39, 41, 42, 42, 43, 37, 32.54282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54284 + 255, 255, 255, 255, 255, 255, 184, 189, 139, 131, 110, 129, 107, 78, 113, 163, 32.54285 + 144, 106, 91, 79, 70, 65, 65, 59, 48, 41, 40, 44, 43, 42, 41, 43, 32.54286 + 43, 39, 33, 34, 34, 35, 36, 37, 36, 34, 32, 32, 34, 33, 27, 25, 32.54287 + 27, 31, 29, 33, 33, 34, 31, 30, 28, 28, 27, 23, 25, 29, 31, 30, 32.54288 + 30, 31, 31, 30, 30, 32, 31, 33, 32, 31, 31, 25, 28, 33, 33, 33, 32.54289 + 32, 32, 33, 33, 37, 42, 45, 49, 53, 48, 40, 42, 41, 49, 51, 40, 32.54290 + 38, 44, 42, 38, 40, 41, 40, 40, 41, 41, 41, 255, 255, 255, 255, 255, 32.54291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54293 + 255, 255, 153, 166, 155, 155, 130, 122, 80, 44, 85, 158, 158, 128, 133, 102, 32.54294 + 123, 123, 89, 57, 48, 43, 35, 39, 38, 38, 40, 41, 40, 39, 37, 40, 32.54295 + 36, 33, 31, 30, 31, 33, 34, 30, 33, 35, 29, 26, 28, 32, 30, 37, 32.54296 + 35, 35, 32, 32, 32, 32, 30, 22, 24, 29, 31, 31, 29, 29, 29, 30, 32.54297 + 29, 30, 30, 31, 32, 33, 33, 24, 27, 33, 36, 36, 33, 32, 32, 30, 32.54298 + 38, 47, 50, 54, 57, 58, 53, 43, 40, 48, 51, 39, 34, 40, 41, 40, 32.54299 + 44, 43, 39, 37, 38, 40, 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 191, 32.54302 + 170, 151, 124, 71, 48, 56, 92, 125, 134, 131, 139, 120, 146, 147, 106, 64, 32.54303 + 49, 42, 35, 34, 37, 39, 36, 35, 35, 36, 35, 38, 37, 33, 28, 27, 32.54304 + 29, 33, 35, 29, 34, 37, 33, 30, 30, 35, 33, 35, 34, 35, 34, 35, 32.54305 + 34, 32, 28, 25, 25, 30, 31, 30, 29, 31, 32, 32, 30, 30, 28, 28, 32.54306 + 28, 30, 31, 28, 30, 34, 36, 35, 32, 32, 34, 36, 45, 54, 52, 52, 32.54307 + 57, 63, 61, 56, 44, 45, 47, 39, 36, 41, 40, 40, 44, 43, 36, 33, 32.54308 + 36, 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 180, 179, 136, 88, 62, 32.54311 + 84, 162, 194, 161, 149, 153, 145, 130, 133, 130, 111, 81, 54, 42, 44, 41, 32.54312 + 43, 45, 42, 36, 33, 35, 37, 31, 33, 34, 34, 31, 30, 31, 32, 28, 32.54313 + 35, 38, 36, 33, 33, 35, 36, 30, 31, 33, 34, 36, 33, 29, 23, 33, 32.54314 + 32, 33, 32, 30, 31, 33, 36, 33, 31, 28, 25, 24, 27, 29, 31, 32, 32.54315 + 35, 35, 37, 35, 36, 38, 39, 49, 59, 61, 55, 51, 53, 61, 62, 71, 32.54316 + 51, 43, 44, 40, 39, 42, 38, 38, 43, 41, 33, 29, 255, 255, 255, 255, 32.54317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54319 + 255, 255, 255, 255, 255, 255, 230, 189, 168, 118, 78, 66, 195, 193, 178, 157, 32.54320 + 158, 158, 145, 161, 150, 139, 106, 61, 50, 50, 33, 45, 41, 34, 31, 31, 32.54321 + 34, 34, 36, 27, 28, 27, 29, 30, 31, 31, 29, 31, 31, 30, 29, 28, 32.54322 + 30, 32, 36, 27, 32, 35, 31, 32, 36, 35, 30, 34, 24, 22, 29, 36, 32.54323 + 32, 27, 26, 30, 30, 29, 26, 28, 33, 30, 26, 36, 32, 36, 42, 39, 32.54324 + 30, 38, 56, 45, 56, 54, 57, 63, 52, 56, 87, 50, 43, 39, 40, 40, 32.54325 + 36, 32, 32, 44, 44, 43, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54328 + 255, 255, 195, 176, 152, 88, 72, 189, 199, 143, 101, 131, 152, 177, 159, 131, 32.54329 + 126, 119, 89, 53, 45, 50, 38, 43, 39, 34, 32, 33, 35, 34, 35, 39, 32.54330 + 38, 34, 33, 33, 33, 34, 33, 30, 28, 30, 29, 29, 28, 31, 32, 27, 32.54331 + 31, 33, 31, 32, 36, 35, 31, 32, 26, 23, 29, 33, 29, 24, 24, 26, 32.54332 + 28, 30, 27, 29, 31, 30, 27, 34, 33, 35, 40, 39, 37, 44, 57, 55, 32.54333 + 43, 60, 64, 50, 69, 82, 50, 49, 42, 38, 40, 40, 36, 34, 34, 41, 32.54334 + 41, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 167, 32.54337 + 118, 86, 151, 180, 143, 89, 70, 113, 162, 151, 94, 126, 120, 111, 82, 50, 32.54338 + 40, 43, 37, 39, 38, 34, 33, 34, 36, 34, 34, 43, 40, 35, 31, 29, 32.54339 + 28, 29, 28, 29, 28, 30, 30, 31, 30, 31, 30, 29, 31, 32, 29, 31, 32.54340 + 33, 34, 31, 29, 27, 26, 29, 30, 26, 24, 26, 24, 29, 33, 30, 30, 32.54341 + 31, 32, 29, 32, 34, 35, 38, 39, 43, 50, 56, 51, 55, 52, 53, 72, 32.54342 + 80, 61, 39, 46, 40, 38, 40, 40, 37, 36, 38, 39, 111, 255, 255, 255, 32.54343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 148, 106, 90, 160, 148, 32.54346 + 110, 46, 33, 33, 156, 161, 122, 131, 124, 107, 79, 52, 40, 39, 36, 37, 32.54347 + 36, 34, 34, 36, 36, 33, 32, 39, 37, 33, 31, 28, 26, 24, 22, 29, 32.54348 + 27, 29, 30, 32, 31, 31, 30, 31, 31, 31, 29, 31, 31, 33, 30, 29, 32.54349 + 29, 31, 31, 27, 25, 25, 28, 26, 33, 34, 31, 28, 32, 33, 35, 35, 32.54350 + 39, 40, 38, 42, 50, 56, 55, 55, 60, 50, 58, 83, 63, 36, 47, 43, 32.54351 + 39, 38, 40, 41, 38, 38, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54354 + 255, 255, 255, 255, 255, 255, 218, 139, 100, 122, 171, 97, 80, 67, 72, 48, 32.54355 + 147, 169, 144, 118, 110, 88, 64, 47, 38, 36, 41, 34, 36, 34, 35, 36, 32.54356 + 36, 32, 30, 36, 38, 38, 39, 37, 33, 29, 24, 30, 29, 29, 31, 33, 32.54357 + 32, 31, 30, 33, 31, 30, 30, 31, 30, 30, 31, 31, 33, 35, 32, 27, 32.54358 + 27, 28, 30, 31, 34, 35, 30, 28, 32, 37, 40, 37, 42, 45, 44, 47, 32.54359 + 53, 58, 55, 67, 49, 66, 78, 50, 39, 49, 41, 41, 38, 38, 41, 41, 32.54360 + 39, 40, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54363 + 255, 255, 195, 141, 113, 119, 85, 108, 51, 50, 35, 34, 72, 165, 170, 116, 32.54364 + 102, 70, 46, 43, 37, 29, 37, 36, 37, 34, 34, 35, 34, 31, 29, 33, 32.54365 + 36, 39, 42, 41, 37, 32, 29, 33, 29, 28, 29, 32, 34, 33, 30, 35, 32.54366 + 31, 30, 30, 31, 28, 29, 30, 31, 34, 36, 30, 27, 29, 30, 30, 31, 32.54367 + 35, 34, 30, 30, 35, 38, 40, 39, 44, 50, 54, 56, 55, 58, 60, 60, 32.54368 + 71, 75, 58, 37, 38, 47, 43, 40, 38, 39, 42, 41, 39, 255, 255, 255, 32.54369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 151, 32.54372 + 83, 89, 74, 83, 26, 23, 8, 19, 19, 139, 153, 124, 104, 64, 37, 43, 32.54373 + 38, 26, 34, 38, 39, 35, 33, 33, 33, 29, 28, 31, 34, 36, 39, 39, 32.54374 + 36, 32, 29, 35, 30, 27, 28, 33, 35, 34, 31, 36, 31, 28, 29, 29, 32.54375 + 25, 26, 31, 31, 33, 32, 27, 26, 28, 30, 28, 29, 32, 32, 31, 35, 32.54376 + 40, 39, 37, 37, 41, 52, 61, 61, 54, 56, 65, 62, 84, 60, 34, 48, 32.54377 + 47, 33, 47, 39, 38, 40, 42, 112, 255, 255, 255, 255, 255, 255, 255, 255, 32.54378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 197, 86, 72, 82, 46, 32.54381 + 29, 24, 35, 26, 33, 136, 140, 121, 100, 56, 32, 44, 41, 31, 38, 42, 32.54382 + 40, 35, 32, 32, 32, 29, 27, 35, 37, 37, 38, 38, 36, 33, 32, 36, 32.54383 + 31, 26, 26, 32, 34, 35, 31, 37, 31, 28, 30, 29, 25, 26, 30, 29, 32.54384 + 32, 31, 25, 23, 29, 30, 28, 28, 31, 33, 35, 41, 43, 40, 33, 34, 32.54385 + 38, 51, 67, 65, 54, 57, 69, 90, 52, 41, 49, 44, 46, 49, 39, 40, 32.54386 + 39, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54389 + 255, 255, 255, 255, 255, 255, 224, 225, 125, 87, 81, 60, 38, 66, 52, 104, 32.54390 + 45, 133, 175, 116, 93, 70, 55, 49, 41, 34, 33, 44, 42, 37, 36, 35, 32.54391 + 31, 24, 19, 29, 33, 36, 41, 43, 41, 38, 35, 35, 30, 30, 34, 37, 32.54392 + 33, 35, 40, 36, 34, 34, 31, 29, 29, 29, 29, 30, 28, 28, 28, 28, 32.54393 + 28, 30, 30, 36, 33, 37, 42, 42, 36, 34, 38, 50, 36, 39, 56, 61, 32.54394 + 68, 81, 87, 57, 54, 49, 47, 45, 44, 43, 42, 40, 38, 111, 255, 255, 32.54395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54398 + 255, 255, 241, 240, 184, 154, 125, 83, 90, 110, 143, 163, 87, 165, 159, 123, 32.54399 + 92, 61, 45, 43, 44, 44, 43, 41, 40, 38, 39, 40, 39, 33, 29, 28, 32.54400 + 31, 34, 38, 40, 39, 36, 35, 33, 29, 29, 33, 35, 32, 32, 36, 38, 32.54401 + 36, 35, 32, 30, 29, 28, 26, 29, 29, 29, 29, 29, 29, 31, 33, 38, 32.54402 + 36, 39, 42, 41, 35, 32, 34, 40, 31, 35, 47, 59, 76, 85, 77, 55, 32.54403 + 52, 47, 44, 41, 42, 42, 42, 114, 255, 255, 255, 255, 255, 255, 255, 255, 32.54404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 229, 32.54407 + 229, 240, 222, 205, 190, 189, 207, 184, 141, 182, 184, 144, 106, 65, 45, 44, 32.54408 + 46, 43, 39, 36, 36, 36, 38, 39, 38, 32, 29, 28, 29, 30, 33, 35, 32.54409 + 35, 35, 34, 32, 30, 30, 33, 33, 30, 29, 31, 35, 34, 33, 31, 31, 32.54410 + 30, 30, 31, 30, 28, 28, 28, 28, 30, 32, 34, 34, 35, 38, 40, 40, 32.54411 + 36, 35, 35, 42, 37, 38, 40, 53, 75, 76, 53, 53, 51, 46, 43, 40, 32.54412 + 41, 41, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 201, 186, 217, 32.54416 + 196, 224, 223, 197, 197, 148, 180, 148, 109, 67, 50, 50, 49, 40, 31, 39, 32.54417 + 39, 38, 38, 36, 33, 27, 25, 27, 28, 27, 28, 30, 32, 33, 34, 31, 32.54418 + 31, 31, 32, 32, 30, 28, 28, 29, 29, 30, 32, 34, 35, 37, 36, 30, 32.54419 + 30, 30, 30, 30, 30, 34, 36, 28, 32, 36, 39, 41, 41, 41, 41, 45, 32.54420 + 39, 40, 45, 50, 63, 63, 44, 48, 49, 48, 47, 44, 43, 112, 255, 255, 32.54421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 205, 32.54425 + 209, 120, 155, 130, 95, 58, 44, 47, 48, 42, 35, 44, 44, 43, 40, 37, 32.54426 + 34, 29, 28, 27, 27, 25, 26, 27, 30, 32, 34, 32, 35, 35, 34, 33, 32.54427 + 33, 30, 29, 27, 28, 30, 33, 35, 37, 36, 37, 31, 30, 30, 30, 31, 32.54428 + 31, 35, 37, 31, 36, 38, 40, 42, 43, 45, 44, 38, 30, 40, 54, 53, 32.54429 + 52, 57, 57, 41, 46, 48, 50, 46, 114, 255, 255, 255, 255, 255, 255, 255, 32.54430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 182, 147, 152, 123, 32.54434 + 92, 57, 40, 39, 40, 41, 40, 40, 40, 38, 36, 33, 31, 30, 32, 28, 32.54435 + 27, 25, 26, 27, 30, 33, 34, 35, 36, 35, 32, 32, 35, 33, 31, 31, 32.54436 + 32, 33, 34, 34, 34, 32, 29, 30, 30, 30, 30, 31, 31, 33, 37, 36, 32.54437 + 42, 42, 40, 40, 44, 44, 40, 43, 36, 48, 60, 51, 43, 51, 58, 37, 32.54438 + 43, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54442 + 255, 255, 255, 255, 255, 255, 255, 236, 178, 171, 131, 113, 88, 61, 44, 39, 32.54443 + 35, 35, 38, 35, 36, 33, 30, 27, 27, 29, 33, 28, 28, 26, 27, 29, 32.54444 + 31, 33, 35, 34, 36, 34, 29, 29, 35, 35, 33, 32, 33, 33, 34, 32, 32.54445 + 31, 29, 26, 29, 27, 27, 27, 29, 30, 32, 36, 37, 43, 45, 41, 40, 32.54446 + 43, 44, 39, 45, 45, 57, 58, 45, 41, 48, 49, 255, 255, 255, 255, 255, 32.54447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54451 + 255, 255, 255, 255, 178, 170, 115, 84, 72, 58, 49, 42, 35, 32, 36, 38, 32.54452 + 39, 36, 31, 27, 28, 33, 38, 31, 31, 32, 31, 32, 34, 34, 37, 33, 32.54453 + 36, 33, 26, 27, 35, 38, 35, 29, 30, 32, 33, 32, 31, 31, 28, 27, 32.54454 + 27, 27, 27, 30, 32, 36, 37, 38, 44, 45, 40, 40, 46, 46, 41, 36, 32.54455 + 46, 58, 52, 43, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54460 + 198, 184, 103, 102, 79, 57, 47, 42, 34, 30, 32, 35, 37, 35, 33, 30, 32.54461 + 28, 29, 29, 34, 33, 34, 33, 35, 35, 34, 35, 34, 33, 31, 29, 28, 32.54462 + 28, 30, 31, 33, 35, 38, 38, 30, 24, 28, 35, 27, 24, 24, 26, 31, 32.54463 + 40, 45, 49, 45, 44, 43, 45, 48, 46, 44, 41, 37, 50, 68, 49, 121, 32.54464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 195, 188, 129, 32.54469 + 96, 64, 51, 46, 41, 35, 36, 30, 30, 32, 32, 30, 27, 29, 28, 35, 32.54470 + 34, 35, 35, 34, 36, 36, 36, 34, 32, 30, 29, 28, 29, 30, 32, 31, 32.54471 + 32, 33, 35, 28, 23, 26, 31, 27, 22, 25, 31, 34, 35, 42, 53, 37, 32.54472 + 38, 39, 38, 40, 39, 39, 38, 49, 121, 255, 255, 255, 255, 255, 255, 255, 32.54473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54477 + 255, 255, 255, 255, 255, 255, 255, 255, 178, 172, 198, 131, 97, 64, 51, 46, 32.54478 + 40, 34, 32, 31, 30, 32, 32, 32, 29, 31, 29, 32, 33, 34, 33, 33, 32.54479 + 34, 35, 35, 32, 33, 29, 28, 28, 30, 31, 33, 35, 34, 33, 36, 34, 32.54480 + 30, 32, 35, 29, 24, 29, 36, 36, 33, 40, 54, 35, 37, 39, 40, 41, 32.54481 + 40, 42, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54486 + 255, 255, 255, 255, 207, 178, 187, 101, 81, 67, 62, 57, 44, 37, 35, 38, 32.54487 + 36, 34, 33, 33, 33, 34, 35, 32, 32, 31, 32, 32, 33, 33, 34, 33, 32.54488 + 32, 28, 27, 28, 30, 32, 33, 36, 33, 31, 34, 35, 32, 32, 33, 27, 32.54489 + 28, 31, 35, 40, 45, 47, 47, 35, 40, 43, 41, 41, 41, 116, 255, 255, 32.54490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54495 + 207, 187, 194, 62, 58, 65, 72, 71, 57, 48, 48, 46, 40, 34, 31, 33, 32.54496 + 35, 36, 38, 31, 31, 32, 32, 31, 32, 31, 31, 33, 31, 30, 29, 28, 32.54497 + 30, 32, 34, 29, 26, 27, 30, 29, 26, 27, 30, 26, 34, 35, 33, 44, 32.54498 + 62, 58, 41, 34, 38, 38, 38, 37, 110, 255, 255, 255, 255, 255, 255, 255, 32.54499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 194, 60, 32.54504 + 50, 51, 61, 66, 57, 50, 46, 49, 42, 35, 29, 31, 34, 36, 35, 32, 32.54505 + 34, 33, 33, 31, 31, 29, 30, 33, 32, 30, 29, 27, 29, 31, 33, 27, 32.54506 + 26, 28, 31, 28, 25, 26, 31, 29, 37, 36, 37, 53, 68, 62, 41, 38, 32.54507 + 39, 39, 36, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 187, 124, 85, 50, 44, 56, 32.54513 + 57, 51, 41, 51, 45, 39, 35, 37, 36, 35, 31, 34, 34, 33, 32, 31, 32.54514 + 30, 28, 28, 34, 35, 30, 29, 29, 30, 30, 31, 28, 30, 32, 34, 31, 32.54515 + 27, 31, 38, 37, 34, 36, 47, 60, 61, 55, 47, 49, 47, 42, 111, 255, 32.54516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54521 + 255, 255, 255, 255, 255, 233, 158, 211, 139, 67, 45, 62, 71, 63, 48, 55, 32.54522 + 48, 44, 42, 44, 41, 34, 30, 36, 35, 34, 33, 31, 29, 27, 27, 35, 32.54523 + 35, 31, 29, 28, 29, 31, 30, 24, 27, 31, 33, 28, 23, 28, 38, 43, 32.54524 + 31, 35, 58, 66, 52, 45, 54, 55, 48, 113, 255, 255, 255, 255, 255, 255, 32.54525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54530 + 255, 255, 255, 175, 184, 190, 172, 205, 185, 128, 51, 38, 48, 26, 43, 43, 32.54531 + 52, 42, 43, 34, 34, 33, 34, 32, 31, 31, 30, 39, 37, 31, 26, 25, 32.54532 + 25, 30, 33, 33, 32, 30, 29, 31, 35, 34, 33, 39, 47, 57, 67, 64, 32.54533 + 53, 52, 58, 54, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54539 + 255, 255, 255, 197, 199, 188, 153, 53, 40, 39, 48, 37, 37, 35, 46, 34, 32.54540 + 36, 34, 33, 33, 31, 31, 32, 35, 34, 32, 31, 31, 32, 32, 33, 34, 32.54541 + 30, 27, 25, 26, 29, 30, 31, 37, 55, 64, 57, 50, 51, 54, 53, 56, 32.54542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54548 + 234, 200, 192, 106, 37, 44, 44, 34, 29, 30, 44, 35, 36, 34, 34, 34, 32.54549 + 32, 31, 32, 31, 34, 35, 36, 34, 33, 31, 28, 36, 34, 30, 28, 28, 32.54550 + 29, 31, 35, 42, 66, 69, 47, 36, 48, 55, 46, 255, 255, 255, 255, 255, 32.54551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 179, 176, 32.54557 + 41, 35, 33, 38, 38, 34, 34, 37, 36, 36, 33, 35, 32, 31, 32, 33, 32.54558 + 36, 36, 36, 32, 29, 27, 25, 33, 32, 31, 32, 29, 27, 29, 35, 57, 32.54559 + 70, 69, 45, 37, 47, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 192, 200, 44, 26, 30, 41, 32.54566 + 44, 35, 23, 36, 36, 36, 34, 35, 32, 32, 33, 36, 37, 36, 35, 34, 32.54567 + 33, 30, 30, 23, 24, 28, 32, 26, 21, 24, 34, 73, 64, 55, 47, 46, 32.54568 + 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54574 + 255, 255, 255, 255, 255, 255, 196, 181, 50, 27, 38, 37, 38, 33, 22, 35, 32.54575 + 34, 33, 33, 33, 33, 34, 33, 37, 36, 36, 36, 37, 39, 39, 41, 23, 32.54576 + 23, 28, 33, 27, 22, 29, 44, 77, 53, 39, 47, 119, 255, 255, 255, 255, 32.54577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54583 + 255, 255, 186, 174, 74, 30, 46, 35, 41, 41, 25, 31, 32, 32, 32, 33, 32.54584 + 33, 35, 34, 33, 33, 34, 36, 38, 40, 40, 41, 31, 29, 30, 33, 30, 32.54585 + 28, 40, 61, 72, 47, 34, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 190, 32.54592 + 101, 30, 46, 35, 50, 52, 33, 30, 31, 31, 32, 32, 33, 33, 34, 28, 32.54593 + 31, 31, 33, 34, 32, 32, 29, 30, 26, 26, 28, 26, 27, 49, 73, 66, 32.54594 + 48, 37, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54600 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 190, 36, 62, 66, 32.54601 + 31, 50, 36, 26, 41, 31, 35, 31, 22, 35, 28, 33, 32, 37, 29, 14, 32.54602 + 26, 38, 23, 23, 36, 33, 19, 29, 55, 66, 55, 54, 44, 116, 255, 255, 32.54603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54609 + 255, 255, 255, 255, 255, 255, 255, 181, 217, 82, 60, 44, 52, 41, 51, 39, 32.54610 + 42, 29, 38, 37, 21, 30, 25, 36, 20, 30, 43, 33, 26, 27, 22, 27, 32.54611 + 12, 27, 62, 37, 50, 57, 55, 31, 112, 255, 255, 255, 255, 255, 255, 255, 32.54612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54618 + 255, 255, 255, 191, 162, 212, 87, 43, 77, 51, 43, 49, 41, 27, 36, 39, 32.54619 + 27, 34, 34, 39, 20, 22, 31, 27, 22, 23, 22, 23, 20, 33, 42, 44, 32.54620 + 57, 66, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54627 + 184, 191, 197, 98, 59, 67, 47, 49, 42, 31, 28, 28, 26, 31, 31, 37, 32.54628 + 43, 40, 29, 24, 32, 34, 23, 39, 41, 38, 7, 55, 48, 49, 105, 255, 32.54629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 172, 179, 211, 32.54636 + 49, 49, 70, 48, 54, 56, 41, 35, 39, 37, 32, 30, 48, 49, 36, 32, 32.54637 + 33, 31, 26, 28, 21, 38, 57, 64, 45, 41, 255, 255, 255, 255, 255, 255, 32.54638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 171, 189, 167, 52, 61, 35, 32.54645 + 39, 53, 40, 35, 42, 35, 36, 48, 48, 42, 39, 38, 29, 37, 61, 38, 32.54646 + 58, 95, 135, 46, 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54653 + 255, 255, 255, 255, 255, 255, 225, 189, 177, 161, 65, 71, 49, 53, 42, 39, 32.54654 + 40, 35, 55, 46, 47, 39, 39, 48, 45, 54, 84, 115, 162, 160, 117, 38, 32.54655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54662 + 255, 255, 255, 255, 255, 164, 173, 183, 127, 105, 89, 80, 72, 69, 110, 117, 32.54663 + 150, 157, 160, 179, 183, 172, 173, 157, 196, 143, 34, 255, 255, 255, 255, 255, 32.54664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.54668 +/* Define image 'enemy6' of size 131x156x1x3 and type 'const unsigned char' */ 32.54669 +const unsigned char data_enemy6[] = { 32.54670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 116, 116, 123, 32.54674 + 124, 118, 127, 117, 107, 101, 101, 105, 105, 104, 127, 221, 255, 255, 255, 255, 32.54675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54681 + 255, 208, 112, 112, 115, 113, 116, 119, 120, 117, 114, 113, 113, 109, 114, 119, 32.54682 + 121, 124, 125, 121, 114, 118, 115, 111, 106, 104, 101, 96, 92, 91, 101, 93, 32.54683 + 83, 87, 80, 72, 81, 83, 86, 81, 82, 100, 109, 105, 154, 255, 255, 255, 32.54684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 123, 127, 126, 121, 32.54689 + 120, 116, 114, 116, 116, 112, 109, 109, 108, 104, 106, 113, 112, 107, 108, 115, 32.54690 + 116, 111, 110, 114, 115, 111, 105, 103, 99, 103, 107, 106, 101, 94, 86, 81, 32.54691 + 98, 102, 92, 80, 78, 70, 63, 68, 73, 83, 80, 74, 90, 102, 98, 92, 32.54692 + 93, 109, 108, 126, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 129, 127, 126, 32.54697 + 127, 123, 116, 121, 118, 116, 116, 115, 111, 107, 105, 121, 110, 106, 113, 113, 32.54698 + 106, 110, 123, 111, 96, 85, 86, 87, 84, 86, 93, 78, 86, 93, 95, 89, 32.54699 + 81, 77, 77, 89, 87, 80, 72, 69, 63, 60, 61, 68, 81, 75, 67, 85, 32.54700 + 100, 93, 79, 89, 108, 109, 126, 133, 121, 127, 134, 168, 255, 255, 255, 255, 32.54701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 128, 133, 32.54705 + 135, 134, 133, 131, 123, 115, 113, 113, 113, 114, 116, 117, 116, 114, 110, 99, 32.54706 + 96, 102, 100, 90, 89, 98, 93, 77, 65, 65, 67, 67, 74, 85, 66, 72, 32.54707 + 76, 75, 69, 65, 67, 71, 65, 61, 62, 63, 64, 67, 72, 71, 75, 84, 32.54708 + 74, 65, 86, 103, 92, 75, 90, 113, 109, 114, 119, 115, 119, 119, 117, 121, 32.54709 + 123, 124, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 98, 32.54713 + 94, 87, 92, 96, 97, 97, 95, 87, 77, 68, 68, 65, 61, 62, 65, 63, 32.54714 + 62, 67, 64, 70, 81, 86, 79, 76, 78, 91, 84, 77, 73, 68, 63, 63, 32.54715 + 67, 62, 65, 65, 61, 54, 54, 58, 62, 59, 53, 58, 63, 63, 69, 77, 32.54716 + 73, 83, 88, 77, 71, 90, 103, 94, 82, 89, 111, 104, 105, 113, 113, 117, 32.54717 + 114, 113, 117, 122, 122, 121, 121, 124, 255, 255, 255, 255, 255, 255, 255, 255, 32.54718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54720 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54721 + 196, 66, 98, 89, 99, 105, 107, 107, 106, 105, 97, 89, 77, 76, 69, 59, 32.54722 + 56, 57, 55, 50, 47, 50, 57, 68, 79, 85, 86, 86, 87, 91, 90, 79, 32.54723 + 68, 61, 56, 53, 59, 58, 59, 56, 52, 52, 55, 58, 65, 54, 61, 66, 32.54724 + 61, 67, 75, 64, 84, 89, 81, 76, 87, 92, 90, 91, 99, 108, 98, 107, 32.54725 + 116, 107, 109, 108, 105, 109, 113, 113, 112, 114, 120, 126, 121, 255, 255, 255, 32.54726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54729 + 255, 210, 126, 71, 72, 108, 101, 103, 105, 104, 100, 98, 96, 89, 81, 68, 32.54730 + 68, 61, 51, 49, 53, 52, 47, 41, 41, 40, 41, 51, 65, 72, 72, 66, 32.54731 + 77, 79, 67, 57, 57, 57, 54, 51, 54, 56, 58, 58, 57, 58, 58, 61, 32.54732 + 49, 58, 67, 61, 67, 76, 64, 80, 88, 81, 78, 82, 82, 86, 97, 120, 32.54733 + 115, 99, 114, 117, 89, 84, 86, 92, 95, 97, 96, 96, 99, 108, 116, 118, 32.54734 + 118, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54737 + 255, 255, 255, 215, 123, 101, 91, 100, 109, 109, 108, 101, 96, 98, 99, 91, 32.54738 + 79, 72, 51, 58, 55, 52, 55, 50, 43, 48, 50, 38, 32, 40, 49, 51, 32.54739 + 49, 49, 62, 61, 62, 65, 62, 56, 55, 59, 58, 53, 47, 48, 52, 53, 32.54740 + 52, 50, 61, 56, 57, 65, 75, 76, 69, 60, 73, 82, 74, 76, 89, 84, 32.54741 + 82, 99, 117, 121, 108, 89, 87, 87, 87, 89, 79, 81, 77, 69, 64, 66, 32.54742 + 74, 81, 96, 104, 113, 119, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54744 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54745 + 255, 255, 255, 255, 136, 120, 115, 108, 98, 88, 80, 83, 88, 75, 69, 65, 32.54746 + 64, 60, 54, 49, 49, 48, 52, 46, 43, 50, 51, 52, 62, 56, 45, 39, 32.54747 + 44, 49, 49, 49, 50, 52, 54, 57, 59, 60, 59, 59, 58, 66, 58, 49, 32.54748 + 45, 48, 52, 50, 48, 57, 53, 54, 59, 68, 73, 70, 64, 86, 88, 86, 32.54749 + 89, 93, 87, 81, 87, 82, 96, 93, 79, 77, 74, 69, 70, 55, 55, 55, 32.54750 + 54, 53, 52, 56, 60, 71, 75, 81, 90, 103, 115, 166, 255, 255, 255, 255, 32.54751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54753 + 255, 255, 255, 255, 255, 215, 125, 113, 102, 91, 89, 88, 77, 59, 55, 61, 32.54754 + 53, 48, 45, 41, 35, 30, 32, 39, 42, 46, 41, 39, 49, 52, 55, 64, 32.54755 + 61, 54, 48, 48, 48, 47, 48, 51, 48, 55, 58, 57, 60, 66, 64, 56, 32.54756 + 60, 51, 41, 38, 44, 51, 50, 49, 54, 52, 53, 55, 60, 68, 72, 73, 32.54757 + 88, 82, 89, 98, 97, 94, 89, 81, 72, 86, 85, 72, 69, 64, 57, 56, 32.54758 + 56, 56, 56, 57, 58, 55, 49, 46, 48, 48, 50, 61, 75, 94, 110, 165, 32.54759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54761 + 255, 255, 255, 255, 255, 255, 255, 128, 123, 106, 85, 87, 82, 78, 75, 64, 32.54762 + 50, 46, 50, 56, 49, 45, 42, 38, 34, 37, 44, 39, 45, 42, 43, 52, 32.54763 + 52, 48, 52, 63, 59, 54, 50, 46, 45, 48, 51, 48, 58, 60, 55, 58, 32.54764 + 68, 64, 51, 59, 51, 42, 41, 46, 51, 52, 48, 53, 53, 53, 54, 58, 32.54765 + 64, 75, 82, 88, 76, 88, 99, 93, 95, 94, 76, 77, 86, 78, 64, 66, 32.54766 + 68, 65, 66, 67, 65, 64, 65, 68, 67, 59, 51, 43, 41, 42, 49, 58, 32.54767 + 72, 92, 107, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 107, 102, 89, 73, 80, 84, 32.54770 + 79, 64, 55, 55, 57, 54, 59, 53, 48, 48, 47, 44, 43, 45, 44, 48, 32.54771 + 44, 44, 54, 53, 49, 53, 64, 64, 60, 53, 47, 47, 49, 51, 48, 59, 32.54772 + 62, 55, 58, 67, 65, 53, 67, 60, 53, 50, 50, 50, 48, 45, 51, 53, 32.54773 + 54, 52, 54, 61, 73, 83, 93, 79, 87, 94, 86, 90, 92, 74, 77, 81, 32.54774 + 69, 59, 69, 78, 76, 76, 63, 59, 56, 58, 62, 65, 60, 54, 45, 44, 32.54775 + 47, 50, 49, 54, 70, 89, 106, 107, 255, 255, 255, 255, 255, 255, 255, 255, 32.54776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 98, 91, 90, 88, 32.54778 + 85, 79, 86, 82, 66, 58, 66, 71, 66, 62, 55, 50, 51, 51, 47, 43, 32.54779 + 43, 48, 49, 40, 39, 52, 58, 60, 68, 69, 70, 66, 58, 52, 52, 51, 32.54780 + 50, 54, 63, 67, 64, 64, 70, 72, 68, 57, 56, 54, 51, 48, 48, 48, 32.54781 + 49, 46, 49, 52, 51, 52, 57, 68, 75, 79, 75, 78, 81, 84, 92, 97, 32.54782 + 89, 86, 93, 83, 75, 81, 84, 76, 71, 76, 68, 60, 57, 57, 55, 50, 32.54783 + 47, 44, 42, 46, 48, 43, 41, 51, 67, 86, 91, 150, 255, 255, 255, 255, 32.54784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 95, 32.54786 + 95, 93, 91, 92, 79, 82, 81, 76, 72, 70, 74, 75, 66, 62, 59, 57, 32.54787 + 52, 46, 46, 50, 48, 48, 40, 42, 59, 68, 72, 81, 80, 80, 75, 66, 32.54788 + 60, 59, 54, 48, 64, 69, 73, 71, 67, 67, 72, 77, 57, 58, 56, 51, 32.54789 + 43, 43, 47, 53, 44, 47, 52, 53, 54, 57, 63, 67, 56, 65, 66, 67, 32.54790 + 82, 95, 99, 104, 99, 110, 106, 93, 90, 87, 81, 77, 90, 82, 71, 63, 32.54791 + 57, 51, 46, 43, 46, 38, 37, 41, 39, 34, 37, 47, 62, 73, 88, 99, 32.54792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54794 + 97, 88, 97, 102, 96, 86, 84, 79, 75, 79, 86, 81, 70, 70, 78, 69, 32.54795 + 66, 64, 61, 50, 43, 47, 56, 44, 48, 45, 52, 71, 78, 78, 83, 88, 32.54796 + 89, 83, 72, 66, 63, 56, 46, 65, 67, 70, 69, 60, 54, 60, 71, 80, 32.54797 + 80, 74, 61, 45, 38, 43, 50, 46, 50, 55, 59, 59, 60, 61, 62, 46, 32.54798 + 63, 63, 60, 78, 86, 88, 100, 93, 110, 110, 95, 91, 90, 94, 100, 78, 32.54799 + 73, 66, 61, 57, 55, 51, 49, 52, 36, 29, 35, 39, 32, 30, 34, 45, 32.54800 + 61, 83, 101, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54802 + 255, 255, 104, 89, 92, 109, 104, 81, 73, 85, 91, 83, 74, 86, 82, 73, 32.54803 + 81, 68, 67, 63, 58, 57, 57, 57, 56, 53, 54, 64, 51, 59, 60, 93, 32.54804 + 83, 74, 79, 93, 86, 65, 68, 84, 70, 36, 42, 58, 72, 70, 62, 59, 32.54805 + 56, 54, 70, 67, 65, 62, 56, 49, 49, 54, 54, 65, 53, 54, 71, 56, 32.54806 + 41, 58, 53, 44, 45, 61, 80, 90, 93, 97, 107, 80, 77, 97, 105, 99, 32.54807 + 89, 74, 83, 77, 66, 54, 53, 58, 53, 44, 47, 43, 40, 34, 30, 31, 32.54808 + 37, 44, 39, 52, 67, 79, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54810 + 255, 255, 255, 255, 206, 105, 102, 103, 103, 97, 89, 86, 90, 92, 85, 79, 32.54811 + 91, 87, 76, 79, 65, 69, 65, 64, 59, 55, 53, 57, 59, 59, 63, 56, 32.54812 + 72, 70, 87, 81, 82, 82, 85, 78, 69, 68, 70, 61, 45, 39, 54, 65, 32.54813 + 59, 55, 57, 58, 53, 63, 61, 62, 64, 61, 54, 51, 53, 58, 67, 55, 32.54814 + 54, 70, 57, 39, 54, 55, 46, 45, 57, 74, 81, 84, 86, 91, 75, 78, 32.54815 + 90, 90, 85, 81, 70, 75, 74, 68, 62, 62, 64, 58, 51, 47, 46, 41, 32.54816 + 36, 31, 30, 34, 37, 35, 46, 57, 68, 89, 110, 255, 255, 255, 255, 255, 32.54817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54818 + 255, 255, 255, 255, 255, 255, 207, 100, 100, 108, 106, 91, 85, 92, 94, 88, 32.54819 + 82, 81, 79, 93, 90, 82, 87, 72, 71, 73, 71, 64, 57, 55, 64, 71, 32.54820 + 67, 67, 67, 83, 76, 77, 74, 83, 84, 77, 72, 72, 65, 52, 48, 53, 32.54821 + 43, 55, 58, 46, 44, 55, 58, 48, 57, 54, 56, 63, 65, 59, 52, 49, 32.54822 + 61, 68, 56, 53, 66, 57, 42, 50, 56, 46, 42, 49, 61, 67, 71, 72, 32.54823 + 73, 72, 78, 81, 72, 70, 74, 68, 74, 77, 77, 74, 71, 69, 61, 55, 32.54824 + 43, 43, 39, 36, 31, 29, 29, 31, 34, 40, 45, 53, 75, 100, 160, 255, 32.54825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54826 + 255, 255, 255, 255, 255, 255, 255, 255, 209, 105, 95, 100, 109, 105, 90, 84, 32.54827 + 93, 97, 92, 88, 85, 80, 88, 84, 80, 89, 75, 76, 76, 74, 68, 62, 32.54828 + 63, 72, 79, 71, 75, 77, 80, 72, 69, 70, 76, 81, 75, 72, 71, 59, 32.54829 + 42, 42, 54, 48, 57, 53, 36, 37, 52, 57, 45, 56, 51, 52, 60, 65, 32.54830 + 61, 53, 47, 61, 68, 59, 55, 64, 59, 48, 49, 53, 44, 39, 42, 50, 32.54831 + 57, 60, 62, 66, 67, 72, 67, 57, 62, 71, 68, 78, 82, 84, 83, 78, 32.54832 + 72, 65, 61, 74, 73, 68, 62, 54, 48, 43, 40, 36, 38, 37, 40, 59, 32.54833 + 85, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 108, 102, 97, 110, 105, 32.54835 + 102, 98, 96, 94, 97, 100, 102, 97, 83, 81, 71, 69, 83, 70, 81, 79, 32.54836 + 74, 69, 68, 68, 71, 74, 68, 77, 81, 67, 64, 67, 72, 68, 69, 74, 32.54837 + 73, 65, 54, 47, 48, 53, 47, 53, 47, 32, 35, 52, 58, 48, 56, 48, 32.54838 + 46, 53, 60, 58, 51, 46, 56, 65, 63, 57, 60, 61, 56, 51, 46, 40, 32.54839 + 35, 35, 42, 51, 54, 54, 61, 58, 58, 52, 45, 55, 67, 64, 72, 75, 32.54840 + 81, 84, 82, 79, 77, 77, 92, 88, 79, 70, 60, 50, 42, 37, 37, 37, 32.54841 + 33, 31, 46, 72, 92, 98, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 110, 104, 103, 32.54843 + 105, 110, 95, 90, 96, 99, 91, 92, 99, 97, 94, 78, 76, 67, 70, 88, 32.54844 + 79, 82, 78, 77, 72, 67, 64, 63, 62, 65, 73, 78, 57, 64, 70, 78, 32.54845 + 65, 55, 67, 69, 60, 54, 56, 55, 51, 41, 44, 41, 34, 39, 50, 57, 32.54846 + 54, 55, 47, 44, 50, 57, 56, 52, 50, 53, 65, 69, 61, 56, 61, 61, 32.54847 + 53, 39, 37, 33, 33, 39, 48, 52, 50, 55, 42, 39, 38, 38, 48, 58, 32.54848 + 57, 59, 63, 71, 83, 88, 89, 90, 93, 70, 66, 58, 52, 47, 43, 38, 32.54849 + 35, 34, 37, 33, 27, 39, 64, 87, 98, 110, 255, 255, 255, 255, 255, 255, 32.54850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 113, 32.54851 + 106, 103, 106, 110, 107, 89, 78, 84, 92, 89, 87, 90, 84, 85, 77, 78, 32.54852 + 71, 75, 93, 83, 74, 78, 82, 78, 70, 64, 63, 64, 73, 69, 74, 60, 32.54853 + 75, 70, 75, 62, 53, 60, 62, 60, 59, 58, 52, 45, 40, 38, 40, 40, 32.54854 + 41, 44, 49, 52, 48, 42, 41, 49, 55, 55, 54, 53, 52, 67, 78, 66, 32.54855 + 53, 60, 65, 53, 37, 37, 35, 34, 39, 48, 51, 48, 45, 28, 28, 36, 32.54856 + 39, 43, 50, 51, 58, 58, 66, 82, 92, 92, 89, 89, 71, 65, 58, 53, 32.54857 + 52, 52, 51, 50, 36, 42, 38, 29, 34, 56, 81, 95, 104, 255, 255, 255, 32.54858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54859 + 255, 111, 105, 101, 101, 105, 109, 107, 91, 77, 77, 88, 93, 91, 88, 87, 32.54860 + 91, 85, 86, 75, 73, 85, 69, 65, 76, 86, 84, 74, 66, 68, 73, 85, 32.54861 + 69, 73, 67, 85, 68, 68, 58, 59, 57, 57, 63, 63, 54, 43, 37, 43, 32.54862 + 39, 41, 44, 43, 36, 39, 44, 42, 38, 41, 50, 56, 56, 55, 55, 53, 32.54863 + 71, 83, 69, 50, 57, 66, 54, 38, 38, 38, 36, 41, 49, 51, 46, 39, 32.54864 + 22, 26, 41, 42, 40, 45, 50, 66, 65, 71, 85, 93, 88, 79, 75, 85, 32.54865 + 75, 63, 52, 47, 43, 40, 38, 41, 48, 45, 33, 32, 50, 74, 89, 100, 32.54866 + 107, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54867 + 255, 255, 255, 255, 107, 103, 104, 105, 105, 103, 82, 87, 87, 85, 86, 89, 32.54868 + 85, 77, 75, 80, 65, 72, 78, 65, 70, 74, 61, 92, 90, 71, 72, 70, 32.54869 + 62, 66, 69, 73, 81, 82, 69, 55, 56, 66, 75, 65, 76, 62, 38, 33, 32.54870 + 34, 47, 38, 31, 43, 53, 41, 32, 44, 53, 37, 41, 50, 55, 56, 54, 32.54871 + 54, 54, 67, 73, 75, 71, 66, 57, 46, 33, 33, 41, 43, 38, 43, 54, 32.54872 + 46, 25, 40, 35, 32, 36, 43, 50, 50, 49, 46, 58, 71, 78, 79, 80, 32.54873 + 83, 86, 76, 64, 52, 45, 46, 48, 46, 42, 40, 40, 23, 27, 36, 45, 32.54874 + 70, 76, 92, 100, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54875 + 255, 255, 255, 255, 255, 255, 255, 99, 99, 105, 107, 104, 98, 80, 85, 86, 32.54876 + 83, 80, 79, 73, 66, 71, 72, 62, 68, 63, 54, 68, 69, 58, 86, 92, 32.54877 + 80, 80, 73, 62, 66, 79, 74, 70, 69, 68, 66, 66, 67, 68, 59, 72, 32.54878 + 65, 48, 45, 41, 48, 33, 33, 44, 49, 45, 47, 52, 46, 43, 47, 53, 32.54879 + 57, 57, 57, 55, 55, 69, 79, 83, 76, 66, 57, 50, 45, 48, 48, 43, 32.54880 + 37, 41, 48, 44, 34, 34, 37, 39, 44, 49, 52, 52, 52, 51, 59, 67, 32.54881 + 71, 71, 71, 71, 73, 73, 66, 59, 56, 57, 56, 50, 44, 41, 45, 34, 32.54882 + 35, 34, 35, 58, 64, 91, 101, 113, 255, 255, 255, 255, 255, 255, 255, 255, 32.54883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 93, 97, 109, 113, 106, 97, 32.54884 + 90, 94, 93, 87, 80, 75, 67, 61, 62, 58, 58, 64, 48, 46, 75, 73, 32.54885 + 90, 91, 77, 61, 61, 64, 74, 93, 77, 78, 78, 80, 83, 85, 79, 71, 32.54886 + 84, 66, 71, 62, 48, 45, 37, 39, 32, 35, 42, 41, 43, 55, 54, 32, 32.54887 + 49, 53, 58, 61, 61, 60, 59, 60, 69, 83, 88, 76, 61, 52, 55, 57, 32.54888 + 60, 53, 47, 45, 47, 47, 46, 45, 28, 33, 38, 41, 44, 44, 48, 52, 32.54889 + 59, 61, 64, 67, 68, 69, 70, 70, 62, 60, 59, 61, 64, 60, 50, 39, 32.54890 + 43, 53, 47, 46, 38, 31, 53, 61, 86, 97, 110, 255, 255, 255, 255, 255, 32.54891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 100, 105, 116, 32.54892 + 119, 112, 104, 99, 101, 99, 90, 80, 73, 68, 65, 54, 49, 55, 63, 42, 32.54893 + 47, 87, 83, 89, 79, 69, 71, 75, 72, 73, 82, 78, 85, 88, 86, 86, 32.54894 + 90, 89, 85, 98, 71, 65, 51, 39, 41, 34, 36, 43, 40, 42, 40, 40, 32.54895 + 51, 50, 30, 51, 55, 59, 62, 62, 63, 64, 68, 68, 79, 84, 73, 60, 32.54896 + 55, 60, 64, 60, 55, 57, 63, 65, 58, 54, 56, 54, 53, 53, 54, 55, 32.54897 + 60, 66, 68, 63, 63, 64, 68, 72, 76, 80, 80, 73, 74, 76, 80, 83, 32.54898 + 78, 68, 57, 51, 59, 51, 49, 42, 37, 58, 66, 76, 88, 105, 114, 255, 32.54899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 110, 32.54900 + 110, 112, 117, 115, 111, 106, 102, 97, 92, 84, 75, 69, 66, 65, 50, 47, 32.54901 + 53, 61, 42, 53, 93, 87, 91, 72, 65, 76, 85, 87, 85, 85, 90, 85, 32.54902 + 78, 75, 81, 89, 91, 87, 85, 59, 56, 47, 41, 48, 43, 45, 53, 42, 32.54903 + 42, 44, 40, 44, 50, 45, 59, 60, 62, 63, 62, 64, 66, 69, 72, 76, 32.54904 + 77, 70, 65, 66, 70, 72, 70, 65, 68, 75, 74, 64, 60, 66, 68, 64, 32.54905 + 62, 63, 68, 71, 71, 66, 57, 56, 57, 61, 68, 74, 80, 81, 80, 80, 32.54906 + 83, 85, 86, 81, 74, 66, 58, 58, 43, 41, 39, 37, 58, 63, 68, 81, 32.54907 + 100, 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54908 + 255, 104, 104, 104, 105, 106, 102, 98, 94, 103, 96, 87, 82, 78, 71, 66, 32.54909 + 66, 52, 51, 51, 57, 48, 58, 89, 81, 100, 75, 68, 78, 84, 96, 106, 32.54910 + 103, 96, 80, 74, 86, 99, 98, 82, 67, 72, 54, 62, 59, 53, 56, 47, 32.54911 + 48, 51, 40, 44, 49, 45, 46, 55, 55, 67, 68, 67, 64, 64, 64, 66, 32.54912 + 71, 77, 80, 78, 77, 78, 83, 82, 81, 85, 82, 79, 80, 74, 67, 69, 32.54913 + 75, 66, 62, 60, 65, 69, 68, 61, 50, 52, 52, 55, 58, 63, 69, 76, 32.54914 + 79, 81, 79, 79, 76, 73, 68, 62, 57, 57, 53, 33, 32, 33, 32, 47, 32.54915 + 46, 61, 76, 98, 112, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54916 + 255, 255, 255, 201, 95, 92, 92, 98, 104, 106, 102, 96, 106, 96, 88, 88, 32.54917 + 87, 79, 69, 66, 52, 57, 48, 53, 59, 68, 86, 81, 84, 78, 93, 108, 32.54918 + 104, 103, 102, 86, 93, 82, 82, 99, 103, 87, 70, 64, 76, 64, 77, 74, 32.54919 + 62, 60, 51, 53, 55, 56, 65, 66, 64, 70, 73, 59, 70, 71, 70, 67, 32.54920 + 67, 68, 74, 79, 81, 86, 86, 85, 87, 92, 90, 87, 92, 96, 94, 91, 32.54921 + 84, 78, 80, 84, 82, 78, 75, 74, 76, 74, 72, 68, 62, 65, 70, 73, 32.54922 + 77, 81, 90, 96, 102, 98, 93, 85, 77, 69, 63, 58, 49, 49, 34, 36, 32.54923 + 37, 31, 41, 36, 54, 70, 94, 110, 119, 255, 255, 255, 255, 255, 255, 255, 32.54924 + 255, 255, 255, 255, 255, 255, 89, 96, 91, 90, 102, 117, 125, 123, 115, 104, 32.54925 + 91, 85, 89, 91, 83, 71, 64, 55, 65, 51, 56, 75, 83, 92, 86, 99, 32.54926 + 94, 104, 104, 88, 92, 104, 93, 99, 88, 87, 89, 72, 54, 64, 91, 82, 32.54927 + 71, 84, 79, 66, 67, 64, 72, 72, 85, 96, 91, 90, 102, 95, 64, 66, 32.54928 + 68, 68, 69, 70, 76, 85, 91, 84, 91, 95, 94, 93, 97, 96, 92, 90, 32.54929 + 100, 109, 107, 101, 95, 93, 91, 90, 85, 75, 68, 64, 68, 75, 80, 80, 32.54930 + 83, 92, 96, 98, 104, 114, 122, 108, 103, 95, 84, 74, 63, 54, 49, 42, 32.54931 + 48, 42, 49, 47, 39, 44, 37, 49, 66, 89, 107, 115, 255, 255, 255, 255, 32.54932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 117, 105, 104, 119, 128, 121, 32.54933 + 116, 117, 111, 101, 94, 93, 90, 83, 77, 75, 62, 66, 82, 96, 98, 103, 32.54934 + 105, 96, 101, 93, 93, 103, 102, 94, 91, 94, 92, 94, 90, 79, 79, 86, 32.54935 + 84, 77, 75, 73, 69, 64, 61, 66, 75, 82, 88, 87, 83, 79, 79, 82, 32.54936 + 80, 75, 71, 70, 66, 63, 67, 72, 81, 88, 79, 86, 93, 96, 98, 98, 32.54937 + 100, 102, 100, 104, 107, 106, 102, 99, 98, 98, 97, 95, 88, 77, 71, 73, 32.54938 + 76, 77, 83, 70, 69, 79, 87, 87, 88, 93, 84, 82, 76, 69, 68, 70, 32.54939 + 69, 65, 72, 54, 43, 45, 42, 33, 34, 44, 42, 39, 65, 78, 93, 255, 32.54940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 90, 84, 103, 122, 32.54941 + 128, 121, 112, 108, 106, 77, 75, 72, 66, 69, 74, 77, 73, 77, 80, 97, 32.54942 + 112, 112, 113, 113, 104, 103, 95, 95, 103, 102, 95, 91, 95, 86, 86, 81, 32.54943 + 76, 77, 81, 80, 77, 63, 63, 64, 63, 64, 69, 76, 81, 76, 73, 68, 32.54944 + 64, 66, 70, 71, 69, 68, 70, 73, 76, 79, 85, 90, 92, 89, 95, 100, 32.54945 + 101, 102, 104, 108, 110, 105, 105, 107, 106, 105, 104, 107, 109, 99, 96, 88, 32.54946 + 77, 72, 74, 76, 74, 58, 61, 73, 88, 95, 91, 82, 77, 74, 76, 76, 32.54947 + 76, 81, 86, 84, 77, 66, 57, 49, 46, 38, 30, 30, 38, 36, 35, 46, 32.54948 + 58, 70, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 86, 32.54949 + 90, 120, 140, 132, 117, 107, 99, 89, 74, 77, 71, 58, 57, 64, 72, 70, 32.54950 + 91, 94, 111, 124, 122, 121, 119, 109, 106, 96, 94, 100, 101, 95, 92, 96, 32.54951 + 94, 88, 83, 83, 82, 80, 80, 83, 61, 65, 70, 75, 78, 80, 83, 86, 32.54952 + 75, 74, 69, 63, 66, 74, 78, 77, 73, 73, 72, 72, 71, 73, 74, 76, 32.54953 + 93, 94, 98, 99, 102, 106, 111, 114, 109, 106, 107, 105, 107, 110, 113, 116, 32.54954 + 100, 95, 89, 80, 77, 79, 80, 75, 66, 71, 77, 81, 85, 88, 87, 83, 32.54955 + 74, 75, 75, 78, 83, 84, 73, 61, 64, 63, 58, 49, 38, 32, 31, 34, 32.54956 + 30, 31, 27, 36, 50, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.54957 + 77, 90, 112, 120, 128, 129, 119, 113, 110, 99, 83, 87, 84, 79, 70, 64, 32.54958 + 65, 74, 82, 107, 108, 120, 130, 126, 126, 126, 117, 109, 102, 98, 101, 101, 32.54959 + 98, 97, 98, 106, 95, 90, 94, 94, 86, 87, 93, 73, 78, 86, 93, 96, 32.54960 + 95, 91, 90, 79, 80, 77, 74, 74, 81, 85, 84, 95, 90, 84, 77, 76, 32.54961 + 80, 84, 89, 91, 93, 97, 101, 104, 108, 113, 114, 111, 110, 109, 107, 109, 32.54962 + 111, 115, 115, 104, 102, 96, 90, 87, 88, 88, 81, 82, 87, 84, 75, 74, 32.54963 + 83, 88, 86, 95, 93, 90, 90, 93, 90, 75, 58, 67, 68, 63, 53, 44, 32.54964 + 43, 38, 33, 29, 34, 22, 30, 48, 113, 255, 255, 255, 255, 255, 255, 255, 32.54965 + 255, 255, 255, 89, 105, 129, 123, 114, 107, 104, 106, 103, 98, 94, 86, 79, 32.54966 + 78, 83, 79, 74, 86, 104, 123, 122, 128, 133, 127, 129, 133, 127, 117, 111, 32.54967 + 106, 106, 106, 104, 105, 105, 106, 96, 93, 98, 100, 93, 96, 103, 92, 96, 32.54968 + 103, 109, 110, 107, 100, 95, 80, 84, 85, 82, 82, 85, 86, 84, 91, 89, 32.54969 + 86, 86, 89, 98, 106, 111, 104, 105, 107, 112, 115, 115, 115, 113, 114, 112, 32.54970 + 112, 112, 113, 113, 111, 109, 111, 109, 105, 99, 96, 99, 98, 92, 74, 85, 32.54971 + 91, 88, 85, 86, 81, 72, 89, 87, 83, 84, 90, 91, 80, 66, 66, 64, 32.54972 + 57, 51, 49, 50, 41, 31, 29, 35, 26, 33, 65, 118, 108, 255, 255, 255, 32.54973 + 255, 255, 255, 255, 255, 112, 113, 115, 118, 115, 113, 112, 108, 100, 91, 92, 32.54974 + 99, 91, 87, 87, 92, 90, 90, 103, 120, 138, 132, 135, 137, 132, 135, 144, 32.54975 + 139, 129, 124, 117, 113, 113, 114, 114, 115, 109, 103, 103, 106, 110, 111, 115, 32.54976 + 118, 116, 120, 124, 127, 128, 124, 115, 110, 100, 105, 107, 104, 101, 102, 102, 32.54977 + 99, 87, 92, 97, 103, 108, 113, 114, 116, 124, 126, 126, 126, 127, 125, 121, 32.54978 + 116, 116, 116, 115, 118, 118, 115, 110, 104, 112, 113, 111, 104, 100, 101, 103, 32.54979 + 101, 81, 87, 93, 95, 96, 97, 92, 86, 82, 80, 75, 74, 78, 81, 75, 32.54980 + 65, 64, 55, 48, 47, 49, 48, 38, 29, 31, 31, 30, 35, 86, 118, 107, 32.54981 + 255, 255, 255, 255, 255, 255, 255, 206, 115, 119, 114, 105, 115, 124, 124, 110, 32.54982 + 97, 94, 96, 97, 104, 111, 105, 92, 93, 109, 122, 126, 142, 136, 141, 143, 32.54983 + 138, 142, 149, 144, 141, 136, 128, 122, 121, 124, 127, 128, 122, 121, 121, 118, 32.54984 + 122, 128, 132, 130, 135, 136, 137, 139, 140, 139, 134, 130, 127, 132, 131, 127, 32.54985 + 124, 125, 126, 125, 122, 125, 130, 133, 134, 133, 130, 127, 137, 134, 132, 131, 32.54986 + 132, 131, 127, 124, 122, 120, 119, 121, 121, 118, 113, 107, 108, 111, 111, 103, 32.54987 + 96, 98, 104, 103, 103, 94, 88, 91, 97, 103, 109, 115, 109, 107, 100, 93, 32.54988 + 90, 89, 81, 72, 67, 55, 49, 52, 52, 45, 37, 36, 35, 25, 32, 32, 32.54989 + 104, 115, 109, 255, 255, 255, 255, 255, 255, 255, 108, 104, 107, 108, 103, 112, 32.54990 + 124, 119, 97, 94, 108, 110, 99, 103, 120, 112, 87, 91, 123, 141, 131, 140, 32.54991 + 137, 143, 146, 141, 144, 149, 146, 148, 144, 135, 128, 127, 131, 134, 134, 132, 32.54992 + 136, 133, 126, 126, 135, 136, 131, 139, 140, 139, 142, 143, 144, 142, 139, 138, 32.54993 + 142, 140, 134, 131, 133, 137, 137, 137, 137, 137, 136, 136, 135, 135, 133, 135, 32.54994 + 130, 128, 126, 129, 131, 131, 130, 126, 122, 121, 121, 123, 121, 117, 111, 103, 32.54995 + 109, 111, 101, 92, 93, 101, 105, 110, 92, 84, 91, 99, 103, 110, 119, 120, 32.54996 + 119, 112, 102, 95, 90, 82, 74, 74, 61, 57, 62, 57, 45, 40, 46, 40, 32.54997 + 22, 33, 28, 113, 113, 113, 255, 255, 255, 255, 255, 255, 255, 102, 109, 104, 32.54998 + 105, 113, 114, 132, 125, 90, 111, 97, 103, 119, 113, 120, 115, 107, 114, 132, 32.54999 + 140, 132, 149, 146, 143, 144, 146, 148, 150, 150, 154, 152, 148, 147, 143, 139, 32.55000 + 140, 145, 136, 141, 145, 145, 147, 151, 150, 148, 149, 149, 148, 149, 150, 152, 32.55001 + 151, 150, 153, 153, 153, 153, 151, 149, 144, 141, 142, 141, 141, 142, 141, 139, 32.55002 + 134, 128, 132, 134, 138, 135, 136, 137, 132, 124, 127, 126, 130, 132, 130, 120, 32.55003 + 117, 117, 116, 107, 110, 103, 86, 83, 97, 104, 101, 102, 96, 84, 87, 102, 32.55004 + 108, 101, 126, 122, 121, 121, 119, 106, 84, 67, 71, 69, 61, 52, 49, 51, 32.55005 + 45, 36, 38, 56, 28, 31, 96, 120, 106, 167, 255, 255, 255, 255, 255, 96, 32.55006 + 101, 107, 105, 105, 109, 113, 111, 108, 98, 127, 115, 116, 126, 118, 113, 111, 32.55007 + 120, 135, 144, 150, 153, 155, 154, 154, 155, 156, 157, 157, 156, 156, 154, 153, 32.55008 + 154, 151, 146, 146, 149, 143, 148, 153, 154, 157, 162, 164, 161, 157, 158, 157, 32.55009 + 158, 158, 159, 158, 157, 158, 157, 156, 156, 155, 153, 149, 147, 149, 146, 144, 32.55010 + 143, 144, 142, 139, 134, 130, 132, 132, 132, 135, 138, 137, 133, 125, 125, 128, 32.55011 + 131, 130, 123, 121, 121, 122, 110, 108, 102, 87, 84, 94, 95, 96, 99, 98, 32.55012 + 90, 88, 97, 103, 103, 112, 120, 128, 128, 118, 104, 94, 89, 68, 69, 65, 32.55013 + 57, 52, 52, 45, 37, 37, 50, 29, 35, 89, 115, 110, 122, 255, 255, 255, 32.55014 + 255, 205, 104, 106, 110, 111, 110, 108, 110, 93, 95, 109, 138, 131, 129, 128, 32.55015 + 124, 110, 113, 140, 158, 158, 159, 171, 152, 152, 154, 156, 157, 157, 152, 152, 32.55016 + 156, 155, 154, 156, 156, 152, 151, 153, 153, 159, 163, 163, 166, 170, 170, 167, 32.55017 + 165, 165, 163, 164, 166, 167, 164, 162, 164, 162, 159, 158, 158, 157, 154, 152, 32.55018 + 155, 152, 148, 146, 146, 145, 144, 142, 143, 141, 138, 133, 133, 137, 134, 130, 32.55019 + 126, 125, 130, 133, 132, 126, 124, 126, 129, 112, 105, 99, 86, 84, 89, 86, 32.55020 + 92, 95, 100, 99, 94, 92, 96, 101, 100, 98, 99, 104, 107, 101, 87, 74, 32.55021 + 68, 71, 69, 62, 54, 50, 44, 38, 34, 38, 29, 37, 75, 106, 113, 118, 32.55022 + 255, 255, 255, 255, 108, 111, 106, 107, 111, 110, 104, 104, 95, 105, 120, 131, 32.55023 + 133, 134, 127, 118, 115, 129, 157, 170, 164, 162, 172, 162, 160, 162, 162, 164, 32.55024 + 162, 160, 160, 158, 155, 153, 155, 156, 155, 155, 157, 159, 163, 166, 165, 166, 32.55025 + 168, 166, 163, 166, 165, 164, 165, 166, 165, 164, 163, 167, 163, 160, 158, 159, 32.55026 + 157, 157, 155, 156, 156, 152, 150, 148, 147, 145, 144, 149, 149, 143, 137, 135, 32.55027 + 137, 135, 128, 128, 127, 131, 133, 132, 126, 125, 126, 131, 115, 108, 101, 86, 32.55028 + 80, 84, 81, 89, 91, 101, 108, 104, 94, 90, 93, 110, 106, 105, 110, 114, 32.55029 + 110, 97, 86, 77, 78, 75, 66, 54, 47, 42, 40, 32, 29, 28, 38, 60, 32.55030 + 94, 114, 113, 255, 255, 255, 255, 107, 107, 98, 97, 102, 103, 97, 97, 113, 32.55031 + 128, 129, 120, 132, 136, 131, 103, 123, 147, 164, 168, 167, 165, 166, 162, 159, 32.55032 + 156, 155, 156, 157, 158, 157, 162, 156, 152, 153, 156, 158, 159, 162, 156, 161, 32.55033 + 165, 163, 164, 165, 164, 160, 166, 164, 163, 164, 165, 165, 164, 162, 167, 163, 32.55034 + 160, 157, 159, 156, 157, 155, 153, 154, 155, 154, 150, 147, 144, 142, 140, 142, 32.55035 + 140, 138, 139, 142, 140, 134, 134, 132, 134, 135, 133, 127, 124, 125, 131, 118, 32.55036 + 115, 106, 87, 80, 84, 83, 88, 89, 100, 112, 114, 103, 91, 87, 80, 95, 32.55037 + 107, 104, 90, 82, 88, 97, 90, 87, 80, 69, 56, 47, 44, 45, 37, 29, 32.55038 + 30, 37, 52, 88, 114, 112, 255, 255, 255, 203, 105, 103, 94, 94, 100, 102, 32.55039 + 99, 98, 130, 138, 133, 122, 139, 135, 133, 95, 130, 159, 166, 165, 170, 171, 32.55040 + 166, 161, 158, 154, 152, 152, 153, 154, 155, 166, 159, 155, 158, 161, 161, 164, 32.55041 + 166, 154, 159, 164, 165, 166, 170, 170, 166, 169, 168, 168, 167, 168, 167, 167, 32.55042 + 164, 165, 161, 159, 158, 158, 156, 155, 153, 152, 155, 157, 155, 152, 147, 143, 32.55043 + 142, 140, 142, 139, 137, 137, 139, 136, 130, 136, 134, 135, 135, 133, 127, 124, 32.55044 + 126, 129, 121, 121, 114, 92, 84, 87, 85, 85, 88, 100, 111, 116, 112, 102, 32.55045 + 93, 89, 98, 107, 106, 98, 94, 99, 106, 94, 86, 77, 69, 58, 51, 48, 32.55046 + 50, 46, 37, 33, 35, 50, 86, 112, 114, 255, 255, 255, 98, 97, 95, 94, 32.55047 + 98, 102, 105, 106, 109, 134, 124, 131, 137, 149, 123, 123, 107, 137, 162, 167, 32.55048 + 166, 172, 174, 171, 170, 168, 165, 164, 165, 165, 164, 163, 165, 158, 156, 162, 32.55049 + 166, 164, 161, 160, 155, 160, 165, 165, 170, 173, 173, 169, 172, 171, 170, 170, 32.55050 + 171, 169, 169, 166, 164, 161, 160, 160, 160, 156, 155, 152, 154, 157, 158, 155, 32.55051 + 151, 146, 144, 145, 148, 148, 144, 139, 135, 137, 135, 130, 135, 133, 134, 135, 32.55052 + 134, 128, 128, 130, 133, 121, 121, 118, 101, 94, 94, 86, 79, 89, 100, 105, 32.55053 + 111, 118, 117, 111, 103, 95, 88, 87, 90, 88, 81, 72, 80, 71, 64, 62, 32.55054 + 57, 52, 49, 51, 52, 45, 31, 28, 48, 82, 105, 113, 161, 255, 101, 88, 32.55055 + 85, 84, 89, 95, 101, 104, 107, 122, 132, 106, 127, 152, 157, 111, 110, 126, 32.55056 + 145, 162, 169, 169, 172, 174, 175, 157, 156, 155, 156, 157, 155, 153, 151, 160, 32.55057 + 157, 157, 164, 169, 165, 160, 156, 160, 165, 168, 167, 170, 173, 171, 167, 174, 32.55058 + 170, 171, 169, 170, 170, 168, 167, 163, 162, 162, 163, 161, 158, 154, 152, 156, 32.55059 + 159, 158, 153, 148, 143, 147, 149, 147, 147, 143, 138, 138, 144, 146, 144, 135, 32.55060 + 133, 135, 137, 134, 130, 130, 132, 133, 120, 119, 119, 110, 103, 98, 87, 75, 32.55061 + 91, 103, 100, 104, 120, 129, 125, 127, 121, 115, 104, 92, 81, 74, 71, 62, 32.55062 + 54, 50, 53, 54, 49, 46, 47, 54, 48, 29, 21, 46, 78, 98, 110, 117, 32.55063 + 255, 97, 96, 96, 94, 94, 93, 97, 106, 117, 120, 103, 119, 141, 145, 141, 32.55064 + 128, 100, 138, 162, 161, 161, 157, 161, 175, 168, 150, 160, 164, 156, 153, 156, 32.55065 + 153, 147, 154, 153, 154, 161, 173, 176, 162, 144, 164, 162, 162, 168, 171, 170, 32.55066 + 170, 173, 175, 173, 172, 172, 176, 178, 180, 180, 169, 168, 168, 168, 168, 166, 32.55067 + 162, 159, 154, 155, 155, 154, 152, 149, 146, 144, 151, 141, 129, 122, 121, 125, 32.55068 + 137, 150, 143, 138, 134, 134, 136, 134, 128, 119, 126, 129, 130, 125, 113, 103, 32.55069 + 100, 96, 76, 85, 98, 103, 107, 114, 121, 125, 142, 139, 127, 106, 92, 85, 32.55070 + 75, 61, 59, 58, 56, 49, 44, 43, 44, 45, 45, 42, 54, 32, 31, 82, 32.55071 + 111, 107, 112, 95, 84, 103, 104, 106, 109, 107, 102, 103, 105, 91, 98, 119, 32.55072 + 154, 136, 143, 131, 123, 137, 161, 167, 174, 173, 164, 170, 159, 168, 174, 172, 32.55073 + 161, 160, 166, 168, 165, 162, 163, 159, 159, 164, 171, 170, 164, 168, 164, 165, 32.55074 + 171, 175, 175, 175, 176, 177, 179, 183, 187, 190, 189, 185, 181, 172, 169, 166, 32.55075 + 163, 162, 160, 158, 155, 153, 154, 154, 153, 152, 149, 145, 143, 152, 144, 136, 32.55076 + 130, 128, 128, 136, 145, 142, 139, 135, 133, 135, 134, 130, 126, 123, 127, 129, 32.55077 + 124, 112, 104, 107, 107, 91, 88, 96, 108, 110, 101, 105, 116, 112, 113, 108, 32.55078 + 99, 92, 85, 78, 70, 68, 63, 55, 51, 50, 49, 45, 43, 34, 37, 53, 32.55079 + 35, 38, 90, 115, 114, 118, 105, 100, 101, 101, 105, 111, 111, 104, 101, 102, 32.55080 + 89, 109, 122, 164, 129, 140, 118, 120, 146, 160, 161, 168, 165, 157, 167, 164, 32.55081 + 164, 169, 168, 158, 156, 161, 162, 160, 169, 172, 169, 161, 157, 160, 164, 166, 32.55082 + 165, 161, 163, 169, 175, 175, 177, 179, 183, 183, 186, 190, 191, 188, 183, 178, 32.55083 + 177, 173, 167, 162, 160, 159, 157, 155, 159, 159, 159, 157, 155, 151, 150, 148, 32.55084 + 150, 145, 142, 139, 137, 134, 137, 143, 143, 140, 137, 134, 132, 131, 129, 126, 32.55085 + 124, 127, 128, 122, 111, 106, 110, 113, 95, 83, 93, 114, 119, 102, 102, 116, 32.55086 + 106, 105, 106, 105, 98, 87, 78, 75, 78, 69, 58, 54, 55, 53, 46, 39, 32.55087 + 32, 39, 54, 39, 46, 94, 113, 112, 116, 96, 93, 109, 104, 103, 108, 107, 32.55088 + 101, 100, 104, 109, 124, 131, 162, 137, 136, 108, 107, 151, 160, 157, 163, 160, 32.55089 + 153, 166, 166, 163, 170, 174, 170, 169, 167, 163, 158, 162, 169, 173, 168, 164, 32.55090 + 163, 164, 162, 160, 156, 159, 166, 173, 174, 177, 179, 180, 177, 177, 175, 177, 32.55091 + 176, 175, 172, 178, 174, 170, 166, 165, 162, 161, 159, 162, 161, 160, 158, 156, 32.55092 + 152, 151, 150, 150, 147, 146, 145, 143, 139, 140, 145, 144, 144, 141, 136, 129, 32.55093 + 124, 123, 121, 128, 127, 125, 121, 114, 108, 108, 105, 97, 90, 100, 122, 128, 32.55094 + 115, 107, 111, 117, 113, 113, 116, 109, 92, 84, 87, 84, 77, 66, 60, 57, 32.55095 + 52, 44, 38, 35, 39, 47, 37, 56, 104, 116, 114, 115, 98, 100, 121, 114, 32.55096 + 112, 117, 113, 103, 101, 106, 117, 131, 146, 155, 145, 126, 110, 112, 145, 163, 32.55097 + 163, 173, 170, 156, 158, 147, 160, 166, 171, 170, 168, 166, 162, 158, 151, 157, 32.55098 + 165, 165, 169, 170, 170, 163, 158, 153, 158, 164, 173, 173, 178, 179, 173, 171, 32.55099 + 172, 173, 177, 177, 177, 175, 173, 171, 171, 170, 171, 168, 166, 163, 162, 161, 32.55100 + 159, 156, 154, 151, 149, 147, 157, 153, 150, 148, 143, 137, 138, 143, 141, 141, 32.55101 + 139, 135, 130, 124, 122, 119, 129, 124, 120, 120, 118, 113, 106, 98, 102, 103, 32.55102 + 112, 124, 129, 123, 107, 96, 113, 107, 107, 111, 108, 96, 93, 98, 86, 83, 32.55103 + 76, 68, 59, 51, 45, 43, 39, 38, 37, 30, 65, 116, 122, 122, 122, 109, 32.55104 + 116, 108, 106, 112, 123, 120, 108, 107, 116, 121, 144, 163, 152, 137, 106, 105, 32.55105 + 123, 143, 162, 158, 159, 155, 148, 152, 137, 158, 159, 160, 158, 158, 157, 159, 32.55106 + 160, 163, 164, 162, 160, 163, 167, 165, 159, 159, 157, 159, 168, 175, 177, 180, 32.55107 + 183, 175, 179, 186, 194, 199, 198, 194, 189, 175, 175, 177, 179, 181, 181, 178, 32.55108 + 175, 171, 170, 168, 165, 162, 159, 157, 156, 165, 160, 156, 152, 145, 138, 137, 32.55109 + 141, 139, 138, 135, 133, 131, 128, 126, 124, 126, 122, 119, 120, 119, 114, 107, 32.55110 + 97, 98, 100, 107, 117, 129, 128, 115, 97, 104, 97, 93, 92, 91, 86, 84, 32.55111 + 84, 81, 81, 76, 69, 60, 53, 50, 49, 53, 49, 39, 30, 68, 115, 115, 32.55112 + 117, 124, 98, 106, 99, 98, 106, 117, 113, 102, 107, 123, 129, 155, 157, 150, 32.55113 + 123, 103, 94, 123, 137, 158, 150, 142, 142, 149, 160, 145, 163, 164, 167, 167, 32.55114 + 166, 165, 166, 168, 170, 170, 167, 162, 160, 162, 159, 154, 161, 159, 161, 170, 32.55115 + 177, 179, 182, 186, 183, 185, 192, 198, 202, 200, 194, 188, 177, 177, 177, 179, 32.55116 + 182, 184, 183, 184, 181, 179, 176, 173, 169, 167, 166, 165, 162, 159, 159, 157, 32.55117 + 152, 144, 142, 145, 144, 138, 130, 127, 128, 130, 132, 129, 128, 126, 125, 122, 32.55118 + 115, 108, 106, 101, 102, 91, 94, 112, 129, 128, 121, 112, 99, 94, 85, 77, 32.55119 + 78, 78, 70, 61, 68, 67, 63, 61, 58, 56, 52, 49, 56, 56, 47, 35, 32.55120 + 71, 111, 109, 117, 122, 107, 119, 117, 110, 110, 112, 101, 89, 100, 121, 132, 32.55121 + 154, 133, 143, 115, 117, 94, 123, 119, 152, 155, 153, 157, 168, 174, 148, 147, 32.55122 + 151, 159, 164, 164, 159, 155, 155, 156, 163, 168, 167, 166, 167, 164, 160, 162, 32.55123 + 159, 162, 170, 177, 180, 182, 185, 185, 182, 181, 181, 181, 180, 176, 173, 173, 32.55124 + 171, 170, 170, 174, 177, 179, 179, 179, 178, 175, 171, 168, 165, 164, 164, 156, 32.55125 + 155, 159, 161, 159, 152, 149, 152, 155, 143, 131, 124, 126, 129, 131, 131, 133, 32.55126 + 134, 134, 124, 110, 101, 102, 103, 119, 95, 90, 113, 129, 122, 115, 118, 92, 32.55127 + 90, 81, 74, 77, 81, 72, 56, 56, 52, 47, 50, 54, 56, 51, 45, 40, 32.55128 + 49, 46, 37, 74, 115, 116, 132, 122, 109, 102, 95, 113, 114, 111, 110, 95, 32.55129 + 98, 129, 142, 144, 137, 147, 120, 110, 96, 108, 136, 144, 151, 157, 159, 155, 32.55130 + 151, 147, 156, 153, 155, 160, 162, 160, 163, 167, 155, 159, 163, 164, 164, 163, 32.55131 + 163, 164, 164, 164, 166, 171, 176, 180, 180, 179, 190, 183, 179, 179, 181, 181, 32.55132 + 176, 171, 168, 166, 165, 168, 174, 178, 179, 179, 181, 180, 177, 172, 169, 166, 32.55133 + 160, 155, 162, 161, 159, 155, 153, 151, 151, 152, 150, 136, 130, 121, 117, 126, 32.55134 + 134, 125, 137, 138, 135, 125, 115, 110, 108, 103, 98, 109, 86, 118, 114, 119, 32.55135 + 122, 113, 96, 82, 82, 71, 76, 84, 70, 63, 54, 54, 51, 48, 46, 46, 32.55136 + 47, 49, 51, 45, 46, 40, 68, 116, 122, 122, 123, 109, 100, 93, 99, 90, 32.55137 + 87, 96, 95, 105, 132, 129, 136, 137, 133, 110, 99, 98, 111, 140, 146, 150, 32.55138 + 152, 153, 149, 147, 144, 152, 153, 156, 161, 163, 160, 160, 163, 160, 163, 166, 32.55139 + 167, 167, 165, 165, 166, 159, 159, 161, 165, 171, 176, 178, 179, 186, 181, 177, 32.55140 + 176, 176, 173, 165, 158, 167, 167, 169, 173, 179, 182, 181, 179, 179, 179, 176, 32.55141 + 171, 167, 161, 154, 149, 161, 163, 163, 161, 158, 154, 151, 150, 155, 142, 134, 32.55142 + 127, 123, 132, 138, 129, 132, 134, 131, 121, 112, 107, 106, 101, 121, 122, 99, 32.55143 + 110, 105, 117, 110, 100, 113, 98, 96, 78, 74, 78, 63, 59, 59, 57, 54, 32.55144 + 51, 47, 45, 44, 44, 51, 47, 48, 41, 66, 112, 121, 123, 127, 110, 102, 32.55145 + 97, 92, 76, 75, 92, 102, 112, 127, 119, 128, 137, 116, 101, 90, 104, 116, 32.55146 + 138, 142, 146, 147, 150, 149, 148, 147, 152, 151, 156, 162, 164, 160, 158, 159, 32.55147 + 161, 164, 166, 167, 165, 164, 163, 164, 161, 160, 159, 162, 167, 172, 176, 176, 32.55148 + 179, 177, 177, 178, 178, 175, 167, 161, 159, 161, 165, 170, 174, 175, 173, 171, 32.55149 + 175, 174, 176, 174, 169, 162, 157, 154, 160, 163, 167, 167, 163, 156, 153, 149, 32.55150 + 159, 146, 137, 130, 126, 135, 141, 132, 127, 129, 127, 117, 109, 105, 104, 99, 32.55151 + 118, 115, 109, 102, 100, 121, 103, 95, 105, 97, 100, 83, 78, 80, 67, 66, 32.55152 + 61, 59, 55, 52, 48, 45, 40, 39, 48, 47, 50, 40, 61, 106, 116, 121, 32.55153 + 127, 106, 100, 104, 99, 89, 89, 101, 111, 114, 115, 111, 118, 128, 95, 92, 32.55154 + 82, 106, 112, 128, 134, 140, 145, 151, 152, 153, 153, 154, 152, 155, 160, 162, 32.55155 + 159, 158, 161, 158, 160, 164, 162, 162, 158, 160, 158, 167, 162, 162, 161, 167, 32.55156 + 170, 176, 175, 178, 176, 175, 174, 175, 170, 166, 161, 166, 166, 170, 171, 174, 32.55157 + 174, 173, 171, 163, 164, 169, 172, 170, 164, 162, 162, 160, 163, 168, 168, 165, 32.55158 + 160, 158, 155, 158, 143, 135, 128, 124, 134, 139, 129, 124, 128, 126, 117, 109, 32.55159 + 105, 106, 101, 100, 103, 121, 102, 100, 121, 97, 92, 83, 84, 97, 87, 83, 32.55160 + 83, 68, 66, 56, 54, 51, 50, 48, 45, 40, 37, 43, 43, 47, 35, 53, 32.55161 + 96, 108, 116, 120, 99, 96, 108, 107, 105, 101, 102, 111, 114, 106, 107, 106, 32.55162 + 109, 79, 83, 80, 102, 105, 123, 130, 138, 146, 154, 156, 156, 155, 159, 155, 32.55163 + 155, 159, 160, 158, 162, 166, 162, 164, 166, 164, 162, 160, 161, 161, 165, 161, 32.55164 + 160, 160, 166, 172, 178, 179, 181, 177, 173, 168, 165, 161, 158, 155, 163, 162, 32.55165 + 163, 161, 162, 161, 162, 162, 154, 152, 156, 162, 162, 156, 156, 160, 160, 162, 32.55166 + 164, 163, 163, 161, 161, 161, 155, 138, 129, 123, 121, 132, 136, 126, 126, 130, 32.55167 + 128, 119, 112, 108, 109, 103, 100, 107, 131, 103, 97, 108, 91, 89, 75, 79, 32.55168 + 98, 92, 88, 83, 60, 53, 49, 47, 44, 45, 47, 46, 42, 39, 37, 38, 32.55169 + 42, 29, 45, 88, 101, 109, 113, 203, 101, 106, 107, 109, 100, 92, 103, 113, 32.55170 + 102, 108, 101, 95, 79, 83, 87, 102, 107, 126, 133, 140, 148, 154, 154, 153, 32.55171 + 152, 161, 157, 156, 157, 158, 157, 163, 168, 168, 169, 169, 168, 166, 165, 166, 32.55172 + 167, 158, 156, 155, 159, 166, 173, 179, 182, 178, 174, 170, 167, 166, 166, 167, 32.55173 + 168, 158, 158, 157, 155, 153, 152, 154, 155, 158, 154, 156, 161, 158, 150, 150, 32.55174 + 157, 160, 161, 160, 159, 158, 159, 162, 163, 154, 136, 128, 122, 122, 133, 138, 32.55175 + 124, 127, 129, 130, 121, 113, 109, 110, 104, 105, 110, 125, 98, 96, 96, 101, 32.55176 + 100, 73, 75, 92, 91, 93, 90, 64, 51, 46, 43, 39, 41, 45, 46, 43, 32.55177 + 39, 35, 35, 38, 25, 42, 85, 98, 106, 111, 255, 108, 101, 104, 110, 101, 32.55178 + 87, 101, 111, 94, 102, 94, 83, 84, 81, 91, 100, 114, 131, 136, 140, 145, 32.55179 + 150, 150, 151, 150, 159, 156, 156, 158, 160, 159, 160, 165, 166, 169, 169, 168, 32.55180 + 166, 166, 167, 169, 162, 160, 160, 163, 169, 176, 181, 181, 176, 176, 176, 175, 32.55181 + 174, 174, 175, 176, 168, 170, 172, 171, 169, 167, 169, 169, 166, 159, 160, 162, 32.55182 + 155, 145, 148, 157, 160, 160, 159, 157, 156, 155, 157, 158, 153, 135, 124, 120, 32.55183 + 123, 135, 139, 125, 127, 129, 129, 120, 111, 107, 107, 102, 101, 104, 107, 94, 32.55184 + 103, 90, 110, 102, 77, 71, 80, 79, 90, 95, 72, 59, 51, 46, 40, 40, 32.55185 + 43, 44, 40, 37, 38, 36, 37, 25, 44, 88, 100, 107, 111, 255, 107, 98, 32.55186 + 103, 116, 108, 93, 104, 109, 84, 88, 82, 67, 83, 72, 86, 89, 114, 132, 32.55187 + 136, 138, 141, 146, 148, 151, 152, 155, 154, 154, 158, 159, 156, 156, 161, 159, 32.55188 + 162, 163, 162, 160, 160, 162, 164, 170, 168, 167, 168, 172, 176, 178, 179, 185, 32.55189 + 184, 183, 178, 172, 165, 162, 159, 157, 161, 167, 167, 166, 163, 164, 164, 165, 32.55190 + 159, 158, 160, 153, 142, 145, 157, 159, 161, 161, 158, 155, 152, 155, 153, 152, 32.55191 + 135, 124, 120, 122, 135, 139, 125, 125, 127, 126, 118, 109, 107, 105, 102, 101, 32.55192 + 104, 100, 99, 112, 85, 105, 85, 88, 73, 73, 68, 80, 92, 70, 58, 56, 32.55193 + 48, 42, 40, 42, 41, 38, 33, 40, 37, 38, 24, 45, 90, 103, 109, 111, 32.55194 + 255, 98, 93, 103, 108, 101, 93, 90, 89, 87, 66, 71, 77, 82, 85, 88, 32.55195 + 95, 104, 117, 123, 130, 135, 140, 143, 145, 148, 148, 155, 159, 160, 158, 156, 32.55196 + 157, 160, 159, 161, 161, 161, 161, 161, 161, 161, 164, 163, 164, 167, 172, 178, 32.55197 + 182, 183, 186, 171, 167, 168, 165, 151, 152, 160, 164, 164, 168, 168, 171, 169, 32.55198 + 169, 166, 164, 168, 169, 163, 159, 158, 158, 156, 156, 161, 164, 161, 156, 153, 32.55199 + 157, 160, 152, 151, 129, 128, 119, 138, 130, 126, 124, 131, 131, 121, 111, 111, 32.55200 + 116, 117, 112, 105, 97, 95, 92, 89, 90, 94, 88, 74, 80, 81, 66, 65, 32.55201 + 69, 52, 53, 45, 41, 42, 44, 40, 34, 27, 23, 34, 50, 37, 46, 81, 32.55202 + 96, 111, 103, 255, 255, 98, 104, 109, 106, 93, 82, 75, 74, 68, 71, 74, 32.55203 + 78, 85, 90, 99, 108, 115, 122, 129, 134, 139, 141, 143, 145, 143, 144, 146, 32.55204 + 150, 156, 159, 160, 161, 160, 162, 163, 163, 163, 162, 162, 161, 165, 163, 162, 32.55205 + 162, 163, 166, 168, 169, 172, 165, 163, 167, 166, 161, 163, 170, 177, 178, 179, 32.55206 + 180, 180, 178, 176, 173, 158, 161, 162, 158, 156, 156, 156, 153, 154, 157, 159, 32.55207 + 157, 153, 152, 153, 155, 148, 148, 129, 128, 122, 139, 128, 122, 123, 129, 132, 32.55208 + 124, 117, 115, 116, 114, 115, 110, 104, 99, 95, 92, 87, 83, 75, 66, 67, 32.55209 + 70, 70, 74, 78, 72, 61, 52, 44, 43, 45, 45, 42, 39, 36, 39, 46, 32.55210 + 32, 40, 76, 93, 105, 110, 255, 255, 99, 100, 106, 109, 96, 75, 62, 61, 32.55211 + 70, 70, 71, 76, 86, 95, 104, 112, 116, 125, 131, 136, 139, 141, 144, 146, 32.55212 + 145, 143, 143, 149, 159, 164, 163, 162, 164, 167, 168, 168, 168, 166, 165, 164, 32.55213 + 167, 165, 162, 160, 160, 160, 162, 162, 164, 164, 165, 166, 168, 170, 172, 174, 32.55214 + 165, 165, 166, 165, 164, 161, 159, 157, 156, 159, 163, 160, 158, 159, 158, 155, 32.55215 + 153, 153, 154, 153, 152, 151, 151, 151, 142, 143, 126, 128, 124, 141, 127, 118, 32.55216 + 123, 127, 131, 127, 122, 119, 114, 108, 111, 113, 107, 97, 94, 93, 83, 69, 32.55217 + 83, 78, 68, 65, 75, 76, 73, 75, 61, 54, 48, 47, 49, 50, 44, 39, 32.55218 + 38, 39, 50, 42, 56, 87, 94, 103, 113, 255, 255, 202, 92, 99, 110, 100, 32.55219 + 75, 59, 58, 70, 69, 71, 79, 91, 100, 107, 113, 118, 127, 133, 138, 140, 32.55220 + 142, 145, 147, 147, 148, 150, 156, 161, 163, 160, 158, 162, 165, 166, 167, 166, 32.55221 + 164, 163, 162, 164, 164, 163, 163, 163, 165, 168, 171, 171, 173, 173, 169, 169, 32.55222 + 172, 172, 166, 166, 166, 166, 166, 165, 162, 161, 159, 160, 162, 165, 162, 161, 32.55223 + 162, 161, 157, 156, 154, 153, 152, 153, 152, 151, 149, 141, 142, 126, 129, 124, 32.55224 + 143, 130, 121, 126, 127, 129, 127, 124, 118, 112, 108, 110, 114, 108, 96, 91, 32.55225 + 95, 82, 62, 93, 92, 74, 65, 79, 75, 64, 70, 61, 59, 56, 54, 55, 32.55226 + 54, 45, 34, 37, 32, 43, 43, 61, 92, 98, 107, 139, 255, 255, 255, 89, 32.55227 + 96, 109, 102, 80, 64, 62, 70, 71, 75, 84, 97, 103, 106, 110, 118, 126, 32.55228 + 133, 138, 140, 142, 146, 147, 143, 150, 159, 163, 162, 159, 157, 158, 157, 160, 32.55229 + 160, 161, 161, 160, 158, 157, 161, 163, 164, 166, 166, 169, 174, 176, 176, 178, 32.55230 + 176, 169, 167, 168, 164, 159, 169, 169, 169, 169, 169, 167, 169, 168, 165, 167, 32.55231 + 166, 161, 160, 162, 160, 156, 157, 155, 153, 152, 152, 151, 148, 146, 143, 146, 32.55232 + 130, 130, 123, 141, 132, 126, 129, 127, 125, 123, 120, 116, 113, 110, 114, 119, 32.55233 + 112, 96, 90, 95, 85, 69, 77, 80, 65, 60, 76, 73, 66, 75, 69, 68, 32.55234 + 63, 56, 56, 58, 51, 40, 47, 36, 38, 32, 47, 74, 85, 101, 220, 255, 32.55235 + 255, 255, 255, 97, 106, 103, 88, 73, 68, 73, 76, 81, 90, 98, 102, 104, 32.55236 + 108, 117, 125, 132, 136, 138, 140, 144, 145, 139, 148, 159, 163, 161, 157, 156, 32.55237 + 158, 161, 163, 163, 163, 164, 164, 164, 164, 162, 164, 167, 166, 164, 165, 170, 32.55238 + 173, 174, 171, 169, 167, 165, 161, 161, 160, 166, 167, 167, 166, 167, 167, 169, 32.55239 + 169, 170, 172, 168, 163, 163, 164, 165, 159, 158, 155, 154, 151, 148, 145, 144, 32.55240 + 143, 143, 148, 135, 134, 122, 139, 131, 129, 128, 126, 123, 122, 118, 111, 111, 32.55241 + 114, 120, 122, 115, 101, 93, 91, 84, 75, 61, 61, 55, 53, 62, 64, 65, 32.55242 + 71, 76, 72, 62, 51, 53, 63, 64, 56, 55, 47, 56, 51, 53, 62, 60, 32.55243 + 75, 255, 255, 255, 255, 255, 99, 103, 103, 98, 87, 78, 78, 82, 87, 92, 32.55244 + 96, 98, 102, 108, 119, 127, 134, 138, 140, 142, 145, 147, 145, 149, 156, 160, 32.55245 + 161, 160, 159, 160, 167, 166, 167, 167, 167, 169, 172, 174, 170, 172, 175, 171, 32.55246 + 168, 167, 172, 175, 172, 164, 163, 167, 166, 162, 164, 170, 178, 176, 176, 175, 32.55247 + 176, 177, 179, 179, 173, 172, 166, 160, 162, 166, 168, 164, 160, 160, 159, 155, 32.55248 + 148, 143, 143, 144, 140, 150, 141, 139, 123, 135, 127, 126, 122, 122, 122, 122, 32.55249 + 116, 107, 109, 115, 120, 118, 116, 105, 92, 81, 75, 73, 60, 52, 51, 49, 32.55250 + 43, 48, 59, 63, 73, 75, 68, 62, 68, 82, 85, 78, 64, 60, 73, 67, 32.55251 + 57, 53, 48, 66, 255, 255, 255, 255, 255, 203, 100, 103, 107, 99, 88, 83, 32.55252 + 87, 90, 92, 93, 94, 100, 110, 124, 132, 138, 143, 145, 146, 148, 151, 158, 32.55253 + 156, 155, 158, 162, 164, 161, 159, 164, 164, 162, 161, 162, 167, 171, 174, 179, 32.55254 + 181, 183, 179, 175, 174, 178, 182, 175, 163, 161, 169, 170, 163, 167, 178, 176, 32.55255 + 174, 174, 173, 174, 172, 175, 176, 167, 164, 159, 152, 155, 162, 165, 162, 162, 32.55256 + 165, 163, 157, 148, 142, 142, 145, 135, 150, 144, 144, 123, 132, 123, 123, 117, 32.55257 + 119, 124, 125, 116, 106, 107, 114, 116, 114, 111, 105, 87, 69, 64, 66, 60, 32.55258 + 47, 50, 48, 33, 42, 60, 63, 73, 82, 86, 87, 97, 112, 110, 97, 83, 32.55259 + 69, 68, 49, 35, 39, 55, 88, 255, 255, 255, 255, 255, 255, 203, 102, 105, 32.55260 + 97, 86, 91, 78, 89, 90, 94, 105, 101, 105, 123, 127, 131, 138, 143, 149, 32.55261 + 152, 156, 155, 154, 156, 156, 156, 157, 158, 159, 153, 161, 163, 161, 162, 169, 32.55262 + 176, 177, 176, 181, 186, 182, 176, 174, 178, 183, 173, 161, 158, 168, 170, 163, 32.55263 + 169, 182, 182, 181, 177, 173, 177, 180, 176, 168, 170, 165, 162, 161, 160, 156, 32.55264 + 158, 163, 156, 158, 159, 154, 143, 135, 134, 137, 134, 147, 147, 152, 127, 115, 32.55265 + 123, 116, 132, 112, 125, 119, 117, 117, 99, 115, 118, 117, 112, 101, 87, 74, 32.55266 + 67, 65, 49, 43, 45, 43, 40, 48, 54, 50, 68, 79, 94, 112, 125, 124, 32.55267 + 111, 98, 81, 83, 68, 48, 43, 48, 66, 94, 255, 255, 255, 255, 255, 255, 32.55268 + 255, 99, 100, 93, 84, 92, 84, 91, 90, 101, 110, 100, 106, 124, 129, 134, 32.55269 + 139, 143, 147, 152, 153, 148, 149, 149, 151, 155, 158, 162, 162, 162, 164, 164, 32.55270 + 164, 167, 175, 176, 174, 168, 171, 172, 172, 168, 170, 175, 179, 172, 160, 158, 32.55271 + 170, 173, 167, 168, 179, 181, 177, 172, 170, 170, 169, 170, 173, 169, 164, 161, 32.55272 + 162, 159, 157, 156, 160, 161, 145, 138, 144, 144, 132, 124, 125, 141, 103, 151, 32.55273 + 147, 119, 132, 117, 126, 129, 116, 119, 119, 114, 108, 99, 107, 115, 109, 104, 32.55274 + 101, 96, 81, 61, 44, 24, 28, 38, 41, 42, 53, 62, 63, 90, 100, 112, 32.55275 + 124, 126, 122, 117, 113, 100, 92, 68, 51, 51, 61, 78, 102, 255, 255, 255, 32.55276 + 255, 255, 255, 255, 255, 105, 100, 94, 94, 93, 91, 85, 104, 109, 92, 105, 32.55277 + 124, 129, 134, 138, 142, 144, 146, 147, 150, 151, 151, 154, 159, 163, 166, 166, 32.55278 + 164, 166, 165, 164, 169, 174, 170, 164, 165, 165, 163, 163, 164, 170, 176, 177, 32.55279 + 169, 158, 156, 170, 177, 173, 169, 173, 178, 172, 170, 169, 163, 156, 162, 173, 32.55280 + 171, 169, 165, 165, 164, 158, 157, 160, 149, 143, 137, 133, 127, 119, 117, 122, 32.55281 + 139, 102, 134, 122, 123, 138, 114, 116, 121, 120, 113, 120, 113, 99, 101, 101, 32.55282 + 114, 108, 98, 87, 76, 57, 37, 23, 31, 40, 49, 55, 62, 72, 80, 84, 32.55283 + 111, 118, 126, 128, 123, 117, 120, 128, 118, 104, 73, 52, 55, 66, 83, 103, 32.55284 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 117, 116, 103, 105, 93, 79, 101, 32.55285 + 102, 79, 100, 122, 127, 130, 136, 138, 139, 139, 139, 153, 151, 149, 152, 156, 32.55286 + 159, 159, 157, 156, 159, 160, 160, 163, 165, 161, 156, 166, 161, 157, 157, 161, 32.55287 + 168, 173, 174, 166, 155, 153, 169, 178, 173, 166, 164, 169, 165, 167, 170, 160, 32.55288 + 142, 145, 159, 165, 162, 160, 161, 159, 154, 151, 152, 132, 142, 141, 129, 121, 32.55289 + 122, 117, 106, 93, 116, 114, 110, 133, 121, 121, 109, 111, 118, 105, 119, 116, 32.55290 + 97, 110, 99, 105, 98, 84, 61, 38, 28, 31, 38, 54, 62, 62, 66, 80, 32.55291 + 92, 97, 105, 117, 117, 120, 123, 118, 113, 123, 137, 133, 121, 90, 61, 55, 32.55292 + 60, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 126, 118, 119, 32.55293 + 103, 83, 99, 97, 76, 97, 123, 127, 129, 132, 134, 134, 134, 136, 145, 141, 32.55294 + 138, 140, 143, 145, 143, 141, 140, 149, 157, 155, 154, 155, 157, 158, 162, 157, 32.55295 + 150, 150, 154, 161, 165, 166, 164, 154, 152, 165, 175, 171, 162, 156, 155, 155, 32.55296 + 161, 166, 153, 128, 122, 130, 133, 128, 129, 133, 133, 131, 130, 132, 157, 149, 32.55297 + 139, 133, 124, 114, 108, 112, 117, 100, 113, 122, 126, 106, 136, 118, 104, 113, 32.55298 + 100, 116, 116, 102, 111, 99, 77, 69, 56, 39, 30, 37, 57, 72, 70, 73, 32.55299 + 65, 62, 85, 99, 101, 112, 114, 107, 106, 117, 120, 116, 126, 143, 142, 139, 32.55300 + 110, 75, 53, 48, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 32.55301 + 117, 127, 125, 116, 96, 100, 97, 81, 99, 125, 126, 126, 127, 130, 131, 132, 32.55302 + 133, 135, 129, 125, 127, 131, 133, 130, 125, 125, 138, 149, 149, 147, 151, 157, 32.55303 + 163, 163, 157, 152, 150, 153, 159, 163, 165, 165, 157, 153, 161, 169, 165, 158, 32.55304 + 150, 144, 143, 149, 151, 139, 116, 103, 103, 96, 93, 95, 99, 103, 104, 108, 32.55305 + 112, 107, 91, 97, 116, 119, 127, 189, 255, 255, 95, 118, 120, 103, 117, 143, 32.55306 + 119, 108, 108, 101, 110, 111, 103, 99, 84, 56, 44, 32, 33, 47, 62, 69, 32.55307 + 72, 91, 98, 81, 73, 94, 101, 98, 110, 114, 100, 101, 122, 131, 126, 131, 32.55308 + 145, 144, 141, 115, 76, 50, 42, 57, 255, 255, 255, 255, 255, 255, 255, 255, 32.55309 + 255, 255, 255, 104, 116, 113, 118, 105, 97, 94, 85, 96, 121, 121, 120, 120, 32.55310 + 121, 123, 126, 129, 130, 123, 116, 116, 118, 117, 112, 106, 106, 118, 128, 134, 32.55311 + 138, 145, 154, 158, 160, 157, 153, 152, 154, 158, 164, 166, 170, 163, 157, 160, 32.55312 + 165, 160, 155, 148, 143, 140, 139, 135, 127, 113, 100, 91, 93, 88, 89, 93, 32.55313 + 96, 97, 99, 104, 122, 111, 111, 111, 98, 102, 164, 239, 255, 109, 121, 109, 32.55314 + 108, 123, 147, 125, 119, 108, 107, 100, 100, 98, 73, 59, 47, 39, 37, 49, 32.55315 + 66, 73, 69, 60, 90, 109, 99, 91, 109, 106, 99, 114, 115, 103, 110, 134, 32.55316 + 141, 129, 130, 145, 150, 138, 106, 72, 56, 52, 64, 255, 255, 255, 255, 255, 32.55317 + 255, 255, 255, 255, 255, 255, 101, 99, 96, 113, 106, 89, 89, 83, 87, 114, 32.55318 + 113, 111, 112, 112, 115, 119, 122, 124, 116, 106, 101, 101, 97, 88, 81, 87, 32.55319 + 95, 106, 115, 125, 138, 145, 147, 148, 148, 145, 146, 147, 153, 160, 163, 174, 32.55320 + 165, 160, 159, 160, 159, 154, 151, 149, 145, 134, 125, 121, 116, 105, 91, 113, 32.55321 + 106, 103, 103, 102, 100, 102, 107, 112, 114, 112, 108, 112, 120, 119, 112, 101, 32.55322 + 111, 129, 114, 135, 107, 146, 151, 129, 108, 110, 94, 92, 93, 55, 43, 47, 32.55323 + 52, 63, 75, 81, 82, 76, 69, 59, 91, 94, 92, 113, 110, 104, 124, 117, 32.55324 + 108, 119, 144, 148, 128, 126, 139, 160, 138, 98, 71, 69, 74, 255, 255, 255, 32.55325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 108, 109, 105, 122, 65, 66, 32.55326 + 92, 62, 86, 120, 104, 100, 99, 112, 98, 118, 107, 110, 106, 91, 87, 89, 32.55327 + 87, 78, 88, 74, 82, 110, 111, 102, 123, 127, 141, 116, 144, 129, 139, 150, 32.55328 + 172, 159, 158, 164, 160, 155, 155, 150, 142, 144, 137, 125, 116, 114, 113, 106, 32.55329 + 98, 91, 79, 92, 70, 78, 91, 102, 96, 47, 63, 75, 102, 117, 98, 126, 32.55330 + 111, 115, 108, 112, 118, 127, 137, 137, 121, 104, 80, 107, 79, 68, 72, 85, 32.55331 + 58, 61, 81, 91, 99, 99, 95, 89, 74, 62, 69, 60, 76, 92, 113, 119, 32.55332 + 98, 91, 88, 99, 121, 140, 140, 129, 126, 133, 140, 130, 88, 54, 85, 85, 32.55333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 104, 105, 32.55334 + 75, 48, 43, 72, 108, 70, 91, 84, 96, 105, 116, 92, 92, 95, 101, 104, 32.55335 + 104, 102, 99, 92, 83, 78, 99, 105, 120, 106, 117, 107, 120, 51, 104, 104, 32.55336 + 134, 136, 136, 162, 174, 167, 174, 167, 153, 146, 136, 122, 118, 125, 119, 117, 32.55337 + 117, 111, 102, 95, 91, 98, 70, 92, 103, 89, 94, 97, 240, 250, 55, 70, 32.55338 + 86, 103, 120, 104, 122, 116, 109, 110, 118, 124, 122, 124, 130, 118, 128, 95, 32.55339 + 57, 73, 84, 84, 95, 103, 106, 104, 99, 95, 92, 84, 74, 64, 61, 82, 32.55340 + 92, 100, 102, 89, 95, 101, 114, 131, 139, 138, 133, 127, 122, 134, 122, 68, 32.55341 + 49, 89, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55342 + 98, 97, 100, 50, 85, 81, 62, 89, 64, 71, 74, 95, 104, 117, 107, 104, 32.55343 + 113, 105, 95, 90, 83, 76, 75, 76, 83, 93, 89, 118, 137, 197, 155, 160, 32.55344 + 255, 249, 64, 78, 114, 152, 158, 147, 160, 171, 166, 150, 148, 145, 134, 127, 32.55345 + 116, 112, 110, 109, 101, 94, 93, 96, 87, 101, 123, 71, 65, 62, 147, 83, 32.55346 + 62, 87, 85, 68, 91, 81, 109, 115, 130, 115, 111, 115, 111, 103, 113, 133, 32.55347 + 90, 101, 92, 56, 84, 88, 102, 106, 112, 111, 104, 97, 97, 96, 87, 77, 32.55348 + 66, 70, 94, 94, 89, 88, 85, 103, 99, 112, 124, 130, 136, 138, 129, 117, 32.55349 + 135, 121, 55, 55, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55350 + 255, 255, 255, 107, 96, 65, 25, 80, 104, 79, 72, 63, 73, 93, 111, 109, 32.55351 + 113, 116, 116, 112, 97, 86, 83, 74, 62, 60, 70, 90, 72, 95, 116, 109, 32.55352 + 157, 138, 166, 178, 204, 84, 105, 109, 132, 154, 170, 155, 170, 167, 154, 153, 32.55353 + 148, 126, 106, 114, 108, 101, 99, 95, 93, 97, 103, 114, 127, 111, 71, 85, 32.55354 + 81, 218, 33, 65, 90, 145, 127, 62, 93, 88, 100, 125, 119, 117, 115, 109, 32.55355 + 100, 103, 114, 75, 99, 110, 93, 111, 113, 116, 113, 110, 110, 107, 103, 102, 32.55356 + 98, 82, 66, 75, 79, 100, 97, 86, 87, 89, 111, 103, 109, 119, 132, 143, 32.55357 + 140, 130, 115, 136, 126, 60, 74, 108, 255, 255, 255, 255, 255, 255, 255, 255, 32.55358 + 255, 255, 255, 255, 255, 255, 110, 111, 86, 102, 96, 85, 70, 54, 95, 102, 32.55359 + 121, 127, 120, 108, 102, 91, 75, 76, 90, 111, 110, 86, 68, 68, 122, 44, 32.55360 + 76, 106, 98, 113, 106, 118, 131, 131, 93, 101, 86, 110, 129, 132, 130, 156, 32.55361 + 163, 146, 134, 128, 126, 129, 118, 110, 105, 108, 112, 111, 110, 109, 141, 147, 32.55362 + 149, 106, 57, 78, 91, 69, 87, 67, 88, 104, 82, 112, 101, 114, 113, 119, 32.55363 + 120, 114, 116, 122, 121, 112, 105, 134, 135, 126, 110, 118, 111, 109, 110, 111, 32.55364 + 108, 105, 105, 99, 82, 65, 79, 78, 94, 90, 87, 91, 92, 113, 127, 124, 32.55365 + 132, 150, 159, 147, 126, 114, 123, 119, 70, 93, 162, 255, 255, 255, 255, 255, 32.55366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 102, 66, 110, 74, 57, 103, 32.55367 + 141, 164, 152, 135, 109, 113, 104, 96, 79, 75, 82, 101, 122, 119, 94, 71, 32.55368 + 64, 130, 28, 49, 105, 131, 136, 119, 97, 114, 104, 137, 124, 84, 99, 119, 32.55369 + 124, 131, 132, 142, 185, 234, 221, 146, 79, 119, 115, 117, 126, 132, 128, 119, 32.55370 + 111, 128, 112, 177, 135, 83, 110, 83, 101, 88, 141, 120, 110, 146, 109, 120, 32.55371 + 104, 122, 128, 125, 115, 122, 137, 138, 124, 105, 137, 139, 138, 107, 121, 113, 32.55372 + 111, 118, 116, 109, 103, 100, 97, 86, 76, 74, 67, 81, 82, 89, 97, 95, 32.55373 + 112, 140, 138, 143, 158, 166, 157, 136, 119, 100, 101, 78, 98, 255, 255, 255, 32.55374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 45, 52, 94, 32.55375 + 83, 66, 110, 168, 181, 173, 138, 88, 105, 104, 104, 96, 111, 110, 113, 117, 32.55376 + 110, 95, 84, 81, 97, 86, 95, 128, 127, 122, 107, 110, 130, 102, 114, 96, 32.55377 + 65, 95, 118, 128, 126, 136, 137, 132, 121, 103, 98, 109, 113, 112, 116, 125, 32.55378 + 130, 125, 120, 116, 151, 88, 128, 118, 117, 95, 119, 113, 146, 98, 145, 135, 32.55379 + 131, 133, 130, 130, 139, 139, 134, 126, 131, 140, 142, 135, 106, 135, 152, 144, 32.55380 + 123, 127, 132, 127, 120, 119, 112, 103, 99, 96, 91, 84, 72, 63, 77, 84, 32.55381 + 96, 110, 107, 118, 145, 156, 157, 151, 159, 164, 146, 115, 87, 81, 82, 97, 32.55382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 32.55383 + 90, 117, 88, 74, 51, 78, 143, 133, 152, 139, 90, 112, 107, 107, 104, 125, 32.55384 + 125, 126, 128, 126, 123, 122, 121, 101, 152, 127, 142, 137, 147, 114, 124, 122, 32.55385 + 115, 113, 110, 90, 117, 133, 146, 151, 144, 135, 130, 125, 111, 109, 127, 107, 32.55386 + 106, 108, 111, 112, 110, 114, 120, 105, 138, 134, 106, 128, 149, 127, 144, 125, 32.55387 + 170, 137, 142, 134, 133, 136, 147, 142, 136, 135, 138, 141, 139, 141, 145, 128, 32.55388 + 143, 160, 124, 110, 103, 127, 122, 115, 116, 115, 107, 101, 98, 91, 82, 75, 32.55389 + 67, 82, 90, 107, 123, 118, 129, 159, 182, 175, 147, 148, 167, 147, 101, 84, 32.55390 + 73, 86, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55391 + 255, 255, 201, 108, 96, 90, 92, 40, 89, 154, 174, 131, 112, 98, 135, 118, 32.55392 + 105, 119, 128, 132, 134, 132, 128, 128, 133, 137, 134, 135, 140, 147, 151, 144, 32.55393 + 129, 115, 113, 114, 95, 101, 99, 117, 127, 151, 146, 145, 143, 132, 119, 108, 32.55394 + 108, 113, 105, 118, 126, 117, 101, 91, 98, 111, 122, 122, 121, 123, 125, 131, 32.55395 + 138, 142, 147, 149, 146, 139, 134, 139, 143, 144, 143, 151, 152, 132, 124, 145, 32.55396 + 158, 144, 138, 145, 172, 142, 108, 122, 123, 120, 117, 118, 116, 107, 99, 95, 32.55397 + 85, 78, 77, 72, 105, 91, 121, 114, 139, 122, 126, 177, 167, 151, 154, 158, 32.55398 + 148, 101, 79, 81, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55399 + 255, 255, 255, 255, 255, 255, 100, 93, 88, 84, 47, 79, 142, 197, 149, 129, 32.55400 + 107, 129, 117, 112, 127, 127, 132, 134, 134, 135, 134, 136, 138, 146, 140, 135, 32.55401 + 132, 130, 126, 122, 115, 112, 107, 104, 107, 110, 122, 132, 140, 144, 145, 143, 32.55402 + 136, 124, 112, 108, 108, 96, 103, 110, 109, 105, 102, 109, 116, 116, 116, 117, 32.55403 + 119, 125, 131, 138, 142, 134, 137, 136, 131, 130, 137, 145, 147, 143, 147, 147, 32.55404 + 134, 124, 142, 153, 143, 116, 133, 164, 140, 116, 126, 118, 116, 117, 117, 115, 32.55405 + 106, 101, 96, 91, 84, 74, 73, 105, 95, 123, 120, 146, 130, 130, 172, 162, 32.55406 + 148, 151, 152, 141, 101, 70, 75, 144, 255, 255, 255, 255, 255, 255, 255, 255, 32.55407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 87, 85, 75, 60, 61, 117, 32.55408 + 169, 124, 119, 110, 121, 121, 127, 138, 132, 133, 135, 137, 139, 140, 140, 137, 32.55409 + 129, 129, 133, 133, 132, 128, 123, 116, 115, 102, 107, 112, 107, 120, 136, 134, 32.55410 + 140, 141, 139, 133, 125, 114, 102, 95, 98, 101, 106, 112, 120, 124, 128, 129, 32.55411 + 122, 122, 122, 124, 128, 131, 135, 137, 131, 135, 136, 134, 136, 145, 152, 154, 32.55412 + 146, 145, 144, 136, 127, 138, 149, 142, 123, 143, 153, 125, 114, 122, 118, 126, 32.55413 + 118, 118, 114, 104, 99, 96, 92, 87, 79, 80, 108, 101, 124, 123, 146, 130, 32.55414 + 130, 157, 147, 141, 150, 149, 132, 99, 62, 73, 255, 255, 255, 255, 255, 255, 32.55415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 84, 85, 73, 32.55416 + 76, 46, 79, 111, 82, 100, 110, 115, 126, 135, 142, 138, 137, 137, 138, 141, 32.55417 + 142, 141, 136, 120, 126, 134, 139, 142, 138, 134, 132, 127, 113, 106, 116, 83, 32.55418 + 118, 136, 141, 138, 141, 137, 131, 125, 117, 102, 90, 107, 107, 113, 121, 133, 32.55419 + 139, 143, 143, 139, 139, 137, 136, 135, 134, 135, 134, 138, 143, 147, 146, 149, 32.55420 + 155, 157, 156, 154, 148, 147, 142, 132, 138, 146, 141, 141, 162, 157, 127, 124, 32.55421 + 124, 119, 129, 123, 120, 114, 101, 94, 91, 87, 84, 88, 90, 114, 108, 124, 32.55422 + 123, 140, 124, 124, 133, 126, 126, 143, 139, 113, 83, 54, 68, 255, 255, 255, 32.55423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55424 + 83, 86, 76, 85, 42, 48, 88, 76, 100, 116, 113, 128, 132, 134, 142, 139, 32.55425 + 136, 135, 137, 138, 137, 135, 136, 135, 134, 133, 136, 141, 146, 148, 136, 130, 32.55426 + 109, 126, 70, 121, 133, 148, 149, 150, 144, 136, 130, 125, 113, 98, 104, 108, 32.55427 + 116, 125, 136, 141, 147, 150, 154, 155, 153, 150, 147, 142, 140, 138, 142, 147, 32.55428 + 154, 157, 159, 162, 158, 152, 162, 156, 153, 149, 139, 143, 147, 139, 135, 162, 32.55429 + 159, 143, 143, 132, 121, 119, 121, 116, 109, 96, 88, 87, 85, 82, 93, 97, 32.55430 + 115, 113, 122, 124, 135, 120, 124, 121, 114, 114, 131, 124, 85, 55, 47, 125, 32.55431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55432 + 255, 255, 255, 86, 85, 82, 86, 56, 39, 84, 83, 100, 112, 107, 128, 124, 32.55433 + 136, 141, 140, 138, 137, 136, 136, 136, 135, 130, 132, 136, 141, 148, 152, 152, 32.55434 + 150, 139, 142, 118, 132, 82, 127, 133, 151, 150, 155, 148, 137, 131, 128, 117, 32.55435 + 101, 100, 106, 116, 126, 138, 144, 150, 156, 157, 159, 159, 157, 155, 153, 151, 32.55436 + 147, 147, 154, 162, 165, 169, 170, 164, 156, 164, 161, 159, 152, 142, 150, 152, 32.55437 + 139, 133, 151, 142, 136, 134, 129, 133, 125, 114, 111, 103, 94, 87, 88, 88, 32.55438 + 85, 90, 96, 112, 115, 119, 127, 134, 120, 136, 130, 125, 115, 121, 112, 66, 32.55439 + 42, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55440 + 255, 255, 255, 255, 255, 255, 91, 83, 83, 78, 82, 54, 65, 77, 88, 101, 32.55441 + 104, 129, 119, 140, 141, 144, 148, 149, 148, 146, 145, 143, 129, 134, 146, 158, 32.55442 + 167, 165, 156, 145, 142, 141, 124, 116, 104, 126, 138, 149, 149, 157, 152, 140, 32.55443 + 131, 128, 117, 102, 103, 106, 115, 126, 140, 147, 151, 155, 159, 162, 163, 163, 32.55444 + 163, 161, 159, 155, 157, 162, 168, 170, 173, 176, 169, 161, 157, 160, 160, 150, 32.55445 + 143, 156, 158, 139, 146, 149, 131, 126, 117, 120, 143, 131, 112, 109, 103, 94, 32.55446 + 88, 89, 89, 86, 87, 94, 109, 116, 117, 128, 131, 118, 140, 140, 141, 116, 32.55447 + 106, 95, 55, 40, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 79, 81, 70, 101, 69, 46, 32.55449 + 69, 81, 95, 105, 131, 113, 137, 140, 149, 159, 162, 159, 155, 153, 151, 160, 32.55450 + 157, 157, 160, 166, 163, 157, 148, 149, 139, 126, 94, 116, 122, 145, 148, 149, 32.55451 + 160, 159, 147, 138, 135, 123, 108, 108, 107, 111, 123, 138, 145, 145, 143, 160, 32.55452 + 163, 165, 166, 165, 163, 161, 158, 163, 166, 166, 168, 170, 171, 166, 157, 148, 32.55453 + 154, 156, 143, 138, 157, 160, 139, 153, 150, 135, 137, 120, 117, 140, 113, 112, 32.55454 + 109, 102, 93, 88, 88, 87, 84, 87, 95, 108, 117, 115, 129, 130, 117, 127, 32.55455 + 135, 140, 103, 84, 75, 42, 38, 110, 255, 255, 255, 255, 255, 255, 255, 255, 32.55456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 86, 84, 82, 32.55457 + 86, 90, 73, 54, 77, 116, 96, 121, 137, 122, 150, 153, 156, 159, 161, 163, 32.55458 + 165, 164, 168, 171, 174, 170, 163, 155, 151, 150, 150, 131, 116, 114, 118, 124, 32.55459 + 136, 153, 152, 157, 154, 141, 135, 133, 128, 119, 118, 106, 115, 113, 119, 131, 32.55460 + 133, 152, 165, 167, 166, 163, 161, 163, 168, 171, 168, 172, 176, 178, 177, 172, 32.55461 + 170, 168, 175, 143, 132, 142, 148, 149, 146, 137, 141, 143, 144, 142, 137, 131, 32.55462 + 119, 106, 110, 101, 94, 86, 78, 78, 84, 94, 98, 98, 113, 124, 119, 123, 32.55463 + 136, 143, 136, 137, 126, 106, 66, 61, 27, 24, 255, 255, 255, 255, 255, 255, 32.55464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55465 + 81, 79, 76, 79, 85, 109, 83, 60, 82, 91, 113, 125, 148, 152, 156, 159, 32.55466 + 161, 163, 165, 166, 167, 166, 171, 177, 180, 177, 165, 152, 142, 130, 135, 136, 32.55467 + 130, 132, 143, 148, 149, 159, 160, 155, 146, 139, 133, 128, 122, 129, 120, 129, 32.55468 + 127, 126, 133, 133, 149, 157, 162, 170, 175, 177, 174, 171, 167, 168, 164, 166, 32.55469 + 173, 182, 181, 172, 159, 156, 139, 138, 142, 135, 132, 140, 146, 132, 131, 132, 32.55470 + 136, 139, 136, 131, 123, 108, 99, 90, 82, 75, 77, 83, 92, 97, 98, 112, 32.55471 + 119, 117, 124, 141, 144, 130, 133, 123, 90, 64, 73, 58, 54, 255, 255, 255, 32.55472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55473 + 255, 255, 255, 80, 78, 75, 77, 82, 99, 139, 108, 81, 86, 116, 118, 147, 32.55474 + 152, 156, 161, 166, 169, 172, 173, 173, 183, 176, 168, 163, 164, 162, 158, 153, 32.55475 + 112, 134, 142, 129, 132, 152, 156, 145, 161, 161, 155, 150, 142, 131, 126, 126, 32.55476 + 126, 122, 136, 135, 131, 134, 132, 146, 151, 150, 153, 155, 163, 167, 173, 173, 32.55477 + 179, 173, 172, 170, 174, 170, 166, 158, 157, 145, 147, 147, 133, 129, 139, 147, 32.55478 + 141, 134, 131, 137, 141, 135, 131, 129, 108, 100, 90, 81, 75, 77, 82, 89, 32.55479 + 98, 98, 108, 112, 112, 124, 139, 140, 131, 127, 120, 71, 65, 84, 91, 86, 32.55480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55481 + 255, 255, 255, 255, 255, 255, 83, 81, 78, 79, 85, 86, 155, 144, 109, 100, 32.55482 + 124, 124, 144, 148, 153, 159, 165, 171, 174, 175, 176, 173, 174, 176, 176, 172, 32.55483 + 158, 141, 129, 122, 135, 134, 120, 127, 151, 158, 150, 157, 157, 153, 151, 143, 32.55484 + 130, 128, 129, 115, 116, 138, 139, 135, 136, 133, 147, 214, 204, 188, 175, 167, 32.55485 + 165, 164, 164, 171, 174, 172, 161, 149, 148, 159, 172, 177, 159, 151, 151, 146, 32.55486 + 144, 144, 136, 151, 139, 134, 141, 144, 134, 128, 127, 109, 102, 91, 80, 75, 32.55487 + 79, 84, 87, 103, 100, 106, 107, 109, 126, 141, 137, 141, 121, 112, 61, 65, 32.55488 + 78, 96, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 84, 81, 81, 86, 107, 112, 32.55490 + 108, 125, 115, 123, 128, 154, 161, 165, 170, 177, 181, 183, 182, 182, 176, 177, 32.55491 + 176, 170, 159, 147, 138, 134, 151, 142, 129, 124, 137, 153, 159, 159, 160, 162, 32.55492 + 159, 154, 145, 131, 129, 129, 112, 114, 138, 141, 139, 140, 135, 146, 148, 145, 32.55493 + 144, 145, 148, 150, 151, 151, 145, 152, 154, 148, 140, 144, 160, 179, 184, 164, 32.55494 + 154, 155, 154, 153, 146, 132, 140, 131, 130, 139, 144, 139, 134, 131, 111, 104, 32.55495 + 93, 81, 77, 82, 86, 85, 103, 102, 104, 104, 112, 136, 149, 138, 144, 108, 32.55496 + 98, 61, 67, 68, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 80, 80, 32.55498 + 85, 94, 91, 105, 128, 101, 112, 124, 133, 152, 156, 158, 159, 161, 161, 160, 32.55499 + 158, 164, 159, 148, 137, 133, 140, 155, 168, 159, 138, 125, 132, 148, 154, 154, 32.55500 + 158, 168, 176, 172, 159, 145, 135, 129, 124, 112, 114, 134, 137, 135, 134, 124, 32.55501 + 134, 153, 150, 146, 138, 134, 131, 134, 136, 146, 145, 148, 151, 156, 159, 162, 32.55502 + 164, 164, 159, 160, 158, 148, 144, 144, 137, 131, 127, 126, 130, 138, 140, 134, 32.55503 + 126, 114, 110, 98, 83, 79, 86, 88, 84, 98, 100, 103, 105, 116, 145, 157, 32.55504 + 141, 132, 92, 79, 63, 66, 66, 135, 255, 255, 255, 255, 255, 255, 255, 255, 32.55505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55506 + 255, 81, 80, 85, 74, 102, 118, 125, 97, 120, 126, 120, 130, 131, 131, 132, 32.55507 + 133, 132, 132, 132, 133, 138, 146, 152, 157, 156, 155, 154, 148, 131, 122, 131, 32.55508 + 144, 150, 150, 153, 169, 184, 181, 160, 144, 138, 132, 121, 112, 111, 129, 129, 32.55509 + 128, 127, 117, 125, 137, 137, 138, 134, 133, 137, 150, 159, 154, 153, 156, 160, 32.55510 + 165, 164, 160, 158, 157, 158, 164, 162, 148, 142, 144, 137, 132, 131, 126, 123, 32.55511 + 130, 141, 135, 122, 119, 114, 101, 85, 82, 90, 92, 86, 91, 94, 99, 100, 32.55512 + 114, 144, 152, 127, 104, 76, 61, 57, 55, 72, 255, 255, 255, 255, 255, 255, 32.55513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55514 + 255, 255, 255, 255, 198, 82, 86, 96, 100, 91, 113, 123, 140, 135, 146, 149, 32.55515 + 150, 153, 154, 157, 157, 159, 161, 159, 158, 160, 162, 163, 158, 149, 142, 140, 32.55516 + 131, 123, 126, 138, 150, 155, 158, 164, 182, 182, 157, 139, 140, 134, 119, 115, 32.55517 + 112, 128, 130, 131, 131, 120, 128, 123, 135, 148, 151, 146, 140, 140, 143, 147, 32.55518 + 155, 162, 162, 158, 157, 164, 171, 166, 161, 166, 164, 155, 151, 146, 130, 130, 32.55519 + 132, 126, 118, 128, 147, 146, 131, 121, 118, 105, 88, 85, 92, 93, 86, 88, 32.55520 + 91, 95, 94, 105, 134, 137, 108, 82, 66, 48, 47, 43, 77, 255, 255, 255, 32.55521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55522 + 255, 255, 255, 255, 255, 255, 255, 255, 82, 79, 86, 94, 95, 131, 112, 116, 32.55523 + 128, 145, 150, 153, 159, 160, 159, 159, 161, 163, 159, 164, 167, 162, 153, 146, 32.55524 + 145, 146, 128, 121, 120, 132, 146, 152, 152, 153, 156, 166, 168, 159, 148, 141, 32.55525 + 133, 125, 115, 117, 123, 127, 133, 136, 135, 134, 120, 127, 139, 152, 159, 156, 32.55526 + 145, 137, 135, 147, 160, 165, 162, 159, 160, 163, 166, 157, 155, 159, 156, 144, 32.55527 + 138, 139, 126, 125, 126, 126, 128, 132, 135, 139, 120, 116, 106, 93, 87, 87, 32.55528 + 89, 88, 83, 88, 98, 86, 113, 138, 91, 56, 38, 59, 63, 34, 18, 136, 32.55529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 83, 86, 93, 95, 32.55531 + 125, 113, 121, 129, 146, 149, 153, 157, 158, 159, 158, 160, 160, 164, 161, 157, 32.55532 + 153, 149, 145, 141, 138, 132, 125, 125, 135, 146, 150, 149, 150, 160, 166, 165, 32.55533 + 153, 143, 137, 131, 123, 116, 119, 122, 129, 135, 139, 137, 136, 128, 134, 144, 32.55534 + 155, 163, 163, 158, 153, 147, 149, 153, 157, 161, 165, 169, 170, 162, 158, 157, 32.55535 + 156, 150, 142, 138, 136, 128, 118, 116, 127, 129, 126, 133, 144, 126, 122, 109, 32.55536 + 95, 87, 87, 87, 85, 85, 85, 91, 82, 100, 115, 80, 56, 59, 57, 49, 32.55537 + 32, 34, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 32.55539 + 87, 89, 92, 113, 113, 125, 128, 141, 147, 150, 152, 155, 158, 157, 157, 155, 32.55540 + 162, 153, 145, 143, 147, 148, 141, 134, 133, 127, 127, 136, 147, 151, 152, 154, 32.55541 + 166, 168, 163, 152, 143, 135, 129, 125, 123, 122, 125, 131, 136, 137, 136, 133, 32.55542 + 134, 138, 144, 153, 161, 165, 165, 164, 160, 151, 142, 141, 150, 161, 168, 168, 32.55543 + 157, 158, 157, 150, 143, 139, 136, 130, 133, 116, 114, 130, 132, 122, 128, 146, 32.55544 + 133, 127, 113, 97, 88, 86, 86, 83, 94, 83, 85, 75, 74, 71, 47, 39, 32.55545 + 52, 35, 21, 30, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55547 + 255, 255, 199, 85, 85, 88, 93, 108, 124, 120, 132, 143, 145, 147, 151, 154, 32.55548 + 155, 154, 151, 152, 146, 141, 141, 147, 150, 145, 137, 129, 124, 124, 132, 143, 32.55549 + 151, 158, 165, 168, 170, 165, 156, 146, 138, 130, 125, 125, 123, 125, 130, 134, 32.55550 + 131, 128, 128, 135, 139, 144, 150, 156, 161, 163, 164, 168, 155, 140, 135, 140, 32.55551 + 149, 157, 158, 150, 157, 156, 144, 137, 137, 133, 124, 136, 126, 124, 135, 137, 32.55552 + 130, 130, 137, 140, 133, 117, 98, 86, 84, 83, 79, 94, 78, 75, 69, 52, 32.55553 + 36, 26, 28, 33, 25, 22, 43, 82, 255, 255, 255, 255, 255, 255, 255, 255, 32.55554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55555 + 255, 255, 255, 255, 255, 255, 84, 80, 83, 71, 96, 118, 111, 121, 135, 141, 32.55556 + 144, 147, 151, 151, 149, 147, 144, 143, 144, 148, 150, 147, 143, 139, 130, 124, 32.55557 + 121, 127, 135, 145, 156, 169, 164, 162, 160, 155, 148, 135, 125, 118, 119, 116, 32.55558 + 120, 128, 131, 127, 125, 128, 138, 140, 145, 149, 152, 154, 155, 156, 165, 157, 32.55559 + 147, 139, 137, 142, 148, 151, 148, 153, 152, 141, 136, 136, 132, 122, 128, 132, 32.55560 + 135, 137, 141, 141, 136, 128, 143, 136, 119, 99, 87, 83, 81, 76, 85, 69, 32.55561 + 65, 65, 43, 28, 32, 30, 32, 45, 55, 71, 98, 255, 255, 255, 255, 255, 32.55562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 75, 80, 50, 87, 115, 105, 32.55564 + 118, 128, 137, 142, 147, 147, 144, 143, 143, 143, 146, 149, 151, 148, 143, 137, 32.55565 + 135, 133, 127, 122, 123, 127, 135, 146, 159, 152, 149, 147, 147, 140, 128, 115, 32.55566 + 111, 108, 109, 118, 129, 130, 125, 128, 136, 141, 144, 147, 149, 148, 148, 149, 32.55567 + 150, 155, 154, 152, 147, 143, 143, 147, 150, 148, 148, 146, 141, 139, 136, 131, 32.55568 + 124, 116, 129, 135, 137, 143, 149, 140, 124, 144, 137, 119, 99, 86, 83, 81, 32.55569 + 76, 80, 67, 60, 57, 34, 29, 44, 24, 29, 52, 74, 85, 255, 255, 255, 32.55570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 74, 79, 36, 32.55572 + 82, 115, 105, 123, 122, 132, 143, 146, 142, 140, 141, 143, 143, 145, 147, 147, 32.55573 + 143, 139, 133, 131, 133, 128, 124, 123, 123, 126, 135, 147, 141, 135, 133, 134, 32.55574 + 130, 118, 108, 106, 106, 111, 123, 133, 132, 124, 130, 142, 144, 145, 146, 144, 32.55575 + 142, 142, 145, 147, 146, 148, 150, 149, 147, 145, 145, 147, 153, 143, 141, 142, 32.55576 + 144, 139, 132, 127, 118, 125, 131, 139, 147, 148, 139, 127, 144, 136, 118, 97, 32.55577 + 85, 81, 80, 77, 78, 69, 56, 51, 36, 49, 71, 35, 25, 34, 60, 140, 32.55578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55580 + 195, 80, 31, 81, 118, 109, 128, 117, 130, 141, 143, 138, 133, 135, 140, 140, 32.55581 + 139, 138, 138, 137, 137, 134, 131, 128, 126, 125, 124, 123, 123, 131, 140, 135, 32.55582 + 126, 122, 123, 119, 111, 106, 106, 111, 116, 129, 137, 130, 118, 124, 140, 143, 32.55583 + 144, 143, 140, 137, 138, 143, 147, 143, 145, 146, 146, 147, 143, 141, 137, 155, 32.55584 + 141, 136, 144, 149, 142, 132, 130, 129, 123, 129, 144, 151, 143, 134, 131, 143, 32.55585 + 135, 118, 98, 85, 82, 82, 78, 72, 68, 53, 51, 48, 79, 110, 65, 33, 32.55586 + 25, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55588 + 255, 255, 255, 255, 73, 42, 89, 114, 125, 127, 124, 104, 136, 138, 123, 134, 32.55589 + 133, 148, 137, 140, 135, 132, 139, 136, 129, 132, 136, 131, 126, 125, 126, 125, 32.55590 + 122, 115, 111, 110, 114, 112, 108, 103, 102, 104, 132, 133, 133, 130, 126, 124, 32.55591 + 129, 132, 134, 133, 131, 129, 137, 141, 142, 137, 139, 155, 144, 144, 155, 141, 32.55592 + 138, 147, 143, 146, 138, 132, 139, 140, 132, 130, 114, 123, 141, 145, 137, 138, 32.55593 + 139, 130, 127, 132, 126, 104, 88, 86, 84, 75, 78, 61, 53, 51, 85, 130, 32.55594 + 121, 106, 99, 21, 97, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55596 + 255, 255, 255, 255, 255, 255, 255, 255, 43, 88, 111, 122, 125, 135, 119, 133, 32.55597 + 136, 124, 125, 130, 140, 137, 141, 137, 133, 137, 132, 126, 130, 120, 123, 126, 32.55598 + 126, 125, 124, 125, 122, 111, 111, 115, 116, 115, 112, 112, 112, 123, 122, 126, 32.55599 + 129, 128, 124, 121, 122, 135, 139, 144, 142, 132, 128, 129, 125, 132, 144, 139, 32.55600 + 146, 163, 156, 141, 137, 140, 149, 147, 142, 142, 139, 134, 133, 118, 121, 136, 32.55601 + 145, 138, 135, 134, 126, 123, 127, 120, 99, 86, 83, 81, 74, 75, 64, 62, 32.55602 + 61, 117, 149, 128, 106, 96, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 87, 106, 118, 123, 32.55605 + 134, 128, 126, 135, 129, 126, 144, 144, 137, 142, 135, 129, 130, 124, 119, 125, 32.55606 + 119, 127, 133, 134, 131, 130, 134, 138, 123, 125, 130, 132, 132, 131, 132, 132, 32.55607 + 122, 120, 128, 142, 147, 140, 134, 132, 125, 125, 132, 140, 130, 133, 136, 131, 32.55608 + 135, 141, 136, 131, 143, 151, 148, 148, 135, 146, 151, 147, 141, 138, 134, 133, 32.55609 + 121, 118, 131, 148, 144, 136, 134, 129, 122, 124, 113, 96, 84, 81, 80, 74, 32.55610 + 70, 62, 63, 56, 138, 160, 133, 109, 120, 140, 255, 255, 255, 255, 255, 255, 32.55611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 89, 32.55613 + 101, 112, 119, 133, 137, 121, 134, 135, 127, 151, 147, 136, 140, 132, 124, 124, 32.55614 + 117, 114, 121, 114, 117, 122, 122, 118, 118, 122, 127, 132, 137, 141, 145, 146, 32.55615 + 145, 144, 143, 140, 139, 145, 154, 153, 139, 128, 124, 152, 140, 129, 137, 126, 32.55616 + 133, 124, 120, 129, 138, 144, 129, 129, 143, 148, 156, 133, 138, 146, 145, 138, 32.55617 + 139, 138, 132, 123, 115, 129, 151, 151, 141, 138, 135, 123, 120, 112, 96, 85, 32.55618 + 84, 82, 78, 69, 62, 62, 43, 140, 156, 136, 119, 175, 255, 255, 255, 255, 32.55619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55621 + 255, 255, 86, 93, 101, 110, 135, 145, 126, 135, 137, 127, 144, 141, 136, 140, 32.55622 + 132, 124, 124, 116, 111, 115, 115, 116, 116, 116, 114, 117, 121, 126, 139, 144, 32.55623 + 147, 151, 153, 153, 151, 149, 153, 156, 160, 165, 163, 156, 151, 147, 138, 137, 32.55624 + 119, 130, 123, 130, 117, 130, 117, 119, 141, 137, 142, 157, 145, 142, 138, 132, 32.55625 + 138, 141, 137, 145, 145, 130, 123, 115, 130, 152, 150, 140, 135, 133, 121, 117, 32.55626 + 108, 96, 87, 84, 83, 80, 69, 66, 68, 46, 138, 154, 143, 132, 255, 255, 32.55627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55629 + 255, 255, 255, 255, 255, 198, 82, 90, 101, 121, 137, 130, 134, 141, 136, 140, 32.55630 + 145, 139, 144, 138, 132, 134, 123, 110, 107, 114, 113, 114, 117, 119, 124, 127, 32.55631 + 134, 141, 146, 149, 154, 157, 158, 155, 152, 156, 160, 159, 153, 152, 152, 148, 32.55632 + 137, 119, 141, 114, 119, 108, 105, 80, 117, 121, 97, 118, 124, 142, 168, 151, 32.55633 + 145, 148, 132, 137, 144, 141, 150, 152, 128, 123, 120, 135, 150, 144, 133, 128, 32.55634 + 121, 114, 109, 102, 92, 86, 83, 80, 76, 63, 64, 70, 59, 133, 156, 145, 32.55635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55637 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 85, 97, 104, 121, 133, 131, 32.55638 + 144, 147, 136, 151, 140, 145, 144, 145, 148, 131, 104, 90, 83, 89, 98, 103, 32.55639 + 103, 105, 109, 118, 129, 134, 137, 143, 148, 150, 146, 143, 147, 149, 136, 116, 32.55640 + 116, 124, 113, 86, 106, 137, 95, 108, 129, 139, 112, 172, 118, 77, 99, 106, 32.55641 + 120, 151, 145, 154, 154, 135, 140, 149, 142, 152, 152, 122, 121, 125, 140, 148, 32.55642 + 138, 131, 126, 113, 108, 102, 96, 91, 87, 80, 77, 74, 63, 59, 64, 68, 32.55643 + 123, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 83, 96, 99, 32.55646 + 116, 139, 131, 143, 146, 123, 144, 136, 145, 148, 153, 155, 132, 97, 75, 70, 32.55647 + 82, 98, 102, 97, 95, 100, 110, 104, 109, 114, 119, 126, 129, 127, 124, 109, 32.55648 + 114, 108, 102, 125, 156, 153, 123, 232, 240, 146, 132, 152, 150, 94, 143, 93, 32.55649 + 62, 103, 112, 109, 127, 125, 149, 154, 137, 146, 155, 143, 150, 148, 116, 118, 32.55650 + 128, 145, 149, 138, 134, 130, 115, 105, 100, 95, 92, 88, 82, 77, 74, 71, 32.55651 + 60, 60, 71, 115, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 32.55654 + 75, 84, 84, 103, 126, 137, 136, 133, 134, 140, 148, 137, 141, 155, 148, 118, 32.55655 + 100, 99, 94, 85, 93, 103, 107, 117, 121, 114, 140, 132, 115, 124, 111, 130, 32.55656 + 113, 95, 118, 146, 156, 128, 104, 154, 162, 158, 155, 160, 131, 120, 153, 151, 32.55657 + 113, 95, 100, 111, 121, 122, 123, 128, 137, 141, 132, 144, 152, 150, 145, 140, 32.55658 + 131, 122, 117, 131, 141, 137, 129, 124, 115, 103, 101, 97, 94, 91, 89, 82, 32.55659 + 75, 70, 68, 59, 59, 67, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55662 + 255, 255, 255, 70, 78, 81, 98, 118, 129, 134, 134, 136, 137, 143, 134, 135, 32.55663 + 144, 140, 121, 109, 109, 113, 85, 63, 66, 95, 136, 143, 121, 143, 136, 129, 32.55664 + 150, 142, 152, 131, 114, 142, 148, 141, 117, 107, 159, 149, 127, 147, 163, 142, 32.55665 + 122, 133, 128, 111, 114, 120, 131, 138, 137, 133, 135, 141, 143, 136, 146, 153, 32.55666 + 151, 144, 138, 128, 120, 120, 137, 149, 145, 133, 125, 115, 103, 101, 96, 92, 32.55667 + 87, 85, 81, 76, 72, 68, 60, 60, 68, 160, 255, 255, 255, 255, 255, 255, 32.55668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55670 + 255, 255, 255, 255, 255, 255, 70, 74, 78, 88, 104, 119, 131, 135, 135, 134, 32.55671 + 138, 135, 133, 133, 133, 128, 125, 125, 116, 103, 83, 65, 73, 119, 147, 140, 32.55672 + 142, 128, 126, 147, 139, 139, 123, 111, 162, 159, 146, 127, 120, 164, 146, 121, 32.55673 + 138, 152, 134, 108, 108, 105, 103, 116, 133, 142, 147, 145, 140, 139, 142, 141, 32.55674 + 141, 148, 154, 150, 141, 133, 123, 116, 119, 138, 150, 146, 133, 124, 113, 102, 32.55675 + 99, 93, 87, 83, 82, 79, 77, 73, 67, 60, 63, 69, 255, 255, 255, 255, 32.55676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 72, 75, 80, 90, 106, 124, 32.55679 + 132, 131, 128, 134, 136, 134, 132, 134, 138, 139, 135, 114, 120, 117, 93, 71, 32.55680 + 89, 120, 128, 151, 136, 146, 171, 170, 159, 144, 133, 158, 164, 163, 143, 118, 32.55681 + 149, 134, 124, 105, 112, 100, 94, 110, 123, 128, 136, 136, 143, 147, 144, 142, 32.55682 + 142, 144, 142, 146, 150, 153, 148, 137, 127, 119, 116, 118, 137, 147, 139, 125, 32.55683 + 117, 110, 103, 97, 90, 84, 79, 79, 79, 79, 77, 68, 62, 67, 255, 255, 32.55684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 69, 71, 32.55687 + 78, 94, 112, 123, 126, 125, 130, 136, 137, 135, 138, 144, 145, 139, 134, 120, 32.55688 + 116, 112, 97, 93, 99, 97, 109, 102, 130, 161, 170, 156, 145, 132, 135, 147, 32.55689 + 154, 137, 102, 120, 108, 108, 106, 111, 107, 111, 126, 137, 139, 141, 142, 148, 32.55690 + 151, 147, 147, 149, 151, 149, 148, 149, 150, 144, 131, 120, 117, 119, 125, 139, 32.55691 + 145, 131, 113, 107, 105, 101, 92, 87, 82, 77, 78, 81, 81, 79, 71, 66, 32.55692 + 133, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55695 + 255, 68, 68, 72, 84, 99, 113, 119, 124, 125, 132, 135, 138, 142, 145, 143, 32.55696 + 138, 146, 125, 122, 129, 123, 113, 110, 106, 82, 70, 87, 99, 111, 106, 115, 32.55697 + 109, 107, 111, 118, 115, 96, 118, 106, 105, 120, 127, 136, 137, 133, 133, 137, 32.55698 + 141, 152, 154, 154, 148, 146, 149, 151, 148, 148, 146, 144, 138, 124, 115, 117, 32.55699 + 124, 139, 148, 145, 125, 107, 101, 101, 97, 87, 84, 80, 80, 82, 83, 82, 32.55700 + 80, 74, 70, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55702 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55703 + 255, 255, 255, 255, 192, 68, 73, 78, 89, 101, 114, 126, 124, 129, 136, 145, 32.55704 + 149, 147, 144, 143, 143, 136, 141, 143, 132, 130, 134, 132, 125, 104, 105, 90, 32.55705 + 99, 97, 119, 114, 101, 96, 100, 108, 102, 132, 124, 125, 113, 122, 139, 146, 32.55706 + 139, 142, 155, 161, 155, 155, 153, 145, 144, 148, 152, 151, 146, 142, 138, 132, 32.55707 + 119, 112, 117, 129, 143, 148, 140, 120, 105, 101, 100, 95, 83, 80, 81, 84, 32.55708 + 86, 86, 83, 78, 77, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55711 + 255, 255, 255, 255, 255, 255, 255, 255, 73, 73, 75, 81, 92, 109, 125, 123, 32.55712 + 126, 134, 146, 152, 148, 146, 148, 140, 137, 140, 137, 134, 142, 143, 128, 129, 32.55713 + 118, 125, 105, 110, 100, 112, 96, 115, 106, 108, 113, 104, 132, 127, 132, 143, 32.55714 + 136, 143, 148, 142, 143, 148, 145, 157, 157, 153, 146, 146, 151, 157, 156, 144, 32.55715 + 139, 136, 128, 117, 110, 120, 133, 137, 140, 133, 116, 102, 101, 100, 95, 79, 32.55716 + 79, 84, 89, 92, 92, 86, 81, 81, 255, 255, 255, 255, 255, 255, 255, 255, 32.55717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 67, 92, 82, 32.55720 + 79, 118, 122, 113, 127, 141, 137, 140, 149, 142, 146, 137, 130, 130, 136, 141, 32.55721 + 139, 137, 143, 141, 135, 134, 135, 139, 140, 140, 127, 129, 131, 133, 133, 136, 32.55722 + 140, 143, 143, 142, 142, 142, 145, 148, 151, 153, 158, 159, 154, 146, 142, 146, 32.55723 + 153, 156, 149, 148, 140, 120, 110, 116, 129, 134, 139, 132, 122, 108, 99, 94, 32.55724 + 90, 82, 76, 78, 87, 97, 99, 96, 98, 102, 255, 255, 255, 255, 255, 255, 32.55725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55726 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55727 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 32.55728 + 71, 64, 43, 50, 103, 124, 118, 120, 130, 133, 139, 142, 139, 145, 143, 137, 32.55729 + 132, 130, 131, 131, 135, 141, 141, 139, 139, 142, 144, 148, 149, 148, 149, 153, 32.55730 + 155, 154, 154, 154, 153, 142, 143, 145, 149, 151, 153, 154, 153, 153, 155, 152, 32.55731 + 144, 139, 144, 150, 152, 150, 144, 131, 116, 114, 124, 132, 132, 137, 129, 115, 32.55732 + 104, 99, 95, 89, 82, 74, 80, 90, 96, 101, 103, 103, 151, 255, 255, 255, 32.55733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55736 + 255, 255, 255, 50, 50, 31, 28, 59, 109, 120, 117, 115, 127, 138, 138, 140, 32.55737 + 148, 149, 146, 136, 126, 121, 124, 133, 130, 133, 134, 134, 136, 140, 146, 149, 32.55738 + 153, 157, 161, 162, 160, 157, 155, 153, 140, 142, 148, 155, 158, 159, 157, 155, 32.55739 + 154, 157, 154, 149, 146, 150, 152, 153, 148, 135, 117, 111, 119, 133, 136, 131, 32.55740 + 134, 124, 109, 101, 97, 93, 89, 83, 82, 89, 98, 100, 107, 115, 160, 255, 32.55741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55744 + 255, 255, 255, 255, 255, 255, 178, 40, 34, 20, 22, 64, 110, 118, 104, 119, 32.55745 + 138, 141, 141, 149, 151, 151, 141, 128, 121, 121, 126, 134, 138, 140, 139, 138, 32.55746 + 141, 147, 153, 142, 145, 147, 148, 146, 143, 141, 140, 138, 140, 148, 153, 159, 32.55747 + 159, 158, 157, 154, 157, 157, 154, 151, 153, 153, 151, 141, 125, 111, 109, 122, 32.55748 + 135, 136, 133, 129, 120, 108, 100, 93, 87, 86, 87, 87, 97, 104, 102, 111, 32.55749 + 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 20, 17, 25, 23, 92, 32.55753 + 119, 102, 112, 137, 144, 144, 148, 149, 149, 144, 136, 129, 122, 122, 127, 132, 32.55754 + 133, 130, 127, 127, 130, 134, 134, 135, 136, 135, 135, 135, 138, 138, 144, 144, 32.55755 + 149, 151, 156, 156, 156, 156, 151, 154, 154, 152, 150, 150, 148, 142, 131, 119, 32.55756 + 109, 112, 124, 133, 134, 133, 124, 117, 107, 100, 89, 82, 85, 92, 91, 99, 32.55757 + 104, 102, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 24, 32.55761 + 27, 12, 67, 101, 103, 112, 131, 142, 144, 149, 149, 147, 146, 142, 137, 127, 32.55762 + 121, 122, 123, 122, 119, 116, 116, 117, 118, 135, 135, 133, 131, 133, 136, 142, 32.55763 + 145, 155, 153, 154, 154, 154, 153, 154, 153, 153, 156, 155, 151, 150, 149, 145, 32.55764 + 138, 124, 115, 110, 115, 126, 129, 130, 129, 119, 111, 102, 97, 88, 82, 88, 32.55765 + 100, 98, 104, 107, 106, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55769 + 255, 180, 30, 17, 23, 30, 61, 97, 113, 121, 136, 145, 152, 150, 146, 145, 32.55770 + 141, 138, 130, 128, 135, 135, 134, 132, 131, 132, 131, 130, 138, 138, 137, 136, 32.55771 + 137, 141, 147, 151, 157, 156, 156, 155, 156, 155, 154, 153, 158, 159, 157, 152, 32.55772 + 152, 150, 145, 137, 124, 112, 108, 116, 127, 130, 125, 121, 117, 101, 91, 92, 32.55773 + 92, 90, 95, 104, 108, 111, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55777 + 255, 255, 255, 255, 255, 180, 17, 34, 3, 22, 87, 112, 113, 130, 147, 152, 32.55778 + 153, 148, 144, 140, 136, 134, 135, 132, 129, 127, 127, 132, 133, 132, 130, 144, 32.55779 + 144, 144, 143, 144, 148, 153, 156, 149, 150, 153, 157, 158, 157, 156, 155, 156, 32.55780 + 155, 153, 147, 147, 146, 139, 130, 124, 109, 104, 116, 131, 130, 122, 114, 114, 32.55781 + 94, 81, 87, 96, 98, 101, 107, 111, 109, 160, 255, 255, 255, 255, 255, 255, 32.55782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 19, 24, 19, 36, 83, 114, 32.55786 + 129, 145, 152, 152, 152, 148, 143, 137, 131, 129, 140, 140, 141, 140, 141, 141, 32.55787 + 142, 142, 145, 151, 154, 151, 153, 157, 156, 150, 157, 154, 155, 154, 154, 153, 32.55788 + 153, 153, 156, 154, 154, 153, 153, 147, 136, 127, 114, 111, 112, 119, 128, 129, 32.55789 + 122, 111, 107, 91, 82, 93, 104, 106, 107, 112, 117, 162, 255, 255, 255, 255, 32.55790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 19, 25, 22, 32.55794 + 24, 57, 98, 124, 135, 148, 149, 148, 145, 141, 139, 140, 142, 143, 142, 142, 32.55795 + 141, 140, 142, 143, 144, 145, 151, 155, 154, 157, 162, 162, 158, 161, 157, 157, 32.55796 + 155, 154, 153, 153, 152, 146, 147, 147, 148, 145, 140, 132, 125, 111, 110, 113, 32.55797 + 119, 125, 123, 111, 102, 95, 87, 86, 97, 105, 105, 107, 114, 162, 255, 255, 32.55798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55802 + 17, 24, 26, 17, 30, 77, 120, 128, 137, 142, 144, 144, 143, 144, 145, 148, 32.55803 + 146, 145, 143, 142, 141, 145, 146, 148, 144, 149, 153, 155, 160, 165, 166, 163, 32.55804 + 166, 164, 162, 159, 157, 156, 155, 154, 148, 149, 149, 149, 144, 138, 131, 125, 32.55805 + 107, 108, 113, 119, 122, 116, 105, 97, 84, 83, 91, 103, 108, 106, 109, 163, 32.55806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55810 + 255, 255, 255, 255, 18, 27, 23, 20, 59, 107, 124, 125, 134, 144, 148, 148, 32.55811 + 146, 144, 144, 147, 147, 147, 147, 147, 147, 147, 148, 142, 146, 149, 153, 158, 32.55812 + 161, 162, 161, 166, 164, 162, 159, 158, 158, 159, 159, 158, 152, 149, 146, 144, 32.55813 + 137, 125, 116, 102, 107, 116, 121, 120, 112, 103, 96, 86, 87, 95, 107, 112, 32.55814 + 111, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55818 + 255, 255, 255, 255, 255, 255, 255, 255, 25, 32, 23, 40, 80, 105, 124, 134, 32.55819 + 144, 148, 147, 146, 146, 147, 147, 147, 149, 150, 150, 149, 147, 146, 146, 147, 32.55820 + 149, 153, 155, 156, 156, 157, 158, 157, 156, 154, 155, 157, 159, 160, 160, 149, 32.55821 + 142, 139, 141, 136, 121, 107, 103, 108, 116, 117, 110, 102, 95, 92, 99, 97, 32.55822 + 100, 108, 117, 118, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 35, 29, 26, 46, 32.55827 + 72, 123, 133, 142, 144, 144, 146, 153, 157, 149, 148, 150, 152, 152, 150, 149, 32.55828 + 145, 153, 152, 153, 156, 157, 154, 153, 155, 149, 148, 148, 147, 149, 153, 157, 32.55829 + 159, 159, 148, 142, 139, 141, 135, 123, 108, 106, 110, 113, 107, 97, 89, 87, 32.55830 + 89, 109, 106, 106, 112, 119, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 28, 32.55835 + 34, 25, 24, 41, 106, 120, 135, 145, 147, 151, 156, 160, 151, 150, 150, 149, 32.55836 + 150, 149, 150, 150, 158, 153, 155, 159, 158, 154, 151, 154, 148, 146, 146, 146, 32.55837 + 148, 153, 157, 160, 158, 151, 148, 142, 138, 129, 121, 112, 105, 108, 109, 100, 32.55838 + 87, 82, 89, 97, 108, 111, 115, 118, 120, 255, 255, 255, 255, 255, 255, 255, 32.55839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55843 + 255, 255, 255, 36, 30, 18, 25, 79, 101, 129, 147, 153, 153, 152, 151, 155, 32.55844 + 152, 148, 146, 145, 149, 151, 154, 158, 154, 153, 159, 158, 152, 150, 154, 151, 32.55845 + 151, 149, 149, 151, 155, 159, 162, 152, 150, 149, 140, 128, 116, 110, 106, 101, 32.55846 + 103, 103, 94, 83, 84, 97, 110, 103, 113, 121, 124, 255, 255, 255, 255, 255, 32.55847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55851 + 255, 255, 255, 255, 255, 255, 255, 21, 19, 20, 43, 86, 129, 128, 154, 149, 32.55852 + 154, 146, 147, 144, 144, 147, 149, 150, 153, 160, 154, 155, 155, 156, 156, 155, 32.55853 + 154, 154, 152, 156, 158, 153, 150, 150, 156, 161, 154, 147, 141, 132, 125, 116, 32.55854 + 109, 102, 103, 95, 87, 82, 82, 90, 100, 109, 113, 120, 126, 168, 255, 255, 32.55855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 20, 21, 70, 118, 32.55860 + 129, 141, 140, 149, 154, 151, 146, 148, 149, 150, 150, 153, 158, 160, 156, 153, 32.55861 + 150, 150, 154, 158, 161, 153, 154, 155, 155, 156, 156, 155, 155, 149, 144, 135, 32.55862 + 128, 120, 112, 106, 98, 95, 91, 86, 85, 88, 97, 106, 114, 118, 120, 123, 32.55863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 32.55868 + 12, 51, 89, 122, 129, 139, 142, 153, 151, 148, 149, 151, 152, 150, 150, 152, 32.55869 + 156, 153, 151, 149, 150, 152, 156, 160, 159, 158, 158, 160, 164, 162, 156, 148, 32.55870 + 145, 139, 128, 118, 112, 106, 101, 95, 89, 88, 89, 92, 97, 106, 114, 120, 32.55871 + 125, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55876 + 255, 255, 255, 255, 34, 57, 111, 121, 137, 131, 137, 145, 143, 144, 149, 150, 32.55877 + 147, 146, 147, 147, 148, 152, 154, 154, 154, 152, 151, 161, 160, 158, 159, 159, 32.55878 + 156, 148, 141, 140, 130, 115, 104, 99, 95, 94, 91, 90, 90, 96, 102, 109, 32.55879 + 115, 121, 124, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 114, 115, 123, 118, 128, 137, 135, 32.55885 + 136, 143, 148, 146, 146, 147, 147, 147, 152, 153, 153, 151, 149, 147, 149, 149, 32.55886 + 149, 148, 144, 141, 137, 134, 128, 117, 105, 94, 89, 88, 90, 92, 96, 98, 32.55887 + 104, 110, 117, 121, 124, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 103, 105, 32.55893 + 123, 129, 128, 129, 137, 143, 143, 143, 144, 151, 149, 147, 145, 145, 146, 148, 32.55894 + 149, 137, 139, 140, 140, 137, 136, 132, 131, 112, 105, 97, 91, 89, 93, 96, 32.55895 + 98, 107, 109, 112, 117, 119, 122, 125, 169, 255, 255, 255, 255, 255, 255, 255, 32.55896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55901 + 255, 255, 203, 110, 118, 117, 117, 125, 132, 133, 133, 134, 143, 141, 140, 138, 32.55902 + 137, 136, 137, 138, 133, 131, 130, 132, 133, 129, 121, 113, 97, 95, 96, 99, 32.55903 + 102, 106, 107, 109, 115, 116, 117, 119, 120, 123, 255, 255, 255, 255, 255, 255, 32.55904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55909 + 255, 255, 255, 255, 255, 255, 255, 255, 206, 106, 114, 121, 122, 123, 123, 127, 32.55910 + 129, 134, 135, 133, 130, 124, 120, 126, 121, 116, 119, 123, 117, 102, 87, 85, 32.55911 + 88, 96, 107, 114, 118, 118, 117, 119, 120, 119, 121, 166, 255, 255, 255, 255, 32.55912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 113, 91, 32.55918 + 99, 106, 116, 120, 123, 120, 119, 123, 123, 118, 114, 109, 108, 108, 102, 94, 32.55919 + 94, 99, 100, 107, 118, 124, 127, 126, 124, 124, 120, 128, 125, 255, 255, 255, 32.55920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55926 + 255, 255, 255, 255, 255, 255, 98, 101, 101, 104, 108, 107, 102, 93, 92, 97, 32.55927 + 102, 103, 100, 102, 109, 115, 120, 125, 126, 127, 123, 126, 127, 124, 174, 255, 32.55928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 107, 102, 32.55935 + 118, 118, 124, 130, 131, 128, 127, 130, 128, 131, 131, 127, 122, 120, 125, 171, 32.55936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55943 + 255, 255, 255, 255, 255, 255, 255, 216, 135, 131, 129, 129, 131, 131, 168, 255, 32.55944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55951 + 210, 115, 115, 122, 123, 117, 125, 116, 106, 103, 105, 109, 110, 109, 131, 223, 32.55952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55958 + 255, 255, 255, 255, 255, 209, 114, 114, 117, 112, 115, 118, 119, 116, 113, 112, 32.55959 + 112, 108, 113, 118, 120, 123, 124, 120, 113, 116, 113, 110, 108, 108, 105, 101, 32.55960 + 97, 96, 106, 97, 87, 89, 79, 70, 80, 84, 89, 82, 85, 103, 112, 108, 32.55961 + 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 32.55966 + 125, 129, 128, 123, 122, 118, 116, 118, 118, 114, 111, 111, 107, 103, 105, 112, 32.55967 + 111, 106, 107, 114, 115, 110, 109, 113, 114, 110, 104, 102, 96, 100, 106, 108, 32.55968 + 104, 97, 91, 86, 103, 107, 95, 83, 80, 69, 60, 65, 72, 84, 79, 75, 32.55969 + 91, 105, 101, 95, 98, 114, 116, 134, 141, 255, 255, 255, 255, 255, 255, 255, 32.55970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55974 + 214, 131, 129, 128, 129, 125, 118, 123, 120, 118, 118, 117, 113, 109, 107, 120, 32.55975 + 109, 105, 112, 112, 105, 109, 122, 110, 95, 84, 85, 86, 83, 85, 92, 75, 32.55976 + 83, 92, 94, 91, 84, 82, 82, 94, 92, 83, 74, 68, 62, 57, 58, 65, 32.55977 + 78, 72, 66, 84, 101, 94, 82, 92, 113, 117, 134, 142, 130, 136, 143, 173, 32.55978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55982 + 255, 212, 131, 135, 137, 136, 135, 133, 125, 117, 115, 115, 115, 116, 118, 119, 32.55983 + 118, 116, 109, 96, 93, 99, 97, 87, 86, 95, 90, 74, 62, 62, 64, 64, 32.55984 + 71, 82, 63, 69, 75, 74, 71, 68, 72, 76, 70, 66, 65, 65, 63, 66, 32.55985 + 69, 68, 69, 78, 68, 62, 83, 102, 93, 78, 93, 118, 117, 122, 128, 124, 32.55986 + 131, 128, 124, 125, 127, 128, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55990 + 255, 255, 191, 103, 99, 89, 94, 98, 99, 99, 97, 89, 79, 70, 70, 67, 32.55991 + 63, 64, 67, 65, 61, 64, 61, 67, 78, 83, 76, 73, 75, 88, 81, 74, 32.55992 + 70, 65, 60, 60, 64, 59, 62, 62, 60, 56, 56, 61, 67, 64, 56, 60, 32.55993 + 65, 62, 68, 74, 68, 76, 81, 70, 65, 84, 100, 93, 83, 90, 114, 109, 32.55994 + 113, 122, 122, 129, 123, 117, 121, 125, 126, 125, 125, 128, 255, 255, 255, 255, 32.55995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.55998 + 255, 255, 255, 255, 195, 69, 101, 92, 100, 104, 106, 106, 105, 104, 96, 88, 32.55999 + 76, 75, 68, 58, 55, 56, 54, 49, 44, 47, 54, 65, 76, 82, 83, 83, 32.56000 + 84, 88, 87, 76, 65, 58, 53, 50, 53, 55, 56, 55, 53, 53, 58, 61, 32.56001 + 68, 57, 62, 67, 60, 64, 69, 58, 74, 79, 71, 68, 81, 89, 87, 89, 32.56002 + 100, 111, 102, 114, 125, 116, 118, 115, 108, 112, 114, 116, 115, 117, 123, 129, 32.56003 + 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56006 + 255, 255, 255, 255, 255, 208, 121, 70, 74, 109, 102, 102, 104, 103, 99, 97, 32.56007 + 95, 88, 80, 67, 67, 60, 50, 48, 52, 51, 46, 38, 38, 37, 38, 48, 32.56008 + 62, 69, 69, 63, 74, 76, 64, 54, 54, 54, 51, 45, 48, 53, 55, 57, 32.56009 + 58, 59, 61, 64, 52, 59, 66, 58, 64, 70, 57, 70, 76, 71, 68, 74, 32.56010 + 76, 80, 94, 118, 116, 102, 118, 124, 98, 91, 93, 95, 96, 98, 97, 97, 32.56011 + 102, 111, 119, 121, 122, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56014 + 255, 255, 255, 255, 255, 255, 255, 213, 117, 96, 89, 99, 108, 107, 107, 98, 32.56015 + 93, 95, 96, 88, 76, 69, 48, 55, 52, 49, 52, 47, 40, 45, 44, 32, 32.56016 + 26, 34, 43, 45, 43, 43, 56, 55, 56, 59, 56, 50, 49, 53, 51, 47, 32.56017 + 44, 45, 51, 54, 53, 51, 62, 57, 56, 64, 72, 73, 63, 53, 63, 70, 32.56018 + 64, 66, 81, 78, 76, 96, 115, 122, 109, 92, 91, 94, 91, 93, 80, 79, 32.56019 + 75, 70, 65, 67, 75, 84, 99, 107, 117, 123, 170, 255, 255, 255, 255, 255, 32.56020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56022 + 255, 255, 255, 255, 255, 255, 255, 255, 126, 113, 107, 100, 92, 83, 77, 80, 32.56023 + 85, 72, 66, 62, 61, 57, 51, 46, 46, 45, 49, 43, 40, 47, 48, 49, 32.56024 + 59, 50, 39, 33, 38, 43, 43, 43, 44, 46, 48, 51, 53, 54, 53, 53, 32.56025 + 52, 59, 51, 43, 42, 47, 51, 51, 49, 58, 54, 53, 58, 65, 67, 63, 32.56026 + 57, 76, 78, 76, 79, 85, 79, 75, 81, 79, 94, 91, 80, 80, 77, 72, 32.56027 + 71, 53, 53, 53, 52, 51, 53, 57, 61, 74, 78, 85, 94, 107, 119, 171, 32.56028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 118, 106, 91, 83, 81, 82, 32.56031 + 70, 54, 49, 58, 50, 45, 42, 38, 32, 27, 29, 36, 39, 43, 38, 36, 32.56032 + 46, 49, 52, 61, 55, 48, 42, 42, 42, 41, 42, 45, 42, 49, 52, 51, 32.56033 + 54, 60, 58, 50, 52, 43, 35, 35, 42, 49, 51, 50, 55, 53, 51, 53, 32.56034 + 57, 62, 64, 65, 80, 74, 81, 90, 89, 86, 83, 75, 66, 82, 81, 70, 32.56035 + 67, 62, 55, 54, 53, 53, 53, 54, 55, 53, 50, 47, 51, 51, 54, 65, 32.56036 + 82, 101, 117, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 117, 98, 78, 76, 32.56039 + 71, 70, 67, 55, 43, 38, 44, 50, 46, 42, 39, 35, 31, 34, 41, 36, 32.56040 + 42, 39, 40, 49, 49, 45, 49, 57, 53, 48, 44, 40, 39, 42, 45, 42, 32.56041 + 52, 54, 49, 52, 62, 58, 45, 51, 43, 36, 35, 43, 49, 50, 49, 54, 32.56042 + 54, 51, 51, 52, 58, 67, 74, 80, 70, 80, 91, 85, 87, 88, 70, 71, 32.56043 + 80, 72, 58, 60, 62, 59, 60, 61, 59, 58, 62, 65, 64, 57, 52, 44, 32.56044 + 44, 46, 53, 65, 79, 99, 114, 166, 255, 255, 255, 255, 255, 255, 255, 255, 32.56045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 102, 96, 32.56047 + 81, 65, 69, 73, 68, 56, 46, 48, 49, 48, 53, 47, 42, 42, 41, 38, 32.56048 + 37, 39, 38, 42, 38, 38, 48, 47, 43, 47, 56, 56, 52, 45, 39, 39, 32.56049 + 41, 43, 40, 51, 54, 47, 50, 59, 57, 45, 57, 52, 47, 44, 47, 48, 32.56050 + 46, 43, 49, 51, 51, 49, 48, 55, 65, 75, 87, 75, 81, 88, 80, 84, 32.56051 + 84, 66, 69, 73, 61, 51, 59, 68, 66, 66, 55, 51, 48, 52, 59, 62, 32.56052 + 58, 55, 46, 47, 51, 54, 56, 61, 79, 96, 110, 111, 255, 255, 255, 255, 32.56053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 32.56055 + 97, 89, 85, 82, 77, 68, 75, 71, 55, 49, 57, 61, 58, 56, 49, 44, 32.56056 + 45, 45, 41, 37, 37, 42, 43, 34, 33, 46, 52, 54, 62, 61, 62, 58, 32.56057 + 50, 44, 44, 43, 42, 46, 55, 59, 56, 56, 62, 64, 60, 47, 46, 46, 32.56058 + 45, 45, 45, 46, 47, 44, 47, 49, 48, 46, 49, 58, 67, 75, 71, 74, 32.56059 + 77, 78, 86, 89, 81, 78, 83, 73, 62, 68, 71, 62, 58, 66, 60, 52, 32.56060 + 49, 51, 52, 48, 45, 45, 45, 49, 52, 50, 48, 60, 76, 90, 95, 152, 32.56061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56063 + 255, 255, 99, 94, 93, 88, 85, 84, 68, 71, 70, 65, 60, 61, 64, 67, 32.56064 + 60, 56, 53, 51, 46, 40, 40, 44, 42, 42, 34, 36, 53, 62, 66, 75, 32.56065 + 72, 72, 67, 58, 52, 51, 46, 40, 56, 61, 65, 63, 59, 59, 64, 69, 32.56066 + 47, 48, 48, 45, 39, 39, 45, 51, 42, 45, 48, 49, 48, 49, 53, 59, 32.56067 + 52, 63, 64, 65, 78, 88, 90, 95, 89, 100, 93, 78, 75, 72, 64, 63, 32.56068 + 80, 72, 63, 55, 51, 48, 44, 41, 47, 41, 40, 45, 46, 41, 46, 56, 32.56069 + 66, 77, 92, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56071 + 255, 255, 255, 255, 100, 90, 96, 100, 89, 78, 73, 68, 64, 67, 74, 71, 32.56072 + 60, 60, 70, 63, 62, 60, 55, 44, 37, 41, 50, 38, 42, 39, 46, 63, 32.56073 + 70, 70, 75, 80, 81, 75, 64, 58, 57, 50, 40, 59, 61, 63, 62, 53, 32.56074 + 45, 51, 63, 70, 70, 66, 53, 39, 34, 39, 46, 42, 46, 51, 53, 53, 32.56075 + 52, 53, 56, 44, 63, 60, 58, 74, 82, 81, 91, 84, 100, 97, 81, 76, 32.56076 + 76, 77, 86, 68, 65, 58, 53, 51, 49, 47, 47, 50, 37, 31, 39, 43, 32.56077 + 39, 37, 41, 49, 65, 87, 105, 161, 255, 255, 255, 255, 255, 255, 255, 255, 32.56078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56079 + 255, 255, 255, 255, 255, 255, 104, 89, 90, 104, 97, 70, 60, 72, 77, 69, 32.56080 + 62, 76, 73, 66, 74, 64, 65, 61, 55, 53, 53, 53, 49, 46, 46, 56, 32.56081 + 43, 51, 50, 83, 73, 64, 69, 83, 76, 57, 62, 80, 66, 32, 40, 56, 32.56082 + 68, 66, 58, 52, 49, 45, 60, 58, 57, 54, 48, 43, 43, 48, 48, 59, 32.56083 + 47, 48, 65, 50, 35, 54, 53, 45, 45, 61, 77, 86, 89, 90, 101, 72, 32.56084 + 67, 85, 92, 87, 75, 62, 73, 69, 57, 48, 46, 52, 49, 42, 45, 44, 32.56085 + 40, 36, 32, 35, 41, 46, 41, 54, 69, 83, 101, 255, 255, 255, 255, 255, 32.56086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56087 + 255, 255, 255, 255, 255, 255, 255, 255, 204, 103, 100, 99, 97, 89, 78, 73, 32.56088 + 74, 75, 71, 66, 81, 78, 69, 75, 61, 66, 65, 61, 56, 51, 49, 50, 32.56089 + 52, 51, 55, 46, 62, 60, 77, 68, 69, 69, 72, 68, 61, 62, 66, 59, 32.56090 + 43, 39, 54, 62, 56, 50, 52, 51, 46, 55, 54, 54, 56, 53, 46, 43, 32.56091 + 45, 52, 61, 49, 48, 64, 51, 35, 52, 55, 47, 45, 57, 71, 78, 80, 32.56092 + 82, 84, 69, 70, 80, 80, 75, 69, 60, 67, 65, 61, 55, 55, 57, 54, 32.56093 + 47, 45, 44, 41, 36, 33, 32, 36, 39, 35, 46, 59, 71, 93, 116, 255, 32.56094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 95, 98, 106, 101, 85, 32.56096 + 77, 81, 81, 75, 68, 67, 66, 83, 81, 75, 83, 68, 69, 71, 69, 62, 32.56097 + 53, 51, 57, 64, 59, 59, 57, 73, 66, 67, 61, 70, 71, 64, 62, 64, 32.56098 + 59, 48, 46, 51, 43, 55, 55, 43, 39, 50, 51, 41, 51, 48, 50, 57, 32.56099 + 59, 53, 46, 43, 54, 61, 52, 49, 62, 53, 38, 47, 57, 49, 43, 50, 32.56100 + 61, 67, 68, 70, 69, 65, 71, 73, 64, 62, 64, 60, 65, 68, 70, 67, 32.56101 + 64, 62, 57, 51, 41, 41, 39, 36, 33, 31, 31, 33, 34, 40, 47, 56, 32.56102 + 79, 106, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 100, 90, 98, 32.56104 + 105, 99, 84, 76, 82, 84, 79, 74, 73, 67, 78, 75, 71, 82, 71, 72, 32.56105 + 74, 72, 66, 58, 59, 65, 72, 63, 67, 67, 70, 62, 59, 57, 63, 68, 32.56106 + 62, 62, 63, 53, 38, 40, 52, 48, 57, 50, 33, 32, 47, 50, 38, 49, 32.56107 + 45, 45, 54, 58, 55, 46, 40, 54, 61, 55, 51, 60, 55, 44, 46, 54, 32.56108 + 47, 40, 43, 51, 57, 60, 59, 63, 63, 68, 63, 50, 56, 64, 61, 69, 32.56109 + 73, 77, 76, 71, 65, 61, 57, 72, 71, 68, 62, 56, 50, 45, 42, 36, 32.56110 + 38, 39, 43, 63, 91, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 103, 32.56112 + 97, 92, 105, 100, 96, 92, 88, 86, 85, 88, 90, 85, 70, 71, 62, 60, 32.56113 + 76, 66, 77, 75, 70, 65, 62, 62, 65, 68, 60, 69, 71, 57, 54, 57, 32.56114 + 62, 58, 56, 61, 63, 57, 48, 43, 46, 51, 47, 53, 44, 29, 30, 47, 32.56115 + 51, 41, 52, 44, 42, 49, 56, 54, 47, 42, 52, 61, 59, 53, 56, 57, 32.56116 + 52, 48, 47, 42, 38, 38, 45, 52, 55, 54, 61, 55, 55, 49, 42, 53, 32.56117 + 63, 60, 65, 68, 74, 77, 78, 75, 73, 73, 90, 86, 79, 70, 60, 50, 32.56118 + 42, 37, 37, 37, 35, 34, 50, 78, 100, 106, 255, 255, 255, 255, 255, 255, 32.56119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56120 + 208, 105, 99, 98, 100, 105, 90, 84, 90, 91, 83, 80, 87, 85, 82, 68, 32.56121 + 66, 58, 61, 81, 73, 76, 74, 71, 66, 61, 58, 57, 56, 57, 65, 68, 32.56122 + 47, 54, 60, 68, 55, 42, 54, 59, 52, 48, 52, 53, 49, 41, 44, 38, 32.56123 + 31, 34, 45, 50, 47, 50, 43, 39, 46, 52, 52, 47, 46, 49, 61, 65, 32.56124 + 57, 52, 57, 57, 50, 40, 39, 36, 36, 42, 51, 53, 51, 55, 42, 39, 32.56125 + 40, 38, 48, 58, 54, 55, 56, 64, 76, 84, 85, 86, 89, 68, 64, 58, 32.56126 + 52, 47, 43, 38, 35, 34, 37, 35, 30, 43, 70, 95, 106, 119, 255, 255, 32.56127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56128 + 255, 255, 208, 108, 99, 96, 99, 103, 100, 82, 71, 77, 83, 80, 78, 81, 32.56129 + 75, 76, 67, 68, 63, 67, 85, 75, 66, 72, 74, 70, 62, 56, 55, 56, 32.56130 + 65, 61, 64, 50, 65, 60, 65, 52, 40, 47, 52, 52, 53, 54, 50, 43, 32.56131 + 40, 38, 37, 37, 36, 39, 42, 45, 43, 39, 38, 46, 52, 52, 49, 48, 32.56132 + 47, 62, 71, 59, 46, 53, 58, 48, 36, 38, 36, 35, 40, 49, 52, 49, 32.56133 + 46, 29, 29, 39, 40, 44, 51, 51, 56, 54, 62, 78, 88, 88, 87, 87, 32.56134 + 69, 63, 56, 51, 50, 50, 49, 48, 36, 42, 40, 32, 38, 62, 89, 103, 32.56135 + 113, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56136 + 255, 255, 255, 255, 255, 106, 100, 94, 94, 98, 102, 100, 84, 70, 70, 79, 32.56137 + 84, 82, 79, 78, 82, 75, 76, 67, 65, 77, 61, 58, 69, 79, 76, 66, 32.56138 + 58, 60, 65, 77, 61, 63, 57, 75, 58, 58, 48, 46, 44, 47, 55, 57, 32.56139 + 50, 41, 35, 43, 39, 38, 41, 38, 31, 32, 39, 37, 35, 38, 47, 53, 32.56140 + 53, 50, 50, 48, 64, 76, 62, 43, 50, 57, 47, 35, 37, 37, 35, 40, 32.56141 + 48, 50, 47, 40, 23, 27, 44, 45, 43, 48, 51, 63, 61, 67, 81, 89, 32.56142 + 84, 77, 73, 83, 73, 61, 50, 45, 41, 38, 36, 41, 48, 47, 36, 36, 32.56143 + 56, 82, 97, 109, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56144 + 255, 255, 255, 255, 255, 255, 255, 255, 102, 98, 97, 98, 96, 94, 73, 78, 32.56145 + 78, 76, 79, 82, 78, 70, 68, 73, 57, 64, 68, 55, 60, 64, 52, 83, 32.56146 + 81, 62, 63, 61, 53, 57, 59, 63, 71, 72, 60, 46, 47, 56, 62, 52, 32.56147 + 66, 54, 32, 29, 32, 45, 38, 31, 40, 50, 36, 27, 37, 48, 32, 37, 32.56148 + 45, 50, 51, 49, 46, 46, 60, 64, 66, 62, 57, 48, 36, 24, 26, 36, 32.56149 + 38, 33, 40, 51, 43, 25, 40, 36, 33, 37, 46, 53, 53, 50, 46, 56, 32.56150 + 69, 76, 77, 78, 81, 84, 74, 62, 48, 41, 42, 44, 42, 40, 40, 40, 32.56151 + 25, 30, 40, 51, 78, 84, 101, 109, 164, 255, 255, 255, 255, 255, 255, 255, 32.56152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 94, 98, 100, 95, 32.56153 + 89, 71, 76, 77, 74, 73, 72, 66, 59, 64, 65, 54, 60, 53, 44, 58, 32.56154 + 60, 49, 77, 80, 71, 71, 64, 53, 57, 69, 64, 60, 59, 59, 57, 57, 32.56155 + 58, 55, 46, 62, 57, 42, 41, 39, 46, 33, 33, 41, 46, 40, 42, 45, 32.56156 + 39, 38, 42, 48, 52, 52, 49, 47, 46, 60, 68, 72, 66, 53, 44, 37, 32.56157 + 32, 37, 39, 34, 28, 32, 41, 40, 29, 31, 34, 39, 45, 50, 53, 53, 32.56158 + 53, 51, 57, 65, 69, 69, 69, 69, 71, 71, 64, 55, 52, 53, 52, 46, 32.56159 + 40, 38, 45, 36, 38, 38, 41, 66, 72, 100, 110, 120, 255, 255, 255, 255, 32.56160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 86, 90, 32.56161 + 100, 104, 97, 88, 78, 82, 84, 78, 73, 68, 61, 55, 56, 52, 51, 57, 32.56162 + 39, 37, 63, 61, 79, 80, 64, 50, 49, 52, 62, 81, 67, 68, 68, 70, 32.56163 + 74, 76, 70, 62, 71, 53, 61, 54, 42, 41, 35, 37, 32, 35, 39, 38, 32.56164 + 38, 50, 47, 25, 41, 45, 50, 53, 53, 50, 49, 49, 58, 70, 75, 63, 32.56165 + 46, 38, 38, 40, 43, 38, 32, 32, 34, 37, 37, 36, 21, 26, 34, 38, 32.56166 + 41, 44, 48, 52, 59, 61, 64, 67, 68, 69, 68, 68, 58, 56, 55, 57, 32.56167 + 57, 53, 43, 35, 40, 53, 49, 49, 42, 37, 61, 69, 95, 106, 117, 255, 32.56168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56169 + 97, 93, 98, 107, 110, 103, 95, 87, 89, 87, 81, 73, 66, 62, 59, 48, 32.56170 + 43, 48, 56, 33, 38, 75, 71, 76, 66, 56, 58, 62, 60, 61, 70, 68, 32.56171 + 75, 78, 76, 77, 81, 80, 76, 85, 58, 55, 43, 33, 37, 32, 34, 43, 32.56172 + 40, 39, 37, 35, 46, 43, 23, 43, 47, 51, 52, 52, 52, 53, 55, 55, 32.56173 + 64, 67, 56, 42, 37, 40, 44, 40, 35, 37, 45, 47, 41, 40, 43, 44, 32.56174 + 44, 44, 47, 51, 57, 63, 68, 63, 63, 64, 68, 72, 76, 78, 78, 69, 32.56175 + 70, 72, 76, 76, 71, 61, 53, 48, 59, 53, 52, 46, 43, 66, 74, 85, 32.56176 + 97, 112, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56177 + 255, 255, 206, 105, 103, 105, 108, 106, 99, 94, 88, 85, 80, 74, 68, 62, 32.56178 + 60, 62, 47, 41, 46, 54, 33, 41, 80, 74, 76, 57, 50, 63, 72, 74, 32.56179 + 73, 73, 80, 75, 68, 65, 72, 80, 82, 78, 72, 46, 46, 39, 35, 44, 32.56180 + 41, 43, 53, 42, 39, 41, 35, 39, 43, 38, 49, 50, 52, 52, 51, 50, 32.56181 + 53, 54, 55, 59, 59, 52, 45, 46, 48, 48, 43, 38, 41, 51, 50, 41, 32.56182 + 42, 49, 54, 51, 49, 53, 59, 64, 64, 63, 57, 58, 59, 63, 68, 74, 32.56183 + 78, 79, 76, 76, 76, 78, 79, 74, 65, 59, 55, 58, 45, 44, 43, 43, 32.56184 + 66, 71, 77, 90, 107, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56185 + 255, 255, 255, 255, 255, 99, 99, 97, 98, 97, 93, 86, 82, 89, 82, 75, 32.56186 + 72, 71, 65, 63, 63, 49, 48, 45, 50, 39, 46, 76, 68, 85, 60, 53, 32.56187 + 63, 71, 83, 93, 91, 84, 70, 64, 76, 90, 89, 73, 58, 59, 41, 52, 32.56188 + 51, 47, 52, 45, 46, 51, 40, 41, 46, 40, 41, 48, 48, 57, 57, 56, 32.56189 + 53, 50, 49, 51, 54, 58, 60, 58, 55, 56, 59, 58, 55, 55, 49, 49, 32.56190 + 50, 46, 40, 45, 55, 48, 45, 46, 52, 59, 59, 52, 46, 52, 54, 57, 32.56191 + 60, 63, 69, 74, 77, 77, 75, 72, 69, 66, 61, 53, 50, 54, 53, 35, 32.56192 + 35, 37, 38, 55, 54, 70, 85, 105, 119, 123, 255, 255, 255, 255, 255, 255, 32.56193 + 255, 255, 255, 255, 255, 255, 255, 200, 90, 87, 85, 89, 95, 97, 90, 84, 32.56194 + 92, 82, 76, 78, 79, 73, 66, 63, 49, 54, 43, 46, 50, 56, 73, 65, 32.56195 + 67, 62, 78, 93, 89, 90, 89, 74, 81, 70, 72, 89, 94, 78, 61, 55, 32.56196 + 63, 51, 67, 66, 56, 56, 49, 51, 55, 56, 62, 63, 59, 65, 66, 50, 32.56197 + 59, 57, 56, 53, 52, 53, 57, 60, 61, 63, 64, 61, 63, 66, 64, 58, 32.56198 + 58, 59, 60, 57, 52, 50, 53, 60, 60, 58, 58, 60, 63, 64, 62, 61, 32.56199 + 62, 67, 72, 75, 77, 81, 88, 94, 98, 94, 86, 78, 70, 62, 54, 51, 32.56200 + 46, 49, 36, 39, 41, 37, 49, 44, 63, 79, 101, 117, 122, 255, 255, 255, 32.56201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 91, 84, 83, 93, 108, 32.56202 + 116, 111, 103, 91, 81, 75, 81, 83, 75, 64, 57, 46, 57, 40, 43, 59, 32.56203 + 66, 73, 67, 81, 76, 87, 87, 71, 76, 88, 80, 85, 76, 75, 76, 62, 32.56204 + 44, 54, 81, 69, 59, 74, 69, 58, 61, 60, 68, 69, 82, 92, 87, 85, 32.56205 + 97, 88, 55, 55, 54, 54, 54, 55, 59, 65, 68, 59, 64, 67, 64, 63, 32.56206 + 65, 62, 59, 52, 62, 71, 71, 65, 61, 61, 61, 64, 61, 55, 50, 50, 32.56207 + 55, 65, 74, 78, 85, 92, 96, 98, 104, 112, 120, 104, 99, 91, 80, 67, 32.56208 + 56, 47, 42, 39, 48, 42, 51, 50, 43, 50, 43, 55, 73, 96, 114, 119, 32.56209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 108, 110, 98, 32.56210 + 97, 112, 119, 112, 107, 109, 107, 98, 90, 86, 82, 74, 64, 59, 43, 45, 32.56211 + 59, 74, 73, 76, 78, 70, 78, 72, 72, 82, 83, 75, 72, 77, 74, 78, 32.56212 + 74, 65, 65, 72, 72, 65, 63, 61, 57, 52, 51, 56, 67, 74, 81, 80, 32.56213 + 76, 72, 72, 75, 73, 66, 60, 57, 51, 49, 48, 52, 56, 59, 49, 52, 32.56214 + 57, 58, 56, 56, 56, 58, 61, 65, 68, 67, 63, 60, 59, 61, 64, 66, 32.56215 + 62, 55, 53, 59, 66, 70, 81, 70, 67, 77, 84, 84, 85, 90, 81, 79, 32.56216 + 73, 66, 63, 65, 64, 60, 67, 51, 40, 42, 42, 33, 36, 46, 46, 46, 32.56217 + 72, 85, 100, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 32.56218 + 85, 77, 96, 115, 121, 112, 103, 99, 100, 77, 76, 69, 62, 59, 62, 60, 32.56219 + 54, 52, 53, 69, 81, 81, 82, 82, 73, 76, 69, 69, 77, 79, 72, 69, 32.56220 + 73, 67, 67, 63, 58, 59, 63, 64, 61, 49, 49, 50, 49, 50, 55, 62, 32.56221 + 68, 63, 63, 58, 53, 55, 61, 62, 58, 55, 56, 56, 58, 59, 61, 61, 32.56222 + 62, 55, 57, 58, 57, 56, 56, 58, 62, 63, 66, 66, 65, 62, 61, 64, 32.56223 + 68, 62, 63, 59, 53, 54, 60, 66, 67, 54, 59, 71, 86, 92, 88, 79, 32.56224 + 74, 71, 73, 73, 73, 78, 83, 81, 74, 61, 52, 44, 41, 35, 27, 30, 32.56225 + 40, 38, 39, 53, 65, 79, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56226 + 255, 255, 80, 81, 83, 113, 133, 125, 108, 98, 90, 81, 72, 74, 67, 52, 32.56227 + 45, 51, 53, 49, 64, 66, 80, 92, 90, 89, 87, 76, 75, 67, 67, 73, 32.56228 + 74, 67, 66, 70, 71, 65, 61, 61, 63, 61, 61, 64, 42, 46, 51, 56, 32.56229 + 59, 62, 65, 68, 57, 57, 52, 48, 51, 59, 63, 62, 56, 55, 52, 50, 32.56230 + 47, 45, 44, 44, 57, 56, 56, 55, 56, 58, 62, 67, 68, 68, 66, 62, 32.56231 + 62, 65, 70, 75, 61, 62, 60, 56, 59, 65, 67, 66, 62, 69, 75, 79, 32.56232 + 82, 85, 84, 80, 71, 72, 72, 75, 80, 81, 70, 58, 59, 58, 53, 44, 32.56233 + 35, 29, 31, 36, 32, 35, 34, 43, 59, 117, 255, 255, 255, 255, 255, 255, 32.56234 + 255, 255, 255, 255, 72, 85, 107, 113, 121, 122, 112, 104, 101, 90, 75, 81, 32.56235 + 80, 73, 61, 51, 48, 53, 57, 79, 77, 88, 95, 91, 91, 91, 82, 76, 32.56236 + 69, 67, 70, 70, 67, 65, 69, 77, 68, 62, 68, 68, 63, 61, 67, 47, 32.56237 + 52, 60, 67, 70, 69, 67, 66, 55, 56, 54, 51, 54, 61, 65, 64, 70, 32.56238 + 66, 57, 50, 46, 48, 50, 53, 53, 54, 53, 55, 56, 61, 64, 67, 70, 32.56239 + 69, 66, 64, 64, 66, 69, 74, 65, 66, 64, 64, 67, 74, 75, 72, 78, 32.56240 + 85, 82, 73, 71, 80, 85, 83, 92, 90, 87, 87, 90, 87, 72, 55, 62, 32.56241 + 63, 58, 48, 41, 40, 38, 35, 31, 38, 29, 37, 57, 122, 255, 255, 255, 32.56242 + 255, 255, 255, 255, 255, 255, 255, 84, 100, 124, 116, 107, 100, 97, 97, 94, 32.56243 + 89, 85, 78, 71, 69, 70, 63, 56, 64, 78, 93, 87, 93, 97, 91, 93, 32.56244 + 97, 91, 80, 74, 69, 69, 69, 69, 69, 72, 73, 63, 60, 66, 68, 64, 32.56245 + 64, 71, 58, 62, 69, 75, 76, 73, 68, 63, 50, 54, 55, 52, 54, 57, 32.56246 + 57, 56, 58, 57, 54, 52, 55, 62, 68, 72, 62, 62, 64, 67, 68, 68, 32.56247 + 68, 68, 71, 71, 69, 69, 68, 68, 66, 66, 69, 73, 73, 73, 76, 82, 32.56248 + 84, 82, 70, 83, 89, 86, 82, 83, 78, 69, 86, 84, 80, 81, 87, 88, 32.56249 + 77, 63, 61, 59, 52, 46, 46, 47, 41, 33, 31, 39, 33, 40, 74, 127, 32.56250 + 117, 255, 255, 255, 255, 255, 255, 255, 255, 107, 108, 110, 113, 108, 106, 105, 32.56251 + 101, 91, 82, 83, 90, 82, 75, 74, 75, 72, 68, 77, 90, 104, 96, 99, 32.56252 + 99, 94, 97, 103, 98, 88, 83, 76, 72, 72, 73, 76, 77, 71, 66, 64, 32.56253 + 69, 73, 76, 78, 81, 77, 78, 82, 85, 86, 82, 75, 70, 62, 67, 69, 32.56254 + 66, 65, 66, 65, 63, 49, 52, 57, 63, 69, 71, 72, 73, 81, 81, 81, 32.56255 + 81, 80, 79, 74, 71, 74, 73, 72, 73, 71, 68, 63, 61, 71, 76, 78, 32.56256 + 76, 78, 85, 89, 91, 77, 85, 91, 93, 93, 94, 89, 83, 79, 77, 72, 32.56257 + 71, 75, 78, 72, 62, 59, 50, 43, 42, 46, 45, 38, 31, 33, 35, 37, 32.56258 + 42, 95, 127, 116, 255, 255, 255, 255, 255, 255, 255, 205, 110, 114, 109, 100, 32.56259 + 108, 117, 117, 103, 88, 85, 87, 88, 91, 95, 88, 74, 71, 83, 92, 92, 32.56260 + 106, 99, 101, 103, 98, 102, 107, 102, 96, 91, 83, 77, 76, 79, 82, 83, 32.56261 + 77, 78, 75, 75, 79, 87, 89, 87, 87, 87, 88, 90, 92, 91, 86, 82, 32.56262 + 81, 86, 87, 83, 80, 81, 82, 81, 76, 79, 84, 87, 88, 86, 83, 80, 32.56263 + 90, 87, 85, 85, 86, 85, 81, 78, 77, 75, 74, 74, 74, 71, 66, 62, 32.56264 + 65, 74, 78, 75, 74, 80, 87, 93, 99, 92, 86, 89, 94, 100, 106, 112, 32.56265 + 106, 104, 97, 90, 87, 86, 78, 69, 62, 50, 44, 47, 49, 42, 37, 38, 32.56266 + 37, 29, 39, 39, 113, 124, 118, 255, 255, 255, 255, 255, 255, 255, 106, 99, 32.56267 + 102, 103, 98, 105, 117, 112, 90, 85, 99, 101, 87, 87, 103, 94, 65, 65, 32.56268 + 95, 107, 95, 103, 97, 101, 104, 99, 102, 107, 101, 102, 96, 87, 80, 79, 32.56269 + 83, 86, 86, 84, 88, 85, 77, 79, 88, 89, 82, 86, 84, 83, 86, 90, 32.56270 + 91, 89, 86, 86, 90, 91, 85, 82, 84, 88, 88, 85, 86, 86, 85, 85, 32.56271 + 84, 84, 85, 87, 84, 80, 80, 83, 85, 85, 84, 80, 77, 74, 75, 75, 32.56272 + 73, 69, 66, 60, 71, 75, 72, 69, 74, 85, 93, 104, 90, 82, 89, 96, 32.56273 + 100, 107, 116, 117, 116, 109, 99, 92, 87, 79, 71, 69, 56, 52, 57, 54, 32.56274 + 42, 40, 48, 42, 26, 40, 35, 122, 122, 122, 255, 255, 255, 255, 255, 255, 32.56275 + 255, 100, 104, 99, 100, 108, 107, 125, 118, 83, 102, 88, 94, 107, 96, 99, 32.56276 + 93, 82, 86, 102, 104, 95, 109, 105, 102, 100, 102, 104, 105, 105, 106, 102, 32.56277 + 98, 97, 93, 89, 90, 94, 85, 90, 94, 94, 96, 100, 99, 95, 91, 90, 32.56278 + 89, 90, 92, 94, 93, 92, 97, 97, 97, 97, 98, 96, 91, 88, 86, 85, 32.56279 + 85, 86, 88, 87, 82, 77, 81, 86, 88, 87, 88, 90, 85, 78, 81, 80, 32.56280 + 82, 84, 80, 72, 69, 70, 71, 69, 75, 74, 60, 61, 79, 92, 95, 100, 32.56281 + 94, 82, 84, 99, 105, 98, 123, 119, 118, 118, 116, 103, 81, 64, 66, 64, 32.56282 + 56, 47, 46, 48, 45, 38, 40, 60, 35, 38, 105, 129, 115, 172, 255, 255, 32.56283 + 255, 255, 255, 94, 99, 102, 100, 100, 104, 106, 104, 101, 91, 118, 106, 107, 32.56284 + 113, 100, 91, 86, 94, 105, 113, 114, 116, 114, 113, 110, 111, 112, 113, 112, 32.56285 + 110, 109, 104, 101, 102, 99, 94, 94, 97, 91, 96, 101, 102, 104, 109, 108, 32.56286 + 105, 98, 96, 95, 96, 99, 100, 99, 98, 101, 100, 99, 99, 99, 98, 93, 32.56287 + 90, 92, 89, 87, 86, 87, 87, 84, 82, 78, 82, 82, 82, 85, 91, 90, 32.56288 + 85, 79, 79, 80, 83, 80, 73, 70, 73, 77, 69, 71, 71, 60, 63, 77, 32.56289 + 83, 90, 97, 96, 88, 85, 94, 100, 100, 109, 117, 125, 125, 115, 101, 91, 32.56290 + 86, 63, 64, 60, 52, 49, 49, 45, 39, 39, 54, 36, 42, 98, 124, 119, 32.56291 + 129, 255, 255, 255, 255, 204, 102, 104, 105, 106, 105, 103, 103, 86, 88, 102, 32.56292 + 129, 122, 120, 115, 103, 85, 86, 112, 128, 124, 123, 134, 111, 111, 110, 112, 32.56293 + 112, 112, 110, 107, 109, 105, 104, 106, 104, 100, 99, 101, 98, 104, 108, 108, 32.56294 + 111, 115, 113, 110, 103, 101, 101, 102, 104, 105, 105, 103, 105, 103, 102, 101, 32.56295 + 101, 100, 97, 95, 97, 94, 90, 88, 88, 88, 87, 87, 88, 89, 86, 83, 32.56296 + 83, 87, 86, 82, 78, 77, 80, 83, 80, 74, 72, 75, 83, 71, 68, 68, 32.56297 + 59, 61, 70, 73, 86, 93, 98, 97, 91, 89, 93, 98, 97, 95, 96, 101, 32.56298 + 104, 98, 84, 71, 63, 66, 64, 57, 51, 47, 44, 40, 36, 42, 36, 44, 32.56299 + 84, 115, 122, 125, 255, 255, 255, 255, 106, 109, 104, 102, 106, 105, 99, 97, 32.56300 + 88, 98, 113, 122, 124, 125, 114, 97, 90, 101, 127, 138, 130, 126, 135, 120, 32.56301 + 119, 118, 118, 119, 120, 118, 115, 111, 105, 103, 105, 106, 103, 103, 105, 104, 32.56302 + 108, 111, 110, 109, 111, 109, 104, 104, 103, 102, 103, 104, 106, 105, 104, 108, 32.56303 + 106, 103, 103, 102, 102, 100, 98, 98, 95, 94, 92, 90, 89, 88, 87, 94, 32.56304 + 94, 91, 85, 85, 87, 85, 80, 80, 80, 81, 83, 80, 74, 73, 76, 85, 32.56305 + 73, 70, 69, 57, 57, 65, 68, 83, 89, 99, 106, 101, 91, 87, 90, 107, 32.56306 + 103, 102, 107, 111, 107, 94, 83, 72, 73, 70, 61, 51, 44, 42, 42, 34, 32.56307 + 33, 35, 45, 69, 103, 123, 120, 255, 255, 255, 255, 105, 105, 96, 92, 97, 32.56308 + 98, 92, 90, 106, 121, 122, 111, 123, 127, 118, 82, 98, 119, 134, 136, 133, 32.56309 + 129, 129, 120, 117, 114, 113, 114, 115, 115, 115, 116, 109, 105, 106, 109, 108, 32.56310 + 109, 112, 104, 109, 110, 108, 109, 110, 107, 103, 107, 105, 104, 105, 106, 108, 32.56311 + 107, 105, 110, 108, 105, 105, 105, 104, 103, 101, 95, 96, 97, 96, 93, 90, 32.56312 + 87, 85, 85, 87, 88, 86, 87, 90, 88, 84, 84, 82, 82, 84, 79, 73, 32.56313 + 72, 75, 83, 76, 77, 74, 58, 54, 63, 67, 82, 87, 98, 110, 111, 100, 32.56314 + 88, 84, 77, 92, 104, 101, 87, 79, 85, 94, 85, 82, 75, 64, 53, 44, 32.56315 + 44, 47, 39, 33, 37, 44, 61, 97, 123, 119, 255, 255, 255, 203, 103, 101, 32.56316 + 92, 89, 95, 97, 94, 91, 123, 131, 126, 113, 130, 126, 120, 74, 105, 131, 32.56317 + 135, 133, 136, 135, 129, 121, 116, 112, 110, 110, 112, 113, 114, 122, 114, 109, 32.56318 + 111, 114, 114, 114, 116, 102, 107, 109, 110, 111, 115, 113, 109, 111, 110, 109, 32.56319 + 109, 111, 111, 110, 109, 110, 109, 107, 106, 106, 106, 103, 101, 96, 97, 99, 32.56320 + 99, 95, 90, 86, 85, 85, 87, 87, 85, 85, 87, 84, 78, 86, 84, 84, 32.56321 + 84, 79, 73, 72, 76, 81, 76, 80, 79, 64, 59, 66, 69, 79, 86, 98, 32.56322 + 109, 113, 109, 99, 90, 86, 95, 104, 103, 95, 91, 96, 103, 89, 81, 72, 32.56323 + 64, 55, 48, 48, 52, 48, 41, 40, 42, 59, 95, 121, 121, 255, 255, 255, 32.56324 + 96, 95, 93, 92, 93, 97, 100, 101, 102, 127, 117, 124, 128, 140, 114, 110, 32.56325 + 86, 112, 134, 136, 134, 138, 138, 134, 130, 128, 124, 123, 124, 124, 123, 122, 32.56326 + 121, 114, 112, 116, 120, 118, 113, 112, 104, 109, 113, 113, 114, 117, 117, 113, 32.56327 + 116, 115, 112, 114, 115, 116, 113, 114, 112, 110, 110, 110, 110, 109, 105, 102, 32.56328 + 100, 101, 102, 99, 94, 91, 89, 90, 93, 93, 89, 84, 83, 85, 83, 78, 32.56329 + 85, 83, 83, 84, 80, 74, 74, 78, 83, 76, 80, 83, 73, 69, 71, 70, 32.56330 + 73, 87, 98, 103, 108, 115, 114, 108, 100, 92, 85, 84, 87, 85, 78, 69, 32.56331 + 75, 66, 59, 57, 54, 49, 49, 53, 54, 49, 38, 35, 57, 91, 114, 120, 32.56332 + 164, 255, 99, 86, 83, 82, 87, 93, 96, 99, 102, 115, 125, 99, 118, 140, 32.56333 + 145, 99, 94, 104, 119, 134, 139, 137, 138, 138, 138, 117, 116, 114, 115, 116, 32.56334 + 114, 112, 108, 116, 111, 111, 118, 121, 117, 110, 106, 109, 113, 116, 115, 114, 32.56335 + 117, 115, 111, 118, 117, 115, 116, 117, 117, 115, 114, 112, 111, 112, 113, 114, 32.56336 + 111, 107, 102, 104, 105, 103, 98, 93, 91, 92, 94, 92, 92, 88, 83, 86, 32.56337 + 92, 94, 92, 83, 81, 81, 83, 80, 76, 76, 80, 85, 75, 78, 84, 79, 32.56338 + 77, 75, 70, 67, 87, 99, 98, 101, 117, 126, 125, 124, 120, 112, 101, 89, 32.56339 + 78, 71, 68, 57, 49, 45, 50, 51, 49, 46, 49, 56, 52, 33, 28, 53, 32.56340 + 87, 107, 117, 121, 255, 96, 94, 94, 94, 93, 92, 94, 103, 111, 113, 96, 32.56341 + 110, 129, 132, 125, 111, 79, 112, 132, 131, 129, 125, 127, 139, 131, 110, 120, 32.56342 + 122, 114, 111, 114, 111, 102, 104, 101, 102, 109, 121, 124, 110, 92, 112, 107, 32.56343 + 106, 112, 115, 114, 114, 117, 122, 122, 119, 121, 125, 127, 129, 129, 118, 117, 32.56344 + 118, 118, 118, 116, 112, 109, 104, 105, 104, 103, 101, 98, 94, 92, 99, 89, 32.56345 + 77, 70, 66, 70, 82, 95, 86, 81, 77, 77, 79, 79, 73, 68, 80, 87, 32.56346 + 92, 90, 82, 76, 74, 77, 66, 79, 91, 99, 104, 111, 120, 126, 141, 140, 32.56347 + 126, 105, 91, 84, 72, 58, 56, 55, 53, 49, 44, 43, 44, 46, 46, 45, 32.56348 + 58, 36, 35, 89, 118, 114, 116, 97, 86, 101, 102, 106, 109, 106, 101, 100, 32.56349 + 102, 84, 91, 107, 141, 120, 126, 110, 101, 107, 130, 136, 143, 139, 130, 134, 32.56350 + 122, 128, 134, 130, 119, 115, 121, 123, 119, 110, 109, 104, 104, 109, 116, 115, 32.56351 + 109, 113, 109, 109, 115, 119, 119, 119, 123, 126, 128, 132, 136, 139, 138, 134, 32.56352 + 130, 121, 118, 115, 113, 112, 110, 108, 105, 105, 106, 106, 105, 101, 98, 94, 32.56353 + 92, 100, 92, 84, 78, 73, 73, 81, 90, 85, 80, 76, 76, 78, 79, 78, 32.56354 + 75, 76, 85, 91, 89, 81, 77, 81, 88, 79, 80, 89, 104, 105, 100, 104, 32.56355 + 117, 112, 113, 109, 100, 91, 84, 75, 67, 65, 61, 55, 51, 50, 49, 46, 32.56356 + 44, 35, 39, 56, 39, 42, 94, 123, 122, 121, 107, 102, 99, 99, 105, 111, 32.56357 + 110, 103, 98, 99, 82, 102, 110, 151, 113, 123, 97, 98, 116, 129, 127, 134, 32.56358 + 131, 123, 131, 127, 124, 129, 126, 116, 111, 116, 117, 114, 119, 120, 117, 109, 32.56359 + 105, 108, 112, 114, 113, 109, 110, 116, 122, 122, 124, 126, 132, 134, 137, 141, 32.56360 + 142, 139, 134, 130, 129, 125, 119, 114, 112, 111, 109, 107, 111, 111, 111, 109, 32.56361 + 107, 103, 99, 97, 99, 94, 90, 87, 82, 79, 82, 88, 86, 83, 80, 77, 32.56362 + 75, 76, 77, 78, 77, 85, 90, 87, 80, 79, 84, 94, 81, 75, 86, 110, 32.56363 + 114, 101, 101, 117, 106, 105, 107, 106, 97, 84, 75, 72, 75, 67, 58, 54, 32.56364 + 55, 53, 47, 40, 33, 41, 57, 43, 50, 98, 121, 120, 119, 98, 95, 107, 32.56365 + 102, 103, 108, 106, 100, 97, 101, 102, 117, 119, 149, 121, 119, 87, 82, 121, 32.56366 + 129, 123, 129, 126, 117, 129, 129, 123, 130, 132, 128, 124, 122, 118, 112, 112, 32.56367 + 119, 121, 118, 112, 113, 112, 111, 108, 105, 106, 115, 120, 123, 124, 128, 131, 32.56368 + 130, 128, 128, 128, 129, 126, 125, 129, 127, 122, 120, 117, 116, 113, 111, 114, 32.56369 + 113, 112, 110, 108, 104, 100, 99, 99, 96, 94, 93, 88, 84, 85, 90, 87, 32.56370 + 87, 84, 79, 74, 72, 71, 73, 81, 85, 87, 86, 83, 81, 82, 86, 83, 32.56371 + 80, 91, 115, 123, 112, 106, 112, 117, 113, 114, 115, 106, 89, 81, 84, 81, 32.56372 + 75, 66, 60, 57, 52, 45, 39, 36, 41, 50, 41, 60, 108, 124, 122, 118, 32.56373 + 100, 102, 119, 112, 112, 117, 112, 102, 98, 103, 110, 124, 134, 142, 129, 109, 32.56374 + 89, 87, 115, 129, 129, 139, 134, 120, 121, 110, 120, 126, 129, 128, 123, 121, 32.56375 + 116, 112, 103, 110, 115, 117, 119, 122, 119, 115, 107, 105, 107, 116, 122, 125, 32.56376 + 127, 130, 126, 125, 124, 127, 129, 131, 130, 129, 126, 126, 124, 125, 124, 123, 32.56377 + 119, 116, 116, 115, 113, 110, 106, 103, 101, 99, 106, 102, 98, 96, 91, 85, 32.56378 + 86, 91, 85, 85, 84, 80, 75, 72, 70, 71, 82, 82, 82, 85, 87, 86, 32.56379 + 80, 76, 88, 93, 103, 117, 124, 120, 106, 95, 113, 107, 106, 110, 105, 93, 32.56380 + 88, 94, 83, 81, 76, 68, 59, 51, 46, 44, 40, 40, 40, 34, 69, 120, 32.56381 + 130, 130, 125, 111, 118, 106, 104, 112, 123, 119, 107, 104, 113, 114, 137, 151, 32.56382 + 139, 121, 89, 84, 98, 113, 128, 124, 125, 119, 112, 115, 100, 118, 119, 118, 32.56383 + 116, 113, 112, 113, 114, 115, 117, 114, 112, 115, 119, 117, 111, 111, 109, 111, 32.56384 + 120, 127, 129, 132, 136, 129, 133, 140, 148, 153, 152, 148, 143, 129, 129, 131, 32.56385 + 134, 136, 136, 133, 130, 125, 124, 122, 119, 114, 111, 109, 108, 114, 109, 104, 32.56386 + 100, 93, 86, 85, 89, 83, 82, 80, 78, 76, 76, 75, 76, 79, 80, 81, 32.56387 + 85, 88, 87, 79, 75, 84, 90, 98, 110, 122, 125, 111, 96, 104, 97, 92, 32.56388 + 91, 88, 83, 79, 80, 78, 79, 76, 69, 60, 53, 51, 50, 54, 51, 42, 32.56389 + 34, 72, 119, 123, 125, 127, 100, 108, 97, 96, 106, 117, 112, 101, 104, 120, 32.56390 + 122, 148, 145, 137, 107, 86, 73, 98, 107, 124, 114, 106, 106, 113, 123, 105, 32.56391 + 121, 122, 122, 122, 120, 119, 120, 122, 124, 124, 121, 116, 114, 116, 113, 108, 32.56392 + 115, 113, 114, 123, 130, 132, 135, 139, 137, 141, 148, 154, 158, 157, 151, 145, 32.56393 + 134, 134, 134, 136, 139, 141, 140, 139, 134, 133, 130, 127, 123, 121, 118, 117, 32.56394 + 114, 111, 108, 106, 100, 92, 90, 93, 91, 85, 78, 75, 76, 79, 81, 83, 32.56395 + 83, 85, 87, 87, 84, 81, 78, 79, 85, 81, 85, 105, 122, 125, 117, 111, 32.56396 + 98, 93, 84, 76, 75, 73, 65, 57, 65, 65, 63, 61, 58, 56, 53, 50, 32.56397 + 57, 58, 50, 39, 75, 115, 117, 125, 125, 109, 121, 115, 108, 110, 112, 100, 32.56398 + 88, 97, 118, 125, 147, 121, 130, 99, 100, 73, 98, 89, 118, 119, 117, 121, 32.56399 + 131, 134, 108, 105, 109, 114, 119, 118, 113, 109, 109, 110, 117, 122, 121, 120, 32.56400 + 121, 118, 114, 116, 113, 115, 123, 130, 133, 135, 140, 139, 138, 137, 137, 137, 32.56401 + 136, 133, 130, 130, 128, 127, 127, 131, 134, 136, 136, 134, 132, 129, 125, 122, 32.56402 + 119, 116, 116, 108, 107, 108, 110, 107, 100, 97, 100, 102, 92, 79, 73, 75, 32.56403 + 81, 83, 85, 88, 93, 96, 89, 79, 72, 74, 81, 102, 82, 80, 104, 122, 32.56404 + 117, 111, 117, 91, 89, 80, 70, 72, 76, 67, 52, 53, 50, 47, 50, 54, 32.56405 + 56, 52, 46, 41, 51, 49, 41, 78, 119, 124, 140, 125, 111, 104, 93, 111, 32.56406 + 114, 111, 109, 94, 95, 126, 135, 137, 125, 134, 104, 93, 75, 83, 104, 108, 32.56407 + 115, 121, 122, 118, 111, 107, 114, 111, 110, 114, 116, 114, 115, 119, 109, 113, 32.56408 + 117, 118, 118, 117, 117, 118, 118, 118, 119, 124, 129, 133, 133, 134, 144, 139, 32.56409 + 135, 135, 137, 137, 133, 128, 125, 123, 122, 125, 131, 135, 136, 136, 136, 135, 32.56410 + 132, 127, 123, 120, 114, 109, 114, 113, 111, 107, 102, 100, 100, 101, 99, 88, 32.56411 + 79, 73, 69, 78, 86, 79, 92, 97, 97, 90, 82, 81, 80, 80, 81, 96, 32.56412 + 76, 109, 107, 114, 118, 109, 95, 81, 78, 67, 71, 79, 63, 59, 51, 52, 32.56413 + 51, 48, 46, 46, 48, 50, 52, 47, 49, 44, 72, 120, 130, 130, 126, 111, 32.56414 + 102, 91, 97, 90, 87, 95, 94, 102, 129, 122, 129, 125, 120, 94, 82, 77, 32.56415 + 86, 108, 110, 114, 116, 116, 112, 107, 104, 110, 108, 110, 115, 117, 114, 112, 32.56416 + 115, 114, 117, 120, 121, 121, 119, 119, 120, 113, 113, 114, 118, 124, 129, 131, 32.56417 + 132, 140, 137, 133, 132, 132, 130, 122, 115, 124, 124, 126, 130, 136, 139, 138, 32.56418 + 136, 134, 134, 131, 126, 121, 115, 108, 103, 113, 115, 115, 113, 107, 103, 100, 32.56419 + 99, 107, 94, 86, 79, 75, 84, 92, 84, 87, 93, 93, 86, 79, 78, 77, 32.56420 + 78, 104, 109, 89, 101, 96, 109, 105, 96, 109, 97, 92, 74, 69, 73, 56, 32.56421 + 52, 55, 55, 54, 51, 47, 45, 45, 45, 52, 49, 51, 45, 70, 116, 129, 32.56422 + 131, 130, 112, 104, 95, 90, 76, 75, 91, 101, 109, 124, 112, 121, 125, 103, 32.56423 + 85, 73, 83, 91, 106, 106, 109, 110, 110, 109, 106, 105, 107, 106, 110, 116, 32.56424 + 116, 112, 110, 111, 113, 117, 118, 119, 117, 116, 115, 116, 113, 112, 111, 114, 32.56425 + 119, 124, 128, 129, 133, 131, 131, 132, 132, 129, 121, 115, 113, 115, 119, 125, 32.56426 + 129, 130, 128, 126, 133, 132, 131, 129, 124, 117, 111, 108, 114, 117, 119, 119, 32.56427 + 115, 108, 102, 101, 112, 99, 91, 84, 80, 89, 95, 87, 82, 88, 89, 82, 32.56428 + 76, 76, 75, 76, 100, 102, 99, 93, 91, 113, 98, 91, 101, 93, 95, 78, 32.56429 + 70, 72, 58, 59, 57, 57, 55, 52, 48, 45, 41, 40, 49, 49, 53, 44, 32.56430 + 65, 110, 124, 129, 130, 108, 102, 102, 97, 89, 89, 100, 110, 111, 112, 104, 32.56431 + 111, 116, 82, 76, 65, 85, 87, 96, 98, 103, 108, 111, 112, 111, 111, 109, 32.56432 + 107, 109, 114, 114, 111, 110, 113, 110, 113, 114, 114, 112, 110, 109, 110, 116, 32.56433 + 114, 111, 113, 116, 122, 125, 126, 131, 130, 127, 128, 127, 124, 119, 115, 119, 32.56434 + 121, 123, 126, 127, 129, 126, 126, 121, 122, 124, 127, 125, 119, 116, 116, 114, 32.56435 + 117, 120, 120, 117, 112, 107, 107, 111, 98, 89, 82, 78, 88, 93, 84, 82, 32.56436 + 87, 88, 82, 76, 76, 77, 78, 82, 89, 108, 91, 91, 113, 92, 87, 79, 32.56437 + 80, 92, 82, 75, 75, 59, 59, 52, 52, 51, 50, 48, 45, 41, 38, 44, 32.56438 + 45, 50, 39, 57, 100, 116, 124, 123, 101, 98, 106, 105, 105, 101, 101, 110, 32.56439 + 111, 103, 100, 99, 97, 66, 67, 63, 81, 80, 88, 93, 101, 109, 114, 116, 32.56440 + 114, 113, 114, 110, 109, 111, 112, 110, 111, 116, 112, 114, 114, 114, 110, 110, 32.56441 + 109, 110, 113, 110, 107, 109, 113, 121, 125, 128, 132, 130, 124, 121, 116, 114, 32.56442 + 109, 108, 114, 115, 115, 115, 114, 115, 114, 116, 109, 110, 114, 120, 117, 111, 32.56443 + 111, 115, 114, 116, 118, 117, 115, 113, 113, 115, 110, 96, 84, 78, 76, 87, 32.56444 + 91, 81, 84, 89, 90, 84, 79, 79, 80, 80, 82, 93, 118, 92, 88, 100, 32.56445 + 86, 84, 71, 75, 93, 87, 80, 75, 51, 46, 45, 45, 44, 45, 47, 46, 32.56446 + 43, 40, 38, 40, 45, 33, 49, 92, 109, 117, 116, 203, 103, 104, 105, 109, 32.56447 + 100, 91, 102, 110, 99, 101, 94, 83, 66, 67, 70, 81, 82, 91, 96, 103, 32.56448 + 111, 114, 114, 111, 110, 116, 111, 108, 109, 110, 109, 112, 118, 116, 117, 117, 32.56449 + 116, 114, 113, 114, 115, 106, 104, 102, 106, 113, 120, 126, 129, 127, 125, 121, 32.56450 + 118, 117, 117, 118, 120, 110, 110, 109, 107, 105, 104, 106, 109, 113, 112, 114, 32.56451 + 119, 113, 105, 105, 112, 114, 115, 114, 113, 110, 111, 114, 117, 109, 94, 83, 32.56452 + 77, 77, 88, 93, 82, 85, 91, 92, 86, 80, 80, 81, 81, 87, 96, 112, 32.56453 + 87, 85, 88, 93, 95, 69, 71, 87, 86, 85, 82, 55, 44, 42, 41, 39, 32.56454 + 41, 45, 46, 44, 40, 36, 37, 41, 29, 46, 89, 106, 114, 114, 255, 110, 32.56455 + 99, 102, 110, 101, 86, 100, 108, 91, 95, 87, 71, 71, 65, 74, 79, 89, 32.56456 + 96, 99, 103, 108, 110, 110, 109, 108, 114, 110, 108, 110, 109, 108, 109, 115, 32.56457 + 114, 115, 114, 113, 111, 111, 112, 114, 107, 105, 104, 107, 113, 120, 125, 128, 32.56458 + 125, 125, 125, 124, 123, 123, 124, 125, 117, 119, 121, 121, 119, 117, 119, 121, 32.56459 + 121, 117, 118, 120, 113, 103, 103, 112, 114, 114, 113, 111, 108, 107, 109, 112, 32.56460 + 108, 93, 82, 78, 78, 90, 94, 83, 85, 91, 91, 85, 78, 78, 78, 79, 32.56461 + 83, 90, 94, 83, 92, 82, 102, 97, 71, 65, 75, 74, 82, 87, 63, 52, 32.56462 + 47, 44, 40, 40, 43, 44, 41, 38, 39, 38, 40, 29, 48, 92, 108, 115, 32.56463 + 114, 255, 106, 96, 101, 114, 107, 92, 103, 106, 81, 82, 75, 58, 70, 56, 32.56464 + 69, 70, 89, 98, 99, 101, 104, 106, 108, 109, 110, 110, 108, 108, 112, 111, 32.56465 + 108, 108, 111, 107, 108, 108, 107, 105, 105, 107, 109, 115, 113, 112, 113, 116, 32.56466 + 121, 122, 123, 132, 133, 130, 127, 119, 114, 109, 108, 105, 110, 115, 117, 114, 32.56467 + 113, 112, 114, 119, 114, 113, 115, 108, 97, 99, 111, 113, 113, 113, 110, 107, 32.56468 + 104, 104, 105, 105, 90, 79, 75, 77, 90, 94, 83, 84, 89, 90, 83, 76, 32.56469 + 75, 76, 74, 79, 86, 83, 84, 99, 76, 97, 80, 83, 69, 68, 63, 75, 32.56470 + 85, 63, 51, 54, 48, 42, 40, 42, 42, 39, 36, 43, 40, 41, 30, 52, 32.56471 + 97, 110, 117, 115, 255, 93, 88, 98, 103, 99, 90, 87, 86, 84, 60, 64, 32.56472 + 68, 69, 69, 71, 76, 79, 83, 86, 93, 98, 100, 103, 105, 106, 106, 111, 32.56473 + 115, 116, 112, 110, 111, 112, 107, 106, 106, 106, 106, 106, 106, 106, 109, 108, 32.56474 + 107, 110, 115, 121, 125, 128, 130, 118, 111, 115, 109, 98, 96, 107, 109, 112, 32.56475 + 113, 116, 117, 117, 115, 114, 116, 121, 122, 116, 111, 110, 110, 108, 108, 110, 32.56476 + 113, 110, 105, 102, 104, 109, 101, 100, 81, 80, 73, 94, 88, 86, 84, 93, 32.56477 + 95, 84, 75, 78, 83, 85, 82, 76, 72, 75, 75, 76, 81, 89, 85, 74, 32.56478 + 77, 78, 63, 61, 62, 48, 53, 47, 43, 43, 45, 42, 36, 32, 28, 41, 32.56479 + 58, 45, 54, 92, 108, 120, 110, 255, 255, 93, 99, 104, 101, 90, 79, 72, 32.56480 + 71, 62, 63, 65, 66, 69, 74, 80, 83, 81, 85, 92, 97, 99, 101, 103, 32.56481 + 105, 101, 102, 104, 108, 112, 115, 116, 115, 108, 107, 108, 108, 108, 107, 107, 32.56482 + 106, 110, 108, 105, 105, 106, 109, 111, 112, 116, 109, 107, 111, 110, 105, 107, 32.56483 + 114, 122, 123, 124, 125, 125, 124, 122, 121, 107, 113, 114, 110, 105, 105, 105, 32.56484 + 102, 103, 106, 106, 104, 100, 99, 100, 102, 95, 95, 78, 80, 74, 95, 86, 32.56485 + 82, 83, 92, 94, 87, 80, 79, 80, 78, 78, 77, 75, 75, 75, 78, 78, 32.56486 + 79, 72, 66, 67, 70, 67, 72, 74, 68, 59, 52, 44, 43, 46, 46, 44, 32.56487 + 41, 41, 46, 54, 40, 51, 87, 105, 117, 117, 255, 255, 94, 95, 101, 104, 32.56488 + 93, 72, 59, 58, 64, 62, 62, 64, 70, 79, 85, 87, 81, 85, 91, 96, 32.56489 + 99, 101, 102, 104, 100, 98, 98, 104, 113, 118, 117, 114, 112, 112, 113, 113, 32.56490 + 113, 111, 108, 107, 110, 108, 105, 103, 101, 101, 103, 105, 108, 108, 109, 110, 32.56491 + 112, 114, 116, 118, 113, 113, 114, 113, 112, 109, 107, 105, 105, 111, 112, 109, 32.56492 + 107, 108, 107, 104, 102, 102, 102, 101, 100, 99, 99, 98, 89, 90, 75, 80, 32.56493 + 76, 96, 85, 78, 83, 90, 93, 90, 85, 82, 76, 72, 74, 79, 77, 73, 32.56494 + 74, 79, 74, 65, 80, 78, 68, 65, 72, 74, 69, 71, 57, 52, 45, 44, 32.56495 + 46, 47, 43, 38, 39, 42, 53, 48, 64, 98, 106, 112, 120, 255, 255, 200, 32.56496 + 87, 94, 105, 97, 72, 56, 55, 64, 61, 62, 67, 75, 84, 88, 88, 83, 32.56497 + 87, 93, 98, 100, 102, 103, 105, 102, 103, 105, 111, 115, 117, 114, 110, 110, 32.56498 + 110, 111, 112, 111, 109, 106, 105, 107, 107, 106, 104, 104, 106, 109, 112, 113, 32.56499 + 117, 117, 113, 113, 116, 116, 113, 113, 114, 114, 114, 113, 112, 109, 109, 109, 32.56500 + 114, 114, 111, 110, 111, 110, 106, 105, 103, 101, 100, 101, 100, 99, 96, 88, 32.56501 + 91, 75, 81, 76, 97, 85, 79, 84, 86, 88, 89, 85, 81, 74, 70, 72, 32.56502 + 80, 78, 69, 71, 78, 72, 58, 90, 92, 74, 65, 76, 72, 60, 66, 55, 32.56503 + 53, 49, 47, 48, 47, 37, 29, 34, 32, 44, 46, 67, 101, 107, 116, 145, 32.56504 + 255, 255, 255, 84, 91, 104, 99, 77, 61, 59, 64, 63, 66, 72, 81, 87, 32.56505 + 87, 85, 83, 86, 91, 96, 98, 100, 101, 102, 98, 105, 113, 117, 116, 113, 32.56506 + 109, 107, 105, 105, 105, 106, 104, 103, 101, 100, 102, 104, 105, 105, 105, 108, 32.56507 + 113, 117, 118, 122, 120, 113, 111, 112, 111, 106, 116, 118, 118, 118, 118, 119, 32.56508 + 118, 117, 114, 116, 115, 110, 109, 111, 109, 105, 106, 104, 102, 101, 101, 100, 32.56509 + 97, 95, 92, 95, 79, 82, 75, 94, 86, 81, 84, 85, 84, 85, 81, 77, 32.56510 + 73, 72, 76, 83, 80, 69, 70, 78, 75, 62, 74, 80, 66, 61, 76, 73, 32.56511 + 63, 71, 61, 58, 50, 43, 43, 45, 38, 29, 38, 29, 34, 32, 51, 81, 32.56512 + 94, 110, 221, 255, 255, 255, 255, 92, 101, 100, 85, 70, 65, 67, 68, 72, 32.56513 + 78, 82, 86, 85, 83, 82, 85, 90, 94, 96, 98, 99, 100, 94, 103, 113, 32.56514 + 117, 115, 111, 108, 107, 109, 108, 108, 108, 107, 107, 107, 107, 103, 105, 106, 32.56515 + 105, 103, 104, 109, 114, 116, 115, 113, 111, 109, 108, 108, 109, 115, 116, 116, 32.56516 + 118, 119, 121, 121, 121, 122, 121, 117, 112, 112, 116, 114, 111, 107, 107, 106, 32.56517 + 103, 100, 97, 96, 95, 94, 99, 86, 85, 73, 91, 84, 83, 81, 81, 80, 32.56518 + 81, 76, 72, 72, 76, 82, 86, 83, 75, 71, 74, 74, 68, 58, 61, 56, 32.56519 + 54, 62, 64, 62, 67, 63, 58, 45, 34, 34, 44, 45, 39, 40, 34, 47, 32.56520 + 47, 54, 66, 67, 82, 255, 255, 255, 255, 255, 94, 98, 100, 95, 84, 75, 32.56521 + 72, 74, 78, 80, 80, 82, 83, 83, 84, 86, 92, 96, 98, 100, 100, 102, 32.56522 + 100, 104, 109, 113, 114, 113, 111, 109, 114, 113, 111, 111, 111, 113, 115, 117, 32.56523 + 111, 113, 113, 109, 105, 104, 109, 113, 114, 108, 107, 111, 113, 109, 111, 119, 32.56524 + 127, 127, 127, 128, 129, 132, 132, 132, 125, 124, 118, 112, 114, 120, 120, 118, 32.56525 + 112, 114, 113, 109, 102, 97, 97, 97, 93, 103, 94, 92, 74, 87, 79, 79, 32.56526 + 75, 77, 79, 81, 74, 68, 70, 78, 83, 85, 84, 79, 70, 64, 65, 66, 32.56527 + 57, 52, 52, 50, 42, 47, 56, 56, 59, 57, 48, 39, 43, 57, 60, 53, 32.56528 + 44, 43, 60, 59, 55, 55, 55, 73, 255, 255, 255, 255, 255, 202, 95, 100, 32.56529 + 104, 96, 85, 77, 79, 81, 80, 77, 78, 81, 85, 89, 91, 97, 101, 103, 32.56530 + 104, 106, 106, 113, 111, 108, 111, 115, 117, 114, 111, 113, 111, 109, 108, 109, 32.56531 + 111, 115, 117, 120, 122, 121, 117, 112, 111, 115, 120, 117, 107, 105, 116, 117, 32.56532 + 112, 116, 129, 127, 127, 127, 128, 129, 130, 130, 131, 120, 118, 111, 106, 108, 32.56533 + 117, 120, 117, 117, 120, 121, 115, 106, 100, 100, 103, 89, 104, 98, 97, 76, 32.56534 + 83, 74, 75, 70, 74, 79, 82, 74, 67, 70, 78, 80, 81, 82, 79, 67, 32.56535 + 55, 54, 59, 57, 47, 49, 47, 32, 39, 57, 54, 55, 60, 59, 58, 67, 32.56536 + 79, 77, 67, 56, 46, 51, 39, 31, 41, 59, 95, 255, 255, 255, 255, 255, 32.56537 + 255, 202, 99, 102, 94, 83, 85, 70, 80, 78, 78, 89, 82, 80, 88, 89, 32.56538 + 93, 97, 102, 108, 111, 114, 113, 112, 111, 111, 111, 112, 113, 112, 105, 110, 32.56539 + 112, 110, 111, 116, 120, 121, 119, 122, 124, 120, 113, 111, 115, 121, 115, 105, 32.56540 + 105, 115, 117, 112, 118, 133, 133, 134, 131, 130, 134, 139, 133, 125, 125, 120, 32.56541 + 115, 116, 115, 114, 115, 121, 115, 117, 118, 113, 105, 97, 96, 99, 92, 105, 32.56542 + 103, 106, 81, 68, 76, 69, 85, 67, 80, 76, 75, 78, 62, 79, 85, 85, 32.56543 + 84, 78, 67, 60, 57, 58, 46, 43, 45, 43, 37, 43, 49, 40, 48, 53, 32.56544 + 64, 79, 88, 85, 72, 61, 48, 54, 46, 34, 37, 49, 73, 101, 255, 255, 32.56545 + 255, 255, 255, 255, 255, 96, 97, 90, 81, 86, 76, 82, 78, 85, 94, 81, 32.56546 + 83, 92, 93, 96, 101, 105, 109, 111, 112, 107, 107, 107, 109, 113, 116, 117, 32.56547 + 117, 115, 117, 117, 116, 119, 124, 123, 118, 112, 114, 113, 110, 106, 107, 112, 32.56548 + 117, 114, 104, 105, 117, 122, 116, 119, 132, 134, 131, 129, 129, 129, 131, 132, 32.56549 + 132, 126, 121, 118, 119, 118, 116, 118, 122, 124, 108, 101, 109, 109, 97, 89, 32.56550 + 90, 103, 65, 109, 105, 76, 86, 72, 79, 82, 71, 76, 78, 75, 71, 63, 32.56551 + 74, 83, 81, 78, 79, 78, 68, 52, 40, 21, 25, 35, 38, 37, 46, 53, 32.56552 + 49, 66, 71, 80, 88, 86, 79, 73, 70, 62, 59, 44, 35, 45, 62, 85, 32.56553 + 111, 255, 255, 255, 255, 255, 255, 255, 255, 102, 97, 91, 88, 85, 82, 73, 32.56554 + 88, 93, 73, 82, 93, 94, 98, 102, 106, 108, 108, 109, 112, 110, 110, 113, 32.56555 + 118, 122, 123, 123, 121, 121, 120, 119, 122, 125, 121, 113, 112, 109, 105, 104, 32.56556 + 105, 108, 114, 118, 112, 102, 103, 117, 126, 122, 120, 126, 132, 129, 128, 130, 32.56557 + 124, 119, 125, 136, 132, 127, 126, 126, 125, 121, 122, 125, 116, 110, 106, 102, 32.56558 + 96, 91, 89, 91, 105, 68, 96, 83, 81, 95, 69, 71, 76, 75, 70, 79, 32.56559 + 76, 64, 68, 69, 86, 81, 74, 67, 59, 47, 30, 19, 28, 37, 46, 51, 32.56560 + 53, 62, 67, 67, 85, 86, 90, 90, 79, 70, 72, 81, 75, 68, 45, 34, 32.56561 + 48, 69, 92, 114, 255, 255, 255, 255, 255, 255, 255, 255, 209, 114, 113, 97, 32.56562 + 97, 84, 67, 85, 86, 60, 77, 94, 95, 98, 101, 103, 104, 104, 103, 117, 32.56563 + 115, 113, 114, 118, 121, 121, 119, 115, 118, 119, 117, 118, 118, 114, 107, 115, 32.56564 + 108, 101, 99, 103, 109, 114, 115, 109, 99, 100, 116, 127, 124, 119, 118, 126, 32.56565 + 124, 128, 133, 123, 107, 109, 123, 127, 124, 122, 125, 123, 118, 118, 120, 103, 32.56566 + 113, 114, 102, 95, 96, 91, 80, 65, 86, 80, 74, 96, 79, 78, 66, 66, 32.56567 + 75, 64, 81, 81, 64, 79, 72, 78, 76, 64, 44, 25, 18, 24, 34, 51, 32.56568 + 58, 58, 59, 70, 79, 83, 85, 89, 84, 83, 81, 72, 64, 71, 87, 87, 32.56569 + 83, 61, 44, 48, 63, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56570 + 122, 123, 112, 111, 94, 71, 83, 81, 57, 76, 97, 97, 99, 100, 102, 102, 32.56571 + 102, 101, 110, 106, 103, 104, 107, 109, 107, 105, 104, 113, 119, 117, 113, 112, 32.56572 + 112, 111, 113, 106, 97, 94, 98, 103, 107, 108, 108, 98, 99, 112, 124, 122, 32.56573 + 115, 110, 112, 113, 122, 129, 116, 92, 86, 97, 97, 94, 95, 99, 101, 99, 32.56574 + 101, 104, 131, 123, 116, 110, 103, 93, 89, 90, 94, 74, 84, 90, 90, 69, 32.56575 + 95, 77, 61, 72, 62, 80, 84, 71, 84, 73, 55, 51, 39, 26, 20, 28, 32.56576 + 50, 67, 66, 69, 56, 52, 71, 83, 83, 89, 85, 71, 67, 74, 71, 64, 32.56577 + 72, 91, 94, 97, 81, 56, 47, 52, 78, 255, 255, 255, 255, 255, 255, 255, 32.56578 + 255, 255, 255, 207, 114, 121, 117, 107, 84, 84, 81, 62, 78, 99, 98, 98, 32.56579 + 99, 100, 101, 102, 101, 103, 97, 93, 92, 96, 98, 95, 90, 90, 103, 114, 32.56580 + 113, 109, 110, 114, 118, 116, 108, 101, 97, 100, 103, 105, 107, 109, 101, 100, 32.56581 + 110, 118, 118, 111, 107, 101, 104, 112, 115, 103, 83, 70, 69, 62, 61, 62, 32.56582 + 69, 73, 76, 80, 86, 83, 69, 75, 97, 100, 110, 171, 248, 237, 71, 92, 32.56583 + 91, 70, 82, 104, 78, 67, 70, 65, 75, 80, 75, 74, 63, 38, 27, 19, 32.56584 + 22, 38, 55, 64, 67, 87, 91, 71, 61, 78, 83, 76, 84, 83, 65, 62, 32.56585 + 76, 79, 70, 75, 92, 95, 99, 83, 57, 45, 47, 70, 255, 255, 255, 255, 32.56586 + 255, 255, 255, 255, 255, 255, 255, 101, 110, 105, 109, 93, 81, 78, 66, 75, 32.56587 + 96, 95, 94, 94, 93, 95, 98, 98, 99, 92, 85, 84, 86, 85, 80, 74, 32.56588 + 74, 86, 96, 99, 101, 107, 113, 115, 114, 110, 104, 100, 101, 105, 108, 110, 32.56589 + 114, 107, 104, 109, 114, 113, 108, 105, 100, 101, 102, 99, 91, 80, 67, 59, 32.56590 + 60, 58, 59, 65, 67, 70, 75, 82, 100, 92, 93, 95, 82, 89, 150, 226, 32.56591 + 246, 90, 98, 81, 76, 88, 108, 87, 81, 70, 70, 68, 72, 72, 51, 41, 32.56592 + 30, 26, 26, 40, 59, 68, 64, 55, 86, 102, 89, 77, 91, 87, 76, 87, 32.56593 + 84, 68, 68, 88, 89, 73, 72, 89, 98, 95, 74, 53, 51, 60, 79, 255, 32.56594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 93, 89, 104, 94, 76, 32.56595 + 73, 66, 69, 93, 91, 89, 87, 87, 91, 92, 95, 96, 88, 79, 74, 74, 32.56596 + 70, 63, 56, 62, 70, 77, 84, 92, 102, 108, 108, 109, 106, 102, 99, 98, 32.56597 + 100, 104, 107, 118, 112, 107, 108, 111, 110, 107, 105, 106, 103, 97, 89, 85, 32.56598 + 83, 72, 59, 83, 79, 76, 79, 80, 80, 84, 89, 94, 97, 96, 92, 96, 32.56599 + 104, 103, 95, 82, 89, 106, 88, 106, 76, 113, 116, 94, 73, 77, 63, 64, 32.56600 + 66, 30, 20, 25, 32, 46, 60, 71, 73, 69, 65, 52, 84, 84, 80, 95, 32.56601 + 91, 81, 98, 86, 73, 78, 99, 95, 72, 68, 86, 111, 99, 71, 55, 66, 32.56602 + 81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 101, 100, 32.56603 + 93, 111, 52, 53, 76, 47, 71, 105, 88, 82, 78, 90, 73, 93, 82, 87, 32.56604 + 85, 72, 70, 76, 75, 66, 74, 58, 62, 86, 83, 72, 93, 95, 109, 85, 32.56605 + 109, 90, 93, 98, 114, 101, 105, 112, 108, 103, 106, 101, 93, 96, 91, 82, 32.56606 + 74, 75, 73, 68, 60, 59, 53, 71, 51, 60, 77, 89, 86, 37, 53, 62, 32.56607 + 88, 101, 79, 105, 89, 90, 82, 86, 92, 101, 111, 111, 95, 78, 53, 80, 32.56608 + 50, 39, 43, 56, 26, 29, 45, 55, 67, 72, 75, 72, 64, 53, 62, 53, 32.56609 + 67, 82, 96, 100, 75, 67, 59, 67, 83, 95, 87, 73, 73, 84, 99, 99, 32.56610 + 67, 42, 83, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56611 + 255, 98, 96, 94, 64, 35, 30, 59, 95, 59, 78, 69, 79, 84, 94, 70, 32.56612 + 70, 69, 78, 85, 87, 88, 89, 84, 77, 68, 86, 86, 97, 79, 88, 79, 32.56613 + 92, 23, 77, 75, 99, 93, 87, 104, 116, 115, 125, 118, 104, 97, 87, 73, 32.56614 + 70, 79, 76, 75, 75, 71, 62, 57, 57, 72, 52, 75, 87, 77, 86, 88, 32.56615 + 231, 241, 45, 56, 68, 82, 95, 76, 94, 87, 81, 82, 92, 98, 99, 101, 32.56616 + 107, 95, 102, 67, 28, 41, 50, 50, 57, 59, 63, 65, 66, 69, 73, 70, 32.56617 + 64, 58, 54, 73, 79, 83, 83, 65, 68, 72, 82, 90, 92, 85, 77, 74, 32.56618 + 75, 97, 95, 51, 42, 87, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56619 + 255, 255, 255, 255, 91, 90, 92, 42, 74, 70, 49, 76, 51, 58, 59, 78, 32.56620 + 83, 95, 82, 79, 86, 79, 74, 71, 67, 62, 63, 66, 69, 76, 69, 93, 32.56621 + 108, 167, 125, 132, 243, 222, 35, 43, 73, 103, 102, 91, 108, 123, 119, 103, 32.56622 + 101, 98, 86, 81, 70, 69, 68, 67, 61, 54, 53, 60, 60, 78, 104, 53, 32.56623 + 51, 49, 134, 73, 52, 74, 69, 49, 68, 54, 78, 84, 99, 86, 82, 88, 32.56624 + 84, 77, 87, 107, 64, 74, 63, 24, 51, 52, 66, 67, 69, 68, 65, 64, 32.56625 + 69, 74, 71, 65, 56, 60, 81, 80, 70, 68, 60, 75, 68, 75, 81, 81, 32.56626 + 80, 80, 76, 70, 98, 95, 39, 49, 97, 255, 255, 255, 255, 255, 255, 255, 32.56627 + 255, 255, 255, 255, 255, 255, 255, 100, 89, 57, 17, 69, 93, 66, 59, 50, 32.56628 + 58, 76, 93, 87, 88, 89, 87, 83, 70, 60, 62, 55, 44, 44, 53, 71, 32.56629 + 52, 70, 87, 76, 124, 106, 137, 151, 177, 56, 73, 68, 85, 101, 117, 106, 32.56630 + 124, 121, 108, 107, 102, 80, 63, 71, 65, 59, 57, 55, 53, 57, 65, 83, 32.56631 + 101, 88, 52, 67, 64, 201, 19, 51, 73, 126, 104, 35, 62, 56, 68, 92, 32.56632 + 88, 86, 86, 80, 73, 76, 87, 46, 70, 79, 60, 75, 76, 77, 71, 64, 32.56633 + 64, 65, 67, 73, 75, 64, 52, 63, 67, 86, 79, 66, 63, 62, 81, 67, 32.56634 + 68, 72, 81, 85, 82, 74, 67, 99, 100, 44, 68, 109, 255, 255, 255, 255, 32.56635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 104, 78, 94, 85, 74, 32.56636 + 59, 43, 82, 87, 104, 106, 95, 81, 74, 60, 44, 45, 61, 83, 84, 64, 32.56637 + 48, 48, 99, 17, 45, 73, 61, 76, 72, 86, 102, 104, 65, 69, 48, 65, 32.56638 + 78, 81, 83, 113, 120, 103, 91, 85, 83, 87, 76, 68, 63, 66, 70, 69, 32.56639 + 68, 70, 108, 118, 121, 80, 33, 58, 71, 49, 67, 45, 64, 76, 51, 77, 32.56640 + 64, 78, 76, 84, 85, 81, 83, 91, 90, 84, 74, 101, 100, 89, 71, 79, 32.56641 + 69, 66, 63, 64, 65, 68, 73, 73, 60, 47, 63, 62, 76, 71, 63, 63, 32.56642 + 62, 79, 88, 79, 81, 94, 99, 87, 72, 68, 87, 96, 57, 87, 162, 255, 32.56643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 95, 58, 32.56644 + 102, 63, 46, 92, 130, 151, 137, 118, 88, 88, 76, 65, 46, 40, 47, 68, 32.56645 + 90, 90, 66, 44, 37, 101, 0, 14, 68, 90, 98, 83, 64, 85, 77, 109, 32.56646 + 93, 48, 56, 70, 75, 86, 89, 101, 144, 193, 180, 104, 40, 77, 73, 75, 32.56647 + 84, 90, 86, 77, 72, 91, 76, 144, 103, 55, 83, 56, 77, 61, 114, 90, 32.56648 + 78, 110, 72, 82, 66, 84, 92, 88, 80, 87, 105, 106, 92, 70, 102, 102, 32.56649 + 100, 66, 78, 67, 66, 70, 69, 66, 65, 67, 68, 63, 54, 55, 48, 59, 32.56650 + 59, 61, 68, 63, 74, 97, 89, 90, 100, 106, 97, 82, 73, 67, 78, 66, 32.56651 + 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56652 + 71, 40, 45, 87, 75, 58, 99, 157, 168, 158, 121, 67, 78, 73, 72, 59, 32.56653 + 73, 71, 76, 81, 77, 63, 52, 49, 64, 49, 56, 88, 82, 79, 67, 74, 32.56654 + 99, 74, 87, 65, 30, 54, 71, 81, 84, 95, 96, 91, 83, 65, 59, 72, 32.56655 + 74, 73, 77, 86, 88, 83, 77, 74, 112, 49, 90, 82, 83, 63, 87, 83, 32.56656 + 113, 66, 112, 99, 92, 92, 89, 89, 98, 98, 93, 88, 93, 104, 106, 101, 32.56657 + 70, 97, 114, 103, 78, 82, 85, 79, 72, 71, 67, 62, 62, 65, 64, 58, 32.56658 + 49, 40, 51, 57, 67, 77, 71, 79, 98, 103, 99, 92, 97, 106, 94, 71, 32.56659 + 55, 62, 73, 95, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56660 + 255, 255, 255, 98, 85, 110, 81, 66, 43, 67, 132, 120, 140, 123, 69, 85, 32.56661 + 76, 72, 66, 84, 84, 84, 86, 87, 85, 84, 85, 63, 112, 84, 98, 90, 32.56662 + 100, 72, 87, 89, 87, 85, 82, 55, 79, 88, 99, 106, 102, 93, 89, 87, 32.56663 + 73, 72, 90, 70, 69, 69, 72, 70, 68, 71, 77, 62, 95, 92, 64, 88, 32.56664 + 111, 89, 108, 89, 132, 100, 103, 93, 90, 94, 105, 97, 94, 93, 97, 100, 32.56665 + 101, 103, 107, 90, 102, 119, 82, 63, 55, 79, 71, 64, 68, 68, 64, 63, 32.56666 + 63, 60, 55, 48, 40, 53, 61, 74, 88, 81, 88, 110, 126, 117, 87, 88, 32.56667 + 108, 97, 61, 56, 55, 78, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56668 + 255, 255, 255, 255, 255, 255, 200, 103, 89, 83, 84, 32, 81, 146, 163, 119, 32.56669 + 96, 77, 108, 87, 68, 81, 85, 87, 88, 86, 85, 86, 91, 95, 92, 91, 32.56670 + 93, 99, 101, 96, 85, 76, 78, 83, 67, 71, 64, 79, 82, 104, 100, 100, 32.56671 + 98, 89, 78, 70, 71, 76, 69, 80, 87, 78, 59, 50, 55, 65, 74, 74, 32.56672 + 75, 77, 81, 89, 96, 100, 105, 107, 104, 96, 91, 94, 98, 99, 97, 106, 32.56673 + 107, 90, 82, 105, 118, 104, 98, 103, 130, 97, 62, 74, 72, 69, 66, 70, 32.56674 + 69, 64, 61, 58, 52, 47, 46, 43, 74, 58, 86, 77, 101, 79, 75, 121, 32.56675 + 109, 91, 94, 101, 100, 63, 52, 67, 87, 255, 255, 255, 255, 255, 255, 255, 32.56676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 86, 81, 76, 39, 71, 32.56677 + 134, 189, 138, 114, 89, 104, 86, 76, 86, 84, 85, 87, 87, 88, 88, 90, 32.56678 + 92, 100, 94, 85, 80, 78, 77, 74, 74, 75, 75, 74, 77, 74, 81, 87, 32.56679 + 92, 96, 97, 97, 91, 81, 73, 69, 71, 60, 67, 73, 70, 64, 61, 64, 32.56680 + 69, 67, 67, 68, 71, 77, 85, 92, 96, 88, 91, 90, 86, 85, 92, 99, 32.56681 + 101, 97, 101, 102, 89, 82, 100, 113, 103, 74, 91, 119, 94, 68, 75, 66, 32.56682 + 64, 66, 69, 68, 63, 60, 59, 55, 51, 41, 40, 72, 60, 86, 82, 105, 32.56683 + 85, 79, 116, 104, 90, 94, 99, 97, 67, 48, 65, 143, 255, 255, 255, 255, 32.56684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 82, 80, 32.56685 + 68, 53, 53, 109, 161, 116, 107, 94, 96, 90, 91, 97, 87, 86, 87, 88, 32.56686 + 90, 91, 91, 89, 81, 81, 81, 79, 78, 76, 74, 73, 78, 70, 75, 80, 32.56687 + 69, 78, 89, 83, 86, 87, 87, 85, 80, 71, 63, 57, 62, 65, 69, 73, 32.56688 + 79, 83, 83, 82, 70, 70, 70, 72, 76, 82, 86, 90, 84, 88, 89, 87, 32.56689 + 89, 99, 106, 108, 100, 99, 99, 91, 85, 96, 107, 100, 81, 101, 108, 79, 32.56690 + 66, 71, 66, 75, 70, 71, 69, 61, 58, 57, 55, 51, 43, 44, 73, 64, 32.56691 + 87, 85, 105, 88, 82, 104, 94, 87, 98, 101, 94, 71, 45, 67, 255, 255, 32.56692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56693 + 197, 79, 80, 66, 69, 38, 73, 105, 76, 90, 96, 93, 98, 101, 102, 93, 32.56694 + 89, 86, 87, 90, 91, 90, 87, 73, 77, 82, 86, 85, 85, 85, 86, 89, 32.56695 + 78, 71, 81, 45, 73, 88, 86, 80, 81, 80, 78, 76, 71, 60, 50, 69, 32.56696 + 71, 76, 84, 92, 98, 98, 97, 88, 86, 84, 83, 82, 83, 84, 86, 89, 32.56697 + 95, 99, 100, 103, 109, 111, 110, 108, 102, 102, 97, 90, 96, 104, 99, 99, 32.56698 + 120, 111, 81, 73, 73, 67, 78, 76, 75, 69, 58, 52, 52, 50, 47, 52, 32.56699 + 54, 77, 71, 86, 85, 99, 82, 77, 85, 75, 77, 95, 96, 79, 59, 41, 32.56700 + 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56701 + 255, 255, 255, 255, 78, 81, 69, 78, 35, 42, 86, 72, 93, 104, 93, 102, 32.56702 + 98, 97, 97, 91, 85, 83, 84, 85, 84, 84, 87, 86, 82, 80, 80, 85, 32.56703 + 95, 103, 95, 94, 75, 90, 29, 74, 82, 91, 84, 84, 81, 77, 77, 76, 32.56704 + 67, 56, 66, 70, 79, 88, 95, 100, 102, 104, 101, 99, 97, 94, 91, 89, 32.56705 + 87, 87, 91, 99, 106, 109, 113, 116, 112, 106, 116, 110, 108, 104, 97, 101, 32.56706 + 107, 99, 93, 120, 113, 97, 92, 81, 69, 68, 74, 73, 66, 55, 49, 48, 32.56707 + 47, 44, 56, 60, 78, 76, 84, 86, 94, 78, 79, 74, 67, 68, 87, 86, 32.56708 + 55, 35, 39, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56709 + 255, 255, 255, 255, 255, 255, 255, 81, 80, 75, 79, 49, 34, 84, 82, 94, 32.56710 + 103, 90, 102, 92, 99, 97, 92, 87, 85, 83, 83, 83, 84, 81, 83, 85, 32.56711 + 88, 90, 96, 101, 103, 96, 104, 82, 94, 40, 79, 80, 90, 82, 84, 81, 32.56712 + 74, 73, 76, 69, 59, 60, 68, 78, 89, 97, 104, 108, 110, 104, 103, 103, 32.56713 + 101, 99, 98, 96, 95, 95, 104, 112, 117, 123, 124, 118, 110, 118, 115, 114, 32.56714 + 107, 100, 108, 112, 99, 91, 109, 97, 90, 86, 78, 81, 74, 69, 68, 62, 32.56715 + 52, 48, 49, 50, 47, 52, 59, 75, 78, 81, 89, 93, 79, 94, 88, 82, 32.56716 + 72, 81, 78, 39, 25, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 78, 78, 73, 75, 49, 32.56718 + 65, 77, 84, 92, 87, 105, 87, 103, 97, 96, 98, 97, 93, 91, 89, 90, 32.56719 + 80, 85, 95, 105, 109, 109, 103, 98, 100, 103, 86, 75, 59, 78, 82, 86, 32.56720 + 76, 82, 81, 75, 72, 74, 69, 58, 60, 66, 77, 89, 99, 107, 109, 109, 32.56721 + 106, 106, 107, 107, 106, 106, 104, 103, 105, 112, 118, 123, 127, 130, 125, 117, 32.56722 + 112, 115, 115, 105, 101, 115, 117, 98, 105, 107, 86, 79, 69, 69, 90, 80, 32.56723 + 67, 68, 61, 52, 49, 49, 51, 48, 49, 57, 72, 79, 79, 90, 93, 80, 32.56724 + 100, 99, 100, 74, 68, 65, 33, 28, 44, 255, 255, 255, 255, 255, 255, 255, 32.56725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 90, 77, 79, 32.56726 + 68, 96, 67, 48, 72, 77, 88, 89, 107, 81, 100, 98, 103, 109, 110, 107, 32.56727 + 103, 100, 100, 111, 108, 106, 107, 110, 110, 104, 100, 104, 97, 84, 49, 69, 32.56728 + 71, 88, 85, 76, 85, 86, 80, 76, 77, 71, 60, 61, 65, 72, 85, 97, 32.56729 + 104, 105, 101, 111, 111, 112, 113, 112, 110, 108, 107, 112, 115, 118, 120, 124, 32.56730 + 126, 121, 115, 106, 113, 115, 102, 100, 119, 122, 98, 112, 109, 93, 92, 73, 32.56731 + 69, 89, 66, 71, 72, 65, 56, 51, 50, 49, 46, 49, 58, 71, 78, 77, 32.56732 + 88, 89, 77, 89, 97, 103, 67, 52, 51, 25, 30, 110, 255, 255, 255, 255, 32.56733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56734 + 198, 86, 84, 82, 86, 92, 75, 57, 75, 109, 80, 100, 107, 86, 110, 108, 32.56735 + 108, 108, 110, 112, 114, 116, 121, 124, 125, 121, 112, 104, 100, 99, 99, 80, 32.56736 + 65, 63, 65, 68, 78, 91, 82, 85, 82, 73, 69, 71, 70, 66, 66, 59, 32.56737 + 69, 70, 78, 93, 97, 114, 122, 121, 118, 115, 113, 115, 120, 125, 122, 126, 32.56738 + 130, 133, 132, 129, 127, 127, 139, 109, 98, 108, 114, 115, 110, 100, 101, 103, 32.56739 + 102, 97, 92, 85, 73, 64, 78, 73, 63, 55, 47, 45, 51, 58, 60, 61, 32.56740 + 75, 83, 78, 81, 94, 101, 95, 100, 93, 78, 44, 47, 21, 24, 255, 255, 32.56741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56742 + 255, 255, 255, 255, 83, 82, 79, 82, 88, 111, 83, 56, 75, 75, 92, 95, 32.56743 + 112, 112, 111, 113, 113, 115, 117, 118, 119, 119, 124, 130, 133, 128, 116, 101, 32.56744 + 91, 77, 82, 80, 74, 74, 85, 90, 87, 91, 90, 85, 78, 71, 69, 66, 32.56745 + 64, 73, 69, 82, 82, 85, 95, 97, 112, 115, 120, 126, 133, 133, 132, 127, 32.56746 + 125, 124, 122, 123, 131, 139, 140, 129, 121, 122, 108, 107, 111, 101, 98, 104, 32.56747 + 109, 92, 91, 90, 94, 94, 91, 85, 83, 78, 73, 64, 54, 46, 46, 50, 32.56748 + 56, 60, 59, 71, 78, 75, 82, 97, 102, 92, 97, 94, 67, 48, 65, 56, 32.56749 + 58, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56750 + 255, 255, 255, 255, 255, 255, 255, 82, 81, 78, 80, 85, 99, 137, 102, 69, 32.56751 + 68, 92, 86, 109, 110, 111, 115, 118, 121, 124, 125, 125, 134, 127, 119, 114, 32.56752 + 113, 111, 107, 102, 59, 81, 86, 73, 74, 94, 98, 83, 93, 88, 85, 82, 32.56753 + 74, 67, 64, 67, 68, 69, 87, 88, 88, 93, 91, 108, 112, 110, 111, 115, 32.56754 + 121, 128, 131, 134, 137, 134, 130, 131, 133, 132, 125, 120, 121, 111, 111, 111, 32.56755 + 97, 92, 102, 107, 101, 92, 89, 95, 96, 90, 86, 89, 76, 72, 62, 50, 32.56756 + 44, 44, 49, 53, 61, 59, 67, 71, 70, 82, 97, 100, 94, 94, 91, 49, 32.56757 + 49, 76, 89, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 84, 81, 82, 85, 84, 32.56759 + 149, 133, 94, 80, 98, 89, 106, 103, 107, 111, 117, 123, 126, 127, 128, 124, 32.56760 + 125, 127, 127, 121, 107, 90, 78, 69, 82, 78, 64, 69, 93, 100, 88, 89, 32.56761 + 84, 83, 83, 75, 66, 64, 70, 57, 63, 87, 90, 90, 93, 90, 106, 175, 32.56762 + 164, 148, 135, 128, 126, 125, 125, 132, 135, 133, 122, 111, 110, 121, 134, 139, 32.56763 + 119, 111, 111, 106, 104, 102, 94, 109, 97, 92, 99, 99, 89, 83, 87, 74, 32.56764 + 72, 60, 48, 42, 43, 48, 49, 64, 61, 64, 66, 66, 84, 99, 96, 105, 32.56765 + 89, 84, 39, 51, 70, 94, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 87, 84, 32.56767 + 84, 86, 101, 101, 96, 107, 90, 93, 92, 113, 115, 117, 122, 126, 130, 132, 32.56768 + 134, 134, 125, 126, 125, 119, 106, 94, 85, 81, 95, 86, 73, 68, 79, 95, 32.56769 + 101, 97, 92, 89, 89, 86, 77, 67, 65, 70, 54, 61, 87, 92, 90, 93, 32.56770 + 88, 103, 106, 105, 105, 106, 109, 111, 112, 112, 106, 113, 116, 110, 102, 106, 32.56771 + 122, 138, 139, 118, 108, 109, 108, 107, 101, 87, 95, 86, 85, 94, 99, 94, 32.56772 + 89, 89, 75, 72, 61, 46, 42, 45, 49, 48, 64, 63, 65, 66, 71, 95, 32.56773 + 108, 100, 111, 78, 72, 42, 55, 62, 83, 255, 255, 255, 255, 255, 255, 255, 32.56774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56775 + 255, 86, 83, 83, 83, 86, 78, 88, 107, 74, 80, 86, 91, 104, 105, 107, 32.56776 + 108, 110, 110, 109, 110, 113, 108, 97, 86, 80, 87, 102, 115, 103, 82, 69, 32.56777 + 76, 90, 96, 96, 96, 100, 103, 102, 91, 79, 71, 67, 65, 54, 58, 81, 32.56778 + 86, 84, 83, 75, 87, 109, 108, 102, 96, 90, 89, 91, 94, 103, 103, 105, 32.56779 + 110, 113, 118, 119, 119, 116, 108, 109, 107, 97, 96, 96, 89, 85, 81, 80, 32.56780 + 85, 93, 95, 89, 84, 76, 74, 61, 46, 42, 49, 51, 47, 59, 61, 64, 32.56781 + 66, 77, 106, 119, 104, 100, 65, 57, 47, 56, 62, 136, 255, 255, 255, 255, 32.56782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56783 + 255, 255, 255, 255, 255, 84, 83, 83, 63, 87, 100, 100, 69, 85, 85, 75, 32.56784 + 79, 79, 79, 80, 81, 81, 81, 81, 80, 85, 93, 99, 101, 100, 99, 98, 32.56785 + 92, 75, 66, 75, 88, 94, 94, 94, 101, 111, 111, 92, 78, 74, 70, 62, 32.56786 + 54, 55, 73, 76, 75, 74, 64, 73, 88, 89, 88, 86, 84, 89, 101, 111, 32.56787 + 105, 106, 107, 113, 116, 117, 111, 107, 101, 101, 107, 107, 93, 90, 92, 86, 32.56788 + 84, 85, 80, 77, 85, 96, 93, 80, 78, 76, 63, 47, 43, 51, 53, 47, 32.56789 + 53, 56, 61, 63, 77, 107, 115, 94, 76, 54, 43, 43, 47, 70, 255, 255, 32.56790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56791 + 255, 255, 255, 255, 255, 255, 255, 255, 199, 85, 84, 85, 83, 70, 88, 92, 32.56792 + 105, 92, 99, 98, 98, 98, 99, 102, 105, 106, 108, 106, 105, 104, 106, 107, 32.56793 + 102, 93, 86, 84, 75, 67, 70, 82, 94, 99, 99, 96, 112, 112, 89, 75, 32.56794 + 78, 75, 61, 59, 56, 72, 74, 75, 75, 64, 72, 66, 78, 91, 94, 89, 32.56795 + 83, 83, 86, 91, 99, 106, 106, 102, 101, 108, 115, 107, 102, 105, 105, 98, 32.56796 + 96, 91, 78, 79, 84, 78, 72, 83, 102, 104, 89, 78, 77, 64, 47, 43, 32.56797 + 53, 54, 49, 50, 55, 59, 58, 71, 100, 103, 78, 57, 47, 34, 37, 37, 32.56798 + 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 77, 75, 77, 32.56800 + 77, 106, 81, 81, 85, 98, 99, 101, 104, 105, 104, 104, 105, 107, 103, 108, 32.56801 + 109, 104, 95, 88, 87, 88, 72, 65, 64, 76, 90, 96, 96, 94, 90, 96, 32.56802 + 100, 93, 86, 82, 75, 69, 59, 64, 67, 71, 75, 78, 77, 74, 57, 64, 32.56803 + 76, 89, 96, 93, 83, 75, 73, 85, 98, 103, 100, 97, 98, 101, 105, 96, 32.56804 + 92, 98, 97, 87, 83, 87, 75, 77, 78, 80, 83, 87, 93, 97, 77, 73, 32.56805 + 63, 52, 45, 48, 50, 51, 47, 55, 64, 54, 83, 108, 61, 29, 19, 44, 32.56806 + 53, 25, 14, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 32.56808 + 81, 78, 78, 77, 103, 85, 86, 88, 99, 98, 98, 100, 101, 102, 103, 103, 32.56809 + 103, 106, 103, 99, 95, 91, 87, 83, 80, 76, 69, 69, 79, 90, 94, 93, 32.56810 + 91, 94, 98, 99, 91, 84, 79, 75, 70, 63, 66, 69, 73, 77, 80, 78, 32.56811 + 74, 61, 65, 75, 86, 94, 94, 90, 85, 79, 81, 85, 89, 93, 97, 101, 32.56812 + 104, 99, 95, 94, 95, 91, 85, 81, 81, 76, 67, 68, 79, 83, 81, 88, 32.56813 + 102, 81, 76, 66, 52, 45, 48, 50, 49, 52, 53, 61, 54, 71, 88, 52, 32.56814 + 32, 44, 46, 40, 28, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56816 + 255, 255, 255, 86, 81, 78, 77, 92, 86, 93, 87, 96, 96, 95, 95, 96, 32.56817 + 99, 100, 98, 96, 103, 94, 86, 84, 88, 89, 83, 76, 75, 69, 71, 80, 32.56818 + 91, 95, 96, 96, 102, 104, 101, 93, 85, 82, 78, 74, 72, 71, 72, 75, 32.56819 + 78, 78, 74, 69, 65, 67, 73, 82, 91, 95, 95, 94, 90, 81, 72, 71, 32.56820 + 80, 91, 98, 100, 91, 95, 96, 89, 84, 82, 79, 75, 81, 65, 66, 82, 32.56821 + 86, 77, 83, 101, 86, 81, 70, 54, 47, 48, 49, 47, 62, 54, 57, 51, 32.56822 + 49, 47, 26, 21, 41, 28, 16, 27, 57, 255, 255, 255, 255, 255, 255, 255, 32.56823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56824 + 255, 255, 255, 255, 255, 255, 199, 83, 79, 76, 75, 83, 94, 82, 87, 92, 32.56825 + 90, 90, 92, 95, 96, 92, 89, 90, 84, 79, 82, 88, 91, 86, 79, 71, 32.56826 + 66, 68, 76, 87, 95, 102, 107, 109, 108, 106, 100, 93, 87, 81, 78, 78, 32.56827 + 74, 74, 77, 76, 72, 66, 62, 67, 68, 73, 79, 86, 91, 93, 94, 98, 32.56828 + 85, 70, 65, 70, 79, 87, 90, 87, 96, 95, 85, 78, 80, 78, 72, 84, 32.56829 + 75, 76, 87, 91, 84, 84, 92, 93, 87, 74, 57, 48, 47, 48, 48, 65, 32.56830 + 52, 51, 49, 33, 18, 11, 14, 25, 22, 19, 43, 84, 255, 255, 255, 255, 32.56831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 78, 75, 56, 76, 90, 32.56833 + 75, 79, 87, 86, 87, 88, 90, 90, 86, 84, 80, 81, 82, 86, 88, 88, 32.56834 + 84, 80, 72, 66, 65, 71, 79, 89, 103, 113, 106, 104, 104, 102, 97, 88, 32.56835 + 80, 75, 74, 71, 71, 77, 75, 68, 63, 64, 71, 73, 78, 82, 85, 87, 32.56836 + 89, 90, 99, 91, 81, 73, 71, 76, 82, 88, 87, 94, 93, 84, 79, 81, 32.56837 + 77, 70, 76, 81, 87, 89, 93, 95, 90, 81, 98, 90, 76, 58, 49, 48, 32.56838 + 48, 47, 58, 46, 45, 48, 28, 14, 20, 20, 28, 46, 56, 74, 101, 255, 32.56839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 77, 76, 32.56841 + 40, 69, 89, 70, 77, 80, 82, 85, 86, 84, 81, 80, 80, 79, 82, 87, 32.56842 + 89, 86, 81, 78, 76, 75, 69, 66, 67, 71, 79, 93, 106, 96, 93, 94, 32.56843 + 96, 93, 83, 74, 70, 67, 66, 71, 78, 74, 66, 66, 72, 79, 82, 85, 32.56844 + 87, 86, 86, 87, 88, 93, 92, 90, 85, 81, 81, 86, 91, 91, 93, 89, 32.56845 + 86, 84, 84, 79, 72, 65, 78, 87, 89, 95, 101, 94, 77, 99, 91, 76, 32.56846 + 58, 48, 48, 50, 49, 57, 48, 42, 43, 23, 19, 34, 18, 28, 54, 76, 32.56847 + 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56849 + 255, 78, 77, 29, 66, 91, 73, 82, 74, 80, 84, 85, 79, 74, 75, 77, 32.56850 + 79, 81, 83, 83, 81, 77, 74, 72, 75, 70, 68, 67, 67, 70, 82, 94, 32.56851 + 88, 82, 82, 85, 85, 77, 70, 68, 68, 70, 78, 84, 76, 65, 68, 80, 32.56852 + 84, 87, 88, 86, 84, 84, 87, 89, 89, 91, 93, 92, 90, 88, 88, 90, 32.56853 + 98, 91, 86, 90, 92, 87, 80, 76, 67, 74, 83, 91, 99, 100, 91, 80, 32.56854 + 99, 90, 75, 59, 48, 49, 52, 52, 57, 52, 39, 38, 26, 41, 65, 31, 32.56855 + 25, 39, 65, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56857 + 255, 255, 255, 255, 196, 78, 23, 65, 94, 77, 90, 70, 79, 86, 84, 77, 32.56858 + 72, 74, 78, 78, 77, 76, 76, 78, 78, 75, 72, 70, 68, 67, 68, 65, 32.56859 + 67, 75, 87, 86, 79, 76, 80, 80, 74, 69, 69, 74, 78, 86, 90, 78, 32.56860 + 65, 67, 82, 87, 88, 87, 84, 81, 82, 87, 91, 87, 89, 90, 93, 91, 32.56861 + 91, 86, 85, 103, 89, 84, 92, 97, 90, 81, 79, 78, 75, 81, 96, 103, 32.56862 + 95, 86, 85, 98, 90, 75, 57, 48, 50, 51, 53, 51, 50, 39, 40, 40, 32.56863 + 75, 108, 64, 34, 29, 51, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56865 + 255, 255, 255, 255, 255, 255, 255, 255, 68, 31, 71, 89, 92, 89, 81, 57, 32.56866 + 85, 86, 71, 79, 81, 96, 81, 84, 77, 74, 81, 78, 71, 74, 78, 73, 32.56867 + 68, 67, 66, 67, 64, 63, 69, 74, 78, 79, 74, 70, 68, 68, 96, 95, 32.56868 + 93, 88, 82, 80, 82, 84, 80, 75, 74, 72, 80, 84, 88, 83, 85, 101, 32.56869 + 91, 93, 102, 90, 86, 95, 91, 94, 86, 80, 89, 90, 82, 80, 66, 75, 32.56870 + 93, 99, 91, 92, 93, 84, 82, 87, 81, 62, 50, 51, 52, 48, 55, 43, 32.56871 + 38, 41, 81, 129, 121, 106, 100, 22, 97, 255, 255, 255, 255, 255, 255, 255, 32.56872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 70, 86, 91, 32.56874 + 88, 94, 74, 86, 88, 74, 75, 83, 90, 84, 88, 81, 77, 81, 76, 70, 32.56875 + 74, 63, 66, 67, 67, 66, 65, 66, 69, 71, 77, 81, 82, 78, 75, 74, 32.56876 + 74, 83, 82, 83, 86, 85, 81, 76, 75, 83, 83, 90, 88, 78, 74, 74, 32.56877 + 72, 78, 92, 87, 95, 112, 105, 90, 86, 88, 97, 95, 90, 92, 89, 84, 32.56878 + 83, 70, 73, 90, 99, 92, 89, 88, 80, 78, 82, 75, 57, 45, 47, 49, 32.56879 + 46, 52, 46, 47, 51, 112, 150, 131, 109, 96, 115, 255, 255, 255, 255, 255, 32.56880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 32.56882 + 72, 85, 90, 88, 96, 86, 79, 87, 79, 76, 94, 94, 84, 89, 82, 76, 32.56883 + 77, 71, 66, 72, 65, 73, 79, 80, 77, 76, 80, 85, 76, 81, 86, 88, 32.56884 + 88, 87, 85, 85, 75, 73, 79, 93, 98, 91, 84, 82, 73, 73, 80, 88, 32.56885 + 78, 81, 83, 81, 83, 92, 87, 82, 94, 103, 97, 97, 83, 94, 100, 96, 32.56886 + 90, 87, 86, 85, 73, 70, 85, 102, 98, 90, 88, 83, 77, 79, 70, 53, 32.56887 + 43, 45, 48, 45, 47, 44, 48, 46, 133, 159, 136, 112, 120, 140, 255, 255, 32.56888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56890 + 255, 255, 186, 77, 83, 87, 88, 96, 96, 76, 86, 84, 77, 101, 97, 83, 32.56891 + 87, 79, 71, 71, 65, 62, 69, 62, 68, 73, 73, 68, 68, 72, 77, 82, 32.56892 + 84, 88, 92, 93, 92, 91, 90, 87, 86, 90, 99, 98, 84, 73, 72, 103, 32.56893 + 93, 81, 89, 78, 85, 76, 72, 81, 89, 95, 80, 80, 95, 97, 105, 81, 32.56894 + 86, 95, 94, 87, 88, 90, 84, 75, 67, 83, 105, 105, 95, 92, 90, 78, 32.56895 + 77, 69, 55, 47, 48, 49, 49, 46, 44, 47, 33, 135, 155, 139, 121, 175, 32.56896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56898 + 255, 255, 255, 255, 255, 255, 78, 78, 80, 83, 103, 107, 84, 89, 89, 77, 32.56899 + 92, 89, 85, 89, 81, 73, 73, 67, 62, 68, 68, 69, 70, 70, 71, 74, 32.56900 + 77, 80, 85, 85, 88, 92, 94, 94, 92, 90, 94, 97, 103, 108, 106, 99, 32.56901 + 94, 95, 92, 96, 77, 88, 79, 86, 70, 83, 71, 71, 93, 90, 93, 109, 32.56902 + 97, 94, 87, 81, 87, 90, 86, 94, 97, 82, 77, 69, 84, 106, 105, 95, 32.56903 + 90, 88, 76, 74, 65, 55, 49, 49, 50, 51, 46, 48, 53, 36, 133, 153, 32.56904 + 143, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 71, 74, 79, 93, 102, 89, 32.56907 + 89, 93, 85, 88, 93, 88, 93, 87, 83, 85, 76, 63, 61, 68, 70, 72, 32.56908 + 75, 80, 85, 90, 91, 87, 86, 89, 94, 97, 98, 97, 94, 98, 103, 102, 32.56909 + 96, 95, 98, 94, 88, 78, 104, 77, 82, 69, 63, 38, 73, 77, 51, 70, 32.56910 + 77, 93, 120, 103, 97, 97, 81, 86, 93, 90, 102, 104, 80, 77, 74, 89, 32.56911 + 104, 99, 88, 83, 76, 71, 68, 61, 54, 49, 48, 47, 49, 40, 46, 57, 32.56912 + 49, 128, 155, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 73, 79, 32.56915 + 80, 91, 97, 90, 98, 96, 84, 99, 89, 97, 96, 97, 99, 84, 59, 47, 32.56916 + 42, 51, 61, 66, 68, 70, 76, 79, 77, 76, 79, 85, 92, 94, 93, 90, 32.56917 + 95, 97, 84, 67, 67, 77, 66, 43, 69, 105, 60, 73, 92, 102, 72, 130, 32.56918 + 74, 34, 53, 61, 73, 104, 97, 106, 103, 84, 92, 101, 94, 104, 104, 75, 32.56919 + 74, 78, 95, 103, 93, 86, 81, 70, 66, 63, 57, 54, 50, 47, 46, 47, 32.56920 + 40, 41, 51, 58, 118, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56923 + 74, 77, 84, 81, 92, 109, 93, 98, 98, 72, 93, 88, 97, 100, 105, 108, 32.56924 + 87, 52, 34, 29, 45, 61, 67, 64, 62, 69, 75, 58, 57, 62, 70, 77, 32.56925 + 82, 80, 78, 63, 71, 65, 61, 84, 118, 115, 86, 200, 209, 113, 99, 116, 32.56926 + 113, 54, 103, 49, 19, 57, 67, 62, 80, 77, 101, 103, 86, 98, 107, 95, 32.56927 + 102, 101, 69, 71, 81, 100, 104, 93, 89, 85, 72, 66, 63, 58, 57, 53, 32.56928 + 49, 46, 47, 49, 42, 47, 61, 110, 196, 255, 255, 255, 255, 255, 255, 255, 32.56929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56931 + 255, 255, 255, 195, 73, 78, 72, 86, 100, 103, 95, 87, 86, 89, 100, 89, 32.56932 + 93, 107, 101, 73, 55, 58, 53, 49, 56, 68, 75, 85, 90, 82, 102, 91, 32.56933 + 74, 86, 73, 92, 75, 59, 83, 114, 124, 98, 74, 126, 134, 128, 124, 128, 32.56934 + 98, 87, 117, 114, 73, 55, 56, 68, 75, 75, 74, 80, 86, 90, 84, 96, 32.56935 + 104, 102, 98, 93, 84, 75, 72, 86, 96, 92, 87, 82, 73, 62, 64, 61, 32.56936 + 58, 55, 53, 51, 46, 44, 46, 41, 46, 57, 103, 255, 255, 255, 255, 255, 32.56937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56939 + 255, 255, 255, 255, 255, 255, 255, 74, 78, 75, 84, 96, 101, 98, 92, 90, 32.56940 + 89, 95, 86, 87, 96, 92, 74, 64, 66, 72, 47, 26, 29, 60, 101, 111, 32.56941 + 89, 108, 101, 97, 118, 110, 120, 101, 84, 114, 122, 115, 93, 83, 135, 125, 32.56942 + 101, 115, 128, 107, 85, 94, 89, 69, 72, 76, 85, 90, 88, 84, 87, 90, 32.56943 + 92, 88, 98, 105, 103, 97, 91, 81, 73, 75, 92, 104, 100, 91, 83, 73, 32.56944 + 62, 63, 60, 56, 54, 52, 50, 47, 46, 46, 42, 47, 58, 158, 255, 255, 32.56945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 79, 77, 81, 88, 98, 32.56948 + 101, 99, 93, 87, 90, 84, 82, 85, 85, 82, 78, 80, 71, 60, 42, 24, 32.56949 + 35, 81, 110, 105, 110, 97, 95, 116, 111, 111, 95, 85, 136, 135, 122, 103, 32.56950 + 96, 142, 124, 95, 103, 114, 92, 66, 64, 61, 56, 69, 85, 93, 98, 94, 32.56951 + 89, 88, 90, 90, 93, 101, 107, 103, 94, 86, 78, 71, 74, 93, 107, 103, 32.56952 + 90, 81, 72, 64, 63, 59, 53, 50, 49, 50, 49, 50, 48, 43, 50, 59, 32.56953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 81, 78, 32.56956 + 76, 81, 89, 98, 100, 93, 86, 86, 85, 83, 81, 83, 90, 91, 88, 67, 32.56957 + 73, 72, 48, 28, 46, 77, 90, 116, 105, 114, 140, 139, 128, 113, 102, 130, 32.56958 + 136, 135, 115, 90, 121, 106, 92, 64, 66, 54, 46, 62, 75, 78, 86, 84, 32.56959 + 91, 95, 93, 89, 89, 92, 91, 97, 103, 106, 101, 90, 80, 74, 71, 73, 32.56960 + 92, 104, 96, 82, 74, 69, 64, 61, 56, 50, 47, 47, 50, 51, 54, 49, 32.56961 + 45, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56964 + 255, 80, 78, 74, 73, 80, 91, 95, 92, 84, 82, 84, 85, 83, 86, 93, 32.56965 + 94, 88, 83, 72, 67, 63, 48, 44, 50, 51, 68, 65, 91, 124, 133, 119, 32.56966 + 106, 93, 96, 108, 115, 98, 63, 81, 69, 65, 59, 59, 55, 57, 72, 83, 32.56967 + 84, 86, 88, 94, 97, 94, 91, 93, 96, 97, 99, 102, 103, 97, 86, 75, 32.56968 + 72, 74, 82, 96, 102, 88, 72, 66, 64, 62, 58, 55, 50, 48, 49, 52, 32.56969 + 53, 56, 52, 49, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56972 + 255, 255, 255, 255, 255, 79, 75, 71, 75, 82, 87, 89, 87, 77, 80, 83, 32.56973 + 86, 90, 93, 90, 85, 93, 72, 69, 76, 70, 60, 57, 54, 34, 24, 41, 32.56974 + 53, 65, 60, 67, 61, 59, 62, 69, 66, 44, 66, 54, 51, 64, 71, 78, 32.56975 + 79, 74, 74, 78, 82, 93, 97, 96, 92, 90, 93, 96, 95, 99, 99, 97, 32.56976 + 91, 79, 70, 72, 79, 96, 105, 102, 82, 66, 60, 60, 58, 53, 51, 50, 32.56977 + 50, 53, 55, 56, 57, 55, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56980 + 255, 255, 255, 255, 255, 255, 255, 255, 197, 78, 74, 71, 74, 80, 87, 90, 32.56981 + 78, 77, 81, 90, 94, 92, 89, 88, 87, 80, 84, 86, 74, 72, 76, 76, 32.56982 + 68, 50, 51, 36, 42, 40, 60, 55, 42, 36, 40, 48, 39, 69, 59, 61, 32.56983 + 51, 60, 76, 83, 79, 82, 94, 100, 95, 97, 93, 87, 86, 91, 95, 95, 32.56984 + 97, 95, 91, 85, 73, 66, 74, 86, 100, 105, 99, 79, 64, 60, 59, 56, 32.56985 + 49, 50, 51, 54, 58, 58, 57, 56, 58, 255, 255, 255, 255, 255, 255, 255, 32.56986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 76, 71, 69, 32.56989 + 76, 87, 94, 81, 78, 84, 96, 100, 96, 91, 93, 85, 82, 83, 80, 76, 32.56990 + 84, 85, 70, 69, 58, 65, 45, 47, 37, 49, 33, 50, 41, 43, 48, 37, 32.56991 + 65, 60, 67, 80, 76, 83, 88, 82, 83, 88, 85, 97, 97, 93, 88, 89, 32.56992 + 95, 102, 103, 95, 91, 87, 81, 70, 64, 75, 90, 94, 99, 92, 75, 64, 32.56993 + 63, 61, 58, 47, 49, 52, 57, 60, 60, 57, 55, 59, 255, 255, 255, 255, 32.56994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.56997 + 60, 64, 85, 73, 67, 99, 87, 71, 83, 97, 91, 94, 102, 95, 96, 87, 32.56998 + 78, 77, 83, 88, 86, 81, 81, 74, 68, 67, 71, 75, 76, 76, 64, 66, 32.56999 + 68, 70, 73, 76, 80, 84, 88, 89, 88, 88, 88, 92, 93, 95, 100, 102, 32.57000 + 97, 89, 86, 93, 100, 105, 97, 98, 88, 71, 63, 71, 84, 92, 97, 91, 32.57001 + 81, 70, 62, 57, 53, 49, 46, 48, 53, 60, 60, 58, 61, 69, 255, 255, 32.57002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57005 + 255, 255, 255, 196, 69, 60, 37, 44, 90, 96, 82, 83, 90, 91, 95, 96, 32.57006 + 92, 98, 93, 86, 81, 79, 80, 82, 82, 79, 75, 73, 73, 76, 80, 84, 32.57007 + 87, 85, 89, 93, 95, 95, 95, 97, 99, 92, 95, 95, 97, 97, 97, 96, 32.57008 + 96, 96, 98, 95, 89, 86, 91, 99, 101, 98, 92, 79, 67, 67, 77, 87, 32.57009 + 90, 97, 88, 77, 67, 62, 59, 53, 48, 46, 51, 54, 57, 58, 60, 62, 32.57010 + 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57013 + 255, 255, 255, 255, 255, 255, 255, 48, 46, 27, 21, 47, 84, 88, 83, 78, 32.57014 + 87, 94, 91, 90, 96, 97, 94, 85, 75, 72, 77, 81, 71, 69, 70, 70, 32.57015 + 72, 78, 84, 89, 93, 97, 101, 104, 101, 98, 96, 96, 90, 94, 98, 103, 32.57016 + 104, 103, 99, 98, 97, 100, 99, 94, 93, 97, 101, 101, 96, 83, 68, 62, 32.57017 + 72, 86, 91, 89, 93, 83, 71, 64, 60, 57, 53, 49, 53, 60, 62, 61, 32.57018 + 64, 72, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 36, 30, 13, 12, 46, 32.57022 + 84, 88, 70, 79, 94, 91, 89, 94, 96, 96, 89, 80, 74, 75, 79, 78, 32.57023 + 79, 81, 80, 79, 82, 87, 93, 82, 85, 89, 90, 87, 84, 82, 83, 85, 32.57024 + 90, 96, 101, 103, 103, 101, 100, 97, 100, 102, 99, 98, 102, 102, 99, 89, 32.57025 + 76, 62, 62, 75, 90, 94, 91, 88, 79, 70, 61, 56, 51, 50, 53, 58, 32.57026 + 68, 68, 63, 68, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 15, 32.57030 + 12, 16, 10, 74, 94, 71, 74, 90, 92, 87, 90, 91, 92, 92, 88, 84, 32.57031 + 79, 77, 76, 76, 75, 72, 69, 69, 72, 76, 76, 77, 78, 77, 75, 75, 32.57032 + 78, 81, 91, 94, 97, 99, 100, 100, 99, 99, 94, 97, 99, 97, 97, 99, 32.57033 + 96, 93, 82, 72, 62, 65, 77, 88, 92, 91, 83, 76, 69, 61, 52, 44, 32.57034 + 49, 58, 59, 67, 67, 60, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57038 + 255, 255, 15, 19, 20, 5, 55, 83, 76, 75, 86, 89, 85, 88, 88, 88, 32.57039 + 91, 94, 92, 86, 80, 73, 72, 69, 66, 63, 60, 61, 62, 77, 77, 75, 32.57040 + 73, 73, 76, 82, 86, 102, 103, 102, 101, 98, 97, 97, 96, 96, 99, 100, 32.57041 + 98, 99, 100, 96, 91, 77, 68, 63, 70, 81, 87, 88, 88, 78, 70, 63, 32.57042 + 58, 50, 44, 52, 64, 66, 71, 70, 64, 255, 255, 255, 255, 255, 255, 255, 32.57043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57046 + 255, 255, 255, 255, 255, 179, 26, 14, 20, 23, 48, 74, 80, 78, 83, 86, 32.57047 + 89, 87, 87, 90, 93, 93, 92, 87, 90, 86, 83, 81, 80, 79, 78, 77, 32.57048 + 81, 81, 79, 78, 77, 81, 87, 92, 103, 104, 102, 102, 100, 98, 97, 96, 32.57049 + 101, 102, 101, 99, 101, 101, 96, 90, 77, 67, 63, 74, 85, 88, 82, 80, 32.57050 + 76, 63, 52, 53, 54, 52, 57, 68, 75, 76, 73, 255, 255, 255, 255, 255, 32.57051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 16, 34, 1, 13, 68, 83, 32.57055 + 74, 78, 89, 90, 90, 89, 89, 89, 91, 94, 94, 87, 82, 78, 78, 81, 32.57056 + 82, 79, 77, 87, 87, 86, 85, 84, 88, 93, 97, 95, 98, 100, 101, 100, 32.57057 + 100, 99, 98, 99, 100, 97, 96, 96, 97, 91, 84, 79, 67, 62, 74, 89, 32.57058 + 89, 81, 73, 76, 55, 42, 48, 58, 60, 63, 69, 76, 74, 132, 255, 255, 32.57059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 22, 24, 32.57063 + 13, 19, 56, 78, 81, 91, 93, 93, 93, 93, 92, 91, 89, 89, 95, 93, 32.57064 + 92, 91, 90, 90, 89, 89, 88, 94, 96, 93, 93, 97, 96, 91, 100, 100, 32.57065 + 99, 98, 96, 96, 96, 96, 99, 99, 98, 102, 101, 98, 88, 81, 72, 71, 32.57066 + 71, 78, 87, 88, 81, 73, 68, 52, 45, 56, 67, 69, 70, 75, 80, 137, 32.57067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57071 + 177, 21, 28, 17, 11, 34, 65, 81, 85, 95, 93, 91, 90, 90, 91, 96, 32.57072 + 97, 96, 93, 91, 90, 89, 89, 90, 91, 88, 94, 97, 96, 97, 102, 102, 32.57073 + 99, 104, 104, 101, 99, 97, 96, 96, 95, 89, 92, 94, 97, 96, 92, 86, 32.57074 + 82, 70, 69, 72, 78, 84, 82, 73, 63, 56, 48, 49, 60, 68, 68, 70, 32.57075 + 77, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57079 + 255, 255, 255, 255, 21, 26, 22, 6, 11, 50, 83, 86, 89, 91, 91, 92, 32.57080 + 91, 92, 95, 98, 95, 94, 90, 89, 88, 89, 90, 92, 86, 91, 95, 97, 32.57081 + 100, 105, 106, 104, 109, 108, 104, 101, 98, 97, 96, 97, 91, 94, 96, 98, 32.57082 + 95, 90, 85, 81, 66, 70, 75, 81, 84, 77, 66, 58, 47, 46, 54, 66, 32.57083 + 71, 69, 73, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57087 + 255, 255, 255, 255, 255, 255, 255, 255, 19, 23, 15, 5, 36, 79, 88, 83, 32.57088 + 89, 93, 96, 93, 90, 88, 87, 91, 91, 89, 89, 89, 89, 89, 90, 84, 32.57089 + 88, 91, 95, 98, 101, 102, 103, 108, 108, 104, 102, 99, 99, 100, 102, 101, 32.57090 + 99, 96, 97, 96, 91, 81, 74, 64, 70, 78, 82, 81, 73, 64, 57, 49, 32.57091 + 50, 58, 70, 76, 75, 76, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 26, 12, 23, 32.57096 + 58, 77, 88, 93, 97, 96, 90, 85, 84, 85, 85, 88, 90, 91, 91, 90, 32.57097 + 87, 86, 86, 87, 91, 95, 96, 97, 97, 99, 100, 99, 97, 95, 96, 98, 32.57098 + 100, 103, 103, 96, 89, 90, 93, 90, 77, 65, 66, 73, 79, 80, 73, 64, 32.57099 + 57, 54, 62, 60, 63, 72, 80, 81, 138, 255, 255, 255, 255, 255, 255, 255, 32.57100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 32.57104 + 29, 21, 13, 29, 50, 94, 96, 97, 94, 86, 84, 87, 90, 83, 84, 86, 32.57105 + 88, 88, 88, 87, 85, 93, 92, 93, 98, 98, 95, 94, 97, 91, 90, 89, 32.57106 + 88, 90, 94, 98, 102, 102, 95, 89, 90, 93, 91, 79, 68, 69, 74, 77, 32.57107 + 71, 59, 51, 49, 51, 72, 69, 69, 76, 82, 142, 255, 255, 255, 255, 255, 32.57108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57112 + 255, 255, 255, 23, 29, 16, 12, 24, 81, 88, 94, 95, 89, 84, 85, 89, 32.57113 + 83, 84, 84, 83, 84, 85, 86, 88, 95, 93, 95, 99, 99, 95, 94, 97, 32.57114 + 90, 89, 87, 87, 89, 94, 98, 103, 101, 98, 95, 93, 90, 85, 77, 72, 32.57115 + 67, 72, 73, 64, 51, 46, 51, 59, 71, 74, 79, 82, 83, 255, 255, 255, 32.57116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57120 + 255, 255, 255, 255, 255, 255, 255, 32, 25, 9, 13, 60, 74, 92, 100, 96, 32.57121 + 88, 81, 80, 86, 84, 80, 78, 79, 83, 87, 90, 95, 91, 93, 99, 99, 32.57122 + 93, 93, 96, 93, 92, 90, 90, 92, 96, 102, 105, 96, 99, 97, 92, 82, 32.57123 + 72, 68, 68, 65, 70, 69, 60, 49, 48, 61, 72, 66, 76, 85, 87, 255, 32.57124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 15, 12, 28, 63, 32.57129 + 97, 86, 101, 88, 88, 78, 80, 78, 78, 81, 83, 84, 89, 96, 92, 93, 32.57130 + 95, 96, 97, 96, 95, 95, 90, 94, 96, 94, 91, 92, 100, 108, 102, 99, 32.57131 + 93, 88, 83, 77, 69, 66, 74, 67, 60, 53, 53, 59, 67, 74, 76, 84, 32.57132 + 88, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 19, 32.57137 + 16, 10, 51, 89, 91, 94, 85, 87, 89, 86, 83, 82, 86, 87, 87, 89, 32.57138 + 96, 98, 96, 93, 92, 91, 95, 99, 103, 91, 92, 93, 96, 98, 100, 102, 32.57139 + 103, 101, 98, 91, 86, 81, 75, 68, 65, 67, 65, 60, 58, 59, 66, 74, 32.57140 + 79, 82, 82, 82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57145 + 255, 255, 255, 20, 2, 34, 65, 88, 86, 88, 85, 92, 90, 87, 86, 90, 32.57146 + 90, 88, 88, 93, 96, 95, 93, 91, 92, 95, 99, 102, 100, 99, 99, 103, 32.57147 + 108, 109, 104, 99, 97, 93, 86, 79, 73, 69, 63, 62, 60, 61, 62, 63, 32.57148 + 68, 75, 82, 85, 89, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57153 + 255, 255, 255, 255, 255, 255, 255, 255, 21, 37, 81, 84, 94, 83, 85, 88, 32.57154 + 84, 85, 90, 93, 90, 88, 89, 89, 92, 94, 98, 98, 98, 95, 95, 103, 32.57155 + 103, 102, 103, 106, 105, 99, 94, 94, 87, 76, 67, 62, 59, 58, 58, 58, 32.57156 + 61, 64, 71, 76, 82, 86, 88, 90, 255, 255, 255, 255, 255, 255, 255, 255, 32.57157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 86, 88, 32.57162 + 77, 83, 86, 82, 83, 90, 95, 93, 90, 91, 91, 94, 96, 100, 100, 98, 32.57163 + 96, 94, 96, 96, 98, 97, 95, 94, 91, 91, 86, 78, 66, 57, 53, 55, 32.57164 + 57, 59, 63, 67, 71, 77, 82, 84, 86, 85, 255, 255, 255, 255, 255, 255, 32.57165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57170 + 255, 204, 75, 72, 86, 83, 79, 80, 88, 94, 94, 91, 93, 100, 98, 96, 32.57171 + 94, 94, 95, 97, 98, 88, 90, 93, 93, 92, 91, 89, 90, 73, 68, 60, 32.57172 + 56, 56, 60, 63, 65, 71, 74, 77, 80, 82, 84, 84, 140, 255, 255, 255, 32.57173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57178 + 255, 255, 255, 255, 255, 255, 195, 81, 80, 73, 73, 81, 89, 90, 87, 88, 32.57179 + 96, 94, 91, 89, 89, 88, 89, 90, 86, 85, 87, 89, 90, 88, 80, 75, 32.57180 + 59, 58, 59, 64, 69, 73, 76, 76, 78, 79, 80, 81, 82, 82, 255, 255, 32.57181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 68, 74, 81, 32.57187 + 82, 81, 81, 84, 86, 89, 90, 88, 83, 78, 75, 83, 80, 78, 81, 85, 32.57188 + 79, 64, 50, 48, 53, 61, 72, 81, 85, 87, 85, 82, 82, 81, 80, 138, 32.57189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57195 + 255, 255, 79, 57, 63, 68, 77, 81, 82, 77, 77, 78, 78, 76, 76, 72, 32.57196 + 71, 71, 65, 57, 57, 64, 65, 72, 83, 92, 95, 94, 92, 89, 82, 87, 32.57197 + 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 63, 63, 63, 67, 67, 32.57204 + 64, 56, 57, 62, 67, 68, 65, 67, 74, 80, 85, 90, 94, 92, 91, 91, 32.57205 + 92, 86, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57212 + 255, 193, 70, 66, 83, 85, 91, 97, 98, 95, 94, 97, 93, 96, 96, 92, 32.57213 + 86, 85, 89, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 102, 98, 96, 94, 32.57221 + 96, 95, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57228 + 255, 255, 255, 255, 203, 94, 94, 101, 102, 96, 104, 95, 85, 81, 82, 86, 32.57229 + 87, 86, 113, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 92, 92, 95, 91, 94, 97, 32.57236 + 98, 95, 92, 91, 91, 87, 92, 97, 99, 102, 103, 99, 92, 95, 92, 89, 32.57237 + 86, 85, 82, 78, 74, 73, 83, 74, 64, 67, 58, 49, 60, 66, 70, 64, 32.57238 + 66, 84, 93, 89, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57241 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57243 + 255, 255, 255, 102, 104, 108, 107, 102, 101, 97, 95, 97, 97, 93, 90, 90, 32.57244 + 87, 83, 85, 92, 91, 86, 87, 94, 95, 90, 89, 93, 94, 90, 84, 82, 32.57245 + 77, 81, 86, 87, 83, 76, 69, 64, 81, 85, 74, 62, 59, 49, 41, 46, 32.57246 + 54, 66, 61, 57, 73, 86, 82, 76, 78, 94, 95, 113, 120, 255, 255, 255, 32.57247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57251 + 255, 255, 255, 255, 207, 110, 108, 107, 108, 104, 97, 102, 99, 97, 97, 96, 32.57252 + 92, 88, 86, 100, 89, 85, 92, 92, 85, 89, 102, 90, 75, 64, 65, 66, 32.57253 + 63, 65, 72, 56, 64, 72, 74, 70, 63, 60, 60, 72, 70, 62, 53, 48, 32.57254 + 42, 38, 39, 48, 61, 55, 48, 66, 83, 76, 63, 73, 93, 96, 113, 121, 32.57255 + 109, 115, 122, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57259 + 255, 255, 255, 255, 255, 205, 110, 114, 116, 115, 114, 112, 104, 96, 94, 94, 32.57260 + 94, 95, 97, 98, 97, 95, 89, 77, 74, 80, 78, 68, 67, 76, 71, 55, 32.57261 + 43, 43, 45, 45, 52, 63, 44, 50, 55, 54, 50, 47, 50, 54, 48, 44, 32.57262 + 44, 44, 43, 46, 50, 49, 53, 62, 52, 45, 66, 84, 75, 59, 74, 98, 32.57263 + 96, 101, 107, 103, 109, 107, 106, 108, 110, 111, 158, 255, 255, 255, 255, 255, 32.57264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57267 + 255, 255, 255, 255, 255, 255, 184, 83, 79, 68, 73, 77, 78, 78, 76, 68, 32.57268 + 58, 49, 49, 46, 42, 43, 46, 44, 41, 45, 42, 48, 59, 64, 57, 54, 32.57269 + 56, 69, 62, 55, 51, 46, 41, 41, 45, 40, 43, 43, 40, 35, 35, 40, 32.57270 + 45, 42, 35, 39, 44, 42, 48, 55, 49, 60, 65, 54, 49, 68, 83, 75, 32.57271 + 65, 72, 95, 89, 92, 101, 101, 107, 102, 100, 104, 108, 109, 108, 108, 111, 32.57272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57275 + 255, 255, 255, 255, 255, 255, 255, 255, 188, 48, 82, 73, 82, 86, 88, 88, 32.57276 + 87, 86, 78, 70, 58, 57, 50, 40, 37, 38, 36, 31, 27, 30, 37, 48, 32.57277 + 59, 65, 66, 66, 67, 71, 70, 59, 48, 41, 36, 33, 37, 38, 39, 37, 32.57278 + 35, 35, 39, 42, 49, 38, 44, 49, 42, 47, 53, 42, 62, 67, 59, 55, 32.57279 + 67, 74, 72, 74, 84, 94, 85, 96, 106, 97, 99, 97, 91, 95, 98, 99, 32.57280 + 98, 100, 106, 112, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 99, 49, 53, 91, 84, 84, 32.57284 + 86, 85, 81, 79, 77, 70, 62, 49, 49, 42, 32, 30, 34, 33, 28, 21, 32.57285 + 21, 20, 21, 31, 45, 52, 52, 46, 57, 59, 47, 37, 37, 37, 34, 29, 32.57286 + 32, 36, 38, 39, 40, 41, 42, 45, 33, 41, 48, 41, 47, 54, 41, 58, 32.57287 + 64, 59, 56, 61, 62, 66, 79, 103, 100, 85, 101, 106, 79, 73, 75, 78, 32.57288 + 80, 82, 81, 81, 85, 94, 102, 104, 105, 106, 255, 255, 255, 255, 255, 255, 32.57289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 93, 74, 68, 79, 32.57292 + 90, 92, 89, 81, 76, 78, 79, 71, 59, 52, 31, 38, 35, 32, 35, 30, 32.57293 + 23, 28, 28, 16, 10, 18, 27, 29, 27, 27, 40, 39, 40, 43, 40, 34, 32.57294 + 33, 37, 35, 31, 27, 28, 33, 36, 35, 33, 44, 39, 38, 46, 55, 56, 32.57295 + 47, 37, 51, 58, 52, 54, 68, 64, 62, 81, 100, 106, 93, 75, 74, 76, 32.57296 + 74, 76, 64, 64, 60, 54, 49, 51, 59, 67, 82, 90, 100, 106, 158, 255, 32.57297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 99, 87, 84, 79, 32.57300 + 70, 64, 58, 65, 70, 55, 49, 45, 44, 40, 34, 29, 29, 28, 32, 26, 32.57301 + 23, 30, 31, 32, 42, 34, 23, 17, 22, 27, 27, 27, 28, 30, 32, 35, 32.57302 + 37, 38, 37, 37, 36, 43, 35, 27, 25, 29, 33, 33, 31, 40, 36, 35, 32.57303 + 40, 48, 51, 47, 41, 64, 66, 64, 67, 72, 66, 61, 67, 64, 79, 76, 32.57304 + 64, 63, 60, 55, 55, 38, 38, 38, 37, 36, 37, 41, 45, 57, 61, 68, 32.57305 + 77, 90, 102, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 92, 80, 32.57308 + 69, 60, 60, 60, 52, 35, 35, 43, 35, 30, 27, 23, 17, 12, 14, 21, 32.57309 + 24, 28, 23, 21, 31, 34, 37, 46, 41, 34, 28, 28, 28, 27, 28, 31, 32.57310 + 28, 35, 38, 37, 40, 46, 44, 36, 39, 30, 21, 20, 27, 34, 35, 34, 32.57311 + 39, 37, 36, 38, 42, 48, 51, 52, 69, 63, 70, 79, 78, 75, 71, 63, 32.57312 + 54, 70, 69, 57, 54, 49, 42, 41, 38, 38, 38, 39, 40, 38, 34, 31, 32.57313 + 34, 34, 37, 48, 64, 83, 99, 158, 255, 255, 255, 255, 255, 255, 255, 255, 32.57314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 32.57316 + 93, 75, 52, 54, 49, 49, 48, 38, 27, 25, 30, 36, 31, 27, 24, 20, 32.57317 + 16, 19, 26, 21, 27, 24, 25, 34, 34, 30, 34, 43, 39, 34, 30, 26, 32.57318 + 25, 28, 31, 28, 38, 40, 35, 38, 48, 44, 31, 38, 30, 22, 21, 28, 32.57319 + 34, 35, 33, 38, 38, 36, 36, 38, 44, 54, 61, 69, 58, 69, 80, 74, 32.57320 + 76, 76, 58, 59, 68, 60, 46, 48, 50, 47, 48, 47, 45, 44, 47, 50, 32.57321 + 49, 42, 36, 28, 27, 29, 36, 47, 61, 81, 96, 154, 255, 255, 255, 255, 32.57322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57324 + 255, 200, 80, 72, 58, 42, 47, 51, 48, 37, 29, 32, 36, 34, 39, 33, 32.57325 + 28, 28, 27, 24, 23, 25, 24, 28, 24, 24, 34, 33, 29, 33, 43, 43, 32.57326 + 39, 32, 26, 26, 28, 30, 27, 38, 41, 34, 37, 46, 44, 32, 45, 39, 32.57327 + 33, 30, 32, 33, 31, 28, 34, 36, 36, 34, 34, 41, 52, 62, 75, 63, 32.57328 + 69, 76, 68, 72, 73, 55, 58, 62, 50, 40, 49, 58, 56, 56, 42, 38, 32.57329 + 35, 38, 44, 47, 43, 39, 30, 30, 34, 37, 38, 43, 60, 78, 93, 94, 32.57330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57332 + 255, 255, 255, 200, 76, 68, 63, 60, 54, 46, 55, 53, 37, 34, 42, 49, 32.57333 + 45, 42, 35, 30, 31, 31, 27, 23, 23, 28, 29, 20, 19, 32, 38, 40, 32.57334 + 48, 48, 49, 45, 37, 31, 31, 30, 29, 33, 42, 46, 43, 43, 49, 51, 32.57335 + 47, 35, 34, 33, 31, 30, 30, 31, 32, 29, 32, 34, 33, 32, 36, 46, 32.57336 + 54, 63, 59, 62, 65, 66, 74, 78, 70, 67, 73, 63, 53, 59, 62, 53, 32.57337 + 49, 54, 47, 39, 36, 37, 37, 33, 30, 29, 28, 32, 35, 32, 30, 41, 32.57338 + 57, 73, 78, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57340 + 255, 255, 255, 255, 255, 255, 78, 73, 72, 66, 63, 63, 48, 51, 52, 47, 32.57341 + 46, 46, 52, 54, 48, 44, 41, 39, 34, 28, 28, 32, 30, 30, 22, 24, 32.57342 + 41, 50, 54, 63, 61, 61, 56, 47, 41, 40, 35, 29, 45, 50, 54, 52, 32.57343 + 48, 48, 53, 58, 37, 38, 37, 33, 27, 27, 32, 38, 29, 32, 36, 37, 32.57344 + 36, 38, 43, 48, 41, 51, 52, 53, 67, 78, 81, 86, 80, 91, 85, 71, 32.57345 + 68, 65, 57, 54, 68, 60, 50, 42, 37, 33, 29, 26, 31, 24, 23, 28, 32.57346 + 28, 23, 27, 37, 49, 60, 75, 86, 255, 255, 255, 255, 255, 255, 255, 255, 32.57347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57348 + 255, 255, 255, 255, 255, 255, 255, 255, 79, 68, 75, 79, 70, 59, 55, 50, 32.57349 + 46, 51, 58, 59, 48, 50, 59, 51, 50, 49, 43, 32, 25, 29, 38, 26, 32.57350 + 30, 27, 34, 52, 59, 59, 64, 69, 70, 64, 53, 47, 45, 38, 28, 47, 32.57351 + 49, 53, 52, 43, 36, 42, 52, 60, 58, 55, 42, 27, 22, 27, 34, 30, 32.57352 + 34, 39, 41, 41, 41, 42, 44, 32, 53, 51, 46, 63, 71, 71, 82, 75, 32.57353 + 91, 89, 72, 69, 67, 69, 77, 58, 52, 47, 40, 39, 35, 35, 32, 37, 32.57354 + 21, 17, 22, 28, 21, 21, 25, 34, 50, 72, 90, 151, 255, 255, 255, 255, 32.57355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 65, 67, 82, 78, 52, 32.57357 + 43, 56, 64, 56, 50, 64, 64, 56, 64, 53, 53, 49, 46, 42, 42, 42, 32.57358 + 39, 36, 35, 45, 32, 40, 40, 73, 63, 54, 59, 73, 66, 46, 50, 68, 32.57359 + 55, 21, 28, 44, 59, 57, 49, 44, 41, 36, 48, 43, 44, 41, 35, 29, 32.57360 + 29, 34, 36, 47, 35, 36, 53, 38, 23, 43, 43, 37, 37, 51, 68, 77, 32.57361 + 78, 80, 89, 61, 57, 73, 83, 75, 64, 50, 63, 58, 48, 36, 36, 40, 32.57362 + 38, 29, 33, 30, 28, 22, 19, 20, 27, 33, 28, 41, 56, 69, 87, 255, 32.57363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 80, 75, 74, 32.57365 + 75, 70, 60, 57, 59, 65, 60, 57, 71, 69, 61, 66, 52, 57, 55, 52, 32.57366 + 47, 40, 38, 40, 42, 40, 44, 36, 52, 50, 67, 59, 60, 60, 63, 58, 32.57367 + 50, 50, 54, 47, 31, 29, 44, 53, 47, 44, 46, 45, 38, 44, 38, 41, 32.57368 + 43, 40, 33, 30, 32, 40, 49, 37, 36, 52, 39, 23, 40, 47, 41, 37, 32.57369 + 49, 64, 69, 71, 71, 74, 57, 59, 68, 68, 63, 57, 48, 56, 56, 51, 32.57370 + 45, 45, 47, 43, 36, 33, 32, 29, 24, 20, 19, 23, 26, 25, 36, 48, 32.57371 + 60, 79, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 75, 32.57373 + 75, 81, 79, 63, 58, 63, 65, 59, 57, 56, 57, 73, 72, 65, 74, 59, 32.57374 + 57, 59, 57, 50, 42, 40, 47, 54, 48, 48, 47, 63, 56, 57, 52, 61, 32.57375 + 62, 55, 52, 53, 47, 36, 34, 39, 33, 45, 46, 34, 33, 44, 45, 33, 32.57376 + 39, 34, 38, 45, 47, 41, 34, 31, 44, 51, 41, 38, 51, 42, 27, 38, 32.57377 + 49, 42, 37, 42, 53, 57, 59, 58, 58, 55, 61, 62, 53, 51, 54, 49, 32.57378 + 56, 59, 60, 57, 54, 52, 46, 40, 29, 29, 27, 24, 20, 18, 18, 20, 32.57379 + 24, 30, 36, 45, 65, 92, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57381 + 201, 81, 70, 75, 80, 77, 62, 57, 64, 68, 63, 63, 61, 58, 68, 66, 32.57382 + 62, 74, 60, 61, 62, 60, 54, 47, 48, 55, 62, 52, 56, 57, 60, 52, 32.57383 + 49, 48, 54, 59, 53, 52, 52, 41, 26, 28, 40, 38, 47, 41, 24, 26, 32.57384 + 41, 44, 30, 39, 33, 35, 42, 48, 43, 36, 30, 44, 51, 44, 40, 49, 32.57385 + 44, 33, 37, 48, 40, 34, 37, 43, 49, 52, 50, 54, 52, 57, 52, 40, 32.57386 + 44, 54, 51, 60, 64, 67, 66, 61, 55, 50, 46, 60, 59, 56, 50, 43, 32.57387 + 37, 32, 29, 26, 28, 28, 32, 49, 77, 93, 255, 255, 255, 255, 255, 255, 32.57388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57389 + 255, 255, 200, 84, 78, 72, 83, 78, 74, 70, 69, 67, 69, 72, 78, 73, 32.57390 + 61, 61, 53, 51, 66, 55, 66, 63, 58, 53, 50, 50, 53, 56, 49, 58, 32.57391 + 61, 47, 44, 47, 52, 48, 47, 52, 53, 46, 36, 31, 34, 39, 37, 43, 32.57392 + 35, 20, 24, 41, 45, 35, 43, 33, 33, 38, 47, 43, 38, 33, 43, 52, 32.57393 + 50, 44, 47, 48, 43, 39, 41, 37, 31, 31, 38, 44, 47, 46, 53, 46, 32.57394 + 46, 40, 33, 41, 54, 49, 55, 58, 64, 67, 67, 64, 62, 62, 78, 74, 32.57395 + 67, 58, 48, 38, 30, 25, 27, 27, 24, 23, 36, 64, 85, 91, 255, 255, 32.57396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57397 + 255, 255, 255, 255, 202, 86, 80, 79, 81, 85, 68, 62, 68, 72, 64, 64, 32.57398 + 73, 71, 70, 58, 56, 49, 52, 71, 61, 64, 62, 59, 54, 49, 46, 45, 32.57399 + 44, 46, 54, 58, 37, 44, 50, 58, 45, 33, 45, 49, 41, 36, 40, 41, 32.57400 + 37, 31, 34, 29, 22, 28, 39, 44, 41, 44, 34, 33, 37, 46, 43, 41, 32.57401 + 37, 40, 52, 56, 48, 43, 48, 48, 43, 34, 34, 29, 29, 35, 44, 45, 32.57402 + 43, 47, 34, 31, 29, 28, 38, 48, 45, 44, 46, 54, 66, 73, 74, 75, 32.57403 + 78, 56, 52, 46, 40, 35, 31, 26, 23, 24, 27, 24, 19, 29, 56, 80, 32.57404 + 91, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57405 + 255, 255, 255, 255, 255, 255, 202, 89, 81, 78, 81, 85, 81, 63, 52, 58, 32.57406 + 66, 63, 63, 66, 60, 61, 55, 56, 52, 56, 74, 64, 53, 58, 61, 57, 32.57407 + 49, 43, 42, 43, 54, 50, 54, 40, 55, 50, 55, 42, 31, 38, 42, 41, 32.57408 + 41, 42, 38, 31, 30, 28, 28, 28, 30, 33, 36, 39, 37, 32, 33, 39, 32.57409 + 47, 45, 45, 42, 41, 56, 65, 53, 38, 45, 50, 42, 31, 32, 30, 29, 32.57410 + 34, 43, 46, 43, 40, 21, 21, 30, 32, 36, 43, 41, 44, 43, 51, 67, 32.57411 + 77, 77, 75, 75, 57, 51, 44, 39, 38, 38, 37, 36, 26, 32, 29, 21, 32.57412 + 24, 48, 74, 88, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 81, 76, 76, 80, 84, 81, 32.57414 + 65, 51, 51, 62, 67, 67, 64, 63, 67, 63, 64, 56, 54, 66, 48, 42, 32.57415 + 53, 63, 63, 53, 45, 47, 52, 66, 50, 53, 47, 65, 48, 48, 38, 37, 32.57416 + 35, 37, 44, 45, 38, 29, 23, 33, 29, 29, 32, 32, 25, 26, 33, 33, 32.57417 + 30, 33, 42, 48, 48, 46, 46, 42, 58, 70, 56, 35, 42, 50, 39, 28, 32.57418 + 32, 32, 30, 35, 43, 45, 41, 34, 17, 19, 35, 36, 34, 39, 43, 54, 32.57419 + 50, 56, 70, 78, 73, 65, 61, 71, 61, 49, 38, 33, 29, 26, 24, 31, 32.57420 + 38, 36, 25, 22, 42, 67, 82, 92, 99, 255, 255, 255, 255, 255, 255, 255, 32.57421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 79, 79, 80, 32.57422 + 79, 77, 56, 61, 61, 59, 61, 64, 62, 54, 52, 57, 44, 51, 56, 43, 32.57423 + 48, 52, 37, 66, 64, 47, 48, 46, 38, 42, 47, 51, 61, 62, 51, 37, 32.57424 + 38, 47, 53, 43, 56, 43, 20, 17, 20, 33, 28, 21, 31, 41, 30, 21, 32.57425 + 31, 42, 28, 34, 42, 47, 48, 46, 43, 43, 54, 59, 59, 55, 50, 41, 32.57426 + 27, 17, 20, 30, 32, 27, 33, 44, 36, 17, 32, 28, 25, 29, 37, 44, 32.57427 + 46, 42, 36, 44, 57, 64, 65, 66, 69, 72, 62, 50, 37, 30, 31, 33, 32.57428 + 31, 28, 30, 30, 14, 19, 26, 37, 63, 69, 84, 92, 152, 255, 255, 255, 32.57429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 32.57430 + 75, 80, 82, 78, 72, 54, 59, 60, 57, 55, 54, 50, 43, 48, 49, 41, 32.57431 + 47, 41, 32, 46, 45, 32, 60, 64, 54, 56, 49, 38, 42, 57, 52, 50, 32.57432 + 49, 50, 48, 48, 49, 46, 37, 52, 46, 30, 29, 27, 34, 23, 23, 32, 32.57433 + 37, 34, 36, 39, 33, 35, 39, 45, 49, 49, 46, 44, 41, 55, 62, 66, 32.57434 + 57, 47, 36, 29, 24, 31, 32, 27, 21, 25, 33, 31, 23, 24, 27, 31, 32.57435 + 37, 42, 45, 47, 45, 41, 45, 53, 57, 57, 57, 57, 59, 59, 52, 44, 32.57436 + 41, 42, 41, 35, 29, 29, 35, 25, 27, 24, 27, 51, 57, 83, 93, 102, 32.57437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57438 + 255, 76, 68, 72, 83, 87, 80, 71, 64, 68, 69, 63, 57, 52, 45, 39, 32.57439 + 40, 36, 35, 41, 24, 22, 49, 47, 61, 62, 47, 32, 33, 36, 48, 67, 32.57440 + 55, 56, 58, 60, 65, 67, 61, 53, 62, 44, 51, 43, 30, 29, 23, 25, 32.57441 + 22, 25, 30, 29, 32, 44, 41, 19, 39, 43, 48, 51, 50, 48, 47, 45, 32.57442 + 54, 64, 67, 54, 39, 29, 30, 32, 35, 31, 25, 24, 26, 28, 28, 29, 32.57443 + 13, 18, 25, 29, 34, 36, 40, 44, 49, 49, 52, 55, 56, 57, 56, 56, 32.57444 + 47, 45, 44, 46, 47, 43, 33, 24, 31, 43, 38, 38, 28, 23, 46, 54, 32.57445 + 78, 89, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57446 + 255, 255, 255, 255, 78, 75, 80, 90, 93, 86, 78, 73, 75, 73, 66, 57, 32.57447 + 50, 46, 43, 32, 27, 32, 40, 18, 23, 61, 55, 59, 47, 39, 41, 46, 32.57448 + 44, 47, 56, 56, 63, 68, 66, 68, 72, 71, 67, 76, 49, 45, 32, 21, 32.57449 + 25, 20, 22, 33, 30, 30, 28, 29, 40, 37, 17, 40, 45, 49, 50, 50, 32.57450 + 48, 49, 49, 49, 57, 59, 46, 32, 27, 31, 35, 31, 26, 28, 35, 37, 32.57451 + 33, 31, 35, 35, 37, 37, 39, 42, 50, 56, 58, 51, 51, 52, 56, 60, 32.57452 + 64, 66, 66, 58, 59, 61, 65, 66, 61, 51, 42, 39, 49, 42, 41, 32, 32.57453 + 29, 51, 59, 68, 80, 94, 103, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57454 + 255, 255, 255, 255, 255, 255, 199, 86, 85, 87, 91, 89, 83, 78, 75, 73, 32.57455 + 68, 62, 52, 46, 44, 45, 30, 25, 30, 38, 16, 25, 64, 57, 57, 36, 32.57456 + 31, 44, 55, 57, 57, 59, 68, 63, 58, 55, 63, 71, 75, 69, 63, 37, 32.57457 + 36, 28, 23, 32, 29, 31, 43, 32, 30, 32, 29, 33, 37, 32, 47, 48, 32.57458 + 50, 50, 49, 47, 47, 47, 48, 51, 49, 40, 34, 35, 37, 38, 34, 29, 32.57459 + 32, 41, 40, 33, 32, 41, 45, 43, 41, 44, 50, 56, 56, 54, 45, 45, 32.57460 + 46, 50, 56, 62, 66, 67, 65, 65, 66, 68, 69, 64, 56, 49, 46, 48, 32.57461 + 34, 33, 29, 29, 51, 56, 60, 73, 89, 102, 255, 255, 255, 255, 255, 255, 32.57462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 80, 79, 80, 80, 76, 70, 32.57463 + 66, 78, 71, 63, 60, 55, 49, 46, 46, 32, 31, 29, 34, 22, 30, 60, 32.57464 + 51, 66, 39, 34, 44, 54, 66, 77, 75, 70, 58, 54, 66, 81, 80, 66, 32.57465 + 49, 51, 32, 42, 40, 35, 40, 33, 34, 41, 30, 32, 37, 34, 35, 42, 32.57466 + 42, 55, 55, 54, 49, 47, 44, 44, 46, 51, 51, 47, 42, 43, 47, 46, 32.57467 + 42, 45, 40, 39, 40, 35, 31, 35, 46, 38, 37, 37, 44, 50, 50, 43, 32.57468 + 35, 40, 41, 44, 47, 51, 57, 62, 65, 66, 64, 62, 59, 56, 51, 44, 32.57469 + 40, 45, 43, 24, 24, 23, 24, 40, 39, 53, 68, 87, 101, 106, 255, 255, 32.57470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 71, 68, 67, 72, 32.57471 + 78, 80, 74, 68, 81, 71, 64, 66, 66, 59, 49, 46, 32, 37, 24, 28, 32.57472 + 33, 40, 57, 49, 47, 39, 57, 72, 70, 73, 73, 58, 67, 58, 62, 79, 32.57473 + 85, 69, 54, 46, 55, 42, 57, 55, 44, 44, 37, 39, 45, 46, 53, 54, 32.57474 + 53, 59, 60, 45, 57, 56, 53, 50, 49, 48, 50, 53, 54, 55, 53, 49, 32.57475 + 51, 53, 51, 44, 48, 50, 50, 47, 41, 39, 42, 50, 49, 49, 48, 51, 32.57476 + 54, 54, 52, 51, 50, 54, 59, 62, 65, 69, 76, 82, 87, 83, 76, 68, 32.57477 + 60, 52, 45, 41, 37, 39, 25, 28, 27, 23, 34, 29, 46, 62, 83, 99, 32.57478 + 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 72, 32.57479 + 66, 65, 76, 91, 99, 95, 89, 82, 71, 65, 70, 70, 62, 48, 39, 29, 32.57480 + 38, 22, 26, 43, 50, 58, 50, 61, 56, 67, 67, 53, 60, 72, 64, 72, 32.57481 + 62, 63, 67, 52, 34, 45, 72, 60, 47, 64, 59, 47, 49, 49, 57, 60, 32.57482 + 73, 83, 78, 79, 91, 82, 50, 51, 51, 51, 49, 50, 52, 58, 60, 52, 32.57483 + 55, 56, 53, 52, 52, 50, 44, 39, 49, 60, 59, 53, 49, 48, 50, 51, 32.57484 + 49, 44, 40, 39, 46, 55, 62, 66, 72, 80, 84, 86, 92, 100, 108, 93, 32.57485 + 88, 82, 71, 59, 48, 39, 34, 30, 38, 32, 40, 39, 29, 36, 29, 41, 32.57486 + 57, 80, 96, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57487 + 255, 89, 92, 80, 81, 96, 104, 97, 92, 96, 98, 89, 81, 76, 71, 59, 32.57488 + 48, 43, 26, 26, 41, 53, 53, 57, 61, 53, 60, 55, 55, 65, 68, 60, 32.57489 + 57, 61, 60, 65, 61, 54, 54, 61, 60, 53, 51, 47, 45, 40, 39, 44, 32.57490 + 56, 63, 71, 70, 68, 64, 66, 69, 67, 61, 54, 49, 44, 40, 41, 43, 32.57491 + 49, 51, 39, 42, 45, 45, 44, 44, 45, 45, 46, 50, 51, 50, 46, 43, 32.57492 + 42, 45, 49, 52, 49, 42, 43, 50, 56, 60, 69, 58, 55, 65, 75, 75, 32.57493 + 76, 81, 72, 70, 66, 59, 57, 59, 58, 54, 61, 44, 33, 33, 32, 23, 32.57494 + 25, 33, 32, 30, 56, 69, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57495 + 255, 255, 255, 71, 66, 59, 78, 99, 105, 97, 88, 84, 86, 67, 68, 60, 32.57496 + 51, 47, 48, 44, 37, 32, 32, 48, 61, 61, 62, 62, 55, 59, 54, 54, 32.57497 + 62, 63, 58, 55, 59, 52, 53, 49, 44, 47, 49, 51, 46, 36, 36, 37, 32.57498 + 36, 37, 44, 51, 59, 54, 54, 49, 47, 49, 54, 55, 52, 47, 47, 48, 32.57499 + 48, 50, 51, 53, 52, 45, 46, 46, 44, 43, 44, 47, 48, 47, 49, 48, 32.57500 + 47, 45, 44, 47, 50, 46, 48, 45, 41, 42, 49, 57, 57, 43, 47, 59, 32.57501 + 74, 83, 79, 70, 65, 64, 66, 66, 66, 73, 78, 76, 69, 55, 46, 38, 32.57502 + 35, 26, 18, 20, 29, 25, 25, 37, 49, 62, 154, 255, 255, 255, 255, 255, 32.57503 + 255, 255, 255, 255, 255, 255, 61, 62, 65, 95, 117, 109, 93, 83, 75, 68, 32.57504 + 60, 65, 56, 40, 31, 35, 36, 30, 45, 45, 60, 71, 69, 68, 66, 57, 32.57505 + 57, 51, 50, 56, 57, 53, 51, 55, 55, 51, 47, 47, 49, 46, 47, 49, 32.57506 + 28, 32, 37, 42, 45, 50, 53, 58, 47, 49, 44, 41, 44, 52, 56, 55, 32.57507 + 48, 45, 43, 39, 37, 34, 34, 33, 45, 43, 44, 42, 43, 44, 48, 51, 32.57508 + 50, 49, 48, 45, 43, 46, 53, 57, 46, 47, 46, 44, 47, 54, 59, 57, 32.57509 + 51, 57, 63, 67, 73, 76, 75, 71, 64, 65, 65, 68, 75, 76, 65, 53, 32.57510 + 53, 52, 47, 38, 26, 20, 21, 25, 19, 21, 18, 27, 42, 100, 255, 255, 32.57511 + 255, 255, 255, 255, 255, 255, 255, 255, 52, 66, 88, 95, 103, 106, 96, 89, 32.57512 + 86, 75, 62, 69, 69, 61, 46, 35, 30, 34, 37, 58, 56, 67, 73, 71, 32.57513 + 71, 71, 62, 57, 50, 49, 52, 52, 49, 50, 53, 61, 51, 48, 53, 53, 32.57514 + 47, 46, 52, 34, 39, 47, 54, 57, 56, 55, 54, 45, 46, 46, 43, 45, 32.57515 + 52, 58, 55, 63, 56, 46, 39, 36, 37, 40, 41, 40, 39, 40, 40, 42, 32.57516 + 45, 49, 51, 52, 51, 49, 47, 45, 47, 53, 56, 48, 50, 51, 51, 56, 32.57517 + 63, 66, 63, 67, 73, 70, 61, 62, 71, 76, 74, 85, 83, 80, 80, 85, 32.57518 + 82, 67, 50, 56, 57, 52, 42, 32, 31, 28, 24, 18, 24, 13, 21, 40, 32.57519 + 105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 81, 105, 98, 89, 32.57520 + 84, 81, 82, 79, 74, 70, 65, 58, 54, 54, 47, 36, 43, 55, 69, 65, 32.57521 + 71, 73, 69, 71, 75, 69, 61, 55, 51, 51, 51, 50, 53, 55, 56, 46, 32.57522 + 45, 51, 53, 48, 49, 56, 46, 50, 57, 63, 64, 61, 57, 52, 39, 43, 32.57523 + 45, 42, 43, 46, 49, 45, 49, 46, 43, 40, 43, 48, 55, 57, 46, 45, 32.57524 + 47, 48, 50, 50, 50, 49, 52, 51, 50, 50, 49, 49, 47, 49, 53, 57, 32.57525 + 60, 60, 65, 72, 75, 72, 59, 71, 77, 74, 73, 74, 69, 60, 79, 77, 32.57526 + 73, 74, 82, 83, 72, 58, 55, 53, 46, 40, 37, 38, 31, 22, 18, 25, 32.57527 + 17, 24, 57, 110, 100, 255, 255, 255, 255, 255, 255, 255, 255, 87, 88, 91, 32.57528 + 94, 90, 88, 89, 85, 76, 67, 68, 75, 67, 61, 58, 57, 52, 47, 54, 32.57529 + 66, 79, 70, 75, 76, 71, 74, 81, 76, 68, 63, 56, 52, 52, 53, 57, 32.57530 + 58, 52, 47, 47, 51, 55, 57, 62, 65, 62, 64, 68, 71, 72, 68, 63, 32.57531 + 58, 49, 54, 58, 55, 53, 54, 56, 51, 36, 40, 45, 51, 54, 57, 56, 32.57532 + 57, 64, 62, 62, 60, 60, 56, 54, 50, 52, 54, 53, 54, 53, 50, 45, 32.57533 + 42, 53, 58, 63, 62, 65, 72, 78, 81, 66, 73, 79, 81, 84, 85, 80, 32.57534 + 74, 72, 70, 65, 64, 70, 73, 67, 57, 53, 44, 37, 36, 37, 36, 28, 32.57535 + 20, 20, 21, 21, 26, 78, 110, 99, 255, 255, 255, 255, 255, 255, 255, 198, 32.57536 + 90, 94, 90, 81, 90, 99, 101, 87, 73, 70, 72, 73, 75, 79, 70, 54, 32.57537 + 50, 60, 68, 67, 80, 72, 76, 78, 73, 77, 83, 78, 75, 70, 62, 56, 32.57538 + 55, 58, 63, 64, 58, 59, 59, 58, 62, 69, 73, 71, 73, 73, 74, 76, 32.57539 + 78, 77, 74, 70, 68, 73, 74, 70, 67, 68, 69, 68, 61, 64, 69, 72, 32.57540 + 72, 70, 67, 62, 72, 67, 65, 62, 63, 61, 58, 55, 56, 54, 53, 54, 32.57541 + 54, 51, 46, 43, 48, 56, 63, 61, 61, 68, 77, 83, 88, 80, 74, 77, 32.57542 + 85, 91, 97, 103, 99, 97, 90, 83, 82, 81, 73, 64, 56, 44, 38, 41, 32.57543 + 40, 33, 27, 27, 24, 15, 23, 23, 96, 107, 101, 255, 255, 255, 255, 255, 32.57544 + 255, 255, 85, 79, 82, 84, 79, 87, 99, 96, 74, 70, 84, 86, 71, 71, 32.57545 + 85, 74, 44, 42, 71, 82, 69, 76, 71, 76, 79, 75, 78, 83, 78, 79, 32.57546 + 73, 65, 57, 57, 61, 64, 66, 64, 68, 65, 60, 61, 70, 71, 67, 72, 32.57547 + 71, 70, 73, 76, 77, 75, 72, 72, 76, 76, 70, 67, 69, 73, 73, 71, 32.57548 + 69, 69, 68, 68, 65, 65, 65, 67, 61, 58, 56, 59, 61, 61, 60, 57, 32.57549 + 56, 54, 52, 53, 51, 49, 45, 41, 52, 59, 56, 55, 60, 72, 81, 92, 32.57550 + 78, 70, 77, 87, 91, 98, 107, 110, 109, 102, 92, 87, 82, 74, 66, 63, 32.57551 + 50, 46, 51, 45, 33, 30, 37, 29, 12, 24, 19, 105, 105, 105, 255, 255, 32.57552 + 255, 255, 255, 255, 255, 79, 84, 79, 81, 89, 89, 107, 102, 67, 87, 73, 32.57553 + 79, 91, 78, 78, 72, 60, 62, 76, 78, 68, 83, 77, 74, 73, 77, 79, 32.57554 + 82, 82, 83, 77, 75, 72, 70, 66, 67, 73, 64, 69, 73, 75, 77, 81, 32.57555 + 80, 79, 77, 76, 75, 76, 78, 80, 79, 78, 82, 82, 82, 82, 82, 80, 32.57556 + 75, 70, 69, 68, 68, 69, 70, 66, 61, 56, 60, 63, 65, 64, 65, 64, 32.57557 + 59, 54, 58, 57, 60, 61, 57, 49, 47, 50, 52, 50, 56, 56, 45, 47, 32.57558 + 65, 78, 83, 88, 82, 70, 75, 90, 96, 89, 116, 112, 111, 111, 111, 98, 32.57559 + 76, 59, 60, 58, 50, 41, 37, 39, 35, 27, 27, 46, 19, 22, 88, 112, 32.57560 + 98, 161, 255, 255, 255, 255, 255, 73, 78, 82, 80, 81, 85, 88, 86, 85, 32.57561 + 75, 103, 91, 92, 97, 80, 68, 64, 71, 81, 85, 88, 89, 86, 85, 83, 32.57562 + 84, 87, 88, 89, 87, 83, 79, 77, 78, 75, 70, 72, 75, 70, 75, 80, 32.57563 + 81, 86, 91, 91, 88, 84, 83, 82, 83, 83, 84, 83, 82, 84, 83, 82, 32.57564 + 80, 82, 78, 76, 71, 73, 70, 68, 67, 68, 67, 63, 60, 56, 59, 59, 32.57565 + 59, 60, 65, 64, 62, 55, 55, 57, 60, 57, 50, 49, 51, 56, 49, 52, 32.57566 + 51, 43, 46, 61, 69, 78, 85, 84, 76, 76, 85, 91, 91, 102, 110, 118, 32.57567 + 118, 110, 96, 86, 81, 57, 58, 54, 46, 40, 40, 35, 28, 26, 40, 20, 32.57568 + 26, 81, 107, 102, 113, 255, 255, 255, 255, 197, 81, 83, 85, 86, 86, 84, 32.57569 + 85, 68, 72, 86, 114, 107, 105, 99, 84, 63, 65, 90, 104, 97, 97, 107, 32.57570 + 83, 83, 85, 87, 89, 89, 88, 84, 83, 78, 77, 79, 80, 76, 75, 77, 32.57571 + 77, 83, 88, 88, 91, 95, 94, 93, 90, 89, 86, 87, 89, 90, 87, 85, 32.57572 + 87, 85, 83, 81, 82, 80, 78, 75, 77, 74, 70, 68, 68, 68, 67, 66, 32.57573 + 67, 67, 64, 60, 60, 64, 63, 59, 55, 54, 57, 58, 56, 50, 50, 54, 32.57574 + 60, 49, 49, 48, 42, 45, 55, 57, 74, 81, 86, 85, 82, 80, 84, 89, 32.57575 + 90, 88, 89, 94, 99, 93, 79, 66, 57, 60, 58, 51, 42, 38, 34, 29, 32.57576 + 23, 28, 20, 28, 67, 98, 105, 109, 255, 255, 255, 255, 83, 88, 83, 82, 32.57577 + 86, 86, 80, 79, 70, 82, 97, 107, 109, 110, 97, 78, 68, 79, 103, 115, 32.57578 + 105, 100, 108, 95, 91, 93, 93, 96, 96, 96, 92, 85, 78, 76, 78, 81, 32.57579 + 79, 79, 81, 83, 87, 91, 90, 90, 92, 90, 88, 91, 90, 87, 88, 89, 32.57580 + 90, 87, 86, 90, 87, 83, 82, 82, 81, 80, 78, 78, 76, 74, 72, 70, 32.57581 + 69, 68, 67, 73, 73, 69, 63, 62, 64, 62, 57, 57, 54, 56, 58, 56, 32.57582 + 50, 51, 53, 62, 51, 49, 48, 39, 39, 48, 52, 71, 77, 87, 94, 92, 32.57583 + 82, 78, 81, 100, 96, 95, 100, 106, 102, 89, 78, 66, 67, 64, 55, 42, 32.57584 + 35, 32, 31, 21, 19, 19, 29, 52, 86, 106, 104, 255, 255, 255, 255, 82, 32.57585 + 84, 75, 72, 77, 79, 73, 72, 88, 105, 106, 96, 108, 112, 101, 63, 76, 32.57586 + 97, 110, 113, 108, 103, 102, 95, 92, 90, 89, 92, 93, 96, 93, 90, 81, 32.57587 + 79, 80, 83, 83, 86, 89, 82, 87, 90, 88, 89, 90, 90, 86, 93, 91, 32.57588 + 90, 91, 90, 91, 88, 86, 90, 87, 84, 83, 81, 80, 79, 77, 73, 74, 32.57589 + 75, 74, 73, 70, 67, 65, 64, 66, 66, 64, 66, 69, 67, 61, 61, 57, 32.57590 + 58, 57, 53, 47, 48, 52, 61, 54, 56, 53, 40, 37, 46, 52, 70, 75, 32.57591 + 86, 98, 102, 91, 79, 75, 70, 85, 97, 94, 82, 74, 80, 89, 79, 76, 32.57592 + 69, 58, 44, 35, 34, 36, 26, 19, 21, 28, 44, 80, 106, 103, 255, 255, 32.57593 + 255, 195, 80, 80, 71, 69, 75, 78, 75, 73, 105, 115, 110, 98, 115, 111, 32.57594 + 104, 55, 83, 109, 114, 110, 111, 109, 103, 95, 91, 88, 88, 88, 92, 93, 32.57595 + 92, 97, 85, 83, 85, 88, 88, 91, 93, 80, 85, 89, 90, 91, 95, 96, 32.57596 + 92, 97, 96, 95, 95, 94, 94, 93, 89, 90, 87, 85, 84, 82, 81, 79, 32.57597 + 77, 73, 75, 77, 76, 75, 70, 66, 65, 64, 66, 65, 63, 64, 66, 63, 32.57598 + 56, 61, 59, 57, 57, 53, 47, 48, 51, 58, 53, 58, 59, 43, 39, 49, 32.57599 + 53, 67, 74, 86, 97, 104, 100, 90, 81, 79, 88, 97, 96, 90, 86, 91, 32.57600 + 98, 83, 75, 66, 58, 46, 39, 38, 41, 35, 27, 24, 26, 42, 78, 104, 32.57601 + 105, 255, 255, 255, 73, 72, 72, 71, 73, 77, 81, 82, 84, 109, 101, 108, 32.57602 + 113, 125, 99, 94, 67, 90, 112, 115, 111, 113, 112, 108, 105, 103, 102, 101, 32.57603 + 104, 106, 105, 102, 96, 87, 85, 90, 96, 94, 90, 89, 83, 88, 92, 92, 32.57604 + 97, 100, 100, 96, 101, 102, 98, 99, 100, 98, 96, 93, 91, 89, 87, 87, 32.57605 + 85, 83, 78, 75, 76, 78, 79, 76, 74, 70, 68, 69, 73, 73, 69, 64, 32.57606 + 62, 64, 62, 56, 60, 56, 56, 57, 54, 48, 48, 54, 60, 53, 58, 63, 32.57607 + 52, 49, 55, 54, 61, 75, 86, 91, 99, 106, 105, 99, 93, 85, 78, 77, 32.57608 + 82, 80, 73, 64, 69, 60, 53, 51, 45, 40, 39, 42, 41, 35, 22, 19, 32.57609 + 40, 74, 97, 104, 152, 255, 76, 63, 60, 61, 66, 72, 76, 80, 83, 97, 32.57610 + 107, 83, 103, 124, 129, 83, 78, 83, 96, 112, 115, 114, 113, 112, 112, 92, 32.57611 + 91, 92, 93, 96, 94, 94, 89, 91, 85, 85, 92, 98, 94, 87, 83, 88, 32.57612 + 92, 95, 94, 97, 100, 98, 94, 103, 101, 100, 100, 101, 99, 97, 96, 91, 32.57613 + 90, 89, 90, 88, 85, 81, 77, 80, 81, 82, 77, 72, 69, 71, 73, 72, 32.57614 + 72, 68, 63, 65, 71, 73, 70, 61, 57, 57, 59, 56, 52, 52, 56, 62, 32.57615 + 52, 58, 64, 61, 60, 59, 54, 54, 76, 88, 86, 92, 110, 119, 117, 119, 32.57616 + 115, 107, 96, 84, 73, 66, 61, 51, 43, 39, 43, 42, 39, 36, 38, 45, 32.57617 + 38, 19, 12, 37, 70, 90, 99, 104, 255, 75, 71, 69, 70, 72, 71, 75, 32.57618 + 86, 95, 97, 80, 93, 113, 115, 109, 93, 60, 89, 106, 105, 104, 100, 100, 32.57619 + 113, 105, 85, 95, 98, 90, 89, 92, 89, 79, 81, 77, 80, 87, 99, 102, 32.57620 + 89, 71, 91, 87, 89, 95, 98, 97, 97, 100, 106, 105, 103, 102, 106, 108, 32.57621 + 110, 108, 97, 96, 95, 95, 95, 93, 89, 86, 81, 82, 83, 82, 80, 77, 32.57622 + 73, 71, 78, 68, 56, 49, 46, 50, 62, 75, 67, 62, 57, 57, 59, 58, 32.57623 + 52, 47, 57, 65, 71, 70, 64, 59, 59, 62, 54, 67, 81, 90, 97, 106, 32.57624 + 115, 120, 137, 135, 122, 100, 86, 79, 65, 51, 47, 46, 44, 39, 36, 35, 32.57625 + 36, 38, 38, 34, 44, 21, 20, 71, 100, 96, 99, 76, 64, 78, 77, 82, 32.57626 + 85, 86, 81, 83, 85, 68, 75, 91, 124, 104, 108, 91, 78, 83, 102, 108, 32.57627 + 115, 112, 103, 108, 96, 103, 109, 106, 95, 92, 98, 100, 95, 88, 85, 83, 32.57628 + 83, 88, 95, 95, 89, 93, 89, 92, 98, 102, 102, 102, 105, 109, 111, 115, 32.57629 + 117, 120, 119, 115, 109, 100, 97, 94, 90, 89, 87, 85, 82, 83, 84, 84, 32.57630 + 83, 80, 77, 73, 71, 79, 71, 63, 57, 53, 53, 61, 70, 68, 64, 58, 32.57631 + 57, 59, 59, 57, 54, 56, 63, 72, 70, 63, 60, 66, 73, 67, 69, 79, 32.57632 + 95, 99, 95, 100, 112, 110, 111, 104, 95, 86, 79, 68, 58, 56, 49, 45, 32.57633 + 41, 42, 41, 40, 38, 27, 28, 45, 24, 27, 77, 102, 101, 104, 86, 80, 32.57634 + 76, 74, 81, 87, 90, 83, 81, 82, 66, 86, 94, 134, 97, 105, 78, 75, 32.57635 + 92, 101, 100, 107, 104, 96, 105, 101, 99, 104, 102, 92, 88, 93, 94, 90, 32.57636 + 96, 96, 95, 87, 83, 86, 91, 93, 92, 88, 92, 98, 104, 104, 106, 108, 32.57637 + 115, 119, 122, 124, 125, 122, 117, 110, 109, 103, 97, 92, 90, 89, 87, 85, 32.57638 + 89, 89, 89, 87, 85, 81, 78, 76, 78, 73, 69, 66, 62, 59, 62, 68, 32.57639 + 69, 66, 61, 58, 56, 56, 56, 56, 57, 63, 71, 68, 62, 62, 69, 79, 32.57640 + 70, 64, 76, 101, 108, 96, 97, 112, 104, 103, 102, 101, 92, 79, 68, 63, 32.57641 + 66, 55, 48, 44, 47, 45, 41, 34, 25, 30, 46, 28, 35, 81, 100, 99, 32.57642 + 102, 77, 73, 84, 77, 79, 84, 86, 80, 80, 84, 86, 101, 103, 132, 105, 32.57643 + 101, 68, 60, 97, 101, 96, 102, 99, 91, 103, 103, 98, 105, 108, 104, 101, 32.57644 + 99, 95, 88, 89, 94, 99, 95, 90, 90, 91, 90, 87, 84, 88, 96, 102, 32.57645 + 104, 106, 111, 116, 114, 113, 112, 113, 111, 109, 107, 112, 107, 102, 97, 97, 32.57646 + 93, 91, 89, 92, 91, 90, 88, 86, 82, 79, 78, 78, 75, 73, 72, 68, 32.57647 + 64, 65, 70, 70, 70, 65, 60, 54, 51, 50, 51, 61, 63, 68, 67, 65, 32.57648 + 64, 67, 71, 72, 70, 82, 107, 117, 107, 102, 107, 115, 111, 109, 111, 101, 32.57649 + 84, 74, 75, 72, 63, 56, 50, 49, 44, 39, 33, 28, 30, 39, 26, 45, 32.57650 + 91, 103, 101, 101, 79, 80, 96, 87, 88, 93, 92, 82, 81, 86, 94, 108, 32.57651 + 118, 125, 113, 91, 70, 65, 91, 102, 102, 112, 108, 94, 95, 84, 95, 101, 32.57652 + 105, 104, 100, 98, 93, 88, 80, 84, 92, 94, 96, 99, 98, 93, 86, 83, 32.57653 + 88, 96, 103, 105, 108, 113, 110, 110, 110, 112, 115, 115, 114, 113, 110, 107, 32.57654 + 106, 104, 106, 102, 99, 96, 93, 92, 90, 87, 84, 81, 79, 77, 85, 81, 32.57655 + 77, 75, 70, 64, 65, 70, 68, 68, 64, 60, 55, 51, 49, 49, 62, 60, 32.57656 + 63, 66, 69, 69, 65, 62, 77, 83, 94, 109, 118, 115, 102, 91, 111, 105, 32.57657 + 102, 106, 100, 88, 82, 85, 74, 69, 66, 58, 51, 43, 40, 38, 32, 29, 32.57658 + 29, 19, 54, 103, 109, 109, 108, 90, 96, 83, 79, 88, 99, 99, 87, 87, 32.57659 + 96, 98, 121, 135, 122, 105, 71, 65, 76, 89, 101, 97, 98, 93, 86, 89, 32.57660 + 74, 93, 94, 94, 92, 90, 89, 90, 90, 92, 91, 91, 89, 92, 96, 95, 32.57661 + 89, 89, 87, 91, 100, 107, 109, 112, 118, 114, 118, 125, 133, 138, 137, 133, 32.57662 + 127, 113, 113, 115, 115, 117, 117, 114, 109, 102, 101, 99, 96, 92, 89, 87, 32.57663 + 86, 93, 88, 83, 79, 72, 65, 64, 68, 66, 65, 60, 58, 56, 55, 54, 32.57664 + 54, 59, 58, 62, 66, 70, 70, 65, 61, 73, 80, 89, 102, 116, 120, 108, 32.57665 + 92, 102, 95, 88, 87, 83, 78, 73, 71, 69, 67, 66, 59, 52, 45, 45, 32.57666 + 44, 46, 40, 31, 19, 57, 102, 102, 104, 110, 79, 86, 74, 71, 82, 93, 32.57667 + 92, 81, 87, 103, 106, 132, 129, 120, 91, 68, 54, 76, 83, 97, 88, 80, 32.57668 + 80, 87, 97, 80, 97, 98, 99, 99, 97, 96, 97, 98, 100, 98, 97, 92, 32.57669 + 90, 92, 90, 85, 92, 90, 94, 103, 110, 112, 115, 121, 122, 128, 135, 141, 32.57670 + 145, 141, 135, 129, 118, 117, 117, 119, 122, 124, 123, 120, 114, 110, 107, 104, 32.57671 + 100, 98, 96, 95, 92, 89, 87, 85, 79, 71, 69, 72, 73, 67, 57, 54, 32.57672 + 55, 58, 60, 60, 62, 63, 68, 68, 66, 64, 64, 65, 75, 71, 76, 97, 32.57673 + 116, 120, 114, 107, 96, 91, 80, 72, 70, 69, 59, 48, 56, 53, 53, 51, 32.57674 + 50, 48, 47, 44, 49, 47, 39, 24, 60, 98, 96, 104, 108, 88, 99, 92, 32.57675 + 83, 86, 88, 80, 68, 80, 101, 109, 131, 105, 113, 83, 82, 54, 76, 65, 32.57676 + 91, 93, 91, 95, 105, 109, 83, 81, 85, 91, 96, 95, 90, 86, 85, 86, 32.57677 + 91, 98, 97, 96, 97, 95, 91, 93, 90, 95, 103, 110, 113, 115, 121, 126, 32.57678 + 127, 124, 124, 124, 123, 117, 114, 114, 112, 110, 110, 114, 117, 119, 117, 113, 32.57679 + 109, 106, 102, 99, 96, 94, 94, 86, 85, 87, 89, 86, 79, 76, 79, 84, 32.57680 + 73, 58, 52, 54, 59, 61, 62, 67, 71, 77, 70, 61, 56, 60, 67, 92, 32.57681 + 73, 71, 97, 116, 113, 108, 113, 89, 87, 76, 67, 68, 72, 61, 43, 44, 32.57682 + 38, 37, 40, 46, 48, 46, 40, 33, 40, 38, 26, 63, 102, 103, 119, 108, 32.57683 + 90, 82, 70, 86, 90, 87, 89, 74, 78, 109, 119, 121, 109, 117, 88, 75, 32.57684 + 56, 61, 81, 82, 89, 95, 96, 92, 86, 82, 90, 87, 87, 91, 93, 91, 32.57685 + 93, 96, 85, 87, 93, 94, 94, 93, 94, 95, 95, 95, 99, 104, 109, 113, 32.57686 + 113, 115, 131, 128, 122, 122, 124, 124, 117, 112, 109, 107, 105, 108, 114, 118, 32.57687 + 119, 117, 115, 112, 109, 104, 100, 97, 91, 86, 92, 91, 89, 85, 81, 79, 32.57688 + 79, 80, 80, 68, 58, 51, 47, 56, 64, 56, 71, 75, 78, 71, 65, 65, 32.57689 + 66, 66, 71, 87, 67, 102, 101, 110, 115, 106, 93, 79, 75, 64, 67, 75, 32.57690 + 57, 50, 42, 40, 41, 38, 38, 38, 42, 44, 44, 36, 38, 29, 57, 103, 32.57691 + 109, 109, 109, 90, 80, 68, 72, 66, 63, 75, 74, 85, 112, 106, 113, 109, 32.57692 + 103, 78, 64, 58, 64, 85, 84, 88, 90, 90, 86, 82, 79, 86, 85, 87, 32.57693 + 92, 94, 91, 90, 92, 90, 91, 96, 97, 97, 95, 96, 97, 90, 90, 94, 32.57694 + 98, 104, 109, 111, 114, 125, 124, 120, 119, 119, 114, 106, 99, 108, 107, 109, 32.57695 + 113, 119, 122, 121, 117, 113, 111, 108, 103, 98, 92, 85, 80, 91, 93, 93, 32.57696 + 91, 86, 82, 79, 78, 87, 74, 64, 57, 53, 62, 69, 61, 66, 71, 74, 32.57697 + 67, 62, 62, 63, 64, 94, 100, 80, 94, 91, 106, 102, 93, 108, 95, 89, 32.57698 + 71, 65, 69, 50, 44, 46, 43, 44, 41, 39, 37, 39, 39, 44, 38, 40, 32.57699 + 30, 55, 99, 108, 110, 113, 91, 82, 72, 65, 52, 51, 71, 81, 92, 107, 32.57700 + 96, 105, 109, 86, 69, 55, 64, 69, 83, 80, 83, 84, 85, 84, 82, 81, 32.57701 + 84, 83, 87, 93, 94, 90, 88, 88, 90, 91, 95, 96, 94, 93, 93, 94, 32.57702 + 91, 90, 91, 94, 99, 104, 108, 111, 118, 116, 116, 117, 117, 114, 106, 99, 32.57703 + 97, 99, 103, 106, 110, 111, 109, 105, 109, 108, 108, 106, 101, 94, 88, 85, 32.57704 + 91, 94, 97, 97, 93, 86, 81, 79, 92, 79, 68, 61, 57, 66, 72, 64, 32.57705 + 61, 66, 70, 63, 59, 60, 61, 62, 90, 93, 90, 86, 86, 110, 95, 88, 32.57706 + 100, 92, 92, 75, 67, 69, 53, 51, 48, 45, 45, 42, 40, 37, 35, 34, 32.57707 + 41, 38, 42, 29, 50, 93, 103, 108, 113, 87, 80, 79, 72, 65, 65, 80, 32.57708 + 90, 94, 95, 88, 95, 100, 65, 60, 47, 66, 65, 73, 72, 77, 82, 86, 32.57709 + 87, 87, 87, 86, 84, 86, 91, 92, 89, 88, 90, 87, 87, 91, 91, 89, 32.57710 + 87, 88, 88, 95, 92, 92, 93, 97, 102, 106, 109, 115, 115, 113, 113, 113, 32.57711 + 108, 103, 99, 103, 102, 105, 105, 109, 108, 106, 105, 97, 98, 101, 104, 102, 32.57712 + 96, 93, 93, 91, 94, 98, 98, 95, 90, 86, 85, 91, 77, 66, 59, 55, 32.57713 + 65, 70, 61, 60, 65, 69, 63, 59, 60, 63, 64, 72, 80, 100, 85, 86, 32.57714 + 110, 89, 84, 78, 79, 89, 79, 72, 72, 54, 51, 43, 40, 41, 40, 40, 32.57715 + 37, 35, 32, 36, 34, 39, 24, 42, 83, 95, 103, 106, 80, 76, 83, 80, 32.57716 + 81, 77, 81, 90, 94, 86, 84, 83, 81, 49, 51, 45, 62, 58, 66, 67, 32.57717 + 75, 83, 89, 91, 90, 89, 91, 87, 86, 89, 90, 88, 90, 93, 89, 89, 32.57718 + 92, 91, 88, 87, 88, 89, 92, 89, 89, 90, 95, 102, 107, 111, 117, 114, 32.57719 + 109, 105, 101, 96, 92, 90, 97, 95, 95, 92, 94, 92, 92, 93, 86, 86, 32.57720 + 90, 96, 94, 88, 88, 92, 91, 93, 95, 94, 93, 91, 91, 92, 89, 74, 32.57721 + 61, 55, 53, 64, 68, 58, 62, 67, 71, 65, 62, 63, 66, 66, 72, 84, 32.57722 + 110, 86, 83, 97, 83, 81, 70, 74, 90, 84, 77, 72, 46, 38, 36, 33, 32.57723 + 34, 35, 39, 38, 37, 34, 30, 29, 34, 18, 34, 75, 88, 96, 99, 196, 32.57724 + 81, 81, 80, 85, 76, 71, 82, 93, 82, 85, 78, 67, 49, 51, 52, 62, 32.57725 + 60, 69, 70, 77, 85, 89, 89, 87, 86, 93, 88, 86, 87, 88, 87, 91, 32.57726 + 95, 94, 93, 95, 94, 92, 91, 93, 94, 85, 83, 84, 88, 95, 102, 108, 32.57727 + 111, 110, 110, 106, 101, 100, 100, 101, 100, 90, 88, 87, 85, 83, 82, 84, 32.57728 + 86, 90, 88, 90, 95, 90, 82, 82, 89, 91, 92, 91, 90, 88, 89, 92, 32.57729 + 94, 88, 72, 60, 54, 54, 65, 70, 58, 63, 68, 73, 67, 63, 64, 67, 32.57730 + 67, 77, 87, 104, 81, 81, 85, 91, 92, 68, 70, 84, 83, 82, 79, 50, 32.57731 + 36, 33, 29, 29, 31, 37, 38, 38, 34, 28, 26, 30, 14, 31, 72, 85, 32.57732 + 93, 97, 255, 88, 76, 77, 86, 77, 66, 80, 91, 74, 79, 71, 55, 54, 32.57733 + 49, 56, 60, 67, 74, 73, 77, 82, 85, 85, 85, 84, 91, 87, 86, 88, 32.57734 + 88, 87, 88, 92, 92, 91, 93, 92, 90, 90, 92, 94, 87, 85, 87, 90, 32.57735 + 96, 103, 108, 110, 108, 108, 108, 105, 104, 104, 105, 104, 96, 98, 100, 98, 32.57736 + 96, 94, 96, 98, 98, 93, 94, 96, 89, 79, 80, 89, 91, 91, 90, 88, 32.57737 + 86, 85, 87, 89, 87, 71, 58, 54, 55, 67, 71, 59, 63, 68, 72, 66, 32.57738 + 61, 62, 64, 65, 73, 81, 86, 77, 88, 79, 100, 94, 71, 65, 72, 71, 32.57739 + 79, 84, 58, 44, 38, 32, 30, 30, 35, 36, 35, 32, 31, 27, 29, 14, 32.57740 + 33, 75, 87, 94, 97, 255, 85, 73, 76, 91, 86, 72, 83, 89, 64, 66, 32.57741 + 59, 43, 54, 40, 51, 53, 69, 73, 73, 75, 78, 81, 83, 85, 86, 87, 32.57742 + 85, 85, 89, 89, 86, 86, 88, 85, 84, 87, 86, 84, 84, 87, 89, 95, 32.57743 + 93, 92, 93, 99, 101, 105, 106, 116, 116, 114, 108, 101, 95, 91, 87, 84, 32.57744 + 89, 93, 94, 92, 90, 90, 91, 96, 91, 90, 92, 85, 74, 76, 88, 90, 32.57745 + 91, 91, 88, 85, 82, 83, 83, 85, 69, 56, 52, 54, 67, 71, 59, 62, 32.57746 + 66, 68, 63, 59, 60, 62, 62, 68, 76, 75, 77, 93, 71, 94, 76, 80, 32.57747 + 66, 64, 59, 71, 79, 57, 43, 42, 36, 32, 30, 34, 36, 33, 29, 36, 32.57748 + 31, 30, 16, 36, 79, 92, 96, 98, 255, 73, 66, 76, 83, 78, 71, 70, 32.57749 + 71, 69, 46, 48, 53, 53, 53, 53, 59, 59, 58, 59, 66, 71, 74, 77, 32.57750 + 79, 81, 81, 86, 90, 91, 88, 86, 87, 89, 85, 85, 85, 85, 85, 85, 32.57751 + 85, 85, 88, 87, 87, 90, 96, 101, 106, 108, 115, 104, 98, 99, 94, 80, 32.57752 + 79, 89, 89, 91, 92, 94, 93, 93, 91, 92, 94, 101, 102, 96, 91, 90, 32.57753 + 90, 88, 88, 91, 94, 91, 86, 83, 86, 90, 82, 81, 59, 58, 49, 69, 32.57754 + 63, 60, 59, 70, 73, 65, 59, 61, 68, 72, 72, 68, 65, 66, 67, 68, 32.57755 + 74, 83, 78, 66, 70, 69, 54, 50, 52, 37, 41, 34, 32, 35, 39, 37, 32.57756 + 31, 26, 22, 33, 47, 32, 39, 75, 88, 101, 94, 255, 255, 71, 77, 84, 32.57757 + 81, 73, 62, 57, 56, 48, 50, 50, 50, 54, 58, 63, 63, 56, 58, 65, 32.57758 + 70, 73, 75, 77, 79, 76, 77, 79, 83, 87, 90, 91, 91, 86, 86, 87, 32.57759 + 87, 87, 86, 86, 85, 89, 87, 85, 85, 86, 89, 91, 93, 101, 96, 94, 32.57760 + 98, 95, 90, 90, 97, 102, 103, 103, 104, 104, 100, 98, 99, 86, 93, 94, 32.57761 + 90, 86, 86, 86, 83, 84, 87, 88, 86, 82, 81, 82, 84, 77, 77, 59, 32.57762 + 58, 52, 70, 61, 56, 58, 66, 73, 68, 62, 63, 66, 66, 69, 68, 67, 32.57763 + 65, 66, 69, 71, 70, 63, 56, 57, 60, 58, 60, 63, 56, 47, 40, 34, 32.57764 + 35, 40, 41, 39, 36, 35, 38, 43, 27, 35, 70, 85, 97, 101, 255, 255, 32.57765 + 72, 73, 81, 84, 76, 55, 44, 43, 50, 49, 47, 48, 55, 63, 68, 67, 32.57766 + 59, 60, 66, 71, 74, 76, 78, 80, 77, 75, 75, 81, 90, 95, 94, 92, 32.57767 + 91, 92, 93, 93, 93, 91, 89, 88, 91, 89, 86, 84, 83, 83, 85, 88, 32.57768 + 93, 95, 96, 97, 97, 99, 99, 101, 92, 92, 93, 91, 90, 87, 85, 83, 32.57769 + 84, 89, 91, 88, 86, 87, 86, 83, 81, 81, 81, 80, 79, 78, 78, 80, 32.57770 + 71, 72, 56, 58, 54, 73, 61, 53, 58, 64, 72, 71, 67, 66, 63, 60, 32.57771 + 65, 69, 67, 63, 65, 70, 67, 56, 73, 70, 60, 55, 63, 62, 58, 60, 32.57772 + 45, 40, 36, 35, 39, 42, 39, 34, 34, 35, 44, 36, 49, 81, 86, 93, 32.57773 + 104, 255, 255, 193, 65, 74, 85, 80, 55, 41, 40, 50, 48, 47, 51, 60, 32.57774 + 68, 71, 68, 61, 62, 68, 73, 75, 77, 79, 81, 79, 80, 82, 88, 92, 32.57775 + 94, 91, 88, 89, 90, 91, 92, 91, 89, 87, 86, 88, 88, 87, 86, 86, 32.57776 + 88, 91, 96, 99, 104, 104, 100, 98, 101, 99, 95, 95, 93, 93, 93, 91, 32.57777 + 89, 87, 86, 88, 92, 93, 90, 89, 90, 89, 85, 84, 82, 80, 79, 80, 32.57778 + 79, 78, 78, 72, 74, 58, 61, 56, 74, 62, 55, 60, 64, 68, 70, 68, 32.57779 + 65, 61, 57, 61, 70, 67, 58, 62, 70, 63, 49, 83, 84, 66, 57, 67, 32.57780 + 63, 51, 55, 43, 41, 39, 39, 40, 41, 34, 25, 29, 24, 36, 35, 53, 32.57781 + 84, 88, 97, 132, 255, 255, 255, 62, 71, 84, 82, 60, 46, 44, 50, 50, 32.57782 + 51, 56, 66, 71, 70, 65, 61, 61, 67, 72, 74, 76, 78, 79, 75, 82, 32.57783 + 90, 94, 93, 90, 87, 86, 84, 85, 85, 86, 85, 84, 82, 81, 84, 86, 32.57784 + 87, 87, 87, 90, 95, 101, 104, 109, 107, 100, 96, 97, 95, 88, 98, 99, 32.57785 + 97, 97, 97, 97, 97, 96, 93, 95, 94, 89, 88, 90, 88, 84, 85, 83, 32.57786 + 81, 80, 80, 79, 76, 76, 75, 78, 62, 62, 55, 74, 63, 58, 63, 63, 32.57787 + 64, 66, 64, 62, 61, 59, 63, 71, 69, 58, 61, 70, 66, 54, 67, 72, 32.57788 + 58, 53, 68, 65, 56, 62, 50, 48, 41, 35, 35, 39, 32, 25, 33, 21, 32.57789 + 25, 20, 36, 65, 75, 91, 218, 255, 255, 255, 255, 72, 81, 83, 68, 55, 32.57790 + 50, 53, 55, 57, 62, 67, 70, 68, 63, 60, 60, 66, 70, 72, 74, 76, 32.57791 + 77, 71, 80, 90, 94, 92, 88, 86, 86, 88, 88, 88, 88, 88, 88, 88, 32.57792 + 88, 85, 87, 88, 87, 85, 86, 91, 98, 102, 102, 100, 98, 94, 92, 92, 32.57793 + 92, 96, 97, 97, 96, 97, 98, 99, 99, 100, 100, 96, 91, 91, 94, 93, 32.57794 + 89, 86, 85, 84, 81, 78, 75, 74, 75, 77, 84, 71, 68, 56, 71, 64, 32.57795 + 60, 61, 60, 61, 61, 60, 55, 57, 63, 69, 72, 70, 62, 60, 64, 64, 32.57796 + 58, 51, 53, 48, 46, 54, 56, 55, 58, 54, 47, 35, 26, 27, 38, 39, 32.57797 + 32, 33, 26, 38, 36, 40, 51, 49, 64, 255, 255, 255, 255, 255, 74, 78, 32.57798 + 83, 78, 69, 60, 58, 61, 63, 64, 65, 66, 66, 63, 62, 64, 70, 74, 32.57799 + 76, 78, 79, 81, 79, 83, 89, 93, 94, 93, 91, 90, 96, 95, 94, 94, 32.57800 + 94, 96, 98, 100, 95, 97, 98, 94, 90, 89, 94, 98, 100, 93, 92, 96, 32.57801 + 97, 93, 95, 102, 110, 110, 110, 108, 109, 111, 112, 112, 103, 102, 96, 90, 32.57802 + 92, 97, 98, 95, 90, 91, 90, 86, 79, 74, 74, 77, 77, 87, 78, 74, 32.57803 + 57, 67, 59, 59, 55, 56, 60, 61, 58, 51, 55, 62, 67, 70, 71, 66, 32.57804 + 59, 54, 55, 56, 50, 44, 46, 44, 37, 42, 49, 48, 48, 45, 37, 31, 32.57805 + 36, 52, 55, 48, 37, 35, 51, 48, 42, 41, 37, 55, 255, 255, 255, 255, 32.57806 + 255, 195, 75, 83, 87, 81, 70, 63, 66, 66, 64, 62, 62, 64, 65, 69, 32.57807 + 69, 75, 79, 81, 82, 84, 85, 92, 90, 88, 91, 95, 97, 94, 91, 94, 32.57808 + 93, 91, 90, 91, 94, 98, 100, 104, 106, 106, 102, 97, 96, 100, 105, 103, 32.57809 + 92, 90, 100, 101, 95, 99, 112, 110, 109, 109, 109, 110, 108, 111, 110, 100, 32.57810 + 95, 91, 83, 88, 94, 99, 94, 96, 97, 99, 91, 84, 76, 78, 81, 74, 32.57811 + 89, 83, 81, 60, 66, 57, 55, 50, 53, 60, 63, 58, 50, 54, 62, 64, 32.57812 + 66, 68, 66, 56, 44, 44, 49, 50, 39, 44, 42, 27, 32, 50, 45, 43, 32.57813 + 47, 48, 50, 59, 72, 70, 59, 49, 38, 41, 29, 19, 27, 42, 77, 255, 32.57814 + 255, 255, 255, 255, 255, 195, 82, 85, 79, 68, 71, 57, 65, 62, 63, 73, 32.57815 + 65, 60, 68, 66, 70, 75, 80, 86, 89, 92, 91, 90, 90, 90, 90, 91, 32.57816 + 92, 92, 85, 91, 93, 91, 92, 98, 103, 104, 102, 106, 109, 105, 98, 96, 32.57817 + 100, 106, 101, 90, 89, 99, 101, 95, 101, 116, 118, 118, 115, 113, 117, 119, 32.57818 + 116, 106, 106, 99, 97, 95, 96, 92, 96, 99, 95, 95, 98, 91, 84, 74, 32.57819 + 75, 78, 78, 91, 90, 91, 65, 50, 58, 51, 65, 46, 61, 57, 59, 61, 32.57820 + 46, 63, 70, 70, 70, 64, 56, 49, 47, 48, 39, 35, 37, 35, 30, 37, 32.57821 + 43, 31, 37, 40, 53, 70, 80, 78, 65, 53, 41, 46, 35, 23, 23, 33, 32.57822 + 57, 85, 255, 255, 255, 255, 255, 255, 255, 79, 80, 75, 66, 72, 63, 67, 32.57823 + 62, 70, 78, 64, 65, 71, 69, 73, 78, 82, 86, 89, 90, 85, 85, 85, 32.57824 + 87, 91, 94, 96, 96, 95, 97, 97, 96, 99, 105, 105, 101, 95, 97, 97, 32.57825 + 95, 91, 92, 97, 102, 100, 89, 89, 101, 105, 99, 102, 114, 118, 115, 112, 32.57826 + 111, 111, 112, 113, 114, 109, 104, 101, 102, 100, 98, 99, 103, 105, 89, 82, 32.57827 + 89, 89, 77, 69, 71, 90, 52, 97, 91, 60, 70, 53, 61, 62, 50, 57, 32.57828 + 58, 58, 53, 47, 57, 68, 67, 65, 66, 68, 59, 43, 31, 12, 18, 28, 32.57829 + 31, 31, 38, 46, 40, 54, 57, 67, 76, 76, 70, 64, 61, 53, 50, 32, 32.57830 + 22, 31, 46, 69, 94, 255, 255, 255, 255, 255, 255, 255, 255, 85, 82, 76, 32.57831 + 74, 72, 67, 57, 73, 77, 56, 64, 72, 72, 76, 80, 84, 86, 87, 88, 32.57832 + 91, 90, 90, 93, 98, 102, 104, 104, 102, 102, 101, 100, 104, 108, 104, 96, 32.57833 + 96, 94, 91, 90, 91, 95, 101, 104, 95, 85, 87, 101, 109, 105, 105, 110, 32.57834 + 116, 112, 112, 113, 107, 101, 107, 118, 115, 111, 109, 109, 108, 103, 103, 106, 32.57835 + 97, 91, 86, 82, 76, 70, 68, 73, 93, 56, 83, 68, 65, 78, 50, 52, 32.57836 + 57, 56, 51, 59, 58, 45, 51, 54, 72, 70, 62, 56, 49, 37, 20, 10, 32.57837 + 19, 28, 37, 42, 46, 53, 59, 57, 72, 71, 76, 77, 68, 60, 62, 71, 32.57838 + 66, 56, 33, 20, 32, 52, 75, 97, 255, 255, 255, 255, 255, 255, 255, 255, 32.57839 + 203, 99, 98, 83, 84, 69, 51, 70, 70, 43, 59, 72, 72, 75, 79, 81, 32.57840 + 82, 82, 81, 95, 93, 91, 93, 97, 100, 100, 98, 95, 98, 99, 98, 99, 32.57841 + 100, 96, 90, 98, 92, 86, 85, 89, 95, 100, 101, 92, 82, 84, 100, 110, 32.57842 + 107, 103, 102, 109, 106, 111, 115, 105, 88, 93, 107, 114, 111, 109, 111, 109, 32.57843 + 104, 103, 105, 87, 97, 97, 85, 78, 79, 74, 63, 53, 75, 68, 60, 80, 32.57844 + 63, 61, 47, 47, 56, 44, 60, 61, 45, 61, 55, 67, 65, 55, 34, 16, 32.57845 + 9, 16, 25, 42, 49, 49, 49, 61, 70, 72, 74, 75, 67, 67, 67, 59, 32.57846 + 50, 60, 76, 74, 70, 47, 28, 32, 46, 70, 255, 255, 255, 255, 255, 255, 32.57847 + 255, 255, 255, 255, 107, 108, 98, 98, 79, 55, 68, 65, 40, 57, 74, 73, 32.57848 + 75, 77, 79, 79, 79, 79, 88, 84, 81, 82, 85, 87, 85, 83, 82, 91, 32.57849 + 98, 96, 93, 93, 93, 93, 96, 89, 81, 79, 83, 89, 93, 94, 91, 81, 32.57850 + 83, 96, 107, 105, 99, 94, 96, 97, 107, 113, 100, 76, 72, 82, 85, 82, 32.57851 + 83, 87, 88, 86, 87, 90, 116, 108, 100, 94, 86, 76, 72, 76, 80, 61, 32.57852 + 70, 75, 74, 51, 77, 59, 42, 52, 41, 58, 63, 50, 63, 56, 44, 41, 32.57853 + 31, 18, 11, 21, 42, 61, 57, 60, 47, 42, 60, 70, 69, 75, 69, 55, 32.57854 + 52, 58, 57, 50, 60, 78, 80, 83, 67, 41, 31, 35, 60, 255, 255, 255, 32.57855 + 255, 255, 255, 255, 255, 255, 255, 202, 99, 107, 104, 92, 68, 69, 65, 45, 32.57856 + 59, 76, 74, 74, 75, 76, 77, 78, 78, 80, 74, 70, 70, 74, 76, 73, 32.57857 + 68, 68, 81, 92, 91, 88, 90, 95, 99, 98, 91, 84, 81, 84, 88, 91, 32.57858 + 93, 92, 84, 84, 93, 101, 100, 95, 90, 85, 87, 96, 99, 87, 66, 55, 32.57859 + 57, 52, 50, 53, 58, 63, 64, 69, 73, 71, 55, 62, 82, 86, 94, 157, 32.57860 + 234, 224, 59, 79, 77, 55, 63, 87, 60, 47, 49, 43, 53, 59, 53, 52, 32.57861 + 44, 26, 20, 11, 16, 31, 47, 58, 61, 78, 81, 61, 49, 65, 69, 62, 32.57862 + 69, 65, 46, 45, 60, 65, 57, 62, 78, 81, 83, 68, 42, 26, 27, 52, 32.57863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 96, 92, 94, 77, 32.57864 + 66, 62, 49, 56, 74, 72, 71, 71, 71, 73, 76, 77, 78, 71, 64, 63, 32.57865 + 65, 64, 59, 53, 53, 65, 75, 79, 82, 88, 95, 98, 98, 94, 89, 86, 32.57866 + 87, 91, 95, 95, 97, 90, 86, 90, 97, 95, 92, 88, 84, 84, 86, 83, 32.57867 + 77, 65, 52, 46, 51, 48, 51, 54, 59, 59, 65, 69, 89, 78, 81, 80, 32.57868 + 69, 73, 137, 210, 232, 76, 84, 67, 61, 69, 91, 68, 60, 49, 51, 47, 32.57869 + 50, 49, 28, 21, 20, 20, 20, 35, 53, 62, 58, 49, 77, 92, 79, 66, 32.57870 + 77, 72, 60, 70, 66, 49, 52, 72, 75, 58, 58, 74, 84, 79, 59, 36, 32.57871 + 32, 39, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 77, 32.57872 + 73, 89, 78, 59, 57, 48, 49, 72, 68, 66, 65, 65, 67, 71, 74, 75, 32.57873 + 67, 58, 53, 55, 51, 43, 36, 42, 50, 59, 66, 75, 86, 92, 91, 92, 32.57874 + 90, 85, 83, 83, 86, 91, 92, 103, 96, 91, 91, 94, 95, 91, 89, 90, 32.57875 + 87, 81, 73, 71, 68, 57, 46, 72, 68, 65, 69, 69, 71, 74, 79, 84, 32.57876 + 87, 83, 79, 81, 89, 87, 79, 67, 75, 92, 73, 90, 58, 94, 97, 74, 32.57877 + 53, 58, 43, 43, 45, 10, 2, 14, 25, 38, 53, 62, 66, 61, 56, 42, 32.57878 + 74, 74, 68, 83, 77, 67, 83, 68, 53, 60, 80, 79, 57, 54, 70, 96, 32.57879 + 82, 54, 39, 49, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57880 + 255, 195, 83, 83, 77, 93, 35, 36, 60, 28, 50, 84, 65, 60, 57, 67, 32.57881 + 53, 73, 62, 69, 66, 55, 54, 60, 61, 52, 61, 45, 51, 76, 72, 62, 32.57882 + 82, 82, 94, 67, 90, 73, 77, 84, 100, 87, 91, 98, 94, 89, 91, 87, 32.57883 + 79, 82, 76, 66, 60, 60, 61, 57, 49, 46, 38, 54, 36, 46, 66, 80, 32.57884 + 77, 28, 44, 53, 77, 86, 64, 86, 68, 70, 67, 71, 77, 86, 96, 94, 32.57885 + 78, 61, 36, 63, 34, 23, 27, 40, 11, 14, 31, 43, 56, 61, 64, 62, 32.57886 + 54, 44, 52, 43, 58, 73, 88, 93, 67, 55, 41, 46, 64, 76, 71, 56, 32.57887 + 57, 67, 81, 81, 50, 26, 68, 75, 255, 255, 255, 255, 255, 255, 255, 255, 32.57888 + 255, 255, 255, 255, 255, 79, 77, 76, 46, 18, 13, 42, 78, 39, 59, 48, 32.57889 + 59, 63, 73, 49, 49, 52, 60, 68, 71, 75, 77, 73, 65, 59, 78, 79, 32.57890 + 91, 72, 80, 68, 80, 9, 58, 57, 80, 76, 72, 90, 102, 102, 111, 104, 32.57891 + 90, 83, 73, 59, 56, 64, 60, 61, 61, 59, 52, 46, 45, 55, 32, 57, 32.57892 + 72, 65, 75, 79, 224, 234, 36, 45, 54, 65, 75, 55, 73, 71, 67, 68, 32.57893 + 77, 83, 83, 85, 91, 79, 87, 53, 14, 28, 38, 38, 44, 46, 47, 50, 32.57894 + 51, 56, 59, 59, 54, 46, 44, 64, 71, 76, 76, 61, 59, 54, 61, 70, 32.57895 + 74, 67, 60, 58, 59, 79, 76, 35, 26, 74, 85, 255, 255, 255, 255, 255, 32.57896 + 255, 255, 255, 255, 255, 255, 255, 255, 72, 71, 73, 23, 56, 52, 32, 59, 32.57897 + 32, 39, 38, 58, 62, 74, 62, 59, 69, 62, 57, 56, 54, 49, 51, 54, 32.57898 + 60, 68, 62, 88, 102, 159, 115, 120, 229, 203, 17, 24, 55, 86, 87, 76, 32.57899 + 95, 109, 103, 87, 85, 82, 72, 66, 55, 53, 54, 53, 49, 42, 43, 48, 32.57900 + 43, 60, 87, 39, 38, 40, 126, 64, 43, 65, 56, 34, 50, 33, 57, 63, 32.57901 + 81, 70, 66, 71, 67, 60, 70, 90, 47, 57, 47, 9, 36, 38, 52, 52, 32.57902 + 53, 52, 50, 49, 57, 61, 58, 53, 46, 50, 72, 71, 63, 59, 55, 64, 32.57903 + 50, 56, 62, 64, 65, 66, 62, 54, 80, 78, 23, 33, 83, 255, 255, 255, 32.57904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 70, 38, 0, 51, 32.57905 + 75, 49, 42, 31, 39, 56, 73, 66, 68, 70, 69, 65, 53, 43, 45, 41, 32.57906 + 32, 31, 43, 64, 45, 65, 81, 69, 115, 95, 123, 134, 158, 35, 52, 50, 32.57907 + 67, 85, 101, 91, 108, 105, 92, 91, 86, 65, 47, 55, 49, 45, 43, 43, 32.57908 + 41, 45, 52, 65, 84, 72, 37, 55, 54, 193, 10, 42, 63, 112, 90, 18, 32.57909 + 42, 35, 47, 73, 70, 68, 68, 62, 54, 57, 68, 28, 52, 61, 43, 59, 32.57910 + 60, 62, 57, 48, 48, 49, 51, 59, 61, 50, 39, 51, 55, 75, 69, 57, 32.57911 + 53, 53, 70, 51, 50, 54, 64, 71, 68, 61, 53, 83, 83, 28, 52, 95, 32.57912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 84, 85, 32.57913 + 59, 75, 67, 56, 41, 25, 63, 68, 84, 87, 75, 60, 53, 40, 24, 27, 32.57914 + 45, 69, 71, 51, 37, 37, 91, 10, 40, 66, 55, 68, 62, 73, 86, 85, 32.57915 + 44, 48, 29, 46, 61, 64, 65, 96, 103, 86, 74, 68, 67, 71, 62, 54, 32.57916 + 49, 52, 56, 55, 54, 55, 91, 102, 107, 67, 21, 47, 62, 40, 58, 34, 32.57917 + 52, 62, 33, 58, 45, 56, 57, 65, 66, 62, 64, 71, 70, 63, 54, 82, 32.57918 + 81, 71, 54, 62, 53, 49, 45, 46, 48, 50, 58, 58, 46, 33, 48, 49, 32.57919 + 64, 57, 51, 52, 52, 67, 71, 60, 64, 79, 88, 76, 60, 53, 71, 80, 32.57920 + 41, 73, 153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57921 + 255, 113, 76, 39, 83, 45, 28, 74, 112, 132, 116, 98, 67, 66, 55, 45, 32.57922 + 27, 21, 28, 51, 75, 76, 54, 33, 28, 93, 0, 8, 60, 84, 89, 71, 32.57923 + 49, 67, 56, 88, 72, 26, 37, 53, 58, 67, 70, 83, 126, 175, 162, 88, 32.57924 + 23, 63, 59, 61, 70, 76, 72, 63, 57, 75, 60, 129, 90, 43, 72, 47, 32.57925 + 67, 52, 103, 79, 63, 94, 53, 61, 45, 63, 70, 69, 58, 67, 82, 85, 32.57926 + 69, 50, 80, 83, 79, 48, 59, 51, 47, 50, 49, 47, 46, 50, 52, 47, 32.57927 + 40, 40, 33, 45, 45, 49, 54, 50, 61, 80, 72, 74, 86, 95, 87, 70, 32.57928 + 60, 52, 62, 50, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57929 + 255, 255, 255, 255, 51, 20, 26, 68, 56, 39, 81, 139, 149, 137, 101, 46, 32.57930 + 57, 53, 51, 40, 54, 54, 58, 65, 62, 50, 39, 38, 55, 41, 49, 80, 32.57931 + 76, 70, 57, 60, 81, 53, 66, 44, 8, 34, 51, 61, 62, 73, 76, 71, 32.57932 + 64, 46, 42, 56, 59, 58, 62, 71, 72, 67, 61, 58, 95, 34, 77, 70, 32.57933 + 71, 52, 76, 73, 104, 55, 97, 83, 75, 74, 69, 67, 76, 76, 73, 65, 32.57934 + 72, 80, 84, 76, 48, 74, 93, 81, 59, 61, 67, 59, 52, 51, 48, 44, 32.57935 + 44, 47, 47, 43, 33, 24, 36, 40, 51, 62, 55, 62, 82, 87, 85, 78, 32.57936 + 86, 95, 83, 60, 42, 47, 58, 80, 255, 255, 255, 255, 255, 255, 255, 255, 32.57937 + 255, 255, 255, 255, 255, 255, 255, 78, 65, 91, 62, 47, 24, 49, 112, 101, 32.57938 + 118, 100, 48, 64, 55, 52, 47, 66, 66, 68, 70, 72, 72, 71, 73, 54, 32.57939 + 104, 77, 89, 82, 90, 60, 71, 70, 65, 63, 60, 33, 58, 67, 79, 85, 32.57940 + 80, 71, 69, 68, 54, 56, 74, 54, 53, 54, 57, 54, 52, 55, 61, 46, 32.57941 + 79, 78, 52, 76, 100, 78, 96, 77, 121, 84, 86, 75, 71, 72, 83, 76, 32.57942 + 72, 71, 75, 78, 78, 80, 84, 67, 80, 97, 60, 43, 35, 59, 52, 43, 32.57943 + 46, 48, 45, 44, 44, 42, 38, 31, 23, 37, 43, 57, 69, 63, 70, 93, 32.57944 + 111, 103, 76, 78, 100, 88, 51, 44, 41, 65, 138, 255, 255, 255, 255, 255, 32.57945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 83, 70, 64, 65, 13, 32.57946 + 62, 125, 143, 97, 73, 56, 87, 66, 49, 60, 66, 68, 72, 71, 69, 72, 32.57947 + 77, 83, 80, 82, 85, 89, 92, 84, 72, 59, 59, 62, 45, 47, 42, 58, 32.57948 + 61, 84, 77, 77, 77, 70, 60, 51, 55, 60, 55, 67, 72, 63, 43, 32, 32.57949 + 38, 49, 60, 60, 60, 64, 68, 77, 84, 88, 93, 93, 88, 79, 74, 75, 32.57950 + 77, 76, 74, 83, 84, 66, 58, 80, 93, 79, 73, 79, 106, 74, 39, 52, 32.57951 + 51, 48, 45, 48, 49, 45, 42, 40, 35, 29, 28, 25, 56, 39, 67, 58, 32.57952 + 82, 60, 58, 106, 95, 80, 84, 92, 90, 52, 41, 54, 72, 255, 255, 255, 32.57953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 75, 67, 32.57954 + 62, 57, 20, 52, 113, 168, 116, 91, 65, 82, 65, 54, 66, 65, 67, 69, 32.57955 + 71, 72, 73, 75, 79, 87, 81, 76, 69, 67, 63, 60, 56, 56, 54, 50, 32.57956 + 53, 52, 61, 66, 70, 73, 74, 74, 70, 62, 56, 54, 55, 46, 53, 57, 32.57957 + 53, 46, 41, 45, 51, 52, 53, 54, 57, 63, 70, 77, 81, 73, 76, 74, 32.57958 + 67, 66, 71, 76, 78, 74, 78, 79, 66, 58, 76, 88, 78, 50, 67, 96, 32.57959 + 71, 46, 54, 45, 43, 45, 47, 48, 44, 42, 41, 39, 34, 24, 23, 53, 32.57960 + 41, 67, 61, 85, 66, 60, 99, 92, 79, 85, 91, 88, 57, 37, 53, 134, 32.57961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57962 + 255, 65, 62, 60, 49, 34, 34, 88, 140, 93, 83, 69, 74, 69, 69, 75, 32.57963 + 66, 66, 67, 71, 73, 76, 76, 75, 67, 67, 70, 67, 66, 63, 60, 56, 32.57964 + 59, 47, 52, 57, 46, 56, 69, 62, 62, 63, 66, 65, 61, 55, 48, 44, 32.57965 + 48, 51, 53, 56, 61, 63, 62, 62, 56, 56, 56, 58, 62, 67, 71, 74, 32.57966 + 68, 70, 71, 67, 69, 76, 83, 85, 77, 76, 76, 68, 61, 72, 83, 76, 32.57967 + 57, 77, 85, 56, 44, 50, 45, 54, 50, 51, 50, 42, 40, 40, 39, 35, 32.57968 + 27, 28, 54, 46, 68, 64, 85, 66, 62, 86, 80, 75, 87, 91, 85, 60, 32.57969 + 35, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57970 + 255, 255, 255, 255, 190, 59, 60, 47, 50, 19, 51, 83, 52, 65, 70, 69, 32.57971 + 74, 76, 77, 70, 67, 67, 68, 73, 74, 73, 72, 57, 63, 69, 72, 74, 32.57972 + 71, 70, 70, 68, 56, 49, 59, 22, 52, 68, 66, 58, 57, 60, 60, 59, 32.57973 + 56, 46, 38, 56, 57, 60, 66, 74, 76, 75, 74, 71, 72, 70, 69, 68, 32.57974 + 66, 67, 66, 72, 75, 79, 77, 80, 86, 88, 87, 85, 79, 79, 74, 66, 32.57975 + 72, 80, 75, 75, 96, 88, 58, 52, 52, 46, 57, 56, 54, 50, 41, 36, 32.57976 + 35, 34, 31, 36, 38, 59, 52, 67, 64, 77, 60, 57, 65, 58, 63, 83, 32.57977 + 87, 70, 49, 32, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.57978 + 255, 255, 255, 255, 255, 255, 255, 255, 58, 61, 50, 59, 16, 20, 63, 47, 32.57979 + 67, 78, 68, 77, 73, 71, 74, 68, 64, 62, 66, 67, 66, 67, 72, 71, 32.57980 + 68, 64, 67, 70, 78, 84, 75, 72, 50, 66, 7, 54, 63, 72, 62, 62, 32.57981 + 63, 59, 61, 62, 54, 44, 55, 57, 63, 70, 75, 78, 79, 81, 85, 84, 32.57982 + 82, 79, 76, 71, 69, 66, 72, 77, 84, 86, 89, 92, 88, 82, 93, 87, 32.57983 + 85, 81, 73, 77, 82, 74, 69, 96, 90, 74, 71, 60, 48, 47, 54, 54, 32.57984 + 49, 37, 32, 33, 34, 31, 40, 44, 60, 57, 65, 65, 72, 56, 56, 54, 32.57985 + 49, 53, 76, 75, 45, 24, 28, 117, 255, 255, 255, 255, 255, 255, 255, 255, 32.57986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 60, 56, 60, 30, 32.57987 + 12, 60, 54, 68, 74, 64, 75, 67, 73, 72, 69, 66, 64, 65, 65, 65, 32.57988 + 65, 64, 68, 68, 72, 76, 81, 84, 85, 77, 83, 58, 71, 18, 59, 62, 32.57989 + 72, 61, 62, 62, 57, 59, 63, 57, 47, 50, 55, 65, 71, 77, 79, 83, 32.57990 + 87, 86, 88, 88, 84, 82, 78, 76, 74, 74, 81, 89, 94, 99, 100, 94, 32.57991 + 86, 95, 92, 91, 84, 76, 84, 87, 74, 67, 85, 74, 67, 64, 57, 60, 32.57992 + 55, 50, 49, 44, 36, 33, 34, 37, 34, 39, 43, 59, 60, 62, 68, 71, 32.57993 + 57, 70, 66, 63, 56, 69, 68, 28, 15, 32, 255, 255, 255, 255, 255, 255, 32.57994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 58, 32.57995 + 58, 53, 56, 27, 41, 49, 57, 63, 61, 77, 62, 77, 72, 73, 75, 75, 32.57996 + 73, 71, 72, 72, 63, 68, 78, 89, 95, 94, 85, 78, 78, 80, 63, 53, 32.57997 + 38, 58, 65, 69, 57, 61, 63, 57, 58, 62, 57, 47, 51, 54, 64, 71, 32.57998 + 79, 82, 84, 85, 88, 91, 90, 90, 89, 86, 84, 81, 83, 87, 93, 97, 32.57999 + 103, 106, 100, 92, 89, 94, 94, 84, 79, 93, 95, 76, 83, 85, 65, 59, 32.58000 + 49, 50, 72, 61, 48, 50, 45, 36, 34, 37, 40, 35, 36, 41, 56, 61, 32.58001 + 60, 69, 70, 57, 75, 77, 80, 58, 55, 54, 22, 16, 32, 255, 255, 255, 32.58002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58003 + 255, 69, 56, 58, 45, 76, 44, 24, 45, 50, 60, 63, 81, 56, 74, 74, 32.58004 + 79, 86, 88, 86, 82, 82, 81, 94, 91, 89, 91, 95, 94, 86, 80, 83, 32.58005 + 75, 62, 28, 49, 52, 71, 68, 59, 66, 69, 64, 63, 65, 58, 48, 51, 32.58006 + 51, 57, 66, 77, 82, 80, 77, 94, 97, 96, 97, 96, 92, 90, 86, 91, 32.58007 + 94, 96, 98, 101, 103, 98, 91, 84, 91, 93, 80, 77, 96, 99, 76, 90, 32.58008 + 87, 71, 71, 53, 49, 70, 46, 51, 53, 47, 38, 35, 37, 38, 33, 36, 32.58009 + 42, 55, 61, 58, 66, 67, 52, 66, 76, 84, 51, 39, 39, 15, 19, 102, 32.58010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58011 + 255, 255, 255, 255, 190, 62, 60, 56, 62, 68, 51, 30, 50, 83, 54, 73, 32.58012 + 81, 60, 85, 85, 86, 87, 89, 91, 95, 96, 103, 106, 108, 104, 95, 87, 32.58013 + 83, 82, 82, 63, 48, 46, 49, 53, 64, 76, 70, 71, 70, 60, 57, 58, 32.58014 + 58, 52, 52, 43, 53, 51, 58, 72, 73, 93, 106, 108, 106, 103, 101, 101, 32.58015 + 106, 109, 106, 110, 114, 114, 113, 110, 108, 107, 115, 82, 71, 81, 87, 88, 32.58016 + 84, 74, 76, 78, 78, 74, 69, 62, 50, 42, 55, 49, 42, 35, 29, 28, 32.58017 + 36, 44, 47, 45, 56, 63, 56, 56, 69, 76, 75, 82, 76, 64, 30, 34, 32.58018 + 9, 12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58019 + 255, 255, 255, 255, 255, 255, 255, 255, 59, 55, 52, 55, 61, 87, 59, 31, 32.58020 + 49, 50, 65, 71, 88, 87, 88, 90, 91, 93, 95, 98, 99, 101, 106, 112, 32.58021 + 115, 111, 99, 84, 74, 61, 66, 65, 59, 60, 71, 76, 74, 80, 80, 75, 32.58022 + 67, 60, 57, 53, 50, 58, 52, 64, 63, 65, 74, 75, 93, 101, 108, 115, 32.58023 + 121, 122, 120, 114, 111, 111, 108, 107, 115, 122, 122, 112, 100, 97, 80, 79, 32.58024 + 83, 74, 71, 78, 83, 67, 66, 66, 70, 71, 68, 62, 58, 54, 48, 41, 32.58025 + 32, 28, 28, 35, 42, 44, 42, 53, 58, 51, 57, 70, 77, 73, 83, 80, 32.58026 + 53, 35, 52, 43, 44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 54, 51, 53, 58, 32.58028 + 75, 114, 78, 45, 44, 66, 63, 86, 86, 88, 92, 96, 99, 102, 105, 105, 32.58029 + 117, 110, 102, 97, 96, 94, 90, 85, 43, 65, 71, 58, 60, 80, 84, 70, 32.58030 + 82, 79, 75, 71, 63, 55, 51, 53, 54, 53, 70, 70, 69, 73, 71, 89, 32.58031 + 97, 98, 99, 103, 107, 113, 117, 119, 121, 117, 114, 114, 115, 113, 107, 99, 32.58032 + 97, 84, 85, 85, 71, 66, 76, 82, 76, 68, 65, 71, 73, 67, 63, 64, 32.58033 + 53, 48, 40, 29, 26, 27, 34, 39, 45, 42, 49, 51, 48, 58, 72, 75, 32.58034 + 76, 79, 77, 35, 36, 63, 76, 76, 255, 255, 255, 255, 255, 255, 255, 255, 32.58035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 57, 32.58036 + 54, 55, 59, 61, 127, 111, 71, 56, 73, 67, 83, 80, 84, 89, 95, 101, 32.58037 + 104, 107, 108, 107, 108, 110, 110, 104, 90, 73, 61, 53, 66, 63, 49, 55, 32.58038 + 79, 86, 75, 78, 75, 73, 72, 64, 54, 52, 56, 43, 47, 70, 73, 71, 32.58039 + 74, 71, 88, 160, 152, 136, 123, 113, 111, 110, 110, 115, 118, 116, 105, 92, 32.58040 + 91, 102, 113, 116, 94, 86, 86, 81, 79, 78, 70, 85, 73, 68, 75, 76, 32.58041 + 66, 60, 62, 52, 48, 39, 27, 23, 27, 34, 36, 49, 46, 48, 48, 47, 32.58042 + 62, 75, 74, 89, 76, 72, 26, 38, 57, 82, 144, 255, 255, 255, 255, 255, 32.58043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58044 + 255, 191, 60, 57, 57, 60, 79, 81, 74, 85, 68, 69, 70, 91, 92, 95, 32.58045 + 100, 105, 109, 111, 114, 114, 108, 109, 108, 102, 90, 78, 69, 65, 80, 71, 32.58046 + 58, 53, 65, 81, 87, 84, 81, 80, 79, 75, 66, 55, 53, 56, 40, 45, 32.58047 + 70, 75, 73, 75, 70, 86, 92, 93, 90, 91, 94, 96, 95, 95, 89, 96, 32.58048 + 97, 91, 83, 87, 103, 118, 118, 95, 85, 86, 85, 84, 78, 64, 72, 63, 32.58049 + 62, 71, 76, 71, 66, 65, 53, 49, 40, 26, 23, 27, 33, 32, 49, 48, 32.58050 + 48, 47, 53, 75, 88, 81, 96, 67, 59, 28, 41, 48, 71, 255, 255, 255, 32.58051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58052 + 255, 255, 255, 255, 255, 59, 56, 56, 58, 65, 59, 68, 86, 53, 57, 65, 32.58053 + 69, 82, 84, 86, 87, 89, 89, 90, 90, 96, 91, 80, 69, 64, 71, 86, 32.58054 + 99, 88, 67, 54, 61, 76, 82, 82, 83, 89, 94, 92, 80, 67, 59, 54, 32.58055 + 51, 40, 43, 65, 69, 67, 66, 58, 71, 96, 96, 89, 82, 77, 75, 75, 32.58056 + 78, 87, 87, 88, 92, 96, 100, 102, 100, 96, 87, 88, 86, 76, 74, 74, 32.58057 + 67, 62, 58, 57, 62, 70, 72, 66, 60, 55, 52, 42, 27, 24, 31, 35, 32.58058 + 31, 44, 46, 49, 49, 60, 89, 100, 86, 87, 54, 44, 34, 44, 50, 126, 32.58059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 56, 58, 43, 68, 80, 80, 32.58061 + 48, 63, 65, 54, 58, 58, 58, 59, 60, 60, 62, 62, 64, 69, 77, 83, 32.58062 + 86, 85, 84, 83, 77, 60, 51, 60, 73, 79, 79, 80, 90, 102, 101, 81, 32.58063 + 66, 62, 57, 48, 40, 40, 58, 60, 59, 58, 48, 59, 74, 77, 77, 74, 32.58064 + 70, 75, 87, 97, 90, 90, 92, 97, 99, 99, 94, 90, 84, 82, 88, 87, 32.58065 + 73, 69, 71, 65, 62, 62, 57, 54, 62, 73, 69, 56, 58, 55, 44, 28, 32.58066 + 26, 34, 38, 32, 40, 43, 48, 47, 61, 91, 99, 79, 65, 43, 31, 32, 32.58067 + 34, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 58, 59, 65, 32.58069 + 65, 51, 68, 72, 83, 73, 79, 77, 77, 78, 79, 82, 84, 88, 90, 90, 32.58070 + 89, 89, 91, 92, 87, 78, 71, 69, 60, 52, 55, 67, 79, 84, 85, 85, 32.58071 + 102, 102, 78, 63, 65, 61, 47, 44, 41, 57, 59, 60, 60, 49, 59, 55, 32.58072 + 69, 82, 85, 78, 72, 72, 75, 78, 86, 93, 93, 87, 86, 93, 98, 89, 32.58073 + 84, 87, 87, 79, 76, 71, 57, 58, 62, 56, 49, 60, 79, 80, 67, 59, 32.58074 + 57, 46, 29, 27, 36, 39, 33, 37, 41, 45, 46, 59, 88, 91, 67, 50, 32.58075 + 40, 25, 27, 25, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58077 + 58, 52, 55, 59, 57, 86, 61, 59, 66, 78, 78, 80, 84, 85, 84, 84, 32.58078 + 88, 90, 88, 93, 95, 90, 81, 74, 73, 74, 57, 50, 49, 61, 75, 81, 32.58079 + 81, 80, 78, 86, 89, 81, 73, 68, 61, 54, 44, 48, 52, 56, 61, 64, 32.58080 + 63, 63, 48, 55, 67, 80, 87, 84, 72, 64, 62, 74, 85, 90, 87, 84, 32.58081 + 83, 86, 87, 78, 75, 80, 79, 68, 63, 66, 54, 55, 56, 57, 60, 64, 32.58082 + 69, 75, 58, 56, 46, 34, 29, 31, 35, 35, 33, 40, 52, 43, 73, 98, 32.58083 + 53, 22, 12, 37, 44, 16, 3, 128, 255, 255, 255, 255, 255, 255, 255, 255, 32.58084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58085 + 255, 255, 255, 190, 56, 57, 59, 57, 82, 64, 64, 68, 79, 77, 78, 81, 32.58086 + 82, 83, 83, 86, 86, 92, 89, 85, 81, 77, 73, 69, 66, 61, 54, 54, 32.58087 + 64, 75, 79, 78, 77, 82, 87, 87, 78, 70, 65, 60, 54, 47, 50, 53, 32.58088 + 58, 63, 66, 64, 61, 53, 58, 68, 79, 87, 87, 81, 76, 70, 70, 74, 32.58089 + 78, 82, 86, 88, 90, 82, 78, 77, 77, 73, 66, 62, 61, 55, 46, 46, 32.58090 + 57, 60, 58, 65, 80, 62, 60, 49, 35, 29, 31, 34, 33, 37, 40, 50, 32.58091 + 43, 63, 81, 48, 28, 39, 40, 33, 17, 20, 255, 255, 255, 255, 255, 255, 32.58092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58093 + 255, 255, 255, 255, 255, 255, 255, 60, 59, 58, 56, 71, 65, 70, 67, 75, 32.58094 + 75, 75, 76, 78, 81, 81, 82, 80, 89, 80, 72, 70, 74, 75, 69, 62, 32.58095 + 61, 55, 56, 65, 76, 80, 81, 82, 90, 92, 88, 79, 71, 66, 61, 57, 32.58096 + 55, 54, 56, 60, 64, 64, 61, 57, 58, 61, 67, 76, 83, 87, 87, 86, 32.58097 + 80, 71, 62, 59, 68, 79, 86, 87, 75, 78, 78, 71, 66, 63, 60, 55, 32.58098 + 60, 44, 44, 60, 63, 54, 60, 80, 68, 65, 53, 37, 29, 29, 31, 31, 32.58099 + 47, 40, 46, 41, 44, 43, 23, 17, 37, 22, 10, 18, 45, 255, 255, 255, 32.58100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 60, 57, 54, 53, 61, 32.58102 + 70, 61, 66, 71, 70, 71, 74, 77, 78, 77, 74, 77, 71, 66, 68, 74, 32.58103 + 77, 72, 65, 57, 52, 53, 61, 72, 80, 87, 93, 95, 95, 92, 85, 77, 32.58104 + 70, 64, 60, 60, 57, 57, 61, 62, 58, 53, 50, 58, 62, 67, 73, 78, 32.58105 + 83, 85, 86, 88, 75, 58, 53, 58, 67, 75, 77, 70, 78, 77, 67, 60, 32.58106 + 61, 58, 51, 63, 54, 54, 65, 68, 61, 61, 71, 75, 71, 57, 39, 29, 32.58107 + 28, 29, 30, 49, 39, 39, 40, 27, 14, 8, 13, 22, 17, 14, 35, 73, 32.58108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 55, 32.58110 + 52, 33, 52, 66, 53, 57, 65, 66, 68, 70, 72, 72, 71, 69, 68, 68, 32.58111 + 69, 73, 75, 74, 70, 66, 58, 52, 50, 56, 64, 74, 87, 98, 92, 90, 32.58112 + 89, 86, 80, 70, 61, 56, 55, 52, 54, 60, 60, 54, 50, 52, 62, 64, 32.58113 + 69, 73, 76, 78, 77, 78, 87, 79, 67, 59, 57, 62, 66, 71, 69, 76, 32.58114 + 75, 65, 60, 61, 57, 49, 55, 60, 65, 67, 71, 72, 67, 61, 79, 74, 32.58115 + 59, 40, 30, 28, 29, 29, 41, 32, 34, 40, 23, 13, 20, 19, 25, 41, 32.58116 + 51, 67, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58118 + 255, 190, 53, 51, 15, 45, 64, 48, 55, 58, 62, 66, 68, 67, 64, 65, 32.58119 + 65, 67, 70, 74, 76, 73, 68, 64, 62, 61, 55, 51, 52, 56, 64, 77, 32.58120 + 90, 81, 78, 78, 79, 75, 64, 54, 50, 47, 47, 53, 61, 59, 52, 53, 32.58121 + 60, 68, 71, 74, 76, 75, 75, 74, 75, 80, 79, 75, 70, 66, 66, 68, 32.58122 + 73, 72, 73, 70, 66, 64, 63, 58, 51, 44, 57, 65, 67, 73, 79, 71, 32.58123 + 57, 80, 75, 59, 40, 29, 28, 30, 30, 39, 33, 30, 34, 19, 18, 35, 32.58124 + 18, 26, 51, 71, 83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58126 + 255, 255, 255, 255, 255, 53, 52, 3, 41, 65, 50, 60, 52, 59, 66, 67, 32.58127 + 62, 58, 61, 63, 67, 69, 71, 71, 68, 64, 60, 58, 61, 56, 53, 52, 32.58128 + 52, 55, 66, 78, 72, 66, 65, 68, 66, 57, 49, 47, 47, 50, 59, 67, 32.58129 + 61, 51, 55, 67, 73, 75, 76, 74, 72, 72, 73, 75, 72, 74, 76, 75, 32.58130 + 71, 69, 69, 71, 78, 70, 66, 69, 71, 66, 59, 55, 46, 53, 61, 69, 32.58131 + 77, 78, 69, 60, 80, 74, 58, 40, 29, 28, 31, 32, 38, 36, 29, 30, 32.58132 + 24, 39, 67, 32, 25, 35, 59, 138, 255, 255, 255, 255, 255, 255, 255, 255, 32.58133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58134 + 255, 255, 255, 255, 255, 255, 255, 255, 188, 53, 0, 40, 70, 54, 67, 50, 32.58135 + 58, 66, 66, 59, 54, 56, 63, 65, 64, 63, 63, 64, 64, 61, 58, 56, 32.58136 + 56, 55, 55, 53, 54, 62, 73, 71, 63, 61, 63, 63, 55, 51, 50, 56, 32.58137 + 59, 70, 74, 65, 51, 56, 70, 74, 75, 74, 71, 68, 69, 74, 78, 72, 32.58138 + 74, 75, 75, 74, 70, 66, 64, 82, 68, 63, 71, 76, 69, 60, 58, 57, 32.58139 + 53, 59, 74, 81, 73, 64, 62, 79, 71, 58, 37, 29, 29, 30, 33, 32, 32.58140 + 36, 28, 34, 38, 76, 111, 69, 36, 28, 48, 255, 255, 255, 255, 255, 255, 32.58141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 9, 49, 67, 32.58143 + 73, 70, 62, 37, 64, 65, 49, 58, 59, 75, 64, 69, 63, 60, 69, 66, 32.58144 + 59, 62, 66, 62, 57, 56, 56, 56, 53, 52, 57, 60, 66, 64, 62, 55, 32.58145 + 56, 54, 84, 82, 83, 76, 73, 69, 74, 74, 68, 63, 63, 61, 69, 75, 32.58146 + 78, 73, 73, 89, 77, 76, 84, 71, 65, 74, 69, 72, 64, 58, 66, 67, 32.58147 + 59, 57, 43, 52, 70, 75, 67, 68, 69, 61, 61, 66, 62, 40, 29, 29, 32.58148 + 31, 27, 39, 29, 31, 39, 82, 134, 129, 114, 105, 26, 98, 255, 255, 255, 32.58149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58151 + 12, 50, 66, 71, 69, 76, 53, 66, 66, 51, 52, 57, 67, 66, 72, 66, 32.58152 + 62, 68, 63, 57, 61, 52, 55, 59, 59, 58, 57, 58, 61, 61, 67, 71, 32.58153 + 72, 69, 66, 65, 65, 75, 74, 76, 79, 78, 74, 70, 67, 70, 70, 78, 32.58154 + 76, 68, 64, 67, 64, 68, 79, 74, 78, 95, 86, 69, 65, 66, 75, 73, 32.58155 + 68, 69, 66, 61, 60, 47, 50, 66, 75, 68, 65, 64, 57, 57, 61, 54, 32.58156 + 35, 23, 25, 28, 25, 36, 34, 40, 49, 116, 155, 140, 118, 104, 121, 255, 32.58157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58159 + 255, 255, 255, 17, 51, 64, 69, 68, 77, 64, 59, 65, 56, 53, 69, 71, 32.58160 + 66, 73, 66, 60, 63, 57, 52, 58, 53, 61, 67, 68, 67, 66, 70, 77, 32.58161 + 68, 72, 77, 79, 79, 78, 77, 77, 67, 65, 72, 86, 91, 84, 77, 73, 32.58162 + 60, 59, 67, 75, 67, 70, 75, 72, 72, 78, 73, 65, 77, 83, 76, 76, 32.58163 + 62, 73, 79, 75, 69, 66, 64, 63, 51, 48, 62, 79, 75, 67, 65, 60, 32.58164 + 56, 60, 51, 34, 23, 23, 27, 27, 31, 32, 41, 44, 137, 165, 145, 121, 32.58165 + 128, 144, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58167 + 255, 255, 255, 255, 255, 255, 179, 55, 61, 67, 68, 77, 76, 55, 64, 63, 32.58168 + 54, 78, 74, 65, 71, 63, 55, 57, 51, 48, 55, 49, 54, 59, 59, 57, 32.58169 + 57, 61, 66, 73, 76, 80, 84, 85, 84, 83, 82, 79, 78, 83, 92, 91, 32.58170 + 77, 66, 61, 89, 77, 67, 75, 66, 73, 66, 62, 69, 75, 81, 63, 63, 32.58171 + 75, 76, 84, 60, 65, 74, 73, 66, 67, 68, 62, 53, 45, 60, 82, 82, 32.58172 + 72, 69, 69, 59, 58, 50, 35, 26, 26, 30, 31, 30, 32, 40, 31, 139, 32.58173 + 161, 148, 133, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 55, 59, 62, 82, 86, 32.58176 + 62, 66, 67, 54, 70, 67, 66, 70, 64, 56, 56, 50, 47, 52, 52, 53, 32.58177 + 55, 55, 55, 58, 64, 67, 75, 77, 80, 84, 86, 86, 84, 82, 86, 89, 32.58178 + 94, 99, 97, 90, 85, 82, 76, 78, 61, 72, 66, 73, 60, 73, 58, 57, 32.58179 + 79, 72, 76, 89, 75, 72, 66, 60, 66, 69, 65, 73, 75, 60, 54, 46, 32.58180 + 61, 83, 82, 72, 67, 67, 57, 57, 48, 37, 28, 27, 31, 33, 30, 36, 32.58181 + 46, 34, 137, 159, 153, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 49, 51, 32.58184 + 56, 71, 80, 69, 68, 71, 64, 66, 71, 69, 74, 70, 66, 68, 58, 47, 32.58185 + 45, 52, 53, 56, 59, 63, 68, 74, 75, 75, 76, 79, 84, 87, 88, 86, 32.58186 + 83, 87, 92, 91, 85, 84, 86, 82, 74, 60, 85, 59, 64, 54, 49, 26, 32.58187 + 62, 64, 36, 56, 59, 76, 100, 81, 75, 76, 60, 65, 72, 69, 80, 82, 32.58188 + 58, 54, 51, 66, 81, 76, 65, 60, 55, 54, 50, 43, 35, 30, 28, 28, 32.58189 + 30, 24, 34, 49, 47, 132, 161, 155, 255, 255, 255, 255, 255, 255, 255, 255, 32.58190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58192 + 255, 47, 49, 55, 56, 67, 75, 68, 75, 75, 62, 77, 70, 77, 76, 77, 32.58193 + 82, 66, 40, 28, 24, 32, 42, 47, 49, 51, 57, 62, 64, 64, 67, 73, 32.58194 + 79, 81, 79, 76, 81, 83, 70, 52, 52, 61, 50, 26, 50, 84, 41, 54, 32.58195 + 76, 86, 60, 118, 61, 18, 38, 42, 55, 84, 75, 84, 84, 65, 72, 81, 32.58196 + 74, 84, 84, 55, 54, 58, 74, 82, 72, 65, 60, 51, 50, 46, 40, 36, 32.58197 + 32, 28, 26, 30, 26, 29, 43, 56, 122, 166, 255, 255, 255, 255, 255, 255, 32.58198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58200 + 255, 255, 255, 255, 51, 53, 60, 57, 68, 85, 70, 77, 76, 51, 72, 66, 32.58201 + 77, 80, 85, 90, 68, 33, 14, 11, 26, 42, 47, 45, 43, 49, 55, 42, 32.58202 + 43, 48, 55, 62, 66, 64, 62, 47, 54, 48, 43, 66, 99, 96, 67, 179, 32.58203 + 188, 94, 80, 100, 97, 42, 91, 36, 3, 42, 48, 44, 60, 55, 79, 84, 32.58204 + 67, 78, 87, 75, 82, 81, 49, 51, 61, 79, 83, 72, 68, 64, 53, 49, 32.58205 + 47, 42, 38, 34, 30, 28, 30, 35, 30, 41, 59, 114, 200, 255, 255, 255, 32.58206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58208 + 255, 255, 255, 255, 255, 255, 255, 187, 48, 52, 46, 60, 75, 78, 73, 64, 32.58209 + 64, 68, 78, 67, 71, 85, 81, 52, 36, 38, 33, 27, 37, 48, 54, 64, 32.58210 + 69, 61, 83, 71, 54, 65, 52, 71, 54, 37, 61, 91, 101, 74, 50, 102, 32.58211 + 110, 104, 103, 107, 79, 68, 101, 98, 61, 43, 43, 52, 60, 57, 57, 60, 32.58212 + 65, 69, 64, 76, 84, 82, 78, 73, 64, 55, 51, 65, 75, 71, 65, 60, 32.58213 + 51, 42, 48, 47, 44, 39, 37, 33, 30, 29, 32, 29, 40, 55, 107, 255, 32.58214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 50, 49, 58, 72, 32.58217 + 77, 74, 70, 67, 67, 73, 64, 65, 74, 72, 54, 45, 47, 52, 26, 7, 32.58218 + 10, 40, 81, 90, 68, 86, 79, 74, 95, 87, 97, 77, 60, 90, 97, 90, 32.58219 + 67, 57, 109, 99, 76, 94, 108, 88, 67, 79, 74, 57, 60, 63, 70, 76, 32.58220 + 71, 67, 67, 69, 71, 68, 78, 85, 83, 77, 71, 61, 53, 54, 71, 83, 32.58221 + 79, 69, 61, 51, 44, 50, 48, 44, 39, 37, 32, 31, 31, 33, 32, 41, 32.58222 + 56, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 48, 49, 32.58225 + 49, 53, 62, 71, 75, 75, 71, 67, 68, 63, 61, 63, 63, 59, 58, 59, 32.58226 + 52, 41, 22, 4, 16, 62, 91, 85, 89, 76, 74, 95, 89, 89, 73, 62, 32.58227 + 113, 111, 98, 79, 72, 118, 100, 72, 83, 95, 76, 50, 51, 48, 46, 59, 32.58228 + 73, 79, 84, 77, 72, 69, 69, 69, 73, 83, 89, 85, 76, 68, 59, 52, 32.58229 + 55, 74, 88, 84, 71, 62, 52, 45, 49, 47, 41, 35, 34, 34, 35, 34, 32.58230 + 34, 33, 44, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58233 + 255, 188, 52, 49, 47, 52, 63, 73, 75, 70, 64, 64, 64, 62, 60, 62, 32.58234 + 68, 71, 68, 49, 55, 53, 29, 11, 29, 60, 71, 96, 84, 93, 119, 118, 32.58235 + 107, 92, 81, 108, 114, 113, 93, 68, 99, 84, 71, 46, 50, 39, 32, 50, 32.58236 + 63, 69, 77, 73, 78, 82, 76, 73, 71, 71, 70, 80, 85, 88, 83, 72, 32.58237 + 62, 55, 52, 54, 73, 85, 77, 63, 55, 49, 47, 49, 46, 40, 34, 34, 32.58238 + 34, 37, 40, 35, 35, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58240 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58241 + 255, 255, 255, 255, 255, 50, 47, 43, 43, 53, 64, 71, 67, 62, 60, 62, 32.58242 + 63, 61, 65, 72, 75, 69, 64, 52, 50, 46, 31, 27, 33, 35, 50, 47, 32.58243 + 74, 106, 115, 101, 89, 76, 79, 91, 98, 81, 46, 64, 52, 49, 43, 45, 32.58244 + 42, 45, 62, 73, 77, 79, 78, 82, 85, 78, 76, 76, 76, 76, 82, 84, 32.58245 + 85, 79, 67, 56, 53, 55, 63, 77, 83, 69, 52, 46, 44, 45, 46, 44, 32.58246 + 39, 34, 35, 38, 39, 42, 38, 39, 120, 255, 255, 255, 255, 255, 255, 255, 32.58247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 42, 41, 46, 54, 62, 63, 32.58250 + 61, 55, 58, 61, 64, 69, 72, 72, 67, 75, 54, 53, 60, 54, 44, 41, 32.58251 + 40, 20, 9, 26, 38, 50, 45, 53, 47, 45, 48, 55, 52, 31, 53, 41, 32.58252 + 39, 51, 58, 67, 68, 66, 66, 72, 76, 85, 86, 85, 77, 75, 76, 76, 32.58253 + 77, 82, 81, 79, 73, 60, 51, 53, 60, 77, 86, 83, 63, 46, 40, 40, 32.58254 + 41, 43, 42, 40, 39, 39, 41, 41, 43, 41, 43, 255, 255, 255, 255, 255, 32.58255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 44, 43, 42, 32.58258 + 45, 53, 60, 64, 55, 55, 60, 69, 74, 72, 69, 68, 70, 63, 67, 69, 32.58259 + 60, 58, 62, 63, 57, 40, 41, 26, 33, 31, 52, 47, 34, 28, 32, 40, 32.58260 + 32, 62, 53, 52, 40, 49, 67, 74, 71, 74, 89, 95, 87, 86, 83, 73, 32.58261 + 72, 74, 76, 78, 80, 79, 75, 69, 57, 50, 57, 69, 83, 88, 81, 61, 32.58262 + 46, 42, 41, 39, 39, 40, 41, 43, 44, 44, 42, 42, 44, 255, 255, 255, 32.58263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58266 + 51, 47, 44, 43, 51, 64, 73, 57, 55, 61, 73, 78, 74, 70, 72, 65, 32.58267 + 62, 66, 63, 62, 70, 71, 58, 59, 48, 55, 35, 38, 28, 40, 26, 44, 32.58268 + 35, 37, 42, 31, 59, 54, 61, 71, 66, 73, 78, 72, 75, 80, 75, 87, 32.58269 + 86, 82, 74, 72, 78, 82, 85, 80, 77, 73, 65, 54, 48, 56, 71, 75, 32.58270 + 79, 74, 57, 45, 44, 44, 42, 36, 39, 41, 44, 45, 45, 41, 40, 45, 32.58271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58274 + 255, 255, 255, 255, 40, 45, 67, 56, 51, 82, 65, 47, 58, 72, 67, 68, 32.58275 + 76, 69, 73, 64, 57, 59, 67, 72, 72, 68, 70, 65, 59, 58, 61, 65, 32.58276 + 66, 67, 55, 57, 59, 61, 65, 68, 72, 76, 81, 81, 78, 76, 77, 79, 32.58277 + 81, 81, 86, 85, 80, 72, 69, 75, 82, 88, 84, 87, 77, 57, 47, 52, 32.58278 + 63, 70, 75, 69, 61, 51, 43, 39, 37, 34, 35, 37, 41, 44, 43, 39, 32.58279 + 42, 50, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58282 + 255, 255, 255, 255, 255, 255, 255, 191, 54, 48, 25, 32, 74, 75, 56, 57, 32.58283 + 64, 66, 68, 70, 64, 72, 70, 65, 60, 62, 63, 67, 68, 66, 63, 61, 32.58284 + 61, 64, 68, 74, 76, 76, 79, 83, 85, 87, 87, 88, 89, 83, 85, 84, 32.58285 + 84, 85, 82, 82, 79, 77, 79, 76, 69, 68, 73, 80, 84, 87, 81, 68, 32.58286 + 53, 51, 59, 66, 66, 72, 66, 56, 48, 44, 43, 39, 36, 32, 37, 40, 32.58287 + 40, 41, 41, 42, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58289 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 35, 16, 11, 33, 32.58291 + 64, 63, 58, 52, 61, 67, 65, 65, 74, 75, 73, 64, 58, 55, 61, 67, 32.58292 + 57, 57, 58, 58, 60, 65, 73, 78, 83, 87, 91, 93, 93, 90, 88, 87, 32.58293 + 81, 84, 87, 90, 92, 88, 85, 81, 78, 81, 79, 74, 75, 79, 84, 87, 32.58294 + 83, 72, 54, 47, 54, 68, 70, 67, 71, 61, 50, 45, 42, 41, 39, 37, 32.58295 + 39, 46, 48, 44, 47, 53, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 27, 32.58299 + 21, 5, 2, 26, 59, 64, 45, 54, 69, 68, 67, 73, 75, 76, 68, 60, 32.58300 + 56, 59, 63, 63, 65, 67, 66, 65, 68, 76, 82, 72, 75, 78, 79, 79, 32.58301 + 76, 74, 74, 77, 81, 85, 88, 90, 88, 84, 83, 78, 81, 82, 79, 80, 32.58302 + 83, 85, 85, 76, 62, 47, 44, 57, 71, 72, 69, 66, 59, 51, 44, 40, 32.58303 + 37, 38, 41, 44, 52, 52, 46, 51, 60, 255, 255, 255, 255, 255, 255, 255, 32.58304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58307 + 255, 255, 13, 9, 6, 7, 0, 50, 72, 50, 53, 70, 71, 67, 70, 71, 32.58308 + 73, 71, 68, 63, 60, 58, 59, 61, 61, 58, 55, 55, 60, 64, 65, 66, 32.58309 + 67, 66, 67, 67, 70, 72, 83, 85, 86, 86, 87, 85, 82, 80, 75, 78, 32.58310 + 79, 77, 79, 82, 82, 78, 67, 56, 44, 47, 59, 67, 70, 69, 63, 56, 32.58311 + 50, 44, 36, 31, 37, 46, 46, 52, 51, 44, 117, 255, 255, 255, 255, 255, 32.58312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58315 + 255, 255, 255, 255, 255, 255, 12, 16, 12, 0, 33, 61, 55, 56, 67, 71, 32.58316 + 67, 70, 70, 70, 71, 74, 71, 66, 60, 56, 55, 53, 50, 47, 45, 48, 32.58317 + 49, 66, 66, 64, 62, 65, 68, 74, 78, 94, 92, 89, 87, 83, 80, 80, 32.58318 + 77, 77, 80, 80, 80, 82, 83, 81, 75, 59, 50, 45, 51, 60, 65, 66, 32.58319 + 66, 58, 52, 46, 43, 37, 31, 40, 52, 51, 54, 52, 48, 255, 255, 255, 32.58320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 25, 9, 5, 4, 29, 56, 32.58324 + 63, 62, 67, 70, 74, 70, 69, 70, 71, 70, 69, 65, 71, 69, 66, 64, 32.58325 + 63, 63, 64, 63, 70, 70, 68, 67, 69, 73, 79, 84, 93, 93, 90, 88, 32.58326 + 85, 81, 80, 77, 82, 83, 84, 81, 84, 84, 81, 74, 57, 46, 42, 52, 32.58327 + 63, 66, 63, 60, 58, 44, 35, 38, 41, 39, 46, 56, 58, 57, 56, 255, 32.58328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 12, 22, 32.58332 + 0, 0, 53, 69, 59, 65, 75, 77, 75, 71, 69, 68, 68, 69, 72, 68, 32.58333 + 64, 61, 61, 64, 65, 65, 63, 76, 76, 75, 74, 76, 80, 85, 89, 85, 32.58334 + 85, 86, 86, 86, 83, 80, 79, 80, 80, 80, 77, 79, 82, 77, 68, 58, 32.58335 + 43, 40, 52, 67, 67, 61, 53, 57, 38, 27, 33, 45, 47, 50, 56, 57, 32.58336 + 55, 121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58340 + 255, 17, 13, 12, 1, 9, 45, 66, 69, 79, 79, 77, 75, 73, 71, 68, 32.58341 + 65, 64, 74, 75, 75, 74, 73, 73, 75, 75, 77, 83, 85, 82, 85, 89, 32.58342 + 88, 83, 89, 88, 86, 83, 82, 79, 77, 77, 80, 79, 81, 85, 87, 83, 32.58343 + 74, 66, 50, 46, 49, 56, 67, 68, 63, 54, 51, 35, 29, 40, 51, 53, 32.58344 + 54, 59, 62, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58348 + 255, 255, 255, 255, 177, 18, 21, 11, 3, 26, 56, 72, 74, 81, 78, 74, 32.58349 + 70, 69, 68, 71, 74, 76, 76, 74, 73, 72, 73, 76, 77, 77, 83, 86, 32.58350 + 85, 89, 94, 94, 91, 93, 90, 86, 84, 80, 79, 77, 76, 70, 72, 78, 32.58351 + 80, 81, 78, 73, 66, 50, 47, 50, 58, 64, 64, 54, 46, 39, 31, 33, 32.58352 + 44, 50, 50, 52, 59, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58356 + 255, 255, 255, 255, 255, 255, 255, 255, 22, 23, 19, 2, 4, 41, 74, 74, 32.58357 + 75, 74, 73, 71, 69, 70, 72, 75, 76, 77, 74, 73, 72, 74, 77, 79, 32.58358 + 75, 80, 84, 86, 92, 97, 98, 96, 98, 95, 90, 87, 82, 79, 78, 78, 32.58359 + 72, 74, 80, 81, 80, 76, 72, 68, 48, 49, 54, 62, 65, 60, 49, 43, 32.58360 + 31, 30, 36, 48, 52, 50, 51, 124, 255, 255, 255, 255, 255, 255, 255, 255, 32.58361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 24, 12, 0, 32.58365 + 28, 68, 74, 67, 70, 74, 75, 72, 67, 65, 67, 74, 76, 75, 75, 75, 32.58366 + 75, 77, 78, 73, 77, 80, 84, 90, 93, 94, 92, 96, 93, 90, 85, 81, 32.58367 + 81, 82, 83, 82, 81, 80, 82, 82, 78, 70, 60, 45, 51, 59, 65, 64, 32.58368 + 58, 49, 42, 33, 34, 40, 51, 54, 51, 50, 255, 255, 255, 255, 255, 255, 32.58369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58373 + 24, 26, 10, 16, 47, 63, 72, 75, 77, 75, 70, 64, 63, 64, 70, 74, 32.58374 + 76, 77, 77, 76, 76, 75, 76, 77, 80, 84, 88, 89, 89, 88, 88, 85, 32.58375 + 83, 79, 78, 80, 82, 84, 86, 78, 73, 75, 79, 77, 66, 51, 48, 54, 32.58376 + 61, 64, 57, 51, 44, 41, 46, 42, 44, 50, 54, 54, 119, 255, 255, 255, 32.58377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58381 + 255, 255, 255, 178, 31, 19, 7, 19, 36, 76, 77, 76, 71, 66, 63, 65, 32.58382 + 71, 69, 72, 74, 76, 76, 75, 76, 74, 83, 82, 83, 87, 90, 87, 86, 32.58383 + 86, 79, 76, 73, 72, 72, 76, 80, 83, 85, 77, 75, 75, 81, 78, 68, 32.58384 + 56, 53, 58, 61, 57, 46, 38, 36, 38, 56, 51, 50, 52, 55, 122, 255, 32.58385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58389 + 255, 255, 255, 255, 255, 255, 255, 27, 26, 9, 0, 8, 61, 67, 72, 72, 32.58390 + 69, 65, 65, 71, 70, 72, 72, 71, 72, 73, 76, 77, 86, 83, 85, 89, 32.58391 + 91, 87, 85, 86, 76, 72, 71, 71, 71, 76, 80, 84, 84, 80, 81, 78, 32.58392 + 78, 72, 66, 60, 54, 58, 59, 52, 39, 34, 40, 46, 55, 56, 57, 56, 32.58393 + 54, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 21, 0, 1, 45, 32.58398 + 57, 73, 80, 77, 68, 61, 62, 71, 71, 67, 67, 67, 71, 77, 80, 86, 32.58399 + 82, 83, 89, 91, 85, 84, 85, 79, 76, 74, 74, 76, 80, 85, 88, 81, 32.58400 + 82, 83, 78, 69, 59, 56, 57, 51, 55, 57, 48, 37, 36, 47, 59, 50, 32.58401 + 57, 63, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 18, 32.58406 + 12, 9, 21, 55, 86, 72, 85, 69, 66, 57, 63, 62, 62, 67, 69, 70, 32.58407 + 77, 84, 81, 82, 85, 86, 89, 88, 89, 87, 77, 79, 81, 78, 75, 78, 32.58408 + 85, 92, 88, 85, 79, 75, 69, 62, 57, 52, 60, 53, 43, 37, 37, 41, 32.58409 + 48, 55, 57, 62, 65, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58414 + 255, 255, 255, 19, 15, 8, 45, 81, 80, 78, 65, 66, 67, 68, 65, 66, 32.58415 + 69, 72, 72, 77, 83, 87, 85, 83, 81, 83, 87, 91, 92, 78, 77, 78, 32.58416 + 80, 84, 85, 88, 89, 87, 83, 78, 72, 66, 59, 55, 50, 53, 50, 43, 32.58417 + 41, 41, 46, 53, 59, 60, 59, 60, 255, 255, 255, 255, 255, 255, 255, 255, 32.58418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58422 + 255, 255, 255, 255, 255, 255, 255, 19, 0, 27, 55, 76, 70, 69, 65, 71, 32.58423 + 71, 69, 69, 72, 75, 73, 75, 79, 85, 83, 81, 79, 81, 84, 88, 91, 32.58424 + 86, 83, 83, 86, 93, 93, 90, 84, 83, 78, 72, 64, 58, 53, 50, 47, 32.58425 + 44, 44, 45, 47, 50, 55, 61, 65, 67, 60, 255, 255, 255, 255, 255, 255, 32.58426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15, 28, 70, 68, 32.58431 + 77, 61, 64, 69, 66, 69, 74, 76, 73, 74, 75, 77, 79, 82, 85, 85, 32.58432 + 85, 84, 82, 89, 86, 85, 86, 90, 88, 84, 78, 79, 71, 61, 51, 46, 32.58433 + 43, 44, 43, 43, 45, 49, 53, 57, 63, 66, 66, 69, 255, 255, 255, 255, 32.58434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58439 + 255, 79, 72, 69, 59, 64, 69, 64, 67, 74, 79, 77, 75, 76, 76, 78, 32.58440 + 81, 84, 84, 82, 82, 78, 80, 80, 81, 80, 78, 76, 75, 74, 70, 61, 32.58441 + 49, 39, 37, 38, 40, 42, 46, 49, 54, 58, 63, 66, 67, 65, 255, 255, 32.58442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58447 + 255, 255, 255, 255, 255, 199, 61, 55, 68, 68, 64, 65, 73, 79, 79, 77, 32.58448 + 76, 83, 81, 79, 77, 77, 78, 80, 81, 71, 73, 75, 75, 73, 72, 72, 32.58449 + 72, 56, 50, 42, 37, 39, 43, 46, 48, 55, 55, 58, 62, 64, 65, 64, 32.58450 + 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 67, 67, 62, 60, 68, 32.58456 + 73, 74, 72, 72, 80, 78, 74, 72, 69, 68, 69, 70, 68, 69, 70, 72, 32.58457 + 73, 70, 62, 56, 40, 39, 41, 45, 50, 54, 56, 57, 60, 60, 61, 62, 32.58458 + 63, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58464 + 190, 59, 64, 69, 70, 67, 65, 68, 69, 70, 71, 67, 63, 55, 54, 64, 32.58465 + 62, 59, 62, 66, 60, 45, 31, 29, 33, 42, 53, 62, 66, 67, 64, 63, 32.58466 + 63, 62, 60, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58472 + 255, 255, 255, 255, 255, 255, 69, 47, 51, 55, 62, 64, 64, 58, 55, 57, 32.58473 + 55, 54, 57, 54, 53, 53, 47, 39, 38, 44, 45, 52, 63, 71, 74, 73, 32.58474 + 71, 69, 63, 67, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58477 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 44, 32.58481 + 42, 43, 45, 42, 41, 37, 38, 43, 48, 49, 46, 47, 54, 60, 65, 70, 32.58482 + 73, 72, 70, 71, 70, 65, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58489 + 255, 255, 255, 255, 255, 185, 44, 42, 64, 68, 74, 80, 79, 76, 75, 78, 32.58490 + 73, 76, 74, 70, 64, 63, 67, 132, 255, 255, 255, 255, 255, 255, 255, 255, 32.58491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 32.58498 + 83, 79, 77, 74, 76, 73, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.58502 +/* Define image 'enemy7' of size 114x125x1x3 and type 'const unsigned char' */ 32.58503 +const unsigned char data_enemy7[] = { 32.58504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58506 + 255, 255, 255, 255, 255, 255, 214, 161, 144, 153, 123, 148, 143, 165, 183, 203, 32.58507 + 203, 147, 167, 245, 233, 194, 171, 242, 251, 164, 192, 219, 221, 225, 223, 225, 32.58508 + 221, 200, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58513 + 255, 255, 255, 255, 255, 120, 128, 138, 126, 156, 144, 153, 120, 141, 140, 142, 32.58514 + 157, 184, 196, 153, 155, 236, 244, 202, 192, 252, 242, 162, 203, 229, 214, 205, 32.58515 + 200, 203, 203, 188, 169, 172, 189, 201, 255, 255, 255, 255, 255, 255, 255, 255, 32.58516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58520 + 255, 255, 255, 255, 255, 204, 110, 122, 131, 132, 122, 145, 142, 151, 130, 152, 32.58521 + 154, 127, 139, 162, 180, 163, 158, 237, 252, 206, 189, 238, 233, 177, 180, 176, 32.58522 + 174, 166, 157, 158, 166, 172, 168, 167, 169, 166, 181, 194, 208, 237, 255, 255, 32.58523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58527 + 255, 255, 255, 255, 255, 201, 103, 106, 113, 123, 130, 146, 132, 136, 132, 128, 32.58528 + 122, 139, 143, 127, 140, 146, 155, 168, 158, 214, 221, 173, 145, 174, 181, 154, 32.58529 + 117, 82, 104, 110, 107, 110, 112, 121, 124, 129, 128, 124, 149, 176, 194, 214, 32.58530 + 218, 226, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58534 + 255, 255, 255, 255, 255, 210, 113, 98, 109, 109, 112, 119, 124, 120, 108, 107, 32.58535 + 111, 111, 125, 147, 157, 125, 140, 129, 127, 157, 144, 171, 155, 142, 132, 139, 32.58536 + 114, 114, 99, 64, 78, 93, 105, 111, 102, 92, 95, 107, 117, 109, 139, 161, 32.58537 + 166, 161, 148, 146, 158, 171, 196, 228, 255, 255, 255, 255, 255, 255, 255, 255, 32.58538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58541 + 255, 255, 255, 229, 190, 156, 52, 32, 71, 107, 117, 113, 111, 110, 106, 90, 32.58542 + 76, 80, 104, 127, 131, 138, 148, 124, 121, 121, 124, 127, 127, 131, 136, 142, 32.58543 + 139, 127, 109, 99, 94, 88, 79, 92, 93, 99, 91, 74, 78, 96, 103, 87, 32.58544 + 125, 159, 154, 123, 105, 118, 138, 159, 193, 189, 138, 176, 255, 255, 255, 255, 32.58545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58548 + 255, 255, 240, 205, 189, 177, 179, 149, 62, 52, 78, 101, 103, 98, 96, 92, 32.58549 + 86, 89, 81, 83, 100, 115, 121, 126, 132, 126, 120, 115, 117, 120, 118, 114, 32.58550 + 114, 91, 96, 95, 86, 81, 81, 82, 79, 82, 77, 80, 76, 66, 70, 81, 32.58551 + 82, 79, 108, 133, 133, 121, 117, 125, 132, 133, 144, 137, 109, 171, 200, 192, 32.58552 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58555 + 255, 255, 255, 237, 175, 168, 164, 152, 149, 129, 63, 66, 78, 86, 84, 82, 32.58556 + 81, 76, 69, 69, 71, 73, 78, 85, 90, 94, 96, 110, 101, 95, 95, 97, 32.58557 + 91, 81, 75, 63, 71, 77, 72, 67, 65, 69, 71, 73, 63, 63, 65, 61, 32.58558 + 64, 68, 62, 64, 82, 95, 97, 103, 116, 120, 115, 90, 82, 78, 71, 140, 32.58559 + 159, 149, 157, 188, 179, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58562 + 255, 255, 255, 255, 255, 198, 173, 158, 161, 156, 146, 124, 69, 67, 67, 67, 32.58563 + 65, 72, 77, 74, 65, 64, 72, 76, 72, 73, 82, 84, 82, 100, 94, 92, 32.58564 + 92, 90, 81, 73, 69, 64, 67, 70, 67, 63, 61, 63, 61, 68, 58, 60, 32.58565 + 66, 63, 64, 64, 57, 61, 73, 78, 76, 87, 109, 118, 112, 85, 72, 77, 32.58566 + 75, 120, 117, 109, 128, 132, 135, 176, 239, 245, 255, 255, 255, 255, 255, 255, 32.58567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58569 + 255, 255, 255, 255, 255, 238, 187, 159, 165, 164, 176, 168, 139, 109, 65, 64, 32.58570 + 59, 56, 59, 68, 73, 69, 60, 56, 68, 71, 66, 67, 75, 79, 75, 80, 32.58571 + 81, 84, 84, 80, 71, 70, 73, 64, 57, 56, 57, 60, 61, 60, 59, 62, 32.58572 + 55, 63, 71, 65, 61, 62, 59, 67, 78, 82, 77, 83, 104, 121, 124, 95, 32.58573 + 79, 89, 85, 113, 96, 84, 101, 116, 131, 145, 195, 212, 227, 255, 255, 255, 32.58574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58576 + 255, 255, 255, 255, 255, 255, 230, 171, 157, 154, 171, 168, 164, 141, 106, 88, 32.58577 + 66, 65, 59, 56, 58, 63, 65, 59, 51, 49, 56, 60, 57, 59, 65, 67, 32.58578 + 65, 58, 60, 65, 66, 60, 55, 59, 66, 66, 57, 53, 55, 60, 60, 57, 32.58579 + 54, 55, 49, 60, 71, 63, 56, 59, 59, 59, 68, 73, 71, 73, 85, 103, 32.58580 + 113, 94, 72, 84, 83, 112, 100, 83, 81, 115, 139, 131, 167, 186, 197, 207, 32.58581 + 239, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58583 + 255, 255, 255, 255, 255, 255, 255, 255, 164, 155, 146, 155, 161, 137, 120, 106, 32.58584 + 87, 84, 74, 62, 56, 53, 54, 57, 56, 51, 47, 59, 61, 64, 64, 66, 32.58585 + 67, 65, 64, 65, 63, 63, 63, 58, 56, 61, 67, 66, 58, 56, 59, 62, 32.58586 + 56, 52, 52, 53, 45, 56, 69, 64, 57, 59, 59, 54, 54, 58, 64, 65, 32.58587 + 66, 72, 78, 89, 74, 92, 89, 118, 116, 99, 86, 82, 113, 122, 173, 179, 32.58588 + 172, 173, 179, 181, 177, 180, 189, 224, 255, 255, 255, 255, 255, 255, 255, 255, 32.58589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58590 + 255, 255, 255, 255, 255, 255, 255, 255, 231, 155, 136, 136, 135, 104, 101, 69, 32.58591 + 63, 76, 74, 69, 50, 53, 49, 49, 50, 53, 53, 52, 51, 56, 53, 52, 32.58592 + 56, 57, 53, 51, 49, 62, 55, 49, 48, 48, 47, 48, 53, 50, 49, 53, 32.58593 + 61, 60, 54, 54, 57, 54, 44, 53, 69, 67, 61, 61, 59, 67, 57, 58, 32.58594 + 70, 74, 64, 58, 58, 66, 67, 93, 83, 103, 104, 93, 79, 93, 93, 89, 32.58595 + 132, 126, 139, 172, 176, 156, 158, 167, 182, 195, 211, 238, 255, 255, 255, 255, 32.58596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 155, 137, 141, 146, 99, 63, 32.58598 + 63, 63, 65, 67, 63, 56, 48, 49, 46, 45, 47, 54, 57, 56, 50, 49, 32.58599 + 51, 54, 53, 51, 47, 45, 47, 50, 50, 48, 45, 42, 40, 41, 41, 39, 32.58600 + 37, 42, 51, 54, 50, 50, 54, 52, 49, 50, 53, 60, 64, 62, 59, 57, 32.58601 + 58, 59, 62, 63, 62, 58, 57, 57, 70, 73, 73, 87, 104, 91, 63, 66, 32.58602 + 69, 84, 106, 120, 130, 148, 163, 155, 159, 156, 166, 185, 187, 203, 241, 248, 32.58603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 148, 145, 153, 136, 32.58605 + 69, 63, 63, 66, 68, 67, 62, 55, 49, 43, 42, 43, 48, 54, 56, 51, 32.58606 + 47, 48, 50, 51, 51, 47, 44, 43, 43, 47, 47, 46, 43, 40, 40, 39, 32.58607 + 41, 42, 39, 41, 47, 48, 46, 47, 52, 50, 47, 45, 48, 53, 55, 55, 32.58608 + 52, 58, 58, 61, 63, 65, 64, 60, 59, 58, 66, 69, 70, 83, 94, 85, 32.58609 + 66, 61, 59, 65, 77, 88, 102, 129, 151, 174, 163, 162, 178, 188, 182, 190, 32.58610 + 216, 240, 250, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 150, 148, 141, 32.58612 + 126, 103, 54, 68, 71, 73, 70, 64, 56, 49, 43, 39, 39, 43, 49, 54, 32.58613 + 54, 48, 43, 47, 48, 48, 46, 43, 41, 41, 42, 44, 44, 43, 41, 40, 32.58614 + 39, 42, 44, 45, 42, 41, 43, 44, 44, 46, 51, 49, 46, 44, 44, 48, 32.58615 + 49, 47, 44, 55, 55, 58, 61, 63, 63, 60, 59, 61, 63, 64, 67, 75, 32.58616 + 79, 75, 66, 66, 62, 62, 68, 74, 83, 108, 132, 146, 137, 143, 155, 161, 32.58617 + 176, 195, 204, 218, 241, 244, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58618 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 171, 154, 32.58619 + 150, 118, 74, 72, 73, 78, 78, 76, 66, 55, 45, 41, 39, 40, 41, 44, 32.58620 + 49, 52, 53, 48, 45, 45, 46, 45, 43, 39, 38, 39, 40, 41, 41, 41, 32.58621 + 40, 39, 40, 42, 45, 44, 43, 42, 43, 44, 45, 47, 49, 47, 45, 43, 32.58622 + 44, 47, 47, 46, 44, 49, 49, 51, 54, 57, 58, 56, 54, 62, 59, 61, 32.58623 + 65, 67, 64, 60, 59, 55, 49, 51, 59, 63, 65, 73, 85, 90, 98, 113, 32.58624 + 113, 114, 157, 202, 205, 197, 227, 235, 237, 250, 255, 255, 255, 255, 255, 255, 32.58625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 182, 32.58626 + 185, 159, 126, 83, 51, 72, 93, 79, 75, 69, 57, 46, 39, 39, 40, 41, 32.58627 + 42, 43, 45, 48, 49, 47, 46, 44, 44, 44, 42, 38, 37, 38, 39, 39, 32.58628 + 40, 40, 39, 39, 40, 43, 46, 43, 45, 46, 47, 48, 50, 51, 49, 42, 32.58629 + 41, 41, 42, 45, 46, 45, 45, 45, 45, 48, 51, 54, 56, 55, 54, 60, 32.58630 + 57, 59, 64, 65, 58, 54, 53, 50, 44, 45, 59, 67, 64, 63, 64, 72, 32.58631 + 77, 99, 105, 95, 123, 175, 200, 199, 221, 232, 232, 244, 243, 255, 255, 255, 32.58632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 209, 32.58633 + 179, 180, 191, 142, 83, 61, 65, 86, 85, 67, 63, 56, 46, 40, 38, 40, 32.58634 + 43, 38, 40, 41, 42, 43, 45, 44, 45, 43, 44, 44, 43, 39, 37, 37, 32.58635 + 38, 37, 40, 40, 40, 39, 40, 43, 46, 42, 45, 47, 46, 48, 51, 52, 32.58636 + 49, 37, 37, 38, 40, 42, 43, 44, 47, 46, 46, 48, 52, 56, 59, 59, 32.58637 + 58, 62, 58, 59, 62, 64, 58, 54, 53, 58, 49, 49, 61, 73, 73, 72, 32.58638 + 76, 79, 68, 90, 119, 109, 95, 128, 178, 195, 211, 234, 234, 237, 240, 236, 32.58639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 32.58640 + 209, 194, 179, 177, 168, 102, 55, 60, 71, 76, 61, 55, 49, 44, 40, 39, 32.58641 + 39, 39, 40, 36, 40, 42, 44, 45, 45, 43, 43, 43, 45, 46, 45, 41, 32.58642 + 39, 38, 38, 38, 39, 41, 40, 40, 41, 44, 46, 46, 49, 48, 44, 44, 32.58643 + 49, 51, 47, 38, 39, 40, 43, 44, 45, 46, 48, 48, 48, 51, 55, 60, 32.58644 + 63, 64, 64, 74, 71, 66, 62, 63, 62, 57, 50, 50, 46, 48, 56, 64, 32.58645 + 62, 68, 76, 72, 64, 74, 104, 108, 85, 92, 132, 152, 169, 218, 229, 228, 32.58646 + 236, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58647 + 242, 215, 203, 185, 172, 177, 140, 68, 53, 68, 57, 47, 47, 47, 44, 39, 32.58648 + 38, 40, 39, 36, 34, 36, 41, 47, 50, 50, 48, 44, 43, 43, 45, 47, 32.58649 + 47, 43, 40, 38, 38, 39, 40, 42, 41, 40, 41, 44, 46, 50, 51, 47, 32.58650 + 39, 39, 45, 51, 47, 44, 45, 46, 47, 47, 47, 49, 52, 50, 50, 51, 32.58651 + 56, 61, 64, 66, 64, 91, 85, 74, 62, 61, 62, 57, 46, 56, 58, 64, 32.58652 + 70, 69, 64, 71, 83, 59, 65, 61, 67, 85, 79, 69, 80, 98, 121, 195, 32.58653 + 220, 218, 235, 231, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.58654 + 255, 241, 206, 203, 197, 188, 187, 160, 103, 54, 48, 55, 52, 47, 49, 43, 32.58655 + 41, 39, 36, 34, 33, 33, 35, 43, 41, 40, 43, 49, 51, 47, 44, 42, 32.58656 + 42, 41, 41, 38, 36, 35, 34, 39, 39, 39, 40, 44, 46, 50, 52, 53, 32.58657 + 45, 40, 43, 48, 49, 46, 41, 44, 41, 41, 45, 49, 53, 55, 57, 48, 32.58658 + 57, 56, 55, 61, 62, 64, 75, 83, 88, 87, 73, 61, 56, 58, 58, 62, 32.58659 + 57, 59, 67, 74, 72, 74, 78, 77, 61, 54, 64, 77, 74, 63, 53, 69, 32.58660 + 78, 117, 154, 181, 227, 244, 221, 239, 255, 255, 255, 255, 255, 255, 255, 255, 32.58661 + 255, 255, 255, 215, 211, 198, 201, 187, 145, 115, 80, 52, 52, 57, 52, 45, 32.58662 + 44, 41, 40, 38, 36, 33, 33, 33, 34, 42, 41, 40, 43, 48, 50, 47, 32.58663 + 43, 41, 41, 41, 40, 38, 36, 35, 34, 38, 37, 37, 38, 42, 44, 47, 32.58664 + 48, 43, 40, 41, 42, 45, 46, 47, 48, 51, 51, 51, 52, 54, 54, 54, 32.58665 + 53, 53, 61, 61, 62, 71, 72, 71, 78, 77, 83, 83, 69, 58, 55, 58, 32.58666 + 59, 59, 60, 63, 69, 69, 66, 69, 75, 70, 59, 55, 62, 66, 66, 61, 32.58667 + 60, 59, 59, 68, 95, 131, 167, 210, 245, 234, 238, 255, 255, 255, 255, 255, 32.58668 + 255, 255, 255, 255, 255, 214, 220, 205, 211, 185, 110, 75, 62, 51, 51, 54, 32.58669 + 52, 45, 42, 40, 39, 37, 35, 34, 34, 34, 35, 41, 40, 40, 43, 48, 32.58670 + 49, 45, 42, 41, 41, 41, 40, 38, 37, 35, 34, 37, 36, 36, 37, 39, 32.58671 + 41, 43, 44, 38, 40, 44, 44, 45, 48, 53, 57, 53, 53, 56, 56, 56, 32.58672 + 55, 55, 54, 59, 66, 68, 72, 83, 83, 78, 80, 72, 77, 77, 67, 56, 32.58673 + 55, 60, 63, 59, 61, 67, 70, 67, 63, 65, 68, 62, 56, 55, 57, 57, 32.58674 + 57, 59, 64, 58, 61, 59, 80, 114, 120, 155, 227, 248, 246, 255, 255, 255, 32.58675 + 255, 255, 255, 255, 255, 255, 238, 211, 221, 214, 198, 149, 82, 64, 61, 53, 32.58676 + 46, 46, 50, 49, 42, 38, 37, 37, 35, 34, 34, 34, 35, 40, 40, 41, 32.58677 + 44, 47, 48, 44, 41, 41, 41, 41, 40, 38, 37, 36, 35, 37, 37, 37, 32.58678 + 37, 39, 40, 41, 41, 40, 44, 47, 46, 49, 54, 61, 63, 56, 57, 60, 32.58679 + 60, 61, 63, 66, 68, 70, 76, 77, 81, 92, 90, 81, 81, 71, 73, 74, 32.58680 + 67, 59, 56, 64, 68, 62, 63, 67, 71, 72, 69, 67, 64, 57, 55, 56, 32.58681 + 57, 56, 56, 59, 62, 60, 72, 81, 95, 110, 107, 124, 164, 224, 241, 252, 32.58682 + 255, 255, 255, 255, 255, 255, 255, 255, 219, 209, 211, 210, 156, 85, 56, 63, 32.58683 + 62, 56, 46, 47, 51, 48, 39, 38, 36, 36, 36, 36, 36, 35, 35, 39, 32.58684 + 41, 43, 46, 48, 47, 44, 41, 40, 40, 40, 40, 38, 37, 36, 35, 37, 32.58685 + 37, 38, 39, 41, 41, 41, 41, 46, 49, 49, 47, 54, 62, 65, 61, 65, 32.58686 + 66, 66, 65, 66, 70, 77, 82, 81, 86, 84, 86, 96, 93, 82, 81, 72, 32.58687 + 72, 73, 66, 58, 55, 63, 71, 65, 64, 66, 73, 81, 84, 76, 63, 57, 32.58688 + 55, 55, 57, 60, 61, 60, 57, 63, 71, 83, 81, 80, 110, 134, 127, 142, 32.58689 + 186, 253, 255, 255, 255, 255, 255, 255, 255, 242, 226, 207, 200, 195, 123, 54, 32.58690 + 56, 54, 55, 55, 53, 52, 50, 43, 34, 37, 38, 39, 37, 38, 37, 37, 32.58691 + 38, 41, 43, 46, 48, 49, 47, 44, 42, 39, 40, 40, 40, 39, 38, 37, 32.58692 + 36, 37, 37, 39, 40, 42, 42, 42, 42, 50, 52, 51, 47, 54, 63, 64, 32.58693 + 60, 68, 69, 71, 67, 67, 70, 76, 83, 85, 91, 90, 89, 94, 90, 82, 32.58694 + 81, 74, 71, 71, 67, 57, 52, 59, 69, 67, 66, 68, 77, 91, 96, 85, 32.58695 + 67, 60, 57, 57, 58, 62, 65, 61, 55, 70, 73, 84, 77, 71, 117, 147, 32.58696 + 120, 95, 127, 243, 255, 255, 255, 255, 255, 255, 243, 213, 220, 208, 192, 166, 32.58697 + 106, 58, 60, 52, 54, 55, 57, 53, 46, 38, 37, 38, 38, 39, 41, 41, 32.58698 + 41, 40, 40, 41, 44, 48, 50, 50, 48, 44, 43, 39, 39, 40, 40, 39, 32.58699 + 38, 37, 36, 35, 36, 39, 40, 42, 42, 43, 42, 49, 57, 59, 54, 55, 32.58700 + 63, 69, 66, 68, 71, 75, 73, 71, 70, 74, 80, 87, 93, 90, 86, 89, 32.58701 + 85, 82, 86, 79, 74, 73, 68, 59, 51, 57, 69, 67, 71, 75, 84, 96, 32.58702 + 101, 89, 71, 63, 59, 57, 55, 59, 64, 62, 57, 72, 81, 88, 89, 92, 32.58703 + 114, 134, 136, 105, 94, 239, 238, 255, 255, 255, 255, 255, 218, 217, 216, 211, 32.58704 + 185, 136, 90, 62, 46, 58, 57, 58, 55, 48, 36, 37, 45, 38, 39, 40, 32.58705 + 41, 42, 42, 41, 40, 42, 45, 49, 51, 50, 47, 45, 42, 39, 39, 40, 32.58706 + 40, 40, 39, 38, 37, 32, 34, 36, 38, 40, 42, 42, 44, 49, 62, 69, 32.58707 + 60, 58, 66, 73, 74, 70, 78, 85, 86, 84, 83, 84, 89, 88, 95, 89, 32.58708 + 84, 86, 82, 80, 86, 84, 78, 76, 72, 62, 54, 60, 73, 70, 76, 83, 32.58709 + 89, 99, 103, 93, 76, 68, 68, 65, 58, 55, 61, 62, 60, 63, 77, 75, 32.58710 + 81, 100, 98, 115, 161, 111, 72, 245, 251, 255, 255, 255, 255, 255, 224, 212, 32.58711 + 209, 214, 190, 115, 50, 37, 50, 47, 48, 48, 46, 45, 42, 39, 37, 43, 32.58712 + 42, 41, 39, 38, 38, 39, 39, 40, 42, 44, 42, 41, 39, 40, 42, 39, 32.58713 + 41, 43, 44, 42, 42, 41, 39, 37, 31, 31, 36, 40, 39, 43, 51, 53, 32.58714 + 61, 69, 75, 75, 75, 77, 80, 87, 84, 85, 93, 97, 91, 88, 88, 93, 32.58715 + 96, 93, 80, 74, 80, 85, 83, 72, 65, 60, 57, 56, 57, 70, 82, 99, 32.58716 + 94, 91, 95, 101, 104, 97, 89, 96, 96, 86, 70, 58, 57, 58, 57, 64, 32.58717 + 65, 78, 86, 85, 94, 106, 108, 116, 94, 159, 203, 255, 255, 255, 255, 245, 32.58718 + 222, 209, 211, 208, 171, 97, 44, 37, 47, 48, 48, 47, 46, 44, 41, 39, 32.58719 + 37, 41, 41, 42, 42, 41, 39, 38, 37, 37, 40, 42, 43, 41, 39, 38, 32.58720 + 38, 36, 38, 42, 43, 43, 42, 43, 42, 32, 29, 33, 40, 43, 43, 47, 32.58721 + 55, 54, 61, 69, 74, 78, 83, 89, 93, 94, 91, 90, 94, 94, 92, 95, 32.58722 + 99, 106, 105, 98, 85, 79, 84, 90, 90, 69, 63, 63, 64, 67, 69, 79, 32.58723 + 91, 105, 100, 96, 99, 108, 115, 115, 113, 114, 109, 102, 91, 75, 60, 58, 32.58724 + 62, 59, 61, 76, 86, 85, 94, 109, 110, 92, 94, 182, 237, 255, 255, 255, 32.58725 + 255, 221, 218, 210, 212, 196, 140, 69, 38, 41, 46, 49, 49, 48, 47, 45, 32.58726 + 42, 40, 39, 40, 41, 43, 43, 43, 40, 38, 36, 35, 39, 42, 45, 42, 32.58727 + 40, 37, 36, 35, 37, 41, 42, 43, 42, 44, 42, 30, 29, 36, 42, 43, 32.58728 + 43, 48, 55, 58, 61, 65, 70, 78, 86, 96, 104, 106, 103, 101, 98, 97, 32.58729 + 95, 103, 111, 119, 115, 103, 86, 73, 71, 74, 74, 59, 56, 58, 69, 80, 32.58730 + 88, 97, 106, 112, 107, 105, 111, 123, 135, 142, 143, 130, 119, 110, 101, 81, 32.58731 + 59, 56, 63, 57, 59, 75, 85, 85, 94, 108, 109, 110, 98, 163, 217, 253, 32.58732 + 255, 255, 255, 219, 215, 220, 214, 177, 106, 45, 38, 48, 44, 51, 50, 49, 32.58733 + 48, 46, 44, 43, 42, 42, 42, 42, 42, 41, 40, 39, 38, 38, 41, 43, 32.58734 + 44, 42, 40, 38, 38, 36, 39, 43, 44, 43, 43, 43, 41, 36, 38, 43, 32.58735 + 46, 45, 47, 53, 61, 61, 61, 62, 67, 74, 86, 100, 108, 119, 118, 116, 32.58736 + 111, 108, 109, 117, 125, 132, 128, 117, 100, 85, 76, 74, 75, 73, 70, 74, 32.58737 + 88, 101, 107, 112, 116, 122, 122, 125, 134, 147, 159, 167, 167, 150, 139, 121, 32.58738 + 100, 79, 66, 60, 59, 57, 58, 74, 83, 83, 90, 103, 106, 108, 114, 172, 32.58739 + 193, 188, 255, 255, 255, 219, 215, 233, 209, 153, 79, 33, 41, 53, 43, 51, 32.58740 + 50, 49, 48, 47, 46, 46, 45, 46, 44, 41, 39, 38, 39, 41, 42, 42, 32.58741 + 43, 44, 41, 39, 39, 42, 44, 40, 42, 44, 45, 43, 42, 42, 42, 45, 32.58742 + 47, 50, 50, 53, 62, 71, 80, 68, 67, 67, 71, 81, 95, 109, 117, 124, 32.58743 + 127, 130, 126, 124, 125, 131, 136, 140, 137, 136, 129, 120, 114, 112, 117, 121, 32.58744 + 117, 118, 124, 129, 127, 124, 125, 133, 138, 148, 158, 169, 175, 180, 181, 174, 32.58745 + 168, 140, 99, 78, 79, 72, 58, 57, 59, 72, 80, 78, 85, 98, 99, 127, 32.58746 + 115, 147, 176, 191, 255, 255, 245, 221, 218, 233, 194, 130, 67, 33, 43, 52, 32.58747 + 41, 48, 48, 47, 46, 46, 47, 47, 48, 48, 45, 41, 38, 37, 39, 42, 32.58748 + 44, 43, 44, 43, 41, 38, 38, 42, 45, 41, 44, 47, 47, 46, 44, 44, 32.58749 + 44, 44, 46, 46, 50, 62, 78, 91, 98, 82, 82, 83, 88, 99, 111, 122, 32.58750 + 127, 124, 131, 137, 134, 134, 138, 140, 140, 143, 144, 146, 147, 142, 137, 136, 32.58751 + 141, 148, 145, 144, 148, 148, 145, 141, 143, 145, 152, 162, 172, 179, 182, 185, 32.58752 + 186, 187, 188, 161, 106, 78, 81, 76, 56, 59, 59, 70, 77, 74, 81, 93, 32.58753 + 97, 99, 121, 177, 205, 188, 255, 255, 225, 224, 222, 219, 171, 113, 66, 39, 32.58754 + 41, 46, 41, 43, 43, 42, 42, 43, 45, 47, 48, 47, 45, 42, 40, 39, 32.58755 + 40, 41, 42, 41, 42, 41, 40, 37, 38, 40, 42, 40, 45, 48, 50, 49, 32.58756 + 48, 50, 51, 46, 50, 51, 57, 74, 96, 110, 112, 105, 104, 105, 109, 117, 32.58757 + 125, 129, 130, 126, 132, 137, 138, 142, 148, 150, 146, 149, 149, 149, 149, 144, 32.58758 + 137, 136, 143, 149, 148, 150, 152, 152, 151, 153, 158, 154, 159, 165, 169, 172, 32.58759 + 177, 184, 188, 190, 200, 182, 131, 89, 77, 71, 60, 60, 59, 69, 74, 72, 32.58760 + 81, 94, 98, 117, 121, 161, 201, 195, 255, 255, 226, 226, 224, 203, 154, 103, 32.58761 + 70, 44, 38, 41, 41, 39, 39, 39, 39, 41, 43, 46, 47, 44, 44, 43, 32.58762 + 42, 41, 41, 40, 40, 36, 39, 40, 41, 38, 37, 37, 38, 40, 44, 49, 32.58763 + 51, 52, 53, 54, 57, 59, 63, 65, 73, 94, 115, 124, 124, 124, 123, 124, 32.58764 + 125, 128, 131, 129, 127, 130, 135, 140, 141, 147, 156, 157, 151, 154, 152, 153, 32.58765 + 154, 149, 142, 145, 152, 152, 153, 154, 154, 152, 149, 155, 161, 162, 161, 162, 32.58766 + 161, 163, 170, 182, 191, 195, 209, 201, 157, 106, 77, 71, 71, 61, 60, 70, 32.58767 + 75, 72, 81, 98, 102, 118, 125, 165, 203, 187, 255, 244, 227, 228, 226, 198, 32.58768 + 142, 112, 73, 35, 43, 47, 40, 46, 50, 50, 46, 43, 45, 45, 42, 46, 32.58769 + 46, 46, 43, 40, 38, 38, 39, 44, 44, 44, 44, 43, 41, 39, 37, 43, 32.58770 + 47, 50, 47, 49, 54, 60, 61, 67, 80, 92, 102, 107, 116, 125, 134, 135, 32.58771 + 139, 141, 137, 137, 141, 143, 141, 146, 149, 150, 149, 153, 162, 164, 161, 153, 32.58772 + 158, 162, 159, 154, 151, 155, 160, 152, 152, 155, 159, 162, 161, 160, 156, 160, 32.58773 + 163, 164, 162, 166, 172, 176, 176, 185, 195, 201, 178, 133, 101, 80, 57, 66, 32.58774 + 72, 72, 69, 69, 79, 94, 102, 114, 136, 164, 193, 193, 255, 221, 224, 223, 32.58775 + 220, 189, 127, 109, 47, 47, 36, 53, 40, 44, 48, 48, 45, 44, 47, 48, 32.58776 + 46, 46, 45, 42, 39, 38, 41, 46, 51, 40, 42, 42, 44, 45, 44, 43, 32.58777 + 44, 43, 50, 53, 54, 56, 65, 71, 75, 92, 103, 115, 123, 129, 134, 141, 32.58778 + 148, 142, 146, 146, 143, 143, 150, 151, 150, 155, 157, 157, 154, 158, 164, 165, 32.58779 + 161, 163, 158, 155, 157, 163, 165, 161, 155, 151, 150, 152, 156, 159, 160, 159, 32.58780 + 156, 160, 162, 162, 162, 164, 172, 175, 175, 186, 202, 223, 222, 191, 156, 111, 32.58781 + 67, 69, 63, 70, 60, 62, 89, 103, 103, 117, 128, 157, 196, 201, 255, 221, 32.58782 + 223, 221, 216, 179, 123, 92, 33, 47, 42, 49, 42, 46, 49, 48, 45, 45, 32.58783 + 48, 48, 45, 44, 44, 43, 42, 41, 44, 49, 52, 41, 42, 44, 46, 46, 32.58784 + 46, 46, 46, 44, 51, 55, 57, 64, 73, 81, 86, 98, 107, 116, 123, 127, 32.58785 + 130, 137, 142, 146, 149, 150, 148, 149, 154, 156, 157, 161, 162, 160, 157, 159, 32.58786 + 162, 163, 159, 164, 160, 157, 160, 166, 168, 163, 157, 150, 147, 149, 151, 155, 32.58787 + 157, 159, 156, 159, 161, 162, 160, 164, 171, 175, 173, 191, 196, 210, 215, 202, 32.58788 + 178, 135, 87, 73, 60, 80, 61, 54, 88, 104, 110, 126, 126, 158, 204, 206, 32.58789 + 255, 221, 224, 222, 217, 172, 127, 65, 40, 36, 58, 36, 46, 51, 52, 50, 32.58790 + 46, 45, 46, 44, 39, 40, 44, 48, 50, 48, 44, 41, 39, 45, 46, 47, 32.58791 + 48, 46, 45, 45, 46, 47, 53, 57, 58, 66, 76, 86, 91, 111, 117, 125, 32.58792 + 131, 136, 139, 143, 147, 145, 149, 150, 147, 149, 154, 158, 156, 159, 158, 156, 32.58793 + 155, 157, 158, 158, 156, 156, 161, 168, 167, 162, 159, 162, 164, 152, 148, 148, 32.58794 + 151, 156, 158, 159, 159, 160, 162, 163, 161, 164, 172, 175, 173, 186, 195, 219, 32.58795 + 237, 234, 212, 163, 110, 76, 56, 85, 74, 56, 83, 100, 122, 131, 130, 167, 32.58796 + 211, 204, 255, 222, 225, 222, 215, 165, 112, 48, 40, 38, 61, 33, 48, 50, 32.58797 + 50, 48, 44, 44, 47, 44, 38, 40, 44, 48, 49, 46, 40, 36, 34, 44, 32.58798 + 45, 47, 48, 48, 47, 48, 47, 52, 57, 61, 62, 68, 79, 88, 93, 117, 32.58799 + 123, 131, 137, 142, 147, 149, 151, 145, 150, 149, 147, 150, 155, 158, 156, 155, 32.58800 + 153, 152, 154, 155, 155, 155, 154, 153, 159, 167, 166, 161, 158, 160, 163, 156, 32.58801 + 151, 152, 154, 158, 162, 163, 162, 162, 165, 166, 164, 167, 175, 177, 175, 176, 32.58802 + 182, 203, 217, 219, 211, 184, 145, 103, 65, 73, 76, 73, 85, 93, 115, 112, 32.58803 + 127, 168, 208, 204, 255, 223, 225, 219, 211, 157, 82, 42, 33, 52, 50, 40, 32.58804 + 48, 44, 44, 42, 41, 45, 49, 47, 42, 42, 42, 42, 40, 38, 37, 39, 32.58805 + 41, 39, 41, 44, 47, 49, 50, 52, 52, 57, 63, 65, 67, 72, 85, 95, 32.58806 + 100, 114, 121, 126, 133, 140, 142, 145, 146, 149, 151, 151, 148, 151, 155, 158, 32.58807 + 156, 153, 150, 150, 155, 157, 155, 155, 156, 160, 156, 156, 159, 165, 166, 161, 32.58808 + 152, 158, 155, 155, 157, 162, 164, 163, 163, 164, 168, 168, 168, 170, 178, 180, 32.58809 + 176, 197, 197, 205, 208, 209, 221, 226, 213, 170, 113, 64, 66, 87, 87, 82, 32.58810 + 82, 90, 119, 152, 188, 206, 255, 225, 227, 221, 212, 156, 66, 34, 47, 55, 32.58811 + 48, 39, 48, 41, 41, 39, 39, 44, 49, 47, 41, 40, 40, 40, 38, 36, 32.58812 + 37, 41, 44, 37, 39, 42, 46, 48, 50, 52, 52, 55, 61, 65, 68, 77, 32.58813 + 90, 102, 110, 126, 131, 135, 140, 147, 149, 150, 151, 150, 152, 151, 148, 150, 32.58814 + 154, 156, 154, 154, 149, 149, 155, 157, 153, 151, 153, 158, 155, 156, 159, 165, 32.58815 + 165, 160, 150, 159, 156, 157, 161, 163, 164, 164, 162, 167, 170, 171, 171, 173, 32.58816 + 180, 183, 178, 164, 174, 197, 207, 206, 213, 214, 200, 222, 177, 74, 57, 90, 32.58817 + 90, 90, 74, 90, 122, 131, 157, 222, 255, 227, 231, 226, 216, 160, 69, 23, 32.58818 + 72, 45, 56, 31, 50, 43, 42, 39, 38, 42, 47, 44, 37, 37, 40, 43, 32.58819 + 44, 42, 39, 37, 37, 40, 42, 44, 45, 47, 47, 47, 48, 49, 56, 63, 32.58820 + 68, 81, 97, 111, 119, 128, 132, 135, 140, 144, 146, 147, 145, 146, 150, 149, 32.58821 + 145, 145, 149, 150, 148, 151, 146, 146, 152, 153, 150, 147, 149, 150, 158, 166, 32.58822 + 166, 162, 158, 160, 161, 161, 160, 160, 163, 166, 166, 164, 161, 170, 172, 173, 32.58823 + 172, 175, 180, 184, 179, 180, 184, 195, 197, 193, 206, 218, 211, 232, 214, 89, 32.58824 + 54, 90, 97, 119, 104, 105, 132, 116, 133, 255, 255, 225, 218, 235, 213, 151, 32.58825 + 40, 50, 58, 41, 49, 30, 36, 42, 39, 36, 36, 38, 39, 37, 35, 38, 32.58826 + 38, 38, 38, 38, 38, 38, 38, 37, 40, 43, 41, 41, 41, 46, 52, 54, 32.58827 + 64, 69, 77, 91, 110, 124, 129, 136, 144, 147, 145, 145, 151, 153, 150, 152, 32.58828 + 152, 151, 148, 144, 144, 145, 149, 148, 145, 146, 155, 156, 153, 154, 164, 152, 32.58829 + 161, 161, 159, 165, 165, 168, 175, 167, 167, 165, 165, 168, 174, 172, 167, 172, 32.58830 + 175, 178, 178, 176, 178, 186, 190, 191, 188, 192, 198, 203, 210, 215, 217, 236, 32.58831 + 243, 132, 85, 76, 101, 122, 111, 115, 115, 118, 150, 255, 255, 224, 216, 235, 32.58832 + 203, 95, 28, 41, 46, 35, 48, 41, 41, 42, 40, 39, 40, 43, 44, 42, 32.58833 + 40, 38, 38, 38, 38, 38, 38, 38, 38, 38, 39, 38, 37, 35, 39, 44, 32.58834 + 50, 53, 62, 72, 83, 103, 123, 137, 141, 139, 143, 143, 141, 145, 152, 156, 32.58835 + 154, 145, 143, 141, 140, 140, 138, 139, 141, 143, 139, 139, 143, 146, 144, 146, 32.58836 + 149, 151, 162, 163, 164, 170, 171, 169, 177, 171, 170, 168, 166, 168, 172, 172, 32.58837 + 165, 171, 175, 178, 180, 178, 179, 184, 185, 176, 177, 182, 191, 197, 203, 208, 32.58838 + 210, 205, 232, 186, 147, 80, 81, 128, 132, 127, 110, 113, 159, 255, 255, 223, 32.58839 + 216, 232, 181, 55, 41, 45, 45, 38, 44, 46, 38, 37, 36, 37, 39, 42, 32.58840 + 42, 40, 38, 38, 38, 38, 38, 38, 38, 38, 38, 39, 38, 35, 34, 37, 32.58841 + 41, 48, 54, 62, 70, 81, 94, 112, 131, 140, 139, 154, 152, 146, 142, 145, 32.58842 + 150, 152, 147, 150, 146, 142, 140, 142, 144, 143, 141, 145, 145, 143, 141, 146, 32.58843 + 150, 148, 146, 144, 156, 159, 163, 172, 171, 169, 175, 168, 169, 167, 165, 166, 32.58844 + 170, 169, 164, 168, 170, 174, 177, 178, 178, 178, 176, 182, 184, 192, 202, 209, 32.58845 + 215, 220, 222, 234, 232, 203, 167, 78, 68, 129, 132, 129, 99, 112, 168, 255, 32.58846 + 245, 225, 221, 230, 151, 40, 56, 45, 48, 46, 37, 45, 35, 35, 36, 38, 32.58847 + 40, 41, 40, 37, 36, 38, 38, 38, 38, 38, 38, 38, 38, 36, 35, 35, 32.58848 + 36, 41, 47, 54, 59, 67, 76, 87, 101, 120, 136, 143, 139, 156, 149, 143, 32.58849 + 141, 144, 147, 144, 140, 146, 138, 130, 127, 129, 133, 133, 131, 131, 135, 132, 32.58850 + 127, 131, 141, 139, 131, 139, 149, 153, 155, 169, 169, 168, 174, 163, 166, 166, 32.58851 + 164, 166, 168, 168, 165, 165, 165, 166, 170, 173, 176, 175, 172, 181, 181, 188, 32.58852 + 196, 205, 213, 221, 224, 238, 226, 212, 191, 115, 78, 102, 95, 124, 99, 131, 32.58853 + 206, 255, 222, 228, 227, 229, 119, 31, 49, 30, 44, 51, 32, 43, 40, 42, 32.58854 + 43, 45, 45, 44, 41, 39, 37, 38, 38, 38, 38, 38, 38, 38, 38, 35, 32.58855 + 34, 36, 38, 42, 48, 54, 59, 63, 77, 90, 108, 127, 146, 151, 149, 138, 32.58856 + 133, 133, 139, 145, 146, 141, 137, 139, 130, 120, 117, 120, 126, 130, 130, 124, 32.58857 + 129, 128, 123, 127, 138, 138, 130, 140, 147, 147, 147, 160, 163, 163, 169, 158, 32.58858 + 162, 164, 162, 165, 167, 169, 166, 165, 163, 162, 163, 166, 170, 171, 170, 176, 32.58859 + 176, 181, 187, 198, 209, 222, 228, 229, 230, 224, 191, 122, 63, 80, 107, 118, 32.58860 + 114, 170, 255, 255, 222, 228, 229, 228, 93, 39, 44, 27, 43, 50, 32, 41, 32.58861 + 42, 42, 44, 45, 44, 41, 38, 37, 37, 38, 38, 38, 38, 38, 38, 38, 32.58862 + 37, 36, 37, 40, 39, 40, 45, 54, 62, 76, 91, 106, 119, 132, 145, 149, 32.58863 + 147, 140, 135, 137, 143, 144, 137, 127, 123, 116, 110, 104, 103, 106, 113, 119, 32.58864 + 121, 119, 123, 125, 124, 126, 130, 134, 134, 136, 142, 139, 140, 152, 156, 155, 32.58865 + 162, 156, 163, 165, 163, 164, 166, 169, 166, 166, 162, 161, 159, 159, 159, 163, 32.58866 + 162, 169, 167, 170, 176, 186, 200, 213, 221, 234, 229, 225, 179, 114, 52, 74, 32.58867 + 114, 102, 120, 200, 255, 255, 225, 226, 226, 227, 78, 48, 45, 40, 46, 44, 32.58868 + 38, 41, 39, 40, 41, 42, 41, 37, 35, 36, 38, 38, 38, 38, 38, 38, 32.58869 + 38, 38, 37, 38, 40, 42, 42, 41, 48, 66, 79, 99, 112, 127, 132, 136, 32.58870 + 141, 144, 143, 143, 137, 136, 137, 128, 112, 99, 95, 80, 79, 77, 77, 80, 32.58871 + 83, 86, 87, 90, 90, 94, 97, 98, 96, 101, 109, 114, 121, 121, 127, 143, 32.58872 + 150, 149, 157, 158, 165, 166, 163, 163, 163, 165, 163, 159, 160, 159, 154, 148, 32.58873 + 143, 144, 145, 141, 139, 139, 142, 147, 156, 165, 172, 181, 177, 223, 206, 136, 32.58874 + 66, 69, 70, 83, 108, 209, 255, 255, 228, 223, 222, 226, 73, 39, 37, 45, 32.58875 + 43, 37, 45, 47, 40, 42, 44, 45, 43, 40, 39, 42, 44, 38, 38, 38, 32.58876 + 38, 38, 38, 38, 38, 38, 42, 45, 44, 45, 57, 81, 101, 105, 121, 136, 32.58877 + 141, 141, 145, 150, 148, 126, 120, 120, 117, 106, 88, 78, 76, 77, 79, 81, 32.58878 + 82, 80, 78, 77, 75, 74, 73, 79, 85, 81, 74, 80, 94, 88, 99, 105, 32.58879 + 117, 138, 145, 147, 154, 161, 167, 169, 165, 161, 161, 162, 160, 152, 154, 155, 32.58880 + 148, 137, 129, 127, 126, 125, 124, 121, 121, 121, 124, 128, 130, 129, 123, 213, 32.58881 + 213, 126, 63, 84, 74, 71, 95, 209, 255, 255, 226, 217, 220, 223, 101, 43, 32.58882 + 31, 47, 45, 38, 46, 40, 39, 37, 37, 38, 38, 38, 37, 36, 35, 38, 32.58883 + 38, 38, 39, 39, 40, 40, 40, 39, 36, 42, 51, 55, 61, 85, 113, 118, 32.58884 + 135, 148, 145, 141, 140, 135, 123, 133, 124, 108, 90, 84, 87, 86, 80, 87, 32.58885 + 80, 73, 70, 74, 78, 77, 74, 65, 61, 63, 68, 71, 72, 75, 81, 88, 32.58886 + 84, 86, 97, 113, 127, 138, 148, 163, 162, 161, 159, 163, 169, 170, 165, 153, 32.58887 + 151, 144, 134, 122, 112, 111, 112, 108, 106, 101, 96, 92, 91, 95, 97, 111, 32.58888 + 107, 162, 192, 149, 95, 64, 72, 84, 105, 197, 255, 255, 225, 219, 222, 226, 32.58889 + 108, 40, 30, 48, 46, 39, 47, 42, 44, 38, 38, 38, 37, 37, 36, 36, 32.58890 + 36, 38, 38, 38, 39, 39, 40, 40, 40, 44, 38, 41, 56, 68, 79, 100, 32.58891 + 121, 124, 133, 142, 144, 143, 141, 138, 131, 102, 97, 91, 85, 88, 97, 100, 32.58892 + 97, 102, 97, 91, 86, 85, 84, 81, 77, 75, 69, 70, 72, 72, 69, 70, 32.58893 + 76, 95, 93, 96, 103, 116, 122, 130, 139, 156, 157, 156, 155, 157, 163, 162, 32.58894 + 157, 149, 141, 129, 115, 103, 94, 90, 91, 82, 82, 82, 80, 79, 80, 83, 32.58895 + 84, 85, 87, 140, 171, 155, 117, 77, 61, 95, 112, 198, 255, 255, 225, 220, 32.58896 + 222, 226, 114, 41, 33, 52, 49, 38, 45, 42, 46, 40, 39, 37, 36, 36, 32.58897 + 36, 37, 38, 38, 38, 38, 38, 39, 39, 39, 41, 46, 40, 43, 63, 84, 32.58898 + 100, 116, 131, 141, 140, 141, 144, 141, 133, 126, 124, 108, 107, 108, 109, 115, 32.58899 + 122, 125, 124, 126, 125, 124, 123, 122, 119, 117, 113, 111, 105, 102, 102, 100, 32.58900 + 98, 99, 103, 105, 104, 109, 115, 121, 123, 131, 140, 153, 157, 157, 156, 157, 32.58901 + 162, 159, 153, 153, 141, 124, 110, 98, 93, 88, 87, 78, 83, 87, 90, 93, 32.58902 + 95, 99, 101, 106, 111, 147, 170, 178, 162, 105, 65, 93, 117, 213, 255, 255, 32.58903 + 225, 222, 220, 222, 118, 46, 39, 58, 52, 37, 41, 38, 43, 41, 40, 37, 32.58904 + 35, 35, 36, 38, 39, 38, 38, 38, 38, 38, 38, 38, 41, 47, 45, 52, 32.58905 + 72, 96, 113, 128, 139, 151, 143, 139, 143, 139, 127, 117, 115, 113, 115, 119, 32.58906 + 123, 127, 127, 126, 124, 123, 125, 129, 130, 127, 123, 121, 118, 114, 109, 106, 32.58907 + 106, 106, 105, 108, 115, 106, 108, 113, 120, 122, 125, 134, 144, 151, 155, 157, 32.58908 + 156, 157, 159, 155, 149, 141, 128, 112, 100, 93, 88, 85, 83, 83, 89, 95, 32.58909 + 104, 109, 115, 121, 124, 127, 138, 153, 161, 186, 180, 112, 62, 87, 116, 255, 32.58910 + 255, 255, 224, 225, 219, 222, 127, 47, 40, 59, 52, 38, 41, 38, 43, 42, 32.58911 + 40, 38, 36, 35, 37, 38, 40, 38, 38, 38, 38, 38, 38, 38, 39, 46, 32.58912 + 53, 66, 85, 102, 118, 134, 145, 147, 140, 139, 145, 143, 130, 122, 122, 115, 32.58913 + 118, 125, 131, 133, 130, 127, 126, 121, 122, 124, 123, 118, 110, 106, 103, 102, 32.58914 + 97, 95, 96, 99, 98, 102, 110, 107, 109, 113, 118, 122, 126, 135, 146, 145, 32.58915 + 151, 154, 151, 151, 151, 147, 142, 139, 129, 114, 105, 99, 95, 91, 89, 98, 32.58916 + 104, 110, 118, 125, 132, 141, 145, 135, 155, 165, 169, 198, 182, 102, 61, 91, 32.58917 + 141, 255, 255, 255, 222, 228, 221, 225, 139, 44, 36, 54, 50, 39, 45, 42, 32.58918 + 45, 41, 40, 39, 37, 37, 37, 38, 39, 38, 38, 38, 38, 37, 37, 37, 32.58919 + 40, 49, 64, 80, 97, 111, 124, 138, 149, 152, 149, 149, 150, 145, 134, 125, 32.58920 + 123, 130, 134, 139, 142, 138, 128, 125, 123, 116, 116, 117, 117, 116, 110, 108, 32.58921 + 105, 103, 100, 98, 100, 102, 101, 104, 108, 116, 117, 121, 128, 132, 134, 141, 32.58922 + 148, 149, 152, 155, 153, 151, 151, 149, 143, 144, 136, 123, 113, 105, 99, 97, 32.58923 + 96, 103, 109, 116, 123, 130, 137, 146, 149, 142, 168, 184, 194, 219, 172, 79, 32.58924 + 57, 94, 158, 255, 255, 255, 222, 230, 221, 225, 146, 44, 34, 51, 48, 40, 32.58925 + 47, 42, 44, 40, 40, 39, 39, 39, 38, 38, 38, 38, 38, 38, 37, 37, 32.58926 + 36, 36, 39, 56, 72, 90, 107, 122, 135, 146, 153, 157, 160, 158, 148, 138, 32.58927 + 133, 128, 125, 132, 131, 133, 131, 122, 108, 102, 101, 99, 95, 94, 97, 100, 32.58928 + 101, 100, 97, 93, 90, 90, 93, 95, 93, 96, 102, 121, 120, 127, 138, 145, 32.58929 + 147, 149, 149, 153, 158, 161, 155, 152, 152, 151, 147, 130, 124, 112, 99, 88, 32.58930 + 83, 85, 88, 87, 95, 103, 110, 116, 120, 125, 126, 133, 156, 173, 197, 219, 32.58931 + 142, 43, 48, 102, 161, 255, 255, 255, 245, 230, 220, 221, 145, 49, 38, 51, 32.58932 + 48, 42, 47, 40, 39, 39, 40, 40, 40, 40, 38, 37, 36, 37, 37, 37, 32.58933 + 37, 37, 36, 36, 41, 63, 80, 95, 113, 129, 141, 152, 154, 148, 157, 155, 32.58934 + 144, 137, 139, 140, 139, 127, 128, 129, 127, 117, 104, 97, 100, 101, 95, 88, 32.58935 + 87, 90, 91, 87, 83, 81, 80, 82, 88, 93, 93, 95, 102, 111, 113, 123, 32.58936 + 138, 147, 149, 146, 142, 151, 154, 158, 154, 150, 149, 148, 144, 127, 119, 107, 32.58937 + 93, 82, 81, 88, 95, 88, 96, 106, 114, 119, 121, 123, 124, 126, 144, 160, 32.58938 + 195, 222, 135, 42, 67, 117, 196, 255, 255, 255, 255, 225, 222, 212, 162, 56, 32.58939 + 33, 43, 49, 47, 51, 42, 43, 40, 38, 38, 38, 38, 35, 32, 30, 34, 32.58940 + 34, 35, 37, 39, 39, 41, 44, 61, 86, 106, 116, 127, 142, 148, 145, 147, 32.58941 + 156, 159, 153, 147, 148, 148, 145, 136, 133, 126, 116, 105, 100, 98, 97, 81, 32.58942 + 78, 76, 74, 71, 67, 60, 59, 66, 79, 85, 82, 83, 93, 98, 96, 112, 32.58943 + 117, 126, 135, 142, 146, 149, 149, 142, 154, 163, 154, 145, 158, 166, 150, 131, 32.58944 + 104, 87, 84, 81, 86, 90, 83, 83, 92, 104, 112, 122, 143, 144, 123, 122, 32.58945 + 126, 175, 212, 198, 124, 48, 70, 119, 148, 255, 255, 255, 255, 209, 222, 227, 32.58946 + 186, 43, 33, 54, 58, 46, 42, 35, 42, 41, 40, 37, 36, 36, 35, 34, 32.58947 + 32, 30, 31, 34, 36, 38, 39, 38, 41, 60, 86, 106, 116, 128, 143, 148, 32.58948 + 148, 148, 153, 154, 149, 146, 146, 145, 141, 132, 128, 119, 114, 108, 102, 94, 32.58949 + 88, 75, 74, 72, 66, 55, 47, 42, 41, 79, 103, 116, 103, 84, 82, 91, 32.58950 + 99, 109, 117, 124, 131, 139, 143, 144, 145, 146, 149, 155, 157, 164, 180, 174, 32.58951 + 142, 112, 82, 77, 79, 68, 66, 73, 68, 76, 70, 81, 100, 120, 145, 159, 32.58952 + 155, 119, 129, 176, 206, 182, 81, 36, 79, 136, 150, 255, 255, 255, 255, 216, 32.58953 + 224, 218, 162, 45, 34, 54, 57, 45, 42, 34, 40, 40, 40, 36, 35, 35, 32.58954 + 35, 37, 38, 33, 34, 37, 38, 39, 39, 38, 41, 67, 91, 113, 122, 132, 32.58955 + 143, 149, 148, 152, 154, 151, 147, 145, 144, 141, 135, 129, 123, 115, 113, 110, 32.58956 + 104, 90, 79, 69, 74, 76, 71, 62, 57, 56, 60, 87, 111, 125, 111, 89, 32.58957 + 82, 90, 100, 110, 116, 125, 134, 140, 143, 144, 143, 148, 145, 151, 159, 171, 32.58958 + 191, 189, 163, 118, 80, 83, 94, 72, 63, 74, 67, 69, 78, 105, 122, 117, 32.58959 + 121, 143, 162, 139, 149, 188, 218, 196, 64, 53, 115, 143, 154, 255, 255, 255, 32.58960 + 255, 246, 228, 204, 131, 59, 34, 42, 46, 47, 52, 39, 38, 38, 40, 41, 32.58961 + 39, 39, 38, 39, 39, 36, 39, 41, 43, 44, 43, 42, 45, 80, 102, 121, 32.58962 + 130, 136, 143, 147, 149, 154, 151, 146, 144, 144, 143, 138, 133, 131, 127, 121, 32.58963 + 118, 114, 105, 92, 82, 84, 86, 89, 88, 85, 84, 84, 86, 89, 99, 103, 32.58964 + 100, 97, 99, 103, 104, 113, 120, 130, 137, 142, 144, 144, 144, 142, 146, 158, 32.58965 + 159, 162, 184, 208, 211, 142, 88, 81, 95, 76, 70, 77, 68, 75, 98, 135, 32.58966 + 147, 130, 121, 129, 135, 144, 152, 182, 218, 211, 60, 65, 136, 176, 198, 255, 32.58967 + 255, 255, 255, 255, 231, 211, 143, 56, 31, 39, 46, 48, 54, 40, 39, 38, 32.58968 + 42, 47, 47, 43, 40, 39, 39, 39, 41, 42, 45, 45, 46, 44, 49, 87, 32.58969 + 109, 129, 138, 143, 147, 151, 154, 151, 147, 143, 143, 143, 142, 137, 135, 137, 32.58970 + 136, 132, 128, 121, 114, 110, 106, 115, 110, 107, 106, 107, 104, 99, 95, 101, 32.58971 + 100, 98, 98, 104, 111, 116, 115, 119, 123, 132, 138, 142, 144, 144, 143, 144, 32.58972 + 148, 160, 160, 155, 176, 214, 234, 182, 113, 85, 95, 94, 96, 100, 88, 95, 32.58973 + 103, 123, 139, 151, 165, 160, 135, 142, 157, 189, 226, 221, 66, 70, 151, 177, 32.58974 + 255, 255, 255, 255, 255, 255, 227, 215, 160, 46, 32, 50, 54, 46, 45, 35, 32.58975 + 41, 44, 49, 55, 54, 48, 41, 39, 38, 39, 41, 42, 43, 45, 45, 45, 32.58976 + 51, 88, 110, 132, 143, 148, 150, 155, 162, 158, 153, 151, 152, 151, 147, 145, 32.58977 + 147, 141, 143, 141, 138, 134, 130, 131, 133, 134, 127, 121, 120, 123, 123, 116, 32.58978 + 110, 114, 114, 114, 108, 105, 107, 115, 124, 126, 128, 134, 138, 142, 143, 143, 32.58979 + 144, 154, 150, 157, 160, 160, 179, 209, 223, 207, 145, 98, 95, 109, 115, 115, 32.58980 + 110, 107, 110, 118, 126, 149, 184, 198, 181, 150, 171, 204, 234, 225, 87, 74, 32.58981 + 161, 161, 255, 255, 255, 255, 255, 255, 219, 216, 174, 60, 41, 52, 51, 43, 32.58982 + 45, 40, 47, 51, 57, 61, 58, 51, 44, 42, 41, 42, 43, 42, 43, 45, 32.58983 + 46, 48, 56, 89, 111, 133, 147, 149, 150, 156, 165, 166, 161, 158, 159, 155, 32.58984 + 149, 150, 153, 146, 145, 144, 144, 143, 139, 137, 135, 135, 131, 129, 127, 130, 32.58985 + 132, 130, 127, 124, 125, 125, 120, 115, 115, 124, 134, 138, 139, 141, 143, 145, 32.58986 + 146, 147, 149, 157, 149, 154, 159, 158, 172, 201, 218, 215, 174, 116, 96, 111, 32.58987 + 114, 108, 115, 118, 119, 129, 138, 149, 178, 205, 210, 172, 181, 199, 223, 226, 32.58988 + 125, 80, 158, 181, 255, 255, 255, 255, 255, 255, 212, 225, 204, 89, 53, 44, 32.58989 + 40, 42, 54, 50, 54, 60, 65, 66, 61, 52, 45, 44, 46, 48, 47, 45, 32.58990 + 45, 46, 49, 54, 60, 94, 114, 136, 147, 149, 146, 153, 161, 162, 159, 156, 32.58991 + 156, 150, 143, 143, 150, 149, 145, 141, 142, 145, 142, 134, 126, 131, 131, 130, 32.58992 + 129, 127, 127, 128, 131, 131, 128, 126, 129, 135, 139, 143, 147, 148, 148, 148, 32.58993 + 148, 150, 151, 153, 155, 156, 150, 156, 157, 148, 161, 198, 226, 241, 217, 160, 32.58994 + 125, 135, 128, 119, 134, 132, 119, 128, 151, 169, 186, 200, 200, 215, 202, 200, 32.58995 + 224, 251, 183, 108, 169, 174, 255, 255, 255, 255, 255, 255, 216, 209, 202, 107, 32.58996 + 39, 42, 43, 52, 48, 57, 51, 73, 79, 81, 74, 59, 47, 45, 50, 51, 32.58997 + 45, 44, 47, 48, 47, 52, 66, 98, 107, 127, 144, 151, 158, 164, 159, 154, 32.58998 + 160, 154, 150, 155, 150, 142, 147, 139, 137, 142, 142, 137, 141, 141, 129, 131, 32.58999 + 134, 138, 137, 135, 133, 133, 134, 136, 138, 138, 140, 142, 143, 145, 145, 157, 32.59000 + 155, 152, 150, 149, 151, 154, 156, 155, 153, 152, 159, 162, 159, 180, 218, 242, 32.59001 + 226, 186, 150, 139, 133, 127, 128, 137, 132, 141, 160, 175, 180, 188, 200, 206, 32.59002 + 192, 211, 212, 255, 218, 114, 170, 169, 255, 255, 255, 255, 255, 255, 218, 213, 32.59003 + 208, 112, 36, 36, 46, 57, 51, 56, 51, 63, 70, 72, 70, 60, 53, 52, 32.59004 + 55, 52, 47, 46, 48, 48, 46, 49, 62, 89, 110, 128, 140, 146, 151, 159, 32.59005 + 171, 162, 169, 164, 162, 165, 158, 149, 152, 151, 147, 149, 147, 139, 143, 142, 32.59006 + 131, 132, 134, 134, 132, 131, 133, 140, 145, 145, 145, 146, 146, 147, 149, 149, 32.59007 + 149, 151, 150, 150, 150, 151, 153, 155, 158, 162, 161, 161, 167, 168, 164, 184, 32.59008 + 223, 244, 232, 193, 158, 147, 150, 157, 166, 149, 140, 143, 157, 170, 179, 193, 32.59009 + 209, 203, 188, 194, 199, 251, 235, 141, 150, 165, 255, 255, 255, 255, 255, 255, 32.59010 + 255, 215, 212, 131, 43, 33, 48, 60, 58, 63, 67, 89, 94, 92, 86, 74, 32.59011 + 65, 61, 59, 51, 48, 49, 49, 47, 45, 46, 58, 88, 115, 124, 130, 148, 32.59012 + 150, 152, 170, 157, 164, 164, 163, 167, 160, 151, 153, 161, 157, 158, 154, 145, 32.59013 + 148, 149, 139, 137, 138, 138, 138, 137, 138, 144, 147, 148, 148, 149, 149, 148, 32.59014 + 148, 148, 149, 147, 148, 150, 152, 154, 154, 155, 157, 156, 159, 162, 166, 166, 32.59015 + 161, 181, 217, 236, 240, 216, 185, 173, 169, 169, 170, 161, 153, 154, 164, 175, 32.59016 + 182, 195, 207, 200, 200, 200, 206, 252, 255, 190, 154, 162, 255, 255, 255, 255, 32.59017 + 255, 255, 255, 215, 214, 156, 58, 36, 51, 58, 63, 76, 94, 130, 133, 125, 32.59018 + 110, 94, 82, 71, 63, 50, 50, 50, 50, 48, 44, 45, 55, 87, 117, 118, 32.59019 + 127, 157, 156, 143, 158, 149, 158, 157, 158, 164, 161, 154, 159, 165, 159, 160, 32.59020 + 159, 153, 157, 162, 152, 147, 149, 153, 154, 153, 148, 143, 139, 145, 145, 145, 32.59021 + 145, 144, 143, 144, 143, 150, 151, 153, 154, 155, 153, 153, 152, 148, 153, 157, 32.59022 + 160, 163, 157, 175, 208, 232, 243, 230, 203, 189, 181, 172, 164, 168, 165, 171, 32.59023 + 180, 186, 185, 188, 191, 178, 195, 201, 213, 233, 241, 214, 162, 161, 255, 255, 32.59024 + 255, 255, 255, 255, 255, 219, 219, 162, 69, 40, 58, 57, 68, 83, 110, 143, 32.59025 + 149, 140, 121, 104, 91, 78, 66, 50, 52, 53, 49, 45, 44, 47, 55, 72, 32.59026 + 113, 126, 137, 160, 153, 139, 156, 155, 161, 158, 157, 164, 164, 161, 167, 166, 32.59027 + 162, 164, 165, 160, 166, 170, 160, 158, 158, 160, 160, 156, 150, 145, 140, 146, 32.59028 + 146, 146, 146, 144, 144, 143, 142, 149, 152, 154, 154, 155, 156, 155, 153, 152, 32.59029 + 157, 160, 162, 163, 156, 169, 195, 235, 248, 232, 199, 188, 189, 186, 179, 169, 32.59030 + 170, 176, 183, 186, 185, 182, 180, 176, 194, 207, 225, 228, 235, 229, 176, 159, 32.59031 + 255, 255, 255, 255, 255, 255, 255, 245, 229, 159, 72, 41, 60, 55, 74, 88, 32.59032 + 114, 152, 158, 150, 127, 106, 91, 78, 64, 53, 56, 57, 50, 44, 43, 47, 32.59033 + 54, 60, 109, 141, 151, 155, 142, 143, 166, 160, 165, 160, 157, 163, 162, 159, 32.59034 + 167, 170, 166, 170, 169, 163, 167, 170, 159, 165, 161, 157, 153, 152, 151, 152, 32.59035 + 151, 150, 149, 150, 149, 149, 149, 148, 148, 147, 146, 148, 150, 152, 156, 158, 32.59036 + 159, 159, 161, 160, 161, 162, 153, 158, 178, 228, 252, 244, 209, 193, 192, 183, 32.59037 + 172, 169, 168, 170, 173, 176, 179, 180, 180, 192, 201, 214, 230, 236, 249, 240, 32.59038 + 185, 156, 255, 255, 255, 255, 255, 255, 255, 255, 233, 170, 83, 41, 57, 51, 32.59039 + 87, 103, 124, 158, 169, 161, 136, 109, 93, 81, 68, 61, 63, 62, 50, 40, 32.59040 + 40, 45, 51, 73, 110, 142, 152, 146, 141, 148, 164, 157, 163, 159, 157, 163, 32.59041 + 161, 156, 163, 171, 169, 172, 171, 165, 168, 168, 157, 167, 161, 155, 152, 153, 32.59042 + 154, 154, 153, 148, 149, 150, 149, 150, 150, 149, 149, 146, 145, 145, 144, 146, 32.59043 + 152, 157, 160, 157, 159, 155, 155, 159, 152, 151, 165, 207, 247, 252, 215, 189, 32.59044 + 182, 173, 164, 171, 168, 167, 167, 169, 175, 178, 179, 183, 196, 215, 211, 218, 32.59045 + 244, 227, 174, 157, 255, 255, 255, 255, 255, 255, 255, 255, 231, 190, 96, 41, 32.59046 + 50, 47, 99, 119, 142, 154, 167, 164, 140, 117, 103, 94, 84, 69, 71, 66, 32.59047 + 51, 41, 40, 44, 52, 102, 115, 135, 148, 145, 147, 152, 150, 154, 161, 160, 32.59048 + 161, 168, 165, 160, 166, 167, 165, 169, 169, 165, 168, 169, 157, 165, 163, 161, 32.59049 + 162, 162, 160, 155, 151, 144, 144, 145, 145, 147, 148, 148, 149, 153, 149, 145, 32.59050 + 141, 143, 148, 155, 156, 156, 156, 152, 155, 162, 159, 159, 170, 194, 238, 242, 32.59051 + 200, 169, 169, 176, 179, 173, 174, 174, 172, 174, 176, 178, 175, 181, 209, 237, 32.59052 + 214, 212, 245, 224, 179, 159, 255, 255, 255, 255, 255, 255, 255, 255, 243, 222, 32.59053 + 173, 69, 44, 55, 65, 120, 149, 154, 150, 140, 127, 129, 141, 130, 94, 97, 32.59054 + 79, 70, 67, 59, 50, 59, 85, 120, 129, 136, 142, 148, 150, 151, 152, 155, 32.59055 + 158, 160, 158, 160, 164, 165, 162, 166, 166, 164, 159, 162, 168, 172, 172, 171, 32.59056 + 169, 167, 168, 169, 166, 157, 150, 154, 144, 137, 137, 142, 146, 146, 144, 144, 32.59057 + 142, 140, 142, 145, 148, 151, 150, 156, 166, 163, 158, 167, 172, 165, 159, 184, 32.59058 + 218, 239, 207, 157, 146, 161, 166, 156, 175, 159, 165, 170, 159, 179, 184, 189, 32.59059 + 199, 216, 228, 230, 233, 216, 181, 150, 255, 255, 255, 255, 255, 255, 255, 255, 32.59060 + 255, 224, 198, 118, 68, 56, 55, 93, 137, 154, 149, 145, 140, 139, 145, 130, 32.59061 + 97, 115, 89, 69, 61, 57, 55, 73, 100, 137, 141, 141, 142, 144, 144, 145, 32.59062 + 144, 151, 157, 159, 157, 160, 165, 168, 164, 158, 161, 164, 162, 163, 166, 168, 32.59063 + 167, 172, 169, 168, 168, 169, 166, 159, 151, 149, 146, 144, 142, 142, 141, 141, 32.59064 + 141, 144, 144, 146, 148, 151, 156, 159, 162, 154, 160, 156, 155, 167, 170, 162, 32.59065 + 161, 177, 200, 238, 242, 191, 143, 137, 152, 150, 172, 163, 171, 175, 163, 174, 32.59066 + 176, 190, 204, 226, 234, 230, 230, 215, 183, 160, 255, 255, 255, 255, 255, 255, 32.59067 + 255, 255, 255, 222, 218, 162, 82, 50, 43, 70, 153, 165, 149, 136, 127, 125, 32.59068 + 130, 126, 107, 115, 88, 66, 57, 55, 60, 82, 110, 142, 141, 139, 139, 143, 32.59069 + 146, 149, 148, 150, 153, 156, 156, 159, 165, 167, 166, 157, 165, 171, 169, 169, 32.59070 + 169, 170, 168, 172, 169, 168, 167, 167, 162, 156, 148, 140, 142, 144, 143, 140, 32.59071 + 137, 137, 136, 145, 147, 153, 153, 152, 153, 156, 159, 161, 161, 156, 159, 171, 32.59072 + 168, 161, 165, 174, 178, 210, 242, 230, 190, 156, 139, 146, 168, 165, 169, 174, 32.59073 + 165, 171, 174, 178, 196, 222, 232, 231, 235, 226, 202, 155, 255, 255, 255, 255, 32.59074 + 255, 255, 255, 255, 255, 218, 222, 199, 119, 78, 52, 52, 155, 163, 146, 133, 32.59075 + 128, 121, 124, 124, 113, 101, 86, 73, 70, 67, 71, 93, 120, 142, 141, 139, 32.59076 + 140, 146, 149, 150, 151, 148, 151, 154, 153, 157, 163, 167, 165, 157, 166, 172, 32.59077 + 172, 169, 168, 170, 168, 170, 169, 166, 166, 164, 159, 153, 148, 132, 134, 137, 32.59078 + 138, 139, 136, 136, 135, 143, 149, 154, 155, 149, 146, 149, 152, 160, 159, 156, 32.59079 + 161, 168, 160, 157, 170, 170, 176, 190, 204, 218, 224, 190, 138, 147, 164, 162, 32.59080 + 161, 166, 167, 173, 181, 172, 188, 209, 218, 221, 232, 228, 206, 194, 255, 255, 32.59081 + 255, 255, 255, 255, 255, 255, 255, 242, 224, 234, 184, 145, 84, 35, 118, 144, 32.59082 + 140, 149, 153, 148, 142, 131, 114, 96, 89, 87, 83, 79, 84, 109, 135, 147, 32.59083 + 145, 145, 146, 148, 148, 146, 143, 147, 150, 151, 150, 153, 159, 163, 162, 155, 32.59084 + 162, 166, 162, 160, 161, 164, 163, 169, 169, 166, 164, 160, 155, 149, 145, 136, 32.59085 + 130, 129, 132, 137, 139, 137, 132, 133, 140, 145, 145, 140, 138, 139, 143, 137, 32.59086 + 143, 144, 149, 153, 147, 151, 170, 164, 177, 181, 169, 172, 195, 182, 140, 146, 32.59087 + 160, 164, 155, 160, 166, 166, 177, 179, 185, 195, 201, 206, 217, 215, 190, 255, 32.59088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 235, 212, 187, 121, 48, 32.59089 + 91, 133, 138, 152, 157, 152, 152, 148, 130, 104, 97, 94, 88, 84, 91, 117, 32.59090 + 143, 136, 139, 145, 147, 149, 149, 149, 148, 148, 150, 148, 146, 147, 153, 157, 32.59091 + 156, 158, 161, 161, 157, 158, 161, 163, 161, 166, 165, 163, 158, 153, 147, 144, 32.59092 + 141, 139, 133, 129, 132, 138, 138, 134, 128, 129, 131, 130, 127, 120, 114, 111, 32.59093 + 112, 114, 127, 132, 135, 143, 144, 153, 172, 169, 154, 147, 148, 158, 170, 162, 32.59094 + 136, 138, 154, 165, 154, 158, 165, 155, 164, 181, 184, 191, 194, 201, 217, 216, 32.59095 + 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 221, 208, 200, 32.59096 + 154, 78, 74, 124, 133, 144, 143, 141, 155, 163, 151, 124, 115, 106, 99, 97, 32.59097 + 105, 121, 138, 126, 132, 139, 142, 144, 145, 150, 153, 147, 148, 146, 143, 143, 32.59098 + 147, 150, 149, 162, 162, 160, 158, 160, 165, 162, 158, 160, 160, 156, 151, 146, 32.59099 + 140, 135, 133, 134, 132, 133, 135, 138, 137, 133, 127, 125, 124, 120, 116, 109, 32.59100 + 104, 99, 99, 109, 122, 125, 124, 140, 149, 158, 167, 168, 129, 117, 135, 159, 32.59101 + 163, 151, 129, 136, 149, 164, 150, 156, 169, 158, 169, 175, 181, 192, 197, 202, 32.59102 + 218, 219, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 226, 32.59103 + 218, 217, 179, 96, 48, 106, 126, 146, 147, 147, 164, 169, 152, 146, 134, 123, 32.59104 + 118, 120, 123, 129, 133, 131, 137, 142, 141, 138, 136, 141, 147, 147, 149, 145, 32.59105 + 140, 138, 142, 146, 145, 159, 158, 154, 153, 160, 163, 157, 149, 155, 154, 152, 32.59106 + 145, 139, 132, 128, 127, 122, 127, 135, 140, 139, 136, 133, 133, 119, 117, 117, 32.59107 + 117, 119, 117, 116, 117, 111, 122, 118, 117, 135, 152, 154, 155, 148, 127, 122, 32.59108 + 132, 139, 144, 138, 123, 138, 147, 161, 142, 150, 173, 169, 187, 170, 181, 196, 32.59109 + 198, 196, 207, 207, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59110 + 255, 215, 229, 216, 192, 78, 46, 60, 113, 167, 149, 149, 165, 159, 164, 151, 32.59111 + 145, 138, 131, 134, 136, 136, 135, 135, 134, 134, 137, 140, 140, 138, 134, 137, 32.59112 + 142, 143, 138, 135, 138, 139, 139, 142, 145, 148, 149, 151, 151, 153, 156, 143, 32.59113 + 144, 141, 124, 110, 121, 131, 121, 132, 131, 131, 128, 128, 127, 126, 126, 127, 32.59114 + 122, 117, 113, 112, 114, 117, 121, 124, 124, 123, 126, 132, 135, 134, 132, 134, 32.59115 + 136, 139, 140, 138, 134, 130, 128, 135, 135, 140, 146, 151, 153, 161, 169, 175, 32.59116 + 167, 183, 182, 184, 197, 182, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59117 + 255, 255, 255, 222, 224, 220, 203, 106, 30, 58, 98, 141, 181, 151, 171, 148, 32.59118 + 177, 153, 146, 141, 137, 138, 140, 141, 139, 143, 138, 133, 131, 133, 136, 139, 32.59119 + 139, 136, 137, 138, 137, 136, 134, 136, 139, 132, 135, 139, 141, 144, 145, 145, 32.59120 + 145, 135, 131, 127, 116, 107, 116, 128, 121, 131, 130, 129, 128, 128, 127, 125, 32.59121 + 124, 122, 120, 116, 111, 110, 112, 114, 118, 121, 125, 127, 128, 128, 130, 132, 32.59122 + 133, 132, 134, 137, 139, 139, 136, 132, 131, 134, 134, 138, 144, 146, 147, 151, 32.59123 + 158, 166, 161, 180, 180, 183, 198, 186, 200, 255, 255, 255, 255, 255, 255, 255, 32.59124 + 255, 255, 255, 255, 255, 246, 219, 226, 215, 149, 19, 44, 73, 126, 189, 156, 32.59125 + 167, 150, 172, 156, 149, 143, 140, 139, 139, 138, 137, 141, 137, 133, 131, 132, 32.59126 + 135, 138, 138, 140, 135, 135, 139, 138, 129, 132, 141, 136, 136, 139, 140, 143, 32.59127 + 142, 138, 133, 123, 113, 110, 109, 105, 111, 123, 119, 126, 124, 123, 122, 121, 32.59128 + 120, 120, 119, 118, 116, 114, 111, 110, 111, 112, 113, 118, 123, 126, 125, 122, 32.59129 + 121, 125, 130, 129, 131, 135, 138, 139, 137, 134, 133, 131, 132, 134, 137, 141, 32.59130 + 140, 145, 151, 160, 157, 178, 177, 180, 195, 185, 255, 255, 255, 255, 255, 255, 32.59131 + 255, 255, 255, 255, 255, 255, 255, 255, 215, 229, 217, 192, 36, 29, 55, 130, 32.59132 + 173, 167, 162, 168, 156, 161, 151, 144, 140, 137, 133, 131, 130, 131, 132, 134, 32.59133 + 137, 138, 138, 136, 135, 141, 132, 130, 137, 133, 121, 122, 135, 142, 141, 139, 32.59134 + 140, 142, 136, 127, 120, 113, 100, 100, 106, 106, 110, 117, 116, 117, 115, 116, 32.59135 + 115, 114, 113, 113, 113, 114, 115, 114, 113, 112, 112, 111, 112, 114, 117, 118, 32.59136 + 116, 114, 114, 117, 120, 125, 128, 132, 135, 135, 134, 131, 131, 127, 125, 127, 32.59137 + 130, 134, 136, 145, 155, 159, 157, 176, 175, 174, 186, 176, 255, 255, 255, 255, 32.59138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 225, 209, 215, 73, 32, 32.59139 + 51, 118, 176, 177, 167, 172, 156, 161, 150, 141, 139, 137, 129, 129, 130, 133, 32.59140 + 134, 137, 137, 136, 134, 132, 131, 132, 122, 121, 127, 125, 113, 117, 129, 136, 32.59141 + 134, 131, 130, 131, 126, 115, 107, 106, 96, 99, 109, 108, 108, 111, 106, 108, 32.59142 + 107, 108, 108, 107, 109, 109, 110, 113, 115, 115, 114, 115, 114, 114, 113, 115, 32.59143 + 112, 109, 109, 111, 113, 113, 112, 122, 124, 128, 130, 130, 128, 125, 124, 125, 32.59144 + 121, 119, 119, 123, 129, 140, 152, 155, 154, 173, 172, 171, 182, 167, 255, 255, 32.59145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 220, 204, 217, 32.59146 + 101, 37, 49, 79, 183, 174, 169, 156, 166, 158, 145, 138, 138, 138, 132, 135, 32.59147 + 140, 143, 141, 137, 132, 128, 127, 130, 133, 127, 122, 121, 126, 123, 119, 123, 32.59148 + 134, 127, 126, 125, 124, 124, 118, 111, 105, 104, 98, 104, 109, 106, 108, 110, 32.59149 + 102, 105, 105, 105, 108, 108, 109, 111, 113, 116, 116, 118, 117, 117, 116, 117, 32.59150 + 116, 118, 112, 108, 108, 113, 115, 116, 112, 120, 122, 126, 128, 129, 126, 123, 32.59151 + 121, 127, 121, 114, 113, 113, 117, 129, 141, 148, 146, 166, 169, 172, 184, 166, 32.59152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 32.59153 + 206, 204, 107, 35, 50, 62, 161, 170, 168, 154, 166, 156, 141, 133, 135, 136, 32.59154 + 131, 134, 144, 141, 140, 136, 131, 127, 127, 130, 134, 128, 127, 126, 124, 122, 32.59155 + 123, 126, 131, 124, 125, 125, 123, 121, 115, 110, 106, 101, 102, 108, 104, 98, 32.59156 + 106, 112, 101, 102, 102, 105, 106, 109, 112, 114, 115, 120, 120, 120, 119, 119, 32.59157 + 120, 120, 119, 117, 113, 112, 109, 113, 113, 118, 117, 119, 120, 126, 128, 131, 32.59158 + 128, 127, 125, 127, 122, 117, 116, 113, 113, 122, 132, 145, 142, 163, 170, 177, 32.59159 + 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59160 + 255, 241, 212, 194, 101, 30, 53, 69, 124, 169, 163, 166, 154, 152, 136, 128, 32.59161 + 130, 131, 126, 129, 139, 127, 131, 134, 134, 132, 130, 131, 132, 128, 130, 127, 32.59162 + 119, 115, 117, 120, 120, 126, 127, 126, 121, 115, 109, 105, 105, 101, 107, 111, 32.59163 + 102, 94, 106, 115, 105, 104, 104, 106, 109, 112, 115, 118, 120, 125, 124, 124, 32.59164 + 122, 123, 125, 125, 125, 116, 117, 118, 115, 113, 114, 120, 125, 121, 125, 129, 32.59165 + 133, 134, 134, 130, 131, 128, 125, 122, 121, 117, 116, 122, 131, 146, 141, 163, 32.59166 + 170, 178, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59167 + 255, 255, 255, 255, 211, 216, 87, 34, 45, 53, 63, 92, 128, 146, 143, 126, 32.59168 + 125, 112, 116, 141, 118, 140, 134, 127, 126, 126, 126, 127, 128, 128, 129, 122, 32.59169 + 128, 127, 116, 115, 124, 128, 126, 129, 137, 137, 126, 115, 110, 106, 103, 109, 32.59170 + 108, 107, 106, 107, 107, 105, 103, 111, 111, 111, 115, 119, 122, 123, 124, 127, 32.59171 + 132, 131, 129, 137, 133, 127, 129, 130, 128, 125, 124, 122, 122, 122, 122, 138, 32.59172 + 142, 145, 141, 136, 135, 134, 133, 130, 125, 116, 112, 113, 114, 115, 117, 133, 32.59173 + 143, 157, 168, 173, 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59174 + 255, 255, 255, 255, 255, 255, 213, 222, 122, 65, 54, 46, 51, 64, 72, 77, 32.59175 + 80, 79, 84, 79, 121, 141, 127, 127, 132, 130, 129, 128, 126, 123, 120, 120, 32.59176 + 120, 117, 123, 124, 118, 120, 131, 139, 137, 116, 125, 135, 136, 127, 114, 102, 32.59177 + 97, 98, 96, 94, 92, 95, 100, 104, 109, 109, 110, 112, 114, 118, 120, 122, 32.59178 + 121, 126, 130, 128, 127, 138, 137, 133, 137, 126, 126, 127, 130, 133, 137, 140, 32.59179 + 141, 142, 145, 144, 142, 141, 140, 133, 126, 132, 131, 124, 119, 119, 117, 119, 32.59180 + 121, 135, 146, 161, 173, 176, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59181 + 255, 255, 255, 255, 255, 255, 255, 255, 240, 220, 162, 105, 68, 44, 47, 52, 32.59182 + 45, 42, 51, 51, 59, 59, 127, 141, 135, 119, 134, 130, 132, 133, 129, 123, 32.59183 + 118, 117, 117, 125, 129, 127, 120, 120, 127, 131, 128, 114, 118, 130, 140, 132, 32.59184 + 111, 96, 93, 97, 95, 93, 91, 91, 92, 94, 97, 97, 99, 100, 103, 107, 32.59185 + 109, 110, 109, 119, 122, 117, 114, 122, 120, 116, 121, 126, 127, 132, 136, 142, 32.59186 + 146, 148, 149, 139, 140, 141, 142, 146, 146, 139, 130, 127, 129, 127, 123, 119, 32.59187 + 116, 119, 121, 133, 145, 160, 171, 174, 255, 255, 255, 255, 255, 255, 255, 255, 32.59188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 190, 140, 90, 46, 32.59189 + 42, 49, 48, 47, 51, 50, 58, 68, 117, 133, 130, 118, 132, 127, 131, 134, 32.59190 + 132, 126, 122, 122, 123, 130, 131, 127, 120, 117, 119, 118, 114, 125, 122, 127, 32.59191 + 136, 127, 105, 94, 98, 98, 103, 107, 108, 106, 102, 98, 97, 94, 95, 97, 32.59192 + 100, 105, 106, 105, 105, 108, 112, 107, 106, 113, 110, 106, 108, 112, 113, 116, 32.59193 + 120, 122, 123, 123, 122, 113, 117, 120, 122, 124, 125, 122, 116, 119, 124, 125, 32.59194 + 123, 119, 115, 118, 121, 139, 149, 163, 174, 173, 255, 255, 255, 255, 255, 255, 32.59195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 172, 32.59196 + 120, 57, 29, 37, 52, 51, 43, 45, 57, 85, 99, 126, 120, 117, 124, 124, 32.59197 + 127, 131, 130, 127, 123, 123, 124, 122, 122, 121, 118, 119, 121, 121, 117, 128, 32.59198 + 123, 124, 131, 126, 107, 101, 106, 103, 110, 118, 122, 123, 121, 120, 122, 116, 32.59199 + 116, 117, 117, 119, 118, 116, 113, 108, 116, 115, 117, 125, 122, 116, 117, 111, 32.59200 + 112, 116, 118, 121, 120, 119, 118, 122, 128, 131, 124, 116, 112, 111, 110, 113, 32.59201 + 119, 123, 123, 121, 123, 127, 132, 148, 155, 166, 179, 176, 255, 255, 255, 255, 32.59202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59203 + 204, 192, 147, 80, 34, 33, 53, 53, 37, 36, 51, 91, 91, 126, 124, 120, 32.59204 + 120, 125, 125, 125, 124, 123, 120, 119, 117, 122, 120, 120, 121, 124, 125, 124, 32.59205 + 120, 119, 118, 122, 131, 128, 116, 109, 109, 120, 123, 125, 126, 125, 128, 133, 32.59206 + 138, 140, 138, 134, 133, 131, 130, 126, 124, 127, 133, 132, 132, 138, 131, 120, 32.59207 + 120, 126, 128, 131, 136, 140, 142, 145, 146, 158, 165, 166, 155, 138, 127, 123, 32.59208 + 119, 110, 111, 113, 116, 120, 127, 135, 142, 141, 145, 157, 172, 202, 255, 255, 32.59209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59210 + 255, 255, 237, 204, 169, 110, 62, 46, 53, 51, 41, 45, 49, 77, 93, 124, 32.59211 + 131, 114, 124, 126, 124, 120, 120, 122, 121, 118, 114, 127, 123, 122, 124, 127, 32.59212 + 125, 122, 118, 117, 118, 121, 124, 125, 121, 115, 110, 125, 128, 130, 128, 126, 32.59213 + 127, 133, 140, 146, 143, 139, 137, 136, 138, 137, 137, 139, 143, 139, 136, 141, 32.59214 + 134, 123, 124, 129, 129, 132, 136, 141, 146, 149, 150, 162, 169, 173, 165, 151, 32.59215 + 139, 128, 121, 118, 114, 112, 114, 120, 129, 138, 143, 138, 139, 154, 178, 255, 32.59216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59217 + 255, 255, 255, 255, 255, 216, 186, 137, 86, 57, 45, 40, 36, 60, 48, 58, 32.59218 + 91, 110, 131, 101, 126, 128, 123, 118, 119, 123, 125, 122, 117, 122, 118, 119, 32.59219 + 124, 128, 128, 125, 121, 121, 122, 121, 115, 114, 118, 116, 111, 110, 118, 128, 32.59220 + 130, 133, 134, 139, 144, 143, 140, 137, 136, 141, 145, 148, 149, 130, 135, 131, 32.59221 + 133, 142, 141, 136, 140, 139, 140, 140, 141, 144, 147, 150, 151, 157, 165, 174, 32.59222 + 173, 169, 159, 146, 133, 134, 127, 120, 120, 126, 133, 139, 140, 151, 151, 169, 32.59223 + 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59224 + 255, 255, 255, 255, 255, 255, 255, 237, 193, 149, 135, 79, 41, 33, 60, 48, 32.59225 + 45, 60, 83, 104, 122, 125, 113, 122, 127, 131, 129, 124, 119, 118, 118, 111, 32.59226 + 116, 118, 114, 116, 122, 126, 123, 120, 115, 115, 121, 125, 122, 114, 109, 124, 32.59227 + 127, 130, 129, 133, 138, 144, 145, 142, 145, 139, 137, 144, 141, 137, 140, 139, 32.59228 + 133, 135, 143, 141, 132, 134, 142, 138, 138, 143, 149, 151, 147, 147, 148, 159, 32.59229 + 162, 169, 171, 164, 152, 149, 150, 141, 124, 128, 130, 125, 138, 150, 137, 149, 32.59230 + 141, 170, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 171, 157, 103, 61, 40, 32.59232 + 47, 47, 46, 63, 86, 105, 121, 125, 115, 115, 120, 122, 123, 122, 121, 121, 32.59233 + 121, 115, 118, 118, 115, 117, 123, 125, 119, 120, 118, 118, 119, 121, 118, 113, 32.59234 + 110, 124, 128, 133, 135, 137, 139, 139, 136, 135, 136, 131, 127, 136, 134, 129, 32.59235 + 134, 133, 128, 130, 137, 138, 131, 133, 143, 136, 137, 139, 147, 150, 149, 150, 32.59236 + 153, 161, 163, 167, 170, 163, 153, 144, 143, 136, 122, 123, 128, 126, 140, 151, 32.59237 + 141, 137, 139, 172, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 181, 143, 32.59239 + 104, 71, 48, 45, 46, 66, 90, 105, 119, 124, 117, 114, 115, 115, 116, 118, 32.59240 + 120, 120, 119, 118, 118, 116, 115, 118, 123, 124, 117, 113, 113, 115, 117, 117, 32.59241 + 120, 120, 120, 121, 123, 126, 130, 132, 134, 134, 134, 134, 134, 130, 125, 135, 32.59242 + 134, 131, 136, 134, 128, 126, 127, 122, 114, 115, 122, 125, 125, 127, 134, 138, 32.59243 + 139, 144, 150, 161, 159, 160, 166, 164, 156, 145, 137, 140, 124, 126, 129, 131, 32.59244 + 140, 147, 136, 129, 147, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 32.59246 + 193, 175, 148, 107, 53, 45, 48, 68, 93, 105, 115, 121, 118, 120, 118, 113, 32.59247 + 113, 115, 116, 115, 113, 117, 114, 112, 113, 117, 121, 122, 116, 112, 114, 116, 32.59248 + 113, 114, 117, 122, 123, 125, 120, 118, 120, 126, 131, 138, 144, 136, 138, 131, 32.59249 + 129, 137, 137, 134, 139, 134, 128, 124, 121, 115, 107, 107, 113, 119, 116, 117, 32.59250 + 123, 127, 131, 137, 143, 155, 152, 153, 160, 164, 157, 147, 138, 133, 124, 126, 32.59251 + 133, 139, 143, 143, 139, 124, 153, 194, 255, 255, 255, 255, 255, 255, 255, 255, 32.59252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59253 + 255, 237, 198, 192, 169, 127, 49, 48, 49, 70, 95, 104, 113, 120, 119, 124, 32.59254 + 119, 114, 112, 113, 113, 112, 110, 112, 109, 109, 111, 115, 117, 119, 116, 116, 32.59255 + 118, 118, 111, 109, 114, 118, 117, 127, 121, 117, 121, 127, 130, 137, 143, 135, 32.59256 + 139, 133, 131, 139, 139, 133, 138, 132, 129, 127, 126, 123, 120, 122, 127, 122, 32.59257 + 119, 117, 123, 126, 131, 138, 146, 154, 149, 150, 157, 159, 151, 142, 135, 116, 32.59258 + 116, 122, 134, 144, 144, 142, 146, 126, 155, 213, 255, 255, 255, 255, 255, 255, 32.59259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59260 + 255, 255, 255, 255, 197, 198, 181, 149, 65, 57, 53, 71, 95, 106, 111, 119, 32.59261 + 118, 119, 116, 113, 112, 112, 113, 114, 113, 110, 108, 109, 112, 112, 111, 114, 32.59262 + 116, 109, 111, 112, 107, 110, 118, 122, 121, 123, 115, 116, 124, 127, 123, 121, 32.59263 + 125, 137, 142, 137, 136, 143, 142, 136, 140, 138, 137, 135, 132, 128, 125, 126, 32.59264 + 126, 122, 118, 118, 122, 127, 131, 140, 147, 154, 153, 154, 155, 149, 141, 136, 32.59265 + 133, 119, 125, 128, 135, 141, 135, 132, 144, 146, 163, 255, 255, 255, 255, 255, 32.59266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59267 + 255, 255, 255, 255, 255, 255, 237, 201, 184, 170, 94, 66, 58, 73, 96, 108, 32.59268 + 113, 119, 119, 113, 113, 114, 112, 111, 111, 113, 114, 112, 111, 113, 114, 110, 32.59269 + 105, 110, 115, 103, 106, 106, 103, 110, 123, 126, 119, 121, 113, 111, 122, 125, 32.59270 + 118, 114, 118, 136, 144, 140, 140, 147, 144, 137, 139, 141, 141, 138, 132, 123, 32.59271 + 119, 116, 114, 116, 110, 112, 117, 124, 128, 137, 147, 151, 152, 156, 154, 142, 32.59272 + 132, 130, 135, 131, 139, 138, 138, 140, 128, 129, 152, 174, 175, 255, 255, 255, 32.59273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 180, 177, 109, 73, 62, 74, 32.59275 + 99, 110, 117, 122, 122, 111, 113, 116, 113, 110, 108, 109, 112, 115, 114, 117, 32.59276 + 117, 109, 101, 106, 114, 114, 114, 109, 102, 106, 115, 115, 103, 127, 113, 111, 32.59277 + 119, 124, 122, 122, 131, 128, 137, 134, 134, 141, 137, 129, 130, 134, 136, 135, 32.59278 + 131, 125, 122, 120, 116, 116, 112, 113, 120, 126, 131, 140, 147, 144, 148, 154, 32.59279 + 150, 135, 126, 130, 141, 130, 141, 138, 136, 140, 132, 140, 171, 187, 255, 255, 32.59280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 199, 191, 147, 76, 32.59282 + 70, 83, 103, 109, 113, 124, 129, 126, 115, 116, 116, 110, 110, 110, 100, 111, 32.59283 + 108, 109, 112, 111, 107, 107, 109, 115, 115, 111, 104, 105, 114, 114, 106, 114, 32.59284 + 116, 112, 115, 125, 122, 117, 125, 141, 141, 136, 130, 127, 131, 138, 142, 134, 32.59285 + 129, 124, 129, 136, 135, 127, 120, 128, 124, 121, 122, 128, 137, 145, 148, 146, 32.59286 + 146, 146, 142, 127, 115, 118, 129, 129, 145, 134, 140, 125, 118, 162, 185, 192, 32.59287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 202, 32.59289 + 171, 99, 78, 80, 101, 112, 118, 127, 129, 120, 112, 113, 113, 107, 109, 112, 32.59290 + 106, 106, 104, 105, 110, 111, 109, 110, 113, 113, 111, 106, 103, 104, 108, 107, 32.59291 + 100, 103, 105, 105, 111, 124, 125, 122, 129, 129, 130, 129, 125, 125, 131, 136, 32.59292 + 139, 140, 134, 129, 131, 134, 135, 130, 127, 125, 124, 124, 126, 133, 141, 146, 32.59293 + 149, 148, 145, 146, 139, 127, 118, 124, 135, 134, 140, 143, 130, 126, 143, 166, 32.59294 + 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59296 + 241, 220, 177, 139, 97, 79, 96, 111, 118, 127, 129, 115, 110, 113, 112, 104, 32.59297 + 106, 112, 108, 104, 102, 103, 108, 109, 108, 109, 113, 117, 111, 108, 111, 112, 32.59298 + 109, 106, 105, 102, 105, 104, 111, 124, 125, 125, 133, 121, 125, 126, 123, 123, 32.59299 + 128, 131, 133, 138, 136, 131, 130, 130, 133, 132, 132, 122, 123, 126, 129, 135, 32.59300 + 140, 144, 147, 151, 149, 147, 140, 130, 124, 131, 141, 143, 134, 148, 131, 140, 32.59301 + 176, 175, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59303 + 255, 255, 255, 243, 187, 156, 106, 81, 95, 108, 112, 123, 130, 115, 111, 116, 32.59304 + 116, 104, 103, 108, 104, 106, 103, 103, 106, 106, 104, 105, 108, 119, 109, 108, 32.59305 + 117, 117, 109, 104, 107, 107, 111, 109, 115, 125, 124, 124, 133, 125, 129, 129, 32.59306 + 120, 118, 122, 126, 123, 127, 129, 130, 126, 126, 128, 130, 130, 126, 127, 127, 32.59307 + 129, 132, 136, 140, 142, 154, 153, 149, 143, 135, 132, 135, 138, 146, 133, 142, 32.59308 + 142, 162, 188, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59310 + 255, 255, 255, 255, 255, 255, 224, 124, 91, 83, 100, 108, 107, 117, 124, 114, 32.59311 + 113, 120, 121, 110, 107, 109, 104, 107, 104, 103, 105, 105, 103, 104, 108, 114, 32.59312 + 106, 106, 113, 113, 106, 99, 100, 107, 112, 111, 113, 123, 119, 118, 129, 129, 32.59313 + 133, 129, 116, 114, 120, 124, 120, 119, 127, 130, 125, 124, 125, 125, 122, 126, 32.59314 + 127, 127, 126, 128, 133, 138, 144, 153, 154, 151, 147, 141, 137, 136, 133, 136, 32.59315 + 129, 124, 160, 182, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59317 + 255, 255, 255, 255, 255, 255, 255, 255, 232, 72, 66, 83, 106, 109, 106, 113, 32.59318 + 116, 112, 110, 117, 119, 111, 110, 112, 105, 104, 100, 99, 102, 103, 102, 105, 32.59319 + 110, 113, 109, 107, 112, 113, 107, 102, 99, 101, 105, 106, 109, 117, 115, 114, 32.59320 + 125, 122, 128, 124, 111, 110, 119, 124, 122, 120, 127, 130, 123, 122, 124, 121, 32.59321 + 114, 120, 122, 123, 123, 125, 130, 140, 147, 149, 150, 150, 146, 143, 142, 138, 32.59322 + 130, 127, 127, 124, 173, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 83, 103, 102, 32.59325 + 104, 116, 118, 118, 110, 112, 113, 107, 109, 111, 104, 104, 100, 99, 101, 101, 32.59326 + 100, 102, 107, 113, 113, 112, 110, 110, 113, 106, 99, 97, 102, 103, 106, 113, 32.59327 + 109, 110, 122, 112, 122, 121, 109, 108, 118, 122, 115, 115, 122, 123, 117, 118, 32.59328 + 124, 124, 116, 116, 120, 124, 125, 125, 127, 137, 142, 143, 146, 144, 139, 140, 32.59329 + 143, 141, 133, 133, 137, 154, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59332 + 94, 93, 103, 122, 126, 126, 114, 110, 108, 102, 104, 107, 100, 109, 104, 101, 32.59333 + 101, 99, 96, 97, 102, 107, 112, 110, 104, 105, 110, 106, 94, 101, 107, 106, 32.59334 + 107, 112, 107, 107, 118, 104, 116, 117, 107, 105, 115, 115, 106, 106, 114, 112, 32.59335 + 108, 112, 126, 128, 122, 114, 119, 125, 125, 125, 124, 130, 133, 141, 141, 138, 32.59336 + 134, 137, 144, 145, 135, 148, 152, 188, 255, 255, 255, 255, 255, 255, 255, 255, 32.59337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59339 + 255, 255, 255, 203, 101, 113, 126, 127, 115, 108, 110, 112, 109, 106, 107, 105, 32.59340 + 101, 107, 92, 101, 92, 101, 99, 100, 107, 108, 102, 99, 104, 106, 104, 99, 32.59341 + 98, 104, 112, 112, 105, 102, 105, 102, 107, 110, 110, 107, 107, 113, 119, 113, 32.59342 + 107, 104, 109, 110, 110, 115, 122, 111, 116, 123, 125, 124, 122, 128, 134, 143, 32.59343 + 129, 157, 131, 143, 121, 150, 131, 162, 185, 213, 255, 255, 255, 255, 255, 255, 32.59344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 107, 105, 32.59347 + 110, 118, 113, 115, 96, 100, 90, 101, 102, 103, 109, 109, 104, 103, 106, 109, 32.59348 + 108, 100, 98, 102, 105, 102, 96, 96, 101, 102, 106, 110, 112, 110, 109, 111, 32.59349 + 115, 104, 105, 110, 118, 121, 114, 111, 112, 115, 118, 120, 122, 123, 122, 123, 32.59350 + 123, 120, 129, 131, 140, 146, 141, 142, 161, 167, 178, 255, 255, 255, 255, 255, 32.59351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59354 + 255, 255, 255, 255, 255, 255, 201, 97, 83, 94, 97, 102, 106, 105, 101, 100, 32.59355 + 102, 104, 103, 100, 100, 101, 101, 94, 89, 92, 98, 100, 101, 105, 108, 109, 32.59356 + 109, 107, 107, 101, 103, 111, 119, 120, 113, 106, 106, 116, 117, 116, 118, 119, 32.59357 + 122, 121, 117, 117, 132, 123, 134, 144, 134, 125, 162, 194, 255, 255, 255, 255, 32.59358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100, 101, 100, 101, 102, 32.59362 + 101, 98, 98, 97, 96, 99, 101, 104, 100, 95, 90, 92, 97, 94, 94, 95, 32.59363 + 98, 103, 104, 104, 103, 106, 105, 107, 108, 109, 107, 106, 108, 109, 113, 114, 32.59364 + 114, 115, 120, 121, 119, 120, 118, 132, 126, 159, 152, 176, 255, 255, 255, 255, 32.59365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59369 + 95, 98, 100, 101, 100, 97, 96, 93, 99, 104, 102, 98, 93, 94, 94, 90, 32.59370 + 88, 88, 90, 95, 99, 104, 105, 107, 106, 105, 103, 104, 106, 108, 110, 105, 32.59371 + 114, 116, 112, 109, 114, 118, 120, 120, 108, 132, 129, 144, 181, 238, 255, 255, 32.59372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59376 + 255, 255, 255, 255, 202, 98, 97, 95, 96, 92, 96, 100, 98, 96, 96, 94, 32.59377 + 88, 87, 86, 86, 86, 90, 95, 102, 106, 101, 104, 106, 105, 106, 108, 107, 32.59378 + 106, 106, 117, 120, 111, 103, 108, 113, 112, 113, 110, 120, 144, 117, 255, 255, 32.59379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59383 + 255, 255, 255, 255, 255, 255, 255, 255, 202, 95, 98, 97, 97, 96, 92, 93, 32.59384 + 95, 93, 84, 82, 84, 86, 85, 86, 88, 95, 99, 94, 99, 102, 99, 101, 32.59385 + 105, 104, 102, 108, 116, 116, 106, 102, 110, 112, 107, 102, 112, 111, 255, 255, 32.59386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 106, 98, 32.59391 + 92, 94, 98, 95, 85, 79, 81, 85, 85, 81, 81, 84, 90, 90, 95, 94, 32.59392 + 89, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59397 + 216, 165, 146, 153, 122, 144, 139, 161, 182, 202, 203, 149, 172, 251, 242, 200, 32.59398 + 180, 248, 255, 170, 197, 224, 225, 234, 233, 235, 231, 210, 212, 255, 255, 255, 32.59399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 32.59404 + 135, 144, 131, 158, 145, 152, 116, 137, 134, 136, 153, 180, 195, 153, 157, 241, 32.59405 + 250, 207, 198, 255, 247, 167, 205, 231, 216, 211, 209, 212, 212, 197, 178, 181, 32.59406 + 198, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 32.59411 + 115, 127, 136, 137, 125, 146, 141, 147, 127, 147, 149, 122, 133, 156, 176, 162, 32.59412 + 158, 239, 255, 211, 194, 243, 235, 179, 180, 176, 174, 171, 163, 162, 172, 176, 32.59413 + 174, 171, 175, 170, 187, 198, 214, 240, 255, 255, 255, 255, 255, 255, 255, 255, 32.59414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 32.59418 + 106, 109, 116, 126, 133, 149, 135, 137, 132, 125, 117, 131, 135, 119, 132, 138, 32.59419 + 150, 164, 157, 215, 223, 175, 147, 176, 182, 155, 116, 81, 103, 112, 112, 112, 32.59420 + 117, 123, 129, 131, 133, 126, 154, 178, 199, 216, 223, 228, 243, 255, 255, 255, 32.59421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 32.59425 + 113, 99, 110, 112, 115, 122, 127, 123, 111, 107, 111, 106, 120, 140, 150, 115, 32.59426 + 130, 121, 122, 152, 140, 170, 156, 143, 134, 140, 115, 113, 98, 60, 77, 94, 32.59427 + 108, 113, 105, 94, 98, 109, 120, 111, 142, 163, 169, 163, 151, 148, 160, 176, 32.59428 + 202, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 191, 157, 32.59432 + 53, 32, 71, 109, 119, 116, 114, 113, 109, 93, 79, 80, 104, 123, 127, 131, 32.59433 + 141, 114, 111, 113, 119, 122, 124, 130, 137, 143, 140, 126, 108, 96, 91, 83, 32.59434 + 76, 91, 94, 100, 92, 75, 79, 97, 104, 88, 126, 160, 155, 124, 106, 119, 32.59435 + 141, 164, 199, 193, 142, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 206, 190, 178, 32.59439 + 180, 150, 63, 52, 80, 103, 106, 101, 99, 95, 89, 92, 84, 85, 100, 112, 32.59440 + 117, 119, 125, 116, 110, 107, 112, 115, 115, 113, 115, 92, 97, 94, 85, 78, 32.59441 + 78, 77, 76, 82, 78, 81, 77, 67, 71, 82, 83, 80, 109, 134, 134, 122, 32.59442 + 118, 126, 135, 138, 150, 141, 113, 175, 204, 196, 219, 255, 255, 255, 255, 255, 32.59443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 176, 169, 32.59446 + 165, 153, 150, 130, 64, 67, 79, 87, 87, 85, 87, 82, 75, 75, 74, 74, 32.59447 + 78, 82, 87, 89, 89, 100, 91, 87, 90, 92, 88, 80, 76, 64, 74, 78, 32.59448 + 73, 66, 64, 66, 68, 73, 64, 64, 66, 62, 65, 69, 63, 65, 83, 96, 32.59449 + 98, 104, 117, 121, 118, 95, 88, 83, 76, 142, 161, 151, 159, 190, 184, 227, 32.59450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 32.59453 + 174, 159, 162, 157, 147, 125, 70, 68, 70, 70, 71, 78, 85, 82, 73, 72, 32.59454 + 78, 79, 73, 73, 79, 81, 77, 92, 86, 84, 87, 87, 80, 74, 72, 67, 32.59455 + 70, 71, 68, 62, 60, 60, 60, 69, 59, 61, 67, 64, 65, 65, 58, 62, 32.59456 + 74, 79, 77, 88, 110, 119, 115, 90, 78, 82, 80, 122, 117, 109, 128, 132, 32.59457 + 135, 178, 241, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59458 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 32.59460 + 187, 160, 166, 165, 177, 169, 140, 110, 66, 67, 64, 61, 64, 75, 83, 79, 32.59461 + 70, 66, 75, 76, 69, 68, 74, 76, 70, 73, 74, 77, 79, 77, 71, 71, 32.59462 + 76, 67, 63, 59, 60, 61, 62, 60, 59, 63, 56, 64, 72, 66, 62, 63, 32.59463 + 60, 68, 79, 83, 78, 84, 105, 122, 127, 102, 85, 94, 90, 115, 96, 83, 32.59464 + 100, 115, 130, 144, 194, 212, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59467 + 231, 172, 158, 155, 172, 169, 165, 142, 107, 89, 68, 70, 64, 61, 65, 73, 32.59468 + 75, 69, 61, 59, 66, 67, 62, 62, 66, 66, 62, 53, 55, 60, 63, 60, 32.59469 + 56, 62, 72, 72, 63, 56, 58, 61, 61, 57, 55, 56, 50, 61, 72, 64, 32.59470 + 57, 60, 60, 60, 69, 74, 72, 74, 86, 104, 115, 101, 81, 90, 88, 114, 32.59471 + 99, 79, 77, 111, 133, 125, 163, 182, 193, 206, 239, 212, 255, 255, 255, 255, 32.59472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59474 + 255, 255, 165, 156, 147, 156, 162, 138, 121, 107, 88, 85, 76, 67, 63, 60, 32.59475 + 64, 67, 67, 62, 58, 70, 71, 71, 69, 68, 68, 66, 63, 60, 58, 58, 32.59476 + 60, 58, 57, 64, 73, 72, 66, 62, 65, 65, 59, 53, 53, 54, 47, 58, 32.59477 + 71, 66, 59, 61, 61, 56, 56, 60, 66, 67, 68, 74, 83, 96, 84, 99, 32.59478 + 94, 120, 115, 95, 81, 77, 105, 114, 165, 171, 167, 168, 178, 186, 186, 189, 32.59479 + 199, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59481 + 255, 255, 231, 154, 137, 135, 136, 105, 102, 70, 64, 77, 75, 70, 52, 58, 32.59482 + 56, 56, 60, 63, 63, 62, 62, 67, 63, 62, 63, 62, 58, 53, 51, 61, 32.59483 + 54, 48, 49, 49, 50, 53, 60, 57, 56, 60, 67, 65, 60, 57, 60, 59, 32.59484 + 49, 58, 74, 72, 66, 66, 64, 69, 59, 60, 72, 76, 66, 60, 63, 71, 32.59485 + 74, 98, 88, 105, 105, 92, 76, 88, 88, 81, 124, 118, 131, 164, 173, 157, 32.59486 + 163, 174, 188, 204, 221, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59488 + 255, 255, 255, 227, 152, 134, 140, 143, 98, 62, 62, 64, 66, 68, 64, 57, 32.59489 + 50, 54, 51, 50, 53, 60, 63, 62, 59, 58, 60, 63, 62, 60, 56, 54, 32.59490 + 53, 54, 54, 52, 49, 47, 46, 47, 50, 49, 47, 52, 61, 64, 60, 60, 32.59491 + 64, 62, 59, 57, 60, 67, 71, 69, 66, 62, 63, 64, 67, 68, 67, 63, 32.59492 + 60, 60, 71, 76, 76, 90, 107, 94, 66, 67, 70, 83, 103, 115, 125, 140, 32.59493 + 158, 155, 161, 158, 169, 188, 192, 208, 245, 252, 255, 255, 255, 255, 255, 255, 32.59494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59495 + 255, 255, 255, 255, 255, 156, 145, 142, 150, 133, 68, 62, 64, 67, 69, 68, 32.59496 + 63, 56, 52, 48, 47, 48, 53, 59, 61, 57, 53, 57, 59, 60, 60, 58, 32.59497 + 55, 54, 54, 53, 53, 52, 49, 46, 46, 48, 50, 51, 48, 51, 57, 59, 32.59498 + 57, 58, 63, 62, 59, 55, 58, 63, 65, 62, 59, 65, 65, 66, 68, 70, 32.59499 + 69, 65, 62, 59, 67, 70, 73, 86, 100, 91, 72, 64, 62, 66, 77, 85, 32.59500 + 97, 122, 147, 172, 164, 162, 178, 189, 183, 191, 218, 242, 252, 246, 255, 255, 32.59501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59502 + 255, 255, 255, 255, 255, 255, 226, 147, 147, 140, 125, 102, 55, 69, 72, 74, 32.59503 + 73, 67, 59, 52, 48, 44, 44, 48, 54, 59, 59, 54, 49, 56, 57, 57, 32.59504 + 55, 54, 52, 52, 53, 50, 50, 49, 47, 46, 45, 48, 50, 54, 51, 51, 32.59505 + 53, 54, 54, 56, 61, 61, 58, 56, 56, 58, 59, 57, 54, 62, 62, 63, 32.59506 + 66, 68, 68, 65, 62, 62, 64, 65, 70, 78, 84, 80, 73, 71, 65, 63, 32.59507 + 67, 71, 80, 103, 127, 143, 137, 143, 155, 162, 177, 197, 206, 220, 245, 248, 32.59508 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59509 + 255, 255, 255, 255, 255, 255, 255, 231, 172, 153, 151, 117, 75, 73, 76, 79, 32.59510 + 81, 79, 71, 60, 50, 46, 44, 45, 46, 49, 54, 57, 58, 54, 51, 54, 32.59511 + 55, 54, 52, 50, 49, 50, 51, 47, 47, 47, 46, 45, 46, 48, 51, 53, 32.59512 + 52, 52, 53, 54, 55, 57, 59, 59, 57, 55, 56, 57, 57, 56, 54, 56, 32.59513 + 56, 56, 59, 62, 63, 61, 59, 65, 62, 64, 70, 72, 71, 67, 66, 60, 32.59514 + 54, 54, 60, 62, 62, 70, 82, 90, 98, 113, 113, 115, 160, 204, 210, 201, 32.59515 + 233, 240, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59516 + 255, 255, 255, 255, 255, 255, 255, 255, 231, 184, 188, 160, 129, 84, 54, 75, 32.59517 + 98, 82, 80, 74, 64, 53, 46, 46, 47, 46, 47, 48, 50, 53, 54, 53, 32.59518 + 52, 53, 53, 53, 51, 49, 48, 49, 50, 45, 46, 46, 45, 45, 46, 49, 32.59519 + 52, 50, 52, 53, 54, 55, 57, 58, 59, 53, 52, 52, 53, 55, 56, 55, 32.59520 + 55, 52, 52, 53, 56, 59, 61, 60, 59, 62, 59, 61, 69, 70, 65, 61, 32.59521 + 63, 57, 49, 50, 61, 68, 63, 59, 61, 72, 77, 99, 105, 96, 126, 177, 32.59522 + 205, 205, 230, 240, 242, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59523 + 255, 255, 255, 255, 255, 255, 255, 255, 246, 213, 184, 183, 194, 145, 88, 64, 32.59524 + 70, 91, 92, 72, 70, 63, 56, 50, 48, 50, 53, 44, 45, 46, 47, 48, 32.59525 + 50, 50, 51, 52, 53, 53, 52, 50, 48, 48, 49, 46, 46, 46, 46, 45, 32.59526 + 46, 49, 52, 49, 52, 54, 53, 55, 58, 59, 56, 47, 48, 49, 50, 52, 32.59527 + 53, 54, 54, 53, 53, 53, 57, 61, 64, 64, 63, 64, 63, 64, 69, 71, 32.59528 + 68, 64, 63, 65, 56, 54, 66, 74, 74, 71, 73, 79, 68, 90, 121, 112, 32.59529 + 98, 133, 185, 204, 222, 244, 246, 251, 254, 245, 255, 255, 255, 255, 255, 255, 32.59530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 214, 199, 184, 182, 173, 107, 32.59531 + 62, 65, 78, 83, 71, 62, 59, 54, 52, 51, 51, 51, 50, 42, 45, 47, 32.59532 + 49, 50, 50, 49, 49, 52, 54, 55, 54, 52, 50, 49, 49, 47, 48, 47, 32.59533 + 46, 46, 47, 50, 53, 51, 54, 53, 49, 49, 54, 56, 54, 48, 49, 50, 32.59534 + 50, 51, 52, 53, 53, 53, 53, 53, 57, 62, 65, 66, 66, 79, 76, 71, 32.59535 + 68, 69, 71, 66, 61, 59, 52, 53, 61, 64, 62, 67, 75, 72, 64, 75, 32.59536 + 105, 111, 88, 97, 139, 161, 180, 230, 244, 242, 252, 243, 255, 255, 255, 255, 32.59537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 220, 208, 190, 177, 182, 32.59538 + 145, 75, 60, 75, 64, 57, 57, 57, 54, 51, 50, 52, 51, 48, 44, 42, 32.59539 + 46, 52, 55, 55, 53, 50, 49, 52, 54, 56, 56, 54, 51, 49, 49, 48, 32.59540 + 49, 48, 47, 46, 47, 51, 53, 55, 56, 52, 44, 44, 50, 54, 52, 51, 32.59541 + 52, 53, 52, 52, 52, 54, 54, 52, 52, 53, 57, 62, 65, 67, 66, 93, 32.59542 + 90, 79, 68, 67, 71, 66, 57, 65, 64, 69, 75, 69, 64, 70, 82, 59, 32.59543 + 67, 62, 70, 88, 84, 76, 90, 107, 132, 207, 235, 234, 251, 250, 252, 255, 32.59544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 211, 208, 202, 193, 32.59545 + 192, 167, 110, 61, 55, 65, 62, 57, 59, 55, 53, 51, 48, 47, 46, 46, 32.59546 + 47, 49, 46, 45, 48, 54, 56, 53, 50, 51, 51, 50, 50, 49, 47, 46, 32.59547 + 45, 48, 48, 48, 49, 51, 53, 55, 57, 58, 50, 43, 46, 51, 52, 47, 32.59548 + 44, 47, 46, 46, 48, 52, 56, 58, 58, 49, 58, 57, 54, 60, 61, 63, 32.59549 + 74, 85, 93, 92, 80, 68, 66, 68, 68, 69, 64, 64, 72, 75, 73, 73, 32.59550 + 77, 77, 62, 55, 67, 80, 79, 70, 63, 78, 89, 129, 169, 197, 243, 255, 32.59551 + 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 216, 203, 32.59552 + 206, 192, 150, 122, 87, 59, 59, 67, 62, 55, 54, 53, 52, 50, 48, 46, 32.59553 + 46, 46, 46, 48, 46, 45, 48, 53, 55, 53, 49, 50, 50, 50, 49, 49, 32.59554 + 47, 46, 45, 47, 46, 46, 47, 49, 51, 52, 53, 48, 45, 44, 45, 46, 32.59555 + 47, 48, 49, 52, 52, 52, 53, 53, 54, 53, 53, 50, 58, 58, 59, 66, 32.59556 + 67, 66, 75, 78, 85, 85, 74, 63, 62, 65, 66, 66, 65, 68, 71, 70, 32.59557 + 65, 65, 72, 71, 62, 58, 65, 71, 71, 68, 67, 68, 70, 79, 107, 146, 32.59558 + 182, 225, 255, 246, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 32.59559 + 225, 210, 217, 191, 116, 80, 67, 58, 58, 61, 59, 55, 52, 50, 49, 49, 32.59560 + 47, 46, 46, 46, 45, 47, 45, 45, 48, 53, 54, 51, 48, 50, 50, 50, 32.59561 + 49, 49, 48, 46, 45, 47, 46, 46, 47, 46, 48, 48, 49, 41, 43, 45, 32.59562 + 45, 45, 48, 53, 57, 53, 53, 53, 53, 53, 52, 50, 50, 54, 62, 61, 32.59563 + 65, 76, 76, 71, 75, 71, 78, 78, 70, 61, 60, 65, 68, 64, 66, 70, 32.59564 + 71, 66, 60, 60, 65, 63, 61, 60, 62, 62, 62, 65, 70, 64, 70, 68, 32.59565 + 91, 125, 131, 166, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.59566 + 240, 216, 226, 220, 204, 155, 88, 69, 66, 58, 53, 53, 57, 56, 52, 48, 32.59567 + 47, 47, 47, 46, 46, 46, 45, 46, 45, 46, 49, 52, 53, 50, 47, 50, 32.59568 + 50, 50, 49, 49, 48, 47, 46, 47, 47, 47, 47, 46, 47, 46, 46, 43, 32.59569 + 47, 48, 47, 49, 54, 58, 60, 52, 53, 53, 53, 54, 56, 57, 59, 61, 32.59570 + 67, 67, 71, 82, 80, 71, 72, 68, 73, 73, 68, 62, 62, 67, 74, 65, 32.59571 + 66, 68, 71, 69, 64, 59, 59, 60, 60, 61, 62, 61, 61, 65, 68, 66, 32.59572 + 78, 87, 101, 116, 113, 130, 170, 228, 245, 255, 255, 255, 255, 255, 255, 255, 32.59573 + 255, 255, 226, 214, 216, 216, 162, 91, 62, 66, 65, 59, 51, 52, 56, 53, 32.59574 + 46, 45, 46, 46, 46, 46, 46, 45, 45, 45, 46, 48, 51, 53, 52, 50, 32.59575 + 47, 49, 49, 49, 49, 49, 48, 47, 46, 48, 48, 48, 49, 48, 48, 46, 32.59576 + 46, 49, 50, 49, 47, 51, 59, 61, 57, 59, 58, 58, 57, 58, 62, 67, 32.59577 + 72, 68, 73, 71, 73, 82, 79, 68, 68, 65, 69, 70, 66, 59, 58, 64, 32.59578 + 74, 66, 66, 66, 70, 76, 77, 67, 58, 60, 62, 62, 64, 67, 68, 65, 32.59579 + 62, 68, 73, 85, 83, 82, 112, 136, 129, 142, 186, 255, 255, 255, 255, 255, 32.59580 + 255, 255, 255, 244, 233, 212, 206, 201, 129, 60, 62, 57, 58, 58, 56, 57, 32.59581 + 55, 48, 39, 44, 45, 46, 47, 48, 47, 47, 45, 46, 48, 51, 53, 54, 32.59582 + 52, 50, 48, 48, 49, 49, 49, 50, 49, 48, 47, 48, 48, 49, 50, 49, 32.59583 + 49, 47, 47, 51, 53, 51, 47, 51, 60, 60, 53, 58, 60, 59, 58, 55, 32.59584 + 58, 64, 69, 71, 77, 73, 73, 77, 74, 64, 67, 65, 67, 67, 65, 57, 32.59585 + 54, 61, 71, 69, 66, 65, 73, 84, 87, 74, 60, 63, 64, 64, 65, 69, 32.59586 + 72, 66, 57, 72, 73, 84, 76, 69, 115, 145, 119, 94, 126, 243, 255, 255, 32.59587 + 255, 255, 255, 255, 246, 219, 227, 213, 198, 172, 112, 64, 66, 55, 55, 58, 32.59588 + 60, 56, 49, 43, 42, 43, 45, 46, 48, 48, 48, 47, 47, 46, 49, 53, 32.59589 + 55, 55, 53, 50, 49, 48, 48, 49, 49, 50, 49, 48, 47, 46, 47, 49, 32.59590 + 50, 49, 49, 49, 48, 50, 58, 59, 51, 51, 59, 62, 57, 56, 59, 61, 32.59591 + 61, 57, 57, 60, 64, 71, 77, 72, 68, 71, 67, 62, 70, 71, 70, 69, 32.59592 + 66, 57, 52, 57, 70, 67, 69, 71, 78, 87, 91, 79, 64, 66, 69, 67, 32.59593 + 65, 65, 70, 67, 59, 72, 80, 87, 85, 88, 110, 128, 130, 100, 90, 238, 32.59594 + 238, 255, 255, 255, 255, 255, 224, 223, 221, 216, 191, 142, 96, 68, 52, 61, 32.59595 + 60, 60, 60, 50, 41, 42, 50, 43, 44, 47, 48, 49, 49, 48, 47, 47, 32.59596 + 50, 54, 57, 56, 53, 51, 51, 48, 48, 49, 49, 49, 48, 47, 48, 45, 32.59597 + 47, 47, 49, 50, 49, 48, 47, 51, 62, 67, 56, 51, 59, 64, 64, 56, 32.59598 + 62, 69, 70, 66, 64, 65, 67, 66, 73, 70, 65, 67, 64, 62, 72, 78, 32.59599 + 76, 74, 70, 60, 52, 58, 70, 64, 70, 75, 79, 87, 89, 79, 66, 65, 32.59600 + 69, 68, 61, 60, 66, 67, 62, 65, 77, 74, 80, 94, 92, 106, 153, 104, 32.59601 + 67, 242, 250, 255, 255, 255, 255, 255, 229, 217, 214, 219, 195, 122, 57, 44, 32.59602 + 57, 54, 53, 53, 53, 50, 49, 45, 44, 49, 49, 47, 46, 44, 45, 45, 32.59603 + 46, 47, 49, 51, 52, 51, 50, 51, 53, 50, 52, 54, 53, 51, 48, 47, 32.59604 + 48, 52, 48, 46, 52, 53, 49, 51, 54, 55, 59, 66, 67, 66, 66, 65, 32.59605 + 67, 71, 65, 66, 71, 70, 63, 58, 58, 63, 68, 66, 58, 56, 64, 72, 32.59606 + 76, 73, 69, 62, 58, 54, 54, 62, 73, 87, 80, 75, 77, 84, 85, 78, 32.59607 + 71, 79, 82, 76, 63, 55, 58, 63, 64, 70, 71, 83, 86, 81, 86, 96, 32.59608 + 99, 109, 90, 157, 203, 255, 255, 255, 255, 246, 227, 211, 213, 213, 176, 104, 32.59609 + 51, 47, 57, 54, 54, 53, 52, 50, 47, 45, 43, 47, 47, 48, 48, 47, 32.59610 + 45, 44, 44, 44, 47, 52, 53, 52, 50, 51, 51, 49, 51, 53, 52, 49, 32.59611 + 48, 48, 48, 47, 46, 48, 56, 56, 53, 53, 58, 54, 58, 61, 65, 66, 32.59612 + 70, 73, 77, 75, 69, 66, 67, 64, 58, 58, 62, 69, 72, 70, 61, 60, 32.59613 + 68, 77, 83, 70, 66, 61, 61, 59, 60, 65, 73, 86, 78, 73, 76, 85, 32.59614 + 92, 92, 90, 90, 87, 84, 78, 68, 60, 63, 72, 69, 70, 82, 88, 84, 32.59615 + 89, 99, 101, 86, 91, 178, 238, 255, 255, 255, 255, 226, 223, 212, 214, 201, 32.59616 + 145, 76, 45, 51, 56, 55, 55, 54, 53, 51, 48, 46, 45, 46, 47, 49, 32.59617 + 49, 49, 46, 44, 43, 42, 46, 52, 55, 53, 51, 50, 49, 48, 50, 52, 32.59618 + 52, 49, 47, 46, 48, 41, 44, 49, 53, 53, 50, 51, 55, 54, 55, 55, 32.59619 + 58, 62, 70, 79, 85, 84, 80, 75, 70, 65, 61, 66, 74, 82, 81, 73, 32.59620 + 60, 51, 54, 58, 62, 52, 49, 48, 57, 64, 69, 75, 80, 84, 79, 76, 32.59621 + 82, 94, 106, 113, 115, 103, 95, 90, 87, 74, 59, 59, 70, 67, 69, 82, 32.59622 + 90, 86, 90, 100, 102, 104, 95, 159, 218, 253, 255, 255, 255, 224, 220, 222, 32.59623 + 216, 182, 111, 52, 45, 58, 54, 57, 56, 55, 54, 52, 50, 49, 48, 48, 32.59624 + 48, 48, 48, 47, 46, 45, 44, 45, 48, 53, 54, 53, 51, 51, 51, 49, 32.59625 + 50, 53, 51, 48, 45, 45, 46, 45, 49, 53, 53, 50, 50, 53, 57, 55, 32.59626 + 51, 50, 51, 57, 67, 79, 87, 93, 92, 88, 82, 74, 73, 79, 87, 94, 32.59627 + 92, 83, 71, 59, 55, 55, 58, 55, 52, 55, 66, 74, 79, 80, 82, 86, 32.59628 + 86, 89, 98, 111, 123, 131, 135, 120, 112, 98, 83, 70, 63, 61, 64, 64, 32.59629 + 68, 81, 88, 84, 89, 98, 99, 102, 111, 168, 194, 188, 255, 255, 255, 224, 32.59630 + 220, 235, 211, 158, 84, 40, 48, 63, 53, 57, 56, 55, 54, 53, 52, 52, 32.59631 + 51, 52, 50, 47, 45, 44, 45, 47, 48, 49, 50, 51, 51, 50, 50, 53, 32.59632 + 55, 52, 54, 54, 52, 48, 45, 43, 43, 50, 52, 53, 53, 53, 59, 67, 32.59633 + 72, 55, 53, 51, 52, 59, 72, 83, 91, 95, 98, 98, 93, 86, 85, 89, 32.59634 + 94, 98, 99, 100, 97, 91, 88, 89, 91, 93, 87, 86, 90, 93, 89, 84, 32.59635 + 83, 89, 94, 104, 116, 127, 136, 141, 143, 142, 139, 115, 80, 65, 72, 72, 32.59636 + 61, 64, 66, 79, 85, 81, 84, 95, 95, 121, 112, 143, 177, 191, 255, 255, 32.59637 + 247, 226, 223, 235, 196, 135, 72, 40, 50, 62, 51, 54, 54, 53, 52, 52, 32.59638 + 53, 53, 54, 54, 51, 47, 44, 43, 45, 48, 50, 50, 51, 50, 48, 48, 32.59639 + 49, 53, 56, 53, 54, 54, 52, 49, 45, 43, 43, 44, 46, 46, 47, 55, 32.59640 + 69, 81, 86, 65, 62, 61, 65, 73, 83, 93, 98, 93, 98, 101, 99, 95, 32.59641 + 96, 96, 97, 99, 102, 107, 112, 109, 106, 107, 112, 112, 107, 104, 106, 104, 32.59642 + 99, 95, 95, 97, 104, 114, 126, 133, 139, 143, 147, 150, 158, 134, 86, 64, 32.59643 + 72, 73, 57, 64, 66, 77, 82, 77, 82, 93, 94, 95, 118, 173, 206, 188, 32.59644 + 255, 255, 231, 229, 227, 221, 173, 118, 71, 46, 48, 56, 51, 49, 49, 48, 32.59645 + 48, 49, 51, 53, 54, 53, 51, 48, 46, 45, 46, 47, 48, 46, 47, 48, 32.59646 + 47, 47, 48, 50, 52, 50, 52, 54, 53, 50, 48, 47, 46, 42, 43, 44, 32.59647 + 48, 64, 83, 93, 94, 83, 80, 78, 81, 87, 93, 95, 97, 91, 97, 100, 32.59648 + 100, 100, 105, 104, 100, 103, 103, 106, 111, 107, 102, 103, 108, 107, 104, 104, 32.59649 + 106, 104, 102, 104, 109, 105, 110, 116, 122, 126, 134, 143, 149, 153, 167, 153, 32.59650 + 106, 72, 66, 66, 60, 63, 64, 74, 79, 75, 82, 95, 98, 113, 118, 157, 32.59651 + 202, 195, 255, 255, 232, 231, 229, 205, 156, 108, 75, 51, 45, 51, 51, 45, 32.59652 + 45, 45, 45, 47, 49, 52, 53, 50, 50, 49, 48, 47, 47, 46, 46, 41, 32.59653 + 44, 47, 48, 48, 47, 47, 48, 47, 50, 52, 52, 52, 50, 49, 50, 49, 32.59654 + 50, 52, 59, 77, 97, 104, 100, 97, 95, 92, 93, 94, 95, 91, 90, 91, 32.59655 + 97, 99, 100, 104, 110, 110, 104, 107, 105, 107, 111, 108, 104, 107, 114, 109, 32.59656 + 107, 107, 107, 103, 100, 103, 112, 110, 112, 113, 114, 117, 127, 141, 152, 157, 32.59657 + 175, 171, 132, 87, 64, 64, 68, 62, 63, 73, 78, 75, 84, 99, 102, 114, 32.59658 + 122, 161, 204, 187, 255, 247, 233, 233, 231, 200, 144, 117, 78, 42, 50, 57, 32.59659 + 50, 52, 56, 56, 52, 49, 51, 51, 48, 52, 52, 52, 49, 46, 44, 44, 32.59660 + 45, 49, 49, 51, 51, 50, 48, 46, 44, 49, 53, 51, 47, 46, 50, 53, 32.59661 + 51, 53, 62, 74, 82, 87, 94, 101, 106, 105, 107, 105, 101, 99, 103, 103, 32.59662 + 102, 105, 108, 107, 104, 108, 115, 117, 112, 104, 111, 115, 114, 109, 108, 112, 32.59663 + 117, 109, 109, 110, 112, 115, 114, 111, 109, 111, 116, 119, 119, 125, 134, 140, 32.59664 + 139, 149, 161, 171, 151, 113, 86, 69, 52, 65, 73, 73, 70, 70, 80, 95, 32.59665 + 102, 110, 133, 160, 194, 193, 255, 230, 230, 228, 225, 191, 129, 114, 52, 54, 32.59666 + 43, 63, 50, 50, 54, 54, 51, 50, 53, 54, 52, 52, 51, 48, 45, 44, 32.59667 + 47, 52, 57, 45, 47, 49, 51, 52, 51, 50, 50, 49, 53, 53, 51, 52, 32.59668 + 58, 62, 62, 74, 81, 91, 99, 102, 108, 113, 119, 108, 110, 108, 103, 103, 32.59669 + 108, 109, 107, 112, 114, 112, 109, 111, 117, 116, 112, 114, 109, 106, 110, 116, 32.59670 + 118, 114, 110, 109, 109, 110, 111, 114, 115, 112, 111, 113, 117, 119, 121, 126, 32.59671 + 136, 140, 140, 150, 168, 193, 195, 171, 139, 98, 58, 64, 62, 69, 61, 62, 32.59672 + 90, 103, 103, 113, 125, 153, 197, 201, 255, 230, 229, 226, 221, 181, 125, 97, 32.59673 + 38, 54, 49, 59, 52, 52, 55, 54, 51, 51, 54, 54, 51, 50, 50, 49, 32.59674 + 48, 47, 50, 55, 58, 46, 47, 49, 51, 53, 53, 52, 52, 47, 53, 55, 32.59675 + 55, 57, 65, 71, 72, 76, 80, 89, 95, 97, 101, 105, 108, 110, 111, 110, 32.59676 + 106, 107, 110, 112, 111, 115, 117, 115, 112, 112, 115, 114, 110, 115, 111, 108, 32.59677 + 111, 117, 119, 114, 110, 109, 110, 109, 111, 113, 115, 114, 114, 114, 118, 121, 32.59678 + 122, 127, 136, 140, 140, 158, 164, 180, 188, 179, 159, 120, 76, 66, 55, 77, 32.59679 + 61, 51, 88, 101, 108, 122, 123, 154, 205, 206, 255, 230, 230, 227, 222, 174, 32.59680 + 129, 70, 45, 43, 65, 46, 56, 57, 58, 56, 52, 51, 52, 50, 45, 46, 32.59681 + 50, 54, 56, 54, 50, 47, 45, 50, 51, 52, 53, 53, 52, 51, 49, 49, 32.59682 + 53, 55, 54, 58, 66, 73, 75, 84, 89, 95, 102, 104, 106, 109, 111, 107, 32.59683 + 110, 108, 105, 105, 110, 112, 110, 113, 113, 111, 110, 110, 111, 109, 107, 107, 32.59684 + 112, 117, 116, 111, 108, 111, 115, 111, 112, 111, 111, 114, 116, 117, 117, 115, 32.59685 + 119, 122, 123, 127, 135, 140, 140, 154, 166, 191, 210, 211, 193, 148, 97, 67, 32.59686 + 49, 80, 69, 52, 79, 96, 118, 125, 127, 163, 212, 204, 255, 231, 231, 227, 32.59687 + 220, 167, 114, 53, 45, 45, 68, 43, 58, 56, 56, 54, 50, 50, 53, 50, 32.59688 + 44, 46, 50, 54, 55, 52, 46, 42, 40, 49, 50, 52, 53, 53, 52, 51, 32.59689 + 50, 54, 57, 57, 56, 58, 67, 74, 75, 89, 94, 99, 105, 109, 111, 113, 32.59690 + 114, 106, 108, 107, 104, 104, 109, 110, 108, 109, 107, 106, 108, 109, 109, 108, 32.59691 + 107, 104, 110, 115, 114, 108, 105, 107, 112, 114, 114, 111, 113, 116, 117, 118, 32.59692 + 117, 115, 119, 120, 121, 125, 133, 138, 138, 144, 154, 176, 193, 196, 192, 167, 32.59693 + 132, 92, 56, 64, 69, 66, 78, 86, 108, 106, 124, 164, 209, 204, 255, 232, 32.59694 + 231, 224, 216, 159, 84, 47, 38, 59, 57, 50, 58, 50, 50, 48, 47, 51, 32.59695 + 55, 53, 48, 48, 48, 48, 46, 44, 43, 45, 47, 44, 46, 49, 52, 54, 32.59696 + 55, 55, 55, 57, 61, 61, 59, 62, 71, 79, 81, 86, 89, 94, 100, 104, 32.59697 + 106, 108, 107, 107, 109, 108, 105, 105, 109, 110, 108, 107, 104, 104, 109, 111, 32.59698 + 109, 108, 109, 111, 107, 104, 107, 112, 113, 105, 101, 116, 115, 114, 115, 117, 32.59699 + 117, 116, 114, 115, 119, 120, 120, 124, 132, 136, 136, 165, 171, 182, 186, 189, 32.59700 + 203, 209, 198, 157, 102, 53, 57, 78, 78, 73, 74, 84, 116, 148, 189, 206, 32.59701 + 255, 234, 233, 226, 217, 158, 68, 39, 52, 62, 55, 49, 58, 47, 47, 45, 32.59702 + 45, 50, 55, 53, 47, 46, 46, 46, 44, 42, 43, 47, 50, 42, 44, 47, 32.59703 + 51, 53, 55, 55, 55, 55, 59, 61, 60, 65, 76, 86, 88, 97, 98, 102, 32.59704 + 107, 111, 114, 113, 112, 108, 110, 108, 105, 104, 108, 108, 106, 108, 103, 103, 32.59705 + 109, 111, 107, 105, 107, 111, 106, 104, 107, 112, 112, 104, 99, 114, 115, 115, 32.59706 + 116, 116, 115, 112, 110, 115, 118, 119, 119, 123, 130, 135, 136, 135, 151, 174, 32.59707 + 185, 186, 195, 197, 185, 209, 166, 63, 46, 79, 79, 80, 66, 84, 119, 127, 32.59708 + 158, 222, 255, 236, 237, 231, 221, 162, 71, 28, 79, 52, 66, 41, 60, 49, 32.59709 + 48, 45, 44, 48, 53, 50, 43, 43, 46, 49, 50, 48, 45, 43, 43, 45, 32.59710 + 47, 49, 52, 52, 52, 52, 51, 49, 54, 57, 58, 65, 78, 89, 93, 97, 32.59711 + 97, 100, 105, 109, 109, 108, 106, 107, 108, 107, 103, 102, 106, 107, 105, 108, 32.59712 + 103, 103, 109, 110, 104, 101, 103, 103, 109, 114, 113, 106, 100, 100, 105, 112, 32.59713 + 113, 113, 114, 115, 113, 108, 105, 114, 118, 119, 118, 123, 130, 134, 135, 148, 32.59714 + 158, 172, 175, 173, 188, 201, 196, 217, 201, 76, 41, 77, 84, 106, 94, 99, 32.59715 + 129, 114, 134, 255, 255, 231, 224, 240, 216, 153, 43, 55, 65, 48, 59, 40, 32.59716 + 47, 51, 48, 45, 45, 47, 48, 46, 44, 47, 47, 47, 47, 47, 47, 47, 32.59717 + 47, 44, 47, 50, 51, 48, 48, 51, 54, 54, 57, 59, 61, 69, 82, 92, 32.59718 + 96, 99, 106, 109, 107, 107, 113, 115, 112, 114, 114, 112, 109, 107, 107, 108, 32.59719 + 110, 108, 103, 104, 113, 114, 109, 111, 118, 103, 109, 105, 100, 103, 102, 102, 32.59720 + 111, 109, 111, 109, 107, 110, 115, 113, 108, 114, 119, 124, 126, 126, 130, 137, 32.59721 + 146, 155, 159, 164, 172, 181, 190, 198, 203, 222, 229, 118, 71, 60, 85, 105, 32.59722 + 98, 109, 113, 116, 151, 255, 255, 230, 223, 237, 206, 98, 33, 46, 53, 45, 32.59723 + 58, 52, 52, 51, 49, 48, 49, 52, 53, 51, 49, 47, 47, 47, 47, 47, 32.59724 + 47, 47, 47, 48, 49, 48, 47, 44, 45, 49, 51, 50, 53, 58, 63, 75, 32.59725 + 91, 101, 104, 101, 105, 105, 103, 107, 116, 120, 117, 108, 108, 106, 105, 105, 32.59726 + 105, 106, 105, 105, 101, 101, 105, 106, 104, 104, 106, 103, 110, 107, 105, 108, 32.59727 + 105, 101, 109, 108, 110, 108, 106, 109, 113, 110, 106, 113, 119, 124, 128, 130, 32.59728 + 132, 137, 142, 140, 145, 153, 163, 173, 183, 190, 193, 191, 218, 170, 131, 63, 32.59729 + 64, 109, 117, 121, 108, 114, 161, 255, 255, 229, 223, 234, 184, 58, 46, 50, 32.59730 + 52, 48, 54, 57, 49, 46, 45, 46, 48, 51, 51, 49, 47, 47, 47, 47, 32.59731 + 47, 47, 47, 47, 47, 48, 47, 44, 43, 43, 47, 50, 53, 57, 60, 64, 32.59732 + 72, 84, 98, 103, 102, 117, 116, 109, 105, 108, 115, 117, 114, 117, 113, 109, 32.59733 + 109, 111, 113, 111, 109, 111, 111, 109, 107, 110, 114, 110, 104, 100, 108, 107, 32.59734 + 107, 112, 109, 105, 111, 108, 111, 109, 107, 108, 112, 110, 106, 112, 117, 122, 32.59735 + 128, 131, 134, 135, 138, 148, 155, 164, 176, 187, 195, 202, 205, 220, 218, 189, 32.59736 + 154, 62, 53, 112, 119, 123, 97, 113, 170, 255, 248, 231, 228, 232, 154, 43, 32.59737 + 61, 50, 55, 56, 47, 56, 46, 44, 45, 47, 49, 50, 49, 46, 45, 47, 32.59738 + 47, 47, 47, 47, 47, 47, 47, 47, 46, 44, 45, 47, 52, 55, 56, 60, 32.59739 + 63, 69, 78, 91, 103, 106, 102, 121, 117, 110, 108, 111, 114, 113, 109, 117, 32.59740 + 109, 101, 98, 102, 106, 105, 103, 101, 105, 102, 97, 101, 109, 105, 95, 99, 32.59741 + 107, 105, 106, 112, 111, 108, 114, 106, 109, 109, 107, 108, 112, 112, 109, 112, 32.59742 + 113, 117, 124, 129, 133, 135, 135, 149, 153, 162, 172, 183, 195, 202, 207, 224, 32.59743 + 212, 198, 177, 99, 62, 86, 82, 118, 97, 132, 207, 255, 231, 234, 234, 231, 32.59744 + 122, 34, 54, 35, 51, 61, 42, 54, 51, 51, 52, 54, 54, 53, 50, 48, 32.59745 + 46, 47, 47, 47, 47, 47, 47, 47, 47, 46, 46, 47, 47, 49, 50, 53, 32.59746 + 54, 53, 60, 71, 82, 98, 111, 115, 113, 107, 105, 104, 110, 116, 117, 114, 32.59747 + 110, 113, 104, 94, 91, 97, 103, 107, 107, 100, 105, 104, 99, 103, 111, 110, 32.59748 + 100, 106, 111, 105, 103, 110, 111, 109, 115, 104, 108, 110, 108, 109, 114, 116, 32.59749 + 115, 116, 116, 116, 121, 126, 132, 134, 136, 146, 149, 154, 163, 176, 191, 203, 32.59750 + 211, 215, 217, 212, 179, 108, 50, 67, 95, 112, 112, 171, 255, 255, 231, 234, 32.59751 + 236, 230, 96, 42, 49, 32, 50, 60, 42, 52, 53, 51, 53, 54, 53, 50, 32.59752 + 47, 46, 46, 47, 47, 47, 47, 47, 47, 47, 48, 47, 49, 51, 48, 45, 32.59753 + 46, 51, 55, 64, 73, 83, 92, 101, 110, 113, 112, 111, 109, 111, 117, 118, 32.59754 + 111, 104, 100, 95, 88, 82, 81, 87, 94, 100, 102, 99, 103, 105, 104, 106, 32.59755 + 110, 112, 110, 108, 110, 103, 100, 108, 109, 107, 112, 106, 111, 113, 111, 111, 32.59756 + 114, 118, 117, 119, 119, 119, 120, 121, 125, 129, 132, 141, 143, 146, 154, 166, 32.59757 + 182, 196, 204, 220, 216, 213, 167, 100, 38, 60, 105, 99, 118, 200, 255, 255, 32.59758 + 234, 232, 233, 229, 81, 51, 50, 45, 53, 54, 48, 52, 50, 49, 50, 51, 32.59759 + 50, 46, 44, 45, 47, 47, 47, 47, 47, 47, 47, 47, 48, 49, 52, 53, 32.59760 + 48, 43, 48, 59, 69, 83, 93, 101, 104, 104, 107, 108, 108, 116, 114, 113, 32.59761 + 114, 107, 90, 80, 76, 61, 60, 59, 59, 62, 65, 68, 70, 73, 76, 79, 32.59762 + 83, 81, 79, 83, 89, 90, 94, 91, 93, 105, 107, 105, 110, 110, 115, 116, 32.59763 + 114, 111, 114, 116, 116, 116, 118, 120, 118, 114, 114, 114, 117, 114, 114, 114, 32.59764 + 119, 127, 138, 148, 155, 167, 163, 211, 194, 124, 54, 57, 62, 80, 106, 209, 32.59765 + 255, 255, 237, 229, 229, 228, 76, 42, 42, 50, 50, 47, 55, 58, 51, 51, 32.59766 + 53, 54, 52, 49, 48, 51, 53, 47, 47, 47, 47, 47, 47, 47, 47, 49, 32.59767 + 53, 54, 49, 44, 53, 71, 87, 86, 98, 109, 110, 109, 111, 114, 116, 100, 32.59768 + 98, 98, 98, 87, 71, 60, 58, 59, 63, 65, 66, 64, 61, 60, 61, 61, 32.59769 + 60, 66, 72, 68, 60, 66, 77, 68, 75, 77, 85, 101, 107, 104, 110, 114, 32.59770 + 119, 119, 115, 112, 114, 115, 114, 110, 115, 119, 115, 108, 101, 100, 102, 100, 32.59771 + 99, 98, 98, 101, 106, 110, 113, 112, 109, 199, 201, 114, 51, 74, 66, 67, 32.59772 + 93, 209, 255, 255, 235, 223, 227, 225, 104, 46, 36, 52, 52, 48, 56, 51, 32.59773 + 50, 46, 46, 47, 47, 47, 46, 45, 44, 47, 47, 47, 48, 48, 49, 49, 32.59774 + 49, 48, 46, 47, 52, 51, 52, 71, 94, 95, 108, 117, 113, 109, 108, 101, 32.59775 + 93, 110, 105, 89, 72, 66, 69, 68, 64, 71, 63, 56, 56, 60, 64, 63, 32.59776 + 61, 52, 50, 52, 58, 61, 59, 61, 64, 68, 62, 59, 67, 79, 89, 98, 32.59777 + 105, 116, 115, 113, 111, 115, 123, 124, 122, 114, 114, 111, 102, 94, 89, 89, 32.59778 + 90, 85, 83, 78, 73, 70, 71, 75, 79, 93, 91, 148, 178, 137, 83, 54, 32.59779 + 64, 80, 103, 197, 255, 255, 234, 225, 229, 228, 111, 43, 35, 53, 53, 49, 32.59780 + 57, 53, 55, 47, 47, 47, 46, 46, 45, 45, 45, 47, 47, 47, 48, 48, 32.59781 + 49, 49, 49, 51, 43, 44, 53, 59, 65, 81, 98, 97, 104, 111, 112, 111, 32.59782 + 111, 108, 103, 79, 78, 72, 67, 70, 79, 82, 81, 85, 80, 74, 72, 71, 32.59783 + 70, 67, 64, 62, 58, 57, 59, 59, 56, 56, 59, 75, 70, 67, 73, 79, 32.59784 + 83, 90, 96, 109, 110, 108, 107, 111, 117, 119, 115, 110, 105, 97, 86, 77, 32.59785 + 72, 71, 71, 60, 59, 59, 58, 57, 58, 61, 65, 66, 69, 124, 157, 141, 32.59786 + 105, 65, 53, 91, 110, 198, 255, 255, 234, 226, 229, 228, 117, 44, 38, 57, 32.59787 + 56, 48, 55, 53, 57, 49, 48, 46, 45, 45, 45, 46, 47, 47, 47, 47, 32.59788 + 47, 48, 48, 48, 48, 51, 43, 43, 57, 72, 82, 93, 104, 112, 109, 109, 32.59789 + 112, 111, 105, 100, 100, 85, 88, 89, 90, 96, 104, 107, 106, 108, 108, 107, 32.59790 + 106, 105, 102, 100, 98, 96, 91, 87, 87, 85, 81, 82, 84, 82, 79, 79, 32.59791 + 82, 82, 82, 86, 93, 106, 109, 109, 108, 111, 116, 116, 111, 116, 108, 95, 32.59792 + 82, 75, 71, 70, 69, 56, 59, 63, 66, 69, 72, 76, 78, 84, 92, 130, 32.59793 + 154, 164, 150, 93, 55, 89, 115, 213, 255, 255, 234, 228, 227, 224, 121, 49, 32.59794 + 44, 63, 59, 47, 51, 49, 54, 50, 49, 46, 44, 44, 45, 47, 48, 47, 32.59795 + 47, 47, 47, 47, 47, 47, 48, 50, 46, 48, 63, 80, 92, 101, 108, 119, 32.59796 + 108, 107, 113, 111, 101, 93, 93, 90, 93, 97, 101, 105, 108, 106, 104, 103, 32.59797 + 107, 111, 112, 108, 106, 102, 101, 96, 91, 88, 89, 87, 86, 88, 92, 81, 32.59798 + 79, 80, 83, 81, 80, 87, 95, 102, 106, 109, 108, 109, 113, 112, 107, 104, 32.59799 + 95, 83, 74, 70, 69, 67, 65, 61, 65, 71, 77, 83, 89, 93, 98, 104, 32.59800 + 117, 134, 144, 170, 166, 98, 52, 83, 114, 255, 255, 255, 233, 231, 226, 224, 32.59801 + 130, 50, 45, 64, 59, 48, 51, 49, 54, 51, 49, 47, 45, 44, 46, 47, 32.59802 + 49, 47, 47, 47, 47, 47, 47, 47, 46, 48, 52, 59, 72, 83, 93, 103, 32.59803 + 110, 110, 104, 104, 115, 117, 108, 102, 101, 92, 95, 102, 108, 109, 108, 105, 32.59804 + 104, 99, 102, 104, 103, 98, 92, 86, 83, 81, 76, 74, 75, 75, 75, 77, 32.59805 + 83, 78, 76, 76, 77, 77, 77, 84, 93, 95, 101, 104, 103, 103, 105, 103, 32.59806 + 100, 100, 93, 85, 79, 77, 76, 73, 71, 74, 77, 83, 90, 97, 105, 112, 32.59807 + 118, 108, 130, 142, 148, 181, 166, 89, 52, 87, 139, 255, 255, 255, 231, 234, 32.59808 + 228, 227, 142, 47, 41, 59, 57, 49, 55, 53, 56, 50, 49, 48, 46, 46, 32.59809 + 46, 47, 48, 47, 47, 47, 47, 46, 46, 46, 45, 50, 59, 72, 82, 89, 32.59810 + 96, 106, 113, 114, 113, 114, 119, 120, 114, 109, 105, 107, 108, 111, 116, 111, 32.59811 + 104, 98, 99, 92, 94, 95, 95, 93, 90, 85, 82, 79, 74, 73, 75, 74, 32.59812 + 73, 75, 79, 83, 80, 80, 83, 83, 83, 86, 93, 96, 102, 105, 103, 101, 32.59813 + 103, 103, 101, 105, 100, 94, 87, 83, 81, 79, 78, 79, 83, 88, 94, 101, 32.59814 + 108, 115, 121, 114, 141, 159, 173, 200, 155, 63, 45, 88, 155, 255, 255, 255, 32.59815 + 231, 236, 228, 227, 149, 47, 39, 56, 55, 50, 57, 53, 55, 49, 49, 48, 32.59816 + 48, 48, 47, 47, 47, 47, 47, 47, 46, 46, 45, 45, 44, 54, 65, 79, 32.59817 + 90, 97, 104, 111, 115, 119, 122, 123, 120, 116, 115, 113, 108, 106, 103, 103, 32.59818 + 103, 94, 82, 74, 74, 72, 71, 70, 73, 76, 79, 76, 72, 65, 62, 62, 32.59819 + 65, 66, 64, 65, 69, 84, 81, 84, 91, 94, 92, 90, 91, 98, 105, 108, 32.59820 + 105, 102, 104, 105, 103, 91, 88, 80, 71, 66, 65, 67, 70, 63, 67, 73, 32.59821 + 81, 85, 89, 93, 96, 102, 128, 148, 175, 198, 125, 27, 36, 96, 158, 255, 32.59822 + 255, 255, 247, 236, 225, 224, 148, 50, 41, 56, 55, 49, 57, 50, 50, 49, 32.59823 + 50, 50, 50, 50, 49, 48, 47, 48, 48, 48, 46, 47, 46, 46, 44, 60, 32.59824 + 69, 83, 95, 104, 113, 117, 118, 110, 119, 120, 113, 110, 118, 122, 118, 99, 32.59825 + 96, 97, 97, 89, 76, 70, 73, 77, 72, 68, 67, 71, 72, 68, 64, 60, 32.59826 + 56, 58, 63, 65, 64, 64, 67, 74, 72, 78, 89, 96, 94, 88, 87, 98, 32.59827 + 104, 105, 101, 97, 99, 101, 102, 89, 87, 79, 70, 63, 63, 70, 77, 64, 32.59828 + 70, 78, 85, 88, 88, 88, 89, 94, 113, 133, 173, 201, 118, 26, 58, 113, 32.59829 + 196, 255, 255, 255, 255, 230, 224, 213, 163, 55, 34, 44, 52, 54, 61, 52, 32.59830 + 53, 48, 49, 48, 50, 50, 48, 45, 43, 47, 47, 48, 48, 49, 49, 49, 32.59831 + 48, 54, 73, 91, 98, 105, 116, 118, 113, 113, 120, 123, 118, 115, 117, 117, 32.59832 + 114, 102, 99, 92, 83, 75, 73, 73, 77, 62, 63, 63, 63, 62, 60, 55, 32.59833 + 52, 57, 68, 71, 64, 62, 68, 67, 61, 72, 76, 81, 88, 93, 97, 98, 32.59834 + 100, 95, 106, 113, 101, 92, 107, 119, 109, 98, 77, 68, 66, 65, 70, 72, 32.59835 + 65, 64, 70, 81, 84, 90, 107, 107, 84, 85, 91, 144, 187, 180, 109, 37, 32.59836 + 64, 119, 150, 255, 255, 255, 255, 214, 224, 228, 185, 42, 34, 55, 61, 51, 32.59837 + 49, 45, 52, 49, 48, 48, 48, 48, 48, 47, 47, 45, 46, 47, 47, 48, 32.59838 + 47, 46, 43, 51, 71, 89, 98, 106, 117, 120, 116, 114, 119, 118, 113, 109, 32.59839 + 109, 108, 104, 95, 91, 85, 81, 78, 75, 71, 68, 58, 61, 61, 58, 50, 32.59840 + 44, 41, 40, 74, 96, 107, 90, 65, 57, 60, 64, 69, 73, 79, 86, 92, 32.59841 + 96, 97, 98, 102, 103, 105, 104, 109, 127, 124, 101, 79, 58, 59, 65, 52, 32.59842 + 50, 56, 49, 58, 51, 58, 72, 88, 109, 120, 113, 80, 94, 145, 181, 163, 32.59843 + 68, 28, 76, 137, 154, 255, 255, 255, 255, 221, 226, 219, 163, 46, 35, 55, 32.59844 + 59, 50, 49, 44, 50, 48, 48, 46, 47, 47, 48, 50, 51, 46, 47, 48, 32.59845 + 49, 49, 47, 44, 41, 55, 73, 92, 100, 105, 115, 119, 116, 118, 118, 115, 32.59846 + 111, 108, 107, 104, 98, 93, 86, 81, 80, 80, 75, 65, 56, 50, 57, 61, 32.59847 + 60, 53, 50, 51, 55, 78, 100, 112, 94, 65, 54, 56, 62, 69, 73, 80, 32.59848 + 87, 93, 96, 97, 96, 102, 99, 101, 106, 116, 138, 139, 122, 85, 56, 63, 32.59849 + 78, 54, 46, 52, 45, 50, 56, 79, 93, 83, 83, 104, 120, 100, 113, 157, 32.59850 + 193, 177, 51, 45, 112, 144, 158, 255, 255, 255, 255, 248, 233, 206, 133, 61, 32.59851 + 36, 44, 51, 54, 59, 49, 48, 46, 48, 49, 49, 49, 49, 50, 52, 49, 32.59852 + 50, 52, 52, 51, 48, 45, 41, 64, 81, 98, 105, 108, 112, 115, 114, 118, 32.59853 + 115, 110, 108, 107, 106, 101, 96, 95, 91, 87, 84, 82, 75, 65, 58, 61, 32.59854 + 66, 70, 71, 70, 71, 73, 75, 74, 82, 84, 77, 69, 68, 68, 65, 72, 32.59855 + 75, 83, 90, 95, 97, 97, 98, 96, 98, 106, 104, 104, 129, 157, 167, 107, 32.59856 + 61, 59, 76, 57, 48, 54, 42, 53, 74, 107, 118, 97, 83, 90, 96, 107, 32.59857 + 116, 153, 195, 194, 47, 57, 133, 177, 201, 255, 255, 255, 255, 255, 237, 217, 32.59858 + 148, 61, 36, 44, 51, 55, 61, 50, 46, 44, 48, 53, 55, 53, 51, 50, 32.59859 + 50, 50, 50, 51, 51, 50, 48, 45, 42, 68, 83, 102, 110, 110, 112, 116, 32.59860 + 118, 115, 109, 105, 105, 106, 105, 102, 100, 101, 100, 99, 94, 89, 84, 80, 32.59861 + 78, 88, 86, 82, 83, 84, 84, 80, 76, 78, 75, 71, 69, 71, 77, 77, 32.59862 + 75, 76, 79, 85, 91, 95, 98, 98, 97, 96, 99, 106, 103, 97, 121, 163, 32.59863 + 189, 145, 84, 61, 73, 71, 70, 71, 58, 68, 76, 93, 107, 115, 127, 121, 32.59864 + 96, 105, 121, 160, 203, 204, 55, 63, 148, 178, 255, 255, 255, 255, 255, 255, 32.59865 + 236, 224, 166, 50, 37, 55, 59, 53, 52, 45, 48, 47, 52, 58, 60, 55, 32.59866 + 51, 48, 47, 48, 47, 48, 47, 47, 45, 44, 42, 66, 81, 100, 112, 113, 32.59867 + 113, 119, 124, 120, 115, 113, 114, 114, 112, 110, 112, 105, 107, 108, 105, 101, 32.59868 + 98, 99, 101, 104, 97, 91, 92, 94, 94, 89, 83, 84, 84, 81, 74, 68, 32.59869 + 69, 75, 81, 82, 84, 87, 92, 96, 97, 97, 96, 105, 98, 100, 103, 101, 32.59870 + 121, 155, 178, 170, 112, 70, 68, 81, 85, 81, 76, 77, 80, 86, 92, 111, 32.59871 + 147, 159, 142, 113, 138, 177, 213, 210, 76, 67, 159, 162, 255, 255, 255, 255, 32.59872 + 255, 255, 229, 225, 183, 66, 47, 58, 57, 50, 52, 47, 53, 53, 57, 61, 32.59873 + 59, 54, 49, 47, 47, 48, 47, 46, 45, 45, 45, 47, 45, 65, 79, 100, 32.59874 + 112, 112, 112, 118, 124, 125, 120, 120, 121, 118, 114, 115, 120, 111, 110, 109, 32.59875 + 108, 107, 106, 104, 102, 99, 95, 92, 93, 96, 98, 96, 93, 86, 87, 87, 32.59876 + 80, 72, 72, 80, 90, 91, 93, 95, 97, 99, 100, 101, 102, 108, 97, 97, 32.59877 + 100, 97, 114, 147, 170, 176, 140, 86, 66, 79, 78, 68, 75, 84, 87, 95, 32.59878 + 102, 111, 139, 166, 171, 135, 148, 172, 202, 211, 114, 73, 156, 182, 255, 255, 32.59879 + 255, 255, 255, 255, 224, 235, 213, 95, 59, 50, 47, 49, 59, 55, 57, 58, 32.59880 + 61, 62, 58, 52, 46, 46, 48, 50, 48, 47, 45, 46, 48, 50, 49, 67, 32.59881 + 81, 100, 112, 110, 108, 112, 120, 121, 118, 118, 120, 113, 108, 110, 117, 114, 32.59882 + 110, 106, 107, 108, 105, 97, 89, 92, 91, 90, 89, 87, 87, 88, 88, 87, 32.59883 + 84, 82, 85, 88, 92, 96, 101, 102, 102, 102, 102, 104, 105, 107, 108, 104, 32.59884 + 97, 99, 98, 87, 102, 145, 178, 200, 183, 127, 93, 99, 88, 75, 90, 94, 32.59885 + 83, 90, 113, 130, 147, 161, 163, 179, 171, 174, 205, 235, 171, 101, 167, 175, 32.59886 + 255, 255, 255, 255, 255, 255, 228, 219, 213, 116, 45, 49, 48, 57, 51, 60, 32.59887 + 51, 65, 69, 73, 67, 54, 44, 44, 50, 51, 45, 44, 47, 48, 47, 51, 32.59888 + 57, 71, 74, 91, 109, 112, 120, 123, 118, 113, 119, 116, 114, 118, 115, 109, 32.59889 + 114, 104, 100, 105, 105, 99, 103, 102, 90, 89, 92, 94, 93, 89, 86, 86, 32.59890 + 87, 88, 88, 90, 92, 94, 95, 97, 97, 109, 107, 104, 103, 102, 104, 107, 32.59891 + 109, 103, 100, 95, 100, 103, 101, 127, 171, 201, 189, 152, 116, 101, 89, 79, 32.59892 + 80, 94, 92, 101, 120, 133, 138, 149, 163, 170, 161, 185, 193, 242, 209, 107, 32.59893 + 168, 170, 255, 255, 255, 255, 255, 255, 230, 224, 219, 121, 43, 41, 49, 60, 32.59894 + 53, 56, 47, 49, 54, 58, 57, 51, 46, 49, 54, 51, 47, 46, 48, 48, 32.59895 + 46, 49, 53, 65, 78, 95, 105, 109, 113, 121, 130, 121, 128, 126, 124, 128, 32.59896 + 123, 114, 117, 114, 109, 111, 109, 101, 102, 100, 88, 89, 88, 88, 84, 83, 32.59897 + 85, 90, 95, 93, 93, 94, 96, 97, 99, 101, 101, 103, 102, 103, 103, 104, 32.59898 + 106, 108, 109, 110, 108, 104, 109, 109, 107, 131, 176, 203, 195, 159, 122, 107, 32.59899 + 103, 104, 113, 102, 96, 99, 113, 126, 137, 154, 172, 167, 159, 171, 180, 238, 32.59900 + 226, 133, 148, 166, 255, 255, 255, 255, 255, 255, 255, 226, 223, 141, 50, 36, 32.59901 + 50, 60, 56, 59, 57, 70, 71, 73, 68, 60, 55, 54, 54, 50, 49, 50, 32.59902 + 51, 49, 47, 48, 51, 66, 86, 92, 99, 113, 113, 116, 132, 119, 126, 126, 32.59903 + 125, 130, 125, 116, 118, 123, 116, 117, 113, 104, 105, 106, 93, 91, 91, 91, 32.59904 + 89, 88, 89, 92, 95, 94, 94, 95, 97, 99, 99, 100, 101, 101, 102, 102, 32.59905 + 104, 105, 105, 106, 105, 104, 106, 105, 109, 109, 106, 131, 173, 198, 203, 182, 32.59906 + 149, 130, 121, 112, 113, 111, 106, 107, 118, 129, 139, 153, 170, 167, 171, 177, 32.59907 + 189, 239, 246, 182, 151, 163, 255, 255, 255, 255, 255, 255, 255, 226, 224, 163, 32.59908 + 64, 38, 51, 56, 59, 70, 80, 104, 104, 99, 88, 76, 68, 60, 56, 47, 32.59909 + 49, 53, 53, 50, 49, 50, 53, 69, 91, 91, 99, 124, 121, 108, 122, 113, 32.59910 + 120, 119, 120, 127, 124, 119, 122, 124, 118, 119, 116, 110, 114, 116, 106, 100, 32.59911 + 102, 104, 105, 101, 96, 91, 87, 91, 91, 91, 93, 95, 95, 96, 97, 104, 32.59912 + 105, 105, 106, 106, 104, 101, 100, 96, 102, 104, 106, 106, 104, 126, 165, 194, 32.59913 + 209, 196, 165, 145, 131, 113, 105, 115, 115, 121, 132, 138, 142, 146, 154, 145, 32.59914 + 168, 180, 195, 219, 231, 206, 159, 163, 255, 255, 255, 255, 255, 255, 255, 229, 32.59915 + 229, 170, 72, 40, 56, 51, 61, 74, 93, 114, 113, 108, 93, 80, 73, 64, 32.59916 + 57, 46, 52, 56, 55, 50, 52, 55, 55, 59, 92, 103, 112, 132, 122, 107, 32.59917 + 121, 119, 125, 122, 121, 127, 127, 124, 130, 124, 119, 121, 119, 114, 120, 122, 32.59918 + 112, 111, 111, 111, 111, 107, 101, 93, 88, 92, 92, 92, 94, 95, 96, 97, 32.59919 + 98, 105, 106, 106, 106, 105, 104, 101, 101, 103, 108, 108, 110, 109, 106, 122, 32.59920 + 155, 198, 214, 198, 161, 144, 139, 127, 119, 115, 118, 124, 134, 138, 139, 140, 32.59921 + 143, 145, 167, 186, 207, 216, 227, 223, 173, 161, 255, 255, 255, 255, 255, 255, 32.59922 + 255, 248, 237, 165, 76, 42, 57, 48, 65, 75, 93, 116, 119, 113, 95, 78, 32.59923 + 69, 61, 54, 49, 56, 60, 56, 52, 54, 58, 58, 48, 91, 120, 129, 128, 32.59924 + 114, 113, 134, 126, 129, 124, 121, 126, 125, 122, 128, 128, 123, 124, 123, 117, 32.59925 + 121, 122, 111, 118, 114, 108, 104, 103, 102, 100, 99, 96, 97, 98, 100, 101, 32.59926 + 103, 104, 104, 103, 102, 102, 102, 102, 104, 104, 107, 110, 114, 111, 109, 110, 32.59927 + 105, 114, 138, 194, 220, 210, 171, 149, 139, 124, 112, 112, 114, 116, 121, 127, 32.59928 + 133, 138, 143, 161, 174, 193, 212, 224, 241, 234, 182, 158, 255, 255, 255, 255, 32.59929 + 255, 255, 255, 255, 241, 176, 85, 39, 51, 42, 76, 87, 101, 121, 126, 122, 32.59930 + 100, 80, 70, 63, 56, 54, 63, 66, 58, 51, 53, 58, 58, 66, 95, 125, 32.59931 + 134, 124, 115, 120, 132, 123, 129, 123, 121, 126, 124, 119, 124, 127, 123, 126, 32.59932 + 125, 117, 120, 120, 109, 119, 113, 108, 105, 104, 105, 105, 104, 96, 97, 98, 32.59933 + 99, 102, 104, 105, 107, 104, 101, 98, 96, 96, 99, 102, 106, 110, 112, 106, 32.59934 + 106, 109, 106, 108, 127, 173, 215, 218, 177, 145, 129, 113, 101, 113, 114, 113, 32.59935 + 115, 120, 129, 136, 142, 152, 169, 194, 195, 206, 236, 221, 171, 159, 255, 255, 32.59936 + 255, 255, 255, 255, 255, 255, 239, 196, 98, 39, 44, 39, 86, 104, 116, 115, 32.59937 + 124, 122, 101, 81, 73, 70, 66, 59, 67, 68, 58, 49, 51, 55, 55, 94, 32.59938 + 98, 117, 128, 123, 123, 124, 120, 119, 126, 124, 124, 131, 128, 123, 127, 125, 32.59939 + 121, 125, 125, 119, 122, 121, 109, 117, 114, 112, 110, 110, 106, 101, 97, 90, 32.59940 + 92, 93, 95, 97, 100, 102, 103, 107, 103, 97, 91, 91, 94, 98, 102, 107, 32.59941 + 109, 103, 106, 112, 111, 112, 127, 154, 200, 204, 157, 122, 116, 117, 119, 113, 32.59942 + 116, 118, 119, 122, 128, 132, 133, 143, 175, 209, 192, 196, 235, 218, 176, 161, 32.59943 + 255, 255, 255, 255, 255, 255, 255, 255, 247, 230, 177, 70, 41, 47, 52, 103, 32.59944 + 124, 118, 108, 96, 83, 85, 101, 96, 67, 79, 69, 66, 68, 61, 53, 61, 32.59945 + 79, 103, 107, 114, 120, 123, 123, 123, 121, 120, 123, 123, 121, 121, 125, 126, 32.59946 + 123, 127, 129, 125, 120, 120, 125, 126, 124, 121, 117, 113, 111, 110, 106, 96, 32.59947 + 89, 97, 89, 82, 82, 87, 91, 92, 90, 90, 88, 86, 85, 88, 91, 93, 32.59948 + 93, 102, 114, 111, 106, 114, 119, 112, 109, 134, 170, 191, 157, 104, 91, 104, 32.59949 + 107, 94, 111, 97, 107, 114, 105, 125, 131, 136, 150, 176, 196, 208, 220, 211, 32.59950 + 182, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 204, 119, 65, 48, 32.59951 + 42, 76, 115, 121, 110, 101, 93, 92, 100, 91, 64, 93, 75, 63, 60, 55, 32.59952 + 54, 70, 91, 119, 116, 116, 117, 117, 117, 114, 113, 118, 122, 122, 120, 121, 32.59953 + 126, 126, 125, 121, 126, 127, 123, 121, 123, 122, 119, 120, 115, 111, 109, 108, 32.59954 + 103, 94, 87, 90, 89, 87, 85, 85, 84, 84, 84, 86, 87, 88, 91, 95, 32.59955 + 100, 103, 105, 100, 105, 101, 100, 112, 115, 107, 106, 122, 145, 183, 187, 136, 32.59956 + 88, 82, 93, 86, 106, 99, 111, 115, 105, 115, 117, 131, 149, 177, 196, 204, 32.59957 + 214, 208, 184, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 224, 164, 32.59958 + 79, 41, 30, 55, 131, 134, 112, 94, 83, 78, 86, 88, 74, 93, 75, 59, 32.59959 + 54, 52, 57, 76, 99, 124, 119, 114, 114, 116, 119, 118, 117, 117, 120, 121, 32.59960 + 119, 120, 126, 128, 127, 120, 128, 132, 130, 127, 126, 124, 120, 119, 114, 111, 32.59961 + 108, 106, 101, 92, 87, 81, 84, 87, 86, 83, 80, 80, 82, 88, 93, 96, 32.59962 + 99, 98, 99, 102, 105, 107, 106, 101, 104, 116, 113, 106, 110, 119, 123, 155, 32.59963 + 187, 175, 135, 101, 80, 82, 102, 101, 109, 114, 107, 112, 115, 119, 141, 173, 32.59964 + 192, 203, 218, 219, 200, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 32.59965 + 228, 201, 118, 71, 41, 37, 134, 134, 110, 96, 86, 77, 81, 86, 81, 78, 32.59966 + 70, 65, 63, 62, 66, 84, 107, 124, 119, 114, 115, 119, 122, 122, 120, 115, 32.59967 + 118, 119, 118, 120, 126, 128, 128, 120, 129, 133, 130, 126, 125, 122, 120, 120, 32.59968 + 116, 111, 109, 105, 98, 92, 87, 74, 76, 79, 81, 82, 81, 81, 83, 91, 32.59969 + 97, 102, 103, 100, 97, 100, 102, 105, 104, 101, 106, 113, 105, 102, 115, 115, 32.59970 + 121, 135, 149, 163, 169, 135, 81, 85, 100, 100, 101, 108, 109, 114, 122, 113, 32.59971 + 130, 159, 178, 191, 213, 220, 204, 194, 255, 255, 255, 255, 255, 255, 255, 255, 32.59972 + 255, 244, 230, 236, 182, 139, 76, 22, 101, 119, 112, 114, 116, 106, 100, 93, 32.59973 + 81, 70, 72, 74, 75, 71, 76, 96, 120, 126, 123, 120, 121, 121, 121, 118, 32.59974 + 115, 116, 119, 118, 115, 118, 124, 126, 125, 118, 123, 124, 120, 116, 117, 116, 32.59975 + 115, 119, 116, 111, 106, 102, 96, 90, 86, 78, 75, 74, 77, 82, 86, 84, 32.59976 + 82, 83, 90, 97, 97, 94, 92, 93, 95, 84, 88, 89, 94, 98, 92, 96, 32.59977 + 115, 109, 122, 126, 114, 117, 140, 127, 83, 83, 96, 102, 95, 102, 108, 107, 32.59978 + 117, 118, 128, 145, 158, 174, 198, 203, 187, 255, 255, 255, 255, 255, 255, 255, 32.59979 + 255, 255, 255, 255, 225, 237, 210, 181, 114, 37, 76, 112, 113, 121, 122, 113, 32.59980 + 113, 109, 97, 77, 79, 79, 76, 72, 78, 102, 125, 115, 117, 120, 122, 122, 32.59981 + 122, 121, 120, 117, 119, 117, 113, 114, 120, 122, 121, 121, 122, 119, 115, 114, 32.59982 + 117, 117, 113, 118, 115, 110, 105, 98, 92, 86, 83, 84, 80, 76, 79, 85, 32.59983 + 88, 84, 80, 82, 84, 86, 83, 78, 72, 69, 68, 64, 74, 77, 82, 88, 32.59984 + 91, 98, 119, 114, 101, 92, 95, 103, 117, 107, 79, 78, 92, 105, 96, 101, 32.59985 + 108, 97, 104, 121, 125, 138, 151, 169, 195, 203, 187, 255, 255, 255, 255, 255, 32.59986 + 255, 255, 255, 255, 255, 255, 222, 224, 209, 197, 149, 71, 63, 107, 112, 117, 32.59987 + 110, 104, 117, 125, 116, 96, 93, 88, 84, 82, 88, 103, 117, 104, 110, 117, 32.59988 + 120, 119, 120, 123, 126, 119, 120, 118, 112, 112, 116, 117, 116, 125, 123, 118, 32.59989 + 116, 118, 121, 118, 111, 113, 111, 107, 101, 93, 87, 82, 80, 80, 81, 82, 32.59990 + 86, 89, 90, 86, 83, 82, 82, 80, 76, 71, 66, 61, 57, 60, 72, 72, 32.59991 + 74, 87, 99, 105, 117, 115, 79, 64, 85, 106, 113, 98, 74, 77, 89, 106, 32.59992 + 94, 100, 113, 100, 111, 115, 122, 139, 153, 168, 196, 205, 193, 255, 255, 255, 32.59993 + 255, 255, 255, 255, 255, 255, 255, 255, 228, 229, 220, 215, 176, 91, 40, 94, 32.59994 + 108, 121, 116, 110, 126, 131, 116, 116, 110, 103, 102, 102, 105, 108, 112, 109, 32.59995 + 115, 120, 119, 113, 111, 114, 120, 120, 121, 117, 112, 110, 114, 115, 112, 122, 32.59996 + 119, 115, 114, 118, 121, 115, 105, 111, 110, 105, 98, 90, 83, 79, 78, 73, 32.59997 + 79, 87, 93, 94, 91, 90, 90, 79, 79, 79, 81, 83, 84, 83, 79, 64, 32.59998 + 73, 69, 68, 86, 103, 105, 106, 99, 78, 73, 83, 90, 95, 89, 73, 81, 32.59999 + 90, 104, 89, 98, 120, 113, 129, 112, 124, 143, 154, 162, 183, 193, 183, 255, 32.60000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 231, 217, 190, 75, 32.60001 + 39, 49, 97, 145, 121, 114, 127, 118, 128, 119, 119, 117, 114, 114, 116, 115, 32.60002 + 113, 113, 112, 112, 115, 118, 118, 113, 109, 112, 115, 116, 111, 108, 111, 111, 32.60003 + 108, 106, 108, 110, 111, 111, 111, 113, 113, 100, 101, 98, 81, 67, 78, 88, 32.60004 + 78, 89, 87, 87, 87, 87, 86, 87, 88, 90, 88, 83, 81, 80, 82, 85, 32.60005 + 87, 81, 77, 76, 79, 85, 88, 87, 85, 87, 89, 92, 93, 91, 87, 83, 32.60006 + 79, 82, 83, 88, 97, 102, 104, 110, 116, 118, 113, 133, 138, 150, 173, 168, 32.60007 + 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 227, 222, 32.60008 + 204, 104, 25, 50, 83, 120, 152, 116, 130, 107, 139, 119, 119, 117, 117, 118, 32.60009 + 120, 119, 117, 121, 116, 111, 109, 111, 114, 114, 114, 111, 112, 113, 112, 109, 32.60010 + 109, 109, 111, 99, 99, 101, 105, 108, 109, 107, 107, 97, 93, 89, 78, 69, 32.60011 + 79, 90, 84, 92, 93, 92, 91, 91, 90, 91, 90, 89, 88, 84, 82, 81, 32.60012 + 83, 85, 86, 83, 82, 84, 85, 85, 87, 89, 90, 89, 91, 94, 96, 96, 32.60013 + 93, 89, 87, 86, 86, 92, 98, 100, 100, 102, 107, 113, 109, 130, 137, 151, 32.60014 + 176, 172, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 32.60015 + 222, 230, 217, 152, 18, 35, 57, 105, 160, 119, 126, 108, 132, 120, 119, 119, 32.60016 + 119, 119, 119, 116, 115, 119, 115, 111, 109, 110, 113, 116, 116, 118, 113, 113, 32.60017 + 117, 113, 107, 107, 114, 105, 103, 103, 107, 109, 108, 104, 99, 91, 81, 78, 32.60018 + 77, 72, 81, 90, 89, 93, 93, 92, 92, 91, 90, 90, 89, 88, 86, 84, 32.60019 + 83, 82, 83, 84, 83, 81, 84, 87, 86, 83, 82, 86, 91, 90, 92, 96, 32.60020 + 99, 100, 98, 95, 93, 88, 88, 92, 98, 100, 97, 100, 104, 109, 108, 130, 32.60021 + 137, 147, 173, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60022 + 255, 255, 218, 232, 221, 196, 37, 22, 39, 108, 144, 130, 119, 123, 114, 124, 32.60023 + 120, 118, 119, 117, 112, 108, 107, 109, 110, 112, 115, 116, 116, 114, 113, 119, 32.60024 + 110, 108, 115, 111, 101, 100, 110, 113, 109, 107, 108, 110, 107, 98, 91, 85, 32.60025 + 72, 72, 80, 79, 83, 90, 89, 90, 90, 89, 88, 87, 86, 86, 86, 87, 32.60026 + 87, 86, 85, 84, 84, 83, 82, 81, 83, 84, 82, 80, 80, 83, 86, 91, 32.60027 + 94, 98, 101, 101, 100, 97, 94, 89, 87, 90, 95, 97, 98, 104, 110, 110, 32.60028 + 110, 132, 137, 144, 166, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60029 + 255, 255, 255, 255, 217, 231, 215, 221, 74, 24, 34, 94, 144, 138, 121, 127, 32.60030 + 114, 124, 119, 115, 118, 117, 111, 108, 109, 111, 112, 115, 115, 116, 114, 112, 32.60031 + 111, 112, 102, 101, 107, 105, 95, 97, 107, 109, 105, 102, 102, 103, 98, 89, 32.60032 + 81, 83, 73, 77, 87, 86, 89, 92, 86, 88, 88, 88, 88, 87, 86, 86, 32.60033 + 86, 89, 88, 88, 87, 87, 86, 84, 83, 85, 82, 79, 79, 81, 83, 83, 32.60034 + 82, 92, 94, 98, 100, 100, 98, 95, 92, 91, 88, 86, 88, 91, 94, 102, 32.60035 + 111, 110, 108, 131, 136, 143, 164, 157, 255, 255, 255, 255, 255, 255, 255, 255, 32.60036 + 255, 255, 255, 255, 255, 255, 242, 226, 210, 223, 103, 29, 32, 55, 151, 132, 32.60037 + 123, 109, 121, 121, 114, 110, 116, 118, 114, 114, 119, 121, 119, 115, 110, 108, 32.60038 + 107, 110, 113, 107, 102, 101, 106, 105, 101, 105, 113, 101, 99, 97, 98, 98, 32.60039 + 95, 88, 83, 82, 79, 85, 91, 88, 92, 94, 86, 91, 91, 91, 91, 91, 32.60040 + 91, 91, 90, 94, 92, 91, 90, 89, 88, 87, 86, 90, 85, 80, 81, 85, 32.60041 + 88, 88, 85, 92, 95, 98, 101, 101, 99, 95, 93, 95, 89, 85, 85, 85, 32.60042 + 87, 95, 104, 106, 103, 127, 136, 145, 166, 156, 255, 255, 255, 255, 255, 255, 32.60043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 214, 212, 109, 26, 31, 35, 32.60044 + 127, 126, 120, 105, 121, 119, 110, 105, 113, 115, 113, 115, 123, 119, 118, 116, 32.60045 + 111, 107, 107, 110, 114, 110, 109, 108, 106, 104, 105, 110, 113, 101, 99, 99, 32.60046 + 97, 95, 92, 88, 87, 82, 85, 92, 91, 84, 92, 98, 89, 92, 92, 92, 32.60047 + 93, 95, 95, 96, 95, 97, 95, 93, 92, 90, 90, 90, 91, 90, 89, 85, 32.60048 + 85, 86, 89, 91, 93, 92, 96, 99, 104, 104, 104, 100, 99, 99, 95, 90, 32.60049 + 89, 87, 86, 90, 96, 104, 101, 124, 137, 150, 171, 255, 255, 255, 255, 255, 32.60050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 220, 200, 103, 23, 32.60051 + 39, 49, 97, 135, 125, 127, 117, 120, 108, 104, 110, 110, 108, 110, 121, 106, 32.60052 + 110, 116, 116, 114, 112, 113, 114, 110, 112, 109, 101, 97, 99, 102, 99, 100, 32.60053 + 100, 98, 95, 89, 86, 84, 83, 82, 88, 93, 86, 78, 93, 101, 91, 90, 32.60054 + 90, 92, 92, 94, 95, 95, 95, 98, 97, 94, 92, 90, 90, 90, 92, 86, 32.60055 + 87, 88, 85, 83, 84, 90, 95, 91, 95, 101, 105, 108, 108, 107, 105, 98, 32.60056 + 95, 95, 96, 95, 92, 92, 97, 108, 103, 126, 138, 156, 175, 255, 255, 255, 32.60057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 219, 32.60058 + 89, 32, 39, 43, 50, 75, 110, 126, 124, 107, 106, 93, 98, 123, 100, 119, 32.60059 + 116, 110, 109, 109, 109, 110, 111, 111, 112, 105, 111, 109, 98, 97, 106, 110, 32.60060 + 103, 102, 108, 108, 99, 88, 83, 80, 77, 86, 85, 85, 87, 88, 88, 86, 32.60061 + 84, 89, 87, 87, 88, 92, 93, 93, 91, 92, 97, 91, 89, 96, 92, 83, 32.60062 + 85, 89, 87, 85, 81, 79, 77, 77, 78, 95, 102, 107, 105, 104, 107, 108, 32.60063 + 105, 95, 90, 88, 89, 93, 94, 91, 87, 98, 106, 119, 138, 154, 160, 255, 32.60064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60065 + 215, 225, 123, 65, 52, 42, 47, 57, 65, 69, 70, 67, 70, 63, 104, 124, 32.60066 + 109, 109, 114, 113, 114, 113, 111, 108, 105, 103, 103, 100, 106, 105, 99, 101, 32.60067 + 112, 118, 114, 89, 96, 106, 107, 98, 85, 75, 70, 72, 70, 68, 69, 72, 32.60068 + 77, 81, 83, 81, 80, 79, 81, 83, 85, 83, 82, 85, 89, 82, 81, 89, 32.60069 + 88, 83, 89, 78, 78, 80, 81, 82, 84, 87, 88, 92, 96, 100, 102, 105, 32.60070 + 108, 104, 97, 95, 93, 94, 96, 98, 100, 98, 94, 100, 109, 125, 143, 159, 32.60071 + 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60072 + 255, 255, 240, 223, 163, 105, 68, 42, 45, 48, 38, 33, 41, 41, 47, 46, 32.60073 + 112, 126, 119, 103, 118, 115, 117, 118, 114, 108, 103, 100, 100, 108, 112, 108, 32.60074 + 101, 101, 108, 110, 105, 87, 91, 103, 113, 105, 84, 69, 66, 69, 67, 65, 32.60075 + 65, 65, 66, 68, 69, 63, 62, 63, 66, 68, 70, 66, 65, 74, 77, 67, 32.60076 + 64, 70, 68, 64, 69, 78, 80, 83, 85, 89, 91, 93, 94, 84, 90, 94, 32.60077 + 100, 109, 113, 108, 98, 88, 90, 94, 97, 97, 96, 95, 94, 98, 108, 124, 32.60078 + 142, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60079 + 255, 255, 255, 255, 255, 218, 193, 142, 90, 46, 40, 47, 44, 40, 43, 42, 32.60080 + 49, 56, 104, 121, 115, 104, 118, 112, 116, 119, 117, 111, 107, 105, 106, 113, 32.60081 + 114, 108, 101, 98, 100, 97, 91, 99, 95, 100, 109, 100, 78, 67, 71, 70, 32.60082 + 74, 77, 78, 76, 72, 68, 65, 55, 54, 56, 59, 62, 63, 60, 57, 58, 32.60083 + 62, 55, 51, 58, 55, 49, 53, 63, 64, 65, 67, 67, 65, 64, 64, 55, 32.60084 + 62, 70, 75, 82, 88, 86, 80, 80, 85, 91, 94, 94, 93, 92, 93, 107, 32.60085 + 114, 129, 145, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60086 + 255, 255, 255, 255, 255, 255, 255, 255, 207, 175, 122, 59, 31, 37, 49, 47, 32.60087 + 37, 39, 50, 76, 88, 115, 108, 105, 109, 109, 112, 116, 115, 112, 108, 106, 32.60088 + 107, 105, 105, 102, 99, 100, 102, 100, 96, 105, 98, 99, 106, 99, 80, 72, 32.60089 + 77, 74, 78, 86, 90, 89, 87, 86, 85, 76, 73, 72, 72, 71, 70, 67, 32.60090 + 64, 57, 62, 60, 61, 69, 66, 57, 61, 60, 61, 63, 63, 62, 61, 58, 32.60091 + 57, 61, 71, 78, 76, 72, 73, 74, 72, 72, 78, 86, 91, 94, 96, 101, 32.60092 + 104, 116, 122, 136, 152, 159, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 195, 151, 84, 38, 35, 32.60094 + 53, 51, 33, 32, 45, 84, 83, 118, 114, 110, 108, 110, 110, 110, 109, 108, 32.60095 + 105, 102, 100, 105, 103, 101, 102, 105, 106, 103, 99, 98, 96, 100, 106, 102, 32.60096 + 89, 80, 80, 88, 89, 91, 89, 88, 90, 95, 100, 97, 93, 89, 86, 83, 32.60097 + 81, 77, 73, 76, 82, 77, 77, 82, 75, 64, 64, 72, 75, 76, 78, 79, 32.60098 + 81, 81, 82, 95, 106, 112, 103, 90, 83, 81, 79, 67, 70, 76, 83, 91, 32.60099 + 99, 107, 111, 110, 113, 129, 149, 190, 255, 255, 255, 255, 255, 255, 255, 255, 32.60100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 210, 175, 116, 32.60101 + 65, 49, 55, 51, 39, 41, 43, 71, 86, 116, 124, 107, 114, 114, 109, 105, 32.60102 + 105, 107, 106, 101, 97, 110, 106, 103, 105, 108, 106, 101, 97, 96, 97, 100, 32.60103 + 102, 99, 94, 86, 81, 93, 94, 93, 90, 86, 87, 93, 100, 103, 100, 96, 32.60104 + 92, 91, 91, 89, 88, 90, 94, 88, 85, 86, 79, 68, 70, 76, 76, 77, 32.60105 + 78, 80, 82, 84, 87, 99, 108, 116, 111, 102, 93, 85, 79, 75, 74, 74, 32.60106 + 78, 87, 98, 107, 112, 107, 111, 130, 158, 255, 255, 255, 255, 255, 255, 255, 32.60107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 32.60108 + 194, 143, 92, 60, 48, 42, 36, 58, 45, 52, 86, 104, 123, 94, 116, 116, 32.60109 + 108, 103, 104, 108, 110, 105, 100, 105, 101, 100, 105, 109, 109, 104, 100, 103, 32.60110 + 104, 100, 94, 91, 92, 89, 82, 78, 84, 90, 92, 90, 91, 96, 101, 103, 32.60111 + 100, 97, 96, 98, 102, 103, 104, 85, 90, 86, 85, 94, 93, 86, 90, 88, 32.60112 + 87, 85, 83, 83, 84, 85, 86, 94, 105, 115, 119, 117, 111, 100, 91, 94, 32.60113 + 87, 82, 82, 90, 100, 108, 111, 124, 128, 149, 184, 255, 255, 255, 255, 255, 32.60114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60115 + 255, 239, 204, 157, 143, 85, 44, 35, 60, 46, 42, 54, 78, 97, 116, 118, 32.60116 + 103, 110, 112, 116, 114, 109, 104, 101, 101, 94, 99, 99, 95, 97, 103, 105, 32.60117 + 102, 102, 99, 97, 100, 102, 96, 87, 80, 92, 93, 92, 91, 90, 95, 99, 32.60118 + 102, 104, 109, 103, 101, 107, 104, 99, 102, 100, 94, 96, 102, 100, 91, 90, 32.60119 + 99, 89, 88, 88, 91, 90, 86, 84, 85, 96, 102, 110, 117, 112, 104, 103, 32.60120 + 108, 101, 86, 88, 92, 88, 102, 117, 108, 126, 122, 153, 184, 255, 255, 255, 32.60121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60122 + 255, 255, 255, 255, 218, 179, 165, 109, 64, 42, 47, 45, 42, 57, 81, 98, 32.60123 + 115, 117, 105, 102, 105, 107, 108, 107, 106, 104, 104, 98, 101, 99, 96, 98, 32.60124 + 104, 104, 101, 103, 102, 100, 101, 100, 95, 87, 83, 92, 94, 96, 97, 97, 32.60125 + 96, 96, 96, 99, 104, 97, 95, 102, 100, 95, 100, 99, 94, 96, 103, 101, 32.60126 + 94, 96, 104, 91, 88, 89, 92, 93, 90, 90, 93, 101, 103, 110, 116, 114, 32.60127 + 105, 101, 101, 98, 84, 85, 88, 89, 104, 119, 113, 118, 125, 162, 208, 255, 32.60128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60129 + 255, 255, 255, 255, 255, 255, 255, 195, 187, 146, 107, 72, 48, 43, 42, 60, 32.60130 + 85, 98, 111, 116, 107, 101, 100, 100, 101, 103, 105, 103, 102, 101, 101, 97, 32.60131 + 96, 99, 104, 103, 99, 96, 98, 99, 99, 99, 99, 97, 94, 92, 91, 92, 32.60132 + 93, 94, 94, 94, 96, 100, 105, 98, 96, 103, 102, 99, 104, 102, 96, 93, 32.60133 + 94, 89, 81, 82, 88, 85, 81, 80, 84, 85, 84, 87, 91, 103, 102, 106, 32.60134 + 114, 117, 110, 102, 98, 104, 91, 89, 92, 91, 104, 115, 113, 113, 137, 181, 32.60135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 199, 178, 149, 107, 50, 41, 32.60137 + 42, 62, 86, 97, 107, 113, 107, 107, 103, 98, 98, 100, 101, 98, 96, 100, 32.60138 + 97, 93, 94, 98, 102, 101, 98, 95, 99, 100, 97, 96, 99, 101, 100, 97, 32.60139 + 91, 86, 86, 89, 94, 101, 108, 102, 106, 99, 97, 105, 105, 102, 107, 102, 32.60140 + 96, 91, 88, 82, 74, 74, 79, 81, 76, 75, 76, 79, 79, 83, 89, 101, 32.60141 + 98, 101, 112, 118, 114, 106, 101, 100, 93, 90, 96, 99, 107, 114, 117, 112, 32.60142 + 150, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 201, 193, 170, 127, 32.60144 + 46, 44, 43, 62, 86, 95, 102, 109, 107, 109, 104, 99, 97, 98, 98, 95, 32.60145 + 93, 95, 92, 90, 92, 96, 98, 98, 98, 101, 106, 103, 96, 92, 96, 97, 32.60146 + 94, 104, 95, 89, 91, 95, 98, 103, 109, 99, 103, 97, 95, 103, 103, 99, 32.60147 + 104, 98, 95, 93, 92, 89, 86, 88, 93, 88, 83, 79, 81, 82, 83, 88, 32.60148 + 94, 102, 100, 103, 111, 116, 113, 105, 103, 88, 88, 89, 97, 104, 108, 114, 32.60149 + 127, 118, 156, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 199, 32.60151 + 180, 146, 60, 50, 44, 61, 86, 94, 100, 106, 106, 104, 101, 98, 97, 97, 32.60152 + 98, 97, 96, 93, 91, 90, 93, 93, 92, 93, 98, 94, 99, 97, 92, 93, 32.60153 + 101, 104, 100, 100, 92, 90, 96, 99, 95, 91, 93, 99, 102, 97, 96, 103, 32.60154 + 102, 98, 102, 100, 99, 97, 94, 89, 86, 87, 89, 90, 86, 82, 84, 85, 32.60155 + 87, 92, 99, 106, 105, 108, 112, 111, 104, 101, 102, 92, 98, 97, 99, 103, 32.60156 + 99, 104, 126, 143, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60158 + 237, 200, 183, 167, 89, 59, 49, 63, 87, 96, 100, 106, 107, 98, 98, 99, 32.60159 + 97, 96, 96, 96, 97, 95, 94, 94, 95, 91, 86, 89, 97, 88, 94, 91, 32.60160 + 88, 95, 106, 108, 101, 100, 90, 88, 96, 99, 92, 86, 86, 96, 100, 96, 32.60161 + 96, 103, 100, 93, 95, 98, 98, 95, 89, 82, 78, 75, 76, 87, 83, 81, 32.60162 + 84, 87, 89, 94, 101, 105, 109, 113, 113, 105, 97, 100, 107, 106, 114, 107, 32.60163 + 102, 102, 94, 103, 136, 172, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60165 + 255, 255, 255, 200, 179, 174, 104, 66, 54, 64, 87, 97, 102, 107, 107, 96, 32.60166 + 98, 99, 98, 93, 91, 92, 95, 98, 97, 98, 98, 90, 82, 85, 95, 99, 32.60167 + 102, 97, 90, 94, 103, 100, 88, 110, 96, 89, 97, 101, 96, 96, 99, 90, 32.60168 + 95, 91, 90, 97, 93, 85, 86, 89, 91, 90, 86, 82, 79, 77, 76, 83, 32.60169 + 81, 80, 84, 89, 92, 98, 105, 102, 109, 115, 113, 102, 95, 102, 115, 106, 32.60170 + 117, 110, 105, 108, 104, 120, 161, 187, 255, 255, 255, 255, 255, 255, 255, 255, 32.60171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60172 + 255, 255, 255, 255, 255, 237, 202, 193, 147, 74, 64, 74, 92, 94, 97, 106, 32.60173 + 111, 107, 98, 97, 99, 91, 91, 91, 81, 92, 89, 90, 93, 92, 88, 88, 32.60174 + 90, 100, 103, 99, 93, 97, 108, 108, 100, 106, 105, 96, 96, 101, 95, 87, 32.60175 + 93, 107, 105, 99, 92, 89, 93, 98, 102, 94, 86, 81, 86, 91, 90, 82, 32.60176 + 76, 84, 82, 79, 80, 86, 94, 102, 108, 108, 110, 113, 110, 98, 88, 93, 32.60177 + 104, 102, 118, 108, 115, 106, 102, 153, 182, 194, 255, 255, 255, 255, 255, 255, 32.60178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60179 + 255, 255, 255, 255, 255, 255, 255, 255, 210, 205, 173, 100, 75, 71, 88, 97, 32.60180 + 100, 107, 109, 101, 93, 94, 94, 88, 90, 93, 87, 87, 85, 86, 91, 92, 32.60181 + 90, 91, 94, 96, 96, 94, 92, 98, 104, 102, 98, 98, 98, 92, 94, 102, 32.60182 + 98, 92, 99, 97, 98, 97, 91, 91, 94, 99, 101, 102, 94, 89, 88, 91, 32.60183 + 90, 85, 80, 78, 78, 77, 82, 89, 98, 106, 111, 111, 113, 114, 110, 100, 32.60184 + 92, 98, 110, 107, 113, 119, 112, 113, 137, 163, 189, 255, 255, 255, 255, 255, 32.60185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 223, 179, 140, 94, 72, 32.60187 + 85, 96, 100, 107, 109, 96, 91, 94, 93, 85, 87, 93, 89, 85, 83, 84, 32.60188 + 89, 90, 89, 90, 94, 98, 94, 93, 99, 104, 103, 101, 100, 95, 97, 93, 32.60189 + 95, 105, 101, 97, 105, 91, 95, 96, 90, 90, 94, 97, 96, 101, 97, 92, 32.60190 + 89, 89, 90, 89, 87, 78, 79, 82, 86, 92, 100, 106, 111, 117, 117, 115, 32.60191 + 111, 103, 99, 106, 116, 119, 113, 130, 116, 131, 174, 176, 194, 255, 255, 255, 32.60192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 188, 156, 32.60194 + 102, 74, 84, 93, 96, 103, 109, 96, 92, 97, 97, 85, 84, 89, 85, 87, 32.60195 + 84, 84, 87, 87, 85, 86, 89, 98, 91, 91, 102, 106, 101, 98, 101, 100, 32.60196 + 103, 98, 99, 106, 102, 97, 106, 98, 102, 101, 92, 88, 92, 93, 90, 93, 32.60197 + 95, 93, 89, 87, 89, 89, 90, 83, 84, 87, 89, 92, 98, 104, 109, 121, 32.60198 + 122, 120, 114, 108, 105, 108, 116, 126, 117, 127, 134, 159, 188, 186, 255, 255, 32.60199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60201 + 225, 124, 87, 75, 88, 93, 90, 96, 103, 93, 91, 98, 99, 88, 85, 87, 32.60202 + 82, 85, 82, 81, 83, 83, 81, 82, 87, 91, 83, 85, 96, 100, 95, 91, 32.60203 + 93, 100, 104, 99, 100, 105, 100, 96, 105, 105, 109, 105, 92, 87, 93, 96, 32.60204 + 92, 89, 94, 96, 91, 87, 88, 88, 85, 88, 89, 89, 89, 92, 97, 105, 32.60205 + 111, 120, 123, 123, 119, 113, 111, 110, 111, 120, 118, 116, 155, 183, 206, 255, 32.60206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60208 + 255, 255, 232, 72, 62, 75, 94, 93, 89, 92, 95, 91, 88, 95, 97, 89, 32.60209 + 88, 90, 83, 82, 78, 77, 80, 81, 80, 83, 87, 87, 83, 84, 91, 96, 32.60210 + 94, 91, 91, 93, 97, 94, 96, 101, 97, 94, 105, 103, 109, 105, 92, 88, 32.60211 + 97, 100, 95, 92, 99, 100, 93, 89, 91, 88, 81, 86, 88, 89, 89, 91, 32.60212 + 98, 107, 116, 118, 122, 122, 118, 115, 114, 112, 108, 112, 119, 119, 170, 193, 32.60213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60215 + 255, 255, 255, 255, 255, 255, 54, 75, 91, 86, 87, 95, 97, 97, 89, 91, 32.60216 + 92, 86, 88, 90, 83, 83, 79, 78, 80, 80, 79, 81, 84, 85, 85, 86, 32.60217 + 87, 91, 96, 93, 88, 88, 93, 91, 94, 99, 95, 94, 106, 94, 104, 103, 32.60218 + 91, 88, 98, 100, 93, 91, 98, 96, 90, 89, 95, 94, 86, 83, 87, 91, 32.60219 + 93, 93, 98, 106, 114, 115, 118, 116, 113, 114, 117, 115, 111, 120, 130, 148, 32.60220 + 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 75, 84, 101, 105, 105, 32.60223 + 93, 89, 87, 81, 83, 86, 79, 88, 83, 80, 80, 78, 75, 76, 79, 79, 32.60224 + 83, 82, 78, 83, 91, 90, 81, 89, 95, 94, 95, 100, 95, 93, 104, 90, 32.60225 + 102, 103, 91, 89, 97, 97, 86, 86, 92, 90, 84, 88, 99, 101, 93, 85, 32.60226 + 90, 95, 97, 95, 97, 101, 106, 113, 115, 112, 108, 111, 117, 118, 114, 135, 32.60227 + 144, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60229 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 80, 90, 32.60230 + 103, 104, 92, 85, 87, 89, 86, 83, 84, 82, 78, 84, 69, 78, 69, 78, 32.60231 + 73, 71, 77, 80, 76, 76, 82, 88, 88, 86, 86, 92, 100, 100, 93, 90, 32.60232 + 93, 90, 95, 98, 96, 93, 93, 97, 101, 95, 87, 84, 87, 88, 86, 91, 32.60233 + 98, 84, 89, 94, 98, 96, 96, 101, 109, 117, 105, 132, 106, 118, 96, 124, 32.60234 + 109, 148, 175, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60237 + 255, 255, 255, 255, 255, 255, 255, 201, 84, 82, 87, 95, 90, 92, 73, 77, 32.60238 + 67, 78, 76, 73, 79, 81, 78, 77, 84, 90, 90, 84, 85, 88, 93, 90, 32.60239 + 84, 84, 89, 93, 97, 101, 100, 98, 97, 97, 99, 88, 87, 90, 98, 99, 32.60240 + 92, 89, 90, 90, 91, 93, 95, 97, 96, 98, 101, 95, 107, 109, 118, 123, 32.60241 + 118, 119, 141, 153, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60245 + 193, 74, 60, 71, 71, 74, 76, 77, 75, 73, 78, 82, 84, 82, 84, 87, 32.60246 + 87, 82, 77, 80, 86, 90, 93, 97, 98, 99, 97, 95, 93, 84, 86, 93, 32.60247 + 101, 100, 93, 86, 83, 91, 90, 89, 91, 96, 99, 99, 96, 95, 111, 102, 32.60248 + 113, 125, 115, 105, 143, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60252 + 255, 255, 255, 255, 255, 77, 75, 72, 73, 74, 75, 74, 74, 75, 74, 79, 32.60253 + 83, 87, 86, 81, 78, 80, 85, 84, 86, 87, 90, 93, 94, 92, 91, 89, 32.60254 + 88, 89, 90, 89, 87, 86, 85, 84, 86, 87, 87, 92, 97, 100, 98, 99, 32.60255 + 100, 113, 108, 141, 135, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 68, 71, 76, 77, 76, 75, 32.60260 + 74, 73, 81, 86, 85, 81, 79, 80, 81, 80, 80, 80, 82, 85, 89, 92, 32.60261 + 93, 90, 89, 87, 85, 84, 86, 88, 87, 77, 85, 89, 85, 86, 91, 97, 32.60262 + 99, 102, 91, 116, 115, 129, 166, 229, 255, 255, 255, 255, 255, 255, 255, 255, 32.60263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60264 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60265 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 74, 32.60267 + 73, 73, 74, 70, 76, 80, 80, 77, 79, 77, 75, 77, 78, 78, 78, 80, 32.60268 + 85, 90, 94, 84, 87, 88, 87, 86, 88, 87, 83, 78, 88, 91, 84, 80, 32.60269 + 85, 92, 93, 96, 94, 106, 131, 103, 255, 255, 255, 255, 255, 255, 255, 255, 32.60270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60271 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60274 + 255, 255, 194, 71, 76, 74, 77, 76, 74, 74, 78, 76, 70, 72, 76, 78, 32.60275 + 77, 76, 78, 82, 86, 77, 82, 83, 80, 81, 85, 84, 79, 79, 87, 87, 32.60276 + 79, 79, 87, 91, 88, 85, 96, 98, 255, 255, 255, 255, 255, 255, 255, 255, 32.60277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60278 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60279 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60281 + 255, 255, 255, 255, 255, 255, 255, 80, 79, 74, 68, 71, 78, 75, 68, 66, 32.60282 + 73, 77, 77, 73, 71, 74, 77, 76, 78, 75, 69, 131, 255, 255, 255, 255, 32.60283 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60285 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 164, 143, 153, 120, 145, 32.60288 + 138, 160, 180, 200, 201, 146, 168, 247, 237, 196, 175, 244, 253, 166, 193, 220, 32.60289 + 224, 233, 232, 236, 230, 211, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60290 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 128, 140, 125, 155, 140, 150, 32.60295 + 113, 136, 134, 136, 152, 179, 193, 151, 154, 237, 246, 203, 194, 253, 243, 163, 32.60296 + 202, 228, 213, 209, 206, 211, 209, 196, 175, 180, 195, 209, 255, 255, 255, 255, 32.60297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 108, 121, 129, 131, 118, 141, 32.60302 + 136, 144, 122, 144, 146, 119, 133, 156, 175, 160, 156, 236, 253, 207, 190, 239, 32.60303 + 232, 176, 178, 174, 172, 167, 159, 161, 168, 175, 170, 170, 171, 169, 183, 197, 32.60304 + 210, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 97, 102, 107, 119, 124, 142, 32.60309 + 126, 131, 124, 120, 111, 128, 132, 117, 130, 136, 147, 161, 153, 210, 218, 170, 32.60310 + 142, 171, 177, 150, 112, 77, 99, 107, 106, 109, 111, 120, 123, 128, 127, 123, 32.60311 + 148, 175, 193, 213, 217, 225, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 107, 91, 102, 103, 106, 113, 32.60316 + 118, 114, 102, 99, 103, 100, 114, 134, 144, 113, 129, 119, 119, 149, 137, 166, 32.60317 + 151, 138, 129, 135, 110, 109, 94, 57, 73, 89, 101, 108, 98, 89, 91, 104, 32.60318 + 113, 106, 135, 158, 162, 158, 144, 143, 155, 172, 200, 231, 255, 255, 255, 255, 32.60319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60322 + 255, 255, 255, 255, 255, 255, 255, 228, 186, 152, 47, 24, 61, 98, 108, 105, 32.60323 + 103, 102, 98, 82, 68, 70, 94, 114, 118, 123, 135, 112, 109, 110, 115, 118, 32.60324 + 119, 125, 131, 137, 134, 121, 103, 91, 86, 79, 71, 86, 86, 94, 84, 69, 32.60325 + 71, 91, 96, 82, 118, 154, 147, 118, 98, 113, 134, 160, 197, 192, 141, 179, 32.60326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60329 + 255, 255, 255, 255, 255, 255, 239, 202, 185, 173, 175, 145, 57, 44, 69, 92, 32.60330 + 95, 90, 88, 84, 78, 81, 73, 74, 90, 103, 108, 111, 119, 114, 108, 104, 32.60331 + 108, 111, 110, 108, 109, 86, 91, 89, 80, 73, 73, 73, 71, 74, 70, 73, 32.60332 + 69, 59, 63, 74, 75, 72, 101, 126, 126, 114, 110, 118, 128, 134, 148, 140, 32.60333 + 112, 174, 203, 195, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60336 + 255, 255, 255, 255, 255, 255, 255, 236, 171, 164, 160, 148, 145, 125, 58, 59, 32.60337 + 71, 79, 78, 76, 77, 72, 65, 65, 65, 66, 70, 75, 80, 83, 83, 98, 32.60338 + 89, 84, 86, 88, 83, 75, 70, 58, 67, 72, 67, 61, 59, 61, 63, 65, 32.60339 + 56, 56, 58, 54, 57, 61, 55, 57, 75, 88, 90, 96, 109, 113, 111, 89, 32.60340 + 84, 79, 72, 139, 158, 148, 156, 187, 180, 224, 255, 255, 255, 255, 255, 255, 32.60341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 169, 154, 157, 152, 142, 120, 32.60344 + 65, 62, 61, 61, 61, 68, 74, 71, 62, 61, 68, 70, 65, 65, 72, 74, 32.60345 + 71, 89, 83, 81, 83, 82, 75, 68, 65, 60, 63, 65, 62, 57, 55, 55, 32.60346 + 55, 61, 51, 53, 59, 56, 57, 57, 50, 54, 66, 71, 69, 80, 102, 111, 32.60347 + 108, 84, 74, 78, 76, 119, 115, 107, 126, 130, 133, 175, 238, 246, 255, 255, 32.60348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60350 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 184, 155, 161, 160, 172, 164, 32.60351 + 135, 105, 61, 60, 57, 54, 57, 67, 74, 70, 61, 57, 67, 69, 62, 62, 32.60352 + 69, 71, 66, 67, 68, 71, 73, 70, 63, 63, 67, 58, 53, 50, 51, 53, 32.60353 + 54, 52, 51, 57, 50, 58, 66, 60, 56, 57, 54, 62, 73, 77, 72, 78, 32.60354 + 99, 116, 120, 95, 81, 90, 86, 112, 94, 81, 98, 113, 128, 142, 192, 210, 32.60355 + 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 167, 153, 150, 167, 164, 32.60358 + 160, 137, 102, 84, 63, 63, 57, 54, 57, 64, 66, 60, 52, 50, 57, 59, 32.60359 + 55, 55, 60, 61, 57, 47, 49, 54, 56, 52, 48, 53, 62, 62, 53, 47, 32.60360 + 49, 53, 53, 49, 47, 50, 44, 55, 66, 58, 51, 54, 54, 54, 63, 68, 32.60361 + 66, 68, 80, 98, 110, 94, 76, 86, 84, 111, 97, 78, 76, 110, 133, 125, 32.60362 + 162, 181, 192, 204, 237, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 151, 142, 151, 32.60365 + 157, 133, 116, 102, 83, 80, 71, 61, 56, 53, 56, 59, 59, 54, 50, 62, 32.60366 + 63, 64, 63, 63, 63, 61, 58, 54, 52, 52, 53, 50, 49, 55, 63, 62, 32.60367 + 55, 52, 55, 56, 50, 45, 45, 48, 42, 53, 66, 61, 54, 56, 56, 51, 32.60368 + 51, 55, 61, 62, 63, 69, 77, 89, 76, 92, 88, 115, 111, 92, 78, 74, 32.60369 + 103, 112, 163, 169, 164, 165, 174, 180, 181, 186, 198, 232, 255, 255, 255, 255, 32.60370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 150, 132, 131, 32.60372 + 131, 100, 97, 65, 59, 72, 70, 65, 47, 52, 49, 49, 52, 55, 55, 54, 32.60373 + 54, 59, 55, 54, 56, 56, 52, 48, 46, 57, 49, 43, 43, 43, 43, 46, 32.60374 + 52, 49, 48, 52, 57, 58, 50, 50, 53, 52, 43, 52, 68, 66, 60, 60, 32.60375 + 58, 64, 54, 55, 67, 71, 61, 55, 57, 65, 66, 92, 81, 100, 99, 88, 32.60376 + 71, 85, 84, 79, 121, 116, 128, 162, 168, 151, 156, 167, 184, 201, 220, 244, 32.60377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 147, 129, 32.60379 + 135, 138, 93, 57, 57, 58, 60, 62, 58, 51, 45, 48, 47, 46, 49, 56, 32.60380 + 59, 58, 54, 53, 55, 58, 57, 55, 51, 49, 49, 53, 53, 51, 48, 43, 32.60381 + 42, 43, 45, 41, 39, 44, 52, 56, 51, 52, 55, 53, 50, 49, 52, 59, 32.60382 + 63, 61, 58, 55, 56, 57, 60, 61, 60, 56, 53, 53, 63, 69, 67, 83, 32.60383 + 98, 87, 57, 61, 62, 78, 96, 111, 119, 137, 152, 145, 150, 147, 160, 181, 32.60384 + 186, 204, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152, 32.60386 + 140, 137, 145, 128, 63, 57, 58, 61, 63, 62, 57, 50, 45, 44, 43, 44, 32.60387 + 49, 55, 57, 53, 49, 52, 54, 55, 55, 52, 49, 48, 48, 53, 53, 52, 32.60388 + 49, 44, 44, 45, 47, 46, 43, 43, 49, 51, 49, 50, 55, 52, 49, 46, 32.60389 + 49, 54, 56, 54, 51, 57, 57, 59, 61, 63, 62, 58, 55, 51, 59, 62, 32.60390 + 64, 77, 90, 81, 62, 55, 53, 58, 69, 78, 91, 116, 138, 160, 150, 150, 32.60391 + 166, 181, 175, 186, 213, 241, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, 32.60392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60393 + 225, 142, 142, 135, 120, 97, 49, 63, 66, 68, 66, 60, 52, 45, 41, 40, 32.60394 + 40, 44, 50, 55, 55, 50, 45, 51, 52, 52, 50, 48, 46, 46, 47, 50, 32.60395 + 50, 47, 45, 44, 43, 44, 46, 49, 46, 43, 45, 46, 46, 48, 53, 51, 32.60396 + 48, 46, 46, 49, 50, 48, 45, 54, 54, 56, 59, 61, 61, 58, 55, 56, 32.60397 + 58, 59, 63, 71, 77, 73, 65, 64, 58, 57, 62, 66, 75, 99, 121, 134, 32.60398 + 125, 131, 143, 154, 169, 192, 201, 219, 244, 251, 255, 255, 255, 255, 255, 255, 32.60399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60400 + 255, 229, 166, 148, 145, 112, 69, 67, 69, 73, 74, 72, 64, 53, 43, 39, 32.60401 + 37, 41, 42, 45, 50, 53, 54, 50, 47, 49, 50, 49, 47, 44, 43, 44, 32.60402 + 45, 45, 47, 45, 44, 43, 44, 44, 47, 48, 47, 44, 45, 46, 47, 49, 32.60403 + 51, 49, 47, 45, 46, 48, 48, 47, 45, 48, 48, 49, 52, 55, 56, 54, 32.60404 + 52, 58, 55, 57, 63, 65, 63, 59, 58, 53, 47, 47, 54, 57, 57, 65, 32.60405 + 75, 80, 86, 101, 103, 107, 151, 199, 204, 200, 231, 243, 247, 255, 255, 255, 32.60406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60407 + 255, 255, 230, 179, 181, 154, 122, 78, 47, 68, 91, 75, 73, 67, 56, 45, 32.60408 + 38, 38, 39, 42, 43, 44, 46, 49, 50, 49, 48, 48, 48, 48, 46, 43, 32.60409 + 42, 43, 44, 43, 44, 44, 43, 43, 44, 45, 48, 43, 45, 46, 47, 47, 32.60410 + 49, 50, 50, 45, 44, 44, 45, 47, 48, 47, 47, 45, 45, 47, 50, 53, 32.60411 + 55, 54, 53, 57, 54, 56, 63, 64, 58, 54, 55, 50, 43, 44, 56, 63, 32.60412 + 59, 56, 56, 62, 65, 89, 95, 88, 117, 172, 199, 203, 227, 242, 243, 255, 32.60413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60414 + 255, 255, 245, 210, 178, 176, 187, 138, 81, 57, 63, 84, 84, 65, 62, 55, 32.60415 + 47, 41, 39, 41, 44, 40, 41, 42, 43, 44, 46, 46, 47, 47, 48, 48, 32.60416 + 47, 44, 42, 42, 43, 43, 44, 44, 44, 43, 42, 45, 48, 42, 45, 47, 32.60417 + 46, 47, 50, 51, 48, 39, 40, 41, 42, 44, 45, 46, 47, 46, 46, 47, 32.60418 + 51, 55, 58, 58, 57, 59, 57, 58, 62, 64, 60, 56, 55, 58, 49, 48, 32.60419 + 60, 69, 69, 67, 68, 69, 56, 80, 110, 103, 91, 127, 178, 201, 218, 243, 32.60420 + 246, 252, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60421 + 255, 255, 255, 241, 208, 193, 178, 175, 166, 100, 54, 58, 70, 75, 62, 54, 32.60422 + 50, 45, 42, 41, 41, 41, 41, 38, 41, 43, 45, 46, 46, 45, 45, 47, 32.60423 + 49, 50, 49, 46, 44, 43, 43, 44, 45, 43, 42, 42, 43, 46, 46, 45, 32.60424 + 48, 46, 42, 42, 47, 49, 46, 40, 41, 42, 43, 44, 45, 46, 47, 47, 32.60425 + 47, 48, 52, 57, 60, 61, 61, 75, 72, 67, 64, 65, 66, 61, 55, 54, 32.60426 + 48, 49, 57, 62, 60, 65, 71, 64, 54, 67, 97, 104, 81, 91, 132, 158, 32.60427 + 176, 228, 241, 242, 251, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60428 + 255, 255, 255, 255, 242, 214, 202, 184, 171, 175, 138, 67, 52, 67, 56, 48, 32.60429 + 48, 48, 45, 41, 40, 42, 41, 38, 35, 38, 42, 48, 51, 51, 49, 46, 32.60430 + 45, 47, 49, 51, 51, 48, 45, 43, 43, 45, 46, 44, 43, 42, 43, 44, 32.60431 + 46, 49, 50, 45, 37, 37, 43, 47, 45, 44, 45, 46, 46, 46, 46, 48, 32.60432 + 49, 47, 47, 48, 52, 57, 60, 62, 61, 90, 86, 75, 64, 63, 66, 61, 32.60433 + 51, 60, 60, 65, 71, 67, 62, 68, 78, 51, 56, 54, 61, 81, 77, 69, 32.60434 + 82, 102, 128, 205, 232, 233, 250, 248, 252, 255, 255, 255, 255, 255, 255, 255, 32.60435 + 255, 255, 255, 255, 255, 241, 205, 201, 195, 186, 185, 159, 102, 53, 47, 56, 32.60436 + 53, 48, 50, 45, 43, 41, 38, 37, 36, 36, 37, 45, 42, 41, 44, 50, 32.60437 + 52, 49, 46, 46, 46, 45, 45, 43, 41, 40, 39, 43, 43, 43, 44, 44, 32.60438 + 46, 49, 51, 51, 43, 36, 39, 42, 43, 39, 35, 40, 39, 39, 41, 45, 32.60439 + 49, 51, 52, 43, 52, 51, 49, 55, 56, 58, 69, 80, 87, 86, 73, 61, 32.60440 + 58, 60, 60, 62, 57, 58, 66, 70, 68, 69, 73, 69, 54, 49, 60, 73, 32.60441 + 72, 63, 55, 73, 83, 125, 164, 194, 240, 255, 236, 254, 255, 255, 255, 255, 32.60442 + 255, 255, 255, 255, 255, 255, 255, 214, 209, 196, 199, 185, 143, 114, 79, 51, 32.60443 + 51, 58, 53, 46, 45, 43, 42, 40, 38, 36, 36, 36, 36, 44, 42, 41, 32.60444 + 44, 49, 51, 49, 45, 45, 45, 45, 44, 43, 41, 40, 39, 42, 41, 41, 32.60445 + 42, 42, 44, 46, 47, 41, 38, 37, 38, 38, 39, 40, 41, 44, 44, 46, 32.60446 + 45, 48, 46, 48, 45, 45, 51, 53, 52, 62, 61, 62, 70, 72, 80, 80, 32.60447 + 68, 57, 55, 58, 59, 59, 59, 62, 66, 65, 61, 62, 67, 65, 53, 51, 32.60448 + 58, 64, 64, 61, 60, 63, 64, 75, 103, 143, 179, 222, 255, 246, 246, 255, 32.60449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 218, 203, 207, 181, 106, 73, 32.60450 + 60, 50, 50, 53, 51, 46, 43, 41, 40, 39, 37, 36, 36, 36, 36, 43, 32.60451 + 41, 41, 44, 49, 50, 47, 44, 45, 45, 45, 44, 43, 42, 40, 39, 39, 32.60452 + 38, 38, 39, 39, 41, 41, 42, 34, 36, 37, 37, 37, 40, 43, 47, 43, 32.60453 + 43, 46, 44, 46, 43, 44, 41, 48, 53, 55, 57, 70, 68, 65, 69, 66, 32.60454 + 72, 72, 63, 54, 53, 58, 61, 57, 59, 63, 65, 61, 55, 56, 60, 57, 32.60455 + 54, 54, 56, 56, 56, 61, 66, 60, 65, 65, 87, 121, 127, 162, 234, 255, 32.60456 + 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 209, 219, 210, 194, 145, 32.60457 + 78, 62, 59, 51, 45, 45, 49, 48, 43, 39, 38, 38, 37, 36, 36, 36, 32.60458 + 36, 42, 41, 42, 45, 48, 49, 46, 43, 45, 45, 45, 44, 43, 42, 41, 32.60459 + 40, 39, 39, 39, 39, 39, 40, 39, 39, 36, 40, 40, 39, 41, 46, 49, 32.60460 + 51, 41, 42, 43, 43, 44, 46, 48, 50, 52, 58, 58, 62, 73, 71, 62, 32.60461 + 65, 61, 65, 68, 60, 55, 52, 60, 64, 58, 57, 62, 63, 64, 58, 56, 32.60462 + 55, 53, 53, 55, 56, 55, 55, 61, 64, 62, 74, 85, 99, 114, 111, 128, 32.60463 + 168, 227, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 207, 209, 206, 32.60464 + 152, 79, 52, 59, 58, 52, 44, 45, 49, 46, 38, 37, 37, 37, 37, 37, 32.60465 + 37, 36, 36, 41, 42, 44, 47, 49, 48, 46, 43, 44, 44, 44, 44, 43, 32.60466 + 42, 41, 40, 40, 40, 40, 41, 40, 40, 39, 39, 40, 42, 41, 39, 42, 32.60467 + 50, 52, 46, 47, 47, 47, 46, 47, 51, 57, 62, 59, 64, 62, 64, 73, 32.60468 + 70, 59, 59, 57, 60, 63, 56, 51, 47, 56, 63, 58, 55, 58, 61, 70, 32.60469 + 69, 62, 52, 53, 55, 55, 57, 60, 61, 61, 58, 64, 70, 82, 80, 81, 32.60470 + 111, 135, 128, 142, 186, 254, 255, 255, 255, 255, 255, 255, 255, 243, 226, 205, 32.60471 + 196, 191, 119, 48, 50, 50, 51, 51, 49, 50, 48, 41, 32, 36, 37, 38, 32.60472 + 38, 39, 38, 38, 37, 42, 44, 47, 49, 50, 48, 46, 44, 43, 44, 44, 32.60473 + 44, 44, 43, 42, 41, 40, 40, 41, 42, 41, 41, 40, 40, 43, 45, 43, 32.60474 + 39, 42, 51, 51, 43, 46, 45, 47, 43, 43, 44, 52, 56, 60, 64, 63, 32.60475 + 60, 67, 61, 54, 56, 56, 56, 58, 53, 47, 41, 50, 58, 58, 54, 56, 32.60476 + 62, 76, 78, 68, 52, 56, 57, 57, 58, 62, 65, 62, 54, 69, 71, 82, 32.60477 + 74, 70, 116, 146, 117, 92, 124, 241, 255, 255, 255, 255, 255, 255, 244, 215, 32.60478 + 220, 206, 188, 162, 100, 52, 54, 48, 49, 51, 53, 49, 42, 36, 35, 36, 32.60479 + 37, 38, 40, 40, 40, 39, 39, 42, 45, 49, 51, 51, 49, 46, 45, 43, 32.60480 + 43, 44, 44, 44, 43, 42, 41, 38, 39, 41, 42, 41, 41, 39, 38, 42, 32.60481 + 50, 49, 42, 42, 50, 54, 48, 44, 43, 48, 45, 44, 41, 47, 49, 58, 32.60482 + 62, 60, 54, 59, 53, 51, 57, 60, 58, 58, 53, 45, 38, 45, 56, 55, 32.60483 + 56, 60, 66, 78, 81, 70, 56, 59, 61, 59, 57, 61, 66, 63, 56, 70, 32.60484 + 78, 85, 84, 87, 109, 128, 130, 97, 87, 234, 237, 255, 255, 255, 255, 255, 32.60485 + 220, 219, 215, 209, 181, 132, 86, 58, 42, 54, 53, 55, 53, 45, 34, 36, 32.60486 + 43, 37, 37, 40, 40, 42, 41, 41, 40, 41, 44, 50, 53, 52, 49, 47, 32.60487 + 46, 43, 43, 44, 44, 44, 43, 42, 42, 38, 38, 39, 41, 42, 41, 38, 32.60488 + 38, 40, 52, 55, 45, 41, 49, 55, 54, 43, 47, 54, 55, 52, 50, 51, 32.60489 + 54, 53, 60, 56, 51, 53, 50, 48, 59, 64, 63, 61, 57, 47, 39, 45, 32.60490 + 55, 50, 56, 62, 67, 75, 78, 68, 56, 56, 61, 59, 54, 54, 60, 61, 32.60491 + 59, 62, 75, 72, 78, 94, 92, 107, 151, 98, 61, 237, 245, 255, 255, 255, 32.60492 + 255, 255, 225, 213, 208, 213, 188, 114, 49, 36, 49, 47, 47, 49, 46, 46, 32.60493 + 42, 41, 37, 45, 42, 43, 39, 40, 38, 41, 39, 40, 41, 44, 44, 43, 32.60494 + 42, 43, 45, 42, 44, 48, 48, 46, 44, 43, 43, 45, 40, 39, 42, 44, 32.60495 + 40, 40, 43, 42, 46, 51, 54, 51, 51, 51, 51, 56, 51, 52, 58, 59, 32.60496 + 52, 48, 48, 53, 57, 55, 45, 42, 49, 56, 60, 57, 54, 48, 44, 39, 32.60497 + 39, 49, 58, 73, 67, 60, 63, 68, 70, 63, 57, 69, 73, 66, 53, 46, 32.60498 + 50, 56, 57, 66, 67, 79, 84, 78, 84, 95, 94, 99, 78, 145, 193, 255, 32.60499 + 255, 255, 255, 245, 223, 208, 210, 207, 170, 97, 44, 38, 48, 50, 50, 49, 32.60500 + 48, 46, 43, 41, 39, 43, 43, 44, 44, 43, 41, 40, 37, 37, 39, 43, 32.60501 + 44, 44, 42, 42, 42, 40, 42, 47, 47, 45, 44, 44, 44, 42, 38, 41, 32.60502 + 46, 47, 44, 43, 47, 42, 43, 48, 50, 50, 53, 57, 61, 61, 56, 54, 32.60503 + 56, 54, 49, 50, 54, 61, 63, 59, 49, 46, 53, 61, 65, 54, 49, 48, 32.60504 + 46, 46, 45, 52, 59, 72, 64, 59, 60, 69, 76, 76, 76, 78, 76, 74, 32.60505 + 69, 58, 50, 56, 63, 61, 65, 78, 85, 80, 86, 97, 96, 74, 76, 166, 32.60506 + 224, 255, 255, 255, 255, 222, 219, 209, 211, 195, 139, 69, 38, 42, 47, 51, 32.60507 + 51, 50, 49, 47, 44, 42, 41, 42, 43, 45, 45, 45, 42, 40, 36, 35, 32.60508 + 38, 43, 46, 45, 43, 41, 40, 39, 41, 44, 44, 45, 43, 43, 44, 35, 32.60509 + 37, 42, 45, 45, 42, 42, 45, 43, 41, 43, 44, 47, 54, 63, 68, 70, 32.60510 + 66, 62, 58, 54, 51, 57, 65, 73, 71, 62, 47, 37, 38, 42, 46, 36, 32.60511 + 33, 36, 43, 51, 55, 62, 67, 72, 65, 62, 68, 80, 90, 97, 101, 92, 32.60512 + 85, 81, 78, 64, 49, 52, 62, 59, 61, 75, 84, 81, 87, 97, 96, 92, 32.60513 + 80, 147, 204, 243, 255, 255, 255, 220, 216, 219, 213, 176, 105, 45, 38, 49, 32.60514 + 45, 53, 52, 51, 50, 48, 46, 45, 44, 44, 44, 44, 44, 43, 42, 41, 32.60515 + 40, 38, 40, 44, 45, 45, 43, 42, 42, 40, 42, 45, 44, 42, 40, 42, 32.60516 + 40, 40, 41, 45, 45, 43, 41, 43, 46, 43, 39, 36, 36, 41, 52, 62, 32.60517 + 70, 78, 77, 74, 68, 62, 61, 68, 76, 83, 80, 71, 57, 44, 38, 38, 32.60518 + 42, 41, 38, 41, 53, 63, 67, 69, 70, 74, 72, 75, 84, 97, 107, 117, 32.60519 + 122, 110, 103, 90, 75, 61, 54, 53, 57, 57, 60, 74, 82, 79, 84, 94, 32.60520 + 93, 90, 96, 156, 180, 178, 255, 255, 255, 220, 216, 232, 208, 152, 78, 33, 32.60521 + 41, 54, 44, 53, 52, 51, 50, 49, 48, 48, 47, 48, 46, 43, 41, 40, 32.60522 + 41, 43, 44, 42, 43, 44, 43, 42, 42, 45, 47, 42, 44, 45, 44, 41, 32.60523 + 38, 38, 37, 44, 45, 46, 44, 45, 50, 56, 61, 46, 42, 38, 38, 45, 32.60524 + 58, 68, 76, 79, 82, 83, 78, 73, 73, 77, 82, 86, 86, 86, 82, 75, 32.60525 + 71, 71, 74, 79, 76, 75, 78, 81, 78, 74, 71, 78, 81, 91, 102, 113, 32.60526 + 119, 126, 130, 131, 131, 108, 73, 57, 64, 64, 54, 57, 59, 72, 79, 74, 32.60527 + 79, 90, 86, 109, 97, 131, 163, 181, 255, 255, 246, 222, 219, 232, 193, 129, 32.60528 + 66, 33, 43, 53, 42, 50, 50, 49, 48, 48, 49, 49, 50, 50, 47, 43, 32.60529 + 40, 39, 41, 44, 46, 43, 44, 43, 41, 40, 41, 45, 48, 43, 45, 46, 32.60530 + 45, 42, 39, 38, 38, 36, 38, 38, 38, 47, 60, 71, 74, 55, 51, 48, 32.60531 + 51, 60, 69, 79, 82, 75, 79, 85, 80, 80, 80, 83, 81, 86, 86, 92, 32.60532 + 93, 92, 86, 89, 94, 98, 94, 92, 94, 91, 86, 82, 83, 85, 90, 100, 32.60533 + 111, 118, 123, 127, 132, 141, 148, 125, 77, 55, 65, 66, 51, 58, 59, 70, 32.60534 + 76, 70, 76, 85, 85, 83, 103, 161, 192, 178, 255, 255, 229, 225, 223, 218, 32.60535 + 170, 112, 65, 39, 41, 47, 42, 45, 45, 44, 44, 45, 47, 49, 50, 49, 32.60536 + 47, 44, 42, 41, 42, 43, 44, 40, 41, 41, 40, 39, 40, 41, 43, 41, 32.60537 + 44, 44, 44, 42, 40, 40, 40, 33, 35, 36, 39, 55, 74, 85, 84, 72, 32.60538 + 68, 67, 69, 76, 80, 83, 82, 72, 77, 82, 81, 84, 88, 89, 84, 88, 32.60539 + 87, 90, 92, 89, 82, 84, 89, 91, 91, 89, 91, 90, 88, 90, 95, 91, 32.60540 + 95, 101, 106, 110, 117, 125, 134, 144, 158, 145, 99, 64, 60, 60, 52, 56, 32.60541 + 57, 67, 72, 68, 76, 87, 88, 101, 103, 145, 188, 185, 255, 255, 230, 227, 32.60542 + 225, 202, 153, 102, 69, 44, 38, 42, 42, 41, 41, 41, 41, 43, 45, 48, 32.60543 + 49, 46, 46, 45, 44, 43, 43, 42, 42, 35, 38, 40, 41, 40, 39, 38, 32.60544 + 39, 39, 40, 43, 44, 44, 43, 43, 42, 40, 41, 43, 50, 69, 87, 95, 32.60545 + 90, 86, 83, 81, 80, 82, 81, 78, 74, 74, 78, 81, 82, 87, 94, 94, 32.60546 + 88, 91, 89, 91, 94, 90, 85, 88, 95, 92, 91, 91, 89, 88, 85, 89, 32.60547 + 97, 96, 97, 98, 98, 101, 110, 123, 135, 146, 166, 163, 125, 80, 56, 56, 32.60548 + 61, 56, 56, 66, 71, 68, 75, 91, 92, 102, 107, 149, 190, 177, 255, 246, 32.60549 + 231, 229, 227, 197, 141, 111, 72, 35, 43, 48, 41, 48, 52, 52, 48, 45, 32.60550 + 47, 47, 44, 48, 48, 48, 45, 42, 40, 40, 41, 43, 43, 44, 44, 42, 32.60551 + 40, 38, 36, 39, 43, 43, 37, 37, 41, 45, 42, 44, 52, 64, 71, 76, 32.60552 + 81, 89, 94, 94, 94, 93, 87, 86, 90, 91, 85, 87, 88, 88, 85, 89, 32.60553 + 97, 99, 95, 87, 93, 97, 95, 90, 89, 93, 98, 90, 90, 91, 92, 97, 32.60554 + 96, 94, 91, 94, 98, 100, 100, 105, 113, 118, 121, 137, 152, 163, 144, 106, 32.60555 + 79, 63, 46, 60, 67, 67, 64, 62, 72, 87, 90, 98, 118, 148, 180, 183, 32.60556 + 255, 227, 228, 224, 221, 188, 126, 108, 46, 47, 36, 54, 41, 46, 50, 50, 32.60557 + 47, 46, 49, 50, 48, 48, 47, 44, 41, 40, 43, 48, 53, 39, 41, 42, 32.60558 + 44, 44, 43, 42, 40, 39, 42, 43, 42, 43, 48, 53, 53, 64, 70, 81, 32.60559 + 87, 91, 95, 101, 105, 96, 96, 95, 91, 91, 96, 95, 91, 95, 95, 93, 32.60560 + 90, 93, 99, 99, 95, 97, 92, 89, 92, 98, 100, 96, 91, 87, 87, 88, 32.60561 + 90, 93, 94, 94, 92, 95, 98, 100, 101, 105, 114, 118, 121, 136, 158, 183, 32.60562 + 186, 162, 131, 92, 51, 58, 57, 64, 53, 54, 82, 93, 91, 101, 110, 141, 32.60563 + 183, 191, 255, 227, 227, 222, 217, 178, 122, 91, 32, 47, 42, 50, 43, 48, 32.60564 + 51, 50, 47, 47, 50, 50, 47, 46, 46, 45, 44, 43, 46, 51, 54, 42, 32.60565 + 43, 43, 45, 45, 45, 42, 42, 38, 42, 45, 43, 47, 54, 61, 61, 65, 32.60566 + 69, 78, 83, 86, 87, 92, 96, 98, 98, 98, 92, 93, 97, 99, 96, 99, 32.60567 + 98, 96, 93, 94, 97, 97, 93, 98, 94, 91, 94, 100, 102, 97, 92, 87, 32.60568 + 84, 84, 86, 91, 93, 93, 92, 95, 99, 103, 103, 108, 116, 120, 121, 143, 32.60569 + 153, 170, 179, 171, 152, 115, 70, 60, 49, 70, 53, 44, 78, 92, 96, 110, 32.60570 + 108, 142, 191, 196, 255, 227, 228, 223, 218, 171, 126, 64, 39, 36, 58, 37, 32.60571 + 47, 53, 54, 52, 48, 47, 48, 46, 41, 42, 46, 50, 52, 50, 46, 43, 32.60572 + 41, 46, 47, 46, 47, 45, 44, 41, 40, 38, 43, 43, 42, 47, 56, 64, 32.60573 + 62, 73, 75, 84, 88, 91, 91, 97, 97, 94, 95, 94, 91, 92, 97, 99, 32.60574 + 95, 97, 94, 92, 91, 92, 93, 92, 90, 90, 95, 100, 99, 94, 91, 94, 32.60575 + 98, 89, 86, 85, 86, 92, 94, 95, 95, 96, 100, 104, 104, 108, 116, 120, 32.60576 + 121, 139, 152, 180, 201, 203, 186, 141, 91, 62, 43, 74, 63, 43, 70, 87, 32.60577 + 107, 113, 112, 151, 198, 194, 255, 228, 229, 223, 216, 164, 111, 47, 39, 38, 32.60578 + 61, 34, 49, 52, 52, 50, 46, 46, 49, 46, 40, 42, 46, 50, 51, 48, 32.60579 + 42, 38, 36, 45, 46, 48, 47, 46, 45, 42, 41, 43, 47, 46, 44, 48, 32.60580 + 55, 63, 61, 77, 78, 86, 90, 94, 95, 99, 98, 91, 94, 93, 88, 89, 32.60581 + 94, 96, 94, 93, 91, 90, 92, 93, 93, 92, 91, 89, 95, 101, 100, 94, 32.60582 + 91, 93, 95, 92, 88, 89, 91, 94, 96, 99, 98, 99, 103, 105, 105, 109, 32.60583 + 117, 121, 122, 129, 140, 165, 183, 188, 185, 160, 126, 88, 51, 59, 63, 58, 32.60584 + 70, 76, 98, 94, 109, 152, 195, 194, 255, 229, 229, 220, 212, 156, 81, 41, 32.60585 + 32, 52, 50, 41, 49, 46, 46, 44, 43, 47, 51, 49, 44, 44, 44, 44, 32.60586 + 42, 40, 39, 41, 43, 40, 42, 45, 46, 48, 48, 46, 46, 47, 49, 49, 32.60587 + 48, 50, 60, 66, 67, 72, 74, 79, 83, 88, 90, 92, 92, 93, 95, 92, 32.60588 + 89, 90, 94, 96, 94, 91, 88, 88, 93, 95, 93, 92, 93, 96, 92, 90, 32.60589 + 93, 98, 99, 92, 84, 94, 90, 92, 93, 96, 97, 98, 97, 100, 104, 106, 32.60590 + 106, 109, 117, 123, 124, 152, 156, 168, 173, 178, 193, 202, 191, 151, 98, 49, 32.60591 + 52, 71, 71, 64, 63, 72, 101, 136, 175, 196, 255, 231, 231, 222, 213, 155, 32.60592 + 65, 33, 46, 55, 48, 40, 49, 43, 43, 41, 41, 46, 51, 49, 43, 42, 32.60593 + 42, 42, 40, 38, 39, 43, 46, 38, 40, 43, 45, 47, 48, 46, 46, 45, 32.60594 + 47, 49, 49, 53, 63, 73, 75, 81, 81, 85, 90, 95, 95, 95, 95, 92, 32.60595 + 94, 92, 89, 89, 93, 94, 92, 92, 87, 87, 93, 95, 91, 89, 91, 95, 32.60596 + 91, 90, 93, 98, 98, 91, 82, 93, 93, 93, 95, 98, 98, 98, 96, 102, 32.60597 + 105, 108, 108, 112, 119, 125, 124, 121, 135, 160, 172, 175, 185, 190, 178, 203, 32.60598 + 160, 57, 40, 73, 73, 71, 55, 72, 104, 115, 144, 215, 255, 233, 233, 227, 32.60599 + 215, 159, 66, 22, 72, 45, 58, 33, 52, 45, 44, 41, 40, 44, 49, 46, 32.60600 + 39, 39, 42, 45, 46, 44, 41, 39, 39, 41, 43, 45, 45, 46, 45, 45, 32.60601 + 42, 39, 42, 45, 46, 52, 64, 76, 80, 79, 78, 81, 86, 90, 90, 91, 32.60602 + 89, 90, 92, 91, 87, 86, 90, 91, 89, 92, 87, 87, 93, 94, 89, 85, 32.60603 + 87, 87, 94, 100, 99, 93, 86, 89, 90, 95, 95, 95, 97, 98, 97, 95, 32.60604 + 92, 101, 106, 107, 108, 112, 119, 125, 124, 135, 143, 158, 161, 162, 178, 193, 32.60605 + 189, 210, 193, 68, 33, 68, 75, 97, 82, 85, 114, 101, 120, 255, 255, 229, 32.60606 + 220, 234, 209, 148, 36, 48, 57, 41, 51, 32, 41, 46, 43, 40, 40, 42, 32.60607 + 43, 41, 39, 42, 42, 42, 42, 42, 42, 42, 42, 37, 40, 43, 43, 41, 32.60608 + 41, 45, 49, 46, 49, 49, 48, 56, 68, 79, 79, 80, 85, 88, 86, 86, 32.60609 + 92, 96, 93, 95, 95, 95, 92, 89, 89, 90, 93, 96, 91, 90, 99, 100, 32.60610 + 96, 95, 103, 88, 95, 90, 86, 90, 87, 90, 99, 97, 98, 96, 93, 96, 32.60611 + 101, 99, 94, 100, 106, 112, 115, 115, 120, 130, 137, 141, 143, 150, 159, 170, 32.60612 + 181, 188, 194, 213, 220, 107, 58, 45, 69, 89, 82, 93, 98, 103, 137, 255, 32.60613 + 255, 228, 216, 232, 199, 91, 26, 39, 45, 37, 50, 46, 46, 46, 44, 43, 32.60614 + 44, 47, 48, 46, 44, 42, 42, 42, 42, 42, 42, 42, 42, 40, 41, 40, 32.60615 + 39, 39, 41, 45, 46, 45, 46, 49, 52, 63, 76, 85, 86, 80, 82, 84, 32.60616 + 82, 86, 94, 98, 98, 89, 89, 87, 86, 86, 86, 89, 89, 94, 90, 90, 32.60617 + 92, 94, 92, 90, 90, 89, 96, 94, 91, 95, 91, 88, 98, 99, 100, 98, 32.60618 + 95, 95, 99, 97, 92, 99, 106, 112, 115, 120, 122, 129, 133, 128, 130, 139, 32.60619 + 151, 161, 172, 180, 183, 180, 207, 157, 116, 47, 46, 92, 98, 105, 93, 100, 32.60620 + 147, 255, 255, 227, 216, 229, 177, 51, 39, 43, 44, 40, 46, 51, 43, 41, 32.60621 + 40, 41, 43, 46, 46, 44, 42, 42, 42, 42, 42, 42, 42, 42, 42, 43, 32.60622 + 42, 39, 38, 39, 43, 45, 48, 51, 51, 54, 59, 70, 83, 85, 83, 98, 32.60623 + 94, 90, 86, 89, 95, 97, 95, 98, 96, 92, 91, 93, 95, 96, 94, 101, 32.60624 + 101, 99, 95, 98, 100, 97, 90, 87, 94, 94, 94, 101, 96, 93, 99, 98, 32.60625 + 100, 98, 95, 94, 98, 96, 92, 99, 103, 109, 114, 121, 123, 126, 127, 136, 32.60626 + 141, 152, 163, 174, 184, 192, 197, 211, 207, 176, 138, 46, 34, 94, 102, 107, 32.60627 + 82, 99, 156, 255, 247, 229, 221, 227, 147, 36, 54, 43, 47, 48, 39, 50, 32.60628 + 40, 39, 40, 42, 44, 45, 44, 41, 40, 42, 42, 42, 42, 42, 42, 42, 32.60629 + 42, 41, 40, 39, 40, 43, 46, 50, 51, 52, 54, 57, 64, 75, 86, 87, 32.60630 + 83, 101, 96, 91, 89, 92, 95, 93, 91, 99, 93, 85, 82, 85, 89, 91, 32.60631 + 89, 91, 95, 92, 86, 90, 96, 93, 81, 87, 93, 93, 92, 101, 99, 97, 32.60632 + 103, 95, 100, 98, 96, 96, 97, 97, 94, 98, 99, 103, 111, 118, 124, 127, 32.60633 + 126, 138, 141, 149, 160, 172, 185, 195, 199, 215, 203, 187, 164, 84, 46, 70, 32.60634 + 65, 102, 82, 118, 198, 255, 228, 232, 227, 226, 115, 27, 47, 28, 43, 53, 32.60635 + 34, 48, 45, 46, 47, 49, 49, 48, 45, 43, 41, 42, 42, 42, 42, 42, 32.60636 + 42, 42, 42, 42, 42, 41, 42, 42, 45, 48, 48, 44, 50, 57, 67, 80, 32.60637 + 91, 93, 91, 87, 84, 86, 92, 98, 99, 95, 93, 96, 89, 79, 76, 81, 32.60638 + 87, 93, 93, 90, 95, 94, 89, 93, 100, 99, 89, 94, 97, 93, 90, 99, 32.60639 + 98, 97, 103, 94, 98, 98, 96, 96, 100, 100, 98, 101, 100, 101, 107, 114, 32.60640 + 121, 125, 126, 135, 138, 143, 153, 165, 181, 196, 203, 206, 208, 200, 165, 95, 32.60641 + 34, 51, 79, 96, 97, 157, 255, 255, 228, 232, 229, 225, 89, 35, 42, 25, 32.60642 + 42, 52, 34, 46, 47, 46, 48, 49, 48, 45, 42, 41, 41, 42, 42, 42, 32.60643 + 42, 42, 42, 42, 42, 43, 45, 45, 43, 39, 40, 44, 45, 52, 59, 67, 32.60644 + 73, 81, 88, 89, 90, 93, 92, 94, 100, 101, 96, 88, 84, 78, 74, 68, 32.60645 + 67, 73, 80, 86, 88, 90, 94, 98, 95, 97, 99, 101, 98, 96, 97, 91, 32.60646 + 88, 97, 99, 97, 101, 95, 100, 102, 98, 97, 100, 101, 100, 103, 103, 105, 32.60647 + 105, 110, 113, 119, 122, 130, 133, 136, 143, 157, 172, 188, 196, 211, 207, 201, 32.60648 + 155, 87, 25, 47, 90, 84, 105, 188, 255, 255, 231, 230, 226, 224, 74, 44, 32.60649 + 43, 38, 45, 46, 40, 46, 44, 44, 45, 46, 45, 41, 39, 40, 42, 42, 32.60650 + 42, 42, 42, 42, 42, 42, 42, 45, 48, 47, 44, 38, 40, 51, 59, 70, 32.60651 + 78, 84, 83, 83, 82, 84, 86, 99, 98, 97, 98, 90, 76, 65, 61, 46, 32.60652 + 46, 45, 45, 50, 53, 56, 60, 65, 67, 72, 74, 73, 69, 73, 78, 80, 32.60653 + 83, 80, 81, 94, 98, 96, 100, 100, 104, 105, 100, 97, 99, 101, 100, 100, 32.60654 + 102, 105, 102, 102, 100, 103, 106, 105, 107, 107, 111, 118, 128, 140, 147, 158, 32.60655 + 154, 199, 182, 112, 42, 45, 49, 65, 93, 197, 255, 255, 234, 227, 222, 223, 32.60656 + 69, 35, 35, 43, 42, 39, 47, 52, 45, 46, 48, 49, 47, 44, 43, 46, 32.60657 + 48, 42, 42, 42, 42, 42, 42, 42, 42, 43, 47, 49, 43, 39, 44, 61, 32.60658 + 74, 71, 82, 90, 90, 86, 86, 88, 93, 83, 84, 84, 83, 72, 55, 46, 32.60659 + 44, 45, 50, 52, 53, 51, 51, 50, 52, 53, 52, 58, 64, 60, 51, 57, 32.60660 + 67, 59, 65, 66, 74, 92, 98, 97, 101, 104, 109, 108, 104, 98, 98, 99, 32.60661 + 98, 94, 98, 103, 100, 94, 89, 89, 90, 93, 92, 90, 90, 92, 96, 100, 32.60662 + 103, 104, 98, 188, 189, 102, 39, 62, 53, 55, 80, 197, 255, 255, 232, 221, 32.60663 + 220, 220, 97, 39, 29, 45, 44, 40, 48, 45, 44, 41, 41, 42, 42, 42, 32.60664 + 41, 40, 39, 42, 42, 42, 43, 43, 44, 44, 44, 43, 38, 41, 46, 42, 32.60665 + 43, 60, 80, 79, 91, 97, 92, 86, 83, 74, 69, 94, 91, 75, 58, 52, 32.60666 + 55, 56, 51, 58, 53, 46, 45, 49, 55, 54, 52, 46, 44, 46, 49, 52, 32.60667 + 50, 52, 54, 59, 51, 50, 57, 70, 80, 90, 96, 106, 105, 101, 99, 101, 32.60668 + 108, 109, 106, 97, 96, 94, 87, 80, 75, 76, 77, 77, 75, 70, 65, 59, 32.60669 + 60, 64, 67, 83, 78, 135, 165, 125, 71, 42, 51, 68, 90, 185, 255, 255, 32.60670 + 231, 223, 222, 223, 104, 36, 28, 46, 45, 41, 49, 47, 49, 42, 42, 42, 32.60671 + 41, 41, 40, 40, 40, 42, 42, 42, 43, 43, 44, 44, 44, 44, 36, 35, 32.60672 + 44, 50, 54, 67, 82, 80, 86, 90, 89, 88, 85, 82, 81, 63, 64, 58, 32.60673 + 53, 56, 65, 70, 68, 75, 70, 64, 61, 62, 61, 58, 56, 56, 54, 51, 32.60674 + 53, 51, 48, 47, 51, 66, 62, 59, 65, 71, 76, 82, 89, 101, 100, 98, 32.60675 + 95, 98, 102, 103, 99, 93, 89, 82, 72, 64, 58, 57, 60, 49, 51, 51, 32.60676 + 47, 46, 45, 48, 51, 52, 55, 109, 144, 128, 93, 53, 40, 79, 98, 188, 32.60677 + 255, 255, 231, 224, 222, 223, 110, 37, 31, 50, 48, 40, 47, 47, 51, 44, 32.60678 + 43, 41, 40, 40, 40, 41, 42, 42, 42, 42, 42, 43, 43, 43, 41, 44, 32.60679 + 32, 31, 45, 60, 68, 79, 87, 94, 88, 88, 89, 87, 81, 75, 76, 69, 32.60680 + 74, 75, 76, 82, 90, 95, 94, 98, 98, 97, 96, 97, 94, 92, 91, 91, 32.60681 + 88, 82, 82, 78, 74, 74, 77, 74, 72, 71, 75, 75, 76, 80, 87, 98, 32.60682 + 99, 99, 96, 98, 103, 100, 95, 100, 91, 79, 68, 61, 58, 58, 57, 45, 32.60683 + 49, 53, 56, 57, 58, 62, 64, 70, 77, 114, 139, 151, 136, 79, 43, 77, 32.60684 + 103, 203, 255, 255, 231, 226, 220, 219, 114, 42, 37, 56, 51, 39, 43, 43, 32.60685 + 48, 45, 44, 41, 39, 39, 40, 42, 43, 42, 42, 42, 42, 42, 42, 42, 32.60686 + 41, 39, 32, 36, 48, 65, 75, 84, 90, 98, 88, 84, 89, 87, 78, 69, 32.60687 + 70, 74, 80, 84, 88, 92, 94, 95, 93, 94, 97, 101, 102, 101, 98, 95, 32.60688 + 93, 92, 87, 84, 82, 81, 79, 81, 84, 74, 71, 73, 75, 75, 75, 81, 32.60689 + 90, 95, 99, 99, 98, 97, 100, 96, 91, 88, 78, 67, 59, 56, 55, 55, 32.60690 + 53, 50, 55, 61, 66, 70, 74, 79, 81, 86, 100, 117, 128, 155, 153, 85, 32.60691 + 40, 71, 102, 255, 255, 255, 230, 229, 219, 219, 123, 43, 38, 57, 51, 40, 32.60692 + 43, 43, 48, 46, 44, 42, 40, 39, 41, 42, 44, 42, 42, 42, 42, 42, 32.60693 + 42, 42, 38, 35, 34, 43, 55, 66, 73, 83, 90, 91, 82, 82, 91, 94, 32.60694 + 85, 78, 80, 76, 81, 88, 94, 97, 95, 92, 91, 88, 91, 93, 92, 89, 32.60695 + 82, 77, 76, 78, 73, 71, 70, 71, 69, 72, 76, 72, 69, 70, 71, 72, 32.60696 + 72, 80, 89, 88, 94, 95, 93, 91, 92, 90, 86, 85, 77, 69, 64, 63, 32.60697 + 62, 61, 59, 62, 66, 72, 78, 83, 88, 94, 99, 89, 110, 124, 131, 165, 32.60698 + 151, 73, 37, 75, 127, 255, 255, 255, 228, 232, 221, 222, 135, 40, 34, 52, 32.60699 + 49, 41, 47, 47, 50, 45, 44, 43, 41, 41, 41, 42, 43, 42, 42, 42, 32.60700 + 42, 41, 41, 41, 38, 36, 40, 53, 63, 68, 75, 85, 91, 93, 91, 92, 32.60701 + 98, 98, 90, 86, 85, 91, 95, 99, 103, 100, 92, 87, 87, 82, 83, 84, 32.60702 + 84, 85, 81, 77, 74, 75, 73, 69, 71, 70, 69, 69, 73, 76, 72, 74, 32.60703 + 77, 78, 79, 83, 90, 90, 95, 96, 94, 90, 91, 90, 87, 90, 84, 80, 32.60704 + 72, 70, 67, 67, 66, 67, 70, 76, 80, 85, 90, 95, 99, 93, 120, 139, 32.60705 + 154, 183, 139, 48, 31, 76, 146, 255, 255, 255, 228, 234, 221, 222, 142, 40, 32.60706 + 32, 49, 47, 42, 49, 47, 49, 44, 44, 43, 43, 43, 42, 42, 42, 42, 32.60707 + 42, 42, 41, 41, 40, 40, 37, 39, 46, 59, 70, 75, 83, 89, 92, 96, 32.60708 + 101, 101, 98, 93, 93, 92, 88, 91, 89, 92, 91, 82, 69, 63, 63, 61, 32.60709 + 59, 60, 63, 66, 68, 66, 65, 62, 59, 59, 62, 62, 60, 60, 64, 78, 32.60710 + 74, 78, 85, 90, 87, 86, 87, 93, 99, 102, 96, 91, 92, 92, 90, 76, 32.60711 + 72, 67, 57, 53, 51, 55, 58, 51, 55, 62, 67, 67, 69, 72, 72, 81, 32.60712 + 106, 126, 154, 181, 107, 11, 22, 84, 149, 255, 255, 255, 246, 232, 219, 217, 32.60713 + 141, 44, 34, 49, 47, 42, 49, 42, 42, 41, 42, 42, 42, 42, 43, 42, 32.60714 + 41, 42, 42, 42, 41, 39, 38, 38, 35, 43, 49, 61, 73, 82, 91, 95, 32.60715 + 94, 87, 96, 98, 92, 89, 97, 100, 99, 85, 85, 86, 87, 78, 65, 61, 32.60716 + 64, 67, 64, 59, 60, 64, 65, 61, 57, 55, 54, 56, 59, 62, 60, 61, 32.60717 + 63, 68, 66, 73, 84, 92, 89, 84, 82, 92, 97, 99, 93, 89, 90, 91, 32.60718 + 90, 76, 74, 65, 56, 49, 49, 58, 65, 52, 57, 66, 71, 70, 69, 68, 32.60719 + 69, 73, 92, 112, 152, 182, 100, 10, 43, 102, 188, 255, 255, 255, 255, 224, 32.60720 + 219, 207, 157, 50, 28, 38, 45, 46, 52, 43, 44, 37, 35, 37, 38, 40, 32.60721 + 39, 38, 36, 40, 40, 39, 40, 40, 40, 38, 34, 36, 54, 70, 76, 82, 32.60722 + 93, 94, 90, 88, 96, 101, 98, 94, 97, 97, 96, 92, 90, 83, 76, 67, 32.60723 + 64, 66, 70, 55, 56, 57, 59, 57, 54, 49, 46, 52, 64, 68, 60, 59, 32.60724 + 64, 65, 59, 70, 72, 76, 82, 88, 92, 94, 93, 85, 96, 104, 93, 86, 32.60725 + 103, 113, 103, 89, 66, 54, 52, 50, 55, 58, 51, 50, 57, 67, 70, 75, 32.60726 + 91, 91, 67, 67, 72, 124, 167, 160, 90, 19, 48, 111, 147, 255, 255, 255, 32.60727 + 255, 208, 219, 223, 180, 37, 28, 49, 54, 44, 41, 36, 41, 36, 33, 34, 32.60728 + 36, 38, 39, 40, 40, 38, 39, 38, 39, 39, 36, 35, 29, 34, 50, 69, 32.60729 + 74, 83, 94, 96, 93, 89, 94, 96, 91, 90, 90, 90, 88, 86, 83, 76, 32.60730 + 74, 70, 68, 63, 61, 51, 55, 57, 55, 46, 39, 37, 35, 70, 90, 102, 32.60731 + 84, 61, 53, 58, 62, 67, 70, 74, 80, 86, 90, 91, 90, 89, 90, 96, 32.60732 + 96, 106, 123, 123, 97, 72, 48, 47, 52, 37, 35, 40, 34, 44, 37, 44, 32.60733 + 58, 75, 95, 105, 99, 63, 75, 127, 161, 146, 49, 9, 61, 131, 153, 255, 32.60734 + 255, 255, 255, 217, 221, 214, 158, 41, 30, 50, 54, 44, 42, 35, 39, 35, 32.60735 + 35, 35, 35, 37, 39, 43, 44, 39, 40, 42, 41, 40, 36, 34, 29, 39, 32.60736 + 53, 73, 77, 84, 93, 95, 93, 93, 94, 93, 89, 89, 88, 86, 82, 81, 32.60737 + 77, 71, 71, 70, 67, 58, 50, 43, 50, 56, 56, 48, 44, 47, 49, 73, 32.60738 + 94, 106, 87, 61, 50, 54, 59, 65, 67, 75, 81, 87, 88, 89, 86, 89, 32.60739 + 86, 92, 98, 113, 134, 138, 118, 78, 46, 52, 65, 40, 30, 38, 31, 36, 32.60740 + 43, 66, 79, 71, 70, 89, 106, 85, 97, 139, 173, 160, 32, 26, 97, 138, 32.60741 + 157, 255, 255, 255, 255, 247, 229, 203, 128, 56, 31, 39, 45, 47, 52, 40, 32.60742 + 39, 35, 35, 38, 38, 41, 41, 44, 45, 42, 44, 46, 47, 44, 41, 38, 32.60743 + 30, 49, 62, 80, 83, 87, 91, 92, 92, 94, 91, 88, 86, 88, 87, 83, 32.60744 + 80, 81, 79, 75, 74, 71, 65, 56, 48, 53, 59, 64, 64, 65, 65, 67, 32.60745 + 69, 69, 75, 78, 71, 65, 63, 64, 60, 66, 69, 77, 82, 87, 87, 87, 32.60746 + 85, 81, 84, 95, 97, 100, 126, 154, 164, 101, 52, 48, 62, 42, 34, 40, 32.60747 + 29, 40, 62, 95, 104, 82, 70, 75, 81, 91, 100, 135, 177, 176, 28, 38, 32.60748 + 118, 171, 200, 255, 255, 255, 255, 255, 235, 215, 144, 57, 32, 40, 47, 48, 32.60749 + 54, 42, 38, 34, 36, 43, 44, 45, 43, 44, 46, 46, 47, 48, 47, 46, 32.60750 + 43, 40, 34, 54, 66, 85, 89, 91, 92, 94, 96, 91, 86, 84, 84, 87, 32.60751 + 86, 83, 81, 85, 86, 84, 82, 76, 73, 69, 67, 79, 76, 75, 75, 78, 32.60752 + 77, 74, 69, 72, 68, 64, 61, 64, 68, 70, 67, 69, 70, 77, 81, 85, 32.60753 + 85, 85, 84, 82, 85, 96, 96, 93, 118, 160, 184, 139, 76, 49, 60, 57, 32.60754 + 57, 57, 47, 57, 65, 82, 94, 101, 114, 106, 81, 89, 105, 144, 185, 186, 32.60755 + 35, 44, 133, 172, 255, 255, 255, 255, 255, 255, 233, 221, 164, 49, 33, 51, 32.60756 + 55, 46, 45, 37, 40, 38, 41, 49, 50, 47, 43, 43, 44, 45, 45, 46, 32.60757 + 46, 44, 43, 40, 37, 55, 65, 85, 92, 94, 94, 97, 103, 97, 92, 92, 32.60758 + 93, 95, 92, 91, 93, 89, 91, 91, 90, 86, 83, 86, 88, 93, 86, 81, 32.60759 + 81, 86, 86, 82, 76, 76, 76, 72, 65, 60, 60, 67, 72, 73, 73, 77, 32.60760 + 79, 83, 84, 84, 82, 91, 85, 91, 94, 97, 117, 153, 173, 164, 105, 59, 32.60761 + 57, 69, 74, 69, 64, 66, 69, 73, 80, 98, 131, 144, 127, 97, 121, 160, 32.60762 + 194, 191, 58, 49, 146, 157, 255, 255, 255, 255, 255, 255, 228, 224, 180, 64, 32.60763 + 45, 54, 53, 43, 45, 39, 43, 42, 45, 51, 51, 47, 43, 43, 45, 48, 32.60764 + 48, 45, 44, 43, 43, 45, 41, 55, 64, 85, 93, 94, 93, 97, 104, 103, 32.60765 + 98, 99, 100, 99, 94, 96, 101, 92, 91, 90, 92, 91, 89, 89, 87, 87, 32.60766 + 83, 83, 83, 86, 88, 87, 84, 77, 78, 78, 70, 63, 63, 71, 79, 81, 32.60767 + 80, 82, 82, 84, 85, 86, 86, 93, 84, 88, 92, 94, 110, 145, 166, 169, 32.60768 + 131, 76, 56, 68, 66, 58, 65, 74, 76, 83, 90, 98, 124, 151, 154, 119, 32.60769 + 131, 155, 183, 192, 96, 55, 143, 177, 255, 255, 255, 255, 255, 255, 222, 234, 32.60770 + 210, 93, 55, 46, 40, 42, 52, 48, 48, 46, 50, 51, 49, 44, 40, 43, 32.60771 + 47, 49, 50, 46, 45, 44, 46, 49, 45, 58, 66, 86, 93, 93, 89, 92, 32.60772 + 100, 99, 96, 97, 98, 94, 88, 91, 98, 95, 91, 87, 88, 90, 87, 81, 32.60773 + 73, 77, 79, 78, 77, 75, 77, 78, 79, 78, 73, 73, 74, 78, 82, 86, 32.60774 + 88, 89, 87, 87, 87, 89, 90, 91, 92, 90, 83, 88, 90, 82, 98, 141, 32.60775 + 174, 194, 174, 118, 82, 87, 78, 66, 81, 85, 71, 79, 100, 115, 132, 144, 32.60776 + 145, 163, 153, 157, 188, 219, 155, 85, 154, 170, 255, 255, 255, 255, 255, 255, 32.60777 + 226, 218, 209, 113, 41, 42, 41, 50, 42, 51, 41, 54, 57, 62, 57, 48, 32.60778 + 39, 40, 48, 51, 45, 44, 47, 46, 45, 49, 52, 62, 59, 77, 90, 95, 32.60779 + 101, 103, 98, 91, 97, 95, 92, 99, 95, 90, 95, 84, 81, 86, 86, 80, 32.60780 + 84, 85, 73, 73, 78, 81, 80, 76, 76, 76, 77, 78, 77, 80, 80, 82, 32.60781 + 83, 85, 83, 95, 93, 90, 87, 86, 88, 91, 93, 89, 86, 84, 92, 97, 32.60782 + 97, 123, 165, 195, 181, 142, 106, 90, 80, 69, 70, 85, 82, 91, 108, 119, 32.60783 + 124, 132, 145, 154, 143, 168, 176, 226, 192, 91, 156, 165, 255, 255, 255, 255, 32.60784 + 255, 255, 226, 220, 213, 116, 36, 34, 40, 51, 42, 46, 36, 38, 41, 47, 32.60785 + 48, 44, 40, 44, 50, 49, 45, 44, 46, 46, 44, 47, 48, 55, 63, 80, 32.60786 + 86, 91, 94, 100, 110, 99, 106, 105, 103, 109, 103, 95, 98, 95, 90, 92, 32.60787 + 90, 82, 84, 84, 72, 73, 73, 73, 70, 69, 71, 79, 84, 82, 82, 83, 32.60788 + 85, 86, 88, 87, 87, 89, 88, 87, 87, 88, 90, 92, 94, 96, 94, 93, 32.60789 + 98, 103, 100, 125, 170, 197, 186, 149, 110, 97, 93, 96, 105, 94, 85, 88, 32.60790 + 100, 113, 123, 137, 154, 151, 143, 155, 165, 222, 211, 120, 136, 161, 255, 255, 32.60791 + 255, 255, 255, 255, 255, 222, 217, 133, 42, 27, 39, 50, 44, 48, 45, 56, 32.60792 + 57, 59, 56, 51, 46, 48, 50, 45, 44, 45, 46, 44, 42, 43, 43, 53, 32.60793 + 70, 77, 79, 94, 94, 94, 111, 96, 103, 105, 104, 111, 105, 97, 99, 104, 32.60794 + 98, 99, 95, 86, 88, 89, 77, 75, 75, 75, 74, 73, 74, 79, 82, 82, 32.60795 + 82, 83, 84, 85, 85, 86, 87, 86, 87, 88, 90, 91, 91, 92, 91, 90, 32.60796 + 92, 94, 98, 102, 99, 124, 164, 189, 194, 172, 137, 121, 111, 105, 104, 102, 32.60797 + 96, 97, 105, 116, 123, 137, 152, 150, 155, 161, 173, 223, 231, 169, 142, 158, 32.60798 + 255, 255, 255, 255, 255, 255, 255, 220, 216, 155, 54, 27, 39, 44, 47, 58, 32.60799 + 67, 91, 90, 86, 75, 66, 59, 54, 50, 40, 44, 46, 46, 45, 42, 43, 32.60800 + 41, 55, 74, 74, 78, 105, 101, 86, 100, 89, 97, 98, 99, 108, 105, 100, 32.60801 + 104, 106, 100, 101, 99, 93, 97, 100, 90, 84, 86, 89, 90, 87, 82, 77, 32.60802 + 73, 79, 79, 79, 80, 81, 81, 82, 82, 89, 90, 91, 92, 92, 90, 88, 32.60803 + 87, 82, 85, 90, 94, 97, 96, 119, 156, 185, 199, 184, 154, 134, 122, 105, 32.60804 + 97, 107, 104, 110, 120, 124, 126, 130, 136, 128, 151, 163, 181, 206, 219, 195, 32.60805 + 150, 158, 255, 255, 255, 255, 255, 255, 255, 221, 220, 159, 61, 28, 43, 37, 32.60806 + 45, 59, 77, 98, 97, 93, 79, 68, 61, 55, 48, 37, 44, 47, 45, 43, 32.60807 + 41, 44, 43, 43, 73, 85, 90, 111, 101, 84, 99, 95, 101, 100, 99, 108, 32.60808 + 108, 106, 112, 108, 103, 105, 104, 99, 105, 108, 98, 95, 95, 96, 96, 92, 32.60809 + 86, 79, 74, 80, 80, 80, 81, 81, 82, 84, 85, 92, 93, 94, 94, 94, 32.60810 + 93, 91, 88, 88, 91, 94, 97, 99, 97, 114, 145, 189, 204, 186, 150, 133, 32.60811 + 130, 119, 111, 105, 107, 113, 120, 124, 124, 124, 125, 127, 150, 169, 193, 202, 32.60812 + 214, 211, 164, 156, 255, 255, 255, 255, 255, 255, 255, 245, 226, 153, 62, 28, 32.60813 + 42, 32, 48, 59, 76, 100, 102, 97, 80, 66, 56, 51, 44, 38, 46, 49, 32.60814 + 44, 41, 40, 44, 43, 32, 71, 101, 106, 107, 92, 89, 111, 101, 105, 102, 32.60815 + 99, 107, 106, 104, 111, 112, 107, 109, 108, 102, 106, 108, 97, 102, 98, 93, 32.60816 + 89, 88, 87, 86, 85, 84, 84, 85, 86, 87, 88, 91, 91, 90, 89, 89, 32.60817 + 90, 91, 93, 94, 96, 95, 96, 96, 95, 99, 93, 105, 128, 184, 209, 198, 32.60818 + 160, 138, 131, 116, 104, 103, 104, 104, 108, 113, 118, 122, 125, 143, 157, 176, 32.60819 + 198, 210, 228, 222, 173, 153, 255, 255, 255, 255, 255, 255, 255, 255, 228, 162, 32.60820 + 71, 24, 35, 25, 58, 71, 83, 103, 109, 105, 84, 66, 56, 51, 44, 44, 32.60821 + 51, 52, 43, 37, 36, 41, 42, 48, 74, 105, 110, 101, 92, 96, 109, 98, 32.60822 + 104, 101, 99, 107, 105, 101, 107, 114, 110, 113, 112, 105, 108, 106, 95, 105, 32.60823 + 99, 92, 89, 89, 90, 90, 89, 83, 84, 87, 88, 90, 91, 92, 93, 92, 32.60824 + 90, 88, 86, 87, 91, 95, 96, 94, 94, 91, 91, 98, 93, 99, 116, 161, 32.60825 + 202, 206, 166, 134, 121, 105, 94, 102, 102, 101, 102, 105, 113, 120, 124, 134, 32.60826 + 152, 177, 180, 192, 223, 209, 162, 154, 255, 255, 255, 255, 255, 255, 255, 255, 32.60827 + 226, 182, 84, 24, 28, 20, 67, 85, 99, 98, 107, 106, 86, 69, 62, 58, 32.60828 + 54, 49, 55, 55, 42, 34, 34, 39, 38, 75, 78, 95, 104, 100, 99, 102, 32.60829 + 96, 97, 104, 102, 105, 112, 109, 105, 110, 111, 108, 112, 112, 106, 109, 107, 32.60830 + 95, 103, 100, 98, 97, 97, 94, 89, 85, 78, 81, 82, 84, 86, 88, 89, 32.60831 + 90, 94, 90, 87, 80, 80, 84, 91, 92, 93, 93, 89, 92, 101, 101, 102, 32.60832 + 118, 144, 189, 193, 148, 112, 108, 109, 111, 103, 104, 105, 105, 108, 114, 117, 32.60833 + 119, 130, 163, 197, 179, 183, 223, 204, 167, 156, 255, 255, 255, 255, 255, 255, 32.60834 + 255, 255, 243, 219, 163, 56, 24, 28, 33, 83, 104, 102, 94, 83, 72, 76, 32.60835 + 93, 87, 58, 69, 57, 54, 52, 47, 36, 47, 63, 83, 86, 91, 97, 101, 32.60836 + 102, 102, 100, 100, 103, 104, 103, 104, 108, 109, 106, 110, 111, 108, 103, 104, 32.60837 + 109, 113, 112, 110, 106, 103, 102, 102, 98, 91, 84, 90, 82, 75, 75, 80, 32.60838 + 84, 82, 80, 80, 76, 76, 74, 77, 80, 82, 82, 92, 103, 100, 95, 106, 32.60839 + 111, 104, 100, 125, 160, 181, 148, 96, 84, 97, 99, 83, 99, 84, 95, 101, 32.60840 + 93, 115, 123, 128, 143, 168, 185, 195, 204, 192, 168, 146, 255, 255, 255, 255, 32.60841 + 255, 255, 255, 255, 255, 225, 192, 105, 48, 29, 23, 56, 94, 104, 95, 90, 32.60842 + 83, 84, 94, 84, 55, 82, 62, 49, 42, 40, 36, 55, 74, 99, 94, 94, 32.60843 + 95, 96, 96, 94, 93, 99, 103, 104, 102, 104, 109, 110, 108, 103, 107, 109, 32.60844 + 106, 105, 107, 109, 107, 109, 105, 104, 103, 103, 98, 92, 85, 84, 82, 80, 32.60845 + 78, 78, 77, 75, 75, 75, 76, 77, 80, 82, 87, 90, 94, 90, 98, 94, 32.60846 + 93, 105, 108, 100, 99, 115, 138, 176, 180, 129, 81, 75, 85, 74, 92, 87, 32.60847 + 100, 105, 94, 107, 111, 127, 144, 172, 187, 191, 198, 189, 168, 155, 255, 255, 32.60848 + 255, 255, 255, 255, 255, 255, 255, 223, 212, 150, 62, 24, 11, 34, 110, 116, 32.60849 + 96, 80, 72, 70, 77, 79, 65, 80, 59, 43, 35, 35, 38, 60, 81, 102, 32.60850 + 96, 92, 92, 95, 98, 98, 97, 98, 101, 102, 101, 103, 109, 111, 110, 102, 32.60851 + 110, 115, 113, 111, 110, 111, 108, 111, 107, 104, 102, 103, 98, 90, 84, 77, 32.60852 + 80, 80, 79, 76, 73, 71, 72, 79, 83, 85, 87, 86, 87, 90, 93, 97, 32.60853 + 99, 94, 97, 109, 106, 99, 103, 112, 116, 148, 180, 168, 128, 94, 72, 72, 32.60854 + 90, 91, 98, 104, 96, 104, 109, 115, 136, 166, 182, 191, 202, 200, 185, 150, 32.60855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 216, 187, 100, 53, 23, 16, 32.60856 + 113, 116, 94, 80, 72, 66, 72, 75, 68, 64, 54, 46, 44, 42, 46, 67, 32.60857 + 88, 102, 96, 92, 93, 98, 101, 101, 100, 96, 99, 100, 99, 102, 108, 111, 32.60858 + 110, 102, 111, 116, 114, 110, 109, 110, 108, 111, 108, 104, 102, 101, 95, 89, 32.60859 + 84, 70, 72, 75, 74, 75, 74, 74, 72, 80, 86, 91, 90, 86, 83, 86, 32.60860 + 91, 98, 97, 94, 99, 106, 98, 95, 108, 108, 114, 128, 142, 156, 162, 128, 32.60861 + 72, 74, 88, 89, 90, 97, 98, 106, 114, 107, 126, 152, 168, 180, 198, 201, 32.60862 + 189, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 218, 223, 167, 123, 32.60863 + 57, 3, 81, 99, 91, 95, 100, 92, 88, 80, 66, 55, 54, 55, 54, 50, 32.60864 + 55, 79, 101, 105, 100, 98, 99, 100, 100, 97, 94, 96, 99, 99, 96, 99, 32.60865 + 105, 108, 107, 100, 106, 108, 104, 103, 104, 104, 103, 110, 108, 106, 102, 98, 32.60866 + 92, 86, 82, 76, 70, 69, 72, 77, 78, 76, 73, 74, 79, 85, 85, 81, 32.60867 + 79, 78, 83, 76, 83, 84, 89, 93, 87, 91, 110, 104, 117, 121, 109, 112, 32.60868 + 135, 122, 76, 74, 86, 91, 84, 91, 97, 99, 109, 113, 121, 138, 149, 163, 32.60869 + 183, 187, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 224, 32.60870 + 195, 165, 96, 19, 55, 91, 91, 101, 103, 96, 96, 92, 78, 58, 57, 56, 32.60871 + 54, 50, 59, 83, 105, 94, 94, 98, 100, 101, 101, 100, 99, 97, 99, 97, 32.60872 + 94, 95, 101, 103, 102, 103, 105, 103, 99, 101, 104, 104, 101, 108, 106, 104, 32.60873 + 99, 93, 87, 82, 79, 81, 76, 72, 73, 79, 81, 77, 70, 72, 74, 75, 32.60874 + 70, 64, 58, 55, 55, 55, 68, 72, 76, 83, 85, 93, 113, 109, 95, 87, 32.60875 + 89, 98, 111, 102, 72, 68, 81, 94, 84, 90, 97, 86, 96, 113, 119, 132, 32.60876 + 142, 158, 181, 187, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60877 + 212, 213, 195, 182, 130, 52, 43, 87, 91, 96, 91, 86, 98, 106, 96, 75, 32.60878 + 70, 64, 61, 59, 68, 83, 98, 83, 87, 94, 97, 97, 98, 102, 105, 98, 32.60879 + 99, 97, 92, 92, 96, 98, 97, 109, 108, 104, 102, 104, 108, 107, 101, 105, 32.60880 + 104, 100, 94, 89, 83, 78, 76, 78, 77, 78, 81, 84, 82, 78, 74, 73, 32.60881 + 70, 68, 64, 58, 53, 48, 45, 53, 65, 66, 67, 81, 92, 99, 110, 109, 32.60882 + 72, 58, 78, 100, 106, 92, 67, 69, 79, 94, 81, 87, 100, 88, 100, 107, 32.60883 + 116, 133, 144, 158, 183, 192, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60884 + 255, 255, 218, 218, 207, 200, 159, 72, 21, 72, 86, 101, 96, 91, 105, 110, 32.60885 + 94, 92, 86, 78, 77, 78, 83, 89, 91, 86, 92, 97, 96, 91, 89, 93, 32.60886 + 99, 99, 100, 96, 91, 89, 93, 95, 93, 106, 104, 100, 99, 104, 107, 103, 32.60887 + 94, 102, 101, 97, 90, 85, 78, 74, 73, 69, 75, 83, 87, 88, 85, 83, 32.60888 + 81, 69, 68, 68, 67, 69, 69, 68, 66, 56, 66, 62, 61, 79, 96, 98, 32.60889 + 99, 92, 71, 66, 76, 83, 88, 82, 64, 72, 79, 93, 75, 84, 106, 100, 32.60890 + 117, 101, 115, 135, 145, 152, 171, 180, 171, 255, 255, 255, 255, 255, 255, 255, 32.60891 + 255, 255, 255, 255, 255, 209, 218, 203, 175, 58, 21, 29, 74, 124, 100, 94, 32.60892 + 106, 98, 104, 94, 94, 90, 88, 90, 92, 94, 92, 90, 89, 89, 92, 95, 32.60893 + 95, 91, 87, 90, 94, 95, 90, 87, 90, 90, 88, 90, 92, 97, 98, 99, 32.60894 + 99, 103, 104, 91, 92, 91, 74, 60, 71, 81, 71, 83, 84, 84, 81, 81, 32.60895 + 80, 80, 79, 81, 76, 71, 68, 67, 69, 72, 75, 74, 71, 70, 73, 79, 32.60896 + 82, 81, 79, 81, 83, 86, 87, 85, 81, 77, 72, 74, 70, 75, 83, 87, 32.60897 + 89, 93, 102, 107, 103, 124, 129, 140, 161, 155, 148, 255, 255, 255, 255, 255, 32.60898 + 255, 255, 255, 255, 255, 255, 255, 216, 216, 209, 190, 89, 6, 31, 62, 101, 32.60899 + 134, 96, 110, 85, 116, 94, 92, 91, 90, 93, 96, 98, 96, 98, 93, 88, 32.60900 + 86, 88, 91, 92, 92, 89, 90, 91, 90, 88, 87, 88, 90, 82, 83, 88, 32.60901 + 91, 94, 95, 96, 96, 86, 82, 80, 69, 60, 70, 81, 76, 87, 87, 86, 32.60902 + 85, 85, 82, 82, 81, 80, 77, 73, 68, 67, 69, 71, 73, 74, 75, 77, 32.60903 + 78, 78, 80, 82, 83, 82, 84, 87, 89, 89, 86, 82, 78, 76, 74, 77, 32.60904 + 83, 84, 82, 85, 90, 99, 96, 119, 128, 140, 165, 161, 188, 255, 255, 255, 32.60905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 213, 216, 203, 135, 0, 18, 32.60906 + 41, 88, 144, 101, 106, 86, 107, 94, 91, 91, 92, 94, 95, 95, 94, 96, 32.60907 + 92, 88, 86, 87, 90, 93, 93, 95, 90, 90, 94, 91, 84, 85, 93, 87, 32.60908 + 88, 89, 92, 97, 96, 92, 87, 80, 70, 67, 66, 63, 71, 81, 79, 86, 32.60909 + 88, 87, 84, 83, 82, 82, 79, 78, 76, 74, 71, 70, 71, 72, 72, 73, 32.60910 + 77, 80, 79, 76, 75, 79, 84, 83, 85, 89, 92, 93, 91, 88, 85, 79, 32.60911 + 75, 76, 81, 82, 78, 81, 86, 92, 93, 118, 127, 138, 162, 160, 255, 255, 32.60912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 221, 207, 181, 32.60913 + 21, 6, 24, 94, 128, 112, 100, 102, 90, 98, 92, 91, 92, 93, 91, 90, 32.60914 + 89, 88, 87, 89, 92, 93, 93, 91, 90, 96, 87, 85, 92, 88, 77, 77, 32.60915 + 88, 97, 94, 92, 93, 97, 93, 84, 77, 73, 60, 60, 67, 68, 72, 79, 32.60916 + 80, 83, 83, 82, 81, 80, 77, 77, 77, 78, 76, 75, 74, 73, 72, 71, 32.60917 + 71, 72, 74, 75, 73, 71, 71, 74, 77, 82, 85, 89, 92, 92, 91, 88, 32.60918 + 85, 78, 74, 74, 76, 78, 77, 82, 89, 93, 94, 119, 126, 134, 157, 154, 32.60919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 219, 32.60920 + 201, 207, 60, 13, 24, 82, 131, 123, 105, 108, 92, 98, 91, 88, 91, 93, 32.60921 + 89, 89, 90, 90, 89, 92, 92, 92, 90, 88, 87, 88, 78, 77, 83, 81, 32.60922 + 71, 73, 84, 92, 89, 88, 88, 89, 84, 76, 68, 69, 59, 64, 74, 73, 32.60923 + 75, 78, 75, 79, 81, 81, 79, 78, 78, 78, 76, 79, 79, 79, 76, 76, 32.60924 + 75, 74, 73, 75, 72, 69, 69, 71, 73, 73, 72, 82, 84, 88, 90, 90, 32.60925 + 88, 85, 81, 79, 73, 69, 68, 70, 72, 79, 89, 91, 92, 115, 122, 132, 32.60926 + 154, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60927 + 240, 216, 198, 209, 90, 18, 22, 45, 140, 120, 107, 91, 100, 95, 86, 86, 32.60928 + 92, 94, 94, 97, 100, 100, 96, 92, 87, 84, 83, 86, 89, 83, 78, 77, 32.60929 + 82, 81, 77, 81, 92, 84, 82, 83, 83, 83, 79, 74, 69, 68, 64, 71, 32.60930 + 77, 74, 77, 79, 73, 80, 82, 82, 83, 81, 81, 82, 82, 83, 82, 82, 32.60931 + 81, 78, 77, 77, 76, 79, 74, 69, 70, 74, 77, 77, 74, 81, 84, 87, 32.60932 + 90, 90, 88, 84, 81, 84, 74, 69, 64, 63, 61, 70, 78, 84, 86, 110, 32.60933 + 121, 134, 156, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60934 + 255, 255, 255, 212, 201, 197, 96, 17, 24, 28, 117, 115, 106, 90, 100, 93, 32.60935 + 82, 81, 89, 94, 93, 98, 106, 98, 95, 92, 87, 83, 83, 86, 90, 86, 32.60936 + 85, 84, 82, 80, 81, 85, 91, 83, 84, 84, 82, 80, 76, 74, 72, 67, 32.60937 + 69, 77, 75, 71, 79, 85, 75, 80, 82, 83, 84, 86, 87, 86, 86, 89, 32.60938 + 88, 84, 83, 82, 82, 80, 80, 79, 77, 74, 73, 75, 77, 80, 81, 81, 32.60939 + 84, 88, 92, 93, 92, 89, 86, 87, 78, 73, 68, 64, 59, 65, 70, 82, 32.60940 + 81, 107, 122, 139, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60941 + 255, 255, 255, 255, 255, 241, 209, 188, 90, 13, 30, 40, 88, 125, 112, 112, 32.60942 + 99, 99, 86, 80, 86, 89, 88, 93, 101, 85, 89, 94, 94, 92, 90, 91, 32.60943 + 92, 88, 90, 87, 79, 75, 77, 80, 78, 83, 83, 84, 80, 74, 70, 67, 32.60944 + 69, 67, 73, 79, 71, 63, 77, 88, 78, 79, 79, 81, 82, 84, 86, 87, 32.60945 + 88, 91, 90, 86, 84, 83, 84, 84, 85, 76, 77, 78, 75, 73, 74, 80, 32.60946 + 84, 81, 84, 89, 93, 95, 95, 93, 92, 87, 84, 78, 76, 71, 66, 66, 32.60947 + 70, 85, 82, 110, 125, 145, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60948 + 255, 255, 255, 255, 255, 255, 255, 255, 209, 212, 78, 20, 27, 33, 41, 65, 32.60949 + 100, 115, 110, 93, 91, 76, 78, 103, 78, 98, 94, 90, 89, 89, 89, 90, 32.60950 + 91, 91, 92, 85, 91, 89, 78, 77, 86, 90, 85, 85, 90, 92, 82, 71, 32.60951 + 66, 63, 62, 70, 69, 71, 72, 73, 73, 72, 70, 76, 77, 77, 79, 83, 32.60952 + 85, 85, 84, 88, 93, 89, 87, 94, 90, 82, 84, 85, 81, 77, 74, 72, 32.60953 + 71, 71, 69, 88, 92, 96, 93, 91, 93, 93, 93, 89, 84, 76, 71, 69, 32.60954 + 69, 63, 61, 76, 87, 106, 128, 147, 152, 255, 255, 255, 255, 255, 255, 255, 32.60955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 218, 115, 53, 39, 31, 32.60956 + 36, 47, 55, 58, 60, 55, 57, 48, 86, 104, 85, 85, 90, 93, 95, 94, 32.60957 + 92, 89, 86, 85, 85, 82, 88, 88, 82, 84, 95, 101, 96, 72, 78, 88, 32.60958 + 89, 82, 69, 58, 53, 57, 55, 55, 55, 58, 63, 67, 70, 70, 70, 70, 32.60959 + 72, 77, 79, 78, 77, 83, 87, 82, 81, 92, 91, 86, 89, 76, 74, 74, 32.60960 + 76, 78, 80, 81, 82, 85, 89, 89, 90, 91, 93, 88, 83, 89, 90, 84, 32.60961 + 80, 77, 74, 71, 67, 78, 91, 113, 135, 152, 159, 255, 255, 255, 255, 255, 32.60962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 216, 155, 95, 32.60963 + 56, 30, 33, 37, 28, 24, 31, 29, 33, 30, 93, 105, 94, 78, 93, 94, 32.60964 + 98, 99, 95, 89, 84, 82, 82, 90, 94, 91, 84, 84, 91, 93, 87, 70, 32.60965 + 72, 84, 94, 88, 67, 52, 49, 55, 53, 53, 52, 52, 53, 55, 57, 54, 32.60966 + 54, 55, 58, 61, 63, 63, 62, 71, 74, 68, 65, 74, 72, 68, 71, 74, 32.60967 + 74, 78, 81, 85, 88, 88, 89, 79, 83, 84, 88, 93, 96, 90, 85, 83, 32.60968 + 85, 85, 82, 76, 71, 69, 67, 76, 90, 112, 134, 149, 255, 255, 255, 255, 32.60969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 32.60970 + 184, 131, 78, 34, 28, 35, 33, 30, 32, 31, 34, 40, 85, 99, 92, 78, 32.60971 + 92, 91, 97, 100, 98, 92, 88, 87, 88, 95, 96, 91, 84, 81, 83, 80, 32.60972 + 73, 82, 76, 81, 90, 83, 61, 50, 54, 56, 60, 66, 67, 65, 61, 57, 32.60973 + 54, 48, 48, 50, 53, 56, 57, 57, 55, 57, 61, 57, 54, 63, 60, 55, 32.60974 + 56, 59, 59, 61, 63, 64, 63, 60, 60, 51, 55, 61, 65, 68, 72, 70, 32.60975 + 66, 73, 80, 82, 80, 74, 69, 67, 69, 86, 95, 117, 137, 148, 255, 255, 32.60976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60977 + 255, 255, 198, 164, 109, 46, 18, 27, 40, 36, 25, 27, 34, 59, 68, 93, 32.60978 + 84, 79, 86, 88, 93, 97, 96, 93, 89, 88, 89, 87, 87, 85, 82, 83, 32.60979 + 85, 83, 77, 87, 78, 79, 86, 82, 63, 56, 61, 60, 65, 75, 79, 79, 32.60980 + 77, 76, 76, 68, 66, 66, 66, 67, 66, 63, 60, 56, 62, 63, 64, 72, 32.60981 + 69, 61, 62, 57, 57, 59, 60, 58, 57, 55, 54, 56, 64, 70, 64, 59, 32.60982 + 58, 58, 59, 66, 72, 77, 76, 75, 75, 78, 82, 95, 105, 125, 143, 152, 32.60983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60984 + 255, 255, 255, 255, 198, 184, 137, 70, 24, 24, 43, 39, 22, 20, 29, 66, 32.60985 + 62, 95, 89, 83, 84, 89, 91, 91, 90, 89, 86, 84, 82, 87, 85, 84, 32.60986 + 85, 88, 89, 86, 80, 79, 75, 79, 86, 85, 72, 64, 64, 75, 77, 81, 32.60987 + 80, 79, 81, 86, 91, 90, 87, 83, 80, 79, 77, 73, 70, 75, 81, 80, 32.60988 + 80, 85, 78, 67, 65, 70, 71, 73, 76, 76, 78, 79, 80, 90, 100, 102, 32.60989 + 92, 78, 70, 67, 67, 60, 64, 67, 68, 73, 78, 86, 91, 90, 98, 117, 32.60990 + 141, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60991 + 255, 255, 255, 255, 255, 255, 235, 198, 163, 104, 54, 38, 44, 41, 27, 29, 32.60992 + 29, 55, 67, 95, 98, 79, 89, 92, 90, 86, 86, 88, 87, 83, 79, 92, 32.60993 + 88, 86, 88, 91, 89, 84, 78, 77, 76, 79, 81, 82, 77, 70, 65, 80, 32.60994 + 82, 84, 81, 78, 79, 85, 92, 96, 93, 89, 86, 85, 85, 85, 84, 86, 32.60995 + 90, 87, 84, 89, 82, 71, 70, 72, 70, 72, 74, 77, 80, 80, 82, 94, 32.60996 + 103, 107, 101, 88, 78, 69, 65, 66, 66, 63, 64, 70, 78, 87, 92, 89, 32.60997 + 97, 118, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.60998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 181, 131, 80, 49, 37, 31, 32.60999 + 24, 46, 30, 36, 66, 82, 100, 68, 91, 94, 89, 84, 85, 89, 91, 87, 32.61000 + 82, 87, 83, 83, 88, 92, 92, 87, 81, 83, 82, 79, 73, 73, 75, 72, 32.61001 + 66, 65, 72, 81, 83, 83, 84, 89, 94, 95, 92, 89, 88, 91, 95, 98, 32.61002 + 99, 80, 85, 83, 83, 94, 93, 87, 89, 84, 81, 80, 79, 80, 79, 81, 32.61003 + 82, 89, 97, 107, 109, 104, 97, 85, 77, 84, 77, 71, 69, 74, 83, 90, 32.61004 + 93, 107, 114, 138, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 190, 146, 132, 75, 32.61006 + 35, 24, 48, 34, 27, 38, 59, 78, 92, 92, 78, 88, 93, 97, 95, 90, 32.61007 + 85, 83, 83, 76, 81, 82, 78, 80, 86, 88, 83, 82, 76, 75, 79, 84, 32.61008 + 79, 70, 64, 79, 81, 83, 82, 83, 88, 93, 95, 93, 97, 91, 89, 98, 32.61009 + 95, 90, 93, 93, 87, 89, 96, 96, 87, 87, 93, 84, 81, 83, 87, 85, 32.61010 + 81, 79, 78, 89, 94, 102, 105, 99, 90, 88, 94, 89, 75, 78, 79, 72, 32.61011 + 86, 100, 92, 110, 108, 143, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 168, 32.61013 + 154, 99, 55, 31, 37, 33, 30, 43, 62, 79, 91, 94, 80, 83, 86, 88, 32.61014 + 89, 88, 87, 86, 86, 80, 83, 82, 79, 81, 87, 87, 81, 83, 79, 78, 32.61015 + 79, 81, 77, 70, 66, 79, 82, 87, 88, 89, 89, 89, 88, 87, 91, 85, 32.61016 + 82, 92, 90, 85, 90, 90, 85, 87, 94, 95, 88, 90, 97, 85, 81, 82, 32.61017 + 87, 86, 84, 82, 85, 93, 95, 99, 104, 100, 91, 85, 85, 85, 71, 72, 32.61018 + 76, 73, 88, 104, 99, 103, 112, 152, 203, 255, 255, 255, 255, 255, 255, 255, 32.61019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61020 + 255, 185, 177, 137, 98, 64, 38, 31, 30, 46, 66, 79, 88, 93, 82, 82, 32.61021 + 81, 81, 82, 84, 86, 85, 84, 83, 83, 80, 79, 82, 87, 86, 79, 76, 32.61022 + 75, 76, 77, 79, 80, 79, 77, 78, 78, 82, 84, 85, 86, 86, 87, 88, 32.61023 + 89, 85, 82, 90, 89, 88, 93, 91, 85, 84, 85, 80, 72, 75, 79, 75, 32.61024 + 70, 70, 75, 77, 77, 78, 83, 92, 91, 94, 101, 101, 94, 85, 81, 88, 32.61025 + 74, 73, 76, 79, 90, 102, 97, 98, 125, 170, 255, 255, 255, 255, 255, 255, 32.61026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61027 + 255, 255, 255, 190, 189, 169, 141, 99, 41, 32, 30, 48, 68, 78, 86, 90, 32.61028 + 85, 88, 84, 79, 79, 81, 82, 80, 78, 82, 79, 76, 77, 81, 85, 84, 32.61029 + 78, 75, 76, 77, 74, 76, 79, 82, 82, 83, 77, 75, 76, 80, 85, 92, 32.61030 + 96, 90, 91, 86, 84, 92, 92, 91, 96, 91, 85, 82, 79, 73, 65, 67, 32.61031 + 70, 70, 64, 63, 66, 69, 68, 73, 79, 89, 86, 88, 98, 102, 97, 88, 32.61032 + 82, 81, 75, 74, 80, 87, 93, 100, 103, 98, 135, 185, 255, 255, 255, 255, 32.61033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61034 + 255, 255, 255, 255, 255, 235, 194, 187, 164, 119, 37, 35, 31, 49, 71, 78, 32.61035 + 82, 87, 85, 90, 85, 80, 78, 79, 79, 77, 75, 77, 74, 73, 75, 79, 32.61036 + 81, 81, 78, 80, 82, 80, 73, 72, 76, 78, 76, 88, 80, 77, 80, 84, 32.61037 + 87, 93, 97, 87, 89, 83, 81, 91, 91, 87, 92, 88, 85, 83, 82, 80, 32.61038 + 77, 79, 83, 76, 69, 66, 69, 69, 71, 77, 81, 89, 86, 87, 95, 99, 32.61039 + 94, 86, 82, 67, 67, 72, 81, 92, 94, 100, 113, 105, 142, 211, 255, 255, 32.61040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61041 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 193, 175, 139, 54, 42, 35, 51, 32.61042 + 71, 78, 80, 87, 84, 85, 82, 79, 78, 78, 79, 79, 78, 75, 73, 73, 32.61043 + 76, 76, 75, 76, 78, 73, 75, 74, 69, 73, 81, 84, 81, 84, 76, 77, 32.61044 + 84, 87, 83, 80, 80, 88, 90, 85, 84, 93, 92, 87, 91, 91, 90, 88, 32.61045 + 85, 82, 79, 80, 80, 77, 71, 68, 71, 71, 74, 78, 85, 92, 91, 92, 32.61046 + 95, 92, 85, 81, 81, 71, 77, 79, 83, 90, 87, 92, 112, 128, 155, 255, 32.61047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 195, 178, 162, 83, 51, 32.61049 + 40, 53, 72, 80, 81, 87, 85, 79, 79, 80, 78, 77, 77, 78, 79, 77, 32.61050 + 76, 77, 78, 74, 69, 72, 77, 67, 70, 68, 65, 74, 86, 88, 81, 83, 32.61051 + 74, 74, 83, 86, 79, 74, 73, 86, 89, 85, 85, 92, 89, 84, 86, 91, 32.61052 + 91, 88, 82, 76, 72, 69, 67, 71, 64, 63, 67, 71, 74, 78, 86, 90, 32.61053 + 93, 96, 95, 86, 77, 76, 85, 84, 92, 87, 86, 89, 82, 90, 123, 157, 32.61054 + 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 174, 167, 32.61056 + 98, 58, 43, 52, 71, 80, 81, 86, 86, 77, 79, 81, 79, 75, 73, 74, 32.61057 + 77, 80, 79, 81, 81, 73, 65, 68, 78, 78, 78, 73, 66, 72, 81, 79, 32.61058 + 67, 92, 78, 75, 83, 87, 83, 83, 88, 79, 83, 82, 79, 88, 84, 76, 32.61059 + 77, 83, 85, 84, 80, 76, 73, 71, 68, 68, 63, 63, 68, 73, 77, 84, 32.61060 + 91, 88, 94, 98, 95, 83, 75, 80, 92, 82, 93, 89, 87, 93, 92, 109, 32.61061 + 149, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 32.61063 + 193, 182, 135, 61, 50, 59, 74, 73, 72, 82, 87, 90, 82, 82, 83, 76, 32.61064 + 76, 76, 66, 77, 74, 75, 78, 77, 73, 73, 73, 79, 81, 77, 71, 74, 32.61065 + 84, 86, 78, 87, 87, 80, 81, 89, 84, 77, 82, 97, 93, 90, 81, 80, 32.61066 + 84, 90, 94, 86, 79, 74, 79, 85, 84, 76, 67, 73, 68, 67, 68, 74, 32.61067 + 85, 93, 98, 97, 98, 98, 95, 80, 69, 73, 82, 75, 91, 85, 95, 91, 32.61068 + 89, 144, 175, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61070 + 255, 255, 200, 194, 160, 86, 58, 54, 69, 74, 76, 82, 85, 84, 78, 79, 32.61071 + 79, 73, 75, 78, 72, 72, 70, 71, 76, 77, 75, 76, 77, 78, 75, 72, 32.61072 + 70, 74, 79, 80, 75, 78, 79, 75, 78, 89, 87, 82, 89, 86, 87, 86, 32.61073 + 81, 81, 85, 90, 92, 93, 86, 81, 81, 84, 84, 79, 72, 68, 65, 67, 32.61074 + 71, 80, 89, 98, 102, 102, 100, 101, 94, 83, 75, 81, 88, 80, 86, 95, 32.61075 + 90, 97, 125, 156, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61077 + 255, 255, 255, 255, 240, 214, 168, 126, 79, 56, 67, 75, 76, 82, 85, 79, 32.61078 + 76, 79, 78, 70, 72, 78, 74, 70, 68, 69, 74, 75, 74, 75, 77, 81, 32.61079 + 74, 72, 77, 83, 81, 79, 78, 76, 78, 75, 79, 91, 89, 86, 94, 81, 32.61080 + 85, 86, 81, 81, 85, 88, 88, 93, 90, 85, 83, 83, 84, 83, 81, 69, 32.61081 + 68, 73, 77, 83, 90, 95, 99, 105, 102, 100, 95, 86, 79, 86, 94, 93, 32.61082 + 86, 106, 95, 114, 161, 168, 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61084 + 255, 255, 255, 255, 255, 255, 255, 242, 180, 144, 90, 58, 66, 72, 73, 79, 32.61085 + 88, 79, 77, 82, 82, 70, 69, 74, 70, 72, 69, 69, 72, 72, 70, 71, 32.61086 + 72, 81, 71, 71, 81, 86, 80, 76, 79, 81, 84, 80, 83, 92, 89, 86, 32.61087 + 95, 87, 91, 90, 81, 78, 82, 84, 81, 84, 86, 85, 81, 80, 82, 83, 32.61088 + 82, 74, 75, 77, 79, 82, 87, 92, 94, 106, 104, 102, 96, 89, 84, 87, 32.61089 + 93, 101, 92, 104, 113, 142, 176, 179, 255, 255, 255, 255, 255, 255, 255, 255, 32.61090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 114, 76, 62, 72, 74, 32.61092 + 70, 75, 82, 76, 77, 84, 85, 74, 71, 73, 68, 71, 68, 67, 69, 69, 32.61093 + 67, 68, 70, 75, 65, 68, 78, 81, 75, 72, 74, 81, 85, 83, 84, 91, 32.61094 + 86, 85, 95, 93, 97, 93, 80, 76, 82, 85, 81, 79, 85, 87, 82, 79, 32.61095 + 80, 80, 77, 79, 80, 80, 80, 80, 85, 90, 94, 103, 103, 102, 98, 92, 32.61096 + 88, 87, 88, 97, 96, 95, 136, 167, 199, 255, 255, 255, 255, 255, 255, 255, 32.61097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 64, 51, 62, 32.61099 + 78, 77, 71, 73, 76, 74, 74, 81, 83, 75, 74, 76, 69, 68, 64, 63, 32.61100 + 66, 67, 66, 69, 71, 72, 66, 68, 74, 78, 75, 73, 72, 74, 78, 78, 32.61101 + 80, 86, 83, 83, 94, 89, 95, 91, 78, 75, 84, 88, 84, 81, 88, 90, 32.61102 + 83, 80, 82, 79, 72, 77, 78, 79, 79, 79, 83, 90, 96, 98, 101, 100, 32.61103 + 96, 93, 92, 89, 85, 91, 100, 100, 155, 180, 255, 255, 255, 255, 255, 255, 32.61104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61106 + 45, 64, 77, 71, 69, 76, 78, 80, 72, 74, 75, 69, 71, 73, 66, 66, 32.61107 + 62, 61, 63, 63, 62, 64, 68, 71, 71, 71, 71, 76, 80, 76, 70, 71, 32.61108 + 76, 75, 78, 86, 82, 81, 93, 82, 92, 91, 79, 77, 87, 89, 82, 81, 32.61109 + 88, 87, 81, 81, 87, 86, 78, 76, 78, 82, 82, 80, 82, 88, 93, 94, 32.61110 + 96, 94, 90, 91, 94, 92, 88, 103, 114, 134, 196, 255, 255, 255, 255, 255, 32.61111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61113 + 255, 255, 255, 255, 68, 61, 67, 84, 86, 88, 76, 72, 70, 64, 66, 69, 32.61114 + 62, 71, 66, 63, 63, 61, 58, 59, 63, 65, 69, 68, 63, 69, 76, 74, 32.61115 + 64, 73, 79, 78, 79, 86, 81, 80, 91, 77, 89, 90, 78, 76, 85, 85, 32.61116 + 75, 75, 81, 79, 74, 78, 90, 92, 85, 77, 82, 87, 86, 84, 80, 83, 32.61117 + 85, 91, 92, 89, 85, 88, 96, 97, 95, 119, 131, 170, 255, 255, 255, 255, 32.61118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61120 + 255, 255, 255, 255, 255, 255, 255, 192, 63, 74, 85, 86, 74, 67, 69, 71, 32.61121 + 68, 65, 66, 64, 60, 66, 51, 60, 51, 60, 58, 57, 66, 68, 63, 62, 32.61122 + 68, 74, 73, 70, 70, 78, 86, 88, 81, 78, 81, 76, 81, 84, 83, 80, 32.61123 + 80, 84, 89, 83, 76, 73, 76, 77, 76, 81, 88, 77, 80, 86, 87, 84, 32.61124 + 79, 82, 87, 94, 81, 110, 84, 96, 76, 107, 95, 137, 166, 200, 255, 255, 32.61125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61128 + 255, 195, 66, 64, 69, 77, 72, 74, 55, 59, 49, 60, 59, 62, 68, 69, 32.61129 + 65, 64, 70, 76, 76, 69, 69, 75, 79, 78, 72, 72, 77, 78, 82, 86, 32.61130 + 86, 84, 83, 84, 86, 75, 75, 79, 87, 88, 81, 78, 79, 83, 84, 84, 32.61131 + 84, 84, 79, 78, 78, 73, 84, 86, 97, 105, 102, 105, 130, 144, 159, 255, 32.61132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 56, 42, 53, 54, 62, 32.61136 + 65, 65, 62, 62, 66, 69, 70, 70, 71, 76, 76, 70, 65, 68, 74, 78, 32.61137 + 80, 84, 86, 87, 85, 83, 82, 74, 76, 83, 91, 91, 84, 77, 75, 86, 32.61138 + 83, 80, 80, 82, 81, 78, 75, 74, 90, 83, 96, 110, 101, 96, 136, 181, 32.61139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 32.61143 + 58, 60, 61, 62, 62, 62, 62, 62, 61, 68, 71, 77, 75, 70, 66, 68, 32.61144 + 73, 72, 73, 74, 77, 81, 82, 80, 79, 79, 78, 79, 80, 80, 78, 77, 32.61145 + 77, 79, 79, 80, 76, 78, 81, 81, 77, 78, 80, 96, 94, 131, 127, 154, 32.61146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61150 + 255, 255, 255, 255, 57, 60, 64, 65, 64, 64, 63, 62, 69, 76, 75, 73, 32.61151 + 70, 71, 72, 68, 67, 67, 69, 73, 77, 80, 81, 80, 79, 77, 75, 75, 32.61152 + 77, 79, 79, 73, 79, 82, 74, 72, 75, 78, 80, 82, 73, 101, 104, 122, 32.61153 + 163, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61157 + 255, 255, 255, 255, 255, 255, 255, 255, 190, 62, 61, 62, 63, 59, 65, 71, 32.61158 + 70, 70, 71, 69, 66, 65, 65, 65, 65, 68, 73, 78, 82, 74, 77, 78, 32.61159 + 77, 77, 79, 78, 75, 74, 82, 85, 73, 66, 69, 75, 76, 78, 79, 95, 32.61160 + 123, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 61, 65, 66, 32.61165 + 68, 67, 64, 67, 70, 68, 61, 62, 65, 67, 66, 66, 68, 73, 77, 69, 32.61166 + 74, 76, 73, 74, 78, 77, 73, 75, 81, 81, 68, 65, 71, 74, 71, 69, 32.61167 + 83, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61172 + 255, 69, 68, 64, 58, 63, 69, 68, 60, 57, 62, 66, 66, 62, 61, 64, 32.61173 + 68, 67, 70, 68, 62, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.61176 +/* Define image 'enemy8' of size 97x125x1x3 and type 'const unsigned char' */ 32.61177 +const unsigned char data_enemy8[] = { 32.61178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 198, 208, 206, 199, 200, 195, 32.61181 + 188, 189, 205, 215, 221, 218, 213, 215, 220, 234, 255, 255, 255, 255, 255, 255, 32.61182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61186 + 255, 255, 255, 255, 255, 255, 255, 153, 141, 143, 154, 197, 205, 203, 197, 200, 32.61187 + 196, 191, 192, 195, 208, 220, 222, 219, 217, 219, 220, 219, 214, 211, 226, 255, 32.61188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61192 + 255, 255, 255, 255, 255, 255, 214, 155, 160, 155, 163, 177, 188, 199, 198, 189, 32.61193 + 189, 186, 184, 189, 210, 224, 226, 212, 214, 229, 224, 204, 225, 221, 218, 220, 32.61194 + 225, 227, 228, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61198 + 255, 255, 255, 255, 255, 225, 166, 172, 183, 197, 222, 168, 164, 193, 205, 204, 32.61199 + 196, 196, 195, 195, 201, 201, 201, 216, 225, 209, 188, 198, 228, 210, 208, 207, 32.61200 + 210, 216, 219, 219, 215, 212, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61204 + 255, 255, 255, 255, 255, 177, 215, 206, 192, 188, 185, 176, 173, 174, 160, 167, 32.61205 + 162, 156, 162, 163, 161, 163, 177, 189, 191, 183, 194, 216, 208, 182, 207, 204, 32.61206 + 204, 206, 210, 210, 208, 206, 199, 203, 206, 207, 210, 226, 255, 255, 255, 255, 32.61207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61210 + 255, 223, 192, 205, 210, 194, 188, 184, 183, 181, 183, 184, 182, 182, 183, 174, 32.61211 + 172, 161, 156, 167, 169, 160, 155, 157, 155, 179, 208, 196, 165, 171, 208, 216, 32.61212 + 214, 214, 215, 217, 218, 215, 213, 220, 214, 203, 191, 191, 200, 211, 215, 207, 32.61213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.61216 + 160, 169, 176, 176, 177, 186, 195, 202, 197, 191, 179, 170, 166, 167, 168, 170, 32.61217 + 178, 174, 158, 153, 164, 166, 152, 141, 137, 141, 148, 158, 178, 194, 184, 162, 32.61218 + 196, 198, 201, 207, 215, 220, 225, 227, 234, 228, 217, 203, 197, 198, 201, 199, 32.61219 + 205, 204, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 139, 134, 157, 32.61222 + 169, 169, 176, 182, 183, 186, 186, 178, 170, 177, 173, 166, 161, 162, 169, 177, 32.61223 + 182, 176, 174, 159, 156, 170, 172, 157, 146, 135, 119, 129, 156, 161, 144, 149, 32.61224 + 174, 169, 172, 177, 185, 194, 203, 212, 217, 217, 221, 224, 221, 217, 212, 203, 32.61225 + 193, 200, 200, 200, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 97, 127, 147, 156, 32.61228 + 163, 169, 177, 179, 177, 175, 180, 184, 179, 167, 166, 167, 167, 166, 168, 173, 32.61229 + 178, 180, 160, 163, 155, 154, 168, 171, 160, 154, 161, 139, 128, 135, 143, 140, 32.61230 + 137, 136, 174, 174, 176, 177, 181, 185, 192, 196, 202, 209, 214, 217, 221, 223, 32.61231 + 222, 215, 198, 198, 200, 201, 204, 203, 255, 255, 255, 255, 255, 255, 255, 255, 32.61232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 95, 117, 134, 142, 154, 32.61234 + 169, 176, 175, 182, 176, 173, 180, 182, 174, 165, 161, 165, 167, 170, 172, 175, 32.61235 + 174, 169, 163, 163, 180, 184, 166, 152, 154, 159, 159, 167, 156, 145, 137, 131, 32.61236 + 130, 135, 144, 151, 174, 193, 190, 177, 173, 180, 186, 188, 191, 194, 196, 204, 32.61237 + 215, 220, 218, 198, 195, 194, 196, 199, 203, 203, 219, 255, 255, 255, 255, 255, 32.61238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 78, 119, 137, 149, 154, 32.61240 + 164, 175, 178, 174, 179, 172, 171, 173, 172, 162, 155, 150, 142, 152, 158, 151, 32.61241 + 139, 134, 141, 150, 165, 170, 165, 155, 151, 156, 159, 155, 146, 177, 181, 151, 32.61242 + 128, 132, 135, 126, 124, 142, 157, 162, 163, 170, 178, 181, 198, 196, 190, 185, 32.61243 + 188, 198, 205, 204, 206, 201, 198, 198, 199, 201, 201, 199, 198, 216, 255, 255, 32.61244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61245 + 255, 255, 255, 255, 255, 255, 255, 255, 179, 27, 38, 81, 127, 143, 156, 162, 32.61246 + 165, 172, 178, 177, 170, 174, 170, 167, 165, 160, 153, 149, 145, 147, 145, 146, 32.61247 + 148, 150, 150, 149, 148, 151, 164, 170, 161, 146, 142, 155, 171, 154, 173, 185, 32.61248 + 176, 150, 128, 124, 127, 131, 136, 144, 152, 161, 173, 179, 178, 183, 189, 192, 32.61249 + 192, 193, 194, 190, 183, 203, 199, 196, 199, 204, 205, 203, 197, 197, 195, 194, 32.61250 + 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 36, 44, 65, 107, 146, 156, 162, 32.61252 + 166, 169, 173, 177, 172, 165, 162, 161, 157, 152, 148, 147, 149, 149, 143, 139, 32.61253 + 142, 154, 162, 158, 146, 137, 144, 156, 169, 167, 152, 142, 153, 172, 172, 166, 32.61254 + 170, 181, 174, 149, 134, 134, 127, 126, 127, 133, 145, 155, 162, 162, 169, 179, 32.61255 + 191, 198, 200, 199, 194, 186, 192, 186, 185, 194, 208, 213, 208, 200, 197, 196, 32.61256 + 195, 194, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61257 + 255, 255, 255, 255, 255, 255, 255, 255, 179, 35, 43, 70, 107, 138, 154, 162, 32.61258 + 166, 166, 166, 167, 169, 163, 156, 149, 149, 146, 141, 141, 146, 154, 156, 144, 32.61259 + 147, 160, 165, 155, 141, 136, 140, 148, 145, 149, 158, 163, 158, 151, 147, 164, 32.61260 + 174, 176, 172, 177, 179, 160, 131, 118, 120, 124, 128, 134, 142, 154, 162, 175, 32.61261 + 180, 184, 183, 188, 196, 202, 203, 192, 181, 173, 179, 196, 211, 214, 209, 200, 32.61262 + 197, 197, 196, 193, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61263 + 255, 255, 255, 255, 255, 255, 255, 255, 25, 29, 34, 50, 91, 139, 159, 159, 32.61264 + 164, 165, 164, 162, 161, 157, 152, 149, 150, 151, 149, 145, 149, 156, 161, 159, 32.61265 + 152, 146, 150, 158, 158, 152, 149, 154, 141, 145, 147, 150, 151, 149, 146, 141, 32.61266 + 159, 165, 175, 181, 180, 171, 155, 144, 137, 141, 144, 145, 140, 138, 152, 162, 32.61267 + 167, 174, 181, 184, 185, 190, 193, 193, 202, 188, 174, 167, 177, 195, 212, 219, 32.61268 + 203, 200, 199, 197, 194, 190, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61269 + 255, 255, 255, 255, 255, 255, 255, 174, 12, 18, 23, 41, 75, 118, 152, 163, 32.61270 + 159, 154, 155, 155, 154, 152, 147, 145, 146, 155, 157, 156, 154, 157, 160, 156, 32.61271 + 148, 133, 119, 118, 137, 155, 159, 154, 154, 144, 158, 162, 149, 136, 137, 149, 32.61272 + 155, 165, 148, 154, 174, 173, 151, 145, 158, 154, 156, 157, 150, 135, 123, 129, 32.61273 + 137, 151, 165, 181, 190, 192, 193, 190, 185, 199, 196, 188, 174, 167, 177, 201, 32.61274 + 219, 207, 202, 200, 198, 194, 191, 187, 255, 255, 255, 255, 255, 255, 255, 255, 32.61275 + 255, 255, 255, 255, 255, 255, 255, 173, 10, 11, 17, 25, 58, 108, 149, 160, 32.61276 + 160, 160, 143, 144, 148, 148, 145, 142, 143, 147, 153, 156, 156, 154, 156, 153, 32.61277 + 143, 125, 115, 116, 129, 148, 155, 150, 151, 159, 165, 170, 159, 138, 134, 148, 32.61278 + 158, 156, 160, 153, 143, 140, 149, 159, 158, 150, 166, 165, 165, 156, 138, 123, 32.61279 + 124, 131, 153, 163, 178, 183, 187, 196, 201, 203, 183, 197, 203, 189, 170, 170, 32.61280 + 194, 216, 208, 203, 200, 197, 193, 190, 188, 186, 255, 255, 255, 255, 255, 255, 32.61281 + 255, 255, 255, 255, 255, 255, 255, 255, 15, 13, 22, 27, 46, 87, 134, 161, 32.61282 + 159, 148, 142, 135, 136, 139, 140, 143, 147, 152, 156, 161, 161, 162, 159, 147, 32.61283 + 130, 125, 122, 106, 114, 132, 147, 151, 149, 155, 165, 172, 155, 133, 142, 171, 32.61284 + 179, 165, 157, 131, 128, 138, 140, 139, 165, 182, 165, 165, 156, 155, 152, 138, 32.61285 + 115, 105, 108, 124, 136, 159, 180, 186, 185, 190, 200, 186, 197, 189, 185, 188, 32.61286 + 166, 172, 217, 204, 198, 198, 197, 190, 185, 184, 188, 255, 255, 255, 255, 255, 32.61287 + 255, 255, 255, 255, 255, 255, 255, 255, 176, 17, 16, 29, 39, 67, 109, 142, 32.61288 + 156, 148, 137, 132, 131, 131, 131, 132, 136, 142, 148, 152, 162, 153, 143, 136, 32.61289 + 127, 118, 115, 113, 106, 112, 132, 153, 162, 160, 160, 164, 149, 146, 142, 157, 32.61290 + 178, 172, 148, 137, 122, 128, 144, 150, 150, 167, 180, 167, 174, 168, 163, 152, 32.61291 + 133, 111, 101, 99, 126, 131, 148, 167, 180, 182, 187, 193, 194, 201, 189, 186, 32.61292 + 188, 167, 175, 212, 209, 204, 211, 210, 203, 195, 190, 187, 211, 255, 255, 255, 32.61293 + 255, 255, 255, 255, 255, 255, 255, 255, 173, 18, 16, 18, 32, 49, 87, 130, 32.61294 + 149, 146, 137, 130, 126, 126, 126, 128, 132, 137, 144, 151, 155, 152, 139, 126, 32.61295 + 121, 117, 112, 110, 107, 108, 115, 135, 156, 167, 165, 158, 154, 134, 146, 156, 32.61296 + 171, 180, 162, 136, 129, 157, 164, 177, 179, 174, 182, 189, 180, 170, 169, 163, 32.61297 + 149, 135, 122, 114, 104, 129, 127, 135, 152, 170, 179, 185, 189, 191, 194, 185, 32.61298 + 185, 191, 177, 184, 213, 220, 220, 224, 224, 216, 205, 194, 187, 186, 255, 255, 32.61299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 20, 15, 17, 34, 61, 100, 32.61300 + 138, 147, 140, 132, 128, 124, 118, 122, 129, 138, 145, 151, 152, 152, 134, 127, 32.61301 + 123, 123, 120, 115, 111, 107, 115, 123, 140, 155, 160, 154, 145, 140, 138, 153, 32.61302 + 162, 167, 165, 148, 135, 141, 176, 178, 180, 178, 174, 174, 176, 170, 166, 167, 32.61303 + 157, 143, 140, 142, 129, 108, 130, 129, 133, 145, 161, 175, 185, 190, 188, 189, 32.61304 + 184, 187, 194, 186, 187, 204, 226, 227, 231, 230, 224, 214, 200, 188, 188, 255, 32.61305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 17, 21, 16, 21, 44, 89, 32.61306 + 117, 142, 143, 134, 129, 124, 118, 114, 120, 130, 141, 148, 148, 140, 134, 123, 32.61307 + 121, 120, 121, 117, 111, 111, 113, 126, 136, 150, 154, 150, 144, 140, 139, 142, 32.61308 + 154, 158, 155, 149, 138, 138, 154, 167, 168, 167, 169, 171, 165, 159, 160, 180, 32.61309 + 172, 156, 143, 148, 153, 132, 100, 128, 131, 138, 143, 151, 164, 179, 188, 195, 32.61310 + 194, 191, 194, 195, 187, 182, 185, 212, 219, 228, 233, 234, 227, 209, 190, 193, 32.61311 + 190, 255, 255, 255, 255, 255, 255, 255, 255, 13, 13, 18, 21, 19, 36, 71, 32.61312 + 124, 135, 141, 136, 126, 119, 114, 111, 126, 129, 135, 143, 146, 142, 130, 121, 32.61313 + 123, 119, 113, 109, 105, 106, 115, 124, 136, 145, 154, 151, 143, 141, 142, 144, 32.61314 + 136, 145, 146, 143, 141, 134, 137, 155, 164, 167, 168, 170, 173, 158, 146, 152, 32.61315 + 182, 171, 154, 147, 157, 162, 138, 104, 125, 135, 143, 143, 143, 155, 169, 179, 32.61316 + 189, 187, 191, 195, 194, 192, 188, 182, 187, 201, 216, 227, 234, 233, 215, 192, 32.61317 + 196, 193, 255, 255, 255, 255, 255, 255, 255, 255, 13, 14, 18, 24, 29, 61, 32.61318 + 108, 144, 142, 137, 130, 120, 112, 112, 119, 138, 134, 133, 134, 135, 133, 126, 32.61319 + 120, 122, 113, 106, 104, 106, 114, 129, 140, 141, 147, 149, 142, 137, 138, 139, 32.61320 + 138, 134, 139, 136, 136, 141, 139, 142, 156, 153, 160, 158, 154, 153, 135, 131, 32.61321 + 153, 174, 164, 154, 153, 164, 166, 145, 119, 128, 140, 148, 147, 144, 151, 163, 32.61322 + 170, 180, 179, 186, 190, 190, 195, 197, 191, 180, 190, 196, 203, 214, 222, 214, 32.61323 + 195, 200, 194, 255, 255, 255, 255, 255, 255, 255, 8, 11, 13, 18, 26, 39, 32.61324 + 82, 139, 149, 140, 130, 125, 117, 110, 118, 131, 136, 129, 121, 119, 120, 123, 32.61325 + 123, 121, 119, 109, 103, 107, 118, 131, 144, 152, 142, 143, 139, 131, 128, 130, 32.61326 + 129, 123, 136, 136, 129, 130, 140, 143, 148, 161, 149, 158, 151, 144, 141, 129, 32.61327 + 143, 184, 172, 164, 157, 160, 166, 162, 143, 123, 135, 146, 154, 151, 150, 154, 32.61328 + 162, 164, 185, 183, 188, 189, 185, 191, 197, 190, 189, 189, 182, 176, 189, 207, 32.61329 + 209, 199, 203, 197, 212, 255, 255, 255, 255, 255, 255, 15, 20, 21, 16, 31, 32.61330 + 85, 134, 147, 138, 136, 123, 106, 102, 115, 128, 132, 135, 129, 124, 123, 125, 32.61331 + 128, 126, 124, 120, 114, 126, 152, 155, 135, 131, 144, 134, 139, 141, 134, 122, 32.61332 + 116, 120, 126, 128, 113, 119, 129, 131, 147, 160, 150, 131, 130, 133, 134, 129, 32.61333 + 131, 148, 167, 166, 152, 163, 169, 171, 172, 148, 125, 150, 150, 163, 159, 139, 32.61334 + 144, 161, 156, 173, 182, 187, 185, 183, 186, 192, 195, 199, 200, 189, 171, 161, 32.61335 + 168, 177, 179, 186, 189, 191, 255, 255, 255, 255, 255, 255, 28, 21, 22, 35, 32.61336 + 68, 118, 147, 142, 132, 131, 121, 108, 108, 121, 133, 137, 134, 125, 115, 112, 32.61337 + 117, 126, 133, 137, 138, 145, 147, 143, 142, 142, 130, 113, 137, 133, 128, 120, 32.61338 + 116, 116, 122, 126, 121, 118, 126, 132, 133, 136, 141, 134, 129, 126, 128, 129, 32.61339 + 129, 134, 152, 169, 166, 160, 166, 177, 176, 168, 157, 135, 148, 151, 162, 163, 32.61340 + 152, 146, 156, 160, 169, 177, 182, 182, 182, 186, 192, 195, 197, 194, 194, 191, 32.61341 + 179, 165, 160, 161, 165, 178, 194, 255, 255, 255, 255, 255, 185, 52, 40, 47, 32.61342 + 71, 106, 138, 147, 134, 133, 127, 117, 111, 118, 129, 136, 137, 128, 127, 126, 32.61343 + 131, 135, 140, 141, 140, 156, 144, 137, 133, 123, 108, 105, 113, 133, 126, 119, 32.61344 + 114, 118, 119, 121, 118, 113, 120, 125, 124, 130, 124, 123, 125, 124, 119, 122, 32.61345 + 124, 130, 140, 156, 170, 164, 168, 164, 185, 177, 157, 166, 145, 146, 157, 164, 32.61346 + 165, 164, 151, 150, 162, 169, 175, 178, 179, 181, 184, 186, 186, 191, 186, 191, 32.61347 + 201, 190, 164, 150, 153, 152, 164, 183, 255, 255, 255, 255, 255, 59, 63, 60, 32.61348 + 80, 106, 123, 136, 145, 141, 141, 124, 109, 111, 124, 135, 136, 134, 134, 137, 32.61349 + 141, 146, 149, 149, 143, 137, 141, 124, 113, 111, 95, 80, 98, 133, 126, 122, 32.61350 + 119, 118, 119, 118, 112, 107, 107, 119, 112, 109, 123, 122, 117, 128, 116, 115, 32.61351 + 118, 125, 135, 146, 158, 167, 163, 173, 158, 180, 167, 141, 168, 152, 147, 170, 32.61352 + 171, 162, 166, 159, 150, 157, 174, 178, 178, 178, 180, 182, 180, 177, 182, 181, 32.61353 + 184, 192, 185, 170, 163, 167, 161, 158, 165, 183, 255, 255, 255, 255, 63, 65, 32.61354 + 67, 92, 119, 129, 139, 151, 153, 144, 119, 101, 110, 128, 138, 136, 135, 150, 32.61355 + 144, 135, 131, 131, 133, 132, 131, 107, 114, 104, 85, 82, 102, 122, 130, 121, 32.61356 + 120, 118, 115, 110, 106, 103, 102, 109, 116, 107, 107, 125, 127, 120, 127, 111, 32.61357 + 115, 121, 129, 140, 150, 156, 156, 159, 172, 152, 164, 149, 131, 167, 152, 151, 32.61358 + 181, 178, 158, 160, 163, 155, 151, 171, 176, 177, 176, 179, 181, 178, 175, 172, 32.61359 + 178, 180, 179, 180, 183, 183, 180, 168, 163, 170, 186, 255, 255, 255, 255, 67, 32.61360 + 77, 76, 94, 118, 133, 144, 149, 141, 136, 114, 101, 114, 130, 134, 133, 138, 32.61361 + 143, 137, 128, 123, 120, 118, 114, 111, 99, 93, 88, 95, 111, 126, 126, 120, 32.61362 + 119, 118, 112, 103, 96, 95, 102, 109, 114, 116, 113, 117, 129, 129, 120, 118, 32.61363 + 112, 118, 128, 135, 142, 148, 150, 148, 155, 164, 149, 148, 136, 134, 166, 153, 32.61364 + 158, 178, 180, 160, 156, 162, 158, 150, 158, 164, 170, 172, 176, 180, 180, 177, 32.61365 + 165, 175, 180, 178, 181, 188, 187, 180, 165, 168, 181, 199, 255, 255, 255, 255, 32.61366 + 70, 79, 83, 102, 122, 134, 144, 144, 130, 124, 113, 111, 125, 127, 122, 123, 32.61367 + 137, 121, 120, 116, 114, 111, 106, 99, 94, 101, 86, 92, 121, 138, 130, 121, 32.61368 + 124, 115, 114, 108, 101, 97, 101, 111, 119, 119, 114, 117, 121, 119, 119, 119, 32.61369 + 111, 117, 126, 135, 138, 140, 143, 144, 141, 149, 154, 151, 137, 131, 151, 169, 32.61370 + 154, 165, 165, 173, 171, 161, 158, 159, 152, 146, 155, 164, 166, 168, 171, 174, 32.61371 + 173, 169, 170, 172, 177, 182, 182, 181, 179, 173, 164, 170, 190, 205, 255, 255, 32.61372 + 255, 61, 60, 80, 111, 128, 133, 142, 147, 135, 116, 112, 121, 132, 124, 108, 32.61373 + 113, 133, 115, 108, 95, 87, 87, 91, 95, 97, 91, 113, 128, 129, 131, 140, 32.61374 + 138, 128, 109, 109, 108, 107, 108, 113, 119, 122, 122, 109, 113, 113, 99, 104, 32.61375 + 117, 111, 122, 133, 140, 138, 137, 140, 142, 140, 146, 149, 157, 133, 132, 166, 32.61376 + 173, 157, 170, 154, 167, 183, 167, 153, 158, 158, 143, 153, 163, 163, 161, 164, 32.61377 + 169, 169, 178, 165, 163, 174, 177, 170, 171, 181, 184, 154, 142, 169, 206, 255, 32.61378 + 255, 255, 42, 59, 51, 99, 131, 129, 139, 137, 124, 108, 108, 113, 117, 116, 32.61379 + 114, 115, 120, 115, 99, 97, 107, 109, 110, 106, 93, 93, 115, 134, 140, 143, 32.61380 + 143, 127, 106, 104, 113, 116, 109, 104, 110, 118, 119, 121, 111, 104, 104, 109, 32.61381 + 111, 110, 108, 139, 141, 140, 138, 136, 135, 137, 139, 149, 149, 145, 138, 144, 32.61382 + 163, 176, 177, 168, 168, 161, 160, 171, 167, 156, 155, 161, 160, 159, 160, 162, 32.61383 + 164, 164, 163, 178, 174, 169, 171, 175, 174, 173, 172, 168, 172, 153, 155, 195, 32.61384 + 255, 255, 255, 23, 40, 44, 98, 133, 132, 139, 135, 121, 106, 112, 119, 114, 32.61385 + 109, 107, 112, 116, 109, 111, 123, 124, 107, 100, 108, 113, 119, 128, 132, 128, 32.61386 + 126, 127, 123, 115, 111, 116, 116, 109, 106, 110, 115, 115, 123, 104, 100, 113, 32.61387 + 118, 109, 116, 134, 131, 132, 134, 135, 136, 139, 143, 146, 142, 148, 147, 143, 32.61388 + 148, 163, 173, 173, 164, 159, 153, 155, 170, 170, 158, 155, 162, 160, 159, 160, 32.61389 + 162, 163, 163, 162, 161, 168, 169, 164, 161, 166, 168, 166, 160, 166, 151, 151, 32.61390 + 185, 225, 255, 175, 17, 26, 41, 102, 136, 134, 136, 128, 118, 110, 120, 123, 32.61391 + 110, 100, 101, 110, 115, 123, 126, 133, 126, 102, 96, 114, 128, 129, 135, 139, 32.61392 + 135, 125, 114, 111, 110, 117, 118, 115, 110, 110, 115, 118, 117, 121, 111, 111, 32.61393 + 117, 122, 118, 131, 148, 132, 135, 136, 136, 136, 137, 140, 142, 138, 148, 152, 32.61394 + 150, 153, 163, 170, 168, 161, 156, 147, 150, 167, 168, 156, 153, 157, 156, 156, 32.61395 + 158, 162, 165, 166, 167, 161, 175, 182, 175, 168, 172, 178, 178, 159, 161, 148, 32.61396 + 145, 172, 201, 255, 18, 21, 23, 49, 110, 138, 133, 132, 122, 117, 117, 121, 32.61397 + 116, 99, 95, 105, 119, 122, 147, 127, 113, 107, 98, 104, 120, 127, 128, 131, 32.61398 + 136, 135, 122, 107, 103, 108, 119, 117, 114, 114, 118, 123, 124, 123, 118, 130, 32.61399 + 126, 114, 116, 133, 140, 132, 134, 136, 137, 137, 136, 136, 138, 139, 137, 149, 32.61400 + 156, 154, 155, 164, 169, 167, 163, 160, 151, 151, 162, 162, 153, 153, 150, 147, 32.61401 + 151, 153, 161, 167, 170, 172, 158, 164, 171, 172, 166, 161, 165, 170, 165, 162, 32.61402 + 148, 142, 164, 195, 255, 18, 20, 26, 58, 115, 135, 131, 130, 121, 123, 122, 32.61403 + 115, 102, 89, 97, 115, 129, 130, 137, 109, 91, 91, 96, 109, 122, 120, 128, 32.61404 + 127, 124, 119, 107, 101, 110, 124, 122, 118, 116, 119, 124, 127, 126, 125, 121, 32.61405 + 130, 127, 118, 122, 137, 135, 120, 129, 132, 135, 137, 139, 141, 144, 146, 142, 32.61406 + 153, 158, 155, 157, 166, 170, 166, 157, 161, 155, 152, 157, 155, 151, 158, 148, 32.61407 + 146, 148, 150, 157, 163, 166, 170, 170, 160, 161, 173, 171, 156, 155, 166, 177, 32.61408 + 166, 150, 142, 160, 193, 255, 16, 17, 28, 64, 115, 128, 128, 128, 121, 129, 32.61409 + 122, 105, 91, 91, 108, 122, 127, 124, 97, 84, 86, 95, 99, 107, 117, 115, 32.61410 + 110, 116, 120, 116, 108, 107, 115, 123, 126, 122, 124, 127, 132, 127, 125, 124, 32.61411 + 129, 117, 115, 129, 136, 129, 125, 128, 138, 141, 143, 143, 142, 142, 143, 144, 32.61412 + 149, 157, 160, 158, 162, 170, 172, 165, 150, 157, 154, 149, 151, 150, 151, 162, 32.61413 + 155, 152, 150, 150, 152, 155, 157, 158, 179, 164, 162, 173, 177, 164, 161, 168, 32.61414 + 179, 167, 153, 145, 152, 186, 225, 14, 14, 30, 69, 113, 122, 123, 123, 115, 32.61415 + 126, 116, 97, 91, 105, 122, 121, 113, 105, 74, 70, 86, 99, 98, 101, 109, 32.61416 + 107, 96, 111, 120, 115, 112, 115, 120, 119, 126, 124, 128, 134, 137, 129, 126, 32.61417 + 126, 128, 113, 113, 131, 138, 126, 125, 138, 150, 152, 152, 149, 145, 141, 139, 32.61418 + 139, 151, 157, 159, 159, 166, 174, 171, 161, 152, 158, 152, 147, 149, 148, 148, 32.61419 + 158, 160, 156, 150, 148, 148, 149, 149, 150, 159, 159, 155, 156, 162, 164, 163, 32.61420 + 158, 168, 161, 158, 146, 142, 173, 205, 10, 9, 34, 73, 114, 118, 119, 118, 32.61421 + 106, 117, 111, 94, 96, 118, 132, 116, 98, 88, 78, 71, 83, 96, 97, 99, 32.61422 + 104, 100, 107, 116, 114, 101, 100, 116, 128, 129, 122, 122, 129, 138, 140, 133, 32.61423 + 129, 132, 123, 124, 126, 128, 128, 130, 134, 138, 149, 151, 153, 152, 150, 147, 32.61424 + 146, 146, 151, 156, 159, 162, 170, 178, 171, 157, 163, 163, 154, 148, 151, 150, 32.61425 + 147, 153, 161, 156, 151, 148, 148, 149, 150, 150, 153, 167, 166, 154, 159, 177, 32.61426 + 180, 165, 158, 155, 159, 148, 133, 163, 201, 68, 15, 36, 95, 108, 109, 116, 32.61427 + 113, 118, 114, 99, 92, 99, 115, 119, 99, 80, 72, 79, 86, 95, 99, 98, 32.61428 + 94, 91, 90, 115, 109, 103, 102, 108, 115, 120, 122, 128, 130, 134, 136, 136, 32.61429 + 134, 131, 131, 122, 125, 129, 133, 136, 141, 144, 145, 153, 159, 161, 158, 153, 32.61430 + 151, 151, 151, 164, 155, 156, 169, 177, 173, 167, 166, 172, 168, 159, 152, 149, 32.61431 + 148, 149, 150, 144, 152, 159, 157, 151, 147, 149, 155, 161, 161, 148, 152, 166, 32.61432 + 161, 161, 183, 176, 160, 139, 141, 132, 127, 172, 202, 17, 32, 91, 102, 102, 32.61433 + 111, 110, 115, 110, 94, 97, 110, 117, 107, 84, 78, 84, 82, 88, 94, 92, 32.61434 + 85, 86, 93, 100, 110, 106, 103, 105, 113, 118, 120, 118, 122, 123, 127, 128, 32.61435 + 129, 129, 130, 129, 125, 128, 133, 137, 140, 144, 148, 152, 159, 162, 164, 161, 32.61436 + 158, 157, 157, 157, 169, 165, 165, 171, 175, 171, 164, 160, 168, 164, 157, 151, 32.61437 + 148, 147, 146, 147, 149, 151, 154, 155, 153, 149, 148, 148, 150, 160, 153, 147, 32.61438 + 161, 163, 163, 175, 170, 161, 138, 134, 121, 118, 165, 255, 19, 32, 89, 97, 32.61439 + 96, 107, 110, 115, 108, 94, 100, 112, 113, 99, 80, 79, 88, 85, 94, 100, 32.61440 + 96, 85, 83, 95, 107, 106, 104, 103, 108, 117, 120, 119, 113, 114, 115, 117, 32.61441 + 119, 123, 124, 126, 126, 128, 132, 137, 140, 142, 148, 153, 156, 165, 164, 163, 32.61442 + 162, 162, 161, 161, 162, 170, 173, 174, 173, 173, 172, 165, 157, 163, 161, 157, 32.61443 + 153, 149, 147, 146, 146, 150, 149, 149, 150, 153, 152, 150, 146, 142, 158, 153, 32.61444 + 138, 145, 156, 162, 166, 164, 164, 148, 137, 119, 117, 159, 255, 17, 35, 90, 32.61445 + 95, 93, 108, 115, 119, 109, 97, 99, 104, 104, 100, 90, 86, 85, 94, 104, 32.61446 + 112, 108, 99, 94, 98, 108, 108, 104, 103, 109, 117, 120, 114, 109, 106, 110, 32.61447 + 114, 117, 122, 123, 123, 123, 130, 133, 137, 139, 143, 147, 154, 160, 169, 166, 32.61448 + 164, 165, 166, 164, 165, 168, 170, 179, 182, 178, 177, 180, 176, 166, 166, 164, 32.61449 + 162, 158, 155, 150, 149, 147, 145, 143, 146, 149, 154, 154, 155, 151, 147, 153, 32.61450 + 147, 132, 131, 139, 150, 159, 157, 169, 160, 149, 128, 124, 163, 255, 14, 37, 32.61451 + 90, 93, 90, 109, 119, 122, 108, 91, 98, 105, 103, 100, 96, 94, 94, 108, 32.61452 + 112, 114, 113, 111, 106, 105, 106, 108, 103, 100, 103, 109, 110, 106, 101, 103, 32.61453 + 107, 114, 120, 124, 123, 121, 119, 128, 131, 136, 137, 140, 145, 154, 162, 170, 32.61454 + 167, 166, 169, 168, 164, 166, 172, 171, 180, 183, 179, 179, 183, 180, 172, 170, 32.61455 + 169, 166, 164, 160, 155, 152, 148, 140, 142, 147, 148, 147, 148, 151, 152, 153, 32.61456 + 146, 143, 143, 133, 128, 137, 147, 154, 166, 156, 146, 128, 125, 168, 255, 13, 32.61457 + 35, 88, 89, 86, 108, 122, 123, 104, 81, 101, 115, 107, 96, 93, 102, 110, 32.61458 + 118, 114, 111, 109, 110, 111, 109, 107, 103, 100, 98, 98, 101, 101, 99, 96, 32.61459 + 102, 108, 115, 120, 123, 122, 119, 117, 124, 129, 134, 134, 136, 141, 152, 162, 32.61460 + 171, 169, 171, 174, 171, 163, 166, 174, 179, 179, 179, 176, 178, 179, 177, 172, 32.61461 + 174, 172, 170, 165, 161, 157, 152, 150, 142, 143, 146, 145, 142, 139, 141, 143, 32.61462 + 149, 138, 146, 156, 144, 131, 133, 136, 151, 155, 140, 131, 116, 117, 168, 255, 32.61463 + 14, 34, 86, 86, 85, 109, 125, 123, 101, 87, 105, 115, 103, 94, 98, 110, 32.61464 + 116, 109, 108, 109, 111, 115, 115, 111, 107, 98, 99, 100, 101, 100, 99, 98, 32.61465 + 97, 105, 107, 111, 113, 115, 116, 116, 115, 122, 128, 132, 132, 134, 139, 152, 32.61466 + 165, 172, 172, 179, 180, 175, 162, 167, 177, 188, 178, 175, 176, 181, 178, 176, 32.61467 + 175, 181, 178, 174, 168, 163, 159, 155, 152, 148, 145, 144, 143, 144, 143, 141, 32.61468 + 138, 140, 132, 144, 151, 141, 140, 143, 135, 145, 142, 127, 126, 115, 113, 164, 32.61469 + 255, 175, 33, 86, 86, 84, 111, 128, 125, 100, 101, 107, 105, 94, 98, 110, 32.61470 + 115, 112, 96, 102, 111, 120, 123, 119, 110, 103, 96, 101, 106, 108, 105, 103, 32.61471 + 100, 102, 107, 108, 108, 108, 109, 109, 112, 114, 122, 128, 134, 134, 135, 142, 32.61472 + 155, 169, 173, 176, 183, 187, 174, 161, 165, 179, 190, 176, 170, 177, 185, 182, 32.61473 + 180, 182, 187, 183, 179, 172, 167, 162, 159, 157, 154, 147, 143, 144, 150, 152, 32.61474 + 148, 141, 135, 129, 137, 137, 129, 145, 157, 140, 140, 135, 125, 133, 122, 115, 32.61475 + 158, 255, 255, 25, 55, 93, 83, 101, 140, 120, 95, 104, 103, 102, 103, 111, 32.61476 + 116, 104, 88, 94, 108, 120, 123, 121, 119, 112, 107, 106, 102, 101, 106, 106, 32.61477 + 101, 100, 105, 110, 112, 114, 114, 115, 116, 120, 124, 130, 132, 133, 136, 144, 32.61478 + 155, 170, 179, 182, 189, 190, 184, 169, 148, 155, 184, 184, 185, 181, 179, 181, 32.61479 + 183, 185, 185, 189, 185, 184, 179, 176, 171, 164, 160, 159, 157, 154, 150, 149, 32.61480 + 149, 149, 147, 141, 136, 132, 129, 130, 134, 137, 141, 144, 141, 133, 123, 116, 32.61481 + 115, 206, 255, 255, 22, 45, 81, 82, 105, 139, 122, 101, 103, 98, 100, 105, 32.61482 + 107, 99, 91, 89, 103, 111, 117, 117, 115, 115, 110, 104, 106, 101, 99, 102, 32.61483 + 103, 101, 104, 109, 115, 115, 118, 118, 117, 117, 119, 121, 133, 134, 135, 138, 32.61484 + 145, 158, 173, 183, 190, 192, 189, 184, 172, 153, 159, 188, 186, 187, 187, 181, 32.61485 + 184, 190, 193, 189, 193, 189, 188, 183, 179, 174, 167, 164, 162, 161, 159, 157, 32.61486 + 154, 153, 152, 149, 145, 140, 139, 137, 138, 137, 139, 139, 143, 137, 127, 122, 32.61487 + 118, 117, 255, 255, 255, 20, 33, 64, 84, 112, 135, 122, 110, 108, 102, 107, 32.61488 + 112, 103, 86, 85, 98, 110, 113, 112, 109, 109, 111, 107, 102, 105, 100, 98, 32.61489 + 100, 102, 103, 107, 113, 113, 114, 115, 116, 117, 119, 118, 117, 124, 128, 132, 32.61490 + 140, 151, 166, 183, 194, 198, 197, 190, 184, 177, 163, 169, 194, 192, 196, 194, 32.61491 + 185, 186, 199, 202, 193, 196, 194, 193, 188, 183, 178, 172, 170, 166, 166, 165, 32.61492 + 164, 162, 157, 155, 150, 150, 145, 144, 142, 142, 139, 138, 136, 138, 129, 122, 32.61493 + 122, 117, 114, 255, 255, 255, 19, 24, 50, 84, 118, 128, 120, 115, 109, 112, 32.61494 + 116, 109, 93, 82, 88, 102, 107, 108, 106, 104, 107, 111, 108, 102, 103, 101, 32.61495 + 99, 100, 101, 104, 108, 112, 111, 112, 114, 117, 121, 122, 120, 119, 123, 128, 32.61496 + 137, 148, 162, 177, 191, 199, 204, 205, 197, 188, 179, 168, 175, 202, 200, 205, 32.61497 + 200, 188, 191, 204, 205, 194, 201, 198, 198, 192, 189, 182, 178, 176, 170, 171, 32.61498 + 171, 171, 168, 164, 158, 155, 154, 148, 144, 142, 141, 138, 135, 132, 133, 128, 32.61499 + 123, 122, 112, 104, 255, 255, 255, 22, 21, 41, 88, 121, 118, 114, 117, 103, 32.61500 + 117, 119, 97, 81, 82, 92, 97, 96, 99, 101, 103, 109, 114, 111, 104, 101, 32.61501 + 102, 103, 103, 104, 105, 106, 108, 113, 116, 118, 121, 123, 125, 125, 124, 130, 32.61502 + 139, 150, 163, 173, 182, 189, 195, 207, 213, 204, 193, 184, 173, 183, 208, 209, 32.61503 + 211, 203, 192, 194, 204, 203, 192, 203, 203, 203, 198, 193, 187, 185, 183, 176, 32.61504 + 177, 179, 179, 177, 172, 168, 163, 158, 152, 146, 142, 140, 139, 134, 129, 128, 32.61505 + 128, 128, 125, 110, 103, 255, 255, 255, 178, 23, 38, 91, 120, 110, 111, 115, 32.61506 + 101, 118, 118, 94, 83, 92, 98, 93, 87, 95, 101, 106, 111, 114, 111, 104, 32.61507 + 99, 103, 104, 103, 103, 106, 106, 106, 115, 120, 123, 124, 125, 127, 129, 132, 32.61508 + 137, 145, 159, 173, 185, 194, 200, 205, 211, 215, 208, 199, 193, 186, 193, 213, 32.61509 + 217, 212, 203, 195, 198, 204, 202, 196, 206, 208, 208, 205, 198, 193, 193, 192, 32.61510 + 188, 187, 190, 188, 188, 183, 181, 176, 169, 163, 156, 152, 150, 145, 136, 128, 32.61511 + 123, 129, 130, 125, 116, 163, 255, 255, 255, 255, 23, 36, 93, 119, 102, 112, 32.61512 + 116, 101, 109, 110, 101, 97, 100, 98, 90, 85, 96, 104, 107, 109, 110, 107, 32.61513 + 102, 98, 102, 104, 101, 103, 109, 111, 111, 122, 130, 136, 138, 138, 143, 151, 32.61514 + 159, 158, 165, 176, 187, 197, 205, 212, 217, 214, 216, 207, 203, 207, 205, 205, 32.61515 + 216, 222, 209, 199, 200, 203, 203, 201, 202, 209, 212, 213, 210, 204, 199, 200, 32.61516 + 201, 199, 199, 201, 200, 200, 196, 194, 191, 187, 180, 174, 171, 167, 157, 142, 32.61517 + 129, 122, 129, 127, 122, 124, 255, 255, 255, 255, 255, 25, 37, 93, 117, 100, 32.61518 + 113, 119, 96, 97, 99, 103, 105, 100, 91, 83, 89, 99, 107, 108, 107, 106, 32.61519 + 103, 100, 98, 101, 102, 98, 100, 109, 115, 117, 133, 144, 153, 158, 159, 167, 32.61520 + 181, 194, 190, 192, 196, 199, 203, 206, 210, 215, 215, 212, 202, 202, 216, 219, 32.61521 + 213, 217, 224, 206, 197, 202, 207, 203, 203, 206, 209, 213, 215, 212, 206, 202, 32.61522 + 203, 205, 206, 206, 207, 207, 206, 204, 202, 201, 199, 193, 190, 187, 182, 167, 32.61523 + 145, 129, 123, 128, 122, 116, 124, 255, 255, 255, 255, 255, 19, 46, 103, 114, 32.61524 + 96, 113, 126, 100, 94, 93, 100, 104, 94, 85, 81, 98, 100, 102, 103, 104, 32.61525 + 103, 102, 101, 97, 94, 97, 105, 110, 110, 116, 124, 148, 159, 169, 172, 178, 32.61526 + 192, 203, 210, 211, 213, 214, 217, 218, 217, 214, 212, 213, 202, 183, 194, 201, 32.61527 + 196, 210, 211, 211, 202, 195, 199, 204, 204, 208, 214, 211, 207, 207, 213, 214, 32.61528 + 210, 208, 212, 214, 210, 210, 204, 195, 200, 203, 194, 195, 201, 211, 202, 197, 32.61529 + 193, 157, 128, 129, 133, 112, 119, 114, 255, 255, 255, 255, 255, 181, 51, 94, 32.61530 + 104, 96, 117, 128, 99, 92, 90, 97, 102, 99, 92, 91, 100, 101, 101, 101, 32.61531 + 101, 100, 98, 98, 105, 102, 105, 111, 116, 119, 127, 137, 163, 174, 184, 188, 32.61532 + 194, 206, 217, 221, 227, 222, 216, 209, 205, 208, 215, 220, 206, 203, 191, 203, 32.61533 + 206, 198, 204, 198, 209, 203, 199, 205, 209, 208, 207, 211, 211, 208, 212, 214, 32.61534 + 213, 207, 204, 206, 205, 206, 212, 211, 205, 201, 194, 183, 200, 202, 208, 216, 32.61535 + 221, 223, 191, 128, 118, 120, 105, 113, 161, 255, 255, 255, 255, 255, 255, 48, 32.61536 + 81, 92, 96, 122, 128, 104, 96, 90, 94, 100, 99, 97, 97, 102, 101, 100, 32.61537 + 98, 98, 96, 98, 97, 106, 105, 108, 110, 113, 120, 135, 149, 175, 184, 195, 32.61538 + 199, 205, 215, 223, 226, 226, 225, 222, 216, 210, 209, 210, 213, 202, 204, 196, 32.61539 + 204, 204, 197, 204, 197, 206, 204, 204, 210, 213, 211, 210, 209, 214, 214, 216, 32.61540 + 217, 214, 205, 201, 202, 204, 197, 192, 189, 191, 196, 202, 209, 218, 219, 214, 32.61541 + 228, 225, 235, 222, 131, 108, 107, 104, 114, 255, 255, 255, 255, 255, 255, 255, 32.61542 + 42, 70, 86, 100, 127, 124, 111, 102, 93, 90, 95, 99, 100, 99, 103, 101, 32.61543 + 100, 98, 97, 97, 100, 100, 103, 104, 107, 106, 110, 123, 145, 161, 183, 190, 32.61544 + 199, 205, 211, 218, 223, 224, 221, 221, 222, 225, 224, 221, 218, 212, 215, 215, 32.61545 + 201, 203, 202, 198, 213, 211, 203, 204, 206, 211, 213, 213, 211, 212, 215, 218, 32.61546 + 220, 218, 215, 208, 204, 201, 199, 196, 195, 200, 202, 190, 184, 193, 204, 214, 32.61547 + 218, 238, 222, 231, 236, 124, 101, 102, 120, 132, 255, 255, 255, 255, 255, 255, 32.61548 + 255, 43, 74, 94, 110, 130, 118, 112, 103, 93, 87, 93, 100, 104, 103, 101, 32.61549 + 100, 100, 99, 100, 101, 105, 106, 106, 111, 113, 113, 121, 140, 166, 183, 194, 32.61550 + 200, 206, 210, 215, 222, 224, 223, 228, 224, 220, 221, 222, 216, 206, 192, 173, 32.61551 + 170, 161, 171, 175, 172, 190, 192, 197, 201, 204, 207, 209, 212, 213, 215, 217, 32.61552 + 219, 220, 219, 217, 212, 204, 197, 192, 181, 161, 153, 147, 127, 125, 153, 162, 32.61553 + 174, 190, 225, 218, 234, 233, 107, 95, 103, 147, 158, 255, 255, 255, 255, 255, 32.61554 + 255, 255, 186, 85, 105, 117, 131, 113, 106, 100, 91, 86, 93, 105, 109, 107, 32.61555 + 99, 100, 101, 102, 104, 105, 109, 110, 109, 113, 117, 119, 133, 159, 189, 202, 32.61556 + 203, 206, 209, 212, 216, 222, 224, 222, 225, 225, 222, 215, 201, 173, 141, 114, 32.61557 + 88, 91, 100, 139, 159, 151, 163, 169, 188, 194, 202, 205, 208, 213, 214, 215, 32.61558 + 220, 223, 224, 225, 223, 216, 199, 183, 152, 130, 92, 75, 77, 72, 99, 161, 32.61559 + 167, 152, 151, 184, 197, 233, 224, 101, 94, 107, 175, 182, 255, 255, 255, 255, 32.61560 + 255, 255, 255, 255, 86, 107, 115, 127, 110, 103, 99, 91, 86, 93, 106, 110, 32.61561 + 106, 98, 99, 101, 103, 106, 107, 109, 109, 108, 113, 118, 124, 144, 176, 205, 32.61562 + 213, 209, 207, 210, 212, 215, 221, 222, 219, 218, 216, 208, 190, 160, 124, 92, 32.61563 + 69, 71, 73, 96, 157, 183, 165, 166, 170, 179, 190, 202, 207, 208, 215, 215, 32.61564 + 215, 225, 230, 233, 235, 233, 219, 187, 158, 106, 98, 80, 80, 92, 83, 109, 32.61565 + 179, 192, 155, 146, 163, 184, 227, 207, 104, 103, 118, 197, 194, 255, 255, 255, 32.61566 + 255, 255, 255, 255, 255, 78, 101, 109, 119, 105, 102, 99, 90, 85, 93, 105, 32.61567 + 109, 103, 98, 97, 99, 103, 106, 108, 109, 108, 110, 116, 121, 130, 153, 186, 32.61568 + 214, 220, 214, 213, 214, 215, 219, 224, 226, 223, 218, 207, 184, 150, 119, 102, 32.61569 + 102, 105, 97, 94, 115, 177, 195, 160, 148, 148, 167, 183, 198, 204, 210, 214, 32.61570 + 214, 211, 225, 230, 233, 238, 236, 216, 176, 137, 114, 106, 83, 80, 88, 77, 32.61571 + 107, 185, 180, 152, 167, 182, 198, 231, 192, 100, 109, 121, 202, 192, 255, 255, 32.61572 + 255, 255, 255, 255, 255, 255, 83, 113, 112, 101, 95, 89, 87, 80, 94, 112, 32.61573 + 111, 113, 113, 98, 97, 103, 107, 109, 111, 111, 109, 102, 119, 129, 144, 180, 32.61574 + 210, 218, 216, 214, 211, 213, 217, 218, 216, 212, 209, 207, 189, 171, 174, 190, 32.61575 + 197, 185, 171, 160, 160, 164, 172, 176, 174, 176, 178, 187, 191, 199, 206, 213, 32.61576 + 214, 213, 210, 221, 223, 225, 227, 226, 213, 186, 163, 144, 141, 145, 153, 154, 32.61577 + 156, 174, 195, 209, 227, 232, 222, 206, 217, 193, 99, 143, 166, 184, 184, 255, 32.61578 + 255, 255, 255, 255, 255, 255, 255, 90, 114, 103, 91, 95, 79, 77, 76, 89, 32.61579 + 102, 108, 116, 114, 96, 99, 109, 110, 109, 108, 108, 110, 110, 130, 143, 157, 32.61580 + 190, 215, 222, 221, 215, 211, 214, 216, 220, 219, 217, 216, 198, 204, 212, 217, 32.61581 + 220, 217, 212, 209, 203, 201, 201, 201, 197, 188, 184, 183, 195, 192, 194, 202, 32.61582 + 212, 217, 215, 210, 209, 211, 219, 226, 231, 227, 207, 189, 185, 179, 180, 189, 32.61583 + 195, 200, 214, 230, 222, 226, 234, 239, 226, 228, 212, 142, 164, 174, 182, 179, 32.61584 + 255, 255, 255, 255, 255, 255, 255, 255, 201, 110, 88, 78, 92, 76, 74, 84, 32.61585 + 92, 98, 113, 126, 121, 103, 109, 118, 119, 111, 107, 108, 113, 120, 142, 159, 32.61586 + 174, 201, 221, 225, 226, 218, 214, 215, 217, 221, 222, 222, 223, 218, 226, 232, 32.61587 + 228, 222, 218, 221, 226, 221, 217, 213, 210, 203, 193, 187, 184, 194, 189, 188, 32.61588 + 196, 209, 217, 216, 210, 216, 218, 224, 229, 234, 232, 217, 202, 193, 185, 181, 32.61589 + 188, 194, 199, 208, 218, 223, 221, 228, 246, 240, 232, 228, 184, 186, 186, 181, 32.61590 + 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 76, 67, 79, 74, 73, 32.61591 + 90, 94, 99, 125, 136, 129, 122, 120, 123, 124, 119, 114, 114, 119, 125, 149, 32.61592 + 169, 186, 208, 220, 223, 225, 220, 214, 215, 216, 221, 224, 226, 227, 231, 227, 32.61593 + 220, 218, 219, 218, 215, 211, 204, 201, 199, 200, 197, 189, 186, 186, 188, 186, 32.61594 + 189, 197, 209, 215, 218, 215, 224, 224, 228, 230, 233, 232, 220, 207, 203, 196, 32.61595 + 191, 192, 192, 194, 201, 208, 218, 217, 223, 244, 241, 231, 229, 200, 186, 181, 32.61596 + 175, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 74, 67, 69, 70, 32.61597 + 70, 91, 89, 109, 145, 141, 134, 136, 128, 125, 126, 125, 123, 123, 126, 132, 32.61598 + 155, 176, 192, 212, 219, 219, 222, 220, 215, 216, 217, 221, 224, 226, 228, 216, 32.61599 + 216, 219, 226, 233, 230, 219, 207, 200, 197, 198, 200, 200, 197, 196, 198, 194, 32.61600 + 197, 206, 211, 216, 219, 223, 224, 217, 220, 223, 226, 232, 236, 230, 222, 217, 32.61601 + 216, 215, 212, 206, 205, 214, 223, 218, 229, 233, 242, 240, 234, 230, 201, 178, 32.61602 + 176, 173, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 75, 68, 66, 32.61603 + 75, 79, 93, 86, 131, 177, 153, 144, 145, 134, 127, 130, 134, 131, 130, 132, 32.61604 + 142, 162, 180, 196, 215, 218, 218, 222, 219, 215, 216, 218, 222, 224, 228, 227, 32.61605 + 219, 223, 230, 231, 232, 229, 229, 226, 218, 214, 213, 215, 214, 210, 209, 212, 32.61606 + 206, 213, 220, 222, 221, 219, 221, 222, 220, 221, 224, 227, 233, 238, 235, 228, 32.61607 + 218, 221, 224, 221, 215, 214, 222, 232, 222, 242, 239, 240, 241, 235, 227, 198, 32.61608 + 176, 177, 177, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 69, 64, 32.61609 + 69, 83, 92, 96, 86, 158, 210, 164, 155, 145, 139, 137, 144, 145, 140, 139, 32.61610 + 143, 151, 166, 181, 197, 214, 218, 216, 220, 220, 218, 218, 220, 223, 225, 227, 32.61611 + 226, 234, 232, 232, 227, 225, 226, 231, 236, 229, 224, 223, 223, 221, 216, 215, 32.61612 + 218, 219, 221, 222, 222, 221, 218, 218, 219, 223, 226, 226, 227, 231, 235, 231, 32.61613 + 224, 222, 227, 231, 230, 227, 228, 232, 235, 225, 242, 234, 236, 241, 233, 225, 32.61614 + 204, 181, 177, 176, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 61, 32.61615 + 56, 71, 83, 96, 93, 83, 169, 226, 164, 154, 145, 144, 149, 157, 155, 146, 32.61616 + 145, 151, 154, 166, 178, 194, 213, 216, 212, 218, 221, 220, 220, 222, 225, 227, 32.61617 + 228, 226, 228, 225, 226, 232, 239, 240, 234, 225, 229, 223, 221, 225, 225, 221, 32.61618 + 221, 224, 230, 225, 222, 221, 223, 223, 222, 223, 216, 221, 223, 224, 229, 235, 32.61619 + 233, 228, 223, 225, 227, 226, 227, 228, 229, 225, 232, 240, 230, 237, 247, 233, 32.61620 + 227, 215, 183, 176, 172, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61621 + 65, 59, 67, 80, 100, 102, 81, 181, 219, 172, 146, 141, 156, 165, 163, 159, 32.61622 + 158, 160, 157, 164, 167, 181, 194, 207, 214, 217, 220, 225, 226, 226, 226, 226, 32.61623 + 225, 226, 226, 229, 228, 229, 228, 230, 232, 234, 234, 228, 231, 231, 227, 226, 32.61624 + 229, 229, 224, 231, 235, 235, 225, 220, 222, 223, 222, 221, 219, 218, 221, 227, 32.61625 + 232, 231, 230, 218, 232, 234, 223, 222, 234, 240, 233, 229, 232, 238, 240, 240, 32.61626 + 233, 225, 216, 183, 179, 176, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61627 + 255, 191, 64, 62, 82, 111, 100, 93, 150, 211, 171, 155, 156, 155, 148, 151, 32.61628 + 171, 196, 201, 191, 179, 176, 181, 195, 206, 209, 213, 218, 220, 221, 223, 224, 32.61629 + 227, 228, 230, 230, 231, 231, 234, 234, 235, 235, 236, 233, 227, 229, 229, 226, 32.61630 + 225, 229, 228, 224, 224, 229, 228, 221, 218, 221, 221, 222, 222, 223, 223, 226, 32.61631 + 230, 233, 233, 233, 226, 229, 232, 231, 232, 234, 234, 231, 232, 233, 237, 240, 32.61632 + 241, 237, 229, 221, 189, 184, 181, 181, 255, 255, 255, 255, 255, 255, 255, 255, 32.61633 + 255, 255, 255, 73, 64, 94, 127, 102, 105, 104, 183, 161, 168, 161, 165, 161, 32.61634 + 166, 194, 225, 223, 200, 198, 184, 182, 196, 207, 208, 212, 220, 219, 221, 223, 32.61635 + 225, 229, 230, 231, 231, 232, 233, 235, 236, 237, 236, 234, 230, 227, 228, 229, 32.61636 + 228, 228, 229, 228, 224, 226, 228, 226, 221, 220, 222, 221, 219, 219, 223, 227, 32.61637 + 229, 230, 233, 236, 237, 236, 228, 229, 236, 240, 237, 237, 239, 236, 234, 235, 32.61638 + 239, 243, 241, 233, 224, 206, 202, 198, 198, 255, 255, 255, 255, 255, 255, 255, 32.61639 + 255, 255, 255, 255, 71, 73, 104, 129, 108, 117, 81, 147, 163, 200, 193, 196, 32.61640 + 174, 151, 163, 203, 229, 228, 210, 189, 182, 196, 206, 207, 213, 225, 224, 225, 32.61641 + 226, 227, 230, 230, 230, 229, 229, 231, 234, 236, 237, 234, 231, 226, 229, 230, 32.61642 + 232, 233, 232, 230, 228, 225, 225, 224, 221, 218, 219, 217, 216, 213, 217, 223, 32.61643 + 227, 232, 232, 234, 237, 242, 242, 230, 221, 222, 228, 235, 241, 244, 238, 233, 32.61644 + 233, 237, 240, 240, 234, 224, 222, 216, 213, 212, 255, 255, 255, 255, 255, 255, 32.61645 + 255, 255, 255, 255, 255, 62, 85, 111, 121, 118, 124, 86, 115, 168, 224, 211, 32.61646 + 220, 203, 171, 167, 198, 225, 228, 217, 199, 188, 196, 206, 208, 212, 223, 225, 32.61647 + 228, 229, 230, 231, 231, 231, 231, 229, 231, 233, 234, 234, 231, 228, 226, 233, 32.61648 + 233, 236, 236, 234, 230, 225, 224, 215, 210, 206, 210, 215, 214, 212, 209, 219, 32.61649 + 225, 229, 233, 233, 236, 240, 244, 241, 236, 218, 199, 200, 221, 238, 236, 239, 32.61650 + 234, 234, 237, 240, 239, 233, 224, 223, 217, 214, 213, 255, 255, 255, 255, 255, 32.61651 + 255, 255, 255, 255, 255, 255, 189, 95, 123, 127, 126, 124, 93, 86, 141, 187, 32.61652 + 217, 235, 241, 228, 222, 226, 223, 211, 221, 210, 200, 202, 206, 210, 211, 216, 32.61653 + 222, 225, 227, 230, 231, 233, 233, 234, 231, 231, 231, 232, 231, 231, 230, 230, 32.61654 + 233, 231, 234, 236, 233, 224, 218, 218, 206, 200, 199, 210, 220, 224, 221, 220, 32.61655 + 228, 228, 230, 230, 232, 234, 238, 239, 243, 244, 225, 195, 188, 209, 226, 227, 32.61656 + 235, 233, 236, 238, 238, 237, 234, 226, 223, 218, 214, 212, 255, 255, 255, 255, 32.61657 + 255, 255, 255, 255, 255, 255, 255, 255, 87, 128, 142, 128, 124, 97, 80, 103, 32.61658 + 122, 181, 203, 221, 221, 218, 221, 223, 221, 217, 217, 212, 207, 209, 216, 217, 32.61659 + 213, 222, 225, 226, 228, 229, 230, 230, 230, 231, 229, 227, 226, 226, 228, 230, 32.61660 + 232, 228, 227, 228, 231, 227, 215, 208, 206, 206, 199, 201, 214, 231, 236, 234, 32.61661 + 234, 233, 230, 226, 222, 224, 224, 225, 225, 229, 236, 230, 210, 195, 199, 214, 32.61662 + 220, 223, 224, 233, 236, 234, 233, 230, 228, 227, 220, 216, 214, 255, 255, 255, 32.61663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 65, 121, 153, 127, 128, 108, 99, 32.61664 + 95, 90, 71, 118, 171, 198, 199, 196, 200, 206, 210, 218, 218, 210, 212, 221, 32.61665 + 223, 216, 224, 227, 227, 227, 226, 225, 224, 225, 228, 227, 224, 221, 222, 226, 32.61666 + 231, 234, 227, 223, 226, 228, 223, 210, 201, 200, 208, 201, 202, 220, 237, 244, 32.61667 + 242, 242, 241, 235, 225, 220, 220, 218, 216, 214, 211, 218, 226, 220, 202, 190, 32.61668 + 199, 214, 216, 221, 231, 233, 231, 227, 226, 226, 226, 219, 214, 213, 255, 255, 32.61669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 114, 137, 137, 120, 109, 32.61670 + 99, 92, 92, 75, 50, 98, 159, 202, 217, 200, 207, 209, 215, 217, 211, 211, 32.61671 + 215, 215, 213, 222, 224, 224, 226, 226, 226, 225, 226, 225, 229, 228, 225, 223, 32.61672 + 227, 228, 227, 232, 230, 225, 222, 216, 212, 208, 204, 216, 213, 214, 225, 236, 32.61673 + 240, 233, 224, 226, 225, 222, 226, 229, 227, 223, 216, 212, 209, 218, 227, 217, 32.61674 + 195, 196, 211, 222, 225, 234, 239, 233, 223, 223, 229, 225, 220, 216, 213, 255, 32.61675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 123, 137, 124, 32.61676 + 109, 97, 91, 93, 61, 34, 58, 91, 140, 187, 188, 185, 202, 211, 214, 211, 32.61677 + 207, 210, 214, 216, 222, 223, 223, 223, 225, 225, 226, 225, 226, 229, 231, 226, 32.61678 + 227, 230, 233, 231, 227, 231, 229, 219, 207, 204, 212, 224, 229, 225, 221, 218, 32.61679 + 213, 207, 201, 197, 168, 169, 175, 188, 206, 218, 220, 217, 194, 206, 223, 228, 32.61680 + 221, 206, 200, 201, 216, 223, 229, 233, 225, 218, 222, 227, 223, 220, 216, 255, 32.61681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 105, 133, 32.61682 + 130, 114, 98, 92, 95, 70, 50, 49, 54, 106, 184, 205, 189, 196, 206, 213, 32.61683 + 210, 205, 207, 214, 220, 219, 221, 222, 222, 224, 224, 225, 224, 223, 225, 228, 32.61684 + 224, 227, 231, 233, 231, 228, 227, 220, 210, 202, 204, 217, 228, 229, 228, 223, 32.61685 + 215, 204, 197, 196, 201, 223, 217, 211, 212, 218, 220, 217, 212, 204, 223, 238, 32.61686 + 235, 225, 215, 203, 192, 203, 212, 221, 223, 217, 213, 222, 230, 223, 220, 216, 32.61687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 32.61688 + 124, 129, 121, 107, 96, 94, 70, 58, 46, 42, 89, 174, 210, 193, 201, 207, 32.61689 + 211, 210, 207, 208, 213, 219, 218, 220, 221, 221, 223, 222, 224, 223, 219, 222, 32.61690 + 224, 223, 226, 230, 230, 227, 232, 221, 207, 202, 209, 217, 218, 217, 221, 223, 32.61691 + 222, 218, 214, 213, 216, 224, 230, 226, 216, 208, 204, 204, 204, 204, 227, 236, 32.61692 + 242, 234, 223, 213, 203, 197, 196, 206, 215, 216, 213, 215, 224, 233, 223, 219, 32.61693 + 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61694 + 194, 104, 117, 124, 117, 103, 94, 73, 60, 44, 44, 79, 150, 203, 206, 213, 32.61695 + 209, 208, 209, 211, 212, 213, 214, 218, 219, 221, 221, 222, 221, 223, 223, 219, 32.61696 + 223, 225, 225, 227, 229, 227, 222, 218, 212, 206, 208, 217, 222, 221, 215, 222, 32.61697 + 221, 219, 217, 217, 215, 214, 216, 222, 224, 217, 210, 205, 210, 222, 231, 231, 32.61698 + 229, 231, 232, 226, 213, 207, 209, 196, 206, 211, 212, 212, 217, 227, 233, 222, 32.61699 + 217, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61700 + 255, 255, 79, 96, 116, 122, 110, 99, 84, 70, 48, 48, 70, 125, 195, 218, 32.61701 + 220, 213, 208, 211, 214, 214, 212, 213, 218, 219, 221, 221, 223, 222, 222, 223, 32.61702 + 222, 225, 230, 230, 233, 232, 225, 217, 198, 209, 219, 222, 221, 220, 226, 230, 32.61703 + 232, 228, 223, 223, 223, 221, 213, 210, 224, 225, 221, 211, 205, 208, 219, 229, 32.61704 + 239, 235, 238, 244, 239, 222, 212, 214, 201, 208, 211, 210, 212, 220, 228, 229, 32.61705 + 220, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61706 + 255, 255, 255, 52, 69, 101, 118, 115, 107, 86, 74, 48, 46, 56, 101, 179, 32.61707 + 208, 220, 211, 208, 211, 212, 209, 211, 216, 219, 219, 221, 221, 221, 222, 222, 32.61708 + 224, 222, 225, 231, 232, 234, 230, 219, 207, 202, 214, 225, 228, 222, 223, 230, 32.61709 + 236, 232, 228, 226, 225, 227, 225, 219, 217, 225, 226, 224, 221, 224, 228, 233, 32.61710 + 235, 233, 237, 239, 237, 234, 227, 218, 208, 211, 215, 214, 212, 217, 226, 229, 32.61711 + 225, 219, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61712 + 255, 255, 255, 255, 182, 51, 86, 111, 117, 114, 96, 91, 65, 59, 64, 102, 32.61713 + 179, 202, 215, 211, 210, 212, 210, 206, 211, 219, 219, 220, 221, 221, 222, 221, 32.61714 + 222, 222, 218, 223, 227, 231, 232, 226, 212, 198, 221, 221, 221, 223, 226, 229, 32.61715 + 231, 230, 226, 222, 220, 219, 218, 216, 213, 213, 219, 215, 212, 215, 219, 221, 32.61716 + 216, 209, 206, 216, 216, 207, 209, 222, 218, 203, 219, 220, 217, 214, 221, 231, 32.61717 + 232, 224, 218, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61718 + 255, 255, 255, 255, 255, 255, 183, 72, 105, 118, 113, 107, 96, 69, 66, 63, 32.61719 + 88, 167, 201, 214, 215, 214, 210, 210, 213, 215, 213, 219, 218, 218, 218, 219, 32.61720 + 220, 222, 224, 224, 224, 226, 228, 232, 228, 218, 212, 222, 221, 218, 219, 223, 32.61721 + 225, 219, 213, 209, 211, 207, 201, 200, 200, 198, 194, 195, 192, 189, 193, 198, 32.61722 + 199, 196, 191, 217, 213, 210, 207, 205, 206, 209, 212, 222, 227, 226, 219, 222, 32.61723 + 233, 231, 219, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61724 + 255, 255, 255, 255, 255, 255, 255, 255, 65, 94, 110, 111, 105, 101, 82, 81, 32.61725 + 72, 84, 155, 197, 212, 215, 215, 211, 211, 213, 216, 214, 217, 218, 218, 217, 32.61726 + 218, 220, 222, 223, 224, 223, 225, 230, 234, 230, 222, 214, 225, 214, 212, 212, 32.61727 + 187, 154, 150, 171, 184, 189, 189, 186, 186, 188, 187, 182, 194, 190, 190, 195, 32.61728 + 201, 199, 194, 187, 165, 167, 173, 181, 189, 201, 213, 219, 226, 227, 227, 221, 32.61729 + 221, 230, 226, 215, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 81, 99, 108, 102, 100, 88, 32.61731 + 87, 68, 67, 131, 190, 210, 214, 216, 214, 213, 214, 217, 215, 217, 217, 218, 32.61732 + 218, 219, 220, 223, 223, 223, 223, 226, 230, 235, 232, 226, 219, 227, 219, 217, 32.61733 + 212, 185, 151, 149, 171, 174, 180, 184, 182, 185, 188, 186, 181, 178, 179, 186, 32.61734 + 198, 210, 214, 210, 206, 194, 195, 198, 205, 211, 221, 229, 231, 227, 229, 228, 32.61735 + 221, 221, 224, 219, 209, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 89, 106, 107, 103, 32.61737 + 94, 85, 62, 54, 113, 189, 205, 212, 217, 215, 213, 215, 218, 216, 218, 217, 32.61738 + 218, 218, 219, 219, 221, 224, 220, 222, 225, 229, 232, 233, 229, 224, 227, 229, 32.61739 + 223, 214, 211, 211, 209, 203, 205, 210, 215, 215, 215, 217, 216, 209, 192, 195, 32.61740 + 207, 221, 233, 242, 243, 241, 231, 228, 226, 225, 226, 226, 227, 225, 223, 224, 32.61741 + 224, 219, 218, 218, 214, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 101, 113, 32.61743 + 112, 106, 95, 73, 61, 106, 190, 202, 210, 216, 216, 214, 216, 218, 217, 218, 32.61744 + 218, 217, 218, 219, 220, 222, 224, 220, 222, 225, 228, 230, 230, 229, 227, 228, 32.61745 + 228, 221, 216, 224, 234, 229, 218, 221, 225, 228, 225, 222, 222, 219, 213, 210, 32.61746 + 210, 216, 224, 230, 235, 236, 235, 222, 218, 219, 221, 226, 229, 231, 225, 219, 32.61747 + 219, 220, 217, 215, 214, 209, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 88, 32.61749 + 108, 111, 111, 100, 88, 76, 101, 178, 199, 208, 216, 215, 214, 214, 218, 217, 32.61750 + 218, 218, 217, 217, 219, 220, 222, 222, 222, 223, 227, 228, 229, 228, 229, 228, 32.61751 + 230, 222, 221, 227, 224, 216, 218, 230, 221, 225, 224, 219, 216, 215, 213, 207, 32.61752 + 209, 210, 212, 214, 217, 218, 220, 220, 224, 222, 222, 225, 231, 232, 232, 228, 32.61753 + 217, 216, 215, 212, 207, 203, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61755 + 193, 103, 106, 105, 91, 91, 86, 96, 168, 195, 206, 216, 215, 214, 213, 217, 32.61756 + 216, 218, 217, 218, 217, 219, 221, 222, 223, 226, 227, 231, 230, 229, 228, 229, 32.61757 + 230, 230, 225, 224, 227, 223, 216, 219, 231, 232, 232, 231, 226, 225, 226, 224, 32.61758 + 221, 220, 222, 224, 227, 229, 230, 232, 233, 233, 228, 225, 225, 227, 225, 218, 32.61759 + 210, 217, 213, 209, 202, 191, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61761 + 255, 255, 102, 103, 97, 78, 87, 92, 100, 168, 193, 206, 216, 217, 214, 213, 32.61762 + 214, 214, 218, 217, 217, 217, 217, 220, 221, 222, 227, 230, 230, 231, 229, 227, 32.61763 + 228, 230, 227, 232, 226, 213, 216, 227, 227, 216, 221, 224, 222, 218, 219, 223, 32.61764 + 222, 221, 223, 227, 230, 229, 230, 229, 229, 229, 231, 228, 225, 227, 231, 229, 32.61765 + 223, 215, 212, 205, 199, 189, 177, 166, 255, 255, 255, 255, 255, 255, 255, 255, 32.61766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61767 + 255, 255, 255, 255, 91, 92, 75, 70, 70, 95, 161, 198, 204, 212, 223, 227, 32.61768 + 212, 204, 217, 216, 214, 213, 218, 223, 223, 219, 213, 225, 225, 225, 228, 229, 32.61769 + 227, 226, 224, 222, 221, 217, 215, 215, 217, 220, 223, 225, 226, 226, 223, 219, 32.61770 + 217, 220, 223, 228, 226, 224, 223, 225, 226, 228, 227, 224, 219, 220, 229, 230, 32.61771 + 222, 218, 217, 201, 191, 184, 175, 167, 255, 255, 255, 255, 255, 255, 255, 255, 32.61772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61773 + 255, 255, 255, 255, 255, 196, 91, 82, 76, 71, 92, 157, 199, 207, 210, 218, 32.61774 + 225, 216, 206, 211, 218, 215, 214, 215, 218, 221, 219, 216, 222, 223, 224, 224, 32.61775 + 225, 226, 223, 222, 219, 218, 217, 215, 215, 217, 219, 221, 226, 227, 226, 223, 32.61776 + 221, 220, 222, 224, 225, 225, 224, 221, 218, 216, 220, 222, 223, 223, 226, 230, 32.61777 + 228, 221, 218, 212, 191, 181, 176, 169, 164, 255, 255, 255, 255, 255, 255, 255, 32.61778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61779 + 255, 255, 255, 255, 255, 255, 255, 200, 90, 85, 71, 80, 137, 197, 208, 209, 32.61780 + 211, 222, 221, 211, 207, 216, 217, 216, 216, 217, 219, 221, 222, 223, 222, 223, 32.61781 + 223, 225, 223, 222, 220, 221, 221, 220, 219, 217, 219, 219, 219, 222, 223, 224, 32.61782 + 222, 219, 218, 220, 221, 220, 222, 223, 217, 212, 210, 216, 222, 222, 228, 231, 32.61783 + 229, 225, 221, 214, 201, 167, 159, 157, 151, 255, 255, 255, 255, 255, 255, 255, 32.61784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 88, 81, 81, 127, 189, 208, 32.61786 + 212, 207, 216, 222, 215, 211, 212, 214, 216, 217, 217, 219, 222, 227, 223, 222, 32.61787 + 222, 223, 225, 223, 220, 219, 223, 223, 224, 223, 222, 220, 219, 218, 221, 221, 32.61788 + 221, 221, 219, 218, 219, 219, 220, 221, 220, 217, 217, 219, 224, 227, 224, 230, 32.61789 + 231, 227, 225, 222, 209, 186, 152, 145, 144, 180, 255, 255, 255, 255, 255, 255, 32.61790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83, 87, 87, 126, 181, 32.61792 + 208, 216, 208, 213, 220, 218, 218, 208, 210, 215, 217, 219, 221, 225, 229, 223, 32.61793 + 223, 222, 223, 224, 223, 220, 217, 222, 222, 223, 222, 221, 219, 218, 218, 219, 32.61794 + 218, 219, 220, 219, 218, 218, 218, 221, 218, 216, 218, 225, 232, 233, 232, 229, 32.61795 + 228, 227, 224, 225, 220, 196, 165, 151, 144, 181, 255, 255, 255, 255, 255, 255, 32.61796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 72, 112, 32.61798 + 181, 209, 217, 210, 212, 216, 217, 224, 209, 211, 211, 213, 216, 221, 224, 226, 32.61799 + 224, 223, 223, 224, 225, 223, 221, 218, 220, 219, 220, 218, 218, 217, 217, 217, 32.61800 + 219, 219, 218, 220, 221, 221, 218, 218, 221, 217, 215, 220, 229, 236, 235, 230, 32.61801 + 231, 227, 223, 222, 218, 206, 177, 145, 139, 132, 255, 255, 255, 255, 255, 255, 32.61802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 51, 32.61804 + 101, 190, 209, 216, 211, 213, 213, 213, 221, 217, 213, 208, 206, 210, 218, 222, 32.61805 + 224, 226, 225, 224, 225, 226, 225, 222, 218, 221, 220, 221, 219, 219, 218, 218, 32.61806 + 219, 219, 220, 219, 221, 224, 223, 219, 219, 222, 221, 221, 224, 228, 232, 229, 32.61807 + 224, 231, 226, 222, 222, 208, 181, 150, 125, 121, 114, 255, 255, 255, 255, 255, 32.61808 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61810 + 255, 205, 198, 210, 211, 211, 215, 213, 209, 215, 226, 217, 204, 200, 206, 214, 32.61811 + 220, 222, 228, 226, 226, 226, 227, 226, 223, 219, 224, 223, 223, 221, 222, 221, 32.61812 + 222, 223, 220, 219, 219, 221, 224, 223, 218, 218, 224, 229, 229, 229, 229, 227, 32.61813 + 224, 221, 229, 223, 222, 220, 197, 160, 131, 113, 115, 255, 255, 255, 255, 255, 32.61814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61816 + 255, 255, 255, 238, 205, 210, 214, 212, 209, 209, 215, 218, 224, 224, 212, 196, 32.61817 + 193, 207, 221, 228, 224, 223, 224, 229, 231, 230, 225, 222, 222, 222, 220, 220, 32.61818 + 221, 226, 229, 231, 229, 226, 225, 223, 221, 217, 218, 229, 230, 228, 227, 230, 32.61819 + 231, 233, 232, 225, 223, 222, 215, 192, 164, 144, 135, 173, 255, 255, 255, 255, 32.61820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61822 + 255, 255, 255, 255, 255, 238, 208, 213, 213, 207, 205, 209, 212, 220, 223, 221, 32.61823 + 213, 208, 207, 209, 215, 219, 224, 228, 228, 228, 229, 228, 226, 226, 226, 226, 32.61824 + 225, 226, 230, 234, 225, 226, 225, 224, 223, 223, 220, 219, 225, 227, 225, 224, 32.61825 + 224, 226, 228, 227, 229, 223, 220, 213, 195, 168, 148, 174, 255, 255, 255, 255, 32.61826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61828 + 255, 255, 255, 255, 255, 255, 255, 255, 237, 204, 202, 201, 204, 210, 213, 218, 32.61829 + 222, 222, 216, 205, 198, 203, 212, 222, 228, 226, 224, 226, 228, 229, 229, 228, 32.61830 + 228, 226, 227, 230, 233, 225, 224, 225, 225, 225, 223, 219, 218, 224, 223, 222, 32.61831 + 219, 220, 222, 224, 221, 229, 223, 219, 217, 203, 177, 153, 255, 255, 255, 255, 32.61832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 195, 197, 202, 208, 210, 32.61835 + 213, 218, 223, 221, 210, 204, 198, 204, 213, 219, 219, 220, 223, 225, 226, 227, 32.61836 + 227, 225, 223, 222, 224, 226, 229, 228, 229, 228, 226, 220, 215, 213, 222, 222, 32.61837 + 219, 215, 216, 217, 219, 218, 221, 219, 222, 222, 207, 181, 189, 255, 255, 255, 32.61838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 194, 197, 32.61841 + 201, 209, 217, 224, 224, 223, 218, 204, 203, 205, 207, 212, 216, 219, 217, 227, 32.61842 + 228, 228, 226, 224, 223, 224, 225, 229, 228, 228, 227, 225, 219, 213, 212, 219, 32.61843 + 219, 215, 211, 211, 212, 215, 214, 210, 215, 225, 226, 208, 180, 255, 255, 255, 32.61844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 32.61847 + 181, 188, 200, 211, 219, 222, 224, 223, 216, 209, 202, 202, 205, 210, 212, 211, 32.61848 + 226, 227, 229, 229, 228, 227, 228, 229, 228, 225, 225, 224, 223, 220, 216, 215, 32.61849 + 215, 214, 211, 206, 207, 210, 213, 213, 213, 218, 227, 226, 205, 202, 255, 255, 32.61850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61853 + 255, 255, 234, 195, 200, 209, 215, 220, 220, 223, 219, 211, 206, 203, 202, 205, 32.61854 + 206, 214, 216, 220, 223, 226, 227, 228, 230, 229, 225, 223, 222, 221, 218, 215, 32.61855 + 214, 216, 215, 211, 207, 208, 211, 217, 217, 228, 226, 225, 218, 200, 255, 255, 32.61856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61859 + 255, 255, 255, 255, 235, 192, 199, 208, 216, 219, 223, 222, 220, 213, 205, 202, 32.61860 + 206, 210, 205, 208, 214, 217, 221, 223, 227, 228, 233, 228, 224, 221, 219, 216, 32.61861 + 212, 213, 221, 221, 215, 209, 209, 211, 215, 216, 237, 228, 219, 210, 255, 255, 32.61862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61865 + 255, 255, 255, 255, 255, 255, 255, 233, 195, 199, 199, 205, 215, 221, 219, 215, 32.61866 + 216, 216, 216, 224, 220, 217, 214, 214, 216, 220, 221, 220, 221, 222, 223, 226, 32.61867 + 224, 223, 224, 222, 225, 220, 215, 210, 207, 209, 210, 217, 208, 210, 207, 255, 32.61868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 200, 191, 201, 210, 214, 32.61872 + 219, 224, 223, 219, 223, 222, 219, 216, 214, 213, 213, 212, 213, 213, 216, 221, 32.61873 + 224, 227, 228, 228, 226, 225, 219, 217, 216, 218, 217, 214, 207, 195, 195, 213, 32.61874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 197, 199, 32.61878 + 203, 213, 222, 222, 218, 216, 218, 217, 216, 214, 213, 209, 206, 207, 208, 211, 32.61879 + 215, 220, 221, 223, 223, 228, 222, 217, 219, 223, 222, 215, 205, 201, 182, 173, 32.61880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 32.61884 + 204, 200, 203, 212, 215, 215, 211, 212, 214, 215, 214, 212, 212, 209, 209, 209, 32.61885 + 211, 213, 214, 215, 215, 214, 220, 218, 218, 222, 222, 215, 201, 187, 182, 158, 32.61886 + 142, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61890 + 255, 255, 240, 203, 204, 204, 204, 207, 207, 208, 208, 210, 212, 214, 215, 218, 32.61891 + 217, 217, 217, 216, 215, 215, 212, 213, 215, 222, 223, 218, 202, 181, 164, 150, 32.61892 + 131, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61896 + 255, 255, 255, 255, 255, 209, 204, 201, 201, 201, 202, 202, 205, 209, 214, 216, 32.61897 + 222, 222, 222, 222, 221, 222, 222, 220, 219, 221, 226, 224, 208, 183, 156, 136, 32.61898 + 133, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61902 + 255, 255, 255, 255, 255, 255, 255, 255, 216, 198, 198, 199, 200, 203, 208, 212, 32.61903 + 216, 224, 224, 223, 222, 222, 224, 223, 221, 227, 224, 225, 222, 212, 190, 162, 32.61904 + 141, 134, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 198, 201, 202, 205, 208, 32.61909 + 211, 213, 223, 221, 221, 219, 219, 219, 218, 217, 222, 217, 219, 226, 230, 223, 32.61910 + 201, 180, 141, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 213, 32.61915 + 214, 214, 214, 222, 220, 222, 228, 225, 217, 215, 220, 222, 219, 229, 234, 212, 32.61916 + 231, 221, 226, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61921 + 255, 255, 213, 210, 211, 208, 208, 214, 216, 215, 220, 226, 226, 225, 228, 223, 32.61922 + 196, 217, 219, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61927 + 255, 255, 255, 255, 255, 241, 206, 202, 204, 207, 211, 215, 221, 226, 228, 232, 32.61928 + 220, 185, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 209, 207, 206, 220, 226, 32.61934 + 232, 220, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61938 + 255, 255, 255, 255, 255, 255, 219, 184, 195, 193, 185, 186, 183, 177, 178, 196, 32.61939 + 206, 212, 209, 205, 207, 212, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61944 + 255, 255, 255, 255, 135, 125, 127, 139, 182, 192, 189, 182, 185, 182, 177, 180, 32.61945 + 185, 198, 210, 212, 209, 207, 209, 211, 210, 205, 202, 222, 255, 255, 255, 255, 32.61946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61950 + 255, 255, 255, 206, 131, 136, 134, 142, 157, 168, 180, 178, 171, 171, 167, 165, 32.61951 + 171, 196, 212, 212, 200, 202, 217, 212, 192, 213, 209, 206, 209, 214, 218, 217, 32.61952 + 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61956 + 255, 255, 214, 133, 139, 157, 176, 213, 142, 137, 165, 179, 178, 169, 168, 169, 32.61957 + 168, 177, 180, 185, 198, 209, 193, 171, 184, 214, 195, 193, 194, 196, 202, 207, 32.61958 + 205, 205, 207, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61962 + 255, 255, 146, 193, 179, 157, 148, 145, 138, 135, 137, 123, 132, 127, 120, 126, 32.61963 + 128, 126, 132, 151, 167, 169, 161, 173, 195, 188, 162, 186, 185, 185, 188, 192, 32.61964 + 194, 192, 192, 189, 195, 198, 199, 202, 223, 255, 255, 255, 255, 255, 255, 255, 32.61965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 162, 32.61968 + 177, 185, 158, 144, 137, 133, 131, 133, 134, 134, 134, 137, 128, 128, 117, 111, 32.61969 + 122, 125, 116, 114, 124, 125, 151, 179, 168, 137, 145, 181, 190, 190, 191, 193, 32.61970 + 194, 195, 195, 194, 205, 201, 190, 179, 179, 191, 201, 207, 199, 255, 255, 255, 32.61971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 129, 135, 138, 32.61974 + 136, 136, 142, 150, 153, 145, 134, 122, 114, 110, 111, 115, 117, 127, 122, 106, 32.61975 + 101, 114, 116, 102, 93, 95, 104, 111, 122, 144, 159, 150, 130, 165, 168, 173, 32.61976 + 180, 187, 194, 199, 203, 213, 210, 198, 186, 180, 183, 186, 185, 193, 194, 215, 32.61977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 123, 109, 128, 138, 131, 136, 32.61980 + 138, 138, 137, 135, 127, 117, 120, 115, 108, 103, 104, 111, 119, 125, 119, 116, 32.61981 + 103, 100, 114, 116, 101, 93, 87, 74, 84, 113, 119, 101, 108, 134, 133, 137, 32.61982 + 144, 153, 163, 174, 183, 190, 190, 197, 200, 198, 194, 191, 182, 174, 185, 186, 32.61983 + 190, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 77, 104, 119, 127, 130, 132, 136, 32.61986 + 134, 130, 124, 127, 129, 121, 110, 108, 109, 109, 108, 110, 115, 120, 122, 102, 32.61987 + 105, 97, 97, 111, 114, 103, 98, 105, 86, 75, 83, 94, 92, 90, 93, 133, 32.61988 + 134, 137, 141, 146, 152, 159, 164, 172, 178, 186, 189, 193, 196, 195, 192, 177, 32.61989 + 180, 186, 191, 195, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61991 + 255, 255, 255, 255, 255, 255, 255, 255, 71, 90, 107, 113, 121, 134, 137, 132, 32.61992 + 138, 127, 123, 125, 125, 115, 105, 102, 108, 110, 113, 115, 118, 117, 112, 106, 32.61993 + 107, 124, 128, 110, 96, 98, 103, 101, 109, 98, 87, 80, 77, 78, 85, 95, 32.61994 + 104, 131, 152, 151, 140, 138, 145, 152, 155, 158, 161, 163, 171, 183, 190, 190, 32.61995 + 171, 172, 175, 180, 189, 194, 196, 216, 255, 255, 255, 255, 255, 255, 255, 255, 32.61996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.61997 + 255, 255, 255, 255, 255, 255, 255, 183, 57, 90, 104, 116, 120, 126, 135, 135, 32.61998 + 127, 131, 122, 117, 116, 112, 102, 93, 90, 88, 100, 106, 99, 87, 81, 88, 32.61999 + 98, 113, 116, 111, 102, 98, 103, 103, 99, 86, 114, 120, 90, 69, 75, 80, 32.62000 + 73, 76, 96, 113, 120, 124, 131, 141, 144, 162, 159, 153, 148, 151, 161, 169, 32.62001 + 172, 175, 174, 175, 179, 185, 191, 192, 192, 193, 212, 255, 255, 255, 255, 255, 32.62002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62003 + 255, 255, 255, 255, 255, 174, 8, 18, 57, 99, 109, 118, 124, 125, 130, 134, 32.62004 + 131, 120, 122, 117, 111, 107, 101, 91, 86, 86, 95, 97, 98, 100, 100, 100, 32.62005 + 99, 98, 101, 111, 117, 109, 94, 90, 102, 114, 93, 109, 124, 115, 91, 71, 32.62006 + 67, 73, 79, 87, 97, 107, 119, 131, 139, 139, 145, 149, 153, 153, 152, 153, 32.62007 + 151, 146, 167, 167, 169, 176, 186, 191, 190, 188, 190, 190, 189, 210, 255, 255, 32.62008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62009 + 255, 255, 255, 255, 255, 255, 17, 23, 40, 78, 113, 116, 120, 122, 123, 127, 32.62010 + 129, 123, 113, 109, 105, 99, 95, 89, 86, 86, 92, 94, 93, 96, 108, 114, 32.62011 + 109, 97, 88, 94, 106, 119, 117, 100, 90, 101, 118, 113, 105, 109, 122, 115, 32.62012 + 92, 77, 80, 74, 74, 78, 86, 99, 111, 118, 119, 129, 140, 150, 156, 158, 32.62013 + 157, 152, 146, 153, 151, 153, 167, 185, 196, 193, 187, 191, 191, 190, 189, 210, 32.62014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62015 + 255, 255, 255, 255, 255, 175, 16, 22, 43, 77, 104, 114, 118, 118, 116, 117, 32.62016 + 118, 117, 111, 103, 96, 94, 89, 84, 83, 88, 93, 99, 96, 104, 114, 119, 32.62017 + 109, 94, 88, 92, 98, 95, 96, 106, 109, 105, 98, 94, 105, 115, 117, 113, 32.62018 + 118, 122, 103, 77, 65, 68, 73, 79, 86, 95, 107, 116, 134, 140, 142, 141, 32.62019 + 144, 150, 157, 159, 150, 142, 138, 149, 170, 188, 195, 195, 191, 192, 192, 191, 32.62020 + 188, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62021 + 255, 255, 255, 255, 255, 14, 14, 14, 25, 61, 103, 120, 116, 115, 113, 112, 32.62022 + 110, 108, 104, 99, 93, 95, 96, 92, 89, 91, 98, 103, 105, 104, 101, 105, 32.62023 + 113, 112, 104, 101, 104, 91, 93, 95, 96, 98, 96, 90, 85, 103, 108, 117, 32.62024 + 124, 124, 115, 101, 90, 83, 88, 92, 93, 88, 89, 100, 114, 126, 134, 139, 32.62025 + 140, 140, 142, 145, 145, 157, 147, 135, 135, 147, 169, 189, 202, 194, 195, 194, 32.62026 + 192, 189, 185, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62027 + 255, 255, 255, 255, 172, 5, 7, 7, 17, 46, 84, 113, 118, 110, 102, 102, 32.62028 + 102, 101, 96, 91, 89, 89, 98, 100, 99, 98, 101, 104, 100, 94, 86, 73, 32.62029 + 72, 91, 108, 110, 105, 102, 92, 104, 108, 93, 80, 81, 92, 100, 109, 95, 32.62030 + 98, 121, 120, 98, 92, 104, 100, 102, 103, 96, 80, 70, 74, 88, 110, 125, 32.62031 + 139, 146, 147, 146, 141, 136, 152, 152, 148, 139, 136, 149, 177, 200, 197, 197, 32.62032 + 195, 193, 189, 186, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62033 + 255, 255, 255, 255, 171, 3, 2, 2, 5, 30, 76, 110, 117, 112, 108, 87, 32.62034 + 88, 91, 92, 88, 85, 86, 90, 96, 99, 99, 98, 100, 99, 87, 73, 67, 32.62035 + 71, 84, 103, 108, 102, 101, 109, 115, 117, 106, 86, 80, 94, 104, 103, 107, 32.62036 + 100, 90, 87, 96, 106, 104, 96, 112, 113, 111, 104, 86, 71, 71, 82, 109, 32.62037 + 123, 134, 139, 142, 148, 154, 156, 138, 153, 163, 153, 138, 140, 167, 196, 200, 32.62038 + 200, 197, 194, 190, 187, 185, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62039 + 255, 255, 255, 255, 255, 5, 2, 10, 9, 23, 57, 98, 118, 111, 96, 87, 32.62040 + 78, 79, 81, 83, 85, 90, 95, 99, 106, 106, 107, 104, 92, 78, 70, 71, 32.62041 + 60, 70, 87, 102, 106, 104, 110, 120, 127, 107, 85, 94, 123, 131, 117, 107, 32.62042 + 77, 72, 82, 84, 86, 112, 129, 112, 113, 107, 103, 103, 89, 66, 57, 60, 32.62043 + 79, 92, 115, 136, 142, 141, 146, 156, 144, 157, 149, 149, 152, 131, 140, 194, 32.62044 + 200, 203, 203, 199, 190, 182, 181, 184, 255, 255, 255, 255, 255, 255, 255, 255, 32.62045 + 255, 255, 255, 255, 255, 173, 6, 4, 14, 19, 40, 76, 104, 109, 98, 83, 32.62046 + 76, 73, 73, 73, 74, 78, 84, 91, 95, 107, 98, 88, 81, 74, 65, 62, 32.62047 + 64, 59, 68, 88, 109, 118, 116, 116, 120, 105, 102, 98, 112, 133, 127, 103, 32.62048 + 91, 69, 73, 89, 95, 95, 116, 129, 117, 124, 120, 115, 105, 86, 66, 54, 32.62049 + 53, 81, 87, 104, 123, 135, 140, 145, 151, 153, 160, 150, 147, 149, 131, 136, 32.62050 + 185, 203, 210, 214, 213, 204, 193, 186, 183, 207, 255, 255, 255, 255, 255, 255, 32.62051 + 255, 255, 255, 255, 255, 171, 8, 5, 4, 14, 26, 59, 94, 108, 99, 85, 32.62052 + 74, 68, 68, 68, 70, 74, 80, 87, 94, 98, 97, 84, 70, 65, 64, 59, 32.62053 + 57, 58, 61, 72, 91, 113, 123, 121, 114, 110, 90, 102, 112, 127, 136, 118, 32.62054 + 92, 83, 106, 111, 125, 127, 122, 132, 140, 131, 121, 122, 116, 103, 89, 79, 32.62055 + 68, 60, 85, 85, 93, 110, 128, 139, 145, 149, 150, 153, 144, 144, 150, 138, 32.62056 + 143, 182, 208, 216, 222, 221, 213, 201, 190, 183, 181, 255, 255, 255, 255, 255, 32.62057 + 255, 255, 255, 255, 255, 255, 4, 9, 3, 1, 15, 37, 71, 101, 104, 92, 32.62058 + 80, 72, 66, 60, 64, 71, 80, 88, 94, 95, 95, 79, 72, 67, 67, 67, 32.62059 + 62, 58, 58, 68, 80, 97, 112, 117, 111, 102, 97, 94, 109, 118, 123, 121, 32.62060 + 104, 91, 95, 127, 127, 131, 129, 126, 126, 128, 125, 121, 122, 112, 100, 97, 32.62061 + 100, 87, 68, 89, 89, 93, 105, 121, 135, 145, 150, 147, 148, 143, 145, 152, 32.62062 + 144, 145, 169, 205, 214, 219, 219, 215, 206, 194, 184, 183, 255, 255, 255, 255, 32.62063 + 255, 255, 255, 255, 255, 255, 171, 7, 10, 1, 3, 21, 61, 84, 101, 96, 32.62064 + 84, 75, 67, 58, 56, 62, 73, 84, 91, 91, 85, 79, 68, 66, 67, 68, 32.62065 + 64, 58, 60, 64, 79, 92, 106, 110, 106, 100, 95, 94, 97, 109, 113, 110, 32.62066 + 104, 93, 93, 109, 121, 122, 121, 123, 125, 121, 115, 116, 136, 131, 115, 102, 32.62067 + 107, 112, 93, 63, 90, 95, 99, 104, 112, 125, 139, 148, 153, 152, 149, 149, 32.62068 + 150, 142, 137, 144, 180, 192, 205, 213, 217, 214, 199, 184, 189, 187, 255, 255, 32.62069 + 255, 255, 255, 255, 255, 255, 7, 5, 8, 9, 3, 15, 44, 92, 98, 98, 32.62070 + 88, 74, 63, 57, 51, 68, 71, 78, 86, 89, 85, 75, 66, 68, 64, 60, 32.62071 + 56, 52, 53, 64, 75, 90, 101, 110, 107, 99, 97, 98, 100, 92, 101, 102, 32.62072 + 99, 96, 89, 92, 110, 120, 125, 124, 128, 131, 116, 104, 112, 142, 131, 114, 32.62073 + 108, 118, 124, 99, 68, 91, 101, 109, 107, 107, 116, 130, 139, 147, 145, 146, 32.62074 + 149, 148, 143, 139, 136, 146, 163, 181, 197, 210, 215, 202, 184, 192, 190, 255, 32.62075 + 255, 255, 255, 255, 255, 255, 255, 5, 4, 5, 8, 10, 36, 78, 108, 101, 32.62076 + 90, 80, 66, 56, 55, 59, 80, 77, 76, 77, 80, 78, 71, 65, 69, 60, 32.62077 + 53, 51, 55, 63, 78, 91, 94, 101, 103, 96, 91, 92, 93, 92, 87, 92, 32.62078 + 89, 89, 94, 92, 95, 111, 112, 120, 117, 114, 113, 95, 91, 114, 135, 125, 32.62079 + 115, 117, 128, 130, 108, 84, 96, 108, 116, 113, 110, 115, 124, 129, 138, 137, 32.62080 + 141, 144, 141, 145, 147, 141, 129, 141, 152, 164, 183, 198, 195, 183, 192, 190, 32.62081 + 255, 255, 255, 255, 255, 255, 255, 1, 4, 2, 3, 6, 14, 52, 103, 107, 32.62082 + 95, 82, 73, 63, 54, 61, 74, 80, 72, 64, 62, 65, 68, 68, 66, 66, 32.62083 + 56, 50, 56, 67, 80, 93, 103, 95, 98, 93, 85, 82, 84, 83, 77, 90, 32.62084 + 90, 83, 84, 94, 97, 101, 117, 108, 119, 112, 104, 103, 91, 104, 145, 136, 32.62085 + 128, 120, 123, 131, 127, 107, 90, 105, 116, 122, 119, 116, 120, 123, 123, 143, 32.62086 + 138, 142, 140, 135, 141, 145, 136, 132, 132, 129, 130, 150, 176, 185, 182, 191, 32.62087 + 189, 210, 255, 255, 255, 255, 255, 255, 6, 11, 9, 0, 7, 56, 100, 108, 32.62088 + 92, 88, 71, 52, 46, 59, 72, 76, 78, 74, 69, 68, 70, 73, 73, 71, 32.62089 + 67, 61, 75, 101, 103, 86, 82, 95, 87, 92, 94, 87, 75, 69, 73, 79, 32.62090 + 81, 66, 71, 81, 83, 99, 112, 104, 91, 91, 94, 95, 91, 93, 109, 128, 32.62091 + 130, 116, 126, 132, 135, 136, 112, 92, 119, 121, 133, 127, 104, 109, 122, 115, 32.62092 + 131, 137, 141, 136, 133, 134, 137, 139, 136, 137, 130, 118, 115, 129, 146, 155, 32.62093 + 169, 178, 184, 255, 255, 255, 255, 255, 255, 18, 9, 7, 14, 41, 86, 108, 32.62094 + 99, 84, 79, 66, 54, 54, 67, 79, 83, 79, 70, 60, 57, 62, 71, 80, 32.62095 + 84, 85, 94, 96, 92, 93, 93, 81, 64, 89, 86, 80, 73, 67, 69, 73, 32.62096 + 79, 72, 71, 77, 85, 84, 88, 92, 88, 86, 88, 88, 90, 90, 94, 112, 32.62097 + 130, 127, 121, 126, 140, 138, 130, 119, 99, 117, 122, 132, 133, 117, 111, 117, 32.62098 + 119, 127, 132, 136, 133, 132, 134, 137, 137, 132, 130, 131, 134, 128, 119, 121, 32.62099 + 129, 139, 161, 182, 255, 255, 255, 255, 255, 180, 38, 25, 27, 47, 74, 101, 32.62100 + 104, 86, 81, 72, 61, 57, 64, 77, 85, 86, 73, 72, 70, 75, 82, 87, 32.62101 + 88, 87, 105, 93, 85, 84, 74, 59, 56, 64, 85, 78, 68, 66, 67, 71, 32.62102 + 70, 69, 62, 71, 73, 75, 78, 75, 71, 77, 80, 79, 79, 84, 90, 99, 32.62103 + 115, 130, 124, 127, 123, 145, 137, 117, 126, 110, 115, 128, 133, 134, 129, 116, 32.62104 + 111, 121, 127, 130, 132, 130, 131, 134, 134, 130, 128, 122, 128, 141, 133, 111, 32.62105 + 102, 112, 118, 138, 163, 255, 255, 255, 255, 255, 42, 46, 42, 56, 77, 87, 32.62106 + 95, 97, 89, 85, 68, 53, 56, 72, 84, 88, 86, 81, 82, 85, 90, 96, 32.62107 + 96, 90, 84, 90, 73, 64, 62, 46, 31, 49, 84, 75, 71, 68, 67, 68, 32.62108 + 67, 61, 56, 56, 68, 60, 57, 71, 70, 65, 79, 70, 71, 74, 81, 91, 32.62109 + 103, 115, 123, 119, 131, 116, 138, 124, 98, 127, 112, 115, 139, 140, 130, 131, 32.62110 + 123, 111, 118, 132, 133, 132, 130, 130, 132, 130, 123, 123, 118, 121, 129, 125, 32.62111 + 112, 109, 117, 118, 123, 139, 163, 255, 255, 255, 255, 45, 46, 45, 65, 86, 32.62112 + 91, 94, 99, 97, 86, 61, 45, 55, 77, 89, 90, 88, 99, 91, 82, 78, 32.62113 + 78, 80, 81, 80, 55, 62, 55, 36, 34, 54, 74, 81, 70, 69, 67, 64, 32.62114 + 59, 55, 52, 51, 57, 64, 55, 55, 73, 75, 68, 78, 62, 67, 75, 83, 32.62115 + 93, 103, 109, 111, 114, 127, 106, 120, 104, 86, 122, 111, 116, 148, 145, 123, 32.62116 + 125, 127, 116, 112, 129, 131, 131, 130, 131, 133, 130, 124, 116, 118, 119, 116, 32.62117 + 117, 120, 122, 123, 116, 119, 135, 161, 255, 255, 255, 255, 48, 56, 51, 63, 32.62118 + 83, 91, 96, 95, 83, 76, 54, 43, 59, 79, 87, 90, 92, 92, 84, 75, 32.62119 + 70, 67, 65, 63, 60, 47, 41, 39, 46, 63, 78, 78, 71, 68, 67, 61, 32.62120 + 52, 45, 44, 51, 58, 62, 64, 61, 65, 77, 77, 68, 66, 60, 69, 79, 32.62121 + 86, 92, 100, 102, 99, 106, 116, 101, 100, 88, 88, 117, 108, 121, 145, 145, 32.62122 + 125, 119, 126, 119, 109, 116, 122, 126, 126, 128, 132, 132, 129, 113, 119, 121, 32.62123 + 116, 115, 122, 121, 116, 107, 116, 140, 168, 255, 255, 255, 255, 48, 56, 56, 32.62124 + 70, 84, 88, 93, 87, 68, 62, 51, 53, 70, 78, 76, 81, 93, 72, 67, 32.62125 + 63, 61, 60, 55, 48, 43, 52, 37, 43, 72, 90, 82, 73, 75, 64, 61, 32.62126 + 55, 48, 44, 48, 58, 66, 66, 61, 63, 67, 65, 65, 65, 57, 64, 74, 32.62127 + 83, 86, 88, 93, 94, 91, 99, 105, 102, 88, 81, 103, 119, 108, 125, 129, 32.62128 + 136, 134, 121, 119, 118, 111, 104, 113, 120, 122, 123, 126, 129, 128, 120, 118, 32.62129 + 117, 117, 115, 112, 110, 110, 107, 107, 123, 156, 183, 255, 255, 255, 41, 37, 32.62130 + 52, 76, 88, 87, 91, 90, 75, 56, 54, 66, 81, 77, 65, 71, 90, 66, 32.62131 + 55, 42, 34, 36, 40, 44, 46, 42, 64, 79, 80, 83, 92, 90, 79, 58, 32.62132 + 56, 55, 54, 55, 60, 66, 71, 69, 57, 61, 61, 47, 52, 65, 59, 69, 32.62133 + 80, 87, 85, 85, 88, 90, 88, 94, 99, 104, 83, 81, 115, 122, 109, 129, 32.62134 + 114, 127, 144, 126, 112, 116, 116, 99, 109, 117, 118, 116, 119, 121, 121, 130, 32.62135 + 115, 110, 116, 114, 102, 102, 112, 119, 96, 92, 131, 180, 255, 255, 255, 26, 32.62136 + 36, 23, 66, 90, 82, 88, 84, 70, 54, 58, 65, 70, 71, 69, 70, 73, 32.62137 + 64, 46, 44, 54, 58, 59, 55, 42, 44, 66, 85, 91, 96, 96, 79, 57, 32.62138 + 53, 62, 65, 58, 53, 59, 67, 71, 70, 62, 55, 55, 60, 62, 61, 59, 32.62139 + 87, 88, 87, 85, 83, 82, 84, 86, 96, 97, 91, 86, 91, 110, 123, 126, 32.62140 + 122, 123, 116, 116, 125, 121, 110, 109, 113, 112, 111, 112, 114, 116, 115, 114, 32.62141 + 128, 121, 117, 118, 118, 116, 111, 108, 106, 114, 104, 114, 165, 255, 255, 255, 32.62142 + 11, 19, 16, 65, 92, 85, 88, 82, 70, 56, 66, 74, 71, 64, 62, 64, 32.62143 + 68, 58, 58, 70, 71, 56, 49, 57, 62, 70, 79, 83, 79, 77, 80, 74, 32.62144 + 66, 60, 65, 65, 58, 55, 59, 64, 67, 72, 56, 52, 66, 69, 62, 67, 32.62145 + 85, 78, 79, 81, 82, 83, 86, 90, 93, 89, 95, 94, 89, 94, 108, 118, 32.62146 + 120, 114, 114, 105, 107, 122, 122, 110, 106, 113, 111, 110, 111, 113, 114, 114, 32.62147 + 112, 107, 115, 115, 111, 108, 111, 110, 106, 100, 108, 100, 108, 154, 212, 255, 32.62148 + 171, 5, 5, 13, 69, 95, 87, 85, 75, 67, 60, 74, 78, 67, 55, 56, 32.62149 + 62, 67, 75, 75, 82, 75, 51, 45, 63, 77, 78, 84, 88, 84, 74, 65, 32.62150 + 60, 59, 64, 66, 63, 58, 58, 63, 66, 66, 69, 60, 60, 69, 71, 70, 32.62151 + 80, 97, 79, 79, 80, 80, 80, 82, 85, 87, 83, 92, 96, 94, 96, 106, 32.62152 + 113, 113, 110, 108, 98, 101, 118, 119, 107, 102, 106, 105, 105, 108, 111, 115, 32.62153 + 115, 114, 104, 119, 126, 119, 112, 115, 118, 116, 97, 103, 95, 101, 140, 179, 32.62154 + 255, 8, 9, 2, 21, 77, 97, 86, 81, 69, 66, 67, 75, 71, 56, 50, 32.62155 + 60, 71, 74, 98, 78, 64, 56, 46, 53, 69, 76, 77, 80, 85, 82, 69, 32.62156 + 54, 50, 55, 64, 62, 59, 59, 63, 68, 69, 68, 63, 75, 74, 62, 63, 32.62157 + 81, 87, 79, 78, 79, 80, 80, 79, 79, 81, 82, 80, 92, 99, 96, 97, 32.62158 + 106, 110, 110, 110, 110, 101, 101, 112, 112, 103, 103, 97, 97, 98, 103, 108, 32.62159 + 114, 117, 118, 100, 107, 113, 115, 109, 103, 103, 109, 104, 102, 93, 95, 130, 32.62160 + 172, 255, 8, 8, 5, 30, 82, 94, 84, 79, 68, 72, 72, 69, 57, 46, 32.62161 + 52, 70, 81, 82, 90, 61, 43, 42, 47, 60, 70, 68, 75, 74, 71, 63, 32.62162 + 51, 46, 55, 67, 65, 61, 59, 62, 67, 70, 69, 68, 64, 73, 70, 61, 32.62163 + 65, 80, 78, 63, 70, 73, 76, 79, 81, 83, 86, 88, 84, 95, 99, 96, 32.62164 + 98, 106, 110, 108, 103, 109, 103, 100, 105, 103, 99, 106, 94, 94, 94, 98, 32.62165 + 103, 109, 112, 114, 111, 101, 102, 114, 113, 98, 93, 102, 113, 105, 93, 94, 32.62166 + 122, 166, 255, 6, 5, 7, 36, 82, 87, 81, 77, 67, 78, 72, 59, 46, 32.62167 + 48, 63, 77, 79, 77, 51, 38, 38, 47, 50, 58, 65, 63, 57, 63, 64, 32.62168 + 59, 51, 50, 57, 65, 68, 64, 63, 69, 71, 69, 64, 63, 68, 56, 54, 32.62169 + 68, 75, 68, 64, 67, 75, 78, 80, 81, 80, 80, 81, 82, 87, 95, 97, 32.62170 + 95, 99, 107, 108, 103, 92, 101, 98, 93, 95, 94, 95, 106, 99, 96, 94, 32.62171 + 94, 96, 99, 101, 101, 118, 103, 101, 115, 116, 104, 97, 103, 114, 103, 95, 32.62172 + 93, 111, 155, 209, 4, 2, 9, 41, 80, 81, 75, 72, 61, 75, 66, 50, 32.62173 + 46, 62, 76, 76, 65, 58, 28, 26, 39, 53, 50, 52, 57, 55, 43, 55, 32.62174 + 63, 58, 54, 57, 59, 58, 65, 63, 65, 73, 74, 68, 64, 64, 66, 51, 32.62175 + 51, 69, 73, 61, 60, 73, 85, 87, 87, 84, 80, 77, 75, 75, 87, 93, 32.62176 + 94, 94, 101, 109, 105, 95, 91, 97, 91, 86, 91, 90, 90, 100, 101, 97, 32.62177 + 93, 91, 91, 92, 92, 91, 96, 94, 93, 95, 100, 102, 99, 93, 101, 96, 32.62178 + 96, 93, 97, 139, 178, 0, 0, 13, 45, 81, 77, 71, 67, 52, 66, 61, 32.62179 + 47, 50, 75, 86, 70, 49, 41, 31, 27, 36, 49, 49, 50, 52, 47, 51, 32.62180 + 60, 57, 43, 39, 55, 67, 68, 59, 59, 66, 75, 77, 71, 67, 67, 58, 32.62181 + 57, 59, 62, 62, 62, 66, 70, 81, 83, 85, 84, 82, 80, 79, 79, 84, 32.62182 + 89, 92, 94, 102, 110, 103, 89, 97, 98, 89, 83, 89, 88, 85, 91, 99, 32.62183 + 95, 90, 87, 87, 88, 89, 87, 88, 101, 101, 92, 97, 115, 115, 100, 89, 32.62184 + 88, 97, 91, 86, 125, 171, 60, 3, 15, 67, 75, 68, 68, 62, 64, 63, 32.62185 + 48, 45, 53, 72, 73, 53, 31, 25, 32, 39, 47, 51, 48, 45, 39, 37, 32.62186 + 59, 53, 46, 44, 47, 54, 58, 60, 65, 67, 69, 71, 71, 69, 66, 65, 32.62187 + 56, 57, 61, 65, 68, 71, 73, 74, 81, 87, 89, 86, 81, 80, 80, 80, 32.62188 + 93, 84, 84, 97, 105, 101, 95, 94, 102, 98, 92, 85, 82, 81, 83, 84, 32.62189 + 80, 88, 94, 95, 89, 85, 87, 90, 95, 95, 83, 87, 104, 99, 96, 118, 32.62190 + 107, 93, 75, 84, 84, 87, 140, 200, 5, 11, 62, 68, 61, 63, 58, 61, 32.62191 + 59, 43, 50, 64, 74, 61, 38, 29, 35, 34, 40, 46, 42, 35, 34, 40, 32.62192 + 47, 54, 49, 44, 46, 52, 57, 58, 56, 59, 60, 62, 63, 64, 64, 64, 32.62193 + 63, 57, 60, 62, 67, 70, 72, 76, 77, 84, 86, 88, 85, 82, 82, 82, 32.62194 + 82, 94, 90, 90, 96, 99, 95, 88, 84, 94, 90, 86, 80, 77, 76, 76, 32.62195 + 77, 82, 85, 88, 89, 87, 84, 82, 82, 82, 94, 88, 85, 99, 101, 99, 32.62196 + 110, 104, 95, 74, 76, 71, 77, 130, 255, 7, 11, 60, 63, 55, 59, 58, 32.62197 + 61, 56, 43, 53, 66, 69, 53, 34, 30, 39, 35, 44, 50, 44, 33, 31, 32.62198 + 42, 54, 50, 47, 44, 49, 58, 62, 58, 52, 51, 52, 55, 57, 58, 59, 32.62199 + 60, 60, 60, 62, 65, 68, 70, 74, 79, 82, 87, 86, 85, 85, 85, 84, 32.62200 + 85, 86, 94, 97, 98, 97, 96, 95, 88, 80, 86, 84, 80, 76, 74, 72, 32.62201 + 72, 72, 79, 79, 79, 83, 86, 86, 82, 78, 74, 92, 88, 76, 83, 94, 32.62202 + 98, 101, 98, 99, 84, 79, 70, 73, 123, 255, 5, 14, 61, 61, 52, 60, 32.62203 + 63, 65, 57, 46, 52, 58, 60, 54, 44, 37, 36, 42, 52, 60, 56, 45, 32.62204 + 41, 45, 52, 50, 46, 44, 50, 58, 61, 55, 48, 45, 47, 52, 55, 57, 32.62205 + 58, 57, 57, 60, 63, 65, 68, 69, 73, 80, 84, 89, 84, 82, 84, 85, 32.62206 + 83, 85, 88, 90, 99, 102, 98, 97, 99, 95, 85, 85, 84, 81, 79, 76, 32.62207 + 73, 72, 72, 71, 72, 74, 79, 84, 87, 84, 83, 79, 87, 82, 71, 70, 32.62208 + 79, 89, 95, 92, 104, 96, 91, 79, 81, 124, 255, 2, 16, 61, 59, 48, 32.62209 + 61, 67, 68, 56, 40, 51, 59, 59, 54, 50, 45, 43, 55, 59, 61, 60, 32.62210 + 55, 50, 49, 50, 50, 45, 42, 45, 51, 53, 49, 42, 42, 46, 52, 58, 32.62211 + 59, 58, 55, 53, 58, 61, 64, 66, 66, 71, 79, 85, 88, 83, 82, 85, 32.62212 + 85, 81, 83, 90, 89, 98, 101, 96, 96, 100, 97, 89, 85, 85, 83, 81, 32.62213 + 77, 74, 73, 71, 63, 66, 71, 74, 75, 78, 79, 81, 85, 80, 81, 82, 32.62214 + 75, 70, 77, 86, 89, 102, 94, 89, 76, 80, 128, 255, 0, 14, 59, 55, 32.62215 + 44, 60, 70, 69, 52, 30, 54, 69, 63, 50, 47, 53, 59, 62, 58, 53, 32.62216 + 53, 54, 55, 53, 51, 45, 42, 40, 40, 43, 43, 41, 38, 43, 47, 53, 32.62217 + 58, 58, 57, 53, 51, 57, 59, 63, 63, 62, 68, 77, 85, 87, 83, 84, 32.62218 + 89, 84, 79, 80, 90, 94, 95, 94, 92, 92, 95, 91, 86, 88, 86, 84, 32.62219 + 81, 76, 74, 71, 71, 62, 66, 68, 69, 67, 67, 69, 71, 81, 72, 83, 32.62220 + 98, 87, 75, 75, 76, 87, 91, 78, 74, 64, 72, 128, 255, 1, 13, 57, 32.62221 + 52, 43, 61, 73, 69, 49, 36, 58, 69, 59, 48, 52, 61, 65, 53, 51, 32.62222 + 50, 54, 58, 58, 53, 49, 42, 43, 44, 45, 44, 43, 42, 41, 46, 49, 32.62223 + 50, 52, 53, 51, 50, 49, 55, 58, 61, 61, 60, 66, 77, 86, 86, 84, 32.62224 + 89, 93, 86, 76, 78, 92, 100, 93, 87, 91, 93, 92, 87, 86, 92, 89, 32.62225 + 85, 82, 76, 74, 71, 71, 68, 68, 66, 67, 68, 68, 66, 66, 72, 67, 32.62226 + 81, 93, 84, 83, 85, 75, 81, 78, 65, 69, 63, 68, 124, 255, 171, 13, 32.62227 + 58, 53, 45, 64, 76, 71, 48, 50, 60, 59, 50, 52, 64, 68, 61, 39, 32.62228 + 43, 52, 61, 66, 62, 53, 46, 40, 45, 50, 52, 49, 47, 47, 46, 49, 32.62229 + 49, 47, 47, 46, 47, 47, 48, 55, 58, 60, 59, 58, 63, 76, 85, 85, 32.62230 + 86, 93, 97, 87, 74, 79, 93, 104, 90, 84, 91, 96, 93, 90, 92, 97, 32.62231 + 94, 89, 83, 78, 75, 74, 73, 73, 67, 63, 66, 72, 76, 72, 66, 68, 32.62232 + 65, 75, 76, 70, 87, 96, 78, 74, 71, 63, 76, 72, 71, 122, 255, 255, 32.62233 + 9, 34, 62, 45, 56, 90, 66, 41, 52, 55, 55, 57, 65, 70, 57, 37, 32.62234 + 37, 49, 61, 64, 62, 60, 55, 50, 49, 45, 45, 50, 50, 45, 44, 49, 32.62235 + 51, 53, 54, 54, 53, 53, 55, 56, 59, 57, 56, 55, 58, 68, 78, 87, 32.62236 + 90, 97, 100, 96, 83, 64, 71, 103, 103, 102, 98, 94, 92, 92, 91, 92, 32.62237 + 96, 95, 91, 89, 85, 82, 77, 74, 73, 73, 70, 68, 67, 69, 69, 71, 32.62238 + 72, 71, 68, 67, 67, 69, 70, 70, 75, 74, 69, 67, 68, 77, 186, 255, 32.62239 + 255, 7, 25, 52, 46, 59, 89, 68, 47, 51, 50, 53, 59, 61, 53, 44, 32.62240 + 38, 46, 52, 58, 58, 56, 56, 53, 47, 49, 44, 44, 47, 48, 46, 49, 32.62241 + 53, 55, 55, 55, 56, 55, 54, 54, 53, 61, 58, 55, 54, 57, 66, 79, 32.62242 + 87, 95, 100, 98, 96, 87, 71, 79, 108, 106, 107, 103, 95, 94, 99, 99, 32.62243 + 95, 100, 99, 95, 93, 88, 85, 80, 77, 76, 75, 75, 73, 72, 71, 70, 32.62244 + 72, 77, 76, 73, 72, 71, 70, 68, 67, 69, 66, 62, 66, 72, 82, 255, 32.62245 + 255, 255, 5, 13, 36, 48, 66, 85, 68, 56, 56, 54, 60, 66, 57, 40, 32.62246 + 38, 47, 53, 54, 53, 50, 50, 52, 50, 45, 48, 43, 41, 43, 45, 46, 32.62247 + 52, 56, 51, 51, 52, 53, 54, 54, 52, 49, 54, 54, 55, 58, 65, 78, 32.62248 + 93, 102, 105, 106, 102, 97, 92, 81, 88, 116, 112, 116, 110, 99, 98, 107, 32.62249 + 108, 99, 105, 105, 102, 99, 93, 88, 85, 82, 80, 80, 80, 79, 77, 75, 32.62250 + 73, 73, 79, 79, 77, 75, 73, 70, 65, 61, 62, 58, 57, 64, 71, 79, 32.62251 + 255, 255, 255, 6, 4, 22, 50, 72, 78, 66, 61, 57, 64, 69, 63, 47, 32.62252 + 35, 39, 51, 50, 49, 47, 45, 48, 52, 51, 45, 46, 44, 42, 43, 44, 32.62253 + 47, 51, 54, 46, 46, 48, 51, 55, 56, 54, 52, 53, 56, 63, 70, 80, 32.62254 + 93, 105, 112, 115, 116, 110, 102, 96, 87, 97, 124, 119, 125, 118, 103, 103, 32.62255 + 113, 113, 102, 111, 111, 108, 105, 99, 94, 90, 90, 84, 85, 86, 86, 83, 32.62256 + 79, 76, 75, 81, 79, 73, 71, 69, 66, 59, 55, 57, 54, 56, 64, 66, 32.62257 + 69, 255, 255, 255, 9, 3, 13, 54, 75, 68, 62, 63, 51, 69, 72, 51, 32.62258 + 33, 35, 43, 46, 39, 40, 42, 44, 50, 55, 52, 45, 42, 43, 44, 44, 32.62259 + 45, 46, 47, 47, 46, 45, 49, 52, 56, 58, 58, 57, 63, 69, 78, 88, 32.62260 + 97, 104, 111, 114, 124, 127, 121, 111, 103, 94, 104, 130, 128, 130, 120, 107, 32.62261 + 107, 115, 114, 103, 115, 117, 115, 112, 105, 101, 99, 98, 91, 92, 94, 94, 32.62262 + 92, 87, 83, 81, 83, 78, 71, 69, 66, 62, 56, 51, 51, 54, 61, 67, 32.62263 + 64, 68, 255, 255, 255, 174, 5, 10, 57, 77, 60, 59, 63, 49, 70, 71, 32.62264 + 48, 35, 45, 49, 42, 30, 36, 42, 47, 52, 55, 52, 45, 40, 44, 45, 32.62265 + 44, 44, 47, 47, 44, 44, 47, 50, 53, 56, 58, 62, 65, 71, 79, 91, 32.62266 + 105, 114, 121, 127, 129, 131, 135, 128, 120, 114, 107, 114, 134, 135, 131, 120, 32.62267 + 112, 112, 116, 114, 108, 120, 122, 122, 120, 113, 108, 108, 110, 103, 105, 105, 32.62268 + 106, 102, 100, 95, 94, 91, 87, 79, 76, 73, 66, 56, 49, 46, 55, 63, 32.62269 + 69, 70, 140, 255, 255, 255, 255, 7, 11, 59, 76, 54, 60, 64, 49, 61, 32.62270 + 63, 54, 49, 53, 49, 37, 29, 39, 47, 50, 50, 51, 48, 43, 39, 43, 32.62271 + 43, 40, 42, 48, 50, 46, 49, 54, 61, 65, 67, 73, 83, 92, 93, 99, 32.62272 + 110, 121, 129, 136, 143, 147, 139, 139, 130, 126, 130, 127, 125, 137, 140, 127, 32.62273 + 117, 117, 119, 119, 117, 118, 125, 128, 129, 127, 121, 116, 117, 120, 116, 118, 32.62274 + 118, 119, 117, 115, 111, 110, 106, 102, 96, 93, 88, 78, 62, 50, 44, 55, 32.62275 + 62, 66, 78, 255, 255, 255, 255, 255, 9, 12, 61, 76, 52, 61, 65, 44, 32.62276 + 46, 50, 56, 57, 51, 39, 30, 33, 42, 50, 51, 48, 47, 44, 41, 39, 32.62277 + 42, 41, 37, 39, 48, 52, 50, 59, 67, 77, 84, 88, 99, 114, 128, 126, 32.62278 + 129, 133, 135, 137, 140, 144, 147, 145, 141, 129, 129, 142, 142, 135, 137, 142, 32.62279 + 124, 115, 120, 125, 120, 120, 126, 129, 133, 135, 132, 127, 123, 124, 126, 127, 32.62280 + 127, 128, 128, 127, 125, 123, 122, 118, 114, 110, 108, 102, 88, 66, 51, 46, 32.62281 + 56, 58, 61, 82, 255, 255, 255, 255, 255, 5, 23, 71, 73, 50, 61, 72, 32.62282 + 48, 43, 44, 53, 55, 45, 33, 28, 42, 43, 45, 46, 45, 44, 43, 42, 32.62283 + 36, 33, 34, 42, 47, 47, 50, 57, 73, 83, 94, 99, 108, 124, 138, 146, 32.62284 + 149, 151, 153, 156, 155, 154, 151, 150, 149, 137, 116, 123, 128, 122, 132, 131, 32.62285 + 129, 120, 115, 119, 124, 125, 129, 135, 132, 128, 128, 134, 136, 132, 132, 136, 32.62286 + 138, 134, 134, 128, 119, 123, 126, 116, 116, 122, 131, 123, 119, 115, 80, 52, 32.62287 + 54, 62, 50, 68, 76, 255, 255, 255, 255, 255, 176, 28, 65, 66, 50, 65, 32.62288 + 74, 47, 41, 41, 50, 53, 47, 39, 35, 44, 44, 44, 44, 42, 41, 39, 32.62289 + 39, 44, 41, 42, 48, 50, 53, 61, 70, 91, 100, 111, 117, 126, 140, 152, 32.62290 + 158, 165, 162, 156, 149, 145, 146, 153, 159, 146, 142, 128, 136, 135, 123, 125, 32.62291 + 118, 127, 121, 119, 125, 130, 130, 132, 136, 135, 132, 134, 139, 139, 133, 132, 32.62292 + 134, 133, 134, 140, 141, 135, 130, 123, 110, 122, 123, 129, 138, 145, 149, 116, 32.62293 + 54, 46, 53, 47, 66, 138, 255, 255, 255, 255, 255, 255, 28, 52, 54, 50, 32.62294 + 70, 74, 52, 45, 41, 45, 48, 47, 44, 41, 46, 46, 43, 41, 39, 37, 32.62295 + 37, 36, 43, 42, 42, 44, 46, 53, 68, 81, 106, 116, 127, 133, 140, 152, 32.62296 + 161, 165, 167, 166, 163, 158, 152, 148, 149, 153, 146, 149, 137, 141, 137, 124, 32.62297 + 127, 117, 124, 122, 124, 131, 136, 136, 136, 138, 140, 140, 140, 143, 141, 135, 32.62298 + 133, 134, 138, 131, 125, 125, 126, 131, 138, 142, 144, 143, 139, 154, 153, 163, 32.62299 + 151, 60, 40, 46, 51, 72, 255, 255, 255, 255, 255, 255, 255, 22, 42, 48, 32.62300 + 54, 75, 70, 59, 51, 42, 41, 43, 46, 44, 43, 47, 46, 43, 41, 38, 32.62301 + 38, 39, 39, 40, 41, 41, 40, 43, 56, 78, 94, 119, 128, 138, 143, 150, 32.62302 + 159, 166, 166, 166, 166, 167, 168, 166, 163, 158, 155, 163, 164, 146, 142, 137, 32.62303 + 128, 136, 133, 121, 122, 126, 132, 138, 139, 141, 142, 143, 143, 146, 147, 144, 32.62304 + 140, 138, 137, 137, 136, 135, 141, 143, 132, 125, 132, 134, 142, 145, 168, 151, 32.62305 + 162, 168, 59, 39, 46, 72, 95, 255, 255, 255, 255, 255, 255, 255, 24, 46, 32.62306 + 56, 64, 78, 64, 60, 52, 42, 38, 41, 47, 48, 46, 45, 45, 43, 42, 32.62307 + 41, 42, 44, 45, 43, 45, 46, 46, 52, 71, 97, 116, 135, 144, 152, 156, 32.62308 + 162, 168, 172, 171, 174, 171, 167, 167, 166, 159, 147, 137, 123, 122, 108, 113, 32.62309 + 111, 102, 113, 114, 115, 119, 124, 130, 136, 141, 145, 147, 145, 147, 148, 149, 32.62310 + 150, 148, 142, 137, 134, 124, 106, 100, 96, 77, 74, 97, 98, 107, 121, 160, 32.62311 + 152, 169, 171, 46, 36, 51, 104, 127, 255, 255, 255, 255, 255, 255, 255, 180, 32.62312 + 57, 68, 73, 79, 59, 54, 47, 40, 34, 39, 49, 51, 50, 43, 45, 44, 32.62313 + 45, 45, 46, 48, 49, 43, 47, 50, 52, 64, 90, 117, 135, 148, 155, 161, 32.62314 + 163, 168, 174, 176, 173, 176, 174, 170, 162, 146, 117, 83, 60, 43, 46, 51, 32.62315 + 84, 96, 83, 89, 91, 106, 114, 122, 128, 135, 144, 149, 149, 149, 151, 154, 32.62316 + 157, 158, 153, 139, 125, 98, 78, 42, 27, 28, 25, 54, 111, 107, 86, 87, 32.62317 + 120, 135, 172, 164, 43, 39, 60, 136, 156, 255, 255, 255, 255, 255, 255, 255, 32.62318 + 255, 58, 70, 71, 75, 56, 51, 46, 40, 34, 39, 50, 52, 49, 42, 44, 32.62319 + 46, 46, 47, 48, 48, 48, 42, 47, 51, 57, 75, 104, 133, 148, 158, 163, 32.62320 + 165, 167, 172, 177, 177, 174, 171, 168, 158, 137, 106, 69, 35, 16, 26, 29, 32.62321 + 48, 104, 123, 97, 92, 92, 97, 110, 122, 130, 137, 148, 151, 149, 154, 158, 32.62322 + 163, 167, 168, 156, 129, 102, 54, 50, 33, 36, 47, 40, 67, 133, 134, 92, 32.62323 + 86, 103, 125, 170, 151, 50, 52, 75, 162, 172, 255, 255, 255, 255, 255, 255, 32.62324 + 255, 255, 50, 64, 64, 71, 54, 53, 50, 42, 35, 39, 47, 47, 42, 42, 32.62325 + 44, 46, 47, 47, 46, 46, 45, 44, 49, 54, 62, 85, 117, 145, 158, 166, 32.62326 + 171, 172, 173, 177, 182, 182, 178, 171, 159, 133, 97, 65, 47, 44, 50, 48, 32.62327 + 46, 64, 122, 134, 96, 77, 75, 92, 108, 125, 133, 142, 150, 152, 149, 160, 32.62328 + 165, 171, 176, 176, 158, 118, 84, 64, 57, 35, 34, 43, 34, 64, 138, 125, 32.62329 + 93, 109, 125, 142, 177, 142, 55, 68, 89, 180, 179, 255, 255, 255, 255, 255, 32.62330 + 255, 255, 255, 53, 74, 69, 56, 49, 47, 47, 37, 47, 58, 50, 45, 47, 32.62331 + 42, 48, 51, 50, 49, 47, 45, 42, 35, 52, 61, 77, 115, 145, 155, 157, 32.62332 + 169, 171, 173, 175, 176, 174, 169, 164, 158, 138, 119, 121, 134, 140, 128, 112, 32.62333 + 102, 102, 106, 112, 116, 114, 114, 116, 125, 130, 138, 146, 153, 157, 156, 154, 32.62334 + 167, 170, 173, 175, 172, 160, 133, 110, 91, 88, 92, 100, 103, 105, 123, 144, 32.62335 + 156, 174, 178, 168, 155, 169, 154, 70, 122, 153, 179, 185, 255, 255, 255, 255, 32.62336 + 255, 255, 255, 255, 60, 77, 60, 48, 53, 41, 40, 37, 44, 48, 45, 44, 32.62337 + 44, 41, 50, 56, 53, 47, 42, 41, 41, 42, 61, 75, 92, 125, 153, 160, 32.62338 + 165, 171, 173, 174, 176, 178, 177, 172, 169, 149, 153, 158, 163, 164, 161, 154, 32.62339 + 149, 143, 140, 139, 141, 138, 131, 127, 127, 139, 138, 140, 148, 158, 163, 161, 32.62340 + 157, 162, 166, 172, 179, 182, 176, 156, 137, 133, 125, 127, 136, 142, 147, 161, 32.62341 + 179, 171, 177, 182, 187, 178, 185, 179, 119, 151, 172, 186, 186, 255, 255, 255, 32.62342 + 255, 255, 255, 255, 255, 191, 74, 46, 36, 50, 38, 35, 43, 47, 44, 50, 32.62343 + 54, 51, 45, 54, 61, 57, 48, 40, 39, 42, 49, 74, 91, 109, 139, 159, 32.62344 + 166, 172, 174, 176, 175, 177, 179, 180, 177, 176, 169, 175, 177, 174, 165, 161, 32.62345 + 163, 168, 162, 158, 154, 153, 146, 137, 131, 130, 140, 137, 135, 143, 156, 164, 32.62346 + 163, 159, 168, 173, 176, 182, 187, 183, 168, 151, 142, 132, 129, 136, 142, 147, 32.62347 + 158, 170, 176, 174, 179, 198, 194, 192, 195, 164, 176, 183, 185, 183, 255, 255, 32.62348 + 255, 255, 255, 255, 255, 255, 255, 62, 37, 28, 39, 34, 32, 49, 47, 46, 32.62349 + 64, 65, 59, 58, 60, 61, 59, 50, 43, 43, 46, 54, 81, 103, 123, 148, 32.62350 + 162, 165, 172, 176, 176, 175, 176, 179, 180, 181, 179, 182, 175, 167, 163, 162, 32.62351 + 161, 156, 152, 146, 143, 143, 144, 141, 135, 132, 133, 135, 135, 136, 146, 158, 32.62352 + 166, 167, 166, 176, 179, 180, 182, 185, 184, 172, 160, 154, 147, 142, 143, 143, 32.62353 + 146, 154, 164, 173, 174, 178, 199, 197, 192, 199, 180, 177, 181, 180, 179, 255, 32.62354 + 255, 255, 255, 255, 255, 255, 255, 255, 52, 36, 27, 29, 30, 30, 46, 41, 32.62355 + 53, 84, 73, 64, 69, 61, 55, 54, 53, 48, 48, 51, 60, 87, 110, 132, 32.62356 + 153, 163, 164, 172, 176, 175, 174, 175, 177, 180, 181, 180, 166, 164, 165, 172, 32.62357 + 177, 174, 161, 149, 145, 142, 143, 147, 147, 144, 143, 147, 143, 148, 154, 162, 32.62358 + 167, 172, 174, 176, 171, 174, 177, 180, 186, 190, 184, 176, 173, 172, 171, 168, 32.62359 + 162, 161, 170, 181, 176, 190, 191, 200, 200, 198, 201, 183, 169, 176, 178, 179, 32.62360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 51, 39, 30, 26, 32, 36, 46, 32.62361 + 36, 75, 116, 87, 74, 72, 60, 52, 54, 56, 53, 54, 57, 71, 95, 117, 32.62362 + 137, 158, 166, 166, 174, 175, 175, 174, 176, 178, 180, 180, 179, 169, 173, 175, 32.62363 + 176, 176, 173, 170, 170, 163, 161, 160, 162, 161, 158, 157, 160, 157, 164, 171, 32.62364 + 174, 173, 171, 173, 177, 171, 175, 178, 181, 187, 193, 190, 185, 175, 181, 184, 32.62365 + 181, 175, 174, 182, 192, 184, 204, 201, 202, 202, 202, 202, 182, 170, 177, 182, 32.62366 + 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 36, 28, 29, 39, 46, 32.62367 + 47, 34, 100, 149, 99, 85, 69, 59, 57, 63, 65, 60, 61, 68, 80, 101, 32.62368 + 119, 140, 161, 167, 167, 174, 176, 176, 176, 178, 179, 181, 179, 177, 184, 182, 32.62369 + 177, 172, 168, 169, 174, 180, 177, 174, 172, 172, 171, 166, 165, 168, 169, 171, 32.62370 + 174, 174, 173, 172, 172, 173, 174, 177, 179, 181, 186, 192, 190, 185, 183, 188, 32.62371 + 192, 191, 188, 189, 193, 196, 191, 208, 199, 200, 207, 203, 202, 190, 175, 178, 32.62372 + 181, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 32, 22, 31, 39, 32.62373 + 48, 41, 27, 112, 165, 101, 86, 67, 62, 66, 73, 73, 66, 68, 79, 86, 32.62374 + 103, 118, 139, 162, 168, 167, 174, 177, 178, 178, 180, 181, 181, 179, 177, 177, 32.62375 + 174, 172, 176, 182, 182, 176, 170, 179, 175, 174, 175, 174, 170, 171, 174, 177, 32.62376 + 175, 172, 173, 175, 177, 178, 177, 167, 170, 174, 177, 184, 192, 192, 189, 186, 32.62377 + 188, 190, 189, 190, 191, 189, 188, 198, 208, 194, 203, 212, 204, 204, 200, 179, 32.62378 + 177, 177, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 26, 27, 32.62379 + 34, 48, 46, 24, 122, 158, 110, 80, 62, 72, 82, 82, 78, 80, 84, 89, 32.62380 + 98, 108, 124, 143, 157, 167, 173, 176, 181, 183, 182, 182, 180, 179, 177, 177, 32.62381 + 178, 177, 175, 174, 174, 176, 178, 179, 180, 185, 183, 177, 175, 178, 176, 171, 32.62382 + 176, 182, 182, 175, 172, 176, 179, 176, 170, 168, 169, 174, 182, 189, 190, 191, 32.62383 + 181, 195, 197, 186, 182, 194, 198, 193, 195, 200, 202, 206, 205, 204, 202, 201, 32.62384 + 179, 180, 181, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 34, 32.62385 + 22, 34, 58, 41, 32, 89, 152, 112, 92, 81, 75, 67, 70, 94, 120, 129, 32.62386 + 123, 117, 118, 128, 145, 159, 164, 169, 175, 176, 178, 179, 180, 181, 182, 181, 32.62387 + 181, 180, 180, 180, 180, 179, 179, 180, 181, 179, 183, 181, 176, 174, 176, 173, 32.62388 + 168, 168, 173, 174, 168, 168, 173, 175, 173, 168, 169, 172, 177, 183, 190, 192, 32.62389 + 194, 187, 190, 193, 192, 191, 190, 190, 190, 196, 199, 201, 204, 207, 207, 206, 32.62390 + 207, 183, 186, 187, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62391 + 44, 26, 45, 72, 41, 43, 43, 124, 105, 109, 90, 89, 84, 90, 121, 155, 32.62392 + 156, 137, 139, 129, 131, 147, 161, 163, 167, 177, 175, 176, 178, 180, 181, 182, 32.62393 + 182, 182, 181, 182, 184, 185, 183, 182, 180, 178, 179, 182, 182, 177, 175, 173, 32.62394 + 170, 166, 167, 169, 168, 166, 166, 169, 171, 169, 164, 166, 173, 179, 184, 188, 32.62395 + 193, 197, 196, 188, 186, 193, 195, 191, 188, 193, 196, 196, 197, 200, 204, 208, 32.62396 + 209, 208, 201, 202, 204, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62397 + 255, 43, 35, 55, 71, 46, 52, 18, 88, 109, 143, 127, 124, 104, 82, 95, 32.62398 + 139, 167, 170, 154, 137, 133, 149, 162, 163, 170, 180, 178, 180, 181, 182, 182, 32.62399 + 182, 181, 180, 179, 180, 183, 185, 183, 180, 177, 174, 182, 183, 183, 180, 176, 32.62400 + 172, 166, 164, 162, 161, 159, 159, 161, 163, 162, 158, 158, 164, 172, 179, 184, 32.62401 + 188, 195, 200, 200, 188, 177, 174, 178, 182, 187, 191, 194, 193, 190, 194, 200, 32.62402 + 204, 206, 206, 214, 217, 219, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62403 + 255, 255, 34, 47, 62, 63, 52, 58, 23, 57, 116, 171, 151, 156, 139, 109, 32.62404 + 106, 138, 168, 175, 166, 150, 143, 152, 161, 164, 168, 178, 179, 180, 181, 182, 32.62405 + 183, 183, 183, 183, 179, 181, 183, 183, 183, 180, 177, 175, 184, 184, 183, 182, 32.62406 + 176, 169, 161, 157, 146, 143, 142, 147, 153, 156, 154, 150, 159, 165, 173, 179, 32.62407 + 183, 188, 195, 201, 198, 192, 171, 148, 145, 164, 176, 178, 191, 190, 188, 191, 32.62408 + 196, 200, 203, 205, 215, 218, 221, 221, 255, 255, 255, 255, 255, 255, 255, 255, 32.62409 + 255, 255, 255, 180, 57, 72, 67, 59, 57, 31, 28, 88, 136, 159, 177, 182, 32.62410 + 171, 166, 172, 170, 161, 174, 164, 157, 158, 162, 165, 167, 171, 176, 177, 179, 32.62411 + 182, 183, 185, 185, 186, 181, 181, 181, 182, 181, 181, 180, 180, 183, 182, 180, 32.62412 + 178, 172, 160, 150, 147, 134, 129, 130, 143, 155, 162, 161, 160, 165, 168, 172, 32.62413 + 176, 180, 185, 191, 195, 196, 196, 175, 141, 130, 147, 162, 164, 183, 185, 186, 32.62414 + 190, 192, 197, 202, 207, 214, 217, 220, 221, 255, 255, 255, 255, 255, 255, 255, 32.62415 + 255, 255, 255, 255, 255, 49, 77, 82, 61, 57, 35, 22, 53, 72, 126, 148, 32.62416 + 165, 167, 165, 170, 174, 174, 173, 173, 170, 164, 165, 171, 171, 167, 176, 177, 32.62417 + 178, 180, 181, 182, 182, 182, 181, 179, 177, 176, 176, 178, 180, 182, 179, 176, 32.62418 + 173, 172, 165, 149, 138, 134, 133, 126, 129, 145, 163, 171, 172, 172, 171, 168, 32.62419 + 166, 167, 171, 176, 179, 179, 181, 186, 177, 152, 133, 133, 143, 154, 168, 175, 32.62420 + 180, 183, 186, 191, 198, 206, 216, 219, 222, 223, 255, 255, 255, 255, 255, 255, 32.62421 + 255, 255, 255, 255, 255, 255, 31, 73, 93, 60, 61, 43, 41, 45, 42, 22, 32.62422 + 69, 124, 150, 152, 149, 155, 163, 167, 175, 175, 168, 169, 178, 179, 170, 178, 32.62423 + 179, 179, 179, 178, 177, 176, 175, 178, 175, 172, 169, 170, 172, 177, 181, 173, 32.62424 + 169, 168, 168, 157, 140, 128, 124, 130, 123, 126, 143, 163, 171, 170, 170, 170, 32.62425 + 164, 158, 156, 159, 161, 162, 162, 157, 162, 165, 158, 136, 120, 126, 142, 153, 32.62426 + 162, 172, 178, 179, 183, 194, 204, 214, 218, 219, 222, 255, 255, 255, 255, 255, 32.62427 + 255, 255, 255, 255, 255, 255, 255, 177, 69, 82, 74, 53, 44, 39, 39, 44, 32.62428 + 34, 12, 58, 118, 161, 175, 157, 165, 167, 173, 174, 171, 170, 174, 174, 169, 32.62429 + 177, 178, 178, 178, 178, 176, 175, 173, 171, 174, 173, 167, 165, 168, 169, 169, 32.62430 + 173, 170, 165, 157, 149, 140, 132, 126, 135, 130, 130, 139, 150, 152, 146, 137, 32.62431 + 140, 139, 140, 147, 153, 156, 154, 152, 147, 144, 150, 158, 144, 121, 118, 133, 32.62432 + 146, 153, 166, 178, 180, 180, 191, 207, 213, 217, 218, 219, 255, 255, 255, 255, 32.62433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 72, 76, 60, 46, 37, 36, 32.62434 + 45, 22, 1, 23, 56, 101, 147, 147, 143, 160, 168, 174, 170, 168, 171, 175, 32.62435 + 175, 177, 177, 177, 177, 177, 175, 173, 173, 171, 174, 172, 167, 165, 168, 170, 32.62436 + 169, 166, 168, 165, 153, 137, 132, 138, 145, 148, 142, 137, 132, 126, 120, 112, 32.62437 + 107, 77, 78, 87, 103, 126, 142, 147, 148, 126, 138, 153, 159, 148, 132, 124, 32.62438 + 124, 135, 143, 157, 169, 172, 177, 190, 208, 213, 216, 218, 255, 255, 255, 255, 32.62439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 59, 77, 68, 53, 39, 32.62440 + 35, 45, 32, 16, 12, 16, 67, 144, 164, 148, 157, 166, 173, 169, 166, 168, 32.62441 + 174, 179, 176, 177, 176, 176, 176, 174, 172, 172, 168, 170, 169, 165, 165, 170, 32.62442 + 170, 167, 163, 161, 154, 140, 132, 133, 144, 155, 154, 153, 149, 138, 128, 121, 32.62443 + 121, 122, 138, 132, 130, 134, 143, 150, 150, 147, 141, 161, 175, 171, 159, 147, 32.62444 + 133, 119, 126, 135, 151, 161, 166, 174, 193, 212, 213, 216, 218, 255, 255, 255, 32.62445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 74, 73, 63, 32.62446 + 48, 38, 42, 30, 21, 9, 4, 50, 134, 169, 154, 162, 167, 171, 169, 168, 32.62447 + 169, 173, 178, 175, 176, 175, 176, 175, 174, 172, 171, 166, 167, 167, 164, 165, 32.62448 + 169, 167, 163, 162, 150, 136, 132, 138, 145, 149, 147, 151, 154, 154, 151, 148, 32.62449 + 147, 151, 155, 152, 145, 138, 134, 134, 138, 141, 145, 168, 178, 183, 176, 163, 32.62450 + 151, 140, 130, 123, 133, 147, 158, 165, 178, 199, 218, 213, 217, 218, 255, 255, 32.62451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 61, 67, 32.62452 + 69, 59, 44, 41, 31, 23, 7, 6, 40, 110, 165, 167, 174, 171, 169, 170, 32.62453 + 172, 173, 173, 173, 176, 176, 176, 176, 174, 174, 171, 172, 166, 168, 168, 168, 32.62454 + 168, 171, 166, 158, 146, 139, 132, 135, 145, 152, 153, 150, 156, 157, 157, 158, 32.62455 + 159, 159, 158, 157, 151, 149, 146, 141, 140, 148, 164, 176, 176, 176, 176, 178, 32.62456 + 170, 155, 147, 146, 126, 136, 148, 156, 165, 183, 204, 220, 214, 218, 231, 255, 32.62457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 32.62458 + 51, 65, 66, 52, 44, 41, 32, 9, 10, 31, 86, 157, 181, 182, 175, 169, 32.62459 + 172, 175, 175, 172, 172, 176, 176, 176, 176, 176, 175, 173, 172, 169, 172, 173, 32.62460 + 173, 175, 174, 164, 153, 127, 135, 145, 149, 149, 150, 158, 164, 168, 166, 164, 32.62461 + 165, 168, 167, 161, 153, 156, 154, 151, 145, 142, 147, 162, 174, 185, 183, 185, 32.62462 + 191, 185, 168, 156, 154, 136, 143, 151, 158, 170, 189, 207, 218, 215, 218, 255, 32.62463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62464 + 24, 32, 54, 66, 57, 53, 40, 34, 8, 7, 18, 62, 141, 172, 182, 176, 32.62465 + 172, 175, 175, 172, 171, 175, 177, 178, 178, 178, 176, 175, 173, 173, 169, 172, 32.62466 + 174, 176, 176, 172, 158, 145, 134, 144, 154, 157, 153, 154, 162, 171, 168, 166, 32.62467 + 164, 166, 168, 168, 162, 157, 156, 154, 153, 154, 158, 165, 174, 180, 179, 183, 32.62468 + 185, 184, 180, 173, 162, 151, 150, 154, 158, 165, 179, 199, 212, 216, 216, 218, 32.62469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62470 + 255, 174, 19, 45, 63, 61, 60, 49, 49, 22, 18, 24, 66, 144, 168, 180, 32.62471 + 176, 174, 176, 173, 169, 171, 180, 177, 179, 178, 178, 178, 177, 175, 174, 167, 32.62472 + 171, 173, 175, 174, 168, 152, 136, 156, 156, 155, 157, 160, 162, 164, 165, 158, 32.62473 + 157, 155, 154, 153, 151, 149, 147, 148, 142, 140, 144, 152, 156, 154, 151, 148, 32.62474 + 160, 160, 152, 154, 165, 161, 145, 162, 165, 167, 172, 189, 207, 218, 217, 216, 32.62475 + 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62476 + 255, 255, 255, 174, 36, 60, 67, 62, 60, 52, 26, 26, 23, 52, 132, 168, 32.62477 + 180, 182, 180, 176, 173, 176, 175, 174, 177, 177, 177, 175, 175, 176, 175, 176, 32.62478 + 173, 172, 172, 174, 176, 172, 160, 152, 163, 161, 157, 158, 160, 159, 153, 144, 32.62479 + 137, 138, 133, 126, 122, 122, 121, 117, 119, 116, 115, 120, 126, 131, 130, 128, 32.62480 + 154, 153, 150, 147, 146, 147, 150, 154, 169, 177, 180, 181, 194, 212, 220, 216, 32.62481 + 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62482 + 255, 255, 255, 255, 255, 35, 56, 64, 61, 58, 55, 38, 41, 33, 48, 120, 32.62483 + 165, 179, 182, 181, 177, 174, 176, 176, 175, 178, 177, 177, 176, 175, 176, 175, 32.62484 + 176, 173, 172, 173, 176, 178, 174, 164, 157, 169, 158, 156, 153, 126, 91, 84, 32.62485 + 100, 111, 112, 110, 104, 102, 103, 102, 98, 113, 113, 115, 122, 127, 129, 125, 32.62486 + 121, 100, 104, 110, 118, 129, 142, 154, 162, 176, 184, 187, 187, 197, 213, 218, 32.62487 + 213, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62488 + 255, 255, 255, 255, 255, 255, 180, 47, 58, 62, 55, 53, 44, 44, 29, 31, 32.62489 + 99, 158, 179, 182, 184, 180, 176, 177, 177, 176, 177, 178, 176, 177, 176, 176, 32.62490 + 176, 176, 172, 172, 173, 176, 178, 176, 170, 163, 173, 166, 163, 156, 124, 88, 32.62491 + 83, 100, 100, 103, 102, 98, 97, 98, 96, 93, 96, 101, 111, 124, 136, 141, 32.62492 + 139, 137, 127, 130, 135, 142, 151, 161, 169, 176, 180, 188, 192, 193, 200, 211, 32.62493 + 214, 209, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62494 + 255, 255, 255, 255, 255, 255, 255, 255, 182, 53, 63, 60, 54, 48, 43, 23, 32.62495 + 19, 81, 159, 177, 183, 185, 182, 178, 178, 178, 177, 178, 178, 176, 176, 176, 32.62496 + 176, 176, 177, 171, 171, 172, 176, 178, 176, 172, 168, 172, 175, 169, 158, 152, 32.62497 + 150, 143, 135, 132, 136, 136, 133, 131, 131, 127, 123, 114, 121, 133, 148, 163, 32.62498 + 171, 174, 174, 164, 165, 163, 165, 167, 170, 171, 173, 180, 188, 193, 194, 200, 32.62499 + 208, 212, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 63, 66, 61, 58, 51, 32.62501 + 34, 26, 74, 160, 174, 183, 186, 183, 179, 179, 178, 178, 178, 179, 177, 176, 32.62502 + 175, 177, 177, 177, 171, 171, 172, 175, 176, 176, 172, 171, 173, 171, 164, 159, 32.62503 + 164, 172, 167, 154, 154, 156, 156, 151, 148, 146, 142, 137, 137, 142, 147, 155, 32.62504 + 164, 168, 171, 172, 158, 159, 160, 165, 172, 176, 178, 180, 180, 186, 193, 196, 32.62505 + 200, 206, 209, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 54, 61, 60, 64, 32.62507 + 56, 49, 41, 69, 148, 171, 181, 186, 185, 179, 179, 178, 177, 178, 178, 177, 32.62508 + 177, 177, 176, 177, 177, 173, 174, 174, 175, 174, 174, 172, 171, 172, 162, 161, 32.62509 + 167, 164, 155, 157, 169, 159, 161, 160, 155, 151, 150, 146, 142, 145, 146, 148, 32.62510 + 151, 154, 158, 159, 161, 167, 167, 169, 175, 183, 187, 187, 186, 182, 187, 190, 32.62511 + 193, 195, 197, 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 55, 53, 32.62513 + 56, 47, 52, 51, 66, 138, 167, 179, 186, 185, 179, 178, 177, 176, 179, 179, 32.62514 + 178, 177, 177, 177, 177, 178, 177, 178, 178, 177, 174, 173, 172, 171, 169, 163, 32.62515 + 161, 166, 162, 155, 160, 174, 174, 176, 175, 171, 170, 170, 170, 166, 161, 163, 32.62516 + 165, 168, 170, 174, 175, 178, 180, 178, 176, 179, 183, 183, 178, 175, 184, 186, 32.62517 + 185, 184, 181, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 32.62519 + 54, 51, 36, 49, 57, 69, 139, 165, 177, 186, 184, 179, 178, 177, 177, 179, 32.62520 + 178, 179, 177, 177, 178, 177, 179, 182, 183, 181, 180, 176, 174, 173, 173, 166, 32.62521 + 169, 163, 152, 155, 168, 168, 158, 166, 168, 168, 165, 166, 169, 171, 167, 167, 32.62522 + 169, 172, 173, 174, 175, 174, 176, 181, 179, 179, 183, 189, 189, 185, 181, 184, 32.62523 + 183, 181, 176, 168, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62525 + 255, 52, 53, 38, 34, 36, 62, 129, 167, 171, 178, 189, 193, 178, 170, 183, 32.62526 + 180, 178, 177, 180, 185, 185, 180, 174, 183, 182, 180, 180, 180, 178, 173, 170, 32.62527 + 165, 163, 159, 157, 157, 159, 161, 164, 166, 167, 167, 163, 159, 157, 160, 163, 32.62528 + 169, 167, 165, 164, 165, 168, 169, 171, 169, 166, 170, 180, 184, 178, 175, 183, 32.62529 + 182, 180, 175, 168, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62531 + 255, 255, 184, 58, 49, 43, 39, 59, 123, 166, 173, 176, 184, 191, 182, 174, 32.62532 + 177, 182, 179, 178, 180, 183, 183, 182, 179, 183, 181, 181, 181, 180, 178, 173, 32.62533 + 170, 166, 164, 161, 159, 159, 159, 161, 162, 165, 166, 164, 161, 157, 156, 158, 32.62534 + 160, 162, 164, 162, 159, 156, 156, 162, 166, 168, 170, 176, 181, 182, 177, 175, 32.62535 + 179, 177, 177, 172, 168, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62537 + 255, 255, 255, 255, 190, 58, 53, 41, 49, 105, 164, 173, 175, 177, 188, 187, 32.62538 + 177, 173, 180, 178, 177, 178, 179, 180, 182, 183, 181, 180, 179, 179, 179, 177, 32.62539 + 173, 170, 170, 169, 166, 165, 163, 162, 162, 162, 163, 164, 162, 160, 157, 156, 32.62540 + 156, 157, 157, 159, 159, 155, 150, 150, 157, 166, 167, 175, 182, 183, 182, 181, 32.62541 + 175, 172, 157, 159, 157, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62543 + 255, 255, 255, 255, 255, 255, 53, 60, 52, 51, 96, 157, 175, 178, 173, 182, 32.62544 + 188, 181, 176, 174, 176, 176, 177, 178, 180, 183, 185, 181, 180, 178, 179, 179, 32.62545 + 177, 174, 171, 174, 175, 173, 172, 169, 167, 164, 163, 163, 162, 162, 159, 157, 32.62546 + 156, 155, 155, 155, 156, 155, 153, 153, 156, 164, 171, 171, 179, 185, 184, 186, 32.62547 + 187, 176, 163, 146, 149, 148, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62549 + 255, 255, 255, 255, 255, 255, 255, 255, 58, 62, 58, 96, 150, 174, 182, 173, 32.62550 + 177, 184, 183, 183, 168, 170, 173, 175, 177, 179, 183, 186, 180, 180, 178, 179, 32.62551 + 180, 179, 175, 173, 177, 177, 176, 175, 172, 170, 166, 165, 164, 163, 161, 161, 32.62552 + 160, 159, 156, 154, 153, 149, 147, 152, 159, 167, 172, 176, 176, 182, 184, 185, 32.62553 + 192, 191, 171, 150, 151, 154, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 47, 86, 152, 177, 184, 32.62556 + 175, 175, 180, 182, 186, 169, 169, 169, 171, 174, 178, 181, 183, 181, 180, 179, 32.62557 + 180, 181, 180, 178, 175, 178, 177, 176, 174, 173, 169, 168, 165, 167, 165, 163, 32.62558 + 162, 163, 162, 159, 154, 152, 146, 144, 151, 162, 171, 174, 173, 180, 182, 184, 32.62559 + 189, 191, 182, 158, 135, 145, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 77, 162, 179, 32.62562 + 183, 178, 178, 179, 178, 183, 178, 171, 164, 163, 167, 173, 177, 180, 181, 180, 32.62563 + 180, 181, 183, 182, 179, 178, 181, 180, 179, 177, 175, 174, 173, 171, 170, 168, 32.62564 + 165, 166, 166, 165, 161, 157, 153, 150, 150, 155, 161, 167, 168, 169, 182, 183, 32.62565 + 187, 193, 187, 166, 139, 124, 130, 132, 255, 255, 255, 255, 255, 255, 255, 255, 32.62566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 173, 32.62568 + 181, 180, 178, 182, 179, 176, 180, 187, 175, 162, 157, 161, 169, 176, 178, 181, 32.62569 + 181, 181, 182, 183, 183, 180, 179, 185, 184, 183, 181, 179, 178, 178, 178, 172, 32.62570 + 170, 167, 167, 169, 168, 163, 158, 155, 155, 158, 160, 159, 162, 163, 166, 183, 32.62571 + 184, 191, 196, 182, 150, 125, 117, 130, 255, 255, 255, 255, 255, 255, 255, 255, 32.62572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62574 + 231, 180, 183, 185, 181, 176, 177, 182, 180, 185, 182, 169, 151, 148, 160, 174, 32.62575 + 179, 177, 175, 179, 185, 188, 187, 185, 183, 183, 182, 180, 177, 178, 182, 184, 32.62576 + 183, 180, 177, 173, 171, 167, 163, 160, 162, 159, 157, 158, 161, 166, 174, 179, 32.62577 + 180, 186, 195, 196, 181, 160, 147, 145, 185, 255, 255, 255, 255, 255, 255, 255, 32.62578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62580 + 255, 255, 230, 183, 186, 184, 179, 176, 177, 179, 182, 184, 179, 170, 161, 158, 32.62581 + 160, 166, 170, 175, 180, 183, 184, 185, 185, 186, 186, 186, 183, 182, 184, 186, 32.62582 + 188, 180, 178, 176, 175, 174, 171, 168, 163, 160, 158, 154, 155, 157, 163, 169, 32.62583 + 174, 184, 188, 195, 198, 190, 171, 154, 184, 255, 255, 255, 255, 255, 255, 255, 32.62584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62586 + 255, 255, 255, 255, 255, 229, 179, 176, 176, 176, 178, 180, 180, 183, 179, 169, 32.62587 + 156, 147, 152, 161, 171, 176, 179, 179, 181, 184, 185, 187, 185, 184, 182, 183, 32.62588 + 184, 188, 180, 179, 177, 177, 177, 174, 170, 164, 161, 156, 153, 153, 154, 159, 32.62589 + 166, 171, 186, 189, 196, 204, 200, 183, 163, 255, 255, 255, 255, 255, 255, 255, 32.62590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62592 + 255, 255, 255, 255, 255, 255, 255, 227, 172, 175, 179, 180, 178, 178, 180, 179, 32.62593 + 173, 161, 151, 145, 151, 158, 166, 170, 173, 176, 177, 181, 182, 182, 180, 178, 32.62594 + 177, 179, 181, 184, 183, 181, 180, 178, 175, 167, 161, 162, 158, 153, 151, 152, 32.62595 + 157, 163, 169, 179, 187, 199, 212, 208, 190, 199, 255, 255, 255, 255, 255, 255, 32.62596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 172, 171, 173, 177, 182, 32.62599 + 182, 179, 171, 165, 149, 149, 148, 153, 159, 165, 168, 168, 178, 179, 180, 178, 32.62600 + 176, 175, 176, 177, 184, 183, 183, 182, 180, 175, 168, 162, 161, 156, 151, 149, 32.62601 + 149, 154, 161, 167, 171, 186, 205, 217, 212, 191, 255, 255, 255, 255, 255, 255, 32.62602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 158, 162, 170, 32.62605 + 177, 179, 177, 172, 168, 159, 152, 145, 145, 151, 158, 159, 160, 173, 176, 178, 32.62606 + 178, 177, 178, 179, 181, 180, 180, 180, 181, 179, 176, 172, 167, 159, 154, 149, 32.62607 + 147, 148, 152, 160, 166, 174, 189, 208, 218, 209, 211, 255, 255, 255, 255, 255, 32.62608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 226, 32.62611 + 166, 167, 169, 170, 168, 165, 166, 161, 153, 148, 147, 148, 151, 154, 160, 163, 32.62612 + 167, 170, 173, 176, 179, 183, 182, 180, 178, 178, 177, 176, 173, 169, 162, 157, 32.62613 + 151, 149, 151, 156, 164, 170, 189, 197, 207, 213, 204, 255, 255, 255, 255, 255, 32.62614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62617 + 255, 227, 164, 165, 170, 172, 172, 170, 168, 162, 152, 144, 142, 144, 148, 143, 32.62618 + 147, 153, 159, 164, 171, 176, 180, 186, 184, 181, 178, 175, 172, 168, 165, 166, 32.62619 + 162, 157, 154, 158, 164, 172, 179, 208, 206, 207, 208, 255, 255, 255, 255, 255, 32.62620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62623 + 255, 255, 255, 255, 225, 169, 169, 164, 163, 168, 166, 158, 149, 144, 143, 140, 32.62624 + 148, 147, 145, 147, 153, 161, 171, 176, 177, 179, 180, 180, 178, 176, 173, 170, 32.62625 + 163, 164, 166, 167, 169, 176, 186, 195, 207, 204, 211, 212, 255, 255, 255, 255, 32.62626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62629 + 255, 255, 255, 255, 255, 255, 255, 231, 172, 158, 159, 159, 156, 153, 150, 145, 32.62630 + 137, 141, 142, 144, 147, 152, 157, 163, 166, 168, 170, 173, 174, 175, 175, 174, 32.62631 + 172, 167, 166, 168, 174, 185, 196, 205, 210, 208, 202, 204, 220, 255, 255, 255, 32.62632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 162, 160, 155, 150, 152, 154, 32.62636 + 150, 142, 140, 142, 146, 149, 152, 154, 154, 155, 158, 161, 163, 167, 169, 169, 32.62637 + 169, 169, 173, 171, 172, 181, 195, 204, 206, 206, 207, 193, 186, 255, 255, 255, 32.62638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 166, 153, 149, 32.62642 + 151, 151, 147, 143, 145, 147, 150, 151, 153, 153, 154, 156, 158, 159, 161, 161, 32.62643 + 162, 161, 162, 171, 173, 178, 190, 199, 202, 198, 192, 192, 172, 157, 255, 255, 32.62644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 32.62648 + 159, 153, 150, 148, 147, 147, 146, 147, 149, 151, 153, 154, 158, 160, 161, 161, 32.62649 + 162, 162, 162, 163, 169, 176, 188, 197, 199, 192, 181, 172, 164, 149, 178, 255, 32.62650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62654 + 255, 255, 168, 160, 155, 151, 150, 146, 145, 145, 148, 151, 153, 159, 161, 162, 32.62655 + 164, 167, 170, 172, 173, 179, 187, 195, 199, 193, 176, 156, 144, 147, 143, 255, 32.62656 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62660 + 255, 255, 255, 255, 255, 180, 158, 155, 151, 148, 147, 148, 149, 150, 158, 158, 32.62661 + 161, 164, 169, 172, 176, 177, 187, 190, 194, 199, 197, 183, 162, 147, 146, 184, 32.62662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62666 + 255, 255, 255, 255, 255, 255, 255, 225, 162, 159, 156, 153, 150, 149, 150, 157, 32.62667 + 158, 159, 162, 166, 169, 172, 175, 182, 183, 189, 201, 214, 212, 197, 183, 149, 32.62668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 167, 162, 158, 154, 32.62673 + 160, 160, 164, 172, 173, 170, 172, 178, 183, 184, 197, 206, 192, 217, 212, 223, 32.62674 + 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62675 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 32.62679 + 158, 157, 154, 156, 164, 168, 172, 178, 185, 187, 187, 195, 194, 172, 199, 206, 32.62680 + 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62682 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62683 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62685 + 255, 255, 226, 163, 159, 160, 165, 170, 177, 183, 187, 191, 197, 188, 160, 185, 32.62686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62691 + 255, 255, 255, 255, 255, 255, 255, 173, 172, 170, 169, 183, 189, 199, 191, 160, 32.62692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62696 + 255, 255, 255, 222, 197, 212, 213, 208, 209, 203, 194, 195, 215, 227, 233, 230, 32.62697 + 226, 228, 233, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62700 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62701 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62702 + 255, 133, 125, 128, 142, 189, 202, 204, 201, 206, 205, 200, 204, 212, 225, 237, 32.62703 + 237, 234, 232, 233, 232, 231, 226, 221, 232, 255, 255, 255, 255, 255, 255, 255, 32.62704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62708 + 206, 127, 134, 131, 139, 156, 169, 184, 187, 183, 187, 187, 187, 195, 221, 236, 32.62709 + 237, 224, 226, 239, 234, 212, 235, 229, 226, 226, 231, 235, 234, 241, 255, 255, 32.62710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.62714 + 128, 134, 150, 173, 211, 137, 130, 161, 178, 181, 176, 180, 182, 183, 191, 195, 32.62715 + 198, 212, 222, 206, 187, 199, 231, 214, 214, 214, 219, 225, 229, 230, 229, 229, 32.62716 + 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62719 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 144, 32.62720 + 190, 174, 150, 140, 137, 127, 124, 128, 115, 126, 125, 120, 130, 134, 133, 138, 32.62721 + 154, 169, 171, 164, 178, 202, 197, 174, 203, 204, 207, 212, 218, 220, 219, 218, 32.62722 + 213, 216, 219, 220, 225, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 161, 177, 184, 158, 32.62726 + 141, 129, 122, 120, 122, 123, 120, 120, 122, 115, 117, 108, 105, 117, 122, 115, 32.62727 + 110, 115, 114, 140, 171, 164, 136, 148, 188, 201, 206, 211, 216, 220, 223, 223, 32.62728 + 222, 226, 219, 210, 199, 201, 212, 225, 230, 223, 255, 255, 255, 255, 255, 255, 32.62729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 127, 134, 137, 134, 134, 141, 32.62732 + 147, 149, 134, 123, 111, 101, 97, 96, 99, 101, 110, 108, 93, 88, 103, 107, 32.62733 + 93, 81, 79, 85, 93, 108, 134, 153, 148, 133, 171, 178, 188, 199, 210, 219, 32.62734 + 226, 229, 232, 226, 217, 204, 199, 202, 207, 208, 217, 219, 232, 255, 255, 255, 32.62735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62737 + 255, 255, 255, 255, 255, 255, 211, 121, 105, 124, 135, 128, 134, 135, 135, 133, 32.62738 + 132, 124, 111, 111, 103, 96, 91, 92, 97, 105, 108, 102, 102, 88, 85, 99, 32.62739 + 103, 88, 77, 67, 53, 65, 96, 105, 92, 102, 134, 135, 143, 153, 166, 178, 32.62740 + 192, 203, 209, 207, 213, 216, 214, 212, 208, 201, 194, 206, 211, 215, 222, 255, 32.62741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62743 + 255, 255, 255, 255, 255, 255, 70, 98, 115, 123, 125, 126, 130, 129, 124, 120, 32.62744 + 121, 124, 117, 103, 97, 97, 98, 96, 98, 103, 106, 108, 88, 91, 83, 80, 32.62745 + 94, 97, 86, 81, 88, 68, 59, 69, 80, 82, 82, 87, 131, 134, 140, 145, 32.62746 + 152, 159, 168, 175, 184, 193, 200, 203, 208, 211, 212, 210, 196, 202, 211, 218, 32.62747 + 226, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62749 + 255, 255, 255, 255, 255, 67, 83, 100, 107, 114, 128, 130, 125, 129, 120, 114, 32.62750 + 118, 116, 107, 97, 94, 99, 99, 104, 104, 107, 106, 101, 95, 94, 111, 115, 32.62751 + 95, 81, 83, 86, 87, 97, 87, 76, 69, 67, 67, 76, 88, 98, 124, 146, 32.62752 + 144, 134, 132, 141, 151, 162, 169, 172, 174, 182, 196, 202, 204, 188, 192, 197, 32.62753 + 206, 216, 225, 229, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62755 + 255, 255, 255, 255, 184, 56, 84, 95, 107, 111, 117, 127, 126, 119, 121, 111, 32.62756 + 107, 105, 102, 91, 82, 79, 78, 89, 95, 88, 76, 73, 80, 87, 102, 104, 32.62757 + 99, 88, 84, 87, 88, 86, 78, 109, 115, 85, 61, 66, 73, 65, 64, 83, 32.62758 + 100, 106, 109, 116, 125, 135, 164, 167, 161, 156, 159, 169, 179, 183, 190, 191, 32.62759 + 195, 201, 211, 218, 221, 223, 223, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.62760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62761 + 255, 255, 175, 10, 19, 55, 95, 100, 109, 113, 115, 118, 123, 118, 109, 109, 32.62762 + 103, 98, 93, 87, 78, 71, 72, 82, 85, 88, 90, 91, 93, 92, 91, 94, 32.62763 + 103, 109, 98, 81, 76, 88, 103, 90, 109, 121, 112, 85, 64, 58, 63, 66, 32.62764 + 72, 81, 88, 97, 109, 114, 122, 144, 157, 158, 158, 156, 157, 156, 153, 177, 32.62765 + 180, 184, 194, 208, 216, 216, 215, 221, 220, 219, 230, 255, 255, 255, 255, 255, 32.62766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62767 + 255, 255, 255, 19, 20, 35, 72, 104, 106, 108, 111, 110, 114, 115, 109, 99, 32.62768 + 95, 90, 85, 78, 73, 68, 69, 75, 79, 78, 83, 95, 104, 102, 90, 81, 32.62769 + 87, 97, 110, 106, 87, 76, 87, 106, 109, 104, 106, 118, 109, 83, 68, 68, 32.62770 + 60, 60, 61, 66, 76, 86, 93, 102, 127, 143, 154, 158, 160, 158, 154, 147, 32.62771 + 158, 158, 164, 182, 203, 215, 216, 213, 219, 221, 220, 219, 230, 255, 255, 255, 32.62772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62773 + 255, 255, 177, 18, 19, 36, 67, 92, 102, 105, 106, 105, 103, 104, 103, 97, 32.62774 + 87, 78, 74, 70, 64, 63, 68, 74, 79, 76, 85, 98, 104, 96, 84, 78, 32.62775 + 82, 89, 86, 88, 95, 97, 91, 84, 80, 97, 109, 111, 105, 110, 111, 92, 32.62776 + 65, 51, 54, 56, 62, 66, 75, 87, 101, 130, 141, 144, 142, 143, 150, 154, 32.62777 + 158, 151, 145, 144, 159, 183, 204, 214, 218, 218, 222, 222, 221, 218, 214, 255, 32.62778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62779 + 255, 255, 22, 17, 15, 20, 51, 89, 103, 99, 101, 100, 99, 96, 94, 88, 32.62780 + 83, 76, 75, 75, 72, 66, 69, 76, 81, 81, 81, 78, 84, 94, 96, 90, 32.62781 + 89, 93, 80, 82, 84, 84, 84, 80, 75, 70, 90, 97, 106, 113, 111, 102, 32.62782 + 89, 78, 71, 74, 78, 79, 74, 74, 86, 102, 122, 135, 140, 139, 137, 138, 32.62783 + 141, 141, 154, 145, 138, 140, 157, 182, 205, 221, 221, 225, 224, 222, 219, 215, 32.62784 + 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62785 + 255, 176, 13, 13, 10, 15, 40, 72, 96, 99, 93, 88, 88, 88, 85, 81, 32.62786 + 74, 72, 70, 79, 80, 79, 75, 78, 79, 75, 68, 58, 47, 48, 68, 88, 32.62787 + 93, 90, 89, 79, 92, 96, 80, 65, 64, 75, 80, 92, 77, 81, 103, 104, 32.62788 + 82, 78, 92, 88, 92, 93, 86, 73, 62, 67, 83, 108, 126, 140, 145, 142, 32.62789 + 140, 134, 129, 146, 149, 149, 143, 144, 161, 190, 219, 222, 227, 225, 223, 219, 32.62790 + 216, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62791 + 255, 175, 11, 7, 5, 4, 26, 65, 95, 98, 90, 87, 70, 73, 74, 75, 32.62792 + 71, 66, 67, 71, 76, 79, 79, 75, 77, 75, 62, 49, 44, 48, 63, 84, 32.62793 + 92, 88, 90, 98, 106, 109, 98, 75, 68, 82, 92, 89, 93, 86, 76, 73, 32.62794 + 82, 92, 92, 84, 102, 102, 101, 93, 75, 60, 63, 75, 108, 123, 135, 138, 32.62795 + 139, 144, 148, 150, 133, 150, 163, 155, 143, 148, 176, 208, 223, 227, 224, 221, 32.62796 + 217, 216, 214, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62797 + 255, 255, 13, 6, 10, 5, 15, 46, 82, 99, 89, 74, 66, 58, 59, 61, 32.62798 + 63, 65, 70, 75, 79, 86, 86, 87, 84, 72, 57, 50, 54, 47, 61, 81, 32.62799 + 96, 100, 99, 105, 117, 124, 105, 83, 92, 121, 129, 115, 106, 77, 71, 81, 32.62800 + 83, 82, 106, 121, 104, 102, 93, 90, 88, 72, 49, 37, 46, 76, 93, 116, 32.62801 + 137, 143, 142, 145, 157, 145, 158, 150, 151, 156, 135, 145, 202, 215, 223, 225, 32.62802 + 222, 214, 209, 208, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62803 + 255, 255, 176, 12, 6, 11, 12, 29, 61, 85, 89, 75, 59, 53, 51, 51, 32.62804 + 51, 52, 58, 64, 71, 75, 87, 78, 68, 61, 56, 47, 44, 49, 53, 65, 32.62805 + 87, 106, 117, 115, 115, 121, 106, 103, 99, 115, 136, 130, 106, 94, 75, 79, 32.62806 + 94, 100, 98, 115, 125, 110, 115, 108, 101, 89, 68, 45, 34, 37, 76, 88, 32.62807 + 105, 124, 138, 142, 147, 153, 157, 164, 153, 150, 152, 133, 139, 190, 215, 226, 32.62808 + 231, 232, 225, 217, 213, 210, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.62809 + 255, 255, 174, 17, 11, 4, 10, 18, 47, 80, 90, 79, 63, 51, 44, 46, 32.62810 + 46, 48, 52, 60, 67, 74, 78, 77, 64, 53, 48, 46, 41, 39, 43, 53, 32.62811 + 66, 88, 107, 120, 118, 111, 109, 89, 101, 111, 128, 137, 119, 93, 86, 111, 32.62812 + 117, 129, 131, 124, 131, 136, 126, 116, 114, 106, 90, 74, 62, 52, 47, 82, 32.62813 + 87, 95, 112, 130, 140, 146, 150, 154, 157, 148, 148, 154, 141, 147, 188, 218, 32.62814 + 230, 236, 238, 234, 224, 215, 210, 211, 255, 255, 255, 255, 255, 255, 255, 255, 32.62815 + 255, 255, 255, 15, 17, 7, 1, 9, 27, 57, 85, 85, 70, 56, 47, 42, 32.62816 + 38, 42, 49, 58, 68, 74, 75, 75, 59, 52, 50, 50, 49, 44, 40, 43, 32.62817 + 60, 73, 90, 105, 110, 104, 96, 91, 91, 106, 115, 120, 120, 103, 90, 97, 32.62818 + 130, 132, 134, 132, 126, 126, 126, 122, 116, 117, 106, 91, 88, 88, 75, 60, 32.62819 + 87, 90, 94, 106, 122, 136, 146, 151, 151, 152, 147, 149, 156, 148, 149, 173, 32.62820 + 212, 223, 231, 233, 234, 229, 220, 211, 213, 255, 255, 255, 255, 255, 255, 255, 32.62821 + 255, 255, 255, 176, 16, 16, 4, 1, 15, 50, 69, 83, 76, 61, 49, 40, 32.62822 + 32, 34, 42, 53, 64, 71, 71, 65, 59, 48, 46, 49, 50, 46, 40, 43, 32.62823 + 49, 69, 83, 97, 101, 97, 91, 89, 88, 92, 104, 108, 105, 101, 90, 90, 32.62824 + 106, 123, 124, 123, 125, 127, 122, 114, 115, 135, 129, 113, 98, 103, 106, 86, 32.62825 + 57, 89, 95, 100, 105, 113, 126, 140, 149, 155, 154, 151, 152, 153, 145, 140, 32.62826 + 148, 183, 197, 213, 224, 233, 234, 223, 210, 216, 216, 255, 255, 255, 255, 255, 32.62827 + 255, 255, 255, 19, 16, 16, 13, 3, 12, 37, 81, 82, 79, 66, 50, 36, 32.62828 + 30, 25, 46, 51, 58, 66, 69, 65, 55, 46, 48, 44, 42, 38, 34, 35, 32.62829 + 47, 60, 75, 88, 97, 94, 86, 86, 87, 89, 83, 92, 93, 90, 90, 83, 32.62830 + 86, 105, 119, 126, 125, 129, 132, 117, 105, 112, 143, 132, 115, 109, 119, 123, 32.62831 + 100, 68, 90, 100, 108, 107, 107, 117, 131, 140, 149, 147, 149, 152, 151, 147, 32.62832 + 143, 138, 144, 162, 185, 205, 223, 231, 222, 208, 217, 217, 255, 255, 255, 255, 32.62833 + 255, 255, 255, 255, 16, 13, 12, 9, 6, 31, 68, 94, 83, 70, 57, 42, 32.62834 + 29, 28, 33, 58, 57, 56, 57, 60, 58, 51, 45, 51, 42, 37, 35, 38, 32.62835 + 46, 61, 74, 78, 86, 88, 81, 76, 79, 80, 79, 77, 82, 79, 79, 86, 32.62836 + 84, 87, 105, 108, 118, 115, 112, 113, 95, 92, 115, 138, 128, 120, 121, 132, 32.62837 + 134, 115, 88, 97, 109, 117, 114, 111, 117, 127, 133, 140, 139, 144, 147, 144, 32.62838 + 148, 150, 142, 125, 136, 151, 167, 191, 211, 214, 205, 216, 215, 255, 255, 255, 32.62839 + 255, 255, 255, 255, 9, 11, 8, 6, 5, 9, 42, 91, 91, 76, 60, 49, 32.62840 + 37, 29, 34, 47, 57, 52, 44, 42, 45, 48, 48, 46, 48, 38, 34, 39, 32.62841 + 50, 63, 76, 86, 77, 79, 77, 69, 66, 68, 68, 62, 75, 75, 70, 71, 32.62842 + 81, 84, 91, 106, 102, 114, 107, 102, 100, 90, 105, 146, 140, 132, 127, 131, 32.62843 + 138, 134, 117, 97, 107, 116, 123, 120, 117, 121, 126, 127, 145, 141, 145, 144, 32.62844 + 138, 144, 149, 136, 125, 123, 125, 130, 153, 184, 199, 200, 211, 212, 224, 255, 32.62845 + 255, 255, 255, 255, 255, 11, 14, 11, 0, 3, 48, 88, 93, 76, 68, 49, 32.62846 + 28, 21, 34, 47, 51, 58, 54, 49, 48, 50, 53, 55, 53, 51, 45, 58, 32.62847 + 84, 89, 71, 67, 78, 69, 72, 76, 69, 57, 51, 57, 63, 65, 50, 57, 32.62848 + 67, 69, 85, 100, 91, 83, 84, 87, 90, 88, 92, 110, 129, 134, 120, 133, 32.62849 + 140, 145, 146, 124, 101, 124, 123, 135, 130, 108, 113, 125, 119, 133, 140, 143, 32.62850 + 139, 136, 138, 140, 138, 129, 128, 124, 114, 115, 134, 154, 168, 185, 194, 202, 32.62851 + 255, 255, 255, 255, 255, 255, 19, 9, 4, 9, 32, 75, 93, 82, 64, 58, 32.62852 + 45, 30, 30, 43, 55, 59, 59, 50, 40, 37, 42, 51, 62, 66, 69, 77, 32.62853 + 79, 75, 78, 78, 66, 47, 69, 66, 60, 53, 50, 51, 56, 61, 57, 55, 32.62854 + 62, 69, 70, 74, 78, 75, 77, 79, 80, 83, 85, 92, 112, 131, 130, 126, 32.62855 + 134, 148, 149, 141, 132, 109, 122, 124, 134, 135, 121, 115, 120, 123, 129, 135, 32.62856 + 138, 136, 135, 136, 140, 136, 126, 120, 124, 127, 124, 119, 124, 134, 148, 171, 32.62857 + 194, 255, 255, 255, 255, 255, 179, 35, 20, 20, 37, 63, 85, 87, 66, 60, 32.62858 + 51, 38, 33, 40, 55, 64, 65, 53, 52, 53, 58, 64, 69, 72, 71, 88, 32.62859 + 76, 71, 69, 59, 44, 41, 47, 65, 56, 49, 46, 48, 51, 53, 52, 45, 32.62860 + 54, 59, 60, 64, 60, 58, 65, 69, 69, 70, 76, 82, 93, 111, 128, 125, 32.62861 + 131, 129, 153, 146, 126, 137, 117, 120, 132, 138, 139, 133, 120, 114, 125, 129, 32.62862 + 133, 134, 133, 132, 135, 136, 129, 123, 113, 119, 133, 124, 105, 98, 110, 119, 32.62863 + 141, 172, 255, 255, 255, 255, 255, 35, 38, 32, 44, 63, 71, 77, 77, 67, 32.62864 + 62, 45, 30, 35, 50, 63, 68, 66, 63, 62, 68, 73, 78, 78, 74, 68, 32.62865 + 73, 56, 49, 47, 31, 16, 34, 67, 56, 50, 49, 48, 49, 48, 44, 39, 32.62866 + 39, 51, 46, 43, 57, 56, 52, 65, 57, 60, 63, 72, 82, 96, 109, 120, 32.62867 + 118, 132, 120, 142, 131, 107, 135, 120, 120, 144, 145, 135, 137, 127, 114, 121, 32.62868 + 134, 136, 134, 130, 131, 133, 129, 121, 119, 113, 114, 120, 114, 100, 97, 106, 32.62869 + 111, 119, 142, 172, 255, 255, 255, 255, 33, 32, 31, 48, 67, 70, 71, 77, 32.62870 + 74, 62, 39, 22, 34, 58, 72, 74, 72, 80, 73, 64, 60, 60, 62, 64, 32.62871 + 63, 41, 48, 40, 21, 20, 40, 60, 66, 53, 50, 48, 45, 40, 36, 35, 32.62872 + 34, 43, 50, 41, 41, 60, 62, 55, 64, 48, 55, 62, 70, 83, 95, 101, 32.62873 + 105, 109, 124, 108, 121, 107, 89, 127, 117, 122, 155, 152, 129, 131, 131, 119, 32.62874 + 115, 131, 134, 133, 130, 131, 131, 128, 123, 115, 117, 114, 107, 102, 103, 103, 32.62875 + 104, 102, 108, 133, 167, 255, 255, 255, 255, 34, 39, 31, 43, 61, 67, 73, 32.62876 + 69, 59, 52, 30, 21, 39, 62, 71, 74, 77, 75, 66, 57, 52, 49, 47, 32.62877 + 46, 43, 33, 27, 24, 31, 49, 64, 64, 56, 51, 48, 42, 33, 26, 25, 32.62878 + 34, 41, 48, 50, 47, 51, 64, 64, 55, 53, 47, 55, 65, 72, 81, 90, 32.62879 + 92, 92, 101, 112, 99, 98, 88, 88, 120, 111, 128, 152, 152, 132, 126, 130, 32.62880 + 124, 113, 118, 123, 127, 126, 126, 130, 130, 127, 115, 120, 117, 105, 99, 100, 32.62881 + 95, 91, 85, 102, 134, 173, 255, 255, 255, 255, 34, 38, 35, 49, 61, 64, 32.62882 + 66, 60, 43, 37, 28, 31, 50, 61, 61, 69, 80, 55, 49, 45, 43, 43, 32.62883 + 38, 31, 26, 37, 22, 28, 57, 76, 68, 59, 60, 47, 43, 37, 30, 28, 32.62884 + 32, 42, 50, 52, 47, 51, 55, 53, 53, 53, 45, 50, 60, 69, 73, 75, 32.62885 + 82, 83, 82, 92, 100, 97, 84, 80, 101, 120, 110, 133, 139, 144, 142, 129, 32.62886 + 124, 124, 115, 106, 114, 121, 121, 120, 123, 124, 125, 123, 120, 114, 106, 98, 32.62887 + 87, 82, 81, 81, 88, 115, 157, 196, 255, 255, 255, 30, 21, 31, 56, 63, 32.62888 + 61, 62, 61, 47, 30, 30, 45, 62, 61, 49, 57, 74, 49, 37, 24, 16, 32.62889 + 19, 23, 27, 29, 27, 49, 64, 65, 69, 78, 76, 64, 41, 38, 37, 36, 32.62890 + 37, 44, 50, 54, 53, 43, 47, 47, 33, 38, 52, 45, 55, 64, 73, 71, 32.62891 + 71, 74, 77, 75, 83, 90, 98, 76, 77, 112, 119, 109, 135, 122, 135, 149, 32.62892 + 132, 116, 118, 118, 100, 110, 117, 115, 113, 116, 117, 119, 130, 114, 104, 104, 32.62893 + 96, 79, 73, 83, 91, 74, 81, 130, 191, 255, 255, 255, 26, 28, 9, 47, 32.62894 + 68, 56, 59, 53, 42, 28, 35, 45, 52, 52, 50, 49, 53, 45, 28, 26, 32.62895 + 36, 39, 40, 38, 25, 27, 49, 70, 76, 80, 80, 65, 42, 34, 41, 44, 32.62896 + 37, 32, 40, 48, 51, 51, 45, 38, 38, 43, 45, 46, 44, 73, 74, 71, 32.62897 + 69, 67, 66, 68, 70, 82, 84, 81, 75, 83, 104, 119, 125, 124, 126, 119, 32.62898 + 117, 127, 123, 110, 109, 113, 110, 109, 108, 110, 112, 111, 109, 121, 113, 106, 32.62899 + 104, 101, 96, 86, 81, 81, 92, 89, 110, 173, 255, 255, 255, 15, 14, 4, 32.62900 + 48, 70, 59, 59, 51, 41, 31, 43, 53, 52, 45, 41, 42, 46, 39, 40, 32.62901 + 52, 53, 37, 30, 40, 45, 53, 62, 68, 64, 62, 64, 59, 51, 41, 44, 32.62902 + 44, 37, 34, 38, 45, 47, 53, 36, 32, 46, 52, 44, 50, 68, 64, 63, 32.62903 + 65, 64, 65, 68, 72, 75, 71, 79, 80, 77, 84, 101, 113, 116, 113, 111, 32.62904 + 103, 105, 120, 120, 108, 102, 109, 107, 106, 106, 109, 109, 110, 105, 97, 101, 32.62905 + 103, 97, 90, 91, 88, 80, 74, 86, 83, 101, 159, 220, 255, 174, 9, 0, 32.62906 + 1, 52, 73, 61, 56, 44, 38, 35, 51, 57, 48, 36, 35, 40, 45, 55, 32.62907 + 58, 65, 58, 34, 28, 46, 60, 61, 67, 71, 67, 57, 48, 43, 42, 46, 32.62908 + 45, 42, 37, 37, 42, 45, 45, 48, 39, 41, 49, 52, 50, 61, 78, 63, 32.62909 + 64, 65, 63, 63, 62, 65, 67, 63, 75, 81, 81, 87, 99, 106, 108, 106, 32.62910 + 104, 94, 97, 114, 115, 103, 98, 102, 101, 101, 101, 107, 108, 111, 106, 93, 32.62911 + 104, 113, 104, 95, 95, 94, 91, 72, 79, 77, 92, 143, 191, 255, 17, 13, 32.62912 + 0, 9, 60, 75, 60, 52, 38, 37, 42, 52, 50, 37, 31, 39, 51, 54, 32.62913 + 81, 63, 49, 39, 32, 36, 52, 59, 60, 63, 68, 66, 53, 36, 32, 37, 32.62914 + 44, 42, 39, 39, 43, 48, 49, 48, 43, 55, 53, 41, 45, 60, 69, 61, 32.62915 + 61, 62, 63, 61, 60, 59, 62, 62, 61, 73, 82, 82, 86, 95, 102, 103, 32.62916 + 102, 103, 94, 94, 105, 105, 96, 96, 89, 88, 90, 94, 100, 106, 109, 108, 32.62917 + 88, 90, 99, 98, 90, 81, 80, 81, 76, 76, 73, 85, 129, 182, 255, 17, 32.62918 + 12, 0, 18, 65, 72, 58, 50, 37, 43, 47, 46, 38, 29, 33, 49, 61, 32.62919 + 62, 74, 47, 29, 27, 33, 45, 56, 54, 59, 58, 53, 46, 34, 26, 35, 32.62920 + 48, 45, 41, 39, 42, 47, 50, 49, 48, 44, 53, 50, 41, 46, 60, 59, 32.62921 + 44, 52, 55, 58, 59, 61, 61, 66, 66, 64, 75, 81, 80, 84, 95, 100, 32.62922 + 97, 91, 96, 90, 87, 92, 90, 86, 93, 82, 81, 82, 85, 91, 97, 100, 32.62923 + 101, 95, 83, 86, 96, 93, 74, 68, 74, 85, 77, 73, 80, 119, 173, 255, 32.62924 + 15, 9, 2, 24, 65, 65, 55, 48, 39, 49, 47, 36, 27, 31, 44, 58, 32.62925 + 59, 59, 36, 25, 26, 33, 36, 44, 51, 49, 41, 45, 47, 40, 32, 30, 32.62926 + 37, 45, 48, 44, 44, 49, 52, 49, 45, 44, 49, 37, 35, 49, 56, 47, 32.62927 + 45, 48, 57, 60, 62, 60, 59, 57, 58, 59, 64, 74, 79, 77, 84, 92, 32.62928 + 96, 90, 78, 86, 83, 78, 80, 79, 80, 91, 84, 81, 79, 79, 81, 84, 32.62929 + 86, 84, 100, 84, 82, 95, 95, 80, 70, 73, 84, 75, 73, 79, 107, 160, 32.62930 + 218, 13, 6, 6, 30, 65, 61, 52, 43, 33, 48, 43, 30, 27, 45, 60, 32.62931 + 57, 45, 40, 15, 15, 29, 40, 38, 38, 43, 41, 27, 38, 46, 39, 34, 32.62932 + 35, 38, 37, 46, 44, 47, 54, 56, 49, 43, 43, 45, 30, 30, 48, 53, 32.62933 + 39, 40, 53, 65, 67, 67, 62, 58, 52, 50, 50, 62, 68, 72, 72, 83, 32.62934 + 91, 89, 79, 72, 78, 72, 67, 71, 70, 70, 80, 83, 79, 74, 72, 74, 32.62935 + 75, 75, 73, 78, 74, 72, 74, 79, 77, 71, 63, 72, 68, 73, 77, 91, 32.62936 + 140, 187, 9, 1, 10, 34, 66, 57, 48, 40, 24, 39, 38, 27, 34, 58, 32.62937 + 70, 54, 32, 23, 21, 18, 26, 39, 37, 36, 39, 31, 36, 43, 38, 23, 32.62938 + 20, 34, 46, 47, 41, 41, 48, 57, 59, 50, 46, 47, 38, 38, 40, 40, 32.62939 + 40, 39, 45, 49, 60, 62, 64, 61, 59, 54, 53, 52, 57, 62, 66, 71, 32.62940 + 81, 89, 84, 70, 75, 76, 67, 61, 66, 65, 62, 68, 78, 74, 69, 66, 32.62941 + 68, 69, 70, 69, 66, 79, 81, 71, 74, 90, 87, 70, 58, 59, 72, 72, 32.62942 + 78, 124, 179, 67, 7, 12, 56, 60, 50, 46, 35, 36, 36, 27, 25, 37, 32.62943 + 56, 58, 37, 14, 7, 22, 31, 37, 41, 37, 31, 26, 21, 44, 36, 27, 32.62944 + 24, 28, 33, 37, 39, 47, 49, 51, 53, 51, 49, 46, 43, 34, 36, 40, 32.62945 + 42, 45, 46, 51, 52, 59, 65, 67, 62, 56, 52, 52, 52, 65, 56, 59, 32.62946 + 72, 81, 77, 73, 72, 77, 72, 65, 58, 56, 55, 59, 60, 55, 63, 72, 32.62947 + 72, 68, 64, 66, 68, 73, 71, 61, 65, 81, 74, 68, 88, 76, 64, 48, 32.62948 + 64, 74, 85, 145, 202, 9, 8, 54, 56, 43, 41, 34, 35, 32, 22, 32, 32.62949 + 48, 58, 46, 22, 12, 20, 22, 30, 36, 31, 24, 21, 26, 33, 39, 32, 32.62950 + 28, 28, 33, 36, 37, 35, 41, 42, 44, 45, 44, 44, 42, 41, 36, 37, 32.62951 + 40, 42, 45, 47, 52, 54, 61, 63, 65, 61, 56, 53, 53, 51, 63, 59, 32.62952 + 61, 67, 73, 69, 64, 60, 67, 61, 56, 50, 49, 48, 50, 51, 55, 59, 32.62953 + 62, 65, 63, 62, 60, 60, 59, 70, 66, 62, 76, 76, 71, 80, 72, 63, 32.62954 + 47, 56, 60, 73, 134, 255, 11, 8, 52, 51, 37, 37, 34, 35, 32, 22, 32.62955 + 35, 51, 56, 38, 18, 13, 24, 24, 33, 39, 31, 20, 18, 28, 40, 35, 32.62956 + 30, 28, 31, 40, 42, 39, 33, 33, 34, 34, 36, 38, 39, 38, 36, 37, 32.62957 + 37, 41, 43, 45, 47, 54, 57, 64, 63, 62, 59, 57, 54, 53, 54, 62, 32.62958 + 65, 66, 65, 66, 65, 60, 52, 56, 54, 50, 46, 45, 43, 45, 45, 51, 32.62959 + 53, 53, 57, 60, 62, 59, 55, 51, 68, 66, 55, 62, 71, 71, 71, 66, 32.62960 + 69, 57, 59, 56, 70, 125, 255, 9, 13, 53, 49, 34, 38, 39, 39, 33, 32.62961 + 25, 34, 43, 47, 39, 29, 22, 21, 29, 39, 47, 42, 33, 27, 31, 39, 32.62962 + 36, 32, 28, 34, 42, 43, 37, 30, 26, 29, 31, 34, 37, 36, 33, 33, 32.62963 + 35, 37, 40, 40, 42, 46, 53, 58, 64, 60, 58, 57, 56, 53, 52, 53, 32.62964 + 55, 64, 67, 65, 64, 69, 65, 55, 55, 51, 51, 48, 45, 43, 42, 43, 32.62965 + 44, 44, 49, 53, 59, 61, 62, 60, 56, 65, 62, 50, 49, 55, 61, 67, 32.62966 + 62, 74, 69, 71, 65, 75, 127, 255, 6, 15, 53, 47, 32, 41, 43, 42, 32.62967 + 32, 21, 35, 44, 46, 41, 35, 30, 26, 41, 45, 47, 44, 42, 35, 34, 32.62968 + 35, 36, 31, 28, 31, 37, 36, 32, 26, 24, 27, 31, 37, 37, 36, 31, 32.62969 + 29, 33, 35, 39, 38, 39, 42, 50, 57, 64, 59, 56, 57, 55, 49, 49, 32.62970 + 53, 52, 61, 64, 62, 62, 68, 65, 57, 54, 51, 51, 49, 45, 44, 43, 32.62971 + 41, 35, 40, 47, 49, 51, 53, 55, 59, 62, 58, 60, 63, 55, 48, 51, 32.62972 + 58, 61, 74, 69, 69, 63, 74, 129, 255, 7, 13, 53, 45, 28, 40, 48, 32.62973 + 45, 28, 11, 38, 54, 50, 37, 32, 38, 42, 47, 43, 39, 38, 39, 40, 32.62974 + 38, 36, 31, 28, 26, 26, 29, 29, 27, 24, 25, 28, 32, 37, 36, 35, 32.62975 + 29, 25, 30, 33, 35, 33, 33, 36, 46, 55, 61, 58, 57, 60, 54, 45, 32.62976 + 45, 53, 57, 58, 57, 56, 57, 61, 58, 53, 55, 53, 51, 47, 45, 42, 32.62977 + 42, 41, 35, 38, 45, 45, 44, 43, 45, 49, 60, 50, 65, 78, 67, 52, 32.62978 + 51, 50, 60, 64, 55, 54, 51, 66, 129, 255, 8, 12, 51, 42, 27, 41, 32.62979 + 51, 45, 27, 17, 42, 54, 46, 35, 37, 46, 48, 38, 34, 34, 37, 41, 32.62980 + 41, 39, 35, 27, 28, 31, 32, 31, 30, 29, 26, 28, 29, 29, 31, 30, 32.62981 + 29, 26, 23, 28, 32, 33, 31, 31, 34, 46, 56, 61, 60, 63, 65, 56, 32.62982 + 43, 44, 55, 64, 54, 49, 54, 57, 57, 53, 52, 58, 55, 53, 49, 46, 32.62983 + 43, 43, 42, 41, 40, 43, 43, 45, 45, 45, 44, 51, 45, 63, 73, 65, 32.62984 + 63, 63, 49, 54, 51, 42, 50, 52, 63, 125, 255, 173, 14, 54, 44, 30, 32.62985 + 44, 54, 47, 26, 31, 42, 44, 37, 39, 49, 52, 44, 22, 27, 36, 45, 32.62986 + 49, 45, 36, 29, 25, 30, 35, 37, 34, 32, 33, 33, 35, 33, 29, 29, 32.62987 + 28, 26, 25, 24, 29, 32, 33, 30, 28, 33, 45, 57, 61, 62, 69, 71, 32.62988 + 59, 44, 46, 58, 69, 55, 49, 56, 62, 59, 56, 58, 63, 60, 55, 51, 32.62989 + 46, 45, 45, 45, 46, 40, 38, 43, 50, 53, 49, 43, 42, 40, 52, 57, 32.62990 + 52, 67, 75, 53, 48, 44, 38, 57, 61, 68, 124, 255, 255, 12, 33, 57, 32.62991 + 34, 37, 67, 42, 17, 31, 35, 39, 42, 50, 55, 41, 20, 20, 31, 43, 32.62992 + 46, 44, 42, 36, 31, 32, 28, 28, 33, 33, 28, 27, 34, 43, 45, 44, 32.62993 + 43, 40, 38, 37, 35, 37, 34, 30, 28, 31, 41, 53, 62, 67, 74, 76, 32.62994 + 72, 58, 38, 43, 74, 74, 72, 68, 63, 62, 63, 63, 61, 62, 60, 57, 32.62995 + 55, 54, 52, 49, 47, 48, 47, 46, 44, 45, 46, 46, 47, 41, 39, 41, 32.62996 + 46, 49, 51, 51, 48, 46, 45, 41, 44, 56, 74, 190, 255, 255, 14, 26, 32.62997 + 48, 34, 43, 66, 44, 23, 29, 30, 35, 43, 46, 37, 28, 19, 29, 34, 32.62998 + 40, 40, 38, 38, 34, 28, 30, 25, 24, 27, 28, 26, 29, 36, 45, 47, 32.62999 + 46, 45, 42, 39, 36, 32, 39, 35, 32, 30, 33, 41, 54, 65, 73, 79, 32.63000 + 77, 74, 66, 47, 56, 83, 81, 80, 77, 68, 68, 72, 73, 67, 67, 64, 32.63001 + 62, 59, 57, 55, 53, 50, 51, 50, 51, 49, 50, 49, 48, 46, 42, 41, 32.63002 + 47, 50, 54, 53, 50, 43, 42, 36, 32, 43, 59, 80, 255, 255, 255, 12, 32.63003 + 14, 32, 36, 50, 62, 44, 32, 34, 34, 42, 50, 42, 24, 22, 28, 36, 32.63004 + 36, 35, 32, 32, 34, 31, 26, 29, 24, 22, 24, 26, 27, 32, 37, 36, 32.63005 + 36, 35, 36, 36, 34, 30, 26, 29, 29, 29, 34, 40, 54, 69, 79, 87, 32.63006 + 87, 82, 77, 72, 59, 67, 93, 89, 91, 86, 74, 74, 82, 83, 73, 76, 32.63007 + 73, 71, 69, 66, 62, 58, 58, 57, 57, 59, 58, 56, 53, 51, 47, 47, 32.63008 + 45, 51, 56, 58, 55, 48, 38, 36, 28, 27, 42, 58, 75, 255, 255, 255, 32.63009 + 13, 5, 18, 38, 56, 55, 42, 37, 35, 44, 51, 47, 32, 19, 24, 32, 32.63010 + 33, 31, 29, 27, 30, 34, 32, 26, 27, 25, 23, 24, 25, 28, 32, 34, 32.63011 + 26, 24, 24, 27, 31, 30, 28, 25, 27, 31, 38, 47, 56, 69, 82, 92, 32.63012 + 97, 100, 93, 85, 78, 68, 77, 102, 98, 102, 96, 82, 81, 92, 92, 79, 32.63013 + 85, 83, 81, 78, 73, 70, 66, 67, 61, 62, 65, 65, 62, 58, 54, 50, 32.63014 + 49, 48, 51, 53, 55, 52, 43, 35, 31, 25, 27, 40, 51, 65, 255, 255, 32.63015 + 255, 16, 3, 9, 42, 59, 45, 38, 39, 29, 49, 54, 35, 19, 19, 28, 32.63016 + 27, 22, 22, 24, 26, 32, 37, 34, 27, 24, 25, 26, 26, 27, 28, 29, 32.63017 + 26, 19, 15, 18, 21, 27, 29, 29, 30, 36, 43, 54, 65, 74, 82, 91, 32.63018 + 95, 108, 114, 107, 97, 86, 77, 87, 110, 109, 111, 102, 87, 88, 97, 96, 32.63019 + 85, 95, 94, 93, 89, 83, 78, 76, 77, 70, 71, 74, 74, 72, 67, 63, 32.63020 + 59, 54, 51, 52, 54, 55, 52, 43, 31, 25, 25, 32, 43, 49, 62, 255, 32.63021 + 255, 255, 176, 5, 6, 45, 60, 37, 35, 39, 27, 50, 53, 32, 21, 29, 32.63022 + 34, 23, 13, 18, 24, 29, 34, 37, 34, 27, 22, 26, 27, 26, 26, 29, 32.63023 + 29, 21, 14, 14, 17, 21, 25, 29, 35, 39, 47, 55, 72, 86, 96, 106, 32.63024 + 112, 115, 120, 124, 117, 107, 101, 92, 99, 119, 121, 114, 104, 96, 97, 102, 32.63025 + 100, 94, 105, 105, 105, 100, 93, 88, 88, 89, 83, 84, 85, 85, 85, 82, 32.63026 + 78, 73, 68, 63, 63, 63, 65, 59, 45, 32, 20, 26, 34, 44, 55, 136, 32.63027 + 255, 255, 255, 255, 7, 6, 47, 59, 31, 36, 40, 27, 41, 45, 38, 35, 32.63028 + 37, 34, 19, 12, 20, 28, 31, 32, 33, 30, 25, 21, 25, 25, 22, 24, 32.63029 + 30, 32, 24, 17, 20, 29, 33, 39, 47, 60, 73, 75, 83, 98, 109, 120, 32.63030 + 129, 136, 139, 133, 131, 122, 116, 120, 115, 114, 124, 128, 113, 103, 103, 108, 32.63031 + 108, 106, 107, 114, 117, 118, 113, 105, 100, 99, 101, 98, 99, 100, 100, 101, 32.63032 + 98, 95, 91, 85, 82, 83, 83, 83, 73, 53, 35, 21, 28, 34, 43, 63, 32.63033 + 255, 255, 255, 255, 255, 9, 7, 48, 58, 29, 37, 41, 22, 27, 33, 40, 32.63034 + 43, 36, 25, 12, 16, 23, 31, 32, 30, 29, 26, 23, 21, 24, 23, 19, 32.63035 + 21, 30, 35, 31, 32, 37, 51, 59, 66, 80, 98, 116, 117, 122, 128, 133, 32.63036 + 138, 141, 145, 146, 143, 135, 122, 120, 133, 132, 125, 126, 131, 112, 103, 109, 32.63037 + 114, 112, 112, 117, 122, 126, 126, 121, 114, 108, 109, 109, 110, 110, 113, 113, 32.63038 + 112, 110, 110, 107, 99, 97, 99, 101, 101, 84, 59, 38, 26, 31, 31, 40, 32.63039 + 70, 255, 255, 255, 255, 255, 4, 17, 58, 55, 26, 37, 48, 26, 24, 27, 32.63040 + 37, 41, 30, 19, 10, 25, 24, 26, 27, 27, 26, 25, 24, 18, 15, 17, 32.63041 + 25, 30, 30, 34, 40, 52, 60, 75, 84, 96, 115, 132, 144, 150, 156, 158, 32.63042 + 163, 163, 163, 160, 155, 149, 133, 110, 117, 121, 113, 122, 120, 118, 109, 104, 32.63043 + 110, 117, 118, 124, 130, 128, 124, 123, 127, 126, 120, 118, 120, 122, 118, 120, 32.63044 + 115, 106, 113, 118, 104, 101, 107, 122, 118, 119, 113, 74, 39, 35, 40, 27, 32.63045 + 49, 67, 255, 255, 255, 255, 255, 176, 22, 51, 47, 26, 41, 50, 25, 22, 32.63046 + 24, 34, 39, 33, 25, 18, 27, 25, 25, 25, 24, 23, 21, 21, 26, 23, 32.63047 + 25, 31, 34, 37, 45, 54, 77, 89, 102, 111, 123, 141, 156, 166, 176, 174, 32.63048 + 168, 161, 157, 159, 166, 167, 146, 139, 123, 130, 129, 117, 118, 109, 116, 110, 32.63049 + 110, 118, 125, 126, 127, 133, 135, 132, 132, 134, 130, 122, 118, 120, 119, 120, 32.63050 + 128, 131, 127, 124, 117, 103, 109, 110, 122, 136, 147, 150, 113, 45, 31, 34, 32.63051 + 27, 50, 134, 255, 255, 255, 255, 255, 255, 21, 38, 35, 26, 46, 50, 30, 32.63052 + 26, 24, 30, 35, 33, 30, 24, 29, 26, 24, 22, 21, 19, 19, 18, 26, 32.63053 + 25, 26, 28, 30, 37, 52, 68, 101, 115, 128, 135, 146, 161, 174, 181, 185, 32.63054 + 184, 181, 173, 167, 163, 164, 163, 147, 146, 133, 136, 129, 117, 119, 108, 113, 32.63055 + 111, 115, 124, 130, 131, 133, 136, 141, 141, 140, 140, 134, 125, 120, 121, 124, 32.63056 + 119, 116, 116, 120, 127, 136, 136, 131, 129, 133, 153, 156, 166, 149, 54, 27, 32.63057 + 28, 35, 60, 255, 255, 255, 255, 255, 255, 255, 15, 28, 29, 30, 51, 46, 32.63058 + 37, 32, 25, 26, 30, 32, 31, 26, 30, 26, 24, 22, 20, 20, 21, 21, 32.63059 + 23, 24, 25, 24, 27, 40, 62, 85, 119, 133, 146, 154, 165, 177, 185, 188, 32.63060 + 187, 187, 186, 185, 181, 177, 170, 162, 165, 161, 143, 137, 131, 120, 128, 123, 32.63061 + 110, 111, 119, 127, 133, 136, 139, 142, 146, 147, 147, 143, 138, 131, 126, 125, 32.63062 + 124, 125, 125, 135, 139, 131, 127, 129, 122, 128, 139, 168, 155, 167, 169, 53, 32.63063 + 28, 31, 58, 87, 255, 255, 255, 255, 255, 255, 255, 17, 32, 37, 40, 54, 32.63064 + 40, 38, 33, 25, 23, 28, 33, 35, 29, 28, 25, 24, 23, 23, 24, 26, 32.63065 + 27, 26, 29, 30, 30, 37, 56, 82, 108, 139, 155, 166, 172, 180, 191, 195, 32.63066 + 194, 197, 191, 183, 181, 177, 166, 153, 140, 122, 118, 104, 109, 102, 92, 103, 32.63067 + 102, 104, 108, 117, 124, 130, 137, 142, 146, 148, 150, 149, 147, 144, 138, 131, 32.63068 + 126, 122, 113, 99, 96, 95, 78, 79, 98, 86, 91, 114, 158, 156, 175, 172, 32.63069 + 43, 28, 40, 95, 124, 255, 255, 255, 255, 255, 255, 255, 178, 43, 49, 48, 32.63070 + 55, 35, 32, 29, 23, 20, 27, 36, 39, 33, 26, 25, 25, 26, 27, 28, 32.63071 + 30, 31, 27, 31, 34, 36, 49, 75, 103, 127, 154, 170, 177, 182, 190, 196, 32.63072 + 200, 195, 197, 193, 183, 172, 152, 120, 82, 58, 40, 43, 47, 79, 87, 72, 32.63073 + 78, 79, 95, 103, 113, 122, 129, 139, 147, 150, 153, 155, 156, 154, 152, 144, 32.63074 + 128, 113, 86, 67, 35, 25, 31, 31, 61, 114, 96, 72, 78, 120, 140, 179, 32.63075 + 166, 42, 34, 52, 129, 155, 255, 255, 255, 255, 255, 255, 255, 255, 44, 51, 32.63076 + 46, 51, 32, 29, 28, 23, 20, 27, 37, 40, 32, 25, 24, 26, 27, 29, 32.63077 + 30, 30, 30, 26, 31, 35, 41, 60, 90, 119, 142, 165, 180, 185, 188, 192, 32.63078 + 200, 200, 195, 191, 184, 169, 143, 106, 66, 28, 8, 21, 26, 44, 98, 113, 32.63079 + 86, 81, 80, 85, 99, 113, 122, 131, 142, 149, 150, 158, 162, 165, 164, 162, 32.63080 + 147, 117, 89, 41, 40, 27, 35, 50, 47, 77, 136, 123, 77, 78, 102, 129, 32.63081 + 176, 154, 50, 48, 68, 158, 174, 255, 255, 255, 255, 255, 255, 255, 255, 38, 32.63082 + 45, 41, 48, 33, 36, 35, 28, 24, 27, 33, 32, 24, 25, 26, 28, 30, 32.63083 + 31, 31, 29, 28, 28, 33, 38, 49, 74, 110, 140, 159, 178, 191, 192, 195, 32.63084 + 199, 204, 205, 199, 189, 173, 142, 103, 65, 44, 40, 45, 44, 42, 60, 117, 32.63085 + 129, 87, 71, 68, 86, 102, 119, 131, 141, 150, 153, 152, 168, 173, 176, 179, 32.63086 + 176, 156, 114, 78, 57, 53, 33, 36, 48, 41, 74, 144, 122, 87, 108, 131, 32.63087 + 151, 190, 151, 62, 72, 92, 183, 188, 255, 255, 255, 255, 255, 255, 255, 255, 32.63088 + 42, 57, 50, 37, 34, 35, 39, 31, 39, 46, 32, 24, 25, 25, 33, 38, 32.63089 + 39, 38, 35, 31, 26, 18, 35, 48, 68, 113, 151, 166, 175, 190, 195, 197, 32.63090 + 199, 198, 196, 189, 184, 177, 153, 132, 131, 143, 147, 134, 114, 100, 98, 104, 32.63091 + 111, 115, 114, 115, 119, 130, 135, 145, 154, 163, 166, 165, 165, 181, 186, 186, 32.63092 + 187, 185, 170, 141, 116, 97, 94, 98, 106, 108, 112, 130, 151, 166, 184, 192, 32.63093 + 184, 174, 191, 175, 88, 139, 171, 199, 206, 255, 255, 255, 255, 255, 255, 255, 32.63094 + 255, 49, 59, 43, 32, 41, 32, 34, 32, 38, 36, 28, 20, 19, 21, 35, 32.63095 + 42, 42, 36, 30, 25, 25, 23, 45, 62, 86, 129, 164, 181, 190, 198, 198, 32.63096 + 200, 200, 200, 199, 193, 189, 168, 170, 174, 177, 177, 174, 166, 157, 143, 139, 32.63097 + 140, 143, 142, 137, 134, 136, 150, 151, 154, 162, 172, 177, 177, 173, 182, 186, 32.63098 + 192, 197, 201, 193, 171, 150, 146, 138, 137, 146, 150, 155, 169, 188, 188, 196, 32.63099 + 204, 210, 204, 212, 206, 145, 177, 196, 213, 215, 255, 255, 255, 255, 255, 255, 32.63100 + 255, 255, 188, 58, 30, 20, 38, 29, 28, 37, 41, 32, 33, 30, 25, 23, 32.63101 + 34, 44, 42, 33, 24, 23, 24, 29, 55, 78, 103, 142, 172, 188, 198, 199, 32.63102 + 201, 201, 201, 201, 202, 198, 196, 190, 194, 196, 190, 182, 176, 178, 180, 168, 32.63103 + 162, 158, 159, 153, 146, 142, 143, 154, 150, 151, 159, 172, 180, 181, 176, 190, 32.63104 + 194, 198, 202, 207, 204, 187, 168, 159, 148, 142, 149, 155, 159, 169, 182, 194, 32.63105 + 194, 201, 220, 220, 218, 222, 189, 201, 210, 212, 212, 255, 255, 255, 255, 255, 32.63106 + 255, 255, 255, 255, 48, 22, 13, 27, 26, 26, 43, 39, 32, 46, 43, 33, 32.63107 + 31, 36, 40, 39, 34, 25, 25, 27, 32, 60, 89, 116, 150, 174, 187, 198, 32.63108 + 201, 201, 199, 200, 201, 203, 204, 201, 204, 197, 187, 184, 181, 180, 176, 170, 32.63109 + 160, 155, 154, 157, 154, 149, 146, 149, 151, 152, 156, 165, 177, 185, 186, 187, 32.63110 + 200, 202, 204, 206, 209, 206, 194, 180, 175, 166, 161, 162, 162, 162, 170, 179, 32.63111 + 193, 194, 199, 222, 224, 219, 227, 207, 204, 207, 209, 208, 255, 255, 255, 255, 32.63112 + 255, 255, 255, 255, 255, 42, 23, 15, 17, 22, 22, 40, 31, 40, 66, 50, 32.63113 + 38, 40, 32, 29, 30, 31, 27, 27, 30, 38, 66, 96, 124, 157, 176, 187, 32.63114 + 197, 201, 199, 198, 199, 202, 203, 204, 204, 191, 187, 189, 196, 202, 199, 186, 32.63115 + 173, 166, 163, 164, 167, 167, 164, 163, 166, 162, 167, 176, 183, 188, 192, 195, 32.63116 + 198, 197, 200, 203, 206, 212, 216, 210, 202, 198, 195, 194, 191, 185, 184, 193, 32.63117 + 201, 196, 211, 213, 224, 226, 224, 229, 209, 196, 202, 207, 208, 255, 255, 255, 32.63118 + 255, 255, 255, 255, 255, 255, 41, 27, 19, 14, 23, 27, 36, 25, 60, 98, 32.63119 + 65, 48, 39, 25, 21, 28, 33, 31, 31, 34, 49, 76, 102, 129, 164, 179, 32.63120 + 188, 200, 200, 199, 198, 200, 203, 205, 206, 205, 196, 200, 204, 205, 205, 202, 32.63121 + 200, 199, 192, 189, 188, 188, 187, 181, 180, 183, 179, 186, 193, 196, 197, 195, 32.63122 + 197, 200, 200, 203, 207, 209, 216, 222, 219, 213, 203, 208, 211, 208, 202, 201, 32.63123 + 209, 218, 207, 227, 224, 227, 229, 229, 231, 209, 198, 205, 211, 212, 255, 255, 32.63124 + 255, 255, 255, 255, 255, 255, 255, 49, 27, 16, 17, 28, 33, 33, 20, 86, 32.63125 + 131, 81, 60, 35, 22, 24, 34, 40, 37, 39, 45, 58, 81, 106, 133, 167, 32.63126 + 182, 189, 200, 201, 198, 198, 200, 204, 206, 205, 206, 213, 211, 209, 204, 201, 32.63127 + 202, 209, 215, 213, 209, 205, 203, 200, 195, 192, 195, 194, 196, 198, 198, 199, 32.63128 + 198, 198, 201, 204, 207, 211, 210, 217, 222, 220, 214, 214, 219, 223, 222, 219, 32.63129 + 220, 224, 225, 216, 232, 223, 226, 234, 231, 230, 216, 203, 206, 210, 213, 255, 32.63130 + 255, 255, 255, 255, 255, 255, 255, 255, 188, 24, 12, 21, 26, 34, 27, 12, 32.63131 + 95, 147, 84, 63, 31, 24, 32, 45, 49, 43, 48, 57, 67, 86, 107, 136, 32.63132 + 169, 184, 190, 201, 200, 200, 200, 202, 206, 207, 208, 206, 208, 205, 206, 211, 32.63133 + 217, 220, 214, 209, 217, 213, 210, 210, 207, 201, 200, 201, 205, 202, 199, 199, 32.63134 + 201, 203, 205, 205, 199, 203, 206, 209, 215, 222, 224, 220, 219, 221, 223, 222, 32.63135 + 223, 224, 224, 221, 223, 231, 220, 228, 242, 232, 233, 229, 206, 205, 206, 209, 32.63136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 17, 17, 21, 34, 29, 32.63137 + 7, 104, 140, 95, 58, 29, 36, 50, 55, 57, 60, 68, 70, 82, 94, 115, 32.63138 + 140, 166, 185, 198, 203, 204, 203, 205, 205, 206, 205, 206, 206, 209, 208, 209, 32.63139 + 210, 211, 215, 217, 218, 220, 224, 221, 214, 208, 209, 206, 199, 205, 208, 208, 32.63140 + 200, 198, 202, 206, 204, 203, 201, 201, 206, 213, 219, 222, 222, 214, 228, 230, 32.63141 + 219, 216, 228, 234, 227, 220, 223, 228, 231, 235, 232, 231, 230, 206, 208, 210, 32.63142 + 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 26, 12, 20, 40, 32.63143 + 23, 13, 71, 136, 98, 74, 52, 42, 40, 49, 78, 106, 117, 110, 104, 107, 32.63144 + 122, 146, 169, 184, 196, 203, 199, 198, 202, 203, 207, 208, 210, 210, 211, 211, 32.63145 + 214, 216, 218, 218, 219, 219, 219, 222, 219, 211, 207, 206, 202, 195, 193, 198, 32.63146 + 198, 194, 193, 199, 203, 202, 200, 201, 205, 207, 215, 220, 222, 223, 218, 221, 32.63147 + 224, 223, 223, 223, 223, 222, 222, 223, 227, 230, 234, 235, 234, 233, 209, 211, 32.63148 + 213, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 15, 30, 32.63149 + 52, 20, 22, 24, 108, 92, 93, 68, 65, 66, 76, 112, 147, 150, 130, 133, 32.63150 + 124, 130, 151, 174, 184, 196, 207, 200, 197, 201, 203, 207, 208, 211, 211, 212, 32.63151 + 213, 217, 218, 219, 218, 216, 216, 217, 219, 216, 210, 205, 200, 195, 190, 189, 32.63152 + 191, 192, 189, 192, 195, 198, 198, 195, 198, 205, 208, 213, 217, 221, 224, 223, 32.63153 + 215, 214, 221, 224, 220, 218, 221, 222, 219, 222, 227, 231, 235, 235, 234, 224, 32.63154 + 226, 228, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 39, 26, 32.63155 + 38, 49, 23, 30, 0, 72, 97, 132, 111, 109, 94, 75, 94, 139, 168, 169, 32.63156 + 155, 139, 136, 157, 179, 188, 200, 211, 204, 201, 204, 205, 208, 208, 210, 209, 32.63157 + 208, 211, 214, 218, 217, 214, 211, 210, 216, 217, 213, 210, 203, 196, 189, 182, 32.63158 + 181, 180, 180, 181, 186, 189, 188, 187, 188, 194, 201, 207, 210, 214, 219, 224, 32.63159 + 224, 210, 200, 198, 203, 208, 213, 217, 217, 217, 217, 221, 227, 230, 231, 230, 32.63160 + 237, 238, 241, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 31, 32.63161 + 38, 45, 39, 28, 34, 5, 43, 105, 163, 141, 147, 137, 110, 113, 146, 177, 32.63162 + 183, 171, 156, 150, 165, 181, 191, 201, 211, 207, 204, 205, 206, 207, 207, 209, 32.63163 + 209, 206, 210, 212, 214, 214, 211, 208, 206, 214, 213, 211, 206, 198, 187, 178, 32.63164 + 174, 164, 160, 159, 166, 176, 180, 179, 178, 187, 193, 200, 205, 208, 210, 216, 32.63165 + 220, 217, 209, 189, 167, 166, 183, 197, 200, 213, 213, 214, 217, 223, 227, 227, 32.63166 + 227, 236, 238, 239, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63167 + 180, 48, 53, 43, 33, 31, 10, 14, 80, 132, 157, 176, 188, 180, 179, 186, 32.63168 + 186, 173, 184, 174, 167, 173, 185, 194, 202, 204, 204, 201, 203, 206, 207, 209, 32.63169 + 211, 212, 208, 208, 208, 209, 210, 208, 209, 207, 208, 204, 204, 200, 190, 176, 32.63170 + 165, 161, 146, 143, 148, 161, 177, 185, 186, 186, 192, 194, 197, 199, 202, 206, 32.63171 + 209, 210, 212, 210, 187, 155, 145, 162, 178, 181, 205, 209, 213, 216, 220, 223, 32.63172 + 226, 227, 233, 235, 236, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63173 + 255, 255, 40, 58, 58, 34, 31, 14, 8, 46, 71, 129, 154, 176, 181, 183, 32.63174 + 189, 195, 192, 188, 186, 184, 183, 188, 200, 207, 203, 204, 201, 202, 204, 205, 32.63175 + 206, 206, 206, 206, 204, 202, 201, 203, 203, 207, 207, 201, 195, 194, 190, 180, 32.63176 + 161, 149, 145, 144, 137, 143, 163, 184, 193, 197, 197, 196, 193, 191, 188, 191, 32.63177 + 192, 192, 190, 193, 197, 187, 164, 144, 145, 157, 168, 189, 197, 206, 209, 212, 32.63178 + 215, 221, 227, 233, 235, 238, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63179 + 255, 255, 255, 21, 53, 67, 33, 35, 23, 29, 38, 40, 25, 75, 132, 162, 32.63180 + 168, 169, 175, 182, 186, 194, 194, 190, 196, 208, 214, 206, 206, 203, 205, 203, 32.63181 + 202, 201, 200, 200, 203, 198, 195, 192, 193, 196, 201, 201, 189, 182, 180, 180, 32.63182 + 169, 151, 139, 136, 143, 136, 139, 159, 180, 190, 190, 190, 188, 182, 175, 172, 32.63183 + 175, 176, 176, 175, 171, 175, 180, 171, 148, 131, 137, 156, 170, 182, 194, 201, 32.63184 + 202, 208, 217, 225, 234, 234, 238, 239, 255, 255, 255, 255, 255, 255, 255, 255, 32.63185 + 255, 255, 255, 255, 173, 46, 52, 43, 26, 26, 28, 35, 42, 30, 9, 58, 32.63186 + 122, 169, 187, 174, 185, 187, 195, 201, 198, 200, 206, 206, 202, 206, 204, 206, 32.63187 + 204, 204, 203, 200, 199, 195, 197, 196, 191, 187, 190, 191, 184, 177, 169, 165, 32.63188 + 161, 156, 151, 145, 140, 150, 146, 145, 152, 161, 164, 155, 145, 143, 140, 144, 32.63189 + 153, 165, 170, 172, 169, 169, 164, 171, 176, 161, 134, 131, 146, 159, 167, 181, 32.63190 + 194, 200, 200, 214, 230, 235, 238, 241, 241, 255, 255, 255, 255, 255, 255, 255, 32.63191 + 255, 255, 255, 255, 255, 255, 27, 43, 47, 33, 28, 26, 31, 41, 15, 0, 32.63192 + 17, 54, 106, 156, 163, 163, 182, 195, 201, 200, 199, 202, 206, 205, 206, 205, 32.63193 + 205, 203, 203, 200, 199, 196, 194, 195, 194, 187, 186, 189, 191, 182, 165, 163, 32.63194 + 163, 155, 145, 144, 153, 164, 167, 160, 153, 145, 135, 128, 118, 109, 72, 73, 32.63195 + 85, 106, 135, 155, 166, 169, 149, 161, 177, 178, 165, 145, 136, 134, 144, 154, 32.63196 + 169, 183, 190, 195, 213, 230, 237, 239, 241, 255, 255, 255, 255, 255, 255, 255, 32.63197 + 255, 255, 255, 255, 255, 255, 255, 5, 35, 50, 43, 32, 23, 26, 38, 23, 32.63198 + 7, 6, 15, 70, 152, 178, 166, 178, 192, 200, 199, 197, 199, 208, 211, 203, 32.63199 + 202, 202, 202, 202, 199, 198, 195, 191, 191, 191, 185, 186, 188, 189, 181, 167, 32.63200 + 162, 156, 148, 143, 149, 163, 175, 175, 173, 166, 154, 140, 131, 126, 125, 135, 32.63201 + 127, 127, 134, 150, 161, 167, 167, 162, 182, 196, 188, 173, 158, 143, 128, 134, 32.63202 + 145, 162, 174, 183, 192, 215, 234, 237, 239, 241, 255, 255, 255, 255, 255, 255, 32.63203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 49, 48, 41, 30, 26, 31, 32.63204 + 20, 12, 3, 3, 53, 142, 183, 172, 183, 193, 198, 199, 199, 200, 207, 210, 32.63205 + 202, 199, 201, 199, 199, 196, 195, 193, 186, 186, 186, 182, 183, 187, 186, 177, 32.63206 + 170, 156, 144, 143, 154, 165, 170, 171, 175, 175, 175, 168, 162, 159, 159, 158, 32.63207 + 148, 141, 136, 135, 142, 150, 158, 165, 190, 200, 203, 191, 175, 162, 149, 139, 32.63208 + 132, 142, 158, 170, 181, 195, 218, 239, 237, 239, 241, 255, 255, 255, 255, 255, 32.63209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 42, 44, 48, 39, 26, 32.63210 + 25, 19, 14, 1, 3, 41, 118, 178, 185, 195, 196, 196, 199, 203, 204, 207, 32.63211 + 203, 200, 196, 199, 197, 196, 194, 193, 191, 186, 187, 187, 185, 186, 186, 182, 32.63212 + 172, 158, 150, 145, 152, 165, 176, 178, 174, 183, 181, 180, 176, 174, 172, 169, 32.63213 + 163, 149, 144, 144, 144, 148, 161, 179, 195, 197, 196, 195, 194, 183, 167, 155, 32.63214 + 154, 134, 144, 157, 167, 181, 199, 222, 238, 235, 238, 244, 255, 255, 255, 255, 32.63215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 32, 44, 43, 32.63216 + 30, 24, 25, 21, 2, 7, 32, 91, 168, 198, 203, 200, 196, 201, 206, 206, 32.63217 + 206, 202, 200, 196, 197, 196, 196, 193, 192, 189, 187, 188, 190, 188, 190, 188, 32.63218 + 179, 167, 141, 148, 160, 168, 171, 174, 183, 191, 194, 191, 186, 187, 187, 183, 32.63219 + 174, 160, 157, 152, 153, 149, 151, 162, 179, 195, 208, 205, 205, 209, 199, 181, 32.63220 + 165, 162, 142, 149, 159, 170, 184, 204, 224, 235, 235, 238, 255, 255, 255, 255, 32.63221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 16, 34, 32.63222 + 44, 33, 29, 24, 22, 0, 2, 17, 67, 152, 186, 203, 200, 198, 203, 206, 32.63223 + 205, 205, 205, 199, 196, 197, 197, 196, 193, 192, 190, 187, 188, 189, 189, 190, 32.63224 + 186, 173, 156, 145, 155, 168, 173, 172, 175, 185, 195, 192, 189, 187, 188, 188, 32.63225 + 185, 177, 167, 159, 157, 159, 163, 170, 182, 194, 201, 202, 206, 208, 204, 196, 32.63226 + 187, 175, 160, 157, 161, 167, 175, 192, 214, 230, 235, 237, 239, 255, 255, 255, 32.63227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 8, 32.63228 + 27, 40, 36, 34, 31, 35, 13, 12, 24, 68, 151, 182, 200, 200, 200, 204, 32.63229 + 206, 202, 205, 209, 199, 197, 197, 197, 195, 194, 191, 190, 182, 184, 187, 188, 32.63230 + 188, 182, 164, 147, 164, 164, 165, 169, 174, 179, 182, 185, 181, 179, 177, 176, 32.63231 + 175, 171, 166, 161, 156, 149, 151, 158, 169, 176, 177, 175, 173, 185, 185, 175, 32.63232 + 173, 182, 176, 159, 171, 171, 176, 182, 202, 223, 235, 235, 237, 244, 255, 255, 32.63233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63234 + 172, 22, 39, 40, 35, 42, 39, 17, 18, 21, 54, 139, 179, 197, 203, 205, 32.63235 + 203, 206, 209, 210, 205, 199, 195, 195, 194, 192, 193, 191, 192, 188, 185, 186, 32.63236 + 187, 189, 185, 172, 162, 167, 163, 162, 165, 169, 171, 167, 162, 157, 158, 156, 32.63237 + 147, 144, 144, 141, 135, 132, 129, 130, 139, 146, 154, 157, 155, 181, 179, 176, 32.63238 + 172, 168, 167, 168, 169, 179, 186, 191, 194, 208, 229, 237, 235, 240, 255, 255, 32.63239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63240 + 255, 255, 25, 37, 40, 36, 40, 40, 27, 33, 28, 48, 126, 176, 196, 203, 32.63241 + 206, 204, 207, 209, 211, 206, 199, 195, 195, 194, 194, 193, 193, 192, 190, 187, 32.63242 + 186, 189, 191, 187, 178, 166, 170, 157, 157, 155, 131, 99, 96, 116, 128, 132, 32.63243 + 131, 127, 125, 126, 125, 121, 132, 131, 135, 142, 152, 155, 154, 149, 130, 133, 32.63244 + 139, 145, 154, 164, 174, 179, 188, 194, 198, 201, 213, 231, 239, 234, 241, 255, 32.63245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63246 + 255, 255, 255, 178, 35, 38, 39, 37, 37, 31, 35, 24, 31, 104, 169, 195, 32.63247 + 203, 208, 207, 209, 210, 212, 207, 201, 197, 196, 195, 195, 193, 194, 192, 189, 32.63248 + 187, 189, 190, 193, 189, 183, 172, 173, 162, 161, 157, 129, 96, 93, 114, 115, 32.63249 + 121, 124, 121, 122, 124, 122, 118, 119, 123, 134, 149, 163, 170, 169, 168, 160, 32.63250 + 160, 164, 169, 177, 186, 194, 197, 196, 202, 206, 208, 219, 231, 236, 233, 246, 32.63251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63252 + 255, 255, 255, 255, 255, 179, 37, 46, 42, 37, 33, 31, 16, 17, 84, 167, 32.63253 + 192, 203, 209, 209, 210, 211, 213, 208, 202, 197, 198, 196, 196, 195, 196, 195, 32.63254 + 190, 188, 190, 192, 194, 191, 187, 179, 175, 173, 169, 159, 156, 157, 153, 148, 32.63255 + 149, 153, 158, 156, 157, 158, 157, 152, 140, 146, 160, 175, 191, 201, 205, 205, 32.63256 + 197, 196, 194, 193, 195, 195, 196, 195, 197, 202, 209, 213, 222, 232, 236, 234, 32.63257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63258 + 255, 255, 255, 255, 255, 255, 255, 37, 50, 50, 44, 44, 40, 27, 24, 77, 32.63259 + 168, 189, 202, 210, 210, 211, 212, 213, 209, 204, 200, 201, 198, 198, 197, 198, 32.63260 + 197, 190, 188, 190, 191, 192, 192, 189, 184, 179, 177, 170, 165, 172, 183, 180, 32.63261 + 170, 172, 175, 180, 176, 175, 176, 174, 167, 166, 167, 175, 184, 192, 199, 201, 32.63262 + 203, 192, 189, 190, 192, 198, 202, 204, 201, 199, 203, 212, 215, 223, 230, 235, 32.63263 + 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63264 + 255, 255, 255, 255, 255, 255, 255, 255, 181, 44, 45, 43, 48, 43, 42, 39, 32.63265 + 72, 156, 185, 200, 210, 211, 211, 211, 213, 211, 205, 202, 201, 201, 201, 199, 32.63266 + 200, 198, 194, 193, 194, 193, 193, 190, 189, 186, 184, 172, 171, 177, 176, 170, 32.63267 + 173, 185, 180, 185, 186, 182, 181, 182, 179, 174, 172, 173, 175, 178, 183, 186, 32.63268 + 190, 191, 199, 198, 197, 202, 209, 210, 210, 208, 202, 205, 211, 215, 219, 223, 32.63269 + 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 41, 35, 41, 34, 45, 32.63271 + 49, 68, 146, 181, 196, 210, 211, 211, 210, 212, 210, 206, 204, 204, 201, 201, 32.63272 + 200, 200, 199, 198, 197, 198, 195, 193, 192, 191, 189, 185, 178, 178, 182, 180, 32.63273 + 173, 180, 193, 198, 201, 202, 200, 202, 205, 204, 198, 191, 191, 193, 196, 200, 32.63274 + 203, 207, 209, 210, 207, 205, 205, 208, 207, 202, 197, 205, 205, 207, 208, 206, 32.63275 + 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 37, 35, 22, 32.63277 + 38, 51, 67, 143, 177, 195, 210, 211, 209, 210, 210, 210, 208, 205, 204, 203, 32.63278 + 201, 202, 200, 199, 203, 203, 202, 199, 196, 194, 194, 192, 182, 186, 180, 168, 32.63279 + 173, 186, 188, 180, 189, 193, 194, 193, 196, 201, 204, 199, 194, 194, 197, 198, 32.63280 + 201, 201, 203, 204, 210, 208, 207, 210, 213, 213, 208, 205, 207, 206, 207, 204, 32.63281 + 197, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63282 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 36, 32.63283 + 20, 18, 24, 55, 130, 175, 188, 202, 216, 220, 205, 197, 210, 208, 206, 203, 32.63284 + 205, 208, 208, 201, 193, 203, 202, 201, 202, 202, 200, 199, 193, 180, 177, 173, 32.63285 + 171, 172, 174, 179, 182, 186, 187, 189, 188, 185, 183, 188, 189, 191, 187, 187, 32.63286 + 186, 190, 193, 197, 198, 198, 194, 199, 209, 212, 205, 202, 210, 210, 210, 206, 32.63287 + 201, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180, 32.63289 + 43, 32, 26, 24, 50, 122, 175, 190, 200, 211, 218, 207, 197, 201, 210, 207, 32.63290 + 204, 204, 205, 204, 200, 197, 202, 201, 201, 201, 203, 202, 200, 193, 182, 177, 32.63291 + 174, 172, 172, 174, 176, 180, 183, 184, 185, 182, 181, 180, 184, 184, 183, 182, 32.63292 + 183, 182, 181, 181, 187, 193, 197, 198, 205, 210, 210, 204, 203, 208, 210, 210, 32.63293 + 207, 202, 197, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63295 + 255, 186, 45, 38, 30, 44, 108, 175, 193, 200, 204, 215, 212, 201, 197, 206, 32.63296 + 205, 204, 203, 202, 201, 201, 202, 201, 200, 202, 202, 205, 203, 202, 195, 187, 32.63297 + 182, 180, 179, 177, 179, 179, 181, 183, 184, 185, 183, 180, 179, 180, 181, 178, 32.63298 + 180, 183, 178, 175, 176, 185, 193, 196, 205, 212, 212, 210, 208, 204, 202, 191, 32.63299 + 193, 193, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63301 + 255, 255, 255, 42, 49, 44, 49, 101, 170, 196, 203, 200, 209, 213, 205, 198, 32.63302 + 199, 201, 202, 201, 199, 199, 202, 205, 201, 200, 201, 202, 205, 203, 202, 197, 32.63303 + 195, 191, 190, 189, 187, 185, 183, 182, 185, 184, 184, 182, 180, 179, 179, 179, 32.63304 + 179, 180, 179, 179, 180, 183, 192, 200, 201, 210, 214, 214, 215, 217, 205, 192, 32.63305 + 180, 186, 185, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63307 + 255, 255, 255, 255, 255, 53, 58, 60, 104, 166, 198, 209, 203, 205, 210, 207, 32.63308 + 205, 192, 194, 197, 197, 199, 199, 203, 205, 200, 200, 201, 202, 205, 206, 204, 32.63309 + 200, 198, 197, 196, 195, 193, 191, 188, 185, 187, 184, 183, 183, 182, 181, 179, 32.63310 + 178, 178, 177, 175, 180, 187, 197, 203, 205, 206, 211, 214, 216, 223, 221, 201, 32.63311 + 181, 187, 190, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63313 + 255, 255, 255, 255, 255, 255, 255, 48, 51, 97, 170, 201, 213, 207, 206, 206, 32.63314 + 206, 209, 193, 191, 191, 191, 194, 197, 200, 202, 201, 200, 202, 203, 208, 207, 32.63315 + 206, 202, 202, 199, 199, 197, 196, 191, 190, 187, 189, 188, 186, 184, 185, 184, 32.63316 + 181, 178, 180, 176, 174, 180, 193, 201, 205, 205, 211, 213, 215, 220, 222, 214, 32.63317 + 190, 169, 181, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 91, 184, 205, 214, 209, 208, 32.63320 + 204, 200, 204, 199, 193, 187, 183, 187, 193, 197, 197, 201, 201, 203, 204, 210, 32.63321 + 209, 207, 205, 207, 206, 203, 201, 200, 199, 196, 193, 192, 190, 188, 189, 188, 32.63322 + 187, 183, 182, 182, 182, 182, 186, 194, 199, 201, 200, 212, 213, 219, 224, 220, 32.63323 + 199, 173, 158, 169, 170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 195, 209, 212, 209, 32.63326 + 211, 204, 197, 200, 208, 197, 182, 177, 181, 189, 193, 195, 201, 201, 202, 205, 32.63327 + 208, 210, 208, 206, 212, 211, 209, 207, 206, 205, 203, 201, 196, 192, 190, 190, 32.63328 + 192, 189, 184, 183, 186, 188, 190, 191, 193, 194, 196, 197, 212, 215, 222, 228, 32.63329 + 215, 184, 159, 152, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63331 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 209, 214, 32.63332 + 216, 212, 203, 200, 203, 201, 206, 202, 189, 171, 168, 178, 192, 198, 197, 197, 32.63333 + 202, 210, 215, 214, 212, 210, 210, 209, 207, 204, 205, 207, 207, 207, 202, 199, 32.63334 + 195, 193, 190, 186, 184, 193, 193, 189, 189, 192, 196, 204, 209, 209, 217, 226, 32.63335 + 228, 215, 193, 180, 180, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 32.63338 + 215, 217, 214, 204, 198, 198, 200, 203, 205, 199, 190, 181, 177, 179, 185, 189, 32.63339 + 196, 202, 206, 207, 210, 212, 212, 212, 213, 210, 209, 208, 211, 214, 203, 202, 32.63340 + 198, 197, 195, 193, 190, 188, 190, 189, 186, 186, 188, 192, 197, 202, 213, 218, 32.63341 + 225, 229, 222, 204, 188, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63344 + 255, 255, 240, 209, 203, 198, 198, 201, 201, 203, 204, 199, 189, 175, 166, 169, 32.63345 + 180, 190, 198, 199, 200, 204, 207, 210, 211, 212, 209, 207, 208, 210, 211, 203, 32.63346 + 202, 199, 199, 199, 196, 192, 188, 190, 187, 184, 181, 182, 186, 191, 196, 213, 32.63347 + 216, 224, 234, 231, 215, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63350 + 255, 255, 255, 255, 237, 198, 196, 199, 203, 201, 202, 203, 202, 195, 182, 171, 32.63351 + 163, 169, 177, 184, 189, 191, 196, 199, 204, 205, 205, 203, 201, 200, 202, 204, 32.63352 + 207, 206, 203, 202, 200, 196, 189, 184, 190, 185, 181, 178, 179, 182, 188, 191, 32.63353 + 203, 211, 225, 239, 238, 223, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63356 + 255, 255, 255, 255, 255, 255, 255, 235, 193, 196, 198, 201, 206, 204, 200, 193, 32.63357 + 185, 168, 165, 165, 169, 177, 182, 185, 187, 199, 201, 202, 200, 198, 197, 198, 32.63358 + 199, 205, 204, 204, 203, 203, 198, 191, 187, 186, 183, 178, 174, 174, 176, 184, 32.63359 + 187, 192, 208, 230, 244, 241, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 184, 189, 196, 202, 203, 198, 32.63363 + 194, 187, 176, 167, 160, 160, 165, 171, 175, 175, 193, 195, 197, 197, 196, 199, 32.63364 + 200, 203, 202, 201, 201, 201, 202, 199, 195, 191, 184, 179, 174, 169, 170, 174, 32.63365 + 180, 184, 193, 209, 230, 242, 236, 230, 255, 255, 255, 255, 255, 255, 255, 255, 32.63366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 194, 194, 195, 32.63369 + 193, 190, 184, 183, 176, 168, 162, 160, 161, 165, 167, 176, 181, 185, 188, 191, 32.63370 + 195, 198, 203, 202, 201, 199, 201, 200, 198, 197, 192, 186, 181, 176, 171, 170, 32.63371 + 175, 182, 188, 208, 217, 229, 236, 231, 255, 255, 255, 255, 255, 255, 255, 255, 32.63372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 189, 32.63375 + 190, 193, 195, 192, 188, 184, 177, 167, 159, 154, 157, 161, 158, 162, 168, 173, 32.63376 + 179, 184, 191, 194, 202, 201, 200, 198, 198, 195, 193, 189, 189, 184, 179, 173, 32.63377 + 175, 182, 191, 197, 228, 227, 231, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.63378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63381 + 255, 233, 194, 193, 186, 183, 186, 185, 174, 163, 156, 154, 152, 160, 158, 156, 32.63382 + 156, 160, 167, 177, 183, 186, 189, 194, 197, 200, 200, 200, 194, 183, 182, 182, 32.63383 + 183, 187, 194, 206, 216, 231, 229, 239, 242, 255, 255, 255, 255, 255, 255, 255, 32.63384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63387 + 255, 255, 255, 255, 239, 195, 179, 179, 176, 171, 167, 163, 158, 149, 153, 151, 32.63388 + 151, 152, 155, 160, 166, 169, 173, 177, 183, 190, 196, 198, 200, 197, 187, 184, 32.63389 + 185, 193, 203, 217, 229, 235, 236, 231, 237, 243, 255, 255, 255, 255, 255, 255, 32.63390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63393 + 255, 255, 255, 255, 255, 255, 255, 183, 178, 172, 166, 167, 167, 162, 154, 152, 32.63394 + 152, 154, 156, 157, 158, 159, 160, 164, 169, 175, 181, 188, 191, 193, 193, 194, 32.63395 + 190, 193, 204, 218, 230, 233, 236, 239, 225, 221, 255, 255, 255, 255, 255, 255, 32.63396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 181, 169, 163, 166, 165, 160, 32.63400 + 154, 154, 156, 158, 159, 159, 159, 159, 162, 165, 171, 174, 179, 182, 184, 184, 32.63401 + 193, 196, 204, 214, 227, 230, 229, 224, 227, 209, 196, 255, 255, 255, 255, 255, 32.63402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 174, 168, 164, 32.63406 + 161, 159, 157, 157, 155, 157, 158, 160, 161, 166, 169, 172, 174, 176, 178, 180, 32.63407 + 184, 194, 203, 215, 226, 231, 226, 215, 208, 201, 189, 206, 255, 255, 255, 255, 32.63408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 32.63412 + 175, 168, 163, 159, 157, 154, 155, 156, 160, 161, 168, 169, 172, 176, 180, 183, 32.63413 + 184, 191, 205, 214, 226, 229, 226, 210, 192, 181, 186, 183, 255, 255, 255, 255, 32.63414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63418 + 255, 255, 194, 169, 165, 163, 160, 158, 158, 158, 160, 168, 168, 172, 176, 179, 32.63419 + 184, 186, 192, 211, 217, 225, 228, 228, 216, 196, 183, 184, 210, 255, 255, 255, 32.63420 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63424 + 255, 255, 255, 255, 229, 172, 171, 167, 165, 162, 160, 159, 169, 169, 170, 171, 32.63425 + 176, 178, 182, 189, 206, 208, 217, 230, 243, 244, 230, 216, 185, 255, 255, 255, 32.63426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63430 + 255, 255, 255, 255, 255, 255, 255, 255, 233, 178, 174, 169, 164, 173, 172, 176, 32.63431 + 183, 185, 180, 182, 192, 202, 206, 221, 231, 217, 243, 241, 252, 243, 255, 255, 32.63432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63433 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 170, 170, 167, 32.63437 + 168, 175, 180, 182, 190, 199, 205, 208, 216, 216, 196, 223, 232, 252, 255, 255, 32.63438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63439 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.63443 + 173, 169, 173, 179, 184, 192, 198, 205, 209, 217, 209, 181, 206, 255, 255, 255, 32.63444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63449 + 255, 255, 255, 255, 190, 189, 188, 187, 201, 207, 218, 211, 182, 255, 255, 255, 32.63450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63451 + 255, 255, 255, 255, 255, 255, 255 }; 32.63452 +/* Define image 'enemy9' of size 143x134x1x3 and type 'const unsigned char' */ 32.63453 +const unsigned char data_enemy9[] = { 32.63454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63458 + 255, 255, 255, 255, 255, 241, 197, 212, 233, 255, 255, 250, 243, 250, 255, 254, 32.63459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.63467 + 171, 176, 189, 199, 197, 191, 165, 180, 198, 208, 209, 208, 212, 215, 230, 243, 32.63468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 131, 119, 127, 135, 32.63476 + 143, 162, 183, 200, 208, 195, 180, 167, 170, 186, 199, 201, 194, 198, 208, 223, 32.63477 + 240, 247, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63484 + 255, 255, 255, 255, 255, 255, 255, 255, 211, 118, 119, 123, 127, 133, 138, 136, 32.63485 + 143, 158, 178, 191, 218, 220, 216, 212, 207, 207, 208, 211, 180, 179, 190, 214, 32.63486 + 232, 230, 224, 221, 217, 225, 236, 250, 255, 255, 255, 255, 255, 255, 255, 255, 32.63487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63493 + 255, 255, 255, 255, 255, 255, 255, 106, 100, 102, 103, 107, 116, 123, 125, 128, 32.63494 + 141, 157, 170, 172, 199, 223, 226, 208, 192, 189, 194, 186, 178, 177, 184, 184, 32.63495 + 172, 166, 168, 166, 163, 163, 176, 199, 225, 241, 249, 247, 250, 254, 255, 255, 32.63496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63502 + 255, 255, 255, 255, 86, 74, 71, 82, 88, 88, 89, 101, 109, 109, 111, 119, 32.63503 + 128, 136, 138, 150, 165, 181, 191, 185, 170, 159, 154, 145, 136, 130, 124, 135, 32.63504 + 171, 212, 232, 200, 156, 130, 131, 152, 175, 190, 199, 205, 219, 234, 248, 255, 32.63505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 32.63511 + 81, 77, 76, 75, 74, 74, 76, 77, 78, 83, 86, 93, 98, 101, 101, 99, 32.63512 + 98, 107, 113, 109, 101, 104, 119, 132, 134, 131, 134, 141, 145, 135, 127, 139, 32.63513 + 163, 182, 215, 175, 170, 195, 172, 164, 170, 184, 219, 225, 222, 228, 245, 255, 32.63514 + 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 73, 71, 70, 32.63520 + 71, 71, 71, 71, 72, 74, 76, 78, 78, 83, 88, 89, 86, 83, 83, 85, 32.63521 + 79, 83, 84, 84, 88, 99, 108, 111, 126, 110, 105, 120, 137, 140, 137, 140, 32.63522 + 156, 188, 210, 200, 193, 200, 203, 205, 218, 251, 255, 254, 245, 246, 255, 241, 32.63523 + 251, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63528 + 255, 255, 255, 255, 255, 255, 255, 255, 214, 112, 72, 71, 70, 68, 66, 66, 32.63529 + 66, 66, 67, 69, 72, 75, 77, 76, 81, 85, 82, 74, 70, 72, 76, 74, 32.63530 + 75, 81, 89, 93, 94, 98, 103, 106, 102, 103, 111, 117, 122, 136, 155, 132, 32.63531 + 124, 182, 186, 161, 182, 194, 201, 224, 249, 255, 255, 249, 246, 255, 255, 255, 32.63532 + 254, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63537 + 255, 255, 255, 255, 255, 255, 194, 71, 72, 72, 71, 70, 68, 67, 64, 64, 32.63538 + 64, 65, 67, 70, 73, 75, 74, 76, 77, 74, 70, 68, 70, 72, 82, 80, 32.63539 + 86, 97, 98, 92, 92, 100, 90, 99, 107, 102, 89, 93, 125, 163, 180, 129, 32.63540 + 153, 181, 171, 174, 188, 203, 191, 209, 222, 246, 255, 250, 255, 249, 255, 255, 32.63541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63546 + 255, 255, 255, 191, 63, 67, 67, 67, 66, 66, 65, 64, 64, 66, 65, 64, 32.63547 + 64, 65, 67, 69, 70, 70, 67, 65, 66, 69, 72, 71, 70, 76, 73, 77, 32.63548 + 86, 87, 81, 82, 89, 90, 88, 86, 84, 82, 89, 106, 125, 170, 135, 106, 32.63549 + 138, 153, 136, 150, 159, 161, 176, 196, 240, 255, 255, 247, 228, 241, 248, 255, 32.63550 + 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 32.63555 + 64, 63, 67, 74, 63, 63, 63, 63, 63, 63, 63, 63, 66, 65, 64, 63, 32.63556 + 62, 63, 65, 65, 64, 59, 56, 59, 67, 71, 69, 65, 68, 67, 71, 75, 32.63557 + 77, 75, 79, 84, 84, 81, 82, 83, 87, 87, 89, 90, 127, 145, 107, 113, 32.63558 + 134, 122, 133, 129, 139, 146, 157, 200, 235, 245, 255, 250, 231, 242, 254, 255, 32.63559 + 255, 252, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 68, 78, 68, 32.63564 + 55, 53, 54, 60, 60, 60, 60, 61, 62, 63, 63, 62, 61, 60, 58, 58, 32.63565 + 59, 61, 61, 61, 58, 57, 59, 63, 65, 64, 61, 64, 67, 71, 68, 70, 32.63566 + 72, 77, 75, 74, 80, 89, 84, 80, 74, 79, 84, 91, 115, 107, 96, 106, 32.63567 + 113, 112, 107, 116, 121, 121, 143, 166, 186, 224, 241, 226, 235, 246, 253, 255, 32.63568 + 255, 255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 68, 53, 56, 65, 60, 55, 32.63573 + 59, 60, 54, 54, 55, 55, 56, 58, 60, 60, 58, 58, 57, 56, 56, 58, 32.63574 + 59, 60, 62, 63, 64, 64, 62, 61, 61, 61, 55, 64, 66, 60, 58, 64, 32.63575 + 64, 59, 75, 76, 75, 70, 68, 70, 74, 79, 95, 84, 105, 97, 96, 110, 32.63576 + 99, 102, 95, 111, 112, 115, 112, 118, 153, 171, 222, 226, 232, 241, 250, 254, 32.63577 + 255, 252, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63581 + 255, 255, 255, 255, 255, 255, 193, 62, 64, 65, 62, 56, 52, 51, 54, 57, 32.63582 + 60, 59, 57, 55, 55, 56, 57, 56, 55, 54, 55, 56, 57, 59, 60, 62, 32.63583 + 62, 59, 59, 60, 60, 60, 59, 59, 58, 54, 55, 57, 57, 57, 57, 59, 32.63584 + 61, 59, 61, 63, 64, 65, 69, 73, 80, 81, 92, 94, 91, 91, 94, 96, 32.63585 + 91, 92, 92, 95, 97, 97, 96, 97, 102, 153, 198, 215, 215, 235, 251, 252, 32.63586 + 254, 255, 255, 242, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63590 + 255, 255, 255, 255, 195, 65, 60, 62, 59, 57, 55, 52, 52, 52, 54, 55, 32.63591 + 59, 57, 55, 54, 55, 56, 55, 54, 55, 55, 56, 57, 58, 59, 60, 61, 32.63592 + 59, 58, 58, 58, 58, 58, 58, 56, 55, 57, 59, 59, 59, 59, 61, 62, 32.63593 + 59, 61, 61, 60, 59, 59, 61, 64, 76, 82, 85, 79, 80, 83, 88, 85, 32.63594 + 88, 92, 96, 99, 98, 98, 99, 101, 135, 162, 189, 214, 234, 240, 241, 247, 32.63595 + 242, 255, 255, 250, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63599 + 255, 255, 193, 66, 61, 57, 57, 56, 53, 53, 52, 51, 51, 50, 50, 56, 32.63600 + 54, 52, 51, 53, 53, 53, 51, 54, 54, 54, 55, 55, 55, 56, 56, 56, 32.63601 + 55, 54, 53, 53, 54, 56, 56, 55, 55, 57, 57, 56, 56, 58, 59, 61, 32.63602 + 62, 63, 62, 59, 57, 57, 60, 69, 73, 73, 68, 69, 73, 79, 79, 82, 32.63603 + 85, 91, 94, 96, 98, 100, 102, 129, 131, 160, 203, 226, 237, 246, 249, 255, 32.63604 + 249, 247, 246, 250, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63608 + 194, 65, 61, 60, 57, 51, 57, 54, 53, 52, 52, 52, 52, 52, 55, 53, 32.63609 + 50, 50, 51, 52, 51, 50, 54, 54, 54, 54, 54, 53, 53, 53, 55, 54, 32.63610 + 52, 51, 51, 53, 55, 56, 51, 52, 54, 54, 53, 53, 54, 56, 59, 62, 32.63611 + 64, 65, 64, 62, 62, 64, 65, 67, 68, 65, 66, 68, 74, 75, 81, 84, 32.63612 + 87, 91, 95, 100, 106, 111, 127, 116, 129, 151, 171, 201, 215, 200, 254, 251, 32.63613 + 255, 251, 255, 255, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 63, 32.63617 + 57, 57, 61, 59, 50, 57, 53, 51, 49, 49, 50, 52, 53, 53, 51, 49, 32.63618 + 49, 50, 51, 50, 49, 53, 53, 53, 53, 52, 52, 52, 52, 54, 52, 51, 32.63619 + 50, 50, 52, 55, 55, 51, 51, 52, 52, 51, 50, 52, 53, 52, 54, 58, 32.63620 + 59, 58, 57, 58, 60, 61, 63, 68, 68, 70, 68, 72, 72, 83, 83, 84, 32.63621 + 87, 91, 100, 110, 118, 137, 134, 131, 124, 140, 190, 202, 165, 162, 204, 243, 32.63622 + 231, 242, 255, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 58, 53, 51, 32.63626 + 55, 60, 59, 53, 52, 50, 47, 45, 45, 47, 49, 51, 52, 50, 48, 48, 32.63627 + 49, 50, 49, 48, 52, 52, 51, 51, 51, 51, 51, 51, 52, 51, 51, 50, 32.63628 + 51, 53, 55, 55, 53, 53, 54, 54, 52, 52, 53, 54, 53, 55, 56, 56, 32.63629 + 55, 53, 54, 56, 60, 62, 65, 70, 71, 68, 69, 73, 75, 75, 76, 77, 32.63630 + 80, 88, 99, 107, 122, 139, 142, 136, 162, 221, 239, 211, 124, 140, 173, 188, 32.63631 + 193, 194, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 61, 55, 52, 54, 55, 32.63635 + 55, 55, 55, 48, 46, 46, 45, 45, 46, 47, 47, 50, 48, 46, 46, 47, 32.63636 + 48, 47, 46, 49, 49, 49, 49, 49, 50, 50, 50, 50, 50, 50, 51, 52, 32.63637 + 53, 54, 54, 52, 53, 54, 53, 52, 51, 52, 53, 57, 58, 58, 57, 55, 32.63638 + 54, 55, 57, 58, 58, 60, 65, 66, 64, 67, 73, 70, 70, 69, 69, 70, 32.63639 + 74, 82, 88, 86, 105, 115, 125, 153, 189, 215, 232, 198, 165, 152, 174, 174, 32.63640 + 163, 195, 226, 233, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63643 + 255, 255, 255, 255, 255, 255, 255, 193, 94, 49, 65, 59, 58, 61, 57, 51, 32.63644 + 50, 55, 47, 47, 49, 50, 50, 49, 47, 46, 50, 48, 46, 45, 47, 47, 32.63645 + 47, 45, 48, 48, 48, 49, 49, 50, 50, 50, 49, 50, 51, 52, 53, 54, 32.63646 + 54, 54, 50, 50, 52, 51, 50, 48, 50, 51, 55, 55, 56, 54, 54, 53, 32.63647 + 57, 60, 57, 56, 56, 60, 61, 59, 64, 73, 73, 74, 74, 73, 72, 72, 32.63648 + 76, 78, 84, 89, 90, 103, 117, 115, 142, 196, 246, 226, 180, 168, 171, 192, 32.63649 + 203, 144, 176, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63652 + 255, 255, 255, 255, 255, 195, 67, 68, 69, 57, 56, 55, 53, 51, 50, 49, 32.63653 + 49, 50, 49, 49, 48, 48, 49, 49, 50, 49, 49, 48, 48, 48, 48, 48, 32.63654 + 48, 52, 52, 51, 51, 51, 51, 51, 51, 55, 55, 54, 53, 53, 52, 51, 32.63655 + 50, 54, 53, 56, 53, 54, 52, 56, 56, 57, 53, 53, 50, 52, 52, 57, 32.63656 + 58, 60, 64, 64, 60, 61, 65, 66, 63, 69, 71, 73, 74, 75, 76, 79, 32.63657 + 81, 96, 83, 90, 107, 115, 123, 130, 130, 200, 233, 247, 228, 171, 180, 226, 32.63658 + 180, 154, 205, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63661 + 255, 255, 255, 196, 72, 81, 65, 62, 58, 57, 55, 54, 51, 51, 50, 50, 32.63662 + 47, 47, 48, 48, 48, 48, 47, 47, 46, 46, 46, 47, 48, 48, 49, 49, 32.63663 + 48, 48, 48, 48, 48, 48, 48, 48, 50, 51, 51, 52, 53, 53, 54, 54, 32.63664 + 52, 53, 54, 53, 52, 52, 54, 57, 62, 61, 58, 55, 53, 52, 52, 52, 32.63665 + 63, 65, 65, 62, 63, 67, 68, 66, 68, 71, 74, 77, 78, 80, 82, 84, 32.63666 + 80, 93, 102, 94, 104, 138, 159, 145, 152, 187, 241, 255, 235, 206, 198, 205, 32.63667 + 187, 237, 250, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63670 + 255, 255, 74, 65, 78, 54, 52, 58, 57, 54, 53, 52, 51, 51, 51, 44, 32.63671 + 45, 47, 47, 47, 47, 45, 44, 43, 44, 44, 46, 47, 48, 49, 49, 50, 32.63672 + 50, 50, 50, 50, 50, 50, 50, 50, 50, 51, 51, 52, 53, 53, 54, 51, 32.63673 + 52, 52, 52, 51, 51, 53, 55, 55, 55, 56, 56, 57, 58, 58, 59, 62, 32.63674 + 65, 65, 62, 63, 67, 69, 67, 68, 71, 76, 79, 81, 82, 84, 86, 91, 32.63675 + 88, 96, 98, 100, 116, 143, 153, 148, 175, 225, 249, 255, 242, 178, 203, 234, 32.63676 + 248, 248, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63679 + 194, 74, 55, 56, 51, 54, 56, 55, 52, 51, 50, 50, 50, 50, 43, 45, 32.63680 + 47, 48, 48, 47, 45, 43, 44, 44, 44, 45, 45, 46, 46, 47, 50, 50, 32.63681 + 51, 51, 51, 51, 52, 52, 55, 54, 54, 53, 52, 52, 51, 51, 50, 51, 32.63682 + 52, 51, 50, 51, 53, 55, 50, 52, 55, 58, 60, 62, 63, 64, 60, 63, 32.63683 + 63, 60, 61, 66, 67, 65, 69, 72, 77, 79, 80, 81, 82, 83, 97, 84, 32.63684 + 89, 100, 98, 102, 121, 138, 143, 169, 176, 182, 241, 255, 230, 220, 248, 248, 32.63685 + 253, 255, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 68, 32.63688 + 64, 55, 44, 62, 59, 51, 51, 49, 48, 46, 45, 46, 46, 44, 45, 47, 32.63689 + 49, 49, 47, 45, 44, 46, 46, 46, 45, 44, 44, 43, 43, 46, 46, 46, 32.63690 + 47, 47, 48, 48, 48, 56, 55, 55, 54, 53, 53, 52, 52, 51, 52, 53, 32.63691 + 52, 51, 51, 53, 55, 56, 57, 58, 59, 60, 60, 59, 59, 61, 64, 64, 32.63692 + 62, 62, 67, 68, 66, 70, 72, 75, 76, 76, 75, 76, 77, 75, 86, 96, 32.63693 + 92, 100, 129, 141, 126, 138, 173, 156, 142, 172, 232, 255, 239, 240, 255, 255, 32.63694 + 253, 247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 59, 72, 61, 32.63697 + 64, 51, 68, 51, 49, 48, 47, 46, 44, 44, 44, 45, 45, 45, 47, 48, 32.63698 + 48, 47, 45, 45, 48, 47, 47, 46, 44, 43, 42, 42, 46, 46, 47, 48, 32.63699 + 48, 49, 50, 50, 51, 51, 52, 53, 53, 54, 55, 55, 51, 52, 52, 52, 32.63700 + 51, 51, 53, 55, 52, 53, 54, 57, 59, 62, 64, 65, 67, 70, 69, 66, 32.63701 + 66, 70, 71, 69, 70, 71, 72, 72, 70, 70, 71, 73, 74, 75, 86, 98, 32.63702 + 112, 131, 138, 125, 131, 170, 170, 160, 139, 174, 254, 254, 255, 237, 236, 252, 32.63703 + 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 125, 83, 69, 66, 63, 61, 32.63706 + 58, 58, 46, 49, 48, 45, 44, 44, 44, 45, 45, 44, 44, 45, 45, 45, 32.63707 + 45, 44, 44, 47, 47, 47, 46, 45, 45, 44, 44, 48, 48, 49, 50, 51, 32.63708 + 51, 52, 52, 49, 49, 50, 50, 51, 52, 52, 53, 49, 50, 51, 50, 49, 32.63709 + 49, 51, 54, 46, 47, 49, 53, 59, 64, 69, 72, 69, 72, 71, 67, 67, 32.63710 + 70, 70, 68, 68, 68, 68, 67, 66, 67, 70, 73, 85, 67, 75, 99, 109, 32.63711 + 110, 115, 119, 109, 130, 154, 161, 149, 171, 228, 255, 253, 199, 193, 232, 247, 32.63712 + 240, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 70, 65, 49, 60, 47, 56, 32.63715 + 46, 53, 49, 49, 46, 45, 45, 45, 46, 46, 44, 43, 43, 42, 42, 43, 32.63716 + 43, 44, 46, 46, 46, 46, 46, 46, 46, 46, 44, 45, 45, 46, 47, 48, 32.63717 + 49, 49, 51, 50, 50, 49, 48, 48, 47, 47, 47, 49, 49, 49, 47, 48, 32.63718 + 50, 52, 52, 52, 52, 53, 56, 60, 64, 67, 69, 72, 70, 66, 65, 68, 32.63719 + 68, 65, 67, 67, 66, 64, 64, 67, 71, 75, 76, 79, 84, 81, 88, 110, 32.63720 + 119, 103, 123, 110, 127, 131, 154, 181, 182, 212, 220, 185, 178, 194, 204, 228, 32.63721 + 251, 249, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63723 + 255, 255, 255, 255, 255, 255, 255, 195, 73, 59, 56, 53, 51, 51, 50, 48, 32.63724 + 46, 49, 46, 43, 43, 44, 44, 41, 39, 41, 41, 41, 42, 42, 43, 43, 32.63725 + 43, 47, 46, 44, 43, 43, 44, 46, 47, 42, 42, 43, 43, 43, 43, 43, 32.63726 + 43, 47, 48, 49, 50, 50, 50, 50, 49, 50, 49, 49, 48, 48, 47, 47, 32.63727 + 46, 44, 46, 49, 53, 57, 60, 61, 62, 62, 64, 65, 64, 62, 62, 66, 32.63728 + 71, 60, 62, 64, 64, 65, 66, 69, 72, 83, 82, 81, 83, 90, 98, 109, 32.63729 + 115, 108, 113, 118, 129, 145, 156, 154, 145, 168, 230, 212, 212, 249, 245, 245, 32.63730 + 254, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63732 + 255, 255, 255, 255, 255, 255, 92, 52, 58, 55, 52, 51, 50, 49, 47, 46, 32.63733 + 48, 45, 43, 43, 44, 44, 41, 39, 41, 41, 41, 42, 42, 43, 43, 43, 32.63734 + 45, 45, 44, 44, 44, 44, 45, 45, 43, 44, 44, 44, 45, 46, 46, 46, 32.63735 + 47, 48, 49, 49, 50, 50, 49, 49, 50, 50, 49, 49, 49, 49, 49, 48, 32.63736 + 54, 54, 55, 55, 54, 54, 53, 52, 55, 56, 57, 57, 57, 57, 59, 61, 32.63737 + 57, 58, 60, 61, 61, 62, 65, 68, 75, 75, 75, 76, 81, 86, 94, 98, 32.63738 + 105, 108, 112, 119, 132, 144, 146, 143, 164, 244, 246, 231, 244, 247, 253, 252, 32.63739 + 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63741 + 255, 255, 255, 255, 189, 82, 52, 56, 54, 50, 49, 49, 48, 45, 43, 47, 32.63742 + 45, 42, 42, 43, 43, 39, 40, 41, 41, 41, 42, 42, 43, 43, 43, 43, 32.63743 + 44, 44, 45, 45, 44, 44, 43, 44, 44, 45, 46, 47, 48, 49, 49, 47, 32.63744 + 47, 48, 49, 50, 50, 49, 49, 49, 49, 49, 50, 50, 50, 50, 50, 51, 32.63745 + 52, 53, 54, 54, 54, 54, 54, 54, 54, 54, 56, 58, 59, 58, 57, 56, 32.63746 + 57, 59, 59, 59, 60, 63, 66, 70, 70, 71, 73, 74, 76, 79, 80, 98, 32.63747 + 100, 102, 106, 115, 126, 133, 136, 136, 204, 237, 248, 255, 255, 254, 241, 231, 32.63748 + 229, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63750 + 255, 255, 255, 74, 60, 61, 54, 52, 48, 47, 47, 47, 44, 42, 45, 44, 32.63751 + 43, 42, 42, 42, 39, 38, 41, 41, 41, 42, 42, 43, 43, 43, 42, 43, 32.63752 + 44, 45, 45, 44, 43, 42, 43, 44, 45, 46, 48, 49, 50, 51, 46, 47, 32.63753 + 48, 49, 49, 49, 49, 48, 47, 48, 48, 49, 49, 50, 50, 51, 48, 49, 32.63754 + 50, 52, 54, 55, 55, 56, 55, 54, 54, 57, 61, 61, 58, 55, 58, 60, 32.63755 + 61, 61, 61, 62, 65, 67, 71, 73, 75, 78, 79, 78, 78, 77, 89, 91, 32.63756 + 94, 96, 101, 109, 117, 122, 140, 146, 169, 210, 241, 255, 255, 255, 255, 243, 32.63757 + 252, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63759 + 255, 193, 62, 61, 54, 51, 49, 46, 45, 44, 44, 42, 41, 42, 43, 43, 32.63760 + 42, 39, 39, 39, 39, 41, 41, 41, 42, 42, 43, 43, 43, 41, 42, 43, 32.63761 + 44, 44, 43, 42, 41, 42, 42, 43, 45, 46, 48, 49, 49, 46, 47, 48, 32.63762 + 48, 49, 49, 48, 48, 45, 46, 46, 47, 47, 48, 48, 49, 52, 52, 52, 32.63763 + 53, 52, 51, 50, 50, 53, 51, 51, 54, 58, 58, 55, 52, 58, 60, 61, 32.63764 + 61, 60, 61, 64, 66, 72, 74, 79, 82, 84, 83, 82, 81, 79, 82, 86, 32.63765 + 90, 93, 96, 104, 110, 128, 111, 132, 179, 222, 254, 255, 255, 246, 236, 251, 32.63766 + 235, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 32.63768 + 71, 51, 65, 47, 49, 47, 44, 44, 42, 42, 41, 40, 40, 42, 43, 42, 32.63769 + 39, 38, 39, 40, 41, 41, 41, 42, 42, 43, 43, 43, 41, 42, 42, 43, 32.63770 + 43, 42, 42, 41, 42, 42, 43, 44, 45, 46, 47, 47, 46, 46, 47, 48, 32.63771 + 48, 48, 48, 48, 46, 46, 46, 46, 46, 47, 47, 47, 46, 47, 49, 51, 32.63772 + 52, 53, 54, 52, 55, 54, 54, 55, 58, 58, 57, 56, 56, 58, 59, 58, 32.63773 + 58, 58, 61, 63, 70, 72, 76, 79, 82, 83, 83, 83, 80, 81, 85, 91, 32.63774 + 93, 93, 96, 103, 102, 108, 133, 148, 186, 244, 255, 255, 220, 221, 248, 253, 32.63775 + 208, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 53, 32.63777 + 53, 55, 48, 47, 45, 43, 42, 41, 41, 40, 39, 39, 41, 41, 40, 38, 32.63778 + 37, 39, 41, 41, 41, 41, 42, 42, 43, 43, 43, 42, 42, 41, 41, 41, 32.63779 + 41, 42, 42, 43, 43, 43, 44, 45, 45, 45, 46, 45, 46, 47, 48, 48, 32.63780 + 48, 48, 47, 48, 47, 47, 47, 47, 47, 46, 46, 41, 43, 46, 49, 53, 32.63781 + 55, 57, 56, 55, 55, 56, 56, 55, 56, 58, 60, 55, 56, 57, 57, 56, 32.63782 + 57, 59, 61, 67, 67, 68, 69, 73, 76, 78, 80, 87, 84, 85, 92, 95, 32.63783 + 95, 96, 102, 121, 131, 142, 127, 152, 217, 251, 255, 255, 255, 255, 255, 249, 32.63784 + 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 53, 42, 32.63786 + 44, 44, 45, 42, 40, 40, 39, 40, 39, 38, 37, 39, 41, 40, 40, 39, 32.63787 + 41, 43, 41, 41, 41, 42, 44, 45, 45, 45, 45, 42, 40, 38, 38, 37, 32.63788 + 39, 40, 43, 44, 45, 45, 45, 45, 45, 45, 45, 46, 47, 48, 48, 48, 32.63789 + 48, 47, 50, 49, 49, 48, 48, 47, 47, 46, 49, 49, 50, 51, 51, 50, 32.63790 + 50, 50, 49, 50, 53, 50, 49, 49, 54, 57, 57, 57, 59, 58, 58, 57, 32.63791 + 60, 63, 65, 64, 65, 65, 67, 70, 74, 76, 95, 88, 87, 93, 98, 98, 32.63792 + 100, 106, 122, 140, 176, 182, 198, 216, 208, 226, 248, 255, 253, 255, 255, 255, 32.63793 + 251, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 54, 40, 48, 44, 32.63795 + 47, 41, 39, 35, 36, 37, 38, 36, 33, 34, 34, 35, 38, 39, 42, 43, 32.63796 + 42, 41, 41, 42, 45, 46, 46, 46, 46, 49, 47, 43, 40, 38, 35, 34, 32.63797 + 37, 42, 44, 44, 43, 43, 44, 44, 45, 44, 45, 46, 47, 47, 47, 46, 32.63798 + 46, 49, 50, 51, 53, 54, 56, 57, 57, 51, 51, 51, 50, 50, 49, 49, 32.63799 + 49, 52, 51, 54, 51, 51, 49, 53, 53, 56, 54, 55, 54, 57, 57, 62, 32.63800 + 63, 60, 63, 67, 68, 69, 71, 74, 77, 82, 78, 81, 90, 96, 99, 106, 32.63801 + 118, 139, 152, 173, 200, 233, 255, 255, 245, 251, 220, 211, 193, 243, 255, 255, 32.63802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 56, 40, 43, 38, 38, 32.63804 + 42, 39, 37, 36, 37, 38, 35, 33, 34, 34, 35, 37, 39, 40, 43, 42, 32.63805 + 39, 37, 40, 41, 42, 42, 42, 42, 47, 46, 45, 42, 40, 36, 33, 34, 32.63806 + 42, 44, 44, 43, 43, 44, 44, 45, 45, 45, 45, 46, 46, 47, 47, 47, 32.63807 + 46, 46, 47, 48, 49, 50, 51, 52, 51, 51, 51, 51, 51, 51, 51, 51, 32.63808 + 57, 58, 58, 57, 55, 55, 57, 58, 58, 57, 57, 57, 57, 58, 60, 60, 32.63809 + 59, 62, 64, 66, 67, 70, 73, 76, 81, 77, 77, 83, 88, 91, 98, 110, 32.63810 + 141, 168, 187, 192, 195, 213, 240, 255, 242, 233, 205, 150, 172, 227, 253, 255, 32.63811 + 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 57, 42, 43, 41, 39, 45, 32.63813 + 45, 42, 41, 40, 38, 36, 33, 35, 35, 35, 36, 36, 37, 36, 36, 36, 32.63814 + 35, 37, 38, 39, 39, 40, 40, 43, 45, 47, 47, 47, 44, 39, 38, 44, 32.63815 + 44, 44, 43, 43, 44, 44, 45, 46, 45, 45, 45, 45, 46, 47, 48, 45, 32.63816 + 45, 45, 46, 46, 47, 47, 47, 50, 50, 51, 51, 52, 53, 53, 54, 57, 32.63817 + 58, 58, 56, 54, 54, 55, 57, 58, 58, 58, 58, 58, 58, 58, 58, 59, 32.63818 + 61, 63, 65, 66, 69, 73, 76, 80, 76, 75, 78, 80, 82, 87, 95, 124, 32.63819 + 160, 189, 190, 176, 180, 209, 235, 241, 235, 224, 198, 171, 178, 204, 255, 248, 32.63820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63821 + 255, 255, 255, 255, 255, 255, 255, 191, 60, 53, 39, 43, 46, 44, 47, 48, 32.63822 + 48, 45, 42, 40, 38, 36, 35, 34, 34, 34, 33, 33, 33, 33, 35, 36, 32.63823 + 36, 37, 38, 39, 40, 41, 42, 45, 47, 48, 49, 48, 46, 45, 47, 44, 32.63824 + 44, 43, 43, 44, 44, 45, 46, 46, 45, 45, 45, 46, 47, 48, 47, 47, 32.63825 + 47, 47, 47, 47, 47, 47, 48, 48, 49, 50, 52, 53, 54, 54, 57, 58, 32.63826 + 58, 56, 54, 53, 54, 56, 56, 56, 57, 58, 59, 59, 59, 59, 61, 63, 32.63827 + 65, 67, 68, 71, 75, 78, 79, 79, 79, 80, 81, 80, 81, 85, 96, 120, 32.63828 + 144, 158, 164, 172, 186, 198, 241, 233, 238, 253, 214, 183, 170, 234, 255, 235, 32.63829 + 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63830 + 255, 255, 255, 255, 255, 255, 60, 49, 44, 40, 40, 44, 38, 48, 50, 50, 32.63831 + 48, 46, 42, 41, 38, 34, 33, 32, 32, 30, 30, 30, 32, 32, 33, 35, 32.63832 + 36, 37, 39, 40, 42, 42, 44, 45, 46, 49, 52, 53, 52, 48, 44, 44, 32.63833 + 43, 43, 44, 44, 45, 46, 45, 45, 45, 46, 46, 47, 48, 48, 48, 48, 32.63834 + 47, 47, 47, 46, 46, 45, 46, 47, 48, 50, 51, 52, 53, 60, 61, 61, 32.63835 + 59, 57, 56, 58, 60, 54, 54, 55, 57, 59, 61, 62, 63, 66, 68, 69, 32.63836 + 69, 70, 73, 78, 81, 82, 86, 89, 90, 90, 89, 86, 85, 85, 85, 90, 32.63837 + 106, 130, 153, 171, 182, 221, 242, 240, 233, 222, 238, 201, 189, 195, 232, 255, 32.63838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63839 + 255, 255, 255, 255, 255, 55, 41, 46, 50, 43, 45, 37, 47, 50, 51, 49, 32.63840 + 45, 43, 42, 42, 36, 35, 34, 34, 34, 34, 34, 36, 34, 36, 36, 36, 32.63841 + 37, 36, 37, 37, 41, 42, 44, 44, 48, 53, 56, 55, 48, 44, 44, 43, 32.63842 + 43, 44, 44, 45, 44, 45, 46, 47, 47, 47, 46, 46, 45, 45, 45, 45, 32.63843 + 45, 45, 44, 44, 45, 45, 46, 47, 49, 50, 51, 52, 55, 56, 57, 56, 32.63844 + 54, 54, 56, 58, 54, 54, 54, 55, 57, 61, 64, 66, 70, 70, 70, 70, 32.63845 + 70, 72, 77, 80, 84, 90, 95, 96, 98, 98, 95, 90, 95, 90, 89, 97, 32.63846 + 110, 125, 141, 154, 185, 231, 255, 238, 236, 255, 239, 221, 165, 222, 248, 252, 32.63847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63848 + 255, 255, 255, 189, 60, 41, 50, 55, 41, 46, 44, 43, 48, 49, 46, 44, 32.63849 + 42, 44, 44, 40, 40, 41, 42, 43, 44, 45, 46, 44, 45, 44, 43, 41, 32.63850 + 38, 36, 36, 39, 40, 43, 45, 49, 51, 54, 53, 48, 44, 44, 43, 43, 32.63851 + 44, 44, 45, 42, 44, 47, 49, 49, 48, 46, 44, 43, 44, 44, 44, 44, 32.63852 + 44, 44, 44, 46, 47, 47, 48, 49, 50, 51, 52, 49, 50, 51, 51, 50, 32.63853 + 50, 53, 55, 57, 55, 54, 53, 55, 59, 64, 66, 70, 70, 69, 67, 67, 32.63854 + 68, 73, 76, 78, 85, 89, 89, 92, 97, 97, 93, 97, 101, 109, 116, 115, 32.63855 + 113, 119, 131, 157, 190, 243, 255, 255, 242, 237, 255, 238, 193, 178, 242, 255, 32.63856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63857 + 255, 255, 61, 63, 38, 45, 49, 30, 42, 49, 40, 42, 44, 43, 41, 42, 32.63858 + 43, 47, 46, 47, 49, 50, 53, 54, 58, 59, 60, 60, 58, 55, 49, 44, 32.63859 + 40, 38, 37, 39, 42, 46, 48, 49, 49, 45, 47, 44, 44, 43, 43, 44, 32.63860 + 44, 45, 41, 43, 47, 50, 50, 48, 45, 43, 44, 44, 44, 45, 45, 46, 32.63861 + 46, 46, 48, 48, 49, 50, 50, 51, 52, 52, 49, 51, 52, 52, 52, 53, 32.63862 + 55, 58, 60, 58, 54, 53, 54, 58, 62, 66, 68, 68, 66, 64, 63, 65, 32.63863 + 69, 72, 71, 76, 79, 78, 82, 91, 95, 91, 87, 91, 100, 111, 115, 113, 32.63864 + 121, 134, 148, 146, 194, 219, 250, 222, 217, 242, 255, 229, 211, 210, 246, 255, 32.63865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63866 + 255, 57, 45, 37, 40, 48, 48, 41, 34, 34, 40, 40, 36, 42, 50, 52, 32.63867 + 47, 45, 55, 67, 77, 82, 87, 90, 96, 100, 106, 100, 85, 64, 52, 45, 32.63868 + 40, 44, 44, 42, 43, 43, 42, 41, 41, 43, 43, 43, 44, 44, 45, 45, 32.63869 + 45, 44, 45, 45, 46, 46, 45, 45, 44, 44, 45, 47, 49, 49, 47, 45, 32.63870 + 44, 44, 45, 47, 47, 46, 47, 48, 50, 50, 51, 53, 55, 55, 54, 53, 32.63871 + 52, 55, 55, 56, 57, 58, 58, 59, 59, 61, 62, 62, 63, 64, 65, 66, 32.63872 + 66, 70, 71, 72, 74, 76, 79, 82, 83, 79, 83, 89, 96, 104, 112, 121, 32.63873 + 128, 154, 166, 132, 136, 194, 223, 220, 220, 230, 255, 244, 222, 244, 255, 255, 32.63874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 32.63875 + 76, 63, 51, 47, 48, 43, 38, 32, 32, 34, 35, 35, 39, 46, 51, 53, 32.63876 + 56, 74, 93, 106, 114, 119, 128, 138, 126, 132, 131, 121, 109, 94, 74, 57, 32.63877 + 50, 46, 41, 39, 41, 43, 43, 42, 42, 43, 43, 44, 44, 44, 45, 45, 32.63878 + 45, 46, 47, 48, 48, 47, 46, 45, 44, 46, 47, 49, 49, 47, 46, 44, 32.63879 + 43, 45, 47, 47, 46, 46, 48, 50, 50, 51, 51, 52, 53, 53, 52, 52, 32.63880 + 55, 55, 55, 55, 55, 55, 54, 54, 64, 64, 64, 64, 64, 65, 65, 65, 32.63881 + 69, 70, 71, 74, 76, 79, 81, 81, 79, 80, 83, 85, 90, 99, 108, 116, 32.63882 + 148, 154, 147, 136, 152, 192, 220, 212, 229, 254, 255, 252, 255, 255, 255, 255, 32.63883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 68, 32.63884 + 58, 46, 44, 43, 40, 38, 37, 33, 32, 34, 39, 41, 44, 56, 68, 90, 32.63885 + 107, 127, 136, 136, 139, 147, 156, 145, 146, 145, 142, 139, 128, 106, 84, 67, 32.63886 + 55, 43, 38, 38, 40, 38, 39, 40, 43, 43, 43, 44, 44, 44, 45, 45, 32.63887 + 46, 48, 50, 50, 48, 46, 45, 45, 46, 47, 48, 48, 47, 46, 45, 43, 32.63888 + 45, 47, 47, 46, 46, 48, 50, 50, 50, 50, 50, 50, 51, 52, 53, 55, 32.63889 + 56, 56, 56, 56, 57, 57, 57, 67, 66, 65, 65, 64, 64, 65, 65, 68, 32.63890 + 69, 72, 74, 77, 79, 80, 79, 78, 77, 78, 78, 82, 91, 100, 108, 104, 32.63891 + 116, 155, 162, 156, 201, 231, 201, 242, 247, 255, 255, 255, 249, 255, 255, 255, 32.63892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 56, 51, 45, 32.63893 + 39, 39, 38, 37, 39, 41, 38, 34, 38, 48, 50, 53, 69, 90, 121, 133, 32.63894 + 143, 146, 143, 141, 145, 149, 149, 147, 143, 141, 142, 143, 131, 117, 92, 72, 32.63895 + 53, 40, 36, 35, 31, 30, 39, 42, 43, 43, 43, 44, 44, 44, 44, 46, 32.63896 + 48, 50, 50, 48, 46, 44, 44, 44, 45, 46, 46, 45, 44, 44, 45, 47, 32.63897 + 48, 49, 48, 48, 50, 52, 52, 51, 50, 49, 50, 51, 53, 54, 50, 51, 32.63898 + 53, 55, 57, 59, 61, 62, 66, 65, 64, 64, 64, 65, 66, 67, 69, 70, 32.63899 + 73, 76, 78, 79, 80, 79, 76, 78, 79, 82, 85, 93, 101, 109, 106, 100, 32.63900 + 129, 141, 156, 210, 243, 234, 247, 227, 236, 255, 255, 255, 255, 255, 255, 255, 32.63901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 43, 53, 47, 44, 32.63902 + 43, 38, 33, 32, 36, 39, 38, 44, 55, 62, 70, 89, 110, 133, 137, 140, 32.63903 + 141, 141, 143, 145, 146, 147, 147, 145, 142, 144, 148, 146, 140, 117, 96, 68, 32.63904 + 49, 40, 37, 31, 31, 39, 42, 42, 43, 43, 43, 44, 44, 43, 44, 46, 32.63905 + 48, 48, 46, 44, 43, 42, 43, 43, 43, 43, 43, 43, 42, 47, 49, 50, 32.63906 + 50, 50, 50, 52, 53, 53, 53, 51, 51, 51, 53, 54, 55, 48, 49, 51, 32.63907 + 53, 55, 57, 59, 59, 63, 63, 62, 62, 64, 66, 69, 70, 71, 72, 74, 32.63908 + 76, 78, 80, 81, 81, 79, 82, 86, 90, 93, 96, 101, 106, 115, 107, 117, 32.63909 + 130, 169, 202, 214, 249, 246, 217, 220, 251, 255, 255, 254, 255, 255, 255, 255, 32.63910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 60, 54, 47, 43, 42, 32.63911 + 39, 32, 30, 34, 40, 44, 50, 61, 73, 86, 106, 123, 140, 140, 138, 138, 32.63912 + 141, 145, 145, 143, 142, 146, 152, 149, 148, 148, 146, 141, 135, 112, 85, 62, 32.63913 + 50, 44, 39, 39, 38, 42, 42, 42, 43, 43, 43, 43, 44, 45, 45, 45, 32.63914 + 45, 45, 45, 44, 43, 43, 43, 43, 43, 43, 43, 43, 47, 49, 50, 51, 32.63915 + 50, 50, 52, 54, 53, 53, 52, 52, 53, 54, 54, 55, 57, 57, 57, 58, 32.63916 + 58, 58, 59, 59, 61, 61, 60, 60, 62, 66, 69, 71, 73, 73, 73, 74, 32.63917 + 76, 78, 80, 81, 82, 85, 90, 92, 93, 93, 96, 97, 105, 116, 132, 142, 32.63918 + 183, 193, 182, 248, 255, 238, 225, 237, 254, 255, 255, 255, 255, 255, 255, 255, 32.63919 + 255, 255, 255, 255, 255, 255, 255, 255, 59, 26, 63, 53, 43, 37, 35, 34, 32.63920 + 32, 30, 36, 45, 55, 60, 68, 84, 105, 122, 131, 136, 137, 139, 141, 140, 32.63921 + 140, 141, 138, 136, 141, 147, 146, 147, 147, 144, 140, 144, 125, 97, 71, 54, 32.63922 + 46, 43, 45, 40, 41, 42, 42, 42, 43, 43, 43, 47, 46, 45, 45, 45, 32.63923 + 45, 46, 47, 45, 45, 44, 44, 44, 44, 45, 45, 45, 47, 49, 49, 48, 32.63924 + 48, 50, 52, 51, 51, 52, 53, 53, 53, 53, 53, 60, 60, 60, 60, 59, 32.63925 + 59, 59, 59, 62, 61, 59, 59, 60, 64, 67, 69, 73, 72, 70, 70, 72, 32.63926 + 75, 78, 81, 83, 86, 89, 89, 90, 91, 94, 97, 113, 118, 130, 125, 162, 32.63927 + 183, 181, 253, 255, 255, 235, 222, 236, 251, 255, 255, 255, 255, 255, 255, 255, 32.63928 + 255, 255, 255, 255, 255, 255, 255, 56, 87, 92, 63, 50, 40, 36, 35, 32, 32.63929 + 32, 37, 51, 63, 69, 74, 92, 118, 134, 137, 119, 128, 137, 140, 140, 140, 32.63930 + 144, 142, 141, 140, 142, 141, 144, 149, 150, 146, 148, 129, 101, 74, 54, 44, 32.63931 + 41, 44, 41, 41, 41, 42, 42, 43, 43, 43, 50, 47, 45, 44, 44, 45, 32.63932 + 47, 49, 47, 46, 46, 45, 45, 46, 46, 47, 44, 45, 47, 47, 47, 47, 32.63933 + 48, 50, 49, 50, 52, 52, 53, 52, 51, 50, 50, 51, 51, 52, 54, 55, 32.63934 + 56, 56, 63, 62, 60, 58, 59, 61, 65, 67, 72, 70, 68, 67, 68, 72, 32.63935 + 77, 82, 82, 83, 85, 87, 87, 91, 97, 102, 95, 99, 130, 131, 163, 187, 32.63936 + 170, 210, 235, 254, 240, 219, 229, 240, 242, 255, 255, 255, 255, 255, 255, 255, 32.63937 + 255, 255, 255, 255, 255, 208, 76, 54, 45, 50, 37, 33, 42, 47, 42, 37, 32.63938 + 42, 51, 56, 69, 85, 102, 130, 144, 135, 136, 139, 142, 145, 144, 143, 149, 32.63939 + 156, 149, 141, 140, 139, 136, 128, 125, 126, 148, 133, 108, 77, 54, 45, 43, 32.63940 + 42, 44, 46, 46, 46, 44, 44, 43, 43, 45, 43, 42, 42, 43, 43, 43, 32.63941 + 45, 45, 46, 47, 47, 47, 46, 45, 45, 45, 45, 45, 46, 46, 46, 47, 32.63942 + 47, 51, 50, 50, 49, 49, 50, 49, 50, 50, 52, 53, 55, 57, 59, 61, 32.63943 + 60, 52, 55, 60, 62, 62, 61, 63, 66, 62, 63, 67, 70, 68, 67, 73, 32.63944 + 84, 86, 86, 84, 80, 78, 80, 89, 96, 91, 97, 104, 120, 148, 176, 181, 32.63945 + 174, 176, 203, 204, 242, 254, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255, 32.63946 + 255, 255, 255, 255, 170, 165, 141, 107, 64, 47, 36, 38, 40, 41, 46, 54, 32.63947 + 57, 61, 79, 98, 113, 133, 145, 138, 150, 150, 152, 153, 152, 149, 151, 154, 32.63948 + 154, 147, 142, 136, 129, 122, 129, 136, 139, 129, 105, 77, 55, 47, 45, 42, 32.63949 + 42, 43, 43, 43, 43, 41, 41, 40, 44, 42, 42, 41, 42, 42, 43, 44, 32.63950 + 44, 45, 46, 47, 47, 47, 46, 46, 48, 48, 49, 49, 50, 50, 50, 50, 32.63951 + 52, 52, 51, 49, 49, 48, 49, 49, 50, 50, 53, 55, 59, 60, 63, 61, 32.63952 + 55, 57, 61, 64, 63, 62, 60, 60, 63, 63, 67, 70, 68, 67, 73, 84, 32.63953 + 86, 87, 88, 83, 80, 80, 85, 91, 90, 95, 101, 112, 138, 167, 178, 174, 32.63954 + 188, 218, 215, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63955 + 255, 255, 255, 54, 38, 68, 106, 66, 49, 36, 35, 37, 40, 47, 57, 63, 32.63956 + 68, 90, 113, 124, 132, 141, 142, 152, 150, 149, 153, 152, 147, 143, 141, 144, 32.63957 + 148, 152, 149, 138, 127, 129, 132, 135, 124, 104, 77, 58, 49, 47, 45, 44, 32.63958 + 46, 46, 46, 47, 47, 47, 46, 46, 44, 44, 43, 43, 44, 45, 45, 44, 32.63959 + 45, 46, 47, 48, 48, 48, 47, 46, 47, 47, 47, 48, 48, 48, 48, 53, 32.63960 + 52, 51, 50, 49, 49, 50, 50, 50, 51, 53, 55, 59, 60, 61, 60, 60, 32.63961 + 59, 61, 63, 64, 62, 58, 55, 64, 64, 67, 70, 69, 68, 73, 83, 83, 32.63962 + 86, 88, 84, 80, 78, 79, 82, 88, 92, 97, 103, 124, 152, 171, 176, 199, 32.63963 + 229, 222, 243, 247, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63964 + 255, 201, 71, 33, 29, 41, 49, 40, 35, 37, 39, 40, 44, 52, 66, 70, 32.63965 + 96, 120, 128, 129, 140, 144, 150, 146, 144, 149, 150, 142, 136, 129, 122, 127, 32.63966 + 132, 136, 133, 129, 130, 132, 132, 122, 103, 77, 58, 50, 47, 47, 46, 49, 32.63967 + 49, 50, 49, 49, 50, 49, 47, 45, 45, 43, 45, 44, 45, 46, 43, 44, 32.63968 + 46, 47, 48, 49, 49, 49, 46, 46, 46, 47, 47, 47, 48, 48, 52, 52, 32.63969 + 50, 50, 50, 51, 51, 50, 51, 51, 54, 55, 58, 60, 61, 61, 64, 60, 32.63970 + 58, 59, 62, 63, 60, 56, 66, 64, 66, 69, 69, 67, 72, 80, 79, 83, 32.63971 + 86, 84, 80, 75, 75, 76, 83, 87, 92, 97, 114, 138, 161, 173, 213, 246, 32.63972 + 234, 249, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.63973 + 58, 47, 53, 58, 45, 39, 36, 36, 39, 39, 40, 44, 51, 73, 77, 100, 32.63974 + 125, 129, 132, 142, 149, 149, 143, 143, 149, 150, 142, 134, 126, 116, 109, 104, 32.63975 + 103, 110, 127, 140, 147, 134, 124, 102, 76, 57, 51, 48, 48, 46, 47, 47, 32.63976 + 47, 48, 46, 47, 47, 48, 46, 46, 45, 46, 46, 47, 46, 44, 45, 46, 32.63977 + 48, 49, 49, 49, 49, 50, 50, 51, 51, 51, 52, 52, 52, 53, 53, 51, 32.63978 + 51, 51, 52, 52, 52, 51, 51, 54, 55, 57, 59, 60, 60, 63, 59, 55, 32.63979 + 55, 59, 63, 63, 62, 66, 64, 64, 67, 68, 66, 70, 77, 78, 82, 86, 32.63980 + 85, 82, 77, 78, 79, 80, 85, 89, 94, 107, 128, 148, 162, 191, 223, 215, 32.63981 + 233, 235, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 32.63982 + 62, 49, 47, 36, 41, 39, 38, 37, 35, 38, 47, 58, 80, 88, 109, 128, 32.63983 + 132, 139, 149, 150, 142, 138, 138, 142, 143, 138, 128, 121, 130, 125, 119, 116, 32.63984 + 126, 138, 144, 141, 130, 122, 103, 80, 61, 53, 51, 49, 48, 50, 48, 48, 32.63985 + 48, 48, 48, 47, 48, 47, 47, 46, 47, 47, 48, 48, 45, 46, 47, 48, 32.63986 + 49, 49, 49, 48, 50, 50, 50, 50, 51, 51, 51, 52, 54, 54, 54, 52, 32.63987 + 53, 53, 54, 53, 52, 52, 54, 55, 57, 58, 60, 61, 61, 58, 55, 55, 32.63988 + 58, 62, 65, 66, 66, 63, 62, 65, 66, 65, 67, 71, 78, 82, 86, 86, 32.63989 + 84, 84, 85, 88, 84, 87, 90, 94, 104, 118, 134, 148, 149, 180, 180, 209, 32.63990 + 216, 232, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 77, 73, 32.63991 + 58, 44, 26, 35, 37, 38, 36, 35, 40, 53, 64, 86, 98, 117, 132, 135, 32.63992 + 145, 151, 143, 134, 130, 130, 133, 134, 126, 118, 114, 125, 131, 138, 140, 143, 32.63993 + 143, 137, 127, 123, 118, 105, 86, 68, 60, 54, 50, 53, 53, 52, 52, 51, 32.63994 + 50, 50, 48, 48, 47, 47, 44, 47, 46, 47, 47, 49, 49, 50, 51, 51, 32.63995 + 50, 50, 49, 50, 50, 50, 50, 51, 51, 52, 52, 55, 54, 54, 55, 55, 32.63996 + 55, 56, 56, 54, 54, 55, 55, 57, 58, 59, 59, 56, 58, 59, 60, 60, 32.63997 + 61, 63, 64, 66, 61, 60, 63, 64, 63, 65, 68, 75, 79, 82, 82, 83, 32.63998 + 86, 90, 95, 94, 93, 93, 93, 99, 108, 121, 132, 132, 160, 163, 200, 209, 32.63999 + 218, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 68, 42, 50, 32.64000 + 54, 35, 21, 28, 36, 39, 40, 47, 55, 67, 88, 103, 123, 134, 137, 147, 32.64001 + 149, 135, 132, 129, 129, 130, 128, 120, 113, 110, 99, 110, 119, 123, 126, 132, 32.64002 + 133, 129, 115, 114, 104, 91, 75, 65, 56, 50, 51, 49, 48, 47, 45, 44, 32.64003 + 43, 43, 46, 46, 45, 44, 46, 45, 47, 48, 50, 51, 52, 52, 52, 51, 32.64004 + 50, 50, 54, 54, 55, 55, 55, 56, 56, 56, 56, 56, 56, 56, 57, 57, 32.64005 + 58, 57, 55, 55, 56, 57, 57, 58, 59, 59, 53, 58, 63, 64, 62, 60, 32.64006 + 60, 61, 65, 61, 59, 62, 63, 62, 63, 66, 69, 72, 75, 77, 79, 84, 32.64007 + 91, 97, 104, 98, 95, 93, 94, 101, 111, 121, 114, 138, 140, 180, 185, 186, 32.64008 + 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 120, 65, 49, 48, 40, 32.64009 + 41, 32, 30, 33, 37, 42, 46, 59, 74, 98, 108, 120, 133, 139, 141, 147, 32.64010 + 154, 133, 127, 126, 128, 124, 115, 107, 105, 111, 105, 107, 120, 127, 125, 120, 32.64011 + 118, 112, 107, 98, 87, 75, 68, 61, 54, 50, 46, 43, 42, 43, 44, 46, 32.64012 + 45, 44, 45, 46, 45, 48, 45, 47, 48, 48, 47, 52, 61, 62, 57, 55, 32.64013 + 58, 58, 55, 55, 58, 58, 56, 56, 59, 59, 59, 59, 61, 62, 62, 60, 32.64014 + 56, 61, 56, 53, 53, 58, 59, 54, 50, 56, 57, 58, 58, 56, 56, 57, 32.64015 + 58, 60, 61, 63, 65, 65, 65, 63, 62, 64, 69, 73, 75, 73, 74, 80, 32.64016 + 86, 95, 94, 96, 97, 96, 96, 102, 113, 110, 109, 113, 136, 162, 165, 170, 32.64017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 66, 61, 70, 46, 28, 39, 32.64018 + 36, 34, 37, 45, 54, 63, 74, 90, 104, 113, 121, 133, 140, 141, 144, 149, 32.64019 + 143, 130, 120, 116, 115, 114, 112, 111, 109, 107, 113, 124, 131, 127, 122, 119, 32.64020 + 111, 105, 96, 86, 76, 68, 63, 55, 51, 47, 45, 44, 45, 43, 39, 36, 32.64021 + 44, 44, 44, 44, 45, 45, 45, 46, 53, 54, 57, 63, 64, 59, 57, 59, 32.64022 + 58, 56, 57, 62, 63, 60, 61, 64, 64, 63, 63, 65, 67, 66, 63, 61, 32.64023 + 64, 62, 60, 60, 63, 63, 60, 56, 58, 60, 60, 59, 57, 56, 57, 58, 32.64024 + 62, 62, 62, 62, 62, 63, 64, 64, 66, 70, 71, 72, 70, 71, 75, 78, 32.64025 + 88, 89, 92, 97, 95, 93, 96, 104, 105, 104, 105, 121, 147, 157, 162, 255, 32.64026 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 167, 91, 31, 33, 46, 36, 36, 32.64027 + 34, 36, 48, 62, 73, 84, 98, 111, 116, 121, 132, 140, 141, 141, 143, 151, 32.64028 + 134, 117, 115, 115, 116, 115, 114, 111, 113, 121, 131, 135, 130, 125, 121, 109, 32.64029 + 103, 96, 87, 77, 70, 64, 58, 42, 40, 41, 44, 49, 49, 46, 44, 47, 32.64030 + 46, 45, 45, 44, 45, 47, 49, 59, 59, 60, 63, 63, 60, 59, 61, 59, 32.64031 + 58, 61, 66, 68, 65, 65, 68, 68, 68, 68, 70, 71, 71, 68, 66, 63, 32.64032 + 63, 62, 61, 61, 60, 58, 58, 60, 61, 62, 61, 59, 57, 58, 59, 63, 32.64033 + 62, 60, 59, 60, 61, 64, 65, 66, 67, 68, 70, 72, 74, 76, 77, 78, 32.64034 + 81, 88, 94, 93, 92, 93, 98, 106, 106, 102, 112, 137, 154, 159, 255, 255, 32.64035 + 255, 255, 255, 255, 255, 255, 255, 77, 64, 94, 82, 43, 33, 43, 35, 33, 32.64036 + 37, 51, 68, 81, 91, 101, 117, 117, 121, 132, 141, 143, 142, 142, 151, 139, 32.64037 + 127, 123, 120, 114, 112, 112, 117, 123, 132, 138, 139, 132, 123, 120, 109, 103, 32.64038 + 95, 89, 80, 71, 66, 63, 45, 42, 45, 48, 52, 54, 54, 53, 53, 53, 32.64039 + 52, 51, 51, 51, 54, 56, 64, 64, 63, 64, 64, 63, 64, 65, 65, 64, 32.64040 + 67, 72, 74, 71, 71, 72, 74, 73, 74, 75, 77, 76, 73, 71, 64, 64, 32.64041 + 63, 62, 58, 57, 58, 57, 58, 59, 61, 60, 59, 58, 59, 61, 62, 61, 32.64042 + 60, 60, 60, 62, 63, 64, 66, 66, 67, 71, 76, 80, 82, 82, 76, 79, 32.64043 + 86, 93, 93, 90, 91, 96, 96, 104, 104, 109, 133, 153, 162, 200, 255, 255, 32.64044 + 255, 255, 255, 255, 255, 78, 58, 54, 47, 35, 43, 51, 36, 39, 38, 46, 32.64045 + 63, 82, 94, 104, 114, 117, 117, 121, 131, 142, 145, 146, 147, 152, 145, 138, 32.64046 + 127, 116, 107, 109, 113, 126, 133, 140, 141, 140, 133, 123, 117, 112, 104, 97, 32.64047 + 94, 86, 76, 71, 71, 67, 61, 57, 55, 56, 57, 57, 56, 63, 63, 63, 32.64048 + 63, 64, 64, 65, 65, 68, 68, 68, 67, 68, 70, 72, 72, 75, 73, 75, 32.64049 + 80, 81, 79, 78, 81, 83, 81, 83, 84, 86, 85, 82, 79, 75, 73, 72, 32.64050 + 69, 63, 60, 61, 61, 55, 56, 58, 59, 58, 59, 61, 63, 60, 61, 62, 32.64051 + 63, 64, 63, 62, 62, 66, 66, 68, 72, 77, 81, 82, 82, 86, 87, 89, 32.64052 + 92, 89, 86, 88, 92, 81, 98, 105, 109, 129, 148, 169, 187, 255, 255, 255, 32.64053 + 255, 255, 255, 255, 93, 67, 51, 48, 43, 37, 36, 29, 37, 40, 54, 75, 32.64054 + 92, 103, 113, 122, 116, 117, 122, 133, 143, 147, 151, 154, 157, 150, 141, 126, 32.64055 + 110, 101, 109, 120, 136, 138, 141, 139, 137, 133, 123, 116, 117, 108, 102, 100, 32.64056 + 93, 81, 77, 80, 79, 73, 68, 66, 70, 73, 75, 76, 75, 75, 79, 80, 32.64057 + 81, 81, 80, 80, 75, 76, 78, 74, 77, 79, 82, 78, 85, 81, 84, 87, 32.64058 + 91, 88, 91, 93, 94, 93, 93, 96, 97, 97, 94, 90, 88, 83, 77, 72, 32.64059 + 67, 64, 62, 60, 56, 56, 58, 59, 58, 59, 60, 62, 60, 61, 64, 65, 32.64060 + 66, 65, 63, 62, 68, 69, 71, 73, 75, 76, 78, 79, 95, 93, 92, 91, 32.64061 + 87, 80, 83, 88, 81, 97, 107, 113, 130, 149, 178, 207, 255, 255, 255, 255, 32.64062 + 255, 255, 77, 54, 51, 50, 50, 49, 36, 32, 45, 41, 48, 66, 83, 97, 32.64063 + 102, 111, 117, 115, 117, 125, 136, 143, 147, 151, 158, 161, 155, 146, 134, 120, 32.64064 + 111, 116, 124, 139, 141, 139, 135, 134, 135, 128, 116, 121, 111, 105, 105, 99, 32.64065 + 88, 82, 88, 84, 82, 80, 82, 88, 92, 97, 98, 92, 94, 98, 101, 102, 32.64066 + 102, 102, 99, 86, 88, 89, 85, 86, 88, 89, 85, 91, 87, 89, 93, 98, 32.64067 + 98, 104, 108, 106, 105, 105, 107, 108, 107, 104, 101, 101, 95, 85, 78, 74, 32.64068 + 69, 64, 60, 61, 60, 61, 60, 59, 58, 59, 61, 63, 63, 64, 65, 65, 32.64069 + 65, 65, 65, 67, 70, 75, 75, 75, 76, 81, 85, 90, 89, 89, 89, 84, 32.64070 + 80, 83, 88, 93, 99, 104, 114, 132, 150, 183, 220, 255, 255, 255, 255, 255, 32.64071 + 255, 98, 56, 68, 57, 43, 50, 53, 45, 52, 56, 65, 80, 96, 102, 103, 32.64072 + 107, 112, 116, 119, 128, 138, 143, 144, 152, 161, 159, 156, 152, 147, 137, 126, 32.64073 + 123, 123, 140, 139, 135, 130, 132, 136, 130, 120, 124, 114, 109, 111, 105, 91, 32.64074 + 90, 95, 98, 95, 95, 98, 101, 105, 106, 105, 107, 111, 115, 119, 121, 120, 32.64075 + 118, 115, 96, 100, 100, 95, 94, 97, 96, 91, 96, 93, 94, 100, 105, 107, 32.64076 + 115, 120, 115, 114, 116, 117, 117, 116, 114, 110, 117, 108, 97, 89, 86, 82, 32.64077 + 77, 68, 66, 64, 64, 63, 60, 57, 57, 58, 65, 64, 64, 63, 63, 67, 32.64078 + 69, 70, 66, 71, 77, 79, 78, 79, 87, 93, 77, 79, 83, 88, 88, 85, 32.64079 + 89, 94, 103, 98, 95, 106, 127, 143, 176, 218, 255, 255, 255, 255, 255, 189, 32.64080 + 81, 64, 64, 64, 63, 68, 74, 77, 74, 86, 89, 93, 98, 101, 107, 111, 32.64081 + 114, 117, 120, 124, 133, 142, 147, 148, 146, 148, 154, 152, 143, 134, 131, 132, 32.64082 + 131, 132, 128, 124, 124, 125, 126, 127, 125, 125, 125, 123, 118, 112, 106, 107, 32.64083 + 105, 103, 105, 107, 110, 114, 115, 117, 117, 126, 129, 128, 125, 127, 131, 130, 32.64084 + 124, 120, 119, 117, 116, 112, 112, 111, 111, 112, 115, 118, 119, 118, 118, 123, 32.64085 + 126, 137, 138, 137, 134, 129, 124, 118, 115, 113, 113, 110, 102, 92, 82, 78, 32.64086 + 74, 70, 62, 61, 62, 62, 56, 54, 54, 51, 56, 64, 68, 69, 69, 71, 32.64087 + 73, 74, 76, 80, 82, 84, 87, 89, 93, 91, 89, 87, 90, 93, 96, 96, 32.64088 + 94, 98, 94, 94, 100, 111, 125, 145, 165, 255, 255, 255, 255, 255, 68, 89, 32.64089 + 73, 76, 77, 77, 82, 88, 90, 86, 96, 97, 101, 104, 108, 111, 113, 117, 32.64090 + 117, 120, 125, 132, 141, 145, 147, 146, 145, 150, 148, 142, 134, 132, 133, 131, 32.64091 + 128, 124, 122, 122, 124, 126, 127, 126, 129, 125, 121, 118, 118, 118, 116, 114, 32.64092 + 114, 113, 117, 120, 124, 125, 126, 127, 131, 134, 133, 130, 130, 134, 134, 129, 32.64093 + 130, 131, 131, 130, 128, 128, 129, 129, 130, 133, 135, 136, 133, 134, 136, 141, 32.64094 + 142, 142, 141, 140, 135, 129, 125, 122, 119, 118, 117, 110, 100, 91, 88, 83, 32.64095 + 66, 59, 59, 63, 64, 60, 60, 62, 57, 58, 61, 63, 65, 67, 70, 74, 32.64096 + 73, 74, 76, 78, 80, 84, 91, 95, 97, 92, 89, 91, 98, 103, 104, 100, 32.64097 + 101, 96, 95, 100, 106, 114, 131, 146, 255, 255, 255, 255, 79, 78, 90, 83, 32.64098 + 87, 88, 89, 93, 97, 98, 93, 97, 98, 102, 104, 107, 109, 112, 114, 120, 32.64099 + 122, 125, 129, 136, 141, 144, 144, 145, 148, 146, 138, 130, 129, 129, 128, 123, 32.64100 + 121, 121, 122, 124, 126, 129, 128, 132, 125, 119, 119, 125, 128, 125, 122, 120, 32.64101 + 122, 124, 126, 130, 131, 133, 133, 135, 136, 135, 133, 133, 136, 136, 132, 135, 32.64102 + 137, 137, 138, 139, 141, 140, 141, 138, 140, 140, 141, 138, 138, 140, 144, 142, 32.64103 + 145, 145, 142, 141, 137, 133, 130, 130, 129, 126, 120, 113, 105, 103, 97, 78, 32.64104 + 69, 67, 66, 65, 60, 59, 59, 64, 61, 57, 57, 61, 66, 70, 72, 72, 32.64105 + 72, 72, 72, 74, 78, 85, 90, 98, 92, 90, 92, 98, 103, 106, 104, 106, 32.64106 + 103, 102, 105, 107, 112, 121, 135, 255, 255, 255, 255, 80, 82, 85, 88, 92, 32.64107 + 94, 95, 98, 101, 100, 95, 100, 100, 103, 105, 107, 108, 110, 113, 120, 121, 32.64108 + 123, 124, 130, 134, 139, 141, 145, 147, 144, 133, 127, 126, 123, 119, 119, 119, 32.64109 + 121, 123, 125, 127, 131, 131, 130, 126, 124, 125, 129, 131, 129, 126, 124, 125, 32.64110 + 127, 131, 133, 133, 134, 134, 137, 137, 136, 136, 137, 138, 137, 135, 136, 136, 32.64111 + 136, 137, 138, 139, 139, 140, 138, 138, 138, 138, 136, 136, 136, 139, 144, 144, 32.64112 + 146, 145, 145, 142, 140, 137, 134, 133, 130, 127, 120, 115, 111, 106, 90, 79, 32.64113 + 74, 72, 67, 61, 58, 60, 65, 61, 56, 58, 63, 68, 71, 71, 73, 72, 32.64114 + 72, 71, 69, 72, 75, 79, 91, 90, 88, 89, 91, 96, 100, 106, 112, 111, 32.64115 + 109, 114, 116, 118, 130, 141, 255, 255, 255, 96, 92, 86, 87, 93, 96, 98, 32.64116 + 98, 101, 104, 101, 96, 107, 108, 109, 110, 112, 113, 114, 117, 118, 118, 118, 32.64117 + 118, 122, 125, 131, 136, 141, 141, 139, 129, 125, 123, 120, 117, 118, 120, 123, 32.64118 + 125, 127, 128, 132, 133, 125, 127, 130, 131, 131, 129, 128, 128, 128, 129, 132, 32.64119 + 133, 134, 134, 135, 137, 141, 137, 135, 138, 139, 137, 137, 137, 137, 138, 137, 32.64120 + 137, 136, 136, 137, 138, 142, 141, 140, 140, 141, 141, 141, 142, 144, 144, 146, 32.64121 + 146, 146, 145, 145, 143, 135, 133, 130, 127, 124, 121, 116, 111, 94, 84, 77, 32.64122 + 76, 74, 70, 69, 69, 65, 62, 60, 63, 68, 71, 71, 69, 71, 74, 77, 32.64123 + 77, 74, 74, 75, 74, 77, 83, 85, 83, 81, 83, 92, 102, 113, 112, 115, 32.64124 + 119, 127, 133, 148, 161, 255, 255, 255, 85, 99, 93, 96, 99, 101, 102, 100, 32.64125 + 103, 106, 104, 99, 107, 107, 108, 109, 111, 112, 113, 116, 115, 116, 116, 116, 32.64126 + 118, 119, 123, 128, 129, 130, 129, 125, 122, 124, 124, 121, 119, 122, 126, 127, 32.64127 + 127, 128, 131, 133, 123, 127, 132, 133, 131, 128, 128, 130, 132, 132, 135, 137, 32.64128 + 137, 138, 139, 139, 143, 139, 137, 140, 142, 140, 139, 141, 142, 142, 141, 140, 32.64129 + 138, 138, 138, 138, 144, 142, 141, 141, 143, 144, 143, 143, 145, 146, 146, 146, 32.64130 + 146, 145, 146, 145, 142, 139, 136, 136, 135, 131, 127, 122, 112, 100, 91, 86, 32.64131 + 81, 75, 72, 72, 69, 66, 67, 70, 71, 72, 71, 70, 70, 74, 78, 81, 32.64132 + 81, 80, 79, 80, 70, 76, 81, 79, 75, 78, 88, 98, 108, 109, 115, 126, 32.64133 + 137, 148, 164, 179, 255, 255, 200, 87, 98, 100, 102, 103, 106, 105, 102, 104, 32.64134 + 107, 107, 103, 104, 104, 106, 107, 109, 110, 113, 114, 115, 117, 118, 117, 115, 32.64135 + 117, 120, 123, 122, 124, 123, 120, 122, 125, 126, 122, 119, 122, 127, 127, 126, 32.64136 + 125, 128, 130, 128, 127, 127, 128, 130, 132, 133, 133, 135, 135, 137, 137, 138, 32.64137 + 140, 139, 139, 147, 141, 141, 144, 145, 142, 141, 144, 143, 142, 141, 140, 140, 32.64138 + 140, 139, 140, 142, 138, 137, 139, 141, 142, 141, 140, 148, 149, 149, 148, 148, 32.64139 + 146, 146, 145, 148, 146, 144, 143, 144, 143, 139, 132, 133, 119, 107, 98, 90, 32.64140 + 81, 75, 74, 77, 76, 77, 76, 72, 71, 71, 72, 71, 73, 76, 79, 78, 32.64141 + 79, 79, 81, 72, 74, 75, 78, 79, 81, 87, 92, 104, 109, 119, 135, 150, 32.64142 + 161, 176, 211, 255, 255, 96, 100, 96, 103, 100, 106, 107, 104, 101, 102, 106, 32.64143 + 107, 103, 106, 107, 109, 110, 112, 113, 116, 117, 115, 117, 118, 117, 115, 115, 32.64144 + 116, 119, 121, 121, 121, 118, 119, 123, 123, 120, 119, 122, 127, 127, 124, 122, 32.64145 + 125, 127, 133, 127, 122, 123, 130, 136, 138, 137, 134, 134, 136, 137, 138, 138, 32.64146 + 138, 137, 150, 144, 143, 148, 149, 145, 144, 146, 139, 139, 138, 138, 138, 138, 32.64147 + 138, 139, 141, 139, 136, 138, 141, 142, 141, 142, 152, 152, 150, 149, 148, 147, 32.64148 + 146, 146, 147, 144, 143, 143, 146, 144, 140, 134, 136, 124, 114, 106, 99, 91, 32.64149 + 88, 87, 87, 86, 85, 79, 73, 69, 71, 74, 73, 74, 75, 74, 72, 72, 32.64150 + 76, 77, 78, 75, 73, 76, 84, 89, 90, 89, 102, 109, 123, 144, 160, 171, 32.64151 + 183, 255, 255, 255, 90, 93, 102, 107, 105, 103, 105, 107, 106, 106, 104, 104, 32.64152 + 105, 106, 107, 110, 113, 116, 117, 116, 114, 112, 112, 115, 117, 117, 119, 119, 32.64153 + 119, 122, 122, 124, 124, 125, 126, 125, 125, 118, 123, 130, 133, 133, 131, 130, 32.64154 + 129, 126, 122, 124, 129, 131, 129, 131, 137, 137, 138, 140, 141, 144, 145, 148, 32.64155 + 148, 149, 146, 145, 145, 145, 145, 144, 143, 143, 142, 141, 140, 139, 139, 139, 32.64156 + 140, 143, 139, 135, 133, 137, 140, 141, 143, 144, 146, 149, 151, 148, 145, 148, 32.64157 + 154, 149, 148, 148, 148, 149, 148, 147, 146, 137, 138, 135, 125, 117, 112, 104, 32.64158 + 94, 95, 91, 88, 83, 79, 75, 73, 73, 69, 78, 81, 74, 75, 83, 82, 32.64159 + 72, 68, 75, 72, 68, 77, 82, 91, 108, 104, 107, 121, 155, 183, 182, 183, 32.64160 + 255, 255, 255, 90, 100, 102, 101, 107, 103, 105, 106, 106, 106, 104, 104, 105, 32.64161 + 108, 108, 111, 114, 117, 118, 116, 114, 113, 113, 114, 115, 116, 117, 119, 119, 32.64162 + 121, 122, 122, 124, 124, 124, 123, 122, 123, 123, 123, 122, 121, 124, 131, 135, 32.64163 + 128, 124, 125, 130, 131, 129, 130, 137, 136, 136, 138, 140, 142, 143, 146, 146, 32.64164 + 149, 147, 146, 145, 146, 145, 145, 142, 143, 143, 142, 142, 141, 140, 140, 140, 32.64165 + 146, 144, 142, 142, 143, 145, 144, 145, 152, 149, 148, 151, 150, 147, 146, 148, 32.64166 + 151, 151, 149, 148, 148, 147, 146, 146, 143, 143, 140, 130, 125, 123, 119, 112, 32.64167 + 108, 103, 99, 93, 87, 81, 76, 71, 77, 83, 85, 80, 81, 88, 87, 81, 32.64168 + 75, 80, 77, 76, 84, 90, 100, 117, 125, 135, 140, 156, 190, 210, 220, 255, 32.64169 + 255, 153, 92, 107, 102, 95, 109, 105, 107, 108, 108, 106, 104, 106, 107, 111, 32.64170 + 111, 112, 115, 118, 119, 117, 115, 116, 115, 114, 113, 115, 116, 117, 118, 119, 32.64171 + 120, 123, 125, 124, 123, 121, 120, 125, 124, 122, 119, 119, 123, 131, 137, 130, 32.64172 + 127, 128, 130, 130, 129, 130, 135, 136, 137, 140, 140, 142, 145, 147, 147, 150, 32.64173 + 147, 147, 146, 147, 146, 145, 144, 145, 146, 144, 145, 145, 143, 141, 140, 145, 32.64174 + 143, 141, 142, 144, 145, 142, 142, 153, 148, 144, 148, 151, 149, 146, 145, 150, 32.64175 + 149, 149, 149, 149, 149, 150, 148, 146, 146, 143, 138, 135, 137, 137, 133, 123, 32.64176 + 117, 113, 108, 103, 94, 86, 79, 84, 85, 85, 86, 86, 88, 88, 87, 75, 32.64177 + 82, 79, 79, 88, 94, 103, 118, 121, 139, 148, 165, 200, 218, 255, 255, 255, 32.64178 + 166, 96, 108, 104, 96, 107, 104, 106, 108, 108, 106, 105, 106, 107, 113, 113, 32.64179 + 114, 116, 119, 119, 117, 115, 117, 116, 114, 112, 114, 115, 117, 119, 120, 122, 32.64180 + 124, 126, 125, 123, 120, 119, 121, 124, 128, 130, 129, 129, 131, 132, 129, 128, 32.64181 + 129, 130, 131, 131, 132, 136, 138, 139, 142, 144, 147, 147, 149, 149, 151, 150, 32.64182 + 149, 149, 149, 149, 148, 145, 145, 147, 146, 147, 147, 145, 142, 140, 142, 141, 32.64183 + 139, 139, 140, 142, 141, 143, 147, 143, 143, 148, 151, 150, 148, 150, 148, 147, 32.64184 + 147, 148, 149, 151, 153, 154, 146, 148, 147, 144, 144, 147, 147, 143, 134, 128, 32.64185 + 125, 123, 119, 112, 103, 95, 92, 89, 90, 93, 93, 88, 86, 89, 77, 85, 32.64186 + 84, 84, 92, 97, 100, 112, 106, 122, 148, 181, 206, 205, 255, 255, 255, 180, 32.64187 + 103, 107, 110, 105, 105, 105, 106, 108, 108, 107, 106, 107, 108, 114, 114, 115, 32.64188 + 117, 119, 118, 116, 114, 119, 117, 115, 114, 113, 115, 117, 118, 122, 123, 125, 32.64189 + 126, 125, 124, 122, 120, 119, 124, 130, 133, 133, 131, 131, 131, 126, 128, 129, 32.64190 + 129, 131, 134, 136, 138, 139, 141, 143, 144, 147, 148, 150, 150, 154, 152, 151, 32.64191 + 151, 151, 151, 150, 149, 146, 147, 149, 150, 148, 146, 144, 142, 143, 142, 140, 32.64192 + 139, 138, 141, 145, 148, 144, 144, 147, 150, 149, 147, 149, 155, 148, 148, 148, 32.64193 + 148, 150, 150, 151, 152, 145, 149, 152, 150, 150, 153, 149, 145, 142, 138, 134, 32.64194 + 132, 129, 123, 117, 111, 106, 102, 101, 103, 98, 91, 85, 86, 84, 93, 93, 32.64195 + 94, 103, 104, 102, 109, 106, 125, 151, 184, 212, 228, 255, 255, 255, 171, 106, 32.64196 + 104, 112, 114, 104, 104, 105, 107, 107, 107, 106, 107, 108, 115, 114, 115, 116, 32.64197 + 118, 117, 115, 113, 120, 119, 118, 115, 114, 115, 116, 117, 122, 123, 123, 123, 32.64198 + 123, 123, 124, 123, 122, 123, 125, 126, 125, 126, 131, 133, 125, 128, 130, 129, 32.64199 + 131, 136, 138, 139, 137, 139, 141, 143, 145, 146, 148, 148, 154, 153, 151, 152, 32.64200 + 153, 152, 151, 149, 147, 148, 149, 149, 147, 146, 144, 143, 141, 140, 139, 137, 32.64201 + 134, 135, 139, 142, 146, 147, 150, 152, 150, 145, 149, 156, 153, 153, 152, 152, 32.64202 + 152, 150, 148, 147, 146, 150, 154, 152, 153, 154, 151, 146, 149, 147, 143, 137, 32.64203 + 133, 128, 126, 124, 121, 117, 112, 103, 95, 88, 83, 79, 86, 93, 92, 95, 32.64204 + 106, 108, 107, 113, 118, 142, 160, 180, 222, 255, 255, 255, 255, 141, 106, 103, 32.64205 + 109, 118, 106, 104, 105, 108, 108, 107, 107, 109, 111, 114, 114, 115, 116, 117, 32.64206 + 116, 113, 111, 119, 119, 119, 118, 116, 115, 115, 115, 121, 120, 119, 119, 121, 32.64207 + 122, 124, 124, 122, 121, 122, 121, 121, 123, 129, 133, 127, 131, 132, 129, 131, 32.64208 + 136, 138, 137, 139, 140, 143, 143, 145, 146, 148, 148, 153, 151, 150, 151, 152, 32.64209 + 151, 150, 149, 148, 148, 148, 148, 147, 147, 144, 144, 139, 140, 141, 139, 133, 32.64210 + 130, 129, 130, 141, 140, 141, 145, 147, 144, 146, 150, 150, 151, 154, 155, 154, 32.64211 + 151, 148, 146, 151, 154, 156, 152, 153, 157, 156, 150, 154, 153, 151, 144, 138, 32.64212 + 139, 143, 148, 143, 140, 126, 106, 92, 91, 87, 79, 87, 91, 89, 93, 108, 32.64213 + 116, 120, 129, 133, 158, 177, 196, 233, 255, 255, 255, 167, 114, 106, 107, 107, 32.64214 + 120, 109, 104, 106, 108, 110, 109, 109, 111, 112, 115, 114, 114, 115, 116, 115, 32.64215 + 112, 109, 117, 119, 117, 117, 117, 116, 114, 114, 119, 118, 116, 115, 117, 119, 32.64216 + 123, 123, 119, 120, 124, 125, 125, 125, 128, 129, 129, 134, 134, 130, 130, 136, 32.64217 + 137, 135, 139, 141, 143, 146, 147, 148, 149, 150, 151, 149, 148, 148, 150, 149, 32.64218 + 148, 147, 150, 148, 148, 146, 146, 146, 146, 145, 144, 146, 150, 147, 140, 132, 32.64219 + 128, 125, 133, 128, 128, 136, 142, 144, 145, 146, 143, 146, 152, 156, 157, 156, 32.64220 + 154, 152, 155, 159, 156, 152, 152, 156, 157, 154, 154, 155, 154, 150, 144, 148, 32.64221 + 158, 168, 255, 255, 218, 113, 98, 102, 100, 92, 93, 97, 92, 96, 116, 129, 32.64222 + 139, 150, 154, 175, 201, 225, 241, 255, 255, 255, 140, 121, 116, 100, 110, 114, 32.64223 + 109, 105, 104, 107, 110, 112, 114, 116, 117, 113, 115, 118, 118, 117, 116, 117, 32.64224 + 118, 114, 120, 119, 112, 112, 120, 122, 117, 119, 115, 114, 117, 120, 119, 122, 32.64225 + 126, 117, 121, 124, 127, 127, 127, 130, 131, 130, 130, 131, 131, 132, 133, 136, 32.64226 + 137, 138, 138, 140, 142, 144, 147, 148, 149, 150, 151, 152, 152, 152, 150, 150, 32.64227 + 150, 148, 149, 150, 148, 147, 146, 145, 143, 140, 140, 145, 144, 142, 136, 133, 32.64228 + 129, 116, 123, 120, 116, 126, 141, 143, 131, 136, 140, 146, 152, 154, 158, 159, 32.64229 + 160, 154, 155, 152, 148, 152, 158, 158, 152, 156, 136, 146, 166, 146, 180, 221, 32.64230 + 255, 255, 255, 255, 255, 156, 102, 87, 93, 100, 114, 113, 113, 131, 151, 162, 32.64231 + 173, 189, 212, 232, 255, 255, 255, 255, 255, 119, 113, 112, 103, 112, 115, 112, 32.64232 + 109, 109, 111, 112, 114, 115, 118, 118, 117, 118, 117, 116, 113, 111, 111, 110, 32.64233 + 115, 117, 116, 113, 114, 118, 120, 118, 120, 116, 114, 117, 120, 119, 121, 126, 32.64234 + 119, 122, 125, 126, 126, 126, 130, 131, 131, 131, 131, 132, 133, 134, 137, 138, 32.64235 + 137, 138, 140, 141, 145, 145, 148, 148, 149, 149, 149, 150, 151, 149, 148, 148, 32.64236 + 149, 151, 152, 151, 148, 146, 144, 141, 138, 139, 141, 142, 144, 145, 143, 141, 32.64237 + 132, 129, 122, 114, 116, 126, 128, 123, 132, 136, 142, 147, 154, 157, 160, 161, 32.64238 + 160, 156, 158, 162, 162, 154, 150, 154, 144, 189, 142, 168, 195, 198, 255, 255, 32.64239 + 255, 255, 255, 255, 255, 127, 117, 117, 111, 121, 121, 123, 144, 167, 180, 188, 32.64240 + 209, 234, 241, 255, 255, 255, 255, 255, 107, 111, 113, 104, 110, 108, 106, 112, 32.64241 + 112, 113, 113, 115, 115, 117, 119, 118, 118, 117, 116, 112, 111, 110, 111, 118, 32.64242 + 115, 114, 117, 118, 116, 117, 120, 120, 116, 115, 118, 121, 119, 121, 125, 122, 32.64243 + 124, 125, 125, 126, 127, 130, 132, 132, 132, 132, 132, 135, 136, 138, 138, 139, 32.64244 + 139, 141, 141, 145, 146, 149, 150, 148, 148, 149, 149, 150, 147, 147, 147, 149, 32.64245 + 150, 151, 151, 150, 147, 143, 141, 130, 127, 127, 132, 140, 146, 149, 149, 140, 32.64246 + 134, 125, 116, 112, 113, 117, 119, 127, 130, 137, 143, 152, 156, 158, 158, 162, 32.64247 + 153, 157, 167, 163, 149, 148, 161, 147, 177, 161, 201, 232, 255, 255, 255, 255, 32.64248 + 255, 255, 255, 255, 255, 137, 142, 132, 136, 136, 139, 163, 190, 206, 209, 201, 32.64249 + 233, 255, 255, 255, 255, 255, 255, 136, 113, 115, 108, 113, 108, 108, 111, 111, 32.64250 + 112, 113, 115, 118, 119, 119, 118, 119, 119, 117, 115, 115, 115, 117, 120, 113, 32.64251 + 113, 120, 121, 115, 115, 122, 120, 117, 116, 119, 121, 120, 121, 125, 127, 125, 32.64252 + 126, 125, 126, 127, 130, 132, 132, 132, 132, 132, 135, 136, 137, 138, 140, 140, 32.64253 + 141, 144, 146, 149, 150, 151, 149, 150, 151, 151, 151, 150, 149, 147, 147, 148, 32.64254 + 150, 152, 151, 148, 146, 144, 128, 124, 122, 125, 133, 141, 145, 145, 148, 142, 32.64255 + 138, 133, 125, 115, 112, 115, 120, 124, 132, 140, 148, 154, 154, 153, 164, 153, 32.64256 + 153, 159, 159, 152, 156, 165, 177, 153, 190, 218, 255, 255, 255, 255, 255, 255, 32.64257 + 255, 255, 255, 255, 255, 145, 142, 142, 145, 153, 172, 205, 228, 225, 203, 214, 32.64258 + 248, 252, 250, 255, 255, 255, 221, 112, 110, 109, 118, 113, 118, 107, 108, 110, 32.64259 + 112, 114, 118, 120, 121, 120, 121, 120, 117, 115, 115, 116, 118, 120, 114, 115, 32.64260 + 122, 122, 115, 116, 122, 120, 117, 119, 122, 122, 120, 122, 124, 127, 128, 128, 32.64261 + 127, 127, 128, 131, 134, 133, 133, 133, 133, 135, 136, 138, 138, 141, 142, 144, 32.64262 + 145, 147, 150, 151, 152, 154, 154, 155, 154, 154, 152, 152, 151, 145, 147, 148, 32.64263 + 150, 151, 150, 149, 146, 140, 134, 127, 124, 125, 128, 128, 126, 139, 138, 143, 32.64264 + 145, 139, 124, 116, 114, 113, 116, 124, 135, 147, 152, 153, 151, 160, 160, 158, 32.64265 + 156, 158, 163, 163, 161, 162, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64266 + 255, 255, 255, 255, 255, 219, 146, 159, 169, 181, 214, 241, 236, 213, 242, 224, 32.64267 + 212, 255, 255, 255, 255, 255, 114, 106, 107, 114, 107, 113, 106, 107, 109, 112, 32.64268 + 116, 118, 121, 122, 124, 124, 121, 118, 113, 111, 113, 114, 119, 117, 118, 121, 32.64269 + 121, 117, 117, 119, 121, 118, 120, 123, 123, 120, 121, 124, 126, 127, 128, 128, 32.64270 + 129, 129, 132, 134, 134, 134, 134, 135, 136, 137, 139, 139, 142, 142, 145, 147, 32.64271 + 150, 151, 153, 153, 157, 157, 157, 157, 157, 155, 154, 153, 147, 148, 148, 149, 32.64272 + 150, 151, 149, 149, 148, 143, 134, 124, 116, 110, 106, 103, 105, 110, 123, 132, 32.64273 + 136, 133, 128, 122, 113, 114, 118, 127, 139, 149, 153, 153, 151, 160, 162, 158, 32.64274 + 159, 164, 165, 157, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64275 + 255, 255, 255, 255, 255, 225, 184, 193, 192, 220, 249, 242, 227, 216, 255, 255, 32.64276 + 255, 255, 255, 255, 255, 118, 105, 105, 112, 100, 105, 109, 111, 113, 114, 117, 32.64277 + 119, 121, 123, 128, 126, 123, 120, 114, 112, 114, 116, 117, 121, 121, 119, 120, 32.64278 + 121, 120, 116, 123, 120, 121, 124, 125, 121, 121, 124, 124, 127, 129, 131, 133, 32.64279 + 133, 135, 136, 138, 138, 137, 139, 140, 141, 142, 143, 145, 145, 147, 147, 150, 32.64280 + 152, 154, 156, 160, 160, 160, 158, 158, 156, 155, 153, 152, 151, 149, 149, 149, 32.64281 + 149, 148, 149, 147, 146, 140, 130, 116, 106, 102, 100, 97, 103, 110, 115, 126, 32.64282 + 139, 142, 135, 129, 123, 117, 119, 128, 138, 146, 149, 152, 156, 162, 163, 158, 32.64283 + 162, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64285 + 255, 255, 255, 255, 115, 103, 109, 119, 103, 110, 113, 114, 115, 116, 118, 120, 32.64286 + 122, 122, 128, 128, 125, 122, 118, 119, 121, 123, 116, 123, 124, 118, 118, 123, 32.64287 + 121, 114, 123, 121, 121, 124, 125, 122, 121, 123, 122, 126, 129, 134, 134, 134, 32.64288 + 135, 137, 140, 140, 141, 141, 142, 143, 144, 145, 145, 145, 147, 150, 152, 153, 32.64289 + 156, 156, 161, 161, 161, 160, 160, 157, 156, 154, 159, 155, 152, 148, 147, 147, 32.64290 + 149, 148, 147, 151, 150, 141, 128, 118, 116, 117, 128, 128, 124, 115, 123, 142, 32.64291 + 146, 138, 147, 135, 120, 113, 116, 126, 135, 140, 163, 161, 163, 167, 162, 255, 32.64292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64294 + 255, 255, 255, 208, 111, 110, 112, 110, 108, 113, 113, 112, 111, 116, 122, 126, 32.64295 + 125, 129, 127, 123, 120, 117, 118, 119, 120, 124, 124, 123, 123, 122, 121, 122, 32.64296 + 121, 118, 123, 128, 129, 128, 127, 129, 131, 136, 134, 132, 132, 133, 134, 136, 32.64297 + 139, 144, 144, 145, 146, 147, 148, 147, 146, 147, 148, 151, 152, 155, 157, 160, 32.64298 + 161, 158, 159, 163, 164, 164, 160, 156, 152, 157, 156, 153, 149, 148, 147, 148, 32.64299 + 147, 149, 147, 145, 143, 140, 137, 134, 132, 139, 135, 130, 128, 138, 151, 152, 32.64300 + 146, 145, 155, 144, 138, 126, 117, 131, 131, 148, 158, 164, 193, 255, 255, 255, 32.64301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64303 + 255, 255, 255, 112, 110, 112, 113, 112, 115, 115, 114, 116, 120, 124, 128, 128, 32.64304 + 131, 129, 126, 122, 119, 117, 118, 118, 124, 123, 121, 120, 120, 122, 125, 126, 32.64305 + 123, 123, 125, 126, 130, 131, 130, 129, 134, 133, 133, 133, 134, 136, 140, 141, 32.64306 + 141, 140, 142, 143, 144, 144, 144, 145, 148, 150, 151, 153, 156, 159, 161, 161, 32.64307 + 161, 162, 163, 162, 162, 160, 159, 156, 156, 154, 153, 150, 149, 146, 148, 147, 32.64308 + 149, 147, 145, 142, 139, 133, 132, 128, 137, 137, 138, 136, 141, 150, 153, 151, 32.64309 + 149, 156, 144, 141, 136, 131, 147, 148, 145, 157, 194, 255, 255, 255, 255, 255, 32.64310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64312 + 255, 255, 111, 107, 110, 112, 116, 119, 117, 118, 120, 124, 129, 131, 132, 135, 32.64313 + 131, 128, 122, 119, 117, 117, 118, 124, 122, 120, 119, 122, 125, 128, 131, 129, 32.64314 + 125, 124, 126, 131, 134, 132, 129, 134, 134, 134, 135, 137, 139, 144, 145, 141, 32.64315 + 141, 143, 143, 144, 144, 144, 147, 151, 151, 153, 155, 158, 160, 161, 163, 164, 32.64316 + 163, 162, 159, 159, 159, 160, 158, 156, 154, 153, 151, 149, 148, 149, 148, 148, 32.64317 + 146, 145, 143, 141, 138, 137, 134, 137, 142, 146, 146, 146, 152, 155, 154, 154, 32.64318 + 155, 145, 152, 159, 168, 191, 197, 199, 255, 255, 255, 255, 255, 255, 255, 255, 32.64319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64321 + 255, 110, 107, 109, 112, 113, 120, 117, 119, 122, 129, 130, 132, 134, 134, 132, 32.64322 + 128, 123, 121, 120, 119, 120, 123, 123, 122, 121, 124, 126, 128, 129, 130, 128, 32.64323 + 127, 127, 130, 132, 133, 132, 136, 135, 136, 137, 138, 139, 143, 144, 141, 143, 32.64324 + 145, 145, 145, 145, 148, 150, 151, 153, 154, 155, 159, 160, 163, 163, 165, 165, 32.64325 + 164, 163, 163, 161, 162, 161, 158, 158, 157, 153, 153, 152, 151, 150, 148, 149, 32.64326 + 150, 150, 151, 151, 150, 148, 145, 147, 152, 153, 153, 154, 154, 153, 155, 156, 32.64327 + 151, 174, 197, 215, 242, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64330 + 207, 110, 112, 111, 111, 119, 115, 117, 124, 130, 129, 131, 135, 133, 131, 127, 32.64331 + 123, 123, 122, 122, 123, 125, 126, 127, 128, 128, 127, 127, 126, 129, 130, 133, 32.64332 + 131, 130, 130, 134, 137, 139, 139, 140, 140, 140, 140, 141, 141, 141, 143, 147, 32.64333 + 148, 146, 146, 149, 151, 153, 154, 155, 156, 160, 160, 163, 164, 165, 165, 167, 32.64334 + 167, 167, 164, 162, 161, 161, 161, 161, 159, 158, 158, 157, 154, 154, 154, 156, 32.64335 + 156, 157, 158, 158, 157, 154, 151, 152, 154, 158, 158, 154, 152, 154, 162, 172, 32.64336 + 209, 239, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64339 + 111, 114, 112, 109, 119, 114, 116, 126, 132, 129, 131, 136, 133, 131, 128, 126, 32.64340 + 124, 124, 123, 125, 124, 126, 129, 131, 131, 128, 127, 124, 128, 132, 136, 134, 32.64341 + 131, 130, 134, 138, 139, 139, 141, 140, 139, 138, 139, 138, 138, 141, 146, 146, 32.64342 + 144, 144, 147, 151, 154, 155, 156, 158, 160, 162, 164, 164, 164, 166, 167, 168, 32.64343 + 168, 166, 164, 160, 164, 165, 165, 163, 165, 162, 161, 159, 161, 161, 161, 159, 32.64344 + 158, 156, 155, 154, 159, 153, 150, 154, 158, 158, 157, 156, 158, 174, 197, 242, 32.64345 + 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 32.64348 + 112, 112, 108, 120, 114, 117, 128, 134, 130, 131, 137, 135, 133, 129, 127, 124, 32.64349 + 123, 122, 124, 124, 125, 127, 129, 131, 131, 130, 129, 133, 134, 135, 135, 135, 32.64350 + 134, 134, 134, 137, 139, 139, 139, 139, 138, 139, 138, 140, 144, 148, 148, 146, 32.64351 + 146, 149, 154, 155, 155, 156, 159, 160, 162, 164, 165, 165, 165, 165, 164, 164, 32.64352 + 163, 163, 163, 166, 166, 167, 167, 167, 165, 164, 161, 162, 162, 162, 160, 158, 32.64353 + 156, 155, 151, 157, 151, 149, 153, 154, 154, 160, 167, 169, 185, 206, 251, 255, 32.64354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 32.64357 + 109, 105, 121, 114, 117, 129, 134, 131, 132, 138, 137, 135, 131, 126, 124, 122, 32.64358 + 121, 122, 124, 125, 126, 128, 129, 131, 133, 134, 133, 131, 132, 134, 138, 138, 32.64359 + 134, 130, 134, 136, 137, 138, 139, 139, 140, 139, 143, 147, 151, 151, 149, 148, 32.64360 + 153, 157, 156, 156, 159, 160, 162, 162, 164, 164, 166, 163, 162, 159, 159, 161, 32.64361 + 162, 164, 165, 166, 167, 168, 168, 166, 164, 163, 160, 160, 160, 160, 159, 158, 32.64362 + 157, 156, 153, 151, 152, 152, 150, 150, 162, 175, 179, 189, 205, 245, 255, 255, 32.64363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 104, 32.64366 + 100, 121, 119, 120, 124, 128, 131, 134, 135, 131, 137, 135, 124, 115, 117, 125, 32.64367 + 131, 127, 128, 131, 130, 131, 131, 131, 131, 132, 131, 132, 131, 131, 131, 131, 32.64368 + 131, 138, 138, 137, 137, 140, 141, 141, 140, 146, 147, 149, 149, 149, 151, 155, 32.64369 + 159, 160, 158, 156, 159, 163, 165, 164, 163, 158, 160, 165, 164, 161, 160, 162, 32.64370 + 165, 161, 161, 161, 164, 167, 166, 165, 163, 161, 163, 164, 161, 157, 156, 159, 32.64371 + 162, 152, 162, 161, 155, 154, 154, 165, 182, 183, 228, 231, 255, 255, 255, 255, 32.64372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 107, 32.64375 + 114, 115, 119, 125, 130, 134, 135, 136, 134, 135, 129, 118, 113, 114, 118, 119, 32.64376 + 125, 129, 130, 131, 130, 131, 131, 131, 132, 131, 131, 131, 131, 129, 131, 132, 32.64377 + 140, 140, 138, 139, 142, 143, 143, 142, 145, 147, 149, 149, 149, 150, 152, 155, 32.64378 + 162, 162, 161, 163, 166, 168, 166, 164, 164, 166, 168, 168, 167, 167, 168, 168, 32.64379 + 168, 168, 170, 171, 170, 170, 169, 168, 165, 164, 161, 160, 159, 158, 156, 156, 32.64380 + 158, 162, 159, 155, 156, 154, 160, 179, 214, 244, 241, 255, 255, 255, 255, 255, 32.64381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 133, 111, 107, 32.64384 + 110, 117, 124, 130, 135, 137, 137, 141, 139, 131, 119, 115, 116, 116, 113, 123, 32.64385 + 125, 127, 129, 130, 131, 131, 131, 133, 133, 133, 133, 133, 132, 133, 135, 141, 32.64386 + 141, 140, 141, 144, 145, 145, 144, 147, 149, 152, 152, 151, 151, 152, 154, 159, 32.64387 + 160, 161, 163, 165, 166, 164, 162, 164, 164, 164, 165, 166, 166, 165, 164, 168, 32.64388 + 170, 170, 170, 167, 165, 164, 164, 166, 162, 159, 160, 162, 161, 155, 150, 159, 32.64389 + 158, 154, 156, 160, 157, 165, 188, 229, 244, 255, 255, 255, 255, 255, 255, 255, 32.64390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 102, 101, 108, 32.64393 + 116, 121, 128, 134, 138, 138, 142, 142, 135, 125, 117, 117, 116, 115, 120, 123, 32.64394 + 125, 129, 131, 132, 133, 133, 134, 134, 134, 136, 137, 137, 137, 138, 141, 142, 32.64395 + 140, 141, 144, 146, 146, 145, 151, 154, 157, 157, 156, 154, 154, 155, 155, 157, 32.64396 + 160, 162, 164, 162, 161, 159, 166, 162, 162, 162, 166, 166, 164, 160, 166, 166, 32.64397 + 165, 161, 155, 151, 150, 151, 159, 156, 158, 158, 162, 160, 158, 154, 157, 155, 32.64398 + 151, 156, 161, 161, 178, 209, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 98, 108, 114, 32.64402 + 116, 121, 130, 137, 137, 134, 138, 135, 124, 112, 111, 115, 115, 118, 120, 123, 32.64403 + 128, 131, 133, 135, 136, 136, 136, 137, 138, 139, 139, 140, 141, 143, 141, 140, 32.64404 + 141, 144, 146, 147, 146, 153, 155, 158, 158, 156, 155, 154, 154, 153, 155, 160, 32.64405 + 160, 163, 160, 161, 158, 169, 164, 164, 163, 167, 166, 164, 161, 164, 163, 158, 32.64406 + 151, 145, 142, 141, 142, 146, 150, 156, 158, 159, 158, 160, 162, 154, 156, 153, 32.64407 + 154, 158, 164, 186, 222, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 104, 112, 112, 32.64411 + 118, 128, 135, 135, 132, 138, 137, 125, 114, 110, 115, 118, 115, 117, 121, 125, 32.64412 + 130, 133, 136, 136, 137, 137, 139, 140, 141, 142, 144, 145, 143, 141, 140, 141, 32.64413 + 145, 147, 148, 147, 151, 153, 155, 155, 153, 152, 153, 154, 156, 159, 162, 163, 32.64414 + 162, 161, 162, 162, 164, 163, 162, 162, 162, 161, 159, 159, 159, 153, 144, 137, 32.64415 + 134, 135, 136, 136, 140, 146, 152, 155, 154, 155, 159, 164, 154, 159, 155, 152, 32.64416 + 158, 169, 192, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 111, 114, 120, 32.64420 + 130, 134, 131, 135, 139, 136, 124, 116, 114, 116, 113, 111, 112, 117, 121, 126, 32.64421 + 131, 134, 135, 137, 139, 140, 141, 144, 145, 147, 146, 144, 143, 142, 143, 147, 32.64422 + 149, 150, 149, 151, 152, 154, 153, 152, 152, 154, 156, 156, 159, 161, 161, 159, 32.64423 + 159, 161, 164, 160, 161, 162, 160, 158, 155, 155, 156, 153, 144, 133, 128, 131, 32.64424 + 137, 140, 140, 145, 146, 148, 150, 151, 153, 154, 156, 152, 162, 157, 154, 168, 32.64425 + 188, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64426 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 111, 116, 122, 132, 32.64429 + 134, 129, 135, 134, 128, 118, 113, 111, 110, 103, 109, 109, 114, 118, 124, 129, 32.64430 + 132, 136, 139, 139, 141, 144, 146, 147, 147, 148, 146, 144, 143, 145, 149, 151, 32.64431 + 152, 151, 153, 154, 155, 154, 153, 154, 156, 159, 155, 157, 159, 158, 156, 156, 32.64432 + 160, 163, 163, 166, 167, 165, 161, 157, 158, 161, 157, 146, 132, 129, 137, 147, 32.64433 + 152, 152, 152, 148, 145, 146, 149, 151, 150, 149, 151, 163, 158, 156, 181, 204, 32.64434 + 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 112, 124, 124, 125, 32.64438 + 132, 123, 124, 126, 124, 119, 114, 113, 111, 109, 111, 115, 118, 123, 126, 130, 32.64439 + 134, 133, 133, 134, 138, 143, 145, 147, 145, 145, 145, 146, 147, 148, 149, 150, 32.64440 + 150, 150, 149, 149, 149, 152, 156, 161, 163, 156, 160, 163, 161, 156, 156, 161, 32.64441 + 166, 161, 159, 159, 161, 159, 156, 154, 156, 154, 145, 140, 146, 149, 148, 148, 32.64442 + 150, 163, 152, 148, 152, 154, 148, 148, 153, 154, 165, 168, 164, 167, 221, 252, 32.64443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64446 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 111, 119, 123, 126, 32.64447 + 132, 131, 129, 123, 117, 115, 115, 113, 109, 109, 112, 117, 120, 125, 130, 133, 32.64448 + 135, 135, 138, 139, 142, 143, 145, 143, 145, 146, 146, 147, 148, 149, 149, 149, 32.64449 + 150, 150, 150, 151, 153, 156, 159, 161, 148, 151, 155, 158, 160, 160, 160, 161, 32.64450 + 156, 157, 156, 154, 153, 153, 152, 151, 149, 142, 138, 140, 143, 141, 144, 151, 32.64451 + 162, 153, 146, 148, 153, 155, 155, 155, 159, 161, 158, 163, 188, 249, 255, 255, 32.64452 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 96, 115, 123, 123, 135, 32.64456 + 132, 127, 120, 116, 114, 116, 117, 107, 107, 109, 114, 118, 123, 128, 130, 136, 32.64457 + 137, 139, 139, 140, 140, 141, 142, 146, 146, 146, 146, 148, 148, 148, 148, 150, 32.64458 + 151, 152, 154, 155, 156, 157, 158, 162, 159, 156, 156, 159, 161, 160, 159, 156, 32.64459 + 161, 160, 153, 152, 156, 156, 150, 152, 150, 149, 149, 149, 149, 155, 163, 162, 32.64460 + 157, 150, 145, 150, 157, 159, 155, 157, 158, 156, 168, 203, 255, 255, 255, 255, 32.64461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 110, 124, 126, 127, 125, 32.64465 + 123, 120, 116, 115, 118, 118, 108, 106, 107, 111, 118, 124, 127, 130, 135, 136, 32.64466 + 139, 139, 139, 139, 141, 142, 146, 146, 146, 146, 147, 147, 147, 147, 151, 152, 32.64467 + 154, 156, 157, 156, 156, 155, 169, 162, 154, 145, 147, 150, 159, 162, 158, 162, 32.64468 + 163, 153, 153, 157, 158, 148, 144, 145, 145, 144, 141, 142, 149, 157, 157, 163, 32.64469 + 159, 150, 149, 157, 159, 153, 156, 160, 168, 178, 212, 255, 255, 255, 255, 255, 32.64470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102, 119, 127, 122, 123, 124, 32.64474 + 124, 121, 119, 119, 116, 112, 108, 108, 112, 119, 125, 128, 129, 131, 133, 136, 32.64475 + 137, 137, 137, 140, 145, 145, 145, 145, 146, 147, 147, 147, 148, 151, 152, 155, 32.64476 + 157, 158, 157, 155, 155, 154, 151, 146, 137, 133, 135, 146, 154, 155, 160, 162, 32.64477 + 154, 154, 157, 155, 145, 145, 145, 146, 145, 142, 142, 143, 145, 147, 160, 164, 32.64478 + 157, 151, 155, 159, 156, 159, 160, 171, 183, 224, 255, 255, 255, 255, 255, 255, 32.64479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 118, 124, 127, 132, 132, 32.64483 + 129, 123, 119, 116, 116, 110, 109, 111, 118, 124, 127, 127, 129, 132, 136, 137, 32.64484 + 136, 137, 140, 144, 143, 143, 144, 145, 147, 148, 148, 149, 151, 153, 155, 157, 32.64485 + 158, 157, 156, 157, 150, 154, 154, 146, 134, 126, 126, 128, 152, 154, 158, 160, 32.64486 + 160, 159, 156, 153, 148, 148, 149, 150, 153, 255, 148, 140, 138, 152, 160, 160, 32.64487 + 157, 157, 163, 163, 160, 150, 164, 183, 236, 255, 255, 255, 255, 255, 255, 255, 32.64488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 123, 126, 132, 133, 131, 32.64492 + 127, 123, 120, 119, 111, 110, 111, 118, 124, 125, 125, 129, 133, 137, 136, 134, 32.64493 + 134, 137, 142, 139, 142, 143, 144, 147, 148, 149, 150, 152, 152, 155, 156, 157, 32.64494 + 158, 158, 159, 162, 165, 165, 158, 146, 134, 125, 121, 142, 140, 148, 161, 164, 32.64495 + 157, 155, 156, 145, 144, 147, 255, 255, 255, 255, 221, 142, 144, 151, 157, 160, 32.64496 + 159, 163, 166, 159, 150, 173, 193, 245, 255, 255, 255, 255, 255, 255, 255, 255, 32.64497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 118, 122, 127, 130, 130, 128, 32.64501 + 127, 125, 118, 111, 107, 109, 116, 122, 123, 122, 131, 135, 138, 137, 133, 132, 32.64502 + 134, 139, 137, 139, 140, 144, 146, 149, 150, 153, 152, 152, 154, 155, 157, 157, 32.64503 + 158, 159, 161, 159, 156, 155, 152, 148, 141, 136, 128, 122, 132, 152, 157, 145, 32.64504 + 143, 148, 161, 161, 198, 255, 255, 255, 255, 255, 219, 137, 137, 149, 157, 155, 32.64505 + 155, 159, 155, 158, 196, 213, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 122, 127, 134, 134, 127, 132, 32.64510 + 119, 123, 113, 108, 110, 111, 111, 117, 125, 133, 131, 129, 132, 135, 137, 137, 32.64511 + 134, 136, 138, 137, 135, 140, 148, 155, 155, 155, 154, 151, 149, 156, 162, 159, 32.64512 + 151, 158, 157, 158, 160, 162, 159, 153, 146, 144, 136, 131, 134, 142, 149, 149, 32.64513 + 143, 149, 191, 255, 255, 255, 255, 255, 255, 255, 255, 148, 140, 142, 145, 151, 32.64514 + 152, 152, 151, 209, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64518 + 255, 255, 255, 255, 255, 255, 255, 255, 199, 108, 116, 128, 130, 126, 133, 123, 32.64519 + 120, 115, 114, 114, 112, 112, 118, 126, 131, 131, 132, 134, 138, 138, 136, 132, 32.64520 + 132, 134, 137, 136, 140, 150, 156, 156, 154, 154, 152, 151, 155, 160, 158, 151, 32.64521 + 153, 154, 155, 160, 163, 162, 158, 154, 161, 152, 143, 138, 140, 147, 153, 154, 32.64522 + 186, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 163, 163, 163, 163, 32.64523 + 197, 185, 213, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64527 + 255, 255, 255, 255, 255, 255, 255, 255, 203, 107, 124, 132, 130, 138, 127, 119, 32.64528 + 116, 119, 119, 115, 113, 115, 121, 128, 129, 133, 135, 139, 138, 134, 130, 130, 32.64529 + 133, 138, 139, 143, 152, 156, 156, 153, 156, 156, 154, 155, 158, 158, 154, 155, 32.64530 + 154, 157, 161, 162, 161, 156, 151, 143, 140, 138, 144, 155, 176, 198, 211, 204, 32.64531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 191, 192, 191, 214, 32.64532 + 198, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64536 + 255, 255, 255, 255, 255, 255, 255, 255, 202, 117, 132, 132, 136, 124, 128, 125, 32.64537 + 126, 126, 125, 122, 119, 118, 129, 131, 133, 135, 138, 136, 134, 131, 130, 135, 32.64538 + 140, 141, 145, 152, 155, 153, 152, 156, 158, 157, 155, 155, 156, 157, 154, 155, 32.64539 + 160, 163, 165, 165, 162, 161, 147, 146, 146, 153, 168, 188, 206, 216, 255, 255, 32.64540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64545 + 255, 255, 255, 255, 255, 255, 255, 255, 105, 125, 129, 132, 118, 136, 133, 130, 32.64546 + 130, 135, 135, 128, 120, 131, 133, 134, 135, 133, 133, 134, 134, 131, 136, 141, 32.64547 + 142, 144, 151, 153, 150, 152, 157, 161, 161, 158, 153, 155, 157, 148, 150, 155, 32.64548 + 161, 164, 166, 168, 168, 148, 146, 147, 160, 177, 191, 197, 196, 255, 255, 255, 32.64549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64554 + 255, 255, 255, 255, 255, 255, 255, 255, 118, 126, 135, 127, 134, 132, 129, 129, 32.64555 + 135, 139, 134, 126, 135, 135, 136, 134, 134, 133, 134, 136, 131, 136, 140, 141, 32.64556 + 145, 150, 152, 150, 153, 156, 160, 162, 159, 154, 154, 155, 150, 148, 149, 148, 32.64557 + 149, 149, 153, 155, 145, 144, 154, 171, 194, 205, 206, 255, 255, 255, 255, 255, 32.64558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64563 + 255, 255, 255, 255, 255, 255, 255, 255, 115, 134, 138, 129, 135, 137, 135, 138, 32.64564 + 147, 151, 148, 133, 136, 139, 138, 136, 135, 135, 135, 129, 133, 136, 138, 144, 32.64565 + 150, 154, 153, 155, 154, 158, 162, 161, 155, 154, 153, 150, 147, 147, 147, 146, 32.64566 + 150, 155, 159, 181, 180, 185, 192, 199, 218, 255, 255, 255, 255, 255, 255, 255, 32.64567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 140, 135, 147, 153, 151, 151, 162, 32.64573 + 173, 179, 134, 138, 142, 144, 141, 137, 136, 136, 126, 131, 134, 138, 144, 151, 32.64574 + 157, 157, 156, 153, 154, 162, 161, 156, 153, 152, 144, 142, 146, 152, 159, 171, 32.64575 + 185, 194, 199, 199, 199, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64581 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 162, 164, 32.64582 + 163, 161, 151, 140, 136, 140, 145, 142, 133, 136, 135, 138, 143, 147, 150, 151, 32.64583 + 155, 154, 153, 153, 157, 161, 165, 162, 155, 144, 149, 154, 165, 182, 187, 191, 32.64584 + 202, 197, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64587 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 32.64591 + 155, 155, 151, 145, 139, 139, 144, 147, 136, 142, 145, 141, 142, 150, 154, 154, 32.64592 + 155, 154, 155, 158, 164, 170, 175, 173, 159, 179, 190, 186, 189, 193, 191, 255, 32.64593 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64599 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 32.64600 + 156, 159, 155, 148, 143, 145, 146, 141, 149, 153, 148, 144, 149, 150, 143, 152, 32.64601 + 152, 153, 155, 160, 169, 179, 183, 174, 206, 215, 198, 192, 194, 255, 255, 255, 32.64602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 32.64609 + 155, 159, 161, 155, 148, 141, 145, 144, 149, 154, 156, 151, 146, 144, 150, 151, 32.64610 + 152, 152, 156, 164, 177, 182, 182, 205, 209, 192, 186, 211, 255, 255, 255, 255, 32.64611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64612 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64618 + 223, 163, 162, 163, 164, 163, 144, 137, 151, 159, 150, 147, 155, 145, 147, 149, 32.64619 + 151, 155, 162, 173, 178, 182, 192, 193, 187, 189, 255, 255, 255, 255, 255, 255, 32.64620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64627 + 255, 222, 177, 197, 202, 171, 153, 153, 153, 143, 143, 151, 140, 140, 143, 146, 32.64628 + 153, 161, 170, 175, 184, 188, 189, 192, 216, 255, 255, 255, 255, 255, 255, 255, 32.64629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64631 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64636 + 255, 255, 255, 243, 206, 191, 173, 159, 152, 151, 149, 151, 147, 147, 151, 158, 32.64637 + 166, 174, 177, 184, 196, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64645 + 255, 255, 255, 255, 255, 255, 255, 255, 170, 156, 171, 165, 160, 161, 167, 175, 32.64646 + 182, 183, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 32.64656 + 188, 203, 224, 246, 251, 243, 237, 244, 255, 253, 255, 255, 255, 255, 255, 255, 32.64657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64662 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 163, 169, 180, 190, 188, 180, 32.64665 + 152, 168, 186, 195, 196, 197, 201, 206, 223, 236, 252, 255, 254, 255, 255, 255, 32.64666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64673 + 255, 255, 255, 255, 255, 212, 128, 113, 120, 126, 135, 151, 172, 189, 196, 177, 32.64674 + 163, 150, 154, 170, 184, 186, 182, 187, 197, 215, 232, 240, 242, 250, 255, 253, 32.64675 + 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64676 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64681 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64682 + 255, 255, 211, 116, 116, 120, 120, 126, 130, 128, 132, 148, 166, 177, 197, 197, 32.64683 + 195, 191, 187, 187, 191, 195, 165, 164, 178, 203, 221, 222, 216, 212, 205, 211, 32.64684 + 224, 238, 250, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64689 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64691 + 255, 104, 99, 99, 100, 100, 110, 115, 115, 116, 129, 145, 154, 149, 173, 198, 32.64692 + 201, 185, 169, 168, 174, 169, 161, 161, 169, 169, 160, 153, 155, 150, 145, 147, 32.64693 + 160, 185, 212, 233, 242, 244, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64694 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 75, 32.64700 + 72, 80, 87, 85, 86, 96, 102, 103, 103, 111, 120, 124, 121, 129, 146, 161, 32.64701 + 171, 168, 154, 143, 140, 130, 124, 118, 113, 124, 163, 201, 215, 181, 139, 113, 32.64702 + 115, 138, 166, 182, 193, 203, 219, 235, 250, 255, 255, 255, 255, 255, 255, 255, 32.64703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64707 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64708 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 83, 79, 78, 77, 76, 76, 32.64709 + 76, 77, 78, 84, 87, 91, 96, 99, 99, 97, 95, 102, 106, 102, 94, 97, 32.64710 + 114, 127, 129, 126, 128, 138, 142, 132, 124, 136, 156, 168, 198, 158, 154, 180, 32.64711 + 160, 151, 159, 175, 211, 219, 218, 225, 245, 255, 248, 255, 255, 255, 255, 255, 32.64712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64717 + 255, 255, 255, 255, 255, 255, 196, 75, 73, 72, 73, 73, 73, 73, 74, 76, 32.64718 + 78, 80, 80, 85, 90, 91, 88, 85, 85, 87, 79, 84, 84, 85, 88, 100, 32.64719 + 108, 112, 126, 111, 105, 121, 137, 141, 137, 137, 144, 171, 193, 185, 179, 188, 32.64720 + 191, 194, 210, 244, 250, 248, 241, 242, 253, 238, 250, 252, 255, 255, 255, 255, 32.64721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64725 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64726 + 255, 255, 215, 114, 74, 73, 72, 70, 68, 68, 68, 68, 69, 71, 74, 77, 32.64727 + 79, 78, 83, 87, 84, 76, 72, 74, 78, 76, 77, 83, 91, 95, 96, 100, 32.64728 + 105, 108, 104, 105, 113, 119, 124, 138, 152, 120, 109, 166, 172, 147, 170, 182, 32.64729 + 190, 216, 242, 247, 251, 245, 242, 255, 254, 255, 253, 250, 255, 255, 255, 255, 32.64730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64735 + 194, 73, 74, 74, 73, 72, 70, 69, 66, 66, 66, 67, 69, 72, 75, 77, 32.64736 + 76, 78, 79, 76, 72, 70, 72, 74, 84, 82, 87, 99, 99, 94, 93, 102, 32.64737 + 91, 101, 108, 104, 90, 95, 126, 161, 169, 115, 138, 169, 159, 163, 177, 195, 32.64738 + 184, 203, 216, 243, 251, 246, 253, 247, 254, 253, 253, 255, 255, 255, 255, 255, 32.64739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 64, 68, 32.64744 + 68, 68, 67, 67, 66, 65, 65, 67, 66, 65, 65, 66, 68, 70, 71, 71, 32.64745 + 68, 66, 67, 70, 73, 72, 71, 77, 74, 78, 87, 88, 82, 83, 90, 91, 32.64746 + 89, 87, 85, 83, 90, 107, 123, 161, 122, 93, 125, 140, 125, 139, 150, 154, 32.64747 + 170, 190, 237, 255, 253, 245, 226, 238, 245, 251, 255, 252, 252, 255, 255, 255, 32.64748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64752 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 65, 64, 68, 75, 64, 64, 32.64753 + 64, 64, 64, 64, 64, 64, 67, 66, 65, 64, 63, 64, 66, 66, 65, 60, 32.64754 + 57, 60, 68, 72, 70, 66, 69, 70, 72, 78, 78, 78, 80, 87, 85, 84, 32.64755 + 83, 86, 88, 90, 90, 90, 119, 133, 95, 101, 122, 113, 124, 122, 133, 143, 32.64756 + 154, 198, 233, 243, 254, 249, 226, 237, 248, 255, 253, 250, 252, 254, 255, 255, 32.64757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64761 + 255, 255, 255, 255, 255, 255, 61, 71, 81, 71, 58, 56, 57, 63, 63, 63, 32.64762 + 63, 64, 65, 66, 66, 65, 64, 63, 61, 61, 62, 64, 64, 64, 61, 60, 32.64763 + 62, 66, 68, 67, 64, 67, 72, 73, 73, 72, 77, 79, 80, 76, 85, 91, 32.64764 + 89, 82, 79, 81, 85, 85, 105, 97, 88, 98, 105, 104, 101, 110, 118, 118, 32.64765 + 141, 164, 187, 225, 240, 221, 229, 239, 248, 251, 252, 254, 255, 255, 244, 255, 32.64766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64770 + 255, 255, 255, 194, 71, 56, 59, 68, 63, 58, 62, 63, 57, 57, 58, 58, 32.64771 + 59, 61, 63, 63, 61, 61, 60, 59, 59, 61, 62, 63, 65, 66, 67, 67, 32.64772 + 65, 64, 64, 64, 60, 69, 71, 65, 63, 69, 69, 64, 80, 81, 80, 75, 32.64773 + 73, 75, 79, 82, 91, 77, 98, 90, 89, 106, 93, 98, 91, 109, 110, 116, 32.64774 + 113, 119, 154, 170, 216, 218, 226, 235, 244, 249, 250, 249, 253, 243, 255, 255, 32.64775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64779 + 194, 64, 66, 68, 65, 59, 55, 54, 57, 60, 63, 62, 60, 58, 58, 59, 32.64780 + 60, 59, 58, 57, 58, 59, 60, 62, 63, 65, 65, 62, 62, 63, 63, 63, 32.64781 + 62, 62, 61, 59, 61, 63, 63, 63, 63, 65, 67, 65, 67, 69, 70, 71, 32.64782 + 75, 79, 82, 81, 88, 90, 87, 87, 92, 92, 89, 90, 93, 96, 98, 98, 32.64783 + 99, 100, 101, 147, 191, 208, 208, 228, 245, 246, 249, 253, 255, 238, 243, 255, 32.64784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 67, 32.64788 + 62, 64, 62, 60, 58, 55, 55, 55, 57, 58, 62, 60, 58, 57, 58, 59, 32.64789 + 58, 57, 58, 58, 59, 60, 61, 62, 63, 64, 62, 61, 61, 61, 61, 61, 32.64790 + 61, 61, 62, 63, 65, 65, 65, 65, 67, 68, 65, 67, 67, 66, 65, 65, 32.64791 + 67, 69, 77, 82, 82, 79, 77, 83, 85, 85, 88, 92, 96, 100, 100, 100, 32.64792 + 101, 102, 130, 154, 182, 207, 227, 233, 234, 241, 236, 251, 249, 246, 251, 255, 32.64793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 68, 63, 58, 32.64797 + 58, 59, 58, 58, 57, 56, 56, 55, 55, 61, 59, 57, 56, 58, 58, 58, 32.64798 + 56, 59, 59, 59, 60, 60, 60, 61, 61, 61, 60, 59, 58, 58, 59, 61, 32.64799 + 61, 62, 65, 67, 67, 66, 66, 68, 69, 71, 72, 73, 72, 69, 67, 67, 32.64800 + 67, 72, 74, 72, 69, 68, 74, 79, 80, 83, 87, 93, 96, 98, 100, 102, 32.64801 + 103, 124, 125, 154, 196, 219, 228, 237, 242, 251, 241, 240, 240, 246, 244, 255, 32.64802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 67, 63, 61, 58, 53, 32.64806 + 59, 59, 58, 57, 57, 57, 57, 57, 60, 58, 55, 55, 56, 57, 56, 55, 32.64807 + 59, 59, 59, 59, 59, 58, 58, 58, 60, 59, 57, 56, 56, 58, 60, 63, 32.64808 + 61, 62, 64, 64, 63, 63, 64, 66, 69, 72, 74, 75, 74, 72, 72, 71, 32.64809 + 68, 70, 69, 68, 67, 71, 75, 78, 82, 85, 88, 92, 96, 101, 107, 111, 32.64810 + 124, 111, 123, 145, 164, 192, 206, 191, 245, 241, 251, 244, 254, 254, 232, 255, 32.64811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64814 + 255, 255, 255, 255, 255, 255, 255, 255, 194, 65, 59, 58, 62, 60, 52, 59, 32.64815 + 58, 56, 54, 54, 55, 57, 58, 58, 56, 54, 54, 55, 56, 55, 54, 58, 32.64816 + 58, 58, 58, 57, 57, 57, 57, 59, 57, 56, 55, 55, 57, 60, 62, 61, 32.64817 + 63, 64, 64, 63, 62, 64, 65, 64, 66, 70, 71, 70, 69, 70, 70, 66, 32.64818 + 68, 71, 73, 73, 73, 75, 77, 86, 86, 87, 90, 94, 103, 113, 119, 135, 32.64819 + 131, 126, 118, 133, 181, 193, 154, 151, 193, 231, 220, 232, 253, 236, 252, 255, 32.64820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64823 + 255, 255, 255, 255, 255, 255, 191, 61, 55, 53, 56, 61, 59, 55, 57, 55, 32.64824 + 52, 50, 50, 52, 54, 56, 57, 55, 53, 53, 54, 55, 54, 53, 57, 57, 32.64825 + 56, 56, 56, 56, 56, 56, 57, 56, 56, 55, 56, 58, 60, 62, 63, 65, 32.64826 + 66, 66, 64, 64, 65, 66, 65, 67, 68, 68, 67, 65, 66, 66, 67, 67, 32.64827 + 70, 75, 76, 73, 74, 78, 80, 80, 78, 79, 82, 90, 101, 108, 122, 137, 32.64828 + 139, 131, 156, 212, 228, 201, 111, 127, 159, 176, 181, 184, 202, 247, 254, 255, 32.64829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64832 + 255, 255, 255, 255, 198, 64, 58, 54, 56, 56, 56, 55, 57, 53, 53, 53, 32.64833 + 52, 52, 53, 54, 54, 57, 55, 53, 53, 54, 55, 54, 53, 56, 56, 56, 32.64834 + 56, 56, 57, 57, 57, 57, 57, 57, 58, 59, 60, 61, 61, 62, 65, 66, 32.64835 + 65, 64, 63, 64, 65, 69, 70, 70, 69, 67, 66, 67, 69, 68, 66, 68, 32.64836 + 73, 73, 71, 74, 80, 75, 75, 74, 74, 75, 79, 84, 88, 85, 102, 111, 32.64837 + 120, 147, 180, 205, 219, 184, 152, 138, 162, 161, 151, 182, 216, 227, 252, 255, 32.64838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64841 + 255, 194, 97, 52, 68, 62, 60, 62, 58, 51, 50, 57, 52, 54, 56, 57, 32.64842 + 57, 56, 54, 53, 57, 55, 53, 52, 54, 54, 54, 52, 55, 55, 55, 56, 32.64843 + 56, 57, 57, 57, 56, 57, 58, 59, 60, 61, 61, 61, 60, 62, 62, 63, 32.64844 + 60, 60, 60, 63, 65, 67, 66, 66, 64, 65, 67, 70, 67, 64, 63, 67, 32.64845 + 68, 66, 71, 80, 78, 79, 79, 78, 77, 77, 78, 80, 85, 90, 90, 102, 32.64846 + 112, 109, 133, 185, 236, 216, 169, 156, 159, 179, 189, 134, 172, 245, 255, 255, 32.64847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 32.64850 + 68, 69, 70, 59, 58, 56, 54, 53, 52, 51, 51, 55, 54, 54, 53, 53, 32.64851 + 54, 54, 55, 54, 54, 53, 53, 53, 53, 53, 53, 57, 57, 56, 56, 56, 32.64852 + 56, 56, 56, 60, 60, 59, 58, 58, 57, 56, 57, 61, 63, 63, 63, 61, 32.64853 + 62, 63, 66, 64, 63, 60, 60, 59, 62, 64, 65, 67, 69, 69, 65, 66, 32.64854 + 70, 71, 68, 74, 76, 78, 79, 80, 81, 84, 86, 101, 88, 93, 109, 116, 32.64855 + 122, 128, 126, 195, 226, 240, 218, 159, 168, 213, 171, 154, 208, 245, 255, 255, 32.64856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 73, 82, 32.64859 + 65, 62, 59, 58, 56, 55, 53, 53, 52, 52, 52, 52, 53, 53, 53, 53, 32.64860 + 52, 52, 51, 51, 51, 52, 53, 53, 54, 54, 53, 53, 53, 53, 53, 53, 32.64861 + 53, 53, 55, 56, 56, 57, 58, 58, 59, 59, 59, 60, 61, 60, 59, 59, 32.64862 + 61, 64, 69, 68, 65, 62, 60, 59, 59, 59, 68, 70, 70, 67, 68, 72, 32.64863 + 73, 71, 73, 76, 79, 82, 83, 85, 87, 89, 87, 100, 107, 100, 106, 141, 32.64864 + 158, 145, 148, 183, 234, 250, 225, 194, 183, 196, 187, 240, 251, 234, 255, 255, 32.64865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 66, 79, 56, 32.64868 + 54, 59, 58, 57, 56, 54, 53, 53, 53, 49, 50, 52, 52, 52, 52, 50, 32.64869 + 49, 48, 49, 49, 51, 52, 53, 54, 54, 55, 55, 55, 55, 55, 55, 55, 32.64870 + 55, 55, 55, 56, 56, 57, 58, 58, 59, 58, 59, 59, 59, 58, 58, 60, 32.64871 + 62, 62, 62, 63, 63, 64, 65, 65, 66, 67, 70, 70, 67, 68, 72, 74, 32.64872 + 72, 73, 76, 81, 84, 86, 87, 89, 91, 98, 95, 101, 104, 102, 119, 142, 32.64873 + 153, 144, 171, 218, 242, 254, 231, 165, 194, 232, 250, 248, 244, 254, 255, 255, 32.64874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 72, 56, 56, 53, 56, 32.64877 + 57, 56, 55, 54, 52, 52, 52, 52, 48, 50, 52, 53, 53, 52, 50, 48, 32.64878 + 49, 49, 49, 50, 50, 51, 51, 52, 55, 55, 56, 56, 56, 56, 57, 57, 32.64879 + 60, 59, 59, 58, 57, 57, 56, 56, 57, 58, 59, 58, 57, 58, 60, 62, 32.64880 + 57, 59, 62, 65, 67, 69, 70, 71, 65, 68, 68, 65, 66, 71, 72, 70, 32.64881 + 74, 77, 82, 84, 85, 86, 87, 88, 104, 91, 94, 106, 102, 105, 123, 137, 32.64882 + 141, 165, 170, 174, 233, 254, 219, 212, 242, 246, 249, 253, 249, 246, 255, 255, 32.64883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64885 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 69, 65, 55, 44, 64, 61, 54, 32.64886 + 54, 52, 51, 51, 50, 51, 51, 49, 50, 52, 54, 54, 52, 50, 49, 51, 32.64887 + 51, 51, 50, 49, 49, 48, 48, 51, 51, 51, 52, 52, 53, 53, 53, 61, 32.64888 + 60, 60, 59, 58, 58, 57, 57, 58, 59, 60, 59, 58, 58, 60, 62, 63, 32.64889 + 64, 65, 66, 67, 67, 66, 66, 66, 69, 69, 67, 67, 72, 73, 71, 75, 32.64890 + 77, 80, 81, 81, 80, 81, 82, 82, 93, 101, 98, 104, 131, 142, 125, 136, 32.64891 + 168, 151, 136, 164, 224, 255, 231, 233, 249, 255, 247, 240, 250, 255, 255, 255, 32.64892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64894 + 255, 255, 255, 255, 255, 255, 197, 60, 73, 61, 64, 53, 70, 53, 52, 51, 32.64895 + 50, 49, 49, 49, 49, 50, 50, 50, 52, 53, 53, 52, 50, 50, 53, 52, 32.64896 + 52, 51, 49, 48, 47, 47, 51, 51, 52, 53, 53, 54, 55, 55, 56, 56, 32.64897 + 57, 58, 58, 59, 60, 60, 58, 59, 59, 59, 58, 58, 60, 62, 59, 60, 32.64898 + 61, 64, 66, 69, 71, 72, 72, 75, 74, 71, 71, 75, 76, 74, 75, 76, 32.64899 + 77, 77, 75, 75, 76, 78, 81, 82, 91, 104, 115, 135, 141, 126, 130, 168, 32.64900 + 168, 155, 132, 167, 246, 246, 244, 226, 228, 245, 253, 255, 252, 255, 255, 255, 32.64901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64903 + 255, 255, 255, 255, 129, 83, 69, 66, 63, 63, 60, 59, 49, 52, 51, 50, 32.64904 + 49, 49, 49, 50, 50, 49, 49, 50, 50, 50, 50, 49, 49, 52, 52, 52, 32.64905 + 51, 50, 50, 49, 49, 53, 53, 54, 55, 56, 56, 57, 57, 54, 54, 55, 32.64906 + 55, 56, 57, 57, 58, 56, 57, 58, 57, 56, 56, 58, 61, 53, 54, 56, 32.64907 + 60, 66, 71, 76, 79, 76, 79, 78, 74, 74, 77, 77, 75, 75, 75, 75, 32.64908 + 74, 73, 74, 77, 80, 92, 74, 80, 105, 112, 114, 117, 120, 110, 129, 151, 32.64909 + 156, 144, 166, 221, 250, 241, 187, 182, 225, 243, 240, 245, 253, 255, 255, 255, 32.64910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64912 + 255, 255, 255, 59, 72, 65, 49, 62, 49, 58, 49, 56, 52, 52, 51, 50, 32.64913 + 50, 50, 51, 51, 49, 48, 48, 47, 47, 48, 48, 49, 51, 51, 51, 51, 32.64914 + 51, 51, 51, 51, 49, 50, 50, 51, 52, 53, 54, 54, 56, 55, 55, 54, 32.64915 + 53, 53, 52, 52, 54, 56, 56, 56, 54, 55, 57, 59, 59, 59, 59, 60, 32.64916 + 63, 67, 71, 74, 76, 79, 77, 73, 72, 75, 75, 72, 74, 74, 73, 71, 32.64917 + 71, 74, 78, 82, 83, 86, 89, 86, 91, 113, 121, 105, 124, 111, 125, 128, 32.64918 + 151, 178, 176, 205, 206, 171, 166, 186, 200, 228, 253, 253, 250, 255, 255, 255, 32.64919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64921 + 255, 196, 77, 61, 57, 54, 52, 52, 53, 51, 49, 54, 51, 48, 48, 51, 32.64922 + 51, 48, 46, 46, 46, 46, 47, 47, 48, 48, 48, 52, 51, 49, 48, 48, 32.64923 + 49, 51, 52, 47, 47, 48, 48, 48, 48, 48, 48, 52, 53, 54, 55, 55, 32.64924 + 55, 55, 54, 57, 56, 56, 55, 55, 54, 54, 53, 51, 53, 56, 60, 64, 32.64925 + 67, 68, 69, 72, 74, 75, 74, 72, 72, 76, 81, 70, 72, 74, 74, 75, 32.64926 + 76, 79, 82, 90, 89, 88, 90, 95, 104, 112, 118, 110, 113, 118, 127, 143, 32.64927 + 154, 151, 138, 154, 215, 200, 204, 245, 245, 246, 255, 239, 255, 255, 255, 255, 32.64928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64930 + 96, 56, 60, 56, 53, 52, 53, 52, 50, 49, 53, 50, 48, 48, 51, 51, 32.64931 + 48, 46, 46, 46, 46, 47, 47, 48, 48, 48, 50, 50, 49, 49, 49, 49, 32.64932 + 50, 50, 48, 49, 49, 49, 50, 51, 51, 51, 52, 53, 54, 54, 55, 55, 32.64933 + 54, 54, 57, 57, 56, 56, 56, 56, 56, 55, 61, 61, 62, 62, 61, 61, 32.64934 + 60, 59, 65, 66, 67, 67, 67, 67, 69, 71, 67, 68, 70, 71, 71, 72, 32.64935 + 75, 78, 82, 82, 82, 83, 86, 91, 97, 101, 106, 110, 114, 119, 132, 145, 32.64936 + 144, 138, 152, 230, 234, 223, 238, 245, 252, 253, 255, 255, 252, 255, 255, 255, 32.64937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 86, 32.64939 + 56, 58, 55, 53, 52, 52, 51, 50, 48, 52, 50, 49, 49, 50, 50, 49, 32.64940 + 47, 46, 46, 46, 47, 47, 48, 48, 48, 48, 49, 49, 50, 50, 49, 49, 32.64941 + 48, 49, 49, 50, 51, 52, 53, 54, 54, 52, 52, 53, 54, 55, 55, 54, 32.64942 + 54, 56, 56, 56, 57, 57, 57, 57, 57, 58, 59, 60, 61, 61, 61, 61, 32.64943 + 61, 64, 64, 64, 66, 68, 69, 68, 67, 66, 67, 69, 69, 69, 70, 73, 32.64944 + 76, 77, 77, 78, 80, 81, 83, 84, 85, 100, 103, 105, 107, 117, 128, 133, 32.64945 + 133, 126, 193, 227, 240, 250, 252, 252, 238, 228, 226, 237, 248, 255, 255, 255, 32.64946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 65, 65, 32.64948 + 55, 53, 50, 50, 50, 50, 49, 47, 50, 49, 50, 49, 49, 49, 49, 48, 32.64949 + 46, 46, 46, 47, 47, 48, 48, 48, 47, 48, 49, 50, 50, 49, 48, 47, 32.64950 + 48, 49, 50, 51, 53, 54, 55, 56, 51, 52, 53, 54, 54, 54, 54, 53, 32.64951 + 54, 55, 55, 56, 56, 57, 57, 58, 55, 56, 57, 59, 61, 62, 62, 63, 32.64952 + 65, 64, 64, 67, 71, 71, 68, 65, 68, 70, 71, 71, 71, 72, 75, 77, 32.64953 + 78, 80, 82, 85, 85, 84, 83, 82, 91, 93, 96, 99, 104, 112, 119, 123, 32.64954 + 134, 139, 161, 204, 234, 248, 255, 253, 249, 237, 244, 230, 255, 255, 255, 255, 32.64955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 67, 66, 58, 54, 32.64957 + 51, 48, 47, 49, 49, 47, 46, 49, 50, 50, 49, 49, 49, 49, 49, 46, 32.64958 + 46, 46, 47, 47, 48, 48, 48, 46, 47, 48, 49, 49, 48, 47, 46, 47, 32.64959 + 47, 48, 50, 51, 53, 54, 54, 51, 52, 53, 53, 54, 54, 53, 53, 52, 32.64960 + 53, 53, 54, 54, 55, 55, 56, 59, 59, 59, 60, 59, 58, 57, 57, 63, 32.64961 + 62, 62, 65, 69, 69, 66, 63, 69, 71, 72, 72, 71, 72, 75, 77, 82, 32.64962 + 84, 86, 89, 90, 89, 88, 87, 83, 86, 91, 95, 98, 102, 107, 112, 126, 32.64963 + 107, 126, 173, 214, 246, 252, 247, 234, 224, 242, 226, 199, 255, 255, 255, 255, 32.64964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 76, 56, 70, 51, 52, 49, 32.64966 + 46, 46, 47, 47, 46, 45, 47, 49, 50, 49, 49, 48, 49, 50, 46, 46, 32.64967 + 46, 47, 47, 48, 48, 48, 46, 47, 47, 48, 48, 47, 47, 46, 47, 47, 32.64968 + 48, 49, 50, 51, 52, 52, 51, 51, 52, 53, 53, 53, 53, 53, 53, 53, 32.64969 + 53, 53, 53, 54, 54, 54, 53, 54, 56, 58, 59, 60, 61, 62, 65, 65, 32.64970 + 65, 66, 69, 69, 68, 67, 67, 69, 70, 69, 69, 69, 72, 74, 80, 82, 32.64971 + 83, 85, 88, 89, 89, 89, 84, 85, 89, 96, 98, 98, 102, 107, 104, 106, 32.64972 + 128, 142, 175, 231, 250, 247, 205, 206, 235, 241, 201, 226, 255, 255, 255, 255, 32.64973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64974 + 255, 255, 255, 255, 255, 255, 255, 255, 75, 58, 58, 60, 52, 50, 47, 45, 32.64975 + 44, 46, 46, 45, 44, 46, 48, 51, 50, 48, 47, 49, 51, 46, 46, 46, 32.64976 + 47, 47, 48, 48, 48, 47, 47, 46, 46, 46, 46, 47, 47, 48, 48, 48, 32.64977 + 49, 50, 50, 50, 51, 50, 51, 52, 53, 53, 53, 53, 52, 55, 54, 54, 32.64978 + 54, 54, 54, 53, 53, 48, 50, 53, 56, 60, 62, 64, 66, 65, 66, 67, 32.64979 + 67, 66, 67, 69, 71, 66, 67, 68, 68, 67, 68, 70, 72, 77, 77, 78, 32.64980 + 78, 79, 82, 83, 85, 92, 90, 91, 98, 102, 102, 104, 108, 124, 130, 140, 32.64981 + 121, 141, 202, 235, 252, 244, 242, 246, 250, 242, 252, 249, 255, 255, 255, 255, 32.64982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64983 + 255, 255, 255, 255, 255, 255, 255, 62, 60, 50, 51, 51, 50, 47, 45, 45, 32.64984 + 45, 46, 46, 45, 47, 49, 51, 50, 47, 46, 48, 50, 46, 46, 46, 47, 32.64985 + 46, 47, 47, 47, 47, 47, 45, 44, 44, 46, 48, 49, 50, 49, 50, 50, 32.64986 + 50, 50, 50, 50, 50, 51, 52, 53, 53, 53, 53, 52, 57, 56, 56, 55, 32.64987 + 55, 54, 54, 53, 56, 56, 57, 58, 58, 57, 57, 57, 59, 61, 63, 61, 32.64988 + 59, 60, 64, 68, 67, 68, 69, 69, 68, 68, 70, 73, 75, 74, 72, 71, 32.64989 + 73, 76, 80, 82, 101, 94, 93, 99, 105, 105, 107, 112, 123, 137, 169, 171, 32.64990 + 183, 198, 188, 206, 226, 238, 237, 240, 253, 255, 247, 246, 255, 255, 255, 255, 32.64991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.64992 + 255, 255, 255, 255, 255, 193, 61, 48, 56, 54, 57, 48, 46, 45, 46, 48, 32.64993 + 49, 49, 46, 45, 45, 44, 44, 44, 44, 43, 44, 46, 48, 47, 47, 47, 32.64994 + 47, 45, 45, 50, 49, 50, 50, 51, 52, 54, 54, 52, 49, 49, 48, 48, 32.64995 + 49, 49, 50, 49, 50, 51, 52, 52, 52, 51, 51, 56, 57, 58, 60, 61, 32.64996 + 63, 64, 64, 58, 58, 58, 57, 57, 56, 56, 56, 59, 61, 61, 61, 58, 32.64997 + 59, 60, 63, 63, 64, 62, 64, 64, 67, 69, 70, 67, 70, 72, 73, 74, 32.64998 + 76, 79, 82, 87, 83, 86, 95, 101, 104, 111, 119, 131, 140, 157, 183, 215, 32.64999 + 237, 236, 225, 228, 199, 191, 177, 228, 251, 252, 249, 255, 255, 255, 255, 255, 32.65000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65001 + 255, 255, 255, 255, 65, 63, 48, 53, 48, 47, 47, 44, 44, 46, 48, 49, 32.65002 + 48, 46, 47, 47, 46, 46, 45, 44, 43, 44, 46, 47, 47, 46, 44, 43, 32.65003 + 41, 41, 46, 47, 50, 52, 53, 53, 53, 51, 52, 49, 49, 48, 48, 49, 32.65004 + 49, 50, 50, 50, 50, 51, 51, 52, 52, 52, 53, 53, 54, 55, 56, 57, 32.65005 + 58, 59, 58, 58, 58, 58, 58, 58, 58, 58, 64, 65, 65, 64, 62, 62, 32.65006 + 64, 65, 65, 64, 64, 64, 64, 65, 67, 67, 64, 67, 69, 71, 72, 75, 32.65007 + 78, 81, 86, 82, 82, 88, 93, 96, 103, 109, 131, 152, 169, 174, 175, 192, 32.65008 + 219, 240, 219, 213, 186, 133, 156, 212, 240, 250, 244, 255, 255, 255, 255, 255, 32.65009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65010 + 255, 255, 255, 66, 64, 50, 53, 51, 45, 44, 42, 41, 43, 45, 48, 47, 32.65011 + 46, 48, 48, 48, 47, 47, 46, 45, 45, 47, 48, 48, 48, 46, 44, 42, 32.65012 + 41, 43, 45, 49, 52, 52, 50, 48, 47, 51, 49, 49, 48, 48, 49, 49, 32.65013 + 50, 51, 50, 50, 50, 50, 51, 52, 53, 52, 52, 52, 53, 53, 54, 54, 32.65014 + 54, 57, 57, 58, 58, 59, 60, 60, 61, 64, 65, 65, 63, 61, 61, 62, 32.65015 + 64, 65, 65, 65, 65, 65, 65, 65, 65, 64, 66, 68, 70, 71, 74, 78, 32.65016 + 81, 85, 81, 80, 83, 85, 87, 92, 96, 115, 148, 175, 175, 160, 163, 190, 32.65017 + 216, 221, 216, 205, 181, 155, 163, 191, 255, 243, 255, 255, 255, 255, 255, 255, 32.65018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65019 + 255, 192, 63, 57, 45, 50, 53, 46, 42, 40, 40, 41, 43, 45, 45, 46, 32.65020 + 46, 47, 47, 47, 46, 46, 46, 46, 48, 49, 49, 50, 49, 49, 47, 46, 32.65021 + 44, 45, 47, 48, 49, 48, 46, 45, 49, 49, 49, 48, 48, 49, 49, 50, 32.65022 + 51, 51, 50, 50, 50, 51, 52, 53, 54, 54, 54, 54, 54, 54, 54, 54, 32.65023 + 55, 55, 56, 57, 59, 60, 61, 61, 64, 65, 65, 63, 61, 60, 61, 63, 32.65024 + 63, 63, 64, 65, 66, 66, 66, 66, 66, 68, 70, 72, 73, 76, 80, 83, 32.65025 + 84, 84, 84, 85, 86, 85, 86, 86, 91, 111, 136, 149, 152, 158, 171, 181, 32.65026 + 225, 217, 221, 238, 200, 168, 158, 223, 255, 232, 240, 255, 255, 255, 255, 255, 32.65027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65028 + 62, 50, 46, 43, 45, 49, 39, 38, 39, 39, 40, 41, 41, 44, 45, 44, 32.65029 + 45, 45, 45, 46, 46, 46, 45, 45, 46, 48, 49, 50, 50, 49, 48, 47, 32.65030 + 46, 45, 44, 43, 43, 44, 46, 48, 49, 49, 48, 48, 49, 49, 50, 51, 32.65031 + 50, 50, 50, 51, 51, 52, 53, 55, 55, 55, 54, 54, 54, 53, 53, 52, 32.65032 + 53, 54, 55, 57, 58, 59, 60, 67, 68, 68, 66, 64, 63, 65, 67, 61, 32.65033 + 61, 62, 64, 66, 68, 69, 70, 71, 73, 74, 74, 75, 78, 83, 86, 87, 32.65034 + 91, 94, 95, 95, 94, 91, 87, 84, 82, 86, 100, 122, 142, 159, 168, 207, 32.65035 + 227, 225, 218, 208, 224, 187, 179, 189, 230, 255, 255, 255, 255, 255, 255, 255, 32.65036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 32.65037 + 42, 47, 52, 46, 47, 36, 37, 39, 40, 39, 40, 40, 41, 45, 41, 42, 32.65038 + 44, 44, 46, 46, 46, 46, 41, 41, 43, 46, 47, 47, 46, 46, 47, 47, 32.65039 + 44, 42, 42, 42, 43, 46, 48, 49, 49, 48, 48, 49, 49, 50, 49, 50, 32.65040 + 51, 52, 52, 52, 51, 51, 52, 52, 52, 52, 52, 52, 51, 51, 52, 52, 32.65041 + 53, 54, 56, 57, 58, 59, 62, 63, 64, 63, 61, 61, 63, 65, 61, 61, 32.65042 + 61, 62, 64, 68, 71, 73, 75, 75, 75, 75, 75, 77, 82, 85, 89, 95, 32.65043 + 100, 101, 103, 103, 100, 95, 97, 93, 91, 97, 107, 120, 135, 147, 174, 220, 32.65044 + 242, 224, 222, 249, 225, 209, 157, 217, 242, 250, 255, 255, 255, 255, 255, 255, 32.65045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 59, 39, 32.65046 + 50, 56, 42, 46, 43, 38, 40, 41, 41, 39, 39, 41, 44, 40, 41, 42, 32.65047 + 43, 44, 46, 46, 46, 39, 40, 41, 42, 44, 43, 43, 43, 45, 45, 45, 32.65048 + 45, 44, 45, 43, 44, 48, 49, 49, 48, 48, 49, 49, 50, 47, 49, 52, 32.65049 + 54, 54, 53, 51, 49, 50, 51, 51, 51, 51, 51, 51, 51, 53, 54, 54, 32.65050 + 55, 56, 57, 58, 59, 56, 57, 58, 58, 57, 57, 60, 62, 64, 62, 61, 32.65051 + 60, 62, 66, 71, 73, 75, 75, 74, 72, 72, 73, 78, 81, 83, 90, 94, 32.65052 + 94, 97, 102, 102, 98, 104, 108, 114, 119, 116, 112, 117, 127, 150, 180, 232, 32.65053 + 242, 245, 229, 222, 248, 228, 185, 171, 236, 255, 255, 255, 255, 255, 255, 255, 32.65054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 62, 36, 45, 32.65055 + 49, 31, 42, 49, 39, 41, 43, 42, 40, 39, 40, 42, 39, 40, 40, 41, 32.65056 + 42, 44, 45, 44, 41, 41, 40, 42, 42, 41, 41, 40, 42, 44, 47, 48, 32.65057 + 48, 47, 44, 43, 49, 49, 49, 48, 48, 49, 49, 50, 46, 48, 52, 55, 32.65058 + 55, 53, 50, 48, 51, 51, 51, 52, 52, 53, 53, 53, 55, 55, 56, 57, 32.65059 + 57, 58, 59, 59, 56, 58, 59, 59, 59, 60, 62, 65, 67, 65, 61, 60, 32.65060 + 61, 65, 69, 73, 73, 73, 71, 69, 68, 70, 74, 77, 76, 81, 84, 83, 32.65061 + 87, 96, 100, 98, 96, 100, 110, 118, 118, 115, 122, 132, 143, 140, 184, 208, 32.65062 + 236, 209, 202, 229, 251, 219, 203, 203, 244, 255, 255, 255, 255, 255, 255, 255, 32.65063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 56, 44, 35, 40, 47, 32.65064 + 49, 43, 39, 41, 47, 47, 41, 43, 50, 47, 38, 32, 38, 46, 53, 57, 32.65065 + 59, 60, 62, 61, 67, 69, 57, 43, 37, 36, 37, 45, 46, 48, 49, 49, 32.65066 + 48, 47, 45, 48, 48, 48, 49, 49, 50, 50, 50, 49, 50, 50, 51, 51, 32.65067 + 50, 50, 49, 51, 52, 54, 56, 56, 54, 52, 51, 51, 52, 54, 54, 53, 32.65068 + 54, 55, 57, 57, 58, 60, 62, 62, 61, 60, 59, 62, 62, 63, 64, 65, 32.65069 + 65, 66, 66, 66, 67, 67, 68, 69, 70, 71, 71, 75, 76, 77, 79, 81, 32.65070 + 84, 87, 90, 90, 94, 100, 106, 111, 118, 125, 129, 151, 161, 125, 126, 183, 32.65071 + 210, 205, 205, 216, 244, 233, 214, 238, 255, 255, 255, 255, 255, 255, 255, 255, 32.65072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 75, 61, 49, 47, 49, 45, 32.65073 + 40, 38, 43, 47, 47, 43, 42, 43, 42, 38, 35, 46, 62, 71, 74, 78, 32.65074 + 84, 90, 76, 82, 85, 81, 75, 66, 55, 46, 45, 45, 46, 48, 52, 56, 32.65075 + 55, 55, 49, 48, 48, 49, 49, 49, 50, 50, 50, 51, 52, 53, 53, 52, 32.65076 + 51, 50, 51, 53, 54, 56, 56, 54, 53, 51, 50, 52, 54, 54, 53, 53, 32.65077 + 55, 57, 57, 58, 58, 59, 60, 60, 59, 59, 62, 62, 62, 62, 62, 62, 32.65078 + 61, 61, 69, 69, 69, 69, 69, 70, 70, 70, 74, 75, 76, 79, 81, 84, 32.65079 + 86, 88, 90, 93, 94, 96, 100, 106, 114, 118, 146, 151, 141, 129, 141, 179, 32.65080 + 205, 197, 214, 240, 246, 241, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65081 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 67, 56, 46, 44, 44, 42, 42, 32.65082 + 46, 49, 48, 48, 47, 42, 40, 41, 47, 60, 72, 85, 90, 86, 85, 91, 32.65083 + 97, 85, 88, 91, 92, 93, 90, 77, 63, 52, 48, 44, 45, 51, 57, 58, 32.65084 + 56, 50, 48, 48, 48, 49, 49, 49, 50, 50, 51, 53, 55, 55, 53, 51, 32.65085 + 50, 52, 53, 54, 55, 55, 54, 53, 52, 50, 52, 54, 54, 53, 53, 55, 32.65086 + 57, 57, 57, 57, 57, 57, 58, 59, 60, 62, 63, 63, 63, 63, 64, 64, 32.65087 + 64, 72, 71, 70, 70, 69, 69, 70, 70, 73, 74, 77, 79, 82, 84, 85, 32.65088 + 86, 88, 88, 89, 89, 91, 98, 105, 111, 104, 114, 150, 154, 144, 187, 216, 32.65089 + 187, 227, 232, 244, 251, 250, 242, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65090 + 255, 255, 255, 255, 255, 255, 199, 53, 49, 43, 39, 40, 40, 42, 45, 52, 32.65091 + 51, 47, 48, 51, 47, 42, 50, 62, 86, 89, 93, 92, 84, 81, 83, 87, 32.65092 + 88, 88, 85, 86, 91, 95, 91, 83, 67, 57, 46, 43, 48, 53, 53, 50, 32.65093 + 49, 47, 48, 48, 48, 49, 49, 49, 49, 51, 53, 55, 55, 53, 51, 49, 32.65094 + 51, 51, 52, 53, 53, 52, 51, 51, 52, 54, 55, 56, 55, 55, 57, 59, 32.65095 + 59, 58, 57, 56, 57, 58, 60, 61, 57, 58, 60, 62, 64, 66, 68, 69, 32.65096 + 71, 70, 69, 69, 69, 70, 71, 72, 74, 75, 78, 81, 83, 84, 85, 86, 32.65097 + 86, 88, 89, 91, 94, 99, 106, 111, 107, 98, 123, 135, 146, 199, 230, 219, 32.65098 + 231, 210, 220, 243, 247, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65099 + 255, 255, 255, 255, 255, 99, 40, 51, 48, 46, 46, 45, 42, 43, 47, 49, 32.65100 + 43, 45, 50, 51, 51, 61, 76, 91, 89, 85, 82, 81, 81, 83, 85, 90, 32.65101 + 93, 90, 87, 89, 95, 97, 96, 82, 68, 53, 45, 46, 51, 52, 49, 49, 32.65102 + 47, 47, 48, 48, 48, 49, 49, 48, 49, 51, 53, 53, 51, 49, 48, 49, 32.65103 + 50, 50, 50, 50, 50, 50, 49, 54, 56, 57, 57, 57, 57, 59, 60, 60, 32.65104 + 60, 58, 58, 58, 60, 61, 62, 55, 56, 58, 60, 62, 64, 66, 66, 68, 32.65105 + 68, 67, 67, 69, 71, 74, 75, 76, 77, 79, 81, 83, 85, 86, 86, 86, 32.65106 + 89, 93, 96, 99, 102, 105, 108, 116, 107, 113, 123, 158, 191, 200, 233, 227, 32.65107 + 198, 205, 237, 252, 255, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65108 + 255, 255, 255, 255, 53, 54, 51, 47, 45, 47, 46, 43, 42, 45, 42, 41, 32.65109 + 43, 47, 54, 60, 72, 83, 94, 88, 82, 80, 81, 84, 84, 85, 90, 98, 32.65110 + 100, 95, 91, 90, 91, 90, 90, 77, 60, 49, 48, 52, 55, 55, 48, 47, 32.65111 + 47, 47, 48, 48, 48, 48, 49, 50, 50, 50, 50, 50, 50, 49, 50, 50, 32.65112 + 50, 50, 50, 50, 50, 50, 54, 56, 57, 58, 57, 57, 59, 61, 60, 60, 32.65113 + 59, 59, 60, 61, 61, 62, 64, 64, 64, 65, 65, 65, 66, 66, 66, 66, 32.65114 + 65, 65, 67, 71, 74, 76, 78, 78, 78, 79, 81, 83, 85, 86, 88, 91, 32.65115 + 95, 97, 98, 99, 100, 101, 106, 116, 128, 135, 175, 181, 168, 231, 246, 219, 32.65116 + 208, 223, 242, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65117 + 255, 255, 52, 19, 57, 50, 43, 40, 42, 44, 43, 45, 45, 41, 41, 45, 32.65118 + 47, 56, 71, 83, 87, 88, 85, 83, 83, 82, 82, 83, 85, 93, 100, 101, 32.65119 + 97, 90, 88, 85, 82, 93, 81, 64, 51, 45, 48, 54, 57, 47, 46, 47, 32.65120 + 47, 47, 48, 48, 48, 52, 51, 50, 50, 50, 50, 51, 52, 52, 52, 51, 32.65121 + 51, 51, 51, 52, 52, 52, 54, 56, 56, 55, 55, 57, 59, 58, 58, 59, 32.65122 + 60, 60, 60, 60, 60, 67, 67, 67, 67, 66, 66, 66, 66, 67, 66, 64, 32.65123 + 64, 65, 69, 72, 74, 78, 77, 75, 75, 77, 80, 83, 86, 86, 89, 92, 32.65124 + 94, 95, 95, 98, 101, 113, 117, 127, 119, 154, 171, 167, 238, 248, 239, 216, 32.65125 + 206, 221, 240, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65126 + 255, 49, 82, 89, 61, 52, 43, 41, 42, 41, 41, 42, 43, 48, 49, 48, 32.65127 + 60, 79, 90, 89, 68, 72, 79, 82, 82, 82, 86, 92, 99, 101, 99, 92, 32.65128 + 90, 90, 89, 87, 95, 84, 66, 49, 41, 41, 47, 51, 46, 46, 46, 47, 32.65129 + 47, 48, 48, 48, 55, 54, 52, 51, 51, 52, 54, 56, 54, 53, 53, 52, 32.65130 + 52, 53, 53, 54, 51, 52, 54, 54, 54, 54, 55, 57, 54, 55, 57, 59, 32.65131 + 60, 59, 58, 57, 57, 58, 58, 59, 59, 60, 61, 61, 68, 67, 65, 63, 32.65132 + 64, 66, 70, 72, 77, 75, 73, 72, 73, 77, 82, 85, 83, 84, 88, 89, 32.65133 + 91, 97, 102, 106, 97, 100, 127, 125, 154, 176, 156, 193, 212, 231, 219, 202, 32.65134 + 214, 229, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 205, 32.65135 + 71, 53, 46, 52, 40, 36, 45, 48, 41, 36, 37, 42, 41, 49, 57, 68, 32.65136 + 89, 96, 81, 78, 78, 81, 84, 83, 84, 91, 103, 102, 97, 92, 89, 82, 32.65137 + 71, 68, 72, 100, 93, 75, 54, 40, 41, 45, 47, 49, 49, 49, 49, 49, 32.65138 + 50, 50, 51, 52, 53, 52, 52, 53, 53, 55, 55, 52, 52, 52, 53, 52, 32.65139 + 52, 50, 51, 50, 51, 50, 52, 51, 52, 52, 52, 54, 53, 53, 54, 56, 32.65140 + 57, 59, 60, 60, 60, 60, 61, 60, 60, 61, 61, 55, 60, 65, 67, 67, 32.65141 + 66, 68, 71, 67, 68, 72, 75, 73, 72, 78, 87, 87, 87, 87, 85, 84, 32.65142 + 89, 97, 105, 97, 102, 105, 116, 141, 165, 166, 154, 151, 176, 179, 221, 238, 32.65143 + 247, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 160, 32.65144 + 142, 111, 70, 53, 39, 39, 39, 36, 39, 45, 46, 46, 58, 70, 78, 89, 32.65145 + 94, 83, 89, 86, 89, 92, 91, 90, 93, 101, 105, 100, 93, 86, 76, 70, 32.65146 + 75, 86, 95, 91, 75, 57, 44, 43, 45, 46, 44, 44, 44, 46, 46, 47, 32.65147 + 47, 48, 52, 52, 52, 51, 52, 54, 55, 54, 52, 51, 52, 53, 53, 53, 32.65148 + 52, 52, 54, 54, 55, 55, 56, 56, 56, 56, 53, 53, 54, 54, 56, 58, 32.65149 + 59, 61, 60, 60, 61, 61, 60, 60, 60, 61, 58, 62, 66, 69, 68, 67, 32.65150 + 65, 65, 68, 68, 72, 75, 73, 72, 78, 87, 87, 88, 89, 88, 86, 89, 32.65151 + 95, 101, 99, 101, 102, 109, 130, 155, 163, 156, 161, 189, 189, 226, 240, 253, 32.65152 + 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 44, 33, 69, 32.65153 + 110, 72, 56, 41, 38, 36, 35, 40, 48, 49, 48, 66, 84, 86, 88, 90, 32.65154 + 84, 93, 89, 88, 92, 93, 89, 88, 91, 96, 101, 105, 101, 88, 77, 77, 32.65155 + 84, 91, 87, 75, 58, 47, 45, 47, 47, 45, 45, 45, 45, 46, 48, 48, 32.65156 + 49, 49, 49, 49, 50, 50, 51, 52, 52, 49, 50, 51, 52, 53, 53, 53, 32.65157 + 52, 51, 52, 52, 52, 53, 53, 53, 53, 54, 53, 53, 55, 56, 59, 60, 32.65158 + 62, 60, 61, 60, 60, 60, 61, 61, 61, 63, 64, 66, 68, 69, 67, 63, 32.65159 + 60, 69, 69, 72, 75, 74, 73, 78, 86, 84, 87, 89, 89, 86, 87, 89, 32.65160 + 92, 97, 98, 98, 100, 118, 143, 158, 160, 173, 202, 198, 223, 231, 247, 247, 32.65161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 59, 28, 27, 45, 32.65162 + 55, 47, 40, 39, 38, 37, 39, 43, 51, 49, 68, 89, 88, 84, 87, 86, 32.65163 + 91, 85, 83, 90, 92, 89, 83, 80, 77, 82, 87, 89, 85, 81, 82, 86, 32.65164 + 92, 88, 76, 58, 47, 46, 49, 49, 45, 46, 46, 47, 48, 48, 49, 50, 32.65165 + 48, 48, 48, 48, 48, 49, 50, 51, 48, 49, 51, 52, 53, 54, 54, 54, 32.65166 + 51, 51, 51, 52, 52, 52, 53, 53, 54, 54, 55, 55, 57, 58, 61, 62, 32.65167 + 61, 61, 61, 60, 61, 61, 62, 62, 66, 65, 63, 64, 67, 68, 65, 61, 32.65168 + 71, 69, 71, 74, 74, 72, 77, 83, 80, 84, 88, 89, 86, 84, 84, 86, 32.65169 + 92, 93, 93, 94, 108, 131, 150, 158, 192, 220, 213, 229, 232, 249, 252, 255, 32.65170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 35, 48, 56, 49, 45, 32.65171 + 43, 41, 41, 40, 36, 39, 41, 53, 51, 70, 90, 88, 84, 89, 91, 90, 32.65172 + 84, 84, 92, 97, 93, 85, 81, 73, 68, 61, 59, 66, 81, 96, 105, 96, 32.65173 + 92, 78, 59, 48, 48, 50, 50, 42, 42, 43, 43, 44, 45, 46, 46, 47, 32.65174 + 47, 47, 47, 47, 48, 49, 51, 49, 50, 51, 53, 54, 54, 54, 54, 55, 32.65175 + 55, 56, 56, 56, 57, 57, 57, 55, 55, 56, 56, 58, 59, 62, 62, 61, 32.65176 + 61, 61, 62, 62, 61, 62, 62, 68, 64, 60, 60, 64, 68, 68, 67, 71, 32.65177 + 69, 69, 72, 73, 71, 75, 80, 79, 83, 88, 90, 88, 86, 87, 88, 86, 32.65178 + 90, 91, 94, 103, 120, 139, 149, 171, 201, 195, 215, 220, 239, 248, 255, 255, 32.65179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 50, 44, 45, 40, 47, 46, 32.65180 + 43, 39, 36, 37, 42, 47, 59, 58, 75, 90, 88, 90, 94, 92, 83, 79, 32.65181 + 81, 89, 94, 91, 83, 81, 91, 86, 79, 76, 83, 96, 102, 103, 96, 92, 32.65182 + 81, 63, 52, 50, 52, 51, 47, 46, 47, 47, 47, 47, 47, 48, 47, 48, 32.65183 + 48, 48, 48, 49, 50, 50, 50, 51, 52, 53, 54, 54, 54, 53, 55, 55, 32.65184 + 55, 55, 56, 56, 56, 57, 56, 56, 56, 57, 58, 60, 61, 63, 62, 62, 32.65185 + 61, 62, 62, 63, 62, 63, 66, 63, 60, 60, 63, 67, 70, 71, 71, 68, 32.65186 + 67, 70, 71, 70, 72, 76, 79, 83, 88, 91, 90, 90, 94, 97, 90, 92, 32.65187 + 92, 94, 100, 112, 127, 137, 133, 162, 162, 193, 204, 221, 236, 255, 255, 255, 32.65188 + 255, 255, 255, 255, 255, 255, 255, 189, 60, 61, 53, 42, 29, 40, 44, 43, 32.65189 + 38, 35, 39, 48, 53, 60, 64, 82, 91, 90, 94, 96, 85, 75, 73, 75, 32.65190 + 83, 87, 83, 78, 77, 91, 97, 101, 102, 103, 105, 99, 91, 91, 90, 83, 32.65191 + 69, 59, 55, 53, 51, 54, 53, 52, 52, 51, 50, 50, 50, 48, 49, 49, 32.65192 + 49, 49, 51, 52, 52, 51, 51, 52, 53, 53, 52, 52, 51, 52, 52, 52, 32.65193 + 52, 53, 53, 54, 54, 56, 56, 56, 57, 57, 60, 61, 62, 60, 60, 61, 32.65194 + 61, 62, 63, 63, 64, 61, 63, 64, 65, 65, 66, 68, 69, 71, 66, 65, 32.65195 + 68, 69, 68, 70, 73, 76, 80, 84, 87, 89, 92, 99, 104, 100, 98, 95, 32.65196 + 94, 96, 104, 115, 123, 119, 145, 148, 188, 197, 207, 223, 255, 255, 255, 255, 32.65197 + 255, 255, 255, 255, 255, 255, 81, 51, 31, 45, 55, 38, 26, 35, 41, 41, 32.65198 + 39, 43, 50, 53, 60, 68, 83, 90, 90, 97, 94, 78, 73, 72, 74, 82, 32.65199 + 84, 80, 76, 76, 66, 77, 85, 86, 90, 96, 97, 95, 85, 87, 84, 74, 32.65200 + 65, 61, 56, 51, 53, 54, 53, 52, 50, 49, 48, 48, 51, 51, 50, 50, 32.65201 + 51, 51, 52, 53, 52, 51, 52, 52, 52, 51, 50, 50, 54, 54, 55, 55, 32.65202 + 55, 56, 56, 57, 57, 57, 57, 57, 58, 59, 60, 62, 60, 60, 61, 62, 32.65203 + 61, 62, 63, 64, 58, 63, 68, 69, 67, 65, 65, 66, 70, 66, 64, 67, 32.65204 + 68, 67, 68, 71, 72, 75, 80, 82, 85, 90, 100, 106, 110, 104, 97, 94, 32.65205 + 94, 98, 107, 115, 105, 127, 129, 169, 174, 175, 187, 255, 255, 255, 255, 255, 32.65206 + 255, 255, 255, 255, 255, 99, 49, 38, 43, 41, 44, 37, 35, 35, 37, 38, 32.65207 + 41, 51, 59, 69, 71, 79, 88, 90, 88, 89, 95, 76, 73, 73, 80, 81, 32.65208 + 77, 73, 73, 78, 72, 75, 86, 93, 91, 86, 86, 84, 83, 78, 70, 65, 32.65209 + 61, 58, 55, 57, 56, 53, 52, 53, 54, 53, 52, 51, 52, 53, 55, 55, 32.65210 + 55, 54, 53, 49, 46, 51, 60, 61, 56, 54, 57, 57, 54, 54, 57, 57, 32.65211 + 55, 55, 58, 58, 58, 58, 60, 61, 61, 59, 57, 61, 58, 55, 58, 62, 32.65212 + 63, 60, 56, 61, 62, 63, 63, 61, 61, 62, 63, 65, 66, 68, 70, 70, 32.65213 + 70, 68, 67, 66, 71, 78, 80, 79, 80, 86, 92, 101, 100, 98, 100, 97, 32.65214 + 96, 102, 111, 104, 102, 106, 128, 151, 154, 160, 255, 255, 255, 255, 255, 255, 32.65215 + 255, 255, 255, 209, 49, 46, 62, 43, 28, 42, 41, 39, 39, 44, 49, 55, 32.65216 + 64, 72, 73, 74, 80, 88, 90, 86, 87, 90, 86, 76, 67, 69, 75, 78, 32.65217 + 78, 79, 79, 77, 81, 92, 97, 95, 90, 89, 83, 81, 76, 69, 63, 59, 32.65218 + 56, 55, 58, 58, 56, 55, 55, 53, 49, 46, 51, 51, 51, 51, 52, 52, 32.65219 + 52, 51, 52, 49, 52, 58, 59, 54, 52, 54, 53, 51, 52, 57, 58, 55, 32.65220 + 56, 59, 59, 59, 58, 60, 62, 61, 60, 57, 63, 61, 60, 62, 65, 67, 32.65221 + 64, 62, 63, 65, 65, 64, 62, 61, 62, 63, 67, 67, 67, 67, 67, 68, 32.65222 + 69, 69, 68, 72, 76, 77, 76, 77, 81, 84, 94, 94, 97, 99, 97, 94, 32.65223 + 97, 104, 105, 102, 99, 114, 139, 147, 150, 255, 255, 255, 255, 255, 255, 255, 32.65224 + 255, 255, 165, 151, 80, 24, 31, 48, 39, 41, 36, 37, 45, 55, 62, 71, 32.65225 + 77, 81, 77, 80, 87, 90, 86, 84, 84, 94, 80, 67, 68, 75, 79, 81, 32.65226 + 81, 81, 83, 91, 101, 102, 97, 92, 91, 80, 79, 73, 69, 63, 57, 54, 32.65227 + 54, 48, 50, 51, 54, 56, 56, 53, 51, 52, 51, 50, 50, 49, 50, 50, 32.65228 + 50, 54, 51, 52, 55, 55, 52, 51, 53, 51, 50, 53, 58, 60, 57, 57, 32.65229 + 61, 61, 61, 61, 63, 64, 64, 61, 58, 58, 58, 58, 60, 61, 62, 62, 32.65230 + 63, 65, 66, 67, 66, 64, 62, 63, 64, 68, 67, 65, 64, 65, 66, 69, 32.65231 + 70, 71, 72, 73, 75, 77, 79, 81, 82, 83, 86, 93, 99, 98, 94, 95, 32.65232 + 101, 109, 108, 100, 106, 131, 144, 148, 255, 255, 255, 255, 255, 255, 255, 255, 32.65233 + 255, 60, 51, 85, 76, 41, 35, 46, 40, 36, 36, 46, 57, 66, 74, 78, 32.65234 + 84, 80, 81, 88, 91, 89, 85, 83, 94, 85, 77, 76, 77, 77, 78, 79, 32.65235 + 87, 93, 102, 108, 106, 99, 93, 90, 80, 76, 72, 69, 63, 57, 54, 55, 32.65236 + 46, 48, 48, 51, 55, 57, 55, 54, 54, 54, 51, 51, 50, 51, 51, 51, 32.65237 + 54, 53, 52, 53, 53, 52, 53, 54, 54, 53, 56, 61, 63, 60, 60, 63, 32.65238 + 65, 65, 64, 65, 67, 65, 62, 60, 55, 56, 58, 58, 57, 57, 60, 62, 32.65239 + 63, 64, 66, 65, 64, 63, 64, 66, 67, 66, 65, 65, 65, 67, 68, 69, 32.65240 + 71, 71, 72, 76, 81, 85, 87, 87, 81, 84, 91, 98, 98, 95, 96, 103, 32.65241 + 103, 109, 106, 107, 126, 143, 151, 191, 255, 255, 255, 255, 255, 255, 255, 60, 32.65242 + 45, 42, 40, 31, 43, 54, 41, 42, 39, 43, 56, 69, 77, 84, 87, 84, 32.65243 + 80, 81, 88, 94, 93, 89, 89, 95, 91, 85, 80, 73, 69, 72, 80, 96, 32.65244 + 103, 110, 111, 107, 100, 93, 87, 83, 77, 72, 71, 66, 58, 54, 59, 60, 32.65245 + 58, 54, 52, 51, 53, 52, 52, 56, 56, 54, 54, 53, 53, 54, 54, 54, 32.65246 + 55, 54, 54, 54, 57, 58, 59, 61, 60, 61, 67, 67, 66, 64, 68, 70, 32.65247 + 71, 71, 72, 72, 71, 67, 64, 62, 62, 62, 61, 59, 59, 62, 63, 60, 32.65248 + 61, 63, 64, 63, 64, 66, 68, 65, 66, 67, 68, 69, 68, 67, 67, 71, 32.65249 + 71, 73, 77, 82, 86, 87, 87, 91, 92, 95, 98, 95, 92, 94, 101, 90, 32.65250 + 105, 108, 110, 124, 141, 155, 172, 255, 255, 255, 255, 255, 255, 255, 78, 55, 32.65251 + 44, 44, 41, 38, 39, 34, 40, 41, 50, 65, 78, 85, 89, 94, 84, 81, 32.65252 + 84, 91, 95, 95, 94, 96, 100, 96, 88, 78, 65, 63, 72, 86, 103, 108, 32.65253 + 111, 109, 104, 100, 93, 86, 86, 79, 75, 75, 70, 61, 59, 63, 66, 63, 32.65254 + 57, 56, 57, 60, 62, 63, 60, 60, 61, 63, 62, 62, 61, 61, 57, 61, 32.65255 + 60, 59, 59, 64, 64, 63, 67, 66, 66, 72, 73, 73, 73, 79, 80, 79, 32.65256 + 79, 80, 80, 79, 75, 73, 71, 68, 66, 62, 62, 60, 61, 61, 58, 61, 32.65257 + 63, 64, 63, 64, 65, 67, 65, 66, 69, 70, 71, 70, 68, 67, 73, 74, 32.65258 + 76, 78, 80, 81, 83, 84, 100, 98, 98, 97, 93, 89, 92, 99, 92, 106, 32.65259 + 112, 115, 128, 142, 164, 192, 255, 255, 255, 255, 255, 255, 57, 41, 43, 44, 32.65260 + 48, 49, 39, 37, 50, 44, 48, 59, 73, 81, 83, 85, 89, 83, 83, 87, 32.65261 + 94, 95, 95, 97, 101, 103, 98, 91, 86, 75, 71, 77, 90, 106, 108, 106, 32.65262 + 102, 101, 102, 95, 85, 90, 82, 78, 80, 77, 66, 62, 68, 65, 65, 63, 32.65263 + 65, 69, 73, 76, 78, 68, 71, 73, 76, 77, 77, 74, 74, 65, 71, 70, 32.65264 + 68, 67, 71, 70, 68, 72, 70, 70, 76, 79, 81, 85, 91, 90, 89, 89, 32.65265 + 89, 90, 87, 84, 81, 82, 77, 72, 67, 66, 66, 63, 61, 63, 65, 66, 32.65266 + 65, 64, 63, 64, 66, 68, 68, 69, 70, 70, 70, 70, 70, 73, 76, 80, 32.65267 + 80, 80, 81, 83, 87, 95, 94, 95, 95, 93, 89, 92, 98, 105, 110, 111, 32.65268 + 116, 130, 143, 169, 205, 255, 255, 255, 255, 255, 255, 78, 43, 58, 49, 36, 32.65269 + 48, 50, 45, 49, 53, 58, 70, 82, 84, 81, 81, 84, 84, 85, 90, 96, 32.65270 + 95, 94, 98, 104, 102, 99, 99, 99, 93, 86, 85, 89, 107, 106, 102, 97, 32.65271 + 99, 103, 97, 87, 94, 84, 80, 82, 78, 67, 63, 71, 74, 72, 72, 73, 32.65272 + 76, 78, 77, 76, 78, 80, 84, 88, 90, 89, 87, 86, 71, 77, 77, 72, 32.65273 + 71, 74, 73, 68, 73, 70, 71, 77, 82, 87, 92, 100, 96, 95, 94, 95, 32.65274 + 95, 94, 90, 87, 97, 89, 80, 76, 75, 75, 70, 65, 67, 69, 69, 68, 32.65275 + 65, 64, 63, 65, 72, 71, 69, 68, 68, 69, 71, 72, 71, 76, 82, 84, 32.65276 + 83, 84, 89, 95, 82, 84, 88, 93, 93, 91, 95, 103, 112, 107, 102, 110, 32.65277 + 126, 139, 167, 205, 255, 255, 255, 255, 255, 184, 64, 48, 50, 50, 51, 56, 32.65278 + 62, 63, 60, 72, 72, 75, 78, 81, 85, 87, 88, 85, 84, 86, 91, 95, 32.65279 + 97, 93, 92, 93, 99, 102, 96, 92, 93, 96, 97, 102, 98, 94, 94, 95, 32.65280 + 96, 94, 92, 92, 92, 90, 85, 79, 76, 75, 75, 75, 77, 79, 80, 81, 32.65281 + 82, 83, 83, 92, 95, 94, 91, 94, 101, 100, 94, 87, 86, 84, 83, 82, 32.65282 + 82, 81, 81, 84, 87, 90, 91, 90, 91, 95, 98, 109, 108, 107, 104, 101, 32.65283 + 96, 91, 88, 89, 91, 90, 84, 75, 68, 64, 64, 66, 64, 63, 66, 68, 32.65284 + 65, 63, 63, 60, 65, 70, 73, 71, 70, 70, 72, 74, 76, 81, 84, 86, 32.65285 + 89, 94, 98, 94, 92, 90, 91, 94, 96, 96, 95, 98, 96, 99, 108, 119, 32.65286 + 129, 144, 156, 255, 255, 255, 255, 255, 53, 72, 57, 60, 61, 61, 64, 70, 32.65287 + 70, 66, 76, 77, 79, 82, 86, 89, 91, 90, 88, 87, 87, 90, 94, 97, 32.65288 + 94, 93, 90, 97, 100, 95, 92, 94, 97, 99, 98, 96, 92, 92, 94, 96, 32.65289 + 95, 94, 97, 93, 87, 84, 84, 84, 82, 80, 82, 83, 85, 86, 87, 88, 32.65290 + 88, 89, 93, 96, 95, 93, 96, 102, 102, 97, 96, 94, 94, 93, 94, 94, 32.65291 + 95, 95, 98, 101, 103, 104, 103, 104, 106, 109, 108, 108, 107, 106, 102, 99, 32.65292 + 95, 94, 92, 94, 93, 88, 81, 73, 69, 69, 61, 59, 59, 65, 68, 69, 32.65293 + 69, 71, 66, 67, 67, 68, 67, 68, 69, 70, 72, 73, 77, 79, 82, 89, 32.65294 + 96, 100, 100, 95, 90, 93, 98, 101, 100, 97, 97, 96, 100, 108, 115, 123, 32.65295 + 132, 139, 255, 255, 255, 255, 67, 63, 74, 65, 69, 70, 71, 75, 79, 78, 32.65296 + 73, 77, 78, 80, 82, 85, 87, 88, 87, 91, 89, 87, 89, 92, 94, 94, 32.65297 + 94, 92, 98, 99, 94, 90, 93, 96, 96, 93, 93, 91, 92, 94, 96, 97, 32.65298 + 96, 100, 93, 85, 85, 91, 94, 91, 88, 88, 90, 90, 92, 93, 93, 93, 32.65299 + 93, 95, 98, 97, 96, 99, 104, 104, 100, 101, 100, 100, 101, 102, 104, 106, 32.65300 + 107, 104, 106, 108, 109, 108, 108, 110, 112, 108, 108, 108, 108, 107, 104, 103, 32.65301 + 102, 102, 102, 102, 98, 91, 86, 81, 80, 68, 65, 63, 66, 67, 65, 64, 32.65302 + 65, 70, 67, 63, 62, 63, 66, 69, 71, 71, 71, 72, 72, 76, 83, 90, 32.65303 + 97, 103, 98, 93, 94, 98, 103, 103, 101, 102, 102, 105, 112, 115, 116, 120, 32.65304 + 126, 255, 255, 255, 255, 69, 67, 69, 70, 74, 76, 77, 80, 83, 80, 75, 32.65305 + 80, 80, 81, 83, 85, 86, 86, 86, 91, 89, 87, 86, 88, 90, 91, 93, 32.65306 + 97, 100, 100, 93, 89, 90, 91, 90, 91, 91, 91, 93, 95, 97, 99, 99, 32.65307 + 98, 94, 90, 91, 95, 97, 95, 92, 92, 93, 93, 94, 95, 95, 94, 94, 32.65308 + 97, 97, 98, 98, 100, 104, 103, 101, 99, 99, 99, 100, 101, 102, 105, 106, 32.65309 + 104, 104, 106, 106, 106, 106, 106, 107, 107, 107, 107, 108, 108, 108, 107, 107, 32.65310 + 104, 105, 103, 100, 96, 91, 87, 86, 77, 71, 66, 67, 66, 62, 61, 62, 32.65311 + 70, 66, 61, 60, 63, 68, 70, 70, 72, 72, 72, 73, 74, 77, 82, 86, 32.65312 + 98, 95, 93, 92, 92, 96, 100, 103, 108, 107, 110, 116, 119, 121, 125, 130, 32.65313 + 255, 255, 255, 88, 81, 71, 71, 75, 78, 80, 80, 81, 84, 81, 76, 85, 32.65314 + 86, 87, 88, 88, 89, 90, 90, 90, 89, 86, 84, 84, 85, 87, 89, 94, 32.65315 + 97, 96, 91, 89, 91, 91, 89, 90, 92, 93, 95, 97, 98, 100, 101, 93, 32.65316 + 95, 96, 97, 97, 95, 94, 94, 94, 95, 95, 96, 96, 96, 95, 94, 98, 32.65317 + 97, 97, 100, 102, 103, 103, 103, 100, 100, 99, 99, 99, 99, 100, 101, 108, 32.65318 + 107, 108, 108, 109, 109, 109, 108, 105, 105, 105, 107, 107, 108, 108, 109, 101, 32.65319 + 100, 100, 99, 96, 93, 89, 87, 77, 71, 66, 67, 67, 65, 66, 68, 66, 32.65320 + 64, 62, 64, 68, 71, 71, 69, 71, 74, 77, 79, 79, 79, 81, 84, 87, 32.65321 + 90, 92, 88, 84, 84, 93, 101, 109, 108, 112, 120, 126, 132, 139, 147, 255, 32.65322 + 255, 255, 78, 89, 78, 80, 81, 83, 84, 82, 83, 86, 84, 79, 85, 85, 32.65323 + 86, 87, 87, 88, 89, 89, 89, 88, 87, 84, 82, 81, 83, 85, 86, 90, 32.65324 + 91, 89, 90, 95, 96, 93, 91, 94, 96, 97, 97, 98, 99, 101, 91, 95, 32.65325 + 98, 99, 97, 94, 94, 96, 98, 98, 98, 99, 99, 98, 96, 96, 100, 96, 32.65326 + 97, 102, 104, 103, 102, 104, 104, 104, 103, 102, 101, 101, 101, 101, 110, 108, 32.65327 + 107, 109, 111, 112, 111, 109, 106, 105, 105, 105, 105, 106, 107, 108, 105, 105, 32.65328 + 103, 103, 102, 101, 97, 95, 89, 81, 74, 72, 68, 64, 65, 67, 66, 65, 32.65329 + 66, 69, 71, 72, 71, 70, 70, 74, 80, 83, 86, 86, 88, 89, 80, 86, 32.65330 + 88, 86, 80, 81, 89, 97, 104, 104, 111, 123, 132, 141, 153, 162, 255, 255, 32.65331 + 198, 80, 88, 85, 86, 85, 86, 85, 82, 84, 87, 85, 81, 82, 82, 82, 32.65332 + 83, 85, 86, 86, 87, 89, 89, 89, 85, 81, 81, 82, 85, 84, 86, 87, 32.65333 + 86, 90, 96, 98, 96, 91, 94, 97, 97, 96, 95, 96, 98, 96, 95, 93, 32.65334 + 94, 96, 98, 99, 99, 99, 99, 99, 99, 98, 97, 96, 95, 103, 98, 98, 32.65335 + 104, 107, 106, 105, 108, 105, 104, 103, 102, 102, 102, 102, 103, 105, 104, 103, 32.65336 + 105, 109, 110, 109, 106, 108, 106, 106, 105, 105, 106, 106, 107, 110, 109, 107, 32.65337 + 109, 110, 109, 105, 102, 106, 97, 84, 78, 71, 64, 62, 63, 70, 71, 72, 32.65338 + 73, 71, 70, 71, 72, 70, 73, 78, 81, 83, 85, 88, 90, 81, 83, 84, 32.65339 + 85, 84, 86, 89, 93, 99, 102, 112, 128, 139, 149, 161, 198, 255, 255, 90, 32.65340 + 90, 84, 88, 83, 87, 87, 84, 81, 82, 86, 85, 81, 84, 85, 85, 86, 32.65341 + 88, 89, 89, 90, 89, 91, 90, 88, 83, 81, 82, 85, 85, 87, 87, 86, 32.65342 + 90, 95, 97, 94, 91, 94, 97, 97, 94, 92, 93, 95, 101, 95, 88, 89, 32.65343 + 96, 102, 104, 103, 98, 98, 98, 97, 95, 95, 94, 93, 106, 100, 99, 105, 32.65344 + 109, 107, 106, 110, 101, 101, 100, 100, 100, 100, 101, 102, 104, 102, 102, 104, 32.65345 + 107, 110, 109, 105, 109, 107, 107, 106, 105, 104, 106, 106, 107, 106, 105, 106, 32.65346 + 108, 107, 103, 100, 106, 96, 86, 79, 75, 71, 69, 72, 74, 75, 76, 74, 32.65347 + 70, 68, 70, 73, 72, 73, 75, 76, 77, 78, 82, 86, 87, 84, 82, 85, 32.65348 + 91, 94, 92, 90, 97, 102, 114, 132, 145, 153, 163, 255, 255, 255, 84, 83, 32.65349 + 90, 92, 88, 84, 85, 87, 86, 84, 82, 82, 83, 82, 83, 83, 86, 89, 32.65350 + 90, 89, 87, 86, 86, 87, 87, 87, 87, 87, 87, 88, 90, 92, 94, 95, 32.65351 + 98, 99, 99, 90, 95, 100, 103, 103, 101, 98, 97, 94, 90, 90, 95, 97, 32.65352 + 95, 97, 103, 101, 100, 100, 101, 102, 101, 101, 101, 102, 102, 101, 103, 105, 32.65353 + 107, 106, 105, 103, 102, 101, 100, 101, 101, 101, 102, 106, 102, 98, 99, 103, 32.65354 + 106, 107, 106, 101, 102, 105, 107, 105, 102, 105, 111, 106, 108, 108, 110, 109, 32.65355 + 110, 109, 108, 103, 106, 103, 95, 89, 85, 80, 74, 76, 76, 75, 74, 72, 32.65356 + 70, 70, 69, 65, 77, 80, 75, 77, 88, 89, 79, 78, 85, 81, 77, 83, 32.65357 + 88, 96, 110, 101, 100, 111, 142, 165, 162, 162, 255, 255, 255, 83, 88, 87, 32.65358 + 84, 88, 84, 85, 86, 86, 84, 82, 82, 83, 84, 84, 84, 87, 90, 91, 32.65359 + 89, 87, 86, 87, 86, 87, 86, 87, 87, 87, 89, 90, 92, 94, 96, 96, 32.65360 + 97, 96, 95, 95, 93, 92, 91, 94, 99, 103, 96, 92, 91, 96, 97, 95, 32.65361 + 96, 101, 98, 98, 98, 98, 98, 99, 99, 99, 102, 100, 99, 101, 104, 105, 32.65362 + 105, 104, 103, 103, 102, 102, 103, 102, 102, 102, 109, 107, 105, 105, 109, 111, 32.65363 + 110, 108, 109, 105, 104, 107, 107, 104, 103, 105, 108, 108, 109, 108, 108, 107, 32.65364 + 106, 106, 105, 107, 104, 96, 93, 93, 91, 88, 85, 84, 82, 80, 76, 74, 32.65365 + 69, 66, 72, 80, 82, 79, 82, 91, 92, 88, 82, 90, 87, 82, 90, 96, 32.65366 + 105, 119, 122, 128, 128, 139, 169, 186, 204, 255, 255, 146, 82, 92, 85, 76, 32.65367 + 87, 83, 85, 86, 86, 84, 82, 82, 83, 84, 84, 85, 88, 89, 90, 88, 32.65368 + 86, 88, 87, 86, 85, 85, 86, 87, 88, 89, 90, 93, 95, 96, 95, 93, 32.65369 + 92, 97, 96, 92, 89, 89, 93, 99, 105, 98, 95, 94, 96, 96, 95, 96, 32.65370 + 99, 98, 97, 98, 98, 98, 98, 99, 99, 102, 100, 100, 102, 105, 106, 105, 32.65371 + 104, 102, 103, 104, 105, 105, 103, 103, 102, 107, 105, 104, 105, 107, 108, 108, 32.65372 + 105, 113, 105, 101, 105, 108, 106, 103, 102, 107, 106, 106, 106, 106, 106, 107, 32.65373 + 108, 106, 108, 105, 100, 99, 103, 105, 103, 95, 93, 90, 90, 89, 84, 76, 32.65374 + 70, 77, 78, 80, 83, 86, 89, 91, 92, 82, 89, 86, 84, 93, 99, 105, 32.65375 + 119, 121, 133, 136, 148, 175, 192, 255, 255, 255, 156, 84, 92, 86, 74, 83, 32.65376 + 82, 84, 86, 86, 84, 83, 82, 83, 86, 86, 87, 89, 90, 90, 88, 86, 32.65377 + 89, 88, 86, 84, 84, 85, 87, 89, 90, 92, 94, 96, 97, 95, 92, 91, 32.65378 + 93, 96, 98, 100, 99, 99, 99, 100, 97, 96, 95, 96, 97, 97, 98, 100, 32.65379 + 100, 99, 100, 100, 100, 100, 101, 101, 103, 102, 101, 102, 105, 107, 106, 105, 32.65380 + 102, 104, 106, 107, 107, 105, 104, 102, 104, 103, 102, 102, 103, 105, 107, 106, 32.65381 + 107, 103, 100, 105, 108, 107, 105, 107, 105, 104, 104, 105, 106, 108, 110, 111, 32.65382 + 106, 108, 107, 104, 104, 109, 110, 109, 102, 100, 98, 101, 101, 98, 89, 83, 32.65383 + 82, 80, 83, 89, 90, 88, 88, 92, 83, 90, 89, 89, 97, 99, 102, 113, 32.65384 + 106, 118, 136, 162, 181, 177, 255, 255, 255, 166, 87, 86, 87, 79, 78, 81, 32.65385 + 84, 86, 86, 83, 82, 83, 84, 87, 87, 86, 88, 90, 89, 87, 85, 89, 32.65386 + 87, 85, 84, 83, 85, 87, 88, 92, 93, 95, 96, 95, 94, 92, 90, 91, 32.65387 + 96, 100, 103, 103, 101, 99, 99, 94, 96, 95, 95, 97, 100, 102, 102, 99, 32.65388 + 99, 99, 100, 101, 100, 100, 100, 104, 104, 103, 105, 107, 109, 108, 107, 103, 32.65389 + 104, 106, 107, 108, 106, 104, 102, 105, 104, 102, 101, 101, 104, 108, 111, 106, 32.65390 + 106, 107, 110, 109, 107, 109, 115, 108, 108, 108, 108, 108, 108, 109, 110, 105, 32.65391 + 109, 109, 107, 107, 110, 109, 107, 106, 104, 104, 106, 107, 106, 100, 95, 92, 32.65392 + 89, 91, 94, 94, 89, 85, 88, 87, 96, 96, 97, 106, 105, 103, 110, 108, 32.65393 + 122, 139, 165, 185, 210, 255, 255, 255, 155, 89, 82, 86, 86, 77, 80, 83, 32.65394 + 85, 85, 83, 82, 83, 84, 88, 87, 86, 87, 89, 88, 86, 83, 87, 86, 32.65395 + 85, 85, 84, 85, 86, 87, 92, 93, 93, 93, 93, 93, 91, 90, 92, 95, 32.65396 + 95, 96, 95, 96, 99, 101, 93, 96, 96, 95, 97, 102, 104, 103, 97, 97, 32.65397 + 97, 97, 97, 98, 98, 98, 104, 103, 103, 104, 107, 108, 107, 107, 104, 105, 32.65398 + 106, 106, 107, 106, 104, 103, 103, 102, 101, 99, 97, 98, 102, 106, 108, 109, 32.65399 + 112, 114, 110, 105, 109, 116, 113, 113, 112, 112, 110, 108, 106, 105, 106, 110, 32.65400 + 111, 109, 109, 110, 107, 103, 109, 109, 109, 108, 107, 107, 107, 107, 105, 103, 32.65401 + 100, 93, 89, 84, 81, 79, 88, 96, 95, 98, 107, 109, 108, 114, 120, 140, 32.65402 + 148, 162, 196, 255, 255, 255, 255, 125, 89, 81, 83, 90, 77, 80, 83, 84, 32.65403 + 84, 83, 83, 82, 84, 87, 87, 86, 87, 88, 87, 84, 81, 86, 86, 86, 32.65404 + 85, 86, 85, 85, 85, 91, 90, 89, 89, 88, 89, 90, 91, 92, 93, 92, 32.65405 + 91, 91, 93, 97, 101, 95, 99, 98, 95, 97, 102, 104, 101, 97, 96, 97, 32.65406 + 97, 97, 98, 98, 98, 103, 101, 102, 103, 106, 107, 106, 105, 105, 105, 105, 32.65407 + 105, 104, 104, 104, 104, 101, 102, 103, 101, 96, 93, 92, 94, 105, 104, 105, 32.65408 + 109, 109, 106, 108, 112, 112, 113, 114, 115, 114, 111, 108, 106, 111, 114, 113, 32.65409 + 109, 109, 110, 109, 106, 112, 113, 115, 113, 111, 114, 120, 127, 125, 124, 112, 32.65410 + 94, 84, 85, 85, 80, 87, 93, 91, 95, 108, 116, 120, 131, 137, 159, 169, 32.65411 + 178, 205, 255, 255, 255, 151, 97, 86, 81, 79, 90, 80, 80, 82, 84, 83, 32.65412 + 82, 82, 82, 83, 86, 85, 85, 86, 87, 86, 83, 80, 87, 86, 87, 87, 32.65413 + 87, 86, 84, 84, 89, 88, 86, 85, 84, 86, 89, 90, 89, 92, 94, 95, 32.65414 + 95, 95, 96, 97, 97, 102, 100, 96, 96, 102, 103, 99, 99, 99, 99, 100, 32.65415 + 101, 100, 101, 100, 101, 101, 100, 102, 104, 105, 104, 103, 106, 105, 104, 103, 32.65416 + 103, 103, 103, 105, 104, 108, 110, 109, 102, 95, 90, 88, 97, 92, 92, 100, 32.65417 + 106, 108, 107, 108, 105, 108, 112, 116, 117, 116, 114, 113, 115, 117, 114, 110, 32.65418 + 108, 112, 113, 112, 114, 117, 121, 119, 117, 123, 135, 147, 255, 255, 213, 101, 32.65419 + 88, 94, 97, 88, 91, 95, 93, 97, 114, 127, 137, 151, 155, 173, 190, 207, 32.65420 + 225, 255, 255, 255, 120, 99, 91, 74, 82, 84, 80, 78, 80, 80, 82, 84, 32.65421 + 86, 86, 87, 83, 85, 88, 88, 89, 88, 90, 91, 86, 92, 91, 84, 84, 32.65422 + 92, 94, 89, 89, 85, 84, 87, 87, 86, 89, 93, 87, 92, 95, 98, 98, 32.65423 + 98, 98, 99, 98, 98, 97, 97, 98, 99, 100, 101, 100, 100, 100, 100, 100, 32.65424 + 100, 101, 101, 102, 103, 104, 105, 105, 106, 106, 106, 104, 105, 103, 104, 103, 32.65425 + 102, 101, 100, 97, 100, 102, 104, 102, 98, 93, 91, 79, 86, 86, 82, 92, 32.65426 + 107, 106, 94, 99, 104, 108, 112, 114, 116, 117, 118, 113, 114, 111, 107, 111, 32.65427 + 119, 121, 116, 123, 105, 117, 139, 123, 159, 207, 255, 255, 255, 255, 255, 146, 32.65428 + 94, 79, 87, 94, 109, 110, 110, 129, 149, 160, 169, 182, 201, 216, 254, 255, 32.65429 + 255, 255, 255, 97, 88, 87, 75, 84, 86, 83, 82, 82, 83, 84, 84, 85, 32.65430 + 85, 85, 84, 85, 87, 86, 85, 83, 84, 86, 88, 90, 89, 86, 87, 91, 32.65431 + 92, 90, 90, 86, 84, 87, 87, 86, 88, 94, 89, 93, 96, 97, 97, 97, 32.65432 + 98, 99, 99, 99, 97, 98, 99, 100, 101, 102, 101, 100, 100, 101, 101, 101, 32.65433 + 101, 101, 101, 101, 102, 103, 104, 105, 104, 104, 105, 105, 106, 105, 104, 102, 32.65434 + 100, 99, 95, 96, 98, 102, 104, 105, 103, 103, 95, 95, 87, 79, 81, 91, 32.65435 + 94, 89, 95, 99, 104, 109, 112, 115, 118, 119, 117, 115, 117, 124, 124, 117, 32.65436 + 117, 123, 115, 162, 116, 145, 174, 179, 255, 255, 255, 255, 255, 255, 255, 115, 32.65437 + 108, 109, 103, 113, 113, 117, 137, 161, 175, 181, 195, 219, 224, 255, 255, 255, 32.65438 + 255, 255, 85, 86, 87, 78, 84, 81, 79, 85, 85, 85, 85, 85, 85, 84, 32.65439 + 85, 84, 85, 87, 86, 84, 83, 83, 84, 91, 88, 87, 90, 90, 88, 89, 32.65440 + 92, 90, 86, 85, 88, 88, 86, 88, 93, 92, 95, 96, 96, 94, 95, 98, 32.65441 + 100, 98, 98, 98, 98, 99, 100, 102, 102, 101, 101, 101, 101, 101, 102, 102, 32.65442 + 102, 100, 100, 101, 102, 103, 103, 103, 103, 105, 106, 107, 107, 106, 103, 101, 32.65443 + 99, 87, 87, 87, 92, 100, 108, 111, 111, 106, 100, 91, 82, 78, 79, 83, 32.65444 + 85, 90, 93, 99, 105, 110, 114, 116, 116, 121, 112, 116, 129, 126, 114, 115, 32.65445 + 130, 120, 151, 140, 182, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 32.65446 + 127, 117, 121, 122, 127, 149, 179, 195, 198, 187, 218, 250, 255, 255, 255, 255, 32.65447 + 255, 121, 91, 89, 82, 87, 81, 81, 84, 84, 84, 85, 85, 85, 85, 85, 32.65448 + 84, 85, 86, 87, 87, 87, 88, 90, 93, 86, 86, 93, 93, 87, 87, 94, 32.65449 + 90, 87, 86, 89, 88, 87, 88, 93, 95, 96, 97, 96, 94, 95, 98, 100, 32.65450 + 98, 98, 98, 98, 99, 100, 101, 102, 102, 102, 101, 102, 102, 102, 102, 103, 32.65451 + 101, 102, 103, 103, 103, 103, 102, 103, 103, 104, 106, 108, 107, 106, 104, 102, 32.65452 + 88, 84, 82, 85, 95, 103, 107, 108, 114, 109, 104, 99, 91, 81, 78, 81, 32.65453 + 83, 87, 94, 102, 108, 112, 112, 111, 122, 115, 114, 122, 124, 119, 125, 138, 32.65454 + 151, 132, 171, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 32.65455 + 124, 125, 128, 136, 155, 189, 209, 208, 189, 202, 243, 241, 249, 255, 255, 255, 32.65456 + 216, 90, 87, 86, 95, 89, 94, 80, 81, 82, 84, 84, 85, 86, 87, 86, 32.65457 + 87, 87, 87, 87, 87, 89, 91, 93, 87, 87, 94, 94, 87, 86, 92, 90, 32.65458 + 87, 86, 89, 89, 87, 88, 92, 95, 96, 96, 95, 93, 94, 97, 100, 97, 32.65459 + 97, 97, 97, 97, 98, 100, 100, 101, 102, 102, 103, 103, 103, 103, 102, 104, 32.65460 + 104, 105, 106, 106, 105, 105, 104, 101, 103, 106, 108, 109, 108, 107, 106, 100, 32.65461 + 94, 89, 86, 87, 90, 91, 92, 106, 108, 110, 112, 105, 90, 79, 77, 75, 32.65462 + 78, 86, 97, 107, 112, 113, 111, 121, 121, 121, 120, 125, 131, 136, 135, 141, 32.65463 + 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 32.65464 + 125, 135, 146, 158, 191, 216, 215, 199, 238, 210, 202, 255, 255, 255, 255, 255, 32.65465 + 91, 83, 84, 92, 85, 91, 79, 80, 81, 82, 83, 85, 87, 88, 90, 90, 32.65466 + 88, 85, 83, 83, 85, 87, 92, 90, 90, 93, 93, 89, 87, 89, 91, 88, 32.65467 + 87, 90, 90, 87, 87, 90, 94, 95, 96, 96, 95, 95, 98, 100, 98, 98, 32.65468 + 98, 97, 98, 99, 101, 101, 102, 102, 103, 103, 103, 103, 103, 103, 107, 107, 32.65469 + 107, 107, 107, 107, 106, 106, 103, 104, 106, 107, 108, 109, 109, 109, 108, 103, 32.65470 + 96, 86, 78, 72, 69, 69, 72, 80, 90, 99, 102, 99, 91, 86, 75, 76, 32.65471 + 80, 89, 101, 111, 115, 115, 113, 123, 126, 125, 127, 136, 139, 135, 156, 255, 32.65472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 32.65473 + 160, 167, 167, 193, 222, 221, 213, 209, 255, 255, 255, 255, 255, 255, 255, 95, 32.65474 + 82, 83, 90, 78, 83, 82, 83, 83, 84, 85, 87, 87, 86, 91, 92, 91, 32.65475 + 88, 84, 84, 86, 88, 89, 93, 93, 91, 90, 91, 90, 86, 91, 88, 89, 32.65476 + 92, 91, 87, 87, 90, 90, 93, 95, 97, 97, 97, 99, 100, 100, 100, 99, 32.65477 + 99, 100, 101, 102, 103, 103, 103, 103, 103, 103, 104, 104, 103, 107, 107, 107, 32.65478 + 108, 108, 108, 107, 106, 108, 107, 107, 107, 107, 107, 108, 109, 107, 106, 102, 32.65479 + 92, 78, 68, 65, 66, 64, 73, 77, 82, 92, 105, 106, 99, 91, 85, 79, 32.65480 + 81, 90, 101, 109, 112, 116, 123, 129, 131, 130, 136, 151, 255, 255, 255, 255, 32.65481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 80, 32.65483 + 87, 97, 83, 88, 87, 86, 85, 86, 86, 86, 85, 85, 91, 91, 91, 90, 32.65484 + 88, 89, 93, 95, 88, 95, 96, 90, 88, 93, 91, 84, 91, 89, 89, 92, 32.65485 + 91, 88, 87, 89, 88, 92, 95, 98, 98, 98, 99, 99, 102, 102, 101, 101, 32.65486 + 102, 103, 104, 105, 103, 103, 103, 103, 104, 103, 103, 103, 106, 106, 106, 107, 32.65487 + 107, 107, 106, 106, 113, 111, 108, 106, 105, 105, 107, 108, 107, 111, 110, 103, 32.65488 + 90, 80, 78, 80, 95, 98, 91, 81, 89, 106, 110, 100, 109, 97, 82, 77, 32.65489 + 82, 92, 102, 107, 131, 129, 134, 139, 136, 255, 255, 255, 255, 255, 255, 255, 32.65490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 199, 87, 88, 32.65492 + 90, 90, 89, 87, 85, 83, 82, 84, 88, 90, 89, 93, 91, 89, 88, 88, 32.65493 + 89, 91, 92, 95, 95, 94, 94, 93, 92, 90, 89, 86, 91, 94, 95, 92, 32.65494 + 91, 93, 95, 100, 98, 96, 94, 95, 96, 98, 99, 104, 104, 102, 103, 104, 32.65495 + 105, 104, 103, 103, 104, 104, 105, 107, 107, 107, 106, 101, 104, 108, 111, 111, 32.65496 + 110, 106, 104, 111, 110, 107, 105, 104, 103, 104, 105, 106, 107, 105, 103, 100, 32.65497 + 97, 94, 94, 104, 102, 96, 94, 102, 113, 114, 109, 108, 117, 108, 104, 94, 32.65498 + 87, 102, 104, 120, 130, 138, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 85, 86, 90, 32.65501 + 93, 93, 89, 87, 85, 84, 86, 90, 92, 92, 95, 93, 90, 88, 87, 88, 32.65502 + 89, 90, 95, 94, 92, 91, 91, 93, 93, 94, 91, 91, 91, 92, 94, 95, 32.65503 + 94, 93, 98, 97, 95, 95, 96, 98, 100, 101, 101, 100, 99, 100, 101, 101, 32.65504 + 101, 101, 104, 103, 104, 105, 106, 106, 106, 106, 104, 105, 106, 107, 107, 107, 32.65505 + 106, 106, 108, 108, 105, 104, 102, 102, 101, 103, 105, 104, 102, 99, 96, 93, 32.65506 + 89, 88, 100, 103, 101, 100, 103, 111, 114, 112, 112, 120, 111, 111, 108, 107, 32.65507 + 124, 126, 122, 134, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 82, 82, 87, 92, 32.65510 + 94, 91, 88, 86, 88, 90, 93, 93, 94, 97, 95, 92, 88, 87, 88, 88, 32.65511 + 89, 95, 93, 91, 90, 90, 93, 96, 99, 95, 91, 88, 90, 95, 98, 96, 32.65512 + 93, 96, 96, 94, 95, 97, 99, 101, 102, 98, 98, 99, 99, 100, 100, 100, 32.65513 + 100, 104, 104, 105, 105, 105, 105, 106, 106, 105, 106, 105, 104, 104, 106, 107, 32.65514 + 108, 106, 106, 103, 103, 101, 101, 101, 101, 101, 102, 100, 98, 96, 95, 92, 32.65515 + 91, 98, 105, 107, 106, 106, 110, 113, 115, 117, 122, 113, 124, 137, 148, 174, 32.65516 + 180, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 80, 84, 89, 91, 32.65519 + 92, 88, 87, 90, 93, 94, 94, 96, 96, 94, 92, 89, 87, 88, 90, 91, 32.65520 + 94, 94, 93, 92, 92, 94, 96, 97, 96, 94, 91, 91, 94, 96, 97, 96, 32.65521 + 98, 97, 96, 97, 98, 99, 100, 101, 98, 100, 101, 101, 101, 101, 101, 103, 32.65522 + 104, 105, 104, 105, 104, 105, 106, 106, 106, 106, 105, 106, 106, 106, 107, 108, 32.65523 + 106, 106, 105, 103, 103, 102, 101, 102, 99, 100, 101, 103, 104, 104, 103, 103, 32.65524 + 101, 106, 109, 110, 109, 110, 112, 114, 118, 123, 124, 151, 179, 201, 232, 240, 32.65525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 81, 85, 88, 87, 91, 32.65528 + 86, 85, 92, 94, 93, 93, 97, 95, 93, 91, 90, 90, 90, 93, 94, 93, 32.65529 + 94, 95, 96, 96, 95, 94, 93, 96, 97, 97, 95, 92, 92, 96, 99, 99, 32.65530 + 99, 97, 97, 97, 97, 97, 97, 97, 99, 100, 101, 99, 99, 102, 104, 105, 32.65531 + 106, 105, 106, 105, 105, 106, 105, 104, 106, 108, 110, 110, 109, 107, 106, 107, 32.65532 + 107, 107, 107, 105, 105, 104, 104, 104, 104, 105, 107, 108, 109, 109, 110, 109, 32.65533 + 108, 107, 110, 111, 112, 111, 111, 117, 131, 146, 190, 225, 240, 255, 255, 255, 32.65534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 87, 87, 85, 91, 85, 32.65537 + 84, 93, 96, 93, 93, 98, 95, 93, 92, 90, 91, 92, 94, 96, 92, 94, 32.65538 + 97, 99, 99, 96, 94, 91, 95, 99, 100, 98, 93, 92, 96, 100, 99, 99, 32.65539 + 98, 97, 96, 95, 95, 94, 94, 97, 99, 99, 97, 97, 100, 104, 106, 107, 32.65540 + 106, 105, 105, 105, 105, 105, 103, 105, 108, 109, 109, 109, 107, 105, 107, 108, 32.65541 + 108, 109, 108, 107, 106, 106, 108, 108, 108, 108, 107, 105, 104, 103, 111, 105, 32.65542 + 102, 105, 110, 110, 111, 115, 121, 143, 171, 225, 253, 253, 253, 255, 255, 255, 32.65543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 194, 83, 85, 81, 92, 85, 85, 32.65546 + 95, 98, 94, 93, 99, 97, 95, 93, 91, 91, 91, 93, 95, 92, 93, 95, 32.65547 + 97, 98, 98, 97, 96, 97, 98, 99, 99, 97, 96, 96, 96, 97, 96, 96, 32.65548 + 96, 96, 95, 95, 94, 93, 97, 101, 101, 97, 97, 100, 105, 107, 107, 106, 32.65549 + 106, 105, 105, 105, 104, 104, 104, 104, 105, 105, 106, 106, 106, 107, 107, 108, 32.65550 + 110, 108, 108, 107, 106, 107, 107, 107, 107, 105, 103, 102, 100, 106, 102, 100, 32.65551 + 103, 104, 106, 114, 124, 132, 154, 183, 235, 254, 255, 255, 255, 255, 255, 255, 32.65552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 78, 81, 78, 93, 85, 85, 96, 32.65555 + 101, 95, 94, 101, 99, 97, 95, 93, 91, 90, 92, 93, 92, 93, 93, 95, 32.65556 + 96, 98, 100, 101, 100, 98, 96, 98, 102, 102, 98, 92, 94, 93, 94, 95, 32.65557 + 96, 96, 96, 95, 96, 100, 104, 104, 100, 99, 104, 109, 106, 106, 106, 106, 32.65558 + 105, 105, 105, 105, 105, 104, 101, 100, 100, 102, 105, 107, 106, 107, 108, 109, 32.65559 + 109, 109, 107, 106, 105, 105, 105, 105, 106, 105, 104, 103, 100, 98, 99, 102, 32.65560 + 100, 102, 116, 134, 142, 160, 182, 229, 253, 255, 255, 255, 255, 255, 255, 255, 32.65561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65563 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 76, 75, 94, 91, 91, 92, 95, 32.65564 + 95, 97, 98, 94, 100, 99, 91, 83, 88, 97, 103, 93, 94, 95, 96, 97, 32.65565 + 97, 97, 97, 98, 99, 98, 99, 99, 99, 99, 97, 98, 96, 95, 95, 96, 32.65566 + 97, 97, 96, 99, 100, 101, 101, 101, 103, 107, 109, 108, 104, 102, 102, 106, 32.65567 + 108, 107, 106, 99, 103, 106, 107, 104, 103, 105, 108, 104, 104, 104, 107, 110, 32.65568 + 112, 111, 109, 107, 108, 111, 108, 104, 103, 106, 109, 97, 107, 106, 103, 104, 32.65569 + 108, 121, 145, 150, 201, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65572 + 255, 255, 255, 255, 255, 255, 255, 255, 73, 82, 87, 87, 89, 93, 97, 98, 32.65573 + 98, 99, 97, 98, 93, 85, 81, 85, 90, 91, 93, 93, 94, 95, 96, 97, 32.65574 + 97, 97, 100, 99, 99, 99, 99, 100, 99, 98, 100, 98, 96, 97, 98, 99, 32.65575 + 99, 98, 98, 100, 101, 101, 101, 102, 104, 105, 108, 105, 104, 106, 109, 111, 32.65576 + 109, 107, 107, 109, 111, 111, 110, 110, 111, 111, 111, 111, 113, 114, 116, 116, 32.65577 + 115, 114, 111, 110, 109, 108, 107, 106, 104, 102, 101, 105, 102, 103, 106, 108, 32.65578 + 118, 141, 182, 218, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65581 + 255, 255, 255, 255, 255, 255, 255, 110, 83, 78, 82, 87, 92, 97, 99, 100, 32.65582 + 100, 104, 102, 95, 86, 83, 87, 88, 85, 91, 91, 93, 95, 96, 97, 97, 32.65583 + 97, 99, 99, 99, 99, 99, 100, 99, 99, 101, 99, 98, 99, 100, 101, 101, 32.65584 + 100, 100, 102, 104, 104, 103, 103, 104, 104, 107, 106, 107, 109, 111, 112, 110, 32.65585 + 108, 110, 110, 110, 111, 112, 112, 111, 110, 111, 113, 113, 113, 110, 108, 107, 32.65586 + 107, 112, 108, 105, 106, 108, 107, 101, 96, 102, 101, 97, 102, 110, 110, 123, 32.65587 + 150, 197, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65590 + 255, 255, 255, 255, 255, 255, 212, 72, 72, 78, 83, 87, 92, 98, 101, 101, 32.65591 + 105, 105, 99, 89, 84, 85, 86, 85, 91, 91, 93, 95, 97, 98, 99, 99, 32.65592 + 100, 100, 100, 100, 101, 101, 101, 100, 101, 100, 98, 99, 100, 102, 102, 101, 32.65593 + 104, 107, 109, 109, 108, 106, 106, 105, 103, 105, 106, 110, 110, 110, 107, 107, 32.65594 + 112, 110, 108, 110, 112, 114, 110, 106, 109, 109, 108, 104, 98, 94, 93, 94, 32.65595 + 102, 102, 101, 104, 105, 106, 101, 97, 98, 96, 94, 102, 111, 114, 136, 173, 32.65596 + 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65599 + 255, 255, 255, 255, 255, 255, 188, 67, 75, 81, 82, 85, 94, 100, 100, 97, 32.65600 + 101, 99, 88, 79, 79, 83, 86, 89, 91, 94, 96, 99, 101, 101, 102, 100, 32.65601 + 100, 101, 100, 101, 101, 102, 101, 101, 99, 98, 99, 100, 102, 103, 102, 106, 32.65602 + 108, 110, 110, 108, 107, 106, 106, 103, 106, 108, 111, 111, 111, 109, 109, 117, 32.65603 + 115, 112, 114, 115, 117, 112, 109, 107, 104, 99, 92, 86, 83, 82, 83, 87, 32.65604 + 93, 97, 101, 100, 101, 101, 103, 94, 96, 94, 99, 108, 117, 146, 188, 224, 32.65605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65606 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65608 + 255, 255, 255, 255, 255, 255, 189, 69, 77, 78, 81, 92, 97, 98, 95, 101, 32.65609 + 101, 89, 78, 77, 81, 86, 87, 89, 92, 96, 98, 101, 102, 102, 101, 101, 32.65610 + 101, 100, 101, 102, 101, 102, 101, 99, 98, 99, 101, 103, 104, 103, 104, 106, 32.65611 + 107, 107, 105, 104, 105, 106, 106, 110, 113, 114, 113, 112, 113, 113, 115, 114, 32.65612 + 113, 113, 113, 112, 110, 107, 102, 94, 85, 78, 75, 76, 77, 77, 81, 87, 32.65613 + 93, 96, 95, 96, 100, 103, 91, 99, 96, 97, 108, 125, 154, 190, 255, 255, 32.65614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65617 + 255, 255, 255, 255, 255, 255, 60, 74, 77, 82, 92, 96, 93, 98, 102, 99, 32.65618 + 88, 80, 78, 80, 81, 83, 86, 89, 93, 97, 99, 100, 101, 101, 101, 100, 32.65619 + 101, 101, 102, 103, 103, 102, 101, 100, 101, 103, 105, 106, 105, 104, 105, 106, 32.65620 + 105, 104, 104, 106, 108, 108, 111, 113, 113, 111, 111, 113, 116, 112, 113, 114, 32.65621 + 112, 110, 107, 107, 107, 98, 87, 74, 69, 72, 78, 81, 81, 84, 85, 87, 32.65622 + 89, 90, 92, 93, 95, 89, 99, 98, 99, 119, 144, 168, 255, 255, 255, 255, 32.65623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65624 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65625 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65626 + 255, 255, 255, 255, 255, 188, 71, 77, 83, 94, 96, 91, 98, 97, 91, 81, 32.65627 + 75, 75, 72, 69, 80, 83, 86, 90, 95, 97, 98, 100, 101, 101, 101, 101, 32.65628 + 102, 103, 103, 104, 104, 102, 101, 103, 105, 107, 108, 107, 106, 107, 107, 106, 32.65629 + 105, 106, 108, 111, 107, 109, 111, 110, 108, 108, 112, 115, 115, 118, 119, 117, 32.65630 + 113, 109, 110, 111, 102, 89, 75, 70, 78, 88, 93, 93, 91, 87, 84, 85, 32.65631 + 88, 90, 89, 86, 88, 100, 99, 103, 132, 164, 181, 255, 255, 255, 255, 255, 32.65632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65635 + 255, 255, 255, 255, 255, 186, 71, 83, 84, 87, 94, 86, 87, 87, 85, 79, 32.65636 + 76, 73, 75, 80, 83, 86, 89, 91, 94, 96, 98, 95, 95, 94, 95, 99, 32.65637 + 101, 100, 101, 103, 103, 104, 105, 104, 105, 106, 106, 103, 102, 101, 101, 104, 32.65638 + 108, 113, 115, 108, 112, 115, 113, 108, 108, 113, 118, 113, 111, 111, 113, 111, 32.65639 + 108, 106, 106, 101, 90, 85, 88, 91, 90, 90, 92, 104, 93, 87, 91, 90, 32.65640 + 84, 84, 89, 90, 104, 110, 111, 123, 183, 230, 255, 255, 255, 255, 255, 255, 32.65641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65644 + 255, 255, 255, 255, 255, 55, 70, 78, 85, 88, 94, 94, 90, 84, 77, 73, 32.65645 + 73, 75, 77, 80, 83, 85, 88, 91, 94, 97, 97, 95, 95, 96, 98, 99, 32.65646 + 98, 99, 103, 104, 104, 105, 104, 105, 105, 105, 103, 103, 102, 103, 105, 108, 32.65647 + 111, 113, 100, 103, 107, 110, 112, 112, 112, 113, 108, 109, 108, 106, 105, 105, 32.65648 + 104, 101, 96, 89, 85, 87, 88, 86, 89, 93, 104, 94, 85, 87, 89, 91, 32.65649 + 91, 94, 98, 102, 103, 114, 145, 213, 255, 255, 255, 255, 255, 255, 255, 255, 32.65650 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65653 + 255, 255, 255, 255, 182, 55, 74, 85, 85, 97, 94, 88, 81, 74, 70, 72, 32.65654 + 75, 73, 75, 77, 80, 84, 89, 92, 94, 98, 97, 96, 96, 97, 97, 97, 32.65655 + 98, 104, 104, 104, 104, 104, 104, 104, 104, 103, 104, 104, 106, 107, 108, 109, 32.65656 + 110, 112, 110, 107, 107, 110, 112, 111, 110, 107, 112, 111, 104, 103, 107, 107, 32.65657 + 100, 102, 99, 98, 98, 96, 96, 102, 108, 104, 99, 90, 85, 89, 96, 98, 32.65658 + 94, 98, 100, 103, 121, 163, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65662 + 255, 255, 255, 255, 185, 69, 85, 88, 89, 87, 84, 78, 72, 71, 71, 74, 32.65663 + 72, 72, 73, 77, 82, 88, 91, 92, 95, 96, 96, 96, 96, 96, 98, 99, 32.65664 + 104, 104, 104, 104, 103, 103, 103, 103, 104, 105, 106, 108, 109, 108, 108, 107, 32.65665 + 119, 113, 102, 96, 95, 101, 107, 113, 106, 113, 111, 104, 101, 108, 106, 98, 32.65666 + 95, 98, 98, 95, 92, 91, 98, 104, 102, 105, 101, 90, 89, 96, 98, 93, 32.65667 + 98, 107, 119, 135, 175, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65668 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65669 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65671 + 255, 255, 255, 255, 61, 80, 89, 84, 85, 85, 82, 77, 73, 71, 72, 72, 32.65672 + 72, 72, 76, 81, 87, 90, 91, 91, 93, 96, 97, 97, 97, 100, 102, 103, 32.65673 + 103, 103, 104, 103, 103, 103, 104, 104, 105, 107, 109, 110, 109, 107, 105, 102, 32.65674 + 99, 92, 85, 79, 83, 92, 102, 101, 108, 108, 102, 100, 105, 101, 95, 98, 32.65675 + 100, 101, 98, 95, 93, 94, 94, 94, 105, 109, 99, 93, 95, 99, 98, 106, 32.65676 + 111, 126, 145, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65680 + 255, 255, 255, 255, 192, 80, 86, 89, 90, 88, 83, 77, 71, 69, 73, 72, 32.65681 + 69, 73, 80, 86, 89, 89, 89, 92, 96, 97, 96, 97, 100, 104, 101, 101, 32.65682 + 102, 103, 103, 104, 104, 105, 104, 106, 107, 109, 110, 109, 108, 107, 98, 100, 32.65683 + 100, 92, 80, 72, 72, 74, 98, 100, 104, 106, 106, 105, 102, 101, 104, 105, 32.65684 + 106, 105, 108, 255, 101, 91, 87, 99, 107, 105, 99, 99, 103, 108, 109, 105, 32.65685 + 121, 146, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65687 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65689 + 255, 255, 255, 255, 66, 85, 88, 90, 89, 85, 79, 73, 72, 75, 71, 67, 32.65690 + 71, 78, 84, 85, 85, 91, 95, 99, 98, 96, 96, 99, 104, 99, 100, 101, 32.65691 + 102, 103, 104, 105, 106, 105, 105, 107, 108, 109, 110, 110, 109, 108, 108, 108, 32.65692 + 101, 89, 77, 68, 64, 85, 83, 91, 104, 107, 100, 98, 104, 101, 104, 107, 32.65693 + 255, 255, 255, 255, 204, 93, 93, 98, 104, 105, 104, 105, 111, 110, 107, 133, 32.65694 + 159, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65695 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65696 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65698 + 255, 255, 255, 188, 77, 82, 85, 86, 84, 80, 78, 77, 76, 71, 67, 69, 32.65699 + 76, 82, 83, 82, 91, 97, 100, 99, 95, 94, 98, 101, 99, 99, 100, 102, 32.65700 + 104, 105, 106, 106, 105, 106, 106, 107, 109, 111, 112, 111, 109, 105, 102, 98, 32.65701 + 93, 88, 81, 76, 65, 62, 71, 93, 100, 90, 88, 100, 121, 124, 173, 255, 32.65702 + 255, 255, 255, 255, 205, 97, 94, 104, 110, 108, 106, 112, 115, 124, 164, 185, 32.65703 + 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65704 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65707 + 255, 255, 255, 55, 76, 80, 87, 87, 80, 86, 74, 85, 76, 71, 71, 71, 32.65708 + 71, 77, 85, 93, 91, 89, 92, 97, 99, 99, 98, 100, 102, 101, 97, 98, 32.65709 + 104, 109, 107, 107, 106, 103, 101, 110, 119, 117, 107, 111, 108, 105, 102, 98, 32.65710 + 91, 81, 74, 69, 64, 62, 70, 84, 95, 100, 100, 115, 172, 255, 255, 255, 32.65711 + 255, 255, 255, 255, 255, 122, 112, 112, 115, 119, 122, 129, 132, 190, 223, 255, 32.65712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65713 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65716 + 255, 255, 182, 59, 66, 80, 83, 80, 87, 79, 82, 79, 76, 75, 73, 70, 32.65717 + 75, 83, 88, 88, 89, 94, 98, 100, 99, 96, 99, 102, 101, 98, 101, 106, 32.65718 + 110, 108, 106, 106, 105, 104, 109, 117, 117, 109, 109, 107, 104, 102, 99, 94, 32.65719 + 83, 77, 84, 79, 74, 76, 84, 97, 107, 115, 156, 255, 255, 255, 255, 255, 32.65720 + 255, 255, 255, 255, 255, 147, 144, 141, 140, 141, 182, 172, 200, 213, 255, 255, 32.65721 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65725 + 255, 255, 186, 57, 75, 84, 83, 92, 83, 78, 78, 78, 77, 73, 69, 71, 32.65726 + 77, 83, 86, 90, 95, 99, 98, 97, 94, 97, 101, 102, 101, 104, 108, 110, 32.65727 + 108, 104, 107, 107, 107, 108, 112, 112, 111, 111, 109, 108, 106, 102, 95, 87, 32.65728 + 80, 72, 74, 76, 85, 105, 132, 158, 176, 177, 255, 255, 255, 255, 255, 255, 32.65729 + 255, 255, 255, 255, 255, 229, 172, 170, 172, 199, 187, 189, 255, 255, 255, 255, 32.65730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65734 + 255, 255, 186, 68, 84, 85, 90, 78, 83, 82, 80, 80, 79, 75, 70, 69, 32.65735 + 82, 84, 89, 92, 96, 96, 97, 95, 97, 102, 104, 103, 106, 108, 109, 105, 32.65736 + 103, 107, 109, 108, 106, 108, 109, 111, 111, 112, 113, 112, 110, 105, 100, 97, 32.65737 + 85, 86, 90, 103, 124, 151, 173, 187, 255, 255, 255, 255, 255, 255, 255, 255, 32.65738 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65739 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65740 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65743 + 255, 255, 54, 75, 80, 84, 70, 89, 86, 81, 81, 83, 82, 75, 67, 80, 32.65744 + 82, 85, 88, 91, 93, 97, 98, 98, 103, 105, 104, 105, 107, 107, 102, 103, 32.65745 + 105, 109, 109, 106, 104, 106, 109, 108, 110, 112, 114, 113, 113, 113, 113, 94, 32.65746 + 95, 102, 119, 142, 162, 173, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65752 + 255, 255, 68, 74, 83, 76, 83, 80, 75, 75, 78, 82, 76, 68, 77, 80, 32.65753 + 83, 85, 87, 91, 94, 99, 95, 100, 102, 101, 103, 106, 106, 102, 104, 104, 32.65754 + 108, 110, 107, 102, 102, 107, 110, 112, 111, 108, 104, 104, 106, 108, 100, 103, 32.65755 + 117, 141, 167, 185, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65757 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65758 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65761 + 255, 255, 60, 80, 84, 76, 79, 79, 76, 77, 83, 87, 87, 71, 76, 81, 32.65762 + 85, 87, 88, 93, 95, 91, 95, 98, 98, 102, 106, 108, 105, 106, 105, 106, 32.65763 + 110, 108, 102, 101, 105, 112, 115, 113, 111, 110, 112, 117, 122, 147, 150, 158, 32.65764 + 170, 181, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65765 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65770 + 255, 255, 255, 83, 78, 89, 93, 88, 86, 94, 105, 110, 65, 72, 80, 86, 32.65771 + 88, 88, 89, 92, 86, 91, 94, 96, 100, 107, 111, 109, 108, 104, 105, 110, 32.65772 + 109, 103, 100, 104, 108, 113, 117, 123, 130, 142, 155, 166, 173, 177, 181, 184, 32.65773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65779 + 255, 255, 255, 255, 255, 255, 255, 88, 90, 89, 88, 85, 78, 70, 71, 80, 32.65780 + 89, 88, 84, 92, 93, 96, 99, 103, 106, 107, 109, 108, 105, 106, 108, 112, 32.65781 + 113, 110, 109, 111, 123, 128, 139, 156, 164, 170, 183, 180, 178, 255, 255, 255, 32.65782 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65784 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 74, 77, 78, 75, 72, 77, 32.65789 + 85, 93, 87, 95, 98, 97, 98, 106, 110, 110, 112, 111, 109, 112, 117, 123, 32.65790 + 126, 130, 128, 156, 167, 165, 170, 176, 176, 255, 255, 255, 255, 255, 255, 255, 32.65791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 71, 78, 79, 74, 73, 80, 32.65798 + 87, 88, 101, 105, 101, 100, 105, 108, 104, 113, 113, 112, 114, 117, 126, 136, 32.65799 + 144, 147, 185, 197, 181, 177, 182, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65801 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65802 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 67, 76, 83, 81, 78, 76, 32.65807 + 90, 94, 99, 106, 110, 109, 107, 107, 113, 116, 115, 115, 118, 126, 139, 150, 32.65808 + 157, 187, 192, 177, 174, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65815 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 78, 80, 86, 94, 103, 32.65816 + 89, 87, 103, 113, 108, 110, 119, 112, 114, 118, 120, 123, 130, 141, 150, 160, 32.65817 + 174, 177, 175, 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 93, 123, 138, 116, 32.65825 + 100, 105, 107, 101, 106, 118, 109, 112, 115, 120, 125, 133, 142, 149, 163, 172, 32.65826 + 174, 180, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65827 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65833 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 149, 136, 32.65834 + 123, 115, 113, 115, 118, 123, 122, 123, 127, 134, 142, 148, 153, 166, 180, 204, 32.65835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65843 + 255, 255, 141, 131, 149, 145, 140, 141, 147, 155, 160, 163, 197, 255, 255, 255, 32.65844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65852 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 173, 188, 207, 231, 235, 227, 32.65854 + 223, 230, 243, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65862 + 255, 255, 255, 220, 150, 153, 163, 173, 171, 162, 133, 146, 164, 176, 177, 179, 32.65863 + 183, 189, 205, 220, 238, 241, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 32.65871 + 111, 97, 102, 109, 116, 131, 152, 169, 174, 153, 137, 124, 129, 145, 161, 163, 32.65872 + 160, 167, 177, 196, 213, 222, 224, 234, 241, 240, 243, 255, 255, 255, 255, 255, 32.65873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 101, 99, 101, 32.65880 + 102, 107, 111, 107, 110, 123, 144, 151, 168, 166, 166, 162, 160, 160, 165, 170, 32.65881 + 142, 141, 156, 181, 201, 201, 197, 195, 191, 200, 212, 226, 240, 246, 252, 255, 32.65882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89, 81, 82, 81, 81, 32.65889 + 88, 92, 90, 92, 103, 121, 128, 118, 140, 167, 170, 154, 138, 139, 147, 143, 32.65890 + 135, 136, 146, 148, 138, 134, 136, 135, 133, 134, 147, 174, 203, 222, 232, 235, 32.65891 + 243, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65897 + 255, 255, 255, 255, 255, 255, 255, 255, 73, 61, 56, 65, 69, 68, 67, 76, 32.65898 + 83, 81, 82, 88, 99, 100, 93, 100, 116, 134, 144, 142, 128, 118, 114, 107, 32.65899 + 102, 96, 93, 104, 142, 181, 197, 164, 123, 97, 100, 125, 151, 169, 181, 191, 32.65900 + 209, 227, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65906 + 255, 255, 255, 195, 72, 68, 65, 64, 63, 63, 64, 65, 66, 70, 73, 78, 32.65907 + 83, 86, 84, 84, 80, 83, 87, 83, 76, 79, 95, 108, 110, 107, 112, 121, 32.65908 + 125, 115, 107, 119, 137, 142, 170, 132, 129, 157, 138, 132, 141, 160, 198, 207, 32.65909 + 207, 216, 237, 248, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65915 + 192, 64, 62, 61, 62, 62, 62, 62, 63, 65, 67, 69, 69, 74, 79, 80, 32.65916 + 77, 74, 74, 76, 67, 70, 72, 71, 76, 86, 96, 98, 114, 97, 93, 107, 32.65917 + 125, 127, 125, 120, 118, 141, 165, 156, 153, 164, 169, 174, 191, 228, 237, 236, 32.65918 + 230, 233, 244, 231, 246, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 105, 63, 62, 32.65924 + 61, 59, 57, 57, 57, 57, 58, 60, 63, 66, 68, 67, 72, 76, 73, 65, 32.65925 + 61, 63, 67, 65, 64, 72, 78, 84, 83, 89, 92, 97, 91, 94, 100, 108, 32.65926 + 111, 127, 137, 96, 80, 140, 146, 121, 146, 160, 170, 197, 226, 234, 239, 234, 32.65927 + 231, 244, 245, 248, 248, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 62, 63, 63, 62, 61, 32.65933 + 59, 58, 55, 55, 55, 56, 58, 61, 64, 66, 65, 67, 68, 65, 61, 59, 32.65934 + 61, 63, 73, 71, 79, 88, 91, 83, 85, 91, 83, 90, 100, 93, 82, 84, 32.65935 + 118, 148, 149, 89, 115, 145, 137, 141, 157, 176, 166, 187, 202, 228, 239, 234, 32.65936 + 241, 235, 242, 244, 246, 247, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65941 + 255, 255, 255, 255, 255, 255, 255, 189, 56, 60, 60, 60, 59, 59, 58, 57, 32.65942 + 57, 59, 58, 57, 57, 58, 60, 62, 63, 63, 60, 58, 59, 62, 65, 64, 32.65943 + 63, 69, 66, 72, 79, 82, 74, 77, 82, 85, 81, 81, 77, 77, 82, 101, 32.65944 + 111, 144, 103, 74, 106, 123, 107, 121, 133, 136, 154, 176, 222, 241, 238, 232, 32.65945 + 211, 223, 230, 239, 243, 243, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65950 + 255, 255, 255, 189, 57, 56, 60, 67, 56, 56, 56, 56, 56, 56, 56, 56, 32.65951 + 59, 58, 57, 56, 55, 56, 58, 58, 57, 52, 49, 52, 60, 64, 62, 58, 32.65952 + 63, 63, 66, 71, 72, 71, 74, 80, 79, 77, 77, 79, 82, 83, 84, 80, 32.65953 + 106, 117, 79, 85, 108, 98, 109, 106, 117, 126, 139, 183, 218, 228, 239, 231, 32.65954 + 207, 218, 232, 238, 238, 237, 240, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.65955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65959 + 52, 62, 72, 62, 49, 47, 48, 54, 54, 54, 54, 55, 56, 57, 57, 56, 32.65960 + 55, 54, 52, 52, 53, 55, 55, 55, 52, 51, 53, 57, 59, 58, 55, 60, 32.65961 + 66, 68, 67, 67, 71, 74, 74, 71, 79, 86, 83, 77, 73, 76, 77, 73, 32.65962 + 93, 85, 75, 85, 92, 91, 87, 96, 103, 103, 126, 149, 171, 207, 220, 201, 32.65963 + 207, 220, 228, 232, 235, 239, 242, 244, 234, 255, 255, 255, 255, 255, 255, 255, 32.65964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 62, 47, 32.65968 + 50, 59, 54, 49, 53, 54, 48, 48, 49, 49, 50, 52, 54, 54, 52, 52, 32.65969 + 51, 50, 50, 52, 53, 54, 56, 57, 58, 58, 56, 55, 55, 57, 54, 63, 32.65970 + 65, 59, 57, 63, 63, 58, 74, 75, 74, 69, 67, 69, 73, 75, 82, 67, 32.65971 + 88, 80, 79, 94, 81, 86, 79, 94, 95, 100, 97, 103, 138, 150, 194, 195, 32.65972 + 202, 213, 222, 227, 230, 232, 238, 231, 246, 255, 255, 255, 255, 255, 255, 255, 32.65973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 51, 55, 59, 58, 52, 32.65977 + 48, 47, 50, 53, 56, 55, 53, 51, 51, 52, 53, 52, 51, 50, 51, 52, 32.65978 + 53, 55, 56, 58, 58, 55, 55, 56, 56, 56, 55, 55, 54, 53, 57, 59, 32.65979 + 59, 59, 59, 61, 63, 61, 63, 65, 66, 67, 71, 75, 77, 73, 79, 81, 32.65980 + 78, 78, 80, 81, 77, 78, 79, 82, 84, 84, 82, 83, 81, 125, 165, 182, 32.65981 + 182, 202, 219, 222, 227, 234, 241, 227, 236, 255, 255, 255, 255, 255, 255, 255, 32.65982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65985 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 54, 51, 53, 55, 53, 51, 48, 32.65986 + 48, 48, 50, 51, 55, 53, 51, 50, 51, 52, 51, 50, 51, 51, 52, 53, 32.65987 + 54, 55, 56, 57, 55, 54, 54, 54, 54, 54, 54, 55, 55, 59, 61, 61, 32.65988 + 61, 61, 63, 64, 61, 63, 63, 62, 61, 61, 63, 63, 71, 74, 75, 71, 32.65989 + 70, 73, 76, 75, 78, 80, 84, 86, 87, 86, 87, 84, 108, 131, 156, 181, 32.65990 + 199, 205, 206, 215, 214, 232, 235, 235, 246, 255, 255, 255, 255, 255, 255, 255, 32.65991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.65994 + 255, 255, 255, 255, 255, 255, 189, 55, 52, 50, 52, 52, 52, 52, 51, 50, 32.65995 + 50, 49, 49, 55, 53, 51, 50, 52, 52, 52, 50, 53, 53, 53, 54, 54, 32.65996 + 54, 55, 55, 55, 54, 53, 52, 52, 53, 55, 55, 55, 57, 59, 59, 58, 32.65997 + 58, 60, 61, 63, 64, 65, 64, 61, 59, 59, 60, 65, 68, 67, 63, 63, 32.65998 + 66, 71, 72, 75, 76, 82, 83, 87, 87, 89, 89, 105, 103, 130, 170, 191, 32.65999 + 199, 208, 213, 225, 218, 222, 226, 237, 241, 255, 255, 255, 255, 255, 255, 255, 32.66000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66003 + 255, 255, 255, 255, 190, 54, 52, 53, 52, 48, 54, 53, 52, 51, 51, 51, 32.66004 + 51, 51, 54, 52, 49, 49, 50, 51, 50, 49, 53, 53, 53, 53, 53, 52, 32.66005 + 52, 52, 54, 53, 51, 50, 50, 52, 54, 56, 53, 54, 56, 56, 55, 55, 32.66006 + 56, 58, 61, 64, 66, 67, 66, 64, 64, 64, 61, 63, 63, 61, 61, 64, 32.66007 + 67, 69, 74, 77, 80, 84, 88, 93, 99, 99, 109, 92, 101, 121, 136, 163, 32.66008 + 175, 160, 216, 214, 230, 226, 244, 248, 229, 255, 255, 255, 255, 255, 255, 255, 32.66009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66012 + 255, 255, 188, 51, 46, 50, 56, 55, 47, 54, 52, 50, 48, 48, 49, 51, 32.66013 + 52, 52, 50, 48, 48, 49, 50, 49, 48, 52, 52, 52, 52, 51, 51, 51, 32.66014 + 51, 53, 51, 50, 49, 49, 51, 54, 55, 52, 53, 54, 54, 53, 52, 54, 32.66015 + 55, 54, 56, 60, 61, 60, 59, 60, 61, 59, 61, 64, 66, 66, 66, 68, 32.66016 + 70, 79, 79, 80, 83, 87, 96, 106, 111, 123, 116, 107, 96, 107, 152, 160, 32.66017 + 122, 119, 163, 207, 200, 220, 244, 231, 248, 255, 255, 255, 255, 255, 255, 255, 32.66018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66021 + 185, 42, 41, 40, 48, 56, 57, 52, 51, 49, 46, 44, 44, 46, 48, 50, 32.66022 + 51, 49, 47, 47, 48, 49, 48, 47, 51, 51, 50, 50, 50, 50, 50, 50, 32.66023 + 51, 50, 50, 49, 50, 52, 54, 55, 54, 55, 56, 56, 54, 54, 55, 56, 32.66024 + 55, 57, 58, 58, 57, 55, 56, 57, 59, 60, 63, 68, 69, 66, 67, 71, 32.66025 + 73, 73, 73, 74, 77, 85, 98, 103, 114, 125, 124, 111, 130, 183, 196, 166, 32.66026 + 77, 95, 132, 154, 165, 172, 193, 238, 244, 255, 255, 255, 255, 255, 255, 255, 32.66027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 43, 32.66030 + 39, 40, 45, 50, 51, 55, 56, 49, 46, 46, 45, 45, 46, 47, 47, 50, 32.66031 + 48, 46, 46, 47, 48, 47, 46, 49, 49, 49, 49, 49, 50, 50, 50, 50, 32.66032 + 50, 50, 51, 52, 53, 54, 54, 53, 53, 54, 53, 52, 51, 52, 53, 57, 32.66033 + 58, 58, 57, 55, 54, 55, 57, 57, 55, 57, 62, 65, 63, 67, 73, 69, 32.66034 + 69, 70, 70, 71, 75, 83, 86, 80, 93, 99, 101, 123, 151, 170, 184, 149, 32.66035 + 118, 109, 136, 142, 137, 173, 207, 213, 241, 255, 255, 255, 255, 255, 255, 255, 32.66036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 78, 33, 49, 45, 32.66039 + 47, 54, 52, 49, 50, 56, 48, 47, 49, 50, 50, 49, 47, 46, 50, 48, 32.66040 + 46, 45, 47, 47, 47, 45, 48, 48, 48, 49, 49, 50, 50, 50, 49, 50, 32.66041 + 51, 52, 53, 54, 54, 54, 51, 50, 53, 51, 51, 48, 51, 51, 56, 55, 32.66042 + 57, 54, 55, 53, 58, 59, 58, 53, 55, 59, 60, 58, 64, 73, 72, 73, 32.66043 + 75, 74, 73, 73, 77, 77, 80, 82, 78, 84, 90, 83, 102, 153, 201, 181, 32.66044 + 139, 130, 137, 162, 176, 122, 160, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.66045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 54, 55, 56, 46, 47, 48, 32.66048 + 48, 48, 49, 48, 48, 51, 50, 50, 49, 49, 50, 50, 51, 50, 50, 49, 32.66049 + 49, 49, 49, 49, 49, 51, 51, 50, 50, 50, 50, 50, 50, 54, 54, 53, 32.66050 + 52, 52, 51, 50, 50, 54, 54, 56, 54, 54, 53, 56, 57, 57, 54, 53, 32.66051 + 51, 52, 53, 57, 57, 60, 62, 63, 59, 60, 64, 65, 62, 68, 70, 72, 32.66052 + 73, 74, 75, 80, 80, 95, 81, 84, 96, 98, 101, 103, 99, 166, 197, 211, 32.66053 + 191, 135, 146, 194, 156, 142, 199, 238, 255, 255, 255, 255, 255, 255, 255, 255, 32.66054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66056 + 255, 255, 255, 255, 255, 255, 255, 190, 59, 68, 53, 52, 51, 50, 50, 49, 32.66057 + 50, 50, 49, 49, 48, 48, 49, 49, 49, 49, 48, 48, 47, 47, 47, 48, 32.66058 + 49, 49, 50, 50, 47, 47, 47, 47, 47, 47, 47, 47, 49, 50, 50, 51, 32.66059 + 52, 52, 53, 53, 52, 53, 54, 53, 52, 52, 54, 57, 62, 61, 58, 55, 32.66060 + 53, 52, 52, 52, 62, 64, 64, 61, 62, 66, 67, 65, 67, 70, 73, 76, 32.66061 + 77, 79, 81, 83, 80, 92, 100, 88, 92, 122, 137, 121, 123, 156, 208, 222, 32.66062 + 200, 170, 162, 179, 177, 233, 243, 225, 255, 255, 255, 255, 255, 255, 255, 255, 32.66063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66065 + 255, 255, 255, 255, 255, 255, 57, 52, 65, 43, 43, 51, 50, 50, 49, 51, 32.66066 + 50, 50, 50, 45, 46, 48, 48, 48, 48, 46, 45, 44, 45, 45, 47, 48, 32.66067 + 49, 50, 50, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50, 50, 51, 32.66068 + 52, 52, 53, 51, 52, 52, 52, 51, 51, 53, 55, 55, 55, 56, 56, 57, 32.66069 + 58, 58, 59, 61, 64, 64, 61, 62, 66, 68, 66, 67, 70, 75, 78, 80, 32.66070 + 81, 83, 85, 91, 87, 94, 92, 88, 100, 122, 129, 119, 144, 192, 216, 232, 32.66071 + 209, 146, 177, 219, 239, 238, 232, 248, 255, 255, 255, 255, 255, 255, 255, 255, 32.66072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66074 + 255, 255, 255, 255, 188, 57, 42, 44, 42, 45, 49, 48, 48, 47, 47, 49, 32.66075 + 49, 49, 44, 46, 48, 49, 49, 48, 46, 44, 45, 45, 45, 46, 46, 47, 32.66076 + 47, 48, 49, 49, 50, 50, 50, 50, 51, 51, 54, 53, 53, 52, 51, 51, 32.66077 + 50, 50, 50, 51, 52, 51, 50, 51, 53, 55, 50, 52, 55, 58, 60, 62, 32.66078 + 63, 64, 59, 62, 62, 59, 60, 65, 66, 64, 68, 71, 76, 78, 79, 80, 32.66079 + 81, 82, 97, 83, 87, 94, 87, 88, 102, 116, 118, 140, 146, 151, 210, 232, 32.66080 + 199, 193, 226, 233, 237, 241, 239, 239, 255, 255, 255, 255, 255, 255, 255, 255, 32.66081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66083 + 255, 255, 188, 55, 51, 43, 32, 53, 50, 45, 45, 45, 44, 45, 44, 47, 32.66084 + 47, 45, 46, 48, 50, 50, 48, 46, 45, 47, 47, 47, 46, 45, 45, 44, 32.66085 + 44, 45, 45, 45, 46, 46, 47, 47, 47, 55, 54, 54, 53, 52, 52, 51, 32.66086 + 51, 51, 52, 53, 52, 51, 51, 53, 55, 56, 57, 58, 59, 60, 60, 59, 32.66087 + 59, 60, 63, 63, 61, 61, 66, 67, 65, 69, 71, 74, 75, 75, 74, 75, 32.66088 + 76, 75, 85, 94, 86, 90, 117, 124, 105, 115, 146, 129, 114, 143, 203, 236, 32.66089 + 212, 214, 231, 239, 233, 230, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66092 + 193, 46, 59, 49, 52, 40, 59, 42, 43, 42, 43, 42, 43, 43, 45, 46, 32.66093 + 46, 46, 48, 49, 49, 48, 46, 46, 49, 48, 48, 47, 45, 44, 43, 43, 32.66094 + 45, 45, 46, 47, 47, 48, 49, 49, 50, 50, 51, 52, 52, 53, 54, 54, 32.66095 + 51, 52, 52, 52, 51, 51, 53, 55, 52, 53, 54, 57, 59, 62, 64, 65, 32.66096 + 66, 69, 68, 65, 65, 69, 70, 68, 69, 70, 71, 71, 69, 69, 70, 72, 32.66097 + 74, 75, 84, 94, 104, 121, 124, 108, 110, 147, 147, 135, 113, 148, 227, 227, 32.66098 + 222, 206, 209, 229, 242, 248, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 115, 71, 32.66101 + 57, 54, 53, 52, 49, 51, 40, 45, 44, 43, 42, 43, 43, 44, 44, 45, 32.66102 + 45, 46, 46, 46, 46, 45, 45, 48, 48, 48, 47, 46, 46, 45, 45, 47, 32.66103 + 47, 48, 49, 50, 50, 51, 51, 48, 48, 49, 49, 50, 51, 51, 52, 49, 32.66104 + 50, 51, 50, 49, 49, 51, 54, 46, 47, 49, 53, 59, 64, 69, 72, 69, 32.66105 + 72, 71, 67, 67, 70, 70, 68, 68, 68, 68, 67, 66, 67, 70, 73, 85, 32.66106 + 67, 73, 95, 101, 100, 104, 106, 94, 111, 134, 137, 125, 147, 203, 229, 217, 32.66107 + 161, 162, 207, 231, 232, 240, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 59, 55, 32.66110 + 39, 51, 38, 47, 40, 47, 45, 45, 44, 43, 44, 44, 45, 45, 45, 44, 32.66111 + 44, 43, 43, 44, 44, 45, 47, 47, 47, 47, 47, 47, 47, 47, 43, 44, 32.66112 + 44, 45, 46, 47, 48, 48, 50, 49, 49, 48, 47, 47, 46, 46, 47, 49, 32.66113 + 49, 49, 47, 48, 50, 52, 52, 52, 52, 53, 56, 60, 64, 67, 69, 72, 32.66114 + 70, 66, 65, 68, 68, 65, 67, 67, 66, 64, 64, 67, 71, 75, 76, 79, 32.66115 + 82, 79, 82, 102, 110, 92, 110, 95, 110, 113, 136, 161, 160, 186, 180, 144, 32.66116 + 144, 167, 188, 220, 250, 252, 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 63, 50, 49, 46, 32.66119 + 44, 44, 44, 44, 42, 47, 44, 42, 42, 44, 44, 41, 39, 42, 42, 42, 32.66120 + 43, 43, 44, 44, 44, 48, 47, 45, 44, 44, 45, 47, 48, 41, 41, 42, 32.66121 + 42, 42, 42, 42, 42, 46, 47, 48, 49, 49, 49, 49, 48, 50, 49, 49, 32.66122 + 48, 48, 47, 47, 46, 44, 46, 49, 53, 57, 60, 61, 62, 64, 66, 67, 32.66123 + 66, 64, 64, 68, 73, 62, 64, 66, 66, 67, 68, 71, 74, 82, 81, 80, 32.66124 + 82, 88, 94, 103, 107, 99, 101, 106, 114, 130, 139, 136, 119, 128, 186, 176, 32.66125 + 185, 233, 235, 241, 253, 238, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 81, 41, 49, 48, 45, 44, 32.66128 + 44, 43, 43, 42, 46, 43, 42, 42, 44, 44, 41, 39, 42, 42, 42, 43, 32.66129 + 43, 44, 44, 44, 46, 46, 45, 45, 45, 45, 46, 46, 42, 43, 43, 43, 32.66130 + 44, 45, 45, 45, 46, 47, 48, 48, 49, 49, 48, 48, 50, 50, 49, 49, 32.66131 + 49, 49, 49, 48, 54, 54, 55, 55, 54, 54, 53, 52, 57, 58, 59, 59, 32.66132 + 59, 59, 61, 63, 59, 60, 62, 63, 63, 64, 67, 70, 74, 74, 74, 75, 32.66133 + 79, 84, 90, 92, 98, 99, 103, 107, 120, 131, 131, 119, 126, 203, 210, 204, 32.66134 + 224, 233, 247, 248, 253, 251, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66136 + 255, 255, 255, 255, 255, 255, 255, 255, 185, 69, 41, 47, 49, 46, 45, 45, 32.66137 + 44, 43, 41, 46, 44, 42, 42, 43, 43, 41, 40, 42, 42, 42, 43, 43, 32.66138 + 44, 44, 44, 44, 45, 45, 46, 46, 45, 45, 44, 43, 43, 44, 45, 46, 32.66139 + 47, 48, 48, 46, 46, 47, 48, 49, 49, 48, 48, 49, 49, 49, 50, 50, 32.66140 + 50, 50, 50, 51, 52, 53, 54, 54, 54, 54, 54, 56, 56, 56, 58, 60, 32.66141 + 61, 60, 59, 58, 59, 61, 61, 61, 62, 65, 68, 69, 69, 71, 73, 74, 32.66142 + 76, 78, 79, 95, 96, 98, 99, 106, 115, 121, 116, 101, 165, 202, 219, 234, 32.66143 + 240, 240, 229, 221, 219, 226, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66145 + 255, 255, 255, 255, 255, 255, 255, 59, 45, 48, 47, 47, 45, 43, 43, 43, 32.66146 + 42, 40, 44, 43, 43, 42, 42, 42, 41, 40, 42, 42, 42, 43, 43, 44, 32.66147 + 44, 44, 43, 44, 45, 46, 46, 45, 44, 43, 42, 43, 44, 45, 47, 48, 32.66148 + 49, 50, 45, 46, 47, 48, 48, 48, 48, 47, 47, 48, 48, 49, 49, 50, 32.66149 + 50, 51, 48, 49, 50, 52, 54, 55, 55, 56, 57, 56, 56, 59, 63, 63, 32.66150 + 60, 57, 60, 62, 63, 63, 63, 64, 67, 69, 70, 72, 75, 78, 81, 80, 32.66151 + 79, 78, 88, 88, 91, 92, 95, 101, 108, 107, 110, 113, 138, 182, 216, 232, 32.66152 + 241, 241, 237, 225, 233, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66154 + 255, 255, 255, 255, 255, 189, 47, 46, 41, 45, 46, 45, 42, 43, 43, 41, 32.66155 + 40, 42, 43, 43, 42, 40, 40, 40, 41, 42, 42, 42, 43, 43, 44, 44, 32.66156 + 44, 42, 43, 44, 45, 45, 44, 43, 42, 41, 41, 42, 44, 45, 47, 48, 32.66157 + 48, 45, 46, 47, 47, 48, 48, 47, 47, 45, 46, 46, 47, 47, 48, 48, 32.66158 + 49, 52, 52, 52, 53, 52, 51, 50, 50, 55, 54, 54, 57, 61, 61, 58, 32.66159 + 55, 61, 63, 64, 64, 63, 64, 67, 69, 73, 75, 79, 82, 86, 87, 86, 32.66160 + 85, 82, 85, 87, 89, 91, 92, 96, 98, 105, 82, 104, 151, 195, 227, 236, 32.66161 + 231, 218, 210, 227, 211, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66163 + 255, 255, 255, 189, 56, 34, 48, 34, 45, 46, 43, 43, 41, 41, 40, 39, 32.66164 + 40, 42, 43, 42, 40, 39, 40, 41, 42, 42, 42, 43, 43, 44, 44, 44, 32.66165 + 42, 43, 43, 44, 44, 43, 43, 42, 41, 41, 42, 43, 44, 45, 46, 46, 32.66166 + 45, 45, 46, 47, 47, 47, 47, 47, 46, 46, 46, 46, 46, 47, 47, 47, 32.66167 + 46, 47, 49, 51, 52, 53, 54, 54, 57, 57, 57, 58, 61, 61, 60, 59, 32.66168 + 59, 61, 62, 61, 61, 61, 64, 66, 71, 73, 76, 81, 86, 87, 89, 89, 32.66169 + 85, 86, 88, 92, 92, 91, 92, 93, 83, 85, 106, 120, 155, 212, 231, 228, 32.66170 + 186, 187, 218, 225, 185, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66172 + 255, 255, 58, 38, 36, 38, 35, 43, 44, 42, 41, 42, 42, 39, 38, 39, 32.66173 + 41, 43, 42, 39, 38, 40, 42, 42, 42, 42, 43, 43, 44, 44, 44, 43, 32.66174 + 43, 42, 42, 42, 42, 43, 43, 42, 42, 42, 43, 44, 44, 44, 45, 44, 32.66175 + 45, 46, 47, 47, 47, 47, 46, 48, 47, 47, 47, 47, 47, 46, 46, 41, 32.66176 + 43, 46, 49, 53, 55, 57, 58, 57, 58, 59, 59, 58, 59, 61, 63, 58, 32.66177 + 59, 60, 60, 59, 60, 62, 64, 68, 68, 70, 73, 77, 82, 86, 88, 95, 32.66178 + 90, 89, 94, 95, 94, 93, 94, 107, 110, 119, 99, 119, 179, 212, 230, 222, 32.66179 + 222, 227, 232, 226, 237, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66181 + 255, 45, 42, 29, 33, 35, 43, 43, 41, 41, 41, 42, 39, 38, 39, 41, 32.66182 + 43, 42, 40, 39, 41, 43, 42, 42, 42, 43, 43, 44, 44, 44, 44, 43, 32.66183 + 41, 40, 40, 41, 43, 44, 43, 43, 44, 44, 44, 44, 44, 44, 44, 45, 32.66184 + 46, 47, 47, 47, 47, 46, 50, 49, 49, 48, 48, 47, 47, 46, 49, 49, 32.66185 + 50, 51, 51, 50, 50, 50, 51, 53, 55, 53, 51, 52, 56, 60, 59, 60, 32.66186 + 61, 61, 60, 60, 62, 65, 66, 65, 65, 67, 71, 74, 80, 82, 101, 94, 32.66187 + 91, 95, 98, 97, 99, 100, 109, 120, 150, 151, 160, 174, 163, 179, 202, 213, 32.66188 + 214, 221, 236, 239, 235, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 32.66190 + 43, 33, 43, 43, 48, 41, 39, 37, 38, 40, 41, 40, 37, 39, 39, 39, 32.66191 + 40, 40, 41, 41, 41, 42, 41, 41, 42, 42, 42, 41, 41, 45, 44, 43, 32.66192 + 42, 44, 44, 45, 46, 44, 43, 43, 42, 42, 43, 43, 44, 43, 44, 45, 32.66193 + 46, 46, 46, 45, 45, 49, 50, 51, 53, 54, 56, 57, 57, 51, 51, 51, 32.66194 + 50, 50, 49, 49, 49, 52, 53, 54, 53, 51, 51, 53, 55, 56, 56, 55, 32.66195 + 56, 57, 59, 62, 63, 60, 63, 66, 67, 70, 72, 75, 78, 83, 79, 82, 32.66196 + 89, 95, 98, 105, 111, 120, 126, 141, 163, 191, 210, 205, 192, 197, 168, 164, 32.66197 + 152, 207, 233, 237, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 45, 32.66199 + 35, 44, 40, 42, 41, 38, 37, 38, 40, 41, 39, 37, 40, 40, 40, 41, 32.66200 + 43, 43, 43, 41, 39, 39, 40, 40, 39, 38, 37, 37, 42, 42, 44, 44, 32.66201 + 46, 45, 44, 43, 44, 43, 43, 42, 42, 43, 43, 44, 44, 44, 44, 45, 32.66202 + 45, 46, 46, 46, 46, 46, 47, 48, 49, 50, 51, 52, 51, 51, 51, 51, 32.66203 + 51, 51, 51, 51, 57, 58, 58, 57, 55, 55, 57, 58, 58, 57, 57, 57, 32.66204 + 57, 58, 60, 60, 58, 61, 63, 65, 66, 69, 72, 75, 80, 76, 76, 82, 32.66205 + 87, 90, 97, 104, 122, 139, 155, 154, 151, 163, 188, 205, 185, 180, 154, 105, 32.66206 + 133, 191, 223, 233, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 44, 46, 37, 32.66208 + 44, 43, 41, 40, 37, 37, 38, 39, 40, 39, 37, 39, 39, 41, 41, 41, 32.66209 + 41, 40, 40, 39, 39, 40, 40, 39, 38, 37, 36, 41, 43, 46, 48, 48, 32.66210 + 46, 45, 42, 44, 43, 43, 42, 42, 43, 43, 44, 45, 44, 44, 44, 44, 32.66211 + 45, 46, 47, 45, 45, 45, 46, 46, 47, 47, 47, 50, 50, 51, 51, 52, 32.66212 + 53, 53, 54, 57, 58, 58, 56, 54, 54, 55, 57, 58, 58, 58, 58, 58, 32.66213 + 58, 58, 58, 58, 60, 62, 64, 65, 68, 72, 75, 79, 75, 74, 77, 79, 32.66214 + 81, 86, 90, 108, 136, 162, 156, 137, 135, 160, 183, 188, 183, 173, 153, 130, 32.66215 + 142, 172, 236, 224, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 44, 40, 33, 42, 32.66217 + 46, 41, 39, 37, 38, 38, 38, 39, 38, 38, 38, 38, 38, 38, 39, 37, 32.66218 + 39, 37, 39, 40, 40, 41, 41, 41, 40, 40, 41, 43, 45, 46, 47, 46, 32.66219 + 46, 45, 46, 43, 43, 42, 42, 43, 43, 44, 45, 45, 44, 44, 44, 45, 32.66220 + 46, 47, 47, 47, 47, 47, 47, 47, 47, 47, 48, 48, 49, 50, 52, 53, 32.66221 + 54, 54, 57, 58, 58, 56, 54, 53, 54, 56, 56, 56, 57, 58, 59, 59, 32.66222 + 59, 59, 60, 62, 64, 66, 67, 70, 74, 77, 78, 78, 78, 79, 80, 79, 32.66223 + 80, 80, 85, 102, 123, 132, 130, 132, 142, 151, 192, 184, 191, 209, 174, 145, 32.66224 + 136, 203, 236, 213, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 32, 32, 32, 38, 43, 32.66226 + 34, 37, 37, 37, 37, 37, 36, 37, 37, 35, 35, 35, 35, 36, 35, 36, 32.66227 + 35, 35, 36, 39, 40, 41, 42, 44, 44, 43, 43, 45, 45, 45, 46, 49, 32.66228 + 48, 46, 43, 43, 42, 42, 43, 43, 44, 45, 44, 44, 44, 45, 45, 46, 32.66229 + 47, 48, 48, 48, 47, 47, 47, 46, 46, 45, 46, 47, 48, 50, 51, 52, 32.66230 + 53, 60, 61, 61, 59, 57, 56, 58, 60, 54, 54, 55, 57, 59, 61, 62, 32.66231 + 63, 65, 67, 68, 68, 69, 72, 77, 80, 81, 85, 88, 89, 89, 88, 85, 32.66232 + 82, 79, 73, 75, 86, 103, 120, 133, 141, 178, 196, 194, 189, 181, 198, 161, 32.66233 + 154, 167, 209, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66234 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 36, 26, 33, 41, 39, 44, 34, 32.66235 + 36, 37, 38, 37, 36, 35, 36, 38, 34, 34, 35, 35, 36, 34, 36, 37, 32.66236 + 33, 34, 35, 38, 39, 39, 41, 41, 43, 43, 44, 43, 44, 46, 50, 49, 32.66237 + 46, 43, 43, 42, 42, 43, 43, 44, 43, 44, 45, 46, 46, 46, 45, 45, 32.66238 + 45, 45, 45, 45, 45, 45, 44, 44, 45, 45, 46, 47, 49, 50, 51, 52, 32.66239 + 55, 56, 57, 56, 54, 54, 56, 58, 54, 54, 54, 55, 57, 61, 64, 66, 32.66240 + 69, 69, 69, 69, 69, 71, 76, 79, 83, 89, 94, 95, 97, 97, 94, 89, 32.66241 + 92, 86, 80, 85, 90, 100, 111, 119, 146, 190, 213, 195, 193, 222, 198, 183, 32.66242 + 134, 195, 226, 240, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66243 + 255, 255, 255, 255, 255, 255, 255, 182, 39, 24, 38, 48, 36, 44, 41, 35, 32.66244 + 37, 38, 37, 35, 34, 34, 36, 32, 33, 34, 35, 36, 35, 38, 38, 33, 32.66245 + 34, 34, 37, 37, 36, 36, 36, 41, 41, 44, 45, 48, 49, 49, 47, 46, 32.66246 + 43, 43, 42, 42, 43, 43, 44, 41, 43, 46, 48, 48, 47, 45, 43, 43, 32.66247 + 44, 44, 44, 44, 44, 44, 44, 46, 47, 47, 48, 49, 50, 51, 52, 49, 32.66248 + 50, 51, 51, 50, 50, 53, 55, 57, 55, 54, 53, 55, 59, 64, 66, 69, 32.66249 + 69, 68, 66, 66, 67, 72, 75, 77, 84, 88, 88, 91, 96, 96, 92, 97, 32.66250 + 101, 107, 108, 102, 94, 96, 102, 124, 153, 204, 213, 216, 197, 191, 219, 201, 32.66251 + 162, 153, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66252 + 255, 255, 255, 255, 255, 255, 40, 44, 23, 33, 41, 26, 40, 47, 35, 36, 32.66253 + 38, 37, 35, 32, 33, 36, 33, 32, 35, 34, 36, 35, 39, 39, 37, 37, 32.66254 + 36, 36, 36, 36, 35, 35, 36, 40, 43, 47, 50, 50, 48, 44, 46, 43, 32.66255 + 43, 42, 42, 43, 43, 44, 40, 42, 46, 49, 49, 47, 44, 42, 44, 44, 32.66256 + 44, 45, 45, 46, 46, 46, 48, 48, 49, 50, 50, 51, 52, 52, 49, 51, 32.66257 + 52, 52, 52, 53, 55, 58, 60, 58, 54, 53, 54, 58, 62, 66, 67, 67, 32.66258 + 65, 63, 62, 64, 68, 71, 70, 75, 78, 77, 81, 90, 94, 91, 91, 95, 32.66259 + 102, 110, 107, 101, 104, 111, 121, 114, 157, 180, 207, 177, 169, 197, 223, 194, 32.66260 + 184, 185, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66261 + 255, 255, 255, 255, 255, 38, 26, 22, 30, 42, 44, 40, 35, 34, 39, 39, 32.66262 + 34, 35, 42, 41, 31, 26, 31, 43, 49, 53, 55, 58, 61, 62, 68, 67, 32.66263 + 54, 40, 32, 31, 32, 39, 41, 44, 45, 47, 46, 45, 44, 44, 42, 42, 32.66264 + 43, 43, 44, 44, 44, 43, 44, 44, 45, 45, 44, 44, 43, 44, 45, 47, 32.66265 + 49, 49, 47, 45, 44, 44, 45, 47, 47, 46, 47, 48, 50, 50, 51, 53, 32.66266 + 55, 55, 54, 53, 52, 55, 55, 56, 57, 58, 58, 59, 59, 60, 61, 61, 32.66267 + 62, 63, 64, 65, 65, 69, 70, 71, 73, 75, 78, 81, 83, 84, 88, 94, 32.66268 + 98, 103, 106, 111, 113, 132, 139, 99, 99, 153, 178, 172, 172, 187, 218, 213, 32.66269 + 195, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66270 + 255, 255, 255, 185, 57, 46, 37, 37, 43, 40, 39, 34, 35, 37, 37, 32, 32.66271 + 33, 34, 35, 31, 30, 43, 60, 69, 74, 76, 85, 90, 77, 83, 85, 79, 32.66272 + 73, 63, 51, 42, 39, 40, 40, 43, 46, 49, 51, 48, 42, 42, 42, 43, 32.66273 + 43, 43, 44, 44, 44, 45, 46, 47, 47, 46, 45, 44, 44, 46, 47, 49, 32.66274 + 49, 47, 46, 44, 43, 45, 47, 47, 46, 46, 48, 50, 50, 51, 51, 52, 32.66275 + 53, 53, 52, 52, 55, 55, 55, 55, 55, 55, 54, 54, 63, 63, 63, 63, 32.66276 + 63, 64, 64, 64, 68, 69, 70, 73, 75, 78, 80, 81, 84, 86, 88, 90, 32.66277 + 92, 98, 104, 105, 131, 132, 119, 103, 113, 147, 172, 164, 183, 213, 222, 221, 32.66278 + 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66279 + 255, 255, 66, 49, 41, 34, 36, 38, 37, 41, 41, 39, 37, 35, 36, 34, 32.66280 + 31, 36, 42, 58, 70, 86, 90, 87, 85, 94, 99, 85, 87, 91, 91, 93, 32.66281 + 87, 73, 58, 47, 42, 36, 37, 42, 47, 49, 46, 42, 42, 42, 42, 43, 32.66282 + 43, 43, 44, 44, 45, 47, 49, 49, 47, 45, 44, 45, 46, 47, 48, 48, 32.66283 + 47, 46, 45, 43, 45, 47, 47, 46, 46, 48, 50, 50, 50, 50, 50, 50, 32.66284 + 51, 52, 53, 55, 56, 56, 56, 56, 57, 57, 57, 66, 65, 64, 64, 63, 32.66285 + 63, 64, 64, 67, 68, 71, 73, 76, 78, 79, 79, 80, 80, 83, 83, 86, 32.66286 + 91, 98, 102, 92, 99, 130, 131, 118, 158, 183, 152, 194, 203, 218, 229, 231, 32.66287 + 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66288 + 192, 36, 34, 30, 29, 32, 35, 38, 43, 46, 42, 37, 37, 42, 38, 36, 32.66289 + 44, 59, 84, 88, 94, 92, 86, 83, 86, 88, 87, 84, 83, 83, 88, 93, 32.66290 + 89, 81, 63, 52, 38, 34, 38, 41, 40, 39, 41, 41, 42, 42, 42, 43, 32.66291 + 43, 43, 43, 45, 47, 49, 49, 47, 45, 43, 44, 44, 45, 46, 46, 45, 32.66292 + 44, 44, 45, 47, 48, 49, 48, 48, 50, 52, 52, 51, 50, 49, 50, 51, 32.66293 + 53, 54, 50, 51, 53, 55, 57, 59, 61, 62, 65, 64, 63, 63, 63, 64, 32.66294 + 65, 66, 68, 69, 72, 75, 77, 78, 79, 79, 78, 80, 81, 86, 89, 95, 32.66295 + 102, 106, 99, 85, 107, 113, 121, 169, 198, 186, 198, 180, 194, 219, 227, 227, 32.66296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 80, 32.66297 + 23, 36, 34, 35, 37, 38, 37, 39, 43, 41, 36, 37, 44, 45, 47, 58, 32.66298 + 75, 92, 89, 88, 84, 83, 82, 84, 84, 83, 83, 83, 80, 84, 91, 93, 32.66299 + 93, 78, 64, 46, 36, 34, 38, 37, 37, 41, 41, 41, 42, 42, 42, 43, 32.66300 + 43, 42, 43, 45, 47, 47, 45, 43, 42, 42, 43, 43, 43, 43, 43, 43, 32.66301 + 42, 47, 49, 50, 50, 50, 50, 52, 53, 53, 53, 51, 51, 51, 53, 54, 32.66302 + 55, 48, 49, 51, 53, 55, 57, 59, 59, 62, 62, 61, 61, 63, 65, 68, 32.66303 + 69, 70, 71, 73, 75, 77, 79, 80, 80, 78, 81, 86, 92, 95, 100, 104, 32.66304 + 105, 110, 97, 101, 105, 136, 163, 171, 200, 195, 166, 176, 211, 230, 234, 236, 32.66305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 38, 32.66306 + 36, 35, 34, 40, 39, 37, 40, 41, 37, 36, 37, 44, 50, 59, 71, 83, 32.66307 + 94, 90, 83, 79, 81, 83, 83, 81, 79, 84, 87, 85, 84, 86, 88, 87, 32.66308 + 87, 73, 55, 41, 36, 39, 42, 42, 39, 41, 41, 41, 42, 42, 42, 42, 32.66309 + 43, 44, 44, 44, 44, 44, 44, 43, 43, 43, 43, 43, 43, 43, 43, 43, 32.66310 + 47, 49, 50, 51, 50, 50, 52, 54, 53, 53, 52, 52, 53, 54, 54, 55, 32.66311 + 57, 57, 57, 58, 58, 58, 59, 59, 60, 60, 59, 59, 61, 65, 68, 70, 32.66312 + 72, 72, 72, 73, 75, 77, 79, 79, 78, 81, 88, 91, 94, 97, 99, 100, 32.66313 + 101, 108, 117, 119, 154, 155, 139, 201, 213, 187, 180, 197, 220, 233, 228, 255, 32.66314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 1, 41, 35, 32.66315 + 31, 29, 34, 36, 37, 42, 42, 38, 40, 42, 46, 55, 72, 84, 88, 88, 32.66316 + 87, 84, 82, 81, 80, 81, 77, 77, 82, 85, 83, 81, 82, 81, 80, 90, 32.66317 + 78, 59, 44, 36, 35, 40, 45, 39, 40, 41, 41, 41, 42, 42, 42, 46, 32.66318 + 45, 44, 44, 44, 44, 45, 46, 45, 45, 44, 44, 44, 44, 45, 45, 45, 32.66319 + 47, 49, 49, 48, 48, 50, 52, 51, 51, 52, 53, 53, 53, 53, 53, 60, 32.66320 + 60, 60, 60, 59, 59, 59, 59, 61, 60, 58, 58, 59, 63, 66, 68, 72, 32.66321 + 71, 69, 69, 71, 74, 77, 79, 77, 80, 85, 88, 91, 94, 99, 102, 111, 32.66322 + 112, 118, 105, 133, 147, 140, 207, 215, 206, 186, 180, 198, 218, 226, 255, 255, 32.66323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 63, 72, 48, 39, 32.66324 + 34, 34, 35, 36, 36, 38, 40, 45, 48, 47, 61, 80, 91, 89, 67, 73, 32.66325 + 78, 80, 80, 80, 82, 83, 85, 84, 83, 78, 80, 82, 84, 83, 91, 79, 32.66326 + 60, 44, 33, 32, 37, 43, 39, 39, 40, 40, 41, 41, 42, 41, 49, 46, 32.66327 + 45, 43, 44, 44, 47, 48, 47, 45, 46, 44, 45, 45, 46, 46, 44, 44, 32.66328 + 47, 46, 47, 46, 48, 50, 48, 49, 51, 52, 53, 52, 51, 49, 50, 50, 32.66329 + 51, 51, 52, 53, 54, 54, 62, 61, 59, 57, 58, 60, 64, 66, 71, 69, 32.66330 + 67, 66, 67, 71, 76, 78, 75, 76, 81, 84, 90, 97, 105, 107, 96, 95, 32.66331 + 120, 113, 137, 154, 130, 165, 180, 199, 190, 176, 191, 207, 214, 255, 255, 255, 32.66332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 51, 35, 32, 41, 31, 27, 32.66333 + 38, 42, 36, 31, 31, 37, 38, 48, 56, 66, 87, 94, 79, 76, 77, 78, 32.66334 + 81, 80, 80, 87, 97, 94, 88, 82, 80, 72, 62, 59, 62, 90, 85, 68, 32.66335 + 48, 37, 38, 42, 43, 42, 40, 42, 40, 42, 40, 42, 40, 44, 42, 43, 32.66336 + 41, 44, 42, 45, 44, 44, 42, 45, 43, 45, 42, 43, 41, 43, 41, 43, 32.66337 + 42, 44, 42, 45, 45, 47, 46, 46, 47, 48, 49, 50, 49, 51, 49, 52, 32.66338 + 51, 51, 52, 53, 53, 48, 54, 59, 61, 61, 60, 62, 65, 61, 62, 66, 32.66339 + 69, 67, 66, 72, 80, 79, 79, 80, 79, 82, 88, 99, 104, 95, 98, 99, 32.66340 + 105, 125, 147, 145, 129, 121, 146, 149, 194, 213, 225, 225, 255, 255, 255, 255, 32.66341 + 255, 255, 255, 255, 255, 255, 255, 255, 135, 138, 126, 97, 58, 43, 32, 33, 32.66342 + 34, 30, 33, 38, 42, 43, 55, 67, 76, 86, 91, 80, 86, 84, 84, 87, 32.66343 + 88, 86, 89, 95, 101, 94, 88, 77, 68, 59, 63, 75, 84, 80, 67, 50, 32.66344 + 40, 42, 47, 45, 39, 36, 36, 37, 37, 37, 37, 37, 41, 41, 41, 40, 32.66345 + 41, 42, 43, 43, 41, 41, 42, 43, 43, 43, 42, 42, 44, 44, 45, 45, 32.66346 + 46, 46, 46, 46, 47, 47, 47, 47, 48, 49, 50, 49, 49, 49, 50, 51, 32.66347 + 52, 50, 51, 53, 51, 56, 60, 63, 62, 61, 59, 59, 62, 62, 66, 69, 32.66348 + 67, 66, 72, 80, 79, 80, 83, 84, 84, 88, 96, 100, 98, 97, 96, 100, 32.66349 + 117, 139, 144, 132, 132, 159, 162, 199, 215, 231, 234, 255, 255, 255, 255, 255, 32.66350 + 255, 255, 255, 255, 255, 255, 255, 19, 11, 53, 96, 62, 48, 35, 31, 31, 32.66351 + 29, 34, 43, 46, 47, 64, 80, 83, 85, 87, 82, 89, 84, 83, 87, 89, 32.66352 + 85, 83, 84, 92, 95, 99, 91, 79, 66, 64, 72, 80, 78, 67, 51, 43, 32.66353 + 42, 47, 46, 40, 40, 40, 40, 41, 42, 42, 42, 42, 42, 42, 42, 42, 32.66354 + 43, 44, 44, 42, 43, 44, 45, 46, 46, 46, 45, 44, 45, 45, 45, 46, 32.66355 + 46, 46, 46, 49, 48, 48, 49, 49, 50, 51, 52, 51, 52, 52, 53, 54, 32.66356 + 53, 53, 53, 56, 58, 60, 62, 63, 61, 57, 54, 63, 63, 66, 69, 68, 32.66357 + 67, 72, 79, 76, 79, 83, 85, 84, 86, 90, 91, 96, 94, 92, 91, 104, 32.66358 + 126, 141, 137, 146, 173, 170, 198, 206, 225, 228, 255, 255, 255, 255, 255, 255, 32.66359 + 255, 255, 255, 255, 255, 185, 35, 6, 12, 31, 45, 39, 34, 34, 34, 32, 32.66360 + 35, 38, 48, 46, 65, 86, 86, 79, 83, 82, 85, 80, 78, 84, 88, 83, 32.66361 + 77, 75, 72, 77, 81, 81, 75, 69, 70, 73, 80, 78, 67, 51, 43, 43, 32.66362 + 48, 48, 41, 41, 41, 42, 43, 43, 44, 44, 42, 41, 41, 41, 41, 42, 32.66363 + 43, 44, 41, 42, 44, 45, 46, 47, 47, 47, 44, 44, 44, 45, 45, 45, 32.66364 + 46, 46, 49, 49, 49, 49, 50, 51, 52, 52, 52, 52, 53, 53, 54, 55, 32.66365 + 56, 56, 61, 59, 57, 58, 61, 62, 59, 55, 65, 63, 65, 68, 68, 66, 32.66366 + 71, 76, 74, 76, 83, 83, 84, 81, 83, 85, 89, 89, 87, 85, 96, 115, 32.66367 + 132, 137, 165, 193, 186, 204, 207, 227, 233, 255, 255, 255, 255, 255, 255, 255, 32.66368 + 255, 255, 255, 255, 11, 11, 26, 41, 35, 35, 35, 35, 36, 35, 33, 36, 32.66369 + 39, 52, 50, 68, 88, 86, 80, 85, 87, 84, 78, 78, 85, 91, 86, 80, 32.66370 + 75, 67, 62, 54, 50, 55, 68, 83, 91, 83, 81, 68, 51, 41, 43, 47, 32.66371 + 47, 39, 39, 40, 40, 41, 41, 42, 42, 43, 42, 42, 42, 42, 43, 44, 32.66372 + 45, 43, 44, 45, 47, 48, 48, 48, 48, 49, 49, 50, 50, 50, 51, 51, 32.66373 + 51, 50, 50, 50, 50, 51, 52, 54, 54, 53, 53, 54, 55, 56, 56, 57, 32.66374 + 57, 62, 58, 54, 54, 58, 62, 62, 61, 65, 63, 63, 66, 67, 65, 69, 32.66375 + 73, 73, 75, 83, 84, 86, 83, 86, 87, 84, 86, 86, 86, 92, 107, 122, 32.66376 + 130, 147, 177, 170, 191, 197, 217, 227, 255, 255, 255, 255, 255, 255, 255, 255, 32.66377 + 255, 255, 255, 44, 26, 24, 30, 26, 37, 39, 39, 36, 31, 33, 39, 45, 32.66378 + 56, 56, 73, 87, 85, 86, 91, 88, 77, 73, 74, 81, 87, 83, 77, 73, 32.66379 + 84, 79, 71, 68, 74, 84, 90, 90, 84, 81, 70, 55, 45, 43, 47, 46, 32.66380 + 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 44, 45, 45, 32.66381 + 44, 45, 46, 47, 48, 48, 48, 47, 49, 49, 49, 49, 50, 50, 50, 51, 32.66382 + 51, 51, 51, 51, 52, 53, 54, 55, 54, 54, 54, 55, 56, 57, 59, 58, 32.66383 + 60, 57, 54, 54, 57, 61, 64, 65, 65, 62, 61, 64, 65, 64, 66, 70, 32.66384 + 73, 77, 83, 85, 88, 88, 93, 96, 88, 88, 87, 86, 89, 100, 111, 119, 32.66385 + 110, 138, 138, 170, 180, 199, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66386 + 255, 179, 32, 37, 33, 27, 18, 33, 37, 39, 35, 33, 37, 45, 51, 59, 32.66387 + 62, 80, 89, 85, 90, 91, 81, 69, 66, 68, 74, 79, 74, 70, 68, 82, 32.66388 + 88, 92, 93, 93, 94, 88, 79, 78, 79, 72, 61, 50, 49, 48, 46, 49, 32.66389 + 51, 50, 50, 49, 48, 48, 47, 46, 46, 46, 45, 46, 47, 48, 48, 48, 32.66390 + 48, 49, 50, 50, 49, 49, 48, 49, 49, 49, 49, 50, 50, 51, 51, 51, 32.66391 + 51, 51, 52, 52, 54, 57, 58, 56, 56, 57, 57, 58, 59, 62, 60, 55, 32.66392 + 57, 58, 59, 59, 60, 62, 63, 65, 60, 59, 62, 63, 62, 64, 67, 70, 32.66393 + 74, 79, 81, 87, 90, 96, 101, 98, 94, 90, 86, 87, 93, 103, 108, 100, 32.66394 + 124, 127, 166, 175, 185, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66395 + 53, 25, 9, 26, 41, 27, 19, 28, 37, 38, 37, 40, 47, 50, 57, 64, 32.66396 + 81, 87, 84, 90, 89, 71, 67, 65, 67, 72, 75, 70, 67, 66, 57, 68, 32.66397 + 75, 77, 78, 84, 85, 83, 74, 76, 73, 66, 56, 52, 48, 45, 48, 50, 32.66398 + 49, 48, 46, 45, 44, 44, 47, 47, 46, 46, 47, 47, 48, 49, 49, 49, 32.66399 + 50, 50, 50, 49, 48, 48, 52, 52, 53, 53, 53, 54, 54, 52, 52, 52, 32.66400 + 52, 52, 53, 54, 57, 58, 56, 56, 57, 58, 60, 61, 62, 60, 54, 57, 32.66401 + 62, 63, 61, 59, 59, 60, 64, 60, 58, 61, 62, 61, 62, 65, 65, 68, 32.66402 + 74, 76, 81, 88, 97, 103, 108, 100, 92, 88, 86, 89, 96, 103, 88, 109, 32.66403 + 109, 149, 152, 153, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 32.66404 + 24, 16, 24, 27, 35, 30, 29, 32, 35, 35, 38, 49, 56, 65, 65, 75, 32.66405 + 83, 85, 82, 85, 89, 69, 63, 65, 70, 72, 66, 63, 62, 69, 63, 64, 32.66406 + 76, 83, 81, 76, 75, 73, 71, 67, 62, 56, 53, 49, 47, 50, 48, 45, 32.66407 + 44, 45, 46, 46, 45, 44, 45, 46, 47, 48, 47, 47, 47, 44, 42, 47, 32.66408 + 56, 57, 52, 50, 53, 53, 50, 50, 53, 53, 51, 51, 54, 53, 53, 53, 32.66409 + 55, 56, 56, 55, 52, 59, 55, 52, 54, 61, 62, 58, 52, 57, 56, 57, 32.66410 + 57, 55, 55, 56, 57, 59, 60, 62, 64, 64, 64, 62, 61, 61, 66, 72, 32.66411 + 74, 75, 76, 84, 90, 97, 96, 93, 93, 91, 88, 94, 99, 90, 86, 88, 32.66412 + 109, 131, 132, 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 23, 23, 32.66413 + 43, 26, 16, 33, 34, 33, 34, 40, 46, 52, 62, 68, 68, 67, 74, 82, 32.66414 + 83, 79, 80, 84, 77, 66, 59, 59, 65, 66, 68, 68, 69, 67, 70, 81, 32.66415 + 87, 84, 79, 78, 72, 71, 67, 59, 54, 50, 46, 45, 50, 50, 48, 47, 32.66416 + 47, 45, 41, 38, 44, 44, 44, 44, 45, 45, 45, 45, 48, 46, 49, 55, 32.66417 + 56, 51, 49, 51, 50, 48, 49, 54, 55, 52, 53, 55, 53, 50, 52, 54, 32.66418 + 56, 57, 55, 54, 59, 59, 58, 59, 64, 66, 63, 58, 59, 59, 59, 58, 32.66419 + 56, 55, 56, 57, 61, 61, 61, 61, 61, 62, 63, 63, 63, 67, 70, 71, 32.66420 + 72, 73, 79, 82, 90, 90, 91, 94, 92, 88, 91, 96, 93, 89, 83, 96, 32.66421 + 118, 122, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 128, 60, 6, 32.66422 + 16, 37, 30, 34, 31, 32, 40, 49, 56, 65, 72, 73, 70, 74, 81, 83, 32.66423 + 79, 77, 76, 85, 70, 58, 58, 65, 70, 72, 72, 71, 73, 81, 91, 93, 32.66424 + 88, 83, 81, 72, 69, 65, 59, 52, 48, 44, 43, 38, 41, 42, 45, 48, 32.66425 + 48, 45, 43, 45, 44, 43, 43, 42, 43, 43, 44, 50, 48, 49, 52, 52, 32.66426 + 49, 48, 50, 48, 47, 50, 55, 57, 54, 54, 55, 53, 51, 53, 55, 56, 32.66427 + 58, 55, 55, 54, 55, 55, 56, 59, 59, 61, 59, 61, 60, 61, 60, 58, 32.66428 + 56, 57, 58, 62, 61, 59, 58, 59, 60, 63, 64, 65, 66, 69, 71, 73, 32.66429 + 75, 77, 78, 79, 82, 89, 93, 92, 89, 90, 94, 100, 97, 87, 90, 109, 32.66430 + 119, 120, 255, 255, 255, 255, 255, 255, 255, 255, 255, 40, 32, 68, 62, 29, 32.66431 + 24, 39, 33, 29, 31, 40, 51, 59, 66, 70, 77, 71, 73, 79, 82, 79, 32.66432 + 76, 75, 85, 75, 68, 66, 70, 68, 69, 70, 77, 83, 92, 98, 97, 90, 32.66433 + 83, 80, 72, 67, 64, 60, 53, 46, 42, 44, 38, 38, 41, 42, 48, 48, 32.66434 + 49, 46, 48, 46, 46, 43, 45, 43, 46, 45, 52, 49, 50, 49, 51, 48, 32.66435 + 51, 50, 52, 49, 54, 57, 61, 56, 58, 56, 56, 54, 54, 55, 58, 59, 32.66436 + 56, 56, 50, 53, 54, 55, 55, 55, 57, 58, 57, 58, 60, 59, 58, 57, 32.66437 + 58, 60, 61, 60, 59, 59, 59, 61, 62, 63, 65, 65, 68, 72, 77, 81, 32.66438 + 83, 83, 77, 80, 87, 94, 94, 89, 92, 96, 96, 102, 95, 92, 107, 118, 32.66439 + 123, 172, 255, 255, 255, 255, 255, 255, 255, 36, 28, 26, 24, 19, 33, 45, 32.66440 + 34, 35, 33, 36, 48, 60, 67, 73, 78, 75, 71, 73, 79, 84, 82, 80, 32.66441 + 78, 86, 81, 77, 70, 66, 60, 64, 71, 86, 93, 100, 101, 100, 93, 85, 32.66442 + 79, 77, 70, 65, 63, 57, 48, 44, 47, 52, 49, 47, 43, 45, 44, 46, 32.66443 + 43, 50, 48, 49, 47, 49, 47, 50, 48, 51, 49, 51, 48, 51, 51, 55, 32.66444 + 53, 58, 54, 58, 61, 64, 60, 61, 60, 61, 59, 59, 60, 63, 62, 60, 32.66445 + 59, 56, 58, 60, 58, 56, 55, 57, 58, 54, 55, 57, 58, 57, 58, 60, 32.66446 + 62, 59, 60, 61, 62, 63, 62, 61, 61, 67, 67, 69, 73, 76, 80, 81, 32.66447 + 81, 87, 88, 91, 94, 91, 88, 92, 96, 85, 98, 99, 96, 104, 115, 126, 32.66448 + 141, 255, 255, 255, 255, 255, 255, 255, 55, 39, 28, 32, 29, 30, 32, 27, 32.66449 + 33, 33, 41, 56, 67, 73, 77, 82, 73, 69, 73, 79, 83, 84, 83, 85, 32.66450 + 91, 86, 80, 68, 59, 54, 64, 77, 94, 98, 101, 99, 97, 93, 85, 78, 32.66451 + 81, 73, 68, 68, 62, 50, 47, 53, 58, 54, 51, 47, 51, 52, 56, 55, 32.66452 + 55, 53, 57, 56, 58, 56, 57, 55, 53, 54, 56, 52, 55, 57, 60, 56, 32.66453 + 63, 59, 62, 65, 69, 66, 69, 70, 69, 66, 66, 67, 70, 69, 68, 66, 32.66454 + 64, 63, 62, 60, 58, 57, 57, 56, 53, 55, 57, 58, 57, 58, 59, 61, 32.66455 + 59, 60, 63, 64, 65, 64, 62, 61, 69, 70, 72, 74, 74, 75, 77, 78, 32.66456 + 96, 94, 94, 93, 91, 86, 89, 95, 88, 101, 105, 101, 107, 116, 135, 161, 32.66457 + 255, 255, 255, 255, 255, 255, 24, 22, 30, 32, 36, 39, 30, 30, 44, 37, 32.66458 + 40, 51, 63, 68, 69, 72, 75, 70, 71, 76, 82, 83, 84, 85, 90, 92, 32.66459 + 89, 84, 76, 69, 63, 70, 81, 97, 99, 97, 93, 94, 95, 90, 80, 85, 32.66460 + 76, 71, 73, 66, 55, 51, 57, 58, 57, 56, 57, 63, 66, 71, 71, 64, 32.66461 + 65, 69, 71, 73, 72, 71, 69, 60, 63, 64, 60, 61, 63, 64, 60, 66, 32.66462 + 62, 64, 68, 73, 73, 79, 81, 77, 74, 74, 75, 78, 78, 75, 74, 76, 32.66463 + 73, 66, 63, 63, 61, 58, 55, 58, 59, 60, 59, 58, 57, 58, 60, 62, 32.66464 + 62, 63, 64, 64, 64, 64, 64, 69, 72, 76, 76, 74, 75, 78, 82, 91, 32.66465 + 90, 93, 93, 92, 88, 91, 97, 103, 104, 103, 103, 109, 117, 140, 172, 255, 32.66466 + 255, 255, 255, 255, 255, 51, 26, 46, 38, 26, 36, 41, 37, 42, 46, 50, 32.66467 + 61, 71, 72, 68, 68, 70, 71, 73, 77, 84, 83, 83, 88, 93, 93, 90, 32.66468 + 91, 89, 84, 78, 76, 79, 98, 97, 93, 88, 90, 96, 90, 80, 86, 76, 32.66469 + 72, 74, 69, 55, 52, 59, 64, 64, 64, 66, 69, 71, 71, 70, 72, 75, 32.66470 + 79, 83, 85, 84, 82, 80, 64, 69, 69, 64, 63, 66, 65, 60, 65, 62, 32.66471 + 63, 69, 74, 78, 84, 89, 82, 80, 81, 82, 84, 83, 80, 79, 90, 82, 32.66472 + 73, 68, 69, 67, 62, 58, 62, 65, 65, 64, 61, 57, 59, 58, 65, 64, 32.66473 + 63, 62, 62, 64, 66, 67, 67, 72, 78, 80, 77, 78, 84, 90, 76, 78, 32.66474 + 84, 89, 89, 87, 91, 100, 109, 104, 94, 96, 106, 112, 136, 173, 255, 255, 32.66475 + 255, 255, 255, 176, 44, 33, 37, 39, 39, 44, 50, 54, 51, 63, 62, 65, 32.66476 + 67, 70, 74, 75, 75, 72, 70, 73, 79, 85, 88, 86, 82, 86, 92, 93, 32.66477 + 86, 80, 82, 84, 85, 91, 87, 83, 83, 84, 86, 85, 83, 83, 83, 81, 32.66478 + 76, 70, 65, 64, 64, 64, 66, 68, 70, 72, 73, 74, 74, 83, 86, 85, 32.66479 + 82, 85, 91, 90, 84, 78, 77, 75, 74, 72, 72, 71, 71, 73, 76, 79, 32.66480 + 80, 79, 80, 84, 87, 98, 98, 97, 94, 90, 85, 80, 79, 79, 80, 79, 32.66481 + 72, 65, 57, 53, 55, 63, 63, 62, 65, 66, 60, 60, 58, 55, 60, 66, 32.66482 + 69, 66, 65, 66, 68, 72, 74, 76, 79, 81, 84, 87, 91, 87, 85, 81, 32.66483 + 83, 86, 88, 88, 89, 96, 93, 92, 93, 96, 102, 114, 125, 255, 255, 255, 32.66484 + 255, 255, 34, 56, 42, 47, 48, 48, 52, 58, 59, 55, 65, 66, 68, 71, 32.66485 + 75, 78, 80, 79, 74, 72, 74, 78, 84, 87, 86, 85, 83, 89, 90, 85, 32.66486 + 80, 81, 83, 84, 87, 84, 81, 81, 83, 85, 84, 83, 86, 82, 77, 74, 32.66487 + 74, 74, 72, 70, 71, 72, 74, 76, 78, 79, 79, 80, 84, 87, 86, 84, 32.66488 + 86, 91, 91, 86, 86, 85, 85, 84, 84, 84, 85, 85, 87, 90, 92, 93, 32.66489 + 92, 93, 95, 98, 99, 99, 98, 97, 93, 89, 85, 83, 81, 82, 81, 75, 32.66490 + 67, 59, 55, 60, 58, 59, 59, 64, 67, 64, 66, 66, 61, 62, 63, 64, 32.66491 + 62, 63, 65, 67, 70, 71, 72, 74, 77, 83, 89, 93, 93, 86, 82, 82, 32.66492 + 88, 89, 89, 90, 96, 94, 93, 93, 94, 94, 101, 110, 255, 255, 255, 255, 32.66493 + 45, 44, 58, 51, 57, 58, 59, 63, 67, 67, 62, 66, 67, 69, 71, 74, 32.66494 + 76, 78, 76, 77, 74, 74, 77, 81, 84, 85, 85, 84, 89, 89, 83, 78, 32.66495 + 79, 81, 81, 82, 81, 80, 81, 83, 85, 86, 85, 89, 82, 75, 75, 81, 32.66496 + 84, 81, 78, 77, 79, 80, 82, 84, 84, 85, 85, 87, 89, 88, 87, 89, 32.66497 + 93, 93, 89, 91, 91, 91, 92, 93, 95, 96, 97, 94, 96, 97, 98, 97, 32.66498 + 97, 99, 101, 99, 100, 100, 99, 98, 95, 93, 91, 91, 91, 90, 85, 78, 32.66499 + 72, 68, 70, 66, 64, 62, 64, 64, 59, 60, 61, 66, 63, 59, 58, 60, 32.66500 + 64, 67, 69, 69, 69, 70, 70, 71, 77, 84, 89, 96, 88, 84, 83, 88, 32.66501 + 93, 94, 94, 101, 100, 96, 96, 92, 89, 90, 95, 255, 255, 255, 255, 47, 32.66502 + 48, 53, 56, 62, 64, 65, 68, 71, 69, 64, 69, 69, 70, 72, 74, 75, 32.66503 + 76, 75, 77, 74, 73, 73, 76, 79, 81, 83, 87, 90, 89, 81, 76, 76, 32.66504 + 76, 76, 79, 79, 80, 82, 84, 86, 88, 88, 87, 83, 80, 81, 85, 87, 32.66505 + 85, 82, 81, 82, 83, 85, 86, 86, 86, 86, 89, 89, 89, 89, 91, 94, 32.66506 + 93, 91, 90, 90, 90, 91, 92, 93, 95, 96, 94, 94, 95, 95, 95, 95, 32.66507 + 95, 96, 99, 99, 100, 100, 100, 99, 98, 97, 94, 94, 92, 89, 84, 79, 32.66508 + 75, 77, 71, 68, 63, 63, 61, 56, 54, 57, 64, 62, 57, 57, 61, 66, 32.66509 + 68, 68, 70, 70, 70, 70, 70, 71, 75, 79, 91, 88, 86, 83, 84, 86, 32.66510 + 92, 98, 107, 104, 102, 102, 98, 94, 95, 100, 255, 255, 255, 65, 59, 52, 32.66511 + 55, 61, 66, 68, 68, 70, 73, 70, 65, 74, 75, 76, 77, 78, 79, 80, 32.66512 + 79, 78, 75, 73, 72, 73, 75, 78, 81, 86, 88, 87, 80, 77, 78, 77, 32.66513 + 75, 78, 80, 82, 84, 86, 87, 89, 90, 82, 84, 86, 87, 87, 85, 84, 32.66514 + 84, 84, 85, 86, 87, 87, 87, 87, 87, 91, 89, 88, 91, 93, 93, 93, 32.66515 + 93, 91, 91, 90, 90, 90, 90, 91, 92, 98, 97, 97, 97, 98, 98, 98, 32.66516 + 98, 98, 98, 99, 100, 100, 100, 100, 100, 92, 91, 90, 88, 85, 82, 78, 32.66517 + 77, 70, 65, 60, 60, 61, 59, 59, 63, 60, 59, 57, 59, 66, 69, 71, 32.66518 + 69, 71, 74, 77, 76, 75, 75, 77, 76, 79, 82, 84, 81, 77, 76, 87, 32.66519 + 96, 108, 105, 105, 104, 105, 104, 110, 118, 255, 255, 255, 52, 64, 59, 64, 32.66520 + 67, 71, 72, 70, 72, 75, 73, 68, 74, 74, 75, 76, 77, 78, 79, 78, 32.66521 + 76, 74, 73, 71, 70, 70, 73, 76, 77, 80, 80, 77, 77, 81, 82, 79, 32.66522 + 79, 82, 85, 86, 86, 87, 88, 90, 80, 84, 88, 89, 87, 84, 84, 86, 32.66523 + 88, 88, 89, 90, 90, 90, 89, 89, 93, 89, 89, 93, 95, 94, 93, 95, 32.66524 + 95, 95, 94, 93, 92, 92, 92, 92, 100, 98, 97, 98, 100, 101, 100, 99, 32.66525 + 99, 99, 99, 99, 99, 99, 100, 100, 97, 96, 94, 94, 93, 91, 87, 86, 32.66526 + 81, 74, 66, 63, 60, 58, 57, 61, 59, 60, 61, 65, 69, 70, 71, 70, 32.66527 + 70, 74, 79, 82, 82, 82, 83, 84, 72, 78, 81, 78, 73, 74, 83, 93, 32.66528 + 101, 100, 102, 108, 112, 115, 125, 134, 255, 255, 190, 54, 63, 66, 70, 71, 32.66529 + 75, 74, 71, 73, 76, 74, 70, 71, 71, 72, 73, 75, 76, 77, 76, 76, 32.66530 + 75, 75, 72, 69, 69, 71, 74, 73, 75, 75, 74, 77, 82, 84, 81, 79, 32.66531 + 82, 86, 86, 85, 84, 85, 87, 85, 84, 83, 84, 86, 88, 89, 89, 87, 32.66532 + 87, 88, 88, 88, 88, 87, 86, 94, 89, 89, 94, 96, 94, 93, 96, 96, 32.66533 + 95, 94, 93, 93, 93, 93, 94, 96, 94, 93, 95, 98, 99, 98, 96, 100, 32.66534 + 99, 99, 98, 98, 98, 98, 98, 101, 100, 98, 99, 100, 99, 95, 92, 97, 32.66535 + 86, 76, 69, 64, 56, 54, 57, 62, 65, 68, 68, 67, 66, 69, 70, 68, 32.66536 + 71, 75, 78, 79, 81, 83, 85, 76, 78, 79, 78, 78, 80, 84, 88, 96, 32.66537 + 96, 102, 112, 119, 123, 132, 178, 255, 255, 66, 65, 60, 69, 67, 73, 76, 32.66538 + 73, 70, 71, 75, 74, 70, 73, 74, 75, 76, 78, 79, 80, 79, 76, 76, 32.66539 + 76, 74, 70, 69, 70, 73, 73, 75, 75, 73, 76, 81, 82, 79, 79, 82, 32.66540 + 86, 86, 83, 81, 82, 84, 90, 84, 78, 79, 86, 92, 94, 93, 86, 86, 32.66541 + 87, 87, 86, 86, 85, 84, 97, 91, 90, 96, 99, 96, 95, 98, 92, 92, 32.66542 + 91, 91, 91, 91, 92, 93, 95, 93, 92, 94, 97, 99, 98, 96, 102, 101, 32.66543 + 100, 99, 98, 97, 98, 98, 99, 97, 96, 97, 99, 98, 94, 90, 95, 84, 32.66544 + 75, 68, 65, 62, 62, 65, 66, 69, 71, 70, 65, 64, 66, 71, 70, 71, 32.66545 + 73, 73, 73, 74, 78, 81, 82, 79, 77, 80, 84, 88, 87, 85, 93, 94, 32.66546 + 105, 118, 124, 129, 136, 255, 255, 255, 58, 58, 66, 73, 72, 70, 74, 76, 32.66547 + 75, 73, 71, 71, 72, 72, 73, 74, 77, 80, 81, 80, 76, 73, 73, 75, 32.66548 + 76, 76, 76, 76, 76, 78, 79, 81, 83, 84, 86, 86, 86, 78, 83, 89, 32.66549 + 92, 92, 90, 87, 86, 83, 79, 80, 85, 87, 85, 87, 93, 89, 87, 88, 32.66550 + 89, 90, 90, 91, 91, 92, 91, 90, 91, 93, 94, 93, 94, 95, 94, 93, 32.66551 + 92, 92, 92, 92, 93, 97, 93, 89, 89, 93, 96, 97, 97, 92, 93, 96, 32.66552 + 98, 96, 93, 96, 102, 97, 98, 98, 99, 99, 99, 98, 97, 91, 93, 92, 32.66553 + 84, 78, 74, 70, 65, 69, 69, 69, 69, 66, 66, 65, 66, 62, 73, 76, 32.66554 + 70, 72, 82, 82, 72, 70, 77, 76, 72, 79, 84, 92, 105, 94, 90, 101, 32.66555 + 126, 145, 137, 133, 255, 255, 255, 57, 64, 66, 66, 73, 70, 74, 75, 75, 32.66556 + 73, 71, 71, 72, 74, 74, 75, 78, 81, 82, 80, 78, 75, 74, 74, 75, 32.66557 + 75, 76, 76, 76, 78, 79, 81, 83, 84, 84, 84, 83, 83, 83, 82, 81, 32.66558 + 80, 83, 88, 92, 85, 81, 81, 86, 87, 85, 86, 89, 87, 85, 86, 86, 32.66559 + 87, 88, 89, 89, 92, 90, 89, 90, 92, 93, 93, 91, 95, 95, 94, 94, 32.66560 + 94, 93, 93, 93, 100, 98, 96, 96, 99, 101, 100, 99, 100, 96, 95, 98, 32.66561 + 98, 95, 94, 96, 99, 99, 99, 98, 98, 97, 96, 96, 92, 93, 92, 84, 32.66562 + 82, 82, 80, 78, 77, 77, 75, 72, 70, 66, 63, 60, 68, 75, 77, 74, 32.66563 + 76, 84, 86, 81, 75, 82, 79, 78, 86, 92, 101, 114, 115, 118, 116, 123, 32.66564 + 148, 162, 186, 255, 255, 120, 55, 69, 65, 59, 73, 70, 74, 75, 75, 73, 32.66565 + 71, 72, 73, 75, 75, 76, 79, 81, 82, 80, 78, 77, 76, 75, 74, 75, 32.66566 + 76, 77, 78, 79, 80, 83, 85, 85, 84, 82, 81, 85, 84, 81, 78, 78, 32.66567 + 82, 88, 94, 87, 84, 84, 86, 86, 85, 86, 87, 87, 85, 86, 86, 87, 32.66568 + 88, 89, 89, 92, 90, 90, 91, 93, 94, 93, 92, 95, 96, 96, 97, 97, 32.66569 + 95, 94, 93, 98, 96, 95, 96, 98, 99, 98, 96, 103, 96, 92, 96, 99, 32.66570 + 97, 94, 93, 98, 97, 97, 97, 97, 97, 98, 98, 94, 95, 92, 87, 87, 32.66571 + 93, 94, 93, 84, 83, 82, 80, 80, 74, 66, 61, 69, 72, 74, 76, 78, 32.66572 + 81, 84, 85, 74, 81, 78, 78, 87, 93, 100, 113, 111, 121, 122, 132, 155, 32.66573 + 167, 255, 255, 255, 131, 58, 69, 66, 60, 71, 71, 73, 75, 75, 73, 72, 32.66574 + 72, 73, 77, 77, 78, 80, 82, 82, 80, 78, 78, 77, 75, 73, 74, 75, 32.66575 + 77, 79, 80, 82, 84, 86, 86, 84, 81, 80, 81, 84, 87, 89, 88, 88, 32.66576 + 88, 89, 86, 85, 85, 86, 87, 87, 88, 88, 87, 87, 88, 89, 90, 90, 32.66577 + 91, 91, 93, 92, 91, 92, 94, 95, 94, 93, 93, 97, 98, 99, 99, 97, 32.66578 + 95, 93, 95, 94, 93, 93, 94, 96, 97, 97, 97, 93, 91, 96, 99, 98, 32.66579 + 96, 98, 96, 95, 95, 96, 97, 99, 101, 102, 94, 96, 95, 92, 94, 98, 32.66580 + 101, 99, 91, 89, 87, 88, 89, 85, 76, 71, 72, 71, 73, 80, 81, 78, 32.66581 + 77, 83, 73, 83, 82, 82, 90, 94, 97, 107, 96, 106, 122, 145, 159, 153, 32.66582 + 255, 255, 255, 140, 62, 65, 69, 66, 69, 71, 73, 75, 75, 73, 72, 73, 32.66583 + 74, 78, 78, 78, 80, 82, 81, 79, 77, 79, 77, 75, 74, 73, 75, 77, 32.66584 + 78, 82, 83, 85, 86, 85, 84, 82, 80, 79, 84, 89, 92, 92, 90, 88, 32.66585 + 88, 83, 85, 85, 85, 87, 90, 92, 90, 87, 85, 86, 87, 88, 88, 89, 32.66586 + 89, 93, 92, 91, 92, 94, 95, 94, 95, 94, 97, 99, 100, 100, 98, 96, 32.66587 + 94, 96, 95, 93, 92, 92, 95, 99, 102, 95, 93, 95, 98, 97, 95, 97, 32.66588 + 103, 96, 96, 96, 96, 96, 96, 97, 98, 95, 99, 100, 98, 98, 101, 99, 32.66589 + 96, 94, 94, 93, 93, 93, 90, 84, 80, 81, 80, 81, 85, 83, 77, 73, 32.66590 + 77, 76, 87, 87, 88, 97, 99, 97, 102, 95, 107, 123, 148, 164, 192, 255, 32.66591 + 255, 255, 129, 63, 61, 69, 75, 68, 70, 72, 74, 74, 73, 72, 73, 74, 32.66592 + 79, 78, 78, 79, 81, 80, 78, 75, 78, 77, 76, 75, 74, 75, 76, 77, 32.66593 + 82, 83, 83, 83, 83, 83, 82, 81, 81, 83, 84, 85, 84, 85, 88, 90, 32.66594 + 82, 85, 86, 85, 87, 92, 94, 91, 85, 83, 84, 84, 85, 86, 87, 87, 32.66595 + 93, 92, 91, 92, 94, 95, 94, 95, 95, 98, 99, 99, 99, 98, 96, 95, 32.66596 + 94, 93, 92, 90, 88, 89, 93, 94, 97, 96, 99, 101, 98, 93, 97, 104, 32.66597 + 101, 101, 100, 100, 98, 96, 94, 93, 96, 100, 102, 100, 100, 101, 98, 94, 32.66598 + 99, 98, 97, 92, 92, 88, 90, 89, 92, 92, 88, 83, 77, 72, 69, 67, 32.66599 + 77, 85, 86, 89, 99, 101, 102, 106, 107, 125, 132, 142, 173, 255, 255, 255, 32.66600 + 255, 99, 63, 60, 68, 79, 69, 70, 72, 74, 74, 73, 73, 73, 75, 78, 32.66601 + 78, 78, 79, 80, 79, 76, 73, 77, 77, 77, 76, 76, 75, 75, 75, 81, 32.66602 + 80, 79, 79, 79, 80, 81, 82, 81, 81, 81, 80, 80, 82, 86, 90, 84, 32.66603 + 88, 88, 85, 87, 92, 94, 89, 85, 83, 84, 84, 85, 86, 87, 87, 92, 32.66604 + 90, 90, 91, 93, 94, 93, 94, 96, 98, 98, 98, 97, 97, 96, 96, 92, 32.66605 + 93, 94, 92, 87, 84, 83, 82, 93, 90, 91, 95, 96, 93, 95, 99, 99, 32.66606 + 100, 102, 103, 102, 99, 96, 94, 101, 104, 104, 100, 100, 102, 99, 95, 100, 32.66607 + 101, 101, 95, 94, 94, 102, 108, 111, 111, 99, 82, 71, 71, 72, 66, 75, 32.66608 + 80, 80, 84, 98, 106, 112, 120, 122, 141, 150, 158, 183, 255, 255, 255, 125, 32.66609 + 71, 61, 64, 65, 80, 72, 70, 72, 74, 74, 73, 73, 74, 75, 78, 77, 32.66610 + 77, 78, 79, 78, 75, 72, 77, 77, 77, 77, 77, 76, 74, 74, 79, 78, 32.66611 + 76, 75, 75, 77, 80, 81, 78, 80, 83, 84, 84, 84, 85, 86, 86, 91, 32.66612 + 90, 86, 86, 92, 93, 87, 87, 85, 86, 87, 88, 88, 89, 89, 90, 89, 32.66613 + 88, 89, 91, 92, 91, 92, 97, 96, 95, 94, 94, 94, 96, 97, 96, 99, 32.66614 + 102, 100, 93, 86, 81, 79, 85, 80, 80, 88, 94, 96, 96, 97, 94, 95, 32.66615 + 100, 104, 105, 104, 102, 98, 103, 105, 102, 98, 97, 101, 102, 100, 102, 104, 32.66616 + 104, 101, 98, 103, 117, 130, 255, 255, 209, 89, 76, 81, 82, 76, 78, 82, 32.66617 + 79, 83, 101, 114, 124, 135, 137, 152, 168, 185, 209, 255, 255, 255, 95, 75, 32.66618 + 69, 59, 70, 74, 72, 67, 68, 69, 71, 73, 75, 76, 77, 73, 75, 78, 32.66619 + 78, 78, 77, 79, 80, 75, 81, 80, 73, 73, 81, 83, 78, 79, 75, 74, 32.66620 + 77, 78, 77, 80, 84, 76, 78, 81, 84, 84, 84, 85, 86, 85, 85, 85, 32.66621 + 85, 86, 87, 88, 89, 87, 87, 88, 88, 89, 90, 91, 91, 92, 93, 94, 32.66622 + 95, 95, 95, 95, 95, 93, 94, 93, 93, 92, 91, 92, 91, 88, 90, 95, 32.66623 + 96, 94, 89, 85, 82, 70, 77, 77, 73, 83, 98, 97, 85, 90, 92, 97, 32.66624 + 100, 102, 102, 103, 102, 95, 96, 93, 89, 93, 102, 103, 100, 106, 87, 101, 32.66625 + 122, 105, 140, 196, 255, 255, 255, 255, 255, 136, 81, 66, 71, 78, 90, 91, 32.66626 + 91, 108, 128, 139, 144, 156, 173, 190, 236, 255, 255, 255, 255, 73, 66, 67, 32.66627 + 61, 72, 78, 75, 71, 71, 72, 73, 74, 75, 76, 76, 75, 76, 77, 76, 32.66628 + 74, 72, 73, 74, 77, 79, 78, 75, 76, 80, 81, 79, 80, 76, 74, 77, 32.66629 + 78, 77, 79, 83, 78, 79, 82, 83, 83, 83, 85, 86, 86, 86, 85, 86, 32.66630 + 87, 88, 89, 90, 87, 87, 88, 89, 90, 90, 91, 91, 91, 91, 92, 93, 32.66631 + 94, 94, 93, 93, 92, 92, 93, 92, 93, 91, 89, 87, 86, 87, 91, 94, 32.66632 + 96, 97, 95, 94, 87, 86, 81, 73, 75, 85, 85, 80, 86, 90, 93, 98, 32.66633 + 100, 101, 104, 103, 98, 95, 97, 103, 103, 98, 98, 103, 97, 143, 99, 127, 32.66634 + 157, 162, 255, 255, 255, 255, 255, 255, 255, 101, 91, 90, 82, 92, 90, 93, 32.66635 + 111, 135, 146, 152, 166, 188, 196, 255, 255, 255, 255, 255, 61, 64, 70, 63, 32.66636 + 71, 72, 70, 74, 74, 74, 74, 75, 75, 75, 76, 75, 76, 77, 76, 73, 32.66637 + 72, 72, 73, 80, 77, 76, 79, 79, 77, 78, 81, 80, 76, 75, 78, 79, 32.66638 + 77, 79, 82, 81, 81, 82, 82, 81, 82, 85, 87, 86, 86, 86, 86, 87, 32.66639 + 88, 90, 90, 88, 88, 89, 89, 90, 91, 92, 92, 90, 90, 91, 92, 93, 32.66640 + 92, 92, 92, 92, 93, 94, 94, 95, 92, 89, 87, 78, 77, 79, 84, 92, 32.66641 + 99, 102, 102, 97, 91, 82, 73, 69, 70, 74, 76, 81, 84, 88, 94, 98, 32.66642 + 100, 102, 100, 103, 94, 98, 110, 107, 95, 96, 112, 103, 134, 123, 165, 199, 32.66643 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 106, 94, 98, 96, 101, 122, 32.66644 + 149, 165, 168, 158, 189, 233, 255, 255, 255, 255, 255, 102, 70, 72, 67, 74, 32.66645 + 72, 72, 73, 73, 73, 74, 75, 76, 76, 76, 75, 76, 77, 77, 76, 76, 32.66646 + 77, 79, 82, 75, 75, 82, 82, 76, 76, 83, 80, 77, 76, 79, 79, 78, 32.66647 + 79, 82, 84, 82, 83, 82, 81, 82, 85, 87, 86, 86, 86, 86, 87, 88, 32.66648 + 89, 90, 89, 89, 89, 90, 91, 92, 92, 93, 91, 92, 93, 93, 93, 93, 32.66649 + 92, 92, 90, 91, 93, 95, 96, 94, 92, 90, 78, 74, 74, 77, 86, 94, 32.66650 + 98, 99, 105, 100, 95, 90, 82, 72, 69, 71, 74, 78, 83, 91, 96, 100, 32.66651 + 100, 97, 106, 96, 97, 104, 105, 102, 107, 121, 134, 115, 154, 196, 255, 255, 32.66652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 103, 100, 99, 102, 108, 125, 156, 32.66653 + 177, 178, 160, 178, 234, 224, 246, 255, 255, 255, 211, 69, 69, 70, 81, 79, 32.66654 + 84, 69, 70, 71, 73, 74, 76, 77, 78, 77, 78, 78, 77, 76, 76, 78, 32.66655 + 80, 82, 76, 76, 83, 83, 76, 76, 82, 80, 77, 77, 80, 80, 78, 79, 32.66656 + 81, 84, 83, 83, 82, 81, 82, 85, 88, 85, 85, 85, 85, 86, 87, 89, 32.66657 + 89, 89, 90, 90, 91, 92, 93, 93, 93, 95, 95, 96, 96, 96, 95, 95, 32.66658 + 94, 88, 90, 92, 94, 97, 96, 95, 94, 90, 84, 80, 77, 78, 81, 82, 32.66659 + 82, 97, 100, 101, 103, 95, 80, 70, 68, 66, 67, 75, 86, 97, 102, 103, 32.66660 + 99, 106, 104, 105, 104, 108, 116, 119, 120, 124, 145, 255, 255, 255, 255, 255, 32.66661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 96, 107, 115, 127, 159, 185, 32.66662 + 184, 170, 230, 184, 187, 255, 255, 255, 255, 255, 73, 67, 70, 79, 74, 80, 32.66663 + 68, 69, 70, 72, 74, 76, 78, 79, 81, 81, 79, 76, 73, 72, 74, 76, 32.66664 + 81, 79, 79, 82, 82, 78, 77, 79, 81, 78, 78, 81, 81, 78, 78, 80, 32.66665 + 81, 82, 83, 83, 83, 83, 86, 88, 86, 86, 86, 86, 87, 88, 90, 90, 32.66666 + 90, 90, 91, 92, 93, 93, 94, 94, 98, 98, 98, 98, 98, 97, 96, 96, 32.66667 + 90, 91, 92, 93, 96, 97, 97, 97, 98, 93, 87, 77, 69, 63, 60, 59, 32.66668 + 65, 72, 81, 90, 92, 89, 82, 74, 64, 65, 69, 78, 90, 100, 104, 104, 32.66669 + 100, 107, 110, 110, 112, 122, 124, 121, 140, 255, 255, 255, 255, 255, 255, 255, 32.66670 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 132, 140, 137, 164, 192, 190, 32.66671 + 186, 192, 255, 255, 255, 255, 255, 255, 255, 79, 66, 69, 77, 67, 72, 71, 32.66672 + 71, 72, 73, 74, 76, 77, 77, 82, 82, 80, 77, 73, 72, 74, 76, 77, 32.66673 + 81, 81, 79, 79, 80, 79, 75, 80, 77, 78, 81, 81, 77, 77, 80, 78, 32.66674 + 81, 83, 85, 85, 85, 87, 88, 89, 89, 88, 89, 90, 91, 92, 93, 91, 32.66675 + 91, 92, 92, 93, 94, 95, 95, 99, 99, 99, 99, 99, 98, 97, 96, 95, 32.66676 + 94, 93, 93, 95, 95, 96, 97, 97, 96, 93, 83, 69, 59, 56, 56, 57, 32.66677 + 65, 68, 73, 82, 93, 94, 85, 78, 72, 68, 70, 81, 92, 100, 103, 102, 32.66678 + 108, 114, 118, 116, 123, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66680 + 255, 255, 255, 255, 255, 255, 255, 255, 78, 66, 74, 84, 72, 75, 74, 74, 32.66681 + 74, 75, 75, 76, 76, 76, 82, 82, 81, 79, 77, 78, 81, 83, 76, 83, 32.66682 + 84, 78, 77, 82, 80, 73, 80, 78, 78, 81, 81, 78, 77, 79, 76, 80, 32.66683 + 83, 86, 86, 86, 87, 88, 91, 91, 91, 91, 92, 93, 94, 95, 91, 91, 32.66684 + 92, 93, 94, 94, 95, 95, 99, 99, 99, 99, 99, 98, 97, 96, 100, 98, 32.66685 + 95, 92, 93, 93, 95, 96, 97, 101, 102, 94, 81, 71, 69, 71, 88, 90, 32.66686 + 82, 71, 77, 92, 96, 87, 96, 84, 71, 65, 72, 83, 93, 98, 118, 114, 32.66687 + 120, 125, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66688 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66689 + 255, 255, 255, 255, 255, 255, 255, 195, 75, 75, 79, 79, 75, 74, 71, 69, 32.66690 + 68, 71, 76, 78, 77, 81, 79, 77, 75, 74, 75, 77, 78, 81, 81, 80, 32.66691 + 80, 79, 78, 77, 76, 73, 78, 82, 83, 80, 79, 81, 83, 88, 86, 84, 32.66692 + 83, 84, 85, 87, 89, 94, 94, 93, 94, 95, 96, 95, 94, 92, 93, 94, 32.66693 + 95, 97, 98, 99, 99, 94, 97, 101, 103, 103, 101, 97, 94, 98, 97, 94, 32.66694 + 92, 93, 92, 93, 93, 97, 97, 97, 95, 92, 89, 86, 85, 98, 95, 87, 32.66695 + 84, 90, 100, 101, 93, 92, 104, 96, 92, 83, 77, 94, 95, 108, 116, 123, 32.66696 + 167, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66698 + 255, 255, 255, 255, 255, 255, 255, 76, 76, 79, 82, 79, 76, 73, 71, 71, 32.66699 + 74, 78, 80, 80, 83, 81, 78, 76, 74, 74, 75, 76, 81, 80, 78, 77, 32.66700 + 77, 79, 80, 81, 78, 78, 79, 80, 82, 83, 82, 81, 86, 85, 84, 84, 32.66701 + 85, 87, 90, 91, 91, 90, 90, 91, 92, 92, 92, 92, 93, 93, 94, 95, 32.66702 + 97, 98, 99, 99, 97, 98, 99, 100, 100, 99, 98, 97, 96, 95, 93, 91, 32.66703 + 92, 91, 91, 92, 96, 95, 95, 92, 89, 85, 82, 80, 94, 94, 93, 88, 32.66704 + 90, 96, 99, 97, 96, 104, 96, 100, 97, 97, 116, 115, 108, 118, 168, 255, 32.66705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66706 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66707 + 255, 255, 255, 255, 255, 255, 76, 75, 79, 83, 83, 79, 74, 73, 75, 78, 32.66708 + 81, 82, 83, 86, 83, 80, 76, 74, 74, 74, 75, 81, 79, 77, 76, 77, 32.66709 + 80, 83, 86, 83, 79, 76, 78, 83, 86, 84, 81, 85, 85, 84, 85, 87, 32.66710 + 89, 92, 93, 89, 89, 90, 90, 91, 91, 91, 92, 94, 94, 95, 96, 97, 32.66711 + 98, 99, 99, 99, 99, 98, 97, 97, 98, 99, 99, 95, 94, 92, 91, 91, 32.66712 + 91, 91, 91, 93, 93, 94, 92, 90, 88, 86, 84, 93, 97, 100, 96, 94, 32.66713 + 96, 99, 98, 99, 105, 98, 112, 126, 139, 166, 170, 165, 255, 255, 255, 255, 32.66714 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66715 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66716 + 255, 255, 255, 255, 255, 74, 73, 77, 81, 80, 80, 74, 74, 77, 81, 82, 32.66717 + 83, 85, 85, 83, 80, 77, 75, 75, 76, 77, 80, 80, 79, 78, 79, 81, 32.66718 + 83, 84, 84, 82, 79, 79, 82, 84, 85, 84, 87, 86, 86, 87, 88, 89, 32.66719 + 91, 92, 89, 91, 92, 92, 92, 92, 93, 95, 94, 95, 95, 96, 97, 98, 32.66720 + 99, 99, 100, 100, 99, 99, 99, 99, 100, 100, 95, 95, 94, 92, 94, 93, 32.66721 + 92, 92, 92, 93, 96, 97, 98, 98, 97, 97, 98, 100, 103, 101, 98, 97, 32.66722 + 96, 97, 100, 106, 107, 137, 167, 192, 223, 228, 255, 255, 255, 255, 255, 255, 32.66723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66725 + 255, 255, 255, 255, 195, 75, 78, 80, 77, 77, 70, 70, 77, 80, 79, 80, 32.66726 + 84, 82, 80, 77, 75, 75, 75, 77, 78, 78, 79, 80, 81, 81, 80, 79, 32.66727 + 78, 81, 82, 83, 81, 79, 79, 83, 86, 89, 89, 88, 88, 88, 88, 88, 32.66728 + 88, 88, 90, 92, 93, 91, 91, 94, 96, 95, 96, 96, 97, 98, 98, 99, 32.66729 + 99, 99, 100, 102, 103, 103, 102, 100, 99, 97, 97, 97, 96, 97, 97, 96, 32.66730 + 95, 97, 97, 101, 102, 103, 104, 104, 104, 106, 102, 102, 101, 101, 99, 95, 32.66731 + 93, 99, 113, 129, 175, 214, 229, 244, 247, 255, 255, 255, 255, 255, 255, 255, 32.66732 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66733 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66734 + 255, 255, 255, 255, 75, 80, 80, 75, 77, 69, 69, 78, 82, 79, 80, 85, 32.66735 + 82, 80, 78, 76, 76, 77, 78, 80, 77, 79, 82, 84, 84, 81, 79, 76, 32.66736 + 80, 84, 86, 84, 80, 79, 83, 87, 89, 89, 89, 88, 87, 86, 86, 85, 32.66737 + 85, 88, 91, 91, 89, 89, 92, 96, 96, 97, 97, 97, 98, 98, 99, 99, 32.66738 + 98, 100, 102, 103, 103, 102, 100, 98, 98, 99, 99, 99, 101, 100, 99, 98, 32.66739 + 102, 102, 104, 104, 103, 101, 100, 99, 109, 101, 98, 98, 100, 96, 95, 97, 32.66740 + 103, 125, 154, 209, 241, 242, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66743 + 255, 255, 255, 193, 77, 78, 72, 78, 69, 70, 80, 84, 80, 80, 86, 84, 32.66744 + 82, 79, 77, 76, 76, 77, 79, 77, 78, 80, 82, 83, 83, 82, 81, 83, 32.66745 + 84, 85, 85, 84, 83, 83, 83, 87, 87, 87, 87, 87, 86, 86, 85, 85, 32.66746 + 89, 93, 93, 90, 90, 93, 98, 97, 97, 97, 98, 98, 98, 99, 99, 99, 32.66747 + 99, 99, 99, 99, 99, 99, 99, 99, 99, 100, 101, 102, 101, 100, 99, 102, 32.66748 + 102, 104, 103, 101, 99, 98, 96, 105, 98, 96, 96, 93, 92, 98, 105, 113, 32.66749 + 134, 165, 219, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66751 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66752 + 255, 255, 255, 74, 77, 71, 81, 71, 70, 81, 86, 81, 81, 85, 86, 84, 32.66753 + 81, 78, 76, 75, 76, 77, 77, 78, 78, 80, 81, 83, 85, 86, 85, 83, 32.66754 + 82, 84, 88, 88, 84, 79, 84, 84, 85, 86, 87, 87, 87, 86, 88, 92, 32.66755 + 96, 96, 93, 92, 97, 99, 97, 95, 98, 96, 98, 96, 99, 97, 100, 96, 32.66756 + 96, 92, 94, 94, 98, 98, 98, 99, 100, 101, 103, 102, 100, 99, 98, 100, 32.66757 + 100, 100, 100, 99, 98, 99, 96, 94, 95, 93, 89, 88, 100, 116, 124, 142, 32.66758 + 164, 213, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66759 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66761 + 255, 255, 194, 75, 71, 85, 79, 77, 79, 80, 81, 81, 80, 78, 84, 83, 32.66762 + 76, 68, 74, 83, 89, 81, 82, 83, 84, 85, 85, 85, 85, 86, 86, 86, 32.66763 + 86, 86, 86, 86, 85, 86, 84, 83, 83, 85, 86, 86, 85, 89, 90, 91, 32.66764 + 91, 91, 93, 97, 100, 97, 92, 92, 91, 97, 97, 98, 95, 91, 92, 98, 32.66765 + 96, 95, 92, 96, 99, 95, 95, 95, 98, 101, 102, 101, 99, 97, 101, 103, 32.66766 + 100, 96, 95, 98, 101, 90, 100, 99, 92, 93, 95, 108, 129, 133, 184, 193, 32.66767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66770 + 255, 255, 75, 78, 80, 76, 78, 80, 82, 84, 82, 81, 79, 80, 77, 68, 32.66771 + 68, 71, 78, 79, 80, 81, 82, 83, 84, 85, 85, 85, 87, 86, 86, 86, 32.66772 + 86, 86, 86, 86, 88, 86, 84, 85, 87, 88, 88, 87, 88, 90, 91, 91, 32.66773 + 91, 92, 94, 94, 98, 94, 93, 95, 98, 100, 98, 96, 96, 98, 100, 100, 32.66774 + 99, 99, 100, 100, 102, 102, 104, 105, 106, 106, 105, 104, 101, 100, 98, 97, 32.66775 + 96, 95, 93, 92, 92, 96, 93, 92, 95, 95, 106, 128, 167, 201, 216, 255, 32.66776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66777 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66779 + 255, 111, 80, 72, 71, 76, 79, 82, 85, 84, 84, 86, 84, 79, 69, 70, 32.66780 + 73, 76, 73, 78, 79, 81, 83, 84, 85, 85, 85, 87, 87, 87, 87, 87, 32.66781 + 87, 87, 87, 89, 87, 86, 87, 89, 90, 90, 89, 90, 92, 94, 94, 93, 32.66782 + 93, 94, 93, 96, 94, 95, 97, 99, 100, 98, 96, 98, 98, 98, 99, 100, 32.66783 + 100, 99, 98, 102, 104, 104, 104, 101, 99, 98, 98, 102, 98, 95, 96, 98, 32.66784 + 97, 91, 86, 93, 92, 88, 92, 101, 100, 111, 137, 184, 217, 255, 255, 255, 32.66785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66788 + 212, 72, 66, 68, 74, 77, 80, 84, 85, 85, 87, 87, 83, 73, 69, 72, 32.66789 + 75, 74, 77, 78, 80, 83, 85, 86, 87, 87, 88, 88, 88, 88, 89, 89, 32.66790 + 89, 89, 89, 88, 86, 87, 89, 91, 91, 90, 94, 97, 99, 99, 98, 96, 32.66791 + 96, 94, 92, 92, 94, 97, 98, 97, 95, 94, 100, 97, 96, 97, 100, 101, 32.66792 + 98, 94, 100, 100, 99, 95, 89, 85, 84, 85, 93, 92, 92, 94, 96, 96, 32.66793 + 92, 88, 90, 88, 85, 92, 102, 104, 124, 159, 186, 255, 255, 255, 255, 255, 32.66794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66795 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66796 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66797 + 188, 62, 66, 72, 72, 73, 80, 84, 84, 81, 85, 83, 72, 64, 64, 70, 32.66798 + 72, 75, 77, 80, 83, 86, 88, 89, 90, 88, 88, 89, 89, 90, 90, 91, 32.66799 + 91, 89, 87, 86, 87, 89, 91, 92, 91, 96, 98, 100, 100, 98, 97, 96, 32.66800 + 94, 92, 92, 95, 97, 98, 97, 96, 95, 104, 101, 99, 100, 102, 103, 99, 32.66801 + 96, 98, 98, 93, 86, 80, 77, 76, 77, 81, 86, 91, 94, 94, 94, 95, 32.66802 + 97, 86, 88, 88, 92, 99, 107, 136, 176, 214, 255, 255, 255, 255, 255, 255, 32.66803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66806 + 188, 63, 71, 69, 72, 80, 84, 82, 79, 85, 85, 73, 64, 62, 69, 73, 32.66807 + 73, 75, 78, 82, 85, 88, 90, 90, 89, 89, 90, 90, 91, 92, 92, 93, 32.66808 + 89, 87, 86, 87, 90, 92, 93, 92, 94, 96, 97, 97, 95, 94, 95, 94, 32.66809 + 95, 96, 99, 100, 99, 98, 99, 99, 101, 100, 99, 99, 99, 98, 96, 94, 32.66810 + 95, 88, 79, 72, 69, 70, 71, 71, 75, 81, 87, 90, 89, 90, 94, 98, 32.66811 + 84, 91, 90, 90, 99, 114, 143, 177, 255, 255, 255, 255, 255, 255, 255, 255, 32.66812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66814 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66815 + 57, 68, 69, 73, 81, 83, 80, 82, 86, 83, 72, 66, 64, 68, 68, 69, 32.66816 + 71, 75, 79, 83, 86, 88, 89, 89, 90, 90, 91, 92, 93, 94, 94, 90, 32.66817 + 89, 88, 89, 92, 94, 95, 94, 94, 95, 96, 95, 94, 94, 96, 96, 96, 32.66818 + 97, 99, 99, 97, 97, 99, 102, 98, 99, 100, 98, 96, 93, 93, 93, 91, 32.66819 + 80, 68, 63, 66, 72, 75, 75, 79, 80, 82, 84, 85, 87, 88, 90, 84, 32.66820 + 94, 92, 92, 112, 135, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66821 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 32.66824 + 69, 72, 76, 85, 85, 78, 82, 81, 75, 65, 62, 61, 61, 57, 66, 68, 32.66825 + 72, 76, 81, 84, 86, 88, 90, 90, 91, 92, 93, 94, 94, 95, 92, 90, 32.66826 + 89, 91, 94, 96, 97, 96, 96, 97, 97, 96, 95, 96, 98, 99, 95, 95, 32.66827 + 97, 96, 94, 94, 98, 101, 101, 104, 105, 103, 99, 95, 96, 100, 95, 82, 32.66828 + 68, 64, 72, 82, 87, 87, 86, 82, 79, 80, 83, 85, 84, 81, 83, 95, 32.66829 + 93, 95, 125, 154, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 32.66833 + 69, 77, 76, 76, 81, 70, 71, 72, 70, 67, 63, 61, 61, 66, 69, 72, 32.66834 + 75, 78, 81, 84, 86, 84, 84, 84, 86, 90, 92, 92, 92, 91, 91, 92, 32.66835 + 93, 93, 94, 95, 95, 93, 92, 91, 91, 94, 98, 103, 103, 96, 98, 101, 32.66836 + 99, 94, 94, 99, 104, 99, 97, 97, 99, 97, 94, 92, 95, 93, 85, 80, 32.66837 + 84, 87, 86, 86, 88, 100, 89, 84, 88, 88, 82, 82, 87, 88, 101, 106, 32.66838 + 105, 114, 172, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 32.66842 + 66, 72, 76, 77, 81, 78, 75, 69, 65, 61, 61, 62, 64, 66, 69, 72, 32.66843 + 75, 79, 82, 85, 86, 85, 86, 87, 89, 90, 90, 90, 91, 92, 92, 93, 32.66844 + 93, 94, 94, 94, 93, 93, 92, 93, 95, 98, 101, 101, 88, 89, 93, 96, 32.66845 + 98, 98, 98, 99, 94, 95, 94, 92, 91, 91, 90, 90, 88, 83, 79, 81, 32.66846 + 83, 81, 84, 89, 100, 90, 82, 84, 87, 89, 89, 91, 95, 98, 98, 107, 32.66847 + 136, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 53, 32.66851 + 68, 76, 74, 84, 81, 73, 66, 62, 59, 61, 63, 61, 62, 64, 68, 72, 32.66852 + 77, 80, 82, 87, 87, 87, 87, 88, 88, 88, 89, 92, 92, 92, 92, 93, 32.66853 + 93, 93, 93, 93, 94, 94, 96, 97, 98, 99, 98, 101, 96, 93, 93, 96, 32.66854 + 98, 97, 96, 93, 98, 97, 90, 89, 93, 93, 89, 95, 95, 94, 94, 92, 32.66855 + 92, 98, 105, 102, 97, 89, 84, 88, 95, 97, 93, 94, 96, 97, 113, 155, 32.66856 + 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 65, 32.66860 + 78, 77, 78, 74, 69, 64, 61, 60, 61, 63, 60, 60, 61, 65, 70, 76, 32.66861 + 79, 81, 85, 86, 87, 87, 87, 87, 89, 90, 92, 92, 92, 92, 92, 92, 32.66862 + 92, 92, 94, 95, 96, 98, 99, 98, 98, 95, 108, 99, 89, 82, 82, 87, 32.66863 + 94, 99, 93, 99, 98, 90, 88, 94, 93, 87, 88, 92, 92, 90, 87, 87, 32.66864 + 94, 100, 99, 103, 99, 89, 88, 95, 97, 92, 94, 101, 112, 126, 166, 230, 32.66865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 73, 32.66869 + 78, 73, 72, 70, 68, 64, 60, 61, 61, 62, 60, 60, 64, 70, 76, 79, 32.66870 + 80, 81, 83, 86, 87, 87, 87, 90, 93, 91, 91, 91, 92, 92, 92, 92, 32.66871 + 93, 94, 95, 97, 99, 100, 99, 97, 94, 91, 86, 80, 72, 67, 70, 80, 32.66872 + 89, 89, 95, 96, 89, 88, 92, 89, 84, 90, 94, 95, 92, 89, 88, 89, 32.66873 + 90, 90, 102, 106, 97, 91, 94, 98, 96, 102, 106, 120, 136, 181, 255, 255, 32.66874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 190, 69, 32.66878 + 75, 76, 76, 75, 70, 64, 61, 59, 64, 61, 59, 62, 69, 75, 78, 78, 32.66879 + 79, 82, 86, 87, 86, 87, 90, 94, 89, 89, 90, 91, 92, 93, 93, 94, 32.66880 + 94, 96, 97, 99, 100, 99, 98, 96, 87, 88, 88, 80, 68, 60, 60, 62, 32.66881 + 86, 88, 92, 94, 94, 93, 90, 90, 95, 98, 99, 99, 102, 255, 95, 86, 32.66882 + 83, 95, 103, 102, 97, 97, 102, 105, 105, 99, 114, 137, 195, 255, 255, 255, 32.66883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 74, 32.66887 + 75, 76, 76, 72, 67, 64, 62, 66, 61, 58, 61, 68, 74, 75, 75, 80, 32.66888 + 84, 88, 87, 85, 85, 88, 93, 87, 88, 89, 90, 92, 93, 94, 95, 95, 32.66889 + 95, 97, 98, 99, 100, 100, 98, 98, 97, 97, 90, 78, 66, 57, 53, 74, 32.66890 + 72, 80, 93, 96, 89, 87, 93, 92, 96, 99, 255, 255, 255, 255, 203, 88, 32.66891 + 89, 94, 100, 102, 101, 103, 108, 105, 100, 125, 149, 205, 255, 255, 255, 255, 32.66892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 71, 72, 32.66896 + 73, 73, 69, 66, 64, 63, 62, 59, 55, 57, 66, 72, 73, 72, 81, 86, 32.66897 + 89, 88, 84, 83, 86, 88, 86, 87, 88, 90, 92, 94, 95, 96, 95, 93, 32.66898 + 94, 95, 97, 98, 99, 99, 98, 95, 92, 89, 85, 80, 73, 68, 58, 54, 32.66899 + 66, 87, 93, 83, 81, 90, 111, 115, 167, 255, 255, 255, 255, 255, 203, 89, 32.66900 + 87, 98, 104, 102, 101, 106, 107, 114, 153, 173, 228, 255, 255, 255, 255, 255, 32.66901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 76, 74, 32.66905 + 77, 71, 60, 63, 51, 64, 58, 53, 56, 59, 59, 67, 75, 85, 83, 79, 32.66906 + 82, 84, 86, 86, 84, 86, 88, 87, 84, 84, 91, 96, 95, 95, 92, 89, 32.66907 + 87, 95, 103, 101, 94, 101, 101, 99, 98, 96, 90, 84, 77, 73, 67, 65, 32.66908 + 71, 83, 93, 96, 94, 105, 164, 255, 255, 255, 255, 255, 255, 255, 255, 109, 32.66909 + 100, 101, 104, 108, 111, 113, 115, 173, 205, 255, 255, 255, 255, 255, 255, 255, 32.66910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 63, 65, 70, 32.66914 + 67, 57, 61, 52, 59, 57, 57, 58, 58, 58, 66, 74, 81, 81, 80, 84, 32.66915 + 86, 87, 83, 80, 84, 87, 87, 85, 86, 93, 97, 96, 92, 92, 89, 88, 32.66916 + 93, 100, 99, 93, 100, 101, 100, 100, 99, 95, 88, 83, 92, 86, 79, 79, 32.66917 + 87, 98, 107, 110, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 131, 32.66918 + 129, 127, 126, 127, 163, 153, 181, 194, 255, 255, 255, 255, 255, 255, 255, 255, 32.66919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 56, 68, 70, 32.66923 + 63, 68, 58, 56, 57, 60, 61, 59, 58, 62, 68, 77, 79, 81, 85, 87, 32.66924 + 86, 81, 78, 82, 86, 88, 88, 89, 95, 97, 96, 90, 93, 92, 91, 92, 32.66925 + 96, 96, 95, 102, 103, 103, 103, 101, 96, 90, 84, 76, 76, 79, 87, 104, 32.66926 + 129, 156, 170, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 32.66927 + 157, 156, 157, 180, 165, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 63, 70, 67, 32.66932 + 67, 55, 62, 63, 64, 65, 66, 65, 63, 62, 76, 78, 80, 83, 84, 84, 32.66933 + 81, 79, 82, 87, 90, 90, 91, 95, 96, 93, 89, 93, 94, 93, 91, 92, 32.66934 + 93, 96, 102, 105, 107, 108, 107, 104, 101, 98, 86, 86, 91, 102, 121, 145, 32.66935 + 168, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 66, 65, 64, 32.66941 + 50, 71, 68, 66, 67, 72, 74, 69, 61, 76, 78, 78, 80, 79, 81, 81, 32.66942 + 82, 83, 88, 91, 91, 90, 94, 94, 90, 89, 92, 95, 95, 92, 89, 91, 32.66943 + 95, 96, 100, 103, 106, 109, 109, 110, 110, 92, 92, 99, 115, 136, 154, 163, 32.66944 + 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 63, 69, 59, 32.66950 + 66, 66, 63, 65, 71, 75, 72, 64, 75, 77, 79, 78, 79, 79, 82, 83, 32.66951 + 81, 86, 89, 89, 89, 93, 93, 90, 90, 91, 94, 96, 93, 88, 88, 93, 32.66952 + 98, 100, 100, 98, 98, 98, 100, 102, 95, 97, 111, 133, 158, 174, 177, 255, 32.66953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66956 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 70, 72, 62, 32.66959 + 66, 68, 68, 72, 81, 87, 86, 72, 76, 80, 81, 80, 78, 81, 83, 78, 32.66960 + 82, 85, 86, 88, 93, 95, 93, 92, 91, 92, 96, 94, 88, 87, 91, 99, 32.66961 + 102, 101, 99, 98, 101, 108, 113, 137, 139, 147, 157, 167, 199, 255, 255, 255, 32.66962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 69, 78, 32.66968 + 85, 83, 84, 95, 106, 113, 70, 76, 83, 85, 84, 81, 81, 83, 74, 79, 32.66969 + 82, 84, 87, 94, 98, 97, 94, 90, 90, 96, 95, 89, 86, 90, 94, 99, 32.66970 + 103, 109, 116, 128, 144, 154, 160, 163, 167, 169, 255, 255, 255, 255, 255, 255, 32.66971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66975 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66977 + 255, 90, 94, 96, 95, 95, 87, 78, 75, 82, 88, 86, 79, 83, 81, 84, 32.66978 + 88, 90, 93, 94, 96, 93, 91, 90, 93, 97, 99, 96, 94, 94, 106, 111, 32.66979 + 122, 141, 148, 153, 166, 164, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66986 + 255, 255, 255, 90, 89, 90, 89, 83, 79, 80, 87, 91, 80, 85, 88, 86, 32.66987 + 85, 93, 97, 97, 96, 95, 93, 96, 101, 107, 111, 114, 110, 138, 149, 146, 32.66988 + 153, 158, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66995 + 255, 255, 255, 198, 90, 95, 92, 87, 83, 88, 89, 82, 91, 95, 91, 87, 32.66996 + 92, 94, 89, 96, 96, 94, 96, 100, 109, 119, 127, 128, 164, 177, 161, 156, 32.66997 + 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.66999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67004 + 255, 255, 255, 199, 89, 96, 99, 96, 89, 82, 87, 85, 90, 96, 97, 95, 32.67005 + 92, 91, 95, 97, 96, 96, 99, 107, 120, 129, 137, 165, 172, 156, 152, 189, 32.67006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67013 + 255, 255, 255, 255, 202, 101, 102, 104, 105, 102, 82, 78, 93, 100, 94, 94, 32.67014 + 103, 93, 95, 97, 99, 102, 109, 120, 128, 139, 152, 154, 151, 156, 255, 255, 32.67015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67022 + 255, 255, 255, 255, 255, 201, 117, 138, 139, 109, 92, 95, 94, 87, 90, 101, 32.67023 + 89, 91, 93, 97, 103, 111, 120, 126, 142, 149, 151, 156, 195, 255, 255, 255, 32.67024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67031 + 255, 255, 255, 255, 255, 255, 255, 222, 142, 129, 114, 102, 98, 99, 100, 102, 32.67032 + 100, 99, 103, 110, 118, 125, 129, 144, 157, 189, 255, 255, 255, 255, 255, 255, 32.67033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 111, 126, 121, 32.67041 + 115, 116, 122, 130, 136, 139, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.67047 +/* Define image 'enemy' of size 113x150x1x3 and type 'const unsigned char' */ 32.67048 +const unsigned char data_enemy[] = { 32.67049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67052 + 222, 221, 224, 223, 222, 223, 223, 222, 220, 217, 222, 255, 255, 255, 255, 255, 32.67053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 222, 220, 32.67059 + 217, 217, 219, 229, 228, 227, 227, 226, 223, 219, 215, 220, 221, 229, 248, 255, 32.67060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 214, 227, 217, 219, 219, 218, 32.67066 + 219, 225, 227, 224, 217, 213, 211, 213, 219, 219, 214, 209, 222, 220, 220, 223, 32.67067 + 227, 229, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67072 + 255, 255, 255, 255, 255, 255, 255, 255, 249, 203, 226, 236, 212, 219, 189, 143, 32.67073 + 106, 94, 105, 118, 124, 154, 143, 132, 130, 141, 158, 172, 180, 188, 192, 200, 32.67074 + 211, 221, 227, 227, 225, 232, 229, 222, 216, 222, 231, 226, 215, 226, 199, 187, 32.67075 + 202, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67077 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67079 + 255, 255, 255, 255, 255, 255, 255, 246, 230, 229, 231, 232, 210, 168, 127, 98, 32.67080 + 56, 32, 35, 52, 63, 64, 56, 50, 45, 45, 53, 63, 72, 76, 89, 99, 32.67081 + 121, 150, 181, 208, 227, 236, 234, 234, 222, 206, 206, 214, 203, 182, 199, 194, 32.67082 + 198, 201, 192, 182, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67086 + 255, 255, 255, 255, 255, 255, 255, 239, 226, 217, 218, 225, 187, 134, 98, 56, 32.67087 + 48, 36, 36, 45, 51, 42, 29, 41, 42, 45, 49, 51, 48, 44, 38, 46, 32.67088 + 50, 61, 78, 100, 125, 146, 157, 161, 202, 229, 210, 171, 157, 174, 196, 173, 32.67089 + 183, 186, 183, 187, 199, 201, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67093 + 255, 255, 255, 255, 255, 255, 246, 229, 227, 207, 237, 206, 142, 86, 84, 43, 32.67094 + 38, 37, 33, 31, 33, 36, 30, 21, 27, 26, 26, 27, 30, 33, 34, 34, 32.67095 + 48, 46, 44, 42, 45, 51, 59, 65, 79, 71, 76, 98, 117, 123, 121, 121, 32.67096 + 123, 146, 166, 172, 180, 192, 193, 184, 212, 222, 255, 255, 255, 255, 255, 255, 32.67097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67100 + 255, 255, 255, 255, 255, 255, 231, 234, 235, 211, 252, 204, 176, 55, 74, 35, 32.67101 + 45, 27, 27, 23, 19, 21, 29, 35, 36, 25, 25, 26, 27, 31, 35, 38, 32.67102 + 40, 33, 36, 40, 42, 43, 43, 44, 45, 40, 37, 46, 61, 62, 61, 80, 32.67103 + 107, 91, 113, 145, 166, 163, 156, 167, 185, 196, 197, 234, 255, 255, 255, 255, 32.67104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67107 + 255, 255, 255, 255, 255, 246, 227, 229, 231, 233, 225, 228, 194, 49, 98, 30, 32.67108 + 43, 36, 28, 30, 29, 25, 23, 27, 27, 24, 15, 18, 22, 25, 26, 25, 32.67109 + 24, 23, 32, 36, 42, 44, 43, 40, 38, 37, 44, 34, 29, 29, 28, 29, 32.67110 + 41, 56, 93, 83, 87, 116, 148, 162, 160, 156, 178, 186, 220, 255, 255, 255, 32.67111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67114 + 255, 255, 255, 255, 255, 230, 227, 225, 224, 225, 225, 219, 199, 106, 69, 27, 32.67115 + 46, 15, 25, 19, 21, 22, 22, 26, 30, 29, 23, 16, 16, 15, 14, 15, 32.67116 + 19, 24, 27, 25, 28, 32, 32, 30, 30, 32, 35, 21, 32, 38, 28, 17, 32.67117 + 21, 38, 53, 53, 64, 71, 80, 112, 153, 170, 164, 160, 172, 212, 222, 255, 32.67118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67121 + 255, 255, 255, 255, 255, 234, 229, 206, 228, 216, 216, 223, 210, 133, 56, 29, 32.67122 + 32, 32, 25, 21, 22, 23, 25, 28, 30, 28, 28, 23, 17, 16, 12, 9, 32.67123 + 15, 28, 33, 30, 27, 28, 30, 32, 33, 30, 25, 21, 27, 28, 27, 22, 32.67124 + 19, 23, 34, 43, 42, 50, 61, 77, 102, 129, 142, 141, 152, 152, 213, 223, 32.67125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67128 + 255, 255, 255, 255, 215, 235, 205, 232, 229, 215, 219, 213, 129, 56, 37, 24, 32.67129 + 25, 28, 24, 21, 23, 29, 26, 23, 23, 23, 23, 19, 16, 12, 14, 15, 32.67130 + 15, 20, 29, 31, 28, 26, 21, 17, 20, 26, 28, 24, 20, 36, 33, 30, 32.67131 + 27, 27, 31, 37, 42, 32, 38, 47, 63, 86, 108, 115, 110, 135, 135, 197, 32.67132 + 217, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67135 + 255, 255, 255, 255, 222, 233, 233, 232, 237, 221, 237, 214, 137, 28, 30, 35, 32.67136 + 38, 33, 22, 16, 18, 22, 25, 20, 15, 16, 21, 24, 23, 20, 7, 14, 32.67137 + 21, 24, 26, 29, 29, 27, 25, 17, 11, 13, 22, 28, 26, 22, 35, 31, 32.67138 + 26, 25, 27, 30, 31, 31, 25, 27, 32, 45, 66, 87, 95, 92, 130, 137, 32.67139 + 194, 230, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67142 + 255, 255, 255, 246, 244, 233, 207, 222, 203, 226, 211, 136, 36, 29, 51, 41, 32.67143 + 39, 28, 15, 15, 26, 33, 33, 22, 17, 14, 17, 24, 27, 25, 21, 10, 32.67144 + 17, 25, 27, 26, 25, 25, 24, 23, 19, 15, 16, 20, 25, 26, 26, 29, 32.67145 + 27, 25, 23, 23, 24, 24, 23, 30, 29, 30, 35, 47, 62, 75, 79, 101, 32.67146 + 118, 174, 227, 212, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67149 + 255, 255, 255, 237, 233, 220, 220, 232, 221, 201, 109, 22, 54, 51, 26, 18, 32.67150 + 24, 23, 17, 12, 22, 37, 38, 27, 25, 22, 20, 22, 24, 23, 17, 12, 32.67151 + 19, 22, 26, 26, 23, 19, 19, 22, 17, 20, 23, 22, 19, 19, 22, 25, 32.67152 + 26, 30, 32, 29, 25, 22, 25, 28, 33, 35, 38, 38, 38, 41, 50, 57, 32.67153 + 52, 74, 124, 195, 201, 223, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67156 + 255, 255, 255, 234, 242, 233, 217, 215, 226, 179, 59, 38, 51, 34, 22, 51, 32.67157 + 27, 26, 31, 31, 25, 23, 26, 24, 18, 18, 18, 20, 22, 23, 21, 17, 32.67158 + 14, 27, 24, 23, 23, 19, 15, 16, 19, 12, 19, 26, 24, 16, 12, 16, 32.67159 + 21, 23, 28, 32, 30, 24, 22, 26, 31, 22, 29, 40, 47, 46, 43, 46, 32.67160 + 50, 47, 61, 93, 164, 198, 214, 230, 255, 255, 255, 255, 255, 255, 255, 255, 32.67161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67163 + 255, 255, 244, 239, 225, 199, 222, 250, 190, 92, 45, 26, 45, 46, 39, 16, 32.67164 + 26, 21, 18, 21, 21, 17, 14, 16, 22, 26, 14, 17, 21, 22, 22, 22, 32.67165 + 24, 25, 32, 25, 21, 22, 21, 17, 16, 19, 14, 20, 24, 23, 18, 15, 32.67166 + 18, 22, 20, 22, 24, 24, 22, 22, 25, 28, 21, 22, 30, 42, 47, 45, 32.67167 + 45, 46, 53, 58, 72, 131, 188, 179, 194, 210, 255, 255, 255, 255, 255, 255, 32.67168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67170 + 255, 255, 246, 232, 212, 218, 243, 225, 149, 71, 32, 44, 49, 45, 17, 32, 32.67171 + 29, 34, 27, 29, 26, 24, 26, 26, 24, 23, 24, 25, 28, 29, 26, 20, 32.67172 + 19, 22, 26, 31, 23, 18, 21, 22, 18, 16, 17, 18, 19, 21, 20, 19, 32.67173 + 19, 21, 23, 22, 20, 19, 21, 25, 28, 28, 28, 35, 25, 19, 25, 31, 32.67174 + 31, 30, 32, 30, 32, 37, 91, 160, 131, 140, 157, 221, 255, 255, 255, 255, 32.67175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67177 + 255, 255, 247, 236, 220, 221, 229, 240, 99, 15, 53, 47, 32, 31, 30, 28, 32.67178 + 28, 28, 28, 28, 20, 23, 24, 20, 18, 20, 22, 22, 23, 25, 23, 16, 32.67179 + 15, 20, 22, 18, 30, 20, 18, 24, 24, 14, 10, 14, 22, 23, 20, 15, 32.67180 + 15, 20, 23, 22, 21, 20, 20, 20, 22, 24, 25, 25, 29, 22, 19, 23, 32.67181 + 29, 32, 35, 39, 35, 18, 47, 63, 134, 135, 156, 142, 186, 212, 255, 255, 32.67182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67184 + 255, 255, 232, 234, 238, 217, 246, 193, 25, 40, 51, 31, 37, 42, 38, 33, 32.67185 + 28, 24, 22, 22, 22, 26, 22, 19, 20, 22, 22, 21, 20, 21, 23, 22, 32.67186 + 16, 16, 20, 21, 18, 27, 19, 18, 23, 21, 12, 9, 14, 18, 20, 18, 32.67187 + 14, 14, 18, 20, 18, 18, 18, 17, 18, 20, 21, 22, 22, 26, 21, 18, 32.67188 + 22, 26, 28, 32, 37, 32, 24, 39, 36, 65, 61, 87, 94, 141, 190, 218, 32.67189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67191 + 255, 255, 227, 228, 231, 233, 243, 190, 40, 28, 30, 38, 28, 41, 37, 34, 32.67192 + 29, 25, 23, 24, 26, 28, 32, 20, 14, 20, 24, 21, 18, 18, 18, 20, 32.67193 + 20, 17, 17, 19, 19, 17, 23, 18, 18, 22, 19, 11, 10, 15, 17, 20, 32.67194 + 20, 17, 17, 20, 20, 17, 17, 18, 18, 19, 19, 20, 21, 21, 21, 18, 32.67195 + 18, 21, 22, 22, 28, 35, 32, 31, 31, 25, 22, 24, 43, 62, 95, 148, 32.67196 + 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67198 + 255, 255, 222, 221, 226, 229, 227, 217, 51, 41, 49, 45, 51, 44, 29, 29, 32.67199 + 28, 26, 25, 25, 27, 29, 30, 32, 19, 14, 20, 23, 17, 15, 20, 17, 32.67200 + 18, 19, 18, 18, 19, 18, 16, 18, 16, 18, 20, 17, 11, 11, 15, 17, 32.67201 + 21, 22, 20, 20, 22, 21, 17, 18, 19, 21, 21, 21, 21, 21, 22, 17, 32.67202 + 16, 17, 19, 18, 17, 23, 31, 34, 33, 21, 31, 22, 36, 34, 42, 60, 32.67203 + 88, 139, 196, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67205 + 255, 255, 227, 220, 224, 234, 232, 221, 120, 31, 48, 36, 31, 45, 37, 29, 32.67206 + 28, 29, 30, 29, 28, 25, 23, 21, 26, 19, 17, 20, 19, 14, 17, 24, 32.67207 + 18, 18, 18, 19, 19, 17, 16, 17, 16, 16, 17, 18, 17, 13, 13, 15, 32.67208 + 16, 21, 22, 20, 20, 22, 21, 16, 16, 19, 22, 22, 20, 19, 19, 21, 32.67209 + 15, 15, 16, 18, 16, 15, 20, 27, 31, 33, 17, 29, 15, 31, 17, 20, 32.67210 + 32, 43, 76, 129, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67212 + 255, 255, 229, 226, 223, 232, 239, 218, 187, 55, 63, 26, 58, 16, 17, 31, 32.67213 + 31, 22, 24, 28, 30, 30, 27, 24, 21, 20, 21, 21, 19, 17, 19, 24, 32.67214 + 28, 22, 19, 18, 20, 19, 16, 15, 18, 17, 16, 15, 17, 19, 19, 17, 32.67215 + 15, 14, 18, 19, 17, 17, 19, 18, 14, 12, 16, 20, 20, 17, 15, 16, 32.67216 + 18, 17, 14, 15, 17, 17, 15, 18, 24, 22, 33, 23, 28, 5, 17, 13, 32.67217 + 21, 24, 39, 55, 73, 121, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67219 + 255, 255, 223, 227, 225, 223, 229, 218, 167, 109, 40, 36, 82, 22, 24, 34, 32.67220 + 38, 15, 20, 22, 25, 28, 29, 28, 26, 24, 20, 24, 22, 16, 19, 30, 32.67221 + 35, 30, 27, 22, 19, 21, 19, 15, 15, 19, 20, 17, 14, 16, 22, 25, 32.67222 + 21, 15, 15, 18, 19, 16, 16, 19, 18, 15, 11, 16, 21, 20, 16, 13, 32.67223 + 14, 17, 19, 15, 13, 17, 19, 18, 18, 21, 17, 29, 30, 30, 13, 19, 32.67224 + 20, 24, 21, 35, 47, 46, 73, 184, 226, 255, 255, 255, 255, 255, 255, 255, 32.67225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67226 + 255, 255, 248, 224, 228, 225, 220, 218, 190, 113, 35, 32, 59, 11, 37, 44, 32.67227 + 21, 24, 26, 30, 30, 30, 27, 25, 22, 21, 19, 25, 28, 24, 16, 24, 32.67228 + 43, 44, 32, 31, 23, 20, 21, 19, 12, 13, 20, 21, 17, 14, 16, 24, 32.67229 + 29, 24, 16, 19, 22, 22, 17, 17, 21, 21, 18, 14, 19, 24, 23, 19, 32.67230 + 15, 16, 18, 22, 15, 13, 17, 22, 21, 20, 20, 17, 26, 30, 28, 26, 32.67231 + 24, 16, 8, 10, 14, 27, 31, 35, 121, 183, 232, 255, 255, 255, 255, 255, 32.67232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67233 + 255, 255, 245, 228, 219, 232, 230, 224, 236, 117, 47, 49, 47, 39, 31, 29, 32.67234 + 31, 32, 32, 29, 30, 24, 28, 46, 36, 27, 42, 32, 36, 31, 43, 31, 32.67235 + 37, 77, 66, 27, 15, 36, 18, 3, 19, 15, 6, 28, 10, 26, 18, 14, 32.67236 + 31, 34, 24, 30, 23, 22, 20, 19, 22, 23, 15, 8, 13, 18, 19, 17, 32.67237 + 18, 19, 18, 15, 21, 17, 19, 19, 19, 29, 33, 22, 16, 20, 26, 31, 32.67238 + 29, 22, 20, 22, 16, 18, 27, 36, 47, 79, 140, 195, 234, 255, 255, 255, 32.67239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67240 + 255, 255, 255, 227, 230, 230, 225, 213, 224, 216, 41, 65, 48, 48, 43, 36, 32.67241 + 34, 33, 32, 28, 27, 25, 28, 22, 26, 24, 28, 46, 36, 50, 41, 31, 32.67242 + 69, 43, 89, 49, 38, 32, 29, 39, 26, 23, 27, 18, 28, 13, 28, 22, 32.67243 + 19, 35, 38, 31, 32, 31, 27, 21, 19, 22, 21, 16, 11, 19, 24, 23, 32.67244 + 21, 22, 25, 22, 18, 20, 17, 21, 21, 21, 31, 37, 22, 15, 17, 24, 32.67245 + 31, 31, 28, 28, 32, 20, 22, 29, 35, 37, 55, 97, 139, 193, 233, 255, 32.67246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67247 + 255, 255, 255, 226, 228, 231, 254, 197, 247, 230, 89, 69, 35, 57, 45, 42, 32.67248 + 40, 36, 32, 29, 25, 23, 16, 31, 19, 21, 38, 53, 69, 65, 75, 49, 32.67249 + 63, 85, 87, 82, 53, 46, 48, 27, 45, 38, 21, 27, 22, 21, 23, 35, 32.67250 + 30, 25, 36, 44, 38, 35, 38, 30, 22, 19, 21, 20, 16, 14, 20, 21, 32.67251 + 20, 19, 21, 25, 23, 17, 18, 17, 22, 21, 22, 33, 36, 22, 17, 17, 32.67252 + 20, 26, 27, 27, 30, 35, 23, 25, 30, 32, 28, 31, 52, 77, 166, 225, 32.67253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67254 + 255, 255, 255, 226, 226, 227, 229, 222, 233, 228, 149, 53, 51, 71, 43, 43, 32.67255 + 47, 46, 41, 35, 32, 27, 25, 21, 38, 24, 31, 54, 57, 62, 63, 69, 32.67256 + 58, 91, 80, 89, 61, 45, 35, 57, 43, 32, 34, 29, 21, 24, 18, 32, 32.67257 + 39, 36, 29, 37, 48, 49, 43, 39, 29, 22, 22, 23, 21, 17, 15, 17, 32.67258 + 19, 18, 18, 22, 28, 27, 21, 16, 17, 22, 21, 22, 35, 38, 20, 23, 32.67259 + 19, 18, 21, 21, 20, 23, 28, 25, 25, 28, 29, 25, 23, 33, 46, 124, 32.67260 + 214, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67261 + 255, 255, 255, 255, 228, 227, 226, 225, 208, 243, 137, 60, 60, 67, 61, 55, 32.67262 + 50, 54, 55, 47, 42, 41, 38, 34, 27, 37, 26, 52, 81, 76, 82, 95, 32.67263 + 75, 111, 122, 110, 78, 94, 64, 62, 53, 68, 21, 38, 59, 27, 34, 30, 32.67264 + 36, 38, 36, 28, 35, 55, 65, 56, 36, 26, 20, 24, 26, 21, 17, 16, 32.67265 + 17, 19, 20, 21, 27, 34, 35, 31, 15, 18, 23, 20, 20, 36, 39, 22, 32.67266 + 27, 21, 18, 19, 19, 17, 19, 23, 27, 26, 25, 25, 24, 25, 33, 41, 32.67267 + 63, 172, 221, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67268 + 255, 255, 255, 255, 228, 228, 227, 225, 222, 237, 200, 35, 82, 59, 57, 72, 32.67269 + 46, 57, 61, 57, 48, 43, 45, 44, 37, 42, 42, 38, 73, 96, 88, 104, 32.67270 + 119, 75, 110, 125, 79, 70, 79, 69, 63, 47, 70, 28, 51, 81, 43, 45, 32.67271 + 52, 36, 36, 37, 31, 36, 64, 79, 67, 36, 26, 21, 27, 29, 23, 17, 32.67272 + 17, 12, 17, 20, 20, 24, 32, 35, 35, 17, 21, 25, 20, 20, 38, 44, 32.67273 + 26, 25, 20, 18, 21, 22, 21, 21, 23, 27, 26, 25, 23, 23, 27, 34, 32.67274 + 40, 32, 127, 200, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67275 + 255, 255, 255, 255, 246, 229, 230, 229, 228, 224, 226, 86, 88, 78, 77, 65, 32.67276 + 56, 56, 73, 72, 62, 49, 46, 50, 49, 42, 61, 60, 63, 88, 87, 76, 32.67277 + 85, 80, 126, 119, 135, 73, 107, 83, 90, 85, 64, 58, 55, 62, 73, 59, 32.67278 + 55, 82, 41, 41, 46, 41, 41, 69, 84, 66, 45, 30, 22, 27, 29, 21, 32.67279 + 17, 20, 10, 14, 20, 18, 19, 25, 32, 34, 23, 27, 29, 21, 21, 43, 32.67280 + 50, 32, 22, 17, 17, 21, 24, 22, 20, 20, 24, 26, 27, 26, 25, 28, 32.67281 + 33, 36, 32, 82, 154, 219, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67282 + 255, 255, 255, 255, 255, 227, 228, 231, 231, 229, 226, 100, 114, 71, 90, 99, 32.67283 + 66, 47, 76, 91, 88, 74, 58, 56, 63, 61, 50, 54, 65, 86, 112, 109, 32.67284 + 104, 115, 93, 165, 137, 112, 96, 110, 103, 81, 100, 96, 53, 87, 73, 56, 32.67285 + 71, 67, 111, 54, 50, 58, 51, 46, 71, 83, 58, 53, 36, 25, 28, 29, 32.67286 + 20, 19, 22, 14, 20, 27, 24, 20, 25, 32, 37, 29, 31, 33, 23, 24, 32.67287 + 46, 53, 35, 19, 15, 15, 21, 23, 19, 15, 14, 18, 24, 30, 30, 30, 32.67288 + 31, 33, 33, 30, 41, 102, 188, 212, 214, 255, 255, 255, 255, 255, 255, 255, 32.67289 + 255, 255, 255, 255, 255, 255, 228, 223, 228, 242, 203, 229, 67, 82, 82, 103, 32.67290 + 98, 72, 83, 81, 106, 62, 79, 57, 58, 69, 67, 51, 99, 94, 101, 126, 32.67291 + 95, 103, 116, 136, 136, 128, 121, 119, 115, 96, 98, 124, 89, 87, 104, 95, 32.67292 + 68, 79, 107, 95, 60, 68, 58, 52, 45, 88, 91, 77, 55, 24, 32, 20, 32.67293 + 28, 23, 23, 18, 19, 16, 26, 21, 29, 34, 27, 44, 48, 33, 22, 23, 32.67294 + 31, 36, 36, 38, 18, 11, 22, 21, 21, 24, 17, 27, 18, 25, 24, 29, 32.67295 + 39, 28, 19, 31, 30, 48, 67, 115, 184, 215, 255, 255, 255, 255, 255, 255, 32.67296 + 255, 255, 255, 255, 255, 255, 246, 230, 231, 223, 229, 235, 139, 84, 86, 75, 32.67297 + 90, 89, 70, 75, 69, 72, 88, 71, 102, 57, 87, 61, 102, 112, 123, 97, 32.67298 + 132, 95, 141, 121, 130, 139, 103, 126, 127, 85, 111, 137, 85, 97, 97, 97, 32.67299 + 104, 76, 86, 83, 71, 82, 89, 59, 53, 52, 89, 105, 104, 62, 30, 35, 32.67300 + 19, 29, 33, 32, 19, 15, 27, 23, 31, 20, 46, 28, 49, 50, 37, 24, 32.67301 + 24, 27, 30, 31, 33, 22, 14, 24, 21, 21, 25, 17, 27, 28, 30, 36, 32.67302 + 28, 19, 36, 45, 26, 35, 55, 67, 90, 150, 208, 224, 255, 255, 255, 255, 32.67303 + 255, 255, 255, 255, 255, 255, 255, 226, 222, 235, 225, 219, 186, 65, 76, 72, 32.67304 + 60, 75, 81, 70, 68, 58, 50, 92, 84, 79, 85, 80, 79, 96, 109, 109, 32.67305 + 123, 110, 136, 116, 118, 107, 126, 167, 115, 70, 111, 112, 93, 132, 114, 124, 32.67306 + 127, 118, 123, 131, 116, 81, 96, 114, 62, 51, 54, 87, 120, 134, 77, 34, 32.67307 + 35, 21, 34, 41, 40, 21, 19, 30, 34, 34, 33, 50, 38, 55, 64, 50, 32.67308 + 36, 33, 33, 31, 28, 28, 20, 11, 20, 18, 19, 22, 14, 23, 36, 23, 32.67309 + 37, 34, 13, 37, 57, 25, 30, 34, 42, 58, 100, 166, 206, 222, 255, 255, 32.67310 + 255, 255, 255, 255, 255, 255, 255, 255, 224, 215, 232, 234, 194, 68, 60, 55, 32.67311 + 53, 54, 68, 72, 63, 55, 47, 59, 96, 62, 96, 68, 74, 71, 98, 117, 32.67312 + 127, 124, 142, 134, 111, 100, 135, 154, 132, 98, 105, 140, 125, 92, 99, 121, 32.67313 + 141, 152, 111, 153, 159, 153, 99, 98, 140, 83, 54, 55, 90, 132, 152, 101, 32.67314 + 34, 31, 29, 41, 40, 42, 25, 32, 22, 54, 31, 66, 41, 53, 66, 81, 32.67315 + 62, 44, 41, 41, 38, 29, 23, 17, 9, 19, 19, 21, 25, 15, 23, 40, 32.67316 + 19, 30, 44, 32, 35, 49, 40, 45, 23, 31, 57, 80, 126, 180, 205, 230, 32.67317 + 255, 255, 255, 255, 255, 255, 255, 255, 221, 224, 220, 225, 219, 123, 13, 67, 32.67318 + 48, 51, 60, 60, 53, 45, 39, 42, 76, 69, 60, 98, 57, 41, 87, 132, 32.67319 + 115, 125, 115, 123, 114, 102, 105, 150, 145, 78, 95, 129, 96, 94, 125, 114, 32.67320 + 152, 163, 158, 139, 161, 173, 160, 128, 94, 153, 111, 67, 58, 102, 138, 155, 32.67321 + 123, 35, 33, 43, 47, 33, 38, 30, 40, 17, 52, 47, 84, 49, 57, 78, 32.67322 + 84, 65, 47, 44, 49, 46, 34, 26, 17, 9, 20, 22, 27, 31, 20, 26, 32.67323 + 34, 33, 31, 35, 42, 39, 42, 56, 54, 30, 33, 48, 56, 91, 152, 188, 32.67324 + 200, 255, 255, 255, 255, 255, 255, 255, 255, 221, 225, 232, 220, 163, 48, 47, 32.67325 + 49, 49, 48, 57, 45, 37, 39, 39, 53, 58, 37, 56, 34, 50, 56, 125, 32.67326 + 113, 82, 95, 111, 85, 109, 105, 116, 107, 88, 84, 79, 78, 86, 109, 152, 32.67327 + 195, 180, 176, 152, 193, 173, 192, 162, 168, 92, 145, 129, 77, 57, 108, 130, 32.67328 + 144, 133, 40, 40, 52, 48, 32, 40, 33, 37, 27, 39, 71, 80, 76, 54, 32.67329 + 85, 83, 68, 56, 55, 57, 54, 47, 42, 18, 7, 17, 18, 23, 29, 19, 32.67330 + 25, 19, 44, 35, 16, 26, 38, 41, 50, 48, 46, 42, 29, 26, 63, 122, 32.67331 + 157, 174, 255, 255, 255, 255, 255, 255, 255, 255, 223, 223, 227, 213, 78, 28, 32.67332 + 57, 37, 47, 37, 44, 30, 30, 42, 37, 50, 27, 45, 26, 42, 42, 129, 32.67333 + 101, 75, 64, 97, 83, 112, 78, 134, 101, 86, 95, 88, 94, 118, 155, 190, 32.67334 + 195, 174, 173, 161, 161, 199, 185, 195, 175, 162, 111, 128, 133, 87, 61, 113, 32.67335 + 118, 139, 133, 51, 55, 56, 45, 37, 50, 34, 35, 38, 43, 80, 83, 100, 32.67336 + 67, 85, 83, 77, 72, 68, 60, 53, 51, 53, 28, 13, 16, 13, 18, 26, 32.67337 + 19, 28, 15, 33, 42, 29, 19, 29, 38, 34, 46, 59, 54, 37, 31, 48, 32.67338 + 93, 138, 170, 190, 255, 255, 255, 255, 255, 255, 244, 226, 222, 213, 208, 17, 32.67339 + 51, 21, 44, 52, 34, 39, 26, 29, 40, 21, 25, 33, 40, 51, 86, 115, 32.67340 + 130, 69, 81, 80, 80, 75, 86, 62, 90, 93, 86, 121, 159, 177, 184, 198, 32.67341 + 193, 187, 199, 172, 161, 200, 186, 207, 196, 202, 136, 138, 122, 137, 100, 73, 32.67342 + 124, 117, 147, 130, 62, 71, 60, 43, 47, 62, 36, 37, 43, 63, 71, 98, 32.67343 + 110, 87, 83, 81, 82, 82, 72, 53, 40, 42, 50, 45, 26, 24, 17, 21, 32.67344 + 31, 27, 38, 25, 18, 50, 66, 33, 24, 37, 27, 31, 40, 42, 43, 36, 32.67345 + 21, 51, 114, 160, 173, 255, 255, 255, 255, 255, 255, 219, 223, 233, 221, 134, 32.67346 + 27, 51, 48, 31, 44, 36, 30, 29, 31, 30, 28, 29, 45, 53, 85, 121, 32.67347 + 116, 81, 74, 95, 78, 105, 117, 112, 112, 118, 132, 151, 177, 189, 200, 201, 32.67348 + 198, 200, 199, 199, 147, 181, 202, 196, 195, 203, 193, 165, 145, 116, 122, 99, 32.67349 + 76, 95, 157, 116, 117, 142, 64, 78, 66, 64, 57, 40, 46, 49, 60, 61, 32.67350 + 98, 112, 105, 70, 85, 78, 75, 88, 64, 33, 42, 44, 44, 52, 24, 17, 32.67351 + 21, 27, 45, 27, 27, 29, 26, 50, 49, 33, 39, 19, 24, 40, 58, 41, 32.67352 + 45, 53, 47, 80, 139, 166, 206, 255, 255, 255, 255, 255, 224, 230, 216, 196, 32.67353 + 46, 26, 42, 38, 45, 24, 26, 28, 30, 30, 29, 32, 40, 40, 100, 129, 32.67354 + 103, 74, 82, 106, 117, 151, 172, 179, 172, 172, 171, 177, 190, 198, 204, 211, 32.67355 + 212, 213, 210, 202, 192, 176, 196, 206, 200, 199, 204, 192, 170, 138, 137, 126, 32.67356 + 99, 86, 108, 151, 130, 92, 140, 88, 89, 71, 75, 62, 59, 56, 55, 65, 32.67357 + 65, 101, 111, 110, 83, 73, 75, 76, 81, 57, 30, 41, 40, 50, 47, 17, 32.67358 + 18, 26, 21, 38, 45, 31, 31, 27, 47, 43, 27, 31, 11, 24, 31, 51, 32.67359 + 46, 46, 51, 44, 66, 104, 153, 185, 255, 255, 255, 255, 255, 223, 221, 221, 32.67360 + 135, 4, 44, 45, 39, 45, 29, 35, 39, 35, 29, 29, 40, 52, 79, 74, 32.67361 + 67, 76, 108, 152, 183, 198, 199, 211, 212, 206, 208, 206, 204, 210, 212, 212, 32.67362 + 213, 214, 216, 212, 197, 180, 203, 207, 207, 204, 205, 205, 195, 181, 145, 163, 32.67363 + 129, 99, 81, 112, 145, 146, 96, 153, 119, 98, 83, 101, 63, 67, 67, 64, 32.67364 + 73, 73, 102, 108, 115, 102, 74, 79, 82, 84, 55, 28, 37, 34, 54, 62, 32.67365 + 32, 20, 25, 21, 35, 51, 35, 30, 24, 35, 32, 28, 37, 26, 28, 21, 32.67366 + 43, 52, 50, 51, 45, 51, 69, 118, 172, 255, 255, 255, 255, 245, 222, 214, 32.67367 + 230, 52, 26, 50, 44, 50, 39, 44, 46, 44, 35, 35, 44, 60, 76, 86, 32.67368 + 83, 108, 158, 186, 184, 199, 225, 206, 213, 206, 202, 210, 210, 206, 209, 215, 32.67369 + 216, 212, 211, 213, 210, 197, 181, 210, 205, 205, 205, 206, 201, 195, 193, 150, 32.67370 + 171, 146, 123, 82, 112, 141, 135, 119, 162, 130, 97, 96, 134, 70, 67, 74, 32.67371 + 70, 84, 82, 100, 96, 112, 116, 92, 82, 78, 88, 62, 27, 31, 32, 49, 32.67372 + 84, 66, 26, 21, 29, 36, 43, 53, 38, 26, 24, 20, 28, 45, 45, 35, 32.67373 + 18, 35, 54, 51, 52, 52, 45, 57, 81, 149, 255, 255, 255, 255, 225, 222, 32.67374 + 223, 184, 6, 38, 34, 36, 47, 46, 35, 39, 39, 38, 50, 73, 90, 102, 32.67375 + 120, 158, 192, 203, 200, 199, 207, 211, 213, 212, 203, 201, 212, 214, 211, 217, 32.67376 + 219, 219, 217, 213, 212, 212, 208, 199, 209, 204, 208, 209, 206, 197, 195, 200, 32.67377 + 148, 162, 168, 165, 96, 117, 146, 120, 130, 160, 132, 99, 98, 146, 85, 86, 32.67378 + 81, 75, 92, 92, 99, 82, 103, 121, 100, 72, 59, 80, 64, 26, 29, 37, 32.67379 + 37, 74, 78, 41, 26, 31, 34, 44, 67, 49, 39, 25, 16, 26, 37, 40, 32.67380 + 38, 22, 28, 47, 46, 48, 56, 45, 60, 68, 144, 202, 255, 255, 255, 226, 32.67381 + 223, 213, 97, 25, 40, 42, 41, 39, 61, 90, 98, 104, 114, 133, 154, 164, 32.67382 + 163, 189, 199, 193, 182, 194, 221, 229, 217, 219, 217, 209, 206, 217, 214, 212, 32.67383 + 220, 216, 219, 220, 214, 212, 214, 216, 213, 211, 210, 212, 214, 206, 195, 194, 32.67384 + 200, 169, 165, 179, 171, 98, 110, 162, 142, 146, 169, 153, 128, 101, 136, 98, 32.67385 + 105, 99, 84, 95, 95, 99, 74, 95, 119, 99, 62, 41, 63, 55, 24, 32, 32.67386 + 40, 31, 36, 58, 53, 33, 26, 30, 53, 54, 41, 46, 33, 24, 34, 32, 32.67387 + 31, 38, 34, 25, 34, 36, 40, 54, 44, 58, 72, 157, 163, 255, 255, 255, 32.67388 + 225, 222, 184, 49, 45, 40, 56, 50, 53, 91, 123, 134, 143, 149, 164, 179, 32.67389 + 180, 174, 201, 206, 213, 216, 213, 208, 211, 215, 214, 217, 213, 213, 218, 211, 32.67390 + 208, 220, 214, 217, 218, 213, 213, 215, 217, 214, 215, 213, 212, 211, 206, 200, 32.67391 + 196, 197, 187, 181, 183, 157, 105, 98, 160, 168, 162, 176, 166, 161, 113, 130, 32.67392 + 109, 118, 127, 92, 92, 94, 103, 77, 92, 116, 109, 80, 51, 52, 38, 23, 32.67393 + 34, 32, 39, 13, 41, 48, 26, 25, 30, 44, 39, 31, 48, 38, 30, 43, 32.67394 + 34, 32, 38, 52, 30, 25, 31, 33, 49, 44, 50, 64, 165, 166, 255, 255, 32.67395 + 255, 222, 218, 165, 53, 29, 31, 45, 44, 79, 129, 151, 161, 168, 168, 178, 32.67396 + 195, 197, 193, 203, 209, 210, 211, 216, 222, 222, 219, 209, 216, 218, 221, 223, 32.67397 + 213, 210, 222, 218, 220, 219, 217, 219, 221, 218, 211, 215, 211, 206, 203, 204, 32.67398 + 204, 201, 196, 176, 185, 188, 157, 126, 93, 139, 162, 159, 163, 155, 175, 126, 32.67399 + 134, 122, 121, 149, 101, 89, 93, 108, 83, 94, 113, 130, 111, 75, 52, 29, 32.67400 + 21, 36, 23, 52, 16, 41, 36, 11, 31, 34, 22, 45, 35, 53, 39, 29, 32.67401 + 42, 32, 31, 40, 67, 38, 24, 31, 32, 46, 43, 43, 45, 161, 179, 255, 32.67402 + 255, 255, 217, 215, 125, 52, 40, 30, 53, 56, 93, 155, 165, 174, 180, 182, 32.67403 + 188, 196, 198, 196, 204, 206, 207, 208, 209, 211, 212, 212, 212, 219, 222, 219, 32.67404 + 214, 212, 216, 221, 223, 222, 220, 219, 218, 216, 213, 210, 213, 219, 221, 213, 32.67405 + 208, 208, 203, 196, 195, 186, 178, 156, 119, 104, 116, 129, 171, 157, 157, 155, 32.67406 + 150, 154, 147, 122, 145, 146, 110, 80, 90, 89, 86, 106, 128, 127, 112, 79, 32.67407 + 46, 27, 28, 33, 53, 55, 33, 15, 23, 23, 22, 37, 49, 43, 33, 28, 32.67408 + 34, 45, 50, 49, 45, 55, 60, 43, 20, 26, 41, 41, 60, 56, 109, 154, 32.67409 + 255, 255, 255, 219, 215, 119, 42, 33, 32, 51, 64, 110, 161, 164, 175, 180, 32.67410 + 181, 181, 186, 190, 190, 197, 199, 200, 200, 204, 209, 215, 219, 217, 216, 214, 32.67411 + 218, 226, 228, 223, 218, 220, 219, 219, 220, 221, 220, 217, 215, 211, 214, 213, 32.67412 + 207, 200, 198, 197, 197, 183, 186, 184, 157, 120, 112, 121, 121, 152, 160, 154, 32.67413 + 152, 163, 154, 135, 133, 140, 171, 144, 90, 85, 101, 105, 111, 95, 107, 117, 32.67414 + 109, 81, 52, 39, 34, 46, 48, 32, 19, 23, 21, 18, 30, 42, 62, 74, 32.67415 + 62, 44, 42, 59, 77, 44, 46, 50, 40, 22, 25, 40, 43, 46, 50, 92, 32.67416 + 150, 202, 255, 255, 218, 213, 118, 39, 36, 43, 51, 78, 136, 169, 166, 177, 32.67417 + 183, 180, 176, 178, 183, 186, 178, 180, 186, 187, 192, 195, 199, 203, 211, 211, 32.67418 + 212, 220, 228, 232, 228, 221, 217, 216, 216, 216, 217, 215, 211, 208, 208, 207, 32.67419 + 203, 198, 188, 182, 185, 192, 178, 181, 172, 135, 100, 106, 125, 128, 130, 152, 32.67420 + 144, 147, 172, 152, 123, 144, 137, 159, 152, 129, 121, 105, 93, 98, 99, 107, 32.67421 + 117, 113, 83, 47, 30, 25, 37, 39, 32, 24, 24, 18, 14, 22, 40, 53, 32.67422 + 63, 59, 52, 51, 56, 59, 48, 39, 39, 36, 23, 23, 35, 41, 36, 45, 32.67423 + 73, 142, 161, 255, 255, 216, 209, 114, 41, 42, 58, 50, 88, 155, 169, 174, 32.67424 + 179, 181, 178, 174, 173, 173, 175, 173, 177, 184, 191, 191, 188, 188, 193, 194, 32.67425 + 205, 214, 219, 218, 219, 224, 229, 220, 219, 217, 217, 215, 208, 201, 196, 205, 32.67426 + 201, 194, 186, 173, 162, 162, 168, 162, 158, 147, 117, 89, 98, 124, 136, 115, 32.67427 + 126, 123, 138, 161, 144, 125, 141, 142, 148, 148, 152, 154, 126, 95, 89, 122, 32.67428 + 123, 130, 126, 98, 63, 47, 47, 37, 35, 33, 29, 24, 16, 14, 21, 34, 32.67429 + 32, 32, 37, 49, 55, 47, 33, 56, 37, 32, 35, 26, 21, 29, 36, 40, 32.67430 + 40, 63, 128, 165, 255, 255, 217, 208, 102, 41, 41, 63, 46, 93, 163, 161, 32.67431 + 176, 171, 164, 161, 157, 151, 146, 142, 142, 144, 150, 157, 158, 157, 163, 173, 32.67432 + 182, 194, 205, 212, 213, 214, 221, 225, 223, 220, 220, 217, 214, 206, 195, 189, 32.67433 + 196, 193, 185, 174, 157, 141, 136, 136, 126, 117, 120, 118, 99, 92, 106, 120, 32.67434 + 105, 92, 99, 124, 134, 133, 128, 126, 144, 165, 164, 148, 150, 156, 136, 109, 32.67435 + 86, 96, 113, 124, 109, 79, 57, 45, 46, 35, 35, 34, 25, 18, 20, 24, 32.67436 + 20, 30, 38, 39, 38, 43, 47, 49, 58, 34, 28, 35, 29, 23, 29, 34, 32.67437 + 47, 34, 58, 111, 181, 255, 255, 220, 210, 101, 52, 39, 65, 52, 107, 172, 32.67438 + 158, 159, 146, 135, 129, 125, 115, 105, 98, 95, 90, 93, 98, 103, 109, 128, 32.67439 + 147, 171, 176, 185, 200, 215, 221, 219, 212, 212, 211, 212, 212, 209, 201, 191, 32.67440 + 182, 185, 183, 175, 157, 142, 129, 118, 108, 101, 83, 84, 93, 81, 73, 85, 32.67441 + 102, 95, 75, 84, 105, 109, 118, 121, 111, 127, 148, 165, 165, 160, 157, 150, 32.67442 + 140, 116, 127, 139, 145, 138, 114, 86, 63, 60, 39, 37, 39, 28, 23, 27, 32.67443 + 26, 16, 28, 36, 33, 29, 34, 46, 54, 52, 30, 26, 33, 31, 28, 33, 32.67444 + 34, 47, 28, 51, 102, 191, 255, 255, 222, 210, 117, 68, 33, 60, 59, 122, 32.67445 + 175, 151, 128, 117, 106, 100, 94, 82, 75, 73, 79, 74, 76, 82, 85, 89, 32.67446 + 109, 131, 144, 154, 173, 195, 213, 219, 213, 203, 206, 205, 207, 208, 206, 197, 32.67447 + 188, 180, 172, 173, 162, 140, 128, 126, 114, 96, 90, 70, 62, 62, 54, 58, 32.67448 + 72, 81, 82, 81, 80, 87, 99, 104, 101, 100, 105, 109, 137, 167, 167, 150, 32.67449 + 146, 150, 140, 146, 145, 138, 133, 121, 96, 64, 71, 41, 39, 44, 33, 28, 32.67450 + 32, 26, 21, 21, 19, 18, 25, 35, 40, 39, 46, 30, 27, 32, 29, 30, 32.67451 + 33, 30, 38, 27, 42, 109, 192, 255, 255, 221, 208, 131, 79, 26, 49, 57, 32.67452 + 123, 166, 133, 100, 93, 85, 82, 75, 65, 64, 67, 73, 71, 76, 84, 82, 32.67453 + 78, 89, 107, 115, 139, 170, 194, 204, 204, 203, 202, 211, 213, 214, 215, 212, 32.67454 + 203, 193, 185, 166, 170, 157, 133, 125, 130, 119, 95, 82, 72, 70, 67, 62, 32.67455 + 68, 70, 60, 75, 97, 84, 74, 99, 98, 83, 99, 91, 101, 115, 126, 139, 32.67456 + 160, 160, 140, 127, 138, 143, 141, 147, 146, 119, 80, 76, 43, 41, 48, 36, 32.67457 + 32, 34, 24, 22, 24, 22, 19, 23, 32, 38, 39, 45, 32, 31, 31, 27, 32.67458 + 27, 30, 22, 30, 30, 37, 119, 189, 255, 255, 215, 210, 156, 70, 35, 35, 32.67459 + 57, 133, 95, 82, 61, 60, 56, 51, 56, 65, 70, 71, 80, 74, 70, 71, 32.67460 + 68, 67, 80, 100, 108, 131, 155, 169, 180, 191, 198, 199, 205, 202, 202, 209, 32.67461 + 211, 202, 192, 187, 182, 168, 156, 150, 138, 122, 118, 122, 108, 93, 89, 91, 32.67462 + 85, 73, 73, 84, 89, 95, 95, 92, 95, 102, 97, 87, 83, 86, 98, 113, 32.67463 + 119, 117, 128, 145, 131, 139, 140, 137, 145, 148, 133, 102, 76, 68, 62, 36, 32.67464 + 41, 49, 26, 42, 26, 26, 22, 16, 18, 24, 27, 26, 38, 24, 27, 21, 32.67465 + 24, 30, 22, 26, 25, 20, 38, 102, 231, 255, 255, 217, 213, 157, 77, 49, 32.67466 + 41, 63, 112, 78, 63, 47, 51, 55, 59, 69, 78, 82, 82, 72, 73, 77, 32.67467 + 84, 88, 85, 87, 89, 105, 124, 147, 168, 183, 192, 189, 184, 192, 194, 199, 32.67468 + 203, 209, 206, 200, 190, 179, 163, 155, 153, 153, 143, 143, 145, 134, 121, 115, 32.67469 + 118, 122, 124, 133, 145, 159, 160, 153, 140, 132, 128, 115, 100, 110, 103, 98, 32.67470 + 99, 96, 90, 99, 113, 133, 134, 133, 136, 152, 161, 148, 115, 75, 61, 63, 32.67471 + 49, 53, 60, 37, 37, 29, 28, 24, 18, 19, 24, 28, 27, 35, 23, 29, 32.67472 + 24, 26, 31, 20, 23, 27, 19, 34, 100, 225, 255, 255, 219, 214, 165, 83, 32.67473 + 53, 36, 65, 85, 71, 60, 65, 77, 91, 104, 118, 128, 130, 125, 120, 124, 32.67474 + 129, 133, 139, 137, 128, 116, 123, 132, 148, 165, 182, 193, 188, 181, 188, 195, 32.67475 + 202, 202, 208, 212, 206, 192, 184, 169, 162, 166, 172, 171, 172, 172, 181, 171, 32.67476 + 162, 158, 162, 169, 177, 181, 178, 183, 181, 173, 167, 164, 154, 140, 127, 116, 32.67477 + 108, 105, 101, 96, 101, 110, 122, 128, 132, 137, 147, 154, 149, 129, 75, 49, 32.67478 + 49, 43, 47, 57, 43, 30, 31, 30, 26, 19, 18, 23, 27, 26, 30, 24, 32.67479 + 32, 27, 27, 31, 19, 21, 26, 15, 27, 95, 214, 255, 255, 220, 215, 184, 32.67480 + 95, 50, 25, 74, 76, 90, 88, 104, 119, 137, 154, 170, 179, 178, 171, 168, 32.67481 + 171, 170, 165, 167, 171, 168, 158, 159, 157, 157, 163, 174, 186, 192, 192, 194, 32.67482 + 206, 212, 206, 210, 215, 208, 192, 190, 180, 176, 178, 182, 182, 185, 188, 180, 32.67483 + 177, 174, 173, 182, 192, 196, 192, 200, 206, 205, 195, 188, 185, 180, 167, 165, 32.67484 + 153, 142, 135, 124, 107, 95, 90, 106, 123, 141, 143, 139, 138, 145, 144, 92, 32.67485 + 51, 38, 31, 31, 47, 48, 30, 32, 32, 28, 21, 19, 22, 27, 26, 29, 32.67486 + 26, 36, 27, 25, 30, 19, 22, 26, 16, 27, 100, 210, 255, 255, 219, 215, 32.67487 + 196, 102, 44, 28, 98, 91, 124, 125, 138, 150, 167, 179, 192, 199, 197, 187, 32.67488 + 188, 188, 185, 175, 173, 180, 184, 179, 174, 170, 166, 163, 167, 176, 191, 202, 32.67489 + 203, 213, 218, 209, 210, 213, 208, 192, 187, 183, 184, 181, 180, 176, 183, 187, 32.67490 + 196, 193, 187, 184, 190, 198, 200, 194, 194, 202, 203, 194, 189, 190, 187, 181, 32.67491 + 178, 169, 159, 150, 138, 122, 105, 96, 103, 119, 137, 146, 145, 142, 150, 154, 32.67492 + 121, 80, 53, 45, 39, 47, 57, 42, 32, 34, 32, 24, 20, 22, 27, 26, 32.67493 + 30, 29, 38, 25, 21, 28, 21, 25, 28, 20, 33, 111, 208, 255, 255, 218, 32.67494 + 215, 187, 100, 33, 42, 123, 105, 140, 141, 161, 170, 179, 186, 193, 196, 193, 32.67495 + 184, 170, 167, 163, 155, 150, 151, 150, 151, 163, 164, 166, 165, 165, 171, 187, 32.67496 + 203, 203, 209, 212, 206, 205, 206, 203, 193, 182, 184, 187, 183, 177, 174, 179, 32.67497 + 184, 175, 168, 158, 154, 156, 160, 166, 168, 176, 188, 194, 188, 186, 189, 190, 32.67498 + 187, 176, 168, 158, 151, 145, 139, 133, 130, 115, 112, 118, 139, 154, 156, 155, 32.67499 + 149, 136, 114, 85, 76, 62, 51, 57, 44, 32, 37, 37, 31, 26, 26, 27, 32.67500 + 27, 29, 31, 41, 26, 19, 27, 21, 26, 23, 18, 33, 114, 255, 255, 255, 32.67501 + 218, 216, 178, 105, 30, 61, 139, 112, 140, 145, 166, 173, 178, 179, 181, 181, 32.67502 + 177, 166, 171, 162, 158, 161, 167, 167, 167, 170, 158, 157, 160, 162, 165, 171, 32.67503 + 187, 204, 206, 205, 207, 202, 201, 196, 195, 192, 182, 183, 187, 181, 178, 173, 32.67504 + 175, 174, 158, 149, 144, 149, 151, 151, 157, 166, 167, 181, 191, 186, 180, 178, 32.67505 + 176, 172, 191, 185, 173, 159, 150, 145, 142, 140, 134, 118, 113, 134, 156, 159, 32.67506 + 154, 149, 141, 141, 112, 102, 83, 50, 48, 43, 35, 40, 44, 39, 33, 30, 32.67507 + 30, 31, 23, 32, 46, 30, 21, 29, 22, 25, 22, 18, 33, 113, 255, 255, 32.67508 + 255, 219, 219, 185, 120, 38, 78, 148, 116, 144, 151, 155, 161, 163, 161, 162, 32.67509 + 159, 153, 141, 115, 100, 101, 119, 141, 152, 161, 169, 164, 160, 159, 160, 165, 32.67510 + 172, 190, 209, 211, 206, 205, 203, 199, 190, 188, 190, 180, 180, 180, 176, 174, 32.67511 + 170, 166, 160, 147, 134, 126, 124, 109, 86, 76, 81, 101, 123, 145, 151, 154, 32.67512 + 160, 162, 162, 173, 173, 168, 162, 158, 158, 158, 159, 152, 136, 129, 143, 155, 32.67513 + 155, 154, 158, 145, 159, 130, 116, 94, 49, 44, 47, 37, 43, 48, 43, 39, 32.67514 + 35, 33, 32, 20, 32, 48, 33, 23, 30, 21, 22, 29, 25, 40, 164, 255, 32.67515 + 255, 255, 218, 218, 189, 105, 49, 121, 145, 136, 150, 151, 134, 147, 119, 148, 32.67516 + 114, 68, 69, 67, 42, 52, 248, 132, 81, 167, 145, 150, 152, 165, 183, 157, 32.67517 + 160, 159, 190, 200, 209, 209, 209, 203, 197, 188, 184, 180, 185, 181, 180, 179, 32.67518 + 180, 177, 171, 164, 149, 95, 135, 159, 161, 95, 98, 84, 89, 69, 43, 54, 32.67519 + 64, 103, 124, 151, 142, 141, 148, 164, 165, 153, 153, 165, 176, 164, 147, 138, 32.67520 + 140, 148, 156, 161, 162, 149, 159, 136, 90, 98, 53, 56, 35, 30, 36, 48, 32.67521 + 56, 51, 41, 37, 32, 33, 32, 38, 43, 33, 25, 34, 43, 22, 114, 255, 32.67522 + 255, 255, 255, 218, 219, 197, 119, 57, 137, 149, 140, 141, 143, 132, 132, 130, 32.67523 + 95, 64, 87, 51, 52, 100, 109, 210, 47, 114, 195, 233, 181, 159, 164, 167, 32.67524 + 169, 166, 174, 189, 210, 211, 210, 208, 203, 197, 192, 189, 187, 178, 175, 175, 32.67525 + 183, 193, 194, 183, 171, 150, 137, 185, 176, 157, 101, 96, 63, 73, 65, 65, 32.67526 + 97, 86, 76, 72, 104, 130, 141, 151, 158, 158, 158, 163, 170, 176, 168, 157, 32.67527 + 151, 150, 153, 156, 159, 172, 159, 169, 147, 107, 113, 70, 65, 37, 32, 34, 32.67528 + 42, 49, 47, 45, 45, 35, 43, 49, 56, 59, 43, 31, 38, 35, 29, 130, 32.67529 + 255, 255, 255, 255, 255, 221, 192, 123, 61, 154, 157, 155, 148, 150, 138, 116, 32.67530 + 110, 61, 56, 119, 72, 63, 77, 82, 45, 102, 146, 211, 185, 206, 161, 158, 32.67531 + 147, 172, 165, 184, 186, 208, 211, 208, 203, 198, 194, 192, 192, 192, 179, 172, 32.67532 + 170, 181, 194, 193, 176, 157, 177, 126, 159, 187, 182, 104, 87, 78, 70, 66, 32.67533 + 82, 144, 156, 132, 74, 53, 89, 113, 133, 138, 143, 156, 164, 166, 173, 174, 32.67534 + 173, 168, 165, 162, 162, 164, 176, 164, 172, 156, 125, 124, 84, 74, 43, 35, 32.67535 + 32, 36, 37, 38, 44, 51, 35, 44, 51, 59, 63, 46, 36, 43, 45, 44, 32.67536 + 255, 255, 255, 255, 255, 255, 223, 187, 126, 62, 164, 161, 168, 155, 162, 133, 32.67537 + 101, 66, 69, 90, 134, 109, 91, 59, 77, 90, 108, 208, 170, 179, 147, 165, 32.67538 + 159, 148, 163, 167, 187, 190, 200, 210, 205, 197, 191, 189, 189, 190, 191, 182, 32.67539 + 174, 169, 175, 185, 185, 171, 156, 165, 137, 151, 154, 163, 136, 125, 97, 105, 32.67540 + 134, 159, 187, 170, 152, 100, 73, 72, 93, 114, 132, 148, 162, 170, 174, 173, 32.67541 + 178, 184, 183, 176, 170, 169, 174, 178, 167, 174, 162, 140, 136, 102, 83, 49, 32.67542 + 39, 33, 30, 28, 30, 39, 47, 38, 39, 38, 47, 56, 49, 43, 52, 77, 32.67543 + 64, 255, 255, 255, 255, 255, 255, 223, 201, 137, 71, 169, 161, 167, 156, 164, 32.67544 + 121, 94, 75, 95, 110, 136, 114, 114, 93, 138, 130, 153, 154, 193, 186, 168, 32.67545 + 173, 173, 172, 159, 178, 191, 206, 197, 211, 204, 194, 188, 186, 187, 188, 188, 32.67546 + 179, 174, 171, 174, 181, 186, 187, 185, 171, 161, 169, 159, 157, 143, 148, 144, 32.67547 + 141, 159, 158, 156, 135, 138, 121, 115, 92, 90, 99, 125, 143, 151, 160, 171, 32.67548 + 180, 185, 191, 188, 179, 172, 170, 175, 183, 174, 180, 168, 156, 145, 121, 95, 32.67549 + 49, 39, 31, 27, 24, 25, 35, 44, 41, 37, 33, 43, 59, 58, 52, 62, 32.67550 + 109, 84, 255, 255, 255, 255, 255, 255, 222, 204, 135, 74, 166, 167, 167, 166, 32.67551 + 174, 133, 122, 150, 135, 121, 155, 116, 142, 144, 130, 148, 171, 168, 177, 181, 32.67552 + 202, 179, 179, 183, 156, 183, 196, 215, 196, 210, 203, 195, 190, 189, 190, 189, 32.67553 + 188, 181, 179, 177, 176, 177, 183, 191, 196, 192, 167, 165, 178, 181, 158, 158, 32.67554 + 179, 165, 152, 137, 155, 153, 160, 147, 150, 143, 122, 115, 129, 143, 146, 155, 32.67555 + 168, 190, 192, 193, 187, 177, 170, 168, 172, 182, 175, 180, 165, 160, 143, 130, 32.67556 + 104, 54, 41, 31, 24, 24, 26, 33, 39, 36, 33, 31, 44, 64, 62, 59, 32.67557 + 68, 122, 104, 255, 255, 255, 255, 255, 255, 219, 194, 124, 73, 159, 173, 170, 32.67558 + 180, 189, 164, 170, 188, 177, 156, 178, 154, 175, 181, 170, 192, 175, 189, 177, 32.67559 + 168, 169, 179, 175, 169, 162, 181, 202, 211, 199, 205, 198, 192, 189, 191, 191, 32.67560 + 189, 186, 183, 183, 181, 178, 175, 175, 179, 183, 180, 191, 178, 163, 178, 199, 32.67561 + 193, 175, 190, 201, 204, 214, 187, 180, 172, 184, 186, 172, 163, 164, 169, 170, 32.67562 + 174, 177, 189, 189, 188, 184, 177, 171, 168, 172, 181, 176, 178, 161, 158, 137, 32.67563 + 137, 109, 69, 50, 35, 26, 24, 23, 28, 31, 25, 26, 27, 39, 58, 62, 32.67564 + 70, 90, 130, 132, 130, 255, 255, 255, 255, 255, 214, 192, 120, 77, 157, 181, 32.67565 + 170, 187, 193, 180, 192, 161, 196, 187, 175, 194, 192, 197, 188, 179, 168, 188, 32.67566 + 169, 160, 185, 180, 171, 152, 172, 180, 212, 207, 207, 198, 192, 188, 188, 191, 32.67567 + 191, 188, 184, 182, 182, 183, 182, 181, 177, 177, 176, 187, 192, 183, 183, 181, 32.67568 + 178, 184, 206, 192, 203, 191, 191, 189, 216, 201, 180, 179, 182, 183, 178, 178, 32.67569 + 181, 175, 166, 182, 181, 182, 181, 178, 175, 172, 174, 184, 178, 181, 163, 163, 32.67570 + 140, 146, 120, 86, 64, 40, 27, 21, 19, 21, 23, 24, 27, 29, 38, 54, 32.67571 + 69, 93, 127, 142, 160, 136, 153, 255, 255, 255, 255, 219, 172, 124, 77, 171, 32.67572 + 174, 194, 176, 191, 189, 188, 186, 184, 182, 180, 180, 179, 183, 181, 180, 181, 32.67573 + 185, 185, 181, 176, 172, 178, 175, 170, 181, 203, 209, 198, 189, 187, 185, 185, 32.67574 + 186, 188, 188, 188, 191, 191, 190, 189, 186, 181, 179, 177, 184, 185, 187, 189, 32.67575 + 190, 191, 191, 191, 183, 189, 196, 198, 199, 197, 194, 188, 189, 188, 185, 184, 32.67576 + 187, 187, 187, 184, 176, 176, 176, 178, 179, 179, 174, 172, 170, 170, 166, 160, 32.67577 + 161, 156, 138, 118, 112, 52, 46, 28, 33, 12, 13, 18, 26, 49, 22, 29, 32.67578 + 62, 95, 149, 169, 175, 193, 203, 181, 172, 255, 255, 255, 215, 177, 126, 81, 32.67579 + 171, 177, 195, 177, 195, 194, 194, 192, 188, 187, 187, 187, 187, 190, 191, 192, 32.67580 + 191, 190, 188, 187, 187, 189, 185, 176, 172, 186, 203, 205, 196, 193, 190, 186, 32.67581 + 185, 185, 185, 185, 185, 189, 190, 191, 190, 187, 184, 183, 183, 186, 185, 187, 32.67582 + 188, 192, 194, 196, 196, 196, 195, 193, 188, 188, 189, 191, 193, 189, 192, 192, 32.67583 + 194, 194, 191, 183, 179, 175, 175, 176, 179, 181, 180, 176, 170, 167, 166, 163, 32.67584 + 159, 161, 157, 141, 123, 111, 70, 60, 22, 19, 15, 16, 11, 37, 36, 44, 32.67585 + 40, 54, 111, 171, 193, 189, 197, 219, 185, 184, 180, 255, 255, 214, 179, 125, 32.67586 + 81, 169, 176, 188, 178, 198, 199, 198, 196, 195, 195, 195, 195, 197, 196, 200, 32.67587 + 202, 199, 196, 193, 194, 198, 200, 186, 174, 177, 192, 203, 203, 197, 188, 186, 32.67588 + 183, 181, 184, 187, 189, 189, 185, 190, 195, 193, 190, 187, 190, 192, 190, 190, 32.67589 + 191, 190, 195, 196, 199, 200, 211, 207, 201, 195, 193, 194, 197, 200, 195, 196, 32.67590 + 195, 196, 195, 193, 186, 183, 176, 177, 177, 180, 181, 179, 174, 168, 167, 164, 32.67591 + 161, 157, 158, 154, 141, 126, 113, 79, 67, 30, 17, 18, 22, 22, 31, 19, 32.67592 + 64, 63, 66, 140, 180, 185, 192, 189, 225, 190, 192, 170, 255, 255, 222, 183, 32.67593 + 128, 85, 165, 173, 184, 181, 202, 198, 198, 197, 196, 196, 197, 199, 200, 199, 32.67594 + 200, 203, 201, 197, 196, 197, 200, 193, 177, 170, 183, 197, 201, 202, 200, 190, 32.67595 + 184, 182, 178, 180, 183, 185, 187, 185, 191, 198, 198, 193, 189, 195, 199, 196, 32.67596 + 195, 193, 193, 195, 196, 199, 199, 211, 209, 208, 207, 205, 200, 198, 199, 202, 32.67597 + 199, 193, 190, 191, 193, 193, 194, 184, 182, 179, 178, 178, 176, 172, 167, 166, 32.67598 + 161, 158, 155, 154, 151, 140, 129, 114, 73, 65, 49, 31, 21, 27, 47, 50, 32.67599 + 54, 94, 102, 112, 166, 184, 170, 187, 181, 217, 201, 192, 173, 183, 255, 255, 32.67600 + 188, 138, 99, 165, 176, 186, 189, 205, 197, 197, 197, 197, 199, 200, 202, 202, 32.67601 + 201, 199, 199, 199, 201, 202, 200, 199, 185, 176, 176, 194, 204, 202, 201, 203, 32.67602 + 197, 190, 183, 177, 176, 175, 177, 178, 187, 193, 200, 200, 195, 192, 197, 201, 32.67603 + 204, 203, 200, 199, 199, 198, 200, 202, 203, 200, 203, 206, 205, 198, 194, 195, 32.67604 + 202, 198, 193, 191, 193, 197, 198, 199, 194, 189, 182, 177, 175, 173, 170, 166, 32.67605 + 162, 156, 154, 153, 152, 148, 140, 132, 111, 80, 73, 61, 35, 33, 37, 59, 32.67606 + 75, 123, 137, 149, 165, 177, 193, 182, 182, 176, 205, 213, 182, 183, 172, 255, 32.67607 + 255, 198, 153, 117, 168, 178, 191, 197, 204, 200, 200, 200, 201, 202, 204, 205, 32.67608 + 206, 204, 201, 199, 202, 205, 205, 202, 197, 188, 185, 189, 202, 210, 206, 201, 32.67609 + 201, 190, 185, 178, 174, 175, 179, 183, 183, 187, 193, 199, 198, 195, 194, 197, 32.67610 + 201, 210, 209, 208, 206, 205, 205, 207, 206, 204, 196, 196, 202, 202, 196, 197, 32.67611 + 202, 195, 195, 197, 200, 203, 203, 199, 196, 199, 193, 185, 179, 175, 173, 170, 32.67612 + 166, 159, 153, 152, 154, 151, 145, 139, 133, 108, 98, 90, 63, 35, 56, 61, 32.67613 + 70, 66, 141, 162, 190, 205, 188, 197, 191, 184, 175, 198, 214, 175, 189, 165, 32.67614 + 255, 255, 206, 169, 134, 166, 177, 192, 199, 197, 205, 204, 204, 203, 206, 206, 32.67615 + 209, 208, 205, 206, 207, 208, 207, 203, 200, 197, 196, 193, 194, 203, 214, 215, 32.67616 + 207, 199, 189, 183, 177, 173, 176, 182, 189, 191, 188, 189, 194, 196, 197, 197, 32.67617 + 199, 200, 210, 210, 212, 210, 210, 210, 211, 210, 208, 200, 199, 206, 207, 200, 32.67618 + 203, 209, 197, 199, 201, 205, 207, 206, 200, 197, 197, 193, 187, 183, 180, 177, 32.67619 + 171, 166, 155, 149, 151, 154, 152, 143, 137, 135, 110, 102, 94, 75, 51, 87, 32.67620 + 97, 111, 108, 136, 171, 204, 214, 213, 205, 189, 185, 169, 199, 203, 176, 191, 32.67621 + 255, 255, 255, 209, 176, 142, 164, 173, 189, 196, 187, 205, 205, 204, 204, 205, 32.67622 + 207, 208, 208, 205, 208, 212, 211, 204, 197, 195, 194, 200, 194, 191, 198, 214, 32.67623 + 220, 211, 198, 201, 194, 184, 177, 174, 177, 181, 183, 186, 188, 190, 194, 197, 32.67624 + 199, 200, 200, 207, 208, 209, 211, 213, 212, 212, 212, 205, 199, 202, 213, 213, 32.67625 + 203, 201, 207, 208, 205, 202, 202, 204, 205, 203, 203, 192, 191, 189, 188, 185, 32.67626 + 180, 173, 166, 153, 148, 150, 154, 151, 142, 137, 135, 115, 93, 86, 92, 76, 32.67627 + 108, 126, 164, 212, 162, 183, 196, 203, 233, 221, 195, 184, 161, 201, 191, 180, 32.67628 + 211, 255, 255, 255, 205, 184, 143, 157, 167, 192, 200, 197, 199, 201, 202, 202, 32.67629 + 203, 205, 209, 211, 200, 202, 203, 199, 197, 197, 197, 192, 192, 191, 194, 202, 32.67630 + 210, 208, 201, 196, 188, 186, 184, 182, 180, 180, 179, 179, 180, 184, 191, 186, 32.67631 + 207, 195, 199, 202, 210, 215, 214, 210, 214, 222, 220, 210, 214, 215, 211, 208, 32.67632 + 216, 225, 221, 207, 215, 212, 213, 215, 212, 204, 197, 197, 198, 192, 185, 182, 32.67633 + 180, 174, 164, 155, 154, 149, 135, 154, 146, 154, 135, 131, 130, 94, 107, 98, 32.67634 + 117, 128, 161, 212, 215, 183, 175, 197, 211, 210, 210, 208, 174, 171, 200, 179, 32.67635 + 190, 255, 255, 255, 255, 219, 196, 150, 161, 169, 189, 196, 193, 201, 203, 205, 32.67636 + 205, 206, 207, 211, 213, 205, 211, 213, 206, 201, 200, 204, 204, 187, 189, 195, 32.67637 + 205, 213, 210, 202, 195, 188, 185, 183, 179, 178, 175, 171, 167, 167, 170, 181, 32.67638 + 181, 208, 200, 204, 205, 210, 214, 216, 216, 219, 223, 221, 217, 216, 220, 216, 32.67639 + 208, 210, 221, 224, 219, 219, 212, 207, 206, 201, 196, 193, 195, 197, 191, 184, 32.67640 + 181, 179, 174, 166, 158, 145, 143, 134, 148, 137, 141, 125, 125, 128, 111, 134, 32.67641 + 131, 148, 152, 174, 209, 225, 196, 186, 198, 209, 213, 212, 203, 184, 171, 190, 32.67642 + 176, 255, 255, 255, 255, 255, 216, 194, 146, 158, 167, 187, 195, 195, 200, 202, 32.67643 + 204, 205, 207, 207, 211, 213, 206, 211, 213, 205, 197, 196, 200, 202, 180, 187, 32.67644 + 196, 206, 213, 211, 201, 192, 180, 178, 178, 180, 182, 179, 173, 166, 158, 160, 32.67645 + 170, 171, 205, 203, 207, 205, 206, 208, 212, 217, 218, 215, 214, 218, 213, 222, 32.67646 + 223, 215, 211, 217, 222, 223, 221, 215, 212, 211, 208, 203, 200, 202, 196, 191, 32.67647 + 183, 179, 177, 173, 166, 160, 143, 143, 138, 148, 137, 137, 128, 129, 120, 121, 32.67648 + 150, 146, 161, 165, 182, 199, 224, 204, 195, 195, 200, 211, 214, 200, 182, 164, 32.67649 + 182, 181, 255, 255, 255, 255, 255, 218, 192, 145, 158, 165, 185, 194, 194, 197, 32.67650 + 199, 201, 202, 203, 205, 207, 209, 203, 207, 208, 202, 197, 196, 194, 192, 180, 32.67651 + 188, 198, 208, 214, 213, 206, 196, 181, 180, 181, 183, 184, 180, 174, 169, 163, 32.67652 + 160, 164, 162, 199, 202, 208, 202, 206, 205, 211, 219, 218, 209, 209, 218, 210, 32.67653 + 219, 227, 224, 219, 217, 216, 213, 204, 202, 205, 210, 209, 203, 196, 196, 197, 32.67654 + 191, 183, 177, 174, 170, 164, 159, 144, 141, 140, 145, 142, 138, 132, 134, 116, 32.67655 + 127, 149, 141, 158, 164, 188, 195, 212, 205, 197, 188, 186, 202, 211, 199, 171, 32.67656 + 156, 186, 255, 255, 255, 255, 255, 255, 228, 200, 150, 162, 167, 182, 187, 190, 32.67657 + 195, 198, 201, 203, 204, 205, 207, 208, 207, 205, 206, 204, 206, 204, 193, 182, 32.67658 + 184, 194, 203, 209, 213, 216, 212, 202, 193, 190, 191, 187, 184, 179, 176, 173, 32.67659 + 172, 165, 160, 153, 192, 199, 209, 204, 213, 212, 216, 223, 220, 212, 213, 219, 32.67660 + 215, 220, 225, 223, 220, 217, 211, 205, 206, 204, 206, 211, 210, 205, 200, 201, 32.67661 + 196, 191, 183, 176, 170, 166, 161, 156, 146, 138, 137, 136, 142, 133, 129, 124, 32.67662 + 117, 131, 149, 142, 163, 172, 201, 200, 208, 206, 199, 183, 176, 194, 205, 192, 32.67663 + 165, 155, 190, 255, 255, 255, 255, 255, 255, 222, 194, 144, 160, 167, 179, 186, 32.67664 + 190, 196, 199, 203, 204, 206, 206, 208, 209, 207, 205, 202, 203, 209, 207, 192, 32.67665 + 174, 184, 196, 205, 207, 212, 216, 212, 202, 193, 194, 192, 187, 183, 183, 188, 32.67666 + 192, 177, 169, 160, 147, 185, 198, 210, 207, 215, 215, 216, 219, 219, 216, 215, 32.67667 + 219, 227, 223, 218, 216, 216, 216, 213, 208, 218, 210, 205, 203, 201, 199, 200, 32.67668 + 205, 191, 188, 182, 175, 169, 163, 158, 154, 151, 139, 140, 134, 141, 127, 125, 32.67669 + 116, 114, 132, 148, 153, 180, 186, 214, 206, 219, 210, 199, 181, 176, 192, 198, 32.67670 + 179, 171, 166, 255, 255, 255, 255, 255, 255, 255, 208, 182, 137, 157, 165, 179, 32.67671 + 188, 191, 196, 198, 203, 204, 204, 205, 208, 209, 206, 203, 200, 199, 202, 200, 32.67672 + 186, 171, 171, 186, 198, 200, 203, 206, 200, 189, 178, 179, 176, 167, 160, 161, 32.67673 + 175, 188, 180, 171, 162, 147, 182, 195, 206, 202, 211, 214, 214, 213, 215, 221, 32.67674 + 222, 220, 227, 222, 218, 217, 216, 216, 214, 214, 208, 199, 191, 188, 186, 185, 32.67675 + 188, 194, 183, 182, 179, 174, 168, 162, 158, 154, 149, 137, 144, 133, 141, 123, 32.67676 + 126, 121, 112, 130, 144, 159, 193, 198, 227, 215, 230, 207, 188, 177, 181, 199, 32.67677 + 195, 168, 172, 175, 255, 255, 255, 255, 255, 255, 255, 215, 186, 139, 159, 164, 32.67678 + 176, 181, 185, 193, 196, 201, 204, 204, 203, 204, 204, 207, 207, 205, 202, 200, 32.67679 + 197, 188, 177, 156, 173, 187, 190, 194, 195, 187, 174, 166, 165, 156, 139, 121, 32.67680 + 120, 135, 150, 180, 175, 166, 149, 180, 191, 201, 195, 212, 217, 215, 211, 218, 32.67681 + 231, 233, 227, 219, 220, 222, 224, 223, 216, 213, 212, 210, 204, 201, 202, 201, 32.67682 + 199, 199, 203, 177, 176, 176, 173, 168, 162, 159, 155, 137, 130, 143, 128, 137, 32.67683 + 119, 128, 128, 122, 135, 145, 166, 203, 207, 239, 227, 232, 200, 173, 171, 188, 32.67684 + 207, 194, 160, 164, 173, 255, 255, 255, 255, 255, 255, 255, 255, 179, 135, 160, 32.67685 + 151, 164, 173, 179, 187, 191, 194, 200, 205, 207, 207, 205, 208, 205, 204, 201, 32.67686 + 201, 197, 189, 182, 178, 166, 167, 173, 167, 169, 173, 171, 143, 156, 161, 141, 32.67687 + 110, 98, 114, 137, 172, 173, 155, 153, 183, 198, 196, 202, 213, 214, 217, 219, 32.67688 + 222, 222, 220, 217, 219, 222, 224, 220, 213, 209, 206, 210, 198, 196, 194, 194, 32.67689 + 194, 193, 186, 182, 179, 178, 174, 167, 161, 155, 154, 153, 137, 129, 128, 134, 32.67690 + 132, 125, 127, 137, 125, 153, 152, 173, 185, 200, 172, 174, 184, 167, 192, 201, 32.67691 + 188, 187, 176, 165, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 133, 32.67692 + 152, 147, 159, 166, 169, 182, 185, 192, 197, 204, 204, 204, 203, 209, 210, 209, 32.67693 + 206, 201, 195, 186, 183, 166, 142, 134, 139, 145, 150, 148, 136, 146, 157, 165, 32.67694 + 161, 151, 152, 164, 179, 172, 169, 162, 169, 191, 201, 201, 203, 217, 216, 216, 32.67695 + 219, 221, 222, 222, 221, 219, 219, 219, 218, 215, 209, 203, 198, 196, 195, 192, 32.67696 + 193, 194, 193, 187, 183, 180, 178, 172, 165, 155, 149, 146, 144, 136, 126, 123, 32.67697 + 127, 127, 120, 122, 130, 125, 152, 149, 161, 168, 187, 182, 200, 189, 182, 209, 32.67698 + 211, 194, 190, 178, 169, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 32.67699 + 134, 146, 149, 158, 164, 163, 183, 187, 195, 200, 204, 206, 206, 206, 208, 211, 32.67700 + 210, 204, 195, 188, 183, 180, 165, 141, 133, 138, 143, 150, 149, 139, 155, 158, 32.67701 + 164, 171, 178, 181, 183, 185, 166, 157, 167, 188, 199, 205, 212, 209, 219, 216, 32.67702 + 217, 216, 217, 219, 222, 223, 223, 221, 219, 219, 219, 212, 202, 194, 194, 191, 32.67703 + 189, 190, 192, 192, 187, 184, 179, 176, 170, 162, 154, 148, 142, 137, 130, 118, 32.67704 + 116, 121, 125, 120, 120, 125, 140, 147, 136, 151, 174, 200, 199, 207, 191, 191, 32.67705 + 210, 205, 190, 190, 181, 176, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67706 + 188, 138, 138, 150, 155, 163, 164, 183, 188, 195, 200, 204, 204, 206, 208, 211, 32.67707 + 209, 201, 194, 188, 182, 178, 176, 166, 156, 159, 162, 158, 160, 168, 168, 162, 32.67708 + 160, 161, 169, 176, 180, 174, 169, 172, 158, 174, 201, 201, 201, 211, 205, 212, 32.67709 + 211, 214, 214, 215, 215, 217, 218, 223, 222, 220, 219, 216, 209, 202, 196, 193, 32.67710 + 191, 188, 187, 189, 187, 184, 180, 176, 172, 165, 160, 155, 149, 144, 137, 126, 32.67711 + 115, 112, 118, 124, 124, 124, 126, 154, 155, 154, 173, 199, 216, 208, 204, 195, 32.67712 + 191, 197, 187, 184, 194, 184, 177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67713 + 255, 195, 143, 128, 148, 150, 163, 162, 177, 184, 190, 193, 197, 195, 197, 202, 32.67714 + 213, 204, 192, 184, 184, 183, 178, 174, 164, 158, 165, 170, 164, 162, 168, 167, 32.67715 + 164, 164, 165, 170, 177, 181, 179, 177, 190, 173, 187, 207, 200, 195, 202, 197, 32.67716 + 204, 206, 213, 216, 216, 214, 215, 218, 222, 221, 219, 214, 207, 200, 199, 198, 32.67717 + 194, 190, 186, 185, 186, 183, 180, 175, 175, 169, 161, 156, 151, 147, 141, 133, 32.67718 + 124, 114, 111, 116, 120, 122, 120, 120, 159, 173, 196, 206, 210, 206, 211, 214, 32.67719 + 208, 197, 191, 180, 188, 194, 174, 164, 255, 255, 255, 255, 255, 255, 255, 255, 32.67720 + 255, 255, 200, 149, 120, 145, 143, 157, 160, 176, 184, 190, 193, 193, 192, 193, 32.67721 + 199, 206, 196, 183, 179, 182, 183, 178, 170, 171, 155, 156, 166, 166, 167, 162, 32.67722 + 148, 162, 164, 166, 168, 169, 171, 174, 180, 188, 179, 185, 196, 199, 199, 204, 32.67723 + 203, 200, 204, 214, 218, 218, 216, 217, 219, 223, 225, 222, 215, 208, 202, 203, 32.67724 + 204, 194, 190, 185, 181, 181, 179, 176, 171, 174, 165, 157, 149, 145, 138, 133, 32.67725 + 124, 122, 115, 113, 113, 116, 115, 116, 115, 184, 183, 204, 211, 214, 205, 216, 32.67726 + 211, 216, 203, 190, 178, 186, 182, 155, 153, 255, 255, 255, 255, 255, 255, 255, 32.67727 + 255, 255, 255, 205, 155, 121, 149, 141, 154, 157, 177, 185, 192, 194, 191, 189, 32.67728 + 191, 195, 186, 180, 174, 174, 178, 177, 171, 163, 176, 159, 158, 165, 167, 166, 32.67729 + 162, 151, 157, 161, 165, 163, 158, 158, 164, 169, 172, 176, 173, 178, 195, 201, 32.67730 + 202, 204, 196, 200, 209, 214, 215, 215, 218, 221, 222, 222, 219, 214, 210, 205, 32.67731 + 203, 200, 192, 186, 181, 179, 180, 179, 176, 172, 173, 163, 151, 142, 140, 136, 32.67732 + 132, 125, 120, 117, 117, 117, 117, 117, 119, 120, 205, 181, 193, 200, 215, 212, 32.67733 + 223, 205, 219, 206, 190, 173, 174, 165, 152, 179, 255, 255, 255, 255, 255, 255, 32.67734 + 255, 255, 255, 255, 209, 164, 126, 154, 142, 155, 157, 173, 180, 188, 189, 185, 32.67735 + 181, 183, 186, 165, 166, 166, 169, 169, 167, 161, 154, 163, 157, 163, 168, 157, 32.67736 + 155, 162, 162, 156, 159, 164, 164, 159, 158, 163, 170, 166, 177, 168, 164, 186, 32.67737 + 191, 184, 187, 190, 196, 203, 207, 209, 211, 216, 222, 214, 209, 207, 206, 206, 32.67738 + 202, 195, 187, 190, 183, 179, 176, 178, 178, 176, 171, 169, 159, 147, 140, 140, 32.67739 + 140, 137, 131, 116, 118, 121, 121, 123, 125, 128, 130, 199, 180, 201, 202, 211, 32.67740 + 204, 224, 216, 221, 207, 190, 168, 164, 158, 169, 225, 255, 255, 255, 255, 255, 32.67741 + 255, 255, 255, 255, 255, 212, 179, 127, 128, 150, 145, 155, 174, 176, 180, 187, 32.67742 + 186, 177, 171, 170, 168, 173, 171, 164, 159, 159, 161, 159, 163, 154, 151, 160, 32.67743 + 167, 167, 161, 155, 169, 172, 162, 170, 158, 173, 161, 161, 164, 160, 159, 165, 32.67744 + 173, 176, 184, 187, 178, 189, 199, 202, 203, 209, 214, 215, 214, 209, 208, 208, 32.67745 + 204, 196, 195, 197, 189, 179, 170, 171, 178, 180, 172, 162, 160, 154, 145, 135, 32.67746 + 135, 139, 136, 125, 123, 119, 125, 130, 126, 121, 130, 149, 201, 212, 207, 199, 32.67747 + 205, 207, 209, 217, 226, 184, 190, 176, 149, 144, 203, 230, 255, 255, 255, 255, 32.67748 + 255, 255, 255, 255, 255, 255, 215, 188, 134, 127, 147, 146, 159, 171, 173, 177, 32.67749 + 181, 176, 165, 160, 161, 156, 159, 157, 153, 153, 158, 162, 162, 160, 155, 155, 32.67750 + 162, 167, 166, 164, 163, 169, 172, 170, 177, 173, 177, 166, 161, 167, 162, 158, 32.67751 + 161, 165, 166, 170, 175, 172, 183, 191, 194, 198, 204, 210, 211, 208, 205, 205, 32.67752 + 206, 202, 193, 189, 190, 187, 180, 174, 173, 177, 173, 164, 154, 159, 153, 143, 32.67753 + 133, 133, 136, 132, 125, 129, 124, 125, 126, 123, 121, 136, 156, 194, 204, 202, 32.67754 + 207, 219, 219, 205, 196, 199, 179, 163, 124, 119, 193, 211, 255, 255, 255, 255, 32.67755 + 255, 255, 255, 255, 255, 255, 255, 217, 197, 143, 126, 139, 141, 156, 167, 172, 32.67756 + 177, 178, 171, 161, 159, 159, 152, 152, 150, 147, 150, 157, 160, 159, 157, 156, 32.67757 + 161, 166, 167, 165, 165, 167, 155, 158, 165, 163, 170, 165, 163, 153, 167, 161, 32.67758 + 158, 160, 163, 163, 164, 168, 163, 172, 178, 183, 191, 201, 208, 209, 208, 206, 32.67759 + 208, 210, 207, 197, 192, 188, 180, 177, 175, 173, 173, 169, 161, 153, 158, 151, 32.67760 + 141, 133, 133, 132, 128, 123, 133, 128, 127, 127, 120, 117, 130, 147, 172, 196, 32.67761 + 208, 209, 210, 205, 200, 205, 187, 154, 117, 53, 110, 214, 214, 255, 255, 255, 32.67762 + 255, 255, 255, 255, 255, 255, 255, 255, 215, 200, 149, 125, 135, 138, 149, 161, 32.67763 + 169, 175, 174, 167, 160, 162, 163, 160, 157, 153, 151, 154, 159, 160, 155, 161, 32.67764 + 161, 167, 173, 175, 171, 168, 170, 168, 166, 177, 165, 179, 169, 176, 166, 161, 32.67765 + 158, 159, 164, 167, 163, 161, 164, 158, 164, 169, 175, 187, 201, 208, 211, 207, 32.67766 + 206, 206, 206, 204, 197, 192, 187, 173, 171, 172, 172, 169, 167, 161, 158, 155, 32.67767 + 147, 139, 132, 133, 133, 129, 124, 130, 130, 130, 130, 121, 112, 115, 123, 131, 32.67768 + 160, 179, 181, 178, 170, 165, 170, 146, 89, 68, 32, 166, 200, 210, 255, 255, 32.67769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 203, 157, 129, 136, 138, 143, 32.67770 + 155, 163, 169, 167, 161, 158, 158, 161, 160, 160, 157, 157, 161, 166, 167, 163, 32.67771 + 176, 175, 179, 188, 194, 190, 183, 179, 185, 184, 196, 182, 190, 177, 180, 168, 32.67772 + 163, 160, 162, 168, 167, 160, 154, 153, 158, 161, 163, 165, 176, 190, 201, 203, 32.67773 + 202, 202, 198, 195, 193, 190, 186, 180, 174, 172, 170, 167, 165, 163, 161, 160, 32.67774 + 152, 143, 137, 134, 136, 135, 131, 129, 130, 130, 129, 125, 116, 109, 109, 114, 32.67775 + 97, 107, 110, 117, 129, 121, 94, 73, 60, 25, 25, 77, 223, 194, 224, 255, 32.67776 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 210, 168, 133, 138, 140, 32.67777 + 142, 158, 166, 169, 164, 159, 157, 159, 160, 156, 157, 155, 152, 159, 167, 173, 32.67778 + 173, 185, 182, 185, 196, 204, 201, 197, 193, 189, 194, 204, 195, 194, 182, 174, 32.67779 + 163, 170, 166, 165, 167, 163, 152, 144, 141, 160, 162, 159, 158, 163, 176, 188, 32.67780 + 191, 200, 199, 193, 188, 188, 187, 183, 176, 175, 173, 168, 164, 161, 157, 155, 32.67781 + 154, 149, 140, 133, 135, 137, 136, 133, 131, 132, 129, 124, 117, 109, 107, 112, 32.67782 + 116, 103, 96, 74, 59, 63, 58, 43, 31, 19, 15, 17, 127, 211, 195, 255, 32.67783 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 216, 177, 133, 133, 32.67784 + 139, 143, 159, 165, 166, 162, 161, 162, 163, 161, 160, 159, 152, 142, 144, 152, 32.67785 + 163, 169, 171, 172, 175, 182, 188, 189, 194, 196, 190, 197, 198, 200, 190, 191, 32.67786 + 183, 179, 175, 168, 164, 164, 160, 154, 149, 149, 159, 163, 160, 156, 156, 167, 32.67787 + 181, 189, 197, 197, 192, 187, 187, 188, 182, 171, 171, 167, 163, 161, 158, 156, 32.67788 + 151, 147, 148, 139, 131, 135, 137, 134, 128, 130, 125, 124, 118, 110, 103, 103, 32.67789 + 107, 108, 109, 98, 65, 33, 24, 25, 29, 36, 23, 19, 50, 159, 192, 188, 32.67790 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 220, 179, 127, 32.67791 + 126, 136, 141, 147, 154, 155, 152, 155, 162, 165, 164, 173, 171, 156, 139, 131, 32.67792 + 138, 150, 160, 154, 155, 160, 164, 167, 171, 182, 195, 176, 180, 170, 177, 163, 32.67793 + 181, 181, 188, 175, 167, 162, 164, 164, 163, 164, 167, 156, 160, 160, 153, 155, 32.67794 + 167, 182, 192, 186, 189, 187, 183, 184, 184, 174, 160, 162, 157, 156, 158, 159, 32.67795 + 156, 150, 145, 148, 138, 130, 134, 137, 131, 127, 125, 114, 116, 116, 110, 105, 32.67796 + 100, 98, 94, 94, 79, 46, 26, 32, 32, 22, 14, 21, 0, 91, 184, 212, 32.67797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 201, 205, 32.67798 + 120, 118, 125, 128, 147, 147, 152, 160, 163, 163, 167, 178, 164, 165, 155, 144, 32.67799 + 137, 136, 135, 131, 133, 139, 148, 155, 160, 164, 169, 170, 161, 161, 162, 163, 32.67800 + 167, 171, 179, 180, 188, 177, 169, 167, 162, 156, 158, 166, 157, 153, 153, 158, 32.67801 + 164, 165, 167, 170, 188, 186, 180, 186, 193, 179, 169, 174, 162, 155, 154, 159, 32.67802 + 162, 154, 145, 139, 149, 132, 124, 135, 146, 139, 129, 122, 115, 113, 110, 106, 32.67803 + 106, 109, 107, 100, 105, 60, 30, 27, 21, 18, 18, 15, 27, 31, 149, 192, 32.67804 + 218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 32.67805 + 208, 129, 124, 131, 135, 146, 147, 151, 160, 163, 162, 165, 176, 179, 181, 176, 32.67806 + 165, 160, 158, 154, 150, 151, 150, 146, 144, 144, 148, 158, 162, 158, 153, 152, 32.67807 + 150, 150, 151, 153, 152, 168, 161, 159, 162, 164, 163, 165, 168, 163, 161, 162, 32.67808 + 167, 168, 168, 169, 174, 187, 184, 179, 181, 184, 171, 159, 163, 160, 157, 158, 32.67809 + 162, 160, 152, 146, 145, 146, 135, 129, 134, 140, 138, 128, 118, 113, 106, 102, 32.67810 + 95, 101, 108, 110, 104, 100, 56, 27, 22, 18, 13, 14, 11, 18, 52, 163, 32.67811 + 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67812 + 202, 207, 136, 123, 128, 133, 146, 147, 152, 157, 162, 161, 164, 169, 174, 180, 32.67813 + 181, 175, 169, 166, 162, 156, 157, 160, 162, 160, 156, 154, 152, 151, 146, 140, 32.67814 + 138, 139, 140, 141, 139, 134, 129, 127, 135, 147, 157, 158, 155, 152, 156, 154, 32.67815 + 158, 163, 161, 158, 159, 166, 183, 182, 176, 176, 179, 164, 153, 158, 157, 157, 32.67816 + 160, 162, 157, 149, 145, 147, 136, 135, 132, 131, 134, 136, 129, 115, 104, 100, 32.67817 + 97, 95, 101, 108, 109, 101, 88, 47, 24, 20, 16, 12, 13, 11, 39, 115, 32.67818 + 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67819 + 255, 204, 207, 145, 120, 120, 123, 143, 145, 150, 156, 160, 162, 163, 162, 162, 32.67820 + 171, 176, 173, 170, 167, 160, 155, 167, 172, 177, 178, 177, 171, 167, 162, 151, 32.67821 + 145, 143, 144, 148, 148, 143, 135, 139, 126, 113, 110, 122, 137, 151, 157, 159, 32.67822 + 159, 166, 170, 166, 164, 166, 174, 177, 178, 174, 174, 177, 166, 159, 162, 156, 32.67823 + 151, 155, 155, 154, 144, 141, 140, 124, 129, 133, 126, 129, 132, 131, 117, 95, 32.67824 + 95, 99, 103, 109, 113, 104, 91, 72, 38, 19, 18, 15, 13, 16, 13, 12, 32.67825 + 132, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67826 + 255, 255, 255, 209, 162, 128, 120, 120, 140, 143, 147, 153, 160, 163, 164, 158, 32.67827 + 155, 164, 173, 175, 173, 169, 163, 158, 178, 179, 177, 175, 175, 176, 182, 183, 32.67828 + 176, 168, 163, 162, 164, 160, 153, 146, 150, 142, 137, 136, 142, 149, 150, 145, 32.67829 + 156, 157, 164, 168, 167, 165, 169, 177, 171, 175, 171, 169, 172, 165, 160, 164, 32.67830 + 158, 149, 147, 149, 150, 143, 136, 132, 119, 128, 132, 125, 124, 127, 125, 113, 32.67831 + 93, 91, 96, 101, 109, 110, 100, 86, 56, 30, 17, 17, 15, 15, 21, 18, 32.67832 + 14, 157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67833 + 255, 255, 255, 255, 209, 179, 138, 124, 121, 137, 141, 145, 150, 158, 163, 163, 32.67834 + 153, 151, 161, 172, 173, 174, 169, 164, 161, 170, 175, 178, 179, 177, 178, 178, 32.67835 + 179, 180, 176, 174, 174, 174, 172, 167, 162, 156, 162, 167, 172, 173, 169, 157, 32.67836 + 142, 154, 152, 156, 162, 162, 162, 166, 173, 169, 175, 170, 164, 167, 159, 154, 32.67837 + 158, 160, 150, 145, 147, 149, 142, 133, 128, 125, 130, 132, 128, 123, 119, 114, 32.67838 + 105, 94, 88, 89, 92, 101, 106, 99, 87, 46, 25, 16, 17, 13, 16, 23, 32.67839 + 19, 54, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67840 + 255, 255, 255, 255, 255, 255, 194, 148, 128, 122, 135, 140, 144, 148, 155, 161, 32.67841 + 159, 147, 146, 157, 168, 172, 168, 166, 164, 161, 157, 166, 175, 179, 178, 175, 32.67842 + 169, 166, 174, 174, 174, 173, 172, 171, 171, 170, 175, 171, 163, 155, 155, 166, 32.67843 + 176, 177, 171, 165, 166, 170, 173, 172, 177, 182, 166, 174, 169, 161, 162, 156, 32.67844 + 151, 154, 156, 148, 144, 144, 141, 133, 126, 123, 130, 128, 128, 129, 123, 113, 32.67845 + 106, 100, 92, 86, 87, 89, 100, 107, 101, 89, 42, 25, 19, 18, 14, 16, 32.67846 + 22, 17, 62, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67847 + 255, 255, 255, 255, 255, 255, 255, 240, 160, 136, 127, 135, 141, 144, 146, 152, 32.67848 + 159, 155, 142, 149, 158, 171, 172, 170, 168, 165, 162, 157, 159, 159, 158, 159, 32.67849 + 159, 163, 167, 175, 176, 174, 169, 164, 160, 159, 159, 145, 155, 164, 167, 169, 32.67850 + 175, 175, 168, 171, 164, 162, 165, 169, 168, 172, 175, 165, 172, 168, 159, 160, 32.67851 + 155, 151, 156, 149, 146, 145, 142, 135, 123, 120, 121, 131, 124, 125, 129, 126, 32.67852 + 112, 105, 102, 86, 85, 90, 97, 109, 113, 102, 87, 42, 27, 21, 20, 14, 32.67853 + 15, 20, 15, 98, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 200, 167, 133, 113, 137, 124, 157, 32.67855 + 142, 135, 148, 154, 143, 155, 164, 171, 175, 165, 161, 171, 147, 151, 149, 146, 32.67856 + 147, 148, 140, 133, 143, 148, 149, 146, 144, 146, 156, 162, 148, 154, 161, 167, 32.67857 + 172, 176, 175, 166, 159, 164, 157, 174, 164, 178, 171, 176, 173, 166, 158, 156, 32.67858 + 159, 160, 157, 151, 148, 152, 137, 133, 135, 131, 130, 108, 104, 114, 123, 119, 32.67859 + 113, 107, 105, 98, 83, 82, 89, 98, 110, 112, 96, 75, 34, 27, 19, 18, 32.67860 + 25, 20, 18, 28, 105, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 145, 123, 119, 133, 32.67862 + 137, 144, 138, 136, 145, 153, 155, 153, 164, 179, 175, 164, 165, 157, 158, 152, 32.67863 + 143, 138, 135, 129, 123, 129, 134, 137, 140, 143, 146, 148, 149, 161, 167, 173, 32.67864 + 173, 174, 175, 173, 166, 158, 163, 157, 169, 160, 171, 164, 168, 171, 164, 158, 32.67865 + 154, 153, 152, 148, 144, 143, 145, 132, 127, 124, 115, 124, 112, 119, 121, 122, 32.67866 + 114, 110, 104, 101, 91, 89, 89, 94, 101, 109, 108, 89, 67, 34, 27, 12, 32.67867 + 4, 9, 10, 15, 27, 100, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 163, 131, 104, 32.67869 + 132, 119, 143, 139, 124, 133, 152, 155, 153, 160, 176, 174, 166, 168, 166, 163, 32.67870 + 155, 144, 134, 128, 124, 125, 139, 138, 137, 141, 148, 156, 161, 163, 175, 182, 32.67871 + 185, 180, 174, 171, 169, 163, 158, 161, 157, 165, 158, 164, 159, 159, 160, 157, 32.67872 + 154, 150, 147, 144, 142, 140, 136, 137, 125, 122, 112, 100, 115, 117, 121, 118, 32.67873 + 112, 103, 100, 97, 92, 83, 99, 101, 103, 108, 113, 107, 84, 62, 31, 31, 32.67874 + 20, 9, 15, 15, 12, 15, 85, 202, 255, 255, 255, 255, 255, 255, 255, 255, 32.67875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 127, 32.67876 + 105, 116, 114, 133, 132, 121, 127, 136, 154, 160, 162, 167, 166, 167, 176, 169, 32.67877 + 165, 156, 145, 133, 129, 131, 136, 145, 148, 153, 158, 165, 171, 177, 178, 179, 32.67878 + 186, 186, 177, 165, 160, 159, 157, 158, 159, 156, 159, 157, 159, 155, 156, 149, 32.67879 + 149, 149, 147, 144, 140, 140, 138, 132, 131, 117, 120, 110, 95, 110, 118, 111, 32.67880 + 110, 105, 97, 93, 93, 90, 86, 106, 109, 111, 114, 118, 108, 86, 61, 19, 32.67881 + 20, 12, 4, 15, 17, 12, 9, 71, 255, 255, 255, 255, 255, 255, 255, 255, 32.67882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 32.67883 + 121, 120, 96, 118, 117, 118, 122, 123, 127, 147, 155, 158, 165, 166, 166, 176, 32.67884 + 170, 166, 159, 149, 140, 136, 139, 146, 134, 150, 167, 178, 182, 179, 177, 176, 32.67885 + 177, 182, 180, 169, 157, 153, 153, 151, 152, 151, 151, 150, 153, 150, 152, 149, 32.67886 + 145, 144, 144, 142, 138, 136, 136, 135, 130, 124, 110, 116, 111, 98, 108, 110, 32.67887 + 101, 106, 105, 98, 91, 91, 93, 96, 106, 110, 115, 118, 118, 111, 86, 64, 32.67888 + 30, 25, 10, 3, 16, 25, 25, 27, 89, 255, 255, 255, 255, 255, 255, 255, 32.67889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67890 + 255, 132, 133, 90, 117, 105, 106, 120, 120, 126, 136, 137, 145, 166, 173, 169, 32.67891 + 168, 173, 167, 161, 153, 148, 142, 144, 150, 149, 157, 168, 171, 171, 173, 179, 32.67892 + 185, 173, 175, 171, 161, 152, 150, 151, 147, 143, 140, 146, 139, 148, 140, 146, 32.67893 + 142, 146, 144, 140, 136, 133, 131, 128, 127, 124, 122, 106, 111, 111, 102, 109, 32.67894 + 104, 96, 102, 103, 95, 88, 89, 94, 100, 104, 111, 118, 120, 119, 108, 85, 32.67895 + 62, 38, 31, 20, 16, 23, 21, 17, 26, 132, 255, 255, 255, 255, 255, 255, 32.67896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67897 + 255, 255, 157, 137, 106, 102, 100, 102, 107, 113, 119, 127, 128, 134, 156, 168, 32.67898 + 168, 169, 173, 167, 161, 158, 156, 151, 149, 153, 167, 167, 166, 165, 167, 173, 32.67899 + 182, 190, 171, 171, 165, 155, 151, 151, 150, 145, 140, 135, 144, 132, 145, 132, 32.67900 + 141, 134, 144, 138, 130, 126, 126, 126, 125, 122, 117, 119, 103, 103, 102, 100, 32.67901 + 108, 99, 95, 97, 93, 86, 83, 89, 97, 104, 113, 120, 127, 126, 121, 109, 32.67902 + 83, 59, 33, 24, 15, 13, 14, 11, 26, 56, 172, 255, 255, 255, 255, 255, 32.67903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67904 + 255, 255, 255, 255, 132, 124, 89, 101, 102, 97, 107, 110, 128, 132, 133, 144, 32.67905 + 155, 165, 178, 168, 160, 155, 158, 159, 155, 153, 155, 157, 163, 171, 179, 183, 32.67906 + 180, 173, 166, 165, 163, 154, 146, 145, 147, 146, 140, 142, 135, 144, 131, 144, 32.67907 + 130, 138, 132, 139, 131, 123, 120, 123, 126, 126, 124, 113, 121, 106, 97, 95, 32.67908 + 96, 108, 98, 100, 97, 89, 83, 87, 100, 108, 113, 121, 129, 134, 131, 124, 32.67909 + 107, 82, 58, 57, 38, 18, 11, 17, 37, 93, 161, 255, 255, 255, 255, 255, 32.67910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67911 + 255, 255, 255, 255, 255, 145, 137, 117, 105, 115, 106, 108, 115, 131, 130, 129, 32.67912 + 144, 145, 145, 165, 167, 162, 159, 161, 160, 155, 152, 155, 159, 161, 163, 166, 32.67913 + 165, 160, 149, 142, 143, 146, 136, 140, 140, 134, 141, 135, 135, 129, 128, 131, 32.67914 + 129, 125, 126, 133, 122, 122, 113, 113, 126, 129, 124, 127, 117, 121, 104, 107, 32.67915 + 93, 109, 98, 97, 96, 90, 86, 91, 98, 103, 108, 115, 122, 122, 121, 122, 32.67916 + 121, 107, 80, 57, 51, 28, 12, 10, 27, 36, 134, 204, 255, 255, 255, 255, 32.67917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67918 + 255, 255, 255, 255, 255, 255, 255, 139, 121, 107, 101, 106, 100, 108, 125, 128, 32.67919 + 130, 145, 146, 145, 160, 164, 159, 156, 157, 157, 152, 152, 157, 162, 163, 162, 32.67920 + 165, 165, 162, 156, 150, 142, 145, 135, 137, 136, 130, 138, 132, 133, 129, 127, 32.67921 + 129, 128, 124, 126, 131, 132, 131, 121, 118, 128, 127, 118, 120, 122, 124, 110, 32.67922 + 106, 100, 107, 101, 98, 99, 93, 92, 99, 106, 110, 115, 120, 129, 134, 134, 32.67923 + 127, 121, 108, 88, 65, 37, 36, 13, 13, 24, 93, 162, 255, 255, 255, 255, 32.67924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67925 + 255, 255, 255, 255, 255, 255, 255, 255, 151, 130, 116, 97, 111, 101, 107, 123, 32.67926 + 129, 134, 143, 141, 137, 143, 157, 154, 152, 155, 155, 153, 155, 161, 169, 168, 32.67927 + 165, 163, 162, 163, 160, 157, 145, 147, 137, 140, 138, 131, 138, 132, 131, 126, 32.67928 + 124, 124, 123, 121, 122, 126, 119, 122, 116, 118, 129, 129, 122, 125, 120, 114, 32.67929 + 110, 96, 99, 97, 98, 92, 100, 97, 98, 107, 114, 117, 119, 125, 132, 143, 32.67930 + 143, 128, 117, 107, 91, 69, 27, 40, 11, 14, 24, 157, 255, 255, 255, 255, 32.67931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 134, 123, 106, 109, 109, 108, 32.67933 + 120, 128, 133, 139, 137, 135, 137, 150, 150, 153, 157, 158, 155, 156, 161, 174, 32.67934 + 173, 168, 163, 159, 156, 155, 152, 141, 146, 135, 140, 139, 131, 138, 132, 129, 32.67935 + 125, 121, 120, 120, 120, 121, 123, 107, 112, 111, 117, 130, 131, 124, 128, 118, 32.67936 + 107, 107, 89, 98, 89, 96, 89, 97, 99, 103, 112, 119, 120, 122, 127, 128, 32.67937 + 140, 140, 123, 113, 105, 89, 64, 29, 29, 9, 23, 47, 187, 255, 255, 255, 32.67938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 126, 117, 94, 108, 32.67940 + 101, 108, 121, 131, 135, 141, 145, 145, 144, 146, 153, 160, 160, 155, 155, 159, 32.67941 + 167, 167, 165, 160, 155, 149, 145, 143, 137, 143, 133, 139, 138, 130, 137, 130, 32.67942 + 125, 122, 117, 115, 117, 120, 121, 120, 114, 120, 118, 120, 129, 125, 116, 118, 32.67943 + 118, 105, 105, 88, 101, 88, 100, 95, 100, 102, 111, 120, 125, 124, 127, 131, 32.67944 + 129, 135, 134, 122, 117, 110, 92, 66, 38, 17, 25, 60, 104, 255, 255, 255, 32.67945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 139, 129, 93, 32.67947 + 107, 106, 106, 118, 130, 130, 137, 145, 140, 139, 143, 151, 158, 157, 150, 150, 32.67948 + 156, 155, 159, 158, 155, 150, 144, 141, 139, 135, 140, 132, 138, 137, 128, 135, 32.67949 + 127, 122, 119, 114, 110, 114, 120, 122, 119, 122, 128, 125, 124, 130, 123, 113, 32.67950 + 113, 114, 102, 96, 87, 93, 89, 96, 98, 107, 111, 119, 128, 132, 132, 133, 32.67951 + 139, 134, 134, 132, 127, 126, 118, 103, 85, 53, 34, 65, 120, 165, 255, 255, 32.67952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 161, 132, 32.67954 + 111, 103, 111, 106, 118, 130, 126, 132, 138, 129, 136, 139, 145, 149, 147, 142, 32.67955 + 145, 151, 149, 153, 153, 151, 147, 142, 140, 140, 138, 143, 134, 138, 136, 126, 32.67956 + 131, 123, 117, 115, 110, 106, 111, 120, 122, 118, 121, 127, 125, 123, 128, 121, 32.67957 + 111, 113, 107, 98, 85, 90, 86, 91, 91, 99, 115, 118, 125, 134, 136, 136, 32.67958 + 138, 143, 136, 132, 130, 130, 128, 118, 113, 109, 83, 87, 115, 171, 194, 255, 32.67959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 32.67961 + 127, 125, 98, 104, 98, 114, 128, 125, 133, 140, 127, 135, 136, 140, 140, 137, 32.67962 + 135, 140, 148, 149, 151, 151, 146, 142, 139, 139, 140, 140, 145, 136, 139, 136, 32.67963 + 125, 128, 119, 115, 113, 108, 104, 110, 120, 123, 118, 125, 131, 126, 122, 124, 32.67964 + 115, 104, 104, 108, 101, 84, 95, 86, 99, 94, 106, 118, 121, 129, 136, 138, 32.67965 + 136, 139, 144, 134, 127, 127, 129, 125, 113, 116, 125, 113, 138, 148, 195, 214, 32.67966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67968 + 255, 146, 121, 124, 95, 106, 114, 122, 130, 126, 125, 136, 125, 122, 130, 136, 32.67969 + 135, 140, 148, 144, 149, 153, 147, 137, 136, 144, 142, 134, 137, 135, 131, 126, 32.67970 + 130, 134, 131, 122, 114, 114, 108, 102, 109, 122, 125, 119, 130, 123, 116, 116, 32.67971 + 118, 114, 101, 88, 94, 89, 89, 90, 91, 95, 106, 120, 135, 134, 133, 138, 32.67972 + 143, 146, 143, 138, 136, 124, 133, 129, 119, 112, 118, 148, 181, 192, 194, 192, 32.67973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67975 + 255, 255, 224, 131, 122, 112, 105, 102, 116, 128, 123, 124, 138, 125, 121, 128, 32.67976 + 132, 129, 132, 139, 136, 145, 146, 144, 138, 137, 139, 139, 135, 139, 140, 135, 32.67977 + 128, 126, 126, 121, 113, 112, 110, 106, 105, 111, 120, 123, 120, 115, 118, 119, 32.67978 + 115, 106, 98, 93, 90, 79, 78, 82, 88, 92, 100, 115, 128, 135, 136, 140, 32.67979 + 145, 151, 152, 149, 144, 141, 125, 133, 130, 124, 119, 120, 143, 197, 203, 199, 32.67980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67982 + 255, 255, 255, 255, 152, 131, 126, 104, 96, 113, 128, 124, 122, 131, 131, 125, 32.67983 + 131, 131, 127, 131, 137, 133, 138, 136, 137, 138, 136, 132, 134, 136, 137, 139, 32.67984 + 138, 130, 123, 118, 114, 109, 109, 103, 102, 108, 114, 116, 117, 118, 109, 112, 32.67985 + 114, 109, 100, 91, 87, 87, 82, 82, 89, 96, 102, 108, 121, 133, 133, 137, 32.67986 + 144, 149, 150, 149, 145, 143, 140, 124, 130, 127, 126, 123, 118, 132, 208, 210, 32.67987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67989 + 255, 255, 255, 255, 255, 255, 151, 130, 108, 100, 112, 121, 125, 124, 121, 132, 32.67990 + 125, 130, 130, 125, 128, 134, 130, 131, 127, 131, 138, 136, 127, 128, 136, 132, 32.67991 + 135, 138, 132, 123, 116, 116, 114, 105, 98, 100, 111, 116, 112, 111, 116, 114, 32.67992 + 108, 102, 100, 101, 96, 86, 77, 86, 90, 98, 107, 114, 119, 129, 140, 141, 32.67993 + 146, 149, 150, 148, 143, 141, 139, 138, 127, 134, 129, 127, 125, 117, 125, 206, 32.67994 + 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.67996 + 255, 255, 255, 255, 255, 255, 255, 229, 139, 120, 109, 105, 104, 117, 129, 120, 32.67997 + 123, 117, 123, 123, 119, 122, 128, 124, 126, 121, 125, 132, 132, 125, 125, 132, 32.67998 + 129, 132, 134, 132, 123, 115, 118, 119, 102, 96, 100, 111, 114, 108, 106, 110, 32.67999 + 107, 100, 93, 91, 91, 89, 83, 77, 82, 87, 100, 116, 126, 130, 141, 150, 32.68000 + 152, 154, 154, 151, 148, 143, 145, 146, 138, 133, 143, 134, 128, 127, 119, 124, 32.68001 + 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 133, 116, 103, 89, 105, 127, 32.68004 + 123, 120, 115, 120, 123, 118, 120, 125, 120, 123, 118, 119, 124, 128, 124, 123, 32.68005 + 124, 130, 129, 130, 126, 120, 111, 114, 117, 100, 99, 103, 109, 109, 105, 101, 32.68006 + 102, 87, 90, 91, 85, 77, 75, 82, 90, 97, 104, 117, 131, 139, 140, 146, 32.68007 + 152, 155, 153, 150, 148, 145, 145, 145, 145, 135, 134, 144, 130, 125, 125, 116, 32.68008 + 117, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 141, 121, 118, 97, 96, 32.68011 + 116, 118, 119, 115, 121, 125, 120, 120, 123, 115, 120, 118, 116, 117, 123, 127, 32.68012 + 124, 116, 125, 123, 121, 118, 114, 106, 109, 113, 100, 104, 107, 105, 104, 102, 32.68013 + 99, 94, 81, 86, 87, 83, 78, 82, 95, 107, 118, 124, 138, 148, 151, 147, 32.68014 + 148, 153, 155, 152, 147, 146, 145, 144, 140, 137, 137, 135, 141, 127, 125, 130, 32.68015 + 117, 110, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 124, 138, 116, 32.68018 + 94, 103, 109, 116, 112, 118, 122, 115, 113, 113, 106, 120, 120, 116, 112, 121, 32.68019 + 129, 125, 111, 119, 113, 110, 111, 108, 103, 105, 112, 100, 108, 110, 103, 100, 32.68020 + 101, 97, 89, 92, 86, 82, 83, 92, 104, 113, 118, 119, 127, 141, 154, 156, 32.68021 + 153, 152, 157, 162, 158, 152, 152, 151, 147, 139, 133, 151, 145, 146, 132, 133, 32.68022 + 142, 125, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 178, 137, 32.68025 + 133, 129, 113, 75, 104, 111, 116, 117, 113, 109, 112, 116, 117, 115, 114, 113, 32.68026 + 111, 105, 104, 107, 110, 107, 105, 103, 103, 105, 107, 108, 98, 101, 104, 101, 32.68027 + 94, 84, 76, 72, 87, 100, 105, 106, 114, 119, 126, 144, 137, 146, 152, 153, 32.68028 + 151, 150, 157, 162, 158, 170, 169, 154, 148, 151, 148, 137, 149, 151, 149, 144, 32.68029 + 136, 130, 127, 125, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 183, 32.68032 + 160, 142, 139, 130, 104, 113, 115, 117, 116, 113, 110, 104, 102, 118, 118, 121, 32.68033 + 124, 120, 111, 105, 102, 103, 103, 104, 103, 100, 93, 88, 83, 94, 87, 78, 32.68034 + 69, 69, 76, 88, 98, 97, 112, 119, 124, 131, 129, 130, 143, 145, 150, 154, 32.68035 + 158, 160, 162, 164, 165, 155, 162, 161, 153, 151, 155, 152, 144, 144, 146, 147, 32.68036 + 144, 139, 133, 127, 124, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68039 + 255, 185, 141, 137, 131, 124, 104, 101, 97, 101, 108, 113, 114, 115, 128, 120, 32.68040 + 109, 101, 99, 100, 107, 115, 95, 97, 101, 104, 105, 103, 100, 97, 84, 83, 32.68041 + 83, 83, 88, 97, 108, 118, 115, 129, 134, 136, 141, 138, 137, 149, 157, 159, 32.68042 + 161, 165, 170, 172, 169, 167, 163, 160, 156, 155, 154, 152, 146, 143, 144, 145, 32.68043 + 146, 144, 141, 135, 127, 118, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68045 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68046 + 255, 255, 207, 139, 132, 133, 138, 140, 129, 112, 101, 93, 92, 93, 93, 94, 32.68047 + 95, 95, 98, 97, 89, 85, 86, 102, 96, 91, 84, 79, 76, 76, 76, 96, 32.68048 + 105, 116, 125, 129, 130, 130, 129, 133, 141, 142, 140, 146, 147, 150, 163, 168, 32.68049 + 170, 172, 173, 174, 172, 169, 166, 168, 157, 152, 157, 159, 152, 147, 148, 152, 32.68050 + 149, 145, 144, 141, 135, 126, 117, 129, 255, 255, 255, 255, 255, 255, 255, 255, 32.68051 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68053 + 255, 255, 255, 255, 132, 129, 146, 152, 166, 159, 145, 127, 113, 102, 97, 96, 32.68054 + 100, 96, 94, 94, 92, 84, 81, 82, 76, 75, 77, 82, 91, 105, 118, 126, 32.68055 + 132, 136, 139, 140, 139, 139, 142, 143, 143, 151, 151, 150, 157, 159, 163, 175, 32.68056 + 168, 174, 177, 175, 170, 165, 165, 166, 166, 154, 150, 158, 163, 157, 153, 157, 32.68057 + 155, 153, 147, 144, 144, 139, 132, 124, 114, 204, 255, 255, 255, 255, 255, 255, 32.68058 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68060 + 255, 255, 255, 255, 255, 255, 255, 144, 143, 153, 158, 161, 162, 158, 152, 148, 32.68061 + 145, 152, 137, 120, 107, 102, 104, 113, 122, 137, 137, 137, 138, 140, 140, 140, 32.68062 + 141, 153, 155, 154, 151, 147, 145, 147, 148, 150, 161, 166, 169, 177, 176, 172, 32.68063 + 179, 168, 173, 176, 173, 165, 161, 164, 168, 172, 162, 157, 160, 160, 154, 150, 32.68064 + 153, 152, 150, 148, 146, 145, 143, 139, 135, 108, 151, 255, 255, 255, 255, 255, 32.68065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 159, 164, 170, 177, 181, 178, 32.68068 + 171, 163, 160, 157, 157, 158, 153, 141, 134, 131, 145, 148, 153, 158, 162, 163, 32.68069 + 163, 165, 157, 158, 159, 157, 155, 154, 158, 160, 165, 174, 176, 177, 184, 181, 32.68070 + 175, 182, 178, 179, 177, 173, 168, 166, 167, 169, 171, 167, 163, 159, 155, 151, 32.68071 + 149, 150, 148, 149, 151, 150, 148, 143, 141, 140, 115, 130, 202, 255, 255, 255, 32.68072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.68075 + 186, 181, 172, 161, 158, 159, 162, 159, 152, 145, 144, 148, 148, 152, 155, 158, 32.68076 + 161, 162, 163, 163, 160, 153, 147, 148, 158, 171, 181, 180, 186, 180, 176, 182, 32.68077 + 179, 178, 184, 194, 189, 182, 177, 174, 172, 170, 168, 154, 157, 157, 155, 154, 32.68078 + 158, 161, 162, 145, 150, 154, 153, 149, 142, 138, 136, 125, 122, 188, 255, 255, 32.68079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68082 + 255, 255, 255, 255, 255, 228, 168, 163, 158, 153, 148, 144, 146, 146, 149, 152, 32.68083 + 153, 153, 150, 150, 151, 154, 163, 174, 177, 174, 174, 179, 183, 177, 175, 183, 32.68084 + 189, 185, 182, 180, 187, 188, 183, 175, 173, 174, 171, 164, 164, 159, 154, 154, 32.68085 + 158, 160, 158, 155, 149, 152, 152, 149, 149, 150, 150, 144, 123, 125, 136, 212, 32.68086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68090 + 220, 151, 154, 154, 154, 168, 166, 169, 173, 173, 167, 167, 171, 184, 180, 181, 32.68091 + 189, 193, 191, 189, 190, 189, 189, 185, 178, 176, 176, 173, 166, 167, 163, 158, 32.68092 + 157, 160, 160, 156, 152, 159, 160, 157, 150, 148, 149, 147, 141, 123, 108, 122, 32.68093 + 187, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68097 + 255, 255, 255, 255, 255, 255, 255, 225, 165, 169, 170, 170, 176, 183, 188, 186, 32.68098 + 189, 193, 197, 195, 194, 194, 187, 186, 183, 178, 176, 176, 172, 166, 165, 162, 32.68099 + 160, 160, 162, 162, 158, 154, 163, 163, 159, 151, 149, 150, 146, 142, 121, 106, 32.68100 + 125, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68102 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68105 + 255, 255, 255, 235, 191, 190, 189, 184, 181, 179, 176, 174, 172, 167, 163, 159, 32.68106 + 158, 158, 161, 164, 164, 162, 158, 159, 161, 161, 156, 155, 188, 255, 255, 255, 32.68107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68108 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68111 + 255, 255, 255, 255, 255, 255, 225, 224, 227, 226, 225, 226, 226, 225, 221, 218, 32.68112 + 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68118 + 255, 255, 255, 225, 225, 223, 220, 220, 222, 232, 231, 230, 230, 229, 226, 220, 32.68119 + 216, 220, 221, 229, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 32.68125 + 215, 228, 218, 222, 222, 221, 224, 230, 232, 229, 222, 218, 216, 218, 222, 222, 32.68126 + 217, 212, 223, 221, 219, 222, 226, 228, 226, 255, 255, 255, 255, 255, 255, 255, 32.68127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 202, 32.68132 + 227, 237, 213, 222, 192, 146, 109, 99, 110, 123, 129, 159, 148, 137, 135, 144, 32.68133 + 161, 175, 183, 189, 193, 199, 210, 220, 226, 226, 224, 233, 230, 223, 217, 223, 32.68134 + 232, 227, 216, 227, 200, 188, 203, 218, 255, 255, 255, 255, 255, 255, 255, 255, 32.68135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 231, 230, 32.68139 + 232, 233, 211, 170, 129, 100, 61, 37, 40, 57, 68, 69, 61, 55, 50, 50, 32.68140 + 58, 68, 74, 78, 91, 101, 122, 151, 182, 209, 226, 235, 235, 237, 225, 209, 32.68141 + 209, 217, 206, 185, 202, 197, 201, 204, 195, 185, 218, 255, 255, 255, 255, 255, 32.68142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 225, 218, 32.68146 + 219, 226, 188, 136, 100, 58, 50, 41, 41, 50, 56, 47, 34, 46, 47, 50, 32.68147 + 54, 56, 53, 46, 40, 48, 52, 62, 79, 101, 126, 145, 158, 164, 205, 232, 32.68148 + 213, 174, 160, 177, 199, 176, 186, 189, 186, 190, 202, 204, 197, 255, 255, 255, 32.68149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 229, 228, 208, 32.68153 + 238, 207, 143, 87, 86, 45, 43, 42, 38, 36, 40, 43, 37, 28, 34, 33, 32.68154 + 33, 34, 35, 38, 39, 39, 50, 48, 45, 43, 46, 52, 60, 66, 82, 74, 32.68155 + 79, 101, 120, 126, 124, 124, 126, 149, 169, 175, 183, 195, 196, 187, 212, 222, 32.68156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 234, 235, 212, 32.68160 + 253, 205, 177, 56, 75, 37, 47, 32, 32, 28, 24, 28, 36, 42, 43, 32, 32.68161 + 32, 33, 34, 36, 40, 43, 45, 35, 38, 41, 43, 44, 44, 45, 46, 43, 32.68162 + 40, 49, 64, 65, 64, 83, 110, 94, 116, 148, 169, 166, 159, 170, 188, 197, 32.68163 + 197, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68166 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 227, 229, 231, 233, 32.68167 + 226, 229, 195, 50, 100, 32, 45, 38, 33, 35, 34, 30, 30, 34, 34, 31, 32.68168 + 22, 25, 29, 32, 31, 30, 29, 28, 34, 38, 44, 46, 44, 41, 39, 38, 32.68169 + 47, 39, 34, 34, 33, 34, 46, 61, 98, 88, 92, 121, 153, 167, 165, 159, 32.68170 + 179, 186, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 227, 225, 224, 224, 32.68174 + 226, 220, 200, 107, 70, 29, 48, 17, 27, 24, 26, 27, 27, 31, 37, 34, 32.68175 + 30, 23, 23, 22, 21, 20, 24, 29, 32, 30, 33, 34, 34, 32, 32, 34, 32.68176 + 37, 23, 37, 43, 33, 22, 26, 43, 58, 58, 69, 76, 85, 117, 158, 175, 32.68177 + 167, 163, 173, 213, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 230, 207, 229, 217, 32.68181 + 217, 224, 211, 136, 58, 31, 34, 34, 27, 23, 24, 25, 27, 30, 32, 33, 32.68182 + 30, 28, 23, 22, 18, 15, 21, 34, 39, 36, 33, 34, 35, 37, 38, 35, 32.68183 + 30, 26, 29, 30, 29, 24, 21, 25, 36, 45, 44, 52, 63, 79, 104, 131, 32.68184 + 144, 146, 158, 158, 219, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 236, 206, 233, 230, 216, 32.68188 + 220, 214, 130, 59, 40, 26, 27, 30, 26, 23, 25, 31, 28, 25, 25, 25, 32.68189 + 25, 21, 18, 17, 20, 21, 21, 26, 35, 37, 34, 32, 27, 23, 26, 32, 32.68190 + 34, 30, 25, 38, 35, 32, 29, 29, 33, 39, 44, 34, 40, 49, 65, 88, 32.68191 + 110, 117, 115, 143, 146, 203, 220, 221, 255, 255, 255, 255, 255, 255, 255, 255, 32.68192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 234, 234, 233, 238, 222, 32.68195 + 238, 215, 138, 29, 33, 38, 40, 35, 24, 18, 20, 24, 27, 22, 17, 18, 32.68196 + 23, 26, 25, 22, 12, 19, 26, 29, 31, 34, 34, 32, 30, 22, 16, 18, 32.68197 + 27, 33, 31, 27, 37, 33, 28, 27, 29, 32, 33, 33, 27, 29, 34, 47, 32.68198 + 68, 89, 97, 97, 138, 148, 200, 233, 219, 255, 255, 255, 255, 255, 255, 255, 32.68199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68201 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 245, 234, 208, 223, 204, 227, 32.68202 + 212, 137, 37, 30, 52, 44, 42, 30, 17, 17, 28, 35, 35, 24, 19, 16, 32.68203 + 19, 26, 29, 27, 23, 15, 22, 30, 32, 31, 30, 30, 29, 28, 24, 20, 32.68204 + 21, 25, 30, 31, 31, 31, 29, 27, 25, 25, 26, 26, 25, 32, 31, 32, 32.68205 + 37, 49, 64, 77, 84, 109, 126, 180, 233, 214, 232, 255, 255, 255, 255, 255, 32.68206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 234, 221, 221, 233, 222, 202, 32.68209 + 110, 23, 55, 52, 27, 19, 27, 26, 19, 14, 24, 39, 40, 29, 27, 24, 32.68210 + 22, 24, 26, 25, 19, 14, 24, 27, 31, 31, 28, 24, 24, 27, 22, 25, 32.68211 + 28, 27, 24, 24, 27, 30, 28, 32, 34, 31, 27, 24, 27, 30, 35, 37, 32.68212 + 40, 40, 40, 43, 52, 62, 59, 82, 130, 201, 202, 224, 236, 255, 255, 255, 32.68213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 243, 234, 218, 216, 227, 180, 32.68216 + 60, 39, 52, 35, 23, 52, 28, 29, 34, 33, 27, 25, 28, 26, 20, 20, 32.68217 + 20, 22, 24, 25, 23, 19, 16, 32, 29, 28, 28, 24, 20, 21, 24, 17, 32.68218 + 24, 31, 29, 21, 17, 21, 26, 25, 30, 34, 32, 26, 24, 28, 33, 24, 32.68219 + 31, 42, 49, 48, 45, 48, 55, 52, 69, 99, 170, 201, 215, 231, 255, 255, 32.68220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68222 + 255, 255, 255, 255, 255, 255, 255, 255, 244, 240, 226, 200, 223, 251, 191, 93, 32.68223 + 46, 27, 46, 47, 39, 16, 26, 22, 21, 24, 23, 19, 16, 18, 24, 28, 32.68224 + 16, 19, 23, 24, 24, 24, 26, 27, 34, 27, 23, 24, 23, 19, 18, 21, 32.68225 + 16, 22, 26, 25, 20, 17, 20, 24, 22, 24, 26, 26, 24, 24, 27, 30, 32.68226 + 23, 24, 32, 44, 49, 47, 47, 51, 58, 66, 78, 137, 191, 182, 197, 211, 32.68227 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68228 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68229 + 255, 255, 255, 255, 255, 255, 255, 255, 246, 233, 213, 219, 244, 226, 150, 72, 32.68230 + 33, 45, 50, 46, 18, 32, 29, 34, 27, 31, 29, 26, 28, 28, 26, 25, 32.68231 + 26, 27, 30, 31, 28, 22, 21, 24, 28, 33, 25, 20, 23, 24, 20, 18, 32.68232 + 19, 20, 21, 23, 22, 21, 21, 23, 25, 24, 22, 21, 23, 27, 30, 30, 32.68233 + 30, 37, 27, 21, 27, 33, 33, 32, 34, 35, 40, 43, 97, 166, 134, 143, 32.68234 + 160, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68235 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68236 + 255, 255, 255, 255, 255, 255, 255, 255, 247, 236, 221, 222, 230, 241, 100, 16, 32.68237 + 54, 48, 33, 32, 30, 28, 28, 28, 28, 28, 22, 26, 26, 22, 20, 22, 32.68238 + 24, 24, 25, 27, 25, 18, 17, 22, 24, 20, 32, 22, 20, 26, 26, 16, 32.68239 + 12, 16, 24, 25, 22, 17, 17, 22, 25, 24, 23, 22, 22, 22, 24, 26, 32.68240 + 27, 27, 31, 24, 21, 25, 31, 34, 37, 41, 40, 23, 54, 70, 141, 140, 32.68241 + 161, 147, 191, 215, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68243 + 255, 255, 255, 255, 255, 255, 255, 255, 232, 234, 238, 218, 247, 194, 26, 41, 32.68244 + 52, 32, 38, 43, 39, 33, 28, 24, 22, 22, 22, 28, 25, 21, 22, 24, 32.68245 + 24, 23, 22, 23, 25, 24, 18, 18, 22, 23, 20, 29, 21, 20, 25, 23, 32.68246 + 14, 11, 16, 20, 22, 20, 16, 16, 20, 22, 20, 20, 20, 19, 20, 22, 32.68247 + 23, 24, 24, 28, 23, 20, 24, 28, 30, 34, 39, 37, 29, 46, 43, 72, 32.68248 + 68, 94, 99, 146, 195, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68250 + 255, 255, 255, 255, 255, 255, 255, 255, 227, 228, 231, 233, 244, 191, 41, 29, 32.68251 + 31, 39, 29, 42, 37, 34, 29, 25, 23, 24, 26, 28, 34, 23, 16, 22, 32.68252 + 26, 23, 20, 20, 20, 22, 22, 19, 19, 21, 21, 19, 23, 18, 18, 22, 32.68253 + 19, 11, 10, 15, 17, 20, 20, 17, 17, 20, 20, 17, 19, 20, 20, 21, 32.68254 + 21, 22, 23, 23, 23, 20, 20, 23, 24, 24, 30, 37, 37, 36, 38, 32, 32.68255 + 32, 34, 53, 69, 102, 155, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68257 + 255, 255, 255, 255, 255, 255, 255, 255, 222, 221, 226, 229, 227, 218, 52, 42, 32.68258 + 50, 46, 52, 45, 30, 29, 28, 26, 25, 25, 27, 29, 30, 34, 22, 16, 32.68259 + 22, 25, 19, 17, 22, 19, 20, 21, 20, 20, 21, 20, 18, 18, 16, 18, 32.68260 + 20, 17, 11, 11, 15, 17, 21, 22, 20, 20, 22, 21, 17, 20, 21, 23, 32.68261 + 23, 23, 23, 23, 24, 19, 18, 19, 21, 20, 19, 25, 33, 39, 38, 28, 32.68262 + 38, 32, 46, 44, 52, 70, 95, 146, 201, 228, 255, 255, 255, 255, 255, 255, 32.68263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68264 + 255, 255, 255, 255, 255, 255, 255, 255, 227, 220, 224, 234, 232, 221, 121, 32, 32.68265 + 49, 37, 32, 46, 37, 29, 28, 29, 30, 29, 28, 25, 23, 21, 28, 22, 32.68266 + 19, 22, 21, 16, 19, 26, 20, 20, 20, 21, 21, 19, 18, 19, 16, 16, 32.68267 + 17, 18, 17, 13, 13, 15, 16, 21, 22, 20, 20, 22, 21, 16, 18, 21, 32.68268 + 24, 24, 22, 21, 21, 23, 17, 17, 18, 20, 18, 17, 22, 29, 36, 38, 32.68269 + 24, 36, 25, 41, 28, 31, 43, 53, 83, 134, 174, 255, 255, 255, 255, 255, 32.68270 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68271 + 255, 255, 255, 255, 255, 255, 255, 255, 229, 226, 223, 232, 239, 218, 187, 56, 32.68272 + 64, 27, 59, 17, 18, 31, 31, 22, 24, 28, 30, 30, 27, 24, 21, 22, 32.68273 + 24, 23, 21, 19, 21, 26, 30, 24, 21, 20, 22, 21, 18, 17, 20, 17, 32.68274 + 16, 15, 17, 19, 19, 17, 15, 14, 18, 19, 17, 17, 19, 18, 14, 14, 32.68275 + 18, 22, 22, 19, 17, 18, 20, 19, 16, 17, 19, 19, 17, 20, 26, 27, 32.68276 + 38, 30, 35, 15, 28, 24, 32, 35, 50, 62, 78, 123, 226, 255, 255, 255, 32.68277 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68278 + 255, 255, 255, 255, 255, 255, 255, 255, 223, 227, 225, 223, 229, 218, 167, 109, 32.68279 + 41, 37, 83, 23, 25, 35, 38, 15, 20, 22, 25, 28, 29, 28, 26, 24, 32.68280 + 22, 27, 24, 18, 21, 32, 37, 32, 29, 24, 21, 23, 21, 17, 17, 21, 32.68281 + 20, 17, 14, 16, 22, 25, 21, 15, 15, 18, 19, 16, 16, 19, 18, 15, 32.68282 + 13, 18, 23, 22, 18, 15, 16, 19, 21, 17, 15, 19, 21, 20, 20, 23, 32.68283 + 19, 34, 37, 37, 23, 30, 31, 37, 32, 46, 54, 51, 75, 185, 222, 255, 32.68284 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68285 + 255, 255, 255, 255, 255, 255, 255, 255, 248, 224, 228, 225, 220, 218, 190, 113, 32.68286 + 35, 31, 58, 12, 38, 47, 23, 26, 28, 32, 32, 30, 27, 23, 20, 16, 32.68287 + 15, 22, 28, 24, 16, 24, 42, 45, 33, 32, 25, 22, 23, 21, 16, 17, 32.68288 + 22, 23, 17, 14, 16, 24, 29, 24, 15, 18, 21, 21, 17, 17, 21, 21, 32.68289 + 18, 14, 19, 24, 25, 19, 17, 18, 20, 24, 17, 15, 19, 22, 21, 20, 32.68290 + 20, 19, 28, 35, 35, 32, 34, 26, 18, 20, 21, 34, 36, 37, 122, 182, 32.68291 + 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68292 + 255, 255, 255, 255, 255, 255, 255, 255, 245, 229, 218, 231, 229, 223, 233, 114, 32.68293 + 44, 46, 44, 36, 31, 32, 37, 39, 39, 39, 37, 29, 30, 46, 32, 18, 32.68294 + 31, 20, 26, 21, 33, 23, 29, 70, 62, 24, 15, 37, 20, 5, 24, 21, 32.68295 + 12, 34, 15, 28, 20, 14, 31, 33, 23, 26, 19, 18, 16, 18, 22, 23, 32.68296 + 17, 8, 12, 17, 18, 17, 17, 19, 18, 15, 21, 17, 19, 19, 18, 28, 32.68297 + 32, 21, 16, 20, 28, 33, 31, 24, 22, 24, 18, 20, 29, 38, 48, 80, 32.68298 + 141, 196, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 231, 229, 224, 212, 223, 213, 32.68300 + 38, 62, 45, 43, 39, 36, 35, 39, 40, 38, 37, 35, 35, 24, 25, 18, 32.68301 + 18, 31, 20, 33, 25, 15, 55, 31, 79, 41, 31, 29, 29, 40, 28, 28, 32.68302 + 33, 24, 34, 18, 30, 24, 19, 34, 37, 27, 28, 25, 21, 17, 18, 21, 32.68303 + 21, 18, 11, 18, 20, 22, 20, 21, 24, 22, 18, 20, 17, 20, 20, 20, 32.68304 + 30, 33, 21, 15, 17, 24, 31, 31, 28, 28, 32, 20, 22, 30, 36, 38, 32.68305 + 56, 98, 140, 194, 234, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 227, 230, 251, 194, 244, 227, 32.68307 + 84, 64, 30, 52, 37, 37, 37, 35, 35, 34, 32, 30, 23, 36, 20, 17, 32.68308 + 30, 41, 53, 47, 58, 33, 47, 71, 73, 70, 45, 39, 44, 24, 44, 39, 32.68309 + 23, 32, 27, 26, 25, 36, 31, 24, 35, 40, 33, 30, 32, 24, 18, 18, 32.68310 + 20, 20, 18, 14, 19, 20, 19, 18, 21, 25, 23, 17, 18, 17, 22, 21, 32.68311 + 21, 32, 35, 21, 17, 17, 20, 26, 27, 27, 30, 35, 23, 25, 31, 33, 32.68312 + 29, 32, 53, 78, 167, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 225, 226, 226, 219, 230, 225, 32.68314 + 144, 48, 46, 66, 35, 35, 39, 41, 38, 36, 35, 32, 30, 24, 39, 21, 32.68315 + 24, 43, 43, 44, 44, 51, 40, 73, 64, 73, 47, 35, 27, 50, 39, 29, 32.68316 + 34, 28, 22, 27, 19, 33, 38, 33, 26, 32, 43, 41, 35, 31, 23, 16, 32.68317 + 18, 22, 21, 17, 15, 17, 18, 17, 17, 22, 28, 27, 21, 16, 17, 22, 32.68318 + 21, 21, 34, 37, 20, 23, 19, 18, 21, 21, 20, 23, 28, 25, 25, 29, 32.68319 + 30, 26, 24, 34, 47, 125, 215, 232, 255, 255, 255, 255, 255, 255, 255, 255, 32.68320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 224, 223, 220, 203, 238, 32.68321 + 132, 52, 52, 59, 53, 45, 40, 46, 46, 42, 38, 40, 39, 35, 27, 34, 32.68322 + 21, 43, 68, 58, 61, 75, 56, 92, 103, 92, 60, 78, 50, 49, 43, 59, 32.68323 + 14, 34, 54, 24, 31, 27, 33, 35, 31, 23, 27, 47, 55, 46, 26, 18, 32.68324 + 15, 20, 25, 22, 17, 16, 17, 19, 20, 21, 27, 34, 35, 31, 15, 18, 32.68325 + 23, 20, 20, 36, 39, 22, 27, 21, 18, 19, 19, 17, 19, 23, 27, 26, 32.68326 + 26, 26, 25, 26, 34, 42, 64, 173, 222, 231, 255, 255, 255, 255, 255, 255, 32.68327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 225, 224, 220, 217, 232, 32.68328 + 192, 27, 74, 51, 47, 62, 36, 47, 51, 47, 39, 38, 41, 41, 34, 37, 32.68329 + 35, 29, 60, 79, 69, 81, 97, 51, 88, 103, 60, 51, 61, 53, 46, 33, 32.68330 + 58, 15, 41, 72, 36, 36, 45, 29, 29, 28, 22, 25, 53, 68, 56, 25, 32.68331 + 16, 13, 22, 25, 22, 17, 17, 14, 19, 20, 20, 24, 32, 35, 35, 17, 32.68332 + 21, 25, 20, 20, 40, 46, 28, 25, 20, 18, 21, 22, 21, 21, 23, 27, 32.68333 + 26, 26, 24, 24, 28, 35, 41, 33, 128, 201, 232, 255, 255, 255, 255, 255, 32.68334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 224, 225, 224, 220, 216, 32.68335 + 218, 76, 78, 68, 67, 54, 45, 44, 61, 61, 51, 40, 38, 45, 44, 35, 32.68336 + 52, 50, 50, 71, 69, 54, 61, 56, 100, 96, 112, 50, 84, 61, 71, 65, 32.68337 + 46, 42, 38, 48, 59, 47, 41, 70, 31, 31, 33, 28, 28, 56, 71, 52, 32.68338 + 31, 19, 14, 22, 25, 20, 18, 21, 12, 19, 22, 20, 20, 26, 31, 33, 32.68339 + 22, 26, 30, 22, 23, 45, 52, 34, 22, 17, 17, 21, 24, 22, 20, 20, 32.68340 + 24, 26, 28, 27, 26, 29, 34, 37, 33, 83, 155, 220, 228, 255, 255, 255, 32.68341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 223, 226, 226, 221, 32.68342 + 218, 90, 104, 61, 80, 88, 55, 36, 64, 79, 76, 63, 48, 46, 53, 52, 32.68343 + 41, 44, 52, 69, 94, 87, 81, 89, 67, 137, 111, 84, 70, 84, 77, 58, 32.68344 + 77, 74, 31, 65, 54, 37, 53, 48, 93, 37, 36, 41, 34, 29, 54, 66, 32.68345 + 43, 38, 22, 16, 20, 24, 19, 18, 24, 16, 25, 29, 25, 21, 24, 31, 32.68346 + 36, 25, 30, 32, 24, 25, 48, 58, 40, 19, 15, 15, 21, 23, 19, 15, 32.68347 + 14, 18, 24, 31, 31, 31, 32, 34, 34, 31, 42, 103, 189, 213, 215, 255, 32.68348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 218, 223, 237, 32.68349 + 195, 221, 57, 72, 72, 93, 87, 61, 72, 69, 94, 50, 67, 45, 46, 58, 32.68350 + 56, 38, 85, 77, 81, 104, 69, 75, 88, 108, 106, 100, 92, 91, 87, 68, 32.68351 + 70, 96, 61, 61, 78, 69, 42, 56, 81, 72, 41, 48, 38, 32, 25, 68, 32.68352 + 72, 58, 38, 9, 21, 11, 23, 22, 22, 21, 22, 21, 29, 22, 28, 31, 32.68353 + 24, 41, 43, 30, 19, 22, 32, 39, 41, 43, 18, 11, 22, 21, 21, 24, 32.68354 + 17, 27, 18, 25, 25, 30, 40, 29, 20, 32, 31, 49, 68, 116, 185, 216, 32.68355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 225, 226, 218, 32.68356 + 224, 227, 131, 76, 76, 65, 80, 79, 59, 64, 57, 60, 76, 59, 90, 46, 32.68357 + 73, 48, 87, 95, 105, 75, 109, 67, 113, 92, 101, 110, 73, 94, 95, 53, 32.68358 + 79, 105, 53, 65, 66, 68, 75, 47, 57, 52, 42, 56, 66, 36, 29, 28, 32.68359 + 67, 82, 84, 43, 13, 22, 10, 24, 30, 31, 20, 18, 30, 24, 30, 17, 32.68360 + 41, 20, 41, 42, 29, 19, 21, 26, 31, 34, 35, 22, 14, 24, 21, 21, 32.68361 + 25, 17, 27, 28, 30, 37, 29, 20, 37, 46, 27, 36, 56, 68, 91, 151, 32.68362 + 209, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 219, 232, 32.68363 + 222, 216, 181, 60, 71, 64, 52, 67, 73, 60, 58, 48, 40, 82, 74, 67, 32.68364 + 74, 66, 64, 79, 91, 89, 99, 84, 108, 87, 86, 75, 94, 135, 81, 36, 32.68365 + 78, 79, 60, 99, 78, 89, 92, 83, 88, 96, 80, 49, 67, 86, 34, 23, 32.68366 + 28, 60, 93, 109, 57, 15, 20, 10, 27, 38, 40, 22, 20, 31, 33, 31, 32.68367 + 25, 40, 27, 44, 53, 39, 26, 25, 30, 30, 29, 29, 20, 11, 20, 18, 32.68368 + 19, 22, 14, 23, 36, 23, 38, 35, 14, 38, 58, 26, 31, 35, 43, 59, 32.68369 + 101, 167, 206, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 223, 212, 32.68370 + 229, 231, 191, 65, 55, 50, 48, 49, 60, 64, 55, 47, 39, 51, 88, 54, 32.68371 + 86, 57, 61, 56, 79, 97, 105, 100, 116, 105, 82, 68, 103, 120, 98, 62, 32.68372 + 69, 104, 88, 55, 62, 82, 103, 114, 73, 112, 118, 112, 61, 65, 108, 51, 32.68373 + 25, 26, 62, 104, 125, 78, 15, 17, 19, 34, 37, 39, 25, 33, 21, 51, 32.68374 + 26, 56, 30, 39, 50, 65, 48, 33, 31, 36, 35, 28, 24, 17, 9, 19, 32.68375 + 19, 21, 25, 15, 23, 40, 19, 31, 45, 33, 36, 50, 41, 46, 24, 32, 32.68376 + 58, 81, 127, 180, 205, 230, 255, 255, 255, 255, 255, 255, 255, 255, 220, 225, 32.68377 + 219, 224, 218, 122, 12, 64, 45, 48, 57, 55, 48, 40, 34, 37, 71, 64, 32.68378 + 53, 89, 46, 28, 72, 113, 95, 103, 91, 97, 85, 73, 76, 118, 109, 42, 32.68379 + 57, 91, 58, 55, 86, 76, 111, 122, 116, 97, 116, 129, 114, 86, 57, 120, 32.68380 + 78, 34, 25, 70, 108, 127, 99, 15, 16, 30, 40, 30, 35, 30, 40, 17, 32.68381 + 47, 40, 73, 34, 39, 60, 66, 47, 32, 33, 42, 41, 34, 25, 17, 9, 32.68382 + 20, 22, 27, 31, 20, 26, 34, 33, 32, 36, 43, 40, 43, 57, 55, 31, 32.68383 + 34, 49, 57, 92, 152, 188, 200, 255, 255, 255, 255, 255, 255, 255, 255, 222, 32.68384 + 226, 233, 221, 164, 47, 46, 48, 46, 45, 54, 42, 32, 34, 34, 50, 55, 32.68385 + 34, 52, 27, 41, 43, 111, 95, 62, 73, 84, 59, 81, 76, 87, 75, 52, 32.68386 + 46, 41, 40, 47, 67, 111, 152, 137, 131, 107, 147, 125, 145, 115, 122, 54, 32.68387 + 110, 92, 41, 21, 75, 98, 116, 109, 20, 23, 39, 41, 28, 37, 33, 37, 32.68388 + 24, 32, 62, 66, 58, 34, 65, 62, 48, 38, 41, 48, 49, 44, 41, 18, 32.68389 + 7, 17, 18, 23, 29, 19, 25, 19, 44, 36, 17, 27, 39, 42, 51, 49, 32.68390 + 47, 43, 30, 27, 64, 122, 157, 174, 255, 255, 255, 255, 255, 255, 255, 255, 32.68391 + 224, 226, 230, 216, 81, 29, 58, 38, 46, 36, 43, 29, 27, 39, 34, 47, 32.68392 + 24, 43, 22, 35, 33, 116, 87, 57, 44, 75, 56, 86, 50, 106, 72, 54, 32.68393 + 57, 48, 54, 78, 113, 148, 152, 129, 128, 115, 113, 151, 135, 145, 125, 115, 32.68394 + 70, 91, 94, 50, 25, 80, 86, 109, 106, 29, 38, 43, 36, 33, 47, 34, 32.68395 + 32, 35, 36, 69, 68, 82, 46, 64, 59, 56, 54, 53, 49, 46, 46, 52, 32.68396 + 28, 13, 16, 13, 18, 26, 19, 28, 15, 33, 43, 30, 20, 30, 39, 35, 32.68397 + 47, 60, 55, 38, 32, 49, 93, 138, 170, 190, 255, 255, 255, 255, 255, 255, 32.68398 + 244, 227, 223, 214, 209, 18, 52, 22, 45, 53, 35, 38, 25, 28, 39, 20, 32.68399 + 22, 29, 34, 43, 74, 101, 112, 49, 57, 54, 52, 46, 54, 30, 58, 62, 32.68400 + 50, 82, 117, 135, 142, 157, 150, 142, 154, 126, 115, 152, 136, 157, 146, 151, 32.68401 + 89, 96, 84, 99, 63, 38, 91, 84, 115, 100, 35, 48, 41, 30, 38, 58, 32.68402 + 33, 32, 38, 54, 60, 83, 91, 66, 59, 57, 61, 64, 57, 42, 33, 37, 32.68403 + 49, 45, 26, 24, 17, 21, 31, 27, 38, 25, 18, 51, 67, 34, 25, 38, 32.68404 + 28, 32, 41, 43, 44, 37, 22, 50, 114, 160, 173, 255, 255, 255, 255, 255, 32.68405 + 255, 219, 220, 229, 218, 131, 26, 51, 48, 31, 44, 38, 30, 29, 32, 31, 32.68406 + 29, 26, 33, 35, 66, 99, 90, 52, 41, 59, 41, 66, 79, 74, 74, 80, 32.68407 + 94, 113, 135, 147, 158, 159, 156, 156, 155, 153, 101, 135, 155, 149, 148, 156, 32.68408 + 144, 118, 100, 75, 84, 63, 41, 63, 122, 81, 79, 106, 30, 49, 43, 46, 32.68409 + 46, 31, 39, 40, 49, 48, 84, 93, 85, 50, 65, 60, 61, 75, 55, 29, 32.68410 + 39, 44, 45, 53, 24, 18, 21, 28, 46, 28, 28, 30, 27, 51, 50, 34, 32.68411 + 40, 20, 23, 39, 57, 40, 44, 52, 46, 79, 138, 165, 206, 255, 255, 255, 32.68412 + 255, 255, 221, 226, 212, 191, 43, 22, 41, 36, 43, 24, 26, 28, 31, 31, 32.68413 + 30, 32, 33, 22, 74, 102, 74, 41, 45, 64, 74, 106, 127, 132, 127, 127, 32.68414 + 129, 135, 148, 154, 160, 165, 166, 167, 164, 157, 147, 129, 149, 159, 153, 152, 32.68415 + 157, 145, 123, 91, 91, 85, 63, 52, 74, 115, 92, 50, 98, 48, 52, 40, 32.68416 + 51, 44, 46, 45, 45, 52, 51, 84, 93, 90, 63, 53, 59, 62, 71, 48, 32.68417 + 26, 38, 40, 51, 48, 18, 19, 27, 22, 39, 46, 32, 32, 28, 48, 44, 32.68418 + 28, 32, 12, 23, 30, 50, 45, 45, 50, 43, 65, 103, 152, 184, 255, 255, 32.68419 + 255, 255, 255, 223, 218, 218, 132, 1, 40, 41, 35, 41, 25, 31, 34, 30, 32.68420 + 25, 25, 34, 40, 56, 45, 36, 41, 71, 111, 140, 153, 152, 164, 164, 160, 32.68421 + 162, 162, 160, 166, 166, 167, 166, 167, 169, 165, 150, 133, 153, 157, 158, 155, 32.68422 + 156, 156, 146, 131, 97, 116, 86, 58, 45, 76, 107, 105, 50, 107, 75, 58, 32.68423 + 49, 74, 43, 50, 53, 50, 59, 56, 82, 86, 93, 80, 54, 61, 65, 71, 32.68424 + 48, 23, 34, 33, 55, 63, 33, 21, 26, 22, 36, 52, 36, 31, 25, 36, 32.68425 + 33, 29, 38, 27, 27, 20, 42, 51, 49, 50, 44, 50, 68, 117, 171, 255, 32.68426 + 255, 255, 255, 245, 222, 214, 227, 49, 23, 47, 39, 42, 31, 35, 37, 34, 32.68427 + 25, 23, 32, 49, 59, 58, 48, 71, 120, 145, 141, 152, 178, 158, 162, 155, 32.68428 + 154, 162, 164, 160, 163, 168, 166, 162, 161, 163, 160, 146, 131, 159, 155, 154, 32.68429 + 156, 155, 150, 144, 141, 99, 122, 100, 80, 44, 74, 100, 93, 72, 115, 84, 32.68430 + 53, 58, 102, 46, 47, 56, 53, 66, 62, 78, 72, 88, 92, 69, 62, 61, 32.68431 + 75, 53, 22, 30, 31, 50, 85, 67, 27, 22, 30, 37, 44, 54, 39, 27, 32.68432 + 25, 21, 29, 46, 46, 34, 17, 34, 53, 50, 51, 51, 44, 56, 80, 148, 32.68433 + 255, 255, 255, 255, 225, 222, 223, 184, 3, 35, 29, 29, 38, 33, 21, 22, 32.68434 + 21, 21, 32, 52, 70, 76, 86, 118, 152, 161, 155, 153, 156, 161, 161, 160, 32.68435 + 151, 151, 162, 164, 161, 167, 168, 168, 166, 162, 161, 161, 154, 148, 155, 153, 32.68436 + 154, 158, 152, 143, 141, 146, 95, 110, 121, 120, 55, 76, 104, 75, 82, 109, 32.68437 + 83, 52, 56, 110, 56, 60, 59, 55, 70, 68, 72, 55, 76, 94, 75, 49, 32.68438 + 40, 67, 54, 21, 28, 38, 38, 75, 79, 42, 27, 32, 35, 45, 68, 50, 32.68439 + 40, 26, 17, 27, 38, 41, 37, 21, 27, 46, 45, 47, 55, 44, 59, 67, 32.68440 + 143, 202, 255, 255, 255, 226, 223, 214, 98, 25, 35, 35, 32, 26, 44, 71, 32.68441 + 76, 81, 89, 107, 127, 134, 129, 150, 155, 147, 136, 147, 171, 177, 165, 165, 32.68442 + 163, 155, 154, 163, 162, 160, 169, 162, 165, 164, 160, 156, 160, 160, 159, 157, 32.68443 + 156, 158, 160, 152, 141, 140, 146, 113, 111, 130, 125, 55, 68, 117, 96, 95, 32.68444 + 117, 100, 77, 56, 95, 63, 77, 73, 57, 67, 67, 69, 44, 65, 91, 72, 32.68445 + 39, 22, 48, 44, 19, 31, 40, 32, 37, 59, 54, 34, 27, 31, 54, 55, 32.68446 + 42, 47, 34, 25, 35, 33, 32, 37, 33, 24, 33, 35, 39, 53, 43, 57, 32.68447 + 71, 156, 162, 255, 255, 255, 225, 222, 185, 50, 45, 36, 47, 37, 36, 72, 32.68448 + 100, 107, 112, 117, 130, 146, 145, 135, 156, 159, 163, 166, 162, 157, 157, 161, 32.68449 + 158, 161, 157, 159, 162, 157, 154, 164, 158, 161, 161, 157, 156, 159, 159, 158, 32.68450 + 159, 157, 156, 155, 150, 144, 142, 142, 129, 124, 131, 110, 59, 55, 115, 121, 32.68451 + 110, 121, 111, 109, 65, 86, 72, 83, 95, 62, 60, 62, 69, 43, 60, 83, 32.68452 + 80, 55, 30, 37, 27, 15, 30, 31, 40, 14, 42, 49, 27, 26, 31, 45, 32.68453 + 40, 32, 49, 39, 31, 44, 35, 33, 37, 51, 29, 24, 30, 32, 48, 43, 32.68454 + 49, 63, 164, 165, 255, 255, 255, 222, 219, 166, 54, 29, 27, 37, 30, 61, 32.68455 + 106, 122, 131, 134, 133, 142, 156, 159, 150, 157, 160, 161, 160, 165, 171, 171, 32.68456 + 165, 155, 160, 162, 165, 167, 157, 154, 166, 160, 163, 162, 160, 162, 163, 160, 32.68457 + 155, 159, 155, 150, 148, 149, 149, 146, 141, 119, 131, 138, 111, 83, 52, 96, 32.68458 + 117, 108, 108, 100, 120, 76, 88, 83, 85, 114, 68, 53, 57, 70, 45, 58, 32.68459 + 79, 97, 82, 52, 34, 15, 11, 27, 19, 51, 17, 42, 37, 12, 32, 35, 32.68460 + 23, 46, 36, 54, 40, 30, 43, 33, 32, 39, 66, 37, 23, 30, 31, 45, 32.68461 + 42, 42, 44, 160, 178, 255, 255, 255, 217, 216, 126, 53, 40, 26, 43, 40, 32.68462 + 71, 130, 134, 140, 143, 143, 147, 156, 158, 153, 158, 159, 160, 159, 159, 161, 32.68463 + 162, 161, 160, 165, 168, 165, 157, 155, 158, 163, 165, 164, 162, 161, 162, 160, 32.68464 + 157, 154, 157, 164, 166, 161, 156, 156, 151, 143, 141, 133, 130, 112, 79, 67, 32.68465 + 77, 86, 122, 106, 102, 103, 100, 109, 106, 85, 108, 110, 73, 43, 51, 50, 32.68466 + 46, 68, 91, 94, 85, 59, 28, 16, 18, 28, 52, 56, 34, 16, 24, 24, 32.68467 + 23, 38, 50, 44, 34, 29, 35, 46, 51, 50, 44, 54, 59, 42, 19, 25, 32.68468 + 40, 40, 59, 55, 108, 153, 255, 255, 255, 219, 216, 120, 44, 33, 26, 39, 32.68469 + 47, 87, 134, 132, 139, 143, 142, 140, 145, 150, 149, 153, 155, 155, 156, 158, 32.68470 + 163, 169, 172, 170, 166, 162, 166, 171, 171, 166, 160, 162, 163, 163, 164, 165, 32.68471 + 165, 162, 160, 159, 162, 162, 156, 151, 149, 148, 148, 133, 139, 141, 119, 86, 32.68472 + 79, 85, 82, 109, 113, 103, 102, 116, 110, 96, 96, 102, 134, 105, 49, 43, 32.68473 + 59, 62, 69, 57, 73, 89, 84, 62, 37, 26, 27, 43, 49, 33, 20, 24, 32.68474 + 22, 19, 31, 43, 63, 75, 63, 45, 43, 60, 78, 43, 45, 49, 39, 21, 32.68475 + 24, 39, 42, 45, 49, 91, 149, 202, 255, 255, 218, 214, 120, 41, 34, 37, 32.68476 + 39, 61, 113, 141, 134, 141, 146, 143, 139, 141, 146, 149, 141, 143, 146, 150, 32.68477 + 152, 155, 159, 163, 169, 167, 166, 169, 176, 177, 171, 164, 160, 162, 161, 164, 32.68478 + 165, 163, 160, 157, 160, 159, 156, 151, 142, 136, 139, 146, 133, 140, 135, 102, 32.68479 + 72, 80, 97, 96, 92, 110, 98, 100, 127, 110, 86, 107, 99, 121, 111, 88, 32.68480 + 78, 62, 47, 55, 57, 69, 85, 85, 61, 29, 13, 15, 34, 40, 33, 25, 32.68481 + 25, 19, 15, 23, 41, 54, 64, 60, 53, 52, 57, 60, 47, 38, 38, 35, 32.68482 + 22, 22, 34, 40, 35, 44, 72, 141, 161, 255, 255, 216, 209, 116, 43, 40, 32.68483 + 51, 37, 69, 130, 141, 142, 144, 145, 142, 140, 139, 141, 143, 141, 145, 152, 32.68484 + 159, 159, 156, 156, 159, 158, 164, 172, 173, 170, 167, 169, 174, 168, 167, 166, 32.68485 + 166, 164, 160, 154, 149, 159, 155, 151, 144, 131, 120, 120, 128, 123, 123, 116, 32.68486 + 92, 69, 78, 102, 109, 83, 90, 84, 97, 120, 106, 89, 107, 104, 110, 107, 32.68487 + 109, 109, 81, 50, 44, 79, 84, 94, 94, 72, 41, 28, 33, 32, 36, 34, 32.68488 + 30, 25, 17, 15, 22, 35, 33, 33, 38, 50, 56, 48, 34, 55, 36, 31, 32.68489 + 34, 25, 20, 28, 35, 39, 39, 62, 127, 165, 255, 255, 217, 208, 103, 42, 32.68490 + 38, 56, 33, 75, 138, 133, 145, 139, 132, 129, 126, 123, 119, 115, 117, 119, 32.68491 + 125, 132, 133, 132, 137, 145, 152, 159, 167, 170, 166, 166, 168, 172, 172, 172, 32.68492 + 172, 170, 167, 161, 152, 146, 154, 151, 145, 136, 119, 105, 100, 102, 93, 89, 32.68493 + 97, 99, 84, 79, 92, 102, 81, 62, 65, 88, 98, 98, 96, 94, 108, 127, 32.68494 + 123, 106, 105, 110, 90, 63, 41, 53, 75, 89, 78, 52, 31, 27, 41, 36, 32.68495 + 36, 35, 26, 19, 21, 25, 21, 31, 39, 40, 39, 44, 48, 50, 57, 33, 32.68496 + 27, 34, 28, 22, 28, 33, 46, 33, 57, 110, 181, 255, 255, 220, 210, 102, 32.68497 + 51, 34, 57, 37, 89, 147, 131, 131, 118, 106, 102, 99, 92, 83, 79, 76, 32.68498 + 73, 74, 81, 84, 91, 107, 125, 144, 145, 150, 162, 172, 174, 168, 161, 165, 32.68499 + 166, 167, 167, 164, 158, 149, 143, 146, 145, 139, 123, 108, 96, 85, 78, 74, 32.68500 + 59, 67, 80, 72, 66, 76, 89, 76, 50, 54, 73, 77, 87, 93, 80, 92, 32.68501 + 110, 124, 123, 115, 111, 102, 92, 70, 82, 98, 109, 103, 83, 59, 44, 53, 32.68502 + 40, 38, 40, 29, 24, 28, 27, 17, 29, 37, 34, 30, 35, 47, 55, 51, 32.68503 + 29, 25, 32, 30, 27, 32, 33, 46, 27, 50, 101, 191, 255, 255, 222, 210, 32.68504 + 115, 67, 28, 52, 44, 104, 153, 124, 101, 90, 80, 77, 72, 63, 57, 56, 32.68505 + 65, 62, 63, 70, 72, 76, 94, 113, 121, 127, 140, 158, 172, 174, 164, 154, 32.68506 + 161, 162, 164, 167, 165, 158, 149, 142, 136, 139, 130, 110, 98, 96, 84, 67, 32.68507 + 67, 51, 49, 55, 51, 55, 67, 72, 67, 60, 52, 57, 69, 76, 75, 73, 32.68508 + 70, 71, 96, 125, 122, 104, 98, 103, 93, 100, 103, 101, 97, 89, 65, 43, 32.68509 + 64, 42, 40, 45, 34, 29, 33, 27, 22, 22, 20, 19, 26, 36, 41, 40, 32.68510 + 45, 29, 26, 31, 28, 29, 32, 29, 37, 26, 41, 108, 192, 255, 255, 221, 32.68511 + 208, 127, 76, 19, 40, 44, 107, 147, 114, 79, 72, 66, 64, 59, 51, 50, 32.68512 + 55, 61, 59, 64, 72, 70, 65, 74, 89, 94, 114, 141, 161, 167, 163, 157, 32.68513 + 157, 168, 170, 173, 174, 171, 165, 154, 148, 129, 134, 123, 99, 93, 98, 86, 32.68514 + 65, 58, 54, 56, 57, 55, 61, 63, 49, 57, 76, 56, 45, 71, 70, 57, 32.68515 + 72, 58, 65, 79, 88, 98, 118, 118, 95, 82, 96, 103, 104, 109, 110, 84, 32.68516 + 55, 67, 42, 42, 49, 37, 33, 35, 25, 23, 25, 23, 20, 24, 33, 39, 32.68517 + 40, 44, 33, 30, 32, 26, 27, 29, 23, 29, 29, 36, 118, 189, 255, 255, 32.68518 + 215, 207, 149, 62, 27, 27, 49, 123, 85, 72, 51, 50, 46, 43, 47, 56, 32.68519 + 61, 59, 67, 58, 54, 55, 51, 50, 61, 79, 85, 106, 128, 141, 149, 158, 32.68520 + 163, 162, 164, 160, 160, 167, 169, 161, 151, 146, 141, 127, 118, 111, 99, 83, 32.68521 + 79, 86, 79, 71, 68, 72, 68, 55, 55, 66, 69, 70, 68, 63, 67, 72, 32.68522 + 67, 58, 51, 53, 65, 82, 86, 86, 97, 113, 99, 104, 104, 101, 104, 107, 32.68523 + 91, 69, 64, 65, 62, 35, 42, 50, 28, 44, 28, 28, 23, 17, 17, 24, 32.68524 + 27, 26, 39, 27, 28, 24, 25, 32, 22, 28, 25, 21, 37, 102, 228, 255, 32.68525 + 255, 217, 210, 150, 69, 41, 35, 57, 106, 72, 57, 39, 43, 47, 50, 57, 32.68526 + 66, 69, 66, 55, 55, 59, 66, 67, 64, 62, 64, 78, 96, 119, 137, 152, 32.68527 + 160, 157, 149, 152, 152, 154, 161, 164, 164, 155, 148, 134, 121, 110, 110, 108, 32.68528 + 100, 98, 104, 102, 93, 87, 91, 95, 98, 110, 122, 132, 133, 125, 112, 102, 32.68529 + 96, 83, 68, 78, 71, 69, 70, 67, 63, 72, 86, 105, 103, 98, 100, 111, 32.68530 + 119, 101, 78, 59, 57, 60, 46, 52, 61, 38, 39, 31, 30, 25, 19, 18, 32.68531 + 24, 28, 27, 37, 26, 32, 27, 28, 33, 22, 25, 29, 21, 35, 100, 225, 32.68532 + 255, 255, 219, 214, 162, 80, 50, 31, 60, 78, 62, 48, 52, 61, 73, 85, 32.68533 + 97, 105, 104, 99, 97, 103, 107, 111, 114, 112, 100, 88, 93, 100, 114, 129, 32.68534 + 146, 156, 151, 141, 144, 151, 156, 158, 162, 168, 160, 147, 138, 124, 115, 121, 32.68535 + 125, 126, 125, 130, 144, 137, 128, 126, 131, 141, 150, 154, 150, 155, 152, 141, 32.68536 + 135, 131, 121, 107, 95, 84, 76, 76, 72, 69, 74, 83, 94, 97, 97, 99, 32.68537 + 106, 112, 102, 92, 57, 41, 42, 39, 44, 56, 44, 31, 33, 32, 28, 22, 32.68538 + 19, 24, 28, 27, 33, 27, 35, 30, 29, 33, 21, 23, 28, 17, 29, 96, 32.68539 + 216, 255, 255, 220, 215, 186, 95, 50, 23, 68, 68, 79, 73, 85, 96, 111, 32.68540 + 125, 137, 143, 141, 136, 141, 146, 145, 139, 139, 143, 136, 124, 123, 120, 117, 32.68541 + 122, 133, 142, 147, 147, 149, 161, 165, 160, 163, 169, 160, 146, 142, 134, 128, 32.68542 + 132, 134, 136, 137, 142, 138, 137, 134, 136, 146, 160, 163, 161, 169, 174, 173, 32.68543 + 163, 155, 152, 144, 134, 132, 121, 110, 103, 93, 78, 67, 62, 75, 91, 105, 32.68544 + 105, 98, 96, 100, 107, 70, 39, 26, 23, 24, 42, 47, 31, 33, 34, 30, 32.68545 + 23, 21, 25, 28, 29, 32, 29, 39, 29, 27, 32, 21, 24, 28, 18, 29, 32.68546 + 103, 213, 255, 255, 219, 215, 200, 106, 44, 26, 92, 81, 110, 107, 113, 122, 32.68547 + 132, 141, 149, 153, 150, 144, 157, 161, 157, 144, 141, 148, 148, 142, 135, 129, 32.68548 + 121, 116, 118, 127, 141, 152, 154, 166, 168, 162, 160, 166, 158, 145, 137, 135, 32.68549 + 134, 133, 129, 128, 132, 139, 149, 147, 143, 142, 149, 162, 163, 159, 161, 171, 32.68550 + 172, 163, 156, 157, 154, 148, 145, 136, 126, 119, 107, 91, 74, 65, 71, 84, 32.68551 + 101, 108, 104, 100, 105, 116, 94, 61, 37, 31, 27, 38, 52, 39, 33, 36, 32.68552 + 34, 29, 25, 27, 29, 28, 32, 31, 40, 27, 23, 30, 23, 27, 30, 22, 32.68553 + 38, 116, 214, 255, 255, 218, 215, 191, 105, 33, 41, 116, 93, 124, 119, 133, 32.68554 + 138, 143, 145, 148, 149, 144, 138, 137, 140, 135, 124, 118, 117, 114, 111, 122, 32.68555 + 119, 117, 115, 112, 117, 133, 149, 152, 160, 161, 157, 154, 156, 152, 143, 131, 32.68556 + 134, 135, 133, 125, 124, 127, 134, 125, 118, 110, 109, 114, 122, 129, 133, 143, 32.68557 + 156, 162, 159, 155, 158, 159, 156, 143, 135, 125, 118, 112, 106, 101, 98, 80, 32.68558 + 76, 80, 99, 112, 114, 110, 111, 105, 89, 62, 57, 46, 39, 48, 39, 31, 32.68559 + 38, 39, 36, 31, 32, 33, 32, 31, 33, 43, 28, 21, 29, 23, 28, 25, 32.68560 + 20, 38, 119, 255, 255, 255, 218, 216, 180, 105, 28, 57, 129, 98, 123, 121, 32.68561 + 138, 141, 142, 141, 140, 138, 131, 124, 139, 135, 131, 132, 134, 132, 131, 130, 32.68562 + 114, 112, 111, 112, 110, 115, 131, 148, 153, 154, 154, 151, 148, 145, 141, 141, 32.68563 + 128, 132, 133, 130, 124, 121, 121, 122, 106, 98, 96, 102, 108, 112, 121, 133, 32.68564 + 135, 152, 163, 158, 152, 151, 149, 143, 158, 149, 137, 124, 115, 110, 107, 104, 32.68565 + 98, 80, 75, 94, 114, 117, 112, 109, 105, 111, 84, 77, 62, 34, 35, 36, 32.68566 + 32, 41, 46, 44, 39, 39, 39, 37, 27, 34, 46, 30, 21, 29, 22, 25, 32.68567 + 22, 20, 38, 118, 255, 255, 255, 219, 217, 182, 115, 32, 70, 136, 100, 124, 32.68568 + 127, 129, 130, 131, 129, 127, 124, 116, 108, 87, 77, 75, 91, 109, 119, 124, 32.68569 + 131, 122, 114, 109, 109, 110, 117, 133, 153, 156, 153, 150, 150, 144, 137, 132, 32.68570 + 136, 124, 126, 124, 122, 118, 116, 110, 105, 95, 83, 77, 78, 67, 48, 42, 32.68571 + 49, 71, 96, 118, 127, 131, 137, 139, 136, 140, 138, 133, 125, 121, 122, 122, 32.68572 + 121, 114, 96, 89, 103, 113, 113, 112, 118, 105, 123, 96, 85, 69, 30, 30, 32.68573 + 39, 32, 42, 50, 49, 45, 44, 43, 41, 24, 34, 48, 33, 23, 30, 21, 32.68574 + 22, 28, 26, 42, 167, 255, 255, 255, 218, 215, 181, 96, 37, 108, 130, 118, 32.68575 + 129, 129, 109, 120, 92, 123, 88, 42, 46, 44, 20, 30, 224, 108, 53, 138, 32.68576 + 112, 113, 111, 123, 137, 110, 109, 105, 134, 145, 154, 154, 152, 148, 140, 133, 32.68577 + 127, 125, 128, 125, 123, 123, 122, 121, 113, 109, 96, 46, 89, 115, 121, 58, 32.68578 + 65, 55, 62, 46, 20, 34, 46, 85, 106, 128, 111, 104, 111, 126, 127, 115, 32.68579 + 115, 124, 135, 122, 105, 96, 98, 107, 117, 120, 121, 108, 119, 102, 62, 75, 32.68580 + 35, 44, 28, 30, 38, 54, 62, 60, 51, 46, 38, 37, 34, 38, 43, 32, 32.68581 + 24, 33, 39, 21, 115, 255, 255, 255, 255, 218, 215, 187, 105, 43, 121, 130, 32.68582 + 119, 118, 118, 107, 107, 108, 74, 45, 70, 35, 34, 80, 86, 187, 22, 85, 32.68583 + 165, 201, 145, 120, 123, 122, 123, 116, 122, 137, 156, 156, 153, 151, 146, 140, 32.68584 + 135, 132, 130, 121, 118, 118, 126, 135, 136, 125, 114, 98, 89, 138, 133, 118, 32.68585 + 66, 65, 36, 48, 42, 45, 78, 67, 59, 55, 82, 97, 104, 113, 117, 117, 32.68586 + 116, 121, 128, 134, 126, 115, 110, 109, 112, 117, 118, 127, 114, 125, 110, 75, 32.68587 + 86, 48, 51, 28, 29, 35, 47, 55, 56, 54, 54, 41, 47, 51, 56, 58, 32.68588 + 39, 27, 33, 30, 24, 127, 255, 255, 255, 255, 255, 217, 179, 106, 43, 134, 32.68589 + 135, 132, 122, 125, 113, 94, 89, 43, 41, 106, 60, 49, 57, 59, 20, 75, 32.68590 + 117, 181, 153, 170, 124, 116, 101, 125, 117, 133, 135, 156, 156, 151, 146, 141, 32.68591 + 137, 135, 135, 135, 122, 115, 112, 123, 136, 135, 118, 100, 125, 78, 112, 144, 32.68592 + 143, 69, 56, 50, 45, 42, 61, 125, 137, 113, 55, 31, 56, 75, 92, 97, 32.68593 + 100, 111, 119, 121, 128, 130, 129, 127, 124, 123, 123, 123, 127, 115, 127, 114, 32.68594 + 89, 96, 61, 56, 33, 31, 31, 38, 43, 47, 53, 60, 41, 48, 53, 59, 32.68595 + 59, 41, 29, 36, 36, 35, 255, 255, 255, 255, 255, 255, 219, 177, 109, 44, 32.68596 + 145, 138, 143, 128, 134, 105, 75, 41, 47, 72, 117, 93, 73, 35, 50, 61, 32.68597 + 78, 175, 136, 143, 109, 123, 116, 102, 116, 119, 136, 138, 148, 154, 148, 140, 32.68598 + 134, 132, 132, 133, 134, 125, 117, 111, 117, 127, 127, 113, 99, 114, 89, 103, 32.68599 + 110, 123, 99, 92, 66, 77, 109, 134, 162, 147, 129, 77, 47, 37, 52, 73, 32.68600 + 90, 103, 116, 124, 128, 127, 132, 139, 139, 135, 131, 130, 131, 129, 116, 127, 32.68601 + 118, 102, 104, 76, 64, 37, 32, 30, 31, 33, 36, 45, 56, 44, 45, 43, 32.68602 + 48, 53, 42, 34, 42, 64, 51, 255, 255, 255, 255, 255, 255, 220, 193, 123, 32.68603 + 55, 150, 139, 141, 126, 132, 87, 60, 43, 64, 82, 109, 88, 86, 61, 104, 32.68604 + 96, 117, 116, 153, 144, 125, 127, 126, 123, 108, 125, 139, 151, 143, 155, 148, 32.68605 + 138, 132, 130, 131, 132, 132, 123, 118, 115, 118, 125, 130, 131, 128, 115, 110, 32.68606 + 117, 111, 110, 100, 110, 107, 107, 126, 125, 126, 105, 108, 91, 83, 55, 49, 32.68607 + 57, 80, 98, 105, 112, 123, 132, 139, 146, 144, 138, 133, 134, 135, 132, 121, 32.68608 + 131, 122, 115, 110, 94, 76, 35, 31, 27, 27, 27, 30, 40, 51, 50, 46, 32.68609 + 38, 44, 56, 49, 42, 48, 92, 67, 255, 255, 255, 255, 255, 255, 220, 198, 32.68610 + 127, 61, 148, 143, 140, 132, 137, 94, 81, 108, 94, 83, 116, 79, 105, 105, 32.68611 + 88, 106, 129, 125, 131, 134, 153, 128, 128, 131, 104, 128, 139, 157, 140, 154, 32.68612 + 147, 139, 134, 133, 134, 133, 132, 125, 123, 121, 120, 121, 127, 134, 139, 135, 32.68613 + 110, 110, 127, 132, 110, 114, 137, 125, 114, 99, 117, 115, 122, 109, 113, 102, 32.68614 + 80, 70, 84, 97, 98, 105, 118, 140, 145, 148, 144, 136, 131, 132, 132, 132, 32.68615 + 122, 129, 119, 118, 108, 103, 82, 38, 31, 24, 24, 25, 29, 36, 46, 46, 32.68616 + 43, 38, 47, 60, 54, 47, 52, 104, 86, 255, 255, 255, 255, 255, 255, 217, 32.68617 + 192, 118, 63, 144, 152, 141, 146, 149, 119, 121, 138, 127, 105, 127, 105, 128, 32.68618 + 134, 123, 145, 127, 141, 126, 117, 117, 124, 120, 112, 106, 123, 144, 150, 141, 32.68619 + 149, 144, 138, 135, 137, 137, 135, 132, 129, 129, 126, 123, 120, 120, 124, 126, 32.68620 + 120, 131, 120, 106, 123, 148, 144, 128, 144, 158, 161, 171, 144, 137, 129, 141, 32.68621 + 144, 130, 118, 119, 123, 122, 124, 127, 139, 142, 143, 141, 136, 133, 132, 132, 32.68622 + 131, 121, 127, 115, 116, 102, 108, 88, 53, 40, 28, 23, 24, 26, 31, 36, 32.68623 + 36, 37, 34, 42, 54, 54, 56, 72, 108, 110, 108, 255, 255, 255, 255, 255, 32.68624 + 214, 191, 116, 67, 140, 156, 140, 149, 149, 134, 143, 110, 145, 135, 123, 142, 32.68625 + 140, 146, 140, 128, 117, 136, 117, 105, 131, 124, 115, 96, 114, 122, 152, 147, 32.68626 + 150, 142, 138, 134, 134, 137, 137, 134, 130, 128, 128, 129, 128, 127, 125, 122, 32.68627 + 122, 129, 132, 125, 126, 126, 126, 133, 158, 145, 158, 146, 146, 144, 171, 154, 32.68628 + 135, 134, 137, 137, 132, 130, 131, 125, 116, 132, 134, 137, 138, 137, 137, 136, 32.68629 + 134, 135, 127, 132, 117, 118, 102, 115, 94, 68, 52, 34, 25, 23, 22, 24, 32.68630 + 28, 31, 34, 32, 35, 46, 53, 71, 99, 110, 126, 104, 125, 255, 255, 255, 32.68631 + 255, 219, 170, 118, 64, 149, 143, 158, 133, 146, 142, 143, 140, 138, 136, 135, 32.68632 + 133, 132, 133, 130, 129, 130, 133, 133, 129, 124, 118, 124, 121, 114, 125, 146, 32.68633 + 152, 142, 133, 131, 129, 129, 132, 134, 134, 134, 140, 140, 139, 138, 135, 131, 32.68634 + 128, 125, 132, 132, 136, 138, 142, 143, 144, 144, 138, 144, 151, 156, 157, 155, 32.68635 + 149, 143, 143, 141, 138, 137, 137, 137, 137, 137, 129, 129, 131, 133, 135, 136, 32.68636 + 133, 131, 127, 125, 121, 114, 113, 111, 99, 86, 90, 40, 40, 28, 36, 17, 32.68637 + 18, 23, 26, 45, 17, 18, 44, 67, 111, 126, 123, 141, 154, 139, 140, 255, 32.68638 + 255, 255, 215, 174, 120, 65, 149, 143, 154, 132, 149, 149, 149, 148, 147, 146, 32.68639 + 144, 142, 141, 140, 140, 141, 140, 138, 136, 135, 135, 135, 131, 122, 118, 131, 32.68640 + 148, 150, 141, 137, 134, 130, 129, 129, 131, 131, 131, 135, 139, 140, 139, 136, 32.68641 + 135, 134, 133, 135, 136, 138, 141, 143, 147, 149, 151, 151, 150, 148, 146, 146, 32.68642 + 147, 149, 149, 142, 142, 142, 144, 144, 141, 136, 132, 128, 128, 131, 134, 136, 32.68643 + 135, 132, 129, 128, 126, 120, 114, 111, 109, 98, 87, 88, 56, 54, 22, 22, 32.68644 + 20, 21, 11, 31, 26, 33, 23, 27, 77, 125, 140, 127, 135, 160, 136, 147, 32.68645 + 154, 255, 255, 214, 179, 121, 68, 147, 142, 149, 133, 152, 152, 153, 152, 151, 32.68646 + 151, 150, 149, 148, 146, 148, 150, 147, 141, 138, 140, 144, 144, 130, 118, 121, 32.68647 + 135, 146, 146, 140, 131, 129, 126, 125, 128, 131, 133, 135, 131, 136, 141, 142, 32.68648 + 139, 136, 139, 142, 139, 139, 140, 142, 144, 148, 151, 154, 165, 161, 155, 151, 32.68649 + 149, 150, 153, 154, 148, 146, 145, 146, 145, 143, 139, 136, 129, 130, 132, 135, 32.68650 + 136, 134, 130, 127, 128, 126, 118, 112, 108, 106, 98, 91, 87, 63, 59, 26, 32.68651 + 17, 18, 21, 17, 21, 5, 49, 43, 38, 103, 131, 128, 129, 126, 163, 138, 32.68652 + 153, 143, 255, 255, 222, 183, 124, 74, 145, 142, 145, 136, 156, 151, 151, 151, 32.68653 + 150, 150, 150, 150, 149, 147, 148, 148, 146, 142, 141, 143, 144, 137, 121, 114, 32.68654 + 126, 140, 144, 142, 143, 130, 127, 122, 121, 123, 127, 129, 131, 129, 137, 144, 32.68655 + 144, 139, 138, 141, 148, 144, 143, 140, 141, 142, 145, 148, 151, 163, 162, 160, 32.68656 + 161, 159, 155, 152, 154, 155, 149, 143, 140, 141, 143, 146, 147, 137, 135, 134, 32.68657 + 133, 133, 131, 128, 126, 128, 123, 115, 110, 107, 103, 97, 92, 87, 54, 53, 32.68658 + 41, 24, 14, 18, 36, 35, 36, 74, 75, 80, 124, 133, 111, 121, 114, 154, 32.68659 + 148, 150, 144, 164, 255, 255, 190, 136, 88, 145, 145, 147, 144, 159, 150, 150, 32.68660 + 149, 150, 149, 149, 149, 149, 147, 144, 142, 142, 144, 146, 144, 141, 127, 118, 32.68661 + 118, 134, 144, 142, 139, 143, 135, 130, 121, 117, 116, 117, 119, 120, 129, 137, 32.68662 + 144, 144, 139, 138, 141, 147, 149, 148, 145, 144, 144, 146, 148, 150, 151, 150, 32.68663 + 153, 159, 158, 151, 147, 148, 152, 148, 143, 141, 143, 147, 151, 152, 147, 142, 32.68664 + 137, 132, 130, 128, 126, 125, 126, 121, 114, 108, 105, 100, 95, 94, 82, 57, 32.68665 + 57, 47, 23, 19, 20, 40, 54, 98, 109, 117, 128, 132, 138, 119, 113, 107, 32.68666 + 139, 157, 138, 151, 150, 255, 255, 201, 154, 109, 148, 148, 152, 152, 158, 153, 32.68667 + 153, 152, 151, 150, 150, 150, 149, 148, 144, 142, 145, 149, 149, 144, 139, 130, 32.68668 + 125, 129, 142, 148, 144, 139, 139, 128, 123, 116, 112, 113, 119, 123, 125, 129, 32.68669 + 135, 141, 142, 139, 138, 141, 145, 154, 152, 150, 150, 148, 151, 151, 152, 150, 32.68670 + 145, 145, 151, 151, 147, 146, 153, 145, 145, 147, 150, 153, 153, 152, 149, 152, 32.68671 + 146, 140, 134, 130, 128, 126, 125, 123, 118, 112, 109, 104, 98, 94, 95, 75, 32.68672 + 73, 69, 45, 15, 36, 36, 43, 37, 108, 128, 153, 162, 140, 139, 126, 112, 32.68673 + 103, 130, 156, 128, 155, 141, 255, 255, 209, 170, 126, 148, 147, 153, 154, 148, 32.68674 + 155, 154, 154, 153, 152, 150, 149, 148, 147, 148, 149, 150, 149, 145, 139, 136, 32.68675 + 135, 131, 132, 141, 149, 150, 142, 134, 124, 118, 112, 111, 114, 120, 127, 131, 32.68676 + 128, 131, 136, 138, 139, 139, 141, 142, 152, 152, 151, 152, 152, 154, 153, 154, 32.68677 + 152, 146, 145, 153, 154, 149, 150, 158, 148, 149, 151, 155, 157, 156, 153, 150, 32.68678 + 150, 146, 142, 138, 135, 132, 127, 125, 121, 115, 111, 109, 105, 96, 92, 94, 32.68679 + 75, 74, 68, 52, 25, 59, 64, 77, 72, 98, 132, 161, 168, 159, 145, 123, 32.68680 + 112, 96, 129, 143, 128, 154, 255, 255, 255, 212, 178, 134, 146, 143, 150, 151, 32.68681 + 138, 155, 155, 154, 152, 151, 150, 148, 148, 145, 150, 154, 153, 146, 139, 134, 32.68682 + 133, 138, 132, 129, 136, 149, 155, 146, 133, 136, 129, 119, 112, 112, 115, 119, 32.68683 + 121, 126, 128, 132, 136, 139, 141, 142, 142, 146, 147, 149, 151, 153, 154, 155, 32.68684 + 155, 148, 144, 147, 158, 158, 150, 148, 154, 157, 155, 152, 152, 154, 155, 156, 32.68685 + 156, 145, 144, 144, 143, 140, 135, 129, 125, 119, 114, 110, 111, 106, 96, 91, 32.68686 + 93, 79, 62, 57, 63, 44, 74, 88, 121, 168, 119, 138, 149, 153, 177, 157, 32.68687 + 127, 111, 88, 131, 131, 131, 186, 255, 255, 255, 208, 186, 135, 139, 137, 153, 32.68688 + 155, 148, 148, 150, 150, 150, 149, 148, 149, 151, 140, 144, 145, 141, 139, 139, 32.68689 + 136, 131, 130, 129, 132, 140, 145, 143, 136, 131, 123, 121, 119, 117, 118, 118, 32.68690 + 117, 117, 119, 123, 133, 128, 149, 137, 141, 144, 150, 153, 152, 148, 152, 162, 32.68691 + 160, 150, 154, 158, 154, 151, 159, 170, 166, 154, 164, 162, 163, 165, 162, 154, 32.68692 + 150, 150, 151, 145, 140, 137, 135, 129, 120, 114, 120, 115, 96, 110, 101, 108, 32.68693 + 89, 89, 94, 62, 76, 65, 81, 88, 117, 164, 167, 134, 127, 146, 157, 152, 32.68694 + 146, 137, 101, 98, 132, 121, 143, 255, 255, 255, 255, 222, 197, 142, 143, 138, 32.68695 + 150, 149, 144, 150, 152, 153, 153, 152, 151, 151, 153, 148, 153, 155, 148, 143, 32.68696 + 142, 143, 143, 126, 127, 133, 143, 148, 145, 137, 130, 123, 120, 118, 117, 116, 32.68697 + 113, 109, 106, 106, 112, 123, 123, 150, 142, 146, 147, 150, 152, 154, 154, 157, 32.68698 + 161, 161, 157, 156, 160, 159, 151, 153, 164, 169, 166, 168, 162, 157, 156, 151, 32.68699 + 146, 146, 148, 150, 144, 139, 136, 134, 129, 122, 117, 110, 108, 95, 104, 91, 32.68700 + 95, 80, 83, 92, 76, 102, 96, 109, 108, 126, 157, 172, 143, 133, 146, 153, 32.68701 + 153, 148, 135, 111, 99, 124, 119, 255, 255, 255, 255, 255, 218, 190, 135, 138, 32.68702 + 133, 146, 148, 144, 149, 151, 154, 153, 153, 151, 151, 153, 149, 155, 157, 149, 32.68703 + 141, 140, 142, 144, 122, 126, 135, 145, 150, 148, 138, 129, 117, 115, 115, 117, 32.68704 + 119, 118, 112, 108, 100, 102, 112, 114, 148, 146, 150, 147, 146, 146, 150, 155, 32.68705 + 156, 153, 154, 158, 153, 162, 166, 158, 154, 160, 167, 170, 170, 165, 162, 161, 32.68706 + 158, 153, 153, 155, 149, 144, 138, 134, 132, 128, 122, 119, 107, 106, 99, 104, 32.68707 + 91, 91, 83, 88, 84, 86, 118, 111, 122, 119, 130, 145, 168, 148, 139, 140, 32.68708 + 144, 151, 150, 134, 114, 97, 120, 127, 255, 255, 255, 255, 255, 215, 186, 129, 32.68709 + 133, 129, 141, 145, 143, 146, 148, 151, 152, 151, 151, 150, 152, 148, 153, 152, 32.68710 + 146, 141, 140, 138, 134, 122, 130, 140, 147, 153, 152, 143, 135, 118, 119, 118, 32.68711 + 122, 123, 122, 116, 111, 105, 103, 107, 105, 142, 147, 151, 145, 145, 143, 149, 32.68712 + 157, 156, 149, 149, 158, 150, 162, 170, 167, 162, 160, 161, 160, 153, 152, 155, 32.68713 + 160, 159, 153, 149, 149, 150, 144, 138, 132, 129, 125, 120, 118, 107, 104, 100, 32.68714 + 103, 96, 93, 90, 93, 80, 92, 117, 106, 116, 118, 134, 138, 154, 147, 141, 32.68715 + 133, 130, 144, 149, 134, 104, 93, 126, 255, 255, 255, 255, 255, 255, 224, 192, 32.68716 + 133, 135, 130, 137, 138, 137, 144, 147, 151, 153, 152, 151, 152, 153, 154, 154, 32.68717 + 152, 150, 152, 150, 139, 126, 128, 138, 146, 151, 154, 157, 151, 143, 132, 132, 32.68718 + 130, 129, 126, 122, 119, 116, 115, 110, 105, 98, 137, 147, 154, 147, 152, 150, 32.68719 + 155, 162, 159, 152, 153, 161, 157, 163, 168, 167, 164, 161, 155, 151, 155, 154, 32.68720 + 156, 161, 160, 155, 153, 154, 149, 144, 138, 131, 125, 121, 117, 115, 109, 101, 32.68721 + 97, 94, 95, 88, 86, 86, 82, 99, 116, 107, 121, 126, 147, 143, 149, 148, 32.68722 + 143, 127, 121, 138, 145, 130, 103, 96, 134, 255, 255, 255, 255, 255, 255, 215, 32.68723 + 181, 125, 132, 127, 134, 135, 137, 145, 149, 153, 157, 156, 155, 155, 156, 156, 32.68724 + 154, 151, 152, 155, 153, 138, 120, 128, 140, 148, 150, 153, 157, 153, 143, 135, 32.68725 + 136, 134, 130, 126, 126, 131, 137, 122, 114, 105, 95, 133, 146, 158, 152, 154, 32.68726 + 152, 155, 158, 158, 155, 157, 161, 169, 165, 162, 160, 160, 160, 157, 154, 167, 32.68727 + 160, 155, 153, 151, 149, 153, 158, 144, 141, 137, 130, 124, 118, 114, 113, 114, 32.68728 + 101, 97, 89, 94, 82, 82, 78, 79, 100, 115, 118, 138, 140, 162, 149, 159, 32.68729 + 151, 141, 125, 121, 137, 140, 121, 110, 109, 255, 255, 255, 255, 255, 255, 255, 32.68730 + 201, 168, 115, 126, 125, 132, 134, 138, 145, 148, 153, 157, 157, 156, 155, 156, 32.68731 + 155, 154, 151, 150, 151, 149, 135, 120, 117, 132, 143, 145, 146, 149, 143, 132, 32.68732 + 121, 122, 119, 110, 103, 106, 120, 133, 125, 119, 110, 95, 130, 145, 156, 150, 32.68733 + 152, 153, 153, 152, 157, 163, 164, 162, 171, 166, 162, 161, 162, 162, 160, 160, 32.68734 + 157, 149, 141, 138, 136, 135, 141, 147, 136, 135, 134, 129, 123, 117, 114, 113, 32.68735 + 108, 99, 101, 87, 94, 77, 85, 84, 79, 99, 113, 126, 154, 152, 175, 158, 32.68736 + 169, 148, 130, 121, 128, 144, 139, 112, 114, 119, 255, 255, 255, 255, 255, 255, 32.68737 + 255, 208, 174, 120, 131, 128, 132, 132, 134, 142, 146, 151, 154, 154, 154, 153, 32.68738 + 153, 156, 158, 154, 151, 149, 146, 137, 126, 104, 121, 135, 138, 138, 139, 131, 32.68739 + 118, 110, 110, 100, 84, 69, 68, 83, 98, 128, 123, 114, 97, 130, 141, 151, 32.68740 + 143, 155, 159, 157, 153, 160, 173, 175, 169, 163, 164, 166, 170, 169, 165, 162, 32.68741 + 161, 159, 154, 151, 152, 151, 149, 152, 156, 130, 131, 130, 127, 122, 118, 115, 32.68742 + 113, 96, 92, 100, 85, 91, 73, 87, 90, 85, 100, 110, 129, 161, 159, 187, 32.68743 + 170, 174, 142, 117, 115, 132, 152, 139, 105, 111, 124, 255, 255, 255, 255, 255, 32.68744 + 255, 255, 255, 170, 122, 139, 123, 130, 134, 134, 141, 142, 145, 149, 154, 156, 32.68745 + 156, 154, 158, 155, 151, 151, 150, 146, 138, 130, 126, 115, 116, 122, 118, 120, 32.68746 + 124, 122, 91, 104, 109, 89, 58, 47, 63, 86, 121, 122, 105, 103, 131, 146, 32.68747 + 144, 151, 162, 163, 163, 165, 166, 166, 164, 161, 163, 166, 170, 168, 163, 159, 32.68748 + 159, 160, 147, 145, 143, 143, 144, 143, 139, 135, 133, 132, 128, 123, 117, 113, 32.68749 + 112, 113, 99, 90, 89, 92, 89, 82, 84, 94, 82, 110, 106, 127, 136, 148, 32.68750 + 119, 121, 129, 112, 137, 146, 133, 131, 120, 113, 128, 255, 255, 255, 255, 255, 32.68751 + 255, 255, 255, 255, 169, 122, 136, 126, 129, 131, 128, 137, 139, 142, 147, 151, 32.68752 + 153, 153, 152, 156, 155, 154, 153, 148, 141, 135, 131, 114, 91, 83, 90, 96, 32.68753 + 102, 100, 88, 96, 107, 115, 111, 102, 100, 112, 126, 119, 117, 110, 117, 137, 32.68754 + 147, 147, 149, 166, 167, 165, 165, 165, 166, 166, 165, 163, 163, 165, 166, 165, 32.68755 + 162, 156, 151, 145, 141, 141, 142, 144, 143, 140, 136, 134, 132, 128, 121, 113, 32.68756 + 107, 104, 103, 99, 91, 86, 90, 88, 81, 81, 87, 79, 105, 102, 112, 116, 32.68757 + 134, 129, 148, 135, 128, 153, 154, 137, 134, 124, 121, 141, 255, 255, 255, 255, 32.68758 + 255, 255, 255, 255, 255, 172, 123, 130, 128, 128, 129, 124, 138, 141, 145, 150, 32.68759 + 153, 155, 155, 155, 153, 154, 153, 149, 139, 132, 129, 128, 113, 90, 82, 89, 32.68760 + 94, 100, 101, 91, 105, 108, 114, 121, 126, 129, 130, 129, 110, 102, 110, 131, 32.68761 + 141, 147, 151, 151, 165, 165, 163, 162, 161, 163, 164, 165, 165, 165, 165, 167, 32.68762 + 169, 165, 155, 147, 143, 140, 138, 139, 142, 142, 140, 137, 133, 130, 126, 120, 32.68763 + 112, 106, 102, 99, 98, 90, 85, 88, 90, 85, 83, 87, 97, 102, 89, 102, 32.68764 + 123, 149, 146, 152, 133, 130, 152, 147, 133, 137, 132, 132, 131, 255, 255, 255, 32.68765 + 255, 255, 255, 255, 255, 255, 181, 127, 122, 128, 128, 130, 125, 138, 142, 146, 32.68766 + 151, 153, 155, 156, 157, 154, 149, 144, 137, 130, 126, 123, 121, 113, 105, 107, 32.68767 + 113, 108, 112, 120, 120, 114, 112, 113, 119, 127, 128, 121, 113, 114, 99, 115, 32.68768 + 140, 138, 139, 146, 144, 156, 160, 160, 160, 159, 159, 159, 160, 165, 164, 164, 32.68769 + 165, 164, 159, 152, 146, 143, 140, 137, 137, 139, 140, 137, 134, 130, 128, 123, 32.68770 + 118, 113, 109, 104, 101, 98, 90, 85, 90, 93, 92, 89, 88, 113, 110, 107, 32.68771 + 125, 148, 163, 155, 147, 132, 126, 134, 126, 126, 142, 138, 139, 255, 255, 255, 32.68772 + 255, 255, 255, 255, 255, 255, 255, 188, 132, 112, 126, 123, 129, 126, 134, 138, 32.68773 + 144, 147, 148, 148, 150, 151, 155, 144, 132, 126, 126, 126, 123, 118, 111, 106, 32.68774 + 113, 120, 116, 115, 121, 120, 117, 117, 119, 122, 128, 129, 126, 121, 132, 114, 32.68775 + 124, 141, 133, 128, 133, 132, 148, 154, 159, 162, 160, 158, 157, 157, 161, 163, 32.68776 + 163, 160, 153, 148, 147, 148, 144, 140, 136, 135, 136, 136, 132, 129, 129, 125, 32.68777 + 119, 114, 111, 107, 100, 98, 100, 94, 89, 91, 94, 91, 88, 84, 118, 128, 32.68778 + 149, 158, 158, 151, 154, 153, 139, 125, 123, 116, 132, 146, 132, 132, 255, 255, 32.68779 + 255, 255, 255, 255, 255, 255, 255, 255, 193, 138, 105, 125, 117, 126, 124, 135, 32.68780 + 139, 145, 146, 146, 147, 147, 149, 152, 138, 125, 122, 127, 131, 125, 119, 122, 32.68781 + 107, 108, 120, 122, 123, 118, 105, 120, 122, 124, 124, 123, 123, 125, 127, 132, 32.68782 + 120, 123, 133, 131, 132, 134, 137, 143, 152, 160, 164, 162, 160, 159, 158, 162, 32.68783 + 164, 164, 159, 152, 148, 149, 152, 144, 140, 135, 134, 134, 133, 130, 127, 130, 32.68784 + 123, 115, 109, 105, 101, 95, 92, 100, 97, 93, 91, 90, 87, 81, 77, 142, 32.68785 + 136, 156, 159, 159, 148, 155, 145, 142, 126, 120, 116, 132, 138, 119, 127, 255, 32.68786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 146, 106, 129, 115, 123, 122, 32.68787 + 138, 142, 147, 149, 146, 145, 147, 149, 136, 128, 122, 123, 127, 128, 124, 117, 32.68788 + 130, 115, 116, 125, 127, 128, 124, 113, 124, 128, 129, 126, 119, 116, 118, 122, 32.68789 + 120, 120, 115, 119, 131, 138, 136, 142, 141, 150, 157, 159, 158, 158, 160, 163, 32.68790 + 161, 161, 161, 158, 154, 151, 149, 149, 142, 139, 134, 132, 132, 133, 130, 128, 32.68791 + 128, 121, 111, 105, 102, 100, 96, 93, 96, 97, 95, 92, 89, 86, 83, 79, 32.68792 + 160, 133, 141, 143, 156, 151, 158, 136, 140, 127, 119, 113, 124, 125, 124, 160, 32.68793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 155, 111, 133, 116, 124, 32.68794 + 122, 134, 139, 144, 145, 141, 140, 141, 144, 120, 119, 121, 124, 126, 124, 120, 32.68795 + 115, 124, 120, 127, 132, 123, 121, 128, 130, 127, 132, 135, 132, 126, 122, 124, 32.68796 + 128, 120, 128, 116, 111, 128, 133, 124, 129, 139, 146, 152, 155, 154, 154, 159, 32.68797 + 164, 153, 151, 149, 150, 150, 148, 141, 136, 140, 136, 132, 130, 132, 134, 132, 32.68798 + 129, 127, 119, 110, 104, 104, 104, 101, 99, 90, 93, 94, 93, 91, 90, 90, 32.68799 + 87, 150, 127, 144, 143, 148, 138, 157, 144, 143, 132, 122, 111, 117, 124, 147, 32.68800 + 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 170, 111, 107, 126, 32.68801 + 115, 121, 137, 135, 139, 146, 145, 137, 131, 133, 130, 135, 135, 128, 122, 124, 32.68802 + 126, 126, 130, 123, 119, 128, 138, 138, 132, 127, 143, 149, 136, 143, 129, 142, 32.68803 + 128, 125, 125, 118, 116, 119, 124, 127, 132, 138, 131, 143, 151, 151, 151, 154, 32.68804 + 157, 158, 156, 151, 150, 152, 148, 142, 141, 147, 142, 133, 124, 125, 132, 136, 32.68805 + 130, 122, 120, 117, 107, 99, 99, 104, 101, 93, 92, 91, 94, 98, 89, 80, 32.68806 + 87, 102, 149, 156, 148, 137, 139, 139, 139, 144, 152, 114, 129, 125, 108, 115, 32.68807 + 187, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 178, 121, 108, 32.68808 + 122, 116, 125, 134, 134, 138, 142, 136, 128, 123, 125, 124, 127, 127, 123, 122, 32.68809 + 127, 131, 131, 131, 126, 126, 133, 138, 137, 135, 136, 143, 149, 147, 151, 146, 32.68810 + 150, 137, 130, 134, 126, 121, 122, 123, 124, 126, 132, 129, 138, 144, 146, 147, 32.68811 + 152, 155, 154, 151, 148, 149, 152, 148, 142, 138, 140, 139, 134, 128, 129, 133, 32.68812 + 131, 124, 117, 122, 117, 107, 99, 98, 101, 97, 90, 97, 92, 90, 89, 82, 32.68813 + 78, 90, 107, 142, 147, 144, 144, 155, 152, 136, 128, 135, 119, 109, 80, 86, 32.68814 + 173, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 187, 130, 32.68815 + 107, 117, 113, 125, 132, 135, 140, 141, 134, 125, 123, 127, 124, 126, 122, 119, 32.68816 + 122, 129, 132, 131, 129, 128, 130, 135, 136, 134, 133, 138, 128, 132, 139, 136, 32.68817 + 143, 138, 134, 124, 135, 129, 125, 127, 127, 127, 128, 131, 125, 131, 135, 138, 32.68818 + 144, 153, 157, 157, 153, 151, 154, 156, 153, 146, 141, 141, 134, 133, 131, 131, 32.68819 + 131, 129, 121, 116, 120, 115, 105, 98, 98, 100, 96, 88, 97, 92, 89, 86, 32.68820 + 79, 74, 84, 99, 122, 144, 153, 152, 151, 144, 139, 145, 136, 108, 77, 20, 32.68821 + 87, 200, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 190, 32.68822 + 135, 106, 113, 110, 117, 125, 132, 138, 139, 131, 126, 127, 133, 132, 131, 127, 32.68823 + 123, 126, 131, 129, 124, 128, 128, 132, 138, 138, 134, 131, 133, 135, 134, 145, 32.68824 + 133, 147, 137, 144, 134, 129, 126, 127, 132, 135, 134, 132, 132, 123, 126, 128, 32.68825 + 132, 142, 154, 160, 160, 155, 154, 154, 154, 153, 147, 142, 140, 129, 129, 130, 32.68826 + 130, 129, 127, 124, 122, 119, 113, 104, 100, 101, 101, 97, 92, 94, 92, 92, 32.68827 + 89, 80, 70, 71, 79, 84, 113, 130, 132, 127, 119, 114, 122, 108, 58, 40, 32.68828 + 11, 151, 191, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 207, 32.68829 + 193, 143, 110, 114, 110, 111, 121, 127, 133, 131, 125, 124, 126, 131, 132, 132, 32.68830 + 129, 127, 129, 134, 132, 127, 138, 134, 136, 145, 148, 143, 135, 131, 141, 142, 32.68831 + 154, 140, 150, 137, 142, 132, 127, 126, 130, 136, 138, 132, 126, 124, 125, 126, 32.68832 + 126, 127, 135, 148, 154, 155, 154, 152, 148, 145, 143, 143, 139, 135, 130, 130, 32.68833 + 128, 127, 125, 123, 123, 124, 116, 109, 102, 102, 104, 104, 100, 97, 94, 94, 32.68834 + 93, 88, 79, 72, 72, 76, 60, 70, 71, 77, 91, 82, 55, 39, 39, 10, 32.68835 + 12, 68, 216, 191, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68836 + 208, 200, 154, 114, 115, 112, 112, 124, 130, 133, 130, 125, 125, 129, 130, 126, 32.68837 + 127, 123, 120, 123, 129, 132, 130, 139, 135, 136, 144, 148, 145, 139, 136, 135, 32.68838 + 141, 151, 145, 145, 135, 130, 120, 130, 130, 131, 135, 133, 124, 116, 113, 129, 32.68839 + 129, 126, 123, 125, 135, 143, 145, 154, 151, 146, 141, 141, 142, 138, 132, 133, 32.68840 + 131, 128, 124, 121, 120, 119, 118, 115, 106, 101, 103, 106, 105, 102, 101, 98, 32.68841 + 95, 89, 82, 77, 76, 80, 87, 73, 67, 45, 31, 35, 32, 17, 11, 12, 32.68842 + 15, 17, 127, 212, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68843 + 255, 207, 207, 163, 114, 110, 112, 113, 125, 131, 132, 128, 127, 130, 132, 131, 32.68844 + 125, 125, 116, 106, 103, 110, 118, 120, 120, 116, 117, 123, 124, 125, 128, 132, 32.68845 + 127, 136, 137, 141, 132, 138, 133, 132, 130, 128, 127, 130, 130, 126, 121, 121, 32.68846 + 130, 132, 127, 121, 119, 129, 139, 144, 151, 151, 146, 141, 142, 143, 137, 127, 32.68847 + 129, 127, 123, 121, 120, 118, 115, 111, 113, 104, 99, 103, 106, 103, 100, 100, 32.68848 + 95, 93, 88, 80, 75, 76, 81, 85, 87, 78, 46, 15, 8, 9, 14, 28, 32.68849 + 26, 26, 57, 166, 197, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68850 + 255, 255, 204, 212, 167, 111, 105, 111, 115, 117, 123, 124, 121, 123, 130, 133, 32.68851 + 129, 133, 126, 111, 93, 83, 87, 97, 102, 92, 91, 92, 94, 94, 96, 107, 32.68852 + 120, 102, 110, 100, 109, 98, 120, 123, 135, 126, 122, 122, 127, 132, 133, 136, 32.68853 + 139, 129, 131, 129, 122, 120, 130, 144, 151, 144, 144, 142, 139, 138, 138, 130, 32.68854 + 119, 122, 120, 119, 121, 122, 120, 114, 109, 114, 103, 98, 102, 105, 100, 96, 32.68855 + 97, 86, 90, 88, 82, 77, 73, 72, 71, 74, 62, 33, 16, 24, 26, 16, 32.68856 + 13, 28, 11, 101, 194, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68857 + 255, 255, 255, 242, 195, 198, 109, 103, 107, 108, 123, 120, 122, 129, 132, 129, 32.68858 + 131, 136, 112, 107, 97, 83, 76, 72, 68, 62, 59, 63, 68, 73, 75, 78, 32.68859 + 80, 84, 79, 82, 83, 87, 93, 101, 111, 119, 130, 126, 124, 126, 125, 123, 32.68860 + 128, 138, 129, 126, 126, 131, 133, 132, 132, 133, 150, 145, 139, 143, 148, 134, 32.68861 + 122, 132, 125, 120, 119, 124, 127, 120, 111, 105, 115, 98, 90, 101, 112, 107, 32.68862 + 97, 91, 92, 90, 83, 75, 73, 76, 76, 72, 85, 45, 23, 23, 21, 18, 32.68863 + 19, 18, 32, 39, 155, 198, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68864 + 255, 255, 255, 255, 255, 198, 202, 121, 112, 116, 118, 125, 121, 124, 129, 129, 32.68865 + 126, 128, 132, 125, 121, 114, 103, 94, 90, 83, 76, 72, 68, 61, 54, 53, 32.68866 + 55, 63, 70, 71, 71, 70, 70, 71, 75, 78, 82, 104, 103, 108, 117, 124, 32.68867 + 126, 131, 138, 136, 134, 135, 140, 139, 137, 136, 139, 150, 146, 138, 140, 141, 32.68868 + 125, 113, 120, 124, 123, 124, 128, 126, 118, 112, 111, 112, 101, 95, 100, 106, 32.68869 + 104, 93, 87, 91, 86, 76, 66, 66, 73, 77, 76, 80, 43, 22, 23, 20, 32.68870 + 18, 19, 16, 24, 58, 166, 197, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68871 + 255, 255, 255, 255, 255, 255, 198, 201, 127, 112, 113, 116, 125, 121, 122, 125, 32.68872 + 126, 123, 123, 125, 127, 129, 127, 118, 110, 104, 95, 85, 81, 80, 77, 71, 32.68873 + 63, 59, 55, 56, 57, 55, 53, 54, 58, 61, 60, 60, 61, 66, 77, 97, 32.68874 + 110, 115, 115, 116, 125, 126, 130, 132, 130, 125, 126, 131, 146, 144, 135, 135, 32.68875 + 136, 121, 110, 117, 121, 123, 126, 128, 123, 115, 111, 113, 102, 101, 98, 97, 32.68876 + 99, 101, 94, 87, 84, 82, 74, 68, 68, 76, 78, 75, 70, 37, 19, 21, 32.68877 + 18, 17, 18, 16, 45, 121, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68878 + 255, 255, 255, 255, 255, 255, 255, 202, 201, 138, 109, 105, 105, 121, 119, 120, 32.68879 + 122, 122, 121, 121, 120, 121, 128, 130, 125, 118, 109, 97, 88, 93, 93, 95, 32.68880 + 91, 84, 76, 70, 67, 62, 58, 56, 59, 63, 66, 63, 59, 68, 59, 50, 32.68881 + 53, 68, 87, 105, 115, 124, 128, 133, 137, 133, 129, 131, 137, 139, 140, 133, 32.68882 + 133, 136, 125, 117, 125, 120, 120, 121, 124, 120, 113, 107, 109, 90, 97, 99, 32.68883 + 94, 94, 100, 96, 88, 77, 79, 77, 77, 81, 82, 75, 68, 55, 28, 16, 32.68884 + 19, 17, 18, 21, 18, 18, 138, 205, 255, 255, 255, 255, 255, 255, 255, 255, 32.68885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 155, 117, 105, 102, 116, 115, 32.68886 + 115, 117, 119, 121, 119, 116, 118, 129, 136, 133, 127, 118, 105, 95, 108, 103, 32.68887 + 97, 90, 84, 84, 87, 91, 87, 83, 78, 77, 79, 78, 71, 66, 75, 71, 32.68888 + 70, 73, 82, 93, 97, 98, 118, 122, 129, 133, 132, 129, 133, 139, 133, 137, 32.68889 + 133, 132, 134, 128, 120, 128, 124, 119, 116, 119, 118, 113, 104, 102, 87, 98, 32.68890 + 100, 95, 92, 96, 93, 86, 77, 79, 79, 79, 82, 83, 75, 65, 42, 21, 32.68891 + 13, 17, 17, 20, 23, 21, 20, 163, 255, 255, 255, 255, 255, 255, 255, 255, 32.68892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 206, 172, 127, 109, 103, 112, 32.68893 + 113, 113, 114, 117, 120, 116, 111, 116, 128, 137, 136, 129, 120, 111, 101, 105, 32.68894 + 104, 102, 99, 95, 92, 92, 93, 98, 96, 92, 92, 92, 91, 87, 84, 81, 32.68895 + 89, 99, 106, 111, 110, 100, 91, 111, 114, 118, 124, 124, 124, 128, 135, 131, 32.68896 + 138, 133, 128, 130, 123, 118, 124, 129, 120, 115, 117, 119, 112, 103, 98, 95, 32.68897 + 100, 102, 97, 92, 88, 83, 80, 81, 80, 74, 71, 76, 81, 77, 68, 33, 32.68898 + 18, 15, 19, 18, 21, 26, 22, 60, 202, 255, 255, 255, 255, 255, 255, 255, 32.68899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 188, 139, 115, 106, 32.68900 + 113, 114, 112, 111, 114, 118, 112, 104, 110, 123, 133, 132, 126, 119, 112, 104, 32.68901 + 97, 101, 107, 109, 107, 101, 95, 92, 100, 100, 98, 97, 96, 96, 96, 95, 32.68902 + 102, 101, 95, 89, 94, 107, 119, 125, 126, 124, 125, 129, 132, 134, 139, 145, 32.68903 + 130, 138, 133, 127, 127, 122, 117, 123, 126, 121, 117, 117, 113, 105, 98, 95, 32.68904 + 102, 100, 100, 101, 95, 85, 78, 78, 79, 78, 72, 71, 78, 85, 80, 72, 32.68905 + 32, 20, 19, 22, 19, 21, 25, 20, 68, 199, 255, 255, 255, 255, 255, 255, 32.68906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 151, 123, 32.68907 + 110, 114, 114, 113, 111, 114, 116, 109, 99, 109, 121, 131, 130, 125, 119, 114, 32.68908 + 109, 100, 100, 100, 99, 98, 100, 104, 106, 110, 108, 106, 101, 95, 91, 90, 32.68909 + 91, 77, 89, 101, 106, 111, 118, 121, 118, 126, 121, 120, 124, 128, 130, 135, 32.68910 + 139, 129, 138, 134, 128, 129, 124, 120, 126, 122, 120, 118, 116, 107, 97, 92, 32.68911 + 95, 103, 98, 97, 102, 98, 85, 77, 80, 73, 74, 75, 80, 89, 93, 84, 32.68912 + 71, 33, 24, 23, 24, 18, 20, 23, 18, 101, 220, 255, 255, 255, 255, 255, 32.68913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 193, 32.68914 + 156, 118, 95, 112, 96, 124, 105, 96, 106, 111, 98, 110, 117, 124, 126, 114, 32.68915 + 108, 118, 95, 99, 100, 98, 100, 104, 98, 86, 90, 90, 92, 87, 84, 86, 32.68916 + 93, 102, 89, 97, 104, 112, 120, 126, 125, 120, 114, 121, 116, 133, 123, 140, 32.68917 + 134, 140, 137, 132, 127, 127, 130, 131, 128, 124, 122, 128, 111, 109, 109, 107, 32.68918 + 104, 83, 77, 89, 96, 94, 86, 82, 78, 77, 68, 70, 73, 81, 90, 92, 32.68919 + 78, 61, 27, 26, 21, 24, 31, 25, 21, 31, 108, 198, 255, 255, 255, 255, 32.68920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68921 + 255, 165, 132, 106, 98, 106, 109, 111, 103, 99, 103, 106, 107, 104, 113, 126, 32.68922 + 122, 111, 114, 108, 111, 109, 104, 102, 102, 97, 90, 85, 86, 87, 90, 91, 32.68923 + 92, 95, 96, 108, 116, 122, 125, 128, 131, 129, 124, 116, 122, 116, 131, 122, 32.68924 + 135, 128, 134, 137, 133, 128, 127, 126, 125, 121, 119, 119, 124, 108, 105, 100, 32.68925 + 93, 99, 90, 94, 99, 97, 92, 85, 82, 76, 70, 72, 74, 77, 81, 88, 32.68926 + 86, 70, 53, 27, 26, 16, 10, 15, 15, 18, 30, 103, 207, 255, 255, 255, 32.68927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68928 + 255, 255, 178, 152, 116, 86, 111, 94, 114, 108, 93, 96, 106, 106, 101, 109, 32.68929 + 123, 121, 115, 117, 119, 120, 117, 109, 103, 101, 101, 98, 101, 96, 93, 95, 32.68930 + 102, 108, 114, 116, 128, 135, 138, 135, 132, 131, 129, 126, 120, 124, 120, 129, 32.68931 + 122, 129, 124, 127, 130, 130, 127, 125, 122, 119, 117, 117, 115, 117, 103, 102, 32.68932 + 90, 80, 93, 96, 99, 97, 89, 82, 77, 76, 69, 62, 81, 81, 81, 84, 32.68933 + 87, 82, 65, 48, 24, 30, 24, 18, 21, 20, 15, 18, 88, 208, 255, 255, 32.68934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68935 + 255, 255, 255, 255, 170, 116, 90, 99, 93, 111, 107, 96, 96, 97, 108, 113, 32.68936 + 115, 118, 115, 116, 128, 122, 122, 118, 110, 104, 104, 108, 110, 109, 109, 111, 32.68937 + 116, 122, 128, 131, 132, 133, 141, 143, 136, 127, 124, 123, 121, 123, 124, 124, 32.68938 + 127, 125, 127, 125, 126, 121, 123, 123, 122, 118, 117, 117, 117, 112, 111, 97, 32.68939 + 100, 90, 75, 89, 97, 90, 89, 84, 76, 72, 72, 69, 65, 84, 85, 85, 32.68940 + 86, 88, 81, 65, 47, 12, 20, 16, 12, 21, 23, 15, 12, 77, 255, 255, 32.68941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68942 + 255, 255, 255, 255, 255, 187, 114, 109, 84, 103, 100, 100, 104, 101, 96, 110, 32.68943 + 116, 117, 122, 119, 119, 129, 123, 121, 116, 111, 104, 105, 110, 117, 97, 108, 32.68944 + 124, 135, 136, 133, 129, 128, 131, 136, 137, 128, 119, 116, 116, 116, 119, 120, 32.68945 + 123, 122, 125, 122, 124, 123, 119, 120, 120, 118, 114, 112, 112, 114, 110, 106, 32.68946 + 92, 98, 93, 80, 90, 92, 83, 88, 86, 79, 72, 72, 74, 75, 79, 82, 32.68947 + 85, 86, 86, 80, 63, 47, 22, 25, 14, 11, 25, 31, 28, 30, 95, 255, 32.68948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68949 + 255, 255, 255, 255, 255, 255, 255, 127, 127, 82, 106, 93, 94, 105, 103, 103, 32.68950 + 109, 109, 113, 128, 132, 124, 121, 126, 120, 114, 110, 106, 105, 108, 114, 107, 32.68951 + 114, 122, 125, 123, 125, 131, 137, 125, 129, 128, 119, 113, 113, 114, 114, 114, 32.68952 + 113, 119, 114, 121, 115, 119, 118, 122, 120, 116, 112, 109, 107, 107, 107, 106, 32.68953 + 104, 88, 93, 93, 84, 91, 86, 78, 84, 84, 76, 69, 70, 75, 77, 76, 32.68954 + 79, 82, 84, 83, 75, 59, 44, 28, 31, 24, 24, 32, 27, 22, 29, 138, 32.68955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68956 + 255, 255, 255, 255, 255, 255, 255, 255, 155, 132, 100, 96, 92, 91, 96, 101, 32.68957 + 104, 111, 108, 108, 124, 132, 126, 123, 125, 116, 110, 109, 108, 105, 105, 109, 32.68958 + 121, 121, 118, 117, 118, 124, 132, 140, 121, 123, 119, 111, 109, 112, 112, 112, 32.68959 + 113, 110, 119, 110, 120, 110, 116, 112, 122, 116, 108, 104, 104, 104, 103, 102, 32.68960 + 99, 103, 87, 87, 86, 84, 91, 82, 78, 80, 76, 69, 66, 72, 80, 81, 32.68961 + 81, 84, 86, 85, 83, 74, 55, 40, 23, 24, 19, 21, 23, 17, 31, 62, 32.68962 + 178, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 119, 83, 93, 91, 86, 32.68964 + 96, 95, 112, 114, 109, 113, 120, 124, 133, 121, 112, 106, 109, 111, 107, 106, 32.68965 + 108, 109, 114, 122, 130, 134, 132, 125, 120, 121, 121, 114, 108, 107, 111, 113, 32.68966 + 111, 116, 112, 121, 109, 122, 108, 116, 110, 117, 109, 101, 98, 101, 104, 104, 32.68967 + 102, 93, 101, 86, 79, 77, 78, 91, 81, 83, 80, 72, 66, 70, 81, 89, 32.68968 + 91, 89, 91, 93, 90, 86, 74, 55, 39, 50, 38, 24, 20, 26, 43, 98, 32.68969 + 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 142, 132, 111, 94, 103, 32.68971 + 92, 92, 95, 109, 106, 101, 112, 110, 107, 124, 124, 119, 116, 118, 116, 111, 32.68972 + 110, 111, 111, 111, 113, 118, 121, 118, 112, 106, 112, 117, 109, 115, 115, 109, 32.68973 + 119, 112, 112, 108, 107, 110, 108, 104, 106, 113, 102, 102, 93, 93, 106, 109, 32.68974 + 104, 106, 91, 94, 78, 83, 71, 88, 80, 78, 79, 73, 69, 74, 80, 82, 32.68975 + 86, 88, 90, 86, 85, 85, 85, 75, 56, 40, 44, 29, 19, 20, 34, 41, 32.68976 + 137, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 113, 96, 32.68978 + 89, 92, 83, 84, 99, 100, 102, 113, 111, 108, 121, 122, 117, 114, 115, 115, 32.68979 + 113, 113, 115, 114, 113, 114, 119, 123, 125, 123, 121, 117, 124, 114, 119, 118, 32.68980 + 112, 120, 114, 112, 108, 106, 108, 107, 103, 106, 111, 112, 111, 101, 98, 108, 32.68981 + 107, 99, 99, 95, 94, 83, 80, 75, 86, 82, 79, 82, 76, 75, 81, 85, 32.68982 + 88, 90, 94, 97, 100, 98, 92, 85, 78, 64, 51, 30, 38, 21, 23, 31, 32.68983 + 98, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 145, 122, 32.68985 + 105, 85, 97, 85, 85, 99, 103, 106, 111, 106, 100, 106, 118, 115, 113, 116, 32.68986 + 115, 113, 115, 119, 121, 118, 117, 119, 123, 127, 129, 130, 120, 126, 116, 122, 32.68987 + 120, 113, 120, 114, 113, 108, 106, 106, 105, 103, 104, 108, 101, 105, 99, 101, 32.68988 + 112, 112, 105, 104, 94, 86, 82, 71, 77, 76, 79, 73, 81, 78, 79, 86, 32.68989 + 92, 92, 94, 97, 100, 109, 107, 93, 81, 77, 67, 55, 20, 42, 19, 24, 32.68990 + 31, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 32.68992 + 127, 112, 94, 94, 93, 88, 96, 104, 107, 108, 105, 100, 100, 113, 111, 114, 32.68993 + 118, 118, 117, 118, 121, 128, 125, 122, 121, 122, 123, 124, 125, 119, 125, 117, 32.68994 + 122, 121, 113, 120, 114, 111, 107, 103, 102, 102, 102, 103, 105, 89, 94, 94, 32.68995 + 100, 113, 114, 107, 108, 94, 80, 80, 64, 77, 68, 77, 70, 78, 78, 82, 32.68996 + 90, 94, 94, 94, 97, 96, 106, 104, 88, 77, 75, 65, 50, 22, 31, 17, 32.68997 + 33, 54, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.68999 + 255, 134, 115, 106, 82, 94, 84, 86, 97, 105, 107, 110, 112, 110, 107, 109, 32.69000 + 115, 122, 122, 119, 119, 121, 125, 123, 123, 120, 119, 117, 116, 117, 114, 122, 32.69001 + 115, 121, 120, 112, 119, 112, 107, 104, 99, 97, 99, 102, 103, 102, 96, 102, 32.69002 + 100, 103, 112, 108, 99, 98, 96, 82, 82, 67, 80, 69, 78, 73, 79, 79, 32.69003 + 85, 93, 97, 96, 97, 99, 95, 101, 98, 87, 81, 81, 68, 52, 31, 19, 32.69004 + 33, 70, 111, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69006 + 255, 255, 223, 131, 118, 82, 92, 88, 86, 96, 106, 103, 109, 114, 107, 103, 32.69007 + 107, 115, 122, 121, 117, 117, 120, 115, 117, 118, 119, 117, 115, 115, 116, 114, 32.69008 + 122, 114, 120, 119, 110, 117, 109, 104, 101, 96, 92, 96, 102, 104, 101, 104, 32.69009 + 110, 107, 106, 112, 106, 95, 95, 93, 80, 74, 68, 74, 70, 74, 75, 84, 32.69010 + 85, 92, 100, 101, 100, 101, 105, 100, 100, 96, 92, 90, 89, 79, 71, 47, 32.69011 + 36, 73, 130, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69013 + 255, 255, 255, 255, 154, 124, 100, 91, 95, 88, 100, 110, 101, 105, 109, 98, 32.69014 + 105, 106, 112, 116, 113, 110, 113, 119, 113, 115, 117, 118, 115, 115, 117, 119, 32.69015 + 117, 125, 116, 121, 118, 108, 113, 105, 100, 98, 93, 89, 95, 104, 106, 102, 32.69016 + 105, 111, 109, 107, 112, 105, 95, 96, 89, 80, 67, 71, 67, 72, 69, 76, 32.69017 + 89, 91, 97, 103, 104, 102, 104, 109, 102, 98, 94, 95, 92, 89, 89, 95, 32.69018 + 77, 89, 123, 182, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69020 + 255, 255, 255, 255, 255, 226, 120, 117, 87, 89, 82, 98, 110, 103, 108, 113, 32.69021 + 98, 106, 107, 108, 111, 108, 106, 111, 119, 117, 118, 119, 117, 115, 113, 118, 32.69022 + 122, 122, 128, 119, 122, 118, 107, 110, 101, 98, 96, 91, 87, 94, 104, 107, 32.69023 + 102, 109, 115, 110, 106, 108, 99, 88, 87, 92, 84, 66, 77, 67, 77, 71, 32.69024 + 80, 91, 93, 98, 104, 104, 102, 103, 108, 100, 93, 91, 94, 89, 84, 92, 32.69025 + 111, 107, 140, 156, 206, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69027 + 255, 255, 255, 255, 255, 255, 255, 139, 114, 116, 85, 94, 100, 106, 112, 105, 32.69028 + 99, 109, 98, 95, 101, 108, 107, 114, 122, 118, 121, 124, 119, 111, 113, 123, 32.69029 + 123, 117, 120, 120, 116, 111, 113, 117, 112, 104, 97, 98, 92, 86, 92, 105, 32.69030 + 108, 102, 113, 106, 99, 99, 101, 97, 84, 71, 78, 75, 73, 72, 72, 73, 32.69031 + 83, 95, 107, 103, 101, 104, 109, 111, 106, 103, 102, 90, 97, 94, 84, 83, 32.69032 + 95, 134, 175, 194, 202, 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69034 + 255, 255, 255, 255, 255, 255, 255, 255, 222, 126, 116, 105, 95, 90, 102, 112, 32.69035 + 105, 101, 112, 99, 95, 100, 106, 103, 109, 116, 113, 119, 120, 118, 115, 116, 32.69036 + 120, 122, 120, 124, 125, 120, 113, 109, 109, 102, 94, 95, 94, 90, 89, 94, 32.69037 + 103, 106, 103, 98, 101, 102, 98, 89, 81, 76, 74, 65, 64, 66, 70, 73, 32.69038 + 79, 90, 101, 104, 104, 106, 111, 116, 117, 112, 109, 107, 91, 97, 95, 89, 32.69039 + 90, 97, 129, 191, 205, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149, 126, 120, 97, 86, 101, 32.69042 + 113, 108, 104, 110, 108, 102, 105, 108, 104, 109, 115, 111, 116, 114, 115, 119, 32.69043 + 119, 116, 118, 123, 124, 126, 122, 114, 106, 101, 95, 90, 92, 88, 87, 93, 32.69044 + 99, 101, 102, 103, 94, 97, 99, 94, 85, 76, 71, 71, 68, 68, 73, 79, 32.69045 + 81, 86, 94, 105, 103, 106, 110, 114, 115, 114, 110, 108, 107, 90, 94, 92, 32.69046 + 91, 94, 95, 119, 202, 212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 148, 126, 102, 93, 32.69049 + 102, 109, 110, 107, 103, 111, 104, 107, 109, 103, 109, 115, 111, 112, 108, 112, 32.69050 + 121, 120, 114, 115, 123, 119, 122, 122, 116, 106, 99, 94, 95, 88, 83, 85, 32.69051 + 96, 101, 97, 96, 101, 99, 93, 87, 85, 85, 80, 70, 61, 73, 74, 81, 32.69052 + 89, 92, 95, 101, 110, 110, 113, 116, 115, 113, 110, 106, 106, 105, 93, 98, 32.69053 + 94, 92, 96, 94, 112, 200, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 137, 116, 32.69056 + 103, 98, 93, 105, 112, 101, 104, 98, 101, 104, 100, 105, 111, 107, 109, 105, 32.69057 + 109, 119, 119, 114, 114, 121, 118, 121, 121, 116, 106, 98, 96, 100, 85, 81, 32.69058 + 85, 96, 99, 93, 91, 95, 92, 85, 77, 75, 75, 73, 67, 61, 67, 72, 32.69059 + 83, 96, 102, 104, 111, 119, 122, 121, 121, 118, 115, 113, 112, 113, 105, 99, 32.69060 + 107, 100, 93, 98, 96, 111, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 164, 32.69063 + 132, 112, 97, 81, 94, 112, 106, 101, 96, 101, 106, 101, 104, 109, 104, 107, 32.69064 + 105, 106, 113, 117, 116, 115, 116, 119, 118, 117, 113, 103, 94, 92, 98, 83, 32.69065 + 84, 88, 94, 94, 90, 86, 87, 72, 75, 75, 69, 61, 59, 66, 74, 82, 32.69066 + 88, 99, 111, 115, 113, 115, 122, 122, 120, 117, 115, 115, 115, 114, 114, 102, 32.69067 + 101, 108, 96, 90, 96, 93, 104, 216, 255, 255, 255, 255, 255, 255, 255, 255, 32.69068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69070 + 234, 139, 117, 112, 89, 85, 101, 103, 102, 98, 104, 108, 103, 104, 107, 102, 32.69071 + 107, 107, 105, 106, 112, 119, 116, 109, 117, 112, 108, 105, 97, 89, 87, 94, 32.69072 + 84, 90, 92, 90, 89, 87, 84, 79, 65, 70, 71, 67, 62, 66, 79, 91, 32.69073 + 101, 108, 118, 127, 126, 120, 118, 120, 121, 118, 115, 113, 115, 115, 111, 108, 32.69074 + 106, 102, 105, 93, 90, 101, 94, 97, 255, 255, 255, 255, 255, 255, 255, 255, 32.69075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69077 + 255, 255, 139, 120, 132, 105, 82, 88, 92, 98, 93, 101, 105, 99, 100, 101, 32.69078 + 94, 107, 107, 103, 101, 110, 120, 116, 104, 110, 104, 99, 98, 92, 86, 86, 32.69079 + 93, 83, 93, 95, 88, 85, 86, 82, 74, 77, 71, 65, 66, 75, 87, 96, 32.69080 + 101, 99, 105, 117, 128, 129, 124, 122, 124, 128, 124, 120, 119, 121, 118, 110, 32.69081 + 103, 118, 110, 111, 96, 101, 113, 102, 99, 255, 255, 255, 255, 255, 255, 255, 32.69082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69083 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69084 + 255, 255, 255, 240, 170, 126, 118, 113, 95, 55, 83, 90, 98, 102, 100, 101, 32.69085 + 105, 109, 104, 100, 98, 100, 99, 96, 95, 98, 101, 98, 93, 90, 88, 88, 32.69086 + 91, 91, 82, 85, 88, 85, 78, 68, 59, 55, 70, 84, 87, 88, 97, 102, 32.69087 + 109, 123, 111, 116, 122, 122, 120, 119, 124, 129, 125, 137, 136, 121, 115, 121, 32.69088 + 118, 104, 110, 112, 112, 108, 104, 102, 104, 108, 255, 255, 255, 255, 255, 255, 32.69089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69091 + 255, 255, 255, 255, 255, 175, 147, 125, 121, 108, 82, 91, 93, 96, 100, 100, 32.69092 + 99, 97, 94, 103, 101, 104, 108, 107, 99, 93, 92, 91, 91, 92, 90, 85, 32.69093 + 78, 72, 66, 76, 70, 60, 53, 51, 59, 71, 80, 79, 94, 102, 104, 112, 32.69094 + 110, 111, 120, 115, 116, 120, 124, 126, 128, 131, 132, 122, 129, 128, 120, 119, 32.69095 + 123, 120, 110, 103, 105, 107, 108, 107, 105, 104, 105, 183, 255, 255, 255, 255, 32.69096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69098 + 255, 255, 255, 255, 255, 255, 255, 174, 126, 119, 109, 100, 80, 77, 75, 81, 32.69099 + 90, 98, 102, 100, 110, 99, 88, 82, 82, 84, 93, 103, 81, 83, 88, 91, 32.69100 + 90, 86, 82, 79, 65, 65, 63, 65, 69, 78, 89, 97, 95, 109, 114, 115, 32.69101 + 120, 117, 116, 124, 126, 125, 127, 131, 136, 138, 136, 134, 130, 127, 123, 122, 32.69102 + 121, 119, 114, 109, 105, 104, 106, 108, 109, 107, 102, 99, 130, 255, 255, 255, 32.69103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69105 + 255, 255, 255, 255, 255, 255, 255, 255, 198, 124, 114, 111, 114, 114, 102, 86, 32.69106 + 75, 72, 72, 73, 73, 72, 70, 73, 77, 76, 72, 69, 70, 86, 83, 75, 32.69107 + 68, 62, 59, 58, 58, 77, 83, 94, 103, 107, 109, 107, 107, 111, 120, 118, 32.69108 + 117, 123, 124, 125, 136, 137, 136, 138, 139, 140, 138, 136, 133, 135, 124, 119, 32.69109 + 124, 126, 119, 115, 114, 113, 110, 108, 109, 109, 107, 101, 96, 112, 255, 255, 32.69110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 119, 112, 124, 126, 139, 129, 32.69113 + 114, 98, 84, 75, 70, 69, 73, 68, 68, 69, 67, 63, 62, 65, 59, 59, 32.69114 + 60, 65, 74, 86, 97, 105, 111, 113, 116, 117, 116, 117, 117, 119, 119, 127, 32.69115 + 126, 125, 132, 135, 137, 146, 137, 140, 143, 141, 136, 132, 132, 133, 133, 121, 32.69116 + 117, 125, 130, 124, 120, 123, 119, 114, 110, 109, 110, 109, 105, 102, 95, 195, 32.69117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69119 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 117, 123, 32.69120 + 124, 128, 127, 124, 119, 114, 112, 121, 105, 90, 79, 75, 79, 90, 103, 118, 32.69121 + 118, 118, 119, 118, 118, 119, 118, 130, 129, 127, 124, 120, 118, 119, 120, 123, 32.69122 + 134, 137, 140, 148, 147, 143, 149, 135, 139, 142, 139, 132, 128, 131, 135, 139, 32.69123 + 129, 124, 127, 127, 121, 117, 119, 116, 114, 111, 111, 111, 113, 113, 113, 90, 32.69124 + 135, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69126 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69127 + 129, 130, 133, 138, 143, 140, 132, 125, 123, 121, 123, 126, 123, 115, 109, 109, 32.69128 + 122, 127, 132, 137, 139, 140, 140, 139, 130, 131, 131, 129, 127, 126, 128, 130, 32.69129 + 135, 145, 145, 146, 153, 151, 145, 149, 145, 146, 144, 140, 135, 133, 134, 136, 32.69130 + 138, 134, 130, 126, 122, 118, 116, 115, 112, 113, 114, 115, 114, 113, 113, 116, 32.69131 + 94, 113, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69132 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69134 + 255, 255, 255, 255, 255, 216, 144, 139, 133, 122, 121, 123, 128, 127, 122, 119, 32.69135 + 119, 123, 125, 126, 129, 132, 133, 134, 136, 135, 130, 122, 117, 118, 126, 140, 32.69136 + 150, 149, 153, 147, 143, 147, 146, 144, 151, 161, 156, 149, 144, 141, 139, 137, 32.69137 + 135, 121, 124, 124, 122, 121, 125, 128, 129, 110, 115, 119, 120, 116, 111, 111, 32.69138 + 112, 103, 105, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 133, 129, 127, 123, 32.69142 + 121, 118, 120, 121, 122, 125, 126, 124, 121, 118, 120, 122, 131, 142, 145, 140, 32.69143 + 140, 145, 149, 142, 140, 148, 153, 151, 146, 146, 154, 155, 150, 142, 140, 141, 32.69144 + 138, 131, 131, 126, 121, 121, 125, 127, 125, 122, 116, 119, 119, 116, 116, 119, 32.69145 + 121, 118, 99, 107, 119, 204, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69149 + 255, 255, 255, 255, 255, 255, 211, 122, 122, 121, 121, 136, 134, 137, 142, 139, 32.69150 + 133, 133, 137, 149, 145, 145, 153, 157, 155, 153, 154, 154, 156, 152, 145, 143, 32.69151 + 143, 140, 133, 134, 130, 125, 124, 127, 127, 123, 119, 126, 127, 124, 117, 115, 32.69152 + 116, 116, 114, 99, 88, 105, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 131, 135, 32.69157 + 136, 136, 141, 148, 151, 149, 153, 157, 158, 156, 155, 158, 153, 153, 150, 145, 32.69158 + 143, 143, 139, 133, 132, 129, 127, 127, 128, 128, 124, 121, 133, 133, 129, 121, 32.69159 + 116, 117, 116, 113, 95, 84, 107, 145, 255, 255, 255, 255, 255, 255, 255, 255, 32.69160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 152, 151, 153, 150, 148, 146, 32.69165 + 143, 141, 139, 134, 130, 126, 125, 125, 128, 130, 130, 128, 127, 130, 132, 131, 32.69166 + 126, 122, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69167 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69168 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69169 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 215, 218, 217, 32.69171 + 216, 217, 217, 216, 213, 210, 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69173 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69174 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69175 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69176 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 216, 214, 211, 211, 213, 223, 32.69178 + 222, 221, 221, 220, 217, 212, 208, 212, 213, 223, 246, 255, 255, 255, 255, 255, 32.69179 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69180 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69181 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69182 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69183 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69184 + 255, 255, 255, 255, 255, 242, 209, 222, 212, 215, 215, 214, 217, 223, 225, 222, 32.69185 + 215, 211, 209, 211, 215, 215, 210, 205, 217, 215, 214, 217, 221, 223, 221, 255, 32.69186 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69187 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69188 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69189 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69190 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69191 + 255, 255, 255, 255, 243, 197, 221, 231, 207, 215, 185, 139, 102, 92, 103, 116, 32.69192 + 122, 152, 141, 130, 128, 137, 154, 168, 176, 183, 187, 194, 205, 215, 221, 221, 32.69193 + 219, 227, 224, 217, 211, 217, 226, 221, 210, 221, 194, 182, 197, 212, 255, 255, 32.69194 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69195 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69196 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69198 + 255, 255, 255, 244, 226, 225, 227, 228, 206, 165, 124, 95, 55, 31, 34, 51, 32.69199 + 62, 63, 55, 49, 44, 44, 52, 62, 69, 73, 86, 96, 117, 146, 177, 204, 32.69200 + 222, 231, 229, 230, 218, 202, 202, 210, 199, 178, 195, 190, 194, 197, 188, 178, 32.69201 + 214, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69202 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69203 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69204 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69205 + 255, 255, 255, 234, 221, 213, 214, 221, 183, 131, 95, 53, 45, 35, 35, 44, 32.69206 + 50, 41, 28, 40, 41, 44, 48, 50, 47, 41, 35, 43, 47, 57, 74, 96, 32.69207 + 121, 141, 153, 157, 198, 225, 206, 167, 153, 170, 192, 169, 179, 182, 179, 183, 32.69208 + 195, 197, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69209 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69210 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69212 + 255, 255, 244, 221, 223, 203, 233, 202, 138, 82, 81, 40, 37, 36, 32, 30, 32.69213 + 33, 36, 30, 21, 27, 26, 26, 27, 29, 32, 33, 33, 45, 43, 40, 38, 32.69214 + 41, 47, 55, 61, 75, 67, 72, 94, 113, 119, 117, 117, 119, 142, 162, 168, 32.69215 + 176, 188, 189, 180, 204, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69216 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69217 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69218 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69219 + 255, 255, 223, 226, 227, 207, 248, 200, 172, 51, 70, 32, 42, 26, 26, 22, 32.69220 + 18, 21, 29, 35, 36, 25, 25, 26, 27, 30, 34, 37, 39, 30, 33, 36, 32.69221 + 38, 39, 39, 40, 41, 36, 33, 42, 57, 58, 57, 76, 103, 87, 109, 141, 32.69222 + 162, 159, 152, 163, 181, 189, 189, 229, 255, 255, 255, 255, 255, 255, 255, 255, 32.69223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69224 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69225 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69226 + 255, 243, 219, 221, 223, 225, 221, 224, 190, 45, 95, 27, 40, 33, 27, 29, 32.69227 + 28, 24, 23, 27, 27, 24, 15, 18, 22, 25, 25, 24, 23, 22, 29, 33, 32.69228 + 39, 41, 39, 36, 34, 33, 40, 32, 27, 27, 26, 27, 39, 54, 91, 81, 32.69229 + 85, 114, 146, 160, 158, 152, 171, 178, 212, 255, 255, 255, 255, 255, 255, 255, 32.69230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69233 + 255, 222, 219, 217, 216, 219, 220, 214, 195, 102, 65, 24, 43, 12, 22, 18, 32.69234 + 20, 21, 21, 27, 30, 30, 23, 16, 16, 15, 14, 14, 18, 23, 26, 24, 32.69235 + 27, 29, 29, 27, 27, 29, 32, 18, 30, 37, 26, 16, 19, 37, 51, 52, 32.69236 + 62, 70, 78, 111, 151, 169, 160, 154, 165, 205, 215, 255, 255, 255, 255, 255, 32.69237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69240 + 255, 227, 224, 201, 223, 211, 212, 218, 205, 129, 53, 26, 29, 29, 24, 20, 32.69241 + 21, 22, 24, 27, 31, 29, 29, 24, 19, 18, 14, 11, 17, 30, 35, 32, 32.69242 + 29, 30, 31, 33, 34, 31, 26, 22, 26, 25, 26, 19, 18, 20, 33, 40, 32.69243 + 41, 47, 60, 74, 101, 126, 141, 140, 148, 146, 207, 215, 255, 255, 255, 255, 32.69244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69246 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69247 + 208, 228, 198, 227, 224, 211, 215, 209, 125, 52, 33, 21, 22, 25, 21, 20, 32.69248 + 22, 28, 25, 24, 24, 24, 24, 20, 17, 13, 16, 17, 17, 22, 31, 33, 32.69249 + 30, 28, 23, 19, 22, 28, 30, 26, 21, 35, 32, 29, 26, 26, 30, 36, 32.69250 + 41, 31, 37, 46, 62, 85, 107, 114, 109, 132, 132, 191, 209, 210, 255, 255, 32.69251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69252 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69253 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69254 + 215, 226, 228, 227, 232, 216, 233, 210, 133, 24, 26, 31, 35, 30, 19, 13, 32.69255 + 17, 21, 24, 19, 16, 17, 22, 25, 24, 21, 8, 15, 22, 25, 27, 30, 32.69256 + 30, 28, 26, 18, 12, 14, 23, 29, 27, 23, 34, 30, 25, 24, 26, 29, 32.69257 + 30, 30, 24, 26, 31, 44, 65, 86, 94, 91, 127, 134, 188, 222, 208, 255, 32.69258 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69259 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69260 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 32.69261 + 237, 226, 200, 217, 198, 221, 206, 132, 32, 25, 47, 37, 35, 25, 12, 12, 32.69262 + 23, 32, 32, 21, 16, 15, 18, 25, 28, 26, 22, 11, 18, 26, 28, 27, 32.69263 + 26, 26, 25, 24, 20, 16, 17, 21, 26, 27, 27, 28, 26, 24, 22, 22, 32.69264 + 23, 23, 22, 29, 28, 29, 34, 46, 61, 74, 78, 98, 113, 168, 221, 203, 32.69265 + 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69266 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 32.69268 + 226, 213, 215, 227, 216, 196, 105, 18, 50, 47, 22, 14, 20, 19, 14, 9, 32.69269 + 19, 34, 37, 26, 24, 21, 21, 23, 25, 24, 18, 13, 20, 23, 27, 27, 32.69270 + 24, 20, 20, 23, 18, 21, 24, 23, 20, 20, 23, 26, 25, 29, 31, 28, 32.69271 + 24, 21, 24, 27, 32, 34, 37, 37, 37, 40, 49, 56, 51, 71, 120, 191, 32.69272 + 194, 216, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69273 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 32.69275 + 235, 226, 210, 210, 221, 174, 54, 34, 47, 30, 18, 47, 23, 22, 27, 28, 32.69276 + 22, 20, 23, 23, 17, 17, 17, 21, 23, 24, 22, 18, 15, 28, 25, 24, 32.69277 + 24, 20, 16, 17, 20, 13, 20, 27, 25, 17, 13, 17, 22, 22, 27, 31, 32.69278 + 29, 23, 21, 25, 30, 21, 28, 39, 46, 45, 42, 45, 49, 45, 58, 89, 32.69279 + 160, 192, 207, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69281 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 232, 32.69282 + 218, 192, 217, 245, 185, 87, 41, 22, 41, 42, 37, 14, 24, 17, 14, 17, 32.69283 + 18, 14, 11, 13, 21, 25, 13, 16, 22, 23, 23, 23, 25, 26, 31, 24, 32.69284 + 20, 21, 20, 16, 15, 18, 13, 19, 23, 22, 17, 14, 17, 21, 19, 21, 32.69285 + 23, 23, 21, 21, 24, 27, 20, 21, 29, 41, 46, 44, 44, 45, 51, 55, 32.69286 + 68, 127, 182, 173, 188, 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69287 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69288 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 225, 32.69289 + 205, 211, 236, 220, 144, 66, 27, 40, 45, 41, 13, 30, 27, 32, 25, 26, 32.69290 + 22, 21, 23, 23, 21, 22, 23, 24, 27, 30, 27, 21, 20, 23, 27, 30, 32.69291 + 22, 17, 20, 21, 17, 15, 16, 17, 18, 20, 19, 18, 18, 20, 22, 21, 32.69292 + 19, 18, 20, 24, 27, 27, 27, 34, 24, 18, 24, 30, 30, 29, 29, 28, 32.69293 + 29, 33, 87, 156, 125, 134, 151, 215, 255, 255, 255, 255, 255, 255, 255, 255, 32.69294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 228, 32.69296 + 215, 216, 224, 235, 94, 10, 49, 43, 28, 27, 28, 26, 26, 26, 28, 26, 32.69297 + 17, 19, 21, 17, 15, 17, 21, 21, 22, 24, 24, 17, 16, 21, 23, 19, 32.69298 + 29, 19, 17, 23, 23, 13, 9, 13, 21, 22, 19, 14, 14, 19, 22, 21, 32.69299 + 20, 19, 19, 19, 21, 23, 24, 24, 28, 21, 18, 22, 28, 31, 34, 36, 32.69300 + 33, 16, 46, 62, 133, 133, 154, 140, 184, 208, 255, 255, 255, 255, 255, 255, 32.69301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 224, 226, 32.69303 + 230, 212, 241, 188, 20, 35, 46, 27, 33, 38, 34, 31, 26, 22, 20, 22, 32.69304 + 20, 23, 18, 16, 17, 19, 19, 20, 19, 20, 22, 23, 17, 17, 21, 22, 32.69305 + 19, 26, 18, 17, 22, 20, 11, 8, 13, 17, 19, 17, 13, 13, 17, 19, 32.69306 + 17, 17, 17, 16, 17, 19, 20, 21, 21, 25, 20, 17, 21, 25, 27, 31, 32.69307 + 36, 31, 22, 38, 35, 64, 60, 86, 92, 139, 188, 214, 255, 255, 255, 255, 32.69308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 220, 32.69310 + 223, 225, 238, 185, 35, 23, 26, 34, 24, 37, 35, 32, 29, 25, 23, 24, 32.69311 + 26, 26, 29, 16, 11, 17, 21, 18, 17, 17, 17, 19, 21, 18, 18, 20, 32.69312 + 20, 18, 21, 16, 16, 20, 17, 9, 8, 13, 15, 18, 18, 15, 15, 18, 32.69313 + 18, 15, 16, 17, 17, 18, 18, 19, 20, 20, 20, 17, 17, 20, 21, 21, 32.69314 + 27, 34, 31, 30, 31, 25, 24, 26, 45, 62, 95, 148, 198, 255, 255, 255, 32.69315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 213, 32.69317 + 218, 221, 219, 212, 46, 36, 44, 41, 47, 40, 25, 27, 26, 26, 25, 25, 32.69318 + 27, 29, 28, 29, 15, 11, 17, 20, 14, 14, 19, 16, 17, 20, 19, 19, 32.69319 + 20, 19, 17, 16, 14, 16, 18, 15, 9, 9, 13, 15, 19, 20, 18, 18, 32.69320 + 20, 19, 15, 17, 18, 20, 20, 20, 20, 20, 21, 16, 15, 16, 18, 17, 32.69321 + 16, 22, 30, 33, 32, 21, 31, 24, 38, 36, 44, 62, 88, 139, 195, 225, 32.69322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 219, 212, 32.69324 + 216, 226, 224, 213, 115, 27, 44, 32, 27, 41, 35, 27, 26, 27, 30, 29, 32.69325 + 28, 25, 25, 21, 23, 15, 14, 17, 16, 11, 16, 23, 17, 17, 19, 20, 32.69326 + 20, 18, 17, 18, 14, 14, 15, 16, 15, 11, 11, 13, 14, 19, 20, 18, 32.69327 + 18, 20, 19, 14, 15, 18, 21, 21, 19, 18, 18, 20, 14, 14, 15, 17, 32.69328 + 15, 14, 19, 26, 30, 32, 17, 29, 17, 33, 20, 23, 35, 45, 76, 128, 32.69329 + 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 221, 218, 32.69331 + 215, 224, 231, 210, 179, 51, 59, 22, 54, 12, 13, 29, 29, 20, 22, 28, 32.69332 + 30, 30, 27, 26, 21, 17, 17, 18, 16, 14, 16, 23, 27, 21, 18, 19, 32.69333 + 21, 20, 17, 16, 19, 15, 14, 13, 15, 17, 17, 15, 13, 12, 16, 17, 32.69334 + 15, 15, 17, 16, 12, 11, 15, 19, 19, 16, 14, 15, 17, 16, 13, 14, 32.69335 + 16, 16, 14, 17, 23, 21, 32, 23, 28, 7, 20, 16, 24, 27, 42, 55, 32.69336 + 72, 118, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 215, 219, 32.69338 + 217, 215, 221, 210, 159, 101, 36, 32, 78, 18, 20, 30, 36, 13, 20, 22, 32.69339 + 25, 28, 31, 30, 28, 24, 17, 20, 19, 13, 16, 27, 34, 29, 26, 21, 32.69340 + 20, 22, 20, 16, 16, 20, 18, 15, 12, 14, 20, 23, 19, 13, 13, 16, 32.69341 + 17, 14, 14, 17, 16, 13, 10, 15, 20, 19, 15, 12, 13, 16, 18, 14, 32.69342 + 12, 16, 18, 17, 17, 20, 14, 28, 30, 30, 15, 22, 23, 28, 24, 38, 32.69343 + 47, 45, 70, 180, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 216, 32.69345 + 220, 217, 212, 210, 182, 105, 27, 26, 53, 6, 32, 40, 18, 21, 25, 29, 32.69346 + 31, 30, 27, 26, 23, 20, 14, 17, 18, 16, 8, 16, 37, 39, 28, 27, 32.69347 + 22, 19, 22, 20, 15, 16, 21, 20, 15, 12, 14, 22, 27, 22, 13, 16, 32.69348 + 19, 19, 15, 15, 19, 19, 16, 12, 17, 22, 22, 17, 14, 15, 17, 21, 32.69349 + 14, 12, 16, 20, 19, 18, 18, 16, 23, 31, 28, 28, 26, 18, 10, 12, 32.69350 + 14, 27, 30, 32, 117, 178, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 223, 32.69352 + 213, 226, 224, 218, 228, 109, 39, 39, 37, 29, 23, 23, 27, 31, 31, 31, 32.69353 + 30, 25, 27, 44, 33, 21, 35, 20, 17, 9, 23, 12, 18, 60, 53, 17, 32.69354 + 7, 31, 15, 2, 20, 17, 10, 32, 11, 25, 17, 12, 29, 31, 21, 25, 32.69355 + 18, 17, 15, 16, 20, 21, 16, 8, 10, 15, 16, 15, 15, 17, 16, 13, 32.69356 + 19, 15, 17, 17, 16, 26, 30, 19, 14, 18, 27, 30, 30, 21, 19, 21, 32.69357 + 15, 17, 24, 33, 43, 75, 135, 190, 229, 255, 255, 255, 255, 255, 255, 255, 32.69358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 32.69359 + 225, 224, 219, 207, 218, 208, 33, 57, 40, 37, 30, 28, 27, 29, 29, 29, 32.69360 + 28, 27, 28, 19, 23, 18, 19, 34, 20, 23, 10, 2, 42, 19, 67, 30, 32.69361 + 21, 20, 21, 34, 23, 24, 29, 20, 30, 14, 27, 21, 17, 32, 35, 26, 32.69362 + 27, 25, 21, 16, 16, 19, 19, 17, 11, 16, 19, 20, 18, 19, 22, 20, 32.69363 + 16, 18, 15, 18, 18, 18, 28, 32, 19, 15, 17, 24, 31, 31, 28, 26, 32.69364 + 30, 18, 20, 25, 31, 33, 51, 92, 134, 186, 228, 255, 255, 255, 255, 255, 32.69365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 32.69366 + 222, 225, 246, 189, 239, 222, 80, 60, 26, 48, 34, 31, 32, 30, 28, 27, 32.69367 + 24, 22, 15, 29, 14, 14, 28, 41, 54, 45, 48, 18, 32, 58, 62, 58, 32.69368 + 34, 29, 35, 17, 39, 33, 18, 26, 21, 20, 20, 31, 26, 20, 31, 37, 32.69369 + 30, 27, 32, 24, 17, 16, 18, 18, 15, 12, 17, 18, 17, 16, 19, 23, 32.69370 + 21, 15, 16, 15, 20, 19, 19, 30, 33, 19, 17, 17, 20, 26, 27, 27, 32.69371 + 28, 33, 21, 23, 26, 28, 24, 27, 47, 72, 159, 218, 255, 255, 255, 255, 32.69372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 32.69373 + 220, 221, 221, 214, 225, 220, 140, 44, 42, 62, 32, 32, 36, 38, 33, 30, 32.69374 + 28, 25, 23, 17, 33, 16, 18, 39, 40, 42, 38, 39, 26, 59, 49, 60, 32.69375 + 36, 25, 16, 40, 30, 22, 26, 23, 16, 20, 13, 27, 33, 28, 21, 29, 32.69376 + 40, 39, 33, 29, 23, 16, 17, 20, 19, 15, 13, 15, 16, 15, 15, 20, 32.69377 + 26, 25, 19, 14, 15, 20, 19, 19, 32, 35, 18, 23, 19, 18, 21, 21, 32.69378 + 20, 21, 26, 23, 23, 24, 25, 21, 19, 28, 41, 117, 207, 224, 255, 255, 32.69379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69380 + 220, 219, 218, 216, 199, 234, 128, 49, 49, 56, 50, 43, 39, 44, 47, 39, 32.69381 + 35, 36, 33, 29, 19, 27, 15, 36, 62, 54, 56, 68, 42, 77, 89, 78, 32.69382 + 48, 65, 39, 40, 33, 50, 4, 25, 48, 17, 24, 20, 26, 28, 25, 17, 32.69383 + 24, 44, 53, 44, 24, 16, 12, 17, 21, 17, 15, 14, 15, 17, 18, 19, 32.69384 + 25, 32, 33, 29, 13, 16, 21, 18, 18, 34, 37, 20, 27, 21, 18, 19, 32.69385 + 19, 17, 17, 21, 25, 24, 21, 21, 20, 21, 28, 36, 56, 165, 214, 226, 32.69386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69387 + 220, 220, 219, 216, 213, 228, 189, 24, 71, 48, 45, 60, 35, 48, 52, 48, 32.69388 + 40, 35, 38, 36, 27, 31, 27, 22, 52, 71, 62, 73, 86, 39, 74, 90, 32.69389 + 46, 37, 49, 40, 36, 22, 46, 6, 31, 63, 26, 27, 35, 19, 21, 21, 32.69390 + 15, 19, 49, 64, 54, 23, 14, 11, 19, 22, 18, 15, 15, 11, 16, 18, 32.69391 + 18, 22, 30, 33, 33, 15, 19, 23, 18, 18, 37, 43, 25, 25, 20, 18, 32.69392 + 21, 22, 21, 19, 21, 25, 24, 21, 19, 19, 23, 29, 35, 25, 120, 193, 32.69393 + 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69394 + 243, 220, 221, 220, 217, 213, 215, 74, 76, 66, 65, 52, 43, 44, 65, 65, 32.69395 + 55, 41, 36, 42, 40, 29, 45, 41, 41, 61, 57, 43, 49, 44, 87, 82, 32.69396 + 98, 36, 70, 48, 57, 54, 34, 29, 28, 37, 48, 35, 30, 58, 21, 22, 32.69397 + 25, 20, 20, 50, 65, 49, 28, 15, 11, 18, 22, 16, 13, 16, 7, 13, 32.69398 + 17, 15, 15, 21, 27, 29, 18, 22, 25, 17, 18, 40, 47, 31, 22, 17, 32.69399 + 17, 21, 24, 22, 18, 18, 22, 24, 23, 22, 21, 24, 28, 31, 25, 75, 32.69400 + 147, 212, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69401 + 255, 218, 219, 222, 222, 218, 215, 88, 102, 59, 78, 86, 53, 34, 64, 83, 32.69402 + 80, 67, 49, 45, 51, 47, 34, 35, 43, 59, 82, 74, 67, 76, 54, 125, 32.69403 + 98, 72, 57, 71, 64, 44, 63, 60, 17, 52, 40, 23, 39, 34, 79, 27, 32.69404 + 25, 31, 24, 21, 47, 59, 38, 33, 19, 11, 17, 21, 15, 14, 19, 11, 32.69405 + 19, 24, 20, 16, 20, 27, 32, 22, 26, 28, 19, 20, 43, 52, 34, 17, 32.69406 + 15, 15, 21, 23, 19, 13, 12, 16, 22, 26, 26, 26, 27, 28, 28, 23, 32.69407 + 34, 95, 181, 205, 207, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69408 + 255, 255, 219, 214, 219, 233, 192, 218, 55, 70, 70, 91, 85, 59, 70, 69, 32.69409 + 96, 54, 71, 47, 46, 56, 52, 32, 76, 67, 70, 91, 56, 61, 74, 94, 32.69410 + 95, 88, 78, 77, 73, 54, 56, 82, 47, 46, 63, 54, 27, 40, 64, 56, 32.69411 + 27, 37, 27, 21, 16, 59, 65, 52, 31, 4, 17, 6, 19, 17, 17, 14, 32.69412 + 15, 14, 22, 16, 23, 26, 19, 36, 39, 25, 14, 17, 26, 32, 34, 37, 32.69413 + 16, 11, 22, 21, 21, 24, 15, 25, 16, 23, 20, 25, 35, 24, 14, 26, 32.69414 + 23, 41, 60, 108, 177, 208, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69415 + 255, 255, 243, 221, 222, 214, 220, 224, 128, 73, 74, 63, 78, 77, 57, 62, 32.69416 + 57, 62, 78, 61, 90, 44, 70, 42, 80, 87, 93, 62, 95, 53, 99, 76, 32.69417 + 85, 96, 62, 81, 82, 40, 66, 92, 38, 50, 48, 50, 57, 29, 39, 32, 32.69418 + 24, 41, 52, 22, 17, 16, 56, 74, 77, 36, 6, 16, 5, 18, 25, 26, 32.69419 + 14, 11, 23, 18, 25, 12, 37, 17, 38, 39, 26, 15, 16, 21, 25, 27, 32.69420 + 30, 20, 14, 24, 21, 21, 25, 15, 25, 26, 28, 32, 24, 15, 32, 40, 32.69421 + 21, 28, 48, 60, 83, 143, 201, 216, 255, 255, 255, 255, 255, 255, 255, 255, 32.69422 + 255, 255, 255, 218, 214, 227, 217, 211, 177, 56, 67, 61, 49, 64, 70, 58, 32.69423 + 56, 46, 39, 81, 73, 67, 72, 63, 59, 71, 81, 78, 87, 71, 94, 73, 32.69424 + 71, 60, 81, 122, 69, 24, 63, 64, 45, 82, 62, 70, 73, 64, 68, 76, 32.69425 + 58, 28, 51, 72, 20, 11, 15, 49, 84, 102, 50, 9, 13, 4, 21, 31, 32.69426 + 32, 14, 14, 25, 28, 26, 22, 38, 25, 42, 51, 37, 24, 22, 25, 25, 32.69427 + 23, 24, 18, 11, 20, 18, 19, 22, 12, 21, 34, 21, 33, 30, 9, 33, 32.69428 + 52, 20, 23, 27, 35, 51, 93, 159, 198, 217, 255, 255, 255, 255, 255, 255, 32.69429 + 255, 255, 255, 255, 218, 207, 224, 226, 186, 60, 51, 46, 44, 45, 57, 61, 32.69430 + 52, 44, 36, 48, 85, 51, 84, 53, 55, 49, 72, 88, 92, 88, 103, 91, 32.69431 + 68, 53, 88, 108, 86, 50, 55, 90, 72, 39, 44, 65, 84, 95, 52, 92, 32.69432 + 96, 90, 40, 46, 93, 36, 11, 12, 50, 93, 116, 70, 8, 8, 10, 26, 32.69433 + 30, 32, 17, 27, 16, 46, 22, 54, 28, 38, 50, 65, 47, 31, 29, 32, 32.69434 + 30, 23, 19, 15, 9, 19, 19, 21, 25, 13, 21, 38, 17, 26, 40, 28, 32.69435 + 31, 44, 35, 38, 16, 24, 50, 73, 119, 172, 197, 224, 255, 255, 255, 255, 32.69436 + 255, 255, 255, 255, 215, 219, 214, 219, 213, 117, 7, 59, 40, 43, 52, 51, 32.69437 + 44, 36, 30, 33, 67, 58, 47, 82, 40, 20, 65, 106, 86, 90, 79, 84, 32.69438 + 71, 59, 62, 105, 97, 30, 44, 78, 45, 40, 69, 57, 93, 102, 94, 73, 32.69439 + 93, 104, 90, 62, 38, 103, 61, 19, 10, 57, 97, 116, 89, 6, 8, 22, 32.69440 + 32, 21, 28, 22, 32, 9, 41, 34, 69, 31, 37, 58, 64, 45, 29, 29, 32.69441 + 36, 35, 26, 20, 15, 9, 20, 22, 27, 31, 18, 24, 32, 31, 27, 31, 32.69442 + 38, 35, 37, 51, 47, 23, 26, 41, 49, 84, 144, 180, 192, 255, 255, 255, 32.69443 + 255, 255, 255, 255, 255, 216, 220, 227, 215, 158, 42, 41, 43, 41, 40, 49, 32.69444 + 37, 28, 30, 30, 45, 48, 25, 43, 17, 32, 34, 102, 85, 51, 62, 73, 32.69445 + 46, 69, 62, 73, 62, 40, 35, 28, 27, 32, 51, 93, 135, 118, 110, 84, 32.69446 + 123, 102, 119, 89, 98, 33, 91, 76, 25, 7, 60, 85, 104, 99, 9, 15, 32.69447 + 30, 33, 19, 30, 25, 29, 17, 26, 57, 63, 56, 33, 64, 61, 47, 36, 32.69448 + 38, 43, 43, 37, 36, 16, 7, 17, 18, 23, 29, 17, 23, 17, 42, 31, 32.69449 + 12, 22, 34, 36, 45, 41, 39, 35, 22, 19, 56, 114, 149, 166, 255, 255, 32.69450 + 255, 255, 255, 255, 255, 255, 218, 219, 223, 209, 74, 23, 52, 32, 41, 31, 32.69451 + 38, 24, 22, 34, 29, 40, 15, 31, 11, 25, 24, 107, 78, 47, 33, 64, 32.69452 + 45, 73, 38, 94, 58, 41, 46, 38, 42, 66, 99, 132, 135, 110, 107, 92, 32.69453 + 91, 128, 110, 118, 98, 89, 50, 72, 77, 32, 9, 65, 73, 98, 97, 18, 32.69454 + 30, 34, 29, 24, 38, 24, 25, 28, 30, 65, 65, 80, 45, 63, 59, 55, 32.69455 + 52, 50, 45, 40, 40, 47, 26, 13, 16, 13, 18, 26, 17, 26, 13, 31, 32.69456 + 38, 25, 15, 25, 33, 29, 39, 52, 47, 30, 24, 41, 85, 130, 162, 182, 32.69457 + 255, 255, 255, 255, 255, 255, 242, 219, 215, 208, 203, 12, 47, 17, 40, 48, 32.69458 + 30, 34, 21, 23, 34, 15, 15, 18, 22, 32, 62, 90, 100, 38, 45, 41, 32.69459 + 40, 32, 41, 15, 43, 44, 34, 67, 103, 119, 126, 139, 131, 123, 133, 103, 32.69460 + 91, 129, 111, 130, 119, 122, 63, 74, 65, 80, 45, 19, 74, 69, 102, 89, 32.69461 + 24, 40, 34, 22, 31, 49, 26, 26, 32, 49, 54, 78, 87, 63, 57, 55, 32.69462 + 58, 60, 52, 36, 27, 31, 44, 43, 24, 24, 15, 21, 29, 25, 36, 23, 32.69463 + 16, 46, 62, 29, 20, 32, 22, 26, 35, 37, 38, 31, 16, 45, 106, 152, 32.69464 + 165, 255, 255, 255, 255, 255, 255, 211, 211, 220, 211, 126, 22, 49, 48, 31, 32.69465 + 46, 37, 30, 27, 27, 26, 23, 17, 21, 21, 52, 85, 77, 38, 26, 43, 32.69466 + 23, 49, 60, 55, 53, 59, 71, 90, 111, 123, 134, 135, 132, 131, 130, 127, 32.69467 + 75, 109, 129, 121, 120, 126, 114, 92, 79, 57, 65, 41, 19, 40, 102, 62, 32.69468 + 66, 94, 21, 43, 37, 42, 42, 26, 33, 33, 43, 40, 75, 86, 76, 41, 32.69469 + 56, 50, 52, 66, 46, 20, 30, 36, 40, 48, 22, 13, 19, 23, 41, 23, 32.69470 + 23, 25, 22, 46, 45, 29, 35, 15, 19, 35, 53, 36, 40, 48, 42, 74, 32.69471 + 133, 160, 202, 255, 255, 255, 255, 255, 214, 217, 203, 185, 38, 19, 39, 37, 32.69472 + 44, 26, 26, 26, 26, 25, 22, 24, 23, 8, 59, 85, 58, 26, 29, 48, 32.69473 + 57, 87, 106, 112, 104, 104, 105, 110, 123, 127, 133, 139, 140, 141, 138, 128, 32.69474 + 118, 101, 121, 131, 125, 122, 127, 115, 97, 71, 75, 65, 41, 27, 49, 93, 32.69475 + 71, 34, 84, 38, 44, 35, 47, 40, 40, 39, 36, 44, 42, 74, 83, 79, 32.69476 + 52, 42, 46, 51, 61, 39, 17, 29, 32, 45, 43, 13, 14, 22, 17, 34, 32.69477 + 41, 27, 27, 23, 43, 39, 23, 27, 7, 21, 28, 48, 43, 43, 48, 39, 32.69478 + 61, 98, 147, 179, 255, 255, 255, 255, 255, 215, 209, 209, 125, 0, 37, 38, 32.69479 + 34, 40, 24, 28, 30, 24, 16, 14, 22, 26, 40, 27, 18, 22, 53, 93, 32.69480 + 123, 134, 134, 144, 144, 137, 139, 137, 135, 141, 140, 138, 138, 139, 141, 137, 32.69481 + 122, 105, 126, 130, 128, 125, 126, 126, 116, 106, 77, 100, 67, 38, 21, 52, 32.69482 + 84, 85, 34, 92, 64, 50, 40, 67, 36, 42, 44, 41, 50, 46, 73, 75, 32.69483 + 82, 69, 45, 51, 57, 62, 40, 17, 27, 28, 50, 58, 28, 16, 21, 17, 32.69484 + 31, 47, 31, 26, 20, 31, 28, 24, 33, 22, 25, 18, 40, 49, 47, 48, 32.69485 + 40, 46, 63, 112, 166, 255, 255, 255, 255, 242, 214, 204, 218, 42, 16, 42, 32.69486 + 35, 39, 28, 30, 30, 25, 15, 9, 16, 31, 39, 37, 28, 52, 101, 125, 32.69487 + 122, 132, 158, 138, 141, 134, 131, 139, 140, 136, 137, 140, 139, 135, 134, 136, 32.69488 + 133, 119, 104, 132, 128, 125, 126, 126, 121, 115, 117, 80, 107, 84, 61, 21, 32.69489 + 51, 78, 71, 54, 99, 69, 42, 47, 91, 34, 36, 46, 43, 56, 51, 67, 32.69490 + 62, 78, 82, 61, 53, 53, 67, 48, 18, 25, 27, 45, 80, 62, 22, 17, 32.69491 + 25, 32, 39, 49, 34, 22, 20, 16, 24, 41, 41, 32, 15, 32, 51, 48, 32.69492 + 49, 47, 40, 51, 75, 143, 255, 255, 255, 255, 217, 214, 215, 176, 0, 28, 32.69493 + 23, 23, 31, 25, 12, 12, 9, 5, 12, 31, 46, 51, 61, 93, 127, 137, 32.69494 + 132, 130, 135, 138, 139, 138, 129, 126, 137, 139, 136, 142, 141, 139, 137, 133, 32.69495 + 132, 132, 126, 119, 127, 124, 126, 129, 124, 115, 113, 122, 79, 96, 105, 101, 32.69496 + 33, 54, 80, 52, 62, 90, 66, 36, 40, 94, 38, 45, 46, 44, 59, 56, 32.69497 + 61, 44, 65, 85, 68, 43, 34, 61, 52, 18, 24, 33, 33, 70, 74, 37, 32.69498 + 22, 27, 30, 40, 63, 45, 35, 21, 12, 22, 33, 36, 35, 19, 25, 44, 32.69499 + 43, 45, 51, 40, 54, 62, 138, 198, 255, 255, 255, 218, 215, 206, 90, 17, 32.69500 + 29, 27, 25, 18, 34, 57, 62, 63, 67, 82, 100, 106, 101, 121, 128, 121, 32.69501 + 110, 121, 146, 153, 141, 141, 139, 131, 130, 139, 138, 136, 142, 136, 137, 137, 32.69502 + 132, 129, 132, 133, 131, 129, 128, 130, 132, 126, 113, 114, 122, 98, 99, 116, 32.69503 + 109, 36, 46, 96, 73, 74, 96, 82, 58, 37, 75, 41, 56, 60, 46, 56, 32.69504 + 55, 59, 34, 55, 80, 63, 33, 16, 45, 42, 16, 29, 38, 27, 32, 54, 32.69505 + 49, 29, 22, 26, 49, 50, 37, 42, 29, 20, 30, 28, 27, 35, 31, 22, 32.69506 + 31, 33, 37, 49, 39, 52, 66, 151, 157, 255, 255, 255, 217, 214, 179, 44, 32.69507 + 37, 27, 38, 28, 26, 58, 84, 88, 91, 92, 102, 115, 113, 102, 125, 129, 32.69508 + 136, 139, 135, 130, 131, 135, 133, 136, 134, 135, 139, 133, 130, 139, 133, 134, 32.69509 + 134, 130, 129, 132, 135, 133, 134, 132, 131, 130, 127, 119, 118, 121, 117, 113, 32.69510 + 118, 94, 43, 36, 94, 101, 89, 101, 91, 88, 42, 61, 45, 61, 80, 51, 32.69511 + 49, 49, 59, 33, 49, 74, 72, 48, 25, 34, 25, 13, 29, 29, 35, 9, 32.69512 + 37, 44, 22, 21, 26, 40, 35, 27, 44, 34, 26, 39, 30, 28, 35, 49, 32.69513 + 27, 22, 28, 30, 44, 39, 44, 58, 159, 160, 255, 255, 255, 214, 211, 160, 32.69514 + 46, 21, 18, 26, 19, 47, 90, 104, 107, 107, 105, 110, 123, 123, 116, 124, 32.69515 + 128, 131, 131, 136, 142, 144, 139, 129, 135, 139, 142, 144, 134, 131, 143, 136, 32.69516 + 136, 135, 133, 135, 139, 136, 130, 134, 132, 127, 127, 128, 128, 125, 121, 108, 32.69517 + 121, 127, 96, 67, 34, 77, 96, 89, 88, 79, 99, 51, 62, 54, 59, 95, 32.69518 + 53, 39, 43, 57, 32, 46, 69, 88, 74, 46, 30, 14, 10, 28, 18, 47, 32.69519 + 12, 37, 32, 7, 27, 30, 18, 41, 31, 49, 35, 25, 38, 28, 27, 37, 32.69520 + 64, 35, 21, 28, 29, 41, 38, 37, 39, 155, 173, 255, 255, 255, 209, 208, 32.69521 + 118, 45, 30, 15, 31, 27, 57, 110, 113, 115, 116, 114, 115, 121, 123, 119, 32.69522 + 125, 129, 130, 129, 132, 134, 135, 134, 136, 141, 144, 141, 137, 135, 138, 141, 32.69523 + 141, 140, 138, 137, 137, 137, 134, 131, 134, 143, 145, 140, 135, 135, 130, 127, 32.69524 + 131, 125, 120, 101, 67, 51, 60, 69, 105, 87, 82, 81, 75, 80, 76, 58, 32.69525 + 89, 94, 57, 27, 36, 35, 34, 55, 82, 85, 78, 52, 24, 12, 16, 25, 32.69526 + 48, 51, 29, 11, 19, 19, 18, 33, 45, 39, 29, 24, 30, 41, 46, 45, 32.69527 + 42, 52, 57, 40, 17, 23, 36, 36, 54, 50, 103, 148, 255, 255, 255, 211, 32.69528 + 208, 112, 33, 21, 14, 25, 31, 71, 113, 109, 115, 116, 113, 110, 113, 115, 32.69529 + 117, 124, 126, 126, 127, 132, 137, 143, 146, 144, 141, 140, 144, 150, 151, 146, 32.69530 + 140, 140, 138, 140, 141, 142, 144, 141, 139, 138, 141, 143, 137, 134, 132, 131, 32.69531 + 133, 124, 133, 134, 110, 74, 64, 71, 65, 93, 95, 84, 79, 90, 81, 65, 32.69532 + 67, 81, 116, 88, 31, 27, 43, 46, 55, 44, 63, 78, 77, 55, 30, 20, 32.69533 + 21, 38, 44, 28, 15, 19, 17, 14, 26, 38, 58, 70, 58, 40, 38, 55, 32.69534 + 73, 41, 43, 47, 37, 19, 22, 35, 38, 40, 44, 86, 144, 197, 255, 255, 32.69535 + 210, 206, 109, 28, 21, 23, 23, 43, 95, 120, 111, 117, 120, 116, 110, 112, 32.69536 + 117, 120, 114, 117, 121, 124, 126, 129, 133, 137, 144, 142, 143, 148, 155, 157, 32.69537 + 152, 144, 140, 138, 140, 142, 143, 142, 139, 136, 140, 139, 138, 133, 126, 120, 32.69538 + 124, 133, 127, 134, 127, 93, 61, 67, 85, 81, 79, 94, 82, 80, 104, 85, 32.69539 + 57, 80, 78, 102, 93, 68, 61, 45, 31, 38, 41, 56, 72, 74, 50, 19, 32.69540 + 5, 6, 29, 35, 28, 20, 20, 14, 10, 18, 36, 49, 59, 55, 48, 47, 32.69541 + 52, 55, 45, 36, 36, 33, 20, 20, 30, 36, 30, 39, 67, 136, 153, 255, 32.69542 + 255, 208, 199, 103, 29, 25, 35, 20, 52, 110, 120, 121, 122, 121, 118, 115, 32.69543 + 114, 116, 118, 118, 122, 129, 136, 136, 131, 131, 134, 134, 142, 150, 150, 150, 32.69544 + 146, 149, 154, 147, 145, 145, 145, 143, 140, 134, 131, 143, 139, 135, 128, 117, 32.69545 + 106, 108, 118, 116, 119, 111, 85, 60, 69, 91, 98, 72, 76, 69, 79, 100, 32.69546 + 83, 63, 80, 83, 89, 87, 90, 90, 60, 29, 25, 62, 67, 78, 79, 59, 32.69547 + 28, 14, 24, 26, 31, 29, 25, 20, 12, 10, 17, 30, 28, 28, 33, 45, 32.69548 + 51, 43, 29, 53, 34, 29, 32, 23, 18, 24, 31, 34, 34, 57, 122, 157, 32.69549 + 255, 255, 209, 198, 89, 26, 21, 38, 16, 55, 118, 112, 125, 118, 111, 108, 32.69550 + 106, 102, 100, 96, 97, 99, 105, 112, 113, 110, 114, 123, 128, 137, 146, 148, 32.69551 + 148, 146, 150, 154, 153, 150, 152, 150, 147, 142, 135, 129, 138, 137, 133, 123, 32.69552 + 108, 93, 88, 92, 86, 85, 91, 92, 77, 71, 83, 92, 71, 52, 55, 74, 32.69553 + 82, 78, 73, 69, 86, 106, 103, 84, 84, 87, 67, 40, 20, 34, 56, 70, 32.69554 + 60, 35, 16, 15, 35, 31, 31, 30, 21, 14, 16, 20, 16, 26, 34, 35, 32.69555 + 34, 39, 43, 45, 55, 31, 25, 32, 26, 20, 24, 29, 41, 28, 52, 105, 32.69556 + 173, 255, 255, 212, 200, 88, 33, 15, 38, 18, 69, 127, 110, 110, 97, 88, 32.69557 + 83, 84, 76, 69, 64, 61, 57, 57, 63, 67, 71, 86, 102, 123, 124, 130, 32.69558 + 141, 153, 156, 151, 142, 145, 145, 146, 148, 145, 141, 133, 128, 131, 132, 127, 32.69559 + 113, 98, 87, 76, 70, 67, 55, 60, 74, 65, 58, 69, 81, 69, 43, 46, 32.69560 + 62, 64, 69, 72, 59, 70, 87, 102, 99, 92, 87, 79, 69, 46, 59, 76, 32.69561 + 87, 83, 63, 40, 29, 45, 35, 33, 35, 24, 19, 23, 22, 12, 24, 32, 32.69562 + 29, 25, 30, 42, 50, 49, 27, 23, 30, 28, 25, 28, 29, 41, 22, 45, 32.69563 + 96, 183, 255, 255, 214, 200, 100, 49, 9, 33, 25, 84, 132, 105, 82, 71, 32.69564 + 63, 61, 59, 49, 45, 46, 52, 48, 47, 54, 55, 59, 75, 93, 103, 108, 32.69565 + 121, 139, 154, 155, 147, 137, 142, 143, 145, 149, 147, 141, 134, 129, 122, 127, 32.69566 + 119, 100, 88, 88, 76, 61, 61, 45, 43, 49, 44, 48, 61, 67, 62, 55, 32.69567 + 48, 49, 58, 62, 58, 52, 48, 48, 74, 101, 99, 80, 75, 77, 67, 76, 32.69568 + 78, 75, 73, 66, 44, 24, 56, 37, 35, 40, 29, 24, 28, 22, 17, 17, 32.69569 + 15, 14, 21, 31, 36, 35, 43, 27, 24, 29, 26, 27, 28, 25, 32, 21, 32.69570 + 36, 103, 184, 255, 255, 213, 198, 115, 59, 3, 23, 27, 91, 130, 97, 62, 32.69571 + 55, 52, 50, 46, 38, 39, 43, 47, 45, 48, 56, 54, 48, 55, 69, 75, 32.69572 + 94, 123, 142, 149, 145, 141, 138, 149, 151, 153, 154, 153, 146, 137, 132, 113, 32.69573 + 120, 111, 87, 82, 87, 77, 55, 48, 44, 47, 48, 45, 53, 55, 43, 53, 32.69574 + 71, 52, 39, 60, 58, 42, 53, 39, 43, 57, 65, 76, 94, 94, 72, 59, 32.69575 + 72, 78, 78, 86, 86, 62, 35, 58, 37, 36, 44, 32, 28, 30, 20, 18, 32.69576 + 20, 18, 15, 19, 27, 33, 34, 40, 28, 26, 27, 24, 25, 25, 18, 25, 32.69577 + 24, 31, 113, 181, 255, 255, 207, 198, 139, 51, 16, 16, 36, 111, 73, 60, 32.69578 + 39, 38, 34, 30, 32, 41, 46, 45, 51, 42, 38, 39, 35, 32, 44, 60, 32.69579 + 67, 86, 109, 120, 129, 139, 144, 143, 142, 138, 138, 145, 147, 139, 131, 126, 32.69580 + 121, 109, 99, 94, 82, 66, 64, 70, 61, 50, 49, 55, 52, 41, 43, 54, 32.69581 + 60, 63, 61, 55, 56, 61, 56, 44, 36, 36, 48, 64, 69, 66, 77, 92, 32.69582 + 78, 82, 82, 77, 82, 85, 69, 52, 52, 58, 54, 30, 37, 45, 25, 41, 32.69583 + 25, 23, 18, 11, 12, 16, 17, 16, 31, 18, 22, 17, 20, 27, 20, 25, 32.69584 + 23, 16, 32, 94, 219, 255, 255, 209, 201, 140, 58, 30, 23, 45, 94, 60, 32.69585 + 45, 28, 30, 34, 35, 41, 50, 53, 50, 37, 35, 39, 46, 48, 45, 42, 32.69586 + 44, 57, 75, 98, 116, 131, 137, 136, 127, 127, 127, 131, 137, 141, 140, 132, 32.69587 + 126, 113, 99, 91, 91, 89, 81, 79, 84, 79, 69, 65, 70, 76, 81, 94, 32.69588 + 108, 121, 122, 114, 101, 91, 85, 72, 55, 65, 58, 55, 54, 51, 44, 53, 32.69589 + 65, 84, 82, 76, 78, 89, 97, 81, 60, 46, 48, 51, 39, 47, 56, 33, 32.69590 + 36, 28, 25, 20, 13, 13, 16, 18, 17, 26, 15, 23, 20, 23, 28, 19, 32.69591 + 22, 26, 16, 30, 92, 215, 255, 255, 211, 204, 147, 61, 31, 12, 41, 60, 32.69592 + 45, 32, 36, 46, 59, 70, 80, 89, 87, 82, 79, 82, 86, 90, 92, 90, 32.69593 + 78, 66, 69, 77, 89, 103, 120, 129, 125, 115, 119, 124, 132, 133, 138, 143, 32.69594 + 136, 124, 115, 101, 95, 100, 105, 105, 105, 108, 118, 110, 103, 103, 110, 120, 32.69595 + 131, 137, 136, 141, 138, 128, 122, 116, 106, 92, 82, 71, 61, 60, 56, 50, 32.69596 + 55, 62, 73, 76, 75, 78, 84, 90, 82, 74, 43, 30, 32, 30, 37, 51, 32.69597 + 39, 26, 28, 27, 23, 15, 13, 16, 20, 19, 24, 18, 28, 23, 24, 30, 32.69598 + 20, 22, 25, 12, 24, 88, 205, 255, 255, 212, 203, 165, 71, 26, 0, 46, 32.69599 + 47, 59, 54, 68, 78, 94, 109, 120, 127, 123, 117, 122, 124, 123, 116, 117, 32.69600 + 119, 113, 99, 97, 93, 91, 94, 103, 113, 118, 118, 120, 132, 139, 134, 137, 32.69601 + 143, 137, 122, 119, 111, 106, 109, 114, 113, 117, 119, 113, 111, 108, 110, 124, 32.69602 + 139, 144, 143, 151, 159, 158, 148, 140, 135, 128, 117, 117, 106, 95, 88, 75, 32.69603 + 60, 46, 40, 54, 68, 83, 82, 76, 74, 79, 88, 56, 25, 14, 12, 14, 32.69604 + 36, 42, 26, 28, 29, 25, 18, 16, 18, 22, 22, 25, 22, 32, 24, 24, 32.69605 + 29, 20, 23, 25, 15, 24, 96, 204, 255, 255, 211, 203, 177, 79, 18, 1, 32.69606 + 66, 56, 84, 83, 91, 100, 112, 122, 132, 137, 134, 127, 137, 140, 136, 123, 32.69607 + 118, 123, 122, 115, 106, 99, 92, 86, 86, 94, 108, 119, 124, 136, 141, 134, 32.69608 + 133, 138, 133, 119, 112, 112, 111, 110, 108, 105, 111, 116, 123, 121, 118, 118, 32.69609 + 127, 140, 144, 140, 144, 153, 154, 145, 139, 138, 135, 129, 130, 121, 111, 101, 32.69610 + 89, 73, 54, 44, 50, 62, 79, 85, 82, 76, 82, 95, 77, 46, 22, 18, 32.69611 + 15, 29, 46, 34, 28, 31, 31, 25, 21, 21, 24, 23, 27, 26, 35, 24, 32.69612 + 20, 29, 22, 26, 29, 19, 32, 109, 204, 255, 255, 210, 203, 168, 75, 5, 32.69613 + 13, 88, 67, 98, 95, 109, 115, 121, 125, 129, 131, 127, 122, 118, 119, 114, 32.69614 + 103, 95, 92, 88, 85, 94, 90, 87, 82, 80, 83, 97, 115, 121, 130, 132, 32.69615 + 127, 125, 129, 125, 116, 104, 109, 111, 108, 103, 101, 105, 109, 100, 93, 87, 32.69616 + 86, 92, 101, 110, 114, 126, 141, 147, 141, 137, 138, 139, 136, 126, 118, 108, 32.69617 + 101, 95, 87, 80, 75, 58, 52, 57, 74, 88, 90, 87, 88, 84, 69, 44, 32.69618 + 42, 31, 27, 39, 33, 26, 33, 36, 32, 27, 28, 29, 28, 28, 30, 40, 32.69619 + 25, 20, 28, 22, 27, 24, 17, 32, 113, 255, 255, 255, 210, 204, 159, 79, 32.69620 + 3, 30, 102, 72, 97, 97, 114, 118, 120, 120, 122, 121, 115, 108, 124, 118, 32.69621 + 114, 114, 115, 112, 107, 105, 87, 83, 81, 79, 79, 82, 96, 115, 121, 123, 32.69622 + 123, 120, 117, 116, 113, 112, 100, 105, 107, 103, 100, 97, 97, 98, 84, 77, 32.69623 + 76, 84, 91, 95, 105, 118, 122, 138, 149, 144, 138, 134, 132, 125, 141, 133, 32.69624 + 121, 105, 96, 90, 87, 82, 76, 57, 52, 69, 90, 92, 87, 84, 81, 87, 32.69625 + 63, 57, 45, 19, 26, 28, 25, 36, 43, 40, 37, 36, 36, 35, 26, 33, 32.69626 + 46, 30, 21, 29, 22, 25, 20, 17, 32, 112, 255, 255, 255, 211, 205, 165, 32.69627 + 95, 10, 47, 112, 75, 100, 103, 106, 109, 110, 108, 108, 105, 100, 93, 73, 32.69628 + 63, 62, 77, 94, 100, 105, 108, 98, 88, 82, 80, 80, 86, 103, 120, 125, 32.69629 + 121, 120, 119, 114, 106, 105, 108, 97, 98, 99, 96, 93, 90, 87, 84, 74, 32.69630 + 66, 62, 63, 53, 35, 30, 38, 61, 85, 107, 115, 117, 123, 125, 121, 123, 32.69631 + 119, 114, 106, 102, 100, 100, 98, 91, 71, 64, 77, 88, 88, 87, 92, 79, 32.69632 + 97, 71, 64, 49, 15, 17, 28, 26, 37, 45, 45, 43, 41, 42, 40, 23, 32.69633 + 33, 48, 33, 23, 30, 21, 20, 26, 21, 37, 163, 255, 255, 255, 210, 206, 32.69634 + 168, 81, 21, 91, 111, 98, 108, 106, 87, 99, 71, 103, 71, 25, 30, 30, 32.69635 + 9, 19, 214, 96, 41, 124, 97, 95, 93, 101, 114, 84, 82, 77, 107, 115, 32.69636 + 123, 123, 122, 117, 110, 102, 98, 95, 101, 98, 96, 96, 98, 96, 89, 88, 32.69637 + 80, 32, 76, 104, 111, 49, 56, 47, 55, 38, 12, 25, 36, 73, 94, 114, 32.69638 + 93, 85, 92, 107, 108, 94, 94, 102, 113, 98, 81, 71, 73, 79, 88, 90, 32.69639 + 91, 80, 93, 77, 41, 57, 21, 32, 20, 22, 33, 50, 60, 57, 50, 45, 32.69640 + 36, 36, 33, 38, 41, 30, 22, 29, 36, 16, 109, 255, 255, 255, 255, 210, 32.69641 + 206, 177, 94, 32, 106, 115, 100, 100, 98, 85, 85, 87, 55, 28, 54, 19, 32.69642 + 20, 71, 80, 179, 15, 77, 154, 188, 131, 103, 105, 101, 100, 93, 98, 113, 32.69643 + 130, 126, 123, 121, 116, 110, 105, 103, 101, 94, 91, 91, 99, 111, 112, 101, 32.69644 + 94, 84, 77, 128, 124, 111, 60, 60, 29, 43, 36, 38, 71, 60, 51, 45, 32.69645 + 69, 80, 85, 94, 97, 97, 94, 99, 104, 110, 101, 90, 82, 81, 82, 86, 32.69646 + 86, 96, 83, 98, 84, 52, 67, 34, 40, 19, 22, 30, 43, 51, 53, 53, 32.69647 + 53, 39, 46, 50, 54, 56, 36, 24, 29, 26, 18, 122, 255, 255, 255, 255, 32.69648 + 255, 208, 171, 98, 33, 123, 121, 114, 105, 105, 91, 71, 68, 23, 22, 89, 32.69649 + 44, 36, 48, 53, 13, 68, 109, 171, 142, 156, 108, 100, 85, 107, 97, 112, 32.69650 + 114, 132, 126, 121, 117, 112, 108, 106, 108, 108, 95, 88, 88, 99, 112, 111, 32.69651 + 94, 80, 111, 66, 102, 135, 136, 63, 51, 46, 41, 38, 56, 119, 130, 106, 32.69652 + 48, 18, 39, 54, 72, 77, 81, 90, 98, 98, 105, 105, 102, 97, 94, 92, 32.69653 + 92, 91, 97, 85, 98, 89, 65, 75, 45, 44, 23, 22, 26, 33, 39, 42, 32.69654 + 50, 57, 39, 47, 50, 57, 56, 37, 23, 30, 31, 28, 255, 255, 255, 255, 32.69655 + 255, 255, 210, 168, 101, 34, 131, 122, 123, 107, 112, 83, 52, 19, 26, 52, 32.69656 + 101, 78, 61, 25, 41, 53, 68, 166, 126, 131, 96, 109, 100, 86, 98, 99, 32.69657 + 115, 117, 124, 127, 119, 111, 105, 103, 103, 106, 107, 98, 90, 87, 93, 103, 32.69658 + 103, 89, 79, 97, 75, 91, 99, 115, 91, 85, 61, 73, 104, 129, 155, 139, 32.69659 + 121, 69, 34, 18, 32, 53, 68, 82, 93, 101, 104, 103, 106, 110, 110, 105, 32.69660 + 98, 97, 97, 97, 85, 97, 91, 79, 83, 59, 50, 25, 22, 23, 25, 27, 32.69661 + 32, 41, 51, 42, 41, 39, 43, 48, 36, 27, 33, 56, 43, 255, 255, 255, 32.69662 + 255, 255, 255, 211, 182, 110, 40, 133, 118, 118, 102, 107, 62, 35, 20, 43, 32.69663 + 61, 92, 73, 74, 50, 92, 84, 105, 105, 141, 130, 109, 111, 108, 106, 89, 32.69664 + 107, 118, 131, 119, 128, 121, 111, 105, 103, 104, 107, 107, 98, 93, 92, 95, 32.69665 + 102, 107, 108, 108, 98, 93, 103, 97, 100, 91, 101, 98, 98, 117, 116, 116, 32.69666 + 95, 97, 80, 68, 36, 27, 35, 59, 77, 82, 90, 100, 109, 113, 117, 115, 32.69667 + 106, 100, 100, 100, 101, 90, 101, 96, 93, 90, 77, 61, 22, 20, 18, 19, 32.69668 + 20, 24, 34, 44, 45, 41, 32, 38, 47, 40, 32, 39, 84, 59, 255, 255, 32.69669 + 255, 255, 255, 255, 208, 182, 108, 42, 126, 119, 113, 104, 108, 65, 53, 83, 32.69670 + 72, 62, 99, 63, 89, 90, 72, 92, 113, 109, 115, 118, 136, 109, 109, 110, 32.69671 + 83, 108, 119, 137, 117, 129, 120, 112, 107, 106, 107, 108, 107, 100, 98, 98, 32.69672 + 97, 98, 104, 114, 119, 115, 90, 90, 108, 117, 96, 101, 125, 113, 103, 88, 32.69673 + 104, 102, 109, 96, 95, 82, 58, 49, 63, 74, 76, 82, 93, 115, 117, 119, 32.69674 + 112, 104, 98, 96, 97, 99, 91, 100, 93, 96, 88, 86, 68, 25, 19, 14, 32.69675 + 14, 17, 22, 29, 38, 38, 35, 30, 38, 51, 43, 35, 39, 94, 76, 255, 32.69676 + 255, 255, 255, 255, 255, 205, 171, 92, 36, 115, 121, 109, 111, 114, 86, 91, 32.69677 + 111, 102, 84, 110, 90, 112, 116, 103, 127, 107, 121, 107, 98, 96, 103, 99, 32.69678 + 92, 83, 101, 122, 129, 117, 122, 116, 112, 109, 111, 111, 111, 108, 105, 105, 32.69679 + 105, 102, 99, 99, 104, 106, 96, 107, 98, 86, 103, 129, 127, 112, 129, 142, 32.69680 + 145, 155, 128, 120, 112, 122, 122, 108, 97, 98, 100, 100, 101, 102, 114, 114, 32.69681 + 114, 109, 104, 97, 96, 97, 98, 91, 98, 89, 94, 82, 90, 71, 38, 28, 32.69682 + 18, 14, 14, 17, 22, 29, 28, 29, 26, 31, 43, 43, 43, 58, 97, 99, 32.69683 + 97, 255, 255, 255, 255, 255, 202, 171, 91, 40, 112, 125, 106, 113, 114, 101, 32.69684 + 111, 81, 118, 113, 101, 121, 119, 125, 118, 107, 96, 115, 95, 84, 107, 101, 32.69685 + 92, 73, 90, 98, 126, 123, 123, 115, 110, 108, 108, 111, 111, 108, 104, 104, 32.69686 + 104, 105, 104, 103, 101, 101, 98, 107, 108, 103, 106, 105, 105, 114, 138, 127, 32.69687 + 139, 127, 127, 125, 150, 134, 114, 111, 114, 114, 109, 107, 108, 100, 91, 105, 32.69688 + 106, 106, 106, 105, 101, 102, 99, 103, 96, 102, 91, 95, 81, 97, 79, 54, 32.69689 + 40, 22, 13, 12, 13, 17, 21, 24, 27, 25, 26, 35, 40, 57, 85, 97, 32.69690 + 114, 93, 114, 255, 255, 255, 255, 209, 158, 102, 45, 125, 115, 126, 101, 113, 32.69691 + 112, 114, 114, 112, 110, 106, 103, 104, 110, 109, 108, 109, 111, 111, 107, 100, 32.69692 + 94, 98, 95, 87, 98, 117, 125, 115, 106, 104, 102, 102, 104, 106, 106, 106, 32.69693 + 113, 113, 112, 111, 108, 104, 101, 101, 111, 114, 117, 119, 122, 123, 124, 124, 32.69694 + 117, 123, 130, 134, 135, 131, 126, 120, 119, 115, 112, 111, 112, 112, 110, 109, 32.69695 + 101, 101, 102, 104, 106, 104, 103, 99, 93, 92, 90, 88, 91, 90, 82, 71, 32.69696 + 76, 26, 28, 18, 27, 10, 12, 19, 26, 44, 14, 12, 34, 55, 98, 110, 32.69697 + 109, 127, 140, 125, 125, 255, 255, 255, 207, 165, 108, 49, 126, 116, 124, 101, 32.69698 + 116, 120, 120, 123, 119, 118, 112, 109, 108, 117, 119, 120, 119, 116, 114, 111, 32.69699 + 111, 109, 105, 94, 90, 101, 118, 120, 111, 110, 107, 103, 102, 102, 103, 103, 32.69700 + 103, 107, 110, 111, 110, 107, 105, 104, 108, 116, 119, 121, 123, 126, 127, 129, 32.69701 + 130, 130, 127, 125, 122, 122, 122, 125, 124, 116, 115, 115, 117, 117, 114, 108, 32.69702 + 104, 100, 100, 102, 105, 107, 106, 103, 97, 95, 91, 88, 85, 88, 89, 81, 32.69703 + 71, 74, 43, 42, 10, 13, 14, 15, 9, 33, 27, 31, 16, 18, 65, 110, 32.69704 + 124, 112, 120, 146, 121, 129, 137, 255, 255, 206, 169, 109, 51, 124, 115, 118, 32.69705 + 102, 119, 124, 124, 127, 124, 124, 119, 116, 116, 123, 127, 129, 126, 120, 117, 32.69706 + 116, 120, 119, 105, 91, 94, 108, 119, 117, 111, 104, 102, 99, 98, 101, 104, 32.69707 + 106, 107, 103, 108, 113, 113, 110, 107, 110, 115, 118, 120, 121, 122, 125, 128, 32.69708 + 131, 131, 142, 137, 131, 126, 124, 123, 128, 128, 120, 119, 118, 119, 118, 116, 32.69709 + 111, 108, 101, 102, 103, 106, 107, 105, 101, 95, 95, 90, 86, 83, 85, 84, 32.69710 + 79, 72, 72, 48, 46, 14, 7, 10, 16, 14, 20, 5, 44, 34, 26, 87, 32.69711 + 116, 111, 114, 111, 150, 124, 136, 126, 255, 255, 214, 173, 112, 56, 121, 114, 32.69712 + 114, 105, 123, 123, 123, 127, 124, 124, 120, 118, 118, 123, 127, 128, 125, 121, 32.69713 + 120, 119, 121, 112, 96, 87, 99, 113, 117, 114, 114, 104, 100, 96, 94, 96, 32.69714 + 100, 102, 104, 102, 109, 116, 116, 111, 109, 113, 121, 122, 122, 122, 120, 124, 32.69715 + 124, 127, 128, 140, 136, 137, 135, 133, 126, 126, 125, 127, 122, 116, 113, 114, 32.69716 + 116, 118, 119, 109, 107, 105, 104, 104, 102, 99, 94, 92, 87, 83, 79, 81, 32.69717 + 81, 78, 74, 70, 39, 39, 28, 14, 6, 13, 32, 32, 32, 67, 64, 65, 32.69718 + 108, 116, 93, 105, 98, 139, 134, 136, 128, 149, 255, 255, 179, 123, 70, 121, 32.69719 + 117, 116, 113, 126, 122, 122, 126, 124, 124, 120, 118, 118, 123, 123, 122, 122, 32.69720 + 124, 123, 121, 119, 103, 94, 94, 110, 118, 116, 114, 117, 112, 106, 98, 93, 32.69721 + 92, 93, 95, 96, 105, 112, 119, 119, 114, 112, 116, 121, 128, 127, 125, 123, 32.69722 + 124, 124, 126, 126, 127, 123, 128, 131, 130, 121, 119, 120, 125, 121, 116, 114, 32.69723 + 116, 120, 123, 124, 119, 114, 108, 103, 101, 99, 97, 93, 90, 83, 79, 77, 32.69724 + 79, 77, 74, 75, 64, 41, 42, 34, 11, 10, 13, 34, 49, 91, 98, 104, 32.69725 + 110, 113, 118, 101, 97, 92, 125, 144, 125, 138, 137, 255, 255, 190, 140, 90, 32.69726 + 124, 120, 121, 121, 125, 125, 125, 129, 126, 126, 122, 120, 120, 125, 124, 122, 32.69727 + 125, 126, 126, 122, 117, 106, 101, 105, 118, 123, 119, 114, 114, 105, 100, 93, 32.69728 + 89, 90, 95, 99, 101, 105, 111, 117, 117, 114, 113, 116, 120, 131, 132, 130, 32.69729 + 127, 128, 127, 128, 126, 124, 118, 118, 122, 122, 117, 117, 123, 118, 118, 120, 32.69730 + 123, 126, 126, 124, 121, 124, 118, 111, 105, 101, 99, 97, 93, 87, 80, 77, 32.69731 + 78, 76, 72, 71, 74, 56, 53, 52, 31, 4, 27, 31, 36, 29, 99, 116, 32.69732 + 137, 143, 118, 119, 106, 97, 89, 117, 144, 118, 145, 131, 255, 255, 198, 156, 32.69733 + 107, 124, 119, 122, 123, 116, 128, 127, 131, 128, 128, 123, 121, 120, 123, 126, 32.69734 + 127, 128, 127, 123, 118, 115, 114, 110, 109, 118, 127, 128, 120, 112, 102, 96, 32.69735 + 90, 88, 91, 97, 104, 107, 104, 107, 112, 114, 115, 115, 117, 118, 130, 130, 32.69736 + 130, 128, 130, 129, 129, 127, 125, 118, 117, 122, 123, 118, 119, 127, 118, 122, 32.69737 + 124, 128, 130, 129, 125, 122, 122, 118, 113, 109, 106, 103, 98, 93, 84, 77, 32.69738 + 76, 78, 77, 70, 69, 72, 55, 53, 51, 36, 12, 48, 57, 68, 60, 85, 32.69739 + 115, 142, 145, 135, 121, 101, 95, 81, 117, 132, 118, 146, 255, 255, 255, 201, 32.69740 + 164, 115, 122, 115, 119, 120, 106, 128, 128, 131, 128, 127, 123, 120, 120, 121, 32.69741 + 128, 132, 131, 124, 117, 113, 112, 117, 111, 106, 113, 127, 133, 124, 111, 114, 32.69742 + 107, 97, 90, 89, 92, 96, 98, 102, 104, 108, 112, 115, 117, 118, 118, 125, 32.69743 + 126, 125, 127, 129, 130, 128, 128, 121, 114, 117, 128, 128, 119, 116, 123, 128, 32.69744 + 128, 125, 125, 127, 128, 128, 128, 117, 116, 115, 114, 111, 106, 100, 93, 82, 32.69745 + 77, 75, 79, 77, 70, 67, 71, 57, 41, 39, 47, 31, 62, 79, 112, 155, 32.69746 + 103, 119, 129, 130, 152, 132, 104, 92, 73, 119, 121, 124, 181, 255, 255, 255, 32.69747 + 197, 172, 116, 115, 109, 122, 124, 116, 121, 123, 128, 126, 125, 121, 121, 123, 32.69748 + 114, 120, 121, 117, 115, 115, 115, 110, 109, 108, 111, 119, 125, 123, 116, 111, 32.69749 + 103, 101, 99, 97, 97, 97, 96, 96, 98, 102, 111, 106, 127, 115, 119, 122, 32.69750 + 126, 130, 129, 125, 127, 136, 134, 124, 126, 129, 125, 121, 129, 139, 135, 123, 32.69751 + 135, 135, 136, 138, 135, 127, 122, 122, 123, 117, 111, 108, 106, 100, 91, 84, 32.69752 + 85, 80, 63, 81, 72, 82, 65, 67, 72, 41, 56, 48, 65, 76, 108, 154, 32.69753 + 153, 117, 107, 125, 133, 128, 121, 115, 82, 83, 119, 110, 135, 255, 255, 255, 32.69754 + 255, 211, 183, 123, 119, 110, 119, 119, 112, 123, 125, 131, 129, 128, 124, 123, 32.69755 + 125, 121, 129, 131, 124, 119, 118, 122, 122, 105, 106, 112, 122, 128, 125, 117, 32.69756 + 110, 103, 100, 98, 96, 95, 92, 88, 85, 85, 90, 101, 101, 128, 120, 124, 32.69757 + 125, 126, 129, 131, 131, 132, 136, 135, 131, 128, 132, 130, 121, 123, 134, 138, 32.69758 + 135, 139, 135, 130, 129, 124, 119, 118, 120, 122, 116, 110, 107, 105, 100, 93, 32.69759 + 87, 78, 76, 64, 77, 65, 71, 57, 61, 70, 54, 81, 77, 94, 95, 116, 32.69760 + 146, 158, 127, 115, 124, 130, 129, 123, 112, 92, 84, 112, 110, 255, 255, 255, 32.69761 + 255, 255, 207, 178, 117, 114, 106, 116, 118, 113, 122, 124, 131, 129, 129, 124, 32.69762 + 123, 125, 122, 128, 130, 122, 116, 115, 118, 120, 100, 105, 114, 124, 132, 130, 32.69763 + 120, 111, 99, 97, 97, 99, 101, 99, 93, 88, 80, 82, 92, 94, 128, 126, 32.69764 + 130, 125, 122, 123, 127, 132, 133, 130, 128, 132, 127, 134, 137, 129, 125, 131, 32.69765 + 136, 139, 141, 138, 135, 134, 131, 126, 125, 127, 121, 116, 109, 105, 103, 99, 32.69766 + 93, 89, 75, 77, 70, 79, 67, 68, 60, 66, 62, 64, 97, 91, 105, 104, 32.69767 + 119, 135, 155, 133, 122, 119, 121, 127, 125, 110, 93, 80, 107, 117, 255, 255, 32.69768 + 255, 255, 255, 206, 174, 113, 111, 103, 112, 115, 112, 119, 121, 128, 127, 127, 32.69769 + 123, 121, 122, 118, 125, 125, 119, 116, 115, 113, 110, 100, 108, 118, 126, 134, 32.69770 + 133, 125, 116, 100, 100, 100, 103, 104, 102, 96, 91, 85, 83, 87, 85, 122, 32.69771 + 126, 131, 125, 124, 120, 126, 134, 133, 125, 125, 132, 124, 135, 143, 138, 133, 32.69772 + 131, 131, 129, 124, 125, 128, 133, 132, 126, 121, 121, 122, 116, 109, 103, 100, 32.69773 + 96, 91, 88, 78, 77, 74, 79, 73, 72, 68, 71, 58, 70, 96, 86, 100, 32.69774 + 103, 124, 129, 143, 135, 124, 113, 107, 120, 126, 112, 85, 76, 115, 255, 255, 32.69775 + 255, 255, 255, 255, 215, 181, 117, 114, 104, 108, 108, 106, 117, 120, 128, 128, 32.69776 + 128, 123, 122, 122, 123, 123, 124, 122, 124, 122, 113, 101, 105, 115, 126, 131, 32.69777 + 136, 139, 133, 125, 113, 112, 111, 109, 106, 102, 99, 96, 95, 89, 84, 77, 32.69778 + 116, 125, 133, 127, 133, 129, 134, 141, 138, 128, 129, 137, 133, 136, 141, 140, 32.69779 + 137, 134, 128, 123, 128, 127, 129, 134, 133, 128, 125, 126, 121, 116, 109, 102, 32.69780 + 96, 92, 88, 87, 82, 75, 72, 72, 75, 69, 67, 65, 62, 78, 97, 88, 32.69781 + 105, 111, 137, 134, 141, 137, 128, 110, 100, 115, 121, 107, 82, 78, 121, 255, 32.69782 + 255, 255, 255, 255, 255, 207, 172, 110, 111, 102, 105, 106, 106, 118, 122, 130, 32.69783 + 131, 131, 126, 124, 124, 125, 123, 122, 123, 127, 125, 112, 94, 105, 117, 128, 32.69784 + 130, 135, 139, 135, 125, 115, 116, 114, 110, 106, 106, 111, 116, 101, 93, 84, 32.69785 + 73, 111, 124, 136, 131, 135, 134, 136, 137, 137, 134, 135, 137, 145, 141, 137, 32.69786 + 133, 133, 133, 130, 126, 140, 133, 128, 126, 124, 122, 125, 130, 116, 113, 108, 32.69787 + 101, 95, 89, 85, 85, 88, 78, 78, 70, 76, 63, 63, 57, 59, 79, 96, 32.69788 + 99, 122, 125, 151, 140, 151, 143, 129, 110, 101, 116, 118, 99, 91, 90, 255, 32.69789 + 255, 255, 255, 255, 255, 255, 193, 159, 101, 106, 100, 104, 106, 107, 118, 121, 32.69790 + 130, 131, 131, 126, 124, 124, 124, 122, 119, 118, 122, 120, 108, 93, 93, 108, 32.69791 + 122, 124, 127, 130, 124, 113, 101, 102, 99, 90, 83, 85, 99, 112, 104, 97, 32.69792 + 88, 73, 108, 122, 133, 128, 134, 134, 134, 133, 137, 141, 142, 140, 148, 141, 32.69793 + 137, 136, 136, 136, 132, 132, 130, 122, 114, 111, 109, 108, 113, 119, 108, 107, 32.69794 + 105, 100, 94, 88, 85, 85, 86, 78, 84, 71, 78, 61, 67, 65, 60, 79, 32.69795 + 93, 107, 137, 137, 164, 149, 164, 142, 119, 108, 110, 123, 116, 89, 94, 102, 32.69796 + 255, 255, 255, 255, 255, 255, 255, 198, 162, 105, 110, 104, 105, 102, 103, 113, 32.69797 + 119, 124, 127, 127, 124, 122, 122, 125, 126, 123, 120, 120, 117, 110, 99, 80, 32.69798 + 99, 113, 117, 121, 122, 114, 101, 93, 90, 83, 64, 48, 47, 62, 77, 106, 32.69799 + 101, 92, 75, 107, 118, 128, 121, 135, 139, 135, 131, 138, 151, 153, 147, 140, 32.69800 + 141, 141, 144, 143, 138, 135, 134, 132, 127, 124, 125, 124, 122, 124, 128, 102, 32.69801 + 102, 104, 101, 96, 91, 88, 88, 76, 73, 83, 68, 75, 57, 69, 71, 67, 32.69802 + 81, 91, 111, 145, 145, 174, 159, 163, 131, 104, 100, 115, 132, 119, 85, 93, 32.69803 + 109, 255, 255, 255, 255, 255, 255, 255, 255, 153, 103, 118, 99, 102, 103, 101, 32.69804 + 108, 110, 113, 118, 123, 127, 127, 125, 125, 122, 119, 118, 119, 117, 111, 106, 32.69805 + 104, 94, 97, 103, 101, 103, 109, 107, 77, 90, 96, 75, 44, 30, 46, 67, 32.69806 + 100, 101, 82, 80, 107, 122, 120, 124, 135, 136, 137, 139, 141, 141, 139, 136, 32.69807 + 138, 141, 146, 144, 138, 134, 133, 133, 120, 118, 116, 116, 117, 116, 113, 109, 32.69808 + 107, 106, 104, 98, 92, 88, 87, 88, 80, 73, 72, 76, 73, 66, 67, 77, 32.69809 + 65, 93, 90, 111, 121, 134, 105, 105, 109, 91, 116, 126, 113, 114, 105, 99, 32.69810 + 116, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 102, 113, 99, 101, 99, 32.69811 + 96, 104, 105, 109, 114, 120, 124, 126, 123, 124, 124, 123, 122, 117, 113, 108, 32.69812 + 107, 93, 72, 66, 75, 81, 88, 86, 74, 85, 96, 104, 100, 88, 86, 98, 32.69813 + 110, 101, 96, 89, 95, 113, 123, 121, 123, 139, 137, 136, 137, 140, 141, 141, 32.69814 + 140, 138, 138, 141, 142, 140, 136, 130, 125, 118, 115, 114, 115, 117, 116, 114, 32.69815 + 110, 110, 108, 103, 96, 89, 83, 80, 81, 80, 72, 68, 72, 71, 64, 63, 32.69816 + 70, 63, 89, 86, 97, 102, 118, 113, 127, 111, 102, 130, 134, 120, 119, 112, 32.69817 + 109, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 103, 107, 101, 100, 32.69818 + 99, 91, 105, 107, 112, 117, 122, 126, 128, 126, 123, 125, 124, 119, 112, 107, 32.69819 + 105, 106, 92, 71, 65, 74, 80, 89, 89, 79, 96, 99, 103, 110, 113, 115, 32.69820 + 116, 114, 93, 82, 91, 111, 119, 125, 130, 127, 139, 138, 137, 136, 136, 138, 32.69821 + 140, 141, 143, 142, 141, 143, 144, 139, 129, 121, 116, 113, 111, 112, 117, 117, 32.69822 + 114, 111, 109, 106, 101, 95, 88, 82, 77, 76, 77, 69, 65, 69, 70, 65, 32.69823 + 64, 68, 78, 83, 71, 85, 106, 130, 128, 132, 111, 109, 130, 127, 116, 121, 32.69824 + 118, 121, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 163, 107, 99, 104, 32.69825 + 99, 99, 92, 105, 108, 113, 119, 124, 125, 129, 130, 127, 123, 117, 110, 106, 32.69826 + 103, 102, 101, 95, 88, 93, 99, 97, 100, 108, 110, 104, 102, 101, 108, 113, 32.69827 + 115, 107, 98, 100, 83, 99, 122, 120, 118, 128, 123, 133, 133, 134, 134, 134, 32.69828 + 134, 135, 136, 143, 142, 141, 141, 140, 134, 127, 121, 116, 113, 110, 110, 114, 32.69829 + 114, 111, 108, 106, 103, 98, 93, 89, 84, 79, 77, 76, 68, 64, 69, 72, 32.69830 + 71, 69, 67, 93, 91, 89, 105, 129, 145, 137, 128, 114, 108, 117, 108, 112, 32.69831 + 128, 125, 126, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 172, 114, 89, 32.69832 + 102, 96, 101, 94, 102, 105, 111, 114, 118, 120, 124, 124, 131, 120, 108, 104, 32.69833 + 104, 106, 103, 101, 95, 92, 100, 109, 104, 105, 111, 110, 107, 107, 106, 110, 32.69834 + 114, 116, 112, 106, 118, 98, 109, 125, 117, 111, 118, 114, 125, 130, 135, 138, 32.69835 + 137, 135, 135, 136, 140, 141, 140, 136, 129, 124, 123, 123, 117, 113, 111, 110, 32.69836 + 111, 110, 109, 105, 105, 100, 95, 90, 86, 82, 78, 76, 76, 70, 66, 69, 32.69837 + 71, 70, 65, 62, 98, 107, 129, 136, 137, 131, 135, 135, 124, 111, 110, 104, 32.69838 + 119, 132, 120, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 120, 32.69839 + 84, 101, 90, 97, 92, 103, 106, 112, 116, 118, 118, 121, 124, 128, 116, 105, 32.69840 + 102, 107, 110, 107, 102, 107, 93, 96, 107, 111, 112, 109, 96, 108, 110, 110, 32.69841 + 111, 110, 109, 111, 113, 119, 106, 110, 118, 118, 116, 122, 121, 123, 128, 136, 32.69842 + 140, 139, 137, 137, 137, 141, 143, 142, 136, 129, 124, 125, 128, 117, 113, 110, 32.69843 + 108, 108, 107, 106, 102, 105, 98, 91, 84, 80, 75, 72, 69, 76, 73, 69, 32.69844 + 68, 67, 65, 59, 56, 120, 116, 134, 138, 139, 129, 136, 129, 131, 118, 112, 32.69845 + 105, 120, 125, 107, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 184, 32.69846 + 129, 85, 105, 90, 95, 92, 107, 110, 116, 118, 117, 118, 122, 125, 113, 106, 32.69847 + 101, 102, 108, 111, 106, 101, 115, 102, 102, 113, 117, 117, 113, 102, 109, 113, 32.69848 + 115, 110, 104, 100, 103, 106, 106, 107, 103, 105, 119, 123, 124, 127, 120, 127, 32.69849 + 135, 138, 138, 138, 140, 143, 140, 140, 139, 135, 131, 127, 123, 122, 117, 113, 32.69850 + 108, 106, 109, 109, 106, 103, 105, 97, 86, 79, 79, 76, 72, 70, 72, 73, 32.69851 + 72, 70, 67, 65, 61, 59, 139, 113, 120, 124, 138, 133, 140, 121, 133, 122, 32.69852 + 113, 105, 115, 115, 112, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69853 + 188, 138, 92, 112, 91, 96, 94, 103, 107, 115, 116, 114, 112, 116, 120, 97, 32.69854 + 99, 100, 103, 107, 105, 102, 98, 109, 104, 113, 118, 111, 109, 116, 117, 111, 32.69855 + 115, 119, 117, 109, 106, 109, 112, 105, 113, 102, 97, 116, 119, 113, 115, 118, 32.69856 + 123, 131, 133, 133, 134, 139, 144, 132, 129, 127, 127, 127, 124, 115, 109, 115, 32.69857 + 110, 106, 104, 108, 109, 107, 104, 103, 94, 84, 78, 80, 80, 77, 76, 67, 32.69858 + 71, 73, 72, 70, 70, 69, 68, 133, 109, 127, 127, 133, 124, 141, 132, 139, 32.69859 + 129, 119, 104, 109, 114, 134, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69860 + 255, 194, 155, 95, 88, 102, 89, 93, 108, 105, 111, 118, 117, 111, 106, 107, 32.69861 + 107, 114, 113, 106, 103, 104, 107, 107, 113, 105, 104, 113, 124, 124, 118, 113, 32.69862 + 126, 131, 119, 126, 113, 124, 111, 109, 110, 102, 100, 104, 110, 112, 119, 123, 32.69863 + 111, 120, 131, 130, 130, 134, 137, 138, 136, 131, 128, 129, 123, 116, 115, 120, 32.69864 + 116, 109, 100, 101, 108, 111, 106, 97, 95, 91, 84, 75, 77, 82, 79, 70, 32.69865 + 71, 69, 73, 77, 70, 62, 70, 86, 135, 141, 134, 124, 127, 128, 129, 137, 32.69866 + 151, 114, 128, 121, 102, 107, 174, 216, 255, 255, 255, 255, 255, 255, 255, 255, 32.69867 + 255, 255, 197, 166, 105, 91, 100, 92, 98, 107, 105, 109, 113, 110, 102, 97, 32.69868 + 101, 101, 104, 103, 99, 101, 106, 111, 111, 113, 108, 110, 117, 122, 121, 121, 32.69869 + 119, 126, 131, 129, 134, 129, 133, 119, 112, 117, 110, 105, 105, 109, 108, 113, 32.69870 + 116, 110, 117, 124, 126, 128, 131, 135, 134, 131, 128, 126, 128, 122, 115, 111, 32.69871 + 113, 116, 110, 104, 104, 108, 106, 99, 91, 96, 91, 83, 74, 76, 79, 75, 32.69872 + 68, 76, 71, 70, 70, 64, 61, 74, 93, 129, 136, 133, 135, 146, 144, 129, 32.69873 + 125, 135, 119, 109, 77, 81, 164, 187, 255, 255, 255, 255, 255, 255, 255, 255, 32.69874 + 255, 255, 255, 200, 177, 114, 90, 94, 89, 97, 104, 108, 113, 114, 108, 99, 32.69875 + 99, 104, 100, 101, 98, 95, 100, 107, 110, 109, 108, 107, 112, 117, 118, 116, 32.69876 + 118, 122, 111, 115, 122, 119, 126, 121, 118, 108, 120, 114, 110, 110, 113, 111, 32.69877 + 114, 115, 106, 111, 116, 117, 124, 131, 136, 136, 132, 130, 130, 132, 127, 119, 32.69878 + 114, 113, 110, 108, 106, 106, 107, 104, 96, 90, 97, 91, 83, 76, 76, 77, 32.69879 + 73, 66, 75, 70, 70, 68, 61, 57, 69, 87, 111, 133, 146, 145, 147, 141, 32.69880 + 136, 144, 135, 108, 75, 15, 81, 191, 196, 255, 255, 255, 255, 255, 255, 255, 32.69881 + 255, 255, 255, 255, 198, 180, 122, 91, 92, 88, 92, 99, 105, 111, 111, 105, 32.69882 + 101, 105, 109, 108, 106, 102, 99, 104, 109, 108, 103, 109, 109, 113, 119, 122, 32.69883 + 116, 115, 117, 120, 119, 130, 118, 132, 122, 129, 119, 114, 111, 112, 117, 120, 32.69884 + 118, 118, 117, 104, 107, 110, 113, 123, 134, 140, 139, 133, 132, 130, 130, 126, 32.69885 + 120, 115, 112, 104, 104, 105, 105, 104, 102, 98, 96, 95, 88, 82, 77, 78, 32.69886 + 78, 74, 69, 72, 71, 73, 71, 62, 54, 58, 68, 74, 105, 125, 128, 124, 32.69887 + 118, 113, 122, 107, 56, 37, 6, 144, 182, 198, 255, 255, 255, 255, 255, 255, 32.69888 + 255, 255, 255, 255, 255, 199, 184, 130, 95, 93, 88, 86, 94, 101, 107, 105, 32.69889 + 101, 99, 103, 107, 108, 108, 105, 103, 106, 111, 110, 105, 119, 116, 119, 128, 32.69890 + 133, 127, 121, 117, 128, 130, 142, 128, 140, 127, 131, 120, 115, 114, 117, 123, 32.69891 + 124, 118, 114, 110, 108, 106, 107, 106, 115, 126, 134, 133, 131, 129, 123, 120, 32.69892 + 116, 115, 109, 106, 105, 106, 104, 102, 100, 98, 100, 100, 92, 84, 80, 79, 32.69893 + 83, 83, 79, 74, 72, 70, 71, 69, 60, 54, 56, 63, 51, 62, 66, 75, 32.69894 + 90, 83, 56, 40, 36, 5, 6, 61, 208, 182, 219, 255, 255, 255, 255, 255, 32.69895 + 255, 255, 255, 255, 255, 255, 200, 191, 143, 99, 97, 90, 88, 99, 104, 107, 32.69896 + 103, 100, 100, 105, 106, 102, 103, 100, 97, 101, 108, 112, 111, 123, 119, 121, 32.69897 + 130, 135, 132, 127, 125, 125, 133, 143, 136, 138, 127, 121, 111, 120, 118, 119, 32.69898 + 122, 122, 112, 104, 99, 111, 110, 107, 103, 106, 115, 122, 122, 131, 128, 120, 32.69899 + 115, 113, 113, 107, 103, 108, 107, 103, 99, 96, 94, 95, 94, 90, 81, 78, 32.69900 + 80, 85, 84, 81, 77, 73, 70, 67, 60, 56, 58, 65, 73, 63, 59, 41, 32.69901 + 28, 34, 33, 20, 12, 6, 7, 9, 119, 204, 188, 255, 255, 255, 255, 255, 32.69902 + 255, 255, 255, 255, 255, 255, 255, 199, 198, 152, 99, 92, 91, 89, 100, 104, 32.69903 + 105, 101, 102, 107, 111, 107, 103, 100, 92, 82, 81, 88, 99, 103, 103, 101, 32.69904 + 103, 109, 112, 113, 116, 122, 120, 131, 134, 137, 128, 132, 126, 124, 124, 120, 32.69905 + 118, 120, 119, 114, 110, 109, 114, 112, 108, 101, 100, 108, 117, 121, 128, 127, 32.69906 + 120, 115, 113, 114, 106, 98, 104, 102, 98, 96, 97, 95, 91, 87, 91, 82, 32.69907 + 76, 80, 85, 82, 78, 76, 69, 65, 62, 56, 53, 57, 66, 71, 76, 69, 32.69908 + 40, 13, 8, 10, 17, 26, 19, 18, 49, 158, 190, 186, 255, 255, 255, 255, 32.69909 + 255, 255, 255, 255, 255, 255, 255, 255, 196, 201, 155, 95, 86, 89, 90, 91, 32.69910 + 95, 96, 93, 98, 107, 110, 107, 108, 103, 88, 70, 63, 68, 81, 90, 81, 32.69911 + 81, 83, 86, 87, 90, 101, 115, 99, 108, 100, 108, 96, 117, 119, 129, 121, 32.69912 + 116, 114, 118, 121, 122, 125, 127, 112, 113, 111, 102, 101, 111, 123, 129, 122, 32.69913 + 121, 119, 114, 114, 112, 103, 91, 96, 94, 93, 95, 96, 96, 90, 85, 89, 32.69914 + 81, 75, 79, 82, 79, 75, 75, 64, 67, 66, 60, 55, 54, 55, 57, 63, 32.69915 + 54, 27, 14, 22, 26, 16, 11, 20, 1, 92, 185, 211, 255, 255, 255, 255, 32.69916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 183, 182, 91, 82, 85, 83, 32.69917 + 97, 93, 94, 101, 104, 104, 107, 112, 88, 83, 75, 64, 58, 60, 59, 57, 32.69918 + 56, 63, 69, 75, 78, 81, 82, 85, 81, 85, 86, 89, 94, 101, 112, 118, 32.69919 + 128, 122, 119, 120, 117, 114, 118, 126, 115, 107, 107, 112, 115, 113, 113, 114, 32.69920 + 131, 125, 119, 124, 129, 113, 102, 110, 99, 92, 91, 96, 99, 93, 84, 78, 32.69921 + 88, 73, 65, 76, 87, 84, 74, 71, 76, 76, 66, 57, 54, 57, 58, 58, 32.69922 + 74, 38, 17, 20, 19, 16, 14, 11, 25, 28, 145, 188, 215, 255, 255, 255, 32.69923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 186, 102, 90, 93, 32.69924 + 92, 98, 94, 97, 101, 102, 100, 102, 107, 97, 95, 91, 82, 78, 79, 77, 32.69925 + 73, 75, 72, 68, 63, 60, 63, 69, 75, 77, 75, 74, 73, 74, 77, 82, 32.69926 + 84, 104, 101, 104, 111, 116, 117, 121, 127, 119, 115, 116, 121, 121, 117, 117, 32.69927 + 120, 132, 127, 120, 122, 124, 109, 97, 101, 98, 95, 96, 100, 98, 90, 85, 32.69928 + 84, 85, 74, 70, 75, 81, 79, 71, 67, 80, 77, 63, 50, 47, 53, 60, 32.69929 + 62, 69, 35, 18, 18, 17, 12, 13, 9, 14, 48, 157, 188, 255, 255, 255, 32.69930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 186, 185, 110, 92, 32.69931 + 90, 90, 98, 94, 96, 100, 102, 100, 101, 100, 97, 100, 101, 98, 92, 91, 32.69932 + 87, 81, 83, 83, 82, 77, 71, 67, 62, 62, 63, 60, 58, 59, 62, 64, 32.69933 + 63, 61, 60, 63, 73, 90, 102, 106, 105, 102, 107, 105, 109, 112, 110, 106, 32.69934 + 107, 111, 127, 125, 117, 115, 117, 102, 91, 95, 95, 95, 98, 100, 96, 88, 32.69935 + 84, 86, 77, 76, 73, 72, 77, 79, 72, 66, 73, 72, 60, 51, 49, 55, 32.69936 + 60, 60, 58, 28, 15, 16, 15, 11, 12, 9, 35, 111, 198, 255, 255, 255, 32.69937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 185, 120, 32.69938 + 89, 82, 81, 97, 94, 96, 97, 99, 99, 99, 96, 91, 96, 104, 102, 97, 32.69939 + 95, 88, 82, 92, 96, 99, 97, 92, 84, 77, 73, 68, 64, 62, 64, 68, 32.69940 + 70, 66, 59, 66, 53, 43, 44, 58, 76, 92, 101, 105, 108, 114, 118, 114, 32.69941 + 109, 111, 118, 120, 119, 113, 111, 116, 103, 95, 99, 94, 91, 93, 95, 93, 32.69942 + 85, 80, 81, 65, 72, 74, 69, 72, 77, 74, 70, 63, 66, 63, 60, 60, 32.69943 + 62, 57, 52, 45, 19, 11, 14, 14, 12, 15, 11, 8, 128, 196, 255, 255, 32.69944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 32.69945 + 139, 99, 84, 78, 92, 91, 92, 95, 97, 99, 100, 92, 89, 97, 107, 108, 32.69946 + 104, 101, 93, 88, 106, 103, 100, 95, 89, 89, 93, 96, 93, 88, 83, 82, 32.69947 + 82, 80, 73, 65, 72, 65, 62, 64, 71, 80, 83, 82, 99, 102, 109, 113, 32.69948 + 112, 107, 111, 118, 112, 114, 110, 106, 111, 102, 95, 102, 97, 91, 88, 91, 32.69949 + 93, 87, 79, 76, 64, 74, 77, 71, 71, 75, 72, 67, 62, 63, 61, 58, 32.69950 + 61, 62, 55, 48, 31, 14, 10, 15, 14, 14, 18, 14, 10, 153, 255, 255, 32.69951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69952 + 191, 156, 109, 88, 81, 90, 91, 92, 92, 97, 101, 98, 89, 88, 97, 109, 32.69953 + 110, 108, 103, 97, 91, 99, 102, 104, 102, 97, 95, 95, 96, 102, 99, 96, 32.69954 + 96, 94, 90, 86, 80, 76, 82, 90, 94, 98, 94, 83, 72, 92, 95, 99, 32.69955 + 103, 103, 103, 107, 112, 108, 112, 107, 102, 104, 97, 92, 97, 101, 92, 87, 32.69956 + 89, 93, 86, 77, 72, 71, 76, 78, 76, 71, 67, 62, 60, 64, 61, 55, 32.69957 + 50, 54, 59, 56, 53, 24, 10, 11, 16, 14, 15, 19, 15, 50, 192, 255, 32.69958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69959 + 255, 255, 174, 122, 96, 83, 90, 91, 91, 92, 96, 101, 96, 85, 84, 95, 32.69960 + 105, 107, 104, 101, 98, 93, 89, 95, 104, 107, 105, 100, 94, 91, 101, 101, 32.69961 + 100, 99, 96, 93, 93, 90, 95, 91, 82, 73, 76, 89, 99, 104, 105, 104, 32.69962 + 105, 107, 110, 111, 116, 119, 104, 112, 107, 99, 99, 94, 89, 95, 98, 94, 32.69963 + 90, 90, 89, 81, 74, 71, 80, 78, 78, 80, 74, 64, 57, 57, 60, 57, 32.69964 + 51, 47, 54, 62, 61, 56, 22, 14, 17, 21, 15, 15, 18, 11, 58, 189, 32.69965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69966 + 255, 255, 255, 233, 134, 104, 90, 93, 93, 93, 91, 95, 99, 93, 80, 84, 32.69967 + 95, 106, 106, 104, 102, 97, 95, 89, 92, 92, 93, 93, 94, 98, 101, 108, 32.69968 + 107, 105, 98, 90, 86, 83, 82, 66, 75, 84, 88, 91, 98, 97, 95, 105, 32.69969 + 102, 98, 102, 106, 107, 109, 113, 103, 111, 106, 99, 100, 95, 91, 98, 95, 32.69970 + 93, 91, 91, 83, 72, 68, 72, 81, 75, 76, 81, 77, 64, 56, 59, 54, 32.69971 + 54, 52, 54, 64, 69, 64, 56, 24, 19, 20, 23, 17, 14, 16, 9, 92, 32.69972 + 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69973 + 255, 255, 255, 255, 255, 177, 138, 99, 73, 90, 75, 105, 87, 79, 90, 94, 32.69974 + 77, 89, 97, 104, 109, 97, 92, 104, 81, 86, 86, 86, 90, 93, 86, 76, 32.69975 + 84, 86, 85, 81, 76, 78, 84, 91, 75, 80, 85, 92, 98, 101, 100, 96, 32.69976 + 93, 102, 94, 111, 101, 117, 108, 114, 111, 105, 98, 97, 100, 101, 98, 95, 32.69977 + 95, 102, 86, 85, 86, 83, 81, 61, 56, 67, 77, 74, 67, 62, 59, 56, 32.69978 + 47, 48, 48, 55, 65, 68, 58, 48, 19, 22, 20, 22, 29, 21, 14, 22, 32.69979 + 99, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69980 + 255, 255, 255, 255, 255, 255, 255, 148, 113, 86, 77, 87, 88, 92, 84, 81, 32.69981 + 87, 88, 87, 87, 96, 110, 106, 95, 97, 93, 95, 93, 87, 86, 87, 82, 32.69982 + 75, 74, 76, 78, 79, 80, 80, 81, 82, 92, 97, 103, 103, 104, 104, 104, 32.69983 + 99, 94, 102, 96, 108, 99, 111, 104, 107, 110, 105, 100, 97, 96, 95, 91, 32.69984 + 89, 93, 97, 84, 81, 76, 69, 77, 67, 72, 76, 77, 71, 65, 61, 56, 32.69985 + 49, 52, 51, 51, 56, 61, 63, 53, 40, 19, 22, 15, 10, 13, 11, 11, 32.69986 + 21, 94, 197, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69987 + 255, 255, 255, 255, 255, 255, 255, 255, 162, 134, 97, 64, 90, 74, 96, 90, 32.69988 + 75, 78, 90, 89, 87, 92, 107, 105, 96, 98, 101, 101, 98, 90, 85, 84, 32.69989 + 83, 81, 88, 82, 80, 82, 89, 94, 98, 100, 110, 115, 118, 112, 108, 105, 32.69990 + 104, 100, 99, 105, 101, 107, 100, 107, 102, 102, 104, 101, 98, 95, 92, 89, 32.69991 + 87, 86, 88, 92, 80, 78, 67, 56, 72, 75, 78, 76, 71, 63, 59, 57, 32.69992 + 51, 43, 59, 57, 57, 58, 62, 60, 48, 37, 18, 28, 25, 17, 19, 16, 32.69993 + 8, 9, 79, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.69994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 151, 96, 69, 79, 72, 90, 32.69995 + 87, 76, 78, 80, 92, 97, 99, 101, 98, 97, 108, 104, 103, 99, 90, 86, 32.69996 + 84, 92, 93, 93, 94, 97, 102, 106, 112, 115, 116, 117, 122, 124, 116, 104, 32.69997 + 100, 99, 99, 103, 104, 103, 106, 104, 104, 101, 102, 97, 96, 96, 92, 91, 32.69998 + 86, 86, 88, 87, 86, 73, 76, 66, 51, 68, 76, 69, 68, 65, 57, 53, 32.69999 + 53, 52, 46, 61, 61, 60, 62, 64, 60, 48, 36, 6, 18, 17, 14, 21, 32.70000 + 19, 8, 3, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 168, 95, 87, 62, 82, 32.70002 + 80, 80, 84, 80, 78, 92, 99, 99, 103, 101, 99, 109, 103, 102, 99, 92, 32.70003 + 88, 87, 96, 101, 81, 92, 108, 119, 121, 118, 115, 114, 116, 120, 120, 110, 32.70004 + 100, 97, 97, 96, 100, 100, 102, 101, 104, 100, 102, 100, 96, 94, 94, 90, 32.70005 + 88, 84, 84, 85, 85, 82, 70, 76, 71, 58, 70, 72, 63, 68, 69, 62, 32.70006 + 55, 55, 57, 56, 58, 58, 61, 61, 63, 60, 47, 37, 19, 25, 17, 13, 32.70007 + 24, 27, 21, 21, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 105, 61, 32.70009 + 84, 71, 72, 84, 83, 85, 90, 88, 92, 109, 112, 103, 101, 106, 100, 96, 32.70010 + 93, 90, 89, 96, 100, 93, 98, 107, 110, 109, 111, 117, 123, 111, 114, 112, 32.70011 + 103, 98, 95, 98, 95, 96, 92, 98, 92, 100, 93, 98, 94, 98, 96, 92, 32.70012 + 86, 83, 81, 80, 80, 82, 80, 66, 71, 71, 62, 71, 66, 58, 64, 67, 32.70013 + 59, 52, 53, 58, 59, 54, 54, 58, 60, 61, 56, 44, 34, 26, 31, 27, 32.70014 + 26, 31, 23, 15, 20, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 110, 32.70016 + 78, 74, 69, 69, 76, 79, 83, 88, 84, 85, 103, 110, 104, 100, 103, 97, 32.70017 + 93, 94, 94, 92, 96, 98, 106, 105, 104, 103, 104, 110, 121, 129, 110, 111, 32.70018 + 106, 98, 97, 97, 99, 95, 96, 90, 99, 89, 100, 87, 94, 89, 99, 92, 32.70019 + 84, 80, 80, 80, 79, 77, 75, 80, 64, 64, 63, 61, 71, 62, 60, 62, 32.70020 + 58, 51, 50, 56, 64, 63, 60, 60, 64, 63, 62, 55, 43, 33, 21, 24, 32.70021 + 22, 23, 22, 15, 24, 52, 168, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70023 + 110, 99, 61, 70, 69, 64, 74, 72, 89, 90, 85, 92, 98, 102, 112, 101, 32.70024 + 92, 89, 94, 97, 95, 96, 98, 95, 100, 108, 116, 120, 118, 113, 107, 108, 32.70025 + 107, 102, 95, 94, 97, 98, 95, 99, 94, 103, 88, 101, 87, 93, 87, 94, 32.70026 + 85, 77, 74, 77, 80, 80, 78, 68, 77, 62, 55, 55, 56, 71, 61, 65, 32.70027 + 62, 54, 48, 52, 64, 72, 70, 68, 68, 71, 68, 67, 57, 44, 32, 44, 32.70028 + 36, 24, 19, 23, 39, 91, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70030 + 255, 125, 113, 89, 72, 79, 66, 67, 70, 85, 82, 79, 91, 90, 88, 106, 32.70031 + 107, 102, 100, 102, 103, 98, 96, 98, 99, 100, 102, 106, 108, 104, 96, 90, 32.70032 + 94, 99, 90, 95, 95, 89, 98, 94, 94, 89, 88, 91, 87, 83, 82, 89, 32.70033 + 77, 77, 68, 66, 79, 82, 77, 77, 64, 67, 53, 59, 48, 67, 60, 61, 32.70034 + 63, 57, 51, 56, 60, 63, 65, 67, 67, 62, 63, 66, 69, 62, 46, 32, 32.70035 + 36, 23, 12, 12, 27, 35, 130, 200, 255, 255, 255, 255, 255, 255, 255, 255, 32.70036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70037 + 255, 255, 255, 115, 92, 74, 65, 66, 57, 60, 74, 78, 80, 92, 91, 90, 32.70038 + 104, 106, 101, 100, 101, 101, 98, 98, 101, 102, 102, 102, 106, 109, 109, 106, 32.70039 + 103, 97, 103, 93, 97, 96, 90, 98, 92, 93, 91, 87, 89, 86, 82, 82, 32.70040 + 87, 88, 86, 76, 71, 81, 80, 69, 70, 66, 66, 56, 55, 53, 65, 65, 32.70041 + 62, 66, 60, 57, 61, 64, 65, 68, 71, 74, 75, 76, 73, 71, 67, 54, 32.70042 + 42, 20, 27, 10, 14, 23, 91, 157, 255, 255, 255, 255, 255, 255, 255, 255, 32.70043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70044 + 255, 255, 255, 255, 129, 103, 85, 61, 71, 59, 61, 75, 80, 84, 90, 86, 32.70045 + 82, 88, 101, 98, 98, 101, 103, 101, 103, 107, 109, 107, 105, 106, 108, 111, 32.70046 + 111, 111, 100, 105, 95, 100, 98, 91, 98, 92, 93, 88, 86, 86, 83, 81, 32.70047 + 82, 84, 77, 79, 73, 75, 84, 84, 77, 77, 67, 62, 60, 49, 56, 57, 32.70048 + 62, 58, 66, 63, 62, 67, 71, 70, 72, 73, 75, 84, 85, 74, 67, 66, 32.70049 + 57, 46, 10, 31, 8, 13, 23, 155, 255, 255, 255, 255, 255, 255, 255, 255, 32.70050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70051 + 255, 255, 255, 255, 255, 219, 108, 92, 72, 71, 68, 63, 72, 80, 84, 87, 32.70052 + 84, 81, 82, 95, 94, 99, 103, 106, 104, 105, 109, 115, 113, 109, 107, 106, 32.70053 + 106, 106, 106, 98, 104, 95, 100, 99, 91, 98, 92, 91, 87, 83, 82, 80, 32.70054 + 80, 81, 83, 65, 70, 68, 74, 87, 86, 79, 81, 70, 59, 61, 44, 58, 32.70055 + 51, 62, 55, 63, 61, 63, 69, 72, 71, 72, 73, 71, 81, 82, 69, 63, 32.70056 + 64, 55, 39, 12, 20, 6, 22, 46, 185, 255, 255, 255, 255, 255, 255, 255, 32.70057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70058 + 255, 255, 255, 255, 255, 255, 255, 116, 97, 84, 58, 68, 58, 62, 73, 82, 32.70059 + 86, 90, 93, 91, 91, 93, 102, 109, 109, 105, 105, 108, 113, 112, 111, 108, 32.70060 + 105, 102, 100, 100, 96, 103, 95, 101, 100, 92, 99, 92, 87, 84, 79, 77, 32.70061 + 77, 80, 81, 80, 72, 78, 76, 77, 86, 82, 73, 73, 75, 64, 66, 50, 32.70062 + 63, 54, 64, 59, 62, 63, 68, 74, 76, 74, 73, 74, 68, 76, 76, 67, 32.70063 + 65, 67, 56, 41, 21, 8, 22, 59, 103, 255, 255, 255, 255, 255, 255, 255, 32.70064 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70065 + 255, 255, 255, 255, 255, 255, 255, 255, 217, 112, 98, 60, 69, 64, 61, 72, 32.70066 + 82, 82, 88, 94, 88, 87, 91, 101, 108, 107, 102, 102, 106, 103, 105, 106, 32.70067 + 105, 102, 99, 98, 98, 95, 102, 94, 100, 99, 90, 97, 89, 84, 81, 76, 32.70068 + 72, 74, 80, 82, 79, 80, 86, 83, 82, 88, 80, 71, 73, 76, 66, 60, 32.70069 + 53, 59, 55, 60, 61, 68, 68, 73, 79, 80, 77, 76, 78, 73, 73, 72, 32.70070 + 72, 74, 75, 67, 60, 35, 23, 60, 119, 164, 255, 255, 255, 255, 255, 255, 32.70071 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 136, 103, 78, 67, 70, 64, 32.70073 + 76, 86, 79, 84, 91, 80, 87, 89, 97, 101, 101, 97, 100, 106, 99, 102, 32.70074 + 103, 103, 100, 98, 99, 100, 98, 105, 96, 101, 98, 88, 93, 85, 80, 78, 32.70075 + 73, 69, 72, 81, 83, 79, 82, 88, 86, 84, 89, 80, 72, 76, 75, 68, 32.70076 + 55, 57, 53, 58, 55, 60, 72, 72, 76, 82, 81, 77, 79, 82, 75, 71, 32.70077 + 70, 75, 76, 75, 77, 84, 65, 76, 110, 168, 191, 255, 255, 255, 255, 255, 32.70078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 101, 96, 65, 66, 32.70080 + 57, 73, 86, 80, 86, 94, 80, 88, 89, 93, 95, 94, 92, 97, 105, 102, 32.70081 + 103, 104, 101, 98, 96, 99, 102, 102, 108, 99, 102, 98, 87, 90, 81, 78, 32.70082 + 76, 71, 67, 71, 81, 84, 79, 86, 92, 87, 83, 85, 76, 65, 69, 79, 32.70083 + 74, 54, 65, 53, 63, 57, 65, 72, 72, 77, 81, 79, 75, 77, 82, 72, 32.70084 + 66, 67, 74, 73, 70, 80, 98, 95, 127, 143, 192, 212, 255, 255, 255, 255, 32.70085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121, 95, 95, 32.70087 + 60, 68, 74, 81, 90, 84, 82, 92, 81, 78, 87, 94, 93, 99, 107, 103, 32.70088 + 107, 110, 105, 96, 97, 106, 106, 99, 102, 101, 97, 92, 95, 99, 95, 84, 32.70089 + 77, 75, 69, 63, 72, 85, 88, 82, 93, 86, 79, 79, 81, 77, 64, 53, 32.70090 + 65, 64, 60, 60, 58, 59, 65, 75, 86, 82, 78, 79, 82, 83, 79, 75, 32.70091 + 74, 63, 73, 72, 65, 67, 81, 121, 163, 181, 189, 189, 255, 255, 255, 255, 32.70092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 107, 32.70094 + 94, 79, 68, 64, 76, 89, 83, 83, 95, 82, 78, 86, 91, 88, 93, 100, 32.70095 + 97, 104, 105, 103, 99, 99, 103, 104, 101, 105, 106, 101, 94, 91, 91, 85, 32.70096 + 77, 75, 71, 67, 66, 74, 83, 86, 83, 78, 81, 82, 78, 69, 61, 58, 32.70097 + 58, 52, 53, 53, 56, 58, 60, 70, 80, 83, 81, 81, 84, 88, 89, 85, 32.70098 + 81, 79, 63, 71, 73, 70, 74, 83, 116, 177, 191, 192, 255, 255, 255, 255, 32.70099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70101 + 132, 106, 96, 71, 61, 77, 90, 85, 84, 91, 92, 86, 90, 92, 90, 95, 32.70102 + 101, 97, 102, 100, 101, 104, 103, 100, 102, 106, 107, 109, 106, 98, 90, 85, 32.70103 + 80, 73, 72, 65, 64, 70, 78, 80, 81, 82, 75, 78, 80, 75, 66, 57, 32.70104 + 55, 55, 55, 55, 58, 63, 62, 65, 73, 81, 77, 78, 82, 86, 85, 84, 32.70105 + 80, 78, 76, 62, 68, 70, 71, 76, 79, 103, 188, 198, 255, 255, 255, 255, 32.70106 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70107 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70108 + 255, 255, 129, 101, 76, 67, 77, 85, 87, 87, 83, 94, 87, 91, 92, 89, 32.70109 + 94, 100, 96, 97, 93, 97, 105, 104, 97, 98, 106, 102, 105, 106, 100, 90, 32.70110 + 83, 80, 78, 68, 60, 62, 73, 80, 76, 75, 80, 80, 74, 68, 66, 69, 32.70111 + 64, 54, 45, 57, 58, 65, 69, 71, 71, 77, 82, 81, 82, 85, 85, 83, 32.70112 + 79, 76, 75, 74, 65, 72, 72, 72, 78, 78, 96, 186, 214, 255, 255, 255, 32.70113 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70114 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70115 + 255, 255, 255, 222, 112, 89, 77, 72, 71, 83, 94, 84, 87, 81, 87, 89, 32.70116 + 85, 89, 95, 91, 93, 89, 93, 102, 102, 96, 96, 103, 100, 103, 104, 100, 32.70117 + 90, 82, 82, 83, 65, 58, 62, 73, 78, 72, 70, 74, 73, 66, 61, 59, 32.70118 + 60, 58, 52, 45, 48, 51, 63, 72, 78, 77, 83, 88, 88, 88, 88, 85, 32.70119 + 82, 79, 81, 82, 74, 71, 81, 75, 73, 80, 80, 95, 180, 255, 255, 255, 32.70120 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70122 + 255, 255, 255, 255, 255, 141, 104, 85, 71, 58, 72, 93, 88, 84, 79, 86, 32.70123 + 90, 85, 88, 93, 88, 91, 88, 89, 95, 99, 97, 96, 97, 101, 100, 100, 32.70124 + 96, 87, 78, 78, 81, 63, 61, 65, 71, 73, 69, 65, 66, 53, 56, 59, 32.70125 + 53, 46, 44, 51, 58, 61, 65, 75, 86, 87, 84, 84, 88, 87, 85, 82, 32.70126 + 80, 81, 81, 83, 83, 71, 70, 82, 71, 70, 78, 77, 88, 205, 255, 255, 32.70127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70129 + 255, 255, 255, 255, 255, 255, 226, 114, 92, 88, 66, 63, 82, 84, 84, 80, 32.70130 + 88, 92, 87, 88, 92, 86, 90, 89, 87, 88, 94, 100, 97, 90, 98, 94, 32.70131 + 91, 88, 81, 73, 73, 77, 61, 64, 69, 67, 68, 66, 65, 60, 49, 54, 32.70132 + 56, 52, 47, 51, 66, 75, 81, 83, 93, 100, 96, 90, 84, 85, 86, 81, 32.70133 + 77, 78, 81, 81, 79, 76, 75, 71, 79, 68, 70, 83, 78, 81, 255, 255, 32.70134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70136 + 255, 255, 255, 255, 255, 255, 255, 255, 116, 95, 108, 83, 60, 67, 72, 78, 32.70137 + 76, 83, 89, 83, 83, 85, 78, 90, 90, 86, 83, 92, 103, 99, 86, 93, 32.70138 + 87, 81, 81, 76, 68, 69, 76, 63, 72, 74, 69, 66, 67, 63, 55, 58, 32.70139 + 52, 47, 48, 57, 69, 78, 81, 75, 81, 91, 101, 100, 92, 88, 89, 93, 32.70140 + 87, 82, 84, 85, 84, 76, 69, 87, 80, 83, 72, 80, 95, 86, 83, 255, 32.70141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 234, 149, 104, 97, 90, 71, 31, 32.70144 + 62, 69, 78, 83, 83, 82, 87, 91, 85, 81, 82, 83, 83, 81, 80, 83, 32.70145 + 86, 83, 77, 73, 69, 68, 68, 71, 67, 72, 75, 70, 63, 52, 41, 37, 32.70146 + 50, 61, 65, 64, 71, 76, 83, 96, 84, 90, 96, 94, 91, 90, 93, 96, 32.70147 + 92, 102, 101, 86, 80, 85, 82, 69, 79, 83, 85, 82, 81, 81, 86, 92, 32.70148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 128, 105, 99, 85, 32.70151 + 58, 67, 70, 75, 77, 81, 79, 78, 75, 82, 81, 86, 92, 91, 85, 79, 32.70152 + 80, 79, 77, 76, 71, 66, 57, 49, 46, 64, 60, 50, 40, 37, 43, 53, 32.70153 + 60, 57, 70, 76, 77, 82, 78, 79, 89, 87, 89, 93, 97, 98, 100, 100, 32.70154 + 101, 89, 96, 93, 85, 81, 85, 82, 73, 73, 75, 81, 82, 84, 84, 86, 32.70155 + 88, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 105, 97, 32.70158 + 86, 76, 56, 53, 51, 56, 68, 75, 80, 79, 88, 78, 69, 65, 66, 69, 32.70159 + 80, 89, 68, 70, 72, 72, 71, 66, 60, 59, 51, 53, 52, 51, 55, 63, 32.70160 + 72, 78, 71, 84, 87, 86, 91, 86, 85, 93, 98, 98, 100, 104, 108, 110, 32.70161 + 105, 103, 97, 94, 88, 87, 86, 84, 76, 72, 74, 74, 80, 82, 84, 85, 32.70162 + 82, 82, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 105, 32.70165 + 94, 88, 90, 89, 75, 59, 48, 45, 45, 48, 48, 48, 48, 52, 58, 59, 32.70166 + 56, 54, 55, 71, 67, 59, 52, 44, 39, 38, 38, 62, 70, 81, 89, 93, 32.70167 + 92, 89, 86, 87, 93, 90, 86, 92, 92, 94, 106, 108, 109, 111, 111, 112, 32.70168 + 110, 105, 102, 102, 91, 84, 89, 91, 84, 77, 79, 82, 79, 79, 81, 84, 32.70169 + 85, 81, 77, 96, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70170 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70171 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70172 + 102, 94, 103, 103, 112, 101, 85, 68, 54, 45, 40, 40, 46, 44, 45, 47, 32.70173 + 47, 44, 45, 49, 43, 43, 44, 49, 58, 69, 80, 88, 94, 97, 100, 99, 32.70174 + 98, 96, 95, 95, 93, 99, 96, 94, 101, 101, 104, 114, 108, 112, 115, 113, 32.70175 + 108, 101, 101, 102, 100, 88, 84, 92, 95, 89, 85, 88, 87, 83, 81, 81, 32.70176 + 85, 85, 84, 81, 78, 184, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70177 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70178 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70179 + 255, 255, 255, 104, 94, 97, 97, 97, 95, 89, 84, 79, 79, 92, 80, 66, 32.70180 + 57, 54, 59, 72, 86, 101, 103, 103, 104, 104, 104, 102, 102, 112, 112, 108, 32.70181 + 105, 101, 97, 97, 96, 96, 105, 107, 108, 116, 113, 109, 115, 104, 111, 114, 32.70182 + 111, 101, 97, 100, 104, 106, 96, 91, 94, 92, 86, 82, 84, 84, 82, 82, 32.70183 + 83, 84, 87, 90, 90, 70, 119, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70184 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70185 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70186 + 255, 255, 255, 255, 255, 255, 105, 103, 104, 105, 107, 103, 93, 88, 94, 95, 32.70187 + 96, 101, 99, 92, 87, 88, 104, 110, 115, 120, 125, 126, 126, 124, 111, 110, 32.70188 + 110, 107, 105, 102, 102, 102, 107, 115, 116, 115, 122, 117, 111, 116, 114, 115, 32.70189 + 113, 109, 104, 102, 103, 105, 107, 103, 97, 93, 89, 85, 83, 83, 80, 81, 32.70190 + 85, 85, 86, 85, 89, 92, 73, 95, 173, 255, 255, 255, 255, 255, 255, 255, 32.70191 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70192 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70193 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 106, 99, 94, 91, 32.70194 + 94, 97, 101, 102, 98, 96, 97, 103, 107, 109, 114, 117, 121, 122, 119, 114, 32.70195 + 106, 101, 93, 94, 101, 112, 121, 120, 122, 116, 110, 115, 113, 109, 116, 128, 32.70196 + 125, 118, 113, 110, 108, 106, 104, 90, 93, 91, 89, 88, 92, 95, 96, 78, 32.70197 + 83, 89, 89, 85, 82, 84, 86, 80, 85, 156, 255, 255, 255, 255, 255, 255, 32.70198 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70199 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70200 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70201 + 255, 206, 105, 102, 99, 97, 94, 93, 97, 99, 103, 108, 109, 110, 107, 103, 32.70202 + 99, 97, 108, 117, 120, 113, 113, 117, 121, 112, 110, 116, 121, 116, 112, 111, 32.70203 + 121, 122, 117, 109, 107, 108, 107, 100, 100, 95, 90, 90, 94, 96, 94, 91, 32.70204 + 83, 86, 86, 83, 83, 88, 91, 91, 75, 85, 101, 195, 255, 255, 255, 255, 32.70205 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70206 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70207 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70208 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 104, 107, 106, 32.70209 + 104, 113, 109, 112, 114, 112, 106, 105, 109, 119, 115, 113, 121, 123, 121, 119, 32.70210 + 120, 122, 123, 119, 112, 110, 110, 109, 102, 103, 99, 94, 93, 96, 96, 92, 32.70211 + 88, 93, 94, 91, 84, 82, 83, 85, 84, 73, 64, 85, 158, 255, 255, 255, 32.70212 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70213 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70214 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70215 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70216 + 255, 255, 255, 204, 104, 108, 109, 108, 113, 120, 122, 120, 121, 125, 127, 125, 32.70217 + 124, 126, 118, 118, 115, 110, 110, 110, 106, 100, 101, 98, 96, 96, 100, 100, 32.70218 + 96, 90, 99, 99, 93, 85, 81, 84, 82, 81, 68, 60, 85, 128, 255, 255, 32.70219 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70220 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70221 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70223 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211, 32.70224 + 121, 120, 121, 115, 113, 111, 108, 108, 106, 101, 97, 95, 94, 94, 97, 102, 32.70225 + 102, 100, 98, 98, 98, 95, 90, 87, 143, 255, 255, 255, 255, 255, 255, 255, 32.70226 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70227 + 255, 255 }; 32.70228 +/* Define image 'heart' of size 100x100x1x3 and type 'const unsigned char' */ 32.70229 +const unsigned char data_heart[] = { 32.70230 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70231 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70232 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70233 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 190, 158, 0, 0, 32.70234 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.70235 + 0, 0, 106, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70237 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70238 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70239 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 68, 32.70240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 66, 125, 125, 125, 125, 125, 125, 32.70241 + 42, 0, 0, 0, 0, 0, 0, 3, 125, 190, 255, 255, 255, 255, 255, 255, 32.70242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70243 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70244 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70245 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.70246 + 153, 60, 0, 0, 0, 3, 3, 121, 187, 187, 187, 187, 187, 219, 246, 246, 32.70247 + 246, 246, 246, 247, 207, 188, 188, 188, 31, 3, 1, 0, 0, 30, 60, 247, 32.70248 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70249 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70250 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70251 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70252 + 232, 186, 179, 0, 0, 0, 0, 0, 46, 234, 244, 244, 239, 239, 239, 240, 32.70253 + 241, 244, 244, 244, 244, 244, 244, 246, 246, 246, 246, 247, 247, 247, 146, 13, 32.70254 + 0, 0, 0, 39, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70256 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70257 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70258 + 255, 255, 255, 242, 81, 0, 0, 0, 0, 0, 28, 127, 206, 242, 239, 239, 32.70259 + 239, 239, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 245, 32.70260 + 245, 247, 247, 153, 94, 0, 0, 0, 54, 213, 255, 255, 255, 255, 255, 255, 32.70261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70262 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70263 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70264 + 255, 255, 255, 255, 255, 252, 129, 51, 0, 0, 5, 7, 101, 191, 202, 239, 32.70265 + 239, 239, 239, 239, 239, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70266 + 244, 244, 244, 244, 244, 245, 246, 246, 232, 98, 1, 0, 0, 39, 234, 255, 32.70267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70268 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70269 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70270 + 255, 255, 255, 255, 255, 255, 255, 255, 244, 112, 0, 0, 0, 39, 211, 247, 32.70271 + 245, 240, 239, 239, 239, 239, 239, 239, 239, 244, 244, 244, 244, 244, 244, 244, 32.70272 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 245, 246, 247, 115, 1, 32.70273 + 0, 0, 29, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70274 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70275 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70276 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 100, 0, 0, 0, 32.70277 + 43, 197, 246, 242, 240, 239, 239, 239, 239, 239, 239, 239, 239, 244, 244, 244, 32.70278 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70279 + 244, 245, 246, 106, 0, 0, 0, 101, 255, 255, 255, 255, 255, 255, 255, 255, 32.70280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70281 + 255, 249, 243, 243, 243, 243, 79, 53, 53, 53, 53, 53, 53, 53, 53, 53, 32.70282 + 86, 243, 243, 243, 243, 243, 243, 243, 249, 255, 255, 255, 255, 252, 137, 0, 32.70283 + 0, 0, 0, 26, 212, 246, 246, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70284 + 239, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70285 + 244, 244, 244, 244, 244, 244, 244, 235, 112, 3, 0, 21, 173, 253, 255, 255, 32.70286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70287 + 255, 255, 255, 255, 181, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.70288 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 180, 255, 255, 32.70289 + 255, 204, 0, 0, 0, 0, 45, 221, 247, 242, 239, 239, 239, 239, 239, 239, 32.70290 + 239, 239, 239, 239, 239, 240, 243, 244, 244, 244, 243, 242, 243, 244, 244, 244, 32.70291 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 246, 127, 5, 0, 32.70292 + 0, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70293 + 255, 255, 255, 255, 255, 255, 185, 114, 3, 0, 0, 0, 0, 0, 0, 44, 32.70294 + 133, 134, 134, 134, 134, 134, 134, 40, 0, 0, 0, 0, 0, 0, 0, 0, 32.70295 + 0, 1, 114, 182, 255, 96, 0, 0, 19, 136, 204, 247, 245, 240, 239, 239, 32.70296 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 241, 241, 241, 241, 239, 32.70297 + 240, 241, 241, 242, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70298 + 244, 246, 18, 0, 0, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70299 + 255, 255, 255, 255, 255, 255, 255, 246, 235, 49, 24, 0, 0, 6, 14, 41, 32.70300 + 192, 192, 193, 212, 243, 244, 244, 244, 244, 244, 244, 210, 196, 196, 196, 196, 32.70301 + 197, 198, 45, 14, 6, 0, 0, 24, 49, 1, 0, 0, 187, 247, 247, 246, 32.70302 + 240, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70303 + 239, 239, 239, 239, 239, 239, 239, 239, 242, 243, 244, 244, 244, 244, 244, 244, 32.70304 + 244, 244, 244, 244, 244, 244, 172, 8, 0, 5, 114, 248, 255, 255, 255, 255, 32.70305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 78, 0, 0, 0, 0, 32.70306 + 72, 147, 239, 239, 239, 239, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70307 + 244, 244, 244, 244, 244, 241, 239, 245, 155, 17, 0, 0, 0, 0, 0, 52, 32.70308 + 231, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70309 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 242, 244, 244, 32.70310 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 148, 0, 0, 0, 147, 32.70311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 75, 0, 32.70312 + 0, 0, 67, 135, 235, 239, 239, 239, 240, 243, 244, 244, 244, 244, 244, 244, 32.70313 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 242, 242, 242, 160, 0, 0, 32.70314 + 0, 0, 0, 165, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 239, 32.70315 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70316 + 239, 239, 242, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 203, 32.70317 + 51, 0, 0, 64, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 32.70318 + 121, 42, 0, 0, 0, 64, 217, 239, 239, 239, 239, 239, 240, 244, 244, 244, 32.70319 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 243, 32.70320 + 241, 244, 155, 9, 0, 0, 0, 165, 247, 247, 247, 246, 239, 239, 239, 239, 32.70321 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70322 + 239, 239, 239, 239, 239, 239, 239, 242, 244, 244, 244, 244, 244, 244, 244, 244, 32.70323 + 244, 244, 244, 245, 218, 26, 0, 0, 193, 255, 255, 255, 255, 255, 255, 255, 32.70324 + 255, 255, 244, 108, 0, 0, 0, 43, 82, 239, 239, 239, 239, 239, 239, 239, 32.70325 + 240, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70326 + 244, 244, 244, 244, 244, 241, 242, 165, 22, 0, 0, 165, 247, 247, 247, 246, 32.70327 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70328 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 243, 244, 244, 244, 32.70329 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 93, 0, 0, 13, 255, 255, 255, 32.70330 + 255, 255, 255, 255, 255, 255, 108, 0, 0, 0, 43, 194, 239, 239, 239, 239, 32.70331 + 239, 239, 239, 239, 240, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70332 + 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 246, 67, 0, 0, 165, 32.70333 + 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70334 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70335 + 241, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 240, 219, 0, 0, 32.70336 + 13, 255, 255, 255, 255, 255, 255, 255, 255, 240, 24, 0, 0, 29, 196, 223, 32.70337 + 223, 223, 223, 223, 237, 239, 239, 239, 239, 242, 243, 244, 244, 243, 242, 239, 32.70338 + 239, 239, 239, 239, 240, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70339 + 212, 28, 22, 173, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 239, 32.70340 + 239, 239, 239, 239, 239, 239, 239, 239, 241, 242, 239, 239, 239, 239, 239, 239, 32.70341 + 239, 239, 239, 239, 239, 243, 244, 244, 244, 244, 244, 244, 244, 244, 244, 244, 32.70342 + 240, 241, 135, 0, 2, 103, 255, 255, 255, 255, 255, 255, 218, 57, 0, 0, 32.70343 + 45, 197, 221, 221, 221, 221, 221, 221, 223, 232, 232, 232, 232, 236, 241, 242, 32.70344 + 242, 242, 239, 239, 239, 239, 239, 239, 239, 240, 243, 244, 244, 244, 244, 244, 32.70345 + 244, 244, 244, 244, 240, 244, 247, 247, 247, 247, 247, 247, 245, 240, 239, 239, 32.70346 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 244, 247, 247, 247, 247, 245, 32.70347 + 241, 239, 239, 239, 239, 239, 239, 239, 239, 240, 243, 244, 244, 244, 244, 244, 32.70348 + 244, 244, 244, 244, 240, 239, 162, 0, 0, 73, 255, 255, 255, 255, 255, 227, 32.70349 + 59, 0, 0, 48, 185, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70350 + 221, 225, 237, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 241, 32.70351 + 244, 244, 244, 244, 244, 244, 244, 244, 240, 239, 244, 247, 247, 247, 247, 247, 32.70352 + 247, 242, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 247, 247, 247, 32.70353 + 247, 247, 247, 247, 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 241, 244, 32.70354 + 244, 244, 244, 244, 244, 244, 244, 244, 240, 239, 209, 61, 0, 73, 255, 255, 32.70355 + 255, 255, 255, 187, 0, 0, 2, 95, 221, 221, 221, 221, 221, 221, 221, 221, 32.70356 + 221, 221, 221, 221, 221, 221, 223, 228, 239, 239, 239, 239, 239, 239, 239, 239, 32.70357 + 239, 239, 239, 239, 241, 243, 244, 244, 244, 244, 244, 244, 240, 239, 242, 247, 32.70358 + 247, 247, 247, 247, 247, 246, 245, 239, 239, 239, 239, 239, 239, 239, 239, 243, 32.70359 + 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 245, 245, 241, 239, 239, 239, 32.70360 + 239, 239, 239, 242, 244, 244, 244, 244, 244, 244, 243, 241, 239, 239, 230, 90, 32.70361 + 0, 11, 152, 255, 255, 255, 255, 13, 0, 0, 89, 221, 221, 221, 221, 221, 32.70362 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 224, 236, 239, 239, 239, 32.70363 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 243, 244, 244, 244, 244, 243, 32.70364 + 239, 239, 242, 247, 247, 247, 247, 247, 247, 247, 247, 245, 241, 241, 241, 241, 32.70365 + 241, 241, 243, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70366 + 247, 246, 240, 239, 239, 239, 239, 239, 242, 244, 244, 244, 244, 242, 241, 239, 32.70367 + 239, 239, 156, 0, 0, 0, 134, 255, 255, 255, 255, 13, 0, 0, 197, 221, 32.70368 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70369 + 224, 236, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 244, 32.70370 + 244, 244, 243, 239, 239, 239, 242, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70371 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70372 + 247, 247, 247, 247, 247, 247, 245, 240, 239, 239, 239, 239, 239, 240, 240, 240, 32.70373 + 240, 239, 239, 239, 239, 239, 156, 0, 0, 0, 134, 255, 255, 255, 98, 1, 32.70374 + 0, 125, 217, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70375 + 221, 221, 221, 221, 221, 236, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70376 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 242, 247, 247, 247, 247, 247, 32.70377 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70378 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 242, 239, 239, 239, 239, 32.70379 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 227, 86, 0, 0, 134, 255, 32.70380 + 255, 255, 73, 0, 34, 173, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70381 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 242, 247, 247, 247, 241, 239, 239, 32.70382 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 242, 247, 32.70383 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70384 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 243, 32.70385 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 152, 32.70386 + 16, 0, 84, 232, 255, 255, 73, 0, 92, 221, 221, 221, 221, 221, 221, 221, 32.70387 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 242, 247, 247, 32.70388 + 247, 246, 244, 240, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70389 + 239, 239, 242, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70390 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70391 + 247, 247, 247, 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70392 + 239, 239, 239, 239, 43, 0, 0, 194, 255, 148, 8, 0, 92, 221, 221, 221, 32.70393 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70394 + 221, 242, 247, 247, 247, 247, 247, 246, 244, 239, 239, 239, 239, 239, 239, 239, 32.70395 + 239, 239, 239, 239, 239, 241, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70396 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70397 + 247, 247, 247, 247, 247, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 32.70398 + 239, 239, 239, 239, 239, 239, 239, 239, 69, 0, 0, 194, 255, 134, 0, 0, 32.70399 + 92, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70400 + 221, 221, 221, 221, 221, 242, 247, 247, 247, 247, 247, 247, 247, 243, 239, 239, 32.70401 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 246, 247, 247, 247, 247, 247, 247, 32.70402 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70403 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 244, 239, 239, 32.70404 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 232, 0, 0, 119, 32.70405 + 255, 134, 0, 29, 184, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70406 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 242, 247, 247, 247, 247, 247, 247, 32.70407 + 247, 245, 244, 239, 239, 239, 239, 239, 239, 239, 239, 241, 244, 246, 247, 247, 32.70408 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70409 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70410 + 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70411 + 232, 0, 0, 0, 245, 114, 0, 45, 236, 221, 221, 221, 221, 221, 221, 221, 32.70412 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 234, 246, 247, 247, 32.70413 + 247, 247, 247, 247, 247, 247, 247, 245, 240, 240, 240, 240, 240, 240, 241, 246, 32.70414 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70415 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70416 + 247, 247, 247, 247, 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70417 + 239, 239, 239, 239, 234, 27, 0, 0, 194, 0, 0, 45, 236, 221, 221, 221, 32.70418 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70419 + 235, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70420 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70421 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70422 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 244, 239, 239, 239, 239, 239, 239, 32.70423 + 239, 239, 239, 239, 239, 239, 239, 239, 245, 178, 0, 0, 194, 0, 0, 45, 32.70424 + 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70425 + 221, 221, 221, 221, 235, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70426 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70427 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70428 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 244, 239, 239, 32.70429 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 245, 175, 0, 0, 32.70430 + 194, 0, 0, 216, 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70431 + 221, 221, 221, 221, 221, 221, 221, 221, 235, 247, 247, 247, 247, 247, 247, 247, 32.70432 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70433 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70434 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70435 + 246, 243, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70436 + 245, 175, 0, 0, 194, 0, 0, 233, 236, 221, 221, 221, 221, 221, 221, 221, 32.70437 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 235, 247, 247, 247, 32.70438 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70439 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70440 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70441 + 247, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70442 + 239, 239, 239, 239, 245, 175, 0, 0, 194, 0, 0, 233, 236, 221, 221, 221, 32.70443 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 226, 32.70444 + 243, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70445 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70446 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70447 + 247, 247, 247, 247, 247, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 239, 32.70448 + 239, 239, 239, 239, 239, 239, 239, 239, 245, 175, 0, 0, 194, 0, 0, 233, 32.70449 + 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70450 + 221, 221, 221, 221, 236, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70451 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70452 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70453 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 245, 239, 239, 239, 32.70454 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 243, 143, 0, 0, 32.70455 + 194, 0, 0, 233, 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70456 + 221, 221, 221, 221, 221, 221, 221, 221, 229, 244, 247, 247, 247, 247, 247, 247, 32.70457 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70458 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70459 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70460 + 240, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70461 + 232, 0, 0, 0, 194, 0, 0, 233, 236, 221, 221, 221, 221, 221, 221, 221, 32.70462 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 228, 247, 247, 32.70463 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70464 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70465 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70466 + 247, 247, 247, 247, 240, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70467 + 239, 239, 239, 242, 233, 0, 0, 0, 194, 0, 0, 233, 236, 221, 221, 221, 32.70468 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70469 + 221, 222, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70470 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70471 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70472 + 247, 247, 247, 247, 247, 247, 247, 242, 239, 239, 239, 239, 239, 239, 239, 239, 32.70473 + 239, 239, 239, 239, 239, 239, 239, 243, 233, 0, 0, 183, 194, 0, 0, 233, 32.70474 + 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70475 + 221, 221, 221, 221, 221, 221, 238, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70476 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70477 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70478 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 242, 239, 239, 239, 239, 32.70479 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 245, 149, 0, 0, 194, 32.70480 + 194, 0, 0, 233, 236, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70481 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 228, 247, 247, 247, 247, 247, 32.70482 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70483 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70484 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 242, 32.70485 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 247, 32.70486 + 45, 0, 0, 194, 194, 0, 0, 233, 246, 229, 221, 221, 221, 221, 221, 221, 32.70487 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 232, 32.70488 + 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70489 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70490 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70491 + 247, 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70492 + 239, 239, 241, 217, 35, 0, 128, 252, 194, 0, 0, 233, 247, 229, 221, 221, 32.70493 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70494 + 221, 221, 221, 221, 240, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70495 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70496 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70497 + 247, 247, 247, 247, 247, 247, 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70498 + 239, 239, 239, 239, 239, 239, 244, 103, 0, 0, 134, 255, 194, 0, 0, 233, 32.70499 + 247, 242, 222, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70500 + 221, 221, 221, 221, 221, 221, 221, 221, 226, 246, 247, 247, 247, 247, 247, 247, 32.70501 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70502 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70503 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 240, 239, 239, 239, 239, 239, 32.70504 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 247, 103, 0, 0, 134, 255, 32.70505 + 194, 0, 0, 191, 247, 247, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70506 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 227, 247, 247, 32.70507 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70508 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70509 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 244, 239, 239, 32.70510 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 228, 80, 32.70511 + 0, 71, 251, 255, 194, 0, 0, 45, 247, 247, 233, 221, 221, 221, 221, 221, 32.70512 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70513 + 221, 224, 240, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70514 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70515 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70516 + 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70517 + 239, 245, 162, 0, 0, 73, 255, 255, 238, 98, 0, 12, 142, 247, 246, 233, 32.70518 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70519 + 221, 221, 221, 221, 221, 221, 233, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70520 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70521 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70522 + 247, 247, 247, 247, 241, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70523 + 239, 239, 239, 239, 239, 226, 43, 0, 9, 206, 255, 255, 255, 134, 0, 0, 32.70524 + 103, 247, 247, 239, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70525 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 235, 246, 247, 247, 247, 32.70526 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70527 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70528 + 247, 247, 247, 247, 247, 247, 247, 246, 241, 239, 239, 239, 239, 239, 239, 239, 32.70529 + 239, 239, 239, 239, 239, 239, 239, 239, 240, 219, 0, 0, 60, 255, 255, 255, 32.70530 + 255, 193, 36, 0, 52, 205, 247, 247, 239, 223, 221, 221, 221, 221, 221, 221, 32.70531 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70532 + 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70533 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70534 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 243, 239, 239, 239, 239, 32.70535 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 244, 127, 0, 0, 32.70536 + 208, 255, 255, 255, 255, 255, 73, 0, 0, 162, 247, 247, 247, 225, 221, 221, 32.70537 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70538 + 221, 221, 221, 221, 227, 235, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70539 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70540 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 245, 240, 32.70541 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70542 + 244, 32, 0, 0, 208, 255, 255, 255, 255, 255, 119, 3, 0, 0, 220, 247, 32.70543 + 247, 245, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70544 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 228, 244, 247, 247, 247, 247, 247, 32.70545 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70546 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70547 + 247, 247, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70548 + 239, 239, 239, 243, 207, 23, 0, 37, 220, 255, 255, 255, 255, 255, 255, 13, 32.70549 + 0, 0, 124, 247, 247, 245, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70550 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 229, 235, 32.70551 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70552 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70553 + 247, 247, 247, 247, 247, 247, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70554 + 239, 239, 239, 239, 239, 239, 220, 121, 44, 0, 0, 147, 255, 255, 255, 255, 32.70555 + 255, 255, 255, 161, 0, 0, 31, 244, 247, 246, 234, 221, 221, 221, 221, 221, 32.70556 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70557 + 221, 221, 221, 224, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70558 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70559 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 239, 239, 239, 239, 239, 239, 32.70560 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 205, 0, 0, 0, 66, 229, 32.70561 + 255, 255, 255, 255, 255, 255, 255, 220, 39, 0, 0, 90, 247, 247, 247, 232, 32.70562 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70563 + 221, 221, 221, 221, 221, 221, 221, 221, 227, 244, 247, 247, 247, 247, 247, 247, 32.70564 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70565 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 241, 239, 239, 32.70566 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 206, 0, 32.70567 + 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 0, 0, 43, 32.70568 + 195, 247, 247, 240, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70569 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 236, 247, 247, 32.70570 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70571 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70572 + 244, 240, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70573 + 239, 241, 207, 0, 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70574 + 231, 67, 0, 0, 144, 245, 247, 247, 226, 221, 221, 221, 221, 221, 221, 221, 32.70575 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70576 + 221, 224, 228, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70577 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70578 + 247, 247, 247, 245, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70579 + 239, 239, 239, 239, 241, 246, 61, 0, 0, 21, 217, 255, 255, 255, 255, 255, 32.70580 + 255, 255, 255, 255, 255, 135, 7, 0, 0, 207, 247, 247, 232, 221, 221, 221, 32.70581 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70582 + 221, 221, 221, 221, 221, 221, 222, 241, 247, 247, 247, 247, 247, 247, 247, 247, 32.70583 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70584 + 247, 247, 247, 247, 247, 247, 246, 243, 239, 239, 239, 239, 239, 239, 239, 239, 32.70585 + 239, 239, 239, 239, 239, 239, 239, 239, 243, 247, 18, 0, 0, 27, 255, 255, 32.70586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 0, 0, 207, 247, 247, 32.70587 + 246, 231, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70588 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 224, 233, 243, 247, 247, 32.70589 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70590 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 243, 239, 239, 239, 239, 239, 32.70591 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 247, 155, 8, 0, 32.70592 + 0, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 32.70593 + 0, 57, 239, 247, 247, 240, 222, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70594 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70595 + 221, 240, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70596 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 246, 240, 239, 32.70597 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 240, 32.70598 + 247, 77, 0, 0, 7, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70599 + 255, 255, 231, 48, 0, 0, 77, 247, 247, 247, 247, 233, 221, 221, 221, 221, 32.70600 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70601 + 221, 221, 221, 221, 221, 221, 227, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70602 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70603 + 244, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70604 + 239, 239, 239, 242, 213, 54, 0, 30, 189, 255, 255, 255, 255, 255, 255, 255, 32.70605 + 255, 255, 255, 255, 255, 255, 255, 161, 0, 0, 34, 185, 247, 247, 247, 247, 32.70606 + 232, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70607 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 223, 232, 243, 247, 247, 247, 32.70608 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70609 + 247, 247, 247, 246, 241, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70610 + 239, 239, 239, 239, 239, 239, 242, 246, 135, 0, 0, 101, 255, 255, 255, 255, 32.70611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 81, 0, 0, 127, 32.70612 + 243, 247, 247, 247, 245, 232, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70613 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70614 + 238, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70615 + 247, 247, 247, 247, 247, 247, 247, 241, 239, 239, 239, 239, 239, 239, 239, 239, 32.70616 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 245, 243, 127, 0, 2, 110, 32.70617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70618 + 149, 12, 0, 0, 135, 247, 247, 247, 247, 239, 229, 221, 221, 221, 221, 221, 32.70619 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70620 + 221, 221, 221, 221, 221, 238, 242, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70621 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 245, 239, 239, 239, 239, 239, 32.70622 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 244, 247, 194, 32.70623 + 0, 0, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70624 + 255, 255, 255, 255, 255, 151, 0, 0, 5, 247, 247, 247, 247, 247, 247, 234, 32.70625 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70626 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 232, 247, 247, 247, 247, 247, 32.70627 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 242, 240, 239, 32.70628 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70629 + 241, 247, 247, 87, 0, 0, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 13, 0, 1, 92, 237, 247, 32.70631 + 247, 247, 247, 246, 242, 230, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70632 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 223, 225, 32.70633 + 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 32.70634 + 245, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70635 + 239, 239, 239, 239, 245, 247, 233, 5, 0, 0, 235, 255, 255, 255, 255, 255, 32.70636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 37, 32.70637 + 0, 0, 82, 225, 247, 247, 247, 247, 247, 247, 224, 221, 221, 221, 221, 221, 32.70638 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70639 + 221, 221, 221, 221, 238, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70640 + 247, 247, 247, 241, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70641 + 239, 239, 239, 239, 239, 239, 239, 245, 247, 247, 64, 0, 0, 57, 241, 255, 32.70642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70643 + 255, 255, 255, 114, 0, 0, 0, 75, 242, 247, 247, 247, 247, 247, 237, 231, 32.70644 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70645 + 221, 221, 221, 221, 221, 221, 221, 221, 222, 231, 241, 247, 247, 247, 247, 247, 32.70646 + 247, 247, 247, 247, 247, 247, 245, 240, 239, 239, 239, 239, 239, 239, 239, 239, 32.70647 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 246, 247, 247, 64, 0, 32.70648 + 0, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70649 + 255, 255, 255, 255, 255, 255, 255, 231, 62, 0, 0, 0, 77, 234, 247, 247, 32.70650 + 247, 247, 247, 239, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70651 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 223, 241, 32.70652 + 245, 247, 247, 247, 247, 247, 247, 247, 247, 245, 239, 239, 239, 239, 239, 239, 32.70653 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 246, 247, 32.70654 + 247, 142, 10, 0, 95, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 64, 0, 0, 32.70656 + 0, 71, 219, 247, 247, 247, 247, 247, 247, 225, 221, 221, 221, 221, 221, 221, 32.70657 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70658 + 221, 221, 221, 221, 229, 247, 247, 247, 247, 247, 247, 247, 247, 243, 239, 239, 32.70659 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70660 + 241, 243, 247, 247, 224, 80, 0, 18, 162, 255, 255, 255, 255, 255, 255, 255, 32.70661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70662 + 255, 228, 76, 0, 0, 0, 67, 234, 247, 247, 247, 247, 247, 238, 232, 221, 32.70663 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70664 + 221, 221, 221, 221, 221, 221, 221, 221, 224, 231, 243, 247, 247, 247, 247, 247, 32.70665 + 243, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70666 + 239, 239, 239, 239, 245, 247, 247, 247, 181, 0, 0, 54, 255, 255, 255, 255, 32.70667 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70668 + 255, 255, 255, 255, 255, 255, 236, 77, 0, 0, 0, 61, 221, 237, 247, 247, 32.70669 + 247, 247, 240, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70670 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 224, 244, 32.70671 + 245, 247, 247, 246, 241, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70672 + 239, 239, 239, 239, 239, 239, 239, 243, 246, 247, 247, 240, 27, 0, 0, 220, 32.70673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70674 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 50, 0, 0, 32.70675 + 0, 99, 234, 247, 247, 247, 247, 247, 234, 221, 221, 221, 221, 221, 221, 221, 32.70676 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70677 + 221, 221, 221, 221, 229, 237, 237, 238, 239, 239, 239, 239, 239, 239, 239, 239, 32.70678 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 241, 247, 247, 247, 247, 171, 32.70679 + 0, 0, 67, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70680 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70681 + 255, 211, 50, 0, 0, 0, 97, 247, 247, 247, 247, 247, 247, 221, 221, 221, 32.70682 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70683 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 224, 227, 229, 239, 239, 32.70684 + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 243, 245, 247, 32.70685 + 247, 247, 162, 19, 0, 0, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70686 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70687 + 255, 255, 255, 255, 255, 255, 231, 41, 0, 0, 3, 95, 217, 241, 247, 247, 32.70688 + 247, 243, 233, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70689 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70690 + 221, 221, 228, 236, 238, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 32.70691 + 243, 246, 247, 247, 247, 237, 96, 0, 0, 111, 246, 255, 255, 255, 255, 255, 32.70692 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70693 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 95, 35, 0, 0, 32.70694 + 0, 129, 247, 247, 247, 247, 239, 230, 221, 221, 221, 221, 221, 221, 221, 221, 32.70695 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70696 + 221, 221, 221, 221, 221, 221, 221, 221, 236, 239, 239, 239, 239, 239, 239, 239, 32.70697 + 239, 239, 239, 241, 245, 247, 247, 247, 239, 105, 0, 0, 25, 175, 255, 255, 32.70698 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70699 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70700 + 255, 195, 21, 0, 0, 4, 135, 247, 247, 247, 247, 247, 235, 221, 221, 221, 32.70701 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70702 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 228, 239, 239, 239, 32.70703 + 239, 239, 239, 239, 239, 239, 240, 247, 247, 247, 247, 247, 108, 0, 0, 4, 32.70704 + 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70705 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70706 + 255, 255, 255, 255, 255, 255, 209, 22, 0, 0, 8, 125, 238, 247, 247, 247, 32.70707 + 246, 243, 229, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70708 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70709 + 221, 228, 239, 239, 239, 239, 239, 239, 239, 239, 245, 247, 247, 247, 247, 226, 32.70710 + 32, 0, 0, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70711 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70712 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 42, 0, 0, 0, 32.70713 + 114, 246, 247, 247, 247, 247, 236, 229, 221, 221, 221, 221, 221, 221, 221, 221, 32.70714 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70715 + 221, 221, 221, 221, 221, 227, 239, 239, 239, 239, 239, 239, 239, 241, 246, 247, 32.70716 + 247, 247, 211, 58, 0, 0, 55, 222, 255, 255, 255, 255, 255, 255, 255, 255, 32.70717 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70718 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70719 + 202, 31, 0, 0, 0, 124, 247, 247, 247, 247, 247, 245, 231, 221, 221, 221, 32.70720 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70721 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 227, 239, 239, 239, 239, 239, 239, 32.70722 + 241, 246, 247, 247, 247, 225, 55, 0, 0, 52, 214, 255, 255, 255, 255, 255, 32.70723 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70724 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70725 + 255, 255, 255, 255, 255, 233, 174, 18, 0, 5, 25, 155, 244, 247, 247, 247, 32.70726 + 239, 224, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70727 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 227, 239, 239, 32.70728 + 239, 239, 239, 239, 242, 247, 247, 247, 222, 40, 0, 0, 3, 107, 255, 255, 32.70729 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70730 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70731 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 25, 0, 0, 0, 32.70732 + 138, 188, 247, 247, 247, 247, 233, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70733 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70734 + 221, 227, 239, 239, 239, 239, 239, 239, 242, 247, 247, 204, 49, 0, 0, 0, 32.70735 + 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70736 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70737 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70738 + 188, 1, 0, 0, 0, 34, 84, 228, 247, 247, 246, 238, 238, 224, 221, 221, 32.70739 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70740 + 221, 221, 221, 221, 221, 227, 239, 239, 239, 239, 239, 239, 242, 247, 216, 48, 32.70741 + 0, 0, 0, 102, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70742 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70743 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70744 + 255, 255, 255, 255, 255, 232, 143, 12, 0, 0, 0, 42, 220, 247, 247, 247, 32.70745 + 247, 245, 239, 223, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70746 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 229, 239, 239, 239, 239, 239, 241, 32.70747 + 246, 217, 26, 0, 0, 63, 232, 246, 255, 255, 255, 255, 255, 255, 255, 255, 32.70748 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70749 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70750 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 87, 0, 0, 0, 32.70751 + 51, 143, 229, 247, 247, 247, 247, 239, 231, 221, 221, 221, 221, 221, 221, 221, 32.70752 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 228, 239, 239, 239, 32.70753 + 239, 239, 239, 247, 197, 40, 0, 0, 70, 240, 255, 255, 255, 255, 255, 255, 32.70754 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70755 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70756 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70757 + 240, 100, 0, 0, 0, 0, 67, 131, 247, 247, 247, 247, 247, 235, 221, 221, 32.70758 + 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70759 + 236, 239, 239, 239, 239, 239, 239, 206, 42, 0, 0, 73, 226, 255, 255, 255, 32.70760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70761 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70762 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70763 + 255, 255, 255, 255, 255, 247, 235, 61, 0, 0, 0, 5, 118, 203, 247, 247, 32.70764 + 247, 246, 245, 232, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 32.70765 + 221, 221, 227, 237, 238, 239, 239, 239, 239, 216, 199, 13, 0, 0, 45, 244, 32.70766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70767 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70768 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70769 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 110, 44, 0, 0, 32.70770 + 0, 2, 167, 247, 247, 247, 247, 247, 233, 232, 225, 221, 221, 221, 221, 221, 32.70771 + 221, 221, 221, 221, 221, 228, 232, 239, 239, 239, 239, 239, 239, 111, 0, 0, 32.70772 + 0, 0, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70773 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70774 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70775 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70776 + 255, 207, 163, 0, 0, 0, 19, 77, 200, 247, 247, 247, 247, 247, 241, 223, 32.70777 + 221, 221, 221, 221, 221, 221, 221, 221, 229, 238, 239, 239, 239, 239, 239, 239, 32.70778 + 190, 34, 0, 0, 84, 175, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70780 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70781 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70782 + 255, 255, 255, 255, 255, 255, 253, 181, 49, 10, 0, 0, 10, 51, 219, 247, 32.70783 + 247, 247, 247, 245, 245, 245, 245, 245, 245, 239, 237, 237, 238, 239, 239, 239, 32.70784 + 239, 239, 239, 189, 10, 0, 0, 95, 247, 255, 255, 255, 255, 255, 255, 255, 32.70785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70786 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70787 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70788 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 0, 0, 32.70789 + 0, 0, 59, 136, 236, 247, 247, 247, 247, 247, 247, 247, 247, 243, 241, 239, 32.70790 + 239, 239, 239, 239, 239, 239, 176, 23, 0, 0, 89, 255, 255, 255, 255, 255, 32.70791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70792 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70793 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70794 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70795 + 255, 253, 178, 91, 0, 0, 0, 0, 66, 139, 247, 247, 247, 247, 247, 247, 32.70796 + 247, 247, 246, 242, 239, 239, 239, 239, 239, 180, 29, 0, 0, 0, 196, 255, 32.70797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70799 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70800 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70801 + 255, 255, 255, 255, 255, 255, 255, 249, 243, 60, 30, 0, 0, 4, 11, 168, 32.70802 + 212, 247, 247, 247, 247, 247, 247, 246, 246, 246, 246, 246, 219, 6, 0, 0, 32.70803 + 15, 154, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70805 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70806 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70807 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 32.70808 + 10, 0, 0, 0, 43, 132, 137, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.70809 + 131, 0, 0, 7, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70811 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70812 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70813 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70814 + 255, 255, 255, 255, 189, 112, 0, 0, 0, 0, 2, 70, 160, 247, 247, 247, 32.70815 + 247, 247, 175, 70, 8, 0, 0, 155, 255, 255, 255, 255, 255, 255, 255, 255, 32.70816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70818 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70819 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70820 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 247, 84, 38, 0, 0, 0, 32.70821 + 3, 7, 48, 191, 230, 237, 114, 0, 0, 20, 168, 253, 255, 255, 255, 255, 32.70822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70825 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70826 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70827 + 211, 121, 117, 0, 0, 0, 0, 0, 89, 107, 0, 0, 13, 168, 255, 255, 32.70828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70831 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70832 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70833 + 255, 255, 255, 255, 255, 255, 252, 186, 91, 0, 0, 0, 0, 0, 0, 0, 32.70834 + 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70837 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70838 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70839 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 50, 0, 32.70840 + 0, 0, 0, 39, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70843 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70844 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70845 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70846 + 255, 255, 226, 68, 0, 0, 50, 208, 255, 255, 255, 255, 255, 255, 255, 255, 32.70847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70850 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70851 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70852 + 255, 255, 255, 255, 255, 255, 255, 225, 190, 190, 216, 255, 255, 255, 255, 255, 32.70853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70856 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70857 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70858 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 190, 158, 0, 0, 32.70859 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.70860 + 0, 0, 106, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70863 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70864 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 68, 32.70865 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 6, 6, 6, 6, 6, 32.70866 + 2, 0, 0, 0, 0, 0, 0, 3, 125, 190, 255, 255, 255, 255, 255, 255, 32.70867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70869 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70870 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.70871 + 153, 60, 0, 0, 0, 0, 0, 5, 9, 10, 10, 10, 10, 13, 14, 14, 32.70872 + 14, 14, 13, 12, 10, 9, 9, 9, 1, 0, 0, 0, 0, 30, 60, 247, 32.70873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70876 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70877 + 232, 186, 179, 0, 0, 0, 0, 0, 2, 14, 27, 27, 65, 71, 87, 99, 32.70878 + 122, 176, 176, 176, 176, 176, 153, 56, 56, 56, 39, 12, 12, 12, 7, 0, 32.70879 + 0, 0, 0, 39, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70882 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70883 + 255, 255, 255, 242, 81, 0, 0, 0, 0, 0, 1, 20, 41, 47, 71, 71, 32.70884 + 71, 90, 155, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 146, 97, 32.70885 + 90, 12, 12, 7, 4, 0, 0, 0, 54, 213, 255, 255, 255, 255, 255, 255, 32.70886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70889 + 255, 255, 255, 255, 255, 252, 129, 51, 0, 0, 0, 0, 4, 10, 21, 63, 32.70890 + 71, 71, 71, 71, 80, 160, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70891 + 176, 176, 176, 176, 172, 100, 16, 13, 11, 4, 0, 0, 0, 39, 234, 255, 32.70892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70895 + 255, 255, 255, 255, 255, 255, 255, 255, 244, 112, 0, 0, 0, 1, 10, 12, 32.70896 + 20, 60, 71, 71, 71, 71, 71, 71, 83, 176, 176, 176, 176, 176, 176, 176, 32.70897 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 82, 46, 12, 5, 0, 32.70898 + 0, 0, 29, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 100, 0, 0, 0, 32.70902 + 2, 9, 13, 43, 57, 71, 71, 71, 71, 71, 71, 71, 83, 176, 176, 176, 32.70903 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70904 + 155, 100, 34, 5, 0, 0, 0, 101, 255, 255, 255, 255, 255, 255, 255, 255, 32.70905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70906 + 255, 249, 243, 243, 243, 243, 79, 53, 53, 53, 53, 53, 53, 53, 53, 53, 32.70907 + 86, 243, 243, 243, 243, 243, 243, 243, 249, 255, 255, 255, 255, 252, 137, 0, 32.70908 + 0, 0, 0, 1, 10, 13, 16, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70909 + 82, 172, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70910 + 176, 176, 176, 176, 176, 176, 150, 20, 5, 0, 0, 21, 173, 253, 255, 255, 32.70911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70912 + 255, 255, 255, 254, 181, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.70913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 180, 255, 255, 32.70914 + 255, 204, 0, 0, 0, 0, 2, 10, 12, 45, 71, 71, 71, 71, 71, 71, 32.70915 + 71, 71, 71, 71, 71, 96, 163, 176, 176, 176, 175, 144, 159, 176, 176, 176, 32.70916 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 151, 38, 6, 0, 0, 32.70917 + 0, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70918 + 255, 255, 255, 255, 255, 255, 185, 112, 3, 0, 0, 0, 0, 0, 0, 13, 32.70919 + 72, 97, 97, 97, 97, 97, 97, 28, 0, 0, 0, 0, 0, 0, 0, 0, 32.70920 + 0, 1, 114, 182, 255, 96, 0, 0, 0, 6, 9, 12, 22, 59, 71, 71, 32.70921 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 98, 118, 118, 118, 117, 71, 32.70922 + 93, 118, 118, 142, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70923 + 142, 40, 0, 0, 0, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.70924 + 255, 255, 255, 255, 255, 255, 255, 246, 235, 49, 24, 0, 0, 1, 4, 12, 32.70925 + 57, 57, 70, 146, 167, 176, 176, 176, 176, 176, 176, 152, 141, 141, 141, 141, 32.70926 + 97, 15, 5, 0, 0, 0, 0, 24, 49, 1, 0, 0, 9, 12, 12, 16, 32.70927 + 63, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70928 + 71, 71, 71, 71, 71, 71, 71, 79, 143, 175, 176, 176, 176, 176, 176, 176, 32.70929 + 176, 176, 176, 176, 176, 154, 25, 0, 0, 5, 114, 248, 255, 255, 255, 255, 32.70930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 229, 78, 0, 0, 0, 0, 32.70931 + 21, 43, 71, 71, 71, 91, 166, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70932 + 176, 176, 176, 176, 176, 133, 73, 24, 7, 0, 0, 0, 0, 0, 0, 2, 32.70933 + 11, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70934 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 140, 176, 176, 32.70935 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 149, 7, 0, 0, 0, 147, 32.70936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 75, 0, 32.70937 + 0, 0, 19, 40, 70, 71, 71, 71, 94, 159, 176, 176, 176, 176, 176, 176, 32.70938 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 138, 104, 45, 15, 0, 0, 32.70939 + 0, 0, 0, 8, 12, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 32.70940 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70941 + 71, 77, 138, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 164, 66, 32.70942 + 2, 0, 0, 64, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 32.70943 + 121, 42, 0, 0, 0, 19, 64, 71, 71, 71, 71, 71, 111, 176, 176, 176, 32.70944 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 170, 32.70945 + 114, 30, 10, 0, 0, 0, 0, 8, 12, 12, 12, 17, 71, 71, 71, 71, 32.70946 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70947 + 71, 71, 71, 71, 71, 71, 78, 142, 176, 176, 176, 176, 176, 176, 176, 176, 32.70948 + 176, 176, 176, 115, 15, 1, 0, 0, 193, 255, 255, 255, 255, 255, 255, 255, 32.70949 + 255, 255, 244, 108, 0, 0, 0, 12, 24, 71, 71, 71, 71, 71, 71, 71, 32.70950 + 111, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70951 + 176, 176, 176, 176, 176, 121, 81, 8, 1, 0, 0, 8, 12, 12, 12, 17, 32.70952 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70953 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 114, 170, 176, 176, 176, 32.70954 + 176, 176, 176, 176, 176, 176, 176, 176, 84, 7, 0, 0, 13, 255, 255, 255, 32.70955 + 255, 255, 255, 255, 255, 255, 108, 0, 0, 0, 12, 57, 71, 71, 71, 71, 32.70956 + 71, 71, 71, 71, 111, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70957 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 158, 60, 3, 0, 0, 8, 32.70958 + 12, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70959 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.70960 + 113, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 109, 18, 0, 0, 32.70961 + 13, 255, 255, 255, 255, 255, 255, 255, 255, 240, 24, 0, 0, 5, 36, 44, 32.70962 + 44, 44, 44, 44, 67, 71, 71, 71, 77, 137, 174, 176, 176, 175, 144, 88, 32.70963 + 88, 88, 88, 88, 101, 170, 176, 176, 176, 176, 176, 176, 176, 176, 176, 162, 32.70964 + 84, 3, 1, 8, 12, 12, 12, 16, 67, 71, 71, 71, 71, 71, 71, 71, 32.70965 + 71, 71, 71, 71, 71, 71, 67, 65, 52, 45, 65, 67, 71, 71, 71, 71, 32.70966 + 71, 71, 71, 71, 79, 169, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.70967 + 109, 23, 6, 0, 2, 103, 255, 255, 255, 255, 255, 255, 218, 57, 0, 0, 32.70968 + 8, 34, 39, 39, 39, 39, 39, 39, 43, 60, 60, 60, 60, 66, 130, 139, 32.70969 + 139, 136, 71, 71, 71, 71, 71, 71, 71, 99, 163, 176, 176, 176, 176, 176, 32.70970 + 176, 176, 176, 176, 99, 29, 12, 12, 12, 12, 12, 12, 24, 62, 71, 71, 32.70971 + 71, 71, 71, 71, 71, 71, 71, 71, 68, 50, 27, 12, 12, 12, 12, 21, 32.70972 + 50, 65, 71, 71, 71, 71, 71, 71, 71, 93, 160, 176, 176, 176, 176, 176, 32.70973 + 176, 176, 176, 176, 109, 64, 7, 0, 0, 73, 255, 255, 255, 255, 255, 227, 32.70974 + 59, 0, 0, 8, 32, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.70975 + 39, 47, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 98, 120, 32.70976 + 176, 176, 176, 176, 176, 176, 176, 176, 99, 66, 31, 12, 12, 12, 12, 12, 32.70977 + 12, 45, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 64, 12, 12, 12, 32.70978 + 12, 12, 12, 12, 12, 29, 69, 71, 71, 71, 71, 71, 71, 71, 129, 176, 32.70979 + 176, 176, 176, 176, 176, 176, 176, 176, 109, 68, 33, 3, 0, 73, 255, 255, 32.70980 + 255, 255, 255, 187, 0, 0, 0, 16, 39, 39, 39, 39, 39, 39, 39, 39, 32.70981 + 39, 39, 39, 39, 39, 39, 43, 52, 71, 71, 71, 71, 71, 71, 71, 71, 32.70982 + 71, 71, 71, 72, 114, 171, 176, 176, 176, 176, 176, 176, 99, 71, 45, 12, 32.70983 + 12, 12, 12, 12, 12, 16, 22, 66, 71, 71, 71, 71, 71, 71, 68, 36, 32.70984 + 19, 12, 12, 12, 12, 12, 12, 12, 12, 12, 20, 20, 50, 65, 71, 71, 32.70985 + 71, 71, 79, 149, 176, 176, 176, 176, 176, 176, 174, 133, 76, 71, 65, 22, 32.70986 + 0, 11, 152, 255, 255, 255, 255, 13, 0, 0, 15, 39, 39, 39, 39, 39, 32.70987 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 45, 66, 71, 71, 71, 32.70988 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 111, 169, 176, 176, 176, 176, 157, 32.70989 + 89, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 22, 49, 49, 49, 49, 32.70990 + 49, 49, 34, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.70991 + 12, 17, 57, 71, 71, 71, 71, 73, 148, 176, 176, 176, 176, 150, 127, 71, 32.70992 + 71, 71, 46, 0, 0, 0, 134, 255, 255, 255, 255, 13, 0, 0, 34, 39, 32.70993 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.70994 + 46, 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 109, 176, 32.70995 + 176, 176, 159, 91, 71, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.70996 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.70997 + 12, 12, 12, 12, 12, 12, 20, 56, 71, 71, 71, 71, 81, 111, 111, 111, 32.70998 + 111, 83, 71, 71, 71, 71, 46, 0, 0, 0, 134, 255, 255, 255, 98, 1, 32.70999 + 0, 22, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71000 + 39, 39, 39, 39, 39, 59, 63, 63, 63, 70, 71, 71, 71, 71, 71, 71, 32.71001 + 71, 71, 71, 85, 85, 85, 81, 71, 71, 71, 45, 12, 12, 12, 12, 12, 32.71002 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71003 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 71, 71, 71, 71, 32.71004 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 67, 25, 0, 0, 134, 255, 32.71005 + 255, 255, 73, 0, 6, 30, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71006 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 12, 53, 71, 71, 32.71007 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 45, 12, 32.71008 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71009 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 34, 32.71010 + 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 45, 32.71011 + 4, 0, 84, 232, 255, 255, 73, 0, 16, 39, 39, 39, 39, 39, 39, 39, 32.71012 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 32.71013 + 12, 17, 34, 59, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71014 + 71, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71015 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71016 + 12, 12, 12, 12, 33, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71017 + 71, 71, 71, 71, 13, 0, 0, 194, 255, 148, 8, 0, 16, 39, 39, 39, 32.71018 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71019 + 39, 17, 12, 12, 12, 12, 12, 16, 26, 66, 71, 71, 71, 71, 71, 71, 32.71020 + 71, 71, 71, 71, 71, 54, 15, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71021 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71022 + 12, 12, 12, 12, 12, 12, 12, 12, 16, 65, 71, 71, 71, 71, 71, 71, 32.71023 + 71, 71, 71, 71, 71, 71, 71, 71, 14, 0, 0, 194, 255, 134, 0, 0, 32.71024 + 16, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71025 + 39, 39, 39, 39, 39, 17, 12, 12, 12, 12, 12, 12, 12, 36, 71, 71, 32.71026 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 14, 12, 12, 12, 12, 12, 12, 32.71027 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71028 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71029 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 0, 0, 119, 32.71030 + 255, 134, 0, 1, 20, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71031 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 12, 12, 12, 12, 32.71032 + 12, 20, 33, 66, 71, 71, 71, 71, 71, 71, 71, 52, 33, 12, 12, 12, 32.71033 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71034 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71035 + 12, 30, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71036 + 22, 0, 0, 0, 245, 114, 0, 2, 23, 39, 39, 39, 39, 39, 39, 39, 32.71037 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 25, 12, 12, 12, 32.71038 + 12, 12, 12, 12, 12, 12, 12, 22, 62, 62, 62, 62, 62, 62, 51, 15, 32.71039 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71040 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71041 + 12, 12, 12, 12, 12, 30, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71042 + 71, 71, 71, 71, 24, 27, 0, 0, 194, 0, 0, 2, 23, 39, 39, 39, 32.71043 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71044 + 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71045 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71046 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71047 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 71, 71, 71, 71, 32.71048 + 71, 71, 71, 71, 71, 71, 71, 71, 30, 111, 0, 0, 194, 0, 0, 2, 32.71049 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71050 + 39, 39, 39, 39, 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71051 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71052 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71053 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71054 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 8, 0, 0, 32.71055 + 194, 0, 0, 10, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71056 + 39, 39, 39, 39, 39, 39, 39, 39, 23, 12, 12, 12, 12, 12, 12, 12, 32.71057 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71058 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71059 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71060 + 12, 37, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71061 + 22, 8, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 32.71062 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 23, 12, 12, 12, 32.71063 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71064 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71065 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71066 + 12, 12, 12, 12, 16, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71067 + 71, 71, 71, 71, 22, 8, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 32.71068 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32, 32.71069 + 15, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71070 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71071 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71072 + 12, 12, 12, 12, 12, 12, 12, 12, 16, 71, 71, 71, 71, 71, 71, 71, 32.71073 + 71, 71, 71, 71, 71, 71, 71, 71, 22, 8, 0, 0, 194, 0, 0, 11, 32.71074 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71075 + 39, 39, 39, 38, 22, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71076 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71077 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71078 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 25, 71, 71, 71, 32.71079 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 6, 0, 0, 32.71080 + 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71081 + 39, 39, 39, 39, 39, 39, 39, 39, 30, 14, 12, 12, 12, 12, 12, 12, 32.71082 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71083 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71084 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71085 + 61, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71086 + 22, 0, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 32.71087 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 31, 12, 12, 32.71088 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71089 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71090 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71091 + 12, 12, 12, 12, 61, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71092 + 71, 71, 71, 47, 14, 0, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 32.71093 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71094 + 39, 37, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71095 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71096 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71097 + 12, 12, 12, 12, 12, 12, 12, 45, 70, 71, 71, 71, 71, 71, 71, 71, 32.71098 + 71, 71, 71, 71, 71, 71, 71, 36, 11, 0, 0, 183, 194, 0, 0, 11, 32.71099 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71100 + 39, 39, 39, 39, 39, 38, 20, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71101 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71102 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71103 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 71, 71, 71, 71, 32.71104 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 61, 25, 7, 0, 0, 194, 32.71105 + 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71106 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 31, 12, 12, 12, 12, 12, 32.71107 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71108 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71109 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 32.71110 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 50, 12, 32.71111 + 2, 0, 0, 194, 194, 0, 0, 11, 12, 30, 39, 39, 39, 39, 39, 39, 32.71112 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 38, 27, 32.71113 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71114 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71115 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71116 + 12, 12, 33, 69, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71117 + 71, 71, 50, 10, 1, 0, 128, 252, 194, 0, 0, 11, 12, 29, 39, 39, 32.71118 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71119 + 39, 39, 39, 39, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71120 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71121 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71122 + 12, 12, 12, 12, 12, 12, 34, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71123 + 71, 71, 71, 71, 71, 68, 32, 5, 0, 0, 134, 255, 194, 0, 0, 11, 32.71124 + 12, 17, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71125 + 39, 39, 39, 39, 39, 39, 39, 39, 33, 12, 12, 12, 12, 12, 12, 12, 32.71126 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71127 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71128 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 17, 60, 71, 71, 71, 71, 71, 32.71129 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 64, 12, 5, 0, 0, 134, 255, 32.71130 + 194, 0, 0, 9, 12, 12, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71131 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32, 12, 12, 32.71132 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71133 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71134 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71135 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 54, 11, 3, 32.71136 + 0, 71, 251, 255, 194, 0, 0, 2, 12, 12, 26, 39, 39, 39, 39, 39, 32.71137 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71138 + 39, 35, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71139 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71140 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71141 + 30, 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71142 + 71, 19, 7, 0, 0, 73, 255, 255, 238, 98, 0, 0, 6, 12, 12, 26, 32.71143 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71144 + 39, 39, 39, 39, 39, 39, 26, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71145 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71146 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71147 + 12, 12, 12, 12, 51, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71148 + 71, 71, 71, 71, 71, 18, 2, 0, 9, 206, 255, 255, 255, 134, 0, 0, 32.71149 + 5, 12, 12, 19, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71150 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 38, 24, 12, 12, 12, 12, 32.71151 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71152 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71153 + 12, 12, 12, 12, 12, 12, 12, 18, 55, 71, 71, 71, 71, 71, 71, 71, 32.71154 + 71, 71, 71, 71, 71, 71, 71, 71, 62, 16, 0, 0, 60, 255, 255, 255, 32.71155 + 255, 193, 36, 0, 2, 9, 12, 12, 20, 36, 39, 39, 39, 39, 39, 39, 32.71156 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71157 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71158 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71159 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 37, 71, 71, 71, 71, 32.71160 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 33, 6, 0, 0, 32.71161 + 208, 255, 255, 255, 255, 255, 73, 0, 0, 7, 12, 12, 12, 34, 39, 39, 32.71162 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71163 + 39, 39, 39, 39, 32, 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71164 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71165 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 20, 62, 32.71166 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71167 + 33, 1, 0, 0, 208, 255, 255, 255, 255, 255, 119, 3, 0, 0, 10, 12, 32.71168 + 12, 14, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71169 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 30, 14, 12, 12, 12, 12, 12, 32.71170 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71171 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71172 + 12, 12, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71173 + 71, 71, 68, 38, 10, 1, 0, 37, 220, 255, 255, 255, 255, 255, 255, 13, 32.71174 + 0, 0, 6, 12, 12, 14, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71175 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 30, 24, 32.71176 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71177 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71178 + 12, 12, 12, 12, 12, 12, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71179 + 71, 71, 71, 71, 71, 71, 60, 5, 2, 0, 0, 147, 255, 255, 255, 255, 32.71180 + 255, 255, 255, 161, 0, 0, 1, 11, 12, 12, 24, 38, 39, 39, 39, 39, 32.71181 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71182 + 39, 39, 39, 35, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71183 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71184 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 68, 71, 71, 71, 71, 71, 32.71185 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 25, 0, 0, 0, 66, 229, 32.71186 + 255, 255, 255, 255, 255, 255, 255, 220, 39, 0, 0, 4, 12, 12, 12, 26, 32.71187 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71188 + 39, 39, 39, 39, 39, 39, 39, 39, 31, 14, 12, 12, 12, 12, 12, 12, 32.71189 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71190 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 54, 71, 71, 32.71191 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 14, 0, 32.71192 + 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 0, 0, 2, 32.71193 + 9, 12, 12, 19, 35, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71194 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 22, 12, 12, 32.71195 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71196 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71197 + 26, 63, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71198 + 71, 49, 12, 0, 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71199 + 231, 67, 0, 0, 7, 11, 12, 12, 33, 39, 39, 39, 39, 39, 39, 39, 32.71200 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71201 + 39, 35, 31, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71202 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71203 + 12, 12, 12, 23, 64, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71204 + 71, 71, 71, 71, 50, 16, 2, 0, 0, 21, 217, 255, 255, 255, 255, 255, 32.71205 + 255, 255, 255, 255, 255, 135, 7, 0, 0, 10, 12, 12, 27, 39, 39, 39, 32.71206 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71207 + 39, 39, 39, 39, 39, 39, 37, 17, 12, 12, 12, 12, 12, 12, 12, 12, 32.71208 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71209 + 12, 12, 12, 12, 12, 12, 12, 39, 71, 71, 71, 71, 71, 71, 71, 71, 32.71210 + 71, 71, 71, 71, 71, 71, 71, 67, 35, 12, 0, 0, 0, 27, 255, 255, 32.71211 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 0, 0, 10, 12, 12, 32.71212 + 12, 28, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71213 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 26, 15, 12, 12, 32.71214 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71215 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 36, 71, 71, 71, 71, 71, 32.71216 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 58, 12, 7, 0, 0, 32.71217 + 0, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 32.71218 + 0, 2, 11, 12, 12, 18, 37, 38, 39, 39, 39, 39, 39, 39, 39, 39, 32.71219 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71220 + 39, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71221 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 14, 58, 71, 32.71222 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 58, 32.71223 + 12, 3, 0, 0, 7, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71224 + 255, 255, 231, 48, 0, 0, 3, 12, 12, 12, 12, 25, 38, 39, 39, 39, 32.71225 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71226 + 39, 39, 39, 39, 39, 39, 32, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71227 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71228 + 29, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71229 + 71, 71, 71, 44, 10, 2, 0, 30, 189, 255, 255, 255, 255, 255, 255, 255, 32.71230 + 255, 255, 255, 255, 255, 255, 255, 161, 0, 0, 1, 9, 12, 12, 12, 12, 32.71231 + 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71232 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 26, 16, 12, 12, 12, 32.71233 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71234 + 12, 12, 12, 13, 52, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71235 + 71, 71, 71, 71, 71, 71, 46, 12, 6, 0, 0, 101, 255, 255, 255, 255, 32.71236 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 81, 0, 0, 6, 32.71237 + 11, 12, 12, 12, 13, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71238 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71239 + 20, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71240 + 12, 12, 12, 12, 12, 12, 12, 51, 71, 71, 71, 71, 71, 71, 71, 71, 32.71241 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 69, 26, 11, 6, 0, 2, 110, 32.71242 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71243 + 149, 12, 0, 0, 6, 12, 12, 12, 12, 20, 30, 38, 39, 39, 39, 39, 32.71244 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71245 + 39, 39, 39, 39, 39, 21, 16, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71246 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 22, 63, 71, 71, 71, 71, 32.71247 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 66, 32, 12, 9, 32.71248 + 0, 0, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71249 + 255, 255, 255, 255, 255, 151, 0, 0, 0, 12, 12, 12, 12, 12, 12, 25, 32.71250 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71251 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 27, 12, 12, 12, 12, 12, 32.71252 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 15, 45, 60, 71, 32.71253 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71254 + 55, 12, 12, 4, 0, 0, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71255 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 13, 0, 0, 4, 11, 12, 32.71256 + 12, 12, 12, 12, 16, 29, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71257 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 36, 34, 32.71258 + 14, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 14, 32.71259 + 22, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71260 + 71, 71, 71, 66, 19, 12, 11, 0, 0, 0, 235, 255, 255, 255, 255, 255, 32.71261 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 37, 32.71262 + 0, 0, 3, 10, 12, 12, 12, 12, 12, 12, 35, 39, 39, 39, 39, 39, 32.71263 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71264 + 39, 39, 39, 39, 21, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71265 + 12, 12, 12, 49, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71266 + 71, 71, 71, 71, 71, 71, 71, 24, 12, 12, 3, 0, 0, 57, 241, 255, 32.71267 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71268 + 255, 255, 255, 114, 0, 0, 0, 3, 11, 12, 12, 12, 12, 12, 21, 28, 32.71269 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71270 + 39, 39, 39, 39, 39, 39, 39, 39, 37, 27, 17, 12, 12, 12, 12, 12, 32.71271 + 12, 12, 12, 12, 12, 12, 25, 62, 71, 71, 71, 71, 71, 71, 71, 71, 32.71272 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 51, 17, 12, 12, 3, 0, 32.71273 + 0, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71274 + 255, 255, 255, 255, 255, 255, 255, 231, 62, 0, 0, 0, 3, 11, 12, 12, 32.71275 + 12, 12, 12, 20, 36, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71276 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 36, 17, 32.71277 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 20, 65, 71, 71, 71, 71, 71, 32.71278 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 55, 16, 12, 32.71279 + 12, 6, 0, 0, 95, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71280 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 64, 0, 0, 32.71281 + 0, 3, 10, 12, 12, 12, 12, 12, 12, 33, 39, 39, 39, 39, 39, 39, 32.71282 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71283 + 39, 39, 39, 39, 30, 12, 12, 12, 12, 12, 12, 12, 12, 37, 71, 71, 32.71284 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71285 + 53, 38, 12, 12, 10, 3, 0, 18, 162, 255, 255, 255, 255, 255, 255, 255, 32.71286 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71287 + 255, 228, 76, 0, 0, 0, 3, 11, 12, 12, 12, 12, 12, 20, 27, 39, 32.71288 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71289 + 39, 39, 39, 39, 39, 39, 39, 39, 35, 28, 15, 12, 12, 12, 12, 12, 32.71290 + 36, 69, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71291 + 71, 71, 71, 71, 21, 12, 12, 12, 8, 0, 0, 54, 255, 255, 255, 255, 32.71292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71293 + 255, 255, 255, 255, 255, 255, 236, 77, 0, 0, 0, 3, 10, 11, 12, 12, 32.71294 + 12, 12, 18, 36, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71295 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 14, 32.71296 + 13, 12, 12, 14, 54, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71297 + 71, 71, 71, 71, 71, 71, 68, 37, 13, 12, 12, 11, 1, 0, 0, 220, 32.71298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 50, 0, 0, 32.71300 + 0, 4, 11, 12, 12, 12, 12, 12, 25, 38, 39, 39, 39, 39, 39, 39, 32.71301 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71302 + 39, 39, 39, 39, 30, 21, 21, 44, 71, 71, 71, 71, 71, 71, 71, 71, 32.71303 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 48, 12, 12, 12, 12, 8, 32.71304 + 0, 0, 67, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71306 + 255, 211, 50, 0, 0, 0, 4, 12, 12, 12, 12, 12, 12, 38, 39, 39, 32.71307 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71308 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 44, 51, 54, 71, 71, 32.71309 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 38, 26, 12, 32.71310 + 12, 12, 7, 0, 0, 0, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71312 + 255, 255, 255, 255, 255, 255, 231, 41, 0, 0, 0, 4, 10, 11, 12, 12, 32.71313 + 12, 15, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71314 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71315 + 39, 39, 52, 67, 70, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71316 + 37, 12, 12, 12, 12, 11, 4, 0, 0, 111, 246, 255, 255, 255, 255, 255, 32.71317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 95, 35, 0, 0, 32.71319 + 0, 6, 12, 12, 12, 12, 19, 28, 38, 39, 39, 39, 39, 39, 39, 39, 32.71320 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71321 + 39, 39, 39, 39, 39, 39, 39, 39, 67, 71, 71, 71, 71, 71, 71, 71, 32.71322 + 71, 71, 66, 48, 24, 12, 12, 12, 11, 5, 0, 0, 25, 175, 255, 255, 32.71323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71325 + 255, 195, 21, 0, 0, 0, 6, 12, 12, 12, 12, 12, 24, 39, 39, 39, 32.71326 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71327 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 51, 71, 71, 71, 32.71328 + 71, 71, 71, 71, 71, 71, 59, 12, 12, 12, 12, 12, 5, 0, 0, 4, 32.71329 + 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71331 + 255, 255, 255, 255, 255, 255, 209, 22, 0, 0, 0, 6, 11, 12, 12, 12, 32.71332 + 12, 15, 30, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71333 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71334 + 39, 52, 71, 71, 71, 71, 71, 71, 71, 71, 20, 12, 12, 12, 12, 11, 32.71335 + 1, 0, 0, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71337 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 42, 0, 0, 0, 32.71338 + 5, 11, 12, 12, 12, 12, 22, 29, 39, 39, 39, 39, 39, 39, 39, 39, 32.71339 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71340 + 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 71, 54, 13, 12, 32.71341 + 12, 12, 10, 2, 0, 0, 55, 222, 255, 255, 255, 255, 255, 255, 255, 255, 32.71342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71343 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71344 + 202, 31, 0, 0, 0, 6, 12, 12, 12, 12, 12, 13, 27, 39, 39, 39, 32.71345 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71346 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 32.71347 + 52, 17, 12, 12, 12, 10, 2, 0, 0, 52, 214, 255, 255, 255, 255, 255, 32.71348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71349 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71350 + 255, 255, 255, 255, 255, 233, 174, 18, 0, 0, 1, 7, 11, 12, 12, 12, 32.71351 + 20, 34, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71352 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 50, 71, 71, 32.71353 + 71, 71, 71, 71, 42, 12, 12, 12, 10, 1, 0, 0, 3, 107, 255, 255, 32.71354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71356 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 25, 0, 0, 0, 32.71357 + 6, 9, 12, 12, 12, 12, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71358 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71359 + 39, 50, 71, 71, 71, 71, 71, 71, 42, 12, 12, 9, 2, 0, 0, 0, 32.71360 + 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71362 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71363 + 188, 1, 0, 0, 0, 1, 4, 11, 12, 12, 12, 21, 21, 35, 39, 39, 32.71364 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71365 + 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 42, 12, 10, 2, 32.71366 + 0, 0, 0, 102, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71368 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71369 + 255, 255, 255, 255, 255, 232, 143, 12, 0, 0, 0, 2, 10, 12, 12, 12, 32.71370 + 12, 13, 19, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71371 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 53, 71, 71, 71, 71, 70, 50, 32.71372 + 14, 10, 1, 0, 0, 63, 232, 246, 255, 255, 255, 255, 255, 255, 255, 255, 32.71373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71374 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71375 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 87, 0, 0, 0, 32.71376 + 2, 6, 11, 12, 12, 12, 12, 19, 27, 38, 39, 39, 39, 39, 39, 39, 32.71377 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 52, 71, 71, 71, 32.71378 + 71, 71, 70, 12, 9, 1, 0, 0, 70, 240, 255, 255, 255, 255, 255, 255, 32.71379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71381 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71382 + 240, 100, 0, 0, 0, 0, 3, 6, 12, 12, 12, 12, 12, 24, 39, 39, 32.71383 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71384 + 67, 71, 71, 71, 71, 71, 70, 10, 2, 0, 0, 73, 226, 255, 255, 255, 32.71385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71387 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71388 + 255, 255, 255, 255, 255, 247, 235, 61, 0, 0, 0, 0, 5, 9, 12, 12, 32.71389 + 12, 12, 14, 27, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71390 + 39, 39, 50, 68, 70, 71, 71, 71, 71, 64, 24, 0, 0, 0, 45, 244, 32.71391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71393 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 110, 44, 0, 0, 32.71395 + 0, 0, 8, 12, 12, 12, 12, 12, 25, 27, 34, 39, 39, 39, 39, 39, 32.71396 + 39, 39, 39, 39, 39, 51, 60, 71, 71, 71, 71, 71, 71, 33, 0, 0, 32.71397 + 0, 0, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71400 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71401 + 255, 207, 163, 0, 0, 0, 0, 3, 9, 12, 12, 12, 12, 12, 17, 36, 32.71402 + 39, 39, 39, 39, 39, 39, 39, 39, 54, 70, 71, 71, 71, 71, 71, 71, 32.71403 + 56, 10, 0, 0, 84, 175, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71406 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71407 + 255, 255, 255, 255, 255, 255, 253, 181, 49, 10, 0, 0, 0, 2, 10, 12, 32.71408 + 12, 12, 12, 13, 13, 13, 13, 13, 13, 55, 69, 69, 70, 71, 71, 71, 32.71409 + 71, 71, 71, 56, 2, 0, 0, 95, 247, 255, 255, 255, 255, 255, 255, 255, 32.71410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71412 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 0, 0, 32.71414 + 0, 0, 2, 6, 11, 12, 12, 12, 12, 12, 12, 12, 12, 36, 50, 71, 32.71415 + 71, 71, 71, 71, 71, 71, 52, 6, 0, 0, 89, 255, 255, 255, 255, 255, 32.71416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71417 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71418 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71419 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71420 + 255, 253, 178, 91, 0, 0, 0, 0, 3, 6, 12, 12, 12, 12, 12, 12, 32.71421 + 12, 12, 15, 48, 71, 71, 71, 71, 71, 53, 8, 0, 0, 0, 196, 255, 32.71422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71424 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71425 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71426 + 255, 255, 255, 255, 255, 255, 255, 249, 243, 60, 30, 0, 0, 0, 0, 8, 32.71427 + 10, 12, 12, 12, 12, 12, 12, 13, 14, 14, 14, 14, 13, 2, 0, 0, 32.71428 + 15, 154, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71430 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71431 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71432 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 32.71433 + 10, 0, 0, 0, 2, 6, 6, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71434 + 6, 0, 0, 7, 158, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71436 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71437 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71438 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71439 + 255, 255, 255, 255, 189, 112, 0, 0, 0, 0, 0, 3, 7, 12, 12, 12, 32.71440 + 12, 12, 8, 3, 0, 0, 0, 154, 254, 255, 255, 255, 255, 255, 255, 255, 32.71441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71443 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71444 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 247, 84, 38, 0, 0, 0, 32.71446 + 0, 0, 2, 9, 11, 11, 5, 0, 0, 19, 168, 253, 254, 255, 255, 255, 32.71447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71450 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71452 + 211, 121, 117, 0, 0, 0, 0, 0, 4, 5, 0, 0, 13, 168, 254, 255, 32.71453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71456 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71457 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71458 + 255, 255, 255, 255, 255, 255, 252, 186, 91, 0, 0, 0, 0, 0, 0, 0, 32.71459 + 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71462 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71463 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 50, 0, 32.71465 + 0, 0, 0, 39, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71468 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71469 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71471 + 255, 255, 226, 68, 0, 0, 50, 208, 255, 255, 255, 255, 255, 255, 255, 255, 32.71472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71475 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71476 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71477 + 255, 255, 255, 255, 255, 255, 255, 225, 190, 190, 216, 255, 255, 255, 255, 255, 32.71478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71481 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71482 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 190, 158, 0, 0, 32.71484 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.71485 + 0, 0, 106, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71488 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71489 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 127, 68, 32.71490 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 6, 6, 6, 6, 6, 6, 32.71491 + 2, 0, 0, 0, 0, 0, 0, 3, 125, 190, 255, 255, 255, 255, 255, 255, 32.71492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71494 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71495 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 32.71496 + 153, 60, 0, 0, 0, 0, 0, 5, 9, 10, 10, 10, 10, 13, 14, 14, 32.71497 + 14, 14, 13, 12, 10, 9, 9, 9, 1, 0, 0, 0, 0, 30, 60, 247, 32.71498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71501 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71502 + 232, 186, 179, 0, 0, 0, 0, 0, 2, 14, 27, 27, 65, 71, 87, 99, 32.71503 + 122, 176, 176, 176, 176, 176, 153, 56, 56, 56, 39, 12, 12, 12, 7, 0, 32.71504 + 0, 0, 0, 39, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71507 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71508 + 255, 255, 255, 242, 81, 0, 0, 0, 0, 0, 1, 20, 41, 47, 71, 71, 32.71509 + 71, 90, 155, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 146, 97, 32.71510 + 90, 12, 12, 7, 4, 0, 0, 0, 54, 213, 255, 255, 255, 255, 255, 255, 32.71511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71514 + 255, 255, 255, 255, 255, 252, 129, 51, 0, 0, 0, 0, 4, 10, 21, 63, 32.71515 + 71, 71, 71, 71, 80, 160, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71516 + 176, 176, 176, 176, 172, 100, 16, 13, 11, 4, 0, 0, 0, 39, 234, 255, 32.71517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71520 + 255, 255, 255, 255, 255, 255, 255, 255, 244, 112, 0, 0, 0, 1, 10, 12, 32.71521 + 20, 60, 71, 71, 71, 71, 71, 71, 83, 176, 176, 176, 176, 176, 176, 176, 32.71522 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 82, 46, 12, 5, 0, 32.71523 + 0, 0, 29, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 100, 0, 0, 0, 32.71527 + 2, 9, 13, 43, 57, 71, 71, 71, 71, 71, 71, 71, 83, 176, 176, 176, 32.71528 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71529 + 155, 100, 34, 5, 0, 0, 0, 101, 255, 255, 255, 255, 255, 255, 255, 255, 32.71530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71531 + 255, 249, 243, 243, 243, 243, 79, 53, 53, 53, 53, 53, 53, 53, 53, 53, 32.71532 + 86, 243, 243, 243, 243, 243, 243, 243, 249, 255, 255, 255, 255, 252, 137, 0, 32.71533 + 0, 0, 0, 1, 10, 13, 16, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71534 + 82, 172, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71535 + 176, 176, 176, 176, 176, 176, 150, 20, 5, 0, 0, 21, 173, 253, 255, 255, 32.71536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71537 + 255, 255, 255, 254, 181, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.71538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 180, 255, 255, 32.71539 + 255, 204, 0, 0, 0, 0, 2, 10, 12, 45, 71, 71, 71, 71, 71, 71, 32.71540 + 71, 71, 71, 71, 71, 96, 163, 176, 176, 176, 175, 144, 159, 176, 176, 176, 32.71541 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 151, 38, 6, 0, 0, 32.71542 + 0, 163, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71543 + 255, 255, 255, 255, 255, 255, 185, 112, 3, 0, 0, 0, 0, 0, 0, 13, 32.71544 + 72, 97, 97, 97, 97, 97, 97, 28, 0, 0, 0, 0, 0, 0, 0, 0, 32.71545 + 0, 1, 114, 182, 255, 96, 0, 0, 0, 6, 9, 12, 22, 59, 71, 71, 32.71546 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 98, 118, 118, 118, 117, 71, 32.71547 + 93, 118, 118, 142, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71548 + 142, 40, 0, 0, 0, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71549 + 255, 255, 255, 255, 255, 255, 255, 246, 235, 49, 24, 0, 0, 1, 4, 12, 32.71550 + 57, 57, 70, 146, 167, 176, 176, 176, 176, 176, 176, 152, 141, 141, 141, 141, 32.71551 + 97, 15, 5, 0, 0, 0, 0, 24, 49, 1, 0, 0, 9, 12, 12, 16, 32.71552 + 63, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71553 + 71, 71, 71, 71, 71, 71, 71, 79, 143, 175, 176, 176, 176, 176, 176, 176, 32.71554 + 176, 176, 176, 176, 176, 154, 25, 0, 0, 5, 114, 248, 255, 255, 255, 255, 32.71555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 229, 78, 0, 0, 0, 0, 32.71556 + 21, 43, 71, 71, 71, 91, 166, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71557 + 176, 176, 176, 176, 176, 133, 73, 24, 7, 0, 0, 0, 0, 0, 0, 2, 32.71558 + 11, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71559 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 140, 176, 176, 32.71560 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 149, 7, 0, 0, 0, 147, 32.71561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 243, 75, 0, 32.71562 + 0, 0, 19, 40, 70, 71, 71, 71, 94, 159, 176, 176, 176, 176, 176, 176, 32.71563 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 138, 104, 45, 15, 0, 0, 32.71564 + 0, 0, 0, 8, 12, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 32.71565 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71566 + 71, 77, 138, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 164, 66, 32.71567 + 2, 0, 0, 64, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 32.71568 + 121, 42, 0, 0, 0, 19, 64, 71, 71, 71, 71, 71, 111, 176, 176, 176, 32.71569 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 170, 32.71570 + 114, 30, 10, 0, 0, 0, 0, 8, 12, 12, 12, 17, 71, 71, 71, 71, 32.71571 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71572 + 71, 71, 71, 71, 71, 71, 78, 142, 176, 176, 176, 176, 176, 176, 176, 176, 32.71573 + 176, 176, 176, 115, 15, 1, 0, 0, 193, 255, 255, 255, 255, 255, 255, 255, 32.71574 + 255, 255, 244, 108, 0, 0, 0, 12, 24, 71, 71, 71, 71, 71, 71, 71, 32.71575 + 111, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71576 + 176, 176, 176, 176, 176, 121, 81, 8, 1, 0, 0, 8, 12, 12, 12, 17, 32.71577 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71578 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 114, 170, 176, 176, 176, 32.71579 + 176, 176, 176, 176, 176, 176, 176, 176, 84, 7, 0, 0, 13, 255, 255, 255, 32.71580 + 255, 255, 255, 255, 255, 255, 108, 0, 0, 0, 12, 57, 71, 71, 71, 71, 32.71581 + 71, 71, 71, 71, 111, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71582 + 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 158, 60, 3, 0, 0, 8, 32.71583 + 12, 12, 12, 17, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71584 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71585 + 113, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 109, 18, 0, 0, 32.71586 + 13, 255, 255, 255, 255, 255, 255, 255, 255, 240, 24, 0, 0, 5, 36, 44, 32.71587 + 44, 44, 44, 44, 67, 71, 71, 71, 77, 137, 174, 176, 176, 175, 144, 88, 32.71588 + 88, 88, 88, 88, 101, 170, 176, 176, 176, 176, 176, 176, 176, 176, 176, 162, 32.71589 + 84, 3, 1, 8, 12, 12, 12, 16, 67, 71, 71, 71, 71, 71, 71, 71, 32.71590 + 71, 71, 71, 71, 71, 71, 67, 65, 52, 45, 65, 67, 71, 71, 71, 71, 32.71591 + 71, 71, 71, 71, 79, 169, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 32.71592 + 109, 23, 6, 0, 2, 103, 255, 255, 255, 255, 255, 255, 218, 57, 0, 0, 32.71593 + 8, 34, 39, 39, 39, 39, 39, 39, 43, 60, 60, 60, 60, 66, 130, 139, 32.71594 + 139, 136, 71, 71, 71, 71, 71, 71, 71, 99, 163, 176, 176, 176, 176, 176, 32.71595 + 176, 176, 176, 176, 99, 29, 12, 12, 12, 12, 12, 12, 24, 62, 71, 71, 32.71596 + 71, 71, 71, 71, 71, 71, 71, 71, 68, 50, 27, 12, 12, 12, 12, 21, 32.71597 + 50, 65, 71, 71, 71, 71, 71, 71, 71, 93, 160, 176, 176, 176, 176, 176, 32.71598 + 176, 176, 176, 176, 109, 64, 7, 0, 0, 73, 255, 255, 255, 255, 255, 227, 32.71599 + 59, 0, 0, 8, 32, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71600 + 39, 47, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 98, 120, 32.71601 + 176, 176, 176, 176, 176, 176, 176, 176, 99, 66, 31, 12, 12, 12, 12, 12, 32.71602 + 12, 45, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 64, 12, 12, 12, 32.71603 + 12, 12, 12, 12, 12, 29, 69, 71, 71, 71, 71, 71, 71, 71, 129, 176, 32.71604 + 176, 176, 176, 176, 176, 176, 176, 176, 109, 68, 33, 3, 0, 73, 255, 255, 32.71605 + 255, 255, 255, 187, 0, 0, 0, 16, 39, 39, 39, 39, 39, 39, 39, 39, 32.71606 + 39, 39, 39, 39, 39, 39, 43, 52, 71, 71, 71, 71, 71, 71, 71, 71, 32.71607 + 71, 71, 71, 72, 114, 171, 176, 176, 176, 176, 176, 176, 99, 71, 45, 12, 32.71608 + 12, 12, 12, 12, 12, 16, 22, 66, 71, 71, 71, 71, 71, 71, 68, 36, 32.71609 + 19, 12, 12, 12, 12, 12, 12, 12, 12, 12, 20, 20, 50, 65, 71, 71, 32.71610 + 71, 71, 79, 149, 176, 176, 176, 176, 176, 176, 174, 133, 76, 71, 65, 22, 32.71611 + 0, 11, 152, 255, 255, 255, 255, 13, 0, 0, 15, 39, 39, 39, 39, 39, 32.71612 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 45, 66, 71, 71, 71, 32.71613 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 111, 169, 176, 176, 176, 176, 157, 32.71614 + 89, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 22, 49, 49, 49, 49, 32.71615 + 49, 49, 34, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71616 + 12, 17, 57, 71, 71, 71, 71, 73, 148, 176, 176, 176, 176, 150, 127, 71, 32.71617 + 71, 71, 46, 0, 0, 0, 134, 255, 255, 255, 255, 13, 0, 0, 34, 39, 32.71618 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71619 + 46, 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 109, 176, 32.71620 + 176, 176, 159, 91, 71, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71621 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71622 + 12, 12, 12, 12, 12, 12, 20, 56, 71, 71, 71, 71, 81, 111, 111, 111, 32.71623 + 111, 83, 71, 71, 71, 71, 46, 0, 0, 0, 134, 255, 255, 255, 98, 1, 32.71624 + 0, 22, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71625 + 39, 39, 39, 39, 39, 59, 63, 63, 63, 70, 71, 71, 71, 71, 71, 71, 32.71626 + 71, 71, 71, 85, 85, 85, 81, 71, 71, 71, 45, 12, 12, 12, 12, 12, 32.71627 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71628 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 71, 71, 71, 71, 32.71629 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 67, 25, 0, 0, 134, 255, 32.71630 + 255, 255, 73, 0, 6, 30, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71631 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 12, 53, 71, 71, 32.71632 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 45, 12, 32.71633 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71634 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 34, 32.71635 + 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 45, 32.71636 + 4, 0, 84, 232, 255, 255, 73, 0, 16, 39, 39, 39, 39, 39, 39, 39, 32.71637 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 32.71638 + 12, 17, 34, 59, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71639 + 71, 71, 45, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71640 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71641 + 12, 12, 12, 12, 33, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71642 + 71, 71, 71, 71, 13, 0, 0, 194, 255, 148, 8, 0, 16, 39, 39, 39, 32.71643 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71644 + 39, 17, 12, 12, 12, 12, 12, 16, 26, 66, 71, 71, 71, 71, 71, 71, 32.71645 + 71, 71, 71, 71, 71, 54, 15, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71646 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71647 + 12, 12, 12, 12, 12, 12, 12, 12, 16, 65, 71, 71, 71, 71, 71, 71, 32.71648 + 71, 71, 71, 71, 71, 71, 71, 71, 14, 0, 0, 194, 255, 134, 0, 0, 32.71649 + 16, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71650 + 39, 39, 39, 39, 39, 17, 12, 12, 12, 12, 12, 12, 12, 36, 71, 71, 32.71651 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 14, 12, 12, 12, 12, 12, 12, 32.71652 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71653 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71654 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 0, 0, 119, 32.71655 + 255, 134, 0, 1, 20, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71656 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 17, 12, 12, 12, 12, 12, 12, 32.71657 + 12, 20, 33, 66, 71, 71, 71, 71, 71, 71, 71, 52, 33, 12, 12, 12, 32.71658 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71659 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71660 + 12, 30, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71661 + 22, 0, 0, 0, 245, 114, 0, 2, 23, 39, 39, 39, 39, 39, 39, 39, 32.71662 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 25, 12, 12, 12, 32.71663 + 12, 12, 12, 12, 12, 12, 12, 22, 62, 62, 62, 62, 62, 62, 51, 15, 32.71664 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71665 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71666 + 12, 12, 12, 12, 12, 30, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71667 + 71, 71, 71, 71, 24, 27, 0, 0, 194, 0, 0, 2, 23, 39, 39, 39, 32.71668 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71669 + 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71670 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71671 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71672 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 71, 71, 71, 71, 32.71673 + 71, 71, 71, 71, 71, 71, 71, 71, 30, 111, 0, 0, 194, 0, 0, 2, 32.71674 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71675 + 39, 39, 39, 39, 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71676 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71677 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71678 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71679 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 8, 0, 0, 32.71680 + 194, 0, 0, 10, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71681 + 39, 39, 39, 39, 39, 39, 39, 39, 23, 12, 12, 12, 12, 12, 12, 12, 32.71682 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71683 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71684 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71685 + 12, 37, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71686 + 22, 8, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 32.71687 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 23, 12, 12, 12, 32.71688 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71689 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71690 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71691 + 12, 12, 12, 12, 16, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71692 + 71, 71, 71, 71, 22, 8, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 32.71693 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32, 32.71694 + 15, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71695 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71696 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71697 + 12, 12, 12, 12, 12, 12, 12, 12, 16, 71, 71, 71, 71, 71, 71, 71, 32.71698 + 71, 71, 71, 71, 71, 71, 71, 71, 22, 8, 0, 0, 194, 0, 0, 11, 32.71699 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71700 + 39, 39, 39, 38, 22, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71701 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71702 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71703 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 25, 71, 71, 71, 32.71704 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 22, 6, 0, 0, 32.71705 + 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71706 + 39, 39, 39, 39, 39, 39, 39, 39, 30, 14, 12, 12, 12, 12, 12, 12, 32.71707 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71708 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71709 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71710 + 61, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71711 + 22, 0, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 32.71712 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 31, 12, 12, 32.71713 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71714 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71715 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71716 + 12, 12, 12, 12, 61, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71717 + 71, 71, 71, 47, 14, 0, 0, 0, 194, 0, 0, 11, 23, 39, 39, 39, 32.71718 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71719 + 39, 37, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71720 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71721 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71722 + 12, 12, 12, 12, 12, 12, 12, 45, 70, 71, 71, 71, 71, 71, 71, 71, 32.71723 + 71, 71, 71, 71, 71, 71, 71, 36, 11, 0, 0, 183, 194, 0, 0, 11, 32.71724 + 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71725 + 39, 39, 39, 39, 39, 38, 20, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71726 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71727 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71728 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 71, 71, 71, 71, 32.71729 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 61, 25, 7, 0, 0, 194, 32.71730 + 194, 0, 0, 11, 23, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71731 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 31, 12, 12, 12, 12, 12, 32.71732 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71733 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71734 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, 32.71735 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 50, 12, 32.71736 + 2, 0, 0, 194, 194, 0, 0, 11, 12, 30, 39, 39, 39, 39, 39, 39, 32.71737 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 38, 27, 32.71738 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71739 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71740 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71741 + 12, 12, 33, 69, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71742 + 71, 71, 50, 10, 1, 0, 128, 252, 194, 0, 0, 11, 12, 29, 39, 39, 32.71743 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71744 + 39, 39, 39, 39, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71745 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71746 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71747 + 12, 12, 12, 12, 12, 12, 34, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71748 + 71, 71, 71, 71, 71, 68, 32, 5, 0, 0, 134, 255, 194, 0, 0, 11, 32.71749 + 12, 17, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71750 + 39, 39, 39, 39, 39, 39, 39, 39, 33, 12, 12, 12, 12, 12, 12, 12, 32.71751 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71752 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71753 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 17, 60, 71, 71, 71, 71, 71, 32.71754 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 64, 12, 5, 0, 0, 134, 255, 32.71755 + 194, 0, 0, 9, 12, 12, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71756 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32, 12, 12, 32.71757 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71758 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71759 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 30, 71, 71, 32.71760 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 54, 11, 3, 32.71761 + 0, 71, 251, 255, 194, 0, 0, 2, 12, 12, 26, 39, 39, 39, 39, 39, 32.71762 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71763 + 39, 35, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71764 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71765 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71766 + 30, 67, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71767 + 71, 19, 7, 0, 0, 73, 255, 255, 238, 98, 0, 0, 6, 12, 12, 26, 32.71768 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71769 + 39, 39, 39, 39, 39, 39, 26, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71770 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71771 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71772 + 12, 12, 12, 12, 51, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71773 + 71, 71, 71, 71, 71, 18, 2, 0, 9, 206, 255, 255, 255, 134, 0, 0, 32.71774 + 5, 12, 12, 19, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71775 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 38, 24, 12, 12, 12, 12, 32.71776 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71777 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71778 + 12, 12, 12, 12, 12, 12, 12, 18, 55, 71, 71, 71, 71, 71, 71, 71, 32.71779 + 71, 71, 71, 71, 71, 71, 71, 71, 62, 16, 0, 0, 60, 255, 255, 255, 32.71780 + 255, 193, 36, 0, 2, 9, 12, 12, 20, 36, 39, 39, 39, 39, 39, 39, 32.71781 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71782 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71783 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71784 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 37, 71, 71, 71, 71, 32.71785 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 33, 6, 0, 0, 32.71786 + 208, 255, 255, 255, 255, 255, 73, 0, 0, 7, 12, 12, 12, 34, 39, 39, 32.71787 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71788 + 39, 39, 39, 39, 32, 23, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71789 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71790 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 20, 62, 32.71791 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71792 + 33, 1, 0, 0, 208, 255, 255, 255, 255, 255, 119, 3, 0, 0, 10, 12, 32.71793 + 12, 14, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71794 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 30, 14, 12, 12, 12, 12, 12, 32.71795 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71796 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71797 + 12, 12, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71798 + 71, 71, 68, 38, 10, 1, 0, 37, 220, 255, 255, 255, 255, 255, 255, 13, 32.71799 + 0, 0, 6, 12, 12, 14, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71800 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 30, 24, 32.71801 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71802 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71803 + 12, 12, 12, 12, 12, 12, 68, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71804 + 71, 71, 71, 71, 71, 71, 60, 5, 2, 0, 0, 147, 255, 255, 255, 255, 32.71805 + 255, 255, 255, 161, 0, 0, 1, 11, 12, 12, 24, 38, 39, 39, 39, 39, 32.71806 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71807 + 39, 39, 39, 35, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71808 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71809 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 68, 71, 71, 71, 71, 71, 32.71810 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 25, 0, 0, 0, 66, 229, 32.71811 + 255, 255, 255, 255, 255, 255, 255, 220, 39, 0, 0, 4, 12, 12, 12, 26, 32.71812 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71813 + 39, 39, 39, 39, 39, 39, 39, 39, 31, 14, 12, 12, 12, 12, 12, 12, 32.71814 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71815 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 54, 71, 71, 32.71816 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 14, 0, 32.71817 + 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 0, 0, 2, 32.71818 + 9, 12, 12, 19, 35, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71819 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 22, 12, 12, 32.71820 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71821 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71822 + 26, 63, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71823 + 71, 49, 12, 0, 0, 0, 87, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71824 + 231, 67, 0, 0, 7, 11, 12, 12, 33, 39, 39, 39, 39, 39, 39, 39, 32.71825 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71826 + 39, 35, 31, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71827 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71828 + 12, 12, 12, 23, 64, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71829 + 71, 71, 71, 71, 50, 16, 2, 0, 0, 21, 217, 255, 255, 255, 255, 255, 32.71830 + 255, 255, 255, 255, 255, 135, 7, 0, 0, 10, 12, 12, 27, 39, 39, 39, 32.71831 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71832 + 39, 39, 39, 39, 39, 39, 37, 17, 12, 12, 12, 12, 12, 12, 12, 12, 32.71833 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71834 + 12, 12, 12, 12, 12, 12, 12, 39, 71, 71, 71, 71, 71, 71, 71, 71, 32.71835 + 71, 71, 71, 71, 71, 71, 71, 67, 35, 12, 0, 0, 0, 27, 255, 255, 32.71836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 27, 0, 0, 10, 12, 12, 32.71837 + 12, 28, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71838 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 26, 15, 12, 12, 32.71839 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71840 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 36, 71, 71, 71, 71, 71, 32.71841 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 58, 12, 7, 0, 0, 32.71842 + 0, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 0, 32.71843 + 0, 2, 11, 12, 12, 18, 37, 38, 39, 39, 39, 39, 39, 39, 39, 39, 32.71844 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71845 + 39, 18, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71846 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 14, 58, 71, 32.71847 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 58, 32.71848 + 12, 3, 0, 0, 7, 223, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71849 + 255, 255, 231, 48, 0, 0, 3, 12, 12, 12, 12, 25, 38, 39, 39, 39, 32.71850 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71851 + 39, 39, 39, 39, 39, 39, 32, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71852 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71853 + 29, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71854 + 71, 71, 71, 44, 10, 2, 0, 30, 189, 255, 255, 255, 255, 255, 255, 255, 32.71855 + 255, 255, 255, 255, 255, 255, 255, 161, 0, 0, 1, 9, 12, 12, 12, 12, 32.71856 + 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71857 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 26, 16, 12, 12, 12, 32.71858 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71859 + 12, 12, 12, 13, 52, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71860 + 71, 71, 71, 71, 71, 71, 46, 12, 6, 0, 0, 101, 255, 255, 255, 255, 32.71861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 81, 0, 0, 6, 32.71862 + 11, 12, 12, 12, 13, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71863 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71864 + 20, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71865 + 12, 12, 12, 12, 12, 12, 12, 51, 71, 71, 71, 71, 71, 71, 71, 71, 32.71866 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 69, 26, 11, 6, 0, 2, 110, 32.71867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71868 + 149, 12, 0, 0, 6, 12, 12, 12, 12, 20, 30, 38, 39, 39, 39, 39, 32.71869 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71870 + 39, 39, 39, 39, 39, 21, 16, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71871 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 22, 63, 71, 71, 71, 71, 32.71872 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 66, 32, 12, 9, 32.71873 + 0, 0, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71874 + 255, 255, 255, 255, 255, 151, 0, 0, 0, 12, 12, 12, 12, 12, 12, 25, 32.71875 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71876 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 27, 12, 12, 12, 12, 12, 32.71877 + 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 15, 45, 60, 71, 32.71878 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71879 + 55, 12, 12, 4, 0, 0, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 13, 0, 0, 4, 11, 12, 32.71881 + 12, 12, 12, 12, 16, 29, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71882 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 36, 34, 32.71883 + 14, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 14, 32.71884 + 22, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71885 + 71, 71, 71, 66, 19, 12, 11, 0, 0, 0, 235, 255, 255, 255, 255, 255, 32.71886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 37, 32.71887 + 0, 0, 3, 10, 12, 12, 12, 12, 12, 12, 35, 39, 39, 39, 39, 39, 32.71888 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71889 + 39, 39, 39, 39, 21, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.71890 + 12, 12, 12, 49, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71891 + 71, 71, 71, 71, 71, 71, 71, 24, 12, 12, 3, 0, 0, 57, 241, 255, 32.71892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71893 + 255, 255, 255, 114, 0, 0, 0, 3, 11, 12, 12, 12, 12, 12, 21, 28, 32.71894 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71895 + 39, 39, 39, 39, 39, 39, 39, 39, 37, 27, 17, 12, 12, 12, 12, 12, 32.71896 + 12, 12, 12, 12, 12, 12, 25, 62, 71, 71, 71, 71, 71, 71, 71, 71, 32.71897 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 51, 17, 12, 12, 3, 0, 32.71898 + 0, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71899 + 255, 255, 255, 255, 255, 255, 255, 231, 62, 0, 0, 0, 3, 11, 12, 12, 32.71900 + 12, 12, 12, 20, 36, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71901 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 36, 17, 32.71902 + 13, 12, 12, 12, 12, 12, 12, 12, 12, 20, 65, 71, 71, 71, 71, 71, 32.71903 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 55, 16, 12, 32.71904 + 12, 6, 0, 0, 95, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 64, 0, 0, 32.71906 + 0, 3, 10, 12, 12, 12, 12, 12, 12, 33, 39, 39, 39, 39, 39, 39, 32.71907 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71908 + 39, 39, 39, 39, 30, 12, 12, 12, 12, 12, 12, 12, 12, 37, 71, 71, 32.71909 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71910 + 53, 38, 12, 12, 10, 3, 0, 18, 162, 255, 255, 255, 255, 255, 255, 255, 32.71911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71912 + 255, 228, 76, 0, 0, 0, 3, 11, 12, 12, 12, 12, 12, 20, 27, 39, 32.71913 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71914 + 39, 39, 39, 39, 39, 39, 39, 39, 35, 28, 15, 12, 12, 12, 12, 12, 32.71915 + 36, 69, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71916 + 71, 71, 71, 71, 21, 12, 12, 12, 8, 0, 0, 54, 255, 255, 255, 255, 32.71917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71918 + 255, 255, 255, 255, 255, 255, 236, 77, 0, 0, 0, 3, 10, 11, 12, 12, 32.71919 + 12, 12, 18, 36, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71920 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 35, 14, 32.71921 + 13, 12, 12, 14, 54, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71922 + 71, 71, 71, 71, 71, 71, 68, 37, 13, 12, 12, 11, 1, 0, 0, 220, 32.71923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 50, 0, 0, 32.71925 + 0, 4, 11, 12, 12, 12, 12, 12, 25, 38, 39, 39, 39, 39, 39, 39, 32.71926 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71927 + 39, 39, 39, 39, 30, 21, 21, 44, 71, 71, 71, 71, 71, 71, 71, 71, 32.71928 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 48, 12, 12, 12, 12, 8, 32.71929 + 0, 0, 67, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71931 + 255, 211, 50, 0, 0, 0, 4, 12, 12, 12, 12, 12, 12, 38, 39, 39, 32.71932 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71933 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 44, 51, 54, 71, 71, 32.71934 + 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 38, 26, 12, 32.71935 + 12, 12, 7, 0, 0, 0, 188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71937 + 255, 255, 255, 255, 255, 255, 231, 41, 0, 0, 0, 4, 10, 11, 12, 12, 32.71938 + 12, 15, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71939 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71940 + 39, 39, 52, 67, 70, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 32.71941 + 37, 12, 12, 12, 12, 11, 4, 0, 0, 111, 246, 255, 255, 255, 255, 255, 32.71942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 95, 35, 0, 0, 32.71944 + 0, 6, 12, 12, 12, 12, 19, 28, 38, 39, 39, 39, 39, 39, 39, 39, 32.71945 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71946 + 39, 39, 39, 39, 39, 39, 39, 39, 67, 71, 71, 71, 71, 71, 71, 71, 32.71947 + 71, 71, 66, 48, 24, 12, 12, 12, 11, 5, 0, 0, 25, 175, 255, 255, 32.71948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71950 + 255, 195, 21, 0, 0, 0, 6, 12, 12, 12, 12, 12, 24, 39, 39, 39, 32.71951 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71952 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 51, 71, 71, 71, 32.71953 + 71, 71, 71, 71, 71, 71, 59, 12, 12, 12, 12, 12, 5, 0, 0, 4, 32.71954 + 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71956 + 255, 255, 255, 255, 255, 255, 209, 22, 0, 0, 0, 6, 11, 12, 12, 12, 32.71957 + 12, 15, 30, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71958 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71959 + 39, 52, 71, 71, 71, 71, 71, 71, 71, 71, 20, 12, 12, 12, 12, 11, 32.71960 + 1, 0, 0, 33, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71962 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 202, 42, 0, 0, 0, 32.71963 + 5, 11, 12, 12, 12, 12, 22, 29, 39, 39, 39, 39, 39, 39, 39, 39, 32.71964 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71965 + 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 71, 54, 13, 12, 32.71966 + 12, 12, 10, 2, 0, 0, 55, 222, 255, 255, 255, 255, 255, 255, 255, 255, 32.71967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71968 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71969 + 202, 31, 0, 0, 0, 6, 12, 12, 12, 12, 12, 13, 27, 39, 39, 39, 32.71970 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71971 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 32.71972 + 52, 17, 12, 12, 12, 10, 2, 0, 0, 52, 214, 255, 255, 255, 255, 255, 32.71973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71974 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71975 + 255, 255, 255, 255, 255, 233, 174, 18, 0, 0, 1, 7, 11, 12, 12, 12, 32.71976 + 20, 34, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71977 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 50, 71, 71, 32.71978 + 71, 71, 71, 71, 42, 12, 12, 12, 10, 1, 0, 0, 3, 107, 255, 255, 32.71979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71981 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 25, 0, 0, 0, 32.71982 + 6, 9, 12, 12, 12, 12, 26, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71983 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71984 + 39, 50, 71, 71, 71, 71, 71, 71, 42, 12, 12, 9, 2, 0, 0, 0, 32.71985 + 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71987 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71988 + 188, 1, 0, 0, 0, 1, 4, 11, 12, 12, 12, 21, 21, 35, 39, 39, 32.71989 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71990 + 39, 39, 39, 39, 39, 50, 71, 71, 71, 71, 71, 71, 42, 12, 10, 2, 32.71991 + 0, 0, 0, 102, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71993 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71994 + 255, 255, 255, 255, 255, 232, 143, 12, 0, 0, 0, 2, 10, 12, 12, 12, 32.71995 + 12, 13, 19, 36, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.71996 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 53, 71, 71, 71, 71, 70, 50, 32.71997 + 14, 10, 1, 0, 0, 63, 232, 246, 255, 255, 255, 255, 255, 255, 255, 255, 32.71998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.71999 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72000 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 87, 0, 0, 0, 32.72001 + 2, 6, 11, 12, 12, 12, 12, 19, 27, 38, 39, 39, 39, 39, 39, 39, 32.72002 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 52, 71, 71, 71, 32.72003 + 71, 71, 70, 12, 9, 1, 0, 0, 70, 240, 255, 255, 255, 255, 255, 255, 32.72004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72006 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72007 + 240, 100, 0, 0, 0, 0, 3, 6, 12, 12, 12, 12, 12, 24, 39, 39, 32.72008 + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.72009 + 67, 71, 71, 71, 71, 71, 70, 10, 2, 0, 0, 73, 226, 255, 255, 255, 32.72010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72012 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72013 + 255, 255, 255, 255, 255, 247, 235, 61, 0, 0, 0, 0, 5, 9, 12, 12, 32.72014 + 12, 12, 14, 27, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 32.72015 + 39, 39, 50, 68, 70, 71, 71, 71, 71, 64, 24, 0, 0, 0, 45, 244, 32.72016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72018 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 110, 44, 0, 0, 32.72020 + 0, 0, 8, 12, 12, 12, 12, 12, 25, 27, 34, 39, 39, 39, 39, 39, 32.72021 + 39, 39, 39, 39, 39, 51, 60, 71, 71, 71, 71, 71, 71, 33, 0, 0, 32.72022 + 0, 0, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72025 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72026 + 255, 207, 163, 0, 0, 0, 0, 3, 9, 12, 12, 12, 12, 12, 17, 36, 32.72027 + 39, 39, 39, 39, 39, 39, 39, 39, 54, 70, 71, 71, 71, 71, 71, 71, 32.72028 + 56, 10, 0, 0, 84, 175, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72031 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72032 + 255, 255, 255, 255, 255, 255, 253, 181, 49, 10, 0, 0, 0, 2, 10, 12, 32.72033 + 12, 12, 12, 13, 13, 13, 13, 13, 13, 55, 69, 69, 70, 71, 71, 71, 32.72034 + 71, 71, 71, 56, 2, 0, 0, 95, 247, 255, 255, 255, 255, 255, 255, 255, 32.72035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72037 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 143, 0, 0, 32.72039 + 0, 0, 2, 6, 11, 12, 12, 12, 12, 12, 12, 12, 12, 36, 50, 71, 32.72040 + 71, 71, 71, 71, 71, 71, 52, 6, 0, 0, 89, 255, 255, 255, 255, 255, 32.72041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72042 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72043 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72044 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72045 + 255, 253, 178, 91, 0, 0, 0, 0, 3, 6, 12, 12, 12, 12, 12, 12, 32.72046 + 12, 12, 15, 48, 71, 71, 71, 71, 71, 53, 8, 0, 0, 0, 196, 255, 32.72047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72049 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72050 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72051 + 255, 255, 255, 255, 255, 255, 255, 249, 243, 60, 30, 0, 0, 0, 0, 8, 32.72052 + 10, 12, 12, 12, 12, 12, 12, 13, 14, 14, 14, 14, 13, 2, 0, 0, 32.72053 + 15, 154, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72055 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72056 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72057 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 117, 32.72058 + 10, 0, 0, 0, 2, 6, 6, 12, 12, 12, 12, 12, 12, 12, 12, 12, 32.72059 + 6, 0, 0, 7, 158, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72061 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72062 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72063 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72064 + 255, 255, 255, 255, 189, 112, 0, 0, 0, 0, 0, 3, 7, 12, 12, 12, 32.72065 + 12, 12, 8, 3, 0, 0, 0, 154, 254, 255, 255, 255, 255, 255, 255, 255, 32.72066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72068 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72069 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72070 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 247, 84, 38, 0, 0, 0, 32.72071 + 0, 0, 2, 9, 11, 11, 5, 0, 0, 19, 168, 253, 254, 255, 255, 255, 32.72072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72075 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72076 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72077 + 211, 121, 117, 0, 0, 0, 0, 0, 4, 5, 0, 0, 13, 168, 254, 255, 32.72078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72081 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72082 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72083 + 255, 255, 255, 255, 255, 255, 252, 186, 91, 0, 0, 0, 0, 0, 0, 0, 32.72084 + 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72087 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72088 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72089 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 50, 0, 32.72090 + 0, 0, 0, 39, 231, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72093 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72094 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72095 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72096 + 255, 255, 226, 68, 0, 0, 50, 208, 255, 255, 255, 255, 255, 255, 255, 255, 32.72097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72100 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72101 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72102 + 255, 255, 255, 255, 255, 255, 255, 225, 190, 190, 216, 255, 255, 255, 255, 255, 32.72103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.72104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 }; 32.72105 +/* Define image 'title' of size 294x94x1x3 and type 'const unsigned char' */ 32.72106 +const unsigned char data_title[] = { 32.72107 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.72108 + 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 32.72109 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72110 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72111 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72112 + 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 0, 0, 0, 0, 32.72113 + 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 1, 1, 1, 0, 32.72114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 32.72116 + 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.72117 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.72119 + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.72120 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.72121 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72122 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72123 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.72124 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.72125 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72126 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.72127 + 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72128 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72129 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72130 + 0, 0, 0, 0, 0, 0, 1, 1, 3, 1, 3, 1, 3, 1, 1, 1, 32.72131 + 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0, 32.72132 + 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72133 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72134 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 32.72135 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72136 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72137 + 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 32.72138 + 2, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 32.72139 + 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.72140 + 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 32.72141 + 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72142 + 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 32.72143 + 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72144 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 32.72145 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.72146 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72147 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 32.72148 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.72149 + 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 32.72150 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72153 + 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72154 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72155 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 32.72156 + 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 32.72157 + 0, 0, 0, 0, 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.72158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72159 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 32.72160 + 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 32.72161 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72162 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.72163 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 32.72164 + 1, 0, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72165 + 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.72166 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72167 + 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 2, 0, 32.72168 + 2, 2, 1, 2, 2, 0, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0, 32.72169 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72170 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72171 + 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 32.72172 + 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 32.72173 + 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 32.72174 + 2, 1, 1, 0, 1, 0, 2, 0, 3, 1, 0, 0, 1, 0, 1, 0, 32.72175 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 32.72176 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.72177 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.72178 + 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 2, 0, 2, 2, 2, 1, 32.72179 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.72180 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72181 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.72182 + 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 1, 0, 2, 1, 1, 2, 32.72183 + 2, 0, 2, 0, 2, 0, 2, 2, 2, 1, 1, 0, 1, 0, 0, 0, 32.72184 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 32.72185 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.72186 + 0, 0, 1, 0, 2, 1, 2, 3, 3, 3, 3, 2, 3, 2, 1, 0, 32.72187 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.72188 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72189 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 32.72190 + 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 32.72191 + 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.72192 + 1, 1, 1, 1, 1, 1, 3, 1, 1, 0, 1, 0, 2, 1, 3, 2, 32.72193 + 2, 3, 3, 2, 4, 2, 2, 1, 2, 1, 1, 3, 3, 2, 2, 2, 32.72194 + 3, 2, 2, 3, 3, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 32.72195 + 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 32.72196 + 3, 3, 3, 3, 3, 3, 2, 2, 1, 2, 2, 2, 1, 1, 0, 0, 32.72197 + 2, 1, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.72198 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72199 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 32.72200 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 32.72201 + 2, 1, 1, 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.72202 + 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2, 32.72203 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72204 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 2, 2, 2, 5, 5, 32.72205 + 5, 3, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.72206 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 32.72208 + 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72209 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72210 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0, 32.72211 + 2, 1, 2, 2, 3, 3, 2, 3, 3, 4, 4, 4, 3, 2, 3, 3, 32.72212 + 3, 3, 3, 2, 3, 3, 3, 3, 2, 3, 3, 3, 3, 3, 4, 4, 32.72213 + 4, 4, 4, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 3, 3, 3, 32.72214 + 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 4, 4, 3, 3, 3, 32.72215 + 3, 2, 1, 1, 1, 1, 2, 1, 1, 1, 3, 3, 2, 2, 2, 2, 32.72216 + 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72217 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72218 + 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 32.72219 + 2, 1, 4, 3, 4, 3, 5, 4, 5, 5, 6, 6, 4, 4, 4, 4, 32.72220 + 6, 6, 6, 6, 6, 6, 5, 4, 3, 3, 2, 4, 3, 2, 2, 1, 32.72221 + 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72222 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 2, 2, 3, 4, 32.72223 + 4, 5, 6, 6, 7, 6, 6, 6, 5, 4, 4, 3, 2, 3, 2, 1, 32.72224 + 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 32.72225 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.72226 + 1, 1, 2, 2, 2, 1, 2, 3, 4, 2, 3, 2, 4, 4, 4, 4, 32.72227 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.72228 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 32.72229 + 5, 5, 5, 5, 5, 4, 5, 5, 6, 6, 6, 7, 6, 7, 6, 7, 32.72230 + 7, 7, 5, 5, 6, 5, 5, 5, 6, 6, 6, 5, 6, 6, 6, 7, 32.72231 + 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 7, 7, 7, 32.72232 + 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 8, 8, 8, 32.72233 + 7, 7, 6, 6, 7, 7, 6, 5, 7, 6, 5, 5, 6, 5, 5, 5, 32.72234 + 5, 4, 5, 5, 5, 5, 4, 3, 2, 1, 3, 2, 1, 1, 1, 0, 32.72235 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72236 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 32.72237 + 1, 0, 1, 1, 2, 1, 2, 4, 5, 4, 6, 6, 7, 6, 7, 7, 32.72238 + 8, 6, 6, 5, 6, 6, 6, 6, 6, 8, 6, 6, 6, 5, 4, 5, 32.72239 + 5, 5, 3, 2, 3, 2, 2, 1, 0, 2, 0, 1, 1, 1, 0, 0, 32.72240 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 32.72241 + 2, 1, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 9, 8, 9, 7, 32.72242 + 7, 6, 4, 3, 4, 4, 2, 1, 2, 2, 1, 1, 1, 0, 1, 1, 32.72243 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72244 + 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 3, 2, 3, 4, 5, 6, 32.72245 + 6, 5, 6, 6, 6, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 32.72246 + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 5, 6, 5, 32.72247 + 6, 6, 6, 6, 6, 6, 8, 6, 8, 6, 8, 6, 8, 6, 7, 7, 32.72248 + 8, 7, 8, 9, 10, 10, 10, 10, 9, 8, 8, 8, 8, 8, 8, 7, 32.72249 + 7, 7, 10, 8, 9, 9, 9, 9, 9, 9, 11, 10, 10, 10, 11, 11, 32.72250 + 11, 11, 11, 11, 11, 10, 10, 10, 9, 9, 9, 9, 9, 9, 9, 10, 32.72251 + 10, 10, 11, 11, 11, 11, 11, 10, 10, 10, 9, 8, 9, 8, 7, 7, 32.72252 + 6, 8, 6, 6, 7, 7, 6, 6, 6, 6, 8, 7, 7, 5, 5, 4, 32.72253 + 3, 4, 1, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72254 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72255 + 1, 2, 2, 2, 1, 2, 2, 3, 0, 1, 3, 4, 3, 4, 5, 7, 32.72256 + 7, 7, 9, 9, 10, 10, 11, 10, 10, 9, 10, 10, 10, 10, 9, 10, 32.72257 + 10, 8, 8, 8, 9, 10, 8, 6, 6, 5, 5, 4, 4, 3, 1, 2, 32.72258 + 1, 2, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72259 + 2, 1, 2, 3, 2, 4, 2, 2, 4, 6, 8, 9, 9, 9, 11, 12, 32.72260 + 12, 12, 11, 11, 11, 9, 8, 7, 7, 5, 5, 4, 5, 4, 4, 2, 32.72261 + 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 32.72262 + 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 3, 3, 32.72263 + 5, 5, 7, 7, 7, 8, 8, 7, 8, 8, 9, 8, 9, 9, 10, 10, 32.72264 + 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.72265 + 9, 8, 9, 8, 9, 8, 9, 9, 9, 9, 8, 8, 9, 8, 9, 8, 32.72266 + 8, 7, 8, 8, 9, 10, 12, 11, 11, 11, 12, 13, 14, 12, 12, 11, 32.72267 + 13, 12, 11, 11, 11, 10, 10, 11, 12, 10, 11, 12, 13, 13, 13, 12, 32.72268 + 12, 12, 13, 13, 14, 14, 14, 14, 15, 15, 14, 14, 13, 13, 13, 13, 32.72269 + 12, 12, 12, 12, 12, 12, 13, 13, 14, 14, 14, 14, 14, 13, 12, 12, 32.72270 + 14, 12, 12, 11, 11, 10, 9, 10, 11, 10, 10, 10, 10, 10, 9, 8, 32.72271 + 9, 8, 8, 6, 7, 6, 4, 5, 4, 4, 4, 2, 1, 0, 1, 0, 32.72272 + 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72273 + 1, 0, 0, 0, 0, 1, 0, 1, 3, 2, 2, 1, 3, 2, 2, 2, 32.72274 + 5, 6, 5, 6, 9, 9, 9, 9, 11, 11, 12, 12, 13, 13, 14, 12, 32.72275 + 14, 14, 14, 14, 13, 13, 12, 12, 10, 9, 11, 10, 9, 8, 7, 7, 32.72276 + 7, 7, 5, 4, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72277 + 0, 0, 0, 0, 0, 0, 3, 2, 3, 3, 4, 4, 6, 4, 7, 8, 32.72278 + 10, 10, 10, 11, 12, 14, 15, 14, 14, 13, 14, 13, 11, 12, 9, 9, 32.72279 + 7, 8, 6, 7, 5, 5, 2, 1, 0, 0, 0, 0, 1, 1, 1, 1, 32.72280 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72281 + 0, 0, 0, 0, 3, 4, 7, 6, 8, 10, 10, 11, 11, 10, 10, 9, 32.72282 + 10, 10, 10, 10, 11, 12, 13, 11, 13, 11, 12, 10, 12, 10, 12, 10, 32.72283 + 12, 10, 12, 10, 12, 10, 10, 10, 11, 11, 11, 11, 11, 10, 10, 10, 32.72284 + 12, 12, 12, 11, 11, 11, 11, 11, 11, 10, 11, 12, 14, 14, 15, 14, 32.72285 + 15, 16, 16, 16, 16, 16, 15, 15, 14, 13, 13, 14, 14, 15, 14, 14, 32.72286 + 15, 14, 15, 16, 16, 16, 16, 15, 15, 16, 17, 17, 17, 17, 17, 17, 32.72287 + 17, 17, 16, 16, 15, 15, 15, 14, 14, 14, 15, 15, 16, 16, 17, 17, 32.72288 + 17, 17, 17, 16, 15, 17, 17, 16, 14, 13, 15, 14, 13, 13, 12, 11, 32.72289 + 12, 11, 11, 11, 12, 12, 11, 11, 10, 9, 9, 8, 7, 7, 5, 6, 32.72290 + 5, 5, 2, 1, 2, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 32.72291 + 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 2, 3, 2, 32.72292 + 2, 2, 4, 3, 3, 4, 5, 6, 7, 7, 10, 12, 13, 12, 15, 16, 32.72293 + 15, 15, 15, 16, 17, 15, 17, 18, 17, 17, 16, 16, 16, 15, 13, 13, 32.72294 + 13, 13, 10, 11, 10, 10, 9, 8, 7, 4, 3, 1, 1, 1, 1, 0, 32.72295 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 5, 32.72296 + 6, 6, 8, 8, 8, 9, 11, 13, 14, 13, 15, 16, 17, 17, 17, 16, 32.72297 + 16, 15, 15, 14, 12, 12, 10, 9, 8, 7, 5, 4, 3, 3, 1, 0, 32.72298 + 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.72299 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 5, 5, 6, 9, 12, 32.72300 + 11, 12, 13, 14, 13, 13, 14, 13, 13, 13, 14, 14, 16, 14, 16, 13, 32.72301 + 15, 13, 15, 13, 15, 13, 15, 13, 15, 13, 15, 13, 13, 12, 13, 14, 32.72302 + 14, 13, 13, 13, 13, 13, 14, 14, 14, 13, 13, 13, 13, 13, 13, 12, 32.72303 + 14, 15, 16, 16, 19, 18, 19, 19, 20, 20, 20, 19, 18, 18, 17, 16, 32.72304 + 16, 17, 17, 17, 17, 17, 18, 17, 18, 19, 20, 19, 18, 19, 20, 20, 32.72305 + 21, 21, 21, 21, 21, 21, 21, 21, 20, 20, 20, 19, 19, 19, 19, 19, 32.72306 + 19, 19, 20, 20, 21, 21, 21, 21, 21, 20, 19, 19, 20, 20, 18, 16, 32.72307 + 17, 16, 15, 15, 15, 14, 14, 14, 14, 13, 15, 14, 13, 13, 14, 12, 32.72308 + 11, 9, 9, 9, 7, 8, 7, 5, 5, 3, 2, 2, 2, 1, 0, 0, 32.72309 + 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 32.72310 + 1, 2, 0, 2, 3, 2, 3, 4, 4, 5, 5, 5, 7, 9, 11, 12, 32.72311 + 14, 14, 16, 16, 18, 19, 19, 19, 19, 18, 18, 18, 19, 19, 21, 20, 32.72312 + 19, 19, 20, 18, 16, 17, 16, 15, 14, 13, 13, 13, 11, 11, 9, 6, 32.72313 + 3, 3, 4, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72314 + 0, 2, 3, 3, 5, 6, 7, 10, 10, 11, 12, 12, 13, 15, 17, 17, 32.72315 + 19, 19, 19, 19, 19, 19, 18, 17, 16, 15, 16, 15, 13, 11, 12, 9, 32.72316 + 7, 4, 4, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 32.72317 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 32.72318 + 6, 6, 8, 8, 11, 14, 16, 16, 16, 17, 16, 16, 18, 16, 17, 17, 32.72319 + 17, 18, 18, 17, 17, 17, 17, 17, 16, 16, 16, 16, 16, 16, 17, 17, 32.72320 + 17, 17, 17, 16, 16, 16, 17, 17, 17, 17, 17, 16, 16, 16, 17, 17, 32.72321 + 16, 16, 17, 17, 17, 16, 17, 19, 20, 20, 20, 21, 21, 23, 21, 22, 32.72322 + 21, 21, 22, 21, 20, 19, 19, 19, 19, 19, 18, 19, 19, 20, 21, 22, 32.72323 + 22, 21, 23, 22, 23, 24, 24, 24, 25, 25, 25, 24, 24, 24, 23, 23, 32.72324 + 23, 23, 22, 22, 22, 22, 22, 23, 23, 23, 24, 24, 24, 24, 24, 23, 32.72325 + 22, 22, 24, 22, 21, 20, 19, 17, 18, 17, 19, 18, 17, 16, 17, 17, 32.72326 + 16, 15, 16, 16, 16, 15, 14, 14, 12, 11, 9, 9, 8, 7, 5, 3, 32.72327 + 2, 1, 2, 2, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 32.72328 + 0, 0, 1, 0, 0, 0, 2, 1, 1, 1, 2, 3, 3, 3, 5, 5, 32.72329 + 8, 9, 11, 12, 14, 16, 18, 18, 20, 19, 22, 22, 23, 23, 23, 24, 32.72330 + 23, 23, 23, 23, 24, 23, 25, 24, 23, 21, 20, 19, 19, 19, 18, 17, 32.72331 + 16, 15, 14, 13, 11, 9, 6, 5, 5, 4, 2, 0, 0, 1, 0, 0, 32.72332 + 0, 0, 0, 0, 0, 0, 1, 1, 3, 4, 6, 7, 8, 10, 12, 12, 32.72333 + 15, 15, 17, 19, 20, 20, 22, 24, 23, 23, 23, 22, 22, 20, 20, 20, 32.72334 + 20, 19, 17, 15, 14, 12, 9, 6, 3, 2, 0, 0, 0, 0, 0, 0, 32.72335 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72336 + 0, 0, 0, 1, 0, 2, 7, 8, 10, 10, 14, 17, 18, 19, 19, 21, 32.72337 + 20, 21, 20, 21, 21, 21, 21, 22, 22, 22, 22, 22, 21, 21, 21, 21, 32.72338 + 21, 21, 21, 21, 21, 21, 21, 20, 21, 21, 21, 21, 21, 21, 22, 22, 32.72339 + 22, 21, 21, 20, 20, 19, 21, 20, 21, 19, 19, 20, 21, 23, 24, 23, 32.72340 + 24, 25, 25, 26, 26, 26, 25, 26, 25, 24, 23, 22, 23, 23, 24, 24, 32.72341 + 24, 24, 24, 25, 24, 25, 26, 25, 28, 27, 28, 28, 29, 29, 29, 29, 32.72342 + 29, 29, 29, 28, 28, 28, 27, 27, 27, 27, 27, 27, 27, 27, 28, 28, 32.72343 + 29, 29, 29, 29, 29, 28, 27, 27, 27, 26, 26, 24, 23, 22, 21, 20, 32.72344 + 23, 22, 22, 22, 21, 21, 21, 20, 21, 19, 18, 19, 17, 16, 16, 15, 32.72345 + 11, 11, 9, 7, 5, 4, 1, 2, 3, 3, 1, 0, 0, 0, 1, 1, 32.72346 + 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 2, 4, 3, 1, 1, 32.72347 + 4, 4, 5, 7, 8, 8, 11, 12, 14, 16, 17, 20, 23, 23, 24, 23, 32.72348 + 25, 26, 28, 27, 29, 28, 28, 28, 29, 29, 30, 29, 30, 30, 27, 25, 32.72349 + 24, 23, 23, 23, 21, 22, 20, 19, 18, 15, 14, 12, 7, 6, 7, 7, 32.72350 + 3, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 2, 2, 4, 5, 32.72351 + 7, 10, 10, 13, 16, 17, 19, 18, 22, 23, 25, 25, 26, 28, 29, 28, 32.72352 + 28, 27, 27, 25, 24, 25, 24, 23, 19, 17, 15, 13, 9, 6, 2, 3, 32.72353 + 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 32.72354 + 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 4, 5, 11, 11, 11, 12, 32.72355 + 18, 20, 22, 22, 25, 25, 26, 25, 27, 26, 26, 26, 26, 26, 27, 26, 32.72356 + 26, 26, 26, 25, 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 25, 26, 32.72357 + 26, 26, 26, 26, 27, 26, 26, 26, 25, 25, 24, 23, 25, 24, 25, 25, 32.72358 + 23, 24, 25, 27, 28, 27, 30, 30, 30, 31, 31, 32, 30, 30, 31, 30, 32.72359 + 29, 28, 29, 28, 29, 29, 29, 30, 30, 31, 30, 31, 32, 31, 32, 32, 32.72360 + 33, 34, 34, 35, 35, 35, 35, 34, 34, 34, 33, 33, 33, 32, 32, 32, 32.72361 + 32, 32, 32, 33, 33, 34, 34, 34, 34, 34, 34, 33, 32, 32, 32, 31, 32.72362 + 31, 30, 29, 28, 27, 26, 27, 27, 27, 26, 26, 25, 25, 25, 25, 24, 32.72363 + 23, 21, 21, 21, 18, 18, 15, 14, 11, 9, 6, 5, 2, 1, 4, 3, 32.72364 + 2, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 32.72365 + 2, 4, 6, 5, 4, 2, 6, 7, 10, 12, 14, 14, 16, 17, 19, 23, 32.72366 + 25, 26, 31, 32, 31, 31, 32, 33, 36, 34, 36, 36, 35, 36, 36, 36, 32.72367 + 38, 37, 38, 37, 35, 33, 31, 31, 31, 30, 29, 30, 28, 27, 25, 21, 32.72368 + 20, 16, 12, 11, 11, 12, 9, 6, 4, 2, 3, 2, 1, 1, 2, 2, 32.72369 + 1, 3, 4, 4, 7, 8, 11, 12, 14, 17, 21, 23, 23, 23, 28, 31, 32.72370 + 31, 33, 33, 35, 36, 35, 35, 34, 33, 32, 31, 30, 29, 28, 24, 21, 32.72371 + 19, 17, 10, 7, 5, 5, 2, 0, 0, 0, 0, 1, 2, 2, 2, 2, 32.72372 + 2, 2, 1, 1, 1, 1, 0, 0, 1, 2, 2, 0, 1, 0, 2, 3, 32.72373 + 5, 10, 16, 15, 14, 15, 21, 25, 28, 29, 33, 33, 33, 32, 34, 35, 32.72374 + 33, 33, 33, 34, 36, 35, 35, 35, 35, 34, 34, 34, 34, 34, 34, 34, 32.72375 + 35, 35, 35, 35, 33, 33, 33, 34, 36, 35, 35, 35, 35, 34, 34, 33, 32.72376 + 33, 32, 32, 31, 31, 31, 31, 32, 31, 34, 35, 35, 38, 37, 38, 39, 32.72377 + 38, 39, 37, 37, 39, 39, 37, 36, 36, 36, 35, 35, 36, 36, 37, 38, 32.72378 + 38, 40, 40, 39, 39, 38, 39, 40, 40, 40, 41, 41, 40, 40, 40, 39, 32.72379 + 39, 39, 38, 38, 38, 38, 38, 38, 38, 39, 39, 39, 40, 40, 40, 40, 32.72380 + 40, 39, 38, 39, 39, 39, 38, 36, 36, 35, 36, 35, 35, 34, 34, 34, 32.72381 + 33, 33, 34, 33, 33, 32, 29, 29, 28, 25, 23, 22, 20, 18, 15, 11, 32.72382 + 9, 5, 3, 2, 3, 4, 2, 0, 0, 0, 1, 1, 1, 0, 0, 0, 32.72383 + 0, 0, 1, 0, 1, 2, 1, 3, 6, 5, 4, 4, 8, 10, 13, 16, 32.72384 + 17, 18, 22, 22, 24, 26, 28, 31, 36, 38, 36, 36, 39, 39, 39, 39, 32.72385 + 38, 39, 40, 42, 43, 44, 44, 43, 41, 40, 37, 37, 35, 36, 36, 35, 32.72386 + 34, 35, 33, 32, 28, 26, 22, 20, 16, 14, 14, 14, 11, 7, 3, 3, 32.72387 + 3, 3, 1, 2, 3, 3, 2, 3, 4, 4, 6, 6, 8, 10, 13, 17, 32.72388 + 23, 25, 28, 29, 33, 37, 39, 39, 40, 39, 40, 40, 40, 41, 40, 39, 32.72389 + 39, 37, 32, 30, 26, 24, 22, 18, 13, 10, 7, 6, 3, 2, 0, 0, 32.72390 + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 0, 1, 1, 32.72391 + 2, 1, 1, 1, 1, 3, 7, 11, 15, 16, 18, 20, 26, 30, 31, 32, 32.72392 + 37, 36, 37, 36, 36, 37, 38, 39, 42, 42, 43, 41, 38, 38, 41, 41, 32.72393 + 38, 38, 40, 41, 41, 40, 39, 39, 41, 41, 40, 39, 39, 41, 42, 42, 32.72394 + 41, 41, 41, 41, 39, 38, 35, 37, 39, 39, 36, 36, 37, 37, 38, 39, 32.72395 + 39, 38, 40, 41, 45, 47, 48, 49, 48, 45, 45, 43, 42, 41, 42, 42, 32.72396 + 40, 39, 40, 39, 40, 41, 44, 44, 43, 43, 43, 43, 42, 42, 45, 46, 32.72397 + 51, 52, 52, 49, 43, 41, 42, 44, 44, 44, 43, 44, 46, 46, 43, 44, 32.72398 + 44, 45, 44, 45, 45, 45, 48, 48, 49, 46, 45, 43, 42, 40, 40, 40, 32.72399 + 41, 42, 40, 40, 38, 37, 38, 38, 37, 38, 40, 38, 37, 34, 32, 29, 32.72400 + 26, 24, 22, 20, 17, 14, 8, 5, 1, 2, 3, 3, 1, 0, 0, 0, 32.72401 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 1, 4, 4, 32.72402 + 7, 8, 12, 16, 17, 20, 23, 23, 25, 28, 29, 26, 27, 33, 41, 42, 32.72403 + 43, 42, 44, 44, 40, 38, 36, 37, 40, 46, 52, 52, 50, 48, 43, 39, 32.72404 + 36, 34, 39, 42, 39, 42, 43, 38, 38, 36, 31, 28, 25, 22, 21, 19, 32.72405 + 19, 16, 10, 6, 3, 1, 0, 2, 3, 4, 4, 3, 4, 3, 4, 4, 32.72406 + 2, 3, 5, 8, 13, 19, 26, 28, 28, 34, 33, 40, 39, 46, 38, 43, 32.72407 + 36, 45, 44, 48, 43, 49, 48, 42, 33, 26, 27, 26, 22, 19, 18, 14, 32.72408 + 10, 8, 2, 2, 2, 2, 1, 3, 1, 1, 0, 0, 0, 0, 0, 0, 32.72409 + 1, 1, 0, 1, 1, 0, 2, 4, 4, 3, 5, 6, 7, 9, 15, 19, 32.72410 + 17, 23, 29, 31, 39, 31, 36, 39, 38, 36, 36, 37, 38, 43, 50, 53, 32.72411 + 47, 42, 38, 33, 48, 41, 41, 40, 40, 53, 46, 35, 43, 36, 43, 49, 32.72412 + 42, 43, 44, 46, 46, 45, 44, 46, 48, 42, 47, 39, 37, 38, 40, 42, 32.72413 + 42, 36, 43, 45, 48, 33, 47, 33, 43, 41, 56, 63, 57, 58, 63, 55, 32.72414 + 52, 43, 46, 42, 49, 47, 38, 41, 42, 39, 44, 43, 49, 45, 49, 38, 32.72415 + 51, 48, 42, 45, 50, 57, 66, 69, 77, 53, 56, 40, 44, 52, 53, 52, 32.72416 + 48, 51, 58, 52, 51, 48, 49, 52, 51, 48, 52, 48, 64, 59, 62, 62, 32.72417 + 52, 45, 45, 42, 39, 41, 40, 53, 46, 41, 35, 35, 39, 40, 38, 39, 32.72418 + 41, 41, 44, 39, 34, 29, 26, 26, 24, 21, 22, 17, 6, 0, 3, 4, 32.72419 + 2, 2, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.72420 + 0, 2, 2, 2, 4, 7, 11, 14, 16, 18, 19, 21, 26, 27, 30, 28, 32.72421 + 30, 34, 36, 38, 45, 50, 44, 49, 58, 61, 59, 57, 54, 57, 63, 68, 32.72422 + 77, 81, 76, 66, 57, 56, 52, 51, 53, 49, 43, 42, 42, 40, 42, 40, 32.72423 + 36, 37, 22, 30, 26, 19, 22, 17, 12, 8, 6, 1, 2, 4, 5, 4, 32.72424 + 5, 6, 5, 4, 5, 4, 6, 6, 6, 10, 15, 23, 30, 34, 34, 40, 32.72425 + 51, 61, 62, 51, 62, 54, 62, 63, 57, 62, 61, 63, 58, 46, 39, 30, 32.72426 + 31, 29, 23, 20, 19, 15, 12, 9, 5, 4, 5, 4, 4, 4, 2, 2, 32.72427 + 1, 0, 0, 0, 1, 3, 2, 2, 3, 1, 1, 1, 3, 3, 5, 5, 32.72428 + 5, 7, 8, 10, 16, 18, 27, 20, 34, 35, 29, 49, 50, 47, 51, 49, 32.72429 + 49, 50, 49, 55, 65, 67, 68, 62, 50, 51, 58, 64, 59, 43, 54, 34, 32.72430 + 49, 55, 46, 45, 59, 56, 58, 57, 58, 59, 61, 60, 60, 59, 65, 67, 32.72431 + 55, 52, 47, 53, 50, 54, 43, 40, 45, 44, 48, 44, 44, 46, 55, 63, 32.72432 + 65, 35, 4, 14, 45, 56, 68, 65, 47, 51, 55, 42, 50, 50, 50, 44, 32.72433 + 51, 55, 65, 74, 65, 75, 75, 76, 76, 75, 70, 56, 43, 32, 6, 10, 32.72434 + 47, 43, 50, 52, 55, 59, 63, 65, 75, 86, 69, 74, 82, 75, 76, 79, 32.72435 + 69, 44, 35, 6, 0, 27, 54, 51, 48, 43, 46, 48, 57, 56, 58, 54, 32.72436 + 49, 49, 55, 55, 53, 53, 54, 55, 59, 53, 43, 38, 31, 31, 26, 23, 32.72437 + 24, 20, 7, 0, 5, 7, 3, 2, 0, 0, 0, 0, 1, 0, 0, 0, 32.72438 + 0, 0, 0, 0, 1, 1, 2, 2, 4, 6, 8, 11, 18, 19, 16, 16, 32.72439 + 18, 22, 29, 32, 32, 35, 37, 39, 40, 42, 46, 47, 58, 63, 70, 76, 32.72440 + 76, 66, 47, 33, 22, 16, 17, 19, 22, 25, 34, 50, 62, 81, 84, 68, 32.72441 + 54, 48, 46, 44, 45, 35, 36, 42, 28, 32, 33, 29, 25, 24, 18, 15, 32.72442 + 12, 7, 5, 5, 5, 5, 5, 5, 6, 4, 4, 5, 11, 12, 12, 15, 32.72443 + 21, 27, 36, 38, 38, 40, 22, 34, 42, 47, 55, 51, 44, 47, 50, 59, 32.72444 + 54, 40, 17, 1, 53, 40, 35, 32, 25, 22, 19, 16, 12, 9, 6, 5, 32.72445 + 6, 4, 4, 5, 4, 1, 1, 0, 0, 0, 2, 2, 2, 2, 1, 0, 32.72446 + 0, 1, 2, 3, 6, 5, 7, 9, 11, 12, 18, 21, 19, 19, 40, 55, 32.72447 + 45, 57, 61, 76, 83, 85, 83, 82, 79, 81, 88, 92, 89, 87, 86, 85, 32.72448 + 81, 86, 75, 78, 54, 51, 59, 44, 54, 69, 79, 84, 85, 84, 87, 87, 32.72449 + 85, 85, 88, 88, 82, 87, 87, 89, 83, 69, 61, 42, 45, 46, 51, 52, 32.72450 + 50, 53, 53, 74, 95, 36, 0, 4, 8, 0, 0, 0, 16, 78, 69, 46, 32.72451 + 50, 52, 48, 54, 53, 66, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72452 + 0, 0, 0, 0, 0, 13, 68, 60, 56, 52, 52, 61, 18, 0, 0, 0, 32.72453 + 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 0, 52, 67, 54, 55, 55, 32.72454 + 53, 46, 81, 80, 82, 83, 81, 83, 88, 90, 89, 86, 85, 79, 75, 63, 32.72455 + 51, 49, 36, 32, 29, 25, 27, 22, 9, 6, 8, 8, 4, 2, 0, 0, 32.72456 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 3, 5, 6, 7, 32.72457 + 11, 15, 21, 21, 18, 16, 19, 23, 32, 35, 37, 39, 43, 45, 48, 53, 32.72458 + 64, 69, 61, 42, 16, 0, 0, 0, 7, 9, 5, 6, 12, 18, 16, 6, 32.72459 + 0, 1, 0, 0, 0, 12, 46, 65, 62, 57, 50, 47, 44, 38, 44, 38, 32.72460 + 29, 25, 27, 27, 25, 22, 18, 13, 9, 8, 5, 4, 6, 6, 6, 5, 32.72461 + 4, 6, 14, 16, 16, 17, 22, 29, 36, 41, 51, 57, 5, 0, 0, 2, 32.72462 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 13, 61, 44, 38, 33, 27, 24, 32.72463 + 22, 17, 13, 12, 7, 6, 7, 5, 6, 5, 5, 3, 3, 2, 2, 1, 32.72464 + 2, 2, 2, 3, 2, 2, 1, 1, 2, 3, 4, 6, 8, 11, 11, 14, 32.72465 + 21, 22, 28, 37, 36, 42, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72466 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 61, 48, 47, 54, 61, 4, 32.72467 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.72468 + 0, 54, 49, 47, 55, 57, 51, 55, 67, 77, 26, 12, 12, 28, 27, 18, 32.72469 + 22, 27, 9, 0, 71, 65, 55, 55, 47, 61, 61, 75, 66, 73, 2, 19, 32.72470 + 17, 18, 35, 30, 21, 14, 15, 19, 25, 23, 5, 21, 75, 60, 55, 54, 32.72471 + 55, 63, 79, 43, 0, 14, 23, 20, 23, 21, 23, 24, 25, 26, 35, 20, 32.72472 + 0, 54, 72, 56, 55, 51, 65, 69, 68, 0, 0, 0, 0, 0, 0, 0, 32.72473 + 0, 0, 0, 0, 0, 0, 4, 43, 43, 35, 30, 25, 26, 21, 11, 7, 32.72474 + 10, 9, 5, 3, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.72475 + 0, 2, 3, 5, 6, 7, 13, 17, 23, 22, 22, 19, 19, 23, 36, 42, 32.72476 + 54, 48, 38, 46, 64, 70, 49, 20, 0, 1, 10, 17, 18, 19, 17, 19, 32.72477 + 22, 22, 21, 23, 25, 25, 22, 22, 20, 21, 18, 11, 0, 0, 14, 53, 32.72478 + 61, 55, 50, 48, 46, 37, 27, 31, 27, 29, 28, 26, 24, 19, 13, 10, 32.72479 + 6, 5, 6, 8, 9, 7, 7, 10, 17, 19, 19, 20, 22, 27, 35, 37, 32.72480 + 44, 58, 49, 0, 1, 10, 21, 26, 18, 18, 19, 22, 16, 11, 7, 23, 32.72481 + 69, 49, 41, 35, 30, 26, 24, 21, 18, 13, 9, 8, 9, 8, 7, 6, 32.72482 + 7, 4, 3, 3, 4, 4, 5, 5, 6, 6, 5, 5, 4, 3, 5, 6, 32.72483 + 8, 7, 10, 12, 14, 17, 24, 26, 23, 25, 36, 58, 54, 58, 0, 0, 32.72484 + 13, 19, 20, 15, 8, 5, 9, 10, 6, 5, 15, 6, 3, 0, 35, 74, 32.72485 + 63, 63, 59, 54, 56, 55, 45, 0, 1, 9, 7, 6, 7, 6, 4, 6, 32.72486 + 10, 22, 3, 6, 2, 6, 66, 51, 50, 51, 57, 56, 53, 57, 76, 39, 32.72487 + 0, 23, 39, 40, 32, 31, 32, 26, 29, 6, 0, 88, 56, 51, 53, 56, 32.72488 + 65, 64, 66, 72, 66, 0, 11, 39, 31, 34, 30, 28, 28, 30, 31, 22, 32.72489 + 5, 20, 79, 58, 59, 60, 59, 57, 64, 79, 30, 0, 17, 28, 35, 27, 32.72490 + 29, 29, 41, 43, 35, 19, 0, 51, 69, 57, 63, 54, 53, 73, 97, 0, 32.72491 + 0, 6, 9, 11, 17, 19, 16, 14, 12, 10, 3, 0, 6, 55, 52, 35, 32.72492 + 28, 22, 22, 20, 12, 10, 13, 11, 8, 4, 1, 0, 1, 0, 1, 1, 32.72493 + 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 6, 9, 14, 19, 24, 24, 32.72494 + 24, 23, 24, 28, 38, 45, 55, 57, 67, 69, 39, 0, 0, 6, 13, 21, 32.72495 + 28, 33, 32, 33, 33, 34, 35, 37, 37, 36, 37, 39, 36, 32, 36, 31, 32.72496 + 28, 30, 31, 20, 3, 0, 1, 56, 67, 60, 52, 55, 30, 33, 28, 28, 32.72497 + 29, 29, 28, 21, 15, 10, 7, 5, 7, 9, 11, 10, 9, 12, 20, 22, 32.72498 + 23, 23, 24, 27, 31, 35, 38, 51, 75, 38, 0, 20, 36, 37, 37, 34, 32.72499 + 35, 37, 35, 26, 13, 28, 73, 49, 41, 35, 30, 29, 27, 22, 18, 15, 32.72500 + 12, 11, 11, 10, 9, 8, 9, 6, 7, 6, 6, 6, 6, 7, 6, 7, 32.72501 + 7, 6, 5, 5, 7, 7, 8, 9, 11, 13, 14, 17, 24, 25, 24, 35, 32.72502 + 39, 46, 61, 66, 57, 0, 19, 32, 36, 34, 28, 24, 28, 28, 23, 21, 32.72503 + 24, 20, 2, 19, 82, 68, 61, 58, 55, 54, 49, 65, 80, 17, 8, 25, 32.72504 + 24, 24, 25, 24, 23, 26, 27, 23, 25, 12, 0, 76, 78, 56, 53, 56, 32.72505 + 57, 53, 57, 68, 76, 0, 4, 26, 42, 50, 47, 41, 39, 42, 34, 25, 32.72506 + 0, 35, 72, 54, 49, 53, 58, 59, 59, 70, 83, 2, 7, 22, 42, 44, 32.72507 + 39, 34, 34, 35, 35, 27, 8, 24, 89, 64, 62, 60, 55, 56, 58, 73, 32.72508 + 90, 0, 15, 34, 36, 41, 42, 40, 50, 48, 33, 16, 0, 48, 81, 48, 32.72509 + 55, 66, 61, 71, 89, 0, 8, 22, 28, 31, 34, 34, 31, 31, 28, 29, 32.72510 + 21, 0, 7, 61, 54, 37, 30, 22, 21, 20, 13, 12, 15, 12, 9, 5, 32.72511 + 2, 0, 1, 0, 3, 1, 0, 0, 0, 0, 0, 2, 3, 4, 7, 7, 32.72512 + 8, 11, 18, 21, 24, 25, 26, 29, 33, 39, 45, 49, 50, 68, 59, 17, 32.72513 + 0, 4, 21, 20, 27, 29, 34, 40, 44, 41, 35, 30, 34, 34, 34, 36, 32.72514 + 38, 39, 41, 43, 37, 44, 47, 39, 32, 35, 29, 13, 9, 0, 41, 92, 32.72515 + 68, 45, 47, 32, 31, 30, 31, 33, 32, 24, 17, 13, 8, 8, 9, 12, 32.72516 + 14, 15, 14, 17, 24, 26, 27, 26, 27, 28, 30, 33, 40, 49, 66, 73, 32.72517 + 0, 22, 34, 41, 42, 41, 42, 42, 38, 29, 11, 24, 71, 48, 39, 34, 32.72518 + 33, 32, 30, 26, 22, 19, 16, 15, 15, 13, 13, 12, 12, 10, 10, 9, 32.72519 + 9, 10, 11, 10, 10, 10, 10, 9, 8, 8, 10, 10, 12, 11, 14, 17, 32.72520 + 17, 19, 26, 29, 30, 41, 44, 43, 45, 62, 78, 26, 7, 27, 38, 42, 32.72521 + 40, 40, 43, 42, 37, 34, 30, 22, 0, 66, 84, 54, 62, 62, 56, 60, 32.72522 + 63, 61, 73, 70, 1, 28, 30, 33, 35, 36, 39, 42, 45, 20, 18, 10, 32.72523 + 78, 66, 59, 60, 56, 55, 51, 51, 60, 76, 66, 0, 6, 33, 47, 50, 32.72524 + 53, 55, 49, 43, 38, 28, 18, 29, 80, 50, 65, 55, 52, 58, 42, 62, 32.72525 + 83, 51, 0, 35, 39, 45, 46, 45, 46, 45, 40, 26, 3, 19, 89, 62, 32.72526 + 61, 57, 57, 62, 62, 81, 85, 21, 1, 23, 41, 44, 53, 51, 49, 42, 32.72527 + 36, 15, 0, 57, 78, 58, 60, 60, 59, 78, 90, 0, 9, 28, 35, 40, 32.72528 + 43, 41, 37, 38, 42, 43, 31, 10, 9, 64, 54, 40, 32, 24, 22, 20, 32.72529 + 15, 13, 13, 11, 7, 5, 2, 0, 1, 0, 3, 1, 0, 0, 0, 0, 32.72530 + 0, 1, 2, 3, 6, 8, 8, 11, 18, 22, 25, 26, 31, 35, 39, 44, 32.72531 + 50, 56, 75, 36, 1, 0, 17, 32, 37, 38, 37, 39, 42, 44, 40, 33, 32.72532 + 28, 26, 23, 19, 18, 24, 26, 26, 33, 38, 43, 38, 47, 54, 48, 42, 32.72533 + 40, 36, 36, 22, 3, 0, 76, 70, 59, 46, 35, 33, 34, 34, 32, 27, 32.72534 + 20, 16, 11, 11, 12, 15, 19, 19, 19, 22, 26, 29, 31, 32, 32, 34, 32.72535 + 34, 35, 39, 49, 61, 83, 0, 10, 27, 47, 48, 46, 49, 44, 37, 28, 32.72536 + 10, 28, 71, 46, 38, 35, 35, 37, 36, 33, 27, 23, 20, 18, 18, 18, 32.72537 + 16, 18, 16, 15, 15, 13, 14, 13, 15, 15, 14, 14, 14, 12, 12, 12, 32.72538 + 12, 13, 17, 16, 18, 22, 21, 23, 30, 33, 37, 41, 37, 46, 44, 58, 32.72539 + 65, 63, 0, 23, 38, 47, 50, 50, 54, 53, 46, 40, 35, 7, 0, 106, 32.72540 + 64, 63, 59, 58, 59, 60, 68, 63, 69, 94, 0, 28, 33, 41, 45, 47, 32.72541 + 51, 49, 29, 24, 0, 65, 77, 58, 66, 54, 59, 52, 47, 56, 63, 74, 32.72542 + 52, 0, 12, 30, 42, 53, 63, 62, 53, 49, 43, 31, 22, 0, 85, 61, 32.72543 + 65, 57, 50, 45, 56, 59, 66, 82, 0, 25, 36, 44, 50, 52, 52, 49, 32.72544 + 42, 27, 9, 22, 93, 64, 63, 59, 57, 61, 64, 68, 95, 45, 0, 15, 32.72545 + 41, 43, 55, 58, 50, 40, 36, 11, 0, 66, 76, 62, 62, 60, 59, 71, 32.72546 + 87, 4, 9, 30, 41, 47, 50, 48, 43, 44, 49, 44, 27, 8, 11, 67, 32.72547 + 56, 44, 33, 26, 21, 20, 16, 13, 12, 10, 8, 6, 2, 0, 1, 0, 32.72548 + 1, 1, 0, 1, 0, 0, 1, 4, 4, 6, 6, 8, 12, 15, 20, 24, 32.72549 + 33, 22, 41, 44, 40, 47, 53, 73, 34, 0, 9, 33, 32, 44, 53, 49, 32.72550 + 46, 55, 31, 32, 33, 32, 24, 16, 0, 0, 0, 0, 6, 20, 27, 22, 32.72551 + 25, 46, 49, 59, 52, 56, 46, 38, 33, 26, 21, 6, 4, 84, 62, 58, 32.72552 + 43, 28, 40, 34, 33, 26, 22, 14, 14, 14, 17, 19, 23, 23, 24, 26, 32.72553 + 29, 35, 33, 35, 42, 39, 34, 44, 44, 57, 61, 86, 28, 10, 26, 42, 32.72554 + 42, 49, 48, 42, 38, 26, 10, 26, 71, 46, 37, 35, 39, 41, 38, 36, 32.72555 + 29, 28, 24, 22, 22, 22, 22, 20, 18, 18, 18, 18, 19, 18, 19, 19, 32.72556 + 18, 18, 18, 17, 17, 16, 17, 16, 21, 21, 24, 25, 26, 27, 33, 36, 32.72557 + 41, 41, 43, 42, 41, 45, 59, 86, 0, 18, 30, 40, 46, 55, 67, 59, 32.72558 + 52, 44, 39, 14, 0, 95, 76, 61, 57, 59, 62, 75, 69, 72, 82, 35, 32.72559 + 3, 29, 39, 43, 50, 52, 45, 33, 26, 7, 48, 71, 57, 53, 52, 57, 32.72560 + 55, 49, 51, 56, 65, 71, 53, 0, 10, 33, 40, 50, 67, 63, 50, 51, 32.72561 + 43, 23, 36, 0, 87, 64, 70, 65, 56, 52, 58, 60, 69, 94, 0, 30, 32.72562 + 37, 44, 48, 55, 57, 48, 44, 29, 7, 26, 87, 66, 61, 57, 57, 60, 32.72563 + 63, 70, 83, 53, 0, 15, 31, 43, 54, 59, 46, 35, 27, 17, 0, 70, 32.72564 + 80, 68, 61, 62, 62, 71, 91, 12, 7, 30, 37, 44, 54, 59, 49, 43, 32.72565 + 43, 37, 21, 3, 14, 67, 55, 45, 37, 27, 23, 21, 16, 13, 12, 8, 32.72566 + 8, 6, 2, 1, 2, 0, 1, 1, 0, 1, 0, 0, 1, 3, 4, 7, 32.72567 + 7, 9, 13, 15, 21, 25, 28, 39, 38, 37, 43, 55, 77, 8, 4, 12, 32.72568 + 35, 45, 43, 52, 57, 57, 57, 38, 26, 24, 4, 4, 0, 23, 57, 52, 32.72569 + 62, 62, 29, 0, 0, 7, 31, 34, 44, 60, 65, 58, 52, 44, 44, 32, 32.72570 + 29, 24, 15, 0, 74, 63, 44, 45, 34, 37, 37, 27, 24, 21, 19, 19, 32.72571 + 20, 23, 25, 26, 27, 29, 23, 34, 39, 41, 49, 49, 43, 44, 45, 55, 32.72572 + 56, 84, 30, 14, 28, 34, 44, 50, 48, 42, 38, 26, 11, 26, 73, 49, 32.72573 + 40, 38, 43, 45, 41, 39, 33, 31, 28, 26, 27, 26, 26, 24, 23, 22, 32.72574 + 23, 22, 23, 23, 23, 23, 22, 22, 22, 21, 20, 20, 21, 22, 23, 24, 32.72575 + 28, 28, 29, 31, 36, 40, 45, 47, 45, 44, 42, 45, 57, 83, 0, 18, 32.72576 + 28, 39, 43, 53, 65, 58, 52, 45, 38, 14, 0, 96, 78, 63, 54, 53, 32.72577 + 67, 63, 74, 85, 89, 0, 11, 30, 39, 51, 43, 46, 30, 19, 1, 50, 32.72578 + 69, 52, 47, 49, 50, 52, 50, 51, 52, 50, 63, 75, 68, 0, 8, 27, 32.72579 + 49, 55, 47, 53, 56, 43, 34, 30, 12, 4, 94, 68, 62, 72, 61, 56, 32.72580 + 58, 59, 63, 89, 0, 27, 32, 40, 44, 52, 54, 45, 42, 28, 6, 25, 32.72581 + 86, 66, 62, 58, 58, 61, 62, 68, 77, 49, 0, 16, 31, 43, 54, 59, 32.72582 + 46, 35, 29, 19, 0, 70, 79, 62, 56, 60, 59, 68, 89, 13, 7, 32, 32.72583 + 37, 44, 54, 59, 49, 43, 42, 33, 32, 1, 43, 67, 58, 46, 38, 28, 32.72584 + 23, 21, 16, 13, 10, 7, 7, 6, 2, 1, 2, 0, 2, 1, 1, 1, 32.72585 + 0, 1, 3, 4, 4, 6, 8, 10, 14, 18, 22, 29, 35, 41, 38, 37, 32.72586 + 53, 65, 46, 0, 13, 33, 44, 42, 51, 57, 51, 53, 47, 40, 19, 9, 32.72587 + 0, 40, 85, 76, 63, 70, 69, 62, 72, 80, 42, 0, 13, 29, 40, 52, 32.72588 + 45, 62, 68, 50, 43, 50, 40, 33, 20, 0, 0, 78, 62, 54, 37, 38, 32.72589 + 38, 30, 27, 27, 25, 25, 25, 28, 29, 30, 31, 31, 30, 31, 35, 38, 32.72590 + 41, 45, 43, 46, 52, 58, 56, 80, 24, 13, 28, 34, 48, 57, 53, 45, 32.72591 + 41, 29, 14, 29, 78, 52, 43, 40, 47, 47, 44, 39, 37, 36, 33, 31, 32.72592 + 32, 32, 30, 30, 29, 28, 28, 26, 26, 27, 27, 27, 27, 26, 26, 25, 32.72593 + 24, 24, 25, 27, 28, 28, 31, 33, 34, 35, 40, 44, 48, 48, 48, 47, 32.72594 + 45, 47, 58, 86, 0, 20, 29, 37, 43, 51, 61, 56, 50, 43, 35, 12, 32.72595 + 0, 100, 80, 63, 56, 59, 54, 70, 77, 97, 5, 9, 22, 38, 52, 57, 32.72596 + 41, 35, 21, 0, 29, 77, 68, 47, 47, 41, 51, 54, 51, 53, 56, 49, 32.72597 + 58, 68, 78, 0, 5, 25, 39, 47, 46, 43, 43, 41, 22, 17, 0, 9, 32.72598 + 84, 62, 66, 61, 68, 63, 58, 52, 54, 78, 0, 18, 24, 30, 36, 44, 32.72599 + 47, 40, 37, 22, 3, 23, 83, 66, 62, 60, 61, 61, 59, 63, 75, 49, 32.72600 + 0, 22, 34, 43, 54, 61, 49, 38, 32, 20, 0, 65, 84, 62, 59, 63, 32.72601 + 60, 67, 84, 9, 8, 35, 40, 45, 56, 61, 55, 46, 41, 33, 22, 0, 32.72602 + 47, 66, 53, 49, 38, 31, 25, 22, 18, 14, 10, 6, 7, 6, 2, 1, 32.72603 + 2, 0, 2, 0, 0, 0, 0, 1, 2, 5, 6, 8, 9, 12, 16, 20, 32.72604 + 26, 31, 36, 37, 40, 44, 74, 44, 0, 22, 42, 51, 47, 48, 54, 50, 32.72605 + 38, 42, 37, 25, 6, 3, 81, 76, 55, 48, 56, 48, 46, 51, 58, 66, 32.72606 + 74, 83, 14, 19, 22, 34, 42, 63, 56, 65, 55, 55, 50, 46, 35, 20, 32.72607 + 0, 33, 79, 55, 49, 40, 36, 31, 32, 29, 32, 31, 29, 30, 31, 32, 32.72608 + 35, 33, 30, 25, 35, 49, 52, 50, 49, 52, 54, 56, 56, 80, 20, 6, 32.72609 + 26, 37, 51, 60, 54, 45, 41, 30, 15, 30, 81, 55, 46, 45, 50, 49, 32.72610 + 44, 41, 40, 39, 36, 35, 36, 36, 35, 34, 33, 32, 31, 30, 31, 30, 32.72611 + 31, 31, 31, 31, 30, 30, 28, 28, 30, 30, 32, 34, 35, 37, 37, 38, 32.72612 + 43, 45, 49, 49, 51, 50, 49, 52, 60, 87, 0, 23, 30, 37, 41, 49, 32.72613 + 60, 55, 47, 39, 31, 11, 0, 102, 80, 63, 56, 54, 58, 69, 88, 31, 32.72614 + 1, 22, 36, 48, 49, 33, 33, 15, 0, 24, 79, 68, 47, 48, 46, 38, 32.72615 + 52, 51, 50, 50, 55, 54, 54, 57, 77, 36, 0, 23, 37, 36, 33, 33, 32.72616 + 35, 31, 24, 0, 0, 77, 75, 61, 53, 64, 67, 63, 59, 53, 55, 79, 32.72617 + 0, 17, 23, 30, 36, 44, 47, 40, 37, 22, 1, 22, 82, 64, 62, 60, 32.72618 + 61, 61, 56, 61, 73, 49, 0, 26, 34, 42, 53, 59, 49, 39, 33, 20, 32.72619 + 0, 61, 78, 56, 58, 63, 61, 73, 87, 12, 8, 36, 41, 46, 58, 65, 32.72620 + 59, 50, 40, 32, 17, 0, 40, 64, 50, 48, 38, 31, 25, 22, 19, 15, 32.72621 + 8, 6, 7, 6, 2, 1, 2, 0, 0, 0, 0, 0, 1, 1, 3, 4, 32.72622 + 6, 9, 12, 14, 18, 20, 26, 30, 28, 41, 48, 64, 72, 9, 5, 29, 32.72623 + 42, 51, 56, 60, 50, 38, 33, 31, 26, 9, 11, 90, 75, 59, 56, 55, 32.72624 + 45, 43, 47, 49, 52, 59, 65, 72, 71, 0, 19, 30, 50, 54, 55, 62, 32.72625 + 71, 64, 61, 50, 42, 26, 28, 0, 61, 76, 60, 45, 36, 34, 37, 36, 32.72626 + 40, 39, 37, 34, 34, 35, 39, 38, 34, 31, 41, 51, 53, 53, 49, 49, 32.72627 + 51, 51, 49, 79, 22, 5, 22, 36, 52, 61, 54, 44, 40, 28, 14, 30, 32.72628 + 83, 58, 50, 50, 54, 53, 46, 42, 41, 41, 40, 39, 39, 40, 39, 38, 32.72629 + 38, 37, 36, 35, 34, 35, 35, 35, 36, 36, 34, 34, 33, 32, 34, 35, 32.72630 + 38, 38, 39, 42, 42, 42, 45, 47, 52, 52, 52, 53, 54, 57, 64, 91, 32.72631 + 0, 27, 31, 39, 41, 49, 62, 56, 45, 35, 27, 7, 0, 101, 80, 64, 32.72632 + 55, 48, 59, 68, 60, 6, 10, 37, 43, 50, 40, 34, 22, 24, 0, 75, 32.72633 + 76, 54, 48, 48, 42, 44, 50, 41, 43, 43, 52, 56, 52, 58, 70, 83, 32.72634 + 10, 0, 12, 29, 15, 11, 25, 25, 7, 0, 4, 86, 63, 63, 58, 58, 32.72635 + 60, 58, 61, 60, 68, 93, 0, 25, 31, 37, 43, 51, 54, 45, 41, 25, 32.72636 + 2, 21, 82, 63, 61, 60, 61, 61, 54, 58, 70, 49, 0, 27, 31, 39, 32.72637 + 49, 57, 47, 39, 33, 17, 0, 57, 75, 56, 60, 61, 61, 72, 80, 5, 32.72638 + 8, 35, 39, 45, 58, 67, 62, 52, 42, 28, 27, 0, 44, 57, 59, 40, 32.72639 + 38, 28, 23, 21, 20, 15, 9, 6, 7, 5, 2, 0, 1, 0, 0, 0, 32.72640 + 0, 0, 0, 0, 4, 5, 8, 11, 13, 16, 19, 22, 29, 33, 28, 44, 32.72641 + 60, 85, 16, 0, 26, 35, 48, 59, 63, 62, 46, 39, 41, 24, 7, 10, 32.72642 + 76, 82, 63, 63, 49, 41, 49, 41, 44, 50, 51, 52, 55, 59, 67, 75, 32.72643 + 0, 18, 39, 43, 47, 56, 64, 72, 72, 52, 48, 43, 27, 15, 10, 88, 32.72644 + 64, 51, 39, 38, 41, 43, 48, 46, 41, 38, 36, 37, 43, 43, 39, 46, 32.72645 + 55, 58, 63, 66, 60, 55, 63, 60, 50, 76, 24, 9, 24, 37, 52, 60, 32.72646 + 52, 42, 36, 25, 14, 29, 83, 59, 52, 51, 56, 54, 47, 43, 43, 44, 32.72647 + 44, 43, 43, 43, 43, 42, 41, 41, 40, 39, 39, 38, 39, 39, 40, 40, 32.72648 + 38, 38, 37, 38, 38, 39, 42, 42, 43, 45, 46, 46, 47, 49, 52, 52, 32.72649 + 54, 54, 53, 57, 64, 91, 0, 27, 31, 37, 43, 51, 63, 56, 46, 35, 32.72650 + 27, 7, 0, 101, 80, 63, 57, 60, 61, 77, 0, 10, 32, 39, 45, 51, 32.72651 + 38, 30, 22, 0, 81, 70, 52, 46, 48, 40, 43, 50, 44, 42, 40, 42, 32.72652 + 49, 54, 50, 58, 58, 82, 80, 24, 0, 0, 6, 2, 0, 0, 0, 26, 32.72653 + 94, 88, 70, 48, 56, 48, 54, 56, 62, 63, 69, 92, 0, 26, 35, 43, 32.72654 + 47, 55, 57, 48, 42, 26, 3, 21, 82, 63, 61, 60, 60, 61, 56, 61, 32.72655 + 72, 50, 2, 29, 33, 38, 47, 55, 47, 39, 33, 19, 0, 58, 78, 61, 32.72656 + 64, 61, 62, 71, 76, 15, 5, 32, 34, 41, 56, 64, 61, 52, 44, 32, 32.72657 + 23, 0, 39, 54, 57, 39, 36, 28, 21, 21, 20, 17, 10, 6, 7, 5, 32.72658 + 2, 0, 1, 0, 0, 0, 0, 0, 1, 0, 5, 7, 10, 12, 16, 19, 32.72659 + 21, 26, 33, 39, 40, 48, 70, 59, 0, 6, 24, 47, 57, 66, 61, 56, 32.72660 + 48, 44, 43, 14, 0, 57, 80, 64, 48, 41, 45, 52, 46, 45, 46, 44, 32.72661 + 40, 43, 49, 48, 57, 71, 71, 0, 16, 37, 42, 49, 52, 58, 72, 63, 32.72662 + 60, 38, 38, 12, 0, 57, 73, 58, 45, 42, 49, 52, 57, 55, 47, 42, 32.72663 + 39, 40, 46, 51, 56, 62, 68, 76, 83, 78, 68, 70, 60, 69, 59, 78, 32.72664 + 25, 14, 29, 42, 49, 55, 47, 36, 31, 21, 9, 27, 81, 59, 54, 53, 32.72665 + 59, 57, 49, 46, 48, 47, 47, 47, 48, 49, 48, 46, 45, 45, 44, 44, 32.72666 + 45, 44, 44, 45, 46, 46, 44, 44, 43, 43, 45, 46, 49, 48, 49, 51, 32.72667 + 50, 51, 51, 53, 54, 53, 53, 55, 53, 55, 60, 88, 0, 27, 31, 37, 32.72668 + 43, 52, 67, 58, 46, 36, 32, 12, 0, 101, 80, 64, 56, 73, 92, 1, 32.72669 + 4, 29, 30, 44, 52, 30, 36, 16, 0, 53, 76, 62, 46, 40, 38, 37, 32.72670 + 43, 48, 42, 45, 38, 40, 47, 51, 50, 51, 53, 58, 67, 82, 58, 18, 32.72671 + 6, 9, 14, 20, 67, 83, 85, 71, 71, 64, 52, 59, 56, 59, 69, 66, 32.72672 + 60, 80, 0, 23, 35, 44, 48, 56, 57, 48, 42, 26, 3, 22, 82, 63, 32.72673 + 61, 60, 62, 63, 63, 68, 77, 55, 6, 33, 34, 41, 49, 57, 47, 41, 32.72674 + 36, 23, 0, 64, 73, 56, 62, 62, 67, 71, 85, 45, 1, 27, 28, 35, 32.72675 + 49, 59, 56, 49, 44, 35, 17, 0, 41, 53, 49, 39, 33, 24, 19, 18, 32.72676 + 20, 17, 12, 7, 7, 5, 2, 0, 1, 0, 0, 0, 0, 0, 0, 2, 32.72677 + 4, 6, 11, 13, 15, 18, 23, 27, 33, 40, 44, 60, 78, 8, 3, 25, 32.72678 + 32, 49, 52, 65, 56, 53, 49, 34, 24, 0, 0, 75, 61, 57, 43, 40, 32.72679 + 47, 41, 51, 46, 43, 41, 37, 38, 48, 50, 49, 59, 80, 30, 1, 25, 32.72680 + 34, 46, 53, 51, 67, 59, 58, 53, 29, 14, 0, 18, 83, 60, 53, 49, 32.72681 + 54, 56, 60, 57, 51, 49, 49, 53, 63, 74, 69, 47, 21, 16, 16, 6, 32.72682 + 10, 41, 52, 83, 85, 96, 32, 15, 28, 38, 46, 53, 47, 38, 30, 20, 32.72683 + 8, 25, 81, 61, 56, 57, 62, 62, 55, 58, 70, 74, 72, 72, 75, 75, 32.72684 + 74, 73, 72, 71, 71, 70, 69, 64, 56, 51, 50, 50, 47, 47, 47, 47, 32.72685 + 52, 56, 65, 69, 76, 79, 78, 77, 78, 77, 71, 65, 63, 60, 58, 58, 32.72686 + 62, 88, 0, 25, 30, 36, 43, 54, 67, 59, 46, 38, 36, 15, 0, 99, 32.72687 + 78, 65, 72, 84, 32, 0, 23, 34, 42, 53, 36, 33, 26, 0, 61, 79, 32.72688 + 58, 49, 46, 37, 37, 39, 38, 39, 42, 38, 36, 35, 42, 54, 52, 46, 32.72689 + 67, 62, 78, 85, 97, 102, 106, 110, 113, 104, 95, 93, 73, 56, 70, 60, 32.72690 + 54, 52, 56, 59, 68, 65, 55, 77, 0, 23, 34, 43, 48, 55, 57, 47, 32.72691 + 42, 26, 4, 23, 82, 63, 63, 62, 63, 64, 65, 70, 79, 55, 5, 32, 32.72692 + 35, 41, 50, 58, 49, 42, 37, 24, 0, 64, 80, 60, 64, 63, 65, 63, 32.72693 + 77, 52, 0, 24, 27, 34, 47, 57, 54, 48, 43, 33, 28, 0, 67, 48, 32.72694 + 49, 37, 35, 27, 18, 18, 19, 17, 12, 7, 8, 5, 2, 0, 1, 0, 32.72695 + 0, 0, 0, 0, 0, 2, 5, 8, 9, 13, 16, 19, 24, 29, 35, 40, 32.72696 + 43, 61, 68, 0, 13, 32, 44, 53, 60, 61, 54, 49, 48, 35, 18, 0, 32.72697 + 59, 52, 56, 49, 42, 43, 42, 41, 41, 41, 39, 38, 37, 40, 47, 49, 32.72698 + 47, 46, 65, 73, 0, 12, 25, 36, 47, 55, 63, 64, 59, 49, 36, 28, 32.72699 + 18, 0, 65, 56, 63, 59, 57, 58, 61, 60, 55, 53, 68, 71, 68, 10, 32.72700 + 0, 2, 1, 0, 5, 6, 0, 0, 0, 0, 17, 94, 50, 10, 27, 39, 32.72701 + 47, 55, 53, 45, 36, 22, 8, 22, 80, 57, 55, 60, 59, 67, 39, 0, 32.72702 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 77, 59, 32.72703 + 57, 48, 53, 44, 52, 52, 59, 30, 0, 0, 0, 3, 0, 0, 0, 0, 32.72704 + 0, 21, 73, 72, 58, 67, 56, 92, 0, 25, 29, 36, 42, 54, 65, 56, 32.72705 + 45, 42, 40, 13, 0, 101, 68, 68, 81, 54, 0, 12, 41, 43, 54, 51, 32.72706 + 35, 20, 9, 30, 78, 54, 41, 47, 46, 43, 32, 30, 34, 35, 35, 35, 32.72707 + 36, 43, 42, 50, 55, 46, 0, 1, 21, 32, 36, 36, 30, 32, 36, 38, 32.72708 + 36, 14, 0, 46, 76, 61, 62, 56, 59, 57, 62, 59, 58, 81, 0, 23, 32.72709 + 32, 41, 47, 55, 55, 45, 41, 26, 7, 25, 79, 62, 63, 64, 61, 61, 32.72710 + 61, 66, 76, 52, 0, 25, 33, 42, 51, 61, 50, 42, 36, 21, 0, 61, 32.72711 + 81, 60, 65, 66, 65, 63, 78, 41, 0, 27, 35, 42, 50, 56, 55, 48, 32.72712 + 43, 30, 26, 0, 69, 47, 43, 41, 40, 32, 21, 16, 16, 13, 12, 7, 32.72713 + 6, 4, 2, 0, 1, 0, 0, 0, 0, 0, 0, 2, 5, 8, 9, 14, 32.72714 + 17, 20, 24, 29, 36, 41, 41, 69, 22, 8, 23, 40, 54, 56, 60, 54, 32.72715 + 46, 40, 41, 28, 8, 5, 68, 53, 52, 44, 40, 40, 38, 34, 35, 33, 32.72716 + 33, 35, 36, 39, 45, 46, 44, 46, 56, 74, 32, 6, 17, 32, 45, 54, 32.72717 + 60, 63, 60, 50, 41, 35, 21, 6, 46, 70, 63, 54, 51, 62, 55, 58, 32.72718 + 63, 70, 55, 2, 1, 6, 23, 21, 22, 26, 30, 30, 30, 31, 37, 18, 32.72719 + 17, 0, 6, 30, 45, 39, 54, 59, 57, 50, 39, 24, 7, 23, 79, 59, 32.72720 + 53, 60, 60, 67, 73, 64, 8, 14, 6, 14, 22, 20, 27, 26, 22, 22, 32.72721 + 22, 14, 20, 0, 64, 71, 63, 55, 51, 49, 54, 57, 65, 70, 42, 0, 32.72722 + 20, 29, 27, 20, 27, 11, 0, 73, 79, 72, 66, 62, 60, 88, 0, 25, 32.72723 + 28, 35, 43, 55, 65, 56, 49, 36, 35, 15, 0, 85, 83, 71, 84, 0, 32.72724 + 6, 36, 33, 54, 52, 34, 27, 0, 17, 89, 60, 38, 50, 43, 45, 42, 32.72725 + 33, 31, 32, 33, 34, 33, 30, 36, 47, 49, 51, 66, 38, 0, 0, 13, 32.72726 + 17, 13, 3, 3, 10, 13, 19, 8, 0, 53, 77, 58, 63, 61, 59, 57, 32.72727 + 59, 58, 60, 84, 0, 24, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 32.72728 + 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 32.72729 + 51, 42, 36, 20, 0, 60, 80, 60, 63, 64, 66, 64, 75, 42, 0, 27, 32.72730 + 37, 44, 50, 56, 54, 47, 43, 32, 26, 0, 69, 44, 42, 41, 42, 35, 32.72731 + 22, 16, 15, 13, 10, 7, 6, 4, 2, 0, 1, 0, 0, 0, 0, 0, 32.72732 + 1, 1, 7, 9, 11, 17, 20, 21, 26, 31, 37, 45, 50, 70, 0, 12, 32.72733 + 32, 44, 51, 60, 64, 53, 47, 37, 35, 24, 0, 41, 73, 53, 46, 40, 32.72734 + 37, 37, 34, 31, 31, 29, 28, 29, 30, 35, 40, 41, 39, 45, 51, 76, 32.72735 + 77, 0, 10, 29, 41, 51, 58, 62, 61, 53, 44, 41, 36, 13, 4, 80, 32.72736 + 62, 57, 52, 48, 52, 66, 80, 50, 0, 4, 6, 32, 31, 38, 43, 41, 32.72737 + 38, 45, 43, 31, 37, 33, 22, 17, 27, 35, 48, 65, 61, 59, 56, 50, 32.72738 + 40, 23, 7, 24, 75, 62, 54, 61, 67, 62, 66, 80, 84, 0, 11, 27, 32.72739 + 21, 33, 29, 39, 28, 33, 27, 27, 24, 0, 29, 94, 71, 58, 51, 50, 32.72740 + 53, 58, 56, 74, 90, 0, 16, 31, 35, 24, 28, 0, 0, 93, 73, 68, 32.72741 + 62, 60, 62, 86, 0, 25, 27, 35, 43, 56, 65, 56, 41, 38, 34, 13, 32.72742 + 0, 113, 86, 93, 12, 0, 21, 33, 43, 38, 28, 26, 0, 0, 90, 65, 32.72743 + 58, 51, 45, 45, 38, 38, 37, 35, 33, 31, 32, 30, 28, 28, 42, 46, 32.72744 + 48, 62, 75, 0, 5, 21, 28, 24, 17, 17, 24, 27, 24, 14, 0, 59, 32.72745 + 79, 56, 62, 62, 59, 57, 59, 58, 59, 84, 0, 24, 31, 40, 46, 54, 32.72746 + 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 32.72747 + 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 0, 60, 79, 60, 62, 63, 32.72748 + 66, 65, 70, 39, 0, 27, 38, 45, 51, 56, 55, 48, 43, 35, 27, 0, 32.72749 + 70, 45, 43, 40, 42, 34, 22, 16, 15, 13, 10, 7, 6, 4, 1, 0, 32.72750 + 1, 0, 0, 0, 0, 0, 2, 2, 8, 10, 13, 17, 20, 22, 29, 33, 32.72751 + 40, 47, 59, 51, 0, 15, 36, 43, 47, 62, 66, 52, 48, 39, 33, 21, 32.72752 + 0, 72, 65, 47, 42, 40, 38, 35, 32, 31, 27, 27, 24, 25, 27, 31, 32.72753 + 37, 39, 38, 42, 46, 68, 92, 1, 5, 28, 40, 49, 56, 62, 62, 55, 32.72754 + 45, 42, 41, 13, 0, 101, 65, 54, 57, 50, 59, 63, 10, 0, 9, 20, 32.72755 + 34, 38, 54, 47, 41, 43, 50, 48, 43, 40, 42, 47, 20, 22, 37, 51, 32.72756 + 60, 63, 64, 58, 54, 49, 39, 22, 7, 26, 78, 64, 56, 55, 63, 63, 32.72757 + 66, 72, 96, 55, 0, 13, 29, 39, 52, 39, 35, 35, 36, 41, 22, 12, 32.72758 + 0, 92, 75, 59, 58, 56, 56, 60, 53, 64, 85, 12, 1, 29, 42, 34, 32.72759 + 27, 0, 49, 81, 68, 66, 56, 60, 62, 84, 0, 23, 26, 35, 46, 56, 32.72760 + 64, 55, 46, 35, 32, 12, 0, 106, 109, 34, 0, 33, 27, 35, 46, 30, 32.72761 + 27, 3, 0, 83, 67, 53, 45, 52, 50, 41, 38, 36, 38, 38, 32, 29, 32.72762 + 30, 29, 26, 28, 36, 40, 48, 50, 83, 44, 0, 21, 32, 32, 27, 29, 32.72763 + 35, 36, 33, 18, 0, 54, 78, 59, 64, 62, 59, 56, 59, 57, 59, 84, 32.72764 + 0, 24, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 32.72765 + 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 32.72766 + 0, 60, 78, 62, 64, 64, 66, 64, 65, 44, 0, 27, 38, 45, 51, 57, 32.72767 + 55, 48, 42, 36, 23, 0, 71, 43, 42, 39, 41, 34, 21, 16, 15, 12, 32.72768 + 11, 6, 5, 4, 1, 0, 1, 0, 0, 0, 0, 1, 2, 3, 7, 9, 32.72769 + 13, 18, 21, 23, 30, 33, 41, 49, 62, 27, 1, 20, 31, 44, 51, 64, 32.72770 + 63, 51, 46, 37, 29, 14, 0, 88, 64, 48, 43, 40, 38, 32, 28, 28, 32.72771 + 25, 24, 22, 22, 24, 27, 34, 36, 41, 42, 49, 60, 80, 20, 5, 30, 32.72772 + 40, 47, 53, 59, 62, 57, 47, 41, 35, 13, 0, 93, 71, 53, 53, 60, 32.72773 + 71, 48, 0, 10, 31, 46, 45, 54, 48, 61, 56, 46, 48, 41, 31, 30, 32.72774 + 32, 24, 30, 29, 47, 54, 64, 81, 66, 59, 52, 48, 40, 23, 9, 27, 32.72775 + 78, 60, 60, 58, 57, 60, 67, 68, 63, 104, 8, 9, 26, 36, 60, 45, 32.72776 + 45, 35, 52, 41, 31, 18, 0, 52, 78, 56, 64, 61, 57, 55, 56, 66, 32.72777 + 95, 15, 5, 33, 40, 22, 0, 0, 92, 71, 66, 61, 55, 55, 58, 83, 32.72778 + 0, 23, 26, 37, 46, 55, 63, 56, 47, 33, 25, 8, 0, 122, 75, 0, 32.72779 + 26, 41, 35, 43, 42, 35, 25, 12, 82, 72, 58, 40, 54, 49, 45, 46, 32.72780 + 41, 40, 39, 36, 31, 29, 30, 29, 23, 29, 34, 36, 43, 55, 74, 48, 32.72781 + 0, 22, 35, 39, 39, 42, 47, 44, 31, 14, 0, 56, 80, 59, 62, 57, 32.72782 + 59, 56, 60, 57, 59, 84, 0, 24, 31, 40, 46, 54, 55, 45, 39, 26, 32.72783 + 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 32.72784 + 53, 61, 51, 42, 36, 20, 0, 60, 78, 64, 64, 64, 62, 63, 66, 62, 32.72785 + 0, 25, 37, 42, 50, 56, 54, 47, 40, 34, 19, 0, 69, 42, 42, 40, 32.72786 + 39, 33, 20, 17, 14, 12, 10, 6, 5, 4, 1, 0, 0, 0, 0, 0, 32.72787 + 1, 1, 3, 4, 8, 10, 14, 18, 22, 25, 30, 34, 41, 53, 70, 19, 32.72788 + 0, 29, 28, 45, 57, 60, 62, 52, 41, 33, 26, 9, 6, 93, 62, 48, 32.72789 + 43, 37, 36, 30, 29, 29, 24, 22, 20, 20, 22, 25, 32, 35, 39, 42, 32.72790 + 51, 56, 64, 47, 2, 28, 37, 44, 50, 57, 62, 57, 50, 42, 31, 17, 32.72791 + 0, 61, 76, 57, 59, 81, 68, 0, 4, 30, 50, 50, 52, 61, 63, 62, 32.72792 + 46, 35, 39, 31, 9, 0, 0, 3, 7, 20, 32, 46, 59, 62, 65, 61, 32.72793 + 54, 49, 40, 24, 10, 26, 78, 54, 60, 65, 58, 54, 55, 52, 61, 70, 32.72794 + 69, 0, 16, 38, 40, 56, 51, 49, 56, 46, 36, 18, 10, 8, 89, 67, 32.72795 + 61, 61, 63, 55, 58, 66, 88, 0, 9, 36, 42, 19, 0, 25, 88, 74, 32.72796 + 60, 54, 61, 51, 58, 85, 0, 23, 29, 39, 47, 54, 64, 58, 45, 43, 32.72797 + 30, 8, 0, 117, 10, 22, 28, 49, 46, 46, 41, 29, 14, 20, 107, 65, 32.72798 + 54, 50, 45, 50, 47, 49, 42, 41, 37, 33, 28, 25, 28, 26, 26, 21, 32.72799 + 36, 41, 39, 53, 71, 48, 0, 24, 36, 43, 46, 51, 54, 48, 35, 20, 32.72800 + 0, 60, 79, 59, 61, 59, 58, 56, 59, 57, 60, 84, 0, 24, 31, 40, 32.72801 + 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 32.72802 + 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 0, 60, 79, 64, 32.72803 + 64, 62, 61, 64, 71, 87, 0, 22, 32, 40, 48, 54, 52, 45, 39, 33, 32.72804 + 15, 9, 68, 42, 41, 40, 38, 30, 20, 16, 15, 13, 10, 5, 5, 4, 32.72805 + 1, 0, 0, 0, 0, 0, 0, 1, 3, 4, 8, 10, 14, 18, 22, 24, 32.72806 + 30, 35, 41, 54, 76, 11, 3, 30, 32, 47, 55, 61, 62, 56, 42, 33, 32.72807 + 25, 6, 17, 86, 58, 47, 40, 36, 35, 34, 32, 29, 26, 24, 21, 20, 32.72808 + 21, 25, 32, 34, 36, 44, 46, 51, 55, 62, 0, 26, 37, 42, 47, 55, 32.72809 + 61, 58, 51, 41, 27, 18, 0, 58, 78, 59, 77, 90, 0, 15, 29, 42, 32.72810 + 47, 59, 65, 66, 71, 51, 39, 32, 12, 5, 20, 47, 53, 28, 0, 7, 32.72811 + 27, 41, 50, 57, 60, 59, 55, 49, 40, 25, 11, 26, 85, 55, 53, 56, 32.72812 + 56, 57, 56, 57, 51, 70, 88, 0, 13, 38, 33, 47, 53, 60, 58, 58, 32.72813 + 33, 27, 21, 0, 61, 80, 68, 65, 69, 67, 64, 73, 67, 0, 26, 41, 32.72814 + 35, 12, 0, 70, 73, 66, 54, 51, 60, 54, 57, 87, 0, 23, 29, 39, 32.72815 + 46, 54, 65, 64, 66, 53, 42, 23, 0, 29, 21, 31, 45, 51, 54, 55, 32.72816 + 42, 31, 24, 0, 35, 77, 67, 54, 42, 47, 50, 47, 44, 40, 31, 25, 32.72817 + 23, 22, 24, 25, 29, 21, 34, 42, 40, 45, 69, 54, 0, 22, 34, 41, 32.72818 + 47, 54, 56, 46, 31, 15, 0, 55, 76, 58, 64, 66, 58, 56, 59, 57, 32.72819 + 60, 84, 0, 24, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 32.72820 + 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 32.72821 + 36, 20, 0, 60, 79, 62, 62, 64, 63, 61, 68, 96, 0, 19, 31, 39, 32.72822 + 47, 53, 52, 45, 38, 31, 13, 20, 68, 44, 41, 38, 36, 29, 20, 17, 32.72823 + 15, 13, 9, 5, 5, 3, 1, 0, 0, 0, 0, 0, 0, 1, 3, 4, 32.72824 + 8, 10, 15, 19, 23, 25, 31, 34, 41, 55, 74, 0, 11, 24, 36, 48, 32.72825 + 46, 66, 62, 58, 42, 34, 26, 3, 22, 73, 56, 46, 41, 37, 36, 35, 32.72826 + 30, 26, 26, 23, 19, 19, 20, 23, 31, 34, 38, 49, 41, 49, 53, 69, 32.72827 + 0, 27, 38, 40, 47, 53, 60, 57, 50, 41, 32, 6, 0, 68, 84, 69, 32.72828 + 83, 45, 5, 31, 39, 40, 51, 60, 64, 68, 58, 40, 28, 8, 9, 62, 32.72829 + 93, 73, 73, 89, 94, 5, 14, 40, 41, 47, 53, 56, 54, 47, 39, 26, 32.72830 + 12, 26, 76, 62, 60, 53, 54, 55, 49, 52, 53, 50, 67, 57, 0, 29, 32.72831 + 33, 42, 52, 54, 68, 56, 38, 36, 28, 3, 0, 81, 76, 66, 62, 68, 32.72832 + 67, 86, 25, 13, 31, 40, 27, 11, 0, 97, 76, 57, 57, 59, 55, 62, 32.72833 + 54, 87, 0, 25, 31, 40, 46, 54, 67, 68, 73, 61, 48, 37, 15, 6, 32.72834 + 34, 47, 55, 51, 61, 53, 52, 45, 33, 13, 0, 77, 74, 57, 55, 43, 32.72835 + 50, 48, 41, 37, 27, 21, 21, 21, 23, 25, 27, 35, 33, 34, 47, 47, 32.72836 + 67, 46, 1, 23, 34, 41, 50, 58, 56, 48, 34, 18, 0, 57, 80, 60, 32.72837 + 63, 58, 58, 56, 59, 57, 60, 84, 0, 24, 31, 40, 46, 54, 55, 45, 32.72838 + 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 32.72839 + 31, 42, 53, 61, 51, 42, 36, 20, 0, 60, 78, 61, 61, 64, 64, 60, 32.72840 + 60, 91, 0, 20, 32, 39, 48, 54, 53, 47, 36, 29, 12, 29, 69, 45, 32.72841 + 40, 37, 34, 28, 21, 17, 16, 13, 9, 5, 5, 3, 1, 0, 0, 0, 32.72842 + 0, 0, 0, 1, 3, 4, 8, 10, 16, 20, 23, 26, 29, 35, 42, 57, 32.72843 + 76, 6, 11, 30, 33, 44, 60, 60, 61, 55, 49, 29, 26, 6, 10, 80, 32.72844 + 59, 46, 43, 39, 35, 31, 30, 25, 26, 24, 20, 19, 19, 21, 30, 33, 32.72845 + 35, 49, 44, 46, 42, 68, 0, 24, 35, 39, 44, 51, 63, 60, 52, 46, 32.72846 + 36, 23, 2, 25, 85, 78, 91, 3, 17, 38, 38, 42, 48, 58, 61, 57, 32.72847 + 50, 28, 22, 0, 46, 89, 76, 65, 66, 71, 82, 44, 3, 30, 38, 40, 32.72848 + 46, 54, 55, 48, 37, 24, 10, 25, 80, 57, 55, 53, 52, 51, 49, 49, 32.72849 + 51, 52, 60, 79, 0, 13, 31, 33, 45, 58, 64, 57, 45, 38, 32, 13, 32.72850 + 0, 86, 74, 68, 63, 71, 73, 92, 0, 27, 32, 38, 26, 1, 43, 83, 32.72851 + 68, 60, 59, 60, 62, 62, 60, 85, 0, 23, 32, 40, 47, 53, 60, 71, 32.72852 + 82, 64, 62, 53, 32, 25, 37, 47, 61, 70, 67, 58, 52, 49, 43, 27, 32.72853 + 5, 10, 81, 66, 56, 46, 53, 47, 38, 32, 24, 20, 21, 22, 24, 26, 32.72854 + 29, 33, 38, 39, 41, 51, 63, 46, 0, 25, 33, 41, 48, 55, 54, 45, 32.72855 + 35, 15, 0, 58, 77, 61, 64, 61, 58, 57, 60, 57, 60, 84, 0, 23, 32.72856 + 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 32.72857 + 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 0, 60, 32.72858 + 79, 61, 64, 62, 61, 61, 64, 89, 0, 21, 32, 38, 48, 55, 51, 48, 32.72859 + 38, 26, 7, 28, 63, 46, 41, 38, 34, 27, 20, 19, 15, 12, 9, 5, 32.72860 + 5, 3, 0, 0, 0, 0, 0, 0, 1, 1, 3, 4, 8, 10, 16, 19, 32.72861 + 23, 25, 29, 34, 40, 56, 79, 14, 13, 25, 40, 45, 51, 63, 67, 53, 32.72862 + 42, 35, 26, 1, 15, 78, 58, 45, 41, 37, 34, 31, 31, 25, 25, 23, 32.72863 + 20, 19, 18, 21, 29, 33, 38, 43, 47, 44, 43, 66, 0, 27, 35, 39, 32.72864 + 45, 52, 62, 60, 51, 46, 36, 22, 11, 14, 84, 75, 76, 0, 21, 38, 32.72865 + 39, 42, 49, 53, 57, 50, 34, 26, 10, 3, 88, 72, 60, 58, 61, 62, 32.72866 + 73, 72, 2, 31, 29, 35, 45, 54, 55, 48, 37, 23, 10, 25, 79, 56, 32.72867 + 55, 53, 52, 51, 49, 49, 52, 57, 50, 68, 40, 0, 21, 41, 44, 53, 32.72868 + 60, 58, 50, 42, 34, 20, 0, 31, 89, 68, 65, 73, 72, 59, 0, 31, 32.72869 + 32, 25, 21, 0, 78, 80, 65, 60, 61, 63, 65, 64, 62, 86, 0, 23, 32.72870 + 31, 40, 47, 54, 61, 70, 80, 83, 60, 55, 55, 35, 48, 52, 65, 75, 32.72871 + 73, 65, 58, 54, 49, 40, 25, 0, 38, 80, 53, 54, 48, 46, 36, 30, 32.72872 + 22, 22, 24, 25, 27, 29, 32, 35, 38, 38, 41, 50, 61, 43, 1, 25, 32.72873 + 33, 41, 48, 55, 52, 44, 35, 17, 0, 58, 77, 62, 64, 61, 58, 57, 32.72874 + 60, 57, 60, 84, 0, 23, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 32.72875 + 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 32.72876 + 51, 42, 36, 20, 0, 61, 79, 62, 64, 62, 61, 61, 64, 89, 0, 15, 32.72877 + 32, 39, 45, 54, 53, 47, 36, 29, 8, 23, 71, 49, 40, 35, 31, 25, 32.72878 + 21, 18, 15, 12, 9, 5, 5, 3, 0, 0, 0, 0, 1, 0, 1, 1, 32.72879 + 3, 5, 9, 11, 16, 19, 23, 25, 29, 34, 41, 56, 80, 0, 9, 29, 32.72880 + 34, 42, 57, 61, 65, 52, 39, 38, 25, 1, 21, 77, 58, 44, 40, 36, 32.72881 + 34, 31, 29, 25, 25, 21, 17, 19, 18, 20, 27, 32, 38, 38, 45, 43, 32.72882 + 46, 67, 0, 28, 35, 40, 45, 52, 62, 59, 50, 45, 34, 26, 0, 38, 32.72883 + 89, 78, 55, 0, 20, 32, 43, 48, 51, 52, 49, 40, 33, 14, 0, 52, 32.72884 + 91, 69, 64, 62, 63, 62, 74, 95, 0, 19, 21, 33, 44, 55, 56, 48, 32.72885 + 36, 23, 11, 25, 76, 56, 55, 52, 51, 49, 48, 48, 53, 59, 49, 59, 32.72886 + 76, 0, 11, 37, 41, 48, 57, 60, 57, 47, 37, 28, 13, 0, 94, 66, 32.72887 + 58, 76, 81, 12, 1, 28, 30, 20, 8, 7, 94, 66, 62, 61, 62, 65, 32.72888 + 66, 66, 61, 86, 0, 22, 31, 39, 47, 55, 62, 67, 70, 76, 61, 54, 32.72889 + 51, 40, 41, 51, 61, 69, 75, 73, 66, 57, 50, 45, 33, 19, 0, 74, 32.72890 + 70, 50, 54, 41, 40, 34, 26, 23, 28, 30, 33, 34, 37, 37, 38, 39, 32.72891 + 41, 50, 61, 43, 1, 26, 33, 39, 48, 55, 51, 42, 34, 17, 0, 60, 32.72892 + 79, 62, 64, 61, 60, 58, 60, 57, 60, 84, 0, 23, 31, 40, 46, 54, 32.72893 + 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 32.72894 + 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 0, 61, 79, 62, 64, 62, 32.72895 + 59, 59, 62, 87, 0, 13, 31, 39, 45, 55, 55, 44, 35, 31, 1, 13, 32.72896 + 68, 46, 40, 37, 30, 24, 21, 19, 16, 12, 8, 4, 5, 3, 0, 0, 32.72897 + 0, 0, 1, 0, 1, 1, 3, 4, 9, 11, 16, 19, 23, 25, 30, 34, 32.72898 + 41, 55, 77, 0, 7, 30, 31, 42, 62, 61, 59, 54, 45, 36, 24, 8, 32.72899 + 19, 82, 60, 44, 41, 37, 34, 31, 29, 25, 23, 20, 18, 18, 18, 21, 32.72900 + 27, 32, 39, 40, 45, 44, 47, 74, 0, 24, 34, 40, 46, 55, 62, 58, 32.72901 + 49, 44, 38, 22, 0, 64, 89, 91, 24, 16, 20, 31, 46, 55, 55, 52, 32.72902 + 43, 33, 28, 4, 0, 103, 74, 65, 66, 58, 64, 63, 69, 90, 0, 11, 32.72903 + 24, 37, 44, 55, 56, 48, 36, 22, 9, 25, 75, 54, 54, 52, 51, 49, 32.72904 + 47, 48, 56, 53, 52, 54, 74, 4, 4, 26, 37, 42, 53, 61, 63, 52, 32.72905 + 40, 35, 27, 1, 26, 79, 67, 67, 101, 0, 7, 23, 24, 17, 0, 64, 32.72906 + 79, 56, 60, 61, 64, 65, 67, 66, 62, 85, 0, 22, 31, 40, 50, 57, 32.72907 + 61, 65, 64, 58, 57, 42, 32, 25, 31, 41, 51, 57, 69, 74, 72, 63, 32.72908 + 52, 47, 45, 26, 5, 10, 80, 61, 44, 48, 46, 40, 30, 26, 29, 31, 32.72909 + 35, 37, 38, 39, 38, 38, 42, 51, 60, 43, 3, 27, 33, 39, 48, 55, 32.72910 + 51, 41, 34, 17, 0, 60, 79, 62, 64, 61, 60, 58, 60, 57, 60, 84, 32.72911 + 0, 23, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 32.72912 + 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 32.72913 + 0, 61, 79, 62, 64, 62, 59, 59, 62, 87, 23, 18, 29, 37, 45, 54, 32.72914 + 54, 40, 34, 24, 0, 21, 64, 45, 43, 38, 29, 23, 21, 20, 16, 12, 32.72915 + 8, 4, 5, 3, 0, 0, 0, 0, 1, 0, 1, 1, 3, 4, 8, 11, 32.72916 + 16, 20, 23, 24, 30, 35, 41, 53, 71, 8, 6, 25, 39, 45, 51, 67, 32.72917 + 60, 55, 46, 32, 28, 11, 6, 90, 62, 45, 42, 38, 33, 31, 29, 25, 32.72918 + 21, 20, 18, 18, 19, 20, 27, 32, 39, 43, 42, 47, 49, 80, 0, 22, 32.72919 + 32, 40, 47, 55, 62, 57, 48, 43, 35, 4, 0, 57, 75, 94, 0, 11, 32.72920 + 22, 34, 51, 62, 60, 51, 37, 30, 30, 12, 0, 95, 71, 55, 62, 67, 32.72921 + 62, 62, 65, 82, 1, 9, 32, 44, 49, 55, 56, 48, 36, 22, 9, 25, 32.72922 + 74, 55, 54, 52, 50, 48, 47, 47, 52, 47, 53, 52, 59, 55, 0, 20, 32.72923 + 31, 39, 49, 60, 65, 58, 44, 39, 36, 8, 0, 89, 73, 75, 56, 0, 32.72924 + 14, 24, 20, 2, 0, 97, 65, 58, 58, 59, 61, 65, 67, 65, 61, 83, 32.72925 + 0, 23, 32, 40, 51, 59, 61, 62, 64, 55, 41, 24, 15, 34, 24, 34, 32.72926 + 40, 46, 61, 73, 77, 70, 56, 48, 42, 39, 26, 0, 32, 73, 53, 50, 32.72927 + 51, 47, 36, 30, 30, 30, 35, 37, 40, 38, 36, 36, 43, 50, 60, 44, 32.72928 + 3, 29, 34, 41, 50, 55, 51, 41, 35, 17, 0, 60, 79, 62, 64, 63, 32.72929 + 60, 58, 60, 57, 60, 84, 0, 23, 31, 40, 46, 54, 55, 45, 39, 26, 32.72930 + 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 32.72931 + 53, 61, 51, 42, 36, 20, 0, 61, 79, 62, 62, 61, 59, 59, 61, 86, 32.72932 + 37, 16, 25, 36, 44, 48, 49, 41, 32, 19, 0, 48, 66, 48, 43, 35, 32.72933 + 29, 23, 21, 20, 16, 12, 8, 4, 5, 3, 0, 0, 0, 0, 0, 0, 32.72934 + 0, 0, 2, 3, 8, 10, 15, 18, 22, 25, 28, 33, 40, 51, 64, 20, 32.72935 + 1, 24, 37, 46, 54, 66, 66, 54, 44, 34, 33, 12, 0, 85, 64, 46, 32.72936 + 43, 40, 36, 33, 32, 26, 24, 22, 20, 21, 21, 23, 29, 35, 38, 46, 32.72937 + 43, 52, 54, 76, 0, 23, 32, 41, 48, 55, 61, 56, 46, 41, 39, 13, 32.72938 + 0, 82, 81, 95, 0, 18, 25, 37, 55, 64, 62, 53, 37, 31, 34, 10, 32.72939 + 20, 76, 62, 54, 59, 70, 66, 61, 62, 79, 26, 5, 29, 46, 49, 57, 32.72940 + 56, 48, 36, 22, 8, 24, 73, 54, 54, 51, 49, 48, 46, 45, 47, 46, 32.72941 + 46, 50, 54, 83, 4, 10, 26, 35, 45, 55, 63, 61, 49, 42, 28, 24, 32.72942 + 0, 73, 80, 83, 17, 7, 21, 34, 29, 0, 19, 85, 62, 55, 53, 55, 32.72943 + 58, 62, 64, 63, 57, 79, 0, 23, 32, 42, 53, 60, 60, 60, 55, 48, 32.72944 + 31, 21, 0, 97, 5, 23, 31, 39, 52, 63, 74, 72, 61, 52, 44, 38, 32.72945 + 39, 20, 0, 68, 69, 50, 53, 53, 45, 38, 31, 29, 35, 37, 39, 38, 32.72946 + 35, 36, 41, 51, 60, 42, 4, 29, 34, 41, 51, 56, 51, 41, 35, 17, 32.72947 + 0, 60, 79, 62, 65, 63, 60, 58, 60, 57, 60, 84, 0, 23, 31, 40, 32.72948 + 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 65, 64, 61, 59, 59, 65, 32.72949 + 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 36, 20, 0, 61, 79, 62, 32.72950 + 62, 61, 59, 58, 61, 86, 35, 12, 28, 36, 42, 40, 42, 45, 36, 18, 32.72951 + 0, 61, 65, 47, 44, 35, 28, 23, 21, 21, 17, 12, 8, 4, 5, 3, 32.72952 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7, 9, 13, 17, 20, 23, 32.72953 + 27, 32, 39, 49, 61, 33, 0, 25, 29, 44, 56, 62, 68, 56, 44, 39, 32.72954 + 35, 15, 0, 57, 66, 49, 45, 42, 38, 37, 35, 30, 28, 26, 26, 26, 32.72955 + 26, 29, 36, 39, 42, 47, 46, 53, 62, 61, 0, 24, 33, 42, 49, 55, 32.72956 + 61, 55, 44, 41, 29, 12, 0, 94, 76, 81, 0, 14, 30, 42, 54, 63, 32.72957 + 63, 54, 42, 35, 24, 0, 42, 87, 62, 60, 61, 56, 67, 64, 62, 80, 32.72958 + 29, 2, 25, 44, 48, 57, 56, 48, 34, 21, 7, 23, 70, 51, 51, 49, 32.72959 + 48, 45, 44, 43, 42, 43, 38, 46, 56, 79, 45, 0, 19, 34, 41, 50, 32.72960 + 60, 63, 54, 45, 39, 19, 8, 18, 85, 95, 0, 13, 34, 42, 34, 5, 32.72961 + 62, 63, 58, 48, 49, 51, 55, 59, 61, 60, 54, 77, 0, 20, 32, 42, 32.72962 + 53, 62, 60, 58, 49, 41, 30, 18, 0, 139, 29, 4, 25, 39, 44, 49, 32.72963 + 64, 72, 67, 58, 53, 47, 39, 33, 2, 6, 78, 48, 53, 52, 54, 46, 32.72964 + 33, 27, 31, 36, 41, 40, 37, 36, 42, 51, 59, 43, 4, 30, 35, 42, 32.72965 + 52, 57, 52, 42, 35, 17, 0, 60, 79, 62, 65, 63, 60, 58, 60, 57, 32.72966 + 60, 84, 0, 23, 31, 40, 46, 54, 55, 45, 39, 26, 9, 26, 79, 62, 32.72967 + 65, 64, 61, 59, 59, 65, 75, 49, 0, 24, 31, 42, 53, 61, 51, 42, 32.72968 + 36, 20, 0, 61, 79, 62, 62, 61, 58, 58, 61, 85, 29, 13, 29, 30, 32.72969 + 34, 33, 34, 38, 35, 20, 0, 55, 64, 45, 45, 37, 29, 23, 22, 22, 32.72970 + 17, 14, 8, 4, 5, 3, 0, 0, 0, 0, 1, 0, 0, 1, 1, 2, 32.72971 + 8, 11, 12, 16, 19, 22, 28, 33, 39, 47, 57, 54, 0, 18, 36, 47, 32.72972 + 44, 63, 61, 61, 48, 46, 39, 24, 0, 29, 72, 52, 49, 45, 40, 38, 32.72973 + 37, 32, 31, 31, 29, 28, 28, 30, 37, 43, 45, 46, 47, 50, 69, 48, 32.72974 + 0, 26, 34, 42, 47, 54, 63, 57, 44, 39, 33, 6, 9, 84, 74, 92, 32.72975 + 0, 16, 33, 44, 53, 59, 57, 51, 42, 36, 31, 0, 58, 81, 63, 52, 32.72976 + 66, 64, 63, 69, 64, 84, 23, 6, 26, 38, 45, 55, 56, 48, 36, 22, 32.72977 + 6, 22, 70, 50, 50, 46, 45, 43, 42, 41, 41, 39, 39, 46, 55, 65, 32.72978 + 93, 0, 16, 34, 39, 46, 59, 65, 57, 45, 34, 27, 23, 0, 95, 60, 32.72979 + 0, 29, 41, 36, 15, 5, 80, 59, 55, 53, 49, 51, 53, 57, 61, 61, 32.72980 + 56, 78, 0, 18, 31, 42, 53, 62, 58, 56, 52, 43, 30, 0, 0, 115, 32.72981 + 97, 0, 13, 34, 39, 44, 57, 69, 72, 69, 67, 51, 46, 34, 19, 0, 32.72982 + 32, 72, 55, 49, 52, 47, 34, 27, 32, 35, 41, 39, 37, 37, 45, 53, 32.72983 + 60, 43, 1, 29, 34, 43, 55, 60, 52, 41, 34, 15, 0, 60, 80, 64, 32.72984 + 64, 63, 61, 60, 60, 56, 57, 84, 0, 24, 31, 39, 46, 54, 53, 44, 32.72985 + 38, 25, 7, 26, 81, 62, 63, 62, 61, 61, 61, 66, 75, 50, 0, 24, 32.72986 + 30, 40, 51, 62, 53, 43, 34, 19, 0, 63, 80, 62, 62, 61, 61, 61, 32.72987 + 61, 82, 23, 4, 16, 8, 20, 20, 17, 15, 18, 12, 0, 47, 69, 47, 32.72988 + 45, 37, 30, 24, 22, 21, 16, 13, 8, 4, 5, 3, 0, 0, 0, 0, 32.72989 + 2, 1, 1, 2, 2, 4, 8, 9, 12, 16, 19, 22, 28, 31, 37, 46, 32.72990 + 43, 73, 0, 15, 41, 41, 48, 49, 61, 59, 56, 49, 44, 33, 13, 0, 32.72991 + 75, 61, 47, 51, 49, 32, 43, 30, 40, 39, 35, 33, 30, 31, 38, 40, 32.72992 + 41, 45, 49, 52, 77, 26, 6, 29, 38, 37, 47, 57, 54, 58, 43, 33, 32.72993 + 28, 0, 31, 79, 77, 94, 0, 23, 37, 41, 48, 53, 52, 45, 42, 35, 32.72994 + 27, 0, 56, 78, 63, 63, 58, 64, 66, 68, 62, 83, 21, 4, 26, 36, 32.72995 + 41, 49, 55, 49, 38, 23, 4, 20, 71, 52, 48, 43, 40, 38, 37, 37, 32.72996 + 39, 44, 40, 44, 41, 60, 71, 28, 14, 30, 36, 45, 55, 70, 55, 52, 32.72997 + 38, 38, 29, 19, 60, 41, 18, 32, 35, 23, 0, 47, 70, 55, 52, 53, 32.72998 + 51, 52, 56, 58, 60, 60, 59, 81, 0, 16, 30, 43, 53, 58, 60, 51, 32.72999 + 52, 40, 23, 2, 0, 113, 94, 46, 0, 15, 31, 42, 56, 61, 61, 77, 32.73000 + 70, 68, 49, 32, 29, 12, 0, 79, 63, 52, 42, 42, 43, 31, 44, 39, 32.73001 + 38, 38, 34, 40, 51, 57, 63, 39, 0, 23, 33, 43, 58, 63, 54, 40, 32.73002 + 31, 12, 0, 60, 81, 65, 63, 61, 66, 64, 59, 54, 55, 82, 0, 28, 32.73003 + 30, 37, 44, 51, 50, 40, 34, 22, 5, 26, 83, 64, 61, 59, 61, 64, 32.73004 + 63, 68, 76, 50, 0, 24, 27, 35, 51, 64, 56, 45, 32, 17, 0, 65, 32.73005 + 82, 62, 62, 62, 65, 65, 62, 78, 9, 0, 0, 0, 1, 0, 0, 0, 32.73006 + 0, 0, 0, 44, 57, 42, 48, 40, 34, 27, 19, 16, 14, 10, 8, 4, 32.73007 + 5, 3, 1, 0, 0, 0, 2, 1, 2, 2, 3, 4, 7, 9, 12, 14, 32.73008 + 17, 21, 25, 28, 36, 41, 45, 61, 26, 12, 30, 43, 47, 50, 58, 60, 32.73009 + 60, 54, 47, 37, 23, 0, 31, 68, 58, 56, 37, 48, 39, 39, 41, 40, 32.73010 + 37, 34, 33, 33, 40, 44, 42, 54, 40, 62, 87, 0, 16, 28, 36, 44, 32.73011 + 49, 54, 58, 60, 44, 31, 15, 0, 68, 75, 68, 91, 0, 21, 36, 41, 32.73012 + 47, 52, 52, 50, 44, 38, 27, 3, 10, 83, 65, 68, 62, 63, 67, 69, 32.73013 + 62, 82, 21, 4, 24, 35, 39, 49, 55, 49, 38, 23, 4, 20, 71, 53, 32.73014 + 47, 43, 40, 37, 35, 37, 43, 43, 36, 42, 40, 48, 67, 68, 0, 24, 32.73015 + 32, 36, 59, 54, 62, 61, 50, 43, 49, 29, 22, 14, 29, 46, 31, 14, 32.73016 + 0, 72, 71, 48, 49, 53, 52, 52, 55, 56, 58, 60, 59, 80, 0, 17, 32.73017 + 30, 44, 53, 58, 60, 51, 50, 38, 25, 6, 0, 101, 93, 82, 0, 0, 32.73018 + 33, 44, 41, 47, 68, 71, 79, 67, 50, 43, 36, 27, 5, 15, 78, 55, 32.73019 + 49, 46, 35, 44, 45, 45, 40, 39, 36, 43, 53, 59, 64, 39, 0, 20, 32.73020 + 31, 43, 57, 62, 52, 38, 31, 12, 0, 60, 81, 66, 62, 60, 65, 63, 32.73021 + 59, 54, 55, 82, 0, 30, 32, 39, 46, 52, 50, 40, 34, 22, 6, 26, 32.73022 + 85, 64, 58, 56, 61, 64, 65, 68, 75, 49, 0, 24, 26, 34, 50, 62, 32.73023 + 56, 45, 30, 14, 0, 64, 80, 62, 62, 64, 68, 66, 61, 71, 57, 58, 32.73024 + 51, 74, 73, 67, 74, 66, 58, 60, 50, 68, 46, 39, 40, 46, 36, 30, 32.73025 + 22, 17, 12, 10, 8, 7, 5, 3, 1, 0, 0, 0, 2, 0, 2, 1, 32.73026 + 3, 3, 6, 7, 11, 13, 16, 19, 24, 27, 35, 39, 42, 57, 60, 0, 32.73027 + 22, 36, 43, 55, 59, 62, 64, 57, 46, 38, 30, 10, 0, 89, 72, 53, 32.73028 + 51, 37, 41, 47, 43, 39, 36, 34, 35, 38, 43, 46, 50, 48, 55, 60, 32.73029 + 72, 0, 17, 40, 39, 51, 51, 49, 48, 36, 30, 19, 0, 9, 86, 66, 32.73030 + 64, 91, 0, 15, 29, 39, 46, 55, 59, 56, 50, 42, 30, 4, 13, 95, 32.73031 + 67, 52, 62, 68, 69, 68, 61, 82, 21, 4, 24, 35, 44, 53, 56, 49, 32.73032 + 38, 23, 6, 23, 71, 52, 49, 46, 43, 40, 37, 38, 39, 42, 38, 40, 32.73033 + 44, 43, 55, 82, 5, 0, 18, 36, 48, 57, 65, 65, 65, 45, 50, 42, 32.73034 + 23, 28, 36, 28, 26, 7, 5, 88, 65, 50, 49, 46, 46, 48, 50, 52, 32.73035 + 54, 55, 53, 77, 0, 20, 33, 47, 55, 61, 63, 54, 49, 37, 28, 13, 32.73036 + 0, 103, 85, 85, 68, 0, 12, 32, 47, 43, 55, 64, 76, 70, 58, 53, 32.73037 + 40, 29, 18, 0, 41, 82, 59, 38, 56, 48, 47, 48, 48, 48, 44, 49, 32.73038 + 58, 61, 67, 41, 0, 22, 31, 41, 54, 57, 48, 37, 32, 15, 0, 61, 32.73039 + 80, 63, 59, 56, 60, 58, 60, 57, 60, 87, 0, 30, 35, 44, 51, 58, 32.73040 + 55, 44, 38, 26, 10, 29, 82, 60, 56, 56, 61, 64, 63, 66, 73, 48, 32.73041 + 0, 24, 26, 34, 49, 59, 53, 42, 27, 13, 0, 60, 79, 62, 62, 64, 32.73042 + 65, 64, 57, 59, 72, 86, 92, 91, 106, 111, 111, 103, 105, 94, 78, 61, 32.73043 + 44, 43, 42, 40, 37, 31, 27, 22, 13, 9, 12, 9, 7, 4, 1, 0, 32.73044 + 0, 0, 2, 0, 2, 1, 2, 2, 4, 6, 10, 13, 15, 19, 24, 27, 32.73045 + 33, 39, 35, 54, 70, 0, 5, 30, 40, 51, 55, 61, 65, 59, 48, 42, 32.73046 + 38, 25, 3, 22, 80, 68, 46, 49, 51, 44, 43, 40, 38, 38, 41, 43, 32.73047 + 47, 48, 50, 47, 63, 78, 29, 4, 31, 36, 48, 54, 60, 55, 52, 33, 32.73048 + 32, 18, 0, 66, 80, 64, 63, 83, 16, 0, 23, 35, 45, 54, 61, 60, 32.73049 + 54, 44, 29, 18, 0, 104, 71, 53, 71, 62, 63, 64, 59, 82, 21, 6, 32.73050 + 26, 37, 46, 56, 58, 49, 36, 22, 7, 24, 70, 52, 51, 48, 44, 41, 32.73051 + 38, 36, 38, 42, 43, 37, 42, 47, 46, 66, 45, 0, 16, 36, 38, 58, 32.73052 + 64, 62, 72, 65, 55, 49, 38, 44, 38, 29, 21, 0, 52, 79, 58, 52, 32.73053 + 48, 44, 44, 45, 47, 49, 51, 52, 49, 74, 0, 24, 34, 47, 55, 62, 32.73054 + 64, 54, 45, 39, 32, 14, 0, 108, 76, 63, 90, 25, 4, 26, 32, 43, 32.73055 + 53, 60, 65, 72, 64, 53, 51, 30, 25, 11, 0, 80, 67, 44, 54, 55, 32.73056 + 43, 50, 50, 53, 50, 53, 57, 61, 66, 43, 0, 23, 33, 42, 51, 55, 32.73057 + 47, 37, 34, 17, 0, 61, 81, 62, 59, 55, 56, 57, 60, 59, 64, 88, 32.73058 + 0, 28, 37, 47, 54, 61, 58, 47, 41, 29, 13, 30, 79, 57, 55, 58, 32.73059 + 61, 64, 62, 65, 72, 46, 0, 25, 28, 36, 49, 59, 51, 42, 29, 12, 32.73060 + 0, 58, 78, 62, 62, 64, 62, 61, 57, 59, 65, 78, 90, 50, 9, 0, 32.73061 + 0, 0, 12, 65, 83, 69, 44, 41, 39, 44, 36, 30, 26, 21, 12, 9, 32.73062 + 13, 10, 7, 4, 1, 0, 0, 0, 2, 0, 1, 1, 1, 2, 5, 4, 32.73063 + 8, 10, 13, 16, 21, 24, 32, 37, 40, 42, 63, 60, 0, 16, 42, 38, 32.73064 + 42, 51, 60, 62, 58, 52, 47, 36, 15, 0, 60, 73, 61, 39, 42, 46, 32.73065 + 44, 43, 43, 44, 47, 48, 48, 46, 42, 48, 60, 77, 0, 22, 35, 45, 32.73066 + 38, 43, 56, 52, 52, 40, 32, 1, 2, 81, 66, 64, 65, 82, 59, 0, 32.73067 + 14, 32, 42, 52, 61, 62, 57, 48, 44, 17, 0, 60, 78, 68, 50, 57, 32.73068 + 52, 54, 56, 83, 22, 7, 29, 40, 49, 57, 56, 46, 33, 21, 8, 24, 32.73069 + 68, 49, 51, 49, 46, 42, 38, 34, 41, 36, 42, 36, 36, 48, 46, 56, 32.73070 + 67, 0, 12, 29, 39, 43, 60, 63, 72, 77, 62, 54, 42, 44, 31, 25, 32.73071 + 14, 0, 77, 68, 58, 49, 45, 45, 42, 46, 45, 48, 50, 48, 46, 72, 32.73072 + 0, 27, 34, 46, 54, 61, 64, 52, 38, 39, 39, 11, 0, 99, 76, 64, 32.73073 + 65, 74, 8, 25, 24, 39, 53, 58, 56, 64, 67, 55, 59, 39, 26, 22, 32.73074 + 4, 22, 78, 59, 45, 46, 49, 47, 49, 53, 50, 52, 55, 58, 65, 43, 32.73075 + 0, 27, 37, 45, 52, 55, 48, 38, 34, 18, 0, 62, 80, 60, 59, 55, 32.73076 + 55, 55, 63, 64, 65, 88, 0, 24, 35, 46, 53, 59, 57, 47, 42, 30, 32.73077 + 16, 30, 75, 52, 55, 58, 61, 64, 62, 66, 73, 48, 0, 28, 34, 41, 32.73078 + 51, 61, 53, 43, 30, 14, 0, 58, 78, 61, 61, 60, 57, 57, 60, 67, 32.73079 + 81, 101, 22, 0, 3, 15, 7, 16, 4, 0, 14, 88, 58, 47, 47, 39, 32.73080 + 34, 26, 18, 14, 10, 8, 9, 9, 5, 4, 1, 0, 1, 0, 1, 0, 32.73081 + 1, 0, 2, 1, 3, 4, 7, 9, 12, 15, 19, 22, 30, 36, 40, 37, 32.73082 + 58, 81, 25, 0, 25, 32, 34, 43, 57, 63, 64, 62, 55, 45, 28, 19, 32.73083 + 0, 75, 68, 58, 48, 47, 47, 46, 48, 49, 50, 51, 51, 51, 55, 66, 32.73084 + 74, 0, 11, 30, 45, 53, 48, 51, 64, 53, 51, 42, 19, 0, 59, 80, 32.73085 + 68, 64, 62, 75, 72, 0, 7, 31, 42, 52, 58, 61, 58, 51, 41, 33, 32.73086 + 12, 17, 93, 64, 63, 51, 46, 51, 58, 85, 22, 7, 29, 42, 51, 57, 32.73087 + 56, 45, 31, 19, 8, 26, 67, 47, 49, 47, 44, 41, 37, 35, 37, 28, 32.73088 + 40, 40, 33, 39, 46, 53, 63, 23, 0, 25, 37, 43, 48, 63, 68, 72, 32.73089 + 64, 64, 48, 45, 35, 13, 0, 31, 79, 59, 53, 51, 51, 41, 44, 46, 32.73090 + 48, 48, 49, 49, 45, 71, 0, 29, 34, 43, 51, 58, 62, 52, 44, 36, 32.73091 + 37, 11, 0, 94, 75, 69, 67, 78, 46, 0, 24, 37, 46, 55, 52, 55, 32.73092 + 76, 63, 55, 49, 41, 29, 29, 0, 42, 81, 57, 42, 54, 48, 51, 55, 32.73093 + 51, 51, 52, 55, 64, 44, 0, 29, 40, 46, 52, 55, 48, 38, 34, 17, 32.73094 + 0, 65, 78, 59, 60, 57, 56, 57, 64, 65, 65, 87, 0, 20, 31, 41, 32.73095 + 48, 56, 54, 45, 41, 29, 16, 30, 72, 49, 54, 59, 62, 66, 62, 65, 32.73096 + 73, 49, 0, 28, 37, 45, 53, 61, 54, 45, 33, 17, 0, 60, 79, 63, 32.73097 + 63, 60, 56, 56, 61, 74, 94, 14, 0, 11, 26, 28, 34, 34, 16, 17, 32.73098 + 1, 21, 71, 55, 47, 46, 34, 25, 15, 12, 11, 10, 11, 9, 6, 4, 32.73099 + 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 3, 4, 7, 10, 12, 14, 32.73100 + 18, 21, 28, 36, 37, 47, 54, 63, 64, 5, 3, 26, 34, 42, 48, 54, 32.73101 + 63, 65, 60, 53, 48, 27, 6, 0, 82, 76, 61, 56, 52, 52, 52, 53, 32.73102 + 53, 52, 54, 59, 68, 84, 29, 5, 25, 47, 47, 49, 52, 53, 56, 42, 32.73103 + 36, 21, 0, 14, 79, 64, 60, 63, 65, 74, 78, 9, 3, 29, 42, 48, 32.73104 + 53, 57, 56, 53, 41, 29, 15, 6, 48, 93, 70, 59, 48, 52, 62, 89, 32.73105 + 21, 4, 27, 40, 49, 56, 53, 44, 30, 19, 10, 26, 66, 44, 44, 43, 32.73106 + 40, 38, 35, 33, 31, 29, 36, 38, 32, 35, 43, 51, 57, 66, 0, 21, 32.73107 + 30, 45, 44, 56, 67, 73, 67, 61, 42, 35, 36, 19, 0, 73, 69, 51, 32.73108 + 48, 53, 49, 40, 48, 50, 50, 49, 50, 50, 46, 71, 0, 30, 33, 40, 32.73109 + 47, 54, 59, 52, 51, 38, 35, 9, 0, 94, 72, 62, 62, 74, 94, 7, 32.73110 + 2, 32, 39, 47, 50, 55, 79, 74, 59, 58, 57, 45, 32, 18, 0, 77, 32.73111 + 67, 57, 50, 55, 55, 58, 55, 53, 53, 54, 65, 47, 0, 30, 41, 48, 32.73112 + 51, 53, 48, 38, 30, 15, 0, 65, 75, 57, 60, 59, 60, 61, 66, 65, 32.73113 + 64, 82, 0, 16, 25, 36, 43, 51, 50, 41, 37, 28, 14, 29, 71, 48, 32.73114 + 55, 61, 64, 66, 59, 62, 72, 48, 0, 26, 37, 46, 51, 59, 53, 45, 32.73115 + 36, 19, 0, 61, 84, 67, 67, 63, 56, 54, 60, 77, 67, 0, 9, 24, 32.73116 + 38, 35, 38, 38, 39, 32, 19, 0, 68, 52, 46, 38, 35, 25, 19, 15, 32.73117 + 14, 15, 15, 12, 8, 4, 2, 0, 1, 0, 1, 0, 1, 2, 1, 1, 32.73118 + 3, 5, 6, 9, 10, 13, 16, 20, 25, 33, 38, 52, 46, 59, 68, 36, 32.73119 + 0, 12, 34, 43, 43, 48, 58, 64, 62, 57, 50, 44, 31, 6, 2, 51, 32.73120 + 83, 65, 68, 64, 65, 66, 67, 68, 73, 83, 80, 2, 9, 28, 38, 53, 32.73121 + 58, 58, 53, 48, 46, 38, 35, 8, 0, 73, 66, 67, 56, 66, 58, 59, 32.73122 + 67, 58, 0, 22, 38, 45, 49, 55, 55, 52, 43, 38, 33, 13, 0, 66, 32.73123 + 88, 71, 63, 65, 69, 92, 21, 3, 26, 39, 48, 54, 53, 44, 33, 22, 32.73124 + 13, 27, 67, 43, 41, 38, 36, 35, 34, 32, 30, 36, 30, 27, 32, 40, 32.73125 + 49, 54, 54, 76, 35, 6, 25, 29, 51, 52, 63, 73, 57, 51, 50, 34, 32.73126 + 24, 4, 6, 86, 58, 48, 52, 50, 36, 49, 48, 52, 50, 51, 52, 50, 32.73127 + 48, 74, 0, 30, 31, 39, 46, 52, 59, 52, 50, 41, 37, 6, 0, 93, 32.73128 + 78, 64, 56, 68, 75, 65, 0, 16, 30, 42, 51, 57, 68, 75, 72, 62, 32.73129 + 56, 48, 42, 27, 8, 27, 82, 61, 60, 56, 58, 61, 57, 55, 52, 56, 32.73130 + 68, 49, 0, 29, 41, 46, 50, 52, 47, 37, 30, 15, 0, 66, 74, 56, 32.73131 + 59, 59, 63, 62, 66, 63, 61, 82, 0, 16, 24, 33, 40, 48, 48, 38, 32.73132 + 37, 26, 14, 30, 72, 50, 56, 62, 65, 64, 58, 59, 70, 46, 0, 24, 32.73133 + 37, 45, 50, 58, 51, 45, 36, 20, 0, 63, 82, 67, 68, 65, 60, 58, 32.73134 + 63, 81, 12, 0, 20, 35, 39, 44, 45, 43, 43, 34, 25, 0, 28, 57, 32.73135 + 49, 38, 35, 29, 23, 20, 15, 13, 16, 12, 8, 4, 2, 0, 1, 0, 32.73136 + 1, 1, 1, 0, 0, 1, 2, 3, 5, 6, 10, 13, 14, 17, 25, 31, 32.73137 + 38, 35, 42, 44, 47, 63, 46, 0, 19, 42, 44, 51, 55, 47, 47, 54, 32.73138 + 50, 49, 34, 32, 14, 0, 4, 63, 87, 93, 77, 82, 97, 93, 72, 36, 32.73139 + 0, 5, 23, 40, 51, 59, 62, 59, 46, 50, 33, 28, 20, 0, 75, 66, 32.73140 + 61, 58, 57, 54, 50, 50, 55, 77, 23, 16, 27, 43, 41, 53, 52, 50, 32.73141 + 44, 43, 39, 34, 11, 3, 50, 102, 93, 78, 87, 87, 21, 4, 22, 34, 32.73142 + 45, 54, 60, 54, 38, 29, 23, 3, 73, 48, 39, 33, 37, 32, 40, 34, 32.73143 + 32, 30, 28, 31, 32, 39, 50, 55, 56, 72, 66, 0, 14, 33, 45, 53, 32.73144 + 59, 70, 60, 48, 36, 34, 18, 0, 43, 68, 58, 42, 48, 46, 45, 48, 32.73145 + 47, 53, 42, 51, 49, 51, 50, 80, 0, 28, 30, 36, 46, 55, 55, 54, 32.73146 + 52, 42, 27, 0, 0, 93, 72, 64, 66, 60, 65, 86, 34, 11, 17, 43, 32.73147 + 44, 59, 62, 71, 61, 60, 59, 50, 42, 35, 26, 0, 52, 74, 58, 56, 32.73148 + 64, 57, 67, 54, 54, 61, 73, 51, 2, 26, 38, 43, 47, 50, 44, 36, 32.73149 + 31, 23, 1, 72, 71, 52, 54, 59, 64, 61, 63, 55, 61, 87, 0, 25, 32.73150 + 26, 35, 44, 47, 48, 42, 37, 28, 14, 37, 77, 50, 69, 61, 64, 61, 32.73151 + 56, 60, 69, 47, 0, 21, 37, 42, 44, 58, 49, 43, 35, 16, 0, 59, 32.73152 + 81, 55, 69, 66, 65, 61, 69, 85, 2, 7, 29, 49, 47, 53, 57, 49, 32.73153 + 39, 29, 20, 7, 7, 59, 43, 33, 33, 31, 31, 26, 12, 6, 12, 12, 32.73154 + 6, 5, 2, 0, 0, 0, 1, 0, 0, 0, 0, 1, 3, 3, 4, 5, 32.73155 + 8, 10, 12, 16, 22, 27, 34, 32, 39, 39, 37, 57, 63, 52, 5, 23, 32.73156 + 37, 40, 47, 52, 40, 43, 47, 50, 54, 47, 29, 16, 0, 0, 0, 5, 32.73157 + 20, 20, 7, 0, 0, 1, 20, 26, 33, 45, 55, 56, 53, 49, 40, 28, 32.73158 + 23, 17, 0, 52, 72, 57, 56, 54, 52, 49, 45, 46, 49, 65, 83, 0, 32.73159 + 4, 32, 46, 48, 44, 50, 46, 47, 53, 56, 45, 20, 0, 0, 9, 22, 32.73160 + 25, 98, 24, 0, 24, 41, 44, 50, 56, 51, 43, 31, 21, 0, 86, 56, 32.73161 + 46, 42, 37, 36, 39, 37, 32, 29, 30, 31, 34, 40, 50, 55, 48, 64, 32.73162 + 81, 24, 0, 20, 38, 51, 54, 67, 55, 53, 36, 24, 14, 0, 66, 68, 32.73163 + 51, 41, 49, 46, 43, 42, 43, 41, 48, 46, 46, 62, 61, 83, 0, 27, 32.73164 + 33, 40, 48, 55, 57, 53, 45, 38, 25, 6, 0, 94, 77, 64, 59, 70, 32.73165 + 62, 74, 100, 1, 9, 24, 45, 61, 54, 54, 55, 55, 53, 47, 45, 30, 32.73166 + 33, 3, 0, 93, 73, 62, 63, 65, 48, 55, 57, 59, 86, 55, 2, 26, 32.73167 + 39, 46, 49, 53, 49, 42, 34, 16, 5, 54, 81, 55, 52, 54, 64, 59, 32.73168 + 63, 66, 53, 89, 0, 23, 33, 40, 49, 52, 52, 46, 40, 32, 21, 0, 32.73169 + 86, 62, 58, 59, 67, 61, 53, 56, 82, 48, 0, 22, 30, 42, 48, 53, 32.73170 + 46, 46, 43, 26, 0, 23, 69, 60, 62, 71, 66, 70, 55, 89, 0, 26, 32.73171 + 33, 38, 46, 61, 58, 55, 34, 30, 30, 0, 15, 65, 44, 35, 33, 33, 32.73172 + 32, 26, 8, 1, 7, 8, 6, 5, 2, 0, 0, 0, 0, 0, 0, 0, 32.73173 + 0, 0, 2, 2, 4, 4, 7, 10, 12, 13, 22, 24, 22, 23, 34, 37, 32.73174 + 35, 43, 55, 66, 46, 4, 9, 28, 26, 33, 40, 46, 44, 46, 55, 52, 32.73175 + 42, 37, 32, 16, 5, 5, 0, 0, 10, 8, 18, 18, 24, 39, 46, 45, 32.73176 + 47, 45, 44, 48, 34, 23, 18, 0, 52, 81, 56, 57, 53, 49, 44, 43, 32.73177 + 45, 47, 49, 58, 80, 53, 0, 5, 30, 43, 46, 49, 37, 43, 58, 56, 32.73178 + 51, 44, 24, 9, 0, 0, 68, 85, 32, 6, 23, 44, 50, 52, 56, 56, 32.73179 + 52, 43, 29, 2, 50, 67, 48, 42, 39, 40, 44, 39, 34, 30, 31, 34, 32.73180 + 37, 41, 48, 50, 57, 53, 53, 64, 0, 9, 33, 53, 50, 55, 54, 50, 32.73181 + 33, 21, 1, 18, 77, 60, 46, 42, 49, 45, 45, 41, 39, 38, 40, 39, 32.73182 + 49, 56, 53, 62, 0, 24, 33, 39, 46, 51, 52, 47, 40, 40, 32, 13, 32.73183 + 0, 102, 70, 65, 64, 51, 65, 72, 81, 58, 0, 13, 27, 47, 46, 41, 32.73184 + 48, 44, 43, 43, 49, 50, 32, 16, 8, 26, 78, 63, 63, 56, 58, 45, 32.73185 + 53, 65, 79, 62, 0, 23, 37, 47, 48, 50, 50, 45, 35, 40, 13, 27, 32.73186 + 83, 59, 56, 46, 59, 57, 53, 53, 69, 82, 2, 25, 38, 44, 50, 51, 32.73187 + 49, 46, 40, 34, 19, 0, 100, 71, 63, 53, 68, 63, 60, 67, 86, 52, 32.73188 + 3, 28, 37, 48, 49, 54, 53, 52, 41, 31, 15, 22, 85, 58, 59, 63, 32.73189 + 63, 60, 68, 89, 0, 22, 31, 47, 50, 57, 52, 46, 46, 33, 40, 16, 32.73190 + 11, 66, 43, 32, 33, 30, 28, 21, 6, 0, 3, 4, 4, 5, 2, 0, 32.73191 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 7, 9, 11, 13, 32.73192 + 18, 21, 22, 23, 30, 38, 40, 37, 38, 50, 72, 60, 4, 4, 15, 17, 32.73193 + 45, 37, 46, 43, 36, 44, 51, 46, 37, 39, 26, 26, 19, 24, 30, 26, 32.73194 + 33, 39, 39, 40, 31, 30, 40, 35, 25, 26, 16, 4, 0, 73, 65, 57, 32.73195 + 58, 54, 48, 44, 39, 39, 43, 47, 49, 53, 59, 71, 40, 0, 9, 27, 32.73196 + 38, 42, 45, 42, 56, 56, 56, 52, 31, 18, 0, 39, 82, 82, 25, 10, 32.73197 + 33, 38, 38, 39, 41, 44, 46, 41, 27, 5, 12, 90, 68, 46, 45, 37, 32.73198 + 50, 37, 36, 33, 33, 35, 39, 42, 47, 47, 50, 43, 46, 62, 49, 0, 32.73199 + 20, 25, 44, 40, 58, 40, 30, 21, 0, 57, 66, 47, 46, 47, 43, 41, 32.73200 + 45, 43, 34, 38, 31, 40, 51, 61, 77, 34, 4, 26, 34, 38, 42, 44, 32.73201 + 47, 43, 39, 41, 37, 20, 0, 68, 83, 60, 57, 61, 63, 60, 71, 79, 32.73202 + 8, 0, 14, 30, 42, 40, 42, 33, 37, 37, 45, 41, 38, 26, 7, 0, 32.73203 + 55, 80, 67, 49, 47, 47, 53, 62, 94, 18, 3, 25, 38, 45, 46, 47, 32.73204 + 49, 47, 35, 24, 13, 0, 86, 60, 54, 53, 54, 53, 49, 68, 70, 51, 32.73205 + 9, 35, 43, 47, 50, 48, 47, 45, 43, 37, 23, 2, 54, 82, 72, 59, 32.73206 + 62, 54, 69, 77, 98, 14, 5, 23, 40, 44, 43, 40, 43, 47, 40, 37, 32.73207 + 13, 0, 85, 54, 73, 58, 61, 57, 48, 73, 7, 18, 28, 32, 44, 49, 32.73208 + 38, 39, 43, 29, 29, 14, 12, 59, 48, 36, 34, 28, 24, 18, 8, 4, 32.73209 + 6, 6, 4, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73210 + 2, 1, 5, 5, 6, 10, 14, 18, 23, 24, 23, 27, 37, 39, 39, 45, 32.73211 + 57, 65, 79, 17, 0, 1, 14, 34, 35, 44, 35, 40, 42, 50, 42, 46, 32.73212 + 37, 37, 34, 37, 41, 36, 26, 24, 36, 40, 23, 13, 22, 18, 11, 11, 32.73213 + 0, 28, 82, 67, 49, 44, 40, 47, 41, 39, 38, 39, 43, 49, 52, 51, 32.73214 + 44, 56, 69, 45, 0, 1, 29, 25, 34, 29, 39, 41, 43, 41, 20, 1, 32.73215 + 0, 101, 67, 83, 27, 6, 30, 29, 27, 27, 30, 33, 36, 35, 26, 13, 32.73216 + 0, 59, 70, 50, 46, 37, 49, 42, 37, 34, 33, 33, 37, 40, 42, 43, 32.73217 + 41, 51, 42, 52, 89, 18, 0, 13, 25, 32, 49, 34, 32, 13, 0, 80, 32.73218 + 54, 41, 51, 49, 41, 40, 42, 38, 37, 36, 36, 40, 42, 66, 79, 0, 32.73219 + 5, 20, 25, 27, 26, 28, 32, 33, 39, 32, 34, 27, 15, 8, 97, 61, 32.73220 + 61, 52, 55, 56, 51, 61, 69, 6, 3, 5, 20, 28, 29, 25, 34, 34, 32.73221 + 39, 34, 30, 34, 36, 10, 0, 78, 71, 53, 49, 54, 55, 71, 78, 0, 32.73222 + 4, 21, 31, 34, 33, 34, 36, 35, 32, 21, 23, 0, 32, 82, 58, 55, 32.73223 + 58, 58, 51, 61, 89, 10, 0, 27, 32, 35, 35, 33, 30, 31, 34, 30, 32.73224 + 16, 0, 0, 91, 72, 59, 60, 65, 60, 80, 106, 0, 14, 32, 40, 33, 32.73225 + 34, 33, 36, 39, 33, 36, 22, 0, 27, 77, 62, 59, 61, 53, 51, 77, 32.73226 + 47, 0, 15, 36, 40, 36, 36, 35, 39, 39, 23, 0, 41, 49, 51, 41, 32.73227 + 34, 28, 19, 16, 17, 16, 15, 12, 6, 4, 2, 0, 0, 0, 0, 0, 32.73228 + 0, 0, 0, 0, 0, 0, 3, 1, 2, 4, 6, 7, 12, 15, 17, 21, 32.73229 + 21, 21, 29, 34, 38, 40, 42, 49, 47, 70, 74, 23, 0, 11, 15, 16, 32.73230 + 21, 29, 20, 31, 37, 37, 35, 40, 41, 37, 34, 30, 25, 28, 30, 19, 32.73231 + 9, 15, 7, 0, 0, 28, 74, 69, 59, 41, 35, 35, 50, 40, 37, 36, 32.73232 + 39, 39, 40, 43, 48, 48, 47, 46, 49, 67, 66, 0, 0, 19, 15, 22, 32.73233 + 33, 28, 20, 17, 9, 0, 37, 78, 68, 71, 22, 0, 15, 12, 12, 12, 32.73234 + 13, 14, 18, 18, 12, 6, 2, 5, 53, 60, 49, 40, 36, 36, 38, 35, 32.73235 + 32, 33, 36, 36, 37, 40, 52, 41, 42, 53, 56, 91, 41, 0, 4, 32, 32.73236 + 34, 33, 33, 4, 25, 74, 49, 38, 48, 46, 40, 42, 39, 36, 33, 33, 32.73237 + 40, 45, 61, 62, 34, 0, 5, 12, 17, 16, 14, 15, 19, 22, 26, 23, 32.73238 + 23, 21, 17, 0, 44, 76, 59, 49, 49, 46, 45, 61, 65, 73, 7, 0, 32.73239 + 0, 8, 15, 19, 21, 16, 13, 23, 24, 18, 17, 10, 5, 0, 62, 76, 32.73240 + 49, 38, 64, 80, 19, 0, 4, 13, 18, 19, 18, 18, 19, 20, 12, 18, 32.73241 + 12, 2, 0, 40, 69, 61, 56, 52, 50, 63, 70, 0, 0, 16, 16, 19, 32.73242 + 17, 14, 13, 16, 20, 19, 16, 1, 0, 45, 75, 56, 55, 63, 63, 83, 32.73243 + 38, 0, 8, 21, 23, 13, 13, 15, 21, 19, 10, 15, 20, 8, 0, 61, 32.73244 + 71, 66, 57, 41, 57, 58, 82, 2, 0, 9, 28, 31, 28, 27, 26, 18, 32.73245 + 6, 18, 60, 44, 47, 40, 33, 24, 14, 13, 15, 17, 16, 12, 5, 3, 32.73246 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 3, 32.73247 + 4, 4, 8, 11, 14, 19, 23, 25, 25, 30, 38, 38, 36, 45, 42, 44, 32.73248 + 59, 73, 65, 29, 0, 0, 0, 11, 26, 19, 15, 10, 17, 20, 25, 28, 32.73249 + 34, 31, 21, 18, 18, 21, 5, 0, 0, 28, 64, 71, 60, 52, 47, 43, 32.73250 + 35, 37, 42, 31, 36, 36, 38, 37, 30, 31, 39, 41, 51, 36, 50, 47, 32.73251 + 47, 72, 34, 6, 0, 4, 6, 13, 14, 5, 1, 0, 81, 68, 57, 74, 32.73252 + 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 13, 38, 32.73253 + 39, 40, 34, 39, 39, 38, 33, 31, 33, 35, 35, 40, 48, 47, 57, 50, 32.73254 + 63, 68, 84, 116, 0, 27, 27, 32, 31, 11, 63, 58, 43, 34, 43, 42, 32.73255 + 38, 39, 33, 37, 40, 41, 39, 42, 49, 23, 0, 0, 0, 0, 1, 0, 32.73256 + 0, 0, 1, 3, 0, 0, 0, 0, 0, 0, 0, 34, 56, 40, 53, 60, 32.73257 + 60, 48, 60, 63, 78, 46, 11, 0, 0, 0, 0, 3, 0, 0, 0, 0, 32.73258 + 0, 1, 0, 0, 0, 58, 63, 67, 67, 21, 0, 0, 0, 0, 0, 0, 32.73259 + 0, 0, 0, 0, 0, 0, 1, 5, 0, 0, 42, 57, 62, 51, 53, 76, 32.73260 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 32.73261 + 52, 59, 56, 51, 56, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73262 + 1, 0, 0, 0, 0, 0, 75, 64, 57, 64, 51, 51, 63, 61, 15, 0, 32.73263 + 13, 32, 16, 20, 14, 2, 9, 47, 43, 37, 45, 41, 29, 17, 11, 9, 32.73264 + 6, 7, 9, 7, 5, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73265 + 1, 1, 2, 0, 0, 1, 1, 2, 6, 9, 10, 10, 15, 20, 21, 27, 32.73266 + 38, 39, 42, 27, 34, 41, 47, 52, 53, 61, 66, 62, 54, 22, 32, 0, 32.73267 + 0, 0, 0, 0, 2, 5, 6, 3, 0, 4, 19, 29, 59, 80, 77, 63, 32.73268 + 51, 44, 45, 45, 37, 33, 42, 37, 33, 39, 32, 32, 34, 31, 25, 25, 32.73269 + 32, 36, 40, 42, 47, 39, 42, 48, 61, 83, 64, 45, 20, 22, 23, 20, 32.73270 + 51, 72, 61, 50, 54, 66, 51, 50, 43, 51, 54, 56, 55, 54, 55, 54, 32.73271 + 48, 49, 57, 52, 26, 36, 38, 37, 35, 33, 41, 41, 36, 34, 35, 35, 32.73272 + 36, 40, 50, 53, 60, 55, 54, 58, 84, 37, 0, 17, 31, 27, 16, 16, 32.73273 + 85, 49, 41, 33, 43, 40, 35, 31, 28, 39, 36, 36, 37, 49, 29, 28, 32.73274 + 45, 51, 53, 53, 56, 57, 57, 56, 57, 57, 57, 54, 47, 53, 51, 46, 32.73275 + 48, 33, 49, 44, 43, 53, 54, 57, 53, 55, 54, 65, 68, 76, 90, 92, 32.73276 + 59, 54, 52, 42, 55, 57, 50, 45, 58, 49, 45, 35, 65, 58, 47, 34, 32.73277 + 45, 59, 56, 55, 54, 54, 57, 56, 53, 53, 54, 51, 66, 61, 52, 49, 32.73278 + 29, 65, 54, 56, 52, 28, 46, 54, 52, 51, 51, 54, 55, 54, 55, 57, 32.73279 + 61, 59, 58, 58, 54, 47, 21, 50, 50, 52, 49, 20, 36, 45, 64, 63, 32.73280 + 53, 55, 52, 58, 53, 51, 53, 48, 53, 58, 44, 33, 43, 64, 54, 54, 32.73281 + 49, 50, 46, 62, 65, 71, 23, 2, 3, 0, 26, 47, 63, 54, 35, 34, 32.73282 + 40, 37, 29, 18, 11, 9, 4, 4, 5, 5, 5, 4, 1, 1, 0, 0, 32.73283 + 0, 0, 0, 0, 0, 0, 1, 0, 2, 2, 1, 1, 2, 4, 8, 7, 32.73284 + 9, 10, 14, 19, 20, 25, 31, 32, 32, 32, 36, 37, 41, 43, 47, 50, 32.73285 + 53, 57, 64, 71, 74, 75, 72, 73, 32, 35, 36, 37, 46, 62, 76, 80, 32.73286 + 75, 70, 66, 61, 55, 49, 45, 44, 41, 40, 37, 35, 34, 32, 31, 29, 32.73287 + 28, 27, 27, 27, 25, 24, 29, 32, 35, 36, 37, 39, 39, 42, 51, 56, 32.73288 + 58, 62, 64, 66, 67, 67, 64, 61, 53, 50, 50, 53, 57, 60, 60, 60, 32.73289 + 63, 63, 63, 63, 62, 61, 60, 60, 64, 62, 54, 48, 42, 39, 36, 38, 32.73290 + 44, 46, 46, 41, 45, 42, 29, 43, 51, 53, 60, 59, 63, 64, 93, 1, 32.73291 + 3, 28, 29, 17, 4, 40, 71, 46, 42, 40, 41, 37, 27, 24, 34, 38, 32.73292 + 35, 34, 35, 38, 43, 48, 54, 57, 61, 59, 62, 63, 62, 63, 63, 64, 32.73293 + 64, 63, 62, 61, 60, 59, 58, 55, 46, 43, 45, 47, 47, 47, 47, 47, 32.73294 + 48, 49, 53, 57, 60, 62, 63, 64, 62, 62, 63, 63, 62, 62, 63, 61, 32.73295 + 59, 56, 52, 52, 53, 57, 62, 64, 64, 64, 64, 63, 64, 63, 63, 63, 32.73296 + 63, 64, 66, 65, 65, 61, 55, 52, 49, 48, 48, 52, 59, 62, 62, 62, 32.73297 + 63, 63, 63, 63, 63, 64, 66, 66, 64, 64, 64, 59, 52, 48, 48, 48, 32.73298 + 46, 51, 58, 63, 64, 64, 64, 63, 63, 63, 63, 63, 63, 62, 63, 61, 32.73299 + 60, 57, 53, 51, 49, 47, 47, 46, 47, 51, 55, 62, 67, 69, 69, 68, 32.73300 + 65, 61, 51, 41, 36, 35, 33, 30, 24, 19, 14, 9, 7, 5, 3, 3, 32.73301 + 4, 4, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 1, 32.73302 + 1, 2, 2, 5, 8, 7, 6, 6, 12, 15, 17, 21, 24, 26, 27, 29, 32.73303 + 32, 35, 34, 35, 41, 42, 42, 43, 46, 46, 50, 49, 50, 50, 51, 54, 32.73304 + 54, 51, 52, 53, 52, 49, 49, 46, 44, 42, 42, 41, 40, 39, 37, 36, 32.73305 + 35, 32, 30, 28, 25, 24, 22, 22, 21, 20, 21, 22, 24, 27, 30, 30, 32.73306 + 33, 35, 36, 37, 42, 42, 40, 40, 42, 44, 44, 45, 45, 46, 45, 45, 32.73307 + 44, 44, 43, 43, 43, 43, 44, 45, 44, 44, 43, 42, 43, 44, 45, 46, 32.73308 + 46, 43, 42, 39, 38, 37, 37, 45, 50, 45, 40, 41, 41, 39, 47, 70, 32.73309 + 53, 64, 61, 84, 75, 0, 12, 28, 36, 9, 0, 75, 57, 48, 41, 40, 32.73310 + 38, 32, 22, 22, 32, 35, 29, 29, 31, 34, 35, 37, 39, 40, 41, 39, 32.73311 + 42, 41, 42, 43, 42, 43, 43, 43, 45, 44, 43, 42, 42, 41, 42, 41, 32.73312 + 41, 40, 42, 42, 42, 40, 42, 42, 43, 44, 42, 43, 43, 44, 45, 45, 32.73313 + 43, 44, 44, 44, 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, 44, 44, 32.73314 + 44, 44, 44, 44, 44, 44, 44, 44, 44, 43, 43, 43, 43, 43, 43, 43, 32.73315 + 43, 43, 43, 43, 43, 43, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 32.73316 + 44, 43, 43, 43, 43, 43, 43, 43, 43, 44, 44, 44, 44, 44, 44, 44, 32.73317 + 44, 44, 44, 43, 43, 42, 44, 43, 43, 43, 42, 43, 43, 43, 44, 45, 32.73318 + 43, 44, 44, 43, 42, 43, 44, 43, 39, 36, 35, 33, 28, 24, 22, 20, 32.73319 + 14, 10, 8, 6, 3, 3, 3, 5, 2, 0, 0, 0, 0, 0, 0, 0, 32.73320 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 4, 3, 4, 4, 7, 11, 32.73321 + 13, 15, 19, 19, 22, 23, 25, 26, 27, 29, 35, 36, 37, 36, 39, 40, 32.73322 + 43, 43, 45, 43, 45, 47, 48, 46, 47, 48, 47, 43, 42, 40, 38, 36, 32.73323 + 36, 34, 33, 32, 30, 29, 28, 25, 23, 21, 19, 17, 17, 15, 14, 13, 32.73324 + 14, 15, 18, 20, 23, 23, 26, 27, 28, 31, 35, 35, 36, 36, 39, 40, 32.73325 + 39, 39, 39, 40, 39, 39, 39, 39, 38, 38, 38, 37, 39, 39, 39, 39, 32.73326 + 37, 38, 38, 39, 41, 41, 41, 42, 40, 40, 38, 35, 38, 37, 33, 37, 32.73327 + 43, 42, 49, 58, 50, 52, 48, 53, 75, 93, 0, 8, 31, 33, 32, 3, 32.73328 + 13, 77, 53, 43, 42, 39, 33, 28, 23, 24, 28, 29, 26, 25, 26, 29, 32.73329 + 30, 31, 34, 33, 35, 34, 36, 36, 37, 37, 38, 38, 37, 37, 39, 38, 32.73330 + 37, 36, 36, 36, 35, 34, 35, 34, 35, 34, 35, 34, 35, 34, 36, 37, 32.73331 + 36, 37, 39, 40, 39, 39, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 32.73332 + 38, 38, 38, 38, 39, 39, 39, 39, 39, 39, 39, 39, 38, 38, 38, 38, 32.73333 + 38, 37, 37, 37, 37, 37, 37, 37, 37, 38, 38, 38, 38, 38, 38, 38, 32.73334 + 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 37, 37, 38, 38, 38, 38, 32.73335 + 38, 38, 38, 38, 39, 39, 39, 38, 38, 37, 37, 37, 38, 38, 38, 38, 32.73336 + 37, 37, 37, 37, 38, 39, 40, 40, 38, 37, 37, 38, 37, 37, 35, 32, 32.73337 + 30, 28, 23, 21, 17, 16, 12, 8, 7, 6, 4, 2, 5, 4, 2, 0, 32.73338 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 32.73339 + 2, 2, 4, 4, 7, 10, 11, 14, 15, 17, 17, 17, 20, 22, 23, 25, 32.73340 + 30, 31, 31, 30, 33, 36, 38, 37, 39, 39, 40, 40, 39, 37, 37, 39, 32.73341 + 40, 39, 38, 36, 34, 31, 32, 29, 28, 28, 26, 25, 22, 20, 19, 18, 32.73342 + 15, 14, 13, 11, 11, 11, 12, 12, 14, 15, 18, 18, 21, 23, 24, 26, 32.73343 + 28, 30, 31, 32, 34, 35, 34, 34, 35, 35, 35, 35, 34, 34, 33, 33, 32.73344 + 33, 34, 37, 35, 35, 34, 33, 33, 34, 35, 37, 38, 38, 39, 39, 39, 32.73345 + 40, 39, 37, 30, 37, 42, 43, 44, 52, 62, 62, 62, 48, 66, 94, 20, 32.73346 + 11, 24, 42, 42, 20, 7, 50, 67, 47, 40, 41, 37, 30, 26, 25, 24, 32.73347 + 24, 24, 22, 22, 24, 26, 26, 28, 30, 29, 31, 31, 32, 32, 32, 33, 32.73348 + 33, 34, 33, 32, 34, 33, 32, 31, 31, 31, 30, 29, 30, 29, 30, 29, 32.73349 + 30, 29, 30, 29, 31, 32, 32, 33, 34, 35, 34, 35, 33, 33, 34, 33, 32.73350 + 33, 33, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 32.73351 + 34, 34, 34, 34, 34, 33, 33, 33, 33, 32, 32, 32, 33, 33, 33, 33, 32.73352 + 33, 33, 34, 34, 34, 34, 34, 34, 34, 34, 34, 33, 33, 33, 33, 33, 32.73353 + 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 34, 34, 34, 34, 33, 33, 32.73354 + 32, 32, 34, 33, 33, 33, 32, 32, 32, 32, 34, 34, 35, 36, 34, 33, 32.73355 + 32, 34, 33, 33, 31, 27, 25, 24, 21, 18, 14, 12, 11, 7, 7, 6, 32.73356 + 2, 2, 4, 3, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.73357 + 1, 0, 1, 0, 0, 0, 2, 1, 2, 2, 5, 7, 9, 11, 12, 12, 32.73358 + 14, 14, 16, 17, 20, 21, 26, 26, 27, 26, 29, 30, 32, 32, 33, 33, 32.73359 + 36, 37, 39, 38, 36, 35, 32, 30, 32, 31, 30, 28, 27, 26, 23, 23, 32.73360 + 21, 20, 18, 16, 16, 13, 11, 10, 10, 9, 8, 8, 9, 8, 11, 12, 32.73361 + 15, 15, 17, 19, 19, 22, 25, 25, 27, 27, 29, 31, 31, 31, 31, 31, 32.73362 + 31, 31, 31, 31, 30, 30, 30, 30, 32, 31, 31, 29, 29, 29, 30, 31, 32.73363 + 34, 36, 37, 38, 38, 39, 41, 42, 46, 38, 53, 45, 38, 58, 68, 68, 32.73364 + 67, 63, 84, 99, 21, 4, 20, 34, 45, 33, 19, 0, 77, 59, 45, 37, 32.73365 + 37, 35, 29, 25, 26, 24, 19, 19, 18, 20, 21, 21, 23, 24, 25, 25, 32.73366 + 28, 27, 28, 29, 29, 29, 29, 30, 30, 30, 29, 28, 27, 26, 26, 26, 32.73367 + 26, 25, 25, 24, 24, 24, 26, 24, 25, 25, 27, 28, 27, 28, 29, 31, 32.73368 + 30, 30, 30, 31, 30, 30, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 32.73369 + 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 29, 29, 29, 29, 29, 32.73370 + 29, 29, 29, 29, 29, 29, 29, 29, 30, 30, 30, 30, 30, 30, 30, 30, 32.73371 + 30, 30, 30, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 30, 30, 32.73372 + 30, 30, 30, 30, 29, 29, 28, 28, 29, 29, 28, 28, 27, 27, 27, 27, 32.73373 + 29, 30, 30, 31, 31, 30, 29, 29, 27, 29, 27, 23, 22, 20, 16, 14, 32.73374 + 14, 13, 9, 8, 7, 5, 3, 2, 2, 2, 1, 0, 0, 0, 0, 0, 32.73375 + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 2, 1, 2, 32.73376 + 4, 5, 7, 8, 9, 8, 12, 12, 14, 17, 17, 19, 22, 22, 22, 23, 32.73377 + 24, 26, 27, 26, 27, 28, 24, 26, 27, 27, 28, 28, 26, 25, 27, 28, 32.73378 + 26, 24, 23, 22, 21, 20, 18, 17, 14, 13, 12, 10, 8, 8, 9, 7, 32.73379 + 7, 6, 6, 6, 8, 10, 14, 14, 15, 16, 17, 19, 21, 22, 24, 23, 32.73380 + 25, 27, 27, 27, 26, 27, 27, 27, 27, 26, 26, 26, 26, 26, 28, 26, 32.73381 + 25, 24, 25, 25, 27, 28, 31, 32, 33, 36, 36, 38, 40, 43, 49, 53, 32.73382 + 46, 46, 67, 62, 34, 42, 48, 47, 27, 0, 14, 26, 29, 46, 39, 23, 32.73383 + 0, 19, 78, 48, 42, 36, 34, 34, 27, 26, 26, 21, 16, 14, 17, 18, 32.73384 + 18, 18, 20, 20, 21, 21, 23, 23, 24, 26, 25, 25, 25, 25, 26, 26, 32.73385 + 25, 25, 24, 22, 24, 23, 22, 22, 21, 22, 21, 21, 21, 22, 21, 21, 32.73386 + 23, 23, 24, 25, 26, 25, 26, 26, 26, 26, 26, 26, 25, 25, 25, 25, 32.73387 + 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 32.73388 + 26, 25, 25, 25, 25, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 32.73389 + 25, 25, 25, 25, 25, 25, 26, 25, 25, 25, 25, 25, 25, 25, 25, 25, 32.73390 + 25, 25, 25, 25, 25, 25, 26, 26, 26, 26, 25, 25, 24, 24, 24, 26, 32.73391 + 25, 25, 23, 23, 23, 23, 25, 25, 26, 27, 27, 27, 25, 25, 25, 25, 32.73392 + 23, 19, 18, 17, 15, 13, 11, 10, 9, 7, 6, 5, 3, 3, 2, 1, 32.73393 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 32.73394 + 1, 0, 1, 2, 3, 3, 2, 4, 5, 6, 6, 7, 10, 9, 12, 12, 32.73395 + 14, 16, 18, 18, 18, 17, 20, 22, 22, 22, 23, 22, 28, 27, 26, 24, 32.73396 + 24, 23, 22, 25, 24, 22, 21, 20, 20, 18, 18, 16, 15, 14, 12, 11, 32.73397 + 10, 9, 7, 6, 8, 6, 6, 6, 6, 5, 7, 10, 10, 10, 13, 14, 32.73398 + 14, 15, 18, 18, 19, 18, 20, 21, 22, 22, 22, 22, 22, 22, 21, 21, 32.73399 + 21, 21, 21, 21, 23, 23, 22, 21, 21, 22, 24, 22, 26, 26, 29, 31, 32.73400 + 33, 37, 42, 42, 42, 52, 42, 65, 81, 30, 0, 0, 0, 0, 9, 14, 32.73401 + 23, 37, 45, 38, 29, 16, 0, 67, 53, 47, 32, 34, 30, 28, 27, 26, 32.73402 + 23, 17, 13, 11, 13, 15, 15, 14, 16, 17, 18, 18, 18, 18, 19, 20, 32.73403 + 21, 20, 21, 21, 21, 21, 20, 20, 21, 20, 19, 18, 18, 17, 16, 17, 32.73404 + 17, 17, 17, 17, 16, 16, 18, 18, 19, 20, 21, 22, 22, 20, 21, 21, 32.73405 + 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 21, 21, 21, 21, 32.73406 + 21, 21, 21, 21, 21, 21, 21, 21, 21, 20, 20, 20, 20, 20, 20, 20, 32.73407 + 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 32.73408 + 21, 21, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 32.73409 + 21, 20, 19, 19, 21, 21, 20, 20, 20, 20, 18, 18, 19, 20, 21, 22, 32.73410 + 22, 21, 21, 20, 19, 20, 17, 16, 14, 13, 12, 10, 7, 6, 5, 4, 32.73411 + 4, 3, 1, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.73412 + 1, 1, 1, 1, 1, 1, 0, 0, 1, 2, 2, 1, 2, 3, 3, 4, 32.73413 + 3, 4, 6, 6, 7, 9, 10, 13, 15, 15, 14, 14, 17, 19, 18, 18, 32.73414 + 19, 18, 17, 17, 19, 19, 20, 18, 16, 17, 18, 18, 17, 16, 17, 15, 32.73415 + 14, 12, 14, 12, 11, 9, 9, 7, 6, 6, 5, 5, 4, 5, 4, 5, 32.73416 + 6, 8, 6, 8, 9, 11, 11, 12, 15, 15, 15, 15, 16, 18, 18, 18, 32.73417 + 18, 19, 19, 19, 18, 17, 17, 17, 17, 17, 20, 19, 18, 17, 18, 18, 32.73418 + 21, 20, 23, 24, 27, 29, 32, 36, 42, 42, 42, 44, 53, 81, 43, 0, 32.73419 + 21, 20, 20, 20, 27, 35, 43, 39, 37, 24, 25, 0, 45, 64, 52, 44, 32.73420 + 41, 28, 25, 24, 25, 23, 18, 12, 9, 7, 9, 11, 12, 12, 12, 12, 32.73421 + 14, 14, 13, 14, 16, 17, 17, 17, 17, 17, 18, 17, 17, 16, 17, 16, 32.73422 + 15, 15, 15, 14, 13, 12, 14, 14, 14, 12, 12, 13, 14, 15, 15, 16, 32.73423 + 17, 18, 17, 17, 17, 17, 18, 18, 17, 17, 17, 17, 17, 17, 17, 17, 32.73424 + 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 17, 17, 17, 32.73425 + 17, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 32.73426 + 17, 17, 18, 17, 17, 17, 17, 17, 17, 17, 16, 17, 17, 17, 17, 17, 32.73427 + 17, 17, 18, 18, 18, 17, 17, 16, 16, 15, 18, 17, 17, 17, 17, 17, 32.73428 + 15, 15, 16, 16, 17, 18, 18, 18, 17, 17, 15, 15, 14, 11, 11, 10, 32.73429 + 9, 8, 5, 5, 4, 2, 2, 1, 2, 1, 1, 0, 0, 0, 0, 0, 32.73430 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 32.73431 + 1, 1, 2, 1, 2, 2, 2, 2, 4, 5, 5, 7, 8, 8, 11, 11, 32.73432 + 12, 13, 14, 14, 14, 14, 15, 14, 15, 15, 15, 14, 14, 14, 13, 15, 32.73433 + 14, 13, 13, 12, 12, 12, 12, 12, 8, 8, 8, 7, 6, 4, 3, 4, 32.73434 + 5, 4, 4, 4, 3, 4, 4, 4, 5, 6, 6, 7, 8, 9, 11, 11, 32.73435 + 11, 12, 12, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 13, 14, 14, 32.73436 + 16, 14, 13, 12, 13, 13, 17, 18, 19, 21, 26, 28, 31, 35, 41, 40, 32.73437 + 34, 46, 60, 45, 1, 21, 34, 33, 33, 26, 37, 42, 34, 32, 29, 12, 32.73438 + 0, 24, 52, 52, 45, 39, 36, 30, 24, 23, 22, 19, 14, 9, 6, 6, 32.73439 + 7, 9, 10, 8, 9, 10, 11, 10, 11, 11, 12, 12, 13, 13, 13, 13, 32.73440 + 14, 13, 13, 13, 12, 11, 11, 11, 9, 9, 10, 10, 10, 10, 10, 10, 32.73441 + 9, 9, 10, 10, 11, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 32.73442 + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 32.73443 + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 32.73444 + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 32.73445 + 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 13, 13, 13, 12, 12, 12, 32.73446 + 12, 12, 12, 12, 11, 11, 11, 11, 13, 13, 13, 14, 14, 14, 13, 13, 32.73447 + 13, 12, 10, 10, 8, 7, 5, 6, 3, 3, 2, 0, 0, 0, 1, 0, 32.73448 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.73449 + 1, 1, 1, 1, 1, 0, 1, 0, 1, 2, 1, 2, 1, 1, 1, 1, 32.73450 + 3, 4, 3, 5, 6, 8, 10, 9, 10, 11, 11, 10, 11, 12, 12, 12, 32.73451 + 12, 11, 11, 10, 11, 10, 10, 11, 9, 8, 9, 9, 8, 8, 7, 6, 32.73452 + 6, 5, 3, 2, 1, 2, 3, 2, 2, 2, 3, 3, 4, 3, 4, 4, 32.73453 + 4, 5, 5, 7, 8, 9, 9, 9, 10, 9, 11, 9, 11, 9, 9, 9, 32.73454 + 9, 8, 9, 8, 10, 10, 11, 11, 9, 10, 9, 11, 13, 15, 18, 20, 32.73455 + 25, 27, 28, 32, 39, 39, 37, 46, 69, 0, 13, 24, 39, 37, 26, 36, 32.73456 + 42, 37, 27, 17, 2, 0, 58, 61, 55, 42, 36, 37, 37, 31, 23, 19, 32.73457 + 16, 15, 13, 9, 5, 5, 5, 6, 6, 7, 6, 8, 9, 8, 9, 8, 32.73458 + 10, 9, 11, 10, 12, 10, 9, 9, 8, 8, 7, 8, 8, 7, 6, 6, 32.73459 + 7, 6, 6, 6, 6, 6, 7, 6, 7, 7, 8, 9, 9, 10, 11, 9, 32.73460 + 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 32.73461 + 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 32.73462 + 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 32.73463 + 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 11, 9, 12, 10, 32.73464 + 12, 10, 11, 9, 11, 11, 9, 9, 9, 9, 9, 7, 9, 7, 8, 8, 32.73465 + 9, 9, 9, 9, 9, 9, 8, 9, 7, 6, 5, 3, 2, 2, 2, 2, 32.73466 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73467 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73468 + 0, 0, 0, 0, 1, 1, 2, 2, 1, 3, 4, 5, 6, 7, 9, 8, 32.73469 + 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 7, 6, 5, 32.73470 + 4, 5, 4, 5, 4, 4, 3, 1, 0, 0, 0, 0, 0, 2, 1, 0, 32.73471 + 0, 1, 2, 1, 0, 0, 2, 2, 1, 3, 4, 5, 5, 5, 6, 5, 32.73472 + 8, 6, 7, 5, 6, 5, 5, 4, 5, 5, 6, 6, 7, 6, 7, 7, 32.73473 + 7, 8, 11, 12, 16, 19, 22, 26, 27, 33, 38, 44, 50, 66, 0, 19, 32.73474 + 24, 33, 37, 24, 28, 23, 23, 24, 9, 0, 8, 65, 66, 56, 41, 29, 32.73475 + 29, 34, 38, 31, 23, 17, 10, 11, 14, 10, 4, 2, 3, 3, 3, 3, 32.73476 + 4, 4, 5, 5, 5, 3, 6, 4, 7, 5, 7, 5, 5, 5, 5, 5, 32.73477 + 4, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 4, 4, 5, 32.73478 + 5, 6, 6, 7, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 32.73479 + 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 32.73480 + 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 32.73481 + 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 32.73482 + 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 6, 6, 6, 6, 6, 6, 32.73483 + 6, 4, 6, 4, 4, 5, 5, 5, 6, 6, 6, 6, 5, 6, 4, 3, 32.73484 + 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.73486 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 2, 32.73487 + 3, 4, 5, 6, 7, 7, 6, 6, 6, 7, 6, 6, 7, 6, 6, 6, 32.73488 + 6, 6, 6, 5, 4, 3, 5, 4, 3, 3, 4, 3, 2, 1, 0, 0, 32.73489 + 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 2, 32.73490 + 3, 4, 3, 4, 4, 5, 5, 5, 5, 5, 4, 3, 3, 3, 3, 4, 32.73491 + 4, 4, 6, 4, 6, 6, 7, 7, 10, 12, 15, 17, 20, 25, 27, 31, 32.73492 + 38, 45, 53, 6, 0, 11, 20, 1, 2, 4, 4, 6, 0, 5, 42, 73, 32.73493 + 67, 52, 46, 43, 37, 33, 30, 30, 31, 29, 21, 16, 8, 9, 15, 12, 32.73494 + 2, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 32.73495 + 4, 4, 3, 3, 3, 3, 4, 4, 3, 3, 3, 2, 3, 3, 2, 3, 32.73496 + 3, 3, 2, 2, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.73497 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.73498 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.73499 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.73500 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 4, 4, 4, 32.73501 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 3, 3, 3, 4, 4, 32.73502 + 3, 3, 5, 4, 3, 2, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.73503 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73504 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73505 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 4, 3, 3, 3, 4, 32.73506 + 3, 3, 4, 4, 4, 4, 4, 3, 2, 2, 2, 1, 2, 1, 2, 1, 32.73507 + 2, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 32.73508 + 0, 0, 1, 1, 1, 0, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 32.73509 + 3, 2, 1, 1, 1, 2, 2, 2, 3, 2, 4, 4, 4, 7, 9, 11, 32.73510 + 13, 16, 19, 21, 25, 29, 36, 43, 31, 0, 0, 0, 0, 21, 9, 15, 32.73511 + 35, 44, 62, 70, 62, 55, 48, 44, 41, 41, 38, 35, 30, 25, 25, 27, 32.73512 + 17, 13, 8, 9, 13, 10, 0, 0, 3, 4, 4, 3, 3, 3, 4, 4, 32.73513 + 2, 2, 2, 3, 3, 3, 2, 2, 1, 1, 2, 2, 2, 1, 1, 0, 32.73514 + 0, 0, 0, 0, 1, 1, 1, 2, 0, 0, 0, 0, 1, 1, 1, 1, 32.73515 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 32.73516 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 32.73517 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 32.73518 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 32.73519 + 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 32.73520 + 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 0, 0, 1, 1, 0, 0, 32.73521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.73523 + 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 32.73524 + 2, 3, 3, 1, 1, 1, 1, 2, 2, 4, 4, 3, 3, 3, 1, 0, 32.73525 + 0, 1, 1, 2, 1, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.73526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 32.73527 + 2, 2, 2, 2, 2, 1, 3, 1, 1, 1, 1, 2, 2, 2, 3, 1, 32.73528 + 2, 3, 4, 6, 9, 10, 14, 16, 19, 23, 24, 28, 34, 40, 47, 66, 32.73529 + 73, 76, 69, 64, 74, 59, 68, 54, 47, 48, 41, 41, 44, 37, 35, 34, 32.73530 + 30, 30, 27, 22, 20, 20, 12, 11, 8, 10, 13, 11, 1, 0, 2, 2, 32.73531 + 4, 1, 3, 1, 4, 2, 2, 2, 2, 3, 3, 2, 2, 1, 1, 1, 32.73532 + 1, 1, 2, 1, 1, 0, 1, 1, 0, 0, 0, 0, 2, 1, 0, 0, 32.73533 + 0, 0, 1, 0, 1, 0, 3, 2, 3, 3, 3, 3, 3, 3, 3, 2, 32.73534 + 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 32.73535 + 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 32.73536 + 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 32.73537 + 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 1, 2, 2, 1, 1, 32.73538 + 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 2, 0, 1, 1, 1, 2, 32.73539 + 1, 1, 2, 2, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73540 + 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73541 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 2, 1, 32.73542 + 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 2, 32.73543 + 2, 2, 2, 1, 2, 0, 0, 0, 1, 3, 2, 2, 1, 1, 0, 0, 32.73544 + 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73545 + 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 2, 0, 3, 0, 0, 0, 32.73546 + 0, 1, 1, 1, 2, 1, 2, 3, 4, 4, 8, 10, 13, 16, 18, 21, 32.73547 + 21, 23, 29, 33, 39, 53, 44, 49, 49, 52, 53, 50, 45, 44, 43, 40, 32.73548 + 33, 32, 39, 41, 40, 35, 29, 27, 28, 21, 11, 5, 6, 7, 12, 14, 32.73549 + 10, 6, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 1, 1, 1, 2, 32.73550 + 2, 0, 0, 0, 0, 0, 1, 1, 3, 0, 2, 0, 2, 2, 2, 1, 32.73551 + 1, 2, 3, 2, 1, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 2, 32.73552 + 2, 2, 2, 2, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.73553 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.73554 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.73555 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.73556 + 2, 0, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 0, 0, 0, 1, 32.73557 + 1, 0, 0, 0, 3, 2, 2, 2, 3, 2, 1, 1, 0, 0, 2, 1, 32.73558 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 32.73559 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 32.73560 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.73561 + 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 32.73562 + 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 0, 0, 32.73563 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 1, 0, 0, 0, 0, 32.73564 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 2, 4, 32.73565 + 6, 8, 11, 12, 16, 17, 19, 22, 27, 30, 34, 29, 39, 40, 44, 43, 32.73566 + 40, 37, 35, 40, 37, 34, 37, 35, 32, 39, 31, 28, 24, 22, 23, 18, 32.73567 + 10, 6, 4, 6, 9, 11, 6, 3, 0, 0, 1, 2, 1, 1, 1, 1, 32.73568 + 2, 2, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73569 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73570 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73571 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73572 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73573 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73574 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 32.73575 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 2, 32.73576 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73577 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73578 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73579 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73580 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73581 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73582 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73583 + 2, 1, 2, 1, 2, 4, 6, 6, 10, 11, 14, 16, 18, 22, 28, 28, 32.73584 + 30, 31, 32, 36, 36, 37, 37, 36, 36, 35, 36, 35, 33, 31, 29, 29, 32.73585 + 28, 26, 20, 17, 16, 13, 9, 6, 6, 5, 6, 3, 2, 0, 0, 0, 32.73586 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73587 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73588 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73590 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73591 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73592 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73593 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73594 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73595 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73597 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73598 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73599 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73600 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73601 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 5, 5, 8, 8, 32.73602 + 12, 14, 17, 22, 27, 28, 26, 25, 29, 30, 31, 32, 31, 31, 30, 30, 32.73603 + 31, 29, 29, 26, 24, 22, 21, 19, 16, 12, 11, 9, 7, 6, 6, 6, 32.73604 + 4, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73605 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73606 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73607 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73608 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73609 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73610 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73611 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73612 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73613 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73614 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73615 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73616 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73617 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73618 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73619 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.73620 + 1, 2, 4, 4, 5, 5, 8, 10, 12, 15, 20, 21, 20, 19, 23, 25, 32.73621 + 25, 23, 23, 24, 23, 23, 22, 22, 23, 20, 18, 17, 15, 13, 10, 9, 32.73622 + 7, 7, 5, 4, 4, 4, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.73623 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73624 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73625 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73627 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73628 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73629 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73630 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73631 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73632 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73633 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73634 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73635 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73636 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73637 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73638 + 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 3, 3, 6, 7, 9, 11, 32.73639 + 15, 15, 17, 17, 19, 21, 19, 19, 19, 20, 17, 18, 17, 17, 18, 16, 32.73640 + 14, 13, 11, 10, 8, 7, 7, 5, 4, 5, 2, 3, 1, 2, 1, 1, 32.73641 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73642 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73643 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73644 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73646 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73647 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73648 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73649 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73650 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73652 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73653 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73654 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73655 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73656 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 32.73657 + 2, 2, 4, 6, 6, 9, 12, 14, 15, 14, 17, 17, 17, 15, 15, 15, 32.73658 + 14, 15, 14, 13, 14, 13, 11, 10, 9, 8, 7, 5, 5, 3, 4, 3, 32.73659 + 3, 4, 2, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73660 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73661 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73662 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73663 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73666 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73667 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73668 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73669 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73670 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73671 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73672 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73673 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73674 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73675 + 0, 0, 0, 0, 2, 2, 1, 2, 3, 5, 5, 8, 9, 10, 11, 12, 32.73676 + 13, 15, 14, 12, 12, 12, 11, 12, 12, 11, 11, 10, 9, 9, 7, 8, 32.73677 + 6, 6, 4, 3, 3, 3, 4, 4, 2, 1, 2, 2, 1, 1, 0, 0, 32.73678 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73679 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73680 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73681 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73682 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73684 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73685 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73686 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73687 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73688 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73689 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73691 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73692 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73693 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 2, 2, 4, 32.73694 + 4, 6, 8, 8, 9, 10, 11, 12, 10, 10, 10, 10, 10, 9, 9, 9, 32.73695 + 9, 9, 8, 8, 6, 6, 4, 4, 4, 4, 4, 4, 3, 3, 2, 1, 32.73696 + 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73697 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73698 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73699 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73700 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73702 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73703 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73704 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73705 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73706 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73708 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73709 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73710 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73711 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73712 + 1, 2, 2, 2, 3, 3, 3, 5, 6, 7, 8, 7, 9, 9, 9, 7, 32.73713 + 8, 8, 6, 7, 7, 6, 8, 7, 6, 5, 5, 4, 3, 3, 3, 2, 32.73714 + 3, 2, 2, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.73715 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73716 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73717 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73718 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73719 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73720 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73721 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73722 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73723 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73724 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73725 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73726 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73727 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73728 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73729 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73730 + 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 1, 3, 3, 5, 6, 5, 32.73731 + 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 4, 6, 5, 5, 5, 32.73732 + 3, 3, 2, 3, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.73733 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73734 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73735 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73736 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73737 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73738 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73739 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73740 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73741 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73742 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73743 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73744 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73745 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73746 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73747 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73748 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 32.73749 + 1, 3, 4, 3, 6, 4, 5, 4, 5, 3, 4, 3, 4, 3, 3, 3, 32.73750 + 2, 4, 4, 3, 4, 4, 3, 3, 2, 2, 2, 1, 1, 1, 0, 0, 32.73751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73752 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73754 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73755 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73756 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73757 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73758 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73759 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73760 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73761 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73762 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73763 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73764 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73766 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73767 + 0, 0, 1, 1, 0, 0, 1, 2, 3, 2, 4, 3, 1, 1, 2, 1, 32.73768 + 1, 0, 1, 0, 1, 1, 1, 1, 1, 2, 3, 3, 1, 1, 0, 0, 32.73769 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73770 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73771 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73772 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73773 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73774 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73776 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73777 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73779 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73780 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73781 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73782 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73783 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73784 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73785 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 32.73786 + 3, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.73787 + 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73791 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73792 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73793 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73795 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73796 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73797 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73798 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73799 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73800 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73801 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73804 + 0, 0, 0, 0, 1, 1, 2, 2, 0, 0, 1, 1, 1, 0, 0, 0, 32.73805 + 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.73806 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73808 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73809 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73810 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73811 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73816 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73817 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73818 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73819 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73821 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73822 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73823 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73824 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73826 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73828 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73829 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73830 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73831 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73832 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73833 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73834 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73835 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73836 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73837 + 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73838 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 32.73839 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73840 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 32.73841 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.73842 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.73843 + 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73844 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73845 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73846 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.73847 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73848 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.73849 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.73850 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73851 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73852 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.73853 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73854 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73855 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 32.73856 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73857 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73858 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.73859 + 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.73860 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73861 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73862 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73864 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73865 + 0, 1, 2, 2, 2, 2, 1, 3, 2, 3, 3, 3, 3, 1, 1, 1, 32.73866 + 1, 1, 0, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 32.73867 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 3, 3, 3, 3, 3, 32.73868 + 3, 3, 2, 2, 3, 3, 3, 3, 3, 2, 1, 0, 0, 0, 0, 0, 32.73869 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73870 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73871 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73872 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73873 + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 32.73874 + 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 1, 1, 2, 1, 32.73875 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73876 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 32.73877 + 2, 2, 2, 2, 2, 2, 2, 3, 2, 1, 1, 1, 0, 0, 0, 0, 32.73878 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73879 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73880 + 0, 0, 0, 0, 0, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 3, 32.73881 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.73882 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 32.73883 + 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 32.73884 + 4, 4, 4, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 32.73885 + 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 32.73886 + 4, 4, 4, 4, 5, 5, 5, 5, 4, 4, 5, 5, 5, 5, 4, 4, 32.73887 + 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 32.73888 + 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, 0, 1, 0, 1, 0, 0, 32.73889 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.73890 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.73891 + 1, 2, 1, 2, 1, 2, 3, 4, 4, 4, 5, 5, 5, 5, 5, 6, 32.73892 + 5, 6, 5, 6, 5, 5, 6, 5, 5, 5, 3, 3, 3, 2, 1, 1, 32.73893 + 0, 0, 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73894 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 1, 2, 3, 3, 32.73895 + 3, 5, 4, 5, 4, 4, 3, 4, 4, 5, 4, 4, 4, 5, 4, 4, 32.73896 + 4, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.73897 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73898 + 0, 0, 0, 0, 0, 0, 1, 2, 1, 2, 1, 3, 3, 3, 3, 4, 32.73899 + 3, 4, 3, 4, 4, 4, 4, 4, 3, 4, 3, 4, 3, 4, 3, 4, 32.73900 + 3, 4, 3, 4, 3, 4, 4, 4, 4, 4, 4, 4, 3, 4, 3, 3, 32.73901 + 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 4, 5, 6, 6, 5, 5, 32.73902 + 6, 7, 6, 7, 7, 7, 6, 6, 6, 5, 5, 5, 4, 4, 5, 5, 32.73903 + 5, 5, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 32.73904 + 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 32.73905 + 8, 8, 8, 8, 7, 7, 7, 6, 6, 6, 5, 5, 5, 5, 5, 5, 32.73906 + 5, 5, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 32.73907 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 32.73908 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73909 + 0, 0, 1, 1, 2, 2, 2, 4, 3, 4, 4, 5, 5, 7, 7, 8, 32.73910 + 8, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 8, 8, 7, 32.73911 + 6, 5, 4, 4, 3, 3, 2, 2, 1, 1, 1, 2, 0, 0, 0, 0, 32.73912 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 3, 32.73913 + 2, 3, 3, 4, 5, 5, 6, 7, 7, 8, 7, 8, 8, 8, 8, 9, 32.73914 + 8, 9, 8, 9, 7, 7, 6, 5, 4, 4, 3, 2, 2, 1, 0, 0, 32.73915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73916 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 3, 4, 32.73917 + 3, 4, 4, 4, 6, 7, 6, 7, 6, 7, 7, 7, 7, 7, 6, 7, 32.73918 + 6, 7, 6, 7, 6, 7, 6, 7, 6, 7, 6, 7, 7, 7, 7, 7, 32.73919 + 7, 7, 6, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 6, 8, 32.73920 + 8, 9, 9, 10, 10, 11, 11, 13, 12, 13, 13, 12, 13, 12, 12, 11, 32.73921 + 11, 10, 10, 10, 9, 10, 10, 11, 11, 12, 13, 13, 13, 13, 14, 14, 32.73922 + 14, 14, 14, 14, 14, 14, 14, 14, 14, 13, 13, 13, 12, 12, 12, 12, 32.73923 + 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 10, 10, 10, 32.73924 + 9, 9, 8, 8, 8, 9, 8, 7, 7, 7, 7, 7, 6, 5, 5, 5, 32.73925 + 5, 5, 4, 4, 3, 2, 2, 2, 2, 2, 2, 1, 0, 0, 0, 0, 32.73926 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73927 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 3, 4, 5, 7, 32.73928 + 7, 8, 9, 10, 10, 12, 12, 13, 14, 15, 15, 15, 15, 15, 15, 15, 32.73929 + 15, 15, 13, 13, 11, 10, 10, 8, 7, 6, 6, 6, 4, 3, 2, 2, 32.73930 + 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73931 + 1, 1, 1, 1, 3, 4, 5, 5, 7, 7, 8, 9, 10, 10, 11, 12, 32.73932 + 13, 13, 13, 13, 13, 13, 13, 13, 12, 12, 11, 10, 9, 7, 6, 4, 32.73933 + 4, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73934 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.73935 + 1, 3, 4, 5, 5, 5, 5, 7, 7, 8, 10, 10, 10, 10, 10, 10, 32.73936 + 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 32.73937 + 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 32.73938 + 10, 10, 10, 11, 10, 12, 13, 13, 14, 14, 15, 16, 16, 17, 17, 17, 32.73939 + 18, 17, 18, 18, 16, 16, 16, 15, 14, 14, 14, 14, 15, 16, 16, 16, 32.73940 + 18, 18, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 19, 19, 19, 19, 32.73941 + 19, 18, 18, 18, 17, 18, 18, 19, 18, 19, 19, 20, 19, 20, 19, 19, 32.73942 + 18, 18, 16, 16, 16, 15, 14, 14, 12, 12, 13, 12, 12, 12, 11, 11, 32.73943 + 10, 10, 10, 10, 10, 9, 8, 7, 5, 5, 4, 4, 4, 3, 3, 2, 32.73944 + 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 3, 32.73946 + 4, 5, 5, 8, 9, 11, 11, 13, 15, 16, 16, 17, 18, 20, 21, 21, 32.73947 + 22, 22, 22, 22, 21, 21, 21, 21, 19, 19, 18, 17, 15, 14, 12, 11, 32.73948 + 10, 9, 7, 6, 4, 3, 3, 3, 1, 1, 1, 0, 0, 0, 0, 0, 32.73949 + 0, 0, 0, 0, 1, 1, 1, 1, 3, 3, 4, 5, 8, 9, 11, 12, 32.73950 + 14, 14, 16, 17, 17, 18, 19, 19, 18, 19, 19, 19, 18, 19, 18, 17, 32.73951 + 16, 15, 14, 11, 10, 8, 7, 5, 2, 1, 1, 0, 0, 0, 0, 0, 32.73952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73953 + 0, 0, 0, 1, 3, 3, 4, 4, 7, 8, 9, 10, 12, 13, 14, 14, 32.73954 + 17, 17, 17, 17, 17, 17, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 32.73955 + 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 32.73956 + 17, 17, 16, 16, 16, 16, 16, 16, 16, 17, 16, 18, 19, 19, 21, 22, 32.73957 + 21, 22, 24, 25, 25, 25, 25, 25, 24, 23, 23, 23, 21, 21, 21, 20, 32.73958 + 21, 21, 21, 22, 23, 24, 24, 24, 26, 26, 27, 27, 27, 27, 28, 28, 32.73959 + 28, 27, 27, 27, 27, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 32.73960 + 27, 28, 28, 28, 27, 27, 26, 26, 25, 25, 24, 23, 22, 21, 20, 20, 32.73961 + 19, 18, 18, 18, 18, 17, 16, 16, 16, 16, 15, 14, 13, 12, 11, 9, 32.73962 + 8, 8, 6, 5, 4, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.73963 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73964 + 0, 1, 1, 3, 3, 4, 6, 8, 9, 11, 14, 16, 17, 18, 21, 21, 32.73965 + 22, 24, 25, 27, 28, 29, 29, 30, 29, 29, 29, 29, 29, 28, 26, 26, 32.73966 + 24, 23, 22, 20, 18, 17, 14, 12, 10, 9, 7, 6, 5, 4, 2, 1, 32.73967 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 3, 4, 32.73968 + 5, 8, 9, 12, 14, 15, 20, 21, 22, 23, 24, 26, 25, 26, 27, 27, 32.73969 + 27, 28, 27, 27, 27, 26, 22, 20, 18, 16, 14, 11, 9, 7, 3, 1, 32.73970 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73971 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 5, 6, 6, 10, 12, 32.73972 + 13, 15, 18, 19, 21, 23, 24, 24, 24, 25, 24, 24, 24, 24, 24, 24, 32.73973 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 32.73974 + 24, 25, 24, 25, 24, 24, 24, 24, 24, 24, 23, 24, 23, 24, 23, 24, 32.73975 + 23, 24, 25, 27, 28, 30, 31, 33, 34, 35, 36, 36, 35, 35, 34, 34, 32.73976 + 33, 32, 32, 31, 31, 31, 30, 32, 33, 33, 33, 34, 35, 35, 37, 38, 32.73977 + 38, 38, 39, 39, 39, 39, 39, 39, 39, 38, 38, 38, 37, 37, 36, 36, 32.73978 + 36, 36, 36, 37, 37, 37, 38, 38, 38, 38, 38, 37, 37, 36, 35, 34, 32.73979 + 33, 32, 31, 31, 29, 28, 26, 26, 25, 25, 24, 24, 24, 24, 23, 22, 32.73980 + 22, 20, 18, 17, 16, 15, 11, 10, 9, 7, 5, 4, 3, 2, 0, 0, 32.73981 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.73982 + 0, 0, 0, 0, 0, 0, 2, 2, 3, 4, 7, 10, 10, 13, 15, 18, 32.73983 + 20, 21, 24, 26, 27, 30, 32, 34, 35, 37, 39, 40, 40, 41, 40, 40, 32.73984 + 40, 40, 39, 38, 37, 35, 33, 33, 32, 30, 26, 24, 21, 19, 17, 14, 32.73985 + 11, 10, 8, 7, 6, 4, 3, 2, 2, 2, 1, 0, 0, 0, 1, 1, 32.73986 + 1, 1, 3, 4, 4, 6, 7, 10, 12, 16, 19, 21, 27, 29, 33, 34, 32.73987 + 35, 36, 37, 38, 38, 38, 37, 38, 37, 36, 35, 32, 30, 28, 25, 21, 32.73988 + 18, 15, 12, 9, 5, 3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.73989 + 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 3, 5, 32.73990 + 5, 8, 11, 13, 16, 17, 20, 22, 25, 26, 28, 31, 32, 33, 35, 35, 32.73991 + 34, 34, 35, 35, 34, 35, 34, 34, 33, 34, 33, 34, 33, 34, 33, 34, 32.73992 + 33, 34, 33, 34, 34, 35, 34, 35, 34, 35, 34, 34, 34, 34, 33, 33, 32.73993 + 32, 33, 32, 33, 31, 32, 31, 33, 34, 37, 39, 41, 42, 43, 45, 46, 32.73994 + 47, 48, 48, 47, 46, 45, 44, 42, 42, 41, 41, 42, 40, 41, 42, 43, 32.73995 + 44, 46, 46, 48, 48, 49, 50, 50, 51, 51, 51, 51, 52, 52, 51, 51, 32.73996 + 50, 50, 50, 50, 48, 48, 48, 48, 48, 48, 49, 49, 50, 50, 50, 50, 32.73997 + 50, 49, 48, 48, 47, 45, 43, 42, 42, 41, 39, 38, 39, 37, 36, 35, 32.73998 + 35, 35, 34, 33, 33, 32, 32, 29, 27, 24, 22, 20, 17, 15, 11, 9, 32.73999 + 6, 5, 3, 2, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.74000 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 3, 4, 4, 6, 32.74001 + 11, 14, 16, 19, 23, 26, 28, 31, 34, 36, 39, 41, 43, 47, 48, 50, 32.74002 + 51, 53, 54, 55, 54, 54, 54, 54, 53, 51, 50, 48, 46, 45, 44, 41, 32.74003 + 36, 33, 30, 27, 25, 22, 17, 14, 12, 11, 8, 7, 5, 4, 2, 2, 32.74004 + 0, 0, 0, 0, 1, 1, 1, 3, 4, 5, 5, 7, 10, 13, 16, 21, 32.74005 + 26, 29, 34, 38, 42, 46, 46, 47, 48, 50, 51, 50, 50, 51, 50, 49, 32.74006 + 47, 45, 40, 37, 32, 28, 24, 20, 16, 13, 9, 6, 5, 2, 2, 0, 32.74007 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 32.74008 + 0, 0, 0, 2, 5, 7, 8, 11, 14, 17, 22, 24, 26, 30, 34, 37, 32.74009 + 39, 41, 43, 45, 46, 46, 46, 46, 47, 48, 46, 47, 46, 47, 45, 46, 32.74010 + 45, 46, 45, 46, 45, 46, 45, 46, 45, 46, 46, 48, 47, 47, 47, 47, 32.74011 + 47, 46, 46, 46, 45, 45, 44, 43, 43, 43, 44, 44, 44, 46, 47, 50, 32.74012 + 52, 54, 55, 57, 58, 61, 61, 61, 61, 61, 60, 58, 57, 56, 56, 54, 32.74013 + 54, 55, 54, 54, 55, 57, 58, 59, 59, 61, 62, 64, 64, 65, 66, 66, 32.74014 + 66, 66, 66, 66, 66, 66, 65, 65, 64, 64, 64, 63, 62, 63, 63, 64, 32.74015 + 64, 65, 65, 66, 65, 66, 65, 65, 63, 63, 61, 59, 57, 56, 55, 54, 32.74016 + 53, 51, 50, 49, 48, 47, 47, 47, 45, 45, 44, 44, 41, 40, 37, 34, 32.74017 + 31, 27, 23, 19, 16, 12, 9, 6, 4, 3, 1, 0, 0, 0, 0, 1, 32.74018 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 2, 3, 32.74019 + 2, 4, 5, 7, 10, 13, 17, 21, 23, 27, 32, 36, 39, 43, 46, 50, 32.74020 + 53, 55, 58, 61, 63, 66, 67, 69, 70, 71, 70, 71, 70, 70, 69, 67, 32.74021 + 67, 64, 62, 59, 57, 54, 48, 44, 41, 38, 33, 28, 25, 22, 18, 15, 32.74022 + 13, 12, 9, 7, 4, 3, 1, 1, 1, 2, 2, 2, 3, 3, 5, 7, 32.74023 + 7, 9, 13, 18, 24, 29, 35, 40, 44, 49, 54, 58, 60, 61, 64, 65, 32.74024 + 66, 66, 66, 67, 65, 64, 61, 58, 52, 48, 43, 37, 32, 25, 20, 17, 32.74025 + 14, 11, 8, 5, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.74026 + 1, 1, 0, 0, 0, 0, 0, 0, 1, 4, 8, 10, 12, 16, 19, 23, 32.74027 + 28, 31, 35, 40, 44, 48, 52, 55, 57, 59, 60, 62, 61, 61, 62, 62, 32.74028 + 62, 62, 62, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 32.74029 + 61, 62, 61, 62, 62, 61, 61, 61, 61, 61, 59, 59, 59, 58, 58, 58, 32.74030 + 58, 58, 58, 60, 62, 63, 67, 69, 72, 74, 75, 77, 78, 78, 78, 77, 32.74031 + 76, 74, 73, 72, 72, 70, 70, 70, 70, 70, 71, 73, 74, 75, 76, 77, 32.74032 + 80, 81, 82, 82, 83, 83, 83, 83, 83, 83, 83, 83, 82, 82, 82, 81, 32.74033 + 81, 81, 80, 81, 80, 81, 81, 82, 82, 83, 82, 83, 82, 82, 80, 80, 32.74034 + 78, 76, 74, 72, 70, 69, 68, 66, 66, 65, 62, 62, 62, 61, 60, 59, 32.74035 + 58, 57, 55, 53, 49, 45, 40, 37, 31, 26, 22, 17, 12, 10, 7, 4, 32.74036 + 2, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.74037 + 1, 1, 0, 1, 3, 4, 5, 7, 11, 13, 16, 19, 24, 28, 32, 37, 32.74038 + 43, 47, 51, 55, 59, 62, 69, 72, 74, 77, 80, 83, 84, 86, 87, 87, 32.74039 + 88, 88, 87, 86, 85, 85, 84, 82, 78, 76, 72, 68, 63, 59, 54, 50, 32.74040 + 44, 39, 35, 31, 26, 23, 19, 17, 14, 11, 8, 5, 4, 2, 2, 2, 32.74041 + 2, 2, 3, 4, 7, 9, 11, 14, 18, 24, 30, 38, 46, 51, 57, 63, 32.74042 + 69, 73, 75, 78, 80, 83, 83, 83, 83, 83, 82, 79, 75, 71, 67, 61, 32.74043 + 54, 47, 40, 35, 27, 22, 17, 14, 10, 7, 4, 2, 1, 0, 0, 0, 32.74044 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 2, 3, 6, 32.74045 + 10, 13, 16, 20, 24, 29, 36, 41, 47, 52, 57, 62, 67, 71, 73, 75, 32.74046 + 77, 77, 78, 78, 78, 79, 79, 78, 78, 78, 78, 78, 77, 77, 77, 77, 32.74047 + 77, 77, 78, 78, 78, 78, 78, 79, 79, 79, 78, 78, 78, 78, 78, 77, 32.74048 + 77, 77, 75, 75, 74, 74, 75, 75, 75, 77, 78, 80, 84, 86, 88, 90, 32.74049 + 92, 94, 95, 96, 95, 95, 93, 92, 91, 90, 88, 88, 87, 87, 86, 87, 32.74050 + 88, 89, 92, 93, 93, 95, 98, 99, 100, 101, 101, 101, 102, 102, 102, 101, 32.74051 + 101, 101, 100, 100, 100, 100, 99, 99, 99, 99, 99, 100, 100, 100, 101, 101, 32.74052 + 101, 101, 101, 100, 99, 98, 95, 93, 90, 89, 88, 86, 84, 83, 83, 82, 32.74053 + 80, 79, 78, 78, 77, 76, 74, 72, 69, 66, 63, 58, 53, 47, 40, 35, 32.74054 + 28, 22, 17, 13, 9, 6, 4, 2, 1, 0, 0, 0, 0, 0, 0, 0, 32.74055 + 0, 0, 0, 0, 0, 0, 1, 0, 1, 2, 4, 6, 9, 12, 15, 18, 32.74056 + 21, 26, 32, 36, 44, 49, 55, 61, 65, 69, 74, 79, 86, 90, 93, 96, 32.74057 + 99, 102, 104, 106, 107, 107, 107, 107, 106, 105, 104, 103, 102, 99, 97, 93, 32.74058 + 90, 85, 80, 76, 69, 64, 58, 52, 47, 42, 37, 32, 25, 22, 17, 15, 32.74059 + 11, 9, 5, 5, 2, 2, 2, 2, 3, 5, 8, 11, 14, 19, 24, 30, 32.74060 + 38, 46, 55, 63, 71, 78, 85, 90, 94, 96, 98, 101, 101, 102, 101, 100, 32.74061 + 99, 96, 91, 86, 82, 76, 66, 59, 51, 43, 35, 30, 21, 17, 13, 9, 32.74062 + 6, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.74063 + 0, 0, 2, 2, 4, 8, 12, 16, 20, 25, 30, 35, 46, 53, 59, 66, 32.74064 + 71, 77, 83, 87, 90, 93, 94, 95, 97, 97, 97, 98, 96, 96, 96, 96, 32.74065 + 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 96, 98, 98, 97, 97, 32.74066 + 97, 97, 96, 96, 96, 95, 95, 94, 94, 93, 92, 91, 92, 93, 93, 94, 32.74067 + 97, 100, 103, 105, 107, 109, 112, 113, 115, 115, 116, 115, 112, 111, 110, 109, 32.74068 + 107, 107, 106, 106, 106, 106, 108, 109, 111, 112, 113, 114, 118, 119, 120, 120, 32.74069 + 121, 121, 121, 121, 121, 121, 121, 120, 120, 120, 119, 119, 119, 119, 119, 119, 32.74070 + 119, 119, 120, 120, 121, 121, 121, 121, 121, 120, 119, 118, 114, 113, 110, 108, 32.74071 + 107, 106, 103, 102, 102, 100, 98, 98, 97, 97, 95, 94, 92, 90, 87, 83, 32.74072 + 78, 72, 66, 59, 50, 42, 35, 27, 23, 18, 13, 9, 5, 3, 1, 0, 32.74073 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 4, 32.74074 + 6, 8, 12, 16, 19, 24, 28, 35, 41, 46, 54, 61, 67, 73, 79, 84, 32.74075 + 89, 94, 103, 105, 109, 113, 115, 118, 121, 123, 125, 125, 126, 126, 125, 124, 32.74076 + 122, 122, 118, 116, 113, 110, 107, 102, 95, 91, 84, 78, 70, 64, 58, 52, 32.74077 + 47, 42, 32, 27, 23, 19, 14, 11, 9, 6, 4, 3, 3, 3, 4, 6, 32.74078 + 9, 13, 19, 23, 30, 38, 46, 56, 67, 75, 84, 92, 98, 105, 109, 112, 32.74079 + 115, 117, 120, 119, 119, 118, 116, 112, 106, 102, 95, 87, 77, 68, 59, 50, 32.74080 + 42, 34, 25, 21, 16, 12, 8, 6, 4, 2, 0, 0, 0, 0, 0, 0, 32.74081 + 0, 0, 0, 0, 0, 0, 0, 1, 3, 4, 7, 11, 14, 19, 24, 30, 32.74082 + 36, 44, 54, 63, 71, 78, 84, 91, 97, 102, 105, 109, 111, 113, 115, 114, 32.74083 + 114, 115, 114, 113, 113, 113, 113, 112, 112, 112, 112, 112, 112, 112, 113, 113, 32.74084 + 113, 113, 114, 115, 115, 115, 115, 115, 114, 113, 113, 113, 112, 112, 111, 110, 32.74085 + 109, 108, 109, 109, 110, 111, 114, 116, 119, 121, 125, 127, 130, 131, 133, 134, 32.74086 + 134, 134, 131, 130, 129, 128, 126, 125, 124, 124, 124, 125, 127, 128, 130, 131, 32.74087 + 132, 133, 136, 137, 137, 139, 138, 140, 139, 140, 139, 139, 138, 139, 137, 138, 32.74088 + 137, 137, 136, 137, 136, 137, 136, 138, 137, 139, 138, 139, 138, 139, 138, 138, 32.74089 + 136, 136, 134, 131, 128, 127, 126, 125, 122, 120, 118, 118, 116, 115, 115, 114, 32.74090 + 112, 111, 109, 106, 102, 97, 92, 85, 77, 70, 61, 53, 42, 35, 29, 23, 32.74091 + 16, 11, 6, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.74092 + 0, 1, 2, 3, 4, 6, 8, 12, 17, 22, 26, 32, 38, 45, 52, 58, 32.74093 + 67, 73, 81, 87, 94, 100, 105, 111, 118, 123, 127, 130, 133, 136, 138, 141, 32.74094 + 143, 144, 144, 144, 143, 142, 140, 139, 137, 134, 130, 127, 122, 117, 111, 107, 32.74095 + 99, 93, 84, 77, 71, 65, 57, 51, 41, 35, 29, 24, 19, 15, 11, 10, 32.74096 + 6, 6, 5, 5, 6, 8, 11, 15, 22, 29, 37, 45, 54, 66, 77, 87, 32.74097 + 97, 104, 112, 120, 125, 129, 132, 135, 137, 137, 136, 135, 133, 129, 123, 117, 32.74098 + 108, 100, 88, 78, 68, 58, 49, 40, 30, 24, 20, 15, 10, 8, 4, 3, 32.74099 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 2, 4, 5, 32.74100 + 9, 13, 17, 23, 28, 35, 44, 51, 65, 73, 82, 91, 98, 106, 112, 118, 32.74101 + 123, 127, 129, 132, 132, 132, 132, 133, 133, 132, 132, 132, 132, 131, 131, 131, 32.74102 + 131, 131, 131, 131, 132, 132, 132, 132, 133, 133, 133, 134, 133, 132, 132, 132, 32.74103 + 132, 131, 130, 129, 128, 127, 127, 126, 126, 126, 128, 129, 131, 134, 137, 139, 32.74104 + 143, 145, 148, 149, 151, 152, 152, 152, 149, 149, 147, 146, 144, 144, 142, 142, 32.74105 + 143, 143, 145, 146, 148, 150, 150, 152, 154, 155, 155, 157, 156, 157, 157, 158, 32.74106 + 156, 157, 156, 156, 155, 156, 154, 155, 154, 155, 154, 155, 154, 156, 155, 156, 32.74107 + 156, 157, 156, 157, 156, 156, 154, 154, 152, 149, 148, 146, 144, 143, 141, 139, 32.74108 + 137, 136, 134, 134, 132, 132, 130, 129, 127, 123, 118, 113, 107, 99, 89, 81, 32.74109 + 71, 62, 52, 42, 34, 28, 21, 14, 8, 4, 2, 0, 0, 0, 0, 0, 32.74110 + 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 8, 11, 16, 21, 27, 32.74111 + 33, 41, 47, 55, 63, 69, 80, 88, 96, 105, 112, 118, 123, 128, 136, 140, 32.74112 + 144, 147, 152, 156, 158, 161, 160, 159, 158, 159, 158, 158, 158, 156, 156, 153, 32.74113 + 148, 145, 140, 135, 129, 123, 115, 109, 99, 92, 85, 78, 69, 63, 51, 45, 32.74114 + 39, 32, 26, 21, 16, 14, 8, 7, 5, 6, 8, 11, 15, 19, 27, 34, 32.74115 + 44, 53, 61, 72, 86, 96, 111, 118, 128, 134, 141, 146, 149, 153, 154, 154, 32.74116 + 152, 151, 148, 144, 136, 132, 124, 114, 100, 88, 78, 67, 57, 46, 34, 29, 32.74117 + 23, 17, 12, 8, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 32.74118 + 1, 0, 1, 3, 4, 6, 9, 14, 19, 26, 33, 42, 51, 59, 75, 85, 32.74119 + 95, 105, 113, 121, 129, 135, 141, 145, 148, 151, 152, 151, 149, 149, 151, 151, 32.74120 + 152, 152, 151, 149, 151, 151, 149, 148, 149, 150, 152, 152, 151, 151, 150, 152, 32.74121 + 152, 151, 150, 150, 151, 149, 150, 149, 148, 147, 147, 146, 144, 144, 143, 143, 32.74122 + 145, 147, 148, 152, 155, 157, 160, 161, 162, 162, 163, 164, 165, 166, 165, 165, 32.74123 + 164, 162, 160, 159, 160, 161, 160, 161, 162, 163, 165, 167, 169, 169, 171, 170, 32.74124 + 172, 172, 172, 171, 168, 167, 166, 168, 173, 174, 172, 171, 169, 169, 170, 170, 32.74125 + 169, 169, 170, 171, 171, 171, 172, 173, 172, 172, 170, 168, 166, 166, 168, 166, 32.74126 + 164, 162, 162, 161, 156, 155, 155, 155, 154, 153, 152, 151, 150, 148, 144, 140, 32.74127 + 134, 128, 123, 113, 103, 93, 80, 71, 58, 47, 40, 32, 24, 17, 8, 5, 32.74128 + 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 3, 6, 32.74129 + 10, 12, 17, 22, 26, 33, 42, 49, 60, 69, 78, 85, 93, 106, 119, 124, 32.74130 + 129, 137, 141, 144, 156, 159, 161, 165, 171, 175, 179, 180, 177, 176, 174, 171, 32.74131 + 172, 174, 177, 177, 176, 171, 169, 166, 159, 155, 152, 140, 134, 125, 117, 108, 32.74132 + 100, 92, 86, 77, 66, 57, 48, 42, 36, 29, 23, 17, 13, 8, 6, 8, 32.74133 + 13, 15, 19, 24, 33, 43, 55, 64, 72, 82, 95, 109, 122, 136, 136, 148, 32.74134 + 152, 166, 163, 172, 165, 174, 169, 169, 162, 160, 150, 142, 141, 129, 115, 101, 32.74135 + 87, 75, 64, 53, 42, 33, 25, 20, 15, 10, 6, 5, 3, 3, 2, 2, 32.74136 + 2, 2, 2, 2, 1, 1, 2, 3, 3, 5, 7, 9, 12, 16, 23, 31, 32.74137 + 40, 49, 60, 72, 81, 96, 108, 119, 136, 138, 144, 154, 162, 166, 170, 171, 32.74138 + 171, 170, 165, 164, 166, 170, 175, 169, 171, 163, 172, 170, 161, 171, 166, 161, 32.74139 + 177, 169, 169, 170, 168, 169, 170, 169, 167, 166, 167, 168, 167, 162, 170, 166, 32.74140 + 169, 167, 158, 158, 164, 160, 164, 166, 171, 160, 180, 171, 181, 174, 177, 177, 32.74141 + 166, 168, 177, 176, 182, 177, 184, 178, 178, 179, 174, 181, 180, 179, 184, 181, 32.74142 + 182, 181, 193, 185, 190, 187, 186, 187, 188, 184, 176, 171, 175, 164, 199, 194, 32.74143 + 188, 188, 184, 183, 184, 185, 183, 179, 189, 187, 184, 186, 188, 188, 192, 183, 32.74144 + 186, 174, 173, 180, 184, 183, 179, 179, 182, 180, 167, 175, 174, 173, 173, 173, 32.74145 + 173, 171, 169, 167, 162, 154, 150, 142, 137, 128, 115, 105, 93, 77, 63, 54, 32.74146 + 45, 37, 28, 19, 13, 8, 5, 3, 2, 1, 0, 0, 0, 1, 2, 2, 32.74147 + 1, 2, 3, 3, 5, 9, 13, 17, 22, 27, 35, 41, 52, 62, 72, 82, 32.74148 + 92, 99, 111, 118, 132, 144, 152, 155, 160, 165, 165, 170, 174, 176, 176, 177, 32.74149 + 180, 182, 181, 180, 178, 180, 177, 174, 175, 179, 175, 176, 177, 175, 170, 168, 32.74150 + 164, 158, 153, 145, 135, 132, 110, 112, 101, 86, 77, 67, 57, 51, 44, 37, 32.74151 + 30, 24, 19, 13, 11, 14, 17, 20, 25, 31, 39, 49, 62, 73, 81, 92, 32.74152 + 105, 118, 134, 145, 153, 163, 164, 158, 174, 170, 178, 179, 169, 170, 167, 165, 32.74153 + 148, 141, 151, 142, 126, 112, 97, 84, 72, 59, 48, 39, 30, 24, 20, 15, 32.74154 + 10, 9, 7, 7, 6, 7, 7, 7, 6, 5, 4, 4, 5, 6, 6, 9, 32.74155 + 11, 13, 16, 20, 28, 37, 46, 55, 67, 79, 99, 101, 119, 128, 132, 156, 32.74156 + 158, 157, 165, 169, 173, 176, 178, 176, 171, 169, 178, 179, 178, 179, 173, 179, 32.74157 + 182, 173, 185, 165, 182, 191, 187, 181, 180, 169, 175, 174, 173, 174, 174, 173, 32.74158 + 174, 173, 176, 177, 168, 168, 171, 179, 173, 182, 177, 177, 176, 175, 181, 182, 32.74159 + 186, 184, 181, 176, 159, 120, 87, 96, 130, 148, 175, 189, 187, 197, 196, 186, 32.74160 + 197, 198, 196, 189, 194, 187, 177, 178, 180, 190, 181, 184, 190, 190, 179, 156, 32.74161 + 126, 106, 80, 108, 191, 208, 204, 200, 196, 195, 198, 191, 180, 185, 176, 185, 32.74162 + 186, 180, 186, 188, 178, 147, 124, 93, 87, 135, 190, 199, 195, 190, 198, 194, 32.74163 + 185, 175, 178, 178, 179, 179, 177, 175, 174, 171, 167, 163, 160, 154, 149, 141, 32.74164 + 128, 118, 102, 86, 71, 61, 51, 41, 32, 22, 14, 10, 6, 4, 2, 1, 32.74165 + 0, 0, 0, 1, 2, 2, 2, 2, 3, 3, 7, 12, 17, 21, 28, 35, 32.74166 + 44, 52, 64, 76, 87, 97, 108, 116, 125, 137, 148, 155, 162, 169, 173, 174, 32.74167 + 184, 181, 172, 165, 151, 133, 112, 97, 86, 77, 71, 71, 74, 81, 101, 120, 32.74168 + 131, 158, 179, 181, 181, 186, 184, 180, 173, 158, 151, 152, 128, 124, 116, 104, 32.74169 + 88, 78, 66, 58, 51, 44, 37, 31, 24, 19, 17, 18, 22, 24, 29, 34, 32.74170 + 41, 51, 66, 79, 89, 101, 116, 127, 136, 141, 111, 115, 112, 115, 124, 122, 32.74171 + 121, 124, 121, 130, 124, 110, 83, 78, 155, 150, 136, 123, 107, 93, 80, 67, 32.74172 + 55, 45, 36, 30, 24, 19, 15, 13, 12, 11, 11, 10, 10, 10, 9, 9, 32.74173 + 7, 7, 8, 10, 10, 12, 14, 17, 21, 25, 32, 42, 51, 63, 74, 86, 32.74174 + 99, 107, 131, 149, 142, 152, 147, 156, 159, 162, 167, 171, 175, 175, 171, 170, 32.74175 + 168, 169, 169, 171, 168, 174, 167, 187, 192, 201, 209, 189, 190, 190, 176, 171, 32.74176 + 174, 171, 168, 168, 173, 174, 171, 168, 165, 168, 164, 168, 165, 166, 182, 180, 32.74177 + 190, 190, 189, 187, 192, 198, 194, 195, 182, 96, 35, 33, 39, 31, 29, 35, 32.74178 + 71, 163, 200, 202, 206, 208, 201, 203, 198, 203, 181, 75, 36, 27, 34, 32, 32.74179 + 27, 27, 31, 35, 39, 37, 32, 29, 37, 90, 202, 222, 217, 211, 208, 206, 32.74180 + 144, 64, 46, 27, 34, 32, 28, 34, 30, 37, 33, 26, 36, 32, 42, 140, 32.74181 + 202, 212, 207, 207, 209, 190, 200, 184, 177, 174, 174, 173, 170, 168, 167, 166, 32.74182 + 167, 161, 155, 147, 149, 151, 135, 124, 112, 96, 79, 67, 57, 45, 33, 23, 32.74183 + 15, 10, 6, 4, 2, 1, 0, 0, 0, 1, 1, 2, 2, 3, 3, 5, 32.74184 + 10, 16, 21, 27, 35, 42, 52, 62, 76, 88, 101, 113, 124, 132, 138, 150, 32.74185 + 161, 169, 175, 180, 181, 181, 163, 132, 87, 52, 34, 31, 33, 35, 33, 34, 32.74186 + 36, 39, 35, 30, 30, 33, 31, 37, 53, 89, 141, 174, 181, 184, 180, 178, 32.74187 + 171, 160, 155, 141, 126, 114, 104, 91, 78, 67, 59, 50, 44, 40, 32, 27, 32.74188 + 24, 24, 26, 30, 35, 40, 47, 56, 70, 84, 98, 112, 128, 138, 157, 160, 32.74189 + 92, 50, 40, 41, 29, 35, 41, 38, 30, 34, 35, 40, 45, 77, 158, 157, 32.74190 + 145, 132, 117, 103, 88, 75, 61, 52, 43, 37, 31, 25, 21, 20, 18, 18, 32.74191 + 18, 16, 16, 15, 14, 14, 13, 14, 14, 15, 15, 18, 19, 22, 27, 31, 32.74192 + 39, 49, 59, 70, 82, 95, 115, 136, 134, 141, 146, 66, 57, 36, 32, 32, 32.74193 + 35, 40, 43, 43, 40, 40, 37, 36, 44, 38, 44, 46, 63, 133, 205, 208, 32.74194 + 206, 209, 207, 130, 55, 45, 43, 40, 36, 36, 40, 41, 40, 38, 38, 39, 32.74195 + 41, 38, 40, 52, 110, 199, 200, 199, 199, 201, 202, 203, 203, 184, 84, 38, 32.74196 + 17, 27, 32, 27, 26, 35, 31, 53, 181, 210, 217, 222, 210, 218, 209, 215, 32.74197 + 200, 175, 50, 34, 22, 15, 25, 23, 23, 24, 28, 32, 34, 36, 34, 89, 32.74198 + 206, 222, 221, 223, 224, 220, 212, 144, 42, 38, 29, 20, 27, 26, 31, 27, 32.74199 + 19, 17, 26, 30, 31, 140, 212, 222, 215, 211, 223, 213, 182, 56, 47, 42, 32.74200 + 41, 39, 35, 34, 34, 35, 37, 37, 40, 53, 94, 143, 144, 135, 121, 103, 32.74201 + 85, 73, 59, 46, 33, 22, 16, 11, 7, 5, 3, 1, 0, 0, 0, 1, 32.74202 + 1, 1, 3, 4, 5, 7, 13, 20, 26, 32, 41, 51, 62, 73, 88, 104, 32.74203 + 117, 129, 141, 148, 159, 160, 167, 180, 194, 184, 135, 83, 35, 33, 33, 32, 32.74204 + 29, 26, 29, 31, 36, 35, 33, 30, 29, 31, 33, 33, 29, 31, 34, 35, 32.74205 + 29, 34, 80, 145, 176, 186, 183, 178, 165, 152, 142, 141, 120, 107, 91, 79, 32.74206 + 68, 59, 53, 49, 43, 38, 33, 33, 35, 37, 44, 49, 56, 65, 79, 94, 32.74207 + 109, 125, 142, 152, 163, 171, 143, 62, 39, 28, 30, 35, 32, 31, 29, 32, 32.74208 + 28, 29, 32, 74, 164, 165, 156, 145, 128, 114, 98, 84, 71, 61, 52, 46, 32.74209 + 40, 34, 31, 29, 27, 27, 26, 26, 24, 24, 23, 23, 21, 21, 23, 23, 32.74210 + 23, 26, 28, 31, 35, 39, 48, 57, 67, 78, 90, 104, 121, 132, 143, 166, 32.74211 + 159, 151, 64, 41, 33, 30, 32, 35, 36, 36, 35, 35, 37, 35, 39, 31, 32.74212 + 38, 52, 141, 211, 217, 228, 225, 222, 226, 205, 149, 52, 38, 34, 36, 36, 32.74213 + 33, 33, 36, 38, 34, 41, 23, 33, 48, 85, 192, 203, 207, 208, 210, 210, 32.74214 + 211, 208, 208, 132, 38, 31, 34, 32, 37, 41, 38, 30, 36, 36, 56, 203, 32.74215 + 214, 230, 230, 225, 220, 217, 223, 210, 159, 39, 32, 38, 23, 26, 31, 34, 32.74216 + 38, 38, 34, 33, 31, 87, 210, 225, 230, 233, 232, 227, 226, 211, 108, 40, 32.74217 + 29, 27, 35, 30, 33, 28, 30, 30, 27, 37, 42, 152, 217, 228, 233, 223, 32.74218 + 217, 218, 208, 53, 43, 36, 36, 34, 29, 28, 29, 31, 35, 37, 34, 41, 32.74219 + 86, 155, 156, 139, 127, 110, 92, 77, 63, 48, 33, 22, 16, 12, 7, 5, 32.74220 + 3, 1, 0, 0, 0, 0, 1, 2, 4, 6, 7, 11, 17, 24, 31, 40, 32.74221 + 50, 60, 71, 84, 101, 116, 130, 141, 153, 159, 167, 173, 188, 185, 142, 79, 32.74222 + 41, 35, 29, 27, 28, 29, 30, 32, 36, 39, 39, 39, 38, 36, 36, 38, 32.74223 + 36, 32, 37, 31, 22, 23, 28, 29, 31, 43, 79, 153, 177, 177, 171, 177, 32.74224 + 155, 155, 136, 122, 104, 90, 78, 68, 62, 60, 53, 48, 43, 41, 42, 46, 32.74225 + 51, 57, 65, 75, 88, 103, 119, 135, 152, 163, 171, 176, 182, 115, 31, 29, 32.74226 + 35, 32, 36, 34, 32, 34, 32, 31, 30, 76, 170, 175, 167, 155, 138, 122, 32.74227 + 106, 90, 79, 71, 61, 55, 49, 43, 40, 39, 37, 36, 34, 33, 33, 31, 32.74228 + 31, 30, 29, 30, 30, 31, 32, 35, 37, 39, 44, 49, 56, 66, 75, 85, 32.74229 + 98, 111, 126, 147, 156, 164, 179, 172, 141, 45, 34, 27, 31, 34, 36, 35, 32.74230 + 33, 34, 36, 37, 32, 34, 31, 87, 210, 229, 226, 228, 226, 230, 229, 229, 32.74231 + 206, 99, 35, 28, 35, 36, 34, 33, 37, 39, 33, 29, 35, 42, 50, 172, 32.74232 + 213, 212, 211, 217, 218, 214, 218, 216, 196, 70, 35, 27, 32, 40, 49, 48, 32.74233 + 43, 43, 34, 38, 35, 123, 226, 237, 231, 231, 229, 229, 233, 231, 211, 86, 32.74234 + 37, 21, 34, 36, 40, 40, 39, 40, 36, 35, 32, 91, 222, 234, 239, 239, 32.74235 + 236, 234, 234, 224, 189, 41, 35, 36, 36, 40, 42, 36, 40, 37, 28, 35, 32.74236 + 47, 152, 234, 225, 231, 240, 231, 220, 203, 45, 41, 34, 35, 33, 29, 27, 32.74237 + 30, 32, 29, 35, 33, 37, 82, 160, 161, 146, 133, 116, 98, 82, 66, 50, 32.74238 + 35, 23, 17, 13, 8, 5, 3, 1, 0, 0, 0, 0, 1, 2, 5, 7, 32.74239 + 10, 15, 22, 30, 39, 47, 59, 70, 83, 97, 115, 130, 141, 152, 161, 170, 32.74240 + 173, 185, 156, 92, 43, 35, 35, 29, 35, 35, 36, 40, 45, 46, 39, 34, 32.74241 + 33, 32, 33, 35, 38, 40, 40, 42, 42, 47, 41, 30, 26, 34, 34, 25, 32.74242 + 27, 26, 101, 176, 177, 168, 173, 157, 151, 139, 120, 104, 91, 81, 74, 71, 32.74243 + 66, 60, 54, 52, 52, 55, 62, 69, 77, 85, 98, 111, 127, 143, 160, 172, 32.74244 + 184, 188, 191, 167, 31, 33, 33, 35, 42, 41, 40, 38, 35, 31, 25, 74, 32.74245 + 178, 183, 177, 165, 147, 130, 114, 100, 90, 82, 72, 66, 61, 56, 52, 50, 32.74246 + 48, 48, 46, 45, 45, 43, 42, 40, 40, 40, 40, 41, 44, 46, 48, 50, 32.74247 + 55, 59, 67, 75, 86, 95, 107, 120, 133, 156, 168, 176, 181, 193, 187, 101, 32.74248 + 32, 25, 32, 36, 38, 38, 35, 36, 41, 43, 35, 38, 40, 158, 235, 233, 32.74249 + 239, 239, 235, 238, 241, 231, 232, 184, 33, 22, 30, 37, 40, 40, 38, 39, 32.74250 + 46, 28, 38, 61, 179, 199, 203, 214, 215, 220, 220, 219, 222, 216, 169, 40, 32.74251 + 34, 37, 42, 44, 52, 57, 51, 43, 37, 30, 32, 91, 223, 233, 243, 238, 32.74252 + 241, 251, 233, 239, 236, 156, 26, 32, 33, 41, 48, 50, 49, 47, 37, 32, 32.74253 + 27, 87, 224, 234, 240, 240, 240, 243, 240, 238, 202, 97, 34, 30, 41, 40, 32.74254 + 48, 45, 44, 39, 36, 34, 45, 149, 229, 239, 242, 239, 236, 235, 211, 50, 32.74255 + 36, 29, 36, 38, 36, 36, 38, 38, 35, 35, 32, 37, 82, 163, 162, 150, 32.74256 + 139, 120, 101, 86, 69, 54, 36, 24, 18, 13, 8, 5, 3, 1, 0, 0, 32.74257 + 0, 0, 1, 3, 5, 8, 12, 17, 26, 35, 44, 54, 67, 80, 96, 110, 32.74258 + 126, 142, 153, 163, 171, 176, 186, 129, 65, 35, 30, 31, 32, 32, 40, 45, 32.74259 + 49, 49, 44, 38, 33, 31, 33, 30, 29, 32, 33, 30, 34, 42, 53, 45, 32.74260 + 43, 45, 39, 36, 36, 32, 31, 28, 31, 50, 161, 179, 178, 173, 166, 155, 32.74261 + 136, 121, 106, 96, 89, 84, 79, 73, 67, 65, 65, 68, 75, 81, 88, 96, 32.74262 + 108, 120, 134, 151, 167, 180, 189, 198, 200, 188, 45, 24, 28, 43, 48, 50, 32.74263 + 50, 43, 35, 30, 27, 81, 185, 191, 185, 175, 156, 140, 125, 112, 103, 94, 32.74264 + 86, 79, 74, 69, 65, 64, 62, 61, 61, 58, 57, 56, 53, 53, 52, 52, 32.74265 + 54, 55, 55, 57, 60, 63, 68, 72, 79, 88, 97, 107, 117, 129, 144, 158, 32.74266 + 169, 187, 197, 208, 199, 159, 32, 25, 33, 40, 45, 44, 41, 42, 43, 41, 32.74267 + 33, 25, 45, 215, 225, 249, 243, 242, 240, 238, 242, 232, 236, 215, 32, 19, 32.74268 + 30, 39, 45, 46, 42, 41, 30, 44, 43, 152, 209, 211, 219, 209, 218, 217, 32.74269 + 217, 225, 224, 210, 146, 44, 36, 35, 40, 49, 59, 61, 53, 49, 42, 28, 32.74270 + 22, 39, 220, 240, 239, 239, 246, 246, 251, 243, 234, 201, 35, 19, 30, 40, 32.74271 + 51, 55, 53, 49, 37, 30, 32, 90, 229, 238, 245, 244, 242, 244, 243, 229, 32.74272 + 227, 138, 38, 29, 43, 38, 46, 52, 49, 44, 41, 27, 38, 151, 227, 245, 32.74273 + 246, 244, 242, 235, 215, 85, 34, 29, 39, 45, 46, 46, 48, 49, 40, 31, 32.74274 + 24, 33, 85, 169, 165, 155, 141, 123, 103, 87, 70, 54, 37, 25, 19, 14, 32.74275 + 8, 5, 3, 1, 0, 0, 0, 1, 2, 3, 6, 11, 16, 24, 31, 41, 32.74276 + 55, 66, 76, 90, 113, 114, 138, 154, 165, 177, 180, 182, 109, 42, 30, 37, 32.74277 + 28, 34, 41, 39, 41, 57, 42, 44, 36, 33, 27, 29, 29, 36, 37, 30, 32.74278 + 23, 30, 37, 34, 42, 60, 51, 53, 43, 47, 45, 44, 40, 38, 35, 33, 32.74279 + 55, 162, 172, 186, 179, 161, 155, 136, 122, 109, 104, 94, 91, 87, 82, 80, 32.74280 + 79, 82, 88, 94, 101, 112, 117, 126, 145, 156, 166, 186, 192, 207, 208, 200, 32.74281 + 81, 25, 27, 41, 47, 56, 54, 47, 39, 32, 28, 82, 193, 201, 192, 179, 32.74282 + 165, 149, 133, 123, 113, 107, 100, 93, 88, 84, 81, 79, 76, 76, 74, 74, 32.74283 + 72, 71, 68, 68, 66, 66, 69, 70, 70, 72, 75, 77, 82, 87, 93, 102, 32.74284 + 110, 118, 128, 138, 151, 162, 178, 192, 205, 212, 214, 201, 37, 28, 32, 40, 32.74285 + 45, 52, 57, 49, 44, 36, 28, 30, 45, 214, 235, 244, 246, 247, 239, 245, 32.74286 + 237, 233, 230, 141, 34, 25, 37, 41, 49, 50, 41, 33, 35, 48, 145, 209, 32.74287 + 213, 217, 210, 215, 214, 212, 219, 223, 226, 207, 147, 45, 34, 38, 38, 46, 32.74288 + 63, 62, 48, 51, 44, 24, 34, 30, 220, 238, 241, 240, 246, 246, 246, 242, 32.74289 + 242, 218, 31, 20, 28, 38, 47, 55, 53, 43, 35, 30, 30, 94, 223, 243, 32.74290 + 245, 246, 246, 245, 244, 239, 229, 160, 42, 33, 35, 40, 47, 57, 51, 46, 32.74291 + 36, 35, 35, 149, 228, 252, 247, 248, 249, 241, 226, 99, 32, 27, 37, 45, 32.74292 + 53, 62, 62, 54, 40, 29, 19, 30, 91, 172, 164, 156, 142, 124, 105, 87, 32.74293 + 70, 54, 39, 27, 19, 14, 8, 6, 4, 2, 0, 0, 0, 3, 4, 4, 32.74294 + 8, 13, 19, 27, 35, 47, 62, 73, 85, 99, 115, 136, 147, 157, 174, 183, 32.74295 + 186, 89, 45, 25, 34, 36, 33, 42, 47, 48, 48, 37, 37, 42, 28, 36, 32.74296 + 37, 80, 131, 135, 145, 138, 90, 40, 27, 38, 48, 44, 46, 58, 58, 53, 32.74297 + 52, 51, 56, 43, 34, 35, 42, 50, 167, 182, 178, 183, 160, 152, 140, 125, 32.74298 + 118, 110, 104, 100, 95, 94, 94, 97, 102, 109, 111, 126, 135, 143, 158, 170, 32.74299 + 179, 188, 195, 209, 213, 208, 87, 32, 31, 34, 46, 55, 55, 47, 39, 33, 32.74300 + 30, 83, 198, 206, 199, 188, 174, 159, 146, 136, 128, 122, 115, 110, 104, 101, 32.74301 + 98, 95, 94, 93, 92, 91, 89, 87, 85, 84, 83, 83, 83, 85, 86, 89, 32.74302 + 90, 93, 97, 101, 107, 115, 124, 131, 140, 150, 159, 170, 185, 199, 210, 218, 32.74303 + 223, 209, 38, 29, 33, 40, 47, 54, 61, 52, 45, 35, 27, 29, 47, 215, 32.74304 + 237, 246, 248, 246, 248, 233, 238, 232, 204, 63, 36, 28, 38, 50, 41, 44, 32.74305 + 30, 30, 33, 122, 199, 214, 212, 215, 210, 207, 207, 209, 214, 213, 223, 215, 32.74306 + 171, 42, 36, 32, 45, 49, 46, 53, 54, 43, 39, 37, 23, 57, 229, 245, 32.74307 + 233, 245, 242, 243, 245, 244, 245, 223, 35, 22, 31, 40, 48, 57, 54, 44, 32.74308 + 36, 31, 30, 95, 225, 243, 246, 247, 247, 246, 246, 241, 233, 163, 41, 32, 32.74309 + 35, 40, 47, 57, 51, 45, 35, 34, 35, 150, 230, 248, 245, 249, 249, 242, 32.74310 + 229, 104, 32, 26, 37, 45, 53, 62, 63, 54, 42, 31, 34, 32, 126, 176, 32.74311 + 170, 155, 141, 122, 104, 87, 70, 54, 40, 30, 20, 14, 8, 6, 4, 2, 32.74312 + 0, 0, 1, 3, 5, 6, 10, 16, 22, 31, 41, 53, 70, 82, 96, 110, 32.74313 + 124, 145, 165, 175, 186, 174, 115, 30, 25, 33, 42, 42, 51, 59, 54, 52, 32.74314 + 36, 30, 21, 36, 51, 135, 207, 210, 199, 210, 212, 206, 211, 201, 134, 47, 32.74315 + 27, 24, 41, 55, 47, 62, 68, 54, 52, 59, 44, 39, 37, 37, 66, 178, 32.74316 + 185, 190, 171, 166, 159, 143, 134, 126, 120, 115, 111, 112, 113, 114, 119, 126, 32.74317 + 138, 146, 150, 155, 164, 175, 188, 197, 208, 217, 222, 214, 87, 34, 36, 34, 32.74318 + 43, 52, 53, 46, 38, 31, 28, 83, 200, 211, 205, 195, 182, 170, 160, 152, 32.74319 + 144, 140, 133, 128, 122, 120, 117, 114, 113, 112, 112, 110, 108, 106, 104, 104, 32.74320 + 101, 102, 103, 104, 106, 108, 109, 111, 115, 117, 123, 130, 139, 145, 153, 161, 32.74321 + 169, 179, 191, 203, 213, 220, 225, 210, 36, 25, 31, 41, 49, 57, 64, 56, 32.74322 + 46, 37, 28, 30, 46, 214, 239, 249, 251, 255, 243, 248, 238, 222, 73, 40, 32.74323 + 32, 38, 51, 56, 40, 35, 22, 26, 102, 188, 212, 208, 210, 203, 205, 204, 32.74324 + 203, 207, 210, 206, 219, 217, 199, 70, 40, 29, 32, 41, 48, 48, 42, 42, 32.74325 + 30, 38, 30, 89, 233, 245, 246, 238, 239, 239, 248, 248, 250, 228, 40, 29, 32.74326 + 36, 46, 53, 61, 58, 47, 39, 34, 34, 97, 226, 245, 246, 246, 245, 247, 32.74327 + 248, 245, 236, 164, 38, 28, 33, 40, 47, 56, 50, 43, 34, 33, 37, 153, 32.74328 + 240, 251, 250, 254, 249, 241, 229, 104, 32, 25, 35, 44, 52, 60, 60, 53, 32.74329 + 44, 36, 29, 34, 136, 181, 165, 158, 140, 122, 103, 88, 70, 55, 42, 30, 32.74330 + 20, 14, 8, 6, 4, 2, 0, 0, 2, 4, 5, 8, 12, 19, 26, 35, 32.74331 + 47, 61, 77, 91, 105, 122, 136, 150, 172, 177, 189, 130, 37, 32, 37, 41, 32.74332 + 47, 53, 63, 59, 48, 45, 28, 21, 26, 56, 178, 210, 213, 218, 222, 215, 32.74333 + 217, 222, 225, 220, 201, 174, 55, 35, 32, 39, 42, 63, 56, 69, 59, 56, 32.74334 + 49, 45, 42, 43, 30, 104, 187, 183, 183, 175, 170, 160, 149, 139, 135, 130, 32.74335 + 128, 129, 130, 132, 136, 143, 155, 156, 164, 177, 183, 188, 200, 209, 213, 221, 32.74336 + 229, 221, 87, 30, 37, 37, 41, 50, 52, 45, 36, 30, 27, 84, 204, 215, 32.74337 + 211, 202, 191, 181, 172, 166, 160, 156, 149, 145, 141, 138, 135, 134, 133, 132, 32.74338 + 131, 130, 128, 125, 123, 122, 120, 120, 122, 122, 123, 125, 127, 130, 132, 134, 32.74339 + 140, 147, 152, 159, 166, 173, 181, 188, 198, 208, 217, 223, 227, 212, 33, 23, 32.74340 + 30, 41, 50, 58, 66, 57, 47, 38, 31, 31, 46, 215, 239, 249, 253, 255, 32.74341 + 254, 245, 227, 123, 36, 28, 38, 48, 51, 35, 35, 25, 22, 80, 185, 204, 32.74342 + 197, 203, 201, 189, 199, 196, 198, 199, 203, 206, 214, 213, 214, 138, 39, 38, 32.74343 + 37, 34, 40, 43, 36, 35, 40, 35, 51, 186, 235, 247, 239, 247, 240, 239, 32.74344 + 248, 248, 248, 227, 39, 29, 36, 45, 52, 60, 58, 46, 39, 34, 34, 98, 32.74345 + 227, 246, 246, 246, 245, 247, 250, 247, 237, 164, 36, 25, 33, 42, 49, 57, 32.74346 + 50, 43, 33, 34, 39, 156, 239, 247, 248, 253, 250, 247, 235, 109, 32, 24, 32.74347 + 36, 44, 52, 59, 58, 52, 43, 38, 24, 35, 133, 183, 167, 157, 140, 122, 32.74348 + 103, 87, 69, 55, 43, 31, 20, 14, 8, 6, 4, 2, 0, 0, 2, 4, 32.74349 + 6, 8, 15, 21, 29, 40, 52, 67, 84, 98, 113, 131, 148, 169, 168, 170, 32.74350 + 152, 63, 31, 34, 36, 42, 57, 67, 62, 50, 43, 37, 26, 26, 69, 186, 32.74351 + 202, 206, 210, 214, 208, 208, 209, 207, 202, 205, 208, 202, 177, 59, 46, 31, 32.74352 + 39, 42, 57, 67, 71, 59, 53, 45, 44, 32, 35, 32, 144, 191, 191, 186, 32.74353 + 181, 176, 166, 155, 150, 147, 147, 148, 150, 151, 154, 160, 171, 173, 178, 185, 32.74354 + 189, 194, 206, 212, 216, 221, 232, 229, 94, 31, 34, 36, 40, 49, 52, 46, 32.74355 + 36, 29, 27, 84, 209, 222, 218, 211, 201, 192, 186, 182, 176, 171, 165, 161, 32.74356 + 159, 157, 154, 153, 153, 152, 151, 150, 147, 145, 143, 142, 141, 141, 142, 142, 32.74357 + 143, 144, 146, 148, 151, 153, 156, 163, 168, 173, 180, 186, 194, 199, 208, 215, 32.74358 + 222, 228, 232, 214, 30, 20, 29, 41, 50, 58, 65, 57, 48, 40, 33, 34, 32.74359 + 49, 216, 237, 248, 252, 252, 255, 233, 155, 51, 26, 38, 41, 52, 49, 45, 32.74360 + 28, 47, 57, 171, 204, 199, 194, 193, 183, 181, 185, 180, 188, 190, 193, 202, 32.74361 + 207, 214, 219, 203, 84, 38, 27, 35, 28, 24, 32, 36, 35, 46, 105, 225, 32.74362 + 235, 252, 247, 247, 245, 244, 249, 245, 241, 218, 34, 23, 30, 40, 47, 55, 32.74363 + 53, 42, 36, 32, 32, 97, 227, 245, 247, 246, 245, 247, 252, 249, 239, 164, 32.74364 + 34, 24, 35, 44, 52, 59, 51, 43, 33, 35, 42, 159, 239, 250, 250, 249, 32.74365 + 246, 245, 231, 107, 33, 25, 37, 45, 51, 57, 56, 50, 43, 33, 33, 36, 32.74366 + 142, 181, 178, 154, 140, 121, 103, 86, 67, 53, 41, 30, 20, 13, 8, 5, 32.74367 + 3, 2, 0, 1, 2, 4, 7, 10, 16, 24, 33, 44, 57, 72, 90, 104, 32.74368 + 120, 140, 156, 173, 171, 174, 78, 31, 41, 36, 39, 50, 64, 67, 56, 49, 32.74369 + 46, 35, 31, 60, 169, 206, 208, 217, 200, 191, 200, 195, 195, 198, 195, 197, 32.74370 + 206, 210, 209, 184, 52, 33, 34, 32, 48, 59, 64, 70, 64, 45, 43, 39, 32.74371 + 21, 31, 76, 192, 192, 196, 191, 188, 178, 168, 164, 161, 162, 165, 167, 168, 32.74372 + 170, 173, 177, 184, 188, 186, 191, 203, 211, 215, 226, 230, 234, 228, 94, 33, 32.74373 + 34, 37, 41, 50, 53, 48, 38, 30, 29, 86, 211, 225, 223, 217, 208, 201, 32.74374 + 198, 195, 188, 184, 179, 176, 174, 173, 170, 169, 168, 169, 167, 166, 164, 163, 32.74375 + 161, 159, 157, 157, 158, 159, 159, 161, 163, 164, 167, 168, 171, 176, 182, 185, 32.74376 + 191, 197, 204, 209, 215, 222, 227, 232, 235, 216, 31, 19, 30, 42, 49, 57, 32.74377 + 63, 56, 48, 42, 33, 34, 50, 216, 237, 246, 252, 255, 242, 212, 56, 28, 32.74378 + 37, 39, 43, 53, 49, 48, 46, 48, 175, 194, 195, 196, 192, 179, 174, 177, 32.74379 + 169, 172, 179, 186, 188, 195, 202, 215, 216, 224, 187, 104, 41, 38, 49, 44, 32.74380 + 36, 39, 45, 122, 221, 240, 244, 237, 248, 242, 247, 246, 246, 242, 241, 218, 32.74381 + 32, 21, 28, 37, 45, 54, 52, 41, 36, 31, 32, 97, 228, 246, 247, 246, 32.74382 + 243, 246, 250, 247, 238, 163, 32, 23, 35, 45, 53, 61, 51, 43, 33, 34, 32.74383 + 41, 158, 242, 255, 254, 248, 247, 244, 232, 120, 34, 26, 38, 45, 51, 57, 32.74384 + 56, 50, 43, 34, 27, 35, 137, 183, 180, 154, 140, 121, 102, 86, 67, 52, 32.74385 + 40, 29, 20, 13, 8, 5, 3, 2, 2, 1, 3, 5, 8, 12, 19, 27, 32.74386 + 35, 48, 62, 77, 95, 110, 127, 146, 162, 169, 175, 143, 36, 36, 33, 45, 32.74387 + 51, 60, 58, 55, 47, 41, 38, 32, 46, 157, 202, 205, 202, 197, 192, 192, 32.74388 + 178, 177, 182, 185, 187, 193, 200, 199, 207, 201, 161, 40, 33, 36, 37, 48, 32.74389 + 58, 64, 72, 57, 50, 33, 42, 38, 42, 151, 196, 204, 203, 199, 189, 181, 32.74390 + 177, 175, 176, 180, 183, 183, 185, 186, 187, 188, 184, 187, 194, 199, 208, 222, 32.74391 + 216, 234, 239, 225, 90, 30, 31, 37, 43, 54, 58, 52, 40, 33, 31, 88, 32.74392 + 215, 229, 228, 223, 214, 209, 206, 205, 200, 197, 192, 190, 188, 187, 186, 184, 32.74393 + 185, 185, 184, 182, 180, 179, 177, 176, 174, 174, 175, 175, 176, 176, 178, 179, 32.74394 + 182, 183, 184, 190, 194, 197, 202, 207, 213, 218, 222, 228, 233, 236, 238, 218, 32.74395 + 32, 21, 32, 43, 49, 56, 59, 52, 47, 40, 31, 32, 48, 217, 239, 248, 32.74396 + 247, 246, 223, 86, 37, 38, 36, 48, 54, 35, 40, 39, 45, 140, 197, 203, 32.74397 + 198, 191, 181, 170, 169, 165, 158, 166, 172, 179, 183, 190, 198, 208, 217, 221, 32.74398 + 220, 220, 176, 123, 105, 104, 110, 128, 202, 231, 231, 225, 242, 248, 245, 254, 32.74399 + 246, 241, 240, 238, 245, 226, 37, 24, 30, 39, 47, 55, 53, 43, 37, 32, 32.74400 + 35, 100, 228, 247, 247, 246, 243, 244, 245, 242, 234, 160, 30, 21, 34, 44, 32.74401 + 53, 60, 52, 42, 31, 32, 37, 155, 235, 251, 250, 246, 249, 247, 243, 155, 32.74402 + 35, 27, 39, 48, 53, 58, 56, 49, 39, 33, 17, 30, 141, 185, 175, 159, 32.74403 + 141, 122, 103, 85, 65, 50, 38, 26, 20, 13, 8, 5, 3, 2, 2, 3, 32.74404 + 4, 7, 10, 14, 21, 29, 38, 51, 66, 82, 100, 116, 132, 152, 167, 176, 32.74405 + 168, 74, 42, 43, 34, 44, 47, 60, 54, 49, 41, 27, 22, 30, 82, 207, 32.74406 + 201, 205, 196, 190, 189, 172, 170, 163, 167, 172, 176, 183, 190, 195, 201, 201, 32.74407 + 197, 113, 36, 34, 34, 45, 59, 58, 69, 57, 48, 48, 35, 38, 40, 94, 32.74408 + 205, 211, 214, 207, 200, 192, 188, 187, 191, 193, 193, 190, 187, 183, 167, 138, 32.74409 + 106, 96, 95, 90, 111, 150, 164, 205, 227, 215, 85, 28, 30, 36, 45, 55, 32.74410 + 59, 51, 39, 33, 33, 91, 220, 236, 233, 229, 222, 216, 214, 208, 197, 191, 32.74411 + 188, 186, 184, 182, 182, 181, 179, 180, 180, 179, 178, 181, 187, 190, 188, 189, 32.74412 + 191, 191, 190, 190, 191, 189, 185, 181, 179, 182, 188, 190, 193, 200, 210, 219, 32.74413 + 225, 231, 236, 240, 242, 222, 33, 22, 32, 44, 50, 56, 59, 51, 46, 39, 32.74414 + 28, 30, 49, 220, 242, 249, 249, 230, 120, 39, 37, 33, 41, 52, 38, 39, 32.74415 + 39, 37, 150, 201, 198, 197, 193, 181, 175, 169, 156, 153, 154, 154, 162, 167, 32.74416 + 173, 188, 196, 196, 217, 212, 218, 216, 211, 208, 207, 210, 211, 213, 224, 228, 32.74417 + 203, 194, 236, 242, 245, 245, 245, 241, 238, 239, 248, 228, 38, 24, 31, 40, 32.74418 + 47, 56, 54, 44, 37, 33, 34, 99, 230, 247, 247, 246, 244, 245, 244, 240, 32.74419 + 233, 161, 31, 22, 33, 44, 52, 60, 51, 42, 31, 31, 36, 154, 241, 254, 32.74420 + 253, 248, 248, 239, 240, 169, 35, 26, 38, 45, 51, 58, 56, 48, 38, 27, 32.74421 + 24, 26, 171, 184, 177, 157, 138, 120, 102, 85, 66, 50, 38, 26, 19, 13, 32.74422 + 7, 5, 3, 2, 2, 2, 4, 7, 10, 16, 24, 33, 41, 56, 72, 88, 32.74423 + 107, 125, 142, 160, 177, 177, 137, 35, 31, 35, 40, 47, 58, 63, 59, 50, 32.74424 + 37, 30, 30, 39, 174, 198, 203, 194, 185, 180, 172, 163, 156, 154, 154, 158, 32.74425 + 162, 167, 175, 183, 194, 196, 205, 181, 43, 32, 37, 42, 49, 55, 63, 64, 32.74426 + 57, 47, 37, 35, 33, 38, 187, 214, 222, 216, 208, 204, 201, 202, 207, 201, 32.74427 + 202, 181, 146, 66, 32, 38, 37, 33, 37, 38, 34, 34, 31, 43, 84, 158, 32.74428 + 86, 26, 34, 44, 51, 57, 53, 45, 37, 32, 33, 93, 226, 239, 234, 234, 32.74429 + 223, 224, 192, 89, 40, 35, 39, 36, 30, 31, 32, 31, 31, 29, 29, 41, 32.74430 + 30, 87, 194, 200, 201, 199, 210, 203, 207, 202, 200, 151, 54, 41, 30, 28, 32.74431 + 32, 32, 31, 39, 57, 147, 217, 234, 233, 247, 238, 226, 30, 22, 33, 43, 32.74432 + 50, 57, 60, 51, 44, 39, 29, 28, 48, 228, 239, 249, 234, 166, 43, 26, 32.74433 + 43, 36, 41, 39, 30, 29, 42, 104, 207, 210, 196, 193, 180, 171, 163, 156, 32.74434 + 149, 145, 144, 147, 154, 165, 164, 177, 190, 177, 105, 99, 93, 87, 82, 81, 32.74435 + 84, 86, 85, 85, 86, 73, 59, 159, 233, 243, 244, 240, 243, 240, 241, 240, 32.74436 + 246, 225, 35, 23, 31, 40, 47, 55, 54, 44, 37, 32, 31, 96, 229, 248, 32.74437 + 246, 244, 245, 246, 246, 242, 235, 163, 34, 25, 34, 44, 50, 57, 50, 42, 32.74438 + 32, 33, 38, 155, 241, 251, 255, 253, 251, 244, 248, 165, 37, 27, 35, 42, 32.74439 + 52, 57, 55, 48, 38, 25, 20, 32, 182, 193, 176, 156, 135, 116, 101, 86, 32.74440 + 66, 50, 37, 26, 17, 12, 7, 5, 3, 1, 2, 2, 4, 9, 12, 16, 32.74441 + 25, 35, 45, 59, 75, 91, 111, 128, 145, 163, 176, 182, 78, 26, 29, 36, 32.74442 + 46, 51, 60, 60, 55, 44, 31, 26, 31, 73, 194, 208, 202, 187, 175, 167, 32.74443 + 158, 148, 144, 142, 142, 144, 149, 154, 162, 172, 186, 196, 207, 195, 97, 36, 32.74444 + 36, 41, 43, 49, 59, 64, 60, 50, 41, 35, 19, 42, 158, 222, 224, 218, 32.74445 + 214, 222, 212, 210, 208, 200, 160, 80, 46, 29, 30, 25, 28, 33, 31, 29, 32.74446 + 29, 28, 27, 19, 42, 30, 27, 42, 52, 44, 60, 61, 53, 44, 37, 31, 32.74447 + 33, 95, 227, 244, 234, 233, 226, 226, 226, 181, 62, 34, 27, 29, 25, 19, 32.74448 + 24, 23, 22, 23, 24, 21, 34, 41, 166, 207, 212, 213, 220, 218, 219, 215, 32.74449 + 216, 196, 123, 31, 24, 18, 25, 19, 25, 35, 49, 190, 220, 233, 241, 245, 32.74450 + 243, 225, 31, 22, 32, 41, 49, 58, 63, 53, 50, 35, 24, 33, 52, 212, 32.74451 + 248, 234, 204, 63, 35, 40, 32, 49, 40, 25, 32, 30, 86, 198, 209, 205, 32.74452 + 205, 186, 171, 163, 154, 147, 140, 136, 136, 140, 145, 155, 165, 173, 181, 190, 32.74453 + 139, 53, 37, 31, 26, 26, 31, 31, 30, 27, 27, 32, 37, 153, 230, 240, 32.74454 + 241, 241, 241, 240, 243, 241, 245, 223, 34, 24, 31, 40, 47, 56, 53, 44, 32.74455 + 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 32.74456 + 35, 44, 49, 57, 49, 42, 32, 34, 38, 156, 239, 251, 253, 252, 252, 247, 32.74457 + 250, 168, 36, 25, 33, 40, 50, 58, 53, 46, 38, 27, 21, 32, 186, 195, 32.74458 + 175, 154, 133, 114, 100, 86, 67, 50, 37, 26, 17, 12, 7, 5, 3, 1, 32.74459 + 2, 2, 5, 10, 13, 18, 27, 36, 47, 63, 78, 95, 115, 132, 149, 165, 32.74460 + 179, 176, 39, 26, 34, 40, 45, 54, 64, 58, 54, 42, 29, 27, 31, 115, 32.74461 + 200, 205, 193, 180, 167, 157, 147, 138, 133, 130, 129, 133, 137, 145, 153, 163, 32.74462 + 176, 190, 197, 200, 154, 40, 29, 35, 39, 47, 58, 63, 61, 53, 44, 36, 32.74463 + 25, 33, 92, 217, 227, 235, 233, 229, 230, 225, 203, 139, 44, 44, 25, 37, 32.74464 + 26, 31, 40, 38, 31, 35, 35, 24, 26, 29, 37, 36, 38, 38, 46, 64, 32.74465 + 65, 63, 52, 44, 37, 30, 31, 96, 223, 246, 235, 237, 236, 223, 223, 211, 32.74466 + 172, 35, 38, 38, 30, 35, 23, 33, 30, 39, 29, 32, 35, 28, 113, 214, 32.74467 + 220, 224, 224, 226, 226, 229, 221, 218, 199, 66, 35, 27, 33, 24, 33, 33, 32.74468 + 85, 224, 226, 237, 245, 247, 251, 225, 34, 22, 31, 41, 48, 57, 63, 55, 32.74469 + 46, 42, 29, 32, 46, 228, 230, 224, 83, 30, 40, 42, 49, 43, 30, 39, 32.74470 + 31, 70, 207, 210, 211, 203, 187, 178, 165, 156, 143, 133, 128, 125, 126, 131, 32.74471 + 141, 147, 163, 172, 181, 188, 181, 75, 43, 36, 35, 34, 38, 40, 37, 34, 32.74472 + 30, 37, 45, 158, 232, 238, 240, 242, 241, 240, 243, 241, 244, 223, 34, 24, 32.74473 + 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 32.74474 + 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 38, 156, 32.74475 + 238, 251, 252, 251, 252, 248, 245, 168, 36, 25, 34, 41, 51, 58, 54, 47, 32.74476 + 38, 30, 22, 30, 187, 193, 174, 153, 133, 113, 100, 84, 65, 50, 37, 26, 32.74477 + 17, 12, 6, 5, 3, 1, 3, 4, 7, 10, 14, 19, 28, 38, 49, 66, 32.74478 + 81, 98, 118, 136, 152, 166, 180, 146, 38, 27, 38, 41, 41, 58, 66, 57, 32.74479 + 56, 44, 32, 30, 36, 154, 195, 197, 185, 175, 163, 150, 137, 128, 121, 118, 32.74480 + 118, 121, 127, 135, 145, 156, 168, 182, 190, 195, 183, 58, 28, 32, 38, 45, 32.74481 + 56, 64, 62, 55, 45, 37, 30, 27, 61, 222, 230, 242, 245, 234, 236, 209, 32.74482 + 104, 40, 38, 30, 35, 33, 42, 35, 36, 41, 40, 38, 35, 33, 31, 43, 32.74483 + 32, 39, 44, 51, 54, 58, 68, 63, 50, 43, 36, 28, 31, 96, 224, 248, 32.74484 + 234, 231, 234, 229, 227, 218, 213, 139, 34, 30, 39, 41, 43, 30, 40, 45, 32.74485 + 38, 43, 28, 38, 61, 194, 222, 230, 236, 237, 235, 238, 229, 225, 210, 94, 32.74486 + 28, 27, 38, 35, 41, 37, 157, 227, 233, 244, 242, 252, 253, 227, 36, 23, 32.74487 + 30, 41, 48, 56, 62, 54, 51, 41, 33, 34, 44, 207, 219, 124, 28, 40, 32.74488 + 38, 46, 55, 37, 38, 34, 64, 192, 219, 221, 201, 197, 184, 168, 160, 149, 32.74489 + 136, 125, 120, 117, 119, 125, 137, 146, 157, 166, 182, 179, 192, 123, 37, 33, 32.74490 + 35, 37, 43, 45, 41, 38, 36, 38, 41, 153, 231, 241, 242, 241, 241, 239, 32.74491 + 243, 241, 244, 223, 34, 24, 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 32.74492 + 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 32.74493 + 49, 42, 32, 34, 38, 156, 237, 253, 254, 252, 252, 247, 240, 173, 38, 27, 32.74494 + 34, 41, 51, 58, 55, 48, 37, 31, 21, 31, 186, 191, 173, 152, 132, 113, 32.74495 + 99, 84, 65, 49, 36, 25, 16, 12, 6, 5, 3, 1, 2, 4, 7, 11, 32.74496 + 14, 20, 30, 39, 51, 67, 85, 101, 122, 140, 156, 168, 174, 113, 39, 30, 32.74497 + 35, 43, 46, 59, 63, 54, 52, 43, 30, 30, 47, 179, 194, 193, 181, 170, 32.74498 + 155, 140, 125, 117, 109, 106, 106, 109, 116, 124, 134, 146, 163, 175, 188, 192, 32.74499 + 191, 97, 32, 31, 35, 43, 55, 63, 64, 57, 47, 39, 31, 29, 47, 200, 32.74500 + 237, 244, 241, 234, 221, 159, 49, 31, 32, 38, 37, 43, 36, 51, 58, 52, 32.74501 + 45, 35, 26, 25, 25, 23, 44, 47, 59, 58, 59, 76, 70, 64, 51, 44, 32.74502 + 37, 29, 30, 94, 222, 242, 238, 234, 228, 229, 233, 228, 212, 221, 72, 36, 32.74503 + 36, 34, 51, 39, 52, 45, 52, 39, 36, 36, 38, 135, 222, 233, 242, 242, 32.74504 + 239, 239, 242, 236, 226, 100, 32, 31, 36, 28, 27, 46, 218, 235, 244, 249, 32.74505 + 249, 251, 254, 228, 36, 23, 30, 41, 48, 55, 61, 54, 49, 38, 31, 34, 32.74506 + 51, 204, 141, 38, 35, 37, 39, 49, 46, 42, 42, 60, 184, 215, 227, 214, 32.74507 + 213, 195, 177, 168, 154, 142, 129, 121, 116, 113, 114, 120, 130, 144, 155, 162, 32.74508 + 180, 187, 189, 130, 33, 30, 36, 41, 48, 51, 46, 40, 32, 34, 39, 152, 32.74509 + 233, 241, 239, 236, 241, 239, 242, 241, 244, 223, 34, 24, 31, 40, 47, 56, 32.74510 + 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 32.74511 + 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 38, 156, 237, 255, 254, 252, 32.74512 + 251, 248, 243, 193, 37, 25, 33, 41, 50, 57, 54, 47, 35, 32, 19, 38, 32.74513 + 184, 188, 173, 153, 131, 112, 97, 82, 64, 49, 35, 25, 16, 12, 6, 5, 32.74514 + 2, 1, 2, 4, 6, 11, 15, 22, 31, 41, 53, 69, 86, 104, 125, 141, 32.74515 + 158, 169, 174, 95, 31, 37, 32, 46, 54, 58, 61, 53, 46, 38, 28, 30, 32.74516 + 66, 191, 193, 191, 178, 162, 146, 130, 117, 108, 99, 96, 94, 99, 106, 114, 32.74517 + 127, 137, 153, 167, 185, 190, 192, 139, 32, 25, 32, 40, 52, 61, 64, 59, 32.74518 + 48, 42, 33, 36, 33, 158, 238, 247, 240, 236, 180, 46, 31, 31, 39, 37, 32.74519 + 40, 51, 51, 56, 54, 46, 44, 41, 36, 33, 29, 34, 34, 40, 45, 51, 32.74520 + 54, 59, 69, 66, 53, 45, 38, 30, 31, 93, 222, 233, 236, 238, 231, 225, 32.74521 + 225, 221, 231, 214, 160, 41, 31, 33, 34, 55, 58, 56, 54, 44, 39, 30, 32.74522 + 33, 70, 223, 238, 237, 240, 243, 239, 247, 234, 208, 53, 29, 31, 38, 31, 32.74523 + 38, 112, 230, 249, 245, 247, 255, 247, 254, 230, 37, 24, 31, 41, 47, 54, 32.74524 + 62, 56, 44, 44, 36, 33, 44, 179, 42, 33, 25, 43, 48, 50, 40, 33, 32.74525 + 30, 72, 219, 216, 223, 224, 207, 196, 177, 167, 150, 138, 126, 119, 112, 112, 32.74526 + 112, 117, 128, 134, 153, 167, 174, 188, 190, 133, 31, 28, 36, 43, 52, 55, 32.74527 + 48, 39, 34, 39, 44, 156, 231, 238, 238, 238, 239, 239, 241, 241, 243, 223, 32.74528 + 34, 24, 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 32.74529 + 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 32.74530 + 38, 156, 237, 255, 252, 249, 250, 249, 249, 219, 35, 24, 31, 38, 48, 55, 32.74531 + 52, 45, 35, 32, 20, 52, 185, 187, 172, 153, 131, 112, 95, 81, 61, 47, 32.74532 + 35, 24, 16, 12, 6, 5, 2, 1, 2, 3, 5, 11, 16, 22, 31, 41, 32.74533 + 54, 71, 88, 106, 127, 144, 161, 171, 176, 81, 31, 37, 37, 48, 52, 58, 32.74534 + 60, 55, 44, 38, 30, 32, 87, 191, 191, 187, 173, 157, 140, 126, 112, 101, 32.74535 + 92, 88, 87, 91, 98, 107, 120, 131, 143, 164, 175, 190, 199, 171, 29, 20, 32.74536 + 30, 38, 49, 59, 63, 60, 49, 43, 37, 43, 44, 148, 236, 242, 241, 212, 32.74537 + 55, 37, 35, 40, 43, 55, 57, 57, 60, 47, 49, 47, 27, 44, 111, 162, 32.74538 + 166, 122, 44, 33, 40, 43, 45, 54, 64, 64, 54, 45, 38, 32, 31, 91, 32.74539 + 226, 232, 229, 229, 229, 230, 228, 230, 229, 230, 213, 71, 33, 32, 32, 50, 32.74540 + 55, 60, 53, 53, 38, 35, 28, 39, 178, 240, 239, 242, 247, 247, 249, 230, 32.74541 + 158, 30, 32, 31, 31, 31, 46, 175, 228, 251, 244, 245, 253, 247, 251, 233, 32.74542 + 37, 25, 31, 41, 46, 54, 65, 62, 56, 45, 45, 42, 36, 69, 32, 26, 32.74543 + 40, 50, 57, 57, 36, 27, 33, 34, 134, 212, 223, 217, 201, 197, 180, 163, 32.74544 + 148, 138, 128, 119, 113, 110, 112, 117, 128, 129, 149, 168, 175, 180, 192, 143, 32.74545 + 31, 25, 33, 41, 51, 56, 47, 37, 29, 34, 38, 151, 226, 236, 241, 243, 32.74546 + 239, 239, 241, 241, 243, 223, 35, 24, 31, 40, 47, 56, 53, 44, 38, 32, 32.74547 + 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 32.74548 + 49, 57, 49, 42, 32, 34, 38, 156, 237, 253, 249, 251, 252, 249, 249, 230, 32.74549 + 36, 24, 31, 37, 47, 54, 52, 45, 34, 31, 23, 68, 185, 188, 169, 151, 32.74550 + 131, 111, 95, 80, 61, 47, 34, 24, 16, 11, 6, 5, 2, 1, 1, 3, 32.74551 + 5, 11, 16, 22, 32, 41, 56, 72, 89, 107, 128, 146, 163, 172, 169, 62, 32.74552 + 37, 28, 41, 50, 45, 63, 58, 57, 44, 38, 32, 33, 97, 183, 189, 186, 32.74553 + 172, 154, 139, 123, 105, 91, 85, 82, 80, 85, 91, 102, 113, 126, 140, 164, 32.74554 + 168, 190, 209, 190, 28, 21, 31, 38, 49, 59, 62, 59, 48, 43, 42, 29, 32.74555 + 36, 151, 238, 244, 231, 143, 33, 26, 38, 40, 54, 62, 60, 59, 50, 39, 32.74556 + 39, 34, 54, 146, 231, 237, 235, 228, 187, 58, 30, 36, 39, 46, 59, 61, 32.74557 + 53, 43, 37, 33, 32, 91, 215, 235, 232, 223, 225, 226, 221, 225, 231, 220, 32.74558 + 214, 159, 28, 30, 36, 44, 52, 53, 62, 54, 42, 41, 27, 34, 92, 221, 32.74559 + 242, 244, 240, 246, 246, 229, 91, 31, 29, 30, 25, 37, 61, 220, 242, 245, 32.74560 + 247, 249, 245, 252, 245, 231, 39, 25, 32, 40, 44, 54, 69, 66, 61, 49, 32.74561 + 46, 48, 42, 28, 34, 38, 49, 50, 67, 55, 45, 38, 33, 39, 48, 186, 32.74562 + 213, 211, 213, 194, 180, 166, 150, 140, 129, 121, 114, 112, 113, 117, 123, 136, 32.74563 + 146, 157, 180, 181, 192, 138, 32, 25, 33, 41, 51, 58, 50, 39, 32, 35, 32.74564 + 39, 152, 230, 238, 237, 235, 239, 239, 241, 241, 243, 223, 35, 24, 31, 40, 32.74565 + 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 32.74566 + 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 38, 156, 236, 252, 32.74567 + 248, 254, 255, 248, 243, 229, 38, 26, 33, 39, 48, 55, 53, 45, 34, 31, 32.74568 + 26, 82, 186, 188, 168, 150, 131, 112, 94, 78, 60, 47, 34, 24, 16, 11, 32.74569 + 6, 4, 2, 1, 2, 3, 5, 11, 16, 22, 33, 43, 57, 73, 89, 108, 32.74570 + 129, 147, 164, 174, 168, 66, 34, 34, 38, 46, 59, 57, 57, 54, 51, 33, 32.74571 + 32, 38, 87, 193, 192, 184, 171, 154, 136, 119, 102, 88, 83, 78, 76, 81, 32.74572 + 88, 98, 109, 122, 135, 159, 170, 190, 205, 197, 33, 16, 29, 38, 46, 57, 32.74573 + 65, 62, 50, 46, 39, 36, 33, 101, 234, 245, 222, 81, 31, 26, 38, 49, 32.74574 + 60, 64, 57, 48, 45, 30, 33, 36, 147, 231, 245, 246, 247, 241, 231, 145, 32.74575 + 27, 20, 35, 44, 52, 59, 54, 44, 36, 31, 30, 87, 216, 228, 223, 221, 32.74576 + 221, 220, 219, 220, 221, 218, 224, 207, 55, 31, 39, 33, 44, 54, 60, 56, 32.74577 + 49, 42, 31, 33, 47, 198, 233, 248, 243, 249, 244, 218, 31, 28, 26, 33, 32.74578 + 26, 35, 139, 225, 240, 246, 244, 244, 244, 245, 249, 229, 38, 23, 32, 40, 32.74579 + 45, 53, 65, 71, 73, 53, 56, 53, 37, 34, 42, 48, 53, 64, 71, 63, 32.74580 + 51, 43, 37, 33, 35, 78, 199, 213, 210, 195, 182, 168, 155, 146, 134, 124, 32.74581 + 117, 113, 113, 115, 120, 129, 146, 159, 172, 185, 192, 140, 31, 24, 34, 43, 32.74582 + 52, 57, 50, 39, 33, 32, 41, 152, 227, 239, 238, 238, 239, 240, 242, 241, 32.74583 + 243, 223, 36, 23, 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 32.74584 + 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32.74585 + 32, 34, 38, 156, 237, 252, 251, 252, 252, 251, 249, 229, 40, 29, 33, 38, 32.74586 + 47, 56, 51, 46, 36, 31, 27, 84, 180, 186, 167, 151, 131, 111, 93, 77, 32.74587 + 59, 46, 34, 24, 16, 11, 5, 4, 2, 1, 2, 4, 6, 11, 16, 22, 32.74588 + 33, 43, 57, 73, 89, 107, 129, 146, 165, 172, 171, 74, 35, 28, 45, 46, 32.74589 + 50, 60, 63, 52, 44, 40, 33, 33, 92, 191, 191, 183, 169, 154, 135, 119, 32.74590 + 103, 90, 82, 77, 76, 80, 87, 95, 108, 121, 135, 153, 171, 188, 208, 197, 32.74591 + 33, 19, 29, 38, 47, 57, 64, 60, 49, 45, 35, 31, 39, 88, 231, 232, 32.74592 + 184, 45, 31, 29, 41, 51, 60, 63, 54, 45, 33, 36, 35, 70, 222, 245, 32.74593 + 244, 249, 250, 245, 249, 199, 39, 26, 30, 40, 51, 58, 54, 44, 37, 33, 32.74594 + 30, 87, 213, 225, 220, 216, 216, 215, 214, 214, 211, 218, 218, 211, 126, 32, 32.74595 + 33, 39, 43, 52, 59, 58, 51, 43, 34, 33, 36, 115, 237, 248, 250, 251, 32.74596 + 230, 168, 32, 29, 31, 27, 32, 31, 192, 238, 241, 243, 242, 241, 241, 242, 32.74597 + 246, 227, 37, 23, 31, 40, 45, 54, 66, 72, 76, 76, 57, 53, 52, 34, 32.74598 + 54, 57, 59, 69, 77, 70, 59, 49, 40, 34, 30, 36, 130, 209, 201, 204, 32.74599 + 182, 171, 160, 150, 138, 129, 120, 115, 114, 116, 119, 129, 145, 158, 172, 184, 32.74600 + 191, 140, 30, 24, 34, 43, 53, 57, 51, 40, 33, 31, 40, 152, 227, 239, 32.74601 + 238, 238, 239, 240, 242, 241, 243, 223, 36, 23, 31, 40, 47, 56, 53, 44, 32.74602 + 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 32.74603 + 35, 44, 49, 57, 49, 42, 32, 34, 38, 155, 237, 251, 251, 251, 252, 251, 32.74604 + 249, 229, 36, 23, 33, 39, 46, 55, 51, 45, 34, 37, 33, 84, 188, 188, 32.74605 + 166, 148, 131, 112, 91, 75, 59, 46, 34, 24, 16, 11, 5, 4, 2, 1, 32.74606 + 3, 4, 6, 11, 16, 23, 33, 42, 57, 73, 89, 107, 129, 146, 163, 172, 32.74607 + 174, 60, 33, 31, 38, 43, 56, 58, 63, 52, 41, 43, 33, 32, 96, 187, 32.74608 + 191, 184, 171, 156, 137, 121, 107, 92, 84, 80, 78, 83, 89, 97, 109, 121, 32.74609 + 138, 151, 172, 187, 209, 196, 31, 22, 30, 39, 47, 56, 64, 59, 48, 43, 32.74610 + 30, 34, 27, 117, 234, 225, 137, 34, 35, 37, 44, 51, 59, 60, 50, 42, 32.74611 + 40, 38, 29, 142, 236, 245, 251, 253, 252, 246, 249, 227, 36, 29, 32, 43, 32.74612 + 50, 57, 52, 44, 38, 33, 31, 87, 209, 222, 215, 210, 207, 207, 208, 206, 32.74613 + 205, 212, 212, 209, 190, 48, 29, 32, 40, 49, 58, 60, 55, 47, 39, 36, 32.74614 + 26, 42, 227, 243, 245, 254, 223, 108, 37, 34, 39, 34, 31, 69, 226, 237, 32.74615 + 240, 241, 238, 237, 237, 239, 243, 225, 37, 23, 31, 39, 45, 55, 67, 74, 32.74616 + 70, 76, 63, 55, 48, 37, 46, 56, 61, 69, 77, 75, 66, 55, 46, 39, 32.74617 + 26, 34, 41, 173, 207, 201, 195, 174, 164, 154, 144, 135, 124, 118, 115, 116, 32.74618 + 121, 131, 147, 159, 172, 184, 191, 139, 31, 24, 34, 44, 53, 57, 52, 41, 32.74619 + 34, 32, 40, 151, 227, 239, 238, 238, 238, 239, 242, 241, 243, 223, 36, 23, 32.74620 + 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 32.74621 + 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 38, 155, 32.74622 + 237, 252, 250, 251, 252, 252, 251, 231, 51, 24, 34, 39, 46, 56, 53, 43, 32.74623 + 34, 39, 31, 78, 185, 184, 165, 150, 132, 111, 91, 74, 57, 44, 34, 23, 32.74624 + 16, 11, 5, 4, 2, 1, 3, 4, 6, 11, 16, 22, 33, 42, 57, 72, 32.74625 + 89, 107, 127, 146, 163, 171, 175, 58, 32, 34, 35, 43, 59, 59, 57, 54, 32.74626 + 47, 42, 30, 37, 89, 187, 193, 187, 174, 159, 142, 126, 111, 97, 89, 84, 32.74627 + 84, 87, 92, 100, 111, 124, 141, 153, 174, 188, 207, 199, 30, 21, 30, 39, 32.74628 + 48, 57, 62, 58, 47, 42, 34, 33, 35, 153, 237, 231, 87, 40, 36, 40, 32.74629 + 45, 52, 58, 57, 48, 38, 34, 30, 45, 216, 233, 248, 253, 248, 250, 247, 32.74630 + 249, 230, 41, 30, 35, 41, 48, 55, 52, 44, 38, 34, 33, 89, 206, 218, 32.74631 + 210, 205, 202, 200, 200, 199, 200, 199, 210, 207, 208, 98, 34, 24, 38, 45, 32.74632 + 56, 61, 58, 50, 42, 38, 27, 37, 138, 239, 251, 238, 224, 51, 39, 34, 32.74633 + 37, 41, 27, 148, 226, 234, 239, 238, 235, 234, 234, 236, 241, 223, 36, 23, 32.74634 + 31, 38, 45, 56, 66, 72, 66, 60, 62, 49, 38, 31, 36, 46, 56, 62, 32.74635 + 70, 73, 71, 61, 52, 45, 38, 28, 34, 78, 199, 206, 188, 186, 168, 158, 32.74636 + 150, 140, 130, 122, 120, 120, 125, 136, 151, 163, 175, 186, 193, 141, 30, 24, 32.74637 + 35, 44, 53, 57, 52, 41, 34, 32, 40, 151, 227, 239, 238, 238, 238, 239, 32.74638 + 242, 241, 243, 223, 36, 23, 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 32.74639 + 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 32.74640 + 49, 42, 32, 34, 38, 155, 237, 252, 250, 251, 252, 252, 251, 231, 81, 30, 32.74641 + 32, 37, 46, 55, 52, 39, 33, 35, 29, 89, 181, 181, 166, 151, 131, 112, 32.74642 + 89, 73, 57, 44, 34, 24, 16, 11, 5, 4, 2, 1, 3, 4, 6, 11, 32.74643 + 16, 22, 32, 42, 55, 71, 87, 106, 127, 144, 161, 172, 174, 83, 33, 29, 32.74644 + 43, 46, 49, 62, 58, 55, 51, 37, 31, 36, 70, 190, 194, 190, 177, 163, 32.74645 + 146, 131, 117, 104, 95, 91, 89, 92, 98, 104, 114, 127, 144, 160, 174, 191, 32.74646 + 202, 199, 31, 21, 31, 39, 47, 57, 62, 57, 46, 41, 33, 22, 52, 162, 32.74647 + 228, 229, 39, 21, 34, 39, 45, 53, 58, 54, 46, 37, 25, 31, 79, 228, 32.74648 + 248, 251, 250, 253, 246, 246, 255, 233, 74, 31, 31, 34, 44, 53, 50, 44, 32.74649 + 38, 34, 33, 89, 205, 216, 207, 200, 196, 193, 192, 192, 193, 190, 204, 206, 32.74650 + 204, 164, 44, 30, 36, 42, 51, 60, 60, 53, 46, 42, 31, 28, 73, 220, 32.74651 + 243, 235, 156, 44, 40, 35, 32, 32, 49, 207, 223, 240, 237, 235, 232, 232, 32.74652 + 232, 235, 240, 223, 38, 23, 31, 37, 45, 55, 63, 67, 65, 58, 51, 41, 32.74653 + 44, 58, 34, 39, 53, 58, 62, 69, 73, 68, 61, 53, 42, 39, 28, 29, 32.74654 + 124, 203, 195, 190, 172, 163, 156, 148, 137, 130, 127, 128, 132, 140, 156, 166, 32.74655 + 178, 188, 194, 141, 31, 24, 34, 43, 52, 57, 51, 41, 33, 32, 40, 151, 32.74656 + 227, 239, 238, 238, 239, 239, 242, 241, 243, 223, 35, 23, 31, 40, 47, 56, 32.74657 + 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 32.74658 + 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 38, 155, 237, 252, 251, 252, 32.74659 + 252, 252, 252, 233, 97, 30, 31, 38, 45, 49, 47, 40, 31, 30, 34, 121, 32.74660 + 183, 183, 165, 148, 131, 112, 89, 72, 57, 44, 34, 24, 16, 11, 5, 4, 32.74661 + 2, 1, 2, 4, 5, 10, 15, 21, 31, 41, 54, 69, 86, 104, 124, 142, 32.74662 + 160, 170, 172, 101, 33, 30, 39, 46, 50, 62, 64, 54, 48, 39, 34, 31, 32.74663 + 47, 179, 196, 193, 181, 168, 151, 138, 124, 110, 103, 98, 96, 99, 105, 110, 32.74664 + 121, 132, 146, 167, 177, 193, 200, 188, 33, 24, 31, 40, 48, 57, 61, 56, 32.74665 + 44, 39, 34, 33, 47, 199, 242, 232, 38, 25, 32, 38, 45, 53, 56, 53, 32.74666 + 45, 36, 24, 32, 111, 222, 248, 254, 250, 254, 248, 245, 254, 235, 102, 29, 32.74667 + 26, 33, 42, 52, 50, 44, 38, 34, 33, 88, 204, 212, 202, 194, 190, 187, 32.74668 + 186, 185, 186, 189, 195, 201, 202, 200, 65, 35, 34, 37, 47, 54, 57, 56, 32.74669 + 51, 45, 26, 37, 41, 172, 234, 229, 93, 39, 35, 37, 31, 26, 110, 220, 32.74670 + 227, 236, 233, 231, 229, 229, 230, 234, 239, 221, 37, 24, 31, 37, 44, 54, 32.74671 + 60, 62, 54, 49, 39, 45, 39, 144, 30, 38, 45, 48, 53, 61, 67, 70, 32.74672 + 66, 59, 49, 37, 29, 33, 41, 171, 203, 193, 180, 170, 161, 155, 149, 142, 32.74673 + 137, 138, 140, 148, 160, 170, 180, 190, 195, 141, 30, 24, 34, 43, 51, 56, 32.74674 + 51, 41, 33, 32, 40, 152, 227, 239, 238, 238, 239, 240, 242, 241, 243, 223, 32.74675 + 35, 23, 31, 40, 47, 56, 53, 44, 38, 32, 29, 95, 229, 248, 245, 244, 32.74676 + 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 49, 57, 49, 42, 32, 34, 32.74677 + 38, 155, 237, 252, 251, 252, 252, 253, 252, 233, 95, 26, 34, 38, 43, 41, 32.74678 + 42, 44, 35, 31, 36, 136, 182, 181, 165, 148, 132, 112, 89, 72, 56, 44, 32.74679 + 34, 24, 16, 11, 5, 4, 2, 1, 2, 3, 5, 10, 14, 21, 30, 40, 32.74680 + 52, 68, 84, 102, 121, 139, 155, 169, 174, 117, 34, 32, 31, 45, 52, 58, 32.74681 + 66, 57, 48, 43, 35, 29, 36, 144, 197, 196, 185, 173, 158, 145, 132, 119, 32.74682 + 112, 108, 105, 108, 113, 118, 128, 139, 152, 170, 182, 194, 201, 165, 32, 28, 32.74683 + 32, 41, 49, 57, 61, 53, 42, 36, 19, 32, 46, 224, 243, 225, 42, 29, 32.74684 + 31, 36, 45, 55, 56, 50, 42, 35, 23, 26, 141, 238, 245, 255, 251, 241, 32.74685 + 250, 247, 249, 232, 104, 29, 29, 39, 43, 52, 50, 44, 38, 35, 33, 87, 32.74686 + 201, 209, 199, 189, 184, 180, 179, 178, 181, 188, 190, 198, 198, 197, 123, 36, 32.74687 + 31, 32, 42, 49, 54, 58, 54, 48, 45, 32, 32, 81, 217, 225, 46, 24, 32.74688 + 29, 29, 23, 34, 174, 220, 228, 225, 229, 228, 226, 226, 228, 231, 238, 221, 32.74689 + 37, 24, 31, 36, 43, 53, 59, 57, 43, 37, 32, 43, 36, 209, 86, 39, 32.74690 + 32, 35, 45, 52, 57, 66, 70, 64, 56, 46, 33, 36, 34, 76, 197, 191, 32.74691 + 188, 178, 166, 161, 161, 157, 149, 147, 149, 155, 167, 175, 184, 193, 196, 142, 32.74692 + 31, 24, 34, 42, 50, 55, 50, 40, 33, 32, 40, 152, 227, 239, 238, 238, 32.74693 + 239, 240, 242, 241, 243, 223, 35, 23, 31, 40, 47, 56, 53, 44, 38, 32, 32.74694 + 29, 95, 229, 248, 245, 244, 245, 247, 247, 243, 236, 164, 36, 26, 35, 44, 32.74695 + 49, 57, 49, 42, 32, 34, 38, 155, 237, 252, 251, 252, 253, 253, 253, 234, 32.74696 + 92, 27, 35, 32, 37, 34, 34, 37, 34, 33, 34, 130, 181, 178, 165, 149, 32.74697 + 133, 112, 90, 73, 56, 43, 34, 24, 16, 11, 5, 4, 2, 1, 1, 2, 32.74698 + 5, 8, 13, 19, 28, 39, 50, 65, 83, 99, 119, 137, 153, 167, 179, 148, 32.74699 + 37, 26, 35, 44, 41, 63, 62, 62, 51, 47, 34, 31, 32, 105, 198, 199, 32.74700 + 189, 178, 165, 153, 142, 129, 120, 115, 113, 117, 122, 127, 137, 148, 160, 174, 32.74701 + 188, 194, 200, 144, 29, 30, 34, 42, 52, 58, 58, 50, 39, 34, 27, 32, 32.74702 + 103, 225, 244, 233, 36, 29, 31, 35, 46, 55, 57, 50, 41, 34, 32, 32, 32.74703 + 163, 235, 245, 246, 255, 248, 244, 250, 248, 233, 99, 33, 35, 38, 45, 53, 32.74704 + 50, 44, 37, 34, 33, 88, 197, 206, 196, 186, 180, 176, 174, 174, 175, 179, 32.74705 + 186, 196, 196, 189, 192, 41, 31, 29, 38, 44, 51, 58, 57, 50, 45, 38, 32.74706 + 26, 28, 190, 154, 27, 28, 30, 25, 15, 50, 207, 228, 225, 225, 224, 223, 32.74707 + 222, 222, 225, 229, 235, 217, 37, 24, 30, 36, 43, 53, 58, 56, 46, 39, 32.74708 + 33, 30, 48, 206, 185, 45, 31, 31, 42, 47, 53, 66, 73, 71, 63, 47, 32.74709 + 42, 37, 31, 39, 124, 198, 193, 187, 174, 170, 171, 165, 158, 155, 158, 164, 32.74710 + 174, 181, 188, 196, 198, 144, 32, 25, 34, 41, 49, 54, 49, 40, 34, 33, 32.74711 + 41, 151, 226, 238, 238, 238, 239, 240, 242, 241, 245, 223, 35, 22, 31, 40, 32.74712 + 48, 56, 55, 44, 39, 33, 30, 94, 228, 247, 246, 245, 245, 246, 246, 243, 32.74713 + 236, 164, 36, 26, 35, 44, 49, 56, 49, 41, 33, 34, 39, 155, 236, 251, 32.74714 + 251, 252, 251, 252, 253, 236, 99, 36, 39, 27, 34, 34, 32, 30, 34, 40, 32.74715 + 41, 130, 191, 182, 166, 147, 132, 112, 89, 73, 57, 45, 34, 24, 16, 11, 32.74716 + 5, 4, 2, 1, 0, 1, 3, 7, 12, 19, 26, 35, 48, 62, 77, 96, 32.74717 + 117, 133, 149, 168, 176, 181, 39, 20, 33, 34, 51, 58, 67, 64, 55, 44, 32.74718 + 35, 32, 31, 39, 193, 207, 187, 186, 182, 159, 160, 137, 133, 127, 127, 130, 32.74719 + 137, 143, 147, 155, 168, 182, 200, 197, 199, 109, 33, 29, 38, 42, 59, 67, 32.74720 + 44, 44, 35, 31, 30, 28, 145, 235, 243, 223, 36, 21, 30, 36, 48, 57, 32.74721 + 62, 55, 43, 35, 28, 31, 165, 235, 241, 253, 246, 250, 246, 248, 246, 234, 32.74722 + 96, 34, 34, 36, 49, 57, 51, 43, 35, 32, 33, 88, 196, 204, 196, 186, 32.74723 + 177, 171, 167, 166, 165, 172, 179, 189, 188, 198, 192, 109, 32, 21, 35, 43, 32.74724 + 44, 63, 60, 64, 49, 48, 28, 28, 103, 86, 32, 32, 30, 31, 32, 124, 32.74725 + 212, 226, 220, 219, 218, 217, 216, 216, 220, 223, 229, 214, 39, 27, 29, 37, 32.74726 + 43, 53, 65, 59, 48, 39, 34, 40, 53, 221, 216, 148, 37, 29, 33, 40, 32.74727 + 56, 61, 62, 74, 58, 57, 50, 39, 37, 36, 40, 169, 196, 203, 186, 183, 32.74728 + 183, 166, 170, 163, 168, 176, 179, 187, 192, 196, 202, 145, 36, 28, 35, 41, 32.74729 + 48, 52, 48, 40, 36, 34, 42, 151, 225, 236, 239, 238, 239, 239, 243, 244, 32.74730 + 247, 224, 34, 22, 31, 41, 49, 58, 57, 47, 41, 35, 31, 94, 225, 245, 32.74731 + 247, 248, 245, 246, 245, 242, 235, 164, 35, 26, 36, 44, 49, 55, 47, 40, 32.74732 + 34, 35, 39, 154, 235, 251, 251, 251, 249, 249, 252, 240, 111, 47, 48, 31, 32.74733 + 42, 38, 42, 38, 46, 40, 49, 139, 190, 185, 171, 145, 128, 109, 90, 75, 32.74734 + 60, 48, 34, 24, 16, 11, 6, 4, 2, 1, 0, 1, 2, 7, 11, 17, 32.74735 + 25, 34, 45, 58, 73, 92, 112, 128, 144, 163, 184, 179, 86, 30, 27, 34, 32.74736 + 47, 56, 64, 64, 58, 50, 41, 35, 27, 35, 131, 200, 196, 197, 177, 183, 32.74737 + 164, 153, 144, 141, 139, 143, 148, 154, 160, 167, 176, 198, 196, 205, 196, 52, 32.74738 + 34, 23, 35, 48, 62, 64, 53, 49, 39, 33, 30, 43, 199, 244, 239, 219, 32.74739 + 35, 21, 32, 38, 48, 57, 63, 58, 44, 36, 28, 39, 112, 232, 242, 255, 32.74740 + 250, 246, 245, 248, 246, 234, 97, 34, 34, 37, 49, 57, 51, 42, 35, 32, 32.74741 + 33, 88, 193, 201, 193, 183, 174, 168, 163, 161, 161, 164, 167, 180, 186, 193, 32.74742 + 201, 167, 32, 27, 36, 37, 49, 47, 64, 71, 61, 49, 45, 29, 35, 32, 32.74743 + 36, 47, 31, 34, 38, 172, 218, 217, 215, 217, 214, 213, 212, 213, 216, 220, 32.74744 + 225, 212, 39, 27, 29, 36, 42, 53, 65, 59, 49, 38, 35, 42, 46, 212, 32.74745 + 237, 214, 71, 32, 40, 40, 41, 49, 69, 68, 67, 56, 52, 50, 38, 38, 32.74746 + 33, 79, 191, 198, 199, 198, 178, 182, 172, 172, 175, 182, 185, 190, 195, 199, 32.74747 + 203, 147, 37, 30, 35, 41, 49, 53, 49, 41, 37, 35, 42, 151, 224, 237, 32.74748 + 240, 239, 240, 240, 243, 243, 247, 224, 34, 21, 30, 40, 48, 57, 57, 47, 32.74749 + 42, 35, 31, 94, 225, 245, 249, 250, 245, 246, 245, 242, 236, 165, 35, 26, 32.74750 + 37, 44, 49, 56, 46, 40, 34, 36, 39, 155, 236, 251, 251, 250, 247, 248, 32.74751 + 253, 245, 190, 164, 146, 159, 146, 135, 149, 146, 140, 148, 144, 182, 191, 187, 32.74752 + 163, 151, 128, 108, 91, 77, 61, 48, 34, 23, 16, 11, 6, 5, 2, 1, 32.74753 + 0, 0, 2, 6, 11, 16, 24, 32, 44, 56, 72, 88, 108, 123, 139, 159, 32.74754 + 176, 182, 148, 36, 38, 32, 33, 47, 57, 62, 62, 55, 47, 39, 30, 34, 32.74755 + 61, 195, 202, 198, 199, 180, 167, 166, 158, 156, 156, 157, 159, 164, 171, 179, 32.74756 + 188, 193, 208, 195, 164, 43, 30, 35, 37, 52, 57, 55, 54, 41, 34, 32, 32.74757 + 24, 85, 233, 249, 243, 231, 63, 33, 34, 37, 45, 55, 60, 55, 43, 35, 32.74758 + 29, 34, 97, 229, 245, 246, 245, 247, 244, 248, 247, 235, 97, 34, 34, 36, 32.74759 + 46, 53, 50, 42, 36, 33, 33, 87, 192, 199, 189, 179, 169, 163, 160, 156, 32.74760 + 153, 158, 162, 171, 184, 186, 194, 197, 72, 32, 36, 39, 43, 49, 63, 67, 32.74761 + 71, 49, 49, 43, 34, 40, 44, 33, 27, 32, 77, 201, 212, 215, 212, 209, 32.74762 + 209, 207, 208, 209, 211, 218, 224, 210, 37, 25, 27, 35, 41, 51, 63, 56, 32.74763 + 49, 37, 28, 35, 44, 209, 243, 242, 174, 41, 27, 30, 49, 48, 60, 65, 32.74764 + 72, 65, 58, 54, 40, 35, 36, 31, 119, 195, 203, 193, 201, 187, 181, 180, 32.74765 + 182, 186, 189, 194, 199, 202, 207, 149, 37, 29, 35, 43, 50, 56, 52, 43, 32.74766 + 38, 34, 40, 150, 225, 239, 242, 241, 242, 240, 243, 241, 245, 222, 34, 21, 32.74767 + 29, 37, 45, 54, 54, 45, 39, 33, 30, 94, 227, 248, 250, 251, 246, 247, 32.74768 + 245, 243, 237, 165, 36, 26, 37, 45, 50, 57, 48, 41, 34, 36, 40, 156, 32.74769 + 237, 252, 251, 249, 249, 250, 255, 253, 242, 239, 232, 216, 214, 208, 208, 203, 32.74770 + 206, 203, 203, 203, 202, 195, 169, 148, 130, 111, 89, 75, 62, 47, 33, 20, 32.74771 + 15, 12, 6, 5, 2, 1, 0, 0, 2, 6, 10, 15, 22, 29, 41, 53, 32.74772 + 68, 85, 103, 118, 135, 154, 166, 182, 177, 73, 35, 32, 32, 40, 54, 63, 32.74773 + 65, 60, 52, 43, 34, 34, 45, 101, 198, 208, 197, 199, 188, 175, 174, 171, 32.74774 + 171, 172, 172, 174, 183, 190, 200, 198, 213, 203, 101, 36, 34, 29, 48, 58, 32.74775 + 61, 56, 54, 36, 36, 40, 47, 168, 241, 250, 242, 228, 99, 32, 35, 34, 32.74776 + 43, 52, 57, 54, 42, 34, 25, 39, 46, 217, 242, 249, 255, 245, 246, 250, 32.74777 + 248, 235, 98, 34, 34, 35, 44, 51, 48, 42, 37, 34, 32, 85, 191, 199, 32.74778 + 187, 176, 166, 159, 154, 152, 149, 153, 160, 162, 177, 187, 186, 192, 141, 38, 32.74779 + 41, 39, 36, 53, 59, 60, 74, 67, 54, 49, 43, 51, 44, 37, 28, 27, 32.74780 + 140, 205, 206, 212, 208, 203, 203, 203, 202, 204, 209, 216, 225, 210, 35, 22, 32.74781 + 27, 35, 42, 50, 62, 55, 46, 40, 28, 28, 46, 217, 239, 235, 228, 115, 32.74782 + 36, 29, 37, 47, 53, 61, 69, 76, 65, 53, 52, 35, 37, 39, 39, 164, 32.74783 + 199, 199, 205, 202, 188, 192, 189, 193, 196, 201, 205, 207, 211, 152, 36, 28, 32.74784 + 35, 42, 51, 57, 54, 44, 37, 33, 39, 150, 227, 241, 243, 244, 245, 242, 32.74785 + 243, 240, 242, 221, 34, 23, 28, 36, 42, 51, 52, 43, 37, 31, 28, 94, 32.74786 + 228, 249, 250, 250, 246, 247, 246, 243, 238, 167, 36, 25, 36, 44, 51, 58, 32.74787 + 49, 41, 34, 36, 40, 157, 239, 252, 251, 250, 250, 251, 254, 253, 243, 236, 32.74788 + 226, 165, 104, 57, 49, 62, 97, 163, 201, 205, 196, 191, 164, 152, 132, 114, 32.74789 + 93, 78, 63, 49, 34, 22, 15, 12, 6, 5, 2, 1, 0, 0, 1, 6, 32.74790 + 8, 13, 20, 27, 36, 48, 62, 78, 96, 111, 127, 146, 167, 173, 181, 146, 32.74791 + 32, 25, 42, 39, 54, 64, 67, 64, 57, 47, 37, 34, 32, 44, 156, 205, 32.74792 + 214, 201, 196, 196, 190, 188, 185, 185, 186, 188, 193, 201, 206, 210, 209, 189, 32.74793 + 34, 34, 26, 36, 48, 56, 57, 44, 39, 28, 28, 30, 87, 212, 234, 245, 32.74794 + 240, 230, 159, 47, 37, 34, 42, 50, 56, 56, 46, 38, 36, 27, 35, 147, 32.74795 + 234, 255, 244, 252, 253, 255, 250, 234, 97, 34, 33, 34, 41, 49, 48, 44, 32.74796 + 39, 34, 30, 84, 193, 200, 186, 173, 164, 157, 152, 148, 150, 145, 155, 156, 32.74797 + 167, 186, 188, 192, 191, 68, 42, 29, 38, 42, 55, 61, 70, 77, 62, 54, 32.74798 + 44, 46, 37, 36, 29, 42, 185, 208, 207, 203, 202, 202, 197, 198, 199, 201, 32.74799 + 206, 214, 225, 210, 34, 21, 27, 36, 42, 51, 61, 55, 46, 44, 33, 27, 32.74800 + 47, 220, 239, 244, 235, 202, 60, 36, 30, 38, 44, 54, 66, 76, 74, 57, 32.74801 + 63, 47, 37, 38, 29, 79, 194, 210, 205, 209, 206, 201, 197, 201, 204, 209, 32.74802 + 213, 214, 215, 155, 36, 26, 32, 39, 49, 56, 53, 43, 37, 32, 38, 150, 32.74803 + 228, 242, 244, 245, 246, 243, 242, 238, 241, 220, 35, 24, 29, 37, 42, 51, 32.74804 + 52, 42, 36, 29, 27, 93, 230, 251, 249, 249, 245, 246, 245, 242, 238, 167, 32.74805 + 35, 24, 34, 43, 51, 58, 50, 42, 34, 36, 41, 157, 237, 252, 252, 252, 32.74806 + 251, 250, 250, 245, 233, 223, 106, 41, 39, 38, 25, 37, 39, 42, 87, 186, 32.74807 + 189, 186, 167, 146, 134, 117, 99, 84, 66, 51, 37, 25, 16, 12, 6, 5, 32.74808 + 3, 1, 0, 0, 1, 5, 7, 12, 18, 24, 33, 45, 58, 72, 88, 104, 32.74809 + 119, 138, 160, 163, 178, 178, 83, 26, 37, 39, 48, 59, 66, 67, 63, 56, 32.74810 + 45, 37, 28, 43, 65, 177, 203, 213, 206, 205, 201, 198, 195, 196, 197, 199, 32.74811 + 204, 208, 215, 216, 195, 80, 37, 26, 34, 48, 62, 68, 64, 43, 33, 31, 32.74812 + 27, 37, 172, 232, 239, 240, 235, 228, 192, 50, 37, 33, 40, 47, 56, 59, 32.74813 + 52, 46, 36, 37, 33, 79, 224, 235, 251, 251, 255, 255, 249, 234, 97, 34, 32.74814 + 33, 33, 41, 49, 49, 45, 40, 35, 30, 83, 196, 202, 188, 175, 164, 155, 32.74815 + 150, 145, 146, 137, 150, 157, 163, 176, 183, 192, 201, 127, 24, 26, 38, 44, 32.74816 + 47, 61, 67, 70, 63, 63, 48, 46, 38, 26, 26, 97, 202, 211, 203, 200, 32.74817 + 203, 192, 191, 191, 195, 197, 203, 213, 224, 210, 33, 20, 28, 39, 44, 53, 32.74818 + 62, 55, 49, 40, 30, 30, 51, 221, 238, 252, 254, 233, 131, 39, 38, 36, 32.74819 + 35, 48, 62, 67, 81, 63, 59, 55, 46, 34, 37, 26, 131, 210, 215, 211, 32.74820 + 217, 206, 205, 209, 210, 215, 220, 220, 220, 157, 35, 25, 30, 38, 48, 56, 32.74821 + 53, 43, 36, 32, 39, 151, 230, 244, 245, 243, 247, 243, 241, 237, 241, 221, 32.74822 + 37, 27, 32, 39, 45, 53, 53, 43, 36, 30, 26, 93, 232, 253, 250, 247, 32.74823 + 244, 245, 245, 243, 238, 165, 35, 23, 33, 41, 50, 59, 49, 42, 33, 35, 32.74824 + 40, 156, 235, 250, 252, 252, 252, 251, 248, 240, 225, 106, 34, 32, 31, 25, 32.74825 + 26, 29, 22, 36, 37, 89, 185, 188, 164, 154, 135, 118, 103, 87, 67, 50, 32.74826 + 38, 25, 17, 12, 6, 5, 3, 1, 0, 0, 1, 5, 6, 10, 16, 22, 32.74827 + 30, 41, 53, 65, 82, 95, 110, 128, 142, 159, 171, 172, 153, 67, 32, 35, 32.74828 + 40, 49, 59, 63, 64, 61, 54, 46, 37, 28, 30, 52, 178, 204, 210, 216, 32.74829 + 209, 205, 202, 203, 206, 209, 213, 213, 209, 197, 95, 34, 29, 38, 42, 50, 32.74830 + 64, 66, 57, 36, 28, 26, 31, 94, 214, 228, 228, 232, 233, 233, 217, 106, 32.74831 + 35, 27, 37, 44, 55, 61, 62, 56, 43, 33, 25, 44, 139, 229, 242, 255, 32.74832 + 255, 255, 247, 231, 97, 34, 32, 32, 42, 51, 51, 46, 42, 35, 29, 83, 32.74833 + 199, 206, 191, 177, 166, 156, 148, 142, 140, 138, 146, 154, 161, 169, 174, 184, 32.74834 + 197, 175, 39, 27, 33, 46, 45, 57, 63, 69, 64, 60, 43, 36, 37, 36, 32.74835 + 39, 158, 204, 209, 196, 198, 196, 184, 184, 186, 189, 194, 201, 211, 224, 209, 32.74836 + 33, 20, 29, 41, 48, 56, 64, 55, 48, 31, 29, 33, 54, 222, 236, 246, 32.74837 + 251, 245, 224, 89, 33, 34, 37, 45, 55, 60, 74, 67, 58, 57, 53, 39, 32.74838 + 28, 32, 46, 170, 211, 226, 213, 214, 212, 216, 217, 222, 225, 224, 222, 158, 32.74839 + 34, 24, 29, 37, 49, 56, 53, 43, 36, 32, 38, 151, 232, 247, 244, 243, 32.74840 + 244, 241, 241, 239, 241, 223, 38, 30, 35, 43, 48, 56, 56, 46, 38, 30, 32.74841 + 26, 93, 233, 254, 249, 246, 243, 244, 245, 243, 237, 165, 34, 23, 32, 40, 32.74842 + 50, 59, 50, 41, 32, 34, 39, 155, 232, 247, 249, 251, 252, 252, 251, 238, 32.74843 + 180, 51, 42, 35, 42, 38, 39, 40, 39, 34, 29, 42, 172, 182, 168, 152, 32.74844 + 136, 118, 102, 85, 64, 47, 34, 24, 16, 12, 7, 5, 3, 1, 0, 0, 32.74845 + 1, 4, 6, 8, 14, 20, 26, 36, 46, 59, 74, 86, 101, 117, 131, 156, 32.74846 + 160, 176, 183, 130, 45, 33, 39, 41, 48, 54, 57, 63, 62, 56, 43, 40, 32.74847 + 35, 30, 60, 141, 206, 204, 209, 207, 204, 205, 207, 209, 209, 207, 183, 74, 32.74848 + 38, 32, 29, 42, 52, 59, 63, 59, 47, 39, 36, 34, 60, 184, 216, 233, 32.74849 + 222, 232, 228, 225, 224, 173, 38, 28, 33, 39, 50, 61, 65, 64, 54, 46, 32.74850 + 36, 31, 40, 158, 225, 238, 246, 249, 242, 229, 96, 34, 32, 33, 44, 53, 32.74851 + 52, 47, 41, 34, 27, 82, 198, 207, 193, 180, 168, 158, 147, 141, 138, 146, 32.74852 + 142, 142, 158, 169, 175, 183, 193, 191, 95, 30, 35, 30, 52, 51, 59, 68, 32.74853 + 54, 50, 51, 37, 25, 26, 69, 190, 203, 209, 200, 190, 178, 188, 179, 181, 32.74854 + 186, 192, 199, 209, 221, 205, 32, 20, 30, 42, 49, 57, 65, 56, 43, 32, 32.74855 + 36, 33, 49, 223, 240, 247, 243, 250, 234, 182, 44, 27, 33, 41, 50, 56, 32.74856 + 58, 68, 71, 61, 50, 39, 36, 30, 30, 90, 208, 219, 223, 219, 217, 221, 32.74857 + 221, 225, 229, 226, 222, 158, 34, 24, 29, 38, 50, 58, 54, 44, 35, 32, 32.74858 + 37, 151, 233, 247, 243, 241, 242, 240, 241, 240, 243, 224, 39, 30, 36, 45, 32.74859 + 51, 59, 58, 48, 39, 31, 26, 92, 232, 254, 249, 246, 243, 245, 247, 245, 32.74860 + 238, 165, 35, 24, 31, 40, 50, 59, 50, 41, 32, 33, 38, 154, 233, 246, 32.74861 + 247, 248, 250, 250, 249, 235, 103, 39, 35, 36, 41, 47, 50, 49, 45, 34, 32.74862 + 25, 31, 121, 182, 173, 156, 137, 118, 100, 84, 65, 49, 35, 24, 16, 12, 32.74863 + 7, 5, 3, 1, 0, 1, 1, 2, 4, 8, 12, 16, 23, 29, 41, 53, 32.74864 + 65, 78, 94, 108, 126, 136, 156, 170, 181, 184, 129, 41, 26, 30, 34, 43, 32.74865 + 48, 46, 57, 67, 59, 53, 32, 35, 34, 39, 80, 161, 198, 209, 194, 197, 32.74866 + 205, 194, 160, 106, 37, 33, 35, 40, 42, 47, 51, 54, 51, 57, 35, 33, 32.74867 + 37, 47, 183, 209, 215, 218, 219, 221, 223, 225, 225, 210, 87, 36, 28, 35, 32.74868 + 38, 54, 64, 66, 64, 58, 39, 34, 25, 44, 134, 216, 226, 225, 243, 219, 32.74869 + 95, 37, 33, 34, 46, 54, 58, 51, 39, 32, 31, 49, 195, 205, 194, 180, 32.74870 + 174, 156, 152, 139, 140, 139, 139, 144, 153, 161, 169, 178, 190, 193, 153, 37, 32.74871 + 35, 34, 41, 47, 53, 65, 55, 46, 39, 42, 23, 26, 126, 192, 209, 200, 32.74872 + 193, 183, 179, 179, 174, 181, 177, 191, 196, 205, 214, 203, 30, 19, 29, 39, 32.74873 + 49, 59, 61, 57, 49, 41, 32, 34, 55, 221, 236, 247, 248, 240, 241, 227, 32.74874 + 105, 39, 25, 42, 40, 54, 52, 66, 61, 62, 59, 48, 42, 37, 34, 36, 32.74875 + 152, 215, 221, 225, 224, 217, 231, 224, 230, 229, 221, 153, 35, 23, 27, 37, 32.74876 + 53, 62, 54, 43, 35, 35, 31, 151, 228, 246, 242, 242, 241, 236, 242, 237, 32.74877 + 245, 227, 32, 31, 33, 41, 51, 57, 56, 49, 38, 31, 23, 96, 229, 246, 32.74878 + 255, 246, 243, 244, 251, 249, 235, 167, 37, 29, 36, 42, 49, 64, 49, 42, 32.74879 + 34, 28, 40, 148, 239, 244, 248, 243, 243, 242, 249, 227, 67, 25, 30, 43, 32.74880 + 41, 51, 57, 53, 51, 42, 30, 39, 91, 174, 170, 155, 136, 117, 96, 82, 32.74881 + 68, 54, 39, 27, 18, 13, 7, 4, 2, 2, 0, 0, 2, 2, 4, 6, 32.74882 + 10, 13, 18, 25, 35, 46, 58, 69, 83, 98, 118, 129, 149, 164, 176, 191, 32.74883 + 174, 128, 36, 27, 30, 30, 42, 53, 50, 55, 59, 57, 50, 41, 30, 31, 32.74884 + 35, 39, 46, 88, 104, 102, 77, 48, 44, 32, 34, 31, 36, 46, 50, 46, 32.74885 + 41, 42, 40, 35, 34, 41, 38, 134, 201, 211, 208, 209, 211, 213, 215, 218, 32.74886 + 219, 209, 173, 49, 27, 36, 42, 45, 49, 62, 66, 62, 50, 44, 33, 25, 32.74887 + 34, 46, 97, 137, 171, 230, 93, 29, 34, 41, 45, 50, 52, 46, 34, 27, 32.74888 + 22, 35, 194, 199, 194, 189, 174, 161, 147, 140, 139, 138, 138, 142, 149, 157, 32.74889 + 165, 175, 181, 196, 199, 111, 39, 29, 32, 40, 47, 62, 49, 49, 39, 35, 32.74890 + 27, 40, 169, 205, 203, 194, 190, 180, 173, 171, 172, 173, 187, 189, 193, 211, 32.74891 + 213, 196, 29, 20, 33, 42, 51, 58, 58, 54, 46, 39, 30, 35, 50, 213, 32.74892 + 238, 244, 237, 250, 243, 228, 199, 59, 35, 31, 42, 53, 47, 51, 56, 59, 32.74893 + 58, 51, 46, 31, 34, 30, 58, 207, 224, 228, 225, 230, 218, 229, 236, 227, 32.74894 + 227, 152, 35, 25, 31, 41, 54, 61, 54, 44, 35, 23, 29, 125, 233, 245, 32.74895 + 242, 241, 242, 236, 246, 249, 232, 223, 35, 22, 31, 39, 50, 55, 55, 48, 32.74896 + 39, 33, 28, 42, 225, 245, 243, 243, 246, 244, 247, 240, 239, 158, 31, 31, 32.74897 + 30, 42, 52, 59, 46, 44, 39, 32, 28, 104, 227, 251, 243, 244, 239, 247, 32.74898 + 233, 226, 34, 32, 28, 28, 40, 57, 58, 61, 48, 43, 36, 18, 89, 172, 32.74899 + 168, 159, 135, 114, 94, 79, 69, 56, 41, 27, 18, 13, 7, 4, 2, 2, 32.74900 + 0, 0, 1, 1, 3, 5, 9, 12, 16, 21, 30, 41, 50, 62, 75, 90, 32.74901 + 105, 119, 136, 151, 163, 178, 187, 180, 124, 50, 23, 28, 27, 34, 39, 42, 32.74902 + 45, 46, 55, 51, 38, 37, 41, 35, 37, 44, 33, 35, 34, 27, 32, 29, 32.74903 + 30, 44, 52, 49, 45, 39, 38, 44, 33, 33, 45, 48, 145, 199, 189, 200, 32.74904 + 198, 199, 200, 201, 202, 204, 207, 205, 201, 146, 51, 34, 33, 34, 36, 48, 32.74905 + 47, 50, 49, 38, 30, 30, 29, 34, 51, 75, 209, 218, 97, 28, 26, 39, 32.74906 + 49, 50, 50, 45, 38, 31, 25, 30, 135, 188, 183, 182, 172, 161, 148, 140, 32.74907 + 137, 138, 137, 141, 146, 154, 164, 174, 194, 200, 204, 189, 61, 34, 29, 39, 32.74908 + 44, 53, 50, 47, 36, 34, 28, 80, 197, 207, 193, 187, 185, 175, 170, 168, 32.74909 + 170, 177, 184, 186, 195, 197, 189, 159, 27, 21, 31, 39, 45, 49, 47, 45, 32.74910 + 42, 45, 31, 32, 40, 207, 222, 242, 242, 229, 239, 231, 215, 156, 43, 38, 32.74911 + 31, 42, 41, 38, 47, 48, 54, 53, 48, 49, 37, 35, 47, 102, 206, 220, 32.74912 + 228, 230, 240, 231, 235, 231, 212, 148, 30, 24, 29, 37, 47, 49, 44, 37, 32.74913 + 29, 41, 28, 89, 222, 240, 247, 239, 242, 239, 241, 236, 236, 199, 32, 13, 32.74914 + 24, 32, 40, 45, 44, 41, 34, 30, 25, 29, 218, 233, 238, 236, 246, 243, 32.74915 + 244, 236, 220, 142, 37, 33, 33, 43, 49, 53, 46, 42, 29, 30, 30, 88, 32.74916 + 232, 243, 237, 239, 239, 238, 250, 230, 40, 28, 30, 43, 49, 60, 60, 56, 32.74917 + 52, 32, 30, 30, 77, 167, 161, 150, 132, 112, 92, 79, 67, 55, 40, 27, 32.74918 + 17, 13, 7, 4, 2, 2, 0, 0, 1, 1, 3, 4, 6, 9, 13, 18, 32.74919 + 25, 34, 44, 54, 67, 79, 97, 111, 126, 142, 155, 164, 175, 182, 181, 141, 32.74920 + 54, 34, 41, 31, 41, 27, 37, 39, 36, 44, 45, 38, 28, 36, 33, 37, 32.74921 + 29, 32, 31, 27, 37, 43, 40, 43, 42, 42, 43, 36, 27, 34, 31, 37, 32.74922 + 45, 163, 191, 196, 192, 187, 186, 186, 187, 187, 187, 190, 193, 195, 197, 193, 32.74923 + 133, 43, 32, 28, 32, 37, 50, 45, 45, 38, 38, 37, 26, 31, 39, 127, 32.74924 + 226, 217, 88, 30, 35, 35, 40, 40, 39, 37, 33, 30, 27, 31, 79, 188, 32.74925 + 188, 177, 172, 157, 154, 138, 139, 139, 140, 142, 147, 155, 164, 175, 192, 201, 32.74926 + 217, 212, 145, 44, 35, 23, 43, 39, 55, 40, 31, 36, 32, 140, 197, 199, 32.74927 + 188, 184, 176, 168, 165, 165, 166, 177, 175, 185, 192, 192, 194, 118, 34, 29, 32.74928 + 36, 40, 43, 43, 42, 41, 40, 42, 34, 30, 34, 151, 223, 230, 230, 237, 32.74929 + 236, 227, 229, 211, 100, 43, 35, 33, 43, 41, 42, 38, 46, 47, 43, 39, 32.74930 + 43, 38, 24, 42, 152, 214, 226, 226, 234, 236, 235, 220, 213, 96, 35, 31, 32.74931 + 35, 38, 42, 44, 39, 36, 32, 28, 25, 45, 204, 224, 236, 242, 236, 235, 32.74932 + 236, 245, 219, 150, 36, 24, 29, 34, 40, 42, 42, 40, 37, 36, 31, 43, 32.74933 + 152, 222, 237, 236, 239, 229, 243, 231, 211, 86, 33, 26, 36, 39, 42, 39, 32.74934 + 36, 37, 30, 32, 20, 41, 216, 224, 244, 231, 237, 238, 231, 218, 71, 36, 32.74935 + 33, 32, 44, 52, 49, 49, 44, 24, 19, 30, 84, 164, 161, 145, 128, 109, 32.74936 + 92, 78, 64, 51, 38, 26, 17, 12, 7, 4, 2, 2, 0, 0, 1, 1, 32.74937 + 1, 2, 4, 6, 9, 13, 20, 28, 37, 46, 57, 69, 85, 98, 111, 125, 32.74938 + 140, 153, 164, 175, 183, 181, 180, 101, 40, 40, 20, 23, 22, 33, 30, 38, 32.74939 + 36, 42, 31, 36, 31, 35, 33, 36, 41, 41, 41, 38, 35, 42, 41, 36, 32.74940 + 36, 32, 27, 40, 39, 106, 187, 194, 193, 190, 174, 178, 173, 173, 172, 171, 32.74941 + 170, 171, 175, 180, 184, 194, 191, 141, 41, 32, 38, 25, 36, 29, 33, 32, 32.74942 + 39, 41, 26, 31, 59, 207, 219, 222, 93, 29, 38, 34, 38, 38, 37, 35, 32.74943 + 33, 34, 36, 40, 42, 134, 174, 172, 170, 157, 158, 145, 140, 140, 143, 146, 32.74944 + 149, 156, 166, 178, 189, 212, 219, 216, 216, 106, 50, 37, 36, 36, 50, 34, 32.74945 + 29, 32, 56, 183, 197, 195, 187, 178, 167, 162, 159, 158, 165, 171, 175, 179, 32.74946 + 173, 183, 176, 61, 36, 32, 35, 35, 35, 34, 33, 32, 34, 25, 29, 29, 32.74947 + 30, 62, 217, 220, 227, 224, 232, 234, 224, 221, 205, 103, 49, 23, 31, 35, 32.74948 + 31, 27, 38, 36, 36, 31, 32, 38, 37, 30, 56, 178, 212, 223, 231, 238, 32.74949 + 228, 219, 181, 51, 40, 35, 36, 34, 35, 34, 31, 33, 38, 32, 36, 33, 32.74950 + 128, 217, 221, 233, 232, 235, 232, 226, 215, 90, 28, 28, 31, 32, 35, 35, 32.74951 + 35, 35, 34, 35, 31, 36, 74, 204, 224, 229, 230, 231, 222, 217, 197, 42, 32.74952 + 36, 35, 40, 32, 38, 34, 35, 37, 32, 37, 28, 34, 134, 224, 221, 229, 32.74953 + 237, 234, 233, 227, 134, 32, 34, 40, 39, 35, 40, 41, 37, 37, 26, 28, 32.74954 + 133, 165, 160, 139, 123, 106, 91, 76, 59, 44, 32, 21, 14, 12, 7, 4, 32.74955 + 2, 2, 0, 0, 1, 1, 1, 2, 3, 4, 8, 11, 16, 24, 32, 40, 32.74956 + 50, 61, 71, 85, 99, 110, 122, 135, 148, 160, 169, 180, 175, 187, 170, 93, 32.74957 + 38, 35, 31, 27, 28, 31, 19, 28, 34, 33, 32, 36, 35, 30, 30, 33, 32.74958 + 37, 40, 32, 25, 33, 50, 47, 29, 44, 92, 160, 177, 188, 182, 179, 174, 32.74959 + 176, 161, 158, 157, 154, 154, 154, 157, 162, 166, 179, 183, 183, 187, 160, 68, 32.74960 + 37, 40, 30, 32, 36, 31, 28, 32, 34, 44, 127, 204, 222, 210, 94, 29, 32.74961 + 40, 34, 36, 36, 36, 32, 30, 32, 38, 41, 41, 64, 148, 176, 173, 164, 32.74962 + 151, 146, 143, 142, 145, 150, 151, 159, 170, 180, 200, 199, 214, 224, 206, 213, 32.74963 + 129, 36, 26, 38, 37, 35, 28, 24, 102, 195, 199, 191, 181, 168, 161, 159, 32.74964 + 153, 151, 154, 159, 170, 175, 181, 166, 112, 45, 40, 36, 36, 35, 34, 33, 32.74965 + 34, 33, 31, 29, 34, 34, 34, 39, 143, 214, 217, 218, 221, 218, 216, 226, 32.74966 + 217, 197, 83, 42, 39, 39, 35, 33, 34, 27, 25, 35, 37, 30, 28, 30, 32.74967 + 48, 61, 182, 227, 219, 210, 223, 212, 107, 42, 42, 38, 35, 34, 32, 32, 32.74968 + 30, 32, 33, 42, 34, 40, 47, 146, 210, 222, 221, 221, 222, 213, 172, 56, 32.74969 + 38, 38, 34, 34, 35, 33, 32, 33, 32, 34, 42, 42, 54, 139, 217, 221, 32.74970 + 220, 226, 221, 214, 120, 44, 35, 35, 35, 26, 30, 32, 34, 32, 27, 32, 32.74971 + 36, 47, 68, 185, 213, 225, 224, 215, 232, 213, 196, 78, 42, 31, 32, 30, 32.74972 + 31, 31, 30, 31, 37, 80, 170, 167, 149, 129, 117, 102, 88, 74, 55, 40, 32.74973 + 29, 19, 13, 11, 6, 4, 2, 2, 0, 0, 2, 1, 1, 1, 2, 3, 32.74974 + 7, 9, 14, 21, 28, 35, 44, 54, 63, 75, 91, 103, 112, 122, 131, 141, 32.74975 + 152, 173, 178, 176, 177, 181, 163, 118, 74, 46, 33, 28, 34, 25, 28, 24, 32.74976 + 28, 25, 22, 21, 25, 26, 20, 20, 22, 35, 34, 30, 61, 122, 167, 183, 32.74977 + 176, 176, 180, 177, 162, 158, 152, 139, 140, 138, 135, 135, 141, 146, 149, 152, 32.74978 + 166, 156, 176, 177, 177, 187, 117, 64, 37, 31, 26, 33, 35, 36, 47, 62, 32.74979 + 201, 214, 211, 206, 91, 44, 51, 35, 37, 38, 37, 35, 31, 34, 38, 37, 32.74980 + 36, 30, 101, 152, 165, 169, 159, 157, 148, 147, 150, 155, 157, 165, 176, 185, 32.74981 + 192, 196, 217, 217, 231, 224, 213, 205, 29, 33, 34, 33, 21, 32, 153, 192, 32.74982 + 196, 184, 170, 157, 155, 154, 145, 146, 150, 154, 155, 157, 156, 112, 46, 38, 32.74983 + 34, 33, 32, 34, 35, 36, 34, 35, 29, 35, 37, 39, 35, 46, 56, 143, 32.74984 + 207, 208, 210, 211, 207, 193, 204, 197, 193, 146, 96, 58, 38, 38, 30, 36, 32.74985 + 40, 39, 30, 32, 34, 47, 37, 43, 70, 180, 206, 215, 204, 132, 51, 40, 32.74986 + 38, 36, 34, 34, 35, 35, 35, 35, 40, 26, 32, 40, 46, 53, 157, 197, 32.74987 + 213, 209, 212, 210, 77, 40, 43, 34, 38, 38, 37, 35, 34, 35, 31, 32, 32.74988 + 37, 36, 39, 67, 184, 218, 214, 211, 215, 181, 54, 49, 31, 29, 34, 36, 32.74989 + 37, 38, 35, 37, 45, 41, 31, 29, 51, 95, 197, 203, 209, 225, 214, 209, 32.74990 + 207, 180, 98, 31, 33, 34, 17, 25, 29, 40, 81, 149, 169, 161, 137, 121, 32.74991 + 111, 98, 84, 71, 54, 40, 27, 18, 13, 11, 6, 4, 2, 2, 0, 0, 32.74992 + 2, 2, 1, 1, 1, 3, 4, 5, 9, 16, 21, 27, 36, 45, 53, 61, 32.74993 + 73, 86, 95, 106, 119, 127, 145, 145, 162, 172, 171, 176, 179, 184, 181, 160, 32.74994 + 124, 73, 73, 34, 32, 43, 38, 36, 34, 31, 31, 29, 26, 34, 59, 79, 32.74995 + 117, 158, 181, 184, 181, 176, 171, 170, 162, 153, 154, 140, 130, 131, 123, 120, 32.74996 + 118, 119, 125, 131, 134, 137, 142, 149, 164, 166, 180, 181, 169, 171, 135, 106, 32.74997 + 76, 78, 76, 82, 126, 172, 196, 203, 202, 197, 149, 134, 125, 131, 125, 125, 32.74998 + 125, 124, 122, 123, 124, 120, 115, 118, 121, 150, 164, 168, 162, 156, 152, 150, 32.74999 + 152, 158, 163, 170, 182, 190, 196, 200, 214, 218, 227, 224, 223, 133, 37, 26, 32.75000 + 39, 33, 20, 54, 190, 191, 190, 176, 164, 152, 150, 144, 132, 139, 137, 138, 32.75001 + 144, 155, 130, 117, 115, 110, 115, 117, 118, 120, 123, 124, 123, 122, 125, 125, 32.75002 + 125, 133, 127, 124, 130, 135, 192, 200, 187, 188, 186, 190, 188, 191, 185, 191, 32.75003 + 182, 175, 174, 164, 125, 120, 126, 118, 125, 128, 129, 124, 127, 123, 140, 150, 32.75004 + 198, 194, 176, 143, 124, 124, 124, 124, 122, 124, 126, 127, 127, 126, 127, 120, 32.75005 + 126, 119, 115, 129, 139, 196, 195, 204, 202, 158, 134, 125, 128, 128, 127, 129, 32.75006 + 129, 128, 126, 126, 123, 121, 126, 129, 120, 134, 151, 202, 201, 205, 204, 156, 32.75007 + 134, 120, 131, 128, 121, 125, 124, 130, 125, 123, 130, 123, 122, 131, 130, 133, 32.75008 + 161, 195, 196, 203, 200, 202, 201, 201, 174, 153, 76, 40, 36, 30, 72, 113, 32.75009 + 163, 174, 161, 149, 128, 112, 106, 92, 78, 66, 51, 39, 27, 17, 13, 9, 32.75010 + 6, 3, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 2, 4, 8, 12, 32.75011 + 17, 22, 28, 34, 45, 53, 62, 72, 81, 91, 103, 111, 123, 133, 145, 153, 32.75012 + 158, 164, 169, 174, 178, 177, 176, 176, 177, 178, 180, 180, 139, 138, 136, 134, 32.75013 + 142, 158, 172, 178, 178, 178, 176, 176, 177, 174, 170, 166, 157, 152, 143, 136, 32.75014 + 128, 121, 115, 111, 106, 103, 102, 104, 106, 110, 116, 121, 129, 135, 144, 153, 32.75015 + 160, 166, 168, 169, 170, 171, 173, 175, 174, 176, 179, 183, 188, 190, 190, 188, 32.75016 + 182, 180, 179, 178, 177, 177, 178, 178, 177, 176, 175, 173, 167, 167, 167, 168, 32.75017 + 167, 166, 163, 160, 154, 151, 154, 155, 169, 179, 181, 201, 200, 201, 213, 218, 32.75018 + 230, 218, 213, 80, 35, 38, 35, 31, 35, 106, 191, 189, 180, 170, 154, 145, 32.75019 + 143, 136, 126, 123, 127, 131, 136, 141, 147, 152, 156, 159, 165, 168, 171, 173, 32.75020 + 175, 176, 176, 177, 176, 177, 177, 176, 174, 173, 173, 175, 178, 180, 177, 175, 32.75021 + 173, 173, 173, 175, 176, 176, 176, 175, 174, 172, 173, 174, 176, 176, 176, 178, 32.75022 + 179, 179, 178, 177, 181, 184, 187, 187, 186, 183, 179, 176, 176, 177, 176, 177, 32.75023 + 177, 178, 177, 177, 177, 177, 176, 175, 175, 178, 182, 185, 187, 188, 188, 185, 32.75024 + 179, 176, 177, 177, 178, 178, 178, 177, 178, 177, 176, 176, 177, 177, 177, 179, 32.75025 + 185, 188, 188, 188, 189, 186, 180, 177, 177, 177, 176, 177, 178, 178, 178, 178, 32.75026 + 178, 177, 176, 175, 176, 178, 181, 183, 185, 186, 185, 185, 187, 186, 182, 178, 32.75027 + 175, 171, 169, 168, 165, 163, 161, 156, 148, 136, 120, 107, 93, 82, 67, 54, 32.75028 + 45, 35, 26, 17, 9, 6, 3, 0, 0, 0, 1, 1, 0, 0, 0, 0, 32.75029 + 0, 0, 2, 3, 6, 9, 13, 18, 23, 27, 36, 44, 52, 60, 68, 77, 32.75030 + 88, 97, 109, 118, 128, 137, 143, 149, 156, 162, 167, 170, 174, 177, 178, 180, 32.75031 + 181, 183, 182, 185, 184, 181, 180, 181, 180, 177, 180, 178, 174, 172, 167, 163, 32.75032 + 157, 151, 141, 136, 127, 119, 112, 106, 99, 95, 90, 87, 87, 88, 90, 93, 32.75033 + 99, 105, 114, 121, 129, 137, 145, 151, 157, 162, 167, 170, 172, 174, 174, 175, 32.75034 + 175, 177, 176, 176, 177, 177, 175, 175, 175, 175, 174, 175, 176, 177, 176, 175, 32.75035 + 174, 172, 171, 169, 167, 165, 164, 164, 163, 162, 157, 160, 165, 165, 170, 183, 32.75036 + 193, 195, 199, 225, 215, 228, 219, 218, 166, 45, 35, 33, 39, 28, 39, 164, 32.75037 + 184, 188, 172, 160, 146, 138, 133, 125, 115, 113, 116, 120, 125, 131, 137, 144, 32.75038 + 151, 156, 163, 165, 169, 171, 172, 173, 174, 175, 173, 173, 173, 171, 170, 169, 32.75039 + 167, 166, 164, 163, 161, 160, 159, 159, 159, 160, 162, 164, 165, 167, 167, 169, 32.75040 + 170, 172, 173, 173, 174, 175, 175, 175, 175, 175, 173, 173, 172, 173, 172, 173, 32.75041 + 172, 173, 174, 175, 174, 175, 174, 175, 174, 175, 174, 175, 174, 174, 173, 174, 32.75042 + 173, 174, 173, 174, 173, 174, 173, 174, 173, 174, 174, 175, 174, 175, 174, 175, 32.75043 + 174, 175, 174, 175, 174, 174, 173, 174, 173, 174, 173, 174, 173, 175, 174, 175, 32.75044 + 174, 175, 174, 175, 174, 175, 174, 174, 173, 172, 171, 170, 170, 170, 169, 170, 32.75045 + 170, 170, 171, 173, 173, 174, 174, 173, 172, 170, 165, 160, 152, 144, 135, 125, 32.75046 + 110, 98, 86, 73, 59, 48, 38, 31, 23, 16, 8, 5, 2, 0, 0, 0, 32.75047 + 1, 1, 0, 0, 0, 0, 0, 0, 1, 3, 5, 7, 9, 13, 17, 21, 32.75048 + 29, 36, 43, 49, 56, 66, 75, 83, 93, 102, 112, 120, 127, 133, 140, 146, 32.75049 + 151, 156, 159, 162, 164, 166, 168, 168, 167, 169, 170, 168, 168, 169, 168, 164, 32.75050 + 164, 162, 158, 156, 151, 146, 140, 134, 127, 120, 112, 104, 97, 90, 85, 80, 32.75051 + 75, 73, 72, 74, 75, 79, 84, 91, 99, 105, 113, 121, 128, 135, 139, 144, 32.75052 + 150, 153, 156, 157, 159, 159, 159, 160, 159, 159, 159, 159, 160, 160, 160, 159, 32.75053 + 159, 159, 161, 161, 162, 160, 160, 160, 158, 158, 158, 159, 160, 162, 163, 165, 32.75054 + 173, 175, 171, 177, 187, 188, 193, 205, 204, 218, 231, 228, 221, 201, 54, 31, 32.75055 + 33, 28, 31, 27, 82, 182, 184, 181, 164, 151, 140, 129, 122, 113, 105, 104, 32.75056 + 105, 109, 113, 118, 124, 130, 138, 142, 147, 150, 152, 156, 157, 157, 158, 158, 32.75057 + 157, 157, 156, 155, 154, 152, 151, 150, 148, 146, 145, 143, 143, 142, 142, 143, 32.75058 + 145, 147, 149, 150, 151, 152, 154, 155, 156, 156, 158, 158, 158, 158, 158, 158, 32.75059 + 158, 158, 158, 158, 158, 158, 158, 158, 159, 159, 159, 159, 159, 159, 159, 159, 32.75060 + 158, 158, 158, 158, 158, 157, 157, 157, 157, 157, 157, 157, 157, 158, 158, 158, 32.75061 + 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 157, 157, 32.75062 + 158, 158, 158, 158, 158, 158, 158, 158, 159, 159, 159, 158, 158, 157, 157, 157, 32.75063 + 155, 153, 153, 153, 153, 154, 154, 154, 155, 156, 157, 157, 158, 157, 157, 155, 32.75064 + 150, 145, 137, 129, 122, 112, 100, 87, 75, 64, 52, 40, 32, 26, 19, 13, 32.75065 + 7, 4, 2, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 32.75066 + 3, 4, 6, 9, 13, 17, 24, 29, 34, 41, 47, 54, 64, 70, 79, 86, 32.75067 + 96, 104, 110, 116, 122, 128, 134, 139, 142, 146, 148, 150, 152, 153, 153, 154, 32.75068 + 151, 149, 149, 152, 153, 152, 147, 145, 141, 138, 134, 129, 123, 117, 110, 104, 32.75069 + 96, 89, 83, 76, 71, 67, 62, 60, 59, 62, 63, 65, 70, 76, 84, 89, 32.75070 + 97, 105, 111, 117, 123, 127, 133, 136, 138, 140, 141, 141, 142, 143, 143, 143, 32.75071 + 142, 141, 142, 142, 142, 141, 142, 142, 142, 143, 145, 145, 146, 147, 147, 148, 32.75072 + 150, 152, 156, 159, 162, 167, 176, 174, 184, 192, 195, 194, 190, 201, 213, 224, 32.75073 + 219, 221, 207, 92, 42, 29, 32, 32, 22, 40, 135, 185, 180, 173, 157, 143, 32.75074 + 132, 121, 110, 101, 95, 95, 93, 96, 101, 105, 110, 115, 122, 125, 131, 133, 32.75075 + 136, 139, 139, 140, 140, 141, 140, 139, 138, 137, 136, 135, 133, 133, 130, 129, 32.75076 + 127, 126, 125, 124, 125, 126, 127, 129, 131, 132, 134, 135, 136, 138, 139, 140, 32.75077 + 140, 140, 141, 140, 140, 140, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 32.75078 + 141, 141, 141, 141, 141, 141, 141, 141, 141, 140, 140, 140, 140, 139, 139, 139, 32.75079 + 140, 140, 140, 140, 140, 140, 141, 141, 141, 141, 141, 141, 141, 141, 141, 140, 32.75080 + 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 141, 141, 141, 141, 32.75081 + 141, 141, 140, 140, 139, 139, 136, 135, 135, 135, 136, 136, 136, 136, 138, 138, 32.75082 + 139, 141, 141, 140, 139, 138, 133, 130, 123, 114, 107, 98, 87, 76, 65, 55, 32.75083 + 44, 34, 27, 21, 15, 10, 6, 3, 1, 0, 0, 0, 1, 1, 0, 0, 32.75084 + 0, 0, 0, 0, 0, 0, 1, 2, 4, 7, 9, 12, 16, 20, 25, 30, 32.75085 + 36, 44, 50, 56, 65, 70, 80, 86, 91, 98, 103, 108, 116, 120, 123, 126, 32.75086 + 129, 132, 133, 134, 136, 138, 138, 138, 136, 135, 132, 130, 128, 125, 122, 119, 32.75087 + 114, 110, 105, 100, 92, 86, 79, 72, 67, 61, 56, 53, 48, 47, 46, 48, 32.75088 + 49, 51, 56, 61, 68, 73, 81, 88, 93, 99, 104, 109, 114, 116, 118, 120, 32.75089 + 120, 121, 123, 123, 123, 123, 123, 123, 122, 122, 122, 122, 122, 123, 123, 124, 32.75090 + 125, 128, 129, 131, 135, 138, 141, 146, 151, 156, 162, 165, 171, 171, 193, 191, 32.75091 + 190, 208, 206, 202, 208, 201, 214, 203, 83, 37, 38, 36, 31, 23, 34, 46, 32.75092 + 178, 188, 178, 164, 148, 134, 122, 109, 96, 88, 84, 82, 82, 84, 87, 90, 32.75093 + 94, 98, 104, 107, 112, 114, 117, 118, 120, 120, 120, 121, 119, 119, 118, 117, 32.75094 + 116, 115, 113, 113, 110, 109, 107, 106, 106, 106, 105, 106, 107, 109, 111, 112, 32.75095 + 114, 115, 116, 119, 119, 120, 120, 121, 122, 122, 121, 121, 121, 121, 121, 121, 32.75096 + 121, 121, 121, 121, 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, 121, 32.75097 + 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 122, 122, 122, 122, 32.75098 + 122, 122, 122, 122, 122, 122, 122, 121, 121, 121, 121, 121, 121, 121, 121, 121, 32.75099 + 121, 121, 122, 122, 122, 122, 122, 122, 121, 121, 120, 119, 116, 116, 115, 116, 32.75100 + 116, 116, 116, 116, 118, 119, 119, 121, 120, 120, 121, 118, 114, 111, 106, 98, 32.75101 + 91, 84, 72, 63, 55, 46, 36, 28, 22, 16, 11, 7, 4, 2, 1, 0, 32.75102 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 5, 32.75103 + 6, 9, 11, 14, 18, 22, 27, 33, 39, 44, 52, 57, 65, 70, 75, 80, 32.75104 + 86, 91, 98, 101, 105, 108, 111, 113, 114, 115, 111, 113, 114, 115, 115, 115, 32.75105 + 113, 112, 109, 107, 103, 101, 97, 93, 87, 82, 75, 70, 63, 57, 52, 48, 32.75106 + 44, 40, 37, 35, 35, 36, 36, 38, 44, 48, 54, 60, 66, 72, 78, 83, 32.75107 + 87, 91, 95, 97, 99, 102, 102, 102, 103, 104, 104, 104, 104, 103, 103, 103, 32.75108 + 103, 103, 103, 103, 104, 106, 108, 111, 115, 117, 122, 126, 132, 138, 146, 153, 32.75109 + 161, 166, 173, 182, 186, 185, 200, 184, 141, 143, 154, 146, 109, 51, 38, 34, 32.75110 + 36, 48, 29, 24, 29, 90, 189, 180, 173, 157, 140, 126, 110, 97, 86, 77, 32.75111 + 73, 71, 70, 71, 74, 76, 79, 84, 87, 90, 94, 97, 98, 101, 101, 102, 32.75112 + 101, 102, 100, 100, 99, 99, 98, 96, 95, 94, 91, 91, 90, 88, 87, 87, 32.75113 + 87, 88, 90, 92, 92, 94, 95, 97, 98, 100, 101, 101, 101, 101, 103, 103, 32.75114 + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 103, 103, 103, 103, 103, 103, 32.75115 + 103, 103, 103, 103, 103, 102, 102, 102, 102, 101, 101, 102, 102, 102, 102, 102, 32.75116 + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 103, 102, 102, 102, 102, 102, 32.75117 + 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 103, 103, 103, 103, 102, 102, 32.75118 + 101, 101, 98, 98, 97, 97, 97, 98, 97, 98, 99, 100, 101, 102, 102, 102, 32.75119 + 102, 100, 96, 94, 89, 83, 76, 70, 61, 53, 44, 38, 29, 22, 17, 13, 32.75120 + 8, 5, 2, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.75121 + 0, 0, 0, 0, 1, 2, 3, 4, 8, 10, 12, 16, 19, 24, 29, 32, 32.75122 + 41, 45, 50, 55, 59, 65, 69, 74, 79, 82, 86, 88, 91, 93, 94, 96, 32.75123 + 102, 101, 100, 100, 98, 97, 96, 96, 90, 88, 85, 82, 79, 75, 70, 65, 32.75124 + 59, 55, 49, 44, 41, 36, 32, 29, 26, 24, 24, 26, 26, 28, 32, 37, 32.75125 + 41, 46, 51, 58, 62, 66, 69, 74, 77, 79, 81, 83, 84, 84, 84, 84, 32.75126 + 84, 84, 85, 85, 85, 85, 85, 85, 85, 85, 86, 87, 92, 96, 100, 103, 32.75127 + 109, 114, 123, 131, 140, 150, 159, 168, 173, 191, 185, 192, 175, 96, 37, 38, 32.75128 + 36, 39, 37, 29, 25, 35, 47, 43, 30, 37, 52, 164, 171, 175, 157, 150, 32.75129 + 132, 116, 98, 86, 76, 69, 63, 61, 58, 59, 60, 62, 65, 68, 71, 74, 32.75130 + 76, 79, 80, 82, 82, 82, 82, 83, 82, 82, 81, 81, 80, 78, 77, 76, 32.75131 + 74, 73, 72, 70, 70, 70, 70, 70, 72, 74, 74, 76, 77, 78, 79, 81, 32.75132 + 81, 82, 83, 83, 83, 83, 83, 83, 84, 84, 84, 84, 84, 84, 84, 84, 32.75133 + 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 82, 82, 82, 32.75134 + 82, 82, 82, 82, 82, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 32.75135 + 83, 83, 83, 83, 83, 83, 82, 82, 82, 82, 82, 82, 83, 83, 83, 83, 32.75136 + 83, 83, 83, 83, 83, 82, 81, 80, 80, 80, 79, 79, 79, 79, 79, 80, 32.75137 + 80, 82, 83, 84, 84, 83, 83, 82, 77, 76, 73, 67, 63, 56, 50, 43, 32.75138 + 35, 29, 23, 17, 12, 8, 6, 4, 2, 1, 0, 0, 0, 0, 1, 1, 32.75139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 4, 6, 32.75140 + 7, 10, 13, 16, 20, 24, 29, 33, 37, 42, 46, 51, 55, 58, 62, 67, 32.75141 + 70, 72, 74, 77, 78, 79, 78, 78, 80, 82, 81, 80, 78, 76, 74, 71, 32.75142 + 68, 67, 63, 59, 55, 51, 47, 43, 37, 33, 29, 27, 24, 21, 18, 16, 32.75143 + 17, 18, 19, 20, 24, 28, 29, 34, 40, 44, 49, 52, 56, 59, 61, 64, 32.75144 + 65, 67, 67, 67, 67, 69, 69, 69, 69, 68, 68, 68, 68, 68, 70, 71, 32.75145 + 71, 73, 76, 81, 86, 90, 98, 105, 115, 125, 136, 149, 159, 170, 182, 187, 32.75146 + 191, 191, 107, 27, 34, 26, 32, 32, 26, 28, 36, 37, 39, 36, 45, 35, 32.75147 + 136, 180, 174, 166, 155, 135, 123, 107, 89, 75, 66, 59, 54, 50, 47, 47, 32.75148 + 48, 50, 52, 55, 57, 59, 61, 63, 65, 66, 66, 66, 66, 66, 67, 66, 32.75149 + 66, 64, 63, 62, 61, 60, 59, 57, 56, 55, 54, 54, 54, 55, 57, 58, 32.75150 + 59, 60, 60, 62, 63, 64, 66, 66, 66, 66, 67, 67, 66, 66, 66, 66, 32.75151 + 66, 66, 66, 66, 66, 66, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 32.75152 + 67, 66, 66, 66, 66, 65, 65, 66, 66, 66, 66, 66, 66, 66, 66, 66, 32.75153 + 66, 66, 66, 66, 66, 66, 67, 66, 66, 66, 66, 66, 66, 66, 65, 66, 32.75154 + 66, 66, 66, 66, 66, 66, 67, 67, 67, 66, 66, 65, 65, 64, 64, 63, 32.75155 + 63, 63, 63, 63, 64, 64, 65, 65, 66, 67, 67, 67, 66, 66, 61, 60, 32.75156 + 57, 54, 49, 46, 40, 34, 28, 23, 19, 13, 9, 6, 4, 3, 1, 0, 32.75157 + 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75158 + 0, 0, 0, 0, 2, 3, 4, 6, 9, 12, 14, 17, 22, 25, 28, 32, 32.75159 + 35, 38, 41, 44, 50, 53, 54, 58, 58, 60, 61, 63, 64, 64, 64, 65, 32.75160 + 63, 63, 62, 61, 58, 56, 53, 52, 49, 45, 43, 40, 34, 32, 28, 25, 32.75161 + 21, 18, 16, 15, 13, 12, 12, 12, 13, 15, 17, 19, 23, 26, 29, 33, 32.75162 + 36, 40, 42, 44, 47, 49, 50, 52, 52, 53, 53, 53, 53, 53, 54, 53, 32.75163 + 53, 53, 54, 54, 55, 55, 56, 60, 63, 68, 74, 80, 87, 96, 109, 122, 32.75164 + 133, 145, 158, 170, 183, 192, 182, 132, 39, 32, 36, 35, 42, 34, 33, 35, 32.75165 + 32, 34, 37, 36, 37, 102, 166, 182, 166, 153, 138, 125, 113, 100, 81, 68, 32.75166 + 58, 51, 46, 42, 38, 37, 38, 39, 40, 43, 44, 46, 49, 49, 50, 50, 32.75167 + 51, 51, 51, 51, 52, 51, 51, 51, 50, 49, 47, 47, 45, 45, 43, 42, 32.75168 + 42, 42, 42, 42, 44, 45, 46, 46, 47, 48, 48, 50, 51, 51, 51, 51, 32.75169 + 51, 51, 51, 51, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 32.75170 + 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 32.75171 + 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 32.75172 + 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 52, 53, 51, 52, 32.75173 + 51, 51, 50, 50, 49, 49, 48, 49, 49, 49, 49, 49, 51, 51, 51, 53, 32.75174 + 53, 53, 53, 53, 51, 50, 46, 43, 39, 34, 30, 26, 21, 18, 14, 10, 32.75175 + 7, 4, 3, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 32.75176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 4, 6, 9, 32.75177 + 11, 13, 15, 18, 21, 24, 26, 28, 31, 33, 37, 40, 41, 44, 44, 47, 32.75178 + 48, 49, 50, 50, 50, 49, 49, 49, 48, 47, 46, 44, 41, 39, 37, 35, 32.75179 + 32, 28, 25, 24, 21, 18, 15, 12, 11, 9, 8, 7, 7, 7, 8, 10, 32.75180 + 12, 14, 17, 19, 22, 25, 28, 30, 33, 35, 35, 37, 38, 40, 39, 40, 32.75181 + 39, 40, 40, 40, 40, 41, 40, 40, 41, 41, 42, 42, 45, 48, 52, 56, 32.75182 + 63, 70, 79, 90, 103, 116, 128, 141, 154, 166, 178, 177, 163, 54, 32, 25, 32.75183 + 39, 39, 32, 39, 38, 33, 32, 35, 33, 36, 135, 163, 182, 173, 156, 143, 32.75184 + 127, 112, 102, 90, 72, 60, 51, 41, 37, 35, 30, 29, 29, 31, 31, 34, 32.75185 + 35, 36, 37, 38, 38, 39, 39, 40, 40, 40, 39, 39, 38, 38, 37, 35, 32.75186 + 35, 34, 33, 33, 32, 31, 31, 31, 31, 31, 32, 33, 34, 34, 35, 37, 32.75187 + 37, 38, 39, 39, 39, 39, 39, 39, 39, 39, 39, 40, 39, 40, 39, 40, 32.75188 + 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 32.75189 + 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 32.75190 + 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 39, 40, 32.75191 + 39, 40, 40, 41, 40, 41, 39, 40, 39, 39, 37, 37, 37, 37, 37, 37, 32.75192 + 37, 37, 38, 38, 40, 40, 40, 40, 40, 40, 38, 36, 34, 31, 28, 26, 32.75193 + 22, 20, 17, 15, 11, 8, 5, 4, 2, 2, 0, 0, 0, 0, 0, 0, 32.75194 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75195 + 0, 0, 2, 2, 4, 6, 7, 9, 11, 13, 15, 17, 18, 20, 21, 23, 32.75196 + 26, 27, 29, 32, 32, 34, 35, 37, 37, 37, 37, 37, 36, 36, 35, 34, 32.75197 + 34, 32, 31, 29, 27, 25, 22, 20, 17, 17, 14, 11, 10, 7, 7, 6, 32.75198 + 5, 4, 3, 5, 5, 6, 7, 8, 10, 12, 15, 17, 19, 21, 22, 25, 32.75199 + 25, 25, 26, 28, 28, 30, 28, 29, 30, 29, 29, 29, 29, 30, 30, 30, 32.75200 + 31, 31, 34, 37, 43, 46, 54, 62, 71, 82, 96, 109, 123, 137, 150, 160, 32.75201 + 171, 165, 51, 42, 28, 33, 40, 29, 30, 23, 19, 28, 28, 28, 82, 161, 32.75202 + 175, 176, 167, 154, 143, 132, 116, 100, 89, 79, 65, 53, 42, 34, 31, 29, 32.75203 + 23, 21, 21, 21, 22, 24, 25, 25, 25, 26, 26, 27, 27, 28, 27, 28, 32.75204 + 28, 28, 28, 28, 27, 25, 24, 24, 24, 24, 22, 22, 22, 22, 22, 22, 32.75205 + 22, 24, 24, 25, 25, 26, 26, 27, 27, 28, 27, 28, 27, 28, 27, 28, 32.75206 + 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 32.75207 + 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 32.75208 + 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 32.75209 + 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 27, 28, 26, 26, 32.75210 + 26, 26, 26, 26, 26, 27, 26, 27, 27, 28, 28, 28, 29, 29, 30, 29, 32.75211 + 28, 26, 24, 23, 21, 19, 16, 14, 11, 9, 8, 5, 3, 3, 2, 2, 32.75212 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75213 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 8, 10, 32.75214 + 11, 13, 13, 14, 15, 17, 18, 19, 22, 22, 25, 25, 26, 27, 26, 26, 32.75215 + 27, 26, 26, 26, 25, 25, 26, 25, 22, 21, 20, 19, 16, 14, 12, 11, 32.75216 + 9, 8, 7, 5, 5, 4, 3, 3, 3, 3, 3, 5, 5, 6, 7, 9, 32.75217 + 10, 12, 13, 15, 16, 17, 18, 19, 19, 20, 20, 20, 20, 20, 22, 21, 32.75218 + 21, 21, 21, 22, 22, 22, 24, 24, 26, 31, 34, 39, 48, 55, 63, 75, 32.75219 + 88, 103, 116, 130, 145, 154, 157, 87, 37, 31, 39, 23, 31, 32, 29, 31, 32.75220 + 29, 44, 96, 150, 173, 173, 171, 166, 156, 146, 134, 120, 101, 88, 79, 70, 32.75221 + 58, 46, 34, 26, 25, 24, 18, 16, 16, 16, 16, 16, 18, 18, 18, 18, 32.75222 + 19, 19, 19, 20, 19, 19, 21, 21, 21, 21, 19, 19, 18, 18, 18, 17, 32.75223 + 16, 16, 15, 16, 15, 15, 16, 16, 17, 17, 19, 19, 19, 19, 19, 19, 32.75224 + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 32.75225 + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 32.75226 + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 32.75227 + 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 32.75228 + 20, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 21, 32.75229 + 21, 21, 22, 22, 21, 21, 20, 19, 18, 17, 16, 14, 12, 10, 6, 6, 32.75230 + 5, 3, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75232 + 0, 2, 2, 3, 3, 5, 6, 7, 7, 9, 10, 11, 11, 12, 14, 15, 32.75233 + 16, 16, 18, 19, 18, 18, 17, 17, 17, 17, 16, 16, 17, 16, 15, 14, 32.75234 + 13, 12, 10, 9, 7, 7, 6, 5, 4, 3, 3, 3, 2, 1, 1, 2, 32.75235 + 2, 2, 3, 4, 5, 7, 8, 8, 8, 10, 11, 12, 11, 11, 12, 13, 32.75236 + 13, 13, 13, 13, 14, 13, 14, 14, 14, 15, 15, 15, 15, 16, 19, 24, 32.75237 + 27, 32, 40, 47, 56, 67, 80, 95, 109, 123, 137, 144, 122, 46, 41, 35, 32.75238 + 55, 92, 84, 92, 111, 127, 157, 176, 175, 172, 174, 171, 164, 157, 145, 133, 32.75239 + 120, 103, 89, 81, 68, 58, 48, 37, 25, 19, 17, 17, 14, 12, 12, 11, 32.75240 + 11, 11, 12, 12, 12, 13, 12, 14, 14, 14, 14, 14, 14, 14, 13, 13, 32.75241 + 13, 12, 12, 11, 10, 10, 10, 9, 9, 9, 8, 9, 9, 10, 10, 10, 32.75242 + 12, 12, 12, 12, 14, 14, 14, 14, 14, 14, 13, 13, 13, 14, 13, 14, 32.75243 + 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 32.75244 + 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 32.75245 + 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 32.75246 + 13, 14, 13, 14, 13, 14, 13, 14, 13, 14, 13, 13, 11, 11, 11, 11, 32.75247 + 11, 11, 11, 12, 13, 13, 13, 13, 14, 13, 13, 13, 13, 12, 10, 10, 32.75248 + 9, 9, 6, 5, 4, 4, 3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 32.75249 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75250 + 0, 0, 1, 1, 0, 0, 0, 0, 1, 2, 1, 3, 3, 4, 4, 6, 32.75251 + 6, 7, 6, 8, 9, 11, 11, 12, 12, 13, 11, 12, 12, 11, 12, 11, 32.75252 + 11, 11, 11, 10, 9, 9, 8, 7, 6, 4, 3, 3, 3, 2, 2, 2, 32.75253 + 2, 2, 0, 0, 0, 0, 0, 1, 1, 1, 2, 4, 5, 5, 5, 5, 32.75254 + 6, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 10, 32.75255 + 9, 9, 10, 11, 14, 18, 22, 26, 33, 41, 53, 62, 75, 89, 102, 117, 32.75256 + 130, 139, 136, 150, 152, 160, 163, 165, 178, 167, 177, 169, 175, 181, 176, 174, 32.75257 + 169, 157, 149, 139, 125, 114, 103, 91, 78, 73, 60, 51, 39, 29, 20, 14, 32.75258 + 13, 12, 9, 7, 6, 6, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 32.75259 + 9, 9, 9, 9, 9, 9, 8, 8, 6, 7, 6, 6, 5, 5, 5, 5, 32.75260 + 4, 6, 5, 6, 5, 7, 6, 7, 6, 8, 8, 10, 8, 8, 8, 8, 32.75261 + 8, 8, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 32.75262 + 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 32.75263 + 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 32.75264 + 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 8, 32.75265 + 7, 7, 6, 6, 6, 6, 6, 7, 6, 7, 8, 8, 8, 8, 9, 9, 32.75266 + 8, 8, 8, 7, 6, 6, 4, 4, 3, 1, 3, 3, 1, 1, 0, 0, 32.75267 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.75268 + 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75269 + 0, 2, 2, 3, 3, 4, 3, 5, 4, 4, 6, 8, 7, 8, 8, 9, 32.75270 + 8, 8, 7, 7, 7, 7, 7, 6, 7, 7, 6, 5, 6, 5, 4, 2, 32.75271 + 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.75272 + 0, 1, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 32.75273 + 6, 5, 5, 5, 5, 6, 6, 6, 7, 8, 10, 14, 17, 22, 29, 36, 32.75274 + 46, 57, 69, 83, 95, 109, 122, 132, 138, 153, 149, 157, 157, 165, 170, 172, 32.75275 + 170, 169, 170, 167, 159, 152, 145, 139, 133, 124, 112, 102, 91, 79, 67, 59, 32.75276 + 53, 43, 29, 22, 16, 11, 10, 9, 4, 4, 2, 3, 2, 3, 2, 4, 32.75277 + 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 5, 4, 5, 32.75278 + 4, 4, 4, 3, 3, 4, 3, 4, 3, 5, 4, 5, 4, 5, 4, 5, 32.75279 + 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 5, 4, 5, 4, 5, 32.75280 + 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 32.75281 + 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 32.75282 + 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 4, 5, 32.75283 + 4, 5, 4, 5, 4, 5, 4, 4, 4, 4, 4, 4, 4, 5, 4, 5, 32.75284 + 5, 5, 5, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 2, 1, 1, 32.75285 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75286 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 32.75287 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 2, 0, 2, 32.75288 + 3, 4, 3, 3, 4, 4, 4, 4, 3, 4, 3, 3, 3, 3, 3, 4, 32.75289 + 2, 2, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75290 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 1, 1, 32.75291 + 0, 0, 0, 0, 1, 1, 2, 2, 1, 1, 1, 2, 2, 2, 3, 4, 32.75292 + 5, 10, 13, 17, 24, 32, 39, 49, 62, 73, 85, 98, 110, 121, 130, 133, 32.75293 + 149, 153, 154, 153, 156, 157, 157, 160, 152, 147, 149, 139, 125, 123, 111, 103, 32.75294 + 96, 87, 77, 67, 59, 52, 43, 34, 22, 15, 11, 8, 5, 4, 3, 2, 32.75295 + 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 3, 2, 2, 2, 1, 2, 32.75296 + 2, 2, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 32.75297 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 2, 32.75298 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.75299 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.75300 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.75301 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 32.75302 + 1, 1, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 1, 0, 32.75303 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75304 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75305 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75306 + 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 32.75307 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75308 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75309 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75310 + 0, 0, 0, 0, 2, 3, 4, 6, 10, 15, 21, 26, 35, 44, 54, 65, 32.75311 + 74, 86, 94, 105, 117, 122, 128, 133, 136, 137, 139, 140, 140, 137, 133, 130, 32.75312 + 124, 118, 111, 106, 97, 90, 81, 73, 65, 56, 48, 41, 33, 28, 19, 14, 32.75313 + 9, 7, 6, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75314 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75315 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75316 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75317 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75318 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75319 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75320 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75321 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75322 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75323 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75324 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75325 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75326 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75327 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75328 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 7, 12, 32.75329 + 17, 22, 31, 38, 48, 57, 66, 76, 84, 92, 102, 108, 112, 117, 120, 121, 32.75330 + 122, 122, 119, 117, 115, 111, 106, 100, 95, 90, 82, 75, 67, 60, 54, 47, 32.75331 + 37, 31, 26, 21, 16, 11, 8, 7, 5, 4, 1, 0, 0, 0, 0, 0, 32.75332 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75333 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75334 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75335 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75336 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75337 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75338 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75339 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75340 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75341 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75342 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75343 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75344 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75345 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75346 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75347 + 0, 0, 2, 3, 6, 9, 14, 19, 25, 32, 41, 48, 56, 64, 72, 80, 32.75348 + 89, 93, 97, 101, 103, 105, 105, 106, 102, 100, 96, 93, 89, 84, 80, 75, 32.75349 + 68, 61, 55, 49, 43, 38, 30, 24, 19, 15, 10, 8, 5, 4, 4, 2, 32.75350 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75351 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75352 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75353 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75354 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75355 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75356 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75357 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75358 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75359 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75360 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75361 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75362 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75363 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75364 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75365 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 4, 8, 12, 15, 21, 26, 32.75366 + 34, 40, 48, 55, 61, 66, 75, 80, 83, 87, 88, 88, 88, 89, 86, 84, 32.75367 + 81, 78, 75, 69, 65, 62, 54, 50, 44, 40, 35, 30, 24, 20, 13, 10, 32.75368 + 6, 4, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75369 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75370 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75371 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75372 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75373 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75374 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75375 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75376 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75377 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75378 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75379 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75380 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75381 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75382 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75383 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 32.75384 + 4, 6, 9, 12, 16, 21, 27, 34, 39, 46, 51, 55, 61, 63, 66, 68, 32.75385 + 70, 71, 71, 71, 70, 68, 65, 62, 58, 54, 50, 47, 42, 39, 33, 29, 32.75386 + 25, 21, 17, 14, 8, 6, 4, 2, 1, 1, 0, 0, 0, 0, 0, 0, 32.75387 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75388 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75389 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75390 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75391 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75392 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75393 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75394 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75395 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75396 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75397 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75398 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75399 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75400 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75401 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75402 + 0, 0, 1, 2, 2, 2, 4, 5, 7, 9, 13, 16, 21, 25, 31, 36, 32.75403 + 40, 43, 47, 49, 51, 54, 55, 56, 56, 56, 54, 53, 51, 48, 44, 41, 32.75404 + 37, 35, 31, 28, 24, 21, 17, 14, 11, 8, 6, 4, 2, 1, 0, 0, 32.75405 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75406 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75407 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75408 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75409 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75410 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75411 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75412 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75413 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75414 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75415 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75416 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75417 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75418 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75419 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75420 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 3, 4, 6, 32.75421 + 10, 12, 15, 19, 22, 26, 29, 32, 35, 36, 39, 40, 41, 41, 41, 41, 32.75422 + 41, 40, 37, 35, 33, 29, 27, 24, 21, 19, 17, 15, 12, 10, 6, 4, 32.75423 + 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75424 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75425 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75426 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75427 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75428 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75429 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75430 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75431 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75432 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75433 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75434 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75435 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75436 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75437 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75438 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.75439 + 1, 1, 1, 2, 3, 4, 7, 9, 10, 14, 16, 18, 21, 22, 23, 25, 32.75440 + 27, 29, 29, 30, 32, 32, 29, 27, 25, 24, 21, 20, 17, 16, 13, 12, 32.75441 + 11, 9, 6, 4, 3, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.75442 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75443 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75444 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75445 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75446 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75447 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75448 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75449 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75450 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75451 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75452 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75453 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75454 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75455 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75456 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75457 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 4, 5, 6, 8, 32.75458 + 11, 13, 14, 16, 17, 19, 19, 21, 21, 21, 21, 21, 20, 20, 18, 17, 32.75459 + 14, 13, 11, 11, 8, 8, 7, 5, 4, 2, 2, 1, 0, 0, 0, 0, 32.75460 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75461 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75462 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75463 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75464 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75465 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75466 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75467 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75468 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75469 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75470 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75471 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75472 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75473 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75474 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75475 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 32.75476 + 1, 1, 2, 2, 3, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 15, 32.75477 + 15, 15, 14, 14, 12, 12, 9, 8, 6, 6, 5, 5, 4, 4, 2, 1, 32.75478 + 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.75479 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75480 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75481 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75482 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75483 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75484 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75485 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75486 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75487 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75488 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75489 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75490 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75491 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75492 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75493 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75494 + 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 2, 3, 4, 4, 5, 32.75495 + 6, 7, 8, 9, 9, 9, 9, 9, 8, 8, 8, 6, 6, 4, 3, 3, 32.75496 + 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.75497 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75498 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75499 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75500 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75501 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75502 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75503 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75504 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75505 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75506 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75507 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75508 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75509 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75510 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75511 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75512 + 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 32.75513 + 1, 2, 2, 2, 3, 3, 3, 4, 5, 5, 5, 6, 6, 6, 6, 5, 32.75514 + 5, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.75515 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75516 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75517 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75518 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75519 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75520 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75521 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75522 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75523 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75524 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75525 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75526 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75527 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75528 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75529 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75530 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75531 + 0, 0, 0, 0, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 3, 3, 32.75532 + 3, 4, 4, 4, 3, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0, 32.75533 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75534 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75536 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75537 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75538 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75539 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75540 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75541 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75542 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75543 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75544 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75545 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75546 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75547 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75548 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75549 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 32.75550 + 0, 0, 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 0, 0, 32.75551 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75552 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75553 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75554 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75555 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75556 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75557 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75558 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75559 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75560 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75561 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75562 + 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 1, 1, 1, 32.75563 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 32.75564 + 4, 4, 4, 4, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.75565 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75566 + 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.75567 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.75568 + 3, 3, 3, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75569 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 32.75570 + 0, 0, 0, 0, 2, 3, 3, 3, 1, 0, 0, 0, 0, 0, 2, 2, 32.75571 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 4, 4, 4, 4, 4, 32.75572 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 32.75573 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 32.75574 + 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 0, 0, 32.75575 + 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.75576 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75577 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 32.75578 + 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 2, 2, 4, 4, 32.75579 + 4, 4, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75580 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 32.75581 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75582 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 32.75583 + 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75584 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 32.75585 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75586 + 0, 0, 1, 1, 1, 1, 2, 0, 2, 0, 2, 0, 0, 0, 0, 0, 32.75587 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 32.75588 + 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 32.75589 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.75590 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.75591 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.75592 + 2, 0, 0, 0, 0, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 32.75593 + 2, 1, 1, 1, 1, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 0, 32.75594 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 1, 0, 32.75595 + 2, 0, 2, 0, 2, 0, 1, 0, 2, 0, 2, 0, 2, 1, 0, 0, 32.75596 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75597 + 0, 0, 2, 2, 2, 2, 4, 2, 2, 0, 0, 0, 0, 0, 0, 0, 32.75598 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75599 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75600 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.75601 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 2, 2, 32.75602 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75603 + 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75604 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.75605 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75606 + 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.75607 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75608 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.75609 + 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 32.75610 + 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75611 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75612 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 32.75613 + 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 32.75614 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75615 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 0, 0, 0, 32.75616 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75617 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75618 + 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.75619 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75620 + 2, 1, 3, 3, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.75621 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 32.75622 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75623 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 32.75624 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 32.75625 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 32.75626 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75627 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75628 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75629 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75630 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75631 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75632 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75633 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75634 + 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75635 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.75636 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.75637 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75638 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 1, 0, 0, 0, 1, 32.75639 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 32.75640 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 32.75641 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75642 + 1, 1, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75643 + 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75644 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75646 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75647 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75648 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75649 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75650 + 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 32.75651 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75652 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75653 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75654 + 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75655 + 0, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75656 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 2, 32.75657 + 3, 2, 1, 1, 1, 1, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 32.75658 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75659 + 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 0, 0, 1, 0, 0, 0, 32.75660 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 32.75661 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 32.75662 + 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75663 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75664 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75665 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75666 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75667 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 32.75668 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 2, 1, 32.75669 + 2, 1, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75670 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75671 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75672 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75673 + 1, 1, 0, 0, 0, 0, 0, 1, 2, 2, 4, 2, 1, 0, 0, 0, 32.75674 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 32.75675 + 1, 0, 1, 3, 3, 2, 3, 2, 3, 2, 2, 2, 1, 1, 3, 2, 32.75676 + 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1, 32.75677 + 1, 1, 2, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 32.75678 + 0, 0, 1, 0, 1, 1, 2, 0, 1, 0, 0, 0, 1, 1, 1, 0, 32.75679 + 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.75680 + 2, 2, 2, 2, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 2, 2, 32.75681 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 32.75682 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75684 + 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.75685 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75686 + 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.75687 + 1, 0, 1, 0, 2, 1, 3, 1, 2, 0, 1, 0, 0, 0, 0, 0, 32.75688 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75689 + 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75690 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75691 + 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 2, 4, 32.75692 + 5, 3, 2, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.75693 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 0, 1, 2, 2, 3, 2, 32.75694 + 1, 1, 1, 1, 1, 3, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 32.75695 + 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 32.75696 + 1, 2, 3, 3, 3, 3, 1, 0, 2, 1, 0, 1, 1, 2, 2, 2, 32.75697 + 1, 1, 0, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 32.75698 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 32.75699 + 0, 0, 2, 3, 2, 1, 1, 1, 2, 1, 2, 0, 0, 0, 0, 0, 32.75700 + 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75701 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 2, 2, 2, 32.75702 + 2, 2, 2, 0, 2, 0, 1, 0, 1, 1, 2, 1, 2, 3, 1, 1, 32.75703 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 1, 1, 1, 2, 32.75704 + 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 32.75705 + 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 32.75706 + 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 32.75707 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 1, 1, 1, 0, 32.75708 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75709 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 2, 2, 0, 1, 1, 2, 32.75710 + 0, 0, 1, 1, 2, 2, 4, 4, 0, 1, 3, 2, 3, 2, 1, 2, 32.75711 + 2, 2, 2, 2, 2, 2, 1, 0, 2, 0, 1, 1, 3, 2, 2, 2, 32.75712 + 2, 2, 3, 3, 3, 3, 1, 1, 2, 1, 0, 1, 1, 1, 3, 2, 32.75713 + 2, 2, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 1, 2, 1, 0, 32.75714 + 1, 1, 3, 2, 0, 1, 2, 3, 3, 3, 2, 3, 2, 1, 0, 0, 32.75715 + 1, 0, 0, 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 2, 2, 32.75716 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1, 3, 3, 0, 0, 32.75717 + 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 3, 3, 3, 2, 0, 0, 32.75718 + 0, 1, 0, 0, 2, 2, 5, 3, 2, 0, 2, 0, 1, 0, 1, 0, 32.75719 + 1, 0, 1, 0, 1, 0, 1, 0, 2, 0, 2, 0, 2, 2, 2, 2, 32.75720 + 4, 2, 3, 3, 3, 3, 3, 3, 2, 0, 2, 1, 2, 2, 4, 3, 32.75721 + 1, 2, 2, 3, 2, 2, 2, 1, 3, 2, 1, 0, 1, 0, 0, 1, 32.75722 + 2, 0, 1, 2, 2, 3, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.75723 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.75724 + 2, 2, 2, 2, 2, 1, 0, 2, 2, 2, 2, 1, 1, 0, 1, 0, 32.75725 + 1, 2, 1, 3, 3, 3, 2, 1, 1, 0, 0, 0, 0, 0, 0, 1, 32.75726 + 0, 1, 3, 2, 2, 1, 2, 1, 1, 0, 0, 0, 1, 1, 0, 0, 32.75727 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 32.75728 + 3, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 4, 3, 1, 0, 32.75729 + 2, 3, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 0, 1, 0, 32.75730 + 0, 0, 1, 0, 1, 1, 1, 0, 3, 3, 3, 3, 1, 2, 0, 0, 32.75731 + 0, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 2, 1, 32.75732 + 2, 2, 2, 2, 1, 0, 0, 0, 1, 2, 0, 0, 0, 2, 3, 2, 32.75733 + 2, 2, 2, 1, 0, 0, 0, 0, 0, 1, 2, 2, 0, 2, 1, 0, 32.75734 + 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75735 + 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 32.75736 + 2, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 1, 1, 32.75737 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.75738 + 1, 1, 1, 1, 3, 2, 2, 2, 2, 2, 3, 2, 2, 2, 1, 1, 32.75739 + 1, 2, 1, 3, 3, 2, 3, 3, 2, 2, 2, 2, 2, 2, 1, 2, 32.75740 + 1, 0, 2, 1, 2, 3, 2, 2, 2, 3, 2, 3, 3, 2, 0, 0, 32.75741 + 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.75742 + 0, 0, 1, 0, 2, 0, 3, 1, 3, 1, 3, 0, 1, 1, 2, 3, 32.75743 + 3, 2, 2, 1, 1, 0, 1, 0, 2, 1, 3, 3, 2, 2, 1, 0, 32.75744 + 0, 0, 0, 0, 0, 0, 1, 1, 2, 4, 2, 2, 1, 2, 1, 0, 32.75745 + 0, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.75746 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75747 + 0, 0, 2, 3, 1, 0, 2, 2, 1, 0, 1, 1, 0, 0, 0, 1, 32.75748 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.75749 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75750 + 0, 0, 1, 0, 1, 2, 2, 1, 2, 1, 0, 0, 0, 0, 0, 0, 32.75751 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75752 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 32.75753 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75754 + 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 32.75755 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75756 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 32.75757 + 2, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 4, 3, 2, 1, 32.75758 + 2, 1, 1, 0, 0, 0, 0, 0, 1, 0, 2, 2, 2, 2, 1, 2, 32.75759 + 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75760 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 2, 0, 32.75761 + 2, 0, 0, 0, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75762 + 2, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 32.75763 + 4, 3, 3, 1, 2, 1, 0, 0, 0, 1, 2, 2, 0, 0, 0, 0, 32.75764 + 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 32.75765 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 0, 32.75766 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75767 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75768 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 2, 1, 0, 32.75769 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75770 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75771 + 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75772 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 32.75773 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75774 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75776 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75777 + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.75778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75779 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75780 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75781 + 0, 0, 0, 0, 1, 3, 3, 2, 1, 0, 3, 2, 1, 0, 0, 0, 32.75782 + 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 32.75783 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75784 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75785 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75786 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.75787 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 32.75789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75790 + 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.75791 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75792 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75793 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75795 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75796 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75797 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75798 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75799 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 32.75800 + 2, 3, 1, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.75801 + 1, 1, 0, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75802 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75804 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75805 + 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.75806 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75808 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 0, 1, 0, 0, 0, 0, 32.75809 + 0, 0, 0, 0, 4, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.75810 + 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75811 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75812 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75813 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75814 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75816 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75817 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75818 + 0, 0, 1, 1, 0, 0, 3, 3, 2, 0, 0, 0, 2, 2, 2, 2, 32.75819 + 2, 2, 0, 0, 0, 1, 0, 0, 1, 3, 5, 4, 0, 0, 0, 0, 32.75820 + 0, 2, 1, 0, 0, 0, 0, 0, 1, 1, 6, 4, 1, 0, 1, 1, 32.75821 + 2, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 1, 2, 2, 1, 1, 32.75822 + 1, 0, 0, 3, 3, 3, 2, 2, 4, 0, 0, 0, 3, 6, 1, 0, 32.75823 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0, 32.75824 + 1, 1, 2, 3, 2, 0, 1, 2, 1, 3, 3, 3, 5, 2, 4, 3, 32.75825 + 1, 0, 0, 2, 1, 1, 1, 1, 2, 0, 0, 0, 0, 2, 0, 0, 32.75826 + 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 2, 2, 32.75827 + 1, 2, 1, 0, 0, 0, 0, 0, 0, 3, 6, 3, 0, 0, 2, 3, 32.75828 + 2, 4, 3, 1, 0, 1, 3, 3, 3, 5, 5, 6, 2, 1, 1, 1, 32.75829 + 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 32.75830 + 2, 1, 1, 1, 3, 2, 4, 3, 2, 1, 1, 0, 0, 0, 0, 0, 32.75831 + 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75832 + 0, 0, 0, 2, 3, 1, 0, 1, 1, 3, 1, 0, 1, 0, 2, 1, 32.75833 + 3, 1, 4, 2, 3, 1, 3, 0, 2, 0, 1, 0, 1, 0, 1, 0, 32.75834 + 1, 0, 2, 0, 3, 1, 3, 1, 3, 0, 1, 1, 2, 2, 1, 0, 32.75835 + 0, 0, 0, 0, 1, 0, 0, 2, 3, 3, 4, 3, 5, 4, 2, 2, 32.75836 + 2, 2, 1, 1, 2, 1, 1, 1, 2, 0, 0, 0, 2, 4, 2, 0, 32.75837 + 0, 0, 2, 2, 2, 0, 2, 0, 0, 0, 1, 1, 0, 0, 0, 1, 32.75838 + 4, 2, 2, 0, 1, 0, 0, 0, 0, 0, 4, 1, 0, 0, 0, 3, 32.75839 + 8, 5, 2, 1, 2, 1, 0, 0, 1, 1, 1, 1, 1, 2, 1, 1, 32.75840 + 2, 3, 4, 4, 4, 4, 3, 1, 1, 1, 4, 5, 5, 5, 6, 2, 32.75841 + 0, 0, 0, 3, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.75842 + 1, 0, 0, 0, 0, 0, 1, 4, 7, 4, 3, 0, 2, 3, 5, 4, 32.75843 + 4, 5, 6, 6, 5, 4, 2, 2, 5, 6, 0, 0, 3, 4, 3, 1, 32.75844 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 32.75845 + 1, 1, 2, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.75846 + 5, 3, 4, 1, 2, 4, 3, 3, 5, 6, 2, 0, 2, 4, 5, 5, 32.75847 + 9, 7, 3, 2, 4, 4, 2, 1, 0, 1, 6, 6, 3, 1, 0, 0, 32.75848 + 2, 4, 1, 0, 0, 2, 4, 4, 2, 1, 0, 1, 3, 2, 3, 1, 32.75849 + 0, 0, 1, 1, 0, 0, 1, 2, 4, 3, 0, 1, 6, 9, 8, 7, 32.75850 + 6, 3, 5, 2, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 1, 32.75851 + 0, 0, 0, 1, 2, 2, 5, 7, 10, 14, 18, 14, 2, 0, 1, 2, 32.75852 + 3, 3, 1, 1, 1, 3, 3, 4, 4, 2, 1, 2, 3, 5, 9, 8, 32.75853 + 8, 6, 2, 0, 3, 1, 0, 0, 0, 1, 2, 2, 3, 2, 2, 1, 32.75854 + 0, 1, 5, 5, 3, 4, 4, 2, 1, 2, 3, 4, 2, 2, 1, 1, 32.75855 + 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75856 + 1, 1, 0, 0, 0, 0, 0, 0, 4, 4, 6, 2, 0, 0, 0, 0, 32.75857 + 6, 5, 0, 0, 0, 0, 6, 6, 6, 1, 2, 0, 0, 0, 0, 2, 32.75858 + 3, 6, 5, 3, 1, 2, 4, 4, 5, 3, 7, 8, 2, 1, 1, 0, 32.75859 + 1, 5, 10, 11, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75860 + 5, 7, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 6, 11, 12, 7, 32.75861 + 0, 0, 0, 2, 0, 7, 1, 7, 0, 9, 5, 6, 0, 3, 12, 8, 32.75862 + 0, 0, 5, 8, 3, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.75863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32.75864 + 1, 0, 0, 0, 0, 0, 3, 4, 3, 4, 1, 0, 5, 0, 6, 9, 32.75865 + 2, 0, 0, 0, 2, 5, 8, 7, 0, 0, 7, 1, 3, 0, 0, 0, 32.75866 + 8, 22, 6, 0, 0, 0, 0, 5, 0, 0, 0, 0, 4, 3, 0, 0, 32.75867 + 0, 0, 2, 1, 5, 2, 0, 0, 4, 0, 1, 0, 3, 0, 13, 0, 32.75868 + 0, 0, 20, 30, 21, 19, 20, 13, 14, 4, 2, 0, 0, 0, 0, 0, 32.75869 + 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 4, 7, 15, 27, 36, 32.75870 + 52, 23, 9, 0, 0, 4, 10, 7, 0, 0, 5, 2, 8, 6, 4, 3, 32.75871 + 0, 0, 5, 5, 23, 17, 19, 16, 4, 0, 4, 3, 0, 0, 0, 4, 32.75872 + 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 4, 1, 0, 0, 32.75873 + 4, 4, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75874 + 0, 0, 0, 0, 0, 1, 2, 0, 0, 1, 0, 0, 0, 0, 3, 6, 32.75875 + 8, 3, 0, 0, 0, 0, 9, 4, 0, 0, 0, 0, 5, 10, 2, 5, 32.75876 + 15, 19, 18, 18, 21, 26, 32, 34, 38, 38, 35, 29, 27, 29, 24, 22, 32.75877 + 21, 14, 3, 0, 0, 0, 0, 3, 8, 14, 0, 4, 0, 0, 0, 0, 32.75878 + 0, 0, 0, 0, 0, 0, 6, 8, 7, 3, 0, 0, 0, 0, 0, 0, 32.75879 + 0, 2, 7, 11, 10, 6, 0, 1, 15, 27, 28, 18, 28, 21, 27, 28, 32.75880 + 23, 24, 17, 21, 24, 15, 4, 0, 6, 8, 2, 0, 0, 0, 2, 1, 32.75881 + 0, 0, 1, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75882 + 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 1, 2, 13, 0, 32.75883 + 2, 0, 0, 14, 23, 22, 18, 12, 15, 15, 16, 19, 23, 23, 21, 20, 32.75884 + 23, 24, 16, 16, 13, 2, 21, 0, 5, 5, 0, 0, 17, 15, 17, 15, 32.75885 + 18, 21, 24, 21, 17, 13, 12, 16, 14, 17, 15, 18, 7, 11, 4, 1, 32.75886 + 0, 0, 2, 1, 3, 3, 9, 22, 37, 16, 0, 0, 13, 21, 35, 29, 32.75887 + 2, 0, 3, 0, 0, 0, 0, 0, 8, 16, 33, 39, 25, 33, 33, 39, 32.75888 + 43, 43, 34, 22, 12, 7, 0, 0, 0, 0, 0, 2, 6, 11, 17, 19, 32.75889 + 28, 43, 38, 46, 47, 35, 29, 33, 33, 14, 6, 0, 0, 0, 4, 0, 32.75890 + 5, 0, 0, 0, 4, 7, 18, 18, 17, 17, 17, 15, 9, 9, 13, 17, 32.75891 + 18, 16, 13, 8, 0, 1, 4, 5, 3, 3, 0, 0, 1, 1, 0, 0, 32.75892 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 0, 1, 1, 32.75893 + 0, 0, 0, 0, 0, 0, 6, 4, 0, 0, 0, 4, 10, 12, 10, 2, 32.75894 + 0, 0, 4, 5, 12, 17, 34, 45, 50, 40, 22, 10, 0, 0, 0, 0, 32.75895 + 0, 6, 21, 34, 40, 54, 51, 31, 12, 4, 0, 0, 0, 0, 0, 5, 32.75896 + 0, 0, 0, 0, 0, 2, 4, 4, 0, 0, 0, 0, 2, 4, 3, 1, 32.75897 + 0, 0, 0, 3, 3, 4, 6, 5, 4, 2, 3, 1, 0, 3, 0, 12, 32.75898 + 23, 28, 33, 26, 19, 22, 27, 36, 25, 11, 0, 0, 17, 3, 8, 6, 32.75899 + 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.75900 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 32.75901 + 0, 0, 3, 4, 2, 0, 4, 13, 3, 22, 38, 57, 59, 58, 56, 53, 32.75902 + 50, 53, 57, 61, 59, 59, 61, 60, 51, 51, 34, 34, 11, 6, 14, 0, 32.75903 + 4, 23, 43, 54, 56, 58, 65, 65, 61, 56, 53, 53, 57, 63, 58, 59, 32.75904 + 54, 37, 27, 7, 7, 4, 7, 6, 10, 9, 0, 12, 43, 0, 0, 3, 32.75905 + 7, 0, 0, 0, 0, 42, 24, 0, 1, 2, 0, 0, 0, 12, 13, 0, 32.75906 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 1, 32.75907 + 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75908 + 10, 0, 0, 27, 21, 1, 8, 10, 4, 0, 32, 37, 49, 57, 59, 60, 32.75909 + 60, 59, 58, 55, 57, 50, 44, 33, 26, 23, 6, 0, 6, 4, 4, 2, 32.75910 + 0, 0, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75911 + 1, 2, 2, 1, 2, 2, 0, 0, 1, 0, 0, 0, 2, 2, 0, 0, 32.75912 + 0, 3, 8, 12, 15, 9, 0, 5, 25, 37, 27, 9, 0, 0, 0, 0, 32.75913 + 0, 0, 0, 0, 2, 8, 5, 0, 0, 0, 0, 0, 0, 0, 15, 33, 32.75914 + 27, 19, 9, 2, 0, 0, 0, 0, 0, 0, 2, 5, 8, 8, 3, 0, 32.75915 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 4, 4, 8, 5, 0, 0, 32.75916 + 0, 0, 7, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75917 + 0, 0, 25, 5, 5, 3, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 32.75918 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75919 + 0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 8, 10, 0, 0, 4, 0, 32.75920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75921 + 0, 0, 9, 0, 0, 7, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75922 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 7, 0, 5, 8, 9, 7, 32.75923 + 5, 16, 0, 0, 10, 35, 35, 26, 25, 22, 0, 0, 34, 21, 10, 8, 32.75924 + 0, 5, 1, 18, 25, 48, 2, 27, 25, 22, 36, 31, 22, 16, 11, 14, 32.75925 + 17, 16, 4, 6, 32, 0, 0, 0, 1, 15, 43, 16, 0, 4, 27, 28, 32.75926 + 28, 20, 16, 18, 31, 36, 43, 22, 0, 31, 27, 2, 3, 1, 12, 17, 32.75927 + 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 32.75928 + 12, 3, 4, 1, 1, 0, 0, 0, 5, 4, 0, 0, 0, 0, 0, 0, 32.75929 + 2, 0, 0, 0, 0, 0, 2, 3, 1, 1, 2, 1, 0, 0, 1, 1, 32.75930 + 0, 0, 0, 0, 4, 3, 0, 0, 15, 13, 4, 8, 24, 34, 24, 4, 32.75931 + 0, 0, 4, 11, 15, 18, 19, 21, 21, 17, 13, 12, 14, 17, 19, 17, 32.75932 + 8, 6, 7, 3, 0, 0, 6, 38, 29, 12, 0, 0, 0, 0, 0, 10, 32.75933 + 3, 6, 12, 11, 7, 0, 0, 0, 0, 0, 0, 1, 0, 0, 3, 4, 32.75934 + 1, 1, 9, 7, 0, 0, 0, 0, 0, 19, 19, 0, 2, 14, 13, 14, 32.75935 + 9, 13, 20, 23, 14, 7, 3, 8, 34, 6, 1, 0, 0, 0, 1, 3, 32.75936 + 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.75937 + 2, 2, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 3, 32.75938 + 0, 0, 0, 5, 5, 19, 0, 0, 6, 13, 8, 0, 0, 0, 0, 3, 32.75939 + 3, 1, 7, 0, 0, 0, 0, 20, 5, 4, 5, 3, 6, 12, 12, 0, 32.75940 + 0, 4, 8, 10, 6, 2, 0, 0, 2, 13, 0, 0, 0, 0, 30, 7, 32.75941 + 2, 0, 0, 0, 2, 7, 28, 0, 0, 18, 41, 43, 33, 33, 38, 29, 32.75942 + 28, 0, 0, 56, 16, 6, 4, 2, 4, 3, 12, 29, 42, 0, 13, 44, 32.75943 + 36, 39, 36, 32, 30, 27, 25, 19, 4, 7, 34, 0, 1, 3, 2, 4, 32.75944 + 18, 39, 0, 0, 15, 33, 35, 23, 19, 23, 44, 48, 38, 15, 0, 20, 32.75945 + 19, 0, 10, 0, 0, 19, 52, 0, 0, 0, 5, 6, 9, 11, 12, 12, 32.75946 + 9, 4, 0, 0, 0, 31, 19, 0, 0, 0, 0, 0, 0, 0, 6, 6, 32.75947 + 1, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 1, 3, 2, 1, 0, 32.75948 + 0, 0, 0, 0, 4, 2, 0, 0, 0, 0, 6, 7, 0, 0, 7, 14, 32.75949 + 31, 36, 9, 0, 0, 4, 19, 27, 26, 28, 31, 37, 43, 45, 40, 34, 32.75950 + 30, 26, 31, 36, 38, 32, 31, 23, 22, 30, 37, 26, 8, 0, 0, 22, 32.75951 + 20, 10, 4, 14, 1, 8, 0, 2, 9, 12, 9, 0, 0, 0, 0, 0, 32.75952 + 0, 0, 0, 0, 3, 0, 0, 0, 8, 6, 0, 0, 0, 0, 0, 10, 32.75953 + 42, 19, 0, 26, 31, 29, 32, 34, 41, 45, 39, 27, 14, 18, 37, 5, 32.75954 + 0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.75955 + 0, 0, 0, 0, 1, 1, 1, 2, 2, 1, 0, 0, 1, 0, 0, 0, 32.75956 + 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 9, 24, 30, 0, 15, 31, 32.75957 + 28, 26, 21, 21, 27, 30, 27, 26, 21, 9, 0, 0, 37, 12, 0, 0, 32.75958 + 0, 0, 0, 20, 44, 0, 0, 21, 31, 34, 33, 28, 24, 22, 19, 17, 32.75959 + 24, 8, 0, 46, 35, 7, 0, 0, 1, 0, 0, 16, 37, 0, 1, 31, 32.75960 + 43, 48, 44, 40, 44, 47, 36, 21, 0, 11, 34, 5, 0, 0, 1, 0, 32.75961 + 0, 13, 40, 0, 3, 27, 45, 47, 44, 38, 33, 33, 30, 22, 8, 11, 32.75962 + 43, 3, 3, 0, 0, 0, 3, 23, 47, 0, 8, 35, 34, 36, 32, 33, 32.75963 + 51, 51, 32, 7, 0, 13, 30, 0, 0, 7, 0, 14, 46, 0, 0, 22, 32.75964 + 28, 30, 33, 34, 36, 37, 33, 31, 19, 0, 0, 34, 21, 1, 0, 0, 32.75965 + 0, 0, 0, 0, 7, 7, 2, 0, 0, 0, 0, 0, 2, 2, 0, 0, 32.75966 + 0, 1, 1, 3, 2, 1, 1, 1, 0, 0, 3, 4, 1, 0, 0, 0, 32.75967 + 6, 10, 8, 5, 0, 18, 27, 0, 0, 0, 18, 24, 37, 35, 25, 28, 32.75968 + 37, 42, 48, 45, 41, 35, 29, 30, 36, 44, 48, 48, 38, 40, 43, 35, 32.75969 + 28, 32, 28, 11, 1, 0, 15, 55, 26, 0, 4, 0, 0, 0, 4, 8, 32.75970 + 9, 4, 0, 0, 0, 0, 0, 0, 1, 2, 2, 0, 0, 0, 6, 7, 32.75971 + 0, 0, 0, 0, 0, 7, 25, 45, 0, 25, 29, 35, 40, 43, 51, 52, 32.75972 + 44, 30, 10, 11, 36, 2, 0, 0, 0, 0, 3, 5, 3, 1, 0, 0, 32.75973 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 2, 4, 2, 2, 0, 32.75974 + 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 2, 3, 0, 1, 0, 0, 32.75975 + 0, 19, 44, 6, 2, 28, 36, 38, 39, 43, 46, 48, 44, 40, 31, 12, 32.75976 + 0, 33, 34, 0, 0, 0, 0, 2, 9, 11, 28, 36, 0, 22, 38, 48, 32.75977 + 46, 43, 36, 34, 40, 13, 11, 0, 47, 24, 7, 4, 1, 4, 7, 2, 32.75978 + 0, 21, 36, 0, 11, 40, 46, 44, 48, 52, 50, 43, 33, 17, 7, 6, 32.75979 + 35, 0, 7, 0, 0, 4, 0, 0, 24, 11, 0, 39, 37, 40, 43, 43, 32.75980 + 40, 36, 30, 18, 1, 4, 43, 0, 1, 0, 0, 4, 4, 25, 36, 0, 32.75981 + 0, 22, 39, 39, 45, 45, 51, 46, 34, 6, 0, 22, 28, 0, 1, 0, 32.75982 + 0, 20, 48, 0, 3, 31, 38, 41, 43, 42, 43, 48, 51, 48, 34, 4, 32.75983 + 0, 34, 17, 1, 0, 0, 0, 0, 0, 0, 7, 6, 2, 0, 0, 0, 32.75984 + 0, 0, 2, 2, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 32.75985 + 2, 3, 0, 0, 0, 2, 5, 9, 14, 17, 30, 0, 0, 0, 10, 29, 32.75986 + 39, 42, 45, 43, 33, 29, 30, 32, 36, 34, 25, 16, 12, 17, 26, 31, 32.75987 + 38, 43, 45, 37, 44, 48, 40, 36, 37, 33, 37, 18, 0, 0, 42, 28, 32.75988 + 10, 0, 0, 0, 1, 6, 7, 5, 0, 0, 0, 0, 0, 2, 3, 3, 32.75989 + 2, 0, 0, 0, 6, 8, 0, 0, 0, 1, 3, 8, 13, 44, 0, 9, 32.75990 + 23, 42, 46, 49, 55, 51, 40, 25, 8, 13, 35, 0, 0, 0, 0, 0, 32.75991 + 5, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 32.75992 + 2, 4, 3, 3, 4, 2, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 32.75993 + 2, 3, 4, 0, 0, 0, 0, 13, 26, 34, 0, 22, 37, 47, 52, 56, 32.75994 + 58, 58, 52, 46, 36, 0, 0, 72, 10, 0, 0, 0, 1, 4, 9, 7, 32.75995 + 22, 58, 0, 22, 39, 50, 55, 51, 45, 38, 22, 16, 0, 37, 37, 6, 32.75996 + 7, 0, 2, 3, 7, 12, 0, 16, 26, 0, 20, 38, 41, 46, 56, 59, 32.75997 + 55, 49, 37, 21, 14, 0, 39, 0, 2, 0, 0, 0, 0, 0, 1, 33, 32.75998 + 0, 23, 30, 37, 45, 48, 45, 41, 33, 19, 4, 5, 45, 1, 2, 0, 32.75999 + 0, 3, 4, 11, 45, 8, 0, 16, 42, 42, 49, 54, 54, 45, 35, 1, 32.76000 + 0, 32, 28, 4, 0, 0, 0, 14, 44, 0, 5, 35, 44, 48, 47, 49, 32.76001 + 51, 55, 57, 49, 31, 3, 0, 33, 14, 1, 0, 0, 0, 0, 0, 0, 32.76002 + 5, 6, 3, 1, 0, 0, 0, 0, 2, 2, 0, 1, 0, 0, 0, 3, 32.76003 + 2, 2, 0, 0, 0, 0, 1, 0, 2, 0, 5, 7, 1, 7, 13, 41, 32.76004 + 16, 0, 0, 23, 27, 42, 53, 48, 47, 52, 25, 24, 25, 27, 20, 11, 32.76005 + 0, 0, 0, 0, 4, 19, 26, 20, 26, 47, 48, 57, 48, 50, 40, 34, 32.76006 + 33, 28, 22, 0, 0, 50, 15, 5, 0, 0, 0, 0, 6, 3, 2, 0, 32.76007 + 0, 0, 2, 3, 4, 2, 1, 0, 0, 0, 6, 7, 4, 0, 2, 14, 32.76008 + 10, 14, 8, 40, 9, 4, 21, 39, 41, 49, 52, 43, 34, 20, 2, 7, 32.76009 + 33, 1, 0, 0, 0, 1, 3, 6, 1, 0, 0, 0, 0, 0, 0, 0, 32.76010 + 0, 0, 0, 0, 0, 1, 2, 3, 4, 4, 3, 2, 0, 0, 0, 0, 32.76011 + 2, 0, 0, 0, 0, 0, 2, 2, 4, 0, 0, 0, 0, 2, 12, 48, 32.76012 + 0, 17, 29, 42, 51, 61, 66, 58, 55, 47, 36, 4, 0, 62, 21, 0, 32.76013 + 0, 2, 11, 22, 2, 7, 34, 5, 0, 24, 38, 42, 54, 53, 40, 25, 32.76014 + 18, 0, 14, 28, 7, 0, 0, 0, 0, 0, 10, 11, 1, 13, 27, 0, 32.76015 + 18, 41, 39, 43, 62, 60, 51, 51, 38, 18, 35, 0, 45, 3, 5, 1, 32.76016 + 2, 0, 3, 1, 4, 42, 0, 19, 29, 38, 45, 53, 50, 40, 36, 22, 32.76017 + 4, 9, 39, 4, 0, 0, 0, 1, 5, 16, 32, 18, 0, 19, 38, 47, 32.76018 + 54, 62, 54, 42, 31, 13, 0, 40, 30, 8, 0, 0, 0, 12, 46, 0, 32.76019 + 2, 34, 37, 40, 48, 55, 53, 50, 47, 40, 24, 0, 0, 27, 9, 0, 32.76020 + 0, 0, 0, 0, 0, 0, 4, 5, 2, 1, 0, 0, 1, 1, 2, 2, 32.76021 + 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 32.76022 + 2, 0, 0, 12, 43, 0, 1, 15, 30, 39, 41, 50, 55, 53, 53, 35, 32.76023 + 23, 16, 0, 0, 0, 3, 36, 31, 41, 40, 10, 0, 0, 0, 29, 36, 32.76024 + 45, 63, 66, 59, 50, 43, 46, 35, 37, 27, 7, 0, 34, 14, 0, 0, 32.76025 + 0, 0, 5, 2, 4, 2, 0, 0, 2, 2, 3, 1, 0, 0, 0, 0, 32.76026 + 10, 8, 3, 3, 7, 12, 10, 13, 0, 34, 6, 6, 24, 34, 43, 51, 32.76027 + 48, 40, 31, 17, 2, 6, 34, 1, 0, 0, 0, 1, 2, 3, 2, 1, 32.76028 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 4, 5, 5, 32.76029 + 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 2, 2, 32.76030 + 2, 1, 1, 2, 3, 39, 0, 15, 27, 42, 50, 58, 62, 54, 52, 44, 32.76031 + 35, 6, 0, 61, 21, 0, 0, 0, 19, 10, 4, 20, 47, 0, 6, 29, 32.76032 + 34, 46, 42, 45, 30, 13, 0, 22, 29, 6, 0, 0, 0, 0, 0, 0, 32.76033 + 6, 0, 1, 20, 36, 0, 11, 35, 46, 49, 42, 51, 57, 45, 35, 29, 32.76034 + 9, 0, 48, 7, 0, 7, 5, 4, 4, 2, 4, 40, 0, 16, 27, 38, 32.76035 + 47, 53, 52, 42, 38, 24, 4, 9, 38, 4, 0, 0, 0, 2, 2, 11, 32.76036 + 25, 13, 0, 22, 38, 49, 55, 62, 54, 44, 31, 13, 0, 39, 29, 1, 32.76037 + 0, 0, 0, 9, 42, 0, 2, 36, 37, 40, 48, 53, 50, 46, 42, 32, 32.76038 + 33, 0, 10, 21, 10, 0, 0, 0, 0, 0, 0, 0, 2, 4, 2, 1, 32.76039 + 0, 0, 1, 1, 1, 0, 1, 2, 1, 0, 2, 2, 0, 0, 0, 0, 32.76040 + 0, 0, 1, 5, 8, 8, 0, 0, 1, 21, 26, 0, 13, 35, 43, 40, 32.76041 + 51, 56, 47, 48, 44, 38, 18, 3, 0, 7, 44, 35, 31, 39, 32, 20, 32.76042 + 24, 34, 9, 0, 4, 28, 45, 62, 59, 74, 76, 57, 47, 54, 47, 39, 32.76043 + 19, 0, 0, 44, 17, 6, 0, 0, 4, 1, 5, 7, 2, 1, 0, 1, 32.76044 + 2, 0, 0, 0, 1, 3, 3, 0, 0, 0, 0, 4, 13, 13, 0, 31, 32.76045 + 0, 3, 25, 36, 49, 56, 53, 41, 33, 17, 2, 7, 37, 4, 0, 0, 32.76046 + 1, 1, 1, 2, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76047 + 0, 0, 0, 2, 2, 2, 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 32.76048 + 0, 0, 1, 2, 2, 3, 5, 6, 6, 4, 0, 34, 0, 18, 28, 40, 32.76049 + 49, 55, 55, 46, 43, 39, 35, 6, 0, 64, 22, 0, 0, 7, 3, 16, 32.76050 + 13, 42, 0, 0, 21, 40, 49, 52, 38, 33, 24, 0, 0, 31, 26, 6, 32.76051 + 5, 0, 0, 0, 0, 0, 0, 0, 1, 14, 36, 0, 0, 28, 39, 45, 32.76052 + 43, 42, 47, 47, 32, 21, 0, 0, 30, 0, 1, 0, 11, 8, 4, 0, 32.76053 + 4, 42, 0, 15, 26, 36, 45, 53, 52, 40, 36, 22, 3, 8, 36, 3, 32.76054 + 0, 0, 0, 0, 0, 2, 19, 11, 0, 26, 38, 47, 54, 62, 54, 46, 32.76055 + 33, 13, 0, 31, 34, 1, 0, 3, 0, 8, 36, 0, 0, 36, 39, 42, 32.76056 + 49, 56, 54, 45, 37, 29, 21, 0, 10, 16, 1, 3, 2, 1, 2, 1, 32.76057 + 0, 0, 1, 4, 2, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 32.76058 + 1, 2, 1, 0, 0, 0, 0, 0, 0, 5, 10, 6, 1, 0, 24, 7, 32.76059 + 0, 21, 41, 49, 45, 47, 60, 54, 37, 36, 31, 18, 0, 0, 45, 29, 32.76060 + 2, 0, 18, 13, 1, 0, 0, 10, 34, 57, 0, 9, 23, 42, 54, 75, 32.76061 + 64, 72, 58, 58, 55, 50, 35, 17, 0, 10, 42, 10, 0, 0, 0, 0, 32.76062 + 6, 4, 2, 1, 0, 0, 1, 0, 0, 0, 3, 0, 1, 4, 0, 0, 32.76063 + 0, 4, 9, 7, 0, 29, 0, 0, 23, 39, 50, 59, 55, 43, 33, 20, 32.76064 + 3, 8, 38, 3, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76065 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.76066 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 6, 9, 10, 7, 32.76067 + 0, 34, 0, 21, 28, 40, 47, 53, 54, 44, 39, 34, 33, 4, 0, 61, 32.76068 + 22, 0, 0, 3, 4, 15, 36, 0, 0, 16, 37, 50, 48, 30, 32, 14, 32.76069 + 0, 5, 37, 18, 4, 11, 11, 0, 0, 0, 0, 0, 0, 0, 2, 8, 32.76070 + 23, 0, 0, 15, 35, 37, 33, 34, 38, 38, 39, 2, 0, 35, 15, 0, 32.76071 + 0, 7, 10, 6, 0, 0, 7, 45, 0, 17, 27, 40, 49, 57, 54, 44, 32.76072 + 38, 24, 3, 8, 34, 1, 0, 0, 1, 0, 0, 0, 18, 11, 0, 30, 32.76073 + 38, 44, 50, 58, 54, 46, 33, 11, 0, 26, 24, 0, 0, 5, 0, 14, 32.76074 + 37, 0, 0, 36, 40, 45, 54, 61, 56, 47, 34, 26, 16, 0, 1, 13, 32.76075 + 0, 2, 2, 3, 4, 5, 0, 0, 1, 2, 2, 1, 0, 0, 1, 1, 32.76076 + 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 3, 32.76077 + 1, 10, 8, 22, 37, 0, 0, 27, 36, 43, 49, 59, 60, 48, 34, 27, 32.76078 + 18, 0, 0, 52, 24, 3, 2, 8, 7, 7, 1, 0, 0, 8, 28, 42, 32.76079 + 41, 0, 5, 23, 47, 52, 52, 60, 71, 66, 66, 52, 41, 22, 19, 0, 32.76080 + 30, 34, 13, 0, 0, 0, 4, 3, 1, 0, 0, 0, 0, 0, 0, 0, 32.76081 + 5, 1, 4, 4, 0, 0, 0, 0, 2, 0, 0, 33, 0, 0, 20, 38, 32.76082 + 50, 61, 57, 45, 35, 23, 7, 9, 40, 4, 0, 0, 1, 1, 0, 0, 32.76083 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76084 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.76085 + 0, 0, 3, 8, 12, 8, 0, 37, 0, 27, 30, 38, 47, 53, 58, 49, 32.76086 + 39, 33, 33, 1, 0, 53, 22, 4, 0, 0, 1, 15, 27, 0, 0, 33, 32.76087 + 42, 51, 44, 39, 26, 18, 0, 35, 33, 10, 7, 10, 8, 7, 4, 0, 32.76088 + 0, 0, 0, 7, 9, 9, 5, 17, 0, 0, 4, 31, 19, 15, 25, 28, 32.76089 + 21, 0, 0, 38, 3, 2, 5, 7, 3, 0, 0, 0, 11, 54, 0, 24, 32.76090 + 36, 49, 56, 64, 61, 49, 42, 25, 4, 7, 34, 0, 0, 0, 1, 0, 32.76091 + 0, 0, 16, 11, 0, 33, 36, 40, 45, 54, 52, 46, 35, 11, 0, 23, 32.76092 + 20, 0, 2, 6, 2, 15, 28, 0, 0, 34, 40, 47, 58, 65, 60, 51, 32.76093 + 37, 26, 29, 0, 7, 5, 10, 0, 4, 4, 6, 4, 0, 0, 2, 4, 32.76094 + 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 2, 3, 1, 32.76095 + 0, 0, 0, 0, 1, 2, 0, 10, 17, 48, 0, 0, 22, 31, 40, 51, 32.76096 + 58, 61, 57, 50, 42, 19, 0, 0, 39, 32, 6, 5, 0, 0, 7, 0, 32.76097 + 0, 0, 0, 4, 13, 21, 29, 41, 0, 0, 28, 36, 42, 52, 64, 75, 32.76098 + 75, 53, 47, 40, 23, 4, 0, 53, 19, 3, 0, 0, 2, 2, 1, 0, 32.76099 + 0, 0, 0, 0, 1, 3, 3, 10, 13, 11, 10, 12, 8, 3, 13, 9, 32.76100 + 0, 31, 0, 0, 23, 39, 49, 58, 55, 46, 37, 23, 8, 9, 38, 1, 32.76101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 32.76102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76103 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 5, 0, 38, 0, 30, 32.76104 + 28, 36, 45, 55, 63, 54, 43, 35, 33, 1, 0, 51, 24, 5, 0, 5, 32.76105 + 5, 32, 0, 4, 30, 39, 44, 52, 43, 36, 22, 0, 39, 18, 5, 1, 32.76106 + 6, 0, 6, 12, 3, 1, 0, 0, 1, 5, 6, 10, 0, 16, 23, 0, 32.76107 + 0, 0, 3, 0, 0, 0, 0, 14, 54, 31, 7, 0, 5, 0, 0, 0, 32.76108 + 0, 0, 9, 49, 0, 25, 36, 47, 56, 62, 59, 48, 40, 24, 2, 6, 32.76109 + 33, 0, 0, 0, 2, 2, 0, 0, 18, 13, 0, 35, 34, 37, 41, 51, 32.76110 + 50, 46, 35, 13, 0, 23, 21, 0, 8, 7, 6, 15, 26, 0, 0, 30, 32.76111 + 37, 44, 57, 65, 62, 51, 41, 31, 30, 0, 2, 4, 11, 0, 3, 4, 32.76112 + 7, 6, 0, 0, 2, 3, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.76113 + 0, 0, 2, 2, 3, 2, 0, 0, 0, 0, 3, 4, 0, 4, 30, 31, 32.76114 + 0, 8, 28, 50, 55, 64, 65, 63, 55, 48, 44, 10, 0, 35, 39, 13, 32.76115 + 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 12, 33, 38, 0, 32.76116 + 1, 31, 41, 53, 56, 60, 72, 61, 59, 40, 43, 9, 0, 27, 30, 9, 32.76117 + 0, 0, 2, 3, 2, 0, 0, 0, 0, 3, 6, 8, 13, 18, 23, 31, 32.76118 + 40, 36, 25, 25, 11, 18, 7, 33, 0, 1, 26, 43, 45, 52, 50, 42, 32.76119 + 35, 23, 8, 8, 34, 0, 0, 0, 0, 2, 1, 1, 1, 1, 0, 0, 32.76120 + 3, 3, 4, 2, 2, 0, 1, 0, 0, 1, 2, 2, 3, 1, 1, 0, 32.76121 + 0, 0, 1, 0, 3, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0, 0, 32.76122 + 2, 0, 0, 34, 0, 31, 26, 33, 45, 57, 70, 62, 51, 41, 37, 5, 32.76123 + 0, 54, 23, 2, 0, 16, 45, 0, 0, 33, 36, 51, 53, 31, 39, 13, 32.76124 + 0, 23, 30, 10, 0, 0, 0, 0, 0, 6, 5, 9, 0, 0, 0, 0, 32.76125 + 0, 3, 6, 8, 15, 36, 27, 0, 0, 0, 0, 0, 24, 33, 26, 5, 32.76126 + 5, 0, 0, 4, 0, 0, 3, 2, 1, 39, 0, 19, 27, 36, 45, 53, 32.76127 + 50, 40, 33, 18, 0, 1, 31, 0, 0, 0, 4, 5, 2, 7, 21, 15, 32.76128 + 0, 35, 34, 35, 39, 49, 48, 44, 35, 15, 0, 26, 14, 0, 7, 10, 32.76129 + 14, 17, 32, 4, 0, 25, 31, 41, 54, 63, 56, 49, 43, 38, 27, 0, 32.76130 + 7, 5, 5, 0, 3, 3, 7, 5, 0, 0, 3, 4, 2, 0, 0, 0, 32.76131 + 0, 1, 1, 0, 0, 0, 1, 0, 2, 1, 3, 2, 0, 0, 0, 0, 32.76132 + 3, 5, 0, 13, 44, 0, 0, 27, 33, 50, 51, 64, 65, 63, 54, 35, 32.76133 + 25, 0, 0, 46, 18, 7, 0, 0, 7, 0, 2, 0, 0, 0, 0, 0, 32.76134 + 0, 0, 4, 18, 39, 0, 0, 15, 36, 51, 57, 51, 66, 60, 57, 55, 32.76135 + 35, 16, 0, 0, 44, 12, 0, 0, 5, 6, 3, 0, 0, 0, 7, 16, 32.76136 + 29, 40, 32, 11, 0, 0, 0, 0, 0, 9, 17, 44, 44, 61, 13, 8, 32.76137 + 27, 39, 43, 50, 49, 42, 36, 23, 4, 4, 33, 0, 0, 0, 0, 4, 32.76138 + 7, 15, 30, 35, 35, 38, 41, 42, 37, 36, 37, 37, 37, 34, 33, 25, 32.76139 + 11, 3, 4, 2, 0, 0, 0, 2, 4, 10, 25, 34, 36, 39, 41, 40, 32.76140 + 38, 32, 21, 11, 4, 2, 0, 0, 0, 39, 0, 31, 27, 33, 43, 55, 32.76141 + 72, 64, 54, 44, 41, 7, 0, 55, 23, 5, 11, 33, 0, 0, 20, 39, 32.76142 + 47, 57, 35, 29, 22, 0, 34, 40, 11, 0, 0, 0, 0, 0, 0, 0, 32.76143 + 7, 5, 1, 0, 0, 3, 3, 3, 32, 29, 33, 42, 64, 74, 79, 78, 32.76144 + 74, 60, 46, 38, 15, 0, 6, 0, 0, 0, 0, 0, 7, 4, 0, 35, 32.76145 + 0, 19, 26, 33, 42, 50, 49, 39, 31, 17, 0, 1, 32, 0, 0, 0, 32.76146 + 5, 8, 5, 11, 23, 13, 0, 33, 34, 37, 41, 49, 46, 42, 35, 15, 32.76147 + 0, 30, 24, 0, 5, 7, 10, 8, 25, 13, 0, 23, 30, 37, 52, 60, 32.76148 + 55, 48, 44, 37, 38, 0, 32, 0, 4, 0, 3, 5, 6, 5, 0, 0, 32.76149 + 3, 4, 3, 0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0, 2, 3, 32.76150 + 0, 2, 0, 0, 0, 0, 4, 3, 0, 18, 44, 0, 7, 26, 37, 47, 32.76151 + 59, 62, 62, 55, 53, 37, 20, 0, 31, 11, 11, 1, 0, 2, 4, 2, 32.76152 + 1, 2, 0, 0, 0, 0, 0, 0, 4, 3, 20, 33, 0, 0, 23, 40, 32.76153 + 48, 55, 65, 66, 60, 50, 39, 28, 14, 0, 27, 7, 6, 3, 7, 9, 32.76154 + 6, 4, 2, 1, 21, 32, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76155 + 0, 0, 0, 74, 48, 15, 27, 38, 50, 56, 51, 43, 39, 23, 1, 0, 32.76156 + 31, 0, 0, 1, 2, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76157 + 0, 0, 0, 0, 0, 0, 28, 0, 7, 0, 0, 0, 5, 6, 7, 0, 32.76158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 13, 0, 0, 0, 51, 32.76159 + 0, 33, 34, 36, 39, 50, 66, 58, 52, 50, 46, 9, 0, 61, 13, 12, 32.76160 + 30, 19, 0, 9, 42, 44, 50, 43, 26, 8, 0, 9, 44, 12, 0, 0, 32.76161 + 0, 0, 0, 0, 0, 0, 1, 3, 5, 5, 0, 2, 12, 11, 0, 0, 32.76162 + 0, 3, 17, 24, 24, 24, 19, 17, 17, 0, 0, 5, 20, 0, 0, 0, 32.76163 + 0, 0, 1, 1, 3, 41, 0, 21, 29, 38, 47, 53, 52, 40, 34, 20, 32.76164 + 0, 4, 33, 1, 0, 0, 1, 4, 4, 9, 19, 9, 0, 27, 36, 41, 32.76165 + 46, 54, 48, 42, 31, 13, 0, 31, 31, 0, 1, 0, 4, 7, 27, 7, 32.76166 + 0, 29, 35, 40, 51, 59, 57, 50, 42, 31, 30, 0, 32, 0, 0, 0, 32.76167 + 7, 5, 2, 0, 0, 0, 5, 6, 3, 1, 0, 0, 0, 0, 3, 1, 32.76168 + 0, 1, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 2, 3, 0, 32, 32.76169 + 7, 2, 19, 33, 43, 48, 58, 56, 50, 45, 42, 29, 5, 0, 33, 8, 32.76170 + 7, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 3, 2, 3, 3, 32.76171 + 8, 28, 0, 0, 14, 36, 44, 53, 64, 66, 60, 50, 43, 37, 20, 0, 32.76172 + 14, 23, 7, 0, 1, 12, 1, 5, 17, 29, 15, 0, 0, 3, 23, 26, 32.76173 + 26, 26, 23, 24, 35, 37, 36, 11, 3, 0, 12, 40, 45, 38, 58, 60, 32.76174 + 52, 46, 42, 24, 0, 0, 29, 0, 0, 3, 2, 10, 21, 22, 0, 6, 32.76175 + 8, 22, 30, 24, 19, 18, 24, 27, 21, 13, 21, 0, 20, 13, 9, 2, 32.76176 + 0, 0, 3, 8, 13, 27, 18, 0, 10, 24, 30, 24, 30, 3, 0, 32, 32.76177 + 30, 15, 0, 0, 2, 51, 0, 33, 35, 37, 39, 51, 64, 60, 55, 43, 32.76178 + 40, 11, 0, 45, 32, 21, 47, 0, 4, 41, 38, 55, 42, 18, 10, 0, 32.76179 + 0, 57, 19, 0, 7, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 1, 32.76180 + 1, 1, 10, 34, 17, 0, 0, 0, 5, 9, 8, 6, 3, 4, 14, 0, 32.76181 + 0, 21, 25, 0, 0, 0, 0, 0, 0, 0, 4, 44, 0, 24, 31, 40, 32.76182 + 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 32.76183 + 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 33, 33, 0, 32.76184 + 0, 0, 1, 7, 25, 7, 0, 30, 34, 39, 50, 57, 58, 51, 42, 31, 32.76185 + 27, 0, 30, 0, 0, 0, 6, 7, 0, 0, 0, 0, 4, 6, 3, 1, 32.76186 + 1, 0, 2, 0, 1, 1, 1, 1, 1, 0, 2, 1, 1, 1, 1, 0, 32.76187 + 0, 0, 3, 8, 14, 42, 0, 9, 29, 41, 45, 54, 62, 52, 46, 36, 32.76188 + 33, 18, 0, 18, 35, 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76189 + 0, 0, 0, 0, 0, 1, 2, 28, 40, 0, 7, 33, 40, 48, 60, 65, 32.76190 + 61, 53, 46, 40, 31, 0, 0, 43, 11, 1, 0, 0, 0, 18, 50, 31, 32.76191 + 0, 0, 3, 31, 30, 38, 47, 45, 38, 43, 46, 32, 34, 26, 16, 16, 32.76192 + 34, 43, 47, 62, 64, 62, 51, 46, 44, 23, 0, 0, 25, 2, 0, 6, 32.76193 + 11, 5, 12, 35, 52, 0, 7, 30, 27, 34, 23, 33, 27, 35, 26, 28, 32.76194 + 29, 0, 0, 41, 17, 2, 0, 0, 0, 3, 7, 32, 56, 0, 7, 28, 32.76195 + 34, 24, 29, 0, 0, 48, 22, 10, 0, 0, 3, 46, 0, 29, 32, 37, 32.76196 + 41, 52, 66, 61, 50, 45, 33, 0, 0, 71, 36, 50, 0, 0, 21, 37, 32.76197 + 49, 39, 19, 11, 0, 0, 51, 19, 9, 6, 7, 9, 0, 0, 0, 0, 32.76198 + 0, 1, 2, 1, 0, 0, 0, 0, 6, 27, 49, 0, 0, 7, 19, 23, 32.76199 + 21, 20, 19, 18, 20, 8, 0, 29, 28, 0, 0, 0, 0, 0, 0, 0, 32.76200 + 3, 42, 0, 24, 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 32.76201 + 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 32.76202 + 31, 11, 0, 33, 32, 0, 0, 0, 1, 8, 20, 5, 0, 30, 35, 40, 32.76203 + 51, 57, 59, 52, 42, 34, 26, 0, 31, 0, 0, 0, 6, 4, 1, 0, 32.76204 + 0, 0, 4, 6, 3, 1, 0, 0, 2, 0, 2, 0, 0, 1, 2, 0, 32.76205 + 1, 0, 1, 1, 1, 0, 0, 1, 5, 12, 25, 26, 0, 13, 37, 46, 32.76206 + 45, 59, 64, 50, 45, 37, 28, 9, 0, 43, 25, 2, 0, 0, 0, 0, 32.76207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 52, 0, 32.76208 + 2, 33, 39, 46, 58, 63, 62, 55, 47, 41, 34, 1, 0, 65, 14, 0, 32.76209 + 2, 0, 6, 22, 0, 0, 10, 22, 37, 40, 52, 45, 43, 46, 48, 47, 32.76210 + 46, 41, 37, 40, 18, 23, 37, 51, 58, 62, 67, 59, 49, 45, 43, 24, 32.76211 + 0, 0, 29, 4, 0, 0, 6, 7, 12, 23, 54, 25, 0, 12, 31, 40, 32.76212 + 46, 31, 34, 37, 35, 42, 28, 9, 0, 48, 22, 1, 4, 0, 0, 2, 32.76213 + 6, 25, 44, 0, 0, 28, 37, 29, 24, 0, 11, 30, 15, 8, 0, 0, 32.76214 + 2, 41, 0, 25, 29, 37, 43, 54, 67, 60, 54, 39, 28, 0, 0, 69, 32.76215 + 68, 1, 0, 32, 30, 40, 52, 30, 22, 0, 0, 49, 22, 4, 0, 6, 32.76216 + 9, 3, 0, 0, 0, 0, 0, 4, 3, 0, 0, 0, 0, 0, 7, 14, 32.76217 + 49, 18, 0, 13, 26, 31, 32, 32, 29, 27, 29, 11, 0, 24, 27, 0, 32.76218 + 0, 0, 0, 0, 0, 0, 3, 42, 0, 24, 31, 40, 49, 55, 54, 42, 32.76219 + 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 32.76220 + 36, 43, 50, 56, 50, 40, 31, 11, 0, 33, 31, 0, 0, 0, 3, 7, 32.76221 + 13, 8, 0, 29, 35, 40, 51, 60, 57, 50, 41, 35, 22, 0, 31, 0, 32.76222 + 0, 0, 5, 4, 0, 0, 0, 0, 4, 5, 2, 1, 0, 0, 2, 0, 32.76223 + 1, 0, 0, 0, 0, 1, 2, 1, 0, 1, 1, 0, 0, 0, 3, 14, 32.76224 + 30, 4, 0, 19, 36, 49, 53, 65, 61, 47, 42, 33, 24, 1, 0, 52, 32.76225 + 23, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76226 + 3, 0, 1, 12, 37, 0, 1, 35, 39, 44, 54, 62, 63, 57, 49, 40, 32.76227 + 30, 2, 0, 58, 15, 0, 0, 12, 26, 18, 0, 14, 37, 53, 50, 57, 32.76228 + 48, 59, 53, 42, 38, 35, 32, 32, 32, 19, 27, 23, 35, 44, 63, 83, 32.76229 + 71, 60, 49, 45, 44, 25, 0, 0, 28, 1, 4, 3, 0, 4, 13, 16, 32.76230 + 9, 62, 0, 1, 25, 35, 54, 39, 44, 37, 52, 44, 40, 22, 0, 19, 32.76231 + 28, 0, 8, 5, 0, 0, 9, 26, 52, 0, 0, 34, 33, 14, 0, 0, 32.76232 + 46, 14, 10, 6, 0, 0, 0, 37, 0, 21, 29, 40, 45, 55, 66, 59, 32.76233 + 46, 31, 21, 0, 0, 94, 53, 0, 16, 36, 38, 47, 45, 35, 24, 0, 32.76234 + 48, 27, 14, 0, 7, 0, 0, 0, 4, 4, 0, 0, 0, 1, 3, 1, 32.76235 + 0, 0, 0, 0, 2, 15, 34, 19, 0, 19, 31, 38, 43, 46, 42, 37, 32.76236 + 27, 9, 0, 26, 31, 0, 0, 0, 0, 0, 0, 0, 3, 42, 0, 24, 32.76237 + 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 32.76238 + 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 33, 32.76239 + 30, 2, 0, 0, 1, 6, 13, 25, 0, 25, 32, 39, 50, 59, 56, 49, 32.76240 + 39, 33, 17, 0, 29, 0, 0, 0, 4, 3, 1, 0, 0, 0, 3, 3, 32.76241 + 2, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 2, 0, 0, 0, 32.76242 + 0, 0, 0, 0, 2, 16, 37, 0, 0, 24, 31, 51, 63, 63, 59, 47, 32.76243 + 39, 31, 23, 0, 0, 54, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0, 32.76244 + 0, 0, 0, 0, 0, 0, 3, 1, 4, 7, 19, 15, 0, 34, 36, 41, 32.76245 + 51, 60, 61, 56, 51, 42, 28, 8, 0, 25, 17, 0, 5, 38, 34, 0, 32.76246 + 0, 35, 55, 55, 52, 60, 63, 60, 43, 29, 24, 16, 1, 0, 0, 0, 32.76247 + 1, 12, 15, 31, 58, 68, 70, 62, 49, 44, 43, 26, 0, 0, 29, 0, 32.76248 + 3, 8, 1, 0, 2, 0, 0, 18, 39, 0, 12, 37, 36, 51, 50, 49, 32.76249 + 57, 49, 46, 26, 5, 0, 42, 9, 6, 1, 0, 0, 7, 24, 49, 0, 32.76250 + 2, 37, 37, 9, 0, 0, 34, 10, 3, 0, 2, 0, 0, 37, 0, 18, 32.76251 + 28, 40, 47, 56, 67, 59, 40, 36, 26, 1, 0, 102, 1, 16, 20, 43, 32.76252 + 45, 49, 45, 34, 17, 10, 72, 17, 6, 5, 0, 1, 0, 0, 4, 7, 32.76253 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 23, 12, 0, 27, 32.76254 + 36, 43, 50, 54, 50, 40, 32, 17, 0, 31, 32, 0, 0, 0, 0, 0, 32.76255 + 0, 0, 3, 42, 0, 24, 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 32.76256 + 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 32.76257 + 50, 40, 31, 11, 0, 33, 30, 2, 0, 0, 0, 7, 17, 48, 0, 21, 32.76258 + 29, 39, 50, 57, 54, 47, 36, 30, 14, 0, 29, 0, 0, 1, 1, 2, 32.76259 + 0, 1, 0, 0, 3, 2, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 32.76260 + 0, 0, 2, 0, 1, 1, 0, 0, 0, 0, 2, 15, 42, 0, 0, 21, 32.76261 + 31, 50, 61, 65, 61, 51, 41, 34, 26, 0, 0, 47, 16, 2, 0, 0, 32.76262 + 0, 0, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0, 1, 5, 0, 1, 32.76263 + 6, 28, 0, 32, 37, 39, 48, 58, 60, 57, 52, 40, 28, 13, 0, 24, 32.76264 + 17, 0, 23, 51, 0, 0, 23, 41, 42, 54, 55, 58, 64, 48, 41, 28, 32.76265 + 0, 0, 0, 17, 22, 2, 0, 0, 14, 30, 49, 61, 63, 60, 50, 44, 32.76266 + 43, 25, 3, 1, 36, 0, 0, 0, 0, 1, 2, 0, 0, 10, 51, 0, 32.76267 + 6, 36, 28, 43, 50, 58, 57, 59, 42, 37, 21, 0, 22, 28, 11, 4, 32.76268 + 5, 2, 7, 29, 37, 0, 22, 40, 32, 3, 0, 33, 12, 0, 0, 0, 32.76269 + 4, 0, 0, 38, 0, 14, 28, 40, 48, 56, 67, 63, 55, 42, 38, 23, 32.76270 + 0, 32, 18, 23, 37, 46, 48, 54, 50, 41, 28, 0, 5, 32, 18, 4, 32.76271 + 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 32.76272 + 0, 0, 16, 15, 0, 32, 38, 43, 52, 55, 50, 40, 30, 14, 0, 28, 32.76273 + 30, 0, 3, 5, 2, 0, 0, 0, 3, 42, 0, 22, 31, 40, 49, 55, 32.76274 + 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 32.76275 + 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 33, 30, 0, 0, 0, 32.76276 + 2, 4, 14, 55, 0, 17, 29, 38, 49, 56, 54, 45, 35, 29, 12, 6, 32.76277 + 29, 0, 0, 0, 1, 1, 2, 1, 0, 0, 2, 2, 2, 0, 0, 0, 32.76278 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76279 + 2, 16, 39, 0, 0, 11, 34, 49, 53, 70, 59, 55, 43, 37, 30, 0, 32.76280 + 0, 34, 14, 3, 0, 0, 0, 1, 0, 0, 3, 2, 0, 0, 0, 0, 32.76281 + 2, 1, 4, 9, 0, 0, 3, 33, 0, 33, 38, 39, 48, 57, 59, 56, 32.76282 + 49, 40, 31, 1, 0, 37, 26, 3, 33, 8, 0, 20, 36, 38, 45, 51, 32.76283 + 51, 54, 48, 37, 33, 5, 0, 25, 50, 28, 27, 49, 70, 0, 3, 33, 32.76284 + 44, 52, 57, 57, 49, 40, 42, 26, 4, 1, 28, 5, 6, 0, 0, 0, 32.76285 + 0, 0, 0, 0, 24, 31, 0, 24, 29, 39, 50, 51, 64, 57, 45, 44, 32.76286 + 32, 0, 0, 36, 20, 2, 0, 4, 6, 39, 4, 9, 32, 41, 26, 0, 32.76287 + 0, 51, 10, 0, 0, 5, 1, 6, 0, 37, 0, 15, 27, 40, 47, 56, 32.76288 + 68, 67, 63, 51, 47, 44, 27, 15, 32, 41, 49, 45, 57, 52, 61, 54, 32.76289 + 35, 4, 0, 43, 26, 3, 6, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.76290 + 0, 0, 0, 6, 0, 0, 3, 0, 10, 5, 0, 38, 39, 43, 53, 58, 32.76291 + 52, 42, 35, 16, 0, 32, 34, 2, 2, 0, 2, 0, 0, 0, 3, 42, 32.76292 + 0, 22, 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 32.76293 + 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 32.76294 + 0, 33, 29, 0, 0, 0, 4, 3, 3, 48, 0, 16, 28, 39, 50, 59, 32.76295 + 55, 46, 35, 26, 9, 14, 30, 0, 0, 0, 0, 0, 4, 1, 0, 0, 32.76296 + 2, 2, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76297 + 1, 1, 0, 0, 0, 0, 3, 18, 41, 0, 0, 19, 31, 45, 67, 64, 32.76298 + 58, 52, 50, 32, 28, 0, 0, 41, 15, 2, 0, 0, 0, 0, 0, 0, 32.76299 + 4, 3, 1, 0, 0, 0, 0, 2, 1, 8, 0, 0, 0, 32, 0, 29, 32.76300 + 33, 36, 43, 53, 62, 59, 51, 44, 32, 16, 0, 1, 31, 17, 44, 0, 32.76301 + 0, 28, 36, 42, 50, 52, 46, 41, 41, 27, 29, 0, 9, 35, 20, 7, 32.76302 + 10, 20, 41, 15, 0, 29, 42, 47, 52, 55, 50, 41, 41, 24, 2, 1, 32.76303 + 32, 0, 3, 1, 0, 0, 0, 0, 0, 0, 16, 50, 0, 5, 28, 33, 32.76304 + 42, 53, 59, 54, 50, 45, 36, 8, 0, 51, 19, 1, 0, 7, 8, 46, 32.76305 + 0, 32, 36, 40, 24, 0, 5, 27, 0, 0, 0, 6, 9, 7, 1, 36, 32.76306 + 0, 13, 30, 42, 48, 53, 61, 69, 76, 61, 68, 63, 40, 31, 38, 43, 32.76307 + 51, 64, 70, 66, 59, 53, 41, 21, 0, 0, 37, 11, 0, 0, 4, 3, 32.76308 + 0, 0, 1, 0, 0, 0, 0, 0, 3, 4, 1, 0, 0, 2, 4, 4, 32.76309 + 0, 40, 39, 42, 51, 54, 49, 41, 36, 14, 0, 32, 31, 3, 3, 0, 32.76310 + 2, 0, 1, 0, 3, 42, 0, 21, 31, 40, 49, 55, 54, 42, 36, 22, 32.76311 + 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 32.76312 + 50, 56, 50, 40, 31, 11, 0, 33, 28, 0, 0, 0, 1, 5, 7, 44, 32.76313 + 0, 16, 27, 36, 52, 60, 53, 47, 37, 24, 2, 11, 24, 0, 0, 0, 32.76314 + 0, 0, 3, 3, 0, 0, 2, 2, 2, 0, 0, 0, 1, 0, 0, 0, 32.76315 + 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 3, 19, 47, 0, 32.76316 + 0, 17, 39, 48, 58, 67, 64, 50, 41, 36, 26, 0, 0, 39, 14, 1, 32.76317 + 0, 0, 0, 0, 1, 0, 3, 2, 1, 0, 0, 0, 0, 1, 2, 2, 32.76318 + 0, 0, 0, 29, 0, 32, 33, 36, 44, 53, 61, 58, 50, 43, 31, 14, 32.76319 + 1, 0, 31, 17, 36, 0, 6, 32, 40, 48, 54, 55, 47, 39, 28, 27, 32.76320 + 16, 0, 41, 7, 0, 0, 0, 4, 18, 32, 0, 33, 35, 43, 51, 57, 32.76321 + 50, 41, 39, 25, 2, 1, 32, 0, 2, 1, 0, 0, 0, 0, 0, 1, 32.76322 + 8, 35, 17, 0, 19, 42, 41, 48, 55, 56, 53, 45, 36, 16, 0, 4, 32.76323 + 39, 3, 0, 9, 11, 15, 0, 40, 39, 26, 18, 0, 34, 19, 0, 0, 32.76324 + 3, 9, 11, 8, 2, 37, 0, 15, 29, 42, 48, 54, 62, 69, 77, 83, 32.76325 + 68, 66, 63, 39, 50, 50, 59, 71, 78, 73, 63, 55, 43, 34, 24, 0, 32.76326 + 6, 31, 0, 0, 1, 5, 0, 0, 1, 0, 0, 0, 0, 3, 6, 7, 32.76327 + 3, 0, 0, 1, 3, 1, 0, 40, 38, 40, 49, 54, 49, 39, 36, 14, 32.76328 + 0, 32, 31, 3, 3, 0, 2, 0, 1, 0, 3, 42, 0, 21, 31, 40, 32.76329 + 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 32.76330 + 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 33, 28, 0, 32.76331 + 0, 0, 1, 3, 5, 42, 0, 8, 27, 37, 50, 59, 54, 46, 35, 26, 32.76332 + 3, 6, 32, 1, 0, 0, 0, 0, 3, 4, 0, 0, 2, 2, 2, 0, 32.76333 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 32.76334 + 0, 0, 2, 21, 52, 0, 1, 26, 39, 48, 64, 65, 64, 50, 36, 36, 32.76335 + 22, 0, 0, 36, 14, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 32.76336 + 0, 0, 0, 1, 4, 0, 0, 0, 0, 31, 0, 32, 34, 37, 46, 55, 32.76337 + 61, 57, 49, 44, 29, 19, 0, 10, 35, 23, 26, 0, 14, 33, 48, 56, 32.76338 + 62, 63, 52, 39, 33, 14, 0, 29, 37, 0, 0, 0, 2, 2, 10, 45, 32.76339 + 0, 20, 28, 42, 50, 56, 49, 41, 37, 24, 3, 1, 30, 0, 3, 3, 32.76340 + 0, 0, 0, 0, 0, 8, 7, 24, 43, 0, 7, 39, 38, 43, 52, 58, 32.76341 + 58, 49, 36, 25, 8, 0, 52, 7, 0, 12, 25, 0, 0, 34, 38, 21, 32.76342 + 2, 0, 44, 1, 0, 0, 5, 11, 11, 9, 2, 38, 0, 17, 31, 41, 32.76343 + 48, 53, 61, 67, 70, 78, 62, 59, 59, 46, 42, 50, 61, 69, 72, 70, 32.76344 + 66, 56, 47, 41, 33, 15, 0, 44, 13, 0, 3, 0, 6, 5, 4, 1, 32.76345 + 0, 0, 4, 6, 9, 7, 2, 0, 0, 3, 5, 3, 0, 37, 36, 38, 32.76346 + 47, 52, 47, 39, 36, 13, 0, 32, 31, 3, 3, 0, 2, 0, 1, 0, 32.76347 + 3, 42, 0, 21, 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 32.76348 + 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 32.76349 + 31, 11, 0, 33, 28, 0, 0, 0, 1, 3, 1, 38, 0, 7, 25, 37, 32.76350 + 50, 61, 54, 41, 32, 26, 0, 0, 29, 0, 0, 0, 0, 0, 3, 6, 32.76351 + 0, 0, 0, 1, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.76352 + 1, 0, 1, 0, 0, 0, 0, 0, 3, 20, 52, 0, 3, 33, 38, 48, 32.76353 + 66, 64, 58, 52, 42, 32, 18, 0, 0, 43, 16, 1, 0, 0, 0, 0, 32.76354 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 37, 32.76355 + 0, 28, 31, 37, 47, 56, 60, 56, 48, 43, 35, 16, 0, 33, 31, 38, 32.76356 + 6, 18, 25, 37, 50, 59, 65, 63, 52, 41, 32, 1, 0, 74, 19, 0, 32.76357 + 0, 0, 1, 1, 0, 37, 0, 11, 27, 42, 51, 57, 51, 41, 37, 24, 32.76358 + 1, 2, 28, 0, 4, 3, 1, 0, 0, 0, 4, 4, 12, 18, 35, 0, 32.76359 + 0, 27, 33, 38, 49, 59, 64, 55, 37, 31, 27, 0, 0, 29, 7, 9, 32.76360 + 55, 0, 0, 26, 28, 17, 0, 34, 26, 0, 0, 0, 7, 9, 7, 7, 32.76361 + 2, 39, 0, 18, 33, 43, 49, 54, 60, 65, 63, 57, 55, 42, 36, 29, 32.76362 + 32, 40, 52, 56, 62, 68, 69, 62, 50, 46, 45, 23, 3, 0, 32, 4, 32.76363 + 0, 5, 7, 9, 3, 0, 2, 1, 3, 6, 8, 7, 1, 0, 0, 5, 32.76364 + 8, 6, 0, 35, 34, 38, 47, 52, 47, 39, 34, 13, 0, 30, 31, 3, 32.76365 + 1, 0, 2, 0, 1, 0, 3, 42, 0, 21, 31, 40, 49, 55, 54, 42, 32.76366 + 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 32.76367 + 36, 43, 50, 56, 50, 40, 31, 11, 0, 31, 26, 0, 0, 0, 3, 1, 32.76368 + 0, 35, 0, 8, 23, 37, 51, 60, 53, 37, 31, 21, 0, 2, 25, 0, 32.76369 + 0, 1, 0, 0, 4, 5, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 32.76370 + 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 18, 32.76371 + 43, 0, 2, 28, 46, 50, 52, 66, 59, 53, 45, 30, 22, 0, 0, 56, 32.76372 + 22, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76373 + 2, 1, 0, 0, 0, 45, 0, 26, 29, 37, 47, 56, 60, 55, 47, 42, 32.76374 + 36, 0, 0, 18, 13, 41, 0, 23, 34, 42, 49, 58, 63, 59, 51, 43, 32.76375 + 32, 3, 0, 61, 22, 0, 0, 0, 0, 0, 0, 30, 0, 10, 29, 43, 32.76376 + 51, 58, 50, 41, 37, 22, 1, 2, 29, 1, 5, 4, 1, 0, 0, 0, 32.76377 + 3, 0, 13, 14, 13, 19, 0, 19, 29, 35, 48, 62, 67, 59, 41, 35, 32.76378 + 35, 0, 0, 52, 22, 25, 22, 0, 5, 21, 22, 0, 0, 60, 12, 0, 32.76379 + 0, 2, 4, 5, 5, 2, 1, 40, 0, 23, 36, 44, 49, 54, 58, 61, 32.76380 + 60, 51, 40, 23, 14, 32, 26, 33, 35, 38, 54, 68, 74, 69, 57, 49, 32.76381 + 40, 37, 23, 0, 0, 33, 12, 7, 5, 4, 0, 0, 5, 4, 0, 0, 32.76382 + 5, 2, 0, 0, 0, 6, 13, 8, 0, 31, 34, 38, 49, 54, 49, 41, 32.76383 + 34, 11, 0, 30, 31, 3, 1, 0, 0, 0, 1, 0, 3, 42, 0, 23, 32.76384 + 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 32.76385 + 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 31, 32.76386 + 26, 0, 0, 0, 3, 1, 0, 33, 11, 5, 19, 37, 50, 54, 48, 36, 32.76387 + 29, 14, 0, 31, 27, 2, 2, 0, 0, 0, 4, 6, 0, 0, 0, 0, 32.76388 + 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 2, 32.76389 + 0, 0, 0, 0, 3, 16, 34, 0, 0, 26, 38, 46, 51, 61, 65, 54, 32.76390 + 47, 35, 29, 3, 0, 59, 25, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76391 + 0, 0, 0, 0, 0, 0, 1, 4, 0, 0, 5, 41, 0, 26, 29, 38, 32.76392 + 48, 56, 61, 54, 45, 42, 40, 6, 0, 41, 17, 41, 0, 33, 40, 42, 32.76393 + 44, 51, 56, 55, 48, 40, 33, 0, 0, 35, 15, 0, 0, 0, 3, 0, 32.76394 + 0, 29, 11, 3, 21, 40, 50, 59, 52, 41, 37, 22, 1, 1, 30, 1, 32.76395 + 4, 4, 0, 0, 1, 0, 0, 1, 5, 8, 4, 41, 0, 6, 23, 34, 32.76396 + 46, 59, 67, 63, 46, 38, 27, 17, 0, 46, 40, 44, 0, 0, 12, 28, 32.76397 + 26, 0, 0, 42, 9, 0, 1, 1, 1, 1, 0, 0, 0, 38, 0, 26, 32.76398 + 37, 44, 49, 56, 58, 57, 50, 44, 28, 19, 0, 89, 0, 17, 22, 31, 32.76399 + 48, 64, 75, 73, 62, 51, 42, 35, 37, 13, 0, 40, 31, 7, 5, 4, 32.76400 + 0, 0, 1, 0, 0, 0, 2, 1, 0, 0, 0, 9, 17, 12, 0, 28, 32.76401 + 32, 40, 49, 56, 51, 41, 34, 11, 0, 28, 29, 1, 0, 0, 0, 0, 32.76402 + 1, 0, 3, 42, 0, 23, 31, 40, 49, 55, 54, 42, 36, 22, 1, 6, 32.76403 + 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 0, 25, 36, 43, 50, 56, 32.76404 + 50, 40, 31, 11, 0, 31, 26, 0, 0, 1, 3, 1, 0, 31, 7, 1, 32.76405 + 22, 37, 48, 46, 42, 40, 33, 14, 0, 43, 26, 0, 2, 0, 0, 0, 32.76406 + 4, 6, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 1, 0, 0, 1, 32.76407 + 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 2, 12, 24, 5, 0, 24, 32.76408 + 26, 40, 49, 55, 69, 61, 51, 46, 37, 12, 0, 39, 31, 4, 0, 0, 32.76409 + 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 3, 4, 5, 4, 0, 1, 32.76410 + 12, 26, 0, 27, 30, 39, 49, 56, 61, 54, 43, 40, 28, 5, 0, 56, 32.76411 + 15, 29, 0, 22, 36, 40, 36, 42, 50, 49, 44, 37, 21, 0, 0, 35, 32.76412 + 13, 6, 0, 0, 10, 7, 0, 27, 9, 0, 12, 35, 49, 59, 52, 41, 32.76413 + 37, 22, 0, 0, 27, 0, 3, 2, 0, 0, 0, 0, 0, 0, 0, 1, 32.76414 + 2, 33, 24, 0, 17, 35, 46, 55, 66, 65, 54, 41, 33, 12, 0, 2, 32.76415 + 54, 67, 0, 7, 26, 36, 29, 0, 30, 17, 7, 0, 0, 0, 0, 0, 32.76416 + 0, 0, 0, 37, 0, 27, 39, 46, 51, 56, 57, 55, 45, 38, 27, 13, 32.76417 + 0, 121, 9, 0, 16, 36, 49, 59, 75, 78, 63, 50, 49, 44, 33, 25, 32.76418 + 0, 0, 43, 5, 7, 6, 2, 0, 0, 0, 0, 6, 4, 0, 0, 0, 32.76419 + 1, 11, 22, 15, 0, 26, 32, 40, 51, 58, 55, 43, 34, 9, 0, 28, 32.76420 + 29, 1, 0, 0, 0, 0, 1, 0, 3, 42, 0, 23, 31, 40, 49, 55, 32.76421 + 54, 42, 36, 22, 1, 6, 34, 1, 0, 0, 0, 2, 2, 7, 18, 7, 32.76422 + 0, 25, 36, 43, 50, 56, 50, 40, 31, 11, 0, 31, 26, 0, 0, 1, 32.76423 + 3, 1, 0, 31, 3, 1, 23, 31, 42, 39, 34, 33, 32, 16, 0, 37, 32.76424 + 25, 0, 5, 2, 0, 0, 5, 7, 0, 0, 0, 0, 2, 0, 0, 0, 32.76425 + 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.76426 + 3, 8, 18, 24, 0, 15, 30, 39, 32, 55, 64, 67, 56, 51, 40, 23, 32.76427 + 0, 17, 39, 7, 4, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.76428 + 3, 6, 3, 0, 0, 1, 24, 18, 0, 29, 32, 40, 48, 57, 62, 57, 32.76429 + 45, 38, 31, 0, 0, 48, 15, 40, 0, 20, 32, 36, 36, 43, 47, 45, 32.76430 + 39, 35, 27, 0, 11, 25, 12, 1, 5, 0, 5, 11, 0, 30, 1, 0, 32.76431 + 16, 30, 45, 56, 50, 43, 39, 24, 0, 1, 28, 0, 1, 0, 0, 1, 32.76432 + 2, 0, 0, 0, 0, 3, 3, 17, 63, 0, 8, 35, 46, 55, 64, 66, 32.76433 + 57, 43, 31, 22, 15, 0, 74, 40, 0, 26, 38, 29, 5, 0, 42, 11, 32.76434 + 4, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 24, 38, 48, 52, 58, 32.76435 + 56, 54, 50, 40, 26, 0, 0, 87, 62, 0, 7, 40, 47, 54, 68, 75, 32.76436 + 65, 58, 60, 46, 39, 28, 17, 0, 0, 29, 11, 3, 1, 0, 0, 0, 32.76437 + 0, 5, 2, 0, 0, 0, 0, 10, 24, 16, 0, 24, 32, 42, 51, 58, 32.76438 + 56, 46, 36, 11, 0, 30, 29, 3, 1, 0, 0, 0, 0, 0, 2, 42, 32.76439 + 0, 23, 33, 42, 47, 53, 52, 42, 34, 20, 2, 7, 36, 3, 0, 0, 32.76440 + 0, 2, 2, 7, 18, 7, 0, 25, 38, 47, 50, 58, 50, 42, 31, 11, 32.76441 + 0, 30, 28, 0, 0, 1, 3, 1, 0, 26, 0, 0, 10, 7, 17, 17, 32.76442 + 13, 7, 8, 0, 0, 22, 28, 1, 3, 0, 0, 0, 9, 9, 0, 0, 32.76443 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0, 32.76444 + 2, 0, 0, 0, 0, 0, 2, 8, 7, 46, 0, 13, 30, 26, 32, 41, 32.76445 + 67, 70, 60, 48, 40, 30, 17, 0, 47, 20, 2, 5, 5, 0, 4, 0, 32.76446 + 3, 4, 2, 0, 0, 0, 4, 2, 0, 0, 0, 8, 39, 1, 0, 31, 32.76447 + 40, 38, 47, 58, 55, 61, 48, 36, 25, 0, 8, 40, 19, 44, 0, 24, 32.76448 + 24, 30, 48, 56, 53, 44, 38, 33, 30, 0, 14, 22, 7, 7, 1, 3, 32.76449 + 1, 1, 0, 35, 1, 0, 23, 34, 38, 46, 50, 47, 42, 27, 2, 3, 32.76450 + 34, 5, 0, 0, 3, 4, 5, 3, 0, 0, 2, 6, 0, 14, 27, 0, 32.76451 + 0, 24, 43, 56, 58, 70, 54, 54, 41, 40, 24, 7, 47, 31, 15, 34, 32.76452 + 34, 16, 0, 20, 32, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 32.76453 + 0, 19, 37, 51, 54, 57, 58, 48, 49, 37, 18, 0, 0, 76, 47, 13, 32.76454 + 0, 30, 32, 41, 58, 61, 54, 65, 60, 61, 45, 31, 26, 0, 0, 37, 32.76455 + 17, 4, 0, 0, 0, 0, 9, 3, 0, 0, 0, 0, 0, 7, 23, 13, 32.76456 + 0, 22, 34, 42, 47, 56, 58, 50, 39, 11, 0, 32, 32, 7, 8, 0, 32.76457 + 0, 0, 0, 0, 3, 41, 0, 24, 35, 42, 43, 50, 50, 40, 33, 18, 32.76458 + 2, 9, 42, 6, 0, 0, 1, 3, 0, 5, 19, 7, 0, 21, 41, 51, 32.76459 + 54, 58, 52, 44, 33, 11, 0, 28, 30, 3, 1, 1, 5, 3, 0, 17, 32.76460 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 13, 0, 2, 0, 32.76461 + 6, 9, 12, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76462 + 0, 0, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 3, 7, 31, 32.76463 + 14, 4, 18, 29, 35, 46, 64, 67, 61, 51, 43, 36, 26, 0, 5, 28, 32.76464 + 12, 7, 0, 3, 2, 3, 3, 3, 1, 0, 1, 1, 3, 0, 0, 2, 32.76465 + 0, 19, 55, 0, 8, 29, 40, 47, 52, 56, 60, 63, 45, 28, 9, 0, 32.76466 + 35, 27, 10, 44, 0, 19, 23, 31, 53, 61, 55, 47, 42, 39, 32, 0, 32.76467 + 0, 29, 6, 9, 7, 5, 0, 0, 0, 35, 0, 0, 26, 36, 38, 44, 32.76468 + 50, 49, 42, 27, 2, 5, 32, 3, 0, 0, 2, 4, 4, 1, 0, 0, 32.76469 + 1, 6, 0, 2, 16, 25, 0, 16, 35, 42, 60, 55, 59, 62, 57, 47, 32.76470 + 44, 21, 15, 10, 29, 49, 31, 7, 0, 38, 28, 0, 0, 0, 0, 0, 32.76471 + 0, 0, 0, 0, 1, 40, 0, 18, 37, 51, 56, 57, 58, 48, 47, 36, 32.76472 + 24, 0, 0, 58, 41, 42, 0, 7, 32, 39, 39, 44, 61, 61, 71, 60, 32.76473 + 49, 43, 33, 21, 0, 0, 39, 10, 3, 1, 0, 1, 3, 3, 0, 0, 32.76474 + 0, 0, 0, 6, 22, 12, 0, 22, 34, 42, 47, 54, 56, 48, 35, 9, 32.76475 + 0, 34, 34, 8, 8, 0, 0, 0, 0, 1, 3, 41, 0, 24, 35, 44, 32.76476 + 45, 50, 50, 40, 31, 17, 1, 9, 42, 6, 0, 0, 0, 1, 0, 5, 32.76477 + 18, 6, 0, 21, 43, 53, 54, 58, 54, 46, 37, 15, 0, 28, 30, 3, 32.76478 + 1, 3, 5, 3, 0, 8, 3, 16, 26, 55, 41, 34, 54, 47, 30, 26, 32.76479 + 6, 22, 0, 0, 0, 6, 4, 7, 10, 7, 0, 0, 0, 0, 0, 0, 32.76480 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 32.76481 + 0, 0, 0, 0, 0, 16, 38, 0, 12, 31, 44, 60, 60, 60, 63, 56, 32.76482 + 49, 41, 32, 2, 0, 47, 18, 0, 1, 0, 5, 12, 1, 0, 0, 4, 32.76483 + 9, 5, 0, 0, 6, 4, 6, 15, 40, 0, 12, 41, 42, 54, 57, 53, 32.76484 + 52, 35, 20, 6, 0, 0, 31, 1, 4, 46, 0, 9, 27, 40, 50, 57, 32.76485 + 54, 51, 50, 43, 34, 0, 0, 48, 9, 0, 4, 8, 5, 3, 0, 33, 32.76486 + 0, 0, 25, 38, 43, 51, 54, 49, 41, 25, 2, 3, 29, 0, 0, 0, 32.76487 + 0, 0, 0, 0, 0, 0, 2, 3, 1, 0, 5, 44, 0, 0, 14, 32, 32.76488 + 50, 60, 66, 64, 69, 48, 47, 37, 20, 26, 33, 27, 29, 2, 0, 47, 32.76489 + 18, 1, 0, 0, 0, 1, 7, 8, 6, 7, 4, 41, 0, 21, 37, 49, 32.76490 + 54, 59, 61, 51, 49, 39, 36, 12, 0, 59, 34, 37, 38, 0, 6, 33, 32.76491 + 48, 44, 53, 60, 73, 69, 60, 56, 42, 33, 22, 0, 17, 45, 17, 0, 32.76492 + 8, 0, 0, 0, 1, 4, 0, 3, 6, 10, 24, 12, 0, 21, 34, 42, 32.76493 + 47, 52, 51, 39, 28, 6, 0, 34, 32, 6, 2, 0, 0, 0, 3, 3, 32.76494 + 4, 41, 0, 22, 33, 44, 49, 55, 52, 40, 33, 17, 0, 2, 38, 5, 32.76495 + 0, 0, 0, 0, 0, 7, 18, 6, 0, 23, 41, 51, 52, 58, 54, 47, 32.76496 + 40, 18, 0, 31, 26, 0, 3, 7, 5, 1, 0, 0, 9, 27, 45, 50, 32.76497 + 68, 75, 79, 71, 68, 48, 25, 5, 0, 0, 0, 0, 0, 0, 3, 5, 32.76498 + 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 32.76499 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 7, 35, 0, 0, 31, 32.76500 + 47, 54, 52, 58, 67, 65, 55, 45, 35, 13, 0, 0, 28, 11, 0, 4, 32.76501 + 14, 7, 0, 0, 0, 0, 8, 6, 0, 0, 7, 5, 17, 39, 2, 0, 32.76502 + 25, 36, 48, 57, 66, 60, 51, 27, 19, 1, 0, 33, 16, 0, 0, 37, 32.76503 + 0, 0, 23, 39, 48, 53, 56, 54, 52, 43, 26, 8, 0, 65, 16, 0, 32.76504 + 14, 7, 5, 3, 0, 31, 0, 0, 21, 36, 49, 57, 56, 49, 39, 24, 32.76505 + 3, 5, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 32.76506 + 0, 30, 31, 0, 9, 30, 39, 60, 63, 61, 73, 66, 52, 47, 37, 43, 32.76507 + 32, 24, 21, 0, 18, 33, 8, 2, 0, 0, 0, 4, 10, 12, 11, 8, 32.76508 + 5, 40, 0, 23, 35, 47, 52, 60, 67, 57, 48, 44, 42, 11, 0, 62, 32.76509 + 24, 11, 46, 0, 0, 22, 33, 46, 55, 63, 72, 77, 67, 55, 56, 39, 32.76510 + 37, 16, 0, 52, 27, 0, 4, 2, 0, 0, 2, 6, 1, 3, 5, 12, 32.76511 + 22, 11, 0, 21, 34, 44, 53, 54, 47, 36, 26, 4, 0, 32, 32, 2, 32.76512 + 0, 0, 0, 0, 5, 5, 6, 42, 0, 20, 31, 42, 52, 60, 54, 42, 32.76513 + 36, 18, 0, 0, 38, 5, 0, 0, 0, 0, 2, 9, 16, 2, 0, 23, 32.76514 + 38, 46, 46, 54, 50, 46, 38, 20, 0, 31, 24, 0, 0, 3, 7, 3, 32.76515 + 0, 0, 1, 17, 40, 10, 0, 0, 0, 0, 0, 28, 39, 21, 0, 0, 32.76516 + 0, 6, 0, 0, 0, 1, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 32.76517 + 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.76518 + 0, 0, 11, 21, 0, 20, 42, 34, 40, 54, 75, 77, 65, 51, 38, 21, 32.76519 + 0, 0, 20, 25, 12, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 0, 32.76520 + 0, 2, 19, 45, 0, 14, 29, 41, 37, 46, 62, 55, 46, 30, 25, 0, 32.76521 + 0, 34, 1, 0, 1, 32, 33, 0, 9, 31, 44, 55, 60, 60, 52, 39, 32.76522 + 33, 3, 0, 30, 28, 10, 0, 8, 1, 1, 0, 31, 0, 0, 18, 36, 32.76523 + 52, 62, 59, 49, 39, 24, 7, 10, 29, 0, 0, 0, 2, 0, 0, 0, 32.76524 + 0, 0, 1, 0, 0, 4, 5, 20, 43, 0, 8, 27, 34, 40, 59, 64, 32.76525 + 71, 77, 64, 56, 43, 41, 25, 20, 10, 0, 40, 15, 3, 0, 0, 1, 32.76526 + 0, 1, 7, 12, 11, 8, 2, 37, 0, 25, 34, 44, 52, 62, 72, 62, 32.76527 + 48, 47, 43, 1, 0, 53, 26, 13, 15, 31, 0, 4, 18, 43, 61, 71, 32.76528 + 68, 72, 67, 54, 66, 49, 33, 25, 0, 0, 35, 7, 0, 0, 0, 0, 32.76529 + 0, 1, 0, 0, 4, 9, 19, 8, 0, 22, 38, 49, 58, 60, 47, 36, 32.76530 + 30, 7, 0, 28, 28, 0, 0, 0, 0, 0, 3, 5, 11, 48, 0, 22, 32.76531 + 29, 42, 56, 66, 58, 46, 40, 24, 0, 2, 40, 8, 2, 0, 0, 1, 32.76532 + 4, 9, 12, 0, 0, 23, 34, 38, 41, 49, 45, 40, 33, 15, 0, 30, 32.76533 + 23, 0, 0, 0, 6, 9, 6, 11, 24, 54, 0, 0, 0, 10, 0, 6, 32.76534 + 0, 0, 0, 63, 21, 7, 10, 6, 2, 0, 0, 0, 0, 0, 0, 0, 32.76535 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76536 + 0, 0, 0, 0, 1, 2, 1, 0, 2, 36, 9, 0, 23, 31, 33, 48, 32.76537 + 73, 78, 69, 58, 46, 34, 20, 7, 0, 41, 25, 13, 0, 0, 0, 0, 32.76538 + 0, 0, 0, 0, 2, 3, 3, 21, 40, 0, 0, 25, 42, 52, 47, 52, 32.76539 + 64, 52, 45, 35, 14, 0, 22, 25, 3, 0, 0, 23, 42, 0, 3, 30, 32.76540 + 41, 51, 61, 62, 52, 42, 32, 23, 2, 0, 50, 9, 16, 4, 0, 0, 32.76541 + 0, 31, 0, 0, 19, 38, 52, 62, 57, 47, 35, 24, 9, 12, 33, 0, 32.76542 + 1, 2, 5, 5, 0, 0, 0, 0, 0, 1, 0, 0, 5, 15, 28, 2, 32.76543 + 0, 28, 32, 38, 45, 62, 65, 71, 68, 68, 48, 41, 31, 8, 0, 9, 32.76544 + 36, 6, 0, 0, 6, 0, 0, 0, 5, 7, 7, 4, 0, 33, 0, 23, 32.76545 + 30, 40, 51, 60, 72, 64, 55, 43, 37, 0, 0, 52, 23, 14, 15, 31, 32.76546 + 1, 0, 13, 41, 52, 66, 64, 63, 77, 61, 58, 53, 42, 28, 26, 0, 32.76547 + 5, 31, 4, 0, 2, 0, 0, 1, 0, 0, 1, 6, 15, 5, 0, 24, 32.76548 + 39, 53, 62, 61, 47, 36, 33, 11, 0, 28, 23, 0, 0, 0, 0, 0, 32.76549 + 2, 5, 11, 49, 0, 20, 27, 40, 56, 64, 58, 46, 42, 25, 0, 4, 32.76550 + 38, 8, 4, 2, 1, 5, 7, 11, 14, 2, 0, 27, 34, 38, 41, 47, 32.76551 + 43, 37, 31, 13, 0, 30, 27, 0, 0, 0, 6, 11, 7, 18, 47, 0, 32.76552 + 0, 13, 34, 36, 37, 35, 18, 17, 0, 6, 35, 11, 5, 9, 7, 1, 32.76553 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76554 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 3, 0, 0, 5, 19, 32.76555 + 35, 0, 4, 32, 36, 42, 55, 58, 59, 60, 56, 54, 53, 32, 4, 0, 32.76556 + 53, 33, 4, 0, 0, 0, 6, 7, 2, 0, 0, 3, 17, 43, 5, 0, 32.76557 + 15, 43, 49, 52, 52, 49, 49, 36, 39, 22, 0, 0, 36, 7, 0, 0, 32.76558 + 0, 17, 40, 0, 0, 30, 34, 41, 54, 60, 52, 47, 40, 32, 17, 0, 32.76559 + 10, 43, 20, 7, 0, 0, 0, 35, 0, 0, 28, 43, 50, 55, 52, 41, 32.76560 + 32, 22, 10, 14, 32, 0, 1, 2, 7, 8, 4, 0, 0, 0, 0, 3, 32.76561 + 0, 0, 0, 5, 12, 34, 0, 27, 26, 38, 39, 52, 60, 70, 73, 66, 32.76562 + 38, 30, 39, 18, 0, 39, 23, 0, 0, 0, 6, 0, 0, 0, 2, 3, 32.76563 + 0, 0, 0, 28, 0, 21, 26, 36, 43, 55, 67, 60, 57, 39, 31, 0, 32.76564 + 0, 63, 17, 0, 11, 25, 40, 0, 0, 33, 42, 50, 51, 56, 80, 74, 32.76565 + 54, 52, 54, 41, 27, 6, 0, 37, 15, 3, 2, 7, 0, 0, 0, 0, 32.76566 + 3, 4, 11, 4, 0, 28, 43, 53, 62, 61, 47, 36, 36, 14, 0, 24, 32.76567 + 17, 0, 0, 0, 0, 0, 0, 2, 11, 48, 0, 17, 24, 36, 51, 59, 32.76568 + 54, 42, 40, 25, 2, 6, 36, 5, 4, 4, 3, 8, 11, 16, 19, 7, 32.76569 + 0, 34, 39, 42, 45, 51, 45, 38, 31, 13, 0, 33, 34, 2, 0, 0, 32.76570 + 4, 7, 0, 20, 30, 0, 15, 41, 53, 47, 41, 37, 37, 29, 18, 0, 32.76571 + 25, 0, 0, 0, 6, 3, 0, 0, 3, 6, 6, 4, 1, 0, 0, 0, 32.76572 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 32.76573 + 1, 3, 0, 7, 2, 17, 30, 10, 0, 14, 35, 42, 41, 44, 53, 61, 32.76574 + 62, 62, 59, 55, 38, 4, 0, 18, 38, 13, 19, 19, 23, 24, 20, 19, 32.76575 + 21, 33, 40, 0, 0, 18, 30, 50, 62, 63, 54, 45, 39, 33, 38, 9, 32.76576 + 0, 45, 23, 11, 0, 0, 0, 3, 23, 28, 0, 18, 29, 39, 52, 59, 32.76577 + 54, 52, 50, 48, 41, 7, 0, 23, 47, 24, 8, 3, 2, 38, 3, 3, 32.76578 + 32, 43, 45, 49, 47, 38, 30, 22, 10, 15, 34, 0, 0, 0, 4, 7, 32.76579 + 5, 0, 0, 0, 0, 0, 0, 4, 5, 4, 2, 36, 23, 6, 24, 25, 32.76580 + 46, 46, 56, 72, 63, 56, 45, 30, 30, 3, 0, 41, 10, 0, 0, 0, 32.76581 + 0, 11, 1, 0, 2, 2, 0, 0, 0, 27, 0, 21, 26, 33, 40, 50, 32.76582 + 61, 57, 50, 37, 34, 0, 0, 65, 19, 0, 4, 18, 17, 16, 0, 10, 32.76583 + 26, 39, 45, 52, 67, 76, 67, 56, 52, 44, 38, 19, 0, 0, 36, 8, 32.76584 + 12, 6, 0, 1, 0, 2, 3, 5, 12, 3, 0, 30, 43, 53, 58, 58, 32.76585 + 46, 36, 38, 16, 0, 24, 16, 0, 5, 6, 0, 0, 0, 1, 8, 44, 32.76586 + 0, 17, 24, 35, 45, 53, 50, 40, 36, 24, 4, 7, 34, 1, 0, 2, 32.76587 + 1, 6, 9, 14, 19, 11, 0, 36, 41, 44, 48, 54, 46, 40, 31, 13, 32.76588 + 0, 35, 34, 4, 0, 0, 6, 6, 0, 25, 0, 0, 30, 54, 54, 54, 32.76589 + 46, 39, 40, 32, 23, 0, 0, 4, 0, 0, 2, 2, 0, 0, 2, 5, 32.76590 + 5, 2, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 32.76591 + 1, 0, 0, 0, 0, 0, 3, 4, 3, 0, 0, 1, 6, 29, 25, 0, 32.76592 + 18, 40, 32, 40, 55, 51, 49, 57, 56, 54, 35, 28, 6, 0, 0, 42, 32.76593 + 59, 58, 36, 40, 57, 56, 37, 8, 0, 0, 13, 32, 45, 57, 65, 61, 32.76594 + 47, 50, 34, 29, 18, 0, 48, 29, 19, 6, 0, 0, 0, 0, 4, 33, 32.76595 + 0, 0, 22, 46, 47, 58, 54, 53, 53, 55, 47, 32, 0, 0, 23, 69, 32.76596 + 47, 22, 22, 37, 8, 8, 29, 36, 40, 44, 46, 42, 31, 23, 16, 0, 32.76597 + 35, 0, 0, 0, 0, 0, 5, 0, 0, 0, 1, 4, 0, 0, 1, 1, 32.76598 + 5, 28, 36, 0, 16, 38, 42, 47, 55, 69, 62, 49, 28, 31, 26, 0, 32.76599 + 8, 16, 6, 0, 0, 0, 4, 11, 5, 8, 0, 4, 0, 0, 0, 35, 32.76600 + 0, 22, 27, 32, 38, 45, 51, 48, 44, 37, 26, 0, 0, 62, 15, 0, 32.76601 + 13, 8, 8, 34, 0, 0, 10, 40, 31, 48, 60, 73, 61, 57, 59, 51, 32.76602 + 44, 34, 23, 0, 17, 25, 8, 0, 2, 0, 13, 4, 7, 10, 15, 5, 32.76603 + 0, 30, 41, 47, 51, 52, 43, 35, 36, 23, 0, 34, 13, 0, 8, 14, 32.76604 + 5, 0, 2, 0, 1, 40, 0, 19, 26, 37, 43, 46, 45, 41, 32, 20, 32.76605 + 2, 12, 30, 0, 6, 0, 0, 0, 1, 7, 15, 10, 0, 32, 42, 44, 32.76606 + 45, 60, 47, 40, 32, 8, 0, 32, 32, 0, 8, 7, 7, 3, 2, 29, 32.76607 + 0, 1, 32, 55, 53, 54, 49, 39, 39, 32, 22, 0, 0, 21, 5, 0, 32.76608 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 32.76609 + 0, 0, 0, 0, 2, 2, 1, 0, 0, 0, 0, 0, 3, 2, 4, 0, 32.76610 + 2, 0, 0, 18, 33, 30, 0, 12, 22, 29, 49, 58, 41, 41, 49, 50, 32.76611 + 51, 43, 25, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 27, 32.76612 + 29, 41, 56, 57, 53, 49, 40, 28, 26, 15, 0, 24, 36, 15, 12, 7, 32.76613 + 0, 0, 0, 0, 0, 15, 39, 0, 0, 39, 56, 56, 45, 52, 54, 55, 32.76614 + 57, 54, 33, 5, 0, 0, 0, 0, 0, 50, 10, 3, 26, 39, 39, 40, 32.76615 + 43, 42, 35, 26, 14, 0, 49, 9, 0, 0, 0, 0, 0, 0, 0, 0, 32.76616 + 3, 4, 2, 0, 0, 0, 0, 16, 37, 0, 0, 26, 36, 48, 54, 68, 32.76617 + 53, 48, 28, 21, 18, 0, 28, 13, 0, 0, 0, 0, 3, 6, 7, 2, 32.76618 + 8, 1, 0, 7, 6, 42, 0, 27, 35, 39, 44, 49, 50, 46, 38, 33, 32.76619 + 26, 4, 0, 59, 21, 0, 3, 18, 4, 18, 54, 0, 0, 23, 35, 51, 32.76620 + 54, 60, 61, 60, 54, 50, 50, 35, 36, 0, 0, 57, 23, 4, 0, 4, 32.76621 + 0, 7, 10, 8, 27, 11, 0, 31, 44, 48, 48, 50, 47, 41, 39, 16, 32.76622 + 0, 23, 28, 0, 10, 12, 8, 0, 5, 8, 0, 40, 0, 18, 36, 44, 32.76623 + 45, 46, 48, 43, 34, 25, 12, 0, 36, 0, 0, 0, 0, 0, 0, 0, 32.76624 + 26, 7, 0, 28, 32, 44, 51, 57, 46, 45, 40, 18, 0, 0, 20, 0, 32.76625 + 6, 14, 9, 9, 0, 34, 0, 22, 32, 36, 44, 56, 48, 47, 35, 34, 32.76626 + 32, 0, 0, 34, 12, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76627 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 3, 2, 2, 1, 0, 32.76628 + 0, 0, 3, 3, 0, 0, 1, 1, 0, 0, 16, 32, 12, 0, 0, 26, 32.76629 + 31, 38, 37, 39, 40, 44, 53, 49, 37, 29, 24, 7, 0, 0, 0, 2, 32.76630 + 10, 5, 9, 13, 28, 47, 50, 50, 56, 51, 42, 43, 31, 22, 12, 0, 32.76631 + 15, 35, 12, 14, 7, 4, 2, 2, 1, 0, 0, 3, 18, 6, 0, 12, 32.76632 + 42, 53, 45, 46, 36, 42, 54, 52, 47, 45, 33, 12, 0, 0, 16, 39, 32.76633 + 17, 5, 15, 35, 47, 51, 52, 53, 53, 43, 26, 0, 18, 25, 2, 0, 32.76634 + 0, 0, 0, 0, 2, 3, 1, 3, 1, 2, 3, 0, 2, 0, 1, 25, 32.76635 + 0, 5, 30, 54, 54, 58, 49, 42, 27, 17, 0, 3, 40, 7, 0, 0, 32.76636 + 1, 4, 4, 3, 2, 0, 0, 0, 0, 4, 5, 28, 0, 32, 44, 49, 32.76637 + 50, 52, 51, 48, 39, 41, 36, 10, 0, 65, 13, 3, 8, 0, 6, 14, 32.76638 + 24, 17, 0, 17, 30, 49, 48, 49, 61, 57, 48, 45, 54, 55, 33, 13, 32.76639 + 0, 4, 35, 5, 1, 0, 8, 0, 2, 11, 25, 21, 0, 29, 42, 48, 32.76640 + 45, 45, 48, 48, 39, 43, 9, 6, 33, 1, 11, 2, 2, 0, 0, 0, 32.76641 + 6, 32, 0, 25, 47, 52, 48, 47, 48, 45, 36, 27, 15, 0, 54, 10, 32.76642 + 0, 0, 2, 0, 0, 0, 25, 8, 0, 26, 34, 49, 51, 58, 53, 51, 32.76643 + 39, 28, 7, 1, 38, 1, 3, 8, 8, 2, 5, 38, 0, 16, 28, 44, 32.76644 + 44, 51, 49, 48, 50, 37, 39, 7, 0, 35, 12, 1, 5, 4, 5, 5, 32.76645 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.76646 + 2, 2, 2, 1, 1, 2, 0, 0, 2, 2, 2, 0, 3, 5, 0, 0, 32.76647 + 0, 10, 26, 21, 0, 0, 16, 18, 38, 28, 40, 40, 36, 44, 45, 36, 32.76648 + 23, 29, 26, 33, 30, 35, 36, 31, 36, 44, 45, 48, 38, 38, 48, 40, 32.76649 + 24, 21, 8, 0, 0, 40, 21, 5, 11, 8, 4, 3, 3, 3, 3, 4, 32.76650 + 0, 0, 0, 20, 18, 0, 16, 33, 34, 34, 43, 38, 49, 50, 54, 56, 32.76651 + 46, 24, 0, 5, 32, 36, 7, 5, 22, 30, 39, 42, 42, 45, 50, 44, 32.76652 + 27, 0, 0, 53, 28, 3, 3, 0, 5, 0, 6, 5, 0, 0, 2, 5, 32.76653 + 5, 0, 0, 0, 0, 17, 20, 0, 12, 24, 49, 44, 50, 30, 25, 13, 32.76654 + 0, 36, 29, 0, 0, 0, 1, 3, 5, 4, 0, 0, 0, 0, 2, 14, 32.76655 + 35, 7, 0, 36, 48, 52, 48, 48, 49, 46, 42, 44, 41, 19, 0, 35, 32.76656 + 28, 0, 0, 7, 7, 0, 10, 31, 0, 0, 20, 38, 47, 46, 54, 44, 32.76657 + 41, 39, 46, 42, 39, 26, 8, 0, 21, 31, 9, 0, 0, 0, 0, 9, 32.76658 + 45, 0, 0, 29, 42, 45, 39, 39, 48, 50, 41, 29, 15, 0, 40, 5, 32.76659 + 4, 2, 0, 0, 0, 15, 13, 7, 0, 38, 52, 54, 49, 46, 48, 46, 32.76660 + 41, 34, 20, 0, 15, 29, 13, 0, 1, 0, 0, 9, 43, 0, 0, 15, 32.76661 + 37, 45, 47, 44, 44, 46, 41, 36, 12, 0, 48, 1, 16, 1, 6, 1, 32.76662 + 0, 25, 0, 10, 26, 30, 36, 43, 45, 50, 49, 31, 27, 3, 0, 22, 32.76663 + 11, 2, 8, 7, 9, 6, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 32.76664 + 0, 0, 0, 0, 0, 1, 3, 2, 2, 1, 1, 0, 0, 0, 1, 0, 32.76665 + 0, 0, 1, 4, 7, 6, 0, 4, 13, 20, 38, 0, 0, 0, 6, 27, 32.76666 + 29, 41, 37, 43, 36, 39, 29, 37, 41, 48, 41, 41, 39, 37, 38, 38, 32.76667 + 40, 41, 29, 18, 21, 17, 14, 9, 0, 0, 35, 17, 9, 3, 0, 0, 32.76668 + 1, 1, 0, 0, 5, 8, 6, 2, 0, 13, 28, 15, 0, 1, 19, 15, 32.76669 + 31, 29, 35, 35, 38, 39, 22, 0, 0, 59, 12, 35, 5, 0, 25, 28, 32.76670 + 32, 32, 30, 32, 40, 39, 27, 7, 0, 31, 35, 12, 10, 0, 7, 2, 32.76671 + 5, 4, 0, 0, 3, 7, 6, 0, 0, 0, 0, 7, 49, 0, 0, 5, 32.76672 + 30, 37, 42, 24, 24, 2, 0, 50, 21, 0, 0, 0, 0, 2, 3, 0, 32.76673 + 0, 0, 0, 0, 0, 24, 43, 0, 2, 28, 36, 37, 30, 30, 35, 37, 32.76674 + 41, 33, 35, 26, 11, 0, 42, 0, 5, 0, 2, 2, 0, 11, 33, 0, 32.76675 + 2, 11, 23, 28, 28, 24, 37, 33, 31, 26, 29, 37, 39, 5, 0, 44, 32.76676 + 22, 0, 0, 2, 0, 21, 37, 0, 0, 20, 32, 32, 24, 24, 35, 38, 32.76677 + 38, 26, 26, 0, 0, 29, 6, 0, 0, 0, 0, 12, 45, 0, 0, 30, 32.76678 + 37, 39, 35, 32, 31, 34, 34, 29, 12, 0, 0, 52, 25, 6, 7, 7, 32.76679 + 0, 25, 68, 0, 0, 26, 42, 38, 39, 36, 40, 42, 38, 41, 28, 0, 32.76680 + 2, 34, 4, 0, 4, 0, 0, 32, 21, 0, 15, 39, 34, 33, 51, 55, 32.76681 + 48, 40, 17, 0, 6, 2, 5, 0, 7, 7, 5, 2, 0, 0, 0, 0, 32.76682 + 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 2, 3, 4, 2, 32.76683 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 3, 0, 0, 0, 6, 32.76684 + 2, 29, 47, 5, 0, 1, 4, 10, 21, 30, 15, 23, 27, 30, 41, 51, 32.76685 + 47, 37, 27, 26, 33, 38, 29, 15, 7, 10, 0, 0, 0, 16, 49, 31, 32.76686 + 9, 0, 0, 0, 4, 0, 1, 2, 0, 0, 4, 7, 5, 2, 8, 7, 32.76687 + 2, 27, 46, 0, 0, 1, 11, 23, 29, 20, 13, 9, 2, 0, 3, 32, 32.76688 + 12, 23, 0, 0, 11, 13, 14, 12, 10, 8, 16, 15, 9, 0, 0, 0, 32.76689 + 22, 27, 15, 4, 0, 0, 1, 0, 0, 0, 4, 6, 3, 0, 0, 0, 32.76690 + 0, 8, 11, 50, 7, 0, 5, 38, 28, 24, 24, 0, 0, 38, 16, 2, 32.76691 + 4, 0, 0, 3, 3, 0, 0, 0, 0, 7, 22, 27, 3, 0, 0, 14, 32.76692 + 17, 15, 9, 7, 15, 19, 24, 19, 17, 14, 16, 0, 0, 17, 8, 1, 32.76693 + 0, 0, 0, 8, 18, 39, 0, 0, 0, 0, 0, 7, 16, 11, 3, 13, 32.76694 + 20, 16, 14, 2, 0, 0, 22, 28, 0, 0, 9, 32, 0, 0, 0, 8, 32.76695 + 16, 15, 6, 7, 14, 18, 14, 18, 11, 0, 0, 0, 20, 5, 0, 0, 32.76696 + 0, 20, 34, 0, 0, 15, 12, 13, 13, 11, 10, 14, 18, 15, 7, 0, 32.76697 + 0, 15, 35, 7, 4, 11, 10, 40, 12, 0, 0, 12, 23, 16, 12, 13, 32.76698 + 17, 15, 9, 16, 23, 3, 0, 29, 15, 1, 0, 0, 5, 15, 49, 0, 32.76699 + 0, 10, 18, 26, 40, 42, 31, 14, 0, 0, 23, 0, 3, 0, 5, 3, 32.76700 + 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 32.76701 + 0, 0, 1, 2, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 4, 2, 32.76702 + 0, 0, 0, 0, 1, 14, 8, 5, 13, 33, 40, 10, 0, 0, 0, 10, 32.76703 + 23, 15, 10, 7, 22, 29, 33, 29, 26, 22, 15, 9, 7, 9, 0, 0, 32.76704 + 0, 0, 32, 39, 27, 18, 13, 5, 0, 0, 1, 0, 1, 0, 0, 0, 32.76705 + 0, 1, 0, 0, 13, 0, 6, 7, 17, 44, 1, 0, 0, 0, 0, 5, 32.76706 + 4, 0, 0, 0, 41, 19, 3, 26, 0, 0, 0, 0, 0, 0, 0, 0, 32.76707 + 0, 0, 0, 0, 0, 0, 0, 4, 6, 4, 0, 0, 0, 0, 0, 0, 32.76708 + 7, 7, 1, 0, 0, 0, 5, 3, 22, 27, 35, 79, 0, 31, 26, 25, 32.76709 + 19, 0, 29, 19, 9, 0, 3, 0, 0, 0, 0, 1, 0, 2, 4, 10, 32.76710 + 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76711 + 0, 0, 0, 0, 16, 0, 9, 12, 7, 0, 8, 16, 40, 14, 0, 0, 32.76712 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 16, 15, 32.76713 + 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76714 + 0, 0, 2, 10, 10, 0, 5, 37, 0, 0, 0, 0, 0, 0, 0, 0, 32.76715 + 0, 0, 0, 0, 0, 0, 0, 0, 13, 11, 3, 0, 8, 9, 0, 0, 32.76716 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 32.76717 + 0, 0, 0, 8, 21, 26, 0, 0, 0, 20, 12, 19, 10, 0, 0, 14, 32.76718 + 10, 5, 12, 10, 0, 0, 0, 0, 0, 0, 3, 4, 0, 0, 0, 0, 32.76719 + 0, 1, 0, 0, 1, 1, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 32.76720 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 10, 0, 5, 4, 0, 2, 32.76721 + 20, 34, 38, 39, 38, 7, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76722 + 0, 0, 0, 6, 30, 49, 44, 27, 11, 4, 9, 14, 10, 3, 7, 0, 32.76723 + 0, 6, 2, 0, 0, 0, 0, 0, 0, 0, 6, 7, 8, 0, 6, 12, 32.76724 + 21, 48, 41, 28, 1, 5, 4, 0, 25, 38, 18, 1, 4, 19, 10, 22, 32.76725 + 23, 36, 33, 32, 27, 26, 29, 30, 24, 24, 30, 21, 0, 0, 3, 0, 32.76726 + 0, 0, 0, 0, 0, 2, 8, 5, 0, 0, 0, 0, 4, 5, 13, 18, 32.76727 + 32, 0, 0, 21, 28, 19, 3, 0, 48, 8, 2, 0, 9, 5, 0, 0, 32.76728 + 0, 4, 0, 0, 6, 19, 0, 1, 19, 28, 32, 33, 32, 29, 23, 23, 32.76729 + 26, 30, 38, 31, 16, 22, 29, 25, 19, 0, 12, 5, 1, 7, 4, 5, 32.76730 + 0, 5, 7, 22, 24, 32, 52, 56, 28, 30, 37, 30, 37, 34, 22, 17, 32.76731 + 36, 24, 14, 0, 21, 8, 0, 0, 19, 42, 37, 35, 35, 36, 33, 31, 32.76732 + 32, 34, 35, 29, 40, 34, 26, 18, 0, 22, 5, 8, 7, 0, 21, 33, 32.76733 + 28, 22, 19, 24, 30, 33, 30, 33, 40, 35, 27, 27, 30, 21, 0, 3, 32.76734 + 0, 3, 4, 0, 15, 29, 38, 36, 34, 36, 25, 28, 23, 21, 26, 22, 32.76735 + 29, 39, 31, 11, 0, 5, 0, 0, 0, 6, 3, 20, 33, 45, 0, 0, 32.76736 + 0, 0, 8, 25, 29, 17, 2, 6, 15, 11, 2, 0, 0, 0, 0, 0, 32.76737 + 4, 3, 2, 2, 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 2, 0, 32.76738 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 3, 3, 4, 2, 32.76739 + 4, 3, 4, 2, 0, 1, 9, 14, 16, 20, 29, 34, 36, 37, 35, 38, 32.76740 + 1, 3, 4, 3, 9, 24, 36, 39, 37, 33, 29, 23, 17, 10, 6, 5, 32.76741 + 6, 8, 7, 6, 4, 3, 3, 3, 4, 3, 1, 2, 3, 1, 3, 3, 32.76742 + 7, 6, 4, 3, 3, 6, 12, 17, 24, 28, 30, 32, 32, 31, 26, 20, 32.76743 + 8, 3, 5, 8, 16, 21, 27, 29, 29, 29, 25, 25, 24, 23, 22, 23, 32.76744 + 23, 22, 13, 8, 3, 1, 0, 0, 7, 9, 9, 7, 9, 5, 0, 0, 32.76745 + 0, 0, 0, 2, 18, 24, 53, 0, 0, 29, 21, 6, 0, 18, 34, 1, 32.76746 + 0, 0, 12, 8, 0, 0, 0, 2, 2, 0, 4, 6, 10, 15, 21, 24, 32.76747 + 28, 27, 26, 26, 23, 24, 26, 27, 29, 27, 22, 21, 24, 25, 20, 15, 32.76748 + 6, 2, 5, 4, 3, 3, 3, 4, 5, 7, 10, 13, 17, 21, 24, 27, 32.76749 + 28, 28, 26, 25, 21, 21, 25, 24, 18, 13, 7, 6, 7, 13, 23, 29, 32.76750 + 29, 27, 29, 29, 27, 25, 27, 27, 27, 27, 27, 26, 26, 20, 13, 8, 32.76751 + 5, 3, 3, 10, 20, 26, 24, 22, 23, 23, 25, 27, 25, 27, 29, 27, 32.76752 + 25, 23, 27, 20, 8, 3, 1, 1, 3, 8, 20, 27, 27, 27, 29, 27, 32.76753 + 25, 23, 23, 23, 23, 24, 26, 25, 27, 21, 10, 3, 0, 0, 3, 4, 32.76754 + 4, 8, 17, 25, 30, 33, 34, 34, 31, 25, 12, 3, 2, 4, 7, 5, 32.76755 + 0, 1, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 32.76756 + 2, 2, 2, 2, 2, 2, 2, 0, 0, 1, 0, 1, 4, 0, 0, 0, 32.76757 + 0, 3, 2, 4, 4, 3, 1, 0, 2, 2, 0, 0, 1, 2, 3, 1, 32.76758 + 3, 3, 3, 2, 3, 6, 8, 11, 13, 10, 7, 8, 5, 2, 6, 6, 32.76759 + 3, 2, 3, 2, 1, 4, 2, 4, 3, 4, 4, 5, 2, 3, 3, 3, 32.76760 + 0, 1, 1, 1, 4, 3, 3, 2, 3, 2, 2, 1, 4, 3, 2, 0, 32.76761 + 2, 4, 4, 4, 4, 3, 2, 2, 2, 2, 3, 3, 3, 3, 4, 5, 32.76762 + 4, 2, 1, 0, 0, 0, 2, 3, 4, 2, 1, 0, 0, 0, 0, 7, 32.76763 + 12, 6, 0, 0, 0, 0, 0, 9, 0, 7, 12, 45, 45, 0, 9, 27, 32.76764 + 28, 0, 0, 48, 17, 1, 0, 1, 9, 6, 0, 0, 0, 3, 1, 0, 32.76765 + 1, 2, 2, 4, 4, 3, 3, 3, 2, 1, 2, 2, 2, 3, 2, 2, 32.76766 + 2, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 1, 3, 1, 2, 1, 32.76767 + 2, 1, 1, 0, 1, 1, 2, 0, 0, 1, 1, 1, 0, 0, 0, 0, 32.76768 + 1, 0, 1, 0, 1, 0, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 32.76769 + 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 3, 1, 32.76770 + 3, 1, 3, 1, 3, 1, 3, 1, 3, 0, 2, 0, 2, 0, 2, 0, 32.76771 + 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 0, 2, 1, 2, 1, 32.76772 + 3, 1, 2, 1, 1, 1, 2, 2, 3, 3, 4, 2, 1, 1, 2, 2, 32.76773 + 0, 0, 1, 1, 0, 1, 2, 3, 2, 1, 0, 1, 0, 0, 2, 5, 32.76774 + 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 1, 0, 0, 0, 32.76775 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76776 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 2, 4, 6, 9, 7, 32.76777 + 5, 6, 3, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76778 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76779 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76780 + 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 1, 32.76781 + 1, 1, 0, 0, 0, 0, 0, 0, 3, 1, 0, 5, 0, 0, 0, 1, 32.76782 + 26, 56, 0, 2, 28, 32, 29, 0, 0, 40, 10, 0, 3, 5, 2, 0, 32.76783 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 32.76784 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76785 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76786 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76787 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76788 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76789 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76790 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76791 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 32.76792 + 0, 1, 0, 0, 2, 4, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.76793 + 2, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 32.76794 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76795 + 2, 3, 3, 6, 4, 2, 2, 2, 3, 2, 2, 2, 0, 0, 0, 0, 32.76796 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76797 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76798 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76799 + 0, 0, 0, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.76800 + 6, 12, 14, 16, 1, 21, 53, 0, 0, 23, 41, 41, 17, 0, 18, 23, 32.76801 + 1, 0, 8, 7, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 32.76802 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76803 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76804 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76805 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76806 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76807 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76808 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76809 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 32.76810 + 0, 0, 0, 1, 1, 0, 0, 2, 0, 0, 3, 3, 1, 0, 0, 0, 32.76811 + 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 1, 0, 32.76812 + 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76813 + 0, 0, 0, 0, 0, 0, 1, 2, 4, 8, 9, 6, 4, 1, 0, 0, 32.76814 + 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76815 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76816 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76817 + 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 2, 1, 1, 0, 0, 0, 32.76818 + 0, 0, 10, 4, 0, 12, 25, 27, 31, 27, 44, 64, 0, 0, 16, 33, 32.76819 + 44, 31, 15, 0, 38, 10, 0, 0, 9, 7, 0, 0, 0, 1, 0, 1, 32.76820 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76821 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76822 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76823 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76824 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76825 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76826 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76827 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76828 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 3, 2, 0, 1, 32.76829 + 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 32.76830 + 1, 0, 0, 0, 0, 1, 0, 0, 1, 3, 2, 1, 1, 0, 0, 0, 32.76831 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76832 + 1, 2, 2, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.76833 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76834 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 32.76835 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 1, 3, 2, 32.76836 + 3, 2, 0, 0, 0, 0, 0, 1, 3, 6, 25, 23, 3, 13, 22, 20, 32.76837 + 0, 0, 4, 23, 28, 45, 38, 19, 0, 0, 33, 0, 0, 0, 4, 2, 32.76838 + 0, 0, 0, 2, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.76839 + 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76840 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 32.76841 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.76842 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.76843 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76844 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.76845 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76846 + 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 0, 0, 0, 32.76847 + 1, 1, 1, 2, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76848 + 2, 2, 2, 2, 2, 2, 2, 0, 1, 0, 0, 0, 2, 3, 3, 4, 32.76849 + 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 0, 0, 32.76850 + 0, 0, 0, 0, 7, 6, 5, 2, 1, 0, 0, 0, 2, 1, 0, 0, 32.76851 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.76852 + 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76853 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 32.76854 + 0, 1, 2, 1, 3, 2, 1, 0, 0, 0, 0, 0, 0, 4, 0, 23, 32.76855 + 51, 8, 0, 0, 0, 0, 0, 6, 20, 38, 44, 37, 25, 6, 0, 35, 32.76856 + 9, 2, 0, 0, 0, 0, 0, 0, 4, 5, 0, 0, 0, 0, 1, 0, 32.76857 + 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 2, 2, 1, 1, 32.76858 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 1, 0, 32.76859 + 1, 1, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.76860 + 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76861 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76862 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76863 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76864 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 32.76865 + 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 2, 1, 0, 0, 32.76866 + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 32.76867 + 1, 0, 3, 2, 3, 3, 2, 2, 1, 0, 0, 0, 0, 0, 0, 2, 32.76868 + 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 32.76869 + 0, 0, 1, 3, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 2, 2, 32.76870 + 2, 2, 1, 0, 0, 1, 0, 1, 2, 3, 0, 0, 0, 0, 0, 0, 32.76871 + 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 32.76872 + 1, 0, 1, 0, 0, 0, 0, 2, 4, 2, 5, 2, 2, 0, 0, 0, 32.76873 + 0, 0, 0, 1, 7, 42, 23, 0, 17, 16, 10, 12, 22, 35, 44, 42, 32.76874 + 36, 22, 18, 0, 15, 27, 11, 5, 5, 0, 0, 0, 0, 0, 4, 4, 32.76875 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 32.76876 + 1, 1, 2, 1, 1, 2, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 32.76877 + 1, 1, 2, 1, 2, 1, 1, 0, 1, 0, 1, 1, 1, 1, 2, 2, 32.76878 + 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 2, 1, 2, 1, 2, 1, 32.76879 + 2, 1, 2, 1, 2, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 32.76880 + 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 2, 0, 1, 0, 1, 0, 32.76881 + 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 2, 1, 2, 0, 1, 0, 32.76882 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 32.76883 + 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76884 + 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.76885 + 2, 2, 2, 2, 2, 2, 2, 0, 4, 2, 3, 2, 2, 1, 0, 0, 32.76886 + 0, 0, 0, 0, 0, 0, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 32.76887 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 32.76888 + 0, 0, 0, 1, 2, 1, 0, 1, 2, 1, 1, 1, 2, 1, 0, 0, 32.76889 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 32.76890 + 0, 0, 0, 0, 0, 0, 1, 1, 2, 0, 0, 0, 0, 1, 3, 3, 32.76891 + 2, 1, 1, 0, 0, 0, 0, 0, 0, 7, 21, 15, 0, 18, 33, 32, 32.76892 + 25, 19, 34, 43, 35, 31, 24, 4, 0, 0, 16, 14, 9, 6, 2, 0, 32.76893 + 0, 0, 0, 3, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76894 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 1, 0, 0, 1, 32.76895 + 0, 1, 0, 1, 1, 1, 1, 1, 2, 1, 2, 0, 1, 0, 0, 0, 32.76896 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76897 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76898 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76899 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76900 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76901 + 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 0, 0, 0, 0, 0, 0, 32.76902 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76903 + 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 32.76904 + 2, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 2, 0, 32.76905 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.76906 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 1, 1, 0, 32.76907 + 1, 0, 2, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 32.76908 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76909 + 0, 0, 0, 1, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 1, 13, 32.76910 + 41, 0, 4, 20, 39, 36, 22, 32, 39, 34, 25, 11, 0, 0, 33, 28, 32.76911 + 17, 5, 7, 9, 4, 0, 0, 0, 0, 5, 4, 0, 0, 0, 0, 0, 32.76912 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 1, 1, 32.76913 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 0, 32.76914 + 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 32.76915 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76916 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76917 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76918 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76919 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.76920 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76921 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 32.76922 + 2, 2, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76923 + 0, 1, 2, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76924 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76925 + 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 32.76926 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76927 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 1, 1, 1, 32.76928 + 0, 0, 3, 7, 14, 38, 0, 13, 13, 23, 29, 22, 29, 23, 16, 14, 32.76929 + 0, 0, 0, 36, 30, 17, 5, 0, 4, 9, 4, 0, 0, 0, 0, 3, 32.76930 + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76931 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76932 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76933 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76934 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76935 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76936 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76937 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76938 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76939 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76940 + 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 32.76941 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 32.76942 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76943 + 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 32.76944 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76945 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 32.76946 + 1, 1, 1, 1, 1, 1, 0, 1, 5, 11, 20, 0, 0, 4, 7, 0, 32.76947 + 0, 0, 0, 1, 0, 0, 21, 48, 39, 16, 5, 0, 2, 6, 9, 7, 32.76948 + 2, 0, 0, 0, 0, 2, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76949 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76950 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 32.76951 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76952 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76953 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76954 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76955 + 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76956 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 32.76957 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76958 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.76959 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76960 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76961 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 2, 2, 32.76962 + 0, 0, 1, 1, 1, 1, 2, 0, 1, 0, 1, 0, 0, 0, 0, 1, 32.76963 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76964 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 5, 12, 32.76965 + 1, 0, 0, 0, 0, 0, 0, 0, 13, 23, 39, 42, 25, 14, 12, 6, 32.76966 + 0, 0, 7, 10, 7, 2, 2, 3, 0, 0, 0, 0, 1, 2, 0, 0, 32.76967 + 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 32.76968 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.76969 + 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 32.76970 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.76971 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.76972 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 32.76973 + 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 2, 32.76974 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76975 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76976 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76977 + 0, 0, 0, 0, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.76978 + 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 0, 0, 0, 0, 0, 1, 32.76979 + 3, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76980 + 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76981 + 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.76982 + 0, 0, 0, 0, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76983 + 0, 1, 0, 1, 5, 13, 20, 38, 43, 46, 41, 35, 39, 22, 34, 22, 32.76984 + 16, 12, 0, 0, 3, 0, 0, 0, 0, 3, 3, 2, 2, 5, 0, 0, 32.76985 + 0, 0, 4, 3, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 32.76986 + 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76987 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.76988 + 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.76989 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.76990 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.76991 + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 32.76992 + 2, 2, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76993 + 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32.76994 + 1, 1, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76995 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.76996 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 3, 2, 1, 32.76997 + 0, 0, 0, 0, 1, 1, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0, 32.76998 + 0, 0, 1, 0, 1, 1, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 32.76999 + 2, 2, 2, 2, 2, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 32.77000 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.77001 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 6, 11, 19, 5, 9, 32.77002 + 9, 15, 14, 12, 6, 5, 5, 2, 0, 0, 0, 0, 0, 0, 0, 0, 32.77003 + 2, 3, 2, 1, 0, 0, 0, 0, 6, 5, 0, 0, 0, 1, 0, 0, 32.77004 + 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.77005 + 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 2, 1, 1, 1, 32.77006 + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 32.77007 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77008 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77009 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77010 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77011 + 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.77012 + 1, 0, 1, 1, 0, 2, 3, 2, 4, 4, 4, 2, 0, 0, 0, 0, 32.77013 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77014 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77015 + 0, 1, 2, 3, 2, 0, 0, 0, 0, 0, 0, 0, 2, 3, 2, 2, 32.77016 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 3, 2, 2, 2, 2, 32.77017 + 2, 2, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 32.77018 + 1, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77019 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77020 + 2, 4, 4, 0, 0, 0, 3, 2, 3, 0, 0, 0, 0, 0, 5, 2, 32.77021 + 0, 2, 0, 0, 0, 0, 1, 2, 4, 3, 0, 0, 0, 0, 4, 4, 32.77022 + 0, 0, 0, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 0, 0, 32.77023 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.77024 + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77025 + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77026 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77027 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77028 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 32.77029 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.77030 + 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 4, 2, 32.77031 + 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77032 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77033 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77034 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77035 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77036 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77037 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 32.77038 + 3, 1, 1, 0, 0, 0, 4, 3, 4, 1, 2, 4, 4, 3, 4, 3, 32.77039 + 3, 2, 2, 4, 5, 5, 1, 4, 6, 4, 1, 0, 0, 2, 1, 1, 32.77040 + 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77041 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77042 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77043 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77044 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77045 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77046 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77047 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77048 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77049 + 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77050 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77051 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77052 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77053 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77054 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77055 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77056 + 0, 0, 1, 1, 3, 3, 3, 2, 2, 1, 0, 1, 5, 5, 2, 2, 32.77057 + 4, 4, 4, 3, 3, 1, 1, 2, 4, 3, 4, 3, 1, 3, 5, 4, 32.77058 + 1, 0, 0, 0, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 32.77059 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77060 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77061 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77062 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77063 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77064 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77065 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77066 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77067 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77068 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77069 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77070 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77071 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77072 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77073 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77074 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 32.77075 + 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 32.77076 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 32.77077 + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77078 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77079 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77080 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77081 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77082 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77083 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77084 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77085 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77086 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77087 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77088 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77089 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77090 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77091 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77092 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 32.77093 + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77094 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77095 + 0, 1, 0, 2, 0, 1, 0, 2, 1, 1, 0, 0, 0, 0, 0, 0, 32.77096 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77097 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77098 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77099 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77100 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77101 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77102 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77103 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77104 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77105 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77106 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77107 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77108 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77109 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77110 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77111 + 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 32.77112 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77113 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 1, 3, 2, 2, 32.77114 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77115 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77116 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77117 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77118 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77119 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77120 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77121 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77122 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77123 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77124 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77125 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77126 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77127 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77128 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77129 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 2, 1, 0, 32.77130 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 32.77131 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 2, 32.77132 + 2, 1, 3, 3, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77133 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77134 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77135 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77136 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77137 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77138 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77139 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77140 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77141 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77142 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77143 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77144 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77145 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77146 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77147 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 32.77148 + 1, 2, 3, 2, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 32.77149 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 32.77150 + 0, 0, 1, 2, 1, 2, 3, 2, 3, 3, 2, 2, 0, 0, 0, 0, 32.77151 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77152 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77153 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77154 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77155 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77156 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77157 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77158 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77159 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77160 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77161 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77162 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77163 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77164 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77165 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77166 + 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 3, 2, 2, 0, 0, 0, 32.77167 + 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 2, 32.77168 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 2, 1, 32.77169 + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77170 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77171 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77172 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77173 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77174 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77175 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77176 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77177 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77178 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77179 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77180 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77181 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77182 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77183 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77184 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 1, 32.77185 + 3, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 32.77186 + 0, 1, 0, 0, 1, 2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 32.77187 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77188 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77189 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77190 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77191 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77192 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77193 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77194 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77195 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77196 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77197 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77198 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77199 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77200 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77201 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77202 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77203 + 0, 0, 2, 3, 3, 3, 1, 1, 0, 2, 1, 1, 2, 0, 1, 0, 32.77204 + 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 2, 1, 1, 1, 0, 0, 32.77205 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77206 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77207 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77208 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77209 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77210 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77211 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77212 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77213 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77214 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77215 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77216 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77217 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77218 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77219 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77220 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77221 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 2, 32.77222 + 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77223 + 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77224 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77225 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77226 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77227 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77228 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77229 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77230 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77231 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77232 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77233 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77234 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77235 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77236 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77237 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77238 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77239 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77240 + 0, 0, 1, 1, 1, 2, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 32.77241 + 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77242 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77243 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77244 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77245 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77246 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77247 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77248 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77249 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77250 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77251 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77252 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77253 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77254 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77255 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77256 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77257 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77258 + 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 0, 32.77259 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 32.77260 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77261 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77262 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77263 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77264 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77265 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77266 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77267 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77268 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77269 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77270 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77271 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77272 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77273 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77274 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77275 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77276 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77277 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 32.77278 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77279 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77280 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77281 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77282 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77283 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77284 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77285 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77286 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77287 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32.77288 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; 32.77289 +/* Define image 'tomato' of size 100x100x1x3 and type 'const unsigned char' */ 32.77290 +const unsigned char data_tomato[] = { 32.77291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77292 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77293 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77294 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77295 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77296 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77298 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77299 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77300 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77301 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77302 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77303 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77304 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77305 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77306 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77307 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77308 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77309 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77310 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77311 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77312 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77313 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77314 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77315 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77317 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77318 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77319 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77320 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77321 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77323 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77324 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77325 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77326 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77327 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77328 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77329 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77330 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.77331 + 149, 49, 31, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77332 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77333 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77334 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77335 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77336 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77337 + 255, 194, 166, 70, 0, 2, 3, 14, 255, 255, 255, 255, 255, 255, 255, 255, 32.77338 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77339 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77340 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77342 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77343 + 255, 255, 249, 144, 41, 1, 0, 2, 6, 7, 1, 14, 255, 255, 255, 255, 32.77344 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77345 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77346 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77348 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77349 + 255, 255, 255, 255, 255, 255, 241, 0, 1, 7, 8, 7, 3, 0, 2, 5, 32.77350 + 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77351 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77352 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77353 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77354 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77355 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 93, 1, 3, 0, 0, 32.77356 + 0, 9, 16, 3, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77357 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77358 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77359 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77361 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.77362 + 0, 1, 5, 13, 14, 17, 18, 5, 94, 255, 255, 255, 255, 255, 255, 255, 32.77363 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77364 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77365 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77367 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77368 + 255, 255, 255, 254, 63, 3, 10, 13, 18, 18, 18, 10, 92, 255, 255, 255, 32.77369 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77370 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77371 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77373 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77374 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 0, 9, 11, 18, 18, 18, 10, 32.77375 + 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77376 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77377 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77379 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77380 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 6, 10, 32.77381 + 17, 18, 18, 10, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77382 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77383 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77384 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77386 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77387 + 255, 85, 4, 10, 15, 18, 18, 13, 4, 255, 255, 255, 255, 255, 255, 255, 32.77388 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77389 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77390 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77392 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77393 + 255, 255, 255, 255, 255, 153, 2, 10, 14, 18, 18, 17, 4, 255, 255, 255, 32.77394 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77395 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77396 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77398 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77399 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 1, 9, 11, 18, 18, 17, 32.77400 + 2, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77401 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77402 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77405 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 10, 8, 32.77406 + 10, 17, 18, 17, 3, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77407 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77408 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77409 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77411 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77412 + 255, 255, 51, 5, 10, 16, 18, 18, 5, 99, 255, 255, 255, 255, 255, 255, 32.77413 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77414 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77415 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77417 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 253, 253, 253, 253, 245, 240, 223, 32.77418 + 207, 207, 207, 208, 250, 255, 104, 2, 10, 13, 18, 18, 8, 82, 255, 255, 32.77419 + 255, 255, 255, 255, 255, 255, 223, 177, 104, 81, 0, 0, 0, 0, 0, 0, 32.77420 + 0, 0, 0, 0, 86, 104, 182, 209, 255, 255, 255, 255, 255, 255, 255, 255, 32.77421 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 250, 248, 247, 247, 229, 32.77424 + 202, 181, 175, 175, 175, 175, 175, 175, 197, 254, 172, 2, 10, 12, 18, 18, 32.77425 + 11, 18, 250, 255, 255, 255, 242, 161, 119, 57, 18, 0, 54, 90, 143, 191, 32.77426 + 191, 191, 191, 191, 191, 191, 191, 138, 90, 49, 0, 1, 57, 160, 218, 255, 32.77427 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 251, 247, 247, 218, 32.77430 + 202, 110, 64, 8, 7, 7, 7, 7, 7, 38, 82, 150, 175, 226, 192, 0, 32.77431 + 9, 11, 18, 18, 96, 36, 250, 245, 160, 96, 9, 15, 35, 107, 136, 235, 32.77432 + 242, 247, 247, 247, 247, 250, 253, 254, 254, 254, 254, 252, 251, 245, 238, 165, 32.77433 + 67, 24, 6, 105, 169, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 251, 247, 32.77436 + 247, 174, 80, 12, 0, 22, 57, 104, 128, 128, 128, 128, 119, 57, 14, 0, 32.77437 + 46, 148, 230, 18, 7, 11, 18, 18, 43, 255, 143, 50, 0, 69, 129, 210, 32.77438 + 247, 247, 247, 247, 247, 247, 247, 247, 253, 255, 255, 255, 255, 255, 255, 255, 32.77439 + 255, 255, 255, 254, 251, 229, 120, 62, 0, 48, 209, 255, 255, 255, 255, 255, 32.77440 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77442 + 254, 251, 239, 124, 27, 7, 41, 131, 167, 166, 175, 175, 175, 175, 175, 175, 32.77443 + 175, 175, 164, 110, 41, 6, 19, 2, 20, 38, 18, 18, 16, 55, 7, 85, 32.77444 + 182, 244, 247, 247, 247, 247, 247, 247, 247, 247, 247, 252, 255, 255, 255, 255, 32.77445 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 252, 244, 208, 37, 9, 28, 32.77446 + 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77448 + 255, 255, 255, 254, 249, 197, 85, 13, 67, 136, 197, 186, 175, 175, 175, 175, 32.77449 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 179, 76, 7, 38, 103, 16, 11, 32.77450 + 1, 47, 191, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 250, 255, 32.77451 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.77452 + 250, 236, 171, 92, 2, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77454 + 255, 255, 255, 255, 255, 255, 254, 248, 187, 9, 10, 130, 175, 175, 175, 175, 32.77455 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 208, 246, 247, 198, 32.77456 + 63, 2, 1, 0, 6, 170, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77457 + 247, 247, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77458 + 255, 255, 255, 255, 255, 252, 248, 247, 107, 10, 201, 254, 255, 255, 255, 255, 32.77459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 241, 101, 0, 55, 175, 175, 32.77461 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 184, 192, 205, 222, 222, 32.77462 + 247, 247, 247, 247, 247, 163, 55, 12, 39, 220, 247, 247, 247, 247, 247, 247, 32.77463 + 247, 247, 247, 247, 247, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77464 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 248, 245, 71, 0, 147, 32.77465 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 246, 108, 7, 32.77467 + 102, 166, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 193, 222, 241, 32.77468 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 243, 209, 223, 247, 247, 247, 32.77469 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 251, 255, 255, 255, 255, 255, 255, 32.77470 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 32.77471 + 247, 233, 111, 1, 61, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77473 + 240, 97, 4, 120, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77474 + 192, 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77475 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 251, 255, 255, 32.77476 + 255, 255, 255, 255, 253, 253, 250, 254, 255, 255, 255, 255, 255, 255, 255, 255, 32.77477 + 255, 255, 255, 255, 254, 245, 247, 189, 12, 106, 246, 255, 255, 255, 255, 255, 32.77478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77479 + 255, 255, 255, 252, 165, 0, 92, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77480 + 175, 175, 175, 175, 229, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77481 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77482 + 247, 251, 255, 255, 255, 255, 255, 251, 247, 247, 247, 248, 251, 251, 254, 255, 32.77483 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 247, 143, 11, 145, 255, 32.77484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77485 + 255, 255, 255, 255, 255, 255, 255, 239, 24, 71, 174, 175, 175, 175, 175, 175, 32.77486 + 175, 175, 175, 175, 175, 175, 175, 178, 245, 247, 247, 247, 247, 247, 247, 247, 32.77487 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77488 + 247, 247, 247, 247, 247, 249, 254, 255, 255, 255, 254, 248, 247, 247, 247, 247, 32.77489 + 247, 247, 247, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 249, 32.77490 + 247, 100, 7, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 159, 11, 157, 175, 175, 32.77492 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 197, 247, 247, 247, 247, 32.77493 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77494 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 250, 255, 255, 254, 249, 247, 32.77495 + 247, 247, 247, 247, 247, 247, 247, 247, 248, 248, 250, 255, 255, 255, 255, 255, 32.77496 + 255, 255, 255, 254, 248, 247, 68, 40, 234, 255, 255, 255, 255, 255, 255, 255, 32.77497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 58, 32.77498 + 66, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 197, 32.77499 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77500 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77501 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 251, 32.77502 + 254, 255, 255, 255, 255, 255, 255, 255, 253, 247, 224, 36, 63, 246, 255, 255, 32.77503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77504 + 255, 255, 194, 5, 138, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77505 + 175, 175, 175, 181, 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77506 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77507 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77508 + 247, 247, 247, 247, 251, 255, 255, 255, 255, 255, 255, 255, 255, 248, 246, 203, 32.77509 + 17, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77510 + 255, 255, 255, 255, 255, 240, 77, 41, 173, 175, 175, 175, 175, 175, 175, 175, 32.77511 + 175, 175, 175, 175, 175, 175, 175, 175, 232, 247, 247, 247, 247, 247, 247, 247, 32.77512 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77513 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77514 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 249, 254, 255, 255, 255, 255, 255, 32.77515 + 255, 254, 249, 247, 141, 13, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77516 + 255, 255, 255, 255, 255, 255, 255, 255, 247, 183, 25, 101, 175, 175, 175, 175, 32.77517 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 213, 247, 247, 247, 32.77518 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77519 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77520 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 250, 255, 32.77521 + 255, 255, 255, 255, 255, 255, 253, 247, 241, 45, 116, 255, 255, 255, 255, 255, 32.77522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 172, 5, 153, 32.77523 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77524 + 186, 244, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77525 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77526 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77527 + 247, 247, 247, 250, 255, 255, 255, 255, 255, 255, 255, 242, 247, 144, 12, 249, 32.77528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77529 + 227, 120, 10, 165, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77530 + 175, 175, 175, 175, 175, 226, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77531 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77532 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77533 + 247, 247, 247, 247, 247, 247, 247, 247, 252, 255, 255, 255, 255, 255, 255, 245, 32.77534 + 244, 240, 17, 108, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77535 + 255, 255, 255, 255, 227, 95, 47, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77536 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 207, 247, 247, 247, 247, 247, 247, 32.77537 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77538 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77539 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 253, 255, 255, 32.77540 + 255, 255, 255, 250, 243, 247, 111, 13, 208, 255, 255, 255, 255, 255, 255, 255, 32.77541 + 255, 255, 255, 255, 255, 255, 255, 255, 227, 59, 83, 175, 175, 175, 175, 175, 32.77542 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 182, 238, 247, 32.77543 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77544 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77545 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77546 + 247, 250, 255, 255, 255, 255, 255, 255, 248, 247, 247, 16, 102, 254, 255, 255, 32.77547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 59, 108, 175, 32.77548 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77549 + 175, 175, 205, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77550 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77551 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77552 + 247, 247, 247, 247, 247, 248, 254, 255, 255, 255, 255, 255, 248, 247, 247, 152, 32.77553 + 14, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77554 + 254, 26, 108, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77555 + 175, 175, 175, 175, 175, 175, 181, 237, 247, 247, 247, 247, 247, 247, 247, 247, 32.77556 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77557 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77558 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 254, 255, 255, 255, 255, 255, 32.77559 + 248, 247, 247, 243, 22, 147, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77560 + 255, 255, 255, 255, 254, 0, 152, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77561 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 203, 247, 247, 247, 247, 32.77562 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 246, 247, 247, 247, 247, 247, 32.77563 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77564 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 252, 255, 32.77565 + 255, 255, 255, 255, 248, 247, 247, 247, 95, 114, 254, 255, 255, 255, 255, 255, 32.77566 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 168, 175, 175, 175, 175, 175, 32.77567 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77568 + 232, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 240, 240, 246, 32.77569 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77570 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77571 + 247, 247, 251, 255, 255, 255, 255, 254, 248, 247, 247, 247, 139, 27, 237, 255, 32.77572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 168, 175, 32.77573 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77574 + 175, 175, 175, 175, 191, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77575 + 246, 241, 241, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77576 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77577 + 247, 247, 247, 247, 247, 247, 247, 253, 255, 255, 255, 251, 247, 247, 247, 247, 32.77578 + 226, 13, 162, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77579 + 254, 0, 168, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77580 + 175, 175, 175, 175, 175, 175, 175, 175, 176, 220, 247, 247, 247, 247, 247, 247, 32.77581 + 247, 247, 247, 247, 247, 246, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77582 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77583 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 248, 251, 251, 250, 247, 32.77584 + 247, 247, 247, 247, 247, 99, 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77585 + 255, 255, 255, 255, 254, 0, 168, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77586 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 177, 228, 247, 32.77587 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77588 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77589 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77590 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 190, 48, 254, 255, 255, 255, 255, 32.77591 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 168, 175, 175, 175, 175, 175, 32.77592 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77593 + 175, 175, 181, 237, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77594 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 32.77595 + 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77596 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 191, 8, 220, 32.77597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 0, 168, 175, 32.77598 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77599 + 175, 175, 175, 175, 175, 175, 175, 195, 237, 247, 247, 247, 247, 247, 247, 247, 32.77600 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77601 + 247, 247, 246, 242, 242, 246, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77602 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 237, 32.77603 + 232, 232, 27, 195, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77604 + 226, 0, 168, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77605 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 179, 235, 247, 247, 32.77606 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77607 + 247, 247, 247, 247, 247, 247, 246, 239, 239, 246, 247, 247, 247, 247, 247, 247, 32.77608 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77609 + 247, 247, 237, 180, 175, 175, 44, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.77610 + 255, 255, 255, 255, 226, 0, 168, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77611 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77612 + 175, 184, 223, 241, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77613 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 246, 246, 246, 247, 247, 32.77614 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77615 + 247, 247, 247, 247, 247, 245, 185, 175, 175, 175, 81, 111, 255, 255, 255, 255, 32.77616 + 255, 255, 255, 255, 255, 255, 255, 255, 226, 0, 123, 175, 175, 175, 175, 175, 32.77617 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77618 + 175, 175, 175, 175, 175, 175, 175, 184, 212, 247, 247, 247, 247, 247, 247, 247, 32.77619 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77620 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77621 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 235, 175, 175, 175, 175, 81, 99, 32.77622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 56, 108, 175, 32.77623 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77624 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 203, 231, 244, 32.77625 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77626 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77627 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 216, 175, 175, 32.77628 + 175, 175, 81, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77629 + 227, 59, 108, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77630 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77631 + 175, 175, 175, 190, 216, 239, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77632 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77633 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77634 + 247, 194, 175, 175, 175, 175, 81, 99, 255, 255, 255, 255, 255, 255, 255, 255, 32.77635 + 255, 255, 255, 255, 227, 59, 103, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77636 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77637 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 189, 244, 247, 247, 247, 247, 247, 32.77638 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77639 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77640 + 247, 247, 247, 247, 240, 177, 175, 175, 175, 175, 81, 124, 255, 255, 255, 255, 32.77641 + 255, 255, 255, 255, 255, 255, 255, 255, 227, 76, 47, 175, 175, 175, 175, 175, 32.77642 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77643 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 203, 247, 32.77644 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77645 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77646 + 247, 247, 247, 247, 247, 247, 247, 247, 210, 175, 175, 175, 175, 175, 81, 127, 32.77647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 227, 120, 45, 174, 32.77648 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77649 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77650 + 175, 175, 195, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77651 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77652 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 239, 177, 175, 175, 175, 32.77653 + 175, 175, 81, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77654 + 233, 132, 1, 162, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77655 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77656 + 175, 175, 175, 175, 175, 175, 195, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77657 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77658 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 208, 32.77659 + 175, 175, 175, 175, 175, 175, 81, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.77660 + 255, 255, 255, 255, 254, 175, 6, 137, 175, 175, 175, 175, 175, 175, 175, 175, 32.77661 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77662 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 187, 245, 247, 247, 247, 247, 32.77663 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77664 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77665 + 247, 247, 228, 177, 175, 175, 175, 175, 175, 175, 56, 127, 255, 255, 255, 255, 32.77666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 41, 65, 175, 175, 175, 175, 32.77667 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77668 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 238, 32.77669 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77670 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77671 + 247, 247, 247, 247, 247, 244, 184, 175, 175, 175, 175, 175, 175, 167, 16, 179, 32.77672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 114, 41, 32.77673 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77674 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77675 + 175, 175, 175, 217, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77676 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77677 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 205, 175, 175, 175, 175, 175, 175, 32.77678 + 175, 135, 17, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77679 + 255, 255, 140, 3, 156, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77680 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77681 + 175, 175, 175, 175, 175, 175, 175, 191, 242, 247, 247, 247, 247, 247, 247, 247, 32.77682 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77683 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 244, 203, 175, 175, 175, 32.77684 + 175, 175, 175, 175, 175, 76, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77685 + 255, 255, 255, 255, 255, 255, 214, 12, 111, 175, 175, 175, 175, 175, 175, 175, 32.77686 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77687 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 191, 243, 247, 247, 32.77688 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77689 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 201, 32.77690 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 74, 118, 255, 255, 255, 255, 255, 32.77691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 87, 64, 175, 175, 175, 32.77692 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77693 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77694 + 175, 200, 245, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77695 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77696 + 247, 247, 224, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 18, 142, 255, 32.77697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 32.77698 + 10, 156, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77699 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77700 + 175, 175, 175, 175, 175, 175, 210, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77701 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77702 + 247, 247, 247, 247, 247, 240, 182, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77703 + 161, 9, 197, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77704 + 255, 255, 255, 247, 24, 120, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77705 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77706 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 176, 199, 244, 247, 247, 247, 32.77707 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77708 + 247, 247, 247, 247, 247, 247, 247, 247, 244, 190, 175, 175, 175, 175, 175, 175, 32.77709 + 175, 175, 175, 175, 99, 19, 220, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77710 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 86, 178, 175, 175, 175, 175, 175, 32.77711 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77712 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77713 + 185, 211, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77714 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 203, 175, 175, 175, 32.77715 + 175, 175, 175, 175, 175, 175, 175, 175, 67, 104, 255, 255, 255, 255, 255, 255, 32.77716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 7, 134, 175, 32.77717 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77718 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77719 + 175, 175, 175, 175, 175, 175, 196, 245, 247, 247, 247, 247, 247, 247, 247, 247, 32.77720 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 246, 232, 203, 32.77721 + 178, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 152, 14, 148, 255, 255, 32.77722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77723 + 255, 91, 31, 138, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77724 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77725 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 183, 210, 240, 247, 247, 32.77726 + 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77727 + 244, 213, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 84, 32.77728 + 32, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77729 + 255, 255, 255, 255, 255, 212, 52, 21, 157, 175, 175, 175, 175, 175, 175, 175, 32.77730 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77731 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77732 + 175, 189, 219, 232, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 247, 32.77733 + 247, 247, 239, 212, 186, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77734 + 175, 175, 151, 12, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77735 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 32, 84, 175, 175, 175, 32.77736 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77737 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77738 + 175, 175, 175, 175, 175, 175, 175, 175, 189, 217, 239, 247, 247, 247, 247, 247, 32.77739 + 247, 247, 247, 246, 235, 206, 177, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77740 + 175, 175, 175, 175, 175, 175, 80, 44, 248, 255, 255, 255, 255, 255, 255, 255, 32.77741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 32.77742 + 1, 68, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77743 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77744 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 181, 192, 32.77745 + 192, 192, 192, 192, 192, 192, 192, 192, 175, 175, 175, 175, 175, 175, 175, 175, 32.77746 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 54, 144, 255, 255, 255, 255, 32.77747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77748 + 255, 255, 255, 253, 156, 0, 136, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77749 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77750 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77751 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77752 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 161, 3, 176, 32.77753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77754 + 255, 255, 255, 255, 255, 255, 255, 255, 251, 81, 15, 109, 175, 175, 175, 175, 32.77755 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77756 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77757 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77758 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77759 + 175, 65, 26, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77760 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 92, 5, 32.77761 + 154, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77762 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77763 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77764 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77765 + 175, 175, 175, 175, 133, 5, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77766 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77767 + 255, 255, 255, 31, 13, 130, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77768 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77769 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77770 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77771 + 175, 175, 175, 175, 175, 175, 175, 145, 33, 68, 255, 255, 255, 255, 255, 255, 32.77772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77773 + 255, 255, 255, 255, 255, 255, 255, 231, 59, 6, 123, 175, 175, 175, 175, 175, 32.77774 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77775 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77776 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77777 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 179, 83, 47, 203, 255, 255, 32.77778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77779 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 99, 10, 127, 32.77780 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77781 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77782 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77783 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 178, 118, 6, 32.77784 + 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77785 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77786 + 255, 241, 64, 4, 63, 156, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77787 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77788 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77789 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77790 + 181, 80, 7, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77791 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77792 + 255, 255, 255, 255, 255, 255, 252, 153, 25, 3, 121, 175, 175, 175, 175, 175, 32.77793 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77794 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77795 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77796 + 175, 175, 175, 178, 110, 8, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77798 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 226, 81, 0, 39, 32.77799 + 84, 148, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77800 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77801 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77802 + 175, 175, 175, 175, 175, 175, 175, 140, 4, 148, 255, 255, 255, 255, 255, 255, 32.77803 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77804 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77805 + 255, 250, 171, 107, 26, 4, 46, 95, 175, 150, 151, 175, 175, 175, 175, 175, 32.77806 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77807 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77808 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 156, 8, 116, 253, 255, 255, 32.77809 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77810 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77811 + 255, 255, 255, 255, 255, 255, 255, 255, 236, 162, 83, 11, 0, 0, 2, 47, 32.77812 + 117, 48, 46, 46, 46, 46, 46, 46, 97, 117, 117, 171, 175, 175, 175, 175, 32.77813 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77814 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 155, 41, 78, 32.77815 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77816 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77817 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 32.77818 + 234, 234, 156, 56, 26, 55, 130, 54, 6, 0, 0, 0, 0, 1, 0, 55, 32.77819 + 160, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77820 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77821 + 166, 31, 16, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77823 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77824 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 0, 2, 5, 0, 32.77825 + 0, 10, 10, 0, 29, 141, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77826 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77827 + 175, 175, 175, 154, 53, 24, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77828 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77829 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77830 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 13, 32.77831 + 8, 16, 4, 53, 44, 5, 17, 9, 0, 11, 120, 175, 175, 175, 175, 175, 32.77832 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77833 + 175, 175, 175, 175, 175, 175, 170, 46, 14, 201, 255, 255, 255, 255, 255, 255, 32.77834 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77835 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77836 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77837 + 255, 255, 192, 0, 11, 6, 5, 206, 183, 0, 13, 18, 7, 0, 38, 151, 32.77838 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77839 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 168, 47, 4, 201, 255, 255, 255, 32.77840 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77841 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77842 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77843 + 255, 255, 255, 255, 255, 255, 219, 15, 5, 18, 158, 255, 254, 71, 6, 17, 32.77844 + 15, 0, 3, 12, 61, 171, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77845 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 171, 72, 13, 191, 32.77846 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77848 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77849 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77850 + 255, 188, 1, 4, 0, 45, 224, 116, 8, 1, 91, 162, 175, 175, 175, 175, 32.77851 + 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 153, 74, 32.77852 + 8, 7, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77853 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77854 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77855 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77856 + 255, 255, 255, 255, 255, 255, 138, 98, 120, 229, 255, 247, 185, 86, 0, 22, 32.77857 + 78, 168, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77858 + 175, 86, 14, 21, 117, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77859 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77860 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77861 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77862 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77863 + 254, 253, 215, 115, 16, 43, 142, 175, 175, 175, 175, 175, 175, 175, 175, 175, 32.77864 + 175, 175, 153, 119, 26, 12, 104, 241, 255, 255, 255, 255, 255, 255, 255, 255, 32.77865 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77866 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77867 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77868 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77869 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 38, 7, 77, 141, 175, 175, 175, 32.77870 + 175, 175, 161, 114, 104, 42, 10, 0, 60, 210, 255, 255, 255, 255, 255, 255, 32.77871 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77873 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77874 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77875 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 130, 26, 32.77876 + 4, 10, 10, 10, 10, 10, 8, 16, 31, 78, 142, 239, 250, 255, 255, 255, 32.77877 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77878 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77879 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77880 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77881 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77882 + 255, 255, 255, 244, 178, 149, 149, 149, 181, 182, 182, 220, 255, 255, 255, 255, 32.77883 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77884 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77885 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77886 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77887 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77888 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77889 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77890 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77891 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77892 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77893 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77894 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77895 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77896 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77898 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77899 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77900 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77901 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77902 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77903 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77904 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77905 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77906 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77907 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77908 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77909 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77910 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77911 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77912 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77913 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77914 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77915 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77917 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77918 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77919 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77920 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77921 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77923 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77924 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77925 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77926 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77927 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77928 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77929 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77930 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77931 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77932 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77933 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77934 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77935 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77936 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77937 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77938 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77939 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77940 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77942 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77943 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77944 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77945 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77946 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77948 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77949 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77950 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77951 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77952 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77953 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77954 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77955 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.77956 + 149, 49, 31, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77957 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77958 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77959 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77960 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77961 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77962 + 255, 194, 166, 70, 7, 53, 65, 14, 255, 255, 255, 255, 255, 255, 255, 255, 32.77963 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77964 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77965 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77967 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77968 + 255, 255, 249, 144, 41, 2, 3, 43, 118, 139, 31, 14, 255, 255, 255, 255, 32.77969 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77970 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77971 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77973 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77974 + 255, 255, 255, 255, 255, 255, 241, 0, 35, 128, 156, 141, 67, 0, 33, 5, 32.77975 + 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77976 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77977 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77978 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77979 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77980 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 93, 35, 63, 14, 0, 32.77981 + 11, 132, 219, 47, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77982 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77983 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77984 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77986 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.77987 + 0, 18, 97, 192, 210, 233, 234, 72, 94, 255, 255, 255, 255, 255, 255, 255, 32.77988 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77989 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77990 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77992 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77993 + 255, 255, 255, 254, 63, 65, 178, 202, 234, 234, 234, 140, 92, 255, 255, 255, 32.77994 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77995 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77996 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77998 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.77999 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 3, 167, 189, 234, 234, 234, 140, 32.78000 + 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78001 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78002 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78004 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78005 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 122, 181, 32.78006 + 228, 234, 234, 140, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78007 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78008 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78009 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78011 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78012 + 255, 85, 75, 178, 216, 234, 234, 179, 4, 255, 255, 255, 255, 255, 255, 255, 32.78013 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78014 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78015 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78017 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78018 + 255, 255, 255, 255, 255, 153, 43, 178, 206, 234, 234, 221, 4, 255, 255, 255, 32.78019 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78020 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78021 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78023 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78024 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 24, 169, 190, 234, 234, 221, 32.78025 + 2, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78026 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78027 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78030 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 10, 146, 32.78031 + 181, 227, 234, 229, 43, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78032 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78033 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78034 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78036 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78037 + 255, 255, 51, 98, 178, 224, 234, 234, 68, 99, 255, 255, 255, 255, 255, 255, 32.78038 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78039 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78040 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78042 + 255, 255, 255, 255, 255, 255, 255, 255, 235, 209, 209, 209, 209, 211, 213, 165, 32.78043 + 120, 120, 120, 121, 241, 255, 104, 36, 178, 204, 234, 234, 115, 82, 255, 255, 32.78044 + 255, 255, 255, 255, 255, 255, 223, 177, 104, 81, 0, 0, 0, 0, 0, 0, 32.78045 + 0, 0, 0, 0, 86, 104, 182, 209, 255, 255, 255, 255, 255, 255, 255, 255, 32.78046 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 116, 39, 8, 8, 12, 32.78049 + 19, 25, 27, 27, 27, 27, 27, 27, 91, 252, 172, 36, 178, 197, 234, 234, 32.78050 + 148, 18, 250, 255, 255, 255, 242, 161, 119, 57, 18, 0, 1, 2, 4, 6, 32.78051 + 6, 6, 6, 6, 6, 6, 6, 4, 2, 1, 0, 1, 57, 160, 218, 255, 32.78052 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 160, 28, 9, 7, 32.78055 + 6, 3, 5, 0, 1, 1, 1, 1, 1, 5, 12, 23, 27, 173, 192, 16, 32.78056 + 164, 185, 234, 234, 234, 36, 250, 245, 160, 96, 9, 0, 1, 3, 4, 7, 32.78057 + 7, 8, 8, 8, 8, 11, 23, 27, 63, 63, 63, 62, 60, 43, 21, 13, 32.78058 + 2, 0, 6, 105, 169, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 142, 10, 32.78061 + 8, 5, 2, 0, 0, 3, 8, 16, 19, 19, 19, 19, 18, 8, 2, 0, 32.78062 + 7, 51, 136, 18, 133, 185, 234, 234, 236, 255, 143, 50, 0, 2, 4, 6, 32.78063 + 8, 8, 8, 8, 8, 8, 8, 8, 16, 71, 97, 104, 104, 104, 104, 104, 32.78064 + 104, 104, 104, 94, 65, 29, 3, 2, 0, 48, 209, 255, 255, 255, 255, 255, 32.78065 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78067 + 245, 158, 7, 4, 0, 0, 1, 6, 23, 25, 27, 27, 27, 27, 27, 27, 32.78068 + 27, 27, 25, 17, 6, 1, 5, 2, 106, 218, 234, 234, 182, 55, 0, 2, 32.78069 + 5, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 21, 89, 104, 104, 104, 32.78070 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 101, 72, 32, 6, 1, 9, 28, 32.78071 + 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78073 + 255, 255, 255, 224, 80, 6, 2, 2, 10, 19, 21, 23, 27, 27, 27, 27, 32.78074 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 11, 2, 0, 1, 51, 219, 145, 32.78075 + 20, 1, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 15, 83, 32.78076 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 97, 32.78077 + 53, 12, 23, 92, 2, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78079 + 255, 255, 255, 255, 255, 255, 235, 82, 6, 0, 1, 20, 27, 27, 27, 27, 32.78080 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 18, 8, 8, 6, 32.78081 + 2, 0, 22, 8, 83, 72, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78082 + 8, 8, 70, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 32.78083 + 104, 104, 104, 104, 104, 74, 22, 77, 71, 10, 201, 254, 255, 255, 255, 255, 32.78084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 229, 53, 3, 0, 8, 27, 27, 32.78086 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 24, 22, 18, 14, 14, 32.78087 + 8, 8, 8, 8, 8, 5, 16, 157, 212, 33, 8, 8, 8, 8, 8, 8, 32.78088 + 8, 8, 8, 8, 8, 29, 99, 104, 104, 104, 104, 104, 104, 104, 104, 104, 32.78089 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 88, 31, 37, 2, 0, 147, 32.78090 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 71, 3, 1, 32.78092 + 15, 25, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 22, 14, 9, 32.78093 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 11, 44, 31, 8, 8, 8, 32.78094 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 61, 104, 104, 104, 104, 104, 104, 32.78095 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 94, 32.78096 + 48, 8, 3, 0, 61, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78098 + 101, 3, 0, 18, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78099 + 22, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78100 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 61, 104, 104, 32.78101 + 104, 104, 104, 104, 91, 84, 64, 68, 85, 94, 104, 104, 104, 104, 104, 104, 32.78102 + 104, 104, 104, 104, 104, 65, 8, 32, 8, 106, 246, 255, 255, 255, 255, 255, 32.78103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78104 + 255, 255, 255, 175, 10, 0, 14, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78105 + 27, 27, 27, 27, 12, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78106 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78107 + 8, 61, 104, 104, 104, 104, 104, 65, 15, 8, 8, 9, 11, 20, 47, 94, 32.78108 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 47, 8, 4, 0, 145, 255, 32.78109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78110 + 255, 255, 255, 255, 255, 255, 255, 62, 0, 11, 26, 27, 27, 27, 27, 27, 32.78111 + 27, 27, 27, 27, 27, 27, 27, 26, 8, 8, 8, 8, 8, 8, 8, 8, 32.78112 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78113 + 8, 8, 8, 8, 8, 39, 101, 104, 104, 104, 97, 21, 8, 8, 8, 8, 32.78114 + 8, 8, 8, 14, 41, 98, 104, 104, 104, 104, 104, 104, 104, 104, 103, 36, 32.78115 + 8, 3, 0, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 16, 1, 24, 27, 27, 32.78117 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 20, 8, 8, 8, 8, 32.78118 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78119 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 54, 104, 104, 101, 33, 8, 32.78120 + 8, 8, 8, 8, 8, 8, 8, 8, 9, 23, 89, 104, 104, 104, 104, 104, 32.78121 + 104, 104, 104, 97, 25, 8, 2, 40, 234, 255, 255, 255, 255, 255, 255, 255, 32.78122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 1, 32.78123 + 10, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 20, 32.78124 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78125 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 13, 32.78126 + 13, 13, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 11, 58, 32.78127 + 102, 104, 104, 104, 104, 104, 104, 104, 91, 18, 7, 1, 63, 246, 255, 255, 32.78128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78129 + 255, 255, 102, 0, 21, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78130 + 27, 27, 27, 25, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78131 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78132 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78133 + 8, 8, 8, 8, 58, 104, 104, 104, 104, 104, 104, 104, 104, 82, 12, 6, 32.78134 + 0, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78135 + 255, 255, 255, 255, 255, 213, 23, 6, 26, 27, 27, 27, 27, 27, 27, 27, 32.78136 + 27, 27, 27, 27, 27, 27, 27, 27, 11, 8, 8, 8, 8, 8, 8, 8, 32.78137 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78138 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78139 + 8, 8, 8, 8, 8, 8, 8, 8, 9, 42, 102, 104, 104, 104, 104, 104, 32.78140 + 104, 104, 39, 8, 4, 13, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78141 + 255, 255, 255, 255, 255, 255, 255, 255, 233, 52, 3, 15, 27, 27, 27, 27, 32.78142 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 16, 8, 8, 8, 32.78143 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78144 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78145 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 53, 104, 32.78146 + 104, 104, 104, 104, 104, 104, 82, 13, 7, 1, 116, 255, 255, 255, 255, 255, 32.78147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 26, 0, 23, 32.78148 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78149 + 24, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78150 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78151 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78152 + 8, 8, 9, 54, 104, 104, 104, 104, 104, 104, 104, 71, 8, 4, 12, 215, 32.78153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78154 + 175, 18, 1, 25, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78155 + 27, 27, 27, 27, 27, 13, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78156 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78157 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78158 + 8, 8, 8, 8, 8, 8, 8, 10, 79, 104, 104, 104, 104, 104, 104, 100, 32.78159 + 22, 7, 0, 62, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78160 + 255, 255, 255, 255, 175, 14, 7, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78161 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 18, 8, 8, 8, 8, 8, 8, 32.78162 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78163 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78164 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 15, 91, 104, 104, 32.78165 + 104, 104, 104, 104, 31, 8, 3, 0, 138, 255, 255, 255, 255, 255, 255, 255, 32.78166 + 255, 255, 255, 255, 255, 255, 255, 255, 175, 9, 12, 27, 27, 27, 27, 27, 32.78167 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 25, 10, 8, 32.78168 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78169 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78170 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78171 + 8, 54, 104, 104, 104, 104, 104, 104, 30, 8, 8, 0, 56, 251, 255, 255, 32.78172 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 9, 16, 27, 32.78173 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78174 + 27, 27, 18, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78175 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78176 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78177 + 8, 8, 8, 8, 8, 28, 103, 104, 104, 104, 104, 104, 30, 8, 8, 4, 32.78178 + 0, 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78179 + 254, 4, 16, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78180 + 27, 27, 27, 27, 27, 27, 25, 10, 8, 8, 8, 8, 8, 8, 8, 8, 32.78181 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78182 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78183 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 98, 104, 104, 104, 104, 104, 32.78184 + 30, 8, 8, 7, 0, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78185 + 255, 255, 255, 255, 254, 0, 23, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78186 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 19, 8, 8, 8, 8, 32.78187 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78188 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78189 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 70, 104, 32.78190 + 104, 104, 104, 104, 30, 8, 8, 8, 3, 18, 233, 255, 255, 255, 255, 255, 32.78191 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 26, 27, 27, 27, 27, 27, 32.78192 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 32.78193 + 11, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 11, 12, 8, 32.78194 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78195 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78196 + 8, 8, 66, 104, 104, 104, 104, 102, 28, 8, 8, 8, 4, 0, 181, 255, 32.78197 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 26, 27, 32.78198 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78199 + 27, 27, 27, 27, 22, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78200 + 8, 11, 11, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78201 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78202 + 8, 8, 8, 8, 8, 8, 16, 91, 104, 104, 104, 60, 8, 8, 8, 8, 32.78203 + 7, 0, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78204 + 254, 0, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78205 + 27, 27, 27, 27, 27, 27, 27, 27, 26, 15, 8, 8, 8, 8, 8, 8, 32.78206 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78207 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78208 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 25, 58, 58, 53, 10, 32.78209 + 8, 8, 8, 8, 8, 3, 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78210 + 255, 255, 255, 255, 254, 0, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78211 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 12, 8, 32.78212 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78213 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78214 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78215 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 37, 245, 255, 255, 255, 255, 32.78216 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 26, 27, 27, 27, 27, 27, 32.78217 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78218 + 27, 27, 25, 10, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78219 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78220 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78221 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 6, 0, 178, 32.78222 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 0, 26, 27, 32.78223 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78224 + 27, 27, 27, 27, 27, 27, 27, 21, 10, 8, 8, 8, 8, 8, 8, 8, 32.78225 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78226 + 8, 8, 8, 10, 10, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78227 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 10, 32.78228 + 11, 11, 1, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78229 + 175, 0, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78230 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 25, 10, 8, 8, 32.78231 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78232 + 8, 8, 8, 8, 8, 8, 8, 12, 12, 8, 8, 8, 8, 8, 8, 8, 32.78233 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78234 + 8, 8, 10, 25, 27, 27, 6, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.78235 + 255, 255, 255, 255, 175, 0, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78236 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78237 + 27, 24, 14, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78238 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78239 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78240 + 8, 8, 8, 8, 8, 8, 24, 27, 27, 27, 12, 81, 255, 255, 255, 255, 32.78241 + 255, 255, 255, 255, 255, 255, 255, 255, 175, 0, 19, 27, 27, 27, 27, 27, 32.78242 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78243 + 27, 27, 27, 27, 27, 27, 27, 24, 17, 8, 8, 8, 8, 8, 8, 8, 32.78244 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78245 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78246 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 10, 27, 27, 27, 27, 12, 48, 32.78247 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 8, 16, 27, 32.78248 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78249 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 19, 11, 8, 32.78250 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78251 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78252 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 16, 27, 27, 32.78253 + 27, 27, 12, 48, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78254 + 175, 9, 16, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78255 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78256 + 27, 27, 27, 22, 16, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78257 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78258 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78259 + 8, 21, 27, 27, 27, 27, 12, 48, 255, 255, 255, 255, 255, 255, 255, 255, 32.78260 + 255, 255, 255, 255, 175, 9, 15, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78261 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78262 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 23, 8, 8, 8, 8, 8, 8, 32.78263 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78264 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78265 + 8, 8, 8, 8, 9, 26, 27, 27, 27, 27, 12, 119, 255, 255, 255, 255, 32.78266 + 255, 255, 255, 255, 255, 255, 255, 255, 175, 11, 7, 27, 27, 27, 27, 27, 32.78267 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78268 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 19, 8, 32.78269 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78270 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78271 + 8, 8, 8, 8, 8, 8, 8, 8, 17, 27, 27, 27, 27, 27, 12, 127, 32.78272 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 18, 7, 26, 32.78273 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78274 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78275 + 27, 27, 21, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78276 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78277 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 10, 26, 27, 27, 27, 32.78278 + 27, 27, 12, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78279 + 193, 20, 0, 25, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78280 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78281 + 27, 27, 27, 27, 27, 27, 21, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78282 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78283 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 18, 32.78284 + 27, 27, 27, 27, 27, 27, 12, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.78285 + 255, 255, 255, 255, 254, 27, 0, 21, 27, 27, 27, 27, 27, 27, 27, 27, 32.78286 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78287 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 23, 8, 8, 8, 8, 8, 32.78288 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78289 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78290 + 8, 8, 12, 26, 27, 27, 27, 27, 27, 27, 8, 127, 255, 255, 255, 255, 32.78291 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 151, 6, 10, 27, 27, 27, 27, 32.78292 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78293 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 10, 32.78294 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78295 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78296 + 8, 8, 8, 8, 8, 8, 24, 27, 27, 27, 27, 27, 27, 25, 2, 179, 32.78297 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 210, 20, 6, 32.78298 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78299 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78300 + 27, 27, 27, 15, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78301 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78302 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 19, 27, 27, 27, 27, 27, 27, 32.78303 + 27, 20, 17, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78304 + 255, 255, 39, 0, 24, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78305 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78306 + 27, 27, 27, 27, 27, 27, 27, 22, 9, 8, 8, 8, 8, 8, 8, 8, 32.78307 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78308 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 19, 26, 27, 27, 32.78309 + 27, 27, 27, 27, 27, 11, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78310 + 255, 255, 255, 255, 255, 255, 139, 1, 17, 27, 27, 27, 27, 27, 27, 27, 32.78311 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78312 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 22, 8, 8, 8, 32.78313 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78314 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 19, 32.78315 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 11, 83, 255, 255, 255, 255, 255, 32.78316 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 66, 9, 27, 27, 27, 32.78317 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78318 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78319 + 27, 20, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78320 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78321 + 8, 8, 13, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 2, 137, 255, 32.78322 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 32.78323 + 1, 24, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78324 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78325 + 27, 27, 27, 27, 27, 27, 17, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78326 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78327 + 8, 8, 8, 8, 8, 9, 24, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78328 + 24, 1, 146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78329 + 255, 255, 255, 247, 24, 18, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78330 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78331 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 20, 8, 8, 8, 8, 32.78332 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78333 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 23, 27, 27, 27, 27, 27, 27, 32.78334 + 27, 27, 27, 27, 15, 6, 186, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78335 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 7, 26, 27, 27, 27, 27, 27, 32.78336 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78337 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78338 + 24, 17, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78339 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 19, 27, 27, 27, 32.78340 + 27, 27, 27, 27, 27, 27, 27, 27, 10, 83, 255, 255, 255, 255, 255, 255, 32.78341 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 0, 15, 27, 32.78342 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78343 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78344 + 27, 27, 27, 27, 27, 26, 21, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78345 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 11, 19, 32.78346 + 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 23, 2, 148, 255, 255, 32.78347 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78348 + 255, 91, 4, 21, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78349 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78350 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 24, 17, 9, 8, 8, 32.78351 + 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78352 + 8, 16, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 13, 32.78353 + 16, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78354 + 255, 255, 255, 255, 255, 212, 52, 3, 24, 27, 27, 27, 27, 27, 27, 27, 32.78355 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78356 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78357 + 27, 23, 15, 11, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 32.78358 + 8, 8, 9, 17, 23, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78359 + 27, 27, 23, 1, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78360 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 32, 13, 27, 27, 27, 32.78361 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78362 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78363 + 27, 27, 27, 27, 27, 27, 27, 26, 23, 15, 9, 8, 8, 8, 8, 8, 32.78364 + 8, 8, 8, 8, 11, 18, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78365 + 27, 27, 27, 27, 27, 27, 12, 44, 248, 255, 255, 255, 255, 255, 255, 255, 32.78366 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 32.78367 + 0, 10, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78368 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78369 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 25, 22, 32.78370 + 22, 22, 22, 22, 22, 22, 22, 22, 27, 27, 27, 27, 27, 27, 27, 27, 32.78371 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 8, 144, 255, 255, 255, 255, 32.78372 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78373 + 255, 255, 255, 253, 156, 0, 20, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78374 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78375 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78376 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78377 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 24, 0, 176, 32.78378 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78379 + 255, 255, 255, 255, 255, 255, 255, 255, 251, 81, 2, 16, 27, 27, 27, 27, 32.78380 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78381 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78382 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78383 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78384 + 27, 10, 26, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78385 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 92, 1, 32.78386 + 23, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78387 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78388 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78389 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78390 + 27, 27, 27, 27, 20, 1, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78391 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78392 + 255, 255, 255, 31, 2, 20, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78393 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78394 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78395 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78396 + 27, 27, 27, 27, 27, 27, 27, 22, 5, 68, 255, 255, 255, 255, 255, 255, 32.78397 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78398 + 255, 255, 255, 255, 255, 255, 255, 204, 13, 0, 19, 27, 27, 27, 27, 27, 32.78399 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78400 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78401 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78402 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 25, 40, 47, 203, 255, 255, 32.78403 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78404 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 142, 9, 1, 19, 32.78405 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78406 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78407 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78408 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 9, 6, 32.78409 + 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78410 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78411 + 255, 103, 2, 0, 9, 24, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78412 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78413 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78414 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78415 + 25, 9, 0, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78416 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78417 + 255, 255, 255, 255, 255, 255, 168, 63, 0, 0, 18, 27, 27, 27, 27, 27, 32.78418 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78419 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78420 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78421 + 27, 27, 27, 26, 8, 8, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78422 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78423 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 120, 26, 0, 6, 32.78424 + 12, 22, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78425 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78426 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78427 + 27, 27, 27, 27, 27, 27, 27, 11, 0, 148, 255, 255, 255, 255, 255, 255, 32.78428 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78429 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78430 + 255, 247, 171, 107, 26, 0, 7, 12, 16, 23, 23, 27, 27, 27, 27, 27, 32.78431 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78432 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78433 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 16, 0, 116, 253, 255, 255, 32.78434 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78435 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78436 + 255, 255, 255, 255, 255, 255, 255, 255, 236, 162, 83, 11, 0, 0, 0, 7, 32.78437 + 18, 7, 7, 7, 7, 7, 7, 7, 14, 18, 18, 26, 27, 27, 27, 27, 32.78438 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78439 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 24, 6, 78, 32.78440 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78441 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78442 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 32.78443 + 234, 234, 156, 56, 26, 55, 130, 123, 82, 0, 0, 0, 0, 16, 0, 8, 32.78444 + 24, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78445 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78446 + 25, 4, 16, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78447 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78448 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78449 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 123, 9, 31, 70, 0, 32.78450 + 0, 133, 136, 3, 4, 21, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78451 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78452 + 27, 27, 27, 23, 8, 24, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78453 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78454 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78455 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 13, 32.78456 + 110, 217, 57, 58, 101, 71, 233, 126, 1, 1, 18, 27, 27, 27, 27, 27, 32.78457 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78458 + 27, 27, 27, 27, 27, 27, 26, 7, 14, 201, 255, 255, 255, 255, 255, 255, 32.78459 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78460 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78461 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78462 + 255, 255, 192, 0, 152, 87, 5, 206, 183, 0, 176, 234, 95, 0, 5, 23, 32.78463 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78464 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 7, 4, 201, 255, 255, 255, 32.78465 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78466 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78467 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78468 + 255, 255, 255, 255, 255, 255, 219, 15, 5, 18, 158, 255, 254, 71, 79, 232, 32.78469 + 201, 12, 3, 1, 9, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78470 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 26, 11, 13, 191, 32.78471 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78472 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78473 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78474 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78475 + 255, 188, 1, 54, 8, 45, 224, 61, 1, 0, 14, 24, 27, 27, 27, 27, 32.78476 + 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 23, 11, 32.78477 + 1, 7, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78478 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78479 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78480 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78481 + 255, 255, 255, 255, 255, 255, 138, 98, 120, 229, 255, 234, 129, 13, 0, 3, 32.78482 + 12, 26, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78483 + 27, 13, 2, 21, 117, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78484 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78485 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78486 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78487 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78488 + 254, 250, 215, 115, 16, 6, 21, 27, 27, 27, 27, 27, 27, 27, 27, 27, 32.78489 + 27, 27, 23, 18, 4, 12, 104, 241, 255, 255, 255, 255, 255, 255, 255, 255, 32.78490 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78491 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78492 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78493 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78494 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 38, 1, 11, 21, 27, 27, 27, 32.78495 + 27, 27, 24, 17, 16, 6, 1, 0, 60, 210, 255, 255, 255, 255, 255, 255, 32.78496 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78497 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78498 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78499 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78500 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 130, 26, 32.78501 + 0, 1, 1, 1, 1, 1, 1, 16, 31, 78, 142, 239, 250, 255, 255, 255, 32.78502 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78503 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78504 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78505 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78506 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78507 + 255, 255, 255, 244, 172, 89, 89, 89, 180, 182, 182, 220, 255, 255, 255, 255, 32.78508 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78509 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78510 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78511 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78512 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78513 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78514 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78515 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78516 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78517 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78518 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78519 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78520 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78521 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78522 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78523 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78524 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78525 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78526 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78527 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78528 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78529 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78530 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78531 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78532 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78533 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78534 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78535 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78536 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78537 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78538 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78539 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78540 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78541 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78542 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78543 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78544 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78545 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78546 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78547 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78548 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78549 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78550 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78551 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78552 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78553 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78554 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78555 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78556 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78557 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78558 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78559 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78560 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78561 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78562 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78563 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78564 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78565 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78566 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78567 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78568 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78569 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78570 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78571 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78572 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78573 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78574 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78575 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78576 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78577 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78578 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78579 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78580 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 32.78581 + 149, 49, 31, 79, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78582 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78583 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78584 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78585 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78586 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78587 + 255, 194, 166, 70, 1, 8, 10, 14, 255, 255, 255, 255, 255, 255, 255, 255, 32.78588 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78589 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78590 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78591 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78592 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78593 + 255, 255, 249, 144, 41, 1, 0, 7, 19, 23, 5, 14, 255, 255, 255, 255, 32.78594 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78595 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78596 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78597 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78598 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78599 + 255, 255, 255, 255, 255, 255, 241, 0, 5, 21, 26, 23, 11, 0, 6, 5, 32.78600 + 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78601 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78602 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78603 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78604 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78605 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 252, 93, 5, 10, 2, 0, 32.78606 + 1, 26, 44, 9, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78607 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78608 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78609 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78610 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78611 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 32.78612 + 0, 3, 16, 35, 40, 46, 47, 14, 94, 255, 255, 255, 255, 255, 255, 255, 32.78613 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78614 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78615 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78616 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78617 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78618 + 255, 255, 255, 254, 63, 11, 30, 37, 47, 47, 47, 28, 92, 255, 255, 255, 32.78619 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78620 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78621 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78622 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78623 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78624 + 255, 255, 255, 255, 255, 255, 255, 255, 177, 1, 28, 33, 47, 47, 47, 28, 32.78625 + 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78626 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78627 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78628 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78629 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78630 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 20, 31, 32.78631 + 45, 47, 47, 28, 65, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78632 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78633 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78634 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78635 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78636 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78637 + 255, 85, 12, 30, 41, 47, 47, 36, 4, 255, 255, 255, 255, 255, 255, 255, 32.78638 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78639 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78640 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78641 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78642 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78643 + 255, 255, 255, 255, 255, 153, 7, 30, 38, 47, 47, 44, 4, 255, 255, 255, 32.78644 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78645 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78646 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78647 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78648 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78649 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 4, 28, 33, 47, 47, 44, 32.78650 + 2, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78651 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78652 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78653 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78654 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78655 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 10, 24, 32.78656 + 31, 45, 47, 46, 8, 171, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78657 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78658 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78659 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78660 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78661 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78662 + 255, 255, 51, 16, 30, 44, 47, 47, 13, 99, 255, 255, 255, 255, 255, 255, 32.78663 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78664 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78665 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78666 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78667 + 255, 255, 255, 255, 255, 255, 255, 255, 235, 208, 208, 208, 208, 211, 212, 164, 32.78668 + 118, 118, 118, 119, 240, 255, 104, 6, 30, 38, 47, 47, 23, 82, 255, 255, 32.78669 + 255, 255, 255, 255, 255, 255, 223, 177, 104, 81, 0, 0, 0, 0, 0, 0, 32.78670 + 0, 0, 0, 0, 86, 104, 182, 209, 255, 255, 255, 255, 255, 255, 255, 255, 32.78671 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78672 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78673 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 176, 114, 35, 4, 4, 8, 32.78674 + 16, 22, 24, 24, 24, 24, 24, 24, 88, 252, 172, 6, 30, 35, 47, 47, 32.78675 + 29, 18, 250, 255, 255, 255, 242, 161, 119, 57, 18, 0, 0, 1, 2, 3, 32.78676 + 3, 3, 3, 3, 3, 3, 3, 2, 1, 0, 0, 1, 57, 160, 218, 255, 32.78677 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78678 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78679 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 159, 25, 5, 3, 32.78680 + 3, 1, 4, 0, 0, 0, 0, 0, 0, 5, 11, 20, 24, 172, 192, 2, 32.78681 + 27, 32, 47, 47, 115, 36, 250, 245, 160, 96, 9, 0, 0, 1, 2, 3, 32.78682 + 3, 4, 4, 4, 4, 8, 22, 27, 63, 63, 63, 61, 59, 40, 18, 11, 32.78683 + 1, 0, 6, 105, 169, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78684 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78685 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 140, 6, 32.78686 + 4, 2, 1, 0, 0, 3, 7, 14, 17, 17, 17, 17, 16, 7, 2, 0, 32.78687 + 6, 49, 134, 18, 22, 32, 47, 47, 69, 255, 143, 50, 0, 1, 2, 3, 32.78688 + 4, 4, 4, 4, 4, 4, 4, 4, 15, 71, 97, 104, 104, 104, 104, 104, 32.78689 + 104, 104, 104, 94, 63, 26, 1, 1, 0, 48, 209, 255, 255, 255, 255, 255, 32.78690 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78691 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78692 + 244, 156, 3, 2, 0, 0, 0, 4, 20, 22, 24, 24, 24, 24, 24, 24, 32.78693 + 24, 24, 22, 15, 5, 0, 5, 2, 21, 50, 47, 47, 38, 55, 0, 1, 32.78694 + 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 20, 89, 104, 104, 104, 32.78695 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 101, 71, 29, 3, 0, 9, 28, 32.78696 + 164, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78697 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78698 + 255, 255, 255, 224, 77, 3, 1, 1, 9, 16, 17, 20, 24, 24, 24, 24, 32.78699 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 8, 1, 0, 0, 32, 44, 29, 32.78700 + 4, 0, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 13, 83, 32.78701 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 97, 32.78702 + 51, 8, 21, 92, 2, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78703 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78704 + 255, 255, 255, 255, 255, 255, 235, 80, 3, 0, 1, 17, 24, 24, 24, 24, 32.78705 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 14, 4, 4, 3, 32.78706 + 1, 0, 4, 1, 16, 16, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78707 + 4, 4, 70, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 32.78708 + 104, 104, 104, 104, 104, 73, 18, 75, 70, 10, 201, 254, 255, 255, 255, 255, 32.78709 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78710 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 228, 50, 1, 0, 7, 24, 24, 32.78711 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 21, 19, 15, 10, 10, 32.78712 + 4, 4, 4, 4, 4, 2, 3, 31, 42, 8, 4, 4, 4, 4, 4, 4, 32.78713 + 4, 4, 4, 4, 4, 26, 99, 104, 104, 104, 104, 104, 104, 104, 104, 104, 32.78714 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 88, 28, 34, 1, 0, 147, 32.78715 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78716 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 68, 1, 1, 32.78717 + 14, 22, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 18, 10, 5, 32.78718 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 11, 8, 4, 4, 4, 32.78719 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 60, 104, 104, 104, 104, 104, 104, 32.78720 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 94, 32.78721 + 45, 4, 1, 0, 61, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78722 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78723 + 98, 1, 0, 16, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78724 + 19, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78725 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 60, 104, 104, 32.78726 + 104, 104, 104, 104, 90, 83, 63, 68, 85, 94, 104, 104, 104, 104, 104, 104, 32.78727 + 104, 104, 104, 104, 104, 64, 4, 29, 8, 106, 246, 255, 255, 255, 255, 255, 32.78728 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78729 + 255, 255, 255, 174, 8, 0, 12, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78730 + 24, 24, 24, 24, 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78731 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78732 + 4, 60, 104, 104, 104, 104, 104, 64, 11, 4, 4, 5, 9, 18, 47, 94, 32.78733 + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 45, 4, 2, 0, 145, 255, 32.78734 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78735 + 255, 255, 255, 255, 255, 255, 255, 59, 0, 9, 23, 24, 24, 24, 24, 24, 32.78736 + 24, 24, 24, 24, 24, 24, 24, 22, 4, 4, 4, 4, 4, 4, 4, 4, 32.78737 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78738 + 4, 4, 4, 4, 4, 36, 101, 104, 104, 104, 96, 17, 4, 4, 4, 4, 32.78739 + 4, 4, 4, 13, 41, 98, 104, 104, 104, 104, 104, 104, 104, 104, 103, 33, 32.78740 + 4, 1, 0, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78741 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 14, 1, 21, 24, 24, 32.78742 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 17, 4, 4, 4, 4, 32.78743 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78744 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 52, 104, 104, 101, 31, 4, 32.78745 + 4, 4, 4, 4, 4, 4, 4, 4, 5, 20, 88, 104, 104, 104, 104, 104, 32.78746 + 104, 104, 104, 97, 22, 4, 1, 40, 234, 255, 255, 255, 255, 255, 255, 255, 32.78747 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 0, 32.78748 + 9, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 17, 32.78749 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78750 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 10, 32.78751 + 10, 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 7, 56, 32.78752 + 102, 104, 104, 104, 104, 104, 104, 104, 91, 14, 3, 0, 63, 246, 255, 255, 32.78753 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78754 + 255, 255, 100, 0, 18, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78755 + 24, 24, 24, 22, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78756 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78757 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78758 + 4, 4, 4, 4, 56, 104, 104, 104, 104, 104, 104, 104, 104, 81, 8, 3, 32.78759 + 0, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78760 + 255, 255, 255, 255, 255, 213, 22, 5, 23, 24, 24, 24, 24, 24, 24, 24, 32.78761 + 24, 24, 24, 24, 24, 24, 24, 24, 7, 4, 4, 4, 4, 4, 4, 4, 32.78762 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78763 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78764 + 4, 4, 4, 4, 4, 4, 4, 4, 5, 40, 102, 104, 104, 104, 104, 104, 32.78765 + 104, 104, 36, 4, 2, 13, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78766 + 255, 255, 255, 255, 255, 255, 255, 255, 233, 49, 3, 13, 24, 24, 24, 24, 32.78767 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 13, 4, 4, 4, 32.78768 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78769 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78770 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 51, 104, 32.78771 + 104, 104, 104, 104, 104, 104, 81, 9, 3, 0, 116, 255, 255, 255, 255, 255, 32.78772 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 23, 0, 21, 32.78773 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78774 + 20, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78775 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78776 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78777 + 4, 4, 5, 52, 104, 104, 104, 104, 104, 104, 104, 69, 4, 2, 12, 215, 32.78778 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78779 + 174, 16, 1, 22, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78780 + 24, 24, 24, 24, 24, 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78781 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78782 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78783 + 4, 4, 4, 4, 4, 4, 4, 6, 78, 104, 104, 104, 104, 104, 104, 100, 32.78784 + 19, 3, 0, 61, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78785 + 255, 255, 255, 255, 174, 13, 6, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78786 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 15, 4, 4, 4, 4, 4, 4, 32.78787 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78788 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78789 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 12, 91, 104, 104, 32.78790 + 104, 104, 104, 104, 28, 4, 1, 0, 137, 255, 255, 255, 255, 255, 255, 255, 32.78791 + 255, 255, 255, 255, 255, 255, 255, 255, 174, 8, 11, 24, 24, 24, 24, 24, 32.78792 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 22, 6, 4, 32.78793 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78794 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78795 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78796 + 4, 52, 104, 104, 104, 104, 104, 104, 27, 4, 4, 0, 56, 251, 255, 255, 32.78797 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 8, 14, 24, 32.78798 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78799 + 24, 24, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78800 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78801 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78802 + 4, 4, 4, 4, 4, 25, 103, 104, 104, 104, 104, 104, 27, 4, 4, 2, 32.78803 + 0, 202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78804 + 254, 3, 14, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78805 + 24, 24, 24, 24, 24, 24, 22, 6, 4, 4, 4, 4, 4, 4, 4, 4, 32.78806 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78807 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78808 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 98, 104, 104, 104, 104, 104, 32.78809 + 27, 4, 4, 3, 0, 63, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78810 + 255, 255, 255, 255, 254, 0, 20, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78811 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 16, 4, 4, 4, 4, 32.78812 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78813 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78814 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 68, 104, 32.78815 + 104, 104, 104, 104, 27, 4, 4, 4, 1, 17, 233, 255, 255, 255, 255, 255, 32.78816 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 23, 24, 24, 24, 24, 24, 32.78817 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 32.78818 + 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78819 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78820 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78821 + 4, 4, 65, 104, 104, 104, 104, 102, 25, 4, 4, 4, 2, 0, 180, 255, 32.78822 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 23, 24, 32.78823 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78824 + 24, 24, 24, 24, 19, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78825 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78826 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78827 + 4, 4, 4, 4, 4, 4, 13, 90, 104, 104, 104, 59, 4, 4, 4, 4, 32.78828 + 3, 0, 137, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78829 + 254, 0, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78830 + 24, 24, 24, 24, 24, 24, 24, 24, 23, 11, 4, 4, 4, 4, 4, 4, 32.78831 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78832 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78833 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 22, 57, 57, 50, 6, 32.78834 + 4, 4, 4, 4, 4, 1, 59, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78835 + 255, 255, 255, 255, 254, 0, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78836 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 9, 4, 32.78837 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78838 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78839 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78840 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 36, 245, 255, 255, 255, 255, 32.78841 + 255, 255, 255, 255, 255, 255, 255, 255, 254, 0, 23, 24, 24, 24, 24, 24, 32.78842 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78843 + 24, 24, 22, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78844 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78845 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78846 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 0, 178, 32.78847 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 0, 23, 24, 32.78848 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78849 + 24, 24, 24, 24, 24, 24, 24, 18, 6, 4, 4, 4, 4, 4, 4, 4, 32.78850 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78851 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78852 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 32.78853 + 8, 8, 0, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78854 + 174, 0, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78855 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 22, 7, 4, 4, 32.78856 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78857 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78858 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78859 + 4, 4, 6, 22, 24, 24, 6, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.78860 + 255, 255, 255, 255, 174, 0, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78861 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78862 + 24, 21, 10, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78863 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78864 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78865 + 4, 4, 4, 4, 4, 4, 21, 24, 24, 24, 11, 81, 255, 255, 255, 255, 32.78866 + 255, 255, 255, 255, 255, 255, 255, 255, 174, 0, 16, 24, 24, 24, 24, 24, 32.78867 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78868 + 24, 24, 24, 24, 24, 24, 24, 21, 13, 4, 4, 4, 4, 4, 4, 4, 32.78869 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78870 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78871 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 7, 24, 24, 24, 24, 11, 47, 32.78872 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 7, 14, 24, 32.78873 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78874 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 16, 8, 4, 32.78875 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78876 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78877 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 12, 24, 24, 32.78878 + 24, 24, 11, 47, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78879 + 174, 8, 14, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78880 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78881 + 24, 24, 24, 19, 12, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78882 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78883 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78884 + 4, 18, 24, 24, 24, 24, 11, 47, 255, 255, 255, 255, 255, 255, 255, 255, 32.78885 + 255, 255, 255, 255, 174, 8, 14, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78886 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78887 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 19, 4, 4, 4, 4, 4, 4, 32.78888 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78889 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78890 + 4, 4, 4, 4, 5, 23, 24, 24, 24, 24, 11, 118, 255, 255, 255, 255, 32.78891 + 255, 255, 255, 255, 255, 255, 255, 255, 174, 10, 6, 24, 24, 24, 24, 24, 32.78892 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78893 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 15, 4, 32.78894 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78895 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78896 + 4, 4, 4, 4, 4, 4, 4, 4, 14, 24, 24, 24, 24, 24, 11, 127, 32.78897 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 174, 16, 6, 23, 32.78898 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78899 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78900 + 24, 24, 18, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78901 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78902 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 23, 24, 24, 24, 32.78903 + 24, 24, 11, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78904 + 192, 18, 0, 22, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78905 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78906 + 24, 24, 24, 24, 24, 24, 18, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78907 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78908 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 14, 32.78909 + 24, 24, 24, 24, 24, 24, 11, 127, 255, 255, 255, 255, 255, 255, 255, 255, 32.78910 + 255, 255, 255, 255, 254, 24, 0, 18, 24, 24, 24, 24, 24, 24, 24, 24, 32.78911 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78912 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 20, 4, 4, 4, 4, 4, 32.78913 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78914 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78915 + 4, 4, 9, 23, 24, 24, 24, 24, 24, 24, 7, 127, 255, 255, 255, 255, 32.78916 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 5, 9, 24, 24, 24, 24, 32.78917 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78918 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 6, 32.78919 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78920 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78921 + 4, 4, 4, 4, 4, 4, 21, 24, 24, 24, 24, 24, 24, 22, 2, 179, 32.78922 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 209, 18, 5, 32.78923 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78924 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78925 + 24, 24, 24, 12, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78926 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78927 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 15, 24, 24, 24, 24, 24, 24, 32.78928 + 24, 18, 17, 229, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78929 + 255, 255, 37, 0, 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78930 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78931 + 24, 24, 24, 24, 24, 24, 24, 19, 5, 4, 4, 4, 4, 4, 4, 4, 32.78932 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78933 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 16, 23, 24, 24, 32.78934 + 24, 24, 24, 24, 24, 10, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78935 + 255, 255, 255, 255, 255, 255, 138, 1, 15, 24, 24, 24, 24, 24, 24, 24, 32.78936 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78937 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 19, 4, 4, 4, 32.78938 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78939 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 16, 32.78940 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 10, 82, 255, 255, 255, 255, 255, 32.78941 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 249, 65, 8, 24, 24, 24, 32.78942 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78943 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78944 + 24, 16, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78945 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78946 + 4, 4, 10, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 2, 137, 255, 32.78947 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 32.78948 + 1, 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78949 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78950 + 24, 24, 24, 24, 24, 24, 14, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78951 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78952 + 4, 4, 4, 4, 4, 5, 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78953 + 22, 1, 145, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78954 + 255, 255, 255, 247, 24, 16, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78955 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78956 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 17, 4, 4, 4, 4, 32.78957 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78958 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 19, 24, 24, 24, 24, 24, 24, 32.78959 + 24, 24, 24, 24, 13, 5, 185, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78960 + 255, 255, 255, 255, 255, 255, 255, 255, 85, 6, 23, 24, 24, 24, 24, 24, 32.78961 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78962 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78963 + 21, 13, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78964 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 16, 24, 24, 24, 32.78965 + 24, 24, 24, 24, 24, 24, 24, 24, 9, 83, 255, 255, 255, 255, 255, 255, 32.78966 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 155, 0, 13, 24, 32.78967 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78968 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78969 + 24, 24, 24, 24, 24, 23, 18, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78970 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 15, 32.78971 + 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 20, 1, 148, 255, 255, 32.78972 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78973 + 255, 91, 4, 19, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78974 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78975 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 21, 14, 5, 4, 4, 32.78976 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78977 + 4, 13, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 11, 32.78978 + 16, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78979 + 255, 255, 255, 255, 255, 212, 52, 2, 21, 24, 24, 24, 24, 24, 24, 24, 32.78980 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78981 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78982 + 24, 19, 11, 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 32.78983 + 4, 4, 6, 13, 20, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78984 + 24, 24, 20, 1, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78985 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 32, 11, 24, 24, 24, 32.78986 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78987 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78988 + 24, 24, 24, 24, 24, 24, 24, 23, 19, 12, 6, 4, 4, 4, 4, 4, 32.78989 + 4, 4, 4, 4, 7, 15, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78990 + 24, 24, 24, 24, 24, 24, 11, 44, 248, 255, 255, 255, 255, 255, 255, 255, 32.78991 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 32.78992 + 0, 9, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78993 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78994 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 22, 19, 32.78995 + 19, 19, 19, 19, 19, 19, 19, 19, 24, 24, 24, 24, 24, 24, 24, 24, 32.78996 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 7, 144, 255, 255, 255, 255, 32.78997 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.78998 + 255, 255, 255, 253, 156, 0, 18, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.78999 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79000 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79001 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79002 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 22, 0, 176, 32.79003 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79004 + 255, 255, 255, 255, 255, 255, 255, 255, 251, 81, 2, 14, 24, 24, 24, 24, 32.79005 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79006 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79007 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79008 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79009 + 24, 8, 26, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79010 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 92, 1, 32.79011 + 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79012 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79013 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79014 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79015 + 24, 24, 24, 24, 18, 1, 173, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79016 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79017 + 255, 255, 255, 31, 1, 17, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79018 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79019 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79020 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79021 + 24, 24, 24, 24, 24, 24, 24, 20, 4, 68, 255, 255, 255, 255, 255, 255, 32.79022 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79023 + 255, 255, 255, 255, 255, 255, 255, 203, 12, 0, 16, 24, 24, 24, 24, 24, 32.79024 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79025 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79026 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79027 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 22, 40, 47, 203, 255, 255, 32.79028 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79029 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 141, 7, 1, 17, 32.79030 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79031 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79032 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79033 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 7, 6, 32.79034 + 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79035 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79036 + 255, 101, 1, 0, 8, 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79037 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79038 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79039 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79040 + 22, 8, 0, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79041 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79042 + 255, 255, 255, 255, 255, 255, 167, 61, 0, 0, 16, 24, 24, 24, 24, 24, 32.79043 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79044 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79045 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79046 + 24, 24, 24, 23, 6, 8, 149, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79047 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79048 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 247, 118, 25, 0, 5, 32.79049 + 11, 20, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79050 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79051 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79052 + 24, 24, 24, 24, 24, 24, 24, 9, 0, 148, 255, 255, 255, 255, 255, 255, 32.79053 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79054 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79055 + 255, 247, 171, 107, 26, 0, 6, 11, 13, 20, 20, 24, 24, 24, 24, 24, 32.79056 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79057 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79058 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 13, 0, 116, 253, 255, 255, 32.79059 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79060 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79061 + 255, 255, 255, 255, 255, 255, 255, 255, 236, 162, 83, 11, 0, 0, 0, 6, 32.79062 + 16, 6, 6, 6, 6, 6, 6, 6, 13, 16, 16, 23, 24, 24, 24, 24, 32.79063 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79064 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 21, 5, 78, 32.79065 + 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79066 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79067 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 32.79068 + 234, 234, 156, 56, 26, 55, 130, 64, 16, 0, 0, 0, 0, 3, 0, 7, 32.79069 + 21, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79070 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79071 + 22, 4, 16, 201, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79072 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79073 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79074 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 1, 6, 14, 0, 32.79075 + 0, 26, 27, 0, 4, 19, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79076 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79077 + 24, 24, 24, 21, 7, 24, 226, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79078 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79079 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79080 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 225, 13, 32.79081 + 22, 43, 11, 54, 52, 14, 46, 25, 0, 1, 16, 24, 24, 24, 24, 24, 32.79082 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79083 + 24, 24, 24, 24, 24, 24, 23, 6, 14, 201, 255, 255, 255, 255, 255, 255, 32.79084 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79085 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79086 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79087 + 255, 255, 192, 0, 30, 17, 5, 206, 183, 0, 35, 47, 19, 0, 5, 20, 32.79088 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79089 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 6, 4, 201, 255, 255, 255, 32.79090 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79091 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79092 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79093 + 255, 255, 255, 255, 255, 255, 219, 15, 5, 18, 158, 255, 254, 71, 15, 46, 32.79094 + 40, 2, 3, 1, 8, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79095 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 23, 9, 13, 191, 32.79096 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79097 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79098 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79099 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79100 + 255, 188, 1, 10, 1, 45, 224, 59, 1, 0, 12, 22, 24, 24, 24, 24, 32.79101 + 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 21, 10, 32.79102 + 1, 7, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79103 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79104 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79105 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79106 + 255, 255, 255, 255, 255, 255, 138, 98, 120, 229, 255, 234, 128, 11, 0, 3, 32.79107 + 10, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79108 + 24, 11, 1, 21, 117, 210, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79109 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79110 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79111 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79112 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79113 + 254, 250, 215, 115, 16, 5, 19, 24, 24, 24, 24, 24, 24, 24, 24, 24, 32.79114 + 24, 24, 21, 16, 3, 12, 104, 241, 255, 255, 255, 255, 255, 255, 255, 255, 32.79115 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79116 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79117 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79118 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79119 + 255, 255, 255, 255, 255, 255, 255, 255, 191, 38, 1, 10, 19, 24, 24, 24, 32.79120 + 24, 24, 22, 15, 14, 5, 1, 0, 60, 210, 255, 255, 255, 255, 255, 255, 32.79121 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79122 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79123 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79124 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79125 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 130, 26, 32.79126 + 0, 1, 1, 1, 1, 1, 1, 16, 31, 78, 142, 239, 250, 255, 255, 255, 32.79127 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79128 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79129 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79130 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79131 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79132 + 255, 255, 255, 244, 172, 87, 87, 87, 180, 182, 182, 220, 255, 255, 255, 255, 32.79133 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79134 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79135 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79136 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79137 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79138 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79139 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79140 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79141 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79142 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79143 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79144 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79145 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79146 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79147 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79148 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79149 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79150 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79151 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79152 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79153 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79154 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79155 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79156 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79157 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79158 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79159 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79160 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79161 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79162 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79163 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79164 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32.79165 + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 };
33.1 Binary file PTdecode/CImg-1.3.0/examples/img/parrot_mask.pgm has changed
34.1 Binary file PTdecode/CImg-1.3.0/examples/img/parrot_original.ppm has changed
35.1 Binary file PTdecode/CImg-1.3.0/examples/img/sh0r.pgm has changed
36.1 Binary file PTdecode/CImg-1.3.0/examples/img/sh1r.pgm has changed
37.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 37.2 +++ b/PTdecode/CImg-1.3.0/examples/img/tetris.h Mon Aug 03 14:09:20 2009 +0100 37.3 @@ -0,0 +1,2313 @@ 37.4 +/*------------------------------------------------------------ 37.5 + 37.6 + Define hard-coded color image used in the 'tetris.cpp' 37.7 + example file, so that the corresponding executable does not 37.8 + depend on additional data files. 37.9 + 37.10 +--------------------------------------------------------------*/ 37.11 + 37.12 +const unsigned char data_logo[] = { 37.13 + 45, 45, 46, 47, 48, 49, 50, 49, 48, 48, 49, 50, 52, 53, 55, 56, 37.14 + 59, 62, 64, 65, 64, 64, 66, 66, 65, 66, 72, 76, 78, 80, 77, 74, 37.15 + 83, 84, 79, 78, 82, 85, 91, 97, 85, 92, 90, 95, 97, 97, 93, 88, 37.16 + 95, 87, 85, 88, 88, 85, 82, 81, 83, 77, 74, 81, 81, 78, 73, 69, 37.17 + 67, 65, 63, 65, 66, 65, 65, 65, 64, 61, 59, 56, 54, 53, 52, 52, 37.18 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.19 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.20 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 30, 29, 30, 29, 29, 30, 37.21 + 45, 45, 46, 47, 48, 49, 50, 49, 48, 49, 49, 50, 52, 54, 56, 57, 37.22 + 59, 61, 63, 64, 65, 65, 67, 67, 67, 67, 71, 75, 78, 81, 79, 76, 37.23 + 83, 87, 83, 82, 84, 88, 94, 100, 91, 95, 94, 98, 100, 100, 96, 92, 37.24 + 99, 91, 90, 91, 89, 85, 84, 83, 83, 78, 77, 82, 82, 78, 73, 69, 37.25 + 68, 66, 66, 67, 66, 65, 65, 65, 64, 61, 59, 56, 54, 53, 52, 52, 37.26 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.27 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.28 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 30, 30, 30, 30, 29, 30, 37.29 + 45, 45, 46, 47, 48, 49, 50, 49, 49, 49, 50, 51, 53, 55, 56, 58, 37.30 + 59, 61, 63, 64, 66, 67, 69, 70, 70, 70, 71, 74, 79, 82, 83, 79, 37.31 + 83, 90, 88, 86, 86, 89, 96, 103, 97, 98, 100, 102, 103, 103, 100, 97, 37.32 + 103, 95, 95, 95, 91, 86, 88, 86, 82, 80, 82, 84, 82, 77, 73, 70, 37.33 + 69, 69, 69, 68, 67, 66, 65, 65, 63, 60, 58, 56, 54, 53, 52, 52, 37.34 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.35 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.36 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 30, 30, 31, 30, 29, 30, 37.37 + 45, 45, 46, 47, 48, 49, 50, 49, 49, 49, 50, 52, 54, 56, 57, 59, 37.38 + 60, 62, 64, 65, 67, 69, 71, 72, 72, 72, 72, 74, 79, 83, 85, 83, 37.39 + 83, 90, 92, 89, 87, 90, 97, 105, 102, 99, 103, 104, 105, 105, 101, 101, 37.40 + 105, 97, 98, 98, 93, 88, 91, 89, 84, 83, 86, 86, 81, 76, 73, 71, 37.41 + 71, 72, 72, 71, 69, 67, 66, 64, 63, 60, 58, 56, 54, 53, 52, 52, 37.42 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.43 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.44 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 31, 31, 31, 31, 30, 30, 37.45 + 45, 45, 46, 47, 48, 49, 50, 49, 50, 50, 51, 52, 55, 56, 58, 60, 37.46 + 62, 64, 66, 67, 68, 70, 73, 74, 75, 77, 76, 76, 80, 84, 88, 89, 37.47 + 86, 91, 96, 94, 90, 93, 101, 106, 107, 100, 108, 107, 109, 109, 105, 106, 37.48 + 108, 100, 103, 100, 96, 92, 95, 91, 87, 88, 89, 86, 80, 76, 75, 75, 37.49 + 74, 74, 74, 72, 70, 68, 66, 64, 62, 59, 57, 56, 54, 53, 52, 52, 37.50 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.51 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.52 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 31, 31, 32, 31, 30, 30, 37.53 + 45, 45, 46, 47, 48, 49, 50, 50, 50, 51, 52, 52, 56, 57, 59, 61, 37.54 + 65, 66, 68, 68, 69, 72, 74, 75, 77, 80, 80, 79, 79, 84, 90, 96, 37.55 + 92, 92, 101, 101, 95, 98, 106, 111, 114, 105, 114, 113, 116, 116, 112, 112, 37.56 + 111, 103, 107, 100, 98, 95, 96, 92, 89, 93, 88, 83, 79, 75, 77, 79, 37.57 + 78, 76, 75, 74, 72, 69, 66, 64, 62, 59, 57, 56, 54, 53, 52, 52, 37.58 + 52, 51, 51, 49, 48, 47, 46, 45, 44, 43, 43, 43, 42, 41, 41, 41, 37.59 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 33, 33, 33, 37.60 + 33, 33, 33, 31, 29, 29, 30, 32, 32, 32, 31, 32, 32, 32, 30, 30, 37.61 + 45, 45, 46, 47, 48, 49, 50, 50, 50, 51, 52, 53, 57, 58, 60, 62, 37.62 + 65, 67, 69, 70, 70, 73, 75, 77, 79, 82, 84, 83, 83, 85, 91, 98, 37.63 + 97, 94, 101, 107, 99, 100, 109, 113, 119, 110, 117, 118, 120, 121, 115, 118, 37.64 + 113, 108, 110, 103, 99, 100, 99, 93, 94, 96, 88, 81, 79, 77, 79, 81, 37.65 + 80, 78, 76, 74, 71, 68, 65, 63, 61, 59, 57, 56, 55, 54, 52, 53, 37.66 + 52, 52, 51, 49, 49, 48, 47, 46, 45, 44, 43, 43, 42, 41, 41, 41, 37.67 + 40, 39, 39, 39, 38, 37, 36, 36, 36, 36, 35, 35, 34, 34, 33, 33, 37.68 + 33, 33, 32, 31, 30, 29, 31, 32, 32, 32, 32, 33, 33, 33, 31, 30, 37.69 + 45, 45, 46, 47, 48, 49, 50, 50, 51, 52, 53, 55, 57, 59, 63, 65, 37.70 + 67, 70, 71, 73, 74, 75, 78, 79, 82, 85, 89, 91, 89, 87, 92, 96, 37.71 + 101, 98, 98, 110, 106, 102, 110, 114, 124, 117, 121, 124, 124, 126, 118, 124, 37.72 + 115, 116, 112, 107, 103, 107, 102, 96, 102, 97, 86, 80, 81, 82, 81, 83, 37.73 + 82, 80, 78, 73, 70, 66, 63, 62, 61, 59, 58, 57, 56, 54, 53, 53, 37.74 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 44, 43, 42, 41, 41, 41, 37.75 + 40, 40, 39, 39, 38, 37, 37, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.76 + 33, 33, 32, 31, 31, 31, 32, 34, 33, 32, 32, 34, 34, 34, 32, 31, 37.77 + 45, 45, 46, 47, 49, 49, 50, 50, 51, 52, 54, 56, 58, 61, 64, 67, 37.78 + 70, 73, 75, 77, 78, 79, 82, 83, 84, 89, 93, 95, 93, 93, 94, 96, 37.79 + 102, 105, 102, 108, 117, 109, 109, 118, 127, 123, 125, 128, 129, 130, 122, 129, 37.80 + 119, 122, 116, 109, 113, 112, 104, 105, 106, 95, 85, 82, 83, 85, 85, 86, 37.81 + 84, 80, 77, 73, 70, 66, 63, 63, 61, 59, 58, 57, 56, 54, 53, 53, 37.82 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 44, 43, 42, 41, 41, 41, 37.83 + 41, 40, 39, 39, 38, 37, 37, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.84 + 33, 33, 32, 31, 31, 31, 32, 34, 33, 32, 32, 34, 34, 34, 32, 31, 37.85 + 45, 46, 47, 48, 49, 50, 51, 50, 52, 53, 56, 58, 60, 63, 68, 70, 37.86 + 73, 75, 79, 81, 81, 83, 86, 87, 88, 92, 97, 100, 100, 102, 99, 97, 37.87 + 102, 112, 111, 107, 122, 118, 111, 121, 131, 132, 131, 134, 135, 135, 128, 135, 37.88 + 124, 129, 121, 113, 120, 114, 109, 113, 106, 93, 86, 87, 89, 90, 89, 89, 37.89 + 86, 80, 76, 72, 69, 67, 64, 63, 62, 60, 59, 57, 56, 54, 53, 53, 37.90 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 44, 44, 43, 42, 42, 42, 37.91 + 41, 40, 40, 40, 39, 38, 37, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.92 + 33, 33, 32, 31, 31, 31, 33, 34, 33, 32, 32, 34, 34, 34, 32, 31, 37.93 + 46, 47, 47, 48, 50, 50, 51, 51, 52, 54, 58, 60, 62, 66, 71, 74, 37.94 + 75, 78, 82, 84, 85, 86, 88, 90, 89, 93, 97, 101, 105, 107, 106, 102, 37.95 + 103, 115, 121, 112, 121, 128, 119, 123, 134, 141, 137, 141, 143, 142, 136, 141, 37.96 + 131, 134, 122, 119, 122, 115, 119, 116, 101, 94, 92, 94, 95, 93, 91, 89, 37.97 + 85, 79, 74, 71, 69, 67, 65, 64, 63, 61, 59, 57, 56, 54, 53, 53, 37.98 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 45, 44, 44, 43, 42, 43, 37.99 + 42, 41, 41, 40, 39, 38, 38, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.100 + 33, 33, 32, 32, 32, 32, 33, 34, 33, 32, 32, 34, 34, 34, 32, 31, 37.101 + 46, 47, 48, 49, 50, 51, 52, 51, 53, 55, 59, 61, 64, 68, 74, 77, 37.102 + 78, 81, 86, 88, 89, 91, 92, 94, 95, 97, 100, 103, 108, 112, 113, 111, 37.103 + 107, 114, 125, 123, 123, 135, 132, 127, 138, 150, 142, 149, 152, 150, 144, 148, 37.104 + 140, 137, 125, 129, 124, 124, 127, 114, 100, 98, 101, 101, 99, 95, 90, 86, 37.105 + 83, 78, 73, 70, 69, 67, 65, 64, 63, 61, 60, 57, 56, 54, 53, 53, 37.106 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 45, 45, 44, 43, 43, 43, 37.107 + 42, 42, 41, 41, 40, 39, 38, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.108 + 33, 33, 32, 32, 32, 32, 33, 34, 33, 32, 32, 34, 34, 34, 32, 31, 37.109 + 47, 47, 48, 49, 50, 50, 51, 51, 52, 55, 60, 62, 65, 70, 75, 79, 37.110 + 80, 83, 89, 91, 91, 94, 96, 98, 100, 101, 103, 105, 109, 113, 117, 117, 37.111 + 110, 111, 124, 134, 128, 137, 142, 130, 141, 156, 147, 155, 159, 155, 150, 153, 37.112 + 148, 140, 128, 137, 128, 134, 131, 112, 102, 102, 107, 105, 102, 96, 89, 84, 37.113 + 81, 77, 73, 70, 68, 67, 66, 65, 63, 61, 60, 57, 56, 54, 53, 53, 37.114 + 53, 53, 52, 51, 50, 48, 47, 46, 46, 45, 45, 45, 44, 43, 43, 43, 37.115 + 43, 42, 41, 41, 40, 39, 38, 37, 37, 36, 36, 36, 35, 34, 33, 33, 37.116 + 33, 33, 33, 33, 33, 33, 33, 34, 33, 31, 32, 34, 34, 34, 32, 31, 37.117 + 47, 48, 48, 49, 48, 49, 51, 51, 52, 56, 61, 65, 69, 73, 77, 80, 37.118 + 78, 83, 90, 88, 89, 95, 102, 99, 102, 104, 109, 111, 108, 114, 115, 112, 37.119 + 114, 117, 125, 134, 135, 128, 150, 129, 142, 160, 157, 160, 164, 156, 156, 153, 37.120 + 151, 142, 137, 139, 137, 139, 125, 112, 114, 115, 113, 111, 103, 95, 88, 83, 37.121 + 81, 77, 74, 71, 69, 66, 65, 65, 64, 62, 61, 58, 57, 55, 54, 51, 37.122 + 51, 50, 49, 48, 47, 46, 45, 45, 46, 45, 45, 44, 44, 43, 42, 43, 37.123 + 42, 42, 41, 42, 42, 42, 41, 40, 39, 38, 38, 37, 36, 35, 35, 35, 37.124 + 35, 34, 34, 35, 34, 34, 32, 31, 31, 30, 32, 33, 33, 34, 32, 31, 37.125 + 47, 48, 48, 49, 47, 48, 51, 51, 53, 57, 63, 66, 73, 77, 80, 82, 37.126 + 79, 84, 87, 92, 97, 95, 97, 103, 104, 107, 109, 114, 116, 105, 114, 122, 37.127 + 120, 127, 124, 128, 143, 129, 148, 145, 137, 167, 167, 173, 175, 166, 165, 156, 37.128 + 153, 137, 148, 149, 149, 134, 115, 116, 125, 125, 116, 110, 102, 95, 88, 84, 37.129 + 81, 78, 75, 72, 70, 67, 65, 64, 63, 61, 60, 58, 57, 55, 54, 52, 37.130 + 51, 50, 50, 48, 47, 46, 46, 46, 46, 46, 46, 44, 44, 43, 42, 43, 37.131 + 43, 42, 41, 42, 42, 42, 42, 41, 40, 39, 38, 37, 37, 36, 35, 35, 37.132 + 35, 34, 34, 35, 34, 33, 31, 29, 29, 29, 31, 33, 33, 34, 32, 31, 37.133 + 47, 48, 48, 49, 47, 49, 52, 52, 56, 59, 65, 69, 76, 81, 83, 88, 37.134 + 90, 93, 92, 100, 101, 107, 110, 116, 113, 119, 124, 122, 121, 125, 122, 119, 37.135 + 127, 145, 143, 134, 143, 144, 151, 167, 152, 177, 177, 183, 185, 179, 176, 163, 37.136 + 165, 153, 163, 152, 159, 134, 121, 133, 130, 129, 119, 108, 100, 94, 89, 84, 37.137 + 82, 79, 76, 73, 70, 68, 66, 64, 62, 61, 59, 57, 56, 54, 53, 53, 37.138 + 53, 52, 51, 50, 49, 48, 47, 48, 47, 47, 47, 45, 45, 44, 43, 43, 37.139 + 42, 41, 40, 42, 42, 42, 42, 41, 40, 39, 38, 38, 37, 36, 35, 34, 37.140 + 33, 32, 32, 33, 32, 31, 30, 30, 30, 29, 31, 33, 33, 34, 32, 31, 37.141 + 47, 48, 48, 49, 48, 49, 53, 54, 59, 63, 69, 72, 78, 83, 86, 91, 37.142 + 94, 99, 105, 111, 111, 115, 108, 97, 90, 97, 113, 123, 131, 130, 129, 127, 37.143 + 132, 148, 153, 144, 139, 156, 161, 166, 163, 177, 195, 195, 196, 192, 190, 178, 37.144 + 163, 159, 168, 170, 150, 142, 138, 141, 134, 128, 119, 107, 98, 94, 90, 85, 37.145 + 82, 79, 76, 72, 69, 67, 65, 64, 63, 62, 60, 58, 57, 55, 54, 55, 37.146 + 55, 53, 53, 51, 51, 50, 49, 49, 48, 48, 47, 45, 45, 44, 44, 44, 37.147 + 43, 42, 41, 43, 43, 43, 42, 42, 41, 40, 40, 39, 39, 38, 37, 36, 37.148 + 35, 34, 33, 33, 32, 32, 31, 30, 30, 30, 31, 33, 33, 34, 32, 31, 37.149 + 47, 48, 48, 49, 48, 50, 54, 56, 62, 66, 72, 75, 79, 85, 88, 95, 37.150 + 99, 107, 116, 111, 97, 81, 68, 52, 44, 49, 67, 77, 98, 128, 139, 135, 37.151 + 138, 128, 139, 144, 140, 156, 171, 178, 179, 176, 202, 201, 202, 200, 198, 185, 37.152 + 164, 176, 174, 176, 151, 154, 156, 151, 138, 126, 114, 107, 99, 94, 91, 86, 37.153 + 83, 80, 77, 72, 69, 66, 64, 66, 66, 64, 62, 61, 59, 57, 56, 57, 37.154 + 56, 55, 55, 53, 52, 51, 51, 50, 49, 48, 47, 45, 45, 44, 44, 44, 37.155 + 44, 43, 42, 43, 43, 43, 43, 44, 43, 42, 42, 42, 41, 40, 39, 38, 37.156 + 38, 37, 36, 35, 34, 33, 32, 30, 31, 30, 31, 33, 33, 34, 32, 31, 37.157 + 47, 48, 48, 49, 48, 51, 55, 57, 64, 69, 75, 77, 82, 88, 92, 101, 37.158 + 112, 114, 102, 79, 53, 37, 31, 29, 25, 32, 47, 48, 53, 73, 112, 141, 37.159 + 143, 66, 57, 78, 134, 156, 175, 177, 107, 84, 93, 97, 103, 99, 101, 90, 37.160 + 89, 103, 82, 67, 76, 82, 89, 123, 130, 124, 111, 107, 101, 95, 90, 86, 37.161 + 84, 80, 77, 74, 72, 69, 67, 67, 66, 65, 64, 62, 60, 58, 57, 57, 37.162 + 57, 56, 56, 54, 53, 52, 52, 52, 51, 49, 47, 46, 46, 45, 44, 45, 37.163 + 44, 43, 43, 44, 44, 44, 44, 45, 44, 43, 43, 43, 42, 41, 41, 40, 37.164 + 40, 39, 38, 36, 35, 34, 33, 31, 31, 31, 32, 33, 33, 34, 32, 31, 37.165 + 46, 48, 48, 50, 49, 52, 56, 59, 66, 71, 75, 78, 84, 91, 98, 108, 37.166 + 114, 99, 60, 34, 35, 35, 32, 36, 37, 48, 59, 54, 51, 48, 64, 93, 37.167 + 117, 34, 44, 50, 117, 163, 177, 199, 90, 66, 58, 73, 77, 76, 80, 78, 37.168 + 75, 53, 49, 61, 66, 88, 92, 89, 113, 122, 112, 109, 102, 96, 91, 87, 37.169 + 84, 81, 78, 77, 75, 72, 70, 69, 68, 66, 65, 63, 62, 60, 59, 59, 37.170 + 58, 57, 57, 55, 54, 53, 53, 53, 52, 50, 48, 47, 46, 45, 44, 45, 37.171 + 44, 43, 43, 44, 44, 44, 44, 45, 45, 44, 43, 44, 43, 42, 42, 43, 37.172 + 42, 40, 39, 38, 37, 36, 34, 32, 32, 31, 32, 32, 33, 33, 32, 31, 37.173 + 46, 48, 49, 50, 50, 53, 56, 61, 68, 73, 75, 80, 84, 98, 106, 114, 37.174 + 94, 45, 36, 39, 41, 48, 58, 59, 58, 54, 49, 46, 51, 54, 54, 55, 37.175 + 74, 47, 48, 38, 95, 178, 187, 198, 97, 75, 74, 88, 91, 95, 101, 84, 37.176 + 64, 51, 60, 92, 101, 111, 106, 59, 110, 123, 115, 107, 101, 95, 91, 86, 37.177 + 84, 81, 78, 77, 75, 73, 72, 72, 70, 69, 68, 65, 64, 62, 61, 62, 37.178 + 62, 61, 60, 59, 58, 56, 55, 55, 54, 52, 51, 47, 46, 44, 43, 44, 37.179 + 44, 44, 44, 45, 45, 46, 47, 47, 47, 47, 47, 47, 46, 45, 45, 44, 37.180 + 43, 41, 40, 39, 39, 37, 35, 34, 33, 30, 31, 31, 30, 31, 32, 32, 37.181 + 46, 48, 49, 51, 51, 55, 58, 63, 70, 75, 77, 82, 90, 104, 112, 99, 37.182 + 56, 38, 41, 49, 58, 60, 53, 45, 55, 62, 61, 53, 49, 50, 47, 55, 37.183 + 60, 69, 71, 49, 95, 178, 193, 201, 108, 73, 82, 91, 104, 94, 114, 73, 37.184 + 68, 67, 83, 117, 130, 136, 121, 60, 108, 123, 114, 107, 101, 96, 93, 90, 37.185 + 88, 85, 83, 81, 79, 77, 76, 76, 75, 73, 72, 68, 67, 65, 63, 63, 37.186 + 63, 62, 61, 61, 60, 57, 56, 57, 55, 53, 52, 48, 47, 45, 44, 45, 37.187 + 45, 45, 46, 49, 49, 51, 51, 50, 50, 50, 51, 51, 50, 49, 49, 49, 37.188 + 47, 45, 44, 43, 42, 40, 37, 36, 35, 33, 33, 32, 31, 31, 32, 32, 37.189 + 46, 48, 49, 51, 52, 56, 60, 66, 73, 78, 81, 88, 96, 108, 109, 69, 37.190 + 49, 48, 48, 51, 52, 44, 39, 65, 88, 101, 103, 99, 76, 58, 46, 52, 37.191 + 61, 73, 68, 51, 98, 180, 195, 210, 154, 108, 92, 84, 87, 75, 57, 23, 37.192 + 48, 83, 111, 137, 127, 104, 92, 69, 109, 122, 114, 108, 103, 100, 98, 95, 37.193 + 93, 90, 88, 85, 84, 82, 80, 80, 79, 77, 76, 73, 71, 69, 68, 67, 37.194 + 66, 65, 65, 64, 63, 61, 60, 60, 58, 56, 54, 50, 49, 47, 46, 48, 37.195 + 48, 49, 50, 52, 53, 55, 55, 54, 54, 54, 55, 55, 54, 53, 53, 54, 37.196 + 52, 50, 48, 46, 45, 42, 40, 39, 37, 35, 34, 33, 31, 32, 31, 31, 37.197 + 47, 49, 50, 52, 54, 58, 62, 69, 76, 82, 86, 94, 104, 113, 74, 33, 37.198 + 36, 38, 36, 41, 41, 31, 59, 102, 117, 125, 129, 130, 126, 103, 55, 55, 37.199 + 67, 87, 68, 46, 97, 176, 192, 222, 219, 181, 144, 95, 85, 69, 18, 22, 37.200 + 81, 118, 136, 125, 74, 88, 99, 96, 118, 121, 116, 112, 109, 105, 103, 100, 37.201 + 97, 95, 92, 89, 88, 86, 84, 82, 81, 79, 78, 75, 74, 72, 71, 71, 37.202 + 70, 69, 69, 68, 67, 65, 64, 65, 62, 59, 57, 53, 51, 50, 49, 49, 37.203 + 50, 52, 52, 53, 55, 57, 58, 57, 57, 57, 57, 58, 57, 56, 56, 57, 37.204 + 55, 53, 51, 48, 47, 43, 41, 41, 38, 35, 35, 34, 32, 32, 31, 31, 37.205 + 48, 50, 51, 53, 55, 60, 65, 72, 81, 87, 92, 99, 114, 104, 24, 25, 37.206 + 36, 43, 50, 52, 38, 55, 105, 115, 120, 119, 121, 124, 134, 137, 101, 68, 37.207 + 72, 78, 68, 48, 92, 173, 190, 214, 235, 237, 238, 177, 115, 56, 76, 115, 37.208 + 133, 136, 140, 78, 68, 129, 137, 135, 134, 128, 123, 121, 117, 112, 110, 106, 37.209 + 103, 100, 97, 94, 92, 91, 89, 87, 85, 83, 82, 80, 79, 77, 76, 76, 37.210 + 76, 75, 74, 74, 73, 71, 69, 68, 67, 63, 60, 55, 54, 52, 52, 52, 37.211 + 54, 56, 56, 56, 59, 61, 63, 63, 63, 63, 63, 65, 64, 63, 62, 61, 37.212 + 60, 58, 56, 53, 52, 48, 44, 43, 40, 36, 36, 35, 33, 32, 31, 30, 37.213 + 48, 50, 51, 53, 56, 61, 66, 73, 82, 89, 94, 105, 113, 70, 23, 52, 37.214 + 60, 61, 60, 47, 43, 90, 116, 116, 120, 118, 117, 118, 126, 135, 137, 88, 37.215 + 71, 74, 80, 63, 102, 180, 194, 215, 242, 249, 253, 226, 95, 58, 104, 134, 37.216 + 134, 128, 125, 57, 112, 159, 156, 150, 146, 140, 132, 127, 123, 117, 114, 110, 37.217 + 108, 104, 102, 99, 97, 95, 94, 91, 89, 88, 86, 83, 82, 80, 79, 79, 37.218 + 79, 78, 77, 77, 75, 73, 72, 70, 67, 63, 60, 56, 54, 52, 53, 54, 37.219 + 56, 57, 58, 60, 62, 65, 67, 69, 69, 69, 70, 71, 71, 69, 68, 66, 37.220 + 64, 63, 62, 60, 57, 53, 49, 46, 43, 39, 37, 36, 33, 32, 31, 30, 37.221 + 47, 49, 51, 54, 57, 63, 67, 75, 82, 89, 102, 111, 105, 49, 39, 65, 37.222 + 64, 59, 47, 27, 61, 113, 117, 118, 122, 122, 122, 123, 133, 137, 144, 119, 37.223 + 68, 86, 96, 78, 103, 188, 205, 224, 244, 249, 251, 237, 55, 99, 133, 137, 37.224 + 134, 128, 113, 63, 139, 173, 169, 161, 156, 147, 136, 130, 127, 122, 117, 115, 37.225 + 110, 105, 103, 102, 99, 99, 97, 89, 87, 87, 87, 86, 85, 82, 80, 81, 37.226 + 81, 83, 80, 80, 76, 74, 73, 73, 68, 66, 63, 59, 57, 55, 56, 58, 37.227 + 57, 58, 58, 61, 65, 71, 71, 71, 73, 75, 76, 76, 74, 73, 74, 71, 37.228 + 67, 65, 67, 64, 63, 54, 53, 48, 45, 40, 37, 36, 32, 32, 31, 30, 37.229 + 47, 48, 51, 54, 57, 63, 68, 77, 82, 92, 107, 119, 95, 37, 40, 63, 37.230 + 55, 52, 42, 28, 83, 120, 120, 116, 121, 122, 124, 128, 134, 140, 144, 147, 37.231 + 85, 82, 91, 78, 97, 191, 215, 234, 247, 250, 251, 246, 92, 126, 146, 135, 37.232 + 121, 122, 116, 71, 153, 175, 168, 160, 151, 141, 132, 126, 123, 118, 113, 113, 37.233 + 109, 102, 99, 99, 96, 98, 97, 83, 81, 84, 86, 87, 87, 84, 83, 87, 37.234 + 85, 87, 84, 79, 82, 81, 75, 70, 71, 70, 64, 63, 61, 58, 60, 63, 37.235 + 61, 59, 61, 65, 68, 75, 75, 74, 78, 82, 84, 83, 79, 75, 73, 73, 37.236 + 73, 73, 70, 67, 61, 61, 59, 50, 46, 41, 37, 35, 32, 32, 32, 31, 37.237 + 47, 48, 51, 54, 58, 63, 70, 79, 85, 98, 107, 115, 55, 10, 29, 56, 37.238 + 52, 53, 42, 42, 103, 124, 117, 113, 116, 118, 121, 123, 129, 135, 141, 150, 37.239 + 100, 83, 106, 81, 98, 194, 215, 239, 253, 252, 251, 245, 121, 124, 141, 132, 37.240 + 126, 134, 124, 68, 146, 157, 144, 139, 134, 126, 121, 116, 113, 109, 106, 109, 37.241 + 106, 101, 98, 95, 94, 98, 97, 89, 89, 92, 94, 91, 91, 89, 88, 88, 37.242 + 84, 84, 85, 85, 81, 80, 84, 74, 76, 72, 67, 66, 63, 62, 63, 67, 37.243 + 66, 64, 66, 69, 70, 76, 79, 78, 81, 84, 86, 84, 81, 77, 76, 75, 37.244 + 76, 76, 70, 72, 66, 63, 58, 52, 48, 43, 38, 36, 33, 32, 32, 31, 37.245 + 47, 48, 51, 54, 59, 65, 72, 80, 88, 99, 111, 88, 8, 9, 32, 52, 37.246 + 59, 61, 38, 60, 116, 121, 111, 107, 110, 112, 115, 116, 121, 127, 134, 144, 37.247 + 123, 94, 90, 55, 96, 189, 209, 234, 249, 250, 248, 247, 112, 87, 70, 96, 37.248 + 120, 122, 121, 74, 151, 164, 156, 145, 134, 127, 121, 118, 117, 114, 111, 113, 37.249 + 111, 107, 104, 101, 102, 103, 102, 96, 96, 98, 99, 100, 99, 96, 92, 87, 37.250 + 87, 89, 90, 93, 90, 88, 89, 90, 83, 74, 76, 69, 67, 64, 65, 71, 37.251 + 70, 69, 70, 72, 79, 84, 88, 86, 89, 92, 93, 93, 85, 82, 83, 79, 37.252 + 74, 78, 76, 70, 78, 63, 60, 57, 51, 46, 40, 38, 34, 33, 32, 31, 37.253 + 47, 48, 51, 54, 60, 66, 74, 82, 88, 98, 114, 67, 28, 44, 51, 64, 37.254 + 60, 62, 34, 79, 119, 117, 107, 106, 107, 108, 110, 112, 119, 125, 131, 139, 37.255 + 139, 95, 83, 53, 87, 178, 200, 224, 243, 251, 254, 250, 115, 86, 91, 85, 37.256 + 97, 130, 130, 70, 146, 161, 157, 146, 136, 132, 130, 125, 123, 121, 120, 121, 37.257 + 120, 116, 111, 109, 110, 109, 108, 112, 114, 113, 112, 112, 107, 102, 97, 94, 37.258 + 96, 95, 94, 95, 97, 97, 94, 91, 89, 85, 79, 73, 70, 67, 68, 74, 37.259 + 72, 74, 76, 80, 89, 91, 94, 93, 96, 99, 99, 98, 98, 92, 86, 81, 37.260 + 83, 84, 81, 79, 72, 76, 67, 60, 54, 49, 42, 40, 35, 33, 32, 31, 37.261 + 47, 48, 51, 54, 61, 68, 75, 84, 89, 100, 114, 59, 55, 60, 60, 73, 37.262 + 65, 56, 33, 95, 119, 114, 106, 105, 105, 105, 108, 111, 117, 122, 128, 134, 37.263 + 135, 62, 63, 57, 81, 172, 200, 228, 251, 254, 254, 247, 132, 117, 140, 119, 37.264 + 89, 97, 105, 74, 149, 158, 145, 134, 126, 126, 127, 126, 126, 126, 124, 127, 37.265 + 128, 124, 117, 116, 118, 117, 123, 126, 126, 123, 119, 118, 114, 109, 105, 100, 37.266 + 101, 100, 105, 106, 92, 88, 98, 99, 93, 94, 83, 79, 75, 71, 72, 77, 37.267 + 77, 79, 82, 86, 93, 96, 106, 109, 114, 117, 115, 103, 99, 98, 95, 91, 37.268 + 91, 90, 99, 104, 81, 81, 69, 64, 57, 51, 44, 41, 36, 34, 32, 31, 37.269 + 47, 48, 51, 54, 61, 68, 76, 86, 90, 106, 112, 62, 52, 55, 65, 78, 37.270 + 79, 52, 34, 100, 117, 109, 102, 102, 104, 104, 107, 109, 112, 117, 120, 129, 37.271 + 129, 48, 74, 80, 81, 174, 212, 234, 252, 254, 254, 250, 143, 150, 135, 138, 37.272 + 125, 101, 76, 72, 153, 170, 163, 143, 130, 128, 128, 129, 131, 131, 129, 133, 37.273 + 135, 129, 121, 125, 128, 130, 142, 161, 161, 156, 149, 124, 118, 115, 114, 112, 37.274 + 112, 117, 138, 164, 166, 153, 134, 127, 96, 95, 92, 86, 80, 77, 77, 80, 37.275 + 81, 84, 89, 95, 102, 114, 140, 156, 163, 167, 167, 145, 102, 92, 103, 102, 37.276 + 99, 116, 144, 110, 118, 81, 76, 66, 59, 52, 45, 42, 37, 34, 32, 31, 37.277 + 47, 49, 53, 56, 62, 68, 76, 86, 96, 104, 97, 47, 53, 71, 79, 85, 37.278 + 82, 47, 45, 107, 117, 107, 101, 100, 100, 98, 99, 101, 106, 110, 116, 124, 37.279 + 127, 114, 117, 93, 94, 184, 210, 231, 252, 248, 253, 247, 138, 139, 133, 146, 37.280 + 142, 147, 140, 70, 151, 170, 160, 158, 153, 147, 140, 139, 135, 138, 150, 159, 37.281 + 156, 148, 101, 132, 142, 159, 162, 138, 122, 136, 105, 108, 99, 115, 122, 124, 37.282 + 129, 162, 166, 177, 194, 211, 218, 186, 130, 92, 95, 90, 84, 82, 83, 79, 37.283 + 85, 94, 97, 103, 120, 126, 138, 148, 141, 142, 124, 70, 35, 100, 127, 113, 37.284 + 124, 162, 139, 162, 163, 98, 72, 70, 60, 55, 46, 42, 36, 33, 32, 31, 37.285 + 47, 49, 53, 57, 63, 69, 77, 86, 92, 109, 96, 59, 58, 83, 71, 63, 37.286 + 42, 29, 47, 107, 110, 102, 97, 97, 95, 94, 95, 98, 103, 108, 112, 120, 37.287 + 132, 133, 106, 90, 121, 184, 207, 232, 237, 240, 249, 248, 148, 133, 132, 118, 37.288 + 142, 148, 141, 72, 138, 162, 159, 153, 151, 148, 148, 139, 171, 155, 153, 164, 37.289 + 155, 152, 91, 130, 158, 189, 182, 136, 130, 116, 106, 109, 101, 90, 122, 135, 37.290 + 166, 198, 181, 177, 206, 216, 214, 211, 177, 106, 90, 94, 89, 85, 84, 87, 37.291 + 92, 96, 108, 134, 148, 156, 132, 123, 121, 131, 74, 77, 126, 180, 193, 134, 37.292 + 154, 170, 143, 177, 164, 126, 60, 67, 63, 55, 48, 43, 38, 34, 32, 31, 37.293 + 47, 49, 53, 57, 65, 71, 79, 88, 97, 109, 73, 52, 77, 90, 77, 74, 37.294 + 59, 51, 57, 106, 104, 97, 93, 93, 93, 91, 92, 95, 100, 107, 113, 117, 37.295 + 132, 155, 152, 143, 151, 185, 204, 228, 218, 234, 241, 246, 132, 117, 148, 131, 37.296 + 133, 121, 126, 70, 131, 153, 154, 151, 154, 147, 152, 145, 174, 159, 160, 158, 37.297 + 162, 149, 82, 150, 186, 195, 178, 187, 180, 192, 202, 198, 175, 121, 109, 155, 37.298 + 168, 152, 178, 186, 208, 212, 212, 168, 156, 179, 86, 96, 96, 88, 87, 91, 37.299 + 96, 103, 132, 180, 179, 180, 152, 128, 127, 128, 132, 178, 197, 200, 198, 179, 37.300 + 162, 157, 151, 165, 140, 145, 53, 63, 65, 56, 50, 44, 39, 35, 34, 32, 37.301 + 47, 49, 53, 57, 66, 73, 80, 90, 98, 108, 67, 70, 100, 83, 84, 75, 37.302 + 67, 64, 58, 105, 101, 95, 92, 92, 92, 91, 93, 95, 99, 108, 116, 125, 37.303 + 136, 146, 151, 157, 164, 183, 202, 217, 207, 232, 230, 241, 123, 118, 126, 114, 37.304 + 144, 161, 147, 70, 135, 147, 145, 148, 149, 135, 147, 163, 166, 158, 167, 181, 37.305 + 160, 167, 116, 181, 191, 196, 175, 186, 149, 203, 203, 205, 210, 182, 110, 189, 37.306 + 182, 172, 189, 196, 212, 214, 195, 145, 175, 231, 104, 91, 102, 94, 92, 93, 37.307 + 99, 120, 160, 187, 187, 184, 185, 171, 107, 81, 150, 198, 185, 164, 179, 157, 37.308 + 150, 143, 134, 158, 138, 142, 42, 61, 66, 56, 50, 45, 39, 36, 34, 32, 37.309 + 47, 49, 53, 57, 66, 72, 80, 89, 94, 109, 82, 93, 91, 76, 92, 70, 37.310 + 84, 71, 58, 101, 100, 95, 93, 92, 92, 91, 94, 96, 100, 110, 119, 124, 37.311 + 129, 141, 153, 161, 163, 178, 196, 200, 202, 227, 220, 233, 129, 142, 138, 115, 37.312 + 133, 141, 143, 77, 140, 148, 139, 141, 139, 128, 144, 165, 161, 165, 176, 193, 37.313 + 147, 160, 152, 199, 201, 185, 171, 187, 146, 198, 187, 203, 185, 190, 161, 212, 37.314 + 194, 200, 219, 207, 201, 197, 176, 166, 234, 212, 111, 79, 105, 101, 98, 98, 37.315 + 108, 143, 175, 187, 204, 188, 196, 137, 56, 74, 124, 179, 164, 131, 161, 151, 37.316 + 166, 90, 89, 151, 161, 127, 40, 63, 65, 56, 49, 44, 39, 35, 34, 33, 37.317 + 47, 49, 53, 57, 65, 71, 79, 88, 92, 107, 85, 79, 65, 75, 88, 58, 37.318 + 77, 57, 67, 107, 100, 95, 93, 93, 90, 90, 93, 98, 106, 110, 116, 118, 37.319 + 122, 136, 147, 152, 156, 171, 185, 184, 196, 213, 213, 230, 150, 139, 139, 131, 37.320 + 148, 147, 145, 73, 135, 151, 141, 135, 136, 129, 137, 160, 157, 177, 183, 192, 37.321 + 173, 153, 173, 193, 162, 119, 131, 190, 181, 205, 188, 169, 175, 202, 195, 199, 37.322 + 192, 153, 157, 197, 201, 207, 198, 210, 197, 129, 131, 63, 106, 106, 102, 103, 37.323 + 117, 156, 155, 140, 179, 175, 173, 61, 65, 110, 126, 141, 129, 130, 141, 134, 37.324 + 165, 111, 80, 139, 127, 64, 37, 67, 62, 55, 47, 43, 37, 34, 33, 33, 37.325 + 48, 49, 54, 58, 63, 70, 79, 88, 92, 105, 80, 69, 68, 77, 67, 54, 37.326 + 107, 66, 74, 103, 100, 95, 93, 92, 89, 90, 94, 99, 107, 110, 113, 119, 37.327 + 128, 137, 147, 153, 157, 164, 174, 177, 195, 197, 206, 215, 166, 155, 157, 148, 37.328 + 147, 154, 153, 68, 128, 152, 146, 134, 132, 124, 120, 163, 165, 186, 181, 185, 37.329 + 182, 157, 172, 148, 70, 74, 99, 169, 184, 191, 175, 182, 186, 189, 190, 189, 37.330 + 102, 62, 83, 128, 181, 193, 159, 189, 154, 132, 124, 52, 105, 106, 102, 105, 37.331 + 120, 153, 149, 157, 168, 147, 124, 43, 96, 129, 135, 137, 131, 152, 120, 127, 37.332 + 143, 119, 75, 92, 69, 42, 63, 69, 60, 53, 45, 41, 35, 32, 32, 32, 37.333 + 49, 50, 54, 58, 62, 70, 78, 87, 96, 103, 71, 75, 96, 92, 76, 90, 37.334 + 116, 67, 79, 109, 103, 97, 94, 92, 91, 93, 97, 100, 101, 106, 113, 121, 37.335 + 130, 138, 145, 151, 156, 156, 162, 177, 197, 178, 198, 206, 155, 163, 169, 161, 37.336 + 160, 170, 161, 70, 127, 146, 145, 140, 132, 125, 125, 142, 165, 182, 180, 198, 37.337 + 188, 169, 175, 79, 61, 111, 133, 151, 189, 203, 203, 199, 170, 164, 171, 126, 37.338 + 47, 94, 118, 118, 131, 122, 94, 137, 151, 169, 159, 43, 104, 103, 102, 106, 37.339 + 126, 155, 181, 184, 173, 141, 110, 50, 112, 128, 129, 136, 149, 162, 112, 133, 37.340 + 106, 111, 61, 93, 82, 69, 72, 69, 59, 51, 43, 39, 33, 30, 30, 31, 37.341 + 49, 50, 54, 58, 62, 69, 77, 87, 94, 107, 91, 96, 111, 109, 101, 120, 37.342 + 113, 65, 78, 110, 106, 100, 97, 96, 95, 94, 95, 97, 99, 105, 112, 121, 37.343 + 130, 134, 142, 149, 148, 147, 155, 174, 187, 171, 191, 198, 157, 160, 146, 165, 37.344 + 172, 171, 170, 73, 126, 143, 142, 144, 136, 126, 131, 153, 178, 182, 175, 194, 37.345 + 195, 184, 132, 51, 103, 128, 144, 151, 205, 220, 217, 218, 180, 197, 183, 63, 37.346 + 75, 125, 130, 133, 160, 174, 177, 195, 182, 199, 175, 39, 102, 103, 103, 108, 37.347 + 144, 174, 178, 172, 175, 155, 120, 48, 122, 124, 131, 140, 148, 147, 104, 128, 37.348 + 131, 127, 48, 86, 90, 80, 74, 67, 58, 50, 42, 38, 33, 30, 30, 31, 37.349 + 48, 50, 53, 57, 61, 69, 76, 86, 91, 110, 110, 114, 111, 110, 108, 123, 37.350 + 97, 57, 76, 112, 108, 103, 100, 98, 95, 93, 92, 94, 98, 104, 111, 118, 37.351 + 126, 132, 138, 143, 139, 140, 152, 172, 174, 165, 186, 190, 161, 160, 174, 174, 37.352 + 176, 169, 181, 71, 124, 141, 139, 141, 135, 128, 133, 156, 180, 176, 183, 212, 37.353 + 210, 161, 71, 70, 126, 130, 139, 154, 202, 213, 223, 221, 183, 196, 183, 48, 37.354 + 106, 135, 132, 129, 177, 212, 210, 217, 211, 194, 166, 36, 102, 105, 106, 116, 37.355 + 152, 167, 158, 143, 170, 164, 128, 56, 121, 129, 134, 141, 130, 128, 124, 137, 37.356 + 147, 133, 43, 82, 93, 79, 71, 65, 56, 49, 42, 37, 32, 30, 30, 31, 37.357 + 47, 49, 53, 57, 61, 68, 76, 86, 96, 108, 105, 100, 97, 99, 100, 104, 37.358 + 95, 64, 78, 115, 111, 105, 101, 98, 90, 90, 91, 93, 98, 104, 111, 116, 37.359 + 123, 131, 133, 133, 133, 138, 151, 168, 162, 163, 181, 192, 156, 167, 189, 163, 37.360 + 189, 186, 179, 67, 123, 139, 136, 135, 133, 130, 133, 149, 169, 174, 199, 210, 37.361 + 178, 80, 39, 91, 130, 143, 132, 151, 197, 216, 223, 199, 168, 181, 146, 57, 37.362 + 123, 135, 139, 145, 158, 182, 166, 189, 189, 166, 146, 35, 103, 108, 107, 115, 37.363 + 143, 153, 167, 161, 172, 153, 117, 59, 122, 127, 133, 136, 134, 146, 154, 150, 37.364 + 137, 110, 42, 80, 88, 75, 68, 63, 54, 47, 40, 37, 33, 31, 30, 30, 37.365 + 47, 49, 52, 56, 60, 67, 75, 85, 94, 108, 106, 101, 100, 100, 111, 108, 37.366 + 113, 81, 81, 117, 114, 106, 100, 96, 89, 90, 91, 95, 99, 105, 112, 116, 37.367 + 121, 129, 127, 127, 131, 139, 151, 162, 153, 162, 174, 187, 136, 157, 145, 150, 37.368 + 186, 165, 160, 73, 124, 138, 134, 133, 132, 131, 136, 155, 176, 189, 201, 171, 37.369 + 84, 99, 63, 100, 136, 137, 136, 142, 161, 186, 197, 160, 148, 190, 130, 68, 37.370 + 133, 134, 136, 137, 153, 182, 159, 203, 175, 164, 134, 37, 106, 110, 109, 115, 37.371 + 129, 141, 166, 155, 158, 146, 120, 54, 127, 123, 134, 141, 149, 150, 142, 138, 37.372 + 122, 121, 43, 80, 86, 75, 69, 60, 52, 46, 40, 36, 33, 31, 30, 30, 37.373 + 47, 49, 52, 56, 60, 67, 75, 85, 91, 108, 106, 101, 98, 94, 119, 118, 37.374 + 121, 88, 77, 118, 114, 105, 98, 96, 94, 93, 93, 96, 100, 106, 113, 117, 37.375 + 120, 124, 123, 126, 130, 140, 150, 156, 147, 161, 167, 179, 138, 163, 163, 154, 37.376 + 153, 130, 137, 66, 125, 138, 134, 132, 128, 127, 136, 155, 181, 198, 180, 129, 37.377 + 119, 203, 75, 107, 134, 131, 137, 141, 156, 180, 169, 146, 152, 194, 133, 74, 37.378 + 136, 129, 133, 139, 142, 170, 170, 193, 164, 155, 119, 39, 109, 112, 109, 118, 37.379 + 126, 147, 167, 153, 165, 153, 130, 63, 122, 129, 135, 144, 149, 135, 129, 133, 37.380 + 125, 103, 38, 79, 85, 73, 65, 59, 51, 45, 40, 36, 32, 31, 30, 30, 37.381 + 48, 49, 51, 54, 60, 66, 74, 84, 93, 108, 103, 89, 88, 96, 122, 124, 37.382 + 124, 104, 69, 118, 114, 104, 98, 96, 95, 94, 96, 98, 102, 106, 115, 118, 37.383 + 119, 118, 119, 128, 130, 142, 152, 148, 144, 159, 162, 175, 176, 181, 188, 176, 37.384 + 160, 155, 156, 61, 124, 136, 133, 133, 126, 122, 133, 156, 187, 170, 124, 143, 37.385 + 216, 235, 74, 102, 127, 128, 133, 144, 181, 180, 149, 154, 170, 191, 135, 74, 37.386 + 131, 127, 129, 132, 135, 159, 152, 175, 152, 137, 113, 39, 110, 114, 111, 117, 37.387 + 130, 159, 170, 160, 176, 166, 146, 75, 115, 132, 135, 142, 144, 119, 135, 142, 37.388 + 140, 75, 45, 81, 83, 71, 62, 58, 49, 44, 39, 35, 33, 32, 30, 30, 37.389 + 49, 49, 51, 53, 59, 66, 73, 83, 92, 108, 104, 89, 94, 109, 118, 130, 37.390 + 126, 107, 69, 114, 113, 104, 100, 99, 97, 96, 98, 100, 103, 108, 115, 117, 37.391 + 115, 115, 123, 132, 136, 146, 145, 141, 144, 158, 159, 177, 190, 170, 180, 186, 37.392 + 187, 195, 160, 64, 123, 136, 133, 133, 126, 122, 130, 146, 161, 124, 174, 220, 37.393 + 237, 194, 56, 101, 124, 124, 131, 142, 171, 162, 160, 183, 185, 184, 100, 73, 37.394 + 128, 127, 125, 134, 145, 164, 171, 169, 140, 135, 134, 40, 111, 116, 112, 117, 37.395 + 127, 147, 151, 149, 153, 146, 132, 76, 102, 137, 149, 146, 145, 125, 142, 143, 37.396 + 127, 50, 48, 82, 80, 69, 62, 57, 49, 43, 37, 35, 34, 32, 30, 30, 37.397 + 48, 48, 50, 53, 59, 65, 72, 82, 90, 105, 107, 95, 104, 120, 110, 139, 37.398 + 141, 122, 68, 107, 114, 106, 103, 104, 100, 100, 101, 103, 105, 111, 116, 114, 37.399 + 109, 116, 128, 131, 145, 151, 142, 139, 147, 156, 153, 173, 143, 166, 130, 171, 37.400 + 191, 156, 124, 69, 123, 138, 133, 131, 127, 124, 130, 132, 116, 184, 239, 232, 37.401 + 201, 166, 58, 99, 124, 124, 131, 142, 163, 188, 173, 194, 188, 182, 98, 73, 37.402 + 128, 126, 125, 133, 157, 159, 182, 171, 144, 144, 149, 41, 113, 118, 115, 118, 37.403 + 121, 126, 124, 140, 135, 134, 132, 116, 105, 128, 141, 136, 140, 131, 125, 120, 37.404 + 74, 29, 65, 83, 76, 68, 62, 56, 48, 43, 37, 36, 34, 32, 30, 30, 37.405 + 47, 48, 49, 52, 57, 64, 71, 81, 90, 105, 112, 106, 107, 125, 116, 152, 37.406 + 158, 138, 69, 103, 118, 110, 104, 105, 102, 101, 103, 105, 108, 114, 116, 110, 37.407 + 109, 120, 127, 139, 143, 144, 144, 138, 149, 153, 150, 167, 70, 83, 126, 190, 37.408 + 158, 100, 142, 72, 122, 139, 133, 130, 127, 125, 129, 126, 181, 244, 236, 208, 37.409 + 205, 194, 71, 98, 125, 125, 131, 135, 148, 205, 166, 187, 176, 176, 108, 72, 37.410 + 127, 126, 126, 128, 160, 155, 168, 169, 156, 152, 143, 42, 114, 120, 115, 119, 37.411 + 121, 122, 118, 131, 131, 142, 144, 146, 125, 125, 128, 111, 118, 125, 113, 90, 37.412 + 38, 44, 82, 83, 72, 67, 61, 54, 47, 42, 36, 35, 34, 31, 30, 30, 37.413 + 47, 47, 49, 52, 56, 62, 69, 80, 91, 104, 116, 115, 116, 132, 127, 158, 37.414 + 148, 118, 76, 90, 118, 114, 106, 106, 104, 104, 106, 108, 112, 116, 117, 111, 37.415 + 114, 119, 135, 168, 152, 133, 139, 134, 150, 149, 147, 166, 133, 115, 130, 131, 37.416 + 78, 127, 186, 72, 121, 139, 134, 131, 127, 124, 130, 156, 225, 213, 202, 208, 37.417 + 200, 215, 68, 100, 125, 126, 132, 131, 156, 196, 152, 185, 180, 182, 112, 71, 37.418 + 127, 127, 126, 131, 158, 164, 167, 171, 160, 156, 147, 41, 114, 121, 116, 118, 37.419 + 124, 128, 127, 123, 124, 133, 136, 153, 136, 123, 120, 109, 127, 121, 91, 57, 37.420 + 39, 72, 85, 81, 70, 66, 59, 52, 46, 41, 37, 36, 33, 31, 30, 30, 37.421 + 47, 47, 49, 51, 55, 62, 69, 79, 89, 100, 117, 120, 123, 138, 133, 158, 37.422 + 136, 109, 97, 76, 114, 117, 108, 109, 109, 109, 111, 113, 115, 116, 116, 114, 37.423 + 117, 122, 150, 192, 173, 129, 124, 135, 150, 144, 146, 168, 167, 193, 160, 124, 37.424 + 121, 209, 192, 65, 121, 137, 135, 133, 127, 123, 130, 167, 217, 171, 163, 191, 37.425 + 173, 218, 67, 101, 126, 126, 132, 141, 187, 190, 143, 168, 176, 179, 120, 72, 37.426 + 127, 127, 127, 136, 146, 164, 173, 171, 158, 154, 151, 40, 113, 120, 115, 115, 37.427 + 123, 130, 136, 128, 125, 129, 138, 158, 126, 108, 113, 126, 140, 96, 53, 46, 37.428 + 68, 91, 85, 79, 69, 66, 58, 51, 45, 40, 36, 35, 33, 31, 30, 30, 37.429 + 46, 47, 49, 51, 55, 62, 69, 79, 87, 97, 113, 118, 117, 137, 134, 159, 37.430 + 153, 152, 137, 82, 112, 119, 111, 111, 113, 113, 114, 116, 115, 113, 114, 116, 37.431 + 120, 134, 160, 186, 181, 121, 102, 133, 147, 140, 148, 160, 190, 195, 195, 200, 37.432 + 211, 228, 210, 73, 122, 136, 135, 134, 127, 124, 133, 164, 190, 193, 208, 165, 37.433 + 215, 220, 66, 103, 129, 128, 132, 142, 167, 165, 151, 158, 146, 133, 77, 71, 37.434 + 127, 127, 126, 135, 124, 143, 167, 167, 160, 152, 144, 40, 112, 120, 115, 113, 37.435 + 122, 130, 140, 134, 133, 140, 149, 135, 99, 105, 125, 122, 89, 49, 56, 81, 37.436 + 103, 91, 85, 77, 69, 68, 57, 49, 44, 40, 35, 35, 33, 30, 30, 30, 37.437 + 45, 49, 50, 53, 56, 62, 69, 79, 85, 93, 101, 111, 122, 135, 132, 150, 37.438 + 165, 152, 150, 97, 107, 121, 114, 109, 114, 112, 117, 113, 117, 112, 115, 117, 37.439 + 129, 149, 159, 150, 180, 88, 78, 132, 141, 138, 146, 159, 194, 191, 205, 214, 37.440 + 219, 231, 218, 74, 120, 135, 132, 130, 128, 132, 139, 162, 179, 193, 226, 215, 37.441 + 200, 186, 69, 107, 135, 129, 129, 133, 123, 143, 174, 189, 195, 172, 103, 69, 37.442 + 122, 127, 123, 134, 106, 97, 113, 143, 156, 155, 139, 44, 119, 122, 117, 115, 37.443 + 126, 136, 137, 118, 143, 143, 112, 67, 69, 72, 61, 60, 65, 78, 96, 104, 37.444 + 101, 91, 83, 77, 73, 69, 60, 48, 41, 38, 34, 33, 30, 29, 30, 30, 37.445 + 45, 48, 50, 53, 56, 62, 69, 77, 83, 89, 95, 107, 114, 121, 135, 144, 37.446 + 151, 137, 141, 134, 93, 120, 115, 115, 117, 117, 119, 114, 113, 111, 114, 125, 37.447 + 143, 182, 165, 175, 148, 51, 91, 132, 142, 141, 150, 161, 194, 178, 192, 213, 37.448 + 195, 220, 189, 75, 118, 136, 135, 134, 129, 129, 139, 165, 198, 204, 191, 183, 37.449 + 159, 157, 56, 108, 135, 130, 125, 134, 153, 189, 189, 190, 195, 175, 104, 64, 37.450 + 121, 127, 126, 134, 142, 144, 120, 114, 127, 130, 120, 42, 113, 123, 115, 121, 37.451 + 129, 130, 121, 127, 146, 138, 65, 57, 108, 115, 110, 113, 113, 112, 116, 114, 37.452 + 103, 90, 84, 77, 73, 68, 59, 48, 42, 37, 33, 32, 29, 28, 30, 30, 37.453 + 46, 48, 49, 52, 55, 60, 66, 73, 79, 86, 91, 101, 108, 116, 137, 130, 37.454 + 126, 126, 158, 151, 112, 107, 126, 115, 119, 116, 117, 119, 115, 113, 114, 132, 37.455 + 173, 191, 173, 173, 99, 55, 111, 138, 144, 141, 152, 169, 187, 180, 200, 199, 37.456 + 185, 201, 153, 90, 109, 142, 133, 129, 130, 132, 136, 166, 202, 202, 164, 120, 37.457 + 150, 152, 56, 111, 134, 128, 126, 141, 178, 200, 171, 181, 181, 166, 98, 69, 37.458 + 120, 119, 125, 128, 147, 155, 160, 154, 126, 115, 120, 39, 115, 119, 115, 117, 37.459 + 126, 122, 114, 118, 130, 133, 91, 91, 145, 142, 143, 141, 138, 129, 124, 120, 37.460 + 108, 94, 87, 79, 73, 67, 59, 50, 43, 38, 33, 32, 29, 28, 30, 30, 37.461 + 46, 48, 48, 50, 54, 58, 63, 69, 77, 83, 89, 98, 109, 126, 153, 155, 37.462 + 156, 149, 164, 162, 136, 117, 115, 123, 123, 123, 121, 121, 116, 123, 131, 164, 37.463 + 187, 186, 179, 153, 57, 84, 119, 141, 148, 142, 156, 174, 183, 189, 205, 196, 37.464 + 189, 211, 187, 134, 100, 135, 135, 132, 131, 133, 134, 155, 189, 180, 197, 172, 37.465 + 120, 131, 68, 99, 135, 130, 126, 144, 181, 178, 161, 180, 173, 163, 110, 67, 37.466 + 118, 119, 123, 131, 152, 125, 155, 155, 160, 154, 139, 56, 107, 119, 119, 122, 37.467 + 128, 116, 122, 123, 114, 111, 112, 92, 116, 120, 138, 143, 140, 137, 132, 124, 37.468 + 115, 102, 91, 83, 75, 67, 59, 51, 44, 38, 34, 32, 29, 28, 30, 30, 37.469 + 46, 47, 47, 49, 52, 56, 59, 65, 74, 81, 87, 93, 101, 111, 134, 156, 37.470 + 166, 167, 168, 160, 148, 150, 114, 126, 120, 126, 120, 117, 123, 138, 155, 185, 37.471 + 193, 185, 164, 87, 62, 103, 122, 138, 149, 149, 165, 174, 190, 193, 194, 192, 37.472 + 192, 204, 200, 192, 136, 132, 138, 130, 131, 133, 140, 162, 176, 178, 200, 195, 37.473 + 119, 123, 98, 97, 129, 131, 129, 163, 180, 161, 166, 179, 170, 166, 124, 61, 37.474 + 115, 125, 121, 127, 147, 102, 160, 150, 152, 150, 146, 93, 92, 119, 115, 116, 37.475 + 126, 104, 119, 101, 111, 111, 115, 88, 58, 85, 122, 110, 110, 118, 121, 122, 37.476 + 120, 110, 97, 88, 77, 68, 60, 53, 45, 39, 34, 32, 29, 28, 30, 30, 37.477 + 46, 47, 47, 48, 51, 54, 57, 62, 71, 77, 82, 89, 101, 108, 115, 134, 37.478 + 132, 158, 176, 136, 128, 140, 133, 146, 127, 116, 121, 141, 174, 169, 136, 138, 37.479 + 174, 170, 109, 50, 94, 112, 121, 138, 167, 181, 199, 194, 195, 195, 201, 207, 37.480 + 201, 201, 192, 179, 187, 200, 185, 111, 128, 151, 158, 175, 178, 171, 169, 184, 37.481 + 194, 190, 174, 138, 116, 123, 153, 183, 163, 152, 158, 171, 166, 156, 108, 88, 37.482 + 114, 111, 110, 105, 113, 91, 163, 124, 142, 144, 135, 118, 112, 106, 106, 119, 37.483 + 129, 81, 100, 98, 125, 118, 91, 70, 87, 116, 102, 73, 75, 83, 87, 96, 37.484 + 103, 106, 103, 92, 81, 69, 61, 54, 46, 39, 34, 32, 29, 28, 30, 30, 37.485 + 46, 47, 46, 47, 50, 52, 56, 60, 68, 74, 79, 84, 88, 101, 108, 119, 37.486 + 125, 155, 157, 131, 104, 108, 127, 152, 149, 138, 147, 186, 195, 156, 145, 175, 37.487 + 168, 132, 63, 84, 107, 113, 116, 131, 171, 192, 203, 195, 189, 195, 209, 210, 37.488 + 198, 204, 188, 177, 200, 193, 178, 85, 125, 179, 177, 175, 182, 159, 179, 196, 37.489 + 179, 179, 174, 160, 106, 114, 170, 170, 139, 150, 159, 168, 163, 144, 118, 124, 37.490 + 107, 88, 91, 96, 101, 106, 155, 138, 139, 134, 127, 128, 129, 92, 94, 115, 37.491 + 119, 64, 70, 79, 103, 109, 97, 97, 113, 117, 91, 78, 83, 88, 83, 82, 37.492 + 86, 94, 102, 95, 81, 72, 61, 56, 47, 40, 35, 33, 30, 29, 30, 30, 37.493 + 46, 46, 45, 46, 49, 50, 55, 58, 65, 72, 77, 83, 89, 94, 103, 110, 37.494 + 113, 150, 140, 151, 157, 158, 175, 176, 186, 170, 177, 220, 203, 194, 190, 212, 37.495 + 169, 73, 71, 111, 113, 110, 114, 131, 177, 191, 197, 182, 181, 192, 202, 197, 37.496 + 201, 196, 176, 187, 206, 186, 162, 72, 129, 189, 177, 169, 174, 174, 192, 187, 37.497 + 158, 155, 161, 160, 94, 101, 164, 144, 135, 155, 160, 162, 161, 137, 155, 103, 37.498 + 86, 70, 71, 55, 70, 120, 156, 141, 137, 132, 129, 132, 119, 77, 73, 116, 37.499 + 124, 100, 97, 116, 115, 118, 105, 105, 127, 116, 104, 98, 105, 104, 95, 90, 37.500 + 81, 75, 80, 91, 84, 75, 62, 58, 49, 42, 37, 34, 31, 29, 30, 30, 37.501 + 45, 46, 45, 45, 49, 50, 54, 57, 62, 68, 73, 80, 86, 90, 97, 105, 37.502 + 110, 113, 124, 157, 171, 181, 193, 196, 214, 138, 198, 216, 175, 191, 187, 155, 37.503 + 79, 72, 108, 113, 111, 109, 113, 126, 159, 161, 162, 160, 166, 178, 190, 191, 37.504 + 193, 187, 183, 195, 204, 181, 173, 70, 121, 143, 123, 141, 161, 171, 184, 177, 37.505 + 161, 159, 153, 135, 78, 102, 161, 153, 155, 162, 140, 117, 102, 54, 60, 66, 37.506 + 93, 62, 111, 123, 125, 158, 154, 138, 135, 130, 127, 131, 118, 81, 77, 115, 37.507 + 127, 116, 108, 118, 125, 130, 91, 102, 126, 100, 96, 91, 94, 86, 80, 81, 37.508 + 76, 71, 60, 77, 88, 75, 64, 60, 51, 44, 38, 35, 31, 29, 30, 30, 37.509 + 44, 45, 44, 45, 47, 48, 52, 54, 60, 65, 70, 77, 82, 86, 92, 98, 37.510 + 103, 107, 111, 123, 160, 161, 179, 196, 180, 164, 213, 191, 140, 132, 77, 51, 37.511 + 81, 105, 114, 114, 106, 109, 113, 120, 135, 115, 104, 104, 107, 111, 117, 119, 37.512 + 112, 102, 102, 111, 116, 105, 108, 71, 118, 112, 86, 83, 90, 97, 99, 102, 37.513 + 97, 94, 83, 78, 64, 99, 132, 105, 90, 80, 61, 48, 53, 48, 66, 83, 37.514 + 70, 81, 127, 108, 85, 94, 81, 78, 76, 75, 74, 82, 69, 58, 76, 110, 37.515 + 127, 123, 101, 106, 120, 101, 88, 117, 102, 72, 78, 83, 87, 80, 76, 69, 37.516 + 71, 71, 56, 57, 82, 78, 68, 62, 53, 47, 39, 35, 32, 30, 30, 30, 37.517 + 44, 44, 43, 44, 46, 47, 50, 52, 57, 64, 68, 74, 79, 83, 89, 93, 37.518 + 99, 103, 107, 101, 92, 94, 120, 128, 105, 148, 143, 91, 79, 54, 66, 105, 37.519 + 112, 115, 111, 103, 102, 107, 112, 115, 117, 98, 90, 94, 94, 92, 95, 106, 37.520 + 103, 94, 92, 97, 98, 100, 96, 97, 115, 111, 96, 91, 92, 92, 91, 90, 37.521 + 89, 92, 91, 86, 86, 98, 103, 94, 86, 83, 84, 84, 83, 77, 83, 79, 37.522 + 76, 91, 98, 85, 74, 80, 80, 77, 80, 83, 85, 85, 83, 84, 101, 108, 37.523 + 121, 131, 114, 98, 93, 72, 101, 98, 77, 78, 80, 83, 86, 82, 80, 72, 37.524 + 68, 61, 55, 41, 66, 82, 71, 63, 54, 47, 40, 36, 32, 31, 31, 31, 37.525 + 44, 44, 43, 44, 46, 46, 48, 50, 55, 61, 65, 71, 75, 79, 85, 88, 37.526 + 91, 95, 105, 113, 111, 102, 93, 81, 75, 70, 70, 69, 81, 85, 94, 107, 37.527 + 107, 107, 102, 97, 98, 105, 109, 110, 108, 104, 107, 112, 114, 112, 117, 123, 37.528 + 115, 109, 107, 108, 108, 112, 102, 106, 104, 109, 106, 104, 104, 103, 104, 105, 37.529 + 102, 99, 100, 99, 97, 96, 97, 100, 102, 102, 101, 98, 100, 94, 97, 87, 37.530 + 93, 91, 97, 92, 92, 91, 88, 84, 88, 92, 95, 93, 100, 98, 101, 109, 37.531 + 116, 133, 131, 113, 80, 95, 98, 78, 75, 87, 77, 81, 80, 78, 73, 66, 37.532 + 62, 60, 59, 34, 54, 81, 72, 63, 54, 47, 40, 36, 33, 31, 32, 32, 37.533 + 43, 43, 43, 44, 46, 45, 48, 50, 53, 59, 62, 67, 71, 76, 81, 83, 37.534 + 85, 94, 97, 103, 104, 106, 102, 99, 103, 100, 97, 98, 92, 95, 106, 104, 37.535 + 104, 98, 99, 94, 95, 104, 107, 107, 101, 105, 110, 111, 114, 109, 113, 123, 37.536 + 115, 105, 103, 104, 107, 108, 103, 102, 101, 101, 102, 104, 103, 102, 102, 102, 37.537 + 101, 97, 97, 96, 91, 91, 89, 97, 102, 99, 97, 98, 98, 94, 92, 87, 37.538 + 85, 86, 86, 87, 84, 86, 84, 84, 86, 89, 92, 91, 97, 96, 100, 105, 37.539 + 115, 121, 110, 99, 93, 92, 76, 71, 78, 80, 67, 72, 71, 73, 68, 62, 37.540 + 62, 67, 61, 34, 48, 76, 73, 63, 54, 47, 40, 37, 33, 31, 32, 32, 37.541 + 43, 44, 44, 45, 44, 46, 49, 51, 51, 56, 60, 63, 68, 72, 78, 80, 37.542 + 85, 90, 93, 97, 99, 99, 98, 99, 102, 98, 99, 98, 98, 103, 104, 100, 37.543 + 99, 96, 93, 91, 93, 99, 101, 100, 98, 100, 105, 106, 107, 106, 109, 118, 37.544 + 111, 101, 97, 99, 102, 103, 100, 100, 100, 99, 99, 99, 99, 98, 97, 96, 37.545 + 94, 93, 92, 92, 90, 90, 88, 92, 93, 92, 91, 91, 91, 90, 89, 85, 37.546 + 85, 82, 82, 83, 82, 82, 82, 83, 83, 86, 87, 89, 93, 95, 101, 107, 37.547 + 110, 80, 80, 93, 98, 82, 102, 94, 84, 69, 59, 56, 61, 61, 56, 60, 37.548 + 58, 62, 49, 37, 40, 74, 70, 64, 54, 47, 40, 37, 33, 31, 32, 31, 37.549 + 43, 44, 45, 45, 45, 48, 50, 52, 52, 54, 59, 61, 64, 68, 73, 77, 37.550 + 81, 85, 89, 90, 92, 93, 93, 94, 94, 94, 93, 93, 96, 101, 101, 98, 37.551 + 96, 92, 89, 88, 91, 94, 96, 95, 94, 96, 101, 103, 104, 103, 105, 113, 37.552 + 108, 98, 94, 95, 98, 100, 97, 98, 99, 98, 97, 97, 96, 95, 94, 92, 37.553 + 90, 90, 89, 88, 88, 86, 86, 86, 85, 84, 84, 85, 85, 84, 83, 83, 37.554 + 82, 81, 81, 81, 81, 81, 81, 83, 82, 84, 85, 87, 91, 94, 101, 103, 37.555 + 99, 84, 98, 96, 71, 60, 115, 125, 116, 106, 100, 92, 83, 67, 52, 52, 37.556 + 62, 58, 46, 29, 30, 72, 72, 64, 55, 47, 40, 37, 33, 31, 32, 31, 37.557 + 43, 44, 45, 46, 46, 47, 50, 51, 51, 53, 57, 59, 60, 64, 68, 72, 37.558 + 74, 78, 81, 82, 85, 86, 87, 88, 87, 87, 88, 88, 91, 95, 94, 92, 37.559 + 90, 87, 84, 83, 86, 89, 91, 90, 89, 91, 96, 98, 99, 97, 100, 106, 37.560 + 102, 94, 90, 90, 92, 94, 93, 93, 93, 92, 91, 91, 90, 90, 88, 86, 37.561 + 85, 84, 83, 82, 81, 80, 80, 79, 78, 77, 76, 79, 78, 77, 77, 77, 37.562 + 77, 76, 75, 75, 75, 75, 75, 77, 77, 78, 81, 83, 87, 91, 99, 96, 37.563 + 78, 76, 87, 77, 46, 47, 117, 130, 128, 126, 126, 121, 115, 105, 90, 52, 37.564 + 54, 47, 33, 22, 32, 71, 71, 64, 53, 46, 39, 36, 32, 31, 32, 31, 37.565 + 43, 44, 45, 46, 46, 47, 49, 50, 49, 51, 55, 56, 59, 61, 66, 68, 37.566 + 70, 73, 76, 77, 80, 82, 84, 84, 83, 83, 84, 85, 88, 90, 89, 87, 37.567 + 86, 84, 81, 81, 84, 87, 88, 86, 85, 87, 91, 93, 94, 92, 94, 101, 37.568 + 98, 91, 86, 85, 88, 90, 89, 89, 89, 88, 88, 87, 87, 86, 85, 82, 37.569 + 81, 80, 79, 77, 77, 76, 75, 73, 73, 72, 71, 73, 73, 72, 71, 73, 37.570 + 73, 72, 72, 72, 72, 72, 72, 72, 73, 75, 77, 80, 85, 89, 99, 94, 37.571 + 68, 61, 55, 64, 46, 52, 115, 117, 118, 121, 123, 124, 125, 124, 122, 62, 37.572 + 34, 26, 24, 27, 41, 71, 68, 63, 52, 45, 38, 36, 32, 30, 31, 30, 37.573 + 43, 44, 45, 46, 46, 47, 48, 49, 48, 50, 52, 54, 57, 59, 63, 64, 37.574 + 67, 70, 72, 73, 75, 77, 80, 80, 78, 79, 81, 83, 86, 86, 84, 83, 37.575 + 82, 81, 79, 79, 82, 85, 85, 83, 81, 82, 85, 88, 90, 87, 88, 95, 37.576 + 93, 87, 83, 81, 84, 86, 86, 84, 86, 85, 84, 84, 83, 82, 81, 78, 37.577 + 77, 76, 75, 73, 72, 72, 71, 69, 69, 68, 67, 68, 68, 67, 67, 69, 37.578 + 69, 68, 67, 67, 67, 67, 67, 68, 69, 72, 75, 77, 82, 88, 98, 91, 37.579 + 71, 62, 50, 75, 55, 61, 118, 113, 113, 115, 118, 120, 120, 120, 125, 78, 37.580 + 32, 22, 47, 36, 43, 70, 69, 61, 51, 43, 37, 35, 31, 30, 30, 29, 37.581 + 43, 44, 45, 46, 46, 47, 47, 48, 48, 49, 51, 52, 54, 56, 58, 60, 37.582 + 63, 65, 66, 67, 69, 71, 74, 75, 73, 75, 77, 80, 83, 81, 79, 78, 37.583 + 77, 75, 74, 75, 78, 80, 80, 78, 77, 78, 80, 83, 85, 82, 83, 89, 37.584 + 88, 84, 78, 75, 78, 81, 81, 80, 80, 79, 78, 78, 78, 77, 76, 74, 37.585 + 72, 72, 71, 69, 68, 67, 66, 66, 66, 65, 64, 63, 63, 62, 62, 64, 37.586 + 63, 62, 62, 61, 61, 61, 61, 62, 64, 67, 70, 73, 79, 85, 95, 90, 37.587 + 75, 68, 65, 85, 59, 62, 118, 112, 111, 112, 113, 115, 118, 121, 123, 72, 37.588 + 40, 45, 65, 33, 46, 70, 69, 61, 51, 43, 37, 34, 31, 29, 30, 29, 37.589 + 42, 43, 44, 45, 45, 46, 46, 47, 48, 49, 50, 51, 51, 53, 55, 56, 37.590 + 59, 61, 62, 63, 64, 67, 69, 70, 69, 71, 74, 77, 80, 77, 75, 73, 37.591 + 72, 70, 69, 71, 74, 75, 75, 75, 73, 74, 76, 79, 80, 77, 78, 83, 37.592 + 84, 80, 74, 71, 74, 77, 77, 76, 75, 74, 73, 73, 73, 72, 71, 70, 37.593 + 69, 68, 67, 65, 64, 63, 62, 63, 62, 61, 61, 59, 59, 58, 57, 59, 37.594 + 60, 59, 58, 58, 58, 58, 59, 60, 60, 63, 67, 70, 75, 82, 93, 94, 37.595 + 73, 62, 69, 75, 57, 60, 113, 115, 113, 113, 115, 114, 116, 119, 106, 38, 37.596 + 33, 60, 49, 24, 59, 73, 62, 59, 50, 42, 36, 34, 31, 29, 30, 29, 37.597 + 42, 43, 43, 44, 45, 45, 46, 47, 49, 49, 50, 51, 52, 53, 55, 55, 37.598 + 55, 57, 59, 61, 64, 65, 67, 68, 67, 69, 73, 77, 77, 75, 73, 71, 37.599 + 68, 66, 67, 69, 72, 73, 72, 72, 74, 76, 78, 78, 76, 75, 76, 81, 37.600 + 82, 79, 73, 71, 72, 74, 75, 75, 74, 72, 70, 70, 70, 69, 68, 66, 37.601 + 66, 65, 64, 64, 63, 62, 61, 59, 58, 57, 57, 56, 56, 55, 54, 57, 37.602 + 57, 57, 57, 57, 56, 56, 57, 58, 59, 61, 63, 67, 74, 80, 91, 98, 37.603 + 73, 52, 66, 62, 52, 50, 95, 113, 117, 119, 121, 122, 122, 112, 68, 27, 37.604 + 46, 57, 35, 36, 71, 73, 61, 56, 48, 43, 37, 34, 32, 30, 28, 29, 37.605 + 42, 43, 43, 44, 45, 45, 46, 47, 49, 50, 51, 51, 51, 51, 53, 54, 37.606 + 54, 55, 57, 58, 60, 61, 63, 64, 65, 67, 71, 74, 73, 72, 70, 68, 37.607 + 67, 66, 67, 68, 69, 71, 70, 68, 69, 71, 73, 73, 71, 70, 71, 76, 37.608 + 78, 75, 70, 67, 68, 69, 71, 72, 72, 70, 68, 67, 66, 65, 65, 64, 37.609 + 65, 64, 63, 61, 60, 59, 58, 58, 57, 56, 56, 55, 55, 54, 53, 55, 37.610 + 55, 55, 55, 54, 54, 54, 54, 54, 55, 57, 60, 65, 71, 77, 88, 96, 37.611 + 72, 43, 57, 47, 43, 37, 63, 99, 120, 123, 118, 116, 92, 63, 45, 37, 37.612 + 57, 45, 21, 51, 75, 66, 62, 55, 47, 42, 36, 33, 31, 30, 28, 29, 37.613 + 42, 43, 43, 44, 45, 45, 46, 47, 49, 50, 51, 50, 49, 49, 51, 51, 37.614 + 51, 52, 54, 56, 57, 58, 60, 62, 64, 66, 69, 71, 69, 68, 66, 66, 37.615 + 65, 65, 66, 67, 68, 69, 68, 66, 65, 67, 69, 69, 67, 66, 67, 72, 37.616 + 74, 71, 66, 64, 64, 66, 67, 69, 69, 67, 65, 64, 63, 62, 61, 62, 37.617 + 62, 61, 60, 58, 57, 56, 56, 55, 55, 54, 53, 53, 52, 51, 50, 51, 37.618 + 52, 52, 52, 51, 51, 51, 51, 52, 52, 54, 56, 62, 68, 74, 82, 89, 37.619 + 81, 48, 40, 39, 41, 39, 42, 54, 68, 70, 69, 68, 48, 32, 41, 54, 37.620 + 54, 28, 37, 67, 76, 61, 61, 52, 45, 40, 35, 32, 31, 30, 28, 29, 37.621 + 42, 43, 43, 44, 45, 45, 46, 47, 50, 51, 50, 50, 48, 48, 48, 49, 37.622 + 48, 50, 51, 53, 55, 57, 58, 60, 63, 66, 69, 69, 67, 66, 65, 64, 37.623 + 62, 62, 64, 66, 67, 68, 67, 65, 64, 66, 68, 68, 66, 65, 66, 70, 37.624 + 73, 71, 67, 64, 64, 65, 67, 66, 65, 63, 62, 61, 61, 60, 60, 60, 37.625 + 60, 59, 59, 58, 57, 56, 55, 54, 53, 52, 51, 51, 50, 49, 49, 50, 37.626 + 50, 50, 50, 49, 49, 49, 49, 51, 51, 53, 55, 61, 66, 72, 79, 82, 37.627 + 90, 70, 43, 38, 38, 46, 45, 53, 52, 50, 50, 43, 44, 47, 56, 57, 37.628 + 37, 28, 60, 75, 72, 59, 55, 49, 43, 39, 34, 31, 30, 30, 28, 29, 37.629 + 42, 43, 43, 44, 45, 45, 46, 47, 52, 51, 49, 49, 49, 48, 48, 47, 37.630 + 47, 48, 50, 51, 54, 55, 57, 58, 61, 65, 66, 65, 64, 64, 64, 63, 37.631 + 58, 59, 62, 64, 65, 66, 66, 63, 63, 65, 66, 66, 65, 63, 65, 69, 37.632 + 72, 70, 66, 63, 62, 64, 66, 65, 63, 62, 60, 60, 60, 59, 58, 59, 37.633 + 58, 58, 57, 56, 56, 55, 54, 52, 51, 50, 49, 49, 48, 47, 47, 48, 37.634 + 49, 49, 49, 47, 47, 47, 47, 50, 50, 52, 55, 58, 64, 68, 75, 77, 37.635 + 84, 90, 75, 50, 42, 50, 48, 54, 55, 50, 52, 52, 42, 44, 51, 36, 37.636 + 36, 64, 77, 73, 65, 57, 50, 46, 40, 37, 33, 30, 29, 30, 28, 29, 37.637 + 42, 43, 43, 44, 45, 45, 46, 47, 51, 51, 49, 49, 50, 49, 48, 48, 37.638 + 47, 49, 51, 52, 52, 54, 55, 56, 58, 62, 62, 61, 61, 61, 62, 60, 37.639 + 57, 58, 61, 62, 63, 64, 63, 61, 61, 63, 64, 64, 63, 61, 63, 67, 37.640 + 70, 68, 65, 61, 61, 62, 64, 64, 63, 61, 60, 59, 58, 58, 57, 58, 37.641 + 58, 57, 57, 55, 54, 53, 53, 51, 51, 50, 49, 49, 48, 47, 47, 48, 37.642 + 48, 48, 48, 47, 47, 47, 47, 47, 48, 50, 52, 55, 60, 64, 70, 69, 37.643 + 78, 89, 92, 81, 63, 59, 49, 50, 47, 43, 44, 40, 46, 40, 43, 54, 37.644 + 69, 81, 79, 69, 61, 54, 49, 45, 40, 37, 32, 29, 29, 30, 28, 29, 37.645 + 42, 42, 43, 44, 45, 45, 46, 47, 48, 48, 47, 48, 48, 48, 48, 48, 37.646 + 48, 49, 50, 51, 52, 52, 54, 55, 56, 58, 58, 57, 57, 57, 58, 57, 37.647 + 56, 57, 59, 61, 61, 62, 61, 60, 60, 61, 62, 63, 61, 60, 61, 63, 37.648 + 66, 66, 63, 59, 58, 59, 61, 62, 61, 59, 59, 58, 57, 56, 55, 57, 37.649 + 58, 57, 56, 54, 53, 52, 51, 51, 51, 50, 49, 49, 48, 47, 47, 46, 37.650 + 46, 45, 45, 44, 44, 44, 44, 43, 44, 47, 49, 51, 56, 61, 66, 67, 37.651 + 75, 83, 89, 92, 80, 73, 63, 55, 48, 45, 46, 44, 48, 53, 67, 82, 37.652 + 86, 80, 75, 67, 61, 53, 49, 46, 41, 38, 34, 32, 31, 30, 28, 29, 37.653 + 42, 42, 43, 44, 45, 46, 47, 47, 47, 47, 47, 47, 47, 47, 48, 48, 37.654 + 49, 49, 50, 52, 53, 52, 54, 55, 56, 56, 56, 56, 56, 56, 56, 55, 37.655 + 55, 57, 59, 60, 62, 61, 60, 60, 59, 60, 61, 62, 61, 60, 60, 61, 37.656 + 64, 65, 62, 58, 57, 57, 59, 60, 59, 58, 57, 57, 56, 55, 55, 56, 37.657 + 57, 56, 55, 53, 52, 51, 51, 51, 51, 50, 49, 49, 48, 47, 47, 45, 37.658 + 45, 44, 43, 43, 43, 43, 42, 40, 42, 45, 47, 50, 54, 60, 63, 67, 37.659 + 72, 78, 82, 85, 84, 81, 78, 75, 69, 66, 65, 64, 69, 73, 78, 82, 37.660 + 80, 77, 71, 65, 59, 52, 49, 47, 42, 38, 35, 34, 31, 29, 28, 29, 37.661 + 42, 42, 43, 44, 45, 45, 46, 47, 46, 46, 46, 46, 46, 47, 48, 48, 37.662 + 49, 49, 50, 51, 53, 52, 54, 55, 55, 55, 55, 55, 55, 55, 55, 54, 37.663 + 55, 57, 58, 60, 61, 60, 59, 59, 59, 60, 61, 61, 61, 60, 59, 60, 37.664 + 63, 64, 61, 58, 56, 57, 58, 59, 58, 57, 57, 56, 56, 55, 54, 56, 37.665 + 56, 55, 55, 53, 51, 51, 50, 50, 50, 49, 48, 48, 47, 46, 46, 45, 37.666 + 44, 43, 42, 42, 42, 42, 41, 39, 41, 43, 45, 47, 52, 57, 60, 63, 37.667 + 67, 73, 76, 79, 82, 82, 83, 86, 83, 82, 82, 80, 80, 79, 78, 77, 37.668 + 75, 70, 65, 60, 55, 49, 46, 45, 41, 37, 35, 34, 31, 29, 28, 29, 37.669 + 42, 42, 43, 44, 44, 45, 45, 46, 46, 46, 46, 46, 46, 46, 47, 48, 37.670 + 48, 49, 50, 50, 51, 52, 54, 55, 54, 54, 54, 54, 54, 54, 54, 54, 37.671 + 54, 56, 58, 59, 59, 59, 58, 57, 58, 59, 59, 60, 59, 59, 58, 59, 37.672 + 62, 63, 60, 58, 56, 55, 57, 57, 57, 56, 55, 55, 54, 54, 53, 54, 37.673 + 55, 54, 53, 52, 51, 50, 49, 49, 48, 48, 47, 46, 46, 45, 44, 44, 37.674 + 43, 42, 42, 42, 42, 42, 41, 38, 39, 42, 43, 45, 49, 53, 57, 59, 37.675 + 63, 68, 70, 72, 74, 76, 77, 77, 77, 78, 78, 78, 75, 73, 72, 72, 37.676 + 69, 64, 59, 56, 51, 46, 43, 42, 39, 35, 33, 33, 31, 29, 28, 29, 37.677 + 42, 42, 43, 44, 44, 44, 45, 45, 45, 45, 45, 45, 45, 46, 47, 47, 37.678 + 48, 48, 49, 50, 50, 51, 54, 55, 53, 53, 53, 53, 53, 53, 53, 53, 37.679 + 54, 55, 57, 58, 59, 58, 57, 56, 57, 58, 59, 59, 59, 58, 57, 58, 37.680 + 61, 62, 59, 57, 55, 54, 55, 56, 56, 55, 54, 54, 53, 52, 52, 53, 37.681 + 54, 53, 52, 51, 50, 49, 49, 48, 47, 47, 46, 45, 45, 44, 43, 43, 37.682 + 43, 42, 41, 41, 41, 41, 41, 38, 39, 40, 41, 43, 47, 51, 53, 56, 37.683 + 59, 63, 66, 68, 70, 70, 70, 73, 75, 76, 76, 74, 72, 71, 69, 68, 37.684 + 64, 59, 55, 52, 49, 43, 41, 39, 37, 34, 32, 32, 30, 29, 29, 29, 37.685 + 42, 42, 43, 43, 43, 44, 45, 45, 45, 45, 45, 45, 45, 45, 46, 47, 37.686 + 47, 48, 49, 49, 49, 50, 54, 54, 52, 52, 52, 52, 52, 52, 52, 52, 37.687 + 53, 55, 57, 58, 58, 57, 56, 56, 56, 57, 58, 58, 58, 57, 56, 57, 37.688 + 60, 61, 58, 56, 55, 53, 54, 55, 55, 54, 53, 53, 52, 51, 51, 53, 37.689 + 53, 52, 51, 51, 50, 49, 49, 47, 47, 46, 45, 45, 44, 43, 42, 43, 37.690 + 42, 42, 41, 41, 41, 41, 40, 37, 38, 38, 39, 41, 44, 48, 50, 53, 37.691 + 55, 59, 62, 63, 65, 65, 65, 68, 71, 71, 69, 66, 65, 64, 63, 61, 37.692 + 59, 54, 51, 48, 44, 39, 38, 37, 35, 32, 31, 31, 30, 29, 29, 29, 37.693 + 42, 42, 43, 43, 43, 44, 45, 45, 45, 45, 45, 45, 45, 45, 46, 47, 37.694 + 47, 48, 49, 49, 49, 50, 54, 54, 52, 52, 52, 52, 52, 52, 52, 52, 37.695 + 53, 55, 56, 57, 57, 56, 56, 55, 55, 56, 57, 58, 57, 56, 55, 56, 37.696 + 60, 60, 57, 56, 55, 53, 53, 54, 54, 53, 53, 53, 52, 51, 50, 52, 37.697 + 52, 51, 51, 51, 50, 49, 48, 47, 46, 45, 45, 44, 44, 43, 42, 42, 37.698 + 42, 41, 41, 41, 41, 41, 40, 37, 37, 38, 38, 40, 42, 46, 48, 49, 37.699 + 52, 55, 57, 56, 58, 61, 61, 63, 66, 66, 64, 64, 61, 59, 57, 55, 37.700 + 54, 50, 47, 44, 40, 36, 35, 35, 33, 31, 30, 30, 30, 29, 29, 29, 37.701 + 42, 42, 43, 43, 43, 43, 43, 43, 42, 43, 43, 44, 44, 45, 46, 47, 37.702 + 47, 47, 48, 49, 49, 51, 53, 53, 51, 51, 51, 50, 50, 50, 50, 51, 37.703 + 53, 53, 54, 55, 55, 55, 55, 55, 55, 56, 57, 57, 56, 55, 54, 55, 37.704 + 57, 59, 57, 54, 52, 50, 50, 53, 54, 53, 53, 51, 50, 50, 49, 51, 37.705 + 51, 50, 50, 50, 50, 49, 48, 47, 46, 45, 45, 44, 44, 43, 43, 43, 37.706 + 43, 42, 41, 41, 40, 39, 38, 37, 38, 39, 40, 40, 42, 44, 46, 49, 37.707 + 51, 53, 54, 55, 55, 57, 58, 60, 60, 60, 60, 59, 57, 55, 54, 52, 37.708 + 49, 46, 44, 41, 39, 36, 34, 34, 32, 30, 29, 29, 29, 29, 29, 29, 37.709 + 42, 42, 42, 42, 42, 42, 42, 42, 41, 42, 43, 44, 44, 45, 46, 46, 37.710 + 46, 47, 48, 49, 49, 51, 52, 52, 50, 50, 50, 50, 50, 50, 50, 51, 37.711 + 52, 53, 54, 54, 54, 54, 54, 54, 54, 55, 56, 56, 55, 54, 53, 54, 37.712 + 57, 58, 56, 53, 51, 50, 50, 52, 53, 53, 53, 51, 50, 49, 48, 50, 37.713 + 51, 50, 49, 49, 49, 49, 48, 47, 46, 45, 45, 44, 44, 44, 44, 44, 37.714 + 43, 42, 41, 41, 40, 38, 38, 38, 38, 40, 40, 40, 41, 43, 45, 46, 37.715 + 47, 49, 51, 51, 52, 53, 54, 55, 55, 55, 55, 54, 52, 51, 50, 49, 37.716 + 46, 43, 42, 40, 38, 35, 34, 33, 32, 30, 29, 29, 29, 29, 29, 29, 37.717 + 42, 42, 42, 42, 42, 42, 42, 41, 41, 42, 42, 43, 44, 44, 45, 46, 37.718 + 46, 47, 47, 48, 49, 50, 52, 51, 49, 49, 49, 49, 49, 49, 49, 50, 37.719 + 52, 53, 53, 54, 53, 53, 53, 53, 54, 55, 55, 55, 54, 53, 52, 53, 37.720 + 56, 58, 56, 53, 51, 49, 49, 51, 52, 52, 52, 51, 50, 49, 48, 50, 37.721 + 50, 49, 49, 49, 49, 48, 47, 47, 46, 45, 45, 44, 44, 44, 44, 43, 37.722 + 42, 42, 41, 41, 40, 38, 38, 39, 39, 40, 40, 40, 41, 42, 43, 43, 37.723 + 45, 46, 47, 47, 47, 48, 49, 51, 51, 51, 50, 48, 47, 45, 45, 44, 37.724 + 42, 40, 38, 38, 37, 34, 33, 33, 31, 30, 29, 29, 29, 29, 29, 29, 37.725 + 42, 42, 42, 42, 42, 42, 42, 41, 41, 41, 42, 43, 43, 44, 44, 45, 37.726 + 46, 46, 47, 48, 49, 50, 51, 50, 49, 49, 49, 49, 49, 49, 49, 49, 37.727 + 51, 52, 53, 53, 52, 52, 52, 52, 53, 53, 54, 54, 53, 52, 51, 52, 37.728 + 55, 57, 55, 52, 50, 49, 49, 50, 51, 51, 51, 50, 49, 48, 48, 49, 37.729 + 49, 49, 48, 49, 48, 47, 47, 47, 46, 45, 45, 43, 43, 43, 43, 43, 37.730 + 42, 41, 41, 41, 40, 38, 38, 39, 39, 39, 39, 39, 39, 40, 41, 43, 37.731 + 43, 44, 45, 45, 45, 45, 46, 48, 48, 48, 48, 46, 44, 43, 41, 39, 37.732 + 38, 37, 36, 36, 35, 33, 32, 31, 31, 30, 29, 29, 29, 29, 28, 28, 37.733 + 41, 41, 41, 41, 41, 41, 41, 41, 40, 41, 42, 42, 43, 43, 44, 45, 37.734 + 45, 46, 47, 48, 50, 50, 50, 48, 48, 48, 48, 48, 48, 48, 48, 49, 37.735 + 51, 51, 53, 52, 51, 51, 51, 51, 52, 52, 53, 53, 52, 51, 50, 51, 37.736 + 54, 56, 53, 51, 50, 48, 48, 49, 50, 50, 50, 49, 49, 48, 47, 49, 37.737 + 49, 48, 48, 48, 48, 47, 46, 46, 46, 45, 45, 43, 43, 43, 43, 42, 37.738 + 42, 41, 40, 40, 40, 38, 38, 39, 38, 38, 38, 38, 38, 38, 39, 43, 37.739 + 43, 43, 44, 44, 43, 43, 43, 46, 46, 46, 45, 44, 42, 40, 39, 37, 37.740 + 36, 34, 34, 35, 33, 31, 31, 30, 30, 30, 29, 29, 29, 29, 28, 28, 37.741 + 41, 41, 41, 41, 41, 41, 41, 40, 40, 40, 41, 42, 42, 43, 44, 44, 37.742 + 45, 45, 46, 47, 50, 49, 49, 48, 47, 47, 47, 47, 48, 48, 48, 49, 37.743 + 50, 51, 52, 52, 50, 50, 50, 50, 51, 51, 52, 52, 51, 50, 49, 50, 37.744 + 53, 55, 52, 51, 50, 48, 48, 49, 49, 49, 49, 49, 48, 47, 47, 48, 37.745 + 49, 48, 47, 47, 47, 46, 46, 46, 46, 45, 45, 42, 42, 42, 42, 42, 37.746 + 41, 40, 40, 40, 40, 38, 38, 40, 40, 39, 38, 39, 39, 38, 39, 41, 37.747 + 41, 42, 40, 41, 41, 39, 40, 42, 42, 42, 42, 41, 39, 37, 36, 35, 37.748 + 34, 33, 32, 32, 31, 30, 30, 29, 30, 30, 29, 29, 29, 29, 28, 27, 37.749 + 40, 40, 40, 40, 41, 41, 41, 40, 40, 40, 41, 41, 41, 42, 43, 43, 37.750 + 44, 45, 46, 47, 49, 49, 49, 48, 47, 47, 47, 47, 47, 48, 48, 48, 37.751 + 50, 50, 51, 51, 50, 50, 50, 49, 50, 51, 52, 52, 50, 50, 49, 50, 37.752 + 53, 55, 53, 51, 49, 48, 48, 49, 49, 49, 49, 49, 48, 48, 47, 48, 37.753 + 48, 47, 47, 47, 47, 46, 46, 46, 45, 44, 44, 42, 42, 42, 42, 42, 37.754 + 41, 40, 40, 40, 39, 38, 38, 39, 39, 38, 37, 38, 38, 37, 37, 39, 37.755 + 39, 39, 38, 39, 39, 38, 39, 40, 40, 39, 39, 38, 37, 36, 35, 34, 37.756 + 33, 32, 31, 30, 30, 29, 29, 29, 30, 29, 29, 29, 29, 29, 28, 27, 37.757 + 38, 39, 39, 40, 41, 41, 41, 40, 40, 40, 41, 41, 41, 41, 42, 43, 37.758 + 43, 44, 46, 48, 49, 49, 49, 49, 48, 48, 48, 47, 46, 47, 48, 48, 37.759 + 49, 49, 50, 50, 50, 50, 50, 49, 49, 50, 50, 51, 50, 49, 49, 50, 37.760 + 53, 55, 54, 52, 50, 50, 49, 50, 51, 51, 51, 50, 49, 48, 47, 47, 37.761 + 47, 47, 47, 46, 46, 46, 46, 44, 43, 43, 42, 42, 42, 42, 42, 42, 37.762 + 42, 41, 41, 40, 39, 38, 38, 37, 37, 36, 36, 36, 36, 36, 36, 37, 37.763 + 37, 37, 37, 37, 37, 37, 37, 38, 37, 36, 36, 37, 36, 35, 34, 32, 37.764 + 31, 30, 29, 29, 28, 28, 29, 30, 30, 29, 29, 29, 29, 29, 28, 27, 37.765 + 38, 39, 39, 40, 41, 41, 41, 40, 40, 40, 41, 41, 41, 41, 42, 43, 37.766 + 43, 44, 46, 48, 49, 49, 49, 49, 49, 49, 49, 48, 47, 48, 48, 48, 37.767 + 49, 49, 50, 50, 50, 50, 50, 49, 49, 50, 50, 51, 50, 49, 48, 50, 37.768 + 53, 55, 55, 53, 51, 50, 50, 50, 51, 51, 51, 51, 50, 49, 48, 47, 37.769 + 47, 47, 47, 46, 46, 46, 46, 44, 43, 43, 42, 42, 42, 42, 42, 42, 37.770 + 42, 41, 41, 40, 39, 38, 38, 37, 37, 36, 36, 36, 36, 36, 36, 36, 37.771 + 36, 36, 36, 36, 36, 36, 36, 36, 35, 34, 34, 35, 34, 33, 32, 30, 37.772 + 30, 29, 28, 29, 28, 27, 28, 30, 30, 29, 29, 29, 29, 29, 28, 27, 37.773 + 38, 39, 39, 40, 41, 41, 41, 40, 40, 40, 41, 41, 41, 41, 42, 43, 37.774 + 43, 44, 46, 48, 49, 49, 49, 49, 49, 49, 49, 48, 47, 48, 48, 48, 37.775 + 48, 49, 49, 49, 49, 49, 49, 49, 49, 50, 50, 50, 50, 49, 48, 50, 37.776 + 53, 55, 55, 53, 51, 50, 50, 50, 51, 51, 51, 51, 50, 49, 48, 47, 37.777 + 47, 47, 47, 46, 46, 46, 46, 44, 43, 43, 42, 42, 42, 42, 42, 42, 37.778 + 42, 41, 41, 40, 39, 38, 38, 37, 37, 36, 36, 36, 36, 36, 36, 36, 37.779 + 36, 36, 35, 34, 34, 34, 34, 34, 33, 33, 32, 33, 32, 31, 30, 29, 37.780 + 28, 27, 27, 29, 28, 27, 28, 30, 30, 29, 29, 29, 29, 29, 28, 27, 37.781 + 69, 69, 70, 72, 73, 74, 75, 76, 77, 77, 79, 80, 82, 83, 85, 86, 37.782 + 87, 90, 93, 95, 97, 100, 102, 102, 102, 104, 110, 114, 116, 118, 116, 115, 37.783 + 125, 127, 122, 122, 126, 129, 135, 142, 132, 139, 137, 142, 144, 144, 140, 136, 37.784 + 143, 133, 130, 132, 131, 126, 122, 122, 123, 116, 112, 116, 116, 111, 105, 102, 37.785 + 100, 97, 95, 97, 98, 96, 96, 95, 93, 90, 88, 85, 83, 82, 81, 78, 37.786 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.787 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.788 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 46, 45, 46, 45, 45, 46, 37.789 + 69, 69, 70, 72, 73, 74, 75, 76, 77, 78, 79, 80, 82, 84, 86, 87, 37.790 + 87, 89, 93, 95, 98, 101, 103, 104, 104, 105, 109, 113, 117, 120, 118, 117, 37.791 + 126, 130, 127, 126, 128, 132, 138, 146, 138, 142, 141, 145, 147, 147, 143, 140, 37.792 + 147, 137, 135, 135, 132, 126, 125, 124, 123, 117, 115, 119, 116, 111, 105, 102, 37.793 + 101, 98, 98, 99, 98, 97, 96, 95, 93, 90, 88, 85, 83, 82, 81, 78, 37.794 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.795 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.796 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 46, 46, 46, 46, 45, 46, 37.797 + 69, 69, 70, 72, 73, 74, 75, 76, 77, 78, 80, 81, 83, 85, 87, 88, 37.798 + 88, 90, 93, 96, 100, 103, 106, 108, 108, 108, 109, 113, 118, 121, 122, 121, 37.799 + 127, 134, 132, 130, 130, 134, 141, 149, 144, 145, 147, 149, 150, 150, 147, 145, 37.800 + 151, 142, 140, 139, 134, 127, 128, 127, 124, 120, 121, 122, 117, 111, 105, 102, 37.801 + 102, 101, 101, 100, 99, 98, 96, 94, 92, 89, 87, 85, 83, 82, 81, 78, 37.802 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.803 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.804 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 46, 46, 47, 46, 45, 46, 37.805 + 69, 69, 70, 72, 73, 74, 75, 76, 78, 79, 80, 82, 84, 86, 88, 89, 37.806 + 89, 92, 95, 98, 102, 105, 109, 111, 112, 112, 112, 114, 120, 124, 126, 126, 37.807 + 127, 134, 136, 134, 132, 135, 142, 151, 151, 148, 152, 153, 154, 154, 150, 150, 37.808 + 154, 145, 145, 143, 137, 130, 133, 131, 127, 124, 126, 123, 118, 111, 107, 105, 37.809 + 104, 105, 104, 103, 101, 99, 97, 94, 92, 90, 88, 85, 84, 83, 81, 78, 37.810 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.811 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.812 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 47, 47, 47, 47, 46, 46, 37.813 + 69, 69, 70, 72, 73, 74, 75, 76, 79, 80, 81, 82, 85, 87, 89, 91, 37.814 + 92, 95, 99, 101, 104, 108, 111, 114, 116, 118, 118, 118, 122, 126, 130, 132, 37.815 + 130, 135, 141, 140, 135, 138, 146, 155, 158, 151, 158, 157, 159, 159, 155, 156, 37.816 + 158, 149, 150, 145, 140, 135, 137, 135, 130, 130, 129, 123, 117, 111, 109, 109, 37.817 + 107, 107, 107, 104, 102, 100, 98, 94, 92, 89, 87, 86, 84, 83, 82, 78, 37.818 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.819 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.820 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 47, 47, 48, 47, 46, 46, 37.821 + 69, 69, 70, 72, 73, 74, 75, 76, 79, 81, 82, 82, 87, 88, 90, 92, 37.822 + 96, 98, 102, 104, 106, 110, 115, 117, 120, 123, 124, 123, 123, 128, 135, 140, 37.823 + 139, 139, 148, 149, 142, 146, 154, 161, 165, 156, 165, 164, 167, 167, 163, 163, 37.824 + 163, 155, 157, 149, 144, 141, 140, 137, 134, 136, 131, 123, 116, 112, 112, 113, 37.825 + 111, 109, 108, 106, 104, 101, 98, 94, 92, 89, 87, 86, 84, 83, 82, 78, 37.826 + 77, 76, 76, 74, 72, 71, 71, 70, 69, 68, 67, 67, 66, 65, 64, 63, 37.827 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 55, 54, 54, 37.828 + 54, 54, 54, 52, 50, 50, 49, 48, 48, 48, 47, 48, 48, 48, 46, 46, 37.829 + 69, 69, 70, 72, 73, 74, 75, 76, 80, 81, 82, 83, 88, 89, 91, 94, 37.830 + 98, 101, 104, 107, 109, 113, 117, 119, 123, 126, 128, 128, 127, 129, 136, 143, 37.831 + 145, 142, 149, 156, 148, 150, 158, 163, 171, 162, 169, 170, 172, 173, 167, 171, 37.832 + 167, 161, 161, 152, 146, 147, 144, 138, 140, 140, 132, 122, 117, 115, 115, 115, 37.833 + 113, 111, 109, 106, 103, 100, 97, 93, 91, 89, 87, 86, 85, 84, 82, 78, 37.834 + 77, 77, 76, 74, 73, 72, 71, 71, 70, 69, 67, 67, 66, 65, 64, 63, 37.835 + 62, 61, 61, 61, 60, 59, 58, 58, 58, 58, 57, 57, 56, 56, 54, 54, 37.836 + 54, 54, 53, 52, 51, 50, 50, 48, 48, 48, 48, 49, 49, 49, 47, 46, 37.837 + 69, 69, 70, 72, 73, 74, 75, 76, 80, 82, 83, 85, 88, 90, 94, 97, 37.838 + 101, 104, 108, 111, 114, 117, 121, 123, 126, 130, 133, 136, 134, 132, 137, 143, 37.839 + 150, 148, 148, 161, 157, 153, 161, 166, 177, 170, 174, 177, 178, 179, 171, 179, 37.840 + 170, 169, 165, 157, 151, 154, 149, 144, 150, 142, 131, 123, 121, 120, 118, 117, 37.841 + 116, 113, 111, 106, 102, 98, 95, 93, 91, 89, 88, 87, 86, 84, 83, 79, 37.842 + 78, 78, 77, 76, 74, 72, 72, 71, 71, 70, 68, 67, 66, 65, 64, 63, 37.843 + 62, 62, 61, 61, 60, 59, 59, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.844 + 54, 54, 53, 52, 52, 52, 51, 50, 49, 48, 48, 50, 50, 50, 48, 47, 37.845 + 69, 69, 70, 72, 74, 74, 75, 76, 81, 82, 85, 87, 89, 92, 95, 99, 37.846 + 105, 109, 113, 117, 120, 122, 126, 128, 130, 135, 140, 141, 140, 140, 141, 145, 37.847 + 153, 157, 154, 161, 169, 161, 162, 172, 183, 179, 181, 184, 184, 185, 178, 186, 37.848 + 176, 178, 171, 161, 163, 160, 151, 154, 155, 142, 130, 125, 125, 124, 122, 120, 37.849 + 118, 114, 110, 106, 103, 98, 95, 93, 91, 89, 88, 87, 86, 84, 83, 79, 37.850 + 78, 78, 77, 76, 74, 72, 72, 71, 71, 70, 68, 67, 66, 65, 65, 63, 37.851 + 63, 62, 61, 61, 60, 59, 59, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.852 + 54, 54, 53, 52, 52, 52, 51, 50, 49, 48, 48, 50, 50, 50, 48, 46, 37.853 + 69, 70, 71, 73, 74, 75, 76, 77, 81, 83, 87, 89, 91, 94, 99, 104, 37.854 + 110, 113, 119, 122, 125, 128, 131, 133, 135, 139, 144, 148, 148, 150, 147, 148, 37.855 + 155, 165, 164, 160, 176, 172, 165, 177, 188, 189, 188, 191, 192, 192, 185, 193, 37.856 + 183, 186, 176, 166, 172, 164, 158, 163, 155, 141, 132, 131, 131, 130, 127, 124, 37.857 + 120, 114, 109, 105, 102, 99, 96, 94, 92, 90, 89, 87, 86, 84, 83, 79, 37.858 + 78, 78, 77, 76, 74, 72, 72, 71, 71, 70, 68, 68, 67, 66, 65, 64, 37.859 + 63, 62, 62, 62, 61, 60, 59, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.860 + 54, 54, 53, 52, 52, 52, 52, 50, 49, 48, 48, 50, 50, 50, 48, 46, 37.861 + 70, 71, 71, 73, 75, 75, 76, 77, 81, 85, 89, 91, 93, 97, 103, 107, 37.862 + 112, 116, 122, 126, 129, 132, 135, 137, 139, 143, 147, 152, 156, 158, 157, 154, 37.863 + 156, 168, 174, 166, 175, 182, 173, 178, 191, 198, 194, 198, 200, 199, 193, 200, 37.864 + 191, 192, 179, 174, 175, 167, 168, 166, 152, 142, 139, 139, 138, 134, 130, 124, 37.865 + 119, 113, 108, 104, 102, 100, 98, 95, 94, 92, 90, 88, 87, 85, 83, 79, 37.866 + 78, 78, 77, 76, 74, 72, 72, 71, 71, 70, 69, 68, 68, 67, 66, 65, 37.867 + 64, 63, 63, 62, 61, 60, 60, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.868 + 54, 54, 53, 53, 53, 53, 52, 50, 49, 48, 48, 50, 50, 50, 48, 46, 37.869 + 70, 71, 72, 74, 75, 76, 77, 78, 82, 86, 90, 92, 95, 99, 106, 110, 37.870 + 115, 120, 127, 131, 133, 136, 139, 142, 145, 147, 151, 154, 159, 163, 164, 163, 37.871 + 160, 167, 179, 177, 177, 189, 187, 183, 196, 208, 200, 206, 210, 208, 202, 207, 37.872 + 200, 196, 182, 184, 177, 175, 176, 165, 151, 147, 148, 146, 142, 136, 130, 123, 37.873 + 117, 112, 107, 104, 102, 100, 98, 96, 94, 92, 91, 88, 87, 85, 83, 79, 37.874 + 78, 78, 77, 76, 74, 72, 72, 71, 71, 70, 69, 69, 68, 67, 66, 65, 37.875 + 64, 64, 63, 63, 62, 61, 60, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.876 + 54, 54, 53, 53, 53, 53, 52, 50, 49, 48, 48, 50, 50, 50, 48, 46, 37.877 + 71, 71, 72, 74, 76, 77, 77, 79, 82, 87, 91, 93, 96, 101, 107, 113, 37.878 + 120, 126, 132, 137, 140, 142, 145, 148, 152, 153, 154, 156, 161, 166, 171, 173, 37.879 + 167, 165, 178, 190, 185, 194, 198, 189, 202, 217, 206, 214, 220, 217, 212, 214, 37.880 + 209, 200, 186, 193, 181, 187, 182, 163, 154, 153, 155, 150, 145, 137, 129, 121, 37.881 + 115, 111, 107, 103, 101, 100, 99, 96, 94, 92, 91, 88, 87, 85, 83, 80, 37.882 + 79, 78, 77, 76, 74, 73, 72, 71, 71, 70, 69, 69, 68, 67, 66, 65, 37.883 + 65, 64, 63, 63, 62, 61, 60, 59, 59, 58, 58, 58, 57, 56, 55, 54, 37.884 + 54, 54, 54, 54, 54, 54, 53, 51, 50, 49, 48, 50, 50, 50, 48, 46, 37.885 + 71, 72, 74, 76, 76, 78, 80, 82, 87, 89, 93, 96, 100, 106, 111, 118, 37.886 + 126, 134, 144, 144, 145, 152, 158, 156, 159, 161, 162, 164, 163, 174, 179, 180, 37.887 + 182, 176, 180, 194, 201, 194, 211, 192, 209, 225, 218, 222, 230, 225, 226, 222, 37.888 + 217, 207, 197, 198, 195, 197, 186, 167, 163, 164, 159, 155, 146, 135, 126, 120, 37.889 + 117, 113, 109, 106, 104, 102, 99, 96, 95, 93, 92, 89, 88, 85, 84, 80, 37.890 + 79, 77, 77, 75, 75, 73, 71, 69, 70, 69, 69, 68, 67, 66, 65, 64, 37.891 + 63, 62, 62, 63, 62, 62, 62, 59, 58, 57, 57, 56, 55, 54, 54, 55, 37.892 + 54, 53, 53, 54, 53, 52, 53, 52, 51, 50, 49, 50, 50, 49, 47, 46, 37.893 + 71, 72, 75, 76, 76, 79, 82, 85, 90, 93, 95, 99, 106, 113, 117, 125, 37.894 + 133, 140, 145, 152, 156, 152, 153, 160, 163, 162, 161, 166, 171, 168, 184, 198, 37.895 + 194, 188, 178, 188, 213, 201, 212, 211, 208, 233, 228, 234, 240, 236, 238, 228, 37.896 + 223, 204, 211, 209, 209, 197, 179, 172, 173, 173, 163, 155, 144, 134, 126, 121, 37.897 + 118, 115, 111, 108, 106, 103, 101, 97, 95, 92, 91, 90, 88, 85, 84, 81, 37.898 + 80, 79, 78, 76, 75, 74, 73, 70, 70, 70, 70, 68, 67, 66, 65, 64, 37.899 + 63, 62, 62, 63, 63, 63, 62, 60, 58, 58, 57, 56, 55, 54, 54, 55, 37.900 + 54, 53, 53, 54, 53, 52, 53, 54, 52, 51, 50, 50, 49, 49, 47, 46, 37.901 + 71, 72, 75, 76, 76, 80, 83, 87, 91, 95, 101, 105, 113, 120, 125, 134, 37.902 + 144, 147, 147, 153, 152, 155, 155, 163, 164, 166, 169, 168, 171, 183, 186, 190, 37.903 + 196, 200, 191, 190, 210, 214, 214, 231, 220, 240, 235, 241, 246, 243, 243, 234, 37.904 + 237, 221, 225, 212, 219, 195, 184, 187, 179, 177, 166, 153, 143, 134, 127, 122, 37.905 + 119, 116, 113, 109, 106, 104, 102, 97, 95, 94, 91, 89, 88, 86, 84, 82, 37.906 + 82, 80, 79, 78, 77, 76, 74, 72, 71, 71, 71, 69, 68, 67, 66, 65, 37.907 + 64, 63, 62, 64, 64, 64, 64, 62, 61, 60, 59, 59, 58, 57, 57, 56, 37.908 + 55, 54, 54, 54, 53, 52, 53, 54, 53, 51, 51, 50, 50, 49, 47, 46, 37.909 + 71, 72, 75, 77, 77, 80, 84, 89, 93, 99, 106, 112, 120, 127, 133, 140, 37.910 + 146, 150, 153, 154, 151, 150, 140, 130, 128, 133, 147, 159, 171, 177, 182, 189, 37.911 + 195, 196, 194, 194, 202, 224, 224, 229, 229, 237, 245, 246, 249, 247, 246, 242, 37.912 + 234, 225, 228, 226, 204, 197, 195, 193, 183, 175, 166, 152, 142, 135, 129, 123, 37.913 + 120, 117, 114, 109, 106, 103, 101, 98, 96, 94, 92, 90, 89, 87, 85, 84, 37.914 + 84, 82, 82, 79, 79, 78, 77, 75, 74, 73, 72, 70, 69, 68, 67, 66, 37.915 + 65, 64, 63, 65, 65, 65, 64, 63, 62, 61, 61, 60, 60, 59, 59, 58, 37.916 + 57, 56, 55, 54, 53, 53, 53, 55, 53, 52, 51, 50, 50, 49, 47, 46, 37.917 + 71, 72, 75, 77, 77, 81, 86, 91, 95, 103, 112, 119, 127, 135, 140, 147, 37.918 + 149, 154, 156, 144, 124, 102, 85, 71, 67, 71, 89, 101, 126, 161, 178, 184, 37.919 + 192, 167, 173, 186, 197, 221, 232, 235, 237, 228, 245, 241, 243, 242, 242, 238, 37.920 + 226, 232, 223, 221, 194, 198, 202, 199, 187, 174, 162, 154, 144, 137, 131, 125, 37.921 + 122, 119, 116, 110, 107, 104, 102, 100, 99, 96, 94, 93, 91, 89, 87, 87, 37.922 + 86, 85, 85, 82, 81, 80, 80, 77, 76, 75, 74, 72, 71, 70, 69, 67, 37.923 + 66, 65, 64, 65, 65, 65, 65, 65, 64, 63, 63, 63, 62, 61, 61, 60, 37.924 + 60, 58, 57, 56, 55, 54, 55, 55, 54, 52, 51, 51, 50, 50, 48, 46, 37.925 + 71, 73, 75, 77, 78, 82, 87, 92, 97, 105, 116, 126, 134, 142, 147, 154, 37.926 + 158, 155, 133, 101, 66, 45, 36, 36, 35, 42, 58, 61, 70, 92, 134, 176, 37.927 + 186, 96, 80, 112, 185, 217, 234, 228, 153, 121, 120, 120, 125, 123, 125, 123, 37.928 + 130, 138, 110, 91, 98, 106, 116, 164, 180, 174, 161, 156, 147, 140, 133, 127, 37.929 + 123, 119, 116, 113, 110, 107, 105, 103, 102, 99, 98, 96, 95, 92, 90, 89, 37.930 + 89, 87, 86, 85, 84, 83, 81, 80, 79, 76, 74, 73, 73, 71, 70, 68, 37.931 + 68, 67, 66, 67, 67, 67, 67, 67, 66, 65, 65, 65, 65, 64, 64, 64, 37.932 + 63, 62, 60, 59, 58, 57, 57, 56, 54, 53, 52, 51, 50, 50, 48, 46, 37.933 + 71, 73, 76, 78, 79, 83, 88, 94, 98, 107, 120, 131, 140, 147, 152, 157, 37.934 + 154, 131, 81, 44, 36, 32, 29, 36, 41, 52, 63, 60, 58, 57, 73, 114, 37.935 + 149, 53, 57, 76, 162, 220, 234, 245, 123, 91, 74, 82, 85, 83, 89, 92, 37.936 + 93, 66, 55, 64, 68, 93, 103, 125, 164, 172, 163, 158, 150, 142, 135, 128, 37.937 + 124, 120, 117, 116, 115, 112, 109, 106, 105, 102, 100, 99, 97, 96, 93, 91, 37.938 + 90, 89, 88, 86, 85, 84, 84, 82, 80, 78, 76, 74, 73, 72, 71, 69, 37.939 + 69, 68, 67, 68, 68, 68, 69, 69, 69, 68, 68, 68, 67, 66, 66, 67, 37.940 + 66, 65, 63, 61, 60, 59, 58, 56, 55, 53, 52, 50, 50, 49, 48, 47, 37.941 + 71, 73, 77, 79, 80, 85, 88, 96, 100, 111, 122, 135, 141, 153, 156, 158, 37.942 + 125, 67, 47, 40, 37, 44, 56, 61, 63, 61, 58, 55, 58, 60, 57, 69, 37.943 + 97, 56, 53, 57, 137, 232, 242, 242, 127, 95, 84, 92, 92, 96, 102, 88, 37.944 + 67, 48, 54, 83, 94, 109, 110, 93, 163, 175, 167, 157, 150, 141, 136, 130, 37.945 + 126, 123, 120, 119, 117, 115, 113, 110, 108, 107, 105, 102, 101, 99, 97, 95, 37.946 + 94, 93, 92, 90, 89, 87, 86, 85, 84, 82, 80, 76, 75, 73, 72, 71, 37.947 + 71, 71, 71, 72, 72, 73, 74, 74, 74, 74, 74, 74, 73, 72, 72, 71, 37.948 + 70, 68, 66, 66, 66, 63, 61, 59, 56, 53, 51, 49, 47, 47, 48, 48, 37.949 + 71, 73, 77, 79, 81, 87, 90, 98, 103, 115, 126, 137, 146, 155, 155, 134, 37.950 + 79, 51, 45, 46, 52, 58, 57, 56, 71, 81, 80, 72, 65, 61, 54, 66, 37.951 + 75, 72, 71, 65, 133, 232, 247, 243, 133, 88, 85, 90, 101, 91, 111, 69, 37.952 + 60, 55, 69, 104, 119, 133, 126, 96, 162, 177, 167, 158, 152, 144, 140, 135, 37.953 + 132, 129, 126, 124, 122, 120, 119, 115, 113, 111, 110, 106, 104, 102, 100, 99, 37.954 + 97, 96, 95, 94, 93, 90, 89, 88, 86, 84, 83, 78, 77, 75, 74, 73, 37.955 + 73, 73, 73, 76, 77, 78, 78, 78, 78, 78, 78, 78, 77, 76, 76, 76, 37.956 + 75, 73, 71, 70, 69, 66, 64, 62, 59, 56, 53, 50, 48, 47, 48, 48, 37.957 + 71, 73, 77, 79, 82, 88, 92, 101, 108, 119, 132, 143, 150, 153, 144, 94, 37.958 + 64, 53, 47, 45, 48, 49, 55, 89, 118, 133, 138, 132, 105, 80, 61, 66, 37.959 + 71, 71, 65, 66, 137, 233, 250, 248, 173, 119, 91, 79, 81, 70, 54, 17, 37.960 + 34, 68, 95, 125, 122, 110, 106, 110, 165, 178, 169, 160, 155, 149, 146, 141, 37.961 + 138, 135, 132, 129, 128, 126, 124, 120, 118, 116, 115, 111, 109, 106, 105, 104, 37.962 + 102, 101, 100, 100, 98, 96, 95, 92, 90, 88, 86, 81, 80, 78, 77, 76, 37.963 + 76, 77, 78, 80, 81, 83, 83, 83, 83, 83, 83, 84, 83, 82, 82, 82, 37.964 + 80, 78, 76, 73, 73, 70, 67, 65, 61, 58, 55, 51, 48, 48, 47, 47, 37.965 + 72, 74, 78, 80, 84, 90, 94, 104, 112, 125, 137, 149, 155, 151, 100, 48, 37.966 + 43, 37, 31, 35, 42, 47, 90, 142, 160, 171, 179, 179, 171, 139, 83, 74, 37.967 + 72, 83, 64, 62, 138, 232, 249, 254, 238, 191, 145, 90, 81, 66, 18, 19, 37.968 + 71, 110, 130, 126, 86, 111, 132, 145, 175, 178, 172, 166, 161, 155, 151, 145, 37.969 + 142, 140, 137, 133, 132, 130, 128, 125, 123, 121, 119, 116, 114, 113, 112, 110, 37.970 + 108, 107, 107, 106, 105, 102, 100, 97, 94, 91, 89, 85, 83, 81, 79, 79, 37.971 + 80, 81, 82, 83, 85, 87, 88, 88, 88, 88, 88, 89, 88, 87, 87, 88, 37.972 + 86, 83, 80, 78, 76, 73, 69, 66, 62, 58, 56, 53, 49, 48, 47, 47, 37.973 + 73, 75, 79, 81, 86, 92, 97, 107, 118, 131, 143, 153, 160, 136, 40, 30, 37.974 + 37, 38, 41, 47, 46, 83, 152, 170, 175, 178, 184, 187, 192, 187, 142, 93, 37.975 + 76, 72, 64, 65, 135, 231, 251, 253, 251, 244, 237, 172, 111, 56, 78, 115, 37.976 + 131, 137, 145, 93, 98, 172, 191, 193, 192, 185, 180, 175, 169, 162, 158, 151, 37.977 + 148, 145, 143, 139, 137, 135, 134, 130, 128, 125, 124, 122, 121, 119, 118, 115, 37.978 + 115, 114, 113, 112, 111, 109, 107, 103, 99, 95, 93, 88, 86, 84, 83, 83, 37.979 + 85, 87, 87, 87, 90, 92, 94, 95, 95, 95, 95, 97, 96, 95, 94, 93, 37.980 + 91, 89, 87, 84, 82, 78, 73, 68, 64, 59, 57, 54, 50, 49, 47, 46, 37.981 + 73, 75, 79, 81, 87, 94, 99, 110, 121, 135, 147, 157, 156, 96, 32, 51, 37.982 + 57, 55, 52, 45, 58, 128, 173, 181, 181, 182, 185, 187, 190, 191, 185, 118, 37.983 + 75, 69, 78, 80, 143, 238, 254, 253, 252, 251, 251, 220, 90, 57, 104, 135, 37.984 + 136, 132, 135, 80, 150, 213, 220, 212, 204, 197, 188, 182, 175, 167, 161, 157, 37.985 + 154, 151, 149, 146, 143, 141, 139, 136, 134, 132, 130, 126, 124, 123, 121, 118, 37.986 + 118, 117, 116, 116, 114, 112, 110, 107, 104, 99, 96, 91, 89, 87, 85, 85, 37.987 + 87, 89, 90, 92, 94, 97, 99, 102, 101, 101, 102, 104, 103, 102, 101, 99, 37.988 + 97, 95, 93, 91, 88, 84, 78, 72, 67, 62, 58, 55, 51, 49, 47, 46, 37.989 + 74, 75, 79, 83, 88, 96, 104, 114, 124, 137, 152, 156, 138, 65, 42, 62, 37.990 + 61, 54, 44, 36, 88, 158, 177, 182, 180, 182, 185, 188, 196, 196, 199, 160, 37.991 + 83, 86, 90, 88, 137, 238, 254, 252, 252, 252, 253, 238, 55, 98, 130, 138, 37.992 + 136, 128, 119, 88, 186, 234, 236, 219, 207, 199, 188, 183, 178, 169, 162, 159, 37.993 + 156, 152, 151, 151, 146, 144, 142, 142, 142, 140, 136, 132, 129, 126, 124, 120, 37.994 + 119, 123, 121, 122, 119, 116, 114, 115, 110, 106, 100, 95, 92, 90, 88, 87, 37.995 + 89, 92, 96, 97, 101, 105, 106, 109, 108, 108, 109, 109, 108, 109, 110, 107, 37.996 + 102, 100, 100, 97, 95, 85, 83, 77, 71, 66, 60, 56, 52, 50, 48, 46, 37.997 + 74, 75, 80, 85, 89, 98, 107, 118, 128, 141, 155, 156, 117, 45, 40, 61, 37.998 + 53, 50, 45, 46, 121, 172, 180, 176, 176, 177, 182, 186, 194, 200, 205, 198, 37.999 + 112, 87, 83, 82, 123, 234, 254, 255, 255, 254, 253, 250, 98, 127, 143, 137, 37.1000 + 123, 115, 117, 97, 204, 240, 232, 215, 200, 191, 184, 179, 174, 166, 158, 158, 37.1001 + 155, 151, 151, 151, 146, 145, 142, 145, 146, 143, 139, 136, 133, 131, 130, 129, 37.1002 + 125, 130, 128, 125, 129, 127, 120, 118, 118, 113, 104, 100, 97, 94, 92, 91, 37.1003 + 93, 98, 103, 108, 109, 113, 115, 118, 118, 117, 117, 118, 117, 117, 115, 113, 37.1004 + 114, 112, 108, 104, 96, 93, 89, 80, 74, 69, 62, 58, 53, 51, 49, 47, 37.1005 + 74, 75, 80, 85, 90, 100, 109, 120, 132, 147, 154, 150, 73, 15, 29, 54, 37.1006 + 50, 52, 48, 63, 143, 178, 177, 171, 170, 172, 176, 180, 189, 196, 202, 203, 37.1007 + 132, 92, 101, 84, 124, 236, 254, 254, 254, 254, 254, 250, 128, 126, 138, 134, 37.1008 + 127, 125, 124, 93, 198, 223, 209, 198, 190, 184, 179, 176, 172, 165, 158, 158, 37.1009 + 157, 155, 156, 154, 151, 150, 146, 150, 151, 148, 145, 139, 138, 139, 139, 138, 37.1010 + 134, 135, 135, 134, 131, 130, 132, 122, 124, 117, 110, 107, 103, 100, 99, 97, 37.1011 + 100, 106, 111, 115, 114, 117, 121, 125, 124, 123, 123, 124, 125, 126, 127, 125, 37.1012 + 125, 123, 115, 114, 104, 100, 93, 83, 77, 70, 63, 59, 54, 52, 49, 47, 37.1013 + 74, 75, 80, 85, 91, 101, 111, 122, 135, 147, 155, 120, 25, 14, 32, 50, 37.1014 + 56, 61, 47, 84, 157, 174, 168, 164, 164, 166, 169, 173, 179, 188, 195, 199, 37.1015 + 158, 104, 88, 61, 124, 231, 252, 253, 252, 251, 250, 250, 117, 89, 69, 99, 37.1016 + 121, 114, 121, 99, 204, 230, 221, 212, 202, 194, 187, 184, 182, 176, 170, 166, 37.1017 + 166, 167, 167, 165, 164, 160, 155, 150, 150, 148, 145, 147, 148, 147, 147, 146, 37.1018 + 146, 146, 144, 145, 141, 138, 138, 137, 130, 120, 122, 115, 110, 107, 105, 105, 37.1019 + 107, 113, 118, 120, 125, 126, 131, 133, 133, 133, 134, 137, 136, 138, 143, 139, 37.1020 + 131, 131, 125, 116, 119, 102, 95, 87, 80, 74, 66, 61, 55, 52, 49, 47, 37.1021 + 74, 75, 80, 85, 92, 103, 113, 125, 138, 145, 156, 95, 42, 47, 51, 63, 37.1022 + 58, 63, 46, 106, 162, 170, 164, 161, 159, 160, 164, 169, 176, 184, 192, 195, 37.1023 + 179, 110, 85, 63, 117, 220, 243, 247, 245, 251, 254, 251, 118, 88, 90, 88, 37.1024 + 98, 122, 129, 95, 198, 227, 222, 218, 210, 203, 197, 192, 189, 185, 180, 175, 37.1025 + 174, 176, 177, 175, 172, 165, 161, 159, 158, 155, 152, 155, 156, 155, 155, 157, 37.1026 + 159, 154, 147, 146, 146, 143, 139, 135, 134, 131, 128, 122, 117, 113, 111, 111, 37.1027 + 114, 119, 125, 129, 136, 133, 135, 136, 138, 139, 139, 142, 148, 149, 148, 146, 37.1028 + 143, 140, 130, 124, 112, 114, 101, 91, 84, 77, 68, 63, 57, 53, 49, 47, 37.1029 + 74, 75, 80, 86, 93, 104, 115, 127, 140, 148, 153, 85, 67, 62, 59, 72, 37.1030 + 64, 59, 49, 125, 165, 166, 162, 159, 155, 157, 161, 165, 173, 180, 187, 191, 37.1031 + 178, 84, 72, 73, 113, 214, 245, 250, 251, 254, 253, 248, 134, 119, 140, 123, 37.1032 + 90, 89, 105, 99, 201, 224, 211, 207, 202, 195, 191, 188, 186, 183, 180, 175, 37.1033 + 175, 177, 177, 177, 174, 166, 167, 163, 160, 156, 152, 156, 159, 162, 164, 163, 37.1034 + 161, 154, 153, 149, 130, 125, 134, 138, 135, 139, 132, 129, 126, 122, 119, 119, 37.1035 + 121, 126, 131, 133, 137, 136, 142, 141, 145, 150, 149, 141, 144, 149, 152, 153, 37.1036 + 149, 140, 142, 141, 114, 112, 99, 94, 86, 79, 70, 64, 58, 53, 49, 47, 37.1037 + 74, 75, 80, 86, 94, 105, 116, 129, 141, 153, 147, 84, 61, 56, 64, 77, 37.1038 + 79, 58, 54, 134, 164, 163, 158, 155, 153, 155, 158, 162, 167, 174, 178, 187, 37.1039 + 177, 75, 90, 100, 117, 219, 252, 254, 254, 255, 254, 250, 144, 151, 135, 142, 37.1040 + 126, 93, 76, 97, 206, 236, 228, 214, 201, 190, 182, 179, 179, 177, 175, 169, 37.1041 + 169, 170, 169, 174, 173, 167, 174, 186, 185, 179, 175, 154, 158, 165, 170, 167, 37.1042 + 163, 160, 173, 194, 191, 176, 158, 160, 132, 137, 138, 135, 132, 128, 126, 127, 37.1043 + 128, 132, 135, 138, 140, 148, 168, 175, 182, 188, 190, 172, 135, 131, 149, 154, 37.1044 + 146, 156, 176, 136, 140, 101, 101, 97, 89, 81, 72, 65, 58, 54, 49, 47, 37.1045 + 75, 77, 82, 88, 95, 105, 116, 129, 148, 150, 129, 65, 58, 70, 78, 84, 37.1046 + 81, 55, 68, 144, 165, 162, 154, 150, 148, 146, 149, 153, 160, 166, 172, 181, 37.1047 + 179, 148, 139, 121, 134, 231, 254, 254, 254, 254, 254, 250, 139, 139, 134, 151, 37.1048 + 143, 138, 140, 95, 203, 235, 225, 224, 214, 196, 179, 171, 166, 168, 179, 178, 37.1049 + 174, 174, 132, 164, 171, 182, 179, 152, 136, 149, 121, 130, 133, 159, 170, 164, 37.1050 + 163, 190, 186, 190, 202, 219, 227, 209, 159, 126, 137, 138, 135, 134, 135, 130, 37.1051 + 134, 140, 138, 139, 150, 152, 156, 152, 146, 150, 135, 83, 51, 122, 156, 148, 37.1052 + 155, 187, 157, 175, 173, 106, 90, 100, 91, 83, 73, 65, 58, 53, 49, 47, 37.1053 + 75, 77, 83, 88, 96, 107, 117, 131, 146, 155, 125, 71, 58, 82, 70, 63, 37.1054 + 43, 40, 74, 150, 162, 156, 149, 145, 143, 141, 144, 148, 156, 163, 168, 178, 37.1055 + 187, 172, 136, 125, 167, 234, 252, 254, 253, 254, 254, 250, 149, 133, 133, 123, 37.1056 + 143, 140, 140, 97, 191, 228, 224, 213, 204, 187, 173, 155, 184, 168, 166, 168, 37.1057 + 159, 163, 107, 148, 173, 198, 185, 141, 137, 122, 115, 124, 125, 127, 161, 161, 37.1058 + 185, 211, 188, 176, 203, 210, 211, 225, 198, 135, 126, 138, 138, 136, 138, 141, 37.1059 + 142, 139, 141, 160, 169, 172, 141, 118, 120, 133, 77, 80, 130, 186, 205, 153, 37.1060 + 169, 181, 148, 180, 165, 126, 73, 97, 93, 84, 75, 67, 60, 55, 49, 47, 37.1061 + 75, 77, 83, 89, 98, 109, 119, 133, 153, 154, 99, 61, 76, 88, 77, 75, 37.1062 + 61, 66, 89, 152, 157, 151, 143, 139, 138, 137, 140, 145, 152, 160, 167, 176, 37.1063 + 189, 199, 189, 185, 201, 235, 248, 254, 248, 254, 254, 252, 134, 116, 149, 137, 37.1064 + 134, 112, 126, 95, 184, 219, 219, 211, 204, 180, 168, 150, 175, 160, 162, 156, 37.1065 + 159, 151, 90, 160, 192, 196, 176, 188, 183, 193, 204, 207, 192, 149, 139, 169, 37.1066 + 176, 155, 175, 181, 200, 202, 204, 175, 169, 200, 116, 135, 141, 139, 142, 147, 37.1067 + 145, 141, 158, 197, 190, 188, 156, 122, 126, 132, 136, 179, 195, 196, 200, 186, 37.1068 + 167, 159, 150, 164, 138, 144, 65, 93, 95, 84, 76, 68, 61, 56, 51, 48, 37.1069 + 75, 77, 83, 89, 99, 110, 121, 135, 154, 152, 91, 75, 97, 80, 84, 76, 37.1070 + 68, 79, 93, 154, 156, 149, 140, 137, 136, 136, 139, 143, 149, 160, 170, 184, 37.1071 + 195, 194, 194, 205, 219, 235, 245, 254, 248, 254, 253, 250, 124, 117, 127, 118, 37.1072 + 145, 153, 147, 95, 187, 213, 210, 209, 200, 167, 160, 164, 162, 154, 166, 175, 37.1073 + 156, 169, 122, 188, 196, 196, 171, 187, 150, 201, 202, 207, 220, 201, 132, 196, 37.1074 + 184, 171, 187, 191, 206, 206, 188, 146, 180, 244, 129, 125, 145, 145, 146, 150, 37.1075 + 147, 154, 178, 196, 191, 187, 187, 172, 115, 96, 163, 204, 184, 158, 175, 158, 37.1076 + 150, 144, 134, 159, 140, 145, 57, 91, 96, 85, 77, 69, 61, 57, 51, 48, 37.1077 + 75, 77, 83, 89, 100, 110, 121, 134, 150, 153, 103, 97, 86, 71, 92, 71, 37.1078 + 85, 86, 94, 152, 157, 149, 141, 137, 135, 136, 139, 144, 151, 161, 171, 182, 37.1079 + 189, 192, 202, 214, 221, 233, 240, 245, 251, 254, 250, 246, 132, 141, 138, 119, 37.1080 + 135, 133, 143, 103, 192, 213, 204, 205, 196, 163, 157, 165, 157, 161, 174, 190, 37.1081 + 145, 163, 160, 208, 208, 188, 171, 188, 146, 196, 182, 201, 189, 203, 177, 217, 37.1082 + 195, 201, 220, 207, 200, 196, 174, 164, 234, 221, 131, 109, 147, 151, 152, 154, 37.1083 + 154, 172, 188, 190, 204, 187, 200, 150, 78, 103, 148, 193, 168, 128, 156, 149, 37.1084 + 165, 92, 93, 158, 171, 139, 60, 94, 95, 85, 76, 68, 61, 56, 51, 49, 37.1085 + 75, 77, 83, 89, 99, 109, 120, 134, 150, 151, 104, 81, 58, 69, 87, 58, 37.1086 + 79, 75, 105, 160, 157, 149, 141, 135, 133, 134, 139, 145, 154, 161, 168, 175, 37.1087 + 182, 189, 198, 208, 218, 227, 229, 233, 252, 255, 248, 247, 154, 137, 137, 135, 37.1088 + 149, 139, 144, 99, 187, 217, 207, 204, 199, 170, 155, 163, 156, 176, 184, 193, 37.1089 + 177, 161, 185, 206, 175, 130, 137, 194, 183, 202, 182, 164, 175, 209, 206, 203, 37.1090 + 196, 158, 166, 206, 209, 214, 203, 205, 194, 134, 147, 91, 146, 156, 157, 158, 37.1091 + 160, 181, 163, 138, 177, 174, 181, 85, 102, 154, 165, 168, 141, 133, 140, 133, 37.1092 + 167, 119, 91, 156, 148, 86, 64, 99, 92, 84, 74, 67, 60, 55, 51, 49, 37.1093 + 75, 77, 83, 89, 98, 109, 120, 134, 149, 147, 97, 68, 61, 70, 65, 54, 37.1094 + 108, 83, 112, 155, 155, 147, 139, 134, 133, 134, 140, 146, 155, 159, 163, 171, 37.1095 + 181, 188, 197, 209, 216, 220, 222, 229, 251, 251, 251, 239, 172, 153, 155, 151, 37.1096 + 149, 145, 153, 93, 180, 218, 211, 201, 198, 179, 157, 179, 168, 186, 182, 189, 37.1097 + 183, 157, 179, 166, 97, 103, 126, 191, 192, 189, 169, 178, 187, 194, 197, 198, 37.1098 + 117, 84, 108, 153, 197, 199, 160, 184, 152, 135, 137, 79, 146, 159, 160, 159, 37.1099 + 160, 173, 154, 155, 167, 148, 132, 69, 140, 186, 188, 172, 148, 158, 124, 132, 37.1100 + 150, 130, 93, 119, 102, 77, 98, 103, 92, 84, 73, 66, 59, 54, 50, 48, 37.1101 + 73, 76, 82, 89, 97, 108, 120, 135, 151, 142, 86, 72, 87, 85, 73, 88, 37.1102 + 116, 84, 114, 157, 155, 146, 138, 136, 137, 139, 144, 147, 148, 153, 161, 167, 37.1103 + 176, 185, 194, 203, 211, 211, 216, 227, 249, 240, 254, 240, 164, 160, 166, 165, 37.1104 + 161, 161, 161, 95, 180, 212, 210, 202, 199, 195, 182, 175, 174, 182, 180, 200, 37.1105 + 184, 159, 174, 102, 105, 163, 185, 194, 206, 200, 197, 198, 175, 170, 174, 141, 37.1106 + 77, 135, 164, 159, 154, 124, 87, 135, 150, 172, 171, 70, 147, 161, 165, 161, 37.1107 + 162, 170, 182, 182, 176, 146, 121, 75, 160, 194, 191, 176, 167, 168, 118, 144, 37.1108 + 116, 124, 83, 128, 126, 116, 114, 105, 93, 82, 72, 65, 58, 53, 50, 48, 37.1109 + 73, 75, 82, 89, 97, 108, 120, 135, 149, 145, 106, 93, 102, 102, 98, 118, 37.1110 + 112, 80, 113, 158, 156, 148, 141, 139, 141, 140, 141, 144, 146, 152, 159, 166, 37.1111 + 174, 180, 191, 200, 202, 203, 212, 225, 238, 233, 250, 235, 167, 157, 142, 169, 37.1112 + 174, 163, 170, 98, 178, 209, 207, 204, 203, 200, 194, 191, 190, 181, 176, 198, 37.1113 + 190, 172, 130, 77, 154, 189, 203, 200, 226, 217, 211, 216, 185, 203, 185, 81, 37.1114 + 112, 174, 183, 181, 186, 175, 169, 192, 182, 202, 187, 67, 146, 162, 166, 161, 37.1115 + 178, 187, 178, 169, 176, 160, 131, 75, 174, 195, 197, 182, 165, 153, 110, 136, 37.1116 + 138, 139, 70, 123, 138, 130, 119, 103, 91, 81, 71, 64, 58, 53, 50, 48, 37.1117 + 72, 75, 81, 88, 96, 108, 120, 134, 146, 149, 127, 114, 102, 104, 105, 121, 37.1118 + 95, 71, 109, 158, 159, 152, 145, 142, 141, 139, 138, 141, 145, 151, 158, 165, 37.1119 + 173, 179, 189, 195, 194, 196, 209, 224, 226, 228, 245, 227, 172, 158, 172, 179, 37.1120 + 177, 161, 181, 97, 176, 207, 204, 201, 202, 202, 197, 193, 191, 176, 183, 217, 37.1121 + 208, 153, 74, 99, 180, 194, 201, 203, 222, 210, 217, 220, 188, 203, 187, 70, 37.1122 + 149, 188, 186, 180, 206, 215, 205, 214, 211, 197, 178, 64, 146, 164, 168, 168, 37.1123 + 186, 180, 157, 139, 168, 166, 138, 86, 176, 202, 201, 182, 146, 132, 126, 139, 37.1124 + 150, 143, 65, 118, 140, 129, 115, 101, 89, 79, 69, 63, 57, 53, 49, 47, 37.1125 + 71, 74, 81, 88, 95, 107, 119, 134, 149, 147, 124, 103, 91, 93, 97, 100, 37.1126 + 92, 76, 110, 160, 162, 155, 147, 142, 136, 136, 138, 140, 145, 151, 158, 163, 37.1127 + 171, 181, 184, 187, 189, 194, 208, 221, 215, 226, 240, 229, 167, 165, 187, 167, 37.1128 + 190, 178, 179, 93, 176, 205, 200, 195, 199, 204, 197, 186, 180, 173, 200, 217, 37.1129 + 179, 77, 46, 125, 190, 211, 197, 202, 217, 214, 217, 198, 173, 187, 151, 85, 37.1130 + 170, 194, 199, 198, 190, 188, 161, 187, 189, 168, 158, 63, 147, 167, 170, 167, 37.1131 + 176, 166, 165, 156, 168, 153, 125, 92, 180, 202, 200, 177, 148, 148, 152, 145, 37.1132 + 136, 117, 64, 117, 135, 125, 111, 97, 86, 77, 68, 62, 56, 53, 49, 46, 37.1133 + 71, 74, 80, 87, 94, 106, 118, 133, 146, 148, 128, 108, 97, 95, 108, 105, 37.1134 + 109, 92, 111, 163, 165, 157, 148, 142, 136, 136, 138, 142, 146, 152, 160, 165, 37.1135 + 173, 182, 181, 182, 187, 196, 209, 216, 207, 227, 234, 225, 148, 155, 144, 154, 37.1136 + 187, 156, 160, 98, 176, 204, 199, 192, 198, 205, 199, 192, 187, 188, 202, 178, 37.1137 + 87, 98, 75, 139, 200, 209, 202, 193, 182, 184, 190, 159, 153, 197, 135, 101, 37.1138 + 186, 198, 200, 193, 186, 190, 156, 202, 174, 167, 146, 65, 150, 169, 171, 166, 37.1139 + 164, 155, 165, 149, 151, 142, 127, 90, 186, 197, 200, 180, 162, 151, 138, 128, 37.1140 + 118, 127, 65, 116, 133, 125, 112, 94, 83, 75, 66, 60, 55, 52, 49, 46, 37.1141 + 70, 74, 80, 87, 94, 106, 118, 132, 143, 150, 130, 111, 97, 90, 114, 114, 37.1142 + 116, 96, 106, 163, 167, 158, 147, 142, 141, 140, 140, 143, 148, 154, 161, 168, 37.1143 + 176, 179, 177, 180, 186, 197, 209, 211, 202, 226, 229, 218, 151, 162, 163, 159, 37.1144 + 154, 122, 137, 92, 177, 204, 198, 192, 195, 201, 200, 192, 192, 197, 181, 137, 37.1145 + 125, 205, 91, 152, 202, 205, 205, 193, 177, 178, 163, 145, 158, 201, 139, 110, 37.1146 + 194, 197, 200, 198, 177, 178, 167, 192, 164, 158, 130, 67, 153, 171, 172, 171, 37.1147 + 163, 164, 169, 148, 158, 148, 136, 99, 181, 200, 197, 179, 160, 135, 124, 120, 37.1148 + 119, 110, 61, 117, 132, 121, 108, 92, 82, 73, 65, 59, 54, 52, 48, 46, 37.1149 + 71, 74, 79, 85, 94, 105, 116, 131, 144, 152, 131, 103, 90, 93, 118, 119, 37.1150 + 118, 111, 95, 162, 167, 159, 149, 143, 142, 141, 143, 145, 149, 154, 163, 171, 37.1151 + 178, 176, 172, 179, 183, 198, 211, 203, 199, 225, 226, 215, 191, 182, 189, 183, 37.1152 + 161, 146, 156, 87, 176, 202, 198, 193, 193, 196, 196, 193, 198, 169, 125, 151, 37.1153 + 221, 238, 94, 150, 198, 203, 201, 196, 202, 178, 143, 154, 176, 199, 141, 114, 37.1154 + 192, 197, 198, 193, 170, 167, 149, 174, 152, 140, 124, 67, 154, 173, 174, 171, 37.1155 + 170, 180, 176, 159, 170, 160, 150, 108, 169, 198, 190, 172, 152, 119, 129, 129, 37.1156 + 136, 86, 71, 120, 129, 117, 102, 89, 79, 70, 62, 57, 54, 51, 47, 46, 37.1157 + 72, 74, 78, 84, 94, 105, 116, 130, 143, 151, 135, 106, 99, 108, 115, 123, 37.1158 + 119, 113, 94, 158, 167, 160, 152, 146, 144, 143, 145, 148, 151, 156, 163, 172, 37.1159 + 176, 171, 175, 180, 185, 200, 203, 196, 200, 225, 223, 220, 206, 171, 181, 192, 37.1160 + 188, 187, 160, 89, 175, 202, 198, 193, 193, 196, 194, 183, 172, 124, 175, 226, 37.1161 + 239, 198, 78, 151, 197, 200, 198, 193, 193, 160, 154, 183, 191, 192, 106, 115, 37.1162 + 192, 198, 196, 196, 180, 172, 168, 168, 139, 138, 146, 67, 155, 175, 175, 173, 37.1163 + 171, 175, 164, 152, 151, 140, 135, 104, 149, 194, 195, 168, 149, 125, 139, 134, 37.1164 + 128, 67, 80, 124, 125, 114, 100, 87, 77, 69, 60, 56, 53, 51, 47, 46, 37.1165 + 71, 72, 77, 83, 92, 103, 114, 128, 140, 150, 142, 117, 112, 119, 107, 132, 37.1166 + 133, 125, 92, 150, 169, 164, 156, 152, 147, 147, 148, 151, 153, 159, 164, 169, 37.1167 + 172, 171, 174, 172, 187, 200, 197, 194, 203, 224, 219, 216, 159, 168, 132, 178, 37.1168 + 192, 148, 124, 94, 175, 204, 198, 190, 194, 198, 193, 170, 127, 183, 239, 236, 37.1169 + 204, 169, 81, 151, 197, 199, 196, 193, 184, 186, 167, 193, 194, 189, 105, 116, 37.1170 + 192, 197, 194, 191, 190, 165, 176, 168, 143, 147, 161, 69, 157, 177, 178, 178, 37.1171 + 172, 164, 148, 151, 136, 131, 132, 133, 140, 172, 175, 150, 140, 131, 125, 118, 37.1172 + 85, 55, 105, 128, 121, 110, 97, 84, 75, 67, 59, 55, 53, 50, 47, 46, 37.1173 + 71, 72, 77, 82, 91, 102, 113, 126, 139, 150, 149, 130, 117, 126, 113, 144, 37.1174 + 149, 141, 92, 145, 172, 168, 159, 154, 149, 148, 150, 153, 156, 162, 164, 166, 37.1175 + 171, 171, 167, 172, 179, 187, 196, 191, 207, 222, 216, 210, 87, 87, 129, 197, 37.1176 + 159, 92, 142, 98, 175, 205, 198, 190, 194, 199, 193, 163, 192, 244, 236, 210, 37.1177 + 204, 196, 93, 150, 196, 198, 194, 186, 169, 204, 160, 186, 182, 183, 115, 115, 37.1178 + 191, 196, 193, 184, 190, 158, 160, 167, 155, 155, 155, 69, 158, 179, 180, 182, 37.1179 + 178, 167, 151, 149, 137, 142, 143, 155, 150, 159, 153, 118, 116, 126, 119, 96, 37.1180 + 58, 78, 128, 131, 117, 106, 93, 82, 72, 66, 58, 54, 52, 49, 47, 46, 37.1181 + 70, 71, 76, 82, 90, 101, 112, 125, 139, 150, 155, 142, 129, 133, 124, 150, 37.1182 + 139, 120, 96, 130, 173, 173, 161, 156, 152, 151, 153, 156, 160, 164, 165, 167, 37.1183 + 174, 166, 170, 195, 181, 170, 186, 187, 208, 218, 213, 209, 150, 119, 133, 139, 37.1184 + 79, 118, 186, 98, 174, 204, 198, 191, 194, 198, 193, 194, 236, 212, 201, 207, 37.1185 + 197, 216, 90, 151, 196, 196, 192, 181, 178, 195, 147, 185, 186, 189, 118, 113, 37.1186 + 190, 195, 192, 185, 186, 165, 155, 168, 160, 159, 159, 69, 158, 179, 181, 184, 37.1187 + 186, 181, 168, 147, 135, 135, 132, 154, 150, 145, 135, 109, 122, 123, 100, 71, 37.1188 + 67, 115, 136, 132, 114, 103, 90, 79, 70, 64, 57, 54, 51, 48, 46, 46, 37.1189 + 70, 71, 76, 81, 89, 100, 111, 124, 137, 147, 156, 148, 137, 138, 130, 150, 37.1190 + 125, 110, 117, 116, 169, 176, 164, 160, 157, 156, 159, 161, 163, 164, 165, 169, 37.1191 + 175, 166, 179, 212, 194, 161, 168, 185, 209, 213, 212, 211, 184, 197, 165, 131, 37.1192 + 122, 201, 192, 90, 173, 203, 199, 193, 193, 197, 193, 205, 229, 170, 163, 189, 37.1193 + 167, 218, 89, 151, 195, 194, 190, 189, 209, 189, 138, 168, 182, 186, 127, 114, 37.1194 + 189, 193, 191, 188, 172, 162, 161, 168, 158, 157, 163, 67, 157, 179, 181, 184, 37.1195 + 189, 189, 183, 158, 139, 132, 133, 153, 133, 123, 120, 122, 132, 99, 66, 67, 37.1196 + 102, 140, 141, 132, 113, 102, 87, 77, 69, 63, 56, 53, 50, 48, 46, 46, 37.1197 + 69, 71, 76, 80, 88, 99, 109, 122, 133, 143, 155, 150, 136, 140, 128, 148, 37.1198 + 143, 152, 153, 117, 160, 176, 170, 165, 162, 162, 164, 166, 167, 165, 166, 169, 37.1199 + 172, 173, 180, 199, 195, 148, 141, 184, 210, 211, 212, 204, 209, 201, 200, 205, 37.1200 + 210, 222, 213, 100, 172, 201, 200, 195, 193, 194, 193, 199, 200, 192, 206, 160, 37.1201 + 208, 219, 85, 149, 194, 193, 189, 190, 191, 168, 148, 157, 150, 141, 87, 114, 37.1202 + 188, 193, 191, 186, 150, 141, 155, 163, 158, 152, 153, 65, 156, 177, 180, 183, 37.1203 + 187, 187, 184, 163, 146, 142, 147, 135, 110, 124, 140, 130, 97, 67, 84, 116, 37.1204 + 148, 147, 145, 131, 113, 102, 86, 76, 68, 63, 56, 53, 50, 47, 46, 46, 37.1205 + 68, 73, 77, 81, 87, 97, 105, 117, 129, 140, 149, 154, 151, 143, 122, 132, 37.1206 + 155, 148, 155, 115, 140, 171, 177, 171, 166, 164, 170, 168, 172, 167, 171, 169, 37.1207 + 173, 177, 170, 151, 184, 107, 111, 185, 212, 208, 208, 203, 218, 203, 211, 212, 37.1208 + 213, 230, 228, 102, 167, 196, 200, 196, 192, 194, 191, 191, 187, 189, 217, 205, 37.1209 + 191, 184, 84, 146, 192, 192, 190, 183, 154, 155, 174, 187, 195, 177, 117, 117, 37.1210 + 186, 196, 191, 188, 135, 101, 103, 135, 149, 152, 144, 64, 157, 176, 180, 181, 37.1211 + 184, 181, 167, 134, 149, 144, 119, 93, 103, 112, 104, 106, 115, 131, 154, 163, 37.1212 + 163, 155, 144, 132, 117, 102, 89, 77, 69, 63, 57, 53, 49, 47, 46, 46, 37.1213 + 68, 72, 77, 80, 86, 95, 103, 114, 124, 136, 146, 153, 149, 134, 128, 129, 37.1214 + 142, 131, 141, 145, 118, 163, 174, 177, 173, 172, 175, 171, 170, 168, 169, 173, 37.1215 + 177, 202, 169, 173, 152, 71, 125, 186, 210, 206, 205, 201, 217, 189, 197, 210, 37.1216 + 191, 224, 203, 104, 161, 194, 200, 200, 195, 190, 188, 194, 207, 202, 183, 174, 37.1217 + 154, 158, 72, 146, 189, 194, 189, 182, 185, 203, 188, 185, 192, 180, 120, 114, 37.1218 + 186, 197, 195, 187, 173, 151, 114, 109, 123, 129, 127, 63, 152, 177, 180, 186, 37.1219 + 184, 168, 143, 136, 148, 138, 74, 92, 150, 163, 163, 172, 176, 177, 181, 178, 37.1220 + 169, 157, 146, 132, 117, 103, 90, 78, 70, 63, 57, 53, 49, 47, 47, 46, 37.1221 + 69, 72, 76, 79, 85, 93, 100, 110, 119, 131, 142, 150, 146, 136, 138, 123, 37.1222 + 119, 120, 155, 157, 131, 143, 175, 172, 177, 173, 174, 174, 168, 165, 163, 172, 37.1223 + 197, 204, 176, 174, 107, 81, 152, 192, 204, 198, 199, 202, 204, 186, 200, 197, 37.1224 + 186, 209, 170, 119, 150, 195, 193, 195, 196, 193, 185, 196, 213, 202, 161, 117, 37.1225 + 150, 157, 76, 151, 190, 193, 191, 185, 205, 210, 168, 173, 177, 168, 113, 118, 37.1226 + 183, 190, 192, 181, 178, 164, 157, 152, 127, 118, 131, 64, 156, 175, 180, 180, 37.1227 + 178, 158, 133, 126, 130, 131, 98, 124, 183, 186, 193, 196, 196, 190, 184, 180, 37.1228 + 169, 157, 147, 132, 117, 103, 91, 80, 71, 64, 57, 53, 49, 48, 47, 46, 37.1229 + 69, 72, 75, 78, 84, 91, 96, 106, 116, 127, 138, 148, 150, 154, 166, 157, 37.1230 + 151, 142, 159, 163, 148, 143, 153, 171, 179, 179, 174, 170, 162, 166, 170, 193, 37.1231 + 201, 193, 180, 158, 74, 119, 169, 195, 198, 187, 193, 198, 193, 191, 202, 195, 37.1232 + 194, 221, 203, 159, 135, 179, 186, 193, 196, 192, 181, 184, 202, 183, 198, 173, 37.1233 + 122, 140, 90, 139, 190, 193, 189, 182, 202, 184, 154, 170, 166, 163, 120, 111, 37.1234 + 176, 184, 186, 181, 181, 134, 154, 157, 164, 160, 152, 81, 148, 175, 182, 184, 37.1235 + 178, 149, 137, 126, 111, 107, 116, 115, 144, 152, 175, 186, 186, 185, 182, 176, 37.1236 + 171, 159, 147, 134, 119, 105, 93, 82, 72, 65, 57, 53, 49, 48, 47, 46, 37.1237 + 69, 71, 74, 76, 82, 88, 92, 101, 111, 123, 134, 145, 148, 148, 159, 171, 37.1238 + 167, 163, 164, 158, 152, 166, 139, 162, 168, 173, 164, 156, 158, 168, 182, 203, 37.1239 + 197, 186, 166, 98, 88, 147, 181, 192, 189, 183, 191, 187, 192, 189, 187, 191, 37.1240 + 198, 213, 213, 211, 162, 163, 175, 182, 190, 186, 181, 186, 187, 181, 201, 197, 37.1241 + 123, 132, 118, 134, 178, 187, 185, 194, 193, 162, 158, 168, 162, 164, 130, 97, 37.1242 + 165, 179, 172, 168, 170, 108, 158, 154, 157, 156, 158, 114, 128, 169, 175, 176, 37.1243 + 174, 134, 132, 101, 106, 104, 114, 99, 72, 103, 145, 138, 140, 150, 157, 164, 37.1244 + 166, 158, 147, 137, 122, 109, 95, 84, 73, 66, 58, 53, 50, 48, 47, 46, 37.1245 + 69, 71, 74, 75, 81, 86, 89, 97, 105, 117, 128, 140, 151, 152, 152, 160, 37.1246 + 141, 161, 174, 133, 128, 145, 144, 167, 160, 149, 149, 164, 192, 183, 148, 143, 37.1247 + 173, 170, 116, 69, 129, 164, 188, 191, 197, 206, 214, 200, 193, 188, 193, 205, 37.1248 + 204, 206, 200, 189, 199, 216, 205, 148, 176, 192, 188, 191, 183, 171, 168, 182, 37.1249 + 194, 195, 188, 164, 153, 168, 196, 207, 172, 151, 150, 162, 159, 154, 111, 113, 37.1250 + 149, 151, 147, 133, 127, 89, 156, 124, 142, 145, 140, 132, 138, 145, 156, 178, 37.1251 + 176, 109, 111, 97, 118, 111, 85, 68, 88, 119, 109, 84, 87, 98, 107, 125, 37.1252 + 136, 144, 146, 138, 125, 112, 99, 85, 75, 66, 58, 54, 50, 48, 47, 46, 37.1253 + 69, 71, 73, 74, 80, 84, 88, 95, 101, 112, 124, 135, 140, 150, 152, 154, 37.1254 + 144, 167, 162, 130, 102, 108, 131, 163, 166, 155, 160, 196, 201, 159, 145, 173, 37.1255 + 168, 137, 76, 110, 150, 170, 184, 182, 196, 210, 214, 198, 187, 190, 203, 208, 37.1256 + 199, 205, 191, 180, 204, 199, 185, 112, 162, 210, 198, 184, 182, 156, 176, 191, 37.1257 + 175, 179, 181, 177, 132, 146, 203, 188, 148, 150, 154, 162, 160, 144, 121, 140, 37.1258 + 130, 115, 115, 113, 106, 100, 145, 135, 138, 132, 128, 135, 147, 121, 134, 172, 37.1259 + 166, 93, 81, 78, 98, 103, 91, 91, 109, 115, 91, 80, 88, 95, 93, 99, 37.1260 + 107, 122, 136, 136, 125, 117, 101, 87, 76, 67, 59, 55, 51, 48, 47, 46, 37.1261 + 70, 70, 72, 73, 79, 82, 87, 93, 98, 109, 119, 130, 140, 145, 152, 152, 37.1262 + 142, 171, 153, 156, 158, 158, 177, 180, 189, 174, 178, 220, 201, 190, 185, 211, 37.1263 + 175, 86, 92, 145, 161, 170, 182, 180, 200, 208, 208, 188, 183, 192, 202, 197, 37.1264 + 202, 197, 177, 187, 205, 186, 162, 91, 158, 211, 191, 174, 173, 170, 189, 181, 37.1265 + 153, 154, 164, 172, 111, 124, 187, 160, 145, 160, 161, 163, 164, 142, 161, 114, 37.1266 + 100, 87, 85, 64, 70, 113, 145, 138, 134, 129, 127, 135, 130, 99, 107, 173, 37.1267 + 173, 132, 110, 117, 112, 114, 100, 99, 123, 113, 101, 97, 106, 106, 98, 97, 37.1268 + 93, 94, 106, 126, 125, 121, 103, 89, 78, 69, 61, 56, 52, 49, 47, 46, 37.1269 + 69, 70, 72, 72, 78, 81, 85, 91, 94, 105, 113, 124, 133, 140, 147, 152, 37.1270 + 148, 143, 145, 168, 177, 186, 199, 200, 212, 136, 195, 212, 172, 188, 184, 159, 37.1271 + 95, 94, 139, 154, 161, 169, 179, 174, 185, 180, 177, 172, 177, 187, 198, 198, 37.1272 + 197, 191, 187, 197, 206, 182, 174, 88, 147, 164, 137, 149, 164, 172, 185, 177, 37.1273 + 160, 161, 159, 146, 94, 123, 183, 171, 169, 173, 150, 127, 114, 68, 71, 78, 37.1274 + 107, 77, 124, 132, 128, 157, 152, 143, 137, 130, 127, 135, 130, 100, 110, 175, 37.1275 + 179, 152, 126, 124, 124, 129, 88, 100, 123, 97, 93, 89, 92, 86, 80, 82, 37.1276 + 82, 82, 78, 105, 126, 119, 106, 92, 80, 71, 62, 57, 52, 49, 47, 45, 37.1277 + 68, 69, 71, 72, 77, 79, 83, 88, 93, 101, 108, 117, 125, 133, 142, 146, 37.1278 + 149, 147, 142, 145, 176, 175, 193, 207, 181, 164, 214, 193, 145, 139, 87, 68, 37.1279 + 107, 137, 153, 161, 159, 165, 172, 169, 168, 143, 129, 128, 131, 134, 139, 137, 37.1280 + 129, 119, 118, 126, 130, 118, 121, 96, 149, 139, 109, 101, 105, 110, 112, 113, 37.1281 + 108, 107, 99, 97, 87, 126, 160, 130, 112, 101, 82, 72, 77, 72, 88, 103, 37.1282 + 93, 103, 148, 125, 100, 108, 95, 96, 92, 86, 85, 95, 90, 83, 114, 173, 37.1283 + 183, 164, 126, 118, 125, 103, 88, 117, 101, 71, 75, 80, 84, 78, 74, 68, 37.1284 + 73, 76, 66, 78, 115, 120, 108, 94, 82, 74, 64, 57, 53, 50, 47, 45, 37.1285 + 68, 68, 70, 71, 76, 77, 81, 86, 92, 99, 104, 111, 119, 126, 135, 141, 37.1286 + 151, 150, 145, 131, 118, 120, 145, 148, 117, 159, 157, 108, 100, 78, 93, 138, 37.1287 + 149, 155, 157, 153, 154, 161, 166, 164, 161, 137, 126, 130, 132, 130, 131, 139, 37.1288 + 137, 128, 125, 130, 130, 132, 128, 136, 156, 150, 132, 124, 124, 122, 120, 119, 37.1289 + 118, 122, 124, 120, 124, 138, 145, 130, 118, 116, 118, 120, 120, 113, 116, 114, 37.1290 + 115, 128, 135, 118, 107, 114, 115, 116, 114, 113, 113, 114, 118, 123, 151, 177, 37.1291 + 183, 177, 145, 117, 102, 78, 105, 99, 77, 77, 78, 80, 83, 80, 79, 73, 37.1292 + 67, 61, 60, 57, 95, 119, 109, 95, 83, 74, 65, 58, 53, 51, 48, 46, 37.1293 + 68, 68, 70, 71, 75, 76, 79, 84, 90, 96, 99, 105, 112, 119, 128, 136, 37.1294 + 147, 148, 150, 151, 145, 135, 128, 113, 100, 95, 97, 101, 117, 125, 138, 151, 37.1295 + 152, 154, 152, 149, 149, 155, 158, 160, 158, 151, 153, 160, 164, 160, 163, 169, 37.1296 + 164, 158, 156, 158, 157, 161, 152, 158, 157, 159, 155, 153, 152, 149, 147, 149, 37.1297 + 148, 147, 147, 147, 147, 148, 152, 144, 143, 144, 146, 146, 147, 140, 139, 136, 37.1298 + 146, 144, 148, 142, 142, 144, 142, 139, 139, 138, 139, 137, 150, 151, 161, 181, 37.1299 + 180, 183, 166, 136, 93, 104, 104, 81, 77, 88, 76, 79, 78, 76, 73, 69, 37.1300 + 63, 59, 62, 45, 78, 116, 109, 95, 83, 74, 65, 58, 54, 51, 48, 47, 37.1301 + 67, 68, 70, 71, 74, 75, 77, 82, 87, 92, 94, 99, 106, 113, 122, 129, 37.1302 + 140, 148, 145, 146, 143, 145, 143, 139, 138, 137, 135, 140, 138, 146, 160, 156, 37.1303 + 151, 147, 149, 145, 145, 151, 153, 157, 155, 157, 162, 165, 169, 164, 165, 177, 37.1304 + 172, 163, 162, 164, 166, 168, 164, 161, 159, 157, 158, 161, 159, 157, 154, 154, 37.1305 + 157, 154, 153, 152, 148, 151, 151, 147, 148, 147, 148, 150, 150, 145, 141, 145, 37.1306 + 146, 146, 145, 145, 143, 148, 148, 147, 146, 144, 144, 146, 155, 158, 166, 177, 37.1307 + 177, 168, 142, 121, 108, 106, 90, 84, 89, 88, 72, 76, 73, 75, 71, 67, 37.1308 + 63, 64, 61, 41, 68, 110, 110, 95, 83, 74, 65, 59, 54, 51, 48, 47, 37.1309 + 67, 68, 69, 70, 71, 73, 76, 79, 83, 86, 91, 96, 104, 109, 116, 122, 37.1310 + 132, 136, 138, 140, 141, 141, 142, 143, 145, 142, 144, 144, 145, 153, 155, 149, 37.1311 + 143, 141, 139, 137, 139, 143, 145, 147, 148, 150, 155, 157, 159, 157, 158, 170, 37.1312 + 167, 157, 154, 156, 159, 159, 156, 152, 151, 149, 149, 150, 149, 147, 146, 146, 37.1313 + 147, 146, 145, 144, 143, 144, 143, 142, 141, 140, 140, 141, 141, 139, 137, 137, 37.1314 + 138, 135, 135, 136, 134, 135, 136, 137, 136, 136, 139, 143, 149, 154, 163, 170, 37.1315 + 158, 109, 96, 105, 112, 106, 134, 127, 114, 96, 80, 73, 73, 70, 63, 63, 37.1316 + 56, 55, 44, 41, 60, 109, 107, 97, 85, 75, 65, 59, 54, 51, 49, 47, 37.1317 + 67, 68, 69, 69, 69, 72, 74, 77, 81, 84, 89, 94, 100, 105, 111, 116, 37.1318 + 123, 127, 131, 132, 134, 135, 136, 138, 141, 141, 140, 140, 143, 149, 148, 143, 37.1319 + 139, 135, 132, 131, 134, 137, 139, 139, 140, 143, 148, 149, 150, 149, 152, 162, 37.1320 + 160, 150, 147, 148, 151, 152, 149, 144, 143, 142, 141, 141, 140, 139, 138, 138, 37.1321 + 138, 138, 137, 136, 136, 135, 134, 134, 133, 132, 132, 133, 133, 132, 131, 128, 37.1322 + 127, 126, 126, 126, 126, 126, 126, 126, 127, 129, 133, 138, 143, 148, 156, 157, 37.1323 + 134, 98, 102, 99, 84, 91, 163, 178, 168, 154, 141, 127, 112, 92, 69, 57, 37.1324 + 60, 49, 40, 33, 51, 108, 111, 97, 85, 74, 65, 59, 54, 51, 49, 47, 37.1325 + 67, 68, 69, 70, 70, 71, 74, 75, 79, 83, 87, 91, 95, 100, 106, 110, 37.1326 + 115, 119, 123, 124, 127, 129, 130, 132, 134, 134, 135, 135, 138, 142, 141, 137, 37.1327 + 132, 129, 126, 125, 128, 131, 133, 134, 134, 136, 140, 143, 144, 142, 145, 154, 37.1328 + 152, 144, 141, 141, 143, 144, 142, 138, 136, 135, 135, 134, 134, 133, 132, 132, 37.1329 + 132, 132, 131, 130, 129, 128, 127, 126, 125, 124, 123, 126, 125, 124, 123, 121, 37.1330 + 120, 119, 118, 118, 118, 118, 118, 119, 120, 123, 127, 132, 139, 143, 153, 145, 37.1331 + 107, 86, 88, 80, 61, 81, 170, 196, 193, 189, 183, 173, 163, 149, 121, 61, 37.1332 + 55, 42, 28, 27, 53, 108, 110, 96, 84, 73, 64, 58, 53, 50, 49, 47, 37.1333 + 67, 68, 69, 70, 70, 71, 73, 74, 77, 81, 85, 88, 92, 97, 102, 106, 37.1334 + 110, 113, 116, 118, 121, 122, 125, 126, 128, 128, 130, 130, 134, 136, 134, 131, 37.1335 + 127, 124, 122, 122, 125, 127, 129, 129, 129, 131, 135, 137, 139, 136, 138, 146, 37.1336 + 146, 139, 136, 135, 137, 139, 137, 133, 131, 130, 129, 129, 128, 127, 127, 126, 37.1337 + 126, 125, 124, 123, 122, 121, 121, 119, 118, 117, 117, 119, 118, 117, 116, 115, 37.1338 + 114, 113, 113, 113, 113, 113, 113, 113, 114, 118, 122, 127, 134, 140, 149, 135, 37.1339 + 91, 66, 54, 67, 61, 88, 172, 192, 193, 193, 192, 189, 187, 183, 163, 75, 37.1340 + 38, 24, 22, 34, 63, 109, 107, 94, 82, 72, 63, 58, 53, 50, 48, 46, 37.1341 + 67, 68, 69, 70, 70, 71, 72, 73, 76, 78, 82, 85, 89, 94, 99, 102, 37.1342 + 105, 108, 110, 111, 114, 116, 119, 120, 122, 123, 124, 126, 129, 129, 128, 125, 37.1343 + 122, 120, 118, 118, 121, 124, 124, 124, 125, 126, 129, 132, 134, 131, 132, 139, 37.1344 + 139, 134, 129, 127, 130, 133, 131, 127, 126, 125, 124, 124, 123, 122, 121, 121, 37.1345 + 120, 119, 119, 117, 116, 115, 114, 113, 112, 111, 110, 111, 111, 110, 110, 108, 37.1346 + 108, 107, 106, 106, 106, 106, 106, 107, 108, 112, 117, 123, 130, 137, 145, 125, 37.1347 + 88, 64, 47, 77, 70, 96, 175, 192, 193, 193, 194, 193, 190, 187, 172, 92, 37.1348 + 39, 23, 47, 45, 67, 107, 108, 93, 81, 71, 62, 57, 52, 49, 47, 45, 37.1349 + 67, 68, 69, 70, 70, 71, 71, 72, 74, 76, 79, 82, 86, 89, 93, 96, 37.1350 + 101, 103, 104, 105, 108, 110, 113, 115, 114, 116, 118, 121, 124, 122, 120, 117, 37.1351 + 116, 114, 113, 114, 117, 119, 119, 119, 119, 120, 123, 125, 127, 124, 125, 131, 37.1352 + 131, 128, 122, 120, 123, 125, 124, 121, 120, 119, 118, 118, 117, 116, 115, 114, 37.1353 + 113, 112, 112, 109, 108, 107, 107, 106, 106, 105, 104, 103, 103, 102, 101, 101, 37.1354 + 100, 99, 99, 98, 98, 98, 98, 100, 101, 106, 112, 117, 124, 132, 139, 119, 37.1355 + 88, 67, 61, 84, 71, 94, 172, 188, 189, 188, 188, 186, 185, 187, 170, 88, 37.1356 + 48, 48, 69, 45, 73, 109, 108, 92, 80, 70, 61, 56, 52, 49, 47, 45, 37.1357 + 66, 67, 68, 69, 69, 70, 70, 71, 72, 74, 78, 80, 82, 85, 88, 91, 37.1358 + 95, 98, 99, 100, 102, 104, 107, 108, 107, 109, 111, 115, 117, 115, 113, 111, 37.1359 + 109, 108, 107, 109, 111, 113, 112, 113, 114, 115, 117, 120, 121, 118, 119, 124, 37.1360 + 125, 121, 116, 114, 116, 118, 118, 116, 114, 113, 112, 112, 112, 111, 110, 107, 37.1361 + 106, 105, 105, 103, 102, 101, 100, 100, 100, 99, 98, 97, 96, 95, 94, 94, 37.1362 + 93, 92, 91, 91, 91, 91, 91, 93, 95, 100, 105, 111, 118, 126, 135, 122, 37.1363 + 85, 62, 65, 74, 65, 85, 159, 181, 181, 180, 180, 176, 176, 175, 147, 52, 37.1364 + 41, 66, 57, 41, 88, 113, 102, 90, 79, 69, 61, 56, 52, 49, 47, 45, 37.1365 + 66, 67, 67, 68, 69, 69, 70, 71, 72, 74, 77, 79, 81, 84, 87, 89, 37.1366 + 90, 92, 94, 96, 100, 101, 103, 104, 103, 104, 109, 113, 112, 111, 108, 107, 37.1367 + 104, 102, 103, 105, 108, 109, 108, 109, 113, 114, 116, 116, 114, 113, 114, 119, 37.1368 + 120, 118, 112, 111, 111, 112, 113, 112, 111, 109, 107, 107, 107, 106, 105, 102, 37.1369 + 101, 100, 100, 99, 98, 97, 97, 95, 93, 93, 92, 91, 91, 90, 89, 88, 37.1370 + 88, 88, 88, 87, 87, 87, 87, 89, 90, 95, 99, 105, 113, 122, 132, 127, 37.1371 + 87, 55, 65, 61, 58, 69, 132, 166, 172, 172, 172, 170, 168, 156, 100, 37, 37.1372 + 53, 65, 48, 56, 103, 115, 101, 87, 77, 69, 62, 56, 53, 49, 45, 45, 37.1373 + 66, 67, 67, 68, 69, 69, 70, 71, 71, 73, 75, 77, 79, 81, 83, 85, 37.1374 + 87, 88, 90, 92, 94, 96, 98, 99, 99, 100, 104, 107, 106, 104, 103, 102, 37.1375 + 101, 100, 101, 103, 104, 105, 104, 105, 107, 109, 111, 111, 109, 108, 109, 113, 37.1376 + 115, 112, 108, 105, 106, 106, 108, 108, 106, 105, 103, 102, 101, 100, 99, 99, 37.1377 + 98, 97, 96, 94, 93, 92, 91, 90, 89, 89, 88, 87, 87, 86, 85, 85, 37.1378 + 84, 84, 84, 83, 83, 83, 83, 84, 85, 88, 93, 101, 109, 116, 127, 129, 37.1379 + 92, 52, 61, 49, 48, 50, 90, 134, 157, 159, 153, 148, 121, 92, 65, 45, 37.1380 + 65, 56, 38, 76, 109, 109, 102, 85, 75, 68, 61, 55, 52, 49, 45, 45, 37.1381 + 66, 67, 67, 68, 69, 69, 70, 71, 71, 72, 74, 75, 76, 78, 80, 81, 37.1382 + 82, 84, 86, 88, 89, 91, 93, 94, 94, 96, 100, 101, 99, 98, 97, 97, 37.1383 + 98, 97, 98, 99, 100, 101, 101, 101, 103, 105, 107, 106, 105, 104, 105, 108, 37.1384 + 109, 107, 103, 101, 101, 102, 102, 103, 101, 100, 98, 96, 96, 95, 94, 94, 37.1385 + 93, 93, 92, 90, 88, 87, 87, 86, 85, 84, 84, 83, 82, 82, 81, 80, 37.1386 + 80, 80, 80, 79, 79, 79, 79, 78, 80, 83, 87, 96, 104, 111, 121, 128, 37.1387 + 109, 65, 52, 47, 46, 48, 59, 74, 88, 89, 87, 85, 63, 46, 51, 62, 37.1388 + 65, 45, 59, 98, 113, 104, 99, 82, 73, 67, 59, 54, 52, 49, 45, 45, 37.1389 + 66, 67, 67, 68, 69, 69, 70, 71, 71, 71, 72, 74, 74, 76, 77, 78, 37.1390 + 79, 81, 83, 85, 87, 89, 90, 91, 92, 95, 97, 97, 95, 94, 94, 94, 37.1391 + 94, 94, 96, 98, 99, 100, 99, 99, 100, 102, 104, 103, 102, 100, 102, 104, 37.1392 + 106, 104, 100, 98, 97, 98, 99, 99, 97, 95, 94, 93, 93, 92, 92, 91, 37.1393 + 90, 89, 88, 87, 86, 85, 85, 82, 81, 80, 79, 79, 78, 78, 77, 75, 37.1394 + 75, 75, 75, 74, 74, 74, 74, 76, 76, 81, 85, 92, 100, 107, 117, 126, 37.1395 + 125, 96, 64, 52, 46, 54, 55, 58, 56, 54, 55, 48, 49, 51, 61, 67, 37.1396 + 51, 50, 90, 111, 112, 101, 93, 79, 71, 65, 58, 52, 51, 49, 45, 45, 37.1397 + 66, 67, 67, 68, 69, 69, 70, 71, 71, 71, 71, 72, 74, 75, 76, 77, 37.1398 + 77, 78, 80, 82, 85, 87, 88, 88, 89, 93, 94, 93, 92, 92, 92, 91, 37.1399 + 90, 90, 93, 95, 97, 98, 97, 96, 98, 100, 101, 101, 100, 98, 100, 102, 37.1400 + 103, 102, 99, 95, 95, 96, 97, 96, 95, 93, 91, 92, 92, 91, 90, 88, 37.1401 + 87, 87, 86, 85, 85, 84, 83, 80, 79, 78, 77, 77, 76, 75, 75, 73, 37.1402 + 73, 73, 73, 71, 71, 71, 71, 73, 74, 78, 82, 88, 96, 102, 113, 125, 37.1403 + 126, 124, 104, 70, 53, 57, 54, 54, 54, 50, 52, 53, 43, 46, 57, 49, 37.1404 + 56, 92, 112, 113, 106, 98, 85, 76, 68, 63, 56, 52, 50, 49, 45, 45, 37.1405 + 66, 67, 67, 68, 69, 69, 70, 70, 71, 71, 71, 71, 75, 76, 76, 76, 37.1406 + 76, 77, 79, 81, 82, 83, 85, 85, 86, 89, 90, 89, 89, 89, 90, 89, 37.1407 + 87, 88, 91, 92, 93, 94, 93, 93, 95, 97, 99, 99, 97, 96, 97, 99, 37.1408 + 100, 98, 96, 92, 92, 93, 94, 94, 93, 91, 90, 89, 88, 88, 87, 87, 37.1409 + 87, 86, 86, 84, 83, 82, 82, 79, 79, 78, 77, 77, 76, 75, 74, 72, 37.1410 + 72, 72, 72, 70, 70, 70, 70, 71, 72, 75, 80, 84, 91, 97, 108, 119, 37.1411 + 123, 128, 126, 106, 79, 70, 59, 53, 50, 48, 51, 48, 55, 49, 55, 72, 37.1412 + 92, 113, 117, 110, 101, 92, 82, 73, 66, 62, 55, 51, 50, 49, 45, 45, 37.1413 + 64, 65, 66, 66, 68, 68, 69, 70, 71, 70, 71, 71, 73, 73, 74, 74, 37.1414 + 75, 76, 77, 79, 80, 80, 81, 83, 84, 86, 86, 86, 86, 86, 87, 86, 37.1415 + 86, 87, 89, 91, 91, 92, 91, 90, 92, 94, 95, 95, 94, 93, 93, 94, 37.1416 + 96, 96, 93, 90, 89, 89, 91, 92, 91, 89, 89, 88, 87, 86, 85, 85, 37.1417 + 85, 84, 83, 81, 80, 79, 78, 78, 77, 76, 75, 75, 74, 73, 73, 70, 37.1418 + 69, 69, 68, 68, 68, 68, 68, 68, 70, 73, 77, 81, 87, 93, 101, 113, 37.1419 + 119, 124, 128, 128, 112, 102, 91, 78, 71, 69, 72, 70, 75, 80, 94, 110, 37.1420 + 117, 114, 111, 103, 94, 85, 77, 69, 63, 58, 54, 51, 48, 47, 44, 45, 37.1421 + 64, 64, 65, 66, 67, 68, 69, 70, 70, 70, 71, 71, 71, 71, 72, 73, 37.1422 + 74, 75, 76, 77, 79, 78, 79, 81, 84, 85, 85, 85, 85, 85, 86, 85, 37.1423 + 85, 87, 89, 90, 92, 91, 90, 90, 91, 92, 92, 93, 92, 92, 91, 92, 37.1424 + 94, 95, 92, 89, 87, 87, 89, 90, 89, 88, 87, 87, 86, 85, 85, 83, 37.1425 + 82, 81, 81, 78, 77, 76, 76, 76, 75, 74, 73, 73, 72, 71, 71, 69, 37.1426 + 69, 68, 67, 67, 67, 67, 67, 67, 70, 73, 76, 79, 84, 90, 97, 107, 37.1427 + 113, 120, 125, 129, 129, 126, 123, 117, 111, 108, 107, 106, 111, 116, 119, 119, 37.1428 + 117, 112, 105, 96, 88, 80, 72, 64, 60, 55, 52, 51, 48, 45, 44, 45, 37.1429 + 64, 64, 65, 66, 67, 67, 68, 69, 70, 70, 70, 70, 70, 71, 72, 73, 37.1430 + 74, 74, 75, 76, 78, 77, 79, 81, 83, 84, 84, 84, 84, 84, 85, 84, 37.1431 + 85, 87, 88, 90, 91, 90, 89, 89, 90, 91, 92, 92, 92, 91, 90, 91, 37.1432 + 93, 94, 91, 88, 86, 87, 88, 89, 88, 87, 87, 86, 86, 85, 84, 82, 37.1433 + 81, 80, 80, 78, 76, 76, 75, 75, 74, 73, 72, 72, 71, 70, 70, 69, 37.1434 + 68, 67, 66, 66, 66, 66, 67, 66, 69, 72, 74, 77, 82, 88, 93, 101, 37.1435 + 107, 113, 119, 123, 127, 129, 129, 130, 126, 125, 125, 123, 123, 122, 120, 115, 37.1436 + 111, 104, 97, 90, 83, 75, 68, 62, 58, 53, 51, 50, 47, 45, 44, 45, 37.1437 + 64, 64, 65, 66, 66, 67, 67, 68, 70, 70, 70, 70, 70, 70, 71, 72, 37.1438 + 73, 74, 75, 75, 76, 77, 79, 81, 82, 83, 83, 83, 83, 83, 84, 84, 37.1439 + 84, 86, 88, 89, 89, 89, 88, 87, 89, 90, 90, 91, 90, 89, 89, 89, 37.1440 + 92, 93, 90, 88, 86, 85, 87, 87, 87, 86, 85, 85, 84, 84, 83, 81, 37.1441 + 80, 79, 78, 77, 76, 75, 74, 74, 72, 72, 71, 70, 70, 69, 68, 68, 37.1442 + 67, 66, 66, 66, 66, 66, 65, 65, 67, 70, 71, 74, 78, 83, 88, 95, 37.1443 + 101, 107, 111, 115, 118, 122, 121, 120, 120, 120, 121, 120, 118, 115, 112, 109, 37.1444 + 104, 97, 90, 85, 78, 71, 65, 59, 56, 52, 49, 49, 47, 45, 44, 45, 37.1445 + 64, 64, 65, 66, 66, 66, 67, 68, 69, 69, 69, 69, 69, 70, 71, 71, 37.1446 + 72, 73, 74, 75, 75, 76, 79, 81, 81, 82, 82, 82, 82, 82, 83, 83, 37.1447 + 84, 85, 87, 88, 89, 88, 87, 86, 87, 88, 89, 89, 89, 88, 87, 88, 37.1448 + 91, 92, 89, 87, 85, 84, 85, 86, 86, 85, 84, 84, 83, 82, 82, 80, 37.1449 + 79, 78, 77, 76, 75, 74, 74, 73, 71, 71, 70, 69, 69, 68, 67, 67, 37.1450 + 67, 66, 65, 65, 65, 65, 65, 64, 65, 67, 68, 71, 75, 79, 83, 91, 37.1451 + 96, 101, 106, 110, 112, 114, 113, 113, 115, 116, 115, 113, 112, 110, 108, 103, 37.1452 + 98, 91, 85, 80, 74, 68, 62, 56, 54, 50, 48, 48, 46, 45, 45, 45, 37.1453 + 64, 64, 65, 65, 65, 66, 67, 67, 69, 69, 69, 69, 69, 69, 70, 71, 37.1454 + 71, 72, 73, 74, 73, 75, 78, 81, 80, 81, 81, 81, 81, 81, 82, 82, 37.1455 + 83, 85, 87, 88, 88, 87, 86, 86, 86, 87, 88, 88, 88, 87, 86, 87, 37.1456 + 90, 91, 88, 86, 85, 83, 84, 85, 85, 84, 83, 83, 82, 81, 81, 79, 37.1457 + 78, 77, 76, 76, 75, 74, 74, 71, 71, 70, 69, 69, 68, 67, 66, 67, 37.1458 + 66, 66, 65, 65, 65, 65, 64, 63, 64, 65, 66, 69, 72, 76, 79, 84, 37.1459 + 89, 95, 98, 103, 106, 107, 107, 106, 108, 109, 107, 104, 103, 102, 99, 95, 37.1460 + 91, 85, 80, 75, 69, 63, 58, 54, 52, 48, 47, 47, 46, 45, 45, 45, 37.1461 + 64, 64, 65, 65, 65, 66, 67, 67, 69, 69, 69, 69, 69, 69, 70, 71, 37.1462 + 71, 72, 73, 73, 73, 74, 78, 80, 80, 81, 81, 81, 81, 81, 82, 82, 37.1463 + 83, 85, 86, 87, 87, 86, 86, 85, 85, 86, 87, 88, 87, 86, 85, 86, 37.1464 + 90, 90, 87, 86, 85, 83, 83, 84, 84, 83, 83, 83, 82, 81, 80, 78, 37.1465 + 77, 76, 76, 76, 75, 74, 73, 71, 70, 69, 69, 68, 68, 67, 66, 66, 37.1466 + 66, 65, 65, 65, 65, 65, 64, 63, 63, 65, 65, 67, 70, 74, 76, 79, 37.1467 + 83, 88, 91, 91, 96, 99, 100, 99, 102, 101, 99, 99, 97, 94, 92, 88, 37.1468 + 85, 81, 75, 69, 64, 59, 55, 52, 50, 48, 46, 46, 46, 45, 45, 45, 37.1469 + 64, 64, 65, 65, 65, 65, 65, 65, 66, 67, 67, 68, 68, 69, 70, 71, 37.1470 + 71, 71, 72, 73, 73, 75, 77, 79, 79, 80, 80, 79, 79, 79, 80, 80, 37.1471 + 82, 83, 84, 84, 84, 84, 84, 84, 85, 86, 87, 87, 86, 85, 84, 85, 37.1472 + 86, 88, 86, 83, 81, 79, 79, 82, 83, 83, 83, 81, 79, 79, 78, 77, 37.1473 + 76, 75, 75, 75, 75, 74, 73, 71, 70, 69, 69, 68, 68, 67, 67, 67, 37.1474 + 67, 66, 65, 65, 64, 63, 62, 62, 62, 64, 64, 64, 67, 69, 71, 76, 37.1475 + 79, 83, 86, 87, 90, 93, 93, 92, 92, 92, 92, 91, 89, 87, 85, 82, 37.1476 + 78, 73, 68, 64, 61, 56, 53, 51, 49, 47, 45, 45, 45, 45, 45, 45, 37.1477 + 64, 64, 64, 64, 64, 64, 64, 64, 65, 66, 67, 68, 68, 69, 70, 70, 37.1478 + 70, 71, 72, 73, 73, 75, 76, 78, 79, 79, 79, 79, 79, 79, 80, 80, 37.1479 + 81, 82, 83, 83, 83, 83, 83, 84, 84, 85, 86, 86, 85, 84, 83, 83, 37.1480 + 86, 87, 85, 82, 80, 79, 79, 81, 82, 82, 82, 80, 79, 78, 77, 76, 37.1481 + 75, 74, 74, 74, 74, 73, 72, 71, 70, 69, 69, 68, 68, 68, 68, 68, 37.1482 + 67, 66, 65, 65, 64, 62, 61, 61, 62, 63, 64, 63, 65, 67, 69, 71, 37.1483 + 74, 77, 79, 81, 84, 86, 86, 85, 85, 85, 85, 83, 82, 80, 79, 77, 37.1484 + 74, 70, 66, 62, 58, 54, 52, 50, 49, 47, 45, 45, 45, 45, 45, 45, 37.1485 + 64, 64, 64, 64, 64, 64, 64, 64, 65, 66, 66, 67, 68, 68, 69, 70, 37.1486 + 70, 71, 71, 72, 73, 74, 76, 77, 77, 78, 78, 78, 78, 78, 79, 80, 37.1487 + 81, 82, 82, 83, 82, 82, 82, 82, 84, 85, 85, 85, 84, 83, 82, 83, 37.1488 + 85, 87, 85, 82, 80, 78, 78, 80, 81, 81, 81, 80, 79, 78, 77, 75, 37.1489 + 74, 73, 73, 73, 73, 72, 71, 71, 70, 69, 69, 68, 68, 68, 68, 67, 37.1490 + 66, 66, 65, 65, 64, 62, 61, 61, 61, 62, 62, 62, 63, 65, 66, 66, 37.1491 + 68, 70, 73, 75, 77, 78, 80, 79, 79, 79, 78, 76, 75, 73, 73, 71, 37.1492 + 68, 64, 62, 59, 56, 52, 50, 50, 48, 46, 45, 45, 45, 45, 45, 45, 37.1493 + 64, 64, 64, 64, 64, 64, 64, 64, 65, 65, 66, 67, 67, 68, 68, 69, 37.1494 + 70, 70, 71, 72, 73, 74, 75, 76, 77, 78, 78, 78, 78, 78, 79, 79, 37.1495 + 80, 81, 82, 82, 81, 81, 81, 81, 82, 83, 84, 83, 82, 82, 81, 81, 37.1496 + 84, 86, 84, 81, 79, 78, 78, 79, 80, 80, 80, 79, 78, 77, 77, 75, 37.1497 + 73, 73, 72, 73, 72, 71, 71, 71, 70, 69, 69, 67, 67, 67, 67, 67, 37.1498 + 66, 65, 65, 65, 64, 62, 61, 61, 61, 61, 61, 61, 61, 62, 63, 63, 37.1499 + 64, 67, 69, 71, 72, 73, 74, 74, 74, 74, 74, 72, 71, 69, 67, 65, 37.1500 + 63, 60, 58, 56, 53, 50, 49, 48, 48, 46, 45, 45, 45, 45, 44, 44, 37.1501 + 63, 63, 63, 63, 63, 63, 63, 63, 64, 65, 66, 66, 67, 67, 68, 69, 37.1502 + 69, 70, 71, 72, 74, 74, 74, 74, 76, 77, 77, 77, 77, 77, 78, 78, 37.1503 + 80, 80, 82, 81, 80, 80, 80, 80, 81, 81, 82, 82, 81, 80, 79, 80, 37.1504 + 83, 85, 82, 80, 79, 77, 77, 78, 79, 79, 79, 78, 78, 77, 76, 74, 37.1505 + 73, 72, 72, 72, 72, 71, 70, 70, 70, 69, 69, 67, 67, 67, 67, 66, 37.1506 + 66, 65, 64, 64, 64, 62, 61, 61, 60, 60, 60, 60, 60, 60, 61, 62, 37.1507 + 63, 65, 66, 69, 70, 70, 71, 70, 70, 70, 70, 68, 66, 64, 63, 61, 37.1508 + 59, 57, 54, 53, 50, 47, 47, 47, 47, 46, 45, 45, 45, 45, 44, 44, 37.1509 + 63, 63, 63, 63, 63, 63, 63, 63, 64, 64, 65, 66, 66, 67, 68, 68, 37.1510 + 69, 69, 70, 71, 74, 73, 73, 74, 75, 75, 75, 76, 76, 77, 77, 78, 37.1511 + 79, 80, 81, 81, 79, 79, 79, 79, 80, 80, 81, 81, 80, 79, 78, 79, 37.1512 + 82, 83, 81, 79, 78, 76, 77, 77, 77, 77, 77, 77, 77, 76, 75, 74, 37.1513 + 73, 72, 71, 71, 71, 70, 70, 70, 70, 69, 69, 66, 66, 66, 66, 66, 37.1514 + 65, 64, 64, 64, 64, 62, 61, 61, 60, 59, 58, 58, 58, 58, 58, 59, 37.1515 + 59, 61, 63, 65, 66, 66, 66, 65, 64, 64, 64, 63, 61, 60, 59, 58, 37.1516 + 57, 54, 52, 50, 47, 46, 46, 46, 46, 46, 45, 45, 45, 45, 44, 43, 37.1517 + 62, 62, 62, 62, 63, 63, 63, 63, 64, 64, 65, 65, 65, 66, 67, 67, 37.1518 + 68, 69, 70, 71, 73, 73, 73, 73, 74, 74, 74, 74, 75, 75, 76, 77, 37.1519 + 79, 79, 80, 80, 79, 79, 79, 78, 79, 80, 81, 81, 79, 79, 78, 78, 37.1520 + 80, 82, 80, 79, 77, 76, 76, 77, 77, 77, 77, 77, 76, 75, 74, 72, 37.1521 + 72, 71, 71, 71, 71, 70, 70, 70, 69, 68, 68, 66, 66, 66, 66, 65, 37.1522 + 64, 64, 63, 64, 63, 62, 61, 60, 59, 58, 57, 58, 58, 57, 57, 58, 37.1523 + 58, 59, 60, 62, 62, 63, 62, 62, 62, 61, 61, 60, 59, 58, 57, 56, 37.1524 + 55, 53, 52, 49, 48, 46, 45, 45, 46, 45, 45, 45, 45, 45, 44, 43, 37.1525 + 60, 61, 61, 62, 63, 63, 63, 63, 64, 64, 65, 65, 65, 65, 66, 67, 37.1526 + 67, 68, 70, 72, 73, 73, 73, 73, 73, 73, 73, 72, 71, 72, 73, 75, 37.1527 + 78, 78, 79, 79, 79, 79, 79, 78, 78, 79, 79, 80, 79, 78, 78, 77, 37.1528 + 78, 80, 80, 78, 76, 75, 75, 76, 77, 77, 77, 76, 75, 74, 73, 71, 37.1529 + 71, 71, 71, 70, 70, 70, 70, 68, 67, 67, 66, 66, 66, 66, 66, 65, 37.1530 + 64, 63, 63, 62, 61, 60, 60, 59, 59, 58, 58, 58, 58, 58, 58, 59, 37.1531 + 59, 59, 59, 59, 59, 59, 59, 60, 59, 58, 58, 58, 58, 57, 55, 53, 37.1532 + 52, 51, 50, 50, 48, 47, 47, 46, 46, 45, 45, 45, 45, 45, 44, 43, 37.1533 + 60, 61, 61, 62, 63, 63, 63, 63, 64, 64, 65, 65, 65, 65, 66, 67, 37.1534 + 67, 68, 70, 72, 73, 73, 73, 73, 73, 73, 73, 72, 71, 72, 72, 74, 37.1535 + 77, 78, 79, 79, 79, 79, 79, 78, 78, 79, 79, 80, 79, 78, 77, 77, 37.1536 + 78, 80, 80, 78, 76, 75, 75, 75, 76, 76, 76, 76, 75, 74, 73, 71, 37.1537 + 71, 71, 71, 70, 70, 70, 70, 68, 67, 67, 66, 66, 66, 66, 66, 65, 37.1538 + 64, 63, 63, 62, 61, 60, 60, 59, 59, 58, 58, 58, 58, 58, 58, 58, 37.1539 + 58, 58, 58, 58, 58, 58, 58, 57, 56, 55, 55, 56, 55, 54, 53, 51, 37.1540 + 51, 50, 49, 50, 49, 48, 47, 46, 46, 45, 45, 45, 45, 45, 44, 43, 37.1541 + 60, 61, 61, 62, 63, 63, 63, 63, 64, 64, 65, 65, 65, 65, 66, 67, 37.1542 + 67, 68, 70, 72, 73, 73, 73, 73, 73, 73, 73, 72, 71, 72, 72, 74, 37.1543 + 77, 78, 78, 78, 78, 78, 78, 78, 78, 79, 79, 79, 79, 78, 77, 77, 37.1544 + 78, 80, 80, 78, 76, 75, 75, 75, 76, 76, 76, 76, 75, 74, 73, 71, 37.1545 + 71, 71, 71, 70, 70, 70, 70, 68, 67, 67, 66, 66, 66, 66, 66, 65, 37.1546 + 64, 63, 63, 62, 61, 60, 60, 59, 59, 58, 58, 58, 58, 58, 58, 58, 37.1547 + 58, 58, 57, 56, 56, 56, 56, 55, 54, 54, 53, 54, 53, 52, 51, 50, 37.1548 + 49, 48, 48, 50, 49, 48, 47, 46, 46, 45, 45, 45, 45, 45, 44, 43, 37.1549 + 18, 17, 17, 16, 16, 17, 17, 18, 19, 19, 19, 20, 19, 19, 20, 22, 37.1550 + 27, 29, 31, 30, 30, 31, 32, 32, 31, 31, 36, 38, 39, 41, 37, 35, 37.1551 + 43, 45, 39, 36, 38, 40, 46, 52, 40, 47, 45, 50, 52, 52, 48, 46, 37.1552 + 54, 45, 41, 43, 41, 37, 33, 35, 41, 35, 31, 36, 38, 34, 30, 30, 37.1553 + 31, 29, 30, 32, 34, 35, 36, 36, 35, 32, 30, 27, 25, 24, 23, 20, 37.1554 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1555 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1556 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 9, 8, 9, 8, 7, 7, 37.1557 + 18, 17, 17, 16, 16, 17, 17, 18, 19, 19, 19, 20, 20, 20, 21, 22, 37.1558 + 26, 28, 29, 29, 30, 31, 32, 33, 32, 32, 34, 36, 39, 41, 38, 37, 37.1559 + 44, 47, 42, 39, 40, 42, 49, 54, 45, 49, 49, 53, 54, 54, 51, 49, 37.1560 + 58, 49, 45, 45, 42, 37, 35, 38, 41, 35, 35, 39, 38, 34, 29, 30, 37.1561 + 32, 31, 32, 33, 35, 35, 35, 36, 35, 32, 30, 27, 25, 24, 23, 20, 37.1562 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1563 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1564 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 9, 9, 9, 9, 7, 7, 37.1565 + 18, 17, 17, 16, 16, 17, 17, 18, 19, 20, 20, 20, 21, 21, 22, 22, 37.1566 + 25, 27, 28, 29, 31, 32, 34, 34, 34, 33, 34, 35, 39, 41, 41, 38, 37.1567 + 43, 49, 46, 42, 41, 44, 50, 56, 50, 51, 53, 55, 56, 56, 52, 53, 37.1568 + 59, 51, 49, 49, 44, 38, 38, 41, 40, 37, 39, 42, 39, 34, 29, 31, 37.1569 + 33, 34, 34, 35, 36, 35, 36, 36, 34, 31, 29, 27, 25, 24, 23, 20, 37.1570 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1571 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1572 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 9, 9, 10, 9, 7, 7, 37.1573 + 18, 17, 17, 16, 16, 17, 17, 18, 20, 20, 20, 20, 21, 21, 22, 22, 37.1574 + 24, 26, 28, 29, 31, 32, 34, 35, 35, 35, 34, 36, 39, 41, 43, 41, 37.1575 + 41, 48, 48, 44, 42, 43, 49, 56, 54, 51, 55, 55, 57, 57, 53, 54, 37.1576 + 60, 52, 52, 51, 45, 39, 41, 43, 41, 39, 42, 43, 38, 33, 30, 32, 37.1577 + 35, 36, 37, 37, 37, 36, 35, 35, 33, 30, 28, 26, 25, 23, 22, 20, 37.1578 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1579 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1580 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 10, 10, 10, 10, 8, 8, 37.1581 + 18, 17, 17, 16, 16, 17, 17, 18, 20, 20, 20, 19, 21, 21, 22, 24, 37.1582 + 25, 27, 29, 30, 31, 32, 35, 36, 37, 39, 37, 37, 38, 40, 45, 45, 37.1583 + 42, 46, 50, 47, 43, 44, 50, 56, 58, 51, 59, 57, 59, 60, 56, 57, 37.1584 + 60, 53, 54, 50, 46, 43, 45, 44, 42, 44, 45, 42, 37, 33, 33, 35, 37.1585 + 38, 38, 39, 39, 37, 37, 35, 34, 32, 29, 27, 26, 24, 23, 22, 20, 37.1586 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1587 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1588 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 10, 10, 11, 10, 9, 9, 37.1589 + 18, 17, 17, 16, 16, 17, 17, 18, 20, 19, 19, 19, 21, 21, 23, 24, 37.1590 + 26, 28, 29, 30, 30, 32, 35, 36, 38, 41, 39, 37, 36, 39, 45, 50, 37.1591 + 46, 46, 54, 52, 45, 47, 54, 60, 63, 53, 63, 61, 64, 64, 61, 61, 37.1592 + 61, 54, 57, 50, 47, 45, 46, 44, 43, 47, 44, 39, 35, 33, 36, 39, 37.1593 + 40, 38, 38, 38, 38, 36, 33, 32, 30, 27, 25, 24, 22, 21, 20, 20, 37.1594 + 19, 19, 19, 19, 20, 20, 19, 14, 13, 14, 15, 15, 16, 17, 16, 14, 37.1595 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 9, 9, 11, 37.1596 + 11, 11, 11, 9, 7, 7, 9, 11, 11, 11, 10, 11, 11, 11, 10, 10, 37.1597 + 18, 17, 17, 16, 16, 17, 17, 18, 19, 19, 19, 19, 20, 22, 23, 24, 37.1598 + 25, 26, 28, 29, 30, 31, 34, 35, 37, 41, 41, 38, 37, 38, 44, 50, 37.1599 + 50, 46, 52, 56, 48, 48, 56, 60, 66, 56, 64, 65, 67, 67, 62, 64, 37.1600 + 60, 55, 57, 51, 47, 48, 47, 42, 46, 49, 43, 38, 36, 36, 38, 41, 37.1601 + 41, 39, 39, 38, 37, 34, 32, 31, 29, 27, 25, 24, 23, 22, 20, 20, 37.1602 + 19, 20, 19, 19, 21, 20, 20, 15, 13, 14, 15, 15, 16, 17, 16, 14, 37.1603 + 13, 12, 12, 12, 11, 10, 10, 12, 12, 12, 11, 11, 10, 10, 9, 11, 37.1604 + 11, 11, 10, 9, 8, 7, 9, 11, 11, 11, 11, 12, 12, 12, 10, 10, 37.1605 + 18, 17, 18, 16, 16, 17, 17, 18, 19, 19, 19, 20, 20, 22, 25, 25, 37.1606 + 25, 27, 29, 30, 31, 33, 34, 36, 38, 41, 44, 44, 41, 39, 42, 47, 37.1607 + 52, 49, 48, 59, 54, 49, 56, 60, 69, 62, 66, 69, 69, 71, 63, 69, 37.1608 + 59, 60, 57, 53, 50, 55, 50, 45, 52, 48, 41, 37, 39, 41, 41, 43, 37.1609 + 42, 41, 40, 37, 35, 31, 30, 30, 29, 27, 26, 25, 24, 22, 21, 21, 37.1610 + 20, 20, 20, 20, 21, 21, 20, 15, 14, 15, 16, 15, 16, 17, 16, 14, 37.1611 + 13, 13, 12, 12, 11, 10, 10, 13, 13, 12, 12, 12, 11, 10, 10, 11, 37.1612 + 11, 11, 10, 9, 9, 9, 10, 13, 12, 11, 11, 13, 13, 13, 12, 11, 37.1613 + 18, 17, 18, 17, 17, 17, 17, 18, 18, 18, 19, 20, 21, 23, 26, 26, 37.1614 + 27, 29, 32, 32, 33, 35, 36, 38, 40, 43, 47, 47, 44, 43, 43, 45, 37.1615 + 53, 55, 52, 56, 62, 54, 54, 62, 71, 68, 70, 73, 73, 74, 66, 72, 37.1616 + 61, 65, 60, 53, 59, 59, 51, 54, 55, 46, 38, 38, 43, 46, 46, 45, 37.1617 + 42, 40, 38, 35, 34, 31, 29, 29, 28, 26, 25, 24, 23, 21, 20, 21, 37.1618 + 20, 20, 20, 20, 21, 21, 20, 15, 14, 15, 16, 15, 16, 17, 17, 14, 37.1619 + 14, 13, 12, 12, 11, 10, 11, 13, 13, 12, 12, 12, 11, 10, 10, 11, 37.1620 + 11, 11, 10, 9, 9, 9, 10, 13, 12, 11, 11, 13, 13, 13, 12, 12, 37.1621 + 19, 18, 18, 17, 17, 17, 18, 18, 18, 19, 20, 21, 22, 24, 28, 28, 37.1622 + 28, 30, 34, 34, 36, 37, 40, 40, 41, 45, 49, 49, 49, 50, 46, 45, 37.1623 + 51, 61, 59, 52, 65, 61, 54, 64, 74, 75, 74, 77, 78, 78, 71, 75, 37.1624 + 63, 69, 62, 56, 64, 60, 57, 62, 55, 42, 38, 42, 48, 51, 52, 48, 37.1625 + 44, 40, 37, 34, 33, 31, 29, 29, 28, 26, 24, 23, 22, 20, 19, 19, 37.1626 + 20, 20, 20, 20, 21, 21, 20, 15, 14, 15, 16, 16, 17, 18, 17, 15, 37.1627 + 14, 13, 13, 13, 12, 11, 11, 13, 13, 12, 12, 12, 11, 10, 10, 11, 37.1628 + 11, 11, 10, 9, 9, 9, 11, 13, 12, 11, 11, 13, 13, 13, 13, 13, 37.1629 + 20, 19, 19, 18, 18, 18, 18, 18, 18, 18, 21, 23, 23, 27, 30, 31, 37.1630 + 28, 31, 35, 37, 38, 39, 41, 42, 42, 46, 48, 51, 54, 55, 52, 49, 37.1631 + 50, 61, 66, 55, 64, 69, 60, 63, 75, 82, 78, 82, 84, 83, 77, 80, 37.1632 + 69, 72, 63, 62, 65, 60, 65, 63, 49, 43, 45, 49, 54, 55, 54, 48, 37.1633 + 43, 37, 34, 32, 33, 31, 29, 28, 27, 25, 23, 21, 20, 18, 17, 19, 37.1634 + 20, 20, 20, 20, 21, 21, 20, 15, 14, 15, 17, 17, 18, 19, 18, 16, 37.1635 + 15, 14, 14, 13, 12, 11, 11, 13, 13, 12, 12, 12, 11, 10, 10, 11, 37.1636 + 11, 11, 10, 10, 10, 10, 11, 13, 12, 11, 11, 13, 13, 13, 13, 14, 37.1637 + 20, 19, 20, 18, 18, 19, 19, 18, 19, 19, 23, 24, 25, 29, 33, 34, 37.1638 + 30, 33, 38, 41, 41, 42, 44, 45, 47, 49, 51, 53, 56, 59, 59, 57, 37.1639 + 53, 59, 68, 65, 65, 75, 71, 66, 78, 90, 82, 88, 92, 89, 84, 85, 37.1640 + 75, 75, 64, 71, 67, 69, 73, 60, 47, 46, 52, 56, 59, 57, 54, 46, 37.1641 + 41, 36, 33, 32, 32, 31, 29, 28, 27, 25, 24, 21, 20, 18, 17, 19, 37.1642 + 20, 20, 20, 20, 21, 21, 20, 15, 14, 15, 17, 17, 18, 19, 18, 16, 37.1643 + 15, 15, 14, 14, 13, 12, 12, 13, 13, 12, 12, 12, 11, 10, 10, 11, 37.1644 + 11, 11, 10, 10, 10, 10, 11, 13, 12, 11, 11, 13, 13, 13, 13, 14, 37.1645 + 20, 19, 20, 19, 19, 19, 19, 18, 18, 20, 23, 25, 26, 30, 34, 35, 37.1646 + 32, 35, 39, 42, 43, 44, 46, 48, 50, 51, 52, 53, 57, 61, 65, 63, 37.1647 + 56, 55, 67, 76, 69, 78, 84, 70, 79, 95, 86, 93, 97, 94, 90, 90, 37.1648 + 82, 76, 66, 79, 70, 79, 77, 58, 49, 52, 58, 60, 61, 58, 53, 44, 37.1649 + 39, 35, 32, 32, 30, 31, 30, 28, 27, 25, 24, 21, 20, 18, 17, 19, 37.1650 + 19, 20, 19, 19, 20, 19, 20, 16, 15, 16, 17, 18, 20, 19, 19, 16, 37.1651 + 16, 15, 14, 14, 13, 12, 12, 13, 13, 12, 12, 12, 11, 10, 9, 9, 37.1652 + 10, 11, 11, 11, 11, 11, 12, 12, 12, 11, 11, 13, 13, 13, 13, 14, 37.1653 + 21, 21, 22, 21, 20, 20, 21, 20, 18, 22, 27, 29, 32, 35, 36, 36, 37.1654 + 30, 33, 38, 35, 35, 42, 50, 47, 49, 52, 57, 60, 58, 68, 71, 65, 37.1655 + 62, 63, 67, 76, 77, 75, 103, 74, 77, 100, 96, 95, 98, 93, 98, 95, 37.1656 + 89, 79, 74, 78, 78, 84, 74, 61, 62, 63, 62, 63, 60, 56, 52, 44, 37.1657 + 40, 37, 35, 34, 34, 32, 30, 27, 25, 25, 24, 22, 21, 20, 19, 16, 37.1658 + 16, 17, 16, 17, 17, 16, 17, 17, 17, 18, 20, 20, 20, 20, 19, 14, 37.1659 + 12, 12, 11, 12, 12, 12, 13, 15, 15, 14, 14, 13, 12, 11, 9, 9, 37.1660 + 9, 9, 9, 11, 12, 12, 12, 11, 11, 11, 11, 13, 13, 14, 15, 14, 37.1661 + 21, 22, 22, 22, 20, 20, 23, 22, 19, 23, 28, 31, 35, 37, 37, 36, 37.1662 + 28, 31, 33, 37, 41, 41, 45, 51, 50, 52, 53, 58, 61, 54, 65, 73, 37.1663 + 69, 74, 67, 68, 84, 76, 103, 88, 68, 106, 106, 106, 101, 97, 106, 97, 37.1664 + 91, 72, 82, 84, 86, 77, 61, 67, 74, 73, 64, 60, 57, 54, 52, 45, 37.1665 + 41, 38, 36, 35, 35, 33, 31, 26, 24, 23, 23, 22, 21, 21, 20, 16, 37.1666 + 14, 15, 15, 15, 16, 15, 17, 19, 19, 20, 22, 21, 22, 21, 19, 14, 37.1667 + 12, 11, 11, 12, 12, 12, 14, 17, 16, 16, 15, 14, 13, 12, 10, 8, 37.1668 + 8, 8, 9, 11, 11, 12, 11, 9, 9, 10, 12, 13, 14, 15, 15, 15, 37.1669 + 20, 20, 22, 21, 19, 21, 23, 24, 22, 25, 30, 32, 36, 38, 38, 37, 37.1670 + 34, 36, 37, 46, 48, 56, 61, 68, 62, 63, 64, 58, 53, 56, 53, 56, 37.1671 + 72, 90, 87, 76, 83, 85, 94, 101, 79, 113, 115, 114, 108, 105, 110, 99, 37.1672 + 97, 83, 93, 82, 91, 72, 64, 82, 82, 78, 67, 57, 53, 51, 49, 44, 37.1673 + 41, 38, 36, 34, 34, 32, 31, 26, 24, 24, 24, 22, 23, 23, 21, 18, 37.1674 + 18, 19, 18, 19, 19, 18, 19, 20, 19, 21, 21, 21, 22, 21, 20, 16, 37.1675 + 15, 14, 13, 15, 15, 15, 16, 18, 18, 17, 16, 16, 15, 14, 11, 9, 37.1676 + 9, 8, 9, 11, 12, 12, 10, 10, 10, 10, 11, 13, 14, 14, 15, 15, 37.1677 + 20, 20, 21, 21, 19, 21, 24, 25, 25, 28, 32, 32, 34, 36, 37, 38, 37.1678 + 36, 41, 51, 60, 64, 71, 67, 59, 51, 51, 59, 60, 62, 57, 53, 59, 37.1679 + 75, 96, 102, 91, 80, 91, 92, 91, 87, 110, 128, 123, 115, 112, 117, 107, 37.1680 + 89, 83, 92, 95, 78, 74, 74, 89, 89, 79, 67, 56, 49, 47, 47, 44, 37.1681 + 41, 39, 36, 33, 32, 30, 30, 28, 26, 26, 26, 24, 25, 25, 23, 22, 37.1682 + 21, 22, 21, 21, 22, 21, 22, 21, 21, 22, 21, 21, 22, 22, 21, 18, 37.1683 + 17, 16, 15, 16, 16, 16, 17, 19, 19, 18, 18, 17, 17, 16, 13, 11, 37.1684 + 10, 10, 11, 12, 13, 13, 11, 10, 10, 10, 11, 13, 13, 14, 14, 14, 37.1685 + 19, 20, 20, 21, 19, 21, 25, 27, 28, 31, 33, 31, 31, 35, 37, 41, 37.1686 + 42, 52, 66, 67, 59, 47, 37, 27, 23, 21, 30, 29, 41, 65, 73, 72, 37.1687 + 85, 81, 98, 99, 84, 88, 91, 101, 112, 120, 147, 138, 132, 128, 134, 122, 37.1688 + 97, 108, 106, 111, 88, 96, 101, 104, 95, 78, 63, 55, 48, 46, 44, 42, 37.1689 + 41, 38, 37, 33, 31, 29, 28, 30, 30, 28, 29, 28, 28, 28, 27, 25, 37.1690 + 24, 25, 25, 24, 25, 24, 26, 22, 21, 21, 21, 21, 22, 22, 21, 20, 37.1691 + 19, 18, 17, 18, 18, 18, 19, 21, 21, 20, 20, 20, 19, 18, 16, 14, 37.1692 + 14, 13, 14, 15, 15, 15, 12, 10, 10, 10, 11, 13, 13, 14, 13, 13, 37.1693 + 18, 18, 20, 20, 19, 22, 25, 28, 30, 32, 32, 30, 30, 35, 39, 48, 37.1694 + 60, 67, 62, 46, 27, 15, 11, 19, 27, 28, 33, 25, 23, 37, 73, 98, 37.1695 + 97, 29, 27, 46, 86, 87, 90, 113, 80, 69, 80, 77, 75, 70, 78, 67, 37.1696 + 65, 79, 58, 46, 56, 66, 74, 93, 88, 77, 61, 54, 48, 44, 42, 41, 37.1697 + 40, 37, 36, 34, 32, 30, 29, 32, 32, 31, 32, 30, 31, 31, 30, 26, 37.1698 + 26, 27, 26, 26, 27, 26, 26, 23, 21, 20, 20, 21, 21, 21, 21, 20, 37.1699 + 20, 19, 18, 19, 19, 19, 20, 22, 21, 20, 20, 20, 19, 18, 17, 16, 37.1700 + 16, 16, 16, 16, 16, 16, 14, 9, 9, 9, 10, 12, 13, 13, 12, 11, 37.1701 + 17, 18, 19, 19, 19, 21, 25, 28, 31, 32, 30, 28, 29, 37, 46, 59, 37.1702 + 73, 64, 34, 15, 22, 24, 22, 36, 50, 57, 61, 51, 44, 40, 56, 73, 37.1703 + 85, 15, 29, 29, 77, 99, 90, 143, 83, 72, 71, 79, 76, 73, 82, 83, 37.1704 + 79, 58, 54, 67, 72, 95, 98, 68, 71, 74, 61, 56, 48, 43, 40, 39, 37.1705 + 39, 37, 34, 35, 35, 33, 31, 34, 34, 33, 33, 32, 33, 31, 31, 28, 37.1706 + 27, 27, 28, 27, 27, 27, 26, 23, 22, 20, 19, 20, 20, 20, 20, 19, 37.1707 + 19, 18, 18, 19, 19, 19, 20, 21, 21, 20, 19, 20, 19, 18, 18, 17, 37.1708 + 17, 16, 16, 16, 16, 16, 14, 10, 9, 8, 10, 11, 12, 12, 12, 11, 37.1709 + 16, 16, 19, 20, 19, 22, 24, 30, 32, 33, 27, 27, 29, 46, 57, 72, 37.1710 + 65, 24, 23, 33, 40, 48, 56, 59, 61, 57, 50, 45, 52, 60, 64, 53, 37.1711 + 57, 38, 45, 28, 63, 118, 104, 135, 76, 69, 76, 88, 84, 88, 99, 86, 37.1712 + 65, 52, 62, 93, 100, 107, 99, 32, 67, 75, 63, 51, 45, 41, 39, 39, 37.1713 + 38, 36, 35, 35, 35, 34, 34, 36, 35, 34, 34, 33, 33, 31, 31, 28, 37.1714 + 28, 28, 28, 29, 29, 28, 27, 24, 22, 22, 21, 19, 19, 18, 17, 17, 37.1715 + 18, 18, 18, 19, 20, 20, 21, 22, 22, 22, 22, 22, 21, 20, 18, 17, 37.1716 + 17, 16, 16, 17, 18, 17, 13, 11, 9, 7, 7, 8, 8, 9, 11, 12, 37.1717 + 15, 16, 18, 20, 19, 23, 25, 30, 32, 33, 28, 28, 37, 56, 69, 65, 37.1718 + 38, 27, 38, 52, 62, 61, 50, 36, 38, 45, 44, 39, 41, 50, 55, 57, 37.1719 + 54, 70, 75, 45, 67, 123, 114, 138, 79, 61, 81, 92, 102, 92, 118, 81, 37.1720 + 76, 75, 90, 122, 129, 130, 111, 29, 62, 73, 60, 49, 46, 43, 42, 43, 37.1721 + 42, 40, 38, 38, 38, 37, 36, 38, 37, 36, 36, 34, 34, 32, 31, 28, 37.1722 + 28, 28, 28, 30, 29, 28, 27, 24, 23, 22, 21, 19, 20, 18, 17, 17, 37.1723 + 17, 17, 17, 20, 20, 22, 22, 20, 20, 20, 20, 20, 20, 18, 18, 18, 37.1724 + 18, 17, 17, 17, 18, 16, 14, 13, 11, 10, 8, 8, 8, 9, 10, 11, 37.1725 + 14, 16, 18, 20, 20, 23, 27, 32, 34, 34, 31, 33, 46, 64, 75, 45, 37.1726 + 40, 43, 52, 58, 56, 40, 28, 40, 46, 59, 64, 65, 51, 42, 38, 49, 37.1727 + 63, 80, 75, 47, 71, 126, 120, 143, 111, 84, 84, 81, 83, 75, 63, 32, 37.1728 + 58, 93, 118, 139, 121, 91, 72, 33, 62, 70, 58, 50, 49, 48, 47, 47, 37.1729 + 47, 44, 43, 42, 42, 41, 40, 39, 38, 38, 37, 35, 35, 33, 33, 29, 37.1730 + 29, 29, 30, 31, 30, 29, 28, 26, 25, 23, 23, 21, 21, 19, 17, 16, 37.1731 + 16, 17, 18, 20, 21, 23, 23, 19, 19, 19, 19, 19, 18, 17, 18, 20, 37.1732 + 19, 18, 17, 16, 16, 14, 14, 15, 12, 11, 9, 8, 8, 9, 9, 10, 37.1733 + 15, 16, 19, 19, 21, 25, 28, 35, 36, 37, 35, 40, 56, 75, 48, 16, 37.1734 + 30, 37, 41, 45, 39, 18, 34, 63, 61, 67, 73, 79, 83, 70, 31, 43, 37.1735 + 71, 94, 70, 36, 65, 121, 119, 140, 144, 128, 113, 71, 64, 52, 9, 17, 37.1736 + 74, 112, 126, 107, 45, 47, 49, 46, 67, 67, 59, 55, 54, 54, 54, 52, 37.1737 + 49, 47, 46, 44, 44, 43, 42, 40, 39, 37, 37, 37, 37, 35, 34, 31, 37.1738 + 32, 31, 32, 34, 32, 32, 31, 30, 28, 25, 25, 22, 22, 21, 19, 16, 37.1739 + 17, 18, 19, 20, 21, 23, 23, 19, 19, 19, 19, 19, 19, 18, 18, 20, 37.1740 + 19, 18, 18, 16, 16, 13, 13, 16, 12, 9, 9, 9, 7, 7, 7, 8, 37.1741 + 15, 17, 19, 20, 21, 27, 30, 37, 39, 39, 39, 47, 68, 72, 8, 15, 37.1742 + 32, 44, 52, 52, 28, 29, 64, 64, 61, 59, 61, 66, 82, 93, 64, 50, 37.1743 + 76, 82, 64, 31, 53, 113, 118, 125, 144, 170, 195, 145, 89, 38, 66, 108, 37.1744 + 124, 127, 125, 54, 32, 77, 74, 76, 79, 72, 65, 63, 63, 63, 63, 57, 37.1745 + 54, 52, 51, 49, 47, 47, 46, 42, 40, 39, 38, 39, 38, 38, 37, 34, 37.1746 + 33, 34, 34, 34, 35, 33, 34, 33, 32, 28, 27, 24, 23, 23, 21, 16, 37.1747 + 17, 19, 20, 20, 22, 24, 25, 20, 20, 20, 21, 22, 22, 21, 21, 22, 37.1748 + 21, 20, 19, 17, 17, 13, 14, 17, 14, 11, 11, 10, 8, 7, 7, 7, 37.1749 + 15, 17, 19, 20, 23, 26, 31, 37, 40, 40, 41, 53, 73, 44, 11, 45, 37.1750 + 55, 60, 60, 41, 23, 53, 65, 61, 68, 64, 61, 63, 73, 87, 94, 66, 37.1751 + 72, 75, 72, 40, 55, 115, 120, 129, 157, 191, 223, 208, 82, 53, 109, 141, 37.1752 + 140, 132, 123, 43, 82, 113, 99, 91, 88, 81, 72, 70, 69, 69, 69, 63, 37.1753 + 58, 56, 55, 53, 52, 50, 50, 44, 42, 40, 40, 39, 39, 39, 38, 35, 37.1754 + 34, 34, 34, 34, 34, 33, 34, 33, 32, 30, 27, 25, 25, 23, 22, 15, 37.1755 + 17, 19, 21, 22, 24, 27, 27, 25, 26, 26, 26, 27, 26, 26, 26, 25, 37.1756 + 23, 23, 21, 21, 20, 17, 18, 19, 16, 13, 12, 10, 7, 7, 7, 7, 37.1757 + 18, 19, 22, 24, 24, 27, 29, 35, 42, 35, 39, 59, 78, 39, 33, 56, 37.1758 + 56, 60, 49, 15, 24, 59, 63, 67, 69, 68, 66, 68, 78, 84, 94, 86, 37.1759 + 62, 92, 98, 60, 56, 122, 132, 138, 161, 202, 235, 232, 49, 96, 137, 143, 37.1760 + 139, 135, 112, 44, 101, 120, 109, 97, 94, 88, 77, 70, 69, 70, 72, 63, 37.1761 + 56, 55, 56, 57, 53, 50, 47, 40, 38, 37, 37, 36, 38, 39, 39, 38, 37.1762 + 35, 33, 30, 30, 28, 30, 30, 28, 26, 30, 30, 29, 28, 24, 20, 14, 37.1763 + 15, 20, 24, 26, 29, 32, 29, 27, 31, 31, 29, 26, 26, 32, 36, 32, 37.1764 + 25, 20, 21, 21, 24, 19, 21, 19, 16, 12, 11, 11, 9, 9, 9, 8, 37.1765 + 20, 21, 25, 27, 26, 26, 27, 34, 45, 34, 38, 67, 79, 41, 41, 51, 37.1766 + 45, 56, 47, 11, 30, 54, 66, 70, 65, 65, 68, 71, 77, 83, 87, 103, 37.1767 + 70, 91, 105, 71, 54, 126, 142, 149, 166, 209, 243, 247, 88, 119, 146, 135, 37.1768 + 121, 126, 112, 45, 103, 113, 101, 91, 85, 82, 74, 63, 58, 61, 67, 58, 37.1769 + 49, 48, 49, 51, 47, 45, 40, 32, 32, 31, 31, 33, 36, 38, 40, 42, 37.1770 + 36, 33, 26, 22, 28, 32, 29, 17, 22, 29, 29, 32, 29, 24, 19, 16, 37.1771 + 17, 22, 28, 33, 32, 34, 30, 28, 35, 37, 31, 26, 26, 34, 38, 32, 37.1772 + 29, 24, 20, 20, 21, 25, 25, 17, 14, 12, 11, 11, 11, 11, 11, 10, 37.1773 + 21, 22, 26, 27, 27, 25, 26, 35, 47, 39, 39, 66, 40, 15, 30, 44, 37.1774 + 42, 57, 47, 20, 46, 56, 64, 67, 62, 61, 64, 67, 72, 78, 83, 104, 37.1775 + 79, 88, 120, 76, 59, 130, 141, 154, 172, 212, 244, 248, 118, 117, 140, 130, 37.1776 + 125, 137, 120, 40, 94, 93, 77, 67, 62, 64, 60, 51, 46, 48, 55, 51, 37.1777 + 44, 41, 40, 39, 38, 40, 38, 37, 38, 37, 35, 33, 34, 35, 36, 35, 37.1778 + 28, 26, 25, 25, 25, 29, 32, 20, 25, 26, 25, 26, 25, 22, 21, 23, 37.1779 + 23, 25, 26, 27, 24, 25, 26, 26, 32, 35, 29, 22, 21, 26, 30, 26, 37.1780 + 26, 24, 19, 24, 22, 23, 23, 18, 16, 13, 11, 12, 11, 12, 11, 10, 37.1781 + 21, 22, 26, 27, 28, 26, 27, 35, 47, 41, 47, 46, 3, 16, 34, 42, 37.1782 + 49, 64, 40, 35, 59, 53, 56, 61, 57, 56, 59, 60, 64, 71, 77, 94, 37.1783 + 93, 89, 100, 52, 62, 128, 134, 149, 171, 208, 238, 246, 108, 82, 69, 94, 37.1784 + 119, 126, 116, 46, 99, 100, 89, 72, 61, 63, 58, 50, 46, 48, 55, 55, 37.1785 + 49, 42, 37, 35, 38, 42, 44, 47, 48, 45, 41, 39, 37, 33, 30, 22, 37.1786 + 23, 29, 33, 37, 37, 35, 36, 39, 32, 22, 25, 18, 19, 19, 23, 31, 37.1787 + 29, 26, 21, 18, 22, 23, 27, 29, 36, 40, 37, 31, 23, 22, 24, 19, 37.1788 + 18, 26, 28, 25, 33, 19, 20, 22, 17, 15, 13, 12, 12, 12, 11, 10, 37.1789 + 19, 22, 26, 26, 27, 28, 29, 36, 45, 42, 55, 29, 23, 50, 53, 55, 37.1790 + 52, 63, 31, 51, 63, 51, 53, 59, 53, 53, 55, 57, 63, 69, 75, 86, 37.1791 + 100, 82, 88, 51, 58, 120, 124, 140, 169, 207, 239, 244, 109, 81, 90, 82, 37.1792 + 96, 134, 125, 42, 94, 97, 90, 72, 62, 68, 68, 58, 53, 55, 62, 67, 37.1793 + 63, 51, 41, 37, 42, 48, 55, 69, 71, 65, 57, 51, 41, 34, 27, 20, 37.1794 + 28, 36, 42, 48, 50, 46, 42, 47, 41, 30, 20, 13, 15, 19, 26, 36, 37.1795 + 31, 25, 19, 19, 27, 28, 33, 38, 45, 50, 49, 43, 38, 28, 18, 15, 37.1796 + 24, 36, 40, 40, 29, 30, 24, 25, 21, 18, 15, 14, 13, 12, 11, 10, 37.1797 + 19, 21, 25, 25, 27, 28, 30, 37, 43, 46, 61, 26, 48, 65, 61, 66, 37.1798 + 59, 55, 25, 63, 63, 49, 52, 57, 52, 51, 54, 56, 62, 68, 72, 78, 37.1799 + 86, 40, 62, 54, 55, 117, 125, 145, 180, 208, 231, 237, 125, 113, 138, 115, 37.1800 + 88, 100, 100, 46, 97, 93, 78, 62, 58, 68, 72, 67, 63, 65, 71, 84, 37.1801 + 81, 65, 48, 45, 53, 62, 79, 93, 92, 83, 70, 61, 51, 40, 34, 26, 37.1802 + 35, 48, 66, 71, 54, 44, 51, 66, 54, 42, 22, 15, 18, 24, 31, 39, 37.1803 + 33, 27, 23, 25, 35, 42, 56, 64, 71, 77, 77, 63, 51, 39, 28, 25, 37.1804 + 36, 49, 68, 75, 46, 39, 27, 28, 23, 20, 16, 15, 13, 12, 11, 10, 37.1805 + 19, 20, 23, 24, 27, 28, 30, 37, 41, 54, 66, 34, 46, 59, 66, 73, 37.1806 + 76, 49, 21, 65, 60, 46, 49, 54, 51, 52, 53, 56, 58, 62, 66, 71, 37.1807 + 74, 17, 64, 72, 57, 122, 137, 153, 182, 204, 223, 234, 136, 145, 132, 134, 37.1808 + 124, 105, 71, 44, 102, 106, 96, 75, 69, 80, 83, 81, 79, 81, 87, 102, 37.1809 + 101, 81, 61, 62, 72, 85, 109, 138, 139, 128, 112, 76, 63, 52, 47, 43, 37.1810 + 53, 76, 111, 143, 141, 119, 97, 106, 67, 50, 33, 23, 24, 31, 36, 37, 37.1811 + 33, 31, 32, 42, 56, 76, 108, 128, 133, 139, 144, 123, 71, 47, 45, 42, 37.1812 + 52, 86, 124, 92, 93, 46, 38, 29, 24, 21, 16, 14, 12, 12, 11, 10, 37.1813 + 17, 19, 24, 26, 27, 26, 29, 36, 44, 55, 57, 25, 49, 75, 80, 83, 37.1814 + 81, 42, 27, 68, 60, 47, 47, 51, 48, 46, 47, 48, 53, 58, 63, 65, 37.1815 + 68, 74, 95, 78, 67, 134, 137, 154, 186, 192, 214, 225, 130, 136, 130, 141, 37.1816 + 141, 150, 135, 42, 99, 105, 93, 95, 100, 110, 110, 106, 99, 105, 123, 144, 37.1817 + 138, 116, 56, 84, 100, 129, 142, 128, 113, 121, 83, 76, 57, 64, 66, 68, 37.1818 + 85, 135, 155, 171, 184, 193, 195, 179, 113, 57, 44, 34, 33, 39, 43, 28, 37.1819 + 32, 42, 50, 65, 94, 111, 130, 140, 127, 127, 116, 68, 26, 74, 86, 66, 37.1820 + 91, 145, 132, 156, 150, 75, 40, 33, 25, 22, 16, 14, 12, 9, 10, 9, 37.1821 + 17, 19, 24, 26, 28, 28, 30, 34, 37, 62, 63, 43, 55, 88, 73, 63, 37.1822 + 45, 24, 26, 65, 55, 44, 43, 46, 45, 42, 44, 46, 51, 57, 60, 63, 37.1823 + 72, 83, 72, 64, 90, 134, 136, 158, 171, 178, 201, 219, 138, 131, 130, 114, 37.1824 + 141, 151, 136, 44, 87, 98, 93, 92, 106, 120, 130, 122, 150, 136, 140, 162, 37.1825 + 151, 135, 63, 98, 131, 171, 172, 136, 131, 113, 97, 92, 72, 55, 80, 96, 37.1826 + 136, 184, 181, 182, 208, 209, 204, 213, 171, 83, 50, 46, 41, 41, 41, 28, 37.1827 + 35, 48, 72, 112, 141, 159, 143, 130, 117, 121, 73, 87, 135, 173, 168, 104, 37.1828 + 134, 163, 144, 180, 159, 113, 33, 30, 26, 21, 16, 14, 11, 10, 9, 10, 37.1829 + 16, 18, 23, 25, 28, 29, 31, 35, 39, 63, 45, 42, 78, 94, 80, 77, 37.1830 + 64, 42, 29, 60, 49, 40, 39, 41, 42, 40, 42, 45, 50, 56, 61, 63, 37.1831 + 75, 101, 107, 106, 114, 134, 135, 157, 153, 167, 184, 210, 120, 116, 147, 127, 37.1832 + 132, 124, 121, 42, 79, 89, 88, 92, 111, 123, 142, 136, 163, 150, 158, 165, 37.1833 + 166, 144, 69, 133, 170, 185, 175, 190, 185, 196, 202, 192, 159, 99, 80, 129, 37.1834 + 151, 145, 181, 193, 215, 213, 211, 176, 156, 164, 55, 55, 50, 42, 38, 27, 37.1835 + 37, 60, 106, 171, 183, 193, 171, 142, 123, 114, 127, 190, 213, 203, 187, 163, 37.1836 + 152, 155, 155, 169, 138, 137, 30, 25, 28, 21, 18, 15, 13, 10, 10, 10, 37.1837 + 16, 18, 23, 24, 28, 30, 31, 34, 37, 64, 45, 65, 103, 87, 86, 79, 37.1838 + 73, 52, 26, 56, 46, 39, 39, 40, 42, 41, 43, 45, 49, 58, 66, 76, 37.1839 + 85, 88, 93, 108, 121, 132, 135, 148, 141, 160, 166, 201, 109, 118, 126, 109, 37.1840 + 143, 164, 142, 42, 83, 83, 78, 86, 102, 111, 138, 158, 159, 155, 171, 189, 37.1841 + 167, 169, 112, 174, 184, 190, 170, 188, 153, 208, 208, 205, 203, 169, 92, 175, 37.1842 + 173, 167, 189, 200, 216, 216, 197, 152, 175, 220, 79, 53, 54, 40, 33, 25, 37.1843 + 43, 84, 144, 187, 195, 195, 199, 182, 94, 55, 131, 202, 199, 169, 174, 150, 37.1844 + 145, 141, 133, 157, 133, 134, 20, 22, 29, 21, 19, 15, 13, 11, 10, 11, 37.1845 + 16, 18, 22, 24, 28, 29, 30, 32, 31, 65, 63, 92, 95, 79, 94, 75, 37.1846 + 91, 58, 22, 49, 45, 40, 39, 40, 42, 42, 44, 47, 51, 60, 69, 78, 37.1847 + 82, 81, 88, 102, 114, 126, 131, 134, 136, 151, 151, 190, 114, 142, 138, 111, 37.1848 + 133, 144, 138, 49, 88, 83, 72, 75, 86, 98, 131, 159, 156, 164, 182, 200, 37.1849 + 152, 164, 155, 199, 197, 177, 161, 183, 146, 202, 192, 207, 183, 182, 149, 206, 37.1850 + 189, 194, 214, 203, 199, 198, 178, 170, 232, 203, 89, 41, 54, 38, 28, 28, 37.1851 + 54, 113, 166, 190, 211, 191, 200, 140, 29, 27, 86, 169, 170, 133, 157, 150, 37.1852 + 162, 83, 79, 140, 150, 117, 17, 24, 26, 20, 17, 14, 12, 10, 10, 11, 37.1853 + 14, 18, 22, 24, 27, 28, 30, 31, 28, 65, 69, 81, 70, 77, 90, 64, 37.1854 + 86, 44, 28, 54, 45, 41, 39, 40, 42, 42, 45, 49, 56, 61, 67, 75, 37.1855 + 79, 74, 74, 86, 103, 117, 122, 121, 131, 135, 140, 184, 135, 140, 140, 126, 37.1856 + 147, 150, 140, 46, 83, 87, 74, 65, 75, 93, 119, 151, 151, 175, 187, 193, 37.1857 + 174, 156, 177, 194, 157, 107, 114, 178, 175, 206, 191, 173, 176, 197, 188, 196, 37.1858 + 186, 142, 143, 183, 192, 203, 197, 206, 191, 117, 110, 25, 50, 35, 23, 32, 37.1859 + 67, 132, 152, 145, 182, 167, 164, 54, 26, 42, 68, 115, 124, 125, 134, 135, 37.1860 + 161, 100, 61, 119, 109, 48, 14, 28, 23, 19, 15, 12, 10, 8, 9, 11, 37.1861 + 14, 18, 22, 24, 26, 27, 29, 31, 27, 65, 70, 73, 72, 75, 66, 61, 37.1862 + 117, 49, 30, 47, 46, 45, 40, 39, 42, 44, 47, 51, 59, 61, 64, 70, 37.1863 + 75, 74, 80, 91, 102, 107, 109, 114, 131, 120, 134, 167, 148, 155, 158, 143, 37.1864 + 147, 157, 149, 40, 76, 88, 79, 64, 67, 73, 86, 144, 156, 184, 183, 184, 37.1865 + 182, 159, 170, 137, 48, 41, 63, 140, 178, 196, 174, 185, 192, 186, 186, 186, 37.1866 + 81, 32, 49, 92, 160, 190, 155, 182, 150, 125, 107, 16, 49, 35, 25, 36, 37.1867 + 78, 140, 151, 157, 163, 139, 114, 20, 42, 53, 67, 99, 118, 146, 114, 123, 37.1868 + 144, 114, 55, 58, 32, 14, 33, 28, 21, 19, 16, 14, 11, 8, 8, 11, 37.1869 + 13, 18, 22, 25, 25, 27, 30, 31, 29, 65, 66, 82, 97, 85, 72, 97, 37.1870 + 127, 49, 28, 49, 50, 49, 42, 40, 47, 50, 53, 54, 54, 58, 64, 65, 37.1871 + 67, 77, 88, 98, 102, 96, 94, 111, 133, 106, 130, 159, 133, 159, 169, 156, 37.1872 + 159, 173, 156, 42, 75, 82, 78, 74, 65, 58, 70, 110, 154, 183, 182, 194, 37.1873 + 188, 170, 165, 52, 17, 54, 78, 105, 188, 214, 196, 202, 181, 163, 172, 121, 37.1874 + 8, 40, 64, 57, 99, 122, 87, 131, 153, 172, 149, 12, 49, 37, 32, 41, 37.1875 + 94, 156, 187, 178, 162, 141, 111, 17, 52, 51, 57, 91, 132, 161, 108, 124, 37.1876 + 113, 118, 43, 47, 27, 27, 35, 27, 21, 19, 18, 17, 13, 10, 8, 10, 37.1877 + 14, 17, 22, 24, 25, 27, 29, 31, 27, 68, 85, 102, 111, 102, 97, 127, 37.1878 + 124, 45, 28, 49, 51, 52, 45, 44, 52, 50, 50, 51, 53, 57, 63, 66, 37.1879 + 68, 77, 90, 98, 95, 89, 92, 111, 123, 100, 124, 152, 135, 155, 145, 161, 37.1880 + 172, 174, 166, 45, 74, 79, 76, 79, 68, 55, 69, 117, 166, 183, 177, 191, 37.1881 + 194, 185, 118, 18, 47, 63, 82, 99, 205, 233, 209, 220, 191, 197, 185, 54, 37.1882 + 24, 62, 69, 66, 126, 176, 172, 189, 185, 204, 167, 11, 48, 39, 33, 41, 37.1883 + 114, 179, 189, 168, 163, 156, 123, 15, 60, 45, 56, 91, 128, 148, 103, 119, 37.1884 + 140, 137, 31, 37, 31, 33, 35, 24, 20, 19, 18, 17, 14, 9, 9, 11, 37.1885 + 14, 17, 22, 24, 24, 26, 29, 30, 26, 70, 103, 118, 109, 104, 105, 130, 37.1886 + 106, 38, 28, 52, 54, 54, 48, 46, 52, 49, 48, 48, 51, 56, 62, 66, 37.1887 + 71, 79, 87, 92, 87, 85, 95, 114, 111, 94, 119, 143, 139, 156, 175, 171, 37.1888 + 175, 173, 177, 43, 72, 76, 72, 76, 67, 56, 71, 119, 168, 178, 185, 209, 37.1889 + 210, 161, 57, 32, 67, 64, 76, 102, 201, 226, 214, 222, 194, 197, 185, 35, 37.1890 + 52, 70, 68, 63, 145, 215, 207, 211, 215, 199, 158, 9, 48, 41, 36, 47, 37.1891 + 120, 172, 171, 143, 161, 164, 128, 23, 58, 45, 55, 88, 109, 130, 127, 133, 37.1892 + 157, 142, 27, 33, 34, 32, 32, 23, 19, 18, 18, 17, 12, 9, 9, 10, 37.1893 + 13, 16, 22, 24, 25, 27, 30, 33, 31, 66, 92, 101, 97, 95, 98, 108, 37.1894 + 103, 48, 34, 58, 57, 55, 49, 47, 46, 45, 46, 48, 50, 55, 61, 65, 37.1895 + 74, 81, 80, 78, 79, 86, 101, 115, 100, 92, 113, 145, 135, 163, 189, 160, 37.1896 + 188, 190, 174, 39, 71, 75, 69, 70, 65, 59, 72, 112, 157, 175, 201, 208, 37.1897 + 177, 80, 23, 50, 70, 76, 68, 98, 196, 229, 214, 200, 179, 181, 146, 38, 37.1898 + 64, 67, 74, 78, 127, 188, 163, 184, 192, 171, 138, 9, 49, 43, 36, 44, 37.1899 + 109, 157, 182, 167, 168, 153, 113, 24, 55, 40, 49, 81, 112, 149, 161, 150, 37.1900 + 148, 117, 24, 33, 31, 28, 27, 21, 18, 18, 17, 16, 12, 9, 9, 9, 37.1901 + 13, 16, 21, 25, 25, 27, 30, 33, 30, 65, 88, 99, 100, 98, 110, 111, 37.1902 + 118, 67, 41, 64, 59, 54, 49, 47, 45, 45, 46, 48, 51, 55, 62, 66, 37.1903 + 74, 78, 71, 69, 74, 86, 104, 112, 92, 92, 107, 141, 115, 153, 146, 147, 37.1904 + 185, 168, 156, 45, 72, 74, 67, 67, 63, 60, 74, 118, 164, 191, 203, 169, 37.1905 + 83, 98, 48, 59, 73, 68, 69, 88, 159, 198, 187, 161, 158, 190, 129, 44, 37.1906 + 68, 63, 70, 71, 123, 190, 158, 198, 178, 169, 126, 10, 52, 46, 37, 42, 37.1907 + 91, 141, 182, 165, 157, 144, 114, 22, 62, 36, 50, 85, 127, 155, 152, 142, 37.1908 + 132, 125, 25, 34, 31, 28, 29, 20, 17, 17, 16, 15, 12, 9, 9, 9, 37.1909 + 14, 17, 22, 25, 26, 26, 30, 34, 31, 63, 83, 95, 98, 95, 118, 120, 37.1910 + 125, 74, 43, 68, 59, 52, 48, 47, 49, 48, 47, 48, 51, 55, 62, 67, 37.1911 + 72, 70, 63, 62, 69, 84, 100, 106, 86, 92, 102, 134, 118, 160, 165, 151, 37.1912 + 152, 133, 132, 39, 73, 74, 67, 67, 60, 55, 74, 118, 169, 199, 182, 128, 37.1913 + 120, 201, 62, 65, 70, 60, 69, 85, 153, 190, 158, 145, 161, 192, 132, 45, 37.1914 + 67, 55, 68, 75, 114, 179, 170, 188, 168, 160, 110, 11, 55, 47, 38, 44, 37.1915 + 84, 142, 181, 164, 166, 150, 120, 31, 62, 47, 55, 90, 128, 140, 140, 138, 37.1916 + 132, 102, 19, 35, 32, 25, 25, 20, 17, 17, 16, 14, 11, 9, 8, 8, 37.1917 + 16, 18, 22, 23, 26, 27, 29, 34, 34, 61, 75, 79, 88, 100, 123, 124, 37.1918 + 125, 93, 40, 72, 58, 49, 48, 49, 50, 48, 49, 50, 51, 55, 63, 66, 37.1919 + 66, 61, 55, 61, 65, 84, 99, 96, 83, 90, 98, 130, 157, 179, 191, 174, 37.1920 + 159, 158, 152, 34, 72, 72, 66, 68, 58, 50, 71, 119, 175, 171, 127, 141, 37.1921 + 215, 231, 57, 58, 62, 55, 62, 87, 177, 189, 138, 153, 178, 188, 132, 41, 37.1922 + 59, 52, 64, 70, 107, 168, 151, 171, 155, 142, 104, 12, 56, 50, 40, 43, 37.1923 + 82, 144, 176, 168, 178, 162, 135, 48, 61, 58, 63, 94, 126, 123, 144, 146, 37.1924 + 142, 67, 18, 36, 31, 22, 21, 21, 16, 16, 15, 13, 11, 8, 7, 8, 37.1925 + 18, 19, 22, 23, 26, 27, 28, 33, 35, 58, 69, 74, 95, 115, 121, 128, 37.1926 + 125, 99, 44, 71, 56, 46, 49, 53, 51, 49, 50, 51, 52, 56, 63, 64, 37.1927 + 57, 54, 59, 66, 73, 86, 88, 86, 84, 90, 95, 134, 172, 168, 183, 183, 37.1928 + 186, 198, 155, 36, 71, 72, 66, 68, 58, 50, 68, 109, 149, 126, 176, 219, 37.1929 + 236, 190, 42, 55, 56, 49, 59, 84, 167, 171, 147, 180, 192, 180, 96, 38, 37.1930 + 54, 50, 61, 72, 118, 173, 170, 165, 143, 140, 126, 13, 57, 51, 41, 44, 37.1931 + 74, 122, 146, 151, 154, 141, 123, 54, 57, 73, 89, 107, 130, 127, 148, 145, 37.1932 + 122, 32, 15, 36, 30, 22, 21, 21, 16, 16, 14, 13, 11, 7, 6, 8, 37.1933 + 17, 20, 23, 24, 26, 27, 29, 34, 34, 52, 66, 76, 105, 129, 114, 135, 37.1934 + 137, 114, 49, 67, 57, 45, 51, 59, 53, 52, 52, 52, 54, 59, 62, 57, 37.1935 + 48, 57, 70, 75, 88, 93, 82, 81, 87, 89, 90, 130, 125, 165, 133, 169, 37.1936 + 190, 160, 120, 41, 71, 74, 66, 65, 59, 52, 68, 96, 104, 185, 241, 231, 37.1937 + 202, 163, 41, 52, 55, 48, 58, 84, 157, 196, 160, 190, 195, 176, 92, 36, 37.1938 + 52, 50, 62, 70, 130, 164, 178, 165, 147, 149, 141, 14, 59, 54, 45, 48, 37.1939 + 63, 88, 105, 133, 131, 129, 125, 100, 72, 82, 101, 112, 132, 129, 123, 114, 37.1940 + 59, 4, 25, 36, 27, 22, 21, 22, 18, 17, 14, 13, 9, 5, 6, 8, 37.1941 + 17, 20, 23, 24, 26, 26, 28, 34, 36, 49, 66, 83, 108, 136, 120, 146, 37.1942 + 153, 133, 53, 66, 60, 48, 53, 61, 54, 53, 53, 54, 56, 61, 62, 52, 37.1943 + 48, 65, 80, 95, 98, 92, 85, 78, 90, 86, 87, 124, 53, 83, 130, 188, 37.1944 + 157, 104, 137, 45, 71, 75, 66, 65, 59, 53, 68, 89, 169, 245, 238, 208, 37.1945 + 206, 192, 51, 51, 55, 47, 57, 76, 142, 213, 152, 184, 182, 171, 102, 36, 37.1946 + 52, 52, 63, 65, 130, 159, 161, 163, 159, 157, 135, 14, 60, 55, 47, 51, 37.1947 + 59, 72, 85, 114, 124, 139, 140, 138, 104, 97, 106, 103, 118, 120, 105, 77, 37.1948 + 16, 9, 35, 34, 25, 22, 20, 21, 17, 16, 13, 12, 9, 5, 6, 8, 37.1949 + 18, 19, 23, 24, 26, 25, 28, 34, 38, 47, 66, 89, 117, 144, 132, 151, 37.1950 + 142, 114, 63, 54, 61, 51, 55, 62, 56, 55, 56, 57, 60, 62, 63, 53, 37.1951 + 54, 71, 101, 140, 120, 90, 83, 77, 91, 82, 84, 124, 116, 115, 134, 130, 37.1952 + 77, 130, 181, 44, 70, 74, 67, 66, 59, 53, 68, 120, 213, 215, 204, 208, 37.1953 + 202, 214, 52, 52, 55, 47, 57, 71, 150, 204, 138, 181, 186, 177, 105, 36, 37.1954 + 53, 53, 64, 68, 128, 166, 157, 164, 164, 161, 139, 14, 60, 56, 49, 53, 37.1955 + 58, 66, 80, 96, 113, 130, 134, 151, 126, 110, 115, 114, 131, 114, 76, 37, 37.1956 + 7, 24, 31, 31, 24, 22, 19, 20, 16, 16, 14, 13, 8, 4, 5, 8, 37.1957 + 18, 19, 23, 24, 25, 26, 28, 34, 37, 42, 64, 92, 124, 150, 139, 150, 37.1958 + 128, 106, 87, 41, 56, 53, 58, 66, 61, 60, 60, 62, 62, 62, 62, 56, 37.1959 + 61, 81, 127, 176, 152, 94, 73, 79, 91, 77, 83, 126, 150, 193, 165, 122, 37.1960 + 120, 213, 188, 37, 69, 73, 68, 68, 58, 51, 68, 131, 205, 172, 165, 191, 37.1961 + 175, 218, 50, 53, 55, 47, 56, 79, 181, 198, 128, 164, 181, 173, 113, 37, 37.1962 + 54, 55, 66, 74, 114, 163, 162, 164, 162, 159, 143, 13, 59, 56, 49, 52, 37.1963 + 55, 60, 79, 93, 112, 126, 138, 161, 124, 108, 121, 142, 148, 87, 32, 21, 37.1964 + 26, 35, 27, 28, 23, 24, 18, 19, 15, 16, 14, 12, 7, 4, 4, 8, 37.1965 + 19, 20, 23, 23, 25, 26, 29, 34, 36, 39, 59, 85, 111, 143, 139, 154, 37.1966 + 145, 149, 129, 53, 60, 60, 58, 65, 65, 63, 62, 62, 60, 56, 58, 55, 37.1967 + 63, 97, 144, 181, 170, 91, 53, 78, 88, 71, 82, 116, 174, 197, 201, 201, 37.1968 + 212, 232, 205, 47, 72, 71, 65, 68, 57, 46, 65, 124, 178, 195, 210, 165, 37.1969 + 219, 222, 47, 52, 54, 47, 57, 83, 155, 169, 141, 155, 149, 129, 71, 36, 37.1970 + 57, 53, 62, 74, 93, 141, 159, 162, 162, 155, 137, 15, 60, 53, 45, 50, 37.1971 + 53, 63, 85, 101, 120, 136, 150, 136, 97, 104, 128, 128, 86, 30, 25, 45, 37.1972 + 55, 35, 30, 28, 23, 22, 15, 17, 14, 16, 14, 13, 9, 4, 5, 8, 37.1973 + 22, 25, 25, 23, 23, 26, 30, 37, 38, 41, 49, 68, 96, 126, 136, 154, 37.1974 + 157, 144, 141, 79, 72, 72, 55, 52, 67, 61, 59, 52, 52, 47, 53, 51, 37.1975 + 65, 110, 149, 154, 177, 63, 28, 76, 83, 65, 74, 112, 180, 198, 215, 220, 37.1976 + 224, 235, 213, 51, 76, 70, 54, 62, 54, 40, 55, 113, 167, 197, 225, 212, 37.1977 + 206, 195, 54, 52, 52, 45, 62, 82, 97, 137, 173, 192, 194, 169, 99, 33, 37.1978 + 58, 48, 46, 75, 77, 94, 115, 141, 156, 156, 131, 20, 69, 51, 38, 46, 37.1979 + 65, 87, 104, 99, 134, 139, 109, 60, 55, 49, 32, 27, 28, 36, 47, 49, 37.1980 + 48, 43, 39, 33, 26, 14, 11, 15, 13, 16, 16, 16, 12, 10, 8, 7, 37.1981 + 23, 25, 25, 23, 23, 26, 30, 37, 37, 40, 45, 60, 80, 103, 134, 149, 37.1982 + 147, 133, 138, 123, 67, 76, 55, 53, 65, 62, 58, 50, 49, 51, 58, 69, 37.1983 + 92, 153, 160, 180, 144, 24, 38, 75, 83, 69, 80, 118, 182, 185, 200, 219, 37.1984 + 202, 225, 186, 58, 79, 76, 59, 68, 56, 37, 56, 121, 190, 210, 188, 176, 37.1985 + 164, 164, 40, 51, 49, 46, 61, 88, 125, 180, 191, 191, 191, 173, 101, 27, 37.1986 + 60, 47, 46, 75, 114, 139, 126, 111, 125, 129, 112, 18, 64, 51, 34, 50, 37.1987 + 71, 90, 98, 116, 142, 135, 55, 29, 71, 68, 53, 50, 47, 46, 48, 47, 37.1988 + 43, 40, 39, 32, 25, 14, 13, 15, 14, 16, 16, 16, 13, 10, 8, 7, 37.1989 + 23, 24, 24, 22, 22, 25, 29, 35, 36, 38, 41, 54, 71, 93, 128, 131, 37.1990 + 130, 131, 161, 145, 90, 68, 70, 54, 62, 56, 55, 58, 57, 63, 69, 94, 37.1991 + 146, 179, 175, 177, 89, 21, 53, 79, 87, 75, 91, 133, 178, 184, 202, 202, 37.1992 + 192, 207, 153, 78, 78, 91, 68, 68, 61, 49, 65, 131, 200, 209, 161, 111, 37.1993 + 150, 156, 39, 56, 53, 50, 66, 97, 154, 193, 174, 180, 175, 161, 93, 34, 37.1994 + 61, 43, 48, 73, 119, 150, 164, 148, 123, 112, 111, 16, 67, 50, 36, 45, 37.1995 + 70, 87, 98, 115, 130, 131, 75, 47, 91, 80, 73, 63, 57, 48, 45, 48, 37.1996 + 40, 35, 34, 29, 27, 20, 18, 17, 15, 16, 16, 16, 12, 10, 8, 7, 37.1997 + 23, 24, 23, 21, 21, 23, 26, 32, 35, 37, 39, 49, 67, 96, 136, 150, 37.1998 + 164, 159, 172, 162, 121, 86, 68, 67, 63, 62, 61, 66, 68, 84, 99, 145, 37.1999 + 186, 190, 184, 153, 40, 43, 57, 82, 95, 86, 108, 148, 178, 192, 202, 196, 37.2000 + 197, 218, 189, 127, 77, 96, 85, 78, 69, 63, 79, 134, 195, 189, 193, 161, 37.2001 + 116, 132, 50, 50, 63, 60, 74, 107, 162, 174, 165, 180, 166, 157, 103, 35, 37.2002 + 64, 49, 52, 80, 129, 121, 158, 149, 157, 152, 130, 34, 64, 55, 43, 50, 37.2003 + 73, 86, 114, 127, 119, 110, 99, 58, 75, 71, 80, 80, 73, 70, 63, 51, 37.2004 + 45, 36, 30, 28, 29, 26, 23, 18, 15, 16, 16, 15, 12, 10, 9, 8, 37.2005 + 23, 23, 22, 20, 21, 22, 24, 30, 35, 36, 37, 45, 56, 75, 106, 142, 37.2006 + 173, 177, 178, 165, 141, 130, 82, 82, 65, 72, 71, 74, 88, 112, 136, 183, 37.2007 + 208, 196, 167, 78, 35, 56, 59, 81, 103, 106, 136, 162, 191, 195, 187, 191, 37.2008 + 199, 212, 204, 190, 123, 106, 103, 85, 76, 78, 102, 154, 188, 188, 195, 184, 37.2009 + 114, 123, 83, 57, 70, 75, 87, 136, 167, 162, 173, 180, 163, 159, 118, 35, 37.2010 + 70, 64, 60, 85, 128, 101, 164, 148, 151, 149, 142, 75, 55, 64, 48, 44, 37.2011 + 73, 80, 119, 112, 119, 109, 107, 77, 43, 64, 94, 77, 73, 81, 75, 60, 37.2012 + 56, 43, 33, 31, 32, 32, 27, 20, 16, 16, 15, 15, 12, 9, 9, 9, 37.2013 + 23, 23, 22, 20, 20, 22, 23, 29, 34, 35, 35, 40, 53, 65, 78, 108, 37.2014 + 130, 161, 182, 142, 129, 134, 119, 122, 91, 80, 89, 113, 152, 154, 126, 141, 37.2015 + 190, 177, 102, 28, 55, 61, 62, 87, 129, 155, 187, 196, 203, 198, 194, 203, 37.2016 + 206, 208, 198, 181, 181, 186, 163, 71, 79, 109, 136, 178, 194, 180, 162, 173, 37.2017 + 190, 191, 165, 110, 74, 83, 123, 166, 159, 161, 169, 175, 162, 151, 105, 72, 37.2018 + 81, 65, 64, 75, 104, 93, 170, 126, 144, 148, 136, 108, 84, 63, 50, 48, 37.2019 + 76, 59, 105, 113, 136, 117, 89, 83, 99, 123, 104, 72, 71, 79, 71, 58, 37.2020 + 55, 50, 45, 37, 36, 33, 28, 21, 17, 16, 14, 14, 11, 8, 9, 9, 37.2021 + 22, 23, 22, 20, 21, 22, 24, 29, 33, 35, 35, 37, 40, 54, 64, 83, 37.2022 + 108, 145, 154, 133, 108, 110, 129, 147, 131, 121, 131, 173, 183, 147, 137, 173, 37.2023 + 173, 126, 40, 46, 61, 60, 61, 85, 140, 176, 205, 206, 201, 199, 202, 204, 37.2024 + 199, 206, 192, 178, 197, 185, 163, 49, 81, 146, 163, 182, 195, 164, 170, 186, 37.2025 + 176, 180, 168, 142, 78, 86, 150, 160, 142, 162, 171, 172, 160, 141, 118, 117, 37.2026 + 85, 53, 56, 77, 98, 112, 162, 143, 146, 142, 132, 123, 110, 59, 46, 43, 37.2027 + 66, 42, 74, 93, 114, 107, 93, 107, 125, 126, 97, 81, 84, 88, 77, 67, 37.2028 + 59, 54, 52, 44, 35, 33, 26, 20, 17, 16, 14, 14, 11, 8, 8, 9, 37.2029 + 22, 22, 21, 19, 21, 21, 25, 29, 31, 35, 35, 36, 40, 45, 54, 66, 37.2030 + 81, 125, 124, 145, 160, 166, 187, 184, 184, 168, 175, 216, 197, 186, 180, 202, 37.2031 + 156, 49, 32, 60, 58, 57, 64, 89, 150, 184, 206, 196, 191, 193, 197, 189, 37.2032 + 196, 193, 175, 185, 202, 179, 150, 39, 88, 161, 167, 174, 181, 171, 178, 176, 37.2033 + 154, 153, 156, 149, 75, 82, 147, 135, 138, 167, 170, 163, 155, 131, 155, 101, 37.2034 + 70, 42, 43, 42, 70, 125, 160, 145, 144, 141, 134, 130, 105, 52, 31, 45, 37.2035 + 69, 75, 95, 125, 123, 117, 97, 102, 126, 113, 100, 93, 97, 94, 91, 97, 37.2036 + 76, 54, 44, 47, 38, 32, 23, 22, 18, 17, 15, 15, 11, 8, 8, 9, 37.2037 + 21, 20, 20, 19, 21, 22, 25, 29, 28, 33, 33, 35, 37, 40, 47, 55, 37.2038 + 63, 73, 95, 141, 167, 186, 205, 207, 219, 143, 200, 214, 169, 180, 171, 133, 37.2039 + 49, 31, 56, 55, 52, 57, 67, 85, 132, 152, 168, 168, 166, 171, 181, 179, 37.2040 + 178, 174, 172, 183, 192, 168, 157, 35, 79, 115, 109, 137, 156, 158, 163, 162, 37.2041 + 150, 150, 145, 124, 62, 84, 142, 140, 150, 166, 143, 109, 88, 44, 57, 62, 37.2042 + 78, 36, 86, 110, 122, 158, 151, 136, 134, 131, 125, 124, 102, 56, 36, 44, 37.2043 + 69, 84, 97, 118, 126, 127, 81, 90, 114, 89, 85, 80, 80, 69, 78, 101, 37.2044 + 87, 65, 37, 41, 44, 28, 21, 23, 19, 18, 16, 15, 10, 7, 8, 11, 37.2045 + 20, 19, 20, 19, 21, 22, 25, 27, 27, 31, 32, 35, 36, 38, 42, 45, 37.2046 + 49, 60, 73, 95, 144, 154, 177, 196, 176, 160, 210, 185, 129, 115, 54, 24, 37.2047 + 39, 55, 56, 53, 46, 56, 67, 77, 101, 100, 101, 98, 89, 90, 101, 98, 37.2048 + 86, 77, 78, 89, 94, 83, 84, 32, 74, 80, 65, 63, 67, 69, 70, 76, 37.2049 + 73, 71, 62, 58, 43, 73, 101, 79, 72, 70, 48, 26, 26, 26, 51, 69, 37.2050 + 48, 49, 96, 87, 72, 80, 62, 62, 63, 62, 60, 63, 45, 26, 30, 38, 37.2051 + 65, 80, 78, 96, 115, 95, 78, 105, 91, 64, 71, 76, 77, 67, 76, 93, 37.2052 + 88, 74, 43, 29, 40, 29, 21, 24, 20, 20, 17, 14, 11, 7, 9, 13, 37.2053 + 18, 18, 19, 18, 22, 22, 24, 26, 25, 30, 33, 37, 38, 38, 41, 41, 37.2054 + 46, 53, 62, 61, 60, 69, 97, 105, 80, 126, 125, 74, 58, 30, 36, 70, 37.2055 + 67, 65, 56, 43, 44, 53, 63, 64, 71, 70, 70, 66, 55, 55, 69, 75, 37.2056 + 64, 55, 53, 60, 61, 66, 62, 51, 66, 73, 61, 54, 51, 50, 51, 51, 37.2057 + 48, 51, 54, 53, 54, 59, 56, 50, 51, 55, 52, 43, 39, 40, 54, 51, 37.2058 + 40, 46, 56, 50, 43, 47, 41, 43, 48, 52, 54, 50, 44, 38, 47, 37, 37.2059 + 55, 78, 77, 75, 80, 63, 94, 93, 75, 80, 86, 89, 90, 82, 84, 86, 37.2060 + 78, 64, 48, 19, 29, 32, 22, 25, 21, 20, 17, 14, 10, 7, 10, 15, 37.2061 + 18, 18, 19, 19, 21, 22, 23, 25, 23, 28, 31, 36, 37, 37, 39, 39, 37.2062 + 42, 47, 57, 66, 66, 58, 50, 37, 29, 29, 35, 39, 52, 55, 60, 69, 37.2063 + 66, 62, 51, 42, 41, 50, 57, 51, 50, 63, 72, 66, 58, 61, 81, 85, 37.2064 + 67, 60, 58, 60, 61, 67, 58, 53, 51, 63, 61, 54, 50, 50, 56, 55, 37.2065 + 48, 44, 47, 54, 53, 43, 35, 40, 52, 57, 54, 44, 42, 45, 56, 46, 37.2066 + 43, 35, 41, 44, 48, 41, 31, 33, 39, 45, 48, 44, 48, 40, 38, 37, 37.2067 + 47, 73, 84, 80, 61, 85, 91, 72, 73, 91, 85, 90, 87, 81, 74, 66, 37.2068 + 64, 61, 54, 16, 19, 32, 24, 25, 21, 19, 16, 14, 10, 7, 10, 15, 37.2069 + 17, 18, 19, 20, 21, 21, 23, 25, 20, 24, 28, 33, 34, 35, 39, 39, 37.2070 + 40, 48, 48, 52, 52, 53, 47, 42, 43, 47, 50, 57, 56, 59, 68, 65, 37.2071 + 64, 55, 52, 44, 43, 50, 55, 46, 39, 56, 64, 55, 49, 51, 71, 80, 37.2072 + 62, 51, 48, 50, 53, 57, 54, 46, 45, 49, 49, 46, 41, 43, 49, 45, 37.2073 + 38, 34, 36, 41, 37, 29, 19, 29, 43, 43, 40, 36, 34, 37, 43, 37, 37.2074 + 27, 23, 24, 31, 30, 26, 18, 24, 28, 33, 35, 33, 36, 31, 32, 35, 37.2075 + 52, 66, 63, 66, 74, 81, 63, 56, 67, 75, 67, 74, 73, 74, 65, 55, 37.2076 + 59, 66, 58, 18, 16, 30, 25, 23, 19, 18, 16, 14, 10, 8, 10, 15, 37.2077 + 17, 18, 19, 19, 19, 21, 24, 24, 18, 22, 26, 29, 33, 35, 39, 41, 37.2078 + 43, 47, 48, 50, 50, 49, 46, 46, 48, 47, 52, 53, 54, 61, 61, 57, 37.2079 + 56, 51, 47, 44, 45, 49, 53, 47, 43, 51, 57, 55, 53, 53, 64, 71, 37.2080 + 62, 49, 44, 45, 49, 52, 52, 47, 45, 46, 45, 43, 41, 42, 44, 40, 37.2081 + 35, 34, 35, 37, 36, 31, 27, 32, 37, 37, 36, 33, 32, 34, 37, 34, 37.2082 + 31, 27, 27, 31, 30, 27, 24, 30, 31, 33, 33, 31, 32, 32, 35, 42, 37.2083 + 69, 53, 56, 80, 94, 68, 70, 56, 48, 40, 36, 42, 54, 60, 58, 63, 37.2084 + 62, 65, 47, 23, 11, 32, 23, 22, 18, 17, 16, 16, 12, 10, 12, 13, 37.2085 + 17, 18, 19, 19, 19, 22, 24, 25, 19, 21, 25, 26, 30, 33, 38, 40, 37.2086 + 42, 45, 47, 47, 48, 47, 46, 47, 47, 47, 46, 46, 49, 55, 54, 52, 37.2087 + 50, 47, 43, 42, 45, 48, 50, 49, 47, 49, 54, 56, 57, 56, 59, 67, 37.2088 + 62, 50, 43, 42, 47, 51, 51, 48, 47, 46, 45, 45, 44, 43, 42, 40, 37.2089 + 38, 38, 37, 36, 36, 34, 34, 35, 35, 34, 33, 34, 34, 33, 32, 33, 37.2090 + 33, 32, 32, 32, 32, 32, 33, 36, 35, 34, 33, 31, 33, 35, 39, 45, 37.2091 + 77, 81, 92, 94, 73, 38, 61, 62, 54, 47, 48, 49, 52, 44, 41, 56, 37.2092 + 68, 62, 45, 16, 5, 34, 28, 22, 17, 16, 16, 16, 14, 12, 12, 11, 37.2093 + 17, 18, 19, 20, 20, 21, 24, 24, 19, 21, 23, 24, 26, 30, 33, 35, 37.2094 + 36, 39, 40, 41, 42, 41, 42, 42, 42, 43, 43, 43, 46, 50, 50, 47, 37.2095 + 46, 43, 40, 39, 42, 45, 47, 45, 43, 45, 50, 52, 53, 52, 54, 62, 37.2096 + 57, 44, 38, 38, 42, 46, 47, 45, 44, 43, 42, 42, 41, 40, 39, 37, 37.2097 + 35, 34, 33, 32, 32, 31, 30, 31, 30, 29, 29, 31, 30, 29, 29, 30, 37.2098 + 30, 29, 28, 28, 28, 28, 29, 31, 31, 29, 29, 29, 30, 31, 38, 46, 37.2099 + 64, 79, 84, 74, 41, 14, 47, 52, 48, 48, 49, 50, 52, 47, 50, 40, 37.2100 + 49, 46, 29, 10, 8, 34, 27, 21, 17, 17, 16, 16, 14, 12, 12, 11, 37.2101 + 17, 18, 19, 20, 20, 21, 23, 22, 18, 19, 21, 23, 25, 28, 31, 32, 37.2102 + 32, 35, 36, 36, 38, 38, 39, 39, 38, 39, 40, 41, 44, 46, 45, 43, 37.2103 + 42, 40, 37, 37, 40, 43, 44, 42, 40, 42, 46, 48, 49, 47, 49, 56, 37.2104 + 53, 42, 35, 34, 38, 43, 45, 43, 41, 40, 39, 39, 38, 38, 37, 35, 37.2105 + 35, 33, 33, 31, 31, 30, 29, 29, 29, 28, 27, 29, 29, 28, 27, 28, 37.2106 + 28, 27, 27, 27, 27, 27, 27, 28, 28, 27, 26, 27, 29, 30, 40, 49, 37.2107 + 59, 69, 55, 60, 36, 10, 37, 42, 40, 41, 41, 44, 49, 51, 66, 37, 37.2108 + 20, 20, 20, 16, 17, 35, 25, 21, 17, 16, 15, 16, 14, 11, 11, 10, 37.2109 + 17, 18, 19, 20, 20, 21, 22, 21, 17, 18, 20, 21, 24, 26, 29, 31, 37.2110 + 29, 31, 33, 32, 33, 35, 36, 37, 36, 37, 39, 41, 44, 44, 42, 40, 37.2111 + 39, 37, 35, 35, 39, 41, 42, 40, 38, 40, 43, 45, 47, 44, 46, 53, 37.2112 + 49, 40, 32, 31, 35, 40, 42, 40, 38, 37, 36, 36, 36, 35, 34, 35, 37.2113 + 34, 33, 33, 31, 30, 29, 28, 28, 28, 27, 27, 28, 27, 26, 26, 28, 37.2114 + 27, 26, 26, 26, 26, 26, 26, 26, 25, 24, 25, 25, 28, 30, 41, 50, 37.2115 + 66, 76, 55, 72, 44, 12, 39, 47, 45, 43, 41, 43, 45, 46, 66, 45, 37.2116 + 14, 15, 44, 27, 20, 32, 25, 21, 16, 15, 15, 16, 13, 10, 10, 9, 37.2117 + 17, 18, 19, 20, 20, 21, 21, 20, 17, 18, 20, 20, 21, 24, 26, 28, 37.2118 + 28, 29, 30, 28, 29, 31, 33, 34, 32, 34, 36, 39, 42, 40, 38, 36, 37.2119 + 35, 34, 33, 33, 36, 38, 38, 37, 36, 37, 39, 42, 44, 41, 42, 49, 37.2120 + 47, 38, 31, 27, 31, 37, 40, 37, 35, 34, 33, 33, 32, 31, 31, 32, 37.2121 + 33, 32, 32, 29, 28, 27, 27, 28, 27, 26, 26, 25, 25, 24, 23, 26, 37.2122 + 27, 26, 26, 25, 25, 25, 24, 22, 22, 23, 23, 24, 26, 30, 40, 49, 37.2123 + 72, 84, 74, 88, 52, 18, 45, 53, 50, 47, 44, 46, 51, 57, 71, 44, 37.2124 + 26, 41, 66, 26, 22, 29, 23, 22, 17, 16, 15, 16, 12, 8, 9, 9, 37.2125 + 16, 17, 18, 19, 19, 20, 20, 20, 17, 18, 20, 21, 20, 21, 23, 25, 37.2126 + 26, 27, 28, 26, 26, 28, 30, 32, 31, 32, 35, 38, 41, 38, 36, 35, 37.2127 + 33, 32, 30, 32, 35, 36, 36, 35, 34, 35, 37, 40, 41, 38, 39, 45, 37.2128 + 45, 37, 28, 25, 29, 35, 39, 36, 34, 33, 32, 31, 31, 30, 30, 31, 37.2129 + 32, 31, 30, 28, 27, 26, 26, 28, 28, 27, 26, 24, 24, 23, 22, 25, 37.2130 + 26, 25, 25, 24, 24, 24, 24, 21, 21, 21, 21, 23, 25, 29, 39, 50, 37.2131 + 67, 76, 79, 84, 62, 33, 53, 51, 48, 46, 48, 50, 55, 62, 66, 24, 37.2132 + 29, 65, 53, 17, 32, 27, 15, 23, 18, 16, 15, 15, 12, 8, 8, 9, 37.2133 + 16, 17, 17, 18, 19, 19, 20, 20, 19, 20, 21, 21, 22, 23, 24, 24, 37.2134 + 23, 24, 25, 26, 28, 28, 29, 30, 30, 32, 36, 40, 40, 38, 36, 34, 37.2135 + 31, 29, 30, 32, 35, 36, 35, 34, 35, 37, 39, 39, 37, 36, 37, 44, 37.2136 + 45, 38, 30, 26, 28, 34, 38, 37, 35, 33, 31, 31, 31, 30, 30, 31, 37.2137 + 30, 29, 29, 28, 27, 26, 26, 25, 25, 24, 23, 23, 22, 21, 21, 24, 37.2138 + 25, 25, 25, 24, 24, 24, 23, 22, 21, 20, 20, 22, 25, 29, 38, 49, 37.2139 + 60, 60, 73, 74, 70, 44, 50, 42, 44, 46, 51, 58, 65, 63, 38, 27, 37.2140 + 52, 66, 39, 26, 40, 25, 13, 21, 19, 19, 17, 15, 13, 8, 6, 8, 37.2141 + 16, 17, 17, 18, 19, 19, 20, 21, 21, 22, 22, 22, 22, 22, 23, 24, 37.2142 + 23, 24, 24, 24, 25, 26, 26, 29, 30, 32, 36, 39, 38, 36, 34, 34, 37.2143 + 32, 31, 32, 33, 34, 36, 34, 33, 32, 34, 36, 36, 34, 33, 34, 41, 37.2144 + 43, 36, 28, 25, 27, 31, 36, 37, 35, 33, 31, 30, 29, 28, 28, 29, 37.2145 + 29, 29, 28, 25, 25, 24, 23, 24, 24, 24, 23, 22, 22, 21, 21, 23, 37.2146 + 24, 24, 24, 23, 23, 23, 22, 20, 19, 19, 19, 20, 23, 28, 35, 43, 37.2147 + 52, 41, 55, 55, 66, 45, 36, 39, 57, 63, 63, 69, 54, 34, 32, 46, 37.2148 + 68, 52, 19, 34, 41, 19, 17, 22, 18, 19, 17, 15, 12, 8, 6, 8, 37.2149 + 16, 17, 17, 18, 19, 19, 20, 21, 22, 22, 23, 22, 21, 21, 21, 22, 37.2150 + 22, 23, 23, 23, 23, 24, 24, 27, 30, 32, 35, 37, 35, 34, 33, 32, 37.2151 + 30, 30, 31, 32, 33, 34, 33, 31, 31, 32, 34, 34, 32, 32, 32, 38, 37.2152 + 41, 35, 27, 23, 25, 31, 34, 34, 33, 31, 29, 28, 27, 26, 26, 26, 37.2153 + 26, 26, 25, 23, 21, 20, 20, 22, 22, 22, 21, 20, 20, 19, 18, 20, 37.2154 + 21, 21, 21, 20, 20, 20, 19, 18, 16, 18, 17, 19, 22, 27, 31, 34, 37.2155 + 54, 34, 24, 39, 62, 54, 30, 18, 30, 34, 38, 44, 33, 26, 42, 64, 37.2156 + 60, 27, 24, 42, 41, 19, 21, 22, 19, 19, 17, 15, 12, 8, 6, 8, 37.2157 + 16, 17, 17, 18, 19, 19, 20, 21, 24, 24, 24, 22, 21, 20, 21, 21, 37.2158 + 20, 21, 23, 22, 24, 24, 24, 27, 31, 34, 36, 37, 35, 34, 33, 31, 37.2159 + 29, 28, 31, 33, 34, 35, 34, 31, 30, 32, 34, 34, 32, 31, 33, 38, 37.2160 + 41, 35, 29, 24, 26, 30, 35, 34, 31, 29, 28, 27, 27, 26, 25, 24, 37.2161 + 23, 22, 22, 21, 20, 19, 19, 20, 20, 19, 18, 18, 17, 16, 16, 17, 37.2162 + 17, 17, 17, 16, 16, 16, 16, 17, 18, 18, 18, 20, 22, 26, 28, 27, 37.2163 + 58, 42, 10, 20, 49, 58, 41, 45, 41, 39, 42, 39, 47, 55, 64, 59, 37.2164 + 29, 9, 31, 41, 37, 26, 23, 19, 17, 18, 17, 13, 11, 8, 6, 8, 37.2165 + 16, 17, 17, 18, 19, 19, 20, 21, 25, 25, 24, 22, 22, 21, 21, 20, 37.2166 + 20, 20, 22, 22, 23, 24, 24, 27, 30, 34, 35, 34, 33, 33, 33, 31, 37.2167 + 26, 26, 29, 31, 33, 33, 33, 31, 30, 32, 33, 33, 32, 31, 32, 39, 37.2168 + 41, 35, 30, 25, 26, 30, 36, 34, 31, 30, 28, 28, 28, 27, 26, 23, 37.2169 + 21, 21, 20, 19, 19, 18, 17, 18, 18, 17, 16, 16, 15, 14, 14, 15, 37.2170 + 15, 15, 15, 13, 13, 13, 13, 18, 18, 18, 18, 19, 20, 24, 26, 22, 37.2171 + 48, 51, 23, 13, 37, 51, 43, 59, 57, 48, 48, 47, 41, 46, 50, 22, 37.2172 + 10, 25, 31, 29, 30, 33, 25, 18, 17, 17, 15, 13, 10, 7, 6, 8, 37.2173 + 16, 17, 17, 18, 19, 19, 20, 22, 25, 25, 23, 22, 24, 22, 21, 21, 37.2174 + 20, 21, 22, 22, 22, 22, 23, 25, 28, 32, 32, 31, 31, 31, 32, 29, 37.2175 + 25, 26, 29, 30, 31, 32, 31, 28, 29, 31, 33, 33, 31, 30, 31, 36, 37.2176 + 38, 33, 28, 24, 25, 28, 34, 34, 32, 30, 29, 28, 27, 27, 26, 24, 37.2177 + 22, 21, 20, 19, 18, 17, 16, 18, 18, 17, 16, 16, 16, 15, 14, 14, 37.2178 + 15, 15, 15, 13, 13, 13, 14, 18, 17, 16, 16, 16, 19, 20, 22, 17, 37.2179 + 38, 43, 30, 31, 42, 47, 35, 46, 41, 30, 26, 19, 24, 19, 20, 25, 37.2180 + 28, 29, 22, 19, 26, 34, 30, 18, 16, 16, 15, 12, 10, 7, 6, 8, 37.2181 + 17, 18, 18, 19, 20, 21, 21, 23, 23, 23, 22, 21, 22, 22, 21, 21, 37.2182 + 19, 19, 21, 21, 21, 21, 22, 25, 29, 30, 30, 28, 28, 28, 28, 26, 37.2183 + 23, 24, 26, 28, 28, 29, 27, 26, 26, 27, 28, 29, 27, 27, 27, 31, 37.2184 + 34, 32, 28, 24, 24, 25, 30, 30, 29, 27, 26, 26, 25, 24, 23, 23, 37.2185 + 23, 22, 21, 19, 18, 17, 16, 19, 20, 19, 18, 18, 18, 17, 16, 16, 37.2186 + 16, 15, 15, 14, 14, 14, 15, 18, 19, 18, 18, 17, 19, 21, 22, 19, 37.2187 + 32, 35, 33, 41, 45, 42, 32, 29, 20, 12, 11, 7, 10, 15, 27, 40, 37.2188 + 37, 27, 22, 22, 25, 27, 26, 21, 17, 16, 14, 13, 11, 8, 7, 8, 37.2189 + 17, 18, 19, 19, 21, 21, 22, 23, 21, 21, 21, 21, 21, 21, 22, 21, 37.2190 + 18, 18, 19, 20, 21, 21, 22, 26, 31, 30, 30, 28, 27, 26, 26, 24, 37.2191 + 21, 23, 25, 26, 28, 27, 26, 25, 24, 25, 25, 26, 25, 25, 24, 27, 37.2192 + 30, 31, 28, 24, 23, 23, 26, 26, 25, 24, 24, 23, 23, 22, 21, 24, 37.2193 + 23, 22, 22, 19, 18, 18, 17, 21, 22, 21, 20, 20, 20, 19, 18, 18, 37.2194 + 18, 17, 16, 16, 16, 16, 16, 19, 20, 20, 19, 19, 20, 24, 24, 22, 37.2195 + 26, 31, 34, 37, 39, 35, 32, 28, 23, 19, 18, 17, 21, 26, 30, 32, 37.2196 + 31, 29, 27, 25, 23, 20, 21, 21, 17, 14, 14, 14, 12, 9, 7, 8, 37.2197 + 18, 18, 19, 20, 21, 21, 22, 22, 20, 20, 20, 20, 20, 21, 22, 21, 37.2198 + 17, 17, 18, 19, 21, 20, 22, 26, 31, 30, 29, 27, 26, 25, 25, 24, 37.2199 + 23, 25, 26, 28, 28, 28, 27, 24, 23, 24, 25, 25, 25, 24, 23, 26, 37.2200 + 31, 32, 29, 26, 24, 24, 26, 27, 26, 25, 24, 24, 23, 23, 22, 23, 37.2201 + 23, 22, 22, 20, 18, 18, 17, 21, 22, 21, 20, 20, 19, 18, 18, 18, 37.2202 + 18, 17, 16, 16, 16, 16, 16, 19, 20, 19, 18, 18, 19, 22, 22, 20, 37.2203 + 22, 26, 30, 33, 34, 35, 36, 38, 35, 34, 34, 32, 32, 31, 30, 27, 37.2204 + 25, 23, 22, 21, 18, 15, 17, 20, 16, 13, 12, 13, 11, 9, 8, 8, 37.2205 + 18, 18, 19, 20, 20, 21, 21, 22, 20, 20, 20, 20, 20, 20, 21, 20, 37.2206 + 17, 18, 18, 19, 20, 20, 22, 26, 29, 29, 28, 26, 25, 24, 24, 23, 37.2207 + 22, 24, 26, 27, 27, 27, 26, 24, 22, 23, 24, 25, 24, 23, 22, 26, 37.2208 + 30, 31, 28, 26, 24, 23, 25, 25, 25, 24, 23, 23, 22, 22, 21, 22, 37.2209 + 22, 21, 21, 19, 18, 17, 17, 20, 20, 20, 19, 18, 18, 17, 16, 18, 37.2210 + 17, 16, 16, 16, 16, 16, 16, 18, 18, 18, 16, 15, 17, 20, 20, 17, 37.2211 + 19, 23, 26, 27, 29, 31, 31, 31, 31, 31, 32, 31, 29, 26, 25, 24, 37.2212 + 22, 19, 18, 18, 16, 13, 14, 17, 14, 11, 11, 12, 11, 9, 8, 8, 37.2213 + 18, 18, 19, 20, 20, 20, 21, 21, 20, 19, 19, 19, 19, 20, 21, 20, 37.2214 + 18, 18, 19, 20, 20, 21, 24, 27, 29, 28, 27, 25, 24, 24, 23, 22, 37.2215 + 22, 23, 25, 26, 27, 26, 25, 24, 23, 24, 25, 25, 25, 24, 23, 25, 37.2216 + 29, 30, 27, 25, 23, 22, 23, 24, 24, 23, 22, 22, 21, 20, 20, 21, 37.2217 + 22, 21, 20, 19, 18, 17, 17, 19, 19, 19, 18, 17, 17, 16, 15, 17, 37.2218 + 17, 16, 15, 15, 15, 15, 15, 17, 17, 16, 15, 13, 15, 17, 17, 16, 37.2219 + 17, 22, 24, 26, 28, 27, 26, 28, 30, 31, 30, 28, 27, 25, 24, 21, 37.2220 + 20, 18, 17, 16, 15, 11, 12, 14, 12, 9, 10, 11, 10, 9, 8, 8, 37.2221 + 18, 18, 19, 19, 19, 20, 21, 21, 19, 19, 19, 19, 19, 19, 20, 20, 37.2222 + 18, 19, 20, 20, 20, 21, 25, 28, 28, 27, 26, 24, 23, 23, 22, 22, 37.2223 + 22, 24, 26, 27, 27, 26, 25, 24, 23, 24, 25, 25, 25, 24, 23, 26, 37.2224 + 30, 30, 27, 25, 24, 22, 23, 24, 24, 23, 22, 22, 22, 21, 20, 21, 37.2225 + 21, 20, 19, 19, 18, 17, 17, 19, 19, 18, 17, 17, 16, 15, 14, 17, 37.2226 + 16, 16, 15, 15, 15, 15, 15, 15, 16, 14, 13, 12, 13, 16, 16, 14, 37.2227 + 16, 19, 22, 23, 25, 26, 25, 26, 28, 29, 27, 24, 23, 22, 20, 18, 37.2228 + 17, 16, 15, 14, 11, 8, 10, 12, 10, 8, 9, 10, 10, 9, 8, 8, 37.2229 + 18, 18, 19, 19, 19, 20, 21, 20, 19, 19, 19, 19, 19, 19, 20, 20, 37.2230 + 19, 20, 21, 21, 21, 22, 26, 28, 28, 27, 26, 24, 23, 22, 22, 22, 37.2231 + 23, 25, 26, 27, 27, 26, 26, 24, 23, 24, 25, 26, 25, 24, 23, 26, 37.2232 + 30, 30, 27, 26, 25, 23, 23, 24, 24, 23, 23, 23, 22, 21, 20, 20, 37.2233 + 20, 19, 19, 19, 18, 17, 17, 18, 18, 17, 17, 16, 16, 15, 14, 16, 37.2234 + 16, 15, 15, 15, 15, 15, 15, 15, 15, 14, 12, 12, 13, 15, 16, 12, 37.2235 + 15, 18, 20, 18, 20, 23, 22, 24, 27, 26, 24, 24, 22, 20, 17, 16, 37.2236 + 16, 14, 14, 11, 9, 6, 7, 10, 8, 7, 8, 9, 10, 9, 8, 8, 37.2237 + 18, 18, 19, 19, 19, 19, 19, 18, 17, 17, 17, 18, 18, 19, 20, 20, 37.2238 + 19, 19, 20, 21, 21, 23, 25, 27, 27, 26, 25, 23, 21, 20, 20, 21, 37.2239 + 23, 24, 25, 26, 26, 26, 26, 24, 23, 24, 25, 25, 24, 23, 22, 24, 37.2240 + 28, 30, 28, 25, 23, 21, 21, 23, 24, 24, 24, 22, 21, 20, 20, 21, 37.2241 + 21, 20, 19, 20, 19, 19, 18, 18, 18, 17, 17, 16, 16, 15, 15, 17, 37.2242 + 17, 16, 15, 15, 14, 13, 12, 14, 13, 14, 13, 12, 13, 13, 15, 16, 37.2243 + 17, 19, 19, 20, 20, 21, 22, 23, 24, 24, 23, 22, 20, 19, 17, 17, 37.2244 + 15, 13, 12, 11, 10, 7, 7, 9, 7, 6, 7, 8, 9, 9, 8, 8, 37.2245 + 18, 18, 18, 18, 18, 18, 18, 18, 16, 16, 17, 18, 18, 19, 20, 20, 37.2246 + 19, 20, 21, 21, 22, 23, 25, 26, 27, 25, 25, 22, 21, 20, 20, 21, 37.2247 + 23, 24, 25, 25, 25, 25, 25, 25, 23, 24, 25, 24, 24, 23, 22, 25, 37.2248 + 28, 29, 27, 24, 22, 21, 21, 23, 24, 24, 24, 22, 21, 20, 19, 21, 37.2249 + 21, 20, 20, 20, 20, 19, 18, 18, 18, 17, 17, 16, 16, 16, 16, 17, 37.2250 + 17, 16, 15, 15, 14, 12, 12, 13, 12, 13, 14, 12, 13, 14, 15, 15, 37.2251 + 17, 18, 19, 19, 19, 20, 21, 22, 22, 22, 21, 20, 19, 17, 17, 18, 37.2252 + 16, 13, 12, 12, 12, 8, 8, 8, 7, 6, 7, 8, 9, 9, 8, 8, 37.2253 + 18, 18, 18, 18, 18, 18, 18, 17, 16, 16, 16, 17, 18, 18, 19, 20, 37.2254 + 20, 21, 21, 22, 23, 24, 26, 27, 25, 24, 23, 21, 20, 20, 19, 20, 37.2255 + 23, 24, 24, 25, 24, 24, 24, 24, 24, 25, 25, 25, 24, 23, 22, 24, 37.2256 + 27, 29, 27, 24, 22, 20, 20, 22, 23, 23, 23, 22, 21, 20, 19, 21, 37.2257 + 22, 21, 21, 21, 21, 20, 19, 19, 18, 17, 17, 16, 16, 16, 16, 17, 37.2258 + 16, 16, 15, 15, 14, 12, 12, 12, 12, 13, 13, 13, 14, 15, 16, 14, 37.2259 + 16, 17, 17, 17, 17, 18, 19, 19, 19, 19, 19, 17, 15, 14, 15, 18, 37.2260 + 15, 12, 12, 13, 11, 9, 8, 8, 6, 5, 7, 8, 9, 9, 8, 8, 37.2261 + 18, 18, 18, 18, 18, 18, 18, 17, 15, 15, 16, 17, 17, 18, 18, 19, 37.2262 + 21, 22, 22, 23, 25, 25, 26, 26, 25, 24, 23, 21, 20, 19, 19, 20, 37.2263 + 23, 24, 25, 25, 24, 24, 24, 23, 23, 24, 25, 24, 23, 23, 22, 24, 37.2264 + 27, 29, 27, 24, 22, 21, 21, 23, 23, 23, 23, 22, 21, 21, 20, 22, 37.2265 + 21, 21, 20, 21, 20, 19, 19, 19, 18, 17, 17, 15, 15, 15, 15, 16, 37.2266 + 16, 15, 15, 15, 14, 12, 12, 12, 12, 12, 12, 13, 14, 15, 15, 16, 37.2267 + 17, 18, 18, 17, 17, 17, 18, 18, 18, 18, 18, 16, 14, 13, 14, 16, 37.2268 + 14, 12, 11, 12, 10, 9, 8, 6, 6, 5, 7, 8, 9, 9, 8, 7, 37.2269 + 17, 17, 17, 17, 17, 17, 17, 16, 15, 15, 16, 16, 17, 17, 18, 19, 37.2270 + 21, 22, 23, 24, 26, 26, 26, 25, 24, 23, 22, 20, 19, 18, 18, 20, 37.2271 + 24, 24, 26, 25, 24, 24, 24, 23, 23, 23, 24, 24, 23, 22, 21, 23, 37.2272 + 27, 29, 26, 24, 23, 21, 21, 22, 23, 23, 23, 22, 22, 21, 20, 21, 37.2273 + 21, 20, 20, 20, 20, 19, 18, 18, 18, 17, 17, 15, 15, 15, 15, 16, 37.2274 + 16, 15, 14, 14, 14, 12, 12, 12, 11, 11, 11, 13, 13, 13, 15, 16, 37.2275 + 17, 18, 19, 19, 17, 17, 17, 18, 18, 18, 17, 15, 14, 12, 13, 14, 37.2276 + 13, 11, 11, 10, 9, 8, 7, 5, 5, 5, 7, 8, 9, 9, 8, 7, 37.2277 + 17, 17, 17, 17, 17, 17, 17, 16, 14, 14, 15, 16, 16, 17, 18, 18, 37.2278 + 21, 21, 22, 23, 26, 25, 25, 25, 23, 22, 21, 19, 19, 18, 18, 20, 37.2279 + 23, 24, 25, 25, 23, 23, 23, 22, 22, 22, 23, 23, 22, 21, 20, 22, 37.2280 + 26, 27, 25, 24, 23, 21, 21, 22, 22, 22, 22, 22, 21, 20, 20, 21, 37.2281 + 22, 22, 21, 21, 21, 20, 20, 19, 18, 17, 17, 14, 14, 14, 14, 15, 37.2282 + 15, 14, 14, 14, 14, 12, 12, 12, 12, 10, 11, 12, 13, 13, 13, 16, 37.2283 + 17, 17, 16, 17, 16, 15, 15, 16, 16, 16, 15, 14, 12, 11, 11, 14, 37.2284 + 13, 12, 11, 10, 8, 8, 6, 5, 5, 6, 7, 8, 9, 9, 7, 6, 37.2285 + 16, 16, 16, 16, 17, 17, 17, 16, 14, 14, 15, 15, 15, 16, 17, 18, 37.2286 + 19, 20, 21, 23, 25, 24, 24, 23, 22, 21, 21, 20, 19, 19, 18, 20, 37.2287 + 23, 23, 24, 24, 23, 23, 23, 22, 22, 22, 23, 23, 22, 21, 21, 22, 37.2288 + 25, 27, 25, 23, 21, 20, 20, 21, 22, 22, 22, 21, 20, 20, 19, 20, 37.2289 + 21, 21, 20, 20, 20, 19, 19, 18, 17, 17, 16, 14, 14, 14, 14, 15, 37.2290 + 15, 14, 14, 14, 13, 12, 11, 12, 12, 12, 11, 12, 12, 12, 12, 15, 37.2291 + 15, 15, 14, 15, 15, 14, 15, 15, 15, 15, 14, 14, 13, 11, 12, 14, 37.2292 + 13, 13, 12, 10, 9, 8, 7, 7, 7, 7, 8, 8, 9, 9, 7, 6, 37.2293 + 14, 15, 15, 16, 17, 17, 17, 16, 14, 14, 15, 15, 15, 15, 16, 17, 37.2294 + 17, 18, 20, 22, 23, 23, 23, 22, 21, 21, 21, 20, 18, 19, 19, 20, 37.2295 + 22, 22, 23, 23, 23, 23, 23, 22, 22, 23, 23, 24, 23, 22, 22, 22, 37.2296 + 23, 25, 25, 23, 21, 20, 20, 21, 22, 22, 22, 21, 20, 19, 18, 18, 37.2297 + 19, 19, 19, 18, 18, 18, 18, 18, 17, 17, 16, 16, 16, 16, 16, 16, 37.2298 + 15, 14, 14, 13, 12, 11, 11, 13, 12, 12, 12, 12, 12, 12, 12, 13, 37.2299 + 13, 13, 13, 13, 13, 13, 13, 15, 14, 13, 13, 14, 13, 12, 13, 13, 37.2300 + 13, 12, 11, 11, 10, 9, 9, 10, 9, 8, 8, 9, 9, 9, 8, 7, 37.2301 + 14, 15, 15, 16, 17, 17, 17, 16, 14, 14, 15, 15, 15, 15, 16, 17, 37.2302 + 17, 18, 20, 22, 23, 23, 23, 22, 21, 21, 21, 20, 19, 20, 20, 21, 37.2303 + 21, 22, 23, 23, 23, 23, 23, 22, 22, 23, 23, 24, 23, 22, 21, 21, 37.2304 + 23, 25, 25, 23, 21, 20, 20, 20, 21, 21, 21, 21, 20, 19, 18, 18, 37.2305 + 19, 19, 19, 18, 18, 18, 18, 18, 17, 17, 16, 16, 16, 16, 16, 16, 37.2306 + 15, 14, 14, 13, 12, 11, 11, 13, 13, 12, 12, 12, 12, 12, 12, 12, 37.2307 + 12, 12, 12, 12, 12, 12, 12, 14, 13, 12, 12, 13, 12, 11, 12, 12, 37.2308 + 12, 11, 10, 11, 10, 9, 9, 10, 10, 9, 9, 9, 9, 9, 8, 7, 37.2309 + 14, 15, 15, 16, 17, 17, 17, 16, 14, 14, 15, 15, 15, 15, 16, 17, 37.2310 + 17, 18, 20, 22, 23, 23, 23, 22, 21, 21, 21, 20, 19, 20, 20, 21, 37.2311 + 21, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 22, 21, 21, 37.2312 + 23, 25, 25, 23, 21, 20, 20, 20, 21, 21, 21, 21, 20, 19, 18, 18, 37.2313 + 19, 19, 19, 18, 18, 18, 18, 18, 17, 17, 16, 16, 16, 16, 16, 16, 37.2314 + 15, 14, 14, 13, 12, 11, 11, 13, 13, 12, 12, 12, 12, 12, 12, 12, 37.2315 + 12, 12, 11, 10, 10, 10, 10, 12, 11, 11, 10, 11, 10, 9, 9, 11, 37.2316 + 10, 9, 9, 11, 10, 9, 9, 10, 10, 9, 9, 9, 9, 9, 8, 7 };
38.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 38.2 +++ b/PTdecode/CImg-1.3.0/examples/jawbreaker.cpp Mon Aug 03 14:09:20 2009 +0100 38.3 @@ -0,0 +1,237 @@ 38.4 +/* 38.5 + # 38.6 + # File : jawbreaker.cpp 38.7 + # ( C++ source file ) 38.8 + # 38.9 + # Description : A funny game featuring small colored balls. 38.10 + # This file is a part of the CImg Library project. 38.11 + # ( http://cimg.sourceforge.net ) 38.12 + # 38.13 + # Copyright : David Tschumperle 38.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 38.15 + # 38.16 + # License : CeCILL v2.0 38.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 38.18 + # 38.19 + # This software is governed by the CeCILL license under French law and 38.20 + # abiding by the rules of distribution of free software. You can use, 38.21 + # modify and/ or redistribute the software under the terms of the CeCILL 38.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 38.23 + # "http://www.cecill.info". 38.24 + # 38.25 + # As a counterpart to the access to the source code and rights to copy, 38.26 + # modify and redistribute granted by the license, users are provided only 38.27 + # with a limited warranty and the software's author, the holder of the 38.28 + # economic rights, and the successive licensors have only limited 38.29 + # liability. 38.30 + # 38.31 + # In this respect, the user's attention is drawn to the risks associated 38.32 + # with loading, using, modifying and/or developing or reproducing the 38.33 + # software by the user in light of its specific status of free software, 38.34 + # that may mean that it is complicated to manipulate, and that also 38.35 + # therefore means that it is reserved for developers and experienced 38.36 + # professionals having in-depth computer knowledge. Users are therefore 38.37 + # encouraged to load and test the software's suitability as regards their 38.38 + # requirements in conditions enabling the security of their systems and/or 38.39 + # data to be ensured and, more generally, to use and operate it in the 38.40 + # same conditions as regards security. 38.41 + # 38.42 + # The fact that you are presently reading this means that you have had 38.43 + # knowledge of the CeCILL license and that you accept its terms. 38.44 + # 38.45 +*/ 38.46 + 38.47 +#include "CImg.h" 38.48 +using namespace cimg_library; 38.49 + 38.50 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 38.51 +#ifdef cimg_use_visualcpp6 38.52 +#define std 38.53 +#endif 38.54 +#ifdef max 38.55 +#undef max 38.56 +#endif 38.57 + 38.58 +// Start main procedure 38.59 +//---------------------- 38.60 +int main(int argc, char **argv) { 38.61 + 38.62 + // Display help (if option '-h' or '--help' specified) and retrieve program arguments 38.63 + cimg_usage("A small and funny game featuring colored balls.\n (by David Tschumperle)."); 38.64 + const char *score_file = cimg_option("-s",(char*)0,"Specify score file to use (0=default file)."); 38.65 + cimg_help("\n" 38.66 + "** Quick Help *********************************************************\n\n" 38.67 + "Goal : Delete the board by clicking on groups of adjacent colored balls\n" 38.68 + " (a group is made of at least two balls with the same color).\n" 38.69 + " Suppressing large sets gives higher scores.\n\n" 38.70 + "In-game keys : - BACKSPACE or SPACE = Undo last move\n" 38.71 + " - CTRL+F = Toggle fullscreen mode\n" 38.72 + " - ESC = Quit application\n" 38.73 + " - Q = End current game\n\n" 38.74 + "*********************************************************************"); 38.75 + 38.76 + // Load score file if available 38.77 + CImgList<unsigned int> score_history; 38.78 + char filename_history[1024]; 38.79 + std::sprintf(filename_history,"%s%s",score_file?"":cimg::temporary_path(),score_file?score_file:"/jawbreaker.score"); 38.80 + std::FILE *file = std::fopen(filename_history,"r"); 38.81 + if (file) { std::fclose(file); score_history = CImg<unsigned int>::get_load_dlm(filename_history).get_split('y'); } 38.82 + 38.83 + // Create ball graphics 38.84 + const unsigned int W = 12, H = 14, Wi = (W<<5), Hi = (H<<5); 38.85 + unsigned int score = 0, previous_score = 0, shape_score = 0, 38.86 + best_score = score_history?score_history.max():0U; 38.87 + 38.88 + const CImg<> colors(3,7,1,1, 255,255,255, 205,0,230, 0,235,0, 235,255,0, 235,0,0, 0,128,255, 450,350,300); 38.89 + const unsigned char 38.90 + white[] = { 255,255,255 }, orange[] = { 255,128,64 }, yellow[] = { 255,255,64 }, red[] = { 255,64,64 }, six = 6; 38.91 + CImgList<> balls0(7,32,32,1,3,0); 38.92 + cimglist_for(balls0,l) if (l) { 38.93 + balls0[l].draw_circle(16,16,14,colors.ptr(0,l)); 38.94 + cimg_forXYV(balls0[l],x,y,k) if (balls0(l,x,y,k)) (balls0(l,x,y,k)*=(32-x+y)/60.0f)+=20; 38.95 + balls0[l].draw_circle(16,16,14,colors.ptr(0,l),0.5f,~0U). 38.96 + draw_circle(20,10,5,colors,0.2f).draw_circle(22,8,2,colors,0.4f).cut(0,255); 38.97 + } 38.98 + 38.99 + // Create background graphics 38.100 + CImgList<unsigned char> balls(balls0); 38.101 + CImg<unsigned char> 38.102 + mask = balls[1].get_cut(0,1).channel(0).dilate(3), 38.103 + background = CImg<unsigned char>(Wi,Hi,1,3,0). 38.104 + noise(255,1).blur(6,20,0).equalize(100,0,255).blur(2,4,0); 38.105 + background.get_shared_channel(0)/=4; background.get_shared_channel(1)/=8; background.get_shared_channel(2)/=2; 38.106 + 38.107 + // Begin user-interaction loop. 38.108 + CImg<unsigned char> board, previous_board, selected_board, shape, img(background); 38.109 + CImgDisplay disp(img.dimx(),img.dimy(),"Jawbreaker",0); 38.110 + bool redraw = true, gameover = false, title = true; 38.111 + for (float opac = 0.0f; !disp.is_closed; ) { 38.112 + 38.113 + // Init board 38.114 + if (!board) { 38.115 + (++((board.assign(W,H,1,1,5).noise(5,1))%=5)).get_shared_line(0).fill(0); 38.116 + opac = (float)(score = previous_score = shape_score = 0); 38.117 + gameover = false; redraw = title = true; 38.118 + previous_board = board; 38.119 + } 38.120 + 38.121 + // Draw graphical board 38.122 + if (redraw) { 38.123 + (img=background).draw_text(2,2,"Score : %u",yellow,0,0.7f,24,score). 38.124 + draw_text(Wi-90,2,"Best : %u",orange,0,0.9f,16,best_score); 38.125 + if (selected_board) { 38.126 + cimg_forXY(selected_board,x,y) if (selected_board(x,y)) 38.127 + img.draw_image(x<<5,y<<5,balls[selected_board(x,y)],mask); 38.128 + } else cimg_forXY(board,x,y) if (board(x,y)) img.draw_image(x<<5,y<<5,balls[board(x,y)],mask); 38.129 + if (title) { 38.130 + CImg<unsigned char> text1, text2; 38.131 + text1.draw_text(0,0,"- Jawbreaker -",white,0,1,48); 38.132 + text2.draw_text(0,0,"Press button to start",yellow,0,1,24); 38.133 + (img/=2).draw_image((Wi-text1.dimx())/2, 38.134 + (Hi-text1.dimy())/2, 38.135 + text1,text1.get_dilate(7),1,255). 38.136 + draw_image((Wi-text2.dimx())/2, 38.137 + (Hi+text1.dimy()+10)/2, 38.138 + text2,text2.get_dilate(5),0.7f,255); 38.139 + for (float i=1; i<10 && !disp.is_keyESC; i+=0.25) 38.140 + disp.display(img.get_crop((int)(Wi*(0.5f-i*i/200.0f)),(int)(Hi*(0.5f-i*i*i*i/20000.0f)), 38.141 + (int)(Wi*(0.5f+i*i/200.0f)),(int)(Hi*(0.5f+i*i*i*i/20000.0f)))).wait(20); 38.142 + } 38.143 + } 38.144 + if ((opac-=0.02f)>0) disp.display((+img).draw_text(disp.mouse_x-8,disp.mouse_y-54+(int)(30*opac),"+%u", 38.145 + white,0,(float)std::sqrt(opac),32,shape_score)).wait(20); 38.146 + else { if (redraw) { disp.display(img); redraw = false; } else disp.wait(); } 38.147 + 38.148 + // Handle key and window events 38.149 + if (disp.is_resized) disp.resize(disp); 38.150 + if (disp.is_keyBACKSPACE || disp.is_keySPACE) { 38.151 + board = previous_board; score = previous_score; selected_board.assign(); redraw = true; disp.key = 0; 38.152 + } 38.153 + if (disp.is_keyQ) { gameover = true; disp.key = 0; } 38.154 + if (disp.is_keyESC) disp.close(); 38.155 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.toggle_fullscreen().display(img); 38.156 + 38.157 + // Handle ball selection and removal 38.158 + const int x = disp.mouse_x*board.dimx()/disp.dimx(), y = disp.mouse_y*board.dimy()/disp.dimy(); 38.159 + if (disp.button&1 && x>=0 && y>=0) { 38.160 + if (title) { title = false; redraw = true; } else { 38.161 + disp.button=0; 38.162 + if (!board(x,y)) { selected_board.assign(); redraw = true; } 38.163 + else { 38.164 + if (!selected_board || selected_board(x,y)!=6) { 38.165 + (selected_board=board).draw_fill(x,y,0,&six,1,shape); 38.166 + if ((shape_score=(unsigned int)shape.sum())<2) selected_board.assign(); 38.167 + else { (shape_score-=1)*=shape_score; opac = 1.0f; redraw = true; } 38.168 + } else { 38.169 + selected_board.assign(); 38.170 + previous_board = board; 38.171 + previous_score = score; 38.172 + score += shape_score; 38.173 + board&=--shape; 38.174 + redraw = true; 38.175 + 38.176 + // Handle board modification due to ball removal 38.177 + for (int pmax = board.dimx(), p=0; p<pmax; ++p) { 38.178 + for (int q = board.dimy()-1, qs = q; q>=0; --q) { 38.179 + while (!board(p,qs)) --qs; 38.180 + board(p,q) = (qs>=0?board(p,qs--):0); 38.181 + } 38.182 + if (!board(p,board.dimy()-1)) { 38.183 + board.draw_image(p,board.get_crop(p,0,board.dimx()-1,board.dimy()-1).translate(1)); 38.184 + if (p<pmax) { p--; pmax--; } 38.185 + } 38.186 + } 38.187 + 38.188 + // Test possible end of the game 38.189 + gameover = true; 38.190 + cimg_forXY(board,x,y) 38.191 + if (board(x,y) && ((y && board(x,y)==board(x,y-1)) || (x && board(x,y)==board(x-1,y)))) gameover = false; 38.192 + } 38.193 + } 38.194 + } 38.195 + disp.button = 0; 38.196 + } 38.197 + 38.198 + // If game is over... 38.199 + if (gameover && opac<=0) { 38.200 + CImg<unsigned char> text1, text2, text3, text4, text5, text6; 38.201 + text1.draw_text(0,0,"Game Over !",white,0,1,48); 38.202 + const unsigned int remaining_balls = (unsigned int)board.get_cut(0,1).sum(); 38.203 + if (remaining_balls<8) { 38.204 + const unsigned int bonus = (22-2*remaining_balls)*10; 38.205 + score += bonus; 38.206 + text2.draw_text(0,0,"Jawbreaker Bonus : +%u",white,0,1,24,bonus); 38.207 + } 38.208 + score_history.insert(CImg<unsigned int>::vector(score)); 38.209 + text3.draw_text(0,0,"Final score : %u",yellow,0,1,24,score); 38.210 + text4.draw_text(0,0,score>best_score?"** New record ! **":"Best score : %u", 38.211 + orange,0,1,24,score>best_score?score:best_score); 38.212 + text5.draw_text(0,0,"Average score : %u",red,0,1,24, 38.213 + score_history?(unsigned int)score_history.mean():0U); 38.214 + text6.draw_text(0,0,"Games played : %u",red,0,1,24,score_history.size); 38.215 + if (score>best_score) best_score = score; 38.216 + 38.217 + unsigned int yt = (Hi-text1.dimy())/2-20; 38.218 + (img/=2).draw_image((Wi-text1.dimx())/2,yt,text1,text1.get_dilate(7),1,255); yt+=80; 38.219 + if (text2) { img.draw_image((Wi-text2.dimx())/2,yt,text2,text2.get_dilate(5),1,255); yt+=25; } 38.220 + img.draw_image((Wi-text3.dimx())/2,yt,text3,text3.get_dilate(5),1,255). 38.221 + draw_image((Wi-text4.dimx())/2,yt+25,text4,text4.get_dilate(5),1,255). 38.222 + draw_image((Wi-text5.dimx())/2,yt+50,text5,text5.get_dilate(5),1,255). 38.223 + draw_image((Wi-text6.dimx())/2,yt+75,text6,text6.get_dilate(5),1,255).display(disp); 38.224 + for (disp.button = disp.key = 0; !disp.is_closed && !disp.key && !disp.button; disp.wait()) 38.225 + if (disp.is_resized) disp.resize(disp); 38.226 + disp.button = disp.key = 0; 38.227 + board.assign(); 38.228 + for (float i=10; i>0 && !disp.is_keyESC; i-=0.25) 38.229 + disp.display(img.get_crop((int)(Wi*(0.5f-i*i*i*i/20000.0f)),(int)(Hi*(0.5f-i*i/200.0f)), 38.230 + (int)(Wi*(0.5f+i*i*i*i/20000.0f)),(int)(Hi*(0.5f+i*i/200.0f)))).wait(20); 38.231 + } 38.232 + } 38.233 + 38.234 + // Save score history if possible, and exit. 38.235 + if (score_history) { 38.236 + file = std::fopen(filename_history,"w"); 38.237 + if (file) { std::fclose(file); score_history.get_append('y').save_dlm(filename_history); } 38.238 + } 38.239 + return 0; 38.240 +}
39.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 39.2 +++ b/PTdecode/CImg-1.3.0/examples/mcf_levelsets.cpp Mon Aug 03 14:09:20 2009 +0100 39.3 @@ -0,0 +1,124 @@ 39.4 +/* 39.5 + # 39.6 + # File : mcf_levelsets.cpp 39.7 + # ( C++ source file ) 39.8 + # 39.9 + # Description : Implementation of the Mean Curvature Flow (classical 2d curve evolution), 39.10 + # using the framework of Level Sets. 39.11 + # This file is a part of the CImg Library project. 39.12 + # ( http://cimg.sourceforge.net ) 39.13 + # 39.14 + # Copyright : David Tschumperle 39.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 39.16 + # 39.17 + # License : CeCILL v2.0 39.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 39.19 + # 39.20 + # This software is governed by the CeCILL license under French law and 39.21 + # abiding by the rules of distribution of free software. You can use, 39.22 + # modify and/ or redistribute the software under the terms of the CeCILL 39.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 39.24 + # "http://www.cecill.info". 39.25 + # 39.26 + # As a counterpart to the access to the source code and rights to copy, 39.27 + # modify and redistribute granted by the license, users are provided only 39.28 + # with a limited warranty and the software's author, the holder of the 39.29 + # economic rights, and the successive licensors have only limited 39.30 + # liability. 39.31 + # 39.32 + # In this respect, the user's attention is drawn to the risks associated 39.33 + # with loading, using, modifying and/or developing or reproducing the 39.34 + # software by the user in light of its specific status of free software, 39.35 + # that may mean that it is complicated to manipulate, and that also 39.36 + # therefore means that it is reserved for developers and experienced 39.37 + # professionals having in-depth computer knowledge. Users are therefore 39.38 + # encouraged to load and test the software's suitability as regards their 39.39 + # requirements in conditions enabling the security of their systems and/or 39.40 + # data to be ensured and, more generally, to use and operate it in the 39.41 + # same conditions as regards security. 39.42 + # 39.43 + # The fact that you are presently reading this means that you have had 39.44 + # knowledge of the CeCILL license and that you accept its terms. 39.45 + # 39.46 +*/ 39.47 + 39.48 +#include "CImg.h" 39.49 +using namespace cimg_library; 39.50 + 39.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 39.52 +#ifdef cimg_use_visualcpp6 39.53 +#define std 39.54 +#endif 39.55 +#ifdef min 39.56 +#undef min 39.57 +#undef max 39.58 +#endif 39.59 + 39.60 +// get_level0() : Retrieve the curve corresponding to the zero level set of the distance function 39.61 +//------------- 39.62 +CImg<unsigned char> get_level0(const CImg<>& img) { 39.63 + CImg<unsigned char> dest(img); 39.64 + CImg_2x2(I,float); Inn = 0; 39.65 + cimg_for2x2(img,x,y,0,0,I) if (Icc*Inc<0 || Icc*Icn<0) dest(x,y) = 255; else dest(x,y) = Icc<0?100:0; 39.66 + return dest; 39.67 +} 39.68 + 39.69 +//----------------- 39.70 +// Main procedure 39.71 +//----------------- 39.72 +int main(int argc,char **argv) { 39.73 + cimg_usage("Perform a Mean Curvature Flow on closed curves, using Level Sets"); 39.74 + const float dt = cimg_option("-dt",0.8f,"PDE time step"); 39.75 + const unsigned int nb_iter = cimg_option("-iter",10000,"Number of iterations"); 39.76 + 39.77 + // Create a user-defined closed curve 39.78 + CImg<unsigned char> curve(256,256,1,2,0); 39.79 + unsigned char col1[2]={0,255}, col2[2]={200,255}, col3[2]={255,255}; 39.80 + curve.draw_grid(20,20,0,0,false,false,col1,0.4f,0xCCCCCCCC,0xCCCCCCCC). 39.81 + draw_text(5,5,"Please draw your curve\nin this window\n(Use your mouse)",col1); 39.82 + CImgDisplay disp(curve,"Mean curvature flow",0); 39.83 + int xo=-1,yo=-1,x0=-1,y0=-1,x1=-1,y1=-1; 39.84 + while (!disp.is_closed && (x0<0 || disp.button)) { 39.85 + if (disp.button && disp.mouse_x>=0 && disp.mouse_y>=0) { 39.86 + if (x0<0) { xo = x0 = disp.mouse_x; yo = y0 = disp.mouse_y; } else { 39.87 + x1 = disp.mouse_x; y1 = disp.mouse_y; 39.88 + curve.draw_line(x0,y0,x1,y1,col2).display(disp); 39.89 + x0 = x1; y0 = y1; 39.90 + } 39.91 + } 39.92 + disp.wait(); 39.93 + if (disp.is_resized) disp.resize(disp); 39.94 + } 39.95 + curve.draw_line(x1,y1,xo,yo,col2).channel(0).draw_fill(0,0,col3); 39.96 + CImg<> img = CImg<>(curve.get_shared_channel(0)).normalize(-1,1); 39.97 + 39.98 + // Perform the "Mean Curvature Flow" 39.99 + img.distance_hamilton(10); 39.100 + CImg_3x3(I,float); 39.101 + for (unsigned int iter=0; iter<nb_iter && !disp.is_closed && !disp.is_keyQ; iter++) { 39.102 + CImg<> veloc(img.dimx(),img.dimy(),img.dimz(),img.dimv()); 39.103 + cimg_for3x3(img,x,y,0,0,I) { 39.104 + const float 39.105 + ix = 0.5f*(Inc-Ipc), 39.106 + iy = 0.5f*(Icn-Icp), 39.107 + ixx = Inc+Ipc-2*Icc, 39.108 + iyy = Icn+Icp-2*Icc, 39.109 + ixy = 0.25f*(Ipp+Inn-Inp-Ipn), 39.110 + ngrad = ix*ix+iy*iy, 39.111 + iee = (ngrad>1e-5)?(( iy*iy*ixx - 2*ix*iy*ixy + ix*ix*iyy )/ngrad):0; 39.112 + veloc(x,y) = iee; 39.113 + } 39.114 + float m, M = veloc.maxmin(m); 39.115 + const double xdt = dt/cimg::max(cimg::abs(m),cimg::abs(M)); 39.116 + img+=xdt*veloc; 39.117 + if (!(iter%10)) { 39.118 + get_level0(img).resize(disp.dimx(),disp.dimy()).draw_grid(20,20,0,0,false,false,col3,0.4f,0xCCCCCCCC,0xCCCCCCCC). 39.119 + draw_text(5,5,"Iteration %d",col3,0,1,11,iter).display(disp); 39.120 + } 39.121 + if (!(iter%30)) img.distance_hamilton(1,3); 39.122 + if (disp.is_resized) disp.resize(); 39.123 + } 39.124 + 39.125 + // End of program 39.126 + return 0; 39.127 +}
40.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 40.2 +++ b/PTdecode/CImg-1.3.0/examples/mcf_levelsets3d.cpp Mon Aug 03 14:09:20 2009 +0100 40.3 @@ -0,0 +1,183 @@ 40.4 +/* 40.5 + # 40.6 + # File : mcf_levelsets3d.cpp 40.7 + # ( C++ source file ) 40.8 + # 40.9 + # Description : Implementation of the Mean Curvature Flow on Surfaces 40.10 + # using the framework of Level Sets 3D. 40.11 + # This file is a part of the CImg Library project. 40.12 + # ( http://cimg.sourceforge.net ) 40.13 + # 40.14 + # Copyright : David Tschumperle 40.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 40.16 + # 40.17 + # License : CeCILL v2.0 40.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 40.19 + # 40.20 + # This software is governed by the CeCILL license under French law and 40.21 + # abiding by the rules of distribution of free software. You can use, 40.22 + # modify and/ or redistribute the software under the terms of the CeCILL 40.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 40.24 + # "http://www.cecill.info". 40.25 + # 40.26 + # As a counterpart to the access to the source code and rights to copy, 40.27 + # modify and redistribute granted by the license, users are provided only 40.28 + # with a limited warranty and the software's author, the holder of the 40.29 + # economic rights, and the successive licensors have only limited 40.30 + # liability. 40.31 + # 40.32 + # In this respect, the user's attention is drawn to the risks associated 40.33 + # with loading, using, modifying and/or developing or reproducing the 40.34 + # software by the user in light of its specific status of free software, 40.35 + # that may mean that it is complicated to manipulate, and that also 40.36 + # therefore means that it is reserved for developers and experienced 40.37 + # professionals having in-depth computer knowledge. Users are therefore 40.38 + # encouraged to load and test the software's suitability as regards their 40.39 + # requirements in conditions enabling the security of their systems and/or 40.40 + # data to be ensured and, more generally, to use and operate it in the 40.41 + # same conditions as regards security. 40.42 + # 40.43 + # The fact that you are presently reading this means that you have had 40.44 + # knowledge of the CeCILL license and that you accept its terms. 40.45 + # 40.46 +*/ 40.47 + 40.48 +#include "CImg.h" 40.49 +using namespace cimg_library; 40.50 + 40.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 40.52 +#ifdef cimg_use_visualcpp6 40.53 +#define std 40.54 +#endif 40.55 +#ifdef min 40.56 +#undef min 40.57 +#undef max 40.58 +#endif 40.59 + 40.60 +// Apply the Mean curvature flow PDE 40.61 +//----------------------------------- 40.62 +template<typename T> CImg<T>& mcf_PDE(CImg<T>& img, const unsigned int nb_iter, 40.63 + const float dt=0.25f, const float narrow=4.0f) { 40.64 + CImg<T> veloc(img.dimx(),img.dimy(),img.dimz(),img.dimv()); 40.65 + CImg_3x3x3(I,float); 40.66 + for (unsigned int iter=0; iter<nb_iter; iter++) { 40.67 + cimg_for3x3x3(img,x,y,z,0,I) if (cimg::abs(Iccc)<narrow) { 40.68 + const float 40.69 + ix = 0.5f*(Incc-Ipcc), 40.70 + iy = 0.5f*(Icnc-Icpc), 40.71 + iz = 0.5f*(Iccn-Iccp), 40.72 + norm = (float)std::sqrt(1e-5f+ix*ix+iy*iy+iz*iz), 40.73 + ixx = Incc+Ipcc-2*Iccc, 40.74 + ixy = 0.25f*(Ippc+Innc-Inpc-Ipnc), 40.75 + ixz = 0.25f*(Ipcp+Incn-Incp-Ipcn), 40.76 + iyy = Icnc+Icpc-2*Iccc, 40.77 + iyz = 0.25f*(Icpp+Icnn-Icnp-Icpn), 40.78 + izz = Iccn+Iccp-2*Iccc, 40.79 + a = ix/norm, 40.80 + b = iy/norm, 40.81 + c = iz/norm, 40.82 + inn = a*a*ixx + b*b*iyy + c*c*izz + 2*a*b*ixy + 2*a*c*ixz + 2*b*c*iyz; 40.83 + veloc(x,y,z) = ixx+iyy+izz-inn; 40.84 + } else veloc(x,y,z) = 0; 40.85 + float m, M = veloc.maxmin(m); 40.86 + const double xdt = dt/cimg::max(cimg::abs(m),cimg::abs(M)); 40.87 + img+=xdt*veloc; 40.88 + } 40.89 + return img; 40.90 +} 40.91 + 40.92 +// Main procedure 40.93 +//---------------- 40.94 +int main(int argc,char **argv) { 40.95 + cimg_usage("Mean curvature flow of a surface, using 3D level sets"); 40.96 + const char *file_i = cimg_option("-i",(char*)0,"Input image"); 40.97 + const float dt = cimg_option("-dt",0.05f,"PDE Time step"); 40.98 + const float narrow = cimg_option("-band",5.0f,"Size of the narrow band"); 40.99 + const bool both = cimg_option("-both",false,"Show both evolving and initial surface"); 40.100 + 40.101 + // Define the signed distance map of the initial surface 40.102 + CImg<> img; 40.103 + if (file_i) { 40.104 + const float sigma = cimg_option("-sigma",1.2f,"Segmentation regularity"); 40.105 + const float alpha = cimg_option("-alpha",5.0f,"Region growing tolerance"); 40.106 + img.load(file_i).channel(0); 40.107 + CImg<int> s; 40.108 + CImgDisplay disp(img,"Please select a starting point"); 40.109 + while (!s || s[0]<0) s = img.get_select(0,disp); 40.110 + CImg<> region; 40.111 + float tmp[1] = { 0 }; 40.112 + img.draw_fill(s[0],s[1],s[2],tmp,1,region,alpha); 40.113 + ((img = region.normalize(-1,1))*=-1).blur(sigma); 40.114 + 40.115 + } 40.116 + else { // Create synthetic implicit function 40.117 + img.assign(60,60,60); 40.118 + const float exte[1]={1}, inte[1]={-1}; 40.119 + img.fill(*exte).draw_rectangle(15,15,15,45,45,45,inte).draw_rectangle(25,25,0,35,35,img.dimz()-1,exte). 40.120 + draw_rectangle(0,25,25,img.dimx()-1,35,35,exte).draw_rectangle(25,0,25,35,img.dimy()-1,35,exte); 40.121 + } 40.122 + img.distance_hamilton(10,0,0.1f); 40.123 + 40.124 + // Compute corresponding surface triangularization by the marching cube algorithm (isovalue 0) 40.125 + CImg<> points0; 40.126 + CImgList<unsigned int> faces0; 40.127 + if (both) points0 = img.get_isovalue3d(faces0,0); 40.128 + const CImgList<unsigned char> colors0(faces0.size,CImg<unsigned char>::vector(100,200,255)); 40.129 + const CImgList<> opacities0(faces0.size,1,1,1,1,0.2f); 40.130 + 40.131 + // Perform MCF evolution 40.132 + CImgDisplay disp(256,256,"",1), disp3d(512,512,"",0); 40.133 + float alpha = 0, beta = 0; 40.134 + for (unsigned int iter=0; !disp.is_closed && !disp3d.is_closed && !disp.is_keyESC && !disp3d.is_keyESC && 40.135 + !disp.is_keyQ && !disp3d.is_keyQ; iter++) { 40.136 + disp.set_title("3D implicit Function (iter. %u)",iter); 40.137 + disp3d.set_title("Mean curvature flow 3D - Isosurface (iter. %u)",iter); 40.138 + 40.139 + // Apply PDE on the distance function 40.140 + mcf_PDE(img,1,dt,narrow); // Do one iteration of mean curvature flow 40.141 + if (!(iter%10)) img.distance_hamilton(1,narrow,0.5f); // Every 10 steps, do one iteration of distance function re-initialization 40.142 + 40.143 + // Compute surface triangularization by the marching cube algorithm (isovalue 0) 40.144 + CImgList<unsigned int> faces; 40.145 + CImg<> points = img.get_isovalue3d(faces,0); 40.146 + CImgList<unsigned char> colors(faces.size,CImg<unsigned char>::vector(200,128,100)); 40.147 + CImgList<> opacities(faces.size,CImg<>::vector(1.0f)); 40.148 + const float fact = 3*cimg::max(disp3d.dimx(),disp3d.dimy())/(4.0f*cimg::max(img.dimx(),img.dimy())); 40.149 + 40.150 + // Append initial object if necessary. 40.151 + if (both) { 40.152 + points.append_object3d(faces,points0,faces0); 40.153 + colors.insert(colors0); 40.154 + opacities.insert(opacities0); 40.155 + } 40.156 + 40.157 + // center and rescale the objects 40.158 + cimg_forX(points,l) { 40.159 + points(l,0)=(points(l,0)-img.dimx()/2)*fact; 40.160 + points(l,1)=(points(l,1)-img.dimy()/2)*fact; 40.161 + points(l,2)=(points(l,2)-img.dimz()/2)*fact; 40.162 + } 40.163 + 40.164 + // Display 3D object on the display window. 40.165 + CImg<unsigned char> visu(disp3d.dimx(),disp3d.dimy(),1,3,0); 40.166 + const CImg<> rot = CImg<>::rotation_matrix(1,0,0,(beta+=0.01f))*CImg<>::rotation_matrix(0,1,1,(alpha+=0.05f)); 40.167 + if (points.size()) { 40.168 + visu.draw_object3d(visu.dimx()/2.0f,visu.dimy()/2.0f,0.0f, 40.169 + rot*points,faces,colors,opacities,3, 40.170 + false,500.0,0.0f,0.0f,-8000.0f).display(disp3d); 40.171 + } else visu.fill(0).display(disp3d); 40.172 + img.display(disp.wait(20)); 40.173 + 40.174 + if ((disp3d.button || disp3d.key) && points.size()) { 40.175 + unsigned char white[3]={ 255,255,255 }; 40.176 + visu.fill(0).draw_text(10,10,"Time stopped, press any key to start again",white). 40.177 + display_object3d(disp3d,points,faces,colors,opacities,true,4,3,false,500,0.4f,0.3f); 40.178 + disp3d.key = 0; 40.179 + } 40.180 + if (disp.is_resized) disp.resize(false); 40.181 + if (disp3d.is_resized) disp3d.resize(false); 40.182 + } 40.183 + 40.184 + // Exit 40.185 + return 0; 40.186 +}
41.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 41.2 +++ b/PTdecode/CImg-1.3.0/examples/odykill.cpp Mon Aug 03 14:09:20 2009 +0100 41.3 @@ -0,0 +1,233 @@ 41.4 +/* 41.5 + # 41.6 + # File : odykill.cpp 41.7 + # ( C++ source file ) 41.8 + # 41.9 + # Description : Simple shoot-em-up game featuring the Robotvis/Odyssee Team ! 41.10 + # This file is a part of the CImg Library project. 41.11 + # ( http://cimg.sourceforge.net ) 41.12 + # 41.13 + # Copyright : David Tschumperle 41.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 41.15 + # 41.16 + # License : CeCILL v2.0 41.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 41.18 + # 41.19 + # This software is governed by the CeCILL license under French law and 41.20 + # abiding by the rules of distribution of free software. You can use, 41.21 + # modify and/ or redistribute the software under the terms of the CeCILL 41.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 41.23 + # "http://www.cecill.info". 41.24 + # 41.25 + # As a counterpart to the access to the source code and rights to copy, 41.26 + # modify and redistribute granted by the license, users are provided only 41.27 + # with a limited warranty and the software's author, the holder of the 41.28 + # economic rights, and the successive licensors have only limited 41.29 + # liability. 41.30 + # 41.31 + # In this respect, the user's attention is drawn to the risks associated 41.32 + # with loading, using, modifying and/or developing or reproducing the 41.33 + # software by the user in light of its specific status of free software, 41.34 + # that may mean that it is complicated to manipulate, and that also 41.35 + # therefore means that it is reserved for developers and experienced 41.36 + # professionals having in-depth computer knowledge. Users are therefore 41.37 + # encouraged to load and test the software's suitability as regards their 41.38 + # requirements in conditions enabling the security of their systems and/or 41.39 + # data to be ensured and, more generally, to use and operate it in the 41.40 + # same conditions as regards security. 41.41 + # 41.42 + # The fact that you are presently reading this means that you have had 41.43 + # knowledge of the CeCILL license and that you accept its terms. 41.44 + # 41.45 +*/ 41.46 + 41.47 +#include "img/odykill.h" 41.48 +#include "CImg.h" 41.49 +using namespace cimg_library; 41.50 + 41.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 41.52 +#ifdef cimg_use_visualcpp6 41.53 +#define std 41.54 +#endif 41.55 +#ifdef min 41.56 +#undef min 41.57 +#undef max 41.58 +#endif 41.59 + 41.60 +int main(int argc,char **argv) { 41.61 + 41.62 + // Create game graphics 41.63 + CImg<unsigned char> graphics[21] = { 41.64 + CImg<unsigned char>(data_tomato,100,100,1,3,false), 41.65 + CImg<unsigned char>(data_heart,100,100,1,3,false), 41.66 + CImg<unsigned char>(data_dynamite,100,100,1,3,false), 41.67 + CImg<unsigned char>(data_brain,100,100,1,3,false), 41.68 + CImg<unsigned char>(data_cdrom,100,100,1,3,false), 41.69 + CImg<unsigned char>(data_enemy,113,150,1,3,false), 41.70 + CImg<unsigned char>(data_enemy2,116,155,1,3,false), 41.71 + CImg<unsigned char>(data_enemy3,104,134,1,3,false), 41.72 + CImg<unsigned char>(data_enemy4,141,151,1,3,false), 41.73 + CImg<unsigned char>(data_enemy5,140,152,1,3,false), 41.74 + CImg<unsigned char>(data_enemy6,131,156,1,3,false), 41.75 + CImg<unsigned char>(data_enemy7,114,125,1,3,false), 41.76 + CImg<unsigned char>(data_enemy8,97,125,1,3,false), 41.77 + CImg<unsigned char>(data_enemy9,143,134,1,3,false), 41.78 + CImg<unsigned char>(data_enemy10,158,214,1,3,false), 41.79 + CImg<unsigned char>(data_enemy11,131,168,1,3,false), 41.80 + CImg<unsigned char>(data_enemy12,114,138,1,3,false), 41.81 + CImg<unsigned char>(data_enemy13,144,144,1,3,false), 41.82 + CImg<unsigned char>(data_enemy14,132,153,1,3,false), 41.83 + CImg<unsigned char>(data_enemy15,152,151,1,3,false), 41.84 + CImg<unsigned char>(data_enemy16,139,185,1,3,false), 41.85 + }; 41.86 + CImg<> masks[21]; 41.87 + const unsigned char black[] = { 0,0,0 }, white[] = { 255,255,255 }; 41.88 + 41.89 + // Display weapon selection menu 41.90 + CImg<unsigned char> back0(640,480,1,3), title(data_title,294,94,1,3,true), choose(data_choose,524,49,1,3,true); 41.91 + back0.fill(0).draw_image(back0.dimx()/2-title.dimx()/2,30,title).draw_image(back0.dimx()/2-choose.dimx()/2,150,choose); 41.92 + CImgDisplay disp(back0,"OdyKill"); 41.93 + int weapon=-1; 41.94 + 41.95 + while (!disp.is_closed && !disp.button) { 41.96 + weapon = -1; 41.97 + for (int k=0; k<5; k++) { 41.98 + const int mx = disp.mouse_x, my = disp.mouse_y; 41.99 + if (!((mx-40)/110==k && my>250 && my<350)) back0.draw_image(40+k*110,250,graphics[k]/2.0); 41.100 + else back0.draw_image(40+k*110,250,graphics[weapon=k]); 41.101 + } 41.102 + CImg<unsigned char> tmp = CImg<unsigned char>().draw_text(0,0, 41.103 + weapon==0?" Tomato ": 41.104 + weapon==1?" Heart ": 41.105 + weapon==2?" Dynamite ": 41.106 + weapon==3?" Brain ": 41.107 + weapon==4?" CD-Rom ": 41.108 + " ",white,black,1,32).resize(-100,-100,1,1), 41.109 + tmp2 = tmp.get_blur(6).normalize(0,255).draw_image(tmp,0.5f); 41.110 + { cimg_forV(back0,k) back0.draw_image(250,390,0,k,tmp2); } 41.111 + 41.112 + disp.resize(disp).display(back0).wait(); 41.113 + if (disp.is_keyCTRLLEFT && disp.key==cimg::keyF) disp.toggle_fullscreen(); 41.114 + if (disp.is_closed || disp.is_keyQ || disp.is_keyESC) std::exit(0); 41.115 + } 41.116 + disp.hide_mouse(); 41.117 + 41.118 + /*--------------------------------- 41.119 + 41.120 + Go ! 41.121 + 41.122 + --------------------------------*/ 41.123 + 41.124 + const CImg<unsigned char> 41.125 + background = CImg<unsigned char>(100,100,1,3,0).noise(100,2).draw_plasma(0,0,99,99). 41.126 + resize(back0.dimx(),back0.dimy(),1,3,5)/2.5; 41.127 + { for (unsigned int k=0; k<21; k++) { 41.128 + CImg<> tmp = graphics[k].resize(k<5?32:164,k<5?32:164,1,3); 41.129 + cimg_forXY(tmp,x,y) tmp(x,y) = (tmp(x,y,0)==255 && tmp(x,y,1)==255 && tmp(x,y,2)==255)?0.0f:1.0f; 41.130 + masks[k]=tmp.get_shared_channel(0); 41.131 + graphics[k].resize(k<5?32:164,k<5?32:164,1,3,5); 41.132 + }} 41.133 + 41.134 + CImg<unsigned char> canvas(background); 41.135 + int n = 5+((int)(200*cimg::rand())%16); 41.136 + CImg<unsigned char> tomato = graphics[weapon], enemy = graphics[n]; 41.137 + CImg<> m_tomato = masks[weapon], m_enemy = masks[n]; 41.138 + 41.139 + double angle=0; 41.140 + int tomato_x=0,tomato_y=0,shooted=0; 41.141 + double enemy_x=-1000, enemy_y=-1000, enemy_z=-1000, tomato_z = 0, vx = 0, vy = 0, vz = 0, va = 0; 41.142 + double speed = cimg_option("-speed",5.0,"Speed"); 41.143 + int timeleft = 2000, score = 0; 41.144 + CImg<unsigned char> r_enemy; 41.145 + 41.146 + // Main loop 41.147 + while(timeleft && !disp.is_closed && !disp.is_keyESC && !disp.is_keyQ) { 41.148 + timeleft--; 41.149 + const int mx = disp.mouse_x*back0.dimx()/disp.dimx(), my = disp.mouse_y*back0.dimy()/disp.dimy(); 41.150 + 41.151 + // Handle object motion 41.152 + if (tomato_z>0) { 41.153 + tomato_z+=0.07; tomato_y -= (int)(20*std::cos(cimg::valuePI/7 + tomato_z*cimg::valuePI)); 41.154 + if (tomato_z>=1) { tomato_z=0; tomato_x = mx; tomato_y = my; } 41.155 + } 41.156 + if (!shooted) { 41.157 + enemy_x +=vx; 41.158 + enemy_y +=vy; 41.159 + enemy_z +=vz; 41.160 + } 41.161 + else { 41.162 + va = 10; 41.163 + enemy_y += vy; 41.164 + vy += 2; 41.165 + tomato_z = 0; 41.166 + if (enemy_y>5*canvas.dimy()/4) { 41.167 + shooted = 0; 41.168 + int n = 5 + ((int)(200*cimg::rand())%16); 41.169 + enemy = graphics[n]; 41.170 + m_enemy = masks[n]; 41.171 + enemy_x=cimg::crand()*1e8; enemy_y=cimg::crand()*1e8; enemy_z=cimg::crand()*1e8; 41.172 + va = angle = 0; 41.173 + } 41.174 + } 41.175 + 41.176 + if (enemy_x<0) { enemy_x=0; vx = speed*cimg::crand(); } 41.177 + if (enemy_x>canvas.dimx()) { enemy_x=canvas.dimx(); vx = speed*cimg::crand(); } 41.178 + if (enemy_y<0) { enemy_y=0; vy = speed*cimg::crand(); } 41.179 + if (!shooted && enemy_y>canvas.dimy()) { enemy_y=canvas.dimy(); vy = speed*cimg::crand(); } 41.180 + if (enemy_z<0.1) { enemy_z = 0.1; vz = speed*0.01*cimg::crand(); } 41.181 + if (enemy_z>0.7) { enemy_z = 0.7; vz = speed*0.01*cimg::crand(); } 41.182 + angle+=va; 41.183 + 41.184 + // Handle mouse interaction 41.185 + if (!disp.button) { 41.186 + if (tomato_z==0) { 41.187 + tomato_x = mx; tomato_y = my; 41.188 + } 41.189 + } else tomato_z +=0.0001; 41.190 + 41.191 + // Detect shooting 41.192 + if (cimg::abs(tomato_z-enemy_z)<0.1) { 41.193 + if (tomato_x>enemy_x-r_enemy.dimx()/2 && tomato_x<enemy_x+r_enemy.dimx()/2 && 41.194 + tomato_y>enemy_y-r_enemy.dimy()/2 && tomato_y<enemy_y+r_enemy.dimy()/2) { 41.195 + score++; 41.196 + shooted = 1; 41.197 + } 41.198 + } 41.199 + 41.200 + // Draw into canvas 41.201 + canvas = background; 41.202 + r_enemy = enemy.get_resize((int)(8+enemy.dimx()*(1-enemy_z)),(int)(8+enemy.dimy()*(1-enemy_z)),-100,-100); 41.203 + CImg<> rm_enemy = m_enemy.get_resize(r_enemy.dimx(),r_enemy.dimy()); 41.204 + CImg<unsigned char> r_tomato = tomato.get_resize((int)(8+tomato.dimx()*(1-tomato_z)),(int)(8+tomato.dimy()*(1-tomato_z)),-100,-100); 41.205 + CImg<> rm_tomato = m_tomato.get_resize(r_tomato.dimx(),r_tomato.dimy()); 41.206 + 41.207 + if (angle!=0) { r_enemy.rotate((float)angle,0,0); rm_enemy.rotate((float)angle,0,0); cimg_forXY(r_enemy,x,y) r_enemy(x,y,0) = (r_enemy(x,y,0)+255)/2; } 41.208 + r_enemy*=(1-(enemy_z-0.1)/1.6); 41.209 + r_tomato*=(1-tomato_z/1.6); 41.210 + rm_enemy*=(1-(enemy_z-0.1)/1.6); 41.211 + 41.212 + if (enemy_z>tomato_z) { 41.213 + canvas.draw_image((int)(enemy_x - r_enemy.dimx()/2), 41.214 + (int)(enemy_y - r_enemy.dimy()/2), 41.215 + r_enemy,rm_enemy); 41.216 + if (tomato_x>=0) canvas.draw_image(tomato_x - r_tomato.dimx()/2, 41.217 + tomato_y - r_tomato.dimy()/2, 41.218 + r_tomato,rm_tomato); 41.219 + } 41.220 + else { 41.221 + if (tomato_x>=0) canvas.draw_image(tomato_x - r_tomato.dimx()/2, 41.222 + tomato_y - r_tomato.dimy()/2, 41.223 + r_tomato,rm_tomato); 41.224 + canvas.draw_image((int)(enemy_x - r_enemy.dimx()/2), 41.225 + (int)(enemy_y - r_enemy.dimy()/2), 41.226 + r_enemy,rm_enemy); 41.227 + } 41.228 + canvas.draw_text(1,1," Time left %d, Score = %d",white,0,0.5f,24,timeleft,score); 41.229 + disp.resize(disp).display(canvas).wait(25); 41.230 + if (disp.is_key(cimg::keyCTRLLEFT,cimg::keyF,true)) disp.toggle_fullscreen(); 41.231 + } 41.232 + 41.233 + std::fprintf(stderr,"\n\n YOUR SCORE : %d\n\n\n",score); 41.234 + 41.235 + return 0; 41.236 +}
42.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 42.2 +++ b/PTdecode/CImg-1.3.0/examples/pde_TschumperleDeriche2d.cpp Mon Aug 03 14:09:20 2009 +0100 42.3 @@ -0,0 +1,235 @@ 42.4 +/* 42.5 + # 42.6 + # File : pde_TschumperleDeriche2D.cpp 42.7 + # ( C++ source file ) 42.8 + # 42.9 + # Description : Implementation of the Tschumperle-Deriche's Regularization 42.10 + # PDE, for 2D multivalued images, as described in the articles below. 42.11 + # This file is a part of the CImg Library project. 42.12 + # ( http://cimg.sourceforge.net ) 42.13 + # 42.14 + # (1) PDE-Based Regularization of Multivalued Images and Applications. 42.15 + # (D. Tschumperle). PhD Thesis. University of Nice-Sophia Antipolis, December 2002. 42.16 + # (2) Diffusion PDE's on Vector-valued Images : Local Approach and Geometric Viewpoint. 42.17 + # (D. Tschumperle and R. Deriche). IEEE Signal Processing Magazine, October 2002. 42.18 + # (3) Vector-Valued Image Regularization with PDE's : A Common Framework for Different Applications. 42.19 + # (D. Tschumperle and R. Deriche). CVPR'2003, Computer Vision and Pattern Recognition, Madison, United States, June 2003. 42.20 + # 42.21 + # This code can be used to perform image restoration, inpainting, magnification or flow visualization. 42.22 + # 42.23 + # NOTE : THIS SOURCE IS DISTRIBUTED FOR EDUCATIONAL PURPOSES ONLY. A BETTER ANISOTROPIC SMOOTHING ALGORITHM CAN BE FOUND 42.24 + # IN THE FILE 'greycstoration.cpp' WHICH IS THE RESULT OF MORE RECENT WORK. 42.25 + # 42.26 + # Copyright : David Tschumperle 42.27 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 42.28 + # 42.29 + # License : CeCILL v2.0 42.30 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 42.31 + # 42.32 + # This software is governed by the CeCILL license under French law and 42.33 + # abiding by the rules of distribution of free software. You can use, 42.34 + # modify and/ or redistribute the software under the terms of the CeCILL 42.35 + # license as circulated by CEA, CNRS and INRIA at the following URL 42.36 + # "http://www.cecill.info". 42.37 + # 42.38 + # As a counterpart to the access to the source code and rights to copy, 42.39 + # modify and redistribute granted by the license, users are provided only 42.40 + # with a limited warranty and the software's author, the holder of the 42.41 + # economic rights, and the successive licensors have only limited 42.42 + # liability. 42.43 + # 42.44 + # In this respect, the user's attention is drawn to the risks associated 42.45 + # with loading, using, modifying and/or developing or reproducing the 42.46 + # software by the user in light of its specific status of free software, 42.47 + # that may mean that it is complicated to manipulate, and that also 42.48 + # therefore means that it is reserved for developers and experienced 42.49 + # professionals having in-depth computer knowledge. Users are therefore 42.50 + # encouraged to load and test the software's suitability as regards their 42.51 + # requirements in conditions enabling the security of their systems and/or 42.52 + # data to be ensured and, more generally, to use and operate it in the 42.53 + # same conditions as regards security. 42.54 + # 42.55 + # The fact that you are presently reading this means that you have had 42.56 + # knowledge of the CeCILL license and that you accept its terms. 42.57 + # 42.58 +*/ 42.59 + 42.60 +#include "CImg.h" 42.61 +using namespace cimg_library; 42.62 + 42.63 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 42.64 +#ifdef cimg_use_visualcpp6 42.65 +#define std 42.66 +#endif 42.67 +#ifdef min 42.68 +#undef min 42.69 +#undef max 42.70 +#endif 42.71 + 42.72 +#ifndef cimg_imagepath 42.73 +#define cimg_imagepath "img/" 42.74 +#endif 42.75 + 42.76 +int main(int argc,char **argv) { 42.77 + 42.78 + // Read command line arguments 42.79 + //----------------------------- 42.80 + cimg_usage("Tschumperle-Deriche's flow for 2D Image Restoration, Inpainting, Magnification or Flow visualization"); 42.81 + const char *file_i = cimg_option("-i",cimg_imagepath "milla.bmp","Input image"); 42.82 + const char *file_m = cimg_option("-m",(char*)NULL,"Mask image (if Inpainting)"); 42.83 + const char *file_f = cimg_option("-f",(char*)NULL,"Flow image (if Flow visualization)"); 42.84 + const char *file_o = cimg_option("-o",(char*)NULL,"Output file"); 42.85 + const double zoom = cimg_option("-zoom",1.0,"Image magnification"); 42.86 + 42.87 + const unsigned int nb_iter = cimg_option("-iter",100000,"Number of iterations"); 42.88 + const double dt = cimg_option("-dt",20.0,"Adapting time step"); 42.89 + const double alpha = cimg_option("-alpha",0.0,"Gradient smoothing"); 42.90 + const double sigma = cimg_option("-sigma",0.5,"Structure tensor smoothing"); 42.91 + const float a1 = cimg_option("-a1",0.5f,"Diffusion limiter along minimal variations"); 42.92 + const float a2 = cimg_option("-a2",0.9f,"Diffusion limiter along maximal variations"); 42.93 + const double noiseg = cimg_option("-ng",0.0,"Add gauss noise before aplying the algorithm"); 42.94 + const double noiseu = cimg_option("-nu",0.0,"Add uniform noise before applying the algorithm"); 42.95 + const double noises = cimg_option("-ns",0.0,"Add salt&pepper noise before applying the algorithm"); 42.96 + const bool stflag = cimg_option("-stats",false,"Display image statistics at each iteration"); 42.97 + const unsigned int save = cimg_option("-save",0,"Iteration saving step"); 42.98 + const unsigned int visu = cimg_option("-visu",10,"Visualization step (0=no visualization)"); 42.99 + const unsigned int init = cimg_option("-init",3,"Inpainting initialization (0=black, 1=white, 2=noise, 3=unchanged)"); 42.100 + const unsigned int skip = cimg_option("-skip",1,"Step of image geometry computation"); 42.101 + bool view_t = cimg_option("-d",false,"View tensor directions (useful for debug)"); 42.102 + double xdt = 0; 42.103 + 42.104 + // Variable initialization 42.105 + //------------------------- 42.106 + CImg<> img, flow; 42.107 + CImg<int> mask; 42.108 + 42.109 + if (file_i) { 42.110 + img = CImg<>(file_i).resize(-100,-100,1,-100); 42.111 + if (file_m) mask = CImg<unsigned char>(file_m).resize(img.dimx(),img.dimy(),1,1); 42.112 + else if (zoom>1) { 42.113 + mask = CImg<int>(img.dimx(),img.dimy(),1,1,-1).resize((int)(img.dimx()*zoom),(int)(img.dimy()*zoom),1,1,4)+1; 42.114 + img.resize((int)(img.dimx()*zoom),(int)(img.dimy()*zoom),1,-100,3); 42.115 + } 42.116 + } else { 42.117 + if (file_f) { 42.118 + flow = CImg<>(file_f); 42.119 + img = CImg<>((int)(flow.dimx()*zoom),(int)(flow.dimy()*zoom),1,1,0).noise(100,2); 42.120 + flow.resize(img.dimx(),img.dimy(),1,2,3); 42.121 + } else throw CImgException("You need to specify at least one input image (option -i), or one flow image (option -f)"); 42.122 + } 42.123 + img.noise(noiseg,0).noise(noiseu,1).noise(noises,2); 42.124 + float initial_min, initial_max = img.maxmin(initial_min); 42.125 + if (mask.data && init!=3) 42.126 + cimg_forXYV(img,x,y,k) if (mask(x,y)) 42.127 + img(x,y,k)=(float)((init? 42.128 + (init==1?initial_max:((initial_max-initial_min)*cimg::rand())): 42.129 + initial_min)); 42.130 + 42.131 + CImgDisplay disp; 42.132 + if (visu) disp.assign(img,"Iterated Image"); 42.133 + CImg<> G(img.dimx(),img.dimy(),1,3,0), T(G), veloc(img), val(2), vec(2,2); 42.134 + 42.135 + // PDE main iteration loop 42.136 + //------------------------- 42.137 + for (unsigned int iter=0; iter<nb_iter && (!disp || (!disp.is_closed && !disp.is_keyQ && !disp.is_keyESC)); iter++) { 42.138 + std::printf("\riter %u , xdt = %g ",iter,xdt); std::fflush(stdout); 42.139 + if (stflag) img.print(); 42.140 + if (disp && disp.key==cimg::keySPACE) { view_t = !view_t; disp.key=0; } 42.141 + 42.142 + if (!(iter%skip)) { 42.143 + // Compute the tensor field T, used to drive the diffusion 42.144 + //--------------------------------------------------------- 42.145 + 42.146 + // When using PDE for flow visualization 42.147 + if (flow.data) cimg_forXY(flow,x,y) { 42.148 + const float 42.149 + u = flow(x,y,0,0), 42.150 + v = flow(x,y,0,1), 42.151 + n = (float)std::sqrt((double)(u*u+v*v)), 42.152 + nn = (n!=0)?n:1; 42.153 + T(x,y,0) = u*u/nn; 42.154 + T(x,y,1) = u*v/nn; 42.155 + T(x,y,2) = v*v/nn; 42.156 + } else { 42.157 + 42.158 + // Compute structure tensor field G 42.159 + CImgList<> grad = img.get_gradient(); 42.160 + if (alpha!=0) cimglist_for(grad,l) grad[l].blur((float)alpha); 42.161 + G.fill(0); 42.162 + cimg_forXYV(img,x,y,k) { 42.163 + const float ix = grad[0](x,y,k), iy = grad[1](x,y,k); 42.164 + G(x,y,0) += ix*ix; 42.165 + G(x,y,1) += ix*iy; 42.166 + G(x,y,2) += iy*iy; 42.167 + } 42.168 + if (sigma!=0) G.blur((float)sigma); 42.169 + 42.170 + // When using PDE for image restoration, inpainting or zooming 42.171 + T.fill(0); 42.172 + if (!mask.data) cimg_forXY(G,x,y) { 42.173 + G.get_tensor_at(x,y).symmetric_eigen(val,vec); 42.174 + const float 42.175 + l1 = (float)std::pow(1.0f+val[0]+val[1],-a1), 42.176 + l2 = (float)std::pow(1.0f+val[0]+val[1],-a2), 42.177 + ux = vec(1,0), 42.178 + uy = vec(1,1); 42.179 + T(x,y,0) = l1*ux*ux + l2*uy*uy; 42.180 + T(x,y,1) = l1*ux*uy - l2*ux*uy; 42.181 + T(x,y,2) = l1*uy*uy + l2*ux*ux; 42.182 + } 42.183 + else cimg_forXY(G,x,y) if (mask(x,y)) { 42.184 + G.get_tensor_at(x,y).symmetric_eigen(val,vec); 42.185 + const float 42.186 + ux = vec(1,0), 42.187 + uy = vec(1,1); 42.188 + T(x,y,0) = ux*ux; 42.189 + T(x,y,1) = ux*uy; 42.190 + T(x,y,2) = uy*uy; 42.191 + } 42.192 + } 42.193 + } 42.194 + 42.195 + // Compute the PDE velocity and update the iterated image 42.196 + //-------------------------------------------------------- 42.197 + CImg_3x3(I,float); 42.198 + veloc.fill(0); 42.199 + cimg_forV(img,k) cimg_for3x3(img,x,y,0,k,I) { 42.200 + const float 42.201 + a = T(x,y,0), 42.202 + b = T(x,y,1), 42.203 + c = T(x,y,2), 42.204 + ixx = Inc+Ipc-2*Icc, 42.205 + iyy = Icn+Icp-2*Icc, 42.206 + ixy = 0.25f*(Ipp+Inn-Ipn-Inp); 42.207 + veloc(x,y,k) = a*ixx + 2*b*ixy + c*iyy; 42.208 + } 42.209 + if (dt>0) { 42.210 + float m, M = veloc.maxmin(m); 42.211 + xdt = dt/cimg::max(cimg::abs(m),cimg::abs(M)); 42.212 + } else xdt=-dt; 42.213 + img+=veloc*xdt; 42.214 + img.cut((float)initial_min,(float)initial_max); 42.215 + 42.216 + // Display and save iterations 42.217 + if (disp && !(iter%visu)) { 42.218 + if (!view_t) img.display(disp); 42.219 + else { 42.220 + const unsigned char white[3] = {255,255,255}; 42.221 + CImg<unsigned char> visu = img.get_resize(disp.dimx(),disp.dimy()).normalize(0,255); 42.222 + CImg<> isophotes(img.dimx(),img.dimy(),1,2,0); 42.223 + cimg_forXY(img,x,y) if (!mask.data || mask(x,y)) { 42.224 + T.get_tensor_at(x,y).symmetric_eigen(val,vec); 42.225 + isophotes(x,y,0) = vec(0,0); 42.226 + isophotes(x,y,1) = vec(0,1); 42.227 + } 42.228 + visu.draw_quiver(isophotes,white,0.5f,10,9,0).display(disp); 42.229 + } 42.230 + } 42.231 + if (save && file_o && !(iter%save)) img.save(file_o,iter); 42.232 + if (disp) disp.resize().display(img); 42.233 + } 42.234 + 42.235 + // Save result and exit. 42.236 + if (file_o) img.save(file_o); 42.237 + return 0; 42.238 +}
43.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 43.2 +++ b/PTdecode/CImg-1.3.0/examples/pde_heatflow2d.cpp Mon Aug 03 14:09:20 2009 +0100 43.3 @@ -0,0 +1,113 @@ 43.4 +/* 43.5 + # 43.6 + # File : pde_heatflow2D.cpp 43.7 + # ( C++ source file ) 43.8 + # 43.9 + # Description : A simple Heat flow on 2D images. 43.10 + # This file is a part of the CImg Library project. 43.11 + # ( http://cimg.sourceforge.net ) 43.12 + # 43.13 + # Copyright : David Tschumperle 43.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 43.15 + # 43.16 + # License : CeCILL v2.0 43.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 43.18 + # 43.19 + # This software is governed by the CeCILL license under French law and 43.20 + # abiding by the rules of distribution of free software. You can use, 43.21 + # modify and/ or redistribute the software under the terms of the CeCILL 43.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 43.23 + # "http://www.cecill.info". 43.24 + # 43.25 + # As a counterpart to the access to the source code and rights to copy, 43.26 + # modify and redistribute granted by the license, users are provided only 43.27 + # with a limited warranty and the software's author, the holder of the 43.28 + # economic rights, and the successive licensors have only limited 43.29 + # liability. 43.30 + # 43.31 + # In this respect, the user's attention is drawn to the risks associated 43.32 + # with loading, using, modifying and/or developing or reproducing the 43.33 + # software by the user in light of its specific status of free software, 43.34 + # that may mean that it is complicated to manipulate, and that also 43.35 + # therefore means that it is reserved for developers and experienced 43.36 + # professionals having in-depth computer knowledge. Users are therefore 43.37 + # encouraged to load and test the software's suitability as regards their 43.38 + # requirements in conditions enabling the security of their systems and/or 43.39 + # data to be ensured and, more generally, to use and operate it in the 43.40 + # same conditions as regards security. 43.41 + # 43.42 + # The fact that you are presently reading this means that you have had 43.43 + # knowledge of the CeCILL license and that you accept its terms. 43.44 + # 43.45 +*/ 43.46 + 43.47 +// Include library header file 43.48 +#include "CImg.h" 43.49 + 43.50 +// Make a simpler namespace alias if one wants to avoid 'using namespace cimg_library' 43.51 +namespace cil = cimg_library; 43.52 + 43.53 +#ifndef cimg_imagepath 43.54 +#define cimg_imagepath "img/" 43.55 +#endif 43.56 + 43.57 +//--------------------- 43.58 +// Begin main procedure 43.59 +//--------------------- 43.60 +int main(int argc,char **argv) { 43.61 + 43.62 + // Read command line arguments, and init images and displays 43.63 + //----------------------------------------------------------- 43.64 + cimg_usage("Perform a simple Heat Flow on 2D images"); 43.65 + cil::CImg<> img(cimg_option("-i",cimg_imagepath "milla.bmp","Input image")), veloc(img); 43.66 + const double dt = cimg_option("-dt",3.0,"Adapting time step"); 43.67 + img. 43.68 + noise(cimg_option("-ng",0.0,"Add gaussian noise"),0). 43.69 + noise(cimg_option("-nu",0.0,"Add uniform noise"),1). 43.70 + noise(cimg_option("-ns",0.0,"Add Salt&Pepper noise"),2); 43.71 + cil::CImgDisplay profile(400,300,"Intensity Profile",0,false,true), disp(img,"Heat flow 2D",0,false,true); 43.72 + disp.move((cil::CImgDisplay::screen_dimx()-disp.dimx()-profile.dimx())/2, 43.73 + (cil::CImgDisplay::screen_dimy()-disp.dimy())/2); 43.74 + 43.75 + profile.move(disp.window_x + 8 + disp.window_width, disp.window_y); 43.76 + CImg_3x3(I,float); 43.77 + float white[] = { 255,255,255 }; 43.78 + bool run_PDE = true; 43.79 + 43.80 + // Begin PDE iteration loop 43.81 + //------------------------- 43.82 + for (int iter=0; !disp.is_closed && !profile.is_closed && !disp.is_keyQ && !disp.is_keyESC && !profile.is_keyQ && !profile.is_keyESC;) { 43.83 + 43.84 + // Compute one iteration of PDE explicit scheme 43.85 + if (run_PDE) { 43.86 + cimg_forV(img,k) cimg_for3x3(img,x,y,0,k,I) veloc(x,y,k) = Inc + Ipc + Icn + Icp - 4*Icc; 43.87 + float m, M = veloc.maxmin(m); 43.88 + const double xdt = dt/(M-m); 43.89 + img += veloc*xdt; 43.90 + cil::CImg<>(img).draw_text(2,2,"iter = %d",white,0,1,13,iter).display(disp.wait(25)); 43.91 + } 43.92 + 43.93 + // Plot (R,G,B) intensity profiles and display it 43.94 + if (disp.mouse_x>=0) { 43.95 + const int 43.96 + mx = disp.mouse_x, my = disp.mouse_y, 43.97 + mnx = mx*profile.dimx()/disp.dimx(); 43.98 + const unsigned char red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 }, white[] = { 255,255,255 }; 43.99 + cil::CImg<unsigned char>(profile.dimx(),profile.dimy(),1,3,0). 43.100 + draw_graph(img.get_shared_line(my,0,0),red,1,1,0,255,0). 43.101 + draw_graph(img.get_shared_line(my,0,1),green,1,1,0,255,0). 43.102 + draw_graph(img.get_shared_line(my,0,2),blue,1,1,0,255,0). 43.103 + draw_line(mnx,0,mnx,profile.dimy()-1,white,0.5f,cil::cimg::rol(0xFF00FF00,iter%32)). 43.104 + draw_text(2,2,"(x,y)=(%d,%d)",white,0,1,13,mx,my). 43.105 + display(profile); 43.106 + } 43.107 + 43.108 + // Mouse button stops/starts PDE evolution. 43.109 + if (disp.button || profile.button) { disp.button = profile.button = 0; run_PDE = !run_PDE; } 43.110 + profile.resize(); 43.111 + disp.resize(disp); 43.112 + if (run_PDE) ++iter; 43.113 + } 43.114 + 43.115 + return 0; 43.116 +}
44.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 44.2 +++ b/PTdecode/CImg-1.3.0/examples/radon_transform.cpp Mon Aug 03 14:09:20 2009 +0100 44.3 @@ -0,0 +1,402 @@ 44.4 +/* 44.5 + # 44.6 + # File : radon_transform.cpp 44.7 + # ( C++ source file ) 44.8 + # 44.9 + # Description : An implementation of the Radon Transform. 44.10 + # This file is a part of the CImg Library project. 44.11 + # ( http://cimg.sourceforge.net ) 44.12 + # 44.13 + # Copyright : David G. Starkweather 44.14 + # ( starkdg@sourceforge.net - starkweatherd@cox.net ) 44.15 + # 44.16 + # License : CeCILL v2.0 44.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 44.18 + # 44.19 + # This software is governed by the CeCILL license under French law and 44.20 + # abiding by the rules of distribution of free software. You can use, 44.21 + # modify and/ or redistribute the software under the terms of the CeCILL 44.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 44.23 + # "http://www.cecill.info". 44.24 + # 44.25 + # As a counterpart to the access to the source code and rights to copy, 44.26 + # modify and redistribute granted by the license, users are provided only 44.27 + # with a limited warranty and the software's author, the holder of the 44.28 + # economic rights, and the successive licensors have only limited 44.29 + # liability. 44.30 + # 44.31 + # In this respect, the user's attention is drawn to the risks associated 44.32 + # with loading, using, modifying and/or developing or reproducing the 44.33 + # software by the user in light of its specific status of free software, 44.34 + # that may mean that it is complicated to manipulate, and that also 44.35 + # therefore means that it is reserved for developers and experienced 44.36 + # professionals having in-depth computer knowledge. Users are therefore 44.37 + # encouraged to load and test the software's suitability as regards their 44.38 + # requirements in conditions enabling the security of their systems and/or 44.39 + # data to be ensured and, more generally, to use and operate it in the 44.40 + # same conditions as regards security. 44.41 + # 44.42 + # The fact that you are presently reading this means that you have had 44.43 + # knowledge of the CeCILL license and that you accept its terms. 44.44 + # 44.45 +*/ 44.46 + 44.47 +#define ROUNDING_FACTOR(x) (((x) >= 0) ? 0.5 : -0.5) 44.48 +#include <cmath> 44.49 +#include "CImg.h" 44.50 +using namespace cimg_library; 44.51 + 44.52 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 44.53 +#ifdef cimg_use_visualcpp6 44.54 +#define std 44.55 +#endif 44.56 +#ifdef min 44.57 +#undef min 44.58 +#undef max 44.59 +#endif 44.60 + 44.61 +#ifndef cimg_imagepath 44.62 +#define cimg_imagepath "img/" 44.63 +#endif 44.64 + 44.65 +CImg<double> GaussianKernel(double rho); 44.66 +CImg<float> ApplyGaussian(CImg<unsigned char> im,double rho); 44.67 +CImg<unsigned char> RGBtoGrayScale(CImg<unsigned char> &im); 44.68 +int GetAngle(int dy,int dx); 44.69 +CImg<unsigned char> CannyEdges(CImg<float> im, double T1, double T2,bool doHysteresis); 44.70 +CImg<> RadonTransform(CImg<unsigned char> im,int N); 44.71 + 44.72 +int main(int argc,char **argv) { 44.73 + cimg_usage("Illustration of the Radon Transform"); 44.74 + 44.75 + const char *file = cimg_option("-f",cimg_imagepath "parrot_original.ppm","path and file name"); 44.76 + const double sigma = cimg_option("-r",1.0,"blur coefficient for gaussian low pass filter (lpf)"), 44.77 + thresh1 = cimg_option("-t1",0.50,"lower threshold for canny edge detector"), 44.78 + thresh2 = cimg_option("-t2",1.25,"upper threshold for canny edge detector");; 44.79 + const int N = cimg_option("-n",64,"number of angles to consider in the Radon transform - should be a power of 2"); 44.80 + 44.81 + //color to draw lines 44.82 + const unsigned char green[] = {0,255,0}; 44.83 + CImg<unsigned char> src(file); 44.84 + 44.85 + int rhomax = (int)std::sqrt((double)(src.dimx()*src.dimx() + src.dimy()*src.dimy()))/2; 44.86 + 44.87 + if (cimg::dialog(cimg::basename(argv[0]), 44.88 + "Instructions:\n" 44.89 + "Click on space bar or Enter key to display Radon transform of given image\n" 44.90 + "Click on anywhere in the transform window to display a \n" 44.91 + "corresponding green line in the original image\n", 44.92 + "Start", "Quit",0,0,0,0, 44.93 + src.get_resize(100,100,1,3),true)) std::exit(0); 44.94 + 44.95 + //retrieve a grayscale from the image 44.96 + CImg<unsigned char> grayScaleIm; 44.97 + if ((src.dimv() == 3) && (src.dimx() > 0) && (src.dimy() > 0) && (src.dimz() == 1)) 44.98 + grayScaleIm = (CImg<unsigned char>)src.get_pointwise_norm(0).quantize(255,false); 44.99 + else if ((src.dimv() == 1)&&(src.dimx() > 0) && (src.dimy() > 0) && (src.dimz() == 1)) 44.100 + grayScaleIm = src; 44.101 + else { // image in wrong format 44.102 + if (cimg::dialog(cimg::basename("wrong file format"), 44.103 + "Incorrect file format\n","OK",0,0,0,0,0, 44.104 + src.get_resize(100,100,1,3),true)) std::exit(0); 44.105 + } 44.106 + 44.107 + //blur the image with a Gaussian lpf to remove spurious edges (e.g. noise) 44.108 + CImg<float> blurredIm = ApplyGaussian(grayScaleIm,sigma); 44.109 + 44.110 + //use canny edge detection algorithm to get edge map of the image 44.111 + //- the threshold values are used to perform hysteresis in the edge detection process 44.112 + CImg<unsigned char> cannyEdgeMap = CannyEdges(blurredIm,thresh1,thresh2,false); 44.113 + CImg<unsigned char> radonImage = *(new CImg<unsigned char>(500,400,1,1,0)); 44.114 + 44.115 + //display the two windows 44.116 + CImgDisplay dispImage(src,"original image"); 44.117 + dispImage.move(CImgDisplay::screen_dimx()/8,CImgDisplay::screen_dimy()/8); 44.118 + CImgDisplay dispRadon(radonImage,"Radon Transform"); 44.119 + dispRadon.move(CImgDisplay::screen_dimx()/4,CImgDisplay::screen_dimy()/4); 44.120 + CImgDisplay dispCanny(cannyEdgeMap,"canny edges"); 44.121 + //start main display loop 44.122 + while (!dispImage.is_closed && !dispRadon.is_closed && 44.123 + !dispImage.is_keyQ && !dispRadon.is_keyQ && 44.124 + !dispImage.is_keyESC && !dispRadon.is_keyESC){ 44.125 + 44.126 + CImgDisplay::wait(dispImage,dispRadon); 44.127 + 44.128 + if (dispImage.is_keySPACE || dispRadon.is_keySPACE) 44.129 + { 44.130 + radonImage = (CImg<unsigned char>)RadonTransform(cannyEdgeMap,N).quantize(255,false).resize(500,400); 44.131 + radonImage.display(dispRadon); 44.132 + } 44.133 + 44.134 + //when clicking on dispRadon window, draw line in original image window 44.135 + if (dispRadon.button) 44.136 + { 44.137 + const double rho = dispRadon.mouse_y*rhomax/dispRadon.dimy(), 44.138 + theta = (dispRadon.mouse_x*N/dispRadon.dimx())*2*cimg::valuePI/N, 44.139 + x = src.dimx()/2 + rho*std::cos(theta), 44.140 + y = src.dimy()/2 + rho*std::sin(theta); 44.141 + const int x0 = (int)(x + 1000*std::cos(theta + cimg::valuePI/2)), 44.142 + y0 = (int)(y + 1000*std::sin(theta + cimg::valuePI/2)), 44.143 + x1 = (int)(x - 1000*std::cos(theta + cimg::valuePI/2)), 44.144 + y1 = (int)(y - 1000*std::sin(theta + cimg::valuePI/2)); 44.145 + src.draw_line(x0,y0,x1,y1,green,1.0f,0xF0F0F0F0).display(dispImage); 44.146 + } 44.147 + } 44.148 + return 0; 44.149 +} 44.150 +/** 44.151 + * PURPOSE: create a 5x5 gaussian kernel matrix 44.152 + * PARAM rho - gaussiam equation parameter (default = 1.0) 44.153 + * RETURN CImg<double> the gaussian kernel 44.154 + **/ 44.155 + 44.156 +CImg<double> GaussianKernel(double sigma = 1.0) 44.157 +{ 44.158 + CImg<double> resultIm(5,5,1,1,0); 44.159 + int midX = 3, midY = 3; 44.160 + cimg_forXY(resultIm,X,Y) 44.161 + { 44.162 + resultIm(X,Y) = std::ceil(256.0*(std::exp(-(midX*midX + midY*midY)/(2*sigma*sigma)))/(2*cimg::valuePI*sigma*sigma)); 44.163 + } 44.164 + return resultIm; 44.165 +} 44.166 +/* 44.167 + * PURPOSE: convolve a given image with the gaussian kernel 44.168 + * PARAM CImg<unsigned char> im - image to be convolved upon 44.169 + * PARAM double sigma - gaussian equation parameter 44.170 + * RETURN CImg<float> image resulting from the convolution 44.171 + * */ 44.172 +CImg<float> ApplyGaussian(CImg<unsigned char> im,double sigma) 44.173 +{ 44.174 + CImg<float> smoothIm(im.dimx(),im.dimy(),1,1,0); 44.175 + 44.176 + //make gaussian kernel 44.177 + CImg<float> gk = GaussianKernel(sigma); 44.178 + //apply gaussian 44.179 + 44.180 + CImg_5x5(I,int); 44.181 + cimg_for5x5(im,X,Y,0,0,I) 44.182 + { 44.183 + float sum = 0; 44.184 + sum += gk(0,0)*Ibb + gk(0,1)*Ibp + gk(0,2)*Ibc + gk(0,3)*Ibn + gk(0,4)*Iba; 44.185 + sum += gk(1,0)*Ipb + gk(1,1)*Ipp + gk(1,2)*Ipc + gk(1,3)*Ipn + gk(1,4)*Ipa; 44.186 + sum += gk(2,0)*Icb + gk(2,1)*Icp + gk(2,2)*Icc + gk(2,3)*Icn + gk(2,4)*Ica; 44.187 + sum += gk(3,0)*Inb + gk(3,1)*Inp + gk(3,2)*Inc + gk(3,3)*Inn + gk(3,4)*Ina; 44.188 + sum += gk(4,0)*Iab + gk(4,1)*Iap + gk(4,2)*Iac + gk(4,3)*Ian + gk(4,4)*Iaa; 44.189 + smoothIm(X,Y)= sum/256; 44.190 + } 44.191 + 44.192 + return smoothIm; 44.193 +} 44.194 +/** 44.195 + * PURPOSE: convert a given rgb image to a MxNX1 single vector grayscale image 44.196 + * PARAM: CImg<unsigned char> im - rgb image to convert 44.197 + * RETURN: CImg<unsigned char> grayscale image with MxNx1x1 dimensions 44.198 + **/ 44.199 + 44.200 +CImg<unsigned char> RGBtoGrayScale(CImg<unsigned char> &im) 44.201 +{ 44.202 + CImg<unsigned char> grayImage(im.dimx(),im.dimy(),im.dimz(),1,0); 44.203 + if (im.dimv() == 3) 44.204 + { cimg_forXYZ(im,X,Y,Z) 44.205 + { 44.206 + grayImage(X,Y,Z,0) = (unsigned char)(0.299*im(X,Y,Z,0) + 0.587*im(X,Y,Z,1) + 0.114*im(X,Y,Z,2)); 44.207 + } 44.208 + } 44.209 + grayImage.quantize(255,false); 44.210 + return grayImage; 44.211 +} 44.212 +/** 44.213 + * PURPOSE: aux. function used by CannyEdges to quantize an angle theta given by gradients, dx and dy 44.214 + * into 0 - 7 44.215 + * PARAM: dx,dy - gradient magnitudes 44.216 + * RETURN int value between 0 and 7 44.217 + **/ 44.218 +int GetAngle(int dy,int dx) 44.219 +{ 44.220 + double angle = cimg::abs(std::atan2((double)dy,(double)dx)); 44.221 + if ((angle >= -cimg::valuePI/8)&&(angle <= cimg::valuePI/8))//-pi/8 to pi/8 => 0 44.222 + return 0; 44.223 + else if ((angle >= cimg::valuePI/8)&&(angle <= 3*cimg::valuePI/8))//pi/8 to 3pi/8 => pi/4 44.224 + return 1; 44.225 + else if ((angle > 3*cimg::valuePI/8)&&(angle <= 5*cimg::valuePI/8))//3pi/8 to 5pi/8 => pi/2 44.226 + return 2; 44.227 + else if ((angle > 5*cimg::valuePI/8)&&(angle <= 7*cimg::valuePI/8))//5pi/8 to 7pi/8 => 3pi/4 44.228 + return 3; 44.229 + else if (((angle > 7*cimg::valuePI/8) && (angle <= cimg::valuePI)) || ((angle <= -7*cimg::valuePI/8)&&(angle >= -cimg::valuePI))) //-7pi/8 to -pi OR 7pi/8 to pi => pi 44.230 + return 4; 44.231 + else return 0; 44.232 +} 44.233 +/** 44.234 + * PURPOSE: create an edge map of the given image with hysteresis using thresholds T1 and T2 44.235 + * PARAMS: CImg<float> im the image to perform edge detection on 44.236 + * T1 lower threshold 44.237 + * T2 upper threshold 44.238 + * RETURN CImg<unsigned char> edge map 44.239 + **/ 44.240 +CImg<unsigned char> CannyEdges(CImg<float> im, double T1, double T2, bool doHysteresis=false) 44.241 +{ 44.242 + CImg<unsigned char> edges(im); 44.243 + CImg<float> secDerivs(im); 44.244 + secDerivs.fill(0); 44.245 + edges.fill(0); 44.246 + CImgList<float> gradients = im.get_gradient("xy",1); 44.247 + int image_width = im.dimx(); 44.248 + int image_height = im.dimy(); 44.249 + 44.250 + { cimg_forXY(im,X,Y) 44.251 + { 44.252 + double Gr = std::sqrt(std::pow((double)gradients[0](X,Y),2.0) + std::pow((double)gradients[1](X,Y),2.0)); 44.253 + double theta = GetAngle(Y,X); 44.254 + //if Gradient magnitude is positive and X,Y within the image 44.255 + //take the 2nd deriv in the appropriate direction 44.256 + if ((Gr > 0)&&(X < image_width-1)&&(Y < image_height - 1)) 44.257 + { 44.258 + if (theta == 0) 44.259 + secDerivs(X,Y) = im(X+2,Y) - 2*im(X+1,Y) + im(X,Y); 44.260 + else if (theta == 1) 44.261 + secDerivs(X,Y) = im(X+2,Y+2) - 2*im(X+1,Y+1) + im(X,Y); 44.262 + else if (theta == 2) 44.263 + secDerivs(X,Y) = im(X,Y+2) - 2*im(X,Y+1) + im(X,Y); 44.264 + else if (theta == 3) 44.265 + secDerivs(X,Y) = im(X+2,Y+2) - 2*im(X+1,Y+1) + im(X,Y); 44.266 + else if (theta == 4) 44.267 + secDerivs(X,Y) = im(X+2,Y) - 2*im(X+1,Y) + im(X,Y); 44.268 + } 44.269 + }} 44.270 + //for each 2nd deriv that crosses a zero point and magnitude passes the upper threshold. 44.271 + //Perform hysteresis in the direction of the gradient, rechecking the gradient 44.272 + //angle for each pixel that meets the threshold requirement. Stop checking when 44.273 + //the lower threshold is not reached. 44.274 + CImg_5x5(I,float); 44.275 + cimg_for5x5(secDerivs,X,Y,0,0,I) 44.276 + { 44.277 + if ( (Ipp*Ibb < 0)|| 44.278 + (Ipc*Ibc < 0)|| 44.279 + (Icp*Icb < 0) ) 44.280 + { 44.281 + double Gr = std::sqrt(std::pow((double)gradients[0](X,Y),2.0) + std::pow((double)gradients[1](X,Y),2.0)); 44.282 + int dir = GetAngle(Y,X); 44.283 + int Xt=X, Yt=Y, delta_x = 0, delta_y=0; 44.284 + double GRt = Gr; 44.285 + if (Gr >= T2) 44.286 + edges(X,Y) = 255; 44.287 + //work along the gradient in one direction 44.288 + if (doHysteresis) 44.289 + { 44.290 + while ((Xt > 0) && (Xt < image_width-1) && (Yt > 0) && (Yt < image_height-1)) 44.291 + { 44.292 + switch (dir){ 44.293 + case 0:delta_x=0;delta_y=1;break; 44.294 + case 1:delta_x=1;delta_y=1;break; 44.295 + case 2:delta_x=1;delta_y=0;break; 44.296 + case 3:delta_x=1;delta_y=-1;break; 44.297 + case 4:delta_x=0;delta_y=1;break; 44.298 + } 44.299 + Xt += delta_x; 44.300 + Yt += delta_y; 44.301 + GRt = std::sqrt(std::pow((double)gradients[0](Xt,Yt),2.0) + std::pow((double)gradients[1](Xt,Yt),2.0)); 44.302 + dir = GetAngle(Yt,Xt); 44.303 + if (GRt >= T1) 44.304 + edges(Xt,Yt) = 255; 44.305 + } 44.306 + //work along gradient in other direction 44.307 + Xt = X; Yt = Y; 44.308 + while ((Xt > 0) && (Xt < image_width-1) && (Yt > 0) && (Yt < image_height-1)) 44.309 + { 44.310 + switch (dir){ 44.311 + case 0:delta_x=0;delta_y=1;break; 44.312 + case 1:delta_x=1;delta_y=1;break; 44.313 + case 2:delta_x=1;delta_y=0;break; 44.314 + case 3:delta_x=1;delta_y=-1;break; 44.315 + case 4:delta_x=0;delta_y=1;break; 44.316 + } 44.317 + Xt -= delta_x; 44.318 + Yt -= delta_y; 44.319 + GRt = std::sqrt(std::pow((double)gradients[0](Xt,Yt),2.0) + std::pow((double)gradients[1](Xt,Yt),2.0)); 44.320 + dir = GetAngle(Yt,Xt); 44.321 + if (GRt >= T1) 44.322 + edges(Xt,Yt) = 255; 44.323 + } 44.324 + } 44.325 + } 44.326 + } 44.327 + return edges; 44.328 +} 44.329 +/** 44.330 + * PURPOSE: perform radon transform of given image 44.331 + * PARAM: CImg<unsigned char> im - image to detect lines 44.332 + * int N - number of angles to consider (should be a power of 2) 44.333 + * (the values of N will be spread over 0 to 2PI) 44.334 + * RETURN CImg<unsigned char> - transform of given image of size, N x D 44.335 + * D = rhomax = sqrt(dimx*dimx + dimy*dimy)/2 44.336 + **/ 44.337 +CImg<> RadonTransform(CImg<unsigned char> im,int N) 44.338 +{ 44.339 + int image_width = im.dimx(); 44.340 + int image_height = im.dimy(); 44.341 + 44.342 + //calc offsets to center the image 44.343 + float xofftemp = image_width/2.0f - 1; 44.344 + float yofftemp = image_height/2.0f - 1; 44.345 + int xoffset = (int)std::floor(xofftemp + ROUNDING_FACTOR(xofftemp)); 44.346 + int yoffset = (int)std::floor(yofftemp + ROUNDING_FACTOR(yofftemp)); 44.347 + float dtemp = (float)std::sqrt((double)(xoffset*xoffset + yoffset*yoffset)); 44.348 + int D = (int)std::floor(dtemp + ROUNDING_FACTOR(dtemp)); 44.349 + 44.350 + CImg<> imRadon(N,D,1,1,0); 44.351 + 44.352 + //for each angle k to consider 44.353 + for (int k= 0 ; k < N; k++) 44.354 + { 44.355 + //only consider from PI/8 to 3PI/8 and 5PI/8 to 7PI/8 44.356 + //to avoid computational complexity of a steep angle 44.357 + if (k == 0){k = N/8;continue;} 44.358 + else if (k == (3*N/8 + 1)){ k = 5*N/8;continue;} 44.359 + else if (k == 7*N/8 + 1){k = N; continue;} 44.360 + 44.361 + //for each rho length, determine linear equation and sum the line 44.362 + //sum is to sum the values along the line at angle k2pi/N 44.363 + //sum2 is to sum the values along the line at angle k2pi/N + N/4 44.364 + //The sum2 is performed merely by swapping the x,y axis as if the image were rotated 90 degrees. 44.365 + for (int d=0; d < D; d++){ 44.366 + double theta = 2*k*cimg::valuePI/N;//calculate actual theta 44.367 + double alpha = std::tan(theta+cimg::valuePI/2);//calculate the slope 44.368 + double beta_temp = -alpha*d*std::cos(theta) + d*std::sin(theta);//y-axis intercept for the line 44.369 + int beta = (int)std::floor(beta_temp + ROUNDING_FACTOR(beta_temp)); 44.370 + //for each value of m along x-axis, calculate y 44.371 + //if the x,y location is within the boundary for the respective image orientations, add to the sum 44.372 + unsigned int sum1 = 0, 44.373 + sum2 = 0; 44.374 + int M = (image_width >= image_height) ? image_width : image_height; 44.375 + for (int m=0;m < M; m++) 44.376 + { 44.377 + //interpolate in-between values using nearest-neighbor approximation 44.378 + //using m,n as x,y indices into image 44.379 + double n_temp = alpha*(m-xoffset) + beta; 44.380 + int n = (int)std::floor(n_temp + ROUNDING_FACTOR(n_temp)); 44.381 + if ((m < image_width) && (n + yoffset >= 0) && (n + yoffset < image_height)) 44.382 + { 44.383 + sum1 += im(m, n + yoffset); 44.384 + } 44.385 + n_temp = alpha*(m-yoffset) + beta; 44.386 + n = (int)std::floor(n_temp + ROUNDING_FACTOR(n_temp)); 44.387 + if ((m < image_height)&&(n + xoffset >= 0)&&(n + xoffset < image_width)) 44.388 + { 44.389 + sum2 += im(-(n + xoffset) + image_width - 1, m); 44.390 + } 44.391 + } 44.392 + //assign the sums into the result matrix 44.393 + imRadon(k,d) = (float)sum1; 44.394 + //assign sum2 to angle position for theta+PI/4 44.395 + imRadon(((k + N/4)%N),d) = (float)sum2; 44.396 + } 44.397 + } 44.398 + return imRadon; 44.399 +} 44.400 +/* references: 44.401 + * 1. See Peter Toft's thesis on the Radon transform: http://petertoft.dk/PhD/index.html 44.402 + * While I changed his basic algorithm, the main idea is still the same and provides an excellent explanation. 44.403 + * 44.404 + * */ 44.405 +
45.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 45.2 +++ b/PTdecode/CImg-1.3.0/examples/scene3d.cpp Mon Aug 03 14:09:20 2009 +0100 45.3 @@ -0,0 +1,161 @@ 45.4 +/* 45.5 + # 45.6 + # File : scene3d.cpp 45.7 + # ( C++ source file ) 45.8 + # 45.9 + # Description : A simple program that demonstrates the use of the 45.10 + # 3D functions of CImg, in conjonction with the Board library. 45.11 + # This file is a part of the CImg Library project. 45.12 + # ( http://cimg.sourceforge.net ) 45.13 + # 45.14 + # Copyright : David Tschumperle 45.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 45.16 + # 45.17 + # License : CeCILL v2.0 45.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 45.19 + # 45.20 + # This software is governed by the CeCILL license under French law and 45.21 + # abiding by the rules of distribution of free software. You can use, 45.22 + # modify and/ or redistribute the software under the terms of the CeCILL 45.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 45.24 + # "http://www.cecill.info". 45.25 + # 45.26 + # As a counterpart to the access to the source code and rights to copy, 45.27 + # modify and redistribute granted by the license, users are provided only 45.28 + # with a limited warranty and the software's author, the holder of the 45.29 + # economic rights, and the successive licensors have only limited 45.30 + # liability. 45.31 + # 45.32 + # In this respect, the user's attention is drawn to the risks associated 45.33 + # with loading, using, modifying and/or developing or reproducing the 45.34 + # software by the user in light of its specific status of free software, 45.35 + # that may mean that it is complicated to manipulate, and that also 45.36 + # therefore means that it is reserved for developers and experienced 45.37 + # professionals having in-depth computer knowledge. Users are therefore 45.38 + # encouraged to load and test the software's suitability as regards their 45.39 + # requirements in conditions enabling the security of their systems and/or 45.40 + # data to be ensured and, more generally, to use and operate it in the 45.41 + # same conditions as regards security. 45.42 + # 45.43 + # The fact that you are presently reading this means that you have had 45.44 + # knowledge of the CeCILL license and that you accept its terms. 45.45 + # 45.46 +*/ 45.47 + 45.48 +// Uncomment the line below to use the Board library. 45.49 +// ( You will need to link your code with the board library object ). 45.50 +// ( Get the Board Library at : http://libboard.sourceforge.net/ ) 45.51 +//#define cimg_use_board 45.52 + 45.53 +#include "CImg.h" 45.54 +using namespace cimg_library; 45.55 + 45.56 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 45.57 +#ifdef cimg_use_visualcpp6 45.58 +#define std 45.59 +#endif 45.60 +#ifdef min 45.61 +#undef min 45.62 +#undef max 45.63 +#endif 45.64 + 45.65 +#ifndef cimg_imagepath 45.66 +#define cimg_imagepath "img/" 45.67 +#endif 45.68 + 45.69 +//------------------------- 45.70 +// Begin the main procedure 45.71 +//------------------------- 45.72 +int main() { 45.73 + 45.74 + // Define a simple 3D scene, composed of various basic objects (torus, cone, cube, ...) 45.75 + //------------------------------------------------------------------------------------- 45.76 + std::fprintf(stderr," - Create 3D Scene.\n"); 45.77 + CImg<float> scene_pts, scene_opacs; 45.78 + CImgList<unsigned int> scene_prims; 45.79 + CImgList<unsigned char> scene_cols; 45.80 + 45.81 + CImgList<unsigned int> 45.82 + cube_prims, 45.83 + cone_prims, 45.84 + torus_prims, 45.85 + sphere_prims, 45.86 + plane_prims; 45.87 + 45.88 + // Define objects vertices and faces. 45.89 + const CImg<float> 45.90 + cube_pts = CImg<>::cube3d(cube_prims,60).translate_object3d(-50,50,0), 45.91 + cone_pts = CImg<>::cone3d(cone_prims,30,40).translate_object3d(50,50,0), 45.92 + torus_pts = CImg<>::torus3d(torus_prims,30,10).translate_object3d(-50,-50,0), 45.93 + sphere_pts = CImg<>::sphere3d(sphere_prims,30).translate_object3d(50,-50,0), 45.94 + plane_pts = CImg<>::plane3d(plane_prims,200,200,20,20,true).translate_object3d(0,0,40); 45.95 + 45.96 + // Define objects colors and textures. 45.97 + const CImgList<unsigned char> 45.98 + cone_cols = CImgList<unsigned char>(cone_prims.size,CImg<unsigned char>::vector(128,63,255)), 45.99 + torus_cols = CImgList<unsigned char>(torus_prims.size,CImg<unsigned char>::vector(255,55,163)), 45.100 + sphere_cols = CImgList<unsigned char>(sphere_prims.size,CImg<unsigned char>::vector(115,115,63)), 45.101 + plane_cols = CImgList<unsigned char>(plane_prims.size,CImg<unsigned char>::vector(60,120,180)); 45.102 + 45.103 + const CImg<unsigned char> texture = CImg<unsigned char>(cimg_imagepath "milla.bmp").resize(128,128); 45.104 + CImgList<unsigned char> cube_cols; 45.105 + cimglist_for(cube_prims,p) { 45.106 + cube_cols.insert(texture,~0U,true); 45.107 + cube_prims[p].append(CImg<unsigned int>::vector(0,0,127,0,127,127,0,127),'y'); 45.108 + } 45.109 + 45.110 + // Define objects opacities. 45.111 + const CImg<float> 45.112 + cube_opacs(cube_prims.size,1,1,1,1.0f), 45.113 + cone_opacs(cone_prims.size,1,1,1,0.8f), 45.114 + torus_opacs(torus_prims.size,1,1,1,0.6f), 45.115 + sphere_opacs(sphere_prims.size,1,1,1,0.4f), 45.116 + plane_opacs(plane_prims.size,1,1,1,0.4f); 45.117 + 45.118 + // Append all object in a single scene. 45.119 + scene_pts. 45.120 + append_object3d(scene_prims,cube_pts,cube_prims). 45.121 + append_object3d(scene_prims,cone_pts,cone_prims). 45.122 + append_object3d(scene_prims,torus_pts,torus_prims). 45.123 + append_object3d(scene_prims,sphere_pts,sphere_prims). 45.124 + append_object3d(scene_prims,plane_pts,plane_prims); 45.125 + scene_cols<<cube_cols<<cone_cols<<torus_cols<<sphere_cols<<plane_cols; 45.126 + scene_opacs = (cube_opacs<<cone_opacs<<torus_opacs<<sphere_opacs<<plane_opacs).get_append('x'); 45.127 + 45.128 + // Display object3D in a user-interacted window and get final position matrix. 45.129 + std::fprintf(stderr," - Display 3D Scene.\n"); 45.130 + const CImg<unsigned char> visu = CImg<unsigned char>(3,512,512,1).fill(230,230,255).permute_axes("yzvx"); 45.131 + CImg<float> view_matrix = CImg<>::identity_matrix(4); 45.132 + visu.display_object3d("3D Scene",scene_pts,scene_prims,scene_cols,scene_opacs,true,4,4,false, 45.133 + 500.0f,0.5f,0.1f,true,view_matrix.ptr()); 45.134 + 45.135 + // Save object 3D as OFF file. 45.136 + std::fprintf(stderr," - Save .OFF 3D object file.\n"); 45.137 + scene_pts.save_off("output.off",scene_prims,scene_cols); 45.138 + 45.139 + // Save 3D view in SVG, EPS and FIG files. 45.140 + // (using the Board library : http://www.greyc.ensicaen.fr/~seb/board/ ). 45.141 +#ifdef cimg_use_board 45.142 + 45.143 + // Define a Board instance 45.144 + BoardLib::Board B; 45.145 + 45.146 + // Set Background color of the board. 45.147 + B.clear(230,230,255); 45.148 + 45.149 + // Draw object both in 'visu' and in the board. 45.150 + (view_matrix.crop(0,0,2,2))*=20; 45.151 + (+visu).draw_object3d(B,visu.dimx()/2,visu.dimy()/2,visu.dimz()/2,view_matrix*scene_pts,scene_prims,scene_cols,scene_opacs,3). 45.152 + display("Snapshot for Board"); 45.153 + 45.154 + // Save board into a vector graphics file format. 45.155 + std::fprintf(stderr," - Save .SVG, .EPS and .FIG snapshots\n"); 45.156 + B.save("output.svg"); 45.157 + B.save("output.eps"); 45.158 + B.save("output.fig"); 45.159 +#endif 45.160 + 45.161 + // Exit. 45.162 + std::fprintf(stderr," - Exit.\n"); 45.163 + return 0; 45.164 +}
46.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 46.2 +++ b/PTdecode/CImg-1.3.0/examples/tetris.cpp Mon Aug 03 14:09:20 2009 +0100 46.3 @@ -0,0 +1,203 @@ 46.4 +/* 46.5 + # 46.6 + # File : tetris.cpp 46.7 + # ( C++ source file ) 46.8 + # 46.9 + # Description : A CImg version of the famous Tetris game. 46.10 + # This file is a part of the CImg Library project. 46.11 + # ( http://cimg.sourceforge.net ) 46.12 + # 46.13 + # Copyright : David Tschumperle 46.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 46.15 + # 46.16 + # License : CeCILL v2.0 46.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 46.18 + # 46.19 + # This software is governed by the CeCILL license under French law and 46.20 + # abiding by the rules of distribution of free software. You can use, 46.21 + # modify and/ or redistribute the software under the terms of the CeCILL 46.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 46.23 + # "http://www.cecill.info". 46.24 + # 46.25 + # As a counterpart to the access to the source code and rights to copy, 46.26 + # modify and redistribute granted by the license, users are provided only 46.27 + # with a limited warranty and the software's author, the holder of the 46.28 + # economic rights, and the successive licensors have only limited 46.29 + # liability. 46.30 + # 46.31 + # In this respect, the user's attention is drawn to the risks associated 46.32 + # with loading, using, modifying and/or developing or reproducing the 46.33 + # software by the user in light of its specific status of free software, 46.34 + # that may mean that it is complicated to manipulate, and that also 46.35 + # therefore means that it is reserved for developers and experienced 46.36 + # professionals having in-depth computer knowledge. Users are therefore 46.37 + # encouraged to load and test the software's suitability as regards their 46.38 + # requirements in conditions enabling the security of their systems and/or 46.39 + # data to be ensured and, more generally, to use and operate it in the 46.40 + # same conditions as regards security. 46.41 + # 46.42 + # The fact that you are presently reading this means that you have had 46.43 + # knowledge of the CeCILL license and that you accept its terms. 46.44 + # 46.45 +*/ 46.46 + 46.47 +#include "img/tetris.h" 46.48 +#include "CImg.h" 46.49 +using namespace cimg_library; 46.50 + 46.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 46.52 +#ifdef cimg_use_visualcpp6 46.53 +#define std 46.54 +#endif 46.55 +#ifdef min 46.56 +#undef min 46.57 +#undef max 46.58 +#endif 46.59 + 46.60 +// Begin the main procedure 46.61 +//------------------------- 46.62 +int main(int argc,char **argv) { 46.63 + 46.64 + // Read command line argument (if any) 46.65 + cimg_usage("An implementation of the well known 'Tetris' game with CImg."); 46.66 + unsigned int 46.67 + blocdim = cimg_option("-blocdim",18,"Sprite bloc size"), 46.68 + speed = cimg_option("-speed",20,"Initial speed"), 46.69 + level = cimg_option("-level",0,"Level"); 46.70 + const char *geometry = cimg_option("-g","12x20","Size of the board"); 46.71 + unsigned int bwidth = 12,bheight = 20; 46.72 + std::sscanf(geometry,"%u%*c%u",&bwidth,&bheight); 46.73 + 46.74 + const CImg<unsigned char> dlogo = CImg<unsigned char>(data_logo,128,96,1,3,true); 46.75 + if (cimg::dialog("CImg Tetris", 46.76 + "Welcome to the CImg version of Tetris.\n" 46.77 + "( by David Tschumperle )\n\n" 46.78 + "Press 'Start' when you are ready to play !","Start","Quit",0,0,0,0,dlogo,true)) std::exit(0); 46.79 + 46.80 + // Create sprite, background graphics and initial board data 46.81 + const CImgList<unsigned char> pieces = CImgList<unsigned char>(). 46.82 + insert(CImg<unsigned char>(3,2).fill(1,1,1,0,0,1)). 46.83 + insert(CImg<unsigned char>(3,2).fill(2,2,2,2,0,0)). 46.84 + insert(CImg<unsigned char>(2,2).fill(3,3,3,3)). 46.85 + insert(CImg<unsigned char>(4,1).fill(4,4,4,4)). 46.86 + insert(CImg<unsigned char>(3,2).fill(5,5,0,0,5,5)). 46.87 + insert(CImg<unsigned char>(3,2).fill(0,6,6,6,6,0)). 46.88 + insert(CImg<unsigned char>(3,3).fill(0,7,0,7,7,7,0,7,0)). 46.89 + insert(CImg<unsigned char>(2,1).fill(8,8)). 46.90 + insert(CImg<unsigned char>(3,2).fill(9,9,9,0,9,0)). 46.91 + insert(CImg<unsigned char>(2,2).fill(10,10,0,10)). 46.92 + insert(CImg<unsigned char>(3,1).fill(11,11,11)); 46.93 + 46.94 + CImg<unsigned char> board(bwidth,bheight,1,1,0), background(board.dimx()*blocdim,board.dimy()*blocdim,1,3,0); 46.95 + (background.noise(30).draw_plasma().noise(30).deriche(5,0,'y').translate(0,background.dimy()/2,0,0,2).deriche(5,0,'y'))/=1.5f; 46.96 + if (level) (board.get_shared_lines(board.dimy()-level,board.dimy()-1,0,0).noise(100))%=pieces.size+1; 46.97 + 46.98 + // Create a set of small gradient-colored blocs used to draw the pieces. 46.99 + CImgList<unsigned char> blocs(pieces.size,blocdim,blocdim,1,3); 46.100 + cimglist_for(blocs,l) { 46.101 + CImg<unsigned char> color = CImg<unsigned char>(3,1,1,1,128).noise(127,1).cut(120,255); 46.102 + float val; 46.103 + cimg_forXYV(blocs[l],x,y,k) blocs[l](x,y,k) = (unsigned char)((val=(color[k]*0.7f*(x+y+5)/blocdim))>255?255:val); 46.104 + blocs[l].draw_line(0,0,0,blocdim-1,color>>1).draw_line(0,blocdim-1,blocdim-1,blocdim-1,color>>1); 46.105 + color = (CImg<unsigned int>(color)*=2).cut(0,255); 46.106 + blocs[l].draw_line(0,0,(int)blocdim-1,0,color).draw_line(blocdim-1,0,blocdim-1,blocdim-1,color); 46.107 + } 46.108 + 46.109 + // Initialize window display and enter the main event loop 46.110 + CImgDisplay disp(background,"CImg Tetris",0,false,true); 46.111 + disp.move((CImgDisplay::screen_dimx()-disp.dimx())/2, 46.112 + (CImgDisplay::screen_dimy()-disp.dimy())/2).hide_mouse(); 46.113 + const unsigned char white[3]={ 255, 255, 255 }; 46.114 + CImg<unsigned char> visu, nboard, piece, next, next_mask; 46.115 + int cx=-1,cy=-1,cn=-1,nn=rand()%pieces.size,time=0, score=0; 46.116 + bool gameover = false, pause = false; 46.117 + 46.118 + while (!gameover && !disp.is_closed && !disp.is_keyESC && !disp.is_keyQ) { 46.119 + 46.120 + if (!pause) { 46.121 + 46.122 + // Draw the board on the display window. 46.123 + nboard = board; visu = background; 46.124 + if (cx>=0 && cy>=0) cimg_forXY(piece,x,y) if (piece(x,y)) nboard(cx-piece.dimx()/2+x,cy-piece.dimy()/2+y)=piece(x,y); 46.125 + cimg_forXY(board,xx,yy) if (nboard(xx,yy)) visu.draw_image(xx*blocdim,yy*blocdim,blocs[nboard(xx,yy)-1]); 46.126 + visu.draw_text(5,5,"Lines : %d",white,0,1,11,score,nn).draw_text(visu.dimx()-75,5,"Next :",white,0,1,11); 46.127 + if (next.data) visu.draw_image(visu.dimx()-next.dimx()-2,10-next.dimy()/2,next,next_mask).display(disp.wait(20)); 46.128 + 46.129 + if (cn<0) { 46.130 + 46.131 + // Introduce a new piece on the board (if necessary) and create representation of the next piece 46.132 + board = nboard; 46.133 + piece = pieces[cn=nn]; 46.134 + nn = rand()%pieces.size; 46.135 + cx = board.dimx()/2; 46.136 + cy = piece.dimy()/2; 46.137 + next = CImg<unsigned char>(pieces[nn].dimx()*blocdim,pieces[nn].dimy()*blocdim,1,3,0); 46.138 + cimg_forXY(pieces[nn],xi,yi) if (pieces[nn](xi,yi)) next.draw_image(xi*blocdim,yi*blocdim,blocs[pieces[nn](xi,yi)-1]); 46.139 + next_mask = next.resize(-50,-50).get_pointwise_norm().threshold(0); 46.140 + 46.141 + // Detect tetris lines and do line removal animation if found. 46.142 + cimg_forY(board,yyy) { 46.143 + int Y = yyy*blocdim, line = 1; 46.144 + cimg_forX(board,xxx) if (!board(xxx,yyy)) line=0; 46.145 + if (line) { 46.146 + board.draw_image(0,1,board.get_crop(0,0,board.dimx()-1,yyy-1)); 46.147 + if (!((++score)%1) && speed>1) --speed; 46.148 + for (float alpha=0; alpha<=1; alpha+=0.07f) 46.149 + CImg<unsigned char>(visu).draw_image(0,Y,background.get_crop(0,Y,visu.dimx()-1,Y+blocdim-1),alpha).display(disp.wait(20)); 46.150 + visu.draw_image(0,Y,background.get_crop(0,Y,visu.dimx()-1,Y+blocdim-1)); 46.151 + } 46.152 + } 46.153 + } 46.154 + 46.155 + // Handle motion & collisions 46.156 + const int ox=cx, oy=cy; 46.157 + bool rotated = false, collision; 46.158 + switch (disp.key) { 46.159 + case cimg::keyP: pause = true; break; 46.160 + case cimg::keyARROWUP: piece.rotate(90); rotated = true; disp.key = 0; break; 46.161 + case cimg::keyARROWLEFT: cx--; disp.key = 0; break; 46.162 + case cimg::keyARROWRIGHT: cx++; disp.key = 0; break; 46.163 + } 46.164 + if (cx-piece.dimx()/2<0) cx=piece.dimx()/2; 46.165 + if (cy-piece.dimy()/2<0) cy=piece.dimy()/2; 46.166 + if (cx+(piece.dimx()-1)/2>=board.dimx()) cx = board.dimx()-1-(piece.dimx()-1)/2; 46.167 + 46.168 + // Detect collision along the X axis 46.169 + collision = false; cimg_forXY(piece,i,j) if (piece(i,j) && board(cx-piece.dimx()/2+i,cy-piece.dimy()/2+j)) collision = true; 46.170 + if (collision) { cx=ox; if (rotated) piece.rotate(-90); } 46.171 + 46.172 + if (disp.key==cimg::keyARROWDOWN || !((++time)%speed)) { cy++; disp.key=0; } 46.173 + // Detect collisiong along the Y axis 46.174 + collision = false; cimg_forXY(piece,ii,jj) if (piece(ii,jj) && board(cx-piece.dimx()/2+ii,cy-piece.dimy()/2+jj)) collision = true; 46.175 + if (collision || cy+(piece.dimy()-1)/2>=board.dimy()) { cy = oy; cn=-1; } 46.176 + if (collision && cy==piece.dimy()/2) gameover=true; 46.177 + } else { 46.178 + 46.179 + // If game is paused (key 'P'), do a little text animation 46.180 + float A = 0, B = 0; 46.181 + CImg<float> pauselogo = CImg<unsigned char>().draw_text(0,0,"Game Paused\nPress a key",white); 46.182 + disp.key = 0; while (!disp.is_closed && !disp.key) { 46.183 + const CImg<float> pauserotated = pauselogo.get_rotate((float)(30*std::sin(A)),0,1). 46.184 + resize((int)(-150-80*std::sin(B)),(int)(-150-80*std::sin(B))); 46.185 + A+=0.08f; B+=0.043f; 46.186 + CImg<unsigned char>(background). 46.187 + draw_image((background.dimx()-pauserotated.dimx())/2, 46.188 + (background.dimy()-pauserotated.dimy())/2, 46.189 + pauserotated.get_resize(-100,-100,1,3,2),pauserotated,1,255).display(disp.wait(20)); 46.190 + if (disp.is_resized) disp.resize(); 46.191 + } 46.192 + disp.key = 0; 46.193 + pause = false; 46.194 + } 46.195 + background.translate(0,20/speed,0,0,2); 46.196 + if (disp.is_resized) disp.resize(); 46.197 + } 46.198 + 46.199 + // End of game reached, display the score and do a 'game over' animation 46.200 + cimg_forXYV(visu,x,y,k) if (x%2 || y%2) visu(x,y,k) = 0; 46.201 + visu.display(disp); 46.202 + char tmp[1024]; 46.203 + std::sprintf(tmp,"Game Over !\n\nYour score : %d",score); 46.204 + cimg::dialog("CImg Tetris",tmp,"Quit"); 46.205 + return 0; 46.206 +}
47.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 47.2 +++ b/PTdecode/CImg-1.3.0/examples/tron.cpp Mon Aug 03 14:09:20 2009 +0100 47.3 @@ -0,0 +1,190 @@ 47.4 +/* 47.5 + # 47.6 + # File : tron.cpp 47.7 + # ( C++ source file ) 47.8 + # 47.9 + # Description : A clone of the famous (and very simple) Tron game. 47.10 + # This file is a part of the CImg Library project. 47.11 + # ( http://cimg.sourceforge.net ) 47.12 + # 47.13 + # Copyright : David Tschumperle 47.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 47.15 + # 47.16 + # License : CeCILL v2.0 47.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 47.18 + # 47.19 + # This software is governed by the CeCILL license under French law and 47.20 + # abiding by the rules of distribution of free software. You can use, 47.21 + # modify and/ or redistribute the software under the terms of the CeCILL 47.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 47.23 + # "http://www.cecill.info". 47.24 + # 47.25 + # As a counterpart to the access to the source code and rights to copy, 47.26 + # modify and redistribute granted by the license, users are provided only 47.27 + # with a limited warranty and the software's author, the holder of the 47.28 + # economic rights, and the successive licensors have only limited 47.29 + # liability. 47.30 + # 47.31 + # In this respect, the user's attention is drawn to the risks associated 47.32 + # with loading, using, modifying and/or developing or reproducing the 47.33 + # software by the user in light of its specific status of free software, 47.34 + # that may mean that it is complicated to manipulate, and that also 47.35 + # therefore means that it is reserved for developers and experienced 47.36 + # professionals having in-depth computer knowledge. Users are therefore 47.37 + # encouraged to load and test the software's suitability as regards their 47.38 + # requirements in conditions enabling the security of their systems and/or 47.39 + # data to be ensured and, more generally, to use and operate it in the 47.40 + # same conditions as regards security. 47.41 + # 47.42 + # The fact that you are presently reading this means that you have had 47.43 + # knowledge of the CeCILL license and that you accept its terms. 47.44 + # 47.45 +*/ 47.46 + 47.47 +#include "CImg.h" 47.48 +using namespace cimg_library; 47.49 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 47.50 +#ifdef cimg_use_visualcpp6 47.51 +#define std 47.52 +#endif 47.53 + 47.54 +// Start main procedure 47.55 +//---------------------- 47.56 +int main(int argc, char **argv) { 47.57 + 47.58 + // Print usage, help and retrieve command line options 47.59 + //----------------------------------------------------- 47.60 + cimg_usage("A very simple Tron game, using the CImg Library"); 47.61 + cimg_help("--- Quick help ----------------------------\n" 47.62 + " Player 1 (blue) :\n" 47.63 + " Use keys 'Z' (up), 'S' (down), 'Q' (left)\n" 47.64 + " and 'D' (right) to control your player.\n" 47.65 + " Right 'CONTROL' key enables turbospeed\n" 47.66 + " Player 2 (red) : \n" 47.67 + " Use arrow keys to control your player.\n" 47.68 + " 'TAB' key enables turbospeed.\n" 47.69 + "-------------------------------------------"); 47.70 + 47.71 + const char *geom = cimg_option("-g","300x300","Size of the game board"); 47.72 + const int delay = cimg_option("-s",10,"Game speed (lower value means faster)"); 47.73 + const bool twoplayers = !cimg_option("-1",false,"One player only"); 47.74 + const int zoom = cimg_option("-z",1,"Zoom factor"); 47.75 + const bool full = cimg_option("-f",false,"Fullscreen mode"); 47.76 + unsigned int W = 400, H = 400; 47.77 + std::sscanf(geom,"%u%*c%u",&W,&H); 47.78 + 47.79 + // Define game colors and variables 47.80 + //---------------------------------- 47.81 + const unsigned char green[] = { 64,255,32 }, blue[] = { 128,200,255}, red[] = { 255,0,0 }, white[] = { 255,255,255 }; 47.82 + int score1=0, score2=0, round_over=0, ix1=-1, iy1=-1, x1=0, y1=0, u1=0, v1=0, ix2=-1, iy2=-1, x2=0, y2=0, u2=0, v2=0; 47.83 + bool start_round = true, turbo1 = false, turbo2 = false; 47.84 + 47.85 + // Create background image 47.86 + //-------------------------- 47.87 + CImg<unsigned char> background, img; 47.88 + background.assign(64,64,1,3,0).noise(60).draw_plasma().resize(W,H).blur(2).draw_rectangle(0,0,W-1,H-1,white,1.0f,~0U); 47.89 + 47.90 + // Open display window 47.91 + //--------------------- 47.92 + CImgDisplay disp(background,"* CImg-Tron *"); 47.93 + if (zoom>1) disp.resize(-100*zoom,-100*zoom); 47.94 + if (full) disp.toggle_fullscreen().display(background); 47.95 + 47.96 + // Start main game loop 47.97 + //---------------------- 47.98 + while (!disp.is_closed && !disp.is_keyESC) { 47.99 + 47.100 + // Init new game round if necessary 47.101 + //---------------------------------- 47.102 + if (start_round) { 47.103 + 47.104 + // Init game variables 47.105 + round_over = 0; 47.106 + ix1=-1; iy1=-1; x1 = 10; y1 = 10; u1 = 1; v1 = 0; turbo1 = false; 47.107 + ix2=-1; iy2=-1; x2 = W-11; y2 = H-11; u2 = -1; v2 = 0; turbo2 = false; 47.108 + img = background; 47.109 + start_round = false; 47.110 + 47.111 + // Display a simple pre-round page 47.112 + CImg<unsigned char> logo, pressakey; 47.113 + logo.draw_text(0,0," CImg-Tron ",green,0,1,32); 47.114 + CImg<unsigned char> tmp = (+background).draw_image((W-logo.dimx())/2,(H-logo.dimy())/2-20,logo,logo.get_channel(0).dilate(6).normalize(0,1)). 47.115 + draw_text(W/2-70,H/2+10,"Blue ( %u )",blue,0,1,16,score1). 47.116 + draw_text(W/2+10,H/2+10,"Red ( %u )",red,0,1,16,score2); 47.117 + pressakey.draw_text(0,0,"* Press a key to start round *",white); 47.118 + for (float i=0; i<1; i+=0.05f) ((+tmp)*=i).display(disp.wait(20)); 47.119 + disp.flush(); 47.120 + while (!disp.is_key() && !disp.is_closed) { 47.121 + disp.display(tmp).wait(200).display((+tmp).draw_image(W/2-90,H/2+50,pressakey,pressakey,1,255)).wait(400); 47.122 + if (disp.is_resized) disp.resize(disp); 47.123 + } 47.124 + if (disp.is_keyESC) disp.flush(); 47.125 + } 47.126 + 47.127 + // Test collision between players and borders 47.128 + if (x1<0 || x1>=img.dimx() || y1<0 || y1>=img.dimy() || 47.129 + img(x1,y1,0)!=background(x1,y1,0) || 47.130 + img(x1,y1,1)!=background(x1,y1,1) || 47.131 + img(x1,y1,2)!=background(x1,y1,2) || 47.132 + ((ix1>=0 || iy1>=0) && (img(ix1,iy1,0)!=background(ix1,iy1,0) || // Collision test for turbo mode 47.133 + img(ix1,iy1,1)!=background(ix1,iy1,1) || 47.134 + img(ix1,iy1,2)!=background(ix1,iy1,2)))) { round_over=1; score2++; } 47.135 + if (twoplayers) { 47.136 + if (x2<0 || x2>=img.dimx() || y2<0 || y2>=img.dimy() || 47.137 + img(x2,y2,0)!=background(x2,y2,0) || 47.138 + img(x2,y2,1)!=background(x2,y2,1) || 47.139 + img(x2,y2,2)!=background(x2,y2,2) || 47.140 + ((ix2>=0 || iy2>=0) && (img(ix2,iy2,0)!=background(ix2,iy2,0) || // Collision test for turbo mode 47.141 + img(ix2,iy2,1)!=background(ix2,iy2,1) || 47.142 + img(ix2,iy2,2)!=background(ix2,iy2,2)))) { round_over=2; score1++; } 47.143 + } 47.144 + 47.145 + // Draw new players positions 47.146 + img.draw_point(x1,y1,blue); 47.147 + if (ix1>=0 && iy1>=0) img.draw_point(ix1,iy1,blue); 47.148 + if (twoplayers) { 47.149 + img.draw_point(x2,y2,red); 47.150 + if (ix2>=0 && iy2>=0) img.draw_point(ix2,iy2,red); 47.151 + } 47.152 + if (disp.is_resized) disp.resize(disp); 47.153 + img.display(disp); 47.154 + 47.155 + // Update players positions 47.156 + x1+=u1; y1+=v1; 47.157 + if (turbo1) { ix1 = x1; iy1 = y1; x1+=u1; y1+=v1; } else { ix1 = iy1 = -1; } 47.158 + if (twoplayers) { 47.159 + x2+=u2; y2+=v2; 47.160 + if (turbo2) { ix2 = x2; iy2 = y2; x2+=u2; y2+=v2; } else { ix2 = iy2 = -1; } 47.161 + } 47.162 + 47.163 + // Test keyboard events 47.164 + int nu1 = u1, nv1 = v1, nu2 = u2, nv2 = v2; 47.165 + if (disp.is_keyARROWLEFT) { nu1 = -1; nv1 = 0; } 47.166 + if (disp.is_keyARROWRIGHT) { nu1 = 1; nv1 = 0; } 47.167 + if (disp.is_keyARROWUP) { nu1 = 0; nv1 = -1; } 47.168 + if (disp.is_keyARROWDOWN) { nu1 = 0; nv1 = 1; } 47.169 + turbo1 = disp.is_keyCTRLRIGHT; 47.170 + if (twoplayers) { 47.171 + if (disp.is_keyQ) { nu2 = -1; nv2 = 0; } 47.172 + if (disp.is_keyD) { nu2 = 1; nv2 = 0; } 47.173 + if (disp.is_keyZ) { nu2 = 0; nv2 = -1; } 47.174 + if (disp.is_keyS) { nu2 = 0; nv2 = 1; } 47.175 + turbo2 = disp.is_keyTAB; 47.176 + } 47.177 + if (nu1!=-u1 && nv1!=-v1) { u1 = nu1; v1 = nv1; } 47.178 + if (nu2!=-u2 && nv2!=-v2) { u2 = nu2; v2 = nv2; } 47.179 + 47.180 + // Check if round is over. 47.181 + if (round_over) { 47.182 + const int xc = round_over==1?x1:x2, yc = round_over==1?y1:y2; 47.183 + for (int r=0; r<50; r+=3) img.draw_circle(xc,yc,r,round_over==1?blue:red,r/300.0f).display(disp.wait(20)); 47.184 + for (int rr=0; rr<50; rr+=3) 47.185 + ((+img)*=(50-rr)/50.0f).draw_circle(xc,yc,(50+rr),round_over==1?blue:red,1/6.0f).display(disp.wait(20)); 47.186 + start_round = true; 47.187 + } 47.188 + 47.189 + // Wait a small amount of time 47.190 + disp.wait(delay); 47.191 + } 47.192 + return 0; 47.193 +}
48.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 48.2 +++ b/PTdecode/CImg-1.3.0/examples/tutorial.cpp Mon Aug 03 14:09:20 2009 +0100 48.3 @@ -0,0 +1,130 @@ 48.4 +/* 48.5 + # 48.6 + # File : tutorial.cpp 48.7 + # ( C++ source file ) 48.8 + # 48.9 + # Description : View the color profile of an image, along the X-axis. 48.10 + # This file is a part of the CImg Library project. 48.11 + # ( http://cimg.sourceforge.net ) 48.12 + # 48.13 + # Copyright : David Tschumperle 48.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 48.15 + # 48.16 + # License : CeCILL v2.0 48.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 48.18 + # 48.19 + # This software is governed by the CeCILL license under French law and 48.20 + # abiding by the rules of distribution of free software. You can use, 48.21 + # modify and/ or redistribute the software under the terms of the CeCILL 48.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 48.23 + # "http://www.cecill.info". 48.24 + # 48.25 + # As a counterpart to the access to the source code and rights to copy, 48.26 + # modify and redistribute granted by the license, users are provided only 48.27 + # with a limited warranty and the software's author, the holder of the 48.28 + # economic rights, and the successive licensors have only limited 48.29 + # liability. 48.30 + # 48.31 + # In this respect, the user's attention is drawn to the risks associated 48.32 + # with loading, using, modifying and/or developing or reproducing the 48.33 + # software by the user in light of its specific status of free software, 48.34 + # that may mean that it is complicated to manipulate, and that also 48.35 + # therefore means that it is reserved for developers and experienced 48.36 + # professionals having in-depth computer knowledge. Users are therefore 48.37 + # encouraged to load and test the software's suitability as regards their 48.38 + # requirements in conditions enabling the security of their systems and/or 48.39 + # data to be ensured and, more generally, to use and operate it in the 48.40 + # same conditions as regards security. 48.41 + # 48.42 + # The fact that you are presently reading this means that you have had 48.43 + # knowledge of the CeCILL license and that you accept its terms. 48.44 + # 48.45 +*/ 48.46 + 48.47 +// Include CImg library file and use its main namespace 48.48 +#include "CImg.h" 48.49 +using namespace cimg_library; 48.50 + 48.51 +#ifndef cimg_imagepath 48.52 +#define cimg_imagepath "img/" 48.53 +#endif 48.54 + 48.55 +// Begin the program 48.56 +int main(int argc,char **argv) { 48.57 + 48.58 + // Define program usage and read command line parameters 48.59 + //------------------------------------------------------- 48.60 + 48.61 + // Display program usage, when invoked from the command line with option '-h'. 48.62 + cimg_usage("View the color profile of an image along the X axis"); 48.63 + 48.64 + // Read image filename from the command line (or set it to "img/parrot_original.ppm" if option '-i' is not provided). 48.65 + const char* file_i = cimg_option("-i",cimg_imagepath "parrot_original.ppm","Input image"); 48.66 + 48.67 + // Read pre-blurring variance from the command line (or set it to 1.0 if option '-blur' is not provided). 48.68 + const double sigma = cimg_option("-blur",1.0,"Variance of gaussian pre-blurring"); 48.69 + 48.70 + // Init variables 48.71 + //---------------- 48.72 + 48.73 + // Load an image, transform it to a color image (if necessary) and blur it with the standard deviation sigma. 48.74 + const CImg<unsigned char> image = CImg<>(file_i).normalize(0,255).blur((float)sigma).resize(-100,-100,1,3); 48.75 + 48.76 + // Create two display window, one for the image, the other for the color profile. 48.77 + CImgDisplay 48.78 + main_disp(image,"Color image (Try to move mouse pointer over)",0), 48.79 + draw_disp(500,400,"Color profile of the X-axis",0); 48.80 + 48.81 + // Define colors used to plot the profile, and a hatch to draw the vertical line 48.82 + unsigned long hatch = 0xF0F0F0F0; 48.83 + const unsigned char 48.84 + red[] = { 255,0,0 }, 48.85 + green[] = { 0,255,0 }, 48.86 + blue [] = { 0,0,255 }, 48.87 + black[] = { 0,0,0 }; 48.88 + 48.89 + // Enter event loop. This loop ends when one of the two display window is closed or when the keys 'ESC' or 'Q' are pressed. 48.90 + while (!main_disp.is_closed && !draw_disp.is_closed && 48.91 + !main_disp.is_keyESC && !draw_disp.is_keyESC && !main_disp.is_keyQ && !draw_disp.is_keyQ) { 48.92 + 48.93 + // Handle display window resizing (if any) 48.94 + if (main_disp.is_resized) main_disp.resize().display(image); 48.95 + draw_disp.resize(); 48.96 + 48.97 + if (main_disp.mouse_x>=0 && main_disp.mouse_y>=0) { // Mouse pointer is over the image 48.98 + 48.99 + const int 48.100 + xm = main_disp.mouse_x, // X-coordinate of the mouse pointer over the image 48.101 + ym = main_disp.mouse_y, // Y-coordinate of the mouse pointer over the image 48.102 + xl = xm*draw_disp.dimx()/main_disp.dimx(), // Corresponding X-coordinate of the hatched line 48.103 + x = xm*image.dimx()/main_disp.dimx(), // Corresponding X-coordinate of the pointed pixel in the image 48.104 + y = ym*image.dimy()/main_disp.dimy(); // Corresponding Y-coordinate of the pointex pixel in the image 48.105 + 48.106 + // Retrieve color component values at pixel (x,y) 48.107 + const unsigned int 48.108 + val_red = image(x,y,0), 48.109 + val_green = image(x,y,1), 48.110 + val_blue = image(x,y,2); 48.111 + 48.112 + // Create and display the image of the intensity profile 48.113 + CImg<unsigned char>(draw_disp.dimx(),draw_disp.dimy(),1,3,255). 48.114 + draw_grid(-50*100.0f/image.dimx(),-50*100.0f/256,0,0,false,true,black,0.2f,0xCCCCCCCC,0xCCCCCCCC). 48.115 + draw_axis(0,image.dimx()-1.0f,255.0f,0.0f,black). 48.116 + draw_graph(image.get_shared_line(y,0,0),red,1,1,0,255,1). 48.117 + draw_graph(image.get_shared_line(y,0,1),green,1,1,0,255,1). 48.118 + draw_graph(image.get_shared_line(y,0,2),blue,1,1,0,255,1). 48.119 + draw_text(30,5,"Pixel (%d,%d)={%d %d %d}",black,0,1,11, 48.120 + main_disp.mouse_x,main_disp.mouse_y,val_red,val_green,val_blue). 48.121 + draw_line(xl,0,xl,draw_disp.dimy()-1,black,0.5f,hatch=cimg::rol(hatch)). 48.122 + display(draw_disp); 48.123 + } else 48.124 + // else display a text in the profile display window. 48.125 + CImg<unsigned char>(draw_disp.dimx(),draw_disp.dimy()).fill(255). 48.126 + draw_text(draw_disp.dimx()/2-110,draw_disp.dimy()/2-5,"Mouse pointer is outside the image",black).display(draw_disp); 48.127 + 48.128 + // Temporize event loop 48.129 + cimg::wait(20); 48.130 + } 48.131 + 48.132 + return 0; 48.133 +}
49.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 49.2 +++ b/PTdecode/CImg-1.3.0/examples/use_RGBclass.cpp Mon Aug 03 14:09:20 2009 +0100 49.3 @@ -0,0 +1,142 @@ 49.4 +/* 49.5 + # 49.6 + # File : use_RGBclass.cpp 49.7 + # ( C++ source file ) 49.8 + # 49.9 + # Description : A small code that shows how to write a CImg plugin to 49.10 + # handle color image manipulation using a user-defined RGB 49.11 + # class, instead of using classical pixel access of CImg<T> 49.12 + # with operator(). 49.13 + # This file is a part of the CImg Library project. 49.14 + # ( http://cimg.sourceforge.net ) 49.15 + # 49.16 + # Note : This file cannot be compiled on VC++ 6. 49.17 + # 49.18 + # Copyright : David Tschumperle 49.19 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 49.20 + # 49.21 + # License : CeCILL v2.0 49.22 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 49.23 + # 49.24 + # This software is governed by the CeCILL license under French law and 49.25 + # abiding by the rules of distribution of free software. You can use, 49.26 + # modify and/ or redistribute the software under the terms of the CeCILL 49.27 + # license as circulated by CEA, CNRS and INRIA at the following URL 49.28 + # "http://www.cecill.info". 49.29 + # 49.30 + # As a counterpart to the access to the source code and rights to copy, 49.31 + # modify and redistribute granted by the license, users are provided only 49.32 + # with a limited warranty and the software's author, the holder of the 49.33 + # economic rights, and the successive licensors have only limited 49.34 + # liability. 49.35 + # 49.36 + # In this respect, the user's attention is drawn to the risks associated 49.37 + # with loading, using, modifying and/or developing or reproducing the 49.38 + # software by the user in light of its specific status of free software, 49.39 + # that may mean that it is complicated to manipulate, and that also 49.40 + # therefore means that it is reserved for developers and experienced 49.41 + # professionals having in-depth computer knowledge. Users are therefore 49.42 + # encouraged to load and test the software's suitability as regards their 49.43 + # requirements in conditions enabling the security of their systems and/or 49.44 + # data to be ensured and, more generally, to use and operate it in the 49.45 + # same conditions as regards security. 49.46 + # 49.47 + # The fact that you are presently reading this means that you have had 49.48 + # knowledge of the CeCILL license and that you accept its terms. 49.49 + # 49.50 +*/ 49.51 + 49.52 +#ifndef cimg_plugin 49.53 +#define cimg_plugin "examples/use_RGBclass.cpp" // Path of the plugin is relative to the CImg.h file. 49.54 +#include "CImg.h" 49.55 +using namespace cimg_library; 49.56 + 49.57 +#ifndef cimg_imagepath 49.58 +#define cimg_imagepath "img/" 49.59 +#endif 49.60 + 49.61 +//---------------- 49.62 +// Main procedure 49.63 +//---------------- 49.64 +int main() { 49.65 + 49.66 + // Load images. 49.67 + CImg<short> img1(cimg_imagepath "milla.bmp"); 49.68 + const CImg<float> img2 = CImg<float>(cimg_imagepath "lena.pgm").resize(img1,3); 49.69 + const float default_color[] = { 30,30,80 }; 49.70 + 49.71 + // Modify 'img1' using the RGB pixel accessor. 49.72 + cimg_forXY(img1,x,y) 49.73 + if (!((x*y)%31)) img1.RGB_at(x,y) = default_color; 49.74 + else if ((x+y)%2) img1.RGB_at(x,y) = img2.RGB_at(x,y); 49.75 + img1.display(); 49.76 + 49.77 + // Quit. 49.78 + return 0; 49.79 +} 49.80 + 49.81 +#else 49.82 + 49.83 +//------------------------- 49.84 +// Start of the plugin code 49.85 +//------------------------- 49.86 + 49.87 +// Define a simple structure of *references* to R,G,B values. 49.88 +//----------------------------------------------------------- 49.89 +// (Feel free to add your own operators in there !) 49.90 +struct st_RGB { 49.91 + T _R,_G,_B,&R,&G,&B; 49.92 + 49.93 + // Construct from R,G,B references of values. 49.94 + st_RGB(const T& nR, const T& nG, const T& nB):_R(nR),_G(nG),_B(nB),R(_R),G(_G),B(_B) {} 49.95 + st_RGB(T& nR, T& nG, T& nB):R(nR),G(nG),B(nB) {} 49.96 + 49.97 + // Copy constructors. 49.98 + st_RGB(const st_RGB& rgb):_R(rgb.R),_G(rgb.G),_B(rgb.B),R(_R),G(_G),B(_B) {} 49.99 + template<typename t> 49.100 + st_RGB(const t& rgb):_R(rgb[0]),_G(rgb[1]),_B(rgb[2]) {} 49.101 + 49.102 + // Assignement operator. 49.103 + st_RGB& operator=(const st_RGB& rgb) { 49.104 + R = (T)(rgb[0]); G = (T)(rgb[1]); B = (T)(rgb[2]); 49.105 + return *this; 49.106 + } 49.107 + template<typename t> 49.108 + st_RGB& operator=(const t& rgb) { 49.109 + R = (T)(rgb[0]); G = (T)(rgb[1]); B = (T)(rgb[2]); 49.110 + return *this; 49.111 + } 49.112 + 49.113 + // Data (R,G or B) access operator. 49.114 + const T& operator[](const unsigned int i) const { 49.115 + return i==2?B:(i==1?G:R); 49.116 + } 49.117 + T& operator[](const unsigned int i) { 49.118 + return i==2?B:(i==1?G:R); 49.119 + } 49.120 + 49.121 + // Print instance on the standard error. 49.122 + const st_RGB& print() const { 49.123 + std::fprintf(stderr,"{ %d %d %d }\n",(int)R,(int)G,(int)B); 49.124 + return *this; 49.125 + } 49.126 +}; 49.127 + 49.128 +// Define CImg<T> member functions which return pixel values as st_RGB instances. 49.129 +//-------------------------------------------------------------------------------- 49.130 +const st_RGB RGB_at(const int x, const int y=0, const int z=0) const { 49.131 + const long whz = width*height*depth; 49.132 + const T *const pR = data + x + y*width + z*width*height, *const pG = pR + whz, *const pB = pG + whz; 49.133 + return st_RGB(*pR,*pG,*pB); 49.134 +} 49.135 + 49.136 +st_RGB RGB_at(const int x, const int y=0, const int z=0) { 49.137 + const long whz = width*height*depth; 49.138 + T *const pR = data + x + y*width + z*width*height, *const pG = pR + whz, *const pB = pG + whz; 49.139 + return st_RGB(*pR,*pG,*pB); 49.140 +} 49.141 + 49.142 +//------------------------ 49.143 +// End of the plugin code 49.144 +//------------------------ 49.145 +#endif
50.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 50.2 +++ b/PTdecode/CImg-1.3.0/examples/use_cimgIPL.cpp Mon Aug 03 14:09:20 2009 +0100 50.3 @@ -0,0 +1,154 @@ 50.4 +/* 50.5 +# 50.6 +# File : use_cimgIPL.cpp 50.7 +# ( C++ source file ) 50.8 +# 50.9 +# Description : Example of use for the CImg plugin 'plugins/cimgIPL.h'. 50.10 +# This file is a part of the CImg Library project. 50.11 +# ( http://cimg.sourceforge.net ) 50.12 +# 50.13 +# Copyright : newleft (haibo.zheng@gmail.com) 50.14 +# newleftist@hotmail.com 50.15 +# 50.16 +# License : CeCILL v2.0 50.17 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 50.18 +# 50.19 +# This software is governed by the CeCILL license under French law and 50.20 +# abiding by the rules of distribution of free software. You can use, 50.21 +# modify and/ or redistribute the software under the terms of the CeCILL 50.22 +# license as circulated by CEA, CNRS and INRIA at the following URL 50.23 +# "http://www.cecill.info". 50.24 +# 50.25 +# As a counterpart to the access to the source code and rights to copy, 50.26 +# modify and redistribute granted by the license, users are provided only 50.27 +# with a limited warranty and the software's author, the holder of the 50.28 +# economic rights, and the successive licensors have only limited 50.29 +# liability. 50.30 +# 50.31 +# In this respect, the user's attention is drawn to the risks associated 50.32 +# with loading, using, modifying and/or developing or reproducing the 50.33 +# software by the user in light of its specific status of free software, 50.34 +# that may mean that it is complicated to manipulate, and that also 50.35 +# therefore means that it is reserved for developers and experienced 50.36 +# professionals having in-depth computer knowledge. Users are therefore 50.37 +# encouraged to load and test the software's suitability as regards their 50.38 +# requirements in conditions enabling the security of their systems and/or 50.39 +# data to be ensured and, more generally, to use and operate it in the 50.40 +# same conditions as regards security. 50.41 +# 50.42 +# The fact that you are presently reading this means that you have had 50.43 +# knowledge of the CeCILL license and that you accept its terms. 50.44 +# 50.45 +*/ 50.46 + 50.47 +#include <cv.h> 50.48 +#include <highgui.h> 50.49 +#include <math.h> 50.50 + 50.51 +#pragma comment(lib, "cv.lib") 50.52 +#pragma comment(lib, "cvaux.lib") 50.53 +#pragma comment(lib, "cxcore.lib") 50.54 +#pragma comment(lib, "highgui.lib") 50.55 + 50.56 +#define cimg_plugin1 "plugins\cimgIPL.h" 50.57 +#include "CImg.h" 50.58 +using namespace cimg_library; 50.59 + 50.60 +int main(int argc, char* argv[]) { 50.61 + int wid = 0; 50.62 + CImg<> cImg(argv[1]); 50.63 + cImg.display("cImg"); 50.64 + IplImage* ipl; 50.65 + //ipl = cvLoadImage(argv[1], -1); 50.66 + ipl = cImg.get_IPL(); 50.67 + 50.68 + IplImage *ipl8; 50.69 + IplImage *ipl16, *ipl32, *ipl64; 50.70 + IplImage *ipl16to8, *ipl32to8, *ipl64to8; 50.71 + cvNamedWindow("origin", wid++); 50.72 + cvNamedWindow("8bit_OK", wid++); 50.73 + cvNamedWindow("16bit", wid++); 50.74 + cvNamedWindow("32bit", wid++); 50.75 + cvNamedWindow("64bit", wid++); 50.76 + cvNamedWindow("16bitto8", wid++); 50.77 + cvNamedWindow("32bitto8", wid++); 50.78 + cvNamedWindow("64bitto8", wid++); 50.79 + 50.80 + cvShowImage("origin", ipl); 50.81 + 50.82 + ipl8 = cvCreateImage(cvGetSize(ipl), IPL_DEPTH_8U, ipl->nChannels); 50.83 + cvConvert(ipl, ipl8); 50.84 + 50.85 + ipl16 = cvCreateImage(cvGetSize(ipl), IPL_DEPTH_16U, ipl->nChannels); 50.86 + cvConvert(ipl, ipl16); 50.87 + 50.88 + ipl32 = cvCreateImage(cvGetSize(ipl), IPL_DEPTH_32F, ipl->nChannels); 50.89 + cvConvert(ipl, ipl32); 50.90 + 50.91 + ipl64 = cvCreateImage(cvGetSize(ipl), IPL_DEPTH_64F, ipl->nChannels); 50.92 + cvConvert(ipl, ipl64); 50.93 + 50.94 + cvShowImage("8bit_OK", ipl8);// this canbe show properly 50.95 + cvShowImage("16bit", ipl16);// maynot display properly, that's bug of cvShowImage 50.96 + cvShowImage("32bit", ipl32);// maynot display properly, that's bug of cvShowImage 50.97 + cvShowImage("64bit", ipl64);// maynot display properly, that's bug of cvShowImage 50.98 + 50.99 + // cvShowImage can only display IplImage with IPL_DEPTH_8X, proved by the following codes 50.100 + ipl16to8 = cvCreateImage(cvGetSize(ipl16), IPL_DEPTH_8U, ipl16->nChannels); 50.101 + cvConvert(ipl16, ipl16to8); 50.102 + ipl32to8 = cvCreateImage(cvGetSize(ipl32), IPL_DEPTH_8U, ipl32->nChannels); 50.103 + cvConvert(ipl32, ipl32to8); 50.104 + ipl64to8 = cvCreateImage(cvGetSize(ipl64), IPL_DEPTH_8U, ipl64->nChannels); 50.105 + cvConvert(ipl64, ipl64to8); 50.106 + cvShowImage("16bitto8", ipl16to8); // diplay ok 50.107 + cvShowImage("32bitto8", ipl32to8); // diplay ok 50.108 + cvShowImage("64bitto8", ipl64to8); // diplay ok 50.109 + 50.110 + 50.111 + // now, we test ipl8->cImg, ipl16->cImg, ipl32->cImg, ipl64->cImg 50.112 + cImg.assign(ipl8); 50.113 + cImg.display("ipl8->cimg"); 50.114 + cImg.assign(ipl16); 50.115 + cImg.display("ipl16->cimg"); 50.116 + cImg.assign(ipl32); 50.117 + cImg.display("ipl32->cimg"); 50.118 + cImg.assign(ipl64); 50.119 + cImg.display("ipl64->cimg"); 50.120 + 50.121 + cvWaitKey(0); 50.122 + 50.123 + // test another construct 50.124 + CImg<unsigned char> testCImg1(ipl16); 50.125 + testCImg1.display("testCImg1"); 50.126 + CImg<unsigned char> testCImg2(ipl32); 50.127 + testCImg2.display("testCImg2"); 50.128 + CImg<unsigned char> testCImg3(ipl64); 50.129 + testCImg3.display("testCImg3"); 50.130 + 50.131 + CImg<double> testCImg4(ipl16); 50.132 + testCImg4.display("testCImg4"); 50.133 + CImg<double> testCImg5(ipl32); 50.134 + testCImg5.display("testCImg5"); 50.135 + CImg<double> testCImg6(ipl64); 50.136 + testCImg6.display("testCImg6"); 50.137 + 50.138 + cvReleaseImage(&ipl); 50.139 + cvReleaseImage(&ipl8); 50.140 + cvReleaseImage(&ipl16); 50.141 + cvReleaseImage(&ipl32); 50.142 + cvReleaseImage(&ipl64); 50.143 + cvReleaseImage(&ipl16to8); 50.144 + cvReleaseImage(&ipl32to8); 50.145 + cvReleaseImage(&ipl64to8); 50.146 + 50.147 + cvDestroyWindow("origin"); 50.148 + cvDestroyWindow("8bit_OK"); 50.149 + cvDestroyWindow("16bit"); 50.150 + cvDestroyWindow("32bit"); 50.151 + cvDestroyWindow("64bit"); 50.152 + cvDestroyWindow("16bitto8"); 50.153 + cvDestroyWindow("32bitto8"); 50.154 + cvDestroyWindow("64bitto8"); 50.155 + 50.156 + return 0; 50.157 +}
51.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 51.2 +++ b/PTdecode/CImg-1.3.0/examples/use_cimgmatlab.cpp Mon Aug 03 14:09:20 2009 +0100 51.3 @@ -0,0 +1,102 @@ 51.4 +/*----------------------------------------------------------------------- 51.5 + 51.6 + File : use_cimgmatlab.cpp 51.7 + 51.8 + Description: Example of use for the CImg plugin 'plugins/cimgmatlab.h' 51.9 + which allows to use CImg in order to develop matlab external 51.10 + functions (mex functions). 51.11 + User should be familiar with Matlab C/C++ mex function concepts, 51.12 + as this file is by no way a mex programming tutorial. 51.13 + 51.14 + This simple example implements a mex function that can be called 51.15 + as 51.16 + 51.17 + - v = cimgmatlab_cannyderiche(u,s) 51.18 + - v = cimgmatlab_cannyderiche(u,sx,sy) 51.19 + - v = cimgmatlab_cannyderiche(u,sx,sy,sz) 51.20 + 51.21 + The corresponding m-file is cimgmatlab_cannyderiche.m 51.22 + 51.23 + 51.24 + Copyright : Francois Lauze - http://www.itu.dk/people/francois 51.25 + This software is governed by the Gnu Lesser General Public License 51.26 + see http://www.gnu.org/copyleft/lgpl.html 51.27 + 51.28 + The plugin home page is at 51.29 + http://www.itu.dk/people/francois/cimgmatlab.html 51.30 + 51.31 + for the compilation: using the mex utility provided with matlab, just 51.32 + remember to add the -I flags with paths to CImg.h and/or cimgmatlab.h. 51.33 + The default lcc cannot be used, it is a C compiler and not a C++ one! 51.34 + 51.35 +--------------------------------------------------------------------------*/ 51.36 + 51.37 +#include <mex.h> 51.38 +#define cimg_plugin "plugins/cimgmatlab.h" 51.39 +#include <CImg.h> 51.40 + 51.41 +void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { 51.42 + if (nrhs < 2) mexErrMsgTxt("No enough input arguments."); 51.43 + if (nrhs > 4) mexErrMsgTxt("Too many input arguments."); 51.44 + cimg_library::CImg<> u(prhs[0],true); 51.45 + if (nrhs == 2) { 51.46 + const float s = (float)mxGetScalar(prhs[1]); 51.47 + plhs[0] = u.get_blur(s).toMatlab(); 51.48 + } else if (nrhs == 3) { 51.49 + const float sx = (float)mxGetScalar(prhs[1]); 51.50 + const float sy = (float)mxGetScalar(prhs[2]); 51.51 + plhs[0] = u.get_blur(sx,sy,0).toMatlab(); 51.52 + } else if (nrhs == 4) { 51.53 + const float sx = (float)mxGetScalar(prhs[1]); 51.54 + const float sy = (float)mxGetScalar(prhs[2]); 51.55 + const float sz = (float)mxGetScalar(prhs[3]); 51.56 + plhs[0] = u.get_blur(sx,sy,sz).toMatlab(); 51.57 + } 51.58 +} 51.59 + 51.60 +/*------------------------------------------------------------------ 51.61 + 51.62 + SPECIAL NOTE : 51.63 + ------------- 51.64 + 51.65 + How to read a .mat file using plugin 'cimgmatlab.h' ? 51.66 + (contribution by Vo Duc Khanh/Denso IT Lab, Tokyo, Japan). 51.67 + 51.68 + #include <mex.h> 51.69 + #include <mat.h> 51.70 + #include <matrix.h> 51.71 + 51.72 + #define cimg_plugin "cimgmatlab.h" 51.73 + 51.74 + #include "CImg.h" 51.75 + #include <iostream> 51.76 + #include <string> 51.77 + 51.78 + ......... 51.79 + 51.80 + using namespace cimg_library; 51.81 + using namespace std; 51.82 + 51.83 + // Load input images (125700 images) from training database 'BmpTrainingDb.mat' 51.84 + MATFile *pmat, *pmat_out; 51.85 + mxArray *pa, *pa_out; 51.86 + const char data_path[256] = ".\\BmpTrainingDb.mat\0"; 51.87 + const char *var_name; 51.88 + 51.89 + pmat = matOpen(data_path, "r"); 51.90 + if (pmat == NULL) { 51.91 + cout << "Error opening file " << data_path << endl; 51.92 + return (1); 51.93 + } 51.94 + 51.95 + pa = matGetNextVariable(pmat, &var_name); 51.96 + if (pa == NULL){ 51.97 + cout << "Error reading in file " << data_path << endl; 51.98 + return (1); 51.99 + } 51.100 + 51.101 + CImg<unsigned char> train_db(pa,false); 51.102 + ........ 51.103 + 51.104 + 51.105 + -----------------------------------------------------------------------------*/
52.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 52.2 +++ b/PTdecode/CImg-1.3.0/examples/use_cimgmatlab.m Mon Aug 03 14:09:20 2009 +0100 52.3 @@ -0,0 +1,33 @@ 52.4 +/*----------------------------------------------------------------------- 52.5 + File : use_cimgmatlab.m 52.6 + 52.7 + Description: Example of use for the CImg plugin 'plugins/cimgmatlab.h' 52.8 + which allows to use CImg in order to develop matlab external 52.9 + functions (mex functions). 52.10 + User should be familiar with Matlab C/C++ mex function concepts, 52.11 + as this file is by no way a mex programming tutorial. 52.12 + 52.13 + This simple example implements a mex function that can be called 52.14 + as 52.15 + 52.16 + - v = cimgmatlab_cannyderiche(u,s) 52.17 + - v = cimgmatlab_cannyderiche(u,sx,sy) 52.18 + - v = cimgmatlab_cannyderiche(u,sx,sy,sz) 52.19 + 52.20 + The corresponding m-file is cimgmatlab_cannyderiche.m 52.21 + 52.22 + 52.23 + Copyright : Francois Lauze - http://www.itu.dk/people/francois 52.24 + This software is governed by the Gnu General Public License 52.25 + see http://www.gnu.org/copyleft/gpl.html 52.26 + 52.27 + The plugin home page is at 52.28 + http://www.itu.dk/people/francois/cimgmatlab.html 52.29 + 52.30 + for the compilation: using the mex utility provided with matlab, just 52.31 + remember to add the -I flags with paths to CImg.h and/or cimgmatlab.h. 52.32 + The default lcc cannot be used, it is a C compiler and not a C++ one! 52.33 +--------------------------------------------------------------------------*/ 52.34 + 52.35 +function v = cimgmatlab_cannyderiche(u,sx,sy,sz) 52.36 +
53.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 53.2 +++ b/PTdecode/CImg-1.3.0/examples/use_draw_gradient.cpp Mon Aug 03 14:09:20 2009 +0100 53.3 @@ -0,0 +1,147 @@ 53.4 +/* 53.5 + # 53.6 + # File : use_draw_gradient.cpp 53.7 + # ( C++ source file ) 53.8 + # 53.9 + # Description : Example of use for the CImg plugin 'plugins/draw_gradient.h'. 53.10 + # This file is a part of the CImg Library project. 53.11 + # ( http://cimg.sourceforge.net ) 53.12 + # 53.13 + # Copyright : Jerome Boulanger 53.14 + # ( http://www.ricam.oeaw.ac.at/people/page.cgi?firstn=Jerome;lastn=Boulanger ) 53.15 + # 53.16 + # License : CeCILL v2.0 53.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 53.18 + # 53.19 + # This software is governed by the CeCILL license under French law and 53.20 + # abiding by the rules of distribution of free software. You can use, 53.21 + # modify and/ or redistribute the software under the terms of the CeCILL 53.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 53.23 + # "http://www.cecill.info". 53.24 + # 53.25 + # As a counterpart to the access to the source code and rights to copy, 53.26 + # modify and redistribute granted by the license, users are provided only 53.27 + # with a limited warranty and the software's author, the holder of the 53.28 + # economic rights, and the successive licensors have only limited 53.29 + # liability. 53.30 + # 53.31 + # In this respect, the user's attention is drawn to the risks associated 53.32 + # with loading, using, modifying and/or developing or reproducing the 53.33 + # software by the user in light of its specific status of free software, 53.34 + # that may mean that it is complicated to manipulate, and that also 53.35 + # therefore means that it is reserved for developers and experienced 53.36 + # professionals having in-depth computer knowledge. Users are therefore 53.37 + # encouraged to load and test the software's suitability as regards their 53.38 + # requirements in conditions enabling the security of their systems and/or 53.39 + # data to be ensured and, more generally, to use and operate it in the 53.40 + # same conditions as regards security. 53.41 + # 53.42 + # The fact that you are presently reading this means that you have had 53.43 + # knowledge of the CeCILL license and that you accept its terms. 53.44 + # 53.45 +*/ 53.46 + 53.47 +#define cimg_plugin "plugins/draw_gradient.h" 53.48 +#include "CImg.h" 53.49 +using namespace cimg_library; 53.50 + 53.51 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 53.52 +#ifdef cimg_use_visualcpp6 53.53 +#define std 53.54 +#endif 53.55 +#ifdef min 53.56 +#undef min 53.57 +#undef max 53.58 +#endif 53.59 + 53.60 +// Main procedure 53.61 +//--------------- 53.62 +int main(int argc,char **argv) { 53.63 + 53.64 + // Read command line arguments 53.65 + //---------------------------- 53.66 + cimg_usage("Example of the use of draw_gradient CImg plugin"); 53.67 + const char *const file_i = cimg_option("-i",(char*)0,"Input image"); 53.68 + const int shape = cimg_option("-s",1,"shape [0,6]"); 53.69 + const int profile = cimg_option("-p",0,"profile [0,7]"); 53.70 + 53.71 + // Define an image 53.72 + CImg<unsigned char> img; 53.73 + if (file_i) img.load(file_i).resize(-100,-100,-100,3); 53.74 + else img.assign(300,200,1,3,0); 53.75 + 53.76 + // Define the color of the gradient 53.77 + CImg<unsigned char> col(3); 53.78 + const unsigned char col1[3] = { 0,0,255 }, col2[3] = { 255,255,255 }; 53.79 + CImgDisplay disp(img,"Click and drag to create color gradient",0); 53.80 + while (!disp.is_closed && !disp.key) { 53.81 + 53.82 + // Get a vector direction from the user. 53.83 + const CImg<int> selection = img.get_select(disp,1); 53.84 + 53.85 + // Draw a gradient using the selected coordinated. 53.86 + col.rand(100,255); 53.87 + printf("Gradient with %s from color (%d,%d,%d) to (%d,%d,%d)\n", 53.88 + CImg<>::get_gradient_str(shape,profile),col(0),col(1),col(2),col1[0],col1[1],col2[2]); 53.89 + img.draw_gradient(selection(0),selection(1),selection(3),selection(4), 53.90 + col.ptr(),col1,shape,profile,.7f).display(disp); 53.91 + } 53.92 + 53.93 + // color 0 to transparency 53.94 + if (file_i) img.load(file_i).resize(-100,-100,-100,3); 53.95 + else img.assign(300,200,1,3,0); 53.96 + img.display(disp); 53.97 + disp.show().flush(); 53.98 + while (!disp.is_closed && !disp.key) { 53.99 + 53.100 + // Get a vector direction from the user. 53.101 + const CImg<int> selection = img.get_select(disp,1); 53.102 + 53.103 + // Draw a gradient using the selected coordinated. 53.104 + col.rand(100,255); 53.105 + printf("Gradient with %s from color (%d,%d,%d) to transparency\n", 53.106 + CImg<>::get_gradient_str(shape,profile),col(0),col(1),col(2)); 53.107 + img.draw_gradient(selection(0),selection(1),selection(3),selection(4), 53.108 + col.ptr(),0,shape,profile,.7f).display(disp); 53.109 + } 53.110 + 53.111 + 53.112 + // transparency to color 1 53.113 + if (file_i) img.load(file_i).resize(-100,-100,-100,3); 53.114 + else img.assign(300,200,1,3,0); 53.115 + img.display(disp); 53.116 + disp.show().flush(); 53.117 + while (!disp.is_closed && !disp.key) { 53.118 + 53.119 + // Get a vector direction from the user. 53.120 + const CImg<int> selection = img.get_select(disp,1); 53.121 + 53.122 + // Draw a gradient using the selected coordinated. 53.123 + col.rand(100,255); 53.124 + printf("Gradient with %s from transparency to color (%d,%d,%d)\n", 53.125 + CImg<>::get_gradient_str(shape,profile),col(0),col(1),col(2)); 53.126 + img.draw_gradient(selection(0),selection(1),selection(3),selection(4), 53.127 + 0,col.ptr(),shape,profile,.7f).display(disp); 53.128 + } 53.129 + 53.130 + // random 53.131 + if (file_i) img.load(file_i).resize(-100,-100,-100,3); 53.132 + else img.assign(300,200,1,3,0); 53.133 + disp.set_title("Random color gradient").show().flush(); 53.134 + CImg<unsigned char> visu(img); 53.135 + visu.display(disp); 53.136 + while (!disp.is_closed && !disp.key) { 53.137 + const int 53.138 + x = (int)(cimg::rand()*visu.dimx()), 53.139 + y = (int)(cimg::rand()*visu.dimy()), 53.140 + rx = (int)((cimg::rand()*25+5)*(cimg::rand()>.5?-1:1)), 53.141 + ry = (int)((cimg::rand()*25+5)*(cimg::rand()>.5?-1:1)); 53.142 + col.rand(64,255); 53.143 + img.draw_gradient(x,y,x+rx,y+ry,col.ptr(),0,shape,profile,.4f); 53.144 + visu = img; 53.145 + visu.draw_text(10,10,"%.1ffps",col2,0,1,11,disp.frames_per_second()).display(disp); 53.146 + if (disp.is_resized) disp.resize(); 53.147 + } 53.148 + 53.149 + return 0; 53.150 +}
54.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 54.2 +++ b/PTdecode/CImg-1.3.0/examples/use_greycstoration.cpp Mon Aug 03 14:09:20 2009 +0100 54.3 @@ -0,0 +1,138 @@ 54.4 +/* 54.5 + # 54.6 + # File : use_greycstoration.cpp 54.7 + # ( C++ source file ) 54.8 + # 54.9 + # Description : Example of use for the CImg plugin 'plugins/greycstoration.h'. 54.10 + # ( http://www.greyc.ensicaen.fr/~dtschump/greycstoration/ ) 54.11 + # This file is a part of the CImg Library project. 54.12 + # ( http://cimg.sourceforge.net ) 54.13 + # 54.14 + # THIS VERSION IS FOR DEVELOPERS ONLY. IT SHOWS AN EXAMPLE OF HOW THE 54.15 + # INTEGRATION OF THE GREYCSTORATION ALGORITHM CAN BE DONE IN 54.16 + # THIRD PARTIES SOFTWARES. IF YOU ARE A "USER" OF GREYCSTORATION, 54.17 + # PLEASE RATHER LOOK AT THE FILE 'greycstoration.cpp' WHICH IS THE 54.18 + # SOURCE OF THE COMPLETE COMMAND LINE GREYCSTORATION TOOL. 54.19 + # THE EXAMPLE FOCUS ON THE DENOISING ALGORITHM. FOR INPAINTING AND 54.20 + # IMAGE RESIZING, PLEASE LOOK AT THE COMPLETE GREYCSTORATION SOURCE CODE 54.21 + # (FILE 'greycstoration.cpp') 54.22 + # 54.23 + # Copyright : David Tschumperle 54.24 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 54.25 + # 54.26 + # License : CeCILL v2.0 54.27 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 54.28 + # 54.29 + # This software is governed by the CeCILL license under French law and 54.30 + # abiding by the rules of distribution of free software. You can use, 54.31 + # modify and/ or redistribute the software under the terms of the CeCILL 54.32 + # license as circulated by CEA, CNRS and INRIA at the following URL 54.33 + # "http://www.cecill.info". 54.34 + # 54.35 + # As a counterpart to the access to the source code and rights to copy, 54.36 + # modify and redistribute granted by the license, users are provided only 54.37 + # with a limited warranty and the software's author, the holder of the 54.38 + # economic rights, and the successive licensors have only limited 54.39 + # liability. 54.40 + # 54.41 + # In this respect, the user's attention is drawn to the risks associated 54.42 + # with loading, using, modifying and/or developing or reproducing the 54.43 + # software by the user in light of its specific status of free software, 54.44 + # that may mean that it is complicated to manipulate, and that also 54.45 + # therefore means that it is reserved for developers and experienced 54.46 + # professionals having in-depth computer knowledge. Users are therefore 54.47 + # encouraged to load and test the software's suitability as regards their 54.48 + # requirements in conditions enabling the security of their systems and/or 54.49 + # data to be ensured and, more generally, to use and operate it in the 54.50 + # same conditions as regards security. 54.51 + # 54.52 + # The fact that you are presently reading this means that you have had 54.53 + # knowledge of the CeCILL license and that you accept its terms. 54.54 + # 54.55 +*/ 54.56 + 54.57 +// Include the CImg Library, with the GREYCstoration plugin included 54.58 +#define cimg_plugin "plugins/greycstoration.h" 54.59 +#include "CImg.h" 54.60 +using namespace cimg_library; 54.61 +#if cimg_OS!=2 54.62 +#include <pthread.h> 54.63 +#endif 54.64 + 54.65 +// The lines below is necessary when using a non-standard compiler as visualcpp6. 54.66 +#ifdef cimg_use_visualcpp6 54.67 +#define std 54.68 +#endif 54.69 +#ifdef min 54.70 +#undef min 54.71 +#undef max 54.72 +#endif 54.73 + 54.74 +#ifndef cimg_imagepath 54.75 +#define cimg_imagepath "img/" 54.76 +#endif 54.77 + 54.78 +// Main procedure 54.79 +//---------------- 54.80 +int main(int argc,char **argv) { 54.81 + 54.82 + // Read algorithm parameters from the command line 54.83 + const char *file_i = cimg_option("-i",cimg_imagepath "milla.bmp","Input file"); 54.84 + const float amplitude = cimg_option("-dt",40.0f,"Regularization strength for one iteration (>=0)"); 54.85 + const unsigned int nb_iter = cimg_option("-iter",3,"Number of regularization iterations (>0)"); 54.86 + const float sharpness = cimg_option("-p",0.8f,"Contour preservation for regularization (>=0)"); 54.87 + const float anisotropy = cimg_option("-a",0.8f,"Regularization anisotropy (0<=a<=1)"); 54.88 + const float alpha = cimg_option("-alpha",0.6f,"Noise scale(>=0)"); 54.89 + const float sigma = cimg_option("-sigma",1.1f,"Geometry regularity (>=0)"); 54.90 + const bool fast_approx = cimg_option("-fast",true,"Use fast approximation for regularization (0 or 1)"); 54.91 + const float gauss_prec = cimg_option("-prec",2.0f,"Precision of the gaussian function for regularization (>0)"); 54.92 + const float dl = cimg_option("-dl",0.8f,"Spatial integration step for regularization (0<=dl<=1)"); 54.93 + const float da = cimg_option("-da",30.0f,"Angular integration step for regulatization (0<=da<=90)"); 54.94 + const unsigned int interp = cimg_option("-interp",0,"Interpolation type (0=Nearest-neighbor, 1=Linear, 2=Runge-Kutta)"); 54.95 + const unsigned int tile = cimg_option("-tile",0,"Use tiled mode (reduce memory usage"); 54.96 + const unsigned int btile = cimg_option("-btile",4,"Size of tile overlapping regions"); 54.97 + const unsigned int threads = cimg_option("-threads",1,"Number of threads used"); 54.98 + 54.99 + // Load input image (replace 'unsigned char' by 'unsigned short' to be able to process 16-bits/pixels). 54.100 + CImg<unsigned char> img(file_i); 54.101 + 54.102 + // Create display window 54.103 + CImgDisplay disp(img,"GREYCstoration"); 54.104 + 54.105 + // Begin iteration loop 54.106 + //--------------------- 54.107 + for (unsigned int iter=0; iter<nb_iter; iter++) { 54.108 + 54.109 + // This function will start a thread running one iteration of the GREYCstoration filter. 54.110 + // It returns immediately, so you can do what you want after (update a progress bar for instance). 54.111 + img.greycstoration_run(amplitude,sharpness,anisotropy,alpha,sigma,1.0f,dl,da,gauss_prec,interp,fast_approx,tile,btile,threads); 54.112 + 54.113 + // Here, we print the overall progress percentage. 54.114 + do { 54.115 + // pr_iteration is the progress percentage for the current iteration 54.116 + const float pr_iteration = img.greycstoration_progress(); 54.117 + 54.118 + // This simply computes the global progression indice (including all iterations) 54.119 + const unsigned int pr_global = (unsigned int)((iter*100 + pr_iteration)/nb_iter); 54.120 + 54.121 + // Display progress on window title and console. 54.122 + std::fprintf(stderr,"\rProgress : %u%%\t",pr_global); 54.123 + disp.set_title("GREYCstoration (%u%%)",pr_global); 54.124 + 54.125 + // Wait a little bit 54.126 + cimg::wait(100); 54.127 + 54.128 + // If the display window is closed, stop the algorithm 54.129 + if (disp.is_closed) img.greycstoration_stop(); 54.130 + 54.131 + } while (img.greycstoration_is_running()); 54.132 + 54.133 + img.display(disp); 54.134 + } 54.135 + std::fprintf(stderr,"\rDone ! \n\n"); 54.136 + 54.137 + disp.close(); 54.138 + img.display("GREYCstoration - Result"); 54.139 + 54.140 + return 0; 54.141 +}
55.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 55.2 +++ b/PTdecode/CImg-1.3.0/examples/use_jpeg_buffer.cpp Mon Aug 03 14:09:20 2009 +0100 55.3 @@ -0,0 +1,115 @@ 55.4 +/* 55.5 + # 55.6 + # File : use_jpeg_buffer.cpp 55.7 + # ( C++ source file ) 55.8 + # 55.9 + # Description : Example of use for the CImg plugin 'plugins/jpeg_buffer.h'. 55.10 + # This file is a part of the CImg Library project. 55.11 + # ( http://cimg.sourceforge.net ) 55.12 + # 55.13 + # Copyright : Paolo Prete 55.14 + # ( p4olo_prete(at)yahoo.it ) 55.15 + # 55.16 + # License : CeCILL v2.0 55.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 55.18 + # 55.19 + # This software is governed by the CeCILL license under French law and 55.20 + # abiding by the rules of distribution of free software. You can use, 55.21 + # modify and/ or redistribute the software under the terms of the CeCILL 55.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 55.23 + # "http://www.cecill.info". 55.24 + # 55.25 + # As a counterpart to the access to the source code and rights to copy, 55.26 + # modify and redistribute granted by the license, users are provided only 55.27 + # with a limited warranty and the software's author, the holder of the 55.28 + # economic rights, and the successive licensors have only limited 55.29 + # liability. 55.30 + # 55.31 + # In this respect, the user's attention is drawn to the risks associated 55.32 + # with loading, using, modifying and/or developing or reproducing the 55.33 + # software by the user in light of its specific status of free software, 55.34 + # that may mean that it is complicated to manipulate, and that also 55.35 + # therefore means that it is reserved for developers and experienced 55.36 + # professionals having in-depth computer knowledge. Users are therefore 55.37 + # encouraged to load and test the software's suitability as regards their 55.38 + # requirements in conditions enabling the security of their systems and/or 55.39 + # data to be ensured and, more generally, to use and operate it in the 55.40 + # same conditions as regards security. 55.41 + # 55.42 + # The fact that you are presently reading this means that you have had 55.43 + # knowledge of the CeCILL license and that you accept its terms. 55.44 + # 55.45 +*/ 55.46 + 55.47 +// These includes are necessary to get the plug-in compile ! 55.48 +#include <cstdio> 55.49 +#include <jpeglib.h> 55.50 +#include <jerror.h> 55.51 + 55.52 +// Define plugin and include the CImg Library. 55.53 +#define cimg_plugin "plugins/jpeg_buffer.h" 55.54 +#include "CImg.h" 55.55 +using namespace cimg_library; 55.56 + 55.57 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 55.58 +#ifdef cimg_use_visualcpp6 55.59 +#define std 55.60 +#endif 55.61 + 55.62 +// Main procedure 55.63 +//---------------- 55.64 +int main() { 55.65 + 55.66 + // Create a jpeg memory buffer from the content of a jpeg file. 55.67 + // (this is for testing purposes only) 55.68 + const char *filename_input = "foo.jpg"; 55.69 + std::fprintf(stderr," - Reading file '%s'\n",filename_input); 55.70 + std::FILE *file_input = std::fopen(filename_input,"rb"); 55.71 + if (!file_input) { std::fprintf(stderr,"Input JPEG file not found !"); std::exit(0); } 55.72 + 55.73 + std::fprintf(stderr," - Construct input JPEG-coded buffer\n"); 55.74 + unsigned buf_size = 500000; // Put the file size here ! 55.75 + JOCTET *buffer_input = new JOCTET[buf_size]; 55.76 + std::fread(buffer_input,sizeof(JOCTET),buf_size,file_input); 55.77 + std::fclose(file_input); 55.78 + // -> 'buffer_input' is now a valid jpeg-coded memory buffer. 55.79 + 55.80 + // Create a CImg instance from the jpeg-coded buffer using the plug-in function. 55.81 + std::fprintf(stderr," - Create CImg instance from JPEG-coded buffer\n"); 55.82 + CImg<unsigned char> img; 55.83 + img.load_jpeg_buffer(buffer_input, buf_size); 55.84 + delete[] buffer_input; 55.85 + 55.86 + // Do you image processing stuff here .... 55.87 + // Here, we just mirror the image and write "hello". 55.88 + std::fprintf(stderr," - Do simple processing\n"); 55.89 + const unsigned char purple[] = { 255, 0, 0 }; 55.90 + const unsigned char black[] = { 0, 0, 0 }; 55.91 + img.mirror('y').draw_text(0,0," Hello! ",purple,black,1,57); 55.92 + 55.93 + // Display image to see if everything's fine. 55.94 + img.display("Using 'jpeg_buffer.h' plugin"); 55.95 + 55.96 + // Define a new JOCTET array where the processed image has to be saved 55.97 + // (we don't know its dimension before compressing it, therefore we have to allocate enough memory ) 55.98 + std::fprintf(stderr," - Construct output JPEG-coded buffer\n"); 55.99 + JOCTET *buffer_output = new JOCTET[2*buf_size]; 55.100 + 55.101 + // Save processed image into this JOCTET buffer, compressed as jpeg. 55.102 + // This is done again by using the plug-in function. 55.103 + img.save_jpeg_buffer(buffer_output,buf_size,60); 55.104 + // Note that here, the variable 'buf_size' contains the length of the 55.105 + // data which have been written in the given output buffer. 55.106 + 55.107 + // Copy the content of the above array into a new file 55.108 + // (it should give you a valid JPEG file then !) 55.109 + const char *filename_output = "foo_output.jpg"; 55.110 + std::fprintf(stderr," - Save output file '%s'\n",filename_output); 55.111 + std::FILE* file_output = std::fopen(filename_output,"wb"); 55.112 + std::fwrite(buffer_output, sizeof(JOCTET), buf_size, file_output); 55.113 + std::fclose(file_output); 55.114 + delete[] buffer_output; 55.115 + 55.116 + std::fprintf(stderr," - All done !\n"); 55.117 + return 0; 55.118 +}
56.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 56.2 +++ b/PTdecode/CImg-1.3.0/examples/use_nlmeans.cpp Mon Aug 03 14:09:20 2009 +0100 56.3 @@ -0,0 +1,133 @@ 56.4 +/* 56.5 + # 56.6 + # File : use_nlmeans.cpp 56.7 + # ( C++ source file ) 56.8 + # 56.9 + # Description : Example of use for the CImg plugin 'plugins/nlmeans.h'. 56.10 + # This file is a part of the CImg Library project. 56.11 + # ( http://cimg.sourceforge.net ) 56.12 + # 56.13 + # Copyright : Jerome Boulanger 56.14 + # ( http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html ) 56.15 + # 56.16 + # Benchmark : (CPU intel pentium 4 2.60GHz) compiled with cimg_debug=0. 56.17 + # patch lambda* alpha T sigma PSNR 56.18 + # 3x3 15 9x9 3.6s 20 28.22 56.19 + # 5x5 17 15x15 22.2s 20 27.91 56.20 + # 7x7 42 21x21 80.0s 20 28.68 56.21 + # 56.22 + # License : CeCILL v2.0 56.23 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 56.24 + # 56.25 + # This software is governed by the CeCILL license under French law and 56.26 + # abiding by the rules of distribution of free software. You can use, 56.27 + # modify and/ or redistribute the software under the terms of the CeCILL 56.28 + # license as circulated by CEA, CNRS and INRIA at the following URL 56.29 + # "http://www.cecill.info". 56.30 + # 56.31 + # As a counterpart to the access to the source code and rights to copy, 56.32 + # modify and redistribute granted by the license, users are provided only 56.33 + # with a limited warranty and the software's author, the holder of the 56.34 + # economic rights, and the successive licensors have only limited 56.35 + # liability. 56.36 + # 56.37 + # In this respect, the user's attention is drawn to the risks associated 56.38 + # with loading, using, modifying and/or developing or reproducing the 56.39 + # software by the user in light of its specific status of free software, 56.40 + # that may mean that it is complicated to manipulate, and that also 56.41 + # therefore means that it is reserved for developers and experienced 56.42 + # professionals having in-depth computer knowledge. Users are therefore 56.43 + # encouraged to load and test the software's suitability as regards their 56.44 + # requirements in conditions enabling the security of their systems and/or 56.45 + # data to be ensured and, more generally, to use and operate it in the 56.46 + # same conditions as regards security. 56.47 + # 56.48 + # The fact that you are presently reading this means that you have had 56.49 + # knowledge of the CeCILL license and that you accept its terms. 56.50 + # 56.51 +*/ 56.52 + 56.53 +#define cimg_plugin "plugins/nlmeans.h" 56.54 +#include "CImg.h" 56.55 +using namespace cimg_library; 56.56 + 56.57 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 56.58 +#ifdef cimg_use_visualcpp6 56.59 +#define std 56.60 +#endif 56.61 +#ifdef min 56.62 +#undef min 56.63 +#undef max 56.64 +#endif 56.65 + 56.66 +#ifndef cimg_imagepath 56.67 +#define cimg_imagepath "img/" 56.68 +#endif 56.69 + 56.70 +int main(int argc,char **argv) { 56.71 + 56.72 + // Read command line argument s 56.73 + //----------------------------- 56.74 + cimg_usage("Non-local means denoising algorithm.\n [1] Buades, A. Coll, B. and Morel, J.: A review of image " 56.75 + "denoising algorithms, with a new one. Multiscale Modeling and Simulation: A SIAM Interdisciplinary " 56.76 + "Journal 4 (2004) 490-530 \n [2] Gasser, T. Sroka,L. Jennen Steinmetz,C. Residual variance and residual " 56.77 + "pattern nonlinear regression. Biometrika 73 (1986) 625-659 \n Build : "); 56.78 + 56.79 + // input/output and general options 56.80 + const char *file_i = cimg_option("-i",cimg_imagepath "milla.bmp","Input image"); 56.81 + const char *file_o = cimg_option("-o",(char*)NULL,"Output file"); 56.82 + const double zoom = cimg_option("-zoom",1.0,"Image magnification"); 56.83 + const double noiseg = cimg_option("-ng",0.0,"Add gauss noise before aplying the algorithm"); 56.84 + const double noiseu = cimg_option("-nu",0.0,"Add uniform noise before applying the algorithm"); 56.85 + const double noises = cimg_option("-ns",0.0,"Add salt&pepper noise before applying the algorithm"); 56.86 + const unsigned int visu = cimg_option("-visu",1,"Visualization step (0=no visualization)"); 56.87 + 56.88 + // non local means options 56.89 + const int patch_size = cimg_option("-p",1,"Half size of the patch (2p+1)x(2p+1)"); 56.90 + const float lambda = (float)cimg_option("-lambda",-1.0f,"Bandwidth as defined in [1] (-1 : automatic bandwidth)"); 56.91 + const double sigma = cimg_option("-sigma",-1,"Noise standard deviation (-1 : robust estimation)"); 56.92 + const int alpha = cimg_option("-alpha",3,"Neighborhood size (3)"); 56.93 + const int sampling = cimg_option("-sampling",1,"Sampling of the patch (1: slow, 2: fast)"); 56.94 + 56.95 + // Read image 56.96 + //------------ 56.97 + CImg<> img; 56.98 + if (file_i) { 56.99 + img = CImg<>(file_i); 56.100 + if (zoom>1) 56.101 + img.resize((int)(img.dimx()*zoom),(int)(img.dimy()*zoom),(int)(img.dimz()*zoom),-100,3); 56.102 + } else throw CImgException("You need to specify at least one input image (option -i)"); 56.103 + CImg<> original=img; 56.104 + 56.105 + // Add some noise 56.106 + //----------------- 56.107 + img.noise(noiseg,0).noise(noiseu,1).noise(noises,2); 56.108 + 56.109 + // Apply the filter 56.110 + //--------------------- 56.111 + long tic = cimg::time(); 56.112 + CImg<> dest; 56.113 + dest = img.get_nlmeans(patch_size,lambda,alpha,sigma,sampling); 56.114 + long tac = cimg::time(); 56.115 + 56.116 + // Save result 56.117 + //----------------- 56.118 + if (file_o) dest.cut(0,255.f).save(file_o); 56.119 + 56.120 + // Display (option -visu) 56.121 + //------------------- 56.122 + if (visu){ 56.123 + fprintf(stderr,"Image computed in %f s \n",(float)(tac-tic)/1000.); 56.124 + fprintf(stderr,"The pnsr is %f \n",20.*std::log10(255./std::sqrt( (dest-original).pow(2).sum()/original.size() ))); 56.125 + if (noiseg==0 && noiseu==0 && noises==0) 56.126 + CImgList<>(original,dest,((dest-original)*=2)+=128).display("Original + Restored + Estimated Noise"); 56.127 + 56.128 + else { 56.129 + CImgList<>(original,img,dest,((dest-img)*=2)+=128,((dest-original)*=2)+=128).display("Original + Noisy + Restored + Estimated Noise + Original Noise"); 56.130 + } 56.131 + } 56.132 + 56.133 + return 0; 56.134 +} 56.135 + 56.136 +
57.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 57.2 +++ b/PTdecode/CImg-1.3.0/examples/use_skeleton.cpp Mon Aug 03 14:09:20 2009 +0100 57.3 @@ -0,0 +1,124 @@ 57.4 +/* 57.5 + # 57.6 + # File : use_skeleton.cpp 57.7 + # ( C++ source file ) 57.8 + # 57.9 + # Description : Example of use for the CImg plugin 'plugins/skeleton.h'. 57.10 + # This file is a part of the CImg Library project. 57.11 + # ( http://cimg.sourceforge.net ) 57.12 + # 57.13 + # Copyright : Francois-Xavier Dupe 57.14 + # ( http://www.greyc.ensicaen.fr/~fdupe/ ) 57.15 + # 57.16 + # License : CeCILL v2.0 57.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 57.18 + # 57.19 + # This software is governed by the CeCILL license under French law and 57.20 + # abiding by the rules of distribution of free software. You can use, 57.21 + # modify and/ or redistribute the software under the terms of the CeCILL 57.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 57.23 + # "http://www.cecill.info". 57.24 + # 57.25 + # As a counterpart to the access to the source code and rights to copy, 57.26 + # modify and redistribute granted by the license, users are provided only 57.27 + # with a limited warranty and the software's author, the holder of the 57.28 + # economic rights, and the successive licensors have only limited 57.29 + # liability. 57.30 + # 57.31 + # In this respect, the user's attention is drawn to the risks associated 57.32 + # with loading, using, modifying and/or developing or reproducing the 57.33 + # software by the user in light of its specific status of free software, 57.34 + # that may mean that it is complicated to manipulate, and that also 57.35 + # therefore means that it is reserved for developers and experienced 57.36 + # professionals having in-depth computer knowledge. Users are therefore 57.37 + # encouraged to load and test the software's suitability as regards their 57.38 + # requirements in conditions enabling the security of their systems and/or 57.39 + # data to be ensured and, more generally, to use and operate it in the 57.40 + # same conditions as regards security. 57.41 + # 57.42 + # The fact that you are presently reading this means that you have had 57.43 + # knowledge of the CeCILL license and that you accept its terms. 57.44 + # 57.45 +*/ 57.46 + 57.47 +#include <queue> 57.48 +#define cimg_plugin "plugins/skeleton.h" 57.49 +#include "../CImg.h" 57.50 +using namespace cimg_library; 57.51 + 57.52 +#ifndef cimg_imagepath 57.53 +#define cimg_imagepath "img/" 57.54 +#endif 57.55 + 57.56 +int main (int argc, char **argv) { 57.57 + 57.58 + cimg_usage("Compute the skeleton of a shape, using Hamilton-Jacobi equations"); 57.59 + 57.60 + // Read command line arguments 57.61 + cimg_help("Input/Output options\n" 57.62 + "--------------------"); 57.63 + const char* file_i = cimg_option("-i",cimg_imagepath "milla.bmp","Input (black&white) image"); 57.64 + const int median = cimg_option("-median",0,"Apply median filter"); 57.65 + const bool invert = cimg_option("-inv",false,"Invert image values"); 57.66 + const char* file_o = cimg_option("-o",(char*)0,"Output skeleton image"); 57.67 + const bool display = cimg_option("-visu",true,"Display results"); 57.68 + 57.69 + cimg_help("Skeleton computation parameters\n" 57.70 + "-------------------------------"); 57.71 + const float thresh = cimg_option("-t",-0.3f,"Threshold"); 57.72 + const bool curve = cimg_option("-curve",false,"Create medial curve"); 57.73 + 57.74 + cimg_help("Torsello correction parameters\n" 57.75 + "------------------------------"); 57.76 + const bool correction = cimg_option("-corr",false,"Torsello correction"); 57.77 + const float dlt1 = 2; 57.78 + const float dlt2 = cimg_option("-dlt",1.0f,"Discrete step"); 57.79 + 57.80 + cimg_help("Sampling parameters\n" 57.81 + "-------------------"); 57.82 + const float sX = cimg_option("-sizeX",1.0f,"X-Size of the pixel/voxel"); 57.83 + const float sY = cimg_option("-sizeY",1.0f,"Y-Size of the pixel/voxel"); 57.84 + const float sZ = cimg_option("-sizeZ",1.0f,"Z-Size of the pixel/voxel"); 57.85 + 57.86 + // Load the image (forcing it to be scalar with 2 values { 0,1 }). 57.87 + CImg<unsigned int> image0(file_i), image = image0.get_pointwise_norm().quantize(2).normalize(0,1); 57.88 + if (median) image.blur_median(median); 57.89 + if (invert) (image-=1)*=-1; 57.90 + if (display) (image0.get_normalize(0,255)<<image.get_normalize(0,255)).display("Input image - Binary image"); 57.91 + 57.92 + // Compute distance map. 57.93 + CImgList<float> visu; 57.94 + CImg<float> distance = image.get_distance(0,sX,sY,sZ); 57.95 + if (display) visu.insert(distance); 57.96 + 57.97 + // Compute the gradient of the distance function, and the flux (divergence) of the gradient field. 57.98 + const CImgList<float> grad = distance.get_gradient("xyz"); 57.99 + CImg<float> flux = image.get_flux(grad,sY,sZ); 57.100 + if (display) visu.insert(flux); 57.101 + 57.102 + // Use the Torsello correction of the flux if necessary. 57.103 + if (correction) { 57.104 + CImg<float> 57.105 + logdensity = image.get_logdensity(distance,grad,flux,dlt1), 57.106 + nflux = image.get_corrected_flux(logdensity,grad,flux,dlt2); 57.107 + if (display) visu.insert(logdensity).insert(nflux); 57.108 + flux = nflux; 57.109 + } 57.110 + 57.111 + if (visu) { 57.112 + cimglist_apply(visu,normalize)(0,255); 57.113 + visu.display(visu.size==2?"Distance function - Flux":"Distance function - Flux - Log-density - Corrected flux"); 57.114 + } 57.115 + 57.116 + // Compute the skeleton 57.117 + const CImg<unsigned int> skel = image.get_skeleton(flux,distance,curve,thresh); 57.118 + if (display) { 57.119 + (image0.resize(-100,-100,1,3)*=0.7f).get_shared_channel(1)|=skel*255.0; 57.120 + image0.draw_image(0,0,0,0,image*255.0,0.5f).display("Image + Skeleton"); 57.121 + } 57.122 + 57.123 + // Save output image if necessary. 57.124 + if (file_o) skel.save(file_o); 57.125 + 57.126 + return 0; 57.127 +}
58.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 58.2 +++ b/PTdecode/CImg-1.3.0/examples/wavelet_atrous.cpp Mon Aug 03 14:09:20 2009 +0100 58.3 @@ -0,0 +1,234 @@ 58.4 +/* 58.5 + # 58.6 + # File : wavelet_atrous.cpp 58.7 + # ( C++ source file ) 58.8 + # 58.9 + # Description : Performs a 2D or 3D 'a trous' wavelet transform 58.10 + # (using a cubic spline) on an image or a video sequence. 58.11 + # This file is a part of the CImg Library project. 58.12 + # ( http://cimg.sourceforge.net ) 58.13 + # 58.14 + # Author : Renaud Peteri 58.15 + # ( Renaud.Peteri(at)mines-paris.org ) 58.16 + # 58.17 + # Institution : CWI, Amsterdam 58.18 + # 58.19 + # Date : February 2005 58.20 + # 58.21 + # References : Starck, J.-L., Murtagh, F. and Bijaoui, A., 58.22 + # Image Processing and Data Analysis: The Multiscale Approach, 58.23 + # Cambridge University Press, 1998. 58.24 + # (Hardback and softback, ISBN 0-521-59084-1 and 0-521-59914-8.) 58.25 + # 58.26 + # License : CeCILL v2.0 58.27 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 58.28 + # 58.29 + # This software is governed by the CeCILL license under French law and 58.30 + # abiding by the rules of distribution of free software. You can use, 58.31 + # modify and/ or redistribute the software under the terms of the CeCILL 58.32 + # license as circulated by CEA, CNRS and INRIA at the following URL 58.33 + # "http://www.cecill.info". 58.34 + # 58.35 + # As a counterpart to the access to the source code and rights to copy, 58.36 + # modify and redistribute granted by the license, users are provided only 58.37 + # with a limited warranty and the software's author, the holder of the 58.38 + # economic rights, and the successive licensors have only limited 58.39 + # liability. 58.40 + # 58.41 + # In this respect, the user's attention is drawn to the risks associated 58.42 + # with loading, using, modifying and/or developing or reproducing the 58.43 + # software by the user in light of its specific status of free software, 58.44 + # that may mean that it is complicated to manipulate, and that also 58.45 + # therefore means that it is reserved for developers and experienced 58.46 + # professionals having in-depth computer knowledge. Users are therefore 58.47 + # encouraged to load and test the software's suitability as regards their 58.48 + # requirements in conditions enabling the security of their systems and/or 58.49 + # data to be ensured and, more generally, to use and operate it in the 58.50 + # same conditions as regards security. 58.51 + # 58.52 + # The fact that you are presently reading this means that you have had 58.53 + # knowledge of the CeCILL license and that you accept its terms. 58.54 + # 58.55 +*/ 58.56 + 58.57 +#include "CImg.h" 58.58 +using namespace cimg_library; 58.59 + 58.60 +// The lines below are necessary when using a non-standard compiler as visualcpp6. 58.61 +#ifdef cimg_use_visualcpp6 58.62 +#define std 58.63 +#endif 58.64 +#ifdef min 58.65 +#undef min 58.66 +#undef max 58.67 +#endif 58.68 + 58.69 +#ifndef cimg_imagepath 58.70 +#define cimg_imagepath "img/" 58.71 +#endif 58.72 + 58.73 +CImg<float> mask_x(const unsigned char scale) { 58.74 + unsigned char d1 = (unsigned char)std::pow(2.0,(double)(scale-1)); 58.75 + unsigned char d2 = (unsigned char)std::pow(2.0,(double)(scale)); 58.76 + unsigned char cx = (unsigned char)std::pow(2.0,(double)(scale)); 58.77 + unsigned char res = (unsigned char)std::pow(2.0,(double)scale); 58.78 + CImg<float> m(2*res +1,1,1);m.fill(0); 58.79 + m(cx) = 6.0; 58.80 + m(cx-d1) = m(cx+d1) =4.0; 58.81 + m(cx-d2) = m(cx+d2) =1.0; 58.82 + m /= 16.0; 58.83 + return m; 58.84 +} 58.85 + 58.86 +CImg<float> mask_y(const unsigned char scale) { 58.87 + unsigned char d1 = (unsigned char)std::pow(2.0,(double)(scale-1)); 58.88 + unsigned char d2 = (unsigned char)std::pow(2.0,(double)(scale)); 58.89 + unsigned char cy = (unsigned char)std::pow(2.0,(double)(scale)); 58.90 + unsigned char res = (unsigned char)std::pow(2.0,(double)scale); 58.91 + CImg<float> m(1,2*res +1);m.fill(0); 58.92 + m(0,cy) = 6.0; 58.93 + m(0,cy-d1) = m(0,cy+d1) =4.0; 58.94 + m(0,cy-d2) = m(0,cy+d2) =1.0; 58.95 + m /= 16.0; 58.96 + return m; 58.97 +} 58.98 + 58.99 +CImg<float> mask_t(const unsigned char scale) { 58.100 + unsigned char d1 = (unsigned char)std::pow(2.0,(double)(scale-1)); 58.101 + unsigned char d2 = (unsigned char)std::pow(2.0,(double)(scale)); 58.102 + unsigned char ct = (unsigned char)std::pow(2.0,(double)(scale)); 58.103 + unsigned char res = (unsigned char)std::pow(2.0,(double)scale); 58.104 + CImg<float> m(1,1,2*res +1);m.fill(0); 58.105 + m(0,0,ct) = 6.0; 58.106 + m(0,0,ct-d1) = m(0,0,ct+d1) =4.0; 58.107 + m(0,0,ct-d2) = m(0,0,ct+d2) =1.0; 58.108 + m /= 16.0; 58.109 + return m; 58.110 +} 58.111 + 58.112 +/*------------------ 58.113 + Main procedure 58.114 + ----------------*/ 58.115 +int main(int argc,char **argv) { 58.116 + 58.117 + cimg_usage("Perform an 'a trous' wavelet transform (using a cubic spline) on an image or on a video sequence.\n" 58.118 + "This wavelet transform is undecimated and produces 2 images/videos at each scale. For an example of\n" 58.119 + "decomposition on a video, try -i img/trees.inr (sequence from the MIT).\n" 58.120 + "\t(Type -h for help)"); 58.121 + 58.122 + // Read command line parameters 58.123 + const char 58.124 + *name_i = cimg_option("-i",cimg_imagepath "lena.pgm","Input image or video"), 58.125 + *name_o = cimg_option("-o","","Name of the multiscale analysis output"), 58.126 + *axe_dec = cimg_option("-axe",(char*)NULL,"Perform the multiscale decomposition in just one direction ('x', 'y' or 't')"); 58.127 + const unsigned int 58.128 + s = cimg_option("-s",3,"Scale of decomposition"); 58.129 + 58.130 + const bool help = cimg_option("-h",false,"Display Help"); 58.131 + if(help) exit(0); 58.132 + 58.133 + // Initialize Image Data 58.134 + std::fprintf(stderr," - Load image sequence '%s'...\n",cimg::basename(name_i)); 58.135 + const CImg<float> texture_in(name_i); 58.136 + CImg<float> mask_conv_x, mask_conv_y, mask_conv_t; 58.137 + CImgList<float> res(s, texture_in.dimx(),texture_in.dimy(),texture_in.dimz()); 58.138 + CImgList<float> wav(s,texture_in.dimx(), texture_in.dimy(), texture_in.dimz()); 58.139 + cimglist_for(res,l) { res(l).fill(0.0); wav(l).fill(0.0);} 58.140 + unsigned int i; 58.141 + 58.142 + if (!axe_dec){ 58.143 + // Perform the multiscale decomposition in all directions 58.144 + for(i=0;i<s;i++){ 58.145 + std::fprintf(stderr," - Performing scale %u ...\n",i+1); 58.146 + if(i==0){ res(i) = texture_in;} else { res(i) = res(i-1);} 58.147 + mask_conv_x = mask_x(i+1); 58.148 + res(i) = res(i).get_convolve(mask_conv_x); 58.149 + mask_conv_y = mask_y(i+1); 58.150 + res(i) = res(i).get_convolve(mask_conv_y); 58.151 + mask_conv_t = mask_t(i+1); 58.152 + res(i) = res(i).get_convolve(mask_conv_t); 58.153 + if(i==0){wav(i) = texture_in - res(i);} // res(0) and wav(0) are the 1st scale of decompostion 58.154 + else {wav(i) = res(i-1) - res(i);} 58.155 + } } 58.156 + 58.157 + if (axe_dec) { 58.158 + // Perform the multiscale decomposition in just one direction 58.159 + char c; 58.160 + c = cimg::uncase(axe_dec[0]); 58.161 + fprintf(stderr," - Decompose the image along axe '%c'\n",c); fflush(stdout); 58.162 + 58.163 + switch(c) { 58.164 + case 'x': { 58.165 + for(i=0;i<s;i++) { 58.166 + std::fprintf(stderr," - Performing scale %u ...\n",i+1); 58.167 + if(i==0){ res(i) = texture_in;} else { res(i) = res(i-1);} 58.168 + mask_conv_x = mask_x(i+1); 58.169 + res(i) = res(i).get_convolve(mask_conv_x); 58.170 + if(i==0){wav(i) = texture_in - res(i);} 58.171 + else {wav(i) = res(i-1) - res(i);}}} 58.172 + break; 58.173 + 58.174 + case 'y': { 58.175 + for(i=0;i<s;i++) { 58.176 + std::fprintf(stderr," - Performing scale %u ...\n",i+1); 58.177 + if(i==0){ res(i) = texture_in;} else { res(i) = res(i-1);} 58.178 + mask_conv_y = mask_y(i+1); 58.179 + res(i) = res(i).get_convolve(mask_conv_y); 58.180 + if(i==0){wav(i) = texture_in - res(i);} 58.181 + else {wav(i) = res(i-1) - res(i);}}} 58.182 + break; 58.183 + 58.184 + case 't': { 58.185 + for(i=0;i<s;i++) { 58.186 + std::fprintf(stderr," - Performing scale %u ...\n",i+1); 58.187 + if(i==0){ res(i) = texture_in;} else { res(i) = res(i-1);} 58.188 + mask_conv_t = mask_t(i+1); 58.189 + res(i) = res(i).get_convolve(mask_conv_t); 58.190 + if(i==0){wav(i) = texture_in - res(i);} 58.191 + else {wav(i) = res(i-1) - res(i);}}} 58.192 + break; 58.193 + 58.194 + default: throw CImgException("Error, unknow decompostion axe '%c', try 'x', 'y' or 't'",c); 58.195 + } 58.196 + fputc('\n',stderr); 58.197 + } 58.198 + 58.199 + if (*name_o){ 58.200 + // Save the Multi-Scale Analysis 58.201 + std::fprintf(stderr," - Saving of all output sequences : %s in the msa/ directory... \n",cimg::basename(name_o)); 58.202 + int count = 1; // res0 = original image 58.203 + char filename[256] = "", filename_wav[256] = ""; 58.204 + char STmp[3] = ""; 58.205 + system("mkdir msa"); 58.206 + for(i=0;i<s;i++){ 58.207 + strcpy( filename, "msa/res" ); 58.208 + strcpy( filename_wav, "msa/wav" ); 58.209 + if( count < 10 ) 58.210 + { strcat( filename, "0" );strcat( filename_wav, "0" );} 58.211 + sprintf( STmp, "%d_", count ); 58.212 + strcat( filename, STmp ); strcat( filename_wav, STmp ); 58.213 + strcat( filename,name_o);strcat( filename_wav,name_o); 58.214 + res(i).save(filename); 58.215 + wav(i).save(filename_wav); 58.216 + count++; 58.217 + } 58.218 + } 58.219 + 58.220 + // Result visualization 58.221 + const float value = 255; 58.222 + for(i=0;i<s;i++) { 58.223 + res[i].normalize(0,255).draw_text(2,2,"Scale %d",&value,0,1,11,i); 58.224 + wav[i].normalize(0,255).draw_text(2,2,"Scale %d",&value,0,1,11,i); 58.225 + } 58.226 + 58.227 + CImgDisplay disp(res,"Approximations levels by increasing scale",0); 58.228 + CImgDisplay disp2(wav,"Wavelet coefficients by increasing scale",0); 58.229 + while ( !disp.is_closed && !disp.is_keyQ && !disp.is_keyESC && 58.230 + !disp2.is_closed && !disp2.is_keyQ && !disp2.is_keyESC ) { 58.231 + if (disp.is_resized) disp.resize().display(res); 58.232 + if (disp2.is_resized) disp2.resize().display(wav); 58.233 + CImgDisplay::wait(disp,disp2); 58.234 + } 58.235 + 58.236 + return 0; 58.237 +}
59.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 59.2 +++ b/PTdecode/CImg-1.3.0/html/CImg.doxygen Mon Aug 03 14:09:20 2009 +0100 59.3 @@ -0,0 +1,1473 @@ 59.4 +# Doxyfile 1.5.7.1 59.5 + 59.6 +# This file describes the settings to be used by the documentation system 59.7 +# doxygen (www.doxygen.org) for a project 59.8 +# 59.9 +# All text after a hash (#) is considered a comment and will be ignored 59.10 +# The format is: 59.11 +# TAG = value [value, ...] 59.12 +# For lists items can also be appended using: 59.13 +# TAG += value [value, ...] 59.14 +# Values that contain spaces should be placed between quotes (" ") 59.15 + 59.16 +#--------------------------------------------------------------------------- 59.17 +# Project related configuration options 59.18 +#--------------------------------------------------------------------------- 59.19 + 59.20 +# This tag specifies the encoding used for all characters in the config file 59.21 +# that follow. The default is UTF-8 which is also the encoding used for all 59.22 +# text before the first occurrence of this tag. Doxygen uses libiconv (or the 59.23 +# iconv built into libc) for the transcoding. See 59.24 +# http://www.gnu.org/software/libiconv for the list of possible encodings. 59.25 + 59.26 +DOXYFILE_ENCODING = UTF-8 59.27 + 59.28 +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 59.29 +# by quotes) that should identify the project. 59.30 + 59.31 +PROJECT_NAME = The CImg Library 59.32 + 59.33 +# The PROJECT_NUMBER tag can be used to enter a project or revision number. 59.34 +# This could be handy for archiving the generated documentation or 59.35 +# if some version control system is used. 59.36 + 59.37 +PROJECT_NUMBER = 1.3.0 59.38 + 59.39 +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 59.40 +# base path where the generated documentation will be put. 59.41 +# If a relative path is entered, it will be relative to the location 59.42 +# where doxygen was started. If left blank the current directory will be used. 59.43 + 59.44 +OUTPUT_DIRECTORY = 59.45 + 59.46 +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 59.47 +# 4096 sub-directories (in 2 levels) under the output directory of each output 59.48 +# format and will distribute the generated files over these directories. 59.49 +# Enabling this option can be useful when feeding doxygen a huge amount of 59.50 +# source files, where putting all generated files in the same directory would 59.51 +# otherwise cause performance problems for the file system. 59.52 + 59.53 +CREATE_SUBDIRS = NO 59.54 + 59.55 +# The OUTPUT_LANGUAGE tag is used to specify the language in which all 59.56 +# documentation generated by doxygen is written. Doxygen will use this 59.57 +# information to generate all constant output in the proper language. 59.58 +# The default language is English, other supported languages are: 59.59 +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 59.60 +# Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, 59.61 +# Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), 59.62 +# Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, 59.63 +# Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, Slovene, 59.64 +# Spanish, Swedish, and Ukrainian. 59.65 + 59.66 +OUTPUT_LANGUAGE = English 59.67 + 59.68 +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 59.69 +# include brief member descriptions after the members that are listed in 59.70 +# the file and class documentation (similar to JavaDoc). 59.71 +# Set to NO to disable this. 59.72 + 59.73 +BRIEF_MEMBER_DESC = YES 59.74 + 59.75 +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 59.76 +# the brief description of a member or function before the detailed description. 59.77 +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 59.78 +# brief descriptions will be completely suppressed. 59.79 + 59.80 +REPEAT_BRIEF = YES 59.81 + 59.82 +# This tag implements a quasi-intelligent brief description abbreviator 59.83 +# that is used to form the text in various listings. Each string 59.84 +# in this list, if found as the leading text of the brief description, will be 59.85 +# stripped from the text and the result after processing the whole list, is 59.86 +# used as the annotated text. Otherwise, the brief description is used as-is. 59.87 +# If left blank, the following values are used ("$name" is automatically 59.88 +# replaced with the name of the entity): "The $name class" "The $name widget" 59.89 +# "The $name file" "is" "provides" "specifies" "contains" 59.90 +# "represents" "a" "an" "the" 59.91 + 59.92 +ABBREVIATE_BRIEF = 59.93 + 59.94 +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 59.95 +# Doxygen will generate a detailed section even if there is only a brief 59.96 +# description. 59.97 + 59.98 +ALWAYS_DETAILED_SEC = NO 59.99 + 59.100 +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 59.101 +# inherited members of a class in the documentation of that class as if those 59.102 +# members were ordinary class members. Constructors, destructors and assignment 59.103 +# operators of the base classes will not be shown. 59.104 + 59.105 +INLINE_INHERITED_MEMB = NO 59.106 + 59.107 +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 59.108 +# path before files name in the file list and in the header files. If set 59.109 +# to NO the shortest path that makes the file name unique will be used. 59.110 + 59.111 +FULL_PATH_NAMES = NO 59.112 + 59.113 +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 59.114 +# can be used to strip a user-defined part of the path. Stripping is 59.115 +# only done if one of the specified strings matches the left-hand part of 59.116 +# the path. The tag can be used to show relative paths in the file list. 59.117 +# If left blank the directory from which doxygen is run is used as the 59.118 +# path to strip. 59.119 + 59.120 +STRIP_FROM_PATH = 59.121 + 59.122 +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 59.123 +# the path mentioned in the documentation of a class, which tells 59.124 +# the reader which header file to include in order to use a class. 59.125 +# If left blank only the name of the header file containing the class 59.126 +# definition is used. Otherwise one should specify the include paths that 59.127 +# are normally passed to the compiler using the -I flag. 59.128 + 59.129 +STRIP_FROM_INC_PATH = 59.130 + 59.131 +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 59.132 +# (but less readable) file names. This can be useful is your file systems 59.133 +# doesn't support long names like on DOS, Mac, or CD-ROM. 59.134 + 59.135 +SHORT_NAMES = NO 59.136 + 59.137 +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 59.138 +# will interpret the first line (until the first dot) of a JavaDoc-style 59.139 +# comment as the brief description. If set to NO, the JavaDoc 59.140 +# comments will behave just like regular Qt-style comments 59.141 +# (thus requiring an explicit @brief command for a brief description.) 59.142 + 59.143 +JAVADOC_AUTOBRIEF = NO 59.144 + 59.145 +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will 59.146 +# interpret the first line (until the first dot) of a Qt-style 59.147 +# comment as the brief description. If set to NO, the comments 59.148 +# will behave just like regular Qt-style comments (thus requiring 59.149 +# an explicit \brief command for a brief description.) 59.150 + 59.151 +QT_AUTOBRIEF = NO 59.152 + 59.153 +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 59.154 +# treat a multi-line C++ special comment block (i.e. a block of //! or /// 59.155 +# comments) as a brief description. This used to be the default behaviour. 59.156 +# The new default is to treat a multi-line C++ comment block as a detailed 59.157 +# description. Set this tag to YES if you prefer the old behaviour instead. 59.158 + 59.159 +MULTILINE_CPP_IS_BRIEF = YES 59.160 + 59.161 +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 59.162 +# member inherits the documentation from any documented member that it 59.163 +# re-implements. 59.164 + 59.165 +INHERIT_DOCS = YES 59.166 + 59.167 +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 59.168 +# a new page for each member. If set to NO, the documentation of a member will 59.169 +# be part of the file/class/namespace that contains it. 59.170 + 59.171 +SEPARATE_MEMBER_PAGES = NO 59.172 + 59.173 +# The TAB_SIZE tag can be used to set the number of spaces in a tab. 59.174 +# Doxygen uses this value to replace tabs by spaces in code fragments. 59.175 + 59.176 +TAB_SIZE = 8 59.177 + 59.178 +# This tag can be used to specify a number of aliases that acts 59.179 +# as commands in the documentation. An alias has the form "name=value". 59.180 +# For example adding "sideeffect=\par Side Effects:\n" will allow you to 59.181 +# put the command \sideeffect (or @sideeffect) in the documentation, which 59.182 +# will result in a user-defined paragraph with heading "Side Effects:". 59.183 +# You can put \n's in the value part of an alias to insert newlines. 59.184 + 59.185 +ALIASES = 59.186 + 59.187 +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 59.188 +# sources only. Doxygen will then generate output that is more tailored for C. 59.189 +# For instance, some of the names that are used will be different. The list 59.190 +# of all members will be omitted, etc. 59.191 + 59.192 +OPTIMIZE_OUTPUT_FOR_C = NO 59.193 + 59.194 +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 59.195 +# sources only. Doxygen will then generate output that is more tailored for 59.196 +# Java. For instance, namespaces will be presented as packages, qualified 59.197 +# scopes will look different, etc. 59.198 + 59.199 +OPTIMIZE_OUTPUT_JAVA = NO 59.200 + 59.201 +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran 59.202 +# sources only. Doxygen will then generate output that is more tailored for 59.203 +# Fortran. 59.204 + 59.205 +OPTIMIZE_FOR_FORTRAN = NO 59.206 + 59.207 +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL 59.208 +# sources. Doxygen will then generate output that is tailored for 59.209 +# VHDL. 59.210 + 59.211 +OPTIMIZE_OUTPUT_VHDL = NO 59.212 + 59.213 +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want 59.214 +# to include (a tag file for) the STL sources as input, then you should 59.215 +# set this tag to YES in order to let doxygen match functions declarations and 59.216 +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 59.217 +# func(std::string) {}). This also make the inheritance and collaboration 59.218 +# diagrams that involve STL classes more complete and accurate. 59.219 + 59.220 +BUILTIN_STL_SUPPORT = NO 59.221 + 59.222 +# If you use Microsoft's C++/CLI language, you should set this option to YES to 59.223 +# enable parsing support. 59.224 + 59.225 +CPP_CLI_SUPPORT = NO 59.226 + 59.227 +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. 59.228 +# Doxygen will parse them like normal C++ but will assume all classes use public 59.229 +# instead of private inheritance when no explicit protection keyword is present. 59.230 + 59.231 +SIP_SUPPORT = NO 59.232 + 59.233 +# For Microsoft's IDL there are propget and propput attributes to indicate getter 59.234 +# and setter methods for a property. Setting this option to YES (the default) 59.235 +# will make doxygen to replace the get and set methods by a property in the 59.236 +# documentation. This will only work if the methods are indeed getting or 59.237 +# setting a simple type. If this is not the case, or you want to show the 59.238 +# methods anyway, you should set this option to NO. 59.239 + 59.240 +IDL_PROPERTY_SUPPORT = YES 59.241 + 59.242 +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 59.243 +# tag is set to YES, then doxygen will reuse the documentation of the first 59.244 +# member in the group (if any) for the other members of the group. By default 59.245 +# all members of a group must be documented explicitly. 59.246 + 59.247 +DISTRIBUTE_GROUP_DOC = NO 59.248 + 59.249 +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 59.250 +# the same type (for instance a group of public functions) to be put as a 59.251 +# subgroup of that type (e.g. under the Public Functions section). Set it to 59.252 +# NO to prevent subgrouping. Alternatively, this can be done per class using 59.253 +# the \nosubgrouping command. 59.254 + 59.255 +SUBGROUPING = YES 59.256 + 59.257 +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum 59.258 +# is documented as struct, union, or enum with the name of the typedef. So 59.259 +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct 59.260 +# with name TypeT. When disabled the typedef will appear as a member of a file, 59.261 +# namespace, or class. And the struct will be named TypeS. This can typically 59.262 +# be useful for C code in case the coding convention dictates that all compound 59.263 +# types are typedef'ed and only the typedef is referenced, never the tag name. 59.264 + 59.265 +TYPEDEF_HIDES_STRUCT = NO 59.266 + 59.267 +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to 59.268 +# determine which symbols to keep in memory and which to flush to disk. 59.269 +# When the cache is full, less often used symbols will be written to disk. 59.270 +# For small to medium size projects (<1000 input files) the default value is 59.271 +# probably good enough. For larger projects a too small cache size can cause 59.272 +# doxygen to be busy swapping symbols to and from disk most of the time 59.273 +# causing a significant performance penality. 59.274 +# If the system has enough physical memory increasing the cache will improve the 59.275 +# performance by keeping more symbols in memory. Note that the value works on 59.276 +# a logarithmic scale so increasing the size by one will rougly double the 59.277 +# memory usage. The cache size is given by this formula: 59.278 +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, 59.279 +# corresponding to a cache size of 2^16 = 65536 symbols 59.280 + 59.281 +SYMBOL_CACHE_SIZE = 0 59.282 + 59.283 +#--------------------------------------------------------------------------- 59.284 +# Build related configuration options 59.285 +#--------------------------------------------------------------------------- 59.286 + 59.287 +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 59.288 +# documentation are documented, even if no documentation was available. 59.289 +# Private class members and static file members will be hidden unless 59.290 +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES 59.291 + 59.292 +EXTRACT_ALL = NO 59.293 + 59.294 +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 59.295 +# will be included in the documentation. 59.296 + 59.297 +EXTRACT_PRIVATE = NO 59.298 + 59.299 +# If the EXTRACT_STATIC tag is set to YES all static members of a file 59.300 +# will be included in the documentation. 59.301 + 59.302 +EXTRACT_STATIC = NO 59.303 + 59.304 +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 59.305 +# defined locally in source files will be included in the documentation. 59.306 +# If set to NO only classes defined in header files are included. 59.307 + 59.308 +EXTRACT_LOCAL_CLASSES = NO 59.309 + 59.310 +# This flag is only useful for Objective-C code. When set to YES local 59.311 +# methods, which are defined in the implementation section but not in 59.312 +# the interface are included in the documentation. 59.313 +# If set to NO (the default) only methods in the interface are included. 59.314 + 59.315 +EXTRACT_LOCAL_METHODS = NO 59.316 + 59.317 +# If this flag is set to YES, the members of anonymous namespaces will be 59.318 +# extracted and appear in the documentation as a namespace called 59.319 +# 'anonymous_namespace{file}', where file will be replaced with the base 59.320 +# name of the file that contains the anonymous namespace. By default 59.321 +# anonymous namespace are hidden. 59.322 + 59.323 +EXTRACT_ANON_NSPACES = NO 59.324 + 59.325 +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 59.326 +# undocumented members of documented classes, files or namespaces. 59.327 +# If set to NO (the default) these members will be included in the 59.328 +# various overviews, but no documentation section is generated. 59.329 +# This option has no effect if EXTRACT_ALL is enabled. 59.330 + 59.331 +HIDE_UNDOC_MEMBERS = YES 59.332 + 59.333 +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 59.334 +# undocumented classes that are normally visible in the class hierarchy. 59.335 +# If set to NO (the default) these classes will be included in the various 59.336 +# overviews. This option has no effect if EXTRACT_ALL is enabled. 59.337 + 59.338 +HIDE_UNDOC_CLASSES = YES 59.339 + 59.340 +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 59.341 +# friend (class|struct|union) declarations. 59.342 +# If set to NO (the default) these declarations will be included in the 59.343 +# documentation. 59.344 + 59.345 +HIDE_FRIEND_COMPOUNDS = NO 59.346 + 59.347 +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 59.348 +# documentation blocks found inside the body of a function. 59.349 +# If set to NO (the default) these blocks will be appended to the 59.350 +# function's detailed documentation block. 59.351 + 59.352 +HIDE_IN_BODY_DOCS = NO 59.353 + 59.354 +# The INTERNAL_DOCS tag determines if documentation 59.355 +# that is typed after a \internal command is included. If the tag is set 59.356 +# to NO (the default) then the documentation will be excluded. 59.357 +# Set it to YES to include the internal documentation. 59.358 + 59.359 +INTERNAL_DOCS = NO 59.360 + 59.361 +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 59.362 +# file names in lower-case letters. If set to YES upper-case letters are also 59.363 +# allowed. This is useful if you have classes or files whose names only differ 59.364 +# in case and if your file system supports case sensitive file names. Windows 59.365 +# and Mac users are advised to set this option to NO. 59.366 + 59.367 +CASE_SENSE_NAMES = YES 59.368 + 59.369 +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 59.370 +# will show members with their full class and namespace scopes in the 59.371 +# documentation. If set to YES the scope will be hidden. 59.372 + 59.373 +HIDE_SCOPE_NAMES = YES 59.374 + 59.375 +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 59.376 +# will put a list of the files that are included by a file in the documentation 59.377 +# of that file. 59.378 + 59.379 +SHOW_INCLUDE_FILES = NO 59.380 + 59.381 +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 59.382 +# is inserted in the documentation for inline members. 59.383 + 59.384 +INLINE_INFO = YES 59.385 + 59.386 +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 59.387 +# will sort the (detailed) documentation of file and class members 59.388 +# alphabetically by member name. If set to NO the members will appear in 59.389 +# declaration order. 59.390 + 59.391 +SORT_MEMBER_DOCS = NO 59.392 + 59.393 +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 59.394 +# brief documentation of file, namespace and class members alphabetically 59.395 +# by member name. If set to NO (the default) the members will appear in 59.396 +# declaration order. 59.397 + 59.398 +SORT_BRIEF_DOCS = NO 59.399 + 59.400 +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the 59.401 +# hierarchy of group names into alphabetical order. If set to NO (the default) 59.402 +# the group names will appear in their defined order. 59.403 + 59.404 +SORT_GROUP_NAMES = NO 59.405 + 59.406 +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 59.407 +# sorted by fully-qualified names, including namespaces. If set to 59.408 +# NO (the default), the class list will be sorted only by class name, 59.409 +# not including the namespace part. 59.410 +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. 59.411 +# Note: This option applies only to the class list, not to the 59.412 +# alphabetical list. 59.413 + 59.414 +SORT_BY_SCOPE_NAME = NO 59.415 + 59.416 +# The GENERATE_TODOLIST tag can be used to enable (YES) or 59.417 +# disable (NO) the todo list. This list is created by putting \todo 59.418 +# commands in the documentation. 59.419 + 59.420 +GENERATE_TODOLIST = NO 59.421 + 59.422 +# The GENERATE_TESTLIST tag can be used to enable (YES) or 59.423 +# disable (NO) the test list. This list is created by putting \test 59.424 +# commands in the documentation. 59.425 + 59.426 +GENERATE_TESTLIST = NO 59.427 + 59.428 +# The GENERATE_BUGLIST tag can be used to enable (YES) or 59.429 +# disable (NO) the bug list. This list is created by putting \bug 59.430 +# commands in the documentation. 59.431 + 59.432 +GENERATE_BUGLIST = NO 59.433 + 59.434 +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 59.435 +# disable (NO) the deprecated list. This list is created by putting 59.436 +# \deprecated commands in the documentation. 59.437 + 59.438 +GENERATE_DEPRECATEDLIST= NO 59.439 + 59.440 +# The ENABLED_SECTIONS tag can be used to enable conditional 59.441 +# documentation sections, marked by \if sectionname ... \endif. 59.442 + 59.443 +ENABLED_SECTIONS = 59.444 + 59.445 +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 59.446 +# the initial value of a variable or define consists of for it to appear in 59.447 +# the documentation. If the initializer consists of more lines than specified 59.448 +# here it will be hidden. Use a value of 0 to hide initializers completely. 59.449 +# The appearance of the initializer of individual variables and defines in the 59.450 +# documentation can be controlled using \showinitializer or \hideinitializer 59.451 +# command in the documentation regardless of this setting. 59.452 + 59.453 +MAX_INITIALIZER_LINES = 30 59.454 + 59.455 +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 59.456 +# at the bottom of the documentation of classes and structs. If set to YES the 59.457 +# list will mention the files that were used to generate the documentation. 59.458 + 59.459 +SHOW_USED_FILES = NO 59.460 + 59.461 +# If the sources in your project are distributed over multiple directories 59.462 +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 59.463 +# in the documentation. The default is NO. 59.464 + 59.465 +SHOW_DIRECTORIES = NO 59.466 + 59.467 +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. 59.468 +# This will remove the Files entry from the Quick Index and from the 59.469 +# Folder Tree View (if specified). The default is YES. 59.470 + 59.471 +SHOW_FILES = NO 59.472 + 59.473 +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the 59.474 +# Namespaces page. This will remove the Namespaces entry from the Quick Index 59.475 +# and from the Folder Tree View (if specified). The default is YES. 59.476 + 59.477 +SHOW_NAMESPACES = YES 59.478 + 59.479 +# The FILE_VERSION_FILTER tag can be used to specify a program or script that 59.480 +# doxygen should invoke to get the current version for each file (typically from 59.481 +# the version control system). Doxygen will invoke the program by executing (via 59.482 +# popen()) the command <command> <input-file>, where <command> is the value of 59.483 +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 59.484 +# provided by doxygen. Whatever the program writes to standard output 59.485 +# is used as the file version. See the manual for examples. 59.486 + 59.487 +FILE_VERSION_FILTER = 59.488 + 59.489 +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by 59.490 +# doxygen. The layout file controls the global structure of the generated output files 59.491 +# in an output format independent way. The create the layout file that represents 59.492 +# doxygen's defaults, run doxygen with the -l option. You can optionally specify a 59.493 +# file name after the option, if omitted DoxygenLayout.xml will be used as the name 59.494 +# of the layout file. 59.495 + 59.496 +LAYOUT_FILE = 59.497 + 59.498 +#--------------------------------------------------------------------------- 59.499 +# configuration options related to warning and progress messages 59.500 +#--------------------------------------------------------------------------- 59.501 + 59.502 +# The QUIET tag can be used to turn on/off the messages that are generated 59.503 +# by doxygen. Possible values are YES and NO. If left blank NO is used. 59.504 + 59.505 +QUIET = NO 59.506 + 59.507 +# The WARNINGS tag can be used to turn on/off the warning messages that are 59.508 +# generated by doxygen. Possible values are YES and NO. If left blank 59.509 +# NO is used. 59.510 + 59.511 +WARNINGS = YES 59.512 + 59.513 +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 59.514 +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 59.515 +# automatically be disabled. 59.516 + 59.517 +WARN_IF_UNDOCUMENTED = YES 59.518 + 59.519 +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 59.520 +# potential errors in the documentation, such as not documenting some 59.521 +# parameters in a documented function, or documenting parameters that 59.522 +# don't exist or using markup commands wrongly. 59.523 + 59.524 +WARN_IF_DOC_ERROR = YES 59.525 + 59.526 +# This WARN_NO_PARAMDOC option can be abled to get warnings for 59.527 +# functions that are documented, but have no documentation for their parameters 59.528 +# or return value. If set to NO (the default) doxygen will only warn about 59.529 +# wrong or incomplete parameter documentation, but not about the absence of 59.530 +# documentation. 59.531 + 59.532 +WARN_NO_PARAMDOC = NO 59.533 + 59.534 +# The WARN_FORMAT tag determines the format of the warning messages that 59.535 +# doxygen can produce. The string should contain the $file, $line, and $text 59.536 +# tags, which will be replaced by the file and line number from which the 59.537 +# warning originated and the warning text. Optionally the format may contain 59.538 +# $version, which will be replaced by the version of the file (if it could 59.539 +# be obtained via FILE_VERSION_FILTER) 59.540 + 59.541 +WARN_FORMAT = "$file:$line: $text" 59.542 + 59.543 +# The WARN_LOGFILE tag can be used to specify a file to which warning 59.544 +# and error messages should be written. If left blank the output is written 59.545 +# to stderr. 59.546 + 59.547 +WARN_LOGFILE = 59.548 + 59.549 +#--------------------------------------------------------------------------- 59.550 +# configuration options related to the input files 59.551 +#--------------------------------------------------------------------------- 59.552 + 59.553 +# The INPUT tag can be used to specify the files and/or directories that contain 59.554 +# documented source files. You may enter file names like "myfile.cpp" or 59.555 +# directories like "/usr/src/myproject". Separate the files or directories 59.556 +# with spaces. 59.557 + 59.558 +INPUT =../CImg.h CImg_documentation.h 59.559 + 59.560 +# This tag can be used to specify the character encoding of the source files 59.561 +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is 59.562 +# also the default input encoding. Doxygen uses libiconv (or the iconv built 59.563 +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for 59.564 +# the list of possible encodings. 59.565 + 59.566 +INPUT_ENCODING = UTF-8 59.567 + 59.568 +# If the value of the INPUT tag contains directories, you can use the 59.569 +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 59.570 +# and *.h) to filter out the source-files in the directories. If left 59.571 +# blank the following patterns are tested: 59.572 +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 59.573 +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 59.574 + 59.575 +FILE_PATTERNS = 59.576 + 59.577 +# The RECURSIVE tag can be used to turn specify whether or not subdirectories 59.578 +# should be searched for input files as well. Possible values are YES and NO. 59.579 +# If left blank NO is used. 59.580 + 59.581 +RECURSIVE = NO 59.582 + 59.583 +# The EXCLUDE tag can be used to specify files and/or directories that should 59.584 +# excluded from the INPUT source files. This way you can easily exclude a 59.585 +# subdirectory from a directory tree whose root is specified with the INPUT tag. 59.586 + 59.587 +EXCLUDE = 59.588 + 59.589 +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 59.590 +# directories that are symbolic links (a Unix filesystem feature) are excluded 59.591 +# from the input. 59.592 + 59.593 +EXCLUDE_SYMLINKS = NO 59.594 + 59.595 +# If the value of the INPUT tag contains directories, you can use the 59.596 +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 59.597 +# certain files from those directories. Note that the wildcards are matched 59.598 +# against the file with absolute path, so to exclude all test directories 59.599 +# for example use the pattern */test/* 59.600 + 59.601 +EXCLUDE_PATTERNS = 59.602 + 59.603 +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 59.604 +# (namespaces, classes, functions, etc.) that should be excluded from the 59.605 +# output. The symbol name can be a fully qualified name, a word, or if the 59.606 +# wildcard * is used, a substring. Examples: ANamespace, AClass, 59.607 +# AClass::ANamespace, ANamespace::*Test 59.608 + 59.609 +EXCLUDE_SYMBOLS = 59.610 + 59.611 +# The EXAMPLE_PATH tag can be used to specify one or more files or 59.612 +# directories that contain example code fragments that are included (see 59.613 +# the \include command). 59.614 + 59.615 +EXAMPLE_PATH = 59.616 + 59.617 +# If the value of the EXAMPLE_PATH tag contains directories, you can use the 59.618 +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 59.619 +# and *.h) to filter out the source-files in the directories. If left 59.620 +# blank all files are included. 59.621 + 59.622 +EXAMPLE_PATTERNS = 59.623 + 59.624 +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 59.625 +# searched for input files to be used with the \include or \dontinclude 59.626 +# commands irrespective of the value of the RECURSIVE tag. 59.627 +# Possible values are YES and NO. If left blank NO is used. 59.628 + 59.629 +EXAMPLE_RECURSIVE = NO 59.630 + 59.631 +# The IMAGE_PATH tag can be used to specify one or more files or 59.632 +# directories that contain image that are included in the documentation (see 59.633 +# the \image command). 59.634 + 59.635 +IMAGE_PATH = 59.636 + 59.637 +# The INPUT_FILTER tag can be used to specify a program that doxygen should 59.638 +# invoke to filter for each input file. Doxygen will invoke the filter program 59.639 +# by executing (via popen()) the command <filter> <input-file>, where <filter> 59.640 +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 59.641 +# input file. Doxygen will then use the output that the filter program writes 59.642 +# to standard output. If FILTER_PATTERNS is specified, this tag will be 59.643 +# ignored. 59.644 + 59.645 +INPUT_FILTER = 59.646 + 59.647 +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 59.648 +# basis. Doxygen will compare the file name with each pattern and apply the 59.649 +# filter if there is a match. The filters are a list of the form: 59.650 +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 59.651 +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 59.652 +# is applied to all files. 59.653 + 59.654 +FILTER_PATTERNS = 59.655 + 59.656 +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 59.657 +# INPUT_FILTER) will be used to filter the input files when producing source 59.658 +# files to browse (i.e. when SOURCE_BROWSER is set to YES). 59.659 + 59.660 +FILTER_SOURCE_FILES = NO 59.661 + 59.662 +#--------------------------------------------------------------------------- 59.663 +# configuration options related to source browsing 59.664 +#--------------------------------------------------------------------------- 59.665 + 59.666 +# If the SOURCE_BROWSER tag is set to YES then a list of source files will 59.667 +# be generated. Documented entities will be cross-referenced with these sources. 59.668 +# Note: To get rid of all source code in the generated output, make sure also 59.669 +# VERBATIM_HEADERS is set to NO. 59.670 + 59.671 +SOURCE_BROWSER = NO 59.672 + 59.673 +# Setting the INLINE_SOURCES tag to YES will include the body 59.674 +# of functions and classes directly in the documentation. 59.675 + 59.676 +INLINE_SOURCES = NO 59.677 + 59.678 +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 59.679 +# doxygen to hide any special comment blocks from generated source code 59.680 +# fragments. Normal C and C++ comments will always remain visible. 59.681 + 59.682 +STRIP_CODE_COMMENTS = YES 59.683 + 59.684 +# If the REFERENCED_BY_RELATION tag is set to YES 59.685 +# then for each documented function all documented 59.686 +# functions referencing it will be listed. 59.687 + 59.688 +REFERENCED_BY_RELATION = NO 59.689 + 59.690 +# If the REFERENCES_RELATION tag is set to YES 59.691 +# then for each documented function all documented entities 59.692 +# called/used by that function will be listed. 59.693 + 59.694 +REFERENCES_RELATION = NO 59.695 + 59.696 +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) 59.697 +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from 59.698 +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will 59.699 +# link to the source code. Otherwise they will link to the documentstion. 59.700 + 59.701 +REFERENCES_LINK_SOURCE = YES 59.702 + 59.703 +# If the USE_HTAGS tag is set to YES then the references to source code 59.704 +# will point to the HTML generated by the htags(1) tool instead of doxygen 59.705 +# built-in source browser. The htags tool is part of GNU's global source 59.706 +# tagging system (see http://www.gnu.org/software/global/global.html). You 59.707 +# will need version 4.8.6 or higher. 59.708 + 59.709 +USE_HTAGS = NO 59.710 + 59.711 +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 59.712 +# will generate a verbatim copy of the header file for each class for 59.713 +# which an include is specified. Set to NO to disable this. 59.714 + 59.715 +VERBATIM_HEADERS = NO 59.716 + 59.717 +#--------------------------------------------------------------------------- 59.718 +# configuration options related to the alphabetical class index 59.719 +#--------------------------------------------------------------------------- 59.720 + 59.721 +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 59.722 +# of all compounds will be generated. Enable this if the project 59.723 +# contains a lot of classes, structs, unions or interfaces. 59.724 + 59.725 +ALPHABETICAL_INDEX = NO 59.726 + 59.727 +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 59.728 +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 59.729 +# in which this list will be split (can be a number in the range [1..20]) 59.730 + 59.731 +COLS_IN_ALPHA_INDEX = 5 59.732 + 59.733 +# In case all classes in a project start with a common prefix, all 59.734 +# classes will be put under the same header in the alphabetical index. 59.735 +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 59.736 +# should be ignored while generating the index headers. 59.737 + 59.738 +IGNORE_PREFIX = 59.739 + 59.740 +#--------------------------------------------------------------------------- 59.741 +# configuration options related to the HTML output 59.742 +#--------------------------------------------------------------------------- 59.743 + 59.744 +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 59.745 +# generate HTML output. 59.746 + 59.747 +GENERATE_HTML = YES 59.748 + 59.749 +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 59.750 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 59.751 +# put in front of it. If left blank `html' will be used as the default path. 59.752 + 59.753 +HTML_OUTPUT = reference 59.754 + 59.755 +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 59.756 +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 59.757 +# doxygen will generate files with .html extension. 59.758 + 59.759 +HTML_FILE_EXTENSION = .html 59.760 + 59.761 +# The HTML_HEADER tag can be used to specify a personal HTML header for 59.762 +# each generated HTML page. If it is left blank doxygen will generate a 59.763 +# standard header. 59.764 + 59.765 +HTML_HEADER = header_reference.html 59.766 + 59.767 +# The HTML_FOOTER tag can be used to specify a personal HTML footer for 59.768 +# each generated HTML page. If it is left blank doxygen will generate a 59.769 +# standard footer. 59.770 + 59.771 +HTML_FOOTER = footer.html 59.772 + 59.773 +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 59.774 +# style sheet that is used by each HTML page. It can be used to 59.775 +# fine-tune the look of the HTML output. If the tag is left blank doxygen 59.776 +# will generate a default style sheet. Note that doxygen will try to copy 59.777 +# the style sheet file to the HTML output directory, so don't put your own 59.778 +# stylesheet in the HTML output directory as well, or it will be erased! 59.779 + 59.780 +HTML_STYLESHEET = 59.781 + 59.782 +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 59.783 +# files or namespaces will be aligned in HTML using tables. If set to 59.784 +# NO a bullet list will be used. 59.785 + 59.786 +HTML_ALIGN_MEMBERS = YES 59.787 + 59.788 +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML 59.789 +# documentation will contain sections that can be hidden and shown after the 59.790 +# page has loaded. For this to work a browser that supports 59.791 +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox 59.792 +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). 59.793 + 59.794 +HTML_DYNAMIC_SECTIONS = YES 59.795 + 59.796 +# If the GENERATE_DOCSET tag is set to YES, additional index files 59.797 +# will be generated that can be used as input for Apple's Xcode 3 59.798 +# integrated development environment, introduced with OSX 10.5 (Leopard). 59.799 +# To create a documentation set, doxygen will generate a Makefile in the 59.800 +# HTML output directory. Running make will produce the docset in that 59.801 +# directory and running "make install" will install the docset in 59.802 +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find 59.803 +# it at startup. 59.804 +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. 59.805 + 59.806 +GENERATE_DOCSET = NO 59.807 + 59.808 +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the 59.809 +# feed. A documentation feed provides an umbrella under which multiple 59.810 +# documentation sets from a single provider (such as a company or product suite) 59.811 +# can be grouped. 59.812 + 59.813 +DOCSET_FEEDNAME = "Doxygen generated docs" 59.814 + 59.815 +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that 59.816 +# should uniquely identify the documentation set bundle. This should be a 59.817 +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen 59.818 +# will append .docset to the name. 59.819 + 59.820 +DOCSET_BUNDLE_ID = org.doxygen.Project 59.821 + 59.822 +# If the GENERATE_HTMLHELP tag is set to YES, additional index files 59.823 +# will be generated that can be used as input for tools like the 59.824 +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) 59.825 +# of the generated HTML documentation. 59.826 + 59.827 +GENERATE_HTMLHELP = NO 59.828 + 59.829 +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 59.830 +# be used to specify the file name of the resulting .chm file. You 59.831 +# can add a path in front of the file if the result should not be 59.832 +# written to the html output directory. 59.833 + 59.834 +CHM_FILE = 59.835 + 59.836 +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 59.837 +# be used to specify the location (absolute path including file name) of 59.838 +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 59.839 +# the HTML help compiler on the generated index.hhp. 59.840 + 59.841 +HHC_LOCATION = 59.842 + 59.843 +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 59.844 +# controls if a separate .chi index file is generated (YES) or that 59.845 +# it should be included in the master .chm file (NO). 59.846 + 59.847 +GENERATE_CHI = NO 59.848 + 59.849 +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING 59.850 +# is used to encode HtmlHelp index (hhk), content (hhc) and project file 59.851 +# content. 59.852 + 59.853 +CHM_INDEX_ENCODING = 59.854 + 59.855 +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 59.856 +# controls whether a binary table of contents is generated (YES) or a 59.857 +# normal table of contents (NO) in the .chm file. 59.858 + 59.859 +BINARY_TOC = NO 59.860 + 59.861 +# The TOC_EXPAND flag can be set to YES to add extra items for group members 59.862 +# to the contents of the HTML help documentation and to the tree view. 59.863 + 59.864 +TOC_EXPAND = NO 59.865 + 59.866 +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER 59.867 +# are set, an additional index file will be generated that can be used as input for 59.868 +# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated 59.869 +# HTML documentation. 59.870 + 59.871 +GENERATE_QHP = NO 59.872 + 59.873 +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can 59.874 +# be used to specify the file name of the resulting .qch file. 59.875 +# The path specified is relative to the HTML output folder. 59.876 + 59.877 +QCH_FILE = 59.878 + 59.879 +# The QHP_NAMESPACE tag specifies the namespace to use when generating 59.880 +# Qt Help Project output. For more information please see 59.881 +# <a href="http://doc.trolltech.com/qthelpproject.html#namespace">Qt Help Project / Namespace</a>. 59.882 + 59.883 +QHP_NAMESPACE = org.doxygen.Project 59.884 + 59.885 +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating 59.886 +# Qt Help Project output. For more information please see 59.887 +# <a href="http://doc.trolltech.com/qthelpproject.html#virtual-folders">Qt Help Project / Virtual Folders</a>. 59.888 + 59.889 +QHP_VIRTUAL_FOLDER = doc 59.890 + 59.891 +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can 59.892 +# be used to specify the location of Qt's qhelpgenerator. 59.893 +# If non-empty doxygen will try to run qhelpgenerator on the generated 59.894 +# .qhp file . 59.895 + 59.896 +QHG_LOCATION = 59.897 + 59.898 +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 59.899 +# top of each HTML page. The value NO (the default) enables the index and 59.900 +# the value YES disables it. 59.901 + 59.902 +DISABLE_INDEX = NO 59.903 + 59.904 +# This tag can be used to set the number of enum values (range [1..20]) 59.905 +# that doxygen will group on one line in the generated HTML documentation. 59.906 + 59.907 +ENUM_VALUES_PER_LINE = 4 59.908 + 59.909 +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index 59.910 +# structure should be generated to display hierarchical information. 59.911 +# If the tag value is set to FRAME, a side panel will be generated 59.912 +# containing a tree-like index structure (just like the one that 59.913 +# is generated for HTML Help). For this to work a browser that supports 59.914 +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 59.915 +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 59.916 +# probably better off using the HTML help feature. Other possible values 59.917 +# for this tag are: HIERARCHIES, which will generate the Groups, Directories, 59.918 +# and Class Hierarchy pages using a tree view instead of an ordered list; 59.919 +# ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which 59.920 +# disables this behavior completely. For backwards compatibility with previous 59.921 +# releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE 59.922 +# respectively. 59.923 + 59.924 +GENERATE_TREEVIEW = NONE 59.925 + 59.926 +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 59.927 +# used to set the initial width (in pixels) of the frame in which the tree 59.928 +# is shown. 59.929 + 59.930 +TREEVIEW_WIDTH = 250 59.931 + 59.932 +# Use this tag to change the font size of Latex formulas included 59.933 +# as images in the HTML documentation. The default is 10. Note that 59.934 +# when you change the font size after a successful doxygen run you need 59.935 +# to manually remove any form_*.png images from the HTML output directory 59.936 +# to force them to be regenerated. 59.937 + 59.938 +FORMULA_FONTSIZE = 10 59.939 + 59.940 +#--------------------------------------------------------------------------- 59.941 +# configuration options related to the LaTeX output 59.942 +#--------------------------------------------------------------------------- 59.943 + 59.944 +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 59.945 +# generate Latex output. 59.946 + 59.947 +GENERATE_LATEX = YES 59.948 + 59.949 +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 59.950 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 59.951 +# put in front of it. If left blank `latex' will be used as the default path. 59.952 + 59.953 +LATEX_OUTPUT = latex 59.954 + 59.955 +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 59.956 +# invoked. If left blank `latex' will be used as the default command name. 59.957 + 59.958 +LATEX_CMD_NAME = latex 59.959 + 59.960 +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 59.961 +# generate index for LaTeX. If left blank `makeindex' will be used as the 59.962 +# default command name. 59.963 + 59.964 +MAKEINDEX_CMD_NAME = makeindex 59.965 + 59.966 +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 59.967 +# LaTeX documents. This may be useful for small projects and may help to 59.968 +# save some trees in general. 59.969 + 59.970 +COMPACT_LATEX = NO 59.971 + 59.972 +# The PAPER_TYPE tag can be used to set the paper type that is used 59.973 +# by the printer. Possible values are: a4, a4wide, letter, legal and 59.974 +# executive. If left blank a4wide will be used. 59.975 + 59.976 +PAPER_TYPE = a4wide 59.977 + 59.978 +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 59.979 +# packages that should be included in the LaTeX output. 59.980 + 59.981 +EXTRA_PACKAGES = 59.982 + 59.983 +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 59.984 +# the generated latex document. The header should contain everything until 59.985 +# the first chapter. If it is left blank doxygen will generate a 59.986 +# standard header. Notice: only use this tag if you know what you are doing! 59.987 + 59.988 +LATEX_HEADER = 59.989 + 59.990 +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 59.991 +# is prepared for conversion to pdf (using ps2pdf). The pdf file will 59.992 +# contain links (just like the HTML output) instead of page references 59.993 +# This makes the output suitable for online browsing using a pdf viewer. 59.994 + 59.995 +PDF_HYPERLINKS = YES 59.996 + 59.997 +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 59.998 +# plain latex in the generated Makefile. Set this option to YES to get a 59.999 +# higher quality PDF documentation. 59.1000 + 59.1001 +USE_PDFLATEX = YES 59.1002 + 59.1003 +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 59.1004 +# command to the generated LaTeX files. This will instruct LaTeX to keep 59.1005 +# running if errors occur, instead of asking the user for help. 59.1006 +# This option is also used when generating formulas in HTML. 59.1007 + 59.1008 +LATEX_BATCHMODE = NO 59.1009 + 59.1010 +# If LATEX_HIDE_INDICES is set to YES then doxygen will not 59.1011 +# include the index chapters (such as File Index, Compound Index, etc.) 59.1012 +# in the output. 59.1013 + 59.1014 +LATEX_HIDE_INDICES = NO 59.1015 + 59.1016 +#--------------------------------------------------------------------------- 59.1017 +# configuration options related to the RTF output 59.1018 +#--------------------------------------------------------------------------- 59.1019 + 59.1020 +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 59.1021 +# The RTF output is optimized for Word 97 and may not look very pretty with 59.1022 +# other RTF readers or editors. 59.1023 + 59.1024 +GENERATE_RTF = NO 59.1025 + 59.1026 +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 59.1027 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 59.1028 +# put in front of it. If left blank `rtf' will be used as the default path. 59.1029 + 59.1030 +RTF_OUTPUT = rtf 59.1031 + 59.1032 +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 59.1033 +# RTF documents. This may be useful for small projects and may help to 59.1034 +# save some trees in general. 59.1035 + 59.1036 +COMPACT_RTF = NO 59.1037 + 59.1038 +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 59.1039 +# will contain hyperlink fields. The RTF file will 59.1040 +# contain links (just like the HTML output) instead of page references. 59.1041 +# This makes the output suitable for online browsing using WORD or other 59.1042 +# programs which support those fields. 59.1043 +# Note: wordpad (write) and others do not support links. 59.1044 + 59.1045 +RTF_HYPERLINKS = NO 59.1046 + 59.1047 +# Load stylesheet definitions from file. Syntax is similar to doxygen's 59.1048 +# config file, i.e. a series of assignments. You only have to provide 59.1049 +# replacements, missing definitions are set to their default value. 59.1050 + 59.1051 +RTF_STYLESHEET_FILE = 59.1052 + 59.1053 +# Set optional variables used in the generation of an rtf document. 59.1054 +# Syntax is similar to doxygen's config file. 59.1055 + 59.1056 +RTF_EXTENSIONS_FILE = 59.1057 + 59.1058 +#--------------------------------------------------------------------------- 59.1059 +# configuration options related to the man page output 59.1060 +#--------------------------------------------------------------------------- 59.1061 + 59.1062 +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 59.1063 +# generate man pages 59.1064 + 59.1065 +GENERATE_MAN = NO 59.1066 + 59.1067 +# The MAN_OUTPUT tag is used to specify where the man pages will be put. 59.1068 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 59.1069 +# put in front of it. If left blank `man' will be used as the default path. 59.1070 + 59.1071 +MAN_OUTPUT = man 59.1072 + 59.1073 +# The MAN_EXTENSION tag determines the extension that is added to 59.1074 +# the generated man pages (default is the subroutine's section .3) 59.1075 + 59.1076 +MAN_EXTENSION = .3 59.1077 + 59.1078 +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 59.1079 +# then it will generate one additional man file for each entity 59.1080 +# documented in the real man page(s). These additional files 59.1081 +# only source the real man page, but without them the man command 59.1082 +# would be unable to find the correct page. The default is NO. 59.1083 + 59.1084 +MAN_LINKS = NO 59.1085 + 59.1086 +#--------------------------------------------------------------------------- 59.1087 +# configuration options related to the XML output 59.1088 +#--------------------------------------------------------------------------- 59.1089 + 59.1090 +# If the GENERATE_XML tag is set to YES Doxygen will 59.1091 +# generate an XML file that captures the structure of 59.1092 +# the code including all documentation. 59.1093 + 59.1094 +GENERATE_XML = NO 59.1095 + 59.1096 +# The XML_OUTPUT tag is used to specify where the XML pages will be put. 59.1097 +# If a relative path is entered the value of OUTPUT_DIRECTORY will be 59.1098 +# put in front of it. If left blank `xml' will be used as the default path. 59.1099 + 59.1100 +XML_OUTPUT = xml 59.1101 + 59.1102 +# The XML_SCHEMA tag can be used to specify an XML schema, 59.1103 +# which can be used by a validating XML parser to check the 59.1104 +# syntax of the XML files. 59.1105 + 59.1106 +XML_SCHEMA = 59.1107 + 59.1108 +# The XML_DTD tag can be used to specify an XML DTD, 59.1109 +# which can be used by a validating XML parser to check the 59.1110 +# syntax of the XML files. 59.1111 + 59.1112 +XML_DTD = 59.1113 + 59.1114 +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 59.1115 +# dump the program listings (including syntax highlighting 59.1116 +# and cross-referencing information) to the XML output. Note that 59.1117 +# enabling this will significantly increase the size of the XML output. 59.1118 + 59.1119 +XML_PROGRAMLISTING = YES 59.1120 + 59.1121 +#--------------------------------------------------------------------------- 59.1122 +# configuration options for the AutoGen Definitions output 59.1123 +#--------------------------------------------------------------------------- 59.1124 + 59.1125 +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 59.1126 +# generate an AutoGen Definitions (see autogen.sf.net) file 59.1127 +# that captures the structure of the code including all 59.1128 +# documentation. Note that this feature is still experimental 59.1129 +# and incomplete at the moment. 59.1130 + 59.1131 +GENERATE_AUTOGEN_DEF = NO 59.1132 + 59.1133 +#--------------------------------------------------------------------------- 59.1134 +# configuration options related to the Perl module output 59.1135 +#--------------------------------------------------------------------------- 59.1136 + 59.1137 +# If the GENERATE_PERLMOD tag is set to YES Doxygen will 59.1138 +# generate a Perl module file that captures the structure of 59.1139 +# the code including all documentation. Note that this 59.1140 +# feature is still experimental and incomplete at the 59.1141 +# moment. 59.1142 + 59.1143 +GENERATE_PERLMOD = NO 59.1144 + 59.1145 +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 59.1146 +# the necessary Makefile rules, Perl scripts and LaTeX code to be able 59.1147 +# to generate PDF and DVI output from the Perl module output. 59.1148 + 59.1149 +PERLMOD_LATEX = NO 59.1150 + 59.1151 +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 59.1152 +# nicely formatted so it can be parsed by a human reader. This is useful 59.1153 +# if you want to understand what is going on. On the other hand, if this 59.1154 +# tag is set to NO the size of the Perl module output will be much smaller 59.1155 +# and Perl will parse it just the same. 59.1156 + 59.1157 +PERLMOD_PRETTY = YES 59.1158 + 59.1159 +# The names of the make variables in the generated doxyrules.make file 59.1160 +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 59.1161 +# This is useful so different doxyrules.make files included by the same 59.1162 +# Makefile don't overwrite each other's variables. 59.1163 + 59.1164 +PERLMOD_MAKEVAR_PREFIX = 59.1165 + 59.1166 +#--------------------------------------------------------------------------- 59.1167 +# Configuration options related to the preprocessor 59.1168 +#--------------------------------------------------------------------------- 59.1169 + 59.1170 +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 59.1171 +# evaluate all C-preprocessor directives found in the sources and include 59.1172 +# files. 59.1173 + 59.1174 +ENABLE_PREPROCESSING = YES 59.1175 + 59.1176 +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 59.1177 +# names in the source code. If set to NO (the default) only conditional 59.1178 +# compilation will be performed. Macro expansion can be done in a controlled 59.1179 +# way by setting EXPAND_ONLY_PREDEF to YES. 59.1180 + 59.1181 +MACRO_EXPANSION = NO 59.1182 + 59.1183 +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 59.1184 +# then the macro expansion is limited to the macros specified with the 59.1185 +# PREDEFINED and EXPAND_AS_DEFINED tags. 59.1186 + 59.1187 +EXPAND_ONLY_PREDEF = NO 59.1188 + 59.1189 +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 59.1190 +# in the INCLUDE_PATH (see below) will be search if a #include is found. 59.1191 + 59.1192 +SEARCH_INCLUDES = YES 59.1193 + 59.1194 +# The INCLUDE_PATH tag can be used to specify one or more directories that 59.1195 +# contain include files that are not input files but should be processed by 59.1196 +# the preprocessor. 59.1197 + 59.1198 +INCLUDE_PATH = 59.1199 + 59.1200 +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 59.1201 +# patterns (like *.h and *.hpp) to filter out the header-files in the 59.1202 +# directories. If left blank, the patterns specified with FILE_PATTERNS will 59.1203 +# be used. 59.1204 + 59.1205 +INCLUDE_FILE_PATTERNS = 59.1206 + 59.1207 +# The PREDEFINED tag can be used to specify one or more macro names that 59.1208 +# are defined before the preprocessor is started (similar to the -D option of 59.1209 +# gcc). The argument of the tag is a list of macros of the form: name 59.1210 +# or name=definition (no spaces). If the definition and the = are 59.1211 +# omitted =1 is assumed. To prevent a macro definition from being 59.1212 +# undefined via #undef or recursively expanded use the := operator 59.1213 +# instead of the = operator. 59.1214 + 59.1215 +PREDEFINED = 59.1216 + 59.1217 +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 59.1218 +# this tag can be used to specify a list of macro names that should be expanded. 59.1219 +# The macro definition that is found in the sources will be used. 59.1220 +# Use the PREDEFINED tag if you want to use a different macro definition. 59.1221 + 59.1222 +EXPAND_AS_DEFINED = 59.1223 + 59.1224 +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 59.1225 +# doxygen's preprocessor will remove all function-like macros that are alone 59.1226 +# on a line, have an all uppercase name, and do not end with a semicolon. Such 59.1227 +# function macros are typically used for boiler-plate code, and will confuse 59.1228 +# the parser if not removed. 59.1229 + 59.1230 +SKIP_FUNCTION_MACROS = YES 59.1231 + 59.1232 +#--------------------------------------------------------------------------- 59.1233 +# Configuration::additions related to external references 59.1234 +#--------------------------------------------------------------------------- 59.1235 + 59.1236 +# The TAGFILES option can be used to specify one or more tagfiles. 59.1237 +# Optionally an initial location of the external documentation 59.1238 +# can be added for each tagfile. The format of a tag file without 59.1239 +# this location is as follows: 59.1240 +# TAGFILES = file1 file2 ... 59.1241 +# Adding location for the tag files is done as follows: 59.1242 +# TAGFILES = file1=loc1 "file2 = loc2" ... 59.1243 +# where "loc1" and "loc2" can be relative or absolute paths or 59.1244 +# URLs. If a location is present for each tag, the installdox tool 59.1245 +# does not have to be run to correct the links. 59.1246 +# Note that each tag file must have a unique name 59.1247 +# (where the name does NOT include the path) 59.1248 +# If a tag file is not located in the directory in which doxygen 59.1249 +# is run, you must also specify the path to the tagfile here. 59.1250 + 59.1251 +TAGFILES = 59.1252 + 59.1253 +# When a file name is specified after GENERATE_TAGFILE, doxygen will create 59.1254 +# a tag file that is based on the input files it reads. 59.1255 + 59.1256 +GENERATE_TAGFILE = 59.1257 + 59.1258 +# If the ALLEXTERNALS tag is set to YES all external classes will be listed 59.1259 +# in the class index. If set to NO only the inherited external classes 59.1260 +# will be listed. 59.1261 + 59.1262 +ALLEXTERNALS = NO 59.1263 + 59.1264 +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 59.1265 +# in the modules index. If set to NO, only the current project's groups will 59.1266 +# be listed. 59.1267 + 59.1268 +EXTERNAL_GROUPS = YES 59.1269 + 59.1270 +# The PERL_PATH should be the absolute path and name of the perl script 59.1271 +# interpreter (i.e. the result of `which perl'). 59.1272 + 59.1273 +PERL_PATH = /usr/bin/perl 59.1274 + 59.1275 +#--------------------------------------------------------------------------- 59.1276 +# Configuration options related to the dot tool 59.1277 +#--------------------------------------------------------------------------- 59.1278 + 59.1279 +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 59.1280 +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 59.1281 +# or super classes. Setting the tag to NO turns the diagrams off. Note that 59.1282 +# this option is superseded by the HAVE_DOT option below. This is only a 59.1283 +# fallback. It is recommended to install and use dot, since it yields more 59.1284 +# powerful graphs. 59.1285 + 59.1286 +CLASS_DIAGRAMS = NO 59.1287 + 59.1288 +# You can define message sequence charts within doxygen comments using the \msc 59.1289 +# command. Doxygen will then run the mscgen tool (see 59.1290 +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the 59.1291 +# documentation. The MSCGEN_PATH tag allows you to specify the directory where 59.1292 +# the mscgen tool resides. If left empty the tool is assumed to be found in the 59.1293 +# default search path. 59.1294 + 59.1295 +MSCGEN_PATH = 59.1296 + 59.1297 +# If set to YES, the inheritance and collaboration graphs will hide 59.1298 +# inheritance and usage relations if the target is undocumented 59.1299 +# or is not a class. 59.1300 + 59.1301 +HIDE_UNDOC_RELATIONS = YES 59.1302 + 59.1303 +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 59.1304 +# available from the path. This tool is part of Graphviz, a graph visualization 59.1305 +# toolkit from AT&T and Lucent Bell Labs. The other options in this section 59.1306 +# have no effect if this option is set to NO (the default) 59.1307 + 59.1308 +HAVE_DOT = NO 59.1309 + 59.1310 +# By default doxygen will write a font called FreeSans.ttf to the output 59.1311 +# directory and reference it in all dot files that doxygen generates. This 59.1312 +# font does not include all possible unicode characters however, so when you need 59.1313 +# these (or just want a differently looking font) you can specify the font name 59.1314 +# using DOT_FONTNAME. You need need to make sure dot is able to find the font, 59.1315 +# which can be done by putting it in a standard location or by setting the 59.1316 +# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory 59.1317 +# containing the font. 59.1318 + 59.1319 +DOT_FONTNAME = FreeSans 59.1320 + 59.1321 +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. 59.1322 +# The default size is 10pt. 59.1323 + 59.1324 +DOT_FONTSIZE = 10 59.1325 + 59.1326 +# By default doxygen will tell dot to use the output directory to look for the 59.1327 +# FreeSans.ttf font (which doxygen will put there itself). If you specify a 59.1328 +# different font using DOT_FONTNAME you can set the path where dot 59.1329 +# can find it using this tag. 59.1330 + 59.1331 +DOT_FONTPATH = 59.1332 + 59.1333 +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 59.1334 +# will generate a graph for each documented class showing the direct and 59.1335 +# indirect inheritance relations. Setting this tag to YES will force the 59.1336 +# the CLASS_DIAGRAMS tag to NO. 59.1337 + 59.1338 +CLASS_GRAPH = YES 59.1339 + 59.1340 +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 59.1341 +# will generate a graph for each documented class showing the direct and 59.1342 +# indirect implementation dependencies (inheritance, containment, and 59.1343 +# class references variables) of the class with other documented classes. 59.1344 + 59.1345 +COLLABORATION_GRAPH = YES 59.1346 + 59.1347 +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 59.1348 +# will generate a graph for groups, showing the direct groups dependencies 59.1349 + 59.1350 +GROUP_GRAPHS = YES 59.1351 + 59.1352 +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 59.1353 +# collaboration diagrams in a style similar to the OMG's Unified Modeling 59.1354 +# Language. 59.1355 + 59.1356 +UML_LOOK = NO 59.1357 + 59.1358 +# If set to YES, the inheritance and collaboration graphs will show the 59.1359 +# relations between templates and their instances. 59.1360 + 59.1361 +TEMPLATE_RELATIONS = NO 59.1362 + 59.1363 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 59.1364 +# tags are set to YES then doxygen will generate a graph for each documented 59.1365 +# file showing the direct and indirect include dependencies of the file with 59.1366 +# other documented files. 59.1367 + 59.1368 +INCLUDE_GRAPH = YES 59.1369 + 59.1370 +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 59.1371 +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 59.1372 +# documented header file showing the documented files that directly or 59.1373 +# indirectly include this file. 59.1374 + 59.1375 +INCLUDED_BY_GRAPH = YES 59.1376 + 59.1377 +# If the CALL_GRAPH and HAVE_DOT options are set to YES then 59.1378 +# doxygen will generate a call dependency graph for every global function 59.1379 +# or class method. Note that enabling this option will significantly increase 59.1380 +# the time of a run. So in most cases it will be better to enable call graphs 59.1381 +# for selected functions only using the \callgraph command. 59.1382 + 59.1383 +CALL_GRAPH = NO 59.1384 + 59.1385 +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then 59.1386 +# doxygen will generate a caller dependency graph for every global function 59.1387 +# or class method. Note that enabling this option will significantly increase 59.1388 +# the time of a run. So in most cases it will be better to enable caller 59.1389 +# graphs for selected functions only using the \callergraph command. 59.1390 + 59.1391 +CALLER_GRAPH = NO 59.1392 + 59.1393 +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 59.1394 +# will graphical hierarchy of all classes instead of a textual one. 59.1395 + 59.1396 +GRAPHICAL_HIERARCHY = YES 59.1397 + 59.1398 +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 59.1399 +# then doxygen will show the dependencies a directory has on other directories 59.1400 +# in a graphical way. The dependency relations are determined by the #include 59.1401 +# relations between the files in the directories. 59.1402 + 59.1403 +DIRECTORY_GRAPH = YES 59.1404 + 59.1405 +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 59.1406 +# generated by dot. Possible values are png, jpg, or gif 59.1407 +# If left blank png will be used. 59.1408 + 59.1409 +DOT_IMAGE_FORMAT = png 59.1410 + 59.1411 +# The tag DOT_PATH can be used to specify the path where the dot tool can be 59.1412 +# found. If left blank, it is assumed the dot tool can be found in the path. 59.1413 + 59.1414 +DOT_PATH = 59.1415 + 59.1416 +# The DOTFILE_DIRS tag can be used to specify one or more directories that 59.1417 +# contain dot files that are included in the documentation (see the 59.1418 +# \dotfile command). 59.1419 + 59.1420 +DOTFILE_DIRS = 59.1421 + 59.1422 +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of 59.1423 +# nodes that will be shown in the graph. If the number of nodes in a graph 59.1424 +# becomes larger than this value, doxygen will truncate the graph, which is 59.1425 +# visualized by representing a node as a red box. Note that doxygen if the 59.1426 +# number of direct children of the root node in a graph is already larger than 59.1427 +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note 59.1428 +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. 59.1429 + 59.1430 +DOT_GRAPH_MAX_NODES = 50 59.1431 + 59.1432 +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 59.1433 +# graphs generated by dot. A depth value of 3 means that only nodes reachable 59.1434 +# from the root by following a path via at most 3 edges will be shown. Nodes 59.1435 +# that lay further from the root node will be omitted. Note that setting this 59.1436 +# option to 1 or 2 may greatly reduce the computation time needed for large 59.1437 +# code bases. Also note that the size of a graph can be further restricted by 59.1438 +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. 59.1439 + 59.1440 +MAX_DOT_GRAPH_DEPTH = 0 59.1441 + 59.1442 +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 59.1443 +# background. This is disabled by default, because dot on Windows does not 59.1444 +# seem to support this out of the box. Warning: Depending on the platform used, 59.1445 +# enabling this option may lead to badly anti-aliased labels on the edges of 59.1446 +# a graph (i.e. they become hard to read). 59.1447 + 59.1448 +DOT_TRANSPARENT = NO 59.1449 + 59.1450 +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 59.1451 +# files in one run (i.e. multiple -o and -T options on the command line). This 59.1452 +# makes dot run faster, but since only newer versions of dot (>1.8.10) 59.1453 +# support this, this feature is disabled by default. 59.1454 + 59.1455 +DOT_MULTI_TARGETS = NO 59.1456 + 59.1457 +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 59.1458 +# generate a legend page explaining the meaning of the various boxes and 59.1459 +# arrows in the dot generated graphs. 59.1460 + 59.1461 +GENERATE_LEGEND = YES 59.1462 + 59.1463 +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 59.1464 +# remove the intermediate dot files that are used to generate 59.1465 +# the various graphs. 59.1466 + 59.1467 +DOT_CLEANUP = YES 59.1468 + 59.1469 +#--------------------------------------------------------------------------- 59.1470 +# Configuration::additions related to the search engine 59.1471 +#--------------------------------------------------------------------------- 59.1472 + 59.1473 +# The SEARCHENGINE tag specifies whether or not a search engine should be 59.1474 +# used. If set to NO the values of all tags below this one will be ignored. 59.1475 + 59.1476 +SEARCHENGINE = NO
60.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 60.2 +++ b/PTdecode/CImg-1.3.0/html/CImg_documentation.h Mon Aug 03 14:09:20 2009 +0100 60.3 @@ -0,0 +1,1162 @@ 60.4 +/*------------------------------------------------------------------------ 60.5 +# 60.6 +# File : CImg_documentation.h 60.7 +# 60.8 +# Description : Extra documentation file for the CImg Library. 60.9 +# Used by doxygen to generate the reference documentation. 60.10 +# ( http://cimg.sourceforge.net ) 60.11 +# 60.12 +# Copyright : David Tschumperle 60.13 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 60.14 +# 60.15 +# 60.16 +-------------------------------------------------------------------------*/ 60.17 + 60.18 +/*----------------------------------- 60.19 + 60.20 + Main reference documentation page 60.21 + 60.22 + -------------------------------------*/ 60.23 + 60.24 +/** 60.25 + \mainpage 60.26 + 60.27 + This is the reference documentation of <a href="http://cimg.sourceforge.net">the CImg Library</a>, 60.28 + the C++ template image processing library. 60.29 + This documentation have been generated using the tool <a href="http://www.doxygen.org">doxygen</a>. 60.30 + It contains a detailed description of all classes and functions of the %CImg Library. 60.31 + If you have downloaded the CImg package, you actually have a local copy of these pages in the 60.32 + \c CImg/html/reference/ directory. 60.33 + 60.34 + Use the menu above to navigate through the documentation pages. 60.35 + As a first step, you may look at the list of <a href="modules.html">available modules</a>. 60.36 + 60.37 + A complete PDF version of this reference documentation is 60.38 + <a href="../CImg_reference.pdf">available here</a> for off-line reading. 60.39 + 60.40 + A partial translation in Chinese is <a href="../CImg_reference_chinese.pdf">available here</a>. 60.41 + 60.42 + You may be interested also in the 60.43 + <a href="../CImg_slides.pdf">presentation slides</a> presenting an overview 60.44 + of the %CImg Library capabilities. 60.45 + 60.46 +**/ 60.47 + 60.48 +/*----------------------------------- 60.49 + 60.50 + CImg Library overview 60.51 + 60.52 + -------------------------------------*/ 60.53 + 60.54 +/** \addtogroup cimg_overview CImg Library Overview */ 60.55 +/*@{*/ 60.56 +/** 60.57 + \page foo2 60.58 + 60.59 + The <b>CImg Library</b> is an image processing library, designed for C++ programmers. 60.60 + It provides useful classes and functions to load/save, display and process various types of images. 60.61 + 60.62 + \section s1 Library structure 60.63 + 60.64 + The %CImg Library consists in a <b>single header file</b> CImg.h providing a set of C++ template classes that 60.65 + can be used in your own sources, to load/save, process and display images or list of images. 60.66 + Very portable (Unix/X11,Windows, MacOS X, FreeBSD,..), efficient, simple to use, it's a pleasant toolkit 60.67 + for coding image processing stuffs in C++. 60.68 + 60.69 + The header file CImg.h contains all the classes and functions that compose the library itself. 60.70 + This is one originality of the %CImg Library. This particularly means that : 60.71 + - No pre-compilation of the library is needed, since the compilation of the CImg functions is done at the same time as 60.72 + the compilation of your own C++ code. 60.73 + - No complex dependencies have to be handled : Just include the CImg.h file, and you get a working C++ image processing toolkit. 60.74 + - The compilation is done on the fly : only CImg functionalities really used by your program are compiled and appear in the 60.75 + compiled executable program. This leads to very compact code, without any unused stuffs. 60.76 + - Class members and functions are inlined, leading to better performance during the program execution. 60.77 + 60.78 + The %CImg Library is structured as follows : 60.79 + 60.80 + - All library classes and functions are defined in the namespace \ref cimg_library. This namespace 60.81 + encapsulates the library functionalities and avoid any class name collision that could happen with 60.82 + other includes. Generally, one uses this namespace as a default namespace : 60.83 + \code 60.84 + #include "CImg.h" 60.85 + using namespace cimg_library; 60.86 + ... 60.87 + \endcode 60.88 + 60.89 + - The namespace \ref cimg_library::cimg defines a set of \e low-level functions and variables used by the library. 60.90 + Documented functions in this namespace can be safely used in your own program. But, \b never use the 60.91 + \ref cimg_library::cimg namespace as a default namespace, since it contains functions whose names are already 60.92 + defined in the standard C/C++ library. 60.93 + 60.94 + - The class \ref cimg_library::CImg<T> represents images up to 4-dimensions wide, containing pixels of type \c T 60.95 + (template parameter). This is actually the main class of the library. 60.96 + 60.97 + - The class \ref cimg_library::CImgList<T> represents lists of cimg_library::CImg<T> images. It can be used for instance 60.98 + to store different frames of an image sequence. 60.99 + 60.100 + - The class \ref cimg_library::CImgDisplay is able to display images or image lists into graphical display windows. 60.101 + As you may guess, the code of this class is highly system-dependent but this is transparent for the programmer, 60.102 + as environment variables are automatically set by the CImg library (see also \ref cimg_environment). 60.103 + 60.104 + - The class \ref cimg_library::CImgException (and its subclasses) are used by the library to throw exceptions 60.105 + when errors occur. Those exceptions can be catched with a bloc <tt>try { ..} catch (CImgException) { .. }</tt>. 60.106 + Subclasses define precisely the type of encountered errors. 60.107 + 60.108 + Knowing these four classes is \b enough to get benefit of the %CImg Library functionalities. 60.109 + 60.110 + 60.111 + \section s2 CImg version of "Hello world". 60.112 + 60.113 + Below is a very simple code that creates a "Hello World" image. This shows you basically how a CImg program looks like. 60.114 + 60.115 + \code 60.116 + #include "CImg.h" 60.117 + using namespace cimg_library; 60.118 + 60.119 + int main() { 60.120 + CImg<unsigned char> img(640,400,1,3); // Define a 640x400 color image with 8 bits per color component. 60.121 + img.fill(0); // Set pixel values to 0 (color : black) 60.122 + unsigned char purple[] = { 255,0,255 }; // Define a purple color 60.123 + img.draw_text("Hello World",100,100,purple); // Draw a purple "Hello world" at coordinates (100,100). 60.124 + img.display("My first CImg code"); // Display the image in a display window. 60.125 + return 0; 60.126 + } 60.127 + \endcode 60.128 + 60.129 + Which can be also written in a more compact way as : 60.130 + 60.131 + \code 60.132 + #include "CImg.h" 60.133 + using namespace cimg_library; 60.134 + 60.135 + int main() { 60.136 + const unsigned char purple[] = { 255,0,255 }; 60.137 + CImg<unsigned char>(640,400,1,3,0).draw_text("Hello World",100,100,purple).display("My first CImg code"); 60.138 + return 0; 60.139 + } 60.140 + \endcode 60.141 + 60.142 + Generally, you can write very small code that performs complex image processing tasks. The %CImg Library is very simple 60.143 + to use and provide a lot of interesting algorithms for image manipulation. 60.144 + 60.145 + \section s3 How to compile ? 60.146 + 60.147 + The CImg library is a very light and user-friendly library : only standard system libraries are used. 60.148 + It avoid to handle complex dependancies and problems with library compatibility. 60.149 + The only thing you need is a (quite modern) C++ compiler : 60.150 + 60.151 + - <b>Microsoft Visual C++ 6.0, Visual Studio.NET and Visual Express Edition</b> : Use project files and solution files provided in the 60.152 + %CImg Library package (directory 'compilation/') to see how it works. 60.153 + - <b>Intel ICL compiler</b> : Use the following command to compile a CImg-based program with ICL : 60.154 + \code 60.155 + icl /Ox hello_world.cpp user32.lib gdi32.lib 60.156 + \endcode 60.157 + - <b>g++ (MingW windows version)</b> : Use the following command to compile a CImg-based program with g++, on Windows : 60.158 + \code 60.159 + g++ -o hello_word.exe hello_word.cpp -O2 -lgdi32 60.160 + \endcode 60.161 + - <b>g++ (Linux version)</b> : Use the following command to compile a CImg-based program with g++, on Linux : 60.162 + \code 60.163 + g++ -o hello_word.exe hello_world.cpp -O2 -L/usr/X11R6/lib -lm -lpthread -lX11 60.164 + \endcode 60.165 + - <b>g++ (Solaris version)</b> : Use the following command to compile a CImg-based program with g++, on Solaris : 60.166 + \code 60.167 + g++ -o hello_word.exe hello_world.cpp -O2 -lm -lpthread -R/usr/X11R6/lib -lrt -lnsl -lsocket 60.168 + \endcode 60.169 + - <b>g++ (Mac OS X version)</b> : Use the following command to compile a CImg-based program with g++, on Mac OS X : 60.170 + \code 60.171 + g++ -o hello_word.exe hello_world.cpp -O2 -lm -lpthread -L/usr/X11R6/lib -lm -lpthread -lX11 60.172 + \endcode 60.173 + - <b>Dev-Cpp</b> : Use the project file provided in the CImg library package to see how it works. 60.174 + 60.175 + If you are using another compilers and encounter problems, please 60.176 + <a href="http://www.greyc.ensicaen.fr/~dtschump">write me</a> since maintaining compatibility is one 60.177 + of the priority of the %CImg Library. Nevertheless, old compilers that does not respect the C++ norm will not 60.178 + support the %CImg Library. 60.179 + 60.180 + \section s4 What's next ? 60.181 + 60.182 + If you are ready to get more, and to start writing more serious programs 60.183 + with CImg, you are invited to go to the \ref cimg_tutorial section. 60.184 + 60.185 +**/ 60.186 +/*@}*/ 60.187 + 60.188 +/*---------------------------------- 60.189 + 60.190 + CImg<T> : The image structure 60.191 + 60.192 + --------------------------------*/ 60.193 + 60.194 +/** \addtogroup cimg_structure CImg<T> : The image structure. */ 60.195 +/*@{*/ 60.196 +/** 60.197 + Description of the CImg<T> structure 60.198 + 60.199 + \page foo_cs 60.200 + 60.201 + \section cs0 Structure overview 60.202 + 60.203 + \section cs1 Image construction/destruction/copy 60.204 + 60.205 + \section cs2 Image methods 60.206 + 60.207 + \section cs3 Shared images 60.208 + 60.209 + \section cs4 Low-level structure 60.210 + 60.211 +**/ 60.212 +/*@}*/ 60.213 + 60.214 +/*---------------------------------------- 60.215 + 60.216 + CImgList<T> : The image list structure 60.217 + 60.218 + ---------------------------------------*/ 60.219 + 60.220 +/** \addtogroup cimglist_structure CImgList<T> : The image list structure. */ 60.221 +/*@{*/ 60.222 +/** 60.223 + Description of the CImgList<T> structure 60.224 + 60.225 + \page foo_cls 60.226 + 60.227 + \section cls0 Structure overview 60.228 + 60.229 + \section cls1 Image list construction/destruction/copy 60.230 + 60.231 + \section cls2 Image methods 60.232 + 60.233 + \section cls4 Low-level structure 60.234 + 60.235 +**/ 60.236 +/*@}*/ 60.237 + 60.238 +/*---------------------------------------------- 60.239 + 60.240 + CImgDisplay : The image display structure 60.241 + 60.242 + --------------------------------------------*/ 60.243 + 60.244 +/** \addtogroup cimgdisplay_structure CImgDisplay : The image display structure. */ 60.245 +/*@{*/ 60.246 +/** 60.247 + Description of the CImgDisplay structure 60.248 + 60.249 + \page foo_cds 60.250 + 60.251 + \section cds0 Structure overview 60.252 + 60.253 + \section cds1 Image display construction/destruction/copy 60.254 + 60.255 + \section cds2 Image methods 60.256 + 60.257 + \section cds4 Low-level structure 60.258 + 60.259 +**/ 60.260 +/*@}*/ 60.261 + 60.262 +/*---------------------------------------------- 60.263 + 60.264 + CImgException : The library exception structure 60.265 + 60.266 + --------------------------------------------*/ 60.267 + 60.268 +/** \addtogroup cimgexception_structure CImgException : The library exception structure. */ 60.269 +/*@{*/ 60.270 +/** 60.271 + Description of the CImgException structure 60.272 + 60.273 + \page foo_ces 60.274 + 60.275 + \section ces0 Structure overview 60.276 + 60.277 + 60.278 +**/ 60.279 +/*@}*/ 60.280 + 60.281 + 60.282 +/*----------------------------------- 60.283 + 60.284 + FAQ : Frequently Asked Questions 60.285 + 60.286 + -------------------------------------*/ 60.287 + 60.288 +/** \addtogroup cimg_faq FAQ : Frequently Asked Questions. */ 60.289 +/*@{*/ 60.290 +/** 60.291 + \page foofaq 60.292 + 60.293 + \section ssf0 FAQ Summary 60.294 + 60.295 + - <a href="#sf1">General information and availability</a> 60.296 + - <a href="#ssf11">What is the CImg Library ?</a> 60.297 + - <a href="#ssf12">What platforms are supported ?</a> 60.298 + - <a href="#ssf13">How is CImg distributed ?</a> 60.299 + - <a href="#ssf14">What kind of people are concerned by CImg ?</a> 60.300 + - <a href="#ssf15">What are the specificities of the CeCILL license ?</a> 60.301 + - <a href="#ssf16">Who is behind CImg ?</a> 60.302 + 60.303 + - <a href="#sf2">C++ related questions</a> 60.304 + - <a href="#ssf21">What is the level of C++ knowledge needed to use CImg ?</a> 60.305 + - <a href="#ssf22">How to use CImg in my own C++ program ?</a> 60.306 + - <a href="#ssf23">Why is CImg entirely contained in a single header file ?</a> 60.307 + 60.308 + \section sf1 1. General information and availability 60.309 + 60.310 + \subsection ssf11 1.1. What is the CImg Library ? 60.311 + 60.312 + The CImg Library is an <i>open-source C++ toolkit for image processing</i>.\n 60.313 + 60.314 + It mainly consists in a (big) single header file 60.315 + <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> 60.316 + providing a set of C++ classes and functions that can be used in your own sources, 60.317 + to load/save, manage/process and display generic images. 60.318 + It's actually a very simple and pleasant toolkit for coding image processing stuffs in C++ : 60.319 + Just include the header file <i>CImg.h</i>, and you are ready to handle images in your C++ programs. 60.320 + 60.321 + \subsection ssf12 1.2. What platforms are supported ? 60.322 + 60.323 + CImg has been designed with <i>portability</i> in mind. 60.324 + It is regularly tested on different architectures and compilers, 60.325 + and should also work on any decent OS having a decent C++ compiler. 60.326 + Before each release, the CImg Library is compiled under these different configurations : 60.327 + \li PC Linux 32 bits, with g++. 60.328 + \li PC Windows 32 bits, with Visual C++ 6.0. 60.329 + \li PC Windows 32 bits, with Visual C++ Express Edition. 60.330 + \li Sun SPARC Solaris 32 bits, with g++. 60.331 + \li Mac PPC with OS X and g++. 60.332 + 60.333 + CImg has a minimal number of dependencies. In its minimal version, it can be compiled only with standard C++ headers. 60.334 + Anyway, it has interesting extension capabilities and can use external libraries to perform specific tasks more 60.335 + efficiently (Fourier Transform computation using FFTW for instance). 60.336 + 60.337 + \subsection ssf13 1.3. How is CImg distributed ? 60.338 + 60.339 + The CImg Library is freely distributed as a complete .zip compressed package, hosted at the 60.340 + <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Sourceforge servers</a>.\n 60.341 + The package is distributed under the <a href="http://www.cecill.info">CeCILL license</a>. 60.342 + 60.343 + This package contains : 60.344 + - The main library file <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> (C++ header file). 60.345 + - Several C++ source code showing <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/">examples of using CImg</a>. 60.346 + - A complete library documentation, in <a href="index.html">HTML</a> and <a href="../CImg_reference.pdf">PDF</a> formats. 60.347 + - Additional <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/plugins/">library plug-ins</a> that can be used to extend 60.348 + library capabilities for specific uses. 60.349 + 60.350 + The CImg Library is a quite lightweight library which is easy to maintain (due to its particular structure), and thus 60.351 + has a fast rythm of release. A new version of the CImg package is released approximately every three months. 60.352 + 60.353 + \subsection ssf14 1.4. What kind of people are concerned by CImg ? 60.354 + 60.355 + The CImg library is an <i>image processing</i> library, primarily intended for computer scientists or students working in the fields 60.356 + of image processing or computer vision, and knowing bases of C++. 60.357 + As the library is handy and really easy to use, it can be also used by any programmer 60.358 + needing occasional tools for dealing with images in C++, since there are no standard library yet 60.359 + for this purpose. 60.360 + 60.361 + \subsection ssf15 1.5. What are the specificities of the CeCILL license ? 60.362 + 60.363 + The <a href="http://www.cecill.info">CeCILL license</a> governs the use of the CImg Library. 60.364 + This is an <i>open-source</i> license which gives you rights to access, use, modify and redistribute the source code, 60.365 + under certains conditions. 60.366 + There are two different variants of the CeCILL license used in CImg 60.367 + (namely 60.368 + <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> and 60.369 + <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a>, all open-source), 60.370 + corresponding to different constraints on the source files : 60.371 + - The <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> license is the most permissive one, close to 60.372 + the <i>GNU LGPL license</i>, and <i>applies <b>only</b> on the main library file 60.373 + <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a></i>. 60.374 + Basically, this license allows to use <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> 60.375 + in a closed-source product without forcing you to redistribute the entire software source code. Anyway, 60.376 + if one modifies the <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> source file, one has to redistribute 60.377 + the modified version of the file that must be governed by the same <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> license. 60.378 + 60.379 + - The <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> license applies to all other files 60.380 + (source examples, plug-ins and documentation) of the CImg Library package, and is close (even <i>compatible</i>) 60.381 + with the <i>GNU GPL license</i>. It <i>does not allow</i> the use of these files in closed-source products. 60.382 + 60.383 + You are invited to read the complete descriptions of the 60.384 + the <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> 60.385 + and <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> licenses before releasing a 60.386 + software based on the CImg Library. 60.387 + 60.388 + \subsection ssf16 1.6. Who is behind CImg ? 60.389 + 60.390 + CImg has been started by 60.391 + <a href="http://www.greyc.ensicaen.fr/~dtschump/">David Tschumperle</a> at the beginning of his PhD thesis, in October 1999. 60.392 + He is still the main coordinator of the project. 60.393 + Since the first release at Sourceforge, a growing number of contributors has appeared. 60.394 + Due to the very simple and compact form of the library, submitting a contribution is quite easy and can be 60.395 + fastly integrated into the supported releases. 60.396 + List of contributors can be found on the front page. 60.397 + 60.398 + \section sf2 2. C++ related questions 60.399 + 60.400 + \subsection ssf21 2.1 What is the level of C++ knowledge needed to use CImg ? 60.401 + 60.402 + The CImg Library has been designed using C++ templates and object-oriented programming techniques, 60.403 + but in a very accessible level. 60.404 + There are only public classes without any derivation (just like C structures) and 60.405 + there is at most one template parameter for each CImg class (defining the pixel type of the images). 60.406 + The design is simple but clean, making the library accessible even for non professional C++ programmers, while proposing 60.407 + strong extension capabilities for C++ experts. 60.408 + 60.409 + \subsection ssf22 2.2 How to use CImg in my own C++ program ? 60.410 + 60.411 + Basically, you need to add these two lines in your C++ source code, in order 60.412 + to be able to work with CImg images : 60.413 + \code 60.414 + #include "CImg.h" 60.415 + using namespace cimg_library; 60.416 + \endcode 60.417 + 60.418 + \subsection ssf23 2.3 Why is CImg entirely contained in a single header file ? 60.419 + 60.420 + People are often surprised to see that the complete code of the library is contained in a single (big) C++ header file 60.421 + <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a>. 60.422 + There are good practical and technical reasons to do that. Some arguments are listed below to justify this approach, 60.423 + so (I hope) you won't think this is a awkwardly C++ design of the CImg library :\n 60.424 + 60.425 + - First, the library is based on <i>template datatypes</i> (images with generic pixel type), 60.426 + meaning that the programmer is free to decide what type of image he instanciates in his code. 60.427 + Even if there are roughly a limited number of fully supported types (basically, the "atomic" types of C++ : <i>unsigned char, int, float, ...</i>), 60.428 + this is <i>not imaginable</i> to pre-compile the library classes and functions for <i>all possible atomic datatypes</i>, 60.429 + since many functions and methods can have two or three arguments having different template parameters. 60.430 + This really means <i>a huge number</i> of possible combinations. The size of the object binary file generated to cover all possible cases 60.431 + would be just <i>colossal</i>. Is the STL library a pre-compiled one ? No, CImg neither. 60.432 + CImg is not using a classical <i>.cpp</i> and <i>.h</i> mechanism, just like the STL. 60.433 + Architectures of C++ <i>template-based</i> libraries are somewhat special in this sense. This is a proven technical fact. 60.434 + 60.435 + - Second, why CImg does not have several header files, just like the STL does (one for each class for instance) ? 60.436 + This would be possible of course. 60.437 + There are only 4 classes in CImg, the two most important being <i>CImg<T></i> and <i>CImgList<T></i> representing respectively 60.438 + an image and a collection of images. 60.439 + But contrary to the STL library, these two CImg classes are strongly <i>inter-dependent</i>. All CImg algorithms 60.440 + are actually not defined as separate functions acting on containers (as the STL does with his header <algorithm>), 60.441 + but are directly methods of the image and image collection classes. This inter-dependence practically means that you 60.442 + will undoubtly need these two main classes at the same time if you are using CImg. 60.443 + If they were defined in separate header files, you would be forced to include both of them. What is the gain then ? No gain.\n 60.444 + Concerning the two other classes : You can disable the third most important class <i>CImgDisplay</i> of the CImg library, by setting the compilation 60.445 + macro <i>cimg_display</i> to 0, avoiding thus to compile this class if you don't use display capabilities of CImg in your code. 60.446 + But to be honest, this is a quite small class and doing this doesn't save much compilation time. 60.447 + The last and fourth class is <i>CImgException</i>, which is only few lines long and is obviously required in almost all methods of CImg. 60.448 + Including this one is <i>mandatory</i>.\n 60.449 + As a consequence, having a single header file instead of several ones is just a way for you to avoid including all of them, 60.450 + without any consequences on compilation time. This is both good technical and practical reasons to do like this. 60.451 + 60.452 + - Third, having a single header file has plenty of advantages : Simplicity for the user, and for the developers (maintenance is in fact easier). 60.453 + Look at the <i>CImg.h</i> file, it looks like a mess at a first glance, but it is in fact very well organized and structured. 60.454 + Finding pieces of code in CImg functions or methods is particularly easy and fast. 60.455 + Also, how about the fact that library installation problems just disappear ? 60.456 + Just bring <i>CImg.h</i> with you, put it in your source directory, and the library is ready to go ! 60.457 + 60.458 + I admit the compilation time of CImg-based programs can be sometime long, but don't think that it is due to the fact that you are 60.459 + using a single header file. Using several header files wouldn't arrange anything since you would need all of them. 60.460 + Having a pre-compiled library object would be the only solution to speed up compilation time, but it is not possible at all, 60.461 + due to the too much generic nature of the library. 60.462 + Think seriously about it, and if you have a better solution to provide, let me know so we can discuss about it. 60.463 + 60.464 +**/ 60.465 +/*@}*/ 60.466 + 60.467 +/*----------------------------------- 60.468 + 60.469 + Setting Environment Variables 60.470 + 60.471 + -------------------------------------*/ 60.472 + 60.473 +/** \addtogroup cimg_environment Setting Environment Variables */ 60.474 +/*@{*/ 60.475 +/** 60.476 + \page foo1 60.477 + 60.478 + The CImg library is a multiplatform library, working on a wide variety of systems. 60.479 + This implies the existence of some \e environment \e variables that must be correctly defined 60.480 + depending on your current system. 60.481 + Most of the time, the %CImg Library defines these variables automatically 60.482 + (for popular systems). Anyway, if your system is not recognized, you will have to set the environment 60.483 + variables by hand. Here is a quick explanations of environment variables.\n 60.484 + 60.485 + Setting the environment variables is done with the <tt>#define</tt> keyword. 60.486 + This setting must be done <i>before including the file CImg.h</i> in your source code. 60.487 + For instance, 60.488 + defining the environment variable \c cimg_display would be done like this : 60.489 + \code 60.490 + #define cimg_display 0 60.491 + #include "CImg.h" 60.492 + ... 60.493 + \endcode 60.494 + 60.495 + Here are the different environment variables used by the %CImg Library : 60.496 + 60.497 + - \b \c cimg_OS : This variable defines the type of your Operating System. It can be set to \b 1 (\e Unix), 60.498 + \b 2 (\e Windows), or \b 0 (\e Other \e configuration). 60.499 + It should be actually auto-detected by the CImg library. If this is not the case (<tt>cimg_OS=0</tt>), you 60.500 + will probably have to tune the environment variables described below. 60.501 + 60.502 + - \b \c cimg_display : This variable defines the type of graphical library used to 60.503 + display images in windows. It can be set to 0 (no display library available), \b 1 (X11-based display) or 60.504 + \b 2 (Windows-GDI display). 60.505 + If you are running on a system without X11 or Windows-GDI ability, please set this variable to \c 0. 60.506 + This will disable the display support, since the %CImg Library doesn't contain the necessary code to display 60.507 + images on systems other than X11 or Windows GDI. 60.508 + 60.509 + - \b \c cimg_color_terminal : This variable tells the library if the system terminal has VT100 color capabilities. 60.510 + It can be \e defined or \e not \e defined. Define this variable to get colored output on your terminal, 60.511 + when using the %CImg Library. 60.512 + 60.513 + - \b \c cimg_debug : This variable defines the level of run-time debug messages that will be displayed by 60.514 + the %CImg Library. It can be set to 0 (no debug messages), 1 (normal debug messages displayed on 60.515 + standard error), 2 (normal debug messages displayed in modal windows, which is 60.516 + the default value), or 3 (high debug messages). Note that setting this value to 3 may slow down your 60.517 + program since more debug tests are made by the library (particularly to check if pixel access is made outside 60.518 + image boundaries). See also CImgException to better understand how debug messages are working. 60.519 + 60.520 + - \b \c cimg_convert_path : This variables tells the library where the ImageMagick's \e convert tool is located. 60.521 + Setting this variable should not be necessary if ImageMagick is installed on a standard directory, or 60.522 + if \e convert is in your system PATH variable. This macro should be defined only if the ImageMagick's 60.523 + \e convert tool is not found automatically, when trying to read compressed image format (GIF,PNG,...). 60.524 + See also cimg_library::CImg::get_load_convert() and cimg_library::CImg::save_convert() for more informations. 60.525 + 60.526 + - \b \c cimg_temporary_path : This variable tells the library where it can find a directory to store 60.527 + temporary files. Setting this variable should not be necessary if you are running on a standard system. 60.528 + This macro should be defined only when troubles are encountered when trying to read 60.529 + compressed image format (GIF,PNG,...). 60.530 + See also cimg_library::CImg::get_load_convert() and cimg_library::CImg::save_convert() for more informations. 60.531 + 60.532 + - \b \c cimg_plugin : This variable tells the library to use a plugin file to add features to the CImg<T> class. 60.533 + Define it with the path of your plugin file, if you want to add member functions to the CImg<T> class, 60.534 + without having to modify directly the \c "CImg.h" file. An include of the plugin file is performed in the CImg<T> 60.535 + class. If \c cimg_plugin if not specified (default), no include is done. 60.536 + 60.537 + - \b \c cimglist_plugin : Same as \c cimg_plugin, but to add features to the CImgList<T> class. 60.538 + 60.539 + - \b \c cimgdisplay_plugin : Same as \c cimg_plugin, but to add features to the CImgDisplay<T> class. 60.540 + 60.541 + All these compilation variables can be checked, using the function cimg_library::cimg::info(), which 60.542 + displays a list of the different configuration variables and their values on the standard error output. 60.543 +**/ 60.544 +/*@}*/ 60.545 + 60.546 +/*----------------------------------- 60.547 + 60.548 + Using drawing functions 60.549 + 60.550 + -------------------------------------*/ 60.551 + 60.552 +/** \addtogroup cimg_visual2005 How to use CImg library with Visual C++ 2005 Express Edition ?. */ 60.553 +/*@{*/ 60.554 +/** 60.555 + \page foo89198 60.556 + 60.557 + \section s13968 How to use CImg library with Visual C++ 2005 Express Edition ? 60.558 + 60.559 + This section has been written by Vincent Garcia and Alexandre Fournier from I3S/Sophia_Antipolis. 60.560 + 60.561 + - Download CImg library 60.562 + - Download and install Visual C++ 2005 Express Edition 60.563 + - Download and install Microsoft Windows SDK 60.564 + - Configure Visual C++ to take into account Microsoft SDK 60.565 + - 1. Go to menu "Tools -> options" 60.566 + - 2. Select option "Projects and Solutions -> VC++ Directories" 60.567 + - 3. In the select liste "Show directories for", choose "include files", and add C:\Program Files\Microsoft Platform SDK\Include (adapt if needed) 60.568 + - 4. In the select liste "Show directories for", choose "library files", and add C:\Program Files\Microsoft Platform SDK\Lib 60.569 + (adapt if needed) Edit file C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops (adapt if needed) 60.570 + - 6. 7. Remplace the line AdditionalDependencies="kernel32.lib" /> by AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib" /> 60.571 + - Restart Visual C++ 60.572 + - Import CImg library in your main file 60.573 + 60.574 +**/ 60.575 +/*@}*/ 60.576 + 60.577 + 60.578 +/*----------------------------------- 60.579 + 60.580 + Tutorial : Getting started 60.581 + 60.582 + -------------------------------------*/ 60.583 + 60.584 +/** \addtogroup cimg_tutorial Tutorial : Getting Started. */ 60.585 +/*@{*/ 60.586 +/** 60.587 + \page foo3 60.588 + 60.589 + Let's start to write our first program to get the idea. This will demonstrate how to load and create images, as well as handle image 60.590 + display and mouse events. 60.591 + Assume we want to load a color image <tt>lena.jpg</tt>, smooth it, display it in a windows, and enter an event loop so that clicking a 60.592 + point in the image will draw the (R,G,B) intensity profiles of the corresponding image line (in another window). 60.593 + Yes, that sounds quite complex for a first code, but don't worry, it will be very simple using the CImg library ! Well, just look 60.594 + at the code below, it does the task : 60.595 + 60.596 + \code 60.597 + #include "CImg.h" 60.598 + using namespace cimg_library; 60.599 + 60.600 + int main() { 60.601 + CImg<unsigned char> image("lena.jpg"), visu(500,400,1,3,0); 60.602 + const unsigned char red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 }; 60.603 + image.blur(2.5); 60.604 + CImgDisplay main_disp(image,"Click a point"), draw_disp(visu,"Intensity profile"); 60.605 + while (!main_disp.is_closed && !draw_disp.is_closed) { 60.606 + main_disp.wait(); 60.607 + if (main_disp.button && main_disp.mouse_y>=0) { 60.608 + const int y = main_disp.mouse_y; 60.609 + visu.fill(0).draw_graph(image.get_crop(0,y,0,0,image.dimx()-1,y,0,0),red,1,1,0,255,0); 60.610 + visu.draw_graph(image.get_crop(0,y,0,1,image.dimx()-1,y,0,1),green,1,1,0,255,0); 60.611 + visu.draw_graph(image.get_crop(0,y,0,2,image.dimx()-1,y,0,2),blue,1,1,0,255,0).display(draw_disp); 60.612 + } 60.613 + } 60.614 + return 0; 60.615 + } 60.616 + \endcode 60.617 + 60.618 + Here is a screenshot of the resulting program : 60.619 + 60.620 + <img SRC="../img/tutorial.jpg"> 60.621 + 60.622 + And here is the detailled explanation of the source, line by line : 60.623 + 60.624 + \code #include "CImg.h" \endcode 60.625 + Include the main and only header file of the CImg library. 60.626 + \code using namespace cimg_library; \endcode 60.627 + Use the library namespace to ease the declarations afterward. 60.628 + \code int main() { \endcode 60.629 + Definition of the main function. 60.630 + \code CImg<unsigned char> image("lena.jpg"), visu(500,400,1,3,0); \endcode 60.631 + Creation of two instances of images of \c unsigned \c char pixels. 60.632 + The first image \c image is initialized by reading an image file from the disk. 60.633 + Here, <tt>lena.jpg</tt> must be in the same directory than the current program. 60.634 + Note that you must also have installed the \e ImageMagick package in order to be able to read JPG images. 60.635 + The second image \c visu is initialized as a black color image with dimension <tt>dx=500</tt>, <tt>dy=400</tt>, 60.636 + <tt>dz=1</tt> (here, it is a 2D image, not a 3D one), and <tt>dv=3</tt> (each pixel has 3 'vector' channels R,G,B). 60.637 + The last argument in the constructor defines the default value of the pixel values 60.638 + (here \c 0, which means that \c visu will be initially black). 60.639 + \code const unsigned char red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 }; \endcode 60.640 + Definition of three different colors as array of unsigned char. This will be used to draw plots with different colors. 60.641 + \code image.blur(2.5); \endcode 60.642 + Blur the image, with a gaussian blur and a standard variation of 2.5. Note that most of the CImg functions have two versions : 60.643 + one that acts in-place (which is the case of blur), and one that returns the result as a new image (the name of the function 60.644 + begins then with <tt>get_</tt> ). In this case, one could have also written <tt>image = image.get_blur(2.5);</tt> 60.645 + (more expensive, since it needs an additional copy operation). 60.646 + \code CImgDisplay main_disp(image,"Click a point"), draw_disp(visu,"Intensity profile"); \endcode 60.647 + Creation of two display windows, one for the input image image, and one for the image visu which will be display intensity profiles. 60.648 + By default, CImg displays handles events (mouse,keyboard,..). On Windows, there is a way to create fullscreen displays. 60.649 + \code while (!main_disp.is_closed && !draw_disp.is_closed) { \endcode 60.650 + Enter the event loop, the code will exit when one of the two display windows is closed. 60.651 + \code main_disp.wait(); \endcode 60.652 + Wait for an event (mouse, keyboard,..) in the display window \c main_disp. 60.653 + \code if (main_disp.button && main_disp.mouse_y>=0) { \endcode 60.654 + Test if the mouse button has been clicked on the image area. 60.655 + One may distinguish between the 3 different mouse buttons, 60.656 + but in this case it is not necessary 60.657 + \code const int y = main_disp.mouse_y; \endcode 60.658 + Get the image line y-coordinate that has been clicked. 60.659 + \code visu.fill(0).draw_graph(image.get_crop(0,y,0,0,image.dimx()-1,y,0,0),red,1,0,256,0); \endcode 60.660 + This line illustrates the pipeline property of most of the CImg class functions. The first function <tt>fill(0)</tt> simply sets 60.661 + all pixel values with 0 (i.e. clear the image \c visu). The interesting thing is that it returns a reference to 60.662 + \c visu and then, can be pipelined with the function \c draw_graph() which draws a plot in the image \c visu. 60.663 + The plot data are given by another image (the first argument of \c draw_graph()). In this case, the given image is 60.664 + the red-component of the line y of the original image, retrieved by the function \c get_crop() which returns a 60.665 + sub-image of the image \c image. Remember that images coordinates are 4D (x,y,z,v) and for color images, 60.666 + the R,G,B channels are respectively given by <tt>v=0, v=1</tt> and <tt>v=2</tt>. 60.667 + \code visu.draw_graph(image.get_crop(0,y,0,1,image.dimx()-1,y,0,1),green,1,0,256,0); \endcode 60.668 + Plot the intensity profile for the green channel of the clicked line. 60.669 + \code visu.draw_graph(image.get_crop(0,y,0,2,image.dimx()-1,y,0,2),blue,1,0,256,0).display(draw_disp); \endcode 60.670 + Same thing for the blue channel. Note how the function (which return a reference to \c visu) is pipelined with the function 60.671 + \c display() that just paints the image visu in the corresponding display window. 60.672 + \code ...till the end \endcode 60.673 + I don't think you need more explanations ! 60.674 + 60.675 + As you have noticed, the CImg library allows to write very small and intuitive code. Note also that this source will perfectly 60.676 + work on Unix and Windows systems. Take also a look to the examples provided in the CImg package ( 60.677 + directory \c examples/ ). It will show you how CImg-based code can be surprisingly small. 60.678 + Moreover, there is surely one example close to what you want to do. 60.679 + A good start will be to look at the file <tt>CImg_demo.cpp</tt> which contains small and various examples of what you can do 60.680 + with the %CImg Library. All CImg classes are used in this source, and the code can be easily modified to see what happens. 60.681 + 60.682 +**/ 60.683 +/*@}*/ 60.684 + 60.685 +/*----------------------------------- 60.686 + 60.687 + Using drawing functions 60.688 + 60.689 + -------------------------------------*/ 60.690 + 60.691 +/** \addtogroup cimg_drawing Using Drawing Functions. */ 60.692 +/*@{*/ 60.693 +/** 60.694 + \page foo5 60.695 + 60.696 + \section s5 Using Drawing Functions. 60.697 + 60.698 + This section tells more about drawing features in CImg images. 60.699 + Drawing functions list can be found in <a href="structCImg.html">the CImg functions list</a> 60.700 + (section \b Drawing Functions), 60.701 + and are all defined on a common basis. Here are the important points to understand before using 60.702 + drawing functions : 60.703 + 60.704 + - Drawing is performed on the instance image. Drawing functions parameters 60.705 + are defined as \e const variables and return a reference to the current instance <tt>(*this)</tt>, 60.706 + so that drawing functions can be pipelined (see examples below). 60.707 + Drawing is usually done in 2D color images but can be performed in 3D images with any vector-valued dimension, 60.708 + and with any possible pixel type. 60.709 + 60.710 + - A color parameter is always needed to draw features in an image. The color must be defined as a C-style array 60.711 + whose dimension is at least 60.712 + 60.713 +**/ 60.714 +/*@}*/ 60.715 + 60.716 +/*----------------------------------- 60.717 + 60.718 + Using image loops 60.719 + 60.720 + -------------------------------------*/ 60.721 + 60.722 +/** \addtogroup cimg_loops Using Image Loops. */ 60.723 +/*@{*/ 60.724 +/** 60.725 + \page foo_lo 60.726 + The %CImg Library provides different macros that define useful iterative loops over an image. 60.727 + Basically, it can be used to replace one or several <tt>for(..)</tt> instructions, but it also proposes 60.728 + interesting extensions to classical loops. 60.729 + Below is a list of all existing loop macros, classified in four different categories : 60.730 + - \ref lo1 60.731 + - \ref lo4 60.732 + - \ref lo5 60.733 + - \ref lo6 60.734 + 60.735 + \section lo1 Loops over the pixel buffer 60.736 + 60.737 + Loops over the pixel buffer are really basic loops that iterate a pointer on the pixel data buffer 60.738 + of a \c cimg_library::CImg image. Two macros are defined for this purpose : 60.739 + 60.740 + - \b cimg_for(img,ptr,T) : 60.741 + This macro loops over the pixel data buffer of the image \c img, using a pointer <tt>T* ptr</tt>, 60.742 + starting from the end of the buffer (last pixel) till the beginning of the buffer (first pixel). 60.743 + - \c img must be a (non empty) \c cimg_library::CImg image of pixels \c T. 60.744 + - \c ptr is a pointer of type \c T*. 60.745 + This kind of loop should not appear a lot in your own source code, since this is a low-level loop 60.746 + and many functions of the CImg class may be used instead. Here is an example of use : 60.747 + \code 60.748 + CImg<float> img(320,200); 60.749 + cimg_for(img,ptr,float) { *ptr=0; } // Equivalent to 'img.fill(0);' 60.750 + \endcode 60.751 + 60.752 + - \b cimg_foroff(img,off) : 60.753 + This macro loops over the pixel data buffer of the image \c img, using an offset \c , 60.754 + starting from the beginning of the buffer (first pixel, \c off=0) 60.755 + till the end of the buffer (last pixel value, <tt>off = img.size()-1</tt>). 60.756 + - \c img must be a (non empty) cimg_library::CImg<T> image of pixels \c T. 60.757 + - \c off is an inner-loop variable, only defined inside the scope of the loop. 60.758 + 60.759 + Here is an example of use : 60.760 + \code 60.761 + CImg<float> img(320,200); 60.762 + cimg_foroff(img,off) { img[off]=0; } // Equivalent to 'img.fill(0);' 60.763 + \endcode 60.764 + 60.765 + \section lo4 Loops over image dimensions 60.766 + 60.767 + The following loops are probably the most used loops in image processing programs. 60.768 + They allow to loop over the image along one or several dimensions, along a raster scan course. 60.769 + Here is the list of such loop macros for a single dimension : 60.770 + - \b cimg_forX(img,x) : equivalent to : <tt>for (int x=0; x<img.dimx(); x++)</tt>. 60.771 + - \b cimg_forY(img,y) : equivalent to : <tt>for (int y=0; y<img.dimy(); y++)</tt>. 60.772 + - \b cimg_forZ(img,z) : equivalent to : <tt>for (int z=0; z<img.dimz(); z++)</tt>. 60.773 + - \b cimg_forV(img,v) : equivalent to : <tt>for (int v=0; v<img.dimv(); v++)</tt>. 60.774 + 60.775 + Combinations of these macros are also defined as other loop macros, allowing to loop directly over 2D, 3D or 4D images : 60.776 + - \b cimg_forXY(img,x,y) : equivalent to : \c cimg_forY(img,y) \c cimg_forX(img,x). 60.777 + - \b cimg_forXZ(img,x,z) : equivalent to : \c cimg_forZ(img,z) \c cimg_forX(img,x). 60.778 + - \b cimg_forYZ(img,y,z) : equivalent to : \c cimg_forZ(img,z) \c cimg_forY(img,y). 60.779 + - \b cimg_forXV(img,x,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forX(img,x). 60.780 + - \b cimg_forYV(img,y,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forY(img,y). 60.781 + - \b cimg_forZV(img,z,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forZ(img,z). 60.782 + - \b cimg_forXYZ(img,x,y,z) : equivalent to : \c cimg_forZ(img,z) \c cimg_forXY(img,x,y). 60.783 + - \b cimg_forXYV(img,x,y,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forXY(img,x,y). 60.784 + - \b cimg_forXZV(img,x,z,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forXZ(img,x,z). 60.785 + - \b cimg_forYZV(img,y,z,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forYZ(img,y,z). 60.786 + - \b cimg_forXYZV(img,x,y,z,v) : equivalent to : \c cimg_forV(img,v) \c cimg_forXYZ(img,x,y,z). 60.787 + 60.788 + - For all these loops, \c x,\c y,\c z and \c v are inner-defined variables only visible inside the scope of the loop. 60.789 + They don't have to be defined before the call of the macro. 60.790 + - \c img must be a (non empty) cimg_library::CImg image. 60.791 + 60.792 + Here is an example of use that creates an image with a smooth color gradient : 60.793 + \code 60.794 + CImg<unsigned char> img(256,256,1,3); // Define a 256x256 color image 60.795 + cimg_forXYV(img,x,y,v) { img(x,y,v) = (x+y)*(v+1)/6; } 60.796 + img.display("Color gradient"); 60.797 + \endcode 60.798 + 60.799 + \section lo5 Loops over interior regions and borders. 60.800 + 60.801 + Similar macros are also defined to loop only on the border of an image, or inside the image (excluding the border). 60.802 + The border may be several pixel wide : 60.803 + 60.804 + - \b cimg_for_insideX(img,x,n) : Loop along the x-axis, except for pixels inside a border of \p n pixels wide. 60.805 + - \b cimg_for_insideY(img,y,n) : Loop along the y-axis, except for pixels inside a border of \p n pixels wide. 60.806 + - \b cimg_for_insideZ(img,z,n) : Loop along the z-axis, except for pixels inside a border of \p n pixels wide. 60.807 + - \b cimg_for_insideV(img,v,n) : Loop along the v-axis, except for pixels inside a border of \p n pixels wide. 60.808 + - \b cimg_for_insideXY(img,x,y,n) : Loop along the (x,y)-axes, excepted for pixels inside a border of \p n pixels wide. 60.809 + - \b cimg_for_insideXYZ(img,x,y,z,n) : Loop along the (x,y,z)-axes, excepted for pixels inside a border of \p n pixels wide. 60.810 + 60.811 + And also : 60.812 + 60.813 + - \b cimg_for_borderX(img,x,n) : Loop along the x-axis, only for pixels inside a border of \p n pixels wide. 60.814 + - \b cimg_for_borderY(img,y,n) : Loop along the y-axis, only for pixels inside a border of \p n pixels wide. 60.815 + - \b cimg_for_borderZ(img,z,n) : Loop along the z-axis, only for pixels inside a border of \p n pixels wide. 60.816 + - \b cimg_for_borderV(img,v,n) : Loop along the z-axis, only for pixels inside a border of \p n pixels wide. 60.817 + - \b cimg_for_borderXY(img,x,y,n) : Loop along the (x,y)-axes, only for pixels inside a border of \p n pixels wide. 60.818 + - \b cimg_for_borderXYZ(img,x,y,z,n) : Loop along the (x,y,z)-axes, only for pixels inside a border of \p n pixels wide. 60.819 + 60.820 + - For all these loops, \c x,\c y,\c z and \c v are inner-defined variables only visible inside the scope of the loop. 60.821 + They don't have to be defined before the call of the macro. 60.822 + - \c img must be a (non empty) cimg_library::CImg image. 60.823 + - The constant \c n stands for the size of the border. 60.824 + 60.825 + Here is an example of use, to create a 2d grayscale image with two different intensity gradients : 60.826 + \code 60.827 + CImg<> img(256,256); 60.828 + cimg_for_insideXY(img,x,y,50) img(x,y) = x+y; 60.829 + cimg_for_borderXY(img,x,y,50) img(x,y) = x-y; 60.830 + img.display(); 60.831 + \endcode 60.832 + 60.833 + \section lo6 Loops using neighborhoods. 60.834 + 60.835 + Inside an image loop, it is often useful to get values of neighborhood pixels of the 60.836 + current pixel at the loop location. 60.837 + The %CImg Library provides a very smart and fast mechanism for this purpose, with the definition 60.838 + of several loop macros that remember the neighborhood values of the pixels. 60.839 + The use of these macros can highly optimize your code, and also simplify your program. 60.840 + 60.841 + \subsection lo7 Neighborhood-based loops for 2D images 60.842 + 60.843 + For 2D images, the neighborhood-based loop macros are : 60.844 + 60.845 + - \b cimg_for2x2(img,x,y,z,v,I) : Loop along the (x,y)-axes using a centered 2x2 neighborhood. 60.846 + - \b cimg_for3x3(img,x,y,z,v,I) : Loop along the (x,y)-axes using a centered 3x3 neighborhood. 60.847 + - \b cimg_for4x4(img,x,y,z,v,I) : Loop along the (x,y)-axes using a centered 4x4 neighborhood. 60.848 + - \b cimg_for5x5(img,x,y,z,v,I) : Loop along the (x,y)-axes using a centered 5x5 neighborhood. 60.849 + 60.850 + For all these loops, \c x and \c y are inner-defined variables only visible inside the scope of the loop. 60.851 + They don't have to be defined before the call of the macro. 60.852 + \c img is a non empty CImg<T> image. \c z and \c v are constants that define on which image slice and 60.853 + vector channel the loop must apply (usually both 0 for grayscale 2D images). 60.854 + Finally, \c I is the 2x2, 3x3, 4x4 or 5x5 neighborhood that will be updated with the correct pixel values 60.855 + during the loop (see \ref lo9). 60.856 + 60.857 + \subsection lo8 Neighborhood-based loops for 3D images 60.858 + 60.859 + For 3D images, the neighborhood-based loop macros are : 60.860 + 60.861 + - \b cimg_for2x2x2(img,x,y,z,v,I) : Loop along the (x,y,z)-axes using a centered 2x2x2 neighborhood. 60.862 + - \b cimg_for3x3x3(img,x,y,z,v,I) : Loop along the (x,y,z)-axes using a centered 3x3x3 neighborhood. 60.863 + 60.864 + For all these loops, \c x, \c y and \c z are inner-defined variables only visible inside the scope of the loop. 60.865 + They don't have to be defined before the call of the macro. 60.866 + \c img is a non empty CImg<T> image. \c v is a constant that defines on which image channel 60.867 + the loop must apply (usually 0 for grayscale 3D images). 60.868 + Finally, \c I is the 2x2x2 or 3x3x3 neighborhood that will be updated with the correct pixel values 60.869 + during the loop (see \ref lo9). 60.870 + 60.871 + \subsection lo9 Defining neighborhoods 60.872 + 60.873 + A neighborhood is defined as an instance of a class having operator[] defined. 60.874 + This particularly includes classical C-array, as well as CImg<T> objects. 60.875 + 60.876 + For instance, a 3x3 neighborhood can be defined either as a 'float[9]' or a 60.877 + 'CImg<float>(3,3)' variable. 60.878 + 60.879 + \subsection lo10 Using alternate variable names 60.880 + 60.881 + There are also some useful macros that can be used to define variables that 60.882 + reference the neighborhood elements. There are : 60.883 + 60.884 + - \b CImg_2x2(I,type) : Define a 2x2 neighborhood named \c I, of type \c type. 60.885 + - \b CImg_3x3(I,type) : Define a 3x3 neighborhood named \c I, of type \c type. 60.886 + - \b CImg_4x4(I,type) : Define a 4x4 neighborhood named \c I, of type \c type. 60.887 + - \b CImg_5x5(I,type) : Define a 5x5 neighborhood named \c I, of type \c type. 60.888 + - \b CImg_2x2x2(I,type) : Define a 2x2x2 neighborhood named \c I, of type \c type. 60.889 + - \b CImg_3x3x3(I,type) : Define a 3x3x3 neighborhood named \c I, of type \c type. 60.890 + 60.891 + Actually, \c I is a \e generic \e name for the neighborhood. In fact, these macros declare 60.892 + a \e set of new variables. 60.893 + For instance, defining a 3x3 neighborhood \c CImg_3x3(I,float) declares 9 different float variables 60.894 + \c Ipp,\c Icp,\c Inp,\c Ipc,\c Icc,\c Inc,\c Ipn,\c Icn,\c Inn which correspond to each pixel value of 60.895 + a 3x3 neighborhood. 60.896 + Variable indices are \c p,\c c or \c n, and stand respectively for \e 'previous', \e 'current' and \e 'next'. 60.897 + First indice denotes the \c x-axis, second indice denotes the \c y-axis. 60.898 + Then, the names of the variables are directly related to the position of the corresponding pixels 60.899 + in the neighborhood. For 3D neighborhoods, a third indice denotes the \c z-axis. 60.900 + Then, inside a neighborhood loop, you will have the following equivalence : 60.901 + - <tt>Ipp = img(x-1,y-1)</tt> 60.902 + - <tt>Icn = img(x,y+1)</tt> 60.903 + - <tt>Inp = img(x+1,y-1)</tt> 60.904 + - <tt>Inpc = img(x+1,y-1,z)</tt> 60.905 + - <tt>Ippn = img(x-1,y-1,z+1)</tt> 60.906 + - and so on... 60.907 + 60.908 + For bigger neighborhoods, such as 4x4 or 5x5 neighborhoods, two additionnal indices are introduced : 60.909 + \c a (stands for \e 'after') and \c b (stands for \e 'before'), so that : 60.910 + - <tt>Ibb = img(x-2,y-2)</tt> 60.911 + - <tt>Ina = img(x+1,y+2)</tt> 60.912 + - and so on... 60.913 + 60.914 + The value of a neighborhood pixel outside the image range (image border problem) is automatically set to the same 60.915 + values than the nearest valid pixel in the image (this is also called the \e Neumann \e border \e condition). 60.916 + 60.917 + \subsection lo11 Example codes 60.918 + More than a long discussion, the above example will demonstrate how to compute the gradient norm of a 3D volume 60.919 + using the \c cimg_for3x3x3() loop macro : 60.920 + 60.921 + \code 60.922 + CImg<float> volume("IRM.hdr"); // Load an IRM volume from an Analyze7.5 file 60.923 + CImg_3x3x3(I,float); // Define a 3x3x3 neighborhood 60.924 + CImg<float> gradnorm(volume); // Create an image with same size as 'volume' 60.925 + cimg_for3x3x3(volume,x,y,z,0,I) { // Loop over the volume, using the neighborhood I 60.926 + const float ix = 0.5f*(Incc-Ipcc); // Compute the derivative along the x-axis. 60.927 + const float iy = 0.5f*(Icnc-Icpc); // Compute the derivative along the y-axis. 60.928 + const float iz = 0.5f*(Iccn-Iccp); // Compute the derivative along the z-axis. 60.929 + gradnorm(x,y,z) = std::sqrt(ix*ix+iy*iy+iz*iz); // Set the gradient norm in the destination image 60.930 + } 60.931 + gradnorm.display("Gradient norm"); 60.932 + \endcode 60.933 + 60.934 + And the following example shows how to deal with neighborhood references to blur a color image by averaging 60.935 + pixel values on a 5x5 neighborhood. 60.936 + 60.937 + \code 60.938 + CImg<unsigned char> src("image_color.jpg"), dest(src,false), neighbor(5,5); // Image definitions. 60.939 + typedef unsigned char uchar; // Avoid space in the second parameter of the macro CImg_5x5x1 below. 60.940 + CImg<> N(5,5); // Define a 5x5 neighborhood as a 5x5 image. 60.941 + cimg_forV(src,k) // Standard loop on color channels 60.942 + cimg_for5x5(src,x,y,0,k,N) // 5x5 neighborhood loop. 60.943 + dest(x,y,k) = N.sum()/(5*5); // Averaging pixels to filter the color image. 60.944 + CImgList<unsigned char> visu(src,dest); 60.945 + visu.display("Original + Filtered"); // Display both original and filtered image. 60.946 + \endcode 60.947 + 60.948 + As you can see, explaining the use of the CImg neighborhood macros is actually more difficult than using them ! 60.949 + 60.950 +**/ 60.951 +/*@}*/ 60.952 + 60.953 +/*----------------------------------- 60.954 + 60.955 + Using display windows 60.956 + 60.957 + -------------------------------------*/ 60.958 + 60.959 +/** \addtogroup cimg_displays Using Display Windows. */ 60.960 +/*@{*/ 60.961 +/** 60.962 + \page foo_di 60.963 + 60.964 + When opening a display window, you can choose the way the pixel values will be normalized 60.965 + before being displayed on the screen. Screen displays only support color values between [0,255], 60.966 + and some 60.967 + 60.968 + When displaying an image into the display window using CImgDisplay::display(), values of 60.969 + the image pixels can be eventually linearly normalized between [0,255] for visualization purposes. 60.970 + This may be useful for instance when displaying \p CImg<double> images with pixel values 60.971 + between [0,1]. 60.972 + The normalization behavior depends on the value of \p normalize which can be either \p 0,\p 1 or \p 2 : 60.973 + - \p 0 : No pixel normalization is performed when displaying an image. This is the fastest 60.974 + process, but you must be sure your displayed image have pixel values inside the range [0,255]. 60.975 + - \p 1 : Pixel value normalization is done for each new image display. Image pixels are 60.976 + not modified themselves, only displayed pixels are normalized. 60.977 + - \p 2 : Pixel value normalization is done for the first image display, then the 60.978 + normalization parameters are kept and used for all the next image displays. 60.979 + 60.980 +**/ 60.981 +/*@}*/ 60.982 + 60.983 +/*----------------------------------- 60.984 + 60.985 + How pixel data are stored 60.986 + 60.987 + -------------------------------------*/ 60.988 + 60.989 +/** \addtogroup cimg_storage How pixel data are stored with CImg. */ 60.990 +/*@{*/ 60.991 +/** 60.992 + \page foo_store 60.993 + 60.994 + First, CImg<T> are *very* basic structures, which means that there are no memory tricks, weird memory alignments or 60.995 + disk caches used to store pixel data of images. When an image is instanced, all its pixel values are stored in memory at 60.996 + the same time (yes, you should avoid working with huge images when dealing with CImg, if you have only 64kb of RAM). 60.997 + 60.998 + A CImg<T> is basically a 4th-dimensional array (width,height,depth,dim), and its pixel data are stored linearly in a single 60.999 + memory buffer of general size (width*height*depth*dim). Nothing more, nothing less. The address of this memory buffer can be 60.1000 + retrieved by the function CImg<T>::ptr(). 60.1001 + As each image value is stored as a type T (T being known by the programmer of course), this pointer is a 'T*', or a 'const T*' if your image is 'const'. 60.1002 + so, 'T *ptr = img.ptr()' gives you the pointer to the first value of the image 'img'. The overall size of the used memory for one 60.1003 + instance image (in bytes) is then 'width*height*depth*dim*sizeof(T)'. 60.1004 + 60.1005 + Now, the ordering of the pixel values in this buffer follows these rules : 60.1006 + The values are *not* interleaved, and are ordered first along the X,Y,Z and V axis respectively (corresponding to the width,height,depth,dim dimensions), 60.1007 + starting from the upper-left pixel to the bottom-right pixel of the instane image, with a classical scanline run. 60.1008 + 60.1009 + So, a color image with dim=3 and depth=1, will be stored in memory as : 60.1010 + 60.1011 + R1R2R3R4R5R6......G1G2G3G4G5G6.......B1B2B3B4B5B6.... (i.e following a 'planar' structure) 60.1012 + 60.1013 + and *not* as R1G1B1R2G2B2R3G3B3... (interleaved channels), 60.1014 + where R1 = img(0,0,0,0) is the first upper-left pixel of the red component of the image, 60.1015 + R2 is img(1,0,0,0), G1 = img(0,0,0,1), G2 = img(1,0,0,1), B1 = img(0,0,0,2), and so on... 60.1016 + 60.1017 + Another example, a (1x5x1x1) CImg<T> (column vector A) will be stored as : A1A2A3A4A5 60.1018 + where A1 = img(0,0), A2 = img(0,1), ... , A5 = img(0,4). 60.1019 + 60.1020 + As you see, it is *very* simple and intuitive : no interleaving, no padding, just simple. 60.1021 + This is cool not only because it is simple, but this has in fact a number of interesting properties. For instance, a 2D color image 60.1022 + is stored in memory exactly as a 3D scalar image having a depth=3, meaning that when you are dealing with 2D color images, you can write 'img(x,y,k)' 60.1023 + instead of 'img(x,y,0,k)' to access the kth channel of the (x,y) pixel. More generally, if you have one dimension that is 1 in 60.1024 + your image, you can just skip it in the call to the operator(). Similarly, values of a column vector stored as an image with 60.1025 + width=depth=dim=1 can be accessed by 'img(y)' instead of 'img(0,y)'. This is very convenient. 60.1026 + 60.1027 + Another cool thing is that it allows you to work easily with 'shared' images. A shared image is a CImg<T> instance that shares 60.1028 + its memory with another one (the 'base' image). Destroying a shared image does nothing in fact. Shared images is a convenient 60.1029 + way of modifying only *portions* (consecutive in memory) of an image. For instance, if 'img' is a 2D color image, you can write : 60.1030 + 60.1031 + img.get_shared_channel(0).blur(2); 60.1032 + img.get_shared_channels(1,2).mirror('x'); 60.1033 + 60.1034 + which just blur the red channel of the image, and mirror the two others along the X-axis. 60.1035 + This is possible since channels of an image are not interleaved but are stored as different consecutive planes in memory, so you see that constructing a shared image is possible (and trivial). 60.1036 + 60.1037 +**/ 60.1038 +/*@}*/ 60.1039 + 60.1040 +/*----------------------------------- 60.1041 + 60.1042 + Files IO 60.1043 + 60.1044 + -------------------------------------*/ 60.1045 + 60.1046 +/** \addtogroup cimg_files_io Files IO in CImg. */ 60.1047 +/*@{*/ 60.1048 +/** 60.1049 + \page foo_fi 60.1050 + 60.1051 + The %CImg Library can NATIVELY handle the following file formats : 60.1052 + - RAW : consists in a very simple header (in ascii), then the image data. 60.1053 + - ASC (Ascii) 60.1054 + - HDR (Analyze 7.5) 60.1055 + - INR (Inrimage) 60.1056 + - PPM/PGM (Portable Pixmap) 60.1057 + - BMP (uncompressed) 60.1058 + - PAN (Pandore-5) 60.1059 + - DLM (Matlab ASCII) 60.1060 + 60.1061 + If ImageMagick is installed, The %CImg Library can save image in formats handled by ImageMagick : JPG, GIF, PNG, TIF,... 60.1062 + 60.1063 +**/ 60.1064 +/*@}*/ 60.1065 + 60.1066 +/*----------------------------------- 60.1067 + 60.1068 + Retrieving command line arguments 60.1069 + 60.1070 + -------------------------------------*/ 60.1071 + 60.1072 +/** \addtogroup cimg_options Retrieving Command Line Arguments. */ 60.1073 +/*@{*/ 60.1074 +/** 60.1075 + \page foo_so 60.1076 + 60.1077 + The CImg library offers facilities to retrieve command line arguments in a console-based 60.1078 + program, as it is a commonly needed operation. 60.1079 + Three macros \c cimg_usage(), \c cimg_help() and \c cimg_option() are defined for this purpose. 60.1080 + Using these macros allows to easily retrieve options values from the command line. 60.1081 + Invoking the compiled executable with the option \c -h or \c --help will 60.1082 + automatically display the program usage, followed by the list of requested options. 60.1083 + 60.1084 + \section so1 The cimg_usage() macro 60.1085 + 60.1086 + The macro \c cimg_usage(usage) may be used to describe the program goal and usage. 60.1087 + It is generally inserted one time after the <tt>int main(int argc,char **argv)</tt> definition. 60.1088 + 60.1089 + \param usage : A string describing the program goal and usage. 60.1090 + \pre The function where \c cimg_usage() is used must have correctly defined \c argc and \c argv variables. 60.1091 + 60.1092 + \section so1_5 The cimg_help() macro 60.1093 + 60.1094 + The macro \c cimg_help(str) will display the string \c str only if the \c -help or \c --help option 60.1095 + are invoked when running the programm. 60.1096 + 60.1097 + \section so2 The cimg_option() macro 60.1098 + 60.1099 + The macro \c cimg_option(name,default,usage) may be used to retrieve an option value from the command line. 60.1100 + 60.1101 + \param name : The name of the option to be retrieved from the command line. 60.1102 + \param default : The default value returned by the macro if no options \p name has been specified when running the program. 60.1103 + \param usage : A brief explanation of the option. If \c usage==0, the option won't appear on the option list 60.1104 + when invoking the executable with options \c -h or \c --help (hidden option). 60.1105 + 60.1106 + \return \c cimg_option() returns an object that has the \e same \e type than the default value \c default. 60.1107 + The return value is equal to the one specified on the command line. If no such option have been specified, 60.1108 + the return value is equal to the default value \c default. 60.1109 + Warning, this can be confusing in some situations (look at the end of the next section). 60.1110 + \pre The function where \c cimg_option() is used must have correctly defined \c argc and \c argv variables. 60.1111 + 60.1112 + \section so3 Example of use 60.1113 + 60.1114 + The code below uses the macros \c cimg_usage() and \c cimg_option(). 60.1115 + It loads an image, smoothes it an quantifies it with a specified number of values. 60.1116 + \code 60.1117 + #include "CImg.h" 60.1118 + using namespace cimg_library; 60.1119 + int main(int argc,char **argv) { 60.1120 + cimg_usage("Retrieve command line arguments"); 60.1121 + const char* filename = cimg_option("-i","image.gif","Input image file"); 60.1122 + const char* output = cimg_option("-o",(char*)0,"Output image file"); 60.1123 + const double sigma = cimg_option("-s",1.0,"Standard variation of the gaussian smoothing"); 60.1124 + const int nblevels = cimg_option("-n",16,"Number of quantification levels"); 60.1125 + const bool hidden = cimg_option("-hidden",false,0); // This is a hidden option 60.1126 + 60.1127 + CImg<unsigned char> img(filename); 60.1128 + img.blur(sigma).quantize(nblevels); 60.1129 + if (output) img.save(output); else img.display("Output image"); 60.1130 + if (hidden) std::fprintf(stderr,"You found me !\n"); 60.1131 + return 0; 60.1132 + } 60.1133 + \endcode 60.1134 + 60.1135 + Invoking the corresponding executable with <tt>test -h -hidden -n 20 -i foo.jpg</tt> will display : 60.1136 + \verbatim 60.1137 + ./test -h -hidden -n 20 -i foo.jpg 60.1138 + 60.1139 + test : Retrieve command line arguments (Oct 16 2004, 12:34:26) 60.1140 + 60.1141 + -i = foo.jpg : Input image file 60.1142 + -o = 0 : Output image file 60.1143 + -s = 1 : Standard variation of the gaussian smoothing 60.1144 + -n = 20 : Number of quantification levels 60.1145 + 60.1146 + You found me ! 60.1147 +\endverbatim 60.1148 + 60.1149 + \warning As the type of object returned by the macro \c cimg_option(option,default,usage) 60.1150 + is defined by the type of \c default, undesired casts may appear when writting code such as : 60.1151 + \code 60.1152 + const double sigma = cimg_option("-val",0,"A floating point value"); 60.1153 + \endcode 60.1154 + In this case, \c sigma will always be equal to an integer (since the default value \c 0 is an integer). 60.1155 + When passing a float value on the command line, a \e float \e to \e integer cast is then done, 60.1156 + truncating the given parameter to an integer value (this is surely not a desired behavior). 60.1157 + You must specify <tt>0.0</tt> as the default value in this case. 60.1158 + 60.1159 + \section so4 How to learn more about command line options ? 60.1160 + You should take a look at the examples <tt>examples/gmic.cpp</tt> provided in the %CImg Library package. 60.1161 + This is a command line based image converter which intensively uses the \c cimg_option() and \c cimg_usage() 60.1162 + macros to retrieve command line parameters. 60.1163 +**/ 60.1164 +/*@}*/ 60.1165 +
61.1 Binary file PTdecode/CImg-1.3.0/html/CImg_reference.pdf has changed
62.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 62.2 +++ b/PTdecode/CImg-1.3.0/html/chat.shtml Mon Aug 03 14:09:20 2009 +0100 62.3 @@ -0,0 +1,18 @@ 62.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 62.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 62.6 +<!--#include file="header.html" --> 62.7 + 62.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 62.9 +<font face="Arial,Helvetica" size="-1"> 62.10 + 62.11 +<img src="img/item_chat.gif" alt="Online Chat"> 62.12 +<p> 62.13 +This is a small chat dedicated to the CImg Library. Feel free to say something interesting, ask something, or share your experience. 62.14 +You need Flash to be able to see this chat. 62.15 +</p> 62.16 + 62.17 +<center> 62.18 +<embed src="http://www.xatech.com/web_gear/chat/chat.swf" quality="high" width="750" height="450" name="chat" FlashVars="id=51479969" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://xat.com/update_flash.shtml" /> 62.19 +</center> 62.20 + 62.21 +<!--#include file="footer.html" -->
63.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 63.2 +++ b/PTdecode/CImg-1.3.0/html/download.shtml Mon Aug 03 14:09:20 2009 +0100 63.3 @@ -0,0 +1,82 @@ 63.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 63.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 63.6 +<!--#include file="header.html" --> 63.7 + 63.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 63.9 +<font face="Arial,Helvetica" size="-1"> 63.10 + 63.11 +<img src="img/item_download.gif" alt="Download"> 63.12 +<p> 63.13 +<b>Prerequisites</b> : 63.14 + There are no strict prerequisites for installing and using the CImg Library. Anyway, we recommend 63.15 + you install one of the binary release of the 63.16 + <a href="http://www.imagemagick.org/script/binary-releases.php"><i>ImageMagick package</i></a> 63.17 + on your system. It is the easiest way (although not the only one) to help CImg loading/saving compressed image formats, 63.18 + such as JPEG, PNG, GIF, etc...<br/><br/> 63.19 + You have different ways to get the CImg library : 63.20 + 63.21 +<table align="left" border="0" width="100%" cellspacing="20"> 63.22 +<tr><td><a href="http://sourceforge.net/project/showfiles.php?group_id=96492&package_id=103094"> 63.23 +<img src="img/item_standard_package.jpg" border="0" alt="Standard Package" 63.24 + onmouseover="this.src='img/item_standard_package2.jpg';" 63.25 + onmouseout="this.src='img/item_standard_package.jpg';" /></a></td> 63.26 +<td><hr noshade="noshade" size="1" width="100%"></hr> 63.27 + The CImg library is provided as 63.28 + <a href="http://sourceforge.net/project/showfiles.php?group_id=96492&package_id=103094"> 63.29 + <i>.zip</i> or 63.30 + <i>.tar.gz packages</i></a> 63.31 + which are <b>plateform-independent</b>. 63.32 + They contain all the needed library files, as well as various examples illustrating 63.33 + the use of the library functions and classes.<br/> 63.34 +</td></tr> 63.35 +<tr><td><a href="http://cimg.sourceforge.net/cimg-dev.deb"> 63.36 +<img src="img/item_debian_package.jpg" border="0" alt="Debian Package" 63.37 + onmouseover="this.src='img/item_debian_package2.jpg';" 63.38 + onmouseout="this.src='img/item_debian_package.jpg';" /></a></td> 63.39 +<td><hr noshade="noshade" size="1" width="100%"></hr> 63.40 + A <a href="http://cimg.sourceforge.net/cimg-dev.deb"> 63.41 + <i>.deb</i> package file</a> 63.42 + is available for <b>Debian-based Unix distributions</b> 63.43 + (including the well known Ubuntu distro). 63.44 + Copy/Paste the lines below for a quick installation of the latest version of the CImg library 63.45 + under such systems (superuser privileges required) : <br/><br/> 63.46 + <table cellpadding="10" cellspacing="0" border="0" bgcolor="#EEEEFF"><tr><td> 63.47 + <font size="-1"><i>wget http://cimg.sourceforge.net/cimg-dev.deb<br/> 63.48 + dpkg -i cimg-dev.deb</i></font> 63.49 + </td></tr></table> 63.50 +</td></tr> 63.51 +<tr><td><a href="http://prdownloads.sourceforge.net/cimg/CImg_demo_exe.zip?download"> 63.52 +<img src="img/item_precompiled.jpg" border="0" alt="Pre-compiled Binaries" 63.53 + onmouseover="this.src='img/item_precompiled2.jpg';" 63.54 + onmouseout="this.src='img/item_precompiled.jpg';" /></a></td> 63.55 +<td><hr noshade="noshade" size="1" width="100%"></hr> 63.56 + Pre-compiled binaries of the main library demo file are available for <i>Windows</i>, <i>Linux</i> and <i>MacOSX</i>. 63.57 + <a href="http://prdownloads.sourceforge.net/cimg/CImg_demo_exe.zip?download"> 63.58 + Download this archive</a> if you want a quick overview of what the CImg Library can do.<br/> 63.59 + <i>Note that this archive <b>does not contain any sources !</b> 63.60 + If you want to be able to compile your own programs, download the standard package instead.</i> 63.61 +</td></tr> 63.62 +<tr><td><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/"> 63.63 +<img src="img/item_sources.jpg" border="0" alt="Sources Repository" 63.64 + onmouseover="this.src='img/item_sources2.jpg';" 63.65 + onmouseout="this.src='img/item_sources.jpg';" /></a></td> 63.66 +<td><hr noshade="noshade" size="1" width="100%"></hr> 63.67 + You may be also more adventurous and use CVS. 63.68 + This ensures you will get the latest code available, and will ease the 63.69 + updates as well (knowing the tool 'cvs' is needed indeed). To do this, just 63.70 + type the commands : <br><br> 63.71 + <table cellpadding="10" cellspacing="0" border="0" bgcolor="#EEEEFF"><tr><td> 63.72 + <font size="-1"><i> 63.73 + export CVS_RSH=ssh<br/> 63.74 + cvs -d:pserver:anonymous@cimg.cvs.sourceforge.net:/cvsroot/cimg co CImg 63.75 + </i></font> 63.76 + </td></tr></table> 63.77 + <br>in your favorite console. Nevertheless, you have to know that some code in the CVS version 63.78 + may be experimental, so always test the latest stable archive before complaining ! 63.79 +</td></tr> 63.80 +</table> 63.81 +</p> 63.82 + 63.83 +</font></td></tr></tbody></table> 63.84 + 63.85 +<!--#include file="footer.html" -->
64.1 Binary file PTdecode/CImg-1.3.0/html/favicon.ico has changed
65.1 Binary file PTdecode/CImg-1.3.0/html/favicon.png has changed
66.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 66.2 +++ b/PTdecode/CImg-1.3.0/html/footer.html Mon Aug 03 14:09:20 2009 +0100 66.3 @@ -0,0 +1,17 @@ 66.4 +<hr noshade="noshade" size="1" width="100%"> 66.5 +<a href="http://sourceforge.net"> 66.6 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 66.7 +</a> 66.8 +<!-- Start of StatCounter Code --> 66.9 +<script type="text/javascript" language="javascript"> 66.10 +<!-- 66.11 +var sc_project=895001; 66.12 +var sc_invisible=1; 66.13 +var sc_partition=7; 66.14 +var sc_security="5ea85181"; 66.15 +//--> 66.16 +</script> 66.17 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 66.18 +<!-- End of StatCounter Code --> 66.19 +</body> 66.20 +</html>
67.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 67.2 +++ b/PTdecode/CImg-1.3.0/html/header.html Mon Aug 03 14:09:20 2009 +0100 67.3 @@ -0,0 +1,63 @@ 67.4 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 67.5 +<head> 67.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 67.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 67.8 +<meta content="David Tschumperle" name="author"></meta> 67.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 67.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 67.11 +<style type="text/css"> 67.12 +<!-- 67.13 +body {background-color:white; font-family:sans-serif; } 67.14 +a:active{text-decoration:none; color:#303090} 67.15 +a:link{text-decoration:none; color:#303090} 67.16 +a:visited{text-decoration:none; color:#303090} 67.17 +a:hover{text-decoration:underline; color:#4E9F71} 67.18 +--> 67.19 +</style> 67.20 +<script language="JavaScript" type="text/javascript"> 67.21 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 67.22 + <!-- Web Site: http://redrival.com/eak/ --> 67.23 + <!-- This script and many more are available free online at --> 67.24 + <!-- The JavaScript Source!! http://javascript.internet.com --> 67.25 + <!-- Begin 67.26 + function NewWindow(mypage, myname, w, h, scroll) { 67.27 + var winl = (screen.width - w) / 2; 67.28 + var wint = (screen.height - h) / 2; 67.29 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 67.30 + win = window.open(mypage, myname, winprops) 67.31 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 67.32 + } 67.33 + // End --> 67.34 +</script> 67.35 +</head> 67.36 +<body> 67.37 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 67.38 + <tbody><tr><td> 67.39 + <hr noshade="noshade" size="1" width="90%"></hr> 67.40 + <center> 67.41 + <br/> 67.42 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 67.43 + <br/> 67.44 + </center> 67.45 + <hr noshade="noshade" size="1" width="90%"></hr> 67.46 + <center> 67.47 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 67.48 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 67.49 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 67.50 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 67.51 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 67.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 67.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 67.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 67.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 67.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 67.57 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 67.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 67.59 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 67.60 + </font> 67.61 + </td></tr></tbody> 67.62 + </table> 67.63 + </center> 67.64 + <hr noshade="noshade" size="1" width="90%"></hr> 67.65 + </td></tr></tbody> 67.66 +</table>
68.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 68.2 +++ b/PTdecode/CImg-1.3.0/html/header_reference.html Mon Aug 03 14:09:20 2009 +0100 68.3 @@ -0,0 +1,65 @@ 68.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 68.5 +<head> 68.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 68.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 68.8 +<meta content="David Tschumperle" name="author"></meta> 68.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 68.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 68.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 68.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 68.13 +<style type="text/css"> 68.14 +<!-- 68.15 +body {background-color:white; font-family:sans-serif; } 68.16 +a:active{text-decoration:none; color:#303090} 68.17 +a:link{text-decoration:none; color:#303090} 68.18 +a:visited{text-decoration:none; color:#303090} 68.19 +a:hover{text-decoration:underline; color:#4E9F71} 68.20 +--> 68.21 +</style> 68.22 +<script language="JavaScript" type="text/javascript"> 68.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 68.24 + <!-- Web Site: http://redrival.com/eak/ --> 68.25 + <!-- This script and many more are available free online at --> 68.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 68.27 + <!-- Begin 68.28 + function NewWindow(mypage, myname, w, h, scroll) { 68.29 + var winl = (screen.width - w) / 2; 68.30 + var wint = (screen.height - h) / 2; 68.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 68.32 + win = window.open(mypage, myname, winprops) 68.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 68.34 + } 68.35 + // End --> 68.36 +</script> 68.37 +</head> 68.38 +<body> 68.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 68.40 + <tbody><tr><td> 68.41 + <hr noshade="noshade" size="1" width="90%"></hr> 68.42 + <center> 68.43 + <br/> 68.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 68.45 + <br/> 68.46 + </center> 68.47 + <hr noshade="noshade" size="1" width="90%"></hr> 68.48 + <center> 68.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 68.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 68.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 68.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 68.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 68.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 68.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 68.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 68.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 68.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 68.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 68.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 68.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 68.62 + </font> 68.63 + </td></tr></tbody> 68.64 + </table> 68.65 + </center> 68.66 + <hr noshade="noshade" size="1" width="90%"></hr> 68.67 + </td></tr></tbody> 68.68 +</table>
69.1 Binary file PTdecode/CImg-1.3.0/html/img/CImgLogo.jpg has changed
70.1 Binary file PTdecode/CImg-1.3.0/html/img/CImg_flyer.jpg has changed
71.1 Binary file PTdecode/CImg-1.3.0/html/img/curve_editor.jpg has changed
72.1 Binary file PTdecode/CImg-1.3.0/html/img/item_authors.jpg has changed
73.1 Binary file PTdecode/CImg-1.3.0/html/img/item_chat.gif has changed
74.1 Binary file PTdecode/CImg-1.3.0/html/img/item_clickvideo.jpg has changed
75.1 Binary file PTdecode/CImg-1.3.0/html/img/item_clickvideo2.jpg has changed
76.1 Binary file PTdecode/CImg-1.3.0/html/img/item_copyrights.jpg has changed
77.1 Binary file PTdecode/CImg-1.3.0/html/img/item_debian_package.jpg has changed
78.1 Binary file PTdecode/CImg-1.3.0/html/img/item_debian_package2.jpg has changed
79.1 Binary file PTdecode/CImg-1.3.0/html/img/item_description.jpg has changed
80.1 Binary file PTdecode/CImg-1.3.0/html/img/item_download.gif has changed
81.1 Binary file PTdecode/CImg-1.3.0/html/img/item_extensibility.jpg has changed
82.1 Binary file PTdecode/CImg-1.3.0/html/img/item_file.jpg has changed
83.1 Binary file PTdecode/CImg-1.3.0/html/img/item_freedom.jpg has changed
84.1 Binary file PTdecode/CImg-1.3.0/html/img/item_genericity.jpg has changed
85.1 Binary file PTdecode/CImg-1.3.0/html/img/item_guestbook.jpg has changed
86.1 Binary file PTdecode/CImg-1.3.0/html/img/item_howtohelp.jpg has changed
87.1 Binary file PTdecode/CImg-1.3.0/html/img/item_intro.gif has changed
88.1 Binary file PTdecode/CImg-1.3.0/html/img/item_learnmore.jpg has changed
89.1 Binary file PTdecode/CImg-1.3.0/html/img/item_licenses.jpg has changed
90.1 Binary file PTdecode/CImg-1.3.0/html/img/item_links.gif has changed
91.1 Binary file PTdecode/CImg-1.3.0/html/img/item_news.gif has changed
92.1 Binary file PTdecode/CImg-1.3.0/html/img/item_portability.jpg has changed
93.1 Binary file PTdecode/CImg-1.3.0/html/img/item_precompiled.jpg has changed
94.1 Binary file PTdecode/CImg-1.3.0/html/img/item_precompiled2.jpg has changed
95.1 Binary file PTdecode/CImg-1.3.0/html/img/item_quickhistory.jpg has changed
96.1 Binary file PTdecode/CImg-1.3.0/html/img/item_screenshots.gif has changed
97.1 Binary file PTdecode/CImg-1.3.0/html/img/item_simplicity.jpg has changed
98.1 Binary file PTdecode/CImg-1.3.0/html/img/item_sources.jpg has changed
99.1 Binary file PTdecode/CImg-1.3.0/html/img/item_sources2.jpg has changed
100.1 Binary file PTdecode/CImg-1.3.0/html/img/item_standard_package.jpg has changed
101.1 Binary file PTdecode/CImg-1.3.0/html/img/item_standard_package2.jpg has changed
102.1 Binary file PTdecode/CImg-1.3.0/html/img/item_usefulness.jpg has changed
103.1 Binary file PTdecode/CImg-1.3.0/html/img/logoCNRS.gif has changed
104.1 Binary file PTdecode/CImg-1.3.0/html/img/logoGMIC.ppm has changed
105.1 Binary file PTdecode/CImg-1.3.0/html/img/logoGREYC.gif has changed
106.1 Binary file PTdecode/CImg-1.3.0/html/img/logoIMAGE.gif has changed
107.1 Binary file PTdecode/CImg-1.3.0/html/img/logoINRIA.gif has changed
108.1 Binary file PTdecode/CImg-1.3.0/html/img/logoODYSSEE.jpg has changed
109.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard1.jpg has changed
110.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard10.jpg has changed
111.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard2.jpg has changed
112.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard3.jpg has changed
113.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard4.jpg has changed
114.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard5.jpg has changed
115.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard6.jpg has changed
116.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard7.jpg has changed
117.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard8.jpg has changed
118.1 Binary file PTdecode/CImg-1.3.0/html/img/postcard9.jpg has changed
119.1 Binary file PTdecode/CImg-1.3.0/html/img/project-support.jpg has changed
120.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_blobs.jpg has changed
121.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_bubble.jpg has changed
122.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_bump.jpg has changed
123.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_demomenu.jpg has changed
124.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_dtmri.jpg has changed
125.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_fourier.jpg has changed
126.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_hough.jpg has changed
127.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_imgfade.jpg has changed
128.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_jawbreaker.jpg has changed
129.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_landscape.jpg has changed
130.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mandelbrot.jpg has changed
131.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_metaballs.jpg has changed
132.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000000.jpg has changed
133.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000001.jpg has changed
134.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000002.jpg has changed
135.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000003.jpg has changed
136.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000004.jpg has changed
137.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000005.jpg has changed
138.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000006.jpg has changed
139.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000007.jpg has changed
140.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000008.jpg has changed
141.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000009.jpg has changed
142.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000010.jpg has changed
143.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000011.jpg has changed
144.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000012.jpg has changed
145.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000013.jpg has changed
146.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000014.jpg has changed
147.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000015.jpg has changed
148.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000016.jpg has changed
149.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000017.jpg has changed
150.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000018.jpg has changed
151.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000019.jpg has changed
152.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000020.jpg has changed
153.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000021.jpg has changed
154.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000022.jpg has changed
155.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000023.jpg has changed
156.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000024.jpg has changed
157.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000025.jpg has changed
158.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000026.jpg has changed
159.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_mini_000027.jpg has changed
160.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_odykill.jpg has changed
161.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_optflow.jpg has changed
162.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_paint.jpg has changed
163.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_plasma.jpg has changed
164.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_puzzle.jpg has changed
165.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_reflection.jpg has changed
166.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_render3d.jpg has changed
167.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_restoration.jpg has changed
168.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_rotozoom.jpg has changed
169.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_shadebobs.jpg has changed
170.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_surface.jpg has changed
171.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_tetris.jpg has changed
172.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_triangle.jpg has changed
173.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_volume3d.jpg has changed
174.1 Binary file PTdecode/CImg-1.3.0/html/img/ss_waves.jpg has changed
175.1 Binary file PTdecode/CImg-1.3.0/html/img/tutorial.jpg has changed
176.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 176.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_blobs.html Mon Aug 03 14:09:20 2009 +0100 176.3 @@ -0,0 +1,1 @@ 176.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-3563839899543750220&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
177.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 177.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_bubble.html Mon Aug 03 14:09:20 2009 +0100 177.3 @@ -0,0 +1,1 @@ 177.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-427159083585308511&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
178.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 178.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_bump.html Mon Aug 03 14:09:20 2009 +0100 178.3 @@ -0,0 +1,1 @@ 178.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=1570416667092534064&hl=fr"> </embed>
179.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 179.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_cimgdemo.html Mon Aug 03 14:09:20 2009 +0100 179.3 @@ -0,0 +1,1 @@ 179.4 +<embed id="VideoPlayback" style="width:400px;height:326px" flashvars="" src="http://video.google.com/googleplayer.swf?docid=-9022241908180662666&hl=en" type="application/x-shockwave-flash"> </embed>
180.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 180.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_curveeditor.html Mon Aug 03 14:09:20 2009 +0100 180.3 @@ -0,0 +1,2 @@ 180.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docid=-3933622618766868810"> </embed> 180.5 +
181.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 181.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_doubletorus.html Mon Aug 03 14:09:20 2009 +0100 181.3 @@ -0,0 +1,1 @@ 181.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=9001123620481274460&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
182.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 182.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_dtmri.html Mon Aug 03 14:09:20 2009 +0100 182.3 @@ -0,0 +1,1 @@ 182.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=6011570048035775178&hl=fr"> </embed>
183.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 183.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_fourier.html Mon Aug 03 14:09:20 2009 +0100 183.3 @@ -0,0 +1,1 @@ 183.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=2090791580954338630&hl=fr" flashvars=""> </embed>
184.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 184.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_imagesurface.html Mon Aug 03 14:09:20 2009 +0100 184.3 @@ -0,0 +1,1 @@ 184.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-5766941647979621643&hl=fr"> </embed>
185.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 185.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_jawbreaker.html Mon Aug 03 14:09:20 2009 +0100 185.3 @@ -0,0 +1,1 @@ 185.4 +<embed style="width:400px;height:326px;" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=6265692899280005437&hl=fr" id="VideoPlayback" align="middle" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"></embed> 185.5 \ No newline at end of file
186.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 186.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_landscape.html Mon Aug 03 14:09:20 2009 +0100 186.3 @@ -0,0 +1,1 @@ 186.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=2358832979637878667&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
187.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 187.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_mandelbrot.html Mon Aug 03 14:09:20 2009 +0100 187.3 @@ -0,0 +1,1 @@ 187.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-9179050750421729965&hl=fr"> </embed>
188.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 188.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_menu.html Mon Aug 03 14:09:20 2009 +0100 188.3 @@ -0,0 +1,1 @@ 188.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=6332670195730015696&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
189.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 189.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_metaballs.html Mon Aug 03 14:09:20 2009 +0100 189.3 @@ -0,0 +1,1 @@ 189.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-3792906843208712116&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed> 189.5 \ No newline at end of file
190.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 190.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_minipaint.html Mon Aug 03 14:09:20 2009 +0100 190.3 @@ -0,0 +1,1 @@ 190.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=1238426581240427783&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
191.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 191.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_plasma.html Mon Aug 03 14:09:20 2009 +0100 191.3 @@ -0,0 +1,1 @@ 191.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-6712810918804188705&hl=fr"> </embed>
192.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 192.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_reflection.html Mon Aug 03 14:09:20 2009 +0100 192.3 @@ -0,0 +1,1 @@ 192.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-2920059083776161234&hl=fr" flashvars=""> </embed>
193.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 193.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_shadebobs.html Mon Aug 03 14:09:20 2009 +0100 193.3 @@ -0,0 +1,1 @@ 193.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-6978254100250192153&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
194.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 194.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_tetris.html Mon Aug 03 14:09:20 2009 +0100 194.3 @@ -0,0 +1,1 @@ 194.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=6525852333103928158&hl=fr"> </embed>
195.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 195.2 +++ b/PTdecode/CImg-1.3.0/html/img/video_waves.html Mon Aug 03 14:09:20 2009 +0100 195.3 @@ -0,0 +1,1 @@ 195.4 +<embed style="width:400px; height:326px;" id="VideoPlayback" align="middle" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=4067429730675734390&hl=fr" quality="best" bgcolor="#ffffff" scale="noScale" salign="TL" FlashVars="playerMode=embedded"> </embed>
196.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 196.2 +++ b/PTdecode/CImg-1.3.0/html/index.shtml Mon Aug 03 14:09:20 2009 +0100 196.3 @@ -0,0 +1,230 @@ 196.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 196.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 196.6 +<!--#include file="header.html" --> 196.7 + 196.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 196.9 +<font face="Arial,Helvetica" size="-1"> 196.10 + 196.11 +<img src="img/item_intro.gif" alt="Introduction"> 196.12 +<p> 196.13 +The CImg Library is an <b>open source C++ toolkit for image processing</b> designed with these properties in mind : 196.14 + 196.15 +<table border="0" width="100%" cellspacing="16"> 196.16 +<tr><td><img src="img/item_usefulness.jpg" alt="Usefulness"></td> 196.17 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.18 + CImg defines simple <i>classes</i> and <i>methods</i> 196.19 + aimed at manipulating generic images in your own C++ code : Load/save various file formats, access pixel values, 196.20 + display, resize/rotate/mirror/filter, draw primitives (text, faces, curves, 3D objects, ...), compute statistics, 196.21 + manage user interactions, and so on... 196.22 +</td></tr> 196.23 +<tr><td><img src="img/item_genericity.jpg" alt="Genericity"></td> 196.24 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.25 + Provided image classes can represent datasets up to 196.26 + <i>4-dimension wide</i> (from 1D scalar signals to 3D hyperspectral volumes), with template pixel types. 196.27 + Image <i>collections</i> and <i>sequences</i> are also supported. 196.28 +</td></tr> 196.29 +<tr><td><img src="img/item_portability.jpg" alt="Portability"></td> 196.30 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.31 + CImg is <i>self-contained</i> and thus <i>highly portable</i>. It fully works on 196.32 + <i>different operating systems</i> (Unix, Windows, MacOS X, *BSD) with <i>various C++ compilers</i> 196.33 + (Visual C++, GNU g++, Intel icc, Borland bcc, ...). 196.34 +</td></tr> 196.35 +<tr><td><img src="img/item_simplicity.jpg" alt="Simplicity"></td> 196.36 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.37 + CImg is <i>lightweight</i>. It is made of a single header file 196.38 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup"><b>CImg.h</b></a></i> 196.39 + that must be included in your C++ source. It defines only <i>four</i> different classes. 196.40 + It can be compiled using a minimal set of standard C++ and system libraries. 196.41 + <i>No need for exotic or complex dependencies</i>. 196.42 +</td></tr> 196.43 +<tr><td><img src="img/item_extensibility.jpg" alt="Extensibility"></td> 196.44 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.45 + Although not required, CImg can use functionalities of external tools/libraries such as 196.46 + <a href="http://www.imagemagick.org/">ImageMagick</a>, 196.47 + <a href="http://www.graphicsmagick.org/">GraphicsMagick</a>, 196.48 + <a href="http://xmedcon.sourceforge.net/">XMedCon</a>, 196.49 + <a href="http://ffmpeg.mplayerhq.hu/">FFMPEG</a>, 196.50 + <a href="http://www.libpng.org/pub/png/libpng.html">libpng</a>, 196.51 + <a href="http://www.ijg.org/">libjpeg</a>, 196.52 + <a href="http://www.libtiff.org/">libtiff</a>, 196.53 + <a href="http://www.imagemagick.org/Magick++/">Magick++</a>, 196.54 + <a href="http://www.netlib.org/lapack/">Lapack</a>, 196.55 + <a href="http://libboard.sourceforge.net/">Board</a> 196.56 + or 196.57 + <a href="http://www.fftw.org/">FFTW3</a>. 196.58 + Moreover, a simple <i>plug-in</i> mechanism allows any user to directly enhance the library 196.59 + capabilities according to his needs. 196.60 +</td></tr> 196.61 +<tr><td><img src="img/item_freedom.jpg" alt="Freedom"></td> 196.62 +<td><hr noshade="noshade" size="1" width="100%"></hr> 196.63 + CImg is a <i>free, open-source library</i> distributed under the 196.64 + <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.txt"><i>CeCILL-C</i></a> (close to the GNU LGPL) 196.65 + or 196.66 + <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt"><i>CeCILL</i></a> (compatible with the GNU GPL) 196.67 + licenses</i></a>. It can be used in commercial applications. 196.68 +</td></tr> 196.69 +</table> 196.70 +</p> 196.71 + 196.72 +<blockquote> 196.73 +<b>CImg</b> stands for <b><i>"Cool Image"</i></b> : It is <b>easy to use</b> and <b>efficient</b>. 196.74 +It's a very pleasant toolbox to code image processing stuffs in C++, and potentially covers a wide range of image processing applications. 196.75 +In the distributed package, a <a href="screenshots.shtml">lot of examples</a> are provided to help the developper in its first steps.<br/> 196.76 +</blockquote> 196.77 + 196.78 +<br/><img src="img/item_authors.jpg" alt="Authors"> 196.79 +<blockquote> 196.80 +<a href="http://www.greyc.ensicaen.fr/~dtschump/">David Tschumperlé</a> (project leader), with the help of 196.81 +various contributors : 196.82 +<i> 196.83 + Haz-Edine Assemlal, 196.84 + Vincent Barra, 196.85 + Romain Blei, 196.86 + Yohan Bentolila, 196.87 + Jerome Boulanger, 196.88 + Frederic Devernay, 196.89 + François-Xavier Dupé, 196.90 + Eric Fausett, 196.91 + Jean-Marie Favreau, 196.92 + Sebastien Fourey, 196.93 + Alexandre Fournier, 196.94 + Vincent Garcia, 196.95 + Jinwei Gu, 196.96 + Jean-Daniel Guyot, 196.97 + Matt Hanson, 196.98 + Sebastien Hanel, 196.99 + Christoph Hormann, 196.100 + Werner Jainek, 196.101 + Daniel Kondermann, 196.102 + Pierre Kornprobst, 196.103 + Orges Leka, 196.104 + Francois Lauze, 196.105 + Xie Long, 196.106 + Thomas Martin, 196.107 + Cesar Martinez, 196.108 + Jean Martinot, 196.109 + Nikita Melnichenko, 196.110 + Baptiste Mougel, 196.111 + Renaud Peteri, 196.112 + Martin Petricek, 196.113 + Paolo Prete, 196.114 + Adrien Reboisson, 196.115 + Klaus Schneider, 196.116 + Konstantin Spirin, 196.117 + Rainer Steffens, 196.118 + David G. Starkweather, 196.119 + Grzegorz Szwoch, 196.120 + Thierry Thomas, 196.121 + Yu-En-Yun, 196.122 + Vo Duc Khanh, 196.123 + Phillip Wood, 196.124 + Bug Zhao, 196.125 + Haibo Zheng. 196.126 + </i> 196.127 +</blockquote> 196.128 + 196.129 +<br/><img src="img/item_licenses.jpg" alt="Licenses"> 196.130 +<blockquote> 196.131 + The CImg Library is an open-source product distributed under <b>two distinct licenses</b> : 196.132 + the library core itself is dual-licensed and 196.133 + can be governed either by the 196.134 + <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.txt"><b>CeCILL-C</b> License</a> (LGPL-like), 196.135 + or the 196.136 + <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt"><b>CeCILL</b> License</a> (GPL-compatible). 196.137 + Most of the other package files are distributed under the 196.138 + <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt"><b>CeCILL</b> License</a>. 196.139 + Both are <b>open source licenses</b>, the CeCILL-C being less restrictive than the CeCILL one. 196.140 + The CImg Library source code has been registered to the <a href="http://app.legalis.net/paris/">APP</a> 196.141 + (French Agency for the Protection of Programs) by the <a href="http://www.inria.fr/index.en.html">INRIA</a>, 196.142 + under registration number <i>IDDN.FR.001.040004.000.S.P.2004.000.21000.</i> 196.143 +</blockquote> 196.144 + 196.145 +<br/><img src="img/item_learnmore.jpg" alt="Learn More"> 196.146 +<ul> 196.147 + <li>The <a href="screenshots.shtml">Screenshots</a> section illustrates some of the different source code examples provided in 196.148 + the CImg package.</li> 196.149 + <li>The <a href="reference/group__cimg__tutorial.html">Tutorial</a> section shows the basic use of CImg classes 196.150 + and functions with a small first code.</li> 196.151 + <li>You can look at the quite complete <a href="CImg_slides.pdf">CImg Library presentation slides</a> (.pdf format) which gives 196.152 + more insights on the different library concepts.</li> 196.153 + <li>Online web statistics on the CImg website activity are available 196.154 + <a href="http://my.statcounter.com/project/standard/stats.php?project_id=895001&guest=1">here</a> and 196.155 + <a href="http://sourceforge.net/project/stats/?group_id=96492&ugn=cimg">here</a>.</li> 196.156 +</ul> 196.157 + 196.158 +<br/><img src="img/item_quickhistory.jpg" alt="Quick History"> 196.159 +<blockquote> 196.160 + The development of the CImg Library began at the end of 1999, when I started my PhD thesis 196.161 + in the <a href="http://www-sop.inria.fr/odyssee"><img border="0" height="16" alt="" src="img/logoODYSSEE.jpg"></img> Lab</a> 196.162 + at the <a href="http://www-sop.inria.fr/"><img border="0" height="16" alt="" src="img/logoINRIA.gif"></img> Sophia Antipolis</a>. 196.163 + It was designed to help me and my colleagues developing various image processing algorithms, 196.164 + for datasets as simple as 2D scalar images, or as complex as 3D volumes of diffusion tensors. I also used it for 196.165 + courses on image processing I teached at the university. That's why the CImg library 196.166 + has been always intended to be <i>compact</i>, <i>easy to use</i>, <i>multi-platform</i> and <i>generic</i>. 196.167 + It provides a lot of basic functions that one would like to see in an image 196.168 + processing framework for C++ programming. 196.169 + I am now a permanent researcher of the <a href="http://www.cnrs.fr"><img border="0" alt="" height="32" src="img/logoCNRS.gif"></img> 196.170 + institution</a>, 196.171 + working in the <a href="http://www.greyc.ensicaen.fr/EquipeImage"><img border="0" alt="" height="32" src="img/logoIMAGE.gif"></img> 196.172 + group</a> at the <a href="http://www.greyc.ensicaen.fr"><img border="0" alt="" height="32" src="img/logoGREYC.gif"></img> 196.173 + GREYC lab</a> in Caen/France. 196.174 + I am still using, maintaining and updating the CImg Library, and will probably do it for the next couple of years. 196.175 +</blockquote> 196.176 + 196.177 +<br/><img src="img/item_howtohelp.jpg" alt="How to Help ?"> 196.178 +<blockquote> 196.179 + The CImg Library is an open source C++ library which is mainly developped during 196.180 + free time. If you enjoy using CImg, you may contribute to the project 196.181 + in different ways. This will motivate me to continue the work. 196.182 + <ul> 196.183 + <li>You can help CImg to be more widely known, by displaying a 196.184 + <a href="CImg_flyer.pdf">CImg Flyer</a> at work, in your lab or school 196.185 + (available in <a href="CImg_flyer.pdf">.PDF</a> or <a href="img/CImg_flyer.jpg">.JPEG</a> formats). 196.186 + <li>You can report bugs, propose patches or new functionalities, using the CImg 196.187 + <a href="http://sourceforge.net/forum/?group_id=96492">forums</a> or 196.188 + <a href="http://sourceforge.net/tracker/?group_id=96492">trackers</a>.</li> 196.189 + <li>You can write 196.190 + <a href="reference/group__cimg__tutorial.html">tutorials</a> 196.191 + or parts of the <a href="reference/index.html">documentation</a>.</li> 196.192 + <li>If you just want to say you've been happy with the library, you can send me a postcard from your place, to the following address : <br/> 196.193 + <i>David Tschumperlé, GREYC (UMR CNRS 6072), Equipe IMAGE, 6 Bd du Maréchal Juin, 14050 Caen Cedex, FRANCE.</i><br/><br/> 196.194 + 10 postcards received yet (I still have empty space on my wall ! :) ), from :<br/><br/> 196.195 + <ul> 196.196 + <li><a href="img/postcard1.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.197 + Comissao Nacional de Energia Nuclear, Rio de Janeiro, Brazil.</a></li> 196.198 + <li><a href="img/postcard2.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.199 + Universidad Nacional del Litoral, Santa Fe, Argentina.</a></li> 196.200 + <li><a href="img/postcard3.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.201 + Waikiki's only true resort, Honolulu/Hawaii.</a></li> 196.202 + <li><a href="img/postcard4.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.203 + Royal Pavilion, Brighton/UK.</a></li> 196.204 + <li><a href="img/postcard5.jpg" onclick="NewWindow(this.href,'name','320','420','yes');return false;"> 196.205 + Cambridge, UK.</a></li> 196.206 + <li><a href="img/postcard6.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.207 + National Tai-Chung Institute of Technology, Taiwan.</a></li> 196.208 + <li><a href="img/postcard7.jpg" onclick="NewWindow(this.href,'name','420','320','yes');return false;"> 196.209 + Fuzzy Logic Laboratorium Linz-Hagenberg, Linz, Austria.</a></li> 196.210 + <li><a href="img/postcard8.jpg" onclick="NewWindow(this.href,'name','500','450','yes');return false;"> 196.211 + Corte/Corsica.</a></li> 196.212 + <li><a href="img/postcard9.jpg" onclick="NewWindow(this.href,'name','400','600','yes');return false;"> 196.213 + Microsoft Research, Beijing/China.</a></li> 196.214 + <li><a href="img/postcard10.jpg" onclick="NewWindow(this.href,'name','700','500','yes');return false;"> 196.215 + Palermo/Italia.</a></li> 196.216 + </ul><br/> 196.217 + <li>If you are rich, you can also <a href="http://sourceforge.net/donate/index.php?group_id=96492"> 196.218 + <img src="img/project-support.jpg" alt=""></img></a></li> 196.219 + </ul> 196.220 +</blockquote> 196.221 + 196.222 +<br/><img src="img/item_copyrights.jpg" alt="Copyrights"> 196.223 +<blockquote> 196.224 + <font size="-2"> 196.225 + Copyrights (C) From october 2004, David Tschumperlé - GREYC UMR CNRS 6072, Image group.<br/> 196.226 + Copyrights (C) January->September 2004, David Tschumperlé.<br/> 196.227 + Copyrights (C) 2000->2003, David Tschumperlé - INRIA Sophia-Antipolis. Odyssée group.<br/> 196.228 + </font> 196.229 +</blockquote> 196.230 + 196.231 +</font></td></tr></tbody></table> 196.232 + 196.233 +<!--#include file="footer.html" -->
197.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 197.2 +++ b/PTdecode/CImg-1.3.0/html/links.shtml Mon Aug 03 14:09:20 2009 +0100 197.3 @@ -0,0 +1,36 @@ 197.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 197.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 197.6 +<!--#include file="header.html" --> 197.7 + 197.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 197.9 +<font face="Arial,Helvetica" size="-1"> 197.10 + 197.11 +<img src="img/item_links.gif"> 197.12 +<p> 197.13 +The CImg Library is known to be used by these following projects. If you are using CImg and want your project to appear on this page, 197.14 + please post a message in the forum, or contact us by e-mail. 197.15 +<ul> 197.16 +<li><b><a href="http://enas.gforge.inria.fr/">Event Neural Assembly Simulation</a></b> is an 197.17 + open-source C++ library to simulate so called event neural unit. Done by the INRIA lab, in France.</li> 197.18 +<li><b><a href="http://www.vips.ecs.soton.ac.uk/index.php?title=GREYCstoration">The VIPS Library</a></b> integrates a GREYCstoration plugin.</li> 197.19 +<li><b><a href="http://csn.umit.at/download/toolbox/The_CRN_Toolbox.ppt">The CRN Toolbox</a></b> (Context Recognition Network Toolbox) from the Institute for Computer Systems and Networks, UMIT, Hall in Tirol.</li> 197.20 +<li><b><a href="http://www.digikam.org/">Digikam</a></b>, an advanced digital photo management application.</li> 197.21 +<li><b><a href="http://www.koffice.org/krita">Krita</a></b>, a painting and image editing application for KOffice.</li> 197.22 +<li><b><a href="http://ometah.berlios.de/index.php/Main_Page">oMetah</a></b>, a library aimed at the conception of metaheuristics.</li> 197.23 +<li><b><a href="http://www.itm.uni-stuttgart.de/research/pasimodo/pasimodo_de.php">PASIMODO</a></b>, a program package for particle-based simulation methods, developed at the Institute of Engineering and Computational Mechanics (University of Stuttgart, Germany). 197.24 +<li><b><a href="http://cimg.sourceforge.net/greycstoration/">GREYCstoration</a></b> is an open source algorithms for image denoising and interpolation. Command-line and GIMP plug-in versions are available.</li> 197.25 +<li><b><a href="http://akabla.free.fr/IDIL/index.html">IDIL</a></b> (Integrated Data & Image Library), a cross-platform library for computing, plotting and image analysis.</li> 197.26 +<li><b><a href="http://gmic.sourceforge.net/">G'MIC</a></b> is a command-line image manipulation tool able to deal with sequences of 1D/2D/3D multi-spectral images.</li> 197.27 +<li><b><a href="http://pieni.net/~thirsima/gocam">GoCam</a></b>, an open source project for developing a computer vision system that analyses video capture of a go game.</li> 197.28 +<li><b><a href="http://www.ece.lsu.edu/ipl/Demos.html">LSU's Super-Resolution GUI</a></b>, a super resolution (SR) software for researchers.</li> 197.29 +<li><b><a href="http://www.imagico.de/ascos/index.html">ASCOS</a></b>, a correction tool for satellite images.</li> 197.30 +<li><b><a href="http://www-sop.inria.fr/books/imath">Mathematical Problems in Image Processing</a></b>, a book from P. Kornprobst and G. Aubert, coming with C++ algorithms described in the book.</li> 197.31 +<li><b><a href="http://fc.isima.fr/~vbarra/Imagerie/">Courses in Image Processing</a></b> from the engineering school ISIMA, with projects done in C++ with CImg (in french).</li> 197.32 +<li><b><a href="http://www-sop.inria.fr/odyssee/team/Pierre.Kornprobst/enseignement/projetsArchive/index.html">Open source CImg-based projects</a></b> implementing several image processing algorithms, parts of student assignements (in french, supervisor P. Kornprobst).</li> 197.33 +<li><b><a href="http://www.google.com/codesearch?hl=en&lr=&q=%22cimg_library%22&btnG=Search">Other pieces of code using CImg</a></b> can be found there, using Google search. 197.34 +</ul> 197.35 +</p> 197.36 + 197.37 +</font></td></tr></tbody></table> 197.38 + 197.39 +<!--#include file="footer.html" -->
198.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 198.2 +++ b/PTdecode/CImg-1.3.0/html/news.shtml Mon Aug 03 14:09:20 2009 +0100 198.3 @@ -0,0 +1,965 @@ 198.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 198.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 198.6 +<!--#include file="header.html" --> 198.7 + 198.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 198.9 +<font face="Arial,Helvetica" size="-1"> 198.10 + 198.11 +<img src="img/item_news.gif" alt="Latest News"> 198.12 +<p> 198.13 +Here are the latest news about the CImg Library project. 198.14 +</p> 198.15 +</font> 198.16 + 198.17 +<!-- ###################### --> 198.18 +<font face="Arial,Helvetica"><font size="-1"> 198.19 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.20 +<tbody><tr bgcolor="#ccccee"><td> 198.21 +<b>10th postcard received !</b> 198.22 +<font size="-2">(2007/08/17, 02:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.23 +Today, I received another postcard from Palermo/Italia ! Thanks you for this one. Unfortunately, the senders did not give 198.24 +a e-mail, and thus I cannot thank them directly. But if you read me, thanks a lot ! 198.25 +My postcard wall is growing slowly... 198.26 +<br/><br/> 198.27 +<img src="img/postcard10.jpg"></img> 198.28 +</font></blockquote></td></tr></table></font><br/> 198.29 + 198.30 +<!-- ###################### --> 198.31 +<font face="Arial,Helvetica"><font size="-1"> 198.32 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.33 +<tbody><tr bgcolor="#ccccee"><td> 198.34 +<b>CImg 1.2.9 Released</b> 198.35 +<font size="-2">(2008/06/26, 13:00)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.36 +The CImg 1.2.9 package has been released. There are several changes and ameliorations.<br/><br/> 198.37 +<font color="#D00000"> 198.38 +*-----------------------------<br/> 198.39 +*-----------------------------<br/> 198.40 +* Changes from 1.2.8 to 1.2.9<br/> 198.41 +*-----------------------------<br/> 198.42 +*-----------------------------<br/> 198.43 +<br/> 198.44 +* New features :<br/> 198.45 + - Added new example file 'examples/captcha.cpp', which can be used to draw captcha images. This is a very 198.46 + short and simple code, so it can be interesting for a first approach of CImg.<br/> 198.47 + - Added functions 'CImg<T>::scale_2x()' and 'CImg<T>::scale_3x()' allowing to upscale an image 198.48 + with a edge-directed algorithm (see 'http://scale2x.sourceforge.net/')/<br/> 198.49 + - Added function 'CImg<T>::save_cpp()' allowing to save an image directly as a 198.50 + C/C++ source code.<br/> 198.51 + - Added function 'CImg<T>::draw_mandelbrot()' allowing to draw quadratic mandelbrot fractal set on images.<br/> 198.52 + - Added a new demo effect 'Fish-Eye Magnification' in file 'examples/CImg_demo.cpp'.<br/> 198.53 + - Added new fields in CImgDisplay for an easy test of keys pressing. Very useful for testing complicated combinations.<br/> 198.54 + - Added functions to read/save gzipped files.<br/> 198.55 + - Added compression option for .cimg files (requires the use of the 'zlib' library).<br/> 198.56 + - Added color conversions for CMY and CMYK color bases.<br/> 198.57 +<br/> 198.58 +* Optimizations / Modifications :<br/> 198.59 + - Big code cleaning and re-organization in file 'CImg.h', making the things more clear.<br/> 198.60 + - Function 'CImg<T>::load_ascii()' has been modified to allow comments before specifying image 198.61 + dimensions.<br/> 198.62 + - Functions 'CImg[List]::print()' have been slightly modified to be more precise and clear. Also used 198.63 + in functions 'CImg[List]::display()'.<br/> 198.64 + - Improved functionalities of the image processing tool 'inrcast.cpp'.<br/> 198.65 + - Improved 'CImg[List]<T>::display()' function allowing easy navigation and zooming in images.<br/> 198.66 + - Add native use of ffmpeg libraries to load video sequences (Thanks to David Starkweather for his nice contribution !)<br/> 198.67 + - Optimized function 'CImg<T>::permute_axes' for common used cases (planar to interleaved RGB and RGBA).<br/> 198.68 + - Added parameter 'step_frame' in functions that can load video sequences, 198.69 + i.e. CImg[List]<T>::load_yuv(), CImg[List]<T>::load_tiff(), CImg[List]<T>::load_ffmpeg(), so that frames 198.70 + can be skipped when loading the video files.<br/> 198.71 + - Removed parameter 'events_type' in CImgDisplay functions. By default, a display is always catching all user 198.72 + events. Having different choices made slight problems between different architectures (and was not really 198.73 + useful).<br/> 198.74 + - Removed plugin 'plugins/toolbox3d.h'. Functions of the plug-ins are now natively integrated into the CImg.h file, 198.75 + as well as the LibBoard library support.<br/> 198.76 + - Renamed functions 'CImg<>::*pix?d()' to 'CImg<>::*at?()'.<br/> 198.77 +<br/> 198.78 +* Bug corrections :<br/> 198.79 + - Small bug in functions 'CImg[List]::contains()' were corrected.<br/> 198.80 + - Bug correction in function 'CImg<T>::[get_]stats()' : offset of min and max values were sometimes incorrect.<br/> 198.81 + - Bug correction in CImgDisplay events for Windows-based OS. When mouse leaved a window, coordinates 198.82 + didn't reset to -1 sometimes.<br/> 198.83 + - Small non-computational bug correction in 'CImg<T>::symmetric_eigen()'.<br/> 198.84 + - Removed g++ warning that occured when using 'libpng' ('warning: argument 'xxx' might be clobbered by 'longjmp' or 'vfork').<br/> 198.85 + - Corrected small illumination bug with double sided 3D objects in CImg<T>::draw_object3d().<br/> 198.86 + - And a lot of other small improvements and bug corrections...<br/> 198.87 +<br/> 198.88 +</font> 198.89 +</font></blockquote></td></tr></table></font><br/> 198.90 + 198.91 +<!-- ###################### --> 198.92 +<font face="Arial,Helvetica"><font size="-1"> 198.93 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.94 +<tbody><tr bgcolor="#ccccee"><td> 198.95 +<b>CImg 1.2.8 Released</b> 198.96 +<font size="-2">(2008/04/18, 13:00)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.97 +The CImg 1.2.8 package has been released. There are several changes and ameliorations.<br/><br/> 198.98 +<font color="#D00000"> 198.99 +*-----------------------------<br/> 198.100 +*-----------------------------<br/> 198.101 +* Changes from 1.2.7 to 1.2.8<br/> 198.102 +*-----------------------------<br/> 198.103 +*-----------------------------<br/> 198.104 +<br/> 198.105 +* New features :<br/> 198.106 + - Added native Carbon support in CImgDisplay. Allows to run CImg on MacOSX without installing X11. 198.107 + This is a beta support, so not activated by default. Define 'cimg_use_carbon' to enable it. 198.108 + Many Thanks to Adrien Reboisson, Romain Blei and Jean-Marie Favreau for this nice contribution. 198.109 + Any comments and contributions are welcome.<br/> 198.110 + - Added variant of 'CImgList<T>::remove()' that can remove several images from a CImgList<T> list 198.111 + at the same time.<br/> 198.112 + - Added new numbered macros 'cimg_plugin1...8', for easy inclusion of multiple CImg plug-ins.<br/> 198.113 + - Added plugin 'plugins/distance_saito.h' that implements the Saito's distance transform.<br/> 198.114 + - Added function 'CImg<T>::blur_patch()' that performs a patch-based Tikhonov flow on the image. 198.115 + Allows to denoise and regularize image quite well (is time-consuming anyway).<br/> 198.116 + - Functions 'CImg<T>::load_tiff()', 'CImgList<T>::load_tiff()', 'CImg<T>::save_tiff()' and 198.117 + 'CImgList<T>::save_tiff()' has been (re)-coded. It is now possible to read/save multi-pages tif 198.118 + image files worriless.<br/> 198.119 + - Native support for 'icc' compiler (Intel C++ compiler) added in the Makefile. 198.120 + Just type 'make CC=icc olinux' to compile using icc (offers nice performances in code optimization).<br/> 198.121 + - Started support of OpenMP directives, to allow parallelization of CImg functions in order to 198.122 + improve performances. Not few used, by this could change in the future.<br/> 198.123 + - Added functions to load/save video sequences using the external tool FFMPEG (http://http://ffmpeg.mplayerhq.hu/). 198.124 + 'inrcast' is now able to read video sequences using FFMPEG.<br/> 198.125 + - Added new color basis conversions : RGBtoHSI(), HSItoRGB(), HSLtoRGB() (Thanks to Cesar Martinez for his 198.126 + contribution).<br/> 198.127 + - Added example file 'examples/radon_transform.cpp', provided by David G. Starkweather (Thanks guy!).<br/> 198.128 +<br/> 198.129 +* Optimizations / Modifications :<br/> 198.130 + - The main library file 'CImg.h' is now distributed under dual license CeCILL or CeCILL-C.<br/> 198.131 + - Patched function 'CImg<T>::load_tiff()' for a better support of float-valued tiff images.<br/> 198.132 + - Renamed 'CImg<T>::inverse()' as 'CImg<T>::invert()' and 'CImg<>::pseudoinverse()' as 'CImg<T>::pseudoinvert()'.<br/> 198.133 + - Function 'CImg<T>::displacement_field()' has been modified to consider a multi-valued geometry 198.134 + for motion detection (so color images are naturally taken into account now).<br/> 198.135 + - Optimized functions 'CImg<T>::dilate()' and 'CImg<T>::erode()' 198.136 + - Slightly optimized pixel access and display rendering functions.<br/> 198.137 + - Used native mutex mechanism of X11 instead of the pthread library.<br/> 198.138 + - Removed deprecated example file 'examples/pslider.cpp'.<br/> 198.139 + - Renamed 'cimg::PI' to 'cimg::valuePI' to avoid compilation problems with some C++ compilers that define 198.140 + the PI macro.<br/> 198.141 + - Added specular type lightning in routines that draw 3D objects. Parameters 'specular_light' and 198.142 + 'specular_shine' replace the old 'ambient_light' parameter.<br/> 198.143 +<br/> 198.144 +* Bug corrections :<br/> 198.145 + - Bug corrected in 'CImg<T>::draw_polygon()' : wrong scanlines were drawn with some complex polygons.<br/> 198.146 + - Bug corrected in 'CImg<T>::convolve()' and 'CImg<T>::correlate()'. Happened when dealing with non square 198.147 + masks with even dimensions.<br/> 198.148 + - Bug corrected in 'CImg<T>::save_png()' and 'CImg<T>::load_png()' when dealing with 16 bits 198.149 + images in little-endian proc.<br/> 198.150 + - Bug corrected in 'CImg<T>::get_coordinates()' when dealing with 2-channels images.<br/> 198.151 + - Bug corrected, 2-channels images were not correctly displayed (blue channel was used instead of being 0).<br/> 198.152 + - And a lot of other small bug corrections...<br/> 198.153 +</font> 198.154 +</font></blockquote></td></tr></table></font><br/> 198.155 + 198.156 +<!-- ###################### --> 198.157 +<font size="-1"> 198.158 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.159 +<tbody><tr bgcolor="#ccccee"><td> 198.160 +<b>Contribution call : CImg survey</b> 198.161 +<font size="-2">(2008/01/04, 11:11)</font></td></tr><tr><td><blockquote><font size="-1"> 198.162 +I've added a CImg Library survey, in order to better know profiles of CImg users and visitors. 198.163 +If you have 20 seconds of free time, you are welcome to fill it in !<br/><br/> 198.164 +<b><font size="4"> 198.165 +<script language="javascript" type="text/javascript"> 198.166 + var PDF_surveyID = 'BE413A91D86E8CEF'; 198.167 + var PDF_openText = 'Fill CImg Library survey'; 198.168 +</script> 198.169 +<script type="text/javascript" language="javascript" src="http://www.polldaddy.com/s.js"></script> 198.170 +<noscript><a href="http://www.polldaddy.com/s/BE413A91D86E8CEF/">Fill CImg Library survey</a></noscript></font></b>. 198.171 +</blockquote></td></tr></table></font><br/> 198.172 + 198.173 +<!-- ###################### --> 198.174 +<font face="Arial,Helvetica"><font size="-1"> 198.175 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.176 +<tbody><tr bgcolor="#ccccee"><td> 198.177 +<b>CImg 1.2.6 Released</b> 198.178 +<font size="-2">(2008/01/04, 11:11)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.179 +The CImg 1.2.6 package has been released. This is a small improvement but has nice small new things in it.<br/><br/> 198.180 +<font color="#D00000"> 198.181 +*-----------------------------<br/> 198.182 +*-----------------------------<br/> 198.183 +* Changes from 1.2.5 to 1.2.6<br/> 198.184 +*-----------------------------<br/> 198.185 +*-----------------------------<br/> 198.186 +<br/> 198.187 +* New features :<br/> 198.188 + - Added functions 'CImg<T>::fillV(), CImg<T>::fillZV() and CImg<T>::fillYZV()' allowing to set image values 198.189 + at a specified pixel and along specified axes.<br/> 198.190 + - Added variant of 'CImg<T>::get_dijkstra()' allowing to use any function/class for definition of weights.<br/> 198.191 + - Added new interpolation technique (moving average) in 'CImg<T>::resize()' allows very precise image resizing 198.192 + (Thanks to François Lauze who provided me with some of its code).<br/> 198.193 + - Added lot of new and useful neighborhood loop macros. 198.194 + A new executable 'examples/generate_loop_macros.cpp' allows to generate 198.195 + 2D loops for arbitrary neighborhood size. A new plugin 'plugins/loop_macros.h' has been created, containing 198.196 + all loops NxN (until N=32) and NxNxN (until N=8).<br/> 198.197 + - Added separate component and YCbCr color base processing in options of 'examples/greycstoration.cpp'<br/> 198.198 + - Added macros 'cimg_argument?()' allowing to retrieve command lines that are not options (not beginning with a '-').<br/> 198.199 +<br/> 198.200 +* Optimizations / Modifications :<br/> 198.201 + - Macros with neighborhood loops have been extended and simplified. Some of the previous ones have been deleted, 198.202 + others have appeared. Basically, no functionnalities have been removed.<br/> 198.203 + - Macro 'cimg_version' is now 126 instead of 1.26, allowing easy comparison with integer values.<br/> 198.204 + - Changed traits name in cimg:: for more coherence.<br/> 198.205 +<br/> 198.206 +* Bug corrections :<br/> 198.207 + - Corrected function 'CImg<T>::cubic_pix[1,2]d()'.<br/> 198.208 + - Corrected bug in 'CImg<T>::blur_median()'.<br/> 198.209 + - Corrected bug with temporary random filenames when using multi-threading.<br/> 198.210 + - Corrected small bug in 'CImg<T>::draw_point()'.<br/> 198.211 + - Corrected name 'CImg<T>::dijkstra()' instead of 'CImg<T>::djikstra()'.<br/> 198.212 + - Corrected compilation bug in some plug-ins.<br/> 198.213 + - And other small bug corrections...<br/> 198.214 +</font> 198.215 + 198.216 +</font></blockquote></td></tr></table></font><br/> 198.217 + 198.218 +<!-- ###################### --> 198.219 +<font face="Arial,Helvetica"><font size="-1"> 198.220 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.221 +<tbody><tr bgcolor="#ccccee"><td> 198.222 +<b>CImg 1.2.5 Released</b> 198.223 +<font size="-2">(2007/11/26, 15:08)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.224 +The CImg 1.2.5 package has been released. <br/><br/> 198.225 +<font color="#D00000"> 198.226 +*-----------------------------<br/> 198.227 +*-----------------------------<br/> 198.228 +* Changes from 1.2.4 to 1.2.5<br/> 198.229 +*-----------------------------<br/> 198.230 +*-----------------------------<br/> 198.231 +<br/> 198.232 +* New features :<br/> 198.233 + - Added function 'CImg<T>::label_regions()' that can label deconnected regions.<br/> 198.234 + - Added overload of function 'CImg<T>::draw_point()' that is able to draw point clouds.<br/> 198.235 + - Added function 'CImg<T>::get_blur_bilateral()' that implements bilateral filtering.<br/> 198.236 + - Added functions 'CImg<T>::get_RGBtoBayer()' and 'CImg<T>::get_BayertoRGB()' that converts between 198.237 + RGB and Bayer-coded representation of an image.<br/> 198.238 + - Added functions CImg[List]<T>::min(), max(), mean(), variance(), get_stats(), and contains() 198.239 + to deal easily with image statistics (class CImgStats is now obsolete and has been moved to 198.240 + plugin 'plugins/deprecated.h').<br/> 198.241 + - Added versions of 'CImg[List]<T>::get_*()' as external functions, 198.242 + so writting 'res=cos(img)*5;' is valid.<br/> 198.243 + - Added postfix versions 'CImg[List]<T>::operator++(int)' and 'CImg[List]<T>::operator--(int)'.<br/> 198.244 +<br/> 198.245 +* Optimizations / Modifications :<br/> 198.246 + - Recoded 'CImg<T>::save_magick()' to improve performances when saving images using Magick++ API.<br/> 198.247 + - Recoded 'CImg<T>::draw_fill()' to avoid crashes on large (volumetric) images due to stack overflow.<br/> 198.248 + Also added parameters to choose between 4 or 8 connexity for 2D images.<br/> 198.249 + - Added simple point representation in 'CImg<T>::draw_graph()'.<br/> 198.250 + -> Note that the gtype variable values have been redefined as well !!! <-<br/> 198.251 + - Added parameter 'CImg<T>::quantize()' that allows possible value renormalization.<br/> 198.252 + - Improved documentation.<br/> 198.253 + - Drawing functions accept now templated color pointer, as well as templated image containing color data.<br/> 198.254 + - Recoded Deriche filter. More fast and precise, some cases were buggy.<br/> 198.255 + - Removed class CImgStats (moved to plugin 'plugins/deprecated.h').<br/> 198.256 + - Removed unuseful image copies in some functions.<br/> 198.257 + - Cleaning the code.<br/> 198.258 +<br/> 198.259 +* Bug corrections :<br/> 198.260 + - Corrected bug in 'CImg<T>::pseudoinverse()' concerning pseudo-inversion of non-inversible matrices.<br/> 198.261 + - Corrected return value in 'CImg<T>::get_RGBtoHSV()'.<br/> 198.262 + - Corrected value range bug in 'CImg<T>::quantize()'.<br/> 198.263 + - And other small bug corrections...<br/> 198.264 +</font> 198.265 + 198.266 +</font></blockquote></td></tr></table></font><br/> 198.267 + 198.268 + 198.269 +<!-- ###################### --> 198.270 +<font face="Arial,Helvetica"><font size="-1"> 198.271 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.272 +<tbody><tr bgcolor="#ccccee"><td> 198.273 +<b>CImg 1.2.4 Released</b> 198.274 +<font size="-2">(2007/09/26, 12:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.275 +The CImg 1.2.4 package has been released. This is a minor release but with interesting stuffs anyway.<br/><br/> 198.276 +<font color="#D00000"> 198.277 +*-----------------------------<br/> 198.278 +*-----------------------------<br/> 198.279 +* Changes from 1.2.3 to 1.2.4<br/> 198.280 +*-----------------------------<br/> 198.281 +*-----------------------------<br/> 198.282 +<br/> 198.283 +* New features :<br/> 198.284 + - Added macro 'cimg_for_lineXY(x,y,x0,y0,x1,y1)' that loops over an image segment (x0,y0)-(x1,y1).<br/> 198.285 + - Added function 'CImg<T>::draw_polygon()' that draws a filled polygon of any shape in the instance image.<br/> 198.286 + - Added macros 'cimg_load_plugin', 'cimg_save_plugin', 'cimglist_load_plugin' and 'cimglist_save_plugin' 198.287 + allowing to easily add file support for your own data format.<br/> 198.288 + - Added plugin 'plugins/add_fileformat.h' to show how to use these new macros to register a new 198.289 + image format in CImg.<br/> 198.290 + - Added version of 'CImg[List]<T>::{load,save}_cimg()' that is able to read/write only sub-images of 198.291 + data stored in a (big) .cimg file.<br/> 198.292 + - Added an online chat on the CImg website, so that users can interact freely.<br/> 198.293 +<br/> 198.294 +* Optimizations / Modifications :<br/> 198.295 + - Added functions 'CImg[List]<T>::save_empty_cimg()' that can be used to work with very large images.<br/> 198.296 + You can now create first an empty (big) image, then load/save sub-images into this big .cimg file, 198.297 + without needing much memory.<br/> 198.298 + - Slightly modified the header of .cimg files, so little/big endian info is stored.<br/> 198.299 + - Reorganized some 'CImg[List]<T>::load_*()' functions, trying to avoid unnecessary memory usage.<br/> 198.300 + - Recoded versions of CImg<T>::draw_triangle() that now use the Bresenham's algorithm for interpolation 198.301 + (more precise, while using only integer calculus).<br/> 198.302 + - Added versions of 'CImg<T>::draw_triangle()' and 'CImg<T>::draw_line()' that are able to map textures 198.303 + while correctly handling the perspective correction, so that 3D mapped triangles look correct now.<br/> 198.304 +<br/> 198.305 +* Bug corrections :<br/> 198.306 + - Corrected a small bug in get_coordinates() : channels of hyperspectral images with (dim>3) where 198.307 + subsampled instead of cropped for image visualization.<br/> 198.308 + - And many small bug corrections...<br/> 198.309 +</font> 198.310 + 198.311 +</font></blockquote></td></tr></table></font><br/> 198.312 + 198.313 +<!-- ###################### --> 198.314 +<font face="Arial,Helvetica"><font size="-1"> 198.315 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.316 +<tbody><tr bgcolor="#ccccee"><td> 198.317 +<b>Online CImg Library Chat !</b> 198.318 +<font size="-2">(2007/09/26, 11:12am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.319 +I've installed a pretty cool php-based online chat room dedicated to CImg users. 198.320 +This is a convenient way to ask for quick informations if needed, or discuss about the features 198.321 +you would like to see in future versions of CImg. 198.322 +There are not many people right now, but wait and see... 198.323 +You can click on the 'Online chat' section of the menu above to access the chat. 198.324 +</font></blockquote></td></tr></table></font><br/> 198.325 + 198.326 +<!-- ###################### --> 198.327 +<font face="Arial,Helvetica"><font size="-1"> 198.328 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.329 +<tbody><tr bgcolor="#ccccee"><td> 198.330 +<b>CImg 1.2.3 Released</b> 198.331 +<font size="-2">(2007/08/24, 03:00pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.332 +The CImg 1.2.3 package has been released. This is a quite important release, with some library modifications. 198.333 +I guess upgrading to this version won't be a big problem, but this will be perhaps not as direct as latest releases. 198.334 +The CHANGELOG is quite bigger than usual. A lot of work has been done during summer holidays, and I'm quite happy with 198.335 +the modifications.<br/><br/> 198.336 +<font color="#D00000"> 198.337 +*-----------------------------<br/> 198.338 +*-----------------------------<br/> 198.339 +* Changes from 1.2.2 to 1.2.3<br/> 198.340 +*-----------------------------<br/> 198.341 +*-----------------------------<br/> 198.342 +<br/> 198.343 +* New features :<br/> 198.344 + - Added file 'example/tron.cpp', implementing a very simple version of the 198.345 + famous 'Tron' game (2 players).<br/> 198.346 + - Added constructor that create a CImg<T> from the content of a CImgDisplay window.<br/> 198.347 + - Added support of the 'Board' library in plugin 'plugins/toolbox3d.h', allowing 198.348 + the saving of 3D objects snapshots in SVG, EPS or FIG vector-graphics formats.<br/> 198.349 + - Added function 'CImgList<T>::[get]_split()' that can split all image of an 198.350 + an image list into a specified axis.<br/> 198.351 + - Added sphere primitive in 'CImg<T>::draw_object3d()'.<br/> 198.352 + - Added function 'CImg<T>::ellipsoid()' in 'plugins/toolbox3d.h'.<br/> 198.353 + - Added useful new constructors 'CImg<T>()' and 'CImgList<T>()' with variable 198.354 + numbers of parameters that can define images or image lists initialized with 198.355 + user-specified values. Example :<br/> 198.356 + CImg<float> img(3,2,1,1, 1,2,3, 4,5,6); defines image [ 1,2,3; 4,5,6 ].<br/> 198.357 + CImgList<unsigned char> list(3,1,3,1,1, 1,0,0, 0,1,0, 0,0,1); defines 198.358 + list of three vectors { [1;0;0], [0;1;0], [0;0;1] }.<br/> 198.359 + - Added poly-bezier curve drawing, with 'CImg<T>::draw_spline()' overload.<br/> 198.360 + - Added file 'examples/jawbreaker.cpp', implementing a very funny games featuring 198.361 + small colored balls.<br/> 198.362 + - Added demo '3D Reflection' in 'examples/CImg_test.cpp' showing some tricky uses 198.363 + with the 3D capabilities of CImg.<br/> 198.364 + - Added 'CImg<T>::draw_spline()' for drawing 2D cubic Bezier curves.<br/> 198.365 + - Added plugin 'plugins/jpeg_buffer.h', allowing to read/write directly image data 198.366 + from/to jpeg-coded memory buffers (Many thanks to Paolo Prete who made it possible !).<br/> 198.367 + - Added optional support of the LAPACK library for matrix computation.<br/> 198.368 + Define macro 'cimg_use_lapack' and link your code with LAPACK to enable it 198.369 + (LAPACK routines are slightly faster routines than native CImg ones).<br/> 198.370 + - Added function 'CImg<T>::get_constrast_LUT8()' function which returns a 256 colors 198.371 + palette that has nice properties of being well contrasted when color indices are 198.372 + close to eachothers.<br/> 198.373 + - Added function 'CImg<T>::get_rainbow_LUT8()' that returns a rainbow-type palette.<br/> 198.374 + - Added shortcuts CTRL+PAGE[UP,DOWN] in 'CImg<T>::display_object3d()' to brighten or 198.375 + darken the 3D object.<br/> 198.376 +<br/> 198.377 +* Optimizations / Modifications :<br/> 198.378 + - In 'CImg<T>::HSVtoRGB()' and 'CImg<T>::RGBtoHSV()', the H components is now expressed in degree.<br/> 198.379 + - Improved multi-key testing with CImgDisplay.<br/> 198.380 + - Added and modified some 'operator<<()' and 'operator>>()' in 'CImg<T>' and 'CImgList<T>'.<br/> 198.381 + - Renamed 'plugins/primitives3d.h' to 'plugins/toolbox3d.h', and added a new example 198.382 + 'examples/toolbox3d.cpp' that shows how to use it.<br/> 198.383 + - Renamed 'plugins/alias.h' to 'plugins/deprecated.h'.<br/> 198.384 + - Moved function 'CImg<T>::resize_object3d()' to 'plugins/toolbox3d.h'.<br/> 198.385 + - Simplified 'CImgList<T>::insert()' procedures, and removed functions 'CImgList<T>::insert_shared()'.<br/> 198.386 + - Added functions parameters for almost all drawing functions, allowing the correct use of 198.387 + patterns in line drawing (beware, some functions signatures have been slightly modified).<br/> 198.388 + - Renamed 'CImg<T>::feature_selection()' as 'CImg<T>::get_coordinates()' 198.389 + (for better coherence with overall function names). Include 'plugins/deprecated.h' for backward 198.390 + compatibility.<br/> 198.391 + - Optimized function 'CImg<T>::draw_line()'.<br/> 198.392 + - Recoded function 'CImg<T>::draw_circle()', uses now the more precise Bresenham's circle 198.393 + algorithm.<br/> 198.394 + - Improved function 'CImg<T>::sphere()', in plugin 'toolbox3d.h', reducing drastically 198.395 + the number of created points in the 3D mesh.<br/> 198.396 +<br/> 198.397 +* Bug corrections :<br/> 198.398 + - Corrected some small bugs in CImg.h to allow the compilation with the Intel C++ Compiler (icc & icl).<br/> 198.399 + - Corrected bug in copy constructor of CImgList<> that didn't make shared copy of images.<br/> 198.400 + - Fixed bug in 'CImg<T>::symmetric_eigen()' : some negative eigenvalues where miscalculated when 198.401 + their absolute values was also an eigenvalue of the considered matrix.<br/> 198.402 + - And many small bug corrections...<br/> 198.403 +</font> 198.404 + 198.405 +</font></blockquote></td></tr></table></font><br/> 198.406 + 198.407 + 198.408 +<!-- ###################### --> 198.409 +<font face="Arial,Helvetica"><font size="-1"> 198.410 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.411 +<tbody><tr bgcolor="#ccccee"><td> 198.412 +<b>Sixth postcard received !</b> 198.413 +<font size="-2">(2007/08/17, 02:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.414 +Today, I received another postcard from Taiwan ! That is a great pleasure to see that CImg is used 198.415 +by some people in Asia. So, thanks to Pr. Kuo-Feng Hwang for your postcard, I added it to the 'growing' postcard list 198.416 +in the main CImg web page :) 198.417 +<br/><br/> 198.418 +<img src="img/postcard6.jpg"></img> 198.419 +</font></blockquote></td></tr></table></font><br/> 198.420 + 198.421 + 198.422 +<!-- ###################### --> 198.423 +<font face="Arial,Helvetica"><font size="-1"> 198.424 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.425 +<tbody><tr bgcolor="#ccccee"><td> 198.426 +<b>New demo '3D Reflection' in CImg 1.2.3</b> 198.427 +<font size="-2">(2007/07/24, 10:25pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.428 +During hollidays, I always take time to perform some funny code experiments. This time, 198.429 +I tried to create a real-time 3D reflection effect. Of course, it uses some tricks to succed in an acceptable speed, 198.430 +but I like the result, and I've added this example to the 'CImg_demo.cpp' source code. 198.431 +Here is a screenshot of the resulting effect. 198.432 +Click on the image to see the video.<br/><br/> 198.433 +<a href="img/video_reflection.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 198.434 + 198.435 +<img border="0" src="img/ss_reflection.jpg"></img> 198.436 + 198.437 +</a> 198.438 +</font></blockquote></td></tr></table></font><br/> 198.439 + 198.440 + 198.441 +<!-- ###################### --> 198.442 +<font face="Arial,Helvetica"><font size="-1"> 198.443 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.444 +<tbody><tr bgcolor="#ccccee"><td> 198.445 +<b>New game 'Jawbreaker' in CImg 1.2.3</b> 198.446 +<font size="-2">(2007/07/24, 10:25pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.447 +Last night, while playing on the so-called <i>Jawbreaker</i> game in my Pocket PC, I wonder how hard it would be to 198.448 +do a CImg-based version of this game. That was a good excuse to start programming ! 198.449 +I think the result is quite cool so I decided to put it in the <i>CImg/examples</i> directory for the 198.450 +next CImg 1.2.3 release. The source is surprisingly small (about 150 lines of code) and the game is complete. 198.451 +Here is a screenshot of the result below. 198.452 +Click on the image to see the video.<br/><br/> 198.453 +<a href="img/video_jawbreaker.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 198.454 + 198.455 +<img border="0" src="img/ss_jawbreaker.jpg"></img> 198.456 + 198.457 +</a> 198.458 +</font></blockquote></td></tr></table></font><br/> 198.459 + 198.460 +<!-- ###################### --> 198.461 +<font face="Arial,Helvetica"><font size="-1"> 198.462 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.463 +<tbody><tr bgcolor="#ccccee"><td> 198.464 +<b>Some CImg 1.2.3 envisaged features</b> 198.465 +<font size="-2">(2007/07/20, 02:32pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.466 +- I decided to (re)enable LAPACK interfacing when doing matrix computations (such as SVD, eigenvalues, system solving). 198.467 +LAPACK routines are well optimized and this could save time for applications that need it. 198.468 +Of course, you are not forced to use LAPACK, since native matrix algorithms already exist in CImg, but this 198.469 +may increase performances in some cases.<br/> 198.470 +- Also, Thanks to Paolo Prete, a new plugin <i>plugins/jpeg_array.h</i> has been added. This adds useful functions in the CImg class to read and write jpeg-compressed image data directly in memory buffer. Very useful when dealing with jpeg images coming from the network for instance (ip webcam).<br/><br/> 198.471 +These features are already implemented in the CVS version, so do not hesitate to test them and tell me if everything's going right. 198.472 +</font></blockquote></td></tr></table></font><br/> 198.473 + 198.474 +<!-- ###################### --> 198.475 +<font face="Arial,Helvetica"><font size="-1"> 198.476 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.477 +<tbody><tr bgcolor="#ccccee"><td> 198.478 +<b>CImg 1.2.2 Released</b> 198.479 +<font size="-2">(2007/07/04, 13:27pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.480 +The CImg 1.2.2 package has been released. This is a minor release, with a very small CHANGELOG. 198.481 +Basically, I want to put a updated version before the 198.482 +<a href="http://www.rmll.info/">RMLL'07</a> 198.483 +where I will present the CImg Library.<br/><br/> 198.484 +<font color="#D00000"> 198.485 +*-----------------------------<br/> 198.486 +*-----------------------------<br/> 198.487 +* Changes from 1.2.1 to 1.2.2<br/> 198.488 +*-----------------------------<br/> 198.489 +*-----------------------------<br/> 198.490 +<br/> 198.491 +* New features :<br/> 198.492 + - Added 'CImg<T>::distance_function()' that can compute distance function to the 0-isophote.<br/> 198.493 + - Added curve editor example in 'examples/curve_editor.cpp'.<br/> 198.494 +<br/> 198.495 +* Bug corrections :<br/> 198.496 + - Corrected small bug when trying to found pathname under Windows.<br/> 198.497 + - Corrected bug when using XSHM extension on Mac OS X.<br/> 198.498 + - Corrected/Improved platforms detection by testing the right predefined BSD macros + extra architectures 198.499 + (Thanks to Marc Espie).<br/> 198.500 + - And many small bug corrections...<br/> 198.501 +</font> 198.502 + 198.503 +</font></blockquote></td></tr></table></font><br/> 198.504 + 198.505 + 198.506 +<!-- ###################### --> 198.507 +<font face="Arial,Helvetica"><font size="-1"> 198.508 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.509 +<tbody><tr bgcolor="#ccccee"><td> 198.510 +<b>CImg 1.2.2 on the way</b> 198.511 +<font size="-2">(2007/07/02, 19:34pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.512 +CImg 1.2.2 has been started few days ago. I'm happy to say I've corrected lot of examples such that they perfectly compile now on Visual C++ 6.0. I've also tested it on the new 4.2.0 release of g++, and everything's fine. 198.513 +I find CImg is becoming quite stable and I've less and less debugging from releases to releases, that's good news. 198.514 +I've posted a version CImg-1.2.2beta of the archive in the sourceforge repository, you can already 198.515 +<a href="http://sourceforge.net/project/showfiles.php?group_id=96492">download it (package "in progress")</a> 198.516 +and test it if you want. Any feedback is appreciated. 198.517 +</font></blockquote></td></tr></table></font><br/> 198.518 + 198.519 +<!-- ###################### --> 198.520 +<font face="Arial,Helvetica"><font size="-1"> 198.521 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.522 +<tbody><tr bgcolor="#ccccee"><td> 198.523 +<b>New example file : curve_editor.cpp</b> 198.524 +<font size="-2">(2007/06/27, 11:11am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.525 +I worked on a small 2D curve editor for a collegue and his PhD student at the lab, and I found it interesting enough to share it with CImg users, so here is a new file <i>examples/curve_editor.cpp</i> in the CImg tree (still in CVS for the moment, but will be available in the next stable release). 198.526 +Basically, you can add/move/remove control points and a piecewise-polynomial curve passing through these points is computed. It's a quite small source (300 code lines with header and comments). 198.527 +You can save control points, curve points or even the corresponding distance map. Maybe useful, I hope. 198.528 +Here's a screenshot below. <a href="img/video_curveeditor.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;">Click here to see the video</a> 198.529 +<br/><br/> 198.530 +<img src="img/curve_editor.jpg"></img> 198.531 +</font></blockquote></td></tr></table></font><br/> 198.532 + 198.533 + 198.534 +<!-- ###################### --> 198.535 +<font face="Arial,Helvetica"><font size="-1"> 198.536 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.537 +<tbody><tr bgcolor="#ccccee"><td> 198.538 +<b>Fifth postcard received !</b> 198.539 +<font size="-2">(2007/06/24, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.540 +I received a postcard today from Cambridge/UK, as well as a donation for CImg, by the same person. 198.541 +Thank you so much Alexandre ! 198.542 +This is very nice to see that some people are enjoying using CImg around the world, 198.543 +and do not write only for bug reports. 198.544 +All these postcards are displayed on the wall just behind my desk. Do not hesitate to write me, there are 198.545 +still a lot of free space :) 198.546 +<br/><br/> 198.547 +<img src="img/postcard5.jpg"></img> 198.548 +</font></blockquote></td></tr></table></font><br/> 198.549 + 198.550 +<!-- ###################### --> 198.551 +<font face="Arial,Helvetica"><font size="-1"> 198.552 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.553 +<tbody><tr bgcolor="#ccccee"><td> 198.554 +<b>CImg 1.2.1 Released</b> 198.555 +<font size="-2">(2007/06/12, 15:03pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.556 +The CImg 1.2.1 package has been released. Here is the CHANGELOG :<br/><br/> 198.557 +<font color="#D00000"> 198.558 +*-----------------------------<br/> 198.559 +*-----------------------------<br/> 198.560 +* Changes from 1.2.0 to 1.2.1<br/> 198.561 +*-----------------------------<br/> 198.562 +*-----------------------------<br/> 198.563 +<br/> 198.564 +* New features :<br/> 198.565 + - Added macro 'cimg_for_spiralXY', allowing to loop over an image using a spiral-shaped trajectory.<br/> 198.566 + - Added shortcut 'CTRL+O' to save object as .off file in 'CImg<T>::display_object3d()'.<br/> 198.567 + - Added operator bool() in CImg, CImgList, CImgStats, CImgDisplay to get 198.568 + more concise code when testing if an object is empty or not.<br/> 198.569 + - Added empty state for CImgDisplay, can be tested with 'CImgDisplay::is_empty()'.<br/> 198.570 + - Added '.off' file support in 'inrcast'.<br/> 198.571 +<br/> 198.572 +* Optimizations / Modifications :<br/> 198.573 + - Removed all the obsolete #define to ensure compatibility with really older versions of CImg. 198.574 + You can now include the file 'plugins/alias.h' to get these #define back.<br/> 198.575 + - Added functionalities and debugged 'CImg<T>::save_off()' and 'CImg<T>::load_off()'.<br/> 198.576 +<br/> 198.577 +* Bug corrections :<br/> 198.578 + - Corrected illumination bug in 'CImg<T>::draw_object3d()'.<br/> 198.579 + - Corrected bug in 'CImg<T>::crop()' family functions.<br/> 198.580 + - Corrected small bugs in 'CImgList<T>' (insertion functions).<br/> 198.581 + - Corrected 'CImg<T>::load_tiff()' function.<br/> 198.582 + - And many small bug corrections...<br/> 198.583 +</font> 198.584 + 198.585 +</font></blockquote></td></tr></table></font><br/> 198.586 + 198.587 +<!-- ###################### --> 198.588 +<font face="Arial,Helvetica"><font size="-1"> 198.589 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.590 +<tbody><tr bgcolor="#ccccee"><td> 198.591 +<b>Fourth postcard received !</b> 198.592 +<font size="-2">(2007/06/01, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.593 +I received a postcard today from Brighton/UK. Thank you Hugo for your postcard ! 198.594 +<br/><br/> 198.595 +<img src="img/postcard4.jpg"></img> 198.596 +</font></blockquote></td></tr></table></font><br/> 198.597 + 198.598 +<!-- ###################### --> 198.599 +<font face="Arial,Helvetica"><font size="-1"> 198.600 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.601 +<tbody><tr bgcolor="#ccccee"><td> 198.602 +<b>CImg 1.2.0 Released</b> 198.603 +<font size="-2">(2007/04/18, 15:36pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.604 +The CImg 1.2.0 package has been released. Here is the CHANGELOG :<br/><br/> 198.605 +<font color="#D00000"> 198.606 +*-----------------------------<br/> 198.607 +*-----------------------------<br/> 198.608 +* Changes from 1.1.9 to 1.2.0<br/> 198.609 +*-----------------------------<br/> 198.610 +*-----------------------------<br/> 198.611 +<br/> 198.612 +* New features :<br/> 198.613 + - Added function 'CImg<T>::draw_grid()' that draws a grid on the instance image<br/> 198.614 + (useful when combined with CImg<T>::draw_axis and CImg<T>::draw_graph).<br/> 198.615 + - Added multi-threading support in GREYCstoration plugin and command line version.<br/> 198.616 + - Added support for GraphicsMagick conversion tools (http://www.graphicsmagick.org).<br/> 198.617 + - Added plugin 'integral_line.h' that define functions to track integral lines in images.<br/> 198.618 + - Added CTRL+key combinations in 'CImg<T>::display_object3d' and 'CImg<T>::feature_selection()' :<br/> 198.619 + - CTRL+S : Save snapshot.<br/> 198.620 + - CTRL+D : Double window resolution.<br/> 198.621 + - CTRL+C : Divide window resolution.<br/> 198.622 + - CTRL+F : Fullscreen mode.<br/> 198.623 + - Added new normalization mode=3, now set by default when using CImgDisplay. Try to adapt<br/> 198.624 + the display normalization to the image type.<br/> 198.625 + - Added new example 'edge_explorer.cpp' (thanks to Orges Leka).<br/> 198.626 + - Added new example 'greycstoration4gimp.cpp' (which is a GREYCstoration plugin for the Gimp, thanks<br/> 198.627 + to Grzegorz Szwoch)<br/> 198.628 + - Added functions 'CImg<T>::[get]_round()' that round values of an image.<br/> 198.629 + - Added function 'CImg<T>::draw_line()' able to draw joined set of segments.<br/> 198.630 + - Added interpolation_type=-1 for 'CImg<T>::resize()' corresponding to raw memory resizing, without 198.631 + interpolation.<br/> 198.632 + - Added function 'CImg<T>::permute_axes()' that can be used to swap order of image axes 198.633 + (useful for converting ...RRRRRRGGGGGBBBBB... to ...RGBRGBRGBRGB....)<br/> 198.634 + - Added support for NIFTI files (extension '.nii') added in 'CImg<T>::load_analyze()'.<br/> 198.635 + - Added function 'CImg<T>::[get_]displacement_field()' that can estimate displacement field between two images.<br/> 198.636 + - Added default constructor for the 'CImgDisplay' class, which creates a window initially in the 'closed' state.<br/> 198.637 + - Added directory 'compilation/unix_debian_package' for easy construction of .deb package for CImg.<br/> 198.638 + - Added new search parth to find 'medcon' on Windows.<br/> 198.639 +<br/> 198.640 +* Optimizations / Modifications :<br/> 198.641 + - Renamed all '*_convert' functions to '*_imagemagick'.<br/> 198.642 + - Fonction CImg<T>::draw_object3d() has been slightly optimized (light computation for 198.643 + outside primitives is not done anymore).<br/> 198.644 + - Small changes in cimg:: traits.<br/> 198.645 + - Removed 'precision' arguments in 'CImg<T>::draw_axis()'.<br/> 198.646 + - The use of non in-place arithmetical operators is now possible in plug-ins.<br/> 198.647 +<br/> 198.648 +* Bug corrections :<br/> 198.649 + - Versions of 'CImg<T>::load_tiff()' and 'CImg<T>::save_tiff()' that use libtiff has been 198.650 + debugged and improved.<br/> 198.651 + - fread() and fwrite() has been recoded to handle the Windows file size limit of 64Mb over network 198.652 + (this is a Windows bug !).<br/> 198.653 + - GREYCstoration plugin has been modified to better deal with 16 and 32bits images.<br/> 198.654 + - And many other small bug corrections....<br/> 198.655 +</font> 198.656 + 198.657 +</font></blockquote></td></tr></table></font><br/> 198.658 + 198.659 +<!-- ###################### --> 198.660 +<font face="Arial,Helvetica"><font size="-1"> 198.661 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.662 +<tbody><tr bgcolor="#ccccee"><td> 198.663 +<b>New way of installing CImg for Debian-based Unix distributions</b> 198.664 +<font size="-2">(2007/03/26, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.665 +Many thanks to François-Xavier Dupé, PhD candidate in the IMAGE team of the GREYC lab : he provided a simple script that can be used to generate a .deb package file from the CImg package. 198.666 +CImg is now very simple to install on such systems thanks to its .deb package. Very nice ! 198.667 +<br/> 198.668 +</font></blockquote></td></tr></table></font><br/> 198.669 + 198.670 +<!-- ###################### --> 198.671 +<font face="Arial,Helvetica"><font size="-1"> 198.672 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.673 +<tbody><tr bgcolor="#ccccee"><td> 198.674 +<b>Third postcard received !</b> 198.675 +<font size="-2">(2007/03/26, 10:00am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.676 +I received a postcard today from Honolulu, telling me that someone is using <i>CImg and GREYCstoration in paradise</i>. 198.677 +Very nice for starting a Monday morning ! Thank you Mike for your postcard, I really appreciate ! 198.678 +Surprisingly, the three postcards I received so far all come from sunny places...<br/><br/> 198.679 +Thank again !<br/> 198.680 +David.<br/><br/> 198.681 +<img src="img/postcard3.jpg"></img> 198.682 +</font></blockquote></td></tr></table></font><br/> 198.683 + 198.684 +<!-- ###################### --> 198.685 +<font face="Arial,Helvetica"><font size="-1"> 198.686 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.687 +<tbody><tr bgcolor="#ccccee"><td> 198.688 +<b>CImg 1.1.9 Released</b> 198.689 +<font size="-2">(2007/03/05, 19:12pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.690 +The CImg 1.1.9 package has been released. This is a minor release that should be transparent for the CImg users. 198.691 +You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.9 package.<br/><br/> 198.692 +Here is the CHANGELOG :<br/> 198.693 +<font color="#D00000"> 198.694 +*-----------------------------<br/> 198.695 +*-----------------------------<br/> 198.696 +* Changes from 1.1.8 to 1.1.9<br/> 198.697 +*-----------------------------<br/> 198.698 +*-----------------------------<br/> 198.699 +<br/> 198.700 +* New features :<br/> 198.701 + - Added functions 'CImg<T>::sharpen()' and 'CImg<T>::get_sharpen()' that can enhance contrast in images, 198.702 + using nonlinear 2D/3D multi-valued shock filters.<br/> 198.703 + - Added function 'CImg<T>::contains()' and 'CImgList<T>::contains()' that can test if a pixel is 198.704 + present in an image.<br/> 198.705 + - Added new demo 'CImg-breakout' in 'examples/CImg_demo.cpp' (Arkanoid-style game in 64 lines of code!).<br/> 198.706 + - Functions 'CImgDisplay::hide_mouse()' and 'CImgDisplay::show_mouse()' have been added, allowing to 198.707 + hide/show the cursor when it is over a display window.<br/> 198.708 + - Functions 'CImg<T>::[get_]structure_tensorXY[Z]()' has been added, allowing to compute the 2D or 198.709 + 3D structure tensor field from an image.<br/> 198.710 + - Function 'CImgDisplay::set_mouse()' is now working on Windows.<br/> 198.711 + - Added load/save functions to deal directly with std::FILE structures.<br/> 198.712 + - Added members 'CImgDisplay::keys[256]' and 'CImgDisplay::buttons[256]' allowing to get the latest 256 keys 198.713 + or mouse buttons modifications done on the display window.<br/> 198.714 + - Added function 'CImgDisplay::is_typed()' to test if a certain combination of key has been typed 198.715 + on the display window.<br/> 198.716 + - Added keyboard shortcut 'CTRL+S' in 'CImg<T>::display_object3d()' to be able to save snapshot of current 3d view.<br/> 198.717 +<br/> 198.718 +* Optimizations / Modifications :<br/> 198.719 + - Recoded the greycstoration plug-in as the file 'plugins/greycstoration.h'. The command line version 198.720 + 'examples/greycstoration.cpp' has been greatly improved, including tiled-mode and less memory consumption.<br/> 198.721 + The use of GREYCstoration is now more easy, the code is more factorized.<br/> 198.722 +<br/> 198.723 +* Bug corrections :<br/> 198.724 + - Plugin 'plugins/cimgmatlab.h' has been corrected.<br/> 198.725 +</font> 198.726 + 198.727 +</font></blockquote></td></tr></table></font><br/> 198.728 + 198.729 +<!-- ###################### --> 198.730 +<font face="Arial,Helvetica"><font size="-1"> 198.731 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.732 +<tbody><tr bgcolor="#ccccee"><td> 198.733 +<b>CImg 1.1.8 Released</b> 198.734 +<font size="-2">(2007/01/26, 11:06am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.735 +The CImg 1.1.8 package has been released. I guess this is a more bug-free version than the 1.1.7. 198.736 +You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.8 package.<br/><br/> 198.737 +Here is the CHANGELOG :<br/> 198.738 +<font color="#D00000"> 198.739 +*-----------------------------<br/> 198.740 +*-----------------------------<br/> 198.741 +* Changes from 1.1.7 to 1.1.8<br/> 198.742 +*-----------------------------<br/> 198.743 +*-----------------------------<br/> 198.744 +<br/> 198.745 +* New features :<br/> 198.746 + - Added conditional use of the FFTW3 library (http://www.fftw.org) allowing more flexibility and speed 198.747 + on DFT computation, when used.<br/> 198.748 + - Added new macro 'cimg_help()', displays arbitrary user-defined messages when program is invoked 198.749 + with the option '-h' or '--help'.<br/> 198.750 + - Added new macro 'cimglist_apply()' allowing to apply a single function to all members of a list : 198.751 + Ex: cimglist_apply(list,blur)(3.0f);<br/> 198.752 + - Added functions 'CImg<T>::resize_object3d()', 'CImgList<T>::resize_object3d()', 198.753 + 'CImg<T>::get_resize_object3d()' and 'CImgList<T>::get_resize_object3d()' to ease resizing and 198.754 + centering 3d objects.<br/> 198.755 + - Added function 'CImgDisplay::set_mouse()' to set the mouse pointer coordinates (X11 only).<br/> 198.756 + - Added functions 'CImg<T>::atan()', 'CImg<T>::acos()', 'CImg<T>::asin()' and their get_* counterparts.<br/> 198.757 +<br/> 198.758 +* Optimizations / Modifications :<br/> 198.759 + - 'cimg_debug' has new value signification. Can now choose between displaying error message on the console 198.760 + or on modal windows, even when 'cimg_display_type' is not 0.<br/> 198.761 + - Updated CImg presentation slides in 'documentation/slides_cimg.pdf', more complete now.<br/> 198.762 + - Added new directories in path search for 'convert' and 'medcon' and 'temporary path'. 198.763 + 'convert' or 'medcon' found in the current directory './' now override the default ones.<br/> 198.764 + - Added safer support for Windows 64bits.<br/> 198.765 + - Improved version of 'cimg::info()' for debugging facilities. Now displays almost every 198.766 + important library variables and parameters.<br/> 198.767 + - Static version of CImg<T>::sequence() now return a column vector instead of a line.<br/> 198.768 + - Slightly changed the tracking algorithm and few other things in 'examples/dtmri_view.cpp', 198.769 + allowing more precision in the fiber computation.<br/> 198.770 + - Modified the 'CImg<T>::feature_selection()' function : replaced the moving hatch by a static 198.771 + one, less fun but also less time consuming. One small selection bug for 3D volumes has been 198.772 + also corrected.<br/> 198.773 + - Corrected line routine for 64bits architectures.<br/> 198.774 + - Replaced 'CImg<T>::scroll()' by 'CImg<T>::translate()'.<br/> 198.775 + - Replaced all 'cimg_map' by more coherent names based on 'cimg_for_*'. Same for 'cimglist_map'.<br/> 198.776 + Compatibility with previous versions of CImg is ensured if 'cimg_strict' is not defined.<br/> 198.777 + - Recoded functions to retrieve parts of the images : get_channel(), get_slice(), ...<br/> 198.778 + - Improved the cimg::system() function.<br/> 198.779 + - Added some tests and display extra warnings when saving images with wrong formats.<br/> 198.780 +<br/> 198.781 +* Bug corrections :<br/> 198.782 + - Corrected small bug in 'CImg<>::blur_anisotropic()', 'examples/greycstoration.cpp' and 'plugins/greycstoration4integration.h'.<br/> 198.783 + - And lot of minor bug corrections and optimizations .....<br/> 198.784 +<br/> 198.785 +</font> 198.786 + 198.787 +</font></blockquote></td></tr></table></font><br/> 198.788 + 198.789 +<!-- ###################### --> 198.790 +<font face="Arial,Helvetica"><font size="-1"> 198.791 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.792 +<tbody><tr bgcolor="#ccccee"><td> 198.793 +<b>First donator !</b> 198.794 +<font size="-2">(2007/01/22, 04:37pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.795 +I really would like to thank the anonymous user that donated some money to the CImg Library. 198.796 +I don't know who you are, but you have to know that your are the very first one ! I appreciate 198.797 +this attention.<br/><br/> 198.798 +Of course, I also thank all other people participating to CImg by reporting bugs, sending postcards 198.799 +(2 received so far !) and helping developing new piece of code.<br/> 198.800 +I hope the CImg Library will be alive for a long long time. Next step : the 1.1.8 release, 198.801 +integrating cool new features and improving stability.<br/><br/> 198.802 + 198.803 +Cheers !<br/<br/> 198.804 +David.<br/> 198.805 +</font></blockquote></td></tr></table></font><br/> 198.806 + 198.807 + 198.808 +<!-- ###################### --> 198.809 +<font face="Arial,Helvetica"><font size="-1"> 198.810 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.811 +<tbody><tr bgcolor="#ccccee"><td> 198.812 +<b>CImg 1.1.7 Released</b> 198.813 +<font size="-2">(2006/11/06, 03:15pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.814 +The CImg 1.1.7 package has been released. It adds cool new features and bug corrections, and proposes more elaborated 198.815 +use of template objects. 198.816 +You can go to the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Download page</a> to get the latest 1.1.7 package.<br/><br/> 198.817 +Here is the CHANGELOG :<br/> 198.818 +<font color="#D00000"> 198.819 +*-----------------------------<br/> 198.820 +*-----------------------------<br/> 198.821 +* Changes from 1.1.6 to 1.1.7<br/> 198.822 +*-----------------------------<br/> 198.823 +*-----------------------------<br/> 198.824 +<br/> 198.825 +* New features :<br/> 198.826 + - Added 'operator<<()' and 'operator>>()' for bit shift operations on all images pixels.<br/> 198.827 + - Added most of mathematical operators in the 'CImgList' class.<br/> 198.828 + - Added new demo 'Image Waves' in 'examples/CImg_demo.cpp'.<br/> 198.829 + - Added mouse wheel support on Windows.<br/> 198.830 +<br/> 198.831 +* Optimizations / Modifications :<br/> 198.832 + - Renamed class 'CImgl' into 'CImgList', also renamed macro 'cimgl_map' to 'cimglist_map'.<br/> 198.833 + Backward compatibility is assured in 1.1.7 version, but think about replacing the old names<br/> 198.834 + by the new ones for future CImg versions.<br/> 198.835 + - Removed 'operator<<()' which appended an image to another one<br/> 198.836 + - Recoded lot of non in-place mathematical operators to avoid numerical truncations.<br/> 198.837 + It may have a great influence on your code. For instance writting '0.5+img' will result in a CImg<double> 198.838 + image, even if 'img' was a CImg<float>.<br/> 198.839 + - Recoded most of 'CImg<T>::get_resize()' function : linear interpolation performs now really faster, and 198.840 + an additional parameter allows to select between different conditions for border values.<br/> 198.841 + - Recoded 'CImg<T>::draw_line()' so that it now uses a classical Bresenham algorithm, avoiding rounding errors.<br/> 198.842 +<br/> 198.843 +* Bug corrections :<br/> 198.844 + - Corrected some functions that did not performed correctly on shared images.<br/> 198.845 + - Corrected small bug in 'plugins/primitives3d.h' in function 'CImg<T>::sphere()'.<br/> 198.846 + - Corrected 'CImg<T>::feature_selection()' when displaying 'CImg<bool>' images.<br/> 198.847 + - Corrected 'CImg<T>::load_cimg()' : is now able to load bool images.<br/> 198.848 + - And lot of minor bug corrections and optimizations .....<br/> 198.849 +</font> 198.850 + 198.851 +</font></blockquote></td></tr></table></font><br/> 198.852 + 198.853 +<!-- ###################### --> 198.854 +<font face="Arial,Helvetica"><font size="-1"> 198.855 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.856 +<tbody><tr bgcolor="#ccccee"><td> 198.857 +<b>CImg 1.1.7 in progress...</b> 198.858 +<font size="-2">(2006/10/24, 10:21am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.859 +Preparing the next CImg release 1.1.7, I've added a new small and cool effect in the example file <i>examples/CImg_demo.cpp</i>. 198.860 +It roughly applies the wave equation on a height map on which a color image is mapped. 198.861 +This height map is deforming itself according to falling particles, and all is displayed as a 3D gouraud rotating object.<br/> 198.862 +But the best of all, is that all fits in about 60 lines of code !<br/><br/> 198.863 +Here's a screenshot below, click on the image to see 198.864 +<a href="img/video_waves.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;">the video</a> :<br/><br/> 198.865 + 198.866 +<a href="img/video_waves.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 198.867 +<img src="img/ss_waves.jpg"></a> 198.868 + 198.869 +</font></blockquote></td></tr></table></font><br/> 198.870 + 198.871 +<!-- ###################### --> 198.872 +<font face="Arial,Helvetica"><font size="-1"> 198.873 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.874 +<tbody><tr bgcolor="#ccccee"><td> 198.875 +<b>Call for links</b> 198.876 +<font size="-2">(2006/10/05, 10:32am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.877 +I'm planning to create a '<a href="links.shtml">Links</a>' page on the CImg web site, that will propose a list of links to projects that use the CImg Library in their source code. 198.878 +If you are concerned and interested to appear in this page, please send me an e-mail, or post a message in the CImg forum. 198.879 +Thanks for your participation. 198.880 +</font></blockquote></td></tr></table></font><br/> 198.881 + 198.882 +<!-- ###################### --> 198.883 +<font face="Arial,Helvetica"><font size="-1"> 198.884 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.885 +<tbody><tr bgcolor="#ccccee"><td> 198.886 +<b>CImg 1.1.6 released</b> 198.887 +<font size="-2">(2006/09/21, 04:32pm)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.888 +Minor release, but fixes some bugs. 198.889 +</font></blockquote></td></tr></table></font><br/> 198.890 + 198.891 +<!-- ###################### --> 198.892 +<font face="Arial,Helvetica"><font size="-1"> 198.893 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.894 +<tbody><tr bgcolor="#ccccee"><td> 198.895 +<b>CImg 1.1.5 released</b> 198.896 +<font size="-2">(2006/07/19, 09:53am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.897 +Following a traditional two-month release period, I'm happy to announce the release of the CImg 1.1.5 package.<br/> 198.898 +There are some important changes in the API, basically, it converges to something clear and coherent.<br/> 198.899 +The changelog is :<br/> 198.900 +<br/> 198.901 +*-----------------------------<br/> 198.902 +*-----------------------------<br/> 198.903 +* Changes from 1.1.4 to 1.1.5<br/> 198.904 +*-----------------------------<br/> 198.905 +*-----------------------------<br/> 198.906 +<br/> 198.907 +* New features :<br/> 198.908 + - Added Poisson noise capability in CImg<T>::noise() (This patch has been proposed by Jerome Boulanger)<br/> 198.909 + - Added wheel mouse support in 'CImgDisplay', now used in 'CImg<>::feature_selection()' to go through slices of 198.910 + 3D volumes (unfortunately for X11 systems only).<br/> 198.911 + - Added function 'CImgDisplay::toggle_fullscreen()' to allow easy and dynamic fullscreen switching of a display.<br/> 198.912 + - Added screen resolution switching capabilities when using the Xrandr extension, under X11 (#define cimg_use_xrandr).<br/> 198.913 + - Added support for ImageMagick++ built-in library (parts of the patch proposed by Christoph Hormann).<br/> 198.914 + - And lot of small functions to ease the life...<br/> 198.915 +<br/> 198.916 +* Optimizations / Modifications :<br/> 198.917 + - CeCiLL-C license now applies for the file 'CImg.h'. This license (close to the LGPL one) is more adapted 198.918 + for library components as CImg. The examples stay in previous CeCiLL license (close to the GPL one).<br/> 198.919 + - Recoded 'CImg<T>::draw_axe?()' (where ? can be 'X','Y' or 'XY') so that it can now be used to draw non-linear values along axes 198.920 + (for instance logarithmic-varying labels).<br/> 198.921 + - Attribute 'force' has been removed in 'CImgDisplay::resize()'.<br/> 198.922 + - Recoded most constructors and assign functions in CImg<T> and CImgl<T>.<br/> 198.923 + - Recoded most of the CImgDisplay class to allow more flexibility and refreshing speed.<br/> 198.924 + - Renamed 'CImgDisplay::title()' to 'CImgDisplay::set_title()'. 'CImgDisplay::title' is now a class variable 198.925 + that stores the current title of the display window.<br/> 198.926 + - 'CImgDisplay::closed', 'CImgDisplay::resized', 'CImgDisplay::fullscreen' and 'CImgDisplay::moved' have been 198.927 + renamed to 'CImgDisplay::is_closed', 'CImgDisplay::is_resized', 'CImgDisplay::is_fullscreen' and 198.928 + 'CImgDisplay::is_moved', for more coherent variable names.<br/> 198.929 + - 'CImg<T>::display_object3d()' : can now specify an input pose matrix, as well as get the output pose matrix, 198.930 + after the user rotated the object. Also, this function has been optimized.<br/> 198.931 +<br/> 198.932 +* Bug corrections :<br/> 198.933 + - Corrected sorting bug in 'CImg<T>::symmetric_eigen()' and 'CImg<T>::SVD()'<br/> 198.934 + - When using shared memory images, some 'CImg<T>::get_*()' methods returned a shared memory image too.<br/> 198.935 + - And lot of minor bug corrections and optimizations .....<br/> 198.936 +</font></blockquote></td></tr></table></font><br/> 198.937 + 198.938 +<!-- ###################### --> 198.939 +<font face="Arial,Helvetica"><font size="-1"> 198.940 +<table align="center" bgcolor="#eeeeff" border="0" cellpadding="2" cellspacing="0" width="900"> 198.941 +<tbody><tr bgcolor="#ccccee"><td> 198.942 +<b>Previous News</b> 198.943 +<font size="-2">(2006/07/19, 09:53am)</font></td></tr><tr><td><blockquote><font face="Arial,Helvetica"><font size="-1"> 198.944 +The system for posting news has changed, and you can see old news by <a href="http://www.livejournal.com/users/cimg/">going there</a>. 198.945 +</font></blockquote></td></tr></table></font><br/> 198.946 + 198.947 + 198.948 + <hr noshade="noshade" size="1" width="100%"> 198.949 + <a href="http://sourceforge.net"> 198.950 + <img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></a> 198.951 + 198.952 + </td></tr></tbody> 198.953 + 198.954 +<!-- Start of StatCounter Code --> 198.955 +<script type="text/javascript" language="javascript"> 198.956 +<!-- 198.957 +var sc_project=895001; 198.958 +var sc_invisible=1; 198.959 +var sc_partition=7; 198.960 +var sc_security="5ea85181"; 198.961 +//--> 198.962 +</script> 198.963 + 198.964 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 198.965 +<!-- End of StatCounter Code --> 198.966 + 198.967 + </body> 198.968 +</html>
199.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 199.2 +++ b/PTdecode/CImg-1.3.0/html/reference/annotated.html Mon Aug 03 14:09:20 2009 +0100 199.3 @@ -0,0 +1,149 @@ 199.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 199.5 +<head> 199.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 199.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 199.8 +<meta content="David Tschumperle" name="author"></meta> 199.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 199.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 199.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 199.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 199.13 +<style type="text/css"> 199.14 +<!-- 199.15 +body {background-color:white; font-family:sans-serif; } 199.16 +a:active{text-decoration:none; color:#303090} 199.17 +a:link{text-decoration:none; color:#303090} 199.18 +a:visited{text-decoration:none; color:#303090} 199.19 +a:hover{text-decoration:underline; color:#4E9F71} 199.20 +--> 199.21 +</style> 199.22 +<script language="JavaScript" type="text/javascript"> 199.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 199.24 + <!-- Web Site: http://redrival.com/eak/ --> 199.25 + <!-- This script and many more are available free online at --> 199.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 199.27 + <!-- Begin 199.28 + function NewWindow(mypage, myname, w, h, scroll) { 199.29 + var winl = (screen.width - w) / 2; 199.30 + var wint = (screen.height - h) / 2; 199.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 199.32 + win = window.open(mypage, myname, winprops) 199.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 199.34 + } 199.35 + // End --> 199.36 +</script> 199.37 +</head> 199.38 +<body> 199.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 199.40 + <tbody><tr><td> 199.41 + <hr noshade="noshade" size="1" width="90%"></hr> 199.42 + <center> 199.43 + <br/> 199.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 199.45 + <br/> 199.46 + </center> 199.47 + <hr noshade="noshade" size="1" width="90%"></hr> 199.48 + <center> 199.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 199.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 199.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 199.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 199.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 199.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 199.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 199.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 199.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 199.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 199.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 199.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 199.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 199.62 + </font> 199.63 + </td></tr></tbody> 199.64 + </table> 199.65 + </center> 199.66 + <hr noshade="noshade" size="1" width="90%"></hr> 199.67 + </td></tr></tbody> 199.68 +</table> 199.69 +<!-- Generated by Doxygen 1.5.7.1 --> 199.70 +<script type="text/javascript"> 199.71 +<!-- 199.72 +function changeDisplayState (e){ 199.73 + var num=this.id.replace(/[^[0-9]/g,''); 199.74 + var button=this.firstChild; 199.75 + var sectionDiv=document.getElementById('dynsection'+num); 199.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 199.77 + sectionDiv.style.display='block'; 199.78 + button.src='open.gif'; 199.79 + }else{ 199.80 + sectionDiv.style.display='none'; 199.81 + button.src='closed.gif'; 199.82 + } 199.83 +} 199.84 +function initDynSections(){ 199.85 + var divs=document.getElementsByTagName('div'); 199.86 + var sectionCounter=1; 199.87 + for(var i=0;i<divs.length-1;i++){ 199.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 199.89 + var header=divs[i]; 199.90 + var section=divs[i+1]; 199.91 + var button=header.firstChild; 199.92 + if (button!='IMG'){ 199.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 199.94 + button=document.createElement('img'); 199.95 + divs[i].insertBefore(button,divs[i].firstChild); 199.96 + } 199.97 + header.style.cursor='pointer'; 199.98 + header.onclick=changeDisplayState; 199.99 + header.id='dynheader'+sectionCounter; 199.100 + button.src='closed.gif'; 199.101 + section.id='dynsection'+sectionCounter; 199.102 + section.style.display='none'; 199.103 + section.style.marginLeft='14px'; 199.104 + sectionCounter++; 199.105 + } 199.106 + } 199.107 +} 199.108 +window.onload = initDynSections; 199.109 +--> 199.110 +</script> 199.111 +<div class="navigation" id="top"> 199.112 + <div class="tabs"> 199.113 + <ul> 199.114 + <li><a href="index.html"><span>Main Page</span></a></li> 199.115 + <li><a href="modules.html"><span>Modules</span></a></li> 199.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 199.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 199.118 + </ul> 199.119 + </div> 199.120 + <div class="tabs"> 199.121 + <ul> 199.122 + <li class="current"><a href="annotated.html"><span>Class List</span></a></li> 199.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 199.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 199.125 + </ul> 199.126 + </div> 199.127 +</div> 199.128 +<div class="contents"> 199.129 +<h1>Class List</h1>Here are the classes, structs, unions and interfaces with brief descriptions:<table> 199.130 + <tr><td class="indexkey"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td class="indexvalue">Class representing an image (up to 4 dimensions wide), each pixel being of type <code>T</code> </td></tr> 199.131 + <tr><td class="indexkey"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td class="indexvalue">This class represents a window which can display <a class="el" href="structcimg__library_1_1CImg.html">CImg</a> images and handles mouse and keyboard events </td></tr> 199.132 + <tr><td class="indexkey"><a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a></td><td class="indexvalue">Instances of this class are thrown when errors occur during a CImg library function call </td></tr> 199.133 + <tr><td class="indexkey"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td class="indexvalue">Class representing list of images CImg<T> </td></tr> 199.134 +</table> 199.135 +</div> 199.136 +<hr noshade="noshade" size="1" width="100%"> 199.137 +<a href="http://sourceforge.net"> 199.138 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 199.139 +</a> 199.140 +<!-- Start of StatCounter Code --> 199.141 +<script type="text/javascript" language="javascript"> 199.142 +<!-- 199.143 +var sc_project=895001; 199.144 +var sc_invisible=1; 199.145 +var sc_partition=7; 199.146 +var sc_security="5ea85181"; 199.147 +//--> 199.148 +</script> 199.149 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 199.150 +<!-- End of StatCounter Code --> 199.151 +</body> 199.152 +</html>
200.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 200.2 +++ b/PTdecode/CImg-1.3.0/html/reference/classes.html Mon Aug 03 14:09:20 2009 +0100 200.3 @@ -0,0 +1,147 @@ 200.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 200.5 +<head> 200.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 200.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 200.8 +<meta content="David Tschumperle" name="author"></meta> 200.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 200.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 200.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 200.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 200.13 +<style type="text/css"> 200.14 +<!-- 200.15 +body {background-color:white; font-family:sans-serif; } 200.16 +a:active{text-decoration:none; color:#303090} 200.17 +a:link{text-decoration:none; color:#303090} 200.18 +a:visited{text-decoration:none; color:#303090} 200.19 +a:hover{text-decoration:underline; color:#4E9F71} 200.20 +--> 200.21 +</style> 200.22 +<script language="JavaScript" type="text/javascript"> 200.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 200.24 + <!-- Web Site: http://redrival.com/eak/ --> 200.25 + <!-- This script and many more are available free online at --> 200.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 200.27 + <!-- Begin 200.28 + function NewWindow(mypage, myname, w, h, scroll) { 200.29 + var winl = (screen.width - w) / 2; 200.30 + var wint = (screen.height - h) / 2; 200.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 200.32 + win = window.open(mypage, myname, winprops) 200.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 200.34 + } 200.35 + // End --> 200.36 +</script> 200.37 +</head> 200.38 +<body> 200.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 200.40 + <tbody><tr><td> 200.41 + <hr noshade="noshade" size="1" width="90%"></hr> 200.42 + <center> 200.43 + <br/> 200.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 200.45 + <br/> 200.46 + </center> 200.47 + <hr noshade="noshade" size="1" width="90%"></hr> 200.48 + <center> 200.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 200.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 200.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 200.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 200.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 200.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 200.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 200.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 200.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 200.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 200.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 200.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 200.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 200.62 + </font> 200.63 + </td></tr></tbody> 200.64 + </table> 200.65 + </center> 200.66 + <hr noshade="noshade" size="1" width="90%"></hr> 200.67 + </td></tr></tbody> 200.68 +</table> 200.69 +<!-- Generated by Doxygen 1.5.7.1 --> 200.70 +<script type="text/javascript"> 200.71 +<!-- 200.72 +function changeDisplayState (e){ 200.73 + var num=this.id.replace(/[^[0-9]/g,''); 200.74 + var button=this.firstChild; 200.75 + var sectionDiv=document.getElementById('dynsection'+num); 200.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 200.77 + sectionDiv.style.display='block'; 200.78 + button.src='open.gif'; 200.79 + }else{ 200.80 + sectionDiv.style.display='none'; 200.81 + button.src='closed.gif'; 200.82 + } 200.83 +} 200.84 +function initDynSections(){ 200.85 + var divs=document.getElementsByTagName('div'); 200.86 + var sectionCounter=1; 200.87 + for(var i=0;i<divs.length-1;i++){ 200.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 200.89 + var header=divs[i]; 200.90 + var section=divs[i+1]; 200.91 + var button=header.firstChild; 200.92 + if (button!='IMG'){ 200.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 200.94 + button=document.createElement('img'); 200.95 + divs[i].insertBefore(button,divs[i].firstChild); 200.96 + } 200.97 + header.style.cursor='pointer'; 200.98 + header.onclick=changeDisplayState; 200.99 + header.id='dynheader'+sectionCounter; 200.100 + button.src='closed.gif'; 200.101 + section.id='dynsection'+sectionCounter; 200.102 + section.style.display='none'; 200.103 + section.style.marginLeft='14px'; 200.104 + sectionCounter++; 200.105 + } 200.106 + } 200.107 +} 200.108 +window.onload = initDynSections; 200.109 +--> 200.110 +</script> 200.111 +<div class="navigation" id="top"> 200.112 + <div class="tabs"> 200.113 + <ul> 200.114 + <li><a href="index.html"><span>Main Page</span></a></li> 200.115 + <li><a href="modules.html"><span>Modules</span></a></li> 200.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 200.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 200.118 + </ul> 200.119 + </div> 200.120 + <div class="tabs"> 200.121 + <ul> 200.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 200.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 200.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 200.125 + </ul> 200.126 + </div> 200.127 +</div> 200.128 +<div class="contents"> 200.129 +<h1>Class Index</h1><p><div class="qindex"><a class="qindex" href="#letter_C">C</a></div><p> 200.130 +<table align="center" width="95%" border="0" cellspacing="0" cellpadding="0"> 200.131 +<tr><td><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> C </div></td></tr></table> 200.132 +</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> (<a class="el" href="namespacecimg__library.html">cimg_library</a>) </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> (<a class="el" href="namespacecimg__library.html">cimg_library</a>) </td><td><a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a> (<a class="el" href="namespacecimg__library.html">cimg_library</a>) </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a> (<a class="el" href="namespacecimg__library.html">cimg_library</a>) </td></tr></table><p><div class="qindex"><a class="qindex" href="#letter_C">C</a></div><p> 200.133 +</div> 200.134 +<hr noshade="noshade" size="1" width="100%"> 200.135 +<a href="http://sourceforge.net"> 200.136 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 200.137 +</a> 200.138 +<!-- Start of StatCounter Code --> 200.139 +<script type="text/javascript" language="javascript"> 200.140 +<!-- 200.141 +var sc_project=895001; 200.142 +var sc_invisible=1; 200.143 +var sc_partition=7; 200.144 +var sc_security="5ea85181"; 200.145 +//--> 200.146 +</script> 200.147 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 200.148 +<!-- End of StatCounter Code --> 200.149 +</body> 200.150 +</html>
201.1 Binary file PTdecode/CImg-1.3.0/html/reference/closed.gif has changed
202.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 202.2 +++ b/PTdecode/CImg-1.3.0/html/reference/doxygen.css Mon Aug 03 14:09:20 2009 +0100 202.3 @@ -0,0 +1,441 @@ 202.4 +body, table, div, p, dl { 202.5 + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; 202.6 + font-size: 12px; 202.7 +} 202.8 + 202.9 +/* @group Heading Levels */ 202.10 + 202.11 +h1 { 202.12 + text-align: center; 202.13 + font-size: 150%; 202.14 +} 202.15 + 202.16 +h2 { 202.17 + font-size: 120%; 202.18 +} 202.19 + 202.20 +h3 { 202.21 + font-size: 100%; 202.22 +} 202.23 + 202.24 +/* @end */ 202.25 + 202.26 +caption { 202.27 + font-weight: bold; 202.28 +} 202.29 + 202.30 +div.qindex, div.navpath, div.navtab{ 202.31 + background-color: #e8eef2; 202.32 + border: 1px solid #84b0c7; 202.33 + text-align: center; 202.34 + margin: 2px; 202.35 + padding: 2px; 202.36 +} 202.37 + 202.38 +div.qindex, div.navpath { 202.39 + width: 100%; 202.40 + line-height: 140%; 202.41 +} 202.42 + 202.43 +div.navtab { 202.44 + margin-right: 15px; 202.45 +} 202.46 + 202.47 +/* @group Link Styling */ 202.48 + 202.49 +a { 202.50 + color: #153788; 202.51 + font-weight: normal; 202.52 + text-decoration: none; 202.53 +} 202.54 + 202.55 +.contents a:visited { 202.56 + color: #1b77c5; 202.57 +} 202.58 + 202.59 +a:hover { 202.60 + text-decoration: underline; 202.61 +} 202.62 + 202.63 +a.qindex { 202.64 + font-weight: bold; 202.65 +} 202.66 + 202.67 +a.qindexHL { 202.68 + font-weight: bold; 202.69 + background-color: #6666cc; 202.70 + color: #ffffff; 202.71 + border: 1px double #9295C2; 202.72 +} 202.73 + 202.74 +a.el { 202.75 + font-weight: bold; 202.76 +} 202.77 + 202.78 +a.elRef { 202.79 +} 202.80 + 202.81 +a.code { 202.82 +} 202.83 + 202.84 +a.codeRef { 202.85 +} 202.86 + 202.87 +/* @end */ 202.88 + 202.89 +dl.el { 202.90 + margin-left: -1cm; 202.91 +} 202.92 + 202.93 +.fragment { 202.94 + font-family: monospace, fixed; 202.95 + font-size: 105%; 202.96 +} 202.97 + 202.98 +pre.fragment { 202.99 + border: 1px solid #CCCCCC; 202.100 + background-color: #f5f5f5; 202.101 + padding: 4px 6px; 202.102 + margin: 4px 8px 4px 2px; 202.103 +} 202.104 + 202.105 +div.ah { 202.106 + background-color: black; 202.107 + font-weight: bold; 202.108 + color: #ffffff; 202.109 + margin-bottom: 3px; 202.110 + margin-top: 3px 202.111 +} 202.112 + 202.113 +div.groupHeader { 202.114 + margin-left: 16px; 202.115 + margin-top: 12px; 202.116 + margin-bottom: 6px; 202.117 + font-weight: bold; 202.118 +} 202.119 + 202.120 +div.groupText { 202.121 + margin-left: 16px; 202.122 + font-style: italic; 202.123 +} 202.124 + 202.125 +body { 202.126 + background: white; 202.127 + color: black; 202.128 + margin-right: 20px; 202.129 + margin-left: 20px; 202.130 +} 202.131 + 202.132 +td.indexkey { 202.133 + background-color: #e8eef2; 202.134 + font-weight: bold; 202.135 + border: 1px solid #CCCCCC; 202.136 + margin: 2px 0px 2px 0; 202.137 + padding: 2px 10px; 202.138 +} 202.139 + 202.140 +td.indexvalue { 202.141 + background-color: #e8eef2; 202.142 + border: 1px solid #CCCCCC; 202.143 + padding: 2px 10px; 202.144 + margin: 2px 0px; 202.145 +} 202.146 + 202.147 +tr.memlist { 202.148 + background-color: #f0f0f0; 202.149 +} 202.150 + 202.151 +p.formulaDsp { 202.152 + text-align: center; 202.153 +} 202.154 + 202.155 +img.formulaDsp { 202.156 + 202.157 +} 202.158 + 202.159 +img.formulaInl { 202.160 + vertical-align: middle; 202.161 +} 202.162 + 202.163 +/* @group Code Colorization */ 202.164 + 202.165 +span.keyword { 202.166 + color: #008000 202.167 +} 202.168 + 202.169 +span.keywordtype { 202.170 + color: #604020 202.171 +} 202.172 + 202.173 +span.keywordflow { 202.174 + color: #e08000 202.175 +} 202.176 + 202.177 +span.comment { 202.178 + color: #800000 202.179 +} 202.180 + 202.181 +span.preprocessor { 202.182 + color: #806020 202.183 +} 202.184 + 202.185 +span.stringliteral { 202.186 + color: #002080 202.187 +} 202.188 + 202.189 +span.charliteral { 202.190 + color: #008080 202.191 +} 202.192 + 202.193 +span.vhdldigit { 202.194 + color: #ff00ff 202.195 +} 202.196 + 202.197 +span.vhdlchar { 202.198 + color: #000000 202.199 +} 202.200 + 202.201 +span.vhdlkeyword { 202.202 + color: #700070 202.203 +} 202.204 + 202.205 +span.vhdllogic { 202.206 + color: #ff0000 202.207 +} 202.208 + 202.209 +/* @end */ 202.210 + 202.211 +.search { 202.212 + color: #003399; 202.213 + font-weight: bold; 202.214 +} 202.215 + 202.216 +form.search { 202.217 + margin-bottom: 0px; 202.218 + margin-top: 0px; 202.219 +} 202.220 + 202.221 +input.search { 202.222 + font-size: 75%; 202.223 + color: #000080; 202.224 + font-weight: normal; 202.225 + background-color: #e8eef2; 202.226 +} 202.227 + 202.228 +td.tiny { 202.229 + font-size: 75%; 202.230 +} 202.231 + 202.232 +.dirtab { 202.233 + padding: 4px; 202.234 + border-collapse: collapse; 202.235 + border: 1px solid #84b0c7; 202.236 +} 202.237 + 202.238 +th.dirtab { 202.239 + background: #e8eef2; 202.240 + font-weight: bold; 202.241 +} 202.242 + 202.243 +hr { 202.244 + height: 0; 202.245 + border: none; 202.246 + border-top: 1px solid #666; 202.247 +} 202.248 + 202.249 +/* @group Member Descriptions */ 202.250 + 202.251 +.mdescLeft, .mdescRight, 202.252 +.memItemLeft, .memItemRight, 202.253 +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { 202.254 + background-color: #FAFAFA; 202.255 + border: none; 202.256 + margin: 4px; 202.257 + padding: 1px 0 0 8px; 202.258 +} 202.259 + 202.260 +.mdescLeft, .mdescRight { 202.261 + padding: 0px 8px 4px 8px; 202.262 + color: #555; 202.263 +} 202.264 + 202.265 +.memItemLeft, .memItemRight, .memTemplParams { 202.266 + border-top: 1px solid #ccc; 202.267 +} 202.268 + 202.269 +.memTemplParams { 202.270 + color: #606060; 202.271 +} 202.272 + 202.273 +/* @end */ 202.274 + 202.275 +/* @group Member Details */ 202.276 + 202.277 +/* Styles for detailed member documentation */ 202.278 + 202.279 +.memtemplate { 202.280 + font-size: 80%; 202.281 + color: #606060; 202.282 + font-weight: normal; 202.283 + margin-left: 3px; 202.284 +} 202.285 + 202.286 +.memnav { 202.287 + background-color: #e8eef2; 202.288 + border: 1px solid #84b0c7; 202.289 + text-align: center; 202.290 + margin: 2px; 202.291 + margin-right: 15px; 202.292 + padding: 2px; 202.293 +} 202.294 + 202.295 +.memitem { 202.296 + padding: 0; 202.297 +} 202.298 + 202.299 +.memname { 202.300 + white-space: nowrap; 202.301 + font-weight: bold; 202.302 +} 202.303 + 202.304 +.memproto, .memdoc { 202.305 + border: 1px solid #84b0c7; 202.306 +} 202.307 + 202.308 +.memproto { 202.309 + padding: 0; 202.310 + background-color: #d5e1e8; 202.311 + font-weight: bold; 202.312 + -webkit-border-top-left-radius: 8px; 202.313 + -webkit-border-top-right-radius: 8px; 202.314 + -moz-border-radius-topleft: 8px; 202.315 + -moz-border-radius-topright: 8px; 202.316 +} 202.317 + 202.318 +.memdoc { 202.319 + padding: 2px 5px; 202.320 + background-color: #eef3f5; 202.321 + border-top-width: 0; 202.322 + -webkit-border-bottom-left-radius: 8px; 202.323 + -webkit-border-bottom-right-radius: 8px; 202.324 + -moz-border-radius-bottomleft: 8px; 202.325 + -moz-border-radius-bottomright: 8px; 202.326 +} 202.327 + 202.328 +.memdoc p, .memdoc dl, .memdoc ul { 202.329 + margin: 6px 0; 202.330 +} 202.331 + 202.332 +.paramkey { 202.333 + text-align: right; 202.334 +} 202.335 + 202.336 +.paramtype { 202.337 + white-space: nowrap; 202.338 +} 202.339 + 202.340 +.paramname { 202.341 + color: #602020; 202.342 + white-space: nowrap; 202.343 +} 202.344 +.paramname em { 202.345 + font-style: normal; 202.346 +} 202.347 + 202.348 +/* @end */ 202.349 + 202.350 +/* @group Directory (tree) */ 202.351 + 202.352 +/* for the tree view */ 202.353 + 202.354 +.ftvtree { 202.355 + font-family: sans-serif; 202.356 + margin: 0.5em; 202.357 +} 202.358 + 202.359 +/* these are for tree view when used as main index */ 202.360 + 202.361 +.directory { 202.362 + font-size: 9pt; 202.363 + font-weight: bold; 202.364 +} 202.365 + 202.366 +.directory h3 { 202.367 + margin: 0px; 202.368 + margin-top: 1em; 202.369 + font-size: 11pt; 202.370 +} 202.371 + 202.372 +/* 202.373 +The following two styles can be used to replace the root node title 202.374 +with an image of your choice. Simply uncomment the next two styles, 202.375 +specify the name of your image and be sure to set 'height' to the 202.376 +proper pixel height of your image. 202.377 +*/ 202.378 + 202.379 +/* 202.380 +.directory h3.swap { 202.381 + height: 61px; 202.382 + background-repeat: no-repeat; 202.383 + background-image: url("yourimage.gif"); 202.384 +} 202.385 +.directory h3.swap span { 202.386 + display: none; 202.387 +} 202.388 +*/ 202.389 + 202.390 +.directory > h3 { 202.391 + margin-top: 0; 202.392 +} 202.393 + 202.394 +.directory p { 202.395 + margin: 0px; 202.396 + white-space: nowrap; 202.397 +} 202.398 + 202.399 +.directory div { 202.400 + display: none; 202.401 + margin: 0px; 202.402 +} 202.403 + 202.404 +.directory img { 202.405 + vertical-align: -30%; 202.406 +} 202.407 + 202.408 +/* these are for tree view when not used as main index */ 202.409 + 202.410 +.directory-alt { 202.411 + font-size: 100%; 202.412 + font-weight: bold; 202.413 +} 202.414 + 202.415 +.directory-alt h3 { 202.416 + margin: 0px; 202.417 + margin-top: 1em; 202.418 + font-size: 11pt; 202.419 +} 202.420 + 202.421 +.directory-alt > h3 { 202.422 + margin-top: 0; 202.423 +} 202.424 + 202.425 +.directory-alt p { 202.426 + margin: 0px; 202.427 + white-space: nowrap; 202.428 +} 202.429 + 202.430 +.directory-alt div { 202.431 + display: none; 202.432 + margin: 0px; 202.433 +} 202.434 + 202.435 +.directory-alt img { 202.436 + vertical-align: -30%; 202.437 +} 202.438 + 202.439 +/* @end */ 202.440 + 202.441 +address { 202.442 + font-style: normal; 202.443 + color: #333; 202.444 +}
203.1 Binary file PTdecode/CImg-1.3.0/html/reference/doxygen.png has changed
204.1 Binary file PTdecode/CImg-1.3.0/html/reference/form_0.png has changed
205.1 Binary file PTdecode/CImg-1.3.0/html/reference/form_1.png has changed
206.1 Binary file PTdecode/CImg-1.3.0/html/reference/form_2.png has changed
207.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 207.2 +++ b/PTdecode/CImg-1.3.0/html/reference/formula.repository Mon Aug 03 14:09:20 2009 +0100 207.3 @@ -0,0 +1,3 @@ 207.4 +\form#0:$ v = 1/N \sum\limits_{k=1}^{N} (x_k - \bar x)^2 = 1/N \left( \sum\limits_{k=1}^N x_k^2 - \left( \sum\limits_{k=1}^N x_k \right)^2 / N \right) $ 207.5 +\form#1:$ \bar x = 1/N \sum\limits_{k=1}^N x_k $ 207.6 +\form#2:$ v = \frac{1}{N-1} \sum\limits_{k=1}^{N} (x_k - \bar x)^2 $
208.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 208.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions.html Mon Aug 03 14:09:20 2009 +0100 208.3 @@ -0,0 +1,187 @@ 208.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 208.5 +<head> 208.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 208.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 208.8 +<meta content="David Tschumperle" name="author"></meta> 208.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 208.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 208.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 208.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 208.13 +<style type="text/css"> 208.14 +<!-- 208.15 +body {background-color:white; font-family:sans-serif; } 208.16 +a:active{text-decoration:none; color:#303090} 208.17 +a:link{text-decoration:none; color:#303090} 208.18 +a:visited{text-decoration:none; color:#303090} 208.19 +a:hover{text-decoration:underline; color:#4E9F71} 208.20 +--> 208.21 +</style> 208.22 +<script language="JavaScript" type="text/javascript"> 208.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 208.24 + <!-- Web Site: http://redrival.com/eak/ --> 208.25 + <!-- This script and many more are available free online at --> 208.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 208.27 + <!-- Begin 208.28 + function NewWindow(mypage, myname, w, h, scroll) { 208.29 + var winl = (screen.width - w) / 2; 208.30 + var wint = (screen.height - h) / 2; 208.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 208.32 + win = window.open(mypage, myname, winprops) 208.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 208.34 + } 208.35 + // End --> 208.36 +</script> 208.37 +</head> 208.38 +<body> 208.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 208.40 + <tbody><tr><td> 208.41 + <hr noshade="noshade" size="1" width="90%"></hr> 208.42 + <center> 208.43 + <br/> 208.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 208.45 + <br/> 208.46 + </center> 208.47 + <hr noshade="noshade" size="1" width="90%"></hr> 208.48 + <center> 208.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 208.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 208.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 208.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 208.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 208.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 208.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 208.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 208.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 208.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 208.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 208.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 208.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 208.62 + </font> 208.63 + </td></tr></tbody> 208.64 + </table> 208.65 + </center> 208.66 + <hr noshade="noshade" size="1" width="90%"></hr> 208.67 + </td></tr></tbody> 208.68 +</table> 208.69 +<!-- Generated by Doxygen 1.5.7.1 --> 208.70 +<script type="text/javascript"> 208.71 +<!-- 208.72 +function changeDisplayState (e){ 208.73 + var num=this.id.replace(/[^[0-9]/g,''); 208.74 + var button=this.firstChild; 208.75 + var sectionDiv=document.getElementById('dynsection'+num); 208.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 208.77 + sectionDiv.style.display='block'; 208.78 + button.src='open.gif'; 208.79 + }else{ 208.80 + sectionDiv.style.display='none'; 208.81 + button.src='closed.gif'; 208.82 + } 208.83 +} 208.84 +function initDynSections(){ 208.85 + var divs=document.getElementsByTagName('div'); 208.86 + var sectionCounter=1; 208.87 + for(var i=0;i<divs.length-1;i++){ 208.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 208.89 + var header=divs[i]; 208.90 + var section=divs[i+1]; 208.91 + var button=header.firstChild; 208.92 + if (button!='IMG'){ 208.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 208.94 + button=document.createElement('img'); 208.95 + divs[i].insertBefore(button,divs[i].firstChild); 208.96 + } 208.97 + header.style.cursor='pointer'; 208.98 + header.onclick=changeDisplayState; 208.99 + header.id='dynheader'+sectionCounter; 208.100 + button.src='closed.gif'; 208.101 + section.id='dynsection'+sectionCounter; 208.102 + section.style.display='none'; 208.103 + section.style.marginLeft='14px'; 208.104 + sectionCounter++; 208.105 + } 208.106 + } 208.107 +} 208.108 +window.onload = initDynSections; 208.109 +--> 208.110 +</script> 208.111 +<div class="navigation" id="top"> 208.112 + <div class="tabs"> 208.113 + <ul> 208.114 + <li><a href="index.html"><span>Main Page</span></a></li> 208.115 + <li><a href="modules.html"><span>Modules</span></a></li> 208.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 208.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 208.118 + </ul> 208.119 + </div> 208.120 + <div class="tabs"> 208.121 + <ul> 208.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 208.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 208.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 208.125 + </ul> 208.126 + </div> 208.127 + <div class="tabs"> 208.128 + <ul> 208.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 208.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 208.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 208.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 208.133 + </ul> 208.134 + </div> 208.135 + <div class="tabs"> 208.136 + <ul> 208.137 + <li class="current"><a href="functions.html#index__"><span>_</span></a></li> 208.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 208.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 208.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 208.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 208.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 208.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 208.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 208.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 208.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 208.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 208.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 208.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 208.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 208.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 208.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 208.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 208.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 208.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 208.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 208.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 208.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 208.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 208.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 208.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 208.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 208.163 + </ul> 208.164 + </div> 208.165 +</div> 208.166 +<div class="contents"> 208.167 +Here is a list of all documented class members with links to the class documentation for each member: 208.168 +<p> 208.169 +<h3><a class="anchor" name="index__">- _ -</a></h3><ul> 208.170 +<li>_save_cimg() 208.171 +: <a class="el" href="structcimg__library_1_1CImgList.html#77f67312de1a49a344111a595893f0f9">CImgList</a> 208.172 +</ul> 208.173 +</div> 208.174 +<hr noshade="noshade" size="1" width="100%"> 208.175 +<a href="http://sourceforge.net"> 208.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 208.177 +</a> 208.178 +<!-- Start of StatCounter Code --> 208.179 +<script type="text/javascript" language="javascript"> 208.180 +<!-- 208.181 +var sc_project=895001; 208.182 +var sc_invisible=1; 208.183 +var sc_partition=7; 208.184 +var sc_security="5ea85181"; 208.185 +//--> 208.186 +</script> 208.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 208.188 +<!-- End of StatCounter Code --> 208.189 +</body> 208.190 +</html>
209.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 209.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x61.html Mon Aug 03 14:09:20 2009 +0100 209.3 @@ -0,0 +1,237 @@ 209.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 209.5 +<head> 209.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 209.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 209.8 +<meta content="David Tschumperle" name="author"></meta> 209.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 209.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 209.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 209.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 209.13 +<style type="text/css"> 209.14 +<!-- 209.15 +body {background-color:white; font-family:sans-serif; } 209.16 +a:active{text-decoration:none; color:#303090} 209.17 +a:link{text-decoration:none; color:#303090} 209.18 +a:visited{text-decoration:none; color:#303090} 209.19 +a:hover{text-decoration:underline; color:#4E9F71} 209.20 +--> 209.21 +</style> 209.22 +<script language="JavaScript" type="text/javascript"> 209.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 209.24 + <!-- Web Site: http://redrival.com/eak/ --> 209.25 + <!-- This script and many more are available free online at --> 209.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 209.27 + <!-- Begin 209.28 + function NewWindow(mypage, myname, w, h, scroll) { 209.29 + var winl = (screen.width - w) / 2; 209.30 + var wint = (screen.height - h) / 2; 209.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 209.32 + win = window.open(mypage, myname, winprops) 209.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 209.34 + } 209.35 + // End --> 209.36 +</script> 209.37 +</head> 209.38 +<body> 209.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 209.40 + <tbody><tr><td> 209.41 + <hr noshade="noshade" size="1" width="90%"></hr> 209.42 + <center> 209.43 + <br/> 209.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 209.45 + <br/> 209.46 + </center> 209.47 + <hr noshade="noshade" size="1" width="90%"></hr> 209.48 + <center> 209.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 209.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 209.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 209.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 209.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 209.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 209.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 209.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 209.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 209.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 209.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 209.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 209.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 209.62 + </font> 209.63 + </td></tr></tbody> 209.64 + </table> 209.65 + </center> 209.66 + <hr noshade="noshade" size="1" width="90%"></hr> 209.67 + </td></tr></tbody> 209.68 +</table> 209.69 +<!-- Generated by Doxygen 1.5.7.1 --> 209.70 +<script type="text/javascript"> 209.71 +<!-- 209.72 +function changeDisplayState (e){ 209.73 + var num=this.id.replace(/[^[0-9]/g,''); 209.74 + var button=this.firstChild; 209.75 + var sectionDiv=document.getElementById('dynsection'+num); 209.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 209.77 + sectionDiv.style.display='block'; 209.78 + button.src='open.gif'; 209.79 + }else{ 209.80 + sectionDiv.style.display='none'; 209.81 + button.src='closed.gif'; 209.82 + } 209.83 +} 209.84 +function initDynSections(){ 209.85 + var divs=document.getElementsByTagName('div'); 209.86 + var sectionCounter=1; 209.87 + for(var i=0;i<divs.length-1;i++){ 209.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 209.89 + var header=divs[i]; 209.90 + var section=divs[i+1]; 209.91 + var button=header.firstChild; 209.92 + if (button!='IMG'){ 209.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 209.94 + button=document.createElement('img'); 209.95 + divs[i].insertBefore(button,divs[i].firstChild); 209.96 + } 209.97 + header.style.cursor='pointer'; 209.98 + header.onclick=changeDisplayState; 209.99 + header.id='dynheader'+sectionCounter; 209.100 + button.src='closed.gif'; 209.101 + section.id='dynsection'+sectionCounter; 209.102 + section.style.display='none'; 209.103 + section.style.marginLeft='14px'; 209.104 + sectionCounter++; 209.105 + } 209.106 + } 209.107 +} 209.108 +window.onload = initDynSections; 209.109 +--> 209.110 +</script> 209.111 +<div class="navigation" id="top"> 209.112 + <div class="tabs"> 209.113 + <ul> 209.114 + <li><a href="index.html"><span>Main Page</span></a></li> 209.115 + <li><a href="modules.html"><span>Modules</span></a></li> 209.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 209.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 209.118 + </ul> 209.119 + </div> 209.120 + <div class="tabs"> 209.121 + <ul> 209.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 209.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 209.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 209.125 + </ul> 209.126 + </div> 209.127 + <div class="tabs"> 209.128 + <ul> 209.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 209.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 209.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 209.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 209.133 + </ul> 209.134 + </div> 209.135 + <div class="tabs"> 209.136 + <ul> 209.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 209.138 + <li class="current"><a href="functions_0x61.html#index_a"><span>a</span></a></li> 209.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 209.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 209.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 209.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 209.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 209.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 209.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 209.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 209.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 209.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 209.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 209.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 209.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 209.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 209.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 209.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 209.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 209.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 209.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 209.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 209.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 209.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 209.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 209.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 209.163 + </ul> 209.164 + </div> 209.165 +</div> 209.166 +<div class="contents"> 209.167 +Here is a list of all documented class members with links to the class documentation for each member: 209.168 +<p> 209.169 +<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 209.170 +<li>abs() 209.171 +: <a class="el" href="structcimg__library_1_1CImg.html#9ae2e5f7990e1ec59876b1c1f8484ea0">CImg</a> 209.172 +<li>acos() 209.173 +: <a class="el" href="structcimg__library_1_1CImg.html#ec748ded5bb19d52f564ef7a6ae2652d">CImg</a> 209.174 +<li>allocsize 209.175 +: <a class="el" href="structcimg__library_1_1CImgList.html#ed8b8acab64fd4c342e533c72f467438">CImgList</a> 209.176 +<li>append() 209.177 +: <a class="el" href="structcimg__library_1_1CImg.html#42e2ed19679d15fdd27097ed96501fae">CImg</a> 209.178 +<li>append_object3d() 209.179 +: <a class="el" href="structcimg__library_1_1CImg.html#91932674ad04313d7b164d874b95348b">CImg</a> 209.180 +<li>apply() 209.181 +: <a class="el" href="structcimg__library_1_1CImg.html#ecd1394048b7fef2eb30ea3985600614">CImg</a> 209.182 +<li>asin() 209.183 +: <a class="el" href="structcimg__library_1_1CImg.html#c23ecd49999eedf62c9142fe1559bdd6">CImg</a> 209.184 +<li>assign() 209.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#816d8c873ae3d27854bd0620646224b9">CImgDisplay</a> 209.186 +, <a class="el" href="structcimg__library_1_1CImg.html#8a8cf42230f48cfaf80c96fe040926c9">CImg</a> 209.187 +, <a class="el" href="structcimg__library_1_1CImgList.html#0841eec5704b95c2ff576bded488261b">CImgList</a> 209.188 +, <a class="el" href="structcimg__library_1_1CImg.html#18e8003d8101d51963e0eea3a86b8f47">CImg</a> 209.189 +, <a class="el" href="structcimg__library_1_1CImgList.html#40666c4099c041777ca2ed1b0747f81b">CImgList</a> 209.190 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#7e3269eea96ea399adc4197b5f0850b0">CImgDisplay</a> 209.191 +, <a class="el" href="structcimg__library_1_1CImg.html#6afdd52b55027273b836655fcf64d74d">CImg</a> 209.192 +, <a class="el" href="structcimg__library_1_1CImgList.html#fe8d25e995a3d934696796718057b584">CImgList</a> 209.193 +, <a class="el" href="structcimg__library_1_1CImg.html#f8906ce66ef0cdb44c37c7c26b1208ab">CImg</a> 209.194 +, <a class="el" href="structcimg__library_1_1CImgList.html#b5d15e167713cc7cdf8309223faeceb4">CImgList</a> 209.195 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#3730afc08603d9131eca7ce55a98cee9">CImgDisplay</a> 209.196 +, <a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4">CImg</a> 209.197 +, <a class="el" href="structcimg__library_1_1CImgList.html#9b4e4f632b087b23675c64c18c5dc4a9">CImgList</a> 209.198 +, <a class="el" href="structcimg__library_1_1CImg.html#934bab7595fd98de5131d5d2394e4a81">CImg</a> 209.199 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#c82bdf6c363f7d9fa9dacacc2cf31d00">CImgDisplay</a> 209.200 +, <a class="el" href="structcimg__library_1_1CImg.html#a5a08c14d01a530e5bc9549db77144f7">CImg</a> 209.201 +, <a class="el" href="structcimg__library_1_1CImgList.html#6457a24987e92c04b573c8c1c5fd1328">CImgList</a> 209.202 +, <a class="el" href="structcimg__library_1_1CImg.html#42e17fa9823170992210022cc0646684">CImg</a> 209.203 +, <a class="el" href="structcimg__library_1_1CImgList.html#6157637aebbb3b6680ae06ca7d2a2281">CImgList</a> 209.204 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#c103e68816e12f5fd67c8f293fe18acd">CImgDisplay</a> 209.205 +, <a class="el" href="structcimg__library_1_1CImg.html#78c78d152f5012d2e8fdcc35235c62a4">CImg</a> 209.206 +, <a class="el" href="structcimg__library_1_1CImgList.html#53f3daf167d5eaa3c3ddda1afd2c36fc">CImgList</a> 209.207 +, <a class="el" href="structcimg__library_1_1CImg.html#14047abcb2a67ba0dadc92e34b456111">CImg</a> 209.208 +<li>at() 209.209 +: <a class="el" href="structcimg__library_1_1CImg.html#0e62c450ce69d12159278e628ec8b874">CImg</a> 209.210 +<li>atan() 209.211 +: <a class="el" href="structcimg__library_1_1CImg.html#1de850b33bf304ba192bd84b7197426d">CImg</a> 209.212 +<li>atX() 209.213 +: <a class="el" href="structcimg__library_1_1CImg.html#f91627d8f0ebe52d83d5cc087ead017d">CImg</a> 209.214 +<li>atXY() 209.215 +: <a class="el" href="structcimg__library_1_1CImg.html#cf9f44c9b6025bc3ffdcf0ffffa85e01">CImg</a> 209.216 +<li>atXYZ() 209.217 +: <a class="el" href="structcimg__library_1_1CImg.html#e932796fa97d382efd30537165b48257">CImg</a> 209.218 +<li>atXYZV() 209.219 +: <a class="el" href="structcimg__library_1_1CImg.html#bcfb692a3e43747bc1d9c1da63e13be8">CImg</a> 209.220 +<li>autocrop() 209.221 +: <a class="el" href="structcimg__library_1_1CImg.html#ccb9eea9bbff8fbc0b63a8b331a35671">CImg</a> 209.222 +</ul> 209.223 +</div> 209.224 +<hr noshade="noshade" size="1" width="100%"> 209.225 +<a href="http://sourceforge.net"> 209.226 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 209.227 +</a> 209.228 +<!-- Start of StatCounter Code --> 209.229 +<script type="text/javascript" language="javascript"> 209.230 +<!-- 209.231 +var sc_project=895001; 209.232 +var sc_invisible=1; 209.233 +var sc_partition=7; 209.234 +var sc_security="5ea85181"; 209.235 +//--> 209.236 +</script> 209.237 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 209.238 +<!-- End of StatCounter Code --> 209.239 +</body> 209.240 +</html>
210.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 210.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x62.html Mon Aug 03 14:09:20 2009 +0100 210.3 @@ -0,0 +1,203 @@ 210.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 210.5 +<head> 210.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 210.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 210.8 +<meta content="David Tschumperle" name="author"></meta> 210.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 210.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 210.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 210.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 210.13 +<style type="text/css"> 210.14 +<!-- 210.15 +body {background-color:white; font-family:sans-serif; } 210.16 +a:active{text-decoration:none; color:#303090} 210.17 +a:link{text-decoration:none; color:#303090} 210.18 +a:visited{text-decoration:none; color:#303090} 210.19 +a:hover{text-decoration:underline; color:#4E9F71} 210.20 +--> 210.21 +</style> 210.22 +<script language="JavaScript" type="text/javascript"> 210.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 210.24 + <!-- Web Site: http://redrival.com/eak/ --> 210.25 + <!-- This script and many more are available free online at --> 210.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 210.27 + <!-- Begin 210.28 + function NewWindow(mypage, myname, w, h, scroll) { 210.29 + var winl = (screen.width - w) / 2; 210.30 + var wint = (screen.height - h) / 2; 210.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 210.32 + win = window.open(mypage, myname, winprops) 210.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 210.34 + } 210.35 + // End --> 210.36 +</script> 210.37 +</head> 210.38 +<body> 210.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 210.40 + <tbody><tr><td> 210.41 + <hr noshade="noshade" size="1" width="90%"></hr> 210.42 + <center> 210.43 + <br/> 210.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 210.45 + <br/> 210.46 + </center> 210.47 + <hr noshade="noshade" size="1" width="90%"></hr> 210.48 + <center> 210.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 210.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 210.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 210.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 210.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 210.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 210.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 210.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 210.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 210.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 210.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 210.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 210.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 210.62 + </font> 210.63 + </td></tr></tbody> 210.64 + </table> 210.65 + </center> 210.66 + <hr noshade="noshade" size="1" width="90%"></hr> 210.67 + </td></tr></tbody> 210.68 +</table> 210.69 +<!-- Generated by Doxygen 1.5.7.1 --> 210.70 +<script type="text/javascript"> 210.71 +<!-- 210.72 +function changeDisplayState (e){ 210.73 + var num=this.id.replace(/[^[0-9]/g,''); 210.74 + var button=this.firstChild; 210.75 + var sectionDiv=document.getElementById('dynsection'+num); 210.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 210.77 + sectionDiv.style.display='block'; 210.78 + button.src='open.gif'; 210.79 + }else{ 210.80 + sectionDiv.style.display='none'; 210.81 + button.src='closed.gif'; 210.82 + } 210.83 +} 210.84 +function initDynSections(){ 210.85 + var divs=document.getElementsByTagName('div'); 210.86 + var sectionCounter=1; 210.87 + for(var i=0;i<divs.length-1;i++){ 210.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 210.89 + var header=divs[i]; 210.90 + var section=divs[i+1]; 210.91 + var button=header.firstChild; 210.92 + if (button!='IMG'){ 210.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 210.94 + button=document.createElement('img'); 210.95 + divs[i].insertBefore(button,divs[i].firstChild); 210.96 + } 210.97 + header.style.cursor='pointer'; 210.98 + header.onclick=changeDisplayState; 210.99 + header.id='dynheader'+sectionCounter; 210.100 + button.src='closed.gif'; 210.101 + section.id='dynsection'+sectionCounter; 210.102 + section.style.display='none'; 210.103 + section.style.marginLeft='14px'; 210.104 + sectionCounter++; 210.105 + } 210.106 + } 210.107 +} 210.108 +window.onload = initDynSections; 210.109 +--> 210.110 +</script> 210.111 +<div class="navigation" id="top"> 210.112 + <div class="tabs"> 210.113 + <ul> 210.114 + <li><a href="index.html"><span>Main Page</span></a></li> 210.115 + <li><a href="modules.html"><span>Modules</span></a></li> 210.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 210.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 210.118 + </ul> 210.119 + </div> 210.120 + <div class="tabs"> 210.121 + <ul> 210.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 210.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 210.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 210.125 + </ul> 210.126 + </div> 210.127 + <div class="tabs"> 210.128 + <ul> 210.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 210.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 210.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 210.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 210.133 + </ul> 210.134 + </div> 210.135 + <div class="tabs"> 210.136 + <ul> 210.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 210.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 210.139 + <li class="current"><a href="functions_0x62.html#index_b"><span>b</span></a></li> 210.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 210.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 210.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 210.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 210.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 210.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 210.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 210.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 210.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 210.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 210.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 210.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 210.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 210.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 210.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 210.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 210.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 210.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 210.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 210.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 210.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 210.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 210.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 210.163 + </ul> 210.164 + </div> 210.165 +</div> 210.166 +<div class="contents"> 210.167 +Here is a list of all documented class members with links to the class documentation for each member: 210.168 +<p> 210.169 +<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 210.170 +<li>back() 210.171 +: <a class="el" href="structcimg__library_1_1CImg.html#94c484819f66b605343298653d4b1d07">CImg</a> 210.172 +<li>BayertoRGB() 210.173 +: <a class="el" href="structcimg__library_1_1CImg.html#4d532472a01bafd5a972391870fbdcab">CImg</a> 210.174 +<li>begin() 210.175 +: <a class="el" href="structcimg__library_1_1CImg.html#d69bd11391be1a1dba5c8202259664f8">CImg</a> 210.176 +<li>blur() 210.177 +: <a class="el" href="structcimg__library_1_1CImg.html#fcc7e2db6bcdb9da96698da4ef546678">CImg</a> 210.178 +<li>blur_anisotropic() 210.179 +: <a class="el" href="structcimg__library_1_1CImg.html#96d79e2b965b9fa045c40974ba13b894">CImg</a> 210.180 +<li>blur_bilateral() 210.181 +: <a class="el" href="structcimg__library_1_1CImg.html#5171719110ee9897b557b21f773655b7">CImg</a> 210.182 +<li>blur_median() 210.183 +: <a class="el" href="structcimg__library_1_1CImg.html#55c5427152277f80c6cb9a36ae77ddf1">CImg</a> 210.184 +<li>blur_patch() 210.185 +: <a class="el" href="structcimg__library_1_1CImg.html#1f2ed9ee1db1a507c21a1863a3a51d11">CImg</a> 210.186 +<li>buttons 210.187 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#99bff6269344233fdf65bd637224550c">CImgDisplay</a> 210.188 +</ul> 210.189 +</div> 210.190 +<hr noshade="noshade" size="1" width="100%"> 210.191 +<a href="http://sourceforge.net"> 210.192 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 210.193 +</a> 210.194 +<!-- Start of StatCounter Code --> 210.195 +<script type="text/javascript" language="javascript"> 210.196 +<!-- 210.197 +var sc_project=895001; 210.198 +var sc_invisible=1; 210.199 +var sc_partition=7; 210.200 +var sc_security="5ea85181"; 210.201 +//--> 210.202 +</script> 210.203 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 210.204 +<!-- End of StatCounter Code --> 210.205 +</body> 210.206 +</html>
211.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 211.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x63.html Mon Aug 03 14:09:20 2009 +0100 211.3 @@ -0,0 +1,245 @@ 211.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 211.5 +<head> 211.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 211.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 211.8 +<meta content="David Tschumperle" name="author"></meta> 211.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 211.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 211.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 211.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 211.13 +<style type="text/css"> 211.14 +<!-- 211.15 +body {background-color:white; font-family:sans-serif; } 211.16 +a:active{text-decoration:none; color:#303090} 211.17 +a:link{text-decoration:none; color:#303090} 211.18 +a:visited{text-decoration:none; color:#303090} 211.19 +a:hover{text-decoration:underline; color:#4E9F71} 211.20 +--> 211.21 +</style> 211.22 +<script language="JavaScript" type="text/javascript"> 211.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 211.24 + <!-- Web Site: http://redrival.com/eak/ --> 211.25 + <!-- This script and many more are available free online at --> 211.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 211.27 + <!-- Begin 211.28 + function NewWindow(mypage, myname, w, h, scroll) { 211.29 + var winl = (screen.width - w) / 2; 211.30 + var wint = (screen.height - h) / 2; 211.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 211.32 + win = window.open(mypage, myname, winprops) 211.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 211.34 + } 211.35 + // End --> 211.36 +</script> 211.37 +</head> 211.38 +<body> 211.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 211.40 + <tbody><tr><td> 211.41 + <hr noshade="noshade" size="1" width="90%"></hr> 211.42 + <center> 211.43 + <br/> 211.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 211.45 + <br/> 211.46 + </center> 211.47 + <hr noshade="noshade" size="1" width="90%"></hr> 211.48 + <center> 211.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 211.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 211.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 211.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 211.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 211.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 211.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 211.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 211.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 211.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 211.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 211.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 211.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 211.62 + </font> 211.63 + </td></tr></tbody> 211.64 + </table> 211.65 + </center> 211.66 + <hr noshade="noshade" size="1" width="90%"></hr> 211.67 + </td></tr></tbody> 211.68 +</table> 211.69 +<!-- Generated by Doxygen 1.5.7.1 --> 211.70 +<script type="text/javascript"> 211.71 +<!-- 211.72 +function changeDisplayState (e){ 211.73 + var num=this.id.replace(/[^[0-9]/g,''); 211.74 + var button=this.firstChild; 211.75 + var sectionDiv=document.getElementById('dynsection'+num); 211.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 211.77 + sectionDiv.style.display='block'; 211.78 + button.src='open.gif'; 211.79 + }else{ 211.80 + sectionDiv.style.display='none'; 211.81 + button.src='closed.gif'; 211.82 + } 211.83 +} 211.84 +function initDynSections(){ 211.85 + var divs=document.getElementsByTagName('div'); 211.86 + var sectionCounter=1; 211.87 + for(var i=0;i<divs.length-1;i++){ 211.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 211.89 + var header=divs[i]; 211.90 + var section=divs[i+1]; 211.91 + var button=header.firstChild; 211.92 + if (button!='IMG'){ 211.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 211.94 + button=document.createElement('img'); 211.95 + divs[i].insertBefore(button,divs[i].firstChild); 211.96 + } 211.97 + header.style.cursor='pointer'; 211.98 + header.onclick=changeDisplayState; 211.99 + header.id='dynheader'+sectionCounter; 211.100 + button.src='closed.gif'; 211.101 + section.id='dynsection'+sectionCounter; 211.102 + section.style.display='none'; 211.103 + section.style.marginLeft='14px'; 211.104 + sectionCounter++; 211.105 + } 211.106 + } 211.107 +} 211.108 +window.onload = initDynSections; 211.109 +--> 211.110 +</script> 211.111 +<div class="navigation" id="top"> 211.112 + <div class="tabs"> 211.113 + <ul> 211.114 + <li><a href="index.html"><span>Main Page</span></a></li> 211.115 + <li><a href="modules.html"><span>Modules</span></a></li> 211.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 211.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 211.118 + </ul> 211.119 + </div> 211.120 + <div class="tabs"> 211.121 + <ul> 211.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 211.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 211.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 211.125 + </ul> 211.126 + </div> 211.127 + <div class="tabs"> 211.128 + <ul> 211.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 211.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 211.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 211.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 211.133 + </ul> 211.134 + </div> 211.135 + <div class="tabs"> 211.136 + <ul> 211.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 211.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 211.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 211.140 + <li class="current"><a href="functions_0x63.html#index_c"><span>c</span></a></li> 211.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 211.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 211.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 211.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 211.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 211.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 211.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 211.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 211.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 211.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 211.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 211.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 211.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 211.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 211.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 211.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 211.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 211.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 211.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 211.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 211.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 211.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 211.163 + </ul> 211.164 + </div> 211.165 +</div> 211.166 +<div class="contents"> 211.167 +Here is a list of all documented class members with links to the class documentation for each member: 211.168 +<p> 211.169 +<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 211.170 +<li>channel() 211.171 +: <a class="el" href="structcimg__library_1_1CImg.html#7c4404d7b68c6e6f1376191748e3e4b0">CImg</a> 211.172 +<li>channels() 211.173 +: <a class="el" href="structcimg__library_1_1CImg.html#8ca7d14971bd5e6f1ff40801e0c520dc">CImg</a> 211.174 +<li>CImg() 211.175 +: <a class="el" href="structcimg__library_1_1CImg.html#f0cf1b66afb42bbb4750895fe66bcc69">CImg</a> 211.176 +<li>CImgDisplay() 211.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#54e3407c3b858f5f40283264e39b4f38">CImgDisplay</a> 211.178 +<li>CImgList() 211.179 +: <a class="el" href="structcimg__library_1_1CImgList.html#067f5550d22707d51823f969af480fd7">CImgList</a> 211.180 +<li>clear() 211.181 +: <a class="el" href="structcimg__library_1_1CImg.html#b5cdf8f13cc7065fef4da8214ff36d5d">CImg</a> 211.182 +, <a class="el" href="structcimg__library_1_1CImgList.html#b7aec05f7791abe11f1d0f0cdc8bd24e">CImgList</a> 211.183 +<li>close() 211.184 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#7e35c3363f8859c8a952a60dd4aa3fca">CImgDisplay</a> 211.185 +<li>CMYKtoCMY() 211.186 +: <a class="el" href="structcimg__library_1_1CImg.html#e3827dc11a003ee30b1cd74ed7b74e15">CImg</a> 211.187 +<li>CMYKtoRGB() 211.188 +: <a class="el" href="structcimg__library_1_1CImg.html#c59bacaa7b500f54351ebc11a2a4fc1d">CImg</a> 211.189 +<li>CMYtoCMYK() 211.190 +: <a class="el" href="structcimg__library_1_1CImg.html#86448a9b36330cd1cdca41310714c82c">CImg</a> 211.191 +<li>CMYtoRGB() 211.192 +: <a class="el" href="structcimg__library_1_1CImg.html#f44e7452ef72387ee411a48e8fd8f2c6">CImg</a> 211.193 +<li>column() 211.194 +: <a class="el" href="structcimg__library_1_1CImg.html#9995a97a1f5bf1de44670dd998f6b19e">CImg</a> 211.195 +<li>columns() 211.196 +: <a class="el" href="structcimg__library_1_1CImg.html#a70ff39a9a7bd64954f4f18819f8e596">CImg</a> 211.197 +<li>cone3d() 211.198 +: <a class="el" href="structcimg__library_1_1CImg.html#4cfdd883704e403728d35979c07a069b">CImg</a> 211.199 +<li>const_iterator 211.200 +: <a class="el" href="structcimg__library_1_1CImgList.html#449d35504b2500efc67af75ba3bf9277">CImgList</a> 211.201 +, <a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">CImg</a> 211.202 +<li>contains() 211.203 +: <a class="el" href="structcimg__library_1_1CImg.html#a55cfaf7d507c97343d750aa4c951ff3">CImg</a> 211.204 +<li>containsXYZV() 211.205 +: <a class="el" href="structcimg__library_1_1CImg.html#e530958fd7fd7a1e7c5017c3e7c411de">CImg</a> 211.206 +<li>contrast_LUT8() 211.207 +: <a class="el" href="structcimg__library_1_1CImg.html#f26c4f029563bf7ffd47ba51e8e09984">CImg</a> 211.208 +<li>convolve() 211.209 +: <a class="el" href="structcimg__library_1_1CImg.html#6ad1f71fcaf356a1480b81c55109ca86">CImg</a> 211.210 +<li>correlate() 211.211 +: <a class="el" href="structcimg__library_1_1CImg.html#e42e12627e5a8204d328f84df9976fc8">CImg</a> 211.212 +<li>cos() 211.213 +: <a class="el" href="structcimg__library_1_1CImg.html#fd20e16deff4c21aab145b028de1e2ac">CImg</a> 211.214 +<li>crop() 211.215 +: <a class="el" href="structcimg__library_1_1CImg.html#93a1ecf2944920d55757323e6de2b7da">CImg</a> 211.216 +<li>cross() 211.217 +: <a class="el" href="structcimg__library_1_1CImg.html#49ccd3590b6edcf060b2c8def95d96a7">CImg</a> 211.218 +<li>cube3d() 211.219 +: <a class="el" href="structcimg__library_1_1CImg.html#7909d0564ee489806b89a79159a9d91d">CImg</a> 211.220 +<li>cubic_atX() 211.221 +: <a class="el" href="structcimg__library_1_1CImg.html#fd446fb86260db4fd990fdab18e61181">CImg</a> 211.222 +<li>cubic_atXY() 211.223 +: <a class="el" href="structcimg__library_1_1CImg.html#9178dbccd4a22a5e2a3b41c243244eb8">CImg</a> 211.224 +<li>cuboid3d() 211.225 +: <a class="el" href="structcimg__library_1_1CImg.html#e15246012bf5a2672766bda1743417f0">CImg</a> 211.226 +<li>cut() 211.227 +: <a class="el" href="structcimg__library_1_1CImg.html#5f8f08d52f945f28fd33737fabaa6286">CImg</a> 211.228 +<li>cylinder3d() 211.229 +: <a class="el" href="structcimg__library_1_1CImg.html#13077712f8141674ceb3946aafc37a3f">CImg</a> 211.230 +</ul> 211.231 +</div> 211.232 +<hr noshade="noshade" size="1" width="100%"> 211.233 +<a href="http://sourceforge.net"> 211.234 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 211.235 +</a> 211.236 +<!-- Start of StatCounter Code --> 211.237 +<script type="text/javascript" language="javascript"> 211.238 +<!-- 211.239 +var sc_project=895001; 211.240 +var sc_invisible=1; 211.241 +var sc_partition=7; 211.242 +var sc_security="5ea85181"; 211.243 +//--> 211.244 +</script> 211.245 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 211.246 +<!-- End of StatCounter Code --> 211.247 +</body> 211.248 +</html>
212.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 212.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x64.html Mon Aug 03 14:09:20 2009 +0100 212.3 @@ -0,0 +1,271 @@ 212.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 212.5 +<head> 212.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 212.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 212.8 +<meta content="David Tschumperle" name="author"></meta> 212.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 212.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 212.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 212.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 212.13 +<style type="text/css"> 212.14 +<!-- 212.15 +body {background-color:white; font-family:sans-serif; } 212.16 +a:active{text-decoration:none; color:#303090} 212.17 +a:link{text-decoration:none; color:#303090} 212.18 +a:visited{text-decoration:none; color:#303090} 212.19 +a:hover{text-decoration:underline; color:#4E9F71} 212.20 +--> 212.21 +</style> 212.22 +<script language="JavaScript" type="text/javascript"> 212.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 212.24 + <!-- Web Site: http://redrival.com/eak/ --> 212.25 + <!-- This script and many more are available free online at --> 212.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 212.27 + <!-- Begin 212.28 + function NewWindow(mypage, myname, w, h, scroll) { 212.29 + var winl = (screen.width - w) / 2; 212.30 + var wint = (screen.height - h) / 2; 212.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 212.32 + win = window.open(mypage, myname, winprops) 212.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 212.34 + } 212.35 + // End --> 212.36 +</script> 212.37 +</head> 212.38 +<body> 212.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 212.40 + <tbody><tr><td> 212.41 + <hr noshade="noshade" size="1" width="90%"></hr> 212.42 + <center> 212.43 + <br/> 212.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 212.45 + <br/> 212.46 + </center> 212.47 + <hr noshade="noshade" size="1" width="90%"></hr> 212.48 + <center> 212.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 212.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 212.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 212.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 212.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 212.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 212.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 212.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 212.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 212.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 212.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 212.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 212.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 212.62 + </font> 212.63 + </td></tr></tbody> 212.64 + </table> 212.65 + </center> 212.66 + <hr noshade="noshade" size="1" width="90%"></hr> 212.67 + </td></tr></tbody> 212.68 +</table> 212.69 +<!-- Generated by Doxygen 1.5.7.1 --> 212.70 +<script type="text/javascript"> 212.71 +<!-- 212.72 +function changeDisplayState (e){ 212.73 + var num=this.id.replace(/[^[0-9]/g,''); 212.74 + var button=this.firstChild; 212.75 + var sectionDiv=document.getElementById('dynsection'+num); 212.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 212.77 + sectionDiv.style.display='block'; 212.78 + button.src='open.gif'; 212.79 + }else{ 212.80 + sectionDiv.style.display='none'; 212.81 + button.src='closed.gif'; 212.82 + } 212.83 +} 212.84 +function initDynSections(){ 212.85 + var divs=document.getElementsByTagName('div'); 212.86 + var sectionCounter=1; 212.87 + for(var i=0;i<divs.length-1;i++){ 212.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 212.89 + var header=divs[i]; 212.90 + var section=divs[i+1]; 212.91 + var button=header.firstChild; 212.92 + if (button!='IMG'){ 212.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 212.94 + button=document.createElement('img'); 212.95 + divs[i].insertBefore(button,divs[i].firstChild); 212.96 + } 212.97 + header.style.cursor='pointer'; 212.98 + header.onclick=changeDisplayState; 212.99 + header.id='dynheader'+sectionCounter; 212.100 + button.src='closed.gif'; 212.101 + section.id='dynsection'+sectionCounter; 212.102 + section.style.display='none'; 212.103 + section.style.marginLeft='14px'; 212.104 + sectionCounter++; 212.105 + } 212.106 + } 212.107 +} 212.108 +window.onload = initDynSections; 212.109 +--> 212.110 +</script> 212.111 +<div class="navigation" id="top"> 212.112 + <div class="tabs"> 212.113 + <ul> 212.114 + <li><a href="index.html"><span>Main Page</span></a></li> 212.115 + <li><a href="modules.html"><span>Modules</span></a></li> 212.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 212.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 212.118 + </ul> 212.119 + </div> 212.120 + <div class="tabs"> 212.121 + <ul> 212.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 212.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 212.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 212.125 + </ul> 212.126 + </div> 212.127 + <div class="tabs"> 212.128 + <ul> 212.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 212.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 212.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 212.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 212.133 + </ul> 212.134 + </div> 212.135 + <div class="tabs"> 212.136 + <ul> 212.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 212.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 212.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 212.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 212.141 + <li class="current"><a href="functions_0x64.html#index_d"><span>d</span></a></li> 212.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 212.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 212.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 212.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 212.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 212.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 212.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 212.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 212.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 212.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 212.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 212.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 212.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 212.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 212.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 212.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 212.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 212.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 212.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 212.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 212.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 212.163 + </ul> 212.164 + </div> 212.165 +</div> 212.166 +<div class="contents"> 212.167 +Here is a list of all documented class members with links to the class documentation for each member: 212.168 +<p> 212.169 +<h3><a class="anchor" name="index_d">- d -</a></h3><ul> 212.170 +<li>data 212.171 +: <a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">CImg</a> 212.172 +, <a class="el" href="structcimg__library_1_1CImgList.html#7b2148b1950a98016bd8d1407062d798">CImgList</a> 212.173 +<li>default_LUT8() 212.174 +: <a class="el" href="structcimg__library_1_1CImg.html#b72cb8ca2a5039c60f002f72bbb44cd5">CImg</a> 212.175 +<li>depth 212.176 +: <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">CImg</a> 212.177 +<li>deriche() 212.178 +: <a class="el" href="structcimg__library_1_1CImg.html#be44da28a01b5632c9cb59af2ab6dab6">CImg</a> 212.179 +<li>det() 212.180 +: <a class="el" href="structcimg__library_1_1CImg.html#2363871a4c66908993cc2e2515eba612">CImg</a> 212.181 +<li>diagonal() 212.182 +: <a class="el" href="structcimg__library_1_1CImg.html#583389fd7581839ef6c9eda2c2e75720">CImg</a> 212.183 +<li>dijkstra() 212.184 +: <a class="el" href="structcimg__library_1_1CImg.html#aaf059b97f37c83ff892a761db3333b2">CImg</a> 212.185 +<li>dilate() 212.186 +: <a class="el" href="structcimg__library_1_1CImg.html#d5da308710b26218600b8254d9e43204">CImg</a> 212.187 +<li>dim 212.188 +: <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">CImg</a> 212.189 +<li>dimv() 212.190 +: <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f">CImg</a> 212.191 +<li>dimx() 212.192 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#afae58d5a77ea4190e6f2c818238bd1a">CImgDisplay</a> 212.193 +, <a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a">CImg</a> 212.194 +<li>dimy() 212.195 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fc3244815fd1b4cea186b6a63bfb635d">CImgDisplay</a> 212.196 +, <a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d">CImg</a> 212.197 +<li>dimz() 212.198 +: <a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215">CImg</a> 212.199 +<li>displacement_field() 212.200 +: <a class="el" href="structcimg__library_1_1CImg.html#4c5e31ec2d05a869a67705be11ad31c2">CImg</a> 212.201 +<li>display() 212.202 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#43bcd9fcc817fa49152a81a2bf6cdb20">CImgDisplay</a> 212.203 +, <a class="el" href="structcimg__library_1_1CImg.html#ea0592215c6068e617a975a1fe5b7b7b">CImg</a> 212.204 +<li>display_graph() 212.205 +: <a class="el" href="structcimg__library_1_1CImg.html#cacf5a4ef4f35c7a396dc7759928c30b">CImg</a> 212.206 +<li>display_object3d() 212.207 +: <a class="el" href="structcimg__library_1_1CImg.html#f3911af4a4d37ca22b6d4c4a91cdced4">CImg</a> 212.208 +<li>distance() 212.209 +: <a class="el" href="structcimg__library_1_1CImg.html#896675c24b7a4aad089a31c98cd39318">CImg</a> 212.210 +<li>distance_hamilton() 212.211 +: <a class="el" href="structcimg__library_1_1CImg.html#2ac17a49491c76e73310270931e88d46">CImg</a> 212.212 +<li>div() 212.213 +: <a class="el" href="structcimg__library_1_1CImg.html#df1a8f5e809741e70edd3b6a454c8689">CImg</a> 212.214 +<li>dot() 212.215 +: <a class="el" href="structcimg__library_1_1CImg.html#99a8995311ea26eb1956c8a01a7e034f">CImg</a> 212.216 +<li>draw_arrow() 212.217 +: <a class="el" href="structcimg__library_1_1CImg.html#4955c7a5a132072f634ed9832b783f83">CImg</a> 212.218 +<li>draw_axis() 212.219 +: <a class="el" href="structcimg__library_1_1CImg.html#08296af30d35f7d21b5609a674b9b49c">CImg</a> 212.220 +<li>draw_circle() 212.221 +: <a class="el" href="structcimg__library_1_1CImg.html#0fcdceae39ad1bfa32dabc70ab503455">CImg</a> 212.222 +<li>draw_ellipse() 212.223 +: <a class="el" href="structcimg__library_1_1CImg.html#aee5c65bcb8d1aa53500dd93b70dc206">CImg</a> 212.224 +<li>draw_fill() 212.225 +: <a class="el" href="structcimg__library_1_1CImg.html#02af5e263936e2fc27aeaa3771cb31d4">CImg</a> 212.226 +<li>draw_gaussian() 212.227 +: <a class="el" href="structcimg__library_1_1CImg.html#c27a8c4da38899f60456ea7d3535915b">CImg</a> 212.228 +<li>draw_graph() 212.229 +: <a class="el" href="structcimg__library_1_1CImg.html#67e7caaf13995641acfcd5749c39bbc7">CImg</a> 212.230 +<li>draw_grid() 212.231 +: <a class="el" href="structcimg__library_1_1CImg.html#6877e63794ccd3e9f8c27cd297ce7521">CImg</a> 212.232 +<li>draw_image() 212.233 +: <a class="el" href="structcimg__library_1_1CImg.html#2262bc9cfece26084c7223bf74ad63d5">CImg</a> 212.234 +<li>draw_line() 212.235 +: <a class="el" href="structcimg__library_1_1CImg.html#5d92088c6338270d5c9e4aadf02c0228">CImg</a> 212.236 +<li>draw_mandelbrot() 212.237 +: <a class="el" href="structcimg__library_1_1CImg.html#692c2ecbd8cbe445b30129ebcc0d6d1c">CImg</a> 212.238 +<li>draw_object3d() 212.239 +: <a class="el" href="structcimg__library_1_1CImg.html#1db83a74b0de1e81bfd71eaa1bb6ac4f">CImg</a> 212.240 +<li>draw_plasma() 212.241 +: <a class="el" href="structcimg__library_1_1CImg.html#aaf8df45b2e20d132a28cbdffef77c18">CImg</a> 212.242 +<li>draw_point() 212.243 +: <a class="el" href="structcimg__library_1_1CImg.html#a4ed5eb040a7dec8932cef5e9d90579e">CImg</a> 212.244 +<li>draw_polygon() 212.245 +: <a class="el" href="structcimg__library_1_1CImg.html#c2d302275fb03846256a2fbcd162c9be">CImg</a> 212.246 +<li>draw_quiver() 212.247 +: <a class="el" href="structcimg__library_1_1CImg.html#cf68676d4536ff46ed896648ff08c904">CImg</a> 212.248 +<li>draw_rectangle() 212.249 +: <a class="el" href="structcimg__library_1_1CImg.html#88b4db9fc3ebcc8bd5134042424f3b8b">CImg</a> 212.250 +<li>draw_spline() 212.251 +: <a class="el" href="structcimg__library_1_1CImg.html#ef31953ecc727eaa99d0d1b11c6d14a0">CImg</a> 212.252 +<li>draw_text() 212.253 +: <a class="el" href="structcimg__library_1_1CImg.html#65bc41a87d8e70a6e4e3e7c1e3f3b84d">CImg</a> 212.254 +<li>draw_triangle() 212.255 +: <a class="el" href="structcimg__library_1_1CImg.html#f2d41fad4a3cff1e52ce92a09a0849fb">CImg</a> 212.256 +</ul> 212.257 +</div> 212.258 +<hr noshade="noshade" size="1" width="100%"> 212.259 +<a href="http://sourceforge.net"> 212.260 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 212.261 +</a> 212.262 +<!-- Start of StatCounter Code --> 212.263 +<script type="text/javascript" language="javascript"> 212.264 +<!-- 212.265 +var sc_project=895001; 212.266 +var sc_invisible=1; 212.267 +var sc_partition=7; 212.268 +var sc_security="5ea85181"; 212.269 +//--> 212.270 +</script> 212.271 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 212.272 +<!-- End of StatCounter Code --> 212.273 +</body> 212.274 +</html>
213.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 213.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x65.html Mon Aug 03 14:09:20 2009 +0100 213.3 @@ -0,0 +1,197 @@ 213.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 213.5 +<head> 213.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 213.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 213.8 +<meta content="David Tschumperle" name="author"></meta> 213.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 213.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 213.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 213.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 213.13 +<style type="text/css"> 213.14 +<!-- 213.15 +body {background-color:white; font-family:sans-serif; } 213.16 +a:active{text-decoration:none; color:#303090} 213.17 +a:link{text-decoration:none; color:#303090} 213.18 +a:visited{text-decoration:none; color:#303090} 213.19 +a:hover{text-decoration:underline; color:#4E9F71} 213.20 +--> 213.21 +</style> 213.22 +<script language="JavaScript" type="text/javascript"> 213.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 213.24 + <!-- Web Site: http://redrival.com/eak/ --> 213.25 + <!-- This script and many more are available free online at --> 213.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 213.27 + <!-- Begin 213.28 + function NewWindow(mypage, myname, w, h, scroll) { 213.29 + var winl = (screen.width - w) / 2; 213.30 + var wint = (screen.height - h) / 2; 213.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 213.32 + win = window.open(mypage, myname, winprops) 213.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 213.34 + } 213.35 + // End --> 213.36 +</script> 213.37 +</head> 213.38 +<body> 213.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 213.40 + <tbody><tr><td> 213.41 + <hr noshade="noshade" size="1" width="90%"></hr> 213.42 + <center> 213.43 + <br/> 213.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 213.45 + <br/> 213.46 + </center> 213.47 + <hr noshade="noshade" size="1" width="90%"></hr> 213.48 + <center> 213.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 213.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 213.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 213.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 213.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 213.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 213.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 213.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 213.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 213.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 213.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 213.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 213.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 213.62 + </font> 213.63 + </td></tr></tbody> 213.64 + </table> 213.65 + </center> 213.66 + <hr noshade="noshade" size="1" width="90%"></hr> 213.67 + </td></tr></tbody> 213.68 +</table> 213.69 +<!-- Generated by Doxygen 1.5.7.1 --> 213.70 +<script type="text/javascript"> 213.71 +<!-- 213.72 +function changeDisplayState (e){ 213.73 + var num=this.id.replace(/[^[0-9]/g,''); 213.74 + var button=this.firstChild; 213.75 + var sectionDiv=document.getElementById('dynsection'+num); 213.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 213.77 + sectionDiv.style.display='block'; 213.78 + button.src='open.gif'; 213.79 + }else{ 213.80 + sectionDiv.style.display='none'; 213.81 + button.src='closed.gif'; 213.82 + } 213.83 +} 213.84 +function initDynSections(){ 213.85 + var divs=document.getElementsByTagName('div'); 213.86 + var sectionCounter=1; 213.87 + for(var i=0;i<divs.length-1;i++){ 213.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 213.89 + var header=divs[i]; 213.90 + var section=divs[i+1]; 213.91 + var button=header.firstChild; 213.92 + if (button!='IMG'){ 213.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 213.94 + button=document.createElement('img'); 213.95 + divs[i].insertBefore(button,divs[i].firstChild); 213.96 + } 213.97 + header.style.cursor='pointer'; 213.98 + header.onclick=changeDisplayState; 213.99 + header.id='dynheader'+sectionCounter; 213.100 + button.src='closed.gif'; 213.101 + section.id='dynsection'+sectionCounter; 213.102 + section.style.display='none'; 213.103 + section.style.marginLeft='14px'; 213.104 + sectionCounter++; 213.105 + } 213.106 + } 213.107 +} 213.108 +window.onload = initDynSections; 213.109 +--> 213.110 +</script> 213.111 +<div class="navigation" id="top"> 213.112 + <div class="tabs"> 213.113 + <ul> 213.114 + <li><a href="index.html"><span>Main Page</span></a></li> 213.115 + <li><a href="modules.html"><span>Modules</span></a></li> 213.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 213.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 213.118 + </ul> 213.119 + </div> 213.120 + <div class="tabs"> 213.121 + <ul> 213.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 213.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 213.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 213.125 + </ul> 213.126 + </div> 213.127 + <div class="tabs"> 213.128 + <ul> 213.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 213.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 213.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 213.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 213.133 + </ul> 213.134 + </div> 213.135 + <div class="tabs"> 213.136 + <ul> 213.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 213.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 213.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 213.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 213.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 213.142 + <li class="current"><a href="functions_0x65.html#index_e"><span>e</span></a></li> 213.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 213.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 213.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 213.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 213.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 213.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 213.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 213.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 213.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 213.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 213.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 213.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 213.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 213.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 213.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 213.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 213.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 213.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 213.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 213.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 213.163 + </ul> 213.164 + </div> 213.165 +</div> 213.166 +<div class="contents"> 213.167 +Here is a list of all documented class members with links to the class documentation for each member: 213.168 +<p> 213.169 +<h3><a class="anchor" name="index_e">- e -</a></h3><ul> 213.170 +<li>eigen() 213.171 +: <a class="el" href="structcimg__library_1_1CImg.html#a956e08285c0d87805d3c3c2c4450301">CImg</a> 213.172 +<li>ellipsoid3d() 213.173 +: <a class="el" href="structcimg__library_1_1CImg.html#e24de98deb46f84769fd72c504ceedc2">CImg</a> 213.174 +<li>end() 213.175 +: <a class="el" href="structcimg__library_1_1CImg.html#cad38d52497a975bfb6f2f6acd76631f">CImg</a> 213.176 +<li>equalize() 213.177 +: <a class="el" href="structcimg__library_1_1CImg.html#a2227f917f7c4424123b5a2806d7f5b8">CImg</a> 213.178 +<li>erode() 213.179 +: <a class="el" href="structcimg__library_1_1CImg.html#e82e75b5321e8702edcab8d0b8fdcd09">CImg</a> 213.180 +<li>exp() 213.181 +: <a class="el" href="structcimg__library_1_1CImg.html#63fc5244a596810f4bba36a46787c6f2">CImg</a> 213.182 +</ul> 213.183 +</div> 213.184 +<hr noshade="noshade" size="1" width="100%"> 213.185 +<a href="http://sourceforge.net"> 213.186 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 213.187 +</a> 213.188 +<!-- Start of StatCounter Code --> 213.189 +<script type="text/javascript" language="javascript"> 213.190 +<!-- 213.191 +var sc_project=895001; 213.192 +var sc_invisible=1; 213.193 +var sc_partition=7; 213.194 +var sc_security="5ea85181"; 213.195 +//--> 213.196 +</script> 213.197 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 213.198 +<!-- End of StatCounter Code --> 213.199 +</body> 213.200 +</html>
214.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 214.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x66.html Mon Aug 03 14:09:20 2009 +0100 214.3 @@ -0,0 +1,205 @@ 214.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 214.5 +<head> 214.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 214.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 214.8 +<meta content="David Tschumperle" name="author"></meta> 214.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 214.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 214.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 214.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 214.13 +<style type="text/css"> 214.14 +<!-- 214.15 +body {background-color:white; font-family:sans-serif; } 214.16 +a:active{text-decoration:none; color:#303090} 214.17 +a:link{text-decoration:none; color:#303090} 214.18 +a:visited{text-decoration:none; color:#303090} 214.19 +a:hover{text-decoration:underline; color:#4E9F71} 214.20 +--> 214.21 +</style> 214.22 +<script language="JavaScript" type="text/javascript"> 214.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 214.24 + <!-- Web Site: http://redrival.com/eak/ --> 214.25 + <!-- This script and many more are available free online at --> 214.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 214.27 + <!-- Begin 214.28 + function NewWindow(mypage, myname, w, h, scroll) { 214.29 + var winl = (screen.width - w) / 2; 214.30 + var wint = (screen.height - h) / 2; 214.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 214.32 + win = window.open(mypage, myname, winprops) 214.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 214.34 + } 214.35 + // End --> 214.36 +</script> 214.37 +</head> 214.38 +<body> 214.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 214.40 + <tbody><tr><td> 214.41 + <hr noshade="noshade" size="1" width="90%"></hr> 214.42 + <center> 214.43 + <br/> 214.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 214.45 + <br/> 214.46 + </center> 214.47 + <hr noshade="noshade" size="1" width="90%"></hr> 214.48 + <center> 214.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 214.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 214.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 214.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 214.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 214.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 214.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 214.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 214.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 214.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 214.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 214.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 214.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 214.62 + </font> 214.63 + </td></tr></tbody> 214.64 + </table> 214.65 + </center> 214.66 + <hr noshade="noshade" size="1" width="90%"></hr> 214.67 + </td></tr></tbody> 214.68 +</table> 214.69 +<!-- Generated by Doxygen 1.5.7.1 --> 214.70 +<script type="text/javascript"> 214.71 +<!-- 214.72 +function changeDisplayState (e){ 214.73 + var num=this.id.replace(/[^[0-9]/g,''); 214.74 + var button=this.firstChild; 214.75 + var sectionDiv=document.getElementById('dynsection'+num); 214.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 214.77 + sectionDiv.style.display='block'; 214.78 + button.src='open.gif'; 214.79 + }else{ 214.80 + sectionDiv.style.display='none'; 214.81 + button.src='closed.gif'; 214.82 + } 214.83 +} 214.84 +function initDynSections(){ 214.85 + var divs=document.getElementsByTagName('div'); 214.86 + var sectionCounter=1; 214.87 + for(var i=0;i<divs.length-1;i++){ 214.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 214.89 + var header=divs[i]; 214.90 + var section=divs[i+1]; 214.91 + var button=header.firstChild; 214.92 + if (button!='IMG'){ 214.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 214.94 + button=document.createElement('img'); 214.95 + divs[i].insertBefore(button,divs[i].firstChild); 214.96 + } 214.97 + header.style.cursor='pointer'; 214.98 + header.onclick=changeDisplayState; 214.99 + header.id='dynheader'+sectionCounter; 214.100 + button.src='closed.gif'; 214.101 + section.id='dynsection'+sectionCounter; 214.102 + section.style.display='none'; 214.103 + section.style.marginLeft='14px'; 214.104 + sectionCounter++; 214.105 + } 214.106 + } 214.107 +} 214.108 +window.onload = initDynSections; 214.109 +--> 214.110 +</script> 214.111 +<div class="navigation" id="top"> 214.112 + <div class="tabs"> 214.113 + <ul> 214.114 + <li><a href="index.html"><span>Main Page</span></a></li> 214.115 + <li><a href="modules.html"><span>Modules</span></a></li> 214.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 214.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 214.118 + </ul> 214.119 + </div> 214.120 + <div class="tabs"> 214.121 + <ul> 214.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 214.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 214.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 214.125 + </ul> 214.126 + </div> 214.127 + <div class="tabs"> 214.128 + <ul> 214.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 214.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 214.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 214.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 214.133 + </ul> 214.134 + </div> 214.135 + <div class="tabs"> 214.136 + <ul> 214.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 214.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 214.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 214.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 214.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 214.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 214.143 + <li class="current"><a href="functions_0x66.html#index_f"><span>f</span></a></li> 214.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 214.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 214.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 214.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 214.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 214.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 214.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 214.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 214.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 214.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 214.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 214.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 214.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 214.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 214.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 214.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 214.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 214.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 214.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 214.163 + </ul> 214.164 + </div> 214.165 +</div> 214.166 +<div class="contents"> 214.167 +Here is a list of all documented class members with links to the class documentation for each member: 214.168 +<p> 214.169 +<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 214.170 +<li>fill() 214.171 +: <a class="el" href="structcimg__library_1_1CImg.html#494a1e1424510af07e705dfe9b5f78bd">CImg</a> 214.172 +<li>fillV() 214.173 +: <a class="el" href="structcimg__library_1_1CImg.html#bed160399c0c74349a025a823d1c4e3b">CImg</a> 214.174 +<li>fillX() 214.175 +: <a class="el" href="structcimg__library_1_1CImg.html#aef4c6886178c6a99c22693f0a2ecd4b">CImg</a> 214.176 +<li>fillY() 214.177 +: <a class="el" href="structcimg__library_1_1CImg.html#9a220154365b5e2c636d6abeef404fb8">CImg</a> 214.178 +<li>fillZ() 214.179 +: <a class="el" href="structcimg__library_1_1CImg.html#b7a4a4ad0f756d4b42059ab7579288ad">CImg</a> 214.180 +<li>first() 214.181 +: <a class="el" href="structcimg__library_1_1CImg.html#2d8f0a8dd427c22a66a7e798183f2b72">CImg</a> 214.182 +<li>flush() 214.183 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4bf168837be505b1301604b151280f6e">CImgDisplay</a> 214.184 +<li>frames_per_second() 214.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3ade6e852b67fea14093915c5dca7862">CImgDisplay</a> 214.186 +<li>front() 214.187 +: <a class="el" href="structcimg__library_1_1CImg.html#55d9a449187445866021859f0cf708d0">CImg</a> 214.188 +<li>fullscreen() 214.189 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#6a0faa0d39524f5d5dac7297777dcdf1">CImgDisplay</a> 214.190 +</ul> 214.191 +</div> 214.192 +<hr noshade="noshade" size="1" width="100%"> 214.193 +<a href="http://sourceforge.net"> 214.194 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 214.195 +</a> 214.196 +<!-- Start of StatCounter Code --> 214.197 +<script type="text/javascript" language="javascript"> 214.198 +<!-- 214.199 +var sc_project=895001; 214.200 +var sc_invisible=1; 214.201 +var sc_partition=7; 214.202 +var sc_security="5ea85181"; 214.203 +//--> 214.204 +</script> 214.205 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 214.206 +<!-- End of StatCounter Code --> 214.207 +</body> 214.208 +</html>
215.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 215.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x67.html Mon Aug 03 14:09:20 2009 +0100 215.3 @@ -0,0 +1,229 @@ 215.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 215.5 +<head> 215.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 215.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 215.8 +<meta content="David Tschumperle" name="author"></meta> 215.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 215.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 215.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 215.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 215.13 +<style type="text/css"> 215.14 +<!-- 215.15 +body {background-color:white; font-family:sans-serif; } 215.16 +a:active{text-decoration:none; color:#303090} 215.17 +a:link{text-decoration:none; color:#303090} 215.18 +a:visited{text-decoration:none; color:#303090} 215.19 +a:hover{text-decoration:underline; color:#4E9F71} 215.20 +--> 215.21 +</style> 215.22 +<script language="JavaScript" type="text/javascript"> 215.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 215.24 + <!-- Web Site: http://redrival.com/eak/ --> 215.25 + <!-- This script and many more are available free online at --> 215.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 215.27 + <!-- Begin 215.28 + function NewWindow(mypage, myname, w, h, scroll) { 215.29 + var winl = (screen.width - w) / 2; 215.30 + var wint = (screen.height - h) / 2; 215.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 215.32 + win = window.open(mypage, myname, winprops) 215.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 215.34 + } 215.35 + // End --> 215.36 +</script> 215.37 +</head> 215.38 +<body> 215.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 215.40 + <tbody><tr><td> 215.41 + <hr noshade="noshade" size="1" width="90%"></hr> 215.42 + <center> 215.43 + <br/> 215.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 215.45 + <br/> 215.46 + </center> 215.47 + <hr noshade="noshade" size="1" width="90%"></hr> 215.48 + <center> 215.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 215.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 215.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 215.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 215.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 215.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 215.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 215.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 215.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 215.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 215.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 215.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 215.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 215.62 + </font> 215.63 + </td></tr></tbody> 215.64 + </table> 215.65 + </center> 215.66 + <hr noshade="noshade" size="1" width="90%"></hr> 215.67 + </td></tr></tbody> 215.68 +</table> 215.69 +<!-- Generated by Doxygen 1.5.7.1 --> 215.70 +<script type="text/javascript"> 215.71 +<!-- 215.72 +function changeDisplayState (e){ 215.73 + var num=this.id.replace(/[^[0-9]/g,''); 215.74 + var button=this.firstChild; 215.75 + var sectionDiv=document.getElementById('dynsection'+num); 215.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 215.77 + sectionDiv.style.display='block'; 215.78 + button.src='open.gif'; 215.79 + }else{ 215.80 + sectionDiv.style.display='none'; 215.81 + button.src='closed.gif'; 215.82 + } 215.83 +} 215.84 +function initDynSections(){ 215.85 + var divs=document.getElementsByTagName('div'); 215.86 + var sectionCounter=1; 215.87 + for(var i=0;i<divs.length-1;i++){ 215.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 215.89 + var header=divs[i]; 215.90 + var section=divs[i+1]; 215.91 + var button=header.firstChild; 215.92 + if (button!='IMG'){ 215.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 215.94 + button=document.createElement('img'); 215.95 + divs[i].insertBefore(button,divs[i].firstChild); 215.96 + } 215.97 + header.style.cursor='pointer'; 215.98 + header.onclick=changeDisplayState; 215.99 + header.id='dynheader'+sectionCounter; 215.100 + button.src='closed.gif'; 215.101 + section.id='dynsection'+sectionCounter; 215.102 + section.style.display='none'; 215.103 + section.style.marginLeft='14px'; 215.104 + sectionCounter++; 215.105 + } 215.106 + } 215.107 +} 215.108 +window.onload = initDynSections; 215.109 +--> 215.110 +</script> 215.111 +<div class="navigation" id="top"> 215.112 + <div class="tabs"> 215.113 + <ul> 215.114 + <li><a href="index.html"><span>Main Page</span></a></li> 215.115 + <li><a href="modules.html"><span>Modules</span></a></li> 215.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 215.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 215.118 + </ul> 215.119 + </div> 215.120 + <div class="tabs"> 215.121 + <ul> 215.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 215.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 215.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 215.125 + </ul> 215.126 + </div> 215.127 + <div class="tabs"> 215.128 + <ul> 215.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 215.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 215.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 215.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 215.133 + </ul> 215.134 + </div> 215.135 + <div class="tabs"> 215.136 + <ul> 215.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 215.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 215.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 215.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 215.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 215.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 215.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 215.144 + <li class="current"><a href="functions_0x67.html#index_g"><span>g</span></a></li> 215.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 215.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 215.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 215.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 215.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 215.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 215.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 215.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 215.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 215.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 215.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 215.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 215.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 215.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 215.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 215.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 215.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 215.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 215.163 + </ul> 215.164 + </div> 215.165 +</div> 215.166 +<div class="contents"> 215.167 +Here is a list of all documented class members with links to the class documentation for each member: 215.168 +<p> 215.169 +<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 215.170 +<li>get_eigen() 215.171 +: <a class="el" href="structcimg__library_1_1CImg.html#4594e576d73d47bd3557c2db395c44df">CImg</a> 215.172 +<li>get_elevation3d() 215.173 +: <a class="el" href="structcimg__library_1_1CImg.html#f8a421b285e0b85ea6ab2fd4a2e6736e">CImg</a> 215.174 +<li>get_FFT() 215.175 +: <a class="el" href="structcimg__library_1_1CImg.html#344967c8b6e7bf0aa40039d1ab29efe2">CImg</a> 215.176 +<li>get_gradient() 215.177 +: <a class="el" href="structcimg__library_1_1CImg.html#3e5b54c0b862cbf6e9f14e832984c4d7">CImg</a> 215.178 +<li>get_hessian() 215.179 +: <a class="el" href="structcimg__library_1_1CImg.html#96e3e0c617e70a833492043d08a7905a">CImg</a> 215.180 +<li>get_isovalue3d() 215.181 +: <a class="el" href="structcimg__library_1_1CImg.html#dfcfeb419514a0e79c6bcb17fc71a53f">CImg</a> 215.182 +<li>get_matrix_at() 215.183 +: <a class="el" href="structcimg__library_1_1CImg.html#0df72293d6377a36cce47d73a4b6bbfc">CImg</a> 215.184 +<li>get_select() 215.185 +: <a class="el" href="structcimg__library_1_1CImg.html#58b982e2bd8adf8792df5caff7549aa6">CImg</a> 215.186 +<li>get_select_graph() 215.187 +: <a class="el" href="structcimg__library_1_1CImg.html#2b77e436a48fd24c423e924c2dae4072">CImg</a> 215.188 +<li>get_shared() 215.189 +: <a class="el" href="structcimg__library_1_1CImg.html#c9676ed1fd154d30c8a2f6f6ee17499c">CImg</a> 215.190 +<li>get_shared_channel() 215.191 +: <a class="el" href="structcimg__library_1_1CImg.html#da9415c850e4a0779e5607b26782de9d">CImg</a> 215.192 +<li>get_shared_channels() 215.193 +: <a class="el" href="structcimg__library_1_1CImg.html#770b28a6ddc3c11af056d27f8dede3d7">CImg</a> 215.194 +<li>get_shared_line() 215.195 +: <a class="el" href="structcimg__library_1_1CImg.html#f6a6dc59e00dd28f9a1cd887569a21cc">CImg</a> 215.196 +<li>get_shared_lines() 215.197 +: <a class="el" href="structcimg__library_1_1CImg.html#cb22178b8e77a784d443fd7a6fad7836">CImg</a> 215.198 +<li>get_shared_plane() 215.199 +: <a class="el" href="structcimg__library_1_1CImg.html#eec1741a119c7ba27c2c3c2c20097df9">CImg</a> 215.200 +<li>get_shared_planes() 215.201 +: <a class="el" href="structcimg__library_1_1CImg.html#321bd9cc21a2f658df1dcc5b95eb6fd6">CImg</a> 215.202 +<li>get_shared_points() 215.203 +: <a class="el" href="structcimg__library_1_1CImg.html#2bec31726ee3647345577b893c102dea">CImg</a> 215.204 +<li>get_split() 215.205 +: <a class="el" href="structcimg__library_1_1CImg.html#ccd769bc160bb4bd933d01ec3b22c1d7">CImg</a> 215.206 +<li>get_SVD() 215.207 +: <a class="el" href="structcimg__library_1_1CImg.html#e0595a4603944cb0affe5b4ac29bdd6b">CImg</a> 215.208 +<li>get_symmetric_eigen() 215.209 +: <a class="el" href="structcimg__library_1_1CImg.html#f970d1443e880c4d5668e2b752c5fbae">CImg</a> 215.210 +<li>get_tensor_at() 215.211 +: <a class="el" href="structcimg__library_1_1CImg.html#82cfb268b952aeeb1b55e6072a83d093">CImg</a> 215.212 +<li>get_vector_at() 215.213 +: <a class="el" href="structcimg__library_1_1CImg.html#ac10e7f03cdf50782511200bbcaeaa70">CImg</a> 215.214 +</ul> 215.215 +</div> 215.216 +<hr noshade="noshade" size="1" width="100%"> 215.217 +<a href="http://sourceforge.net"> 215.218 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 215.219 +</a> 215.220 +<!-- Start of StatCounter Code --> 215.221 +<script type="text/javascript" language="javascript"> 215.222 +<!-- 215.223 +var sc_project=895001; 215.224 +var sc_invisible=1; 215.225 +var sc_partition=7; 215.226 +var sc_security="5ea85181"; 215.227 +//--> 215.228 +</script> 215.229 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 215.230 +<!-- End of StatCounter Code --> 215.231 +</body> 215.232 +</html>
216.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 216.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x68.html Mon Aug 03 14:09:20 2009 +0100 216.3 @@ -0,0 +1,200 @@ 216.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 216.5 +<head> 216.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 216.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 216.8 +<meta content="David Tschumperle" name="author"></meta> 216.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 216.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 216.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 216.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 216.13 +<style type="text/css"> 216.14 +<!-- 216.15 +body {background-color:white; font-family:sans-serif; } 216.16 +a:active{text-decoration:none; color:#303090} 216.17 +a:link{text-decoration:none; color:#303090} 216.18 +a:visited{text-decoration:none; color:#303090} 216.19 +a:hover{text-decoration:underline; color:#4E9F71} 216.20 +--> 216.21 +</style> 216.22 +<script language="JavaScript" type="text/javascript"> 216.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 216.24 + <!-- Web Site: http://redrival.com/eak/ --> 216.25 + <!-- This script and many more are available free online at --> 216.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 216.27 + <!-- Begin 216.28 + function NewWindow(mypage, myname, w, h, scroll) { 216.29 + var winl = (screen.width - w) / 2; 216.30 + var wint = (screen.height - h) / 2; 216.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 216.32 + win = window.open(mypage, myname, winprops) 216.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 216.34 + } 216.35 + // End --> 216.36 +</script> 216.37 +</head> 216.38 +<body> 216.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 216.40 + <tbody><tr><td> 216.41 + <hr noshade="noshade" size="1" width="90%"></hr> 216.42 + <center> 216.43 + <br/> 216.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 216.45 + <br/> 216.46 + </center> 216.47 + <hr noshade="noshade" size="1" width="90%"></hr> 216.48 + <center> 216.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 216.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 216.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 216.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 216.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 216.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 216.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 216.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 216.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 216.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 216.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 216.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 216.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 216.62 + </font> 216.63 + </td></tr></tbody> 216.64 + </table> 216.65 + </center> 216.66 + <hr noshade="noshade" size="1" width="90%"></hr> 216.67 + </td></tr></tbody> 216.68 +</table> 216.69 +<!-- Generated by Doxygen 1.5.7.1 --> 216.70 +<script type="text/javascript"> 216.71 +<!-- 216.72 +function changeDisplayState (e){ 216.73 + var num=this.id.replace(/[^[0-9]/g,''); 216.74 + var button=this.firstChild; 216.75 + var sectionDiv=document.getElementById('dynsection'+num); 216.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 216.77 + sectionDiv.style.display='block'; 216.78 + button.src='open.gif'; 216.79 + }else{ 216.80 + sectionDiv.style.display='none'; 216.81 + button.src='closed.gif'; 216.82 + } 216.83 +} 216.84 +function initDynSections(){ 216.85 + var divs=document.getElementsByTagName('div'); 216.86 + var sectionCounter=1; 216.87 + for(var i=0;i<divs.length-1;i++){ 216.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 216.89 + var header=divs[i]; 216.90 + var section=divs[i+1]; 216.91 + var button=header.firstChild; 216.92 + if (button!='IMG'){ 216.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 216.94 + button=document.createElement('img'); 216.95 + divs[i].insertBefore(button,divs[i].firstChild); 216.96 + } 216.97 + header.style.cursor='pointer'; 216.98 + header.onclick=changeDisplayState; 216.99 + header.id='dynheader'+sectionCounter; 216.100 + button.src='closed.gif'; 216.101 + section.id='dynsection'+sectionCounter; 216.102 + section.style.display='none'; 216.103 + section.style.marginLeft='14px'; 216.104 + sectionCounter++; 216.105 + } 216.106 + } 216.107 +} 216.108 +window.onload = initDynSections; 216.109 +--> 216.110 +</script> 216.111 +<div class="navigation" id="top"> 216.112 + <div class="tabs"> 216.113 + <ul> 216.114 + <li><a href="index.html"><span>Main Page</span></a></li> 216.115 + <li><a href="modules.html"><span>Modules</span></a></li> 216.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 216.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 216.118 + </ul> 216.119 + </div> 216.120 + <div class="tabs"> 216.121 + <ul> 216.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 216.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 216.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 216.125 + </ul> 216.126 + </div> 216.127 + <div class="tabs"> 216.128 + <ul> 216.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 216.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 216.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 216.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 216.133 + </ul> 216.134 + </div> 216.135 + <div class="tabs"> 216.136 + <ul> 216.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 216.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 216.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 216.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 216.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 216.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 216.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 216.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 216.145 + <li class="current"><a href="functions_0x68.html#index_h"><span>h</span></a></li> 216.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 216.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 216.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 216.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 216.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 216.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 216.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 216.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 216.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 216.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 216.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 216.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 216.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 216.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 216.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 216.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 216.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 216.163 + </ul> 216.164 + </div> 216.165 +</div> 216.166 +<div class="contents"> 216.167 +Here is a list of all documented class members with links to the class documentation for each member: 216.168 +<p> 216.169 +<h3><a class="anchor" name="index_h">- h -</a></h3><ul> 216.170 +<li>haar() 216.171 +: <a class="el" href="structcimg__library_1_1CImg.html#09afff280828c5a8d5a7bef22993dacc">CImg</a> 216.172 +<li>height 216.173 +: <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">CImg</a> 216.174 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#b2e78c61905b4419fcc7b4cfc500fe85">CImgDisplay</a> 216.175 +<li>hide_mouse() 216.176 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3fb8cda1473f326934c286e6e5d825e2">CImgDisplay</a> 216.177 +<li>histogram() 216.178 +: <a class="el" href="structcimg__library_1_1CImg.html#edc5d10d1516480dbfe20a576c152770">CImg</a> 216.179 +<li>HSItoRGB() 216.180 +: <a class="el" href="structcimg__library_1_1CImg.html#342709e04c2efd6b07982b1e9b5b5671">CImg</a> 216.181 +<li>HSLtoRGB() 216.182 +: <a class="el" href="structcimg__library_1_1CImg.html#0e2080f7ef8f8c87587800de0c5d9f31">CImg</a> 216.183 +<li>HSVtoRGB() 216.184 +: <a class="el" href="structcimg__library_1_1CImg.html#87cc3767b5078c5f63e09ba0109cf0d4">CImg</a> 216.185 +</ul> 216.186 +</div> 216.187 +<hr noshade="noshade" size="1" width="100%"> 216.188 +<a href="http://sourceforge.net"> 216.189 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 216.190 +</a> 216.191 +<!-- Start of StatCounter Code --> 216.192 +<script type="text/javascript" language="javascript"> 216.193 +<!-- 216.194 +var sc_project=895001; 216.195 +var sc_invisible=1; 216.196 +var sc_partition=7; 216.197 +var sc_security="5ea85181"; 216.198 +//--> 216.199 +</script> 216.200 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 216.201 +<!-- End of StatCounter Code --> 216.202 +</body> 216.203 +</html>
217.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 217.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x69.html Mon Aug 03 14:09:20 2009 +0100 217.3 @@ -0,0 +1,248 @@ 217.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 217.5 +<head> 217.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 217.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 217.8 +<meta content="David Tschumperle" name="author"></meta> 217.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 217.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 217.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 217.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 217.13 +<style type="text/css"> 217.14 +<!-- 217.15 +body {background-color:white; font-family:sans-serif; } 217.16 +a:active{text-decoration:none; color:#303090} 217.17 +a:link{text-decoration:none; color:#303090} 217.18 +a:visited{text-decoration:none; color:#303090} 217.19 +a:hover{text-decoration:underline; color:#4E9F71} 217.20 +--> 217.21 +</style> 217.22 +<script language="JavaScript" type="text/javascript"> 217.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 217.24 + <!-- Web Site: http://redrival.com/eak/ --> 217.25 + <!-- This script and many more are available free online at --> 217.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 217.27 + <!-- Begin 217.28 + function NewWindow(mypage, myname, w, h, scroll) { 217.29 + var winl = (screen.width - w) / 2; 217.30 + var wint = (screen.height - h) / 2; 217.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 217.32 + win = window.open(mypage, myname, winprops) 217.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 217.34 + } 217.35 + // End --> 217.36 +</script> 217.37 +</head> 217.38 +<body> 217.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 217.40 + <tbody><tr><td> 217.41 + <hr noshade="noshade" size="1" width="90%"></hr> 217.42 + <center> 217.43 + <br/> 217.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 217.45 + <br/> 217.46 + </center> 217.47 + <hr noshade="noshade" size="1" width="90%"></hr> 217.48 + <center> 217.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 217.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 217.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 217.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 217.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 217.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 217.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 217.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 217.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 217.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 217.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 217.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 217.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 217.62 + </font> 217.63 + </td></tr></tbody> 217.64 + </table> 217.65 + </center> 217.66 + <hr noshade="noshade" size="1" width="90%"></hr> 217.67 + </td></tr></tbody> 217.68 +</table> 217.69 +<!-- Generated by Doxygen 1.5.7.1 --> 217.70 +<script type="text/javascript"> 217.71 +<!-- 217.72 +function changeDisplayState (e){ 217.73 + var num=this.id.replace(/[^[0-9]/g,''); 217.74 + var button=this.firstChild; 217.75 + var sectionDiv=document.getElementById('dynsection'+num); 217.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 217.77 + sectionDiv.style.display='block'; 217.78 + button.src='open.gif'; 217.79 + }else{ 217.80 + sectionDiv.style.display='none'; 217.81 + button.src='closed.gif'; 217.82 + } 217.83 +} 217.84 +function initDynSections(){ 217.85 + var divs=document.getElementsByTagName('div'); 217.86 + var sectionCounter=1; 217.87 + for(var i=0;i<divs.length-1;i++){ 217.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 217.89 + var header=divs[i]; 217.90 + var section=divs[i+1]; 217.91 + var button=header.firstChild; 217.92 + if (button!='IMG'){ 217.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 217.94 + button=document.createElement('img'); 217.95 + divs[i].insertBefore(button,divs[i].firstChild); 217.96 + } 217.97 + header.style.cursor='pointer'; 217.98 + header.onclick=changeDisplayState; 217.99 + header.id='dynheader'+sectionCounter; 217.100 + button.src='closed.gif'; 217.101 + section.id='dynsection'+sectionCounter; 217.102 + section.style.display='none'; 217.103 + section.style.marginLeft='14px'; 217.104 + sectionCounter++; 217.105 + } 217.106 + } 217.107 +} 217.108 +window.onload = initDynSections; 217.109 +--> 217.110 +</script> 217.111 +<div class="navigation" id="top"> 217.112 + <div class="tabs"> 217.113 + <ul> 217.114 + <li><a href="index.html"><span>Main Page</span></a></li> 217.115 + <li><a href="modules.html"><span>Modules</span></a></li> 217.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 217.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 217.118 + </ul> 217.119 + </div> 217.120 + <div class="tabs"> 217.121 + <ul> 217.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 217.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 217.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 217.125 + </ul> 217.126 + </div> 217.127 + <div class="tabs"> 217.128 + <ul> 217.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 217.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 217.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 217.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 217.133 + </ul> 217.134 + </div> 217.135 + <div class="tabs"> 217.136 + <ul> 217.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 217.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 217.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 217.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 217.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 217.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 217.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 217.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 217.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 217.146 + <li class="current"><a href="functions_0x69.html#index_i"><span>i</span></a></li> 217.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 217.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 217.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 217.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 217.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 217.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 217.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 217.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 217.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 217.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 217.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 217.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 217.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 217.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 217.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 217.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 217.163 + </ul> 217.164 + </div> 217.165 +</div> 217.166 +<div class="contents"> 217.167 +Here is a list of all documented class members with links to the class documentation for each member: 217.168 +<p> 217.169 +<h3><a class="anchor" name="index_i">- i -</a></h3><ul> 217.170 +<li>identity_matrix() 217.171 +: <a class="el" href="structcimg__library_1_1CImg.html#14131b116119f392019c431f6eac5c6f">CImg</a> 217.172 +<li>invert() 217.173 +: <a class="el" href="structcimg__library_1_1CImg.html#930302996a00b75e7e4ea7b4d6dea821">CImg</a> 217.174 +<li>invert_endianness() 217.175 +: <a class="el" href="structcimg__library_1_1CImg.html#d1bdd0c686ccaa6a12ff4b69efa5a567">CImg</a> 217.176 +<li>is_closed 217.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#6177b591b6fdd86be8a841805e35e280">CImgDisplay</a> 217.178 +<li>is_empty() 217.179 +: <a class="el" href="structcimg__library_1_1CImgList.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImgList</a> 217.180 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImgDisplay</a> 217.181 +, <a class="el" href="structcimg__library_1_1CImg.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImg</a> 217.182 +<li>is_event 217.183 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e899d3a3cda0dc8e2fccac37f2258840">CImgDisplay</a> 217.184 +<li>is_fullscreen 217.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#198912a8b09f955a6510f97d62060f5c">CImgDisplay</a> 217.186 +<li>is_key() 217.187 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#75d2273ead659c7a3774b5972450f3e8">CImgDisplay</a> 217.188 +<li>is_keyESC 217.189 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fe7ba7376c7b08dec24ac4c42d5fc753">CImgDisplay</a> 217.190 +<li>is_moved 217.191 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#9655ae9b239a315df522996415012d0a">CImgDisplay</a> 217.192 +<li>is_overlapped() 217.193 +: <a class="el" href="structcimg__library_1_1CImg.html#b37041213cf48faf44debd569ae93127">CImg</a> 217.194 +<li>is_resized 217.195 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#c36e1e5ca1f39584ff996eddc7bc7f0e">CImgDisplay</a> 217.196 +<li>is_sameN() 217.197 +: <a class="el" href="structcimg__library_1_1CImgList.html#bf45495f91f5e6e04bd597f0dd5d1ee4">CImgList</a> 217.198 +<li>is_sameV() 217.199 +: <a class="el" href="structcimg__library_1_1CImg.html#cd8ae750af0f68148227285c97036321">CImg</a> 217.200 +<li>is_sameX() 217.201 +: <a class="el" href="structcimg__library_1_1CImg.html#6f2389ea0ff1313b23523d557980a8a6">CImg</a> 217.202 +<li>is_sameXV() 217.203 +: <a class="el" href="structcimg__library_1_1CImg.html#1196976be93ae9d179bd9de3a5d997fe">CImg</a> 217.204 +<li>is_sameXY() 217.205 +: <a class="el" href="structcimg__library_1_1CImg.html#f202a5fce446abc81966aa0df075075c">CImg</a> 217.206 +<li>is_sameXYV() 217.207 +: <a class="el" href="structcimg__library_1_1CImg.html#f79477b4ed4ba3e40f96363eeb735049">CImg</a> 217.208 +<li>is_sameXYZ() 217.209 +: <a class="el" href="structcimg__library_1_1CImg.html#36a12bf20a1d6cf863f505877e30bdce">CImg</a> 217.210 +<li>is_sameXYZV() 217.211 +: <a class="el" href="structcimg__library_1_1CImg.html#8d5a5b714082a0cd2315b19984e69163">CImg</a> 217.212 +<li>is_sameXZ() 217.213 +: <a class="el" href="structcimg__library_1_1CImg.html#3d19709f9f46ca0ab06a5942f91b8ee4">CImg</a> 217.214 +<li>is_sameXZV() 217.215 +: <a class="el" href="structcimg__library_1_1CImg.html#5f1f9f15a7ca3dff58e5ee2d0e90b3e2">CImg</a> 217.216 +<li>is_sameY() 217.217 +: <a class="el" href="structcimg__library_1_1CImg.html#cb6a0d74efed60628344ce37e44aca31">CImg</a> 217.218 +<li>is_sameYV() 217.219 +: <a class="el" href="structcimg__library_1_1CImg.html#64684b41dcd2a660962be8df5d30d2cf">CImg</a> 217.220 +<li>is_sameYZ() 217.221 +: <a class="el" href="structcimg__library_1_1CImg.html#229ee758d966e13dc65cc853b5bc2566">CImg</a> 217.222 +<li>is_sameYZV() 217.223 +: <a class="el" href="structcimg__library_1_1CImg.html#10f8cee08e95111cc9bb227ca11b079f">CImg</a> 217.224 +<li>is_sameZ() 217.225 +: <a class="el" href="structcimg__library_1_1CImg.html#ae8da1879332cbb3807133b552d1cafe">CImg</a> 217.226 +<li>is_sameZV() 217.227 +: <a class="el" href="structcimg__library_1_1CImg.html#fcd67d621531a0cfe2d9c004442b3575">CImg</a> 217.228 +<li>is_shared 217.229 +: <a class="el" href="structcimg__library_1_1CImg.html#64fc9b1179593151684cfdc86dac7e65">CImg</a> 217.230 +<li>iterator 217.231 +: <a class="el" href="structcimg__library_1_1CImgList.html#7c1c29e319c572a740b103b024f37034">CImgList</a> 217.232 +, <a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">CImg</a> 217.233 +</ul> 217.234 +</div> 217.235 +<hr noshade="noshade" size="1" width="100%"> 217.236 +<a href="http://sourceforge.net"> 217.237 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 217.238 +</a> 217.239 +<!-- Start of StatCounter Code --> 217.240 +<script type="text/javascript" language="javascript"> 217.241 +<!-- 217.242 +var sc_project=895001; 217.243 +var sc_invisible=1; 217.244 +var sc_partition=7; 217.245 +var sc_security="5ea85181"; 217.246 +//--> 217.247 +</script> 217.248 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 217.249 +<!-- End of StatCounter Code --> 217.250 +</body> 217.251 +</html>
218.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 218.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x6b.html Mon Aug 03 14:09:20 2009 +0100 218.3 @@ -0,0 +1,189 @@ 218.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 218.5 +<head> 218.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 218.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 218.8 +<meta content="David Tschumperle" name="author"></meta> 218.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 218.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 218.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 218.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 218.13 +<style type="text/css"> 218.14 +<!-- 218.15 +body {background-color:white; font-family:sans-serif; } 218.16 +a:active{text-decoration:none; color:#303090} 218.17 +a:link{text-decoration:none; color:#303090} 218.18 +a:visited{text-decoration:none; color:#303090} 218.19 +a:hover{text-decoration:underline; color:#4E9F71} 218.20 +--> 218.21 +</style> 218.22 +<script language="JavaScript" type="text/javascript"> 218.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 218.24 + <!-- Web Site: http://redrival.com/eak/ --> 218.25 + <!-- This script and many more are available free online at --> 218.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 218.27 + <!-- Begin 218.28 + function NewWindow(mypage, myname, w, h, scroll) { 218.29 + var winl = (screen.width - w) / 2; 218.30 + var wint = (screen.height - h) / 2; 218.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 218.32 + win = window.open(mypage, myname, winprops) 218.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 218.34 + } 218.35 + // End --> 218.36 +</script> 218.37 +</head> 218.38 +<body> 218.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 218.40 + <tbody><tr><td> 218.41 + <hr noshade="noshade" size="1" width="90%"></hr> 218.42 + <center> 218.43 + <br/> 218.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 218.45 + <br/> 218.46 + </center> 218.47 + <hr noshade="noshade" size="1" width="90%"></hr> 218.48 + <center> 218.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 218.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 218.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 218.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 218.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 218.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 218.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 218.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 218.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 218.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 218.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 218.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 218.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 218.62 + </font> 218.63 + </td></tr></tbody> 218.64 + </table> 218.65 + </center> 218.66 + <hr noshade="noshade" size="1" width="90%"></hr> 218.67 + </td></tr></tbody> 218.68 +</table> 218.69 +<!-- Generated by Doxygen 1.5.7.1 --> 218.70 +<script type="text/javascript"> 218.71 +<!-- 218.72 +function changeDisplayState (e){ 218.73 + var num=this.id.replace(/[^[0-9]/g,''); 218.74 + var button=this.firstChild; 218.75 + var sectionDiv=document.getElementById('dynsection'+num); 218.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 218.77 + sectionDiv.style.display='block'; 218.78 + button.src='open.gif'; 218.79 + }else{ 218.80 + sectionDiv.style.display='none'; 218.81 + button.src='closed.gif'; 218.82 + } 218.83 +} 218.84 +function initDynSections(){ 218.85 + var divs=document.getElementsByTagName('div'); 218.86 + var sectionCounter=1; 218.87 + for(var i=0;i<divs.length-1;i++){ 218.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 218.89 + var header=divs[i]; 218.90 + var section=divs[i+1]; 218.91 + var button=header.firstChild; 218.92 + if (button!='IMG'){ 218.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 218.94 + button=document.createElement('img'); 218.95 + divs[i].insertBefore(button,divs[i].firstChild); 218.96 + } 218.97 + header.style.cursor='pointer'; 218.98 + header.onclick=changeDisplayState; 218.99 + header.id='dynheader'+sectionCounter; 218.100 + button.src='closed.gif'; 218.101 + section.id='dynsection'+sectionCounter; 218.102 + section.style.display='none'; 218.103 + section.style.marginLeft='14px'; 218.104 + sectionCounter++; 218.105 + } 218.106 + } 218.107 +} 218.108 +window.onload = initDynSections; 218.109 +--> 218.110 +</script> 218.111 +<div class="navigation" id="top"> 218.112 + <div class="tabs"> 218.113 + <ul> 218.114 + <li><a href="index.html"><span>Main Page</span></a></li> 218.115 + <li><a href="modules.html"><span>Modules</span></a></li> 218.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 218.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 218.118 + </ul> 218.119 + </div> 218.120 + <div class="tabs"> 218.121 + <ul> 218.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 218.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 218.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 218.125 + </ul> 218.126 + </div> 218.127 + <div class="tabs"> 218.128 + <ul> 218.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 218.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 218.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 218.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 218.133 + </ul> 218.134 + </div> 218.135 + <div class="tabs"> 218.136 + <ul> 218.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 218.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 218.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 218.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 218.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 218.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 218.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 218.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 218.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 218.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 218.147 + <li class="current"><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 218.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 218.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 218.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 218.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 218.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 218.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 218.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 218.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 218.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 218.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 218.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 218.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 218.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 218.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 218.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 218.163 + </ul> 218.164 + </div> 218.165 +</div> 218.166 +<div class="contents"> 218.167 +Here is a list of all documented class members with links to the class documentation for each member: 218.168 +<p> 218.169 +<h3><a class="anchor" name="index_k">- k -</a></h3><ul> 218.170 +<li>key 218.171 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#31f08c239581b118bfa3024329c8a611">CImgDisplay</a> 218.172 +<li>kth_smallest() 218.173 +: <a class="el" href="structcimg__library_1_1CImg.html#93d6b348517590d019471ddeeb3e938b">CImg</a> 218.174 +</ul> 218.175 +</div> 218.176 +<hr noshade="noshade" size="1" width="100%"> 218.177 +<a href="http://sourceforge.net"> 218.178 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 218.179 +</a> 218.180 +<!-- Start of StatCounter Code --> 218.181 +<script type="text/javascript" language="javascript"> 218.182 +<!-- 218.183 +var sc_project=895001; 218.184 +var sc_invisible=1; 218.185 +var sc_partition=7; 218.186 +var sc_security="5ea85181"; 218.187 +//--> 218.188 +</script> 218.189 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 218.190 +<!-- End of StatCounter Code --> 218.191 +</body> 218.192 +</html>
219.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 219.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x6c.html Mon Aug 03 14:09:20 2009 +0100 219.3 @@ -0,0 +1,266 @@ 219.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 219.5 +<head> 219.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 219.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 219.8 +<meta content="David Tschumperle" name="author"></meta> 219.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 219.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 219.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 219.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 219.13 +<style type="text/css"> 219.14 +<!-- 219.15 +body {background-color:white; font-family:sans-serif; } 219.16 +a:active{text-decoration:none; color:#303090} 219.17 +a:link{text-decoration:none; color:#303090} 219.18 +a:visited{text-decoration:none; color:#303090} 219.19 +a:hover{text-decoration:underline; color:#4E9F71} 219.20 +--> 219.21 +</style> 219.22 +<script language="JavaScript" type="text/javascript"> 219.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 219.24 + <!-- Web Site: http://redrival.com/eak/ --> 219.25 + <!-- This script and many more are available free online at --> 219.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 219.27 + <!-- Begin 219.28 + function NewWindow(mypage, myname, w, h, scroll) { 219.29 + var winl = (screen.width - w) / 2; 219.30 + var wint = (screen.height - h) / 2; 219.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 219.32 + win = window.open(mypage, myname, winprops) 219.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 219.34 + } 219.35 + // End --> 219.36 +</script> 219.37 +</head> 219.38 +<body> 219.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 219.40 + <tbody><tr><td> 219.41 + <hr noshade="noshade" size="1" width="90%"></hr> 219.42 + <center> 219.43 + <br/> 219.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 219.45 + <br/> 219.46 + </center> 219.47 + <hr noshade="noshade" size="1" width="90%"></hr> 219.48 + <center> 219.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 219.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 219.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 219.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 219.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 219.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 219.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 219.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 219.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 219.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 219.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 219.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 219.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 219.62 + </font> 219.63 + </td></tr></tbody> 219.64 + </table> 219.65 + </center> 219.66 + <hr noshade="noshade" size="1" width="90%"></hr> 219.67 + </td></tr></tbody> 219.68 +</table> 219.69 +<!-- Generated by Doxygen 1.5.7.1 --> 219.70 +<script type="text/javascript"> 219.71 +<!-- 219.72 +function changeDisplayState (e){ 219.73 + var num=this.id.replace(/[^[0-9]/g,''); 219.74 + var button=this.firstChild; 219.75 + var sectionDiv=document.getElementById('dynsection'+num); 219.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 219.77 + sectionDiv.style.display='block'; 219.78 + button.src='open.gif'; 219.79 + }else{ 219.80 + sectionDiv.style.display='none'; 219.81 + button.src='closed.gif'; 219.82 + } 219.83 +} 219.84 +function initDynSections(){ 219.85 + var divs=document.getElementsByTagName('div'); 219.86 + var sectionCounter=1; 219.87 + for(var i=0;i<divs.length-1;i++){ 219.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 219.89 + var header=divs[i]; 219.90 + var section=divs[i+1]; 219.91 + var button=header.firstChild; 219.92 + if (button!='IMG'){ 219.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 219.94 + button=document.createElement('img'); 219.95 + divs[i].insertBefore(button,divs[i].firstChild); 219.96 + } 219.97 + header.style.cursor='pointer'; 219.98 + header.onclick=changeDisplayState; 219.99 + header.id='dynheader'+sectionCounter; 219.100 + button.src='closed.gif'; 219.101 + section.id='dynsection'+sectionCounter; 219.102 + section.style.display='none'; 219.103 + section.style.marginLeft='14px'; 219.104 + sectionCounter++; 219.105 + } 219.106 + } 219.107 +} 219.108 +window.onload = initDynSections; 219.109 +--> 219.110 +</script> 219.111 +<div class="navigation" id="top"> 219.112 + <div class="tabs"> 219.113 + <ul> 219.114 + <li><a href="index.html"><span>Main Page</span></a></li> 219.115 + <li><a href="modules.html"><span>Modules</span></a></li> 219.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 219.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 219.118 + </ul> 219.119 + </div> 219.120 + <div class="tabs"> 219.121 + <ul> 219.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 219.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 219.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 219.125 + </ul> 219.126 + </div> 219.127 + <div class="tabs"> 219.128 + <ul> 219.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 219.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 219.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 219.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 219.133 + </ul> 219.134 + </div> 219.135 + <div class="tabs"> 219.136 + <ul> 219.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 219.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 219.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 219.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 219.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 219.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 219.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 219.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 219.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 219.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 219.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 219.148 + <li class="current"><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 219.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 219.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 219.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 219.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 219.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 219.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 219.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 219.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 219.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 219.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 219.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 219.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 219.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 219.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 219.163 + </ul> 219.164 + </div> 219.165 +</div> 219.166 +<div class="contents"> 219.167 +Here is a list of all documented class members with links to the class documentation for each member: 219.168 +<p> 219.169 +<h3><a class="anchor" name="index_l">- l -</a></h3><ul> 219.170 +<li>label_regions() 219.171 +: <a class="el" href="structcimg__library_1_1CImg.html#cd78906a1eb7d7c0e1aa4c220e474540">CImg</a> 219.172 +<li>LabtoRGB() 219.173 +: <a class="el" href="structcimg__library_1_1CImg.html#a710f60075b3bc24790f17a7dc30e425">CImg</a> 219.174 +<li>LabtoXYZ() 219.175 +: <a class="el" href="structcimg__library_1_1CImg.html#875c1681e84375ceb5d828e20de61704">CImg</a> 219.176 +<li>last() 219.177 +: <a class="el" href="structcimg__library_1_1CImg.html#4fc1d283512c7d8834f1692a1dd6cef5">CImg</a> 219.178 +<li>line() 219.179 +: <a class="el" href="structcimg__library_1_1CImg.html#d701e07806866145060dd2cc2805443e">CImg</a> 219.180 +<li>linear_atX() 219.181 +: <a class="el" href="structcimg__library_1_1CImg.html#f152ffcc0cc8f55cda0d3199b97c0032">CImg</a> 219.182 +<li>linear_atXY() 219.183 +: <a class="el" href="structcimg__library_1_1CImg.html#5b57f219b9ab6a0c7fe76f10c9ced45c">CImg</a> 219.184 +<li>linear_atXYZ() 219.185 +: <a class="el" href="structcimg__library_1_1CImg.html#a070b89df5e2ff8b70e2d74cc498d622">CImg</a> 219.186 +<li>linear_atXYZV() 219.187 +: <a class="el" href="structcimg__library_1_1CImg.html#2ad85b5a6a622470a8c36d31e5e46915">CImg</a> 219.188 +<li>lines() 219.189 +: <a class="el" href="structcimg__library_1_1CImg.html#583e6f289691013d6d863d98ec20631e">CImg</a> 219.190 +<li>load() 219.191 +: <a class="el" href="structcimg__library_1_1CImg.html#138dcc5db93d511d224d88405a0041ce">CImg</a> 219.192 +<li>load_analyze() 219.193 +: <a class="el" href="structcimg__library_1_1CImg.html#b56eb4920a37739b113bd90ed65b4506">CImg</a> 219.194 +<li>load_ascii() 219.195 +: <a class="el" href="structcimg__library_1_1CImg.html#8483309e9e347b1f8b35337c543d7aed">CImg</a> 219.196 +<li>load_bmp() 219.197 +: <a class="el" href="structcimg__library_1_1CImg.html#bd7e94f200f3d4bd249c32d0d9c511bc">CImg</a> 219.198 +<li>load_cimg() 219.199 +: <a class="el" href="structcimg__library_1_1CImg.html#cdae64c0c93793df8b0a0b28a34d9694">CImg</a> 219.200 +<li>load_dcraw_external() 219.201 +: <a class="el" href="structcimg__library_1_1CImg.html#67cf88da9c1122b55ebcef3d223bccbe">CImg</a> 219.202 +<li>load_dlm() 219.203 +: <a class="el" href="structcimg__library_1_1CImg.html#15505951824c019f6fdea4f0eaab8cac">CImg</a> 219.204 +<li>load_ffmpeg() 219.205 +: <a class="el" href="structcimg__library_1_1CImg.html#0ea50f5bd07d9d8ae9ab11aaf6a87a31">CImg</a> 219.206 +<li>load_ffmpeg_external() 219.207 +: <a class="el" href="structcimg__library_1_1CImg.html#a2bb0602f254824530b888266d4d503a">CImg</a> 219.208 +<li>load_graphicsmagick_external() 219.209 +: <a class="el" href="structcimg__library_1_1CImg.html#ad5a1ff332f904a39b3ea2035d3a94dc">CImg</a> 219.210 +<li>load_gzip_external() 219.211 +: <a class="el" href="structcimg__library_1_1CImg.html#1b8bf7e0b1371dbdc0d845a39f6451a8">CImg</a> 219.212 +<li>load_imagemagick_external() 219.213 +: <a class="el" href="structcimg__library_1_1CImg.html#841db22435a4f77bf3e4c9fc65ecbb6e">CImg</a> 219.214 +<li>load_inr() 219.215 +: <a class="el" href="structcimg__library_1_1CImg.html#4a1bebfe52d369d35ad6f9d63b46fc64">CImg</a> 219.216 +<li>load_jpeg() 219.217 +: <a class="el" href="structcimg__library_1_1CImg.html#e4e17798245c1eac132b4b286c8e4419">CImg</a> 219.218 +<li>load_magick() 219.219 +: <a class="el" href="structcimg__library_1_1CImg.html#1b58020c04f6ddaa44007e9edbcba0a6">CImg</a> 219.220 +<li>load_medcon_external() 219.221 +: <a class="el" href="structcimg__library_1_1CImg.html#38df90ee1c431b684fcb5ed8248464b1">CImg</a> 219.222 +<li>load_off() 219.223 +: <a class="el" href="structcimg__library_1_1CImg.html#78e7945139c2e91df6bfecb1b388c7cc">CImg</a> 219.224 +<li>load_other() 219.225 +: <a class="el" href="structcimg__library_1_1CImg.html#35a909fb3df4bd76be2facc8366861af">CImg</a> 219.226 +<li>load_pandore() 219.227 +: <a class="el" href="structcimg__library_1_1CImg.html#1c52c863e6b22a98b8049b46bfc16102">CImg</a> 219.228 +<li>load_parrec() 219.229 +: <a class="el" href="structcimg__library_1_1CImg.html#9e3446fd647fcb9fc95a462435f42784">CImg</a> 219.230 +<li>load_png() 219.231 +: <a class="el" href="structcimg__library_1_1CImg.html#2f6f002e4cc449887b258d7a5b30afd8">CImg</a> 219.232 +<li>load_pnm() 219.233 +: <a class="el" href="structcimg__library_1_1CImg.html#a104737d62b54c15489b481a199fb72a">CImg</a> 219.234 +<li>load_raw() 219.235 +: <a class="el" href="structcimg__library_1_1CImg.html#ff2e5fd6242828f8c83e652daea0861e">CImg</a> 219.236 +<li>load_rgb() 219.237 +: <a class="el" href="structcimg__library_1_1CImg.html#c3cd73613729b55992811acee5015eab">CImg</a> 219.238 +<li>load_rgba() 219.239 +: <a class="el" href="structcimg__library_1_1CImg.html#27807907b967601fa7d51a024dd64e51">CImg</a> 219.240 +<li>load_tiff() 219.241 +: <a class="el" href="structcimg__library_1_1CImg.html#b943c007a92b463ec458b4be80e80460">CImg</a> 219.242 +, <a class="el" href="structcimg__library_1_1CImgList.html#9195765cb9bde15990a29ccd9306532c">CImgList</a> 219.243 +<li>load_yuv() 219.244 +: <a class="el" href="structcimg__library_1_1CImg.html#b0db892192d010d5f1f6c25423328535">CImg</a> 219.245 +<li>log() 219.246 +: <a class="el" href="structcimg__library_1_1CImg.html#74c5faaf4a41aa0aa470a164897d6ec6">CImg</a> 219.247 +<li>log10() 219.248 +: <a class="el" href="structcimg__library_1_1CImg.html#199c3d150c895179a609ee3b172b332e">CImg</a> 219.249 +<li>LUTtoRGB() 219.250 +: <a class="el" href="structcimg__library_1_1CImg.html#0b122070bda047ccd97702a7e72f6379">CImg</a> 219.251 +</ul> 219.252 +</div> 219.253 +<hr noshade="noshade" size="1" width="100%"> 219.254 +<a href="http://sourceforge.net"> 219.255 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 219.256 +</a> 219.257 +<!-- Start of StatCounter Code --> 219.258 +<script type="text/javascript" language="javascript"> 219.259 +<!-- 219.260 +var sc_project=895001; 219.261 +var sc_invisible=1; 219.262 +var sc_partition=7; 219.263 +var sc_security="5ea85181"; 219.264 +//--> 219.265 +</script> 219.266 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 219.267 +<!-- End of StatCounter Code --> 219.268 +</body> 219.269 +</html>
220.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 220.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x6d.html Mon Aug 03 14:09:20 2009 +0100 220.3 @@ -0,0 +1,217 @@ 220.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 220.5 +<head> 220.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 220.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 220.8 +<meta content="David Tschumperle" name="author"></meta> 220.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 220.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 220.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 220.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 220.13 +<style type="text/css"> 220.14 +<!-- 220.15 +body {background-color:white; font-family:sans-serif; } 220.16 +a:active{text-decoration:none; color:#303090} 220.17 +a:link{text-decoration:none; color:#303090} 220.18 +a:visited{text-decoration:none; color:#303090} 220.19 +a:hover{text-decoration:underline; color:#4E9F71} 220.20 +--> 220.21 +</style> 220.22 +<script language="JavaScript" type="text/javascript"> 220.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 220.24 + <!-- Web Site: http://redrival.com/eak/ --> 220.25 + <!-- This script and many more are available free online at --> 220.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 220.27 + <!-- Begin 220.28 + function NewWindow(mypage, myname, w, h, scroll) { 220.29 + var winl = (screen.width - w) / 2; 220.30 + var wint = (screen.height - h) / 2; 220.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 220.32 + win = window.open(mypage, myname, winprops) 220.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 220.34 + } 220.35 + // End --> 220.36 +</script> 220.37 +</head> 220.38 +<body> 220.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 220.40 + <tbody><tr><td> 220.41 + <hr noshade="noshade" size="1" width="90%"></hr> 220.42 + <center> 220.43 + <br/> 220.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 220.45 + <br/> 220.46 + </center> 220.47 + <hr noshade="noshade" size="1" width="90%"></hr> 220.48 + <center> 220.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 220.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 220.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 220.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 220.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 220.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 220.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 220.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 220.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 220.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 220.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 220.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 220.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 220.62 + </font> 220.63 + </td></tr></tbody> 220.64 + </table> 220.65 + </center> 220.66 + <hr noshade="noshade" size="1" width="90%"></hr> 220.67 + </td></tr></tbody> 220.68 +</table> 220.69 +<!-- Generated by Doxygen 1.5.7.1 --> 220.70 +<script type="text/javascript"> 220.71 +<!-- 220.72 +function changeDisplayState (e){ 220.73 + var num=this.id.replace(/[^[0-9]/g,''); 220.74 + var button=this.firstChild; 220.75 + var sectionDiv=document.getElementById('dynsection'+num); 220.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 220.77 + sectionDiv.style.display='block'; 220.78 + button.src='open.gif'; 220.79 + }else{ 220.80 + sectionDiv.style.display='none'; 220.81 + button.src='closed.gif'; 220.82 + } 220.83 +} 220.84 +function initDynSections(){ 220.85 + var divs=document.getElementsByTagName('div'); 220.86 + var sectionCounter=1; 220.87 + for(var i=0;i<divs.length-1;i++){ 220.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 220.89 + var header=divs[i]; 220.90 + var section=divs[i+1]; 220.91 + var button=header.firstChild; 220.92 + if (button!='IMG'){ 220.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 220.94 + button=document.createElement('img'); 220.95 + divs[i].insertBefore(button,divs[i].firstChild); 220.96 + } 220.97 + header.style.cursor='pointer'; 220.98 + header.onclick=changeDisplayState; 220.99 + header.id='dynheader'+sectionCounter; 220.100 + button.src='closed.gif'; 220.101 + section.id='dynsection'+sectionCounter; 220.102 + section.style.display='none'; 220.103 + section.style.marginLeft='14px'; 220.104 + sectionCounter++; 220.105 + } 220.106 + } 220.107 +} 220.108 +window.onload = initDynSections; 220.109 +--> 220.110 +</script> 220.111 +<div class="navigation" id="top"> 220.112 + <div class="tabs"> 220.113 + <ul> 220.114 + <li><a href="index.html"><span>Main Page</span></a></li> 220.115 + <li><a href="modules.html"><span>Modules</span></a></li> 220.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 220.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 220.118 + </ul> 220.119 + </div> 220.120 + <div class="tabs"> 220.121 + <ul> 220.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 220.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 220.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 220.125 + </ul> 220.126 + </div> 220.127 + <div class="tabs"> 220.128 + <ul> 220.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 220.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 220.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 220.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 220.133 + </ul> 220.134 + </div> 220.135 + <div class="tabs"> 220.136 + <ul> 220.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 220.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 220.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 220.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 220.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 220.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 220.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 220.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 220.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 220.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 220.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 220.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 220.149 + <li class="current"><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 220.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 220.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 220.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 220.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 220.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 220.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 220.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 220.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 220.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 220.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 220.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 220.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 220.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 220.163 + </ul> 220.164 + </div> 220.165 +</div> 220.166 +<div class="contents"> 220.167 +Here is a list of all documented class members with links to the class documentation for each member: 220.168 +<p> 220.169 +<h3><a class="anchor" name="index_m">- m -</a></h3><ul> 220.170 +<li>marching_cubes() 220.171 +: <a class="el" href="structcimg__library_1_1CImg.html#918eba9e7b484b7300c96885a82bc5fc">CImg</a> 220.172 +<li>marching_squares() 220.173 +: <a class="el" href="structcimg__library_1_1CImg.html#858076f1e68d6b616c3f8dd46c441f77">CImg</a> 220.174 +<li>matrix() 220.175 +: <a class="el" href="structcimg__library_1_1CImg.html#4dce73b905d98f22a5860464e571120f">CImg</a> 220.176 +<li>max() 220.177 +: <a class="el" href="structcimg__library_1_1CImg.html#f1a616293569fbda2a769b612c86a8ab">CImg</a> 220.178 +<li>maxmin() 220.179 +: <a class="el" href="structcimg__library_1_1CImg.html#b503599cdf7b7a90faa02346e9b0f45d">CImg</a> 220.180 +<li>mean() 220.181 +: <a class="el" href="structcimg__library_1_1CImg.html#15da7eecd10e53fa76b99379871b1c62">CImg</a> 220.182 +<li>median() 220.183 +: <a class="el" href="structcimg__library_1_1CImg.html#a74ed6a750d63ac3effff5edc06ad62f">CImg</a> 220.184 +<li>message 220.185 +: <a class="el" href="structcimg__library_1_1CImgException.html#4698f05956e353cfe926fc59e4b50a2e">CImgException</a> 220.186 +<li>min() 220.187 +: <a class="el" href="structcimg__library_1_1CImg.html#01164a5a9ce47a184c451d53f145cf44">CImg</a> 220.188 +<li>minmax() 220.189 +: <a class="el" href="structcimg__library_1_1CImg.html#37e03ef1b2ce96e5f90760889bad944e">CImg</a> 220.190 +<li>mirror() 220.191 +: <a class="el" href="structcimg__library_1_1CImg.html#91a5e5fd9431ca28eaeee0ea03419ab0">CImg</a> 220.192 +<li>mouse_x 220.193 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4e1249ac2eca0971a8c42f79c3a687d4">CImgDisplay</a> 220.194 +<li>mouse_y 220.195 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#adc7ac37cf1e624daddaa8d2c1587eef">CImgDisplay</a> 220.196 +<li>move() 220.197 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#27714e5f8da060a36e6614ada9d8df25">CImgDisplay</a> 220.198 +<li>MSE() 220.199 +: <a class="el" href="structcimg__library_1_1CImg.html#1af0c1920f11fdc01c71ed0d7117ab0c">CImg</a> 220.200 +<li>mul() 220.201 +: <a class="el" href="structcimg__library_1_1CImg.html#c026a207188625e845af7abf60a31a7b">CImg</a> 220.202 +</ul> 220.203 +</div> 220.204 +<hr noshade="noshade" size="1" width="100%"> 220.205 +<a href="http://sourceforge.net"> 220.206 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 220.207 +</a> 220.208 +<!-- Start of StatCounter Code --> 220.209 +<script type="text/javascript" language="javascript"> 220.210 +<!-- 220.211 +var sc_project=895001; 220.212 +var sc_invisible=1; 220.213 +var sc_partition=7; 220.214 +var sc_security="5ea85181"; 220.215 +//--> 220.216 +</script> 220.217 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 220.218 +<!-- End of StatCounter Code --> 220.219 +</body> 220.220 +</html>
221.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 221.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x6e.html Mon Aug 03 14:09:20 2009 +0100 221.3 @@ -0,0 +1,195 @@ 221.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 221.5 +<head> 221.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 221.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 221.8 +<meta content="David Tschumperle" name="author"></meta> 221.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 221.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 221.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 221.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 221.13 +<style type="text/css"> 221.14 +<!-- 221.15 +body {background-color:white; font-family:sans-serif; } 221.16 +a:active{text-decoration:none; color:#303090} 221.17 +a:link{text-decoration:none; color:#303090} 221.18 +a:visited{text-decoration:none; color:#303090} 221.19 +a:hover{text-decoration:underline; color:#4E9F71} 221.20 +--> 221.21 +</style> 221.22 +<script language="JavaScript" type="text/javascript"> 221.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 221.24 + <!-- Web Site: http://redrival.com/eak/ --> 221.25 + <!-- This script and many more are available free online at --> 221.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 221.27 + <!-- Begin 221.28 + function NewWindow(mypage, myname, w, h, scroll) { 221.29 + var winl = (screen.width - w) / 2; 221.30 + var wint = (screen.height - h) / 2; 221.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 221.32 + win = window.open(mypage, myname, winprops) 221.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 221.34 + } 221.35 + // End --> 221.36 +</script> 221.37 +</head> 221.38 +<body> 221.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 221.40 + <tbody><tr><td> 221.41 + <hr noshade="noshade" size="1" width="90%"></hr> 221.42 + <center> 221.43 + <br/> 221.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 221.45 + <br/> 221.46 + </center> 221.47 + <hr noshade="noshade" size="1" width="90%"></hr> 221.48 + <center> 221.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 221.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 221.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 221.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 221.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 221.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 221.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 221.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 221.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 221.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 221.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 221.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 221.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 221.62 + </font> 221.63 + </td></tr></tbody> 221.64 + </table> 221.65 + </center> 221.66 + <hr noshade="noshade" size="1" width="90%"></hr> 221.67 + </td></tr></tbody> 221.68 +</table> 221.69 +<!-- Generated by Doxygen 1.5.7.1 --> 221.70 +<script type="text/javascript"> 221.71 +<!-- 221.72 +function changeDisplayState (e){ 221.73 + var num=this.id.replace(/[^[0-9]/g,''); 221.74 + var button=this.firstChild; 221.75 + var sectionDiv=document.getElementById('dynsection'+num); 221.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 221.77 + sectionDiv.style.display='block'; 221.78 + button.src='open.gif'; 221.79 + }else{ 221.80 + sectionDiv.style.display='none'; 221.81 + button.src='closed.gif'; 221.82 + } 221.83 +} 221.84 +function initDynSections(){ 221.85 + var divs=document.getElementsByTagName('div'); 221.86 + var sectionCounter=1; 221.87 + for(var i=0;i<divs.length-1;i++){ 221.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 221.89 + var header=divs[i]; 221.90 + var section=divs[i+1]; 221.91 + var button=header.firstChild; 221.92 + if (button!='IMG'){ 221.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 221.94 + button=document.createElement('img'); 221.95 + divs[i].insertBefore(button,divs[i].firstChild); 221.96 + } 221.97 + header.style.cursor='pointer'; 221.98 + header.onclick=changeDisplayState; 221.99 + header.id='dynheader'+sectionCounter; 221.100 + button.src='closed.gif'; 221.101 + section.id='dynsection'+sectionCounter; 221.102 + section.style.display='none'; 221.103 + section.style.marginLeft='14px'; 221.104 + sectionCounter++; 221.105 + } 221.106 + } 221.107 +} 221.108 +window.onload = initDynSections; 221.109 +--> 221.110 +</script> 221.111 +<div class="navigation" id="top"> 221.112 + <div class="tabs"> 221.113 + <ul> 221.114 + <li><a href="index.html"><span>Main Page</span></a></li> 221.115 + <li><a href="modules.html"><span>Modules</span></a></li> 221.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 221.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 221.118 + </ul> 221.119 + </div> 221.120 + <div class="tabs"> 221.121 + <ul> 221.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 221.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 221.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 221.125 + </ul> 221.126 + </div> 221.127 + <div class="tabs"> 221.128 + <ul> 221.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 221.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 221.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 221.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 221.133 + </ul> 221.134 + </div> 221.135 + <div class="tabs"> 221.136 + <ul> 221.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 221.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 221.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 221.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 221.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 221.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 221.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 221.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 221.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 221.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 221.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 221.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 221.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 221.150 + <li class="current"><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 221.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 221.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 221.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 221.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 221.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 221.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 221.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 221.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 221.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 221.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 221.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 221.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 221.163 + </ul> 221.164 + </div> 221.165 +</div> 221.166 +<div class="contents"> 221.167 +Here is a list of all documented class members with links to the class documentation for each member: 221.168 +<p> 221.169 +<h3><a class="anchor" name="index_n">- n -</a></h3><ul> 221.170 +<li>noise() 221.171 +: <a class="el" href="structcimg__library_1_1CImg.html#caf16c667ccfe861ba7c565537f67a1a">CImg</a> 221.172 +<li>norm() 221.173 +: <a class="el" href="structcimg__library_1_1CImg.html#7de8144e906d2610c4a011056e239595">CImg</a> 221.174 +<li>normalization 221.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a0ca4e92f24cf5b7896709dba3cf771a">CImgDisplay</a> 221.176 +<li>normalize() 221.177 +: <a class="el" href="structcimg__library_1_1CImg.html#447de4206a2c264f2c73e825ada11952">CImg</a> 221.178 +<li>normalscreen() 221.179 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#971f4ac8d406a926d71f18c21c869f90">CImgDisplay</a> 221.180 +</ul> 221.181 +</div> 221.182 +<hr noshade="noshade" size="1" width="100%"> 221.183 +<a href="http://sourceforge.net"> 221.184 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 221.185 +</a> 221.186 +<!-- Start of StatCounter Code --> 221.187 +<script type="text/javascript" language="javascript"> 221.188 +<!-- 221.189 +var sc_project=895001; 221.190 +var sc_invisible=1; 221.191 +var sc_partition=7; 221.192 +var sc_security="5ea85181"; 221.193 +//--> 221.194 +</script> 221.195 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 221.196 +<!-- End of StatCounter Code --> 221.197 +</body> 221.198 +</html>
222.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 222.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x6f.html Mon Aug 03 14:09:20 2009 +0100 222.3 @@ -0,0 +1,245 @@ 222.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 222.5 +<head> 222.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 222.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 222.8 +<meta content="David Tschumperle" name="author"></meta> 222.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 222.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 222.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 222.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 222.13 +<style type="text/css"> 222.14 +<!-- 222.15 +body {background-color:white; font-family:sans-serif; } 222.16 +a:active{text-decoration:none; color:#303090} 222.17 +a:link{text-decoration:none; color:#303090} 222.18 +a:visited{text-decoration:none; color:#303090} 222.19 +a:hover{text-decoration:underline; color:#4E9F71} 222.20 +--> 222.21 +</style> 222.22 +<script language="JavaScript" type="text/javascript"> 222.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 222.24 + <!-- Web Site: http://redrival.com/eak/ --> 222.25 + <!-- This script and many more are available free online at --> 222.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 222.27 + <!-- Begin 222.28 + function NewWindow(mypage, myname, w, h, scroll) { 222.29 + var winl = (screen.width - w) / 2; 222.30 + var wint = (screen.height - h) / 2; 222.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 222.32 + win = window.open(mypage, myname, winprops) 222.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 222.34 + } 222.35 + // End --> 222.36 +</script> 222.37 +</head> 222.38 +<body> 222.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 222.40 + <tbody><tr><td> 222.41 + <hr noshade="noshade" size="1" width="90%"></hr> 222.42 + <center> 222.43 + <br/> 222.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 222.45 + <br/> 222.46 + </center> 222.47 + <hr noshade="noshade" size="1" width="90%"></hr> 222.48 + <center> 222.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 222.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 222.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 222.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 222.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 222.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 222.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 222.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 222.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 222.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 222.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 222.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 222.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 222.62 + </font> 222.63 + </td></tr></tbody> 222.64 + </table> 222.65 + </center> 222.66 + <hr noshade="noshade" size="1" width="90%"></hr> 222.67 + </td></tr></tbody> 222.68 +</table> 222.69 +<!-- Generated by Doxygen 1.5.7.1 --> 222.70 +<script type="text/javascript"> 222.71 +<!-- 222.72 +function changeDisplayState (e){ 222.73 + var num=this.id.replace(/[^[0-9]/g,''); 222.74 + var button=this.firstChild; 222.75 + var sectionDiv=document.getElementById('dynsection'+num); 222.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 222.77 + sectionDiv.style.display='block'; 222.78 + button.src='open.gif'; 222.79 + }else{ 222.80 + sectionDiv.style.display='none'; 222.81 + button.src='closed.gif'; 222.82 + } 222.83 +} 222.84 +function initDynSections(){ 222.85 + var divs=document.getElementsByTagName('div'); 222.86 + var sectionCounter=1; 222.87 + for(var i=0;i<divs.length-1;i++){ 222.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 222.89 + var header=divs[i]; 222.90 + var section=divs[i+1]; 222.91 + var button=header.firstChild; 222.92 + if (button!='IMG'){ 222.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 222.94 + button=document.createElement('img'); 222.95 + divs[i].insertBefore(button,divs[i].firstChild); 222.96 + } 222.97 + header.style.cursor='pointer'; 222.98 + header.onclick=changeDisplayState; 222.99 + header.id='dynheader'+sectionCounter; 222.100 + button.src='closed.gif'; 222.101 + section.id='dynsection'+sectionCounter; 222.102 + section.style.display='none'; 222.103 + section.style.marginLeft='14px'; 222.104 + sectionCounter++; 222.105 + } 222.106 + } 222.107 +} 222.108 +window.onload = initDynSections; 222.109 +--> 222.110 +</script> 222.111 +<div class="navigation" id="top"> 222.112 + <div class="tabs"> 222.113 + <ul> 222.114 + <li><a href="index.html"><span>Main Page</span></a></li> 222.115 + <li><a href="modules.html"><span>Modules</span></a></li> 222.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 222.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 222.118 + </ul> 222.119 + </div> 222.120 + <div class="tabs"> 222.121 + <ul> 222.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 222.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 222.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 222.125 + </ul> 222.126 + </div> 222.127 + <div class="tabs"> 222.128 + <ul> 222.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 222.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 222.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 222.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 222.133 + </ul> 222.134 + </div> 222.135 + <div class="tabs"> 222.136 + <ul> 222.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 222.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 222.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 222.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 222.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 222.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 222.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 222.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 222.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 222.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 222.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 222.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 222.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 222.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 222.151 + <li class="current"><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 222.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 222.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 222.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 222.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 222.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 222.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 222.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 222.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 222.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 222.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 222.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 222.163 + </ul> 222.164 + </div> 222.165 +</div> 222.166 +<div class="contents"> 222.167 +Here is a list of all documented class members with links to the class documentation for each member: 222.168 +<p> 222.169 +<h3><a class="anchor" name="index_o">- o -</a></h3><ul> 222.170 +<li>offset() 222.171 +: <a class="el" href="structcimg__library_1_1CImg.html#afc4c62eb956815235bb896a1707f711">CImg</a> 222.172 +<li>operator bool() 222.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a385aa18f5e42db5a415c25a90f4193d">CImgDisplay</a> 222.174 +, <a class="el" href="structcimg__library_1_1CImgList.html#a385aa18f5e42db5a415c25a90f4193d">CImgList</a> 222.175 +, <a class="el" href="structcimg__library_1_1CImg.html#a385aa18f5e42db5a415c25a90f4193d">CImg</a> 222.176 +<li>operator!=() 222.177 +: <a class="el" href="structcimg__library_1_1CImg.html#826e9d8fbbc121776b306f8c2ad13e22">CImg</a> 222.178 +<li>operator%() 222.179 +: <a class="el" href="structcimg__library_1_1CImg.html#248f258fd888937bd3ff1bfd6262cf86">CImg</a> 222.180 +<li>operator%=() 222.181 +: <a class="el" href="structcimg__library_1_1CImg.html#dc3ca29103dd08337dd5b314fc739e8f">CImg</a> 222.182 +<li>operator&() 222.183 +: <a class="el" href="structcimg__library_1_1CImg.html#63777d8b423f5bf16a60be4466ec70d4">CImg</a> 222.184 +<li>operator&=() 222.185 +: <a class="el" href="structcimg__library_1_1CImg.html#788c26161bb12c4fed30b2a8edf05126">CImg</a> 222.186 +<li>operator()() 222.187 +: <a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b">CImg</a> 222.188 +<li>operator*=() 222.189 +: <a class="el" href="structcimg__library_1_1CImg.html#770aafd607168611eace12d46d5f2bfd">CImg</a> 222.190 +<li>operator+() 222.191 +: <a class="el" href="structcimg__library_1_1CImg.html#637e0346bd7e4426d32e32aab42bd3f6">CImg</a> 222.192 +<li>operator++() 222.193 +: <a class="el" href="structcimg__library_1_1CImg.html#ed696f4e890e8da6f6ebaa3171aa2dd7">CImg</a> 222.194 +<li>operator+=() 222.195 +: <a class="el" href="structcimg__library_1_1CImg.html#f953b216980f8519642514380f3bfdba">CImg</a> 222.196 +<li>operator-() 222.197 +: <a class="el" href="structcimg__library_1_1CImg.html#e8c181b212c22dbee4ee228cac4c00d4">CImg</a> 222.198 +<li>operator--() 222.199 +: <a class="el" href="structcimg__library_1_1CImg.html#8d71ada97bd3d54d3f4265f0059273cf">CImg</a> 222.200 +<li>operator-=() 222.201 +: <a class="el" href="structcimg__library_1_1CImg.html#f18d9bcb5010cdea4c3f6496dd36ccb4">CImg</a> 222.202 +<li>operator/=() 222.203 +: <a class="el" href="structcimg__library_1_1CImg.html#9a6123b197ed6406eda560863bbe4cc1">CImg</a> 222.204 +<li>operator<<() 222.205 +: <a class="el" href="structcimg__library_1_1CImg.html#9ae2c81016de21b85487cb678a43afb8">CImg</a> 222.206 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#86ffd9e1b491dab79d3b862a26e56053">CImgDisplay</a> 222.207 +<li>operator<<=() 222.208 +: <a class="el" href="structcimg__library_1_1CImg.html#02dd49d59f77aa41446ce028f9771151">CImg</a> 222.209 +<li>operator=() 222.210 +: <a class="el" href="structcimg__library_1_1CImg.html#b8993b2170b87343f86f3e07fe0b7348">CImg</a> 222.211 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#81d1882a4d7d0579298fe6fc706fca40">CImgDisplay</a> 222.212 +<li>operator==() 222.213 +: <a class="el" href="structcimg__library_1_1CImg.html#0ad220d8708e61416b9b9255aa612740">CImg</a> 222.214 +<li>operator>>() 222.215 +: <a class="el" href="structcimg__library_1_1CImg.html#622413644789d18b3cfff7ff309c95fd">CImg</a> 222.216 +<li>operator>>=() 222.217 +: <a class="el" href="structcimg__library_1_1CImg.html#2ecc6f016d1358b12e010dbe75e4d576">CImg</a> 222.218 +<li>operator[]() 222.219 +: <a class="el" href="structcimg__library_1_1CImg.html#87f4042f1af3428fa0ad1a9480286abe">CImg</a> 222.220 +<li>operator^() 222.221 +: <a class="el" href="structcimg__library_1_1CImg.html#ff2d39b04a4a00a4c4a058872a235380">CImg</a> 222.222 +<li>operator^=() 222.223 +: <a class="el" href="structcimg__library_1_1CImg.html#c51bdadcbdffee3dfda3914ec6dfdbfd">CImg</a> 222.224 +<li>operator|() 222.225 +: <a class="el" href="structcimg__library_1_1CImg.html#a8a9d727ce82153f4df2fe8e1292bad0">CImg</a> 222.226 +<li>operator|=() 222.227 +: <a class="el" href="structcimg__library_1_1CImg.html#baa1bd39411a23a524c6baf0c55745d3">CImg</a> 222.228 +<li>operator~() 222.229 +: <a class="el" href="structcimg__library_1_1CImg.html#0752b44324e973aed012d79bc9a2d3fd">CImg</a> 222.230 +</ul> 222.231 +</div> 222.232 +<hr noshade="noshade" size="1" width="100%"> 222.233 +<a href="http://sourceforge.net"> 222.234 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 222.235 +</a> 222.236 +<!-- Start of StatCounter Code --> 222.237 +<script type="text/javascript" language="javascript"> 222.238 +<!-- 222.239 +var sc_project=895001; 222.240 +var sc_invisible=1; 222.241 +var sc_partition=7; 222.242 +var sc_security="5ea85181"; 222.243 +//--> 222.244 +</script> 222.245 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 222.246 +<!-- End of StatCounter Code --> 222.247 +</body> 222.248 +</html>
223.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 223.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x70.html Mon Aug 03 14:09:20 2009 +0100 223.3 @@ -0,0 +1,212 @@ 223.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 223.5 +<head> 223.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 223.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 223.8 +<meta content="David Tschumperle" name="author"></meta> 223.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 223.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 223.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 223.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 223.13 +<style type="text/css"> 223.14 +<!-- 223.15 +body {background-color:white; font-family:sans-serif; } 223.16 +a:active{text-decoration:none; color:#303090} 223.17 +a:link{text-decoration:none; color:#303090} 223.18 +a:visited{text-decoration:none; color:#303090} 223.19 +a:hover{text-decoration:underline; color:#4E9F71} 223.20 +--> 223.21 +</style> 223.22 +<script language="JavaScript" type="text/javascript"> 223.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 223.24 + <!-- Web Site: http://redrival.com/eak/ --> 223.25 + <!-- This script and many more are available free online at --> 223.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 223.27 + <!-- Begin 223.28 + function NewWindow(mypage, myname, w, h, scroll) { 223.29 + var winl = (screen.width - w) / 2; 223.30 + var wint = (screen.height - h) / 2; 223.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 223.32 + win = window.open(mypage, myname, winprops) 223.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 223.34 + } 223.35 + // End --> 223.36 +</script> 223.37 +</head> 223.38 +<body> 223.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 223.40 + <tbody><tr><td> 223.41 + <hr noshade="noshade" size="1" width="90%"></hr> 223.42 + <center> 223.43 + <br/> 223.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 223.45 + <br/> 223.46 + </center> 223.47 + <hr noshade="noshade" size="1" width="90%"></hr> 223.48 + <center> 223.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 223.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 223.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 223.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 223.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 223.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 223.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 223.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 223.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 223.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 223.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 223.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 223.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 223.62 + </font> 223.63 + </td></tr></tbody> 223.64 + </table> 223.65 + </center> 223.66 + <hr noshade="noshade" size="1" width="90%"></hr> 223.67 + </td></tr></tbody> 223.68 +</table> 223.69 +<!-- Generated by Doxygen 1.5.7.1 --> 223.70 +<script type="text/javascript"> 223.71 +<!-- 223.72 +function changeDisplayState (e){ 223.73 + var num=this.id.replace(/[^[0-9]/g,''); 223.74 + var button=this.firstChild; 223.75 + var sectionDiv=document.getElementById('dynsection'+num); 223.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 223.77 + sectionDiv.style.display='block'; 223.78 + button.src='open.gif'; 223.79 + }else{ 223.80 + sectionDiv.style.display='none'; 223.81 + button.src='closed.gif'; 223.82 + } 223.83 +} 223.84 +function initDynSections(){ 223.85 + var divs=document.getElementsByTagName('div'); 223.86 + var sectionCounter=1; 223.87 + for(var i=0;i<divs.length-1;i++){ 223.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 223.89 + var header=divs[i]; 223.90 + var section=divs[i+1]; 223.91 + var button=header.firstChild; 223.92 + if (button!='IMG'){ 223.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 223.94 + button=document.createElement('img'); 223.95 + divs[i].insertBefore(button,divs[i].firstChild); 223.96 + } 223.97 + header.style.cursor='pointer'; 223.98 + header.onclick=changeDisplayState; 223.99 + header.id='dynheader'+sectionCounter; 223.100 + button.src='closed.gif'; 223.101 + section.id='dynsection'+sectionCounter; 223.102 + section.style.display='none'; 223.103 + section.style.marginLeft='14px'; 223.104 + sectionCounter++; 223.105 + } 223.106 + } 223.107 +} 223.108 +window.onload = initDynSections; 223.109 +--> 223.110 +</script> 223.111 +<div class="navigation" id="top"> 223.112 + <div class="tabs"> 223.113 + <ul> 223.114 + <li><a href="index.html"><span>Main Page</span></a></li> 223.115 + <li><a href="modules.html"><span>Modules</span></a></li> 223.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 223.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 223.118 + </ul> 223.119 + </div> 223.120 + <div class="tabs"> 223.121 + <ul> 223.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 223.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 223.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 223.125 + </ul> 223.126 + </div> 223.127 + <div class="tabs"> 223.128 + <ul> 223.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 223.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 223.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 223.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 223.133 + </ul> 223.134 + </div> 223.135 + <div class="tabs"> 223.136 + <ul> 223.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 223.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 223.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 223.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 223.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 223.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 223.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 223.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 223.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 223.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 223.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 223.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 223.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 223.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 223.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 223.152 + <li class="current"><a href="functions_0x70.html#index_p"><span>p</span></a></li> 223.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 223.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 223.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 223.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 223.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 223.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 223.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 223.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 223.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 223.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 223.163 + </ul> 223.164 + </div> 223.165 +</div> 223.166 +<div class="contents"> 223.167 +Here is a list of all documented class members with links to the class documentation for each member: 223.168 +<p> 223.169 +<h3><a class="anchor" name="index_p">- p -</a></h3><ul> 223.170 +<li>paint() 223.171 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4e67d156351dd7dfdfd2f04e563c4f2a">CImgDisplay</a> 223.172 +<li>permute() 223.173 +: <a class="el" href="structcimg__library_1_1CImg.html#9b26a9b20ac9729e26552e8d44a9d478">CImg</a> 223.174 +<li>permute_axes() 223.175 +: <a class="el" href="structcimg__library_1_1CImg.html#f5eac37234edfffffe75770e4a492b15">CImg</a> 223.176 +<li>pixel_type() 223.177 +: <a class="el" href="structcimg__library_1_1CImg.html#b7d3a61366cf906c03af6c8fa13309a7">CImg</a> 223.178 +, <a class="el" href="structcimg__library_1_1CImgList.html#b7d3a61366cf906c03af6c8fa13309a7">CImgList</a> 223.179 +<li>plane3d() 223.180 +: <a class="el" href="structcimg__library_1_1CImg.html#dcc51ad58ccf7a05d28a6dd4ffa446d9">CImg</a> 223.181 +<li>pointwise_norm() 223.182 +: <a class="el" href="structcimg__library_1_1CImg.html#f2cceb3e14d6650bc7d1c89afedba15a">CImg</a> 223.183 +<li>pointwise_orientation() 223.184 +: <a class="el" href="structcimg__library_1_1CImg.html#2662d70fed319ed056836696c3a97499">CImg</a> 223.185 +<li>pow() 223.186 +: <a class="el" href="structcimg__library_1_1CImg.html#e2f27aee992cf2189c56fdbaaf72ef76">CImg</a> 223.187 +<li>print() 223.188 +: <a class="el" href="structcimg__library_1_1CImg.html#6996328dda8169890a02942e19b6d445">CImg</a> 223.189 +<li>projections2d() 223.190 +: <a class="el" href="structcimg__library_1_1CImg.html#4f4f598be55ec6fb4af8c0f9bb05b91c">CImg</a> 223.191 +<li>pseudoinvert() 223.192 +: <a class="el" href="structcimg__library_1_1CImg.html#bff5169ef56ddce3102cfa3b6de0bd19">CImg</a> 223.193 +<li>PSNR() 223.194 +: <a class="el" href="structcimg__library_1_1CImg.html#f08ee23c8bdb4913f792676f385161ea">CImg</a> 223.195 +<li>ptr() 223.196 +: <a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda">CImg</a> 223.197 +</ul> 223.198 +</div> 223.199 +<hr noshade="noshade" size="1" width="100%"> 223.200 +<a href="http://sourceforge.net"> 223.201 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 223.202 +</a> 223.203 +<!-- Start of StatCounter Code --> 223.204 +<script type="text/javascript" language="javascript"> 223.205 +<!-- 223.206 +var sc_project=895001; 223.207 +var sc_invisible=1; 223.208 +var sc_partition=7; 223.209 +var sc_security="5ea85181"; 223.210 +//--> 223.211 +</script> 223.212 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 223.213 +<!-- End of StatCounter Code --> 223.214 +</body> 223.215 +</html>
224.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 224.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x71.html Mon Aug 03 14:09:20 2009 +0100 224.3 @@ -0,0 +1,187 @@ 224.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 224.5 +<head> 224.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 224.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 224.8 +<meta content="David Tschumperle" name="author"></meta> 224.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 224.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 224.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 224.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 224.13 +<style type="text/css"> 224.14 +<!-- 224.15 +body {background-color:white; font-family:sans-serif; } 224.16 +a:active{text-decoration:none; color:#303090} 224.17 +a:link{text-decoration:none; color:#303090} 224.18 +a:visited{text-decoration:none; color:#303090} 224.19 +a:hover{text-decoration:underline; color:#4E9F71} 224.20 +--> 224.21 +</style> 224.22 +<script language="JavaScript" type="text/javascript"> 224.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 224.24 + <!-- Web Site: http://redrival.com/eak/ --> 224.25 + <!-- This script and many more are available free online at --> 224.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 224.27 + <!-- Begin 224.28 + function NewWindow(mypage, myname, w, h, scroll) { 224.29 + var winl = (screen.width - w) / 2; 224.30 + var wint = (screen.height - h) / 2; 224.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 224.32 + win = window.open(mypage, myname, winprops) 224.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 224.34 + } 224.35 + // End --> 224.36 +</script> 224.37 +</head> 224.38 +<body> 224.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 224.40 + <tbody><tr><td> 224.41 + <hr noshade="noshade" size="1" width="90%"></hr> 224.42 + <center> 224.43 + <br/> 224.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 224.45 + <br/> 224.46 + </center> 224.47 + <hr noshade="noshade" size="1" width="90%"></hr> 224.48 + <center> 224.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 224.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 224.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 224.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 224.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 224.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 224.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 224.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 224.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 224.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 224.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 224.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 224.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 224.62 + </font> 224.63 + </td></tr></tbody> 224.64 + </table> 224.65 + </center> 224.66 + <hr noshade="noshade" size="1" width="90%"></hr> 224.67 + </td></tr></tbody> 224.68 +</table> 224.69 +<!-- Generated by Doxygen 1.5.7.1 --> 224.70 +<script type="text/javascript"> 224.71 +<!-- 224.72 +function changeDisplayState (e){ 224.73 + var num=this.id.replace(/[^[0-9]/g,''); 224.74 + var button=this.firstChild; 224.75 + var sectionDiv=document.getElementById('dynsection'+num); 224.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 224.77 + sectionDiv.style.display='block'; 224.78 + button.src='open.gif'; 224.79 + }else{ 224.80 + sectionDiv.style.display='none'; 224.81 + button.src='closed.gif'; 224.82 + } 224.83 +} 224.84 +function initDynSections(){ 224.85 + var divs=document.getElementsByTagName('div'); 224.86 + var sectionCounter=1; 224.87 + for(var i=0;i<divs.length-1;i++){ 224.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 224.89 + var header=divs[i]; 224.90 + var section=divs[i+1]; 224.91 + var button=header.firstChild; 224.92 + if (button!='IMG'){ 224.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 224.94 + button=document.createElement('img'); 224.95 + divs[i].insertBefore(button,divs[i].firstChild); 224.96 + } 224.97 + header.style.cursor='pointer'; 224.98 + header.onclick=changeDisplayState; 224.99 + header.id='dynheader'+sectionCounter; 224.100 + button.src='closed.gif'; 224.101 + section.id='dynsection'+sectionCounter; 224.102 + section.style.display='none'; 224.103 + section.style.marginLeft='14px'; 224.104 + sectionCounter++; 224.105 + } 224.106 + } 224.107 +} 224.108 +window.onload = initDynSections; 224.109 +--> 224.110 +</script> 224.111 +<div class="navigation" id="top"> 224.112 + <div class="tabs"> 224.113 + <ul> 224.114 + <li><a href="index.html"><span>Main Page</span></a></li> 224.115 + <li><a href="modules.html"><span>Modules</span></a></li> 224.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 224.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 224.118 + </ul> 224.119 + </div> 224.120 + <div class="tabs"> 224.121 + <ul> 224.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 224.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 224.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 224.125 + </ul> 224.126 + </div> 224.127 + <div class="tabs"> 224.128 + <ul> 224.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 224.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 224.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 224.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 224.133 + </ul> 224.134 + </div> 224.135 + <div class="tabs"> 224.136 + <ul> 224.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 224.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 224.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 224.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 224.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 224.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 224.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 224.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 224.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 224.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 224.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 224.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 224.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 224.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 224.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 224.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 224.153 + <li class="current"><a href="functions_0x71.html#index_q"><span>q</span></a></li> 224.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 224.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 224.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 224.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 224.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 224.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 224.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 224.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 224.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 224.163 + </ul> 224.164 + </div> 224.165 +</div> 224.166 +<div class="contents"> 224.167 +Here is a list of all documented class members with links to the class documentation for each member: 224.168 +<p> 224.169 +<h3><a class="anchor" name="index_q">- q -</a></h3><ul> 224.170 +<li>quantize() 224.171 +: <a class="el" href="structcimg__library_1_1CImg.html#96fb1f65e6aff268da75be5e6adbd1d1">CImg</a> 224.172 +</ul> 224.173 +</div> 224.174 +<hr noshade="noshade" size="1" width="100%"> 224.175 +<a href="http://sourceforge.net"> 224.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 224.177 +</a> 224.178 +<!-- Start of StatCounter Code --> 224.179 +<script type="text/javascript" language="javascript"> 224.180 +<!-- 224.181 +var sc_project=895001; 224.182 +var sc_invisible=1; 224.183 +var sc_partition=7; 224.184 +var sc_security="5ea85181"; 224.185 +//--> 224.186 +</script> 224.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 224.188 +<!-- End of StatCounter Code --> 224.189 +</body> 224.190 +</html>
225.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 225.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x72.html Mon Aug 03 14:09:20 2009 +0100 225.3 @@ -0,0 +1,237 @@ 225.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 225.5 +<head> 225.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 225.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 225.8 +<meta content="David Tschumperle" name="author"></meta> 225.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 225.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 225.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 225.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 225.13 +<style type="text/css"> 225.14 +<!-- 225.15 +body {background-color:white; font-family:sans-serif; } 225.16 +a:active{text-decoration:none; color:#303090} 225.17 +a:link{text-decoration:none; color:#303090} 225.18 +a:visited{text-decoration:none; color:#303090} 225.19 +a:hover{text-decoration:underline; color:#4E9F71} 225.20 +--> 225.21 +</style> 225.22 +<script language="JavaScript" type="text/javascript"> 225.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 225.24 + <!-- Web Site: http://redrival.com/eak/ --> 225.25 + <!-- This script and many more are available free online at --> 225.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 225.27 + <!-- Begin 225.28 + function NewWindow(mypage, myname, w, h, scroll) { 225.29 + var winl = (screen.width - w) / 2; 225.30 + var wint = (screen.height - h) / 2; 225.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 225.32 + win = window.open(mypage, myname, winprops) 225.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 225.34 + } 225.35 + // End --> 225.36 +</script> 225.37 +</head> 225.38 +<body> 225.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 225.40 + <tbody><tr><td> 225.41 + <hr noshade="noshade" size="1" width="90%"></hr> 225.42 + <center> 225.43 + <br/> 225.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 225.45 + <br/> 225.46 + </center> 225.47 + <hr noshade="noshade" size="1" width="90%"></hr> 225.48 + <center> 225.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 225.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 225.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 225.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 225.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 225.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 225.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 225.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 225.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 225.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 225.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 225.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 225.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 225.62 + </font> 225.63 + </td></tr></tbody> 225.64 + </table> 225.65 + </center> 225.66 + <hr noshade="noshade" size="1" width="90%"></hr> 225.67 + </td></tr></tbody> 225.68 +</table> 225.69 +<!-- Generated by Doxygen 1.5.7.1 --> 225.70 +<script type="text/javascript"> 225.71 +<!-- 225.72 +function changeDisplayState (e){ 225.73 + var num=this.id.replace(/[^[0-9]/g,''); 225.74 + var button=this.firstChild; 225.75 + var sectionDiv=document.getElementById('dynsection'+num); 225.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 225.77 + sectionDiv.style.display='block'; 225.78 + button.src='open.gif'; 225.79 + }else{ 225.80 + sectionDiv.style.display='none'; 225.81 + button.src='closed.gif'; 225.82 + } 225.83 +} 225.84 +function initDynSections(){ 225.85 + var divs=document.getElementsByTagName('div'); 225.86 + var sectionCounter=1; 225.87 + for(var i=0;i<divs.length-1;i++){ 225.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 225.89 + var header=divs[i]; 225.90 + var section=divs[i+1]; 225.91 + var button=header.firstChild; 225.92 + if (button!='IMG'){ 225.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 225.94 + button=document.createElement('img'); 225.95 + divs[i].insertBefore(button,divs[i].firstChild); 225.96 + } 225.97 + header.style.cursor='pointer'; 225.98 + header.onclick=changeDisplayState; 225.99 + header.id='dynheader'+sectionCounter; 225.100 + button.src='closed.gif'; 225.101 + section.id='dynsection'+sectionCounter; 225.102 + section.style.display='none'; 225.103 + section.style.marginLeft='14px'; 225.104 + sectionCounter++; 225.105 + } 225.106 + } 225.107 +} 225.108 +window.onload = initDynSections; 225.109 +--> 225.110 +</script> 225.111 +<div class="navigation" id="top"> 225.112 + <div class="tabs"> 225.113 + <ul> 225.114 + <li><a href="index.html"><span>Main Page</span></a></li> 225.115 + <li><a href="modules.html"><span>Modules</span></a></li> 225.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 225.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 225.118 + </ul> 225.119 + </div> 225.120 + <div class="tabs"> 225.121 + <ul> 225.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 225.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 225.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 225.125 + </ul> 225.126 + </div> 225.127 + <div class="tabs"> 225.128 + <ul> 225.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 225.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 225.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 225.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 225.133 + </ul> 225.134 + </div> 225.135 + <div class="tabs"> 225.136 + <ul> 225.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 225.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 225.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 225.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 225.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 225.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 225.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 225.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 225.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 225.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 225.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 225.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 225.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 225.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 225.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 225.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 225.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 225.154 + <li class="current"><a href="functions_0x72.html#index_r"><span>r</span></a></li> 225.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 225.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 225.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 225.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 225.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 225.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 225.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 225.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 225.163 + </ul> 225.164 + </div> 225.165 +</div> 225.166 +<div class="contents"> 225.167 +Here is a list of all documented class members with links to the class documentation for each member: 225.168 +<p> 225.169 +<h3><a class="anchor" name="index_r">- r -</a></h3><ul> 225.170 +<li>rainbow_LUT8() 225.171 +: <a class="el" href="structcimg__library_1_1CImg.html#f3c82dae3264131f819857014435bbe3">CImg</a> 225.172 +<li>rand() 225.173 +: <a class="el" href="structcimg__library_1_1CImg.html#bc7e3023df86263a49a224317c819779">CImg</a> 225.174 +<li>released_key 225.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#170a7c96fc7e3f262052d29b83430429">CImgDisplay</a> 225.176 +<li>render() 225.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#1e0eea237d50ddb7e010a8b5edb5fdf4">CImgDisplay</a> 225.178 +<li>resize() 225.179 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4fe0da6092c184682ff767dd5b83bbc5">CImgDisplay</a> 225.180 +, <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4">CImg</a> 225.181 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#fee064d94e1ec2e764af537fbee30d13">CImgDisplay</a> 225.182 +, <a class="el" href="structcimg__library_1_1CImg.html#ed8c4bc86e30f3cc55c46f1329e081a1">CImg</a> 225.183 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#f4d082c39b75c096acb3fee6cda89b19">CImgDisplay</a> 225.184 +<li>resize_doubleXY() 225.185 +: <a class="el" href="structcimg__library_1_1CImg.html#a2fa295816582cb2e62d530c54533055">CImg</a> 225.186 +<li>resize_halfXY() 225.187 +: <a class="el" href="structcimg__library_1_1CImg.html#37dbb62f101c6076db3d4d9f45684b30">CImg</a> 225.188 +<li>resize_object3d() 225.189 +: <a class="el" href="structcimg__library_1_1CImg.html#cf489c894d7f7394912d5dd4c05c1538">CImg</a> 225.190 +<li>resize_tripleXY() 225.191 +: <a class="el" href="structcimg__library_1_1CImg.html#64f4be91725b57a74d080b848660676c">CImg</a> 225.192 +<li>RGBtoBayer() 225.193 +: <a class="el" href="structcimg__library_1_1CImg.html#b4e692d67bb005b4b25555693d15f739">CImg</a> 225.194 +<li>RGBtoCMY() 225.195 +: <a class="el" href="structcimg__library_1_1CImg.html#2a5e7725a4aafab45bfecc7c31987aca">CImg</a> 225.196 +<li>RGBtoCMYK() 225.197 +: <a class="el" href="structcimg__library_1_1CImg.html#3d28b9e43e5d74e8b584844295bb1aa0">CImg</a> 225.198 +<li>RGBtoHSI() 225.199 +: <a class="el" href="structcimg__library_1_1CImg.html#e5820d33b36cc0266b98c0d9c9f0c3a6">CImg</a> 225.200 +<li>RGBtoHSL() 225.201 +: <a class="el" href="structcimg__library_1_1CImg.html#3b76b35625d85926b4e88227f89f734e">CImg</a> 225.202 +<li>RGBtoHSV() 225.203 +: <a class="el" href="structcimg__library_1_1CImg.html#6c0ab36ca2418c9b62590cdfdcbdc793">CImg</a> 225.204 +<li>RGBtoLab() 225.205 +: <a class="el" href="structcimg__library_1_1CImg.html#eb2b9b79af81584352a2e5f056b1a6df">CImg</a> 225.206 +<li>RGBtoLUT() 225.207 +: <a class="el" href="structcimg__library_1_1CImg.html#7db4236b8223d536bfe0a6fa6224e0a5">CImg</a> 225.208 +<li>RGBtoxyY() 225.209 +: <a class="el" href="structcimg__library_1_1CImg.html#27cd306be7eb34f49f9e880a9dd740ba">CImg</a> 225.210 +<li>RGBtoXYZ() 225.211 +: <a class="el" href="structcimg__library_1_1CImg.html#70c6c7a5d8ed24b2e618ab89f2dbadda">CImg</a> 225.212 +<li>RGBtoYCbCr() 225.213 +: <a class="el" href="structcimg__library_1_1CImg.html#fbc08f08341e56ebf9b27e3ddacc9ee6">CImg</a> 225.214 +<li>RGBtoYUV() 225.215 +: <a class="el" href="structcimg__library_1_1CImg.html#e9383bb8937b8fa8e96f9612305c55bd">CImg</a> 225.216 +<li>rotate() 225.217 +: <a class="el" href="structcimg__library_1_1CImg.html#e4b06ab7123208c764f6fe1de4d29a39">CImg</a> 225.218 +<li>rotation_matrix() 225.219 +: <a class="el" href="structcimg__library_1_1CImg.html#1bf68d76e4c29dde15607a212f6c1b1f">CImg</a> 225.220 +<li>round() 225.221 +: <a class="el" href="structcimg__library_1_1CImg.html#3619f9d2043ebaa67d21eb373ab4d22e">CImg</a> 225.222 +</ul> 225.223 +</div> 225.224 +<hr noshade="noshade" size="1" width="100%"> 225.225 +<a href="http://sourceforge.net"> 225.226 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 225.227 +</a> 225.228 +<!-- Start of StatCounter Code --> 225.229 +<script type="text/javascript" language="javascript"> 225.230 +<!-- 225.231 +var sc_project=895001; 225.232 +var sc_invisible=1; 225.233 +var sc_partition=7; 225.234 +var sc_security="5ea85181"; 225.235 +//--> 225.236 +</script> 225.237 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 225.238 +<!-- End of StatCounter Code --> 225.239 +</body> 225.240 +</html>
226.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 226.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x73.html Mon Aug 03 14:09:20 2009 +0100 226.3 @@ -0,0 +1,309 @@ 226.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 226.5 +<head> 226.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 226.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 226.8 +<meta content="David Tschumperle" name="author"></meta> 226.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 226.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 226.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 226.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 226.13 +<style type="text/css"> 226.14 +<!-- 226.15 +body {background-color:white; font-family:sans-serif; } 226.16 +a:active{text-decoration:none; color:#303090} 226.17 +a:link{text-decoration:none; color:#303090} 226.18 +a:visited{text-decoration:none; color:#303090} 226.19 +a:hover{text-decoration:underline; color:#4E9F71} 226.20 +--> 226.21 +</style> 226.22 +<script language="JavaScript" type="text/javascript"> 226.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 226.24 + <!-- Web Site: http://redrival.com/eak/ --> 226.25 + <!-- This script and many more are available free online at --> 226.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 226.27 + <!-- Begin 226.28 + function NewWindow(mypage, myname, w, h, scroll) { 226.29 + var winl = (screen.width - w) / 2; 226.30 + var wint = (screen.height - h) / 2; 226.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 226.32 + win = window.open(mypage, myname, winprops) 226.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 226.34 + } 226.35 + // End --> 226.36 +</script> 226.37 +</head> 226.38 +<body> 226.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 226.40 + <tbody><tr><td> 226.41 + <hr noshade="noshade" size="1" width="90%"></hr> 226.42 + <center> 226.43 + <br/> 226.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 226.45 + <br/> 226.46 + </center> 226.47 + <hr noshade="noshade" size="1" width="90%"></hr> 226.48 + <center> 226.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 226.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 226.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 226.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 226.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 226.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 226.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 226.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 226.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 226.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 226.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 226.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 226.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 226.62 + </font> 226.63 + </td></tr></tbody> 226.64 + </table> 226.65 + </center> 226.66 + <hr noshade="noshade" size="1" width="90%"></hr> 226.67 + </td></tr></tbody> 226.68 +</table> 226.69 +<!-- Generated by Doxygen 1.5.7.1 --> 226.70 +<script type="text/javascript"> 226.71 +<!-- 226.72 +function changeDisplayState (e){ 226.73 + var num=this.id.replace(/[^[0-9]/g,''); 226.74 + var button=this.firstChild; 226.75 + var sectionDiv=document.getElementById('dynsection'+num); 226.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 226.77 + sectionDiv.style.display='block'; 226.78 + button.src='open.gif'; 226.79 + }else{ 226.80 + sectionDiv.style.display='none'; 226.81 + button.src='closed.gif'; 226.82 + } 226.83 +} 226.84 +function initDynSections(){ 226.85 + var divs=document.getElementsByTagName('div'); 226.86 + var sectionCounter=1; 226.87 + for(var i=0;i<divs.length-1;i++){ 226.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 226.89 + var header=divs[i]; 226.90 + var section=divs[i+1]; 226.91 + var button=header.firstChild; 226.92 + if (button!='IMG'){ 226.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 226.94 + button=document.createElement('img'); 226.95 + divs[i].insertBefore(button,divs[i].firstChild); 226.96 + } 226.97 + header.style.cursor='pointer'; 226.98 + header.onclick=changeDisplayState; 226.99 + header.id='dynheader'+sectionCounter; 226.100 + button.src='closed.gif'; 226.101 + section.id='dynsection'+sectionCounter; 226.102 + section.style.display='none'; 226.103 + section.style.marginLeft='14px'; 226.104 + sectionCounter++; 226.105 + } 226.106 + } 226.107 +} 226.108 +window.onload = initDynSections; 226.109 +--> 226.110 +</script> 226.111 +<div class="navigation" id="top"> 226.112 + <div class="tabs"> 226.113 + <ul> 226.114 + <li><a href="index.html"><span>Main Page</span></a></li> 226.115 + <li><a href="modules.html"><span>Modules</span></a></li> 226.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 226.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 226.118 + </ul> 226.119 + </div> 226.120 + <div class="tabs"> 226.121 + <ul> 226.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 226.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 226.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 226.125 + </ul> 226.126 + </div> 226.127 + <div class="tabs"> 226.128 + <ul> 226.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 226.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 226.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 226.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 226.133 + </ul> 226.134 + </div> 226.135 + <div class="tabs"> 226.136 + <ul> 226.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 226.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 226.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 226.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 226.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 226.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 226.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 226.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 226.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 226.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 226.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 226.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 226.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 226.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 226.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 226.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 226.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 226.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 226.155 + <li class="current"><a href="functions_0x73.html#index_s"><span>s</span></a></li> 226.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 226.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 226.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 226.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 226.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 226.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 226.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 226.163 + </ul> 226.164 + </div> 226.165 +</div> 226.166 +<div class="contents"> 226.167 +Here is a list of all documented class members with links to the class documentation for each member: 226.168 +<p> 226.169 +<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 226.170 +<li>save() 226.171 +: <a class="el" href="structcimg__library_1_1CImg.html#4fd91f4fb021d20c5b62329c49733bd9">CImg</a> 226.172 +, <a class="el" href="structcimg__library_1_1CImgList.html#814fe09c21090e7673d96c6145fc64bf">CImgList</a> 226.173 +<li>save_analyze() 226.174 +: <a class="el" href="structcimg__library_1_1CImg.html#469c8bebf15e1247b789b35b79ea1537">CImg</a> 226.175 +<li>save_ascii() 226.176 +: <a class="el" href="structcimg__library_1_1CImg.html#6039799358c3fe91fe6e828d3433db2f">CImg</a> 226.177 +<li>save_bmp() 226.178 +: <a class="el" href="structcimg__library_1_1CImg.html#2f8e01d96cddfa3c0d0d2dc9d86745ac">CImg</a> 226.179 +<li>save_cimg() 226.180 +: <a class="el" href="structcimg__library_1_1CImg.html#a38a0a34134e90d18a5637ee61121898">CImg</a> 226.181 +, <a class="el" href="structcimg__library_1_1CImgList.html#9f48d7b0d887db4f92ad558abe5eeb60">CImgList</a> 226.182 +<li>save_cpp() 226.183 +: <a class="el" href="structcimg__library_1_1CImg.html#37f7909910f00164decfa2705bdd1f2c">CImg</a> 226.184 +<li>save_dlm() 226.185 +: <a class="el" href="structcimg__library_1_1CImg.html#e2c4bfc725e65a27f7f21e74b6da319d">CImg</a> 226.186 +<li>save_empty_cimg() 226.187 +: <a class="el" href="structcimg__library_1_1CImg.html#514edc69c74a31e32f36d3731cbf9503">CImg</a> 226.188 +, <a class="el" href="structcimg__library_1_1CImgList.html#fb44ea999d4ca96e7706a7ad8154724b">CImgList</a> 226.189 +<li>save_ffmpeg() 226.190 +: <a class="el" href="structcimg__library_1_1CImg.html#5dc466b5a9fd09f386fb4c029122e123">CImg</a> 226.191 +, <a class="el" href="structcimg__library_1_1CImgList.html#08addbada69513e00079ff437b669138">CImgList</a> 226.192 +<li>save_ffmpeg_external() 226.193 +: <a class="el" href="structcimg__library_1_1CImg.html#6cb891a0f13a1498bf2279568d9c89ef">CImg</a> 226.194 +, <a class="el" href="structcimg__library_1_1CImgList.html#3b4ad0233afe8d38700bb1d0d0dc6ecc">CImgList</a> 226.195 +<li>save_graphicsmagick_external() 226.196 +: <a class="el" href="structcimg__library_1_1CImg.html#fdab21cdc4ef778bfaf4e123b28c9aa0">CImg</a> 226.197 +<li>save_gzip_external() 226.198 +: <a class="el" href="structcimg__library_1_1CImg.html#882ef6fb0c2487da8598e36c45b8eeab">CImg</a> 226.199 +, <a class="el" href="structcimg__library_1_1CImgList.html#e9d11f1d698df3ffe1ef4a9ede594e1e">CImgList</a> 226.200 +<li>save_imagemagick_external() 226.201 +: <a class="el" href="structcimg__library_1_1CImg.html#b0ff4f35fc74d40fda4893b7e2fdbe7b">CImg</a> 226.202 +<li>save_inr() 226.203 +: <a class="el" href="structcimg__library_1_1CImg.html#01dc6718c3ab4f86568db6cb88229338">CImg</a> 226.204 +<li>save_jpeg() 226.205 +: <a class="el" href="structcimg__library_1_1CImg.html#26ff26d1b1ce8dd8b221d13cc50434e2">CImg</a> 226.206 +<li>save_magick() 226.207 +: <a class="el" href="structcimg__library_1_1CImg.html#49b8355073ca645ba69af38324ecda6c">CImg</a> 226.208 +<li>save_medcon_external() 226.209 +: <a class="el" href="structcimg__library_1_1CImg.html#f3608edc3098e7c850c69cd347d4f9e8">CImg</a> 226.210 +<li>save_off() 226.211 +: <a class="el" href="structcimg__library_1_1CImg.html#8026d89fd3dd2f58eff90ba7418633c9">CImg</a> 226.212 +, <a class="el" href="structcimg__library_1_1CImgList.html#b46dd49d74b8143ef7229b75a7ab5b7c">CImgList</a> 226.213 +<li>save_pandore() 226.214 +: <a class="el" href="structcimg__library_1_1CImg.html#c651db37bf02a8558de8052b2a1fe1a9">CImg</a> 226.215 +<li>save_png() 226.216 +: <a class="el" href="structcimg__library_1_1CImg.html#739a8b4eb3d419cf4a5ec19c1715d6c3">CImg</a> 226.217 +<li>save_pnm() 226.218 +: <a class="el" href="structcimg__library_1_1CImg.html#fd8323ac951c92f565eff819073b7973">CImg</a> 226.219 +<li>save_raw() 226.220 +: <a class="el" href="structcimg__library_1_1CImg.html#40a4739e731f2ebba21beb1d1541e69f">CImg</a> 226.221 +<li>save_rgb() 226.222 +: <a class="el" href="structcimg__library_1_1CImg.html#aeff8cd6ea1e998a0bf905dd9c706123">CImg</a> 226.223 +<li>save_rgba() 226.224 +: <a class="el" href="structcimg__library_1_1CImg.html#9a794b3b53e9e1bf8d5d6b0e1b97bc26">CImg</a> 226.225 +<li>save_tiff() 226.226 +: <a class="el" href="structcimg__library_1_1CImg.html#c6d72526b5d249df6148680b3521b26d">CImg</a> 226.227 +<li>save_yuv() 226.228 +: <a class="el" href="structcimg__library_1_1CImg.html#374b35cac6e32b43479ae62d48366173">CImg</a> 226.229 +, <a class="el" href="structcimg__library_1_1CImgList.html#09200f3c4abcfa6572ff2686731c87b7">CImgList</a> 226.230 +<li>screen_dimx() 226.231 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#0fc1bfce258738698d77e0e5690a3d6d">CImgDisplay</a> 226.232 +<li>screen_dimy() 226.233 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fc1eab600c6dd77bdbde330fcd27d396">CImgDisplay</a> 226.234 +<li>select() 226.235 +: <a class="el" href="structcimg__library_1_1CImg.html#0a8ac68afbfb317c60b7554f5cdcbbd5">CImg</a> 226.236 +<li>sequence() 226.237 +: <a class="el" href="structcimg__library_1_1CImg.html#f3adb54a3f492f7701a1feac9a6954aa">CImg</a> 226.238 +<li>set_linear_atXY() 226.239 +: <a class="el" href="structcimg__library_1_1CImg.html#59a194a8079b3241131773fa724ee1c5">CImg</a> 226.240 +<li>set_linear_atXYZ() 226.241 +: <a class="el" href="structcimg__library_1_1CImg.html#776849281c40a0a9042b7275c4622e70">CImg</a> 226.242 +<li>set_matrix_at() 226.243 +: <a class="el" href="structcimg__library_1_1CImg.html#e0e585d6280147aabd19c398819040d9">CImg</a> 226.244 +<li>set_mouse() 226.245 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#00e5afcd819ab639a6a95b8e39af824c">CImgDisplay</a> 226.246 +<li>set_tensor_at() 226.247 +: <a class="el" href="structcimg__library_1_1CImg.html#f390fdfa10bc133864a83b101d934284">CImg</a> 226.248 +<li>set_title() 226.249 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#efd7d79af3da7a61a204ef902e6f0512">CImgDisplay</a> 226.250 +<li>set_vector_at() 226.251 +: <a class="el" href="structcimg__library_1_1CImg.html#83c90e27cc58a73da616813898327966">CImg</a> 226.252 +<li>sharpen() 226.253 +: <a class="el" href="structcimg__library_1_1CImg.html#4ecd4ea634e87995ef1d309b8ffe91de">CImg</a> 226.254 +<li>show() 226.255 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#1b27a2a375509146444ab06b2f7b8851">CImgDisplay</a> 226.256 +<li>show_mouse() 226.257 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#9fc997c0451ce75666f1bdfe45eb0343">CImgDisplay</a> 226.258 +<li>sin() 226.259 +: <a class="el" href="structcimg__library_1_1CImg.html#cc4f6c8febaeecd694d43645c527888c">CImg</a> 226.260 +<li>size() 226.261 +: <a class="el" href="structcimg__library_1_1CImg.html#3e13243636f944bad8351324f2910e2b">CImg</a> 226.262 +, <a class="el" href="structcimg__library_1_1CImgList.html#ac913b3a1f6ef005d66bf7a84428773e">CImgList</a> 226.263 +<li>slice() 226.264 +: <a class="el" href="structcimg__library_1_1CImg.html#865128dbd1524185b74ddb8ddf30e362">CImg</a> 226.265 +<li>slices() 226.266 +: <a class="el" href="structcimg__library_1_1CImg.html#f7121006079849bc3c0c165bbe9c3a2d">CImg</a> 226.267 +<li>snapshot() 226.268 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4b97d4d8b8c293cbf540ba06596ded54">CImgDisplay</a> 226.269 +<li>solve() 226.270 +: <a class="el" href="structcimg__library_1_1CImg.html#595ac87408ea46f103791933e3dfd187">CImg</a> 226.271 +<li>solve_tridiagonal() 226.272 +: <a class="el" href="structcimg__library_1_1CImg.html#2c1c7ca0a47cced1f705ee58c3d37a3e">CImg</a> 226.273 +<li>sort() 226.274 +: <a class="el" href="structcimg__library_1_1CImg.html#44ae8948547aa53345e5dcda7e6b7dc7">CImg</a> 226.275 +<li>sphere3d() 226.276 +: <a class="el" href="structcimg__library_1_1CImg.html#612264fd3b4223e6ecf99b05a6e220cd">CImg</a> 226.277 +<li>sqr() 226.278 +: <a class="el" href="structcimg__library_1_1CImg.html#19ebb696e513b9246864e5b0cdd884f5">CImg</a> 226.279 +<li>sqrt() 226.280 +: <a class="el" href="structcimg__library_1_1CImg.html#8c11d16e75e931e9e28d44171e7038d3">CImg</a> 226.281 +<li>stats() 226.282 +: <a class="el" href="structcimg__library_1_1CImg.html#af59bb4a64bfcba6082253a48a88c9d6">CImg</a> 226.283 +<li>structure_tensor() 226.284 +: <a class="el" href="structcimg__library_1_1CImg.html#edf6587b65261c0d4eb75bb2ed7d92ae">CImg</a> 226.285 +<li>sum() 226.286 +: <a class="el" href="structcimg__library_1_1CImg.html#77d222b4837c78aad604f3f0b5f1409c">CImg</a> 226.287 +<li>SVD() 226.288 +: <a class="el" href="structcimg__library_1_1CImg.html#0c1627a6f79904e70c784923a3f1ed9f">CImg</a> 226.289 +<li>swap() 226.290 +: <a class="el" href="structcimg__library_1_1CImg.html#4e00c35b15007593513f64c7ee7fb7f7">CImg</a> 226.291 +, <a class="el" href="structcimg__library_1_1CImgList.html#6c12806e432683b06fbc8919daa0a3d7">CImgList</a> 226.292 +<li>symmetric_eigen() 226.293 +: <a class="el" href="structcimg__library_1_1CImg.html#fddd851f2413d27929b21f9492f3bfbe">CImg</a> 226.294 +</ul> 226.295 +</div> 226.296 +<hr noshade="noshade" size="1" width="100%"> 226.297 +<a href="http://sourceforge.net"> 226.298 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 226.299 +</a> 226.300 +<!-- Start of StatCounter Code --> 226.301 +<script type="text/javascript" language="javascript"> 226.302 +<!-- 226.303 +var sc_project=895001; 226.304 +var sc_invisible=1; 226.305 +var sc_partition=7; 226.306 +var sc_security="5ea85181"; 226.307 +//--> 226.308 +</script> 226.309 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 226.310 +<!-- End of StatCounter Code --> 226.311 +</body> 226.312 +</html>
227.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 227.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x74.html Mon Aug 03 14:09:20 2009 +0100 227.3 @@ -0,0 +1,208 @@ 227.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 227.5 +<head> 227.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 227.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 227.8 +<meta content="David Tschumperle" name="author"></meta> 227.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 227.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 227.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 227.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 227.13 +<style type="text/css"> 227.14 +<!-- 227.15 +body {background-color:white; font-family:sans-serif; } 227.16 +a:active{text-decoration:none; color:#303090} 227.17 +a:link{text-decoration:none; color:#303090} 227.18 +a:visited{text-decoration:none; color:#303090} 227.19 +a:hover{text-decoration:underline; color:#4E9F71} 227.20 +--> 227.21 +</style> 227.22 +<script language="JavaScript" type="text/javascript"> 227.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 227.24 + <!-- Web Site: http://redrival.com/eak/ --> 227.25 + <!-- This script and many more are available free online at --> 227.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 227.27 + <!-- Begin 227.28 + function NewWindow(mypage, myname, w, h, scroll) { 227.29 + var winl = (screen.width - w) / 2; 227.30 + var wint = (screen.height - h) / 2; 227.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 227.32 + win = window.open(mypage, myname, winprops) 227.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 227.34 + } 227.35 + // End --> 227.36 +</script> 227.37 +</head> 227.38 +<body> 227.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 227.40 + <tbody><tr><td> 227.41 + <hr noshade="noshade" size="1" width="90%"></hr> 227.42 + <center> 227.43 + <br/> 227.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 227.45 + <br/> 227.46 + </center> 227.47 + <hr noshade="noshade" size="1" width="90%"></hr> 227.48 + <center> 227.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 227.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 227.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 227.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 227.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 227.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 227.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 227.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 227.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 227.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 227.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 227.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 227.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 227.62 + </font> 227.63 + </td></tr></tbody> 227.64 + </table> 227.65 + </center> 227.66 + <hr noshade="noshade" size="1" width="90%"></hr> 227.67 + </td></tr></tbody> 227.68 +</table> 227.69 +<!-- Generated by Doxygen 1.5.7.1 --> 227.70 +<script type="text/javascript"> 227.71 +<!-- 227.72 +function changeDisplayState (e){ 227.73 + var num=this.id.replace(/[^[0-9]/g,''); 227.74 + var button=this.firstChild; 227.75 + var sectionDiv=document.getElementById('dynsection'+num); 227.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 227.77 + sectionDiv.style.display='block'; 227.78 + button.src='open.gif'; 227.79 + }else{ 227.80 + sectionDiv.style.display='none'; 227.81 + button.src='closed.gif'; 227.82 + } 227.83 +} 227.84 +function initDynSections(){ 227.85 + var divs=document.getElementsByTagName('div'); 227.86 + var sectionCounter=1; 227.87 + for(var i=0;i<divs.length-1;i++){ 227.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 227.89 + var header=divs[i]; 227.90 + var section=divs[i+1]; 227.91 + var button=header.firstChild; 227.92 + if (button!='IMG'){ 227.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 227.94 + button=document.createElement('img'); 227.95 + divs[i].insertBefore(button,divs[i].firstChild); 227.96 + } 227.97 + header.style.cursor='pointer'; 227.98 + header.onclick=changeDisplayState; 227.99 + header.id='dynheader'+sectionCounter; 227.100 + button.src='closed.gif'; 227.101 + section.id='dynsection'+sectionCounter; 227.102 + section.style.display='none'; 227.103 + section.style.marginLeft='14px'; 227.104 + sectionCounter++; 227.105 + } 227.106 + } 227.107 +} 227.108 +window.onload = initDynSections; 227.109 +--> 227.110 +</script> 227.111 +<div class="navigation" id="top"> 227.112 + <div class="tabs"> 227.113 + <ul> 227.114 + <li><a href="index.html"><span>Main Page</span></a></li> 227.115 + <li><a href="modules.html"><span>Modules</span></a></li> 227.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 227.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 227.118 + </ul> 227.119 + </div> 227.120 + <div class="tabs"> 227.121 + <ul> 227.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 227.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 227.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 227.125 + </ul> 227.126 + </div> 227.127 + <div class="tabs"> 227.128 + <ul> 227.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 227.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 227.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 227.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 227.133 + </ul> 227.134 + </div> 227.135 + <div class="tabs"> 227.136 + <ul> 227.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 227.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 227.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 227.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 227.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 227.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 227.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 227.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 227.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 227.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 227.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 227.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 227.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 227.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 227.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 227.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 227.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 227.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 227.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 227.156 + <li class="current"><a href="functions_0x74.html#index_t"><span>t</span></a></li> 227.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 227.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 227.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 227.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 227.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 227.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 227.163 + </ul> 227.164 + </div> 227.165 +</div> 227.166 +<div class="contents"> 227.167 +Here is a list of all documented class members with links to the class documentation for each member: 227.168 +<p> 227.169 +<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 227.170 +<li>tan() 227.171 +: <a class="el" href="structcimg__library_1_1CImg.html#8bd7410cfef580410cfb9d6702a56149">CImg</a> 227.172 +<li>tensor() 227.173 +: <a class="el" href="structcimg__library_1_1CImg.html#d51e031c3ff9afc1c1f5587e770ff382">CImg</a> 227.174 +<li>threshold() 227.175 +: <a class="el" href="structcimg__library_1_1CImg.html#411ae06f4b7a9281dbe7ae608e5dadee">CImg</a> 227.176 +<li>title 227.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">CImgDisplay</a> 227.178 +<li>toggle_fullscreen() 227.179 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#62d224a7c18d3091eb0d56e1bc8c36fe">CImgDisplay</a> 227.180 +<li>torus3d() 227.181 +: <a class="el" href="structcimg__library_1_1CImg.html#fe12f532a1faf7ba4dbdd32297cdbe6e">CImg</a> 227.182 +<li>trace() 227.183 +: <a class="el" href="structcimg__library_1_1CImg.html#a5725c18e3adcb9fda07885b076ee971">CImg</a> 227.184 +<li>transfer_to() 227.185 +: <a class="el" href="structcimg__library_1_1CImg.html#b3b0efc40be1da20da1fbddfad758568">CImg</a> 227.186 +, <a class="el" href="structcimg__library_1_1CImgList.html#ceb0faa44647370b3fe679edad1eec36">CImgList</a> 227.187 +<li>translate() 227.188 +: <a class="el" href="structcimg__library_1_1CImg.html#32ca7979d4a8792f7274ab07b8b80fdd">CImg</a> 227.189 +<li>translate_object3d() 227.190 +: <a class="el" href="structcimg__library_1_1CImg.html#d430e8117e4f1c836e2d4d6810d5a7bf">CImg</a> 227.191 +<li>transpose() 227.192 +: <a class="el" href="structcimg__library_1_1CImg.html#49f00018eac2d649fa10c8a25c31c0df">CImg</a> 227.193 +</ul> 227.194 +</div> 227.195 +<hr noshade="noshade" size="1" width="100%"> 227.196 +<a href="http://sourceforge.net"> 227.197 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 227.198 +</a> 227.199 +<!-- Start of StatCounter Code --> 227.200 +<script type="text/javascript" language="javascript"> 227.201 +<!-- 227.202 +var sc_project=895001; 227.203 +var sc_invisible=1; 227.204 +var sc_partition=7; 227.205 +var sc_security="5ea85181"; 227.206 +//--> 227.207 +</script> 227.208 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 227.209 +<!-- End of StatCounter Code --> 227.210 +</body> 227.211 +</html>
228.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 228.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x75.html Mon Aug 03 14:09:20 2009 +0100 228.3 @@ -0,0 +1,187 @@ 228.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 228.5 +<head> 228.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 228.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 228.8 +<meta content="David Tschumperle" name="author"></meta> 228.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 228.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 228.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 228.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 228.13 +<style type="text/css"> 228.14 +<!-- 228.15 +body {background-color:white; font-family:sans-serif; } 228.16 +a:active{text-decoration:none; color:#303090} 228.17 +a:link{text-decoration:none; color:#303090} 228.18 +a:visited{text-decoration:none; color:#303090} 228.19 +a:hover{text-decoration:underline; color:#4E9F71} 228.20 +--> 228.21 +</style> 228.22 +<script language="JavaScript" type="text/javascript"> 228.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 228.24 + <!-- Web Site: http://redrival.com/eak/ --> 228.25 + <!-- This script and many more are available free online at --> 228.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 228.27 + <!-- Begin 228.28 + function NewWindow(mypage, myname, w, h, scroll) { 228.29 + var winl = (screen.width - w) / 2; 228.30 + var wint = (screen.height - h) / 2; 228.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 228.32 + win = window.open(mypage, myname, winprops) 228.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 228.34 + } 228.35 + // End --> 228.36 +</script> 228.37 +</head> 228.38 +<body> 228.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 228.40 + <tbody><tr><td> 228.41 + <hr noshade="noshade" size="1" width="90%"></hr> 228.42 + <center> 228.43 + <br/> 228.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 228.45 + <br/> 228.46 + </center> 228.47 + <hr noshade="noshade" size="1" width="90%"></hr> 228.48 + <center> 228.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 228.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 228.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 228.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 228.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 228.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 228.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 228.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 228.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 228.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 228.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 228.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 228.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 228.62 + </font> 228.63 + </td></tr></tbody> 228.64 + </table> 228.65 + </center> 228.66 + <hr noshade="noshade" size="1" width="90%"></hr> 228.67 + </td></tr></tbody> 228.68 +</table> 228.69 +<!-- Generated by Doxygen 1.5.7.1 --> 228.70 +<script type="text/javascript"> 228.71 +<!-- 228.72 +function changeDisplayState (e){ 228.73 + var num=this.id.replace(/[^[0-9]/g,''); 228.74 + var button=this.firstChild; 228.75 + var sectionDiv=document.getElementById('dynsection'+num); 228.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 228.77 + sectionDiv.style.display='block'; 228.78 + button.src='open.gif'; 228.79 + }else{ 228.80 + sectionDiv.style.display='none'; 228.81 + button.src='closed.gif'; 228.82 + } 228.83 +} 228.84 +function initDynSections(){ 228.85 + var divs=document.getElementsByTagName('div'); 228.86 + var sectionCounter=1; 228.87 + for(var i=0;i<divs.length-1;i++){ 228.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 228.89 + var header=divs[i]; 228.90 + var section=divs[i+1]; 228.91 + var button=header.firstChild; 228.92 + if (button!='IMG'){ 228.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 228.94 + button=document.createElement('img'); 228.95 + divs[i].insertBefore(button,divs[i].firstChild); 228.96 + } 228.97 + header.style.cursor='pointer'; 228.98 + header.onclick=changeDisplayState; 228.99 + header.id='dynheader'+sectionCounter; 228.100 + button.src='closed.gif'; 228.101 + section.id='dynsection'+sectionCounter; 228.102 + section.style.display='none'; 228.103 + section.style.marginLeft='14px'; 228.104 + sectionCounter++; 228.105 + } 228.106 + } 228.107 +} 228.108 +window.onload = initDynSections; 228.109 +--> 228.110 +</script> 228.111 +<div class="navigation" id="top"> 228.112 + <div class="tabs"> 228.113 + <ul> 228.114 + <li><a href="index.html"><span>Main Page</span></a></li> 228.115 + <li><a href="modules.html"><span>Modules</span></a></li> 228.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 228.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 228.118 + </ul> 228.119 + </div> 228.120 + <div class="tabs"> 228.121 + <ul> 228.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 228.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 228.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 228.125 + </ul> 228.126 + </div> 228.127 + <div class="tabs"> 228.128 + <ul> 228.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 228.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 228.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 228.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 228.133 + </ul> 228.134 + </div> 228.135 + <div class="tabs"> 228.136 + <ul> 228.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 228.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 228.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 228.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 228.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 228.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 228.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 228.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 228.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 228.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 228.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 228.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 228.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 228.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 228.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 228.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 228.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 228.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 228.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 228.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 228.157 + <li class="current"><a href="functions_0x75.html#index_u"><span>u</span></a></li> 228.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 228.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 228.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 228.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 228.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 228.163 + </ul> 228.164 + </div> 228.165 +</div> 228.166 +<div class="contents"> 228.167 +Here is a list of all documented class members with links to the class documentation for each member: 228.168 +<p> 228.169 +<h3><a class="anchor" name="index_u">- u -</a></h3><ul> 228.170 +<li>unroll() 228.171 +: <a class="el" href="structcimg__library_1_1CImg.html#6f2a337d1eb6c94217167dd9296890f3">CImg</a> 228.172 +</ul> 228.173 +</div> 228.174 +<hr noshade="noshade" size="1" width="100%"> 228.175 +<a href="http://sourceforge.net"> 228.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 228.177 +</a> 228.178 +<!-- Start of StatCounter Code --> 228.179 +<script type="text/javascript" language="javascript"> 228.180 +<!-- 228.181 +var sc_project=895001; 228.182 +var sc_invisible=1; 228.183 +var sc_partition=7; 228.184 +var sc_security="5ea85181"; 228.185 +//--> 228.186 +</script> 228.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 228.188 +<!-- End of StatCounter Code --> 228.189 +</body> 228.190 +</html>
229.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 229.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x76.html Mon Aug 03 14:09:20 2009 +0100 229.3 @@ -0,0 +1,196 @@ 229.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 229.5 +<head> 229.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 229.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 229.8 +<meta content="David Tschumperle" name="author"></meta> 229.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 229.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 229.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 229.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 229.13 +<style type="text/css"> 229.14 +<!-- 229.15 +body {background-color:white; font-family:sans-serif; } 229.16 +a:active{text-decoration:none; color:#303090} 229.17 +a:link{text-decoration:none; color:#303090} 229.18 +a:visited{text-decoration:none; color:#303090} 229.19 +a:hover{text-decoration:underline; color:#4E9F71} 229.20 +--> 229.21 +</style> 229.22 +<script language="JavaScript" type="text/javascript"> 229.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 229.24 + <!-- Web Site: http://redrival.com/eak/ --> 229.25 + <!-- This script and many more are available free online at --> 229.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 229.27 + <!-- Begin 229.28 + function NewWindow(mypage, myname, w, h, scroll) { 229.29 + var winl = (screen.width - w) / 2; 229.30 + var wint = (screen.height - h) / 2; 229.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 229.32 + win = window.open(mypage, myname, winprops) 229.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 229.34 + } 229.35 + // End --> 229.36 +</script> 229.37 +</head> 229.38 +<body> 229.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 229.40 + <tbody><tr><td> 229.41 + <hr noshade="noshade" size="1" width="90%"></hr> 229.42 + <center> 229.43 + <br/> 229.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 229.45 + <br/> 229.46 + </center> 229.47 + <hr noshade="noshade" size="1" width="90%"></hr> 229.48 + <center> 229.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 229.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 229.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 229.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 229.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 229.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 229.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 229.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 229.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 229.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 229.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 229.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 229.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 229.62 + </font> 229.63 + </td></tr></tbody> 229.64 + </table> 229.65 + </center> 229.66 + <hr noshade="noshade" size="1" width="90%"></hr> 229.67 + </td></tr></tbody> 229.68 +</table> 229.69 +<!-- Generated by Doxygen 1.5.7.1 --> 229.70 +<script type="text/javascript"> 229.71 +<!-- 229.72 +function changeDisplayState (e){ 229.73 + var num=this.id.replace(/[^[0-9]/g,''); 229.74 + var button=this.firstChild; 229.75 + var sectionDiv=document.getElementById('dynsection'+num); 229.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 229.77 + sectionDiv.style.display='block'; 229.78 + button.src='open.gif'; 229.79 + }else{ 229.80 + sectionDiv.style.display='none'; 229.81 + button.src='closed.gif'; 229.82 + } 229.83 +} 229.84 +function initDynSections(){ 229.85 + var divs=document.getElementsByTagName('div'); 229.86 + var sectionCounter=1; 229.87 + for(var i=0;i<divs.length-1;i++){ 229.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 229.89 + var header=divs[i]; 229.90 + var section=divs[i+1]; 229.91 + var button=header.firstChild; 229.92 + if (button!='IMG'){ 229.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 229.94 + button=document.createElement('img'); 229.95 + divs[i].insertBefore(button,divs[i].firstChild); 229.96 + } 229.97 + header.style.cursor='pointer'; 229.98 + header.onclick=changeDisplayState; 229.99 + header.id='dynheader'+sectionCounter; 229.100 + button.src='closed.gif'; 229.101 + section.id='dynsection'+sectionCounter; 229.102 + section.style.display='none'; 229.103 + section.style.marginLeft='14px'; 229.104 + sectionCounter++; 229.105 + } 229.106 + } 229.107 +} 229.108 +window.onload = initDynSections; 229.109 +--> 229.110 +</script> 229.111 +<div class="navigation" id="top"> 229.112 + <div class="tabs"> 229.113 + <ul> 229.114 + <li><a href="index.html"><span>Main Page</span></a></li> 229.115 + <li><a href="modules.html"><span>Modules</span></a></li> 229.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 229.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 229.118 + </ul> 229.119 + </div> 229.120 + <div class="tabs"> 229.121 + <ul> 229.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 229.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 229.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 229.125 + </ul> 229.126 + </div> 229.127 + <div class="tabs"> 229.128 + <ul> 229.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 229.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 229.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 229.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 229.133 + </ul> 229.134 + </div> 229.135 + <div class="tabs"> 229.136 + <ul> 229.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 229.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 229.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 229.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 229.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 229.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 229.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 229.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 229.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 229.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 229.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 229.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 229.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 229.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 229.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 229.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 229.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 229.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 229.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 229.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 229.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 229.158 + <li class="current"><a href="functions_0x76.html#index_v"><span>v</span></a></li> 229.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 229.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 229.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 229.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 229.163 + </ul> 229.164 + </div> 229.165 +</div> 229.166 +<div class="contents"> 229.167 +Here is a list of all documented class members with links to the class documentation for each member: 229.168 +<p> 229.169 +<h3><a class="anchor" name="index_v">- v -</a></h3><ul> 229.170 +<li>value_string() 229.171 +: <a class="el" href="structcimg__library_1_1CImg.html#2d70c422e3e75e6cd810358486387300">CImg</a> 229.172 +<li>value_type 229.173 +: <a class="el" href="structcimg__library_1_1CImg.html#265a253612b46abed17c61b0a5e5ce30">CImg</a> 229.174 +, <a class="el" href="structcimg__library_1_1CImgList.html#265a253612b46abed17c61b0a5e5ce30">CImgList</a> 229.175 +<li>variance() 229.176 +: <a class="el" href="structcimg__library_1_1CImg.html#641a93939e495eec1749bb68197996ac">CImg</a> 229.177 +<li>variancemean() 229.178 +: <a class="el" href="structcimg__library_1_1CImg.html#42b5c7baa4cd8ce360cea44a4e013753">CImg</a> 229.179 +<li>vector() 229.180 +: <a class="el" href="structcimg__library_1_1CImg.html#f28a9ec7a816a3afd9fa1ce6a7d736e3">CImg</a> 229.181 +</ul> 229.182 +</div> 229.183 +<hr noshade="noshade" size="1" width="100%"> 229.184 +<a href="http://sourceforge.net"> 229.185 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 229.186 +</a> 229.187 +<!-- Start of StatCounter Code --> 229.188 +<script type="text/javascript" language="javascript"> 229.189 +<!-- 229.190 +var sc_project=895001; 229.191 +var sc_invisible=1; 229.192 +var sc_partition=7; 229.193 +var sc_security="5ea85181"; 229.194 +//--> 229.195 +</script> 229.196 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 229.197 +<!-- End of StatCounter Code --> 229.198 +</body> 229.199 +</html>
230.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 230.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x77.html Mon Aug 03 14:09:20 2009 +0100 230.3 @@ -0,0 +1,210 @@ 230.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 230.5 +<head> 230.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 230.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 230.8 +<meta content="David Tschumperle" name="author"></meta> 230.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 230.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 230.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 230.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 230.13 +<style type="text/css"> 230.14 +<!-- 230.15 +body {background-color:white; font-family:sans-serif; } 230.16 +a:active{text-decoration:none; color:#303090} 230.17 +a:link{text-decoration:none; color:#303090} 230.18 +a:visited{text-decoration:none; color:#303090} 230.19 +a:hover{text-decoration:underline; color:#4E9F71} 230.20 +--> 230.21 +</style> 230.22 +<script language="JavaScript" type="text/javascript"> 230.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 230.24 + <!-- Web Site: http://redrival.com/eak/ --> 230.25 + <!-- This script and many more are available free online at --> 230.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 230.27 + <!-- Begin 230.28 + function NewWindow(mypage, myname, w, h, scroll) { 230.29 + var winl = (screen.width - w) / 2; 230.30 + var wint = (screen.height - h) / 2; 230.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 230.32 + win = window.open(mypage, myname, winprops) 230.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 230.34 + } 230.35 + // End --> 230.36 +</script> 230.37 +</head> 230.38 +<body> 230.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 230.40 + <tbody><tr><td> 230.41 + <hr noshade="noshade" size="1" width="90%"></hr> 230.42 + <center> 230.43 + <br/> 230.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 230.45 + <br/> 230.46 + </center> 230.47 + <hr noshade="noshade" size="1" width="90%"></hr> 230.48 + <center> 230.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 230.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 230.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 230.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 230.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 230.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 230.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 230.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 230.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 230.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 230.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 230.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 230.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 230.62 + </font> 230.63 + </td></tr></tbody> 230.64 + </table> 230.65 + </center> 230.66 + <hr noshade="noshade" size="1" width="90%"></hr> 230.67 + </td></tr></tbody> 230.68 +</table> 230.69 +<!-- Generated by Doxygen 1.5.7.1 --> 230.70 +<script type="text/javascript"> 230.71 +<!-- 230.72 +function changeDisplayState (e){ 230.73 + var num=this.id.replace(/[^[0-9]/g,''); 230.74 + var button=this.firstChild; 230.75 + var sectionDiv=document.getElementById('dynsection'+num); 230.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 230.77 + sectionDiv.style.display='block'; 230.78 + button.src='open.gif'; 230.79 + }else{ 230.80 + sectionDiv.style.display='none'; 230.81 + button.src='closed.gif'; 230.82 + } 230.83 +} 230.84 +function initDynSections(){ 230.85 + var divs=document.getElementsByTagName('div'); 230.86 + var sectionCounter=1; 230.87 + for(var i=0;i<divs.length-1;i++){ 230.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 230.89 + var header=divs[i]; 230.90 + var section=divs[i+1]; 230.91 + var button=header.firstChild; 230.92 + if (button!='IMG'){ 230.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 230.94 + button=document.createElement('img'); 230.95 + divs[i].insertBefore(button,divs[i].firstChild); 230.96 + } 230.97 + header.style.cursor='pointer'; 230.98 + header.onclick=changeDisplayState; 230.99 + header.id='dynheader'+sectionCounter; 230.100 + button.src='closed.gif'; 230.101 + section.id='dynsection'+sectionCounter; 230.102 + section.style.display='none'; 230.103 + section.style.marginLeft='14px'; 230.104 + sectionCounter++; 230.105 + } 230.106 + } 230.107 +} 230.108 +window.onload = initDynSections; 230.109 +--> 230.110 +</script> 230.111 +<div class="navigation" id="top"> 230.112 + <div class="tabs"> 230.113 + <ul> 230.114 + <li><a href="index.html"><span>Main Page</span></a></li> 230.115 + <li><a href="modules.html"><span>Modules</span></a></li> 230.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 230.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 230.118 + </ul> 230.119 + </div> 230.120 + <div class="tabs"> 230.121 + <ul> 230.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 230.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 230.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 230.125 + </ul> 230.126 + </div> 230.127 + <div class="tabs"> 230.128 + <ul> 230.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 230.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 230.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 230.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 230.133 + </ul> 230.134 + </div> 230.135 + <div class="tabs"> 230.136 + <ul> 230.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 230.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 230.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 230.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 230.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 230.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 230.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 230.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 230.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 230.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 230.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 230.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 230.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 230.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 230.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 230.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 230.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 230.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 230.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 230.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 230.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 230.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 230.159 + <li class="current"><a href="functions_0x77.html#index_w"><span>w</span></a></li> 230.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 230.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 230.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 230.163 + </ul> 230.164 + </div> 230.165 +</div> 230.166 +<div class="contents"> 230.167 +Here is a list of all documented class members with links to the class documentation for each member: 230.168 +<p> 230.169 +<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 230.170 +<li>wait() 230.171 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#79669a0b7bdc65aff8313c590c7faab0">CImgDisplay</a> 230.172 +<li>wait_all() 230.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#530c68e321d3adcb30fcefa06a25ca5b">CImgDisplay</a> 230.174 +<li>wheel 230.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#8852860a5e65fc4e698c2771ac5d5dab">CImgDisplay</a> 230.176 +<li>width 230.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">CImgDisplay</a> 230.178 +, <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">CImg</a> 230.179 +<li>window_dimx() 230.180 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3e8dd30daac06fc499aa2aafad24cc4a">CImgDisplay</a> 230.181 +<li>window_dimy() 230.182 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e263957fbad39c2df4bd0c02d644e6b8">CImgDisplay</a> 230.183 +<li>window_height 230.184 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3b93087fe5c3714abcb0719a6f483d51">CImgDisplay</a> 230.185 +<li>window_posx() 230.186 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#f7fd9c19f4185b1af4cb8b9a4164256d">CImgDisplay</a> 230.187 +<li>window_posy() 230.188 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#ce6f24d60fd39cea4d578a3eb7568fef">CImgDisplay</a> 230.189 +<li>window_width 230.190 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#b88886d5ff22bc29cd4a81e3abbb364b">CImgDisplay</a> 230.191 +<li>window_x 230.192 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a526ed4470cbc4924e72a1b4d616b00d">CImgDisplay</a> 230.193 +<li>window_y 230.194 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#8f46b1f416882413996c261f839272a5">CImgDisplay</a> 230.195 +</ul> 230.196 +</div> 230.197 +<hr noshade="noshade" size="1" width="100%"> 230.198 +<a href="http://sourceforge.net"> 230.199 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 230.200 +</a> 230.201 +<!-- Start of StatCounter Code --> 230.202 +<script type="text/javascript" language="javascript"> 230.203 +<!-- 230.204 +var sc_project=895001; 230.205 +var sc_invisible=1; 230.206 +var sc_partition=7; 230.207 +var sc_security="5ea85181"; 230.208 +//--> 230.209 +</script> 230.210 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 230.211 +<!-- End of StatCounter Code --> 230.212 +</body> 230.213 +</html>
231.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 231.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x78.html Mon Aug 03 14:09:20 2009 +0100 231.3 @@ -0,0 +1,195 @@ 231.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 231.5 +<head> 231.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 231.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 231.8 +<meta content="David Tschumperle" name="author"></meta> 231.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 231.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 231.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 231.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 231.13 +<style type="text/css"> 231.14 +<!-- 231.15 +body {background-color:white; font-family:sans-serif; } 231.16 +a:active{text-decoration:none; color:#303090} 231.17 +a:link{text-decoration:none; color:#303090} 231.18 +a:visited{text-decoration:none; color:#303090} 231.19 +a:hover{text-decoration:underline; color:#4E9F71} 231.20 +--> 231.21 +</style> 231.22 +<script language="JavaScript" type="text/javascript"> 231.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 231.24 + <!-- Web Site: http://redrival.com/eak/ --> 231.25 + <!-- This script and many more are available free online at --> 231.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 231.27 + <!-- Begin 231.28 + function NewWindow(mypage, myname, w, h, scroll) { 231.29 + var winl = (screen.width - w) / 2; 231.30 + var wint = (screen.height - h) / 2; 231.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 231.32 + win = window.open(mypage, myname, winprops) 231.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 231.34 + } 231.35 + // End --> 231.36 +</script> 231.37 +</head> 231.38 +<body> 231.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 231.40 + <tbody><tr><td> 231.41 + <hr noshade="noshade" size="1" width="90%"></hr> 231.42 + <center> 231.43 + <br/> 231.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 231.45 + <br/> 231.46 + </center> 231.47 + <hr noshade="noshade" size="1" width="90%"></hr> 231.48 + <center> 231.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 231.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 231.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 231.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 231.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 231.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 231.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 231.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 231.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 231.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 231.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 231.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 231.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 231.62 + </font> 231.63 + </td></tr></tbody> 231.64 + </table> 231.65 + </center> 231.66 + <hr noshade="noshade" size="1" width="90%"></hr> 231.67 + </td></tr></tbody> 231.68 +</table> 231.69 +<!-- Generated by Doxygen 1.5.7.1 --> 231.70 +<script type="text/javascript"> 231.71 +<!-- 231.72 +function changeDisplayState (e){ 231.73 + var num=this.id.replace(/[^[0-9]/g,''); 231.74 + var button=this.firstChild; 231.75 + var sectionDiv=document.getElementById('dynsection'+num); 231.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 231.77 + sectionDiv.style.display='block'; 231.78 + button.src='open.gif'; 231.79 + }else{ 231.80 + sectionDiv.style.display='none'; 231.81 + button.src='closed.gif'; 231.82 + } 231.83 +} 231.84 +function initDynSections(){ 231.85 + var divs=document.getElementsByTagName('div'); 231.86 + var sectionCounter=1; 231.87 + for(var i=0;i<divs.length-1;i++){ 231.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 231.89 + var header=divs[i]; 231.90 + var section=divs[i+1]; 231.91 + var button=header.firstChild; 231.92 + if (button!='IMG'){ 231.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 231.94 + button=document.createElement('img'); 231.95 + divs[i].insertBefore(button,divs[i].firstChild); 231.96 + } 231.97 + header.style.cursor='pointer'; 231.98 + header.onclick=changeDisplayState; 231.99 + header.id='dynheader'+sectionCounter; 231.100 + button.src='closed.gif'; 231.101 + section.id='dynsection'+sectionCounter; 231.102 + section.style.display='none'; 231.103 + section.style.marginLeft='14px'; 231.104 + sectionCounter++; 231.105 + } 231.106 + } 231.107 +} 231.108 +window.onload = initDynSections; 231.109 +--> 231.110 +</script> 231.111 +<div class="navigation" id="top"> 231.112 + <div class="tabs"> 231.113 + <ul> 231.114 + <li><a href="index.html"><span>Main Page</span></a></li> 231.115 + <li><a href="modules.html"><span>Modules</span></a></li> 231.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 231.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 231.118 + </ul> 231.119 + </div> 231.120 + <div class="tabs"> 231.121 + <ul> 231.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 231.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 231.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 231.125 + </ul> 231.126 + </div> 231.127 + <div class="tabs"> 231.128 + <ul> 231.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 231.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 231.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 231.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 231.133 + </ul> 231.134 + </div> 231.135 + <div class="tabs"> 231.136 + <ul> 231.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 231.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 231.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 231.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 231.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 231.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 231.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 231.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 231.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 231.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 231.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 231.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 231.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 231.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 231.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 231.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 231.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 231.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 231.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 231.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 231.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 231.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 231.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 231.160 + <li class="current"><a href="functions_0x78.html#index_x"><span>x</span></a></li> 231.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 231.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 231.163 + </ul> 231.164 + </div> 231.165 +</div> 231.166 +<div class="contents"> 231.167 +Here is a list of all documented class members with links to the class documentation for each member: 231.168 +<p> 231.169 +<h3><a class="anchor" name="index_x">- x -</a></h3><ul> 231.170 +<li>xyYtoRGB() 231.171 +: <a class="el" href="structcimg__library_1_1CImg.html#896475f657bb68369b7996d3faeaefee">CImg</a> 231.172 +<li>xyYtoXYZ() 231.173 +: <a class="el" href="structcimg__library_1_1CImg.html#7387432af686bbc6c973e7b2ceb2b80b">CImg</a> 231.174 +<li>XYZtoLab() 231.175 +: <a class="el" href="structcimg__library_1_1CImg.html#13d44ab14b2f1f34ae150e5ead0a381e">CImg</a> 231.176 +<li>XYZtoRGB() 231.177 +: <a class="el" href="structcimg__library_1_1CImg.html#6ec1861cb810ee3df63c6ef85cf270d8">CImg</a> 231.178 +<li>XYZtoxyY() 231.179 +: <a class="el" href="structcimg__library_1_1CImg.html#697f3a725fd9e0349362d927ce95fd6e">CImg</a> 231.180 +</ul> 231.181 +</div> 231.182 +<hr noshade="noshade" size="1" width="100%"> 231.183 +<a href="http://sourceforge.net"> 231.184 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 231.185 +</a> 231.186 +<!-- Start of StatCounter Code --> 231.187 +<script type="text/javascript" language="javascript"> 231.188 +<!-- 231.189 +var sc_project=895001; 231.190 +var sc_invisible=1; 231.191 +var sc_partition=7; 231.192 +var sc_security="5ea85181"; 231.193 +//--> 231.194 +</script> 231.195 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 231.196 +<!-- End of StatCounter Code --> 231.197 +</body> 231.198 +</html>
232.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 232.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x79.html Mon Aug 03 14:09:20 2009 +0100 232.3 @@ -0,0 +1,189 @@ 232.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 232.5 +<head> 232.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 232.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 232.8 +<meta content="David Tschumperle" name="author"></meta> 232.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 232.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 232.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 232.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 232.13 +<style type="text/css"> 232.14 +<!-- 232.15 +body {background-color:white; font-family:sans-serif; } 232.16 +a:active{text-decoration:none; color:#303090} 232.17 +a:link{text-decoration:none; color:#303090} 232.18 +a:visited{text-decoration:none; color:#303090} 232.19 +a:hover{text-decoration:underline; color:#4E9F71} 232.20 +--> 232.21 +</style> 232.22 +<script language="JavaScript" type="text/javascript"> 232.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 232.24 + <!-- Web Site: http://redrival.com/eak/ --> 232.25 + <!-- This script and many more are available free online at --> 232.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 232.27 + <!-- Begin 232.28 + function NewWindow(mypage, myname, w, h, scroll) { 232.29 + var winl = (screen.width - w) / 2; 232.30 + var wint = (screen.height - h) / 2; 232.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 232.32 + win = window.open(mypage, myname, winprops) 232.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 232.34 + } 232.35 + // End --> 232.36 +</script> 232.37 +</head> 232.38 +<body> 232.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 232.40 + <tbody><tr><td> 232.41 + <hr noshade="noshade" size="1" width="90%"></hr> 232.42 + <center> 232.43 + <br/> 232.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 232.45 + <br/> 232.46 + </center> 232.47 + <hr noshade="noshade" size="1" width="90%"></hr> 232.48 + <center> 232.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 232.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 232.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 232.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 232.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 232.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 232.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 232.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 232.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 232.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 232.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 232.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 232.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 232.62 + </font> 232.63 + </td></tr></tbody> 232.64 + </table> 232.65 + </center> 232.66 + <hr noshade="noshade" size="1" width="90%"></hr> 232.67 + </td></tr></tbody> 232.68 +</table> 232.69 +<!-- Generated by Doxygen 1.5.7.1 --> 232.70 +<script type="text/javascript"> 232.71 +<!-- 232.72 +function changeDisplayState (e){ 232.73 + var num=this.id.replace(/[^[0-9]/g,''); 232.74 + var button=this.firstChild; 232.75 + var sectionDiv=document.getElementById('dynsection'+num); 232.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 232.77 + sectionDiv.style.display='block'; 232.78 + button.src='open.gif'; 232.79 + }else{ 232.80 + sectionDiv.style.display='none'; 232.81 + button.src='closed.gif'; 232.82 + } 232.83 +} 232.84 +function initDynSections(){ 232.85 + var divs=document.getElementsByTagName('div'); 232.86 + var sectionCounter=1; 232.87 + for(var i=0;i<divs.length-1;i++){ 232.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 232.89 + var header=divs[i]; 232.90 + var section=divs[i+1]; 232.91 + var button=header.firstChild; 232.92 + if (button!='IMG'){ 232.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 232.94 + button=document.createElement('img'); 232.95 + divs[i].insertBefore(button,divs[i].firstChild); 232.96 + } 232.97 + header.style.cursor='pointer'; 232.98 + header.onclick=changeDisplayState; 232.99 + header.id='dynheader'+sectionCounter; 232.100 + button.src='closed.gif'; 232.101 + section.id='dynsection'+sectionCounter; 232.102 + section.style.display='none'; 232.103 + section.style.marginLeft='14px'; 232.104 + sectionCounter++; 232.105 + } 232.106 + } 232.107 +} 232.108 +window.onload = initDynSections; 232.109 +--> 232.110 +</script> 232.111 +<div class="navigation" id="top"> 232.112 + <div class="tabs"> 232.113 + <ul> 232.114 + <li><a href="index.html"><span>Main Page</span></a></li> 232.115 + <li><a href="modules.html"><span>Modules</span></a></li> 232.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 232.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 232.118 + </ul> 232.119 + </div> 232.120 + <div class="tabs"> 232.121 + <ul> 232.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 232.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 232.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 232.125 + </ul> 232.126 + </div> 232.127 + <div class="tabs"> 232.128 + <ul> 232.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 232.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 232.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 232.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 232.133 + </ul> 232.134 + </div> 232.135 + <div class="tabs"> 232.136 + <ul> 232.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 232.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 232.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 232.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 232.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 232.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 232.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 232.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 232.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 232.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 232.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 232.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 232.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 232.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 232.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 232.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 232.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 232.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 232.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 232.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 232.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 232.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 232.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 232.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 232.161 + <li class="current"><a href="functions_0x79.html#index_y"><span>y</span></a></li> 232.162 + <li><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 232.163 + </ul> 232.164 + </div> 232.165 +</div> 232.166 +<div class="contents"> 232.167 +Here is a list of all documented class members with links to the class documentation for each member: 232.168 +<p> 232.169 +<h3><a class="anchor" name="index_y">- y -</a></h3><ul> 232.170 +<li>YCbCrtoRGB() 232.171 +: <a class="el" href="structcimg__library_1_1CImg.html#93b6905e43cebf17d9d98f926d353a11">CImg</a> 232.172 +<li>YUVtoRGB() 232.173 +: <a class="el" href="structcimg__library_1_1CImg.html#45958abd08f2a93d33fb77de4e5b0a66">CImg</a> 232.174 +</ul> 232.175 +</div> 232.176 +<hr noshade="noshade" size="1" width="100%"> 232.177 +<a href="http://sourceforge.net"> 232.178 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 232.179 +</a> 232.180 +<!-- Start of StatCounter Code --> 232.181 +<script type="text/javascript" language="javascript"> 232.182 +<!-- 232.183 +var sc_project=895001; 232.184 +var sc_invisible=1; 232.185 +var sc_partition=7; 232.186 +var sc_security="5ea85181"; 232.187 +//--> 232.188 +</script> 232.189 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 232.190 +<!-- End of StatCounter Code --> 232.191 +</body> 232.192 +</html>
233.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 233.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_0x7e.html Mon Aug 03 14:09:20 2009 +0100 233.3 @@ -0,0 +1,191 @@ 233.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 233.5 +<head> 233.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 233.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 233.8 +<meta content="David Tschumperle" name="author"></meta> 233.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 233.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 233.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 233.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 233.13 +<style type="text/css"> 233.14 +<!-- 233.15 +body {background-color:white; font-family:sans-serif; } 233.16 +a:active{text-decoration:none; color:#303090} 233.17 +a:link{text-decoration:none; color:#303090} 233.18 +a:visited{text-decoration:none; color:#303090} 233.19 +a:hover{text-decoration:underline; color:#4E9F71} 233.20 +--> 233.21 +</style> 233.22 +<script language="JavaScript" type="text/javascript"> 233.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 233.24 + <!-- Web Site: http://redrival.com/eak/ --> 233.25 + <!-- This script and many more are available free online at --> 233.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 233.27 + <!-- Begin 233.28 + function NewWindow(mypage, myname, w, h, scroll) { 233.29 + var winl = (screen.width - w) / 2; 233.30 + var wint = (screen.height - h) / 2; 233.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 233.32 + win = window.open(mypage, myname, winprops) 233.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 233.34 + } 233.35 + // End --> 233.36 +</script> 233.37 +</head> 233.38 +<body> 233.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 233.40 + <tbody><tr><td> 233.41 + <hr noshade="noshade" size="1" width="90%"></hr> 233.42 + <center> 233.43 + <br/> 233.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 233.45 + <br/> 233.46 + </center> 233.47 + <hr noshade="noshade" size="1" width="90%"></hr> 233.48 + <center> 233.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 233.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 233.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 233.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 233.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 233.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 233.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 233.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 233.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 233.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 233.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 233.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 233.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 233.62 + </font> 233.63 + </td></tr></tbody> 233.64 + </table> 233.65 + </center> 233.66 + <hr noshade="noshade" size="1" width="90%"></hr> 233.67 + </td></tr></tbody> 233.68 +</table> 233.69 +<!-- Generated by Doxygen 1.5.7.1 --> 233.70 +<script type="text/javascript"> 233.71 +<!-- 233.72 +function changeDisplayState (e){ 233.73 + var num=this.id.replace(/[^[0-9]/g,''); 233.74 + var button=this.firstChild; 233.75 + var sectionDiv=document.getElementById('dynsection'+num); 233.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 233.77 + sectionDiv.style.display='block'; 233.78 + button.src='open.gif'; 233.79 + }else{ 233.80 + sectionDiv.style.display='none'; 233.81 + button.src='closed.gif'; 233.82 + } 233.83 +} 233.84 +function initDynSections(){ 233.85 + var divs=document.getElementsByTagName('div'); 233.86 + var sectionCounter=1; 233.87 + for(var i=0;i<divs.length-1;i++){ 233.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 233.89 + var header=divs[i]; 233.90 + var section=divs[i+1]; 233.91 + var button=header.firstChild; 233.92 + if (button!='IMG'){ 233.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 233.94 + button=document.createElement('img'); 233.95 + divs[i].insertBefore(button,divs[i].firstChild); 233.96 + } 233.97 + header.style.cursor='pointer'; 233.98 + header.onclick=changeDisplayState; 233.99 + header.id='dynheader'+sectionCounter; 233.100 + button.src='closed.gif'; 233.101 + section.id='dynsection'+sectionCounter; 233.102 + section.style.display='none'; 233.103 + section.style.marginLeft='14px'; 233.104 + sectionCounter++; 233.105 + } 233.106 + } 233.107 +} 233.108 +window.onload = initDynSections; 233.109 +--> 233.110 +</script> 233.111 +<div class="navigation" id="top"> 233.112 + <div class="tabs"> 233.113 + <ul> 233.114 + <li><a href="index.html"><span>Main Page</span></a></li> 233.115 + <li><a href="modules.html"><span>Modules</span></a></li> 233.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 233.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 233.118 + </ul> 233.119 + </div> 233.120 + <div class="tabs"> 233.121 + <ul> 233.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 233.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 233.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 233.125 + </ul> 233.126 + </div> 233.127 + <div class="tabs"> 233.128 + <ul> 233.129 + <li class="current"><a href="functions.html"><span>All</span></a></li> 233.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 233.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 233.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 233.133 + </ul> 233.134 + </div> 233.135 + <div class="tabs"> 233.136 + <ul> 233.137 + <li><a href="functions.html#index__"><span>_</span></a></li> 233.138 + <li><a href="functions_0x61.html#index_a"><span>a</span></a></li> 233.139 + <li><a href="functions_0x62.html#index_b"><span>b</span></a></li> 233.140 + <li><a href="functions_0x63.html#index_c"><span>c</span></a></li> 233.141 + <li><a href="functions_0x64.html#index_d"><span>d</span></a></li> 233.142 + <li><a href="functions_0x65.html#index_e"><span>e</span></a></li> 233.143 + <li><a href="functions_0x66.html#index_f"><span>f</span></a></li> 233.144 + <li><a href="functions_0x67.html#index_g"><span>g</span></a></li> 233.145 + <li><a href="functions_0x68.html#index_h"><span>h</span></a></li> 233.146 + <li><a href="functions_0x69.html#index_i"><span>i</span></a></li> 233.147 + <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li> 233.148 + <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li> 233.149 + <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li> 233.150 + <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li> 233.151 + <li><a href="functions_0x6f.html#index_o"><span>o</span></a></li> 233.152 + <li><a href="functions_0x70.html#index_p"><span>p</span></a></li> 233.153 + <li><a href="functions_0x71.html#index_q"><span>q</span></a></li> 233.154 + <li><a href="functions_0x72.html#index_r"><span>r</span></a></li> 233.155 + <li><a href="functions_0x73.html#index_s"><span>s</span></a></li> 233.156 + <li><a href="functions_0x74.html#index_t"><span>t</span></a></li> 233.157 + <li><a href="functions_0x75.html#index_u"><span>u</span></a></li> 233.158 + <li><a href="functions_0x76.html#index_v"><span>v</span></a></li> 233.159 + <li><a href="functions_0x77.html#index_w"><span>w</span></a></li> 233.160 + <li><a href="functions_0x78.html#index_x"><span>x</span></a></li> 233.161 + <li><a href="functions_0x79.html#index_y"><span>y</span></a></li> 233.162 + <li class="current"><a href="functions_0x7e.html#index_~"><span>~</span></a></li> 233.163 + </ul> 233.164 + </div> 233.165 +</div> 233.166 +<div class="contents"> 233.167 +Here is a list of all documented class members with links to the class documentation for each member: 233.168 +<p> 233.169 +<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul> 233.170 +<li>~CImg() 233.171 +: <a class="el" href="structcimg__library_1_1CImg.html#d71c294580a5307aa31246e4a1ee7866">CImg</a> 233.172 +<li>~CImgDisplay() 233.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e4b8135f23d41f2077ff1d63deb452ea">CImgDisplay</a> 233.174 +<li>~CImgList() 233.175 +: <a class="el" href="structcimg__library_1_1CImgList.html#30a624e43eb40c6df0fa1fdacf5c6235">CImgList</a> 233.176 +</ul> 233.177 +</div> 233.178 +<hr noshade="noshade" size="1" width="100%"> 233.179 +<a href="http://sourceforge.net"> 233.180 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 233.181 +</a> 233.182 +<!-- Start of StatCounter Code --> 233.183 +<script type="text/javascript" language="javascript"> 233.184 +<!-- 233.185 +var sc_project=895001; 233.186 +var sc_invisible=1; 233.187 +var sc_partition=7; 233.188 +var sc_security="5ea85181"; 233.189 +//--> 233.190 +</script> 233.191 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 233.192 +<!-- End of StatCounter Code --> 233.193 +</body> 233.194 +</html>
234.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 234.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func.html Mon Aug 03 14:09:20 2009 +0100 234.3 @@ -0,0 +1,187 @@ 234.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 234.5 +<head> 234.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 234.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 234.8 +<meta content="David Tschumperle" name="author"></meta> 234.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 234.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 234.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 234.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 234.13 +<style type="text/css"> 234.14 +<!-- 234.15 +body {background-color:white; font-family:sans-serif; } 234.16 +a:active{text-decoration:none; color:#303090} 234.17 +a:link{text-decoration:none; color:#303090} 234.18 +a:visited{text-decoration:none; color:#303090} 234.19 +a:hover{text-decoration:underline; color:#4E9F71} 234.20 +--> 234.21 +</style> 234.22 +<script language="JavaScript" type="text/javascript"> 234.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 234.24 + <!-- Web Site: http://redrival.com/eak/ --> 234.25 + <!-- This script and many more are available free online at --> 234.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 234.27 + <!-- Begin 234.28 + function NewWindow(mypage, myname, w, h, scroll) { 234.29 + var winl = (screen.width - w) / 2; 234.30 + var wint = (screen.height - h) / 2; 234.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 234.32 + win = window.open(mypage, myname, winprops) 234.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 234.34 + } 234.35 + // End --> 234.36 +</script> 234.37 +</head> 234.38 +<body> 234.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 234.40 + <tbody><tr><td> 234.41 + <hr noshade="noshade" size="1" width="90%"></hr> 234.42 + <center> 234.43 + <br/> 234.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 234.45 + <br/> 234.46 + </center> 234.47 + <hr noshade="noshade" size="1" width="90%"></hr> 234.48 + <center> 234.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 234.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 234.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 234.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 234.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 234.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 234.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 234.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 234.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 234.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 234.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 234.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 234.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 234.62 + </font> 234.63 + </td></tr></tbody> 234.64 + </table> 234.65 + </center> 234.66 + <hr noshade="noshade" size="1" width="90%"></hr> 234.67 + </td></tr></tbody> 234.68 +</table> 234.69 +<!-- Generated by Doxygen 1.5.7.1 --> 234.70 +<script type="text/javascript"> 234.71 +<!-- 234.72 +function changeDisplayState (e){ 234.73 + var num=this.id.replace(/[^[0-9]/g,''); 234.74 + var button=this.firstChild; 234.75 + var sectionDiv=document.getElementById('dynsection'+num); 234.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 234.77 + sectionDiv.style.display='block'; 234.78 + button.src='open.gif'; 234.79 + }else{ 234.80 + sectionDiv.style.display='none'; 234.81 + button.src='closed.gif'; 234.82 + } 234.83 +} 234.84 +function initDynSections(){ 234.85 + var divs=document.getElementsByTagName('div'); 234.86 + var sectionCounter=1; 234.87 + for(var i=0;i<divs.length-1;i++){ 234.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 234.89 + var header=divs[i]; 234.90 + var section=divs[i+1]; 234.91 + var button=header.firstChild; 234.92 + if (button!='IMG'){ 234.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 234.94 + button=document.createElement('img'); 234.95 + divs[i].insertBefore(button,divs[i].firstChild); 234.96 + } 234.97 + header.style.cursor='pointer'; 234.98 + header.onclick=changeDisplayState; 234.99 + header.id='dynheader'+sectionCounter; 234.100 + button.src='closed.gif'; 234.101 + section.id='dynsection'+sectionCounter; 234.102 + section.style.display='none'; 234.103 + section.style.marginLeft='14px'; 234.104 + sectionCounter++; 234.105 + } 234.106 + } 234.107 +} 234.108 +window.onload = initDynSections; 234.109 +--> 234.110 +</script> 234.111 +<div class="navigation" id="top"> 234.112 + <div class="tabs"> 234.113 + <ul> 234.114 + <li><a href="index.html"><span>Main Page</span></a></li> 234.115 + <li><a href="modules.html"><span>Modules</span></a></li> 234.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 234.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 234.118 + </ul> 234.119 + </div> 234.120 + <div class="tabs"> 234.121 + <ul> 234.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 234.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 234.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 234.125 + </ul> 234.126 + </div> 234.127 + <div class="tabs"> 234.128 + <ul> 234.129 + <li><a href="functions.html"><span>All</span></a></li> 234.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 234.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 234.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 234.133 + </ul> 234.134 + </div> 234.135 + <div class="tabs"> 234.136 + <ul> 234.137 + <li class="current"><a href="functions_func.html#index__"><span>_</span></a></li> 234.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 234.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 234.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 234.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 234.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 234.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 234.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 234.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 234.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 234.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 234.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 234.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 234.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 234.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 234.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 234.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 234.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 234.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 234.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 234.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 234.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 234.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 234.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 234.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 234.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 234.163 + </ul> 234.164 + </div> 234.165 +</div> 234.166 +<div class="contents"> 234.167 + 234.168 +<p> 234.169 +<h3><a class="anchor" name="index__">- _ -</a></h3><ul> 234.170 +<li>_save_cimg() 234.171 +: <a class="el" href="structcimg__library_1_1CImgList.html#77f67312de1a49a344111a595893f0f9">CImgList</a> 234.172 +</ul> 234.173 +</div> 234.174 +<hr noshade="noshade" size="1" width="100%"> 234.175 +<a href="http://sourceforge.net"> 234.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 234.177 +</a> 234.178 +<!-- Start of StatCounter Code --> 234.179 +<script type="text/javascript" language="javascript"> 234.180 +<!-- 234.181 +var sc_project=895001; 234.182 +var sc_invisible=1; 234.183 +var sc_partition=7; 234.184 +var sc_security="5ea85181"; 234.185 +//--> 234.186 +</script> 234.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 234.188 +<!-- End of StatCounter Code --> 234.189 +</body> 234.190 +</html>
235.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 235.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x61.html Mon Aug 03 14:09:20 2009 +0100 235.3 @@ -0,0 +1,234 @@ 235.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 235.5 +<head> 235.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 235.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 235.8 +<meta content="David Tschumperle" name="author"></meta> 235.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 235.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 235.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 235.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 235.13 +<style type="text/css"> 235.14 +<!-- 235.15 +body {background-color:white; font-family:sans-serif; } 235.16 +a:active{text-decoration:none; color:#303090} 235.17 +a:link{text-decoration:none; color:#303090} 235.18 +a:visited{text-decoration:none; color:#303090} 235.19 +a:hover{text-decoration:underline; color:#4E9F71} 235.20 +--> 235.21 +</style> 235.22 +<script language="JavaScript" type="text/javascript"> 235.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 235.24 + <!-- Web Site: http://redrival.com/eak/ --> 235.25 + <!-- This script and many more are available free online at --> 235.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 235.27 + <!-- Begin 235.28 + function NewWindow(mypage, myname, w, h, scroll) { 235.29 + var winl = (screen.width - w) / 2; 235.30 + var wint = (screen.height - h) / 2; 235.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 235.32 + win = window.open(mypage, myname, winprops) 235.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 235.34 + } 235.35 + // End --> 235.36 +</script> 235.37 +</head> 235.38 +<body> 235.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 235.40 + <tbody><tr><td> 235.41 + <hr noshade="noshade" size="1" width="90%"></hr> 235.42 + <center> 235.43 + <br/> 235.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 235.45 + <br/> 235.46 + </center> 235.47 + <hr noshade="noshade" size="1" width="90%"></hr> 235.48 + <center> 235.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 235.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 235.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 235.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 235.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 235.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 235.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 235.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 235.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 235.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 235.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 235.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 235.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 235.62 + </font> 235.63 + </td></tr></tbody> 235.64 + </table> 235.65 + </center> 235.66 + <hr noshade="noshade" size="1" width="90%"></hr> 235.67 + </td></tr></tbody> 235.68 +</table> 235.69 +<!-- Generated by Doxygen 1.5.7.1 --> 235.70 +<script type="text/javascript"> 235.71 +<!-- 235.72 +function changeDisplayState (e){ 235.73 + var num=this.id.replace(/[^[0-9]/g,''); 235.74 + var button=this.firstChild; 235.75 + var sectionDiv=document.getElementById('dynsection'+num); 235.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 235.77 + sectionDiv.style.display='block'; 235.78 + button.src='open.gif'; 235.79 + }else{ 235.80 + sectionDiv.style.display='none'; 235.81 + button.src='closed.gif'; 235.82 + } 235.83 +} 235.84 +function initDynSections(){ 235.85 + var divs=document.getElementsByTagName('div'); 235.86 + var sectionCounter=1; 235.87 + for(var i=0;i<divs.length-1;i++){ 235.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 235.89 + var header=divs[i]; 235.90 + var section=divs[i+1]; 235.91 + var button=header.firstChild; 235.92 + if (button!='IMG'){ 235.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 235.94 + button=document.createElement('img'); 235.95 + divs[i].insertBefore(button,divs[i].firstChild); 235.96 + } 235.97 + header.style.cursor='pointer'; 235.98 + header.onclick=changeDisplayState; 235.99 + header.id='dynheader'+sectionCounter; 235.100 + button.src='closed.gif'; 235.101 + section.id='dynsection'+sectionCounter; 235.102 + section.style.display='none'; 235.103 + section.style.marginLeft='14px'; 235.104 + sectionCounter++; 235.105 + } 235.106 + } 235.107 +} 235.108 +window.onload = initDynSections; 235.109 +--> 235.110 +</script> 235.111 +<div class="navigation" id="top"> 235.112 + <div class="tabs"> 235.113 + <ul> 235.114 + <li><a href="index.html"><span>Main Page</span></a></li> 235.115 + <li><a href="modules.html"><span>Modules</span></a></li> 235.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 235.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 235.118 + </ul> 235.119 + </div> 235.120 + <div class="tabs"> 235.121 + <ul> 235.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 235.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 235.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 235.125 + </ul> 235.126 + </div> 235.127 + <div class="tabs"> 235.128 + <ul> 235.129 + <li><a href="functions.html"><span>All</span></a></li> 235.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 235.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 235.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 235.133 + </ul> 235.134 + </div> 235.135 + <div class="tabs"> 235.136 + <ul> 235.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 235.138 + <li class="current"><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 235.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 235.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 235.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 235.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 235.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 235.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 235.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 235.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 235.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 235.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 235.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 235.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 235.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 235.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 235.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 235.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 235.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 235.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 235.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 235.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 235.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 235.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 235.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 235.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 235.163 + </ul> 235.164 + </div> 235.165 +</div> 235.166 +<div class="contents"> 235.167 + 235.168 +<p> 235.169 +<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 235.170 +<li>abs() 235.171 +: <a class="el" href="structcimg__library_1_1CImg.html#9ae2e5f7990e1ec59876b1c1f8484ea0">CImg</a> 235.172 +<li>acos() 235.173 +: <a class="el" href="structcimg__library_1_1CImg.html#ec748ded5bb19d52f564ef7a6ae2652d">CImg</a> 235.174 +<li>append() 235.175 +: <a class="el" href="structcimg__library_1_1CImg.html#42e2ed19679d15fdd27097ed96501fae">CImg</a> 235.176 +<li>append_object3d() 235.177 +: <a class="el" href="structcimg__library_1_1CImg.html#91932674ad04313d7b164d874b95348b">CImg</a> 235.178 +<li>apply() 235.179 +: <a class="el" href="structcimg__library_1_1CImg.html#ecd1394048b7fef2eb30ea3985600614">CImg</a> 235.180 +<li>asin() 235.181 +: <a class="el" href="structcimg__library_1_1CImg.html#c23ecd49999eedf62c9142fe1559bdd6">CImg</a> 235.182 +<li>assign() 235.183 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#7e3269eea96ea399adc4197b5f0850b0">CImgDisplay</a> 235.184 +, <a class="el" href="structcimg__library_1_1CImg.html#18e8003d8101d51963e0eea3a86b8f47">CImg</a> 235.185 +, <a class="el" href="structcimg__library_1_1CImgList.html#01fc32c65505eb67c472f275f16a2f3e">CImgList</a> 235.186 +, <a class="el" href="structcimg__library_1_1CImg.html#6afdd52b55027273b836655fcf64d74d">CImg</a> 235.187 +, <a class="el" href="structcimg__library_1_1CImgList.html#1e358f65ab400e6a27d80f26afe9aeb6">CImgList</a> 235.188 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#3730afc08603d9131eca7ce55a98cee9">CImgDisplay</a> 235.189 +, <a class="el" href="structcimg__library_1_1CImg.html#f8906ce66ef0cdb44c37c7c26b1208ab">CImg</a> 235.190 +, <a class="el" href="structcimg__library_1_1CImgList.html#546cab2b857ae5a3d50224160a222baf">CImgList</a> 235.191 +, <a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4">CImg</a> 235.192 +, <a class="el" href="structcimg__library_1_1CImgList.html#15514475aae54fae9ea5cbd516579095">CImgList</a> 235.193 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#c82bdf6c363f7d9fa9dacacc2cf31d00">CImgDisplay</a> 235.194 +, <a class="el" href="structcimg__library_1_1CImg.html#934bab7595fd98de5131d5d2394e4a81">CImg</a> 235.195 +, <a class="el" href="structcimg__library_1_1CImgList.html#d221dc2a95d6921ad185721030882d62">CImgList</a> 235.196 +, <a class="el" href="structcimg__library_1_1CImg.html#a5a08c14d01a530e5bc9549db77144f7">CImg</a> 235.197 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#c103e68816e12f5fd67c8f293fe18acd">CImgDisplay</a> 235.198 +, <a class="el" href="structcimg__library_1_1CImg.html#42e17fa9823170992210022cc0646684">CImg</a> 235.199 +, <a class="el" href="structcimg__library_1_1CImgList.html#0841eec5704b95c2ff576bded488261b">CImgList</a> 235.200 +, <a class="el" href="structcimg__library_1_1CImg.html#65018fb0cbdbd9e8d1404321cd69bfe5">CImg</a> 235.201 +, <a class="el" href="structcimg__library_1_1CImgList.html#c1fdedd65f2728500da3af7e94c19ae2">CImgList</a> 235.202 +, <a class="el" href="structcimg__library_1_1CImg.html#55e2f2335ea8060148c59ec4f57846e2">CImg</a> 235.203 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#816d8c873ae3d27854bd0620646224b9">CImgDisplay</a> 235.204 +, <a class="el" href="structcimg__library_1_1CImg.html#14047abcb2a67ba0dadc92e34b456111">CImg</a> 235.205 +<li>at() 235.206 +: <a class="el" href="structcimg__library_1_1CImg.html#0e62c450ce69d12159278e628ec8b874">CImg</a> 235.207 +<li>atan() 235.208 +: <a class="el" href="structcimg__library_1_1CImg.html#1de850b33bf304ba192bd84b7197426d">CImg</a> 235.209 +<li>atX() 235.210 +: <a class="el" href="structcimg__library_1_1CImg.html#6b101e24bec2ee98802ae86055d7ca90">CImg</a> 235.211 +<li>atXY() 235.212 +: <a class="el" href="structcimg__library_1_1CImg.html#3f153bea6d9f54e83f37334cc4d7bd4b">CImg</a> 235.213 +<li>atXYZ() 235.214 +: <a class="el" href="structcimg__library_1_1CImg.html#341b51537773e271b846aa98bd24284f">CImg</a> 235.215 +<li>atXYZV() 235.216 +: <a class="el" href="structcimg__library_1_1CImg.html#bcfb692a3e43747bc1d9c1da63e13be8">CImg</a> 235.217 +<li>autocrop() 235.218 +: <a class="el" href="structcimg__library_1_1CImg.html#ccb9eea9bbff8fbc0b63a8b331a35671">CImg</a> 235.219 +</ul> 235.220 +</div> 235.221 +<hr noshade="noshade" size="1" width="100%"> 235.222 +<a href="http://sourceforge.net"> 235.223 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 235.224 +</a> 235.225 +<!-- Start of StatCounter Code --> 235.226 +<script type="text/javascript" language="javascript"> 235.227 +<!-- 235.228 +var sc_project=895001; 235.229 +var sc_invisible=1; 235.230 +var sc_partition=7; 235.231 +var sc_security="5ea85181"; 235.232 +//--> 235.233 +</script> 235.234 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 235.235 +<!-- End of StatCounter Code --> 235.236 +</body> 235.237 +</html>
236.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 236.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x62.html Mon Aug 03 14:09:20 2009 +0100 236.3 @@ -0,0 +1,201 @@ 236.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 236.5 +<head> 236.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 236.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 236.8 +<meta content="David Tschumperle" name="author"></meta> 236.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 236.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 236.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 236.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 236.13 +<style type="text/css"> 236.14 +<!-- 236.15 +body {background-color:white; font-family:sans-serif; } 236.16 +a:active{text-decoration:none; color:#303090} 236.17 +a:link{text-decoration:none; color:#303090} 236.18 +a:visited{text-decoration:none; color:#303090} 236.19 +a:hover{text-decoration:underline; color:#4E9F71} 236.20 +--> 236.21 +</style> 236.22 +<script language="JavaScript" type="text/javascript"> 236.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 236.24 + <!-- Web Site: http://redrival.com/eak/ --> 236.25 + <!-- This script and many more are available free online at --> 236.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 236.27 + <!-- Begin 236.28 + function NewWindow(mypage, myname, w, h, scroll) { 236.29 + var winl = (screen.width - w) / 2; 236.30 + var wint = (screen.height - h) / 2; 236.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 236.32 + win = window.open(mypage, myname, winprops) 236.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 236.34 + } 236.35 + // End --> 236.36 +</script> 236.37 +</head> 236.38 +<body> 236.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 236.40 + <tbody><tr><td> 236.41 + <hr noshade="noshade" size="1" width="90%"></hr> 236.42 + <center> 236.43 + <br/> 236.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 236.45 + <br/> 236.46 + </center> 236.47 + <hr noshade="noshade" size="1" width="90%"></hr> 236.48 + <center> 236.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 236.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 236.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 236.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 236.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 236.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 236.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 236.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 236.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 236.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 236.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 236.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 236.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 236.62 + </font> 236.63 + </td></tr></tbody> 236.64 + </table> 236.65 + </center> 236.66 + <hr noshade="noshade" size="1" width="90%"></hr> 236.67 + </td></tr></tbody> 236.68 +</table> 236.69 +<!-- Generated by Doxygen 1.5.7.1 --> 236.70 +<script type="text/javascript"> 236.71 +<!-- 236.72 +function changeDisplayState (e){ 236.73 + var num=this.id.replace(/[^[0-9]/g,''); 236.74 + var button=this.firstChild; 236.75 + var sectionDiv=document.getElementById('dynsection'+num); 236.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 236.77 + sectionDiv.style.display='block'; 236.78 + button.src='open.gif'; 236.79 + }else{ 236.80 + sectionDiv.style.display='none'; 236.81 + button.src='closed.gif'; 236.82 + } 236.83 +} 236.84 +function initDynSections(){ 236.85 + var divs=document.getElementsByTagName('div'); 236.86 + var sectionCounter=1; 236.87 + for(var i=0;i<divs.length-1;i++){ 236.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 236.89 + var header=divs[i]; 236.90 + var section=divs[i+1]; 236.91 + var button=header.firstChild; 236.92 + if (button!='IMG'){ 236.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 236.94 + button=document.createElement('img'); 236.95 + divs[i].insertBefore(button,divs[i].firstChild); 236.96 + } 236.97 + header.style.cursor='pointer'; 236.98 + header.onclick=changeDisplayState; 236.99 + header.id='dynheader'+sectionCounter; 236.100 + button.src='closed.gif'; 236.101 + section.id='dynsection'+sectionCounter; 236.102 + section.style.display='none'; 236.103 + section.style.marginLeft='14px'; 236.104 + sectionCounter++; 236.105 + } 236.106 + } 236.107 +} 236.108 +window.onload = initDynSections; 236.109 +--> 236.110 +</script> 236.111 +<div class="navigation" id="top"> 236.112 + <div class="tabs"> 236.113 + <ul> 236.114 + <li><a href="index.html"><span>Main Page</span></a></li> 236.115 + <li><a href="modules.html"><span>Modules</span></a></li> 236.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 236.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 236.118 + </ul> 236.119 + </div> 236.120 + <div class="tabs"> 236.121 + <ul> 236.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 236.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 236.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 236.125 + </ul> 236.126 + </div> 236.127 + <div class="tabs"> 236.128 + <ul> 236.129 + <li><a href="functions.html"><span>All</span></a></li> 236.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 236.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 236.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 236.133 + </ul> 236.134 + </div> 236.135 + <div class="tabs"> 236.136 + <ul> 236.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 236.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 236.139 + <li class="current"><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 236.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 236.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 236.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 236.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 236.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 236.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 236.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 236.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 236.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 236.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 236.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 236.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 236.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 236.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 236.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 236.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 236.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 236.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 236.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 236.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 236.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 236.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 236.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 236.163 + </ul> 236.164 + </div> 236.165 +</div> 236.166 +<div class="contents"> 236.167 + 236.168 +<p> 236.169 +<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 236.170 +<li>back() 236.171 +: <a class="el" href="structcimg__library_1_1CImg.html#94c484819f66b605343298653d4b1d07">CImg</a> 236.172 +<li>BayertoRGB() 236.173 +: <a class="el" href="structcimg__library_1_1CImg.html#4d532472a01bafd5a972391870fbdcab">CImg</a> 236.174 +<li>begin() 236.175 +: <a class="el" href="structcimg__library_1_1CImg.html#d69bd11391be1a1dba5c8202259664f8">CImg</a> 236.176 +<li>blur() 236.177 +: <a class="el" href="structcimg__library_1_1CImg.html#fcc7e2db6bcdb9da96698da4ef546678">CImg</a> 236.178 +<li>blur_anisotropic() 236.179 +: <a class="el" href="structcimg__library_1_1CImg.html#96d79e2b965b9fa045c40974ba13b894">CImg</a> 236.180 +<li>blur_bilateral() 236.181 +: <a class="el" href="structcimg__library_1_1CImg.html#904c1b55b3ee2db5b38c9478f30e8000">CImg</a> 236.182 +<li>blur_median() 236.183 +: <a class="el" href="structcimg__library_1_1CImg.html#55c5427152277f80c6cb9a36ae77ddf1">CImg</a> 236.184 +<li>blur_patch() 236.185 +: <a class="el" href="structcimg__library_1_1CImg.html#1f2ed9ee1db1a507c21a1863a3a51d11">CImg</a> 236.186 +</ul> 236.187 +</div> 236.188 +<hr noshade="noshade" size="1" width="100%"> 236.189 +<a href="http://sourceforge.net"> 236.190 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 236.191 +</a> 236.192 +<!-- Start of StatCounter Code --> 236.193 +<script type="text/javascript" language="javascript"> 236.194 +<!-- 236.195 +var sc_project=895001; 236.196 +var sc_invisible=1; 236.197 +var sc_partition=7; 236.198 +var sc_security="5ea85181"; 236.199 +//--> 236.200 +</script> 236.201 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 236.202 +<!-- End of StatCounter Code --> 236.203 +</body> 236.204 +</html>
237.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 237.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x63.html Mon Aug 03 14:09:20 2009 +0100 237.3 @@ -0,0 +1,242 @@ 237.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 237.5 +<head> 237.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 237.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 237.8 +<meta content="David Tschumperle" name="author"></meta> 237.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 237.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 237.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 237.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 237.13 +<style type="text/css"> 237.14 +<!-- 237.15 +body {background-color:white; font-family:sans-serif; } 237.16 +a:active{text-decoration:none; color:#303090} 237.17 +a:link{text-decoration:none; color:#303090} 237.18 +a:visited{text-decoration:none; color:#303090} 237.19 +a:hover{text-decoration:underline; color:#4E9F71} 237.20 +--> 237.21 +</style> 237.22 +<script language="JavaScript" type="text/javascript"> 237.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 237.24 + <!-- Web Site: http://redrival.com/eak/ --> 237.25 + <!-- This script and many more are available free online at --> 237.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 237.27 + <!-- Begin 237.28 + function NewWindow(mypage, myname, w, h, scroll) { 237.29 + var winl = (screen.width - w) / 2; 237.30 + var wint = (screen.height - h) / 2; 237.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 237.32 + win = window.open(mypage, myname, winprops) 237.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 237.34 + } 237.35 + // End --> 237.36 +</script> 237.37 +</head> 237.38 +<body> 237.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 237.40 + <tbody><tr><td> 237.41 + <hr noshade="noshade" size="1" width="90%"></hr> 237.42 + <center> 237.43 + <br/> 237.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 237.45 + <br/> 237.46 + </center> 237.47 + <hr noshade="noshade" size="1" width="90%"></hr> 237.48 + <center> 237.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 237.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 237.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 237.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 237.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 237.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 237.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 237.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 237.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 237.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 237.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 237.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 237.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 237.62 + </font> 237.63 + </td></tr></tbody> 237.64 + </table> 237.65 + </center> 237.66 + <hr noshade="noshade" size="1" width="90%"></hr> 237.67 + </td></tr></tbody> 237.68 +</table> 237.69 +<!-- Generated by Doxygen 1.5.7.1 --> 237.70 +<script type="text/javascript"> 237.71 +<!-- 237.72 +function changeDisplayState (e){ 237.73 + var num=this.id.replace(/[^[0-9]/g,''); 237.74 + var button=this.firstChild; 237.75 + var sectionDiv=document.getElementById('dynsection'+num); 237.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 237.77 + sectionDiv.style.display='block'; 237.78 + button.src='open.gif'; 237.79 + }else{ 237.80 + sectionDiv.style.display='none'; 237.81 + button.src='closed.gif'; 237.82 + } 237.83 +} 237.84 +function initDynSections(){ 237.85 + var divs=document.getElementsByTagName('div'); 237.86 + var sectionCounter=1; 237.87 + for(var i=0;i<divs.length-1;i++){ 237.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 237.89 + var header=divs[i]; 237.90 + var section=divs[i+1]; 237.91 + var button=header.firstChild; 237.92 + if (button!='IMG'){ 237.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 237.94 + button=document.createElement('img'); 237.95 + divs[i].insertBefore(button,divs[i].firstChild); 237.96 + } 237.97 + header.style.cursor='pointer'; 237.98 + header.onclick=changeDisplayState; 237.99 + header.id='dynheader'+sectionCounter; 237.100 + button.src='closed.gif'; 237.101 + section.id='dynsection'+sectionCounter; 237.102 + section.style.display='none'; 237.103 + section.style.marginLeft='14px'; 237.104 + sectionCounter++; 237.105 + } 237.106 + } 237.107 +} 237.108 +window.onload = initDynSections; 237.109 +--> 237.110 +</script> 237.111 +<div class="navigation" id="top"> 237.112 + <div class="tabs"> 237.113 + <ul> 237.114 + <li><a href="index.html"><span>Main Page</span></a></li> 237.115 + <li><a href="modules.html"><span>Modules</span></a></li> 237.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 237.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 237.118 + </ul> 237.119 + </div> 237.120 + <div class="tabs"> 237.121 + <ul> 237.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 237.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 237.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 237.125 + </ul> 237.126 + </div> 237.127 + <div class="tabs"> 237.128 + <ul> 237.129 + <li><a href="functions.html"><span>All</span></a></li> 237.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 237.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 237.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 237.133 + </ul> 237.134 + </div> 237.135 + <div class="tabs"> 237.136 + <ul> 237.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 237.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 237.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 237.140 + <li class="current"><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 237.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 237.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 237.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 237.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 237.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 237.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 237.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 237.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 237.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 237.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 237.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 237.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 237.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 237.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 237.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 237.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 237.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 237.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 237.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 237.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 237.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 237.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 237.163 + </ul> 237.164 + </div> 237.165 +</div> 237.166 +<div class="contents"> 237.167 + 237.168 +<p> 237.169 +<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 237.170 +<li>channel() 237.171 +: <a class="el" href="structcimg__library_1_1CImg.html#7c4404d7b68c6e6f1376191748e3e4b0">CImg</a> 237.172 +<li>channels() 237.173 +: <a class="el" href="structcimg__library_1_1CImg.html#8ca7d14971bd5e6f1ff40801e0c520dc">CImg</a> 237.174 +<li>CImg() 237.175 +: <a class="el" href="structcimg__library_1_1CImg.html#f0cf1b66afb42bbb4750895fe66bcc69">CImg</a> 237.176 +<li>CImgDisplay() 237.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#54e3407c3b858f5f40283264e39b4f38">CImgDisplay</a> 237.178 +<li>CImgList() 237.179 +: <a class="el" href="structcimg__library_1_1CImgList.html#067f5550d22707d51823f969af480fd7">CImgList</a> 237.180 +<li>clear() 237.181 +: <a class="el" href="structcimg__library_1_1CImg.html#b5cdf8f13cc7065fef4da8214ff36d5d">CImg</a> 237.182 +, <a class="el" href="structcimg__library_1_1CImgList.html#b7aec05f7791abe11f1d0f0cdc8bd24e">CImgList</a> 237.183 +<li>close() 237.184 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#7e35c3363f8859c8a952a60dd4aa3fca">CImgDisplay</a> 237.185 +<li>CMYKtoCMY() 237.186 +: <a class="el" href="structcimg__library_1_1CImg.html#e3827dc11a003ee30b1cd74ed7b74e15">CImg</a> 237.187 +<li>CMYKtoRGB() 237.188 +: <a class="el" href="structcimg__library_1_1CImg.html#c59bacaa7b500f54351ebc11a2a4fc1d">CImg</a> 237.189 +<li>CMYtoCMYK() 237.190 +: <a class="el" href="structcimg__library_1_1CImg.html#86448a9b36330cd1cdca41310714c82c">CImg</a> 237.191 +<li>CMYtoRGB() 237.192 +: <a class="el" href="structcimg__library_1_1CImg.html#f44e7452ef72387ee411a48e8fd8f2c6">CImg</a> 237.193 +<li>column() 237.194 +: <a class="el" href="structcimg__library_1_1CImg.html#9995a97a1f5bf1de44670dd998f6b19e">CImg</a> 237.195 +<li>columns() 237.196 +: <a class="el" href="structcimg__library_1_1CImg.html#a70ff39a9a7bd64954f4f18819f8e596">CImg</a> 237.197 +<li>cone3d() 237.198 +: <a class="el" href="structcimg__library_1_1CImg.html#4cfdd883704e403728d35979c07a069b">CImg</a> 237.199 +<li>contains() 237.200 +: <a class="el" href="structcimg__library_1_1CImg.html#0254f03aac63118f3fbc1ca3d9ede477">CImg</a> 237.201 +<li>containsXYZV() 237.202 +: <a class="el" href="structcimg__library_1_1CImg.html#e530958fd7fd7a1e7c5017c3e7c411de">CImg</a> 237.203 +<li>contrast_LUT8() 237.204 +: <a class="el" href="structcimg__library_1_1CImg.html#f26c4f029563bf7ffd47ba51e8e09984">CImg</a> 237.205 +<li>convolve() 237.206 +: <a class="el" href="structcimg__library_1_1CImg.html#6ad1f71fcaf356a1480b81c55109ca86">CImg</a> 237.207 +<li>correlate() 237.208 +: <a class="el" href="structcimg__library_1_1CImg.html#e42e12627e5a8204d328f84df9976fc8">CImg</a> 237.209 +<li>cos() 237.210 +: <a class="el" href="structcimg__library_1_1CImg.html#fd20e16deff4c21aab145b028de1e2ac">CImg</a> 237.211 +<li>crop() 237.212 +: <a class="el" href="structcimg__library_1_1CImg.html#0a1400f592a7192b1e6421f5d7045d6a">CImg</a> 237.213 +<li>cross() 237.214 +: <a class="el" href="structcimg__library_1_1CImg.html#49ccd3590b6edcf060b2c8def95d96a7">CImg</a> 237.215 +<li>cube3d() 237.216 +: <a class="el" href="structcimg__library_1_1CImg.html#7909d0564ee489806b89a79159a9d91d">CImg</a> 237.217 +<li>cubic_atX() 237.218 +: <a class="el" href="structcimg__library_1_1CImg.html#fd446fb86260db4fd990fdab18e61181">CImg</a> 237.219 +<li>cubic_atXY() 237.220 +: <a class="el" href="structcimg__library_1_1CImg.html#9178dbccd4a22a5e2a3b41c243244eb8">CImg</a> 237.221 +<li>cuboid3d() 237.222 +: <a class="el" href="structcimg__library_1_1CImg.html#e15246012bf5a2672766bda1743417f0">CImg</a> 237.223 +<li>cut() 237.224 +: <a class="el" href="structcimg__library_1_1CImg.html#5f8f08d52f945f28fd33737fabaa6286">CImg</a> 237.225 +<li>cylinder3d() 237.226 +: <a class="el" href="structcimg__library_1_1CImg.html#13077712f8141674ceb3946aafc37a3f">CImg</a> 237.227 +</ul> 237.228 +</div> 237.229 +<hr noshade="noshade" size="1" width="100%"> 237.230 +<a href="http://sourceforge.net"> 237.231 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 237.232 +</a> 237.233 +<!-- Start of StatCounter Code --> 237.234 +<script type="text/javascript" language="javascript"> 237.235 +<!-- 237.236 +var sc_project=895001; 237.237 +var sc_invisible=1; 237.238 +var sc_partition=7; 237.239 +var sc_security="5ea85181"; 237.240 +//--> 237.241 +</script> 237.242 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 237.243 +<!-- End of StatCounter Code --> 237.244 +</body> 237.245 +</html>
238.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 238.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x64.html Mon Aug 03 14:09:20 2009 +0100 238.3 @@ -0,0 +1,264 @@ 238.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 238.5 +<head> 238.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 238.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 238.8 +<meta content="David Tschumperle" name="author"></meta> 238.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 238.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 238.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 238.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 238.13 +<style type="text/css"> 238.14 +<!-- 238.15 +body {background-color:white; font-family:sans-serif; } 238.16 +a:active{text-decoration:none; color:#303090} 238.17 +a:link{text-decoration:none; color:#303090} 238.18 +a:visited{text-decoration:none; color:#303090} 238.19 +a:hover{text-decoration:underline; color:#4E9F71} 238.20 +--> 238.21 +</style> 238.22 +<script language="JavaScript" type="text/javascript"> 238.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 238.24 + <!-- Web Site: http://redrival.com/eak/ --> 238.25 + <!-- This script and many more are available free online at --> 238.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 238.27 + <!-- Begin 238.28 + function NewWindow(mypage, myname, w, h, scroll) { 238.29 + var winl = (screen.width - w) / 2; 238.30 + var wint = (screen.height - h) / 2; 238.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 238.32 + win = window.open(mypage, myname, winprops) 238.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 238.34 + } 238.35 + // End --> 238.36 +</script> 238.37 +</head> 238.38 +<body> 238.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 238.40 + <tbody><tr><td> 238.41 + <hr noshade="noshade" size="1" width="90%"></hr> 238.42 + <center> 238.43 + <br/> 238.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 238.45 + <br/> 238.46 + </center> 238.47 + <hr noshade="noshade" size="1" width="90%"></hr> 238.48 + <center> 238.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 238.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 238.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 238.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 238.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 238.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 238.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 238.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 238.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 238.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 238.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 238.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 238.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 238.62 + </font> 238.63 + </td></tr></tbody> 238.64 + </table> 238.65 + </center> 238.66 + <hr noshade="noshade" size="1" width="90%"></hr> 238.67 + </td></tr></tbody> 238.68 +</table> 238.69 +<!-- Generated by Doxygen 1.5.7.1 --> 238.70 +<script type="text/javascript"> 238.71 +<!-- 238.72 +function changeDisplayState (e){ 238.73 + var num=this.id.replace(/[^[0-9]/g,''); 238.74 + var button=this.firstChild; 238.75 + var sectionDiv=document.getElementById('dynsection'+num); 238.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 238.77 + sectionDiv.style.display='block'; 238.78 + button.src='open.gif'; 238.79 + }else{ 238.80 + sectionDiv.style.display='none'; 238.81 + button.src='closed.gif'; 238.82 + } 238.83 +} 238.84 +function initDynSections(){ 238.85 + var divs=document.getElementsByTagName('div'); 238.86 + var sectionCounter=1; 238.87 + for(var i=0;i<divs.length-1;i++){ 238.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 238.89 + var header=divs[i]; 238.90 + var section=divs[i+1]; 238.91 + var button=header.firstChild; 238.92 + if (button!='IMG'){ 238.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 238.94 + button=document.createElement('img'); 238.95 + divs[i].insertBefore(button,divs[i].firstChild); 238.96 + } 238.97 + header.style.cursor='pointer'; 238.98 + header.onclick=changeDisplayState; 238.99 + header.id='dynheader'+sectionCounter; 238.100 + button.src='closed.gif'; 238.101 + section.id='dynsection'+sectionCounter; 238.102 + section.style.display='none'; 238.103 + section.style.marginLeft='14px'; 238.104 + sectionCounter++; 238.105 + } 238.106 + } 238.107 +} 238.108 +window.onload = initDynSections; 238.109 +--> 238.110 +</script> 238.111 +<div class="navigation" id="top"> 238.112 + <div class="tabs"> 238.113 + <ul> 238.114 + <li><a href="index.html"><span>Main Page</span></a></li> 238.115 + <li><a href="modules.html"><span>Modules</span></a></li> 238.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 238.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 238.118 + </ul> 238.119 + </div> 238.120 + <div class="tabs"> 238.121 + <ul> 238.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 238.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 238.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 238.125 + </ul> 238.126 + </div> 238.127 + <div class="tabs"> 238.128 + <ul> 238.129 + <li><a href="functions.html"><span>All</span></a></li> 238.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 238.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 238.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 238.133 + </ul> 238.134 + </div> 238.135 + <div class="tabs"> 238.136 + <ul> 238.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 238.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 238.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 238.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 238.141 + <li class="current"><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 238.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 238.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 238.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 238.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 238.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 238.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 238.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 238.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 238.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 238.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 238.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 238.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 238.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 238.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 238.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 238.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 238.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 238.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 238.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 238.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 238.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 238.163 + </ul> 238.164 + </div> 238.165 +</div> 238.166 +<div class="contents"> 238.167 + 238.168 +<p> 238.169 +<h3><a class="anchor" name="index_d">- d -</a></h3><ul> 238.170 +<li>default_LUT8() 238.171 +: <a class="el" href="structcimg__library_1_1CImg.html#b72cb8ca2a5039c60f002f72bbb44cd5">CImg</a> 238.172 +<li>deriche() 238.173 +: <a class="el" href="structcimg__library_1_1CImg.html#be44da28a01b5632c9cb59af2ab6dab6">CImg</a> 238.174 +<li>det() 238.175 +: <a class="el" href="structcimg__library_1_1CImg.html#2363871a4c66908993cc2e2515eba612">CImg</a> 238.176 +<li>diagonal() 238.177 +: <a class="el" href="structcimg__library_1_1CImg.html#faba9e417e4dc79a30ca192e17e1f4d8">CImg</a> 238.178 +<li>dijkstra() 238.179 +: <a class="el" href="structcimg__library_1_1CImg.html#f2b4fdd725a79235943e5cc5704a32d5">CImg</a> 238.180 +<li>dilate() 238.181 +: <a class="el" href="structcimg__library_1_1CImg.html#d5da308710b26218600b8254d9e43204">CImg</a> 238.182 +<li>dimv() 238.183 +: <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f">CImg</a> 238.184 +<li>dimx() 238.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#afae58d5a77ea4190e6f2c818238bd1a">CImgDisplay</a> 238.186 +, <a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a">CImg</a> 238.187 +<li>dimy() 238.188 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fc3244815fd1b4cea186b6a63bfb635d">CImgDisplay</a> 238.189 +, <a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d">CImg</a> 238.190 +<li>dimz() 238.191 +: <a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215">CImg</a> 238.192 +<li>displacement_field() 238.193 +: <a class="el" href="structcimg__library_1_1CImg.html#4c5e31ec2d05a869a67705be11ad31c2">CImg</a> 238.194 +<li>display() 238.195 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#43bcd9fcc817fa49152a81a2bf6cdb20">CImgDisplay</a> 238.196 +, <a class="el" href="structcimg__library_1_1CImg.html#ea0592215c6068e617a975a1fe5b7b7b">CImg</a> 238.197 +<li>display_graph() 238.198 +: <a class="el" href="structcimg__library_1_1CImg.html#cacf5a4ef4f35c7a396dc7759928c30b">CImg</a> 238.199 +<li>display_object3d() 238.200 +: <a class="el" href="structcimg__library_1_1CImg.html#691a674d72768e09816066a1e38702a2">CImg</a> 238.201 +<li>distance() 238.202 +: <a class="el" href="structcimg__library_1_1CImg.html#896675c24b7a4aad089a31c98cd39318">CImg</a> 238.203 +<li>distance_hamilton() 238.204 +: <a class="el" href="structcimg__library_1_1CImg.html#2ac17a49491c76e73310270931e88d46">CImg</a> 238.205 +<li>div() 238.206 +: <a class="el" href="structcimg__library_1_1CImg.html#df1a8f5e809741e70edd3b6a454c8689">CImg</a> 238.207 +<li>dot() 238.208 +: <a class="el" href="structcimg__library_1_1CImg.html#99a8995311ea26eb1956c8a01a7e034f">CImg</a> 238.209 +<li>draw_arrow() 238.210 +: <a class="el" href="structcimg__library_1_1CImg.html#4955c7a5a132072f634ed9832b783f83">CImg</a> 238.211 +<li>draw_axis() 238.212 +: <a class="el" href="structcimg__library_1_1CImg.html#08296af30d35f7d21b5609a674b9b49c">CImg</a> 238.213 +<li>draw_circle() 238.214 +: <a class="el" href="structcimg__library_1_1CImg.html#0fcdceae39ad1bfa32dabc70ab503455">CImg</a> 238.215 +<li>draw_ellipse() 238.216 +: <a class="el" href="structcimg__library_1_1CImg.html#eae8fb88a9ad0af8f0d8090e7c55ff2e">CImg</a> 238.217 +<li>draw_fill() 238.218 +: <a class="el" href="structcimg__library_1_1CImg.html#02af5e263936e2fc27aeaa3771cb31d4">CImg</a> 238.219 +<li>draw_gaussian() 238.220 +: <a class="el" href="structcimg__library_1_1CImg.html#c27a8c4da38899f60456ea7d3535915b">CImg</a> 238.221 +<li>draw_graph() 238.222 +: <a class="el" href="structcimg__library_1_1CImg.html#67e7caaf13995641acfcd5749c39bbc7">CImg</a> 238.223 +<li>draw_grid() 238.224 +: <a class="el" href="structcimg__library_1_1CImg.html#6877e63794ccd3e9f8c27cd297ce7521">CImg</a> 238.225 +<li>draw_image() 238.226 +: <a class="el" href="structcimg__library_1_1CImg.html#2262bc9cfece26084c7223bf74ad63d5">CImg</a> 238.227 +<li>draw_line() 238.228 +: <a class="el" href="structcimg__library_1_1CImg.html#f42f741d0f579a78f9f58d0d6499bc53">CImg</a> 238.229 +<li>draw_mandelbrot() 238.230 +: <a class="el" href="structcimg__library_1_1CImg.html#692c2ecbd8cbe445b30129ebcc0d6d1c">CImg</a> 238.231 +<li>draw_object3d() 238.232 +: <a class="el" href="structcimg__library_1_1CImg.html#1db83a74b0de1e81bfd71eaa1bb6ac4f">CImg</a> 238.233 +<li>draw_plasma() 238.234 +: <a class="el" href="structcimg__library_1_1CImg.html#aaf8df45b2e20d132a28cbdffef77c18">CImg</a> 238.235 +<li>draw_point() 238.236 +: <a class="el" href="structcimg__library_1_1CImg.html#52c224fa79b1d5ab1c1e8d619c8944b3">CImg</a> 238.237 +<li>draw_polygon() 238.238 +: <a class="el" href="structcimg__library_1_1CImg.html#50811d8b24d4065b088a2629d535b44d">CImg</a> 238.239 +<li>draw_quiver() 238.240 +: <a class="el" href="structcimg__library_1_1CImg.html#fa63fe980a96a02650684e9a21a4075b">CImg</a> 238.241 +<li>draw_rectangle() 238.242 +: <a class="el" href="structcimg__library_1_1CImg.html#88b4db9fc3ebcc8bd5134042424f3b8b">CImg</a> 238.243 +<li>draw_spline() 238.244 +: <a class="el" href="structcimg__library_1_1CImg.html#b3e8fbcaff7bb939a201c913b1ab7b29">CImg</a> 238.245 +<li>draw_text() 238.246 +: <a class="el" href="structcimg__library_1_1CImg.html#fadf8a78a779782d878025d73ff0a310">CImg</a> 238.247 +<li>draw_triangle() 238.248 +: <a class="el" href="structcimg__library_1_1CImg.html#405d83987b7969b9942e4446b5924ec9">CImg</a> 238.249 +</ul> 238.250 +</div> 238.251 +<hr noshade="noshade" size="1" width="100%"> 238.252 +<a href="http://sourceforge.net"> 238.253 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 238.254 +</a> 238.255 +<!-- Start of StatCounter Code --> 238.256 +<script type="text/javascript" language="javascript"> 238.257 +<!-- 238.258 +var sc_project=895001; 238.259 +var sc_invisible=1; 238.260 +var sc_partition=7; 238.261 +var sc_security="5ea85181"; 238.262 +//--> 238.263 +</script> 238.264 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 238.265 +<!-- End of StatCounter Code --> 238.266 +</body> 238.267 +</html>
239.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 239.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x65.html Mon Aug 03 14:09:20 2009 +0100 239.3 @@ -0,0 +1,197 @@ 239.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 239.5 +<head> 239.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 239.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 239.8 +<meta content="David Tschumperle" name="author"></meta> 239.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 239.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 239.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 239.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 239.13 +<style type="text/css"> 239.14 +<!-- 239.15 +body {background-color:white; font-family:sans-serif; } 239.16 +a:active{text-decoration:none; color:#303090} 239.17 +a:link{text-decoration:none; color:#303090} 239.18 +a:visited{text-decoration:none; color:#303090} 239.19 +a:hover{text-decoration:underline; color:#4E9F71} 239.20 +--> 239.21 +</style> 239.22 +<script language="JavaScript" type="text/javascript"> 239.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 239.24 + <!-- Web Site: http://redrival.com/eak/ --> 239.25 + <!-- This script and many more are available free online at --> 239.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 239.27 + <!-- Begin 239.28 + function NewWindow(mypage, myname, w, h, scroll) { 239.29 + var winl = (screen.width - w) / 2; 239.30 + var wint = (screen.height - h) / 2; 239.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 239.32 + win = window.open(mypage, myname, winprops) 239.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 239.34 + } 239.35 + // End --> 239.36 +</script> 239.37 +</head> 239.38 +<body> 239.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 239.40 + <tbody><tr><td> 239.41 + <hr noshade="noshade" size="1" width="90%"></hr> 239.42 + <center> 239.43 + <br/> 239.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 239.45 + <br/> 239.46 + </center> 239.47 + <hr noshade="noshade" size="1" width="90%"></hr> 239.48 + <center> 239.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 239.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 239.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 239.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 239.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 239.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 239.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 239.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 239.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 239.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 239.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 239.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 239.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 239.62 + </font> 239.63 + </td></tr></tbody> 239.64 + </table> 239.65 + </center> 239.66 + <hr noshade="noshade" size="1" width="90%"></hr> 239.67 + </td></tr></tbody> 239.68 +</table> 239.69 +<!-- Generated by Doxygen 1.5.7.1 --> 239.70 +<script type="text/javascript"> 239.71 +<!-- 239.72 +function changeDisplayState (e){ 239.73 + var num=this.id.replace(/[^[0-9]/g,''); 239.74 + var button=this.firstChild; 239.75 + var sectionDiv=document.getElementById('dynsection'+num); 239.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 239.77 + sectionDiv.style.display='block'; 239.78 + button.src='open.gif'; 239.79 + }else{ 239.80 + sectionDiv.style.display='none'; 239.81 + button.src='closed.gif'; 239.82 + } 239.83 +} 239.84 +function initDynSections(){ 239.85 + var divs=document.getElementsByTagName('div'); 239.86 + var sectionCounter=1; 239.87 + for(var i=0;i<divs.length-1;i++){ 239.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 239.89 + var header=divs[i]; 239.90 + var section=divs[i+1]; 239.91 + var button=header.firstChild; 239.92 + if (button!='IMG'){ 239.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 239.94 + button=document.createElement('img'); 239.95 + divs[i].insertBefore(button,divs[i].firstChild); 239.96 + } 239.97 + header.style.cursor='pointer'; 239.98 + header.onclick=changeDisplayState; 239.99 + header.id='dynheader'+sectionCounter; 239.100 + button.src='closed.gif'; 239.101 + section.id='dynsection'+sectionCounter; 239.102 + section.style.display='none'; 239.103 + section.style.marginLeft='14px'; 239.104 + sectionCounter++; 239.105 + } 239.106 + } 239.107 +} 239.108 +window.onload = initDynSections; 239.109 +--> 239.110 +</script> 239.111 +<div class="navigation" id="top"> 239.112 + <div class="tabs"> 239.113 + <ul> 239.114 + <li><a href="index.html"><span>Main Page</span></a></li> 239.115 + <li><a href="modules.html"><span>Modules</span></a></li> 239.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 239.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 239.118 + </ul> 239.119 + </div> 239.120 + <div class="tabs"> 239.121 + <ul> 239.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 239.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 239.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 239.125 + </ul> 239.126 + </div> 239.127 + <div class="tabs"> 239.128 + <ul> 239.129 + <li><a href="functions.html"><span>All</span></a></li> 239.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 239.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 239.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 239.133 + </ul> 239.134 + </div> 239.135 + <div class="tabs"> 239.136 + <ul> 239.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 239.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 239.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 239.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 239.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 239.142 + <li class="current"><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 239.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 239.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 239.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 239.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 239.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 239.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 239.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 239.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 239.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 239.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 239.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 239.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 239.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 239.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 239.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 239.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 239.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 239.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 239.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 239.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 239.163 + </ul> 239.164 + </div> 239.165 +</div> 239.166 +<div class="contents"> 239.167 + 239.168 +<p> 239.169 +<h3><a class="anchor" name="index_e">- e -</a></h3><ul> 239.170 +<li>eigen() 239.171 +: <a class="el" href="structcimg__library_1_1CImg.html#a956e08285c0d87805d3c3c2c4450301">CImg</a> 239.172 +<li>ellipsoid3d() 239.173 +: <a class="el" href="structcimg__library_1_1CImg.html#e24de98deb46f84769fd72c504ceedc2">CImg</a> 239.174 +<li>end() 239.175 +: <a class="el" href="structcimg__library_1_1CImg.html#cad38d52497a975bfb6f2f6acd76631f">CImg</a> 239.176 +<li>equalize() 239.177 +: <a class="el" href="structcimg__library_1_1CImg.html#a2227f917f7c4424123b5a2806d7f5b8">CImg</a> 239.178 +<li>erode() 239.179 +: <a class="el" href="structcimg__library_1_1CImg.html#e82e75b5321e8702edcab8d0b8fdcd09">CImg</a> 239.180 +<li>exp() 239.181 +: <a class="el" href="structcimg__library_1_1CImg.html#63fc5244a596810f4bba36a46787c6f2">CImg</a> 239.182 +</ul> 239.183 +</div> 239.184 +<hr noshade="noshade" size="1" width="100%"> 239.185 +<a href="http://sourceforge.net"> 239.186 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 239.187 +</a> 239.188 +<!-- Start of StatCounter Code --> 239.189 +<script type="text/javascript" language="javascript"> 239.190 +<!-- 239.191 +var sc_project=895001; 239.192 +var sc_invisible=1; 239.193 +var sc_partition=7; 239.194 +var sc_security="5ea85181"; 239.195 +//--> 239.196 +</script> 239.197 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 239.198 +<!-- End of StatCounter Code --> 239.199 +</body> 239.200 +</html>
240.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 240.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x66.html Mon Aug 03 14:09:20 2009 +0100 240.3 @@ -0,0 +1,205 @@ 240.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 240.5 +<head> 240.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 240.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 240.8 +<meta content="David Tschumperle" name="author"></meta> 240.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 240.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 240.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 240.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 240.13 +<style type="text/css"> 240.14 +<!-- 240.15 +body {background-color:white; font-family:sans-serif; } 240.16 +a:active{text-decoration:none; color:#303090} 240.17 +a:link{text-decoration:none; color:#303090} 240.18 +a:visited{text-decoration:none; color:#303090} 240.19 +a:hover{text-decoration:underline; color:#4E9F71} 240.20 +--> 240.21 +</style> 240.22 +<script language="JavaScript" type="text/javascript"> 240.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 240.24 + <!-- Web Site: http://redrival.com/eak/ --> 240.25 + <!-- This script and many more are available free online at --> 240.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 240.27 + <!-- Begin 240.28 + function NewWindow(mypage, myname, w, h, scroll) { 240.29 + var winl = (screen.width - w) / 2; 240.30 + var wint = (screen.height - h) / 2; 240.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 240.32 + win = window.open(mypage, myname, winprops) 240.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 240.34 + } 240.35 + // End --> 240.36 +</script> 240.37 +</head> 240.38 +<body> 240.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 240.40 + <tbody><tr><td> 240.41 + <hr noshade="noshade" size="1" width="90%"></hr> 240.42 + <center> 240.43 + <br/> 240.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 240.45 + <br/> 240.46 + </center> 240.47 + <hr noshade="noshade" size="1" width="90%"></hr> 240.48 + <center> 240.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 240.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 240.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 240.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 240.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 240.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 240.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 240.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 240.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 240.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 240.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 240.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 240.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 240.62 + </font> 240.63 + </td></tr></tbody> 240.64 + </table> 240.65 + </center> 240.66 + <hr noshade="noshade" size="1" width="90%"></hr> 240.67 + </td></tr></tbody> 240.68 +</table> 240.69 +<!-- Generated by Doxygen 1.5.7.1 --> 240.70 +<script type="text/javascript"> 240.71 +<!-- 240.72 +function changeDisplayState (e){ 240.73 + var num=this.id.replace(/[^[0-9]/g,''); 240.74 + var button=this.firstChild; 240.75 + var sectionDiv=document.getElementById('dynsection'+num); 240.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 240.77 + sectionDiv.style.display='block'; 240.78 + button.src='open.gif'; 240.79 + }else{ 240.80 + sectionDiv.style.display='none'; 240.81 + button.src='closed.gif'; 240.82 + } 240.83 +} 240.84 +function initDynSections(){ 240.85 + var divs=document.getElementsByTagName('div'); 240.86 + var sectionCounter=1; 240.87 + for(var i=0;i<divs.length-1;i++){ 240.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 240.89 + var header=divs[i]; 240.90 + var section=divs[i+1]; 240.91 + var button=header.firstChild; 240.92 + if (button!='IMG'){ 240.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 240.94 + button=document.createElement('img'); 240.95 + divs[i].insertBefore(button,divs[i].firstChild); 240.96 + } 240.97 + header.style.cursor='pointer'; 240.98 + header.onclick=changeDisplayState; 240.99 + header.id='dynheader'+sectionCounter; 240.100 + button.src='closed.gif'; 240.101 + section.id='dynsection'+sectionCounter; 240.102 + section.style.display='none'; 240.103 + section.style.marginLeft='14px'; 240.104 + sectionCounter++; 240.105 + } 240.106 + } 240.107 +} 240.108 +window.onload = initDynSections; 240.109 +--> 240.110 +</script> 240.111 +<div class="navigation" id="top"> 240.112 + <div class="tabs"> 240.113 + <ul> 240.114 + <li><a href="index.html"><span>Main Page</span></a></li> 240.115 + <li><a href="modules.html"><span>Modules</span></a></li> 240.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 240.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 240.118 + </ul> 240.119 + </div> 240.120 + <div class="tabs"> 240.121 + <ul> 240.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 240.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 240.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 240.125 + </ul> 240.126 + </div> 240.127 + <div class="tabs"> 240.128 + <ul> 240.129 + <li><a href="functions.html"><span>All</span></a></li> 240.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 240.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 240.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 240.133 + </ul> 240.134 + </div> 240.135 + <div class="tabs"> 240.136 + <ul> 240.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 240.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 240.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 240.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 240.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 240.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 240.143 + <li class="current"><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 240.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 240.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 240.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 240.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 240.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 240.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 240.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 240.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 240.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 240.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 240.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 240.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 240.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 240.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 240.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 240.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 240.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 240.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 240.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 240.163 + </ul> 240.164 + </div> 240.165 +</div> 240.166 +<div class="contents"> 240.167 + 240.168 +<p> 240.169 +<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 240.170 +<li>fill() 240.171 +: <a class="el" href="structcimg__library_1_1CImg.html#494a1e1424510af07e705dfe9b5f78bd">CImg</a> 240.172 +<li>fillV() 240.173 +: <a class="el" href="structcimg__library_1_1CImg.html#bed160399c0c74349a025a823d1c4e3b">CImg</a> 240.174 +<li>fillX() 240.175 +: <a class="el" href="structcimg__library_1_1CImg.html#aef4c6886178c6a99c22693f0a2ecd4b">CImg</a> 240.176 +<li>fillY() 240.177 +: <a class="el" href="structcimg__library_1_1CImg.html#9a220154365b5e2c636d6abeef404fb8">CImg</a> 240.178 +<li>fillZ() 240.179 +: <a class="el" href="structcimg__library_1_1CImg.html#b7a4a4ad0f756d4b42059ab7579288ad">CImg</a> 240.180 +<li>first() 240.181 +: <a class="el" href="structcimg__library_1_1CImg.html#2d8f0a8dd427c22a66a7e798183f2b72">CImg</a> 240.182 +<li>flush() 240.183 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4bf168837be505b1301604b151280f6e">CImgDisplay</a> 240.184 +<li>frames_per_second() 240.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3ade6e852b67fea14093915c5dca7862">CImgDisplay</a> 240.186 +<li>front() 240.187 +: <a class="el" href="structcimg__library_1_1CImg.html#55d9a449187445866021859f0cf708d0">CImg</a> 240.188 +<li>fullscreen() 240.189 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#6a0faa0d39524f5d5dac7297777dcdf1">CImgDisplay</a> 240.190 +</ul> 240.191 +</div> 240.192 +<hr noshade="noshade" size="1" width="100%"> 240.193 +<a href="http://sourceforge.net"> 240.194 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 240.195 +</a> 240.196 +<!-- Start of StatCounter Code --> 240.197 +<script type="text/javascript" language="javascript"> 240.198 +<!-- 240.199 +var sc_project=895001; 240.200 +var sc_invisible=1; 240.201 +var sc_partition=7; 240.202 +var sc_security="5ea85181"; 240.203 +//--> 240.204 +</script> 240.205 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 240.206 +<!-- End of StatCounter Code --> 240.207 +</body> 240.208 +</html>
241.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 241.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x67.html Mon Aug 03 14:09:20 2009 +0100 241.3 @@ -0,0 +1,229 @@ 241.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 241.5 +<head> 241.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 241.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 241.8 +<meta content="David Tschumperle" name="author"></meta> 241.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 241.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 241.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 241.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 241.13 +<style type="text/css"> 241.14 +<!-- 241.15 +body {background-color:white; font-family:sans-serif; } 241.16 +a:active{text-decoration:none; color:#303090} 241.17 +a:link{text-decoration:none; color:#303090} 241.18 +a:visited{text-decoration:none; color:#303090} 241.19 +a:hover{text-decoration:underline; color:#4E9F71} 241.20 +--> 241.21 +</style> 241.22 +<script language="JavaScript" type="text/javascript"> 241.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 241.24 + <!-- Web Site: http://redrival.com/eak/ --> 241.25 + <!-- This script and many more are available free online at --> 241.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 241.27 + <!-- Begin 241.28 + function NewWindow(mypage, myname, w, h, scroll) { 241.29 + var winl = (screen.width - w) / 2; 241.30 + var wint = (screen.height - h) / 2; 241.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 241.32 + win = window.open(mypage, myname, winprops) 241.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 241.34 + } 241.35 + // End --> 241.36 +</script> 241.37 +</head> 241.38 +<body> 241.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 241.40 + <tbody><tr><td> 241.41 + <hr noshade="noshade" size="1" width="90%"></hr> 241.42 + <center> 241.43 + <br/> 241.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 241.45 + <br/> 241.46 + </center> 241.47 + <hr noshade="noshade" size="1" width="90%"></hr> 241.48 + <center> 241.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 241.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 241.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 241.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 241.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 241.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 241.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 241.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 241.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 241.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 241.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 241.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 241.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 241.62 + </font> 241.63 + </td></tr></tbody> 241.64 + </table> 241.65 + </center> 241.66 + <hr noshade="noshade" size="1" width="90%"></hr> 241.67 + </td></tr></tbody> 241.68 +</table> 241.69 +<!-- Generated by Doxygen 1.5.7.1 --> 241.70 +<script type="text/javascript"> 241.71 +<!-- 241.72 +function changeDisplayState (e){ 241.73 + var num=this.id.replace(/[^[0-9]/g,''); 241.74 + var button=this.firstChild; 241.75 + var sectionDiv=document.getElementById('dynsection'+num); 241.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 241.77 + sectionDiv.style.display='block'; 241.78 + button.src='open.gif'; 241.79 + }else{ 241.80 + sectionDiv.style.display='none'; 241.81 + button.src='closed.gif'; 241.82 + } 241.83 +} 241.84 +function initDynSections(){ 241.85 + var divs=document.getElementsByTagName('div'); 241.86 + var sectionCounter=1; 241.87 + for(var i=0;i<divs.length-1;i++){ 241.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 241.89 + var header=divs[i]; 241.90 + var section=divs[i+1]; 241.91 + var button=header.firstChild; 241.92 + if (button!='IMG'){ 241.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 241.94 + button=document.createElement('img'); 241.95 + divs[i].insertBefore(button,divs[i].firstChild); 241.96 + } 241.97 + header.style.cursor='pointer'; 241.98 + header.onclick=changeDisplayState; 241.99 + header.id='dynheader'+sectionCounter; 241.100 + button.src='closed.gif'; 241.101 + section.id='dynsection'+sectionCounter; 241.102 + section.style.display='none'; 241.103 + section.style.marginLeft='14px'; 241.104 + sectionCounter++; 241.105 + } 241.106 + } 241.107 +} 241.108 +window.onload = initDynSections; 241.109 +--> 241.110 +</script> 241.111 +<div class="navigation" id="top"> 241.112 + <div class="tabs"> 241.113 + <ul> 241.114 + <li><a href="index.html"><span>Main Page</span></a></li> 241.115 + <li><a href="modules.html"><span>Modules</span></a></li> 241.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 241.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 241.118 + </ul> 241.119 + </div> 241.120 + <div class="tabs"> 241.121 + <ul> 241.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 241.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 241.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 241.125 + </ul> 241.126 + </div> 241.127 + <div class="tabs"> 241.128 + <ul> 241.129 + <li><a href="functions.html"><span>All</span></a></li> 241.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 241.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 241.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 241.133 + </ul> 241.134 + </div> 241.135 + <div class="tabs"> 241.136 + <ul> 241.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 241.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 241.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 241.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 241.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 241.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 241.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 241.144 + <li class="current"><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 241.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 241.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 241.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 241.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 241.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 241.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 241.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 241.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 241.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 241.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 241.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 241.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 241.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 241.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 241.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 241.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 241.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 241.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 241.163 + </ul> 241.164 + </div> 241.165 +</div> 241.166 +<div class="contents"> 241.167 + 241.168 +<p> 241.169 +<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 241.170 +<li>get_eigen() 241.171 +: <a class="el" href="structcimg__library_1_1CImg.html#4594e576d73d47bd3557c2db395c44df">CImg</a> 241.172 +<li>get_elevation3d() 241.173 +: <a class="el" href="structcimg__library_1_1CImg.html#f8a421b285e0b85ea6ab2fd4a2e6736e">CImg</a> 241.174 +<li>get_FFT() 241.175 +: <a class="el" href="structcimg__library_1_1CImg.html#344967c8b6e7bf0aa40039d1ab29efe2">CImg</a> 241.176 +<li>get_gradient() 241.177 +: <a class="el" href="structcimg__library_1_1CImg.html#3e5b54c0b862cbf6e9f14e832984c4d7">CImg</a> 241.178 +<li>get_hessian() 241.179 +: <a class="el" href="structcimg__library_1_1CImg.html#96e3e0c617e70a833492043d08a7905a">CImg</a> 241.180 +<li>get_isovalue3d() 241.181 +: <a class="el" href="structcimg__library_1_1CImg.html#dfcfeb419514a0e79c6bcb17fc71a53f">CImg</a> 241.182 +<li>get_matrix_at() 241.183 +: <a class="el" href="structcimg__library_1_1CImg.html#0df72293d6377a36cce47d73a4b6bbfc">CImg</a> 241.184 +<li>get_select() 241.185 +: <a class="el" href="structcimg__library_1_1CImg.html#58b982e2bd8adf8792df5caff7549aa6">CImg</a> 241.186 +<li>get_select_graph() 241.187 +: <a class="el" href="structcimg__library_1_1CImg.html#2b77e436a48fd24c423e924c2dae4072">CImg</a> 241.188 +<li>get_shared() 241.189 +: <a class="el" href="structcimg__library_1_1CImg.html#c9676ed1fd154d30c8a2f6f6ee17499c">CImg</a> 241.190 +<li>get_shared_channel() 241.191 +: <a class="el" href="structcimg__library_1_1CImg.html#da9415c850e4a0779e5607b26782de9d">CImg</a> 241.192 +<li>get_shared_channels() 241.193 +: <a class="el" href="structcimg__library_1_1CImg.html#770b28a6ddc3c11af056d27f8dede3d7">CImg</a> 241.194 +<li>get_shared_line() 241.195 +: <a class="el" href="structcimg__library_1_1CImg.html#f6a6dc59e00dd28f9a1cd887569a21cc">CImg</a> 241.196 +<li>get_shared_lines() 241.197 +: <a class="el" href="structcimg__library_1_1CImg.html#cb22178b8e77a784d443fd7a6fad7836">CImg</a> 241.198 +<li>get_shared_plane() 241.199 +: <a class="el" href="structcimg__library_1_1CImg.html#eec1741a119c7ba27c2c3c2c20097df9">CImg</a> 241.200 +<li>get_shared_planes() 241.201 +: <a class="el" href="structcimg__library_1_1CImg.html#321bd9cc21a2f658df1dcc5b95eb6fd6">CImg</a> 241.202 +<li>get_shared_points() 241.203 +: <a class="el" href="structcimg__library_1_1CImg.html#2bec31726ee3647345577b893c102dea">CImg</a> 241.204 +<li>get_split() 241.205 +: <a class="el" href="structcimg__library_1_1CImg.html#ccd769bc160bb4bd933d01ec3b22c1d7">CImg</a> 241.206 +<li>get_SVD() 241.207 +: <a class="el" href="structcimg__library_1_1CImg.html#e0595a4603944cb0affe5b4ac29bdd6b">CImg</a> 241.208 +<li>get_symmetric_eigen() 241.209 +: <a class="el" href="structcimg__library_1_1CImg.html#f970d1443e880c4d5668e2b752c5fbae">CImg</a> 241.210 +<li>get_tensor_at() 241.211 +: <a class="el" href="structcimg__library_1_1CImg.html#82cfb268b952aeeb1b55e6072a83d093">CImg</a> 241.212 +<li>get_vector_at() 241.213 +: <a class="el" href="structcimg__library_1_1CImg.html#ac10e7f03cdf50782511200bbcaeaa70">CImg</a> 241.214 +</ul> 241.215 +</div> 241.216 +<hr noshade="noshade" size="1" width="100%"> 241.217 +<a href="http://sourceforge.net"> 241.218 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 241.219 +</a> 241.220 +<!-- Start of StatCounter Code --> 241.221 +<script type="text/javascript" language="javascript"> 241.222 +<!-- 241.223 +var sc_project=895001; 241.224 +var sc_invisible=1; 241.225 +var sc_partition=7; 241.226 +var sc_security="5ea85181"; 241.227 +//--> 241.228 +</script> 241.229 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 241.230 +<!-- End of StatCounter Code --> 241.231 +</body> 241.232 +</html>
242.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 242.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x68.html Mon Aug 03 14:09:20 2009 +0100 242.3 @@ -0,0 +1,197 @@ 242.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 242.5 +<head> 242.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 242.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 242.8 +<meta content="David Tschumperle" name="author"></meta> 242.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 242.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 242.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 242.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 242.13 +<style type="text/css"> 242.14 +<!-- 242.15 +body {background-color:white; font-family:sans-serif; } 242.16 +a:active{text-decoration:none; color:#303090} 242.17 +a:link{text-decoration:none; color:#303090} 242.18 +a:visited{text-decoration:none; color:#303090} 242.19 +a:hover{text-decoration:underline; color:#4E9F71} 242.20 +--> 242.21 +</style> 242.22 +<script language="JavaScript" type="text/javascript"> 242.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 242.24 + <!-- Web Site: http://redrival.com/eak/ --> 242.25 + <!-- This script and many more are available free online at --> 242.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 242.27 + <!-- Begin 242.28 + function NewWindow(mypage, myname, w, h, scroll) { 242.29 + var winl = (screen.width - w) / 2; 242.30 + var wint = (screen.height - h) / 2; 242.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 242.32 + win = window.open(mypage, myname, winprops) 242.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 242.34 + } 242.35 + // End --> 242.36 +</script> 242.37 +</head> 242.38 +<body> 242.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 242.40 + <tbody><tr><td> 242.41 + <hr noshade="noshade" size="1" width="90%"></hr> 242.42 + <center> 242.43 + <br/> 242.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 242.45 + <br/> 242.46 + </center> 242.47 + <hr noshade="noshade" size="1" width="90%"></hr> 242.48 + <center> 242.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 242.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 242.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 242.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 242.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 242.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 242.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 242.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 242.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 242.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 242.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 242.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 242.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 242.62 + </font> 242.63 + </td></tr></tbody> 242.64 + </table> 242.65 + </center> 242.66 + <hr noshade="noshade" size="1" width="90%"></hr> 242.67 + </td></tr></tbody> 242.68 +</table> 242.69 +<!-- Generated by Doxygen 1.5.7.1 --> 242.70 +<script type="text/javascript"> 242.71 +<!-- 242.72 +function changeDisplayState (e){ 242.73 + var num=this.id.replace(/[^[0-9]/g,''); 242.74 + var button=this.firstChild; 242.75 + var sectionDiv=document.getElementById('dynsection'+num); 242.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 242.77 + sectionDiv.style.display='block'; 242.78 + button.src='open.gif'; 242.79 + }else{ 242.80 + sectionDiv.style.display='none'; 242.81 + button.src='closed.gif'; 242.82 + } 242.83 +} 242.84 +function initDynSections(){ 242.85 + var divs=document.getElementsByTagName('div'); 242.86 + var sectionCounter=1; 242.87 + for(var i=0;i<divs.length-1;i++){ 242.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 242.89 + var header=divs[i]; 242.90 + var section=divs[i+1]; 242.91 + var button=header.firstChild; 242.92 + if (button!='IMG'){ 242.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 242.94 + button=document.createElement('img'); 242.95 + divs[i].insertBefore(button,divs[i].firstChild); 242.96 + } 242.97 + header.style.cursor='pointer'; 242.98 + header.onclick=changeDisplayState; 242.99 + header.id='dynheader'+sectionCounter; 242.100 + button.src='closed.gif'; 242.101 + section.id='dynsection'+sectionCounter; 242.102 + section.style.display='none'; 242.103 + section.style.marginLeft='14px'; 242.104 + sectionCounter++; 242.105 + } 242.106 + } 242.107 +} 242.108 +window.onload = initDynSections; 242.109 +--> 242.110 +</script> 242.111 +<div class="navigation" id="top"> 242.112 + <div class="tabs"> 242.113 + <ul> 242.114 + <li><a href="index.html"><span>Main Page</span></a></li> 242.115 + <li><a href="modules.html"><span>Modules</span></a></li> 242.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 242.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 242.118 + </ul> 242.119 + </div> 242.120 + <div class="tabs"> 242.121 + <ul> 242.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 242.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 242.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 242.125 + </ul> 242.126 + </div> 242.127 + <div class="tabs"> 242.128 + <ul> 242.129 + <li><a href="functions.html"><span>All</span></a></li> 242.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 242.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 242.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 242.133 + </ul> 242.134 + </div> 242.135 + <div class="tabs"> 242.136 + <ul> 242.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 242.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 242.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 242.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 242.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 242.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 242.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 242.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 242.145 + <li class="current"><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 242.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 242.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 242.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 242.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 242.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 242.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 242.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 242.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 242.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 242.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 242.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 242.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 242.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 242.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 242.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 242.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 242.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 242.163 + </ul> 242.164 + </div> 242.165 +</div> 242.166 +<div class="contents"> 242.167 + 242.168 +<p> 242.169 +<h3><a class="anchor" name="index_h">- h -</a></h3><ul> 242.170 +<li>haar() 242.171 +: <a class="el" href="structcimg__library_1_1CImg.html#09afff280828c5a8d5a7bef22993dacc">CImg</a> 242.172 +<li>hide_mouse() 242.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3fb8cda1473f326934c286e6e5d825e2">CImgDisplay</a> 242.174 +<li>histogram() 242.175 +: <a class="el" href="structcimg__library_1_1CImg.html#edc5d10d1516480dbfe20a576c152770">CImg</a> 242.176 +<li>HSItoRGB() 242.177 +: <a class="el" href="structcimg__library_1_1CImg.html#342709e04c2efd6b07982b1e9b5b5671">CImg</a> 242.178 +<li>HSLtoRGB() 242.179 +: <a class="el" href="structcimg__library_1_1CImg.html#0e2080f7ef8f8c87587800de0c5d9f31">CImg</a> 242.180 +<li>HSVtoRGB() 242.181 +: <a class="el" href="structcimg__library_1_1CImg.html#87cc3767b5078c5f63e09ba0109cf0d4">CImg</a> 242.182 +</ul> 242.183 +</div> 242.184 +<hr noshade="noshade" size="1" width="100%"> 242.185 +<a href="http://sourceforge.net"> 242.186 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 242.187 +</a> 242.188 +<!-- Start of StatCounter Code --> 242.189 +<script type="text/javascript" language="javascript"> 242.190 +<!-- 242.191 +var sc_project=895001; 242.192 +var sc_invisible=1; 242.193 +var sc_partition=7; 242.194 +var sc_security="5ea85181"; 242.195 +//--> 242.196 +</script> 242.197 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 242.198 +<!-- End of StatCounter Code --> 242.199 +</body> 242.200 +</html>
243.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 243.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x69.html Mon Aug 03 14:09:20 2009 +0100 243.3 @@ -0,0 +1,231 @@ 243.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 243.5 +<head> 243.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 243.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 243.8 +<meta content="David Tschumperle" name="author"></meta> 243.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 243.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 243.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 243.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 243.13 +<style type="text/css"> 243.14 +<!-- 243.15 +body {background-color:white; font-family:sans-serif; } 243.16 +a:active{text-decoration:none; color:#303090} 243.17 +a:link{text-decoration:none; color:#303090} 243.18 +a:visited{text-decoration:none; color:#303090} 243.19 +a:hover{text-decoration:underline; color:#4E9F71} 243.20 +--> 243.21 +</style> 243.22 +<script language="JavaScript" type="text/javascript"> 243.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 243.24 + <!-- Web Site: http://redrival.com/eak/ --> 243.25 + <!-- This script and many more are available free online at --> 243.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 243.27 + <!-- Begin 243.28 + function NewWindow(mypage, myname, w, h, scroll) { 243.29 + var winl = (screen.width - w) / 2; 243.30 + var wint = (screen.height - h) / 2; 243.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 243.32 + win = window.open(mypage, myname, winprops) 243.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 243.34 + } 243.35 + // End --> 243.36 +</script> 243.37 +</head> 243.38 +<body> 243.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 243.40 + <tbody><tr><td> 243.41 + <hr noshade="noshade" size="1" width="90%"></hr> 243.42 + <center> 243.43 + <br/> 243.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 243.45 + <br/> 243.46 + </center> 243.47 + <hr noshade="noshade" size="1" width="90%"></hr> 243.48 + <center> 243.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 243.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 243.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 243.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 243.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 243.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 243.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 243.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 243.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 243.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 243.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 243.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 243.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 243.62 + </font> 243.63 + </td></tr></tbody> 243.64 + </table> 243.65 + </center> 243.66 + <hr noshade="noshade" size="1" width="90%"></hr> 243.67 + </td></tr></tbody> 243.68 +</table> 243.69 +<!-- Generated by Doxygen 1.5.7.1 --> 243.70 +<script type="text/javascript"> 243.71 +<!-- 243.72 +function changeDisplayState (e){ 243.73 + var num=this.id.replace(/[^[0-9]/g,''); 243.74 + var button=this.firstChild; 243.75 + var sectionDiv=document.getElementById('dynsection'+num); 243.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 243.77 + sectionDiv.style.display='block'; 243.78 + button.src='open.gif'; 243.79 + }else{ 243.80 + sectionDiv.style.display='none'; 243.81 + button.src='closed.gif'; 243.82 + } 243.83 +} 243.84 +function initDynSections(){ 243.85 + var divs=document.getElementsByTagName('div'); 243.86 + var sectionCounter=1; 243.87 + for(var i=0;i<divs.length-1;i++){ 243.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 243.89 + var header=divs[i]; 243.90 + var section=divs[i+1]; 243.91 + var button=header.firstChild; 243.92 + if (button!='IMG'){ 243.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 243.94 + button=document.createElement('img'); 243.95 + divs[i].insertBefore(button,divs[i].firstChild); 243.96 + } 243.97 + header.style.cursor='pointer'; 243.98 + header.onclick=changeDisplayState; 243.99 + header.id='dynheader'+sectionCounter; 243.100 + button.src='closed.gif'; 243.101 + section.id='dynsection'+sectionCounter; 243.102 + section.style.display='none'; 243.103 + section.style.marginLeft='14px'; 243.104 + sectionCounter++; 243.105 + } 243.106 + } 243.107 +} 243.108 +window.onload = initDynSections; 243.109 +--> 243.110 +</script> 243.111 +<div class="navigation" id="top"> 243.112 + <div class="tabs"> 243.113 + <ul> 243.114 + <li><a href="index.html"><span>Main Page</span></a></li> 243.115 + <li><a href="modules.html"><span>Modules</span></a></li> 243.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 243.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 243.118 + </ul> 243.119 + </div> 243.120 + <div class="tabs"> 243.121 + <ul> 243.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 243.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 243.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 243.125 + </ul> 243.126 + </div> 243.127 + <div class="tabs"> 243.128 + <ul> 243.129 + <li><a href="functions.html"><span>All</span></a></li> 243.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 243.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 243.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 243.133 + </ul> 243.134 + </div> 243.135 + <div class="tabs"> 243.136 + <ul> 243.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 243.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 243.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 243.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 243.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 243.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 243.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 243.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 243.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 243.146 + <li class="current"><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 243.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 243.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 243.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 243.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 243.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 243.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 243.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 243.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 243.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 243.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 243.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 243.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 243.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 243.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 243.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 243.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 243.163 + </ul> 243.164 + </div> 243.165 +</div> 243.166 +<div class="contents"> 243.167 + 243.168 +<p> 243.169 +<h3><a class="anchor" name="index_i">- i -</a></h3><ul> 243.170 +<li>identity_matrix() 243.171 +: <a class="el" href="structcimg__library_1_1CImg.html#14131b116119f392019c431f6eac5c6f">CImg</a> 243.172 +<li>invert() 243.173 +: <a class="el" href="structcimg__library_1_1CImg.html#930302996a00b75e7e4ea7b4d6dea821">CImg</a> 243.174 +<li>invert_endianness() 243.175 +: <a class="el" href="structcimg__library_1_1CImg.html#d1bdd0c686ccaa6a12ff4b69efa5a567">CImg</a> 243.176 +<li>is_empty() 243.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImgDisplay</a> 243.178 +, <a class="el" href="structcimg__library_1_1CImg.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImg</a> 243.179 +, <a class="el" href="structcimg__library_1_1CImgList.html#cef8e33cfd36a5d7d2fad939efcf02e3">CImgList</a> 243.180 +<li>is_key() 243.181 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#d140aead8fc0119f432046542634ef56">CImgDisplay</a> 243.182 +<li>is_overlapped() 243.183 +: <a class="el" href="structcimg__library_1_1CImg.html#b37041213cf48faf44debd569ae93127">CImg</a> 243.184 +<li>is_sameN() 243.185 +: <a class="el" href="structcimg__library_1_1CImgList.html#bf45495f91f5e6e04bd597f0dd5d1ee4">CImgList</a> 243.186 +<li>is_sameV() 243.187 +: <a class="el" href="structcimg__library_1_1CImg.html#cd8ae750af0f68148227285c97036321">CImg</a> 243.188 +<li>is_sameX() 243.189 +: <a class="el" href="structcimg__library_1_1CImg.html#3b72aa78538551f0df216de7f6ea2e95">CImg</a> 243.190 +<li>is_sameXV() 243.191 +: <a class="el" href="structcimg__library_1_1CImg.html#1196976be93ae9d179bd9de3a5d997fe">CImg</a> 243.192 +<li>is_sameXY() 243.193 +: <a class="el" href="structcimg__library_1_1CImg.html#75f62ffd782356fa2db23289bf97bed3">CImg</a> 243.194 +<li>is_sameXYV() 243.195 +: <a class="el" href="structcimg__library_1_1CImg.html#f79477b4ed4ba3e40f96363eeb735049">CImg</a> 243.196 +<li>is_sameXYZ() 243.197 +: <a class="el" href="structcimg__library_1_1CImg.html#36a12bf20a1d6cf863f505877e30bdce">CImg</a> 243.198 +<li>is_sameXYZV() 243.199 +: <a class="el" href="structcimg__library_1_1CImg.html#5ae8cb401527d16ee8d3b42deb6950f4">CImg</a> 243.200 +<li>is_sameXZ() 243.201 +: <a class="el" href="structcimg__library_1_1CImg.html#3d19709f9f46ca0ab06a5942f91b8ee4">CImg</a> 243.202 +<li>is_sameXZV() 243.203 +: <a class="el" href="structcimg__library_1_1CImg.html#5f1f9f15a7ca3dff58e5ee2d0e90b3e2">CImg</a> 243.204 +<li>is_sameY() 243.205 +: <a class="el" href="structcimg__library_1_1CImg.html#cb6a0d74efed60628344ce37e44aca31">CImg</a> 243.206 +<li>is_sameYV() 243.207 +: <a class="el" href="structcimg__library_1_1CImg.html#64684b41dcd2a660962be8df5d30d2cf">CImg</a> 243.208 +<li>is_sameYZ() 243.209 +: <a class="el" href="structcimg__library_1_1CImg.html#5d863be6ae8d5d8ab0af39aa78174b2f">CImg</a> 243.210 +<li>is_sameYZV() 243.211 +: <a class="el" href="structcimg__library_1_1CImg.html#10f8cee08e95111cc9bb227ca11b079f">CImg</a> 243.212 +<li>is_sameZ() 243.213 +: <a class="el" href="structcimg__library_1_1CImg.html#ae8da1879332cbb3807133b552d1cafe">CImg</a> 243.214 +<li>is_sameZV() 243.215 +: <a class="el" href="structcimg__library_1_1CImg.html#fcd67d621531a0cfe2d9c004442b3575">CImg</a> 243.216 +</ul> 243.217 +</div> 243.218 +<hr noshade="noshade" size="1" width="100%"> 243.219 +<a href="http://sourceforge.net"> 243.220 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 243.221 +</a> 243.222 +<!-- Start of StatCounter Code --> 243.223 +<script type="text/javascript" language="javascript"> 243.224 +<!-- 243.225 +var sc_project=895001; 243.226 +var sc_invisible=1; 243.227 +var sc_partition=7; 243.228 +var sc_security="5ea85181"; 243.229 +//--> 243.230 +</script> 243.231 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 243.232 +<!-- End of StatCounter Code --> 243.233 +</body> 243.234 +</html>
244.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 244.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x6b.html Mon Aug 03 14:09:20 2009 +0100 244.3 @@ -0,0 +1,187 @@ 244.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 244.5 +<head> 244.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 244.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 244.8 +<meta content="David Tschumperle" name="author"></meta> 244.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 244.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 244.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 244.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 244.13 +<style type="text/css"> 244.14 +<!-- 244.15 +body {background-color:white; font-family:sans-serif; } 244.16 +a:active{text-decoration:none; color:#303090} 244.17 +a:link{text-decoration:none; color:#303090} 244.18 +a:visited{text-decoration:none; color:#303090} 244.19 +a:hover{text-decoration:underline; color:#4E9F71} 244.20 +--> 244.21 +</style> 244.22 +<script language="JavaScript" type="text/javascript"> 244.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 244.24 + <!-- Web Site: http://redrival.com/eak/ --> 244.25 + <!-- This script and many more are available free online at --> 244.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 244.27 + <!-- Begin 244.28 + function NewWindow(mypage, myname, w, h, scroll) { 244.29 + var winl = (screen.width - w) / 2; 244.30 + var wint = (screen.height - h) / 2; 244.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 244.32 + win = window.open(mypage, myname, winprops) 244.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 244.34 + } 244.35 + // End --> 244.36 +</script> 244.37 +</head> 244.38 +<body> 244.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 244.40 + <tbody><tr><td> 244.41 + <hr noshade="noshade" size="1" width="90%"></hr> 244.42 + <center> 244.43 + <br/> 244.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 244.45 + <br/> 244.46 + </center> 244.47 + <hr noshade="noshade" size="1" width="90%"></hr> 244.48 + <center> 244.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 244.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 244.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 244.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 244.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 244.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 244.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 244.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 244.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 244.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 244.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 244.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 244.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 244.62 + </font> 244.63 + </td></tr></tbody> 244.64 + </table> 244.65 + </center> 244.66 + <hr noshade="noshade" size="1" width="90%"></hr> 244.67 + </td></tr></tbody> 244.68 +</table> 244.69 +<!-- Generated by Doxygen 1.5.7.1 --> 244.70 +<script type="text/javascript"> 244.71 +<!-- 244.72 +function changeDisplayState (e){ 244.73 + var num=this.id.replace(/[^[0-9]/g,''); 244.74 + var button=this.firstChild; 244.75 + var sectionDiv=document.getElementById('dynsection'+num); 244.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 244.77 + sectionDiv.style.display='block'; 244.78 + button.src='open.gif'; 244.79 + }else{ 244.80 + sectionDiv.style.display='none'; 244.81 + button.src='closed.gif'; 244.82 + } 244.83 +} 244.84 +function initDynSections(){ 244.85 + var divs=document.getElementsByTagName('div'); 244.86 + var sectionCounter=1; 244.87 + for(var i=0;i<divs.length-1;i++){ 244.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 244.89 + var header=divs[i]; 244.90 + var section=divs[i+1]; 244.91 + var button=header.firstChild; 244.92 + if (button!='IMG'){ 244.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 244.94 + button=document.createElement('img'); 244.95 + divs[i].insertBefore(button,divs[i].firstChild); 244.96 + } 244.97 + header.style.cursor='pointer'; 244.98 + header.onclick=changeDisplayState; 244.99 + header.id='dynheader'+sectionCounter; 244.100 + button.src='closed.gif'; 244.101 + section.id='dynsection'+sectionCounter; 244.102 + section.style.display='none'; 244.103 + section.style.marginLeft='14px'; 244.104 + sectionCounter++; 244.105 + } 244.106 + } 244.107 +} 244.108 +window.onload = initDynSections; 244.109 +--> 244.110 +</script> 244.111 +<div class="navigation" id="top"> 244.112 + <div class="tabs"> 244.113 + <ul> 244.114 + <li><a href="index.html"><span>Main Page</span></a></li> 244.115 + <li><a href="modules.html"><span>Modules</span></a></li> 244.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 244.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 244.118 + </ul> 244.119 + </div> 244.120 + <div class="tabs"> 244.121 + <ul> 244.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 244.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 244.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 244.125 + </ul> 244.126 + </div> 244.127 + <div class="tabs"> 244.128 + <ul> 244.129 + <li><a href="functions.html"><span>All</span></a></li> 244.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 244.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 244.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 244.133 + </ul> 244.134 + </div> 244.135 + <div class="tabs"> 244.136 + <ul> 244.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 244.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 244.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 244.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 244.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 244.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 244.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 244.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 244.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 244.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 244.147 + <li class="current"><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 244.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 244.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 244.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 244.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 244.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 244.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 244.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 244.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 244.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 244.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 244.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 244.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 244.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 244.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 244.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 244.163 + </ul> 244.164 + </div> 244.165 +</div> 244.166 +<div class="contents"> 244.167 + 244.168 +<p> 244.169 +<h3><a class="anchor" name="index_k">- k -</a></h3><ul> 244.170 +<li>kth_smallest() 244.171 +: <a class="el" href="structcimg__library_1_1CImg.html#93d6b348517590d019471ddeeb3e938b">CImg</a> 244.172 +</ul> 244.173 +</div> 244.174 +<hr noshade="noshade" size="1" width="100%"> 244.175 +<a href="http://sourceforge.net"> 244.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 244.177 +</a> 244.178 +<!-- Start of StatCounter Code --> 244.179 +<script type="text/javascript" language="javascript"> 244.180 +<!-- 244.181 +var sc_project=895001; 244.182 +var sc_invisible=1; 244.183 +var sc_partition=7; 244.184 +var sc_security="5ea85181"; 244.185 +//--> 244.186 +</script> 244.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 244.188 +<!-- End of StatCounter Code --> 244.189 +</body> 244.190 +</html>
245.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 245.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x6c.html Mon Aug 03 14:09:20 2009 +0100 245.3 @@ -0,0 +1,266 @@ 245.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 245.5 +<head> 245.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 245.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 245.8 +<meta content="David Tschumperle" name="author"></meta> 245.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 245.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 245.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 245.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 245.13 +<style type="text/css"> 245.14 +<!-- 245.15 +body {background-color:white; font-family:sans-serif; } 245.16 +a:active{text-decoration:none; color:#303090} 245.17 +a:link{text-decoration:none; color:#303090} 245.18 +a:visited{text-decoration:none; color:#303090} 245.19 +a:hover{text-decoration:underline; color:#4E9F71} 245.20 +--> 245.21 +</style> 245.22 +<script language="JavaScript" type="text/javascript"> 245.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 245.24 + <!-- Web Site: http://redrival.com/eak/ --> 245.25 + <!-- This script and many more are available free online at --> 245.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 245.27 + <!-- Begin 245.28 + function NewWindow(mypage, myname, w, h, scroll) { 245.29 + var winl = (screen.width - w) / 2; 245.30 + var wint = (screen.height - h) / 2; 245.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 245.32 + win = window.open(mypage, myname, winprops) 245.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 245.34 + } 245.35 + // End --> 245.36 +</script> 245.37 +</head> 245.38 +<body> 245.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 245.40 + <tbody><tr><td> 245.41 + <hr noshade="noshade" size="1" width="90%"></hr> 245.42 + <center> 245.43 + <br/> 245.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 245.45 + <br/> 245.46 + </center> 245.47 + <hr noshade="noshade" size="1" width="90%"></hr> 245.48 + <center> 245.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 245.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 245.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 245.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 245.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 245.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 245.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 245.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 245.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 245.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 245.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 245.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 245.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 245.62 + </font> 245.63 + </td></tr></tbody> 245.64 + </table> 245.65 + </center> 245.66 + <hr noshade="noshade" size="1" width="90%"></hr> 245.67 + </td></tr></tbody> 245.68 +</table> 245.69 +<!-- Generated by Doxygen 1.5.7.1 --> 245.70 +<script type="text/javascript"> 245.71 +<!-- 245.72 +function changeDisplayState (e){ 245.73 + var num=this.id.replace(/[^[0-9]/g,''); 245.74 + var button=this.firstChild; 245.75 + var sectionDiv=document.getElementById('dynsection'+num); 245.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 245.77 + sectionDiv.style.display='block'; 245.78 + button.src='open.gif'; 245.79 + }else{ 245.80 + sectionDiv.style.display='none'; 245.81 + button.src='closed.gif'; 245.82 + } 245.83 +} 245.84 +function initDynSections(){ 245.85 + var divs=document.getElementsByTagName('div'); 245.86 + var sectionCounter=1; 245.87 + for(var i=0;i<divs.length-1;i++){ 245.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 245.89 + var header=divs[i]; 245.90 + var section=divs[i+1]; 245.91 + var button=header.firstChild; 245.92 + if (button!='IMG'){ 245.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 245.94 + button=document.createElement('img'); 245.95 + divs[i].insertBefore(button,divs[i].firstChild); 245.96 + } 245.97 + header.style.cursor='pointer'; 245.98 + header.onclick=changeDisplayState; 245.99 + header.id='dynheader'+sectionCounter; 245.100 + button.src='closed.gif'; 245.101 + section.id='dynsection'+sectionCounter; 245.102 + section.style.display='none'; 245.103 + section.style.marginLeft='14px'; 245.104 + sectionCounter++; 245.105 + } 245.106 + } 245.107 +} 245.108 +window.onload = initDynSections; 245.109 +--> 245.110 +</script> 245.111 +<div class="navigation" id="top"> 245.112 + <div class="tabs"> 245.113 + <ul> 245.114 + <li><a href="index.html"><span>Main Page</span></a></li> 245.115 + <li><a href="modules.html"><span>Modules</span></a></li> 245.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 245.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 245.118 + </ul> 245.119 + </div> 245.120 + <div class="tabs"> 245.121 + <ul> 245.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 245.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 245.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 245.125 + </ul> 245.126 + </div> 245.127 + <div class="tabs"> 245.128 + <ul> 245.129 + <li><a href="functions.html"><span>All</span></a></li> 245.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 245.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 245.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 245.133 + </ul> 245.134 + </div> 245.135 + <div class="tabs"> 245.136 + <ul> 245.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 245.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 245.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 245.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 245.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 245.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 245.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 245.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 245.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 245.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 245.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 245.148 + <li class="current"><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 245.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 245.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 245.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 245.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 245.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 245.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 245.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 245.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 245.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 245.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 245.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 245.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 245.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 245.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 245.163 + </ul> 245.164 + </div> 245.165 +</div> 245.166 +<div class="contents"> 245.167 + 245.168 +<p> 245.169 +<h3><a class="anchor" name="index_l">- l -</a></h3><ul> 245.170 +<li>label_regions() 245.171 +: <a class="el" href="structcimg__library_1_1CImg.html#cd78906a1eb7d7c0e1aa4c220e474540">CImg</a> 245.172 +<li>LabtoRGB() 245.173 +: <a class="el" href="structcimg__library_1_1CImg.html#a710f60075b3bc24790f17a7dc30e425">CImg</a> 245.174 +<li>LabtoXYZ() 245.175 +: <a class="el" href="structcimg__library_1_1CImg.html#875c1681e84375ceb5d828e20de61704">CImg</a> 245.176 +<li>last() 245.177 +: <a class="el" href="structcimg__library_1_1CImg.html#4fc1d283512c7d8834f1692a1dd6cef5">CImg</a> 245.178 +<li>line() 245.179 +: <a class="el" href="structcimg__library_1_1CImg.html#d701e07806866145060dd2cc2805443e">CImg</a> 245.180 +<li>linear_atX() 245.181 +: <a class="el" href="structcimg__library_1_1CImg.html#f152ffcc0cc8f55cda0d3199b97c0032">CImg</a> 245.182 +<li>linear_atXY() 245.183 +: <a class="el" href="structcimg__library_1_1CImg.html#5b57f219b9ab6a0c7fe76f10c9ced45c">CImg</a> 245.184 +<li>linear_atXYZ() 245.185 +: <a class="el" href="structcimg__library_1_1CImg.html#a070b89df5e2ff8b70e2d74cc498d622">CImg</a> 245.186 +<li>linear_atXYZV() 245.187 +: <a class="el" href="structcimg__library_1_1CImg.html#2ad85b5a6a622470a8c36d31e5e46915">CImg</a> 245.188 +<li>lines() 245.189 +: <a class="el" href="structcimg__library_1_1CImg.html#583e6f289691013d6d863d98ec20631e">CImg</a> 245.190 +<li>load() 245.191 +: <a class="el" href="structcimg__library_1_1CImg.html#138dcc5db93d511d224d88405a0041ce">CImg</a> 245.192 +<li>load_analyze() 245.193 +: <a class="el" href="structcimg__library_1_1CImg.html#b56eb4920a37739b113bd90ed65b4506">CImg</a> 245.194 +<li>load_ascii() 245.195 +: <a class="el" href="structcimg__library_1_1CImg.html#8483309e9e347b1f8b35337c543d7aed">CImg</a> 245.196 +<li>load_bmp() 245.197 +: <a class="el" href="structcimg__library_1_1CImg.html#bd7e94f200f3d4bd249c32d0d9c511bc">CImg</a> 245.198 +<li>load_cimg() 245.199 +: <a class="el" href="structcimg__library_1_1CImg.html#cdae64c0c93793df8b0a0b28a34d9694">CImg</a> 245.200 +<li>load_dcraw_external() 245.201 +: <a class="el" href="structcimg__library_1_1CImg.html#67cf88da9c1122b55ebcef3d223bccbe">CImg</a> 245.202 +<li>load_dlm() 245.203 +: <a class="el" href="structcimg__library_1_1CImg.html#15505951824c019f6fdea4f0eaab8cac">CImg</a> 245.204 +<li>load_ffmpeg() 245.205 +: <a class="el" href="structcimg__library_1_1CImg.html#0ea50f5bd07d9d8ae9ab11aaf6a87a31">CImg</a> 245.206 +<li>load_ffmpeg_external() 245.207 +: <a class="el" href="structcimg__library_1_1CImg.html#a2bb0602f254824530b888266d4d503a">CImg</a> 245.208 +<li>load_graphicsmagick_external() 245.209 +: <a class="el" href="structcimg__library_1_1CImg.html#ad5a1ff332f904a39b3ea2035d3a94dc">CImg</a> 245.210 +<li>load_gzip_external() 245.211 +: <a class="el" href="structcimg__library_1_1CImg.html#1b8bf7e0b1371dbdc0d845a39f6451a8">CImg</a> 245.212 +<li>load_imagemagick_external() 245.213 +: <a class="el" href="structcimg__library_1_1CImg.html#841db22435a4f77bf3e4c9fc65ecbb6e">CImg</a> 245.214 +<li>load_inr() 245.215 +: <a class="el" href="structcimg__library_1_1CImg.html#4a1bebfe52d369d35ad6f9d63b46fc64">CImg</a> 245.216 +<li>load_jpeg() 245.217 +: <a class="el" href="structcimg__library_1_1CImg.html#e4e17798245c1eac132b4b286c8e4419">CImg</a> 245.218 +<li>load_magick() 245.219 +: <a class="el" href="structcimg__library_1_1CImg.html#1b58020c04f6ddaa44007e9edbcba0a6">CImg</a> 245.220 +<li>load_medcon_external() 245.221 +: <a class="el" href="structcimg__library_1_1CImg.html#38df90ee1c431b684fcb5ed8248464b1">CImg</a> 245.222 +<li>load_off() 245.223 +: <a class="el" href="structcimg__library_1_1CImg.html#78e7945139c2e91df6bfecb1b388c7cc">CImg</a> 245.224 +<li>load_other() 245.225 +: <a class="el" href="structcimg__library_1_1CImg.html#35a909fb3df4bd76be2facc8366861af">CImg</a> 245.226 +<li>load_pandore() 245.227 +: <a class="el" href="structcimg__library_1_1CImg.html#1c52c863e6b22a98b8049b46bfc16102">CImg</a> 245.228 +<li>load_parrec() 245.229 +: <a class="el" href="structcimg__library_1_1CImg.html#9e3446fd647fcb9fc95a462435f42784">CImg</a> 245.230 +<li>load_png() 245.231 +: <a class="el" href="structcimg__library_1_1CImg.html#2f6f002e4cc449887b258d7a5b30afd8">CImg</a> 245.232 +<li>load_pnm() 245.233 +: <a class="el" href="structcimg__library_1_1CImg.html#a104737d62b54c15489b481a199fb72a">CImg</a> 245.234 +<li>load_raw() 245.235 +: <a class="el" href="structcimg__library_1_1CImg.html#ff2e5fd6242828f8c83e652daea0861e">CImg</a> 245.236 +<li>load_rgb() 245.237 +: <a class="el" href="structcimg__library_1_1CImg.html#c3cd73613729b55992811acee5015eab">CImg</a> 245.238 +<li>load_rgba() 245.239 +: <a class="el" href="structcimg__library_1_1CImg.html#27807907b967601fa7d51a024dd64e51">CImg</a> 245.240 +<li>load_tiff() 245.241 +: <a class="el" href="structcimg__library_1_1CImg.html#b943c007a92b463ec458b4be80e80460">CImg</a> 245.242 +, <a class="el" href="structcimg__library_1_1CImgList.html#9195765cb9bde15990a29ccd9306532c">CImgList</a> 245.243 +<li>load_yuv() 245.244 +: <a class="el" href="structcimg__library_1_1CImg.html#b0db892192d010d5f1f6c25423328535">CImg</a> 245.245 +<li>log() 245.246 +: <a class="el" href="structcimg__library_1_1CImg.html#74c5faaf4a41aa0aa470a164897d6ec6">CImg</a> 245.247 +<li>log10() 245.248 +: <a class="el" href="structcimg__library_1_1CImg.html#199c3d150c895179a609ee3b172b332e">CImg</a> 245.249 +<li>LUTtoRGB() 245.250 +: <a class="el" href="structcimg__library_1_1CImg.html#0b122070bda047ccd97702a7e72f6379">CImg</a> 245.251 +</ul> 245.252 +</div> 245.253 +<hr noshade="noshade" size="1" width="100%"> 245.254 +<a href="http://sourceforge.net"> 245.255 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 245.256 +</a> 245.257 +<!-- Start of StatCounter Code --> 245.258 +<script type="text/javascript" language="javascript"> 245.259 +<!-- 245.260 +var sc_project=895001; 245.261 +var sc_invisible=1; 245.262 +var sc_partition=7; 245.263 +var sc_security="5ea85181"; 245.264 +//--> 245.265 +</script> 245.266 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 245.267 +<!-- End of StatCounter Code --> 245.268 +</body> 245.269 +</html>
246.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 246.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x6d.html Mon Aug 03 14:09:20 2009 +0100 246.3 @@ -0,0 +1,211 @@ 246.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 246.5 +<head> 246.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 246.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 246.8 +<meta content="David Tschumperle" name="author"></meta> 246.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 246.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 246.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 246.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 246.13 +<style type="text/css"> 246.14 +<!-- 246.15 +body {background-color:white; font-family:sans-serif; } 246.16 +a:active{text-decoration:none; color:#303090} 246.17 +a:link{text-decoration:none; color:#303090} 246.18 +a:visited{text-decoration:none; color:#303090} 246.19 +a:hover{text-decoration:underline; color:#4E9F71} 246.20 +--> 246.21 +</style> 246.22 +<script language="JavaScript" type="text/javascript"> 246.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 246.24 + <!-- Web Site: http://redrival.com/eak/ --> 246.25 + <!-- This script and many more are available free online at --> 246.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 246.27 + <!-- Begin 246.28 + function NewWindow(mypage, myname, w, h, scroll) { 246.29 + var winl = (screen.width - w) / 2; 246.30 + var wint = (screen.height - h) / 2; 246.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 246.32 + win = window.open(mypage, myname, winprops) 246.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 246.34 + } 246.35 + // End --> 246.36 +</script> 246.37 +</head> 246.38 +<body> 246.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 246.40 + <tbody><tr><td> 246.41 + <hr noshade="noshade" size="1" width="90%"></hr> 246.42 + <center> 246.43 + <br/> 246.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 246.45 + <br/> 246.46 + </center> 246.47 + <hr noshade="noshade" size="1" width="90%"></hr> 246.48 + <center> 246.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 246.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 246.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 246.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 246.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 246.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 246.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 246.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 246.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 246.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 246.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 246.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 246.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 246.62 + </font> 246.63 + </td></tr></tbody> 246.64 + </table> 246.65 + </center> 246.66 + <hr noshade="noshade" size="1" width="90%"></hr> 246.67 + </td></tr></tbody> 246.68 +</table> 246.69 +<!-- Generated by Doxygen 1.5.7.1 --> 246.70 +<script type="text/javascript"> 246.71 +<!-- 246.72 +function changeDisplayState (e){ 246.73 + var num=this.id.replace(/[^[0-9]/g,''); 246.74 + var button=this.firstChild; 246.75 + var sectionDiv=document.getElementById('dynsection'+num); 246.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 246.77 + sectionDiv.style.display='block'; 246.78 + button.src='open.gif'; 246.79 + }else{ 246.80 + sectionDiv.style.display='none'; 246.81 + button.src='closed.gif'; 246.82 + } 246.83 +} 246.84 +function initDynSections(){ 246.85 + var divs=document.getElementsByTagName('div'); 246.86 + var sectionCounter=1; 246.87 + for(var i=0;i<divs.length-1;i++){ 246.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 246.89 + var header=divs[i]; 246.90 + var section=divs[i+1]; 246.91 + var button=header.firstChild; 246.92 + if (button!='IMG'){ 246.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 246.94 + button=document.createElement('img'); 246.95 + divs[i].insertBefore(button,divs[i].firstChild); 246.96 + } 246.97 + header.style.cursor='pointer'; 246.98 + header.onclick=changeDisplayState; 246.99 + header.id='dynheader'+sectionCounter; 246.100 + button.src='closed.gif'; 246.101 + section.id='dynsection'+sectionCounter; 246.102 + section.style.display='none'; 246.103 + section.style.marginLeft='14px'; 246.104 + sectionCounter++; 246.105 + } 246.106 + } 246.107 +} 246.108 +window.onload = initDynSections; 246.109 +--> 246.110 +</script> 246.111 +<div class="navigation" id="top"> 246.112 + <div class="tabs"> 246.113 + <ul> 246.114 + <li><a href="index.html"><span>Main Page</span></a></li> 246.115 + <li><a href="modules.html"><span>Modules</span></a></li> 246.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 246.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 246.118 + </ul> 246.119 + </div> 246.120 + <div class="tabs"> 246.121 + <ul> 246.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 246.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 246.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 246.125 + </ul> 246.126 + </div> 246.127 + <div class="tabs"> 246.128 + <ul> 246.129 + <li><a href="functions.html"><span>All</span></a></li> 246.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 246.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 246.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 246.133 + </ul> 246.134 + </div> 246.135 + <div class="tabs"> 246.136 + <ul> 246.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 246.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 246.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 246.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 246.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 246.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 246.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 246.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 246.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 246.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 246.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 246.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 246.149 + <li class="current"><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 246.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 246.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 246.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 246.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 246.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 246.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 246.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 246.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 246.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 246.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 246.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 246.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 246.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 246.163 + </ul> 246.164 + </div> 246.165 +</div> 246.166 +<div class="contents"> 246.167 + 246.168 +<p> 246.169 +<h3><a class="anchor" name="index_m">- m -</a></h3><ul> 246.170 +<li>marching_cubes() 246.171 +: <a class="el" href="structcimg__library_1_1CImg.html#918eba9e7b484b7300c96885a82bc5fc">CImg</a> 246.172 +<li>marching_squares() 246.173 +: <a class="el" href="structcimg__library_1_1CImg.html#858076f1e68d6b616c3f8dd46c441f77">CImg</a> 246.174 +<li>matrix() 246.175 +: <a class="el" href="structcimg__library_1_1CImg.html#4dce73b905d98f22a5860464e571120f">CImg</a> 246.176 +<li>max() 246.177 +: <a class="el" href="structcimg__library_1_1CImg.html#f1a616293569fbda2a769b612c86a8ab">CImg</a> 246.178 +<li>maxmin() 246.179 +: <a class="el" href="structcimg__library_1_1CImg.html#b503599cdf7b7a90faa02346e9b0f45d">CImg</a> 246.180 +<li>mean() 246.181 +: <a class="el" href="structcimg__library_1_1CImg.html#15da7eecd10e53fa76b99379871b1c62">CImg</a> 246.182 +<li>median() 246.183 +: <a class="el" href="structcimg__library_1_1CImg.html#a74ed6a750d63ac3effff5edc06ad62f">CImg</a> 246.184 +<li>min() 246.185 +: <a class="el" href="structcimg__library_1_1CImg.html#54fa8ab955fc28675dd0d0f4fbb9b7ad">CImg</a> 246.186 +<li>minmax() 246.187 +: <a class="el" href="structcimg__library_1_1CImg.html#37e03ef1b2ce96e5f90760889bad944e">CImg</a> 246.188 +<li>mirror() 246.189 +: <a class="el" href="structcimg__library_1_1CImg.html#91a5e5fd9431ca28eaeee0ea03419ab0">CImg</a> 246.190 +<li>move() 246.191 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#27714e5f8da060a36e6614ada9d8df25">CImgDisplay</a> 246.192 +<li>MSE() 246.193 +: <a class="el" href="structcimg__library_1_1CImg.html#1af0c1920f11fdc01c71ed0d7117ab0c">CImg</a> 246.194 +<li>mul() 246.195 +: <a class="el" href="structcimg__library_1_1CImg.html#c026a207188625e845af7abf60a31a7b">CImg</a> 246.196 +</ul> 246.197 +</div> 246.198 +<hr noshade="noshade" size="1" width="100%"> 246.199 +<a href="http://sourceforge.net"> 246.200 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 246.201 +</a> 246.202 +<!-- Start of StatCounter Code --> 246.203 +<script type="text/javascript" language="javascript"> 246.204 +<!-- 246.205 +var sc_project=895001; 246.206 +var sc_invisible=1; 246.207 +var sc_partition=7; 246.208 +var sc_security="5ea85181"; 246.209 +//--> 246.210 +</script> 246.211 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 246.212 +<!-- End of StatCounter Code --> 246.213 +</body> 246.214 +</html>
247.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 247.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x6e.html Mon Aug 03 14:09:20 2009 +0100 247.3 @@ -0,0 +1,193 @@ 247.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 247.5 +<head> 247.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 247.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 247.8 +<meta content="David Tschumperle" name="author"></meta> 247.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 247.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 247.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 247.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 247.13 +<style type="text/css"> 247.14 +<!-- 247.15 +body {background-color:white; font-family:sans-serif; } 247.16 +a:active{text-decoration:none; color:#303090} 247.17 +a:link{text-decoration:none; color:#303090} 247.18 +a:visited{text-decoration:none; color:#303090} 247.19 +a:hover{text-decoration:underline; color:#4E9F71} 247.20 +--> 247.21 +</style> 247.22 +<script language="JavaScript" type="text/javascript"> 247.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 247.24 + <!-- Web Site: http://redrival.com/eak/ --> 247.25 + <!-- This script and many more are available free online at --> 247.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 247.27 + <!-- Begin 247.28 + function NewWindow(mypage, myname, w, h, scroll) { 247.29 + var winl = (screen.width - w) / 2; 247.30 + var wint = (screen.height - h) / 2; 247.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 247.32 + win = window.open(mypage, myname, winprops) 247.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 247.34 + } 247.35 + // End --> 247.36 +</script> 247.37 +</head> 247.38 +<body> 247.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 247.40 + <tbody><tr><td> 247.41 + <hr noshade="noshade" size="1" width="90%"></hr> 247.42 + <center> 247.43 + <br/> 247.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 247.45 + <br/> 247.46 + </center> 247.47 + <hr noshade="noshade" size="1" width="90%"></hr> 247.48 + <center> 247.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 247.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 247.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 247.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 247.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 247.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 247.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 247.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 247.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 247.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 247.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 247.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 247.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 247.62 + </font> 247.63 + </td></tr></tbody> 247.64 + </table> 247.65 + </center> 247.66 + <hr noshade="noshade" size="1" width="90%"></hr> 247.67 + </td></tr></tbody> 247.68 +</table> 247.69 +<!-- Generated by Doxygen 1.5.7.1 --> 247.70 +<script type="text/javascript"> 247.71 +<!-- 247.72 +function changeDisplayState (e){ 247.73 + var num=this.id.replace(/[^[0-9]/g,''); 247.74 + var button=this.firstChild; 247.75 + var sectionDiv=document.getElementById('dynsection'+num); 247.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 247.77 + sectionDiv.style.display='block'; 247.78 + button.src='open.gif'; 247.79 + }else{ 247.80 + sectionDiv.style.display='none'; 247.81 + button.src='closed.gif'; 247.82 + } 247.83 +} 247.84 +function initDynSections(){ 247.85 + var divs=document.getElementsByTagName('div'); 247.86 + var sectionCounter=1; 247.87 + for(var i=0;i<divs.length-1;i++){ 247.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 247.89 + var header=divs[i]; 247.90 + var section=divs[i+1]; 247.91 + var button=header.firstChild; 247.92 + if (button!='IMG'){ 247.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 247.94 + button=document.createElement('img'); 247.95 + divs[i].insertBefore(button,divs[i].firstChild); 247.96 + } 247.97 + header.style.cursor='pointer'; 247.98 + header.onclick=changeDisplayState; 247.99 + header.id='dynheader'+sectionCounter; 247.100 + button.src='closed.gif'; 247.101 + section.id='dynsection'+sectionCounter; 247.102 + section.style.display='none'; 247.103 + section.style.marginLeft='14px'; 247.104 + sectionCounter++; 247.105 + } 247.106 + } 247.107 +} 247.108 +window.onload = initDynSections; 247.109 +--> 247.110 +</script> 247.111 +<div class="navigation" id="top"> 247.112 + <div class="tabs"> 247.113 + <ul> 247.114 + <li><a href="index.html"><span>Main Page</span></a></li> 247.115 + <li><a href="modules.html"><span>Modules</span></a></li> 247.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 247.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 247.118 + </ul> 247.119 + </div> 247.120 + <div class="tabs"> 247.121 + <ul> 247.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 247.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 247.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 247.125 + </ul> 247.126 + </div> 247.127 + <div class="tabs"> 247.128 + <ul> 247.129 + <li><a href="functions.html"><span>All</span></a></li> 247.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 247.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 247.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 247.133 + </ul> 247.134 + </div> 247.135 + <div class="tabs"> 247.136 + <ul> 247.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 247.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 247.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 247.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 247.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 247.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 247.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 247.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 247.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 247.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 247.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 247.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 247.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 247.150 + <li class="current"><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 247.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 247.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 247.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 247.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 247.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 247.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 247.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 247.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 247.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 247.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 247.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 247.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 247.163 + </ul> 247.164 + </div> 247.165 +</div> 247.166 +<div class="contents"> 247.167 + 247.168 +<p> 247.169 +<h3><a class="anchor" name="index_n">- n -</a></h3><ul> 247.170 +<li>noise() 247.171 +: <a class="el" href="structcimg__library_1_1CImg.html#caf16c667ccfe861ba7c565537f67a1a">CImg</a> 247.172 +<li>norm() 247.173 +: <a class="el" href="structcimg__library_1_1CImg.html#7de8144e906d2610c4a011056e239595">CImg</a> 247.174 +<li>normalize() 247.175 +: <a class="el" href="structcimg__library_1_1CImg.html#447de4206a2c264f2c73e825ada11952">CImg</a> 247.176 +<li>normalscreen() 247.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#971f4ac8d406a926d71f18c21c869f90">CImgDisplay</a> 247.178 +</ul> 247.179 +</div> 247.180 +<hr noshade="noshade" size="1" width="100%"> 247.181 +<a href="http://sourceforge.net"> 247.182 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 247.183 +</a> 247.184 +<!-- Start of StatCounter Code --> 247.185 +<script type="text/javascript" language="javascript"> 247.186 +<!-- 247.187 +var sc_project=895001; 247.188 +var sc_invisible=1; 247.189 +var sc_partition=7; 247.190 +var sc_security="5ea85181"; 247.191 +//--> 247.192 +</script> 247.193 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 247.194 +<!-- End of StatCounter Code --> 247.195 +</body> 247.196 +</html>
248.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 248.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x6f.html Mon Aug 03 14:09:20 2009 +0100 248.3 @@ -0,0 +1,245 @@ 248.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 248.5 +<head> 248.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 248.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 248.8 +<meta content="David Tschumperle" name="author"></meta> 248.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 248.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 248.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 248.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 248.13 +<style type="text/css"> 248.14 +<!-- 248.15 +body {background-color:white; font-family:sans-serif; } 248.16 +a:active{text-decoration:none; color:#303090} 248.17 +a:link{text-decoration:none; color:#303090} 248.18 +a:visited{text-decoration:none; color:#303090} 248.19 +a:hover{text-decoration:underline; color:#4E9F71} 248.20 +--> 248.21 +</style> 248.22 +<script language="JavaScript" type="text/javascript"> 248.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 248.24 + <!-- Web Site: http://redrival.com/eak/ --> 248.25 + <!-- This script and many more are available free online at --> 248.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 248.27 + <!-- Begin 248.28 + function NewWindow(mypage, myname, w, h, scroll) { 248.29 + var winl = (screen.width - w) / 2; 248.30 + var wint = (screen.height - h) / 2; 248.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 248.32 + win = window.open(mypage, myname, winprops) 248.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 248.34 + } 248.35 + // End --> 248.36 +</script> 248.37 +</head> 248.38 +<body> 248.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 248.40 + <tbody><tr><td> 248.41 + <hr noshade="noshade" size="1" width="90%"></hr> 248.42 + <center> 248.43 + <br/> 248.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 248.45 + <br/> 248.46 + </center> 248.47 + <hr noshade="noshade" size="1" width="90%"></hr> 248.48 + <center> 248.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 248.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 248.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 248.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 248.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 248.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 248.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 248.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 248.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 248.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 248.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 248.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 248.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 248.62 + </font> 248.63 + </td></tr></tbody> 248.64 + </table> 248.65 + </center> 248.66 + <hr noshade="noshade" size="1" width="90%"></hr> 248.67 + </td></tr></tbody> 248.68 +</table> 248.69 +<!-- Generated by Doxygen 1.5.7.1 --> 248.70 +<script type="text/javascript"> 248.71 +<!-- 248.72 +function changeDisplayState (e){ 248.73 + var num=this.id.replace(/[^[0-9]/g,''); 248.74 + var button=this.firstChild; 248.75 + var sectionDiv=document.getElementById('dynsection'+num); 248.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 248.77 + sectionDiv.style.display='block'; 248.78 + button.src='open.gif'; 248.79 + }else{ 248.80 + sectionDiv.style.display='none'; 248.81 + button.src='closed.gif'; 248.82 + } 248.83 +} 248.84 +function initDynSections(){ 248.85 + var divs=document.getElementsByTagName('div'); 248.86 + var sectionCounter=1; 248.87 + for(var i=0;i<divs.length-1;i++){ 248.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 248.89 + var header=divs[i]; 248.90 + var section=divs[i+1]; 248.91 + var button=header.firstChild; 248.92 + if (button!='IMG'){ 248.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 248.94 + button=document.createElement('img'); 248.95 + divs[i].insertBefore(button,divs[i].firstChild); 248.96 + } 248.97 + header.style.cursor='pointer'; 248.98 + header.onclick=changeDisplayState; 248.99 + header.id='dynheader'+sectionCounter; 248.100 + button.src='closed.gif'; 248.101 + section.id='dynsection'+sectionCounter; 248.102 + section.style.display='none'; 248.103 + section.style.marginLeft='14px'; 248.104 + sectionCounter++; 248.105 + } 248.106 + } 248.107 +} 248.108 +window.onload = initDynSections; 248.109 +--> 248.110 +</script> 248.111 +<div class="navigation" id="top"> 248.112 + <div class="tabs"> 248.113 + <ul> 248.114 + <li><a href="index.html"><span>Main Page</span></a></li> 248.115 + <li><a href="modules.html"><span>Modules</span></a></li> 248.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 248.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 248.118 + </ul> 248.119 + </div> 248.120 + <div class="tabs"> 248.121 + <ul> 248.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 248.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 248.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 248.125 + </ul> 248.126 + </div> 248.127 + <div class="tabs"> 248.128 + <ul> 248.129 + <li><a href="functions.html"><span>All</span></a></li> 248.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 248.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 248.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 248.133 + </ul> 248.134 + </div> 248.135 + <div class="tabs"> 248.136 + <ul> 248.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 248.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 248.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 248.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 248.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 248.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 248.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 248.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 248.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 248.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 248.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 248.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 248.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 248.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 248.151 + <li class="current"><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 248.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 248.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 248.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 248.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 248.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 248.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 248.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 248.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 248.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 248.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 248.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 248.163 + </ul> 248.164 + </div> 248.165 +</div> 248.166 +<div class="contents"> 248.167 + 248.168 +<p> 248.169 +<h3><a class="anchor" name="index_o">- o -</a></h3><ul> 248.170 +<li>offset() 248.171 +: <a class="el" href="structcimg__library_1_1CImg.html#afc4c62eb956815235bb896a1707f711">CImg</a> 248.172 +<li>operator bool() 248.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a385aa18f5e42db5a415c25a90f4193d">CImgDisplay</a> 248.174 +, <a class="el" href="structcimg__library_1_1CImgList.html#a385aa18f5e42db5a415c25a90f4193d">CImgList</a> 248.175 +, <a class="el" href="structcimg__library_1_1CImg.html#a385aa18f5e42db5a415c25a90f4193d">CImg</a> 248.176 +<li>operator!=() 248.177 +: <a class="el" href="structcimg__library_1_1CImg.html#826e9d8fbbc121776b306f8c2ad13e22">CImg</a> 248.178 +<li>operator%() 248.179 +: <a class="el" href="structcimg__library_1_1CImg.html#248f258fd888937bd3ff1bfd6262cf86">CImg</a> 248.180 +<li>operator%=() 248.181 +: <a class="el" href="structcimg__library_1_1CImg.html#dc3ca29103dd08337dd5b314fc739e8f">CImg</a> 248.182 +<li>operator&() 248.183 +: <a class="el" href="structcimg__library_1_1CImg.html#63777d8b423f5bf16a60be4466ec70d4">CImg</a> 248.184 +<li>operator&=() 248.185 +: <a class="el" href="structcimg__library_1_1CImg.html#788c26161bb12c4fed30b2a8edf05126">CImg</a> 248.186 +<li>operator()() 248.187 +: <a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b">CImg</a> 248.188 +<li>operator*=() 248.189 +: <a class="el" href="structcimg__library_1_1CImg.html#770aafd607168611eace12d46d5f2bfd">CImg</a> 248.190 +<li>operator+() 248.191 +: <a class="el" href="structcimg__library_1_1CImg.html#637e0346bd7e4426d32e32aab42bd3f6">CImg</a> 248.192 +<li>operator++() 248.193 +: <a class="el" href="structcimg__library_1_1CImg.html#ed696f4e890e8da6f6ebaa3171aa2dd7">CImg</a> 248.194 +<li>operator+=() 248.195 +: <a class="el" href="structcimg__library_1_1CImg.html#f953b216980f8519642514380f3bfdba">CImg</a> 248.196 +<li>operator-() 248.197 +: <a class="el" href="structcimg__library_1_1CImg.html#e8c181b212c22dbee4ee228cac4c00d4">CImg</a> 248.198 +<li>operator--() 248.199 +: <a class="el" href="structcimg__library_1_1CImg.html#8d71ada97bd3d54d3f4265f0059273cf">CImg</a> 248.200 +<li>operator-=() 248.201 +: <a class="el" href="structcimg__library_1_1CImg.html#f18d9bcb5010cdea4c3f6496dd36ccb4">CImg</a> 248.202 +<li>operator/=() 248.203 +: <a class="el" href="structcimg__library_1_1CImg.html#9a6123b197ed6406eda560863bbe4cc1">CImg</a> 248.204 +<li>operator<<() 248.205 +: <a class="el" href="structcimg__library_1_1CImg.html#9ae2c81016de21b85487cb678a43afb8">CImg</a> 248.206 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#86ffd9e1b491dab79d3b862a26e56053">CImgDisplay</a> 248.207 +<li>operator<<=() 248.208 +: <a class="el" href="structcimg__library_1_1CImg.html#02dd49d59f77aa41446ce028f9771151">CImg</a> 248.209 +<li>operator=() 248.210 +: <a class="el" href="structcimg__library_1_1CImg.html#b8993b2170b87343f86f3e07fe0b7348">CImg</a> 248.211 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#81d1882a4d7d0579298fe6fc706fca40">CImgDisplay</a> 248.212 +<li>operator==() 248.213 +: <a class="el" href="structcimg__library_1_1CImg.html#0ad220d8708e61416b9b9255aa612740">CImg</a> 248.214 +<li>operator>>() 248.215 +: <a class="el" href="structcimg__library_1_1CImg.html#622413644789d18b3cfff7ff309c95fd">CImg</a> 248.216 +<li>operator>>=() 248.217 +: <a class="el" href="structcimg__library_1_1CImg.html#2ecc6f016d1358b12e010dbe75e4d576">CImg</a> 248.218 +<li>operator[]() 248.219 +: <a class="el" href="structcimg__library_1_1CImg.html#87f4042f1af3428fa0ad1a9480286abe">CImg</a> 248.220 +<li>operator^() 248.221 +: <a class="el" href="structcimg__library_1_1CImg.html#ff2d39b04a4a00a4c4a058872a235380">CImg</a> 248.222 +<li>operator^=() 248.223 +: <a class="el" href="structcimg__library_1_1CImg.html#c51bdadcbdffee3dfda3914ec6dfdbfd">CImg</a> 248.224 +<li>operator|() 248.225 +: <a class="el" href="structcimg__library_1_1CImg.html#a8a9d727ce82153f4df2fe8e1292bad0">CImg</a> 248.226 +<li>operator|=() 248.227 +: <a class="el" href="structcimg__library_1_1CImg.html#baa1bd39411a23a524c6baf0c55745d3">CImg</a> 248.228 +<li>operator~() 248.229 +: <a class="el" href="structcimg__library_1_1CImg.html#0752b44324e973aed012d79bc9a2d3fd">CImg</a> 248.230 +</ul> 248.231 +</div> 248.232 +<hr noshade="noshade" size="1" width="100%"> 248.233 +<a href="http://sourceforge.net"> 248.234 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 248.235 +</a> 248.236 +<!-- Start of StatCounter Code --> 248.237 +<script type="text/javascript" language="javascript"> 248.238 +<!-- 248.239 +var sc_project=895001; 248.240 +var sc_invisible=1; 248.241 +var sc_partition=7; 248.242 +var sc_security="5ea85181"; 248.243 +//--> 248.244 +</script> 248.245 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 248.246 +<!-- End of StatCounter Code --> 248.247 +</body> 248.248 +</html>
249.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 249.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x70.html Mon Aug 03 14:09:20 2009 +0100 249.3 @@ -0,0 +1,212 @@ 249.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 249.5 +<head> 249.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 249.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 249.8 +<meta content="David Tschumperle" name="author"></meta> 249.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 249.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 249.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 249.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 249.13 +<style type="text/css"> 249.14 +<!-- 249.15 +body {background-color:white; font-family:sans-serif; } 249.16 +a:active{text-decoration:none; color:#303090} 249.17 +a:link{text-decoration:none; color:#303090} 249.18 +a:visited{text-decoration:none; color:#303090} 249.19 +a:hover{text-decoration:underline; color:#4E9F71} 249.20 +--> 249.21 +</style> 249.22 +<script language="JavaScript" type="text/javascript"> 249.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 249.24 + <!-- Web Site: http://redrival.com/eak/ --> 249.25 + <!-- This script and many more are available free online at --> 249.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 249.27 + <!-- Begin 249.28 + function NewWindow(mypage, myname, w, h, scroll) { 249.29 + var winl = (screen.width - w) / 2; 249.30 + var wint = (screen.height - h) / 2; 249.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 249.32 + win = window.open(mypage, myname, winprops) 249.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 249.34 + } 249.35 + // End --> 249.36 +</script> 249.37 +</head> 249.38 +<body> 249.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 249.40 + <tbody><tr><td> 249.41 + <hr noshade="noshade" size="1" width="90%"></hr> 249.42 + <center> 249.43 + <br/> 249.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 249.45 + <br/> 249.46 + </center> 249.47 + <hr noshade="noshade" size="1" width="90%"></hr> 249.48 + <center> 249.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 249.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 249.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 249.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 249.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 249.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 249.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 249.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 249.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 249.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 249.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 249.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 249.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 249.62 + </font> 249.63 + </td></tr></tbody> 249.64 + </table> 249.65 + </center> 249.66 + <hr noshade="noshade" size="1" width="90%"></hr> 249.67 + </td></tr></tbody> 249.68 +</table> 249.69 +<!-- Generated by Doxygen 1.5.7.1 --> 249.70 +<script type="text/javascript"> 249.71 +<!-- 249.72 +function changeDisplayState (e){ 249.73 + var num=this.id.replace(/[^[0-9]/g,''); 249.74 + var button=this.firstChild; 249.75 + var sectionDiv=document.getElementById('dynsection'+num); 249.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 249.77 + sectionDiv.style.display='block'; 249.78 + button.src='open.gif'; 249.79 + }else{ 249.80 + sectionDiv.style.display='none'; 249.81 + button.src='closed.gif'; 249.82 + } 249.83 +} 249.84 +function initDynSections(){ 249.85 + var divs=document.getElementsByTagName('div'); 249.86 + var sectionCounter=1; 249.87 + for(var i=0;i<divs.length-1;i++){ 249.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 249.89 + var header=divs[i]; 249.90 + var section=divs[i+1]; 249.91 + var button=header.firstChild; 249.92 + if (button!='IMG'){ 249.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 249.94 + button=document.createElement('img'); 249.95 + divs[i].insertBefore(button,divs[i].firstChild); 249.96 + } 249.97 + header.style.cursor='pointer'; 249.98 + header.onclick=changeDisplayState; 249.99 + header.id='dynheader'+sectionCounter; 249.100 + button.src='closed.gif'; 249.101 + section.id='dynsection'+sectionCounter; 249.102 + section.style.display='none'; 249.103 + section.style.marginLeft='14px'; 249.104 + sectionCounter++; 249.105 + } 249.106 + } 249.107 +} 249.108 +window.onload = initDynSections; 249.109 +--> 249.110 +</script> 249.111 +<div class="navigation" id="top"> 249.112 + <div class="tabs"> 249.113 + <ul> 249.114 + <li><a href="index.html"><span>Main Page</span></a></li> 249.115 + <li><a href="modules.html"><span>Modules</span></a></li> 249.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 249.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 249.118 + </ul> 249.119 + </div> 249.120 + <div class="tabs"> 249.121 + <ul> 249.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 249.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 249.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 249.125 + </ul> 249.126 + </div> 249.127 + <div class="tabs"> 249.128 + <ul> 249.129 + <li><a href="functions.html"><span>All</span></a></li> 249.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 249.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 249.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 249.133 + </ul> 249.134 + </div> 249.135 + <div class="tabs"> 249.136 + <ul> 249.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 249.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 249.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 249.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 249.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 249.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 249.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 249.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 249.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 249.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 249.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 249.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 249.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 249.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 249.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 249.152 + <li class="current"><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 249.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 249.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 249.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 249.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 249.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 249.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 249.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 249.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 249.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 249.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 249.163 + </ul> 249.164 + </div> 249.165 +</div> 249.166 +<div class="contents"> 249.167 + 249.168 +<p> 249.169 +<h3><a class="anchor" name="index_p">- p -</a></h3><ul> 249.170 +<li>paint() 249.171 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4e67d156351dd7dfdfd2f04e563c4f2a">CImgDisplay</a> 249.172 +<li>permute() 249.173 +: <a class="el" href="structcimg__library_1_1CImg.html#9b26a9b20ac9729e26552e8d44a9d478">CImg</a> 249.174 +<li>permute_axes() 249.175 +: <a class="el" href="structcimg__library_1_1CImg.html#f5eac37234edfffffe75770e4a492b15">CImg</a> 249.176 +<li>pixel_type() 249.177 +: <a class="el" href="structcimg__library_1_1CImg.html#b7d3a61366cf906c03af6c8fa13309a7">CImg</a> 249.178 +, <a class="el" href="structcimg__library_1_1CImgList.html#b7d3a61366cf906c03af6c8fa13309a7">CImgList</a> 249.179 +<li>plane3d() 249.180 +: <a class="el" href="structcimg__library_1_1CImg.html#dcc51ad58ccf7a05d28a6dd4ffa446d9">CImg</a> 249.181 +<li>pointwise_norm() 249.182 +: <a class="el" href="structcimg__library_1_1CImg.html#f2cceb3e14d6650bc7d1c89afedba15a">CImg</a> 249.183 +<li>pointwise_orientation() 249.184 +: <a class="el" href="structcimg__library_1_1CImg.html#2662d70fed319ed056836696c3a97499">CImg</a> 249.185 +<li>pow() 249.186 +: <a class="el" href="structcimg__library_1_1CImg.html#e2f27aee992cf2189c56fdbaaf72ef76">CImg</a> 249.187 +<li>print() 249.188 +: <a class="el" href="structcimg__library_1_1CImg.html#6996328dda8169890a02942e19b6d445">CImg</a> 249.189 +<li>projections2d() 249.190 +: <a class="el" href="structcimg__library_1_1CImg.html#4f4f598be55ec6fb4af8c0f9bb05b91c">CImg</a> 249.191 +<li>pseudoinvert() 249.192 +: <a class="el" href="structcimg__library_1_1CImg.html#bff5169ef56ddce3102cfa3b6de0bd19">CImg</a> 249.193 +<li>PSNR() 249.194 +: <a class="el" href="structcimg__library_1_1CImg.html#f08ee23c8bdb4913f792676f385161ea">CImg</a> 249.195 +<li>ptr() 249.196 +: <a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda">CImg</a> 249.197 +</ul> 249.198 +</div> 249.199 +<hr noshade="noshade" size="1" width="100%"> 249.200 +<a href="http://sourceforge.net"> 249.201 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 249.202 +</a> 249.203 +<!-- Start of StatCounter Code --> 249.204 +<script type="text/javascript" language="javascript"> 249.205 +<!-- 249.206 +var sc_project=895001; 249.207 +var sc_invisible=1; 249.208 +var sc_partition=7; 249.209 +var sc_security="5ea85181"; 249.210 +//--> 249.211 +</script> 249.212 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 249.213 +<!-- End of StatCounter Code --> 249.214 +</body> 249.215 +</html>
250.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 250.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x71.html Mon Aug 03 14:09:20 2009 +0100 250.3 @@ -0,0 +1,187 @@ 250.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 250.5 +<head> 250.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 250.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 250.8 +<meta content="David Tschumperle" name="author"></meta> 250.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 250.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 250.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 250.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 250.13 +<style type="text/css"> 250.14 +<!-- 250.15 +body {background-color:white; font-family:sans-serif; } 250.16 +a:active{text-decoration:none; color:#303090} 250.17 +a:link{text-decoration:none; color:#303090} 250.18 +a:visited{text-decoration:none; color:#303090} 250.19 +a:hover{text-decoration:underline; color:#4E9F71} 250.20 +--> 250.21 +</style> 250.22 +<script language="JavaScript" type="text/javascript"> 250.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 250.24 + <!-- Web Site: http://redrival.com/eak/ --> 250.25 + <!-- This script and many more are available free online at --> 250.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 250.27 + <!-- Begin 250.28 + function NewWindow(mypage, myname, w, h, scroll) { 250.29 + var winl = (screen.width - w) / 2; 250.30 + var wint = (screen.height - h) / 2; 250.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 250.32 + win = window.open(mypage, myname, winprops) 250.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 250.34 + } 250.35 + // End --> 250.36 +</script> 250.37 +</head> 250.38 +<body> 250.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 250.40 + <tbody><tr><td> 250.41 + <hr noshade="noshade" size="1" width="90%"></hr> 250.42 + <center> 250.43 + <br/> 250.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 250.45 + <br/> 250.46 + </center> 250.47 + <hr noshade="noshade" size="1" width="90%"></hr> 250.48 + <center> 250.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 250.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 250.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 250.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 250.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 250.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 250.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 250.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 250.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 250.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 250.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 250.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 250.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 250.62 + </font> 250.63 + </td></tr></tbody> 250.64 + </table> 250.65 + </center> 250.66 + <hr noshade="noshade" size="1" width="90%"></hr> 250.67 + </td></tr></tbody> 250.68 +</table> 250.69 +<!-- Generated by Doxygen 1.5.7.1 --> 250.70 +<script type="text/javascript"> 250.71 +<!-- 250.72 +function changeDisplayState (e){ 250.73 + var num=this.id.replace(/[^[0-9]/g,''); 250.74 + var button=this.firstChild; 250.75 + var sectionDiv=document.getElementById('dynsection'+num); 250.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 250.77 + sectionDiv.style.display='block'; 250.78 + button.src='open.gif'; 250.79 + }else{ 250.80 + sectionDiv.style.display='none'; 250.81 + button.src='closed.gif'; 250.82 + } 250.83 +} 250.84 +function initDynSections(){ 250.85 + var divs=document.getElementsByTagName('div'); 250.86 + var sectionCounter=1; 250.87 + for(var i=0;i<divs.length-1;i++){ 250.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 250.89 + var header=divs[i]; 250.90 + var section=divs[i+1]; 250.91 + var button=header.firstChild; 250.92 + if (button!='IMG'){ 250.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 250.94 + button=document.createElement('img'); 250.95 + divs[i].insertBefore(button,divs[i].firstChild); 250.96 + } 250.97 + header.style.cursor='pointer'; 250.98 + header.onclick=changeDisplayState; 250.99 + header.id='dynheader'+sectionCounter; 250.100 + button.src='closed.gif'; 250.101 + section.id='dynsection'+sectionCounter; 250.102 + section.style.display='none'; 250.103 + section.style.marginLeft='14px'; 250.104 + sectionCounter++; 250.105 + } 250.106 + } 250.107 +} 250.108 +window.onload = initDynSections; 250.109 +--> 250.110 +</script> 250.111 +<div class="navigation" id="top"> 250.112 + <div class="tabs"> 250.113 + <ul> 250.114 + <li><a href="index.html"><span>Main Page</span></a></li> 250.115 + <li><a href="modules.html"><span>Modules</span></a></li> 250.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 250.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 250.118 + </ul> 250.119 + </div> 250.120 + <div class="tabs"> 250.121 + <ul> 250.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 250.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 250.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 250.125 + </ul> 250.126 + </div> 250.127 + <div class="tabs"> 250.128 + <ul> 250.129 + <li><a href="functions.html"><span>All</span></a></li> 250.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 250.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 250.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 250.133 + </ul> 250.134 + </div> 250.135 + <div class="tabs"> 250.136 + <ul> 250.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 250.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 250.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 250.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 250.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 250.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 250.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 250.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 250.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 250.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 250.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 250.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 250.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 250.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 250.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 250.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 250.153 + <li class="current"><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 250.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 250.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 250.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 250.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 250.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 250.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 250.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 250.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 250.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 250.163 + </ul> 250.164 + </div> 250.165 +</div> 250.166 +<div class="contents"> 250.167 + 250.168 +<p> 250.169 +<h3><a class="anchor" name="index_q">- q -</a></h3><ul> 250.170 +<li>quantize() 250.171 +: <a class="el" href="structcimg__library_1_1CImg.html#96fb1f65e6aff268da75be5e6adbd1d1">CImg</a> 250.172 +</ul> 250.173 +</div> 250.174 +<hr noshade="noshade" size="1" width="100%"> 250.175 +<a href="http://sourceforge.net"> 250.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 250.177 +</a> 250.178 +<!-- Start of StatCounter Code --> 250.179 +<script type="text/javascript" language="javascript"> 250.180 +<!-- 250.181 +var sc_project=895001; 250.182 +var sc_invisible=1; 250.183 +var sc_partition=7; 250.184 +var sc_security="5ea85181"; 250.185 +//--> 250.186 +</script> 250.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 250.188 +<!-- End of StatCounter Code --> 250.189 +</body> 250.190 +</html>
251.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 251.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x72.html Mon Aug 03 14:09:20 2009 +0100 251.3 @@ -0,0 +1,235 @@ 251.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 251.5 +<head> 251.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 251.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 251.8 +<meta content="David Tschumperle" name="author"></meta> 251.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 251.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 251.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 251.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 251.13 +<style type="text/css"> 251.14 +<!-- 251.15 +body {background-color:white; font-family:sans-serif; } 251.16 +a:active{text-decoration:none; color:#303090} 251.17 +a:link{text-decoration:none; color:#303090} 251.18 +a:visited{text-decoration:none; color:#303090} 251.19 +a:hover{text-decoration:underline; color:#4E9F71} 251.20 +--> 251.21 +</style> 251.22 +<script language="JavaScript" type="text/javascript"> 251.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 251.24 + <!-- Web Site: http://redrival.com/eak/ --> 251.25 + <!-- This script and many more are available free online at --> 251.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 251.27 + <!-- Begin 251.28 + function NewWindow(mypage, myname, w, h, scroll) { 251.29 + var winl = (screen.width - w) / 2; 251.30 + var wint = (screen.height - h) / 2; 251.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 251.32 + win = window.open(mypage, myname, winprops) 251.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 251.34 + } 251.35 + // End --> 251.36 +</script> 251.37 +</head> 251.38 +<body> 251.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 251.40 + <tbody><tr><td> 251.41 + <hr noshade="noshade" size="1" width="90%"></hr> 251.42 + <center> 251.43 + <br/> 251.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 251.45 + <br/> 251.46 + </center> 251.47 + <hr noshade="noshade" size="1" width="90%"></hr> 251.48 + <center> 251.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 251.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 251.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 251.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 251.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 251.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 251.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 251.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 251.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 251.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 251.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 251.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 251.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 251.62 + </font> 251.63 + </td></tr></tbody> 251.64 + </table> 251.65 + </center> 251.66 + <hr noshade="noshade" size="1" width="90%"></hr> 251.67 + </td></tr></tbody> 251.68 +</table> 251.69 +<!-- Generated by Doxygen 1.5.7.1 --> 251.70 +<script type="text/javascript"> 251.71 +<!-- 251.72 +function changeDisplayState (e){ 251.73 + var num=this.id.replace(/[^[0-9]/g,''); 251.74 + var button=this.firstChild; 251.75 + var sectionDiv=document.getElementById('dynsection'+num); 251.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 251.77 + sectionDiv.style.display='block'; 251.78 + button.src='open.gif'; 251.79 + }else{ 251.80 + sectionDiv.style.display='none'; 251.81 + button.src='closed.gif'; 251.82 + } 251.83 +} 251.84 +function initDynSections(){ 251.85 + var divs=document.getElementsByTagName('div'); 251.86 + var sectionCounter=1; 251.87 + for(var i=0;i<divs.length-1;i++){ 251.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 251.89 + var header=divs[i]; 251.90 + var section=divs[i+1]; 251.91 + var button=header.firstChild; 251.92 + if (button!='IMG'){ 251.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 251.94 + button=document.createElement('img'); 251.95 + divs[i].insertBefore(button,divs[i].firstChild); 251.96 + } 251.97 + header.style.cursor='pointer'; 251.98 + header.onclick=changeDisplayState; 251.99 + header.id='dynheader'+sectionCounter; 251.100 + button.src='closed.gif'; 251.101 + section.id='dynsection'+sectionCounter; 251.102 + section.style.display='none'; 251.103 + section.style.marginLeft='14px'; 251.104 + sectionCounter++; 251.105 + } 251.106 + } 251.107 +} 251.108 +window.onload = initDynSections; 251.109 +--> 251.110 +</script> 251.111 +<div class="navigation" id="top"> 251.112 + <div class="tabs"> 251.113 + <ul> 251.114 + <li><a href="index.html"><span>Main Page</span></a></li> 251.115 + <li><a href="modules.html"><span>Modules</span></a></li> 251.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 251.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 251.118 + </ul> 251.119 + </div> 251.120 + <div class="tabs"> 251.121 + <ul> 251.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 251.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 251.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 251.125 + </ul> 251.126 + </div> 251.127 + <div class="tabs"> 251.128 + <ul> 251.129 + <li><a href="functions.html"><span>All</span></a></li> 251.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 251.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 251.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 251.133 + </ul> 251.134 + </div> 251.135 + <div class="tabs"> 251.136 + <ul> 251.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 251.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 251.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 251.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 251.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 251.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 251.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 251.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 251.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 251.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 251.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 251.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 251.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 251.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 251.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 251.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 251.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 251.154 + <li class="current"><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 251.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 251.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 251.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 251.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 251.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 251.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 251.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 251.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 251.163 + </ul> 251.164 + </div> 251.165 +</div> 251.166 +<div class="contents"> 251.167 + 251.168 +<p> 251.169 +<h3><a class="anchor" name="index_r">- r -</a></h3><ul> 251.170 +<li>rainbow_LUT8() 251.171 +: <a class="el" href="structcimg__library_1_1CImg.html#f3c82dae3264131f819857014435bbe3">CImg</a> 251.172 +<li>rand() 251.173 +: <a class="el" href="structcimg__library_1_1CImg.html#bc7e3023df86263a49a224317c819779">CImg</a> 251.174 +<li>render() 251.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#1e0eea237d50ddb7e010a8b5edb5fdf4">CImgDisplay</a> 251.176 +<li>resize() 251.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fee064d94e1ec2e764af537fbee30d13">CImgDisplay</a> 251.178 +, <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4">CImg</a> 251.179 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#f4d082c39b75c096acb3fee6cda89b19">CImgDisplay</a> 251.180 +, <a class="el" href="structcimg__library_1_1CImg.html#cb7831acf038a036edaa9a1b74779054">CImg</a> 251.181 +, <a class="el" href="structcimg__library_1_1CImgDisplay.html#e3fd73d5fc6a4ac9b87b1b8cdacc3833">CImgDisplay</a> 251.182 +<li>resize_doubleXY() 251.183 +: <a class="el" href="structcimg__library_1_1CImg.html#a2fa295816582cb2e62d530c54533055">CImg</a> 251.184 +<li>resize_halfXY() 251.185 +: <a class="el" href="structcimg__library_1_1CImg.html#37dbb62f101c6076db3d4d9f45684b30">CImg</a> 251.186 +<li>resize_object3d() 251.187 +: <a class="el" href="structcimg__library_1_1CImg.html#cf489c894d7f7394912d5dd4c05c1538">CImg</a> 251.188 +<li>resize_tripleXY() 251.189 +: <a class="el" href="structcimg__library_1_1CImg.html#64f4be91725b57a74d080b848660676c">CImg</a> 251.190 +<li>RGBtoBayer() 251.191 +: <a class="el" href="structcimg__library_1_1CImg.html#b4e692d67bb005b4b25555693d15f739">CImg</a> 251.192 +<li>RGBtoCMY() 251.193 +: <a class="el" href="structcimg__library_1_1CImg.html#2a5e7725a4aafab45bfecc7c31987aca">CImg</a> 251.194 +<li>RGBtoCMYK() 251.195 +: <a class="el" href="structcimg__library_1_1CImg.html#3d28b9e43e5d74e8b584844295bb1aa0">CImg</a> 251.196 +<li>RGBtoHSI() 251.197 +: <a class="el" href="structcimg__library_1_1CImg.html#e5820d33b36cc0266b98c0d9c9f0c3a6">CImg</a> 251.198 +<li>RGBtoHSL() 251.199 +: <a class="el" href="structcimg__library_1_1CImg.html#3b76b35625d85926b4e88227f89f734e">CImg</a> 251.200 +<li>RGBtoHSV() 251.201 +: <a class="el" href="structcimg__library_1_1CImg.html#6c0ab36ca2418c9b62590cdfdcbdc793">CImg</a> 251.202 +<li>RGBtoLab() 251.203 +: <a class="el" href="structcimg__library_1_1CImg.html#eb2b9b79af81584352a2e5f056b1a6df">CImg</a> 251.204 +<li>RGBtoLUT() 251.205 +: <a class="el" href="structcimg__library_1_1CImg.html#59e0e13a4701d81e9bb78bd6cbd2d048">CImg</a> 251.206 +<li>RGBtoxyY() 251.207 +: <a class="el" href="structcimg__library_1_1CImg.html#27cd306be7eb34f49f9e880a9dd740ba">CImg</a> 251.208 +<li>RGBtoXYZ() 251.209 +: <a class="el" href="structcimg__library_1_1CImg.html#70c6c7a5d8ed24b2e618ab89f2dbadda">CImg</a> 251.210 +<li>RGBtoYCbCr() 251.211 +: <a class="el" href="structcimg__library_1_1CImg.html#fbc08f08341e56ebf9b27e3ddacc9ee6">CImg</a> 251.212 +<li>RGBtoYUV() 251.213 +: <a class="el" href="structcimg__library_1_1CImg.html#e9383bb8937b8fa8e96f9612305c55bd">CImg</a> 251.214 +<li>rotate() 251.215 +: <a class="el" href="structcimg__library_1_1CImg.html#e4b06ab7123208c764f6fe1de4d29a39">CImg</a> 251.216 +<li>rotation_matrix() 251.217 +: <a class="el" href="structcimg__library_1_1CImg.html#1bf68d76e4c29dde15607a212f6c1b1f">CImg</a> 251.218 +<li>round() 251.219 +: <a class="el" href="structcimg__library_1_1CImg.html#3619f9d2043ebaa67d21eb373ab4d22e">CImg</a> 251.220 +</ul> 251.221 +</div> 251.222 +<hr noshade="noshade" size="1" width="100%"> 251.223 +<a href="http://sourceforge.net"> 251.224 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 251.225 +</a> 251.226 +<!-- Start of StatCounter Code --> 251.227 +<script type="text/javascript" language="javascript"> 251.228 +<!-- 251.229 +var sc_project=895001; 251.230 +var sc_invisible=1; 251.231 +var sc_partition=7; 251.232 +var sc_security="5ea85181"; 251.233 +//--> 251.234 +</script> 251.235 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 251.236 +<!-- End of StatCounter Code --> 251.237 +</body> 251.238 +</html>
252.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 252.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x73.html Mon Aug 03 14:09:20 2009 +0100 252.3 @@ -0,0 +1,308 @@ 252.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 252.5 +<head> 252.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 252.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 252.8 +<meta content="David Tschumperle" name="author"></meta> 252.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 252.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 252.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 252.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 252.13 +<style type="text/css"> 252.14 +<!-- 252.15 +body {background-color:white; font-family:sans-serif; } 252.16 +a:active{text-decoration:none; color:#303090} 252.17 +a:link{text-decoration:none; color:#303090} 252.18 +a:visited{text-decoration:none; color:#303090} 252.19 +a:hover{text-decoration:underline; color:#4E9F71} 252.20 +--> 252.21 +</style> 252.22 +<script language="JavaScript" type="text/javascript"> 252.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 252.24 + <!-- Web Site: http://redrival.com/eak/ --> 252.25 + <!-- This script and many more are available free online at --> 252.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 252.27 + <!-- Begin 252.28 + function NewWindow(mypage, myname, w, h, scroll) { 252.29 + var winl = (screen.width - w) / 2; 252.30 + var wint = (screen.height - h) / 2; 252.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 252.32 + win = window.open(mypage, myname, winprops) 252.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 252.34 + } 252.35 + // End --> 252.36 +</script> 252.37 +</head> 252.38 +<body> 252.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 252.40 + <tbody><tr><td> 252.41 + <hr noshade="noshade" size="1" width="90%"></hr> 252.42 + <center> 252.43 + <br/> 252.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 252.45 + <br/> 252.46 + </center> 252.47 + <hr noshade="noshade" size="1" width="90%"></hr> 252.48 + <center> 252.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 252.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 252.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 252.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 252.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 252.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 252.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 252.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 252.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 252.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 252.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 252.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 252.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 252.62 + </font> 252.63 + </td></tr></tbody> 252.64 + </table> 252.65 + </center> 252.66 + <hr noshade="noshade" size="1" width="90%"></hr> 252.67 + </td></tr></tbody> 252.68 +</table> 252.69 +<!-- Generated by Doxygen 1.5.7.1 --> 252.70 +<script type="text/javascript"> 252.71 +<!-- 252.72 +function changeDisplayState (e){ 252.73 + var num=this.id.replace(/[^[0-9]/g,''); 252.74 + var button=this.firstChild; 252.75 + var sectionDiv=document.getElementById('dynsection'+num); 252.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 252.77 + sectionDiv.style.display='block'; 252.78 + button.src='open.gif'; 252.79 + }else{ 252.80 + sectionDiv.style.display='none'; 252.81 + button.src='closed.gif'; 252.82 + } 252.83 +} 252.84 +function initDynSections(){ 252.85 + var divs=document.getElementsByTagName('div'); 252.86 + var sectionCounter=1; 252.87 + for(var i=0;i<divs.length-1;i++){ 252.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 252.89 + var header=divs[i]; 252.90 + var section=divs[i+1]; 252.91 + var button=header.firstChild; 252.92 + if (button!='IMG'){ 252.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 252.94 + button=document.createElement('img'); 252.95 + divs[i].insertBefore(button,divs[i].firstChild); 252.96 + } 252.97 + header.style.cursor='pointer'; 252.98 + header.onclick=changeDisplayState; 252.99 + header.id='dynheader'+sectionCounter; 252.100 + button.src='closed.gif'; 252.101 + section.id='dynsection'+sectionCounter; 252.102 + section.style.display='none'; 252.103 + section.style.marginLeft='14px'; 252.104 + sectionCounter++; 252.105 + } 252.106 + } 252.107 +} 252.108 +window.onload = initDynSections; 252.109 +--> 252.110 +</script> 252.111 +<div class="navigation" id="top"> 252.112 + <div class="tabs"> 252.113 + <ul> 252.114 + <li><a href="index.html"><span>Main Page</span></a></li> 252.115 + <li><a href="modules.html"><span>Modules</span></a></li> 252.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 252.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 252.118 + </ul> 252.119 + </div> 252.120 + <div class="tabs"> 252.121 + <ul> 252.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 252.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 252.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 252.125 + </ul> 252.126 + </div> 252.127 + <div class="tabs"> 252.128 + <ul> 252.129 + <li><a href="functions.html"><span>All</span></a></li> 252.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 252.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 252.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 252.133 + </ul> 252.134 + </div> 252.135 + <div class="tabs"> 252.136 + <ul> 252.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 252.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 252.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 252.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 252.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 252.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 252.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 252.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 252.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 252.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 252.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 252.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 252.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 252.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 252.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 252.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 252.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 252.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 252.155 + <li class="current"><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 252.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 252.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 252.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 252.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 252.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 252.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 252.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 252.163 + </ul> 252.164 + </div> 252.165 +</div> 252.166 +<div class="contents"> 252.167 + 252.168 +<p> 252.169 +<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 252.170 +<li>save() 252.171 +: <a class="el" href="structcimg__library_1_1CImg.html#4fd91f4fb021d20c5b62329c49733bd9">CImg</a> 252.172 +, <a class="el" href="structcimg__library_1_1CImgList.html#814fe09c21090e7673d96c6145fc64bf">CImgList</a> 252.173 +<li>save_analyze() 252.174 +: <a class="el" href="structcimg__library_1_1CImg.html#469c8bebf15e1247b789b35b79ea1537">CImg</a> 252.175 +<li>save_ascii() 252.176 +: <a class="el" href="structcimg__library_1_1CImg.html#6039799358c3fe91fe6e828d3433db2f">CImg</a> 252.177 +<li>save_bmp() 252.178 +: <a class="el" href="structcimg__library_1_1CImg.html#2f8e01d96cddfa3c0d0d2dc9d86745ac">CImg</a> 252.179 +<li>save_cimg() 252.180 +: <a class="el" href="structcimg__library_1_1CImg.html#a38a0a34134e90d18a5637ee61121898">CImg</a> 252.181 +, <a class="el" href="structcimg__library_1_1CImgList.html#9f48d7b0d887db4f92ad558abe5eeb60">CImgList</a> 252.182 +<li>save_cpp() 252.183 +: <a class="el" href="structcimg__library_1_1CImg.html#37f7909910f00164decfa2705bdd1f2c">CImg</a> 252.184 +<li>save_dlm() 252.185 +: <a class="el" href="structcimg__library_1_1CImg.html#e2c4bfc725e65a27f7f21e74b6da319d">CImg</a> 252.186 +<li>save_empty_cimg() 252.187 +: <a class="el" href="structcimg__library_1_1CImg.html#514edc69c74a31e32f36d3731cbf9503">CImg</a> 252.188 +, <a class="el" href="structcimg__library_1_1CImgList.html#fb44ea999d4ca96e7706a7ad8154724b">CImgList</a> 252.189 +<li>save_ffmpeg() 252.190 +: <a class="el" href="structcimg__library_1_1CImg.html#5dc466b5a9fd09f386fb4c029122e123">CImg</a> 252.191 +, <a class="el" href="structcimg__library_1_1CImgList.html#08addbada69513e00079ff437b669138">CImgList</a> 252.192 +<li>save_ffmpeg_external() 252.193 +: <a class="el" href="structcimg__library_1_1CImg.html#6cb891a0f13a1498bf2279568d9c89ef">CImg</a> 252.194 +, <a class="el" href="structcimg__library_1_1CImgList.html#3b4ad0233afe8d38700bb1d0d0dc6ecc">CImgList</a> 252.195 +<li>save_graphicsmagick_external() 252.196 +: <a class="el" href="structcimg__library_1_1CImg.html#fdab21cdc4ef778bfaf4e123b28c9aa0">CImg</a> 252.197 +<li>save_gzip_external() 252.198 +: <a class="el" href="structcimg__library_1_1CImg.html#882ef6fb0c2487da8598e36c45b8eeab">CImg</a> 252.199 +, <a class="el" href="structcimg__library_1_1CImgList.html#e9d11f1d698df3ffe1ef4a9ede594e1e">CImgList</a> 252.200 +<li>save_imagemagick_external() 252.201 +: <a class="el" href="structcimg__library_1_1CImg.html#b0ff4f35fc74d40fda4893b7e2fdbe7b">CImg</a> 252.202 +<li>save_inr() 252.203 +: <a class="el" href="structcimg__library_1_1CImg.html#01dc6718c3ab4f86568db6cb88229338">CImg</a> 252.204 +<li>save_jpeg() 252.205 +: <a class="el" href="structcimg__library_1_1CImg.html#26ff26d1b1ce8dd8b221d13cc50434e2">CImg</a> 252.206 +<li>save_magick() 252.207 +: <a class="el" href="structcimg__library_1_1CImg.html#49b8355073ca645ba69af38324ecda6c">CImg</a> 252.208 +<li>save_medcon_external() 252.209 +: <a class="el" href="structcimg__library_1_1CImg.html#f3608edc3098e7c850c69cd347d4f9e8">CImg</a> 252.210 +<li>save_off() 252.211 +: <a class="el" href="structcimg__library_1_1CImg.html#8026d89fd3dd2f58eff90ba7418633c9">CImg</a> 252.212 +, <a class="el" href="structcimg__library_1_1CImgList.html#b46dd49d74b8143ef7229b75a7ab5b7c">CImgList</a> 252.213 +<li>save_pandore() 252.214 +: <a class="el" href="structcimg__library_1_1CImg.html#c651db37bf02a8558de8052b2a1fe1a9">CImg</a> 252.215 +<li>save_png() 252.216 +: <a class="el" href="structcimg__library_1_1CImg.html#739a8b4eb3d419cf4a5ec19c1715d6c3">CImg</a> 252.217 +<li>save_pnm() 252.218 +: <a class="el" href="structcimg__library_1_1CImg.html#fd8323ac951c92f565eff819073b7973">CImg</a> 252.219 +<li>save_raw() 252.220 +: <a class="el" href="structcimg__library_1_1CImg.html#40a4739e731f2ebba21beb1d1541e69f">CImg</a> 252.221 +<li>save_rgb() 252.222 +: <a class="el" href="structcimg__library_1_1CImg.html#aeff8cd6ea1e998a0bf905dd9c706123">CImg</a> 252.223 +<li>save_rgba() 252.224 +: <a class="el" href="structcimg__library_1_1CImg.html#9a794b3b53e9e1bf8d5d6b0e1b97bc26">CImg</a> 252.225 +<li>save_tiff() 252.226 +: <a class="el" href="structcimg__library_1_1CImg.html#c6d72526b5d249df6148680b3521b26d">CImg</a> 252.227 +<li>save_yuv() 252.228 +: <a class="el" href="structcimg__library_1_1CImg.html#374b35cac6e32b43479ae62d48366173">CImg</a> 252.229 +, <a class="el" href="structcimg__library_1_1CImgList.html#09200f3c4abcfa6572ff2686731c87b7">CImgList</a> 252.230 +<li>screen_dimx() 252.231 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#0fc1bfce258738698d77e0e5690a3d6d">CImgDisplay</a> 252.232 +<li>screen_dimy() 252.233 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fc1eab600c6dd77bdbde330fcd27d396">CImgDisplay</a> 252.234 +<li>select() 252.235 +: <a class="el" href="structcimg__library_1_1CImg.html#0a8ac68afbfb317c60b7554f5cdcbbd5">CImg</a> 252.236 +<li>sequence() 252.237 +: <a class="el" href="structcimg__library_1_1CImg.html#f3adb54a3f492f7701a1feac9a6954aa">CImg</a> 252.238 +<li>set_linear_atXY() 252.239 +: <a class="el" href="structcimg__library_1_1CImg.html#59a194a8079b3241131773fa724ee1c5">CImg</a> 252.240 +<li>set_linear_atXYZ() 252.241 +: <a class="el" href="structcimg__library_1_1CImg.html#776849281c40a0a9042b7275c4622e70">CImg</a> 252.242 +<li>set_matrix_at() 252.243 +: <a class="el" href="structcimg__library_1_1CImg.html#e0e585d6280147aabd19c398819040d9">CImg</a> 252.244 +<li>set_mouse() 252.245 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#00e5afcd819ab639a6a95b8e39af824c">CImgDisplay</a> 252.246 +<li>set_tensor_at() 252.247 +: <a class="el" href="structcimg__library_1_1CImg.html#f390fdfa10bc133864a83b101d934284">CImg</a> 252.248 +<li>set_title() 252.249 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#efd7d79af3da7a61a204ef902e6f0512">CImgDisplay</a> 252.250 +<li>set_vector_at() 252.251 +: <a class="el" href="structcimg__library_1_1CImg.html#83c90e27cc58a73da616813898327966">CImg</a> 252.252 +<li>sharpen() 252.253 +: <a class="el" href="structcimg__library_1_1CImg.html#4ecd4ea634e87995ef1d309b8ffe91de">CImg</a> 252.254 +<li>show() 252.255 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#1b27a2a375509146444ab06b2f7b8851">CImgDisplay</a> 252.256 +<li>show_mouse() 252.257 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#9fc997c0451ce75666f1bdfe45eb0343">CImgDisplay</a> 252.258 +<li>sin() 252.259 +: <a class="el" href="structcimg__library_1_1CImg.html#cc4f6c8febaeecd694d43645c527888c">CImg</a> 252.260 +<li>size() 252.261 +: <a class="el" href="structcimg__library_1_1CImg.html#3e13243636f944bad8351324f2910e2b">CImg</a> 252.262 +<li>slice() 252.263 +: <a class="el" href="structcimg__library_1_1CImg.html#865128dbd1524185b74ddb8ddf30e362">CImg</a> 252.264 +<li>slices() 252.265 +: <a class="el" href="structcimg__library_1_1CImg.html#f7121006079849bc3c0c165bbe9c3a2d">CImg</a> 252.266 +<li>snapshot() 252.267 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4b97d4d8b8c293cbf540ba06596ded54">CImgDisplay</a> 252.268 +<li>solve() 252.269 +: <a class="el" href="structcimg__library_1_1CImg.html#595ac87408ea46f103791933e3dfd187">CImg</a> 252.270 +<li>solve_tridiagonal() 252.271 +: <a class="el" href="structcimg__library_1_1CImg.html#2c1c7ca0a47cced1f705ee58c3d37a3e">CImg</a> 252.272 +<li>sort() 252.273 +: <a class="el" href="structcimg__library_1_1CImg.html#44ae8948547aa53345e5dcda7e6b7dc7">CImg</a> 252.274 +<li>sphere3d() 252.275 +: <a class="el" href="structcimg__library_1_1CImg.html#612264fd3b4223e6ecf99b05a6e220cd">CImg</a> 252.276 +<li>sqr() 252.277 +: <a class="el" href="structcimg__library_1_1CImg.html#19ebb696e513b9246864e5b0cdd884f5">CImg</a> 252.278 +<li>sqrt() 252.279 +: <a class="el" href="structcimg__library_1_1CImg.html#8c11d16e75e931e9e28d44171e7038d3">CImg</a> 252.280 +<li>stats() 252.281 +: <a class="el" href="structcimg__library_1_1CImg.html#af59bb4a64bfcba6082253a48a88c9d6">CImg</a> 252.282 +<li>structure_tensor() 252.283 +: <a class="el" href="structcimg__library_1_1CImg.html#edf6587b65261c0d4eb75bb2ed7d92ae">CImg</a> 252.284 +<li>sum() 252.285 +: <a class="el" href="structcimg__library_1_1CImg.html#77d222b4837c78aad604f3f0b5f1409c">CImg</a> 252.286 +<li>SVD() 252.287 +: <a class="el" href="structcimg__library_1_1CImg.html#d0855328aefbaa69e106fcf107d3d108">CImg</a> 252.288 +<li>swap() 252.289 +: <a class="el" href="structcimg__library_1_1CImg.html#4e00c35b15007593513f64c7ee7fb7f7">CImg</a> 252.290 +, <a class="el" href="structcimg__library_1_1CImgList.html#6c12806e432683b06fbc8919daa0a3d7">CImgList</a> 252.291 +<li>symmetric_eigen() 252.292 +: <a class="el" href="structcimg__library_1_1CImg.html#fddd851f2413d27929b21f9492f3bfbe">CImg</a> 252.293 +</ul> 252.294 +</div> 252.295 +<hr noshade="noshade" size="1" width="100%"> 252.296 +<a href="http://sourceforge.net"> 252.297 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 252.298 +</a> 252.299 +<!-- Start of StatCounter Code --> 252.300 +<script type="text/javascript" language="javascript"> 252.301 +<!-- 252.302 +var sc_project=895001; 252.303 +var sc_invisible=1; 252.304 +var sc_partition=7; 252.305 +var sc_security="5ea85181"; 252.306 +//--> 252.307 +</script> 252.308 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 252.309 +<!-- End of StatCounter Code --> 252.310 +</body> 252.311 +</html>
253.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 253.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x74.html Mon Aug 03 14:09:20 2009 +0100 253.3 @@ -0,0 +1,206 @@ 253.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 253.5 +<head> 253.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 253.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 253.8 +<meta content="David Tschumperle" name="author"></meta> 253.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 253.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 253.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 253.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 253.13 +<style type="text/css"> 253.14 +<!-- 253.15 +body {background-color:white; font-family:sans-serif; } 253.16 +a:active{text-decoration:none; color:#303090} 253.17 +a:link{text-decoration:none; color:#303090} 253.18 +a:visited{text-decoration:none; color:#303090} 253.19 +a:hover{text-decoration:underline; color:#4E9F71} 253.20 +--> 253.21 +</style> 253.22 +<script language="JavaScript" type="text/javascript"> 253.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 253.24 + <!-- Web Site: http://redrival.com/eak/ --> 253.25 + <!-- This script and many more are available free online at --> 253.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 253.27 + <!-- Begin 253.28 + function NewWindow(mypage, myname, w, h, scroll) { 253.29 + var winl = (screen.width - w) / 2; 253.30 + var wint = (screen.height - h) / 2; 253.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 253.32 + win = window.open(mypage, myname, winprops) 253.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 253.34 + } 253.35 + // End --> 253.36 +</script> 253.37 +</head> 253.38 +<body> 253.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 253.40 + <tbody><tr><td> 253.41 + <hr noshade="noshade" size="1" width="90%"></hr> 253.42 + <center> 253.43 + <br/> 253.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 253.45 + <br/> 253.46 + </center> 253.47 + <hr noshade="noshade" size="1" width="90%"></hr> 253.48 + <center> 253.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 253.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 253.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 253.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 253.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 253.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 253.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 253.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 253.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 253.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 253.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 253.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 253.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 253.62 + </font> 253.63 + </td></tr></tbody> 253.64 + </table> 253.65 + </center> 253.66 + <hr noshade="noshade" size="1" width="90%"></hr> 253.67 + </td></tr></tbody> 253.68 +</table> 253.69 +<!-- Generated by Doxygen 1.5.7.1 --> 253.70 +<script type="text/javascript"> 253.71 +<!-- 253.72 +function changeDisplayState (e){ 253.73 + var num=this.id.replace(/[^[0-9]/g,''); 253.74 + var button=this.firstChild; 253.75 + var sectionDiv=document.getElementById('dynsection'+num); 253.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 253.77 + sectionDiv.style.display='block'; 253.78 + button.src='open.gif'; 253.79 + }else{ 253.80 + sectionDiv.style.display='none'; 253.81 + button.src='closed.gif'; 253.82 + } 253.83 +} 253.84 +function initDynSections(){ 253.85 + var divs=document.getElementsByTagName('div'); 253.86 + var sectionCounter=1; 253.87 + for(var i=0;i<divs.length-1;i++){ 253.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 253.89 + var header=divs[i]; 253.90 + var section=divs[i+1]; 253.91 + var button=header.firstChild; 253.92 + if (button!='IMG'){ 253.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 253.94 + button=document.createElement('img'); 253.95 + divs[i].insertBefore(button,divs[i].firstChild); 253.96 + } 253.97 + header.style.cursor='pointer'; 253.98 + header.onclick=changeDisplayState; 253.99 + header.id='dynheader'+sectionCounter; 253.100 + button.src='closed.gif'; 253.101 + section.id='dynsection'+sectionCounter; 253.102 + section.style.display='none'; 253.103 + section.style.marginLeft='14px'; 253.104 + sectionCounter++; 253.105 + } 253.106 + } 253.107 +} 253.108 +window.onload = initDynSections; 253.109 +--> 253.110 +</script> 253.111 +<div class="navigation" id="top"> 253.112 + <div class="tabs"> 253.113 + <ul> 253.114 + <li><a href="index.html"><span>Main Page</span></a></li> 253.115 + <li><a href="modules.html"><span>Modules</span></a></li> 253.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 253.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 253.118 + </ul> 253.119 + </div> 253.120 + <div class="tabs"> 253.121 + <ul> 253.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 253.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 253.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 253.125 + </ul> 253.126 + </div> 253.127 + <div class="tabs"> 253.128 + <ul> 253.129 + <li><a href="functions.html"><span>All</span></a></li> 253.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 253.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 253.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 253.133 + </ul> 253.134 + </div> 253.135 + <div class="tabs"> 253.136 + <ul> 253.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 253.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 253.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 253.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 253.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 253.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 253.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 253.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 253.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 253.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 253.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 253.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 253.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 253.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 253.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 253.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 253.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 253.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 253.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 253.156 + <li class="current"><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 253.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 253.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 253.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 253.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 253.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 253.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 253.163 + </ul> 253.164 + </div> 253.165 +</div> 253.166 +<div class="contents"> 253.167 + 253.168 +<p> 253.169 +<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 253.170 +<li>tan() 253.171 +: <a class="el" href="structcimg__library_1_1CImg.html#8bd7410cfef580410cfb9d6702a56149">CImg</a> 253.172 +<li>tensor() 253.173 +: <a class="el" href="structcimg__library_1_1CImg.html#d51e031c3ff9afc1c1f5587e770ff382">CImg</a> 253.174 +<li>threshold() 253.175 +: <a class="el" href="structcimg__library_1_1CImg.html#411ae06f4b7a9281dbe7ae608e5dadee">CImg</a> 253.176 +<li>toggle_fullscreen() 253.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#62d224a7c18d3091eb0d56e1bc8c36fe">CImgDisplay</a> 253.178 +<li>torus3d() 253.179 +: <a class="el" href="structcimg__library_1_1CImg.html#fe12f532a1faf7ba4dbdd32297cdbe6e">CImg</a> 253.180 +<li>trace() 253.181 +: <a class="el" href="structcimg__library_1_1CImg.html#a5725c18e3adcb9fda07885b076ee971">CImg</a> 253.182 +<li>transfer_to() 253.183 +: <a class="el" href="structcimg__library_1_1CImg.html#b3b0efc40be1da20da1fbddfad758568">CImg</a> 253.184 +, <a class="el" href="structcimg__library_1_1CImgList.html#ceb0faa44647370b3fe679edad1eec36">CImgList</a> 253.185 +<li>translate() 253.186 +: <a class="el" href="structcimg__library_1_1CImg.html#32ca7979d4a8792f7274ab07b8b80fdd">CImg</a> 253.187 +<li>translate_object3d() 253.188 +: <a class="el" href="structcimg__library_1_1CImg.html#ec75e25883a9e1068aaa93162b969aba">CImg</a> 253.189 +<li>transpose() 253.190 +: <a class="el" href="structcimg__library_1_1CImg.html#49f00018eac2d649fa10c8a25c31c0df">CImg</a> 253.191 +</ul> 253.192 +</div> 253.193 +<hr noshade="noshade" size="1" width="100%"> 253.194 +<a href="http://sourceforge.net"> 253.195 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 253.196 +</a> 253.197 +<!-- Start of StatCounter Code --> 253.198 +<script type="text/javascript" language="javascript"> 253.199 +<!-- 253.200 +var sc_project=895001; 253.201 +var sc_invisible=1; 253.202 +var sc_partition=7; 253.203 +var sc_security="5ea85181"; 253.204 +//--> 253.205 +</script> 253.206 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 253.207 +<!-- End of StatCounter Code --> 253.208 +</body> 253.209 +</html>
254.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 254.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x75.html Mon Aug 03 14:09:20 2009 +0100 254.3 @@ -0,0 +1,187 @@ 254.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 254.5 +<head> 254.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 254.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 254.8 +<meta content="David Tschumperle" name="author"></meta> 254.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 254.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 254.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 254.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 254.13 +<style type="text/css"> 254.14 +<!-- 254.15 +body {background-color:white; font-family:sans-serif; } 254.16 +a:active{text-decoration:none; color:#303090} 254.17 +a:link{text-decoration:none; color:#303090} 254.18 +a:visited{text-decoration:none; color:#303090} 254.19 +a:hover{text-decoration:underline; color:#4E9F71} 254.20 +--> 254.21 +</style> 254.22 +<script language="JavaScript" type="text/javascript"> 254.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 254.24 + <!-- Web Site: http://redrival.com/eak/ --> 254.25 + <!-- This script and many more are available free online at --> 254.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 254.27 + <!-- Begin 254.28 + function NewWindow(mypage, myname, w, h, scroll) { 254.29 + var winl = (screen.width - w) / 2; 254.30 + var wint = (screen.height - h) / 2; 254.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 254.32 + win = window.open(mypage, myname, winprops) 254.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 254.34 + } 254.35 + // End --> 254.36 +</script> 254.37 +</head> 254.38 +<body> 254.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 254.40 + <tbody><tr><td> 254.41 + <hr noshade="noshade" size="1" width="90%"></hr> 254.42 + <center> 254.43 + <br/> 254.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 254.45 + <br/> 254.46 + </center> 254.47 + <hr noshade="noshade" size="1" width="90%"></hr> 254.48 + <center> 254.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 254.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 254.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 254.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 254.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 254.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 254.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 254.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 254.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 254.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 254.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 254.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 254.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 254.62 + </font> 254.63 + </td></tr></tbody> 254.64 + </table> 254.65 + </center> 254.66 + <hr noshade="noshade" size="1" width="90%"></hr> 254.67 + </td></tr></tbody> 254.68 +</table> 254.69 +<!-- Generated by Doxygen 1.5.7.1 --> 254.70 +<script type="text/javascript"> 254.71 +<!-- 254.72 +function changeDisplayState (e){ 254.73 + var num=this.id.replace(/[^[0-9]/g,''); 254.74 + var button=this.firstChild; 254.75 + var sectionDiv=document.getElementById('dynsection'+num); 254.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 254.77 + sectionDiv.style.display='block'; 254.78 + button.src='open.gif'; 254.79 + }else{ 254.80 + sectionDiv.style.display='none'; 254.81 + button.src='closed.gif'; 254.82 + } 254.83 +} 254.84 +function initDynSections(){ 254.85 + var divs=document.getElementsByTagName('div'); 254.86 + var sectionCounter=1; 254.87 + for(var i=0;i<divs.length-1;i++){ 254.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 254.89 + var header=divs[i]; 254.90 + var section=divs[i+1]; 254.91 + var button=header.firstChild; 254.92 + if (button!='IMG'){ 254.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 254.94 + button=document.createElement('img'); 254.95 + divs[i].insertBefore(button,divs[i].firstChild); 254.96 + } 254.97 + header.style.cursor='pointer'; 254.98 + header.onclick=changeDisplayState; 254.99 + header.id='dynheader'+sectionCounter; 254.100 + button.src='closed.gif'; 254.101 + section.id='dynsection'+sectionCounter; 254.102 + section.style.display='none'; 254.103 + section.style.marginLeft='14px'; 254.104 + sectionCounter++; 254.105 + } 254.106 + } 254.107 +} 254.108 +window.onload = initDynSections; 254.109 +--> 254.110 +</script> 254.111 +<div class="navigation" id="top"> 254.112 + <div class="tabs"> 254.113 + <ul> 254.114 + <li><a href="index.html"><span>Main Page</span></a></li> 254.115 + <li><a href="modules.html"><span>Modules</span></a></li> 254.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 254.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 254.118 + </ul> 254.119 + </div> 254.120 + <div class="tabs"> 254.121 + <ul> 254.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 254.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 254.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 254.125 + </ul> 254.126 + </div> 254.127 + <div class="tabs"> 254.128 + <ul> 254.129 + <li><a href="functions.html"><span>All</span></a></li> 254.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 254.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 254.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 254.133 + </ul> 254.134 + </div> 254.135 + <div class="tabs"> 254.136 + <ul> 254.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 254.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 254.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 254.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 254.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 254.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 254.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 254.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 254.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 254.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 254.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 254.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 254.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 254.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 254.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 254.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 254.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 254.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 254.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 254.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 254.157 + <li class="current"><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 254.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 254.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 254.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 254.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 254.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 254.163 + </ul> 254.164 + </div> 254.165 +</div> 254.166 +<div class="contents"> 254.167 + 254.168 +<p> 254.169 +<h3><a class="anchor" name="index_u">- u -</a></h3><ul> 254.170 +<li>unroll() 254.171 +: <a class="el" href="structcimg__library_1_1CImg.html#6f2a337d1eb6c94217167dd9296890f3">CImg</a> 254.172 +</ul> 254.173 +</div> 254.174 +<hr noshade="noshade" size="1" width="100%"> 254.175 +<a href="http://sourceforge.net"> 254.176 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 254.177 +</a> 254.178 +<!-- Start of StatCounter Code --> 254.179 +<script type="text/javascript" language="javascript"> 254.180 +<!-- 254.181 +var sc_project=895001; 254.182 +var sc_invisible=1; 254.183 +var sc_partition=7; 254.184 +var sc_security="5ea85181"; 254.185 +//--> 254.186 +</script> 254.187 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 254.188 +<!-- End of StatCounter Code --> 254.189 +</body> 254.190 +</html>
255.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 255.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x76.html Mon Aug 03 14:09:20 2009 +0100 255.3 @@ -0,0 +1,193 @@ 255.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 255.5 +<head> 255.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 255.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 255.8 +<meta content="David Tschumperle" name="author"></meta> 255.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 255.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 255.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 255.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 255.13 +<style type="text/css"> 255.14 +<!-- 255.15 +body {background-color:white; font-family:sans-serif; } 255.16 +a:active{text-decoration:none; color:#303090} 255.17 +a:link{text-decoration:none; color:#303090} 255.18 +a:visited{text-decoration:none; color:#303090} 255.19 +a:hover{text-decoration:underline; color:#4E9F71} 255.20 +--> 255.21 +</style> 255.22 +<script language="JavaScript" type="text/javascript"> 255.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 255.24 + <!-- Web Site: http://redrival.com/eak/ --> 255.25 + <!-- This script and many more are available free online at --> 255.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 255.27 + <!-- Begin 255.28 + function NewWindow(mypage, myname, w, h, scroll) { 255.29 + var winl = (screen.width - w) / 2; 255.30 + var wint = (screen.height - h) / 2; 255.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 255.32 + win = window.open(mypage, myname, winprops) 255.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 255.34 + } 255.35 + // End --> 255.36 +</script> 255.37 +</head> 255.38 +<body> 255.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 255.40 + <tbody><tr><td> 255.41 + <hr noshade="noshade" size="1" width="90%"></hr> 255.42 + <center> 255.43 + <br/> 255.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 255.45 + <br/> 255.46 + </center> 255.47 + <hr noshade="noshade" size="1" width="90%"></hr> 255.48 + <center> 255.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 255.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 255.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 255.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 255.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 255.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 255.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 255.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 255.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 255.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 255.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 255.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 255.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 255.62 + </font> 255.63 + </td></tr></tbody> 255.64 + </table> 255.65 + </center> 255.66 + <hr noshade="noshade" size="1" width="90%"></hr> 255.67 + </td></tr></tbody> 255.68 +</table> 255.69 +<!-- Generated by Doxygen 1.5.7.1 --> 255.70 +<script type="text/javascript"> 255.71 +<!-- 255.72 +function changeDisplayState (e){ 255.73 + var num=this.id.replace(/[^[0-9]/g,''); 255.74 + var button=this.firstChild; 255.75 + var sectionDiv=document.getElementById('dynsection'+num); 255.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 255.77 + sectionDiv.style.display='block'; 255.78 + button.src='open.gif'; 255.79 + }else{ 255.80 + sectionDiv.style.display='none'; 255.81 + button.src='closed.gif'; 255.82 + } 255.83 +} 255.84 +function initDynSections(){ 255.85 + var divs=document.getElementsByTagName('div'); 255.86 + var sectionCounter=1; 255.87 + for(var i=0;i<divs.length-1;i++){ 255.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 255.89 + var header=divs[i]; 255.90 + var section=divs[i+1]; 255.91 + var button=header.firstChild; 255.92 + if (button!='IMG'){ 255.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 255.94 + button=document.createElement('img'); 255.95 + divs[i].insertBefore(button,divs[i].firstChild); 255.96 + } 255.97 + header.style.cursor='pointer'; 255.98 + header.onclick=changeDisplayState; 255.99 + header.id='dynheader'+sectionCounter; 255.100 + button.src='closed.gif'; 255.101 + section.id='dynsection'+sectionCounter; 255.102 + section.style.display='none'; 255.103 + section.style.marginLeft='14px'; 255.104 + sectionCounter++; 255.105 + } 255.106 + } 255.107 +} 255.108 +window.onload = initDynSections; 255.109 +--> 255.110 +</script> 255.111 +<div class="navigation" id="top"> 255.112 + <div class="tabs"> 255.113 + <ul> 255.114 + <li><a href="index.html"><span>Main Page</span></a></li> 255.115 + <li><a href="modules.html"><span>Modules</span></a></li> 255.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 255.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 255.118 + </ul> 255.119 + </div> 255.120 + <div class="tabs"> 255.121 + <ul> 255.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 255.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 255.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 255.125 + </ul> 255.126 + </div> 255.127 + <div class="tabs"> 255.128 + <ul> 255.129 + <li><a href="functions.html"><span>All</span></a></li> 255.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 255.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 255.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 255.133 + </ul> 255.134 + </div> 255.135 + <div class="tabs"> 255.136 + <ul> 255.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 255.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 255.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 255.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 255.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 255.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 255.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 255.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 255.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 255.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 255.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 255.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 255.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 255.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 255.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 255.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 255.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 255.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 255.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 255.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 255.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 255.158 + <li class="current"><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 255.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 255.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 255.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 255.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 255.163 + </ul> 255.164 + </div> 255.165 +</div> 255.166 +<div class="contents"> 255.167 + 255.168 +<p> 255.169 +<h3><a class="anchor" name="index_v">- v -</a></h3><ul> 255.170 +<li>value_string() 255.171 +: <a class="el" href="structcimg__library_1_1CImg.html#2d70c422e3e75e6cd810358486387300">CImg</a> 255.172 +<li>variance() 255.173 +: <a class="el" href="structcimg__library_1_1CImg.html#641a93939e495eec1749bb68197996ac">CImg</a> 255.174 +<li>variancemean() 255.175 +: <a class="el" href="structcimg__library_1_1CImg.html#42b5c7baa4cd8ce360cea44a4e013753">CImg</a> 255.176 +<li>vector() 255.177 +: <a class="el" href="structcimg__library_1_1CImg.html#4a45f8df1eae94f9e3225052f9abca1b">CImg</a> 255.178 +</ul> 255.179 +</div> 255.180 +<hr noshade="noshade" size="1" width="100%"> 255.181 +<a href="http://sourceforge.net"> 255.182 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 255.183 +</a> 255.184 +<!-- Start of StatCounter Code --> 255.185 +<script type="text/javascript" language="javascript"> 255.186 +<!-- 255.187 +var sc_project=895001; 255.188 +var sc_invisible=1; 255.189 +var sc_partition=7; 255.190 +var sc_security="5ea85181"; 255.191 +//--> 255.192 +</script> 255.193 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 255.194 +<!-- End of StatCounter Code --> 255.195 +</body> 255.196 +</html>
256.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 256.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x77.html Mon Aug 03 14:09:20 2009 +0100 256.3 @@ -0,0 +1,197 @@ 256.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 256.5 +<head> 256.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 256.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 256.8 +<meta content="David Tschumperle" name="author"></meta> 256.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 256.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 256.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 256.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 256.13 +<style type="text/css"> 256.14 +<!-- 256.15 +body {background-color:white; font-family:sans-serif; } 256.16 +a:active{text-decoration:none; color:#303090} 256.17 +a:link{text-decoration:none; color:#303090} 256.18 +a:visited{text-decoration:none; color:#303090} 256.19 +a:hover{text-decoration:underline; color:#4E9F71} 256.20 +--> 256.21 +</style> 256.22 +<script language="JavaScript" type="text/javascript"> 256.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 256.24 + <!-- Web Site: http://redrival.com/eak/ --> 256.25 + <!-- This script and many more are available free online at --> 256.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 256.27 + <!-- Begin 256.28 + function NewWindow(mypage, myname, w, h, scroll) { 256.29 + var winl = (screen.width - w) / 2; 256.30 + var wint = (screen.height - h) / 2; 256.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 256.32 + win = window.open(mypage, myname, winprops) 256.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 256.34 + } 256.35 + // End --> 256.36 +</script> 256.37 +</head> 256.38 +<body> 256.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 256.40 + <tbody><tr><td> 256.41 + <hr noshade="noshade" size="1" width="90%"></hr> 256.42 + <center> 256.43 + <br/> 256.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 256.45 + <br/> 256.46 + </center> 256.47 + <hr noshade="noshade" size="1" width="90%"></hr> 256.48 + <center> 256.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 256.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 256.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 256.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 256.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 256.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 256.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 256.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 256.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 256.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 256.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 256.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 256.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 256.62 + </font> 256.63 + </td></tr></tbody> 256.64 + </table> 256.65 + </center> 256.66 + <hr noshade="noshade" size="1" width="90%"></hr> 256.67 + </td></tr></tbody> 256.68 +</table> 256.69 +<!-- Generated by Doxygen 1.5.7.1 --> 256.70 +<script type="text/javascript"> 256.71 +<!-- 256.72 +function changeDisplayState (e){ 256.73 + var num=this.id.replace(/[^[0-9]/g,''); 256.74 + var button=this.firstChild; 256.75 + var sectionDiv=document.getElementById('dynsection'+num); 256.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 256.77 + sectionDiv.style.display='block'; 256.78 + button.src='open.gif'; 256.79 + }else{ 256.80 + sectionDiv.style.display='none'; 256.81 + button.src='closed.gif'; 256.82 + } 256.83 +} 256.84 +function initDynSections(){ 256.85 + var divs=document.getElementsByTagName('div'); 256.86 + var sectionCounter=1; 256.87 + for(var i=0;i<divs.length-1;i++){ 256.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 256.89 + var header=divs[i]; 256.90 + var section=divs[i+1]; 256.91 + var button=header.firstChild; 256.92 + if (button!='IMG'){ 256.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 256.94 + button=document.createElement('img'); 256.95 + divs[i].insertBefore(button,divs[i].firstChild); 256.96 + } 256.97 + header.style.cursor='pointer'; 256.98 + header.onclick=changeDisplayState; 256.99 + header.id='dynheader'+sectionCounter; 256.100 + button.src='closed.gif'; 256.101 + section.id='dynsection'+sectionCounter; 256.102 + section.style.display='none'; 256.103 + section.style.marginLeft='14px'; 256.104 + sectionCounter++; 256.105 + } 256.106 + } 256.107 +} 256.108 +window.onload = initDynSections; 256.109 +--> 256.110 +</script> 256.111 +<div class="navigation" id="top"> 256.112 + <div class="tabs"> 256.113 + <ul> 256.114 + <li><a href="index.html"><span>Main Page</span></a></li> 256.115 + <li><a href="modules.html"><span>Modules</span></a></li> 256.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 256.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 256.118 + </ul> 256.119 + </div> 256.120 + <div class="tabs"> 256.121 + <ul> 256.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 256.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 256.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 256.125 + </ul> 256.126 + </div> 256.127 + <div class="tabs"> 256.128 + <ul> 256.129 + <li><a href="functions.html"><span>All</span></a></li> 256.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 256.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 256.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 256.133 + </ul> 256.134 + </div> 256.135 + <div class="tabs"> 256.136 + <ul> 256.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 256.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 256.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 256.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 256.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 256.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 256.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 256.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 256.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 256.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 256.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 256.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 256.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 256.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 256.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 256.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 256.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 256.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 256.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 256.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 256.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 256.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 256.159 + <li class="current"><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 256.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 256.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 256.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 256.163 + </ul> 256.164 + </div> 256.165 +</div> 256.166 +<div class="contents"> 256.167 + 256.168 +<p> 256.169 +<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 256.170 +<li>wait() 256.171 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#79669a0b7bdc65aff8313c590c7faab0">CImgDisplay</a> 256.172 +<li>wait_all() 256.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#530c68e321d3adcb30fcefa06a25ca5b">CImgDisplay</a> 256.174 +<li>window_dimx() 256.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3e8dd30daac06fc499aa2aafad24cc4a">CImgDisplay</a> 256.176 +<li>window_dimy() 256.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e263957fbad39c2df4bd0c02d644e6b8">CImgDisplay</a> 256.178 +<li>window_posx() 256.179 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#f7fd9c19f4185b1af4cb8b9a4164256d">CImgDisplay</a> 256.180 +<li>window_posy() 256.181 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#ce6f24d60fd39cea4d578a3eb7568fef">CImgDisplay</a> 256.182 +</ul> 256.183 +</div> 256.184 +<hr noshade="noshade" size="1" width="100%"> 256.185 +<a href="http://sourceforge.net"> 256.186 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 256.187 +</a> 256.188 +<!-- Start of StatCounter Code --> 256.189 +<script type="text/javascript" language="javascript"> 256.190 +<!-- 256.191 +var sc_project=895001; 256.192 +var sc_invisible=1; 256.193 +var sc_partition=7; 256.194 +var sc_security="5ea85181"; 256.195 +//--> 256.196 +</script> 256.197 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 256.198 +<!-- End of StatCounter Code --> 256.199 +</body> 256.200 +</html>
257.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 257.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x78.html Mon Aug 03 14:09:20 2009 +0100 257.3 @@ -0,0 +1,195 @@ 257.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 257.5 +<head> 257.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 257.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 257.8 +<meta content="David Tschumperle" name="author"></meta> 257.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 257.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 257.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 257.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 257.13 +<style type="text/css"> 257.14 +<!-- 257.15 +body {background-color:white; font-family:sans-serif; } 257.16 +a:active{text-decoration:none; color:#303090} 257.17 +a:link{text-decoration:none; color:#303090} 257.18 +a:visited{text-decoration:none; color:#303090} 257.19 +a:hover{text-decoration:underline; color:#4E9F71} 257.20 +--> 257.21 +</style> 257.22 +<script language="JavaScript" type="text/javascript"> 257.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 257.24 + <!-- Web Site: http://redrival.com/eak/ --> 257.25 + <!-- This script and many more are available free online at --> 257.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 257.27 + <!-- Begin 257.28 + function NewWindow(mypage, myname, w, h, scroll) { 257.29 + var winl = (screen.width - w) / 2; 257.30 + var wint = (screen.height - h) / 2; 257.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 257.32 + win = window.open(mypage, myname, winprops) 257.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 257.34 + } 257.35 + // End --> 257.36 +</script> 257.37 +</head> 257.38 +<body> 257.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 257.40 + <tbody><tr><td> 257.41 + <hr noshade="noshade" size="1" width="90%"></hr> 257.42 + <center> 257.43 + <br/> 257.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 257.45 + <br/> 257.46 + </center> 257.47 + <hr noshade="noshade" size="1" width="90%"></hr> 257.48 + <center> 257.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 257.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 257.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 257.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 257.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 257.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 257.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 257.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 257.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 257.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 257.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 257.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 257.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 257.62 + </font> 257.63 + </td></tr></tbody> 257.64 + </table> 257.65 + </center> 257.66 + <hr noshade="noshade" size="1" width="90%"></hr> 257.67 + </td></tr></tbody> 257.68 +</table> 257.69 +<!-- Generated by Doxygen 1.5.7.1 --> 257.70 +<script type="text/javascript"> 257.71 +<!-- 257.72 +function changeDisplayState (e){ 257.73 + var num=this.id.replace(/[^[0-9]/g,''); 257.74 + var button=this.firstChild; 257.75 + var sectionDiv=document.getElementById('dynsection'+num); 257.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 257.77 + sectionDiv.style.display='block'; 257.78 + button.src='open.gif'; 257.79 + }else{ 257.80 + sectionDiv.style.display='none'; 257.81 + button.src='closed.gif'; 257.82 + } 257.83 +} 257.84 +function initDynSections(){ 257.85 + var divs=document.getElementsByTagName('div'); 257.86 + var sectionCounter=1; 257.87 + for(var i=0;i<divs.length-1;i++){ 257.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 257.89 + var header=divs[i]; 257.90 + var section=divs[i+1]; 257.91 + var button=header.firstChild; 257.92 + if (button!='IMG'){ 257.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 257.94 + button=document.createElement('img'); 257.95 + divs[i].insertBefore(button,divs[i].firstChild); 257.96 + } 257.97 + header.style.cursor='pointer'; 257.98 + header.onclick=changeDisplayState; 257.99 + header.id='dynheader'+sectionCounter; 257.100 + button.src='closed.gif'; 257.101 + section.id='dynsection'+sectionCounter; 257.102 + section.style.display='none'; 257.103 + section.style.marginLeft='14px'; 257.104 + sectionCounter++; 257.105 + } 257.106 + } 257.107 +} 257.108 +window.onload = initDynSections; 257.109 +--> 257.110 +</script> 257.111 +<div class="navigation" id="top"> 257.112 + <div class="tabs"> 257.113 + <ul> 257.114 + <li><a href="index.html"><span>Main Page</span></a></li> 257.115 + <li><a href="modules.html"><span>Modules</span></a></li> 257.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 257.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 257.118 + </ul> 257.119 + </div> 257.120 + <div class="tabs"> 257.121 + <ul> 257.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 257.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 257.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 257.125 + </ul> 257.126 + </div> 257.127 + <div class="tabs"> 257.128 + <ul> 257.129 + <li><a href="functions.html"><span>All</span></a></li> 257.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 257.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 257.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 257.133 + </ul> 257.134 + </div> 257.135 + <div class="tabs"> 257.136 + <ul> 257.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 257.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 257.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 257.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 257.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 257.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 257.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 257.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 257.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 257.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 257.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 257.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 257.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 257.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 257.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 257.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 257.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 257.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 257.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 257.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 257.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 257.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 257.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 257.160 + <li class="current"><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 257.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 257.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 257.163 + </ul> 257.164 + </div> 257.165 +</div> 257.166 +<div class="contents"> 257.167 + 257.168 +<p> 257.169 +<h3><a class="anchor" name="index_x">- x -</a></h3><ul> 257.170 +<li>xyYtoRGB() 257.171 +: <a class="el" href="structcimg__library_1_1CImg.html#896475f657bb68369b7996d3faeaefee">CImg</a> 257.172 +<li>xyYtoXYZ() 257.173 +: <a class="el" href="structcimg__library_1_1CImg.html#7387432af686bbc6c973e7b2ceb2b80b">CImg</a> 257.174 +<li>XYZtoLab() 257.175 +: <a class="el" href="structcimg__library_1_1CImg.html#13d44ab14b2f1f34ae150e5ead0a381e">CImg</a> 257.176 +<li>XYZtoRGB() 257.177 +: <a class="el" href="structcimg__library_1_1CImg.html#6ec1861cb810ee3df63c6ef85cf270d8">CImg</a> 257.178 +<li>XYZtoxyY() 257.179 +: <a class="el" href="structcimg__library_1_1CImg.html#697f3a725fd9e0349362d927ce95fd6e">CImg</a> 257.180 +</ul> 257.181 +</div> 257.182 +<hr noshade="noshade" size="1" width="100%"> 257.183 +<a href="http://sourceforge.net"> 257.184 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 257.185 +</a> 257.186 +<!-- Start of StatCounter Code --> 257.187 +<script type="text/javascript" language="javascript"> 257.188 +<!-- 257.189 +var sc_project=895001; 257.190 +var sc_invisible=1; 257.191 +var sc_partition=7; 257.192 +var sc_security="5ea85181"; 257.193 +//--> 257.194 +</script> 257.195 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 257.196 +<!-- End of StatCounter Code --> 257.197 +</body> 257.198 +</html>
258.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 258.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x79.html Mon Aug 03 14:09:20 2009 +0100 258.3 @@ -0,0 +1,189 @@ 258.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 258.5 +<head> 258.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 258.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 258.8 +<meta content="David Tschumperle" name="author"></meta> 258.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 258.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 258.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 258.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 258.13 +<style type="text/css"> 258.14 +<!-- 258.15 +body {background-color:white; font-family:sans-serif; } 258.16 +a:active{text-decoration:none; color:#303090} 258.17 +a:link{text-decoration:none; color:#303090} 258.18 +a:visited{text-decoration:none; color:#303090} 258.19 +a:hover{text-decoration:underline; color:#4E9F71} 258.20 +--> 258.21 +</style> 258.22 +<script language="JavaScript" type="text/javascript"> 258.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 258.24 + <!-- Web Site: http://redrival.com/eak/ --> 258.25 + <!-- This script and many more are available free online at --> 258.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 258.27 + <!-- Begin 258.28 + function NewWindow(mypage, myname, w, h, scroll) { 258.29 + var winl = (screen.width - w) / 2; 258.30 + var wint = (screen.height - h) / 2; 258.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 258.32 + win = window.open(mypage, myname, winprops) 258.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 258.34 + } 258.35 + // End --> 258.36 +</script> 258.37 +</head> 258.38 +<body> 258.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 258.40 + <tbody><tr><td> 258.41 + <hr noshade="noshade" size="1" width="90%"></hr> 258.42 + <center> 258.43 + <br/> 258.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 258.45 + <br/> 258.46 + </center> 258.47 + <hr noshade="noshade" size="1" width="90%"></hr> 258.48 + <center> 258.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 258.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 258.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 258.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 258.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 258.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 258.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 258.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 258.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 258.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 258.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 258.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 258.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 258.62 + </font> 258.63 + </td></tr></tbody> 258.64 + </table> 258.65 + </center> 258.66 + <hr noshade="noshade" size="1" width="90%"></hr> 258.67 + </td></tr></tbody> 258.68 +</table> 258.69 +<!-- Generated by Doxygen 1.5.7.1 --> 258.70 +<script type="text/javascript"> 258.71 +<!-- 258.72 +function changeDisplayState (e){ 258.73 + var num=this.id.replace(/[^[0-9]/g,''); 258.74 + var button=this.firstChild; 258.75 + var sectionDiv=document.getElementById('dynsection'+num); 258.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 258.77 + sectionDiv.style.display='block'; 258.78 + button.src='open.gif'; 258.79 + }else{ 258.80 + sectionDiv.style.display='none'; 258.81 + button.src='closed.gif'; 258.82 + } 258.83 +} 258.84 +function initDynSections(){ 258.85 + var divs=document.getElementsByTagName('div'); 258.86 + var sectionCounter=1; 258.87 + for(var i=0;i<divs.length-1;i++){ 258.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 258.89 + var header=divs[i]; 258.90 + var section=divs[i+1]; 258.91 + var button=header.firstChild; 258.92 + if (button!='IMG'){ 258.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 258.94 + button=document.createElement('img'); 258.95 + divs[i].insertBefore(button,divs[i].firstChild); 258.96 + } 258.97 + header.style.cursor='pointer'; 258.98 + header.onclick=changeDisplayState; 258.99 + header.id='dynheader'+sectionCounter; 258.100 + button.src='closed.gif'; 258.101 + section.id='dynsection'+sectionCounter; 258.102 + section.style.display='none'; 258.103 + section.style.marginLeft='14px'; 258.104 + sectionCounter++; 258.105 + } 258.106 + } 258.107 +} 258.108 +window.onload = initDynSections; 258.109 +--> 258.110 +</script> 258.111 +<div class="navigation" id="top"> 258.112 + <div class="tabs"> 258.113 + <ul> 258.114 + <li><a href="index.html"><span>Main Page</span></a></li> 258.115 + <li><a href="modules.html"><span>Modules</span></a></li> 258.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 258.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 258.118 + </ul> 258.119 + </div> 258.120 + <div class="tabs"> 258.121 + <ul> 258.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 258.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 258.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 258.125 + </ul> 258.126 + </div> 258.127 + <div class="tabs"> 258.128 + <ul> 258.129 + <li><a href="functions.html"><span>All</span></a></li> 258.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 258.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 258.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 258.133 + </ul> 258.134 + </div> 258.135 + <div class="tabs"> 258.136 + <ul> 258.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 258.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 258.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 258.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 258.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 258.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 258.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 258.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 258.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 258.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 258.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 258.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 258.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 258.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 258.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 258.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 258.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 258.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 258.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 258.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 258.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 258.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 258.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 258.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 258.161 + <li class="current"><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 258.162 + <li><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 258.163 + </ul> 258.164 + </div> 258.165 +</div> 258.166 +<div class="contents"> 258.167 + 258.168 +<p> 258.169 +<h3><a class="anchor" name="index_y">- y -</a></h3><ul> 258.170 +<li>YCbCrtoRGB() 258.171 +: <a class="el" href="structcimg__library_1_1CImg.html#93b6905e43cebf17d9d98f926d353a11">CImg</a> 258.172 +<li>YUVtoRGB() 258.173 +: <a class="el" href="structcimg__library_1_1CImg.html#45958abd08f2a93d33fb77de4e5b0a66">CImg</a> 258.174 +</ul> 258.175 +</div> 258.176 +<hr noshade="noshade" size="1" width="100%"> 258.177 +<a href="http://sourceforge.net"> 258.178 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 258.179 +</a> 258.180 +<!-- Start of StatCounter Code --> 258.181 +<script type="text/javascript" language="javascript"> 258.182 +<!-- 258.183 +var sc_project=895001; 258.184 +var sc_invisible=1; 258.185 +var sc_partition=7; 258.186 +var sc_security="5ea85181"; 258.187 +//--> 258.188 +</script> 258.189 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 258.190 +<!-- End of StatCounter Code --> 258.191 +</body> 258.192 +</html>
259.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 259.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_func_0x7e.html Mon Aug 03 14:09:20 2009 +0100 259.3 @@ -0,0 +1,191 @@ 259.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 259.5 +<head> 259.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 259.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 259.8 +<meta content="David Tschumperle" name="author"></meta> 259.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 259.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 259.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 259.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 259.13 +<style type="text/css"> 259.14 +<!-- 259.15 +body {background-color:white; font-family:sans-serif; } 259.16 +a:active{text-decoration:none; color:#303090} 259.17 +a:link{text-decoration:none; color:#303090} 259.18 +a:visited{text-decoration:none; color:#303090} 259.19 +a:hover{text-decoration:underline; color:#4E9F71} 259.20 +--> 259.21 +</style> 259.22 +<script language="JavaScript" type="text/javascript"> 259.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 259.24 + <!-- Web Site: http://redrival.com/eak/ --> 259.25 + <!-- This script and many more are available free online at --> 259.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 259.27 + <!-- Begin 259.28 + function NewWindow(mypage, myname, w, h, scroll) { 259.29 + var winl = (screen.width - w) / 2; 259.30 + var wint = (screen.height - h) / 2; 259.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 259.32 + win = window.open(mypage, myname, winprops) 259.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 259.34 + } 259.35 + // End --> 259.36 +</script> 259.37 +</head> 259.38 +<body> 259.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 259.40 + <tbody><tr><td> 259.41 + <hr noshade="noshade" size="1" width="90%"></hr> 259.42 + <center> 259.43 + <br/> 259.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 259.45 + <br/> 259.46 + </center> 259.47 + <hr noshade="noshade" size="1" width="90%"></hr> 259.48 + <center> 259.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 259.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 259.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 259.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 259.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 259.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 259.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 259.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 259.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 259.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 259.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 259.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 259.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 259.62 + </font> 259.63 + </td></tr></tbody> 259.64 + </table> 259.65 + </center> 259.66 + <hr noshade="noshade" size="1" width="90%"></hr> 259.67 + </td></tr></tbody> 259.68 +</table> 259.69 +<!-- Generated by Doxygen 1.5.7.1 --> 259.70 +<script type="text/javascript"> 259.71 +<!-- 259.72 +function changeDisplayState (e){ 259.73 + var num=this.id.replace(/[^[0-9]/g,''); 259.74 + var button=this.firstChild; 259.75 + var sectionDiv=document.getElementById('dynsection'+num); 259.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 259.77 + sectionDiv.style.display='block'; 259.78 + button.src='open.gif'; 259.79 + }else{ 259.80 + sectionDiv.style.display='none'; 259.81 + button.src='closed.gif'; 259.82 + } 259.83 +} 259.84 +function initDynSections(){ 259.85 + var divs=document.getElementsByTagName('div'); 259.86 + var sectionCounter=1; 259.87 + for(var i=0;i<divs.length-1;i++){ 259.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 259.89 + var header=divs[i]; 259.90 + var section=divs[i+1]; 259.91 + var button=header.firstChild; 259.92 + if (button!='IMG'){ 259.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 259.94 + button=document.createElement('img'); 259.95 + divs[i].insertBefore(button,divs[i].firstChild); 259.96 + } 259.97 + header.style.cursor='pointer'; 259.98 + header.onclick=changeDisplayState; 259.99 + header.id='dynheader'+sectionCounter; 259.100 + button.src='closed.gif'; 259.101 + section.id='dynsection'+sectionCounter; 259.102 + section.style.display='none'; 259.103 + section.style.marginLeft='14px'; 259.104 + sectionCounter++; 259.105 + } 259.106 + } 259.107 +} 259.108 +window.onload = initDynSections; 259.109 +--> 259.110 +</script> 259.111 +<div class="navigation" id="top"> 259.112 + <div class="tabs"> 259.113 + <ul> 259.114 + <li><a href="index.html"><span>Main Page</span></a></li> 259.115 + <li><a href="modules.html"><span>Modules</span></a></li> 259.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 259.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 259.118 + </ul> 259.119 + </div> 259.120 + <div class="tabs"> 259.121 + <ul> 259.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 259.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 259.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 259.125 + </ul> 259.126 + </div> 259.127 + <div class="tabs"> 259.128 + <ul> 259.129 + <li><a href="functions.html"><span>All</span></a></li> 259.130 + <li class="current"><a href="functions_func.html"><span>Functions</span></a></li> 259.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 259.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 259.133 + </ul> 259.134 + </div> 259.135 + <div class="tabs"> 259.136 + <ul> 259.137 + <li><a href="functions_func.html#index__"><span>_</span></a></li> 259.138 + <li><a href="functions_func_0x61.html#index_a"><span>a</span></a></li> 259.139 + <li><a href="functions_func_0x62.html#index_b"><span>b</span></a></li> 259.140 + <li><a href="functions_func_0x63.html#index_c"><span>c</span></a></li> 259.141 + <li><a href="functions_func_0x64.html#index_d"><span>d</span></a></li> 259.142 + <li><a href="functions_func_0x65.html#index_e"><span>e</span></a></li> 259.143 + <li><a href="functions_func_0x66.html#index_f"><span>f</span></a></li> 259.144 + <li><a href="functions_func_0x67.html#index_g"><span>g</span></a></li> 259.145 + <li><a href="functions_func_0x68.html#index_h"><span>h</span></a></li> 259.146 + <li><a href="functions_func_0x69.html#index_i"><span>i</span></a></li> 259.147 + <li><a href="functions_func_0x6b.html#index_k"><span>k</span></a></li> 259.148 + <li><a href="functions_func_0x6c.html#index_l"><span>l</span></a></li> 259.149 + <li><a href="functions_func_0x6d.html#index_m"><span>m</span></a></li> 259.150 + <li><a href="functions_func_0x6e.html#index_n"><span>n</span></a></li> 259.151 + <li><a href="functions_func_0x6f.html#index_o"><span>o</span></a></li> 259.152 + <li><a href="functions_func_0x70.html#index_p"><span>p</span></a></li> 259.153 + <li><a href="functions_func_0x71.html#index_q"><span>q</span></a></li> 259.154 + <li><a href="functions_func_0x72.html#index_r"><span>r</span></a></li> 259.155 + <li><a href="functions_func_0x73.html#index_s"><span>s</span></a></li> 259.156 + <li><a href="functions_func_0x74.html#index_t"><span>t</span></a></li> 259.157 + <li><a href="functions_func_0x75.html#index_u"><span>u</span></a></li> 259.158 + <li><a href="functions_func_0x76.html#index_v"><span>v</span></a></li> 259.159 + <li><a href="functions_func_0x77.html#index_w"><span>w</span></a></li> 259.160 + <li><a href="functions_func_0x78.html#index_x"><span>x</span></a></li> 259.161 + <li><a href="functions_func_0x79.html#index_y"><span>y</span></a></li> 259.162 + <li class="current"><a href="functions_func_0x7e.html#index_~"><span>~</span></a></li> 259.163 + </ul> 259.164 + </div> 259.165 +</div> 259.166 +<div class="contents"> 259.167 + 259.168 +<p> 259.169 +<h3><a class="anchor" name="index_~">- ~ -</a></h3><ul> 259.170 +<li>~CImg() 259.171 +: <a class="el" href="structcimg__library_1_1CImg.html#d71c294580a5307aa31246e4a1ee7866">CImg</a> 259.172 +<li>~CImgDisplay() 259.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e4b8135f23d41f2077ff1d63deb452ea">CImgDisplay</a> 259.174 +<li>~CImgList() 259.175 +: <a class="el" href="structcimg__library_1_1CImgList.html#30a624e43eb40c6df0fa1fdacf5c6235">CImgList</a> 259.176 +</ul> 259.177 +</div> 259.178 +<hr noshade="noshade" size="1" width="100%"> 259.179 +<a href="http://sourceforge.net"> 259.180 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 259.181 +</a> 259.182 +<!-- Start of StatCounter Code --> 259.183 +<script type="text/javascript" language="javascript"> 259.184 +<!-- 259.185 +var sc_project=895001; 259.186 +var sc_invisible=1; 259.187 +var sc_partition=7; 259.188 +var sc_security="5ea85181"; 259.189 +//--> 259.190 +</script> 259.191 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 259.192 +<!-- End of StatCounter Code --> 259.193 +</body> 259.194 +</html>
260.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 260.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_type.html Mon Aug 03 14:09:20 2009 +0100 260.3 @@ -0,0 +1,164 @@ 260.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 260.5 +<head> 260.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 260.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 260.8 +<meta content="David Tschumperle" name="author"></meta> 260.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 260.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 260.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 260.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 260.13 +<style type="text/css"> 260.14 +<!-- 260.15 +body {background-color:white; font-family:sans-serif; } 260.16 +a:active{text-decoration:none; color:#303090} 260.17 +a:link{text-decoration:none; color:#303090} 260.18 +a:visited{text-decoration:none; color:#303090} 260.19 +a:hover{text-decoration:underline; color:#4E9F71} 260.20 +--> 260.21 +</style> 260.22 +<script language="JavaScript" type="text/javascript"> 260.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 260.24 + <!-- Web Site: http://redrival.com/eak/ --> 260.25 + <!-- This script and many more are available free online at --> 260.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 260.27 + <!-- Begin 260.28 + function NewWindow(mypage, myname, w, h, scroll) { 260.29 + var winl = (screen.width - w) / 2; 260.30 + var wint = (screen.height - h) / 2; 260.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 260.32 + win = window.open(mypage, myname, winprops) 260.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 260.34 + } 260.35 + // End --> 260.36 +</script> 260.37 +</head> 260.38 +<body> 260.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 260.40 + <tbody><tr><td> 260.41 + <hr noshade="noshade" size="1" width="90%"></hr> 260.42 + <center> 260.43 + <br/> 260.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 260.45 + <br/> 260.46 + </center> 260.47 + <hr noshade="noshade" size="1" width="90%"></hr> 260.48 + <center> 260.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 260.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 260.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 260.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 260.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 260.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 260.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 260.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 260.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 260.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 260.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 260.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 260.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 260.62 + </font> 260.63 + </td></tr></tbody> 260.64 + </table> 260.65 + </center> 260.66 + <hr noshade="noshade" size="1" width="90%"></hr> 260.67 + </td></tr></tbody> 260.68 +</table> 260.69 +<!-- Generated by Doxygen 1.5.7.1 --> 260.70 +<script type="text/javascript"> 260.71 +<!-- 260.72 +function changeDisplayState (e){ 260.73 + var num=this.id.replace(/[^[0-9]/g,''); 260.74 + var button=this.firstChild; 260.75 + var sectionDiv=document.getElementById('dynsection'+num); 260.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 260.77 + sectionDiv.style.display='block'; 260.78 + button.src='open.gif'; 260.79 + }else{ 260.80 + sectionDiv.style.display='none'; 260.81 + button.src='closed.gif'; 260.82 + } 260.83 +} 260.84 +function initDynSections(){ 260.85 + var divs=document.getElementsByTagName('div'); 260.86 + var sectionCounter=1; 260.87 + for(var i=0;i<divs.length-1;i++){ 260.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 260.89 + var header=divs[i]; 260.90 + var section=divs[i+1]; 260.91 + var button=header.firstChild; 260.92 + if (button!='IMG'){ 260.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 260.94 + button=document.createElement('img'); 260.95 + divs[i].insertBefore(button,divs[i].firstChild); 260.96 + } 260.97 + header.style.cursor='pointer'; 260.98 + header.onclick=changeDisplayState; 260.99 + header.id='dynheader'+sectionCounter; 260.100 + button.src='closed.gif'; 260.101 + section.id='dynsection'+sectionCounter; 260.102 + section.style.display='none'; 260.103 + section.style.marginLeft='14px'; 260.104 + sectionCounter++; 260.105 + } 260.106 + } 260.107 +} 260.108 +window.onload = initDynSections; 260.109 +--> 260.110 +</script> 260.111 +<div class="navigation" id="top"> 260.112 + <div class="tabs"> 260.113 + <ul> 260.114 + <li><a href="index.html"><span>Main Page</span></a></li> 260.115 + <li><a href="modules.html"><span>Modules</span></a></li> 260.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 260.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 260.118 + </ul> 260.119 + </div> 260.120 + <div class="tabs"> 260.121 + <ul> 260.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 260.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 260.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 260.125 + </ul> 260.126 + </div> 260.127 + <div class="tabs"> 260.128 + <ul> 260.129 + <li><a href="functions.html"><span>All</span></a></li> 260.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 260.131 + <li><a href="functions_vars.html"><span>Variables</span></a></li> 260.132 + <li class="current"><a href="functions_type.html"><span>Typedefs</span></a></li> 260.133 + </ul> 260.134 + </div> 260.135 +</div> 260.136 +<div class="contents"> 260.137 + 260.138 +<p> 260.139 +<ul> 260.140 +<li>const_iterator 260.141 +: <a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">CImg</a> 260.142 +, <a class="el" href="structcimg__library_1_1CImgList.html#449d35504b2500efc67af75ba3bf9277">CImgList</a> 260.143 +<li>iterator 260.144 +: <a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">CImg</a> 260.145 +, <a class="el" href="structcimg__library_1_1CImgList.html#7c1c29e319c572a740b103b024f37034">CImgList</a> 260.146 +<li>value_type 260.147 +: <a class="el" href="structcimg__library_1_1CImg.html#265a253612b46abed17c61b0a5e5ce30">CImg</a> 260.148 +, <a class="el" href="structcimg__library_1_1CImgList.html#265a253612b46abed17c61b0a5e5ce30">CImgList</a> 260.149 +</ul> 260.150 +</div> 260.151 +<hr noshade="noshade" size="1" width="100%"> 260.152 +<a href="http://sourceforge.net"> 260.153 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 260.154 +</a> 260.155 +<!-- Start of StatCounter Code --> 260.156 +<script type="text/javascript" language="javascript"> 260.157 +<!-- 260.158 +var sc_project=895001; 260.159 +var sc_invisible=1; 260.160 +var sc_partition=7; 260.161 +var sc_security="5ea85181"; 260.162 +//--> 260.163 +</script> 260.164 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 260.165 +<!-- End of StatCounter Code --> 260.166 +</body> 260.167 +</html>
261.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 261.2 +++ b/PTdecode/CImg-1.3.0/html/reference/functions_vars.html Mon Aug 03 14:09:20 2009 +0100 261.3 @@ -0,0 +1,212 @@ 261.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 261.5 +<head> 261.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 261.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 261.8 +<meta content="David Tschumperle" name="author"></meta> 261.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 261.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 261.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 261.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 261.13 +<style type="text/css"> 261.14 +<!-- 261.15 +body {background-color:white; font-family:sans-serif; } 261.16 +a:active{text-decoration:none; color:#303090} 261.17 +a:link{text-decoration:none; color:#303090} 261.18 +a:visited{text-decoration:none; color:#303090} 261.19 +a:hover{text-decoration:underline; color:#4E9F71} 261.20 +--> 261.21 +</style> 261.22 +<script language="JavaScript" type="text/javascript"> 261.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 261.24 + <!-- Web Site: http://redrival.com/eak/ --> 261.25 + <!-- This script and many more are available free online at --> 261.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 261.27 + <!-- Begin 261.28 + function NewWindow(mypage, myname, w, h, scroll) { 261.29 + var winl = (screen.width - w) / 2; 261.30 + var wint = (screen.height - h) / 2; 261.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 261.32 + win = window.open(mypage, myname, winprops) 261.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 261.34 + } 261.35 + // End --> 261.36 +</script> 261.37 +</head> 261.38 +<body> 261.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 261.40 + <tbody><tr><td> 261.41 + <hr noshade="noshade" size="1" width="90%"></hr> 261.42 + <center> 261.43 + <br/> 261.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 261.45 + <br/> 261.46 + </center> 261.47 + <hr noshade="noshade" size="1" width="90%"></hr> 261.48 + <center> 261.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 261.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 261.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 261.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 261.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 261.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 261.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 261.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 261.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 261.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 261.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 261.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 261.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 261.62 + </font> 261.63 + </td></tr></tbody> 261.64 + </table> 261.65 + </center> 261.66 + <hr noshade="noshade" size="1" width="90%"></hr> 261.67 + </td></tr></tbody> 261.68 +</table> 261.69 +<!-- Generated by Doxygen 1.5.7.1 --> 261.70 +<script type="text/javascript"> 261.71 +<!-- 261.72 +function changeDisplayState (e){ 261.73 + var num=this.id.replace(/[^[0-9]/g,''); 261.74 + var button=this.firstChild; 261.75 + var sectionDiv=document.getElementById('dynsection'+num); 261.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 261.77 + sectionDiv.style.display='block'; 261.78 + button.src='open.gif'; 261.79 + }else{ 261.80 + sectionDiv.style.display='none'; 261.81 + button.src='closed.gif'; 261.82 + } 261.83 +} 261.84 +function initDynSections(){ 261.85 + var divs=document.getElementsByTagName('div'); 261.86 + var sectionCounter=1; 261.87 + for(var i=0;i<divs.length-1;i++){ 261.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 261.89 + var header=divs[i]; 261.90 + var section=divs[i+1]; 261.91 + var button=header.firstChild; 261.92 + if (button!='IMG'){ 261.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 261.94 + button=document.createElement('img'); 261.95 + divs[i].insertBefore(button,divs[i].firstChild); 261.96 + } 261.97 + header.style.cursor='pointer'; 261.98 + header.onclick=changeDisplayState; 261.99 + header.id='dynheader'+sectionCounter; 261.100 + button.src='closed.gif'; 261.101 + section.id='dynsection'+sectionCounter; 261.102 + section.style.display='none'; 261.103 + section.style.marginLeft='14px'; 261.104 + sectionCounter++; 261.105 + } 261.106 + } 261.107 +} 261.108 +window.onload = initDynSections; 261.109 +--> 261.110 +</script> 261.111 +<div class="navigation" id="top"> 261.112 + <div class="tabs"> 261.113 + <ul> 261.114 + <li><a href="index.html"><span>Main Page</span></a></li> 261.115 + <li><a href="modules.html"><span>Modules</span></a></li> 261.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 261.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 261.118 + </ul> 261.119 + </div> 261.120 + <div class="tabs"> 261.121 + <ul> 261.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 261.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 261.124 + <li class="current"><a href="functions.html"><span>Class Members</span></a></li> 261.125 + </ul> 261.126 + </div> 261.127 + <div class="tabs"> 261.128 + <ul> 261.129 + <li><a href="functions.html"><span>All</span></a></li> 261.130 + <li><a href="functions_func.html"><span>Functions</span></a></li> 261.131 + <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li> 261.132 + <li><a href="functions_type.html"><span>Typedefs</span></a></li> 261.133 + </ul> 261.134 + </div> 261.135 +</div> 261.136 +<div class="contents"> 261.137 + 261.138 +<p> 261.139 +<ul> 261.140 +<li>allocsize 261.141 +: <a class="el" href="structcimg__library_1_1CImgList.html#ed8b8acab64fd4c342e533c72f467438">CImgList</a> 261.142 +<li>buttons 261.143 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#99bff6269344233fdf65bd637224550c">CImgDisplay</a> 261.144 +<li>data 261.145 +: <a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">CImg</a> 261.146 +, <a class="el" href="structcimg__library_1_1CImgList.html#7b2148b1950a98016bd8d1407062d798">CImgList</a> 261.147 +<li>depth 261.148 +: <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">CImg</a> 261.149 +<li>dim 261.150 +: <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">CImg</a> 261.151 +<li>height 261.152 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#b2e78c61905b4419fcc7b4cfc500fe85">CImgDisplay</a> 261.153 +, <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">CImg</a> 261.154 +<li>is_closed 261.155 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#6177b591b6fdd86be8a841805e35e280">CImgDisplay</a> 261.156 +<li>is_event 261.157 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#e899d3a3cda0dc8e2fccac37f2258840">CImgDisplay</a> 261.158 +<li>is_fullscreen 261.159 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#198912a8b09f955a6510f97d62060f5c">CImgDisplay</a> 261.160 +<li>is_keyESC 261.161 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#fe7ba7376c7b08dec24ac4c42d5fc753">CImgDisplay</a> 261.162 +<li>is_moved 261.163 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#9655ae9b239a315df522996415012d0a">CImgDisplay</a> 261.164 +<li>is_resized 261.165 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#c36e1e5ca1f39584ff996eddc7bc7f0e">CImgDisplay</a> 261.166 +<li>is_shared 261.167 +: <a class="el" href="structcimg__library_1_1CImg.html#64fc9b1179593151684cfdc86dac7e65">CImg</a> 261.168 +<li>key 261.169 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#31f08c239581b118bfa3024329c8a611">CImgDisplay</a> 261.170 +<li>message 261.171 +: <a class="el" href="structcimg__library_1_1CImgException.html#4698f05956e353cfe926fc59e4b50a2e">CImgException</a> 261.172 +<li>mouse_x 261.173 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#4e1249ac2eca0971a8c42f79c3a687d4">CImgDisplay</a> 261.174 +<li>mouse_y 261.175 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#adc7ac37cf1e624daddaa8d2c1587eef">CImgDisplay</a> 261.176 +<li>normalization 261.177 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a0ca4e92f24cf5b7896709dba3cf771a">CImgDisplay</a> 261.178 +<li>released_key 261.179 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#170a7c96fc7e3f262052d29b83430429">CImgDisplay</a> 261.180 +<li>size 261.181 +: <a class="el" href="structcimg__library_1_1CImgList.html#ac913b3a1f6ef005d66bf7a84428773e">CImgList</a> 261.182 +<li>title 261.183 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">CImgDisplay</a> 261.184 +<li>wheel 261.185 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#8852860a5e65fc4e698c2771ac5d5dab">CImgDisplay</a> 261.186 +<li>width 261.187 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">CImgDisplay</a> 261.188 +, <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">CImg</a> 261.189 +<li>window_height 261.190 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#3b93087fe5c3714abcb0719a6f483d51">CImgDisplay</a> 261.191 +<li>window_width 261.192 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#b88886d5ff22bc29cd4a81e3abbb364b">CImgDisplay</a> 261.193 +<li>window_x 261.194 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#a526ed4470cbc4924e72a1b4d616b00d">CImgDisplay</a> 261.195 +<li>window_y 261.196 +: <a class="el" href="structcimg__library_1_1CImgDisplay.html#8f46b1f416882413996c261f839272a5">CImgDisplay</a> 261.197 +</ul> 261.198 +</div> 261.199 +<hr noshade="noshade" size="1" width="100%"> 261.200 +<a href="http://sourceforge.net"> 261.201 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 261.202 +</a> 261.203 +<!-- Start of StatCounter Code --> 261.204 +<script type="text/javascript" language="javascript"> 261.205 +<!-- 261.206 +var sc_project=895001; 261.207 +var sc_invisible=1; 261.208 +var sc_partition=7; 261.209 +var sc_security="5ea85181"; 261.210 +//--> 261.211 +</script> 261.212 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 261.213 +<!-- End of StatCounter Code --> 261.214 +</body> 261.215 +</html>
262.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 262.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__displays.html Mon Aug 03 14:09:20 2009 +0100 262.3 @@ -0,0 +1,142 @@ 262.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 262.5 +<head> 262.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 262.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 262.8 +<meta content="David Tschumperle" name="author"></meta> 262.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 262.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 262.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 262.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 262.13 +<style type="text/css"> 262.14 +<!-- 262.15 +body {background-color:white; font-family:sans-serif; } 262.16 +a:active{text-decoration:none; color:#303090} 262.17 +a:link{text-decoration:none; color:#303090} 262.18 +a:visited{text-decoration:none; color:#303090} 262.19 +a:hover{text-decoration:underline; color:#4E9F71} 262.20 +--> 262.21 +</style> 262.22 +<script language="JavaScript" type="text/javascript"> 262.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 262.24 + <!-- Web Site: http://redrival.com/eak/ --> 262.25 + <!-- This script and many more are available free online at --> 262.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 262.27 + <!-- Begin 262.28 + function NewWindow(mypage, myname, w, h, scroll) { 262.29 + var winl = (screen.width - w) / 2; 262.30 + var wint = (screen.height - h) / 2; 262.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 262.32 + win = window.open(mypage, myname, winprops) 262.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 262.34 + } 262.35 + // End --> 262.36 +</script> 262.37 +</head> 262.38 +<body> 262.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 262.40 + <tbody><tr><td> 262.41 + <hr noshade="noshade" size="1" width="90%"></hr> 262.42 + <center> 262.43 + <br/> 262.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 262.45 + <br/> 262.46 + </center> 262.47 + <hr noshade="noshade" size="1" width="90%"></hr> 262.48 + <center> 262.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 262.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 262.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 262.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 262.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 262.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 262.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 262.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 262.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 262.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 262.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 262.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 262.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 262.62 + </font> 262.63 + </td></tr></tbody> 262.64 + </table> 262.65 + </center> 262.66 + <hr noshade="noshade" size="1" width="90%"></hr> 262.67 + </td></tr></tbody> 262.68 +</table> 262.69 +<!-- Generated by Doxygen 1.5.7.1 --> 262.70 +<script type="text/javascript"> 262.71 +<!-- 262.72 +function changeDisplayState (e){ 262.73 + var num=this.id.replace(/[^[0-9]/g,''); 262.74 + var button=this.firstChild; 262.75 + var sectionDiv=document.getElementById('dynsection'+num); 262.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 262.77 + sectionDiv.style.display='block'; 262.78 + button.src='open.gif'; 262.79 + }else{ 262.80 + sectionDiv.style.display='none'; 262.81 + button.src='closed.gif'; 262.82 + } 262.83 +} 262.84 +function initDynSections(){ 262.85 + var divs=document.getElementsByTagName('div'); 262.86 + var sectionCounter=1; 262.87 + for(var i=0;i<divs.length-1;i++){ 262.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 262.89 + var header=divs[i]; 262.90 + var section=divs[i+1]; 262.91 + var button=header.firstChild; 262.92 + if (button!='IMG'){ 262.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 262.94 + button=document.createElement('img'); 262.95 + divs[i].insertBefore(button,divs[i].firstChild); 262.96 + } 262.97 + header.style.cursor='pointer'; 262.98 + header.onclick=changeDisplayState; 262.99 + header.id='dynheader'+sectionCounter; 262.100 + button.src='closed.gif'; 262.101 + section.id='dynsection'+sectionCounter; 262.102 + section.style.display='none'; 262.103 + section.style.marginLeft='14px'; 262.104 + sectionCounter++; 262.105 + } 262.106 + } 262.107 +} 262.108 +window.onload = initDynSections; 262.109 +--> 262.110 +</script> 262.111 +<div class="navigation" id="top"> 262.112 + <div class="tabs"> 262.113 + <ul> 262.114 + <li><a href="index.html"><span>Main Page</span></a></li> 262.115 + <li><a href="modules.html"><span>Modules</span></a></li> 262.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 262.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 262.118 + </ul> 262.119 + </div> 262.120 +</div> 262.121 +<div class="contents"> 262.122 +<h1>Using Display Windows.</h1><table border="0" cellpadding="0" cellspacing="0"> 262.123 +<tr><td></td></tr> 262.124 +</table> 262.125 +When opening a display window, you can choose the way the pixel values will be normalized before being displayed on the screen. Screen displays only support color values between [0,255], and some<p> 262.126 +When displaying an image into the display window using CImgDisplay::display(), values of the image pixels can be eventually linearly normalized between [0,255] for visualization purposes. This may be useful for instance when displaying <code>CImg<double></code> images with pixel values between [0,1]. The normalization behavior depends on the value of <code>normalize</code> which can be either <code>0</code>,<code>1</code> or <code>2</code> :<ul> 262.127 +<li><code>0</code> : No pixel normalization is performed when displaying an image. This is the fastest process, but you must be sure your displayed image have pixel values inside the range [0,255].</li><li><code>1</code> : Pixel value normalization is done for each new image display. Image pixels are not modified themselves, only displayed pixels are normalized.</li><li><code>2</code> : Pixel value normalization is done for the first image display, then the normalization parameters are kept and used for all the next image displays. </li></ul> 262.128 +</div> 262.129 +<hr noshade="noshade" size="1" width="100%"> 262.130 +<a href="http://sourceforge.net"> 262.131 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 262.132 +</a> 262.133 +<!-- Start of StatCounter Code --> 262.134 +<script type="text/javascript" language="javascript"> 262.135 +<!-- 262.136 +var sc_project=895001; 262.137 +var sc_invisible=1; 262.138 +var sc_partition=7; 262.139 +var sc_security="5ea85181"; 262.140 +//--> 262.141 +</script> 262.142 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 262.143 +<!-- End of StatCounter Code --> 262.144 +</body> 262.145 +</html>
263.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 263.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__drawing.html Mon Aug 03 14:09:20 2009 +0100 263.3 @@ -0,0 +1,147 @@ 263.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 263.5 +<head> 263.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 263.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 263.8 +<meta content="David Tschumperle" name="author"></meta> 263.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 263.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 263.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 263.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 263.13 +<style type="text/css"> 263.14 +<!-- 263.15 +body {background-color:white; font-family:sans-serif; } 263.16 +a:active{text-decoration:none; color:#303090} 263.17 +a:link{text-decoration:none; color:#303090} 263.18 +a:visited{text-decoration:none; color:#303090} 263.19 +a:hover{text-decoration:underline; color:#4E9F71} 263.20 +--> 263.21 +</style> 263.22 +<script language="JavaScript" type="text/javascript"> 263.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 263.24 + <!-- Web Site: http://redrival.com/eak/ --> 263.25 + <!-- This script and many more are available free online at --> 263.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 263.27 + <!-- Begin 263.28 + function NewWindow(mypage, myname, w, h, scroll) { 263.29 + var winl = (screen.width - w) / 2; 263.30 + var wint = (screen.height - h) / 2; 263.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 263.32 + win = window.open(mypage, myname, winprops) 263.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 263.34 + } 263.35 + // End --> 263.36 +</script> 263.37 +</head> 263.38 +<body> 263.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 263.40 + <tbody><tr><td> 263.41 + <hr noshade="noshade" size="1" width="90%"></hr> 263.42 + <center> 263.43 + <br/> 263.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 263.45 + <br/> 263.46 + </center> 263.47 + <hr noshade="noshade" size="1" width="90%"></hr> 263.48 + <center> 263.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 263.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 263.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 263.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 263.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 263.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 263.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 263.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 263.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 263.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 263.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 263.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 263.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 263.62 + </font> 263.63 + </td></tr></tbody> 263.64 + </table> 263.65 + </center> 263.66 + <hr noshade="noshade" size="1" width="90%"></hr> 263.67 + </td></tr></tbody> 263.68 +</table> 263.69 +<!-- Generated by Doxygen 1.5.7.1 --> 263.70 +<script type="text/javascript"> 263.71 +<!-- 263.72 +function changeDisplayState (e){ 263.73 + var num=this.id.replace(/[^[0-9]/g,''); 263.74 + var button=this.firstChild; 263.75 + var sectionDiv=document.getElementById('dynsection'+num); 263.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 263.77 + sectionDiv.style.display='block'; 263.78 + button.src='open.gif'; 263.79 + }else{ 263.80 + sectionDiv.style.display='none'; 263.81 + button.src='closed.gif'; 263.82 + } 263.83 +} 263.84 +function initDynSections(){ 263.85 + var divs=document.getElementsByTagName('div'); 263.86 + var sectionCounter=1; 263.87 + for(var i=0;i<divs.length-1;i++){ 263.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 263.89 + var header=divs[i]; 263.90 + var section=divs[i+1]; 263.91 + var button=header.firstChild; 263.92 + if (button!='IMG'){ 263.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 263.94 + button=document.createElement('img'); 263.95 + divs[i].insertBefore(button,divs[i].firstChild); 263.96 + } 263.97 + header.style.cursor='pointer'; 263.98 + header.onclick=changeDisplayState; 263.99 + header.id='dynheader'+sectionCounter; 263.100 + button.src='closed.gif'; 263.101 + section.id='dynsection'+sectionCounter; 263.102 + section.style.display='none'; 263.103 + section.style.marginLeft='14px'; 263.104 + sectionCounter++; 263.105 + } 263.106 + } 263.107 +} 263.108 +window.onload = initDynSections; 263.109 +--> 263.110 +</script> 263.111 +<div class="navigation" id="top"> 263.112 + <div class="tabs"> 263.113 + <ul> 263.114 + <li><a href="index.html"><span>Main Page</span></a></li> 263.115 + <li><a href="modules.html"><span>Modules</span></a></li> 263.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 263.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 263.118 + </ul> 263.119 + </div> 263.120 +</div> 263.121 +<div class="contents"> 263.122 +<h1>Using Drawing Functions.</h1><table border="0" cellpadding="0" cellspacing="0"> 263.123 +<tr><td></td></tr> 263.124 +</table> 263.125 +<h2><a class="anchor" name="s5"> 263.126 +Using Drawing Functions.</a></h2> 263.127 +This section tells more about drawing features in CImg images. Drawing functions list can be found in <a href="structCImg.html">the CImg functions list</a> (section <b>Drawing</b> Functions), and are all defined on a common basis. Here are the important points to understand before using drawing functions :<p> 263.128 +<ul> 263.129 +<li>Drawing is performed on the instance image. Drawing functions parameters are defined as <em>const</em> variables and return a reference to the current instance <code>(*this)</code>, so that drawing functions can be pipelined (see examples below). Drawing is usually done in 2D color images but can be performed in 3D images with any vector-valued dimension, and with any possible pixel type.</li></ul> 263.130 +<p> 263.131 +<ul> 263.132 +<li>A color parameter is always needed to draw features in an image. The color must be defined as a C-style array whose dimension is at least </li></ul> 263.133 +</div> 263.134 +<hr noshade="noshade" size="1" width="100%"> 263.135 +<a href="http://sourceforge.net"> 263.136 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 263.137 +</a> 263.138 +<!-- Start of StatCounter Code --> 263.139 +<script type="text/javascript" language="javascript"> 263.140 +<!-- 263.141 +var sc_project=895001; 263.142 +var sc_invisible=1; 263.143 +var sc_partition=7; 263.144 +var sc_security="5ea85181"; 263.145 +//--> 263.146 +</script> 263.147 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 263.148 +<!-- End of StatCounter Code --> 263.149 +</body> 263.150 +</html>
264.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 264.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__environment.html Mon Aug 03 14:09:20 2009 +0100 264.3 @@ -0,0 +1,173 @@ 264.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 264.5 +<head> 264.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 264.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 264.8 +<meta content="David Tschumperle" name="author"></meta> 264.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 264.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 264.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 264.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 264.13 +<style type="text/css"> 264.14 +<!-- 264.15 +body {background-color:white; font-family:sans-serif; } 264.16 +a:active{text-decoration:none; color:#303090} 264.17 +a:link{text-decoration:none; color:#303090} 264.18 +a:visited{text-decoration:none; color:#303090} 264.19 +a:hover{text-decoration:underline; color:#4E9F71} 264.20 +--> 264.21 +</style> 264.22 +<script language="JavaScript" type="text/javascript"> 264.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 264.24 + <!-- Web Site: http://redrival.com/eak/ --> 264.25 + <!-- This script and many more are available free online at --> 264.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 264.27 + <!-- Begin 264.28 + function NewWindow(mypage, myname, w, h, scroll) { 264.29 + var winl = (screen.width - w) / 2; 264.30 + var wint = (screen.height - h) / 2; 264.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 264.32 + win = window.open(mypage, myname, winprops) 264.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 264.34 + } 264.35 + // End --> 264.36 +</script> 264.37 +</head> 264.38 +<body> 264.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 264.40 + <tbody><tr><td> 264.41 + <hr noshade="noshade" size="1" width="90%"></hr> 264.42 + <center> 264.43 + <br/> 264.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 264.45 + <br/> 264.46 + </center> 264.47 + <hr noshade="noshade" size="1" width="90%"></hr> 264.48 + <center> 264.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 264.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 264.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 264.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 264.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 264.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 264.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 264.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 264.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 264.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 264.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 264.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 264.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 264.62 + </font> 264.63 + </td></tr></tbody> 264.64 + </table> 264.65 + </center> 264.66 + <hr noshade="noshade" size="1" width="90%"></hr> 264.67 + </td></tr></tbody> 264.68 +</table> 264.69 +<!-- Generated by Doxygen 1.5.7.1 --> 264.70 +<script type="text/javascript"> 264.71 +<!-- 264.72 +function changeDisplayState (e){ 264.73 + var num=this.id.replace(/[^[0-9]/g,''); 264.74 + var button=this.firstChild; 264.75 + var sectionDiv=document.getElementById('dynsection'+num); 264.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 264.77 + sectionDiv.style.display='block'; 264.78 + button.src='open.gif'; 264.79 + }else{ 264.80 + sectionDiv.style.display='none'; 264.81 + button.src='closed.gif'; 264.82 + } 264.83 +} 264.84 +function initDynSections(){ 264.85 + var divs=document.getElementsByTagName('div'); 264.86 + var sectionCounter=1; 264.87 + for(var i=0;i<divs.length-1;i++){ 264.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 264.89 + var header=divs[i]; 264.90 + var section=divs[i+1]; 264.91 + var button=header.firstChild; 264.92 + if (button!='IMG'){ 264.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 264.94 + button=document.createElement('img'); 264.95 + divs[i].insertBefore(button,divs[i].firstChild); 264.96 + } 264.97 + header.style.cursor='pointer'; 264.98 + header.onclick=changeDisplayState; 264.99 + header.id='dynheader'+sectionCounter; 264.100 + button.src='closed.gif'; 264.101 + section.id='dynsection'+sectionCounter; 264.102 + section.style.display='none'; 264.103 + section.style.marginLeft='14px'; 264.104 + sectionCounter++; 264.105 + } 264.106 + } 264.107 +} 264.108 +window.onload = initDynSections; 264.109 +--> 264.110 +</script> 264.111 +<div class="navigation" id="top"> 264.112 + <div class="tabs"> 264.113 + <ul> 264.114 + <li><a href="index.html"><span>Main Page</span></a></li> 264.115 + <li><a href="modules.html"><span>Modules</span></a></li> 264.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 264.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 264.118 + </ul> 264.119 + </div> 264.120 +</div> 264.121 +<div class="contents"> 264.122 +<h1>Setting Environment Variables</h1><table border="0" cellpadding="0" cellspacing="0"> 264.123 +<tr><td></td></tr> 264.124 +</table> 264.125 +The CImg library is a multiplatform library, working on a wide variety of systems. This implies the existence of some <em>environment</em> <em>variables</em> that must be correctly defined depending on your current system. Most of the time, the CImg Library defines these variables automatically (for popular systems). Anyway, if your system is not recognized, you will have to set the environment variables by hand. Here is a quick explanations of environment variables.<br> 264.126 +<p> 264.127 +Setting the environment variables is done with the <code>define</code> keyword. This setting must be done <em>before including the file CImg.h</em> in your source code. For instance, defining the environment variable <code>cimg_display</code> would be done like this : <div class="fragment"><pre class="fragment"><span class="preprocessor"> #define cimg_display 0</span> 264.128 +<span class="preprocessor"></span><span class="preprocessor"> #include "CImg.h"</span> 264.129 + ... 264.130 +</pre></div><p> 264.131 +Here are the different environment variables used by the CImg Library :<p> 264.132 +<ul> 264.133 +<li><b><code>cimg_OS</code> </b>: This variable defines the type of your Operating System. It can be set to <b>1</b> (<em>Unix</em>), <b>2</b> (<em>Windows</em>), or <b>0</b> (<em>Other</em> <em>configuration</em>). It should be actually auto-detected by the CImg library. If this is not the case (<code>cimg_OS=0</code>), you will probably have to tune the environment variables described below.</li></ul> 264.134 +<p> 264.135 +<ul> 264.136 +<li><b><code>cimg_display</code> </b>: This variable defines the type of graphical library used to display images in windows. It can be set to 0 (no display library available), <b>1</b> (X11-based display) or <b>2</b> (Windows-GDI display). If you are running on a system without X11 or Windows-GDI ability, please set this variable to <code>0</code>. This will disable the display support, since the CImg Library doesn't contain the necessary code to display images on systems other than X11 or Windows GDI.</li></ul> 264.137 +<p> 264.138 +<ul> 264.139 +<li><b><code>cimg_color_terminal</code> </b>: This variable tells the library if the system terminal has VT100 color capabilities. It can be <em>defined</em> or <em>not</em> <em>defined</em>. Define this variable to get colored output on your terminal, when using the CImg Library.</li></ul> 264.140 +<p> 264.141 +<ul> 264.142 +<li><b><code>cimg_debug</code> </b>: This variable defines the level of run-time debug messages that will be displayed by the CImg Library. It can be set to 0 (no debug messages), 1 (normal debug messages displayed on standard error), 2 (normal debug messages displayed in modal windows, which is the default value), or 3 (high debug messages). Note that setting this value to 3 may slow down your program since more debug tests are made by the library (particularly to check if pixel access is made outside image boundaries). See also CImgException to better understand how debug messages are working.</li></ul> 264.143 +<p> 264.144 +<ul> 264.145 +<li><b><code>cimg_convert_path</code> </b>: This variables tells the library where the ImageMagick's <em>convert</em> tool is located. Setting this variable should not be necessary if ImageMagick is installed on a standard directory, or if <em>convert</em> is in your system PATH variable. This macro should be defined only if the ImageMagick's <em>convert</em> tool is not found automatically, when trying to read compressed image format (GIF,PNG,...). See also cimg_library::CImg::get_load_convert() and cimg_library::CImg::save_convert() for more informations.</li></ul> 264.146 +<p> 264.147 +<ul> 264.148 +<li><b><code>cimg_temporary_path</code> </b>: This variable tells the library where it can find a directory to store temporary files. Setting this variable should not be necessary if you are running on a standard system. This macro should be defined only when troubles are encountered when trying to read compressed image format (GIF,PNG,...). See also cimg_library::CImg::get_load_convert() and cimg_library::CImg::save_convert() for more informations.</li></ul> 264.149 +<p> 264.150 +<ul> 264.151 +<li><b><code>cimg_plugin</code> </b>: This variable tells the library to use a plugin file to add features to the CImg<T> class. Define it with the path of your plugin file, if you want to add member functions to the CImg<T> class, without having to modify directly the <code>"CImg.h"</code> file. An include of the plugin file is performed in the CImg<T> class. If <code>cimg_plugin</code> if not specified (default), no include is done.</li></ul> 264.152 +<p> 264.153 +<ul> 264.154 +<li><b><code>cimglist_plugin</code> </b>: Same as <code>cimg_plugin</code>, but to add features to the CImgList<T> class.</li></ul> 264.155 +<p> 264.156 +<ul> 264.157 +<li><b><code>cimgdisplay_plugin</code> </b>: Same as <code>cimg_plugin</code>, but to add features to the CImgDisplay<T> class.</li></ul> 264.158 +<p> 264.159 +All these compilation variables can be checked, using the function <a class="el" href="namespacecimg__library_1_1cimg.html#c1b66fe77173de9e5e8542b2823d6071" title="Print informations about CImg environement variables.">cimg_library::cimg::info()</a>, which displays a list of the different configuration variables and their values on the standard error output. </div> 264.160 +<hr noshade="noshade" size="1" width="100%"> 264.161 +<a href="http://sourceforge.net"> 264.162 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 264.163 +</a> 264.164 +<!-- Start of StatCounter Code --> 264.165 +<script type="text/javascript" language="javascript"> 264.166 +<!-- 264.167 +var sc_project=895001; 264.168 +var sc_invisible=1; 264.169 +var sc_partition=7; 264.170 +var sc_security="5ea85181"; 264.171 +//--> 264.172 +</script> 264.173 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 264.174 +<!-- End of StatCounter Code --> 264.175 +</body> 264.176 +</html>
265.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 265.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__faq.html Mon Aug 03 14:09:20 2009 +0100 265.3 @@ -0,0 +1,207 @@ 265.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 265.5 +<head> 265.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 265.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 265.8 +<meta content="David Tschumperle" name="author"></meta> 265.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 265.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 265.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 265.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 265.13 +<style type="text/css"> 265.14 +<!-- 265.15 +body {background-color:white; font-family:sans-serif; } 265.16 +a:active{text-decoration:none; color:#303090} 265.17 +a:link{text-decoration:none; color:#303090} 265.18 +a:visited{text-decoration:none; color:#303090} 265.19 +a:hover{text-decoration:underline; color:#4E9F71} 265.20 +--> 265.21 +</style> 265.22 +<script language="JavaScript" type="text/javascript"> 265.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 265.24 + <!-- Web Site: http://redrival.com/eak/ --> 265.25 + <!-- This script and many more are available free online at --> 265.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 265.27 + <!-- Begin 265.28 + function NewWindow(mypage, myname, w, h, scroll) { 265.29 + var winl = (screen.width - w) / 2; 265.30 + var wint = (screen.height - h) / 2; 265.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 265.32 + win = window.open(mypage, myname, winprops) 265.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 265.34 + } 265.35 + // End --> 265.36 +</script> 265.37 +</head> 265.38 +<body> 265.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 265.40 + <tbody><tr><td> 265.41 + <hr noshade="noshade" size="1" width="90%"></hr> 265.42 + <center> 265.43 + <br/> 265.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 265.45 + <br/> 265.46 + </center> 265.47 + <hr noshade="noshade" size="1" width="90%"></hr> 265.48 + <center> 265.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 265.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 265.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 265.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 265.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 265.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 265.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 265.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 265.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 265.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 265.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 265.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 265.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 265.62 + </font> 265.63 + </td></tr></tbody> 265.64 + </table> 265.65 + </center> 265.66 + <hr noshade="noshade" size="1" width="90%"></hr> 265.67 + </td></tr></tbody> 265.68 +</table> 265.69 +<!-- Generated by Doxygen 1.5.7.1 --> 265.70 +<script type="text/javascript"> 265.71 +<!-- 265.72 +function changeDisplayState (e){ 265.73 + var num=this.id.replace(/[^[0-9]/g,''); 265.74 + var button=this.firstChild; 265.75 + var sectionDiv=document.getElementById('dynsection'+num); 265.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 265.77 + sectionDiv.style.display='block'; 265.78 + button.src='open.gif'; 265.79 + }else{ 265.80 + sectionDiv.style.display='none'; 265.81 + button.src='closed.gif'; 265.82 + } 265.83 +} 265.84 +function initDynSections(){ 265.85 + var divs=document.getElementsByTagName('div'); 265.86 + var sectionCounter=1; 265.87 + for(var i=0;i<divs.length-1;i++){ 265.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 265.89 + var header=divs[i]; 265.90 + var section=divs[i+1]; 265.91 + var button=header.firstChild; 265.92 + if (button!='IMG'){ 265.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 265.94 + button=document.createElement('img'); 265.95 + divs[i].insertBefore(button,divs[i].firstChild); 265.96 + } 265.97 + header.style.cursor='pointer'; 265.98 + header.onclick=changeDisplayState; 265.99 + header.id='dynheader'+sectionCounter; 265.100 + button.src='closed.gif'; 265.101 + section.id='dynsection'+sectionCounter; 265.102 + section.style.display='none'; 265.103 + section.style.marginLeft='14px'; 265.104 + sectionCounter++; 265.105 + } 265.106 + } 265.107 +} 265.108 +window.onload = initDynSections; 265.109 +--> 265.110 +</script> 265.111 +<div class="navigation" id="top"> 265.112 + <div class="tabs"> 265.113 + <ul> 265.114 + <li><a href="index.html"><span>Main Page</span></a></li> 265.115 + <li><a href="modules.html"><span>Modules</span></a></li> 265.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 265.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 265.118 + </ul> 265.119 + </div> 265.120 +</div> 265.121 +<div class="contents"> 265.122 +<h1>FAQ : Frequently Asked Questions.</h1><table border="0" cellpadding="0" cellspacing="0"> 265.123 +<tr><td></td></tr> 265.124 +</table> 265.125 +<h2><a class="anchor" name="ssf0"> 265.126 +FAQ Summary</a></h2> 265.127 +<ul> 265.128 +<li><a href="#sf1">General information and availability</a><ul> 265.129 +<li><a href="#ssf11">What is the CImg Library ?</a></li><li><a href="#ssf12">What platforms are supported ?</a></li><li><a href="#ssf13">How is CImg distributed ?</a></li><li><a href="#ssf14">What kind of people are concerned by CImg ?</a></li><li><a href="#ssf15">What are the specificities of the CeCILL license ?</a></li><li><a href="#ssf16">Who is behind CImg ?</a></li></ul> 265.130 +</li></ul> 265.131 +<p> 265.132 +<ul> 265.133 +<li><a href="#sf2">C++ related questions</a><ul> 265.134 +<li><a href="#ssf21">What is the level of C++ knowledge needed to use CImg ?</a></li><li><a href="#ssf22">How to use CImg in my own C++ program ?</a></li><li><a href="#ssf23">Why is CImg entirely contained in a single header file ?</a></li></ul> 265.135 +</li></ul> 265.136 +<h2><a class="anchor" name="sf1"> 265.137 +1. General information and availability</a></h2> 265.138 +<h3><a class="anchor" name="ssf11"> 265.139 +1.1. What is the CImg Library ?</a></h3> 265.140 +The CImg Library is an <em>open-source C++ toolkit for image processing</em>.<br> 265.141 +<p> 265.142 +It mainly consists in a (big) single header file <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> providing a set of C++ classes and functions that can be used in your own sources, to load/save, manage/process and display generic images. It's actually a very simple and pleasant toolkit for coding image processing stuffs in C++ : Just include the header file <em>CImg.h</em>, and you are ready to handle images in your C++ programs.<h3><a class="anchor" name="ssf12"> 265.143 +1.2. What platforms are supported ?</a></h3> 265.144 +CImg has been designed with <em>portability</em> in mind. It is regularly tested on different architectures and compilers, and should also work on any decent OS having a decent C++ compiler. Before each release, the CImg Library is compiled under these different configurations : <ul> 265.145 +<li>PC Linux 32 bits, with g++. </li> 265.146 +<li>PC Windows 32 bits, with Visual C++ 6.0. </li> 265.147 +<li>PC Windows 32 bits, with Visual C++ Express Edition. </li> 265.148 +<li>Sun SPARC Solaris 32 bits, with g++. </li> 265.149 +<li>Mac PPC with OS X and g++.</li> 265.150 +</ul> 265.151 +CImg has a minimal number of dependencies. In its minimal version, it can be compiled only with standard C++ headers. Anyway, it has interesting extension capabilities and can use external libraries to perform specific tasks more efficiently (Fourier Transform computation using FFTW for instance).<h3><a class="anchor" name="ssf13"> 265.152 +1.3. How is CImg distributed ?</a></h3> 265.153 +The CImg Library is freely distributed as a complete .zip compressed package, hosted at the <a href="http://sourceforge.net/project/showfiles.php?group_id=96492">Sourceforge servers</a>.<br> 265.154 + The package is distributed under the <a href="http://www.cecill.info">CeCILL license</a>.<p> 265.155 +This package contains :<ul> 265.156 +<li>The main library file <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> (C++ header file).</li><li>Several C++ source code showing <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/">examples of using CImg</a>.</li><li>A complete library documentation, in <a href="index.html">HTML</a> and <a href="../CImg_reference.pdf">PDF</a> formats.</li><li>Additional <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/plugins/">library plug-ins</a> that can be used to extend library capabilities for specific uses.</li></ul> 265.157 +<p> 265.158 +The CImg Library is a quite lightweight library which is easy to maintain (due to its particular structure), and thus has a fast rythm of release. A new version of the CImg package is released approximately every three months.<h3><a class="anchor" name="ssf14"> 265.159 +1.4. What kind of people are concerned by CImg ?</a></h3> 265.160 +The CImg library is an <em>image processing</em> library, primarily intended for computer scientists or students working in the fields of image processing or computer vision, and knowing bases of C++. As the library is handy and really easy to use, it can be also used by any programmer needing occasional tools for dealing with images in C++, since there are no standard library yet for this purpose.<h3><a class="anchor" name="ssf15"> 265.161 +1.5. What are the specificities of the CeCILL license ?</a></h3> 265.162 +The <a href="http://www.cecill.info">CeCILL license</a> governs the use of the CImg Library. This is an <em>open-source</em> license which gives you rights to access, use, modify and redistribute the source code, under certains conditions. There are two different variants of the CeCILL license used in CImg (namely <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> and <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a>, all open-source), corresponding to different constraints on the source files :<ul> 265.163 +<li>The <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> license is the most permissive one, close to the <em>GNU LGPL license</em>, and <em>applies <b>only</b> on the main library file <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a></em>. Basically, this license allows to use <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> in a closed-source product without forcing you to redistribute the entire software source code. Anyway, if one modifies the <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a> source file, one has to redistribute the modified version of the file that must be governed by the same <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> license.</li></ul> 265.164 +<p> 265.165 +<ul> 265.166 +<li>The <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> license applies to all other files (source examples, plug-ins and documentation) of the CImg Library package, and is close (even <em>compatible</em>) with the <em>GNU GPL license</em>. It <em>does not allow</em> the use of these files in closed-source products.</li></ul> 265.167 +<p> 265.168 +You are invited to read the complete descriptions of the the <a href="http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html">CeCILL-C</a> and <a href="http://www.cecill.info/licences/Licence_CeCILL_V2-en.html">CeCILL</a> licenses before releasing a software based on the CImg Library.<h3><a class="anchor" name="ssf16"> 265.169 +1.6. Who is behind CImg ?</a></h3> 265.170 +CImg has been started by <a href="http://www.greyc.ensicaen.fr/~dtschump/">David Tschumperle</a> at the beginning of his PhD thesis, in October 1999. He is still the main coordinator of the project. Since the first release at Sourceforge, a growing number of contributors has appeared. Due to the very simple and compact form of the library, submitting a contribution is quite easy and can be fastly integrated into the supported releases. List of contributors can be found on the front page.<h2><a class="anchor" name="sf2"> 265.171 +2. C++ related questions</a></h2> 265.172 +<h3><a class="anchor" name="ssf21"> 265.173 +2.1 What is the level of C++ knowledge needed to use CImg ?</a></h3> 265.174 +The CImg Library has been designed using C++ templates and object-oriented programming techniques, but in a very accessible level. There are only public classes without any derivation (just like C structures) and there is at most one template parameter for each CImg class (defining the pixel type of the images). The design is simple but clean, making the library accessible even for non professional C++ programmers, while proposing strong extension capabilities for C++ experts.<h3><a class="anchor" name="ssf22"> 265.175 +2.2 How to use CImg in my own C++ program ?</a></h3> 265.176 +Basically, you need to add these two lines in your C++ source code, in order to be able to work with CImg images : <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 265.177 + <span class="keyword">using namespace </span>cimg_library; 265.178 +</pre></div><h3><a class="anchor" name="ssf23"> 265.179 +2.3 Why is CImg entirely contained in a single header file ?</a></h3> 265.180 +People are often surprised to see that the complete code of the library is contained in a single (big) C++ header file <a href="http://cimg.cvs.sourceforge.net/cimg/CImg/CImg.h?view=markup">CImg.h</a>. There are good practical and technical reasons to do that. Some arguments are listed below to justify this approach, so (I hope) you won't think this is a awkwardly C++ design of the CImg library :<br> 265.181 +<p> 265.182 +<ul> 265.183 +<li>First, the library is based on <em>template datatypes</em> (images with generic pixel type), meaning that the programmer is free to decide what type of image he instanciates in his code. Even if there are roughly a limited number of fully supported types (basically, the "atomic" types of C++ : <em>unsigned char, int, float, ...</em>), this is <em>not imaginable</em> to pre-compile the library classes and functions for <em>all possible atomic datatypes</em>, since many functions and methods can have two or three arguments having different template parameters. This really means <em>a huge number</em> of possible combinations. The size of the object binary file generated to cover all possible cases would be just <em>colossal</em>. Is the STL library a pre-compiled one ? No, CImg neither. CImg is not using a classical <em>.cpp</em> and <em>.h</em> mechanism, just like the STL. Architectures of C++ <em>template-based</em> libraries are somewhat special in this sense. This is a proven technical fact.</li></ul> 265.184 +<p> 265.185 +<ul> 265.186 +<li>Second, why CImg does not have several header files, just like the STL does (one for each class for instance) ? This would be possible of course. There are only 4 classes in CImg, the two most important being <em>CImg<T></em> and <em>CImgList<T></em> representing respectively an image and a collection of images. But contrary to the STL library, these two CImg classes are strongly <em>inter-dependent</em>. All CImg algorithms are actually not defined as separate functions acting on containers (as the STL does with his header <algorithm>), but are directly methods of the image and image collection classes. This inter-dependence practically means that you will undoubtly need these two main classes at the same time if you are using CImg. If they were defined in separate header files, you would be forced to include both of them. What is the gain then ? No gain.<br> 265.187 + Concerning the two other classes : You can disable the third most important class <em>CImgDisplay</em> of the CImg library, by setting the compilation macro <em>cimg_display</em> to 0, avoiding thus to compile this class if you don't use display capabilities of CImg in your code. But to be honest, this is a quite small class and doing this doesn't save much compilation time. The last and fourth class is <em>CImgException</em>, which is only few lines long and is obviously required in almost all methods of CImg. Including this one is <em>mandatory</em>.<br> 265.188 + As a consequence, having a single header file instead of several ones is just a way for you to avoid including all of them, without any consequences on compilation time. This is both good technical and practical reasons to do like this.</li></ul> 265.189 +<p> 265.190 +<ul> 265.191 +<li>Third, having a single header file has plenty of advantages : Simplicity for the user, and for the developers (maintenance is in fact easier). Look at the <em>CImg.h</em> file, it looks like a mess at a first glance, but it is in fact very well organized and structured. Finding pieces of code in CImg functions or methods is particularly easy and fast. Also, how about the fact that library installation problems just disappear ? Just bring <em>CImg.h</em> with you, put it in your source directory, and the library is ready to go !</li></ul> 265.192 +<p> 265.193 +I admit the compilation time of CImg-based programs can be sometime long, but don't think that it is due to the fact that you are using a single header file. Using several header files wouldn't arrange anything since you would need all of them. Having a pre-compiled library object would be the only solution to speed up compilation time, but it is not possible at all, due to the too much generic nature of the library. Think seriously about it, and if you have a better solution to provide, let me know so we can discuss about it. </div> 265.194 +<hr noshade="noshade" size="1" width="100%"> 265.195 +<a href="http://sourceforge.net"> 265.196 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 265.197 +</a> 265.198 +<!-- Start of StatCounter Code --> 265.199 +<script type="text/javascript" language="javascript"> 265.200 +<!-- 265.201 +var sc_project=895001; 265.202 +var sc_invisible=1; 265.203 +var sc_partition=7; 265.204 +var sc_security="5ea85181"; 265.205 +//--> 265.206 +</script> 265.207 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 265.208 +<!-- End of StatCounter Code --> 265.209 +</body> 265.210 +</html>
266.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 266.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__files__io.html Mon Aug 03 14:09:20 2009 +0100 266.3 @@ -0,0 +1,142 @@ 266.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 266.5 +<head> 266.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 266.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 266.8 +<meta content="David Tschumperle" name="author"></meta> 266.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 266.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 266.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 266.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 266.13 +<style type="text/css"> 266.14 +<!-- 266.15 +body {background-color:white; font-family:sans-serif; } 266.16 +a:active{text-decoration:none; color:#303090} 266.17 +a:link{text-decoration:none; color:#303090} 266.18 +a:visited{text-decoration:none; color:#303090} 266.19 +a:hover{text-decoration:underline; color:#4E9F71} 266.20 +--> 266.21 +</style> 266.22 +<script language="JavaScript" type="text/javascript"> 266.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 266.24 + <!-- Web Site: http://redrival.com/eak/ --> 266.25 + <!-- This script and many more are available free online at --> 266.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 266.27 + <!-- Begin 266.28 + function NewWindow(mypage, myname, w, h, scroll) { 266.29 + var winl = (screen.width - w) / 2; 266.30 + var wint = (screen.height - h) / 2; 266.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 266.32 + win = window.open(mypage, myname, winprops) 266.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 266.34 + } 266.35 + // End --> 266.36 +</script> 266.37 +</head> 266.38 +<body> 266.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 266.40 + <tbody><tr><td> 266.41 + <hr noshade="noshade" size="1" width="90%"></hr> 266.42 + <center> 266.43 + <br/> 266.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 266.45 + <br/> 266.46 + </center> 266.47 + <hr noshade="noshade" size="1" width="90%"></hr> 266.48 + <center> 266.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 266.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 266.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 266.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 266.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 266.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 266.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 266.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 266.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 266.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 266.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 266.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 266.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 266.62 + </font> 266.63 + </td></tr></tbody> 266.64 + </table> 266.65 + </center> 266.66 + <hr noshade="noshade" size="1" width="90%"></hr> 266.67 + </td></tr></tbody> 266.68 +</table> 266.69 +<!-- Generated by Doxygen 1.5.7.1 --> 266.70 +<script type="text/javascript"> 266.71 +<!-- 266.72 +function changeDisplayState (e){ 266.73 + var num=this.id.replace(/[^[0-9]/g,''); 266.74 + var button=this.firstChild; 266.75 + var sectionDiv=document.getElementById('dynsection'+num); 266.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 266.77 + sectionDiv.style.display='block'; 266.78 + button.src='open.gif'; 266.79 + }else{ 266.80 + sectionDiv.style.display='none'; 266.81 + button.src='closed.gif'; 266.82 + } 266.83 +} 266.84 +function initDynSections(){ 266.85 + var divs=document.getElementsByTagName('div'); 266.86 + var sectionCounter=1; 266.87 + for(var i=0;i<divs.length-1;i++){ 266.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 266.89 + var header=divs[i]; 266.90 + var section=divs[i+1]; 266.91 + var button=header.firstChild; 266.92 + if (button!='IMG'){ 266.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 266.94 + button=document.createElement('img'); 266.95 + divs[i].insertBefore(button,divs[i].firstChild); 266.96 + } 266.97 + header.style.cursor='pointer'; 266.98 + header.onclick=changeDisplayState; 266.99 + header.id='dynheader'+sectionCounter; 266.100 + button.src='closed.gif'; 266.101 + section.id='dynsection'+sectionCounter; 266.102 + section.style.display='none'; 266.103 + section.style.marginLeft='14px'; 266.104 + sectionCounter++; 266.105 + } 266.106 + } 266.107 +} 266.108 +window.onload = initDynSections; 266.109 +--> 266.110 +</script> 266.111 +<div class="navigation" id="top"> 266.112 + <div class="tabs"> 266.113 + <ul> 266.114 + <li><a href="index.html"><span>Main Page</span></a></li> 266.115 + <li><a href="modules.html"><span>Modules</span></a></li> 266.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 266.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 266.118 + </ul> 266.119 + </div> 266.120 +</div> 266.121 +<div class="contents"> 266.122 +<h1>Files IO in CImg.</h1><table border="0" cellpadding="0" cellspacing="0"> 266.123 +<tr><td></td></tr> 266.124 +</table> 266.125 +The CImg Library can NATIVELY handle the following file formats :<ul> 266.126 +<li>RAW : consists in a very simple header (in ascii), then the image data.</li><li>ASC (Ascii)</li><li>HDR (Analyze 7.5)</li><li>INR (Inrimage)</li><li>PPM/PGM (Portable Pixmap)</li><li>BMP (uncompressed)</li><li>PAN (Pandore-5)</li><li>DLM (Matlab ASCII)</li></ul> 266.127 +<p> 266.128 +If ImageMagick is installed, The CImg Library can save image in formats handled by ImageMagick : JPG, GIF, PNG, TIF,... </div> 266.129 +<hr noshade="noshade" size="1" width="100%"> 266.130 +<a href="http://sourceforge.net"> 266.131 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 266.132 +</a> 266.133 +<!-- Start of StatCounter Code --> 266.134 +<script type="text/javascript" language="javascript"> 266.135 +<!-- 266.136 +var sc_project=895001; 266.137 +var sc_invisible=1; 266.138 +var sc_partition=7; 266.139 +var sc_security="5ea85181"; 266.140 +//--> 266.141 +</script> 266.142 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 266.143 +<!-- End of StatCounter Code --> 266.144 +</body> 266.145 +</html>
267.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 267.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__loops.html Mon Aug 03 14:09:20 2009 +0100 267.3 @@ -0,0 +1,242 @@ 267.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 267.5 +<head> 267.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 267.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 267.8 +<meta content="David Tschumperle" name="author"></meta> 267.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 267.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 267.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 267.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 267.13 +<style type="text/css"> 267.14 +<!-- 267.15 +body {background-color:white; font-family:sans-serif; } 267.16 +a:active{text-decoration:none; color:#303090} 267.17 +a:link{text-decoration:none; color:#303090} 267.18 +a:visited{text-decoration:none; color:#303090} 267.19 +a:hover{text-decoration:underline; color:#4E9F71} 267.20 +--> 267.21 +</style> 267.22 +<script language="JavaScript" type="text/javascript"> 267.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 267.24 + <!-- Web Site: http://redrival.com/eak/ --> 267.25 + <!-- This script and many more are available free online at --> 267.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 267.27 + <!-- Begin 267.28 + function NewWindow(mypage, myname, w, h, scroll) { 267.29 + var winl = (screen.width - w) / 2; 267.30 + var wint = (screen.height - h) / 2; 267.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 267.32 + win = window.open(mypage, myname, winprops) 267.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 267.34 + } 267.35 + // End --> 267.36 +</script> 267.37 +</head> 267.38 +<body> 267.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 267.40 + <tbody><tr><td> 267.41 + <hr noshade="noshade" size="1" width="90%"></hr> 267.42 + <center> 267.43 + <br/> 267.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 267.45 + <br/> 267.46 + </center> 267.47 + <hr noshade="noshade" size="1" width="90%"></hr> 267.48 + <center> 267.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 267.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 267.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 267.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 267.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 267.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 267.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 267.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 267.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 267.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 267.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 267.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 267.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 267.62 + </font> 267.63 + </td></tr></tbody> 267.64 + </table> 267.65 + </center> 267.66 + <hr noshade="noshade" size="1" width="90%"></hr> 267.67 + </td></tr></tbody> 267.68 +</table> 267.69 +<!-- Generated by Doxygen 1.5.7.1 --> 267.70 +<script type="text/javascript"> 267.71 +<!-- 267.72 +function changeDisplayState (e){ 267.73 + var num=this.id.replace(/[^[0-9]/g,''); 267.74 + var button=this.firstChild; 267.75 + var sectionDiv=document.getElementById('dynsection'+num); 267.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 267.77 + sectionDiv.style.display='block'; 267.78 + button.src='open.gif'; 267.79 + }else{ 267.80 + sectionDiv.style.display='none'; 267.81 + button.src='closed.gif'; 267.82 + } 267.83 +} 267.84 +function initDynSections(){ 267.85 + var divs=document.getElementsByTagName('div'); 267.86 + var sectionCounter=1; 267.87 + for(var i=0;i<divs.length-1;i++){ 267.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 267.89 + var header=divs[i]; 267.90 + var section=divs[i+1]; 267.91 + var button=header.firstChild; 267.92 + if (button!='IMG'){ 267.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 267.94 + button=document.createElement('img'); 267.95 + divs[i].insertBefore(button,divs[i].firstChild); 267.96 + } 267.97 + header.style.cursor='pointer'; 267.98 + header.onclick=changeDisplayState; 267.99 + header.id='dynheader'+sectionCounter; 267.100 + button.src='closed.gif'; 267.101 + section.id='dynsection'+sectionCounter; 267.102 + section.style.display='none'; 267.103 + section.style.marginLeft='14px'; 267.104 + sectionCounter++; 267.105 + } 267.106 + } 267.107 +} 267.108 +window.onload = initDynSections; 267.109 +--> 267.110 +</script> 267.111 +<div class="navigation" id="top"> 267.112 + <div class="tabs"> 267.113 + <ul> 267.114 + <li><a href="index.html"><span>Main Page</span></a></li> 267.115 + <li><a href="modules.html"><span>Modules</span></a></li> 267.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 267.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 267.118 + </ul> 267.119 + </div> 267.120 +</div> 267.121 +<div class="contents"> 267.122 +<h1>Using Image Loops.</h1><table border="0" cellpadding="0" cellspacing="0"> 267.123 +<tr><td></td></tr> 267.124 +</table> 267.125 +The CImg Library provides different macros that define useful iterative loops over an image. Basically, it can be used to replace one or several <code>for(..)</code> instructions, but it also proposes interesting extensions to classical loops. Below is a list of all existing loop macros, classified in four different categories :<ul> 267.126 +<li><a class="el" href="group__cimg__loops.html#lo1">Loops over the pixel buffer</a></li><li><a class="el" href="group__cimg__loops.html#lo4">Loops over image dimensions</a></li><li><a class="el" href="group__cimg__loops.html#lo5">Loops over interior regions and borders.</a></li><li><a class="el" href="group__cimg__loops.html#lo6">Loops using neighborhoods.</a></li></ul> 267.127 +<h2><a class="anchor" name="lo1"> 267.128 +Loops over the pixel buffer</a></h2> 267.129 +Loops over the pixel buffer are really basic loops that iterate a pointer on the pixel data buffer of a <code><a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">cimg_library::CImg</a></code> image. Two macros are defined for this purpose :<p> 267.130 +<ul> 267.131 +<li><b>cimg_for(img,ptr,T)</b> : This macro loops over the pixel data buffer of the image <code>img</code>, using a pointer <code>T* ptr</code>, starting from the end of the buffer (last pixel) till the beginning of the buffer (first pixel).<ul> 267.132 +<li><code>img</code> must be a (non empty) <code><a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">cimg_library::CImg</a></code> image of pixels <code>T</code>.</li><li><code>ptr</code> is a pointer of type <code>T*</code>. This kind of loop should not appear a lot in your own source code, since this is a low-level loop and many functions of the CImg class may be used instead. Here is an example of use : <div class="fragment"><pre class="fragment"> CImg<float> img(320,200); 267.133 + cimg_for(img,ptr,<span class="keywordtype">float</span>) { *ptr=0; } <span class="comment">// Equivalent to 'img.fill(0);'</span> 267.134 +</pre></div></li></ul> 267.135 +</li></ul> 267.136 +<p> 267.137 +<ul> 267.138 +<li><b>cimg_foroff(img,off)</b> : This macro loops over the pixel data buffer of the image <code>img</code>, using an offset <code></code>, starting from the beginning of the buffer (first pixel, <code>off=0</code>) till the end of the buffer (last pixel value, <code>off = img.size()-1</code>).<ul> 267.139 +<li><code>img</code> must be a (non empty) cimg_library::CImg<T> image of pixels <code>T</code>.</li><li><code>off</code> is an inner-loop variable, only defined inside the scope of the loop.</li></ul> 267.140 +</li></ul> 267.141 +<p> 267.142 +Here is an example of use : <div class="fragment"><pre class="fragment"> CImg<float> img(320,200); 267.143 + cimg_foroff(img,off) { img[off]=0; } <span class="comment">// Equivalent to 'img.fill(0);'</span> 267.144 +</pre></div><h2><a class="anchor" name="lo4"> 267.145 +Loops over image dimensions</a></h2> 267.146 +The following loops are probably the most used loops in image processing programs. They allow to loop over the image along one or several dimensions, along a raster scan course. Here is the list of such loop macros for a single dimension :<ul> 267.147 +<li><b>cimg_forX(img,x)</b> : equivalent to : <code>for (int x=0; x<img.dimx(); x++)</code>.</li><li><b>cimg_forY(img,y)</b> : equivalent to : <code>for (int y=0; y<img.dimy(); y++)</code>.</li><li><b>cimg_forZ(img,z)</b> : equivalent to : <code>for (int z=0; z<img.dimz(); z++)</code>.</li><li><b>cimg_forV(img,v)</b> : equivalent to : <code>for (int v=0; v<img.dimv(); v++)</code>.</li></ul> 267.148 +<p> 267.149 +Combinations of these macros are also defined as other loop macros, allowing to loop directly over 2D, 3D or 4D images :<ul> 267.150 +<li><b>cimg_forXY(img,x,y)</b> : equivalent to : <code>cimg_forY(img,y)</code> <code>cimg_forX(img,x)</code>.</li><li><b>cimg_forXZ(img,x,z)</b> : equivalent to : <code>cimg_forZ(img,z)</code> <code>cimg_forX(img,x)</code>.</li><li><b>cimg_forYZ(img,y,z)</b> : equivalent to : <code>cimg_forZ(img,z)</code> <code>cimg_forY(img,y)</code>.</li><li><b>cimg_forXV(img,x,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forX(img,x)</code>.</li><li><b>cimg_forYV(img,y,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forY(img,y)</code>.</li><li><b>cimg_forZV(img,z,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forZ(img,z)</code>.</li><li><b>cimg_forXYZ(img,x,y,z)</b> : equivalent to : <code>cimg_forZ(img,z)</code> <code>cimg_forXY(img,x,y)</code>.</li><li><b>cimg_forXYV(img,x,y,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forXY(img,x,y)</code>.</li><li><b>cimg_forXZV(img,x,z,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forXZ(img,x,z)</code>.</li><li><b>cimg_forYZV(img,y,z,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forYZ(img,y,z)</code>.</li><li><b>cimg_forXYZV(img,x,y,z,v)</b> : equivalent to : <code>cimg_forV(img,v)</code> <code>cimg_forXYZ(img,x,y,z)</code>.</li></ul> 267.151 +<p> 267.152 +<ul> 267.153 +<li>For all these loops, <code>x</code>,<code>y</code>,<code>z</code> and <code>v</code> are inner-defined variables only visible inside the scope of the loop. They don't have to be defined before the call of the macro.</li><li><code>img</code> must be a (non empty) <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">cimg_library::CImg</a> image.</li></ul> 267.154 +<p> 267.155 +Here is an example of use that creates an image with a smooth color gradient : <div class="fragment"><pre class="fragment"> CImg<unsigned char> img(256,256,1,3); <span class="comment">// Define a 256x256 color image</span> 267.156 + cimg_forXYV(img,x,y,v) { img(x,y,v) = (x+y)*(v+1)/6; } 267.157 + img.display(<span class="stringliteral">"Color gradient"</span>); 267.158 +</pre></div><h2><a class="anchor" name="lo5"> 267.159 +Loops over interior regions and borders.</a></h2> 267.160 +Similar macros are also defined to loop only on the border of an image, or inside the image (excluding the border). The border may be several pixel wide :<p> 267.161 +<ul> 267.162 +<li><b>cimg_for_insideX(img,x,n)</b> : Loop along the x-axis, except for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_insideY(img,y,n)</b> : Loop along the y-axis, except for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_insideZ(img,z,n)</b> : Loop along the z-axis, except for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_insideV(img,v,n)</b> : Loop along the v-axis, except for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_insideXY(img,x,y,n)</b> : Loop along the (x,y)-axes, excepted for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_insideXYZ(img,x,y,z,n)</b> : Loop along the (x,y,z)-axes, excepted for pixels inside a border of <code>n</code> pixels wide.</li></ul> 267.163 +<p> 267.164 +And also :<p> 267.165 +<ul> 267.166 +<li><b>cimg_for_borderX(img,x,n)</b> : Loop along the x-axis, only for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_borderY(img,y,n)</b> : Loop along the y-axis, only for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_borderZ(img,z,n)</b> : Loop along the z-axis, only for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_borderV(img,v,n)</b> : Loop along the z-axis, only for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_borderXY(img,x,y,n)</b> : Loop along the (x,y)-axes, only for pixels inside a border of <code>n</code> pixels wide.</li><li><b>cimg_for_borderXYZ(img,x,y,z,n)</b> : Loop along the (x,y,z)-axes, only for pixels inside a border of <code>n</code> pixels wide.</li></ul> 267.167 +<p> 267.168 +<ul> 267.169 +<li>For all these loops, <code>x</code>,<code>y</code>,<code>z</code> and <code>v</code> are inner-defined variables only visible inside the scope of the loop. They don't have to be defined before the call of the macro.</li><li><code>img</code> must be a (non empty) <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">cimg_library::CImg</a> image.</li><li>The constant <code>n</code> stands for the size of the border.</li></ul> 267.170 +<p> 267.171 +Here is an example of use, to create a 2d grayscale image with two different intensity gradients : <div class="fragment"><pre class="fragment"> CImg<> img(256,256); 267.172 + cimg_for_insideXY(img,x,y,50) img(x,y) = x+y; 267.173 + cimg_for_borderXY(img,x,y,50) img(x,y) = x-y; 267.174 + img.display(); 267.175 +</pre></div><h2><a class="anchor" name="lo6"> 267.176 +Loops using neighborhoods.</a></h2> 267.177 +Inside an image loop, it is often useful to get values of neighborhood pixels of the current pixel at the loop location. The CImg Library provides a very smart and fast mechanism for this purpose, with the definition of several loop macros that remember the neighborhood values of the pixels. The use of these macros can highly optimize your code, and also simplify your program.<h3><a class="anchor" name="lo7"> 267.178 +Neighborhood-based loops for 2D images</a></h3> 267.179 +For 2D images, the neighborhood-based loop macros are :<p> 267.180 +<ul> 267.181 +<li><b>cimg_for2x2(img,x,y,z,v,I)</b> : Loop along the (x,y)-axes using a centered 2x2 neighborhood.</li><li><b>cimg_for3x3(img,x,y,z,v,I)</b> : Loop along the (x,y)-axes using a centered 3x3 neighborhood.</li><li><b>cimg_for4x4(img,x,y,z,v,I)</b> : Loop along the (x,y)-axes using a centered 4x4 neighborhood.</li><li><b>cimg_for5x5(img,x,y,z,v,I)</b> : Loop along the (x,y)-axes using a centered 5x5 neighborhood.</li></ul> 267.182 +<p> 267.183 +For all these loops, <code>x</code> and <code>y</code> are inner-defined variables only visible inside the scope of the loop. They don't have to be defined before the call of the macro. <code>img</code> is a non empty CImg<T> image. <code>z</code> and <code>v</code> are constants that define on which image slice and vector channel the loop must apply (usually both 0 for grayscale 2D images). Finally, <code>I</code> is the 2x2, 3x3, 4x4 or 5x5 neighborhood that will be updated with the correct pixel values during the loop (see <a class="el" href="group__cimg__loops.html#lo9">Defining neighborhoods</a>).<h3><a class="anchor" name="lo8"> 267.184 +Neighborhood-based loops for 3D images</a></h3> 267.185 +For 3D images, the neighborhood-based loop macros are :<p> 267.186 +<ul> 267.187 +<li><b>cimg_for2x2x2(img,x,y,z,v,I)</b> : Loop along the (x,y,z)-axes using a centered 2x2x2 neighborhood.</li><li><b>cimg_for3x3x3(img,x,y,z,v,I)</b> : Loop along the (x,y,z)-axes using a centered 3x3x3 neighborhood.</li></ul> 267.188 +<p> 267.189 +For all these loops, <code>x</code>, <code>y</code> and <code>z</code> are inner-defined variables only visible inside the scope of the loop. They don't have to be defined before the call of the macro. <code>img</code> is a non empty CImg<T> image. <code>v</code> is a constant that defines on which image channel the loop must apply (usually 0 for grayscale 3D images). Finally, <code>I</code> is the 2x2x2 or 3x3x3 neighborhood that will be updated with the correct pixel values during the loop (see <a class="el" href="group__cimg__loops.html#lo9">Defining neighborhoods</a>).<h3><a class="anchor" name="lo9"> 267.190 +Defining neighborhoods</a></h3> 267.191 +A neighborhood is defined as an instance of a class having operator[] defined. This particularly includes classical C-array, as well as CImg<T> objects.<p> 267.192 +For instance, a 3x3 neighborhood can be defined either as a 'float[9]' or a 'CImg<float>(3,3)' variable.<h3><a class="anchor" name="lo10"> 267.193 +Using alternate variable names</a></h3> 267.194 +There are also some useful macros that can be used to define variables that reference the neighborhood elements. There are :<p> 267.195 +<ul> 267.196 +<li><b>CImg_2x2(I,type)</b> : Define a 2x2 neighborhood named <code>I</code>, of type <code>type</code>.</li><li><b>CImg_3x3(I,type)</b> : Define a 3x3 neighborhood named <code>I</code>, of type <code>type</code>.</li><li><b>CImg_4x4(I,type)</b> : Define a 4x4 neighborhood named <code>I</code>, of type <code>type</code>.</li><li><b>CImg_5x5(I,type)</b> : Define a 5x5 neighborhood named <code>I</code>, of type <code>type</code>.</li><li><b>CImg_2x2x2(I,type)</b> : Define a 2x2x2 neighborhood named <code>I</code>, of type <code>type</code>.</li><li><b>CImg_3x3x3(I,type)</b> : Define a 3x3x3 neighborhood named <code>I</code>, of type <code>type</code>.</li></ul> 267.197 +<p> 267.198 +Actually, <code>I</code> is a <em>generic</em> <em>name</em> for the neighborhood. In fact, these macros declare a <em>set</em> of new variables. For instance, defining a 3x3 neighborhood <code>CImg_3x3(I,float)</code> declares 9 different float variables <code>Ipp</code>,<code>Icp</code>,<code>Inp</code>,<code>Ipc</code>,<code>Icc</code>,<code>Inc</code>,<code>Ipn</code>,<code>Icn</code>,<code>Inn</code> which correspond to each pixel value of a 3x3 neighborhood. Variable indices are <code>p</code>,<code>c</code> or <code>n</code>, and stand respectively for <em>'previous'</em>, <em>'current'</em> and <em>'next'</em>. First indice denotes the <code>x-axis</code>, second indice denotes the <code>y-axis</code>. Then, the names of the variables are directly related to the position of the corresponding pixels in the neighborhood. For 3D neighborhoods, a third indice denotes the <code>z-axis</code>. Then, inside a neighborhood loop, you will have the following equivalence :<ul> 267.199 +<li><code>Ipp = img(x-1,y-1)</code></li><li><code>Icn = img(x,y+1)</code></li><li><code>Inp = img(x+1,y-1)</code></li><li><code>Inpc = img(x+1,y-1,z)</code></li><li><code>Ippn = img(x-1,y-1,z+1)</code></li><li>and so on...</li></ul> 267.200 +<p> 267.201 +For bigger neighborhoods, such as 4x4 or 5x5 neighborhoods, two additionnal indices are introduced : <code>a</code> (stands for <em>'after'</em>) and <code>b</code> (stands for <em>'before'</em>), so that :<ul> 267.202 +<li><code>Ibb = img(x-2,y-2)</code></li><li><code>Ina = img(x+1,y+2)</code></li><li>and so on...</li></ul> 267.203 +<p> 267.204 +The value of a neighborhood pixel outside the image range (image border problem) is automatically set to the same values than the nearest valid pixel in the image (this is also called the <em>Neumann</em> <em>border</em> <em>condition</em>).<h3><a class="anchor" name="lo11"> 267.205 +Example codes</a></h3> 267.206 +More than a long discussion, the above example will demonstrate how to compute the gradient norm of a 3D volume using the <code>cimg_for3x3x3()</code> loop macro :<p> 267.207 +<div class="fragment"><pre class="fragment"> CImg<float> volume(<span class="stringliteral">"IRM.hdr"</span>); <span class="comment">// Load an IRM volume from an Analyze7.5 file</span> 267.208 + CImg_3x3x3(I,<span class="keywordtype">float</span>); <span class="comment">// Define a 3x3x3 neighborhood</span> 267.209 + CImg<float> gradnorm(volume); <span class="comment">// Create an image with same size as 'volume'</span> 267.210 + cimg_for3x3x3(volume,x,y,z,0,I) { <span class="comment">// Loop over the volume, using the neighborhood I</span> 267.211 + <span class="keyword">const</span> <span class="keywordtype">float</span> ix = 0.5f*(Incc-Ipcc); <span class="comment">// Compute the derivative along the x-axis.</span> 267.212 + <span class="keyword">const</span> <span class="keywordtype">float</span> iy = 0.5f*(Icnc-Icpc); <span class="comment">// Compute the derivative along the y-axis.</span> 267.213 + <span class="keyword">const</span> <span class="keywordtype">float</span> iz = 0.5f*(Iccn-Iccp); <span class="comment">// Compute the derivative along the z-axis.</span> 267.214 + gradnorm(x,y,z) = std::sqrt(ix*ix+iy*iy+iz*iz); <span class="comment">// Set the gradient norm in the destination image</span> 267.215 + } 267.216 + gradnorm.display(<span class="stringliteral">"Gradient norm"</span>); 267.217 +</pre></div><p> 267.218 +And the following example shows how to deal with neighborhood references to blur a color image by averaging pixel values on a 5x5 neighborhood.<p> 267.219 +<div class="fragment"><pre class="fragment"> CImg<unsigned char> src(<span class="stringliteral">"image_color.jpg"</span>), dest(src,<span class="keyword">false</span>), neighbor(5,5); <span class="comment">// Image definitions.</span> 267.220 + <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> uchar; <span class="comment">// Avoid space in the second parameter of the macro CImg_5x5x1 below.</span> 267.221 + CImg<> N(5,5); <span class="comment">// Define a 5x5 neighborhood as a 5x5 image.</span> 267.222 + cimg_forV(src,k) <span class="comment">// Standard loop on color channels</span> 267.223 + cimg_for5x5(src,x,y,0,k,N) <span class="comment">// 5x5 neighborhood loop.</span> 267.224 + dest(x,y,k) = N.sum()/(5*5); <span class="comment">// Averaging pixels to filter the color image.</span> 267.225 + CImgList<<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>> visu(src,dest); 267.226 + visu.display("Original + Filtered"); <span class="comment">// Display both original and filtered image.</span> 267.227 +</pre></div><p> 267.228 +As you can see, explaining the use of the CImg neighborhood macros is actually more difficult than using them ! </div> 267.229 +<hr noshade="noshade" size="1" width="100%"> 267.230 +<a href="http://sourceforge.net"> 267.231 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 267.232 +</a> 267.233 +<!-- Start of StatCounter Code --> 267.234 +<script type="text/javascript" language="javascript"> 267.235 +<!-- 267.236 +var sc_project=895001; 267.237 +var sc_invisible=1; 267.238 +var sc_partition=7; 267.239 +var sc_security="5ea85181"; 267.240 +//--> 267.241 +</script> 267.242 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 267.243 +<!-- End of StatCounter Code --> 267.244 +</body> 267.245 +</html>
268.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 268.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__options.html Mon Aug 03 14:09:20 2009 +0100 268.3 @@ -0,0 +1,197 @@ 268.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 268.5 +<head> 268.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 268.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 268.8 +<meta content="David Tschumperle" name="author"></meta> 268.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 268.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 268.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 268.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 268.13 +<style type="text/css"> 268.14 +<!-- 268.15 +body {background-color:white; font-family:sans-serif; } 268.16 +a:active{text-decoration:none; color:#303090} 268.17 +a:link{text-decoration:none; color:#303090} 268.18 +a:visited{text-decoration:none; color:#303090} 268.19 +a:hover{text-decoration:underline; color:#4E9F71} 268.20 +--> 268.21 +</style> 268.22 +<script language="JavaScript" type="text/javascript"> 268.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 268.24 + <!-- Web Site: http://redrival.com/eak/ --> 268.25 + <!-- This script and many more are available free online at --> 268.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 268.27 + <!-- Begin 268.28 + function NewWindow(mypage, myname, w, h, scroll) { 268.29 + var winl = (screen.width - w) / 2; 268.30 + var wint = (screen.height - h) / 2; 268.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 268.32 + win = window.open(mypage, myname, winprops) 268.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 268.34 + } 268.35 + // End --> 268.36 +</script> 268.37 +</head> 268.38 +<body> 268.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 268.40 + <tbody><tr><td> 268.41 + <hr noshade="noshade" size="1" width="90%"></hr> 268.42 + <center> 268.43 + <br/> 268.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 268.45 + <br/> 268.46 + </center> 268.47 + <hr noshade="noshade" size="1" width="90%"></hr> 268.48 + <center> 268.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 268.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 268.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 268.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 268.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 268.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 268.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 268.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 268.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 268.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 268.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 268.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 268.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 268.62 + </font> 268.63 + </td></tr></tbody> 268.64 + </table> 268.65 + </center> 268.66 + <hr noshade="noshade" size="1" width="90%"></hr> 268.67 + </td></tr></tbody> 268.68 +</table> 268.69 +<!-- Generated by Doxygen 1.5.7.1 --> 268.70 +<script type="text/javascript"> 268.71 +<!-- 268.72 +function changeDisplayState (e){ 268.73 + var num=this.id.replace(/[^[0-9]/g,''); 268.74 + var button=this.firstChild; 268.75 + var sectionDiv=document.getElementById('dynsection'+num); 268.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 268.77 + sectionDiv.style.display='block'; 268.78 + button.src='open.gif'; 268.79 + }else{ 268.80 + sectionDiv.style.display='none'; 268.81 + button.src='closed.gif'; 268.82 + } 268.83 +} 268.84 +function initDynSections(){ 268.85 + var divs=document.getElementsByTagName('div'); 268.86 + var sectionCounter=1; 268.87 + for(var i=0;i<divs.length-1;i++){ 268.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 268.89 + var header=divs[i]; 268.90 + var section=divs[i+1]; 268.91 + var button=header.firstChild; 268.92 + if (button!='IMG'){ 268.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 268.94 + button=document.createElement('img'); 268.95 + divs[i].insertBefore(button,divs[i].firstChild); 268.96 + } 268.97 + header.style.cursor='pointer'; 268.98 + header.onclick=changeDisplayState; 268.99 + header.id='dynheader'+sectionCounter; 268.100 + button.src='closed.gif'; 268.101 + section.id='dynsection'+sectionCounter; 268.102 + section.style.display='none'; 268.103 + section.style.marginLeft='14px'; 268.104 + sectionCounter++; 268.105 + } 268.106 + } 268.107 +} 268.108 +window.onload = initDynSections; 268.109 +--> 268.110 +</script> 268.111 +<div class="navigation" id="top"> 268.112 + <div class="tabs"> 268.113 + <ul> 268.114 + <li><a href="index.html"><span>Main Page</span></a></li> 268.115 + <li><a href="modules.html"><span>Modules</span></a></li> 268.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 268.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 268.118 + </ul> 268.119 + </div> 268.120 +</div> 268.121 +<div class="contents"> 268.122 +<h1>Retrieving Command Line Arguments.</h1><table border="0" cellpadding="0" cellspacing="0"> 268.123 +<tr><td></td></tr> 268.124 +</table> 268.125 +The CImg library offers facilities to retrieve command line arguments in a console-based program, as it is a commonly needed operation. Three macros <code>cimg_usage()</code>, <code>cimg_help()</code> and <code>cimg_option()</code> are defined for this purpose. Using these macros allows to easily retrieve options values from the command line. Invoking the compiled executable with the option <code>-h</code> or <code>--help</code> will automatically display the program usage, followed by the list of requested options.<h2><a class="anchor" name="so1"> 268.126 +The cimg_usage() macro</a></h2> 268.127 +The macro <code>cimg_usage(usage)</code> may be used to describe the program goal and usage. It is generally inserted one time after the <code>int main(int argc,char **argv)</code> definition.<p> 268.128 +<dl compact><dt><b>Parameters:</b></dt><dd> 268.129 + <table border="0" cellspacing="2" cellpadding="0"> 268.130 + <tr><td valign="top"></td><td valign="top"><em>usage</em> </td><td>: A string describing the program goal and usage. </td></tr> 268.131 + </table> 268.132 +</dl> 268.133 +<dl class="pre" compact><dt><b>Precondition:</b></dt><dd>The function where <code>cimg_usage()</code> is used must have correctly defined <code>argc</code> and <code>argv</code> variables.</dd></dl> 268.134 +<h2><a class="anchor" name="so1_5"> 268.135 +The cimg_help() macro</a></h2> 268.136 +The macro <code>cimg_help(str)</code> will display the string <code>str</code> only if the <code>-help</code> or <code>--help</code> option are invoked when running the programm.<h2><a class="anchor" name="so2"> 268.137 +The cimg_option() macro</a></h2> 268.138 +The macro <code>cimg_option(name,default,usage)</code> may be used to retrieve an option value from the command line.<p> 268.139 +<dl compact><dt><b>Parameters:</b></dt><dd> 268.140 + <table border="0" cellspacing="2" cellpadding="0"> 268.141 + <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>: The name of the option to be retrieved from the command line. </td></tr> 268.142 + <tr><td valign="top"></td><td valign="top"><em>default</em> </td><td>: The default value returned by the macro if no options <code>name</code> has been specified when running the program. </td></tr> 268.143 + <tr><td valign="top"></td><td valign="top"><em>usage</em> </td><td>: A brief explanation of the option. If <code>usage==0</code>, the option won't appear on the option list when invoking the executable with options <code>-h</code> or <code>--help</code> (hidden option).</td></tr> 268.144 + </table> 268.145 +</dl> 268.146 +<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>cimg_option()</code> returns an object that has the <em>same</em> <em>type</em> than the default value <code>default</code>. The return value is equal to the one specified on the command line. If no such option have been specified, the return value is equal to the default value <code>default</code>. Warning, this can be confusing in some situations (look at the end of the next section). </dd></dl> 268.147 +<dl class="pre" compact><dt><b>Precondition:</b></dt><dd>The function where <code>cimg_option()</code> is used must have correctly defined <code>argc</code> and <code>argv</code> variables.</dd></dl> 268.148 +<h2><a class="anchor" name="so3"> 268.149 +Example of use</a></h2> 268.150 +The code below uses the macros <code>cimg_usage()</code> and <code>cimg_option()</code>. It loads an image, smoothes it an quantifies it with a specified number of values. <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 268.151 + <span class="keyword">using namespace </span>cimg_library; 268.152 + <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv) { 268.153 + cimg_usage(<span class="stringliteral">"Retrieve command line arguments"</span>); 268.154 + <span class="keyword">const</span> <span class="keywordtype">char</span>* filename = cimg_option(<span class="stringliteral">"-i"</span>,<span class="stringliteral">"image.gif"</span>,<span class="stringliteral">"Input image file"</span>); 268.155 + <span class="keyword">const</span> <span class="keywordtype">char</span>* output = cimg_option(<span class="stringliteral">"-o"</span>,(<span class="keywordtype">char</span>*)0,<span class="stringliteral">"Output image file"</span>); 268.156 + <span class="keyword">const</span> <span class="keywordtype">double</span> sigma = cimg_option(<span class="stringliteral">"-s"</span>,1.0,<span class="stringliteral">"Standard variation of the gaussian smoothing"</span>); 268.157 + <span class="keyword">const</span> <span class="keywordtype">int</span> nblevels = cimg_option(<span class="stringliteral">"-n"</span>,16,<span class="stringliteral">"Number of quantification levels"</span>); 268.158 + <span class="keyword">const</span> <span class="keywordtype">bool</span> hidden = cimg_option(<span class="stringliteral">"-hidden"</span>,<span class="keyword">false</span>,0); <span class="comment">// This is a hidden option</span> 268.159 + 268.160 + CImg<unsigned char> img(filename); 268.161 + img.blur(sigma).quantize(nblevels); 268.162 + <span class="keywordflow">if</span> (output) img.save(output); <span class="keywordflow">else</span> img.display(<span class="stringliteral">"Output image"</span>); 268.163 + <span class="keywordflow">if</span> (hidden) std::fprintf(stderr,<span class="stringliteral">"You found me !\n"</span>); 268.164 + <span class="keywordflow">return</span> 0; 268.165 + } 268.166 +</pre></div><p> 268.167 +Invoking the corresponding executable with <code>test -h -hidden -n 20 -i foo.jpg</code> will display : <div class="fragment"><pre class="fragment"> 268.168 + ./test -h -hidden -n 20 -i foo.jpg 268.169 + 268.170 + test : Retrieve command line arguments (Oct 16 2004, 12:34:26) 268.171 + 268.172 + -i = foo.jpg : Input image file 268.173 + -o = 0 : Output image file 268.174 + -s = 1 : Standard variation of the gaussian smoothing 268.175 + -n = 20 : Number of quantification levels 268.176 + 268.177 + You found me ! 268.178 +</pre></div><p> 268.179 +<dl class="warning" compact><dt><b>Warning:</b></dt><dd>As the type of object returned by the macro <code>cimg_option(option,default,usage)</code> is defined by the type of <code>default</code>, undesired casts may appear when writting code such as : <div class="fragment"><pre class="fragment"> <span class="keyword">const</span> <span class="keywordtype">double</span> sigma = cimg_option(<span class="stringliteral">"-val"</span>,0,<span class="stringliteral">"A floating point value"</span>); 268.180 +</pre></div> In this case, <code>sigma</code> will always be equal to an integer (since the default value <code>0</code> is an integer). When passing a float value on the command line, a <em>float</em> <em>to</em> <em>integer</em> cast is then done, truncating the given parameter to an integer value (this is surely not a desired behavior). You must specify <code>0.0</code> as the default value in this case.</dd></dl> 268.181 +<h2><a class="anchor" name="so4"> 268.182 +How to learn more about command line options ?</a></h2> 268.183 +You should take a look at the examples <code>examples/gmic.cpp</code> provided in the CImg Library package. This is a command line based image converter which intensively uses the <code>cimg_option()</code> and <code>cimg_usage()</code> macros to retrieve command line parameters. </div> 268.184 +<hr noshade="noshade" size="1" width="100%"> 268.185 +<a href="http://sourceforge.net"> 268.186 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 268.187 +</a> 268.188 +<!-- Start of StatCounter Code --> 268.189 +<script type="text/javascript" language="javascript"> 268.190 +<!-- 268.191 +var sc_project=895001; 268.192 +var sc_invisible=1; 268.193 +var sc_partition=7; 268.194 +var sc_security="5ea85181"; 268.195 +//--> 268.196 +</script> 268.197 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 268.198 +<!-- End of StatCounter Code --> 268.199 +</body> 268.200 +</html>
269.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 269.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__overview.html Mon Aug 03 14:09:20 2009 +0100 269.3 @@ -0,0 +1,205 @@ 269.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 269.5 +<head> 269.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 269.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 269.8 +<meta content="David Tschumperle" name="author"></meta> 269.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 269.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 269.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 269.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 269.13 +<style type="text/css"> 269.14 +<!-- 269.15 +body {background-color:white; font-family:sans-serif; } 269.16 +a:active{text-decoration:none; color:#303090} 269.17 +a:link{text-decoration:none; color:#303090} 269.18 +a:visited{text-decoration:none; color:#303090} 269.19 +a:hover{text-decoration:underline; color:#4E9F71} 269.20 +--> 269.21 +</style> 269.22 +<script language="JavaScript" type="text/javascript"> 269.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 269.24 + <!-- Web Site: http://redrival.com/eak/ --> 269.25 + <!-- This script and many more are available free online at --> 269.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 269.27 + <!-- Begin 269.28 + function NewWindow(mypage, myname, w, h, scroll) { 269.29 + var winl = (screen.width - w) / 2; 269.30 + var wint = (screen.height - h) / 2; 269.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 269.32 + win = window.open(mypage, myname, winprops) 269.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 269.34 + } 269.35 + // End --> 269.36 +</script> 269.37 +</head> 269.38 +<body> 269.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 269.40 + <tbody><tr><td> 269.41 + <hr noshade="noshade" size="1" width="90%"></hr> 269.42 + <center> 269.43 + <br/> 269.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 269.45 + <br/> 269.46 + </center> 269.47 + <hr noshade="noshade" size="1" width="90%"></hr> 269.48 + <center> 269.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 269.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 269.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 269.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 269.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 269.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 269.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 269.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 269.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 269.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 269.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 269.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 269.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 269.62 + </font> 269.63 + </td></tr></tbody> 269.64 + </table> 269.65 + </center> 269.66 + <hr noshade="noshade" size="1" width="90%"></hr> 269.67 + </td></tr></tbody> 269.68 +</table> 269.69 +<!-- Generated by Doxygen 1.5.7.1 --> 269.70 +<script type="text/javascript"> 269.71 +<!-- 269.72 +function changeDisplayState (e){ 269.73 + var num=this.id.replace(/[^[0-9]/g,''); 269.74 + var button=this.firstChild; 269.75 + var sectionDiv=document.getElementById('dynsection'+num); 269.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 269.77 + sectionDiv.style.display='block'; 269.78 + button.src='open.gif'; 269.79 + }else{ 269.80 + sectionDiv.style.display='none'; 269.81 + button.src='closed.gif'; 269.82 + } 269.83 +} 269.84 +function initDynSections(){ 269.85 + var divs=document.getElementsByTagName('div'); 269.86 + var sectionCounter=1; 269.87 + for(var i=0;i<divs.length-1;i++){ 269.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 269.89 + var header=divs[i]; 269.90 + var section=divs[i+1]; 269.91 + var button=header.firstChild; 269.92 + if (button!='IMG'){ 269.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 269.94 + button=document.createElement('img'); 269.95 + divs[i].insertBefore(button,divs[i].firstChild); 269.96 + } 269.97 + header.style.cursor='pointer'; 269.98 + header.onclick=changeDisplayState; 269.99 + header.id='dynheader'+sectionCounter; 269.100 + button.src='closed.gif'; 269.101 + section.id='dynsection'+sectionCounter; 269.102 + section.style.display='none'; 269.103 + section.style.marginLeft='14px'; 269.104 + sectionCounter++; 269.105 + } 269.106 + } 269.107 +} 269.108 +window.onload = initDynSections; 269.109 +--> 269.110 +</script> 269.111 +<div class="navigation" id="top"> 269.112 + <div class="tabs"> 269.113 + <ul> 269.114 + <li><a href="index.html"><span>Main Page</span></a></li> 269.115 + <li><a href="modules.html"><span>Modules</span></a></li> 269.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 269.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 269.118 + </ul> 269.119 + </div> 269.120 +</div> 269.121 +<div class="contents"> 269.122 +<h1>CImg Library Overview</h1><table border="0" cellpadding="0" cellspacing="0"> 269.123 +<tr><td></td></tr> 269.124 +</table> 269.125 +The <b>CImg Library</b> is an image processing library, designed for C++ programmers. It provides useful classes and functions to load/save, display and process various types of images.<h2><a class="anchor" name="s1"> 269.126 +Library structure</a></h2> 269.127 +The CImg Library consists in a <b>single header file</b> CImg.h providing a set of C++ template classes that can be used in your own sources, to load/save, process and display images or list of images. Very portable (Unix/X11,Windows, MacOS X, FreeBSD,..), efficient, simple to use, it's a pleasant toolkit for coding image processing stuffs in C++.<p> 269.128 +The header file CImg.h contains all the classes and functions that compose the library itself. This is one originality of the CImg Library. This particularly means that :<ul> 269.129 +<li>No pre-compilation of the library is needed, since the compilation of the CImg functions is done at the same time as the compilation of your own C++ code.</li><li>No complex dependencies have to be handled : Just include the CImg.h file, and you get a working C++ image processing toolkit.</li><li>The compilation is done on the fly : only CImg functionalities really used by your program are compiled and appear in the compiled executable program. This leads to very compact code, without any unused stuffs.</li><li>Class members and functions are inlined, leading to better performance during the program execution.</li></ul> 269.130 +<p> 269.131 +The CImg Library is structured as follows :<p> 269.132 +<ul> 269.133 +<li>All library classes and functions are defined in the namespace <a class="el" href="namespacecimg__library.html">cimg_library</a>. This namespace encapsulates the library functionalities and avoid any class name collision that could happen with other includes. Generally, one uses this namespace as a default namespace : <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 269.134 + <span class="keyword">using namespace </span>cimg_library; 269.135 + ... 269.136 +</pre></div></li></ul> 269.137 +<p> 269.138 +<ul> 269.139 +<li>The namespace <a class="el" href="namespacecimg__library_1_1cimg.html">cimg_library::cimg</a> defines a set of <em>low-level</em> functions and variables used by the library. Documented functions in this namespace can be safely used in your own program. But, <b>never</b> use the <a class="el" href="namespacecimg__library_1_1cimg.html">cimg_library::cimg</a> namespace as a default namespace, since it contains functions whose names are already defined in the standard C/C++ library.</li></ul> 269.140 +<p> 269.141 +<ul> 269.142 +<li>The class <a class="el" href="structcimg__library_1_1CImg.html">cimg_library::CImg</a><T> represents images up to 4-dimensions wide, containing pixels of type <code>T</code> (template parameter). This is actually the main class of the library.</li></ul> 269.143 +<p> 269.144 +<ul> 269.145 +<li>The class <a class="el" href="structcimg__library_1_1CImgList.html">cimg_library::CImgList</a><T> represents lists of cimg_library::CImg<T> images. It can be used for instance to store different frames of an image sequence.</li></ul> 269.146 +<p> 269.147 +<ul> 269.148 +<li>The class <a class="el" href="structcimg__library_1_1CImgDisplay.html">cimg_library::CImgDisplay</a> is able to display images or image lists into graphical display windows. As you may guess, the code of this class is highly system-dependent but this is transparent for the programmer, as environment variables are automatically set by the CImg library (see also <a class="el" href="group__cimg__environment.html">Setting Environment Variables</a>).</li></ul> 269.149 +<p> 269.150 +<ul> 269.151 +<li>The class <a class="el" href="structcimg__library_1_1CImgException.html">cimg_library::CImgException</a> (and its subclasses) are used by the library to throw exceptions when errors occur. Those exceptions can be catched with a bloc <code>try { ..} catch (CImgException) { .. }</code>. Subclasses define precisely the type of encountered errors.</li></ul> 269.152 +<p> 269.153 +Knowing these four classes is <b>enough</b> to get benefit of the CImg Library functionalities.<h2><a class="anchor" name="s2"> 269.154 +CImg version of "Hello world".</a></h2> 269.155 +Below is a very simple code that creates a "Hello World" image. This shows you basically how a CImg program looks like.<p> 269.156 +<div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 269.157 + <span class="keyword">using namespace </span>cimg_library; 269.158 + 269.159 + <span class="keywordtype">int</span> main() { 269.160 + CImg<unsigned char> img(640,400,1,3); <span class="comment">// Define a 640x400 color image with 8 bits per color component.</span> 269.161 + img.fill(0); <span class="comment">// Set pixel values to 0 (color : black)</span> 269.162 + <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> purple[] = { 255,0,255 }; <span class="comment">// Define a purple color</span> 269.163 + img.draw_text(<span class="stringliteral">"Hello World"</span>,100,100,purple); <span class="comment">// Draw a purple "Hello world" at coordinates (100,100).</span> 269.164 + img.display(<span class="stringliteral">"My first CImg code"</span>); <span class="comment">// Display the image in a display window.</span> 269.165 + <span class="keywordflow">return</span> 0; 269.166 + } 269.167 +</pre></div><p> 269.168 +Which can be also written in a more compact way as :<p> 269.169 +<div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 269.170 + <span class="keyword">using namespace </span>cimg_library; 269.171 + 269.172 + <span class="keywordtype">int</span> main() { 269.173 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> purple[] = { 255,0,255 }; 269.174 + CImg<unsigned char>(640,400,1,3,0).draw_text(<span class="stringliteral">"Hello World"</span>,100,100,purple).display(<span class="stringliteral">"My first CImg code"</span>); 269.175 + <span class="keywordflow">return</span> 0; 269.176 + } 269.177 +</pre></div><p> 269.178 +Generally, you can write very small code that performs complex image processing tasks. The CImg Library is very simple to use and provide a lot of interesting algorithms for image manipulation.<h2><a class="anchor" name="s3"> 269.179 +How to compile ?</a></h2> 269.180 +The CImg library is a very light and user-friendly library : only standard system libraries are used. It avoid to handle complex dependancies and problems with library compatibility. The only thing you need is a (quite modern) C++ compiler :<p> 269.181 +<ul> 269.182 +<li><b>Microsoft Visual C++ 6.0, Visual Studio.NET and Visual Express Edition</b> : Use project files and solution files provided in the CImg Library package (directory 'compilation/') to see how it works.</li><li><b>Intel ICL compiler</b> : Use the following command to compile a CImg-based program with ICL : <div class="fragment"><pre class="fragment"> icl /Ox hello_world.cpp user32.lib gdi32.lib 269.183 +</pre></div></li><li><b>g++ (MingW windows version)</b> : Use the following command to compile a CImg-based program with g++, on Windows : <div class="fragment"><pre class="fragment"> g++ -o hello_word.exe hello_word.cpp -O2 -lgdi32 269.184 +</pre></div></li><li><b>g++ (Linux version)</b> : Use the following command to compile a CImg-based program with g++, on Linux : <div class="fragment"><pre class="fragment"> g++ -o hello_word.exe hello_world.cpp -O2 -L/usr/X11R6/lib -lm -lpthread -lX11 269.185 +</pre></div></li><li><b>g++ (Solaris version)</b> : Use the following command to compile a CImg-based program with g++, on Solaris : <div class="fragment"><pre class="fragment"> g++ -o hello_word.exe hello_world.cpp -O2 -lm -lpthread -R/usr/X11R6/lib -lrt -lnsl -lsocket 269.186 +</pre></div></li><li><b>g++ (Mac OS X version)</b> : Use the following command to compile a CImg-based program with g++, on Mac OS X : <div class="fragment"><pre class="fragment"> g++ -o hello_word.exe hello_world.cpp -O2 -lm -lpthread -L/usr/X11R6/lib -lm -lpthread -lX11 269.187 +</pre></div></li><li><b>Dev-Cpp</b> : Use the project file provided in the CImg library package to see how it works.</li></ul> 269.188 +<p> 269.189 +If you are using another compilers and encounter problems, please <a href="http://www.greyc.ensicaen.fr/~dtschump">write me</a> since maintaining compatibility is one of the priority of the CImg Library. Nevertheless, old compilers that does not respect the C++ norm will not support the CImg Library.<h2><a class="anchor" name="s4"> 269.190 +What's next ?</a></h2> 269.191 +If you are ready to get more, and to start writing more serious programs with CImg, you are invited to go to the <a class="el" href="group__cimg__tutorial.html">Tutorial : Getting Started.</a> section. </div> 269.192 +<hr noshade="noshade" size="1" width="100%"> 269.193 +<a href="http://sourceforge.net"> 269.194 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 269.195 +</a> 269.196 +<!-- Start of StatCounter Code --> 269.197 +<script type="text/javascript" language="javascript"> 269.198 +<!-- 269.199 +var sc_project=895001; 269.200 +var sc_invisible=1; 269.201 +var sc_partition=7; 269.202 +var sc_security="5ea85181"; 269.203 +//--> 269.204 +</script> 269.205 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 269.206 +<!-- End of StatCounter Code --> 269.207 +</body> 269.208 +</html>
270.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 270.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__storage.html Mon Aug 03 14:09:20 2009 +0100 270.3 @@ -0,0 +1,149 @@ 270.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 270.5 +<head> 270.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 270.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 270.8 +<meta content="David Tschumperle" name="author"></meta> 270.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 270.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 270.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 270.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 270.13 +<style type="text/css"> 270.14 +<!-- 270.15 +body {background-color:white; font-family:sans-serif; } 270.16 +a:active{text-decoration:none; color:#303090} 270.17 +a:link{text-decoration:none; color:#303090} 270.18 +a:visited{text-decoration:none; color:#303090} 270.19 +a:hover{text-decoration:underline; color:#4E9F71} 270.20 +--> 270.21 +</style> 270.22 +<script language="JavaScript" type="text/javascript"> 270.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 270.24 + <!-- Web Site: http://redrival.com/eak/ --> 270.25 + <!-- This script and many more are available free online at --> 270.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 270.27 + <!-- Begin 270.28 + function NewWindow(mypage, myname, w, h, scroll) { 270.29 + var winl = (screen.width - w) / 2; 270.30 + var wint = (screen.height - h) / 2; 270.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 270.32 + win = window.open(mypage, myname, winprops) 270.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 270.34 + } 270.35 + // End --> 270.36 +</script> 270.37 +</head> 270.38 +<body> 270.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 270.40 + <tbody><tr><td> 270.41 + <hr noshade="noshade" size="1" width="90%"></hr> 270.42 + <center> 270.43 + <br/> 270.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 270.45 + <br/> 270.46 + </center> 270.47 + <hr noshade="noshade" size="1" width="90%"></hr> 270.48 + <center> 270.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 270.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 270.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 270.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 270.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 270.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 270.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 270.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 270.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 270.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 270.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 270.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 270.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 270.62 + </font> 270.63 + </td></tr></tbody> 270.64 + </table> 270.65 + </center> 270.66 + <hr noshade="noshade" size="1" width="90%"></hr> 270.67 + </td></tr></tbody> 270.68 +</table> 270.69 +<!-- Generated by Doxygen 1.5.7.1 --> 270.70 +<script type="text/javascript"> 270.71 +<!-- 270.72 +function changeDisplayState (e){ 270.73 + var num=this.id.replace(/[^[0-9]/g,''); 270.74 + var button=this.firstChild; 270.75 + var sectionDiv=document.getElementById('dynsection'+num); 270.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 270.77 + sectionDiv.style.display='block'; 270.78 + button.src='open.gif'; 270.79 + }else{ 270.80 + sectionDiv.style.display='none'; 270.81 + button.src='closed.gif'; 270.82 + } 270.83 +} 270.84 +function initDynSections(){ 270.85 + var divs=document.getElementsByTagName('div'); 270.86 + var sectionCounter=1; 270.87 + for(var i=0;i<divs.length-1;i++){ 270.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 270.89 + var header=divs[i]; 270.90 + var section=divs[i+1]; 270.91 + var button=header.firstChild; 270.92 + if (button!='IMG'){ 270.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 270.94 + button=document.createElement('img'); 270.95 + divs[i].insertBefore(button,divs[i].firstChild); 270.96 + } 270.97 + header.style.cursor='pointer'; 270.98 + header.onclick=changeDisplayState; 270.99 + header.id='dynheader'+sectionCounter; 270.100 + button.src='closed.gif'; 270.101 + section.id='dynsection'+sectionCounter; 270.102 + section.style.display='none'; 270.103 + section.style.marginLeft='14px'; 270.104 + sectionCounter++; 270.105 + } 270.106 + } 270.107 +} 270.108 +window.onload = initDynSections; 270.109 +--> 270.110 +</script> 270.111 +<div class="navigation" id="top"> 270.112 + <div class="tabs"> 270.113 + <ul> 270.114 + <li><a href="index.html"><span>Main Page</span></a></li> 270.115 + <li><a href="modules.html"><span>Modules</span></a></li> 270.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 270.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 270.118 + </ul> 270.119 + </div> 270.120 +</div> 270.121 +<div class="contents"> 270.122 +<h1>How pixel data are stored with CImg.</h1><table border="0" cellpadding="0" cellspacing="0"> 270.123 +<tr><td></td></tr> 270.124 +</table> 270.125 +First, CImg<T> are *very* basic structures, which means that there are no memory tricks, weird memory alignments or disk caches used to store pixel data of images. When an image is instanced, all its pixel values are stored in memory at the same time (yes, you should avoid working with huge images when dealing with CImg, if you have only 64kb of RAM).<p> 270.126 +A CImg<T> is basically a 4th-dimensional array (width,height,depth,dim), and its pixel data are stored linearly in a single memory buffer of general size (width*height*depth*dim). Nothing more, nothing less. The address of this memory buffer can be retrieved by the function CImg<T>::ptr(). As each image value is stored as a type T (T being known by the programmer of course), this pointer is a 'T*', or a 'const T*' if your image is 'const'. so, 'T *ptr = img.ptr()' gives you the pointer to the first value of the image 'img'. The overall size of the used memory for one instance image (in bytes) is then 'width*height*depth*dim*sizeof(T)'.<p> 270.127 +Now, the ordering of the pixel values in this buffer follows these rules : The values are *not* interleaved, and are ordered first along the X,Y,Z and V axis respectively (corresponding to the width,height,depth,dim dimensions), starting from the upper-left pixel to the bottom-right pixel of the instane image, with a classical scanline run.<p> 270.128 +So, a color image with dim=3 and depth=1, will be stored in memory as :<p> 270.129 +R1R2R3R4R5R6......G1G2G3G4G5G6.......B1B2B3B4B5B6.... (i.e following a 'planar' structure)<p> 270.130 +and *not* as R1G1B1R2G2B2R3G3B3... (interleaved channels), where R1 = img(0,0,0,0) is the first upper-left pixel of the red component of the image, R2 is img(1,0,0,0), G1 = img(0,0,0,1), G2 = img(1,0,0,1), B1 = img(0,0,0,2), and so on...<p> 270.131 +Another example, a (1x5x1x1) CImg<T> (column vector A) will be stored as : A1A2A3A4A5 where A1 = img(0,0), A2 = img(0,1), ... , A5 = img(0,4).<p> 270.132 +As you see, it is *very* simple and intuitive : no interleaving, no padding, just simple. This is cool not only because it is simple, but this has in fact a number of interesting properties. For instance, a 2D color image is stored in memory exactly as a 3D scalar image having a depth=3, meaning that when you are dealing with 2D color images, you can write 'img(x,y,k)' instead of 'img(x,y,0,k)' to access the kth channel of the (x,y) pixel. More generally, if you have one dimension that is 1 in your image, you can just skip it in the call to the operator(). Similarly, values of a column vector stored as an image with width=depth=dim=1 can be accessed by 'img(y)' instead of 'img(0,y)'. This is very convenient.<p> 270.133 +Another cool thing is that it allows you to work easily with 'shared' images. A shared image is a CImg<T> instance that shares its memory with another one (the 'base' image). Destroying a shared image does nothing in fact. Shared images is a convenient way of modifying only *portions* (consecutive in memory) of an image. For instance, if 'img' is a 2D color image, you can write :<p> 270.134 +img.get_shared_channel(0).blur(2); img.get_shared_channels(1,2).mirror('x');<p> 270.135 +which just blur the red channel of the image, and mirror the two others along the X-axis. This is possible since channels of an image are not interleaved but are stored as different consecutive planes in memory, so you see that constructing a shared image is possible (and trivial). </div> 270.136 +<hr noshade="noshade" size="1" width="100%"> 270.137 +<a href="http://sourceforge.net"> 270.138 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 270.139 +</a> 270.140 +<!-- Start of StatCounter Code --> 270.141 +<script type="text/javascript" language="javascript"> 270.142 +<!-- 270.143 +var sc_project=895001; 270.144 +var sc_invisible=1; 270.145 +var sc_partition=7; 270.146 +var sc_security="5ea85181"; 270.147 +//--> 270.148 +</script> 270.149 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 270.150 +<!-- End of StatCounter Code --> 270.151 +</body> 270.152 +</html>
271.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 271.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__structure.html Mon Aug 03 14:09:20 2009 +0100 271.3 @@ -0,0 +1,149 @@ 271.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 271.5 +<head> 271.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 271.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 271.8 +<meta content="David Tschumperle" name="author"></meta> 271.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 271.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 271.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 271.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 271.13 +<style type="text/css"> 271.14 +<!-- 271.15 +body {background-color:white; font-family:sans-serif; } 271.16 +a:active{text-decoration:none; color:#303090} 271.17 +a:link{text-decoration:none; color:#303090} 271.18 +a:visited{text-decoration:none; color:#303090} 271.19 +a:hover{text-decoration:underline; color:#4E9F71} 271.20 +--> 271.21 +</style> 271.22 +<script language="JavaScript" type="text/javascript"> 271.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 271.24 + <!-- Web Site: http://redrival.com/eak/ --> 271.25 + <!-- This script and many more are available free online at --> 271.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 271.27 + <!-- Begin 271.28 + function NewWindow(mypage, myname, w, h, scroll) { 271.29 + var winl = (screen.width - w) / 2; 271.30 + var wint = (screen.height - h) / 2; 271.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 271.32 + win = window.open(mypage, myname, winprops) 271.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 271.34 + } 271.35 + // End --> 271.36 +</script> 271.37 +</head> 271.38 +<body> 271.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 271.40 + <tbody><tr><td> 271.41 + <hr noshade="noshade" size="1" width="90%"></hr> 271.42 + <center> 271.43 + <br/> 271.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 271.45 + <br/> 271.46 + </center> 271.47 + <hr noshade="noshade" size="1" width="90%"></hr> 271.48 + <center> 271.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 271.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 271.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 271.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 271.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 271.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 271.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 271.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 271.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 271.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 271.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 271.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 271.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 271.62 + </font> 271.63 + </td></tr></tbody> 271.64 + </table> 271.65 + </center> 271.66 + <hr noshade="noshade" size="1" width="90%"></hr> 271.67 + </td></tr></tbody> 271.68 +</table> 271.69 +<!-- Generated by Doxygen 1.5.7.1 --> 271.70 +<script type="text/javascript"> 271.71 +<!-- 271.72 +function changeDisplayState (e){ 271.73 + var num=this.id.replace(/[^[0-9]/g,''); 271.74 + var button=this.firstChild; 271.75 + var sectionDiv=document.getElementById('dynsection'+num); 271.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 271.77 + sectionDiv.style.display='block'; 271.78 + button.src='open.gif'; 271.79 + }else{ 271.80 + sectionDiv.style.display='none'; 271.81 + button.src='closed.gif'; 271.82 + } 271.83 +} 271.84 +function initDynSections(){ 271.85 + var divs=document.getElementsByTagName('div'); 271.86 + var sectionCounter=1; 271.87 + for(var i=0;i<divs.length-1;i++){ 271.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 271.89 + var header=divs[i]; 271.90 + var section=divs[i+1]; 271.91 + var button=header.firstChild; 271.92 + if (button!='IMG'){ 271.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 271.94 + button=document.createElement('img'); 271.95 + divs[i].insertBefore(button,divs[i].firstChild); 271.96 + } 271.97 + header.style.cursor='pointer'; 271.98 + header.onclick=changeDisplayState; 271.99 + header.id='dynheader'+sectionCounter; 271.100 + button.src='closed.gif'; 271.101 + section.id='dynsection'+sectionCounter; 271.102 + section.style.display='none'; 271.103 + section.style.marginLeft='14px'; 271.104 + sectionCounter++; 271.105 + } 271.106 + } 271.107 +} 271.108 +window.onload = initDynSections; 271.109 +--> 271.110 +</script> 271.111 +<div class="navigation" id="top"> 271.112 + <div class="tabs"> 271.113 + <ul> 271.114 + <li><a href="index.html"><span>Main Page</span></a></li> 271.115 + <li><a href="modules.html"><span>Modules</span></a></li> 271.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 271.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 271.118 + </ul> 271.119 + </div> 271.120 +</div> 271.121 +<div class="contents"> 271.122 +<h1>CImg<T> : The image structure.</h1><table border="0" cellpadding="0" cellspacing="0"> 271.123 +<tr><td></td></tr> 271.124 +</table> 271.125 +Description of the CImg<T> structure<h2><a class="anchor" name="cs0"> 271.126 +Structure overview</a></h2> 271.127 +<h2><a class="anchor" name="cs1"> 271.128 +Image construction/destruction/copy</a></h2> 271.129 +<h2><a class="anchor" name="cs2"> 271.130 +Image methods</a></h2> 271.131 +<h2><a class="anchor" name="cs3"> 271.132 +Shared images</a></h2> 271.133 +<h2><a class="anchor" name="cs4"> 271.134 +Low-level structure</a></h2> 271.135 +</div> 271.136 +<hr noshade="noshade" size="1" width="100%"> 271.137 +<a href="http://sourceforge.net"> 271.138 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 271.139 +</a> 271.140 +<!-- Start of StatCounter Code --> 271.141 +<script type="text/javascript" language="javascript"> 271.142 +<!-- 271.143 +var sc_project=895001; 271.144 +var sc_invisible=1; 271.145 +var sc_partition=7; 271.146 +var sc_security="5ea85181"; 271.147 +//--> 271.148 +</script> 271.149 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 271.150 +<!-- End of StatCounter Code --> 271.151 +</body> 271.152 +</html>
272.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 272.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__tutorial.html Mon Aug 03 14:09:20 2009 +0100 272.3 @@ -0,0 +1,182 @@ 272.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 272.5 +<head> 272.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 272.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 272.8 +<meta content="David Tschumperle" name="author"></meta> 272.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 272.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 272.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 272.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 272.13 +<style type="text/css"> 272.14 +<!-- 272.15 +body {background-color:white; font-family:sans-serif; } 272.16 +a:active{text-decoration:none; color:#303090} 272.17 +a:link{text-decoration:none; color:#303090} 272.18 +a:visited{text-decoration:none; color:#303090} 272.19 +a:hover{text-decoration:underline; color:#4E9F71} 272.20 +--> 272.21 +</style> 272.22 +<script language="JavaScript" type="text/javascript"> 272.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 272.24 + <!-- Web Site: http://redrival.com/eak/ --> 272.25 + <!-- This script and many more are available free online at --> 272.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 272.27 + <!-- Begin 272.28 + function NewWindow(mypage, myname, w, h, scroll) { 272.29 + var winl = (screen.width - w) / 2; 272.30 + var wint = (screen.height - h) / 2; 272.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 272.32 + win = window.open(mypage, myname, winprops) 272.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 272.34 + } 272.35 + // End --> 272.36 +</script> 272.37 +</head> 272.38 +<body> 272.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 272.40 + <tbody><tr><td> 272.41 + <hr noshade="noshade" size="1" width="90%"></hr> 272.42 + <center> 272.43 + <br/> 272.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 272.45 + <br/> 272.46 + </center> 272.47 + <hr noshade="noshade" size="1" width="90%"></hr> 272.48 + <center> 272.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 272.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 272.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 272.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 272.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 272.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 272.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 272.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 272.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 272.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 272.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 272.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 272.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 272.62 + </font> 272.63 + </td></tr></tbody> 272.64 + </table> 272.65 + </center> 272.66 + <hr noshade="noshade" size="1" width="90%"></hr> 272.67 + </td></tr></tbody> 272.68 +</table> 272.69 +<!-- Generated by Doxygen 1.5.7.1 --> 272.70 +<script type="text/javascript"> 272.71 +<!-- 272.72 +function changeDisplayState (e){ 272.73 + var num=this.id.replace(/[^[0-9]/g,''); 272.74 + var button=this.firstChild; 272.75 + var sectionDiv=document.getElementById('dynsection'+num); 272.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 272.77 + sectionDiv.style.display='block'; 272.78 + button.src='open.gif'; 272.79 + }else{ 272.80 + sectionDiv.style.display='none'; 272.81 + button.src='closed.gif'; 272.82 + } 272.83 +} 272.84 +function initDynSections(){ 272.85 + var divs=document.getElementsByTagName('div'); 272.86 + var sectionCounter=1; 272.87 + for(var i=0;i<divs.length-1;i++){ 272.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 272.89 + var header=divs[i]; 272.90 + var section=divs[i+1]; 272.91 + var button=header.firstChild; 272.92 + if (button!='IMG'){ 272.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 272.94 + button=document.createElement('img'); 272.95 + divs[i].insertBefore(button,divs[i].firstChild); 272.96 + } 272.97 + header.style.cursor='pointer'; 272.98 + header.onclick=changeDisplayState; 272.99 + header.id='dynheader'+sectionCounter; 272.100 + button.src='closed.gif'; 272.101 + section.id='dynsection'+sectionCounter; 272.102 + section.style.display='none'; 272.103 + section.style.marginLeft='14px'; 272.104 + sectionCounter++; 272.105 + } 272.106 + } 272.107 +} 272.108 +window.onload = initDynSections; 272.109 +--> 272.110 +</script> 272.111 +<div class="navigation" id="top"> 272.112 + <div class="tabs"> 272.113 + <ul> 272.114 + <li><a href="index.html"><span>Main Page</span></a></li> 272.115 + <li><a href="modules.html"><span>Modules</span></a></li> 272.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 272.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 272.118 + </ul> 272.119 + </div> 272.120 +</div> 272.121 +<div class="contents"> 272.122 +<h1>Tutorial : Getting Started.</h1><table border="0" cellpadding="0" cellspacing="0"> 272.123 +<tr><td></td></tr> 272.124 +</table> 272.125 +Let's start to write our first program to get the idea. This will demonstrate how to load and create images, as well as handle image display and mouse events. Assume we want to load a color image <code>lena.jpg</code>, smooth it, display it in a windows, and enter an event loop so that clicking a point in the image will draw the (R,G,B) intensity profiles of the corresponding image line (in another window). Yes, that sounds quite complex for a first code, but don't worry, it will be very simple using the CImg library ! Well, just look at the code below, it does the task :<p> 272.126 +<div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 272.127 + <span class="keyword">using namespace </span>cimg_library; 272.128 + 272.129 + <span class="keywordtype">int</span> main() { 272.130 + CImg<unsigned char> image(<span class="stringliteral">"lena.jpg"</span>), visu(500,400,1,3,0); 272.131 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 }; 272.132 + image.blur(2.5); 272.133 + CImgDisplay main_disp(image,<span class="stringliteral">"Click a point"</span>), draw_disp(visu,<span class="stringliteral">"Intensity profile"</span>); 272.134 + <span class="keywordflow">while</span> (!main_disp.is_closed && !draw_disp.is_closed) { 272.135 + main_disp.wait(); 272.136 + <span class="keywordflow">if</span> (main_disp.button && main_disp.mouse_y>=0) { 272.137 + <span class="keyword">const</span> <span class="keywordtype">int</span> y = main_disp.mouse_y; 272.138 + visu.fill(0).draw_graph(image.get_crop(0,y,0,0,image.dimx()-1,y,0,0),red,1,1,0,255,0); 272.139 + visu.draw_graph(image.get_crop(0,y,0,1,image.dimx()-1,y,0,1),green,1,1,0,255,0); 272.140 + visu.draw_graph(image.get_crop(0,y,0,2,image.dimx()-1,y,0,2),blue,1,1,0,255,0).display(draw_disp); 272.141 + } 272.142 + } 272.143 + <span class="keywordflow">return</span> 0; 272.144 + } 272.145 +</pre></div><p> 272.146 +Here is a screenshot of the resulting program :<p> 272.147 +<div align="center"> 272.148 +<img src="../img/tutorial.jpg" alt="tutorial.jpg"> 272.149 +</div> 272.150 +<p> 272.151 +And here is the detailled explanation of the source, line by line :<p> 272.152 +<div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 272.153 +</pre></div> Include the main and only header file of the CImg library. <div class="fragment"><pre class="fragment"> <span class="keyword">using namespace </span>cimg_library; 272.154 +</pre></div> Use the library namespace to ease the declarations afterward. <div class="fragment"><pre class="fragment"> <span class="keywordtype">int</span> main() { 272.155 +</pre></div> Definition of the main function. <div class="fragment"><pre class="fragment"> CImg<unsigned char> image(<span class="stringliteral">"lena.jpg"</span>), visu(500,400,1,3,0); 272.156 +</pre></div> Creation of two instances of images of <code>unsigned</code> <code>char</code> pixels. The first image <code>image</code> is initialized by reading an image file from the disk. Here, <code>lena.jpg</code> must be in the same directory than the current program. Note that you must also have installed the <em>ImageMagick</em> package in order to be able to read JPG images. The second image <code>visu</code> is initialized as a black color image with dimension <code>dx=500</code>, <code>dy=400</code>, <code>dz=1</code> (here, it is a 2D image, not a 3D one), and <code>dv=3</code> (each pixel has 3 'vector' channels R,G,B). The last argument in the constructor defines the default value of the pixel values (here <code>0</code>, which means that <code>visu</code> will be initially black). <div class="fragment"><pre class="fragment"> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> red[] = { 255,0,0 }, green[] = { 0,255,0 }, blue[] = { 0,0,255 }; 272.157 +</pre></div> Definition of three different colors as array of unsigned char. This will be used to draw plots with different colors. <div class="fragment"><pre class="fragment"> image.blur(2.5); 272.158 +</pre></div> Blur the image, with a gaussian blur and a standard variation of 2.5. Note that most of the CImg functions have two versions : one that acts in-place (which is the case of blur), and one that returns the result as a new image (the name of the function begins then with <code>get_</code> ). In this case, one could have also written <code>image = image.get_blur(2.5);</code> (more expensive, since it needs an additional copy operation). <div class="fragment"><pre class="fragment"> CImgDisplay main_disp(image,<span class="stringliteral">"Click a point"</span>), draw_disp(visu,<span class="stringliteral">"Intensity profile"</span>); 272.159 +</pre></div> Creation of two display windows, one for the input image image, and one for the image visu which will be display intensity profiles. By default, CImg displays handles events (mouse,keyboard,..). On Windows, there is a way to create fullscreen displays. <div class="fragment"><pre class="fragment"> <span class="keywordflow">while</span> (!main_disp.is_closed && !draw_disp.is_closed) { 272.160 +</pre></div> Enter the event loop, the code will exit when one of the two display windows is closed. <div class="fragment"><pre class="fragment"> main_disp.wait(); 272.161 +</pre></div> Wait for an event (mouse, keyboard,..) in the display window <code>main_disp</code>. <div class="fragment"><pre class="fragment"> <span class="keywordflow">if</span> (main_disp.button && main_disp.mouse_y>=0) { 272.162 +</pre></div> Test if the mouse button has been clicked on the image area. One may distinguish between the 3 different mouse buttons, but in this case it is not necessary <div class="fragment"><pre class="fragment"> <span class="keyword">const</span> <span class="keywordtype">int</span> y = main_disp.mouse_y; 272.163 +</pre></div> Get the image line y-coordinate that has been clicked. <div class="fragment"><pre class="fragment"> visu.fill(0).draw_graph(image.get_crop(0,y,0,0,image.dimx()-1,y,0,0),red,1,0,256,0); 272.164 +</pre></div> This line illustrates the pipeline property of most of the CImg class functions. The first function <code>fill(0)</code> simply sets all pixel values with 0 (i.e. clear the image <code>visu</code>). The interesting thing is that it returns a reference to <code>visu</code> and then, can be pipelined with the function <code>draw_graph()</code> which draws a plot in the image <code>visu</code>. The plot data are given by another image (the first argument of <code>draw_graph()</code>). In this case, the given image is the red-component of the line y of the original image, retrieved by the function <code>get_crop()</code> which returns a sub-image of the image <code>image</code>. Remember that images coordinates are 4D (x,y,z,v) and for color images, the R,G,B channels are respectively given by <code>v=0, v=1</code> and <code>v=2</code>. <div class="fragment"><pre class="fragment"> visu.draw_graph(image.get_crop(0,y,0,1,image.dimx()-1,y,0,1),green,1,0,256,0); 272.165 +</pre></div> Plot the intensity profile for the green channel of the clicked line. <div class="fragment"><pre class="fragment"> visu.draw_graph(image.get_crop(0,y,0,2,image.dimx()-1,y,0,2),blue,1,0,256,0).display(draw_disp); 272.166 +</pre></div> Same thing for the blue channel. Note how the function (which return a reference to <code>visu</code>) is pipelined with the function <code>display()</code> that just paints the image visu in the corresponding display window. <div class="fragment"><pre class="fragment"> ...till the end 272.167 +</pre></div> I don't think you need more explanations !<p> 272.168 +As you have noticed, the CImg library allows to write very small and intuitive code. Note also that this source will perfectly work on Unix and Windows systems. Take also a look to the examples provided in the CImg package ( directory <code>examples/</code> ). It will show you how CImg-based code can be surprisingly small. Moreover, there is surely one example close to what you want to do. A good start will be to look at the file <code>CImg_demo.cpp</code> which contains small and various examples of what you can do with the CImg Library. All CImg classes are used in this source, and the code can be easily modified to see what happens. </div> 272.169 +<hr noshade="noshade" size="1" width="100%"> 272.170 +<a href="http://sourceforge.net"> 272.171 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 272.172 +</a> 272.173 +<!-- Start of StatCounter Code --> 272.174 +<script type="text/javascript" language="javascript"> 272.175 +<!-- 272.176 +var sc_project=895001; 272.177 +var sc_invisible=1; 272.178 +var sc_partition=7; 272.179 +var sc_security="5ea85181"; 272.180 +//--> 272.181 +</script> 272.182 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 272.183 +<!-- End of StatCounter Code --> 272.184 +</body> 272.185 +</html>
273.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 273.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimg__visual2005.html Mon Aug 03 14:09:20 2009 +0100 273.3 @@ -0,0 +1,146 @@ 273.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 273.5 +<head> 273.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 273.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 273.8 +<meta content="David Tschumperle" name="author"></meta> 273.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 273.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 273.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 273.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 273.13 +<style type="text/css"> 273.14 +<!-- 273.15 +body {background-color:white; font-family:sans-serif; } 273.16 +a:active{text-decoration:none; color:#303090} 273.17 +a:link{text-decoration:none; color:#303090} 273.18 +a:visited{text-decoration:none; color:#303090} 273.19 +a:hover{text-decoration:underline; color:#4E9F71} 273.20 +--> 273.21 +</style> 273.22 +<script language="JavaScript" type="text/javascript"> 273.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 273.24 + <!-- Web Site: http://redrival.com/eak/ --> 273.25 + <!-- This script and many more are available free online at --> 273.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 273.27 + <!-- Begin 273.28 + function NewWindow(mypage, myname, w, h, scroll) { 273.29 + var winl = (screen.width - w) / 2; 273.30 + var wint = (screen.height - h) / 2; 273.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 273.32 + win = window.open(mypage, myname, winprops) 273.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 273.34 + } 273.35 + // End --> 273.36 +</script> 273.37 +</head> 273.38 +<body> 273.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 273.40 + <tbody><tr><td> 273.41 + <hr noshade="noshade" size="1" width="90%"></hr> 273.42 + <center> 273.43 + <br/> 273.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 273.45 + <br/> 273.46 + </center> 273.47 + <hr noshade="noshade" size="1" width="90%"></hr> 273.48 + <center> 273.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 273.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 273.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 273.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 273.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 273.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 273.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 273.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 273.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 273.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 273.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 273.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 273.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 273.62 + </font> 273.63 + </td></tr></tbody> 273.64 + </table> 273.65 + </center> 273.66 + <hr noshade="noshade" size="1" width="90%"></hr> 273.67 + </td></tr></tbody> 273.68 +</table> 273.69 +<!-- Generated by Doxygen 1.5.7.1 --> 273.70 +<script type="text/javascript"> 273.71 +<!-- 273.72 +function changeDisplayState (e){ 273.73 + var num=this.id.replace(/[^[0-9]/g,''); 273.74 + var button=this.firstChild; 273.75 + var sectionDiv=document.getElementById('dynsection'+num); 273.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 273.77 + sectionDiv.style.display='block'; 273.78 + button.src='open.gif'; 273.79 + }else{ 273.80 + sectionDiv.style.display='none'; 273.81 + button.src='closed.gif'; 273.82 + } 273.83 +} 273.84 +function initDynSections(){ 273.85 + var divs=document.getElementsByTagName('div'); 273.86 + var sectionCounter=1; 273.87 + for(var i=0;i<divs.length-1;i++){ 273.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 273.89 + var header=divs[i]; 273.90 + var section=divs[i+1]; 273.91 + var button=header.firstChild; 273.92 + if (button!='IMG'){ 273.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 273.94 + button=document.createElement('img'); 273.95 + divs[i].insertBefore(button,divs[i].firstChild); 273.96 + } 273.97 + header.style.cursor='pointer'; 273.98 + header.onclick=changeDisplayState; 273.99 + header.id='dynheader'+sectionCounter; 273.100 + button.src='closed.gif'; 273.101 + section.id='dynsection'+sectionCounter; 273.102 + section.style.display='none'; 273.103 + section.style.marginLeft='14px'; 273.104 + sectionCounter++; 273.105 + } 273.106 + } 273.107 +} 273.108 +window.onload = initDynSections; 273.109 +--> 273.110 +</script> 273.111 +<div class="navigation" id="top"> 273.112 + <div class="tabs"> 273.113 + <ul> 273.114 + <li><a href="index.html"><span>Main Page</span></a></li> 273.115 + <li><a href="modules.html"><span>Modules</span></a></li> 273.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 273.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 273.118 + </ul> 273.119 + </div> 273.120 +</div> 273.121 +<div class="contents"> 273.122 +<h1>How to use CImg library with Visual C++ 2005 Express Edition ?.</h1><table border="0" cellpadding="0" cellspacing="0"> 273.123 +<tr><td></td></tr> 273.124 +</table> 273.125 +<h2><a class="anchor" name="s13968"> 273.126 +How to use CImg library with Visual C++ 2005 Express Edition ?</a></h2> 273.127 +This section has been written by Vincent Garcia and Alexandre Fournier from I3S/Sophia_Antipolis.<p> 273.128 +<ul> 273.129 +<li>Download CImg library</li><li>Download and install Visual C++ 2005 Express Edition</li><li>Download and install Microsoft Windows SDK</li><li>Configure Visual C++ to take into account Microsoft SDK<ul> 273.130 +<li>1. Go to menu "Tools -> options"</li><li>2. Select option "Projects and Solutions -> VC++ Directories"</li><li>3. In the select liste "Show directories for", choose "include files", and add C: Files Platform SDK (adapt if needed)</li><li>4. In the select liste "Show directories for", choose "library files", and add C: Files Platform SDK (adapt if needed) Edit file C: Files Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops (adapt if needed)</li><li>6. 7. Remplace the line AdditionalDependencies="kernel32.lib" /> by AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib" /></li></ul> 273.131 +</li><li>Restart Visual C++</li><li>Import CImg library in your main file </li></ul> 273.132 +</div> 273.133 +<hr noshade="noshade" size="1" width="100%"> 273.134 +<a href="http://sourceforge.net"> 273.135 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 273.136 +</a> 273.137 +<!-- Start of StatCounter Code --> 273.138 +<script type="text/javascript" language="javascript"> 273.139 +<!-- 273.140 +var sc_project=895001; 273.141 +var sc_invisible=1; 273.142 +var sc_partition=7; 273.143 +var sc_security="5ea85181"; 273.144 +//--> 273.145 +</script> 273.146 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 273.147 +<!-- End of StatCounter Code --> 273.148 +</body> 273.149 +</html>
274.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 274.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimgdisplay__structure.html Mon Aug 03 14:09:20 2009 +0100 274.3 @@ -0,0 +1,147 @@ 274.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 274.5 +<head> 274.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 274.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 274.8 +<meta content="David Tschumperle" name="author"></meta> 274.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 274.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 274.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 274.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 274.13 +<style type="text/css"> 274.14 +<!-- 274.15 +body {background-color:white; font-family:sans-serif; } 274.16 +a:active{text-decoration:none; color:#303090} 274.17 +a:link{text-decoration:none; color:#303090} 274.18 +a:visited{text-decoration:none; color:#303090} 274.19 +a:hover{text-decoration:underline; color:#4E9F71} 274.20 +--> 274.21 +</style> 274.22 +<script language="JavaScript" type="text/javascript"> 274.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 274.24 + <!-- Web Site: http://redrival.com/eak/ --> 274.25 + <!-- This script and many more are available free online at --> 274.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 274.27 + <!-- Begin 274.28 + function NewWindow(mypage, myname, w, h, scroll) { 274.29 + var winl = (screen.width - w) / 2; 274.30 + var wint = (screen.height - h) / 2; 274.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 274.32 + win = window.open(mypage, myname, winprops) 274.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 274.34 + } 274.35 + // End --> 274.36 +</script> 274.37 +</head> 274.38 +<body> 274.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 274.40 + <tbody><tr><td> 274.41 + <hr noshade="noshade" size="1" width="90%"></hr> 274.42 + <center> 274.43 + <br/> 274.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 274.45 + <br/> 274.46 + </center> 274.47 + <hr noshade="noshade" size="1" width="90%"></hr> 274.48 + <center> 274.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 274.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 274.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 274.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 274.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 274.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 274.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 274.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 274.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 274.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 274.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 274.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 274.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 274.62 + </font> 274.63 + </td></tr></tbody> 274.64 + </table> 274.65 + </center> 274.66 + <hr noshade="noshade" size="1" width="90%"></hr> 274.67 + </td></tr></tbody> 274.68 +</table> 274.69 +<!-- Generated by Doxygen 1.5.7.1 --> 274.70 +<script type="text/javascript"> 274.71 +<!-- 274.72 +function changeDisplayState (e){ 274.73 + var num=this.id.replace(/[^[0-9]/g,''); 274.74 + var button=this.firstChild; 274.75 + var sectionDiv=document.getElementById('dynsection'+num); 274.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 274.77 + sectionDiv.style.display='block'; 274.78 + button.src='open.gif'; 274.79 + }else{ 274.80 + sectionDiv.style.display='none'; 274.81 + button.src='closed.gif'; 274.82 + } 274.83 +} 274.84 +function initDynSections(){ 274.85 + var divs=document.getElementsByTagName('div'); 274.86 + var sectionCounter=1; 274.87 + for(var i=0;i<divs.length-1;i++){ 274.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 274.89 + var header=divs[i]; 274.90 + var section=divs[i+1]; 274.91 + var button=header.firstChild; 274.92 + if (button!='IMG'){ 274.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 274.94 + button=document.createElement('img'); 274.95 + divs[i].insertBefore(button,divs[i].firstChild); 274.96 + } 274.97 + header.style.cursor='pointer'; 274.98 + header.onclick=changeDisplayState; 274.99 + header.id='dynheader'+sectionCounter; 274.100 + button.src='closed.gif'; 274.101 + section.id='dynsection'+sectionCounter; 274.102 + section.style.display='none'; 274.103 + section.style.marginLeft='14px'; 274.104 + sectionCounter++; 274.105 + } 274.106 + } 274.107 +} 274.108 +window.onload = initDynSections; 274.109 +--> 274.110 +</script> 274.111 +<div class="navigation" id="top"> 274.112 + <div class="tabs"> 274.113 + <ul> 274.114 + <li><a href="index.html"><span>Main Page</span></a></li> 274.115 + <li><a href="modules.html"><span>Modules</span></a></li> 274.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 274.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 274.118 + </ul> 274.119 + </div> 274.120 +</div> 274.121 +<div class="contents"> 274.122 +<h1>CImgDisplay : The image display structure.</h1><table border="0" cellpadding="0" cellspacing="0"> 274.123 +<tr><td></td></tr> 274.124 +</table> 274.125 +Description of the CImgDisplay structure<h2><a class="anchor" name="cds0"> 274.126 +Structure overview</a></h2> 274.127 +<h2><a class="anchor" name="cds1"> 274.128 +Image display construction/destruction/copy</a></h2> 274.129 +<h2><a class="anchor" name="cds2"> 274.130 +Image methods</a></h2> 274.131 +<h2><a class="anchor" name="cds4"> 274.132 +Low-level structure</a></h2> 274.133 +</div> 274.134 +<hr noshade="noshade" size="1" width="100%"> 274.135 +<a href="http://sourceforge.net"> 274.136 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 274.137 +</a> 274.138 +<!-- Start of StatCounter Code --> 274.139 +<script type="text/javascript" language="javascript"> 274.140 +<!-- 274.141 +var sc_project=895001; 274.142 +var sc_invisible=1; 274.143 +var sc_partition=7; 274.144 +var sc_security="5ea85181"; 274.145 +//--> 274.146 +</script> 274.147 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 274.148 +<!-- End of StatCounter Code --> 274.149 +</body> 274.150 +</html>
275.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 275.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimgexception__structure.html Mon Aug 03 14:09:20 2009 +0100 275.3 @@ -0,0 +1,141 @@ 275.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 275.5 +<head> 275.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 275.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 275.8 +<meta content="David Tschumperle" name="author"></meta> 275.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 275.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 275.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 275.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 275.13 +<style type="text/css"> 275.14 +<!-- 275.15 +body {background-color:white; font-family:sans-serif; } 275.16 +a:active{text-decoration:none; color:#303090} 275.17 +a:link{text-decoration:none; color:#303090} 275.18 +a:visited{text-decoration:none; color:#303090} 275.19 +a:hover{text-decoration:underline; color:#4E9F71} 275.20 +--> 275.21 +</style> 275.22 +<script language="JavaScript" type="text/javascript"> 275.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 275.24 + <!-- Web Site: http://redrival.com/eak/ --> 275.25 + <!-- This script and many more are available free online at --> 275.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 275.27 + <!-- Begin 275.28 + function NewWindow(mypage, myname, w, h, scroll) { 275.29 + var winl = (screen.width - w) / 2; 275.30 + var wint = (screen.height - h) / 2; 275.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 275.32 + win = window.open(mypage, myname, winprops) 275.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 275.34 + } 275.35 + // End --> 275.36 +</script> 275.37 +</head> 275.38 +<body> 275.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 275.40 + <tbody><tr><td> 275.41 + <hr noshade="noshade" size="1" width="90%"></hr> 275.42 + <center> 275.43 + <br/> 275.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 275.45 + <br/> 275.46 + </center> 275.47 + <hr noshade="noshade" size="1" width="90%"></hr> 275.48 + <center> 275.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 275.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 275.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 275.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 275.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 275.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 275.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 275.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 275.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 275.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 275.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 275.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 275.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 275.62 + </font> 275.63 + </td></tr></tbody> 275.64 + </table> 275.65 + </center> 275.66 + <hr noshade="noshade" size="1" width="90%"></hr> 275.67 + </td></tr></tbody> 275.68 +</table> 275.69 +<!-- Generated by Doxygen 1.5.7.1 --> 275.70 +<script type="text/javascript"> 275.71 +<!-- 275.72 +function changeDisplayState (e){ 275.73 + var num=this.id.replace(/[^[0-9]/g,''); 275.74 + var button=this.firstChild; 275.75 + var sectionDiv=document.getElementById('dynsection'+num); 275.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 275.77 + sectionDiv.style.display='block'; 275.78 + button.src='open.gif'; 275.79 + }else{ 275.80 + sectionDiv.style.display='none'; 275.81 + button.src='closed.gif'; 275.82 + } 275.83 +} 275.84 +function initDynSections(){ 275.85 + var divs=document.getElementsByTagName('div'); 275.86 + var sectionCounter=1; 275.87 + for(var i=0;i<divs.length-1;i++){ 275.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 275.89 + var header=divs[i]; 275.90 + var section=divs[i+1]; 275.91 + var button=header.firstChild; 275.92 + if (button!='IMG'){ 275.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 275.94 + button=document.createElement('img'); 275.95 + divs[i].insertBefore(button,divs[i].firstChild); 275.96 + } 275.97 + header.style.cursor='pointer'; 275.98 + header.onclick=changeDisplayState; 275.99 + header.id='dynheader'+sectionCounter; 275.100 + button.src='closed.gif'; 275.101 + section.id='dynsection'+sectionCounter; 275.102 + section.style.display='none'; 275.103 + section.style.marginLeft='14px'; 275.104 + sectionCounter++; 275.105 + } 275.106 + } 275.107 +} 275.108 +window.onload = initDynSections; 275.109 +--> 275.110 +</script> 275.111 +<div class="navigation" id="top"> 275.112 + <div class="tabs"> 275.113 + <ul> 275.114 + <li><a href="index.html"><span>Main Page</span></a></li> 275.115 + <li><a href="modules.html"><span>Modules</span></a></li> 275.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 275.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 275.118 + </ul> 275.119 + </div> 275.120 +</div> 275.121 +<div class="contents"> 275.122 +<h1>CImgException : The library exception structure.</h1><table border="0" cellpadding="0" cellspacing="0"> 275.123 +<tr><td></td></tr> 275.124 +</table> 275.125 +Description of the CImgException structure<h2><a class="anchor" name="ces0"> 275.126 +Structure overview</a></h2> 275.127 +</div> 275.128 +<hr noshade="noshade" size="1" width="100%"> 275.129 +<a href="http://sourceforge.net"> 275.130 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 275.131 +</a> 275.132 +<!-- Start of StatCounter Code --> 275.133 +<script type="text/javascript" language="javascript"> 275.134 +<!-- 275.135 +var sc_project=895001; 275.136 +var sc_invisible=1; 275.137 +var sc_partition=7; 275.138 +var sc_security="5ea85181"; 275.139 +//--> 275.140 +</script> 275.141 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 275.142 +<!-- End of StatCounter Code --> 275.143 +</body> 275.144 +</html>
276.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 276.2 +++ b/PTdecode/CImg-1.3.0/html/reference/group__cimglist__structure.html Mon Aug 03 14:09:20 2009 +0100 276.3 @@ -0,0 +1,147 @@ 276.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 276.5 +<head> 276.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 276.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 276.8 +<meta content="David Tschumperle" name="author"></meta> 276.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 276.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 276.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 276.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 276.13 +<style type="text/css"> 276.14 +<!-- 276.15 +body {background-color:white; font-family:sans-serif; } 276.16 +a:active{text-decoration:none; color:#303090} 276.17 +a:link{text-decoration:none; color:#303090} 276.18 +a:visited{text-decoration:none; color:#303090} 276.19 +a:hover{text-decoration:underline; color:#4E9F71} 276.20 +--> 276.21 +</style> 276.22 +<script language="JavaScript" type="text/javascript"> 276.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 276.24 + <!-- Web Site: http://redrival.com/eak/ --> 276.25 + <!-- This script and many more are available free online at --> 276.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 276.27 + <!-- Begin 276.28 + function NewWindow(mypage, myname, w, h, scroll) { 276.29 + var winl = (screen.width - w) / 2; 276.30 + var wint = (screen.height - h) / 2; 276.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 276.32 + win = window.open(mypage, myname, winprops) 276.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 276.34 + } 276.35 + // End --> 276.36 +</script> 276.37 +</head> 276.38 +<body> 276.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 276.40 + <tbody><tr><td> 276.41 + <hr noshade="noshade" size="1" width="90%"></hr> 276.42 + <center> 276.43 + <br/> 276.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 276.45 + <br/> 276.46 + </center> 276.47 + <hr noshade="noshade" size="1" width="90%"></hr> 276.48 + <center> 276.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 276.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 276.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 276.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 276.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 276.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 276.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 276.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 276.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 276.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 276.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 276.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 276.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 276.62 + </font> 276.63 + </td></tr></tbody> 276.64 + </table> 276.65 + </center> 276.66 + <hr noshade="noshade" size="1" width="90%"></hr> 276.67 + </td></tr></tbody> 276.68 +</table> 276.69 +<!-- Generated by Doxygen 1.5.7.1 --> 276.70 +<script type="text/javascript"> 276.71 +<!-- 276.72 +function changeDisplayState (e){ 276.73 + var num=this.id.replace(/[^[0-9]/g,''); 276.74 + var button=this.firstChild; 276.75 + var sectionDiv=document.getElementById('dynsection'+num); 276.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 276.77 + sectionDiv.style.display='block'; 276.78 + button.src='open.gif'; 276.79 + }else{ 276.80 + sectionDiv.style.display='none'; 276.81 + button.src='closed.gif'; 276.82 + } 276.83 +} 276.84 +function initDynSections(){ 276.85 + var divs=document.getElementsByTagName('div'); 276.86 + var sectionCounter=1; 276.87 + for(var i=0;i<divs.length-1;i++){ 276.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 276.89 + var header=divs[i]; 276.90 + var section=divs[i+1]; 276.91 + var button=header.firstChild; 276.92 + if (button!='IMG'){ 276.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 276.94 + button=document.createElement('img'); 276.95 + divs[i].insertBefore(button,divs[i].firstChild); 276.96 + } 276.97 + header.style.cursor='pointer'; 276.98 + header.onclick=changeDisplayState; 276.99 + header.id='dynheader'+sectionCounter; 276.100 + button.src='closed.gif'; 276.101 + section.id='dynsection'+sectionCounter; 276.102 + section.style.display='none'; 276.103 + section.style.marginLeft='14px'; 276.104 + sectionCounter++; 276.105 + } 276.106 + } 276.107 +} 276.108 +window.onload = initDynSections; 276.109 +--> 276.110 +</script> 276.111 +<div class="navigation" id="top"> 276.112 + <div class="tabs"> 276.113 + <ul> 276.114 + <li><a href="index.html"><span>Main Page</span></a></li> 276.115 + <li><a href="modules.html"><span>Modules</span></a></li> 276.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 276.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 276.118 + </ul> 276.119 + </div> 276.120 +</div> 276.121 +<div class="contents"> 276.122 +<h1>CImgList<T> : The image list structure.</h1><table border="0" cellpadding="0" cellspacing="0"> 276.123 +<tr><td></td></tr> 276.124 +</table> 276.125 +Description of the CImgList<T> structure<h2><a class="anchor" name="cls0"> 276.126 +Structure overview</a></h2> 276.127 +<h2><a class="anchor" name="cls1"> 276.128 +Image list construction/destruction/copy</a></h2> 276.129 +<h2><a class="anchor" name="cls2"> 276.130 +Image methods</a></h2> 276.131 +<h2><a class="anchor" name="cls4"> 276.132 +Low-level structure</a></h2> 276.133 +</div> 276.134 +<hr noshade="noshade" size="1" width="100%"> 276.135 +<a href="http://sourceforge.net"> 276.136 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 276.137 +</a> 276.138 +<!-- Start of StatCounter Code --> 276.139 +<script type="text/javascript" language="javascript"> 276.140 +<!-- 276.141 +var sc_project=895001; 276.142 +var sc_invisible=1; 276.143 +var sc_partition=7; 276.144 +var sc_security="5ea85181"; 276.145 +//--> 276.146 +</script> 276.147 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 276.148 +<!-- End of StatCounter Code --> 276.149 +</body> 276.150 +</html>
277.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 277.2 +++ b/PTdecode/CImg-1.3.0/html/reference/hierarchy.html Mon Aug 03 14:09:20 2009 +0100 277.3 @@ -0,0 +1,149 @@ 277.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 277.5 +<head> 277.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 277.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 277.8 +<meta content="David Tschumperle" name="author"></meta> 277.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 277.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 277.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 277.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 277.13 +<style type="text/css"> 277.14 +<!-- 277.15 +body {background-color:white; font-family:sans-serif; } 277.16 +a:active{text-decoration:none; color:#303090} 277.17 +a:link{text-decoration:none; color:#303090} 277.18 +a:visited{text-decoration:none; color:#303090} 277.19 +a:hover{text-decoration:underline; color:#4E9F71} 277.20 +--> 277.21 +</style> 277.22 +<script language="JavaScript" type="text/javascript"> 277.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 277.24 + <!-- Web Site: http://redrival.com/eak/ --> 277.25 + <!-- This script and many more are available free online at --> 277.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 277.27 + <!-- Begin 277.28 + function NewWindow(mypage, myname, w, h, scroll) { 277.29 + var winl = (screen.width - w) / 2; 277.30 + var wint = (screen.height - h) / 2; 277.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 277.32 + win = window.open(mypage, myname, winprops) 277.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 277.34 + } 277.35 + // End --> 277.36 +</script> 277.37 +</head> 277.38 +<body> 277.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 277.40 + <tbody><tr><td> 277.41 + <hr noshade="noshade" size="1" width="90%"></hr> 277.42 + <center> 277.43 + <br/> 277.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 277.45 + <br/> 277.46 + </center> 277.47 + <hr noshade="noshade" size="1" width="90%"></hr> 277.48 + <center> 277.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 277.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 277.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 277.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 277.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 277.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 277.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 277.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 277.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 277.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 277.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 277.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 277.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 277.62 + </font> 277.63 + </td></tr></tbody> 277.64 + </table> 277.65 + </center> 277.66 + <hr noshade="noshade" size="1" width="90%"></hr> 277.67 + </td></tr></tbody> 277.68 +</table> 277.69 +<!-- Generated by Doxygen 1.5.7.1 --> 277.70 +<script type="text/javascript"> 277.71 +<!-- 277.72 +function changeDisplayState (e){ 277.73 + var num=this.id.replace(/[^[0-9]/g,''); 277.74 + var button=this.firstChild; 277.75 + var sectionDiv=document.getElementById('dynsection'+num); 277.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 277.77 + sectionDiv.style.display='block'; 277.78 + button.src='open.gif'; 277.79 + }else{ 277.80 + sectionDiv.style.display='none'; 277.81 + button.src='closed.gif'; 277.82 + } 277.83 +} 277.84 +function initDynSections(){ 277.85 + var divs=document.getElementsByTagName('div'); 277.86 + var sectionCounter=1; 277.87 + for(var i=0;i<divs.length-1;i++){ 277.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 277.89 + var header=divs[i]; 277.90 + var section=divs[i+1]; 277.91 + var button=header.firstChild; 277.92 + if (button!='IMG'){ 277.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 277.94 + button=document.createElement('img'); 277.95 + divs[i].insertBefore(button,divs[i].firstChild); 277.96 + } 277.97 + header.style.cursor='pointer'; 277.98 + header.onclick=changeDisplayState; 277.99 + header.id='dynheader'+sectionCounter; 277.100 + button.src='closed.gif'; 277.101 + section.id='dynsection'+sectionCounter; 277.102 + section.style.display='none'; 277.103 + section.style.marginLeft='14px'; 277.104 + sectionCounter++; 277.105 + } 277.106 + } 277.107 +} 277.108 +window.onload = initDynSections; 277.109 +--> 277.110 +</script> 277.111 +<div class="navigation" id="top"> 277.112 + <div class="tabs"> 277.113 + <ul> 277.114 + <li><a href="index.html"><span>Main Page</span></a></li> 277.115 + <li><a href="modules.html"><span>Modules</span></a></li> 277.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 277.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 277.118 + </ul> 277.119 + </div> 277.120 + <div class="tabs"> 277.121 + <ul> 277.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 277.123 + <li class="current"><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 277.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 277.125 + </ul> 277.126 + </div> 277.127 +</div> 277.128 +<div class="contents"> 277.129 +<h1>Class Hierarchy</h1>This inheritance list is sorted roughly, but not completely, alphabetically:<ul> 277.130 +<li><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> 277.131 +<li><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> 277.132 +<li><a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a> 277.133 +<li><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a> 277.134 +</ul> 277.135 +</div> 277.136 +<hr noshade="noshade" size="1" width="100%"> 277.137 +<a href="http://sourceforge.net"> 277.138 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 277.139 +</a> 277.140 +<!-- Start of StatCounter Code --> 277.141 +<script type="text/javascript" language="javascript"> 277.142 +<!-- 277.143 +var sc_project=895001; 277.144 +var sc_invisible=1; 277.145 +var sc_partition=7; 277.146 +var sc_security="5ea85181"; 277.147 +//--> 277.148 +</script> 277.149 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 277.150 +<!-- End of StatCounter Code --> 277.151 +</body> 277.152 +</html>
278.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 278.2 +++ b/PTdecode/CImg-1.3.0/html/reference/index.html Mon Aug 03 14:09:20 2009 +0100 278.3 @@ -0,0 +1,142 @@ 278.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 278.5 +<head> 278.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 278.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 278.8 +<meta content="David Tschumperle" name="author"></meta> 278.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 278.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 278.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 278.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 278.13 +<style type="text/css"> 278.14 +<!-- 278.15 +body {background-color:white; font-family:sans-serif; } 278.16 +a:active{text-decoration:none; color:#303090} 278.17 +a:link{text-decoration:none; color:#303090} 278.18 +a:visited{text-decoration:none; color:#303090} 278.19 +a:hover{text-decoration:underline; color:#4E9F71} 278.20 +--> 278.21 +</style> 278.22 +<script language="JavaScript" type="text/javascript"> 278.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 278.24 + <!-- Web Site: http://redrival.com/eak/ --> 278.25 + <!-- This script and many more are available free online at --> 278.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 278.27 + <!-- Begin 278.28 + function NewWindow(mypage, myname, w, h, scroll) { 278.29 + var winl = (screen.width - w) / 2; 278.30 + var wint = (screen.height - h) / 2; 278.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 278.32 + win = window.open(mypage, myname, winprops) 278.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 278.34 + } 278.35 + // End --> 278.36 +</script> 278.37 +</head> 278.38 +<body> 278.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 278.40 + <tbody><tr><td> 278.41 + <hr noshade="noshade" size="1" width="90%"></hr> 278.42 + <center> 278.43 + <br/> 278.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 278.45 + <br/> 278.46 + </center> 278.47 + <hr noshade="noshade" size="1" width="90%"></hr> 278.48 + <center> 278.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 278.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 278.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 278.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 278.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 278.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 278.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 278.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 278.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 278.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 278.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 278.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 278.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 278.62 + </font> 278.63 + </td></tr></tbody> 278.64 + </table> 278.65 + </center> 278.66 + <hr noshade="noshade" size="1" width="90%"></hr> 278.67 + </td></tr></tbody> 278.68 +</table> 278.69 +<!-- Generated by Doxygen 1.5.7.1 --> 278.70 +<script type="text/javascript"> 278.71 +<!-- 278.72 +function changeDisplayState (e){ 278.73 + var num=this.id.replace(/[^[0-9]/g,''); 278.74 + var button=this.firstChild; 278.75 + var sectionDiv=document.getElementById('dynsection'+num); 278.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 278.77 + sectionDiv.style.display='block'; 278.78 + button.src='open.gif'; 278.79 + }else{ 278.80 + sectionDiv.style.display='none'; 278.81 + button.src='closed.gif'; 278.82 + } 278.83 +} 278.84 +function initDynSections(){ 278.85 + var divs=document.getElementsByTagName('div'); 278.86 + var sectionCounter=1; 278.87 + for(var i=0;i<divs.length-1;i++){ 278.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 278.89 + var header=divs[i]; 278.90 + var section=divs[i+1]; 278.91 + var button=header.firstChild; 278.92 + if (button!='IMG'){ 278.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 278.94 + button=document.createElement('img'); 278.95 + divs[i].insertBefore(button,divs[i].firstChild); 278.96 + } 278.97 + header.style.cursor='pointer'; 278.98 + header.onclick=changeDisplayState; 278.99 + header.id='dynheader'+sectionCounter; 278.100 + button.src='closed.gif'; 278.101 + section.id='dynsection'+sectionCounter; 278.102 + section.style.display='none'; 278.103 + section.style.marginLeft='14px'; 278.104 + sectionCounter++; 278.105 + } 278.106 + } 278.107 +} 278.108 +window.onload = initDynSections; 278.109 +--> 278.110 +</script> 278.111 +<div class="navigation" id="top"> 278.112 + <div class="tabs"> 278.113 + <ul> 278.114 + <li class="current"><a href="index.html"><span>Main Page</span></a></li> 278.115 + <li><a href="modules.html"><span>Modules</span></a></li> 278.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 278.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 278.118 + </ul> 278.119 + </div> 278.120 +</div> 278.121 +<div class="contents"> 278.122 +<h1>TheCImgLibrary Documentation</h1> 278.123 +<p> 278.124 +<h3 align="center">1.3.0 </h3>This is the reference documentation of <a href="http://cimg.sourceforge.net">the CImg Library</a>, the C++ template image processing library. This documentation have been generated using the tool <a href="http://www.doxygen.org">doxygen</a>. It contains a detailed description of all classes and functions of the CImg Library. If you have downloaded the CImg package, you actually have a local copy of these pages in the <code>CImg/html/reference/</code> directory.<p> 278.125 +Use the menu above to navigate through the documentation pages. As a first step, you may look at the list of <a href="modules.html">available modules</a>.<p> 278.126 +A complete PDF version of this reference documentation is <a href="../CImg_reference.pdf">available here</a> for off-line reading.<p> 278.127 +A partial translation in Chinese is <a href="../CImg_reference_chinese.pdf">available here</a>.<p> 278.128 +You may be interested also in the <a href="../CImg_slides.pdf">presentation slides</a> presenting an overview of the CImg Library capabilities. </div> 278.129 +<hr noshade="noshade" size="1" width="100%"> 278.130 +<a href="http://sourceforge.net"> 278.131 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 278.132 +</a> 278.133 +<!-- Start of StatCounter Code --> 278.134 +<script type="text/javascript" language="javascript"> 278.135 +<!-- 278.136 +var sc_project=895001; 278.137 +var sc_invisible=1; 278.138 +var sc_partition=7; 278.139 +var sc_security="5ea85181"; 278.140 +//--> 278.141 +</script> 278.142 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 278.143 +<!-- End of StatCounter Code --> 278.144 +</body> 278.145 +</html>
279.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 279.2 +++ b/PTdecode/CImg-1.3.0/html/reference/modules.html Mon Aug 03 14:09:20 2009 +0100 279.3 @@ -0,0 +1,153 @@ 279.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 279.5 +<head> 279.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 279.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 279.8 +<meta content="David Tschumperle" name="author"></meta> 279.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 279.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 279.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 279.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 279.13 +<style type="text/css"> 279.14 +<!-- 279.15 +body {background-color:white; font-family:sans-serif; } 279.16 +a:active{text-decoration:none; color:#303090} 279.17 +a:link{text-decoration:none; color:#303090} 279.18 +a:visited{text-decoration:none; color:#303090} 279.19 +a:hover{text-decoration:underline; color:#4E9F71} 279.20 +--> 279.21 +</style> 279.22 +<script language="JavaScript" type="text/javascript"> 279.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 279.24 + <!-- Web Site: http://redrival.com/eak/ --> 279.25 + <!-- This script and many more are available free online at --> 279.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 279.27 + <!-- Begin 279.28 + function NewWindow(mypage, myname, w, h, scroll) { 279.29 + var winl = (screen.width - w) / 2; 279.30 + var wint = (screen.height - h) / 2; 279.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 279.32 + win = window.open(mypage, myname, winprops) 279.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 279.34 + } 279.35 + // End --> 279.36 +</script> 279.37 +</head> 279.38 +<body> 279.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 279.40 + <tbody><tr><td> 279.41 + <hr noshade="noshade" size="1" width="90%"></hr> 279.42 + <center> 279.43 + <br/> 279.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 279.45 + <br/> 279.46 + </center> 279.47 + <hr noshade="noshade" size="1" width="90%"></hr> 279.48 + <center> 279.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 279.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 279.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 279.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 279.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 279.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 279.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 279.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 279.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 279.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 279.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 279.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 279.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 279.62 + </font> 279.63 + </td></tr></tbody> 279.64 + </table> 279.65 + </center> 279.66 + <hr noshade="noshade" size="1" width="90%"></hr> 279.67 + </td></tr></tbody> 279.68 +</table> 279.69 +<!-- Generated by Doxygen 1.5.7.1 --> 279.70 +<script type="text/javascript"> 279.71 +<!-- 279.72 +function changeDisplayState (e){ 279.73 + var num=this.id.replace(/[^[0-9]/g,''); 279.74 + var button=this.firstChild; 279.75 + var sectionDiv=document.getElementById('dynsection'+num); 279.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 279.77 + sectionDiv.style.display='block'; 279.78 + button.src='open.gif'; 279.79 + }else{ 279.80 + sectionDiv.style.display='none'; 279.81 + button.src='closed.gif'; 279.82 + } 279.83 +} 279.84 +function initDynSections(){ 279.85 + var divs=document.getElementsByTagName('div'); 279.86 + var sectionCounter=1; 279.87 + for(var i=0;i<divs.length-1;i++){ 279.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 279.89 + var header=divs[i]; 279.90 + var section=divs[i+1]; 279.91 + var button=header.firstChild; 279.92 + if (button!='IMG'){ 279.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 279.94 + button=document.createElement('img'); 279.95 + divs[i].insertBefore(button,divs[i].firstChild); 279.96 + } 279.97 + header.style.cursor='pointer'; 279.98 + header.onclick=changeDisplayState; 279.99 + header.id='dynheader'+sectionCounter; 279.100 + button.src='closed.gif'; 279.101 + section.id='dynsection'+sectionCounter; 279.102 + section.style.display='none'; 279.103 + section.style.marginLeft='14px'; 279.104 + sectionCounter++; 279.105 + } 279.106 + } 279.107 +} 279.108 +window.onload = initDynSections; 279.109 +--> 279.110 +</script> 279.111 +<div class="navigation" id="top"> 279.112 + <div class="tabs"> 279.113 + <ul> 279.114 + <li><a href="index.html"><span>Main Page</span></a></li> 279.115 + <li class="current"><a href="modules.html"><span>Modules</span></a></li> 279.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 279.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 279.118 + </ul> 279.119 + </div> 279.120 +</div> 279.121 +<div class="contents"> 279.122 +<h1>Modules</h1>Here is a list of all modules:<ul> 279.123 +<li><a class="el" href="group__cimg__overview.html">CImg Library Overview</a> 279.124 +<li><a class="el" href="group__cimg__structure.html">CImg<T> : The image structure.</a> 279.125 +<li><a class="el" href="group__cimglist__structure.html">CImgList<T> : The image list structure.</a> 279.126 +<li><a class="el" href="group__cimgdisplay__structure.html">CImgDisplay : The image display structure.</a> 279.127 +<li><a class="el" href="group__cimgexception__structure.html">CImgException : The library exception structure.</a> 279.128 +<li><a class="el" href="group__cimg__faq.html">FAQ : Frequently Asked Questions.</a> 279.129 +<li><a class="el" href="group__cimg__environment.html">Setting Environment Variables</a> 279.130 +<li><a class="el" href="group__cimg__visual2005.html">How to use CImg library with Visual C++ 2005 Express Edition ?.</a> 279.131 +<li><a class="el" href="group__cimg__tutorial.html">Tutorial : Getting Started.</a> 279.132 +<li><a class="el" href="group__cimg__drawing.html">Using Drawing Functions.</a> 279.133 +<li><a class="el" href="group__cimg__loops.html">Using Image Loops.</a> 279.134 +<li><a class="el" href="group__cimg__displays.html">Using Display Windows.</a> 279.135 +<li><a class="el" href="group__cimg__storage.html">How pixel data are stored with CImg.</a> 279.136 +<li><a class="el" href="group__cimg__files__io.html">Files IO in CImg.</a> 279.137 +<li><a class="el" href="group__cimg__options.html">Retrieving Command Line Arguments.</a> 279.138 +</ul> 279.139 +</div> 279.140 +<hr noshade="noshade" size="1" width="100%"> 279.141 +<a href="http://sourceforge.net"> 279.142 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 279.143 +</a> 279.144 +<!-- Start of StatCounter Code --> 279.145 +<script type="text/javascript" language="javascript"> 279.146 +<!-- 279.147 +var sc_project=895001; 279.148 +var sc_invisible=1; 279.149 +var sc_partition=7; 279.150 +var sc_security="5ea85181"; 279.151 +//--> 279.152 +</script> 279.153 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 279.154 +<!-- End of StatCounter Code --> 279.155 +</body> 279.156 +</html>
280.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 280.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacecimg__library.html Mon Aug 03 14:09:20 2009 +0100 280.3 @@ -0,0 +1,174 @@ 280.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 280.5 +<head> 280.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 280.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 280.8 +<meta content="David Tschumperle" name="author"></meta> 280.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 280.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 280.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 280.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 280.13 +<style type="text/css"> 280.14 +<!-- 280.15 +body {background-color:white; font-family:sans-serif; } 280.16 +a:active{text-decoration:none; color:#303090} 280.17 +a:link{text-decoration:none; color:#303090} 280.18 +a:visited{text-decoration:none; color:#303090} 280.19 +a:hover{text-decoration:underline; color:#4E9F71} 280.20 +--> 280.21 +</style> 280.22 +<script language="JavaScript" type="text/javascript"> 280.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 280.24 + <!-- Web Site: http://redrival.com/eak/ --> 280.25 + <!-- This script and many more are available free online at --> 280.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 280.27 + <!-- Begin 280.28 + function NewWindow(mypage, myname, w, h, scroll) { 280.29 + var winl = (screen.width - w) / 2; 280.30 + var wint = (screen.height - h) / 2; 280.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 280.32 + win = window.open(mypage, myname, winprops) 280.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 280.34 + } 280.35 + // End --> 280.36 +</script> 280.37 +</head> 280.38 +<body> 280.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 280.40 + <tbody><tr><td> 280.41 + <hr noshade="noshade" size="1" width="90%"></hr> 280.42 + <center> 280.43 + <br/> 280.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 280.45 + <br/> 280.46 + </center> 280.47 + <hr noshade="noshade" size="1" width="90%"></hr> 280.48 + <center> 280.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 280.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 280.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 280.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 280.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 280.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 280.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 280.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 280.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 280.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 280.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 280.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 280.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 280.62 + </font> 280.63 + </td></tr></tbody> 280.64 + </table> 280.65 + </center> 280.66 + <hr noshade="noshade" size="1" width="90%"></hr> 280.67 + </td></tr></tbody> 280.68 +</table> 280.69 +<!-- Generated by Doxygen 1.5.7.1 --> 280.70 +<script type="text/javascript"> 280.71 +<!-- 280.72 +function changeDisplayState (e){ 280.73 + var num=this.id.replace(/[^[0-9]/g,''); 280.74 + var button=this.firstChild; 280.75 + var sectionDiv=document.getElementById('dynsection'+num); 280.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 280.77 + sectionDiv.style.display='block'; 280.78 + button.src='open.gif'; 280.79 + }else{ 280.80 + sectionDiv.style.display='none'; 280.81 + button.src='closed.gif'; 280.82 + } 280.83 +} 280.84 +function initDynSections(){ 280.85 + var divs=document.getElementsByTagName('div'); 280.86 + var sectionCounter=1; 280.87 + for(var i=0;i<divs.length-1;i++){ 280.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 280.89 + var header=divs[i]; 280.90 + var section=divs[i+1]; 280.91 + var button=header.firstChild; 280.92 + if (button!='IMG'){ 280.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 280.94 + button=document.createElement('img'); 280.95 + divs[i].insertBefore(button,divs[i].firstChild); 280.96 + } 280.97 + header.style.cursor='pointer'; 280.98 + header.onclick=changeDisplayState; 280.99 + header.id='dynheader'+sectionCounter; 280.100 + button.src='closed.gif'; 280.101 + section.id='dynsection'+sectionCounter; 280.102 + section.style.display='none'; 280.103 + section.style.marginLeft='14px'; 280.104 + sectionCounter++; 280.105 + } 280.106 + } 280.107 +} 280.108 +window.onload = initDynSections; 280.109 +--> 280.110 +</script> 280.111 +<div class="navigation" id="top"> 280.112 + <div class="tabs"> 280.113 + <ul> 280.114 + <li><a href="index.html"><span>Main Page</span></a></li> 280.115 + <li><a href="modules.html"><span>Modules</span></a></li> 280.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 280.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 280.118 + </ul> 280.119 + </div> 280.120 + <div class="tabs"> 280.121 + <ul> 280.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 280.123 + <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 280.124 + </ul> 280.125 + </div> 280.126 +</div> 280.127 +<div class="contents"> 280.128 +<h1>cimg_library Namespace Reference</h1>This namespace encompasses all classes and functions of the CImg library. 280.129 +<a href="#_details">More...</a> 280.130 +<p> 280.131 +<table border="0" cellpadding="0" cellspacing="0"> 280.132 +<tr><td></td></tr> 280.133 +<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr> 280.134 +<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html">cimg</a></td></tr> 280.135 + 280.136 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. <br></td></tr> 280.137 + 280.138 +<p> 280.139 +<tr><td colspan="2"><br><h2>Classes</h2></td></tr> 280.140 +<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a></td></tr> 280.141 + 280.142 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Instances of this class are thrown when errors occur during a CImg library function call. <a href="structcimg__library_1_1CImgException.html#_details">More...</a><br></td></tr> 280.143 +<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td></tr> 280.144 + 280.145 +<tr><td class="mdescLeft"> </td><td class="mdescRight">This class represents a window which can display <a class="el" href="structcimg__library_1_1CImg.html">CImg</a> images and handles mouse and keyboard events. <a href="structcimg__library_1_1CImgDisplay.html#_details">More...</a><br></td></tr> 280.146 +<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td></tr> 280.147 + 280.148 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Class representing an image (up to 4 dimensions wide), each pixel being of type <code>T</code>. <a href="structcimg__library_1_1CImg.html#_details">More...</a><br></td></tr> 280.149 +<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td></tr> 280.150 + 280.151 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Class representing list of images CImg<T>. <a href="structcimg__library_1_1CImgList.html#_details">More...</a><br></td></tr> 280.152 +</table> 280.153 +<hr><a name="_details"></a><h2>Detailed Description</h2> 280.154 +This namespace encompasses all classes and functions of the CImg library. 280.155 +<p> 280.156 +This namespace is defined to avoid functions and class names collisions that could happen with the include of other C++ header files. Anyway, it should not happen often and you should reasonnably start most of your CImg-based programs with <div class="fragment"><pre class="fragment"><span class="preprocessor"> #include "CImg.h"</span> 280.157 + <span class="keyword">using namespace </span>cimg_library; 280.158 +</pre></div> to simplify the declaration of CImg Library variables afterwards. 280.159 +<p> 280.160 +</div> 280.161 +<hr noshade="noshade" size="1" width="100%"> 280.162 +<a href="http://sourceforge.net"> 280.163 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 280.164 +</a> 280.165 +<!-- Start of StatCounter Code --> 280.166 +<script type="text/javascript" language="javascript"> 280.167 +<!-- 280.168 +var sc_project=895001; 280.169 +var sc_invisible=1; 280.170 +var sc_partition=7; 280.171 +var sc_security="5ea85181"; 280.172 +//--> 280.173 +</script> 280.174 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 280.175 +<!-- End of StatCounter Code --> 280.176 +</body> 280.177 +</html>
281.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 281.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacecimg__library_1_1cimg.html Mon Aug 03 14:09:20 2009 +0100 281.3 @@ -0,0 +1,1057 @@ 281.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 281.5 +<head> 281.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 281.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 281.8 +<meta content="David Tschumperle" name="author"></meta> 281.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 281.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 281.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 281.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 281.13 +<style type="text/css"> 281.14 +<!-- 281.15 +body {background-color:white; font-family:sans-serif; } 281.16 +a:active{text-decoration:none; color:#303090} 281.17 +a:link{text-decoration:none; color:#303090} 281.18 +a:visited{text-decoration:none; color:#303090} 281.19 +a:hover{text-decoration:underline; color:#4E9F71} 281.20 +--> 281.21 +</style> 281.22 +<script language="JavaScript" type="text/javascript"> 281.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 281.24 + <!-- Web Site: http://redrival.com/eak/ --> 281.25 + <!-- This script and many more are available free online at --> 281.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 281.27 + <!-- Begin 281.28 + function NewWindow(mypage, myname, w, h, scroll) { 281.29 + var winl = (screen.width - w) / 2; 281.30 + var wint = (screen.height - h) / 2; 281.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 281.32 + win = window.open(mypage, myname, winprops) 281.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 281.34 + } 281.35 + // End --> 281.36 +</script> 281.37 +</head> 281.38 +<body> 281.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 281.40 + <tbody><tr><td> 281.41 + <hr noshade="noshade" size="1" width="90%"></hr> 281.42 + <center> 281.43 + <br/> 281.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 281.45 + <br/> 281.46 + </center> 281.47 + <hr noshade="noshade" size="1" width="90%"></hr> 281.48 + <center> 281.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 281.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 281.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 281.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 281.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 281.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 281.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 281.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 281.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 281.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 281.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 281.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 281.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 281.62 + </font> 281.63 + </td></tr></tbody> 281.64 + </table> 281.65 + </center> 281.66 + <hr noshade="noshade" size="1" width="90%"></hr> 281.67 + </td></tr></tbody> 281.68 +</table> 281.69 +<!-- Generated by Doxygen 1.5.7.1 --> 281.70 +<script type="text/javascript"> 281.71 +<!-- 281.72 +function changeDisplayState (e){ 281.73 + var num=this.id.replace(/[^[0-9]/g,''); 281.74 + var button=this.firstChild; 281.75 + var sectionDiv=document.getElementById('dynsection'+num); 281.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 281.77 + sectionDiv.style.display='block'; 281.78 + button.src='open.gif'; 281.79 + }else{ 281.80 + sectionDiv.style.display='none'; 281.81 + button.src='closed.gif'; 281.82 + } 281.83 +} 281.84 +function initDynSections(){ 281.85 + var divs=document.getElementsByTagName('div'); 281.86 + var sectionCounter=1; 281.87 + for(var i=0;i<divs.length-1;i++){ 281.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 281.89 + var header=divs[i]; 281.90 + var section=divs[i+1]; 281.91 + var button=header.firstChild; 281.92 + if (button!='IMG'){ 281.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 281.94 + button=document.createElement('img'); 281.95 + divs[i].insertBefore(button,divs[i].firstChild); 281.96 + } 281.97 + header.style.cursor='pointer'; 281.98 + header.onclick=changeDisplayState; 281.99 + header.id='dynheader'+sectionCounter; 281.100 + button.src='closed.gif'; 281.101 + section.id='dynsection'+sectionCounter; 281.102 + section.style.display='none'; 281.103 + section.style.marginLeft='14px'; 281.104 + sectionCounter++; 281.105 + } 281.106 + } 281.107 +} 281.108 +window.onload = initDynSections; 281.109 +--> 281.110 +</script> 281.111 +<div class="navigation" id="top"> 281.112 + <div class="tabs"> 281.113 + <ul> 281.114 + <li><a href="index.html"><span>Main Page</span></a></li> 281.115 + <li><a href="modules.html"><span>Modules</span></a></li> 281.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 281.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 281.118 + </ul> 281.119 + </div> 281.120 + <div class="tabs"> 281.121 + <ul> 281.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 281.123 + <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 281.124 + </ul> 281.125 + </div> 281.126 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="namespacecimg__library_1_1cimg.html">cimg</a> 281.127 + </div> 281.128 +</div> 281.129 +<div class="contents"> 281.130 +<h1>cimg_library::cimg Namespace Reference</h1>Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 281.131 +<a href="#_details">More...</a> 281.132 +<p> 281.133 +<table border="0" cellpadding="0" cellspacing="0"> 281.134 +<tr><td></td></tr> 281.135 +<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 281.136 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#c1b66fe77173de9e5e8542b2823d6071">info</a> ()</td></tr> 281.137 + 281.138 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Print informations about CImg environement variables. <a href="#c1b66fe77173de9e5e8542b2823d6071"></a><br></td></tr> 281.139 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int & </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#acf66918a1173b3f72fe6f088d94f26b">exception_mode</a> ()</td></tr> 281.140 + 281.141 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get/set the current <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> exception mode. <a href="#acf66918a1173b3f72fe6f088d94f26b"></a><br></td></tr> 281.142 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#93ec28267b101050d949d1ebff1b88cf">warn</a> (const char *format,...)</td></tr> 281.143 + 281.144 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display a warning message. <a href="#93ec28267b101050d949d1ebff1b88cf"></a><br></td></tr> 281.145 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#09e80f4d7a95f3d5c2282202d8526520">system</a> (const char *const command, const char *const module_name=0)</td></tr> 281.146 + 281.147 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f3bb87016460121409a8f1a2ebe418b1"></a><!-- doxytag: member="cimg_library::cimg::temporary" ref="f3bb87016460121409a8f1a2ebe418b1" args="(const T &)" --> 281.148 +template<typename T > </td></tr> 281.149 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f3bb87016460121409a8f1a2ebe418b1">temporary</a> (const T &)</td></tr> 281.150 + 281.151 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to a temporary variable of type T. <br></td></tr> 281.152 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="998ee77cc062d63b4faa62eb659e6e9a"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="998ee77cc062d63b4faa62eb659e6e9a" args="(T &a, T &b)" --> 281.153 +template<typename T > </td></tr> 281.154 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#998ee77cc062d63b4faa62eb659e6e9a">swap</a> (T &a, T &b)</td></tr> 281.155 + 281.156 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables <code>a</code> and <code>b</code>. <br></td></tr> 281.157 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2b733fa20def6d955d5f3b1a742b2a0e"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="2b733fa20def6d955d5f3b1a742b2a0e" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2)" --> 281.158 +template<typename T1 , typename T2 > </td></tr> 281.159 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2b733fa20def6d955d5f3b1a742b2a0e">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2)</td></tr> 281.160 + 281.161 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>) and (<code>b1</code>,<code>b2</code>). <br></td></tr> 281.162 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4954a1551001dc082044597dc9fdcbc3"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="4954a1551001dc082044597dc9fdcbc3" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3)" --> 281.163 +template<typename T1 , typename T2 , typename T3 > </td></tr> 281.164 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#4954a1551001dc082044597dc9fdcbc3">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3)</td></tr> 281.165 + 281.166 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,<code>a3</code>) and (<code>b1</code>,<code>b2</code>,<code>b3</code>). <br></td></tr> 281.167 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1e3369e3c4141ff696432f35ec075379"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="1e3369e3c4141ff696432f35ec075379" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4)" --> 281.168 +template<typename T1 , typename T2 , typename T3 , typename T4 > </td></tr> 281.169 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#1e3369e3c4141ff696432f35ec075379">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4)</td></tr> 281.170 + 281.171 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a4</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b4</code>). <br></td></tr> 281.172 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="635ae52148ed9edf9aeda5e81bc58884"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="635ae52148ed9edf9aeda5e81bc58884" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5)" --> 281.173 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > </td></tr> 281.174 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#635ae52148ed9edf9aeda5e81bc58884">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5)</td></tr> 281.175 + 281.176 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a5</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b5</code>). <br></td></tr> 281.177 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bf3d1cd948fdbc06ba7e9b83a7169d33"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="bf3d1cd948fdbc06ba7e9b83a7169d33" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6)" --> 281.178 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > </td></tr> 281.179 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bf3d1cd948fdbc06ba7e9b83a7169d33">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6)</td></tr> 281.180 + 281.181 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a6</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b6</code>). <br></td></tr> 281.182 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="40c508097e570855c68bc944249ecf59"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="40c508097e570855c68bc944249ecf59" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7)" --> 281.183 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > </td></tr> 281.184 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#40c508097e570855c68bc944249ecf59">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7)</td></tr> 281.185 + 281.186 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a7</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b7</code>). <br></td></tr> 281.187 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ad6384858c4ccd23b249c370ccb2ed1d"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="ad6384858c4ccd23b249c370ccb2ed1d" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7, T8 &a8, T8 &b8)" --> 281.188 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > </td></tr> 281.189 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ad6384858c4ccd23b249c370ccb2ed1d">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7, T8 &a8, T8 &b8)</td></tr> 281.190 + 281.191 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a8</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b8</code>). <br></td></tr> 281.192 +<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0d2a283a3aa2572e9d343f040c8c4c6b">endianness</a> ()</td></tr> 281.193 + 281.194 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current endianness of the CPU. <a href="#0d2a283a3aa2572e9d343f040c8c4c6b"></a><br></td></tr> 281.195 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="565abb2900eedfc3700ec2a87986bb89"></a><!-- doxytag: member="cimg_library::cimg::invert_endianness" ref="565abb2900eedfc3700ec2a87986bb89" args="(T *const buffer, const unsigned int size)" --> 281.196 +template<typename T > </td></tr> 281.197 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#565abb2900eedfc3700ec2a87986bb89">invert_endianness</a> (T *const buffer, const unsigned int size)</td></tr> 281.198 + 281.199 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a memory buffer. <br></td></tr> 281.200 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="772f6feda6762af936e12436a26e40a3"></a><!-- doxytag: member="cimg_library::cimg::invert_endianness" ref="772f6feda6762af936e12436a26e40a3" args="(T &a)" --> 281.201 +template<typename T > </td></tr> 281.202 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#772f6feda6762af936e12436a26e40a3">invert_endianness</a> (T &a)</td></tr> 281.203 + 281.204 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a single variable. <br></td></tr> 281.205 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f883131bbc64e996d212114cc2b2b21a"></a><!-- doxytag: member="cimg_library::cimg::time" ref="f883131bbc64e996d212114cc2b2b21a" args="()" --> 281.206 +unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">time</a> ()</td></tr> 281.207 + 281.208 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the value of a system timer with a millisecond precision. <br></td></tr> 281.209 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334">sleep</a> (const unsigned int milliseconds)</td></tr> 281.210 + 281.211 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Sleep for a certain numbers of milliseconds. <a href="#3ac7655e49556a90715f3532af221334"></a><br></td></tr> 281.212 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77">wait</a> (const unsigned int milliseconds)</td></tr> 281.213 + 281.214 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for a certain number of milliseconds since the last call. <a href="#3c8917c0f12139bff6de6e3e45fc5b77"></a><br></td></tr> 281.215 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="964b7bf56de9cba321b402ab86db3ff7"></a><!-- doxytag: member="cimg_library::cimg::rol" ref="964b7bf56de9cba321b402ab86db3ff7" args="(const T a, const unsigned int n=1)" --> 281.216 +template<typename T > </td></tr> 281.217 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#964b7bf56de9cba321b402ab86db3ff7">rol</a> (const T a, const unsigned int n=1)</td></tr> 281.218 + 281.219 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a left bitwise-rotated number. <br></td></tr> 281.220 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="62fd3ab82b98aa857fcf5f3fbd7c8b99"></a><!-- doxytag: member="cimg_library::cimg::ror" ref="62fd3ab82b98aa857fcf5f3fbd7c8b99" args="(const T a, const unsigned int n=1)" --> 281.221 +template<typename T > </td></tr> 281.222 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#62fd3ab82b98aa857fcf5f3fbd7c8b99">ror</a> (const T a, const unsigned int n=1)</td></tr> 281.223 + 281.224 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a right bitwise-rotated number. <br></td></tr> 281.225 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 281.226 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#5dd0a4d361e2db646f5042be6bfe1d31">abs</a> (const T a)</td></tr> 281.227 + 281.228 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the absolute value of a number. <a href="#5dd0a4d361e2db646f5042be6bfe1d31"></a><br></td></tr> 281.229 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="415ccb3d8d3cf2e7bbdca6fa18ed3465"></a><!-- doxytag: member="cimg_library::cimg::sqr" ref="415ccb3d8d3cf2e7bbdca6fa18ed3465" args="(const T val)" --> 281.230 +template<typename T > </td></tr> 281.231 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#415ccb3d8d3cf2e7bbdca6fa18ed3465">sqr</a> (const T val)</td></tr> 281.232 + 281.233 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the square of a number. <br></td></tr> 281.234 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8dde183be46c1821a3901b63825a4cf4"></a><!-- doxytag: member="cimg_library::cimg::xln" ref="8dde183be46c1821a3901b63825a4cf4" args="(const int x)" --> 281.235 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#8dde183be46c1821a3901b63825a4cf4">xln</a> (const int x)</td></tr> 281.236 + 281.237 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 + log_10(x). <br></td></tr> 281.238 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0659abebd7019433a254dd8d934ed32c"></a><!-- doxytag: member="cimg_library::cimg::min" ref="0659abebd7019433a254dd8d934ed32c" args="(const t1 &a, const t2 &b)" --> 281.239 +template<typename t1 , typename t2 > </td></tr> 281.240 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset< t1, t2 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0659abebd7019433a254dd8d934ed32c">min</a> (const t1 &a, const t2 &b)</td></tr> 281.241 + 281.242 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between two numbers. <br></td></tr> 281.243 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="65e023d29962d5b7239540affa01c934"></a><!-- doxytag: member="cimg_library::cimg::min" ref="65e023d29962d5b7239540affa01c934" args="(const t1 &a, const t2 &b, const t3 &c)" --> 281.244 +template<typename t1 , typename t2 , typename t3 > </td></tr> 281.245 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset2< t1, t2, t3 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#65e023d29962d5b7239540affa01c934">min</a> (const t1 &a, const t2 &b, const t3 &c)</td></tr> 281.246 + 281.247 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between three numbers. <br></td></tr> 281.248 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="11ac2edf216d6e3085207fbef99c8a10"></a><!-- doxytag: member="cimg_library::cimg::min" ref="11ac2edf216d6e3085207fbef99c8a10" args="(const t1 &a, const t2 &b, const t3 &c, const t4 &d)" --> 281.249 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 281.250 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 281.251 +t4 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#11ac2edf216d6e3085207fbef99c8a10">min</a> (const t1 &a, const t2 &b, const t3 &c, const t4 &d)</td></tr> 281.252 + 281.253 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between four numbers. <br></td></tr> 281.254 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ef8f304ef317aed250bbb0dc2b242969"></a><!-- doxytag: member="cimg_library::cimg::max" ref="ef8f304ef317aed250bbb0dc2b242969" args="(const t1 &a, const t2 &b)" --> 281.255 +template<typename t1 , typename t2 > </td></tr> 281.256 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset< t1, t2 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ef8f304ef317aed250bbb0dc2b242969">max</a> (const t1 &a, const t2 &b)</td></tr> 281.257 + 281.258 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between two numbers. <br></td></tr> 281.259 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3c809a146579b9d7633f5c67d1d0c04a"></a><!-- doxytag: member="cimg_library::cimg::max" ref="3c809a146579b9d7633f5c67d1d0c04a" args="(const t1 &a, const t2 &b, const t3 &c)" --> 281.260 +template<typename t1 , typename t2 , typename t3 > </td></tr> 281.261 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset2< t1, t2, t3 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3c809a146579b9d7633f5c67d1d0c04a">max</a> (const t1 &a, const t2 &b, const t3 &c)</td></tr> 281.262 + 281.263 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between three numbers. <br></td></tr> 281.264 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c118d1956b491c6e79aa0c34ffd038dd"></a><!-- doxytag: member="cimg_library::cimg::max" ref="c118d1956b491c6e79aa0c34ffd038dd" args="(const t1 &a, const t2 &b, const t3 &c, const t4 &d)" --> 281.265 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 281.266 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 281.267 +t4 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#c118d1956b491c6e79aa0c34ffd038dd">max</a> (const t1 &a, const t2 &b, const t3 &c, const t4 &d)</td></tr> 281.268 + 281.269 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between four numbers. <br></td></tr> 281.270 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cb00b9ea45d7c523af71071eaad2fd98"></a><!-- doxytag: member="cimg_library::cimg::sign" ref="cb00b9ea45d7c523af71071eaad2fd98" args="(const T x)" --> 281.271 +template<typename T > </td></tr> 281.272 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#cb00b9ea45d7c523af71071eaad2fd98">sign</a> (const T x)</td></tr> 281.273 + 281.274 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the sign of a number. <br></td></tr> 281.275 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2d817bb30160ae25fde49bd14db5a7e6"></a><!-- doxytag: member="cimg_library::cimg::nearest_pow2" ref="2d817bb30160ae25fde49bd14db5a7e6" args="(const T x)" --> 281.276 +template<typename T > </td></tr> 281.277 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">unsigned long </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2d817bb30160ae25fde49bd14db5a7e6">nearest_pow2</a> (const T x)</td></tr> 281.278 + 281.279 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the nearest power of 2 higher than a given number. <br></td></tr> 281.280 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 281.281 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#85970edf9afb3b48c0715fadf917854e">mod</a> (const T &x, const T &m)</td></tr> 281.282 + 281.283 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the modulo of a number. <a href="#85970edf9afb3b48c0715fadf917854e"></a><br></td></tr> 281.284 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 281.285 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e2bab18e9272641210d8b2d7e4a4503f">minmod</a> (const T a, const T b)</td></tr> 281.286 + 281.287 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minmod of two numbers. <a href="#e2bab18e9272641210d8b2d7e4a4503f"></a><br></td></tr> 281.288 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f31db729637ea4dad61e49e5729839c4"></a><!-- doxytag: member="cimg_library::cimg::rand" ref="f31db729637ea4dad61e49e5729839c4" args="()" --> 281.289 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">rand</a> ()</td></tr> 281.290 + 281.291 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [0,1] with respect to an uniform distribution. <br></td></tr> 281.292 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae82972570fdc0904d4f03df7b5d3023"></a><!-- doxytag: member="cimg_library::cimg::crand" ref="ae82972570fdc0904d4f03df7b5d3023" args="()" --> 281.293 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">crand</a> ()</td></tr> 281.294 + 281.295 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [-1,1] with respect to an uniform distribution. <br></td></tr> 281.296 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0341a323738439349625b2de5f35bb4c"></a><!-- doxytag: member="cimg_library::cimg::grand" ref="0341a323738439349625b2de5f35bb4c" args="()" --> 281.297 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">grand</a> ()</td></tr> 281.298 + 281.299 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a gaussian distribution and a standard deviation of 1. <br></td></tr> 281.300 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7f927973e2bc17b851bb61cdfbfef061"></a><!-- doxytag: member="cimg_library::cimg::prand" ref="7f927973e2bc17b851bb61cdfbfef061" args="(const double z)" --> 281.301 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7f927973e2bc17b851bb61cdfbfef061">prand</a> (const double z)</td></tr> 281.302 + 281.303 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a Poisson distribution of parameter z. <br></td></tr> 281.304 +<tr><td class="memItemLeft" nowrap align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0bfd704cc09f4a25f09035b067aca4e3">round</a> (const double x, const double y, const int rounding_type=0)</td></tr> 281.305 + 281.306 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a rounded number. <a href="#0bfd704cc09f4a25f09035b067aca4e3"></a><br></td></tr> 281.307 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5a028d4d4de4e1894263a29a6de8e2ee"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="5a028d4d4de4e1894263a29a6de8e2ee" args="(const char x)" --> 281.308 +char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#5a028d4d4de4e1894263a29a6de8e2ee">uncase</a> (const char x)</td></tr> 281.309 + 281.310 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of an ASCII character. <br></td></tr> 281.311 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#eec70054768b152c0dbea51f5a56536b">uncase</a> (char *const string)</td></tr> 281.312 + 281.313 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of a C string. <a href="#eec70054768b152c0dbea51f5a56536b"></a><br></td></tr> 281.314 +<tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9ab0fcc7ef1bac330897fec51f617ae6">atof</a> (const char *const str)</td></tr> 281.315 + 281.316 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a float number from a C-string. <a href="#9ab0fcc7ef1bac330897fec51f617ae6"></a><br></td></tr> 281.317 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3f65ad0f35bbbfc7ec197ce32f326da2">strlen</a> (const char *const s)</td></tr> 281.318 + 281.319 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the length of a C-string. <a href="#3f65ad0f35bbbfc7ec197ce32f326da2"></a><br></td></tr> 281.320 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#efc1425e963cd56d8a926908749119a5">strncmp</a> (const char *const s1, const char *const s2, const int l)</td></tr> 281.321 + 281.322 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare the first <code>n</code> characters of two C-strings. <a href="#efc1425e963cd56d8a926908749119a5"></a><br></td></tr> 281.323 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#747de40c911c42d60e1a4ee3f0c69c6c">strncasecmp</a> (const char *const s1, const char *const s2, const int l)</td></tr> 281.324 + 281.325 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare the first <code>n</code> characters of two C-strings, ignoring the case. <a href="#747de40c911c42d60e1a4ee3f0c69c6c"></a><br></td></tr> 281.326 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#aab723edb9b070b285367e7ffc099d78">strcmp</a> (const char *const s1, const char *const s2)</td></tr> 281.327 + 281.328 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings. <a href="#aab723edb9b070b285367e7ffc099d78"></a><br></td></tr> 281.329 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#43334b3df38ff7c4369a503a4fc3a9f9">strcasecmp</a> (const char *const s1, const char *const s2)</td></tr> 281.330 + 281.331 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings, ignoring the case. <a href="#43334b3df38ff7c4369a503a4fc3a9f9"></a><br></td></tr> 281.332 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f127d56499b955c44ab1e5963d04c8c"></a><!-- doxytag: member="cimg_library::cimg::strfind" ref="2f127d56499b955c44ab1e5963d04c8c" args="(const char *const s, const char c)" --> 281.333 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2f127d56499b955c44ab1e5963d04c8c">strfind</a> (const char *const s, const char c)</td></tr> 281.334 + 281.335 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Find a character in a C-string. <br></td></tr> 281.336 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75c2af1ba1b514bd547f9b23745b125c"></a><!-- doxytag: member="cimg_library::cimg::strpare" ref="75c2af1ba1b514bd547f9b23745b125c" args="(char *const s, const char delimiter=' ', const bool symmetric=false)" --> 281.337 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#75c2af1ba1b514bd547f9b23745b125c">strpare</a> (char *const s, const char delimiter=' ', const bool symmetric=false)</td></tr> 281.338 + 281.339 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless delimiters on the borders of a C-string. <br></td></tr> 281.340 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7199326277681bfe958fc21a508897e2"></a><!-- doxytag: member="cimg_library::cimg::strclean" ref="7199326277681bfe958fc21a508897e2" args="(char *const s)" --> 281.341 +void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7199326277681bfe958fc21a508897e2">strclean</a> (char *const s)</td></tr> 281.342 + 281.343 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless spaces and symmetric delimiters ', " and ` from a C-string. <br></td></tr> 281.344 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7710ef1683aa12ead974583b764cd353"></a><!-- doxytag: member="cimg_library::cimg::strescape" ref="7710ef1683aa12ead974583b764cd353" args="(char *const s)" --> 281.345 +void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7710ef1683aa12ead974583b764cd353">strescape</a> (char *const s)</td></tr> 281.346 + 281.347 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Replace explicit escape sequences '' in C-strings (where x in [ntvbrfa?'"0]). <br></td></tr> 281.348 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bc491a5ed3a8d97e395138a379767a45"></a><!-- doxytag: member="cimg_library::cimg::basename" ref="bc491a5ed3a8d97e395138a379767a45" args="(const char *const s)" --> 281.349 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bc491a5ed3a8d97e395138a379767a45">basename</a> (const char *const s)</td></tr> 281.350 + 281.351 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the basename of a filename. <br></td></tr> 281.352 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="797797a309ca40aa28cdfbb92f4d1621"></a><!-- doxytag: member="cimg_library::cimg::temporary_path" ref="797797a309ca40aa28cdfbb92f4d1621" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.353 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#797797a309ca40aa28cdfbb92f4d1621">temporary_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.354 + 281.355 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to store temporary files. <br></td></tr> 281.356 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0db1003e37cc111d9eddd282c1ab27b"></a><!-- doxytag: member="cimg_library::cimg::imagemagick_path" ref="d0db1003e37cc111d9eddd282c1ab27b" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.357 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#d0db1003e37cc111d9eddd282c1ab27b">imagemagick_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.358 + 281.359 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the ImageMagick's <code>convert</code> tool. <br></td></tr> 281.360 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a9f7e166f51b43facc8ecc9f05e4ceba"></a><!-- doxytag: member="cimg_library::cimg::graphicsmagick_path" ref="a9f7e166f51b43facc8ecc9f05e4ceba" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.361 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#a9f7e166f51b43facc8ecc9f05e4ceba">graphicsmagick_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.362 + 281.363 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return path of the GraphicsMagick's <code>gm</code> tool. <br></td></tr> 281.364 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aedba1291890f50edb5be58ef662e516"></a><!-- doxytag: member="cimg_library::cimg::medcon_path" ref="aedba1291890f50edb5be58ef662e516" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.365 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#aedba1291890f50edb5be58ef662e516">medcon_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.366 + 281.367 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path of the <code>XMedcon</code> tool. <br></td></tr> 281.368 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf1666b982cb372129f2ae2fdc748ef2"></a><!-- doxytag: member="cimg_library::cimg::ffmpeg_path" ref="bf1666b982cb372129f2ae2fdc748ef2" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.369 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bf1666b982cb372129f2ae2fdc748ef2">ffmpeg_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.370 + 281.371 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'ffmpeg' command. <br></td></tr> 281.372 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75f3391e7a393c1c1fe43537004537e2"></a><!-- doxytag: member="cimg_library::cimg::gzip_path" ref="75f3391e7a393c1c1fe43537004537e2" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.373 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#75f3391e7a393c1c1fe43537004537e2">gzip_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.374 + 281.375 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gzip' command. <br></td></tr> 281.376 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="08f71c29acfe85d5b8718900e995b779"></a><!-- doxytag: member="cimg_library::cimg::gunzip_path" ref="08f71c29acfe85d5b8718900e995b779" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.377 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#08f71c29acfe85d5b8718900e995b779">gunzip_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.378 + 281.379 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gunzip' command. <br></td></tr> 281.380 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e36d7a689692ac5663afe1bbdab5d9fa"></a><!-- doxytag: member="cimg_library::cimg::dcraw_path" ref="e36d7a689692ac5663afe1bbdab5d9fa" args="(const char *const user_path=0, const bool reinit_path=false)" --> 281.381 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e36d7a689692ac5663afe1bbdab5d9fa">dcraw_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 281.382 + 281.383 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'dcraw' command. <br></td></tr> 281.384 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f7068ec0354e0b34a69a9dc829598aa"></a><!-- doxytag: member="cimg_library::cimg::split_filename" ref="9f7068ec0354e0b34a69a9dc829598aa" args="(const char *const filename, char *const body=0)" --> 281.385 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9f7068ec0354e0b34a69a9dc829598aa">split_filename</a> (const char *const filename, char *const body=0)</td></tr> 281.386 + 281.387 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Split a filename into two strings 'body' and 'extension'. <br></td></tr> 281.388 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="878d8296e87c4ddae1676158e40cbd3a"></a><!-- doxytag: member="cimg_library::cimg::number_filename" ref="878d8296e87c4ddae1676158e40cbd3a" args="(const char *const filename, const int number, const unsigned int n, char *const string)" --> 281.389 +char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#878d8296e87c4ddae1676158e40cbd3a">number_filename</a> (const char *const filename, const int number, const unsigned int n, char *const string)</td></tr> 281.390 + 281.391 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a numbered version of a filename. <br></td></tr> 281.392 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dff1045b64c40864232f07ec686fa731"></a><!-- doxytag: member="cimg_library::cimg::fopen" ref="dff1045b64c40864232f07ec686fa731" args="(const char *const path, const char *const mode)" --> 281.393 +cimg_std::FILE * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#dff1045b64c40864232f07ec686fa731">fopen</a> (const char *const path, const char *const mode)</td></tr> 281.394 + 281.395 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Open a file, and check for possible errors. <br></td></tr> 281.396 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e381e63cfec4d6d2426a2763c05a094f"></a><!-- doxytag: member="cimg_library::cimg::fclose" ref="e381e63cfec4d6d2426a2763c05a094f" args="(cimg_std::FILE *file)" --> 281.397 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e381e63cfec4d6d2426a2763c05a094f">fclose</a> (cimg_std::FILE *file)</td></tr> 281.398 + 281.399 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Close a file, and check for possible errors. <br></td></tr> 281.400 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="69b9fcf4cc4ef26506e3a35d8db2cb74"></a><!-- doxytag: member="cimg_library::cimg::file_type" ref="69b9fcf4cc4ef26506e3a35d8db2cb74" args="(cimg_std::FILE *const file, const char *const filename)" --> 281.401 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#69b9fcf4cc4ef26506e3a35d8db2cb74">file_type</a> (cimg_std::FILE *const file, const char *const filename)</td></tr> 281.402 + 281.403 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Try to guess the image format of a filename, using its magick numbers. <br></td></tr> 281.404 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ae720b10098f87a24c8756e63c48b49a"></a><!-- doxytag: member="cimg_library::cimg::fread" ref="ae720b10098f87a24c8756e63c48b49a" args="(T *const ptr, const unsigned int nmemb, cimg_std::FILE *stream)" --> 281.405 +template<typename T > </td></tr> 281.406 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae720b10098f87a24c8756e63c48b49a">fread</a> (T *const ptr, const unsigned int nmemb, cimg_std::FILE *stream)</td></tr> 281.407 + 281.408 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read file data, and check for possible errors. <br></td></tr> 281.409 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b57bdbf463552372e18a7dda032c3054"></a><!-- doxytag: member="cimg_library::cimg::fwrite" ref="b57bdbf463552372e18a7dda032c3054" args="(const T *ptr, const unsigned int nmemb, cimg_std::FILE *stream)" --> 281.410 +template<typename T > </td></tr> 281.411 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#b57bdbf463552372e18a7dda032c3054">fwrite</a> (const T *ptr, const unsigned int nmemb, cimg_std::FILE *stream)</td></tr> 281.412 + 281.413 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Write data to a file, and check for possible errors. <br></td></tr> 281.414 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 281.415 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9bd2a1e3ffff4538c4f53856e8b28ded">dialog</a> (const char *title, const char *msg, const char *button1_txt, const char *button2_txt, const char *button3_txt, const char *button4_txt, const char *button5_txt, const char *button6_txt, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &logo, const bool centering=false)</td></tr> 281.416 + 281.417 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display a dialog box, where a user can click standard buttons. <a href="#9bd2a1e3ffff4538c4f53856e8b28ded"></a><br></td></tr> 281.418 +<tr><td colspan="2"><br><h2>Variables</h2></td></tr> 281.419 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0227707be3c6c40e2f71806077fbfcdb"></a><!-- doxytag: member="cimg_library::cimg::valuePI" ref="0227707be3c6c40e2f71806077fbfcdb" args="" --> 281.420 +const double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0227707be3c6c40e2f71806077fbfcdb">valuePI</a> = 3.14159265358979323846</td></tr> 281.421 + 281.422 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the mathematical constant PI. <br></td></tr> 281.423 +</table> 281.424 +<hr><a name="_details"></a><h2>Detailed Description</h2> 281.425 +Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 281.426 +<p> 281.427 +Most of the functions and variables within this namespace are used by the library for low-level processing. Nevertheless, documented variables and functions of this namespace may be used safely in your own source code.<p> 281.428 +<dl class="warning" compact><dt><b>Warning:</b></dt><dd>Never write <code>using namespace <a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg_library::cimg</a>;</code> in your source code, since a lot of functions of the <code><a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a>::</code> namespace have prototypes similar to standard C functions that could defined in the global namespace <code>::</code>. </dd></dl> 281.429 + 281.430 +<p> 281.431 +<hr><h2>Function Documentation</h2> 281.432 +<a class="anchor" name="c1b66fe77173de9e5e8542b2823d6071"></a><!-- doxytag: member="cimg_library::cimg::info" ref="c1b66fe77173de9e5e8542b2823d6071" args="()" --> 281.433 +<div class="memitem"> 281.434 +<div class="memproto"> 281.435 + <table class="memname"> 281.436 + <tr> 281.437 + <td class="memname">void info </td> 281.438 + <td>(</td> 281.439 + <td class="paramname"> </td> 281.440 + <td> ) </td> 281.441 + <td><code> [inline]</code></td> 281.442 + </tr> 281.443 + </table> 281.444 +</div> 281.445 +<div class="memdoc"> 281.446 + 281.447 +<p> 281.448 +Print informations about CImg environement variables. 281.449 +<p> 281.450 +Printing is done on the standard error output. 281.451 +</div> 281.452 +</div><p> 281.453 +<a class="anchor" name="acf66918a1173b3f72fe6f088d94f26b"></a><!-- doxytag: member="cimg_library::cimg::exception_mode" ref="acf66918a1173b3f72fe6f088d94f26b" args="()" --> 281.454 +<div class="memitem"> 281.455 +<div class="memproto"> 281.456 + <table class="memname"> 281.457 + <tr> 281.458 + <td class="memname">unsigned int& cimg_library::cimg::exception_mode </td> 281.459 + <td>(</td> 281.460 + <td class="paramname"> </td> 281.461 + <td> ) </td> 281.462 + <td><code> [inline]</code></td> 281.463 + </tr> 281.464 + </table> 281.465 +</div> 281.466 +<div class="memdoc"> 281.467 + 281.468 +<p> 281.469 +Get/set the current <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> exception mode. 281.470 +<p> 281.471 +The way error messages are handled by <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> can be changed dynamically, using this function. Possible values are :<ul> 281.472 +<li>0 to hide debug messages (quiet mode, but exceptions are still thrown).</li><li>1 to display debug messages on standard error (console).</li><li>2 to display debug messages in modal windows (default behavior).</li><li>3 to do as 1 + add extra warnings (may slow down the code !).</li><li>4 to do as 2 + add extra warnings (may slow down the code !). </li></ul> 281.473 + 281.474 +</div> 281.475 +</div><p> 281.476 +<a class="anchor" name="93ec28267b101050d949d1ebff1b88cf"></a><!-- doxytag: member="cimg_library::cimg::warn" ref="93ec28267b101050d949d1ebff1b88cf" args="(const char *format,...)" --> 281.477 +<div class="memitem"> 281.478 +<div class="memproto"> 281.479 + <table class="memname"> 281.480 + <tr> 281.481 + <td class="memname">void cimg_library::cimg::warn </td> 281.482 + <td>(</td> 281.483 + <td class="paramtype">const char * </td> 281.484 + <td class="paramname"> <em>format</em>, </td> 281.485 + </tr> 281.486 + <tr> 281.487 + <td class="paramkey"></td> 281.488 + <td></td> 281.489 + <td class="paramtype"> </td> 281.490 + <td class="paramname"> <em>...</em></td><td> </td> 281.491 + </tr> 281.492 + <tr> 281.493 + <td></td> 281.494 + <td>)</td> 281.495 + <td></td><td></td><td><code> [inline]</code></td> 281.496 + </tr> 281.497 + </table> 281.498 +</div> 281.499 +<div class="memdoc"> 281.500 + 281.501 +<p> 281.502 +Display a warning message. 281.503 +<p> 281.504 +<dl compact><dt><b>Parameters:</b></dt><dd> 281.505 + <table border="0" cellspacing="2" cellpadding="0"> 281.506 + <tr><td valign="top"></td><td valign="top"><em>format</em> </td><td>is a C-string describing the format of the message, as in <code>std::printf()</code>. </td></tr> 281.507 + </table> 281.508 +</dl> 281.509 + 281.510 +</div> 281.511 +</div><p> 281.512 +<a class="anchor" name="09e80f4d7a95f3d5c2282202d8526520"></a><!-- doxytag: member="cimg_library::cimg::system" ref="09e80f4d7a95f3d5c2282202d8526520" args="(const char *const command, const char *const module_name=0)" --> 281.513 +<div class="memitem"> 281.514 +<div class="memproto"> 281.515 + <table class="memname"> 281.516 + <tr> 281.517 + <td class="memname">int cimg_library::cimg::system </td> 281.518 + <td>(</td> 281.519 + <td class="paramtype">const char *const </td> 281.520 + <td class="paramname"> <em>command</em>, </td> 281.521 + </tr> 281.522 + <tr> 281.523 + <td class="paramkey"></td> 281.524 + <td></td> 281.525 + <td class="paramtype">const char *const </td> 281.526 + <td class="paramname"> <em>module_name</em> = <code>0</code></td><td> </td> 281.527 + </tr> 281.528 + <tr> 281.529 + <td></td> 281.530 + <td>)</td> 281.531 + <td></td><td></td><td><code> [inline]</code></td> 281.532 + </tr> 281.533 + </table> 281.534 +</div> 281.535 +<div class="memdoc"> 281.536 + 281.537 +<p> 281.538 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::system()</code> and is here because using the <code>std::</code> version on Windows may open undesired consoles. </dd></dl> 281.539 + 281.540 +</div> 281.541 +</div><p> 281.542 +<a class="anchor" name="0d2a283a3aa2572e9d343f040c8c4c6b"></a><!-- doxytag: member="cimg_library::cimg::endianness" ref="0d2a283a3aa2572e9d343f040c8c4c6b" args="()" --> 281.543 +<div class="memitem"> 281.544 +<div class="memproto"> 281.545 + <table class="memname"> 281.546 + <tr> 281.547 + <td class="memname">bool cimg_library::cimg::endianness </td> 281.548 + <td>(</td> 281.549 + <td class="paramname"> </td> 281.550 + <td> ) </td> 281.551 + <td><code> [inline]</code></td> 281.552 + </tr> 281.553 + </table> 281.554 +</div> 281.555 +<div class="memdoc"> 281.556 + 281.557 +<p> 281.558 +Return the current endianness of the CPU. 281.559 +<p> 281.560 +<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>false</code> for "Little Endian", <code>true</code> for "Big Endian". </dd></dl> 281.561 + 281.562 +</div> 281.563 +</div><p> 281.564 +<a class="anchor" name="3ac7655e49556a90715f3532af221334"></a><!-- doxytag: member="cimg_library::cimg::sleep" ref="3ac7655e49556a90715f3532af221334" args="(const unsigned int milliseconds)" --> 281.565 +<div class="memitem"> 281.566 +<div class="memproto"> 281.567 + <table class="memname"> 281.568 + <tr> 281.569 + <td class="memname">void cimg_library::cimg::sleep </td> 281.570 + <td>(</td> 281.571 + <td class="paramtype">const unsigned int </td> 281.572 + <td class="paramname"> <em>milliseconds</em> </td> 281.573 + <td> ) </td> 281.574 + <td><code> [inline]</code></td> 281.575 + </tr> 281.576 + </table> 281.577 +</div> 281.578 +<div class="memdoc"> 281.579 + 281.580 +<p> 281.581 +Sleep for a certain numbers of milliseconds. 281.582 +<p> 281.583 +This function frees the CPU ressources during the sleeping time. It may be used to temporize your program properly, without wasting CPU time. 281.584 +</div> 281.585 +</div><p> 281.586 +<a class="anchor" name="3c8917c0f12139bff6de6e3e45fc5b77"></a><!-- doxytag: member="cimg_library::cimg::wait" ref="3c8917c0f12139bff6de6e3e45fc5b77" args="(const unsigned int milliseconds)" --> 281.587 +<div class="memitem"> 281.588 +<div class="memproto"> 281.589 + <table class="memname"> 281.590 + <tr> 281.591 + <td class="memname">unsigned int cimg_library::cimg::wait </td> 281.592 + <td>(</td> 281.593 + <td class="paramtype">const unsigned int </td> 281.594 + <td class="paramname"> <em>milliseconds</em> </td> 281.595 + <td> ) </td> 281.596 + <td><code> [inline]</code></td> 281.597 + </tr> 281.598 + </table> 281.599 +</div> 281.600 +<div class="memdoc"> 281.601 + 281.602 +<p> 281.603 +Wait for a certain number of milliseconds since the last call. 281.604 +<p> 281.605 +This function is equivalent to <a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334" title="Sleep for a certain numbers of milliseconds.">sleep()</a> but the waiting time is computed with regard to the last call of <a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77" title="Wait for a certain number of milliseconds since the last call.">wait()</a>. It may be used to temporize your program properly. 281.606 +</div> 281.607 +</div><p> 281.608 +<a class="anchor" name="5dd0a4d361e2db646f5042be6bfe1d31"></a><!-- doxytag: member="cimg_library::cimg::abs" ref="5dd0a4d361e2db646f5042be6bfe1d31" args="(const T a)" --> 281.609 +<div class="memitem"> 281.610 +<div class="memproto"> 281.611 + <table class="memname"> 281.612 + <tr> 281.613 + <td class="memname">T cimg_library::cimg::abs </td> 281.614 + <td>(</td> 281.615 + <td class="paramtype">const T </td> 281.616 + <td class="paramname"> <em>a</em> </td> 281.617 + <td> ) </td> 281.618 + <td><code> [inline]</code></td> 281.619 + </tr> 281.620 + </table> 281.621 +</div> 281.622 +<div class="memdoc"> 281.623 + 281.624 +<p> 281.625 +Return the absolute value of a number. 281.626 +<p> 281.627 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is different from <code>std::abs()</code> or <code>std::fabs()</code> because it is able to consider a variable of any type, without cast needed. </dd></dl> 281.628 + 281.629 +</div> 281.630 +</div><p> 281.631 +<a class="anchor" name="85970edf9afb3b48c0715fadf917854e"></a><!-- doxytag: member="cimg_library::cimg::mod" ref="85970edf9afb3b48c0715fadf917854e" args="(const T &x, const T &m)" --> 281.632 +<div class="memitem"> 281.633 +<div class="memproto"> 281.634 + <table class="memname"> 281.635 + <tr> 281.636 + <td class="memname">T cimg_library::cimg::mod </td> 281.637 + <td>(</td> 281.638 + <td class="paramtype">const T & </td> 281.639 + <td class="paramname"> <em>x</em>, </td> 281.640 + </tr> 281.641 + <tr> 281.642 + <td class="paramkey"></td> 281.643 + <td></td> 281.644 + <td class="paramtype">const T & </td> 281.645 + <td class="paramname"> <em>m</em></td><td> </td> 281.646 + </tr> 281.647 + <tr> 281.648 + <td></td> 281.649 + <td>)</td> 281.650 + <td></td><td></td><td><code> [inline]</code></td> 281.651 + </tr> 281.652 + </table> 281.653 +</div> 281.654 +<div class="memdoc"> 281.655 + 281.656 +<p> 281.657 +Return the modulo of a number. 281.658 +<p> 281.659 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This modulo function accepts negative and floating-points modulo numbers, as well as variable of any type. </dd></dl> 281.660 + 281.661 +</div> 281.662 +</div><p> 281.663 +<a class="anchor" name="e2bab18e9272641210d8b2d7e4a4503f"></a><!-- doxytag: member="cimg_library::cimg::minmod" ref="e2bab18e9272641210d8b2d7e4a4503f" args="(const T a, const T b)" --> 281.664 +<div class="memitem"> 281.665 +<div class="memproto"> 281.666 + <table class="memname"> 281.667 + <tr> 281.668 + <td class="memname">T cimg_library::cimg::minmod </td> 281.669 + <td>(</td> 281.670 + <td class="paramtype">const T </td> 281.671 + <td class="paramname"> <em>a</em>, </td> 281.672 + </tr> 281.673 + <tr> 281.674 + <td class="paramkey"></td> 281.675 + <td></td> 281.676 + <td class="paramtype">const T </td> 281.677 + <td class="paramname"> <em>b</em></td><td> </td> 281.678 + </tr> 281.679 + <tr> 281.680 + <td></td> 281.681 + <td>)</td> 281.682 + <td></td><td></td><td><code> [inline]</code></td> 281.683 + </tr> 281.684 + </table> 281.685 +</div> 281.686 +<div class="memdoc"> 281.687 + 281.688 +<p> 281.689 +Return the minmod of two numbers. 281.690 +<p> 281.691 +<em>minmod(<code>a</code>,<code>b</code>)</em> is defined to be :<ul> 281.692 +<li><em>minmod(<code>a</code>,<code>b</code>) = min(<code>a</code>,<code>b</code>)</em>, if <code>a</code> and <code>b</code> have the same sign.</li><li><em>minmod(<code>a</code>,<code>b</code>) = 0</em>, if <code>a</code> and <code>b</code> have different signs. </li></ul> 281.693 + 281.694 +</div> 281.695 +</div><p> 281.696 +<a class="anchor" name="0bfd704cc09f4a25f09035b067aca4e3"></a><!-- doxytag: member="cimg_library::cimg::round" ref="0bfd704cc09f4a25f09035b067aca4e3" args="(const double x, const double y, const int rounding_type=0)" --> 281.697 +<div class="memitem"> 281.698 +<div class="memproto"> 281.699 + <table class="memname"> 281.700 + <tr> 281.701 + <td class="memname">double cimg_library::cimg::round </td> 281.702 + <td>(</td> 281.703 + <td class="paramtype">const double </td> 281.704 + <td class="paramname"> <em>x</em>, </td> 281.705 + </tr> 281.706 + <tr> 281.707 + <td class="paramkey"></td> 281.708 + <td></td> 281.709 + <td class="paramtype">const double </td> 281.710 + <td class="paramname"> <em>y</em>, </td> 281.711 + </tr> 281.712 + <tr> 281.713 + <td class="paramkey"></td> 281.714 + <td></td> 281.715 + <td class="paramtype">const int </td> 281.716 + <td class="paramname"> <em>rounding_type</em> = <code>0</code></td><td> </td> 281.717 + </tr> 281.718 + <tr> 281.719 + <td></td> 281.720 + <td>)</td> 281.721 + <td></td><td></td><td><code> [inline]</code></td> 281.722 + </tr> 281.723 + </table> 281.724 +</div> 281.725 +<div class="memdoc"> 281.726 + 281.727 +<p> 281.728 +Return a rounded number. 281.729 +<p> 281.730 +<dl compact><dt><b>Parameters:</b></dt><dd> 281.731 + <table border="0" cellspacing="2" cellpadding="0"> 281.732 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>is the number to be rounded. </td></tr> 281.733 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>is the rounding precision. </td></tr> 281.734 + <tr><td valign="top"></td><td valign="top"><em>rounding_type</em> </td><td>defines the type of rounding (0=nearest, -1=backward, 1=forward). </td></tr> 281.735 + </table> 281.736 +</dl> 281.737 + 281.738 +</div> 281.739 +</div><p> 281.740 +<a class="anchor" name="eec70054768b152c0dbea51f5a56536b"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="eec70054768b152c0dbea51f5a56536b" args="(char *const string)" --> 281.741 +<div class="memitem"> 281.742 +<div class="memproto"> 281.743 + <table class="memname"> 281.744 + <tr> 281.745 + <td class="memname">void cimg_library::cimg::uncase </td> 281.746 + <td>(</td> 281.747 + <td class="paramtype">char *const </td> 281.748 + <td class="paramname"> <em>string</em> </td> 281.749 + <td> ) </td> 281.750 + <td><code> [inline]</code></td> 281.751 + </tr> 281.752 + </table> 281.753 +</div> 281.754 +<div class="memdoc"> 281.755 + 281.756 +<p> 281.757 +Remove the 'case' of a C string. 281.758 +<p> 281.759 +Acts in-place. 281.760 +</div> 281.761 +</div><p> 281.762 +<a class="anchor" name="9ab0fcc7ef1bac330897fec51f617ae6"></a><!-- doxytag: member="cimg_library::cimg::atof" ref="9ab0fcc7ef1bac330897fec51f617ae6" args="(const char *const str)" --> 281.763 +<div class="memitem"> 281.764 +<div class="memproto"> 281.765 + <table class="memname"> 281.766 + <tr> 281.767 + <td class="memname">float cimg_library::cimg::atof </td> 281.768 + <td>(</td> 281.769 + <td class="paramtype">const char *const </td> 281.770 + <td class="paramname"> <em>str</em> </td> 281.771 + <td> ) </td> 281.772 + <td><code> [inline]</code></td> 281.773 + </tr> 281.774 + </table> 281.775 +</div> 281.776 +<div class="memdoc"> 281.777 + 281.778 +<p> 281.779 +Read a float number from a C-string. 281.780 +<p> 281.781 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is quite similar to <code>std::atof()</code>, but that it allows the retrieval of fractions as in "1/2". </dd></dl> 281.782 + 281.783 +</div> 281.784 +</div><p> 281.785 +<a class="anchor" name="3f65ad0f35bbbfc7ec197ce32f326da2"></a><!-- doxytag: member="cimg_library::cimg::strlen" ref="3f65ad0f35bbbfc7ec197ce32f326da2" args="(const char *const s)" --> 281.786 +<div class="memitem"> 281.787 +<div class="memproto"> 281.788 + <table class="memname"> 281.789 + <tr> 281.790 + <td class="memname">int cimg_library::cimg::strlen </td> 281.791 + <td>(</td> 281.792 + <td class="paramtype">const char *const </td> 281.793 + <td class="paramname"> <em>s</em> </td> 281.794 + <td> ) </td> 281.795 + <td><code> [inline]</code></td> 281.796 + </tr> 281.797 + </table> 281.798 +</div> 281.799 +<div class="memdoc"> 281.800 + 281.801 +<p> 281.802 +Compute the length of a C-string. 281.803 +<p> 281.804 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strlen()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 281.805 + 281.806 +</div> 281.807 +</div><p> 281.808 +<a class="anchor" name="efc1425e963cd56d8a926908749119a5"></a><!-- doxytag: member="cimg_library::cimg::strncmp" ref="efc1425e963cd56d8a926908749119a5" args="(const char *const s1, const char *const s2, const int l)" --> 281.809 +<div class="memitem"> 281.810 +<div class="memproto"> 281.811 + <table class="memname"> 281.812 + <tr> 281.813 + <td class="memname">int cimg_library::cimg::strncmp </td> 281.814 + <td>(</td> 281.815 + <td class="paramtype">const char *const </td> 281.816 + <td class="paramname"> <em>s1</em>, </td> 281.817 + </tr> 281.818 + <tr> 281.819 + <td class="paramkey"></td> 281.820 + <td></td> 281.821 + <td class="paramtype">const char *const </td> 281.822 + <td class="paramname"> <em>s2</em>, </td> 281.823 + </tr> 281.824 + <tr> 281.825 + <td class="paramkey"></td> 281.826 + <td></td> 281.827 + <td class="paramtype">const int </td> 281.828 + <td class="paramname"> <em>l</em></td><td> </td> 281.829 + </tr> 281.830 + <tr> 281.831 + <td></td> 281.832 + <td>)</td> 281.833 + <td></td><td></td><td><code> [inline]</code></td> 281.834 + </tr> 281.835 + </table> 281.836 +</div> 281.837 +<div class="memdoc"> 281.838 + 281.839 +<p> 281.840 +Compare the first <code>n</code> characters of two C-strings. 281.841 +<p> 281.842 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strncmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 281.843 + 281.844 +</div> 281.845 +</div><p> 281.846 +<a class="anchor" name="747de40c911c42d60e1a4ee3f0c69c6c"></a><!-- doxytag: member="cimg_library::cimg::strncasecmp" ref="747de40c911c42d60e1a4ee3f0c69c6c" args="(const char *const s1, const char *const s2, const int l)" --> 281.847 +<div class="memitem"> 281.848 +<div class="memproto"> 281.849 + <table class="memname"> 281.850 + <tr> 281.851 + <td class="memname">int cimg_library::cimg::strncasecmp </td> 281.852 + <td>(</td> 281.853 + <td class="paramtype">const char *const </td> 281.854 + <td class="paramname"> <em>s1</em>, </td> 281.855 + </tr> 281.856 + <tr> 281.857 + <td class="paramkey"></td> 281.858 + <td></td> 281.859 + <td class="paramtype">const char *const </td> 281.860 + <td class="paramname"> <em>s2</em>, </td> 281.861 + </tr> 281.862 + <tr> 281.863 + <td class="paramkey"></td> 281.864 + <td></td> 281.865 + <td class="paramtype">const int </td> 281.866 + <td class="paramname"> <em>l</em></td><td> </td> 281.867 + </tr> 281.868 + <tr> 281.869 + <td></td> 281.870 + <td>)</td> 281.871 + <td></td><td></td><td><code> [inline]</code></td> 281.872 + </tr> 281.873 + </table> 281.874 +</div> 281.875 +<div class="memdoc"> 281.876 + 281.877 +<p> 281.878 +Compare the first <code>n</code> characters of two C-strings, ignoring the case. 281.879 +<p> 281.880 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strncasecmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 281.881 + 281.882 +</div> 281.883 +</div><p> 281.884 +<a class="anchor" name="aab723edb9b070b285367e7ffc099d78"></a><!-- doxytag: member="cimg_library::cimg::strcmp" ref="aab723edb9b070b285367e7ffc099d78" args="(const char *const s1, const char *const s2)" --> 281.885 +<div class="memitem"> 281.886 +<div class="memproto"> 281.887 + <table class="memname"> 281.888 + <tr> 281.889 + <td class="memname">int cimg_library::cimg::strcmp </td> 281.890 + <td>(</td> 281.891 + <td class="paramtype">const char *const </td> 281.892 + <td class="paramname"> <em>s1</em>, </td> 281.893 + </tr> 281.894 + <tr> 281.895 + <td class="paramkey"></td> 281.896 + <td></td> 281.897 + <td class="paramtype">const char *const </td> 281.898 + <td class="paramname"> <em>s2</em></td><td> </td> 281.899 + </tr> 281.900 + <tr> 281.901 + <td></td> 281.902 + <td>)</td> 281.903 + <td></td><td></td><td><code> [inline]</code></td> 281.904 + </tr> 281.905 + </table> 281.906 +</div> 281.907 +<div class="memdoc"> 281.908 + 281.909 +<p> 281.910 +Compare two C-strings. 281.911 +<p> 281.912 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strcmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 281.913 + 281.914 +</div> 281.915 +</div><p> 281.916 +<a class="anchor" name="43334b3df38ff7c4369a503a4fc3a9f9"></a><!-- doxytag: member="cimg_library::cimg::strcasecmp" ref="43334b3df38ff7c4369a503a4fc3a9f9" args="(const char *const s1, const char *const s2)" --> 281.917 +<div class="memitem"> 281.918 +<div class="memproto"> 281.919 + <table class="memname"> 281.920 + <tr> 281.921 + <td class="memname">int cimg_library::cimg::strcasecmp </td> 281.922 + <td>(</td> 281.923 + <td class="paramtype">const char *const </td> 281.924 + <td class="paramname"> <em>s1</em>, </td> 281.925 + </tr> 281.926 + <tr> 281.927 + <td class="paramkey"></td> 281.928 + <td></td> 281.929 + <td class="paramtype">const char *const </td> 281.930 + <td class="paramname"> <em>s2</em></td><td> </td> 281.931 + </tr> 281.932 + <tr> 281.933 + <td></td> 281.934 + <td>)</td> 281.935 + <td></td><td></td><td><code> [inline]</code></td> 281.936 + </tr> 281.937 + </table> 281.938 +</div> 281.939 +<div class="memdoc"> 281.940 + 281.941 +<p> 281.942 +Compare two C-strings, ignoring the case. 281.943 +<p> 281.944 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strcasecmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 281.945 + 281.946 +</div> 281.947 +</div><p> 281.948 +<a class="anchor" name="9bd2a1e3ffff4538c4f53856e8b28ded"></a><!-- doxytag: member="cimg_library::cimg::dialog" ref="9bd2a1e3ffff4538c4f53856e8b28ded" args="(const char *title, const char *msg, const char *button1_txt, const char *button2_txt, const char *button3_txt, const char *button4_txt, const char *button5_txt, const char *button6_txt, const CImg< t > &logo, const bool centering=false)" --> 281.949 +<div class="memitem"> 281.950 +<div class="memproto"> 281.951 + <table class="memname"> 281.952 + <tr> 281.953 + <td class="memname">int cimg_library::cimg::dialog </td> 281.954 + <td>(</td> 281.955 + <td class="paramtype">const char * </td> 281.956 + <td class="paramname"> <em>title</em>, </td> 281.957 + </tr> 281.958 + <tr> 281.959 + <td class="paramkey"></td> 281.960 + <td></td> 281.961 + <td class="paramtype">const char * </td> 281.962 + <td class="paramname"> <em>msg</em>, </td> 281.963 + </tr> 281.964 + <tr> 281.965 + <td class="paramkey"></td> 281.966 + <td></td> 281.967 + <td class="paramtype">const char * </td> 281.968 + <td class="paramname"> <em>button1_txt</em>, </td> 281.969 + </tr> 281.970 + <tr> 281.971 + <td class="paramkey"></td> 281.972 + <td></td> 281.973 + <td class="paramtype">const char * </td> 281.974 + <td class="paramname"> <em>button2_txt</em>, </td> 281.975 + </tr> 281.976 + <tr> 281.977 + <td class="paramkey"></td> 281.978 + <td></td> 281.979 + <td class="paramtype">const char * </td> 281.980 + <td class="paramname"> <em>button3_txt</em>, </td> 281.981 + </tr> 281.982 + <tr> 281.983 + <td class="paramkey"></td> 281.984 + <td></td> 281.985 + <td class="paramtype">const char * </td> 281.986 + <td class="paramname"> <em>button4_txt</em>, </td> 281.987 + </tr> 281.988 + <tr> 281.989 + <td class="paramkey"></td> 281.990 + <td></td> 281.991 + <td class="paramtype">const char * </td> 281.992 + <td class="paramname"> <em>button5_txt</em>, </td> 281.993 + </tr> 281.994 + <tr> 281.995 + <td class="paramkey"></td> 281.996 + <td></td> 281.997 + <td class="paramtype">const char * </td> 281.998 + <td class="paramname"> <em>button6_txt</em>, </td> 281.999 + </tr> 281.1000 + <tr> 281.1001 + <td class="paramkey"></td> 281.1002 + <td></td> 281.1003 + <td class="paramtype">const CImg< t > & </td> 281.1004 + <td class="paramname"> <em>logo</em>, </td> 281.1005 + </tr> 281.1006 + <tr> 281.1007 + <td class="paramkey"></td> 281.1008 + <td></td> 281.1009 + <td class="paramtype">const bool </td> 281.1010 + <td class="paramname"> <em>centering</em> = <code>false</code></td><td> </td> 281.1011 + </tr> 281.1012 + <tr> 281.1013 + <td></td> 281.1014 + <td>)</td> 281.1015 + <td></td><td></td><td><code> [inline]</code></td> 281.1016 + </tr> 281.1017 + </table> 281.1018 +</div> 281.1019 +<div class="memdoc"> 281.1020 + 281.1021 +<p> 281.1022 +Display a dialog box, where a user can click standard buttons. 281.1023 +<p> 281.1024 +Up to 6 buttons can be defined in the dialog window. This function returns when a user clicked one of the button or closed the dialog window. <dl compact><dt><b>Parameters:</b></dt><dd> 281.1025 + <table border="0" cellspacing="2" cellpadding="0"> 281.1026 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>= Title of the dialog window. </td></tr> 281.1027 + <tr><td valign="top"></td><td valign="top"><em>msg</em> </td><td>= Main message displayed inside the dialog window. </td></tr> 281.1028 + <tr><td valign="top"></td><td valign="top"><em>button1_txt</em> </td><td>= Label of the 1st button. </td></tr> 281.1029 + <tr><td valign="top"></td><td valign="top"><em>button2_txt</em> </td><td>= Label of the 2nd button. </td></tr> 281.1030 + <tr><td valign="top"></td><td valign="top"><em>button3_txt</em> </td><td>= Label of the 3rd button. </td></tr> 281.1031 + <tr><td valign="top"></td><td valign="top"><em>button4_txt</em> </td><td>= Label of the 4th button. </td></tr> 281.1032 + <tr><td valign="top"></td><td valign="top"><em>button5_txt</em> </td><td>= Label of the 5th button. </td></tr> 281.1033 + <tr><td valign="top"></td><td valign="top"><em>button6_txt</em> </td><td>= Label of the 6th button. </td></tr> 281.1034 + <tr><td valign="top"></td><td valign="top"><em>logo</em> </td><td>= Logo image displayed at the left of the main message. This parameter is optional. </td></tr> 281.1035 + <tr><td valign="top"></td><td valign="top"><em>centering</em> </td><td>= Tell to center the dialog window on the screen. </td></tr> 281.1036 + </table> 281.1037 +</dl> 281.1038 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>The button number (from 0 to 5), or -1 if the dialog window has been closed by the user. </dd></dl> 281.1039 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If a button text is set to 0, then the corresponding button (and the followings) won't appear in the dialog box. At least one button is necessary. </dd></dl> 281.1040 + 281.1041 +</div> 281.1042 +</div><p> 281.1043 +</div> 281.1044 +<hr noshade="noshade" size="1" width="100%"> 281.1045 +<a href="http://sourceforge.net"> 281.1046 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 281.1047 +</a> 281.1048 +<!-- Start of StatCounter Code --> 281.1049 +<script type="text/javascript" language="javascript"> 281.1050 +<!-- 281.1051 +var sc_project=895001; 281.1052 +var sc_invisible=1; 281.1053 +var sc_partition=7; 281.1054 +var sc_security="5ea85181"; 281.1055 +//--> 281.1056 +</script> 281.1057 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 281.1058 +<!-- End of StatCounter Code --> 281.1059 +</body> 281.1060 +</html>
282.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 282.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacemembers.html Mon Aug 03 14:09:20 2009 +0100 282.3 @@ -0,0 +1,321 @@ 282.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 282.5 +<head> 282.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 282.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 282.8 +<meta content="David Tschumperle" name="author"></meta> 282.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 282.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 282.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 282.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 282.13 +<style type="text/css"> 282.14 +<!-- 282.15 +body {background-color:white; font-family:sans-serif; } 282.16 +a:active{text-decoration:none; color:#303090} 282.17 +a:link{text-decoration:none; color:#303090} 282.18 +a:visited{text-decoration:none; color:#303090} 282.19 +a:hover{text-decoration:underline; color:#4E9F71} 282.20 +--> 282.21 +</style> 282.22 +<script language="JavaScript" type="text/javascript"> 282.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 282.24 + <!-- Web Site: http://redrival.com/eak/ --> 282.25 + <!-- This script and many more are available free online at --> 282.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 282.27 + <!-- Begin 282.28 + function NewWindow(mypage, myname, w, h, scroll) { 282.29 + var winl = (screen.width - w) / 2; 282.30 + var wint = (screen.height - h) / 2; 282.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 282.32 + win = window.open(mypage, myname, winprops) 282.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 282.34 + } 282.35 + // End --> 282.36 +</script> 282.37 +</head> 282.38 +<body> 282.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 282.40 + <tbody><tr><td> 282.41 + <hr noshade="noshade" size="1" width="90%"></hr> 282.42 + <center> 282.43 + <br/> 282.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 282.45 + <br/> 282.46 + </center> 282.47 + <hr noshade="noshade" size="1" width="90%"></hr> 282.48 + <center> 282.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 282.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 282.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 282.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 282.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 282.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 282.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 282.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 282.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 282.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 282.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 282.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 282.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 282.62 + </font> 282.63 + </td></tr></tbody> 282.64 + </table> 282.65 + </center> 282.66 + <hr noshade="noshade" size="1" width="90%"></hr> 282.67 + </td></tr></tbody> 282.68 +</table> 282.69 +<!-- Generated by Doxygen 1.5.7.1 --> 282.70 +<script type="text/javascript"> 282.71 +<!-- 282.72 +function changeDisplayState (e){ 282.73 + var num=this.id.replace(/[^[0-9]/g,''); 282.74 + var button=this.firstChild; 282.75 + var sectionDiv=document.getElementById('dynsection'+num); 282.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 282.77 + sectionDiv.style.display='block'; 282.78 + button.src='open.gif'; 282.79 + }else{ 282.80 + sectionDiv.style.display='none'; 282.81 + button.src='closed.gif'; 282.82 + } 282.83 +} 282.84 +function initDynSections(){ 282.85 + var divs=document.getElementsByTagName('div'); 282.86 + var sectionCounter=1; 282.87 + for(var i=0;i<divs.length-1;i++){ 282.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 282.89 + var header=divs[i]; 282.90 + var section=divs[i+1]; 282.91 + var button=header.firstChild; 282.92 + if (button!='IMG'){ 282.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 282.94 + button=document.createElement('img'); 282.95 + divs[i].insertBefore(button,divs[i].firstChild); 282.96 + } 282.97 + header.style.cursor='pointer'; 282.98 + header.onclick=changeDisplayState; 282.99 + header.id='dynheader'+sectionCounter; 282.100 + button.src='closed.gif'; 282.101 + section.id='dynsection'+sectionCounter; 282.102 + section.style.display='none'; 282.103 + section.style.marginLeft='14px'; 282.104 + sectionCounter++; 282.105 + } 282.106 + } 282.107 +} 282.108 +window.onload = initDynSections; 282.109 +--> 282.110 +</script> 282.111 +<div class="navigation" id="top"> 282.112 + <div class="tabs"> 282.113 + <ul> 282.114 + <li><a href="index.html"><span>Main Page</span></a></li> 282.115 + <li><a href="modules.html"><span>Modules</span></a></li> 282.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 282.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 282.118 + </ul> 282.119 + </div> 282.120 + <div class="tabs"> 282.121 + <ul> 282.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 282.123 + <li class="current"><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 282.124 + </ul> 282.125 + </div> 282.126 + <div class="tabs"> 282.127 + <ul> 282.128 + <li class="current"><a href="namespacemembers.html"><span>All</span></a></li> 282.129 + <li><a href="namespacemembers_func.html"><span>Functions</span></a></li> 282.130 + <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li> 282.131 + </ul> 282.132 + </div> 282.133 + <div class="tabs"> 282.134 + <ul> 282.135 + <li><a href="#index_a"><span>a</span></a></li> 282.136 + <li><a href="#index_b"><span>b</span></a></li> 282.137 + <li><a href="#index_c"><span>c</span></a></li> 282.138 + <li><a href="#index_d"><span>d</span></a></li> 282.139 + <li><a href="#index_e"><span>e</span></a></li> 282.140 + <li><a href="#index_f"><span>f</span></a></li> 282.141 + <li><a href="#index_g"><span>g</span></a></li> 282.142 + <li><a href="#index_i"><span>i</span></a></li> 282.143 + <li><a href="#index_m"><span>m</span></a></li> 282.144 + <li><a href="#index_n"><span>n</span></a></li> 282.145 + <li><a href="#index_p"><span>p</span></a></li> 282.146 + <li><a href="#index_r"><span>r</span></a></li> 282.147 + <li><a href="#index_s"><span>s</span></a></li> 282.148 + <li><a href="#index_t"><span>t</span></a></li> 282.149 + <li><a href="#index_u"><span>u</span></a></li> 282.150 + <li><a href="#index_v"><span>v</span></a></li> 282.151 + <li><a href="#index_w"><span>w</span></a></li> 282.152 + <li><a href="#index_x"><span>x</span></a></li> 282.153 + </ul> 282.154 + </div> 282.155 +</div> 282.156 +<div class="contents"> 282.157 +Here is a list of all documented namespace members with links to the namespaces they belong to: 282.158 +<p> 282.159 +<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 282.160 +<li>abs() 282.161 +: <a class="el" href="namespacecimg__library_1_1cimg.html#5dd0a4d361e2db646f5042be6bfe1d31">cimg_library::cimg</a> 282.162 +<li>atof() 282.163 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9ab0fcc7ef1bac330897fec51f617ae6">cimg_library::cimg</a> 282.164 +</ul> 282.165 +<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 282.166 +<li>basename() 282.167 +: <a class="el" href="namespacecimg__library_1_1cimg.html#bc491a5ed3a8d97e395138a379767a45">cimg_library::cimg</a> 282.168 +</ul> 282.169 +<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 282.170 +<li>crand() 282.171 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">cimg_library::cimg</a> 282.172 +</ul> 282.173 +<h3><a class="anchor" name="index_d">- d -</a></h3><ul> 282.174 +<li>dcraw_path() 282.175 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e36d7a689692ac5663afe1bbdab5d9fa">cimg_library::cimg</a> 282.176 +<li>dialog() 282.177 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9bd2a1e3ffff4538c4f53856e8b28ded">cimg_library::cimg</a> 282.178 +</ul> 282.179 +<h3><a class="anchor" name="index_e">- e -</a></h3><ul> 282.180 +<li>endianness() 282.181 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0d2a283a3aa2572e9d343f040c8c4c6b">cimg_library::cimg</a> 282.182 +<li>exception_mode() 282.183 +: <a class="el" href="namespacecimg__library_1_1cimg.html#acf66918a1173b3f72fe6f088d94f26b">cimg_library::cimg</a> 282.184 +</ul> 282.185 +<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 282.186 +<li>fclose() 282.187 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e381e63cfec4d6d2426a2763c05a094f">cimg_library::cimg</a> 282.188 +<li>ffmpeg_path() 282.189 +: <a class="el" href="namespacecimg__library_1_1cimg.html#bf1666b982cb372129f2ae2fdc748ef2">cimg_library::cimg</a> 282.190 +<li>file_type() 282.191 +: <a class="el" href="namespacecimg__library_1_1cimg.html#69b9fcf4cc4ef26506e3a35d8db2cb74">cimg_library::cimg</a> 282.192 +<li>fopen() 282.193 +: <a class="el" href="namespacecimg__library_1_1cimg.html#dff1045b64c40864232f07ec686fa731">cimg_library::cimg</a> 282.194 +<li>fread() 282.195 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ae720b10098f87a24c8756e63c48b49a">cimg_library::cimg</a> 282.196 +<li>fwrite() 282.197 +: <a class="el" href="namespacecimg__library_1_1cimg.html#b57bdbf463552372e18a7dda032c3054">cimg_library::cimg</a> 282.198 +</ul> 282.199 +<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 282.200 +<li>grand() 282.201 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">cimg_library::cimg</a> 282.202 +<li>graphicsmagick_path() 282.203 +: <a class="el" href="namespacecimg__library_1_1cimg.html#a9f7e166f51b43facc8ecc9f05e4ceba">cimg_library::cimg</a> 282.204 +<li>gunzip_path() 282.205 +: <a class="el" href="namespacecimg__library_1_1cimg.html#08f71c29acfe85d5b8718900e995b779">cimg_library::cimg</a> 282.206 +<li>gzip_path() 282.207 +: <a class="el" href="namespacecimg__library_1_1cimg.html#75f3391e7a393c1c1fe43537004537e2">cimg_library::cimg</a> 282.208 +</ul> 282.209 +<h3><a class="anchor" name="index_i">- i -</a></h3><ul> 282.210 +<li>imagemagick_path() 282.211 +: <a class="el" href="namespacecimg__library_1_1cimg.html#d0db1003e37cc111d9eddd282c1ab27b">cimg_library::cimg</a> 282.212 +<li>info() 282.213 +: <a class="el" href="namespacecimg__library_1_1cimg.html#c1b66fe77173de9e5e8542b2823d6071">cimg_library::cimg</a> 282.214 +<li>invert_endianness() 282.215 +: <a class="el" href="namespacecimg__library_1_1cimg.html#565abb2900eedfc3700ec2a87986bb89">cimg_library::cimg</a> 282.216 +</ul> 282.217 +<h3><a class="anchor" name="index_m">- m -</a></h3><ul> 282.218 +<li>max() 282.219 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ef8f304ef317aed250bbb0dc2b242969">cimg_library::cimg</a> 282.220 +<li>medcon_path() 282.221 +: <a class="el" href="namespacecimg__library_1_1cimg.html#aedba1291890f50edb5be58ef662e516">cimg_library::cimg</a> 282.222 +<li>min() 282.223 +: <a class="el" href="namespacecimg__library_1_1cimg.html#11ac2edf216d6e3085207fbef99c8a10">cimg_library::cimg</a> 282.224 +<li>minmod() 282.225 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e2bab18e9272641210d8b2d7e4a4503f">cimg_library::cimg</a> 282.226 +<li>mod() 282.227 +: <a class="el" href="namespacecimg__library_1_1cimg.html#85970edf9afb3b48c0715fadf917854e">cimg_library::cimg</a> 282.228 +</ul> 282.229 +<h3><a class="anchor" name="index_n">- n -</a></h3><ul> 282.230 +<li>nearest_pow2() 282.231 +: <a class="el" href="namespacecimg__library_1_1cimg.html#2d817bb30160ae25fde49bd14db5a7e6">cimg_library::cimg</a> 282.232 +<li>number_filename() 282.233 +: <a class="el" href="namespacecimg__library_1_1cimg.html#878d8296e87c4ddae1676158e40cbd3a">cimg_library::cimg</a> 282.234 +</ul> 282.235 +<h3><a class="anchor" name="index_p">- p -</a></h3><ul> 282.236 +<li>prand() 282.237 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7f927973e2bc17b851bb61cdfbfef061">cimg_library::cimg</a> 282.238 +</ul> 282.239 +<h3><a class="anchor" name="index_r">- r -</a></h3><ul> 282.240 +<li>rand() 282.241 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">cimg_library::cimg</a> 282.242 +<li>rol() 282.243 +: <a class="el" href="namespacecimg__library_1_1cimg.html#964b7bf56de9cba321b402ab86db3ff7">cimg_library::cimg</a> 282.244 +<li>ror() 282.245 +: <a class="el" href="namespacecimg__library_1_1cimg.html#62fd3ab82b98aa857fcf5f3fbd7c8b99">cimg_library::cimg</a> 282.246 +<li>round() 282.247 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0bfd704cc09f4a25f09035b067aca4e3">cimg_library::cimg</a> 282.248 +</ul> 282.249 +<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 282.250 +<li>sign() 282.251 +: <a class="el" href="namespacecimg__library_1_1cimg.html#cb00b9ea45d7c523af71071eaad2fd98">cimg_library::cimg</a> 282.252 +<li>sleep() 282.253 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334">cimg_library::cimg</a> 282.254 +<li>split_filename() 282.255 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9f7068ec0354e0b34a69a9dc829598aa">cimg_library::cimg</a> 282.256 +<li>sqr() 282.257 +: <a class="el" href="namespacecimg__library_1_1cimg.html#415ccb3d8d3cf2e7bbdca6fa18ed3465">cimg_library::cimg</a> 282.258 +<li>strcasecmp() 282.259 +: <a class="el" href="namespacecimg__library_1_1cimg.html#43334b3df38ff7c4369a503a4fc3a9f9">cimg_library::cimg</a> 282.260 +<li>strclean() 282.261 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7199326277681bfe958fc21a508897e2">cimg_library::cimg</a> 282.262 +<li>strcmp() 282.263 +: <a class="el" href="namespacecimg__library_1_1cimg.html#aab723edb9b070b285367e7ffc099d78">cimg_library::cimg</a> 282.264 +<li>strescape() 282.265 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7710ef1683aa12ead974583b764cd353">cimg_library::cimg</a> 282.266 +<li>strfind() 282.267 +: <a class="el" href="namespacecimg__library_1_1cimg.html#2f127d56499b955c44ab1e5963d04c8c">cimg_library::cimg</a> 282.268 +<li>strlen() 282.269 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3f65ad0f35bbbfc7ec197ce32f326da2">cimg_library::cimg</a> 282.270 +<li>strncasecmp() 282.271 +: <a class="el" href="namespacecimg__library_1_1cimg.html#747de40c911c42d60e1a4ee3f0c69c6c">cimg_library::cimg</a> 282.272 +<li>strncmp() 282.273 +: <a class="el" href="namespacecimg__library_1_1cimg.html#efc1425e963cd56d8a926908749119a5">cimg_library::cimg</a> 282.274 +<li>strpare() 282.275 +: <a class="el" href="namespacecimg__library_1_1cimg.html#75c2af1ba1b514bd547f9b23745b125c">cimg_library::cimg</a> 282.276 +<li>swap() 282.277 +: <a class="el" href="namespacecimg__library_1_1cimg.html#40c508097e570855c68bc944249ecf59">cimg_library::cimg</a> 282.278 +<li>system() 282.279 +: <a class="el" href="namespacecimg__library_1_1cimg.html#09e80f4d7a95f3d5c2282202d8526520">cimg_library::cimg</a> 282.280 +</ul> 282.281 +<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 282.282 +<li>temporary() 282.283 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f3bb87016460121409a8f1a2ebe418b1">cimg_library::cimg</a> 282.284 +<li>temporary_path() 282.285 +: <a class="el" href="namespacecimg__library_1_1cimg.html#797797a309ca40aa28cdfbb92f4d1621">cimg_library::cimg</a> 282.286 +<li>time() 282.287 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">cimg_library::cimg</a> 282.288 +</ul> 282.289 +<h3><a class="anchor" name="index_u">- u -</a></h3><ul> 282.290 +<li>uncase() 282.291 +: <a class="el" href="namespacecimg__library_1_1cimg.html#5a028d4d4de4e1894263a29a6de8e2ee">cimg_library::cimg</a> 282.292 +</ul> 282.293 +<h3><a class="anchor" name="index_v">- v -</a></h3><ul> 282.294 +<li>valuePI 282.295 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0227707be3c6c40e2f71806077fbfcdb">cimg_library::cimg</a> 282.296 +</ul> 282.297 +<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 282.298 +<li>wait() 282.299 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77">cimg_library::cimg</a> 282.300 +<li>warn() 282.301 +: <a class="el" href="namespacecimg__library_1_1cimg.html#93ec28267b101050d949d1ebff1b88cf">cimg_library::cimg</a> 282.302 +</ul> 282.303 +<h3><a class="anchor" name="index_x">- x -</a></h3><ul> 282.304 +<li>xln() 282.305 +: <a class="el" href="namespacecimg__library_1_1cimg.html#8dde183be46c1821a3901b63825a4cf4">cimg_library::cimg</a> 282.306 +</ul> 282.307 +</div> 282.308 +<hr noshade="noshade" size="1" width="100%"> 282.309 +<a href="http://sourceforge.net"> 282.310 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 282.311 +</a> 282.312 +<!-- Start of StatCounter Code --> 282.313 +<script type="text/javascript" language="javascript"> 282.314 +<!-- 282.315 +var sc_project=895001; 282.316 +var sc_invisible=1; 282.317 +var sc_partition=7; 282.318 +var sc_security="5ea85181"; 282.319 +//--> 282.320 +</script> 282.321 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 282.322 +<!-- End of StatCounter Code --> 282.323 +</body> 282.324 +</html>
283.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 283.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacemembers_func.html Mon Aug 03 14:09:20 2009 +0100 283.3 @@ -0,0 +1,316 @@ 283.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 283.5 +<head> 283.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 283.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 283.8 +<meta content="David Tschumperle" name="author"></meta> 283.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 283.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 283.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 283.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 283.13 +<style type="text/css"> 283.14 +<!-- 283.15 +body {background-color:white; font-family:sans-serif; } 283.16 +a:active{text-decoration:none; color:#303090} 283.17 +a:link{text-decoration:none; color:#303090} 283.18 +a:visited{text-decoration:none; color:#303090} 283.19 +a:hover{text-decoration:underline; color:#4E9F71} 283.20 +--> 283.21 +</style> 283.22 +<script language="JavaScript" type="text/javascript"> 283.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 283.24 + <!-- Web Site: http://redrival.com/eak/ --> 283.25 + <!-- This script and many more are available free online at --> 283.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 283.27 + <!-- Begin 283.28 + function NewWindow(mypage, myname, w, h, scroll) { 283.29 + var winl = (screen.width - w) / 2; 283.30 + var wint = (screen.height - h) / 2; 283.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 283.32 + win = window.open(mypage, myname, winprops) 283.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 283.34 + } 283.35 + // End --> 283.36 +</script> 283.37 +</head> 283.38 +<body> 283.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 283.40 + <tbody><tr><td> 283.41 + <hr noshade="noshade" size="1" width="90%"></hr> 283.42 + <center> 283.43 + <br/> 283.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 283.45 + <br/> 283.46 + </center> 283.47 + <hr noshade="noshade" size="1" width="90%"></hr> 283.48 + <center> 283.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 283.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 283.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 283.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 283.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 283.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 283.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 283.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 283.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 283.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 283.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 283.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 283.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 283.62 + </font> 283.63 + </td></tr></tbody> 283.64 + </table> 283.65 + </center> 283.66 + <hr noshade="noshade" size="1" width="90%"></hr> 283.67 + </td></tr></tbody> 283.68 +</table> 283.69 +<!-- Generated by Doxygen 1.5.7.1 --> 283.70 +<script type="text/javascript"> 283.71 +<!-- 283.72 +function changeDisplayState (e){ 283.73 + var num=this.id.replace(/[^[0-9]/g,''); 283.74 + var button=this.firstChild; 283.75 + var sectionDiv=document.getElementById('dynsection'+num); 283.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 283.77 + sectionDiv.style.display='block'; 283.78 + button.src='open.gif'; 283.79 + }else{ 283.80 + sectionDiv.style.display='none'; 283.81 + button.src='closed.gif'; 283.82 + } 283.83 +} 283.84 +function initDynSections(){ 283.85 + var divs=document.getElementsByTagName('div'); 283.86 + var sectionCounter=1; 283.87 + for(var i=0;i<divs.length-1;i++){ 283.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 283.89 + var header=divs[i]; 283.90 + var section=divs[i+1]; 283.91 + var button=header.firstChild; 283.92 + if (button!='IMG'){ 283.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 283.94 + button=document.createElement('img'); 283.95 + divs[i].insertBefore(button,divs[i].firstChild); 283.96 + } 283.97 + header.style.cursor='pointer'; 283.98 + header.onclick=changeDisplayState; 283.99 + header.id='dynheader'+sectionCounter; 283.100 + button.src='closed.gif'; 283.101 + section.id='dynsection'+sectionCounter; 283.102 + section.style.display='none'; 283.103 + section.style.marginLeft='14px'; 283.104 + sectionCounter++; 283.105 + } 283.106 + } 283.107 +} 283.108 +window.onload = initDynSections; 283.109 +--> 283.110 +</script> 283.111 +<div class="navigation" id="top"> 283.112 + <div class="tabs"> 283.113 + <ul> 283.114 + <li><a href="index.html"><span>Main Page</span></a></li> 283.115 + <li><a href="modules.html"><span>Modules</span></a></li> 283.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 283.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 283.118 + </ul> 283.119 + </div> 283.120 + <div class="tabs"> 283.121 + <ul> 283.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 283.123 + <li class="current"><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 283.124 + </ul> 283.125 + </div> 283.126 + <div class="tabs"> 283.127 + <ul> 283.128 + <li><a href="namespacemembers.html"><span>All</span></a></li> 283.129 + <li class="current"><a href="namespacemembers_func.html"><span>Functions</span></a></li> 283.130 + <li><a href="namespacemembers_vars.html"><span>Variables</span></a></li> 283.131 + </ul> 283.132 + </div> 283.133 + <div class="tabs"> 283.134 + <ul> 283.135 + <li><a href="#index_a"><span>a</span></a></li> 283.136 + <li><a href="#index_b"><span>b</span></a></li> 283.137 + <li><a href="#index_c"><span>c</span></a></li> 283.138 + <li><a href="#index_d"><span>d</span></a></li> 283.139 + <li><a href="#index_e"><span>e</span></a></li> 283.140 + <li><a href="#index_f"><span>f</span></a></li> 283.141 + <li><a href="#index_g"><span>g</span></a></li> 283.142 + <li><a href="#index_i"><span>i</span></a></li> 283.143 + <li><a href="#index_m"><span>m</span></a></li> 283.144 + <li><a href="#index_n"><span>n</span></a></li> 283.145 + <li><a href="#index_p"><span>p</span></a></li> 283.146 + <li><a href="#index_r"><span>r</span></a></li> 283.147 + <li><a href="#index_s"><span>s</span></a></li> 283.148 + <li><a href="#index_t"><span>t</span></a></li> 283.149 + <li><a href="#index_u"><span>u</span></a></li> 283.150 + <li><a href="#index_w"><span>w</span></a></li> 283.151 + <li><a href="#index_x"><span>x</span></a></li> 283.152 + </ul> 283.153 + </div> 283.154 +</div> 283.155 +<div class="contents"> 283.156 + 283.157 +<p> 283.158 +<h3><a class="anchor" name="index_a">- a -</a></h3><ul> 283.159 +<li>abs() 283.160 +: <a class="el" href="namespacecimg__library_1_1cimg.html#5dd0a4d361e2db646f5042be6bfe1d31">cimg_library::cimg</a> 283.161 +<li>atof() 283.162 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9ab0fcc7ef1bac330897fec51f617ae6">cimg_library::cimg</a> 283.163 +</ul> 283.164 +<h3><a class="anchor" name="index_b">- b -</a></h3><ul> 283.165 +<li>basename() 283.166 +: <a class="el" href="namespacecimg__library_1_1cimg.html#bc491a5ed3a8d97e395138a379767a45">cimg_library::cimg</a> 283.167 +</ul> 283.168 +<h3><a class="anchor" name="index_c">- c -</a></h3><ul> 283.169 +<li>crand() 283.170 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">cimg_library::cimg</a> 283.171 +</ul> 283.172 +<h3><a class="anchor" name="index_d">- d -</a></h3><ul> 283.173 +<li>dcraw_path() 283.174 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e36d7a689692ac5663afe1bbdab5d9fa">cimg_library::cimg</a> 283.175 +<li>dialog() 283.176 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9bd2a1e3ffff4538c4f53856e8b28ded">cimg_library::cimg</a> 283.177 +</ul> 283.178 +<h3><a class="anchor" name="index_e">- e -</a></h3><ul> 283.179 +<li>endianness() 283.180 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0d2a283a3aa2572e9d343f040c8c4c6b">cimg_library::cimg</a> 283.181 +<li>exception_mode() 283.182 +: <a class="el" href="namespacecimg__library_1_1cimg.html#acf66918a1173b3f72fe6f088d94f26b">cimg_library::cimg</a> 283.183 +</ul> 283.184 +<h3><a class="anchor" name="index_f">- f -</a></h3><ul> 283.185 +<li>fclose() 283.186 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e381e63cfec4d6d2426a2763c05a094f">cimg_library::cimg</a> 283.187 +<li>ffmpeg_path() 283.188 +: <a class="el" href="namespacecimg__library_1_1cimg.html#bf1666b982cb372129f2ae2fdc748ef2">cimg_library::cimg</a> 283.189 +<li>file_type() 283.190 +: <a class="el" href="namespacecimg__library_1_1cimg.html#69b9fcf4cc4ef26506e3a35d8db2cb74">cimg_library::cimg</a> 283.191 +<li>fopen() 283.192 +: <a class="el" href="namespacecimg__library_1_1cimg.html#dff1045b64c40864232f07ec686fa731">cimg_library::cimg</a> 283.193 +<li>fread() 283.194 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ae720b10098f87a24c8756e63c48b49a">cimg_library::cimg</a> 283.195 +<li>fwrite() 283.196 +: <a class="el" href="namespacecimg__library_1_1cimg.html#b57bdbf463552372e18a7dda032c3054">cimg_library::cimg</a> 283.197 +</ul> 283.198 +<h3><a class="anchor" name="index_g">- g -</a></h3><ul> 283.199 +<li>grand() 283.200 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">cimg_library::cimg</a> 283.201 +<li>graphicsmagick_path() 283.202 +: <a class="el" href="namespacecimg__library_1_1cimg.html#a9f7e166f51b43facc8ecc9f05e4ceba">cimg_library::cimg</a> 283.203 +<li>gunzip_path() 283.204 +: <a class="el" href="namespacecimg__library_1_1cimg.html#08f71c29acfe85d5b8718900e995b779">cimg_library::cimg</a> 283.205 +<li>gzip_path() 283.206 +: <a class="el" href="namespacecimg__library_1_1cimg.html#75f3391e7a393c1c1fe43537004537e2">cimg_library::cimg</a> 283.207 +</ul> 283.208 +<h3><a class="anchor" name="index_i">- i -</a></h3><ul> 283.209 +<li>imagemagick_path() 283.210 +: <a class="el" href="namespacecimg__library_1_1cimg.html#d0db1003e37cc111d9eddd282c1ab27b">cimg_library::cimg</a> 283.211 +<li>info() 283.212 +: <a class="el" href="namespacecimg__library_1_1cimg.html#c1b66fe77173de9e5e8542b2823d6071">cimg_library::cimg</a> 283.213 +<li>invert_endianness() 283.214 +: <a class="el" href="namespacecimg__library_1_1cimg.html#565abb2900eedfc3700ec2a87986bb89">cimg_library::cimg</a> 283.215 +</ul> 283.216 +<h3><a class="anchor" name="index_m">- m -</a></h3><ul> 283.217 +<li>max() 283.218 +: <a class="el" href="namespacecimg__library_1_1cimg.html#ef8f304ef317aed250bbb0dc2b242969">cimg_library::cimg</a> 283.219 +<li>medcon_path() 283.220 +: <a class="el" href="namespacecimg__library_1_1cimg.html#aedba1291890f50edb5be58ef662e516">cimg_library::cimg</a> 283.221 +<li>min() 283.222 +: <a class="el" href="namespacecimg__library_1_1cimg.html#11ac2edf216d6e3085207fbef99c8a10">cimg_library::cimg</a> 283.223 +<li>minmod() 283.224 +: <a class="el" href="namespacecimg__library_1_1cimg.html#e2bab18e9272641210d8b2d7e4a4503f">cimg_library::cimg</a> 283.225 +<li>mod() 283.226 +: <a class="el" href="namespacecimg__library_1_1cimg.html#85970edf9afb3b48c0715fadf917854e">cimg_library::cimg</a> 283.227 +</ul> 283.228 +<h3><a class="anchor" name="index_n">- n -</a></h3><ul> 283.229 +<li>nearest_pow2() 283.230 +: <a class="el" href="namespacecimg__library_1_1cimg.html#2d817bb30160ae25fde49bd14db5a7e6">cimg_library::cimg</a> 283.231 +<li>number_filename() 283.232 +: <a class="el" href="namespacecimg__library_1_1cimg.html#878d8296e87c4ddae1676158e40cbd3a">cimg_library::cimg</a> 283.233 +</ul> 283.234 +<h3><a class="anchor" name="index_p">- p -</a></h3><ul> 283.235 +<li>prand() 283.236 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7f927973e2bc17b851bb61cdfbfef061">cimg_library::cimg</a> 283.237 +</ul> 283.238 +<h3><a class="anchor" name="index_r">- r -</a></h3><ul> 283.239 +<li>rand() 283.240 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">cimg_library::cimg</a> 283.241 +<li>rol() 283.242 +: <a class="el" href="namespacecimg__library_1_1cimg.html#964b7bf56de9cba321b402ab86db3ff7">cimg_library::cimg</a> 283.243 +<li>ror() 283.244 +: <a class="el" href="namespacecimg__library_1_1cimg.html#62fd3ab82b98aa857fcf5f3fbd7c8b99">cimg_library::cimg</a> 283.245 +<li>round() 283.246 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0bfd704cc09f4a25f09035b067aca4e3">cimg_library::cimg</a> 283.247 +</ul> 283.248 +<h3><a class="anchor" name="index_s">- s -</a></h3><ul> 283.249 +<li>sign() 283.250 +: <a class="el" href="namespacecimg__library_1_1cimg.html#cb00b9ea45d7c523af71071eaad2fd98">cimg_library::cimg</a> 283.251 +<li>sleep() 283.252 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334">cimg_library::cimg</a> 283.253 +<li>split_filename() 283.254 +: <a class="el" href="namespacecimg__library_1_1cimg.html#9f7068ec0354e0b34a69a9dc829598aa">cimg_library::cimg</a> 283.255 +<li>sqr() 283.256 +: <a class="el" href="namespacecimg__library_1_1cimg.html#415ccb3d8d3cf2e7bbdca6fa18ed3465">cimg_library::cimg</a> 283.257 +<li>strcasecmp() 283.258 +: <a class="el" href="namespacecimg__library_1_1cimg.html#43334b3df38ff7c4369a503a4fc3a9f9">cimg_library::cimg</a> 283.259 +<li>strclean() 283.260 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7199326277681bfe958fc21a508897e2">cimg_library::cimg</a> 283.261 +<li>strcmp() 283.262 +: <a class="el" href="namespacecimg__library_1_1cimg.html#aab723edb9b070b285367e7ffc099d78">cimg_library::cimg</a> 283.263 +<li>strescape() 283.264 +: <a class="el" href="namespacecimg__library_1_1cimg.html#7710ef1683aa12ead974583b764cd353">cimg_library::cimg</a> 283.265 +<li>strfind() 283.266 +: <a class="el" href="namespacecimg__library_1_1cimg.html#2f127d56499b955c44ab1e5963d04c8c">cimg_library::cimg</a> 283.267 +<li>strlen() 283.268 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3f65ad0f35bbbfc7ec197ce32f326da2">cimg_library::cimg</a> 283.269 +<li>strncasecmp() 283.270 +: <a class="el" href="namespacecimg__library_1_1cimg.html#747de40c911c42d60e1a4ee3f0c69c6c">cimg_library::cimg</a> 283.271 +<li>strncmp() 283.272 +: <a class="el" href="namespacecimg__library_1_1cimg.html#efc1425e963cd56d8a926908749119a5">cimg_library::cimg</a> 283.273 +<li>strpare() 283.274 +: <a class="el" href="namespacecimg__library_1_1cimg.html#75c2af1ba1b514bd547f9b23745b125c">cimg_library::cimg</a> 283.275 +<li>swap() 283.276 +: <a class="el" href="namespacecimg__library_1_1cimg.html#40c508097e570855c68bc944249ecf59">cimg_library::cimg</a> 283.277 +<li>system() 283.278 +: <a class="el" href="namespacecimg__library_1_1cimg.html#09e80f4d7a95f3d5c2282202d8526520">cimg_library::cimg</a> 283.279 +</ul> 283.280 +<h3><a class="anchor" name="index_t">- t -</a></h3><ul> 283.281 +<li>temporary() 283.282 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f3bb87016460121409a8f1a2ebe418b1">cimg_library::cimg</a> 283.283 +<li>temporary_path() 283.284 +: <a class="el" href="namespacecimg__library_1_1cimg.html#797797a309ca40aa28cdfbb92f4d1621">cimg_library::cimg</a> 283.285 +<li>time() 283.286 +: <a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">cimg_library::cimg</a> 283.287 +</ul> 283.288 +<h3><a class="anchor" name="index_u">- u -</a></h3><ul> 283.289 +<li>uncase() 283.290 +: <a class="el" href="namespacecimg__library_1_1cimg.html#5a028d4d4de4e1894263a29a6de8e2ee">cimg_library::cimg</a> 283.291 +</ul> 283.292 +<h3><a class="anchor" name="index_w">- w -</a></h3><ul> 283.293 +<li>wait() 283.294 +: <a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77">cimg_library::cimg</a> 283.295 +<li>warn() 283.296 +: <a class="el" href="namespacecimg__library_1_1cimg.html#93ec28267b101050d949d1ebff1b88cf">cimg_library::cimg</a> 283.297 +</ul> 283.298 +<h3><a class="anchor" name="index_x">- x -</a></h3><ul> 283.299 +<li>xln() 283.300 +: <a class="el" href="namespacecimg__library_1_1cimg.html#8dde183be46c1821a3901b63825a4cf4">cimg_library::cimg</a> 283.301 +</ul> 283.302 +</div> 283.303 +<hr noshade="noshade" size="1" width="100%"> 283.304 +<a href="http://sourceforge.net"> 283.305 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 283.306 +</a> 283.307 +<!-- Start of StatCounter Code --> 283.308 +<script type="text/javascript" language="javascript"> 283.309 +<!-- 283.310 +var sc_project=895001; 283.311 +var sc_invisible=1; 283.312 +var sc_partition=7; 283.313 +var sc_security="5ea85181"; 283.314 +//--> 283.315 +</script> 283.316 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 283.317 +<!-- End of StatCounter Code --> 283.318 +</body> 283.319 +</html>
284.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 284.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacemembers_vars.html Mon Aug 03 14:09:20 2009 +0100 284.3 @@ -0,0 +1,155 @@ 284.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 284.5 +<head> 284.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 284.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 284.8 +<meta content="David Tschumperle" name="author"></meta> 284.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 284.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 284.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 284.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 284.13 +<style type="text/css"> 284.14 +<!-- 284.15 +body {background-color:white; font-family:sans-serif; } 284.16 +a:active{text-decoration:none; color:#303090} 284.17 +a:link{text-decoration:none; color:#303090} 284.18 +a:visited{text-decoration:none; color:#303090} 284.19 +a:hover{text-decoration:underline; color:#4E9F71} 284.20 +--> 284.21 +</style> 284.22 +<script language="JavaScript" type="text/javascript"> 284.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 284.24 + <!-- Web Site: http://redrival.com/eak/ --> 284.25 + <!-- This script and many more are available free online at --> 284.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 284.27 + <!-- Begin 284.28 + function NewWindow(mypage, myname, w, h, scroll) { 284.29 + var winl = (screen.width - w) / 2; 284.30 + var wint = (screen.height - h) / 2; 284.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 284.32 + win = window.open(mypage, myname, winprops) 284.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 284.34 + } 284.35 + // End --> 284.36 +</script> 284.37 +</head> 284.38 +<body> 284.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 284.40 + <tbody><tr><td> 284.41 + <hr noshade="noshade" size="1" width="90%"></hr> 284.42 + <center> 284.43 + <br/> 284.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 284.45 + <br/> 284.46 + </center> 284.47 + <hr noshade="noshade" size="1" width="90%"></hr> 284.48 + <center> 284.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 284.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 284.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 284.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 284.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 284.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 284.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 284.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 284.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 284.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 284.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 284.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 284.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 284.62 + </font> 284.63 + </td></tr></tbody> 284.64 + </table> 284.65 + </center> 284.66 + <hr noshade="noshade" size="1" width="90%"></hr> 284.67 + </td></tr></tbody> 284.68 +</table> 284.69 +<!-- Generated by Doxygen 1.5.7.1 --> 284.70 +<script type="text/javascript"> 284.71 +<!-- 284.72 +function changeDisplayState (e){ 284.73 + var num=this.id.replace(/[^[0-9]/g,''); 284.74 + var button=this.firstChild; 284.75 + var sectionDiv=document.getElementById('dynsection'+num); 284.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 284.77 + sectionDiv.style.display='block'; 284.78 + button.src='open.gif'; 284.79 + }else{ 284.80 + sectionDiv.style.display='none'; 284.81 + button.src='closed.gif'; 284.82 + } 284.83 +} 284.84 +function initDynSections(){ 284.85 + var divs=document.getElementsByTagName('div'); 284.86 + var sectionCounter=1; 284.87 + for(var i=0;i<divs.length-1;i++){ 284.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 284.89 + var header=divs[i]; 284.90 + var section=divs[i+1]; 284.91 + var button=header.firstChild; 284.92 + if (button!='IMG'){ 284.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 284.94 + button=document.createElement('img'); 284.95 + divs[i].insertBefore(button,divs[i].firstChild); 284.96 + } 284.97 + header.style.cursor='pointer'; 284.98 + header.onclick=changeDisplayState; 284.99 + header.id='dynheader'+sectionCounter; 284.100 + button.src='closed.gif'; 284.101 + section.id='dynsection'+sectionCounter; 284.102 + section.style.display='none'; 284.103 + section.style.marginLeft='14px'; 284.104 + sectionCounter++; 284.105 + } 284.106 + } 284.107 +} 284.108 +window.onload = initDynSections; 284.109 +--> 284.110 +</script> 284.111 +<div class="navigation" id="top"> 284.112 + <div class="tabs"> 284.113 + <ul> 284.114 + <li><a href="index.html"><span>Main Page</span></a></li> 284.115 + <li><a href="modules.html"><span>Modules</span></a></li> 284.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 284.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 284.118 + </ul> 284.119 + </div> 284.120 + <div class="tabs"> 284.121 + <ul> 284.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 284.123 + <li class="current"><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 284.124 + </ul> 284.125 + </div> 284.126 + <div class="tabs"> 284.127 + <ul> 284.128 + <li><a href="namespacemembers.html"><span>All</span></a></li> 284.129 + <li><a href="namespacemembers_func.html"><span>Functions</span></a></li> 284.130 + <li class="current"><a href="namespacemembers_vars.html"><span>Variables</span></a></li> 284.131 + </ul> 284.132 + </div> 284.133 +</div> 284.134 +<div class="contents"> 284.135 + 284.136 +<p> 284.137 +<ul> 284.138 +<li>valuePI 284.139 +: <a class="el" href="namespacecimg__library_1_1cimg.html#0227707be3c6c40e2f71806077fbfcdb">cimg_library::cimg</a> 284.140 +</ul> 284.141 +</div> 284.142 +<hr noshade="noshade" size="1" width="100%"> 284.143 +<a href="http://sourceforge.net"> 284.144 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 284.145 +</a> 284.146 +<!-- Start of StatCounter Code --> 284.147 +<script type="text/javascript" language="javascript"> 284.148 +<!-- 284.149 +var sc_project=895001; 284.150 +var sc_invisible=1; 284.151 +var sc_partition=7; 284.152 +var sc_security="5ea85181"; 284.153 +//--> 284.154 +</script> 284.155 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 284.156 +<!-- End of StatCounter Code --> 284.157 +</body> 284.158 +</html>
285.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 285.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespaces.html Mon Aug 03 14:09:20 2009 +0100 285.3 @@ -0,0 +1,146 @@ 285.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 285.5 +<head> 285.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 285.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 285.8 +<meta content="David Tschumperle" name="author"></meta> 285.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 285.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 285.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 285.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 285.13 +<style type="text/css"> 285.14 +<!-- 285.15 +body {background-color:white; font-family:sans-serif; } 285.16 +a:active{text-decoration:none; color:#303090} 285.17 +a:link{text-decoration:none; color:#303090} 285.18 +a:visited{text-decoration:none; color:#303090} 285.19 +a:hover{text-decoration:underline; color:#4E9F71} 285.20 +--> 285.21 +</style> 285.22 +<script language="JavaScript" type="text/javascript"> 285.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 285.24 + <!-- Web Site: http://redrival.com/eak/ --> 285.25 + <!-- This script and many more are available free online at --> 285.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 285.27 + <!-- Begin 285.28 + function NewWindow(mypage, myname, w, h, scroll) { 285.29 + var winl = (screen.width - w) / 2; 285.30 + var wint = (screen.height - h) / 2; 285.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 285.32 + win = window.open(mypage, myname, winprops) 285.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 285.34 + } 285.35 + // End --> 285.36 +</script> 285.37 +</head> 285.38 +<body> 285.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 285.40 + <tbody><tr><td> 285.41 + <hr noshade="noshade" size="1" width="90%"></hr> 285.42 + <center> 285.43 + <br/> 285.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 285.45 + <br/> 285.46 + </center> 285.47 + <hr noshade="noshade" size="1" width="90%"></hr> 285.48 + <center> 285.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 285.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 285.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 285.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 285.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 285.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 285.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 285.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 285.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 285.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 285.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 285.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 285.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 285.62 + </font> 285.63 + </td></tr></tbody> 285.64 + </table> 285.65 + </center> 285.66 + <hr noshade="noshade" size="1" width="90%"></hr> 285.67 + </td></tr></tbody> 285.68 +</table> 285.69 +<!-- Generated by Doxygen 1.5.7.1 --> 285.70 +<script type="text/javascript"> 285.71 +<!-- 285.72 +function changeDisplayState (e){ 285.73 + var num=this.id.replace(/[^[0-9]/g,''); 285.74 + var button=this.firstChild; 285.75 + var sectionDiv=document.getElementById('dynsection'+num); 285.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 285.77 + sectionDiv.style.display='block'; 285.78 + button.src='open.gif'; 285.79 + }else{ 285.80 + sectionDiv.style.display='none'; 285.81 + button.src='closed.gif'; 285.82 + } 285.83 +} 285.84 +function initDynSections(){ 285.85 + var divs=document.getElementsByTagName('div'); 285.86 + var sectionCounter=1; 285.87 + for(var i=0;i<divs.length-1;i++){ 285.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 285.89 + var header=divs[i]; 285.90 + var section=divs[i+1]; 285.91 + var button=header.firstChild; 285.92 + if (button!='IMG'){ 285.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 285.94 + button=document.createElement('img'); 285.95 + divs[i].insertBefore(button,divs[i].firstChild); 285.96 + } 285.97 + header.style.cursor='pointer'; 285.98 + header.onclick=changeDisplayState; 285.99 + header.id='dynheader'+sectionCounter; 285.100 + button.src='closed.gif'; 285.101 + section.id='dynsection'+sectionCounter; 285.102 + section.style.display='none'; 285.103 + section.style.marginLeft='14px'; 285.104 + sectionCounter++; 285.105 + } 285.106 + } 285.107 +} 285.108 +window.onload = initDynSections; 285.109 +--> 285.110 +</script> 285.111 +<div class="navigation" id="top"> 285.112 + <div class="tabs"> 285.113 + <ul> 285.114 + <li><a href="index.html"><span>Main Page</span></a></li> 285.115 + <li><a href="modules.html"><span>Modules</span></a></li> 285.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 285.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 285.118 + </ul> 285.119 + </div> 285.120 + <div class="tabs"> 285.121 + <ul> 285.122 + <li class="current"><a href="namespaces.html"><span>Namespace List</span></a></li> 285.123 + <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 285.124 + </ul> 285.125 + </div> 285.126 +</div> 285.127 +<div class="contents"> 285.128 +<h1>Namespace List</h1>Here is a list of all documented namespaces with brief descriptions:<table> 285.129 + <tr><td class="indexkey"><a class="el" href="namespacecimg__library.html">cimg_library</a></td><td class="indexvalue">This namespace encompasses all classes and functions of the CImg library </td></tr> 285.130 + <tr><td class="indexkey"><a class="el" href="namespacecimg__library_1_1cimg.html">cimg_library::cimg</a></td><td class="indexvalue">Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library </td></tr> 285.131 +</table> 285.132 +</div> 285.133 +<hr noshade="noshade" size="1" width="100%"> 285.134 +<a href="http://sourceforge.net"> 285.135 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 285.136 +</a> 285.137 +<!-- Start of StatCounter Code --> 285.138 +<script type="text/javascript" language="javascript"> 285.139 +<!-- 285.140 +var sc_project=895001; 285.141 +var sc_invisible=1; 285.142 +var sc_partition=7; 285.143 +var sc_security="5ea85181"; 285.144 +//--> 285.145 +</script> 285.146 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 285.147 +<!-- End of StatCounter Code --> 285.148 +</body> 285.149 +</html>
286.1 Binary file PTdecode/CImg-1.3.0/html/reference/open.gif has changed
287.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 287.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImg-members.html Mon Aug 03 14:09:20 2009 +0100 287.3 @@ -0,0 +1,828 @@ 287.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 287.5 +<head> 287.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 287.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 287.8 +<meta content="David Tschumperle" name="author"></meta> 287.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 287.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 287.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 287.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 287.13 +<style type="text/css"> 287.14 +<!-- 287.15 +body {background-color:white; font-family:sans-serif; } 287.16 +a:active{text-decoration:none; color:#303090} 287.17 +a:link{text-decoration:none; color:#303090} 287.18 +a:visited{text-decoration:none; color:#303090} 287.19 +a:hover{text-decoration:underline; color:#4E9F71} 287.20 +--> 287.21 +</style> 287.22 +<script language="JavaScript" type="text/javascript"> 287.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 287.24 + <!-- Web Site: http://redrival.com/eak/ --> 287.25 + <!-- This script and many more are available free online at --> 287.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 287.27 + <!-- Begin 287.28 + function NewWindow(mypage, myname, w, h, scroll) { 287.29 + var winl = (screen.width - w) / 2; 287.30 + var wint = (screen.height - h) / 2; 287.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 287.32 + win = window.open(mypage, myname, winprops) 287.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 287.34 + } 287.35 + // End --> 287.36 +</script> 287.37 +</head> 287.38 +<body> 287.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 287.40 + <tbody><tr><td> 287.41 + <hr noshade="noshade" size="1" width="90%"></hr> 287.42 + <center> 287.43 + <br/> 287.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 287.45 + <br/> 287.46 + </center> 287.47 + <hr noshade="noshade" size="1" width="90%"></hr> 287.48 + <center> 287.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 287.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 287.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 287.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 287.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 287.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 287.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 287.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 287.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 287.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 287.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 287.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 287.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 287.62 + </font> 287.63 + </td></tr></tbody> 287.64 + </table> 287.65 + </center> 287.66 + <hr noshade="noshade" size="1" width="90%"></hr> 287.67 + </td></tr></tbody> 287.68 +</table> 287.69 +<!-- Generated by Doxygen 1.5.7.1 --> 287.70 +<script type="text/javascript"> 287.71 +<!-- 287.72 +function changeDisplayState (e){ 287.73 + var num=this.id.replace(/[^[0-9]/g,''); 287.74 + var button=this.firstChild; 287.75 + var sectionDiv=document.getElementById('dynsection'+num); 287.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 287.77 + sectionDiv.style.display='block'; 287.78 + button.src='open.gif'; 287.79 + }else{ 287.80 + sectionDiv.style.display='none'; 287.81 + button.src='closed.gif'; 287.82 + } 287.83 +} 287.84 +function initDynSections(){ 287.85 + var divs=document.getElementsByTagName('div'); 287.86 + var sectionCounter=1; 287.87 + for(var i=0;i<divs.length-1;i++){ 287.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 287.89 + var header=divs[i]; 287.90 + var section=divs[i+1]; 287.91 + var button=header.firstChild; 287.92 + if (button!='IMG'){ 287.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 287.94 + button=document.createElement('img'); 287.95 + divs[i].insertBefore(button,divs[i].firstChild); 287.96 + } 287.97 + header.style.cursor='pointer'; 287.98 + header.onclick=changeDisplayState; 287.99 + header.id='dynheader'+sectionCounter; 287.100 + button.src='closed.gif'; 287.101 + section.id='dynsection'+sectionCounter; 287.102 + section.style.display='none'; 287.103 + section.style.marginLeft='14px'; 287.104 + sectionCounter++; 287.105 + } 287.106 + } 287.107 +} 287.108 +window.onload = initDynSections; 287.109 +--> 287.110 +</script> 287.111 +<div class="navigation" id="top"> 287.112 + <div class="tabs"> 287.113 + <ul> 287.114 + <li><a href="index.html"><span>Main Page</span></a></li> 287.115 + <li><a href="modules.html"><span>Modules</span></a></li> 287.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 287.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 287.118 + </ul> 287.119 + </div> 287.120 + <div class="tabs"> 287.121 + <ul> 287.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 287.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 287.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 287.125 + </ul> 287.126 + </div> 287.127 +</div> 287.128 +<div class="contents"> 287.129 +<h1>CImg Member List</h1>This is the complete list of members for <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>, including all inherited members.<p><table> 287.130 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9ae2e5f7990e1ec59876b1c1f8484ea0">abs</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.131 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ec748ded5bb19d52f564ef7a6ae2652d">acos</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.132 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#42e2ed19679d15fdd27097ed96501fae">append</a>(const CImg< T > &img, const char axis, const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.133 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#91932674ad04313d7b164d874b95348b">append_object3d</a>(CImgList< tf > &primitives, const CImg< tp > &obj_points, const CImgList< tff > &obj_primitives)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.134 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ecd1394048b7fef2eb30ea3985600614">apply</a>(t &func)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.135 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c23ecd49999eedf62c9142fe1559bdd6">asin</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.136 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#65018fb0cbdbd9e8d1404321cd69bfe5">assign</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.137 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#55e2f2335ea8060148c59ec4f57846e2">assign</a>(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.138 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#14047abcb2a67ba0dadc92e34b456111">assign</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.139 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8a8cf42230f48cfaf80c96fe040926c9">assign</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.140 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#18e8003d8101d51963e0eea3a86b8f47">assign</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.141 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6afdd52b55027273b836655fcf64d74d">assign</a>(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.142 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f8906ce66ef0cdb44c37c7c26b1208ab">assign</a>(const t *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.143 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4">assign</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.144 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#934bab7595fd98de5131d5d2394e4a81">assign</a>(const CImg< t > &img, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.145 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a5a08c14d01a530e5bc9549db77144f7">assign</a>(const CImg< t > &img, const char *const dimensions)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.146 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#42e17fa9823170992210022cc0646684">assign</a>(const CImg< t > &img, const char *const dimensions, const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.147 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#78c78d152f5012d2e8fdcc35235c62a4">assign</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.148 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#48123f96bfb3eff6ba15dc4b40a8f81a">assign</a>(const CImgDisplay &disp)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.149 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0e62c450ce69d12159278e628ec8b874">at</a>(const int off, const T out_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.150 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d8cbb8d33ec7b0bacfbbade8a07ed556">at</a>(const int off)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.151 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1de850b33bf304ba192bd84b7197426d">atan</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.152 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f91627d8f0ebe52d83d5cc087ead017d">atX</a>(const int x, const int y, const int z, const int v, const T out_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.153 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6b101e24bec2ee98802ae86055d7ca90">atX</a>(const int x, const int y=0, const int z=0, const int v=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.154 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cf9f44c9b6025bc3ffdcf0ffffa85e01">atXY</a>(const int x, const int y, const int z, const int v, const T out_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.155 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3f153bea6d9f54e83f37334cc4d7bd4b">atXY</a>(const int x, const int y, const int z=0, const int v=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.156 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e932796fa97d382efd30537165b48257">atXYZ</a>(const int x, const int y, const int z, const int v, const T out_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.157 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#341b51537773e271b846aa98bd24284f">atXYZ</a>(const int x, const int y, const int z, const int v=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.158 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4134a3af3c88f595266ad70697678958">atXYZV</a>(const int x, const int y, const int z, const int v, const T out_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.159 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bcfb692a3e43747bc1d9c1da63e13be8">atXYZV</a>(const int x, const int y, const int z, const int v)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.160 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3765c4f7dd09f184b8c26cc7a290ea22">autocrop</a>(const T value, const char *const axes="vzyx")</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.161 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f8acc159cf6c641dc8568d7f4ec6b670">autocrop</a>(const T *const color, const char *const axes="zyx")</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.162 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#97f20499568cffa340ab6efc88980fea">autocrop</a>(const CImg< t > &color, const char *const axes="zyx")</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.163 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ccb9eea9bbff8fbc0b63a8b331a35671">autocrop</a>(const T value, const char axis)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.164 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fdca4cab350c4904bbaa876f96cf2827">autocrop</a>(const T *const color, const char axis)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.165 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2265e8ee231bfd48d780e897c61bb757">autocrop</a>(const CImg< t > &color, const char axis)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.166 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#94c484819f66b605343298653d4b1d07">back</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.167 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4d532472a01bafd5a972391870fbdcab">BayertoRGB</a>(const unsigned int interpolation_type=3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.168 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d69bd11391be1a1dba5c8202259664f8">begin</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.169 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fcc7e2db6bcdb9da96698da4ef546678">blur</a>(const float sigmax, const float sigmay, const float sigmaz, const bool cond=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.170 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0da5be77c4b3829690661df2561b6c12">blur</a>(const float sigma, const bool cond=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.171 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8df01b5bf7b7fee8719ac0b261d3f5d8">blur_anisotropic</a>(const CImg< t > &G, const float amplitude=60, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.172 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2d20cc794442bfdcd9ff8e1a78e76224">blur_anisotropic</a>(const CImg< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.173 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#96d79e2b965b9fa045c40974ba13b894">blur_anisotropic</a>(const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.174 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5171719110ee9897b557b21f773655b7">blur_bilateral</a>(const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation_type=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.175 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#904c1b55b3ee2db5b38c9478f30e8000">blur_bilateral</a>(const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation_type=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.176 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#55c5427152277f80c6cb9a36ae77ddf1">blur_median</a>(const unsigned int n)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.177 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1f2ed9ee1db1a507c21a1863a3a51d11">blur_patch</a>(const unsigned int patch_size, const float sigma_p, const float sigma_s=10, const unsigned int lookup_size=4, const bool fast_approx=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.178 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7c4404d7b68c6e6f1376191748e3e4b0">channel</a>(const unsigned int v0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.179 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8ca7d14971bd5e6f1ff40801e0c520dc">channels</a>(const unsigned int v0, const unsigned int v1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.180 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8a31842596268c9fc95810890607762f">CImg</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.181 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f0cf1b66afb42bbb4750895fe66bcc69">CImg</a>(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, explicit]</code></td></tr> 287.182 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a1909d94c489ed7ba0bbc82ee47855c2">CImg</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.183 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0fb70d9de40880b2f5449a8caa4f4e92">CImg</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.184 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f7a3b720681feaf5a473af0cdd7c65ed">CImg</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.185 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#deb4efd29d413691efc7eb84ac4016f1">CImg</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const char *const values, const bool repeat_pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.186 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6ae6194b89742eb1578795312556bfbd">CImg</a>(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.187 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8479cd0cf615e3131efcabac1e3ff004">CImg</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.188 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8dfaf8ddcc86f17442f8eeb3102d0662">CImg</a>(const CImg< t > &img, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.189 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f31fbb19630af0ddbee182d31e41093c">CImg</a>(const CImg< t > &img, const char *const dimensions)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.190 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#86a2b8265b0feda01e0537b10a70a4b6">CImg</a>(const CImg< t > &img, const char *const dimensions, const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.191 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ade5358c8a81825b86e6c654194b33d2">CImg</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.192 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ceaeb1e13cdb9e681ddc4341807f6fac">CImg</a>(const CImgDisplay &disp)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.193 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b5cdf8f13cc7065fef4da8214ff36d5d">clear</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.194 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e3827dc11a003ee30b1cd74ed7b74e15">CMYKtoCMY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.195 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c59bacaa7b500f54351ebc11a2a4fc1d">CMYKtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.196 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#86448a9b36330cd1cdca41310714c82c">CMYtoCMYK</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.197 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f44e7452ef72387ee411a48e8fd8f2c6">CMYtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.198 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9995a97a1f5bf1de44670dd998f6b19e">column</a>(const unsigned int x0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.199 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a70ff39a9a7bd64954f4f18819f8e596">columns</a>(const unsigned int x0, const unsigned int x1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.200 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4cfdd883704e403728d35979c07a069b">cone3d</a>(CImgList< tf > &primitives, const float radius=50, const float height=100, const unsigned int subdivisions=24, const bool symetrize=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.201 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">const_iterator</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.202 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3b2ecb5de17e820b6f9d67650c53f833">contains</a>(const T &pixel, t &x, t &y, t &z, t &v) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.203 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4e1066d2e2e4be26b8ddb59c4e6ea6a2">contains</a>(const T &pixel, t &x, t &y, t &z) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.204 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a55cfaf7d507c97343d750aa4c951ff3">contains</a>(const T &pixel, t &x, t &y) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.205 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0254f03aac63118f3fbc1ca3d9ede477">contains</a>(const T &pixel, t &x) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.206 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c209cb1eac5d34a620140e1fb221605b">contains</a>(const T &pixel) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.207 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e530958fd7fd7a1e7c5017c3e7c411de">containsXYZV</a>(const int x, const int y=0, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.208 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f26c4f029563bf7ffd47ba51e8e09984">contrast_LUT8</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.209 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6ad1f71fcaf356a1480b81c55109ca86">convolve</a>(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_convol=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.210 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e42e12627e5a8204d328f84df9976fc8">correlate</a>(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_correl=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.211 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fd20e16deff4c21aab145b028de1e2ac">cos</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.212 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#77085bb4dfa1622ac5de64eb5c6ed9d1">crop</a>(const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.213 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0a1400f592a7192b1e6421f5d7045d6a">crop</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.214 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#54ad48809ef0be41797c7703e3b4133d">crop</a>(const int x0, const int y0, const int x1, const int y1, const bool border_condition=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.215 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#93a1ecf2944920d55757323e6de2b7da">crop</a>(const int x0, const int x1, const bool border_condition=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.216 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#49ccd3590b6edcf060b2c8def95d96a7">cross</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.217 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7909d0564ee489806b89a79159a9d91d">cube3d</a>(CImgList< tf > &primitives, const float size=100)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.218 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7a303858f458aad58535cbf2f5ca2326">cubic_atX</a>(const float fx, const int y, const int z, const int v, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.219 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fd446fb86260db4fd990fdab18e61181">cubic_atX</a>(const float fx, const int y=0, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.220 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9178dbccd4a22a5e2a3b41c243244eb8">cubic_atXY</a>(const float fx, const float fy, const int z, const int v, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.221 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8e7a4ccee533d36ad0f156ecd6346c4c">cubic_atXY</a>(const float fx, const float fy, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.222 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e15246012bf5a2672766bda1743417f0">cuboid3d</a>(CImgList< tf > &primitives, const float sizex=200, const float sizey=100, const float sizez=100)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.223 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5f8f08d52f945f28fd33737fabaa6286">cut</a>(const T a, const T b)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.224 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#13077712f8141674ceb3946aafc37a3f">cylinder3d</a>(CImgList< tf > &primitives, const float radius=50, const float height=100, const unsigned int subdivisions=24)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.225 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.226 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b72cb8ca2a5039c60f002f72bbb44cd5">default_LUT8</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.227 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.228 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#be44da28a01b5632c9cb59af2ab6dab6">deriche</a>(const float sigma, const int order=0, const char axis='x', const bool cond=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.229 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2363871a4c66908993cc2e2515eba612">det</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.230 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#faba9e417e4dc79a30ca192e17e1f4d8">diagonal</a>(const T &a0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.231 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#583389fd7581839ef6c9eda2c2e75720">diagonal</a>(const T &a0, const T &a1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.232 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f89435259d190fe6b390cde30664ea0c">diagonal</a>(const T &a0, const T &a1, const T &a2)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.233 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f6ad181903a88ac52f15222dd28bba42">diagonal</a>(const T &a0, const T &a1, const T &a2, const T &a3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.234 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8e8f3b19a8f866cb9b06c4667412abfd">diagonal</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.235 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9b38ad4f425b6b4768d5ee82cb562119">diagonal</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.236 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f2b4fdd725a79235943e5cc5704a32d5">dijkstra</a>(const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.237 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dad65a3bfabe64171d5fd68dc2c7f16e">dijkstra</a>(const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.238 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#255acd18f793e0faacd5180f0d10713b">dijkstra</a>(const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.239 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aaf059b97f37c83ff892a761db3333b2">dijkstra</a>(const unsigned int starting_node, const unsigned int ending_node=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.240 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d5da308710b26218600b8254d9e43204">dilate</a>(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.241 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#25bb84697a1482acd85000e6c41dc881">dilate</a>(const unsigned int n, const unsigned int cond=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.242 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.243 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f">dimv</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.244 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a">dimx</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.245 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d">dimy</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.246 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215">dimz</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.247 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4c5e31ec2d05a869a67705be11ad31c2">displacement_field</a>(const CImg< T > &target, const float smooth=0.1f, const float precision=0.1f, const unsigned int nb_scales=0, const unsigned int itermax=10000)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.248 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ea0592215c6068e617a975a1fe5b7b7b">display</a>(CImgDisplay &disp) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.249 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7875588dbc9fb83602611b6ae03c73fa">display</a>(CImgDisplay &disp, const bool display_info) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.250 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#32ca7381aa7cc3e3b8620024767e8525">display</a>(const char *const title=0, const bool display_info=true) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.251 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cacf5a4ef4f35c7a396dc7759928c30b">display_graph</a>(CImgDisplay &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.252 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#97baf05869f5a0cc24b3f7c2375570bb">display_graph</a>(const char *const title=0, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.253 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f3911af4a4d37ca22b6d4c4a91cdced4">display_object3d</a>(CImgDisplay &disp, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.254 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#efa6a74da889dbd49d102d0c6bf44763">display_object3d</a>(const char *const title, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.255 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#691a674d72768e09816066a1e38702a2">display_object3d</a>(CImgDisplay &disp, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.256 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6e61e9200f57599bf0824c094eb5a354">display_object3d</a>(const char *const title, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.257 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#35cd00c0ec9c854ce5e39f87088b1db9">display_object3d</a>(CImgDisplay &disp, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.258 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e49fbebeb4f8c14e0cd9665c3b028f75">display_object3d</a>(const char *const title, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.259 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#663dbef9833a84680a1e968b2c73898e">display_object3d</a>(CImgDisplay &disp, const tp &points, const CImgList< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.260 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f171ffa62145cddc5d1d8759e32edf06">display_object3d</a>(const char *const title, const tp &points, const CImgList< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.261 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f5fba60de29f4cb2dec393205cdc0389">display_object3d</a>(CImgDisplay &disp, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.262 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7930edce3dc8213a9f45162165f1ce47">display_object3d</a>(const char *const title, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.263 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#896675c24b7a4aad089a31c98cd39318">distance</a>(const T isovalue, const float sizex=1, const float sizey=1, const float sizez=1, const bool compute_sqrt=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.264 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2ac17a49491c76e73310270931e88d46">distance_hamilton</a>(const unsigned int nb_iter, const float band_size=0, const float precision=0.5f)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.265 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#df1a8f5e809741e70edd3b6a454c8689">div</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.266 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#99a8995311ea26eb1956c8a01a7e034f">dot</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.267 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4955c7a5a132072f634ed9832b783f83">draw_arrow</a>(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.268 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#398a8fa3580f9e572b3f6f0b7e0bd41c">draw_arrow</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.269 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#08296af30d35f7d21b5609a674b9b49c">draw_axis</a>(const CImg< t > &xvalues, const int y, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.270 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cdc3d2e7c9f2e2a697f5dc386eb9d81e">draw_axis</a>(const CImg< t > &xvalues, const int y, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.271 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8bfff0993bc0ed0aa6a20cb9f8c63c28">draw_axis</a>(const int x, const CImg< t > &yvalues, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.272 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f5ea60a7b91f2132156d619ae063b77f">draw_axis</a>(const int x, const CImg< t > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.273 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f75a727d2d5a31326c5013565080c2c0">draw_axis</a>(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.274 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f05e0299a5b9116f03d9909f06b41971">draw_axis</a>(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.275 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cdf77ec979a3457e73707aebcb355232">draw_axis</a>(const float x0, const float x1, const float y0, const float y1, const tc *const color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.276 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#046d5076a8722a542ea3f74ee1628ce6">draw_axis</a>(const float x0, const float x1, const float y0, const float y1, const CImg< tc > &color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.277 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0fcdceae39ad1bfa32dabc70ab503455">draw_circle</a>(const int x0, const int y0, int radius, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.278 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5e9d5d9c2375549424cc4db6c015c5b0">draw_circle</a>(const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.279 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bc6077a1255326a211f32716fcc416fc">draw_circle</a>(const int x0, const int y0, int radius, const tc *const color, const float opacity, const unsigned int)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.280 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#345546ed0a8f17554833d2896dd19c4b">draw_circle</a>(const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.281 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e0c072c592797cc4d7a3e2918963f65d">draw_ellipse</a>(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.282 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fef212ef9007ba87665799b002455600">draw_ellipse</a>(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.283 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aee5c65bcb8d1aa53500dd93b70dc206">draw_ellipse</a>(const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.284 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bb8f86c28fe3a89cbd3b8234ebf396db">draw_ellipse</a>(const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.285 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d54df0e591142a589847a348fdbfc653">draw_ellipse</a>(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.286 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e3c36e212188fbdfcca6d70de59dc1bd">draw_ellipse</a>(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.287 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#eae8fb88a9ad0af8f0d8090e7c55ff2e">draw_ellipse</a>(const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.288 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dec0a3bd415b0a843b7f6365a7bf2477">draw_ellipse</a>(const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.289 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#02af5e263936e2fc27aeaa3771cb31d4">draw_fill</a>(const int x, const int y, const int z, const tc *const color, const float opacity, CImg< t > &region, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.290 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aa61d0211b294c1d89faabd2ad1c0a95">draw_fill</a>(const int x, const int y, const int z, const CImg< tc > &color, const float opacity, CImg< t > &region, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.291 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f162693c97503ffb9789fcb2f8e16104">draw_fill</a>(const int x, const int y, const int z, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.292 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e508814fce1811fefa639d257332973d">draw_fill</a>(const int x, const int y, const int z, const CImg< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.293 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5c78c87e946126179b3fd659fd15a90f">draw_fill</a>(const int x, const int y, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.294 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#af944facf0ccd44f78f3649e18ad1b5b">draw_fill</a>(const int x, const int y, const CImg< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.295 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c27a8c4da38899f60456ea7d3535915b">draw_gaussian</a>(const float xc, const float sigma, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.296 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4c4ad376ea82a0011dfffe348cb2df22">draw_gaussian</a>(const float xc, const float sigma, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.297 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a56c60d556b1a888a4e3c6caee5a7f84">draw_gaussian</a>(const float xc, const float yc, const CImg< t > &tensor, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.298 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b1a88da86ed23cf357116c179ef151db">draw_gaussian</a>(const float xc, const float yc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.299 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9e7bd32ea10f9743f841668161162cfd">draw_gaussian</a>(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.300 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#da2517688892529a14e90bccf3134653">draw_gaussian</a>(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.301 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5176ca43ce93eeaa158f8e3456606752">draw_gaussian</a>(const float xc, const float yc, const float sigma, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.302 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7ae227c9b85d8ede2974161072453165">draw_gaussian</a>(const float xc, const float yc, const float sigma, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.303 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1433a5536718d44e9b42462bdca5fc06">draw_gaussian</a>(const float xc, const float yc, const float zc, const CImg< t > &tensor, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.304 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0f65bfb77647741ba879af6ca4abf64a">draw_gaussian</a>(const float xc, const float yc, const float zc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.305 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7a9367d3e05ac8cda34fae2d639c42a6">draw_gaussian</a>(const float xc, const float yc, const float zc, const float sigma, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.306 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aae6a29e3158b86212e3e0022fd24a29">draw_gaussian</a>(const float xc, const float yc, const float zc, const float sigma, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.307 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#67e7caaf13995641acfcd5749c39bbc7">draw_graph</a>(const CImg< t > &data, const tc *const color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.308 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3162e7c504181aa99413fc8e3e39b720">draw_graph</a>(const CImg< t > &data, const CImg< tc > &color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.309 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6877e63794ccd3e9f8c27cd297ce7521">draw_grid</a>(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.310 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4f1fe7a9d343d53a390d3f794d7e3b8a">draw_grid</a>(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.311 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#606cde6d7312d1cc49e6b15524e44c6c">draw_grid</a>(const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.312 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f797b2633a89b277544fe1508bd72bfc">draw_grid</a>(const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.313 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2262bc9cfece26084c7223bf74ad63d5">draw_image</a>(const int x0, const int y0, const int z0, const int v0, const CImg< t > &sprite, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.314 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b612f62cc2081eb707585af01a041db1">draw_image</a>(const int x0, const int y0, const int z0, const CImg< t > &sprite, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.315 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4968cf39a15c8e55a089a1c136e331aa">draw_image</a>(const int x0, const int y0, const CImg< t > &sprite, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.316 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e6fa4bcf0793823ae70d4e67be2d26a3">draw_image</a>(const int x0, const CImg< t > &sprite, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.317 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d847e4b64a114e26dd34cea062b8c6a7">draw_image</a>(const CImg< t > &sprite, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.318 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#140588221208998117e0681720183517">draw_image</a>(const int x0, const int y0, const int z0, const int v0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.319 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6bc3dd141f888d66aafbacbd6c2b57cb">draw_image</a>(const int x0, const int y0, const int z0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.320 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#77017d588585db4fb4149a0ddd09538b">draw_image</a>(const int x0, const int y0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.321 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8e324ba8d4367bdcacebc33817fd8e22">draw_image</a>(const int x0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.322 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bb5c6c380e17aa9fc0628c70eb42908a">draw_image</a>(const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.323 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#88ccbeac12af8b83cd17f9b72bbfe73b">draw_line</a>(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.324 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3dfef1459d307d841e1924af205d25fe">draw_line</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.325 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2674d799e0d1c36b3b39c5d20a128987">draw_line</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.326 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e344fb5fa8ae5589f48bf7eb189a2686">draw_line</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.327 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#676f12df45eea349a5423abd587d2698">draw_line</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.328 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0b7d2f14ccea6db91516a7f890f7ab8e">draw_line</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.329 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b98fc42096d2a5a075be384b1f37094c">draw_line</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.330 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5d92088c6338270d5c9e4aadf02c0228">draw_line</a>(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.331 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#75103a31192d751b311a6aa69e4a5fb9">draw_line</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.332 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#91e810ebf4b600b461bbfe42708f3cd6">draw_line</a>(const CImgList< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.333 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#94d3acfe105994944faf1b8e7e7b34fa">draw_line</a>(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.334 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f42f741d0f579a78f9f58d0d6499bc53">draw_line</a>(const CImg< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.335 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f1a1144e6b4553d410b1e61e6c746641">draw_line</a>(const CImg< t > &points, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.336 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#692c2ecbd8cbe445b30129ebcc0d6d1c">draw_mandelbrot</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.337 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#62813c326316d1c26e66300ed8e2abd6">draw_mandelbrot</a>(const CImg< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.338 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#be9e9614682023f314b77913230c373a">draw_object3d</a>(const float x0, const float y0, const float z0, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.339 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#15bc5f4b0023f184bca2313574cf5a9b">draw_object3d</a>(const float x0, const float y0, const float z0, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.340 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#361269687e070fbc2ad563100d8e2b14">draw_object3d</a>(const float x0, const float y0, const float z0, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.341 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6d15e65031e820846b78928aa454baae">draw_object3d</a>(const float x0, const float y0, const float z0, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.342 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1db83a74b0de1e81bfd71eaa1bb6ac4f">draw_object3d</a>(const float x0, const float y0, const float z0, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.343 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aaf8df45b2e20d132a28cbdffef77c18">draw_plasma</a>(const int x0, const int y0, const int x1, const int y1, const float alpha=1, const float beta=1, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.344 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d8b2f5c685dbc7389dfb94217f4db8d2">draw_plasma</a>(const float alpha=1, const float beta=1, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.345 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#07751cdf418fc2120b971bc0f7e0da8c">draw_point</a>(const int x0, const int y0, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.346 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bdc5b08ed8a3bec659e84d54fb041c78">draw_point</a>(const int x0, const int y0, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.347 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a852838a5f54966b700093f45d60330f">draw_point</a>(const int x0, const int y0, const int z0, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.348 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f2aa779e22226993667e065c53783e97">draw_point</a>(const int x0, const int y0, const int z0, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.349 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d2f49716a6d07d5521f3c81bd411284c">draw_point</a>(const CImgList< t > &points, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.350 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a4ed5eb040a7dec8932cef5e9d90579e">draw_point</a>(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.351 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#52c224fa79b1d5ab1c1e8d619c8944b3">draw_point</a>(const CImg< t > &points, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.352 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2c9edd992d1019c23cd9580040bf8a75">draw_point</a>(const CImg< t > &points, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.353 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#50811d8b24d4065b088a2629d535b44d">draw_polygon</a>(const CImgList< t > &points, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.354 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#923b11ba707a754f07c5f12d41d24f31">draw_polygon</a>(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.355 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6e7c38c9a71a887da0bc3e4f0c4fdd40">draw_polygon</a>(const CImg< t > &points, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.356 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8353827651e7356f9ed0bbd4f182573d">draw_polygon</a>(const CImg< t > &points, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.357 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c2d302275fb03846256a2fbcd162c9be">draw_polygon</a>(const CImgList< t > &points, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.358 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0256c61a5637568f562e2eb92bff420a">draw_polygon</a>(const CImgList< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.359 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4800e4fe339084fe88380a0aa86e3339">draw_polygon</a>(const CImg< t > &points, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.360 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2f854f8ac771ed738b3211f169b71a52">draw_polygon</a>(const CImg< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.361 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fa63fe980a96a02650684e9a21a4075b">draw_quiver</a>(const CImg< t1 > &flow, const t2 *const color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.362 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cf68676d4536ff46ed896648ff08c904">draw_quiver</a>(const CImg< t1 > &flow, const CImg< t2 > &color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.363 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3a0aacdf713ed19c5efc4a929f73d597">draw_rectangle</a>(const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const T val, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.364 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#99614589c3d114e81db5eb6efc322e0c">draw_rectangle</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.365 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bf37867db8052ced5731873badb3ccc2">draw_rectangle</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.366 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1bf777ba2034fce1fe6a77fef5c236df">draw_rectangle</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.367 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1b9ce64ba72d43495206d3e16b1f82f8">draw_rectangle</a>(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.368 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#08ff5543ae717bdbc4ccda3ca9d463ee">draw_rectangle</a>(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.369 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d864a53158dc062ac6ab53524a0f9737">draw_rectangle</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.370 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#88b4db9fc3ebcc8bd5134042424f3b8b">draw_rectangle</a>(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.371 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c832c78b8c8df3af06008ab4193effd7">draw_rectangle</a>(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.372 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1633f28b9b0646cff390b0e060cce47b">draw_spline</a>(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.373 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#902e2ced32ddbe6918ec94962419dbe2">draw_spline</a>(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.374 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#111ec303273ffc87a1be739275957c92">draw_spline</a>(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.375 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6dca7e2c634a87f9abe89b354ed1dc0c">draw_spline</a>(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const CImg< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.376 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9a80dade828f83f301f1470a6d0d474d">draw_spline</a>(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.377 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9b4650fc045f7640b023dfc7d8012bb8">draw_spline</a>(const CImgList< tp > &points, const CImgList< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.378 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6e2dfc74104f3fd669d898c88264edd2">draw_spline</a>(const CImgList< tp > &points, const CImgList< tt > &tangents, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.379 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b6580bbd06443cd05ad8ff63c157a8e9">draw_spline</a>(const CImg< tp > &points, const CImg< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.380 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5dd5581868a21e8c1283d93e8b5c9e11">draw_spline</a>(const CImg< tp > &points, const CImg< tt > &tangents, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.381 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b3e8fbcaff7bb939a201c913b1ab7b29">draw_spline</a>(const CImgList< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.382 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ebc37255f4345bd45f99ced17afbea1b">draw_spline</a>(const CImgList< t > &points, CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.383 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4958f637ae985f9c2be3b010a909be74">draw_spline</a>(const CImg< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.384 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ef31953ecc727eaa99d0d1b11c6d14a0">draw_spline</a>(const CImg< t > &points, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.385 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#10f19686ec4d22cf112d7d60a00849eb">draw_text</a>(const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity, const CImgList< t > &font,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.386 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bbc1a17884b7c049aa543d665a02addc">draw_text</a>(const int x0, const int y0, const char *const text, const CImg< tc1 > &foreground_color, const CImg< tc2 > &background_color, const float opacity, const CImgList< t > &font,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.387 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ecfa50533fb364efab0c49d21885a032">draw_text</a>(const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color, const float opacity, const CImgList< t > &font,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.388 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#65bc41a87d8e70a6e4e3e7c1e3f3b84d">draw_text</a>(const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity, const CImgList< t > &font,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.389 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8a08ffc222f02da3bae41a9cae11133c">draw_text</a>(const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity=1, const unsigned int font_size=11,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.390 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3391a4bb472d056e8741fb11d2f849b5">draw_text</a>(const int x0, const int y0, const char *const text, const CImg< tc1 > &foreground_color, const CImg< tc2 > &background_color, const float opacity=1, const unsigned int font_size=11,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.391 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#18663a5f20b11d8599a628d02eb7f01e">draw_text</a>(const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color=0, const float opacity=1, const unsigned int font_size=11,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.392 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fadf8a78a779782d878025d73ff0a310">draw_text</a>(const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity=1, const unsigned int font_size=11,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.393 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#405d83987b7969b9942e4446b5924ec9">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.394 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#910e2dd4476bc5e5279d1143195f03c6">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.395 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7c3262c3f6bb593b3ae8ae1751f005b9">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.396 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#42dcf4158f345564b6909f68df93c223">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity, const unsigned int pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.397 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a33a56303f49e8f0015f58ccc5b862ad">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float opacity=1, const float brightness=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.398 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#43adff9f66e4023ff902ce2ce51a6c1b">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const float opacity=1, const float brightness=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.399 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6fedec577cb8971fed8d1f3a039d3aac">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.400 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e6e48075b5ddd90019c889e97cfb48f5">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.401 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e8bdb51ba8a62f3f2b7d1f3bf888b5d6">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.402 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f2d41fad4a3cff1e52ce92a09a0849fb">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.403 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ed9f231a2586832f9e3edbab43dba19f">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.404 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cbc11ace0f311f4424ab3f9e87b46d49">draw_triangle</a>(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.405 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#557d6fe66644b08fc216b66f41dc888c">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.406 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cdcbe236d763eb011eebb30b50c1aef7">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.407 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f8e9aafc4e909a0c974f322b5dac8297">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.408 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9d697aed59a348fe49e0d5f24d462261">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.409 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f62798d8662be7caed865ea2cc9b86af">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.410 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#961363e2672c2ae77788dbe27f1eeb96">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.411 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b8a009041dd95645d02ecc3561d5553f">draw_triangle</a>(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.412 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7f1e1abea764819de6130650cafa47fe">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.413 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#261696a882cafea6ec41e43f90ad7d26">draw_triangle</a>(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.414 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#feb86cbec72b30c58246379a6a94c295">draw_triangle</a>(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.415 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d1caaaa197d77925f7d1f5c44f82ec7c">draw_triangle</a>(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.416 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a956e08285c0d87805d3c3c2c4450301">eigen</a>(CImg< t > &val, CImg< t > &vec) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.417 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e24de98deb46f84769fd72c504ceedc2">ellipsoid3d</a>(CImgList< tf > &primitives, const CImg< t > &tensor, const unsigned int subdivisions=3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.418 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cad38d52497a975bfb6f2f6acd76631f">end</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.419 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a2227f917f7c4424123b5a2806d7f5b8">equalize</a>(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.420 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e82e75b5321e8702edcab8d0b8fdcd09">erode</a>(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.421 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fd7026f4a4063806639cb4cccf8019a7">erode</a>(const unsigned int n, const unsigned int cond=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.422 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#63fc5244a596810f4bba36a46787c6f2">exp</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.423 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#494a1e1424510af07e705dfe9b5f78bd">fill</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.424 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1017563288be5d5ff23f70a91ef519df">fill</a>(const T val0, const T val1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.425 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#851853ede03c4fbd99347777a0250b5a">fill</a>(const T val0, const T val1, const T val2)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.426 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9bd6346aafacc83a623bbee841b2f590">fill</a>(const T val0, const T val1, const T val2, const T val3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.427 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7cb799be5da87f703ac3c949701c98de">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.428 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1aa659d7e3dbb1863a32b4e326c3b752">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.429 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a9391155ce2b2933a5d65ffbdd2212cb">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.430 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#991cc09680972324915fac9540f9a75d">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.431 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4ebdf4aa9f4ba2901da7ceb8f167ab7e">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.432 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ef066fce13f0bb426791b7a507589c3b">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.433 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#24eb4c4e80f15a98b956c057cbf5080f">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.434 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#922d157e090636af9bce74d4485df06f">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.435 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#72227edc72ffbf6cf87298e27b59d9f9">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.436 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3b38822d098614f5460f4b596ac18c2c">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.437 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#78ebfb8dfadd456f3a03e3c6233a0d35">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.438 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#29b6f70a91ef14cae3f62fbf1c5a1df2">fill</a>(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.439 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5c1882e211a6b886b891fa402e67042e">fill</a>(const char *const values, const bool repeat_pattern)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.440 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9c032711a98576285c8091beebb447b9">fill</a>(const CImg< t > &values, const bool repeat_pattern=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.441 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bed160399c0c74349a025a823d1c4e3b">fillV</a>(const unsigned int x, const unsigned int y, const unsigned int z, const int a0,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.442 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aef4c6886178c6a99c22693f0a2ecd4b">fillX</a>(const unsigned int y, const unsigned int z, const unsigned int v, const int a0,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.443 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9a220154365b5e2c636d6abeef404fb8">fillY</a>(const unsigned int x, const unsigned int z, const unsigned int v, const int a0,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.444 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b7a4a4ad0f756d4b42059ab7579288ad">fillZ</a>(const unsigned int x, const unsigned int y, const unsigned int v, const int a0,...)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.445 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2d8f0a8dd427c22a66a7e798183f2b72">first</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.446 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#55d9a449187445866021859f0cf708d0">front</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.447 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4594e576d73d47bd3557c2db395c44df">get_eigen</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.448 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f8a421b285e0b85ea6ab2fd4a2e6736e">get_elevation3d</a>(CImgList< tf > &primitives, CImgList< tc > &colors, const CImg< te > &elevation) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.449 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e9e7074da9c9955e37e9eebbd5bd9c22">get_FFT</a>(const char axis, const bool invert=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.450 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#344967c8b6e7bf0aa40039d1ab29efe2">get_FFT</a>(const bool invert=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.451 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3e5b54c0b862cbf6e9f14e832984c4d7">get_gradient</a>(const char *const axes=0, const int scheme=3) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.452 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#96e3e0c617e70a833492043d08a7905a">get_hessian</a>(const char *const axes=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.453 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dfcfeb419514a0e79c6bcb17fc71a53f">get_isovalue3d</a>(CImgList< tf > &primitives, const float isovalue, const float resx=1, const float resy=1, const float resz=1, const bool invert_faces=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.454 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0df72293d6377a36cce47d73a4b6bbfc">get_matrix_at</a>(const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.455 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#58b982e2bd8adf8792df5caff7549aa6">get_select</a>(CImgDisplay &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.456 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e64832c20063e4c9bd1dbc6a3ffe3173">get_select</a>(const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.457 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2b77e436a48fd24c423e924c2dae4072">get_select_graph</a>(CImgDisplay &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.458 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c9676ed1fd154d30c8a2f6f6ee17499c">get_shared</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.459 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#da9415c850e4a0779e5607b26782de9d">get_shared_channel</a>(const unsigned int v0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.460 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#770b28a6ddc3c11af056d27f8dede3d7">get_shared_channels</a>(const unsigned int v0, const unsigned int v1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.461 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f6a6dc59e00dd28f9a1cd887569a21cc">get_shared_line</a>(const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.462 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cb22178b8e77a784d443fd7a6fad7836">get_shared_lines</a>(const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.463 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#eec1741a119c7ba27c2c3c2c20097df9">get_shared_plane</a>(const unsigned int z0, const unsigned int v0=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.464 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#321bd9cc21a2f658df1dcc5b95eb6fd6">get_shared_planes</a>(const unsigned int z0, const unsigned int z1, const unsigned int v0=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.465 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2bec31726ee3647345577b893c102dea">get_shared_points</a>(const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.466 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ccd769bc160bb4bd933d01ec3b22c1d7">get_split</a>(const char axis, const unsigned int nb=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.467 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e0595a4603944cb0affe5b4ac29bdd6b">get_SVD</a>(const bool sorting=true) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.468 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f970d1443e880c4d5668e2b752c5fbae">get_symmetric_eigen</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.469 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#82cfb268b952aeeb1b55e6072a83d093">get_tensor_at</a>(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.470 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ac10e7f03cdf50782511200bbcaeaa70">get_vector_at</a>(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.471 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#09afff280828c5a8d5a7bef22993dacc">haar</a>(const char axis, const bool invert=false, const unsigned int nb_scales=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.472 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dbb11ae1fffb253f45f3d0ff85a6857b">haar</a>(const bool invert=false, const unsigned int nb_scales=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.473 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.474 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#edc5d10d1516480dbfe20a576c152770">histogram</a>(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.475 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#342709e04c2efd6b07982b1e9b5b5671">HSItoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.476 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0e2080f7ef8f8c87587800de0c5d9f31">HSLtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.477 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#87cc3767b5078c5f63e09ba0109cf0d4">HSVtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.478 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#14131b116119f392019c431f6eac5c6f">identity_matrix</a>(const unsigned int N)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.479 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#187aa670727bb4d1a9160702fcf9a418">identity_matrix</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.480 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#930302996a00b75e7e4ea7b4d6dea821">invert</a>(const bool use_LU=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.481 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d1bdd0c686ccaa6a12ff4b69efa5a567">invert_endianness</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.482 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.483 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b37041213cf48faf44debd569ae93127">is_overlapped</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.484 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cd8ae750af0f68148227285c97036321">is_sameV</a>(const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.485 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a058d458f04a36267c48f0684e44ebf7">is_sameV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.486 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3b72aa78538551f0df216de7f6ea2e95">is_sameX</a>(const unsigned int dx) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.487 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#420cd1cddf318f832126b10403aef4fd">is_sameX</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.488 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6f2389ea0ff1313b23523d557980a8a6">is_sameX</a>(const CImgDisplay &disp) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.489 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1196976be93ae9d179bd9de3a5d997fe">is_sameXV</a>(const unsigned int dx, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.490 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#347940f1389ae54b86f2d899b8690c8a">is_sameXV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.491 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f202a5fce446abc81966aa0df075075c">is_sameXY</a>(const unsigned int dx, const unsigned int dy) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.492 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#36f980621a1b6cfac495bc3664459728">is_sameXY</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.493 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#75f62ffd782356fa2db23289bf97bed3">is_sameXY</a>(const CImgDisplay &disp) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.494 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f79477b4ed4ba3e40f96363eeb735049">is_sameXYV</a>(const unsigned int dx, const unsigned int dy, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.495 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7ed2c655d9f41a24c98e98bac5efba20">is_sameXYV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.496 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#36a12bf20a1d6cf863f505877e30bdce">is_sameXYZ</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.497 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0fbd732196771e98d2d3418eb03f1d77">is_sameXYZ</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.498 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5ae8cb401527d16ee8d3b42deb6950f4">is_sameXYZV</a>(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.499 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8d5a5b714082a0cd2315b19984e69163">is_sameXYZV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.500 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3d19709f9f46ca0ab06a5942f91b8ee4">is_sameXZ</a>(const unsigned int dx, const unsigned int dz) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.501 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b1c89e89bd61546d5b0a98040c37356e">is_sameXZ</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.502 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5f1f9f15a7ca3dff58e5ee2d0e90b3e2">is_sameXZV</a>(const unsigned int dx, const unsigned int dz, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.503 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#258e2b87c574f0d48376d68f650d161d">is_sameXZV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.504 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cb6a0d74efed60628344ce37e44aca31">is_sameY</a>(const unsigned int dy) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.505 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8cade7d256506acc4797ac9b3d62f8d7">is_sameY</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.506 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a09668cd5a201595cccd19c4843066e7">is_sameY</a>(const CImgDisplay &disp) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.507 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#64684b41dcd2a660962be8df5d30d2cf">is_sameYV</a>(const unsigned int dy, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.508 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dbaf8d3f0429c8bf720419cdfffee029">is_sameYV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.509 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#229ee758d966e13dc65cc853b5bc2566">is_sameYZ</a>(const unsigned int dy, const unsigned int dz) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.510 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5d863be6ae8d5d8ab0af39aa78174b2f">is_sameYZ</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.511 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#89c7b83529cf137f8fe3b946b7a859dd">is_sameYZV</a>(const unsigned int dy, const unsigned int dz, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.512 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#10f8cee08e95111cc9bb227ca11b079f">is_sameYZV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.513 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ae8da1879332cbb3807133b552d1cafe">is_sameZ</a>(const unsigned int dz) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.514 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#56f92c4b59cbe1b73cf628e43203f516">is_sameZ</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.515 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#45b15ba0da79440024af5428443c8a35">is_sameZV</a>(const unsigned int dz, const unsigned int dv) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.516 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fcd67d621531a0cfe2d9c004442b3575">is_sameZV</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.517 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#64fc9b1179593151684cfdc86dac7e65">is_shared</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.518 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">iterator</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.519 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#93d6b348517590d019471ddeeb3e938b">kth_smallest</a>(const unsigned int k) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.520 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cd78906a1eb7d7c0e1aa4c220e474540">label_regions</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.521 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a710f60075b3bc24790f17a7dc30e425">LabtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.522 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#875c1681e84375ceb5d828e20de61704">LabtoXYZ</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.523 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4fc1d283512c7d8834f1692a1dd6cef5">last</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.524 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d701e07806866145060dd2cc2805443e">line</a>(const unsigned int y0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.525 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f152ffcc0cc8f55cda0d3199b97c0032">linear_atX</a>(const float fx, const int y, const int z, const int v, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.526 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2a257b407961f2e475980136b95e2c7d">linear_atX</a>(const float fx, const int y=0, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.527 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5b57f219b9ab6a0c7fe76f10c9ced45c">linear_atXY</a>(const float fx, const float fy, const int z, const int v, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.528 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d92b4d96f12418e018fb95a5f3f2bc34">linear_atXY</a>(const float fx, const float fy, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.529 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a070b89df5e2ff8b70e2d74cc498d622">linear_atXYZ</a>(const float fx, const float fy, const float fz, const int v, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.530 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2d78999f0afa9e61068fb7ab0a4dc490">linear_atXYZ</a>(const float fx, const float fy=0, const float fz=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.531 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2ad85b5a6a622470a8c36d31e5e46915">linear_atXYZV</a>(const float fx, const float fy, const float fz, const float fv, const T out_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.532 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#789464cda2b6dc5f792e790d1398e353">linear_atXYZV</a>(const float fx, const float fy=0, const float fz=0, const float fv=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.533 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#583e6f289691013d6d863d98ec20631e">lines</a>(const unsigned int y0, const unsigned int y1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.534 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#138dcc5db93d511d224d88405a0041ce">load</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.535 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b56eb4920a37739b113bd90ed65b4506">load_analyze</a>(const char *const filename, float *const voxsize=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.536 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#eb4d772ee50835acac8e68f014634855">load_analyze</a>(cimg_std::FILE *const file, float *const voxsize=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.537 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8483309e9e347b1f8b35337c543d7aed">load_ascii</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.538 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#94a4329d5cb0441e3ed2082a7069a7d3">load_ascii</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.539 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bd7e94f200f3d4bd249c32d0d9c511bc">load_bmp</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.540 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#df86b13be82c7f4caf223c5fd33dc564">load_bmp</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.541 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cdae64c0c93793df8b0a0b28a34d9694">load_cimg</a>(const char *const filename, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.542 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#48f467cc58ef95502cf50d821dff024b">load_cimg</a>(cimg_std::FILE *const file, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.543 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d76cb097a2968aa1c934233a1b32819f">load_cimg</a>(const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.544 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#df49fa1807054741ee989497a69ba15e">load_cimg</a>(cimg_std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.545 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#67cf88da9c1122b55ebcef3d223bccbe">load_dcraw_external</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.546 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#15505951824c019f6fdea4f0eaab8cac">load_dlm</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.547 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c703d2dfe1bd66d26370decedd3da061">load_dlm</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.548 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0ea50f5bd07d9d8ae9ab11aaf6a87a31">load_ffmpeg</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.549 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a2bb0602f254824530b888266d4d503a">load_ffmpeg_external</a>(const char *const filename, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.550 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ad5a1ff332f904a39b3ea2035d3a94dc">load_graphicsmagick_external</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.551 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1b8bf7e0b1371dbdc0d845a39f6451a8">load_gzip_external</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.552 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#841db22435a4f77bf3e4c9fc65ecbb6e">load_imagemagick_external</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.553 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4a1bebfe52d369d35ad6f9d63b46fc64">load_inr</a>(const char *const filename, float *const voxsize=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.554 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#318617a64e6116aef7dc8efd75b8623e">load_inr</a>(cimg_std::FILE *const file, float *const voxsize=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.555 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e4e17798245c1eac132b4b286c8e4419">load_jpeg</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.556 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#05e6e25d683134d2c99014fd03f5b860">load_jpeg</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.557 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1b58020c04f6ddaa44007e9edbcba0a6">load_magick</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.558 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#38df90ee1c431b684fcb5ed8248464b1">load_medcon_external</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.559 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#78e7945139c2e91df6bfecb1b388c7cc">load_off</a>(const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.560 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bd26b3a32bb50b7741a51c33d4077668">load_off</a>(cimg_std::FILE *const file, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.561 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#35a909fb3df4bd76be2facc8366861af">load_other</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.562 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1c52c863e6b22a98b8049b46bfc16102">load_pandore</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.563 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#75a4bb6d89a31860755c119e40fb0abe">load_pandore</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.564 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9e3446fd647fcb9fc95a462435f42784">load_parrec</a>(const char *const filename, const char axis='v', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.565 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8d3058370782eb3e0ebc5c5213d86a27">load_png</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.566 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2f6f002e4cc449887b258d7a5b30afd8">load_png</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.567 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a104737d62b54c15489b481a199fb72a">load_pnm</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.568 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#23661b1b6fb640fb35759595f5154f50">load_pnm</a>(cimg_std::FILE *const file)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.569 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ff2e5fd6242828f8c83e652daea0861e">load_raw</a>(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.570 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ee7efb0aa685252eb16ba438f3fc0e91">load_raw</a>(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.571 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c3cd73613729b55992811acee5015eab">load_rgb</a>(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.572 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c14b4f576b1743ee367a667f9b449318">load_rgb</a>(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.573 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#27807907b967601fa7d51a024dd64e51">load_rgba</a>(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.574 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3719cce68f4fa8594a34ee84fe61b235">load_rgba</a>(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.575 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b943c007a92b463ec458b4be80e80460">load_tiff</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.576 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#64327752de9e98850b67701948960903">load_yuv</a>(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.577 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b0db892192d010d5f1f6c25423328535">load_yuv</a>(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.578 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#74c5faaf4a41aa0aa470a164897d6ec6">log</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.579 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#199c3d150c895179a609ee3b172b332e">log10</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.580 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0b122070bda047ccd97702a7e72f6379">LUTtoRGB</a>(const CImg< T > &palette)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.581 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9b84fab4d5f24f8be60b11205a996dd0">LUTtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.582 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#918eba9e7b484b7300c96885a82bc5fc">marching_cubes</a>(CImgList< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float z0, const float x1, const float y1, const float z1, const float resx, const float resy, const float resz, const bool invert_faces=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.583 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#858076f1e68d6b616c3f8dd46c441f77">marching_squares</a>(CImgList< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float x1, const float y1, const float resx, const float resy)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.584 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dfba8474c6ed7cb810b22a88ca8a9806">matrix</a>(const T &a0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.585 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4dce73b905d98f22a5860464e571120f">matrix</a>(const T &a0, const T &a1, const T &a2, const T &a3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.586 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#80ec581a136a796347cfe19e4dea09e6">matrix</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.587 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2f9b706c8aa7534e7014afc3ce30a8d9">matrix</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.588 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b52c8cf4602a06831b2bbe607cc619cc">matrix</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15, const T &a16, const T &a17, const T &a18, const T &a19, const T &a20, const T &a21, const T &a22, const T &a23, const T &a24)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.589 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ec22e09b5cba5e5f6bb4174322a95019">matrix</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.590 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f1a616293569fbda2a769b612c86a8ab">max</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.591 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#301155b753f6ab13ff25f164f389e142">max</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.592 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bbbf6afa836f43dd613d680e9920d858">max</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.593 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#88c9c06c49658060a2766f865e14c0eb">max</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.594 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b503599cdf7b7a90faa02346e9b0f45d">maxmin</a>(t &min_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.595 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0d3facf4dd7b7bda082e0181205f3c83">maxmin</a>(t &min_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.596 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#15da7eecd10e53fa76b99379871b1c62">mean</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.597 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a74ed6a750d63ac3effff5edc06ad62f">median</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.598 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#01164a5a9ce47a184c451d53f145cf44">min</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.599 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4dfdacede15a60eb00a588a9f3d4839a">min</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.600 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#54fa8ab955fc28675dd0d0f4fbb9b7ad">min</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.601 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#24f04a40c39adc99e49ca7c5d3f3d322">min</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.602 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#37e03ef1b2ce96e5f90760889bad944e">minmax</a>(t &max_val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.603 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4a7d077d1b5998ba187c7ee06f77e00c">minmax</a>(t &max_val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.604 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#91a5e5fd9431ca28eaeee0ea03419ab0">mirror</a>(const char axis)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.605 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1af0c1920f11fdc01c71ed0d7117ab0c">MSE</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.606 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c026a207188625e845af7abf60a31a7b">mul</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.607 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#caf16c667ccfe861ba7c565537f67a1a">noise</a>(const double sigma, const unsigned int noise_type=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.608 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7de8144e906d2610c4a011056e239595">norm</a>(const int norm_type=2) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.609 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#447de4206a2c264f2c73e825ada11952">normalize</a>(const T a, const T b)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.610 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#afc4c62eb956815235bb896a1707f711">offset</a>(const int x, const int y=0, const int z=0, const int v=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.611 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.612 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#826e9d8fbbc121776b306f8c2ad13e22">operator!=</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.613 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#248f258fd888937bd3ff1bfd6262cf86">operator%</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.614 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3112ecd7208e5689a264d8178d1a56c4">operator%</a>(const T val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.615 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dc3ca29103dd08337dd5b314fc739e8f">operator%=</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.616 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b3adc19f97c3db91bb48c0f9c284c250">operator%=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.617 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#63777d8b423f5bf16a60be4466ec70d4">operator&</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.618 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5d1491a7cb2e98e810bf0edaa471f883">operator&</a>(const T val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.619 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#788c26161bb12c4fed30b2a8edf05126">operator&=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.620 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#99982b0c06528a9d8472c88a05bb0336">operator&=</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.621 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b">operator()</a>(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.622 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#df7285a98afaa0cbfeff5b35ef939111">operator*=</a>(const t val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.623 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#770aafd607168611eace12d46d5f2bfd">operator*=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.624 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#637e0346bd7e4426d32e32aab42bd3f6">operator+</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.625 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ed696f4e890e8da6f6ebaa3171aa2dd7">operator++</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.626 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#694b492d0726df1797d5d6e4da74dfb4">operator++</a>(int)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.627 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f953b216980f8519642514380f3bfdba">operator+=</a>(const t val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.628 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8ad4dd16205403c4bde19d8982dba57e">operator+=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.629 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e8c181b212c22dbee4ee228cac4c00d4">operator-</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.630 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8d71ada97bd3d54d3f4265f0059273cf">operator--</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.631 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d0aa6fe646ae580b616d26b154205f84">operator--</a>(int)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.632 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f18d9bcb5010cdea4c3f6496dd36ccb4">operator-=</a>(const t val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.633 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ff89b226a15e536f2d23b590ed9ba4de">operator-=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.634 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9a6123b197ed6406eda560863bbe4cc1">operator/=</a>(const t val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.635 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#961e682342f88bf0a0cfbd497bf548d4">operator/=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.636 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#86bcd22cc3a9c6dcec264766e66f849f">operator<<</a>(const int n) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.637 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9ae2c81016de21b85487cb678a43afb8">operator<<</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.638 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#52e8e42e7d7f88266dc5cc3e8e98922f">operator<<</a>(const CImgList< t > &list) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.639 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#02dd49d59f77aa41446ce028f9771151">operator<<=</a>(const int n)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.640 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b8993b2170b87343f86f3e07fe0b7348">operator=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.641 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#372633e285ab4266465e4101e72e74aa">operator=</a>(const T *buf)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.642 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4ab78af35f2f570dafec8e449652e539">operator=</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.643 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0ad220d8708e61416b9b9255aa612740">operator==</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.644 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#622413644789d18b3cfff7ff309c95fd">operator>></a>(const int n) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.645 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5fd695f21801e47ea5b859b881c2937a">operator>></a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.646 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e19055c7e5c2e3b8999bab17d2bbfba1">operator>></a>(const CImgList< t > &list) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.647 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c303f7b3fa995df885954b37b4f09775">operator>></a>(CImgDisplay &disp) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.648 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2ecc6f016d1358b12e010dbe75e4d576">operator>>=</a>(const int n)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.649 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#87f4042f1af3428fa0ad1a9480286abe">operator[]</a>(const unsigned long off)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.650 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8d14021427e1899d7422a839972154c3">operator^</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.651 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ff2d39b04a4a00a4c4a058872a235380">operator^</a>(const T val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.652 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c51bdadcbdffee3dfda3914ec6dfdbfd">operator^=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.653 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9d9cc07bba21ba1df87cee6208e83e95">operator^=</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.654 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d83a9f46be07bf5a9b24a6b1253c4ed1">operator|</a>(const CImg< t > &img) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.655 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a8a9d727ce82153f4df2fe8e1292bad0">operator|</a>(const T val) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.656 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6306b063ce03ecf392a03cac541375af">operator|=</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.657 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#baa1bd39411a23a524c6baf0c55745d3">operator|=</a>(const T val)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.658 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0752b44324e973aed012d79bc9a2d3fd">operator~</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.659 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9b26a9b20ac9729e26552e8d44a9d478">permute</a>(const CImg< t > &permutation)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.660 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f5eac37234edfffffe75770e4a492b15">permute_axes</a>(const char *order)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.661 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b7d3a61366cf906c03af6c8fa13309a7">pixel_type</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.662 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#dcc51ad58ccf7a05d28a6dd4ffa446d9">plane3d</a>(CImgList< tf > &primitives, const float sizex=100, const float sizey=100, const unsigned int subdivisionsx=3, const unsigned int subdivisionsy=3, const bool double_sided=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.663 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f2cceb3e14d6650bc7d1c89afedba15a">pointwise_norm</a>(int norm_type=2)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.664 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2662d70fed319ed056836696c3a97499">pointwise_orientation</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.665 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e2f27aee992cf2189c56fdbaaf72ef76">pow</a>(const double p)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.666 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f80272ba663ef935914c34d24171abb8">pow</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.667 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6996328dda8169890a02942e19b6d445">print</a>(const char *title=0, const bool display_stats=true) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.668 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4f4f598be55ec6fb4af8c0f9bb05b91c">projections2d</a>(const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.669 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bff5169ef56ddce3102cfa3b6de0bd19">pseudoinvert</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.670 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f08ee23c8bdb4913f792676f385161ea">PSNR</a>(const CImg< t > &img, const Tfloat valmax=(Tfloat) 255) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.671 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda">ptr</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.672 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#abc5597643805d6e4f11100eee6b2852">ptr</a>(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.673 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#96fb1f65e6aff268da75be5e6adbd1d1">quantize</a>(const unsigned int n, const bool keep_range=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.674 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f3c82dae3264131f819857014435bbe3">rainbow_LUT8</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.675 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#bc7e3023df86263a49a224317c819779">rand</a>(const T val_min, const T val_max)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.676 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4">resize</a>(const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.677 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ed8c4bc86e30f3cc55c46f1329e081a1">resize</a>(const CImg< t > &src, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.678 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cb7831acf038a036edaa9a1b74779054">resize</a>(const CImgDisplay &disp, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.679 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a2fa295816582cb2e62d530c54533055">resize_doubleXY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.680 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#37dbb62f101c6076db3d4d9f45684b30">resize_halfXY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.681 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cf489c894d7f7394912d5dd4c05c1538">resize_object3d</a>(const float sx, const float sy=-100, const float sz=-100)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.682 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#64f4be91725b57a74d080b848660676c">resize_tripleXY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.683 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b4e692d67bb005b4b25555693d15f739">RGBtoBayer</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.684 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2a5e7725a4aafab45bfecc7c31987aca">RGBtoCMY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.685 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3d28b9e43e5d74e8b584844295bb1aa0">RGBtoCMYK</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.686 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e5820d33b36cc0266b98c0d9c9f0c3a6">RGBtoHSI</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.687 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3b76b35625d85926b4e88227f89f734e">RGBtoHSL</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.688 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6c0ab36ca2418c9b62590cdfdcbdc793">RGBtoHSV</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.689 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#eb2b9b79af81584352a2e5f056b1a6df">RGBtoLab</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.690 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#59e0e13a4701d81e9bb78bd6cbd2d048">RGBtoLUT</a>(const CImg< t > &palette, const bool dithering=true, const bool indexing=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.691 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7db4236b8223d536bfe0a6fa6224e0a5">RGBtoLUT</a>(const bool dithering=true, const bool indexing=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.692 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#27cd306be7eb34f49f9e880a9dd740ba">RGBtoxyY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.693 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#70c6c7a5d8ed24b2e618ab89f2dbadda">RGBtoXYZ</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.694 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fbc08f08341e56ebf9b27e3ddacc9ee6">RGBtoYCbCr</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.695 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e9383bb8937b8fa8e96f9612305c55bd">RGBtoYUV</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.696 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8e890897305eb5c4d2a5664312633819">rotate</a>(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.697 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e4b06ab7123208c764f6fe1de4d29a39">rotate</a>(const float angle, const float cx, const float cy, const float zoom, const unsigned int border_conditions=3, const unsigned int interpolation=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.698 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1bf68d76e4c29dde15607a212f6c1b1f">rotation_matrix</a>(const float x, const float y, const float z, const float w, const bool quaternion_data=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.699 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3619f9d2043ebaa67d21eb373ab4d22e">round</a>(const float x, const int rounding_type=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.700 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4fd91f4fb021d20c5b62329c49733bd9">save</a>(const char *const filename, const int number=-1) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.701 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#469c8bebf15e1247b789b35b79ea1537">save_analyze</a>(const char *const filename, const float *const voxsize=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.702 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6039799358c3fe91fe6e828d3433db2f">save_ascii</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.703 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c1a2198e176da80e806e9f44dce6e423">save_ascii</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.704 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2f8e01d96cddfa3c0d0d2dc9d86745ac">save_bmp</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.705 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1352f29f3f4e216b1dbef3471389d09a">save_bmp</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.706 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a38a0a34134e90d18a5637ee61121898">save_cimg</a>(const char *const filename, const bool compress=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.707 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f4317d9209110b8464abae41f0b67b54">save_cimg</a>(const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.708 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cff0f7915d75b7edeeb25e0f2f1c92b2">save_cimg</a>(cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.709 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#869bb2e7c1fe0896e143016ba4030065">save_cpp</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.710 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#37f7909910f00164decfa2705bdd1f2c">save_cpp</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.711 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e2c4bfc725e65a27f7f21e74b6da319d">save_dlm</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.712 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a64fec71b18beaaabbeabc8ad47e36a1">save_dlm</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.713 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#514edc69c74a31e32f36d3731cbf9503">save_empty_cimg</a>(const char *const filename, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.714 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#80a0ba2b540d28d0b20d9a0249d44d5a">save_empty_cimg</a>(cimg_std::FILE *const file, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.715 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5dc466b5a9fd09f386fb4c029122e123">save_ffmpeg</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.716 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6cb891a0f13a1498bf2279568d9c89ef">save_ffmpeg_external</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.717 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fdab21cdc4ef778bfaf4e123b28c9aa0">save_graphicsmagick_external</a>(const char *const filename, const unsigned int quality=100) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.718 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#882ef6fb0c2487da8598e36c45b8eeab">save_gzip_external</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.719 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b0ff4f35fc74d40fda4893b7e2fdbe7b">save_imagemagick_external</a>(const char *const filename, const unsigned int quality=100) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.720 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ad7417f32dcb34d8151ecd232b07fbe7">save_inr</a>(const char *const filename, const float *const voxsize=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.721 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#01dc6718c3ab4f86568db6cb88229338">save_inr</a>(cimg_std::FILE *const file, const float *const voxsize=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.722 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#26ff26d1b1ce8dd8b221d13cc50434e2">save_jpeg</a>(const char *const filename, const unsigned int quality=100) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.723 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#437e56f07b4a2e4afe8e07f40a54544c">save_jpeg</a>(cimg_std::FILE *const file, const unsigned int quality=100) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.724 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#49b8355073ca645ba69af38324ecda6c">save_magick</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.725 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f3608edc3098e7c850c69cd347d4f9e8">save_medcon_external</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.726 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8026d89fd3dd2f58eff90ba7418633c9">save_off</a>(const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.727 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e0d3125ded23aa559120cbaeb5b96d1c">save_off</a>(cimg_std::FILE *const file, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.728 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c651db37bf02a8558de8052b2a1fe1a9">save_pandore</a>(const char *const filename, const unsigned int colorspace=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.729 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0d4ce7c8b1ad6b0aed5b33dc226b1dd4">save_pandore</a>(cimg_std::FILE *const file, const unsigned int colorspace=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.730 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#739a8b4eb3d419cf4a5ec19c1715d6c3">save_png</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.731 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a679f4aa53bbe2327592d48811df4c35">save_png</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.732 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fd8323ac951c92f565eff819073b7973">save_pnm</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.733 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ec64ea7bd5862b6143cc1ba4afafe37f">save_pnm</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.734 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#40a4739e731f2ebba21beb1d1541e69f">save_raw</a>(const char *const filename, const bool multiplexed=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.735 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1c2526cf0c064dd106a7f06743311709">save_raw</a>(cimg_std::FILE *const file, const bool multiplexed=false) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.736 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#aeff8cd6ea1e998a0bf905dd9c706123">save_rgb</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.737 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#21b6660322c8c713c2839247d31766da">save_rgb</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.738 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#9a794b3b53e9e1bf8d5d6b0e1b97bc26">save_rgba</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.739 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#da30da984d380973cfe91b9ba7952e02">save_rgba</a>(cimg_std::FILE *const file) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.740 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c6d72526b5d249df6148680b3521b26d">save_tiff</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.741 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#02e74b684698a0eaf533869f9e262cbb">save_yuv</a>(const char *const filename, const bool rgb2yuv=true) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.742 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#374b35cac6e32b43479ae62d48366173">save_yuv</a>(cimg_std::FILE *const file, const bool rgb2yuv=true) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.743 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0a8ac68afbfb317c60b7554f5cdcbbd5">select</a>(CImgDisplay &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.744 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#261706fc929ade9d440e0eb66b08f843">select</a>(const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.745 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#87cb488d5c29e94e13ff5a6af3112034">sequence</a>(const unsigned int N, const T a0, const T a1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.746 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f3adb54a3f492f7701a1feac9a6954aa">sequence</a>(const T a0, const T a1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.747 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#59a194a8079b3241131773fa724ee1c5">set_linear_atXY</a>(const T &val, const float fx, const float fy=0, const int z=0, const int v=0, const bool add=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.748 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#776849281c40a0a9042b7275c4622e70">set_linear_atXYZ</a>(const T &val, const float fx, const float fy=0, const float fz=0, const int v=0, const bool add=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.749 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e0e585d6280147aabd19c398819040d9">set_matrix_at</a>(const CImg< t > &mat, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.750 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f390fdfa10bc133864a83b101d934284">set_tensor_at</a>(const CImg< t > &ten, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.751 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#83c90e27cc58a73da616813898327966">set_vector_at</a>(const CImg< t > &vec, const unsigned int x, const unsigned int y=0, const unsigned int z=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.752 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4ecd4ea634e87995ef1d309b8ffe91de">sharpen</a>(const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.753 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#cc4f6c8febaeecd694d43645c527888c">sin</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.754 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#3e13243636f944bad8351324f2910e2b">size</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.755 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#865128dbd1524185b74ddb8ddf30e362">slice</a>(const unsigned int z0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.756 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f7121006079849bc3c0c165bbe9c3a2d">slices</a>(const unsigned int z0, const unsigned int z1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.757 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#595ac87408ea46f103791933e3dfd187">solve</a>(const CImg< t > &A)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.758 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2c1c7ca0a47cced1f705ee58c3d37a3e">solve_tridiagonal</a>(const CImg< t > &a, const CImg< t > &b, const CImg< t > &c)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.759 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#44ae8948547aa53345e5dcda7e6b7dc7">sort</a>(CImg< t > &permutations, const bool increasing=true)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.760 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#612264fd3b4223e6ecf99b05a6e220cd">sphere3d</a>(CImgList< tf > &primitives, const float radius=50, const unsigned int subdivisions=3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.761 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#19ebb696e513b9246864e5b0cdd884f5">sqr</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.762 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8c11d16e75e931e9e28d44171e7038d3">sqrt</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.763 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#af59bb4a64bfcba6082253a48a88c9d6">stats</a>(const unsigned int variance_method=1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.764 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#edf6587b65261c0d4eb75bb2ed7d92ae">structure_tensor</a>(const bool central_scheme=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.765 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#77d222b4837c78aad604f3f0b5f1409c">sum</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.766 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0c1627a6f79904e70c784923a3f1ed9f">SVD</a>(CImg< t > &U, CImg< t > &S, CImg< t > &V, const bool sorting=true, const unsigned int max_iter=40, const float lambda=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.767 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d0855328aefbaa69e106fcf107d3d108">SVD</a>(CImgList< t > &USV) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.768 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4e00c35b15007593513f64c7ee7fb7f7">swap</a>(CImg< T > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.769 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fddd851f2413d27929b21f9492f3bfbe">symmetric_eigen</a>(CImg< t > &val, CImg< t > &vec) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.770 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#8bd7410cfef580410cfb9d6702a56149">tan</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.771 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d51e031c3ff9afc1c1f5587e770ff382">tensor</a>(const T &a1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.772 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5ec2064aa2a36440d892d0ffe814975f">tensor</a>(const T &a1, const T &a2, const T &a3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.773 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#e8efd27c5a0259e3d183d187066daa81">tensor</a>(const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.774 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#5d2d10755254c77c93b671d7cce54dcf">tensor</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.775 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#411ae06f4b7a9281dbe7ae608e5dadee">threshold</a>(const T value, const bool soft=false, const bool strict=false)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.776 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#fe12f532a1faf7ba4dbdd32297cdbe6e">torus3d</a>(CImgList< tf > &primitives, const float radius1=100, const float radius2=30, const unsigned int subdivisions1=24, const unsigned int subdivisions2=12)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.777 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#a5725c18e3adcb9fda07885b076ee971">trace</a>() const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.778 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#b3b0efc40be1da20da1fbddfad758568">transfer_to</a>(CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.779 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#32ca7979d4a8792f7274ab07b8b80fdd">translate</a>(const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.780 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ec75e25883a9e1068aaa93162b969aba">translate_object3d</a>(const float tx, const float ty=0, const float tz=0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.781 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d430e8117e4f1c836e2d4d6810d5a7bf">translate_object3d</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.782 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#49f00018eac2d649fa10c8a25c31c0df">transpose</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.783 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6f2a337d1eb6c94217167dd9296890f3">unroll</a>(const char axis)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.784 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#2d70c422e3e75e6cd810358486387300">value_string</a>(const char separator=',', const unsigned int max_size=0) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.785 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#265a253612b46abed17c61b0a5e5ce30">value_type</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.786 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#641a93939e495eec1749bb68197996ac">variance</a>(const unsigned int variance_method=1) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.787 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#42b5c7baa4cd8ce360cea44a4e013753">variancemean</a>(const unsigned int variance_method, t &mean) const </td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.788 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#c2f7bb966ea88b768fdca82d82a96ba0">vector</a>(const T &a0)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.789 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4018dc62ea62f2ede589cfd01168d103">vector</a>(const T &a0, const T &a1)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.790 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6660d13478b094af5f46eb1fbc110513">vector</a>(const T &a0, const T &a1, const T &a2)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.791 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#064afd0c0df3a55acb3f47c208044d7a">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.792 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#26e0f59a179718455ee57fcd618ada21">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.793 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#0c3c919f0637431613b51cfd8a4a7638">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.794 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7b1db07e34ac249af7b64b1a46e183c2">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.795 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#78326ef7939a5caa29698ae4185b1ca9">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.796 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ad82caec44604bd51a286afbb1bb2e89">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.797 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ef996c8c7d9f3c76dce7c47cb955a6d6">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.798 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#38a14e7ac3c7f0c48f595a7473f61a08">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.799 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#288a8040101bdfd97d65709e34b17017">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.800 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#f28a9ec7a816a3afd9fa1ce6a7d736e3">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.801 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#60bd022e43e34afb712ae67ab2741603">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.802 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#4a45f8df1eae94f9e3225052f9abca1b">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.803 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#1be60115c2094fa8231b92025dfbf9a0">vector</a>(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline, static]</code></td></tr> 287.804 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7a1fbbf9bb23d01f64a8ca3bd06b7c0f">vector</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.805 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a></td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td></td></tr> 287.806 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#896475f657bb68369b7996d3faeaefee">xyYtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.807 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#7387432af686bbc6c973e7b2ceb2b80b">xyYtoXYZ</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.808 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#13d44ab14b2f1f34ae150e5ead0a381e">XYZtoLab</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.809 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#6ec1861cb810ee3df63c6ef85cf270d8">XYZtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.810 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#697f3a725fd9e0349362d927ce95fd6e">XYZtoxyY</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.811 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#93b6905e43cebf17d9d98f926d353a11">YCbCrtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.812 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#45958abd08f2a93d33fb77de4e5b0a66">YUVtoRGB</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.813 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImg.html#d71c294580a5307aa31246e4a1ee7866">~CImg</a>()</td><td><a class="el" href="structcimg__library_1_1CImg.html">CImg</a></td><td><code> [inline]</code></td></tr> 287.814 +</table></div> 287.815 +<hr noshade="noshade" size="1" width="100%"> 287.816 +<a href="http://sourceforge.net"> 287.817 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 287.818 +</a> 287.819 +<!-- Start of StatCounter Code --> 287.820 +<script type="text/javascript" language="javascript"> 287.821 +<!-- 287.822 +var sc_project=895001; 287.823 +var sc_invisible=1; 287.824 +var sc_partition=7; 287.825 +var sc_security="5ea85181"; 287.826 +//--> 287.827 +</script> 287.828 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 287.829 +<!-- End of StatCounter Code --> 287.830 +</body> 287.831 +</html>
288.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 288.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImg.html Mon Aug 03 14:09:20 2009 +0100 288.3 @@ -0,0 +1,10806 @@ 288.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 288.5 +<head> 288.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 288.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 288.8 +<meta content="David Tschumperle" name="author"></meta> 288.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 288.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 288.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 288.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 288.13 +<style type="text/css"> 288.14 +<!-- 288.15 +body {background-color:white; font-family:sans-serif; } 288.16 +a:active{text-decoration:none; color:#303090} 288.17 +a:link{text-decoration:none; color:#303090} 288.18 +a:visited{text-decoration:none; color:#303090} 288.19 +a:hover{text-decoration:underline; color:#4E9F71} 288.20 +--> 288.21 +</style> 288.22 +<script language="JavaScript" type="text/javascript"> 288.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 288.24 + <!-- Web Site: http://redrival.com/eak/ --> 288.25 + <!-- This script and many more are available free online at --> 288.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 288.27 + <!-- Begin 288.28 + function NewWindow(mypage, myname, w, h, scroll) { 288.29 + var winl = (screen.width - w) / 2; 288.30 + var wint = (screen.height - h) / 2; 288.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 288.32 + win = window.open(mypage, myname, winprops) 288.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 288.34 + } 288.35 + // End --> 288.36 +</script> 288.37 +</head> 288.38 +<body> 288.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 288.40 + <tbody><tr><td> 288.41 + <hr noshade="noshade" size="1" width="90%"></hr> 288.42 + <center> 288.43 + <br/> 288.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 288.45 + <br/> 288.46 + </center> 288.47 + <hr noshade="noshade" size="1" width="90%"></hr> 288.48 + <center> 288.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 288.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 288.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 288.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 288.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 288.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 288.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 288.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 288.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 288.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 288.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 288.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 288.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 288.62 + </font> 288.63 + </td></tr></tbody> 288.64 + </table> 288.65 + </center> 288.66 + <hr noshade="noshade" size="1" width="90%"></hr> 288.67 + </td></tr></tbody> 288.68 +</table> 288.69 +<!-- Generated by Doxygen 1.5.7.1 --> 288.70 +<script type="text/javascript"> 288.71 +<!-- 288.72 +function changeDisplayState (e){ 288.73 + var num=this.id.replace(/[^[0-9]/g,''); 288.74 + var button=this.firstChild; 288.75 + var sectionDiv=document.getElementById('dynsection'+num); 288.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 288.77 + sectionDiv.style.display='block'; 288.78 + button.src='open.gif'; 288.79 + }else{ 288.80 + sectionDiv.style.display='none'; 288.81 + button.src='closed.gif'; 288.82 + } 288.83 +} 288.84 +function initDynSections(){ 288.85 + var divs=document.getElementsByTagName('div'); 288.86 + var sectionCounter=1; 288.87 + for(var i=0;i<divs.length-1;i++){ 288.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 288.89 + var header=divs[i]; 288.90 + var section=divs[i+1]; 288.91 + var button=header.firstChild; 288.92 + if (button!='IMG'){ 288.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 288.94 + button=document.createElement('img'); 288.95 + divs[i].insertBefore(button,divs[i].firstChild); 288.96 + } 288.97 + header.style.cursor='pointer'; 288.98 + header.onclick=changeDisplayState; 288.99 + header.id='dynheader'+sectionCounter; 288.100 + button.src='closed.gif'; 288.101 + section.id='dynsection'+sectionCounter; 288.102 + section.style.display='none'; 288.103 + section.style.marginLeft='14px'; 288.104 + sectionCounter++; 288.105 + } 288.106 + } 288.107 +} 288.108 +window.onload = initDynSections; 288.109 +--> 288.110 +</script> 288.111 +<div class="navigation" id="top"> 288.112 + <div class="tabs"> 288.113 + <ul> 288.114 + <li><a href="index.html"><span>Main Page</span></a></li> 288.115 + <li><a href="modules.html"><span>Modules</span></a></li> 288.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 288.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 288.118 + </ul> 288.119 + </div> 288.120 + <div class="tabs"> 288.121 + <ul> 288.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 288.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 288.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 288.125 + </ul> 288.126 + </div> 288.127 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="structcimg__library_1_1CImg.html">CImg</a> 288.128 + </div> 288.129 +</div> 288.130 +<div class="contents"> 288.131 +<h1>CImg Struct Template Reference</h1><!-- doxytag: class="cimg_library::CImg" -->Class representing an image (up to 4 dimensions wide), each pixel being of type <code>T</code>. 288.132 +<a href="#_details">More...</a> 288.133 +<p> 288.134 + 288.135 +<p> 288.136 +<a href="structcimg__library_1_1CImg-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 288.137 +<tr><td></td></tr> 288.138 +<tr><td colspan="2"><br><h2>Image Informations</h2></td></tr> 288.139 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3e13243636f944bad8351324f2910e2b">size</a> () const </td></tr> 288.140 + 288.141 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the total number of pixel values in an image. <a href="#3e13243636f944bad8351324f2910e2b"></a><br></td></tr> 288.142 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="afae58d5a77ea4190e6f2c818238bd1a"></a><!-- doxytag: member="cimg_library::CImg::dimx" ref="afae58d5a77ea4190e6f2c818238bd1a" args="() const " --> 288.143 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a">dimx</a> () const </td></tr> 288.144 + 288.145 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of columns of the instance image (size along the X-axis, i.e image width). <br></td></tr> 288.146 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc3244815fd1b4cea186b6a63bfb635d"></a><!-- doxytag: member="cimg_library::CImg::dimy" ref="fc3244815fd1b4cea186b6a63bfb635d" args="() const " --> 288.147 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d">dimy</a> () const </td></tr> 288.148 + 288.149 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of rows of the instance image (size along the Y-axis, i.e image height). <br></td></tr> 288.150 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b310ef9114198b570d035fd914d5a215"></a><!-- doxytag: member="cimg_library::CImg::dimz" ref="b310ef9114198b570d035fd914d5a215" args="() const " --> 288.151 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215">dimz</a> () const </td></tr> 288.152 + 288.153 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of slices of the instance image (size along the Z-axis). <br></td></tr> 288.154 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="36c46653147af22bf9163663c058ec6f"></a><!-- doxytag: member="cimg_library::CImg::dimv" ref="36c46653147af22bf9163663c058ec6f" args="() const " --> 288.155 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f">dimv</a> () const </td></tr> 288.156 + 288.157 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of vector channels of the instance image (size along the V-axis). <br></td></tr> 288.158 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b72aa78538551f0df216de7f6ea2e95"></a><!-- doxytag: member="cimg_library::CImg::is_sameX" ref="3b72aa78538551f0df216de7f6ea2e95" args="(const unsigned int dx) const " --> 288.159 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3b72aa78538551f0df216de7f6ea2e95">is_sameX</a> (const unsigned int dx) const </td></tr> 288.160 + 288.161 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width. <br></td></tr> 288.162 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="420cd1cddf318f832126b10403aef4fd"></a><!-- doxytag: member="cimg_library::CImg::is_sameX" ref="420cd1cddf318f832126b10403aef4fd" args="(const CImg< t > &img) const " --> 288.163 +template<typename t > </td></tr> 288.164 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#420cd1cddf318f832126b10403aef4fd">is_sameX</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.165 + 288.166 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and <code>img</code> have same width. <br></td></tr> 288.167 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6f2389ea0ff1313b23523d557980a8a6"></a><!-- doxytag: member="cimg_library::CImg::is_sameX" ref="6f2389ea0ff1313b23523d557980a8a6" args="(const CImgDisplay &disp) const " --> 288.168 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6f2389ea0ff1313b23523d557980a8a6">is_sameX</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp) const </td></tr> 288.169 + 288.170 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and the display <code>disp</code> have same width. <br></td></tr> 288.171 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb6a0d74efed60628344ce37e44aca31"></a><!-- doxytag: member="cimg_library::CImg::is_sameY" ref="cb6a0d74efed60628344ce37e44aca31" args="(const unsigned int dy) const " --> 288.172 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cb6a0d74efed60628344ce37e44aca31">is_sameY</a> (const unsigned int dy) const </td></tr> 288.173 + 288.174 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified height. <br></td></tr> 288.175 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8cade7d256506acc4797ac9b3d62f8d7"></a><!-- doxytag: member="cimg_library::CImg::is_sameY" ref="8cade7d256506acc4797ac9b3d62f8d7" args="(const CImg< t > &img) const " --> 288.176 +template<typename t > </td></tr> 288.177 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8cade7d256506acc4797ac9b3d62f8d7">is_sameY</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.178 + 288.179 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and <code>img</code> have same height. <br></td></tr> 288.180 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a09668cd5a201595cccd19c4843066e7"></a><!-- doxytag: member="cimg_library::CImg::is_sameY" ref="a09668cd5a201595cccd19c4843066e7" args="(const CImgDisplay &disp) const " --> 288.181 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a09668cd5a201595cccd19c4843066e7">is_sameY</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp) const </td></tr> 288.182 + 288.183 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and the display <code>disp</code> have same height. <br></td></tr> 288.184 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae8da1879332cbb3807133b552d1cafe"></a><!-- doxytag: member="cimg_library::CImg::is_sameZ" ref="ae8da1879332cbb3807133b552d1cafe" args="(const unsigned int dz) const " --> 288.185 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ae8da1879332cbb3807133b552d1cafe">is_sameZ</a> (const unsigned int dz) const </td></tr> 288.186 + 288.187 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified depth. <br></td></tr> 288.188 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="56f92c4b59cbe1b73cf628e43203f516"></a><!-- doxytag: member="cimg_library::CImg::is_sameZ" ref="56f92c4b59cbe1b73cf628e43203f516" args="(const CImg< t > &img) const " --> 288.189 +template<typename t > </td></tr> 288.190 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#56f92c4b59cbe1b73cf628e43203f516">is_sameZ</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.191 + 288.192 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and <code>img</code> have same depth. <br></td></tr> 288.193 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd8ae750af0f68148227285c97036321"></a><!-- doxytag: member="cimg_library::CImg::is_sameV" ref="cd8ae750af0f68148227285c97036321" args="(const unsigned int dv) const " --> 288.194 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cd8ae750af0f68148227285c97036321">is_sameV</a> (const unsigned int dv) const </td></tr> 288.195 + 288.196 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified number of channels. <br></td></tr> 288.197 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a058d458f04a36267c48f0684e44ebf7"></a><!-- doxytag: member="cimg_library::CImg::is_sameV" ref="a058d458f04a36267c48f0684e44ebf7" args="(const CImg< t > &img) const " --> 288.198 +template<typename t > </td></tr> 288.199 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a058d458f04a36267c48f0684e44ebf7">is_sameV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.200 + 288.201 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and <code>img</code> have same dim. <br></td></tr> 288.202 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f202a5fce446abc81966aa0df075075c"></a><!-- doxytag: member="cimg_library::CImg::is_sameXY" ref="f202a5fce446abc81966aa0df075075c" args="(const unsigned int dx, const unsigned int dy) const " --> 288.203 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f202a5fce446abc81966aa0df075075c">is_sameXY</a> (const unsigned int dx, const unsigned int dy) const </td></tr> 288.204 + 288.205 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width and height. <br></td></tr> 288.206 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="36f980621a1b6cfac495bc3664459728"></a><!-- doxytag: member="cimg_library::CImg::is_sameXY" ref="36f980621a1b6cfac495bc3664459728" args="(const CImg< t > &img) const " --> 288.207 +template<typename t > </td></tr> 288.208 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#36f980621a1b6cfac495bc3664459728">is_sameXY</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.209 + 288.210 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width and same height. <br></td></tr> 288.211 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75f62ffd782356fa2db23289bf97bed3"></a><!-- doxytag: member="cimg_library::CImg::is_sameXY" ref="75f62ffd782356fa2db23289bf97bed3" args="(const CImgDisplay &disp) const " --> 288.212 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#75f62ffd782356fa2db23289bf97bed3">is_sameXY</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp) const </td></tr> 288.213 + 288.214 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image <code></code>(*this) and the display <code>disp</code> have same width and same height. <br></td></tr> 288.215 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3d19709f9f46ca0ab06a5942f91b8ee4"></a><!-- doxytag: member="cimg_library::CImg::is_sameXZ" ref="3d19709f9f46ca0ab06a5942f91b8ee4" args="(const unsigned int dx, const unsigned int dz) const " --> 288.216 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3d19709f9f46ca0ab06a5942f91b8ee4">is_sameXZ</a> (const unsigned int dx, const unsigned int dz) const </td></tr> 288.217 + 288.218 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width and depth. <br></td></tr> 288.219 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b1c89e89bd61546d5b0a98040c37356e"></a><!-- doxytag: member="cimg_library::CImg::is_sameXZ" ref="b1c89e89bd61546d5b0a98040c37356e" args="(const CImg< t > &img) const " --> 288.220 +template<typename t > </td></tr> 288.221 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b1c89e89bd61546d5b0a98040c37356e">is_sameXZ</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.222 + 288.223 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width and same depth. <br></td></tr> 288.224 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1196976be93ae9d179bd9de3a5d997fe"></a><!-- doxytag: member="cimg_library::CImg::is_sameXV" ref="1196976be93ae9d179bd9de3a5d997fe" args="(const unsigned int dx, const unsigned int dv) const " --> 288.225 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1196976be93ae9d179bd9de3a5d997fe">is_sameXV</a> (const unsigned int dx, const unsigned int dv) const </td></tr> 288.226 + 288.227 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width and number of channels. <br></td></tr> 288.228 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="347940f1389ae54b86f2d899b8690c8a"></a><!-- doxytag: member="cimg_library::CImg::is_sameXV" ref="347940f1389ae54b86f2d899b8690c8a" args="(const CImg< t > &img) const " --> 288.229 +template<typename t > </td></tr> 288.230 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#347940f1389ae54b86f2d899b8690c8a">is_sameXV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.231 + 288.232 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width and same number of channels. <br></td></tr> 288.233 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="229ee758d966e13dc65cc853b5bc2566"></a><!-- doxytag: member="cimg_library::CImg::is_sameYZ" ref="229ee758d966e13dc65cc853b5bc2566" args="(const unsigned int dy, const unsigned int dz) const " --> 288.234 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#229ee758d966e13dc65cc853b5bc2566">is_sameYZ</a> (const unsigned int dy, const unsigned int dz) const </td></tr> 288.235 + 288.236 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified height and depth. <br></td></tr> 288.237 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5d863be6ae8d5d8ab0af39aa78174b2f"></a><!-- doxytag: member="cimg_library::CImg::is_sameYZ" ref="5d863be6ae8d5d8ab0af39aa78174b2f" args="(const CImg< t > &img) const " --> 288.238 +template<typename t > </td></tr> 288.239 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5d863be6ae8d5d8ab0af39aa78174b2f">is_sameYZ</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.240 + 288.241 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same height and same depth. <br></td></tr> 288.242 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64684b41dcd2a660962be8df5d30d2cf"></a><!-- doxytag: member="cimg_library::CImg::is_sameYV" ref="64684b41dcd2a660962be8df5d30d2cf" args="(const unsigned int dy, const unsigned int dv) const " --> 288.243 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#64684b41dcd2a660962be8df5d30d2cf">is_sameYV</a> (const unsigned int dy, const unsigned int dv) const </td></tr> 288.244 + 288.245 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified height and number of channels. <br></td></tr> 288.246 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dbaf8d3f0429c8bf720419cdfffee029"></a><!-- doxytag: member="cimg_library::CImg::is_sameYV" ref="dbaf8d3f0429c8bf720419cdfffee029" args="(const CImg< t > &img) const " --> 288.247 +template<typename t > </td></tr> 288.248 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dbaf8d3f0429c8bf720419cdfffee029">is_sameYV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.249 + 288.250 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same height and same number of channels. <br></td></tr> 288.251 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45b15ba0da79440024af5428443c8a35"></a><!-- doxytag: member="cimg_library::CImg::is_sameZV" ref="45b15ba0da79440024af5428443c8a35" args="(const unsigned int dz, const unsigned int dv) const " --> 288.252 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#45b15ba0da79440024af5428443c8a35">is_sameZV</a> (const unsigned int dz, const unsigned int dv) const </td></tr> 288.253 + 288.254 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified depth and number of channels. <br></td></tr> 288.255 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fcd67d621531a0cfe2d9c004442b3575"></a><!-- doxytag: member="cimg_library::CImg::is_sameZV" ref="fcd67d621531a0cfe2d9c004442b3575" args="(const CImg< t > &img) const " --> 288.256 +template<typename t > </td></tr> 288.257 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fcd67d621531a0cfe2d9c004442b3575">is_sameZV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.258 + 288.259 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same depth and same number of channels. <br></td></tr> 288.260 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="36a12bf20a1d6cf863f505877e30bdce"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYZ" ref="36a12bf20a1d6cf863f505877e30bdce" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz) const " --> 288.261 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#36a12bf20a1d6cf863f505877e30bdce">is_sameXYZ</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz) const </td></tr> 288.262 + 288.263 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width, height and depth. <br></td></tr> 288.264 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0fbd732196771e98d2d3418eb03f1d77"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYZ" ref="0fbd732196771e98d2d3418eb03f1d77" args="(const CImg< t > &img) const " --> 288.265 +template<typename t > </td></tr> 288.266 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0fbd732196771e98d2d3418eb03f1d77">is_sameXYZ</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.267 + 288.268 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width, same height and same depth. <br></td></tr> 288.269 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f79477b4ed4ba3e40f96363eeb735049"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYV" ref="f79477b4ed4ba3e40f96363eeb735049" args="(const unsigned int dx, const unsigned int dy, const unsigned int dv) const " --> 288.270 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f79477b4ed4ba3e40f96363eeb735049">is_sameXYV</a> (const unsigned int dx, const unsigned int dy, const unsigned int dv) const </td></tr> 288.271 + 288.272 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width, height and depth. <br></td></tr> 288.273 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7ed2c655d9f41a24c98e98bac5efba20"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYV" ref="7ed2c655d9f41a24c98e98bac5efba20" args="(const CImg< t > &img) const " --> 288.274 +template<typename t > </td></tr> 288.275 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7ed2c655d9f41a24c98e98bac5efba20">is_sameXYV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.276 + 288.277 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width, same height and same number of channels. <br></td></tr> 288.278 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f1f9f15a7ca3dff58e5ee2d0e90b3e2"></a><!-- doxytag: member="cimg_library::CImg::is_sameXZV" ref="5f1f9f15a7ca3dff58e5ee2d0e90b3e2" args="(const unsigned int dx, const unsigned int dz, const unsigned int dv) const " --> 288.279 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5f1f9f15a7ca3dff58e5ee2d0e90b3e2">is_sameXZV</a> (const unsigned int dx, const unsigned int dz, const unsigned int dv) const </td></tr> 288.280 + 288.281 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width, height and number of channels. <br></td></tr> 288.282 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="258e2b87c574f0d48376d68f650d161d"></a><!-- doxytag: member="cimg_library::CImg::is_sameXZV" ref="258e2b87c574f0d48376d68f650d161d" args="(const CImg< t > &img) const " --> 288.283 +template<typename t > </td></tr> 288.284 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#258e2b87c574f0d48376d68f650d161d">is_sameXZV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.285 + 288.286 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same width, same depth and same number of channels. <br></td></tr> 288.287 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="89c7b83529cf137f8fe3b946b7a859dd"></a><!-- doxytag: member="cimg_library::CImg::is_sameYZV" ref="89c7b83529cf137f8fe3b946b7a859dd" args="(const unsigned int dy, const unsigned int dz, const unsigned int dv) const " --> 288.288 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#89c7b83529cf137f8fe3b946b7a859dd">is_sameYZV</a> (const unsigned int dy, const unsigned int dz, const unsigned int dv) const </td></tr> 288.289 + 288.290 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified height, depth and number of channels. <br></td></tr> 288.291 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="10f8cee08e95111cc9bb227ca11b079f"></a><!-- doxytag: member="cimg_library::CImg::is_sameYZV" ref="10f8cee08e95111cc9bb227ca11b079f" args="(const CImg< t > &img) const " --> 288.292 +template<typename t > </td></tr> 288.293 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#10f8cee08e95111cc9bb227ca11b079f">is_sameYZV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.294 + 288.295 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images have same heigth, same depth and same number of channels. <br></td></tr> 288.296 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5ae8cb401527d16ee8d3b42deb6950f4"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYZV" ref="5ae8cb401527d16ee8d3b42deb6950f4" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const " --> 288.297 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5ae8cb401527d16ee8d3b42deb6950f4">is_sameXYZV</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv) const </td></tr> 288.298 + 288.299 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image (*this) has the specified width, height, depth and number of channels. <br></td></tr> 288.300 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8d5a5b714082a0cd2315b19984e69163"></a><!-- doxytag: member="cimg_library::CImg::is_sameXYZV" ref="8d5a5b714082a0cd2315b19984e69163" args="(const CImg< t > &img) const " --> 288.301 +template<typename t > </td></tr> 288.302 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8d5a5b714082a0cd2315b19984e69163">is_sameXYZV</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.303 + 288.304 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if images <code></code>(*this) and <code>img</code> have same width, same height, same depth and same number of channels. <br></td></tr> 288.305 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cef8e33cfd36a5d7d2fad939efcf02e3"></a><!-- doxytag: member="cimg_library::CImg::is_empty" ref="cef8e33cfd36a5d7d2fad939efcf02e3" args="() const " --> 288.306 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a> () const </td></tr> 288.307 + 288.308 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if current image is empty. <br></td></tr> 288.309 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a385aa18f5e42db5a415c25a90f4193d"></a><!-- doxytag: member="cimg_library::CImg::operator bool" ref="a385aa18f5e42db5a415c25a90f4193d" args="() const " --> 288.310 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a> () const </td></tr> 288.311 + 288.312 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if image is not empty. <br></td></tr> 288.313 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d69bd11391be1a1dba5c8202259664f8"></a><!-- doxytag: member="cimg_library::CImg::begin" ref="d69bd11391be1a1dba5c8202259664f8" args="()" --> 288.314 +<a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d69bd11391be1a1dba5c8202259664f8">begin</a> ()</td></tr> 288.315 + 288.316 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return an iterator to the first image pixel. <br></td></tr> 288.317 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4b02d4f1a8500fb07a551069060709f"></a><!-- doxytag: member="cimg_library::CImg::begin" ref="a4b02d4f1a8500fb07a551069060709f" args="() const " --> 288.318 +<a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">const_iterator</a> </td><td class="memItemRight" valign="bottom"><b>begin</b> () const </td></tr> 288.319 + 288.320 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d8f0a8dd427c22a66a7e798183f2b72"></a><!-- doxytag: member="cimg_library::CImg::first" ref="2d8f0a8dd427c22a66a7e798183f2b72" args="() const " --> 288.321 +const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2d8f0a8dd427c22a66a7e798183f2b72">first</a> () const </td></tr> 288.322 + 288.323 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return reference to the first image pixel. <br></td></tr> 288.324 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7623ebf1de749ead723a8a20ffb9475a"></a><!-- doxytag: member="cimg_library::CImg::first" ref="7623ebf1de749ead723a8a20ffb9475a" args="()" --> 288.325 +T & </td><td class="memItemRight" valign="bottom"><b>first</b> ()</td></tr> 288.326 + 288.327 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cad38d52497a975bfb6f2f6acd76631f"></a><!-- doxytag: member="cimg_library::CImg::end" ref="cad38d52497a975bfb6f2f6acd76631f" args="()" --> 288.328 +<a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cad38d52497a975bfb6f2f6acd76631f">end</a> ()</td></tr> 288.329 + 288.330 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return an iterator pointing after the last image pixel. <br></td></tr> 288.331 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="350132543d80a1c1e5be844e6d2878ea"></a><!-- doxytag: member="cimg_library::CImg::end" ref="350132543d80a1c1e5be844e6d2878ea" args="() const " --> 288.332 +<a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">const_iterator</a> </td><td class="memItemRight" valign="bottom"><b>end</b> () const </td></tr> 288.333 + 288.334 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4fc1d283512c7d8834f1692a1dd6cef5"></a><!-- doxytag: member="cimg_library::CImg::last" ref="4fc1d283512c7d8834f1692a1dd6cef5" args="() const " --> 288.335 +const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4fc1d283512c7d8834f1692a1dd6cef5">last</a> () const </td></tr> 288.336 + 288.337 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the last image pixel. <br></td></tr> 288.338 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8af3592c894b63653a2c8369e00fc4cb"></a><!-- doxytag: member="cimg_library::CImg::last" ref="8af3592c894b63653a2c8369e00fc4cb" args="()" --> 288.339 +T & </td><td class="memItemRight" valign="bottom"><b>last</b> ()</td></tr> 288.340 + 288.341 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3295aee3e56bc13ea3aa5d1a5dc6bcda"></a><!-- doxytag: member="cimg_library::CImg::ptr" ref="3295aee3e56bc13ea3aa5d1a5dc6bcda" args="()" --> 288.342 +T * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda">ptr</a> ()</td></tr> 288.343 + 288.344 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a pointer to the pixel buffer. <br></td></tr> 288.345 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc480ddcdd112bbeca366a5ae623b920"></a><!-- doxytag: member="cimg_library::CImg::ptr" ref="fc480ddcdd112bbeca366a5ae623b920" args="() const " --> 288.346 +const T * </td><td class="memItemRight" valign="bottom"><b>ptr</b> () const </td></tr> 288.347 + 288.348 +<tr><td class="memItemLeft" nowrap align="right" valign="top">T * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#abc5597643805d6e4f11100eee6b2852">ptr</a> (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)</td></tr> 288.349 + 288.350 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a pointer to the pixel value located at (<code>x</code>,<code>y</code>,<code>z</code>,<code>v</code>). <a href="#abc5597643805d6e4f11100eee6b2852"></a><br></td></tr> 288.351 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa7209ce9b6e9a4fbc91b1ebe593dd2c"></a><!-- doxytag: member="cimg_library::CImg::ptr" ref="aa7209ce9b6e9a4fbc91b1ebe593dd2c" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const " --> 288.352 +const T * </td><td class="memItemRight" valign="bottom"><b>ptr</b> (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const </td></tr> 288.353 + 288.354 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.355 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b37041213cf48faf44debd569ae93127">is_overlapped</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.356 + 288.357 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if the memory buffers of the two images overlaps. <a href="#b37041213cf48faf44debd569ae93127"></a><br></td></tr> 288.358 +<tr><td class="memItemLeft" nowrap align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#afc4c62eb956815235bb896a1707f711">offset</a> (const int x, const int y=0, const int z=0, const int v=0) const </td></tr> 288.359 + 288.360 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the offset of the pixel coordinates (<code>x</code>,<code>y</code>,<code>z</code>,<code>v</code>) with respect to the data pointer <code>data</code>. <a href="#afc4c62eb956815235bb896a1707f711"></a><br></td></tr> 288.361 +<tr><td class="memItemLeft" nowrap align="right" valign="top">T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b">operator()</a> (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)</td></tr> 288.362 + 288.363 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fast access to pixel value for reading or writing. <a href="#b8fbc19527504258380aaed12c4bec4b"></a><br></td></tr> 288.364 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd4530780df6007e9608c35dc7fa0491"></a><!-- doxytag: member="cimg_library::CImg::operator()" ref="cd4530780df6007e9608c35dc7fa0491" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const " --> 288.365 +const T & </td><td class="memItemRight" valign="bottom"><b>operator()</b> (const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0) const </td></tr> 288.366 + 288.367 +<tr><td class="memItemLeft" nowrap align="right" valign="top">T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#87f4042f1af3428fa0ad1a9480286abe">operator[]</a> (const unsigned long off)</td></tr> 288.368 + 288.369 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fast access to pixel value for reading or writing, using an offset to the image pixel. <a href="#87f4042f1af3428fa0ad1a9480286abe"></a><br></td></tr> 288.370 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fa9c18de326912d7fcc9e8c5415b610e"></a><!-- doxytag: member="cimg_library::CImg::operator[]" ref="fa9c18de326912d7fcc9e8c5415b610e" args="(const unsigned long off) const " --> 288.371 +const T & </td><td class="memItemRight" valign="bottom"><b>operator[]</b> (const unsigned long off) const </td></tr> 288.372 + 288.373 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="94c484819f66b605343298653d4b1d07"></a><!-- doxytag: member="cimg_library::CImg::back" ref="94c484819f66b605343298653d4b1d07" args="()" --> 288.374 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#94c484819f66b605343298653d4b1d07">back</a> ()</td></tr> 288.375 + 288.376 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the last image value. <br></td></tr> 288.377 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="66ff8d365d8820194730f759978dc1d0"></a><!-- doxytag: member="cimg_library::CImg::back" ref="66ff8d365d8820194730f759978dc1d0" args="() const " --> 288.378 +const T & </td><td class="memItemRight" valign="bottom"><b>back</b> () const </td></tr> 288.379 + 288.380 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="55d9a449187445866021859f0cf708d0"></a><!-- doxytag: member="cimg_library::CImg::front" ref="55d9a449187445866021859f0cf708d0" args="()" --> 288.381 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#55d9a449187445866021859f0cf708d0">front</a> ()</td></tr> 288.382 + 288.383 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the first image value. <br></td></tr> 288.384 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="33144bdb055f125014515b05fffaea8e"></a><!-- doxytag: member="cimg_library::CImg::front" ref="33144bdb055f125014515b05fffaea8e" args="() const " --> 288.385 +const T & </td><td class="memItemRight" valign="bottom"><b>front</b> () const </td></tr> 288.386 + 288.387 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e530958fd7fd7a1e7c5017c3e7c411de"></a><!-- doxytag: member="cimg_library::CImg::containsXYZV" ref="e530958fd7fd7a1e7c5017c3e7c411de" args="(const int x, const int y=0, const int z=0, const int v=0) const " --> 288.388 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e530958fd7fd7a1e7c5017c3e7c411de">containsXYZV</a> (const int x, const int y=0, const int z=0, const int v=0) const </td></tr> 288.389 + 288.390 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if pixel (x,y,z,v) is inside image boundaries. <br></td></tr> 288.391 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3b2ecb5de17e820b6f9d67650c53f833"></a><!-- doxytag: member="cimg_library::CImg::contains" ref="3b2ecb5de17e820b6f9d67650c53f833" args="(const T &pixel, t &x, t &y, t &z, t &v) const " --> 288.392 +template<typename t > </td></tr> 288.393 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3b2ecb5de17e820b6f9d67650c53f833">contains</a> (const T &pixel, t &x, t &y, t &z, t &v) const </td></tr> 288.394 + 288.395 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y,z,v). <br></td></tr> 288.396 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4e1066d2e2e4be26b8ddb59c4e6ea6a2"></a><!-- doxytag: member="cimg_library::CImg::contains" ref="4e1066d2e2e4be26b8ddb59c4e6ea6a2" args="(const T &pixel, t &x, t &y, t &z) const " --> 288.397 +template<typename t > </td></tr> 288.398 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4e1066d2e2e4be26b8ddb59c4e6ea6a2">contains</a> (const T &pixel, t &x, t &y, t &z) const </td></tr> 288.399 + 288.400 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y,z). <br></td></tr> 288.401 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a55cfaf7d507c97343d750aa4c951ff3"></a><!-- doxytag: member="cimg_library::CImg::contains" ref="a55cfaf7d507c97343d750aa4c951ff3" args="(const T &pixel, t &x, t &y) const " --> 288.402 +template<typename t > </td></tr> 288.403 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a55cfaf7d507c97343d750aa4c951ff3">contains</a> (const T &pixel, t &x, t &y) const </td></tr> 288.404 + 288.405 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x,y). <br></td></tr> 288.406 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0254f03aac63118f3fbc1ca3d9ede477"></a><!-- doxytag: member="cimg_library::CImg::contains" ref="0254f03aac63118f3fbc1ca3d9ede477" args="(const T &pixel, t &x) const " --> 288.407 +template<typename t > </td></tr> 288.408 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0254f03aac63118f3fbc1ca3d9ede477">contains</a> (const T &pixel, t &x) const </td></tr> 288.409 + 288.410 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if specified referenced value is inside image boundaries. If true, returns pixel coordinates in (x). <br></td></tr> 288.411 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c209cb1eac5d34a620140e1fb221605b"></a><!-- doxytag: member="cimg_library::CImg::contains" ref="c209cb1eac5d34a620140e1fb221605b" args="(const T &pixel) const " --> 288.412 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c209cb1eac5d34a620140e1fb221605b">contains</a> (const T &pixel) const </td></tr> 288.413 + 288.414 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if specified referenced value is inside the image boundaries. <br></td></tr> 288.415 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e62c450ce69d12159278e628ec8b874"></a><!-- doxytag: member="cimg_library::CImg::at" ref="0e62c450ce69d12159278e628ec8b874" args="(const int off, const T out_val)" --> 288.416 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0e62c450ce69d12159278e628ec8b874">at</a> (const int off, const T out_val)</td></tr> 288.417 + 288.418 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Dirichlet boundary conditions. <br></td></tr> 288.419 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="16a32b4dc6a873a75ba4c7d6ea17b602"></a><!-- doxytag: member="cimg_library::CImg::at" ref="16a32b4dc6a873a75ba4c7d6ea17b602" args="(const int off, const T out_val) const " --> 288.420 +T </td><td class="memItemRight" valign="bottom"><b>at</b> (const int off, const T out_val) const </td></tr> 288.421 + 288.422 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d8cbb8d33ec7b0bacfbbade8a07ed556"></a><!-- doxytag: member="cimg_library::CImg::at" ref="d8cbb8d33ec7b0bacfbbade8a07ed556" args="(const int off)" --> 288.423 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d8cbb8d33ec7b0bacfbbade8a07ed556">at</a> (const int off)</td></tr> 288.424 + 288.425 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Neumann boundary conditions. <br></td></tr> 288.426 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1f256912e3ea22f28e89d7d3a4e2b5a8"></a><!-- doxytag: member="cimg_library::CImg::at" ref="1f256912e3ea22f28e89d7d3a4e2b5a8" args="(const int off) const " --> 288.427 +T </td><td class="memItemRight" valign="bottom"><b>at</b> (const int off) const </td></tr> 288.428 + 288.429 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4f28e193bfebe7a5fb45eb33af85496"></a><!-- doxytag: member="cimg_library::CImg::_at" ref="a4f28e193bfebe7a5fb45eb33af85496" args="(const int off)" --> 288.430 +T & </td><td class="memItemRight" valign="bottom"><b>_at</b> (const int off)</td></tr> 288.431 + 288.432 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05c25b71a374a15a500c4a0c322ba5a7"></a><!-- doxytag: member="cimg_library::CImg::_at" ref="05c25b71a374a15a500c4a0c322ba5a7" args="(const int off) const " --> 288.433 +T </td><td class="memItemRight" valign="bottom"><b>_at</b> (const int off) const </td></tr> 288.434 + 288.435 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4134a3af3c88f595266ad70697678958"></a><!-- doxytag: member="cimg_library::CImg::atXYZV" ref="4134a3af3c88f595266ad70697678958" args="(const int x, const int y, const int z, const int v, const T out_val)" --> 288.436 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4134a3af3c88f595266ad70697678958">atXYZV</a> (const int x, const int y, const int z, const int v, const T out_val)</td></tr> 288.437 + 288.438 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Dirichlet boundary conditions. <br></td></tr> 288.439 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44fd5019da72ac15c52075baa94ef094"></a><!-- doxytag: member="cimg_library::CImg::atXYZV" ref="44fd5019da72ac15c52075baa94ef094" args="(const int x, const int y, const int z, const int v, const T out_val) const " --> 288.440 +T </td><td class="memItemRight" valign="bottom"><b>atXYZV</b> (const int x, const int y, const int z, const int v, const T out_val) const </td></tr> 288.441 + 288.442 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bcfb692a3e43747bc1d9c1da63e13be8"></a><!-- doxytag: member="cimg_library::CImg::atXYZV" ref="bcfb692a3e43747bc1d9c1da63e13be8" args="(const int x, const int y, const int z, const int v)" --> 288.443 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bcfb692a3e43747bc1d9c1da63e13be8">atXYZV</a> (const int x, const int y, const int z, const int v)</td></tr> 288.444 + 288.445 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Neumann boundary conditions. <br></td></tr> 288.446 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1fc84e117ac98b23ca2fd9b471869e92"></a><!-- doxytag: member="cimg_library::CImg::atXYZV" ref="1fc84e117ac98b23ca2fd9b471869e92" args="(const int x, const int y, const int z, const int v) const " --> 288.447 +T </td><td class="memItemRight" valign="bottom"><b>atXYZV</b> (const int x, const int y, const int z, const int v) const </td></tr> 288.448 + 288.449 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="09557ea193ed29276872554b610455a0"></a><!-- doxytag: member="cimg_library::CImg::_atXYZV" ref="09557ea193ed29276872554b610455a0" args="(const int x, const int y, const int z, const int v)" --> 288.450 +T & </td><td class="memItemRight" valign="bottom"><b>_atXYZV</b> (const int x, const int y, const int z, const int v)</td></tr> 288.451 + 288.452 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0cd5a049c20a5e7133ae3641d4b50998"></a><!-- doxytag: member="cimg_library::CImg::_atXYZV" ref="0cd5a049c20a5e7133ae3641d4b50998" args="(const int x, const int y, const int z, const int v) const " --> 288.453 +T </td><td class="memItemRight" valign="bottom"><b>_atXYZV</b> (const int x, const int y, const int z, const int v) const </td></tr> 288.454 + 288.455 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e932796fa97d382efd30537165b48257"></a><!-- doxytag: member="cimg_library::CImg::atXYZ" ref="e932796fa97d382efd30537165b48257" args="(const int x, const int y, const int z, const int v, const T out_val)" --> 288.456 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e932796fa97d382efd30537165b48257">atXYZ</a> (const int x, const int y, const int z, const int v, const T out_val)</td></tr> 288.457 + 288.458 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Dirichlet boundary conditions for the three first coordinates (<code>x</code>,<code>y</code>,<code>z</code>). <br></td></tr> 288.459 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a50f8ad8d3b705430b0bc3c5d186bd81"></a><!-- doxytag: member="cimg_library::CImg::atXYZ" ref="a50f8ad8d3b705430b0bc3c5d186bd81" args="(const int x, const int y, const int z, const int v, const T out_val) const " --> 288.460 +T </td><td class="memItemRight" valign="bottom"><b>atXYZ</b> (const int x, const int y, const int z, const int v, const T out_val) const </td></tr> 288.461 + 288.462 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="341b51537773e271b846aa98bd24284f"></a><!-- doxytag: member="cimg_library::CImg::atXYZ" ref="341b51537773e271b846aa98bd24284f" args="(const int x, const int y, const int z, const int v=0)" --> 288.463 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#341b51537773e271b846aa98bd24284f">atXYZ</a> (const int x, const int y, const int z, const int v=0)</td></tr> 288.464 + 288.465 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Neumann boundary conditions for the three first coordinates (<code>x</code>,<code>y</code>,<code>z</code>). <br></td></tr> 288.466 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de76643f1d04019806d748ce5fbd8a18"></a><!-- doxytag: member="cimg_library::CImg::atXYZ" ref="de76643f1d04019806d748ce5fbd8a18" args="(const int x, const int y, const int z, const int v=0) const " --> 288.467 +T </td><td class="memItemRight" valign="bottom"><b>atXYZ</b> (const int x, const int y, const int z, const int v=0) const </td></tr> 288.468 + 288.469 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f89d5a80309a8533f83602d8dc9d9659"></a><!-- doxytag: member="cimg_library::CImg::_atXYZ" ref="f89d5a80309a8533f83602d8dc9d9659" args="(const int x, const int y, const int z, const int v=0)" --> 288.470 +T & </td><td class="memItemRight" valign="bottom"><b>_atXYZ</b> (const int x, const int y, const int z, const int v=0)</td></tr> 288.471 + 288.472 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8b51fbbf8722a3002e4084b5aeeab48d"></a><!-- doxytag: member="cimg_library::CImg::_atXYZ" ref="8b51fbbf8722a3002e4084b5aeeab48d" args="(const int x, const int y, const int z, const int v=0) const " --> 288.473 +T </td><td class="memItemRight" valign="bottom"><b>_atXYZ</b> (const int x, const int y, const int z, const int v=0) const </td></tr> 288.474 + 288.475 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cf9f44c9b6025bc3ffdcf0ffffa85e01"></a><!-- doxytag: member="cimg_library::CImg::atXY" ref="cf9f44c9b6025bc3ffdcf0ffffa85e01" args="(const int x, const int y, const int z, const int v, const T out_val)" --> 288.476 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cf9f44c9b6025bc3ffdcf0ffffa85e01">atXY</a> (const int x, const int y, const int z, const int v, const T out_val)</td></tr> 288.477 + 288.478 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Dirichlet boundary conditions for the two first coordinates (<code>x</code>,<code>y</code>). <br></td></tr> 288.479 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19d38a4e743c2542a1e9d05d5ffb019a"></a><!-- doxytag: member="cimg_library::CImg::atXY" ref="19d38a4e743c2542a1e9d05d5ffb019a" args="(const int x, const int y, const int z, const int v, const T out_val) const " --> 288.480 +T </td><td class="memItemRight" valign="bottom"><b>atXY</b> (const int x, const int y, const int z, const int v, const T out_val) const </td></tr> 288.481 + 288.482 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3f153bea6d9f54e83f37334cc4d7bd4b"></a><!-- doxytag: member="cimg_library::CImg::atXY" ref="3f153bea6d9f54e83f37334cc4d7bd4b" args="(const int x, const int y, const int z=0, const int v=0)" --> 288.483 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3f153bea6d9f54e83f37334cc4d7bd4b">atXY</a> (const int x, const int y, const int z=0, const int v=0)</td></tr> 288.484 + 288.485 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Neumann boundary conditions for the two first coordinates (<code>x</code>,<code>y</code>). <br></td></tr> 288.486 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0f107465041862bef02131780d664cf3"></a><!-- doxytag: member="cimg_library::CImg::atXY" ref="0f107465041862bef02131780d664cf3" args="(const int x, const int y, const int z=0, const int v=0) const " --> 288.487 +T </td><td class="memItemRight" valign="bottom"><b>atXY</b> (const int x, const int y, const int z=0, const int v=0) const </td></tr> 288.488 + 288.489 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67d7c7d12b5461bbabf0b15b2d864c20"></a><!-- doxytag: member="cimg_library::CImg::_atXY" ref="67d7c7d12b5461bbabf0b15b2d864c20" args="(const int x, const int y, const int z=0, const int v=0)" --> 288.490 +T & </td><td class="memItemRight" valign="bottom"><b>_atXY</b> (const int x, const int y, const int z=0, const int v=0)</td></tr> 288.491 + 288.492 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="03f59301f596ce90a54a4c1faf041039"></a><!-- doxytag: member="cimg_library::CImg::_atXY" ref="03f59301f596ce90a54a4c1faf041039" args="(const int x, const int y, const int z=0, const int v=0) const " --> 288.493 +T </td><td class="memItemRight" valign="bottom"><b>_atXY</b> (const int x, const int y, const int z=0, const int v=0) const </td></tr> 288.494 + 288.495 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f91627d8f0ebe52d83d5cc087ead017d"></a><!-- doxytag: member="cimg_library::CImg::atX" ref="f91627d8f0ebe52d83d5cc087ead017d" args="(const int x, const int y, const int z, const int v, const T out_val)" --> 288.496 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f91627d8f0ebe52d83d5cc087ead017d">atX</a> (const int x, const int y, const int z, const int v, const T out_val)</td></tr> 288.497 + 288.498 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Dirichlet boundary conditions for the first coordinates (<code>x</code>). <br></td></tr> 288.499 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4449ae0218af18468ee4adcb3fcd1588"></a><!-- doxytag: member="cimg_library::CImg::atX" ref="4449ae0218af18468ee4adcb3fcd1588" args="(const int x, const int y, const int z, const int v, const T out_val) const " --> 288.500 +T </td><td class="memItemRight" valign="bottom"><b>atX</b> (const int x, const int y, const int z, const int v, const T out_val) const </td></tr> 288.501 + 288.502 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6b101e24bec2ee98802ae86055d7ca90"></a><!-- doxytag: member="cimg_library::CImg::atX" ref="6b101e24bec2ee98802ae86055d7ca90" args="(const int x, const int y=0, const int z=0, const int v=0)" --> 288.503 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6b101e24bec2ee98802ae86055d7ca90">atX</a> (const int x, const int y=0, const int z=0, const int v=0)</td></tr> 288.504 + 288.505 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value with Neumann boundary conditions for the first coordinates (<code>x</code>). <br></td></tr> 288.506 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3891dbb7e480616afa4f45a791d8fad0"></a><!-- doxytag: member="cimg_library::CImg::atX" ref="3891dbb7e480616afa4f45a791d8fad0" args="(const int x, const int y=0, const int z=0, const int v=0) const " --> 288.507 +T </td><td class="memItemRight" valign="bottom"><b>atX</b> (const int x, const int y=0, const int z=0, const int v=0) const </td></tr> 288.508 + 288.509 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1cf57f5ba4fe267a6a22fe80cdea21d8"></a><!-- doxytag: member="cimg_library::CImg::_atX" ref="1cf57f5ba4fe267a6a22fe80cdea21d8" args="(const int x, const int y=0, const int z=0, const int v=0)" --> 288.510 +T & </td><td class="memItemRight" valign="bottom"><b>_atX</b> (const int x, const int y=0, const int z=0, const int v=0)</td></tr> 288.511 + 288.512 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d6b948a4a473f1f4ab21b2dbd458a13"></a><!-- doxytag: member="cimg_library::CImg::_atX" ref="4d6b948a4a473f1f4ab21b2dbd458a13" args="(const int x, const int y=0, const int z=0, const int v=0) const " --> 288.513 +T </td><td class="memItemRight" valign="bottom"><b>_atX</b> (const int x, const int y=0, const int z=0, const int v=0) const </td></tr> 288.514 + 288.515 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ad85b5a6a622470a8c36d31e5e46915"></a><!-- doxytag: member="cimg_library::CImg::linear_atXYZV" ref="2ad85b5a6a622470a8c36d31e5e46915" args="(const float fx, const float fy, const float fz, const float fv, const T out_val) const " --> 288.516 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2ad85b5a6a622470a8c36d31e5e46915">linear_atXYZV</a> (const float fx, const float fy, const float fz, const float fv, const T out_val) const </td></tr> 288.517 + 288.518 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Dirichlet boundary conditions. <br></td></tr> 288.519 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="789464cda2b6dc5f792e790d1398e353"></a><!-- doxytag: member="cimg_library::CImg::linear_atXYZV" ref="789464cda2b6dc5f792e790d1398e353" args="(const float fx, const float fy=0, const float fz=0, const float fv=0) const " --> 288.520 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#789464cda2b6dc5f792e790d1398e353">linear_atXYZV</a> (const float fx, const float fy=0, const float fz=0, const float fv=0) const </td></tr> 288.521 + 288.522 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Neumann boundary conditions. <br></td></tr> 288.523 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d611b0f4afc8dc6598c141eb7e07d10"></a><!-- doxytag: member="cimg_library::CImg::_linear_atXYZV" ref="2d611b0f4afc8dc6598c141eb7e07d10" args="(const float fx, const float fy=0, const float fz=0, const float fv=0) const " --> 288.524 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_linear_atXYZV</b> (const float fx, const float fy=0, const float fz=0, const float fv=0) const </td></tr> 288.525 + 288.526 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a070b89df5e2ff8b70e2d74cc498d622"></a><!-- doxytag: member="cimg_library::CImg::linear_atXYZ" ref="a070b89df5e2ff8b70e2d74cc498d622" args="(const float fx, const float fy, const float fz, const int v, const T out_val) const " --> 288.527 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a070b89df5e2ff8b70e2d74cc498d622">linear_atXYZ</a> (const float fx, const float fy, const float fz, const int v, const T out_val) const </td></tr> 288.528 + 288.529 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Dirichlet boundary conditions (first three coordinates). <br></td></tr> 288.530 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d78999f0afa9e61068fb7ab0a4dc490"></a><!-- doxytag: member="cimg_library::CImg::linear_atXYZ" ref="2d78999f0afa9e61068fb7ab0a4dc490" args="(const float fx, const float fy=0, const float fz=0, const int v=0) const " --> 288.531 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2d78999f0afa9e61068fb7ab0a4dc490">linear_atXYZ</a> (const float fx, const float fy=0, const float fz=0, const int v=0) const </td></tr> 288.532 + 288.533 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Neumann boundary conditions (first three coordinates). <br></td></tr> 288.534 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec2c8db234019bb1d3d662634565caff"></a><!-- doxytag: member="cimg_library::CImg::_linear_atXYZ" ref="ec2c8db234019bb1d3d662634565caff" args="(const float fx, const float fy=0, const float fz=0, const int v=0) const " --> 288.535 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_linear_atXYZ</b> (const float fx, const float fy=0, const float fz=0, const int v=0) const </td></tr> 288.536 + 288.537 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5b57f219b9ab6a0c7fe76f10c9ced45c"></a><!-- doxytag: member="cimg_library::CImg::linear_atXY" ref="5b57f219b9ab6a0c7fe76f10c9ced45c" args="(const float fx, const float fy, const int z, const int v, const T out_val) const " --> 288.538 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5b57f219b9ab6a0c7fe76f10c9ced45c">linear_atXY</a> (const float fx, const float fy, const int z, const int v, const T out_val) const </td></tr> 288.539 + 288.540 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Dirichlet boundary conditions (first two coordinates). <br></td></tr> 288.541 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d92b4d96f12418e018fb95a5f3f2bc34"></a><!-- doxytag: member="cimg_library::CImg::linear_atXY" ref="d92b4d96f12418e018fb95a5f3f2bc34" args="(const float fx, const float fy, const int z=0, const int v=0) const " --> 288.542 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d92b4d96f12418e018fb95a5f3f2bc34">linear_atXY</a> (const float fx, const float fy, const int z=0, const int v=0) const </td></tr> 288.543 + 288.544 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Neumann boundary conditions (first two coordinates). <br></td></tr> 288.545 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="689228616e27ff3a12af196e40c8995b"></a><!-- doxytag: member="cimg_library::CImg::_linear_atXY" ref="689228616e27ff3a12af196e40c8995b" args="(const float fx, const float fy, const int z=0, const int v=0) const " --> 288.546 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_linear_atXY</b> (const float fx, const float fy, const int z=0, const int v=0) const </td></tr> 288.547 + 288.548 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f152ffcc0cc8f55cda0d3199b97c0032"></a><!-- doxytag: member="cimg_library::CImg::linear_atX" ref="f152ffcc0cc8f55cda0d3199b97c0032" args="(const float fx, const int y, const int z, const int v, const T out_val) const " --> 288.549 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f152ffcc0cc8f55cda0d3199b97c0032">linear_atX</a> (const float fx, const int y, const int z, const int v, const T out_val) const </td></tr> 288.550 + 288.551 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Dirichlet boundary conditions (first coordinate). <br></td></tr> 288.552 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2a257b407961f2e475980136b95e2c7d"></a><!-- doxytag: member="cimg_library::CImg::linear_atX" ref="2a257b407961f2e475980136b95e2c7d" args="(const float fx, const int y=0, const int z=0, const int v=0) const " --> 288.553 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2a257b407961f2e475980136b95e2c7d">linear_atX</a> (const float fx, const int y=0, const int z=0, const int v=0) const </td></tr> 288.554 + 288.555 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using linear interpolation and Neumann boundary conditions (first coordinate). <br></td></tr> 288.556 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1066d16dd50b527962e0c7f6e68e719a"></a><!-- doxytag: member="cimg_library::CImg::_linear_atX" ref="1066d16dd50b527962e0c7f6e68e719a" args="(const float fx, const int y=0, const int z=0, const int v=0) const " --> 288.557 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_linear_atX</b> (const float fx, const int y=0, const int z=0, const int v=0) const </td></tr> 288.558 + 288.559 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9178dbccd4a22a5e2a3b41c243244eb8"></a><!-- doxytag: member="cimg_library::CImg::cubic_atXY" ref="9178dbccd4a22a5e2a3b41c243244eb8" args="(const float fx, const float fy, const int z, const int v, const T out_val) const " --> 288.560 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9178dbccd4a22a5e2a3b41c243244eb8">cubic_atXY</a> (const float fx, const float fy, const int z, const int v, const T out_val) const </td></tr> 288.561 + 288.562 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using cubic interpolation and Dirichlet boundary conditions. <br></td></tr> 288.563 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8e7a4ccee533d36ad0f156ecd6346c4c"></a><!-- doxytag: member="cimg_library::CImg::cubic_atXY" ref="8e7a4ccee533d36ad0f156ecd6346c4c" args="(const float fx, const float fy, const int z=0, const int v=0) const " --> 288.564 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8e7a4ccee533d36ad0f156ecd6346c4c">cubic_atXY</a> (const float fx, const float fy, const int z=0, const int v=0) const </td></tr> 288.565 + 288.566 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using cubic interpolation and Neumann boundary conditions. <br></td></tr> 288.567 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="244ac624497cc8050986562d66c0d2d1"></a><!-- doxytag: member="cimg_library::CImg::_cubic_atXY" ref="244ac624497cc8050986562d66c0d2d1" args="(const float fx, const float fy, const int z=0, const int v=0) const " --> 288.568 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_cubic_atXY</b> (const float fx, const float fy, const int z=0, const int v=0) const </td></tr> 288.569 + 288.570 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7a303858f458aad58535cbf2f5ca2326"></a><!-- doxytag: member="cimg_library::CImg::cubic_atX" ref="7a303858f458aad58535cbf2f5ca2326" args="(const float fx, const int y, const int z, const int v, const T out_val) const " --> 288.571 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7a303858f458aad58535cbf2f5ca2326">cubic_atX</a> (const float fx, const int y, const int z, const int v, const T out_val) const </td></tr> 288.572 + 288.573 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using cubic interpolation and Dirichlet boundary conditions (first coordinates). <br></td></tr> 288.574 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd446fb86260db4fd990fdab18e61181"></a><!-- doxytag: member="cimg_library::CImg::cubic_atX" ref="fd446fb86260db4fd990fdab18e61181" args="(const float fx, const int y=0, const int z=0, const int v=0) const " --> 288.575 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fd446fb86260db4fd990fdab18e61181">cubic_atX</a> (const float fx, const int y=0, const int z=0, const int v=0) const </td></tr> 288.576 + 288.577 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a pixel value using cubic interpolation and Neumann boundary conditions (first coordinates). <br></td></tr> 288.578 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c6b079ef78bd63a892316187f38aa02"></a><!-- doxytag: member="cimg_library::CImg::_cubic_atX" ref="5c6b079ef78bd63a892316187f38aa02" args="(const float fx, const int y=0, const int z=0, const int v=0) const " --> 288.579 +Tfloat </td><td class="memItemRight" valign="bottom"><b>_cubic_atX</b> (const float fx, const int y=0, const int z=0, const int v=0) const </td></tr> 288.580 + 288.581 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="776849281c40a0a9042b7275c4622e70"></a><!-- doxytag: member="cimg_library::CImg::set_linear_atXYZ" ref="776849281c40a0a9042b7275c4622e70" args="(const T &val, const float fx, const float fy=0, const float fz=0, const int v=0, const bool add=false)" --> 288.582 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#776849281c40a0a9042b7275c4622e70">set_linear_atXYZ</a> (const T &val, const float fx, const float fy=0, const float fz=0, const int v=0, const bool add=false)</td></tr> 288.583 + 288.584 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set a pixel value, with 3D float coordinates, using linear interpolation. <br></td></tr> 288.585 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="59a194a8079b3241131773fa724ee1c5"></a><!-- doxytag: member="cimg_library::CImg::set_linear_atXY" ref="59a194a8079b3241131773fa724ee1c5" args="(const T &val, const float fx, const float fy=0, const int z=0, const int v=0, const bool add=false)" --> 288.586 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#59a194a8079b3241131773fa724ee1c5">set_linear_atXY</a> (const T &val, const float fx, const float fy=0, const int z=0, const int v=0, const bool add=false)</td></tr> 288.587 + 288.588 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set a pixel value, with 2D float coordinates, using linear interpolation. <br></td></tr> 288.589 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="01164a5a9ce47a184c451d53f145cf44"></a><!-- doxytag: member="cimg_library::CImg::min" ref="01164a5a9ce47a184c451d53f145cf44" args="() const " --> 288.590 +const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#01164a5a9ce47a184c451d53f145cf44">min</a> () const </td></tr> 288.591 + 288.592 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the minimum pixel value of the instance image. <br></td></tr> 288.593 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4dfdacede15a60eb00a588a9f3d4839a"></a><!-- doxytag: member="cimg_library::CImg::min" ref="4dfdacede15a60eb00a588a9f3d4839a" args="()" --> 288.594 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4dfdacede15a60eb00a588a9f3d4839a">min</a> ()</td></tr> 288.595 + 288.596 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the minimum pixel value of the instance image. <br></td></tr> 288.597 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f1a616293569fbda2a769b612c86a8ab"></a><!-- doxytag: member="cimg_library::CImg::max" ref="f1a616293569fbda2a769b612c86a8ab" args="() const " --> 288.598 +const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f1a616293569fbda2a769b612c86a8ab">max</a> () const </td></tr> 288.599 + 288.600 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the maximum pixel value of the instance image. <br></td></tr> 288.601 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="301155b753f6ab13ff25f164f389e142"></a><!-- doxytag: member="cimg_library::CImg::max" ref="301155b753f6ab13ff25f164f389e142" args="()" --> 288.602 +T & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#301155b753f6ab13ff25f164f389e142">max</a> ()</td></tr> 288.603 + 288.604 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the maximum pixel value of the instance image. <br></td></tr> 288.605 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="37e03ef1b2ce96e5f90760889bad944e"></a><!-- doxytag: member="cimg_library::CImg::minmax" ref="37e03ef1b2ce96e5f90760889bad944e" args="(t &max_val) const " --> 288.606 +template<typename t > </td></tr> 288.607 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#37e03ef1b2ce96e5f90760889bad944e">minmax</a> (t &max_val) const </td></tr> 288.608 + 288.609 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the minimum pixel value and return also the maximum pixel value. <br></td></tr> 288.610 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4a7d077d1b5998ba187c7ee06f77e00c"></a><!-- doxytag: member="cimg_library::CImg::minmax" ref="4a7d077d1b5998ba187c7ee06f77e00c" args="(t &max_val)" --> 288.611 +template<typename t > </td></tr> 288.612 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4a7d077d1b5998ba187c7ee06f77e00c">minmax</a> (t &max_val)</td></tr> 288.613 + 288.614 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the minimum pixel value and return also the maximum pixel value. <br></td></tr> 288.615 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b503599cdf7b7a90faa02346e9b0f45d"></a><!-- doxytag: member="cimg_library::CImg::maxmin" ref="b503599cdf7b7a90faa02346e9b0f45d" args="(t &min_val) const " --> 288.616 +template<typename t > </td></tr> 288.617 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b503599cdf7b7a90faa02346e9b0f45d">maxmin</a> (t &min_val) const </td></tr> 288.618 + 288.619 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the maximum pixel value and return also the minimum pixel value. <br></td></tr> 288.620 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0d3facf4dd7b7bda082e0181205f3c83"></a><!-- doxytag: member="cimg_library::CImg::maxmin" ref="0d3facf4dd7b7bda082e0181205f3c83" args="(t &min_val)" --> 288.621 +template<typename t > </td></tr> 288.622 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0d3facf4dd7b7bda082e0181205f3c83">maxmin</a> (t &min_val)</td></tr> 288.623 + 288.624 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to the maximum pixel value and return also the minimum pixel value. <br></td></tr> 288.625 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="77d222b4837c78aad604f3f0b5f1409c"></a><!-- doxytag: member="cimg_library::CImg::sum" ref="77d222b4837c78aad604f3f0b5f1409c" args="() const " --> 288.626 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#77d222b4837c78aad604f3f0b5f1409c">sum</a> () const </td></tr> 288.627 + 288.628 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the sum of all the pixel values in an image. <br></td></tr> 288.629 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15da7eecd10e53fa76b99379871b1c62"></a><!-- doxytag: member="cimg_library::CImg::mean" ref="15da7eecd10e53fa76b99379871b1c62" args="() const " --> 288.630 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#15da7eecd10e53fa76b99379871b1c62">mean</a> () const </td></tr> 288.631 + 288.632 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the mean pixel value of the instance image. <br></td></tr> 288.633 +<tr><td class="memItemLeft" nowrap align="right" valign="top">Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#641a93939e495eec1749bb68197996ac">variance</a> (const unsigned int variance_method=1) const </td></tr> 288.634 + 288.635 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the variance of the image. <a href="#641a93939e495eec1749bb68197996ac"></a><br></td></tr> 288.636 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="42b5c7baa4cd8ce360cea44a4e013753"></a><!-- doxytag: member="cimg_library::CImg::variancemean" ref="42b5c7baa4cd8ce360cea44a4e013753" args="(const unsigned int variance_method, t &mean) const " --> 288.637 +template<typename t > </td></tr> 288.638 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Tfloat </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#42b5c7baa4cd8ce360cea44a4e013753">variancemean</a> (const unsigned int variance_method, t &mean) const </td></tr> 288.639 + 288.640 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the variance and the mean of the image. <br></td></tr> 288.641 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93d6b348517590d019471ddeeb3e938b"></a><!-- doxytag: member="cimg_library::CImg::kth_smallest" ref="93d6b348517590d019471ddeeb3e938b" args="(const unsigned int k) const " --> 288.642 +T </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#93d6b348517590d019471ddeeb3e938b">kth_smallest</a> (const unsigned int k) const </td></tr> 288.643 + 288.644 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the kth smallest element of the image. <br></td></tr> 288.645 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af59bb4a64bfcba6082253a48a88c9d6"></a><!-- doxytag: member="cimg_library::CImg::stats" ref="af59bb4a64bfcba6082253a48a88c9d6" args="(const unsigned int variance_method=1)" --> 288.646 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#af59bb4a64bfcba6082253a48a88c9d6">stats</a> (const unsigned int variance_method=1)</td></tr> 288.647 + 288.648 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute a statistics vector (min,max,mean,variance,xmin,ymin,zmin,vmin,xmax,ymax,zmax,vmax). <br></td></tr> 288.649 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e013418464582ff6a70adfe74148935c"></a><!-- doxytag: member="cimg_library::CImg::get_stats" ref="e013418464582ff6a70adfe74148935c" args="(const unsigned int variance_method=1) const " --> 288.650 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_stats</b> (const unsigned int variance_method=1) const </td></tr> 288.651 + 288.652 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a74ed6a750d63ac3effff5edc06ad62f"></a><!-- doxytag: member="cimg_library::CImg::median" ref="a74ed6a750d63ac3effff5edc06ad62f" args="() const " --> 288.653 +T </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a74ed6a750d63ac3effff5edc06ad62f">median</a> () const </td></tr> 288.654 + 288.655 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the median value of the image. <br></td></tr> 288.656 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1af0c1920f11fdc01c71ed0d7117ab0c"></a><!-- doxytag: member="cimg_library::CImg::MSE" ref="1af0c1920f11fdc01c71ed0d7117ab0c" args="(const CImg< t > &img) const " --> 288.657 +template<typename t > </td></tr> 288.658 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Tfloat </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1af0c1920f11fdc01c71ed0d7117ab0c">MSE</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.659 + 288.660 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the MSE (Mean-Squared Error) between two images. <br></td></tr> 288.661 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f08ee23c8bdb4913f792676f385161ea"></a><!-- doxytag: member="cimg_library::CImg::PSNR" ref="f08ee23c8bdb4913f792676f385161ea" args="(const CImg< t > &img, const Tfloat valmax=(Tfloat) 255) const " --> 288.662 +template<typename t > </td></tr> 288.663 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Tfloat </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f08ee23c8bdb4913f792676f385161ea">PSNR</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const Tfloat valmax=(Tfloat) 255) const </td></tr> 288.664 + 288.665 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the PSNR between two images. <br></td></tr> 288.666 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a5725c18e3adcb9fda07885b076ee971"></a><!-- doxytag: member="cimg_library::CImg::trace" ref="a5725c18e3adcb9fda07885b076ee971" args="() const " --> 288.667 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a5725c18e3adcb9fda07885b076ee971">trace</a> () const </td></tr> 288.668 + 288.669 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the trace of the image, viewed as a matrix. <br></td></tr> 288.670 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="99a8995311ea26eb1956c8a01a7e034f"></a><!-- doxytag: member="cimg_library::CImg::dot" ref="99a8995311ea26eb1956c8a01a7e034f" args="(const CImg< t > &img) const " --> 288.671 +template<typename t > </td></tr> 288.672 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">Tfloat </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#99a8995311ea26eb1956c8a01a7e034f">dot</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.673 + 288.674 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the dot product of the current vector/matrix with the vector/matrix <code>img</code>. <br></td></tr> 288.675 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2363871a4c66908993cc2e2515eba612"></a><!-- doxytag: member="cimg_library::CImg::det" ref="2363871a4c66908993cc2e2515eba612" args="() const " --> 288.676 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2363871a4c66908993cc2e2515eba612">det</a> () const </td></tr> 288.677 + 288.678 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the determinant of the image, viewed as a matrix. <br></td></tr> 288.679 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7de8144e906d2610c4a011056e239595"></a><!-- doxytag: member="cimg_library::CImg::norm" ref="7de8144e906d2610c4a011056e239595" args="(const int norm_type=2) const " --> 288.680 +Tfloat </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7de8144e906d2610c4a011056e239595">norm</a> (const int norm_type=2) const </td></tr> 288.681 + 288.682 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the norm of the current vector/matrix. <code>ntype</code> = norm type (0=L2, 1=L1, -1=Linf). <br></td></tr> 288.683 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d70c422e3e75e6cd810358486387300"></a><!-- doxytag: member="cimg_library::CImg::value_string" ref="2d70c422e3e75e6cd810358486387300" args="(const char separator=',', const unsigned int max_size=0) const " --> 288.684 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< charT > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2d70c422e3e75e6cd810358486387300">value_string</a> (const char separator=',', const unsigned int max_size=0) const </td></tr> 288.685 + 288.686 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a C-string containing the values of the instance image. <br></td></tr> 288.687 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6996328dda8169890a02942e19b6d445">print</a> (const char *title=0, const bool display_stats=true) const </td></tr> 288.688 + 288.689 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display informations about the image on the standard error output. <a href="#6996328dda8169890a02942e19b6d445"></a><br></td></tr> 288.690 +<tr><td class="memItemLeft" nowrap align="right" valign="top">static const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b7d3a61366cf906c03af6c8fa13309a7">pixel_type</a> ()</td></tr> 288.691 + 288.692 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the type of the pixel values. <a href="#b7d3a61366cf906c03af6c8fa13309a7"></a><br></td></tr> 288.693 +<tr><td colspan="2"><br><h2>Usual Image Transformations</h2></td></tr> 288.694 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#494a1e1424510af07e705dfe9b5f78bd">fill</a> (const T val)</td></tr> 288.695 + 288.696 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill an image by a value <code>val</code>. <a href="#494a1e1424510af07e705dfe9b5f78bd"></a><br></td></tr> 288.697 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="07b87161f045a75bb879ce59883f545d"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="07b87161f045a75bb879ce59883f545d" args="(const T val) const " --> 288.698 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val) const </td></tr> 288.699 + 288.700 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1017563288be5d5ff23f70a91ef519df"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="1017563288be5d5ff23f70a91ef519df" args="(const T val0, const T val1)" --> 288.701 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1017563288be5d5ff23f70a91ef519df">fill</a> (const T val0, const T val1)</td></tr> 288.702 + 288.703 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially all pixel values with values <em>val0</em> and <em>val1</em> respectively. <br></td></tr> 288.704 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="024f8e61837ce84d76e84cbf1f1ad385"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="024f8e61837ce84d76e84cbf1f1ad385" args="(const T val0, const T val1) const " --> 288.705 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1) const </td></tr> 288.706 + 288.707 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="851853ede03c4fbd99347777a0250b5a"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="851853ede03c4fbd99347777a0250b5a" args="(const T val0, const T val1, const T val2)" --> 288.708 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#851853ede03c4fbd99347777a0250b5a">fill</a> (const T val0, const T val1, const T val2)</td></tr> 288.709 + 288.710 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially all pixel values with values <em>val0</em> and <em>val1</em> and <em>val2</em>. <br></td></tr> 288.711 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="529a242cfece2f3a36fc2b014a62ffcf"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="529a242cfece2f3a36fc2b014a62ffcf" args="(const T val0, const T val1, const T val2) const " --> 288.712 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2) const </td></tr> 288.713 + 288.714 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9bd6346aafacc83a623bbee841b2f590"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="9bd6346aafacc83a623bbee841b2f590" args="(const T val0, const T val1, const T val2, const T val3)" --> 288.715 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9bd6346aafacc83a623bbee841b2f590">fill</a> (const T val0, const T val1, const T val2, const T val3)</td></tr> 288.716 + 288.717 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially all pixel values with values <em>val0</em> and <em>val1</em> and <em>val2</em> and <em>val3</em>. <br></td></tr> 288.718 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e3043c5366b91e0d4a5d7fdbf2c208ae"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="e3043c5366b91e0d4a5d7fdbf2c208ae" args="(const T val0, const T val1, const T val2, const T val3) const " --> 288.719 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3) const </td></tr> 288.720 + 288.721 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7cb799be5da87f703ac3c949701c98de"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="7cb799be5da87f703ac3c949701c98de" args="(const T val0, const T val1, const T val2, const T val3, const T val4)" --> 288.722 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7cb799be5da87f703ac3c949701c98de">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4)</td></tr> 288.723 + 288.724 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially all pixel values with values <em>val0</em> and <em>val1</em> and <em>val2</em> and <em>val3</em> and <em>val4</em>. <br></td></tr> 288.725 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a78cc959547810c62a0ff778d807478f"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="a78cc959547810c62a0ff778d807478f" args="(const T val0, const T val1, const T val2, const T val3, const T val4) const " --> 288.726 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4) const </td></tr> 288.727 + 288.728 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1aa659d7e3dbb1863a32b4e326c3b752"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="1aa659d7e3dbb1863a32b4e326c3b752" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5)" --> 288.729 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1aa659d7e3dbb1863a32b4e326c3b752">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5)</td></tr> 288.730 + 288.731 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially all pixel values with values <em>val0</em> and <em>val1</em> and <em>val2</em> and <em>val3</em> and <em>val4</em> and <em>val5</em>. <br></td></tr> 288.732 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e353f85bf2328a0fa56c9daa7060917"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="4e353f85bf2328a0fa56c9daa7060917" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5) const " --> 288.733 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5) const </td></tr> 288.734 + 288.735 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a9391155ce2b2933a5d65ffbdd2212cb"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="a9391155ce2b2933a5d65ffbdd2212cb" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6)" --> 288.736 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a9391155ce2b2933a5d65ffbdd2212cb">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6)</td></tr> 288.737 + 288.738 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.739 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c9e901faed643c64e2bf75d294d2a85a"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="c9e901faed643c64e2bf75d294d2a85a" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6) const " --> 288.740 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6) const </td></tr> 288.741 + 288.742 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="991cc09680972324915fac9540f9a75d"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="991cc09680972324915fac9540f9a75d" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7)" --> 288.743 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#991cc09680972324915fac9540f9a75d">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7)</td></tr> 288.744 + 288.745 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.746 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="73343678c416b8b6a1a1c8b65da6d40d"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="73343678c416b8b6a1a1c8b65da6d40d" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7) const " --> 288.747 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7) const </td></tr> 288.748 + 288.749 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ebdf4aa9f4ba2901da7ceb8f167ab7e"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="4ebdf4aa9f4ba2901da7ceb8f167ab7e" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8)" --> 288.750 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4ebdf4aa9f4ba2901da7ceb8f167ab7e">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8)</td></tr> 288.751 + 288.752 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.753 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b85f68b65eef7d282f3e804532a34da"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="9b85f68b65eef7d282f3e804532a34da" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8) const " --> 288.754 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8) const </td></tr> 288.755 + 288.756 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ef066fce13f0bb426791b7a507589c3b"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="ef066fce13f0bb426791b7a507589c3b" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9)" --> 288.757 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ef066fce13f0bb426791b7a507589c3b">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9)</td></tr> 288.758 + 288.759 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.760 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5544b158a5a069ed4a315e15c2621f9a"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="5544b158a5a069ed4a315e15c2621f9a" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9) const " --> 288.761 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9) const </td></tr> 288.762 + 288.763 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24eb4c4e80f15a98b956c057cbf5080f"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="24eb4c4e80f15a98b956c057cbf5080f" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10)" --> 288.764 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#24eb4c4e80f15a98b956c057cbf5080f">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10)</td></tr> 288.765 + 288.766 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.767 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d8924215033e173547e5c36752a1fe78"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="d8924215033e173547e5c36752a1fe78" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10) const " --> 288.768 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10) const </td></tr> 288.769 + 288.770 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="922d157e090636af9bce74d4485df06f"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="922d157e090636af9bce74d4485df06f" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11)" --> 288.771 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#922d157e090636af9bce74d4485df06f">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11)</td></tr> 288.772 + 288.773 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.774 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="34f07ae9dc4aadbf62359b3f4c774f4d"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="34f07ae9dc4aadbf62359b3f4c774f4d" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11) const " --> 288.775 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11) const </td></tr> 288.776 + 288.777 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="72227edc72ffbf6cf87298e27b59d9f9"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="72227edc72ffbf6cf87298e27b59d9f9" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12)" --> 288.778 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#72227edc72ffbf6cf87298e27b59d9f9">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12)</td></tr> 288.779 + 288.780 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.781 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5bf3aa89f011dae0ceae96d309907224"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="5bf3aa89f011dae0ceae96d309907224" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12) const " --> 288.782 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12) const </td></tr> 288.783 + 288.784 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b38822d098614f5460f4b596ac18c2c"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="3b38822d098614f5460f4b596ac18c2c" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13)" --> 288.785 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3b38822d098614f5460f4b596ac18c2c">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13)</td></tr> 288.786 + 288.787 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.788 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e29138831e1f74198ba6a1ec6ff4bcb9"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="e29138831e1f74198ba6a1ec6ff4bcb9" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13) const " --> 288.789 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13) const </td></tr> 288.790 + 288.791 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78ebfb8dfadd456f3a03e3c6233a0d35"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="78ebfb8dfadd456f3a03e3c6233a0d35" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14)" --> 288.792 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#78ebfb8dfadd456f3a03e3c6233a0d35">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14)</td></tr> 288.793 + 288.794 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.795 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d4e7a18814eab81add7ec4d9ff4ffb5c"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="d4e7a18814eab81add7ec4d9ff4ffb5c" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14) const " --> 288.796 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14) const </td></tr> 288.797 + 288.798 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29b6f70a91ef14cae3f62fbf1c5a1df2"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="29b6f70a91ef14cae3f62fbf1c5a1df2" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15)" --> 288.799 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#29b6f70a91ef14cae3f62fbf1c5a1df2">fill</a> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15)</td></tr> 288.800 + 288.801 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill sequentially pixel values. <br></td></tr> 288.802 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c8f1208c96bdfdbc421155eaafdedc73"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="c8f1208c96bdfdbc421155eaafdedc73" args="(const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15) const " --> 288.803 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const T val0, const T val1, const T val2, const T val3, const T val4, const T val5, const T val6, const T val7, const T val8, const T val9, const T val10, const T val11, const T val12, const T val13, const T val14, const T val15) const </td></tr> 288.804 + 288.805 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5c1882e211a6b886b891fa402e67042e"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="5c1882e211a6b886b891fa402e67042e" args="(const char *const values, const bool repeat_pattern)" --> 288.806 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5c1882e211a6b886b891fa402e67042e">fill</a> (const char *const values, const bool repeat_pattern)</td></tr> 288.807 + 288.808 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values according to the values found in the specified string. <br></td></tr> 288.809 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c8fa0c481e0f0630a27b237638094086"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="c8fa0c481e0f0630a27b237638094086" args="(const char *const values, const bool repeat_pattern) const " --> 288.810 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_fill</b> (const char *const values, const bool repeat_pattern) const </td></tr> 288.811 + 288.812 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9c032711a98576285c8091beebb447b9"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="9c032711a98576285c8091beebb447b9" args="(const CImg< t > &values, const bool repeat_pattern=true)" --> 288.813 +template<typename t > </td></tr> 288.814 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9c032711a98576285c8091beebb447b9">fill</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &values, const bool repeat_pattern=true)</td></tr> 288.815 + 288.816 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values according to the values found in the specified image. <br></td></tr> 288.817 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="583120c40c4431cd0ef5cf3aee7c5515"></a><!-- doxytag: member="cimg_library::CImg::get_fill" ref="583120c40c4431cd0ef5cf3aee7c5515" args="(const CImg< t > &values, const bool repeat_pattern=true) const " --> 288.818 +template<typename t > </td></tr> 288.819 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_fill</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &values, const bool repeat_pattern=true) const </td></tr> 288.820 + 288.821 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aef4c6886178c6a99c22693f0a2ecd4b"></a><!-- doxytag: member="cimg_library::CImg::fillX" ref="aef4c6886178c6a99c22693f0a2ecd4b" args="(const unsigned int y, const unsigned int z, const unsigned int v, const int a0,...)" --> 288.822 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aef4c6886178c6a99c22693f0a2ecd4b">fillX</a> (const unsigned int y, const unsigned int z, const unsigned int v, const int a0,...)</td></tr> 288.823 + 288.824 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values along the X-axis at the specified pixel position (y,z,v). <br></td></tr> 288.825 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba4523e8f1020dcea00fa5559e48cd70"></a><!-- doxytag: member="cimg_library::CImg::fillX" ref="ba4523e8f1020dcea00fa5559e48cd70" args="(const unsigned int y, const unsigned int z, const unsigned int v, const double a0,...)" --> 288.826 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>fillX</b> (const unsigned int y, const unsigned int z, const unsigned int v, const double a0,...)</td></tr> 288.827 + 288.828 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a220154365b5e2c636d6abeef404fb8"></a><!-- doxytag: member="cimg_library::CImg::fillY" ref="9a220154365b5e2c636d6abeef404fb8" args="(const unsigned int x, const unsigned int z, const unsigned int v, const int a0,...)" --> 288.829 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9a220154365b5e2c636d6abeef404fb8">fillY</a> (const unsigned int x, const unsigned int z, const unsigned int v, const int a0,...)</td></tr> 288.830 + 288.831 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values along the Y-axis at the specified pixel position (x,z,v). <br></td></tr> 288.832 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a373a436fb3543d7f9fcc13b9bf991ad"></a><!-- doxytag: member="cimg_library::CImg::fillY" ref="a373a436fb3543d7f9fcc13b9bf991ad" args="(const unsigned int x, const unsigned int z, const unsigned int v, const double a0,...)" --> 288.833 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>fillY</b> (const unsigned int x, const unsigned int z, const unsigned int v, const double a0,...)</td></tr> 288.834 + 288.835 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7a4a4ad0f756d4b42059ab7579288ad"></a><!-- doxytag: member="cimg_library::CImg::fillZ" ref="b7a4a4ad0f756d4b42059ab7579288ad" args="(const unsigned int x, const unsigned int y, const unsigned int v, const int a0,...)" --> 288.836 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b7a4a4ad0f756d4b42059ab7579288ad">fillZ</a> (const unsigned int x, const unsigned int y, const unsigned int v, const int a0,...)</td></tr> 288.837 + 288.838 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values along the Z-axis at the specified pixel position (x,y,v). <br></td></tr> 288.839 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c032e43b42bf0ac2bebc6204986ac3a"></a><!-- doxytag: member="cimg_library::CImg::fillZ" ref="0c032e43b42bf0ac2bebc6204986ac3a" args="(const unsigned int x, const unsigned int y, const unsigned int v, const double a0,...)" --> 288.840 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>fillZ</b> (const unsigned int x, const unsigned int y, const unsigned int v, const double a0,...)</td></tr> 288.841 + 288.842 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bed160399c0c74349a025a823d1c4e3b"></a><!-- doxytag: member="cimg_library::CImg::fillV" ref="bed160399c0c74349a025a823d1c4e3b" args="(const unsigned int x, const unsigned int y, const unsigned int z, const int a0,...)" --> 288.843 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bed160399c0c74349a025a823d1c4e3b">fillV</a> (const unsigned int x, const unsigned int y, const unsigned int z, const int a0,...)</td></tr> 288.844 + 288.845 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill image values along the V-axis at the specified pixel position (x,y,z). <br></td></tr> 288.846 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="34f29bd4fd5d732ee0c569db9e2fce47"></a><!-- doxytag: member="cimg_library::CImg::fillV" ref="34f29bd4fd5d732ee0c569db9e2fce47" args="(const unsigned int x, const unsigned int y, const unsigned int z, const double a0,...)" --> 288.847 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>fillV</b> (const unsigned int x, const unsigned int y, const unsigned int z, const double a0,...)</td></tr> 288.848 + 288.849 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="447de4206a2c264f2c73e825ada11952"></a><!-- doxytag: member="cimg_library::CImg::normalize" ref="447de4206a2c264f2c73e825ada11952" args="(const T a, const T b)" --> 288.850 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#447de4206a2c264f2c73e825ada11952">normalize</a> (const T a, const T b)</td></tr> 288.851 + 288.852 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Linear normalization of the pixel values between <em>a</em> and <em>b</em>. <br></td></tr> 288.853 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ba0ab686607c97d7b6bb955b2cea6af7"></a><!-- doxytag: member="cimg_library::CImg::get_normalize" ref="ba0ab686607c97d7b6bb955b2cea6af7" args="(const T a, const T b) const " --> 288.854 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_normalize</b> (const T a, const T b) const </td></tr> 288.855 + 288.856 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f8f08d52f945f28fd33737fabaa6286"></a><!-- doxytag: member="cimg_library::CImg::cut" ref="5f8f08d52f945f28fd33737fabaa6286" args="(const T a, const T b)" --> 288.857 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5f8f08d52f945f28fd33737fabaa6286">cut</a> (const T a, const T b)</td></tr> 288.858 + 288.859 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Cut pixel values between <em>a</em> and <em>b</em>. <br></td></tr> 288.860 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5dc22394c809c1ecdf26e1d846df8482"></a><!-- doxytag: member="cimg_library::CImg::get_cut" ref="5dc22394c809c1ecdf26e1d846df8482" args="(const T a, const T b) const " --> 288.861 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_cut</b> (const T a, const T b) const </td></tr> 288.862 + 288.863 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96fb1f65e6aff268da75be5e6adbd1d1"></a><!-- doxytag: member="cimg_library::CImg::quantize" ref="96fb1f65e6aff268da75be5e6adbd1d1" args="(const unsigned int n, const bool keep_range=true)" --> 288.864 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#96fb1f65e6aff268da75be5e6adbd1d1">quantize</a> (const unsigned int n, const bool keep_range=true)</td></tr> 288.865 + 288.866 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Quantize pixel values into <br> 288.867 + levels. <br></td></tr> 288.868 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="17d6434494e46cae475d5d4ced9d7dca"></a><!-- doxytag: member="cimg_library::CImg::get_quantize" ref="17d6434494e46cae475d5d4ced9d7dca" args="(const unsigned int n, const bool keep_range=true) const " --> 288.869 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_quantize</b> (const unsigned int n, const bool keep_range=true) const </td></tr> 288.870 + 288.871 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#411ae06f4b7a9281dbe7ae608e5dadee">threshold</a> (const T value, const bool soft=false, const bool strict=false)</td></tr> 288.872 + 288.873 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Threshold the image. <a href="#411ae06f4b7a9281dbe7ae608e5dadee"></a><br></td></tr> 288.874 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dabb2d45d8c2666ebe4c2c4a4c9ad97f"></a><!-- doxytag: member="cimg_library::CImg::get_threshold" ref="dabb2d45d8c2666ebe4c2c4a4c9ad97f" args="(const T value, const bool soft=false, const bool strict=false) const " --> 288.875 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_threshold</b> (const T value, const bool soft=false, const bool strict=false) const </td></tr> 288.876 + 288.877 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8e890897305eb5c4d2a5664312633819">rotate</a> (const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1)</td></tr> 288.878 + 288.879 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Rotate an image. <a href="#8e890897305eb5c4d2a5664312633819"></a><br></td></tr> 288.880 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e003facae1c082f8409a1a7331ba6b95"></a><!-- doxytag: member="cimg_library::CImg::get_rotate" ref="e003facae1c082f8409a1a7331ba6b95" args="(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1) const " --> 288.881 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_rotate</b> (const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1) const </td></tr> 288.882 + 288.883 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e4b06ab7123208c764f6fe1de4d29a39">rotate</a> (const float angle, const float cx, const float cy, const float zoom, const unsigned int border_conditions=3, const unsigned int interpolation=1)</td></tr> 288.884 + 288.885 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Rotate an image around a center point (<code>cx</code>,<code>cy</code>). <a href="#e4b06ab7123208c764f6fe1de4d29a39"></a><br></td></tr> 288.886 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8522bad57316bb719ef93774fcd77ea"></a><!-- doxytag: member="cimg_library::CImg::get_rotate" ref="e8522bad57316bb719ef93774fcd77ea" args="(const float angle, const float cx, const float cy, const float zoom, const unsigned int border_conditions=3, const unsigned int interpolation=1) const " --> 288.887 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_rotate</b> (const float angle, const float cx, const float cy, const float zoom, const unsigned int border_conditions=3, const unsigned int interpolation=1) const </td></tr> 288.888 + 288.889 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4">resize</a> (const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td></tr> 288.890 + 288.891 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize an image. <a href="#a930a4b0563d7d0794661231310b36c4"></a><br></td></tr> 288.892 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="51767ae18962a8fcce1486b99c6300a4"></a><!-- doxytag: member="cimg_library::CImg::get_resize" ref="51767ae18962a8fcce1486b99c6300a4" args="(const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const " --> 288.893 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_resize</b> (const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const </td></tr> 288.894 + 288.895 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.896 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ed8c4bc86e30f3cc55c46f1329e081a1">resize</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &src, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td></tr> 288.897 + 288.898 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize an image. <a href="#ed8c4bc86e30f3cc55c46f1329e081a1"></a><br></td></tr> 288.899 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5b93412cbba9e1bb87046401ca260394"></a><!-- doxytag: member="cimg_library::CImg::get_resize" ref="5b93412cbba9e1bb87046401ca260394" args="(const CImg< t > &src, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const " --> 288.900 +template<typename t > </td></tr> 288.901 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_resize</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &src, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const </td></tr> 288.902 + 288.903 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cb7831acf038a036edaa9a1b74779054">resize</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const int interpolation_type=1, const int border_condition=-1, const bool center=false)</td></tr> 288.904 + 288.905 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize an image. <a href="#cb7831acf038a036edaa9a1b74779054"></a><br></td></tr> 288.906 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fceda04555f0ccda104fcb0252c266a4"></a><!-- doxytag: member="cimg_library::CImg::get_resize" ref="fceda04555f0ccda104fcb0252c266a4" args="(const CImgDisplay &disp, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const " --> 288.907 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_resize</b> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const int interpolation_type=1, const int border_condition=-1, const bool center=false) const </td></tr> 288.908 + 288.909 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="37dbb62f101c6076db3d4d9f45684b30"></a><!-- doxytag: member="cimg_library::CImg::resize_halfXY" ref="37dbb62f101c6076db3d4d9f45684b30" args="()" --> 288.910 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#37dbb62f101c6076db3d4d9f45684b30">resize_halfXY</a> ()</td></tr> 288.911 + 288.912 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Half-resize an image, using a special optimized filter. <br></td></tr> 288.913 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c5cd0477fd621ffce59489c28690a2a"></a><!-- doxytag: member="cimg_library::CImg::get_resize_halfXY" ref="6c5cd0477fd621ffce59489c28690a2a" args="() const " --> 288.914 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_resize_halfXY</b> () const </td></tr> 288.915 + 288.916 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a2fa295816582cb2e62d530c54533055">resize_doubleXY</a> ()</td></tr> 288.917 + 288.918 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Upscale an image by a factor 2x. <a href="#a2fa295816582cb2e62d530c54533055"></a><br></td></tr> 288.919 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="acadd9bab09792a3b28db2ee23408d5e"></a><!-- doxytag: member="cimg_library::CImg::get_resize_doubleXY" ref="acadd9bab09792a3b28db2ee23408d5e" args="() const " --> 288.920 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_resize_doubleXY</b> () const </td></tr> 288.921 + 288.922 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#64f4be91725b57a74d080b848660676c">resize_tripleXY</a> ()</td></tr> 288.923 + 288.924 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Upscale an image by a factor 3x. <a href="#64f4be91725b57a74d080b848660676c"></a><br></td></tr> 288.925 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83cf33bb78a93d22c12a8ee98b87eff6"></a><!-- doxytag: member="cimg_library::CImg::get_resize_tripleXY" ref="83cf33bb78a93d22c12a8ee98b87eff6" args="() const " --> 288.926 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_resize_tripleXY</b> () const </td></tr> 288.927 + 288.928 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="66128d00d927613ccc0e41cfd03a50fe"></a><!-- doxytag: member="cimg_library::CImg::warp" ref="66128d00d927613ccc0e41cfd03a50fe" args="(const CImg< t > &warp, const bool relative=false, const bool interpolation=true, const unsigned int border_conditions=0)" --> 288.929 +template<typename t > </td></tr> 288.930 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>warp</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &warp, const bool relative=false, const bool interpolation=true, const unsigned int border_conditions=0)</td></tr> 288.931 + 288.932 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="90e8a6b89d67d0153a1fea9d0c2428a0"></a><!-- doxytag: member="cimg_library::CImg::get_warp" ref="90e8a6b89d67d0153a1fea9d0c2428a0" args="(const CImg< t > &warp, const bool relative=false, const bool interpolation=true, const unsigned int border_conditions=0) const " --> 288.933 +template<typename t > </td></tr> 288.934 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_warp</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &warp, const bool relative=false, const bool interpolation=true, const unsigned int border_conditions=0) const </td></tr> 288.935 + 288.936 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b0dd816b2e9e26187367c660c8b7dee5"></a><!-- doxytag: member="cimg_library::CImg::_get_permute_axes" ref="b0dd816b2e9e26187367c660c8b7dee5" args="(const char *permut, const t &) const " --> 288.937 +template<typename t > </td></tr> 288.938 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > </td><td class="memTemplItemRight" valign="bottom"><b>_get_permute_axes</b> (const char *permut, const t &) const </td></tr> 288.939 + 288.940 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f5eac37234edfffffe75770e4a492b15">permute_axes</a> (const char *order)</td></tr> 288.941 + 288.942 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Permute axes order. <a href="#f5eac37234edfffffe75770e4a492b15"></a><br></td></tr> 288.943 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c95ae42561bc289595210b3cdeb8506b"></a><!-- doxytag: member="cimg_library::CImg::get_permute_axes" ref="c95ae42561bc289595210b3cdeb8506b" args="(const char *order) const " --> 288.944 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_permute_axes</b> (const char *order) const </td></tr> 288.945 + 288.946 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1bdd0c686ccaa6a12ff4b69efa5a567"></a><!-- doxytag: member="cimg_library::CImg::invert_endianness" ref="d1bdd0c686ccaa6a12ff4b69efa5a567" args="()" --> 288.947 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d1bdd0c686ccaa6a12ff4b69efa5a567">invert_endianness</a> ()</td></tr> 288.948 + 288.949 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness. <br></td></tr> 288.950 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f19eb9300a3c12c36c80da939062162b"></a><!-- doxytag: member="cimg_library::CImg::get_invert_endianness" ref="f19eb9300a3c12c36c80da939062162b" args="() const " --> 288.951 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_invert_endianness</b> () const </td></tr> 288.952 + 288.953 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91a5e5fd9431ca28eaeee0ea03419ab0"></a><!-- doxytag: member="cimg_library::CImg::mirror" ref="91a5e5fd9431ca28eaeee0ea03419ab0" args="(const char axis)" --> 288.954 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#91a5e5fd9431ca28eaeee0ea03419ab0">mirror</a> (const char axis)</td></tr> 288.955 + 288.956 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Mirror an image along the specified axis. <br></td></tr> 288.957 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a7e35cf53e3084ee8faa33cef63a36b8"></a><!-- doxytag: member="cimg_library::CImg::get_mirror" ref="a7e35cf53e3084ee8faa33cef63a36b8" args="(const char axis) const " --> 288.958 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_mirror</b> (const char axis) const </td></tr> 288.959 + 288.960 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#32ca7979d4a8792f7274ab07b8b80fdd">translate</a> (const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0)</td></tr> 288.961 + 288.962 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Translate the image. <a href="#32ca7979d4a8792f7274ab07b8b80fdd"></a><br></td></tr> 288.963 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70f8ba44bd2d9a3cea84adb48d28eadb"></a><!-- doxytag: member="cimg_library::CImg::get_translate" ref="70f8ba44bd2d9a3cea84adb48d28eadb" args="(const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0) const " --> 288.964 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_translate</b> (const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0) const </td></tr> 288.965 + 288.966 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#77085bb4dfa1622ac5de64eb5c6ed9d1">crop</a> (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false)</td></tr> 288.967 + 288.968 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a square region of the image. <a href="#77085bb4dfa1622ac5de64eb5c6ed9d1"></a><br></td></tr> 288.969 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1a4fcfe6666be3ce6cd329e6aa9d37fd"></a><!-- doxytag: member="cimg_library::CImg::get_crop" ref="1a4fcfe6666be3ce6cd329e6aa9d37fd" args="(const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false) const " --> 288.970 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_crop</b> (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false) const </td></tr> 288.971 + 288.972 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0a1400f592a7192b1e6421f5d7045d6a">crop</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false)</td></tr> 288.973 + 288.974 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a rectangular part of the instance image. <a href="#0a1400f592a7192b1e6421f5d7045d6a"></a><br></td></tr> 288.975 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9aee13f0b800292841931e93d5941850"></a><!-- doxytag: member="cimg_library::CImg::get_crop" ref="9aee13f0b800292841931e93d5941850" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false) const " --> 288.976 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_crop</b> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false) const </td></tr> 288.977 + 288.978 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#54ad48809ef0be41797c7703e3b4133d">crop</a> (const int x0, const int y0, const int x1, const int y1, const bool border_condition=false)</td></tr> 288.979 + 288.980 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a rectangular part of the instance image. <a href="#54ad48809ef0be41797c7703e3b4133d"></a><br></td></tr> 288.981 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a610bf091842bba7d0ea8730f9450c2e"></a><!-- doxytag: member="cimg_library::CImg::get_crop" ref="a610bf091842bba7d0ea8730f9450c2e" args="(const int x0, const int y0, const int x1, const int y1, const bool border_condition=false) const " --> 288.982 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_crop</b> (const int x0, const int y0, const int x1, const int y1, const bool border_condition=false) const </td></tr> 288.983 + 288.984 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#93a1ecf2944920d55757323e6de2b7da">crop</a> (const int x0, const int x1, const bool border_condition=false)</td></tr> 288.985 + 288.986 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a rectangular part of the instance image. <a href="#93a1ecf2944920d55757323e6de2b7da"></a><br></td></tr> 288.987 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="164e362ebbb5bb59bb2bd70856f30d2d"></a><!-- doxytag: member="cimg_library::CImg::get_crop" ref="164e362ebbb5bb59bb2bd70856f30d2d" args="(const int x0, const int x1, const bool border_condition=false) const " --> 288.988 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_crop</b> (const int x0, const int x1, const bool border_condition=false) const </td></tr> 288.989 + 288.990 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3765c4f7dd09f184b8c26cc7a290ea22"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="3765c4f7dd09f184b8c26cc7a290ea22" args="(const T value, const char *const axes="vzyx")" --> 288.991 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3765c4f7dd09f184b8c26cc7a290ea22">autocrop</a> (const T value, const char *const axes="vzyx")</td></tr> 288.992 + 288.993 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image, regarding of the specified backround value. <br></td></tr> 288.994 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3c94787e82a0fafe2e8b0fd83e029c48"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="3c94787e82a0fafe2e8b0fd83e029c48" args="(const T value, const char *const axes="vzyx") const " --> 288.995 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_autocrop</b> (const T value, const char *const axes="vzyx") const </td></tr> 288.996 + 288.997 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f8acc159cf6c641dc8568d7f4ec6b670"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="f8acc159cf6c641dc8568d7f4ec6b670" args="(const T *const color, const char *const axes="zyx")" --> 288.998 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f8acc159cf6c641dc8568d7f4ec6b670">autocrop</a> (const T *const color, const char *const axes="zyx")</td></tr> 288.999 + 288.1000 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image, regarding of the specified backround color. <br></td></tr> 288.1001 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ade5db378c880ea24ca277dbeb3734ae"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="ade5db378c880ea24ca277dbeb3734ae" args="(const T *const color, const char *const axes="zyx") const " --> 288.1002 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_autocrop</b> (const T *const color, const char *const axes="zyx") const </td></tr> 288.1003 + 288.1004 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="97f20499568cffa340ab6efc88980fea"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="97f20499568cffa340ab6efc88980fea" args="(const CImg< t > &color, const char *const axes="zyx")" --> 288.1005 +template<typename t > </td></tr> 288.1006 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#97f20499568cffa340ab6efc88980fea">autocrop</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &color, const char *const axes="zyx")</td></tr> 288.1007 + 288.1008 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image, regarding of the specified backround color. <br></td></tr> 288.1009 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7de70deea8cfd093e23b8149a8269691"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="7de70deea8cfd093e23b8149a8269691" args="(const CImg< t > &color, const char *const axes="zyx") const " --> 288.1010 +template<typename t > </td></tr> 288.1011 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_autocrop</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &color, const char *const axes="zyx") const </td></tr> 288.1012 + 288.1013 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ccb9eea9bbff8fbc0b63a8b331a35671"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="ccb9eea9bbff8fbc0b63a8b331a35671" args="(const T value, const char axis)" --> 288.1014 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ccb9eea9bbff8fbc0b63a8b331a35671">autocrop</a> (const T value, const char axis)</td></tr> 288.1015 + 288.1016 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image along specified axis, regarding of the specified backround value. <br></td></tr> 288.1017 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6ec8c0aaa48b895c17e6a85912d2adaf"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="6ec8c0aaa48b895c17e6a85912d2adaf" args="(const T value, const char axis) const " --> 288.1018 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_autocrop</b> (const T value, const char axis) const </td></tr> 288.1019 + 288.1020 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fdca4cab350c4904bbaa876f96cf2827"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="fdca4cab350c4904bbaa876f96cf2827" args="(const T *const color, const char axis)" --> 288.1021 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fdca4cab350c4904bbaa876f96cf2827">autocrop</a> (const T *const color, const char axis)</td></tr> 288.1022 + 288.1023 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image along specified axis, regarding of the specified backround color. <br></td></tr> 288.1024 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5699ca7298e8d2530c98cac7ee92e52b"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="5699ca7298e8d2530c98cac7ee92e52b" args="(const T *const color, const char axis) const " --> 288.1025 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_autocrop</b> (const T *const color, const char axis) const </td></tr> 288.1026 + 288.1027 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2265e8ee231bfd48d780e897c61bb757"></a><!-- doxytag: member="cimg_library::CImg::autocrop" ref="2265e8ee231bfd48d780e897c61bb757" args="(const CImg< t > &color, const char axis)" --> 288.1028 +template<typename t > </td></tr> 288.1029 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2265e8ee231bfd48d780e897c61bb757">autocrop</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &color, const char axis)</td></tr> 288.1030 + 288.1031 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Autocrop an image along specified axis, regarding of the specified backround color. <br></td></tr> 288.1032 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ba503cb2e5e4f252233b3eec488da1c7"></a><!-- doxytag: member="cimg_library::CImg::get_autocrop" ref="ba503cb2e5e4f252233b3eec488da1c7" args="(const CImg< t > &color, const char axis) const " --> 288.1033 +template<typename t > </td></tr> 288.1034 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_autocrop</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &color, const char axis) const </td></tr> 288.1035 + 288.1036 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0898e627e2b12dbf60e6cdb494bb6680"></a><!-- doxytag: member="cimg_library::CImg::_get_autocrop" ref="0898e627e2b12dbf60e6cdb494bb6680" args="(const T value, const char axis) const " --> 288.1037 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< intT > </td><td class="memItemRight" valign="bottom"><b>_get_autocrop</b> (const T value, const char axis) const </td></tr> 288.1038 + 288.1039 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a70ff39a9a7bd64954f4f18819f8e596"></a><!-- doxytag: member="cimg_library::CImg::columns" ref="a70ff39a9a7bd64954f4f18819f8e596" args="(const unsigned int x0, const unsigned int x1)" --> 288.1040 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a70ff39a9a7bd64954f4f18819f8e596">columns</a> (const unsigned int x0, const unsigned int x1)</td></tr> 288.1041 + 288.1042 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a set of columns. <br></td></tr> 288.1043 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1bc03749880ec2542c303c5c81eea0a2"></a><!-- doxytag: member="cimg_library::CImg::get_columns" ref="1bc03749880ec2542c303c5c81eea0a2" args="(const unsigned int x0, const unsigned int x1) const " --> 288.1044 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_columns</b> (const unsigned int x0, const unsigned int x1) const </td></tr> 288.1045 + 288.1046 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9995a97a1f5bf1de44670dd998f6b19e"></a><!-- doxytag: member="cimg_library::CImg::column" ref="9995a97a1f5bf1de44670dd998f6b19e" args="(const unsigned int x0)" --> 288.1047 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9995a97a1f5bf1de44670dd998f6b19e">column</a> (const unsigned int x0)</td></tr> 288.1048 + 288.1049 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get one column. <br></td></tr> 288.1050 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d077e00ce00fcebb299518496bf5bdb5"></a><!-- doxytag: member="cimg_library::CImg::get_column" ref="d077e00ce00fcebb299518496bf5bdb5" args="(const unsigned int x0) const " --> 288.1051 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_column</b> (const unsigned int x0) const </td></tr> 288.1052 + 288.1053 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="583e6f289691013d6d863d98ec20631e"></a><!-- doxytag: member="cimg_library::CImg::lines" ref="583e6f289691013d6d863d98ec20631e" args="(const unsigned int y0, const unsigned int y1)" --> 288.1054 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#583e6f289691013d6d863d98ec20631e">lines</a> (const unsigned int y0, const unsigned int y1)</td></tr> 288.1055 + 288.1056 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a set of lines. <br></td></tr> 288.1057 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="27cc2acc265a0ac0b96bf9b4ceb63d41"></a><!-- doxytag: member="cimg_library::CImg::get_lines" ref="27cc2acc265a0ac0b96bf9b4ceb63d41" args="(const unsigned int y0, const unsigned int y1) const " --> 288.1058 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_lines</b> (const unsigned int y0, const unsigned int y1) const </td></tr> 288.1059 + 288.1060 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d701e07806866145060dd2cc2805443e"></a><!-- doxytag: member="cimg_library::CImg::line" ref="d701e07806866145060dd2cc2805443e" args="(const unsigned int y0)" --> 288.1061 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d701e07806866145060dd2cc2805443e">line</a> (const unsigned int y0)</td></tr> 288.1062 + 288.1063 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a line. <br></td></tr> 288.1064 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="be3a9f5467cf301cb36a6c9ea5202311"></a><!-- doxytag: member="cimg_library::CImg::get_line" ref="be3a9f5467cf301cb36a6c9ea5202311" args="(const unsigned int y0) const " --> 288.1065 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_line</b> (const unsigned int y0) const </td></tr> 288.1066 + 288.1067 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7121006079849bc3c0c165bbe9c3a2d"></a><!-- doxytag: member="cimg_library::CImg::slices" ref="f7121006079849bc3c0c165bbe9c3a2d" args="(const unsigned int z0, const unsigned int z1)" --> 288.1068 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f7121006079849bc3c0c165bbe9c3a2d">slices</a> (const unsigned int z0, const unsigned int z1)</td></tr> 288.1069 + 288.1070 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a set of slices. <br></td></tr> 288.1071 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eca37cd39cca6c4ff52d2f0bdd87e965"></a><!-- doxytag: member="cimg_library::CImg::get_slices" ref="eca37cd39cca6c4ff52d2f0bdd87e965" args="(const unsigned int z0, const unsigned int z1) const " --> 288.1072 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_slices</b> (const unsigned int z0, const unsigned int z1) const </td></tr> 288.1073 + 288.1074 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="865128dbd1524185b74ddb8ddf30e362"></a><!-- doxytag: member="cimg_library::CImg::slice" ref="865128dbd1524185b74ddb8ddf30e362" args="(const unsigned int z0)" --> 288.1075 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#865128dbd1524185b74ddb8ddf30e362">slice</a> (const unsigned int z0)</td></tr> 288.1076 + 288.1077 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a slice. <br></td></tr> 288.1078 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c5b89f401484d2085ac53b477922ff34"></a><!-- doxytag: member="cimg_library::CImg::get_slice" ref="c5b89f401484d2085ac53b477922ff34" args="(const unsigned int z0) const " --> 288.1079 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_slice</b> (const unsigned int z0) const </td></tr> 288.1080 + 288.1081 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8ca7d14971bd5e6f1ff40801e0c520dc"></a><!-- doxytag: member="cimg_library::CImg::channels" ref="8ca7d14971bd5e6f1ff40801e0c520dc" args="(const unsigned int v0, const unsigned int v1)" --> 288.1082 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8ca7d14971bd5e6f1ff40801e0c520dc">channels</a> (const unsigned int v0, const unsigned int v1)</td></tr> 288.1083 + 288.1084 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a set of channels. <br></td></tr> 288.1085 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29672ad8ee5cab6287d1a194f572ddc8"></a><!-- doxytag: member="cimg_library::CImg::get_channels" ref="29672ad8ee5cab6287d1a194f572ddc8" args="(const unsigned int v0, const unsigned int v1) const " --> 288.1086 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_channels</b> (const unsigned int v0, const unsigned int v1) const </td></tr> 288.1087 + 288.1088 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c4404d7b68c6e6f1376191748e3e4b0"></a><!-- doxytag: member="cimg_library::CImg::channel" ref="7c4404d7b68c6e6f1376191748e3e4b0" args="(const unsigned int v0)" --> 288.1089 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7c4404d7b68c6e6f1376191748e3e4b0">channel</a> (const unsigned int v0)</td></tr> 288.1090 + 288.1091 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a channel. <br></td></tr> 288.1092 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a71f9f9cd7e42942400271cc492be48"></a><!-- doxytag: member="cimg_library::CImg::get_channel" ref="8a71f9f9cd7e42942400271cc492be48" args="(const unsigned int v0) const " --> 288.1093 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_channel</b> (const unsigned int v0) const </td></tr> 288.1094 + 288.1095 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2bec31726ee3647345577b893c102dea"></a><!-- doxytag: member="cimg_library::CImg::get_shared_points" ref="2bec31726ee3647345577b893c102dea" args="(const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0)" --> 288.1096 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2bec31726ee3647345577b893c102dea">get_shared_points</a> (const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0)</td></tr> 288.1097 + 288.1098 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a shared-memory image referencing a set of points of the instance image. <br></td></tr> 288.1099 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="94b49e625a53c22e7a639df53c846579"></a><!-- doxytag: member="cimg_library::CImg::get_shared_points" ref="94b49e625a53c22e7a639df53c846579" args="(const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0) const " --> 288.1100 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_points</b> (const unsigned int x0, const unsigned int x1, const unsigned int y0=0, const unsigned int z0=0, const unsigned int v0=0) const </td></tr> 288.1101 + 288.1102 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb22178b8e77a784d443fd7a6fad7836"></a><!-- doxytag: member="cimg_library::CImg::get_shared_lines" ref="cb22178b8e77a784d443fd7a6fad7836" args="(const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0)" --> 288.1103 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cb22178b8e77a784d443fd7a6fad7836">get_shared_lines</a> (const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0)</td></tr> 288.1104 + 288.1105 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared-memory image referencing a set of lines of the instance image. <br></td></tr> 288.1106 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="82400c025039a679072d515e1e78c77f"></a><!-- doxytag: member="cimg_library::CImg::get_shared_lines" ref="82400c025039a679072d515e1e78c77f" args="(const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0) const " --> 288.1107 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_lines</b> (const unsigned int y0, const unsigned int y1, const unsigned int z0=0, const unsigned int v0=0) const </td></tr> 288.1108 + 288.1109 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6a6dc59e00dd28f9a1cd887569a21cc"></a><!-- doxytag: member="cimg_library::CImg::get_shared_line" ref="f6a6dc59e00dd28f9a1cd887569a21cc" args="(const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0)" --> 288.1110 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f6a6dc59e00dd28f9a1cd887569a21cc">get_shared_line</a> (const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0)</td></tr> 288.1111 + 288.1112 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared-memory image referencing one particular line (y0,z0,v0) of the instance image. <br></td></tr> 288.1113 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c460a88ec5e290efa4ad789acc7cdce"></a><!-- doxytag: member="cimg_library::CImg::get_shared_line" ref="1c460a88ec5e290efa4ad789acc7cdce" args="(const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0) const " --> 288.1114 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_line</b> (const unsigned int y0, const unsigned int z0=0, const unsigned int v0=0) const </td></tr> 288.1115 + 288.1116 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="321bd9cc21a2f658df1dcc5b95eb6fd6"></a><!-- doxytag: member="cimg_library::CImg::get_shared_planes" ref="321bd9cc21a2f658df1dcc5b95eb6fd6" args="(const unsigned int z0, const unsigned int z1, const unsigned int v0=0)" --> 288.1117 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#321bd9cc21a2f658df1dcc5b95eb6fd6">get_shared_planes</a> (const unsigned int z0, const unsigned int z1, const unsigned int v0=0)</td></tr> 288.1118 + 288.1119 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared memory image referencing a set of planes (z0->z1,v0) of the instance image. <br></td></tr> 288.1120 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3d660f5180527fa819b7108ffa412a1a"></a><!-- doxytag: member="cimg_library::CImg::get_shared_planes" ref="3d660f5180527fa819b7108ffa412a1a" args="(const unsigned int z0, const unsigned int z1, const unsigned int v0=0) const " --> 288.1121 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_planes</b> (const unsigned int z0, const unsigned int z1, const unsigned int v0=0) const </td></tr> 288.1122 + 288.1123 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eec1741a119c7ba27c2c3c2c20097df9"></a><!-- doxytag: member="cimg_library::CImg::get_shared_plane" ref="eec1741a119c7ba27c2c3c2c20097df9" args="(const unsigned int z0, const unsigned int v0=0)" --> 288.1124 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#eec1741a119c7ba27c2c3c2c20097df9">get_shared_plane</a> (const unsigned int z0, const unsigned int v0=0)</td></tr> 288.1125 + 288.1126 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared-memory image referencing one plane (z0,v0) of the instance image. <br></td></tr> 288.1127 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1518bdf4a3698a7788b3f3d27369e9ef"></a><!-- doxytag: member="cimg_library::CImg::get_shared_plane" ref="1518bdf4a3698a7788b3f3d27369e9ef" args="(const unsigned int z0, const unsigned int v0=0) const " --> 288.1128 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_plane</b> (const unsigned int z0, const unsigned int v0=0) const </td></tr> 288.1129 + 288.1130 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="770b28a6ddc3c11af056d27f8dede3d7"></a><!-- doxytag: member="cimg_library::CImg::get_shared_channels" ref="770b28a6ddc3c11af056d27f8dede3d7" args="(const unsigned int v0, const unsigned int v1)" --> 288.1131 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#770b28a6ddc3c11af056d27f8dede3d7">get_shared_channels</a> (const unsigned int v0, const unsigned int v1)</td></tr> 288.1132 + 288.1133 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared-memory image referencing a set of channels (v0->v1) of the instance image. <br></td></tr> 288.1134 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ddad0d8f415c1a1cf52ff275f75d8ef7"></a><!-- doxytag: member="cimg_library::CImg::get_shared_channels" ref="ddad0d8f415c1a1cf52ff275f75d8ef7" args="(const unsigned int v0, const unsigned int v1) const " --> 288.1135 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_channels</b> (const unsigned int v0, const unsigned int v1) const </td></tr> 288.1136 + 288.1137 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="da9415c850e4a0779e5607b26782de9d"></a><!-- doxytag: member="cimg_library::CImg::get_shared_channel" ref="da9415c850e4a0779e5607b26782de9d" args="(const unsigned int v0)" --> 288.1138 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#da9415c850e4a0779e5607b26782de9d">get_shared_channel</a> (const unsigned int v0)</td></tr> 288.1139 + 288.1140 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared-memory image referencing one channel v0 of the instance image. <br></td></tr> 288.1141 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64d6803b8d4a5d75f09b5766dafe7241"></a><!-- doxytag: member="cimg_library::CImg::get_shared_channel" ref="64d6803b8d4a5d75f09b5766dafe7241" args="(const unsigned int v0) const " --> 288.1142 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared_channel</b> (const unsigned int v0) const </td></tr> 288.1143 + 288.1144 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c9676ed1fd154d30c8a2f6f6ee17499c"></a><!-- doxytag: member="cimg_library::CImg::get_shared" ref="c9676ed1fd154d30c8a2f6f6ee17499c" args="()" --> 288.1145 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c9676ed1fd154d30c8a2f6f6ee17499c">get_shared</a> ()</td></tr> 288.1146 + 288.1147 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a shared version of the instance image. <br></td></tr> 288.1148 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3bd52fe084ef60471cddfccc1d382c4b"></a><!-- doxytag: member="cimg_library::CImg::get_shared" ref="3bd52fe084ef60471cddfccc1d382c4b" args="() const " --> 288.1149 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_shared</b> () const </td></tr> 288.1150 + 288.1151 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4f4f598be55ec6fb4af8c0f9bb05b91c"></a><!-- doxytag: member="cimg_library::CImg::projections2d" ref="4f4f598be55ec6fb4af8c0f9bb05b91c" args="(const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100)" --> 288.1152 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4f4f598be55ec6fb4af8c0f9bb05b91c">projections2d</a> (const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100)</td></tr> 288.1153 + 288.1154 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 2D representation of a 3D image, with three slices. <br></td></tr> 288.1155 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4e42b0c1cb1f4ed377e9048e4ab463c"></a><!-- doxytag: member="cimg_library::CImg::get_projections2d" ref="e4e42b0c1cb1f4ed377e9048e4ab463c" args="(const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100) const " --> 288.1156 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_projections2d</b> (const unsigned int x0, const unsigned int y0, const unsigned int z0, const int dx=-100, const int dy=-100, const int dz=-100) const </td></tr> 288.1157 + 288.1158 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#edc5d10d1516480dbfe20a576c152770">histogram</a> (const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)</td></tr> 288.1159 + 288.1160 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the image histogram. <a href="#edc5d10d1516480dbfe20a576c152770"></a><br></td></tr> 288.1161 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1754c66b729a5551a0a9c7764a4d32fa"></a><!-- doxytag: member="cimg_library::CImg::get_histogram" ref="1754c66b729a5551a0a9c7764a4d32fa" args="(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0) const " --> 288.1162 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memItemRight" valign="bottom"><b>get_histogram</b> (const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0) const </td></tr> 288.1163 + 288.1164 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a2227f917f7c4424123b5a2806d7f5b8">equalize</a> (const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)</td></tr> 288.1165 + 288.1166 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the histogram-equalized version of the instance image. <a href="#a2227f917f7c4424123b5a2806d7f5b8"></a><br></td></tr> 288.1167 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6176dba8dc6191a96eaebedb6fc7805e"></a><!-- doxytag: member="cimg_library::CImg::get_equalize" ref="6176dba8dc6191a96eaebedb6fc7805e" args="(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0) const " --> 288.1168 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_equalize</b> (const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0) const </td></tr> 288.1169 + 288.1170 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cd78906a1eb7d7c0e1aa4c220e474540"></a><!-- doxytag: member="cimg_library::CImg::label_regions" ref="cd78906a1eb7d7c0e1aa4c220e474540" args="()" --> 288.1171 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cd78906a1eb7d7c0e1aa4c220e474540">label_regions</a> ()</td></tr> 288.1172 + 288.1173 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a label map of disconnected regions with same intensities. <br></td></tr> 288.1174 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eaaa8b573a347790eeefa9bbb73c4373"></a><!-- doxytag: member="cimg_library::CImg::get_label_regions" ref="eaaa8b573a347790eeefa9bbb73c4373" args="() const " --> 288.1175 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< uintT > </td><td class="memItemRight" valign="bottom"><b>get_label_regions</b> () const </td></tr> 288.1176 + 288.1177 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f2cceb3e14d6650bc7d1c89afedba15a">pointwise_norm</a> (int norm_type=2)</td></tr> 288.1178 + 288.1179 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the scalar image of vector norms. <a href="#f2cceb3e14d6650bc7d1c89afedba15a"></a><br></td></tr> 288.1180 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93a1f161ff26cf6f2510f716ec810f0c"></a><!-- doxytag: member="cimg_library::CImg::get_pointwise_norm" ref="93a1f161ff26cf6f2510f716ec810f0c" args="(int norm_type=2) const " --> 288.1181 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_pointwise_norm</b> (int norm_type=2) const </td></tr> 288.1182 + 288.1183 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2662d70fed319ed056836696c3a97499">pointwise_orientation</a> ()</td></tr> 288.1184 + 288.1185 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the image of normalized vectors. <a href="#2662d70fed319ed056836696c3a97499"></a><br></td></tr> 288.1186 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="69b5a3b9da62f9c8651c2a1adc7f84ea"></a><!-- doxytag: member="cimg_library::CImg::get_pointwise_orientation" ref="69b5a3b9da62f9c8651c2a1adc7f84ea" args="() const " --> 288.1187 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_pointwise_orientation</b> () const </td></tr> 288.1188 + 288.1189 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ccd769bc160bb4bd933d01ec3b22c1d7"></a><!-- doxytag: member="cimg_library::CImg::get_split" ref="ccd769bc160bb4bd933d01ec3b22c1d7" args="(const char axis, const unsigned int nb=0) const " --> 288.1190 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ccd769bc160bb4bd933d01ec3b22c1d7">get_split</a> (const char axis, const unsigned int nb=0) const </td></tr> 288.1191 + 288.1192 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Split image into a list. <br></td></tr> 288.1193 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1ef4503a0291099e6b1e3724594f49f"></a><!-- doxytag: member="cimg_library::CImg::get_split" ref="d1ef4503a0291099e6b1e3724594f49f" args="(const T value, const bool keep_values, const bool shared) const " --> 288.1194 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_split</b> (const T value, const bool keep_values, const bool shared) const </td></tr> 288.1195 + 288.1196 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="42e2ed19679d15fdd27097ed96501fae"></a><!-- doxytag: member="cimg_library::CImg::append" ref="42e2ed19679d15fdd27097ed96501fae" args="(const CImg< T > &img, const char axis, const char align='p')" --> 288.1197 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#42e2ed19679d15fdd27097ed96501fae">append</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const char axis, const char align='p')</td></tr> 288.1198 + 288.1199 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Append an image to another one. <br></td></tr> 288.1200 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="415bc7b5a83439b81852d60a30bff507"></a><!-- doxytag: member="cimg_library::CImg::get_append" ref="415bc7b5a83439b81852d60a30bff507" args="(const CImg< T > &img, const char axis, const char align='p') const " --> 288.1201 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_append</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const char axis, const char align='p') const </td></tr> 288.1202 + 288.1203 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3e5b54c0b862cbf6e9f14e832984c4d7">get_gradient</a> (const char *const axes=0, const int scheme=3) const </td></tr> 288.1204 + 288.1205 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the list of images, corresponding to the XY-gradients of an image. <a href="#3e5b54c0b862cbf6e9f14e832984c4d7"></a><br></td></tr> 288.1206 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="edf6587b65261c0d4eb75bb2ed7d92ae"></a><!-- doxytag: member="cimg_library::CImg::structure_tensor" ref="edf6587b65261c0d4eb75bb2ed7d92ae" args="(const bool central_scheme=false)" --> 288.1207 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#edf6587b65261c0d4eb75bb2ed7d92ae">structure_tensor</a> (const bool central_scheme=false)</td></tr> 288.1208 + 288.1209 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the structure tensor field of an image. <br></td></tr> 288.1210 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="72a716ae0455b763d9945db52e513fc7"></a><!-- doxytag: member="cimg_library::CImg::get_structure_tensor" ref="72a716ae0455b763d9945db52e513fc7" args="(const bool central_scheme=false) const " --> 288.1211 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_structure_tensor</b> (const bool central_scheme=false) const </td></tr> 288.1212 + 288.1213 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96e3e0c617e70a833492043d08a7905a"></a><!-- doxytag: member="cimg_library::CImg::get_hessian" ref="96e3e0c617e70a833492043d08a7905a" args="(const char *const axes=0) const " --> 288.1214 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#96e3e0c617e70a833492043d08a7905a">get_hessian</a> (const char *const axes=0) const </td></tr> 288.1215 + 288.1216 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get components of the Hessian matrix of an image. <br></td></tr> 288.1217 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ac17a49491c76e73310270931e88d46"></a><!-- doxytag: member="cimg_library::CImg::distance_hamilton" ref="2ac17a49491c76e73310270931e88d46" args="(const unsigned int nb_iter, const float band_size=0, const float precision=0.5f)" --> 288.1218 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2ac17a49491c76e73310270931e88d46">distance_hamilton</a> (const unsigned int nb_iter, const float band_size=0, const float precision=0.5f)</td></tr> 288.1219 + 288.1220 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute distance function from 0-valued isophotes by the application of an Hamilton-Jacobi PDE. <br></td></tr> 288.1221 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="36f424515848147f70a3273dab6925ef"></a><!-- doxytag: member="cimg_library::CImg::get_distance_hamilton" ref="36f424515848147f70a3273dab6925ef" args="(const unsigned int nb_iter, const float band_size=0, const float precision=0.5f) const " --> 288.1222 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_distance_hamilton</b> (const unsigned int nb_iter, const float band_size=0, const float precision=0.5f) const </td></tr> 288.1223 + 288.1224 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="896675c24b7a4aad089a31c98cd39318"></a><!-- doxytag: member="cimg_library::CImg::distance" ref="896675c24b7a4aad089a31c98cd39318" args="(const T isovalue, const float sizex=1, const float sizey=1, const float sizez=1, const bool compute_sqrt=true)" --> 288.1225 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#896675c24b7a4aad089a31c98cd39318">distance</a> (const T isovalue, const float sizex=1, const float sizey=1, const float sizez=1, const bool compute_sqrt=true)</td></tr> 288.1226 + 288.1227 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the Euclidean distance map to a shape of specified isovalue. <br></td></tr> 288.1228 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="da7d6ed59321d50bcef3a3158d4fcbf1"></a><!-- doxytag: member="cimg_library::CImg::get_distance" ref="da7d6ed59321d50bcef3a3158d4fcbf1" args="(const T isovalue, const float sizex=1, const float sizey=1, const float sizez=1, const bool compute_sqrt=true) const " --> 288.1229 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memItemRight" valign="bottom"><b>get_distance</b> (const T isovalue, const float sizex=1, const float sizey=1, const float sizez=1, const bool compute_sqrt=true) const </td></tr> 288.1230 + 288.1231 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.1232 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#255acd18f793e0faacd5180f0d10713b">dijkstra</a> (const unsigned int starting_node, const unsigned int ending_node, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &previous)</td></tr> 288.1233 + 288.1234 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return minimal path in a graph, using the Dijkstra algorithm. <a href="#255acd18f793e0faacd5180f0d10713b"></a><br></td></tr> 288.1235 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="eb501612014494cdc5c931a4476081d7"></a><!-- doxytag: member="cimg_library::CImg::get_dijkstra" ref="eb501612014494cdc5c931a4476081d7" args="(const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous) const " --> 288.1236 +template<typename t > </td></tr> 288.1237 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_dijkstra</b> (const unsigned int starting_node, const unsigned int ending_node, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &previous) const </td></tr> 288.1238 + 288.1239 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aaf059b97f37c83ff892a761db3333b2"></a><!-- doxytag: member="cimg_library::CImg::dijkstra" ref="aaf059b97f37c83ff892a761db3333b2" args="(const unsigned int starting_node, const unsigned int ending_node=~0U)" --> 288.1240 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aaf059b97f37c83ff892a761db3333b2">dijkstra</a> (const unsigned int starting_node, const unsigned int ending_node=~0U)</td></tr> 288.1241 + 288.1242 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return minimal path in a graph, using the Dijkstra algorithm. <br></td></tr> 288.1243 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e0ed498595ea1bfa2ad16b1feed6a38b"></a><!-- doxytag: member="cimg_library::CImg::get_dijkstra" ref="e0ed498595ea1bfa2ad16b1feed6a38b" args="(const unsigned int starting_node, const unsigned int ending_node=~0U) const " --> 288.1244 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_dijkstra</b> (const unsigned int starting_node, const unsigned int ending_node=~0U) const </td></tr> 288.1245 + 288.1246 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d909a60225cbea34c7854c09fb1e5efa"></a><!-- doxytag: member="cimg_library::CImg::_distance_f" ref="d909a60225cbea34c7854c09fb1e5efa" args="(const int x, const int i, const float gi2, const float fact)" --> 288.1247 +static float </td><td class="memItemRight" valign="bottom"><b>_distance_f</b> (const int x, const int i, const float gi2, const float fact)</td></tr> 288.1248 + 288.1249 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="16c0476567023d780367e28d06d58730"></a><!-- doxytag: member="cimg_library::CImg::_distance_sep" ref="16c0476567023d780367e28d06d58730" args="(const int i, const int u, const int gi2, const int gu2, const float fact)" --> 288.1250 +static int </td><td class="memItemRight" valign="bottom"><b>_distance_sep</b> (const int i, const int u, const int gi2, const int gu2, const float fact)</td></tr> 288.1251 + 288.1252 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tf , typename t > </td></tr> 288.1253 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f2b4fdd725a79235943e5cc5704a32d5">dijkstra</a> (const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &previous)</td></tr> 288.1254 + 288.1255 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute minimal path in a graph, using the Dijkstra algorithm. <a href="#f2b4fdd725a79235943e5cc5704a32d5"></a><br></td></tr> 288.1256 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dad65a3bfabe64171d5fd68dc2c7f16e"></a><!-- doxytag: member="cimg_library::CImg::dijkstra" ref="dad65a3bfabe64171d5fd68dc2c7f16e" args="(const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node=~0U)" --> 288.1257 +template<typename tf , typename t > </td></tr> 288.1258 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dad65a3bfabe64171d5fd68dc2c7f16e">dijkstra</a> (const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node=~0U)</td></tr> 288.1259 + 288.1260 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return minimal path in a graph, using the Dijkstra algorithm. <br></td></tr> 288.1261 +<tr><td colspan="2"><br><h2>Meshes and Triangulations</h2></td></tr> 288.1262 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f8a421b285e0b85ea6ab2fd4a2e6736e"></a><!-- doxytag: member="cimg_library::CImg::get_elevation3d" ref="f8a421b285e0b85ea6ab2fd4a2e6736e" args="(CImgList< tf > &primitives, CImgList< tc > &colors, const CImg< te > &elevation) const " --> 288.1263 +template<typename tf , typename tc , typename te > </td></tr> 288.1264 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f8a421b285e0b85ea6ab2fd4a2e6736e">get_elevation3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< te > &elevation) const </td></tr> 288.1265 + 288.1266 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D elevation object of the instance image. <br></td></tr> 288.1267 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dfcfeb419514a0e79c6bcb17fc71a53f"></a><!-- doxytag: member="cimg_library::CImg::get_isovalue3d" ref="dfcfeb419514a0e79c6bcb17fc71a53f" args="(CImgList< tf > &primitives, const float isovalue, const float resx=1, const float resy=1, const float resz=1, const bool invert_faces=false) const " --> 288.1268 +template<typename tf > </td></tr> 288.1269 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dfcfeb419514a0e79c6bcb17fc71a53f">get_isovalue3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float isovalue, const float resx=1, const float resy=1, const float resz=1, const bool invert_faces=false) const </td></tr> 288.1270 + 288.1271 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute a vectorization of an implicit function. <br></td></tr> 288.1272 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec75e25883a9e1068aaa93162b969aba"></a><!-- doxytag: member="cimg_library::CImg::translate_object3d" ref="ec75e25883a9e1068aaa93162b969aba" args="(const float tx, const float ty=0, const float tz=0)" --> 288.1273 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ec75e25883a9e1068aaa93162b969aba">translate_object3d</a> (const float tx, const float ty=0, const float tz=0)</td></tr> 288.1274 + 288.1275 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Translate a 3D object. <br></td></tr> 288.1276 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c3267c252d6c61be96206db3c0e39b98"></a><!-- doxytag: member="cimg_library::CImg::get_translate_object3d" ref="c3267c252d6c61be96206db3c0e39b98" args="(const float tx, const float ty=0, const float tz=0) const " --> 288.1277 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_translate_object3d</b> (const float tx, const float ty=0, const float tz=0) const </td></tr> 288.1278 + 288.1279 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d430e8117e4f1c836e2d4d6810d5a7bf"></a><!-- doxytag: member="cimg_library::CImg::translate_object3d" ref="d430e8117e4f1c836e2d4d6810d5a7bf" args="()" --> 288.1280 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d430e8117e4f1c836e2d4d6810d5a7bf">translate_object3d</a> ()</td></tr> 288.1281 + 288.1282 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Translate a 3D object so that it becomes centered. <br></td></tr> 288.1283 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="636ef6ba4f1a006a3b629160fb9e11ce"></a><!-- doxytag: member="cimg_library::CImg::get_translate_object3d" ref="636ef6ba4f1a006a3b629160fb9e11ce" args="() const " --> 288.1284 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_translate_object3d</b> () const </td></tr> 288.1285 + 288.1286 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cf489c894d7f7394912d5dd4c05c1538"></a><!-- doxytag: member="cimg_library::CImg::resize_object3d" ref="cf489c894d7f7394912d5dd4c05c1538" args="(const float sx, const float sy=-100, const float sz=-100)" --> 288.1287 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cf489c894d7f7394912d5dd4c05c1538">resize_object3d</a> (const float sx, const float sy=-100, const float sz=-100)</td></tr> 288.1288 + 288.1289 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize a 3D object. <br></td></tr> 288.1290 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2c8f5b3925f96818b6be80e671a8a61"></a><!-- doxytag: member="cimg_library::CImg::get_resize_object3d" ref="d2c8f5b3925f96818b6be80e671a8a61" args="(const float sx, const float sy=-100, const float sz=-100) const " --> 288.1291 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_resize_object3d</b> (const float sx, const float sy=-100, const float sz=-100) const </td></tr> 288.1292 + 288.1293 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="edb6c6dc25f669f5af7d3fe55978addc"></a><!-- doxytag: member="cimg_library::CImg::resize_object3d" ref="edb6c6dc25f669f5af7d3fe55978addc" args="() const " --> 288.1294 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>resize_object3d</b> () const </td></tr> 288.1295 + 288.1296 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="59fffbf1fb8d5f9b5db4a772da0c40cc"></a><!-- doxytag: member="cimg_library::CImg::get_resize_object3d" ref="59fffbf1fb8d5f9b5db4a772da0c40cc" args="() const " --> 288.1297 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_resize_object3d</b> () const </td></tr> 288.1298 + 288.1299 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="91932674ad04313d7b164d874b95348b"></a><!-- doxytag: member="cimg_library::CImg::append_object3d" ref="91932674ad04313d7b164d874b95348b" args="(CImgList< tf > &primitives, const CImg< tp > &obj_points, const CImgList< tff > &obj_primitives)" --> 288.1300 +template<typename tf , typename tp , typename tff > </td></tr> 288.1301 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#91932674ad04313d7b164d874b95348b">append_object3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &obj_points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tff > &obj_primitives)</td></tr> 288.1302 + 288.1303 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Append a 3D object to another one. <br></td></tr> 288.1304 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7909d0564ee489806b89a79159a9d91d"></a><!-- doxytag: member="cimg_library::CImg::cube3d" ref="7909d0564ee489806b89a79159a9d91d" args="(CImgList< tf > &primitives, const float size=100)" --> 288.1305 +template<typename tf > </td></tr> 288.1306 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7909d0564ee489806b89a79159a9d91d">cube3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float size=100)</td></tr> 288.1307 + 288.1308 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered cube. <br></td></tr> 288.1309 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e15246012bf5a2672766bda1743417f0"></a><!-- doxytag: member="cimg_library::CImg::cuboid3d" ref="e15246012bf5a2672766bda1743417f0" args="(CImgList< tf > &primitives, const float sizex=200, const float sizey=100, const float sizez=100)" --> 288.1310 +template<typename tf > </td></tr> 288.1311 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e15246012bf5a2672766bda1743417f0">cuboid3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float sizex=200, const float sizey=100, const float sizez=100)</td></tr> 288.1312 + 288.1313 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered cuboid. <br></td></tr> 288.1314 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4cfdd883704e403728d35979c07a069b"></a><!-- doxytag: member="cimg_library::CImg::cone3d" ref="4cfdd883704e403728d35979c07a069b" args="(CImgList< tf > &primitives, const float radius=50, const float height=100, const unsigned int subdivisions=24, const bool symetrize=false)" --> 288.1315 +template<typename tf > </td></tr> 288.1316 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4cfdd883704e403728d35979c07a069b">cone3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float radius=50, const float <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>=100, const unsigned int subdivisions=24, const bool symetrize=false)</td></tr> 288.1317 + 288.1318 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered cone. <br></td></tr> 288.1319 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="13077712f8141674ceb3946aafc37a3f"></a><!-- doxytag: member="cimg_library::CImg::cylinder3d" ref="13077712f8141674ceb3946aafc37a3f" args="(CImgList< tf > &primitives, const float radius=50, const float height=100, const unsigned int subdivisions=24)" --> 288.1320 +template<typename tf > </td></tr> 288.1321 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#13077712f8141674ceb3946aafc37a3f">cylinder3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float radius=50, const float <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>=100, const unsigned int subdivisions=24)</td></tr> 288.1322 + 288.1323 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered cylinder. <br></td></tr> 288.1324 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fe12f532a1faf7ba4dbdd32297cdbe6e"></a><!-- doxytag: member="cimg_library::CImg::torus3d" ref="fe12f532a1faf7ba4dbdd32297cdbe6e" args="(CImgList< tf > &primitives, const float radius1=100, const float radius2=30, const unsigned int subdivisions1=24, const unsigned int subdivisions2=12)" --> 288.1325 +template<typename tf > </td></tr> 288.1326 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fe12f532a1faf7ba4dbdd32297cdbe6e">torus3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float radius1=100, const float radius2=30, const unsigned int subdivisions1=24, const unsigned int subdivisions2=12)</td></tr> 288.1327 + 288.1328 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered torus. <br></td></tr> 288.1329 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dcc51ad58ccf7a05d28a6dd4ffa446d9"></a><!-- doxytag: member="cimg_library::CImg::plane3d" ref="dcc51ad58ccf7a05d28a6dd4ffa446d9" args="(CImgList< tf > &primitives, const float sizex=100, const float sizey=100, const unsigned int subdivisionsx=3, const unsigned int subdivisionsy=3, const bool double_sided=false)" --> 288.1330 +template<typename tf > </td></tr> 288.1331 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dcc51ad58ccf7a05d28a6dd4ffa446d9">plane3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float sizex=100, const float sizey=100, const unsigned int subdivisionsx=3, const unsigned int subdivisionsy=3, const bool double_sided=false)</td></tr> 288.1332 + 288.1333 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered XY plane. <br></td></tr> 288.1334 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="612264fd3b4223e6ecf99b05a6e220cd"></a><!-- doxytag: member="cimg_library::CImg::sphere3d" ref="612264fd3b4223e6ecf99b05a6e220cd" args="(CImgList< tf > &primitives, const float radius=50, const unsigned int subdivisions=3)" --> 288.1335 +template<typename tf > </td></tr> 288.1336 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#612264fd3b4223e6ecf99b05a6e220cd">sphere3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const float radius=50, const unsigned int subdivisions=3)</td></tr> 288.1337 + 288.1338 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered sphere. <br></td></tr> 288.1339 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e24de98deb46f84769fd72c504ceedc2"></a><!-- doxytag: member="cimg_library::CImg::ellipsoid3d" ref="e24de98deb46f84769fd72c504ceedc2" args="(CImgList< tf > &primitives, const CImg< t > &tensor, const unsigned int subdivisions=3)" --> 288.1340 +template<typename tf , typename t > </td></tr> 288.1341 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e24de98deb46f84769fd72c504ceedc2">ellipsoid3d</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const unsigned int subdivisions=3)</td></tr> 288.1342 + 288.1343 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3D centered ellipsoid. <br></td></tr> 288.1344 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="34d363af53d74ded9f766e8c93b444a2"></a><!-- doxytag: member="cimg_library::CImg::_marching_squares_indice" ref="34d363af53d74ded9f766e8c93b444a2" args="(const unsigned int edge, const CImg< t > &indices1, const CImg< t > &indices2, const unsigned int x, const unsigned int nx)" --> 288.1345 +template<typename t > </td></tr> 288.1346 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static int </td><td class="memTemplItemRight" valign="bottom"><b>_marching_squares_indice</b> (const unsigned int edge, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &indices1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &indices2, const unsigned int x, const unsigned int nx)</td></tr> 288.1347 + 288.1348 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="858076f1e68d6b616c3f8dd46c441f77"></a><!-- doxytag: member="cimg_library::CImg::marching_squares" ref="858076f1e68d6b616c3f8dd46c441f77" args="(CImgList< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float x1, const float y1, const float resx, const float resy)" --> 288.1349 +template<typename tf , typename tfunc > </td></tr> 288.1350 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#858076f1e68d6b616c3f8dd46c441f77">marching_squares</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float x1, const float y1, const float resx, const float resy)</td></tr> 288.1351 + 288.1352 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Polygonize an implicit 2D function by the marching squares algorithm. <br></td></tr> 288.1353 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="212593412b18db32a7769f072c96e2b9"></a><!-- doxytag: member="cimg_library::CImg::_marching_cubes_indice" ref="212593412b18db32a7769f072c96e2b9" args="(const unsigned int edge, const CImg< t > &indices1, const CImg< t > &indices2, const unsigned int x, const unsigned int y, const unsigned int nx, const unsigned int ny)" --> 288.1354 +template<typename t > </td></tr> 288.1355 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static int </td><td class="memTemplItemRight" valign="bottom"><b>_marching_cubes_indice</b> (const unsigned int edge, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &indices1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &indices2, const unsigned int x, const unsigned int y, const unsigned int nx, const unsigned int ny)</td></tr> 288.1356 + 288.1357 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="918eba9e7b484b7300c96885a82bc5fc"></a><!-- doxytag: member="cimg_library::CImg::marching_cubes" ref="918eba9e7b484b7300c96885a82bc5fc" args="(CImgList< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float z0, const float x1, const float y1, const float z1, const float resx, const float resy, const float resz, const bool invert_faces=false)" --> 288.1358 +template<typename tf , typename tfunc > </td></tr> 288.1359 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< floatT > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#918eba9e7b484b7300c96885a82bc5fc">marching_cubes</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const tfunc &func, const float isovalue, const float x0, const float y0, const float z0, const float x1, const float y1, const float z1, const float resx, const float resy, const float resz, const bool invert_faces=false)</td></tr> 288.1360 + 288.1361 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Polygonize an implicit function. <br></td></tr> 288.1362 +<tr><td colspan="2"><br><h2>Color bases</h2></td></tr> 288.1363 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="59e0e13a4701d81e9bb78bd6cbd2d048"></a><!-- doxytag: member="cimg_library::CImg::RGBtoLUT" ref="59e0e13a4701d81e9bb78bd6cbd2d048" args="(const CImg< t > &palette, const bool dithering=true, const bool indexing=false)" --> 288.1364 +template<typename t > </td></tr> 288.1365 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#59e0e13a4701d81e9bb78bd6cbd2d048">RGBtoLUT</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &palette, const bool dithering=true, const bool indexing=false)</td></tr> 288.1366 + 288.1367 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (R,G,B) color image to indexed color image. <br></td></tr> 288.1368 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ccb2f7f680153766a08d3a33dfe7e367"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoLUT" ref="ccb2f7f680153766a08d3a33dfe7e367" args="(const CImg< t > &palette, const bool dithering=true, const bool indexing=false) const " --> 288.1369 +template<typename t > </td></tr> 288.1370 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > </td><td class="memTemplItemRight" valign="bottom"><b>get_RGBtoLUT</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &palette, const bool dithering=true, const bool indexing=false) const </td></tr> 288.1371 + 288.1372 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7db4236b8223d536bfe0a6fa6224e0a5"></a><!-- doxytag: member="cimg_library::CImg::RGBtoLUT" ref="7db4236b8223d536bfe0a6fa6224e0a5" args="(const bool dithering=true, const bool indexing=false)" --> 288.1373 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7db4236b8223d536bfe0a6fa6224e0a5">RGBtoLUT</a> (const bool dithering=true, const bool indexing=false)</td></tr> 288.1374 + 288.1375 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to match the default palette. <br></td></tr> 288.1376 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3ac45438963640d04336e4963bd14f1b"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoLUT" ref="3ac45438963640d04336e4963bd14f1b" args="(const bool dithering=true, const bool indexing=false) const " --> 288.1377 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoLUT</b> (const bool dithering=true, const bool indexing=false) const </td></tr> 288.1378 + 288.1379 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b122070bda047ccd97702a7e72f6379"></a><!-- doxytag: member="cimg_library::CImg::LUTtoRGB" ref="0b122070bda047ccd97702a7e72f6379" args="(const CImg< T > &palette)" --> 288.1380 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0b122070bda047ccd97702a7e72f6379">LUTtoRGB</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &palette)</td></tr> 288.1381 + 288.1382 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert an indexed image to a (R,G,B) image using the specified color palette. <br></td></tr> 288.1383 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d76556a3ca17286654b40dc807d32183"></a><!-- doxytag: member="cimg_library::CImg::get_LUTtoRGB" ref="d76556a3ca17286654b40dc807d32183" args="(const CImg< t > &palette) const " --> 288.1384 +template<typename t > </td></tr> 288.1385 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > </td><td class="memTemplItemRight" valign="bottom"><b>get_LUTtoRGB</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &palette) const </td></tr> 288.1386 + 288.1387 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b84fab4d5f24f8be60b11205a996dd0"></a><!-- doxytag: member="cimg_library::CImg::LUTtoRGB" ref="9b84fab4d5f24f8be60b11205a996dd0" args="()" --> 288.1388 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9b84fab4d5f24f8be60b11205a996dd0">LUTtoRGB</a> ()</td></tr> 288.1389 + 288.1390 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert an indexed image (with the default palette) to a (R,G,B) image. <br></td></tr> 288.1391 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="503a90724f98bb7da540e6eac2b24384"></a><!-- doxytag: member="cimg_library::CImg::get_LUTtoRGB" ref="503a90724f98bb7da540e6eac2b24384" args="() const " --> 288.1392 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_LUTtoRGB</b> () const </td></tr> 288.1393 + 288.1394 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c0ab36ca2418c9b62590cdfdcbdc793"></a><!-- doxytag: member="cimg_library::CImg::RGBtoHSV" ref="6c0ab36ca2418c9b62590cdfdcbdc793" args="()" --> 288.1395 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6c0ab36ca2418c9b62590cdfdcbdc793">RGBtoHSV</a> ()</td></tr> 288.1396 + 288.1397 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (H,S,V). <br></td></tr> 288.1398 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ef4e92555cb579b1480de042bfb9dcf0"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoHSV" ref="ef4e92555cb579b1480de042bfb9dcf0" args="() const " --> 288.1399 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoHSV</b> () const </td></tr> 288.1400 + 288.1401 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87cc3767b5078c5f63e09ba0109cf0d4"></a><!-- doxytag: member="cimg_library::CImg::HSVtoRGB" ref="87cc3767b5078c5f63e09ba0109cf0d4" args="()" --> 288.1402 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#87cc3767b5078c5f63e09ba0109cf0d4">HSVtoRGB</a> ()</td></tr> 288.1403 + 288.1404 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (H,S,V) to (R,G,B). <br></td></tr> 288.1405 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="672ef1aa9a08fed8fdcecfc4b309e2ca"></a><!-- doxytag: member="cimg_library::CImg::get_HSVtoRGB" ref="672ef1aa9a08fed8fdcecfc4b309e2ca" args="() const " --> 288.1406 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_HSVtoRGB</b> () const </td></tr> 288.1407 + 288.1408 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b76b35625d85926b4e88227f89f734e"></a><!-- doxytag: member="cimg_library::CImg::RGBtoHSL" ref="3b76b35625d85926b4e88227f89f734e" args="()" --> 288.1409 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3b76b35625d85926b4e88227f89f734e">RGBtoHSL</a> ()</td></tr> 288.1410 + 288.1411 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (H,S,L). <br></td></tr> 288.1412 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1f7ee6b049451a53aabc0b7e70d08b7"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoHSL" ref="a1f7ee6b049451a53aabc0b7e70d08b7" args="() const " --> 288.1413 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoHSL</b> () const </td></tr> 288.1414 + 288.1415 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e2080f7ef8f8c87587800de0c5d9f31"></a><!-- doxytag: member="cimg_library::CImg::HSLtoRGB" ref="0e2080f7ef8f8c87587800de0c5d9f31" args="()" --> 288.1416 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0e2080f7ef8f8c87587800de0c5d9f31">HSLtoRGB</a> ()</td></tr> 288.1417 + 288.1418 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (H,S,L) to (R,G,B). <br></td></tr> 288.1419 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99e0396f5b174adfc0c4c2aa3906c930"></a><!-- doxytag: member="cimg_library::CImg::get_HSLtoRGB" ref="99e0396f5b174adfc0c4c2aa3906c930" args="() const " --> 288.1420 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_HSLtoRGB</b> () const </td></tr> 288.1421 + 288.1422 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5820d33b36cc0266b98c0d9c9f0c3a6"></a><!-- doxytag: member="cimg_library::CImg::RGBtoHSI" ref="e5820d33b36cc0266b98c0d9c9f0c3a6" args="()" --> 288.1423 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e5820d33b36cc0266b98c0d9c9f0c3a6">RGBtoHSI</a> ()</td></tr> 288.1424 + 288.1425 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (H,S,I). Reference: "Digital Image Processing, 2nd. edition", R. Gonzalez and R. Woods. Prentice Hall, 2002. <br></td></tr> 288.1426 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c559231596d2ef30686dd9ca73c35b8"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoHSI" ref="0c559231596d2ef30686dd9ca73c35b8" args="() const " --> 288.1427 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoHSI</b> () const </td></tr> 288.1428 + 288.1429 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="342709e04c2efd6b07982b1e9b5b5671"></a><!-- doxytag: member="cimg_library::CImg::HSItoRGB" ref="342709e04c2efd6b07982b1e9b5b5671" args="()" --> 288.1430 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#342709e04c2efd6b07982b1e9b5b5671">HSItoRGB</a> ()</td></tr> 288.1431 + 288.1432 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (H,S,I) to (R,G,B). <br></td></tr> 288.1433 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fa1f3bbdd3482181416bee34a3cf5a3b"></a><!-- doxytag: member="cimg_library::CImg::get_HSItoRGB" ref="fa1f3bbdd3482181416bee34a3cf5a3b" args="() const " --> 288.1434 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_HSItoRGB</b> () const </td></tr> 288.1435 + 288.1436 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fbc08f08341e56ebf9b27e3ddacc9ee6"></a><!-- doxytag: member="cimg_library::CImg::RGBtoYCbCr" ref="fbc08f08341e56ebf9b27e3ddacc9ee6" args="()" --> 288.1437 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fbc08f08341e56ebf9b27e3ddacc9ee6">RGBtoYCbCr</a> ()</td></tr> 288.1438 + 288.1439 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8. <br></td></tr> 288.1440 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a2eaa2a2424f51de318ababa3c076eec"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoYCbCr" ref="a2eaa2a2424f51de318ababa3c076eec" args="() const " --> 288.1441 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoYCbCr</b> () const </td></tr> 288.1442 + 288.1443 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93b6905e43cebf17d9d98f926d353a11"></a><!-- doxytag: member="cimg_library::CImg::YCbCrtoRGB" ref="93b6905e43cebf17d9d98f926d353a11" args="()" --> 288.1444 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#93b6905e43cebf17d9d98f926d353a11">YCbCrtoRGB</a> ()</td></tr> 288.1445 + 288.1446 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (Y,Cb,Cr)_8. <br></td></tr> 288.1447 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d4e78b28b3fdb65fdd2889e2cfaa148a"></a><!-- doxytag: member="cimg_library::CImg::get_YCbCrtoRGB" ref="d4e78b28b3fdb65fdd2889e2cfaa148a" args="() const " --> 288.1448 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_YCbCrtoRGB</b> () const </td></tr> 288.1449 + 288.1450 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e9383bb8937b8fa8e96f9612305c55bd"></a><!-- doxytag: member="cimg_library::CImg::RGBtoYUV" ref="e9383bb8937b8fa8e96f9612305c55bd" args="()" --> 288.1451 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e9383bb8937b8fa8e96f9612305c55bd">RGBtoYUV</a> ()</td></tr> 288.1452 + 288.1453 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (Y,U,V). <br></td></tr> 288.1454 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9c4fac27c39194ecf7fa5fe4ed6267b4"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoYUV" ref="9c4fac27c39194ecf7fa5fe4ed6267b4" args="() const " --> 288.1455 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoYUV</b> () const </td></tr> 288.1456 + 288.1457 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45958abd08f2a93d33fb77de4e5b0a66"></a><!-- doxytag: member="cimg_library::CImg::YUVtoRGB" ref="45958abd08f2a93d33fb77de4e5b0a66" args="()" --> 288.1458 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#45958abd08f2a93d33fb77de4e5b0a66">YUVtoRGB</a> ()</td></tr> 288.1459 + 288.1460 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (Y,U,V) to (R,G,B). <br></td></tr> 288.1461 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1982bc581b64ea9e3e583e2ec77b2e8b"></a><!-- doxytag: member="cimg_library::CImg::get_YUVtoRGB" ref="1982bc581b64ea9e3e583e2ec77b2e8b" args="() const " --> 288.1462 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_YUVtoRGB</b> () const </td></tr> 288.1463 + 288.1464 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2a5e7725a4aafab45bfecc7c31987aca"></a><!-- doxytag: member="cimg_library::CImg::RGBtoCMY" ref="2a5e7725a4aafab45bfecc7c31987aca" args="()" --> 288.1465 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2a5e7725a4aafab45bfecc7c31987aca">RGBtoCMY</a> ()</td></tr> 288.1466 + 288.1467 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (C,M,Y). <br></td></tr> 288.1468 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="412d694684c6656ceb1f7c021d66c9ac"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoCMY" ref="412d694684c6656ceb1f7c021d66c9ac" args="() const " --> 288.1469 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoCMY</b> () const </td></tr> 288.1470 + 288.1471 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f44e7452ef72387ee411a48e8fd8f2c6"></a><!-- doxytag: member="cimg_library::CImg::CMYtoRGB" ref="f44e7452ef72387ee411a48e8fd8f2c6" args="()" --> 288.1472 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f44e7452ef72387ee411a48e8fd8f2c6">CMYtoRGB</a> ()</td></tr> 288.1473 + 288.1474 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (C,M,Y) pixels of a color image into the (R,G,B) color space. <br></td></tr> 288.1475 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad54233cf16a565436463a601c8b9bfb"></a><!-- doxytag: member="cimg_library::CImg::get_CMYtoRGB" ref="ad54233cf16a565436463a601c8b9bfb" args="() const " --> 288.1476 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_CMYtoRGB</b> () const </td></tr> 288.1477 + 288.1478 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86448a9b36330cd1cdca41310714c82c"></a><!-- doxytag: member="cimg_library::CImg::CMYtoCMYK" ref="86448a9b36330cd1cdca41310714c82c" args="()" --> 288.1479 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#86448a9b36330cd1cdca41310714c82c">CMYtoCMYK</a> ()</td></tr> 288.1480 + 288.1481 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (C,M,Y) to (C,M,Y,K). <br></td></tr> 288.1482 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4862f178948c0e5315d40ecbe2347f59"></a><!-- doxytag: member="cimg_library::CImg::get_CMYtoCMYK" ref="4862f178948c0e5315d40ecbe2347f59" args="() const " --> 288.1483 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_CMYtoCMYK</b> () const </td></tr> 288.1484 + 288.1485 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e3827dc11a003ee30b1cd74ed7b74e15"></a><!-- doxytag: member="cimg_library::CImg::CMYKtoCMY" ref="e3827dc11a003ee30b1cd74ed7b74e15" args="()" --> 288.1486 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e3827dc11a003ee30b1cd74ed7b74e15">CMYKtoCMY</a> ()</td></tr> 288.1487 + 288.1488 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (C,M,Y,K) pixels of a color image into the (C,M,Y) color space. <br></td></tr> 288.1489 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e25db14c1b893a9e7c0536b71840ee87"></a><!-- doxytag: member="cimg_library::CImg::get_CMYKtoCMY" ref="e25db14c1b893a9e7c0536b71840ee87" args="() const " --> 288.1490 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_CMYKtoCMY</b> () const </td></tr> 288.1491 + 288.1492 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70c6c7a5d8ed24b2e618ab89f2dbadda"></a><!-- doxytag: member="cimg_library::CImg::RGBtoXYZ" ref="70c6c7a5d8ed24b2e618ab89f2dbadda" args="()" --> 288.1493 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#70c6c7a5d8ed24b2e618ab89f2dbadda">RGBtoXYZ</a> ()</td></tr> 288.1494 + 288.1495 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert color pixels from (R,G,B) to (X,Y,Z)_709. <br></td></tr> 288.1496 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d2c17aaaeae97c1ef498f3668ce5d177"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoXYZ" ref="d2c17aaaeae97c1ef498f3668ce5d177" args="() const " --> 288.1497 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoXYZ</b> () const </td></tr> 288.1498 + 288.1499 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6ec1861cb810ee3df63c6ef85cf270d8"></a><!-- doxytag: member="cimg_library::CImg::XYZtoRGB" ref="6ec1861cb810ee3df63c6ef85cf270d8" args="()" --> 288.1500 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6ec1861cb810ee3df63c6ef85cf270d8">XYZtoRGB</a> ()</td></tr> 288.1501 + 288.1502 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (X,Y,Z)_709 pixels of a color image into the (R,G,B) color space. <br></td></tr> 288.1503 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6ce72ccd76ed2feccfefcc11f49feace"></a><!-- doxytag: member="cimg_library::CImg::get_XYZtoRGB" ref="6ce72ccd76ed2feccfefcc11f49feace" args="() const " --> 288.1504 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_XYZtoRGB</b> () const </td></tr> 288.1505 + 288.1506 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13d44ab14b2f1f34ae150e5ead0a381e"></a><!-- doxytag: member="cimg_library::CImg::XYZtoLab" ref="13d44ab14b2f1f34ae150e5ead0a381e" args="()" --> 288.1507 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#13d44ab14b2f1f34ae150e5ead0a381e">XYZtoLab</a> ()</td></tr> 288.1508 + 288.1509 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (X,Y,Z)_709 pixels of a color image into the (L*,a*,b*) color space. <br></td></tr> 288.1510 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fedef7c2fb7a2d5fad9599909d9f8544"></a><!-- doxytag: member="cimg_library::CImg::get_XYZtoLab" ref="fedef7c2fb7a2d5fad9599909d9f8544" args="() const " --> 288.1511 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_XYZtoLab</b> () const </td></tr> 288.1512 + 288.1513 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="875c1681e84375ceb5d828e20de61704"></a><!-- doxytag: member="cimg_library::CImg::LabtoXYZ" ref="875c1681e84375ceb5d828e20de61704" args="()" --> 288.1514 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#875c1681e84375ceb5d828e20de61704">LabtoXYZ</a> ()</td></tr> 288.1515 + 288.1516 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (L,a,b) pixels of a color image into the (X,Y,Z) color space. <br></td></tr> 288.1517 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="12f61116848bc071b961f0e301d8c820"></a><!-- doxytag: member="cimg_library::CImg::get_LabtoXYZ" ref="12f61116848bc071b961f0e301d8c820" args="() const " --> 288.1518 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_LabtoXYZ</b> () const </td></tr> 288.1519 + 288.1520 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="697f3a725fd9e0349362d927ce95fd6e"></a><!-- doxytag: member="cimg_library::CImg::XYZtoxyY" ref="697f3a725fd9e0349362d927ce95fd6e" args="()" --> 288.1521 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#697f3a725fd9e0349362d927ce95fd6e">XYZtoxyY</a> ()</td></tr> 288.1522 + 288.1523 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (X,Y,Z)_709 pixels of a color image into the (x,y,Y) color space. <br></td></tr> 288.1524 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e719be7d6b6d5b5771f64adc2e95970a"></a><!-- doxytag: member="cimg_library::CImg::get_XYZtoxyY" ref="e719be7d6b6d5b5771f64adc2e95970a" args="() const " --> 288.1525 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_XYZtoxyY</b> () const </td></tr> 288.1526 + 288.1527 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7387432af686bbc6c973e7b2ceb2b80b"></a><!-- doxytag: member="cimg_library::CImg::xyYtoXYZ" ref="7387432af686bbc6c973e7b2ceb2b80b" args="()" --> 288.1528 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7387432af686bbc6c973e7b2ceb2b80b">xyYtoXYZ</a> ()</td></tr> 288.1529 + 288.1530 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert (x,y,Y) pixels of a color image into the (X,Y,Z)_709 color space. <br></td></tr> 288.1531 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="92e6fb003aef1e34e3f09a9a86002a1c"></a><!-- doxytag: member="cimg_library::CImg::get_xyYtoXYZ" ref="92e6fb003aef1e34e3f09a9a86002a1c" args="() const " --> 288.1532 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_xyYtoXYZ</b> () const </td></tr> 288.1533 + 288.1534 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb2b9b79af81584352a2e5f056b1a6df"></a><!-- doxytag: member="cimg_library::CImg::RGBtoLab" ref="eb2b9b79af81584352a2e5f056b1a6df" args="()" --> 288.1535 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#eb2b9b79af81584352a2e5f056b1a6df">RGBtoLab</a> ()</td></tr> 288.1536 + 288.1537 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (R,G,B) image to a (L,a,b) one. <br></td></tr> 288.1538 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29a2963650982ba4bf8c7fc0c451f7f0"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoLab" ref="29a2963650982ba4bf8c7fc0c451f7f0" args="() const " --> 288.1539 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoLab</b> () const </td></tr> 288.1540 + 288.1541 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a710f60075b3bc24790f17a7dc30e425"></a><!-- doxytag: member="cimg_library::CImg::LabtoRGB" ref="a710f60075b3bc24790f17a7dc30e425" args="()" --> 288.1542 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a710f60075b3bc24790f17a7dc30e425">LabtoRGB</a> ()</td></tr> 288.1543 + 288.1544 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (L,a,b) image to a (R,G,B) one. <br></td></tr> 288.1545 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91ac40e606effa38c3d4178f41a5e478"></a><!-- doxytag: member="cimg_library::CImg::get_LabtoRGB" ref="91ac40e606effa38c3d4178f41a5e478" args="() const " --> 288.1546 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_LabtoRGB</b> () const </td></tr> 288.1547 + 288.1548 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="27cd306be7eb34f49f9e880a9dd740ba"></a><!-- doxytag: member="cimg_library::CImg::RGBtoxyY" ref="27cd306be7eb34f49f9e880a9dd740ba" args="()" --> 288.1549 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#27cd306be7eb34f49f9e880a9dd740ba">RGBtoxyY</a> ()</td></tr> 288.1550 + 288.1551 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (R,G,B) image to a (x,y,Y) one. <br></td></tr> 288.1552 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f19388f9983c15e114e927bc87cb61d9"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoxyY" ref="f19388f9983c15e114e927bc87cb61d9" args="() const " --> 288.1553 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoxyY</b> () const </td></tr> 288.1554 + 288.1555 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="896475f657bb68369b7996d3faeaefee"></a><!-- doxytag: member="cimg_library::CImg::xyYtoRGB" ref="896475f657bb68369b7996d3faeaefee" args="()" --> 288.1556 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#896475f657bb68369b7996d3faeaefee">xyYtoRGB</a> ()</td></tr> 288.1557 + 288.1558 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (x,y,Y) image to a (R,G,B) one. <br></td></tr> 288.1559 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="10cb9ece3b5387405a8c1af48a8be764"></a><!-- doxytag: member="cimg_library::CImg::get_xyYtoRGB" ref="10cb9ece3b5387405a8c1af48a8be764" args="() const " --> 288.1560 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_xyYtoRGB</b> () const </td></tr> 288.1561 + 288.1562 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3d28b9e43e5d74e8b584844295bb1aa0"></a><!-- doxytag: member="cimg_library::CImg::RGBtoCMYK" ref="3d28b9e43e5d74e8b584844295bb1aa0" args="()" --> 288.1563 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3d28b9e43e5d74e8b584844295bb1aa0">RGBtoCMYK</a> ()</td></tr> 288.1564 + 288.1565 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (R,G,B) image to a (C,M,Y,K) one. <br></td></tr> 288.1566 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0bcf57518fe0c6440d141e8de4352319"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoCMYK" ref="0bcf57518fe0c6440d141e8de4352319" args="() const " --> 288.1567 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoCMYK</b> () const </td></tr> 288.1568 + 288.1569 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c59bacaa7b500f54351ebc11a2a4fc1d"></a><!-- doxytag: member="cimg_library::CImg::CMYKtoRGB" ref="c59bacaa7b500f54351ebc11a2a4fc1d" args="()" --> 288.1570 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c59bacaa7b500f54351ebc11a2a4fc1d">CMYKtoRGB</a> ()</td></tr> 288.1571 + 288.1572 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (C,M,Y,K) image to a (R,G,B) one. <br></td></tr> 288.1573 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dae9720758275e51ae1cd8d4e21ef5ca"></a><!-- doxytag: member="cimg_library::CImg::get_CMYKtoRGB" ref="dae9720758275e51ae1cd8d4e21ef5ca" args="() const " --> 288.1574 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_CMYKtoRGB</b> () const </td></tr> 288.1575 + 288.1576 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b4e692d67bb005b4b25555693d15f739">RGBtoBayer</a> ()</td></tr> 288.1577 + 288.1578 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a (R,G,B) image to a Bayer-coded representation. <a href="#b4e692d67bb005b4b25555693d15f739"></a><br></td></tr> 288.1579 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4810d1052d01825b7c08625690297bfa"></a><!-- doxytag: member="cimg_library::CImg::get_RGBtoBayer" ref="4810d1052d01825b7c08625690297bfa" args="() const " --> 288.1580 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_RGBtoBayer</b> () const </td></tr> 288.1581 + 288.1582 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d532472a01bafd5a972391870fbdcab"></a><!-- doxytag: member="cimg_library::CImg::BayertoRGB" ref="4d532472a01bafd5a972391870fbdcab" args="(const unsigned int interpolation_type=3)" --> 288.1583 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4d532472a01bafd5a972391870fbdcab">BayertoRGB</a> (const unsigned int interpolation_type=3)</td></tr> 288.1584 + 288.1585 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Convert a Bayer-coded image to a (R,G,B) color image. <br></td></tr> 288.1586 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7ef875be068aedc9d1486959caf1155c"></a><!-- doxytag: member="cimg_library::CImg::get_BayertoRGB" ref="7ef875be068aedc9d1486959caf1155c" args="(const unsigned int interpolation_type=3) const " --> 288.1587 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><b>get_BayertoRGB</b> (const unsigned int interpolation_type=3) const </td></tr> 288.1588 + 288.1589 +<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b72cb8ca2a5039c60f002f72bbb44cd5">default_LUT8</a> ()</td></tr> 288.1590 + 288.1591 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a default indexed color palette with 256 (R,G,B) entries. <a href="#b72cb8ca2a5039c60f002f72bbb44cd5"></a><br></td></tr> 288.1592 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3c82dae3264131f819857014435bbe3"></a><!-- doxytag: member="cimg_library::CImg::rainbow_LUT8" ref="f3c82dae3264131f819857014435bbe3" args="()" --> 288.1593 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f3c82dae3264131f819857014435bbe3">rainbow_LUT8</a> ()</td></tr> 288.1594 + 288.1595 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a rainbow color palette with 256 (R,G,B) entries. <br></td></tr> 288.1596 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f26c4f029563bf7ffd47ba51e8e09984"></a><!-- doxytag: member="cimg_library::CImg::contrast_LUT8" ref="f26c4f029563bf7ffd47ba51e8e09984" args="()" --> 288.1597 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tuchar > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f26c4f029563bf7ffd47ba51e8e09984">contrast_LUT8</a> ()</td></tr> 288.1598 + 288.1599 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a contrasted color palette with 256 (R,G,B) entries. <br></td></tr> 288.1600 +<tr><td colspan="2"><br><h2>Matrix and Vectors</h2></td></tr> 288.1601 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac10e7f03cdf50782511200bbcaeaa70"></a><!-- doxytag: member="cimg_library::CImg::get_vector_at" ref="ac10e7f03cdf50782511200bbcaeaa70" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const " --> 288.1602 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ac10e7f03cdf50782511200bbcaeaa70">get_vector_at</a> (const unsigned int x, const unsigned int y=0, const unsigned int z=0) const </td></tr> 288.1603 + 288.1604 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a new image corresponding to the vector located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1605 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="83c90e27cc58a73da616813898327966"></a><!-- doxytag: member="cimg_library::CImg::set_vector_at" ref="83c90e27cc58a73da616813898327966" args="(const CImg< t > &vec, const unsigned int x, const unsigned int y=0, const unsigned int z=0)" --> 288.1606 +template<typename t > </td></tr> 288.1607 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#83c90e27cc58a73da616813898327966">set_vector_at</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &vec, const unsigned int x, const unsigned int y=0, const unsigned int z=0)</td></tr> 288.1608 + 288.1609 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the image <code>vec</code> as the <em>vector</em> <em>valued</em> pixel located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1610 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0df72293d6377a36cce47d73a4b6bbfc"></a><!-- doxytag: member="cimg_library::CImg::get_matrix_at" ref="0df72293d6377a36cce47d73a4b6bbfc" args="(const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const " --> 288.1611 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0df72293d6377a36cce47d73a4b6bbfc">get_matrix_at</a> (const unsigned int x=0, const unsigned int y=0, const unsigned int z=0) const </td></tr> 288.1612 + 288.1613 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a new image corresponding to the <em>square</em> <em>matrix</em> located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1614 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e0e585d6280147aabd19c398819040d9"></a><!-- doxytag: member="cimg_library::CImg::set_matrix_at" ref="e0e585d6280147aabd19c398819040d9" args="(const CImg< t > &mat, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)" --> 288.1615 +template<typename t > </td></tr> 288.1616 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e0e585d6280147aabd19c398819040d9">set_matrix_at</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mat, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)</td></tr> 288.1617 + 288.1618 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the image <code>vec</code> as the <em>square</em> <em>matrix-valued</em> pixel located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1619 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="82cfb268b952aeeb1b55e6072a83d093"></a><!-- doxytag: member="cimg_library::CImg::get_tensor_at" ref="82cfb268b952aeeb1b55e6072a83d093" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0) const " --> 288.1620 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#82cfb268b952aeeb1b55e6072a83d093">get_tensor_at</a> (const unsigned int x, const unsigned int y=0, const unsigned int z=0) const </td></tr> 288.1621 + 288.1622 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a new image corresponding to the <em>diffusion</em> <em>tensor</em> located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1623 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f390fdfa10bc133864a83b101d934284"></a><!-- doxytag: member="cimg_library::CImg::set_tensor_at" ref="f390fdfa10bc133864a83b101d934284" args="(const CImg< t > &ten, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)" --> 288.1624 +template<typename t > </td></tr> 288.1625 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f390fdfa10bc133864a83b101d934284">set_tensor_at</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &ten, const unsigned int x=0, const unsigned int y=0, const unsigned int z=0)</td></tr> 288.1626 + 288.1627 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the image <code>vec</code> as the <em>tensor</em> <em>valued</em> pixel located at (<code>x</code>,<code>y</code>,<code>z</code>) of the current vector-valued image. <br></td></tr> 288.1628 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7a1fbbf9bb23d01f64a8ca3bd06b7c0f"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="7a1fbbf9bb23d01f64a8ca3bd06b7c0f" args="()" --> 288.1629 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7a1fbbf9bb23d01f64a8ca3bd06b7c0f">vector</a> ()</td></tr> 288.1630 + 288.1631 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Unroll all images values into a one-column vector. <br></td></tr> 288.1632 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae2388b58974ab43913f13c2df391c94"></a><!-- doxytag: member="cimg_library::CImg::get_vector" ref="ae2388b58974ab43913f13c2df391c94" args="() const " --> 288.1633 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_vector</b> () const </td></tr> 288.1634 + 288.1635 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec22e09b5cba5e5f6bb4174322a95019"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="ec22e09b5cba5e5f6bb4174322a95019" args="()" --> 288.1636 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ec22e09b5cba5e5f6bb4174322a95019">matrix</a> ()</td></tr> 288.1637 + 288.1638 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Realign pixel values of the instance image as a square matrix. <br></td></tr> 288.1639 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="20cece29b099a16e575f36ce597f2a5c"></a><!-- doxytag: member="cimg_library::CImg::get_matrix" ref="20cece29b099a16e575f36ce597f2a5c" args="() const " --> 288.1640 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_matrix</b> () const </td></tr> 288.1641 + 288.1642 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5d2d10755254c77c93b671d7cce54dcf"></a><!-- doxytag: member="cimg_library::CImg::tensor" ref="5d2d10755254c77c93b671d7cce54dcf" args="()" --> 288.1643 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5d2d10755254c77c93b671d7cce54dcf">tensor</a> ()</td></tr> 288.1644 + 288.1645 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Realign pixel values of the instance image as a symmetric tensor. <br></td></tr> 288.1646 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2c935f6e89c8a860559029a74fcac80a"></a><!-- doxytag: member="cimg_library::CImg::get_tensor" ref="2c935f6e89c8a860559029a74fcac80a" args="() const " --> 288.1647 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_tensor</b> () const </td></tr> 288.1648 + 288.1649 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6f2a337d1eb6c94217167dd9296890f3"></a><!-- doxytag: member="cimg_library::CImg::unroll" ref="6f2a337d1eb6c94217167dd9296890f3" args="(const char axis)" --> 288.1650 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6f2a337d1eb6c94217167dd9296890f3">unroll</a> (const char axis)</td></tr> 288.1651 + 288.1652 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Unroll all images values into specified axis. <br></td></tr> 288.1653 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0d9c7fb0da448c7615d82755b9a17f9b"></a><!-- doxytag: member="cimg_library::CImg::get_unroll" ref="0d9c7fb0da448c7615d82755b9a17f9b" args="(const char axis) const " --> 288.1654 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_unroll</b> (const char axis) const </td></tr> 288.1655 + 288.1656 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9b38ad4f425b6b4768d5ee82cb562119"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="9b38ad4f425b6b4768d5ee82cb562119" args="()" --> 288.1657 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9b38ad4f425b6b4768d5ee82cb562119">diagonal</a> ()</td></tr> 288.1658 + 288.1659 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a diagonal matrix, whose diagonal coefficients are the coefficients of the input image. <br></td></tr> 288.1660 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5556dfbb562455d3d196295c1ca6e0e0"></a><!-- doxytag: member="cimg_library::CImg::get_diagonal" ref="5556dfbb562455d3d196295c1ca6e0e0" args="() const " --> 288.1661 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_diagonal</b> () const </td></tr> 288.1662 + 288.1663 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="187aa670727bb4d1a9160702fcf9a418"></a><!-- doxytag: member="cimg_library::CImg::identity_matrix" ref="187aa670727bb4d1a9160702fcf9a418" args="()" --> 288.1664 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#187aa670727bb4d1a9160702fcf9a418">identity_matrix</a> ()</td></tr> 288.1665 + 288.1666 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get an identity matrix having same dimension than instance image. <br></td></tr> 288.1667 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="511692deba5af28d058753c4daed1bc1"></a><!-- doxytag: member="cimg_library::CImg::get_identity_matrix" ref="511692deba5af28d058753c4daed1bc1" args="() const " --> 288.1668 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_identity_matrix</b> () const </td></tr> 288.1669 + 288.1670 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3adb54a3f492f7701a1feac9a6954aa"></a><!-- doxytag: member="cimg_library::CImg::sequence" ref="f3adb54a3f492f7701a1feac9a6954aa" args="(const T a0, const T a1)" --> 288.1671 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f3adb54a3f492f7701a1feac9a6954aa">sequence</a> (const T a0, const T a1)</td></tr> 288.1672 + 288.1673 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a N-numbered sequence vector from <code>a0</code> to <code>a1</code>. <br></td></tr> 288.1674 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2b0951189bd17a05ace85720d379537e"></a><!-- doxytag: member="cimg_library::CImg::get_sequence" ref="2b0951189bd17a05ace85720d379537e" args="(const T a0, const T a1) const " --> 288.1675 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_sequence</b> (const T a0, const T a1) const </td></tr> 288.1676 + 288.1677 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="49f00018eac2d649fa10c8a25c31c0df"></a><!-- doxytag: member="cimg_library::CImg::transpose" ref="49f00018eac2d649fa10c8a25c31c0df" args="()" --> 288.1678 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#49f00018eac2d649fa10c8a25c31c0df">transpose</a> ()</td></tr> 288.1679 + 288.1680 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Transpose the current matrix. <br></td></tr> 288.1681 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed804862b61096d9aa58ebb809deeb26"></a><!-- doxytag: member="cimg_library::CImg::get_transpose" ref="ed804862b61096d9aa58ebb809deeb26" args="() const " --> 288.1682 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_transpose</b> () const </td></tr> 288.1683 + 288.1684 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="930302996a00b75e7e4ea7b4d6dea821"></a><!-- doxytag: member="cimg_library::CImg::invert" ref="930302996a00b75e7e4ea7b4d6dea821" args="(const bool use_LU=true)" --> 288.1685 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#930302996a00b75e7e4ea7b4d6dea821">invert</a> (const bool use_LU=true)</td></tr> 288.1686 + 288.1687 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert the current matrix. <br></td></tr> 288.1688 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="16fe55a07fa0f2e43ae7377a915b03d3"></a><!-- doxytag: member="cimg_library::CImg::get_invert" ref="16fe55a07fa0f2e43ae7377a915b03d3" args="(const bool use_LU=true) const " --> 288.1689 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_invert</b> (const bool use_LU=true) const </td></tr> 288.1690 + 288.1691 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bff5169ef56ddce3102cfa3b6de0bd19"></a><!-- doxytag: member="cimg_library::CImg::pseudoinvert" ref="bff5169ef56ddce3102cfa3b6de0bd19" args="()" --> 288.1692 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bff5169ef56ddce3102cfa3b6de0bd19">pseudoinvert</a> ()</td></tr> 288.1693 + 288.1694 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the pseudo-inverse (Moore-Penrose) of the matrix. <br></td></tr> 288.1695 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eab392972e99fa46fb49c09c5d35dbcf"></a><!-- doxytag: member="cimg_library::CImg::get_pseudoinvert" ref="eab392972e99fa46fb49c09c5d35dbcf" args="() const " --> 288.1696 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_pseudoinvert</b> () const </td></tr> 288.1697 + 288.1698 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="49ccd3590b6edcf060b2c8def95d96a7"></a><!-- doxytag: member="cimg_library::CImg::cross" ref="49ccd3590b6edcf060b2c8def95d96a7" args="(const CImg< t > &img)" --> 288.1699 +template<typename t > </td></tr> 288.1700 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#49ccd3590b6edcf060b2c8def95d96a7">cross</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.1701 + 288.1702 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the cross product between two 3d vectors. <br></td></tr> 288.1703 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="36de2ae48c6060bc77719bd2e4ec435e"></a><!-- doxytag: member="cimg_library::CImg::get_cross" ref="36de2ae48c6060bc77719bd2e4ec435e" args="(const CImg< t > &img) const " --> 288.1704 +template<typename t > </td></tr> 288.1705 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.1706 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_cross</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.1707 + 288.1708 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="595ac87408ea46f103791933e3dfd187"></a><!-- doxytag: member="cimg_library::CImg::solve" ref="595ac87408ea46f103791933e3dfd187" args="(const CImg< t > &A)" --> 288.1709 +template<typename t > </td></tr> 288.1710 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#595ac87408ea46f103791933e3dfd187">solve</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &A)</td></tr> 288.1711 + 288.1712 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Solve a linear system AX=B where B=*this. <br></td></tr> 288.1713 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="66561720cb9783d897ceb8fad40e923b"></a><!-- doxytag: member="cimg_library::CImg::get_solve" ref="66561720cb9783d897ceb8fad40e923b" args="(const CImg< t > &A) const " --> 288.1714 +template<typename t > </td></tr> 288.1715 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset2<br class="typebreak"> 288.1716 +< T, t, float >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_solve</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &A) const </td></tr> 288.1717 + 288.1718 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3877ca4e71f0332f171e1fd9c24dd25c"></a><!-- doxytag: member="cimg_library::CImg::_solve" ref="3877ca4e71f0332f171e1fd9c24dd25c" args="(const CImg< t > &A, const CImg< ti > &indx)" --> 288.1719 +template<typename t , typename ti > </td></tr> 288.1720 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_solve</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &A, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &indx)</td></tr> 288.1721 + 288.1722 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2c1c7ca0a47cced1f705ee58c3d37a3e"></a><!-- doxytag: member="cimg_library::CImg::solve_tridiagonal" ref="2c1c7ca0a47cced1f705ee58c3d37a3e" args="(const CImg< t > &a, const CImg< t > &b, const CImg< t > &c)" --> 288.1723 +template<typename t > </td></tr> 288.1724 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2c1c7ca0a47cced1f705ee58c3d37a3e">solve_tridiagonal</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &a, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &b, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &c)</td></tr> 288.1725 + 288.1726 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Solve a linear system AX=B where B=*this and A is a tridiagonal matrix A = [ b0,c0,0,...; a1,b1,c1,0,... ; ... ; ...,0,aN,bN ]. <br></td></tr> 288.1727 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ac04f8ad4e092d0eed4c48b4ea290ee3"></a><!-- doxytag: member="cimg_library::CImg::get_solve_tridiagonal" ref="ac04f8ad4e092d0eed4c48b4ea290ee3" args="(const CImg< t > &a, const CImg< t > &b, const CImg< t > &c) const " --> 288.1728 +template<typename t > </td></tr> 288.1729 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset2<br class="typebreak"> 288.1730 +< T, t, float >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_solve_tridiagonal</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &a, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &b, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &c) const </td></tr> 288.1731 + 288.1732 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="44ae8948547aa53345e5dcda7e6b7dc7"></a><!-- doxytag: member="cimg_library::CImg::sort" ref="44ae8948547aa53345e5dcda7e6b7dc7" args="(CImg< t > &permutations, const bool increasing=true)" --> 288.1733 +template<typename t > </td></tr> 288.1734 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#44ae8948547aa53345e5dcda7e6b7dc7">sort</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &permutations, const bool increasing=true)</td></tr> 288.1735 + 288.1736 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Sort values of a vector and get permutations. <br></td></tr> 288.1737 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="654dfeac2269456e9941103a43479f59"></a><!-- doxytag: member="cimg_library::CImg::get_sort" ref="654dfeac2269456e9941103a43479f59" args="(CImg< t > &permutations, const bool increasing=true) const " --> 288.1738 +template<typename t > </td></tr> 288.1739 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_sort</b> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &permutations, const bool increasing=true) const </td></tr> 288.1740 + 288.1741 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1009c7eb1992bedd2cc6928ecef57722"></a><!-- doxytag: member="cimg_library::CImg::sort" ref="1009c7eb1992bedd2cc6928ecef57722" args="(const bool increasing=true)" --> 288.1742 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>sort</b> (const bool increasing=true)</td></tr> 288.1743 + 288.1744 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="46d23fc1674d618103d85da7af0be57e"></a><!-- doxytag: member="cimg_library::CImg::get_sort" ref="46d23fc1674d618103d85da7af0be57e" args="(const bool increasing=true) const " --> 288.1745 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_sort</b> (const bool increasing=true) const </td></tr> 288.1746 + 288.1747 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="424c620aa088afa2b7d9f038075a05ea"></a><!-- doxytag: member="cimg_library::CImg::_quicksort" ref="424c620aa088afa2b7d9f038075a05ea" args="(const int min, const int max, CImg< t > &permutations, const bool increasing)" --> 288.1748 +template<typename t > </td></tr> 288.1749 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_quicksort</b> (const int min, const int max, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &permutations, const bool increasing)</td></tr> 288.1750 + 288.1751 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9b26a9b20ac9729e26552e8d44a9d478"></a><!-- doxytag: member="cimg_library::CImg::permute" ref="9b26a9b20ac9729e26552e8d44a9d478" args="(const CImg< t > &permutation)" --> 288.1752 +template<typename t > </td></tr> 288.1753 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9b26a9b20ac9729e26552e8d44a9d478">permute</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &permutation)</td></tr> 288.1754 + 288.1755 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get a permutation of the pixels. <br></td></tr> 288.1756 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="16d0ee99a1b9181a8a42e4d98b37afa7"></a><!-- doxytag: member="cimg_library::CImg::get_permute" ref="16d0ee99a1b9181a8a42e4d98b37afa7" args="(const CImg< t > &permutation) const " --> 288.1757 +template<typename t > </td></tr> 288.1758 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_permute</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &permutation) const </td></tr> 288.1759 + 288.1760 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0c1627a6f79904e70c784923a3f1ed9f"></a><!-- doxytag: member="cimg_library::CImg::SVD" ref="0c1627a6f79904e70c784923a3f1ed9f" args="(CImg< t > &U, CImg< t > &S, CImg< t > &V, const bool sorting=true, const unsigned int max_iter=40, const float lambda=0) const " --> 288.1761 +template<typename t > </td></tr> 288.1762 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0c1627a6f79904e70c784923a3f1ed9f">SVD</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &U, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &S, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &V, const bool sorting=true, const unsigned int max_iter=40, const float lambda=0) const </td></tr> 288.1763 + 288.1764 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the SVD of a general matrix. <br></td></tr> 288.1765 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d0855328aefbaa69e106fcf107d3d108"></a><!-- doxytag: member="cimg_library::CImg::SVD" ref="d0855328aefbaa69e106fcf107d3d108" args="(CImgList< t > &USV) const " --> 288.1766 +template<typename t > </td></tr> 288.1767 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d0855328aefbaa69e106fcf107d3d108">SVD</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &USV) const </td></tr> 288.1768 + 288.1769 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the SVD of a general matrix. <br></td></tr> 288.1770 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e0595a4603944cb0affe5b4ac29bdd6b"></a><!-- doxytag: member="cimg_library::CImg::get_SVD" ref="e0595a4603944cb0affe5b4ac29bdd6b" args="(const bool sorting=true) const " --> 288.1771 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e0595a4603944cb0affe5b4ac29bdd6b">get_SVD</a> (const bool sorting=true) const </td></tr> 288.1772 + 288.1773 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the SVD of a general matrix. <br></td></tr> 288.1774 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="68175affb2bb63c3db44ca45199889e7"></a><!-- doxytag: member="cimg_library::CImg::_LU" ref="68175affb2bb63c3db44ca45199889e7" args="(CImg< t > &indx, bool &d)" --> 288.1775 +template<typename t > </td></tr> 288.1776 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_LU</b> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &indx, bool &d)</td></tr> 288.1777 + 288.1778 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a956e08285c0d87805d3c3c2c4450301"></a><!-- doxytag: member="cimg_library::CImg::eigen" ref="a956e08285c0d87805d3c3c2c4450301" args="(CImg< t > &val, CImg< t > &vec) const " --> 288.1779 +template<typename t > </td></tr> 288.1780 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a956e08285c0d87805d3c3c2c4450301">eigen</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &val, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &vec) const </td></tr> 288.1781 + 288.1782 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the eigenvalues and eigenvectors of a matrix. <br></td></tr> 288.1783 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4594e576d73d47bd3557c2db395c44df"></a><!-- doxytag: member="cimg_library::CImg::get_eigen" ref="4594e576d73d47bd3557c2db395c44df" args="() const " --> 288.1784 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4594e576d73d47bd3557c2db395c44df">get_eigen</a> () const </td></tr> 288.1785 + 288.1786 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the eigenvalues and eigenvectors of a matrix. <br></td></tr> 288.1787 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fddd851f2413d27929b21f9492f3bfbe"></a><!-- doxytag: member="cimg_library::CImg::symmetric_eigen" ref="fddd851f2413d27929b21f9492f3bfbe" args="(CImg< t > &val, CImg< t > &vec) const " --> 288.1788 +template<typename t > </td></tr> 288.1789 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fddd851f2413d27929b21f9492f3bfbe">symmetric_eigen</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &val, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &vec) const </td></tr> 288.1790 + 288.1791 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the eigenvalues and eigenvectors of a symmetric matrix. <br></td></tr> 288.1792 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f970d1443e880c4d5668e2b752c5fbae"></a><!-- doxytag: member="cimg_library::CImg::get_symmetric_eigen" ref="f970d1443e880c4d5668e2b752c5fbae" args="() const " --> 288.1793 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f970d1443e880c4d5668e2b752c5fbae">get_symmetric_eigen</a> () const </td></tr> 288.1794 + 288.1795 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the eigenvalues and eigenvectors of a symmetric matrix. <br></td></tr> 288.1796 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c2f7bb966ea88b768fdca82d82a96ba0"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="c2f7bb966ea88b768fdca82d82a96ba0" args="(const T &a0)" --> 288.1797 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c2f7bb966ea88b768fdca82d82a96ba0">vector</a> (const T &a0)</td></tr> 288.1798 + 288.1799 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1800 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4018dc62ea62f2ede589cfd01168d103"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="4018dc62ea62f2ede589cfd01168d103" args="(const T &a0, const T &a1)" --> 288.1801 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4018dc62ea62f2ede589cfd01168d103">vector</a> (const T &a0, const T &a1)</td></tr> 288.1802 + 288.1803 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1804 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6660d13478b094af5f46eb1fbc110513"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="6660d13478b094af5f46eb1fbc110513" args="(const T &a0, const T &a1, const T &a2)" --> 288.1805 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6660d13478b094af5f46eb1fbc110513">vector</a> (const T &a0, const T &a1, const T &a2)</td></tr> 288.1806 + 288.1807 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1808 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="064afd0c0df3a55acb3f47c208044d7a"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="064afd0c0df3a55acb3f47c208044d7a" args="(const T &a0, const T &a1, const T &a2, const T &a3)" --> 288.1809 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#064afd0c0df3a55acb3f47c208044d7a">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3)</td></tr> 288.1810 + 288.1811 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1812 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="26e0f59a179718455ee57fcd618ada21"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="26e0f59a179718455ee57fcd618ada21" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)" --> 288.1813 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#26e0f59a179718455ee57fcd618ada21">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)</td></tr> 288.1814 + 288.1815 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1816 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c3c919f0637431613b51cfd8a4a7638"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="0c3c919f0637431613b51cfd8a4a7638" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5)" --> 288.1817 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0c3c919f0637431613b51cfd8a4a7638">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5)</td></tr> 288.1818 + 288.1819 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1820 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7b1db07e34ac249af7b64b1a46e183c2"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="7b1db07e34ac249af7b64b1a46e183c2" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)" --> 288.1821 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7b1db07e34ac249af7b64b1a46e183c2">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)</td></tr> 288.1822 + 288.1823 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1824 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78326ef7939a5caa29698ae4185b1ca9"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="78326ef7939a5caa29698ae4185b1ca9" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7)" --> 288.1825 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#78326ef7939a5caa29698ae4185b1ca9">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7)</td></tr> 288.1826 + 288.1827 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1828 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad82caec44604bd51a286afbb1bb2e89"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="ad82caec44604bd51a286afbb1bb2e89" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)" --> 288.1829 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ad82caec44604bd51a286afbb1bb2e89">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)</td></tr> 288.1830 + 288.1831 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1832 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ef996c8c7d9f3c76dce7c47cb955a6d6"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="ef996c8c7d9f3c76dce7c47cb955a6d6" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9)" --> 288.1833 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ef996c8c7d9f3c76dce7c47cb955a6d6">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9)</td></tr> 288.1834 + 288.1835 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1836 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="38a14e7ac3c7f0c48f595a7473f61a08"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="38a14e7ac3c7f0c48f595a7473f61a08" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10)" --> 288.1837 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#38a14e7ac3c7f0c48f595a7473f61a08">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10)</td></tr> 288.1838 + 288.1839 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1840 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="288a8040101bdfd97d65709e34b17017"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="288a8040101bdfd97d65709e34b17017" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11)" --> 288.1841 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#288a8040101bdfd97d65709e34b17017">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11)</td></tr> 288.1842 + 288.1843 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1844 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f28a9ec7a816a3afd9fa1ce6a7d736e3"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="f28a9ec7a816a3afd9fa1ce6a7d736e3" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12)" --> 288.1845 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f28a9ec7a816a3afd9fa1ce6a7d736e3">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12)</td></tr> 288.1846 + 288.1847 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1848 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="60bd022e43e34afb712ae67ab2741603"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="60bd022e43e34afb712ae67ab2741603" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13)" --> 288.1849 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#60bd022e43e34afb712ae67ab2741603">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13)</td></tr> 288.1850 + 288.1851 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1852 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4a45f8df1eae94f9e3225052f9abca1b"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="4a45f8df1eae94f9e3225052f9abca1b" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14)" --> 288.1853 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4a45f8df1eae94f9e3225052f9abca1b">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14)</td></tr> 288.1854 + 288.1855 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1856 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1be60115c2094fa8231b92025dfbf9a0"></a><!-- doxytag: member="cimg_library::CImg::vector" ref="1be60115c2094fa8231b92025dfbf9a0" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)" --> 288.1857 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1be60115c2094fa8231b92025dfbf9a0">vector</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)</td></tr> 288.1858 + 288.1859 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a vector with specified coefficients. <br></td></tr> 288.1860 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dfba8474c6ed7cb810b22a88ca8a9806"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="dfba8474c6ed7cb810b22a88ca8a9806" args="(const T &a0)" --> 288.1861 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dfba8474c6ed7cb810b22a88ca8a9806">matrix</a> (const T &a0)</td></tr> 288.1862 + 288.1863 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 1x1 square matrix with specified coefficients. <br></td></tr> 288.1864 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4dce73b905d98f22a5860464e571120f"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="4dce73b905d98f22a5860464e571120f" args="(const T &a0, const T &a1, const T &a2, const T &a3)" --> 288.1865 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4dce73b905d98f22a5860464e571120f">matrix</a> (const T &a0, const T &a1, const T &a2, const T &a3)</td></tr> 288.1866 + 288.1867 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 2x2 square matrix with specified coefficients. <br></td></tr> 288.1868 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80ec581a136a796347cfe19e4dea09e6"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="80ec581a136a796347cfe19e4dea09e6" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)" --> 288.1869 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#80ec581a136a796347cfe19e4dea09e6">matrix</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8)</td></tr> 288.1870 + 288.1871 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3x3 square matrix with specified coefficients. <br></td></tr> 288.1872 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f9b706c8aa7534e7014afc3ce30a8d9"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="2f9b706c8aa7534e7014afc3ce30a8d9" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)" --> 288.1873 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2f9b706c8aa7534e7014afc3ce30a8d9">matrix</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15)</td></tr> 288.1874 + 288.1875 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 4x4 square matrix with specified coefficients. <br></td></tr> 288.1876 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b52c8cf4602a06831b2bbe607cc619cc"></a><!-- doxytag: member="cimg_library::CImg::matrix" ref="b52c8cf4602a06831b2bbe607cc619cc" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15, const T &a16, const T &a17, const T &a18, const T &a19, const T &a20, const T &a21, const T &a22, const T &a23, const T &a24)" --> 288.1877 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b52c8cf4602a06831b2bbe607cc619cc">matrix</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6, const T &a7, const T &a8, const T &a9, const T &a10, const T &a11, const T &a12, const T &a13, const T &a14, const T &a15, const T &a16, const T &a17, const T &a18, const T &a19, const T &a20, const T &a21, const T &a22, const T &a23, const T &a24)</td></tr> 288.1878 + 288.1879 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 5x5 square matrix with specified coefficients. <br></td></tr> 288.1880 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d51e031c3ff9afc1c1f5587e770ff382"></a><!-- doxytag: member="cimg_library::CImg::tensor" ref="d51e031c3ff9afc1c1f5587e770ff382" args="(const T &a1)" --> 288.1881 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d51e031c3ff9afc1c1f5587e770ff382">tensor</a> (const T &a1)</td></tr> 288.1882 + 288.1883 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 1x1 symmetric matrix with specified coefficients. <br></td></tr> 288.1884 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5ec2064aa2a36440d892d0ffe814975f"></a><!-- doxytag: member="cimg_library::CImg::tensor" ref="5ec2064aa2a36440d892d0ffe814975f" args="(const T &a1, const T &a2, const T &a3)" --> 288.1885 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5ec2064aa2a36440d892d0ffe814975f">tensor</a> (const T &a1, const T &a2, const T &a3)</td></tr> 288.1886 + 288.1887 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 2x2 symmetric matrix tensor with specified coefficients. <br></td></tr> 288.1888 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8efd27c5a0259e3d183d187066daa81"></a><!-- doxytag: member="cimg_library::CImg::tensor" ref="e8efd27c5a0259e3d183d187066daa81" args="(const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)" --> 288.1889 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e8efd27c5a0259e3d183d187066daa81">tensor</a> (const T &a1, const T &a2, const T &a3, const T &a4, const T &a5, const T &a6)</td></tr> 288.1890 + 288.1891 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3x3 symmetric matrix with specified coefficients. <br></td></tr> 288.1892 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="faba9e417e4dc79a30ca192e17e1f4d8"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="faba9e417e4dc79a30ca192e17e1f4d8" args="(const T &a0)" --> 288.1893 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#faba9e417e4dc79a30ca192e17e1f4d8">diagonal</a> (const T &a0)</td></tr> 288.1894 + 288.1895 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 1x1 diagonal matrix with specified coefficients. <br></td></tr> 288.1896 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="583389fd7581839ef6c9eda2c2e75720"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="583389fd7581839ef6c9eda2c2e75720" args="(const T &a0, const T &a1)" --> 288.1897 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#583389fd7581839ef6c9eda2c2e75720">diagonal</a> (const T &a0, const T &a1)</td></tr> 288.1898 + 288.1899 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 2x2 diagonal matrix with specified coefficients. <br></td></tr> 288.1900 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f89435259d190fe6b390cde30664ea0c"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="f89435259d190fe6b390cde30664ea0c" args="(const T &a0, const T &a1, const T &a2)" --> 288.1901 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f89435259d190fe6b390cde30664ea0c">diagonal</a> (const T &a0, const T &a1, const T &a2)</td></tr> 288.1902 + 288.1903 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3x3 diagonal matrix with specified coefficients. <br></td></tr> 288.1904 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6ad181903a88ac52f15222dd28bba42"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="f6ad181903a88ac52f15222dd28bba42" args="(const T &a0, const T &a1, const T &a2, const T &a3)" --> 288.1905 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f6ad181903a88ac52f15222dd28bba42">diagonal</a> (const T &a0, const T &a1, const T &a2, const T &a3)</td></tr> 288.1906 + 288.1907 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 4x4 diagonal matrix with specified coefficients. <br></td></tr> 288.1908 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8e8f3b19a8f866cb9b06c4667412abfd"></a><!-- doxytag: member="cimg_library::CImg::diagonal" ref="8e8f3b19a8f866cb9b06c4667412abfd" args="(const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)" --> 288.1909 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8e8f3b19a8f866cb9b06c4667412abfd">diagonal</a> (const T &a0, const T &a1, const T &a2, const T &a3, const T &a4)</td></tr> 288.1910 + 288.1911 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 5x5 diagonal matrix with specified coefficients. <br></td></tr> 288.1912 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="14131b116119f392019c431f6eac5c6f"></a><!-- doxytag: member="cimg_library::CImg::identity_matrix" ref="14131b116119f392019c431f6eac5c6f" args="(const unsigned int N)" --> 288.1913 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#14131b116119f392019c431f6eac5c6f">identity_matrix</a> (const unsigned int N)</td></tr> 288.1914 + 288.1915 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a NxN identity matrix. <br></td></tr> 288.1916 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87cb488d5c29e94e13ff5a6af3112034"></a><!-- doxytag: member="cimg_library::CImg::sequence" ref="87cb488d5c29e94e13ff5a6af3112034" args="(const unsigned int N, const T a0, const T a1)" --> 288.1917 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#87cb488d5c29e94e13ff5a6af3112034">sequence</a> (const unsigned int N, const T a0, const T a1)</td></tr> 288.1918 + 288.1919 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a N-numbered sequence vector from <code>a0</code> to <code>a1</code>. <br></td></tr> 288.1920 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1bf68d76e4c29dde15607a212f6c1b1f"></a><!-- doxytag: member="cimg_library::CImg::rotation_matrix" ref="1bf68d76e4c29dde15607a212f6c1b1f" args="(const float x, const float y, const float z, const float w, const bool quaternion_data=false)" --> 288.1921 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1bf68d76e4c29dde15607a212f6c1b1f">rotation_matrix</a> (const float x, const float y, const float z, const float w, const bool quaternion_data=false)</td></tr> 288.1922 + 288.1923 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a 3x3 rotation matrix along the (x,y,z)-axis with an angle w. <br></td></tr> 288.1924 +<tr><td colspan="2"><br><h2>Image File Loading</h2></td></tr> 288.1925 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#138dcc5db93d511d224d88405a0041ce">load</a> (const char *const filename)</td></tr> 288.1926 + 288.1927 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a file. <a href="#138dcc5db93d511d224d88405a0041ce"></a><br></td></tr> 288.1928 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8483309e9e347b1f8b35337c543d7aed"></a><!-- doxytag: member="cimg_library::CImg::load_ascii" ref="8483309e9e347b1f8b35337c543d7aed" args="(const char *const filename)" --> 288.1929 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8483309e9e347b1f8b35337c543d7aed">load_ascii</a> (const char *const filename)</td></tr> 288.1930 + 288.1931 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an ASCII file. <br></td></tr> 288.1932 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="94a4329d5cb0441e3ed2082a7069a7d3"></a><!-- doxytag: member="cimg_library::CImg::load_ascii" ref="94a4329d5cb0441e3ed2082a7069a7d3" args="(cimg_std::FILE *const file)" --> 288.1933 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#94a4329d5cb0441e3ed2082a7069a7d3">load_ascii</a> (cimg_std::FILE *const file)</td></tr> 288.1934 + 288.1935 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an ASCII file. <br></td></tr> 288.1936 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="62227b248f63cfb2706667c4e78ca9a5"></a><!-- doxytag: member="cimg_library::CImg::_load_ascii" ref="62227b248f63cfb2706667c4e78ca9a5" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1937 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_ascii</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1938 + 288.1939 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15505951824c019f6fdea4f0eaab8cac"></a><!-- doxytag: member="cimg_library::CImg::load_dlm" ref="15505951824c019f6fdea4f0eaab8cac" args="(const char *const filename)" --> 288.1940 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#15505951824c019f6fdea4f0eaab8cac">load_dlm</a> (const char *const filename)</td></tr> 288.1941 + 288.1942 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a DLM file. <br></td></tr> 288.1943 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c703d2dfe1bd66d26370decedd3da061"></a><!-- doxytag: member="cimg_library::CImg::load_dlm" ref="c703d2dfe1bd66d26370decedd3da061" args="(cimg_std::FILE *const file)" --> 288.1944 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c703d2dfe1bd66d26370decedd3da061">load_dlm</a> (cimg_std::FILE *const file)</td></tr> 288.1945 + 288.1946 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a DLM file. <br></td></tr> 288.1947 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b9d7c247590c3aeed06377b17c3628e"></a><!-- doxytag: member="cimg_library::CImg::_load_dlm" ref="0b9d7c247590c3aeed06377b17c3628e" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1948 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_dlm</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1949 + 288.1950 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bd7e94f200f3d4bd249c32d0d9c511bc"></a><!-- doxytag: member="cimg_library::CImg::load_bmp" ref="bd7e94f200f3d4bd249c32d0d9c511bc" args="(const char *const filename)" --> 288.1951 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bd7e94f200f3d4bd249c32d0d9c511bc">load_bmp</a> (const char *const filename)</td></tr> 288.1952 + 288.1953 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a BMP file. <br></td></tr> 288.1954 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="df86b13be82c7f4caf223c5fd33dc564"></a><!-- doxytag: member="cimg_library::CImg::load_bmp" ref="df86b13be82c7f4caf223c5fd33dc564" args="(cimg_std::FILE *const file)" --> 288.1955 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#df86b13be82c7f4caf223c5fd33dc564">load_bmp</a> (cimg_std::FILE *const file)</td></tr> 288.1956 + 288.1957 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a BMP file. <br></td></tr> 288.1958 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1cfd9d0f96717b8172f63c9245e36479"></a><!-- doxytag: member="cimg_library::CImg::_load_bmp" ref="1cfd9d0f96717b8172f63c9245e36479" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1959 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_bmp</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1960 + 288.1961 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4e17798245c1eac132b4b286c8e4419"></a><!-- doxytag: member="cimg_library::CImg::load_jpeg" ref="e4e17798245c1eac132b4b286c8e4419" args="(const char *const filename)" --> 288.1962 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e4e17798245c1eac132b4b286c8e4419">load_jpeg</a> (const char *const filename)</td></tr> 288.1963 + 288.1964 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a JPEG file. <br></td></tr> 288.1965 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05e6e25d683134d2c99014fd03f5b860"></a><!-- doxytag: member="cimg_library::CImg::load_jpeg" ref="05e6e25d683134d2c99014fd03f5b860" args="(cimg_std::FILE *const file)" --> 288.1966 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#05e6e25d683134d2c99014fd03f5b860">load_jpeg</a> (cimg_std::FILE *const file)</td></tr> 288.1967 + 288.1968 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a JPEG file. <br></td></tr> 288.1969 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8cd79f9866c3070bc775fd4c30714e8"></a><!-- doxytag: member="cimg_library::CImg::_load_jpeg" ref="e8cd79f9866c3070bc775fd4c30714e8" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1970 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_jpeg</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1971 + 288.1972 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b58020c04f6ddaa44007e9edbcba0a6"></a><!-- doxytag: member="cimg_library::CImg::load_magick" ref="1b58020c04f6ddaa44007e9edbcba0a6" args="(const char *const filename)" --> 288.1973 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1b58020c04f6ddaa44007e9edbcba0a6">load_magick</a> (const char *const filename)</td></tr> 288.1974 + 288.1975 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a file, using Magick++ library. <br></td></tr> 288.1976 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d3058370782eb3e0ebc5c5213d86a27"></a><!-- doxytag: member="cimg_library::CImg::load_png" ref="8d3058370782eb3e0ebc5c5213d86a27" args="(const char *const filename)" --> 288.1977 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8d3058370782eb3e0ebc5c5213d86a27">load_png</a> (const char *const filename)</td></tr> 288.1978 + 288.1979 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PNG file. <br></td></tr> 288.1980 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f6f002e4cc449887b258d7a5b30afd8"></a><!-- doxytag: member="cimg_library::CImg::load_png" ref="2f6f002e4cc449887b258d7a5b30afd8" args="(cimg_std::FILE *const file)" --> 288.1981 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2f6f002e4cc449887b258d7a5b30afd8">load_png</a> (cimg_std::FILE *const file)</td></tr> 288.1982 + 288.1983 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PNG file. <br></td></tr> 288.1984 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a95be297f9286d67a7dda3bff5fa563f"></a><!-- doxytag: member="cimg_library::CImg::_load_png" ref="a95be297f9286d67a7dda3bff5fa563f" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1985 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_png</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1986 + 288.1987 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a104737d62b54c15489b481a199fb72a"></a><!-- doxytag: member="cimg_library::CImg::load_pnm" ref="a104737d62b54c15489b481a199fb72a" args="(const char *const filename)" --> 288.1988 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a104737d62b54c15489b481a199fb72a">load_pnm</a> (const char *const filename)</td></tr> 288.1989 + 288.1990 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PNM file. <br></td></tr> 288.1991 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="23661b1b6fb640fb35759595f5154f50"></a><!-- doxytag: member="cimg_library::CImg::load_pnm" ref="23661b1b6fb640fb35759595f5154f50" args="(cimg_std::FILE *const file)" --> 288.1992 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#23661b1b6fb640fb35759595f5154f50">load_pnm</a> (cimg_std::FILE *const file)</td></tr> 288.1993 + 288.1994 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PNM file. <br></td></tr> 288.1995 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93447ee550ccdc4aab10f66e5115c5b6"></a><!-- doxytag: member="cimg_library::CImg::_load_pnm" ref="93447ee550ccdc4aab10f66e5115c5b6" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.1996 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_pnm</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.1997 + 288.1998 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c3cd73613729b55992811acee5015eab"></a><!-- doxytag: member="cimg_library::CImg::load_rgb" ref="c3cd73613729b55992811acee5015eab" args="(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)" --> 288.1999 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c3cd73613729b55992811acee5015eab">load_rgb</a> (const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2000 + 288.2001 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a RGB file. <br></td></tr> 288.2002 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c14b4f576b1743ee367a667f9b449318"></a><!-- doxytag: member="cimg_library::CImg::load_rgb" ref="c14b4f576b1743ee367a667f9b449318" args="(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2003 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c14b4f576b1743ee367a667f9b449318">load_rgb</a> (cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2004 + 288.2005 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a RGB file. <br></td></tr> 288.2006 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa721f8eacee1344c78e83b1e9f82003"></a><!-- doxytag: member="cimg_library::CImg::_load_rgb" ref="aa721f8eacee1344c78e83b1e9f82003" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)" --> 288.2007 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_rgb</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)</td></tr> 288.2008 + 288.2009 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="27807907b967601fa7d51a024dd64e51"></a><!-- doxytag: member="cimg_library::CImg::load_rgba" ref="27807907b967601fa7d51a024dd64e51" args="(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2010 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#27807907b967601fa7d51a024dd64e51">load_rgba</a> (const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2011 + 288.2012 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a RGBA file. <br></td></tr> 288.2013 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3719cce68f4fa8594a34ee84fe61b235"></a><!-- doxytag: member="cimg_library::CImg::load_rgba" ref="3719cce68f4fa8594a34ee84fe61b235" args="(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2014 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3719cce68f4fa8594a34ee84fe61b235">load_rgba</a> (cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2015 + 288.2016 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a RGBA file. <br></td></tr> 288.2017 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d9003a883ed619b9458599d9ff14d295"></a><!-- doxytag: member="cimg_library::CImg::_load_rgba" ref="d9003a883ed619b9458599d9ff14d295" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)" --> 288.2018 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_rgba</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int dimw, const unsigned int dimh)</td></tr> 288.2019 + 288.2020 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b943c007a92b463ec458b4be80e80460"></a><!-- doxytag: member="cimg_library::CImg::load_tiff" ref="b943c007a92b463ec458b4be80e80460" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)" --> 288.2021 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b943c007a92b463ec458b4be80e80460">load_tiff</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td></tr> 288.2022 + 288.2023 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a TIFF file. <br></td></tr> 288.2024 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b56eb4920a37739b113bd90ed65b4506"></a><!-- doxytag: member="cimg_library::CImg::load_analyze" ref="b56eb4920a37739b113bd90ed65b4506" args="(const char *const filename, float *const voxsize=0)" --> 288.2025 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b56eb4920a37739b113bd90ed65b4506">load_analyze</a> (const char *const filename, float *const voxsize=0)</td></tr> 288.2026 + 288.2027 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an ANALYZE7.5/NIFTI file. <br></td></tr> 288.2028 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb4d772ee50835acac8e68f014634855"></a><!-- doxytag: member="cimg_library::CImg::load_analyze" ref="eb4d772ee50835acac8e68f014634855" args="(cimg_std::FILE *const file, float *const voxsize=0)" --> 288.2029 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#eb4d772ee50835acac8e68f014634855">load_analyze</a> (cimg_std::FILE *const file, float *const voxsize=0)</td></tr> 288.2030 + 288.2031 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an ANALYZE7.5/NIFTI file. <br></td></tr> 288.2032 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f0b2f83632e20e48bd0302074524e224"></a><!-- doxytag: member="cimg_library::CImg::_load_analyze" ref="f0b2f83632e20e48bd0302074524e224" args="(cimg_std::FILE *const file, const char *const filename, float *const voxsize=0)" --> 288.2033 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_analyze</b> (cimg_std::FILE *const file, const char *const filename, float *const voxsize=0)</td></tr> 288.2034 + 288.2035 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cdae64c0c93793df8b0a0b28a34d9694"></a><!-- doxytag: member="cimg_library::CImg::load_cimg" ref="cdae64c0c93793df8b0a0b28a34d9694" args="(const char *const filename, const char axis='z', const char align='p')" --> 288.2036 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cdae64c0c93793df8b0a0b28a34d9694">load_cimg</a> (const char *const filename, const char axis='z', const char align='p')</td></tr> 288.2037 + 288.2038 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image (list) from a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <br></td></tr> 288.2039 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48f467cc58ef95502cf50d821dff024b"></a><!-- doxytag: member="cimg_library::CImg::load_cimg" ref="48f467cc58ef95502cf50d821dff024b" args="(cimg_std::FILE *const file, const char axis='z', const char align='p')" --> 288.2040 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#48f467cc58ef95502cf50d821dff024b">load_cimg</a> (cimg_std::FILE *const file, const char axis='z', const char align='p')</td></tr> 288.2041 + 288.2042 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image (list) from a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <br></td></tr> 288.2043 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d76cb097a2968aa1c934233a1b32819f"></a><!-- doxytag: member="cimg_library::CImg::load_cimg" ref="d76cb097a2968aa1c934233a1b32819f" args="(const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')" --> 288.2044 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d76cb097a2968aa1c934233a1b32819f">load_cimg</a> (const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td></tr> 288.2045 + 288.2046 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a sub-image (list) from a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <br></td></tr> 288.2047 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="df49fa1807054741ee989497a69ba15e"></a><!-- doxytag: member="cimg_library::CImg::load_cimg" ref="df49fa1807054741ee989497a69ba15e" args="(cimg_std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')" --> 288.2048 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#df49fa1807054741ee989497a69ba15e">load_cimg</a> (cimg_std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td></tr> 288.2049 + 288.2050 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a sub-image (list) from a non-compressed .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <br></td></tr> 288.2051 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4a1bebfe52d369d35ad6f9d63b46fc64"></a><!-- doxytag: member="cimg_library::CImg::load_inr" ref="4a1bebfe52d369d35ad6f9d63b46fc64" args="(const char *const filename, float *const voxsize=0)" --> 288.2052 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4a1bebfe52d369d35ad6f9d63b46fc64">load_inr</a> (const char *const filename, float *const voxsize=0)</td></tr> 288.2053 + 288.2054 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an INRIMAGE-4 file. <br></td></tr> 288.2055 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="318617a64e6116aef7dc8efd75b8623e"></a><!-- doxytag: member="cimg_library::CImg::load_inr" ref="318617a64e6116aef7dc8efd75b8623e" args="(cimg_std::FILE *const file, float *const voxsize=0)" --> 288.2056 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#318617a64e6116aef7dc8efd75b8623e">load_inr</a> (cimg_std::FILE *const file, float *const voxsize=0)</td></tr> 288.2057 + 288.2058 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from an INRIMAGE-4 file. <br></td></tr> 288.2059 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="23f93a4ca437fc72a8091ef855aa07de"></a><!-- doxytag: member="cimg_library::CImg::_load_inr" ref="23f93a4ca437fc72a8091ef855aa07de" args="(cimg_std::FILE *const file, const char *const filename, float *const voxsize)" --> 288.2060 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_inr</b> (cimg_std::FILE *const file, const char *const filename, float *const voxsize)</td></tr> 288.2061 + 288.2062 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c52c863e6b22a98b8049b46bfc16102"></a><!-- doxytag: member="cimg_library::CImg::load_pandore" ref="1c52c863e6b22a98b8049b46bfc16102" args="(const char *const filename)" --> 288.2063 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1c52c863e6b22a98b8049b46bfc16102">load_pandore</a> (const char *const filename)</td></tr> 288.2064 + 288.2065 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PANDORE file. <br></td></tr> 288.2066 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75a4bb6d89a31860755c119e40fb0abe"></a><!-- doxytag: member="cimg_library::CImg::load_pandore" ref="75a4bb6d89a31860755c119e40fb0abe" args="(cimg_std::FILE *const file)" --> 288.2067 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#75a4bb6d89a31860755c119e40fb0abe">load_pandore</a> (cimg_std::FILE *const file)</td></tr> 288.2068 + 288.2069 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PANDORE file. <br></td></tr> 288.2070 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fa6d4a41e569dc65ccf6dfff29fa63c9"></a><!-- doxytag: member="cimg_library::CImg::_load_pandore" ref="fa6d4a41e569dc65ccf6dfff29fa63c9" args="(cimg_std::FILE *const file, const char *const filename)" --> 288.2071 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_pandore</b> (cimg_std::FILE *const file, const char *const filename)</td></tr> 288.2072 + 288.2073 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9e3446fd647fcb9fc95a462435f42784"></a><!-- doxytag: member="cimg_library::CImg::load_parrec" ref="9e3446fd647fcb9fc95a462435f42784" args="(const char *const filename, const char axis='v', const char align='p')" --> 288.2074 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9e3446fd647fcb9fc95a462435f42784">load_parrec</a> (const char *const filename, const char axis='v', const char align='p')</td></tr> 288.2075 + 288.2076 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a PAR-REC (Philips) file. <br></td></tr> 288.2077 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff2e5fd6242828f8c83e652daea0861e"></a><!-- doxytag: member="cimg_library::CImg::load_raw" ref="ff2e5fd6242828f8c83e652daea0861e" args="(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)" --> 288.2078 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ff2e5fd6242828f8c83e652daea0861e">load_raw</a> (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td></tr> 288.2079 + 288.2080 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a .RAW file. <br></td></tr> 288.2081 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ee7efb0aa685252eb16ba438f3fc0e91"></a><!-- doxytag: member="cimg_library::CImg::load_raw" ref="ee7efb0aa685252eb16ba438f3fc0e91" args="(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)" --> 288.2082 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ee7efb0aa685252eb16ba438f3fc0e91">load_raw</a> (cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td></tr> 288.2083 + 288.2084 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image from a .RAW file. <br></td></tr> 288.2085 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b00b962ac6a230a4eeff258a63e64d3b"></a><!-- doxytag: member="cimg_library::CImg::_load_raw" ref="b00b962ac6a230a4eeff258a63e64d3b" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey, const unsigned int sizez, const unsigned int sizev, const bool multiplexed, const bool invert_endianness)" --> 288.2086 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_load_raw</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int sizex, const unsigned int sizey, const unsigned int sizez, const unsigned int sizev, const bool multiplexed, const bool invert_endianness)</td></tr> 288.2087 + 288.2088 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ea50f5bd07d9d8ae9ab11aaf6a87a31"></a><!-- doxytag: member="cimg_library::CImg::load_ffmpeg" ref="0ea50f5bd07d9d8ae9ab11aaf6a87a31" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, const char axis='z', const char align='p')" --> 288.2089 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0ea50f5bd07d9d8ae9ab11aaf6a87a31">load_ffmpeg</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, const char axis='z', const char align='p')</td></tr> 288.2090 + 288.2091 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a video sequence using FFMPEG av's libraries. <br></td></tr> 288.2092 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64327752de9e98850b67701948960903"></a><!-- doxytag: member="cimg_library::CImg::load_yuv" ref="64327752de9e98850b67701948960903" args="(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')" --> 288.2093 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#64327752de9e98850b67701948960903">load_yuv</a> (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td></tr> 288.2094 + 288.2095 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image sequence from a YUV file. <br></td></tr> 288.2096 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0db892192d010d5f1f6c25423328535"></a><!-- doxytag: member="cimg_library::CImg::load_yuv" ref="b0db892192d010d5f1f6c25423328535" args="(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')" --> 288.2097 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b0db892192d010d5f1f6c25423328535">load_yuv</a> (cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td></tr> 288.2098 + 288.2099 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image sequence from a YUV file. <br></td></tr> 288.2100 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="78e7945139c2e91df6bfecb1b388c7cc"></a><!-- doxytag: member="cimg_library::CImg::load_off" ref="78e7945139c2e91df6bfecb1b388c7cc" args="(const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 288.2101 +template<typename tf , typename tc > </td></tr> 288.2102 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#78e7945139c2e91df6bfecb1b388c7cc">load_off</a> (const char *const filename, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 288.2103 + 288.2104 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a 3D object from a .OFF file. <br></td></tr> 288.2105 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bd26b3a32bb50b7741a51c33d4077668"></a><!-- doxytag: member="cimg_library::CImg::load_off" ref="bd26b3a32bb50b7741a51c33d4077668" args="(cimg_std::FILE *const file, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 288.2106 +template<typename tf , typename tc > </td></tr> 288.2107 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bd26b3a32bb50b7741a51c33d4077668">load_off</a> (cimg_std::FILE *const file, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 288.2108 + 288.2109 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a 3D object from a .OFF file. <br></td></tr> 288.2110 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="807590347fb43ce0a809f88fe19b7857"></a><!-- doxytag: member="cimg_library::CImg::_load_off" ref="807590347fb43ce0a809f88fe19b7857" args="(cimg_std::FILE *const file, const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces)" --> 288.2111 +template<typename tf , typename tc > </td></tr> 288.2112 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_load_off</b> (cimg_std::FILE *const file, const char *const filename, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces)</td></tr> 288.2113 + 288.2114 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a2bb0602f254824530b888266d4d503a"></a><!-- doxytag: member="cimg_library::CImg::load_ffmpeg_external" ref="a2bb0602f254824530b888266d4d503a" args="(const char *const filename, const char axis='z', const char align='p')" --> 288.2115 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a2bb0602f254824530b888266d4d503a">load_ffmpeg_external</a> (const char *const filename, const char axis='z', const char align='p')</td></tr> 288.2116 + 288.2117 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a video sequence using FFMPEG's external tool 'ffmpeg'. <br></td></tr> 288.2118 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad5a1ff332f904a39b3ea2035d3a94dc"></a><!-- doxytag: member="cimg_library::CImg::load_graphicsmagick_external" ref="ad5a1ff332f904a39b3ea2035d3a94dc" args="(const char *const filename)" --> 288.2119 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ad5a1ff332f904a39b3ea2035d3a94dc">load_graphicsmagick_external</a> (const char *const filename)</td></tr> 288.2120 + 288.2121 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image using GraphicsMagick's external tool 'gm'. <br></td></tr> 288.2122 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b8bf7e0b1371dbdc0d845a39f6451a8"></a><!-- doxytag: member="cimg_library::CImg::load_gzip_external" ref="1b8bf7e0b1371dbdc0d845a39f6451a8" args="(const char *const filename)" --> 288.2123 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1b8bf7e0b1371dbdc0d845a39f6451a8">load_gzip_external</a> (const char *const filename)</td></tr> 288.2124 + 288.2125 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a gzipped image file, using external tool 'gunzip'. <br></td></tr> 288.2126 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="841db22435a4f77bf3e4c9fc65ecbb6e"></a><!-- doxytag: member="cimg_library::CImg::load_imagemagick_external" ref="841db22435a4f77bf3e4c9fc65ecbb6e" args="(const char *const filename)" --> 288.2127 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#841db22435a4f77bf3e4c9fc65ecbb6e">load_imagemagick_external</a> (const char *const filename)</td></tr> 288.2128 + 288.2129 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image using ImageMagick's external tool 'convert'. <br></td></tr> 288.2130 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="38df90ee1c431b684fcb5ed8248464b1"></a><!-- doxytag: member="cimg_library::CImg::load_medcon_external" ref="38df90ee1c431b684fcb5ed8248464b1" args="(const char *const filename)" --> 288.2131 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#38df90ee1c431b684fcb5ed8248464b1">load_medcon_external</a> (const char *const filename)</td></tr> 288.2132 + 288.2133 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a DICOM image file, using XMedcon's external tool 'medcon'. <br></td></tr> 288.2134 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67cf88da9c1122b55ebcef3d223bccbe"></a><!-- doxytag: member="cimg_library::CImg::load_dcraw_external" ref="67cf88da9c1122b55ebcef3d223bccbe" args="(const char *const filename)" --> 288.2135 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#67cf88da9c1122b55ebcef3d223bccbe">load_dcraw_external</a> (const char *const filename)</td></tr> 288.2136 + 288.2137 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a RAW Color Camera image file, using external tool 'dcraw'. <br></td></tr> 288.2138 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="35a909fb3df4bd76be2facc8366861af"></a><!-- doxytag: member="cimg_library::CImg::load_other" ref="35a909fb3df4bd76be2facc8366861af" args="(const char *const filename)" --> 288.2139 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#35a909fb3df4bd76be2facc8366861af">load_other</a> (const char *const filename)</td></tr> 288.2140 + 288.2141 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load an image using ImageMagick's or GraphicsMagick's executables. <br></td></tr> 288.2142 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="149e94256155d10130a088f8219edd04"></a><!-- doxytag: member="cimg_library::CImg::get_load" ref="149e94256155d10130a088f8219edd04" args="(const char *const filename)" --> 288.2143 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load</b> (const char *const filename)</td></tr> 288.2144 + 288.2145 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fcae43f9eea505f08646f97851f59c64"></a><!-- doxytag: member="cimg_library::CImg::get_load_ascii" ref="fcae43f9eea505f08646f97851f59c64" args="(const char *const filename)" --> 288.2146 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_ascii</b> (const char *const filename)</td></tr> 288.2147 + 288.2148 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b792e4750ec4140b9b6dbc592487e53a"></a><!-- doxytag: member="cimg_library::CImg::get_load_ascii" ref="b792e4750ec4140b9b6dbc592487e53a" args="(cimg_std::FILE *const file)" --> 288.2149 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_ascii</b> (cimg_std::FILE *const file)</td></tr> 288.2150 + 288.2151 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="834668164d25f97f373b1fd6059d2a4b"></a><!-- doxytag: member="cimg_library::CImg::get_load_dlm" ref="834668164d25f97f373b1fd6059d2a4b" args="(const char *const filename)" --> 288.2152 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_dlm</b> (const char *const filename)</td></tr> 288.2153 + 288.2154 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="582850ba4537a30e0bfbcb78186ae001"></a><!-- doxytag: member="cimg_library::CImg::get_load_dlm" ref="582850ba4537a30e0bfbcb78186ae001" args="(cimg_std::FILE *const file)" --> 288.2155 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_dlm</b> (cimg_std::FILE *const file)</td></tr> 288.2156 + 288.2157 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4f7b2075e2aaa64ebbf67e87291606f4"></a><!-- doxytag: member="cimg_library::CImg::get_load_bmp" ref="4f7b2075e2aaa64ebbf67e87291606f4" args="(const char *const filename)" --> 288.2158 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_bmp</b> (const char *const filename)</td></tr> 288.2159 + 288.2160 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d87c98fc5f3d0e830ce8fcc443e953ab"></a><!-- doxytag: member="cimg_library::CImg::get_load_bmp" ref="d87c98fc5f3d0e830ce8fcc443e953ab" args="(cimg_std::FILE *const file)" --> 288.2161 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_bmp</b> (cimg_std::FILE *const file)</td></tr> 288.2162 + 288.2163 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5fb25ae4e078d63d73430a5f87876287"></a><!-- doxytag: member="cimg_library::CImg::get_load_jpeg" ref="5fb25ae4e078d63d73430a5f87876287" args="(const char *const filename)" --> 288.2164 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_jpeg</b> (const char *const filename)</td></tr> 288.2165 + 288.2166 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="382d8630fc827635d8c168f6d4a27d06"></a><!-- doxytag: member="cimg_library::CImg::get_load_jpeg" ref="382d8630fc827635d8c168f6d4a27d06" args="(cimg_std::FILE *const file)" --> 288.2167 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_jpeg</b> (cimg_std::FILE *const file)</td></tr> 288.2168 + 288.2169 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7100b79cd6e054a37a4930fe334f288"></a><!-- doxytag: member="cimg_library::CImg::get_load_magick" ref="f7100b79cd6e054a37a4930fe334f288" args="(const char *const filename)" --> 288.2170 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_magick</b> (const char *const filename)</td></tr> 288.2171 + 288.2172 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3eb559d3dea149210424da8a987402b"></a><!-- doxytag: member="cimg_library::CImg::get_load_png" ref="f3eb559d3dea149210424da8a987402b" args="(const char *const filename)" --> 288.2173 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_png</b> (const char *const filename)</td></tr> 288.2174 + 288.2175 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7256b40c9895a16b3f3415c065d5d845"></a><!-- doxytag: member="cimg_library::CImg::get_load_png" ref="7256b40c9895a16b3f3415c065d5d845" args="(cimg_std::FILE *const file)" --> 288.2176 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_png</b> (cimg_std::FILE *const file)</td></tr> 288.2177 + 288.2178 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0bbe1d291276726fd9aada63d2455e06"></a><!-- doxytag: member="cimg_library::CImg::get_load_pnm" ref="0bbe1d291276726fd9aada63d2455e06" args="(const char *const filename)" --> 288.2179 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_pnm</b> (const char *const filename)</td></tr> 288.2180 + 288.2181 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15df87e72beef77fe0d6430ff37d918a"></a><!-- doxytag: member="cimg_library::CImg::get_load_pnm" ref="15df87e72beef77fe0d6430ff37d918a" args="(cimg_std::FILE *const file)" --> 288.2182 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_pnm</b> (cimg_std::FILE *const file)</td></tr> 288.2183 + 288.2184 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f3132e636ec0182840e78eceb336316"></a><!-- doxytag: member="cimg_library::CImg::get_load_rgb" ref="5f3132e636ec0182840e78eceb336316" args="(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2185 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_rgb</b> (const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2186 + 288.2187 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="305ab805f91ad352fcb9ee7252a26d75"></a><!-- doxytag: member="cimg_library::CImg::get_load_rgb" ref="305ab805f91ad352fcb9ee7252a26d75" args="(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2188 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_rgb</b> (cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2189 + 288.2190 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0f30b8c2f375ee0838bb9352d928e9b9"></a><!-- doxytag: member="cimg_library::CImg::get_load_rgba" ref="0f30b8c2f375ee0838bb9352d928e9b9" args="(const char *const filename, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2191 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_rgba</b> (const char *const filename, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2192 + 288.2193 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ac6693fa6c8eed08f338040f6670394"></a><!-- doxytag: member="cimg_library::CImg::get_load_rgba" ref="9ac6693fa6c8eed08f338040f6670394" args="(cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)" --> 288.2194 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_rgba</b> (cimg_std::FILE *const file, const unsigned int dimw, const unsigned int dimh=1)</td></tr> 288.2195 + 288.2196 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7d33b41658d4adde6c99a41a036909a6"></a><!-- doxytag: member="cimg_library::CImg::get_load_tiff" ref="7d33b41658d4adde6c99a41a036909a6" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)" --> 288.2197 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_tiff</b> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td></tr> 288.2198 + 288.2199 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="171911b3cc4caeb64577ba093d8fc14d"></a><!-- doxytag: member="cimg_library::CImg::get_load_analyze" ref="171911b3cc4caeb64577ba093d8fc14d" args="(const char *const filename, float *const voxsize=0)" --> 288.2200 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_analyze</b> (const char *const filename, float *const voxsize=0)</td></tr> 288.2201 + 288.2202 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d74c78a1417e868327a8f816d394050a"></a><!-- doxytag: member="cimg_library::CImg::get_load_analyze" ref="d74c78a1417e868327a8f816d394050a" args="(cimg_std::FILE *const file, float *const voxsize=0)" --> 288.2203 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_analyze</b> (cimg_std::FILE *const file, float *const voxsize=0)</td></tr> 288.2204 + 288.2205 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cf34dea4ff73b03e04e53b178bbaa91b"></a><!-- doxytag: member="cimg_library::CImg::get_load_cimg" ref="cf34dea4ff73b03e04e53b178bbaa91b" args="(const char *const filename, const char axis='z', const char align='p')" --> 288.2206 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_cimg</b> (const char *const filename, const char axis='z', const char align='p')</td></tr> 288.2207 + 288.2208 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ab9ff50da838ccee5206b0b6f5d9175"></a><!-- doxytag: member="cimg_library::CImg::get_load_cimg" ref="4ab9ff50da838ccee5206b0b6f5d9175" args="(cimg_std::FILE *const file, const char axis='z', const char align='p')" --> 288.2209 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_cimg</b> (cimg_std::FILE *const file, const char axis='z', const char align='p')</td></tr> 288.2210 + 288.2211 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de3dd3b7d207e77165e3ccbbb44354f2"></a><!-- doxytag: member="cimg_library::CImg::get_load_cimg" ref="de3dd3b7d207e77165e3ccbbb44354f2" args="(const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')" --> 288.2212 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_cimg</b> (const char *const filename, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td></tr> 288.2213 + 288.2214 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a83590ca9f4572fbea3ae1a2e849bc4"></a><!-- doxytag: member="cimg_library::CImg::get_load_cimg" ref="9a83590ca9f4572fbea3ae1a2e849bc4" args="(cimg_std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')" --> 288.2215 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_cimg</b> (cimg_std::FILE *const file, const unsigned int n0, const unsigned int n1, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0, const unsigned int x1, const unsigned int y1, const unsigned int z1, const unsigned int v1, const char axis='z', const char align='p')</td></tr> 288.2216 + 288.2217 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a2715bb8c3015da25a0aff1cdcd4a772"></a><!-- doxytag: member="cimg_library::CImg::get_load_inr" ref="a2715bb8c3015da25a0aff1cdcd4a772" args="(const char *const filename, float *const voxsize=0)" --> 288.2218 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_inr</b> (const char *const filename, float *const voxsize=0)</td></tr> 288.2219 + 288.2220 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8c60b60ad85eaf591aa3245ac2e08358"></a><!-- doxytag: member="cimg_library::CImg::get_load_inr" ref="8c60b60ad85eaf591aa3245ac2e08358" args="(cimg_std::FILE *const file, float *voxsize=0)" --> 288.2221 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_inr</b> (cimg_std::FILE *const file, float *voxsize=0)</td></tr> 288.2222 + 288.2223 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d60750dd4f70a1d9a6c0206415e1da9b"></a><!-- doxytag: member="cimg_library::CImg::_load_inr_header" ref="d60750dd4f70a1d9a6c0206415e1da9b" args="(cimg_std::FILE *file, int out[8], float *const voxsize)" --> 288.2224 +static void </td><td class="memItemRight" valign="bottom"><b>_load_inr_header</b> (cimg_std::FILE *file, int out[8], float *const voxsize)</td></tr> 288.2225 + 288.2226 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="142e63e1c36c29a05205030511a6aad6"></a><!-- doxytag: member="cimg_library::CImg::get_load_pandore" ref="142e63e1c36c29a05205030511a6aad6" args="(const char *const filename)" --> 288.2227 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_pandore</b> (const char *const filename)</td></tr> 288.2228 + 288.2229 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="801e99ca992dc4ced3b92d9dfb1cb396"></a><!-- doxytag: member="cimg_library::CImg::get_load_pandore" ref="801e99ca992dc4ced3b92d9dfb1cb396" args="(cimg_std::FILE *const file)" --> 288.2230 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_pandore</b> (cimg_std::FILE *const file)</td></tr> 288.2231 + 288.2232 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8e5fa694fb2237847513e02aa7a2fb99"></a><!-- doxytag: member="cimg_library::CImg::get_load_parrec" ref="8e5fa694fb2237847513e02aa7a2fb99" args="(const char *const filename, const char axis='v', const char align='p')" --> 288.2233 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_parrec</b> (const char *const filename, const char axis='v', const char align='p')</td></tr> 288.2234 + 288.2235 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="16ba67618d068b7e334d9899dbbe178b"></a><!-- doxytag: member="cimg_library::CImg::get_load_raw" ref="16ba67618d068b7e334d9899dbbe178b" args="(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)" --> 288.2236 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_raw</b> (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td></tr> 288.2237 + 288.2238 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="adaaf028bd99d8bc86bc2ccb2a39d218"></a><!-- doxytag: member="cimg_library::CImg::get_load_raw" ref="adaaf028bd99d8bc86bc2ccb2a39d218" args="(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)" --> 288.2239 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_raw</b> (cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int sizez=1, const unsigned int sizev=1, const bool multiplexed=false, const bool invert_endianness=false)</td></tr> 288.2240 + 288.2241 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4a9649dc62470fc906c5b0537c2854d0"></a><!-- doxytag: member="cimg_library::CImg::get_load_ffmpeg" ref="4a9649dc62470fc906c5b0537c2854d0" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, const char axis='z', const char align='p')" --> 288.2242 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_ffmpeg</b> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool pixel_format=true, const bool resume=false, const char axis='z', const char align='p')</td></tr> 288.2243 + 288.2244 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5737e6e4159a10973fdf275e08453c84"></a><!-- doxytag: member="cimg_library::CImg::get_load_yuv" ref="5737e6e4159a10973fdf275e08453c84" args="(const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')" --> 288.2245 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_yuv</b> (const char *const filename, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td></tr> 288.2246 + 288.2247 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c6741c3c13caaac684234f1ae69f246"></a><!-- doxytag: member="cimg_library::CImg::get_load_yuv" ref="7c6741c3c13caaac684234f1ae69f246" args="(cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')" --> 288.2248 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_yuv</b> (cimg_std::FILE *const file, const unsigned int sizex, const unsigned int sizey=1, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1, const bool yuv2rgb=true, const char axis='z', const char align='p')</td></tr> 288.2249 + 288.2250 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5bb111e1dafc61d7777dca8ba32d6c32"></a><!-- doxytag: member="cimg_library::CImg::get_load_off" ref="5bb111e1dafc61d7777dca8ba32d6c32" args="(const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 288.2251 +template<typename tf , typename tc > </td></tr> 288.2252 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_load_off</b> (const char *const filename, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 288.2253 + 288.2254 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b88ac3ae621e2f1998937b88cfeb6d46"></a><!-- doxytag: member="cimg_library::CImg::get_load_off" ref="b88ac3ae621e2f1998937b88cfeb6d46" args="(cimg_std::FILE *const file, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 288.2255 +template<typename tf , typename tc > </td></tr> 288.2256 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_load_off</b> (cimg_std::FILE *const file, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 288.2257 + 288.2258 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="883c2a31a26f1b8767db6456b952c949"></a><!-- doxytag: member="cimg_library::CImg::get_load_ffmpeg_external" ref="883c2a31a26f1b8767db6456b952c949" args="(const char *const filename, const char axis='z', const char align='p')" --> 288.2259 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_ffmpeg_external</b> (const char *const filename, const char axis='z', const char align='p')</td></tr> 288.2260 + 288.2261 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5cd75e6518130915e0c5f006b5bec758"></a><!-- doxytag: member="cimg_library::CImg::get_load_graphicsmagick_external" ref="5cd75e6518130915e0c5f006b5bec758" args="(const char *const filename)" --> 288.2262 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_graphicsmagick_external</b> (const char *const filename)</td></tr> 288.2263 + 288.2264 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3f62a13e6dcbbdc8c7bdd6608017602b"></a><!-- doxytag: member="cimg_library::CImg::get_load_gzip_external" ref="3f62a13e6dcbbdc8c7bdd6608017602b" args="(const char *const filename)" --> 288.2265 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_gzip_external</b> (const char *const filename)</td></tr> 288.2266 + 288.2267 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="614be4016c404396a28121dd2d9ee477"></a><!-- doxytag: member="cimg_library::CImg::get_load_imagemagick_external" ref="614be4016c404396a28121dd2d9ee477" args="(const char *const filename)" --> 288.2268 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_imagemagick_external</b> (const char *const filename)</td></tr> 288.2269 + 288.2270 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99ef8bf8fc4f76517d93c831fdfca562"></a><!-- doxytag: member="cimg_library::CImg::get_load_medcon_external" ref="99ef8bf8fc4f76517d93c831fdfca562" args="(const char *const filename)" --> 288.2271 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_medcon_external</b> (const char *const filename)</td></tr> 288.2272 + 288.2273 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0537809dca1c2f2f5e35965d45f5b52c"></a><!-- doxytag: member="cimg_library::CImg::get_load_dcraw_external" ref="0537809dca1c2f2f5e35965d45f5b52c" args="(const char *const filename)" --> 288.2274 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_dcraw_external</b> (const char *const filename)</td></tr> 288.2275 + 288.2276 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4fba9dc33b1edf2eacb59acebba962d"></a><!-- doxytag: member="cimg_library::CImg::get_load_other" ref="a4fba9dc33b1edf2eacb59acebba962d" args="(const char *const filename)" --> 288.2277 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_other</b> (const char *const filename)</td></tr> 288.2278 + 288.2279 +<tr><td colspan="2"><br><h2>Image File Saving</h2></td></tr> 288.2280 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4fd91f4fb021d20c5b62329c49733bd9">save</a> (const char *const filename, const int number=-1) const </td></tr> 288.2281 + 288.2282 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a file. <a href="#4fd91f4fb021d20c5b62329c49733bd9"></a><br></td></tr> 288.2283 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6543d8caeaf5a766087a4e7c5ecf694e"></a><!-- doxytag: member="cimg_library::CImg::_save_ascii" ref="6543d8caeaf5a766087a4e7c5ecf694e" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2284 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_ascii</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2285 + 288.2286 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6039799358c3fe91fe6e828d3433db2f"></a><!-- doxytag: member="cimg_library::CImg::save_ascii" ref="6039799358c3fe91fe6e828d3433db2f" args="(const char *const filename) const " --> 288.2287 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6039799358c3fe91fe6e828d3433db2f">save_ascii</a> (const char *const filename) const </td></tr> 288.2288 + 288.2289 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as an ASCII file (ASCII Raw + simple header). <br></td></tr> 288.2290 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1a2198e176da80e806e9f44dce6e423"></a><!-- doxytag: member="cimg_library::CImg::save_ascii" ref="c1a2198e176da80e806e9f44dce6e423" args="(cimg_std::FILE *const file) const " --> 288.2291 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c1a2198e176da80e806e9f44dce6e423">save_ascii</a> (cimg_std::FILE *const file) const </td></tr> 288.2292 + 288.2293 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as an ASCII file (ASCII Raw + simple header). <br></td></tr> 288.2294 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7729a55948a9a8834783b00aa2789898"></a><!-- doxytag: member="cimg_library::CImg::_save_cpp" ref="7729a55948a9a8834783b00aa2789898" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2295 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_cpp</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2296 + 288.2297 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="869bb2e7c1fe0896e143016ba4030065"></a><!-- doxytag: member="cimg_library::CImg::save_cpp" ref="869bb2e7c1fe0896e143016ba4030065" args="(const char *const filename) const " --> 288.2298 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#869bb2e7c1fe0896e143016ba4030065">save_cpp</a> (const char *const filename) const </td></tr> 288.2299 + 288.2300 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a CPP source file. <br></td></tr> 288.2301 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="37f7909910f00164decfa2705bdd1f2c"></a><!-- doxytag: member="cimg_library::CImg::save_cpp" ref="37f7909910f00164decfa2705bdd1f2c" args="(cimg_std::FILE *const file) const " --> 288.2302 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#37f7909910f00164decfa2705bdd1f2c">save_cpp</a> (cimg_std::FILE *const file) const </td></tr> 288.2303 + 288.2304 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a CPP source file. <br></td></tr> 288.2305 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67806595a098c09476bdb55c28e07602"></a><!-- doxytag: member="cimg_library::CImg::_save_dlm" ref="67806595a098c09476bdb55c28e07602" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2306 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_dlm</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2307 + 288.2308 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2c4bfc725e65a27f7f21e74b6da319d"></a><!-- doxytag: member="cimg_library::CImg::save_dlm" ref="e2c4bfc725e65a27f7f21e74b6da319d" args="(const char *const filename) const " --> 288.2309 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e2c4bfc725e65a27f7f21e74b6da319d">save_dlm</a> (const char *const filename) const </td></tr> 288.2310 + 288.2311 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a DLM file. <br></td></tr> 288.2312 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a64fec71b18beaaabbeabc8ad47e36a1"></a><!-- doxytag: member="cimg_library::CImg::save_dlm" ref="a64fec71b18beaaabbeabc8ad47e36a1" args="(cimg_std::FILE *const file) const " --> 288.2313 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a64fec71b18beaaabbeabc8ad47e36a1">save_dlm</a> (cimg_std::FILE *const file) const </td></tr> 288.2314 + 288.2315 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a DLM file. <br></td></tr> 288.2316 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67af2b90a19349ad69d2b0b4a652d0ef"></a><!-- doxytag: member="cimg_library::CImg::_save_bmp" ref="67af2b90a19349ad69d2b0b4a652d0ef" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2317 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_bmp</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2318 + 288.2319 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f8e01d96cddfa3c0d0d2dc9d86745ac"></a><!-- doxytag: member="cimg_library::CImg::save_bmp" ref="2f8e01d96cddfa3c0d0d2dc9d86745ac" args="(const char *const filename) const " --> 288.2320 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2f8e01d96cddfa3c0d0d2dc9d86745ac">save_bmp</a> (const char *const filename) const </td></tr> 288.2321 + 288.2322 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a BMP file. <br></td></tr> 288.2323 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1352f29f3f4e216b1dbef3471389d09a"></a><!-- doxytag: member="cimg_library::CImg::save_bmp" ref="1352f29f3f4e216b1dbef3471389d09a" args="(cimg_std::FILE *const file) const " --> 288.2324 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1352f29f3f4e216b1dbef3471389d09a">save_bmp</a> (cimg_std::FILE *const file) const </td></tr> 288.2325 + 288.2326 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a BMP file. <br></td></tr> 288.2327 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6be51620e021bdbfd8ea3f306252482d"></a><!-- doxytag: member="cimg_library::CImg::_save_jpeg" ref="6be51620e021bdbfd8ea3f306252482d" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int quality) const " --> 288.2328 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_jpeg</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int quality) const </td></tr> 288.2329 + 288.2330 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="26ff26d1b1ce8dd8b221d13cc50434e2"></a><!-- doxytag: member="cimg_library::CImg::save_jpeg" ref="26ff26d1b1ce8dd8b221d13cc50434e2" args="(const char *const filename, const unsigned int quality=100) const " --> 288.2331 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#26ff26d1b1ce8dd8b221d13cc50434e2">save_jpeg</a> (const char *const filename, const unsigned int quality=100) const </td></tr> 288.2332 + 288.2333 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in JPEG format. <br></td></tr> 288.2334 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="437e56f07b4a2e4afe8e07f40a54544c"></a><!-- doxytag: member="cimg_library::CImg::save_jpeg" ref="437e56f07b4a2e4afe8e07f40a54544c" args="(cimg_std::FILE *const file, const unsigned int quality=100) const " --> 288.2335 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#437e56f07b4a2e4afe8e07f40a54544c">save_jpeg</a> (cimg_std::FILE *const file, const unsigned int quality=100) const </td></tr> 288.2336 + 288.2337 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in JPEG format. <br></td></tr> 288.2338 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="49b8355073ca645ba69af38324ecda6c"></a><!-- doxytag: member="cimg_library::CImg::save_magick" ref="49b8355073ca645ba69af38324ecda6c" args="(const char *const filename) const " --> 288.2339 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#49b8355073ca645ba69af38324ecda6c">save_magick</a> (const char *const filename) const </td></tr> 288.2340 + 288.2341 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image using built-in ImageMagick++ library. <br></td></tr> 288.2342 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb8fabd86632ad10f9adf1bd88fb4d22"></a><!-- doxytag: member="cimg_library::CImg::_save_png" ref="cb8fabd86632ad10f9adf1bd88fb4d22" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2343 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_png</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2344 + 288.2345 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="739a8b4eb3d419cf4a5ec19c1715d6c3"></a><!-- doxytag: member="cimg_library::CImg::save_png" ref="739a8b4eb3d419cf4a5ec19c1715d6c3" args="(const char *const filename) const " --> 288.2346 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#739a8b4eb3d419cf4a5ec19c1715d6c3">save_png</a> (const char *const filename) const </td></tr> 288.2347 + 288.2348 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in PNG format. <br></td></tr> 288.2349 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a679f4aa53bbe2327592d48811df4c35"></a><!-- doxytag: member="cimg_library::CImg::save_png" ref="a679f4aa53bbe2327592d48811df4c35" args="(cimg_std::FILE *const file) const " --> 288.2350 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a679f4aa53bbe2327592d48811df4c35">save_png</a> (cimg_std::FILE *const file) const </td></tr> 288.2351 + 288.2352 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in PNG format. <br></td></tr> 288.2353 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d75c94f3badc5bcd389775da1c6473a7"></a><!-- doxytag: member="cimg_library::CImg::_save_pnm" ref="d75c94f3badc5bcd389775da1c6473a7" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2354 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_pnm</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2355 + 288.2356 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd8323ac951c92f565eff819073b7973"></a><!-- doxytag: member="cimg_library::CImg::save_pnm" ref="fd8323ac951c92f565eff819073b7973" args="(const char *const filename) const " --> 288.2357 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fd8323ac951c92f565eff819073b7973">save_pnm</a> (const char *const filename) const </td></tr> 288.2358 + 288.2359 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a PNM file. <br></td></tr> 288.2360 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec64ea7bd5862b6143cc1ba4afafe37f"></a><!-- doxytag: member="cimg_library::CImg::save_pnm" ref="ec64ea7bd5862b6143cc1ba4afafe37f" args="(cimg_std::FILE *const file) const " --> 288.2361 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ec64ea7bd5862b6143cc1ba4afafe37f">save_pnm</a> (cimg_std::FILE *const file) const </td></tr> 288.2362 + 288.2363 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a PNM file. <br></td></tr> 288.2364 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7de6318425c89b5d6578918ab89f2b3d"></a><!-- doxytag: member="cimg_library::CImg::_save_rgb" ref="7de6318425c89b5d6578918ab89f2b3d" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2365 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_rgb</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2366 + 288.2367 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aeff8cd6ea1e998a0bf905dd9c706123"></a><!-- doxytag: member="cimg_library::CImg::save_rgb" ref="aeff8cd6ea1e998a0bf905dd9c706123" args="(const char *const filename) const " --> 288.2368 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aeff8cd6ea1e998a0bf905dd9c706123">save_rgb</a> (const char *const filename) const </td></tr> 288.2369 + 288.2370 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RGB file. <br></td></tr> 288.2371 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21b6660322c8c713c2839247d31766da"></a><!-- doxytag: member="cimg_library::CImg::save_rgb" ref="21b6660322c8c713c2839247d31766da" args="(cimg_std::FILE *const file) const " --> 288.2372 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#21b6660322c8c713c2839247d31766da">save_rgb</a> (cimg_std::FILE *const file) const </td></tr> 288.2373 + 288.2374 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RGB file. <br></td></tr> 288.2375 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d70f49af7a3713020a2d84457bca280e"></a><!-- doxytag: member="cimg_library::CImg::_save_rgba" ref="d70f49af7a3713020a2d84457bca280e" args="(cimg_std::FILE *const file, const char *const filename) const " --> 288.2376 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_rgba</b> (cimg_std::FILE *const file, const char *const filename) const </td></tr> 288.2377 + 288.2378 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a794b3b53e9e1bf8d5d6b0e1b97bc26"></a><!-- doxytag: member="cimg_library::CImg::save_rgba" ref="9a794b3b53e9e1bf8d5d6b0e1b97bc26" args="(const char *const filename) const " --> 288.2379 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9a794b3b53e9e1bf8d5d6b0e1b97bc26">save_rgba</a> (const char *const filename) const </td></tr> 288.2380 + 288.2381 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RGBA file. <br></td></tr> 288.2382 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="da30da984d380973cfe91b9ba7952e02"></a><!-- doxytag: member="cimg_library::CImg::save_rgba" ref="da30da984d380973cfe91b9ba7952e02" args="(cimg_std::FILE *const file) const " --> 288.2383 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#da30da984d380973cfe91b9ba7952e02">save_rgba</a> (cimg_std::FILE *const file) const </td></tr> 288.2384 + 288.2385 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RGBA file. <br></td></tr> 288.2386 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c6d72526b5d249df6148680b3521b26d"></a><!-- doxytag: member="cimg_library::CImg::save_tiff" ref="c6d72526b5d249df6148680b3521b26d" args="(const char *const filename) const " --> 288.2387 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c6d72526b5d249df6148680b3521b26d">save_tiff</a> (const char *const filename) const </td></tr> 288.2388 + 288.2389 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in TIFF format. <br></td></tr> 288.2390 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="469c8bebf15e1247b789b35b79ea1537"></a><!-- doxytag: member="cimg_library::CImg::save_analyze" ref="469c8bebf15e1247b789b35b79ea1537" args="(const char *const filename, const float *const voxsize=0) const " --> 288.2391 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#469c8bebf15e1247b789b35b79ea1537">save_analyze</a> (const char *const filename, const float *const voxsize=0) const </td></tr> 288.2392 + 288.2393 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as an ANALYZE7.5 or NIFTI file. <br></td></tr> 288.2394 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a38a0a34134e90d18a5637ee61121898"></a><!-- doxytag: member="cimg_library::CImg::save_cimg" ref="a38a0a34134e90d18a5637ee61121898" args="(const char *const filename, const bool compress=false) const " --> 288.2395 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a38a0a34134e90d18a5637ee61121898">save_cimg</a> (const char *const filename, const bool compress=false) const </td></tr> 288.2396 + 288.2397 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <br></td></tr> 288.2398 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64b2dd387be8e25e87c9afc00a09654f"></a><!-- doxytag: member="cimg_library::CImg::save_cimg" ref="64b2dd387be8e25e87c9afc00a09654f" args="(cimg_std::FILE *const file, const bool compress=false) const " --> 288.2399 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>save_cimg</b> (cimg_std::FILE *const file, const bool compress=false) const </td></tr> 288.2400 + 288.2401 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4317d9209110b8464abae41f0b67b54"></a><!-- doxytag: member="cimg_library::CImg::save_cimg" ref="f4317d9209110b8464abae41f0b67b54" args="(const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const " --> 288.2402 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f4317d9209110b8464abae41f0b67b54">save_cimg</a> (const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td></tr> 288.2403 + 288.2404 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Insert the image into an existing .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file, at specified coordinates. <br></td></tr> 288.2405 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cff0f7915d75b7edeeb25e0f2f1c92b2"></a><!-- doxytag: member="cimg_library::CImg::save_cimg" ref="cff0f7915d75b7edeeb25e0f2f1c92b2" args="(cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const " --> 288.2406 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cff0f7915d75b7edeeb25e0f2f1c92b2">save_cimg</a> (cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td></tr> 288.2407 + 288.2408 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Insert the image into an existing .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file, at specified coordinates. <br></td></tr> 288.2409 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0626c51e6242464158805cb19b9ccf9a"></a><!-- doxytag: member="cimg_library::CImg::_save_inr" ref="0626c51e6242464158805cb19b9ccf9a" args="(cimg_std::FILE *const file, const char *const filename, const float *const voxsize) const " --> 288.2410 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_inr</b> (cimg_std::FILE *const file, const char *const filename, const float *const voxsize) const </td></tr> 288.2411 + 288.2412 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad7417f32dcb34d8151ecd232b07fbe7"></a><!-- doxytag: member="cimg_library::CImg::save_inr" ref="ad7417f32dcb34d8151ecd232b07fbe7" args="(const char *const filename, const float *const voxsize=0) const " --> 288.2413 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ad7417f32dcb34d8151ecd232b07fbe7">save_inr</a> (const char *const filename, const float *const voxsize=0) const </td></tr> 288.2414 + 288.2415 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as an INRIMAGE-4 file. <br></td></tr> 288.2416 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="01dc6718c3ab4f86568db6cb88229338"></a><!-- doxytag: member="cimg_library::CImg::save_inr" ref="01dc6718c3ab4f86568db6cb88229338" args="(cimg_std::FILE *const file, const float *const voxsize=0) const " --> 288.2417 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#01dc6718c3ab4f86568db6cb88229338">save_inr</a> (cimg_std::FILE *const file, const float *const voxsize=0) const </td></tr> 288.2418 + 288.2419 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as an INRIMAGE-4 file. <br></td></tr> 288.2420 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bc3aedb15290208fbba6bb15a0a0dc1d"></a><!-- doxytag: member="cimg_library::CImg::_save_pandore_header_length" ref="bc3aedb15290208fbba6bb15a0a0dc1d" args="(unsigned int id, unsigned int *dims, const unsigned int colorspace) const " --> 288.2421 +unsigned int </td><td class="memItemRight" valign="bottom"><b>_save_pandore_header_length</b> (unsigned int id, unsigned int *dims, const unsigned int colorspace) const </td></tr> 288.2422 + 288.2423 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="488af2e6635608e187a173ad5a6946f0"></a><!-- doxytag: member="cimg_library::CImg::_save_pandore" ref="488af2e6635608e187a173ad5a6946f0" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int colorspace) const " --> 288.2424 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_pandore</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int colorspace) const </td></tr> 288.2425 + 288.2426 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c651db37bf02a8558de8052b2a1fe1a9"></a><!-- doxytag: member="cimg_library::CImg::save_pandore" ref="c651db37bf02a8558de8052b2a1fe1a9" args="(const char *const filename, const unsigned int colorspace=0) const " --> 288.2427 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c651db37bf02a8558de8052b2a1fe1a9">save_pandore</a> (const char *const filename, const unsigned int colorspace=0) const </td></tr> 288.2428 + 288.2429 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a PANDORE-5 file. <br></td></tr> 288.2430 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0d4ce7c8b1ad6b0aed5b33dc226b1dd4"></a><!-- doxytag: member="cimg_library::CImg::save_pandore" ref="0d4ce7c8b1ad6b0aed5b33dc226b1dd4" args="(cimg_std::FILE *const file, const unsigned int colorspace=0) const " --> 288.2431 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0d4ce7c8b1ad6b0aed5b33dc226b1dd4">save_pandore</a> (cimg_std::FILE *const file, const unsigned int colorspace=0) const </td></tr> 288.2432 + 288.2433 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a PANDORE-5 file. <br></td></tr> 288.2434 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="88c987b2a7367e6ce6f8a0efeed05b4b"></a><!-- doxytag: member="cimg_library::CImg::_save_raw" ref="88c987b2a7367e6ce6f8a0efeed05b4b" args="(cimg_std::FILE *const file, const char *const filename, const bool multiplexed) const " --> 288.2435 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_raw</b> (cimg_std::FILE *const file, const char *const filename, const bool multiplexed) const </td></tr> 288.2436 + 288.2437 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="40a4739e731f2ebba21beb1d1541e69f"></a><!-- doxytag: member="cimg_library::CImg::save_raw" ref="40a4739e731f2ebba21beb1d1541e69f" args="(const char *const filename, const bool multiplexed=false) const " --> 288.2438 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#40a4739e731f2ebba21beb1d1541e69f">save_raw</a> (const char *const filename, const bool multiplexed=false) const </td></tr> 288.2439 + 288.2440 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RAW file. <br></td></tr> 288.2441 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c2526cf0c064dd106a7f06743311709"></a><!-- doxytag: member="cimg_library::CImg::save_raw" ref="1c2526cf0c064dd106a7f06743311709" args="(cimg_std::FILE *const file, const bool multiplexed=false) const " --> 288.2442 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1c2526cf0c064dd106a7f06743311709">save_raw</a> (cimg_std::FILE *const file, const bool multiplexed=false) const </td></tr> 288.2443 + 288.2444 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a RAW file. <br></td></tr> 288.2445 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5dc466b5a9fd09f386fb4c029122e123"></a><!-- doxytag: member="cimg_library::CImg::save_ffmpeg" ref="5dc466b5a9fd09f386fb4c029122e123" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const " --> 288.2446 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5dc466b5a9fd09f386fb4c029122e123">save_ffmpeg</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const </td></tr> 288.2447 + 288.2448 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a video sequence file, using FFMPEG library. <br></td></tr> 288.2449 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="02e74b684698a0eaf533869f9e262cbb"></a><!-- doxytag: member="cimg_library::CImg::save_yuv" ref="02e74b684698a0eaf533869f9e262cbb" args="(const char *const filename, const bool rgb2yuv=true) const " --> 288.2450 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#02e74b684698a0eaf533869f9e262cbb">save_yuv</a> (const char *const filename, const bool rgb2yuv=true) const </td></tr> 288.2451 + 288.2452 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a YUV video sequence file. <br></td></tr> 288.2453 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="374b35cac6e32b43479ae62d48366173"></a><!-- doxytag: member="cimg_library::CImg::save_yuv" ref="374b35cac6e32b43479ae62d48366173" args="(cimg_std::FILE *const file, const bool rgb2yuv=true) const " --> 288.2454 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#374b35cac6e32b43479ae62d48366173">save_yuv</a> (cimg_std::FILE *const file, const bool rgb2yuv=true) const </td></tr> 288.2455 + 288.2456 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a YUV video sequence file. <br></td></tr> 288.2457 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bbe233fcab1fed08bb3a7c151a6a6a04"></a><!-- doxytag: member="cimg_library::CImg::_save_off" ref="bbe233fcab1fed08bb3a7c151a6a6a04" args="(cimg_std::FILE *const file, const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces) const " --> 288.2458 +template<typename tf , typename tc > </td></tr> 288.2459 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_save_off</b> (cimg_std::FILE *const file, const char *const filename, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces) const </td></tr> 288.2460 + 288.2461 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8026d89fd3dd2f58eff90ba7418633c9"></a><!-- doxytag: member="cimg_library::CImg::save_off" ref="8026d89fd3dd2f58eff90ba7418633c9" args="(const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const " --> 288.2462 +template<typename tf , typename tc > </td></tr> 288.2463 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8026d89fd3dd2f58eff90ba7418633c9">save_off</a> (const char *const filename, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false) const </td></tr> 288.2464 + 288.2465 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save OFF files. <br></td></tr> 288.2466 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e0d3125ded23aa559120cbaeb5b96d1c"></a><!-- doxytag: member="cimg_library::CImg::save_off" ref="e0d3125ded23aa559120cbaeb5b96d1c" args="(cimg_std::FILE *const file, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const " --> 288.2467 +template<typename tf , typename tc > </td></tr> 288.2468 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e0d3125ded23aa559120cbaeb5b96d1c">save_off</a> (cimg_std::FILE *const file, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false) const </td></tr> 288.2469 + 288.2470 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save OFF files. <br></td></tr> 288.2471 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6cb891a0f13a1498bf2279568d9c89ef"></a><!-- doxytag: member="cimg_library::CImg::save_ffmpeg_external" ref="6cb891a0f13a1498bf2279568d9c89ef" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const " --> 288.2472 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6cb891a0f13a1498bf2279568d9c89ef">save_ffmpeg_external</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const </td></tr> 288.2473 + 288.2474 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image as a video sequence file, using the external tool 'ffmpeg'. <br></td></tr> 288.2475 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fdab21cdc4ef778bfaf4e123b28c9aa0">save_graphicsmagick_external</a> (const char *const filename, const unsigned int quality=100) const </td></tr> 288.2476 + 288.2477 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image using GraphicsMagick's gm. <a href="#fdab21cdc4ef778bfaf4e123b28c9aa0"></a><br></td></tr> 288.2478 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="882ef6fb0c2487da8598e36c45b8eeab"></a><!-- doxytag: member="cimg_library::CImg::save_gzip_external" ref="882ef6fb0c2487da8598e36c45b8eeab" args="(const char *const filename) const " --> 288.2479 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#882ef6fb0c2487da8598e36c45b8eeab">save_gzip_external</a> (const char *const filename) const </td></tr> 288.2480 + 288.2481 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image as a gzipped file, using external tool 'gzip'. <br></td></tr> 288.2482 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b0ff4f35fc74d40fda4893b7e2fdbe7b">save_imagemagick_external</a> (const char *const filename, const unsigned int quality=100) const </td></tr> 288.2483 + 288.2484 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save the image using ImageMagick's convert. <a href="#b0ff4f35fc74d40fda4893b7e2fdbe7b"></a><br></td></tr> 288.2485 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f3608edc3098e7c850c69cd347d4f9e8"></a><!-- doxytag: member="cimg_library::CImg::save_medcon_external" ref="f3608edc3098e7c850c69cd347d4f9e8" args="(const char *const filename) const " --> 288.2486 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f3608edc3098e7c850c69cd347d4f9e8">save_medcon_external</a> (const char *const filename) const </td></tr> 288.2487 + 288.2488 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image as a Dicom file (need '(X)Medcon' : <a href="http://xmedcon.sourceforge.net">http://xmedcon.sourceforge.net</a> ). <br></td></tr> 288.2489 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3c48c6414547b87d5b3dbf17ac84b393"></a><!-- doxytag: member="cimg_library::CImg::save_other" ref="3c48c6414547b87d5b3dbf17ac84b393" args="(const char *const filename, const unsigned int quality=100) const " --> 288.2490 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>save_other</b> (const char *const filename, const unsigned int quality=100) const </td></tr> 288.2491 + 288.2492 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="514edc69c74a31e32f36d3731cbf9503"></a><!-- doxytag: member="cimg_library::CImg::save_empty_cimg" ref="514edc69c74a31e32f36d3731cbf9503" args="(const char *const filename, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.2493 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#514edc69c74a31e32f36d3731cbf9503">save_empty_cimg</a> (const char *const filename, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2494 + 288.2495 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an empty .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file with specified dimensions. <br></td></tr> 288.2496 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80a0ba2b540d28d0b20d9a0249d44d5a"></a><!-- doxytag: member="cimg_library::CImg::save_empty_cimg" ref="80a0ba2b540d28d0b20d9a0249d44d5a" args="(cimg_std::FILE *const file, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.2497 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#80a0ba2b540d28d0b20d9a0249d44d5a">save_empty_cimg</a> (cimg_std::FILE *const file, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2498 + 288.2499 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an empty .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file with specified dimensions. <br></td></tr> 288.2500 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f0c1cb65799c88c02a855976b783c248"></a><!-- doxytag: member="cimg_library::CImg::logo40x38" ref="f0c1cb65799c88c02a855976b783c248" args="()" --> 288.2501 +static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>logo40x38</b> ()</td></tr> 288.2502 + 288.2503 +<tr><td colspan="2"><br><h2>Public Types</h2></td></tr> 288.2504 +<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef T * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">iterator</a></td></tr> 288.2505 + 288.2506 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Iterator type for CImg<T>. <a href="#35c955cacac6aacaa1e82874b1628865"></a><br></td></tr> 288.2507 +<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const T * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">const_iterator</a></td></tr> 288.2508 + 288.2509 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Const iterator type for CImg<T>. <a href="#2fc97dce62b7053449cc868607540dba"></a><br></td></tr> 288.2510 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="265a253612b46abed17c61b0a5e5ce30"></a><!-- doxytag: member="cimg_library::CImg::value_type" ref="265a253612b46abed17c61b0a5e5ce30" args="" --> 288.2511 +typedef T </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#265a253612b46abed17c61b0a5e5ce30">value_type</a></td></tr> 288.2512 + 288.2513 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get value type. <br></td></tr> 288.2514 +<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 288.2515 +<tr><td colspan="2"><div class="groupHeader">Constructors-Destructor-Copy</div></td></tr> 288.2516 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d71c294580a5307aa31246e4a1ee7866">~CImg</a> ()</td></tr> 288.2517 + 288.2518 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#d71c294580a5307aa31246e4a1ee7866"></a><br></td></tr> 288.2519 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8a31842596268c9fc95810890607762f">CImg</a> ()</td></tr> 288.2520 + 288.2521 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="#8a31842596268c9fc95810890607762f"></a><br></td></tr> 288.2522 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f0cf1b66afb42bbb4750895fe66bcc69">CImg</a> (const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2523 + 288.2524 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructs a new image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>). <a href="#f0cf1b66afb42bbb4750895fe66bcc69"></a><br></td></tr> 288.2525 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a1909d94c489ed7ba0bbc82ee47855c2">CImg</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)</td></tr> 288.2526 + 288.2527 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) and with pixel having a default value <code>val</code>. <a href="#a1909d94c489ed7ba0bbc82ee47855c2"></a><br></td></tr> 288.2528 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0fb70d9de40880b2f5449a8caa4f4e92"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="0fb70d9de40880b2f5449a8caa4f4e92" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)" --> 288.2529 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0fb70d9de40880b2f5449a8caa4f4e92">CImg</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)</td></tr> 288.2530 + 288.2531 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) and with specified pixel values (int version). <br></td></tr> 288.2532 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7a3b720681feaf5a473af0cdd7c65ed"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="f7a3b720681feaf5a473af0cdd7c65ed" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)" --> 288.2533 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f7a3b720681feaf5a473af0cdd7c65ed">CImg</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)</td></tr> 288.2534 + 288.2535 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) and with specified pixel values (double version). <br></td></tr> 288.2536 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="deb4efd29d413691efc7eb84ac4016f1"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="deb4efd29d413691efc7eb84ac4016f1" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const char *const values, const bool repeat_pattern)" --> 288.2537 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#deb4efd29d413691efc7eb84ac4016f1">CImg</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const char *const values, const bool repeat_pattern)</td></tr> 288.2538 + 288.2539 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image with given size and with specified values given in a string. <br></td></tr> 288.2540 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2541 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6ae6194b89742eb1578795312556bfbd">CImg</a> (const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)</td></tr> 288.2542 + 288.2543 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image from a raw memory buffer. <a href="#6ae6194b89742eb1578795312556bfbd"></a><br></td></tr> 288.2544 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7ef52093de968546ba52735f0846633"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="b7ef52093de968546ba52735f0846633" args="(const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)" --> 288.2545 + </td><td class="memItemRight" valign="bottom"><b>CImg</b> (const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)</td></tr> 288.2546 + 288.2547 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2548 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8479cd0cf615e3131efcabac1e3ff004">CImg</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2549 + 288.2550 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Default copy constructor. <a href="#8479cd0cf615e3131efcabac1e3ff004"></a><br></td></tr> 288.2551 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae1d70bef944e9263b73d0d318b42d7f"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="ae1d70bef944e9263b73d0d318b42d7f" args="(const CImg< T > &img)" --> 288.2552 + </td><td class="memItemRight" valign="bottom"><b>CImg</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 288.2553 + 288.2554 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2555 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8dfaf8ddcc86f17442f8eeb3102d0662">CImg</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared)</td></tr> 288.2556 + 288.2557 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Advanced copy constructor. <a href="#8dfaf8ddcc86f17442f8eeb3102d0662"></a><br></td></tr> 288.2558 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aecfca2842e450a766dd71a220a1b9a6"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="aecfca2842e450a766dd71a220a1b9a6" args="(const CImg< T > &img, const bool shared)" --> 288.2559 + </td><td class="memItemRight" valign="bottom"><b>CImg</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const bool shared)</td></tr> 288.2560 + 288.2561 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f31fbb19630af0ddbee182d31e41093c"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="f31fbb19630af0ddbee182d31e41093c" args="(const CImg< t > &img, const char *const dimensions)" --> 288.2562 +template<typename t > </td></tr> 288.2563 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f31fbb19630af0ddbee182d31e41093c">CImg</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const char *const dimensions)</td></tr> 288.2564 + 288.2565 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image using dimensions of another image. <br></td></tr> 288.2566 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="86a2b8265b0feda01e0537b10a70a4b6"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="86a2b8265b0feda01e0537b10a70a4b6" args="(const CImg< t > &img, const char *const dimensions, const T val)" --> 288.2567 +template<typename t > </td></tr> 288.2568 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#86a2b8265b0feda01e0537b10a70a4b6">CImg</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const char *const dimensions, const T val)</td></tr> 288.2569 + 288.2570 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image using dimensions of another image, and fill it with a default value. <br></td></tr> 288.2571 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ade5358c8a81825b86e6c654194b33d2">CImg</a> (const char *const filename)</td></tr> 288.2572 + 288.2573 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image from an image file. <a href="#ade5358c8a81825b86e6c654194b33d2"></a><br></td></tr> 288.2574 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ceaeb1e13cdb9e681ddc4341807f6fac"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="ceaeb1e13cdb9e681ddc4341807f6fac" args="(const CImgDisplay &disp)" --> 288.2575 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ceaeb1e13cdb9e681ddc4341807f6fac">CImg</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp)</td></tr> 288.2576 + 288.2577 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image from the content of a <a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a> instance. <br></td></tr> 288.2578 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#65018fb0cbdbd9e8d1404321cd69bfe5">assign</a> ()</td></tr> 288.2579 + 288.2580 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the default constructor/destructor. <a href="#65018fb0cbdbd9e8d1404321cd69bfe5"></a><br></td></tr> 288.2581 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b5cdf8f13cc7065fef4da8214ff36d5d">clear</a> ()</td></tr> 288.2582 + 288.2583 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the default constructor. <a href="#b5cdf8f13cc7065fef4da8214ff36d5d"></a><br></td></tr> 288.2584 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#55e2f2335ea8060148c59ec4f57846e2">assign</a> (const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2585 + 288.2586 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <a href="#55e2f2335ea8060148c59ec4f57846e2"></a><br></td></tr> 288.2587 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#14047abcb2a67ba0dadc92e34b456111">assign</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)</td></tr> 288.2588 + 288.2589 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <a href="#14047abcb2a67ba0dadc92e34b456111"></a><br></td></tr> 288.2590 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8a8cf42230f48cfaf80c96fe040926c9"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="8a8cf42230f48cfaf80c96fe040926c9" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)" --> 288.2591 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8a8cf42230f48cfaf80c96fe040926c9">assign</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const int val0, const int val1,...)</td></tr> 288.2592 + 288.2593 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2594 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="18e8003d8101d51963e0eea3a86b8f47"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="18e8003d8101d51963e0eea3a86b8f47" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)" --> 288.2595 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#18e8003d8101d51963e0eea3a86b8f47">assign</a> (const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const double val0, const double val1,...)</td></tr> 288.2596 + 288.2597 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2598 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6afdd52b55027273b836655fcf64d74d"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="6afdd52b55027273b836655fcf64d74d" args="(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.2599 +template<typename t > </td></tr> 288.2600 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6afdd52b55027273b836655fcf64d74d">assign</a> (const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2601 + 288.2602 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2603 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f88f874fd5a12bd792bde0d36d3c9cfa"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="f88f874fd5a12bd792bde0d36d3c9cfa" args="(const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.2604 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>assign</b> (const T *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 288.2605 + 288.2606 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f8906ce66ef0cdb44c37c7c26b1208ab"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="f8906ce66ef0cdb44c37c7c26b1208ab" args="(const t *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)" --> 288.2607 +template<typename t > </td></tr> 288.2608 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f8906ce66ef0cdb44c37c7c26b1208ab">assign</a> (const t *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)</td></tr> 288.2609 + 288.2610 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor, allowing to force the shared state of the instance image. <br></td></tr> 288.2611 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="512dca5945c08a2daaed3d78ceee33a5"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="512dca5945c08a2daaed3d78ceee33a5" args="(const T *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)" --> 288.2612 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>assign</b> (const T *const data_buffer, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const bool shared)</td></tr> 288.2613 + 288.2614 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2615 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2616 + 288.2617 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the default copy constructor. <a href="#0fb4ca12616b7a1a05a9b3cc62878df4"></a><br></td></tr> 288.2618 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2619 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#934bab7595fd98de5131d5d2394e4a81">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared)</td></tr> 288.2620 + 288.2621 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the advanced constructor. <a href="#934bab7595fd98de5131d5d2394e4a81"></a><br></td></tr> 288.2622 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a5a08c14d01a530e5bc9549db77144f7"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="a5a08c14d01a530e5bc9549db77144f7" args="(const CImg< t > &img, const char *const dimensions)" --> 288.2623 +template<typename t > </td></tr> 288.2624 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a5a08c14d01a530e5bc9549db77144f7">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const char *const dimensions)</td></tr> 288.2625 + 288.2626 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2627 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="42e17fa9823170992210022cc0646684"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="42e17fa9823170992210022cc0646684" args="(const CImg< t > &img, const char *const dimensions, const T val)" --> 288.2628 +template<typename t > </td></tr> 288.2629 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#42e17fa9823170992210022cc0646684">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const char *const dimensions, const T val)</td></tr> 288.2630 + 288.2631 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2632 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#78c78d152f5012d2e8fdcc35235c62a4">assign</a> (const char *const filename)</td></tr> 288.2633 + 288.2634 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <a href="#78c78d152f5012d2e8fdcc35235c62a4"></a><br></td></tr> 288.2635 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48123f96bfb3eff6ba15dc4b40a8f81a"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="48123f96bfb3eff6ba15dc4b40a8f81a" args="(const CImgDisplay &disp)" --> 288.2636 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#48123f96bfb3eff6ba15dc4b40a8f81a">assign</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp)</td></tr> 288.2637 + 288.2638 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 288.2639 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2640 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b3b0efc40be1da20da1fbddfad758568">transfer_to</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2641 + 288.2642 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Transfer the content of the instance image into another one in a way that memory copies are avoided if possible. <a href="#b3b0efc40be1da20da1fbddfad758568"></a><br></td></tr> 288.2643 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f58d866e0fde4d02e8bdf9c5de801582"></a><!-- doxytag: member="cimg_library::CImg::transfer_to" ref="f58d866e0fde4d02e8bdf9c5de801582" args="(CImg< T > &img)" --> 288.2644 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>transfer_to</b> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 288.2645 + 288.2646 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e00c35b15007593513f64c7ee7fb7f7"></a><!-- doxytag: member="cimg_library::CImg::swap" ref="4e00c35b15007593513f64c7ee7fb7f7" args="(CImg< T > &img)" --> 288.2647 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4e00c35b15007593513f64c7ee7fb7f7">swap</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 288.2648 + 288.2649 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Swap all fields of two images. Use with care ! <br></td></tr> 288.2650 +<tr><td colspan="2"><div class="groupHeader">Arithmetic and Boolean Operators</div></td></tr> 288.2651 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.2652 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b8993b2170b87343f86f3e07fe0b7348">operator=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2653 + 288.2654 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <a href="#b8993b2170b87343f86f3e07fe0b7348"></a><br></td></tr> 288.2655 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0b4012f3f99e34ac922a481d13e182f"></a><!-- doxytag: member="cimg_library::CImg::operator=" ref="a0b4012f3f99e34ac922a481d13e182f" args="(const CImg< T > &img)" --> 288.2656 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 288.2657 + 288.2658 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#372633e285ab4266465e4101e72e74aa">operator=</a> (const T *buf)</td></tr> 288.2659 + 288.2660 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Assign values of a C-array to the instance image. <a href="#372633e285ab4266465e4101e72e74aa"></a><br></td></tr> 288.2661 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ab78af35f2f570dafec8e449652e539"></a><!-- doxytag: member="cimg_library::CImg::operator=" ref="4ab78af35f2f570dafec8e449652e539" args="(const T val)" --> 288.2662 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4ab78af35f2f570dafec8e449652e539">operator=</a> (const T val)</td></tr> 288.2663 + 288.2664 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Assign a value to each image pixel of the instance image. <br></td></tr> 288.2665 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#637e0346bd7e4426d32e32aab42bd3f6">operator+</a> () const </td></tr> 288.2666 + 288.2667 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator+. <a href="#637e0346bd7e4426d32e32aab42bd3f6"></a><br></td></tr> 288.2668 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f953b216980f8519642514380f3bfdba"></a><!-- doxytag: member="cimg_library::CImg::operator+=" ref="f953b216980f8519642514380f3bfdba" args="(const t val)" --> 288.2669 +template<typename t > </td></tr> 288.2670 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f953b216980f8519642514380f3bfdba">operator+=</a> (const t val)</td></tr> 288.2671 + 288.2672 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator+=;. <br></td></tr> 288.2673 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8ad4dd16205403c4bde19d8982dba57e"></a><!-- doxytag: member="cimg_library::CImg::operator+=" ref="8ad4dd16205403c4bde19d8982dba57e" args="(const CImg< t > &img)" --> 288.2674 +template<typename t > </td></tr> 288.2675 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8ad4dd16205403c4bde19d8982dba57e">operator+=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2676 + 288.2677 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator+=. <br></td></tr> 288.2678 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed696f4e890e8da6f6ebaa3171aa2dd7"></a><!-- doxytag: member="cimg_library::CImg::operator++" ref="ed696f4e890e8da6f6ebaa3171aa2dd7" args="()" --> 288.2679 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ed696f4e890e8da6f6ebaa3171aa2dd7">operator++</a> ()</td></tr> 288.2680 + 288.2681 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator++ (prefix). <br></td></tr> 288.2682 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="694b492d0726df1797d5d6e4da74dfb4"></a><!-- doxytag: member="cimg_library::CImg::operator++" ref="694b492d0726df1797d5d6e4da74dfb4" args="(int)" --> 288.2683 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#694b492d0726df1797d5d6e4da74dfb4">operator++</a> (int)</td></tr> 288.2684 + 288.2685 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator++ (postfix). <br></td></tr> 288.2686 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8c181b212c22dbee4ee228cac4c00d4"></a><!-- doxytag: member="cimg_library::CImg::operator-" ref="e8c181b212c22dbee4ee228cac4c00d4" args="() const " --> 288.2687 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e8c181b212c22dbee4ee228cac4c00d4">operator-</a> () const </td></tr> 288.2688 + 288.2689 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator-. <br></td></tr> 288.2690 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f18d9bcb5010cdea4c3f6496dd36ccb4"></a><!-- doxytag: member="cimg_library::CImg::operator-=" ref="f18d9bcb5010cdea4c3f6496dd36ccb4" args="(const t val)" --> 288.2691 +template<typename t > </td></tr> 288.2692 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f18d9bcb5010cdea4c3f6496dd36ccb4">operator-=</a> (const t val)</td></tr> 288.2693 + 288.2694 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator-=. <br></td></tr> 288.2695 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ff89b226a15e536f2d23b590ed9ba4de"></a><!-- doxytag: member="cimg_library::CImg::operator-=" ref="ff89b226a15e536f2d23b590ed9ba4de" args="(const CImg< t > &img)" --> 288.2696 +template<typename t > </td></tr> 288.2697 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ff89b226a15e536f2d23b590ed9ba4de">operator-=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2698 + 288.2699 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator-=. <br></td></tr> 288.2700 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8d71ada97bd3d54d3f4265f0059273cf"></a><!-- doxytag: member="cimg_library::CImg::operator--" ref="8d71ada97bd3d54d3f4265f0059273cf" args="()" --> 288.2701 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8d71ada97bd3d54d3f4265f0059273cf">operator--</a> ()</td></tr> 288.2702 + 288.2703 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator-- (prefix). <br></td></tr> 288.2704 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0aa6fe646ae580b616d26b154205f84"></a><!-- doxytag: member="cimg_library::CImg::operator--" ref="d0aa6fe646ae580b616d26b154205f84" args="(int)" --> 288.2705 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d0aa6fe646ae580b616d26b154205f84">operator--</a> (int)</td></tr> 288.2706 + 288.2707 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator-- (postfix). <br></td></tr> 288.2708 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="df7285a98afaa0cbfeff5b35ef939111"></a><!-- doxytag: member="cimg_library::CImg::operator*=" ref="df7285a98afaa0cbfeff5b35ef939111" args="(const t val)" --> 288.2709 +template<typename t > </td></tr> 288.2710 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#df7285a98afaa0cbfeff5b35ef939111">operator*=</a> (const t val)</td></tr> 288.2711 + 288.2712 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator*=. <br></td></tr> 288.2713 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="770aafd607168611eace12d46d5f2bfd"></a><!-- doxytag: member="cimg_library::CImg::operator*=" ref="770aafd607168611eace12d46d5f2bfd" args="(const CImg< t > &img)" --> 288.2714 +template<typename t > </td></tr> 288.2715 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#770aafd607168611eace12d46d5f2bfd">operator*=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2716 + 288.2717 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator*=. <br></td></tr> 288.2718 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9a6123b197ed6406eda560863bbe4cc1"></a><!-- doxytag: member="cimg_library::CImg::operator/=" ref="9a6123b197ed6406eda560863bbe4cc1" args="(const t val)" --> 288.2719 +template<typename t > </td></tr> 288.2720 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9a6123b197ed6406eda560863bbe4cc1">operator/=</a> (const t val)</td></tr> 288.2721 + 288.2722 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator/=. <br></td></tr> 288.2723 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="961e682342f88bf0a0cfbd497bf548d4"></a><!-- doxytag: member="cimg_library::CImg::operator/=" ref="961e682342f88bf0a0cfbd497bf548d4" args="(const CImg< t > &img)" --> 288.2724 +template<typename t > </td></tr> 288.2725 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#961e682342f88bf0a0cfbd497bf548d4">operator/=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2726 + 288.2727 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Operator/=. <br></td></tr> 288.2728 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="248f258fd888937bd3ff1bfd6262cf86"></a><!-- doxytag: member="cimg_library::CImg::operator%" ref="248f258fd888937bd3ff1bfd6262cf86" args="(const CImg< t > &img) const " --> 288.2729 +template<typename t > </td></tr> 288.2730 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2731 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#248f258fd888937bd3ff1bfd6262cf86">operator%</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2732 + 288.2733 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Modulo. <br></td></tr> 288.2734 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3112ecd7208e5689a264d8178d1a56c4"></a><!-- doxytag: member="cimg_library::CImg::operator%" ref="3112ecd7208e5689a264d8178d1a56c4" args="(const T val) const " --> 288.2735 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3112ecd7208e5689a264d8178d1a56c4">operator%</a> (const T val) const </td></tr> 288.2736 + 288.2737 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Modulo. <br></td></tr> 288.2738 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc3ca29103dd08337dd5b314fc739e8f"></a><!-- doxytag: member="cimg_library::CImg::operator%=" ref="dc3ca29103dd08337dd5b314fc739e8f" args="(const T val)" --> 288.2739 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dc3ca29103dd08337dd5b314fc739e8f">operator%=</a> (const T val)</td></tr> 288.2740 + 288.2741 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place modulo. <br></td></tr> 288.2742 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b3adc19f97c3db91bb48c0f9c284c250"></a><!-- doxytag: member="cimg_library::CImg::operator%=" ref="b3adc19f97c3db91bb48c0f9c284c250" args="(const CImg< t > &img)" --> 288.2743 +template<typename t > </td></tr> 288.2744 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b3adc19f97c3db91bb48c0f9c284c250">operator%=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2745 + 288.2746 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place modulo. <br></td></tr> 288.2747 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="63777d8b423f5bf16a60be4466ec70d4"></a><!-- doxytag: member="cimg_library::CImg::operator&" ref="63777d8b423f5bf16a60be4466ec70d4" args="(const CImg< t > &img) const " --> 288.2748 +template<typename t > </td></tr> 288.2749 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2750 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#63777d8b423f5bf16a60be4466ec70d4">operator&</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2751 + 288.2752 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise AND. <br></td></tr> 288.2753 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5d1491a7cb2e98e810bf0edaa471f883"></a><!-- doxytag: member="cimg_library::CImg::operator&" ref="5d1491a7cb2e98e810bf0edaa471f883" args="(const T val) const " --> 288.2754 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5d1491a7cb2e98e810bf0edaa471f883">operator&</a> (const T val) const </td></tr> 288.2755 + 288.2756 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise AND. <br></td></tr> 288.2757 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="788c26161bb12c4fed30b2a8edf05126"></a><!-- doxytag: member="cimg_library::CImg::operator&=" ref="788c26161bb12c4fed30b2a8edf05126" args="(const CImg< t > &img)" --> 288.2758 +template<typename t > </td></tr> 288.2759 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#788c26161bb12c4fed30b2a8edf05126">operator&=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2760 + 288.2761 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise AND. <br></td></tr> 288.2762 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99982b0c06528a9d8472c88a05bb0336"></a><!-- doxytag: member="cimg_library::CImg::operator&=" ref="99982b0c06528a9d8472c88a05bb0336" args="(const T val)" --> 288.2763 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#99982b0c06528a9d8472c88a05bb0336">operator&=</a> (const T val)</td></tr> 288.2764 + 288.2765 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise AND. <br></td></tr> 288.2766 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d83a9f46be07bf5a9b24a6b1253c4ed1"></a><!-- doxytag: member="cimg_library::CImg::operator|" ref="d83a9f46be07bf5a9b24a6b1253c4ed1" args="(const CImg< t > &img) const " --> 288.2767 +template<typename t > </td></tr> 288.2768 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2769 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d83a9f46be07bf5a9b24a6b1253c4ed1">operator|</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2770 + 288.2771 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise OR. <br></td></tr> 288.2772 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8a9d727ce82153f4df2fe8e1292bad0"></a><!-- doxytag: member="cimg_library::CImg::operator|" ref="a8a9d727ce82153f4df2fe8e1292bad0" args="(const T val) const " --> 288.2773 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a8a9d727ce82153f4df2fe8e1292bad0">operator|</a> (const T val) const </td></tr> 288.2774 + 288.2775 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise OR. <br></td></tr> 288.2776 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6306b063ce03ecf392a03cac541375af"></a><!-- doxytag: member="cimg_library::CImg::operator|=" ref="6306b063ce03ecf392a03cac541375af" args="(const CImg< t > &img)" --> 288.2777 +template<typename t > </td></tr> 288.2778 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6306b063ce03ecf392a03cac541375af">operator|=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2779 + 288.2780 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise OR. <br></td></tr> 288.2781 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="baa1bd39411a23a524c6baf0c55745d3"></a><!-- doxytag: member="cimg_library::CImg::operator|=" ref="baa1bd39411a23a524c6baf0c55745d3" args="(const T val)" --> 288.2782 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#baa1bd39411a23a524c6baf0c55745d3">operator|=</a> (const T val)</td></tr> 288.2783 + 288.2784 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise OR. <br></td></tr> 288.2785 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8d14021427e1899d7422a839972154c3"></a><!-- doxytag: member="cimg_library::CImg::operator^" ref="8d14021427e1899d7422a839972154c3" args="(const CImg< t > &img) const " --> 288.2786 +template<typename t > </td></tr> 288.2787 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2788 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8d14021427e1899d7422a839972154c3">operator^</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2789 + 288.2790 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise XOR. <br></td></tr> 288.2791 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff2d39b04a4a00a4c4a058872a235380"></a><!-- doxytag: member="cimg_library::CImg::operator^" ref="ff2d39b04a4a00a4c4a058872a235380" args="(const T val) const " --> 288.2792 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ff2d39b04a4a00a4c4a058872a235380">operator^</a> (const T val) const </td></tr> 288.2793 + 288.2794 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise XOR. <br></td></tr> 288.2795 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c51bdadcbdffee3dfda3914ec6dfdbfd"></a><!-- doxytag: member="cimg_library::CImg::operator^=" ref="c51bdadcbdffee3dfda3914ec6dfdbfd" args="(const CImg< t > &img)" --> 288.2796 +template<typename t > </td></tr> 288.2797 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c51bdadcbdffee3dfda3914ec6dfdbfd">operator^=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2798 + 288.2799 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise XOR. <br></td></tr> 288.2800 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9d9cc07bba21ba1df87cee6208e83e95"></a><!-- doxytag: member="cimg_library::CImg::operator^=" ref="9d9cc07bba21ba1df87cee6208e83e95" args="(const T val)" --> 288.2801 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9d9cc07bba21ba1df87cee6208e83e95">operator^=</a> (const T val)</td></tr> 288.2802 + 288.2803 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place bitwise XOR. <br></td></tr> 288.2804 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0752b44324e973aed012d79bc9a2d3fd"></a><!-- doxytag: member="cimg_library::CImg::operator~" ref="0752b44324e973aed012d79bc9a2d3fd" args="() const " --> 288.2805 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0752b44324e973aed012d79bc9a2d3fd">operator~</a> () const </td></tr> 288.2806 + 288.2807 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise NOT. <br></td></tr> 288.2808 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="02dd49d59f77aa41446ce028f9771151"></a><!-- doxytag: member="cimg_library::CImg::operator<<=" ref="02dd49d59f77aa41446ce028f9771151" args="(const int n)" --> 288.2809 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#02dd49d59f77aa41446ce028f9771151">operator<<=</a> (const int n)</td></tr> 288.2810 + 288.2811 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise left shift. <br></td></tr> 288.2812 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86bcd22cc3a9c6dcec264766e66f849f"></a><!-- doxytag: member="cimg_library::CImg::operator<<" ref="86bcd22cc3a9c6dcec264766e66f849f" args="(const int n) const " --> 288.2813 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#86bcd22cc3a9c6dcec264766e66f849f">operator<<</a> (const int n) const </td></tr> 288.2814 + 288.2815 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise left shift. <br></td></tr> 288.2816 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2ecc6f016d1358b12e010dbe75e4d576"></a><!-- doxytag: member="cimg_library::CImg::operator>>=" ref="2ecc6f016d1358b12e010dbe75e4d576" args="(const int n)" --> 288.2817 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2ecc6f016d1358b12e010dbe75e4d576">operator>>=</a> (const int n)</td></tr> 288.2818 + 288.2819 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise right shift. <br></td></tr> 288.2820 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="622413644789d18b3cfff7ff309c95fd"></a><!-- doxytag: member="cimg_library::CImg::operator>>" ref="622413644789d18b3cfff7ff309c95fd" args="(const int n) const " --> 288.2821 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#622413644789d18b3cfff7ff309c95fd">operator>></a> (const int n) const </td></tr> 288.2822 + 288.2823 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Bitwise right shift. <br></td></tr> 288.2824 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0ad220d8708e61416b9b9255aa612740"></a><!-- doxytag: member="cimg_library::CImg::operator==" ref="0ad220d8708e61416b9b9255aa612740" args="(const CImg< t > &img) const " --> 288.2825 +template<typename t > </td></tr> 288.2826 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0ad220d8708e61416b9b9255aa612740">operator==</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2827 + 288.2828 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Boolean equality. <br></td></tr> 288.2829 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="826e9d8fbbc121776b306f8c2ad13e22"></a><!-- doxytag: member="cimg_library::CImg::operator!=" ref="826e9d8fbbc121776b306f8c2ad13e22" args="(const CImg< t > &img) const " --> 288.2830 +template<typename t > </td></tr> 288.2831 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#826e9d8fbbc121776b306f8c2ad13e22">operator!=</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2832 + 288.2833 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Boolean difference. <br></td></tr> 288.2834 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9ae2c81016de21b85487cb678a43afb8"></a><!-- doxytag: member="cimg_library::CImg::operator<<" ref="9ae2c81016de21b85487cb678a43afb8" args="(const CImg< t > &img) const " --> 288.2835 +template<typename t > </td></tr> 288.2836 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< typename <br class="typebreak"> 288.2837 +cimg::superset< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9ae2c81016de21b85487cb678a43afb8">operator<<</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2838 + 288.2839 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a list of two images { *this, img }. <br></td></tr> 288.2840 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="52e8e42e7d7f88266dc5cc3e8e98922f"></a><!-- doxytag: member="cimg_library::CImg::operator<<" ref="52e8e42e7d7f88266dc5cc3e8e98922f" args="(const CImgList< t > &list) const " --> 288.2841 +template<typename t > </td></tr> 288.2842 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< typename <br class="typebreak"> 288.2843 +cimg::superset< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#52e8e42e7d7f88266dc5cc3e8e98922f">operator<<</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list) const </td></tr> 288.2844 + 288.2845 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a copy of <code>list</code>, where image *this has been inserted at first position. <br></td></tr> 288.2846 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5fd695f21801e47ea5b859b881c2937a"></a><!-- doxytag: member="cimg_library::CImg::operator>>" ref="5fd695f21801e47ea5b859b881c2937a" args="(const CImg< t > &img) const " --> 288.2847 +template<typename t > </td></tr> 288.2848 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< typename <br class="typebreak"> 288.2849 +cimg::superset< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5fd695f21801e47ea5b859b881c2937a">operator>></a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2850 + 288.2851 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a list of two images { *this, img }. <br></td></tr> 288.2852 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e19055c7e5c2e3b8999bab17d2bbfba1"></a><!-- doxytag: member="cimg_library::CImg::operator>>" ref="e19055c7e5c2e3b8999bab17d2bbfba1" args="(const CImgList< t > &list) const " --> 288.2853 +template<typename t > </td></tr> 288.2854 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e19055c7e5c2e3b8999bab17d2bbfba1">operator>></a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list) const </td></tr> 288.2855 + 288.2856 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Insert an image into the begining of an image list. <br></td></tr> 288.2857 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c303f7b3fa995df885954b37b4f09775"></a><!-- doxytag: member="cimg_library::CImg::operator>>" ref="c303f7b3fa995df885954b37b4f09775" args="(CImgDisplay &disp) const " --> 288.2858 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c303f7b3fa995df885954b37b4f09775">operator>></a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp) const </td></tr> 288.2859 + 288.2860 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image into a <a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a>. <br></td></tr> 288.2861 +<tr><td colspan="2"><div class="groupHeader">Usual Mathematics Functions</div></td></tr> 288.2862 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ecd1394048b7fef2eb30ea3985600614"></a><!-- doxytag: member="cimg_library::CImg::apply" ref="ecd1394048b7fef2eb30ea3985600614" args="(t &func)" --> 288.2863 +template<typename t > </td></tr> 288.2864 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ecd1394048b7fef2eb30ea3985600614">apply</a> (t &func)</td></tr> 288.2865 + 288.2866 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Apply a R->R function on all pixel values. <br></td></tr> 288.2867 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="49e5dea6567fc954c5a0630afd36fe57"></a><!-- doxytag: member="cimg_library::CImg::get_apply" ref="49e5dea6567fc954c5a0630afd36fe57" args="(t &func) const " --> 288.2868 +template<typename t > </td></tr> 288.2869 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_apply</b> (t &func) const </td></tr> 288.2870 + 288.2871 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c026a207188625e845af7abf60a31a7b"></a><!-- doxytag: member="cimg_library::CImg::mul" ref="c026a207188625e845af7abf60a31a7b" args="(const CImg< t > &img)" --> 288.2872 +template<typename t > </td></tr> 288.2873 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c026a207188625e845af7abf60a31a7b">mul</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2874 + 288.2875 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise multiplication between two images. <br></td></tr> 288.2876 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fda2b06cf10e1bb91b8dfb3cb8b19cbf"></a><!-- doxytag: member="cimg_library::CImg::get_mul" ref="fda2b06cf10e1bb91b8dfb3cb8b19cbf" args="(const CImg< t > &img) const " --> 288.2877 +template<typename t > </td></tr> 288.2878 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2879 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_mul</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2880 + 288.2881 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="df1a8f5e809741e70edd3b6a454c8689"></a><!-- doxytag: member="cimg_library::CImg::div" ref="df1a8f5e809741e70edd3b6a454c8689" args="(const CImg< t > &img)" --> 288.2882 +template<typename t > </td></tr> 288.2883 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#df1a8f5e809741e70edd3b6a454c8689">div</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2884 + 288.2885 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise division between two images. <br></td></tr> 288.2886 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bde0916b423d76a23e8490c0d2879bba"></a><!-- doxytag: member="cimg_library::CImg::get_div" ref="bde0916b423d76a23e8490c0d2879bba" args="(const CImg< t > &img) const " --> 288.2887 +template<typename t > </td></tr> 288.2888 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2889 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_div</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2890 + 288.2891 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bbbf6afa836f43dd613d680e9920d858"></a><!-- doxytag: member="cimg_library::CImg::max" ref="bbbf6afa836f43dd613d680e9920d858" args="(const CImg< t > &img)" --> 288.2892 +template<typename t > </td></tr> 288.2893 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bbbf6afa836f43dd613d680e9920d858">max</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2894 + 288.2895 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise max operator between two images. <br></td></tr> 288.2896 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="22a3fc9212e53e12a7f7014f539ec039"></a><!-- doxytag: member="cimg_library::CImg::get_max" ref="22a3fc9212e53e12a7f7014f539ec039" args="(const CImg< t > &img) const " --> 288.2897 +template<typename t > </td></tr> 288.2898 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2899 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_max</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2900 + 288.2901 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="88c9c06c49658060a2766f865e14c0eb"></a><!-- doxytag: member="cimg_library::CImg::max" ref="88c9c06c49658060a2766f865e14c0eb" args="(const T val)" --> 288.2902 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#88c9c06c49658060a2766f865e14c0eb">max</a> (const T val)</td></tr> 288.2903 + 288.2904 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise max operator between an image and a value. <br></td></tr> 288.2905 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8fdf90232d0442414467e5253c5cb663"></a><!-- doxytag: member="cimg_library::CImg::get_max" ref="8fdf90232d0442414467e5253c5cb663" args="(const T val) const " --> 288.2906 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_max</b> (const T val) const </td></tr> 288.2907 + 288.2908 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="54fa8ab955fc28675dd0d0f4fbb9b7ad"></a><!-- doxytag: member="cimg_library::CImg::min" ref="54fa8ab955fc28675dd0d0f4fbb9b7ad" args="(const CImg< t > &img)" --> 288.2909 +template<typename t > </td></tr> 288.2910 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#54fa8ab955fc28675dd0d0f4fbb9b7ad">min</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2911 + 288.2912 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise min operator between two images. <br></td></tr> 288.2913 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="695c703c119c838716d7b10a4dc0d394"></a><!-- doxytag: member="cimg_library::CImg::get_min" ref="695c703c119c838716d7b10a4dc0d394" args="(const CImg< t > &img) const " --> 288.2914 +template<typename t > </td></tr> 288.2915 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.2916 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_min</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2917 + 288.2918 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24f04a40c39adc99e49ca7c5d3f3d322"></a><!-- doxytag: member="cimg_library::CImg::min" ref="24f04a40c39adc99e49ca7c5d3f3d322" args="(const T val)" --> 288.2919 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#24f04a40c39adc99e49ca7c5d3f3d322">min</a> (const T val)</td></tr> 288.2920 + 288.2921 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointwise min operator between an image and a value. <br></td></tr> 288.2922 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="73bba3d7f4cce95bdfe3988a53951444"></a><!-- doxytag: member="cimg_library::CImg::get_min" ref="73bba3d7f4cce95bdfe3988a53951444" args="(const T val) const " --> 288.2923 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_min</b> (const T val) const </td></tr> 288.2924 + 288.2925 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19ebb696e513b9246864e5b0cdd884f5"></a><!-- doxytag: member="cimg_library::CImg::sqr" ref="19ebb696e513b9246864e5b0cdd884f5" args="()" --> 288.2926 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#19ebb696e513b9246864e5b0cdd884f5">sqr</a> ()</td></tr> 288.2927 + 288.2928 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the square value of each pixel. <br></td></tr> 288.2929 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e89b55c8ad61aafa8e43dadbeccd1cea"></a><!-- doxytag: member="cimg_library::CImg::get_sqr" ref="e89b55c8ad61aafa8e43dadbeccd1cea" args="() const " --> 288.2930 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_sqr</b> () const </td></tr> 288.2931 + 288.2932 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8c11d16e75e931e9e28d44171e7038d3"></a><!-- doxytag: member="cimg_library::CImg::sqrt" ref="8c11d16e75e931e9e28d44171e7038d3" args="()" --> 288.2933 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8c11d16e75e931e9e28d44171e7038d3">sqrt</a> ()</td></tr> 288.2934 + 288.2935 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the square root of each pixel value. <br></td></tr> 288.2936 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dd59f6d3b8557b7025bb778505d9028f"></a><!-- doxytag: member="cimg_library::CImg::get_sqrt" ref="dd59f6d3b8557b7025bb778505d9028f" args="() const " --> 288.2937 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_sqrt</b> () const </td></tr> 288.2938 + 288.2939 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="63fc5244a596810f4bba36a46787c6f2"></a><!-- doxytag: member="cimg_library::CImg::exp" ref="63fc5244a596810f4bba36a46787c6f2" args="()" --> 288.2940 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#63fc5244a596810f4bba36a46787c6f2">exp</a> ()</td></tr> 288.2941 + 288.2942 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the exponential of each pixel value. <br></td></tr> 288.2943 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e129c419df5ecb2d37803c41e87b8b27"></a><!-- doxytag: member="cimg_library::CImg::get_exp" ref="e129c419df5ecb2d37803c41e87b8b27" args="() const " --> 288.2944 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_exp</b> () const </td></tr> 288.2945 + 288.2946 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="74c5faaf4a41aa0aa470a164897d6ec6"></a><!-- doxytag: member="cimg_library::CImg::log" ref="74c5faaf4a41aa0aa470a164897d6ec6" args="()" --> 288.2947 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#74c5faaf4a41aa0aa470a164897d6ec6">log</a> ()</td></tr> 288.2948 + 288.2949 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the log of each each pixel value. <br></td></tr> 288.2950 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3d2943c90d7b5faaa71c758a0d153560"></a><!-- doxytag: member="cimg_library::CImg::get_log" ref="3d2943c90d7b5faaa71c758a0d153560" args="() const " --> 288.2951 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_log</b> () const </td></tr> 288.2952 + 288.2953 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="199c3d150c895179a609ee3b172b332e"></a><!-- doxytag: member="cimg_library::CImg::log10" ref="199c3d150c895179a609ee3b172b332e" args="()" --> 288.2954 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#199c3d150c895179a609ee3b172b332e">log10</a> ()</td></tr> 288.2955 + 288.2956 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the log10 of each each pixel value. <br></td></tr> 288.2957 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3ddd3de58ea5fc9185f216e6e8c59010"></a><!-- doxytag: member="cimg_library::CImg::get_log10" ref="3ddd3de58ea5fc9185f216e6e8c59010" args="() const " --> 288.2958 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_log10</b> () const </td></tr> 288.2959 + 288.2960 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2f27aee992cf2189c56fdbaaf72ef76"></a><!-- doxytag: member="cimg_library::CImg::pow" ref="e2f27aee992cf2189c56fdbaaf72ef76" args="(const double p)" --> 288.2961 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e2f27aee992cf2189c56fdbaaf72ef76">pow</a> (const double p)</td></tr> 288.2962 + 288.2963 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the power by p of each pixel value. <br></td></tr> 288.2964 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dd8d4f2be601a42c61217a6d0bf7576b"></a><!-- doxytag: member="cimg_library::CImg::get_pow" ref="dd8d4f2be601a42c61217a6d0bf7576b" args="(const double p) const " --> 288.2965 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_pow</b> (const double p) const </td></tr> 288.2966 + 288.2967 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f80272ba663ef935914c34d24171abb8"></a><!-- doxytag: member="cimg_library::CImg::pow" ref="f80272ba663ef935914c34d24171abb8" args="(const CImg< t > &img)" --> 288.2968 +template<typename t > </td></tr> 288.2969 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f80272ba663ef935914c34d24171abb8">pow</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 288.2970 + 288.2971 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the power of each pixel value. <br></td></tr> 288.2972 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6fd928c435c48e5d9ee019aa7e1ba37f"></a><!-- doxytag: member="cimg_library::CImg::get_pow" ref="6fd928c435c48e5d9ee019aa7e1ba37f" args="(const CImg< t > &img) const " --> 288.2973 +template<typename t > </td></tr> 288.2974 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memTemplItemRight" valign="bottom"><b>get_pow</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img) const </td></tr> 288.2975 + 288.2976 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9ae2e5f7990e1ec59876b1c1f8484ea0"></a><!-- doxytag: member="cimg_library::CImg::abs" ref="9ae2e5f7990e1ec59876b1c1f8484ea0" args="()" --> 288.2977 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9ae2e5f7990e1ec59876b1c1f8484ea0">abs</a> ()</td></tr> 288.2978 + 288.2979 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the absolute value of each pixel value. <br></td></tr> 288.2980 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="42309833a3b65cbef9bd1f7e97de4ab0"></a><!-- doxytag: member="cimg_library::CImg::get_abs" ref="42309833a3b65cbef9bd1f7e97de4ab0" args="() const " --> 288.2981 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_abs</b> () const </td></tr> 288.2982 + 288.2983 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd20e16deff4c21aab145b028de1e2ac"></a><!-- doxytag: member="cimg_library::CImg::cos" ref="fd20e16deff4c21aab145b028de1e2ac" args="()" --> 288.2984 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fd20e16deff4c21aab145b028de1e2ac">cos</a> ()</td></tr> 288.2985 + 288.2986 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the cosinus of each pixel value. <br></td></tr> 288.2987 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b42d865499ba41609ea43d53a062cd2f"></a><!-- doxytag: member="cimg_library::CImg::get_cos" ref="b42d865499ba41609ea43d53a062cd2f" args="() const " --> 288.2988 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_cos</b> () const </td></tr> 288.2989 + 288.2990 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cc4f6c8febaeecd694d43645c527888c"></a><!-- doxytag: member="cimg_library::CImg::sin" ref="cc4f6c8febaeecd694d43645c527888c" args="()" --> 288.2991 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cc4f6c8febaeecd694d43645c527888c">sin</a> ()</td></tr> 288.2992 + 288.2993 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the sinus of each pixel value. <br></td></tr> 288.2994 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c5c1b92e02d4286b19fd6ea054ba0e8"></a><!-- doxytag: member="cimg_library::CImg::get_sin" ref="7c5c1b92e02d4286b19fd6ea054ba0e8" args="() const " --> 288.2995 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_sin</b> () const </td></tr> 288.2996 + 288.2997 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8bd7410cfef580410cfb9d6702a56149"></a><!-- doxytag: member="cimg_library::CImg::tan" ref="8bd7410cfef580410cfb9d6702a56149" args="()" --> 288.2998 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8bd7410cfef580410cfb9d6702a56149">tan</a> ()</td></tr> 288.2999 + 288.3000 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the tangent of each pixel. <br></td></tr> 288.3001 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="26a45d43dc184a55aaa3ee2978fc1f7f"></a><!-- doxytag: member="cimg_library::CImg::get_tan" ref="26a45d43dc184a55aaa3ee2978fc1f7f" args="() const " --> 288.3002 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_tan</b> () const </td></tr> 288.3003 + 288.3004 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec748ded5bb19d52f564ef7a6ae2652d"></a><!-- doxytag: member="cimg_library::CImg::acos" ref="ec748ded5bb19d52f564ef7a6ae2652d" args="()" --> 288.3005 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ec748ded5bb19d52f564ef7a6ae2652d">acos</a> ()</td></tr> 288.3006 + 288.3007 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the arc-cosine of each pixel value. <br></td></tr> 288.3008 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80972e1b6fd55bf970cbb07d56c39335"></a><!-- doxytag: member="cimg_library::CImg::get_acos" ref="80972e1b6fd55bf970cbb07d56c39335" args="() const " --> 288.3009 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_acos</b> () const </td></tr> 288.3010 + 288.3011 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c23ecd49999eedf62c9142fe1559bdd6"></a><!-- doxytag: member="cimg_library::CImg::asin" ref="c23ecd49999eedf62c9142fe1559bdd6" args="()" --> 288.3012 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c23ecd49999eedf62c9142fe1559bdd6">asin</a> ()</td></tr> 288.3013 + 288.3014 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the arc-sinus of each pixel value. <br></td></tr> 288.3015 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ff91920cd29bdfe6c8a04c9fb9a5f45"></a><!-- doxytag: member="cimg_library::CImg::get_asin" ref="4ff91920cd29bdfe6c8a04c9fb9a5f45" args="() const " --> 288.3016 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_asin</b> () const </td></tr> 288.3017 + 288.3018 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1de850b33bf304ba192bd84b7197426d"></a><!-- doxytag: member="cimg_library::CImg::atan" ref="1de850b33bf304ba192bd84b7197426d" args="()" --> 288.3019 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1de850b33bf304ba192bd84b7197426d">atan</a> ()</td></tr> 288.3020 + 288.3021 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the arc-tangent of each pixel. <br></td></tr> 288.3022 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e34fafc7bd6868ac7dcfbe2d8e9bf3b4"></a><!-- doxytag: member="cimg_library::CImg::get_atan" ref="e34fafc7bd6868ac7dcfbe2d8e9bf3b4" args="() const " --> 288.3023 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_atan</b> () const </td></tr> 288.3024 + 288.3025 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3619f9d2043ebaa67d21eb373ab4d22e">round</a> (const float x, const int rounding_type=0)</td></tr> 288.3026 + 288.3027 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute image with rounded pixel values. <a href="#3619f9d2043ebaa67d21eb373ab4d22e"></a><br></td></tr> 288.3028 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cef0556272f540ce0dc656b34bad4826"></a><!-- doxytag: member="cimg_library::CImg::get_round" ref="cef0556272f540ce0dc656b34bad4826" args="(const float x, const unsigned int rounding_type=0) const " --> 288.3029 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_round</b> (const float x, const unsigned int rounding_type=0) const </td></tr> 288.3030 + 288.3031 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bc7e3023df86263a49a224317c819779"></a><!-- doxytag: member="cimg_library::CImg::rand" ref="bc7e3023df86263a49a224317c819779" args="(const T val_min, const T val_max)" --> 288.3032 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bc7e3023df86263a49a224317c819779">rand</a> (const T val_min, const T val_max)</td></tr> 288.3033 + 288.3034 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill the instance image with random values between specified range. <br></td></tr> 288.3035 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a495c3b165a377b91f0da3483d19177f"></a><!-- doxytag: member="cimg_library::CImg::get_rand" ref="a495c3b165a377b91f0da3483d19177f" args="(const T val_min, const T val_max) const " --> 288.3036 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_rand</b> (const T val_min, const T val_max) const </td></tr> 288.3037 + 288.3038 +<tr><td colspan="2"><div class="groupHeader">Drawing</div></td></tr> 288.3039 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e5549d31447aa0b42b8e3670e78d1536"></a><!-- doxytag: member="cimg_library::CImg::_draw_scanline" ref="e5549d31447aa0b42b8e3670e78d1536" args="(const int x0, const int x1, const int y, const tc *const color, const float opacity=1, const float brightness=1, const bool init=false)" --> 288.3040 +template<typename tc > </td></tr> 288.3041 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_scanline</b> (const int x0, const int x1, const int y, const tc *const color, const float opacity=1, const float brightness=1, const bool init=false)</td></tr> 288.3042 + 288.3043 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cb061f55d4c6e79bc7cfad703575b2e0"></a><!-- doxytag: member="cimg_library::CImg::_draw_scanline" ref="cb061f55d4c6e79bc7cfad703575b2e0" args="(const tc *const color, const float opacity=1)" --> 288.3044 +template<typename tc > </td></tr> 288.3045 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_scanline</b> (const tc *const color, const float opacity=1)</td></tr> 288.3046 + 288.3047 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3048 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#07751cdf418fc2120b971bc0f7e0da8c">draw_point</a> (const int x0, const int y0, const tc *const color, const float opacity=1)</td></tr> 288.3049 + 288.3050 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored point (pixel). <a href="#07751cdf418fc2120b971bc0f7e0da8c"></a><br></td></tr> 288.3051 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bdc5b08ed8a3bec659e84d54fb041c78"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="bdc5b08ed8a3bec659e84d54fb041c78" args="(const int x0, const int y0, const CImg< tc > &color, const float opacity=1)" --> 288.3052 +template<typename tc > </td></tr> 288.3053 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bdc5b08ed8a3bec659e84d54fb041c78">draw_point</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3054 + 288.3055 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored point (pixel). <br></td></tr> 288.3056 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a852838a5f54966b700093f45d60330f"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="a852838a5f54966b700093f45d60330f" args="(const int x0, const int y0, const int z0, const tc *const color, const float opacity=1)" --> 288.3057 +template<typename tc > </td></tr> 288.3058 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a852838a5f54966b700093f45d60330f">draw_point</a> (const int x0, const int y0, const int z0, const tc *const color, const float opacity=1)</td></tr> 288.3059 + 288.3060 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D colored point (voxel). <br></td></tr> 288.3061 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f2aa779e22226993667e065c53783e97"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="f2aa779e22226993667e065c53783e97" args="(const int x0, const int y0, const int z0, const CImg< tc > &color, const float opacity=1)" --> 288.3062 +template<typename tc > </td></tr> 288.3063 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f2aa779e22226993667e065c53783e97">draw_point</a> (const int x0, const int y0, const int z0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3064 + 288.3065 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D colored point (voxel). <br></td></tr> 288.3066 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3c09e57ecd0a7dab60f6e3cf2620930d"></a><!-- doxytag: member="cimg_library::CImg::_draw_point" ref="3c09e57ecd0a7dab60f6e3cf2620930d" args="(const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity)" --> 288.3067 +template<typename t , typename tc > </td></tr> 288.3068 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_point</b> (const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity)</td></tr> 288.3069 + 288.3070 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3071 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d2f49716a6d07d5521f3c81bd411284c">draw_point</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const tc *const color, const float opacity=1)</td></tr> 288.3072 + 288.3073 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cloud of colored points. <a href="#d2f49716a6d07d5521f3c81bd411284c"></a><br></td></tr> 288.3074 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a4ed5eb040a7dec8932cef5e9d90579e"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="a4ed5eb040a7dec8932cef5e9d90579e" args="(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1)" --> 288.3075 +template<typename t , typename tc > </td></tr> 288.3076 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a4ed5eb040a7dec8932cef5e9d90579e">draw_point</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3077 + 288.3078 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cloud of colored points. <br></td></tr> 288.3079 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3080 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#52c224fa79b1d5ab1c1e8d619c8944b3">draw_point</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const tc *const color, const float opacity=1)</td></tr> 288.3081 + 288.3082 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cloud of colored points. <a href="#52c224fa79b1d5ab1c1e8d619c8944b3"></a><br></td></tr> 288.3083 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2c9edd992d1019c23cd9580040bf8a75"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="2c9edd992d1019c23cd9580040bf8a75" args="(const CImg< t > &points, const CImg< tc > &color, const float opacity=1)" --> 288.3084 +template<typename t , typename tc > </td></tr> 288.3085 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2c9edd992d1019c23cd9580040bf8a75">draw_point</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3086 + 288.3087 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cloud of colored points. <br></td></tr> 288.3088 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3089 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#88ccbeac12af8b83cd17f9b72bbfe73b">draw_line</a> (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3090 + 288.3091 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored line. <a href="#88ccbeac12af8b83cd17f9b72bbfe73b"></a><br></td></tr> 288.3092 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3dfef1459d307d841e1924af205d25fe"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="3dfef1459d307d841e1924af205d25fe" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3093 +template<typename tc > </td></tr> 288.3094 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3dfef1459d307d841e1924af205d25fe">draw_line</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3095 + 288.3096 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored line. <br></td></tr> 288.3097 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2674d799e0d1c36b3b39c5d20a128987"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="2674d799e0d1c36b3b39c5d20a128987" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3098 +template<typename tc > </td></tr> 288.3099 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2674d799e0d1c36b3b39c5d20a128987">draw_line</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3100 + 288.3101 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored line, with z-buffering. <br></td></tr> 288.3102 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e344fb5fa8ae5589f48bf7eb189a2686"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="e344fb5fa8ae5589f48bf7eb189a2686" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3103 +template<typename tc > </td></tr> 288.3104 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e344fb5fa8ae5589f48bf7eb189a2686">draw_line</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3105 + 288.3106 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D colored line, with z-buffering. <br></td></tr> 288.3107 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="676f12df45eea349a5423abd587d2698"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="676f12df45eea349a5423abd587d2698" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3108 +template<typename tc > </td></tr> 288.3109 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#676f12df45eea349a5423abd587d2698">draw_line</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3110 + 288.3111 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D colored line. <br></td></tr> 288.3112 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0b7d2f14ccea6db91516a7f890f7ab8e"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="0b7d2f14ccea6db91516a7f890f7ab8e" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3113 +template<typename tc > </td></tr> 288.3114 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0b7d2f14ccea6db91516a7f890f7ab8e">draw_line</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3115 + 288.3116 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D colored line. <br></td></tr> 288.3117 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3118 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b98fc42096d2a5a075be384b1f37094c">draw_line</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3119 + 288.3120 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured line. <a href="#b98fc42096d2a5a075be384b1f37094c"></a><br></td></tr> 288.3121 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5d92088c6338270d5c9e4aadf02c0228"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="5d92088c6338270d5c9e4aadf02c0228" args="(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3122 +template<typename tc > </td></tr> 288.3123 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5d92088c6338270d5c9e4aadf02c0228">draw_line</a> (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3124 + 288.3125 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured line, with perspective correction. <br></td></tr> 288.3126 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="75103a31192d751b311a6aa69e4a5fb9"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="75103a31192d751b311a6aa69e4a5fb9" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3127 +template<typename tc > </td></tr> 288.3128 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#75103a31192d751b311a6aa69e4a5fb9">draw_line</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3129 + 288.3130 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured line, with z-buffering and perspective correction. <br></td></tr> 288.3131 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a389af461060f4c5d31932a01cdda6b6"></a><!-- doxytag: member="cimg_library::CImg::_draw_line" ref="a389af461060f4c5d31932a01cdda6b6" args="(const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const unsigned int pattern, const bool init_hatch)" --> 288.3132 +template<typename t , typename tc > </td></tr> 288.3133 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_line</b> (const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const unsigned int pattern, const bool init_hatch)</td></tr> 288.3134 + 288.3135 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3136 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#91e810ebf4b600b461bbfe42708f3cd6">draw_line</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3137 + 288.3138 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <a href="#91e810ebf4b600b461bbfe42708f3cd6"></a><br></td></tr> 288.3139 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="94d3acfe105994944faf1b8e7e7b34fa"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="94d3acfe105994944faf1b8e7e7b34fa" args="(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3140 +template<typename t , typename tc > </td></tr> 288.3141 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#94d3acfe105994944faf1b8e7e7b34fa">draw_line</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3142 + 288.3143 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <br></td></tr> 288.3144 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3145 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f42f741d0f579a78f9f58d0d6499bc53">draw_line</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3146 + 288.3147 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <a href="#f42f741d0f579a78f9f58d0d6499bc53"></a><br></td></tr> 288.3148 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f1a1144e6b4553d410b1e61e6c746641"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="f1a1144e6b4553d410b1e61e6c746641" args="(const CImg< t > &points, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3149 +template<typename t , typename tc > </td></tr> 288.3150 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f1a1144e6b4553d410b1e61e6c746641">draw_line</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3151 + 288.3152 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <br></td></tr> 288.3153 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="32e77cb31570ac1f4f85af76d11835c4"></a><!-- doxytag: member="cimg_library::CImg::_draw_polygon" ref="32e77cb31570ac1f4f85af76d11835c4" args="(const t &points, const unsigned int N, const tc *const color, const float opacity)" --> 288.3154 +template<typename t , typename tc > </td></tr> 288.3155 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_polygon</b> (const t &points, const unsigned int N, const tc *const color, const float opacity)</td></tr> 288.3156 + 288.3157 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="50811d8b24d4065b088a2629d535b44d"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="50811d8b24d4065b088a2629d535b44d" args="(const CImgList< t > &points, const tc *const color, const float opacity=1)" --> 288.3158 +template<typename t , typename tc > </td></tr> 288.3159 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#50811d8b24d4065b088a2629d535b44d">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const tc *const color, const float opacity=1)</td></tr> 288.3160 + 288.3161 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled polygon in the instance image. <br></td></tr> 288.3162 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="923b11ba707a754f07c5f12d41d24f31"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="923b11ba707a754f07c5f12d41d24f31" args="(const CImgList< t > &points, const CImg< tc > &color, const float opacity=1)" --> 288.3163 +template<typename t , typename tc > </td></tr> 288.3164 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#923b11ba707a754f07c5f12d41d24f31">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3165 + 288.3166 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled polygon in the instance image. <br></td></tr> 288.3167 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6e7c38c9a71a887da0bc3e4f0c4fdd40"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="6e7c38c9a71a887da0bc3e4f0c4fdd40" args="(const CImg< t > &points, const tc *const color, const float opacity=1)" --> 288.3168 +template<typename t , typename tc > </td></tr> 288.3169 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6e7c38c9a71a887da0bc3e4f0c4fdd40">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const tc *const color, const float opacity=1)</td></tr> 288.3170 + 288.3171 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled polygon in the instance image. <br></td></tr> 288.3172 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8353827651e7356f9ed0bbd4f182573d"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="8353827651e7356f9ed0bbd4f182573d" args="(const CImg< t > &points, const CImg< tc > &color, const float opacity=1)" --> 288.3173 +template<typename t , typename tc > </td></tr> 288.3174 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8353827651e7356f9ed0bbd4f182573d">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3175 + 288.3176 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled polygon in the instance image. <br></td></tr> 288.3177 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1f30364d23132ae25f83921c5de9c0e9"></a><!-- doxytag: member="cimg_library::CImg::_draw_polygon" ref="1f30364d23132ae25f83921c5de9c0e9" args="(const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3178 +template<typename t , typename tc > </td></tr> 288.3179 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_polygon</b> (const t &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3180 + 288.3181 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c2d302275fb03846256a2fbcd162c9be"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="c2d302275fb03846256a2fbcd162c9be" args="(const CImgList< t > &points, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3182 +template<typename t , typename tc > </td></tr> 288.3183 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c2d302275fb03846256a2fbcd162c9be">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3184 + 288.3185 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a polygon outline. <br></td></tr> 288.3186 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0256c61a5637568f562e2eb92bff420a"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="0256c61a5637568f562e2eb92bff420a" args="(const CImgList< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3187 +template<typename t , typename tc > </td></tr> 288.3188 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0256c61a5637568f562e2eb92bff420a">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3189 + 288.3190 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a polygon outline. <br></td></tr> 288.3191 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4800e4fe339084fe88380a0aa86e3339"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="4800e4fe339084fe88380a0aa86e3339" args="(const CImg< t > &points, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3192 +template<typename t , typename tc > </td></tr> 288.3193 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4800e4fe339084fe88380a0aa86e3339">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3194 + 288.3195 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a polygon outline. <br></td></tr> 288.3196 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2f854f8ac771ed738b3211f169b71a52"></a><!-- doxytag: member="cimg_library::CImg::draw_polygon" ref="2f854f8ac771ed738b3211f169b71a52" args="(const CImg< t > &points, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3197 +template<typename t , typename tc > </td></tr> 288.3198 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2f854f8ac771ed738b3211f169b71a52">draw_polygon</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3199 + 288.3200 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a polygon outline. <br></td></tr> 288.3201 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3202 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1633f28b9b0646cff390b0e060cce47b">draw_spline</a> (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3203 + 288.3204 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cubic spline curve in the instance image. <a href="#1633f28b9b0646cff390b0e060cce47b"></a><br></td></tr> 288.3205 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="902e2ced32ddbe6918ec94962419dbe2"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="902e2ced32ddbe6918ec94962419dbe2" args="(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3206 +template<typename tc > </td></tr> 288.3207 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#902e2ced32ddbe6918ec94962419dbe2">draw_spline</a> (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3208 + 288.3209 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cubic spline curve in the instance image. <br></td></tr> 288.3210 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3211 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#111ec303273ffc87a1be739275957c92">draw_spline</a> (const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3212 + 288.3213 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cubic spline curve in the instance image (for volumetric images). <a href="#111ec303273ffc87a1be739275957c92"></a><br></td></tr> 288.3214 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6dca7e2c634a87f9abe89b354ed1dc0c"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="6dca7e2c634a87f9abe89b354ed1dc0c" args="(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const CImg< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3215 +template<typename tc > </td></tr> 288.3216 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6dca7e2c634a87f9abe89b354ed1dc0c">draw_spline</a> (const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3217 + 288.3218 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cubic spline curve in the instance image (for volumetric images). <br></td></tr> 288.3219 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.3220 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9a80dade828f83f301f1470a6d0d474d">draw_spline</a> (const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3221 + 288.3222 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a cubic spline curve in the instance image. <a href="#9a80dade828f83f301f1470a6d0d474d"></a><br></td></tr> 288.3223 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d58605399accf4014e3682201e1d3dc5"></a><!-- doxytag: member="cimg_library::CImg::_draw_spline" ref="d58605399accf4014e3682201e1d3dc5" args="(const tp &points, const tt &tangents, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const bool close_set, const float precision, const unsigned int pattern, const bool init_hatch)" --> 288.3224 +template<typename tp , typename tt , typename tc > </td></tr> 288.3225 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_spline</b> (const tp &points, const tt &tangents, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const bool close_set, const float precision, const unsigned int pattern, const bool init_hatch)</td></tr> 288.3226 + 288.3227 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0efba314ef59ada31f6273ee8d6f744e"></a><!-- doxytag: member="cimg_library::CImg::_draw_spline" ref="0efba314ef59ada31f6273ee8d6f744e" args="(const tp &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const bool close_set, const float precision, const unsigned int pattern, const bool init_hatch)" --> 288.3228 +template<typename tp , typename tc > </td></tr> 288.3229 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_spline</b> (const tp &points, const unsigned int W, const unsigned int H, const tc *const color, const float opacity, const bool close_set, const float precision, const unsigned int pattern, const bool init_hatch)</td></tr> 288.3230 + 288.3231 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9b4650fc045f7640b023dfc7d8012bb8"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="9b4650fc045f7640b023dfc7d8012bb8" args="(const CImgList< tp > &points, const CImgList< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3232 +template<typename tp , typename tt , typename tc > </td></tr> 288.3233 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9b4650fc045f7640b023dfc7d8012bb8">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3234 + 288.3235 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3236 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6e2dfc74104f3fd669d898c88264edd2"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="6e2dfc74104f3fd669d898c88264edd2" args="(const CImgList< tp > &points, const CImgList< tt > &tangents, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3237 +template<typename tp , typename tt , typename tc > </td></tr> 288.3238 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6e2dfc74104f3fd669d898c88264edd2">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tt > &tangents, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3239 + 288.3240 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3241 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b6580bbd06443cd05ad8ff63c157a8e9"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="b6580bbd06443cd05ad8ff63c157a8e9" args="(const CImg< tp > &points, const CImg< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3242 +template<typename tp , typename tt , typename tc > </td></tr> 288.3243 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b6580bbd06443cd05ad8ff63c157a8e9">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tt > &tangents, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3244 + 288.3245 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3246 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5dd5581868a21e8c1283d93e8b5c9e11"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="5dd5581868a21e8c1283d93e8b5c9e11" args="(const CImg< tp > &points, const CImg< tt > &tangents, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3247 +template<typename tp , typename tt , typename tc > </td></tr> 288.3248 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5dd5581868a21e8c1283d93e8b5c9e11">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tt > &tangents, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3249 + 288.3250 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3251 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b3e8fbcaff7bb939a201c913b1ab7b29"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="b3e8fbcaff7bb939a201c913b1ab7b29" args="(const CImgList< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3252 +template<typename t , typename tc > </td></tr> 288.3253 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b3e8fbcaff7bb939a201c913b1ab7b29">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3254 + 288.3255 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3256 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ebc37255f4345bd45f99ced17afbea1b"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="ebc37255f4345bd45f99ced17afbea1b" args="(const CImgList< t > &points, CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3257 +template<typename t , typename tc > </td></tr> 288.3258 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ebc37255f4345bd45f99ced17afbea1b">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &points, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3259 + 288.3260 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored splines in the instance image. <br></td></tr> 288.3261 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4958f637ae985f9c2be3b010a909be74"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="4958f637ae985f9c2be3b010a909be74" args="(const CImg< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3262 +template<typename t , typename tc > </td></tr> 288.3263 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4958f637ae985f9c2be3b010a909be74">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const tc *const color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3264 + 288.3265 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <br></td></tr> 288.3266 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ef31953ecc727eaa99d0d1b11c6d14a0"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="ef31953ecc727eaa99d0d1b11c6d14a0" args="(const CImg< t > &points, const CImg< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.3267 +template<typename t , typename tc > </td></tr> 288.3268 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ef31953ecc727eaa99d0d1b11c6d14a0">draw_spline</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &points, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const bool close_set=false, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)</td></tr> 288.3269 + 288.3270 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a set of consecutive colored lines in the instance image. <br></td></tr> 288.3271 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3272 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4955c7a5a132072f634ed9832b783f83">draw_arrow</a> (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)</td></tr> 288.3273 + 288.3274 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a colored arrow in the instance image. <a href="#4955c7a5a132072f634ed9832b783f83"></a><br></td></tr> 288.3275 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="398a8fa3580f9e572b3f6f0b7e0bd41c"></a><!-- doxytag: member="cimg_library::CImg::draw_arrow" ref="398a8fa3580f9e572b3f6f0b7e0bd41c" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)" --> 288.3276 +template<typename tc > </td></tr> 288.3277 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#398a8fa3580f9e572b3f6f0b7e0bd41c">draw_arrow</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)</td></tr> 288.3278 + 288.3279 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a colored arrow in the instance image. <br></td></tr> 288.3280 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.3281 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2262bc9cfece26084c7223bf74ad63d5">draw_image</a> (const int x0, const int y0, const int z0, const int v0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &sprite, const float opacity=1)</td></tr> 288.3282 + 288.3283 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <a href="#2262bc9cfece26084c7223bf74ad63d5"></a><br></td></tr> 288.3284 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c034e961493c11db6fa5398827a42672"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="c034e961493c11db6fa5398827a42672" args="(const int x0, const int y0, const int z0, const int v0, const CImg< T > &sprite, const float opacity=1)" --> 288.3285 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>draw_image</b> (const int x0, const int y0, const int z0, const int v0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &sprite, const float opacity=1)</td></tr> 288.3286 + 288.3287 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b612f62cc2081eb707585af01a041db1"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="b612f62cc2081eb707585af01a041db1" args="(const int x0, const int y0, const int z0, const CImg< t > &sprite, const float opacity=1)" --> 288.3288 +template<typename t > </td></tr> 288.3289 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b612f62cc2081eb707585af01a041db1">draw_image</a> (const int x0, const int y0, const int z0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &sprite, const float opacity=1)</td></tr> 288.3290 + 288.3291 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3292 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4968cf39a15c8e55a089a1c136e331aa"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="4968cf39a15c8e55a089a1c136e331aa" args="(const int x0, const int y0, const CImg< t > &sprite, const float opacity=1)" --> 288.3293 +template<typename t > </td></tr> 288.3294 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4968cf39a15c8e55a089a1c136e331aa">draw_image</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &sprite, const float opacity=1)</td></tr> 288.3295 + 288.3296 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3297 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e6fa4bcf0793823ae70d4e67be2d26a3"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="e6fa4bcf0793823ae70d4e67be2d26a3" args="(const int x0, const CImg< t > &sprite, const float opacity=1)" --> 288.3298 +template<typename t > </td></tr> 288.3299 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e6fa4bcf0793823ae70d4e67be2d26a3">draw_image</a> (const int x0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &sprite, const float opacity=1)</td></tr> 288.3300 + 288.3301 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3302 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d847e4b64a114e26dd34cea062b8c6a7"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="d847e4b64a114e26dd34cea062b8c6a7" args="(const CImg< t > &sprite, const float opacity=1)" --> 288.3303 +template<typename t > </td></tr> 288.3304 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d847e4b64a114e26dd34cea062b8c6a7">draw_image</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &sprite, const float opacity=1)</td></tr> 288.3305 + 288.3306 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3307 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename ti , typename tm > </td></tr> 288.3308 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#140588221208998117e0681720183517">draw_image</a> (const int x0, const int y0, const int z0, const int v0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &sprite, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float opacity=1, const float mask_valmax=1)</td></tr> 288.3309 + 288.3310 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a sprite image in the instance image (masked version). <a href="#140588221208998117e0681720183517"></a><br></td></tr> 288.3311 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6bc3dd141f888d66aafbacbd6c2b57cb"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="6bc3dd141f888d66aafbacbd6c2b57cb" args="(const int x0, const int y0, const int z0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)" --> 288.3312 +template<typename ti , typename tm > </td></tr> 288.3313 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6bc3dd141f888d66aafbacbd6c2b57cb">draw_image</a> (const int x0, const int y0, const int z0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &sprite, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float opacity=1, const float mask_valmax=1)</td></tr> 288.3314 + 288.3315 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3316 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="77017d588585db4fb4149a0ddd09538b"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="77017d588585db4fb4149a0ddd09538b" args="(const int x0, const int y0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)" --> 288.3317 +template<typename ti , typename tm > </td></tr> 288.3318 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#77017d588585db4fb4149a0ddd09538b">draw_image</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &sprite, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float opacity=1, const float mask_valmax=1)</td></tr> 288.3319 + 288.3320 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3321 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8e324ba8d4367bdcacebc33817fd8e22"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="8e324ba8d4367bdcacebc33817fd8e22" args="(const int x0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)" --> 288.3322 +template<typename ti , typename tm > </td></tr> 288.3323 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8e324ba8d4367bdcacebc33817fd8e22">draw_image</a> (const int x0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &sprite, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float opacity=1, const float mask_valmax=1)</td></tr> 288.3324 + 288.3325 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3326 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bb5c6c380e17aa9fc0628c70eb42908a"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="bb5c6c380e17aa9fc0628c70eb42908a" args="(const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)" --> 288.3327 +template<typename ti , typename tm > </td></tr> 288.3328 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bb5c6c380e17aa9fc0628c70eb42908a">draw_image</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > &sprite, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float opacity=1, const float mask_valmax=1)</td></tr> 288.3329 + 288.3330 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an image. <br></td></tr> 288.3331 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3a0aacdf713ed19c5efc4a929f73d597">draw_rectangle</a> (const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const T val, const float opacity=1)</td></tr> 288.3332 + 288.3333 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 4D filled rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>,<code>z0</code>,<code>v0</code>)-(<code>x1</code>,<code>y1</code>,<code>z1</code>,<code>v1</code>). <a href="#3a0aacdf713ed19c5efc4a929f73d597"></a><br></td></tr> 288.3334 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3335 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#99614589c3d114e81db5eb6efc322e0c">draw_rectangle</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1)</td></tr> 288.3336 + 288.3337 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>,<code>z0</code>)-(<code>x1</code>,<code>y1</code>,<code>z1</code>). <a href="#99614589c3d114e81db5eb6efc322e0c"></a><br></td></tr> 288.3338 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bf37867db8052ced5731873badb3ccc2"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="bf37867db8052ced5731873badb3ccc2" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity=1)" --> 288.3339 +template<typename tc > </td></tr> 288.3340 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bf37867db8052ced5731873badb3ccc2">draw_rectangle</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3341 + 288.3342 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>,<code>z0</code>)-(<code>x1</code>,<code>y1</code>,<code>z1</code>). <br></td></tr> 288.3343 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1bf777ba2034fce1fe6a77fef5c236df"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="1bf777ba2034fce1fe6a77fef5c236df" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3344 +template<typename tc > </td></tr> 288.3345 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1bf777ba2034fce1fe6a77fef5c236df">draw_rectangle</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3346 + 288.3347 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D outlined colored rectangle in the instance image. <br></td></tr> 288.3348 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1b9ce64ba72d43495206d3e16b1f82f8"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="1b9ce64ba72d43495206d3e16b1f82f8" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3349 +template<typename tc > </td></tr> 288.3350 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1b9ce64ba72d43495206d3e16b1f82f8">draw_rectangle</a> (const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3351 + 288.3352 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D outlined colored rectangle in the instance image. <br></td></tr> 288.3353 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3354 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#08ff5543ae717bdbc4ccda3ca9d463ee">draw_rectangle</a> (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1)</td></tr> 288.3355 + 288.3356 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>)-(<code>x1</code>,<code>y1</code>). <a href="#08ff5543ae717bdbc4ccda3ca9d463ee"></a><br></td></tr> 288.3357 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d864a53158dc062ac6ab53524a0f9737"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="d864a53158dc062ac6ab53524a0f9737" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity=1)" --> 288.3358 +template<typename tc > </td></tr> 288.3359 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d864a53158dc062ac6ab53524a0f9737">draw_rectangle</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3360 + 288.3361 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>)-(<code>x1</code>,<code>y1</code>). <br></td></tr> 288.3362 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="88b4db9fc3ebcc8bd5134042424f3b8b"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="88b4db9fc3ebcc8bd5134042424f3b8b" args="(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3363 +template<typename tc > </td></tr> 288.3364 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#88b4db9fc3ebcc8bd5134042424f3b8b">draw_rectangle</a> (const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3365 + 288.3366 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D outlined colored rectangle. <br></td></tr> 288.3367 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c832c78b8c8df3af06008ab4193effd7"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="c832c78b8c8df3af06008ab4193effd7" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3368 +template<typename tc > </td></tr> 288.3369 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c832c78b8c8df3af06008ab4193effd7">draw_rectangle</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3370 + 288.3371 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D outlined colored rectangle. <br></td></tr> 288.3372 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e522f9b0568d63da675fae520ab4ea4d"></a><!-- doxytag: member="cimg_library::CImg::_draw_triangle" ref="e522f9b0568d63da675fae520ab4ea4d" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const float brightness)" --> 288.3373 +template<typename tc > </td></tr> 288.3374 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_triangle</b> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const float brightness)</td></tr> 288.3375 + 288.3376 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="405d83987b7969b9942e4446b5924ec9"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="405d83987b7969b9942e4446b5924ec9" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity=1)" --> 288.3377 +template<typename tc > </td></tr> 288.3378 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#405d83987b7969b9942e4446b5924ec9">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity=1)</td></tr> 288.3379 + 288.3380 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored triangle. <br></td></tr> 288.3381 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="910e2dd4476bc5e5279d1143195f03c6"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="910e2dd4476bc5e5279d1143195f03c6" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity=1)" --> 288.3382 +template<typename tc > </td></tr> 288.3383 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#910e2dd4476bc5e5279d1143195f03c6">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3384 + 288.3385 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored triangle. <br></td></tr> 288.3386 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7c3262c3f6bb593b3ae8ae1751f005b9"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="7c3262c3f6bb593b3ae8ae1751f005b9" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3387 +template<typename tc > </td></tr> 288.3388 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7c3262c3f6bb593b3ae8ae1751f005b9">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3389 + 288.3390 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D outlined colored triangle. <br></td></tr> 288.3391 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="42dcf4158f345564b6909f68df93c223"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="42dcf4158f345564b6909f68df93c223" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3392 +template<typename tc > </td></tr> 288.3393 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#42dcf4158f345564b6909f68df93c223">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3394 + 288.3395 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D outlined colored triangle. <br></td></tr> 288.3396 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a33a56303f49e8f0015f58ccc5b862ad"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="a33a56303f49e8f0015f58ccc5b862ad" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float opacity=1, const float brightness=1)" --> 288.3397 +template<typename tc > </td></tr> 288.3398 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a33a56303f49e8f0015f58ccc5b862ad">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float opacity=1, const float brightness=1)</td></tr> 288.3399 + 288.3400 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored triangle, with z-buffering. <br></td></tr> 288.3401 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="43adff9f66e4023ff902ce2ce51a6c1b"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="43adff9f66e4023ff902ce2ce51a6c1b" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const float opacity=1, const float brightness=1)" --> 288.3402 +template<typename tc > </td></tr> 288.3403 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#43adff9f66e4023ff902ce2ce51a6c1b">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float brightness=1)</td></tr> 288.3404 + 288.3405 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled colored triangle, with z-buffering. <br></td></tr> 288.3406 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3407 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6fedec577cb8971fed8d1f3a039d3aac">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3408 + 288.3409 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded colored triangle. <a href="#6fedec577cb8971fed8d1f3a039d3aac"></a><br></td></tr> 288.3410 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e6e48075b5ddd90019c889e97cfb48f5"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="e6e48075b5ddd90019c889e97cfb48f5" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.3411 +template<typename tc > </td></tr> 288.3412 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e6e48075b5ddd90019c889e97cfb48f5">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3413 + 288.3414 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded colored triangle. <br></td></tr> 288.3415 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e8bdb51ba8a62f3f2b7d1f3bf888b5d6"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="e8bdb51ba8a62f3f2b7d1f3bf888b5d6" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.3416 +template<typename tc > </td></tr> 288.3417 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e8bdb51ba8a62f3f2b7d1f3bf888b5d6">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3418 + 288.3419 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded colored triangle, with z-buffering. <br></td></tr> 288.3420 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f2d41fad4a3cff1e52ce92a09a0849fb"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="f2d41fad4a3cff1e52ce92a09a0849fb" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.3421 +template<typename tc > </td></tr> 288.3422 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f2d41fad4a3cff1e52ce92a09a0849fb">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3423 + 288.3424 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a Gouraud triangle with z-buffer consideration. <br></td></tr> 288.3425 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3426 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ed9f231a2586832f9e3edbab43dba19f">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td></tr> 288.3427 + 288.3428 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured triangle. <a href="#ed9f231a2586832f9e3edbab43dba19f"></a><br></td></tr> 288.3429 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cbc11ace0f311f4424ab3f9e87b46d49"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="cbc11ace0f311f4424ab3f9e87b46d49" args="(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)" --> 288.3430 +template<typename tc > </td></tr> 288.3431 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cbc11ace0f311f4424ab3f9e87b46d49">draw_triangle</a> (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td></tr> 288.3432 + 288.3433 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured triangle, with perspective correction. <br></td></tr> 288.3434 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="557d6fe66644b08fc216b66f41dc888c"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="557d6fe66644b08fc216b66f41dc888c" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)" --> 288.3435 +template<typename tc > </td></tr> 288.3436 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#557d6fe66644b08fc216b66f41dc888c">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)</td></tr> 288.3437 + 288.3438 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D textured triangle, with z-buffering and perspective correction. <br></td></tr> 288.3439 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc , typename tl > </td></tr> 288.3440 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cdcbe236d763eb011eebb30b50c1aef7">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3441 + 288.3442 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded triangle. <a href="#cdcbe236d763eb011eebb30b50c1aef7"></a><br></td></tr> 288.3443 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f8e9aafc4e909a0c974f322b5dac8297"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="f8e9aafc4e909a0c974f322b5dac8297" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.3444 +template<typename tc , typename tl > </td></tr> 288.3445 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f8e9aafc4e909a0c974f322b5dac8297">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3446 + 288.3447 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded triangle. <br></td></tr> 288.3448 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9d697aed59a348fe49e0d5f24d462261"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="9d697aed59a348fe49e0d5f24d462261" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.3449 +template<typename tc , typename tl > </td></tr> 288.3450 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9d697aed59a348fe49e0d5f24d462261">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const tc *const color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3451 + 288.3452 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded triangle, with z-buffering. <br></td></tr> 288.3453 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f62798d8662be7caed865ea2cc9b86af"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="f62798d8662be7caed865ea2cc9b86af" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.3454 +template<typename tc , typename tl > </td></tr> 288.3455 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f62798d8662be7caed865ea2cc9b86af">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3456 + 288.3457 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded triangle, with z-buffering. <br></td></tr> 288.3458 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3459 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#961363e2672c2ae77788dbe27f1eeb96">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3460 + 288.3461 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded textured triangle. <a href="#961363e2672c2ae77788dbe27f1eeb96"></a><br></td></tr> 288.3462 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b8a009041dd95645d02ecc3561d5553f"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="b8a009041dd95645d02ecc3561d5553f" args="(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.3463 +template<typename tc > </td></tr> 288.3464 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b8a009041dd95645d02ecc3561d5553f">draw_triangle</a> (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3465 + 288.3466 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded textured triangle, with perspective correction. <br></td></tr> 288.3467 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7f1e1abea764819de6130650cafa47fe"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="7f1e1abea764819de6130650cafa47fe" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.3468 +template<typename tc > </td></tr> 288.3469 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7f1e1abea764819de6130650cafa47fe">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)</td></tr> 288.3470 + 288.3471 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Gouraud-shaded textured triangle, with z-buffering and perspective correction. <br></td></tr> 288.3472 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc , typename tl > </td></tr> 288.3473 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#261696a882cafea6ec41e43f90ad7d26">draw_triangle</a> (const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3474 + 288.3475 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded textured triangle. <a href="#261696a882cafea6ec41e43f90ad7d26"></a><br></td></tr> 288.3476 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="feb86cbec72b30c58246379a6a94c295"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="feb86cbec72b30c58246379a6a94c295" args="(const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.3477 +template<typename tc , typename tl > </td></tr> 288.3478 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#feb86cbec72b30c58246379a6a94c295">draw_triangle</a> (const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3479 + 288.3480 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded textured triangle, with perspective correction. <br></td></tr> 288.3481 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d1caaaa197d77925f7d1f5c44f82ec7c"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="d1caaaa197d77925f7d1f5c44f82ec7c" args="(float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.3482 +template<typename tc , typename tl > </td></tr> 288.3483 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d1caaaa197d77925f7d1f5c44f82ec7c">draw_triangle</a> (float *const zbuffer, const int x0, const int y0, const float z0, const int x1, const int y1, const float z1, const int x2, const int y2, const float z2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)</td></tr> 288.3484 + 288.3485 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D Pseudo-Phong-shaded textured triangle, with z-buffering and perspective correction. <br></td></tr> 288.3486 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c15d81ab233481b1664babfcf2402404"></a><!-- doxytag: member="cimg_library::CImg::_draw_ellipse" ref="c15d81ab233481b1664babfcf2402404" args="(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.3487 +template<typename tc > </td></tr> 288.3488 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_ellipse</b> (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3489 + 288.3490 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3491 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e0c072c592797cc4d7a3e2918963f65d">draw_ellipse</a> (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)</td></tr> 288.3492 + 288.3493 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled ellipse. <a href="#e0c072c592797cc4d7a3e2918963f65d"></a><br></td></tr> 288.3494 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fef212ef9007ba87665799b002455600"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="fef212ef9007ba87665799b002455600" args="(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity=1)" --> 288.3495 +template<typename tc > </td></tr> 288.3496 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fef212ef9007ba87665799b002455600">draw_ellipse</a> (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3497 + 288.3498 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled ellipse. <br></td></tr> 288.3499 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3500 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aee5c65bcb8d1aa53500dd93b70dc206">draw_ellipse</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const tc *const color, const float opacity=1)</td></tr> 288.3501 + 288.3502 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled ellipse. <a href="#aee5c65bcb8d1aa53500dd93b70dc206"></a><br></td></tr> 288.3503 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bb8f86c28fe3a89cbd3b8234ebf396db"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="bb8f86c28fe3a89cbd3b8234ebf396db" args="(const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)" --> 288.3504 +template<typename t , typename tc > </td></tr> 288.3505 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bb8f86c28fe3a89cbd3b8234ebf396db">draw_ellipse</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3506 + 288.3507 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled ellipse. <br></td></tr> 288.3508 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3509 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d54df0e591142a589847a348fdbfc653">draw_ellipse</a> (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3510 + 288.3511 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined ellipse. <a href="#d54df0e591142a589847a348fdbfc653"></a><br></td></tr> 288.3512 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e3c36e212188fbdfcca6d70de59dc1bd"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="e3c36e212188fbdfcca6d70de59dc1bd" args="(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3513 +template<typename tc > </td></tr> 288.3514 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e3c36e212188fbdfcca6d70de59dc1bd">draw_ellipse</a> (const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3515 + 288.3516 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined ellipse. <br></td></tr> 288.3517 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3518 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#eae8fb88a9ad0af8f0d8090e7c55ff2e">draw_ellipse</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const tc *const color, const float opacity, const unsigned int pattern)</td></tr> 288.3519 + 288.3520 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined ellipse. <a href="#eae8fb88a9ad0af8f0d8090e7c55ff2e"></a><br></td></tr> 288.3521 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="dec0a3bd415b0a843b7f6365a7bf2477"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="dec0a3bd415b0a843b7f6365a7bf2477" args="(const int x0, const int y0, const CImg< t > &tensor, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3522 +template<typename t , typename tc > </td></tr> 288.3523 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dec0a3bd415b0a843b7f6365a7bf2477">draw_ellipse</a> (const int x0, const int y0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3524 + 288.3525 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined ellipse. <br></td></tr> 288.3526 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3527 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0fcdceae39ad1bfa32dabc70ab503455">draw_circle</a> (const int x0, const int y0, int radius, const tc *const color, const float opacity=1)</td></tr> 288.3528 + 288.3529 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled circle. <a href="#0fcdceae39ad1bfa32dabc70ab503455"></a><br></td></tr> 288.3530 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5e9d5d9c2375549424cc4db6c015c5b0"></a><!-- doxytag: member="cimg_library::CImg::draw_circle" ref="5e9d5d9c2375549424cc4db6c015c5b0" args="(const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity=1)" --> 288.3531 +template<typename tc > </td></tr> 288.3532 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5e9d5d9c2375549424cc4db6c015c5b0">draw_circle</a> (const int x0, const int y0, int radius, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3533 + 288.3534 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a filled circle. <br></td></tr> 288.3535 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3536 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bc6077a1255326a211f32716fcc416fc">draw_circle</a> (const int x0, const int y0, int radius, const tc *const color, const float opacity, const unsigned int)</td></tr> 288.3537 + 288.3538 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined circle. <a href="#bc6077a1255326a211f32716fcc416fc"></a><br></td></tr> 288.3539 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="345546ed0a8f17554833d2896dd19c4b"></a><!-- doxytag: member="cimg_library::CImg::draw_circle" ref="345546ed0a8f17554833d2896dd19c4b" args="(const int x0, const int y0, int radius, const CImg< tc > &color, const float opacity, const unsigned int pattern)" --> 288.3540 +template<typename tc > </td></tr> 288.3541 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#345546ed0a8f17554833d2896dd19c4b">draw_circle</a> (const int x0, const int y0, int radius, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const unsigned int pattern)</td></tr> 288.3542 + 288.3543 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an outlined circle. <br></td></tr> 288.3544 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="37d78bde18a3bb0febca9feb4aaefd1b"></a><!-- doxytag: member="cimg_library::CImg::_draw_text" ref="37d78bde18a3bb0febca9feb4aaefd1b" args="(const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity, const CImgList< t > &font)" --> 288.3545 +template<typename tc1 , typename tc2 , typename t > </td></tr> 288.3546 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_text</b> (const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &font)</td></tr> 288.3547 + 288.3548 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc1 , typename tc2 , typename t > </td></tr> 288.3549 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#10f19686ec4d22cf112d7d60a00849eb">draw_text</a> (const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &font,...)</td></tr> 288.3550 + 288.3551 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <a href="#10f19686ec4d22cf112d7d60a00849eb"></a><br></td></tr> 288.3552 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bbc1a17884b7c049aa543d665a02addc"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="bbc1a17884b7c049aa543d665a02addc" args="(const int x0, const int y0, const char *const text, const CImg< tc1 > &foreground_color, const CImg< tc2 > &background_color, const float opacity, const CImgList< t > &font,...)" --> 288.3553 +template<typename tc1 , typename tc2 , typename t > </td></tr> 288.3554 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#bbc1a17884b7c049aa543d665a02addc">draw_text</a> (const int x0, const int y0, const char *const text, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc1 > &foreground_color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc2 > &background_color, const float opacity, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &font,...)</td></tr> 288.3555 + 288.3556 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3557 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ecfa50533fb364efab0c49d21885a032"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="ecfa50533fb364efab0c49d21885a032" args="(const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color, const float opacity, const CImgList< t > &font,...)" --> 288.3558 +template<typename tc , typename t > </td></tr> 288.3559 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ecfa50533fb364efab0c49d21885a032">draw_text</a> (const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color, const float opacity, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &font,...)</td></tr> 288.3560 + 288.3561 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3562 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="65bc41a87d8e70a6e4e3e7c1e3f3b84d"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="65bc41a87d8e70a6e4e3e7c1e3f3b84d" args="(const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity, const CImgList< t > &font,...)" --> 288.3563 +template<typename tc , typename t > </td></tr> 288.3564 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#65bc41a87d8e70a6e4e3e7c1e3f3b84d">draw_text</a> (const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &font,...)</td></tr> 288.3565 + 288.3566 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3567 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc1 , typename tc2 > </td></tr> 288.3568 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8a08ffc222f02da3bae41a9cae11133c">draw_text</a> (const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity=1, const unsigned int font_size=11,...)</td></tr> 288.3569 + 288.3570 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <a href="#8a08ffc222f02da3bae41a9cae11133c"></a><br></td></tr> 288.3571 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3391a4bb472d056e8741fb11d2f849b5"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="3391a4bb472d056e8741fb11d2f849b5" args="(const int x0, const int y0, const char *const text, const CImg< tc1 > &foreground_color, const CImg< tc2 > &background_color, const float opacity=1, const unsigned int font_size=11,...)" --> 288.3572 +template<typename tc1 , typename tc2 > </td></tr> 288.3573 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3391a4bb472d056e8741fb11d2f849b5">draw_text</a> (const int x0, const int y0, const char *const text, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc1 > &foreground_color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc2 > &background_color, const float opacity=1, const unsigned int font_size=11,...)</td></tr> 288.3574 + 288.3575 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3576 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="18663a5f20b11d8599a628d02eb7f01e"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="18663a5f20b11d8599a628d02eb7f01e" args="(const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color=0, const float opacity=1, const unsigned int font_size=11,...)" --> 288.3577 +template<typename tc > </td></tr> 288.3578 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#18663a5f20b11d8599a628d02eb7f01e">draw_text</a> (const int x0, const int y0, const char *const text, const tc *const foreground_color, const int background_color=0, const float opacity=1, const unsigned int font_size=11,...)</td></tr> 288.3579 + 288.3580 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3581 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fadf8a78a779782d878025d73ff0a310"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="fadf8a78a779782d878025d73ff0a310" args="(const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity=1, const unsigned int font_size=11,...)" --> 288.3582 +template<typename tc > </td></tr> 288.3583 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fadf8a78a779782d878025d73ff0a310">draw_text</a> (const int x0, const int y0, const char *const text, const int foreground_color, const tc *const background_color, const float opacity=1, const unsigned int font_size=11,...)</td></tr> 288.3584 + 288.3585 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a text. <br></td></tr> 288.3586 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t1 , typename t2 > </td></tr> 288.3587 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fa63fe980a96a02650684e9a21a4075b">draw_quiver</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &flow, const t2 *const color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)</td></tr> 288.3588 + 288.3589 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a vector field in the instance image, using a colormap. <a href="#fa63fe980a96a02650684e9a21a4075b"></a><br></td></tr> 288.3590 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t1 , typename t2 > </td></tr> 288.3591 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cf68676d4536ff46ed896648ff08c904">draw_quiver</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &flow, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)</td></tr> 288.3592 + 288.3593 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a vector field in the instance image, using a colormap. <a href="#cf68676d4536ff46ed896648ff08c904"></a><br></td></tr> 288.3594 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3595 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#67e7caaf13995641acfcd5749c39bbc7">draw_graph</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &<a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a>, const tc *const color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)</td></tr> 288.3596 + 288.3597 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 1D graph on the instance image. <a href="#67e7caaf13995641acfcd5749c39bbc7"></a><br></td></tr> 288.3598 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3162e7c504181aa99413fc8e3e39b720"></a><!-- doxytag: member="cimg_library::CImg::draw_graph" ref="3162e7c504181aa99413fc8e3e39b720" args="(const CImg< t > &data, const CImg< tc > &color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)" --> 288.3599 +template<typename t , typename tc > </td></tr> 288.3600 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#3162e7c504181aa99413fc8e3e39b720">draw_graph</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &<a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a>, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)</td></tr> 288.3601 + 288.3602 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 1D graph on the instance image. <br></td></tr> 288.3603 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3604 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#08296af30d35f7d21b5609a674b9b49c">draw_axis</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &xvalues, const int y, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)</td></tr> 288.3605 + 288.3606 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal axis on the instance image. <a href="#08296af30d35f7d21b5609a674b9b49c"></a><br></td></tr> 288.3607 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cdc3d2e7c9f2e2a697f5dc386eb9d81e"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="cdc3d2e7c9f2e2a697f5dc386eb9d81e" args="(const CImg< t > &xvalues, const int y, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U)" --> 288.3608 +template<typename t , typename tc > </td></tr> 288.3609 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cdc3d2e7c9f2e2a697f5dc386eb9d81e">draw_axis</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &xvalues, const int y, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U)</td></tr> 288.3610 + 288.3611 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal axis on the instance image. <br></td></tr> 288.3612 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8bfff0993bc0ed0aa6a20cb9f8c63c28"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="8bfff0993bc0ed0aa6a20cb9f8c63c28" args="(const int x, const CImg< t > &yvalues, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)" --> 288.3613 +template<typename t , typename tc > </td></tr> 288.3614 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8bfff0993bc0ed0aa6a20cb9f8c63c28">draw_axis</a> (const int x, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &yvalues, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)</td></tr> 288.3615 + 288.3616 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled vertical axis on the instance image. <br></td></tr> 288.3617 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f5ea60a7b91f2132156d619ae063b77f"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="f5ea60a7b91f2132156d619ae063b77f" args="(const int x, const CImg< t > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int pattern=~0U)" --> 288.3618 +template<typename t , typename tc > </td></tr> 288.3619 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f5ea60a7b91f2132156d619ae063b77f">draw_axis</a> (const int x, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &yvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int pattern=~0U)</td></tr> 288.3620 + 288.3621 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled vertical axis on the instance image. <br></td></tr> 288.3622 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f75a727d2d5a31326c5013565080c2c0"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="f75a727d2d5a31326c5013565080c2c0" args="(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3623 +template<typename tx , typename ty , typename tc > </td></tr> 288.3624 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f75a727d2d5a31326c5013565080c2c0">draw_axis</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tx > &xvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3625 + 288.3626 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal+vertical axis on the instance image. <br></td></tr> 288.3627 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f05e0299a5b9116f03d9909f06b41971"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="f05e0299a5b9116f03d9909f06b41971" args="(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3628 +template<typename tx , typename ty , typename tc > </td></tr> 288.3629 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f05e0299a5b9116f03d9909f06b41971">draw_axis</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tx > &xvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ty > &yvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3630 + 288.3631 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal+vertical axis on the instance image. <br></td></tr> 288.3632 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cdf77ec979a3457e73707aebcb355232"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="cdf77ec979a3457e73707aebcb355232" args="(const float x0, const float x1, const float y0, const float y1, const tc *const color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3633 +template<typename tc > </td></tr> 288.3634 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cdf77ec979a3457e73707aebcb355232">draw_axis</a> (const float x0, const float x1, const float y0, const float y1, const tc *const color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3635 + 288.3636 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal+vertical axis on the instance image. <br></td></tr> 288.3637 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="046d5076a8722a542ea3f74ee1628ce6"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="046d5076a8722a542ea3f74ee1628ce6" args="(const float x0, const float x1, const float y0, const float y1, const CImg< tc > &color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3638 +template<typename tc > </td></tr> 288.3639 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#046d5076a8722a542ea3f74ee1628ce6">draw_axis</a> (const float x0, const float x1, const float y0, const float y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const int subdivisionx=-60, const int subdivisiony=-60, const float precisionx=0, const float precisiony=0, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3640 + 288.3641 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a labeled horizontal+vertical axis on the instance image. <br></td></tr> 288.3642 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6877e63794ccd3e9f8c27cd297ce7521"></a><!-- doxytag: member="cimg_library::CImg::draw_grid" ref="6877e63794ccd3e9f8c27cd297ce7521" args="(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3643 +template<typename tx , typename ty , typename tc > </td></tr> 288.3644 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6877e63794ccd3e9f8c27cd297ce7521">draw_grid</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tx > &xvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ty > &yvalues, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3645 + 288.3646 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw grid. <br></td></tr> 288.3647 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4f1fe7a9d343d53a390d3f794d7e3b8a"></a><!-- doxytag: member="cimg_library::CImg::draw_grid" ref="4f1fe7a9d343d53a390d3f794d7e3b8a" args="(const CImg< tx > &xvalues, const CImg< ty > &yvalues, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3648 +template<typename tx , typename ty , typename tc > </td></tr> 288.3649 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4f1fe7a9d343d53a390d3f794d7e3b8a">draw_grid</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tx > &xvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ty > &yvalues, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3650 + 288.3651 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw grid. <br></td></tr> 288.3652 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="606cde6d7312d1cc49e6b15524e44c6c"></a><!-- doxytag: member="cimg_library::CImg::draw_grid" ref="606cde6d7312d1cc49e6b15524e44c6c" args="(const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3653 +template<typename tc > </td></tr> 288.3654 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#606cde6d7312d1cc49e6b15524e44c6c">draw_grid</a> (const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const tc *const color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3655 + 288.3656 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw grid. <br></td></tr> 288.3657 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f797b2633a89b277544fe1508bd72bfc"></a><!-- doxytag: member="cimg_library::CImg::draw_grid" ref="f797b2633a89b277544fe1508bd72bfc" args="(const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const CImg< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)" --> 288.3658 +template<typename tc > </td></tr> 288.3659 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f797b2633a89b277544fe1508bd72bfc">draw_grid</a> (const float deltax, const float deltay, const float offsetx, const float offsety, const bool invertx, const bool inverty, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const unsigned int patternx=~0U, const unsigned int patterny=~0U)</td></tr> 288.3660 + 288.3661 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw grid. <br></td></tr> 288.3662 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc , typename t > </td></tr> 288.3663 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#02af5e263936e2fc27aeaa3771cb31d4">draw_fill</a> (const int x, const int y, const int z, const tc *const color, const float opacity, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &region, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3664 + 288.3665 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. <a href="#02af5e263936e2fc27aeaa3771cb31d4"></a><br></td></tr> 288.3666 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="aa61d0211b294c1d89faabd2ad1c0a95"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="aa61d0211b294c1d89faabd2ad1c0a95" args="(const int x, const int y, const int z, const CImg< tc > &color, const float opacity, CImg< t > &region, const float sigma=0, const bool high_connexity=false)" --> 288.3667 +template<typename tc , typename t > </td></tr> 288.3668 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aa61d0211b294c1d89faabd2ad1c0a95">draw_fill</a> (const int x, const int y, const int z, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &region, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3669 + 288.3670 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. <br></td></tr> 288.3671 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3672 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f162693c97503ffb9789fcb2f8e16104">draw_fill</a> (const int x, const int y, const int z, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3673 + 288.3674 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. <a href="#f162693c97503ffb9789fcb2f8e16104"></a><br></td></tr> 288.3675 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e508814fce1811fefa639d257332973d"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="e508814fce1811fefa639d257332973d" args="(const int x, const int y, const int z, const CImg< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)" --> 288.3676 +template<typename tc > </td></tr> 288.3677 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e508814fce1811fefa639d257332973d">draw_fill</a> (const int x, const int y, const int z, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3678 + 288.3679 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. <br></td></tr> 288.3680 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3681 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5c78c87e946126179b3fd659fd15a90f">draw_fill</a> (const int x, const int y, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3682 + 288.3683 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled region starting from a point (<code>x</code>,<code>y</code>) in the instance image. <a href="#5c78c87e946126179b3fd659fd15a90f"></a><br></td></tr> 288.3684 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="af944facf0ccd44f78f3649e18ad1b5b"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="af944facf0ccd44f78f3649e18ad1b5b" args="(const int x, const int y, const CImg< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)" --> 288.3685 +template<typename tc > </td></tr> 288.3686 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#af944facf0ccd44f78f3649e18ad1b5b">draw_fill</a> (const int x, const int y, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1, const float sigma=0, const bool high_connexity=false)</td></tr> 288.3687 + 288.3688 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 2D filled region starting from a point (<code>x</code>,<code>y</code>) in the instance image. <br></td></tr> 288.3689 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aaf8df45b2e20d132a28cbdffef77c18">draw_plasma</a> (const int x0, const int y0, const int x1, const int y1, const float alpha=1, const float beta=1, const float opacity=1)</td></tr> 288.3690 + 288.3691 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a plasma random texture. <a href="#aaf8df45b2e20d132a28cbdffef77c18"></a><br></td></tr> 288.3692 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d8b2f5c685dbc7389dfb94217f4db8d2">draw_plasma</a> (const float alpha=1, const float beta=1, const float opacity=1)</td></tr> 288.3693 + 288.3694 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a plasma random texture. <a href="#d8b2f5c685dbc7389dfb94217f4db8d2"></a><br></td></tr> 288.3695 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="692c2ecbd8cbe445b30129ebcc0d6d1c"></a><!-- doxytag: member="cimg_library::CImg::draw_mandelbrot" ref="692c2ecbd8cbe445b30129ebcc0d6d1c" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)" --> 288.3696 +template<typename tc > </td></tr> 288.3697 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#692c2ecbd8cbe445b30129ebcc0d6d1c">draw_mandelbrot</a> (const int x0, const int y0, const int x1, const int y1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)</td></tr> 288.3698 + 288.3699 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a quadratic Mandelbrot or Julia fractal set, computed using the Escape Time Algorithm. <br></td></tr> 288.3700 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="62813c326316d1c26e66300ed8e2abd6"></a><!-- doxytag: member="cimg_library::CImg::draw_mandelbrot" ref="62813c326316d1c26e66300ed8e2abd6" args="(const CImg< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)" --> 288.3701 +template<typename tc > </td></tr> 288.3702 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#62813c326316d1c26e66300ed8e2abd6">draw_mandelbrot</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color_palette, const float opacity=1, const double z0r=-2, const double z0i=-2, const double z1r=2, const double z1i=2, const unsigned int itermax=255, const bool normalized_iteration=false, const bool julia_set=false, const double paramr=0, const double parami=0)</td></tr> 288.3703 + 288.3704 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a quadratic Mandelbrot or Julia fractal set, computed using the Escape Time Algorithm. <br></td></tr> 288.3705 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3706 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c27a8c4da38899f60456ea7d3535915b">draw_gaussian</a> (const float xc, const float sigma, const tc *const color, const float opacity=1)</td></tr> 288.3707 + 288.3708 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 1D gaussian function in the instance image. <a href="#c27a8c4da38899f60456ea7d3535915b"></a><br></td></tr> 288.3709 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4c4ad376ea82a0011dfffe348cb2df22"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="4c4ad376ea82a0011dfffe348cb2df22" args="(const float xc, const float sigma, const CImg< tc > &color, const float opacity=1)" --> 288.3710 +template<typename tc > </td></tr> 288.3711 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4c4ad376ea82a0011dfffe348cb2df22">draw_gaussian</a> (const float xc, const float sigma, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3712 + 288.3713 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 1D gaussian function in the instance image. <br></td></tr> 288.3714 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3715 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#a56c60d556b1a888a4e3c6caee5a7f84">draw_gaussian</a> (const float xc, const float yc, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const tc *const color, const float opacity=1)</td></tr> 288.3716 + 288.3717 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 2D gaussian function. <a href="#a56c60d556b1a888a4e3c6caee5a7f84"></a><br></td></tr> 288.3718 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b1a88da86ed23cf357116c179ef151db"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="b1a88da86ed23cf357116c179ef151db" args="(const float xc, const float yc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)" --> 288.3719 +template<typename t , typename tc > </td></tr> 288.3720 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b1a88da86ed23cf357116c179ef151db">draw_gaussian</a> (const float xc, const float yc, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3721 + 288.3722 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 2D gaussian function. <br></td></tr> 288.3723 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9e7bd32ea10f9743f841668161162cfd"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="9e7bd32ea10f9743f841668161162cfd" args="(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)" --> 288.3724 +template<typename tc > </td></tr> 288.3725 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#9e7bd32ea10f9743f841668161162cfd">draw_gaussian</a> (const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)</td></tr> 288.3726 + 288.3727 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 2D gaussian function. <br></td></tr> 288.3728 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="da2517688892529a14e90bccf3134653"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="da2517688892529a14e90bccf3134653" args="(const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const CImg< tc > &color, const float opacity=1)" --> 288.3729 +template<typename tc > </td></tr> 288.3730 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#da2517688892529a14e90bccf3134653">draw_gaussian</a> (const int xc, const int yc, const float r1, const float r2, const float ru, const float rv, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3731 + 288.3732 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 2D gaussian function. <br></td></tr> 288.3733 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3734 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5176ca43ce93eeaa158f8e3456606752">draw_gaussian</a> (const float xc, const float yc, const float sigma, const tc *const color, const float opacity=1)</td></tr> 288.3735 + 288.3736 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an isotropic 2D gaussian function. <a href="#5176ca43ce93eeaa158f8e3456606752"></a><br></td></tr> 288.3737 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7ae227c9b85d8ede2974161072453165"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="7ae227c9b85d8ede2974161072453165" args="(const float xc, const float yc, const float sigma, const CImg< tc > &color, const float opacity=1)" --> 288.3738 +template<typename tc > </td></tr> 288.3739 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7ae227c9b85d8ede2974161072453165">draw_gaussian</a> (const float xc, const float yc, const float sigma, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3740 + 288.3741 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an isotropic 2D gaussian function. <br></td></tr> 288.3742 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t , typename tc > </td></tr> 288.3743 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1433a5536718d44e9b42462bdca5fc06">draw_gaussian</a> (const float xc, const float yc, const float zc, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const tc *const color, const float opacity=1)</td></tr> 288.3744 + 288.3745 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 3D gaussian function. <a href="#1433a5536718d44e9b42462bdca5fc06"></a><br></td></tr> 288.3746 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0f65bfb77647741ba879af6ca4abf64a"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="0f65bfb77647741ba879af6ca4abf64a" args="(const float xc, const float yc, const float zc, const CImg< t > &tensor, const CImg< tc > &color, const float opacity=1)" --> 288.3747 +template<typename t , typename tc > </td></tr> 288.3748 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0f65bfb77647741ba879af6ca4abf64a">draw_gaussian</a> (const float xc, const float yc, const float zc, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &tensor, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3749 + 288.3750 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an anisotropic 3D gaussian function. <br></td></tr> 288.3751 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tc > </td></tr> 288.3752 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7a9367d3e05ac8cda34fae2d639c42a6">draw_gaussian</a> (const float xc, const float yc, const float zc, const float sigma, const tc *const color, const float opacity=1)</td></tr> 288.3753 + 288.3754 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an isotropic 3D gaussian function. <a href="#7a9367d3e05ac8cda34fae2d639c42a6"></a><br></td></tr> 288.3755 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="aae6a29e3158b86212e3e0022fd24a29"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="aae6a29e3158b86212e3e0022fd24a29" args="(const float xc, const float yc, const float zc, const float sigma, const CImg< tc > &color, const float opacity=1)" --> 288.3756 +template<typename tc > </td></tr> 288.3757 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#aae6a29e3158b86212e3e0022fd24a29">draw_gaussian</a> (const float xc, const float yc, const float zc, const float sigma, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity=1)</td></tr> 288.3758 + 288.3759 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw an isotropic 3D gaussian function. <br></td></tr> 288.3760 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4d83da65e0fe2768209538b8a4abc9cb"></a><!-- doxytag: member="cimg_library::CImg::_draw_object3d_sprite" ref="4d83da65e0fe2768209538b8a4abc9cb" args="(const int x, const int y, const CImg< tc > &color, const CImg< to > &opacity, const CImg< T > &sprite)" --> 288.3761 +template<typename tc , typename to > </td></tr> 288.3762 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>_draw_object3d_sprite</b> (const int x, const int y, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< to > &opacity, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &sprite)</td></tr> 288.3763 + 288.3764 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a4324a764fca527d924c80afa867810e"></a><!-- doxytag: member="cimg_library::CImg::_draw_object3d_sprite" ref="a4324a764fca527d924c80afa867810e" args="(const int x, const int y, const CImg< tc > &color, const float opacity, const CImg< T > &sprite)" --> 288.3765 +template<typename tc > </td></tr> 288.3766 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>_draw_object3d_sprite</b> (const int x, const int y, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > &color, const float opacity, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &sprite)</td></tr> 288.3767 + 288.3768 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f864fee4be9bde0df0f94dc6c98aeac5"></a><!-- doxytag: member="cimg_library::CImg::_draw_object3d" ref="f864fee4be9bde0df0f94dc6c98aeac5" args="(void *const pboard, float *const zbuffer, const float X, const float Y, const float Z, const tp &points, const unsigned int nb_points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const unsigned int nb_opacities, const unsigned int render_type, const bool double_sided, const float focale, const float lightx, const float lighty, const float lightz, const float specular_light, const float specular_shine)" --> 288.3769 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3770 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_draw_object3d</b> (void *const pboard, float *const zbuffer, const float X, const float Y, const float Z, const tp &points, const unsigned int nb_points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const unsigned int nb_opacities, const unsigned int render_type, const bool double_sided, const float focale, const float lightx, const float lighty, const float lightz, const float specular_light, const float specular_shine)</td></tr> 288.3771 + 288.3772 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3773 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#be9e9614682023f314b77913230c373a">draw_object3d</a> (const float x0, const float y0, const float z0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td></tr> 288.3774 + 288.3775 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D object. <a href="#be9e9614682023f314b77913230c373a"></a><br></td></tr> 288.3776 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="15bc5f4b0023f184bca2313574cf5a9b"></a><!-- doxytag: member="cimg_library::CImg::draw_object3d" ref="15bc5f4b0023f184bca2313574cf5a9b" args="(const float x0, const float y0, const float z0, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)" --> 288.3777 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3778 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#15bc5f4b0023f184bca2313574cf5a9b">draw_object3d</a> (const float x0, const float y0, const float z0, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td></tr> 288.3779 + 288.3780 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D object. <br></td></tr> 288.3781 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="361269687e070fbc2ad563100d8e2b14"></a><!-- doxytag: member="cimg_library::CImg::draw_object3d" ref="361269687e070fbc2ad563100d8e2b14" args="(const float x0, const float y0, const float z0, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)" --> 288.3782 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3783 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#361269687e070fbc2ad563100d8e2b14">draw_object3d</a> (const float x0, const float y0, const float z0, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td></tr> 288.3784 + 288.3785 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D object. <br></td></tr> 288.3786 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6d15e65031e820846b78928aa454baae"></a><!-- doxytag: member="cimg_library::CImg::draw_object3d" ref="6d15e65031e820846b78928aa454baae" args="(const float x0, const float y0, const float z0, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImg< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)" --> 288.3787 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3788 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6d15e65031e820846b78928aa454baae">draw_object3d</a> (const float x0, const float y0, const float z0, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td></tr> 288.3789 + 288.3790 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D object. <br></td></tr> 288.3791 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1db83a74b0de1e81bfd71eaa1bb6ac4f"></a><!-- doxytag: member="cimg_library::CImg::draw_object3d" ref="1db83a74b0de1e81bfd71eaa1bb6ac4f" args="(const float x0, const float y0, const float z0, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)" --> 288.3792 +template<typename tp , typename tf , typename tc > </td></tr> 288.3793 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1db83a74b0de1e81bfd71eaa1bb6ac4f">draw_object3d</a> (const float x0, const float y0, const float z0, const tp &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)</td></tr> 288.3794 + 288.3795 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Draw a 3D object. <br></td></tr> 288.3796 +<tr><td colspan="2"><div class="groupHeader">Image Filtering</div></td></tr> 288.3797 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.3798 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e42e12627e5a8204d328f84df9976fc8">correlate</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_correl=false)</td></tr> 288.3799 + 288.3800 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the correlation of the instance image by a mask. <a href="#e42e12627e5a8204d328f84df9976fc8"></a><br></td></tr> 288.3801 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="808f71329066b3b28ca499a4b131750e"></a><!-- doxytag: member="cimg_library::CImg::get_correlate" ref="808f71329066b3b28ca499a4b131750e" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_correl=false) const " --> 288.3802 +template<typename t > </td></tr> 288.3803 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset2<br class="typebreak"> 288.3804 +< T, t, float >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_correlate</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_correl=false) const </td></tr> 288.3805 + 288.3806 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.3807 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6ad1f71fcaf356a1480b81c55109ca86">convolve</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_convol=false)</td></tr> 288.3808 + 288.3809 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the convolution of the image by a mask. <a href="#6ad1f71fcaf356a1480b81c55109ca86"></a><br></td></tr> 288.3810 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3ee97b3d9f79894fb0403cff6f04934e"></a><!-- doxytag: member="cimg_library::CImg::get_convolve" ref="3ee97b3d9f79894fb0403cff6f04934e" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_convol=false) const " --> 288.3811 +template<typename t > </td></tr> 288.3812 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset2<br class="typebreak"> 288.3813 +< T, t, float >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_convolve</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_convol=false) const </td></tr> 288.3814 + 288.3815 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e82e75b5321e8702edcab8d0b8fdcd09"></a><!-- doxytag: member="cimg_library::CImg::erode" ref="e82e75b5321e8702edcab8d0b8fdcd09" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false)" --> 288.3816 +template<typename t > </td></tr> 288.3817 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e82e75b5321e8702edcab8d0b8fdcd09">erode</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false)</td></tr> 288.3818 + 288.3819 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the erosion of the image by a structuring element. <br></td></tr> 288.3820 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="01ead4b927f9590e5084250d3c7e1122"></a><!-- doxytag: member="cimg_library::CImg::get_erode" ref="01ead4b927f9590e5084250d3c7e1122" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false) const " --> 288.3821 +template<typename t > </td></tr> 288.3822 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.3823 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_erode</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_erosion=false) const </td></tr> 288.3824 + 288.3825 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd7026f4a4063806639cb4cccf8019a7"></a><!-- doxytag: member="cimg_library::CImg::erode" ref="fd7026f4a4063806639cb4cccf8019a7" args="(const unsigned int n, const unsigned int cond=1)" --> 288.3826 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fd7026f4a4063806639cb4cccf8019a7">erode</a> (const unsigned int n, const unsigned int cond=1)</td></tr> 288.3827 + 288.3828 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Erode the image by a square structuring element of size n. <br></td></tr> 288.3829 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="351d5bc0b09bfff59d5287d277aa6884"></a><!-- doxytag: member="cimg_library::CImg::get_erode" ref="351d5bc0b09bfff59d5287d277aa6884" args="(const unsigned int n, const unsigned int cond=1) const " --> 288.3830 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_erode</b> (const unsigned int n, const unsigned int cond=1) const </td></tr> 288.3831 + 288.3832 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d5da308710b26218600b8254d9e43204"></a><!-- doxytag: member="cimg_library::CImg::dilate" ref="d5da308710b26218600b8254d9e43204" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false)" --> 288.3833 +template<typename t > </td></tr> 288.3834 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d5da308710b26218600b8254d9e43204">dilate</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false)</td></tr> 288.3835 + 288.3836 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Dilate the image by a structuring element. <br></td></tr> 288.3837 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1368d42a6b2a4feb2650371308a9ec43"></a><!-- doxytag: member="cimg_library::CImg::get_dilate" ref="1368d42a6b2a4feb2650371308a9ec43" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false) const " --> 288.3838 +template<typename t > </td></tr> 288.3839 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< typename cimg::superset<br class="typebreak"> 288.3840 +< T, t >::type > </td><td class="memTemplItemRight" valign="bottom"><b>get_dilate</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &mask, const unsigned int cond=1, const bool weighted_dilatation=false) const </td></tr> 288.3841 + 288.3842 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="25bb84697a1482acd85000e6c41dc881"></a><!-- doxytag: member="cimg_library::CImg::dilate" ref="25bb84697a1482acd85000e6c41dc881" args="(const unsigned int n, const unsigned int cond=1)" --> 288.3843 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#25bb84697a1482acd85000e6c41dc881">dilate</a> (const unsigned int n, const unsigned int cond=1)</td></tr> 288.3844 + 288.3845 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Dilate the image by a square structuring element of size n. <br></td></tr> 288.3846 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="18ae55e40daa190b2b96d51d4118b45e"></a><!-- doxytag: member="cimg_library::CImg::get_dilate" ref="18ae55e40daa190b2b96d51d4118b45e" args="(const unsigned int n, const unsigned int cond=1) const " --> 288.3847 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_dilate</b> (const unsigned int n, const unsigned int cond=1) const </td></tr> 288.3848 + 288.3849 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#caf16c667ccfe861ba7c565537f67a1a">noise</a> (const double sigma, const unsigned int noise_type=0)</td></tr> 288.3850 + 288.3851 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Add noise to the image. <a href="#caf16c667ccfe861ba7c565537f67a1a"></a><br></td></tr> 288.3852 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="06964cb644890dcc424cc2ec18057780"></a><!-- doxytag: member="cimg_library::CImg::get_noise" ref="06964cb644890dcc424cc2ec18057780" args="(const double sigma, const unsigned int noise_type=0) const " --> 288.3853 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_noise</b> (const double sigma, const unsigned int noise_type=0) const </td></tr> 288.3854 + 288.3855 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#be44da28a01b5632c9cb59af2ab6dab6">deriche</a> (const float sigma, const int order=0, const char axis='x', const bool cond=true)</td></tr> 288.3856 + 288.3857 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the result of the Deriche filter. <a href="#be44da28a01b5632c9cb59af2ab6dab6"></a><br></td></tr> 288.3858 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78b160ef01bde55188950e5f9ba7ef57"></a><!-- doxytag: member="cimg_library::CImg::get_deriche" ref="78b160ef01bde55188950e5f9ba7ef57" args="(const float sigma, const int order=0, const char axis='x', const bool cond=true) const " --> 288.3859 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_deriche</b> (const float sigma, const int order=0, const char axis='x', const bool cond=true) const </td></tr> 288.3860 + 288.3861 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#fcc7e2db6bcdb9da96698da4ef546678">blur</a> (const float sigmax, const float sigmay, const float sigmaz, const bool cond=true)</td></tr> 288.3862 + 288.3863 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a blurred version of the image, using a Canny-Deriche filter. <a href="#fcc7e2db6bcdb9da96698da4ef546678"></a><br></td></tr> 288.3864 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ceb6caab72b2f7bd94697007d4f4aaf"></a><!-- doxytag: member="cimg_library::CImg::get_blur" ref="0ceb6caab72b2f7bd94697007d4f4aaf" args="(const float sigmax, const float sigmay, const float sigmaz, const bool cond=true) const " --> 288.3865 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_blur</b> (const float sigmax, const float sigmay, const float sigmaz, const bool cond=true) const </td></tr> 288.3866 + 288.3867 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0da5be77c4b3829690661df2561b6c12"></a><!-- doxytag: member="cimg_library::CImg::blur" ref="0da5be77c4b3829690661df2561b6c12" args="(const float sigma, const bool cond=true)" --> 288.3868 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0da5be77c4b3829690661df2561b6c12">blur</a> (const float sigma, const bool cond=true)</td></tr> 288.3869 + 288.3870 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a blurred version of the image, using a Canny-Deriche filter. <br></td></tr> 288.3871 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c8102579c9f84a38ebea0bfc9f44dd9"></a><!-- doxytag: member="cimg_library::CImg::get_blur" ref="7c8102579c9f84a38ebea0bfc9f44dd9" args="(const float sigma, const bool cond=true) const " --> 288.3872 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_blur</b> (const float sigma, const bool cond=true) const </td></tr> 288.3873 + 288.3874 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 288.3875 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#8df01b5bf7b7fee8719ac0b261d3f5d8">blur_anisotropic</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &G, const float amplitude=60, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true)</td></tr> 288.3876 + 288.3877 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur the image anisotropically following a field of diffusion tensors. <a href="#8df01b5bf7b7fee8719ac0b261d3f5d8"></a><br></td></tr> 288.3878 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="a1fda7efcb56f2aae4daa68cd580cb62"></a><!-- doxytag: member="cimg_library::CImg::get_blur_anisotropic" ref="a1fda7efcb56f2aae4daa68cd580cb62" args="(const CImg< t > &G, const float amplitude=60, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true) const " --> 288.3879 +template<typename t > </td></tr> 288.3880 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_blur_anisotropic</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &G, const float amplitude=60, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true) const </td></tr> 288.3881 + 288.3882 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename tm > </td></tr> 288.3883 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2d20cc794442bfdcd9ff8e1a78e76224">blur_anisotropic</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)</td></tr> 288.3884 + 288.3885 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur an image in an anisotropic way. <a href="#2d20cc794442bfdcd9ff8e1a78e76224"></a><br></td></tr> 288.3886 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="79a5065f9a4a95418c0b437ccb502e17"></a><!-- doxytag: member="cimg_library::CImg::get_blur_anisotropic" ref="79a5065f9a4a95418c0b437ccb502e17" args="(const CImg< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1) const " --> 288.3887 +template<typename tm > </td></tr> 288.3888 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_blur_anisotropic</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1) const </td></tr> 288.3889 + 288.3890 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96d79e2b965b9fa045c40974ba13b894"></a><!-- doxytag: member="cimg_library::CImg::blur_anisotropic" ref="96d79e2b965b9fa045c40974ba13b894" args="(const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)" --> 288.3891 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#96d79e2b965b9fa045c40974ba13b894">blur_anisotropic</a> (const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)</td></tr> 288.3892 + 288.3893 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur an image following in an anisotropic way. <br></td></tr> 288.3894 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ecfb3645d1515680c333b3bcb022bb4"></a><!-- doxytag: member="cimg_library::CImg::get_blur_anisotropic" ref="0ecfb3645d1515680c333b3bcb022bb4" args="(const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1) const " --> 288.3895 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_blur_anisotropic</b> (const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1) const </td></tr> 288.3896 + 288.3897 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5171719110ee9897b557b21f773655b7">blur_bilateral</a> (const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation_type=true)</td></tr> 288.3898 + 288.3899 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur an image using the bilateral filter. <a href="#5171719110ee9897b557b21f773655b7"></a><br></td></tr> 288.3900 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3bb11eb4e691efd3ea11d097e88f16e8"></a><!-- doxytag: member="cimg_library::CImg::get_blur_bilateral" ref="3bb11eb4e691efd3ea11d097e88f16e8" args="(const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation_type=true) const " --> 288.3901 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_blur_bilateral</b> (const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation_type=true) const </td></tr> 288.3902 + 288.3903 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="904c1b55b3ee2db5b38c9478f30e8000"></a><!-- doxytag: member="cimg_library::CImg::blur_bilateral" ref="904c1b55b3ee2db5b38c9478f30e8000" args="(const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation_type=true)" --> 288.3904 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#904c1b55b3ee2db5b38c9478f30e8000">blur_bilateral</a> (const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation_type=true)</td></tr> 288.3905 + 288.3906 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur an image using the bilateral filter. <br></td></tr> 288.3907 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2fba0bad8ddc6a94f1973b1d7a49e357"></a><!-- doxytag: member="cimg_library::CImg::get_blur_bilateral" ref="2fba0bad8ddc6a94f1973b1d7a49e357" args="(const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation_type=true) const " --> 288.3908 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_blur_bilateral</b> (const float sigmas, const float sigmar, const int bgrids=-33, const int bgridr=32, const bool interpolation_type=true) const </td></tr> 288.3909 + 288.3910 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1f2ed9ee1db1a507c21a1863a3a51d11"></a><!-- doxytag: member="cimg_library::CImg::blur_patch" ref="1f2ed9ee1db1a507c21a1863a3a51d11" args="(const unsigned int patch_size, const float sigma_p, const float sigma_s=10, const unsigned int lookup_size=4, const bool fast_approx=true)" --> 288.3911 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#1f2ed9ee1db1a507c21a1863a3a51d11">blur_patch</a> (const unsigned int patch_size, const float sigma_p, const float sigma_s=10, const unsigned int lookup_size=4, const bool fast_approx=true)</td></tr> 288.3912 + 288.3913 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Blur an image in its patch-based space. <br></td></tr> 288.3914 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dd1e8f7233396537dbfd56cc331dae5c"></a><!-- doxytag: member="cimg_library::CImg::get_blur_patch" ref="dd1e8f7233396537dbfd56cc331dae5c" args="(const unsigned int patch_size, const float sigma_p, const float sigma_s=10, const unsigned int lookup_size=4, const bool fast_approx=true) const " --> 288.3915 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_blur_patch</b> (const unsigned int patch_size, const float sigma_p, const float sigma_s=10, const unsigned int lookup_size=4, const bool fast_approx=true) const </td></tr> 288.3916 + 288.3917 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e9e7074da9c9955e37e9eebbd5bd9c22"></a><!-- doxytag: member="cimg_library::CImg::get_FFT" ref="e9e7074da9c9955e37e9eebbd5bd9c22" args="(const char axis, const bool invert=false) const " --> 288.3918 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e9e7074da9c9955e37e9eebbd5bd9c22">get_FFT</a> (const char axis, const bool invert=false) const </td></tr> 288.3919 + 288.3920 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the Fast Fourier Transform of an image (along a specified axis). <br></td></tr> 288.3921 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="344967c8b6e7bf0aa40039d1ab29efe2"></a><!-- doxytag: member="cimg_library::CImg::get_FFT" ref="344967c8b6e7bf0aa40039d1ab29efe2" args="(const bool invert=false) const " --> 288.3922 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#344967c8b6e7bf0aa40039d1ab29efe2">get_FFT</a> (const bool invert=false) const </td></tr> 288.3923 + 288.3924 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the Fast Fourier Transform on an image. <br></td></tr> 288.3925 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="55c5427152277f80c6cb9a36ae77ddf1"></a><!-- doxytag: member="cimg_library::CImg::blur_median" ref="55c5427152277f80c6cb9a36ae77ddf1" args="(const unsigned int n)" --> 288.3926 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#55c5427152277f80c6cb9a36ae77ddf1">blur_median</a> (const unsigned int n)</td></tr> 288.3927 + 288.3928 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Apply a median filter. <br></td></tr> 288.3929 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15f4354e553e72e8330a7c0bd0a90a27"></a><!-- doxytag: member="cimg_library::CImg::get_blur_median" ref="15f4354e553e72e8330a7c0bd0a90a27" args="(const unsigned int n)" --> 288.3930 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_blur_median</b> (const unsigned int n)</td></tr> 288.3931 + 288.3932 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4ecd4ea634e87995ef1d309b8ffe91de"></a><!-- doxytag: member="cimg_library::CImg::sharpen" ref="4ecd4ea634e87995ef1d309b8ffe91de" args="(const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0)" --> 288.3933 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4ecd4ea634e87995ef1d309b8ffe91de">sharpen</a> (const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0)</td></tr> 288.3934 + 288.3935 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Sharpen image using anisotropic shock filters or inverse diffusion. <br></td></tr> 288.3936 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c81c77a021a6b97096bc46dbd5b7861a"></a><!-- doxytag: member="cimg_library::CImg::get_sharpen" ref="c81c77a021a6b97096bc46dbd5b7861a" args="(const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0) const " --> 288.3937 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_sharpen</b> (const float amplitude, const bool sharpen_type=false, const float edge=1, const float alpha=0, const float sigma=0) const </td></tr> 288.3938 + 288.3939 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#09afff280828c5a8d5a7bef22993dacc">haar</a> (const char axis, const bool invert=false, const unsigned int nb_scales=1)</td></tr> 288.3940 + 288.3941 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the Haar multiscale wavelet transform (monodimensional version). <a href="#09afff280828c5a8d5a7bef22993dacc"></a><br></td></tr> 288.3942 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="adcc510c6d5bd17092150e6024d52383"></a><!-- doxytag: member="cimg_library::CImg::get_haar" ref="adcc510c6d5bd17092150e6024d52383" args="(const char axis, const bool invert=false, const unsigned int nb_scales=1) const " --> 288.3943 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_haar</b> (const char axis, const bool invert=false, const unsigned int nb_scales=1) const </td></tr> 288.3944 + 288.3945 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#dbb11ae1fffb253f45f3d0ff85a6857b">haar</a> (const bool invert=false, const unsigned int nb_scales=1)</td></tr> 288.3946 + 288.3947 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the Haar multiscale wavelet transform. <a href="#dbb11ae1fffb253f45f3d0ff85a6857b"></a><br></td></tr> 288.3948 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2fb58636d47e185c1ab1f18ec4cef03"></a><!-- doxytag: member="cimg_library::CImg::get_haar" ref="e2fb58636d47e185c1ab1f18ec4cef03" args="(const bool invert=false, const unsigned int nb_scales=1) const " --> 288.3949 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_haar</b> (const bool invert=false, const unsigned int nb_scales=1) const </td></tr> 288.3950 + 288.3951 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4c5e31ec2d05a869a67705be11ad31c2"></a><!-- doxytag: member="cimg_library::CImg::displacement_field" ref="4c5e31ec2d05a869a67705be11ad31c2" args="(const CImg< T > &target, const float smooth=0.1f, const float precision=0.1f, const unsigned int nb_scales=0, const unsigned int itermax=10000)" --> 288.3952 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#4c5e31ec2d05a869a67705be11ad31c2">displacement_field</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &target, const float smooth=0.1f, const float precision=0.1f, const unsigned int nb_scales=0, const unsigned int itermax=10000)</td></tr> 288.3953 + 288.3954 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Estimate a displacement field between instance image and given target image. <br></td></tr> 288.3955 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="484f842e4772523b890fb115cd2b40f5"></a><!-- doxytag: member="cimg_library::CImg::get_displacement_field" ref="484f842e4772523b890fb115cd2b40f5" args="(const CImg< T > &target, const float smoothness=0.1f, const float precision=0.1f, const unsigned int nb_scales=0, const unsigned int itermax=10000) const " --> 288.3956 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< Tfloat > </td><td class="memItemRight" valign="bottom"><b>get_displacement_field</b> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &target, const float smoothness=0.1f, const float precision=0.1f, const unsigned int nb_scales=0, const unsigned int itermax=10000) const </td></tr> 288.3957 + 288.3958 +<tr><td colspan="2"><div class="groupHeader">Display</div></td></tr> 288.3959 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea0592215c6068e617a975a1fe5b7b7b"></a><!-- doxytag: member="cimg_library::CImg::display" ref="ea0592215c6068e617a975a1fe5b7b7b" args="(CImgDisplay &disp) const " --> 288.3960 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ea0592215c6068e617a975a1fe5b7b7b">display</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp) const </td></tr> 288.3961 + 288.3962 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image into a <a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a> window. <br></td></tr> 288.3963 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7875588dbc9fb83602611b6ae03c73fa"></a><!-- doxytag: member="cimg_library::CImg::display" ref="7875588dbc9fb83602611b6ae03c73fa" args="(CImgDisplay &disp, const bool display_info) const " --> 288.3964 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7875588dbc9fb83602611b6ae03c73fa">display</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const bool display_info) const </td></tr> 288.3965 + 288.3966 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image in a window with a title <code>title</code>, and wait a 'is_closed' or 'keyboard' event.<br> 288.3967 +. <br></td></tr> 288.3968 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="32ca7381aa7cc3e3b8620024767e8525"></a><!-- doxytag: member="cimg_library::CImg::display" ref="32ca7381aa7cc3e3b8620024767e8525" args="(const char *const title=0, const bool display_info=true) const " --> 288.3969 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#32ca7381aa7cc3e3b8620024767e8525">display</a> (const char *const title=0, const bool display_info=true) const </td></tr> 288.3970 + 288.3971 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image in a window with a title <code>title</code>, and wait a 'is_closed' or 'keyboard' event.<br> 288.3972 +. <br></td></tr> 288.3973 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1b0fa3e83defeb353d65e7094b3caa8"></a><!-- doxytag: member="cimg_library::CImg::_display" ref="c1b0fa3e83defeb353d65e7094b3caa8" args="(CImgDisplay &disp, const char *const title, const bool display_info) const " --> 288.3974 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_display</b> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const char *const title, const bool display_info) const </td></tr> 288.3975 + 288.3976 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#0a8ac68afbfb317c60b7554f5cdcbbd5">select</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)</td></tr> 288.3977 + 288.3978 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple interface to select a shape from an image. <a href="#0a8ac68afbfb317c60b7554f5cdcbbd5"></a><br></td></tr> 288.3979 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="261706fc929ade9d440e0eb66b08f843"></a><!-- doxytag: member="cimg_library::CImg::select" ref="261706fc929ade9d440e0eb66b08f843" args="(const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)" --> 288.3980 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#261706fc929ade9d440e0eb66b08f843">select</a> (const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)</td></tr> 288.3981 + 288.3982 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple interface to select a shape from an image. <br></td></tr> 288.3983 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58b982e2bd8adf8792df5caff7549aa6"></a><!-- doxytag: member="cimg_library::CImg::get_select" ref="58b982e2bd8adf8792df5caff7549aa6" args="(CImgDisplay &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const " --> 288.3984 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< intT > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#58b982e2bd8adf8792df5caff7549aa6">get_select</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const </td></tr> 288.3985 + 288.3986 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple interface to select a shape from an image. <br></td></tr> 288.3987 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e64832c20063e4c9bd1dbc6a3ffe3173"></a><!-- doxytag: member="cimg_library::CImg::get_select" ref="e64832c20063e4c9bd1dbc6a3ffe3173" args="(const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const " --> 288.3988 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< intT > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e64832c20063e4c9bd1dbc6a3ffe3173">get_select</a> (const char *const title, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0) const </td></tr> 288.3989 + 288.3990 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Simple interface to select a shape from an image. <br></td></tr> 288.3991 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b470ff84bcac27328430e271067570bd"></a><!-- doxytag: member="cimg_library::CImg::_get_select" ref="b470ff84bcac27328430e271067570bd" args="(CImgDisplay &disp, const char *const title, const int coords_type, unsigned int *const XYZ, const unsigned char *const color, const int origX, const int origY, const int origZ) const " --> 288.3992 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< intT > </td><td class="memItemRight" valign="bottom"><b>_get_select</b> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const char *const title, const int coords_type, unsigned int *const XYZ, const unsigned char *const color, const int origX, const int origY, const int origZ) const </td></tr> 288.3993 + 288.3994 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f3911af4a4d37ca22b6d4c4a91cdced4"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="f3911af4a4d37ca22b6d4c4a91cdced4" args="(CImgDisplay &disp, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.3995 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.3996 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f3911af4a4d37ca22b6d4c4a91cdced4">display_object3d</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.3997 + 288.3998 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.3999 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="efa6a74da889dbd49d102d0c6bf44763"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="efa6a74da889dbd49d102d0c6bf44763" args="(const char *const title, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4000 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.4001 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#efa6a74da889dbd49d102d0c6bf44763">display_object3d</a> (const char *const title, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4002 + 288.4003 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4004 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="691a674d72768e09816066a1e38702a2"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="691a674d72768e09816066a1e38702a2" args="(CImgDisplay &disp, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4005 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.4006 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#691a674d72768e09816066a1e38702a2">display_object3d</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4007 + 288.4008 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4009 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="6e61e9200f57599bf0824c094eb5a354"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="6e61e9200f57599bf0824c094eb5a354" args="(const char *const title, const CImgList< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4010 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.4011 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#6e61e9200f57599bf0824c094eb5a354">display_object3d</a> (const char *const title, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tp > &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4012 + 288.4013 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4014 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="35cd00c0ec9c854ce5e39f87088b1db9"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="35cd00c0ec9c854ce5e39f87088b1db9" args="(CImgDisplay &disp, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4015 +template<typename tp , typename tf , typename tc > </td></tr> 288.4016 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#35cd00c0ec9c854ce5e39f87088b1db9">display_object3d</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const tp &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4017 + 288.4018 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4019 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e49fbebeb4f8c14e0cd9665c3b028f75"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="e49fbebeb4f8c14e0cd9665c3b028f75" args="(const char *const title, const tp &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4020 +template<typename tp , typename tf , typename tc > </td></tr> 288.4021 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#e49fbebeb4f8c14e0cd9665c3b028f75">display_object3d</a> (const char *const title, const tp &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4022 + 288.4023 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4024 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="663dbef9833a84680a1e968b2c73898e"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="663dbef9833a84680a1e968b2c73898e" args="(CImgDisplay &disp, const tp &points, const CImgList< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4025 +template<typename tp , typename tf > </td></tr> 288.4026 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#663dbef9833a84680a1e968b2c73898e">display_object3d</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const tp &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4027 + 288.4028 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4029 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f171ffa62145cddc5d1d8759e32edf06"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="f171ffa62145cddc5d1d8759e32edf06" args="(const char *const title, const tp &points, const CImgList< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4030 +template<typename tp , typename tf > </td></tr> 288.4031 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f171ffa62145cddc5d1d8759e32edf06">display_object3d</a> (const char *const title, const tp &points, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4032 + 288.4033 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4034 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f5fba60de29f4cb2dec393205cdc0389"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="f5fba60de29f4cb2dec393205cdc0389" args="(CImgDisplay &disp, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4035 +template<typename tp > </td></tr> 288.4036 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#f5fba60de29f4cb2dec393205cdc0389">display_object3d</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4037 + 288.4038 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4039 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7930edce3dc8213a9f45162165f1ce47"></a><!-- doxytag: member="cimg_library::CImg::display_object3d" ref="7930edce3dc8213a9f45162165f1ce47" args="(const char *const title, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const " --> 288.4040 +template<typename tp > </td></tr> 288.4041 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#7930edce3dc8213a9f45162165f1ce47">display_object3d</a> (const char *const title, const tp &points, const bool centering=true, const int render_static=4, const int render_motion=1, const bool double_sided=false, const float focale=500, const float specular_light=0.2f, const float specular_shine=0.1f, const bool display_axes=true, float *const pose_matrix=0) const </td></tr> 288.4042 + 288.4043 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a 3d object. <br></td></tr> 288.4044 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="93c06c7c1376bb0728ce011978e3b004"></a><!-- doxytag: member="cimg_library::CImg::_display_object3d_at2" ref="93c06c7c1376bb0728ce011978e3b004" args="(const int i, const int j) const " --> 288.4045 +T </td><td class="memItemRight" valign="bottom"><b>_display_object3d_at2</b> (const int i, const int j) const </td></tr> 288.4046 + 288.4047 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9e4b5144fdbf2a021ae65cf07b41bc03"></a><!-- doxytag: member="cimg_library::CImg::_display_object3d" ref="9e4b5144fdbf2a021ae65cf07b41bc03" args="(CImgDisplay &disp, const char *const title, const tp &points, const unsigned int Npoints, const CImgList< tf > &primitives, const CImgList< tc > &colors, const to &opacities, const bool centering, const int render_static, const int render_motion, const bool double_sided, const float focale, const float specular_light, const float specular_shine, const bool display_axes, float *const pose_matrix) const " --> 288.4048 +template<typename tp , typename tf , typename tc , typename to > </td></tr> 288.4049 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><b>_display_object3d</b> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const char *const title, const tp &points, const unsigned int Npoints, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const to &opacities, const bool centering, const int render_static, const int render_motion, const bool double_sided, const float focale, const float specular_light, const float specular_shine, const bool display_axes, float *const pose_matrix) const </td></tr> 288.4050 + 288.4051 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cacf5a4ef4f35c7a396dc7759928c30b"></a><!-- doxytag: member="cimg_library::CImg::display_graph" ref="cacf5a4ef4f35c7a396dc7759928c30b" args="(CImgDisplay &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const " --> 288.4052 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#cacf5a4ef4f35c7a396dc7759928c30b">display_graph</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td></tr> 288.4053 + 288.4054 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a graph. <br></td></tr> 288.4055 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="97baf05869f5a0cc24b3f7c2375570bb"></a><!-- doxytag: member="cimg_library::CImg::display_graph" ref="97baf05869f5a0cc24b3f7c2375570bb" args="(const char *const title=0, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const " --> 288.4056 +const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#97baf05869f5a0cc24b3f7c2375570bb">display_graph</a> (const char *const title=0, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td></tr> 288.4057 + 288.4058 +<tr><td class="mdescLeft"> </td><td class="mdescRight">High-level interface for displaying a graph. <br></td></tr> 288.4059 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2b77e436a48fd24c423e924c2dae4072"></a><!-- doxytag: member="cimg_library::CImg::get_select_graph" ref="2b77e436a48fd24c423e924c2dae4072" args="(CImgDisplay &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const " --> 288.4060 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< intT > </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#2b77e436a48fd24c423e924c2dae4072">get_select_graph</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const unsigned int plot_type=1, const unsigned int vertex_type=1, const char *const labelx=0, const double xmin=0, const double xmax=0, const char *const labely=0, const double ymin=0, const double ymax=0) const </td></tr> 288.4061 + 288.4062 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Select sub-graph in a graph. <br></td></tr> 288.4063 +<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> 288.4064 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a></td></tr> 288.4065 + 288.4066 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Variable representing the width of the instance image (i.e. dimensions along the X-axis). <a href="#ca34d28e3d8bcbcadb8edb4e3af24f8c"></a><br></td></tr> 288.4067 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a></td></tr> 288.4068 + 288.4069 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Variable representing the height of the instance image (i.e. dimensions along the Y-axis). <a href="#b2e78c61905b4419fcc7b4cfc500fe85"></a><br></td></tr> 288.4070 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a></td></tr> 288.4071 + 288.4072 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Variable representing the depth of the instance image (i.e. dimensions along the Z-axis). <a href="#5081a26baa914156df8541b03d09492e"></a><br></td></tr> 288.4073 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a></td></tr> 288.4074 + 288.4075 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Variable representing the number of channels of the instance image (i.e. dimensions along the V-axis). <a href="#d335dc2821e58000fb6d0f0ed6ba835f"></a><br></td></tr> 288.4076 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64fc9b1179593151684cfdc86dac7e65"></a><!-- doxytag: member="cimg_library::CImg::is_shared" ref="64fc9b1179593151684cfdc86dac7e65" args="" --> 288.4077 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#64fc9b1179593151684cfdc86dac7e65">is_shared</a></td></tr> 288.4078 + 288.4079 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Variable telling if pixel buffer of the instance image is shared with another one. <br></td></tr> 288.4080 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c88dceffbecaed1137b0e27783adbcc5"></a><!-- doxytag: member="cimg_library::CImg::data" ref="c88dceffbecaed1137b0e27783adbcc5" args="" --> 288.4081 +T * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a></td></tr> 288.4082 + 288.4083 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the first pixel of the pixel buffer. <br></td></tr> 288.4084 +</table> 288.4085 +<hr><a name="_details"></a><h2>Detailed Description</h2> 288.4086 +<h3>template<typename T><br> 288.4087 + struct cimg_library::CImg< T ></h3> 288.4088 + 288.4089 +Class representing an image (up to 4 dimensions wide), each pixel being of type <code>T</code>. 288.4090 +<p> 288.4091 +This is the main class of the CImg Library. It declares and constructs an image, allows access to its pixel values, and is able to perform various image operations.<p> 288.4092 +<dl class="user" compact><dt><b>Image representation</b></dt><dd></dd></dl> 288.4093 +A CImg image is defined as an instance of the container <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><<code>T></code>, which contains a regular grid of pixels, each pixel value being of type <code>T</code>. The image grid can have up to 4 dimensions : width, height, depth and number of channels. Usually, the three first dimensions are used to describe spatial coordinates <code>(x,y,z)</code>, while the number of channels is rather used as a vector-valued dimension (it may describe the R,G,B color channels for instance). If you need a fifth dimension, you can use image lists <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a><<code>T></code> rather than simple images <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><<code>T></code>.<p> 288.4094 +Thus, the <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><<code>T></code> class is able to represent volumetric images of vector-valued pixels, as well as images with less dimensions (1D scalar signal, 2D color images, ...). Most member functions of the class <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a><<code>T></code> are designed to handle this maximum case of (3+1) dimensions.<p> 288.4095 +Concerning the pixel value type <code>T</code> : fully supported template types are the basic C++ types : <code>unsigned char, char, short, unsigned int, int, unsigned long, long, float, double, ... </code>. Typically, fast image display can be done using <code>CImg<unsigned char></code> images, while complex image processing algorithms may be rather coded using <code>CImg<float></code> or <code>CImg<double></code> images that have floating-point pixel values. The default value for the template T is <code>float</code>. Using your own template types may be possible. However, you will certainly have to define the complete set of arithmetic and logical operators for your class.<p> 288.4096 +<dl class="user" compact><dt><b>Image structure</b></dt><dd></dd></dl> 288.4097 +The <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><<code>T></code> structure contains <em>six</em> fields :<ul> 288.4098 +<li><a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> defines the number of <em>columns</em> of the image (size along the X-axis).</li><li><a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> defines the number of <em>rows</em> of the image (size along the Y-axis).</li><li><a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> defines the number of <em>slices</em> of the image (size along the Z-axis).</li><li><a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a> defines the number of <em>channels</em> of the image (size along the V-axis).</li><li><a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a> defines a <em>pointer</em> to the <em>pixel</em> <em>data</em> (of type <code>T</code>).</li><li><a class="el" href="structcimg__library_1_1CImg.html#64fc9b1179593151684cfdc86dac7e65">is_shared</a> is a boolean that tells if the memory buffer <a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a> is shared with another image.</li></ul> 288.4099 +<p> 288.4100 +You can access these fields publicly although it is recommended to use the dedicated functions <a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a" title="Return the number of columns of the instance image (size along the X-axis, i.e image...">dimx()</a>, <a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d" title="Return the number of rows of the instance image (size along the Y-axis, i.e image...">dimy()</a>, <a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215" title="Return the number of slices of the instance image (size along the Z-axis).">dimz()</a>, <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> and <a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda" title="Return a pointer to the pixel buffer.">ptr()</a> to do so. Image dimensions are not limited to a specific range (as long as you got enough available memory). A value of <em>1</em> usually means that the corresponding dimension is <em>flat</em>. If one of the dimensions is <em>0</em>, or if the data pointer is null, the image is considered as <em>empty</em>. Empty images should not contain any pixel data and thus, will not be processed by <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> member functions (a CImgInstanceException will be thrown instead). Pixel data are stored in memory, in a non interlaced mode (See <a class="el" href="group__cimg__storage.html">How pixel data are stored with CImg.</a>).<p> 288.4101 +<dl class="user" compact><dt><b>Image declaration and construction</b></dt><dd></dd></dl> 288.4102 +Declaring an image can be done by using one of the several available constructors. Here is a list of the most used :<p> 288.4103 +<ul> 288.4104 +<li>Construct images from arbitrary dimensions :<ul> 288.4105 +<li><code>CImg<char> img;</code> declares an empty image.</li><li><code>CImg<unsigned char> img(128,128);</code> declares a 128x128 greyscale image with <code>unsigned</code> <code>char</code> pixel values.</li><li><code>CImg<double> img(3,3);</code> declares a 3x3 matrix with <code>double</code> coefficients.</li><li><code>CImg<unsigned char> img(256,256,1,3);</code> declares a 256x256x1x3 (color) image (colors are stored as an image with three channels).</li><li><code>CImg<double> img(128,128,128);</code> declares a 128x128x128 volumetric and greyscale image (with <code>double</code> pixel values).</li><li><code>CImg<> img(128,128,128,3);</code> declares a 128x128x128 volumetric color image (with <code>float</code> pixels, which is the default value of the template parameter <code>T</code>).</li><li><b>Note</b> : images pixels are <b>not automatically initialized to 0</b>. You may use the function <a class="el" href="structcimg__library_1_1CImg.html#494a1e1424510af07e705dfe9b5f78bd">fill()</a> to do it, or use the specific constructor taking 5 parameters like this : <code>CImg<> img(128,128,128,3,0);</code> declares a 128x128x128 volumetric color image with all pixel values to 0.</li></ul> 288.4106 +</li></ul> 288.4107 +<p> 288.4108 +<ul> 288.4109 +<li>Construct images from filenames :<ul> 288.4110 +<li><code>CImg<unsigned char> img("image.jpg");</code> reads a JPEG color image from the file "image.jpg".</li><li><code>CImg<float> img("analyze.hdr");</code> reads a volumetric image (ANALYZE7.5 format) from the file "analyze.hdr".</li><li><b>Note</b> : You need to install <a href="http://www.imagemagick.org">ImageMagick</a> to be able to read common compressed image formats (JPG,PNG, ...) (See <a class="el" href="group__cimg__files__io.html">Files IO in CImg.</a>).</li></ul> 288.4111 +</li></ul> 288.4112 +<p> 288.4113 +<ul> 288.4114 +<li>Construct images from C-style arrays :<ul> 288.4115 +<li><code>CImg<int> img(data_buffer,256,256);</code> constructs a 256x256 greyscale image from a <code>int*</code> buffer <code>data_buffer</code> (of size 256x256=65536).</li><li><code>CImg<unsigned char> img(data_buffer,256,256,1,3,false);</code> constructs a 256x256 color image from a <code>unsigned</code> <code>char*</code> buffer <code>data_buffer</code> (where R,G,B channels follow each others).</li><li><code>CImg<unsigned char> img(data_buffer,256,256,1,3,true);</code> constructs a 256x256 color image from a <code>unsigned</code> <code>char*</code> buffer <code>data_buffer</code> (where R,G,B channels are multiplexed).</li></ul> 288.4116 +</li></ul> 288.4117 +<p> 288.4118 +The complete list of constructors can be found <a href="#constructors">here</a>.<p> 288.4119 +<dl class="user" compact><dt><b>Most useful functions</b></dt><dd></dd></dl> 288.4120 +The <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><<code>T></code> class contains a lot of functions that operates on images. Some of the most useful are :<p> 288.4121 +<ul> 288.4122 +<li><a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b" title="Fast access to pixel value for reading or writing.">operator()()</a>, <a class="el" href="structcimg__library_1_1CImg.html#87f4042f1af3428fa0ad1a9480286abe" title="Fast access to pixel value for reading or writing, using an offset to the image pixel...">operator[]()</a> : allows to access or write pixel values.</li><li><a class="el" href="structcimg__library_1_1CImg.html#ea0592215c6068e617a975a1fe5b7b7b" title="Display an image into a CImgDisplay window.">display()</a> : displays the image in a new window. </li></ul> 288.4123 +<hr><h2>Member Typedef Documentation</h2> 288.4124 +<a class="anchor" name="35c955cacac6aacaa1e82874b1628865"></a><!-- doxytag: member="cimg_library::CImg::iterator" ref="35c955cacac6aacaa1e82874b1628865" args="" --> 288.4125 +<div class="memitem"> 288.4126 +<div class="memproto"> 288.4127 + <table class="memname"> 288.4128 + <tr> 288.4129 + <td class="memname">typedef T* <a class="el" href="structcimg__library_1_1CImg.html#35c955cacac6aacaa1e82874b1628865">iterator</a> </td> 288.4130 + </tr> 288.4131 + </table> 288.4132 +</div> 288.4133 +<div class="memdoc"> 288.4134 + 288.4135 +<p> 288.4136 +Iterator type for CImg<T>. 288.4137 +<p> 288.4138 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4139 +<li>An <code>iterator</code> is a <code>T*</code> pointer (address of a pixel value in the pixel buffer).</li><li>Iterators are not directly used in CImg functions, they have been introduced for compatibility with the STL. </li></ul> 288.4140 +</dd></dl> 288.4141 + 288.4142 +</div> 288.4143 +</div><p> 288.4144 +<a class="anchor" name="2fc97dce62b7053449cc868607540dba"></a><!-- doxytag: member="cimg_library::CImg::const_iterator" ref="2fc97dce62b7053449cc868607540dba" args="" --> 288.4145 +<div class="memitem"> 288.4146 +<div class="memproto"> 288.4147 + <table class="memname"> 288.4148 + <tr> 288.4149 + <td class="memname">typedef const T* <a class="el" href="structcimg__library_1_1CImg.html#2fc97dce62b7053449cc868607540dba">const_iterator</a> </td> 288.4150 + </tr> 288.4151 + </table> 288.4152 +</div> 288.4153 +<div class="memdoc"> 288.4154 + 288.4155 +<p> 288.4156 +Const iterator type for CImg<T>. 288.4157 +<p> 288.4158 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4159 +<li>A <code>const_iterator</code> is a <code>const T*</code> pointer (address of a pixel value in the pixel buffer).</li><li>Iterators are not directly used in CImg functions, they have been introduced for compatibility with the STL. </li></ul> 288.4160 +</dd></dl> 288.4161 + 288.4162 +</div> 288.4163 +</div><p> 288.4164 +<hr><h2>Constructor & Destructor Documentation</h2> 288.4165 +<a class="anchor" name="d71c294580a5307aa31246e4a1ee7866"></a><!-- doxytag: member="cimg_library::CImg::~CImg" ref="d71c294580a5307aa31246e4a1ee7866" args="()" --> 288.4166 +<div class="memitem"> 288.4167 +<div class="memproto"> 288.4168 + <table class="memname"> 288.4169 + <tr> 288.4170 + <td class="memname">~<a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4171 + <td>(</td> 288.4172 + <td class="paramname"> </td> 288.4173 + <td> ) </td> 288.4174 + <td><code> [inline]</code></td> 288.4175 + </tr> 288.4176 + </table> 288.4177 +</div> 288.4178 +<div class="memdoc"> 288.4179 + 288.4180 +<p> 288.4181 +Destructor. 288.4182 +<p> 288.4183 +The destructor destroys the instance image. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4184 +<li>Destructing an empty or shared image does nothing.</li><li>Otherwise, all memory used to store the pixel data of the instance image is freed.</li><li>When destroying a non-shared image, be sure that every shared instances of the same image are also destroyed to avoid further access to desallocated memory buffers. </li></ul> 288.4185 +</dd></dl> 288.4186 + 288.4187 +</div> 288.4188 +</div><p> 288.4189 +<a class="anchor" name="8a31842596268c9fc95810890607762f"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="8a31842596268c9fc95810890607762f" args="()" --> 288.4190 +<div class="memitem"> 288.4191 +<div class="memproto"> 288.4192 + <table class="memname"> 288.4193 + <tr> 288.4194 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4195 + <td>(</td> 288.4196 + <td class="paramname"> </td> 288.4197 + <td> ) </td> 288.4198 + <td><code> [inline]</code></td> 288.4199 + </tr> 288.4200 + </table> 288.4201 +</div> 288.4202 +<div class="memdoc"> 288.4203 + 288.4204 +<p> 288.4205 +Default constructor. 288.4206 +<p> 288.4207 +The default constructor creates an empty instance image. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4208 +<li>An empty image does not contain any data and has all of its dimensions <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a>, <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>, <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a>, <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a> set to 0 as well as its pointer to the pixel buffer <a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a>.</li><li>An empty image is non-shared. </li></ul> 288.4209 +</dd></dl> 288.4210 + 288.4211 +</div> 288.4212 +</div><p> 288.4213 +<a class="anchor" name="f0cf1b66afb42bbb4750895fe66bcc69"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="f0cf1b66afb42bbb4750895fe66bcc69" args="(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.4214 +<div class="memitem"> 288.4215 +<div class="memproto"> 288.4216 + <table class="memname"> 288.4217 + <tr> 288.4218 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4219 + <td>(</td> 288.4220 + <td class="paramtype">const unsigned int </td> 288.4221 + <td class="paramname"> <em>dx</em>, </td> 288.4222 + </tr> 288.4223 + <tr> 288.4224 + <td class="paramkey"></td> 288.4225 + <td></td> 288.4226 + <td class="paramtype">const unsigned int </td> 288.4227 + <td class="paramname"> <em>dy</em> = <code>1</code>, </td> 288.4228 + </tr> 288.4229 + <tr> 288.4230 + <td class="paramkey"></td> 288.4231 + <td></td> 288.4232 + <td class="paramtype">const unsigned int </td> 288.4233 + <td class="paramname"> <em>dz</em> = <code>1</code>, </td> 288.4234 + </tr> 288.4235 + <tr> 288.4236 + <td class="paramkey"></td> 288.4237 + <td></td> 288.4238 + <td class="paramtype">const unsigned int </td> 288.4239 + <td class="paramname"> <em>dv</em> = <code>1</code></td><td> </td> 288.4240 + </tr> 288.4241 + <tr> 288.4242 + <td></td> 288.4243 + <td>)</td> 288.4244 + <td></td><td></td><td><code> [inline, explicit]</code></td> 288.4245 + </tr> 288.4246 + </table> 288.4247 +</div> 288.4248 +<div class="memdoc"> 288.4249 + 288.4250 +<p> 288.4251 +Constructs a new image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>). 288.4252 +<p> 288.4253 +This constructors create an instance image of size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) with pixels of type <code>T</code>. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4254 + <table border="0" cellspacing="2" cellpadding="0"> 288.4255 + <tr><td valign="top"></td><td valign="top"><em>dx</em> </td><td>Desired size along the X-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> of the image. </td></tr> 288.4256 + <tr><td valign="top"></td><td valign="top"><em>dy</em> </td><td>Desired size along the Y-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> of the image. </td></tr> 288.4257 + <tr><td valign="top"></td><td valign="top"><em>dz</em> </td><td>Desired size along the Z-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> of the image. </td></tr> 288.4258 + <tr><td valign="top"></td><td valign="top"><em>dv</em> </td><td>Desired size along the V-axis, i.e. the number of image channels <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a>. </td></tr> 288.4259 + </table> 288.4260 +</dl> 288.4261 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4262 +<li>If one of the input dimension <code>dx</code>,<code>dy</code>,<code>dz</code> or <code>dv</code> is set to 0, the created image is empty and all has its dimensions set to 0. No memory for pixel data is then allocated.</li><li>This constructor creates only non-shared images.</li><li>Image pixels allocated by this constructor are <b>not</b> <b>initialized</b>. Use the constructor <a class="el" href="structcimg__library_1_1CImg.html#a1909d94c489ed7ba0bbc82ee47855c2" title="Construct an image with given size (dx,dy,dz,dv) and with pixel having a default...">CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T)</a> to get an image of desired size with pixels set to a particular value. </li></ul> 288.4263 +</dd></dl> 288.4264 + 288.4265 +</div> 288.4266 +</div><p> 288.4267 +<a class="anchor" name="a1909d94c489ed7ba0bbc82ee47855c2"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="a1909d94c489ed7ba0bbc82ee47855c2" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)" --> 288.4268 +<div class="memitem"> 288.4269 +<div class="memproto"> 288.4270 + <table class="memname"> 288.4271 + <tr> 288.4272 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4273 + <td>(</td> 288.4274 + <td class="paramtype">const unsigned int </td> 288.4275 + <td class="paramname"> <em>dx</em>, </td> 288.4276 + </tr> 288.4277 + <tr> 288.4278 + <td class="paramkey"></td> 288.4279 + <td></td> 288.4280 + <td class="paramtype">const unsigned int </td> 288.4281 + <td class="paramname"> <em>dy</em>, </td> 288.4282 + </tr> 288.4283 + <tr> 288.4284 + <td class="paramkey"></td> 288.4285 + <td></td> 288.4286 + <td class="paramtype">const unsigned int </td> 288.4287 + <td class="paramname"> <em>dz</em>, </td> 288.4288 + </tr> 288.4289 + <tr> 288.4290 + <td class="paramkey"></td> 288.4291 + <td></td> 288.4292 + <td class="paramtype">const unsigned int </td> 288.4293 + <td class="paramname"> <em>dv</em>, </td> 288.4294 + </tr> 288.4295 + <tr> 288.4296 + <td class="paramkey"></td> 288.4297 + <td></td> 288.4298 + <td class="paramtype">const T </td> 288.4299 + <td class="paramname"> <em>val</em></td><td> </td> 288.4300 + </tr> 288.4301 + <tr> 288.4302 + <td></td> 288.4303 + <td>)</td> 288.4304 + <td></td><td></td><td><code> [inline]</code></td> 288.4305 + </tr> 288.4306 + </table> 288.4307 +</div> 288.4308 +<div class="memdoc"> 288.4309 + 288.4310 +<p> 288.4311 +Construct an image with given size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) and with pixel having a default value <code>val</code>. 288.4312 +<p> 288.4313 +This constructor creates an instance image of size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) with pixels of type <code>T</code> and sets all pixel values of the created instance image to <code>val</code>. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4314 + <table border="0" cellspacing="2" cellpadding="0"> 288.4315 + <tr><td valign="top"></td><td valign="top"><em>dx</em> </td><td>Desired size along the X-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> of the image. </td></tr> 288.4316 + <tr><td valign="top"></td><td valign="top"><em>dy</em> </td><td>Desired size along the Y-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> of the image. </td></tr> 288.4317 + <tr><td valign="top"></td><td valign="top"><em>dz</em> </td><td>Desired size along the Z-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> of the image. </td></tr> 288.4318 + <tr><td valign="top"></td><td valign="top"><em>dv</em> </td><td>Desired size along the V-axis, i.e. the number of image channels <code>dim</code>. </td></tr> 288.4319 + <tr><td valign="top"></td><td valign="top"><em>val</em> </td><td>Default value for image pixels. </td></tr> 288.4320 + </table> 288.4321 +</dl> 288.4322 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4323 +<li>This constructor has the same properties as <a class="el" href="structcimg__library_1_1CImg.html#f0cf1b66afb42bbb4750895fe66bcc69" title="Constructs a new image with given size (dx,dy,dz,dv).">CImg(const unsigned int,const unsigned int,const unsigned int,const unsigned int)</a>. </li></ul> 288.4324 +</dd></dl> 288.4325 + 288.4326 +</div> 288.4327 +</div><p> 288.4328 +<a class="anchor" name="6ae6194b89742eb1578795312556bfbd"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="6ae6194b89742eb1578795312556bfbd" args="(const t *const data_buffer, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1, const bool shared=false)" --> 288.4329 +<div class="memitem"> 288.4330 +<div class="memproto"> 288.4331 + <table class="memname"> 288.4332 + <tr> 288.4333 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4334 + <td>(</td> 288.4335 + <td class="paramtype">const t *const </td> 288.4336 + <td class="paramname"> <em>data_buffer</em>, </td> 288.4337 + </tr> 288.4338 + <tr> 288.4339 + <td class="paramkey"></td> 288.4340 + <td></td> 288.4341 + <td class="paramtype">const unsigned int </td> 288.4342 + <td class="paramname"> <em>dx</em>, </td> 288.4343 + </tr> 288.4344 + <tr> 288.4345 + <td class="paramkey"></td> 288.4346 + <td></td> 288.4347 + <td class="paramtype">const unsigned int </td> 288.4348 + <td class="paramname"> <em>dy</em> = <code>1</code>, </td> 288.4349 + </tr> 288.4350 + <tr> 288.4351 + <td class="paramkey"></td> 288.4352 + <td></td> 288.4353 + <td class="paramtype">const unsigned int </td> 288.4354 + <td class="paramname"> <em>dz</em> = <code>1</code>, </td> 288.4355 + </tr> 288.4356 + <tr> 288.4357 + <td class="paramkey"></td> 288.4358 + <td></td> 288.4359 + <td class="paramtype">const unsigned int </td> 288.4360 + <td class="paramname"> <em>dv</em> = <code>1</code>, </td> 288.4361 + </tr> 288.4362 + <tr> 288.4363 + <td class="paramkey"></td> 288.4364 + <td></td> 288.4365 + <td class="paramtype">const bool </td> 288.4366 + <td class="paramname"> <em>shared</em> = <code>false</code></td><td> </td> 288.4367 + </tr> 288.4368 + <tr> 288.4369 + <td></td> 288.4370 + <td>)</td> 288.4371 + <td></td><td></td><td><code> [inline]</code></td> 288.4372 + </tr> 288.4373 + </table> 288.4374 +</div> 288.4375 +<div class="memdoc"> 288.4376 + 288.4377 +<p> 288.4378 +Construct an image from a raw memory buffer. 288.4379 +<p> 288.4380 +This constructor creates an instance image of size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) and fill its pixel buffer by copying data values from the input raw pixel buffer <code>data_buffer</code>. 288.4381 +</div> 288.4382 +</div><p> 288.4383 +<a class="anchor" name="8479cd0cf615e3131efcabac1e3ff004"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="8479cd0cf615e3131efcabac1e3ff004" args="(const CImg< t > &img)" --> 288.4384 +<div class="memitem"> 288.4385 +<div class="memproto"> 288.4386 + <table class="memname"> 288.4387 + <tr> 288.4388 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4389 + <td>(</td> 288.4390 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4391 + <td class="paramname"> <em>img</em> </td> 288.4392 + <td> ) </td> 288.4393 + <td><code> [inline]</code></td> 288.4394 + </tr> 288.4395 + </table> 288.4396 +</div> 288.4397 +<div class="memdoc"> 288.4398 + 288.4399 +<p> 288.4400 +Default copy constructor. 288.4401 +<p> 288.4402 +The default copy constructor creates a new instance image having same dimensions (<a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a>, <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>, <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a>, <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a>) and same pixel values as the input image <code>img</code>. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4403 + <table border="0" cellspacing="2" cellpadding="0"> 288.4404 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>The input image to copy. </td></tr> 288.4405 + </table> 288.4406 +</dl> 288.4407 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4408 +<li>If the input image <code>img</code> is non-shared or have a different template type <code>t</code> != <code>T</code>, the default copy constructor allocates a new pixel buffer and copy the pixel data of <code>img</code> into it. In this case, the pointers <a class="el" href="structcimg__library_1_1CImg.html#c88dceffbecaed1137b0e27783adbcc5">data</a> to the pixel buffers of the two images are different and the resulting instance image is non-shared.</li><li>If the input image <code>img</code> is shared and has the same template type <code>t</code> == <code>T</code>, the default copy constructor does not allocate a new pixel buffer and the resulting instance image shares its pixel buffer with the input image <code>img</code>, which means that modifying pixels of <code>img</code> also modifies the created instance image.</li><li>Copying an image having a different template type <code>t</code> != <code>T</code> performs a crude static cast conversion of each pixel value from type <code>t</code> to type <code>T</code>.</li><li>Copying an image having the same template type <code>t</code> == <code>T</code> is significantly faster. </li></ul> 288.4409 +</dd></dl> 288.4410 + 288.4411 +</div> 288.4412 +</div><p> 288.4413 +<a class="anchor" name="8dfaf8ddcc86f17442f8eeb3102d0662"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="8dfaf8ddcc86f17442f8eeb3102d0662" args="(const CImg< t > &img, const bool shared)" --> 288.4414 +<div class="memitem"> 288.4415 +<div class="memproto"> 288.4416 + <table class="memname"> 288.4417 + <tr> 288.4418 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4419 + <td>(</td> 288.4420 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4421 + <td class="paramname"> <em>img</em>, </td> 288.4422 + </tr> 288.4423 + <tr> 288.4424 + <td class="paramkey"></td> 288.4425 + <td></td> 288.4426 + <td class="paramtype">const bool </td> 288.4427 + <td class="paramname"> <em>shared</em></td><td> </td> 288.4428 + </tr> 288.4429 + <tr> 288.4430 + <td></td> 288.4431 + <td>)</td> 288.4432 + <td></td><td></td><td><code> [inline]</code></td> 288.4433 + </tr> 288.4434 + </table> 288.4435 +</div> 288.4436 +<div class="memdoc"> 288.4437 + 288.4438 +<p> 288.4439 +Advanced copy constructor. 288.4440 +<p> 288.4441 +The advanced copy constructor - as the default constructor <a class="el" href="structcimg__library_1_1CImg.html#8479cd0cf615e3131efcabac1e3ff004" title="Default copy constructor.">CImg(const CImg< t >&)</a> - creates a new instance image having same dimensions <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a>, <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>, <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a>, <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a> and same pixel values as the input image <code>img</code>. But it also decides if the created instance image shares its memory with the input image <code>img</code> (if the input parameter <code>shared</code> is set to <code>true</code>) or not (if the input parameter <code>shared</code> is set to <code>false</code>). <dl compact><dt><b>Parameters:</b></dt><dd> 288.4442 + <table border="0" cellspacing="2" cellpadding="0"> 288.4443 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>The input image to copy. </td></tr> 288.4444 + <tr><td valign="top"></td><td valign="top"><em>shared</em> </td><td>Boolean flag that decides if the copy is shared on non-shared. </td></tr> 288.4445 + </table> 288.4446 +</dl> 288.4447 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4448 +<li>It is not possible to create a shared copy if the input image <code>img</code> is empty or has a different pixel type <code>t</code> != <code>T</code>.</li><li>If a non-shared copy of the input image <code>img</code> is created, a new memory buffer is allocated for pixel data.</li><li>If a shared copy of the input image <code>img</code> is created, no extra memory is allocated and the pixel buffer of the instance image is the same as the one used by the input image <code>img</code>. </li></ul> 288.4449 +</dd></dl> 288.4450 + 288.4451 +</div> 288.4452 +</div><p> 288.4453 +<a class="anchor" name="ade5358c8a81825b86e6c654194b33d2"></a><!-- doxytag: member="cimg_library::CImg::CImg" ref="ade5358c8a81825b86e6c654194b33d2" args="(const char *const filename)" --> 288.4454 +<div class="memitem"> 288.4455 +<div class="memproto"> 288.4456 + <table class="memname"> 288.4457 + <tr> 288.4458 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a> </td> 288.4459 + <td>(</td> 288.4460 + <td class="paramtype">const char *const </td> 288.4461 + <td class="paramname"> <em>filename</em> </td> 288.4462 + <td> ) </td> 288.4463 + <td><code> [inline]</code></td> 288.4464 + </tr> 288.4465 + </table> 288.4466 +</div> 288.4467 +<div class="memdoc"> 288.4468 + 288.4469 +<p> 288.4470 +Construct an image from an image file. 288.4471 +<p> 288.4472 +This constructor creates an instance image by reading it from a file. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4473 + <table border="0" cellspacing="2" cellpadding="0"> 288.4474 + <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>Filename of the image file. </td></tr> 288.4475 + </table> 288.4476 +</dl> 288.4477 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4478 +<li>The image format is deduced from the filename only by looking for the filename extension i.e. without analyzing the file itself.</li><li>Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. More informations on this topic can be found in cimg_files_io.</li><li>If the filename is not found, a CImgIOException is thrown by this constructor. </li></ul> 288.4479 +</dd></dl> 288.4480 + 288.4481 +</div> 288.4482 +</div><p> 288.4483 +<hr><h2>Member Function Documentation</h2> 288.4484 +<a class="anchor" name="65018fb0cbdbd9e8d1404321cd69bfe5"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="65018fb0cbdbd9e8d1404321cd69bfe5" args="()" --> 288.4485 +<div class="memitem"> 288.4486 +<div class="memproto"> 288.4487 + <table class="memname"> 288.4488 + <tr> 288.4489 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4490 + <td>(</td> 288.4491 + <td class="paramname"> </td> 288.4492 + <td> ) </td> 288.4493 + <td><code> [inline]</code></td> 288.4494 + </tr> 288.4495 + </table> 288.4496 +</div> 288.4497 +<div class="memdoc"> 288.4498 + 288.4499 +<p> 288.4500 +In-place version of the default constructor/destructor. 288.4501 +<p> 288.4502 +This function replaces the instance image by an empty image. <dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4503 +<li>Memory used by the previous content of the instance image is freed if necessary.</li><li>If the instance image was initially shared, it is replaced by a (non-shared) empty image.</li><li>This function is useful to free memory used by an image that is not of use, but which has been created in the current code scope (i.e. not destroyed yet). </li></ul> 288.4504 +</dd></dl> 288.4505 + 288.4506 +</div> 288.4507 +</div><p> 288.4508 +<a class="anchor" name="b5cdf8f13cc7065fef4da8214ff36d5d"></a><!-- doxytag: member="cimg_library::CImg::clear" ref="b5cdf8f13cc7065fef4da8214ff36d5d" args="()" --> 288.4509 +<div class="memitem"> 288.4510 +<div class="memproto"> 288.4511 + <table class="memname"> 288.4512 + <tr> 288.4513 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& clear </td> 288.4514 + <td>(</td> 288.4515 + <td class="paramname"> </td> 288.4516 + <td> ) </td> 288.4517 + <td><code> [inline]</code></td> 288.4518 + </tr> 288.4519 + </table> 288.4520 +</div> 288.4521 +<div class="memdoc"> 288.4522 + 288.4523 +<p> 288.4524 +In-place version of the default constructor. 288.4525 +<p> 288.4526 +This function is strictly equivalent to <a class="el" href="structcimg__library_1_1CImg.html#65018fb0cbdbd9e8d1404321cd69bfe5">assign()</a> and has been introduced for having a STL-compliant function name. 288.4527 +</div> 288.4528 +</div><p> 288.4529 +<a class="anchor" name="55e2f2335ea8060148c59ec4f57846e2"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="55e2f2335ea8060148c59ec4f57846e2" args="(const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 288.4530 +<div class="memitem"> 288.4531 +<div class="memproto"> 288.4532 + <table class="memname"> 288.4533 + <tr> 288.4534 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4535 + <td>(</td> 288.4536 + <td class="paramtype">const unsigned int </td> 288.4537 + <td class="paramname"> <em>dx</em>, </td> 288.4538 + </tr> 288.4539 + <tr> 288.4540 + <td class="paramkey"></td> 288.4541 + <td></td> 288.4542 + <td class="paramtype">const unsigned int </td> 288.4543 + <td class="paramname"> <em>dy</em> = <code>1</code>, </td> 288.4544 + </tr> 288.4545 + <tr> 288.4546 + <td class="paramkey"></td> 288.4547 + <td></td> 288.4548 + <td class="paramtype">const unsigned int </td> 288.4549 + <td class="paramname"> <em>dz</em> = <code>1</code>, </td> 288.4550 + </tr> 288.4551 + <tr> 288.4552 + <td class="paramkey"></td> 288.4553 + <td></td> 288.4554 + <td class="paramtype">const unsigned int </td> 288.4555 + <td class="paramname"> <em>dv</em> = <code>1</code></td><td> </td> 288.4556 + </tr> 288.4557 + <tr> 288.4558 + <td></td> 288.4559 + <td>)</td> 288.4560 + <td></td><td></td><td><code> [inline]</code></td> 288.4561 + </tr> 288.4562 + </table> 288.4563 +</div> 288.4564 +<div class="memdoc"> 288.4565 + 288.4566 +<p> 288.4567 +In-place version of the previous constructor. 288.4568 +<p> 288.4569 +This function replaces the instance image by a new image of size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) with pixels of type <code>T</code>. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4570 + <table border="0" cellspacing="2" cellpadding="0"> 288.4571 + <tr><td valign="top"></td><td valign="top"><em>dx</em> </td><td>Desired size along the X-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> of the image. </td></tr> 288.4572 + <tr><td valign="top"></td><td valign="top"><em>dy</em> </td><td>Desired size along the Y-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> of the image. </td></tr> 288.4573 + <tr><td valign="top"></td><td valign="top"><em>dz</em> </td><td>Desired size along the Z-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> of the image. </td></tr> 288.4574 + <tr><td valign="top"></td><td valign="top"><em>dv</em> </td><td>Desired size along the V-axis, i.e. the number of image channels <code>dim</code>.<ul> 288.4575 +<li>If one of the input dimension <code>dx</code>,<code>dy</code>,<code>dz</code> or <code>dv</code> is set to 0, the instance image becomes empty and all has its dimensions set to 0. No memory for pixel data is then allocated.</li><li>Memory buffer used to store previous pixel values is freed if necessary.</li><li>If the instance image is shared, this constructor actually does nothing more than verifying that new and old image dimensions fit.</li><li>Image pixels allocated by this function are <b>not</b> <b>initialized</b>. Use the function <a class="el" href="structcimg__library_1_1CImg.html#14047abcb2a67ba0dadc92e34b456111" title="In-place version of the previous constructor.">assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int,const T)</a> to assign an image of desired size with pixels set to a particular value. </li></ul> 288.4576 +</td></tr> 288.4577 + </table> 288.4578 +</dl> 288.4579 + 288.4580 +</div> 288.4581 +</div><p> 288.4582 +<a class="anchor" name="14047abcb2a67ba0dadc92e34b456111"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="14047abcb2a67ba0dadc92e34b456111" args="(const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv, const T val)" --> 288.4583 +<div class="memitem"> 288.4584 +<div class="memproto"> 288.4585 + <table class="memname"> 288.4586 + <tr> 288.4587 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4588 + <td>(</td> 288.4589 + <td class="paramtype">const unsigned int </td> 288.4590 + <td class="paramname"> <em>dx</em>, </td> 288.4591 + </tr> 288.4592 + <tr> 288.4593 + <td class="paramkey"></td> 288.4594 + <td></td> 288.4595 + <td class="paramtype">const unsigned int </td> 288.4596 + <td class="paramname"> <em>dy</em>, </td> 288.4597 + </tr> 288.4598 + <tr> 288.4599 + <td class="paramkey"></td> 288.4600 + <td></td> 288.4601 + <td class="paramtype">const unsigned int </td> 288.4602 + <td class="paramname"> <em>dz</em>, </td> 288.4603 + </tr> 288.4604 + <tr> 288.4605 + <td class="paramkey"></td> 288.4606 + <td></td> 288.4607 + <td class="paramtype">const unsigned int </td> 288.4608 + <td class="paramname"> <em>dv</em>, </td> 288.4609 + </tr> 288.4610 + <tr> 288.4611 + <td class="paramkey"></td> 288.4612 + <td></td> 288.4613 + <td class="paramtype">const T </td> 288.4614 + <td class="paramname"> <em>val</em></td><td> </td> 288.4615 + </tr> 288.4616 + <tr> 288.4617 + <td></td> 288.4618 + <td>)</td> 288.4619 + <td></td><td></td><td><code> [inline]</code></td> 288.4620 + </tr> 288.4621 + </table> 288.4622 +</div> 288.4623 +<div class="memdoc"> 288.4624 + 288.4625 +<p> 288.4626 +In-place version of the previous constructor. 288.4627 +<p> 288.4628 +This function replaces the instance image by a new image of size (<code>dx</code>,<code>dy</code>,<code>dz</code>,<code>dv</code>) with pixels of type <code>T</code> and sets all pixel values of the instance image to <code>val</code>. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4629 + <table border="0" cellspacing="2" cellpadding="0"> 288.4630 + <tr><td valign="top"></td><td valign="top"><em>dx</em> </td><td>Desired size along the X-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> of the image. </td></tr> 288.4631 + <tr><td valign="top"></td><td valign="top"><em>dy</em> </td><td>Desired size along the Y-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> of the image. </td></tr> 288.4632 + <tr><td valign="top"></td><td valign="top"><em>dz</em> </td><td>Desired size along the Z-axis, i.e. the <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> of the image. </td></tr> 288.4633 + <tr><td valign="top"></td><td valign="top"><em>dv</em> </td><td>Desired size along the V-axis, i.e. the number of image channels <code>dim</code>. </td></tr> 288.4634 + <tr><td valign="top"></td><td valign="top"><em>val</em> </td><td>Default value for image pixels. </td></tr> 288.4635 + </table> 288.4636 +</dl> 288.4637 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4638 +<li>This function has the same properties as <a class="el" href="structcimg__library_1_1CImg.html#55e2f2335ea8060148c59ec4f57846e2" title="In-place version of the previous constructor.">assign(const unsigned int,const unsigned int,const unsigned int,const unsigned int)</a>. </li></ul> 288.4639 +</dd></dl> 288.4640 + 288.4641 +</div> 288.4642 +</div><p> 288.4643 +<a class="anchor" name="0fb4ca12616b7a1a05a9b3cc62878df4"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="0fb4ca12616b7a1a05a9b3cc62878df4" args="(const CImg< t > &img)" --> 288.4644 +<div class="memitem"> 288.4645 +<div class="memproto"> 288.4646 + <table class="memname"> 288.4647 + <tr> 288.4648 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4649 + <td>(</td> 288.4650 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4651 + <td class="paramname"> <em>img</em> </td> 288.4652 + <td> ) </td> 288.4653 + <td><code> [inline]</code></td> 288.4654 + </tr> 288.4655 + </table> 288.4656 +</div> 288.4657 +<div class="memdoc"> 288.4658 + 288.4659 +<p> 288.4660 +In-place version of the default copy constructor. 288.4661 +<p> 288.4662 +This function assigns a copy of the input image <code>img</code> to the current instance image. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4663 + <table border="0" cellspacing="2" cellpadding="0"> 288.4664 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>The input image to copy. </td></tr> 288.4665 + </table> 288.4666 +</dl> 288.4667 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4668 +<li>If the instance image is not shared, the content of the input image <code>img</code> is copied into a new buffer becoming the new pixel buffer of the instance image, while the old pixel buffer is freed if necessary.</li><li>If the instance image is shared, the content of the input image <code>img</code> is copied into the current (shared) pixel buffer of the instance image, modifying then the image referenced by the shared instance image. The instance image still remains shared. </li></ul> 288.4669 +</dd></dl> 288.4670 + 288.4671 +</div> 288.4672 +</div><p> 288.4673 +<a class="anchor" name="934bab7595fd98de5131d5d2394e4a81"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="934bab7595fd98de5131d5d2394e4a81" args="(const CImg< t > &img, const bool shared)" --> 288.4674 +<div class="memitem"> 288.4675 +<div class="memproto"> 288.4676 + <table class="memname"> 288.4677 + <tr> 288.4678 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4679 + <td>(</td> 288.4680 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4681 + <td class="paramname"> <em>img</em>, </td> 288.4682 + </tr> 288.4683 + <tr> 288.4684 + <td class="paramkey"></td> 288.4685 + <td></td> 288.4686 + <td class="paramtype">const bool </td> 288.4687 + <td class="paramname"> <em>shared</em></td><td> </td> 288.4688 + </tr> 288.4689 + <tr> 288.4690 + <td></td> 288.4691 + <td>)</td> 288.4692 + <td></td><td></td><td><code> [inline]</code></td> 288.4693 + </tr> 288.4694 + </table> 288.4695 +</div> 288.4696 +<div class="memdoc"> 288.4697 + 288.4698 +<p> 288.4699 +In-place version of the advanced constructor. 288.4700 +<p> 288.4701 +This function - as the simpler function <a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4" title="In-place version of the default copy constructor.">assign(const CImg< t >&)</a> - assigns a copy of the input image <code>img</code> to the current instance image. But it also decides if the copy is shared (if the input parameter <code>shared</code> is set to <code>true</code>) or non-shared (if the input parameter <code>shared</code> is set to <code>false</code>). <dl compact><dt><b>Parameters:</b></dt><dd> 288.4702 + <table border="0" cellspacing="2" cellpadding="0"> 288.4703 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>The input image to copy. </td></tr> 288.4704 + <tr><td valign="top"></td><td valign="top"><em>shared</em> </td><td>Boolean flag that decides if the copy is shared or non-shared. </td></tr> 288.4705 + </table> 288.4706 +</dl> 288.4707 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.4708 +<li>It is not possible to assign a shared copy if the input image <code>img</code> is empty or has a different pixel type <code>t</code> != <code>T</code>.</li><li>If a non-shared copy of the input image <code>img</code> is assigned, a new memory buffer is allocated for pixel data.</li><li>If a shared copy of the input image <code>img</code> is assigned, no extra memory is allocated and the pixel buffer of the instance image is the same as the one used by the input image <code>img</code>. </li></ul> 288.4709 +</dd></dl> 288.4710 + 288.4711 +</div> 288.4712 +</div><p> 288.4713 +<a class="anchor" name="78c78d152f5012d2e8fdcc35235c62a4"></a><!-- doxytag: member="cimg_library::CImg::assign" ref="78c78d152f5012d2e8fdcc35235c62a4" args="(const char *const filename)" --> 288.4714 +<div class="memitem"> 288.4715 +<div class="memproto"> 288.4716 + <table class="memname"> 288.4717 + <tr> 288.4718 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& assign </td> 288.4719 + <td>(</td> 288.4720 + <td class="paramtype">const char *const </td> 288.4721 + <td class="paramname"> <em>filename</em> </td> 288.4722 + <td> ) </td> 288.4723 + <td><code> [inline]</code></td> 288.4724 + </tr> 288.4725 + </table> 288.4726 +</div> 288.4727 +<div class="memdoc"> 288.4728 + 288.4729 +<p> 288.4730 +In-place version of the previous constructor. 288.4731 +<p> 288.4732 +This function replaces the instance image by the one that have been read from the given file. <dl compact><dt><b>Parameters:</b></dt><dd> 288.4733 + <table border="0" cellspacing="2" cellpadding="0"> 288.4734 + <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>Filename of the image file.<ul> 288.4735 +<li>The image format is deduced from the filename only by looking for the filename extension i.e. without analyzing the file itself.</li><li>Recognized image formats depend on the tools installed on your system or the external libraries you use to link your code with. More informations on this topic can be found in cimg_files_io.</li><li>If the filename is not found, a CImgIOException is thrown by this constructor. </li></ul> 288.4736 +</td></tr> 288.4737 + </table> 288.4738 +</dl> 288.4739 + 288.4740 +</div> 288.4741 +</div><p> 288.4742 +<a class="anchor" name="b3b0efc40be1da20da1fbddfad758568"></a><!-- doxytag: member="cimg_library::CImg::transfer_to" ref="b3b0efc40be1da20da1fbddfad758568" args="(CImg< t > &img)" --> 288.4743 +<div class="memitem"> 288.4744 +<div class="memproto"> 288.4745 + <table class="memname"> 288.4746 + <tr> 288.4747 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><t>& transfer_to </td> 288.4748 + <td>(</td> 288.4749 + <td class="paramtype"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4750 + <td class="paramname"> <em>img</em> </td> 288.4751 + <td> ) </td> 288.4752 + <td><code> [inline]</code></td> 288.4753 + </tr> 288.4754 + </table> 288.4755 +</div> 288.4756 +<div class="memdoc"> 288.4757 + 288.4758 +<p> 288.4759 +Transfer the content of the instance image into another one in a way that memory copies are avoided if possible. 288.4760 +<p> 288.4761 +The instance image is always empty after a call to this function. 288.4762 +</div> 288.4763 +</div><p> 288.4764 +<a class="anchor" name="b7d3a61366cf906c03af6c8fa13309a7"></a><!-- doxytag: member="cimg_library::CImg::pixel_type" ref="b7d3a61366cf906c03af6c8fa13309a7" args="()" --> 288.4765 +<div class="memitem"> 288.4766 +<div class="memproto"> 288.4767 + <table class="memname"> 288.4768 + <tr> 288.4769 + <td class="memname">static const char* pixel_type </td> 288.4770 + <td>(</td> 288.4771 + <td class="paramname"> </td> 288.4772 + <td> ) </td> 288.4773 + <td><code> [inline, static]</code></td> 288.4774 + </tr> 288.4775 + </table> 288.4776 +</div> 288.4777 +<div class="memdoc"> 288.4778 + 288.4779 +<p> 288.4780 +Return the type of the pixel values. 288.4781 +<p> 288.4782 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>a string describing the type of the image pixels (template parameter <code>T</code>).<ul> 288.4783 +<li>The string returned may contains spaces (<code>"unsigned char"</code>).</li><li>If the template parameter T does not correspond to a registered type, the string <code>"unknown"</code> is returned. </li></ul> 288.4784 +</dd></dl> 288.4785 + 288.4786 +</div> 288.4787 +</div><p> 288.4788 +<a class="anchor" name="3e13243636f944bad8351324f2910e2b"></a><!-- doxytag: member="cimg_library::CImg::size" ref="3e13243636f944bad8351324f2910e2b" args="() const " --> 288.4789 +<div class="memitem"> 288.4790 +<div class="memproto"> 288.4791 + <table class="memname"> 288.4792 + <tr> 288.4793 + <td class="memname">unsigned long size </td> 288.4794 + <td>(</td> 288.4795 + <td class="paramname"> </td> 288.4796 + <td> ) </td> 288.4797 + <td> const<code> [inline]</code></td> 288.4798 + </tr> 288.4799 + </table> 288.4800 +</div> 288.4801 +<div class="memdoc"> 288.4802 + 288.4803 +<p> 288.4804 +Return the total number of pixel values in an image. 288.4805 +<p> 288.4806 +<ul> 288.4807 +<li>Equivalent to : <a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a" title="Return the number of columns of the instance image (size along the X-axis, i.e image...">dimx()</a> * <a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d" title="Return the number of rows of the instance image (size along the Y-axis, i.e image...">dimy()</a> * <a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215" title="Return the number of slices of the instance image (size along the Z-axis).">dimz()</a> * <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a>.</li></ul> 288.4808 +<p> 288.4809 +<dl class="user" compact><dt><b>example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<> img(100,100,1,3); 288.4810 + <span class="keywordflow">if</span> (img.size()==100*100*3) std::fprintf(stderr,<span class="stringliteral">"This statement is true"</span>); 288.4811 +</pre></div> </dd></dl> 288.4812 + 288.4813 +</div> 288.4814 +</div><p> 288.4815 +<a class="anchor" name="abc5597643805d6e4f11100eee6b2852"></a><!-- doxytag: member="cimg_library::CImg::ptr" ref="abc5597643805d6e4f11100eee6b2852" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)" --> 288.4816 +<div class="memitem"> 288.4817 +<div class="memproto"> 288.4818 + <table class="memname"> 288.4819 + <tr> 288.4820 + <td class="memname">T* ptr </td> 288.4821 + <td>(</td> 288.4822 + <td class="paramtype">const unsigned int </td> 288.4823 + <td class="paramname"> <em>x</em>, </td> 288.4824 + </tr> 288.4825 + <tr> 288.4826 + <td class="paramkey"></td> 288.4827 + <td></td> 288.4828 + <td class="paramtype">const unsigned int </td> 288.4829 + <td class="paramname"> <em>y</em> = <code>0</code>, </td> 288.4830 + </tr> 288.4831 + <tr> 288.4832 + <td class="paramkey"></td> 288.4833 + <td></td> 288.4834 + <td class="paramtype">const unsigned int </td> 288.4835 + <td class="paramname"> <em>z</em> = <code>0</code>, </td> 288.4836 + </tr> 288.4837 + <tr> 288.4838 + <td class="paramkey"></td> 288.4839 + <td></td> 288.4840 + <td class="paramtype">const unsigned int </td> 288.4841 + <td class="paramname"> <em>v</em> = <code>0</code></td><td> </td> 288.4842 + </tr> 288.4843 + <tr> 288.4844 + <td></td> 288.4845 + <td>)</td> 288.4846 + <td></td><td></td><td><code> [inline]</code></td> 288.4847 + </tr> 288.4848 + </table> 288.4849 +</div> 288.4850 +<div class="memdoc"> 288.4851 + 288.4852 +<p> 288.4853 +Return a pointer to the pixel value located at (<code>x</code>,<code>y</code>,<code>z</code>,<code>v</code>). 288.4854 +<p> 288.4855 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.4856 + <table border="0" cellspacing="2" cellpadding="0"> 288.4857 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>X-coordinate of the pixel. </td></tr> 288.4858 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>Y-coordinate of the pixel. </td></tr> 288.4859 + <tr><td valign="top"></td><td valign="top"><em>z</em> </td><td>Z-coordinate of the pixel. </td></tr> 288.4860 + <tr><td valign="top"></td><td valign="top"><em>v</em> </td><td>V-coordinate of the pixel.</td></tr> 288.4861 + </table> 288.4862 +</dl> 288.4863 +<ul> 288.4864 +<li>When called without parameters, <a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda" title="Return a pointer to the pixel buffer.">ptr()</a> returns a pointer to the begining of the pixel buffer.</li><li>If the macro <code>'cimg_debug'>=3</code>, boundary checking is performed and warning messages may appear if given coordinates are outside the image range (but function performances decrease).</li></ul> 288.4865 +<p> 288.4866 +<dl class="user" compact><dt><b>example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<float> img(100,100,1,1,0); <span class="comment">// Define a 100x100 greyscale image with float-valued pixels.</span> 288.4867 + <span class="keywordtype">float</span> *<a class="code" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda" title="Return a pointer to the pixel buffer.">ptr</a> = <a class="code" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda" title="Return a pointer to the pixel buffer.">ptr</a>(10,10); <span class="comment">// Get a pointer to the pixel located at (10,10).</span> 288.4868 + <span class="keywordtype">float</span> val = *ptr; <span class="comment">// Get the pixel value.</span> 288.4869 +</pre></div> </dd></dl> 288.4870 + 288.4871 +</div> 288.4872 +</div><p> 288.4873 +<a class="anchor" name="b37041213cf48faf44debd569ae93127"></a><!-- doxytag: member="cimg_library::CImg::is_overlapped" ref="b37041213cf48faf44debd569ae93127" args="(const CImg< t > &img) const " --> 288.4874 +<div class="memitem"> 288.4875 +<div class="memproto"> 288.4876 + <table class="memname"> 288.4877 + <tr> 288.4878 + <td class="memname">bool is_overlapped </td> 288.4879 + <td>(</td> 288.4880 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.4881 + <td class="paramname"> <em>img</em> </td> 288.4882 + <td> ) </td> 288.4883 + <td> const<code> [inline]</code></td> 288.4884 + </tr> 288.4885 + </table> 288.4886 +</div> 288.4887 +<div class="memdoc"> 288.4888 + 288.4889 +<p> 288.4890 +Return <code>true</code> if the memory buffers of the two images overlaps. 288.4891 +<p> 288.4892 +May happen when using shared images. 288.4893 +</div> 288.4894 +</div><p> 288.4895 +<a class="anchor" name="afc4c62eb956815235bb896a1707f711"></a><!-- doxytag: member="cimg_library::CImg::offset" ref="afc4c62eb956815235bb896a1707f711" args="(const int x, const int y=0, const int z=0, const int v=0) const " --> 288.4896 +<div class="memitem"> 288.4897 +<div class="memproto"> 288.4898 + <table class="memname"> 288.4899 + <tr> 288.4900 + <td class="memname">long offset </td> 288.4901 + <td>(</td> 288.4902 + <td class="paramtype">const int </td> 288.4903 + <td class="paramname"> <em>x</em>, </td> 288.4904 + </tr> 288.4905 + <tr> 288.4906 + <td class="paramkey"></td> 288.4907 + <td></td> 288.4908 + <td class="paramtype">const int </td> 288.4909 + <td class="paramname"> <em>y</em> = <code>0</code>, </td> 288.4910 + </tr> 288.4911 + <tr> 288.4912 + <td class="paramkey"></td> 288.4913 + <td></td> 288.4914 + <td class="paramtype">const int </td> 288.4915 + <td class="paramname"> <em>z</em> = <code>0</code>, </td> 288.4916 + </tr> 288.4917 + <tr> 288.4918 + <td class="paramkey"></td> 288.4919 + <td></td> 288.4920 + <td class="paramtype">const int </td> 288.4921 + <td class="paramname"> <em>v</em> = <code>0</code></td><td> </td> 288.4922 + </tr> 288.4923 + <tr> 288.4924 + <td></td> 288.4925 + <td>)</td> 288.4926 + <td></td><td></td><td> const<code> [inline]</code></td> 288.4927 + </tr> 288.4928 + </table> 288.4929 +</div> 288.4930 +<div class="memdoc"> 288.4931 + 288.4932 +<p> 288.4933 +Return the offset of the pixel coordinates (<code>x</code>,<code>y</code>,<code>z</code>,<code>v</code>) with respect to the data pointer <code>data</code>. 288.4934 +<p> 288.4935 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.4936 + <table border="0" cellspacing="2" cellpadding="0"> 288.4937 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>X-coordinate of the pixel. </td></tr> 288.4938 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>Y-coordinate of the pixel. </td></tr> 288.4939 + <tr><td valign="top"></td><td valign="top"><em>z</em> </td><td>Z-coordinate of the pixel. </td></tr> 288.4940 + <tr><td valign="top"></td><td valign="top"><em>v</em> </td><td>V-coordinate of the pixel.</td></tr> 288.4941 + </table> 288.4942 +</dl> 288.4943 +<ul> 288.4944 +<li>No checking is done on the validity of the given coordinates.</li></ul> 288.4945 +<p> 288.4946 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<float> img(100,100,1,3,0); <span class="comment">// Define a 100x100 color image with float-valued black pixels.</span> 288.4947 + <span class="keywordtype">long</span> off = img.offset(10,10,0,2); <span class="comment">// Get the offset of the blue value of the pixel located at (10,10).</span> 288.4948 + <span class="keywordtype">float</span> val = img[off]; <span class="comment">// Get the blue value of the pixel.</span> 288.4949 +</pre></div> </dd></dl> 288.4950 + 288.4951 +</div> 288.4952 +</div><p> 288.4953 +<a class="anchor" name="b8fbc19527504258380aaed12c4bec4b"></a><!-- doxytag: member="cimg_library::CImg::operator()" ref="b8fbc19527504258380aaed12c4bec4b" args="(const unsigned int x, const unsigned int y=0, const unsigned int z=0, const unsigned int v=0)" --> 288.4954 +<div class="memitem"> 288.4955 +<div class="memproto"> 288.4956 + <table class="memname"> 288.4957 + <tr> 288.4958 + <td class="memname">T& operator() </td> 288.4959 + <td>(</td> 288.4960 + <td class="paramtype">const unsigned int </td> 288.4961 + <td class="paramname"> <em>x</em>, </td> 288.4962 + </tr> 288.4963 + <tr> 288.4964 + <td class="paramkey"></td> 288.4965 + <td></td> 288.4966 + <td class="paramtype">const unsigned int </td> 288.4967 + <td class="paramname"> <em>y</em> = <code>0</code>, </td> 288.4968 + </tr> 288.4969 + <tr> 288.4970 + <td class="paramkey"></td> 288.4971 + <td></td> 288.4972 + <td class="paramtype">const unsigned int </td> 288.4973 + <td class="paramname"> <em>z</em> = <code>0</code>, </td> 288.4974 + </tr> 288.4975 + <tr> 288.4976 + <td class="paramkey"></td> 288.4977 + <td></td> 288.4978 + <td class="paramtype">const unsigned int </td> 288.4979 + <td class="paramname"> <em>v</em> = <code>0</code></td><td> </td> 288.4980 + </tr> 288.4981 + <tr> 288.4982 + <td></td> 288.4983 + <td>)</td> 288.4984 + <td></td><td></td><td><code> [inline]</code></td> 288.4985 + </tr> 288.4986 + </table> 288.4987 +</div> 288.4988 +<div class="memdoc"> 288.4989 + 288.4990 +<p> 288.4991 +Fast access to pixel value for reading or writing. 288.4992 +<p> 288.4993 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.4994 + <table border="0" cellspacing="2" cellpadding="0"> 288.4995 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>X-coordinate of the pixel. </td></tr> 288.4996 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>Y-coordinate of the pixel. </td></tr> 288.4997 + <tr><td valign="top"></td><td valign="top"><em>z</em> </td><td>Z-coordinate of the pixel. </td></tr> 288.4998 + <tr><td valign="top"></td><td valign="top"><em>v</em> </td><td>V-coordinate of the pixel.</td></tr> 288.4999 + </table> 288.5000 +</dl> 288.5001 +<ul> 288.5002 +<li>If one image dimension is equal to 1, it can be omitted in the coordinate list (see example below).</li><li>If the macro <code>'cimg_debug'>=3</code>, boundary checking is performed and warning messages may appear (but function performances decrease).</li></ul> 288.5003 +<p> 288.5004 +<dl class="user" compact><dt><b>example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<float> img(100,100,1,3,0); <span class="comment">// Define a 100x100 color image with float-valued black pixels.</span> 288.5005 + <span class="keyword">const</span> <span class="keywordtype">float</span> valR = img(10,10,0,0); <span class="comment">// Read the red component at coordinates (10,10).</span> 288.5006 + <span class="keyword">const</span> <span class="keywordtype">float</span> valG = img(10,10,0,1); <span class="comment">// Read the green component at coordinates (10,10)</span> 288.5007 + <span class="keyword">const</span> <span class="keywordtype">float</span> valB = img(10,10,2); <span class="comment">// Read the blue component at coordinates (10,10) (Z-coordinate omitted here).</span> 288.5008 + <span class="keyword">const</span> <span class="keywordtype">float</span> avg = (valR + valG + valB)/3; <span class="comment">// Compute average pixel value.</span> 288.5009 + img(10,10,0) = img(10,10,1) = img(10,10,2) = avg; <span class="comment">// Replace the pixel (10,10) by the average grey value.</span> 288.5010 +</pre></div> </dd></dl> 288.5011 + 288.5012 +</div> 288.5013 +</div><p> 288.5014 +<a class="anchor" name="87f4042f1af3428fa0ad1a9480286abe"></a><!-- doxytag: member="cimg_library::CImg::operator[]" ref="87f4042f1af3428fa0ad1a9480286abe" args="(const unsigned long off)" --> 288.5015 +<div class="memitem"> 288.5016 +<div class="memproto"> 288.5017 + <table class="memname"> 288.5018 + <tr> 288.5019 + <td class="memname">T& operator[] </td> 288.5020 + <td>(</td> 288.5021 + <td class="paramtype">const unsigned long </td> 288.5022 + <td class="paramname"> <em>off</em> </td> 288.5023 + <td> ) </td> 288.5024 + <td><code> [inline]</code></td> 288.5025 + </tr> 288.5026 + </table> 288.5027 +</div> 288.5028 +<div class="memdoc"> 288.5029 + 288.5030 +<p> 288.5031 +Fast access to pixel value for reading or writing, using an offset to the image pixel. 288.5032 +<p> 288.5033 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5034 + <table border="0" cellspacing="2" cellpadding="0"> 288.5035 + <tr><td valign="top"></td><td valign="top"><em>off</em> </td><td>Offset of the pixel according to the begining of the pixel buffer, given by <a class="el" href="structcimg__library_1_1CImg.html#3295aee3e56bc13ea3aa5d1a5dc6bcda" title="Return a pointer to the pixel buffer.">ptr()</a>.</td></tr> 288.5036 + </table> 288.5037 +</dl> 288.5038 +<ul> 288.5039 +<li>If the macro <code>'cimg_debug'>=3</code>, boundary checking is performed and warning messages may appear (but function performances decrease).</li><li>As pixel values are aligned in memory, this operator can sometime useful to access values easier than with <a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b" title="Fast access to pixel value for reading or writing.">operator()()</a> (see example below).</li></ul> 288.5040 +<p> 288.5041 +<dl class="user" compact><dt><b>example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<float> vec(1,10); <span class="comment">// Define a vector of float values (10 lines, 1 row).</span> 288.5042 + <span class="keyword">const</span> <span class="keywordtype">float</span> val1 = vec(0,4); <span class="comment">// Get the fifth element using operator()().</span> 288.5043 + <span class="keyword">const</span> <span class="keywordtype">float</span> val2 = vec[4]; <span class="comment">// Get the fifth element using operator[]. Here, val2==val1.</span> 288.5044 +</pre></div> </dd></dl> 288.5045 + 288.5046 +</div> 288.5047 +</div><p> 288.5048 +<a class="anchor" name="641a93939e495eec1749bb68197996ac"></a><!-- doxytag: member="cimg_library::CImg::variance" ref="641a93939e495eec1749bb68197996ac" args="(const unsigned int variance_method=1) const " --> 288.5049 +<div class="memitem"> 288.5050 +<div class="memproto"> 288.5051 + <table class="memname"> 288.5052 + <tr> 288.5053 + <td class="memname">Tfloat variance </td> 288.5054 + <td>(</td> 288.5055 + <td class="paramtype">const unsigned int </td> 288.5056 + <td class="paramname"> <em>variance_method</em> = <code>1</code> </td> 288.5057 + <td> ) </td> 288.5058 + <td> const<code> [inline]</code></td> 288.5059 + </tr> 288.5060 + </table> 288.5061 +</div> 288.5062 +<div class="memdoc"> 288.5063 + 288.5064 +<p> 288.5065 +Return the variance of the image. 288.5066 +<p> 288.5067 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5068 + <table border="0" cellspacing="2" cellpadding="0"> 288.5069 + <tr><td valign="top"></td><td valign="top"><em>variance_method</em> </td><td>Determines how to calculate the variance <table border="0" cellspacing="3" cellpadding="3"> 288.5070 +<tr> 288.5071 +<td>0 </td><td>Second moment: <img class="formulaInl" alt="$ v = 1/N \sum\limits_{k=1}^{N} (x_k - \bar x)^2 = 1/N \left( \sum\limits_{k=1}^N x_k^2 - \left( \sum\limits_{k=1}^N x_k \right)^2 / N \right) $" src="form_0.png"> with <img class="formulaInl" alt="$ \bar x = 1/N \sum\limits_{k=1}^N x_k $" src="form_1.png"> </td></tr> 288.5072 +<tr> 288.5073 +<td>1 </td><td>Best unbiased estimator: <img class="formulaInl" alt="$ v = \frac{1}{N-1} \sum\limits_{k=1}^{N} (x_k - \bar x)^2 $" src="form_2.png"> </td></tr> 288.5074 +<tr> 288.5075 +<td>2 </td><td>Least median of squares </td></tr> 288.5076 +<tr> 288.5077 +<td>3 </td><td>Least trimmed of squares </td></tr> 288.5078 +</table> 288.5079 +</td></tr> 288.5080 + </table> 288.5081 +</dl> 288.5082 + 288.5083 +</div> 288.5084 +</div><p> 288.5085 +<a class="anchor" name="6996328dda8169890a02942e19b6d445"></a><!-- doxytag: member="cimg_library::CImg::print" ref="6996328dda8169890a02942e19b6d445" args="(const char *title=0, const bool display_stats=true) const " --> 288.5086 +<div class="memitem"> 288.5087 +<div class="memproto"> 288.5088 + <table class="memname"> 288.5089 + <tr> 288.5090 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& print </td> 288.5091 + <td>(</td> 288.5092 + <td class="paramtype">const char * </td> 288.5093 + <td class="paramname"> <em>title</em> = <code>0</code>, </td> 288.5094 + </tr> 288.5095 + <tr> 288.5096 + <td class="paramkey"></td> 288.5097 + <td></td> 288.5098 + <td class="paramtype">const bool </td> 288.5099 + <td class="paramname"> <em>display_stats</em> = <code>true</code></td><td> </td> 288.5100 + </tr> 288.5101 + <tr> 288.5102 + <td></td> 288.5103 + <td>)</td> 288.5104 + <td></td><td></td><td> const<code> [inline]</code></td> 288.5105 + </tr> 288.5106 + </table> 288.5107 +</div> 288.5108 +<div class="memdoc"> 288.5109 + 288.5110 +<p> 288.5111 +Display informations about the image on the standard error output. 288.5112 +<p> 288.5113 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5114 + <table border="0" cellspacing="2" cellpadding="0"> 288.5115 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>Name for the considered image (optional). </td></tr> 288.5116 + <tr><td valign="top"></td><td valign="top"><em>display_stats</em> </td><td>Compute and display image statistics (optional). </td></tr> 288.5117 + </table> 288.5118 +</dl> 288.5119 + 288.5120 +</div> 288.5121 +</div><p> 288.5122 +<a class="anchor" name="b8993b2170b87343f86f3e07fe0b7348"></a><!-- doxytag: member="cimg_library::CImg::operator=" ref="b8993b2170b87343f86f3e07fe0b7348" args="(const CImg< t > &img)" --> 288.5123 +<div class="memitem"> 288.5124 +<div class="memproto"> 288.5125 + <table class="memname"> 288.5126 + <tr> 288.5127 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& operator= </td> 288.5128 + <td>(</td> 288.5129 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.5130 + <td class="paramname"> <em>img</em> </td> 288.5131 + <td> ) </td> 288.5132 + <td><code> [inline]</code></td> 288.5133 + </tr> 288.5134 + </table> 288.5135 +</div> 288.5136 +<div class="memdoc"> 288.5137 + 288.5138 +<p> 288.5139 +Assignment operator. 288.5140 +<p> 288.5141 +This operator assigns a copy of the input image <code>img</code> to the current instance image. <dl compact><dt><b>Parameters:</b></dt><dd> 288.5142 + <table border="0" cellspacing="2" cellpadding="0"> 288.5143 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>The input image to copy. </td></tr> 288.5144 + </table> 288.5145 +</dl> 288.5146 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.5147 +<li>This operator is strictly equivalent to the function <a class="el" href="structcimg__library_1_1CImg.html#0fb4ca12616b7a1a05a9b3cc62878df4" title="In-place version of the default copy constructor.">assign(const CImg< t >&)</a> and has exactly the same properties. </li></ul> 288.5148 +</dd></dl> 288.5149 + 288.5150 +</div> 288.5151 +</div><p> 288.5152 +<a class="anchor" name="372633e285ab4266465e4101e72e74aa"></a><!-- doxytag: member="cimg_library::CImg::operator=" ref="372633e285ab4266465e4101e72e74aa" args="(const T *buf)" --> 288.5153 +<div class="memitem"> 288.5154 +<div class="memproto"> 288.5155 + <table class="memname"> 288.5156 + <tr> 288.5157 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& operator= </td> 288.5158 + <td>(</td> 288.5159 + <td class="paramtype">const T * </td> 288.5160 + <td class="paramname"> <em>buf</em> </td> 288.5161 + <td> ) </td> 288.5162 + <td><code> [inline]</code></td> 288.5163 + </tr> 288.5164 + </table> 288.5165 +</div> 288.5166 +<div class="memdoc"> 288.5167 + 288.5168 +<p> 288.5169 +Assign values of a C-array to the instance image. 288.5170 +<p> 288.5171 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5172 + <table border="0" cellspacing="2" cellpadding="0"> 288.5173 + <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>Pointer to a C-style array having a size of (at least) <code>this-><a class="el" href="structcimg__library_1_1CImg.html#3e13243636f944bad8351324f2910e2b" title="Return the total number of pixel values in an image.">size()</a></code>.</td></tr> 288.5174 + </table> 288.5175 +</dl> 288.5176 +<ul> 288.5177 +<li>Replace pixel values by the content of the array <code>buf</code>.</li><li>Warning : the value types in the array and in the image must be the same.</li></ul> 288.5178 +<p> 288.5179 +<dl class="user" compact><dt><b>example:</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="keywordtype">float</span> tab[4*4] = { 1,2,3,4, 5,6,7,8, 9,10,11,12, 13,14,15,16 }; <span class="comment">// Define a 4x4 matrix in C-style.</span> 288.5180 + CImg<float> matrice(4,4); <span class="comment">// Define a 4x4 greyscale image.</span> 288.5181 + matrice = tab; <span class="comment">// Fill the image by the values in tab.</span> 288.5182 +</pre></div> </dd></dl> 288.5183 + 288.5184 +</div> 288.5185 +</div><p> 288.5186 +<a class="anchor" name="637e0346bd7e4426d32e32aab42bd3f6"></a><!-- doxytag: member="cimg_library::CImg::operator+" ref="637e0346bd7e4426d32e32aab42bd3f6" args="() const " --> 288.5187 +<div class="memitem"> 288.5188 +<div class="memproto"> 288.5189 + <table class="memname"> 288.5190 + <tr> 288.5191 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T> operator+ </td> 288.5192 + <td>(</td> 288.5193 + <td class="paramname"> </td> 288.5194 + <td> ) </td> 288.5195 + <td> const<code> [inline]</code></td> 288.5196 + </tr> 288.5197 + </table> 288.5198 +</div> 288.5199 +<div class="memdoc"> 288.5200 + 288.5201 +<p> 288.5202 +Operator+. 288.5203 +<p> 288.5204 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.5205 +<li>This operator can be used to get a non-shared copy of an image. </li></ul> 288.5206 +</dd></dl> 288.5207 + 288.5208 +</div> 288.5209 +</div><p> 288.5210 +<a class="anchor" name="3619f9d2043ebaa67d21eb373ab4d22e"></a><!-- doxytag: member="cimg_library::CImg::round" ref="3619f9d2043ebaa67d21eb373ab4d22e" args="(const float x, const int rounding_type=0)" --> 288.5211 +<div class="memitem"> 288.5212 +<div class="memproto"> 288.5213 + <table class="memname"> 288.5214 + <tr> 288.5215 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& round </td> 288.5216 + <td>(</td> 288.5217 + <td class="paramtype">const float </td> 288.5218 + <td class="paramname"> <em>x</em>, </td> 288.5219 + </tr> 288.5220 + <tr> 288.5221 + <td class="paramkey"></td> 288.5222 + <td></td> 288.5223 + <td class="paramtype">const int </td> 288.5224 + <td class="paramname"> <em>rounding_type</em> = <code>0</code></td><td> </td> 288.5225 + </tr> 288.5226 + <tr> 288.5227 + <td></td> 288.5228 + <td>)</td> 288.5229 + <td></td><td></td><td><code> [inline]</code></td> 288.5230 + </tr> 288.5231 + </table> 288.5232 +</div> 288.5233 +<div class="memdoc"> 288.5234 + 288.5235 +<p> 288.5236 +Compute image with rounded pixel values. 288.5237 +<p> 288.5238 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5239 + <table border="0" cellspacing="2" cellpadding="0"> 288.5240 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>Rounding precision. </td></tr> 288.5241 + <tr><td valign="top"></td><td valign="top"><em>rounding_type</em> </td><td>Roundin type, can be 0 (nearest), 1 (forward), -1(backward). </td></tr> 288.5242 + </table> 288.5243 +</dl> 288.5244 + 288.5245 +</div> 288.5246 +</div><p> 288.5247 +<a class="anchor" name="494a1e1424510af07e705dfe9b5f78bd"></a><!-- doxytag: member="cimg_library::CImg::fill" ref="494a1e1424510af07e705dfe9b5f78bd" args="(const T val)" --> 288.5248 +<div class="memitem"> 288.5249 +<div class="memproto"> 288.5250 + <table class="memname"> 288.5251 + <tr> 288.5252 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& fill </td> 288.5253 + <td>(</td> 288.5254 + <td class="paramtype">const T </td> 288.5255 + <td class="paramname"> <em>val</em> </td> 288.5256 + <td> ) </td> 288.5257 + <td><code> [inline]</code></td> 288.5258 + </tr> 288.5259 + </table> 288.5260 +</div> 288.5261 +<div class="memdoc"> 288.5262 + 288.5263 +<p> 288.5264 +Fill an image by a value <code>val</code>. 288.5265 +<p> 288.5266 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5267 + <table border="0" cellspacing="2" cellpadding="0"> 288.5268 + <tr><td valign="top"></td><td valign="top"><em>val</em> </td><td>= fill value </td></tr> 288.5269 + </table> 288.5270 +</dl> 288.5271 +<dl class="note" compact><dt><b>Note:</b></dt><dd>All pixel values of the instance image will be initialized by <code>val</code>. </dd></dl> 288.5272 + 288.5273 +</div> 288.5274 +</div><p> 288.5275 +<a class="anchor" name="411ae06f4b7a9281dbe7ae608e5dadee"></a><!-- doxytag: member="cimg_library::CImg::threshold" ref="411ae06f4b7a9281dbe7ae608e5dadee" args="(const T value, const bool soft=false, const bool strict=false)" --> 288.5276 +<div class="memitem"> 288.5277 +<div class="memproto"> 288.5278 + <table class="memname"> 288.5279 + <tr> 288.5280 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& threshold </td> 288.5281 + <td>(</td> 288.5282 + <td class="paramtype">const T </td> 288.5283 + <td class="paramname"> <em>value</em>, </td> 288.5284 + </tr> 288.5285 + <tr> 288.5286 + <td class="paramkey"></td> 288.5287 + <td></td> 288.5288 + <td class="paramtype">const bool </td> 288.5289 + <td class="paramname"> <em>soft</em> = <code>false</code>, </td> 288.5290 + </tr> 288.5291 + <tr> 288.5292 + <td class="paramkey"></td> 288.5293 + <td></td> 288.5294 + <td class="paramtype">const bool </td> 288.5295 + <td class="paramname"> <em>strict</em> = <code>false</code></td><td> </td> 288.5296 + </tr> 288.5297 + <tr> 288.5298 + <td></td> 288.5299 + <td>)</td> 288.5300 + <td></td><td></td><td><code> [inline]</code></td> 288.5301 + </tr> 288.5302 + </table> 288.5303 +</div> 288.5304 +<div class="memdoc"> 288.5305 + 288.5306 +<p> 288.5307 +Threshold the image. 288.5308 +<p> 288.5309 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5310 + <table border="0" cellspacing="2" cellpadding="0"> 288.5311 + <tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>Threshold value. </td></tr> 288.5312 + <tr><td valign="top"></td><td valign="top"><em>soft</em> </td><td>Enable soft thresholding. </td></tr> 288.5313 + <tr><td valign="top"></td><td valign="top"><em>strict</em> </td><td>Tells if the threshold is strict. </td></tr> 288.5314 + </table> 288.5315 +</dl> 288.5316 + 288.5317 +</div> 288.5318 +</div><p> 288.5319 +<a class="anchor" name="8e890897305eb5c4d2a5664312633819"></a><!-- doxytag: member="cimg_library::CImg::rotate" ref="8e890897305eb5c4d2a5664312633819" args="(const float angle, const unsigned int border_conditions=3, const unsigned int interpolation=1)" --> 288.5320 +<div class="memitem"> 288.5321 +<div class="memproto"> 288.5322 + <table class="memname"> 288.5323 + <tr> 288.5324 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& rotate </td> 288.5325 + <td>(</td> 288.5326 + <td class="paramtype">const float </td> 288.5327 + <td class="paramname"> <em>angle</em>, </td> 288.5328 + </tr> 288.5329 + <tr> 288.5330 + <td class="paramkey"></td> 288.5331 + <td></td> 288.5332 + <td class="paramtype">const unsigned int </td> 288.5333 + <td class="paramname"> <em>border_conditions</em> = <code>3</code>, </td> 288.5334 + </tr> 288.5335 + <tr> 288.5336 + <td class="paramkey"></td> 288.5337 + <td></td> 288.5338 + <td class="paramtype">const unsigned int </td> 288.5339 + <td class="paramname"> <em>interpolation</em> = <code>1</code></td><td> </td> 288.5340 + </tr> 288.5341 + <tr> 288.5342 + <td></td> 288.5343 + <td>)</td> 288.5344 + <td></td><td></td><td><code> [inline]</code></td> 288.5345 + </tr> 288.5346 + </table> 288.5347 +</div> 288.5348 +<div class="memdoc"> 288.5349 + 288.5350 +<p> 288.5351 +Rotate an image. 288.5352 +<p> 288.5353 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5354 + <table border="0" cellspacing="2" cellpadding="0"> 288.5355 + <tr><td valign="top"></td><td valign="top"><em>angle</em> </td><td>= rotation angle (in degrees). </td></tr> 288.5356 + <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>= rotation type. can be :<ul> 288.5357 +<li>0 = zero-value at borders</li><li>1 = nearest pixel.</li><li>2 = Fourier style. </li></ul> 288.5358 +</td></tr> 288.5359 + </table> 288.5360 +</dl> 288.5361 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Returned image will probably have a different size than the instance image *this. </dd></dl> 288.5362 + 288.5363 +</div> 288.5364 +</div><p> 288.5365 +<a class="anchor" name="e4b06ab7123208c764f6fe1de4d29a39"></a><!-- doxytag: member="cimg_library::CImg::rotate" ref="e4b06ab7123208c764f6fe1de4d29a39" args="(const float angle, const float cx, const float cy, const float zoom, const unsigned int border_conditions=3, const unsigned int interpolation=1)" --> 288.5366 +<div class="memitem"> 288.5367 +<div class="memproto"> 288.5368 + <table class="memname"> 288.5369 + <tr> 288.5370 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& rotate </td> 288.5371 + <td>(</td> 288.5372 + <td class="paramtype">const float </td> 288.5373 + <td class="paramname"> <em>angle</em>, </td> 288.5374 + </tr> 288.5375 + <tr> 288.5376 + <td class="paramkey"></td> 288.5377 + <td></td> 288.5378 + <td class="paramtype">const float </td> 288.5379 + <td class="paramname"> <em>cx</em>, </td> 288.5380 + </tr> 288.5381 + <tr> 288.5382 + <td class="paramkey"></td> 288.5383 + <td></td> 288.5384 + <td class="paramtype">const float </td> 288.5385 + <td class="paramname"> <em>cy</em>, </td> 288.5386 + </tr> 288.5387 + <tr> 288.5388 + <td class="paramkey"></td> 288.5389 + <td></td> 288.5390 + <td class="paramtype">const float </td> 288.5391 + <td class="paramname"> <em>zoom</em>, </td> 288.5392 + </tr> 288.5393 + <tr> 288.5394 + <td class="paramkey"></td> 288.5395 + <td></td> 288.5396 + <td class="paramtype">const unsigned int </td> 288.5397 + <td class="paramname"> <em>border_conditions</em> = <code>3</code>, </td> 288.5398 + </tr> 288.5399 + <tr> 288.5400 + <td class="paramkey"></td> 288.5401 + <td></td> 288.5402 + <td class="paramtype">const unsigned int </td> 288.5403 + <td class="paramname"> <em>interpolation</em> = <code>1</code></td><td> </td> 288.5404 + </tr> 288.5405 + <tr> 288.5406 + <td></td> 288.5407 + <td>)</td> 288.5408 + <td></td><td></td><td><code> [inline]</code></td> 288.5409 + </tr> 288.5410 + </table> 288.5411 +</div> 288.5412 +<div class="memdoc"> 288.5413 + 288.5414 +<p> 288.5415 +Rotate an image around a center point (<code>cx</code>,<code>cy</code>). 288.5416 +<p> 288.5417 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5418 + <table border="0" cellspacing="2" cellpadding="0"> 288.5419 + <tr><td valign="top"></td><td valign="top"><em>angle</em> </td><td>= rotation angle (in degrees). </td></tr> 288.5420 + <tr><td valign="top"></td><td valign="top"><em>cx</em> </td><td>= X-coordinate of the rotation center. </td></tr> 288.5421 + <tr><td valign="top"></td><td valign="top"><em>cy</em> </td><td>= Y-coordinate of the rotation center. </td></tr> 288.5422 + <tr><td valign="top"></td><td valign="top"><em>zoom</em> </td><td>= zoom. </td></tr> 288.5423 + <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>= rotation type. can be :<ul> 288.5424 +<li>0 = zero-value at borders</li><li>1 = repeat image at borders</li><li>2 = zero-value at borders and linear interpolation </li></ul> 288.5425 +</td></tr> 288.5426 + </table> 288.5427 +</dl> 288.5428 + 288.5429 +</div> 288.5430 +</div><p> 288.5431 +<a class="anchor" name="a930a4b0563d7d0794661231310b36c4"></a><!-- doxytag: member="cimg_library::CImg::resize" ref="a930a4b0563d7d0794661231310b36c4" args="(const int pdx, const int pdy=-100, const int pdz=-100, const int pdv=-100, const int interpolation_type=1, const int border_condition=-1, const bool center=false)" --> 288.5432 +<div class="memitem"> 288.5433 +<div class="memproto"> 288.5434 + <table class="memname"> 288.5435 + <tr> 288.5436 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& resize </td> 288.5437 + <td>(</td> 288.5438 + <td class="paramtype">const int </td> 288.5439 + <td class="paramname"> <em>pdx</em>, </td> 288.5440 + </tr> 288.5441 + <tr> 288.5442 + <td class="paramkey"></td> 288.5443 + <td></td> 288.5444 + <td class="paramtype">const int </td> 288.5445 + <td class="paramname"> <em>pdy</em> = <code>-100</code>, </td> 288.5446 + </tr> 288.5447 + <tr> 288.5448 + <td class="paramkey"></td> 288.5449 + <td></td> 288.5450 + <td class="paramtype">const int </td> 288.5451 + <td class="paramname"> <em>pdz</em> = <code>-100</code>, </td> 288.5452 + </tr> 288.5453 + <tr> 288.5454 + <td class="paramkey"></td> 288.5455 + <td></td> 288.5456 + <td class="paramtype">const int </td> 288.5457 + <td class="paramname"> <em>pdv</em> = <code>-100</code>, </td> 288.5458 + </tr> 288.5459 + <tr> 288.5460 + <td class="paramkey"></td> 288.5461 + <td></td> 288.5462 + <td class="paramtype">const int </td> 288.5463 + <td class="paramname"> <em>interpolation_type</em> = <code>1</code>, </td> 288.5464 + </tr> 288.5465 + <tr> 288.5466 + <td class="paramkey"></td> 288.5467 + <td></td> 288.5468 + <td class="paramtype">const int </td> 288.5469 + <td class="paramname"> <em>border_condition</em> = <code>-1</code>, </td> 288.5470 + </tr> 288.5471 + <tr> 288.5472 + <td class="paramkey"></td> 288.5473 + <td></td> 288.5474 + <td class="paramtype">const bool </td> 288.5475 + <td class="paramname"> <em>center</em> = <code>false</code></td><td> </td> 288.5476 + </tr> 288.5477 + <tr> 288.5478 + <td></td> 288.5479 + <td>)</td> 288.5480 + <td></td><td></td><td><code> [inline]</code></td> 288.5481 + </tr> 288.5482 + </table> 288.5483 +</div> 288.5484 +<div class="memdoc"> 288.5485 + 288.5486 +<p> 288.5487 +Resize an image. 288.5488 +<p> 288.5489 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5490 + <table border="0" cellspacing="2" cellpadding="0"> 288.5491 + <tr><td valign="top"></td><td valign="top"><em>pdx</em> </td><td>Number of columns (new size along the X-axis). </td></tr> 288.5492 + <tr><td valign="top"></td><td valign="top"><em>pdy</em> </td><td>Number of rows (new size along the Y-axis). </td></tr> 288.5493 + <tr><td valign="top"></td><td valign="top"><em>pdz</em> </td><td>Number of slices (new size along the Z-axis). </td></tr> 288.5494 + <tr><td valign="top"></td><td valign="top"><em>pdv</em> </td><td>Number of vector-channels (new size along the V-axis). </td></tr> 288.5495 + <tr><td valign="top"></td><td valign="top"><em>interpolation_type</em> </td><td>Method of interpolation :<ul> 288.5496 +<li>-1 = no interpolation : raw memory resizing.</li><li>0 = no interpolation : additional space is filled according to <code>border_condition</code>.</li><li>1 = bloc interpolation (nearest point).</li><li>2 = moving average interpolation.</li><li>3 = linear interpolation.</li><li>4 = grid interpolation.</li><li>5 = bi-cubic interpolation. </li></ul> 288.5497 +</td></tr> 288.5498 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>Border condition type. </td></tr> 288.5499 + <tr><td valign="top"></td><td valign="top"><em>center</em> </td><td>Set centering type (only if <code>interpolation_type=0</code>). </td></tr> 288.5500 + </table> 288.5501 +</dl> 288.5502 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). </dd></dl> 288.5503 + 288.5504 +</div> 288.5505 +</div><p> 288.5506 +<a class="anchor" name="ed8c4bc86e30f3cc55c46f1329e081a1"></a><!-- doxytag: member="cimg_library::CImg::resize" ref="ed8c4bc86e30f3cc55c46f1329e081a1" args="(const CImg< t > &src, const int interpolation_type=1, const int border_condition=-1, const bool center=false)" --> 288.5507 +<div class="memitem"> 288.5508 +<div class="memproto"> 288.5509 + <table class="memname"> 288.5510 + <tr> 288.5511 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& resize </td> 288.5512 + <td>(</td> 288.5513 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.5514 + <td class="paramname"> <em>src</em>, </td> 288.5515 + </tr> 288.5516 + <tr> 288.5517 + <td class="paramkey"></td> 288.5518 + <td></td> 288.5519 + <td class="paramtype">const int </td> 288.5520 + <td class="paramname"> <em>interpolation_type</em> = <code>1</code>, </td> 288.5521 + </tr> 288.5522 + <tr> 288.5523 + <td class="paramkey"></td> 288.5524 + <td></td> 288.5525 + <td class="paramtype">const int </td> 288.5526 + <td class="paramname"> <em>border_condition</em> = <code>-1</code>, </td> 288.5527 + </tr> 288.5528 + <tr> 288.5529 + <td class="paramkey"></td> 288.5530 + <td></td> 288.5531 + <td class="paramtype">const bool </td> 288.5532 + <td class="paramname"> <em>center</em> = <code>false</code></td><td> </td> 288.5533 + </tr> 288.5534 + <tr> 288.5535 + <td></td> 288.5536 + <td>)</td> 288.5537 + <td></td><td></td><td><code> [inline]</code></td> 288.5538 + </tr> 288.5539 + </table> 288.5540 +</div> 288.5541 +<div class="memdoc"> 288.5542 + 288.5543 +<p> 288.5544 +Resize an image. 288.5545 +<p> 288.5546 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5547 + <table border="0" cellspacing="2" cellpadding="0"> 288.5548 + <tr><td valign="top"></td><td valign="top"><em>src</em> </td><td>Image giving the geometry of the resize. </td></tr> 288.5549 + <tr><td valign="top"></td><td valign="top"><em>interpolation_type</em> </td><td>Interpolation method :<ul> 288.5550 +<li>1 = raw memory</li><li>0 = no interpolation : additional space is filled with 0.</li><li>1 = bloc interpolation (nearest point).</li><li>2 = mosaic : image is repeated if necessary.</li><li>3 = linear interpolation.</li><li>4 = grid interpolation.</li><li>5 = bi-cubic interpolation. </li></ul> 288.5551 +</td></tr> 288.5552 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>Border condition type. </td></tr> 288.5553 + </table> 288.5554 +</dl> 288.5555 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). </dd></dl> 288.5556 + 288.5557 +</div> 288.5558 +</div><p> 288.5559 +<a class="anchor" name="cb7831acf038a036edaa9a1b74779054"></a><!-- doxytag: member="cimg_library::CImg::resize" ref="cb7831acf038a036edaa9a1b74779054" args="(const CImgDisplay &disp, const int interpolation_type=1, const int border_condition=-1, const bool center=false)" --> 288.5560 +<div class="memitem"> 288.5561 +<div class="memproto"> 288.5562 + <table class="memname"> 288.5563 + <tr> 288.5564 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& resize </td> 288.5565 + <td>(</td> 288.5566 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td> 288.5567 + <td class="paramname"> <em>disp</em>, </td> 288.5568 + </tr> 288.5569 + <tr> 288.5570 + <td class="paramkey"></td> 288.5571 + <td></td> 288.5572 + <td class="paramtype">const int </td> 288.5573 + <td class="paramname"> <em>interpolation_type</em> = <code>1</code>, </td> 288.5574 + </tr> 288.5575 + <tr> 288.5576 + <td class="paramkey"></td> 288.5577 + <td></td> 288.5578 + <td class="paramtype">const int </td> 288.5579 + <td class="paramname"> <em>border_condition</em> = <code>-1</code>, </td> 288.5580 + </tr> 288.5581 + <tr> 288.5582 + <td class="paramkey"></td> 288.5583 + <td></td> 288.5584 + <td class="paramtype">const bool </td> 288.5585 + <td class="paramname"> <em>center</em> = <code>false</code></td><td> </td> 288.5586 + </tr> 288.5587 + <tr> 288.5588 + <td></td> 288.5589 + <td>)</td> 288.5590 + <td></td><td></td><td><code> [inline]</code></td> 288.5591 + </tr> 288.5592 + </table> 288.5593 +</div> 288.5594 +<div class="memdoc"> 288.5595 + 288.5596 +<p> 288.5597 +Resize an image. 288.5598 +<p> 288.5599 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5600 + <table border="0" cellspacing="2" cellpadding="0"> 288.5601 + <tr><td valign="top"></td><td valign="top"><em>disp</em> </td><td>= Display giving the geometry of the resize. </td></tr> 288.5602 + <tr><td valign="top"></td><td valign="top"><em>interpolation_type</em> </td><td>= Resizing type :<ul> 288.5603 +<li>0 = no interpolation : additional space is filled with 0.</li><li>1 = bloc interpolation (nearest point).</li><li>2 = mosaic : image is repeated if necessary.</li><li>3 = linear interpolation.</li><li>4 = grid interpolation.</li><li>5 = bi-cubic interpolation.</li><li>6 = moving average (best quality for photographs) </li></ul> 288.5604 +</td></tr> 288.5605 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>Border condition type. </td></tr> 288.5606 + </table> 288.5607 +</dl> 288.5608 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If pd[x,y,z,v]<0, it corresponds to a percentage of the original size (the default value is -100). </dd></dl> 288.5609 + 288.5610 +</div> 288.5611 +</div><p> 288.5612 +<a class="anchor" name="a2fa295816582cb2e62d530c54533055"></a><!-- doxytag: member="cimg_library::CImg::resize_doubleXY" ref="a2fa295816582cb2e62d530c54533055" args="()" --> 288.5613 +<div class="memitem"> 288.5614 +<div class="memproto"> 288.5615 + <table class="memname"> 288.5616 + <tr> 288.5617 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& resize_doubleXY </td> 288.5618 + <td>(</td> 288.5619 + <td class="paramname"> </td> 288.5620 + <td> ) </td> 288.5621 + <td><code> [inline]</code></td> 288.5622 + </tr> 288.5623 + </table> 288.5624 +</div> 288.5625 +<div class="memdoc"> 288.5626 + 288.5627 +<p> 288.5628 +Upscale an image by a factor 2x. 288.5629 +<p> 288.5630 +Use anisotropic upscaling algorithm described at <a href="http://scale2x.sourceforge.net/algorithm.html">http://scale2x.sourceforge.net/algorithm.html</a> 288.5631 +</div> 288.5632 +</div><p> 288.5633 +<a class="anchor" name="64f4be91725b57a74d080b848660676c"></a><!-- doxytag: member="cimg_library::CImg::resize_tripleXY" ref="64f4be91725b57a74d080b848660676c" args="()" --> 288.5634 +<div class="memitem"> 288.5635 +<div class="memproto"> 288.5636 + <table class="memname"> 288.5637 + <tr> 288.5638 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& resize_tripleXY </td> 288.5639 + <td>(</td> 288.5640 + <td class="paramname"> </td> 288.5641 + <td> ) </td> 288.5642 + <td><code> [inline]</code></td> 288.5643 + </tr> 288.5644 + </table> 288.5645 +</div> 288.5646 +<div class="memdoc"> 288.5647 + 288.5648 +<p> 288.5649 +Upscale an image by a factor 3x. 288.5650 +<p> 288.5651 +Use anisotropic upscaling algorithm described at <a href="http://scale2x.sourceforge.net/algorithm.html">http://scale2x.sourceforge.net/algorithm.html</a> 288.5652 +</div> 288.5653 +</div><p> 288.5654 +<a class="anchor" name="f5eac37234edfffffe75770e4a492b15"></a><!-- doxytag: member="cimg_library::CImg::permute_axes" ref="f5eac37234edfffffe75770e4a492b15" args="(const char *order)" --> 288.5655 +<div class="memitem"> 288.5656 +<div class="memproto"> 288.5657 + <table class="memname"> 288.5658 + <tr> 288.5659 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& permute_axes </td> 288.5660 + <td>(</td> 288.5661 + <td class="paramtype">const char * </td> 288.5662 + <td class="paramname"> <em>order</em> </td> 288.5663 + <td> ) </td> 288.5664 + <td><code> [inline]</code></td> 288.5665 + </tr> 288.5666 + </table> 288.5667 +</div> 288.5668 +<div class="memdoc"> 288.5669 + 288.5670 +<p> 288.5671 +Permute axes order. 288.5672 +<p> 288.5673 +This function permutes image axes. <dl compact><dt><b>Parameters:</b></dt><dd> 288.5674 + <table border="0" cellspacing="2" cellpadding="0"> 288.5675 + <tr><td valign="top"></td><td valign="top"><em>permut</em> </td><td>= String describing the permutation (4 characters). </td></tr> 288.5676 + </table> 288.5677 +</dl> 288.5678 + 288.5679 +</div> 288.5680 +</div><p> 288.5681 +<a class="anchor" name="32ca7979d4a8792f7274ab07b8b80fdd"></a><!-- doxytag: member="cimg_library::CImg::translate" ref="32ca7979d4a8792f7274ab07b8b80fdd" args="(const int deltax, const int deltay=0, const int deltaz=0, const int deltav=0, const int border_condition=0)" --> 288.5682 +<div class="memitem"> 288.5683 +<div class="memproto"> 288.5684 + <table class="memname"> 288.5685 + <tr> 288.5686 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& translate </td> 288.5687 + <td>(</td> 288.5688 + <td class="paramtype">const int </td> 288.5689 + <td class="paramname"> <em>deltax</em>, </td> 288.5690 + </tr> 288.5691 + <tr> 288.5692 + <td class="paramkey"></td> 288.5693 + <td></td> 288.5694 + <td class="paramtype">const int </td> 288.5695 + <td class="paramname"> <em>deltay</em> = <code>0</code>, </td> 288.5696 + </tr> 288.5697 + <tr> 288.5698 + <td class="paramkey"></td> 288.5699 + <td></td> 288.5700 + <td class="paramtype">const int </td> 288.5701 + <td class="paramname"> <em>deltaz</em> = <code>0</code>, </td> 288.5702 + </tr> 288.5703 + <tr> 288.5704 + <td class="paramkey"></td> 288.5705 + <td></td> 288.5706 + <td class="paramtype">const int </td> 288.5707 + <td class="paramname"> <em>deltav</em> = <code>0</code>, </td> 288.5708 + </tr> 288.5709 + <tr> 288.5710 + <td class="paramkey"></td> 288.5711 + <td></td> 288.5712 + <td class="paramtype">const int </td> 288.5713 + <td class="paramname"> <em>border_condition</em> = <code>0</code></td><td> </td> 288.5714 + </tr> 288.5715 + <tr> 288.5716 + <td></td> 288.5717 + <td>)</td> 288.5718 + <td></td><td></td><td><code> [inline]</code></td> 288.5719 + </tr> 288.5720 + </table> 288.5721 +</div> 288.5722 +<div class="memdoc"> 288.5723 + 288.5724 +<p> 288.5725 +Translate the image. 288.5726 +<p> 288.5727 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5728 + <table border="0" cellspacing="2" cellpadding="0"> 288.5729 + <tr><td valign="top"></td><td valign="top"><em>deltax</em> </td><td>Amount of displacement along the X-axis. </td></tr> 288.5730 + <tr><td valign="top"></td><td valign="top"><em>deltay</em> </td><td>Amount of displacement along the Y-axis. </td></tr> 288.5731 + <tr><td valign="top"></td><td valign="top"><em>deltaz</em> </td><td>Amount of displacement along the Z-axis. </td></tr> 288.5732 + <tr><td valign="top"></td><td valign="top"><em>deltav</em> </td><td>Amount of displacement along the V-axis. </td></tr> 288.5733 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>Border condition.</td></tr> 288.5734 + </table> 288.5735 +</dl> 288.5736 +<ul> 288.5737 +<li><code>border_condition</code> can be :<ul> 288.5738 +<li>0 : Zero border condition (Dirichlet).</li><li>1 : Nearest neighbors (Neumann).</li><li>2 : Repeat Pattern (Fourier style). </li></ul> 288.5739 +</li></ul> 288.5740 + 288.5741 +</div> 288.5742 +</div><p> 288.5743 +<a class="anchor" name="77085bb4dfa1622ac5de64eb5c6ed9d1"></a><!-- doxytag: member="cimg_library::CImg::crop" ref="77085bb4dfa1622ac5de64eb5c6ed9d1" args="(const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const bool border_condition=false)" --> 288.5744 +<div class="memitem"> 288.5745 +<div class="memproto"> 288.5746 + <table class="memname"> 288.5747 + <tr> 288.5748 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& crop </td> 288.5749 + <td>(</td> 288.5750 + <td class="paramtype">const int </td> 288.5751 + <td class="paramname"> <em>x0</em>, </td> 288.5752 + </tr> 288.5753 + <tr> 288.5754 + <td class="paramkey"></td> 288.5755 + <td></td> 288.5756 + <td class="paramtype">const int </td> 288.5757 + <td class="paramname"> <em>y0</em>, </td> 288.5758 + </tr> 288.5759 + <tr> 288.5760 + <td class="paramkey"></td> 288.5761 + <td></td> 288.5762 + <td class="paramtype">const int </td> 288.5763 + <td class="paramname"> <em>z0</em>, </td> 288.5764 + </tr> 288.5765 + <tr> 288.5766 + <td class="paramkey"></td> 288.5767 + <td></td> 288.5768 + <td class="paramtype">const int </td> 288.5769 + <td class="paramname"> <em>v0</em>, </td> 288.5770 + </tr> 288.5771 + <tr> 288.5772 + <td class="paramkey"></td> 288.5773 + <td></td> 288.5774 + <td class="paramtype">const int </td> 288.5775 + <td class="paramname"> <em>x1</em>, </td> 288.5776 + </tr> 288.5777 + <tr> 288.5778 + <td class="paramkey"></td> 288.5779 + <td></td> 288.5780 + <td class="paramtype">const int </td> 288.5781 + <td class="paramname"> <em>y1</em>, </td> 288.5782 + </tr> 288.5783 + <tr> 288.5784 + <td class="paramkey"></td> 288.5785 + <td></td> 288.5786 + <td class="paramtype">const int </td> 288.5787 + <td class="paramname"> <em>z1</em>, </td> 288.5788 + </tr> 288.5789 + <tr> 288.5790 + <td class="paramkey"></td> 288.5791 + <td></td> 288.5792 + <td class="paramtype">const int </td> 288.5793 + <td class="paramname"> <em>v1</em>, </td> 288.5794 + </tr> 288.5795 + <tr> 288.5796 + <td class="paramkey"></td> 288.5797 + <td></td> 288.5798 + <td class="paramtype">const bool </td> 288.5799 + <td class="paramname"> <em>border_condition</em> = <code>false</code></td><td> </td> 288.5800 + </tr> 288.5801 + <tr> 288.5802 + <td></td> 288.5803 + <td>)</td> 288.5804 + <td></td><td></td><td><code> [inline]</code></td> 288.5805 + </tr> 288.5806 + </table> 288.5807 +</div> 288.5808 +<div class="memdoc"> 288.5809 + 288.5810 +<p> 288.5811 +Get a square region of the image. 288.5812 +<p> 288.5813 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5814 + <table border="0" cellspacing="2" cellpadding="0"> 288.5815 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5816 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5817 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>= Z-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5818 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>= V-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5819 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5820 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5821 + <tr><td valign="top"></td><td valign="top"><em>z1</em> </td><td>= Z-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5822 + <tr><td valign="top"></td><td valign="top"><em>v1</em> </td><td>= V-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5823 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>= Dirichlet (false) or Neumann border conditions. </td></tr> 288.5824 + </table> 288.5825 +</dl> 288.5826 + 288.5827 +</div> 288.5828 +</div><p> 288.5829 +<a class="anchor" name="0a1400f592a7192b1e6421f5d7045d6a"></a><!-- doxytag: member="cimg_library::CImg::crop" ref="0a1400f592a7192b1e6421f5d7045d6a" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const bool border_condition=false)" --> 288.5830 +<div class="memitem"> 288.5831 +<div class="memproto"> 288.5832 + <table class="memname"> 288.5833 + <tr> 288.5834 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& crop </td> 288.5835 + <td>(</td> 288.5836 + <td class="paramtype">const int </td> 288.5837 + <td class="paramname"> <em>x0</em>, </td> 288.5838 + </tr> 288.5839 + <tr> 288.5840 + <td class="paramkey"></td> 288.5841 + <td></td> 288.5842 + <td class="paramtype">const int </td> 288.5843 + <td class="paramname"> <em>y0</em>, </td> 288.5844 + </tr> 288.5845 + <tr> 288.5846 + <td class="paramkey"></td> 288.5847 + <td></td> 288.5848 + <td class="paramtype">const int </td> 288.5849 + <td class="paramname"> <em>z0</em>, </td> 288.5850 + </tr> 288.5851 + <tr> 288.5852 + <td class="paramkey"></td> 288.5853 + <td></td> 288.5854 + <td class="paramtype">const int </td> 288.5855 + <td class="paramname"> <em>x1</em>, </td> 288.5856 + </tr> 288.5857 + <tr> 288.5858 + <td class="paramkey"></td> 288.5859 + <td></td> 288.5860 + <td class="paramtype">const int </td> 288.5861 + <td class="paramname"> <em>y1</em>, </td> 288.5862 + </tr> 288.5863 + <tr> 288.5864 + <td class="paramkey"></td> 288.5865 + <td></td> 288.5866 + <td class="paramtype">const int </td> 288.5867 + <td class="paramname"> <em>z1</em>, </td> 288.5868 + </tr> 288.5869 + <tr> 288.5870 + <td class="paramkey"></td> 288.5871 + <td></td> 288.5872 + <td class="paramtype">const bool </td> 288.5873 + <td class="paramname"> <em>border_condition</em> = <code>false</code></td><td> </td> 288.5874 + </tr> 288.5875 + <tr> 288.5876 + <td></td> 288.5877 + <td>)</td> 288.5878 + <td></td><td></td><td><code> [inline]</code></td> 288.5879 + </tr> 288.5880 + </table> 288.5881 +</div> 288.5882 +<div class="memdoc"> 288.5883 + 288.5884 +<p> 288.5885 +Get a rectangular part of the instance image. 288.5886 +<p> 288.5887 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5888 + <table border="0" cellspacing="2" cellpadding="0"> 288.5889 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5890 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5891 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>= Z-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5892 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5893 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5894 + <tr><td valign="top"></td><td valign="top"><em>z1</em> </td><td>= Z-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5895 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>= determine the type of border condition if some of the desired region is outside the image. </td></tr> 288.5896 + </table> 288.5897 +</dl> 288.5898 + 288.5899 +</div> 288.5900 +</div><p> 288.5901 +<a class="anchor" name="54ad48809ef0be41797c7703e3b4133d"></a><!-- doxytag: member="cimg_library::CImg::crop" ref="54ad48809ef0be41797c7703e3b4133d" args="(const int x0, const int y0, const int x1, const int y1, const bool border_condition=false)" --> 288.5902 +<div class="memitem"> 288.5903 +<div class="memproto"> 288.5904 + <table class="memname"> 288.5905 + <tr> 288.5906 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& crop </td> 288.5907 + <td>(</td> 288.5908 + <td class="paramtype">const int </td> 288.5909 + <td class="paramname"> <em>x0</em>, </td> 288.5910 + </tr> 288.5911 + <tr> 288.5912 + <td class="paramkey"></td> 288.5913 + <td></td> 288.5914 + <td class="paramtype">const int </td> 288.5915 + <td class="paramname"> <em>y0</em>, </td> 288.5916 + </tr> 288.5917 + <tr> 288.5918 + <td class="paramkey"></td> 288.5919 + <td></td> 288.5920 + <td class="paramtype">const int </td> 288.5921 + <td class="paramname"> <em>x1</em>, </td> 288.5922 + </tr> 288.5923 + <tr> 288.5924 + <td class="paramkey"></td> 288.5925 + <td></td> 288.5926 + <td class="paramtype">const int </td> 288.5927 + <td class="paramname"> <em>y1</em>, </td> 288.5928 + </tr> 288.5929 + <tr> 288.5930 + <td class="paramkey"></td> 288.5931 + <td></td> 288.5932 + <td class="paramtype">const bool </td> 288.5933 + <td class="paramname"> <em>border_condition</em> = <code>false</code></td><td> </td> 288.5934 + </tr> 288.5935 + <tr> 288.5936 + <td></td> 288.5937 + <td>)</td> 288.5938 + <td></td><td></td><td><code> [inline]</code></td> 288.5939 + </tr> 288.5940 + </table> 288.5941 +</div> 288.5942 +<div class="memdoc"> 288.5943 + 288.5944 +<p> 288.5945 +Get a rectangular part of the instance image. 288.5946 +<p> 288.5947 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5948 + <table border="0" cellspacing="2" cellpadding="0"> 288.5949 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5950 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5951 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5952 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5953 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>= determine the type of border condition if some of the desired region is outside the image. </td></tr> 288.5954 + </table> 288.5955 +</dl> 288.5956 + 288.5957 +</div> 288.5958 +</div><p> 288.5959 +<a class="anchor" name="93a1ecf2944920d55757323e6de2b7da"></a><!-- doxytag: member="cimg_library::CImg::crop" ref="93a1ecf2944920d55757323e6de2b7da" args="(const int x0, const int x1, const bool border_condition=false)" --> 288.5960 +<div class="memitem"> 288.5961 +<div class="memproto"> 288.5962 + <table class="memname"> 288.5963 + <tr> 288.5964 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& crop </td> 288.5965 + <td>(</td> 288.5966 + <td class="paramtype">const int </td> 288.5967 + <td class="paramname"> <em>x0</em>, </td> 288.5968 + </tr> 288.5969 + <tr> 288.5970 + <td class="paramkey"></td> 288.5971 + <td></td> 288.5972 + <td class="paramtype">const int </td> 288.5973 + <td class="paramname"> <em>x1</em>, </td> 288.5974 + </tr> 288.5975 + <tr> 288.5976 + <td class="paramkey"></td> 288.5977 + <td></td> 288.5978 + <td class="paramtype">const bool </td> 288.5979 + <td class="paramname"> <em>border_condition</em> = <code>false</code></td><td> </td> 288.5980 + </tr> 288.5981 + <tr> 288.5982 + <td></td> 288.5983 + <td>)</td> 288.5984 + <td></td><td></td><td><code> [inline]</code></td> 288.5985 + </tr> 288.5986 + </table> 288.5987 +</div> 288.5988 +<div class="memdoc"> 288.5989 + 288.5990 +<p> 288.5991 +Get a rectangular part of the instance image. 288.5992 +<p> 288.5993 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.5994 + <table border="0" cellspacing="2" cellpadding="0"> 288.5995 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the upper-left crop rectangle corner. </td></tr> 288.5996 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the lower-right crop rectangle corner. </td></tr> 288.5997 + <tr><td valign="top"></td><td valign="top"><em>border_condition</em> </td><td>= determine the type of border condition if some of the desired region is outside the image. </td></tr> 288.5998 + </table> 288.5999 +</dl> 288.6000 + 288.6001 +</div> 288.6002 +</div><p> 288.6003 +<a class="anchor" name="edc5d10d1516480dbfe20a576c152770"></a><!-- doxytag: member="cimg_library::CImg::histogram" ref="edc5d10d1516480dbfe20a576c152770" args="(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)" --> 288.6004 +<div class="memitem"> 288.6005 +<div class="memproto"> 288.6006 + <table class="memname"> 288.6007 + <tr> 288.6008 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& histogram </td> 288.6009 + <td>(</td> 288.6010 + <td class="paramtype">const unsigned int </td> 288.6011 + <td class="paramname"> <em>nblevels</em>, </td> 288.6012 + </tr> 288.6013 + <tr> 288.6014 + <td class="paramkey"></td> 288.6015 + <td></td> 288.6016 + <td class="paramtype">const T </td> 288.6017 + <td class="paramname"> <em>val_min</em> = <code>(T)0</code>, </td> 288.6018 + </tr> 288.6019 + <tr> 288.6020 + <td class="paramkey"></td> 288.6021 + <td></td> 288.6022 + <td class="paramtype">const T </td> 288.6023 + <td class="paramname"> <em>val_max</em> = <code>(T)0</code></td><td> </td> 288.6024 + </tr> 288.6025 + <tr> 288.6026 + <td></td> 288.6027 + <td>)</td> 288.6028 + <td></td><td></td><td><code> [inline]</code></td> 288.6029 + </tr> 288.6030 + </table> 288.6031 +</div> 288.6032 +<div class="memdoc"> 288.6033 + 288.6034 +<p> 288.6035 +Compute the image histogram. 288.6036 +<p> 288.6037 +The histogram H of an image I is a 1D-function where H(x) is the number of occurences of the value x in I. <dl compact><dt><b>Parameters:</b></dt><dd> 288.6038 + <table border="0" cellspacing="2" cellpadding="0"> 288.6039 + <tr><td valign="top"></td><td valign="top"><em>nblevels</em> </td><td>= Number of different levels of the computed histogram. For classical images, this value is 256. You should specify more levels if you are working with CImg<float> or images with high range of pixel values. </td></tr> 288.6040 + <tr><td valign="top"></td><td valign="top"><em>val_min</em> </td><td>= Minimum value considered for the histogram computation. All pixel values lower than val_min won't be counted. </td></tr> 288.6041 + <tr><td valign="top"></td><td valign="top"><em>val_max</em> </td><td>= Maximum value considered for the histogram computation. All pixel values higher than val_max won't be counted. </td></tr> 288.6042 + </table> 288.6043 +</dl> 288.6044 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If val_min==val_max==0 (default values), the function first estimates the minimum and maximum pixel values of the current image, then uses these values for the histogram computation. </dd></dl> 288.6045 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>The histogram is returned as a 1D CImg<float> image H, having a size of (nblevels,1,1,1) such that H(0) and H(nblevels-1) are respectively equal to the number of occurences of the values val_min and val_max in I. </dd></dl> 288.6046 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Histogram computation always returns a 1D function. Histogram of multi-valued (such as color) images are not multi-dimensional. </dd></dl> 288.6047 + 288.6048 +</div> 288.6049 +</div><p> 288.6050 +<a class="anchor" name="a2227f917f7c4424123b5a2806d7f5b8"></a><!-- doxytag: member="cimg_library::CImg::equalize" ref="a2227f917f7c4424123b5a2806d7f5b8" args="(const unsigned int nblevels, const T val_min=(T) 0, const T val_max=(T) 0)" --> 288.6051 +<div class="memitem"> 288.6052 +<div class="memproto"> 288.6053 + <table class="memname"> 288.6054 + <tr> 288.6055 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& equalize </td> 288.6056 + <td>(</td> 288.6057 + <td class="paramtype">const unsigned int </td> 288.6058 + <td class="paramname"> <em>nblevels</em>, </td> 288.6059 + </tr> 288.6060 + <tr> 288.6061 + <td class="paramkey"></td> 288.6062 + <td></td> 288.6063 + <td class="paramtype">const T </td> 288.6064 + <td class="paramname"> <em>val_min</em> = <code>(T)0</code>, </td> 288.6065 + </tr> 288.6066 + <tr> 288.6067 + <td class="paramkey"></td> 288.6068 + <td></td> 288.6069 + <td class="paramtype">const T </td> 288.6070 + <td class="paramname"> <em>val_max</em> = <code>(T)0</code></td><td> </td> 288.6071 + </tr> 288.6072 + <tr> 288.6073 + <td></td> 288.6074 + <td>)</td> 288.6075 + <td></td><td></td><td><code> [inline]</code></td> 288.6076 + </tr> 288.6077 + </table> 288.6078 +</div> 288.6079 +<div class="memdoc"> 288.6080 + 288.6081 +<p> 288.6082 +Compute the histogram-equalized version of the instance image. 288.6083 +<p> 288.6084 +The histogram equalization is a classical image processing algorithm that enhances the image contrast by expanding its histogram. <dl compact><dt><b>Parameters:</b></dt><dd> 288.6085 + <table border="0" cellspacing="2" cellpadding="0"> 288.6086 + <tr><td valign="top"></td><td valign="top"><em>nblevels</em> </td><td>= Number of different levels of the computed histogram. For classical images, this value is 256. You should specify more levels if you are working with CImg<float> or images with high range of pixel values. </td></tr> 288.6087 + <tr><td valign="top"></td><td valign="top"><em>val_min</em> </td><td>= Minimum value considered for the histogram computation. All pixel values lower than val_min won't be changed. </td></tr> 288.6088 + <tr><td valign="top"></td><td valign="top"><em>val_max</em> </td><td>= Maximum value considered for the histogram computation. All pixel values higher than val_max won't be changed. </td></tr> 288.6089 + </table> 288.6090 +</dl> 288.6091 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If val_min==val_max==0 (default values), the function acts on all pixel values of the image. </dd></dl> 288.6092 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>A new image with same size is returned, where pixels have been equalized. </dd></dl> 288.6093 + 288.6094 +</div> 288.6095 +</div><p> 288.6096 +<a class="anchor" name="f2cceb3e14d6650bc7d1c89afedba15a"></a><!-- doxytag: member="cimg_library::CImg::pointwise_norm" ref="f2cceb3e14d6650bc7d1c89afedba15a" args="(int norm_type=2)" --> 288.6097 +<div class="memitem"> 288.6098 +<div class="memproto"> 288.6099 + <table class="memname"> 288.6100 + <tr> 288.6101 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& pointwise_norm </td> 288.6102 + <td>(</td> 288.6103 + <td class="paramtype">int </td> 288.6104 + <td class="paramname"> <em>norm_type</em> = <code>2</code> </td> 288.6105 + <td> ) </td> 288.6106 + <td><code> [inline]</code></td> 288.6107 + </tr> 288.6108 + </table> 288.6109 +</div> 288.6110 +<div class="memdoc"> 288.6111 + 288.6112 +<p> 288.6113 +Compute the scalar image of vector norms. 288.6114 +<p> 288.6115 +When dealing with vector-valued images (i.e images with <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a>>1), this function computes the L1,L2 or Linf norm of each vector-valued pixel. <dl compact><dt><b>Parameters:</b></dt><dd> 288.6116 + <table border="0" cellspacing="2" cellpadding="0"> 288.6117 + <tr><td valign="top"></td><td valign="top"><em>norm_type</em> </td><td>= Type of the norm being computed (1 = L1, 2 = L2, -1 = Linf). </td></tr> 288.6118 + </table> 288.6119 +</dl> 288.6120 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>A scalar-valued image CImg<float> with size (<a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a" title="Return the number of columns of the instance image (size along the X-axis, i.e image...">dimx()</a>,<a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d" title="Return the number of rows of the instance image (size along the Y-axis, i.e image...">dimy()</a>,<a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215" title="Return the number of slices of the instance image (size along the Z-axis).">dimz()</a>,1), where each pixel is the norm of the corresponding pixels in the original vector-valued image. </dd></dl> 288.6121 + 288.6122 +</div> 288.6123 +</div><p> 288.6124 +<a class="anchor" name="2662d70fed319ed056836696c3a97499"></a><!-- doxytag: member="cimg_library::CImg::pointwise_orientation" ref="2662d70fed319ed056836696c3a97499" args="()" --> 288.6125 +<div class="memitem"> 288.6126 +<div class="memproto"> 288.6127 + <table class="memname"> 288.6128 + <tr> 288.6129 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& pointwise_orientation </td> 288.6130 + <td>(</td> 288.6131 + <td class="paramname"> </td> 288.6132 + <td> ) </td> 288.6133 + <td><code> [inline]</code></td> 288.6134 + </tr> 288.6135 + </table> 288.6136 +</div> 288.6137 +<div class="memdoc"> 288.6138 + 288.6139 +<p> 288.6140 +Compute the image of normalized vectors. 288.6141 +<p> 288.6142 +When dealing with vector-valued images (i.e images with <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a>>1), this function return the image of normalized vectors (unit vectors). Null vectors are unchanged. The L2-norm is computed for the normalization. <dl class="return" compact><dt><b>Returns:</b></dt><dd>A new vector-valued image with same size, where each vector-valued pixels have been normalized. </dd></dl> 288.6143 + 288.6144 +</div> 288.6145 +</div><p> 288.6146 +<a class="anchor" name="3e5b54c0b862cbf6e9f14e832984c4d7"></a><!-- doxytag: member="cimg_library::CImg::get_gradient" ref="3e5b54c0b862cbf6e9f14e832984c4d7" args="(const char *const axes=0, const int scheme=3) const " --> 288.6147 +<div class="memitem"> 288.6148 +<div class="memproto"> 288.6149 + <table class="memname"> 288.6150 + <tr> 288.6151 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a><Tfloat> get_gradient </td> 288.6152 + <td>(</td> 288.6153 + <td class="paramtype">const char *const </td> 288.6154 + <td class="paramname"> <em>axes</em> = <code>0</code>, </td> 288.6155 + </tr> 288.6156 + <tr> 288.6157 + <td class="paramkey"></td> 288.6158 + <td></td> 288.6159 + <td class="paramtype">const int </td> 288.6160 + <td class="paramname"> <em>scheme</em> = <code>3</code></td><td> </td> 288.6161 + </tr> 288.6162 + <tr> 288.6163 + <td></td> 288.6164 + <td>)</td> 288.6165 + <td></td><td></td><td> const<code> [inline]</code></td> 288.6166 + </tr> 288.6167 + </table> 288.6168 +</div> 288.6169 +<div class="memdoc"> 288.6170 + 288.6171 +<p> 288.6172 +Compute the list of images, corresponding to the XY-gradients of an image. 288.6173 +<p> 288.6174 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6175 + <table border="0" cellspacing="2" cellpadding="0"> 288.6176 + <tr><td valign="top"></td><td valign="top"><em>scheme</em> </td><td>= Numerical scheme used for the gradient computation :<ul> 288.6177 +<li>-1 = Backward finite differences</li><li>0 = Centered finite differences</li><li>1 = Forward finite differences</li><li>2 = Using Sobel masks</li><li>3 = Using rotation invariant masks</li><li>4 = Using Deriche recusrsive filter. </li></ul> 288.6178 +</td></tr> 288.6179 + </table> 288.6180 +</dl> 288.6181 + 288.6182 +</div> 288.6183 +</div><p> 288.6184 +<a class="anchor" name="f2b4fdd725a79235943e5cc5704a32d5"></a><!-- doxytag: member="cimg_library::CImg::dijkstra" ref="f2b4fdd725a79235943e5cc5704a32d5" args="(const tf &distance, const unsigned int nb_nodes, const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)" --> 288.6185 +<div class="memitem"> 288.6186 +<div class="memproto"> 288.6187 + <table class="memname"> 288.6188 + <tr> 288.6189 + <td class="memname">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T> dijkstra </td> 288.6190 + <td>(</td> 288.6191 + <td class="paramtype">const tf & </td> 288.6192 + <td class="paramname"> <em>distance</em>, </td> 288.6193 + </tr> 288.6194 + <tr> 288.6195 + <td class="paramkey"></td> 288.6196 + <td></td> 288.6197 + <td class="paramtype">const unsigned int </td> 288.6198 + <td class="paramname"> <em>nb_nodes</em>, </td> 288.6199 + </tr> 288.6200 + <tr> 288.6201 + <td class="paramkey"></td> 288.6202 + <td></td> 288.6203 + <td class="paramtype">const unsigned int </td> 288.6204 + <td class="paramname"> <em>starting_node</em>, </td> 288.6205 + </tr> 288.6206 + <tr> 288.6207 + <td class="paramkey"></td> 288.6208 + <td></td> 288.6209 + <td class="paramtype">const unsigned int </td> 288.6210 + <td class="paramname"> <em>ending_node</em>, </td> 288.6211 + </tr> 288.6212 + <tr> 288.6213 + <td class="paramkey"></td> 288.6214 + <td></td> 288.6215 + <td class="paramtype"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.6216 + <td class="paramname"> <em>previous</em></td><td> </td> 288.6217 + </tr> 288.6218 + <tr> 288.6219 + <td></td> 288.6220 + <td>)</td> 288.6221 + <td></td><td></td><td><code> [inline, static]</code></td> 288.6222 + </tr> 288.6223 + </table> 288.6224 +</div> 288.6225 +<div class="memdoc"> 288.6226 + 288.6227 +<p> 288.6228 +Compute minimal path in a graph, using the Dijkstra algorithm. 288.6229 +<p> 288.6230 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6231 + <table border="0" cellspacing="2" cellpadding="0"> 288.6232 + <tr><td valign="top"></td><td valign="top"><em>distance</em> </td><td>An object having operator()(unsigned int i, unsigned int j) which returns distance between two nodes (i,j). </td></tr> 288.6233 + <tr><td valign="top"></td><td valign="top"><em>nb_nodes</em> </td><td>Number of graph nodes. </td></tr> 288.6234 + <tr><td valign="top"></td><td valign="top"><em>starting_node</em> </td><td>Indice of the starting node. </td></tr> 288.6235 + <tr><td valign="top"></td><td valign="top"><em>ending_node</em> </td><td>Indice of the ending node (set to ~0U to ignore ending node). </td></tr> 288.6236 + <tr><td valign="top"></td><td valign="top"><em>previous</em> </td><td>Array that gives the previous node indice in the path to the starting node (optional parameter). </td></tr> 288.6237 + </table> 288.6238 +</dl> 288.6239 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>Array of distances of each node to the starting node. </dd></dl> 288.6240 + 288.6241 +</div> 288.6242 +</div><p> 288.6243 +<a class="anchor" name="255acd18f793e0faacd5180f0d10713b"></a><!-- doxytag: member="cimg_library::CImg::dijkstra" ref="255acd18f793e0faacd5180f0d10713b" args="(const unsigned int starting_node, const unsigned int ending_node, CImg< t > &previous)" --> 288.6244 +<div class="memitem"> 288.6245 +<div class="memproto"> 288.6246 + <table class="memname"> 288.6247 + <tr> 288.6248 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& dijkstra </td> 288.6249 + <td>(</td> 288.6250 + <td class="paramtype">const unsigned int </td> 288.6251 + <td class="paramname"> <em>starting_node</em>, </td> 288.6252 + </tr> 288.6253 + <tr> 288.6254 + <td class="paramkey"></td> 288.6255 + <td></td> 288.6256 + <td class="paramtype">const unsigned int </td> 288.6257 + <td class="paramname"> <em>ending_node</em>, </td> 288.6258 + </tr> 288.6259 + <tr> 288.6260 + <td class="paramkey"></td> 288.6261 + <td></td> 288.6262 + <td class="paramtype"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.6263 + <td class="paramname"> <em>previous</em></td><td> </td> 288.6264 + </tr> 288.6265 + <tr> 288.6266 + <td></td> 288.6267 + <td>)</td> 288.6268 + <td></td><td></td><td><code> [inline]</code></td> 288.6269 + </tr> 288.6270 + </table> 288.6271 +</div> 288.6272 +<div class="memdoc"> 288.6273 + 288.6274 +<p> 288.6275 +Return minimal path in a graph, using the Dijkstra algorithm. 288.6276 +<p> 288.6277 +Instance image corresponds to the adjacency matrix of the graph. <dl compact><dt><b>Parameters:</b></dt><dd> 288.6278 + <table border="0" cellspacing="2" cellpadding="0"> 288.6279 + <tr><td valign="top"></td><td valign="top"><em>starting_node</em> </td><td>Indice of the starting node. </td></tr> 288.6280 + <tr><td valign="top"></td><td valign="top"><em>previous</em> </td><td>Array that gives the previous node indice in the path to the starting node (optional parameter). </td></tr> 288.6281 + </table> 288.6282 +</dl> 288.6283 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>Array of distances of each node to the starting node. </dd></dl> 288.6284 + 288.6285 +</div> 288.6286 +</div><p> 288.6287 +<a class="anchor" name="b72cb8ca2a5039c60f002f72bbb44cd5"></a><!-- doxytag: member="cimg_library::CImg::default_LUT8" ref="b72cb8ca2a5039c60f002f72bbb44cd5" args="()" --> 288.6288 +<div class="memitem"> 288.6289 +<div class="memproto"> 288.6290 + <table class="memname"> 288.6291 + <tr> 288.6292 + <td class="memname">static <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><Tuchar> default_LUT8 </td> 288.6293 + <td>(</td> 288.6294 + <td class="paramname"> </td> 288.6295 + <td> ) </td> 288.6296 + <td><code> [inline, static]</code></td> 288.6297 + </tr> 288.6298 + </table> 288.6299 +</div> 288.6300 +<div class="memdoc"> 288.6301 + 288.6302 +<p> 288.6303 +Return a default indexed color palette with 256 (R,G,B) entries. 288.6304 +<p> 288.6305 +The default color palette is used by CImg when displaying images on 256 colors displays. It consists in the quantification of the (R,G,B) color space using 3:3:2 bits for color coding (i.e 8 levels for the Red and Green and 4 levels for the Blue). <dl class="return" compact><dt><b>Returns:</b></dt><dd>a 1x256x1x3 color image defining the palette entries. </dd></dl> 288.6306 + 288.6307 +</div> 288.6308 +</div><p> 288.6309 +<a class="anchor" name="b4e692d67bb005b4b25555693d15f739"></a><!-- doxytag: member="cimg_library::CImg::RGBtoBayer" ref="b4e692d67bb005b4b25555693d15f739" args="()" --> 288.6310 +<div class="memitem"> 288.6311 +<div class="memproto"> 288.6312 + <table class="memname"> 288.6313 + <tr> 288.6314 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& RGBtoBayer </td> 288.6315 + <td>(</td> 288.6316 + <td class="paramname"> </td> 288.6317 + <td> ) </td> 288.6318 + <td><code> [inline]</code></td> 288.6319 + </tr> 288.6320 + </table> 288.6321 +</div> 288.6322 +<div class="memdoc"> 288.6323 + 288.6324 +<p> 288.6325 +Convert a (R,G,B) image to a Bayer-coded representation. 288.6326 +<p> 288.6327 +<dl class="note" compact><dt><b>Note:</b></dt><dd>First (upper-left) pixel if the red component of the pixel color. </dd></dl> 288.6328 + 288.6329 +</div> 288.6330 +</div><p> 288.6331 +<a class="anchor" name="07751cdf418fc2120b971bc0f7e0da8c"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="07751cdf418fc2120b971bc0f7e0da8c" args="(const int x0, const int y0, const tc *const color, const float opacity=1)" --> 288.6332 +<div class="memitem"> 288.6333 +<div class="memproto"> 288.6334 + <table class="memname"> 288.6335 + <tr> 288.6336 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_point </td> 288.6337 + <td>(</td> 288.6338 + <td class="paramtype">const int </td> 288.6339 + <td class="paramname"> <em>x0</em>, </td> 288.6340 + </tr> 288.6341 + <tr> 288.6342 + <td class="paramkey"></td> 288.6343 + <td></td> 288.6344 + <td class="paramtype">const int </td> 288.6345 + <td class="paramname"> <em>y0</em>, </td> 288.6346 + </tr> 288.6347 + <tr> 288.6348 + <td class="paramkey"></td> 288.6349 + <td></td> 288.6350 + <td class="paramtype">const tc *const </td> 288.6351 + <td class="paramname"> <em>color</em>, </td> 288.6352 + </tr> 288.6353 + <tr> 288.6354 + <td class="paramkey"></td> 288.6355 + <td></td> 288.6356 + <td class="paramtype">const float </td> 288.6357 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.6358 + </tr> 288.6359 + <tr> 288.6360 + <td></td> 288.6361 + <td>)</td> 288.6362 + <td></td><td></td><td><code> [inline]</code></td> 288.6363 + </tr> 288.6364 + </table> 288.6365 +</div> 288.6366 +<div class="memdoc"> 288.6367 + 288.6368 +<p> 288.6369 +Draw a 2D colored point (pixel). 288.6370 +<p> 288.6371 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6372 + <table border="0" cellspacing="2" cellpadding="0"> 288.6373 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the point. </td></tr> 288.6374 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the point. </td></tr> 288.6375 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values, defining the color values. </td></tr> 288.6376 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6377 + </table> 288.6378 +</dl> 288.6379 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6380 +<li>Clipping is supported.</li><li>To set pixel values without clipping needs, you should use the faster <a class="el" href="structcimg__library_1_1CImg.html#b8fbc19527504258380aaed12c4bec4b" title="Fast access to pixel value for reading or writing.">CImg::operator()()</a> function. </li></ul> 288.6381 +</dd></dl> 288.6382 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0); 288.6383 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,128,64 }; 288.6384 + img.draw_point(50,50,color); 288.6385 +</pre></div> </dd></dl> 288.6386 + 288.6387 +</div> 288.6388 +</div><p> 288.6389 +<a class="anchor" name="d2f49716a6d07d5521f3c81bd411284c"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="d2f49716a6d07d5521f3c81bd411284c" args="(const CImgList< t > &points, const tc *const color, const float opacity=1)" --> 288.6390 +<div class="memitem"> 288.6391 +<div class="memproto"> 288.6392 + <table class="memname"> 288.6393 + <tr> 288.6394 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_point </td> 288.6395 + <td>(</td> 288.6396 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > & </td> 288.6397 + <td class="paramname"> <em>points</em>, </td> 288.6398 + </tr> 288.6399 + <tr> 288.6400 + <td class="paramkey"></td> 288.6401 + <td></td> 288.6402 + <td class="paramtype">const tc *const </td> 288.6403 + <td class="paramname"> <em>color</em>, </td> 288.6404 + </tr> 288.6405 + <tr> 288.6406 + <td class="paramkey"></td> 288.6407 + <td></td> 288.6408 + <td class="paramtype">const float </td> 288.6409 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.6410 + </tr> 288.6411 + <tr> 288.6412 + <td></td> 288.6413 + <td>)</td> 288.6414 + <td></td><td></td><td><code> [inline]</code></td> 288.6415 + </tr> 288.6416 + </table> 288.6417 +</div> 288.6418 +<div class="memdoc"> 288.6419 + 288.6420 +<p> 288.6421 +Draw a cloud of colored points. 288.6422 +<p> 288.6423 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6424 + <table border="0" cellspacing="2" cellpadding="0"> 288.6425 + <tr><td valign="top"></td><td valign="top"><em>points</em> </td><td>Coordinates of vertices, stored as a list of vectors. </td></tr> 288.6426 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.6427 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6428 + </table> 288.6429 +</dl> 288.6430 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6431 +<li>This function uses several call to the single <a class="el" href="structcimg__library_1_1CImg.html#07751cdf418fc2120b971bc0f7e0da8c" title="Draw a 2D colored point (pixel).">CImg::draw_point()</a> procedure, depending on the vectors size in <code>points</code>. </li></ul> 288.6432 +</dd></dl> 288.6433 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0); 288.6434 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,128,64 }; 288.6435 + CImgList<int> points; 288.6436 + points.insert(CImg<int>::vector(0,0)). 288.6437 + .insert(CImg<int>::vector(70,10)). 288.6438 + .insert(CImg<int>::vector(80,60)). 288.6439 + .insert(CImg<int>::vector(10,90)); 288.6440 + img.draw_point(points,color); 288.6441 +</pre></div> </dd></dl> 288.6442 + 288.6443 +</div> 288.6444 +</div><p> 288.6445 +<a class="anchor" name="52c224fa79b1d5ab1c1e8d619c8944b3"></a><!-- doxytag: member="cimg_library::CImg::draw_point" ref="52c224fa79b1d5ab1c1e8d619c8944b3" args="(const CImg< t > &points, const tc *const color, const float opacity=1)" --> 288.6446 +<div class="memitem"> 288.6447 +<div class="memproto"> 288.6448 + <table class="memname"> 288.6449 + <tr> 288.6450 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_point </td> 288.6451 + <td>(</td> 288.6452 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.6453 + <td class="paramname"> <em>points</em>, </td> 288.6454 + </tr> 288.6455 + <tr> 288.6456 + <td class="paramkey"></td> 288.6457 + <td></td> 288.6458 + <td class="paramtype">const tc *const </td> 288.6459 + <td class="paramname"> <em>color</em>, </td> 288.6460 + </tr> 288.6461 + <tr> 288.6462 + <td class="paramkey"></td> 288.6463 + <td></td> 288.6464 + <td class="paramtype">const float </td> 288.6465 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.6466 + </tr> 288.6467 + <tr> 288.6468 + <td></td> 288.6469 + <td>)</td> 288.6470 + <td></td><td></td><td><code> [inline]</code></td> 288.6471 + </tr> 288.6472 + </table> 288.6473 +</div> 288.6474 +<div class="memdoc"> 288.6475 + 288.6476 +<p> 288.6477 +Draw a cloud of colored points. 288.6478 +<p> 288.6479 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6480 +<li>Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image (sequence of vectors aligned along the x-axis). </li></ul> 288.6481 +</dd></dl> 288.6482 + 288.6483 +</div> 288.6484 +</div><p> 288.6485 +<a class="anchor" name="88ccbeac12af8b83cd17f9b72bbfe73b"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="88ccbeac12af8b83cd17f9b72bbfe73b" args="(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6486 +<div class="memitem"> 288.6487 +<div class="memproto"> 288.6488 + <table class="memname"> 288.6489 + <tr> 288.6490 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_line </td> 288.6491 + <td>(</td> 288.6492 + <td class="paramtype">const int </td> 288.6493 + <td class="paramname"> <em>x0</em>, </td> 288.6494 + </tr> 288.6495 + <tr> 288.6496 + <td class="paramkey"></td> 288.6497 + <td></td> 288.6498 + <td class="paramtype">const int </td> 288.6499 + <td class="paramname"> <em>y0</em>, </td> 288.6500 + </tr> 288.6501 + <tr> 288.6502 + <td class="paramkey"></td> 288.6503 + <td></td> 288.6504 + <td class="paramtype">const int </td> 288.6505 + <td class="paramname"> <em>x1</em>, </td> 288.6506 + </tr> 288.6507 + <tr> 288.6508 + <td class="paramkey"></td> 288.6509 + <td></td> 288.6510 + <td class="paramtype">const int </td> 288.6511 + <td class="paramname"> <em>y1</em>, </td> 288.6512 + </tr> 288.6513 + <tr> 288.6514 + <td class="paramkey"></td> 288.6515 + <td></td> 288.6516 + <td class="paramtype">const tc *const </td> 288.6517 + <td class="paramname"> <em>color</em>, </td> 288.6518 + </tr> 288.6519 + <tr> 288.6520 + <td class="paramkey"></td> 288.6521 + <td></td> 288.6522 + <td class="paramtype">const float </td> 288.6523 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.6524 + </tr> 288.6525 + <tr> 288.6526 + <td class="paramkey"></td> 288.6527 + <td></td> 288.6528 + <td class="paramtype">const unsigned int </td> 288.6529 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.6530 + </tr> 288.6531 + <tr> 288.6532 + <td class="paramkey"></td> 288.6533 + <td></td> 288.6534 + <td class="paramtype">const bool </td> 288.6535 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.6536 + </tr> 288.6537 + <tr> 288.6538 + <td></td> 288.6539 + <td>)</td> 288.6540 + <td></td><td></td><td><code> [inline]</code></td> 288.6541 + </tr> 288.6542 + </table> 288.6543 +</div> 288.6544 +<div class="memdoc"> 288.6545 + 288.6546 +<p> 288.6547 +Draw a 2D colored line. 288.6548 +<p> 288.6549 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6550 + <table border="0" cellspacing="2" cellpadding="0"> 288.6551 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the starting line point. </td></tr> 288.6552 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the starting line point. </td></tr> 288.6553 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the ending line point. </td></tr> 288.6554 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the ending line point. </td></tr> 288.6555 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.6556 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6557 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.6558 + <tr><td valign="top"></td><td valign="top"><em>init_hatch</em> </td><td>Flag telling if a reinitialization of the hash state must be done (optional). </td></tr> 288.6559 + </table> 288.6560 +</dl> 288.6561 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6562 +<li>Clipping is supported.</li><li>Line routine uses Bresenham's algorithm.</li><li>Set <code>init_hatch</code> = false to draw consecutive hatched segments without breaking the line pattern. </li></ul> 288.6563 +</dd></dl> 288.6564 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0); 288.6565 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,128,64 }; 288.6566 + img.draw_line(40,40,80,70,color); 288.6567 +</pre></div> </dd></dl> 288.6568 + 288.6569 +</div> 288.6570 +</div><p> 288.6571 +<a class="anchor" name="b98fc42096d2a5a075be384b1f37094c"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="b98fc42096d2a5a075be384b1f37094c" args="(const int x0, const int y0, const int x1, const int y1, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6572 +<div class="memitem"> 288.6573 +<div class="memproto"> 288.6574 + <table class="memname"> 288.6575 + <tr> 288.6576 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_line </td> 288.6577 + <td>(</td> 288.6578 + <td class="paramtype">const int </td> 288.6579 + <td class="paramname"> <em>x0</em>, </td> 288.6580 + </tr> 288.6581 + <tr> 288.6582 + <td class="paramkey"></td> 288.6583 + <td></td> 288.6584 + <td class="paramtype">const int </td> 288.6585 + <td class="paramname"> <em>y0</em>, </td> 288.6586 + </tr> 288.6587 + <tr> 288.6588 + <td class="paramkey"></td> 288.6589 + <td></td> 288.6590 + <td class="paramtype">const int </td> 288.6591 + <td class="paramname"> <em>x1</em>, </td> 288.6592 + </tr> 288.6593 + <tr> 288.6594 + <td class="paramkey"></td> 288.6595 + <td></td> 288.6596 + <td class="paramtype">const int </td> 288.6597 + <td class="paramname"> <em>y1</em>, </td> 288.6598 + </tr> 288.6599 + <tr> 288.6600 + <td class="paramkey"></td> 288.6601 + <td></td> 288.6602 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > & </td> 288.6603 + <td class="paramname"> <em>texture</em>, </td> 288.6604 + </tr> 288.6605 + <tr> 288.6606 + <td class="paramkey"></td> 288.6607 + <td></td> 288.6608 + <td class="paramtype">const int </td> 288.6609 + <td class="paramname"> <em>tx0</em>, </td> 288.6610 + </tr> 288.6611 + <tr> 288.6612 + <td class="paramkey"></td> 288.6613 + <td></td> 288.6614 + <td class="paramtype">const int </td> 288.6615 + <td class="paramname"> <em>ty0</em>, </td> 288.6616 + </tr> 288.6617 + <tr> 288.6618 + <td class="paramkey"></td> 288.6619 + <td></td> 288.6620 + <td class="paramtype">const int </td> 288.6621 + <td class="paramname"> <em>tx1</em>, </td> 288.6622 + </tr> 288.6623 + <tr> 288.6624 + <td class="paramkey"></td> 288.6625 + <td></td> 288.6626 + <td class="paramtype">const int </td> 288.6627 + <td class="paramname"> <em>ty1</em>, </td> 288.6628 + </tr> 288.6629 + <tr> 288.6630 + <td class="paramkey"></td> 288.6631 + <td></td> 288.6632 + <td class="paramtype">const float </td> 288.6633 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.6634 + </tr> 288.6635 + <tr> 288.6636 + <td class="paramkey"></td> 288.6637 + <td></td> 288.6638 + <td class="paramtype">const unsigned int </td> 288.6639 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.6640 + </tr> 288.6641 + <tr> 288.6642 + <td class="paramkey"></td> 288.6643 + <td></td> 288.6644 + <td class="paramtype">const bool </td> 288.6645 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.6646 + </tr> 288.6647 + <tr> 288.6648 + <td></td> 288.6649 + <td>)</td> 288.6650 + <td></td><td></td><td><code> [inline]</code></td> 288.6651 + </tr> 288.6652 + </table> 288.6653 +</div> 288.6654 +<div class="memdoc"> 288.6655 + 288.6656 +<p> 288.6657 +Draw a 2D textured line. 288.6658 +<p> 288.6659 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6660 + <table border="0" cellspacing="2" cellpadding="0"> 288.6661 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the starting line point. </td></tr> 288.6662 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the starting line point. </td></tr> 288.6663 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the ending line point. </td></tr> 288.6664 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the ending line point. </td></tr> 288.6665 + <tr><td valign="top"></td><td valign="top"><em>texture</em> </td><td>Texture image defining the pixel colors. </td></tr> 288.6666 + <tr><td valign="top"></td><td valign="top"><em>tx0</em> </td><td>X-coordinate of the starting texture point. </td></tr> 288.6667 + <tr><td valign="top"></td><td valign="top"><em>ty0</em> </td><td>Y-coordinate of the starting texture point. </td></tr> 288.6668 + <tr><td valign="top"></td><td valign="top"><em>tx1</em> </td><td>X-coordinate of the ending texture point. </td></tr> 288.6669 + <tr><td valign="top"></td><td valign="top"><em>ty1</em> </td><td>Y-coordinate of the ending texture point. </td></tr> 288.6670 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6671 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.6672 + <tr><td valign="top"></td><td valign="top"><em>init_hatch</em> </td><td>Flag telling if the hash variable must be reinitialized (optional). </td></tr> 288.6673 + </table> 288.6674 +</dl> 288.6675 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6676 +<li>Clipping is supported but not for texture coordinates.</li><li>Line routine uses the well known Bresenham's algorithm. </li></ul> 288.6677 +</dd></dl> 288.6678 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0), texture(<span class="stringliteral">"texture256x256.ppm"</span>); 288.6679 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,128,64 }; 288.6680 + img.draw_line(40,40,80,70,texture,0,0,255,255); 288.6681 +</pre></div> </dd></dl> 288.6682 + 288.6683 +</div> 288.6684 +</div><p> 288.6685 +<a class="anchor" name="91e810ebf4b600b461bbfe42708f3cd6"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="91e810ebf4b600b461bbfe42708f3cd6" args="(const CImgList< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6686 +<div class="memitem"> 288.6687 +<div class="memproto"> 288.6688 + <table class="memname"> 288.6689 + <tr> 288.6690 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_line </td> 288.6691 + <td>(</td> 288.6692 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > & </td> 288.6693 + <td class="paramname"> <em>points</em>, </td> 288.6694 + </tr> 288.6695 + <tr> 288.6696 + <td class="paramkey"></td> 288.6697 + <td></td> 288.6698 + <td class="paramtype">const tc *const </td> 288.6699 + <td class="paramname"> <em>color</em>, </td> 288.6700 + </tr> 288.6701 + <tr> 288.6702 + <td class="paramkey"></td> 288.6703 + <td></td> 288.6704 + <td class="paramtype">const float </td> 288.6705 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.6706 + </tr> 288.6707 + <tr> 288.6708 + <td class="paramkey"></td> 288.6709 + <td></td> 288.6710 + <td class="paramtype">const unsigned int </td> 288.6711 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.6712 + </tr> 288.6713 + <tr> 288.6714 + <td class="paramkey"></td> 288.6715 + <td></td> 288.6716 + <td class="paramtype">const bool </td> 288.6717 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.6718 + </tr> 288.6719 + <tr> 288.6720 + <td></td> 288.6721 + <td>)</td> 288.6722 + <td></td><td></td><td><code> [inline]</code></td> 288.6723 + </tr> 288.6724 + </table> 288.6725 +</div> 288.6726 +<div class="memdoc"> 288.6727 + 288.6728 +<p> 288.6729 +Draw a set of consecutive colored lines in the instance image. 288.6730 +<p> 288.6731 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6732 + <table border="0" cellspacing="2" cellpadding="0"> 288.6733 + <tr><td valign="top"></td><td valign="top"><em>points</em> </td><td>Coordinates of vertices, stored as a list of vectors. </td></tr> 288.6734 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.6735 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6736 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.6737 + <tr><td valign="top"></td><td valign="top"><em>init_hatch</em> </td><td>If set to true, init hatch motif. </td></tr> 288.6738 + </table> 288.6739 +</dl> 288.6740 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6741 +<li>This function uses several call to the single <a class="el" href="structcimg__library_1_1CImg.html#88ccbeac12af8b83cd17f9b72bbfe73b" title="Draw a 2D colored line.">CImg::draw_line()</a> procedure, depending on the vectors size in <code>points</code>. </li></ul> 288.6742 +</dd></dl> 288.6743 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0); 288.6744 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,128,64 }; 288.6745 + CImgList<int> points; 288.6746 + points.insert(CImg<int>::vector(0,0)). 288.6747 + .insert(CImg<int>::vector(70,10)). 288.6748 + .insert(CImg<int>::vector(80,60)). 288.6749 + .insert(CImg<int>::vector(10,90)); 288.6750 + img.draw_line(points,color); 288.6751 +</pre></div> </dd></dl> 288.6752 + 288.6753 +</div> 288.6754 +</div><p> 288.6755 +<a class="anchor" name="f42f741d0f579a78f9f58d0d6499bc53"></a><!-- doxytag: member="cimg_library::CImg::draw_line" ref="f42f741d0f579a78f9f58d0d6499bc53" args="(const CImg< t > &points, const tc *const color, const float opacity=1, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6756 +<div class="memitem"> 288.6757 +<div class="memproto"> 288.6758 + <table class="memname"> 288.6759 + <tr> 288.6760 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_line </td> 288.6761 + <td>(</td> 288.6762 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.6763 + <td class="paramname"> <em>points</em>, </td> 288.6764 + </tr> 288.6765 + <tr> 288.6766 + <td class="paramkey"></td> 288.6767 + <td></td> 288.6768 + <td class="paramtype">const tc *const </td> 288.6769 + <td class="paramname"> <em>color</em>, </td> 288.6770 + </tr> 288.6771 + <tr> 288.6772 + <td class="paramkey"></td> 288.6773 + <td></td> 288.6774 + <td class="paramtype">const float </td> 288.6775 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.6776 + </tr> 288.6777 + <tr> 288.6778 + <td class="paramkey"></td> 288.6779 + <td></td> 288.6780 + <td class="paramtype">const unsigned int </td> 288.6781 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.6782 + </tr> 288.6783 + <tr> 288.6784 + <td class="paramkey"></td> 288.6785 + <td></td> 288.6786 + <td class="paramtype">const bool </td> 288.6787 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.6788 + </tr> 288.6789 + <tr> 288.6790 + <td></td> 288.6791 + <td>)</td> 288.6792 + <td></td><td></td><td><code> [inline]</code></td> 288.6793 + </tr> 288.6794 + </table> 288.6795 +</div> 288.6796 +<div class="memdoc"> 288.6797 + 288.6798 +<p> 288.6799 +Draw a set of consecutive colored lines in the instance image. 288.6800 +<p> 288.6801 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6802 +<li>Similar to the previous function, where the N vertex coordinates are stored as a Nx2 or Nx3 image (sequence of vectors aligned along the x-axis). </li></ul> 288.6803 +</dd></dl> 288.6804 + 288.6805 +</div> 288.6806 +</div><p> 288.6807 +<a class="anchor" name="1633f28b9b0646cff390b0e060cce47b"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="1633f28b9b0646cff390b0e060cce47b" args="(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6808 +<div class="memitem"> 288.6809 +<div class="memproto"> 288.6810 + <table class="memname"> 288.6811 + <tr> 288.6812 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_spline </td> 288.6813 + <td>(</td> 288.6814 + <td class="paramtype">const int </td> 288.6815 + <td class="paramname"> <em>x0</em>, </td> 288.6816 + </tr> 288.6817 + <tr> 288.6818 + <td class="paramkey"></td> 288.6819 + <td></td> 288.6820 + <td class="paramtype">const int </td> 288.6821 + <td class="paramname"> <em>y0</em>, </td> 288.6822 + </tr> 288.6823 + <tr> 288.6824 + <td class="paramkey"></td> 288.6825 + <td></td> 288.6826 + <td class="paramtype">const float </td> 288.6827 + <td class="paramname"> <em>u0</em>, </td> 288.6828 + </tr> 288.6829 + <tr> 288.6830 + <td class="paramkey"></td> 288.6831 + <td></td> 288.6832 + <td class="paramtype">const float </td> 288.6833 + <td class="paramname"> <em>v0</em>, </td> 288.6834 + </tr> 288.6835 + <tr> 288.6836 + <td class="paramkey"></td> 288.6837 + <td></td> 288.6838 + <td class="paramtype">const int </td> 288.6839 + <td class="paramname"> <em>x1</em>, </td> 288.6840 + </tr> 288.6841 + <tr> 288.6842 + <td class="paramkey"></td> 288.6843 + <td></td> 288.6844 + <td class="paramtype">const int </td> 288.6845 + <td class="paramname"> <em>y1</em>, </td> 288.6846 + </tr> 288.6847 + <tr> 288.6848 + <td class="paramkey"></td> 288.6849 + <td></td> 288.6850 + <td class="paramtype">const float </td> 288.6851 + <td class="paramname"> <em>u1</em>, </td> 288.6852 + </tr> 288.6853 + <tr> 288.6854 + <td class="paramkey"></td> 288.6855 + <td></td> 288.6856 + <td class="paramtype">const float </td> 288.6857 + <td class="paramname"> <em>v1</em>, </td> 288.6858 + </tr> 288.6859 + <tr> 288.6860 + <td class="paramkey"></td> 288.6861 + <td></td> 288.6862 + <td class="paramtype">const tc *const </td> 288.6863 + <td class="paramname"> <em>color</em>, </td> 288.6864 + </tr> 288.6865 + <tr> 288.6866 + <td class="paramkey"></td> 288.6867 + <td></td> 288.6868 + <td class="paramtype">const float </td> 288.6869 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.6870 + </tr> 288.6871 + <tr> 288.6872 + <td class="paramkey"></td> 288.6873 + <td></td> 288.6874 + <td class="paramtype">const float </td> 288.6875 + <td class="paramname"> <em>precision</em> = <code>4</code>, </td> 288.6876 + </tr> 288.6877 + <tr> 288.6878 + <td class="paramkey"></td> 288.6879 + <td></td> 288.6880 + <td class="paramtype">const unsigned int </td> 288.6881 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.6882 + </tr> 288.6883 + <tr> 288.6884 + <td class="paramkey"></td> 288.6885 + <td></td> 288.6886 + <td class="paramtype">const bool </td> 288.6887 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.6888 + </tr> 288.6889 + <tr> 288.6890 + <td></td> 288.6891 + <td>)</td> 288.6892 + <td></td><td></td><td><code> [inline]</code></td> 288.6893 + </tr> 288.6894 + </table> 288.6895 +</div> 288.6896 +<div class="memdoc"> 288.6897 + 288.6898 +<p> 288.6899 +Draw a cubic spline curve in the instance image. 288.6900 +<p> 288.6901 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.6902 + <table border="0" cellspacing="2" cellpadding="0"> 288.6903 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the starting curve point </td></tr> 288.6904 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the starting curve point </td></tr> 288.6905 + <tr><td valign="top"></td><td valign="top"><em>u0</em> </td><td>X-coordinate of the starting velocity </td></tr> 288.6906 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>Y-coordinate of the starting velocity </td></tr> 288.6907 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the ending curve point </td></tr> 288.6908 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the ending curve point </td></tr> 288.6909 + <tr><td valign="top"></td><td valign="top"><em>u1</em> </td><td>X-coordinate of the ending velocity </td></tr> 288.6910 + <tr><td valign="top"></td><td valign="top"><em>v1</em> </td><td>Y-coordinate of the ending velocity </td></tr> 288.6911 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.6912 + <tr><td valign="top"></td><td valign="top"><em>precision</em> </td><td>Curve drawing precision (optional). </td></tr> 288.6913 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.6914 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.6915 + <tr><td valign="top"></td><td valign="top"><em>init_hatch</em> </td><td>If <code>true</code>, init hatch motif. </td></tr> 288.6916 + </table> 288.6917 +</dl> 288.6918 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.6919 +<li>The curve is a 2D cubic Bezier spline, from the set of specified starting/ending points and corresponding velocity vectors.</li><li>The spline is drawn as a serie of connected segments. The <code>precision</code> parameter sets the average number of pixels in each drawn segment.</li><li>A cubic Bezier curve is sometimes defined by a set of 4 points { (<code>x0</code>,<code>y0</code>), (<code>xa</code>,<code>ya</code>), (<code>xb</code>,<code>yb</code>), (<code>x1</code>,<code>y1</code>) } where (<code>x0</code>,<code>y0</code>) is the starting point, (<code>x1</code>,<code>y1</code>) is the ending point and (<code>xa</code>,<code>ya</code>), (<code>xb</code>,<code>yb</code>) are two <em>control</em> points. The starting and ending velocities (<code>u0</code>,<code>v0</code>) and (<code>u1</code>,<code>v1</code>) can be deduced easily from the control points as <code>u0</code> = (<code>xa</code> - <code>x0</code>), <code>v0</code> = (<code>ya</code> - <code>y0</code>), <code>u1</code> = (<code>x1</code> - <code>xb</code>) and <code>v1</code> = (<code>y1</code> - <code>yb</code>). </li></ul> 288.6920 +</dd></dl> 288.6921 +<dl class="user" compact><dt><b>Example:</b></dt><dd><div class="fragment"><pre class="fragment"> CImg<unsigned char> img(100,100,1,3,0); 288.6922 + <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> color[] = { 255,255,255 }; 288.6923 + img.draw_spline(30,30,0,100,90,40,0,-100,color); 288.6924 +</pre></div> </dd></dl> 288.6925 + 288.6926 +</div> 288.6927 +</div><p> 288.6928 +<a class="anchor" name="111ec303273ffc87a1be739275957c92"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="111ec303273ffc87a1be739275957c92" args="(const int x0, const int y0, const int z0, const float u0, const float v0, const float w0, const int x1, const int y1, const int z1, const float u1, const float v1, const float w1, const tc *const color, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.6929 +<div class="memitem"> 288.6930 +<div class="memproto"> 288.6931 + <table class="memname"> 288.6932 + <tr> 288.6933 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_spline </td> 288.6934 + <td>(</td> 288.6935 + <td class="paramtype">const int </td> 288.6936 + <td class="paramname"> <em>x0</em>, </td> 288.6937 + </tr> 288.6938 + <tr> 288.6939 + <td class="paramkey"></td> 288.6940 + <td></td> 288.6941 + <td class="paramtype">const int </td> 288.6942 + <td class="paramname"> <em>y0</em>, </td> 288.6943 + </tr> 288.6944 + <tr> 288.6945 + <td class="paramkey"></td> 288.6946 + <td></td> 288.6947 + <td class="paramtype">const int </td> 288.6948 + <td class="paramname"> <em>z0</em>, </td> 288.6949 + </tr> 288.6950 + <tr> 288.6951 + <td class="paramkey"></td> 288.6952 + <td></td> 288.6953 + <td class="paramtype">const float </td> 288.6954 + <td class="paramname"> <em>u0</em>, </td> 288.6955 + </tr> 288.6956 + <tr> 288.6957 + <td class="paramkey"></td> 288.6958 + <td></td> 288.6959 + <td class="paramtype">const float </td> 288.6960 + <td class="paramname"> <em>v0</em>, </td> 288.6961 + </tr> 288.6962 + <tr> 288.6963 + <td class="paramkey"></td> 288.6964 + <td></td> 288.6965 + <td class="paramtype">const float </td> 288.6966 + <td class="paramname"> <em>w0</em>, </td> 288.6967 + </tr> 288.6968 + <tr> 288.6969 + <td class="paramkey"></td> 288.6970 + <td></td> 288.6971 + <td class="paramtype">const int </td> 288.6972 + <td class="paramname"> <em>x1</em>, </td> 288.6973 + </tr> 288.6974 + <tr> 288.6975 + <td class="paramkey"></td> 288.6976 + <td></td> 288.6977 + <td class="paramtype">const int </td> 288.6978 + <td class="paramname"> <em>y1</em>, </td> 288.6979 + </tr> 288.6980 + <tr> 288.6981 + <td class="paramkey"></td> 288.6982 + <td></td> 288.6983 + <td class="paramtype">const int </td> 288.6984 + <td class="paramname"> <em>z1</em>, </td> 288.6985 + </tr> 288.6986 + <tr> 288.6987 + <td class="paramkey"></td> 288.6988 + <td></td> 288.6989 + <td class="paramtype">const float </td> 288.6990 + <td class="paramname"> <em>u1</em>, </td> 288.6991 + </tr> 288.6992 + <tr> 288.6993 + <td class="paramkey"></td> 288.6994 + <td></td> 288.6995 + <td class="paramtype">const float </td> 288.6996 + <td class="paramname"> <em>v1</em>, </td> 288.6997 + </tr> 288.6998 + <tr> 288.6999 + <td class="paramkey"></td> 288.7000 + <td></td> 288.7001 + <td class="paramtype">const float </td> 288.7002 + <td class="paramname"> <em>w1</em>, </td> 288.7003 + </tr> 288.7004 + <tr> 288.7005 + <td class="paramkey"></td> 288.7006 + <td></td> 288.7007 + <td class="paramtype">const tc *const </td> 288.7008 + <td class="paramname"> <em>color</em>, </td> 288.7009 + </tr> 288.7010 + <tr> 288.7011 + <td class="paramkey"></td> 288.7012 + <td></td> 288.7013 + <td class="paramtype">const float </td> 288.7014 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.7015 + </tr> 288.7016 + <tr> 288.7017 + <td class="paramkey"></td> 288.7018 + <td></td> 288.7019 + <td class="paramtype">const float </td> 288.7020 + <td class="paramname"> <em>precision</em> = <code>4</code>, </td> 288.7021 + </tr> 288.7022 + <tr> 288.7023 + <td class="paramkey"></td> 288.7024 + <td></td> 288.7025 + <td class="paramtype">const unsigned int </td> 288.7026 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.7027 + </tr> 288.7028 + <tr> 288.7029 + <td class="paramkey"></td> 288.7030 + <td></td> 288.7031 + <td class="paramtype">const bool </td> 288.7032 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.7033 + </tr> 288.7034 + <tr> 288.7035 + <td></td> 288.7036 + <td>)</td> 288.7037 + <td></td><td></td><td><code> [inline]</code></td> 288.7038 + </tr> 288.7039 + </table> 288.7040 +</div> 288.7041 +<div class="memdoc"> 288.7042 + 288.7043 +<p> 288.7044 +Draw a cubic spline curve in the instance image (for volumetric images). 288.7045 +<p> 288.7046 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7047 +<li>Similar to <a class="el" href="structcimg__library_1_1CImg.html#1633f28b9b0646cff390b0e060cce47b" title="Draw a cubic spline curve in the instance image.">CImg::draw_spline()</a> for a 3D spline in a volumetric image. </li></ul> 288.7048 +</dd></dl> 288.7049 + 288.7050 +</div> 288.7051 +</div><p> 288.7052 +<a class="anchor" name="9a80dade828f83f301f1470a6d0d474d"></a><!-- doxytag: member="cimg_library::CImg::draw_spline" ref="9a80dade828f83f301f1470a6d0d474d" args="(const int x0, const int y0, const float u0, const float v0, const int x1, const int y1, const float u1, const float v1, const CImg< t > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const float opacity=1, const float precision=4, const unsigned int pattern=~0U, const bool init_hatch=true)" --> 288.7053 +<div class="memitem"> 288.7054 +<div class="memproto"> 288.7055 + <table class="memname"> 288.7056 + <tr> 288.7057 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_spline </td> 288.7058 + <td>(</td> 288.7059 + <td class="paramtype">const int </td> 288.7060 + <td class="paramname"> <em>x0</em>, </td> 288.7061 + </tr> 288.7062 + <tr> 288.7063 + <td class="paramkey"></td> 288.7064 + <td></td> 288.7065 + <td class="paramtype">const int </td> 288.7066 + <td class="paramname"> <em>y0</em>, </td> 288.7067 + </tr> 288.7068 + <tr> 288.7069 + <td class="paramkey"></td> 288.7070 + <td></td> 288.7071 + <td class="paramtype">const float </td> 288.7072 + <td class="paramname"> <em>u0</em>, </td> 288.7073 + </tr> 288.7074 + <tr> 288.7075 + <td class="paramkey"></td> 288.7076 + <td></td> 288.7077 + <td class="paramtype">const float </td> 288.7078 + <td class="paramname"> <em>v0</em>, </td> 288.7079 + </tr> 288.7080 + <tr> 288.7081 + <td class="paramkey"></td> 288.7082 + <td></td> 288.7083 + <td class="paramtype">const int </td> 288.7084 + <td class="paramname"> <em>x1</em>, </td> 288.7085 + </tr> 288.7086 + <tr> 288.7087 + <td class="paramkey"></td> 288.7088 + <td></td> 288.7089 + <td class="paramtype">const int </td> 288.7090 + <td class="paramname"> <em>y1</em>, </td> 288.7091 + </tr> 288.7092 + <tr> 288.7093 + <td class="paramkey"></td> 288.7094 + <td></td> 288.7095 + <td class="paramtype">const float </td> 288.7096 + <td class="paramname"> <em>u1</em>, </td> 288.7097 + </tr> 288.7098 + <tr> 288.7099 + <td class="paramkey"></td> 288.7100 + <td></td> 288.7101 + <td class="paramtype">const float </td> 288.7102 + <td class="paramname"> <em>v1</em>, </td> 288.7103 + </tr> 288.7104 + <tr> 288.7105 + <td class="paramkey"></td> 288.7106 + <td></td> 288.7107 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.7108 + <td class="paramname"> <em>texture</em>, </td> 288.7109 + </tr> 288.7110 + <tr> 288.7111 + <td class="paramkey"></td> 288.7112 + <td></td> 288.7113 + <td class="paramtype">const int </td> 288.7114 + <td class="paramname"> <em>tx0</em>, </td> 288.7115 + </tr> 288.7116 + <tr> 288.7117 + <td class="paramkey"></td> 288.7118 + <td></td> 288.7119 + <td class="paramtype">const int </td> 288.7120 + <td class="paramname"> <em>ty0</em>, </td> 288.7121 + </tr> 288.7122 + <tr> 288.7123 + <td class="paramkey"></td> 288.7124 + <td></td> 288.7125 + <td class="paramtype">const int </td> 288.7126 + <td class="paramname"> <em>tx1</em>, </td> 288.7127 + </tr> 288.7128 + <tr> 288.7129 + <td class="paramkey"></td> 288.7130 + <td></td> 288.7131 + <td class="paramtype">const int </td> 288.7132 + <td class="paramname"> <em>ty1</em>, </td> 288.7133 + </tr> 288.7134 + <tr> 288.7135 + <td class="paramkey"></td> 288.7136 + <td></td> 288.7137 + <td class="paramtype">const float </td> 288.7138 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.7139 + </tr> 288.7140 + <tr> 288.7141 + <td class="paramkey"></td> 288.7142 + <td></td> 288.7143 + <td class="paramtype">const float </td> 288.7144 + <td class="paramname"> <em>precision</em> = <code>4</code>, </td> 288.7145 + </tr> 288.7146 + <tr> 288.7147 + <td class="paramkey"></td> 288.7148 + <td></td> 288.7149 + <td class="paramtype">const unsigned int </td> 288.7150 + <td class="paramname"> <em>pattern</em> = <code>~0U</code>, </td> 288.7151 + </tr> 288.7152 + <tr> 288.7153 + <td class="paramkey"></td> 288.7154 + <td></td> 288.7155 + <td class="paramtype">const bool </td> 288.7156 + <td class="paramname"> <em>init_hatch</em> = <code>true</code></td><td> </td> 288.7157 + </tr> 288.7158 + <tr> 288.7159 + <td></td> 288.7160 + <td>)</td> 288.7161 + <td></td><td></td><td><code> [inline]</code></td> 288.7162 + </tr> 288.7163 + </table> 288.7164 +</div> 288.7165 +<div class="memdoc"> 288.7166 + 288.7167 +<p> 288.7168 +Draw a cubic spline curve in the instance image. 288.7169 +<p> 288.7170 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7171 + <table border="0" cellspacing="2" cellpadding="0"> 288.7172 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the starting curve point </td></tr> 288.7173 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the starting curve point </td></tr> 288.7174 + <tr><td valign="top"></td><td valign="top"><em>u0</em> </td><td>X-coordinate of the starting velocity </td></tr> 288.7175 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>Y-coordinate of the starting velocity </td></tr> 288.7176 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the ending curve point </td></tr> 288.7177 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the ending curve point </td></tr> 288.7178 + <tr><td valign="top"></td><td valign="top"><em>u1</em> </td><td>X-coordinate of the ending velocity </td></tr> 288.7179 + <tr><td valign="top"></td><td valign="top"><em>v1</em> </td><td>Y-coordinate of the ending velocity </td></tr> 288.7180 + <tr><td valign="top"></td><td valign="top"><em>texture</em> </td><td>Texture image defining line pixel colors. </td></tr> 288.7181 + <tr><td valign="top"></td><td valign="top"><em>tx0</em> </td><td>X-coordinate of the starting texture point. </td></tr> 288.7182 + <tr><td valign="top"></td><td valign="top"><em>ty0</em> </td><td>Y-coordinate of the starting texture point. </td></tr> 288.7183 + <tr><td valign="top"></td><td valign="top"><em>tx1</em> </td><td>X-coordinate of the ending texture point. </td></tr> 288.7184 + <tr><td valign="top"></td><td valign="top"><em>ty1</em> </td><td>Y-coordinate of the ending texture point. </td></tr> 288.7185 + <tr><td valign="top"></td><td valign="top"><em>precision</em> </td><td>Curve drawing precision (optional). </td></tr> 288.7186 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7187 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.7188 + <tr><td valign="top"></td><td valign="top"><em>init_hatch</em> </td><td>if <code>true</code>, reinit hatch motif. </td></tr> 288.7189 + </table> 288.7190 +</dl> 288.7191 + 288.7192 +</div> 288.7193 +</div><p> 288.7194 +<a class="anchor" name="4955c7a5a132072f634ed9832b783f83"></a><!-- doxytag: member="cimg_library::CImg::draw_arrow" ref="4955c7a5a132072f634ed9832b783f83" args="(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1, const float angle=30, const float length=-10, const unsigned int pattern=~0U)" --> 288.7195 +<div class="memitem"> 288.7196 +<div class="memproto"> 288.7197 + <table class="memname"> 288.7198 + <tr> 288.7199 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_arrow </td> 288.7200 + <td>(</td> 288.7201 + <td class="paramtype">const int </td> 288.7202 + <td class="paramname"> <em>x0</em>, </td> 288.7203 + </tr> 288.7204 + <tr> 288.7205 + <td class="paramkey"></td> 288.7206 + <td></td> 288.7207 + <td class="paramtype">const int </td> 288.7208 + <td class="paramname"> <em>y0</em>, </td> 288.7209 + </tr> 288.7210 + <tr> 288.7211 + <td class="paramkey"></td> 288.7212 + <td></td> 288.7213 + <td class="paramtype">const int </td> 288.7214 + <td class="paramname"> <em>x1</em>, </td> 288.7215 + </tr> 288.7216 + <tr> 288.7217 + <td class="paramkey"></td> 288.7218 + <td></td> 288.7219 + <td class="paramtype">const int </td> 288.7220 + <td class="paramname"> <em>y1</em>, </td> 288.7221 + </tr> 288.7222 + <tr> 288.7223 + <td class="paramkey"></td> 288.7224 + <td></td> 288.7225 + <td class="paramtype">const tc *const </td> 288.7226 + <td class="paramname"> <em>color</em>, </td> 288.7227 + </tr> 288.7228 + <tr> 288.7229 + <td class="paramkey"></td> 288.7230 + <td></td> 288.7231 + <td class="paramtype">const float </td> 288.7232 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.7233 + </tr> 288.7234 + <tr> 288.7235 + <td class="paramkey"></td> 288.7236 + <td></td> 288.7237 + <td class="paramtype">const float </td> 288.7238 + <td class="paramname"> <em>angle</em> = <code>30</code>, </td> 288.7239 + </tr> 288.7240 + <tr> 288.7241 + <td class="paramkey"></td> 288.7242 + <td></td> 288.7243 + <td class="paramtype">const float </td> 288.7244 + <td class="paramname"> <em>length</em> = <code>-10</code>, </td> 288.7245 + </tr> 288.7246 + <tr> 288.7247 + <td class="paramkey"></td> 288.7248 + <td></td> 288.7249 + <td class="paramtype">const unsigned int </td> 288.7250 + <td class="paramname"> <em>pattern</em> = <code>~0U</code></td><td> </td> 288.7251 + </tr> 288.7252 + <tr> 288.7253 + <td></td> 288.7254 + <td>)</td> 288.7255 + <td></td><td></td><td><code> [inline]</code></td> 288.7256 + </tr> 288.7257 + </table> 288.7258 +</div> 288.7259 +<div class="memdoc"> 288.7260 + 288.7261 +<p> 288.7262 +Draw a colored arrow in the instance image. 288.7263 +<p> 288.7264 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7265 + <table border="0" cellspacing="2" cellpadding="0"> 288.7266 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the starting arrow point (tail). </td></tr> 288.7267 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the starting arrow point (tail). </td></tr> 288.7268 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the ending arrow point (head). </td></tr> 288.7269 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the ending arrow point (head). </td></tr> 288.7270 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.7271 + <tr><td valign="top"></td><td valign="top"><em>angle</em> </td><td>Aperture angle of the arrow head (optional). </td></tr> 288.7272 + <tr><td valign="top"></td><td valign="top"><em>length</em> </td><td>Length of the arrow head. If negative, describes a percentage of the arrow length (optional). </td></tr> 288.7273 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7274 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>An integer whose bits describe the line pattern (optional). </td></tr> 288.7275 + </table> 288.7276 +</dl> 288.7277 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7278 +<li>Clipping is supported. </li></ul> 288.7279 +</dd></dl> 288.7280 + 288.7281 +</div> 288.7282 +</div><p> 288.7283 +<a class="anchor" name="2262bc9cfece26084c7223bf74ad63d5"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="2262bc9cfece26084c7223bf74ad63d5" args="(const int x0, const int y0, const int z0, const int v0, const CImg< t > &sprite, const float opacity=1)" --> 288.7284 +<div class="memitem"> 288.7285 +<div class="memproto"> 288.7286 + <table class="memname"> 288.7287 + <tr> 288.7288 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_image </td> 288.7289 + <td>(</td> 288.7290 + <td class="paramtype">const int </td> 288.7291 + <td class="paramname"> <em>x0</em>, </td> 288.7292 + </tr> 288.7293 + <tr> 288.7294 + <td class="paramkey"></td> 288.7295 + <td></td> 288.7296 + <td class="paramtype">const int </td> 288.7297 + <td class="paramname"> <em>y0</em>, </td> 288.7298 + </tr> 288.7299 + <tr> 288.7300 + <td class="paramkey"></td> 288.7301 + <td></td> 288.7302 + <td class="paramtype">const int </td> 288.7303 + <td class="paramname"> <em>z0</em>, </td> 288.7304 + </tr> 288.7305 + <tr> 288.7306 + <td class="paramkey"></td> 288.7307 + <td></td> 288.7308 + <td class="paramtype">const int </td> 288.7309 + <td class="paramname"> <em>v0</em>, </td> 288.7310 + </tr> 288.7311 + <tr> 288.7312 + <td class="paramkey"></td> 288.7313 + <td></td> 288.7314 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.7315 + <td class="paramname"> <em>sprite</em>, </td> 288.7316 + </tr> 288.7317 + <tr> 288.7318 + <td class="paramkey"></td> 288.7319 + <td></td> 288.7320 + <td class="paramtype">const float </td> 288.7321 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.7322 + </tr> 288.7323 + <tr> 288.7324 + <td></td> 288.7325 + <td>)</td> 288.7326 + <td></td><td></td><td><code> [inline]</code></td> 288.7327 + </tr> 288.7328 + </table> 288.7329 +</div> 288.7330 +<div class="memdoc"> 288.7331 + 288.7332 +<p> 288.7333 +Draw an image. 288.7334 +<p> 288.7335 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7336 + <table border="0" cellspacing="2" cellpadding="0"> 288.7337 + <tr><td valign="top"></td><td valign="top"><em>sprite</em> </td><td>Sprite image. </td></tr> 288.7338 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the sprite position. </td></tr> 288.7339 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the sprite position. </td></tr> 288.7340 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>Z-coordinate of the sprite position. </td></tr> 288.7341 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>V-coordinate of the sprite position. </td></tr> 288.7342 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7343 + </table> 288.7344 +</dl> 288.7345 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7346 +<li>Clipping is supported. </li></ul> 288.7347 +</dd></dl> 288.7348 + 288.7349 +</div> 288.7350 +</div><p> 288.7351 +<a class="anchor" name="140588221208998117e0681720183517"></a><!-- doxytag: member="cimg_library::CImg::draw_image" ref="140588221208998117e0681720183517" args="(const int x0, const int y0, const int z0, const int v0, const CImg< ti > &sprite, const CImg< tm > &mask, const float opacity=1, const float mask_valmax=1)" --> 288.7352 +<div class="memitem"> 288.7353 +<div class="memproto"> 288.7354 + <table class="memname"> 288.7355 + <tr> 288.7356 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_image </td> 288.7357 + <td>(</td> 288.7358 + <td class="paramtype">const int </td> 288.7359 + <td class="paramname"> <em>x0</em>, </td> 288.7360 + </tr> 288.7361 + <tr> 288.7362 + <td class="paramkey"></td> 288.7363 + <td></td> 288.7364 + <td class="paramtype">const int </td> 288.7365 + <td class="paramname"> <em>y0</em>, </td> 288.7366 + </tr> 288.7367 + <tr> 288.7368 + <td class="paramkey"></td> 288.7369 + <td></td> 288.7370 + <td class="paramtype">const int </td> 288.7371 + <td class="paramname"> <em>z0</em>, </td> 288.7372 + </tr> 288.7373 + <tr> 288.7374 + <td class="paramkey"></td> 288.7375 + <td></td> 288.7376 + <td class="paramtype">const int </td> 288.7377 + <td class="paramname"> <em>v0</em>, </td> 288.7378 + </tr> 288.7379 + <tr> 288.7380 + <td class="paramkey"></td> 288.7381 + <td></td> 288.7382 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< ti > & </td> 288.7383 + <td class="paramname"> <em>sprite</em>, </td> 288.7384 + </tr> 288.7385 + <tr> 288.7386 + <td class="paramkey"></td> 288.7387 + <td></td> 288.7388 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > & </td> 288.7389 + <td class="paramname"> <em>mask</em>, </td> 288.7390 + </tr> 288.7391 + <tr> 288.7392 + <td class="paramkey"></td> 288.7393 + <td></td> 288.7394 + <td class="paramtype">const float </td> 288.7395 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.7396 + </tr> 288.7397 + <tr> 288.7398 + <td class="paramkey"></td> 288.7399 + <td></td> 288.7400 + <td class="paramtype">const float </td> 288.7401 + <td class="paramname"> <em>mask_valmax</em> = <code>1</code></td><td> </td> 288.7402 + </tr> 288.7403 + <tr> 288.7404 + <td></td> 288.7405 + <td>)</td> 288.7406 + <td></td><td></td><td><code> [inline]</code></td> 288.7407 + </tr> 288.7408 + </table> 288.7409 +</div> 288.7410 +<div class="memdoc"> 288.7411 + 288.7412 +<p> 288.7413 +Draw a sprite image in the instance image (masked version). 288.7414 +<p> 288.7415 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7416 + <table border="0" cellspacing="2" cellpadding="0"> 288.7417 + <tr><td valign="top"></td><td valign="top"><em>sprite</em> </td><td>Sprite image. </td></tr> 288.7418 + <tr><td valign="top"></td><td valign="top"><em>mask</em> </td><td>Mask image. </td></tr> 288.7419 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the sprite position in the instance image. </td></tr> 288.7420 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the sprite position in the instance image. </td></tr> 288.7421 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>Z-coordinate of the sprite position in the instance image. </td></tr> 288.7422 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>V-coordinate of the sprite position in the instance image. </td></tr> 288.7423 + <tr><td valign="top"></td><td valign="top"><em>mask_valmax</em> </td><td>Maximum pixel value of the mask image <code>mask</code> (optional). </td></tr> 288.7424 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.7425 + </table> 288.7426 +</dl> 288.7427 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7428 +<li>Pixel values of <code>mask</code> set the opacity of the corresponding pixels in <code>sprite</code>.</li><li>Clipping is supported.</li><li>Dimensions along x,y and z of <code>sprite</code> and <code>mask</code> must be the same. </li></ul> 288.7429 +</dd></dl> 288.7430 + 288.7431 +</div> 288.7432 +</div><p> 288.7433 +<a class="anchor" name="3a0aacdf713ed19c5efc4a929f73d597"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="3a0aacdf713ed19c5efc4a929f73d597" args="(const int x0, const int y0, const int z0, const int v0, const int x1, const int y1, const int z1, const int v1, const T val, const float opacity=1)" --> 288.7434 +<div class="memitem"> 288.7435 +<div class="memproto"> 288.7436 + <table class="memname"> 288.7437 + <tr> 288.7438 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_rectangle </td> 288.7439 + <td>(</td> 288.7440 + <td class="paramtype">const int </td> 288.7441 + <td class="paramname"> <em>x0</em>, </td> 288.7442 + </tr> 288.7443 + <tr> 288.7444 + <td class="paramkey"></td> 288.7445 + <td></td> 288.7446 + <td class="paramtype">const int </td> 288.7447 + <td class="paramname"> <em>y0</em>, </td> 288.7448 + </tr> 288.7449 + <tr> 288.7450 + <td class="paramkey"></td> 288.7451 + <td></td> 288.7452 + <td class="paramtype">const int </td> 288.7453 + <td class="paramname"> <em>z0</em>, </td> 288.7454 + </tr> 288.7455 + <tr> 288.7456 + <td class="paramkey"></td> 288.7457 + <td></td> 288.7458 + <td class="paramtype">const int </td> 288.7459 + <td class="paramname"> <em>v0</em>, </td> 288.7460 + </tr> 288.7461 + <tr> 288.7462 + <td class="paramkey"></td> 288.7463 + <td></td> 288.7464 + <td class="paramtype">const int </td> 288.7465 + <td class="paramname"> <em>x1</em>, </td> 288.7466 + </tr> 288.7467 + <tr> 288.7468 + <td class="paramkey"></td> 288.7469 + <td></td> 288.7470 + <td class="paramtype">const int </td> 288.7471 + <td class="paramname"> <em>y1</em>, </td> 288.7472 + </tr> 288.7473 + <tr> 288.7474 + <td class="paramkey"></td> 288.7475 + <td></td> 288.7476 + <td class="paramtype">const int </td> 288.7477 + <td class="paramname"> <em>z1</em>, </td> 288.7478 + </tr> 288.7479 + <tr> 288.7480 + <td class="paramkey"></td> 288.7481 + <td></td> 288.7482 + <td class="paramtype">const int </td> 288.7483 + <td class="paramname"> <em>v1</em>, </td> 288.7484 + </tr> 288.7485 + <tr> 288.7486 + <td class="paramkey"></td> 288.7487 + <td></td> 288.7488 + <td class="paramtype">const T </td> 288.7489 + <td class="paramname"> <em>val</em>, </td> 288.7490 + </tr> 288.7491 + <tr> 288.7492 + <td class="paramkey"></td> 288.7493 + <td></td> 288.7494 + <td class="paramtype">const float </td> 288.7495 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.7496 + </tr> 288.7497 + <tr> 288.7498 + <td></td> 288.7499 + <td>)</td> 288.7500 + <td></td><td></td><td><code> [inline]</code></td> 288.7501 + </tr> 288.7502 + </table> 288.7503 +</div> 288.7504 +<div class="memdoc"> 288.7505 + 288.7506 +<p> 288.7507 +Draw a 4D filled rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>,<code>z0</code>,<code>v0</code>)-(<code>x1</code>,<code>y1</code>,<code>z1</code>,<code>v1</code>). 288.7508 +<p> 288.7509 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7510 + <table border="0" cellspacing="2" cellpadding="0"> 288.7511 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the upper-left rectangle corner. </td></tr> 288.7512 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the upper-left rectangle corner. </td></tr> 288.7513 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>Z-coordinate of the upper-left rectangle corner. </td></tr> 288.7514 + <tr><td valign="top"></td><td valign="top"><em>v0</em> </td><td>V-coordinate of the upper-left rectangle corner. </td></tr> 288.7515 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the lower-right rectangle corner. </td></tr> 288.7516 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the lower-right rectangle corner. </td></tr> 288.7517 + <tr><td valign="top"></td><td valign="top"><em>z1</em> </td><td>Z-coordinate of the lower-right rectangle corner. </td></tr> 288.7518 + <tr><td valign="top"></td><td valign="top"><em>v1</em> </td><td>V-coordinate of the lower-right rectangle corner. </td></tr> 288.7519 + <tr><td valign="top"></td><td valign="top"><em>val</em> </td><td>Scalar value used to fill the rectangle area. </td></tr> 288.7520 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7521 + </table> 288.7522 +</dl> 288.7523 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7524 +<li>Clipping is supported. </li></ul> 288.7525 +</dd></dl> 288.7526 + 288.7527 +</div> 288.7528 +</div><p> 288.7529 +<a class="anchor" name="99614589c3d114e81db5eb6efc322e0c"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="99614589c3d114e81db5eb6efc322e0c" args="(const int x0, const int y0, const int z0, const int x1, const int y1, const int z1, const tc *const color, const float opacity=1)" --> 288.7530 +<div class="memitem"> 288.7531 +<div class="memproto"> 288.7532 + <table class="memname"> 288.7533 + <tr> 288.7534 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_rectangle </td> 288.7535 + <td>(</td> 288.7536 + <td class="paramtype">const int </td> 288.7537 + <td class="paramname"> <em>x0</em>, </td> 288.7538 + </tr> 288.7539 + <tr> 288.7540 + <td class="paramkey"></td> 288.7541 + <td></td> 288.7542 + <td class="paramtype">const int </td> 288.7543 + <td class="paramname"> <em>y0</em>, </td> 288.7544 + </tr> 288.7545 + <tr> 288.7546 + <td class="paramkey"></td> 288.7547 + <td></td> 288.7548 + <td class="paramtype">const int </td> 288.7549 + <td class="paramname"> <em>z0</em>, </td> 288.7550 + </tr> 288.7551 + <tr> 288.7552 + <td class="paramkey"></td> 288.7553 + <td></td> 288.7554 + <td class="paramtype">const int </td> 288.7555 + <td class="paramname"> <em>x1</em>, </td> 288.7556 + </tr> 288.7557 + <tr> 288.7558 + <td class="paramkey"></td> 288.7559 + <td></td> 288.7560 + <td class="paramtype">const int </td> 288.7561 + <td class="paramname"> <em>y1</em>, </td> 288.7562 + </tr> 288.7563 + <tr> 288.7564 + <td class="paramkey"></td> 288.7565 + <td></td> 288.7566 + <td class="paramtype">const int </td> 288.7567 + <td class="paramname"> <em>z1</em>, </td> 288.7568 + </tr> 288.7569 + <tr> 288.7570 + <td class="paramkey"></td> 288.7571 + <td></td> 288.7572 + <td class="paramtype">const tc *const </td> 288.7573 + <td class="paramname"> <em>color</em>, </td> 288.7574 + </tr> 288.7575 + <tr> 288.7576 + <td class="paramkey"></td> 288.7577 + <td></td> 288.7578 + <td class="paramtype">const float </td> 288.7579 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.7580 + </tr> 288.7581 + <tr> 288.7582 + <td></td> 288.7583 + <td>)</td> 288.7584 + <td></td><td></td><td><code> [inline]</code></td> 288.7585 + </tr> 288.7586 + </table> 288.7587 +</div> 288.7588 +<div class="memdoc"> 288.7589 + 288.7590 +<p> 288.7591 +Draw a 3D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>,<code>z0</code>)-(<code>x1</code>,<code>y1</code>,<code>z1</code>). 288.7592 +<p> 288.7593 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7594 + <table border="0" cellspacing="2" cellpadding="0"> 288.7595 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the upper-left rectangle corner. </td></tr> 288.7596 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the upper-left rectangle corner. </td></tr> 288.7597 + <tr><td valign="top"></td><td valign="top"><em>z0</em> </td><td>Z-coordinate of the upper-left rectangle corner. </td></tr> 288.7598 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the lower-right rectangle corner. </td></tr> 288.7599 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the lower-right rectangle corner. </td></tr> 288.7600 + <tr><td valign="top"></td><td valign="top"><em>z1</em> </td><td>Z-coordinate of the lower-right rectangle corner. </td></tr> 288.7601 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.7602 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7603 + </table> 288.7604 +</dl> 288.7605 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7606 +<li>Clipping is supported. </li></ul> 288.7607 +</dd></dl> 288.7608 + 288.7609 +</div> 288.7610 +</div><p> 288.7611 +<a class="anchor" name="08ff5543ae717bdbc4ccda3ca9d463ee"></a><!-- doxytag: member="cimg_library::CImg::draw_rectangle" ref="08ff5543ae717bdbc4ccda3ca9d463ee" args="(const int x0, const int y0, const int x1, const int y1, const tc *const color, const float opacity=1)" --> 288.7612 +<div class="memitem"> 288.7613 +<div class="memproto"> 288.7614 + <table class="memname"> 288.7615 + <tr> 288.7616 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_rectangle </td> 288.7617 + <td>(</td> 288.7618 + <td class="paramtype">const int </td> 288.7619 + <td class="paramname"> <em>x0</em>, </td> 288.7620 + </tr> 288.7621 + <tr> 288.7622 + <td class="paramkey"></td> 288.7623 + <td></td> 288.7624 + <td class="paramtype">const int </td> 288.7625 + <td class="paramname"> <em>y0</em>, </td> 288.7626 + </tr> 288.7627 + <tr> 288.7628 + <td class="paramkey"></td> 288.7629 + <td></td> 288.7630 + <td class="paramtype">const int </td> 288.7631 + <td class="paramname"> <em>x1</em>, </td> 288.7632 + </tr> 288.7633 + <tr> 288.7634 + <td class="paramkey"></td> 288.7635 + <td></td> 288.7636 + <td class="paramtype">const int </td> 288.7637 + <td class="paramname"> <em>y1</em>, </td> 288.7638 + </tr> 288.7639 + <tr> 288.7640 + <td class="paramkey"></td> 288.7641 + <td></td> 288.7642 + <td class="paramtype">const tc *const </td> 288.7643 + <td class="paramname"> <em>color</em>, </td> 288.7644 + </tr> 288.7645 + <tr> 288.7646 + <td class="paramkey"></td> 288.7647 + <td></td> 288.7648 + <td class="paramtype">const float </td> 288.7649 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.7650 + </tr> 288.7651 + <tr> 288.7652 + <td></td> 288.7653 + <td>)</td> 288.7654 + <td></td><td></td><td><code> [inline]</code></td> 288.7655 + </tr> 288.7656 + </table> 288.7657 +</div> 288.7658 +<div class="memdoc"> 288.7659 + 288.7660 +<p> 288.7661 +Draw a 2D filled colored rectangle in the instance image, at coordinates (<code>x0</code>,<code>y0</code>)-(<code>x1</code>,<code>y1</code>). 288.7662 +<p> 288.7663 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7664 + <table border="0" cellspacing="2" cellpadding="0"> 288.7665 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the upper-left rectangle corner. </td></tr> 288.7666 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the upper-left rectangle corner. </td></tr> 288.7667 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>X-coordinate of the lower-right rectangle corner. </td></tr> 288.7668 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>Y-coordinate of the lower-right rectangle corner. </td></tr> 288.7669 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Pointer to <code><a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a></code> consecutive values of type <code>T</code>, defining the drawing color. </td></tr> 288.7670 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity (optional). </td></tr> 288.7671 + </table> 288.7672 +</dl> 288.7673 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.7674 +<li>Clipping is supported. </li></ul> 288.7675 +</dd></dl> 288.7676 + 288.7677 +</div> 288.7678 +</div><p> 288.7679 +<a class="anchor" name="6fedec577cb8971fed8d1f3a039d3aac"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="6fedec577cb8971fed8d1f3a039d3aac" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.7680 +<div class="memitem"> 288.7681 +<div class="memproto"> 288.7682 + <table class="memname"> 288.7683 + <tr> 288.7684 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_triangle </td> 288.7685 + <td>(</td> 288.7686 + <td class="paramtype">const int </td> 288.7687 + <td class="paramname"> <em>x0</em>, </td> 288.7688 + </tr> 288.7689 + <tr> 288.7690 + <td class="paramkey"></td> 288.7691 + <td></td> 288.7692 + <td class="paramtype">const int </td> 288.7693 + <td class="paramname"> <em>y0</em>, </td> 288.7694 + </tr> 288.7695 + <tr> 288.7696 + <td class="paramkey"></td> 288.7697 + <td></td> 288.7698 + <td class="paramtype">const int </td> 288.7699 + <td class="paramname"> <em>x1</em>, </td> 288.7700 + </tr> 288.7701 + <tr> 288.7702 + <td class="paramkey"></td> 288.7703 + <td></td> 288.7704 + <td class="paramtype">const int </td> 288.7705 + <td class="paramname"> <em>y1</em>, </td> 288.7706 + </tr> 288.7707 + <tr> 288.7708 + <td class="paramkey"></td> 288.7709 + <td></td> 288.7710 + <td class="paramtype">const int </td> 288.7711 + <td class="paramname"> <em>x2</em>, </td> 288.7712 + </tr> 288.7713 + <tr> 288.7714 + <td class="paramkey"></td> 288.7715 + <td></td> 288.7716 + <td class="paramtype">const int </td> 288.7717 + <td class="paramname"> <em>y2</em>, </td> 288.7718 + </tr> 288.7719 + <tr> 288.7720 + <td class="paramkey"></td> 288.7721 + <td></td> 288.7722 + <td class="paramtype">const tc *const </td> 288.7723 + <td class="paramname"> <em>color</em>, </td> 288.7724 + </tr> 288.7725 + <tr> 288.7726 + <td class="paramkey"></td> 288.7727 + <td></td> 288.7728 + <td class="paramtype">const float </td> 288.7729 + <td class="paramname"> <em>brightness0</em>, </td> 288.7730 + </tr> 288.7731 + <tr> 288.7732 + <td class="paramkey"></td> 288.7733 + <td></td> 288.7734 + <td class="paramtype">const float </td> 288.7735 + <td class="paramname"> <em>brightness1</em>, </td> 288.7736 + </tr> 288.7737 + <tr> 288.7738 + <td class="paramkey"></td> 288.7739 + <td></td> 288.7740 + <td class="paramtype">const float </td> 288.7741 + <td class="paramname"> <em>brightness2</em>, </td> 288.7742 + </tr> 288.7743 + <tr> 288.7744 + <td class="paramkey"></td> 288.7745 + <td></td> 288.7746 + <td class="paramtype">const float </td> 288.7747 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.7748 + </tr> 288.7749 + <tr> 288.7750 + <td></td> 288.7751 + <td>)</td> 288.7752 + <td></td><td></td><td><code> [inline]</code></td> 288.7753 + </tr> 288.7754 + </table> 288.7755 +</div> 288.7756 +<div class="memdoc"> 288.7757 + 288.7758 +<p> 288.7759 +Draw a 2D Gouraud-shaded colored triangle. 288.7760 +<p> 288.7761 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7762 + <table border="0" cellspacing="2" cellpadding="0"> 288.7763 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the first corner in the instance image. </td></tr> 288.7764 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the first corner in the instance image. </td></tr> 288.7765 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the second corner in the instance image. </td></tr> 288.7766 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the second corner in the instance image. </td></tr> 288.7767 + <tr><td valign="top"></td><td valign="top"><em>x2</em> </td><td>= X-coordinate of the third corner in the instance image. </td></tr> 288.7768 + <tr><td valign="top"></td><td valign="top"><em>y2</em> </td><td>= Y-coordinate of the third corner in the instance image. </td></tr> 288.7769 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the global drawing color. </td></tr> 288.7770 + <tr><td valign="top"></td><td valign="top"><em>brightness0</em> </td><td>= brightness of the first corner (in [0,2]). </td></tr> 288.7771 + <tr><td valign="top"></td><td valign="top"><em>brightness1</em> </td><td>= brightness of the second corner (in [0,2]). </td></tr> 288.7772 + <tr><td valign="top"></td><td valign="top"><em>brightness2</em> </td><td>= brightness of the third corner (in [0,2]). </td></tr> 288.7773 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.7774 + </table> 288.7775 +</dl> 288.7776 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported. </dd></dl> 288.7777 + 288.7778 +</div> 288.7779 +</div><p> 288.7780 +<a class="anchor" name="ed9f231a2586832f9e3edbab43dba19f"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="ed9f231a2586832f9e3edbab43dba19f" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float opacity=1, const float brightness=1)" --> 288.7781 +<div class="memitem"> 288.7782 +<div class="memproto"> 288.7783 + <table class="memname"> 288.7784 + <tr> 288.7785 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_triangle </td> 288.7786 + <td>(</td> 288.7787 + <td class="paramtype">const int </td> 288.7788 + <td class="paramname"> <em>x0</em>, </td> 288.7789 + </tr> 288.7790 + <tr> 288.7791 + <td class="paramkey"></td> 288.7792 + <td></td> 288.7793 + <td class="paramtype">const int </td> 288.7794 + <td class="paramname"> <em>y0</em>, </td> 288.7795 + </tr> 288.7796 + <tr> 288.7797 + <td class="paramkey"></td> 288.7798 + <td></td> 288.7799 + <td class="paramtype">const int </td> 288.7800 + <td class="paramname"> <em>x1</em>, </td> 288.7801 + </tr> 288.7802 + <tr> 288.7803 + <td class="paramkey"></td> 288.7804 + <td></td> 288.7805 + <td class="paramtype">const int </td> 288.7806 + <td class="paramname"> <em>y1</em>, </td> 288.7807 + </tr> 288.7808 + <tr> 288.7809 + <td class="paramkey"></td> 288.7810 + <td></td> 288.7811 + <td class="paramtype">const int </td> 288.7812 + <td class="paramname"> <em>x2</em>, </td> 288.7813 + </tr> 288.7814 + <tr> 288.7815 + <td class="paramkey"></td> 288.7816 + <td></td> 288.7817 + <td class="paramtype">const int </td> 288.7818 + <td class="paramname"> <em>y2</em>, </td> 288.7819 + </tr> 288.7820 + <tr> 288.7821 + <td class="paramkey"></td> 288.7822 + <td></td> 288.7823 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > & </td> 288.7824 + <td class="paramname"> <em>texture</em>, </td> 288.7825 + </tr> 288.7826 + <tr> 288.7827 + <td class="paramkey"></td> 288.7828 + <td></td> 288.7829 + <td class="paramtype">const int </td> 288.7830 + <td class="paramname"> <em>tx0</em>, </td> 288.7831 + </tr> 288.7832 + <tr> 288.7833 + <td class="paramkey"></td> 288.7834 + <td></td> 288.7835 + <td class="paramtype">const int </td> 288.7836 + <td class="paramname"> <em>ty0</em>, </td> 288.7837 + </tr> 288.7838 + <tr> 288.7839 + <td class="paramkey"></td> 288.7840 + <td></td> 288.7841 + <td class="paramtype">const int </td> 288.7842 + <td class="paramname"> <em>tx1</em>, </td> 288.7843 + </tr> 288.7844 + <tr> 288.7845 + <td class="paramkey"></td> 288.7846 + <td></td> 288.7847 + <td class="paramtype">const int </td> 288.7848 + <td class="paramname"> <em>ty1</em>, </td> 288.7849 + </tr> 288.7850 + <tr> 288.7851 + <td class="paramkey"></td> 288.7852 + <td></td> 288.7853 + <td class="paramtype">const int </td> 288.7854 + <td class="paramname"> <em>tx2</em>, </td> 288.7855 + </tr> 288.7856 + <tr> 288.7857 + <td class="paramkey"></td> 288.7858 + <td></td> 288.7859 + <td class="paramtype">const int </td> 288.7860 + <td class="paramname"> <em>ty2</em>, </td> 288.7861 + </tr> 288.7862 + <tr> 288.7863 + <td class="paramkey"></td> 288.7864 + <td></td> 288.7865 + <td class="paramtype">const float </td> 288.7866 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.7867 + </tr> 288.7868 + <tr> 288.7869 + <td class="paramkey"></td> 288.7870 + <td></td> 288.7871 + <td class="paramtype">const float </td> 288.7872 + <td class="paramname"> <em>brightness</em> = <code>1</code></td><td> </td> 288.7873 + </tr> 288.7874 + <tr> 288.7875 + <td></td> 288.7876 + <td>)</td> 288.7877 + <td></td><td></td><td><code> [inline]</code></td> 288.7878 + </tr> 288.7879 + </table> 288.7880 +</div> 288.7881 +<div class="memdoc"> 288.7882 + 288.7883 +<p> 288.7884 +Draw a 2D textured triangle. 288.7885 +<p> 288.7886 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.7887 + <table border="0" cellspacing="2" cellpadding="0"> 288.7888 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the first corner in the instance image. </td></tr> 288.7889 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the first corner in the instance image. </td></tr> 288.7890 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the second corner in the instance image. </td></tr> 288.7891 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the second corner in the instance image. </td></tr> 288.7892 + <tr><td valign="top"></td><td valign="top"><em>x2</em> </td><td>= X-coordinate of the third corner in the instance image. </td></tr> 288.7893 + <tr><td valign="top"></td><td valign="top"><em>y2</em> </td><td>= Y-coordinate of the third corner in the instance image. </td></tr> 288.7894 + <tr><td valign="top"></td><td valign="top"><em>texture</em> </td><td>= texture image used to fill the triangle. </td></tr> 288.7895 + <tr><td valign="top"></td><td valign="top"><em>tx0</em> </td><td>= X-coordinate of the first corner in the texture image. </td></tr> 288.7896 + <tr><td valign="top"></td><td valign="top"><em>ty0</em> </td><td>= Y-coordinate of the first corner in the texture image. </td></tr> 288.7897 + <tr><td valign="top"></td><td valign="top"><em>tx1</em> </td><td>= X-coordinate of the second corner in the texture image. </td></tr> 288.7898 + <tr><td valign="top"></td><td valign="top"><em>ty1</em> </td><td>= Y-coordinate of the second corner in the texture image. </td></tr> 288.7899 + <tr><td valign="top"></td><td valign="top"><em>tx2</em> </td><td>= X-coordinate of the third corner in the texture image. </td></tr> 288.7900 + <tr><td valign="top"></td><td valign="top"><em>ty2</em> </td><td>= Y-coordinate of the third corner in the texture image. </td></tr> 288.7901 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.7902 + <tr><td valign="top"></td><td valign="top"><em>brightness</em> </td><td>= brightness of the drawing (in [0,2]). </td></tr> 288.7903 + </table> 288.7904 +</dl> 288.7905 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported, but texture coordinates do not support clipping. </dd></dl> 288.7906 + 288.7907 +</div> 288.7908 +</div><p> 288.7909 +<a class="anchor" name="cdcbe236d763eb011eebb30b50c1aef7"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="cdcbe236d763eb011eebb30b50c1aef7" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const tc *const color, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.7910 +<div class="memitem"> 288.7911 +<div class="memproto"> 288.7912 + <table class="memname"> 288.7913 + <tr> 288.7914 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_triangle </td> 288.7915 + <td>(</td> 288.7916 + <td class="paramtype">const int </td> 288.7917 + <td class="paramname"> <em>x0</em>, </td> 288.7918 + </tr> 288.7919 + <tr> 288.7920 + <td class="paramkey"></td> 288.7921 + <td></td> 288.7922 + <td class="paramtype">const int </td> 288.7923 + <td class="paramname"> <em>y0</em>, </td> 288.7924 + </tr> 288.7925 + <tr> 288.7926 + <td class="paramkey"></td> 288.7927 + <td></td> 288.7928 + <td class="paramtype">const int </td> 288.7929 + <td class="paramname"> <em>x1</em>, </td> 288.7930 + </tr> 288.7931 + <tr> 288.7932 + <td class="paramkey"></td> 288.7933 + <td></td> 288.7934 + <td class="paramtype">const int </td> 288.7935 + <td class="paramname"> <em>y1</em>, </td> 288.7936 + </tr> 288.7937 + <tr> 288.7938 + <td class="paramkey"></td> 288.7939 + <td></td> 288.7940 + <td class="paramtype">const int </td> 288.7941 + <td class="paramname"> <em>x2</em>, </td> 288.7942 + </tr> 288.7943 + <tr> 288.7944 + <td class="paramkey"></td> 288.7945 + <td></td> 288.7946 + <td class="paramtype">const int </td> 288.7947 + <td class="paramname"> <em>y2</em>, </td> 288.7948 + </tr> 288.7949 + <tr> 288.7950 + <td class="paramkey"></td> 288.7951 + <td></td> 288.7952 + <td class="paramtype">const tc *const </td> 288.7953 + <td class="paramname"> <em>color</em>, </td> 288.7954 + </tr> 288.7955 + <tr> 288.7956 + <td class="paramkey"></td> 288.7957 + <td></td> 288.7958 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > & </td> 288.7959 + <td class="paramname"> <em>light</em>, </td> 288.7960 + </tr> 288.7961 + <tr> 288.7962 + <td class="paramkey"></td> 288.7963 + <td></td> 288.7964 + <td class="paramtype">const int </td> 288.7965 + <td class="paramname"> <em>lx0</em>, </td> 288.7966 + </tr> 288.7967 + <tr> 288.7968 + <td class="paramkey"></td> 288.7969 + <td></td> 288.7970 + <td class="paramtype">const int </td> 288.7971 + <td class="paramname"> <em>ly0</em>, </td> 288.7972 + </tr> 288.7973 + <tr> 288.7974 + <td class="paramkey"></td> 288.7975 + <td></td> 288.7976 + <td class="paramtype">const int </td> 288.7977 + <td class="paramname"> <em>lx1</em>, </td> 288.7978 + </tr> 288.7979 + <tr> 288.7980 + <td class="paramkey"></td> 288.7981 + <td></td> 288.7982 + <td class="paramtype">const int </td> 288.7983 + <td class="paramname"> <em>ly1</em>, </td> 288.7984 + </tr> 288.7985 + <tr> 288.7986 + <td class="paramkey"></td> 288.7987 + <td></td> 288.7988 + <td class="paramtype">const int </td> 288.7989 + <td class="paramname"> <em>lx2</em>, </td> 288.7990 + </tr> 288.7991 + <tr> 288.7992 + <td class="paramkey"></td> 288.7993 + <td></td> 288.7994 + <td class="paramtype">const int </td> 288.7995 + <td class="paramname"> <em>ly2</em>, </td> 288.7996 + </tr> 288.7997 + <tr> 288.7998 + <td class="paramkey"></td> 288.7999 + <td></td> 288.8000 + <td class="paramtype">const float </td> 288.8001 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8002 + </tr> 288.8003 + <tr> 288.8004 + <td></td> 288.8005 + <td>)</td> 288.8006 + <td></td><td></td><td><code> [inline]</code></td> 288.8007 + </tr> 288.8008 + </table> 288.8009 +</div> 288.8010 +<div class="memdoc"> 288.8011 + 288.8012 +<p> 288.8013 +Draw a 2D Pseudo-Phong-shaded triangle. 288.8014 +<p> 288.8015 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8016 + <table border="0" cellspacing="2" cellpadding="0"> 288.8017 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the first corner in the instance image. </td></tr> 288.8018 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the first corner in the instance image. </td></tr> 288.8019 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the second corner in the instance image. </td></tr> 288.8020 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the second corner in the instance image. </td></tr> 288.8021 + <tr><td valign="top"></td><td valign="top"><em>x2</em> </td><td>= X-coordinate of the third corner in the instance image. </td></tr> 288.8022 + <tr><td valign="top"></td><td valign="top"><em>y2</em> </td><td>= Y-coordinate of the third corner in the instance image. </td></tr> 288.8023 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the global drawing color. </td></tr> 288.8024 + <tr><td valign="top"></td><td valign="top"><em>light</em> </td><td>= light image. </td></tr> 288.8025 + <tr><td valign="top"></td><td valign="top"><em>lx0</em> </td><td>= X-coordinate of the first corner in the light image. </td></tr> 288.8026 + <tr><td valign="top"></td><td valign="top"><em>ly0</em> </td><td>= Y-coordinate of the first corner in the light image. </td></tr> 288.8027 + <tr><td valign="top"></td><td valign="top"><em>lx1</em> </td><td>= X-coordinate of the second corner in the light image. </td></tr> 288.8028 + <tr><td valign="top"></td><td valign="top"><em>ly1</em> </td><td>= Y-coordinate of the second corner in the light image. </td></tr> 288.8029 + <tr><td valign="top"></td><td valign="top"><em>lx2</em> </td><td>= X-coordinate of the third corner in the light image. </td></tr> 288.8030 + <tr><td valign="top"></td><td valign="top"><em>ly2</em> </td><td>= Y-coordinate of the third corner in the light image. </td></tr> 288.8031 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8032 + </table> 288.8033 +</dl> 288.8034 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported, but texture coordinates do not support clipping. </dd></dl> 288.8035 + 288.8036 +</div> 288.8037 +</div><p> 288.8038 +<a class="anchor" name="961363e2672c2ae77788dbe27f1eeb96"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="961363e2672c2ae77788dbe27f1eeb96" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const float brightness0, const float brightness1, const float brightness2, const float opacity=1)" --> 288.8039 +<div class="memitem"> 288.8040 +<div class="memproto"> 288.8041 + <table class="memname"> 288.8042 + <tr> 288.8043 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_triangle </td> 288.8044 + <td>(</td> 288.8045 + <td class="paramtype">const int </td> 288.8046 + <td class="paramname"> <em>x0</em>, </td> 288.8047 + </tr> 288.8048 + <tr> 288.8049 + <td class="paramkey"></td> 288.8050 + <td></td> 288.8051 + <td class="paramtype">const int </td> 288.8052 + <td class="paramname"> <em>y0</em>, </td> 288.8053 + </tr> 288.8054 + <tr> 288.8055 + <td class="paramkey"></td> 288.8056 + <td></td> 288.8057 + <td class="paramtype">const int </td> 288.8058 + <td class="paramname"> <em>x1</em>, </td> 288.8059 + </tr> 288.8060 + <tr> 288.8061 + <td class="paramkey"></td> 288.8062 + <td></td> 288.8063 + <td class="paramtype">const int </td> 288.8064 + <td class="paramname"> <em>y1</em>, </td> 288.8065 + </tr> 288.8066 + <tr> 288.8067 + <td class="paramkey"></td> 288.8068 + <td></td> 288.8069 + <td class="paramtype">const int </td> 288.8070 + <td class="paramname"> <em>x2</em>, </td> 288.8071 + </tr> 288.8072 + <tr> 288.8073 + <td class="paramkey"></td> 288.8074 + <td></td> 288.8075 + <td class="paramtype">const int </td> 288.8076 + <td class="paramname"> <em>y2</em>, </td> 288.8077 + </tr> 288.8078 + <tr> 288.8079 + <td class="paramkey"></td> 288.8080 + <td></td> 288.8081 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > & </td> 288.8082 + <td class="paramname"> <em>texture</em>, </td> 288.8083 + </tr> 288.8084 + <tr> 288.8085 + <td class="paramkey"></td> 288.8086 + <td></td> 288.8087 + <td class="paramtype">const int </td> 288.8088 + <td class="paramname"> <em>tx0</em>, </td> 288.8089 + </tr> 288.8090 + <tr> 288.8091 + <td class="paramkey"></td> 288.8092 + <td></td> 288.8093 + <td class="paramtype">const int </td> 288.8094 + <td class="paramname"> <em>ty0</em>, </td> 288.8095 + </tr> 288.8096 + <tr> 288.8097 + <td class="paramkey"></td> 288.8098 + <td></td> 288.8099 + <td class="paramtype">const int </td> 288.8100 + <td class="paramname"> <em>tx1</em>, </td> 288.8101 + </tr> 288.8102 + <tr> 288.8103 + <td class="paramkey"></td> 288.8104 + <td></td> 288.8105 + <td class="paramtype">const int </td> 288.8106 + <td class="paramname"> <em>ty1</em>, </td> 288.8107 + </tr> 288.8108 + <tr> 288.8109 + <td class="paramkey"></td> 288.8110 + <td></td> 288.8111 + <td class="paramtype">const int </td> 288.8112 + <td class="paramname"> <em>tx2</em>, </td> 288.8113 + </tr> 288.8114 + <tr> 288.8115 + <td class="paramkey"></td> 288.8116 + <td></td> 288.8117 + <td class="paramtype">const int </td> 288.8118 + <td class="paramname"> <em>ty2</em>, </td> 288.8119 + </tr> 288.8120 + <tr> 288.8121 + <td class="paramkey"></td> 288.8122 + <td></td> 288.8123 + <td class="paramtype">const float </td> 288.8124 + <td class="paramname"> <em>brightness0</em>, </td> 288.8125 + </tr> 288.8126 + <tr> 288.8127 + <td class="paramkey"></td> 288.8128 + <td></td> 288.8129 + <td class="paramtype">const float </td> 288.8130 + <td class="paramname"> <em>brightness1</em>, </td> 288.8131 + </tr> 288.8132 + <tr> 288.8133 + <td class="paramkey"></td> 288.8134 + <td></td> 288.8135 + <td class="paramtype">const float </td> 288.8136 + <td class="paramname"> <em>brightness2</em>, </td> 288.8137 + </tr> 288.8138 + <tr> 288.8139 + <td class="paramkey"></td> 288.8140 + <td></td> 288.8141 + <td class="paramtype">const float </td> 288.8142 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8143 + </tr> 288.8144 + <tr> 288.8145 + <td></td> 288.8146 + <td>)</td> 288.8147 + <td></td><td></td><td><code> [inline]</code></td> 288.8148 + </tr> 288.8149 + </table> 288.8150 +</div> 288.8151 +<div class="memdoc"> 288.8152 + 288.8153 +<p> 288.8154 +Draw a 2D Gouraud-shaded textured triangle. 288.8155 +<p> 288.8156 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8157 + <table border="0" cellspacing="2" cellpadding="0"> 288.8158 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the first corner in the instance image. </td></tr> 288.8159 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the first corner in the instance image. </td></tr> 288.8160 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the second corner in the instance image. </td></tr> 288.8161 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the second corner in the instance image. </td></tr> 288.8162 + <tr><td valign="top"></td><td valign="top"><em>x2</em> </td><td>= X-coordinate of the third corner in the instance image. </td></tr> 288.8163 + <tr><td valign="top"></td><td valign="top"><em>y2</em> </td><td>= Y-coordinate of the third corner in the instance image. </td></tr> 288.8164 + <tr><td valign="top"></td><td valign="top"><em>texture</em> </td><td>= texture image used to fill the triangle. </td></tr> 288.8165 + <tr><td valign="top"></td><td valign="top"><em>tx0</em> </td><td>= X-coordinate of the first corner in the texture image. </td></tr> 288.8166 + <tr><td valign="top"></td><td valign="top"><em>ty0</em> </td><td>= Y-coordinate of the first corner in the texture image. </td></tr> 288.8167 + <tr><td valign="top"></td><td valign="top"><em>tx1</em> </td><td>= X-coordinate of the second corner in the texture image. </td></tr> 288.8168 + <tr><td valign="top"></td><td valign="top"><em>ty1</em> </td><td>= Y-coordinate of the second corner in the texture image. </td></tr> 288.8169 + <tr><td valign="top"></td><td valign="top"><em>tx2</em> </td><td>= X-coordinate of the third corner in the texture image. </td></tr> 288.8170 + <tr><td valign="top"></td><td valign="top"><em>ty2</em> </td><td>= Y-coordinate of the third corner in the texture image. </td></tr> 288.8171 + <tr><td valign="top"></td><td valign="top"><em>brightness0</em> </td><td>= brightness value of the first corner. </td></tr> 288.8172 + <tr><td valign="top"></td><td valign="top"><em>brightness1</em> </td><td>= brightness value of the second corner. </td></tr> 288.8173 + <tr><td valign="top"></td><td valign="top"><em>brightness2</em> </td><td>= brightness value of the third corner. </td></tr> 288.8174 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8175 + </table> 288.8176 +</dl> 288.8177 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported, but texture coordinates do not support clipping. </dd></dl> 288.8178 + 288.8179 +</div> 288.8180 +</div><p> 288.8181 +<a class="anchor" name="261696a882cafea6ec41e43f90ad7d26"></a><!-- doxytag: member="cimg_library::CImg::draw_triangle" ref="261696a882cafea6ec41e43f90ad7d26" args="(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const CImg< tc > &texture, const int tx0, const int ty0, const int tx1, const int ty1, const int tx2, const int ty2, const CImg< tl > &light, const int lx0, const int ly0, const int lx1, const int ly1, const int lx2, const int ly2, const float opacity=1)" --> 288.8182 +<div class="memitem"> 288.8183 +<div class="memproto"> 288.8184 + <table class="memname"> 288.8185 + <tr> 288.8186 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_triangle </td> 288.8187 + <td>(</td> 288.8188 + <td class="paramtype">const int </td> 288.8189 + <td class="paramname"> <em>x0</em>, </td> 288.8190 + </tr> 288.8191 + <tr> 288.8192 + <td class="paramkey"></td> 288.8193 + <td></td> 288.8194 + <td class="paramtype">const int </td> 288.8195 + <td class="paramname"> <em>y0</em>, </td> 288.8196 + </tr> 288.8197 + <tr> 288.8198 + <td class="paramkey"></td> 288.8199 + <td></td> 288.8200 + <td class="paramtype">const int </td> 288.8201 + <td class="paramname"> <em>x1</em>, </td> 288.8202 + </tr> 288.8203 + <tr> 288.8204 + <td class="paramkey"></td> 288.8205 + <td></td> 288.8206 + <td class="paramtype">const int </td> 288.8207 + <td class="paramname"> <em>y1</em>, </td> 288.8208 + </tr> 288.8209 + <tr> 288.8210 + <td class="paramkey"></td> 288.8211 + <td></td> 288.8212 + <td class="paramtype">const int </td> 288.8213 + <td class="paramname"> <em>x2</em>, </td> 288.8214 + </tr> 288.8215 + <tr> 288.8216 + <td class="paramkey"></td> 288.8217 + <td></td> 288.8218 + <td class="paramtype">const int </td> 288.8219 + <td class="paramname"> <em>y2</em>, </td> 288.8220 + </tr> 288.8221 + <tr> 288.8222 + <td class="paramkey"></td> 288.8223 + <td></td> 288.8224 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tc > & </td> 288.8225 + <td class="paramname"> <em>texture</em>, </td> 288.8226 + </tr> 288.8227 + <tr> 288.8228 + <td class="paramkey"></td> 288.8229 + <td></td> 288.8230 + <td class="paramtype">const int </td> 288.8231 + <td class="paramname"> <em>tx0</em>, </td> 288.8232 + </tr> 288.8233 + <tr> 288.8234 + <td class="paramkey"></td> 288.8235 + <td></td> 288.8236 + <td class="paramtype">const int </td> 288.8237 + <td class="paramname"> <em>ty0</em>, </td> 288.8238 + </tr> 288.8239 + <tr> 288.8240 + <td class="paramkey"></td> 288.8241 + <td></td> 288.8242 + <td class="paramtype">const int </td> 288.8243 + <td class="paramname"> <em>tx1</em>, </td> 288.8244 + </tr> 288.8245 + <tr> 288.8246 + <td class="paramkey"></td> 288.8247 + <td></td> 288.8248 + <td class="paramtype">const int </td> 288.8249 + <td class="paramname"> <em>ty1</em>, </td> 288.8250 + </tr> 288.8251 + <tr> 288.8252 + <td class="paramkey"></td> 288.8253 + <td></td> 288.8254 + <td class="paramtype">const int </td> 288.8255 + <td class="paramname"> <em>tx2</em>, </td> 288.8256 + </tr> 288.8257 + <tr> 288.8258 + <td class="paramkey"></td> 288.8259 + <td></td> 288.8260 + <td class="paramtype">const int </td> 288.8261 + <td class="paramname"> <em>ty2</em>, </td> 288.8262 + </tr> 288.8263 + <tr> 288.8264 + <td class="paramkey"></td> 288.8265 + <td></td> 288.8266 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tl > & </td> 288.8267 + <td class="paramname"> <em>light</em>, </td> 288.8268 + </tr> 288.8269 + <tr> 288.8270 + <td class="paramkey"></td> 288.8271 + <td></td> 288.8272 + <td class="paramtype">const int </td> 288.8273 + <td class="paramname"> <em>lx0</em>, </td> 288.8274 + </tr> 288.8275 + <tr> 288.8276 + <td class="paramkey"></td> 288.8277 + <td></td> 288.8278 + <td class="paramtype">const int </td> 288.8279 + <td class="paramname"> <em>ly0</em>, </td> 288.8280 + </tr> 288.8281 + <tr> 288.8282 + <td class="paramkey"></td> 288.8283 + <td></td> 288.8284 + <td class="paramtype">const int </td> 288.8285 + <td class="paramname"> <em>lx1</em>, </td> 288.8286 + </tr> 288.8287 + <tr> 288.8288 + <td class="paramkey"></td> 288.8289 + <td></td> 288.8290 + <td class="paramtype">const int </td> 288.8291 + <td class="paramname"> <em>ly1</em>, </td> 288.8292 + </tr> 288.8293 + <tr> 288.8294 + <td class="paramkey"></td> 288.8295 + <td></td> 288.8296 + <td class="paramtype">const int </td> 288.8297 + <td class="paramname"> <em>lx2</em>, </td> 288.8298 + </tr> 288.8299 + <tr> 288.8300 + <td class="paramkey"></td> 288.8301 + <td></td> 288.8302 + <td class="paramtype">const int </td> 288.8303 + <td class="paramname"> <em>ly2</em>, </td> 288.8304 + </tr> 288.8305 + <tr> 288.8306 + <td class="paramkey"></td> 288.8307 + <td></td> 288.8308 + <td class="paramtype">const float </td> 288.8309 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8310 + </tr> 288.8311 + <tr> 288.8312 + <td></td> 288.8313 + <td>)</td> 288.8314 + <td></td><td></td><td><code> [inline]</code></td> 288.8315 + </tr> 288.8316 + </table> 288.8317 +</div> 288.8318 +<div class="memdoc"> 288.8319 + 288.8320 +<p> 288.8321 +Draw a 2D Pseudo-Phong-shaded textured triangle. 288.8322 +<p> 288.8323 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8324 + <table border="0" cellspacing="2" cellpadding="0"> 288.8325 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the first corner in the instance image. </td></tr> 288.8326 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the first corner in the instance image. </td></tr> 288.8327 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the second corner in the instance image. </td></tr> 288.8328 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the second corner in the instance image. </td></tr> 288.8329 + <tr><td valign="top"></td><td valign="top"><em>x2</em> </td><td>= X-coordinate of the third corner in the instance image. </td></tr> 288.8330 + <tr><td valign="top"></td><td valign="top"><em>y2</em> </td><td>= Y-coordinate of the third corner in the instance image. </td></tr> 288.8331 + <tr><td valign="top"></td><td valign="top"><em>texture</em> </td><td>= texture image used to fill the triangle. </td></tr> 288.8332 + <tr><td valign="top"></td><td valign="top"><em>tx0</em> </td><td>= X-coordinate of the first corner in the texture image. </td></tr> 288.8333 + <tr><td valign="top"></td><td valign="top"><em>ty0</em> </td><td>= Y-coordinate of the first corner in the texture image. </td></tr> 288.8334 + <tr><td valign="top"></td><td valign="top"><em>tx1</em> </td><td>= X-coordinate of the second corner in the texture image. </td></tr> 288.8335 + <tr><td valign="top"></td><td valign="top"><em>ty1</em> </td><td>= Y-coordinate of the second corner in the texture image. </td></tr> 288.8336 + <tr><td valign="top"></td><td valign="top"><em>tx2</em> </td><td>= X-coordinate of the third corner in the texture image. </td></tr> 288.8337 + <tr><td valign="top"></td><td valign="top"><em>ty2</em> </td><td>= Y-coordinate of the third corner in the texture image. </td></tr> 288.8338 + <tr><td valign="top"></td><td valign="top"><em>light</em> </td><td>= light image. </td></tr> 288.8339 + <tr><td valign="top"></td><td valign="top"><em>lx0</em> </td><td>= X-coordinate of the first corner in the light image. </td></tr> 288.8340 + <tr><td valign="top"></td><td valign="top"><em>ly0</em> </td><td>= Y-coordinate of the first corner in the light image. </td></tr> 288.8341 + <tr><td valign="top"></td><td valign="top"><em>lx1</em> </td><td>= X-coordinate of the second corner in the light image. </td></tr> 288.8342 + <tr><td valign="top"></td><td valign="top"><em>ly1</em> </td><td>= Y-coordinate of the second corner in the light image. </td></tr> 288.8343 + <tr><td valign="top"></td><td valign="top"><em>lx2</em> </td><td>= X-coordinate of the third corner in the light image. </td></tr> 288.8344 + <tr><td valign="top"></td><td valign="top"><em>ly2</em> </td><td>= Y-coordinate of the third corner in the light image. </td></tr> 288.8345 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8346 + </table> 288.8347 +</dl> 288.8348 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported, but texture coordinates do not support clipping. </dd></dl> 288.8349 + 288.8350 +</div> 288.8351 +</div><p> 288.8352 +<a class="anchor" name="e0c072c592797cc4d7a3e2918963f65d"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="e0c072c592797cc4d7a3e2918963f65d" args="(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity=1)" --> 288.8353 +<div class="memitem"> 288.8354 +<div class="memproto"> 288.8355 + <table class="memname"> 288.8356 + <tr> 288.8357 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_ellipse </td> 288.8358 + <td>(</td> 288.8359 + <td class="paramtype">const int </td> 288.8360 + <td class="paramname"> <em>x0</em>, </td> 288.8361 + </tr> 288.8362 + <tr> 288.8363 + <td class="paramkey"></td> 288.8364 + <td></td> 288.8365 + <td class="paramtype">const int </td> 288.8366 + <td class="paramname"> <em>y0</em>, </td> 288.8367 + </tr> 288.8368 + <tr> 288.8369 + <td class="paramkey"></td> 288.8370 + <td></td> 288.8371 + <td class="paramtype">const float </td> 288.8372 + <td class="paramname"> <em>r1</em>, </td> 288.8373 + </tr> 288.8374 + <tr> 288.8375 + <td class="paramkey"></td> 288.8376 + <td></td> 288.8377 + <td class="paramtype">const float </td> 288.8378 + <td class="paramname"> <em>r2</em>, </td> 288.8379 + </tr> 288.8380 + <tr> 288.8381 + <td class="paramkey"></td> 288.8382 + <td></td> 288.8383 + <td class="paramtype">const float </td> 288.8384 + <td class="paramname"> <em>ru</em>, </td> 288.8385 + </tr> 288.8386 + <tr> 288.8387 + <td class="paramkey"></td> 288.8388 + <td></td> 288.8389 + <td class="paramtype">const float </td> 288.8390 + <td class="paramname"> <em>rv</em>, </td> 288.8391 + </tr> 288.8392 + <tr> 288.8393 + <td class="paramkey"></td> 288.8394 + <td></td> 288.8395 + <td class="paramtype">const tc *const </td> 288.8396 + <td class="paramname"> <em>color</em>, </td> 288.8397 + </tr> 288.8398 + <tr> 288.8399 + <td class="paramkey"></td> 288.8400 + <td></td> 288.8401 + <td class="paramtype">const float </td> 288.8402 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8403 + </tr> 288.8404 + <tr> 288.8405 + <td></td> 288.8406 + <td>)</td> 288.8407 + <td></td><td></td><td><code> [inline]</code></td> 288.8408 + </tr> 288.8409 + </table> 288.8410 +</div> 288.8411 +<div class="memdoc"> 288.8412 + 288.8413 +<p> 288.8414 +Draw a filled ellipse. 288.8415 +<p> 288.8416 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8417 + <table border="0" cellspacing="2" cellpadding="0"> 288.8418 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the ellipse center. </td></tr> 288.8419 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the ellipse center. </td></tr> 288.8420 + <tr><td valign="top"></td><td valign="top"><em>r1</em> </td><td>= First radius of the ellipse. </td></tr> 288.8421 + <tr><td valign="top"></td><td valign="top"><em>r2</em> </td><td>= Second radius of the ellipse. </td></tr> 288.8422 + <tr><td valign="top"></td><td valign="top"><em>ru</em> </td><td>= X-coordinate of the orientation vector related to the first radius. </td></tr> 288.8423 + <tr><td valign="top"></td><td valign="top"><em>rv</em> </td><td>= Y-coordinate of the orientation vector related to the first radius. </td></tr> 288.8424 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8425 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8426 + </table> 288.8427 +</dl> 288.8428 + 288.8429 +</div> 288.8430 +</div><p> 288.8431 +<a class="anchor" name="aee5c65bcb8d1aa53500dd93b70dc206"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="aee5c65bcb8d1aa53500dd93b70dc206" args="(const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity=1)" --> 288.8432 +<div class="memitem"> 288.8433 +<div class="memproto"> 288.8434 + <table class="memname"> 288.8435 + <tr> 288.8436 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_ellipse </td> 288.8437 + <td>(</td> 288.8438 + <td class="paramtype">const int </td> 288.8439 + <td class="paramname"> <em>x0</em>, </td> 288.8440 + </tr> 288.8441 + <tr> 288.8442 + <td class="paramkey"></td> 288.8443 + <td></td> 288.8444 + <td class="paramtype">const int </td> 288.8445 + <td class="paramname"> <em>y0</em>, </td> 288.8446 + </tr> 288.8447 + <tr> 288.8448 + <td class="paramkey"></td> 288.8449 + <td></td> 288.8450 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.8451 + <td class="paramname"> <em>tensor</em>, </td> 288.8452 + </tr> 288.8453 + <tr> 288.8454 + <td class="paramkey"></td> 288.8455 + <td></td> 288.8456 + <td class="paramtype">const tc *const </td> 288.8457 + <td class="paramname"> <em>color</em>, </td> 288.8458 + </tr> 288.8459 + <tr> 288.8460 + <td class="paramkey"></td> 288.8461 + <td></td> 288.8462 + <td class="paramtype">const float </td> 288.8463 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8464 + </tr> 288.8465 + <tr> 288.8466 + <td></td> 288.8467 + <td>)</td> 288.8468 + <td></td><td></td><td><code> [inline]</code></td> 288.8469 + </tr> 288.8470 + </table> 288.8471 +</div> 288.8472 +<div class="memdoc"> 288.8473 + 288.8474 +<p> 288.8475 +Draw a filled ellipse. 288.8476 +<p> 288.8477 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8478 + <table border="0" cellspacing="2" cellpadding="0"> 288.8479 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the ellipse center. </td></tr> 288.8480 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the ellipse center. </td></tr> 288.8481 + <tr><td valign="top"></td><td valign="top"><em>tensor</em> </td><td>= Diffusion tensor describing the ellipse. </td></tr> 288.8482 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8483 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8484 + </table> 288.8485 +</dl> 288.8486 + 288.8487 +</div> 288.8488 +</div><p> 288.8489 +<a class="anchor" name="d54df0e591142a589847a348fdbfc653"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="d54df0e591142a589847a348fdbfc653" args="(const int x0, const int y0, const float r1, const float r2, const float ru, const float rv, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.8490 +<div class="memitem"> 288.8491 +<div class="memproto"> 288.8492 + <table class="memname"> 288.8493 + <tr> 288.8494 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_ellipse </td> 288.8495 + <td>(</td> 288.8496 + <td class="paramtype">const int </td> 288.8497 + <td class="paramname"> <em>x0</em>, </td> 288.8498 + </tr> 288.8499 + <tr> 288.8500 + <td class="paramkey"></td> 288.8501 + <td></td> 288.8502 + <td class="paramtype">const int </td> 288.8503 + <td class="paramname"> <em>y0</em>, </td> 288.8504 + </tr> 288.8505 + <tr> 288.8506 + <td class="paramkey"></td> 288.8507 + <td></td> 288.8508 + <td class="paramtype">const float </td> 288.8509 + <td class="paramname"> <em>r1</em>, </td> 288.8510 + </tr> 288.8511 + <tr> 288.8512 + <td class="paramkey"></td> 288.8513 + <td></td> 288.8514 + <td class="paramtype">const float </td> 288.8515 + <td class="paramname"> <em>r2</em>, </td> 288.8516 + </tr> 288.8517 + <tr> 288.8518 + <td class="paramkey"></td> 288.8519 + <td></td> 288.8520 + <td class="paramtype">const float </td> 288.8521 + <td class="paramname"> <em>ru</em>, </td> 288.8522 + </tr> 288.8523 + <tr> 288.8524 + <td class="paramkey"></td> 288.8525 + <td></td> 288.8526 + <td class="paramtype">const float </td> 288.8527 + <td class="paramname"> <em>rv</em>, </td> 288.8528 + </tr> 288.8529 + <tr> 288.8530 + <td class="paramkey"></td> 288.8531 + <td></td> 288.8532 + <td class="paramtype">const tc *const </td> 288.8533 + <td class="paramname"> <em>color</em>, </td> 288.8534 + </tr> 288.8535 + <tr> 288.8536 + <td class="paramkey"></td> 288.8537 + <td></td> 288.8538 + <td class="paramtype">const float </td> 288.8539 + <td class="paramname"> <em>opacity</em>, </td> 288.8540 + </tr> 288.8541 + <tr> 288.8542 + <td class="paramkey"></td> 288.8543 + <td></td> 288.8544 + <td class="paramtype">const unsigned int </td> 288.8545 + <td class="paramname"> <em>pattern</em></td><td> </td> 288.8546 + </tr> 288.8547 + <tr> 288.8548 + <td></td> 288.8549 + <td>)</td> 288.8550 + <td></td><td></td><td><code> [inline]</code></td> 288.8551 + </tr> 288.8552 + </table> 288.8553 +</div> 288.8554 +<div class="memdoc"> 288.8555 + 288.8556 +<p> 288.8557 +Draw an outlined ellipse. 288.8558 +<p> 288.8559 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8560 + <table border="0" cellspacing="2" cellpadding="0"> 288.8561 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the ellipse center. </td></tr> 288.8562 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the ellipse center. </td></tr> 288.8563 + <tr><td valign="top"></td><td valign="top"><em>r1</em> </td><td>= First radius of the ellipse. </td></tr> 288.8564 + <tr><td valign="top"></td><td valign="top"><em>r2</em> </td><td>= Second radius of the ellipse. </td></tr> 288.8565 + <tr><td valign="top"></td><td valign="top"><em>ru</em> </td><td>= X-coordinate of the orientation vector related to the first radius. </td></tr> 288.8566 + <tr><td valign="top"></td><td valign="top"><em>rv</em> </td><td>= Y-coordinate of the orientation vector related to the first radius. </td></tr> 288.8567 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8568 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>= If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern. </td></tr> 288.8569 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8570 + </table> 288.8571 +</dl> 288.8572 + 288.8573 +</div> 288.8574 +</div><p> 288.8575 +<a class="anchor" name="eae8fb88a9ad0af8f0d8090e7c55ff2e"></a><!-- doxytag: member="cimg_library::CImg::draw_ellipse" ref="eae8fb88a9ad0af8f0d8090e7c55ff2e" args="(const int x0, const int y0, const CImg< t > &tensor, const tc *const color, const float opacity, const unsigned int pattern)" --> 288.8576 +<div class="memitem"> 288.8577 +<div class="memproto"> 288.8578 + <table class="memname"> 288.8579 + <tr> 288.8580 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_ellipse </td> 288.8581 + <td>(</td> 288.8582 + <td class="paramtype">const int </td> 288.8583 + <td class="paramname"> <em>x0</em>, </td> 288.8584 + </tr> 288.8585 + <tr> 288.8586 + <td class="paramkey"></td> 288.8587 + <td></td> 288.8588 + <td class="paramtype">const int </td> 288.8589 + <td class="paramname"> <em>y0</em>, </td> 288.8590 + </tr> 288.8591 + <tr> 288.8592 + <td class="paramkey"></td> 288.8593 + <td></td> 288.8594 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.8595 + <td class="paramname"> <em>tensor</em>, </td> 288.8596 + </tr> 288.8597 + <tr> 288.8598 + <td class="paramkey"></td> 288.8599 + <td></td> 288.8600 + <td class="paramtype">const tc *const </td> 288.8601 + <td class="paramname"> <em>color</em>, </td> 288.8602 + </tr> 288.8603 + <tr> 288.8604 + <td class="paramkey"></td> 288.8605 + <td></td> 288.8606 + <td class="paramtype">const float </td> 288.8607 + <td class="paramname"> <em>opacity</em>, </td> 288.8608 + </tr> 288.8609 + <tr> 288.8610 + <td class="paramkey"></td> 288.8611 + <td></td> 288.8612 + <td class="paramtype">const unsigned int </td> 288.8613 + <td class="paramname"> <em>pattern</em></td><td> </td> 288.8614 + </tr> 288.8615 + <tr> 288.8616 + <td></td> 288.8617 + <td>)</td> 288.8618 + <td></td><td></td><td><code> [inline]</code></td> 288.8619 + </tr> 288.8620 + </table> 288.8621 +</div> 288.8622 +<div class="memdoc"> 288.8623 + 288.8624 +<p> 288.8625 +Draw an outlined ellipse. 288.8626 +<p> 288.8627 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8628 + <table border="0" cellspacing="2" cellpadding="0"> 288.8629 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the ellipse center. </td></tr> 288.8630 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the ellipse center. </td></tr> 288.8631 + <tr><td valign="top"></td><td valign="top"><em>tensor</em> </td><td>= Diffusion tensor describing the ellipse. </td></tr> 288.8632 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8633 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>= If zero, the ellipse is filled, else pattern is an integer whose bits describe the outline pattern. </td></tr> 288.8634 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.8635 + </table> 288.8636 +</dl> 288.8637 + 288.8638 +</div> 288.8639 +</div><p> 288.8640 +<a class="anchor" name="0fcdceae39ad1bfa32dabc70ab503455"></a><!-- doxytag: member="cimg_library::CImg::draw_circle" ref="0fcdceae39ad1bfa32dabc70ab503455" args="(const int x0, const int y0, int radius, const tc *const color, const float opacity=1)" --> 288.8641 +<div class="memitem"> 288.8642 +<div class="memproto"> 288.8643 + <table class="memname"> 288.8644 + <tr> 288.8645 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_circle </td> 288.8646 + <td>(</td> 288.8647 + <td class="paramtype">const int </td> 288.8648 + <td class="paramname"> <em>x0</em>, </td> 288.8649 + </tr> 288.8650 + <tr> 288.8651 + <td class="paramkey"></td> 288.8652 + <td></td> 288.8653 + <td class="paramtype">const int </td> 288.8654 + <td class="paramname"> <em>y0</em>, </td> 288.8655 + </tr> 288.8656 + <tr> 288.8657 + <td class="paramkey"></td> 288.8658 + <td></td> 288.8659 + <td class="paramtype">int </td> 288.8660 + <td class="paramname"> <em>radius</em>, </td> 288.8661 + </tr> 288.8662 + <tr> 288.8663 + <td class="paramkey"></td> 288.8664 + <td></td> 288.8665 + <td class="paramtype">const tc *const </td> 288.8666 + <td class="paramname"> <em>color</em>, </td> 288.8667 + </tr> 288.8668 + <tr> 288.8669 + <td class="paramkey"></td> 288.8670 + <td></td> 288.8671 + <td class="paramtype">const float </td> 288.8672 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.8673 + </tr> 288.8674 + <tr> 288.8675 + <td></td> 288.8676 + <td>)</td> 288.8677 + <td></td><td></td><td><code> [inline]</code></td> 288.8678 + </tr> 288.8679 + </table> 288.8680 +</div> 288.8681 +<div class="memdoc"> 288.8682 + 288.8683 +<p> 288.8684 +Draw a filled circle. 288.8685 +<p> 288.8686 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8687 + <table border="0" cellspacing="2" cellpadding="0"> 288.8688 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the circle center. </td></tr> 288.8689 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the circle center. </td></tr> 288.8690 + <tr><td valign="top"></td><td valign="top"><em>radius</em> </td><td>Circle radius. </td></tr> 288.8691 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8692 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.8693 + </table> 288.8694 +</dl> 288.8695 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.8696 +<li>Circle version of the Bresenham's algorithm is used. </li></ul> 288.8697 +</dd></dl> 288.8698 + 288.8699 +</div> 288.8700 +</div><p> 288.8701 +<a class="anchor" name="bc6077a1255326a211f32716fcc416fc"></a><!-- doxytag: member="cimg_library::CImg::draw_circle" ref="bc6077a1255326a211f32716fcc416fc" args="(const int x0, const int y0, int radius, const tc *const color, const float opacity, const unsigned int)" --> 288.8702 +<div class="memitem"> 288.8703 +<div class="memproto"> 288.8704 + <table class="memname"> 288.8705 + <tr> 288.8706 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_circle </td> 288.8707 + <td>(</td> 288.8708 + <td class="paramtype">const int </td> 288.8709 + <td class="paramname"> <em>x0</em>, </td> 288.8710 + </tr> 288.8711 + <tr> 288.8712 + <td class="paramkey"></td> 288.8713 + <td></td> 288.8714 + <td class="paramtype">const int </td> 288.8715 + <td class="paramname"> <em>y0</em>, </td> 288.8716 + </tr> 288.8717 + <tr> 288.8718 + <td class="paramkey"></td> 288.8719 + <td></td> 288.8720 + <td class="paramtype">int </td> 288.8721 + <td class="paramname"> <em>radius</em>, </td> 288.8722 + </tr> 288.8723 + <tr> 288.8724 + <td class="paramkey"></td> 288.8725 + <td></td> 288.8726 + <td class="paramtype">const tc *const </td> 288.8727 + <td class="paramname"> <em>color</em>, </td> 288.8728 + </tr> 288.8729 + <tr> 288.8730 + <td class="paramkey"></td> 288.8731 + <td></td> 288.8732 + <td class="paramtype">const float </td> 288.8733 + <td class="paramname"> <em>opacity</em>, </td> 288.8734 + </tr> 288.8735 + <tr> 288.8736 + <td class="paramkey"></td> 288.8737 + <td></td> 288.8738 + <td class="paramtype">const unsigned </td> 288.8739 + <td class="paramname"> <em>int</em></td><td> </td> 288.8740 + </tr> 288.8741 + <tr> 288.8742 + <td></td> 288.8743 + <td>)</td> 288.8744 + <td></td><td></td><td><code> [inline]</code></td> 288.8745 + </tr> 288.8746 + </table> 288.8747 +</div> 288.8748 +<div class="memdoc"> 288.8749 + 288.8750 +<p> 288.8751 +Draw an outlined circle. 288.8752 +<p> 288.8753 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8754 + <table border="0" cellspacing="2" cellpadding="0"> 288.8755 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the circle center. </td></tr> 288.8756 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the circle center. </td></tr> 288.8757 + <tr><td valign="top"></td><td valign="top"><em>radius</em> </td><td>Circle radius. </td></tr> 288.8758 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.8759 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.8760 + </table> 288.8761 +</dl> 288.8762 + 288.8763 +</div> 288.8764 +</div><p> 288.8765 +<a class="anchor" name="10f19686ec4d22cf112d7d60a00849eb"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="10f19686ec4d22cf112d7d60a00849eb" args="(const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity, const CImgList< t > &font,...)" --> 288.8766 +<div class="memitem"> 288.8767 +<div class="memproto"> 288.8768 + <table class="memname"> 288.8769 + <tr> 288.8770 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_text </td> 288.8771 + <td>(</td> 288.8772 + <td class="paramtype">const int </td> 288.8773 + <td class="paramname"> <em>x0</em>, </td> 288.8774 + </tr> 288.8775 + <tr> 288.8776 + <td class="paramkey"></td> 288.8777 + <td></td> 288.8778 + <td class="paramtype">const int </td> 288.8779 + <td class="paramname"> <em>y0</em>, </td> 288.8780 + </tr> 288.8781 + <tr> 288.8782 + <td class="paramkey"></td> 288.8783 + <td></td> 288.8784 + <td class="paramtype">const char *const </td> 288.8785 + <td class="paramname"> <em>text</em>, </td> 288.8786 + </tr> 288.8787 + <tr> 288.8788 + <td class="paramkey"></td> 288.8789 + <td></td> 288.8790 + <td class="paramtype">const tc1 *const </td> 288.8791 + <td class="paramname"> <em>foreground_color</em>, </td> 288.8792 + </tr> 288.8793 + <tr> 288.8794 + <td class="paramkey"></td> 288.8795 + <td></td> 288.8796 + <td class="paramtype">const tc2 *const </td> 288.8797 + <td class="paramname"> <em>background_color</em>, </td> 288.8798 + </tr> 288.8799 + <tr> 288.8800 + <td class="paramkey"></td> 288.8801 + <td></td> 288.8802 + <td class="paramtype">const float </td> 288.8803 + <td class="paramname"> <em>opacity</em>, </td> 288.8804 + </tr> 288.8805 + <tr> 288.8806 + <td class="paramkey"></td> 288.8807 + <td></td> 288.8808 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > & </td> 288.8809 + <td class="paramname"> <em>font</em>, </td> 288.8810 + </tr> 288.8811 + <tr> 288.8812 + <td class="paramkey"></td> 288.8813 + <td></td> 288.8814 + <td class="paramtype"> </td> 288.8815 + <td class="paramname"> <em>...</em></td><td> </td> 288.8816 + </tr> 288.8817 + <tr> 288.8818 + <td></td> 288.8819 + <td>)</td> 288.8820 + <td></td><td></td><td><code> [inline]</code></td> 288.8821 + </tr> 288.8822 + </table> 288.8823 +</div> 288.8824 +<div class="memdoc"> 288.8825 + 288.8826 +<p> 288.8827 +Draw a text. 288.8828 +<p> 288.8829 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8830 + <table border="0" cellspacing="2" cellpadding="0"> 288.8831 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the text in the instance image. </td></tr> 288.8832 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the text in the instance image. </td></tr> 288.8833 + <tr><td valign="top"></td><td valign="top"><em>foreground_color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the foreground color (0 means 'transparent'). </td></tr> 288.8834 + <tr><td valign="top"></td><td valign="top"><em>background_color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the background color (0 means 'transparent'). </td></tr> 288.8835 + <tr><td valign="top"></td><td valign="top"><em>font</em> </td><td>Font used for drawing text. </td></tr> 288.8836 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.8837 + <tr><td valign="top"></td><td valign="top"><em>format</em> </td><td>'printf'-style format string, followed by arguments. </td></tr> 288.8838 + </table> 288.8839 +</dl> 288.8840 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported. </dd></dl> 288.8841 + 288.8842 +</div> 288.8843 +</div><p> 288.8844 +<a class="anchor" name="8a08ffc222f02da3bae41a9cae11133c"></a><!-- doxytag: member="cimg_library::CImg::draw_text" ref="8a08ffc222f02da3bae41a9cae11133c" args="(const int x0, const int y0, const char *const text, const tc1 *const foreground_color, const tc2 *const background_color, const float opacity=1, const unsigned int font_size=11,...)" --> 288.8845 +<div class="memitem"> 288.8846 +<div class="memproto"> 288.8847 + <table class="memname"> 288.8848 + <tr> 288.8849 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_text </td> 288.8850 + <td>(</td> 288.8851 + <td class="paramtype">const int </td> 288.8852 + <td class="paramname"> <em>x0</em>, </td> 288.8853 + </tr> 288.8854 + <tr> 288.8855 + <td class="paramkey"></td> 288.8856 + <td></td> 288.8857 + <td class="paramtype">const int </td> 288.8858 + <td class="paramname"> <em>y0</em>, </td> 288.8859 + </tr> 288.8860 + <tr> 288.8861 + <td class="paramkey"></td> 288.8862 + <td></td> 288.8863 + <td class="paramtype">const char *const </td> 288.8864 + <td class="paramname"> <em>text</em>, </td> 288.8865 + </tr> 288.8866 + <tr> 288.8867 + <td class="paramkey"></td> 288.8868 + <td></td> 288.8869 + <td class="paramtype">const tc1 *const </td> 288.8870 + <td class="paramname"> <em>foreground_color</em>, </td> 288.8871 + </tr> 288.8872 + <tr> 288.8873 + <td class="paramkey"></td> 288.8874 + <td></td> 288.8875 + <td class="paramtype">const tc2 *const </td> 288.8876 + <td class="paramname"> <em>background_color</em>, </td> 288.8877 + </tr> 288.8878 + <tr> 288.8879 + <td class="paramkey"></td> 288.8880 + <td></td> 288.8881 + <td class="paramtype">const float </td> 288.8882 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.8883 + </tr> 288.8884 + <tr> 288.8885 + <td class="paramkey"></td> 288.8886 + <td></td> 288.8887 + <td class="paramtype">const unsigned int </td> 288.8888 + <td class="paramname"> <em>font_size</em> = <code>11</code>, </td> 288.8889 + </tr> 288.8890 + <tr> 288.8891 + <td class="paramkey"></td> 288.8892 + <td></td> 288.8893 + <td class="paramtype"> </td> 288.8894 + <td class="paramname"> <em>...</em></td><td> </td> 288.8895 + </tr> 288.8896 + <tr> 288.8897 + <td></td> 288.8898 + <td>)</td> 288.8899 + <td></td><td></td><td><code> [inline]</code></td> 288.8900 + </tr> 288.8901 + </table> 288.8902 +</div> 288.8903 +<div class="memdoc"> 288.8904 + 288.8905 +<p> 288.8906 +Draw a text. 288.8907 +<p> 288.8908 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8909 + <table border="0" cellspacing="2" cellpadding="0"> 288.8910 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>X-coordinate of the text in the instance image. </td></tr> 288.8911 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>Y-coordinate of the text in the instance image. </td></tr> 288.8912 + <tr><td valign="top"></td><td valign="top"><em>foreground_color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the foreground color (0 means 'transparent'). </td></tr> 288.8913 + <tr><td valign="top"></td><td valign="top"><em>background_color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the background color (0 means 'transparent'). </td></tr> 288.8914 + <tr><td valign="top"></td><td valign="top"><em>font_size</em> </td><td>Size of the font (nearest match). </td></tr> 288.8915 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.8916 + <tr><td valign="top"></td><td valign="top"><em>format</em> </td><td>'printf'-style format string, followed by arguments. </td></tr> 288.8917 + </table> 288.8918 +</dl> 288.8919 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported. </dd></dl> 288.8920 + 288.8921 +</div> 288.8922 +</div><p> 288.8923 +<a class="anchor" name="fa63fe980a96a02650684e9a21a4075b"></a><!-- doxytag: member="cimg_library::CImg::draw_quiver" ref="fa63fe980a96a02650684e9a21a4075b" args="(const CImg< t1 > &flow, const t2 *const color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)" --> 288.8924 +<div class="memitem"> 288.8925 +<div class="memproto"> 288.8926 + <table class="memname"> 288.8927 + <tr> 288.8928 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_quiver </td> 288.8929 + <td>(</td> 288.8930 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > & </td> 288.8931 + <td class="paramname"> <em>flow</em>, </td> 288.8932 + </tr> 288.8933 + <tr> 288.8934 + <td class="paramkey"></td> 288.8935 + <td></td> 288.8936 + <td class="paramtype">const t2 *const </td> 288.8937 + <td class="paramname"> <em>color</em>, </td> 288.8938 + </tr> 288.8939 + <tr> 288.8940 + <td class="paramkey"></td> 288.8941 + <td></td> 288.8942 + <td class="paramtype">const float </td> 288.8943 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.8944 + </tr> 288.8945 + <tr> 288.8946 + <td class="paramkey"></td> 288.8947 + <td></td> 288.8948 + <td class="paramtype">const unsigned int </td> 288.8949 + <td class="paramname"> <em>sampling</em> = <code>25</code>, </td> 288.8950 + </tr> 288.8951 + <tr> 288.8952 + <td class="paramkey"></td> 288.8953 + <td></td> 288.8954 + <td class="paramtype">const float </td> 288.8955 + <td class="paramname"> <em>factor</em> = <code>-20</code>, </td> 288.8956 + </tr> 288.8957 + <tr> 288.8958 + <td class="paramkey"></td> 288.8959 + <td></td> 288.8960 + <td class="paramtype">const int </td> 288.8961 + <td class="paramname"> <em>quiver_type</em> = <code>0</code>, </td> 288.8962 + </tr> 288.8963 + <tr> 288.8964 + <td class="paramkey"></td> 288.8965 + <td></td> 288.8966 + <td class="paramtype">const unsigned int </td> 288.8967 + <td class="paramname"> <em>pattern</em> = <code>~0U</code></td><td> </td> 288.8968 + </tr> 288.8969 + <tr> 288.8970 + <td></td> 288.8971 + <td>)</td> 288.8972 + <td></td><td></td><td><code> [inline]</code></td> 288.8973 + </tr> 288.8974 + </table> 288.8975 +</div> 288.8976 +<div class="memdoc"> 288.8977 + 288.8978 +<p> 288.8979 +Draw a vector field in the instance image, using a colormap. 288.8980 +<p> 288.8981 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.8982 + <table border="0" cellspacing="2" cellpadding="0"> 288.8983 + <tr><td valign="top"></td><td valign="top"><em>flow</em> </td><td>Image of 2d vectors used as input data. </td></tr> 288.8984 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Image of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a>-D vectors corresponding to the color of each arrow. </td></tr> 288.8985 + <tr><td valign="top"></td><td valign="top"><em>sampling</em> </td><td>Length (in pixels) between each arrow. </td></tr> 288.8986 + <tr><td valign="top"></td><td valign="top"><em>factor</em> </td><td>Length factor of each arrow (if <0, computed as a percentage of the maximum length). </td></tr> 288.8987 + <tr><td valign="top"></td><td valign="top"><em>quiver_type</em> </td><td>Type of plot. Can be 0 (arrows) or 1 (segments). </td></tr> 288.8988 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Opacity of the drawing. </td></tr> 288.8989 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>Used pattern to draw lines. </td></tr> 288.8990 + </table> 288.8991 +</dl> 288.8992 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported. </dd></dl> 288.8993 + 288.8994 +</div> 288.8995 +</div><p> 288.8996 +<a class="anchor" name="cf68676d4536ff46ed896648ff08c904"></a><!-- doxytag: member="cimg_library::CImg::draw_quiver" ref="cf68676d4536ff46ed896648ff08c904" args="(const CImg< t1 > &flow, const CImg< t2 > &color, const float opacity=1, const unsigned int sampling=25, const float factor=-20, const int quiver_type=0, const unsigned int pattern=~0U)" --> 288.8997 +<div class="memitem"> 288.8998 +<div class="memproto"> 288.8999 + <table class="memname"> 288.9000 + <tr> 288.9001 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_quiver </td> 288.9002 + <td>(</td> 288.9003 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > & </td> 288.9004 + <td class="paramname"> <em>flow</em>, </td> 288.9005 + </tr> 288.9006 + <tr> 288.9007 + <td class="paramkey"></td> 288.9008 + <td></td> 288.9009 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > & </td> 288.9010 + <td class="paramname"> <em>color</em>, </td> 288.9011 + </tr> 288.9012 + <tr> 288.9013 + <td class="paramkey"></td> 288.9014 + <td></td> 288.9015 + <td class="paramtype">const float </td> 288.9016 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.9017 + </tr> 288.9018 + <tr> 288.9019 + <td class="paramkey"></td> 288.9020 + <td></td> 288.9021 + <td class="paramtype">const unsigned int </td> 288.9022 + <td class="paramname"> <em>sampling</em> = <code>25</code>, </td> 288.9023 + </tr> 288.9024 + <tr> 288.9025 + <td class="paramkey"></td> 288.9026 + <td></td> 288.9027 + <td class="paramtype">const float </td> 288.9028 + <td class="paramname"> <em>factor</em> = <code>-20</code>, </td> 288.9029 + </tr> 288.9030 + <tr> 288.9031 + <td class="paramkey"></td> 288.9032 + <td></td> 288.9033 + <td class="paramtype">const int </td> 288.9034 + <td class="paramname"> <em>quiver_type</em> = <code>0</code>, </td> 288.9035 + </tr> 288.9036 + <tr> 288.9037 + <td class="paramkey"></td> 288.9038 + <td></td> 288.9039 + <td class="paramtype">const unsigned int </td> 288.9040 + <td class="paramname"> <em>pattern</em> = <code>~0U</code></td><td> </td> 288.9041 + </tr> 288.9042 + <tr> 288.9043 + <td></td> 288.9044 + <td>)</td> 288.9045 + <td></td><td></td><td><code> [inline]</code></td> 288.9046 + </tr> 288.9047 + </table> 288.9048 +</div> 288.9049 +<div class="memdoc"> 288.9050 + 288.9051 +<p> 288.9052 +Draw a vector field in the instance image, using a colormap. 288.9053 +<p> 288.9054 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9055 + <table border="0" cellspacing="2" cellpadding="0"> 288.9056 + <tr><td valign="top"></td><td valign="top"><em>flow</em> </td><td>Image of 2d vectors used as input data. </td></tr> 288.9057 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Image of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a>-D vectors corresponding to the color of each arrow. </td></tr> 288.9058 + <tr><td valign="top"></td><td valign="top"><em>sampling</em> </td><td>Length (in pixels) between each arrow. </td></tr> 288.9059 + <tr><td valign="top"></td><td valign="top"><em>factor</em> </td><td>Length factor of each arrow (if <0, computed as a percentage of the maximum length). </td></tr> 288.9060 + <tr><td valign="top"></td><td valign="top"><em>quiver_type</em> </td><td>Type of plot. Can be 0 (arrows) or 1 (segments). </td></tr> 288.9061 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Opacity of the drawing. </td></tr> 288.9062 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>Used pattern to draw lines. </td></tr> 288.9063 + </table> 288.9064 +</dl> 288.9065 +<dl class="note" compact><dt><b>Note:</b></dt><dd>Clipping is supported. </dd></dl> 288.9066 + 288.9067 +</div> 288.9068 +</div><p> 288.9069 +<a class="anchor" name="67e7caaf13995641acfcd5749c39bbc7"></a><!-- doxytag: member="cimg_library::CImg::draw_graph" ref="67e7caaf13995641acfcd5749c39bbc7" args="(const CImg< t > &data, const tc *const color, const float opacity=1, const unsigned int plot_type=1, const unsigned int vertex_type=1, const double ymin=0, const double ymax=0, const unsigned int pattern=~0U)" --> 288.9070 +<div class="memitem"> 288.9071 +<div class="memproto"> 288.9072 + <table class="memname"> 288.9073 + <tr> 288.9074 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_graph </td> 288.9075 + <td>(</td> 288.9076 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9077 + <td class="paramname"> <em>data</em>, </td> 288.9078 + </tr> 288.9079 + <tr> 288.9080 + <td class="paramkey"></td> 288.9081 + <td></td> 288.9082 + <td class="paramtype">const tc *const </td> 288.9083 + <td class="paramname"> <em>color</em>, </td> 288.9084 + </tr> 288.9085 + <tr> 288.9086 + <td class="paramkey"></td> 288.9087 + <td></td> 288.9088 + <td class="paramtype">const float </td> 288.9089 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.9090 + </tr> 288.9091 + <tr> 288.9092 + <td class="paramkey"></td> 288.9093 + <td></td> 288.9094 + <td class="paramtype">const unsigned int </td> 288.9095 + <td class="paramname"> <em>plot_type</em> = <code>1</code>, </td> 288.9096 + </tr> 288.9097 + <tr> 288.9098 + <td class="paramkey"></td> 288.9099 + <td></td> 288.9100 + <td class="paramtype">const unsigned int </td> 288.9101 + <td class="paramname"> <em>vertex_type</em> = <code>1</code>, </td> 288.9102 + </tr> 288.9103 + <tr> 288.9104 + <td class="paramkey"></td> 288.9105 + <td></td> 288.9106 + <td class="paramtype">const double </td> 288.9107 + <td class="paramname"> <em>ymin</em> = <code>0</code>, </td> 288.9108 + </tr> 288.9109 + <tr> 288.9110 + <td class="paramkey"></td> 288.9111 + <td></td> 288.9112 + <td class="paramtype">const double </td> 288.9113 + <td class="paramname"> <em>ymax</em> = <code>0</code>, </td> 288.9114 + </tr> 288.9115 + <tr> 288.9116 + <td class="paramkey"></td> 288.9117 + <td></td> 288.9118 + <td class="paramtype">const unsigned int </td> 288.9119 + <td class="paramname"> <em>pattern</em> = <code>~0U</code></td><td> </td> 288.9120 + </tr> 288.9121 + <tr> 288.9122 + <td></td> 288.9123 + <td>)</td> 288.9124 + <td></td><td></td><td><code> [inline]</code></td> 288.9125 + </tr> 288.9126 + </table> 288.9127 +</div> 288.9128 +<div class="memdoc"> 288.9129 + 288.9130 +<p> 288.9131 +Draw a 1D graph on the instance image. 288.9132 +<p> 288.9133 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9134 + <table border="0" cellspacing="2" cellpadding="0"> 288.9135 + <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>Image containing the graph values I = f(x). </td></tr> 288.9136 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9137 + <tr><td valign="top"></td><td valign="top"><em>gtype</em> </td><td>Define the type of the plot :<ul> 288.9138 +<li>0 = Plot using points clouds.</li><li>1 = Plot using linear interpolation (segments).</li><li>2 = Plot with bars.</li><li>3 = Plot using cubic interpolation (3-polynomials).</li><li>4 = Plot using cross clouds. </li></ul> 288.9139 +</td></tr> 288.9140 + <tr><td valign="top"></td><td valign="top"><em>ymin</em> </td><td>Lower bound of the y-range. </td></tr> 288.9141 + <tr><td valign="top"></td><td valign="top"><em>ymax</em> </td><td>Upper bound of the y-range. </td></tr> 288.9142 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.9143 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>Drawing pattern. </td></tr> 288.9144 + </table> 288.9145 +</dl> 288.9146 +<dl class="note" compact><dt><b>Note:</b></dt><dd><ul> 288.9147 +<li>if <code>ymin==ymax==0</code>, the y-range is computed automatically from the input sample. </li></ul> 288.9148 +</dd></dl> 288.9149 + 288.9150 +</div> 288.9151 +</div><p> 288.9152 +<a class="anchor" name="08296af30d35f7d21b5609a674b9b49c"></a><!-- doxytag: member="cimg_library::CImg::draw_axis" ref="08296af30d35f7d21b5609a674b9b49c" args="(const CImg< t > &xvalues, const int y, const tc *const color, const float opacity=1, const unsigned int pattern=~0U)" --> 288.9153 +<div class="memitem"> 288.9154 +<div class="memproto"> 288.9155 + <table class="memname"> 288.9156 + <tr> 288.9157 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_axis </td> 288.9158 + <td>(</td> 288.9159 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9160 + <td class="paramname"> <em>xvalues</em>, </td> 288.9161 + </tr> 288.9162 + <tr> 288.9163 + <td class="paramkey"></td> 288.9164 + <td></td> 288.9165 + <td class="paramtype">const int </td> 288.9166 + <td class="paramname"> <em>y</em>, </td> 288.9167 + </tr> 288.9168 + <tr> 288.9169 + <td class="paramkey"></td> 288.9170 + <td></td> 288.9171 + <td class="paramtype">const tc *const </td> 288.9172 + <td class="paramname"> <em>color</em>, </td> 288.9173 + </tr> 288.9174 + <tr> 288.9175 + <td class="paramkey"></td> 288.9176 + <td></td> 288.9177 + <td class="paramtype">const float </td> 288.9178 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.9179 + </tr> 288.9180 + <tr> 288.9181 + <td class="paramkey"></td> 288.9182 + <td></td> 288.9183 + <td class="paramtype">const unsigned int </td> 288.9184 + <td class="paramname"> <em>pattern</em> = <code>~0U</code></td><td> </td> 288.9185 + </tr> 288.9186 + <tr> 288.9187 + <td></td> 288.9188 + <td>)</td> 288.9189 + <td></td><td></td><td><code> [inline]</code></td> 288.9190 + </tr> 288.9191 + </table> 288.9192 +</div> 288.9193 +<div class="memdoc"> 288.9194 + 288.9195 +<p> 288.9196 +Draw a labeled horizontal axis on the instance image. 288.9197 +<p> 288.9198 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9199 + <table border="0" cellspacing="2" cellpadding="0"> 288.9200 + <tr><td valign="top"></td><td valign="top"><em>xvalues</em> </td><td>Lower bound of the x-range. </td></tr> 288.9201 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>Y-coordinate of the horizontal axis in the instance image. </td></tr> 288.9202 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9203 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Drawing opacity. </td></tr> 288.9204 + <tr><td valign="top"></td><td valign="top"><em>pattern</em> </td><td>Drawing pattern. </td></tr> 288.9205 + <tr><td valign="top"></td><td valign="top"><em>opacity_out</em> </td><td>Drawing opacity of 'outside' axes. </td></tr> 288.9206 + </table> 288.9207 +</dl> 288.9208 +<dl class="note" compact><dt><b>Note:</b></dt><dd>if <code>precision==0</code>, precision of the labels is automatically computed. </dd></dl> 288.9209 + 288.9210 +</div> 288.9211 +</div><p> 288.9212 +<a class="anchor" name="02af5e263936e2fc27aeaa3771cb31d4"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="02af5e263936e2fc27aeaa3771cb31d4" args="(const int x, const int y, const int z, const tc *const color, const float opacity, CImg< t > &region, const float sigma=0, const bool high_connexity=false)" --> 288.9213 +<div class="memitem"> 288.9214 +<div class="memproto"> 288.9215 + <table class="memname"> 288.9216 + <tr> 288.9217 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_fill </td> 288.9218 + <td>(</td> 288.9219 + <td class="paramtype">const int </td> 288.9220 + <td class="paramname"> <em>x</em>, </td> 288.9221 + </tr> 288.9222 + <tr> 288.9223 + <td class="paramkey"></td> 288.9224 + <td></td> 288.9225 + <td class="paramtype">const int </td> 288.9226 + <td class="paramname"> <em>y</em>, </td> 288.9227 + </tr> 288.9228 + <tr> 288.9229 + <td class="paramkey"></td> 288.9230 + <td></td> 288.9231 + <td class="paramtype">const int </td> 288.9232 + <td class="paramname"> <em>z</em>, </td> 288.9233 + </tr> 288.9234 + <tr> 288.9235 + <td class="paramkey"></td> 288.9236 + <td></td> 288.9237 + <td class="paramtype">const tc *const </td> 288.9238 + <td class="paramname"> <em>color</em>, </td> 288.9239 + </tr> 288.9240 + <tr> 288.9241 + <td class="paramkey"></td> 288.9242 + <td></td> 288.9243 + <td class="paramtype">const float </td> 288.9244 + <td class="paramname"> <em>opacity</em>, </td> 288.9245 + </tr> 288.9246 + <tr> 288.9247 + <td class="paramkey"></td> 288.9248 + <td></td> 288.9249 + <td class="paramtype"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9250 + <td class="paramname"> <em>region</em>, </td> 288.9251 + </tr> 288.9252 + <tr> 288.9253 + <td class="paramkey"></td> 288.9254 + <td></td> 288.9255 + <td class="paramtype">const float </td> 288.9256 + <td class="paramname"> <em>sigma</em> = <code>0</code>, </td> 288.9257 + </tr> 288.9258 + <tr> 288.9259 + <td class="paramkey"></td> 288.9260 + <td></td> 288.9261 + <td class="paramtype">const bool </td> 288.9262 + <td class="paramname"> <em>high_connexity</em> = <code>false</code></td><td> </td> 288.9263 + </tr> 288.9264 + <tr> 288.9265 + <td></td> 288.9266 + <td>)</td> 288.9267 + <td></td><td></td><td><code> [inline]</code></td> 288.9268 + </tr> 288.9269 + </table> 288.9270 +</div> 288.9271 +<div class="memdoc"> 288.9272 + 288.9273 +<p> 288.9274 +Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. 288.9275 +<p> 288.9276 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9277 + <table border="0" cellspacing="2" cellpadding="0"> 288.9278 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>X-coordinate of the starting point of the region to fill. </td></tr> 288.9279 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>Y-coordinate of the starting point of the region to fill. </td></tr> 288.9280 + <tr><td valign="top"></td><td valign="top"><em>z</em> </td><td>Z-coordinate of the starting point of the region to fill. </td></tr> 288.9281 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>An array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9282 + <tr><td valign="top"></td><td valign="top"><em>region</em> </td><td>Image that will contain the mask of the filled region mask, as an output. </td></tr> 288.9283 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>Tolerance concerning neighborhood values. </td></tr> 288.9284 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>Opacity of the drawing. </td></tr> 288.9285 + <tr><td valign="top"></td><td valign="top"><em>high_connexity</em> </td><td>Tells if 8-connexity must be used (only for 2D images). </td></tr> 288.9286 + </table> 288.9287 +</dl> 288.9288 +<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>region</code> is initialized with the binary mask of the filled region. </dd></dl> 288.9289 + 288.9290 +</div> 288.9291 +</div><p> 288.9292 +<a class="anchor" name="f162693c97503ffb9789fcb2f8e16104"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="f162693c97503ffb9789fcb2f8e16104" args="(const int x, const int y, const int z, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)" --> 288.9293 +<div class="memitem"> 288.9294 +<div class="memproto"> 288.9295 + <table class="memname"> 288.9296 + <tr> 288.9297 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_fill </td> 288.9298 + <td>(</td> 288.9299 + <td class="paramtype">const int </td> 288.9300 + <td class="paramname"> <em>x</em>, </td> 288.9301 + </tr> 288.9302 + <tr> 288.9303 + <td class="paramkey"></td> 288.9304 + <td></td> 288.9305 + <td class="paramtype">const int </td> 288.9306 + <td class="paramname"> <em>y</em>, </td> 288.9307 + </tr> 288.9308 + <tr> 288.9309 + <td class="paramkey"></td> 288.9310 + <td></td> 288.9311 + <td class="paramtype">const int </td> 288.9312 + <td class="paramname"> <em>z</em>, </td> 288.9313 + </tr> 288.9314 + <tr> 288.9315 + <td class="paramkey"></td> 288.9316 + <td></td> 288.9317 + <td class="paramtype">const tc *const </td> 288.9318 + <td class="paramname"> <em>color</em>, </td> 288.9319 + </tr> 288.9320 + <tr> 288.9321 + <td class="paramkey"></td> 288.9322 + <td></td> 288.9323 + <td class="paramtype">const float </td> 288.9324 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.9325 + </tr> 288.9326 + <tr> 288.9327 + <td class="paramkey"></td> 288.9328 + <td></td> 288.9329 + <td class="paramtype">const float </td> 288.9330 + <td class="paramname"> <em>sigma</em> = <code>0</code>, </td> 288.9331 + </tr> 288.9332 + <tr> 288.9333 + <td class="paramkey"></td> 288.9334 + <td></td> 288.9335 + <td class="paramtype">const bool </td> 288.9336 + <td class="paramname"> <em>high_connexity</em> = <code>false</code></td><td> </td> 288.9337 + </tr> 288.9338 + <tr> 288.9339 + <td></td> 288.9340 + <td>)</td> 288.9341 + <td></td><td></td><td><code> [inline]</code></td> 288.9342 + </tr> 288.9343 + </table> 288.9344 +</div> 288.9345 +<div class="memdoc"> 288.9346 + 288.9347 +<p> 288.9348 +Draw a 3D filled region starting from a point (<code>x</code>,<code>y</code>,\ z) in the instance image. 288.9349 +<p> 288.9350 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9351 + <table border="0" cellspacing="2" cellpadding="0"> 288.9352 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>= X-coordinate of the starting point of the region to fill. </td></tr> 288.9353 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>= Y-coordinate of the starting point of the region to fill. </td></tr> 288.9354 + <tr><td valign="top"></td><td valign="top"><em>z</em> </td><td>= Z-coordinate of the starting point of the region to fill. </td></tr> 288.9355 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= an array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9356 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= tolerance concerning neighborhood values. </td></tr> 288.9357 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9358 + </table> 288.9359 +</dl> 288.9360 + 288.9361 +</div> 288.9362 +</div><p> 288.9363 +<a class="anchor" name="5c78c87e946126179b3fd659fd15a90f"></a><!-- doxytag: member="cimg_library::CImg::draw_fill" ref="5c78c87e946126179b3fd659fd15a90f" args="(const int x, const int y, const tc *const color, const float opacity=1, const float sigma=0, const bool high_connexity=false)" --> 288.9364 +<div class="memitem"> 288.9365 +<div class="memproto"> 288.9366 + <table class="memname"> 288.9367 + <tr> 288.9368 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_fill </td> 288.9369 + <td>(</td> 288.9370 + <td class="paramtype">const int </td> 288.9371 + <td class="paramname"> <em>x</em>, </td> 288.9372 + </tr> 288.9373 + <tr> 288.9374 + <td class="paramkey"></td> 288.9375 + <td></td> 288.9376 + <td class="paramtype">const int </td> 288.9377 + <td class="paramname"> <em>y</em>, </td> 288.9378 + </tr> 288.9379 + <tr> 288.9380 + <td class="paramkey"></td> 288.9381 + <td></td> 288.9382 + <td class="paramtype">const tc *const </td> 288.9383 + <td class="paramname"> <em>color</em>, </td> 288.9384 + </tr> 288.9385 + <tr> 288.9386 + <td class="paramkey"></td> 288.9387 + <td></td> 288.9388 + <td class="paramtype">const float </td> 288.9389 + <td class="paramname"> <em>opacity</em> = <code>1</code>, </td> 288.9390 + </tr> 288.9391 + <tr> 288.9392 + <td class="paramkey"></td> 288.9393 + <td></td> 288.9394 + <td class="paramtype">const float </td> 288.9395 + <td class="paramname"> <em>sigma</em> = <code>0</code>, </td> 288.9396 + </tr> 288.9397 + <tr> 288.9398 + <td class="paramkey"></td> 288.9399 + <td></td> 288.9400 + <td class="paramtype">const bool </td> 288.9401 + <td class="paramname"> <em>high_connexity</em> = <code>false</code></td><td> </td> 288.9402 + </tr> 288.9403 + <tr> 288.9404 + <td></td> 288.9405 + <td>)</td> 288.9406 + <td></td><td></td><td><code> [inline]</code></td> 288.9407 + </tr> 288.9408 + </table> 288.9409 +</div> 288.9410 +<div class="memdoc"> 288.9411 + 288.9412 +<p> 288.9413 +Draw a 2D filled region starting from a point (<code>x</code>,<code>y</code>) in the instance image. 288.9414 +<p> 288.9415 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9416 + <table border="0" cellspacing="2" cellpadding="0"> 288.9417 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>= X-coordinate of the starting point of the region to fill. </td></tr> 288.9418 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>= Y-coordinate of the starting point of the region to fill. </td></tr> 288.9419 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= an array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9420 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= tolerance concerning neighborhood values. </td></tr> 288.9421 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9422 + </table> 288.9423 +</dl> 288.9424 + 288.9425 +</div> 288.9426 +</div><p> 288.9427 +<a class="anchor" name="aaf8df45b2e20d132a28cbdffef77c18"></a><!-- doxytag: member="cimg_library::CImg::draw_plasma" ref="aaf8df45b2e20d132a28cbdffef77c18" args="(const int x0, const int y0, const int x1, const int y1, const float alpha=1, const float beta=1, const float opacity=1)" --> 288.9428 +<div class="memitem"> 288.9429 +<div class="memproto"> 288.9430 + <table class="memname"> 288.9431 + <tr> 288.9432 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_plasma </td> 288.9433 + <td>(</td> 288.9434 + <td class="paramtype">const int </td> 288.9435 + <td class="paramname"> <em>x0</em>, </td> 288.9436 + </tr> 288.9437 + <tr> 288.9438 + <td class="paramkey"></td> 288.9439 + <td></td> 288.9440 + <td class="paramtype">const int </td> 288.9441 + <td class="paramname"> <em>y0</em>, </td> 288.9442 + </tr> 288.9443 + <tr> 288.9444 + <td class="paramkey"></td> 288.9445 + <td></td> 288.9446 + <td class="paramtype">const int </td> 288.9447 + <td class="paramname"> <em>x1</em>, </td> 288.9448 + </tr> 288.9449 + <tr> 288.9450 + <td class="paramkey"></td> 288.9451 + <td></td> 288.9452 + <td class="paramtype">const int </td> 288.9453 + <td class="paramname"> <em>y1</em>, </td> 288.9454 + </tr> 288.9455 + <tr> 288.9456 + <td class="paramkey"></td> 288.9457 + <td></td> 288.9458 + <td class="paramtype">const float </td> 288.9459 + <td class="paramname"> <em>alpha</em> = <code>1</code>, </td> 288.9460 + </tr> 288.9461 + <tr> 288.9462 + <td class="paramkey"></td> 288.9463 + <td></td> 288.9464 + <td class="paramtype">const float </td> 288.9465 + <td class="paramname"> <em>beta</em> = <code>1</code>, </td> 288.9466 + </tr> 288.9467 + <tr> 288.9468 + <td class="paramkey"></td> 288.9469 + <td></td> 288.9470 + <td class="paramtype">const float </td> 288.9471 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9472 + </tr> 288.9473 + <tr> 288.9474 + <td></td> 288.9475 + <td>)</td> 288.9476 + <td></td><td></td><td><code> [inline]</code></td> 288.9477 + </tr> 288.9478 + </table> 288.9479 +</div> 288.9480 +<div class="memdoc"> 288.9481 + 288.9482 +<p> 288.9483 +Draw a plasma random texture. 288.9484 +<p> 288.9485 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9486 + <table border="0" cellspacing="2" cellpadding="0"> 288.9487 + <tr><td valign="top"></td><td valign="top"><em>x0</em> </td><td>= X-coordinate of the upper-left corner of the plasma. </td></tr> 288.9488 + <tr><td valign="top"></td><td valign="top"><em>y0</em> </td><td>= Y-coordinate of the upper-left corner of the plasma. </td></tr> 288.9489 + <tr><td valign="top"></td><td valign="top"><em>x1</em> </td><td>= X-coordinate of the lower-right corner of the plasma. </td></tr> 288.9490 + <tr><td valign="top"></td><td valign="top"><em>y1</em> </td><td>= Y-coordinate of the lower-right corner of the plasma. </td></tr> 288.9491 + <tr><td valign="top"></td><td valign="top"><em>alpha</em> </td><td>= Alpha-parameter of the plasma. </td></tr> 288.9492 + <tr><td valign="top"></td><td valign="top"><em>beta</em> </td><td>= Beta-parameter of the plasma. </td></tr> 288.9493 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9494 + </table> 288.9495 +</dl> 288.9496 + 288.9497 +</div> 288.9498 +</div><p> 288.9499 +<a class="anchor" name="d8b2f5c685dbc7389dfb94217f4db8d2"></a><!-- doxytag: member="cimg_library::CImg::draw_plasma" ref="d8b2f5c685dbc7389dfb94217f4db8d2" args="(const float alpha=1, const float beta=1, const float opacity=1)" --> 288.9500 +<div class="memitem"> 288.9501 +<div class="memproto"> 288.9502 + <table class="memname"> 288.9503 + <tr> 288.9504 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_plasma </td> 288.9505 + <td>(</td> 288.9506 + <td class="paramtype">const float </td> 288.9507 + <td class="paramname"> <em>alpha</em> = <code>1</code>, </td> 288.9508 + </tr> 288.9509 + <tr> 288.9510 + <td class="paramkey"></td> 288.9511 + <td></td> 288.9512 + <td class="paramtype">const float </td> 288.9513 + <td class="paramname"> <em>beta</em> = <code>1</code>, </td> 288.9514 + </tr> 288.9515 + <tr> 288.9516 + <td class="paramkey"></td> 288.9517 + <td></td> 288.9518 + <td class="paramtype">const float </td> 288.9519 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9520 + </tr> 288.9521 + <tr> 288.9522 + <td></td> 288.9523 + <td>)</td> 288.9524 + <td></td><td></td><td><code> [inline]</code></td> 288.9525 + </tr> 288.9526 + </table> 288.9527 +</div> 288.9528 +<div class="memdoc"> 288.9529 + 288.9530 +<p> 288.9531 +Draw a plasma random texture. 288.9532 +<p> 288.9533 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9534 + <table border="0" cellspacing="2" cellpadding="0"> 288.9535 + <tr><td valign="top"></td><td valign="top"><em>alpha</em> </td><td>= Alpha-parameter of the plasma. </td></tr> 288.9536 + <tr><td valign="top"></td><td valign="top"><em>beta</em> </td><td>= Beta-parameter of the plasma. </td></tr> 288.9537 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9538 + </table> 288.9539 +</dl> 288.9540 + 288.9541 +</div> 288.9542 +</div><p> 288.9543 +<a class="anchor" name="c27a8c4da38899f60456ea7d3535915b"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="c27a8c4da38899f60456ea7d3535915b" args="(const float xc, const float sigma, const tc *const color, const float opacity=1)" --> 288.9544 +<div class="memitem"> 288.9545 +<div class="memproto"> 288.9546 + <table class="memname"> 288.9547 + <tr> 288.9548 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_gaussian </td> 288.9549 + <td>(</td> 288.9550 + <td class="paramtype">const float </td> 288.9551 + <td class="paramname"> <em>xc</em>, </td> 288.9552 + </tr> 288.9553 + <tr> 288.9554 + <td class="paramkey"></td> 288.9555 + <td></td> 288.9556 + <td class="paramtype">const float </td> 288.9557 + <td class="paramname"> <em>sigma</em>, </td> 288.9558 + </tr> 288.9559 + <tr> 288.9560 + <td class="paramkey"></td> 288.9561 + <td></td> 288.9562 + <td class="paramtype">const tc *const </td> 288.9563 + <td class="paramname"> <em>color</em>, </td> 288.9564 + </tr> 288.9565 + <tr> 288.9566 + <td class="paramkey"></td> 288.9567 + <td></td> 288.9568 + <td class="paramtype">const float </td> 288.9569 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9570 + </tr> 288.9571 + <tr> 288.9572 + <td></td> 288.9573 + <td>)</td> 288.9574 + <td></td><td></td><td><code> [inline]</code></td> 288.9575 + </tr> 288.9576 + </table> 288.9577 +</div> 288.9578 +<div class="memdoc"> 288.9579 + 288.9580 +<p> 288.9581 +Draw a 1D gaussian function in the instance image. 288.9582 +<p> 288.9583 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9584 + <table border="0" cellspacing="2" cellpadding="0"> 288.9585 + <tr><td valign="top"></td><td valign="top"><em>xc</em> </td><td>= X-coordinate of the gaussian center. </td></tr> 288.9586 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= Standard variation of the gaussian distribution. </td></tr> 288.9587 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9588 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9589 + </table> 288.9590 +</dl> 288.9591 + 288.9592 +</div> 288.9593 +</div><p> 288.9594 +<a class="anchor" name="a56c60d556b1a888a4e3c6caee5a7f84"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="a56c60d556b1a888a4e3c6caee5a7f84" args="(const float xc, const float yc, const CImg< t > &tensor, const tc *const color, const float opacity=1)" --> 288.9595 +<div class="memitem"> 288.9596 +<div class="memproto"> 288.9597 + <table class="memname"> 288.9598 + <tr> 288.9599 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_gaussian </td> 288.9600 + <td>(</td> 288.9601 + <td class="paramtype">const float </td> 288.9602 + <td class="paramname"> <em>xc</em>, </td> 288.9603 + </tr> 288.9604 + <tr> 288.9605 + <td class="paramkey"></td> 288.9606 + <td></td> 288.9607 + <td class="paramtype">const float </td> 288.9608 + <td class="paramname"> <em>yc</em>, </td> 288.9609 + </tr> 288.9610 + <tr> 288.9611 + <td class="paramkey"></td> 288.9612 + <td></td> 288.9613 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9614 + <td class="paramname"> <em>tensor</em>, </td> 288.9615 + </tr> 288.9616 + <tr> 288.9617 + <td class="paramkey"></td> 288.9618 + <td></td> 288.9619 + <td class="paramtype">const tc *const </td> 288.9620 + <td class="paramname"> <em>color</em>, </td> 288.9621 + </tr> 288.9622 + <tr> 288.9623 + <td class="paramkey"></td> 288.9624 + <td></td> 288.9625 + <td class="paramtype">const float </td> 288.9626 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9627 + </tr> 288.9628 + <tr> 288.9629 + <td></td> 288.9630 + <td>)</td> 288.9631 + <td></td><td></td><td><code> [inline]</code></td> 288.9632 + </tr> 288.9633 + </table> 288.9634 +</div> 288.9635 +<div class="memdoc"> 288.9636 + 288.9637 +<p> 288.9638 +Draw an anisotropic 2D gaussian function. 288.9639 +<p> 288.9640 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9641 + <table border="0" cellspacing="2" cellpadding="0"> 288.9642 + <tr><td valign="top"></td><td valign="top"><em>xc</em> </td><td>= X-coordinate of the gaussian center. </td></tr> 288.9643 + <tr><td valign="top"></td><td valign="top"><em>yc</em> </td><td>= Y-coordinate of the gaussian center. </td></tr> 288.9644 + <tr><td valign="top"></td><td valign="top"><em>tensor</em> </td><td>= 2x2 covariance matrix. </td></tr> 288.9645 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9646 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9647 + </table> 288.9648 +</dl> 288.9649 + 288.9650 +</div> 288.9651 +</div><p> 288.9652 +<a class="anchor" name="5176ca43ce93eeaa158f8e3456606752"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="5176ca43ce93eeaa158f8e3456606752" args="(const float xc, const float yc, const float sigma, const tc *const color, const float opacity=1)" --> 288.9653 +<div class="memitem"> 288.9654 +<div class="memproto"> 288.9655 + <table class="memname"> 288.9656 + <tr> 288.9657 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_gaussian </td> 288.9658 + <td>(</td> 288.9659 + <td class="paramtype">const float </td> 288.9660 + <td class="paramname"> <em>xc</em>, </td> 288.9661 + </tr> 288.9662 + <tr> 288.9663 + <td class="paramkey"></td> 288.9664 + <td></td> 288.9665 + <td class="paramtype">const float </td> 288.9666 + <td class="paramname"> <em>yc</em>, </td> 288.9667 + </tr> 288.9668 + <tr> 288.9669 + <td class="paramkey"></td> 288.9670 + <td></td> 288.9671 + <td class="paramtype">const float </td> 288.9672 + <td class="paramname"> <em>sigma</em>, </td> 288.9673 + </tr> 288.9674 + <tr> 288.9675 + <td class="paramkey"></td> 288.9676 + <td></td> 288.9677 + <td class="paramtype">const tc *const </td> 288.9678 + <td class="paramname"> <em>color</em>, </td> 288.9679 + </tr> 288.9680 + <tr> 288.9681 + <td class="paramkey"></td> 288.9682 + <td></td> 288.9683 + <td class="paramtype">const float </td> 288.9684 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9685 + </tr> 288.9686 + <tr> 288.9687 + <td></td> 288.9688 + <td>)</td> 288.9689 + <td></td><td></td><td><code> [inline]</code></td> 288.9690 + </tr> 288.9691 + </table> 288.9692 +</div> 288.9693 +<div class="memdoc"> 288.9694 + 288.9695 +<p> 288.9696 +Draw an isotropic 2D gaussian function. 288.9697 +<p> 288.9698 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9699 + <table border="0" cellspacing="2" cellpadding="0"> 288.9700 + <tr><td valign="top"></td><td valign="top"><em>xc</em> </td><td>= X-coordinate of the gaussian center. </td></tr> 288.9701 + <tr><td valign="top"></td><td valign="top"><em>yc</em> </td><td>= Y-coordinate of the gaussian center. </td></tr> 288.9702 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= standard variation of the gaussian distribution. </td></tr> 288.9703 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9704 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9705 + </table> 288.9706 +</dl> 288.9707 + 288.9708 +</div> 288.9709 +</div><p> 288.9710 +<a class="anchor" name="1433a5536718d44e9b42462bdca5fc06"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="1433a5536718d44e9b42462bdca5fc06" args="(const float xc, const float yc, const float zc, const CImg< t > &tensor, const tc *const color, const float opacity=1)" --> 288.9711 +<div class="memitem"> 288.9712 +<div class="memproto"> 288.9713 + <table class="memname"> 288.9714 + <tr> 288.9715 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_gaussian </td> 288.9716 + <td>(</td> 288.9717 + <td class="paramtype">const float </td> 288.9718 + <td class="paramname"> <em>xc</em>, </td> 288.9719 + </tr> 288.9720 + <tr> 288.9721 + <td class="paramkey"></td> 288.9722 + <td></td> 288.9723 + <td class="paramtype">const float </td> 288.9724 + <td class="paramname"> <em>yc</em>, </td> 288.9725 + </tr> 288.9726 + <tr> 288.9727 + <td class="paramkey"></td> 288.9728 + <td></td> 288.9729 + <td class="paramtype">const float </td> 288.9730 + <td class="paramname"> <em>zc</em>, </td> 288.9731 + </tr> 288.9732 + <tr> 288.9733 + <td class="paramkey"></td> 288.9734 + <td></td> 288.9735 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9736 + <td class="paramname"> <em>tensor</em>, </td> 288.9737 + </tr> 288.9738 + <tr> 288.9739 + <td class="paramkey"></td> 288.9740 + <td></td> 288.9741 + <td class="paramtype">const tc *const </td> 288.9742 + <td class="paramname"> <em>color</em>, </td> 288.9743 + </tr> 288.9744 + <tr> 288.9745 + <td class="paramkey"></td> 288.9746 + <td></td> 288.9747 + <td class="paramtype">const float </td> 288.9748 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9749 + </tr> 288.9750 + <tr> 288.9751 + <td></td> 288.9752 + <td>)</td> 288.9753 + <td></td><td></td><td><code> [inline]</code></td> 288.9754 + </tr> 288.9755 + </table> 288.9756 +</div> 288.9757 +<div class="memdoc"> 288.9758 + 288.9759 +<p> 288.9760 +Draw an anisotropic 3D gaussian function. 288.9761 +<p> 288.9762 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9763 + <table border="0" cellspacing="2" cellpadding="0"> 288.9764 + <tr><td valign="top"></td><td valign="top"><em>xc</em> </td><td>= X-coordinate of the gaussian center. </td></tr> 288.9765 + <tr><td valign="top"></td><td valign="top"><em>yc</em> </td><td>= Y-coordinate of the gaussian center. </td></tr> 288.9766 + <tr><td valign="top"></td><td valign="top"><em>zc</em> </td><td>= Z-coordinate of the gaussian center. </td></tr> 288.9767 + <tr><td valign="top"></td><td valign="top"><em>tensor</em> </td><td>= 3x3 covariance matrix. </td></tr> 288.9768 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9769 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9770 + </table> 288.9771 +</dl> 288.9772 + 288.9773 +</div> 288.9774 +</div><p> 288.9775 +<a class="anchor" name="7a9367d3e05ac8cda34fae2d639c42a6"></a><!-- doxytag: member="cimg_library::CImg::draw_gaussian" ref="7a9367d3e05ac8cda34fae2d639c42a6" args="(const float xc, const float yc, const float zc, const float sigma, const tc *const color, const float opacity=1)" --> 288.9776 +<div class="memitem"> 288.9777 +<div class="memproto"> 288.9778 + <table class="memname"> 288.9779 + <tr> 288.9780 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_gaussian </td> 288.9781 + <td>(</td> 288.9782 + <td class="paramtype">const float </td> 288.9783 + <td class="paramname"> <em>xc</em>, </td> 288.9784 + </tr> 288.9785 + <tr> 288.9786 + <td class="paramkey"></td> 288.9787 + <td></td> 288.9788 + <td class="paramtype">const float </td> 288.9789 + <td class="paramname"> <em>yc</em>, </td> 288.9790 + </tr> 288.9791 + <tr> 288.9792 + <td class="paramkey"></td> 288.9793 + <td></td> 288.9794 + <td class="paramtype">const float </td> 288.9795 + <td class="paramname"> <em>zc</em>, </td> 288.9796 + </tr> 288.9797 + <tr> 288.9798 + <td class="paramkey"></td> 288.9799 + <td></td> 288.9800 + <td class="paramtype">const float </td> 288.9801 + <td class="paramname"> <em>sigma</em>, </td> 288.9802 + </tr> 288.9803 + <tr> 288.9804 + <td class="paramkey"></td> 288.9805 + <td></td> 288.9806 + <td class="paramtype">const tc *const </td> 288.9807 + <td class="paramname"> <em>color</em>, </td> 288.9808 + </tr> 288.9809 + <tr> 288.9810 + <td class="paramkey"></td> 288.9811 + <td></td> 288.9812 + <td class="paramtype">const float </td> 288.9813 + <td class="paramname"> <em>opacity</em> = <code>1</code></td><td> </td> 288.9814 + </tr> 288.9815 + <tr> 288.9816 + <td></td> 288.9817 + <td>)</td> 288.9818 + <td></td><td></td><td><code> [inline]</code></td> 288.9819 + </tr> 288.9820 + </table> 288.9821 +</div> 288.9822 +<div class="memdoc"> 288.9823 + 288.9824 +<p> 288.9825 +Draw an isotropic 3D gaussian function. 288.9826 +<p> 288.9827 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9828 + <table border="0" cellspacing="2" cellpadding="0"> 288.9829 + <tr><td valign="top"></td><td valign="top"><em>xc</em> </td><td>= X-coordinate of the gaussian center. </td></tr> 288.9830 + <tr><td valign="top"></td><td valign="top"><em>yc</em> </td><td>= Y-coordinate of the gaussian center. </td></tr> 288.9831 + <tr><td valign="top"></td><td valign="top"><em>zc</em> </td><td>= Z-coordinate of the gaussian center. </td></tr> 288.9832 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= standard variation of the gaussian distribution. </td></tr> 288.9833 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>= array of <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">dimv()</a> values of type <code>T</code>, defining the drawing color. </td></tr> 288.9834 + <tr><td valign="top"></td><td valign="top"><em>opacity</em> </td><td>= opacity of the drawing. </td></tr> 288.9835 + </table> 288.9836 +</dl> 288.9837 + 288.9838 +</div> 288.9839 +</div><p> 288.9840 +<a class="anchor" name="be9e9614682023f314b77913230c373a"></a><!-- doxytag: member="cimg_library::CImg::draw_object3d" ref="be9e9614682023f314b77913230c373a" args="(const float x0, const float y0, const float z0, const CImg< tp > &points, const CImgList< tf > &primitives, const CImgList< tc > &colors, const CImgList< to > &opacities, const unsigned int render_type=4, const bool double_sided=false, const float focale=500, const float lightx=0, const float lighty=0, const float lightz=-5000, const float specular_light=0.2f, const float specular_shine=0.1f, float *const zbuffer=0)" --> 288.9841 +<div class="memitem"> 288.9842 +<div class="memproto"> 288.9843 + <table class="memname"> 288.9844 + <tr> 288.9845 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& draw_object3d </td> 288.9846 + <td>(</td> 288.9847 + <td class="paramtype">const float </td> 288.9848 + <td class="paramname"> <em>x0</em>, </td> 288.9849 + </tr> 288.9850 + <tr> 288.9851 + <td class="paramkey"></td> 288.9852 + <td></td> 288.9853 + <td class="paramtype">const float </td> 288.9854 + <td class="paramname"> <em>y0</em>, </td> 288.9855 + </tr> 288.9856 + <tr> 288.9857 + <td class="paramkey"></td> 288.9858 + <td></td> 288.9859 + <td class="paramtype">const float </td> 288.9860 + <td class="paramname"> <em>z0</em>, </td> 288.9861 + </tr> 288.9862 + <tr> 288.9863 + <td class="paramkey"></td> 288.9864 + <td></td> 288.9865 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tp > & </td> 288.9866 + <td class="paramname"> <em>points</em>, </td> 288.9867 + </tr> 288.9868 + <tr> 288.9869 + <td class="paramkey"></td> 288.9870 + <td></td> 288.9871 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > & </td> 288.9872 + <td class="paramname"> <em>primitives</em>, </td> 288.9873 + </tr> 288.9874 + <tr> 288.9875 + <td class="paramkey"></td> 288.9876 + <td></td> 288.9877 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > & </td> 288.9878 + <td class="paramname"> <em>colors</em>, </td> 288.9879 + </tr> 288.9880 + <tr> 288.9881 + <td class="paramkey"></td> 288.9882 + <td></td> 288.9883 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< to > & </td> 288.9884 + <td class="paramname"> <em>opacities</em>, </td> 288.9885 + </tr> 288.9886 + <tr> 288.9887 + <td class="paramkey"></td> 288.9888 + <td></td> 288.9889 + <td class="paramtype">const unsigned int </td> 288.9890 + <td class="paramname"> <em>render_type</em> = <code>4</code>, </td> 288.9891 + </tr> 288.9892 + <tr> 288.9893 + <td class="paramkey"></td> 288.9894 + <td></td> 288.9895 + <td class="paramtype">const bool </td> 288.9896 + <td class="paramname"> <em>double_sided</em> = <code>false</code>, </td> 288.9897 + </tr> 288.9898 + <tr> 288.9899 + <td class="paramkey"></td> 288.9900 + <td></td> 288.9901 + <td class="paramtype">const float </td> 288.9902 + <td class="paramname"> <em>focale</em> = <code>500</code>, </td> 288.9903 + </tr> 288.9904 + <tr> 288.9905 + <td class="paramkey"></td> 288.9906 + <td></td> 288.9907 + <td class="paramtype">const float </td> 288.9908 + <td class="paramname"> <em>lightx</em> = <code>0</code>, </td> 288.9909 + </tr> 288.9910 + <tr> 288.9911 + <td class="paramkey"></td> 288.9912 + <td></td> 288.9913 + <td class="paramtype">const float </td> 288.9914 + <td class="paramname"> <em>lighty</em> = <code>0</code>, </td> 288.9915 + </tr> 288.9916 + <tr> 288.9917 + <td class="paramkey"></td> 288.9918 + <td></td> 288.9919 + <td class="paramtype">const float </td> 288.9920 + <td class="paramname"> <em>lightz</em> = <code>-5000</code>, </td> 288.9921 + </tr> 288.9922 + <tr> 288.9923 + <td class="paramkey"></td> 288.9924 + <td></td> 288.9925 + <td class="paramtype">const float </td> 288.9926 + <td class="paramname"> <em>specular_light</em> = <code>0.2f</code>, </td> 288.9927 + </tr> 288.9928 + <tr> 288.9929 + <td class="paramkey"></td> 288.9930 + <td></td> 288.9931 + <td class="paramtype">const float </td> 288.9932 + <td class="paramname"> <em>specular_shine</em> = <code>0.1f</code>, </td> 288.9933 + </tr> 288.9934 + <tr> 288.9935 + <td class="paramkey"></td> 288.9936 + <td></td> 288.9937 + <td class="paramtype">float *const </td> 288.9938 + <td class="paramname"> <em>zbuffer</em> = <code>0</code></td><td> </td> 288.9939 + </tr> 288.9940 + <tr> 288.9941 + <td></td> 288.9942 + <td>)</td> 288.9943 + <td></td><td></td><td><code> [inline]</code></td> 288.9944 + </tr> 288.9945 + </table> 288.9946 +</div> 288.9947 +<div class="memdoc"> 288.9948 + 288.9949 +<p> 288.9950 +Draw a 3D object. 288.9951 +<p> 288.9952 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.9953 + <table border="0" cellspacing="2" cellpadding="0"> 288.9954 + <tr><td valign="top"></td><td valign="top"><em>X</em> </td><td>= X-coordinate of the 3d object position </td></tr> 288.9955 + <tr><td valign="top"></td><td valign="top"><em>Y</em> </td><td>= Y-coordinate of the 3d object position </td></tr> 288.9956 + <tr><td valign="top"></td><td valign="top"><em>Z</em> </td><td>= Z-coordinate of the 3d object position </td></tr> 288.9957 + <tr><td valign="top"></td><td valign="top"><em>points</em> </td><td>= Image N*3 describing 3D point coordinates </td></tr> 288.9958 + <tr><td valign="top"></td><td valign="top"><em>primitives</em> </td><td>= List of P primitives </td></tr> 288.9959 + <tr><td valign="top"></td><td valign="top"><em>colors</em> </td><td>= List of P color (or textures) </td></tr> 288.9960 + <tr><td valign="top"></td><td valign="top"><em>opacities</em> </td><td>= Image of P opacities </td></tr> 288.9961 + <tr><td valign="top"></td><td valign="top"><em>render_type</em> </td><td>= Render type (0=Points, 1=Lines, 2=Faces (no light), 3=Faces (flat), 4=Faces(Gouraud) </td></tr> 288.9962 + <tr><td valign="top"></td><td valign="top"><em>double_sided</em> </td><td>= Tell if object faces have two sides or are oriented. </td></tr> 288.9963 + <tr><td valign="top"></td><td valign="top"><em>focale</em> </td><td>= length of the focale </td></tr> 288.9964 + <tr><td valign="top"></td><td valign="top"><em>lightx</em> </td><td>= X-coordinate of the light </td></tr> 288.9965 + <tr><td valign="top"></td><td valign="top"><em>lighty</em> </td><td>= Y-coordinate of the light </td></tr> 288.9966 + <tr><td valign="top"></td><td valign="top"><em>lightz</em> </td><td>= Z-coordinate of the light </td></tr> 288.9967 + <tr><td valign="top"></td><td valign="top"><em>specular_shine</em> </td><td>= Shininess of the object </td></tr> 288.9968 + </table> 288.9969 +</dl> 288.9970 + 288.9971 +</div> 288.9972 +</div><p> 288.9973 +<a class="anchor" name="e42e12627e5a8204d328f84df9976fc8"></a><!-- doxytag: member="cimg_library::CImg::correlate" ref="e42e12627e5a8204d328f84df9976fc8" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_correl=false)" --> 288.9974 +<div class="memitem"> 288.9975 +<div class="memproto"> 288.9976 + <table class="memname"> 288.9977 + <tr> 288.9978 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& correlate </td> 288.9979 + <td>(</td> 288.9980 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.9981 + <td class="paramname"> <em>mask</em>, </td> 288.9982 + </tr> 288.9983 + <tr> 288.9984 + <td class="paramkey"></td> 288.9985 + <td></td> 288.9986 + <td class="paramtype">const unsigned int </td> 288.9987 + <td class="paramname"> <em>cond</em> = <code>1</code>, </td> 288.9988 + </tr> 288.9989 + <tr> 288.9990 + <td class="paramkey"></td> 288.9991 + <td></td> 288.9992 + <td class="paramtype">const bool </td> 288.9993 + <td class="paramname"> <em>weighted_correl</em> = <code>false</code></td><td> </td> 288.9994 + </tr> 288.9995 + <tr> 288.9996 + <td></td> 288.9997 + <td>)</td> 288.9998 + <td></td><td></td><td><code> [inline]</code></td> 288.9999 + </tr> 288.10000 + </table> 288.10001 +</div> 288.10002 +<div class="memdoc"> 288.10003 + 288.10004 +<p> 288.10005 +Compute the correlation of the instance image by a mask. 288.10006 +<p> 288.10007 +The correlation of the instance image <code>*this</code> by the mask <code>mask</code> is defined to be :<p> 288.10008 +res(x,y,z) = sum_{i,j,k} (*this)(x+i,y+j,z+k)*mask(i,j,k)<p> 288.10009 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10010 + <table border="0" cellspacing="2" cellpadding="0"> 288.10011 + <tr><td valign="top"></td><td valign="top"><em>mask</em> </td><td>= the correlation kernel. </td></tr> 288.10012 + <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>= the border condition type (0=zero, 1=dirichlet) </td></tr> 288.10013 + <tr><td valign="top"></td><td valign="top"><em>weighted_correl</em> </td><td>= enable local normalization. </td></tr> 288.10014 + </table> 288.10015 +</dl> 288.10016 + 288.10017 +</div> 288.10018 +</div><p> 288.10019 +<a class="anchor" name="6ad1f71fcaf356a1480b81c55109ca86"></a><!-- doxytag: member="cimg_library::CImg::convolve" ref="6ad1f71fcaf356a1480b81c55109ca86" args="(const CImg< t > &mask, const unsigned int cond=1, const bool weighted_convol=false)" --> 288.10020 +<div class="memitem"> 288.10021 +<div class="memproto"> 288.10022 + <table class="memname"> 288.10023 + <tr> 288.10024 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& convolve </td> 288.10025 + <td>(</td> 288.10026 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.10027 + <td class="paramname"> <em>mask</em>, </td> 288.10028 + </tr> 288.10029 + <tr> 288.10030 + <td class="paramkey"></td> 288.10031 + <td></td> 288.10032 + <td class="paramtype">const unsigned int </td> 288.10033 + <td class="paramname"> <em>cond</em> = <code>1</code>, </td> 288.10034 + </tr> 288.10035 + <tr> 288.10036 + <td class="paramkey"></td> 288.10037 + <td></td> 288.10038 + <td class="paramtype">const bool </td> 288.10039 + <td class="paramname"> <em>weighted_convol</em> = <code>false</code></td><td> </td> 288.10040 + </tr> 288.10041 + <tr> 288.10042 + <td></td> 288.10043 + <td>)</td> 288.10044 + <td></td><td></td><td><code> [inline]</code></td> 288.10045 + </tr> 288.10046 + </table> 288.10047 +</div> 288.10048 +<div class="memdoc"> 288.10049 + 288.10050 +<p> 288.10051 +Compute the convolution of the image by a mask. 288.10052 +<p> 288.10053 +The result <code>res</code> of the convolution of an image <code>img</code> by a mask <code>mask</code> is defined to be :<p> 288.10054 +res(x,y,z) = sum_{i,j,k} img(x-i,y-j,z-k)*mask(i,j,k)<p> 288.10055 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10056 + <table border="0" cellspacing="2" cellpadding="0"> 288.10057 + <tr><td valign="top"></td><td valign="top"><em>mask</em> </td><td>= the correlation kernel. </td></tr> 288.10058 + <tr><td valign="top"></td><td valign="top"><em>cond</em> </td><td>= the border condition type (0=zero, 1=dirichlet) </td></tr> 288.10059 + <tr><td valign="top"></td><td valign="top"><em>weighted_convol</em> </td><td>= enable local normalization. </td></tr> 288.10060 + </table> 288.10061 +</dl> 288.10062 + 288.10063 +</div> 288.10064 +</div><p> 288.10065 +<a class="anchor" name="caf16c667ccfe861ba7c565537f67a1a"></a><!-- doxytag: member="cimg_library::CImg::noise" ref="caf16c667ccfe861ba7c565537f67a1a" args="(const double sigma, const unsigned int noise_type=0)" --> 288.10066 +<div class="memitem"> 288.10067 +<div class="memproto"> 288.10068 + <table class="memname"> 288.10069 + <tr> 288.10070 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& noise </td> 288.10071 + <td>(</td> 288.10072 + <td class="paramtype">const double </td> 288.10073 + <td class="paramname"> <em>sigma</em>, </td> 288.10074 + </tr> 288.10075 + <tr> 288.10076 + <td class="paramkey"></td> 288.10077 + <td></td> 288.10078 + <td class="paramtype">const unsigned int </td> 288.10079 + <td class="paramname"> <em>noise_type</em> = <code>0</code></td><td> </td> 288.10080 + </tr> 288.10081 + <tr> 288.10082 + <td></td> 288.10083 + <td>)</td> 288.10084 + <td></td><td></td><td><code> [inline]</code></td> 288.10085 + </tr> 288.10086 + </table> 288.10087 +</div> 288.10088 +<div class="memdoc"> 288.10089 + 288.10090 +<p> 288.10091 +Add noise to the image. 288.10092 +<p> 288.10093 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10094 + <table border="0" cellspacing="2" cellpadding="0"> 288.10095 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>= power of the noise. if sigma<0, it corresponds to the percentage of the maximum image value. </td></tr> 288.10096 + <tr><td valign="top"></td><td valign="top"><em>ntype</em> </td><td>= noise type. can be 0=gaussian, 1=uniform or 2=Salt and Pepper, 3=Poisson, 4=Rician. </td></tr> 288.10097 + </table> 288.10098 +</dl> 288.10099 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>A noisy version of the instance image. </dd></dl> 288.10100 + 288.10101 +</div> 288.10102 +</div><p> 288.10103 +<a class="anchor" name="be44da28a01b5632c9cb59af2ab6dab6"></a><!-- doxytag: member="cimg_library::CImg::deriche" ref="be44da28a01b5632c9cb59af2ab6dab6" args="(const float sigma, const int order=0, const char axis='x', const bool cond=true)" --> 288.10104 +<div class="memitem"> 288.10105 +<div class="memproto"> 288.10106 + <table class="memname"> 288.10107 + <tr> 288.10108 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& deriche </td> 288.10109 + <td>(</td> 288.10110 + <td class="paramtype">const float </td> 288.10111 + <td class="paramname"> <em>sigma</em>, </td> 288.10112 + </tr> 288.10113 + <tr> 288.10114 + <td class="paramkey"></td> 288.10115 + <td></td> 288.10116 + <td class="paramtype">const int </td> 288.10117 + <td class="paramname"> <em>order</em> = <code>0</code>, </td> 288.10118 + </tr> 288.10119 + <tr> 288.10120 + <td class="paramkey"></td> 288.10121 + <td></td> 288.10122 + <td class="paramtype">const char </td> 288.10123 + <td class="paramname"> <em>axis</em> = <code>'x'</code>, </td> 288.10124 + </tr> 288.10125 + <tr> 288.10126 + <td class="paramkey"></td> 288.10127 + <td></td> 288.10128 + <td class="paramtype">const bool </td> 288.10129 + <td class="paramname"> <em>cond</em> = <code>true</code></td><td> </td> 288.10130 + </tr> 288.10131 + <tr> 288.10132 + <td></td> 288.10133 + <td>)</td> 288.10134 + <td></td><td></td><td><code> [inline]</code></td> 288.10135 + </tr> 288.10136 + </table> 288.10137 +</div> 288.10138 +<div class="memdoc"> 288.10139 + 288.10140 +<p> 288.10141 +Compute the result of the Deriche filter. 288.10142 +<p> 288.10143 +The Canny-Deriche filter is a recursive algorithm allowing to compute blurred derivatives of order 0,1 or 2 of an image. 288.10144 +</div> 288.10145 +</div><p> 288.10146 +<a class="anchor" name="fcc7e2db6bcdb9da96698da4ef546678"></a><!-- doxytag: member="cimg_library::CImg::blur" ref="fcc7e2db6bcdb9da96698da4ef546678" args="(const float sigmax, const float sigmay, const float sigmaz, const bool cond=true)" --> 288.10147 +<div class="memitem"> 288.10148 +<div class="memproto"> 288.10149 + <table class="memname"> 288.10150 + <tr> 288.10151 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& blur </td> 288.10152 + <td>(</td> 288.10153 + <td class="paramtype">const float </td> 288.10154 + <td class="paramname"> <em>sigmax</em>, </td> 288.10155 + </tr> 288.10156 + <tr> 288.10157 + <td class="paramkey"></td> 288.10158 + <td></td> 288.10159 + <td class="paramtype">const float </td> 288.10160 + <td class="paramname"> <em>sigmay</em>, </td> 288.10161 + </tr> 288.10162 + <tr> 288.10163 + <td class="paramkey"></td> 288.10164 + <td></td> 288.10165 + <td class="paramtype">const float </td> 288.10166 + <td class="paramname"> <em>sigmaz</em>, </td> 288.10167 + </tr> 288.10168 + <tr> 288.10169 + <td class="paramkey"></td> 288.10170 + <td></td> 288.10171 + <td class="paramtype">const bool </td> 288.10172 + <td class="paramname"> <em>cond</em> = <code>true</code></td><td> </td> 288.10173 + </tr> 288.10174 + <tr> 288.10175 + <td></td> 288.10176 + <td>)</td> 288.10177 + <td></td><td></td><td><code> [inline]</code></td> 288.10178 + </tr> 288.10179 + </table> 288.10180 +</div> 288.10181 +<div class="memdoc"> 288.10182 + 288.10183 +<p> 288.10184 +Return a blurred version of the image, using a Canny-Deriche filter. 288.10185 +<p> 288.10186 +Blur the image with an anisotropic exponential filter (Deriche filter of order 0). 288.10187 +</div> 288.10188 +</div><p> 288.10189 +<a class="anchor" name="8df01b5bf7b7fee8719ac0b261d3f5d8"></a><!-- doxytag: member="cimg_library::CImg::blur_anisotropic" ref="8df01b5bf7b7fee8719ac0b261d3f5d8" args="(const CImg< t > &G, const float amplitude=60, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true)" --> 288.10190 +<div class="memitem"> 288.10191 +<div class="memproto"> 288.10192 + <table class="memname"> 288.10193 + <tr> 288.10194 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& blur_anisotropic </td> 288.10195 + <td>(</td> 288.10196 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > & </td> 288.10197 + <td class="paramname"> <em>G</em>, </td> 288.10198 + </tr> 288.10199 + <tr> 288.10200 + <td class="paramkey"></td> 288.10201 + <td></td> 288.10202 + <td class="paramtype">const float </td> 288.10203 + <td class="paramname"> <em>amplitude</em> = <code>60</code>, </td> 288.10204 + </tr> 288.10205 + <tr> 288.10206 + <td class="paramkey"></td> 288.10207 + <td></td> 288.10208 + <td class="paramtype">const float </td> 288.10209 + <td class="paramname"> <em>dl</em> = <code>0.8f</code>, </td> 288.10210 + </tr> 288.10211 + <tr> 288.10212 + <td class="paramkey"></td> 288.10213 + <td></td> 288.10214 + <td class="paramtype">const float </td> 288.10215 + <td class="paramname"> <em>da</em> = <code>30</code>, </td> 288.10216 + </tr> 288.10217 + <tr> 288.10218 + <td class="paramkey"></td> 288.10219 + <td></td> 288.10220 + <td class="paramtype">const float </td> 288.10221 + <td class="paramname"> <em>gauss_prec</em> = <code>2</code>, </td> 288.10222 + </tr> 288.10223 + <tr> 288.10224 + <td class="paramkey"></td> 288.10225 + <td></td> 288.10226 + <td class="paramtype">const unsigned int </td> 288.10227 + <td class="paramname"> <em>interpolation_type</em> = <code>0</code>, </td> 288.10228 + </tr> 288.10229 + <tr> 288.10230 + <td class="paramkey"></td> 288.10231 + <td></td> 288.10232 + <td class="paramtype">const bool </td> 288.10233 + <td class="paramname"> <em>fast_approx</em> = <code>true</code></td><td> </td> 288.10234 + </tr> 288.10235 + <tr> 288.10236 + <td></td> 288.10237 + <td>)</td> 288.10238 + <td></td><td></td><td><code> [inline]</code></td> 288.10239 + </tr> 288.10240 + </table> 288.10241 +</div> 288.10242 +<div class="memdoc"> 288.10243 + 288.10244 +<p> 288.10245 +Blur the image anisotropically following a field of diffusion tensors. 288.10246 +<p> 288.10247 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10248 + <table border="0" cellspacing="2" cellpadding="0"> 288.10249 + <tr><td valign="top"></td><td valign="top"><em>G</em> </td><td>= Field of square roots of diffusion tensors used to drive the smoothing. </td></tr> 288.10250 + <tr><td valign="top"></td><td valign="top"><em>amplitude</em> </td><td>= amplitude of the smoothing. </td></tr> 288.10251 + <tr><td valign="top"></td><td valign="top"><em>dl</em> </td><td>= spatial discretization. </td></tr> 288.10252 + <tr><td valign="top"></td><td valign="top"><em>da</em> </td><td>= angular discretization. </td></tr> 288.10253 + <tr><td valign="top"></td><td valign="top"><em>gauss_prec</em> </td><td>= precision of the gaussian function. </td></tr> 288.10254 + <tr><td valign="top"></td><td valign="top"><em>interpolation</em> </td><td>Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta) </td></tr> 288.10255 + <tr><td valign="top"></td><td valign="top"><em>fast_approx</em> </td><td>= Tell to use the fast approximation or not. </td></tr> 288.10256 + </table> 288.10257 +</dl> 288.10258 + 288.10259 +</div> 288.10260 +</div><p> 288.10261 +<a class="anchor" name="2d20cc794442bfdcd9ff8e1a78e76224"></a><!-- doxytag: member="cimg_library::CImg::blur_anisotropic" ref="2d20cc794442bfdcd9ff8e1a78e76224" args="(const CImg< tm > &mask, const float amplitude, const float sharpness=0.7f, const float anisotropy=0.3f, const float alpha=0.6f, const float sigma=1.1f, const float dl=0.8f, const float da=30, const float gauss_prec=2, const unsigned int interpolation_type=0, const bool fast_approx=true, const float geom_factor=1)" --> 288.10262 +<div class="memitem"> 288.10263 +<div class="memproto"> 288.10264 + <table class="memname"> 288.10265 + <tr> 288.10266 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& blur_anisotropic </td> 288.10267 + <td>(</td> 288.10268 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< tm > & </td> 288.10269 + <td class="paramname"> <em>mask</em>, </td> 288.10270 + </tr> 288.10271 + <tr> 288.10272 + <td class="paramkey"></td> 288.10273 + <td></td> 288.10274 + <td class="paramtype">const float </td> 288.10275 + <td class="paramname"> <em>amplitude</em>, </td> 288.10276 + </tr> 288.10277 + <tr> 288.10278 + <td class="paramkey"></td> 288.10279 + <td></td> 288.10280 + <td class="paramtype">const float </td> 288.10281 + <td class="paramname"> <em>sharpness</em> = <code>0.7f</code>, </td> 288.10282 + </tr> 288.10283 + <tr> 288.10284 + <td class="paramkey"></td> 288.10285 + <td></td> 288.10286 + <td class="paramtype">const float </td> 288.10287 + <td class="paramname"> <em>anisotropy</em> = <code>0.3f</code>, </td> 288.10288 + </tr> 288.10289 + <tr> 288.10290 + <td class="paramkey"></td> 288.10291 + <td></td> 288.10292 + <td class="paramtype">const float </td> 288.10293 + <td class="paramname"> <em>alpha</em> = <code>0.6f</code>, </td> 288.10294 + </tr> 288.10295 + <tr> 288.10296 + <td class="paramkey"></td> 288.10297 + <td></td> 288.10298 + <td class="paramtype">const float </td> 288.10299 + <td class="paramname"> <em>sigma</em> = <code>1.1f</code>, </td> 288.10300 + </tr> 288.10301 + <tr> 288.10302 + <td class="paramkey"></td> 288.10303 + <td></td> 288.10304 + <td class="paramtype">const float </td> 288.10305 + <td class="paramname"> <em>dl</em> = <code>0.8f</code>, </td> 288.10306 + </tr> 288.10307 + <tr> 288.10308 + <td class="paramkey"></td> 288.10309 + <td></td> 288.10310 + <td class="paramtype">const float </td> 288.10311 + <td class="paramname"> <em>da</em> = <code>30</code>, </td> 288.10312 + </tr> 288.10313 + <tr> 288.10314 + <td class="paramkey"></td> 288.10315 + <td></td> 288.10316 + <td class="paramtype">const float </td> 288.10317 + <td class="paramname"> <em>gauss_prec</em> = <code>2</code>, </td> 288.10318 + </tr> 288.10319 + <tr> 288.10320 + <td class="paramkey"></td> 288.10321 + <td></td> 288.10322 + <td class="paramtype">const unsigned int </td> 288.10323 + <td class="paramname"> <em>interpolation_type</em> = <code>0</code>, </td> 288.10324 + </tr> 288.10325 + <tr> 288.10326 + <td class="paramkey"></td> 288.10327 + <td></td> 288.10328 + <td class="paramtype">const bool </td> 288.10329 + <td class="paramname"> <em>fast_approx</em> = <code>true</code>, </td> 288.10330 + </tr> 288.10331 + <tr> 288.10332 + <td class="paramkey"></td> 288.10333 + <td></td> 288.10334 + <td class="paramtype">const float </td> 288.10335 + <td class="paramname"> <em>geom_factor</em> = <code>1</code></td><td> </td> 288.10336 + </tr> 288.10337 + <tr> 288.10338 + <td></td> 288.10339 + <td>)</td> 288.10340 + <td></td><td></td><td><code> [inline]</code></td> 288.10341 + </tr> 288.10342 + </table> 288.10343 +</div> 288.10344 +<div class="memdoc"> 288.10345 + 288.10346 +<p> 288.10347 +Blur an image in an anisotropic way. 288.10348 +<p> 288.10349 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10350 + <table border="0" cellspacing="2" cellpadding="0"> 288.10351 + <tr><td valign="top"></td><td valign="top"><em>mask</em> </td><td>Binary mask. </td></tr> 288.10352 + <tr><td valign="top"></td><td valign="top"><em>amplitude</em> </td><td>Amplitude of the anisotropic blur. </td></tr> 288.10353 + <tr><td valign="top"></td><td valign="top"><em>sharpness</em> </td><td>Contour preservation. </td></tr> 288.10354 + <tr><td valign="top"></td><td valign="top"><em>anisotropy</em> </td><td>Smoothing anisotropy. </td></tr> 288.10355 + <tr><td valign="top"></td><td valign="top"><em>alpha</em> </td><td>Image pre-blurring (gaussian). </td></tr> 288.10356 + <tr><td valign="top"></td><td valign="top"><em>sigma</em> </td><td>Regularity of the tensor-valued geometry. </td></tr> 288.10357 + <tr><td valign="top"></td><td valign="top"><em>dl</em> </td><td>Spatial discretization. </td></tr> 288.10358 + <tr><td valign="top"></td><td valign="top"><em>da</em> </td><td>Angular discretization. </td></tr> 288.10359 + <tr><td valign="top"></td><td valign="top"><em>gauss_prec</em> </td><td>Precision of the gaussian function. </td></tr> 288.10360 + <tr><td valign="top"></td><td valign="top"><em>interpolation_type</em> </td><td>Used interpolation scheme (0 = nearest-neighbor, 1 = linear, 2 = Runge-Kutta) </td></tr> 288.10361 + <tr><td valign="top"></td><td valign="top"><em>fast_approx</em> </td><td>Tell to use the fast approximation or not </td></tr> 288.10362 + <tr><td valign="top"></td><td valign="top"><em>geom_factor</em> </td><td>Geometry factor. </td></tr> 288.10363 + </table> 288.10364 +</dl> 288.10365 + 288.10366 +</div> 288.10367 +</div><p> 288.10368 +<a class="anchor" name="5171719110ee9897b557b21f773655b7"></a><!-- doxytag: member="cimg_library::CImg::blur_bilateral" ref="5171719110ee9897b557b21f773655b7" args="(const float sigmax, const float sigmay, const float sigmaz, const float sigmar, const int bgridx, const int bgridy, const int bgridz, const int bgridr, const bool interpolation_type=true)" --> 288.10369 +<div class="memitem"> 288.10370 +<div class="memproto"> 288.10371 + <table class="memname"> 288.10372 + <tr> 288.10373 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& blur_bilateral </td> 288.10374 + <td>(</td> 288.10375 + <td class="paramtype">const float </td> 288.10376 + <td class="paramname"> <em>sigmax</em>, </td> 288.10377 + </tr> 288.10378 + <tr> 288.10379 + <td class="paramkey"></td> 288.10380 + <td></td> 288.10381 + <td class="paramtype">const float </td> 288.10382 + <td class="paramname"> <em>sigmay</em>, </td> 288.10383 + </tr> 288.10384 + <tr> 288.10385 + <td class="paramkey"></td> 288.10386 + <td></td> 288.10387 + <td class="paramtype">const float </td> 288.10388 + <td class="paramname"> <em>sigmaz</em>, </td> 288.10389 + </tr> 288.10390 + <tr> 288.10391 + <td class="paramkey"></td> 288.10392 + <td></td> 288.10393 + <td class="paramtype">const float </td> 288.10394 + <td class="paramname"> <em>sigmar</em>, </td> 288.10395 + </tr> 288.10396 + <tr> 288.10397 + <td class="paramkey"></td> 288.10398 + <td></td> 288.10399 + <td class="paramtype">const int </td> 288.10400 + <td class="paramname"> <em>bgridx</em>, </td> 288.10401 + </tr> 288.10402 + <tr> 288.10403 + <td class="paramkey"></td> 288.10404 + <td></td> 288.10405 + <td class="paramtype">const int </td> 288.10406 + <td class="paramname"> <em>bgridy</em>, </td> 288.10407 + </tr> 288.10408 + <tr> 288.10409 + <td class="paramkey"></td> 288.10410 + <td></td> 288.10411 + <td class="paramtype">const int </td> 288.10412 + <td class="paramname"> <em>bgridz</em>, </td> 288.10413 + </tr> 288.10414 + <tr> 288.10415 + <td class="paramkey"></td> 288.10416 + <td></td> 288.10417 + <td class="paramtype">const int </td> 288.10418 + <td class="paramname"> <em>bgridr</em>, </td> 288.10419 + </tr> 288.10420 + <tr> 288.10421 + <td class="paramkey"></td> 288.10422 + <td></td> 288.10423 + <td class="paramtype">const bool </td> 288.10424 + <td class="paramname"> <em>interpolation_type</em> = <code>true</code></td><td> </td> 288.10425 + </tr> 288.10426 + <tr> 288.10427 + <td></td> 288.10428 + <td>)</td> 288.10429 + <td></td><td></td><td><code> [inline]</code></td> 288.10430 + </tr> 288.10431 + </table> 288.10432 +</div> 288.10433 +<div class="memdoc"> 288.10434 + 288.10435 +<p> 288.10436 +Blur an image using the bilateral filter. 288.10437 +<p> 288.10438 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10439 + <table border="0" cellspacing="2" cellpadding="0"> 288.10440 + <tr><td valign="top"></td><td valign="top"><em>sigmax</em> </td><td>Amount of blur along the X-axis. </td></tr> 288.10441 + <tr><td valign="top"></td><td valign="top"><em>sigmay</em> </td><td>Amount of blur along the Y-axis. </td></tr> 288.10442 + <tr><td valign="top"></td><td valign="top"><em>sigmaz</em> </td><td>Amount of blur along the Z-axis. </td></tr> 288.10443 + <tr><td valign="top"></td><td valign="top"><em>sigmar</em> </td><td>Amount of blur along the range axis. </td></tr> 288.10444 + <tr><td valign="top"></td><td valign="top"><em>bgridx</em> </td><td>Size of the bilateral grid along the X-axis. </td></tr> 288.10445 + <tr><td valign="top"></td><td valign="top"><em>bgridy</em> </td><td>Size of the bilateral grid along the Y-axis. </td></tr> 288.10446 + <tr><td valign="top"></td><td valign="top"><em>bgridz</em> </td><td>Size of the bilateral grid along the Z-axis. </td></tr> 288.10447 + <tr><td valign="top"></td><td valign="top"><em>bgridr</em> </td><td>Size of the bilateral grid along the range axis. </td></tr> 288.10448 + <tr><td valign="top"></td><td valign="top"><em>interpolation_type</em> </td><td>Use interpolation for image slicing. </td></tr> 288.10449 + </table> 288.10450 +</dl> 288.10451 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This algorithm uses the optimisation technique proposed by S. Paris and F. Durand, in ECCV'2006 (extended for 3D volumetric images). </dd></dl> 288.10452 + 288.10453 +</div> 288.10454 +</div><p> 288.10455 +<a class="anchor" name="09afff280828c5a8d5a7bef22993dacc"></a><!-- doxytag: member="cimg_library::CImg::haar" ref="09afff280828c5a8d5a7bef22993dacc" args="(const char axis, const bool invert=false, const unsigned int nb_scales=1)" --> 288.10456 +<div class="memitem"> 288.10457 +<div class="memproto"> 288.10458 + <table class="memname"> 288.10459 + <tr> 288.10460 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& haar </td> 288.10461 + <td>(</td> 288.10462 + <td class="paramtype">const char </td> 288.10463 + <td class="paramname"> <em>axis</em>, </td> 288.10464 + </tr> 288.10465 + <tr> 288.10466 + <td class="paramkey"></td> 288.10467 + <td></td> 288.10468 + <td class="paramtype">const bool </td> 288.10469 + <td class="paramname"> <em>invert</em> = <code>false</code>, </td> 288.10470 + </tr> 288.10471 + <tr> 288.10472 + <td class="paramkey"></td> 288.10473 + <td></td> 288.10474 + <td class="paramtype">const unsigned int </td> 288.10475 + <td class="paramname"> <em>nb_scales</em> = <code>1</code></td><td> </td> 288.10476 + </tr> 288.10477 + <tr> 288.10478 + <td></td> 288.10479 + <td>)</td> 288.10480 + <td></td><td></td><td><code> [inline]</code></td> 288.10481 + </tr> 288.10482 + </table> 288.10483 +</div> 288.10484 +<div class="memdoc"> 288.10485 + 288.10486 +<p> 288.10487 +Compute the Haar multiscale wavelet transform (monodimensional version). 288.10488 +<p> 288.10489 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10490 + <table border="0" cellspacing="2" cellpadding="0"> 288.10491 + <tr><td valign="top"></td><td valign="top"><em>axis</em> </td><td>Axis considered for the transform. </td></tr> 288.10492 + <tr><td valign="top"></td><td valign="top"><em>invert</em> </td><td>Set inverse of direct transform. </td></tr> 288.10493 + <tr><td valign="top"></td><td valign="top"><em>nb_scales</em> </td><td>Number of scales used for the transform. </td></tr> 288.10494 + </table> 288.10495 +</dl> 288.10496 + 288.10497 +</div> 288.10498 +</div><p> 288.10499 +<a class="anchor" name="dbb11ae1fffb253f45f3d0ff85a6857b"></a><!-- doxytag: member="cimg_library::CImg::haar" ref="dbb11ae1fffb253f45f3d0ff85a6857b" args="(const bool invert=false, const unsigned int nb_scales=1)" --> 288.10500 +<div class="memitem"> 288.10501 +<div class="memproto"> 288.10502 + <table class="memname"> 288.10503 + <tr> 288.10504 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& haar </td> 288.10505 + <td>(</td> 288.10506 + <td class="paramtype">const bool </td> 288.10507 + <td class="paramname"> <em>invert</em> = <code>false</code>, </td> 288.10508 + </tr> 288.10509 + <tr> 288.10510 + <td class="paramkey"></td> 288.10511 + <td></td> 288.10512 + <td class="paramtype">const unsigned int </td> 288.10513 + <td class="paramname"> <em>nb_scales</em> = <code>1</code></td><td> </td> 288.10514 + </tr> 288.10515 + <tr> 288.10516 + <td></td> 288.10517 + <td>)</td> 288.10518 + <td></td><td></td><td><code> [inline]</code></td> 288.10519 + </tr> 288.10520 + </table> 288.10521 +</div> 288.10522 +<div class="memdoc"> 288.10523 + 288.10524 +<p> 288.10525 +Compute the Haar multiscale wavelet transform. 288.10526 +<p> 288.10527 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10528 + <table border="0" cellspacing="2" cellpadding="0"> 288.10529 + <tr><td valign="top"></td><td valign="top"><em>invert</em> </td><td>Set inverse of direct transform. </td></tr> 288.10530 + <tr><td valign="top"></td><td valign="top"><em>nb_scales</em> </td><td>Number of scales used for the transform. </td></tr> 288.10531 + </table> 288.10532 +</dl> 288.10533 + 288.10534 +</div> 288.10535 +</div><p> 288.10536 +<a class="anchor" name="0a8ac68afbfb317c60b7554f5cdcbbd5"></a><!-- doxytag: member="cimg_library::CImg::select" ref="0a8ac68afbfb317c60b7554f5cdcbbd5" args="(CImgDisplay &disp, const int select_type=2, unsigned int *const XYZ=0, const unsigned char *const color=0)" --> 288.10537 +<div class="memitem"> 288.10538 +<div class="memproto"> 288.10539 + <table class="memname"> 288.10540 + <tr> 288.10541 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& select </td> 288.10542 + <td>(</td> 288.10543 + <td class="paramtype"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td> 288.10544 + <td class="paramname"> <em>disp</em>, </td> 288.10545 + </tr> 288.10546 + <tr> 288.10547 + <td class="paramkey"></td> 288.10548 + <td></td> 288.10549 + <td class="paramtype">const int </td> 288.10550 + <td class="paramname"> <em>select_type</em> = <code>2</code>, </td> 288.10551 + </tr> 288.10552 + <tr> 288.10553 + <td class="paramkey"></td> 288.10554 + <td></td> 288.10555 + <td class="paramtype">unsigned int *const </td> 288.10556 + <td class="paramname"> <em>XYZ</em> = <code>0</code>, </td> 288.10557 + </tr> 288.10558 + <tr> 288.10559 + <td class="paramkey"></td> 288.10560 + <td></td> 288.10561 + <td class="paramtype">const unsigned char *const </td> 288.10562 + <td class="paramname"> <em>color</em> = <code>0</code></td><td> </td> 288.10563 + </tr> 288.10564 + <tr> 288.10565 + <td></td> 288.10566 + <td>)</td> 288.10567 + <td></td><td></td><td><code> [inline]</code></td> 288.10568 + </tr> 288.10569 + </table> 288.10570 +</div> 288.10571 +<div class="memdoc"> 288.10572 + 288.10573 +<p> 288.10574 +Simple interface to select a shape from an image. 288.10575 +<p> 288.10576 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10577 + <table border="0" cellspacing="2" cellpadding="0"> 288.10578 + <tr><td valign="top"></td><td valign="top"><em>selection</em> </td><td>Array of 6 values containing the selection result </td></tr> 288.10579 + <tr><td valign="top"></td><td valign="top"><em>coords_type</em> </td><td>Determine shape type to select (0=point, 1=vector, 2=rectangle, 3=circle) </td></tr> 288.10580 + <tr><td valign="top"></td><td valign="top"><em>disp</em> </td><td>Display window used to make the selection </td></tr> 288.10581 + <tr><td valign="top"></td><td valign="top"><em>XYZ</em> </td><td>Initial XYZ position (for volumetric images only) </td></tr> 288.10582 + <tr><td valign="top"></td><td valign="top"><em>color</em> </td><td>Color of the shape selector. </td></tr> 288.10583 + </table> 288.10584 +</dl> 288.10585 + 288.10586 +</div> 288.10587 +</div><p> 288.10588 +<a class="anchor" name="138dcc5db93d511d224d88405a0041ce"></a><!-- doxytag: member="cimg_library::CImg::load" ref="138dcc5db93d511d224d88405a0041ce" args="(const char *const filename)" --> 288.10589 +<div class="memitem"> 288.10590 +<div class="memproto"> 288.10591 + <table class="memname"> 288.10592 + <tr> 288.10593 + <td class="memname"><a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& load </td> 288.10594 + <td>(</td> 288.10595 + <td class="paramtype">const char *const </td> 288.10596 + <td class="paramname"> <em>filename</em> </td> 288.10597 + <td> ) </td> 288.10598 + <td><code> [inline]</code></td> 288.10599 + </tr> 288.10600 + </table> 288.10601 +</div> 288.10602 +<div class="memdoc"> 288.10603 + 288.10604 +<p> 288.10605 +Load an image from a file. 288.10606 +<p> 288.10607 +<dl compact><dt><b>Parameters:</b></dt><dd> 288.10608 + <table border="0" cellspacing="2" cellpadding="0"> 288.10609 + <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>is the name of the image file to load. </td></tr> 288.10610 + </table> 288.10611 +</dl> 288.10612 +<dl class="note" compact><dt><b>Note:</b></dt><dd>The extension of <code>filename</code> defines the file format. If no filename extension is provided, CImg<T>::get_load() will try to load a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. </dd></dl> 288.10613 + 288.10614 +</div> 288.10615 +</div><p> 288.10616 +<a class="anchor" name="4fd91f4fb021d20c5b62329c49733bd9"></a><!-- doxytag: member="cimg_library::CImg::save" ref="4fd91f4fb021d20c5b62329c49733bd9" args="(const char *const filename, const int number=-1) const " --> 288.10617 +<div class="memitem"> 288.10618 +<div class="memproto"> 288.10619 + <table class="memname"> 288.10620 + <tr> 288.10621 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& save </td> 288.10622 + <td>(</td> 288.10623 + <td class="paramtype">const char *const </td> 288.10624 + <td class="paramname"> <em>filename</em>, </td> 288.10625 + </tr> 288.10626 + <tr> 288.10627 + <td class="paramkey"></td> 288.10628 + <td></td> 288.10629 + <td class="paramtype">const int </td> 288.10630 + <td class="paramname"> <em>number</em> = <code>-1</code></td><td> </td> 288.10631 + </tr> 288.10632 + <tr> 288.10633 + <td></td> 288.10634 + <td>)</td> 288.10635 + <td></td><td></td><td> const<code> [inline]</code></td> 288.10636 + </tr> 288.10637 + </table> 288.10638 +</div> 288.10639 +<div class="memdoc"> 288.10640 + 288.10641 +<p> 288.10642 +Save the image as a file. 288.10643 +<p> 288.10644 +The used file format is defined by the file extension in the filename <code>filename</code>. Parameter <code>number</code> can be used to add a 6-digit number to the filename before saving. 288.10645 +</div> 288.10646 +</div><p> 288.10647 +<a class="anchor" name="fdab21cdc4ef778bfaf4e123b28c9aa0"></a><!-- doxytag: member="cimg_library::CImg::save_graphicsmagick_external" ref="fdab21cdc4ef778bfaf4e123b28c9aa0" args="(const char *const filename, const unsigned int quality=100) const " --> 288.10648 +<div class="memitem"> 288.10649 +<div class="memproto"> 288.10650 + <table class="memname"> 288.10651 + <tr> 288.10652 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& save_graphicsmagick_external </td> 288.10653 + <td>(</td> 288.10654 + <td class="paramtype">const char *const </td> 288.10655 + <td class="paramname"> <em>filename</em>, </td> 288.10656 + </tr> 288.10657 + <tr> 288.10658 + <td class="paramkey"></td> 288.10659 + <td></td> 288.10660 + <td class="paramtype">const unsigned int </td> 288.10661 + <td class="paramname"> <em>quality</em> = <code>100</code></td><td> </td> 288.10662 + </tr> 288.10663 + <tr> 288.10664 + <td></td> 288.10665 + <td>)</td> 288.10666 + <td></td><td></td><td> const<code> [inline]</code></td> 288.10667 + </tr> 288.10668 + </table> 288.10669 +</div> 288.10670 +<div class="memdoc"> 288.10671 + 288.10672 +<p> 288.10673 +Save the image using GraphicsMagick's gm. 288.10674 +<p> 288.10675 +Function that saves the image for other file formats that are not natively handled by <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a>, using the tool 'gm' from the GraphicsMagick package.<br> 288.10676 + This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install the GraphicsMagick package in order to get this function working properly (see <a href="http://www.graphicsmagick.org">http://www.graphicsmagick.org</a> ). 288.10677 +</div> 288.10678 +</div><p> 288.10679 +<a class="anchor" name="b0ff4f35fc74d40fda4893b7e2fdbe7b"></a><!-- doxytag: member="cimg_library::CImg::save_imagemagick_external" ref="b0ff4f35fc74d40fda4893b7e2fdbe7b" args="(const char *const filename, const unsigned int quality=100) const " --> 288.10680 +<div class="memitem"> 288.10681 +<div class="memproto"> 288.10682 + <table class="memname"> 288.10683 + <tr> 288.10684 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a><T>& save_imagemagick_external </td> 288.10685 + <td>(</td> 288.10686 + <td class="paramtype">const char *const </td> 288.10687 + <td class="paramname"> <em>filename</em>, </td> 288.10688 + </tr> 288.10689 + <tr> 288.10690 + <td class="paramkey"></td> 288.10691 + <td></td> 288.10692 + <td class="paramtype">const unsigned int </td> 288.10693 + <td class="paramname"> <em>quality</em> = <code>100</code></td><td> </td> 288.10694 + </tr> 288.10695 + <tr> 288.10696 + <td></td> 288.10697 + <td>)</td> 288.10698 + <td></td><td></td><td> const<code> [inline]</code></td> 288.10699 + </tr> 288.10700 + </table> 288.10701 +</div> 288.10702 +<div class="memdoc"> 288.10703 + 288.10704 +<p> 288.10705 +Save the image using ImageMagick's convert. 288.10706 +<p> 288.10707 +Function that saves the image for other file formats that are not natively handled by <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a>, using the tool 'convert' from the ImageMagick package.<br> 288.10708 + This is the case for all compressed image formats (GIF,PNG,JPG,TIF, ...). You need to install the ImageMagick package in order to get this function working properly (see <a href="http://www.imagemagick.org">http://www.imagemagick.org</a> ). 288.10709 +</div> 288.10710 +</div><p> 288.10711 +<hr><h2>Member Data Documentation</h2> 288.10712 +<a class="anchor" name="ca34d28e3d8bcbcadb8edb4e3af24f8c"></a><!-- doxytag: member="cimg_library::CImg::width" ref="ca34d28e3d8bcbcadb8edb4e3af24f8c" args="" --> 288.10713 +<div class="memitem"> 288.10714 +<div class="memproto"> 288.10715 + <table class="memname"> 288.10716 + <tr> 288.10717 + <td class="memname">unsigned int <a class="el" href="structcimg__library_1_1CImg.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a> </td> 288.10718 + </tr> 288.10719 + </table> 288.10720 +</div> 288.10721 +<div class="memdoc"> 288.10722 + 288.10723 +<p> 288.10724 +Variable representing the width of the instance image (i.e. dimensions along the X-axis). 288.10725 +<p> 288.10726 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.10727 +<li>Prefer using the function <a class="el" href="structcimg__library_1_1CImg.html#afae58d5a77ea4190e6f2c818238bd1a" title="Return the number of columns of the instance image (size along the X-axis, i.e image...">CImg<T>::dimx()</a> to get information about the width of an image.</li><li>Use function <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4" title="Resize an image.">CImg<T>::resize()</a> to set a new width for an image. Setting directly the variable <code>width</code> would probably result in a library crash.</li><li>Empty images have <code>width</code> defined to <code>0</code>. </li></ul> 288.10728 +</dd></dl> 288.10729 + 288.10730 +</div> 288.10731 +</div><p> 288.10732 +<a class="anchor" name="b2e78c61905b4419fcc7b4cfc500fe85"></a><!-- doxytag: member="cimg_library::CImg::height" ref="b2e78c61905b4419fcc7b4cfc500fe85" args="" --> 288.10733 +<div class="memitem"> 288.10734 +<div class="memproto"> 288.10735 + <table class="memname"> 288.10736 + <tr> 288.10737 + <td class="memname">unsigned int <a class="el" href="structcimg__library_1_1CImg.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a> </td> 288.10738 + </tr> 288.10739 + </table> 288.10740 +</div> 288.10741 +<div class="memdoc"> 288.10742 + 288.10743 +<p> 288.10744 +Variable representing the height of the instance image (i.e. dimensions along the Y-axis). 288.10745 +<p> 288.10746 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.10747 +<li>Prefer using the function <a class="el" href="structcimg__library_1_1CImg.html#fc3244815fd1b4cea186b6a63bfb635d" title="Return the number of rows of the instance image (size along the Y-axis, i.e image...">CImg<T>::dimy()</a> to get information about the height of an image.</li><li>Use function <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4" title="Resize an image.">CImg<T>::resize()</a> to set a new height for an image. Setting directly the variable <code>height</code> would probably result in a library crash.</li><li>1D signals have <code>height</code> defined to <code>1</code>.</li><li>Empty images have <code>height</code> defined to <code>0</code>. </li></ul> 288.10748 +</dd></dl> 288.10749 + 288.10750 +</div> 288.10751 +</div><p> 288.10752 +<a class="anchor" name="5081a26baa914156df8541b03d09492e"></a><!-- doxytag: member="cimg_library::CImg::depth" ref="5081a26baa914156df8541b03d09492e" args="" --> 288.10753 +<div class="memitem"> 288.10754 +<div class="memproto"> 288.10755 + <table class="memname"> 288.10756 + <tr> 288.10757 + <td class="memname">unsigned int <a class="el" href="structcimg__library_1_1CImg.html#5081a26baa914156df8541b03d09492e">depth</a> </td> 288.10758 + </tr> 288.10759 + </table> 288.10760 +</div> 288.10761 +<div class="memdoc"> 288.10762 + 288.10763 +<p> 288.10764 +Variable representing the depth of the instance image (i.e. dimensions along the Z-axis). 288.10765 +<p> 288.10766 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.10767 +<li>Prefer using the function <a class="el" href="structcimg__library_1_1CImg.html#b310ef9114198b570d035fd914d5a215" title="Return the number of slices of the instance image (size along the Z-axis).">CImg<T>::dimz()</a> to get information about the depth of an image.</li><li>Use function <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4" title="Resize an image.">CImg<T>::resize()</a> to set a new depth for an image. Setting directly the variable <code>depth</code> would probably result in a library crash.</li><li>Classical 2D images have <code>depth</code> defined to <code>1</code>.</li><li>Empty images have <code>depth</code> defined to <code>0</code>. </li></ul> 288.10768 +</dd></dl> 288.10769 + 288.10770 +</div> 288.10771 +</div><p> 288.10772 +<a class="anchor" name="d335dc2821e58000fb6d0f0ed6ba835f"></a><!-- doxytag: member="cimg_library::CImg::dim" ref="d335dc2821e58000fb6d0f0ed6ba835f" args="" --> 288.10773 +<div class="memitem"> 288.10774 +<div class="memproto"> 288.10775 + <table class="memname"> 288.10776 + <tr> 288.10777 + <td class="memname">unsigned int <a class="el" href="structcimg__library_1_1CImg.html#d335dc2821e58000fb6d0f0ed6ba835f">dim</a> </td> 288.10778 + </tr> 288.10779 + </table> 288.10780 +</div> 288.10781 +<div class="memdoc"> 288.10782 + 288.10783 +<p> 288.10784 +Variable representing the number of channels of the instance image (i.e. dimensions along the V-axis). 288.10785 +<p> 288.10786 +<dl class="remark" compact><dt><b>Remarks:</b></dt><dd><ul> 288.10787 +<li>Prefer using the function <a class="el" href="structcimg__library_1_1CImg.html#36c46653147af22bf9163663c058ec6f" title="Return the number of vector channels of the instance image (size along the V-axis)...">CImg<T>::dimv()</a> to get information about the depth of an image.</li><li>Use function <a class="el" href="structcimg__library_1_1CImg.html#a930a4b0563d7d0794661231310b36c4" title="Resize an image.">CImg<T>::resize()</a> to set a new vector dimension for an image. Setting directly the variable <code>dim</code> would probably result in a library crash.</li><li>Scalar-valued images (one value per pixel) have <code>dim</code> defined to <code>1</code>.</li><li>Empty images have <code>depth</code> defined to <code>0</code>. </li></ul> 288.10788 +</dd></dl> 288.10789 + 288.10790 +</div> 288.10791 +</div><p> 288.10792 +</div> 288.10793 +<hr noshade="noshade" size="1" width="100%"> 288.10794 +<a href="http://sourceforge.net"> 288.10795 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 288.10796 +</a> 288.10797 +<!-- Start of StatCounter Code --> 288.10798 +<script type="text/javascript" language="javascript"> 288.10799 +<!-- 288.10800 +var sc_project=895001; 288.10801 +var sc_invisible=1; 288.10802 +var sc_partition=7; 288.10803 +var sc_security="5ea85181"; 288.10804 +//--> 288.10805 +</script> 288.10806 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 288.10807 +<!-- End of StatCounter Code --> 288.10808 +</body> 288.10809 +</html>
289.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 289.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgDisplay-members.html Mon Aug 03 14:09:20 2009 +0100 289.3 @@ -0,0 +1,227 @@ 289.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 289.5 +<head> 289.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 289.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 289.8 +<meta content="David Tschumperle" name="author"></meta> 289.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 289.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 289.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 289.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 289.13 +<style type="text/css"> 289.14 +<!-- 289.15 +body {background-color:white; font-family:sans-serif; } 289.16 +a:active{text-decoration:none; color:#303090} 289.17 +a:link{text-decoration:none; color:#303090} 289.18 +a:visited{text-decoration:none; color:#303090} 289.19 +a:hover{text-decoration:underline; color:#4E9F71} 289.20 +--> 289.21 +</style> 289.22 +<script language="JavaScript" type="text/javascript"> 289.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 289.24 + <!-- Web Site: http://redrival.com/eak/ --> 289.25 + <!-- This script and many more are available free online at --> 289.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 289.27 + <!-- Begin 289.28 + function NewWindow(mypage, myname, w, h, scroll) { 289.29 + var winl = (screen.width - w) / 2; 289.30 + var wint = (screen.height - h) / 2; 289.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 289.32 + win = window.open(mypage, myname, winprops) 289.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 289.34 + } 289.35 + // End --> 289.36 +</script> 289.37 +</head> 289.38 +<body> 289.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 289.40 + <tbody><tr><td> 289.41 + <hr noshade="noshade" size="1" width="90%"></hr> 289.42 + <center> 289.43 + <br/> 289.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 289.45 + <br/> 289.46 + </center> 289.47 + <hr noshade="noshade" size="1" width="90%"></hr> 289.48 + <center> 289.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 289.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 289.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 289.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 289.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 289.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 289.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 289.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 289.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 289.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 289.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 289.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 289.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 289.62 + </font> 289.63 + </td></tr></tbody> 289.64 + </table> 289.65 + </center> 289.66 + <hr noshade="noshade" size="1" width="90%"></hr> 289.67 + </td></tr></tbody> 289.68 +</table> 289.69 +<!-- Generated by Doxygen 1.5.7.1 --> 289.70 +<script type="text/javascript"> 289.71 +<!-- 289.72 +function changeDisplayState (e){ 289.73 + var num=this.id.replace(/[^[0-9]/g,''); 289.74 + var button=this.firstChild; 289.75 + var sectionDiv=document.getElementById('dynsection'+num); 289.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 289.77 + sectionDiv.style.display='block'; 289.78 + button.src='open.gif'; 289.79 + }else{ 289.80 + sectionDiv.style.display='none'; 289.81 + button.src='closed.gif'; 289.82 + } 289.83 +} 289.84 +function initDynSections(){ 289.85 + var divs=document.getElementsByTagName('div'); 289.86 + var sectionCounter=1; 289.87 + for(var i=0;i<divs.length-1;i++){ 289.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 289.89 + var header=divs[i]; 289.90 + var section=divs[i+1]; 289.91 + var button=header.firstChild; 289.92 + if (button!='IMG'){ 289.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 289.94 + button=document.createElement('img'); 289.95 + divs[i].insertBefore(button,divs[i].firstChild); 289.96 + } 289.97 + header.style.cursor='pointer'; 289.98 + header.onclick=changeDisplayState; 289.99 + header.id='dynheader'+sectionCounter; 289.100 + button.src='closed.gif'; 289.101 + section.id='dynsection'+sectionCounter; 289.102 + section.style.display='none'; 289.103 + section.style.marginLeft='14px'; 289.104 + sectionCounter++; 289.105 + } 289.106 + } 289.107 +} 289.108 +window.onload = initDynSections; 289.109 +--> 289.110 +</script> 289.111 +<div class="navigation" id="top"> 289.112 + <div class="tabs"> 289.113 + <ul> 289.114 + <li><a href="index.html"><span>Main Page</span></a></li> 289.115 + <li><a href="modules.html"><span>Modules</span></a></li> 289.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 289.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 289.118 + </ul> 289.119 + </div> 289.120 + <div class="tabs"> 289.121 + <ul> 289.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 289.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 289.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 289.125 + </ul> 289.126 + </div> 289.127 +</div> 289.128 +<div class="contents"> 289.129 +<h1>CImgDisplay Member List</h1>This is the complete list of members for <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a>, including all inherited members.<p><table> 289.130 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#816d8c873ae3d27854bd0620646224b9">assign</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.131 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#7e3269eea96ea399adc4197b5f0850b0">assign</a>(const unsigned int dimw, const unsigned int dimh, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.132 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#3730afc08603d9131eca7ce55a98cee9">assign</a>(const CImg< T > &img, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.133 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#c82bdf6c363f7d9fa9dacacc2cf31d00">assign</a>(const CImgList< T > &list, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.134 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#c103e68816e12f5fd67c8f293fe18acd">assign</a>(const CImgDisplay &disp)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.135 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#99bff6269344233fdf65bd637224550c">buttons</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.136 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#54e3407c3b858f5f40283264e39b4f38">CImgDisplay</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.137 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#9c8b6e40064be02e212ffa7059ebafc0">CImgDisplay</a>(const unsigned int dimw, const unsigned int dimh, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.138 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#ae589334b16c4d1138b81b85a1471f23">CImgDisplay</a>(const CImg< T > &img, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.139 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#541a54a1c627fbc1d9b42da7af0bd082">CImgDisplay</a>(const CImgList< T > &list, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.140 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#6765c355fa3ae998b9729b358f198a61">CImgDisplay</a>(const CImgDisplay &disp)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.141 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#7e35c3363f8859c8a952a60dd4aa3fca">close</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.142 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#afae58d5a77ea4190e6f2c818238bd1a">dimx</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.143 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#fc3244815fd1b4cea186b6a63bfb635d">dimy</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.144 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#43bcd9fcc817fa49152a81a2bf6cdb20">display</a>(const CImgList< T > &list, const char axis='x', const char align='p')</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.145 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#fd781dd620229f1178245c6e990121ae">display</a>(const CImg< T > &img)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.146 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#4bf168837be505b1301604b151280f6e">flush</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.147 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#3ade6e852b67fea14093915c5dca7862">frames_per_second</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.148 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#6a0faa0d39524f5d5dac7297777dcdf1">fullscreen</a>(const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.149 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.150 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#3fb8cda1473f326934c286e6e5d825e2">hide_mouse</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.151 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#6177b591b6fdd86be8a841805e35e280">is_closed</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.152 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.153 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#e899d3a3cda0dc8e2fccac37f2258840">is_event</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.154 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#198912a8b09f955a6510f97d62060f5c">is_fullscreen</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.155 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#d140aead8fc0119f432046542634ef56">is_key</a>(const bool remove=false)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.156 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#5b11b6f707efedcbb4e6161a5412250f">is_key</a>(const unsigned int key1, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.157 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#439c6ed8ae7a2b8967d48db3612922db">is_key</a>(const unsigned int key1, const unsigned int key2, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.158 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#83deadf5802945fe75692754d117a357">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.159 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#2293801f23d9ba3f7efcba0196554a9f">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.160 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#75d2273ead659c7a3774b5972450f3e8">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.161 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#c151f7d08e490be173bcbb2743f5432b">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.162 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#1c26cf5ec1b6e3de8e4267e8baf585c0">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.163 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#0eaf2ed4f210afecc9ba5ac155e6f57b">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.164 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#d0a413e81c81d30f02cefc16923e8091">is_key</a>(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const unsigned int key9, const bool remove)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.165 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#48c41f6d0533f21e93723bddd26cfb15">is_key</a>(const unsigned int *const keyseq, const unsigned int N, const bool remove=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.166 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#fe7ba7376c7b08dec24ac4c42d5fc753">is_keyESC</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.167 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#9655ae9b239a315df522996415012d0a">is_moved</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.168 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#c36e1e5ca1f39584ff996eddc7bc7f0e">is_resized</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.169 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#31f08c239581b118bfa3024329c8a611">key</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.170 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#4e1249ac2eca0971a8c42f79c3a687d4">mouse_x</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.171 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#adc7ac37cf1e624daddaa8d2c1587eef">mouse_y</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.172 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#27714e5f8da060a36e6614ada9d8df25">move</a>(const int posx, const int posy)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.173 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#a0ca4e92f24cf5b7896709dba3cf771a">normalization</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.174 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#971f4ac8d406a926d71f18c21c869f90">normalscreen</a>(const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.175 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.176 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#86ffd9e1b491dab79d3b862a26e56053">operator<<</a>(const CImg< T > &img)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.177 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#f9a6d7bc318943350d8073d7a0664df9">operator<<</a>(const CImgList< T > &list)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.178 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#81d1882a4d7d0579298fe6fc706fca40">operator=</a>(const CImgDisplay &disp)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.179 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#4e67d156351dd7dfdfd2f04e563c4f2a">paint</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.180 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#170a7c96fc7e3f262052d29b83430429">released_key</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.181 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#1e0eea237d50ddb7e010a8b5edb5fdf4">render</a>(const CImg< T > &img)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.182 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#fee064d94e1ec2e764af537fbee30d13">resize</a>(const CImg< T > &img, const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.183 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#f4d082c39b75c096acb3fee6cda89b19">resize</a>(const CImgDisplay &disp, const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.184 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#e3fd73d5fc6a4ac9b87b1b8cdacc3833">resize</a>(const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.185 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#4fe0da6092c184682ff767dd5b83bbc5">resize</a>(const int width, const int height, const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.186 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#0fc1bfce258738698d77e0e5690a3d6d">screen_dimx</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.187 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#fc1eab600c6dd77bdbde330fcd27d396">screen_dimy</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.188 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#00e5afcd819ab639a6a95b8e39af824c">set_mouse</a>(const int posx, const int posy)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.189 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#efd7d79af3da7a61a204ef902e6f0512">set_title</a>(const char *format,...)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.190 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#1b27a2a375509146444ab06b2f7b8851">show</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.191 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#9fc997c0451ce75666f1bdfe45eb0343">show_mouse</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.192 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#4b97d4d8b8c293cbf540ba06596ded54">snapshot</a>(CImg< T > &img) const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.193 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.194 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#62d224a7c18d3091eb0d56e1bc8c36fe">toggle_fullscreen</a>(const bool redraw=true)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.195 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#79669a0b7bdc65aff8313c590c7faab0">wait</a>(const unsigned int milliseconds)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.196 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#b16d9d312efaecc3630dc6539269bab9">wait</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.197 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#903bbc0d3fe2b9179790f7baea035916">wait</a>(CImgDisplay &disp1)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.198 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#d33d8e77ac9fab757e6f9e9afc067765">wait</a>(CImgDisplay &disp1, CImgDisplay &disp2)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.199 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#ce751dd163a5ea476947bcad5554035e">wait</a>(CImgDisplay &disp1, CImgDisplay &disp2, CImgDisplay &disp3)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.200 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#78ac24c082d4eb13d127374a4bf64987">wait</a>(CImgDisplay &disp1, CImgDisplay &disp2, CImgDisplay &disp3, CImgDisplay &disp4)</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.201 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#530c68e321d3adcb30fcefa06a25ca5b">wait_all</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline, static]</code></td></tr> 289.202 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#8852860a5e65fc4e698c2771ac5d5dab">wheel</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.203 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.204 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#3e8dd30daac06fc499aa2aafad24cc4a">window_dimx</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.205 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#e263957fbad39c2df4bd0c02d644e6b8">window_dimy</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.206 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#3b93087fe5c3714abcb0719a6f483d51">window_height</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.207 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#f7fd9c19f4185b1af4cb8b9a4164256d">window_posx</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.208 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#ce6f24d60fd39cea4d578a3eb7568fef">window_posy</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.209 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#b88886d5ff22bc29cd4a81e3abbb364b">window_width</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.210 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#a526ed4470cbc4924e72a1b4d616b00d">window_x</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.211 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#8f46b1f416882413996c261f839272a5">window_y</a></td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td></td></tr> 289.212 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgDisplay.html#e4b8135f23d41f2077ff1d63deb452ea">~CImgDisplay</a>()</td><td><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a></td><td><code> [inline]</code></td></tr> 289.213 +</table></div> 289.214 +<hr noshade="noshade" size="1" width="100%"> 289.215 +<a href="http://sourceforge.net"> 289.216 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 289.217 +</a> 289.218 +<!-- Start of StatCounter Code --> 289.219 +<script type="text/javascript" language="javascript"> 289.220 +<!-- 289.221 +var sc_project=895001; 289.222 +var sc_invisible=1; 289.223 +var sc_partition=7; 289.224 +var sc_security="5ea85181"; 289.225 +//--> 289.226 +</script> 289.227 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 289.228 +<!-- End of StatCounter Code --> 289.229 +</body> 289.230 +</html>
290.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 290.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgDisplay.html Mon Aug 03 14:09:20 2009 +0100 290.3 @@ -0,0 +1,787 @@ 290.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 290.5 +<head> 290.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 290.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 290.8 +<meta content="David Tschumperle" name="author"></meta> 290.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 290.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 290.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 290.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 290.13 +<style type="text/css"> 290.14 +<!-- 290.15 +body {background-color:white; font-family:sans-serif; } 290.16 +a:active{text-decoration:none; color:#303090} 290.17 +a:link{text-decoration:none; color:#303090} 290.18 +a:visited{text-decoration:none; color:#303090} 290.19 +a:hover{text-decoration:underline; color:#4E9F71} 290.20 +--> 290.21 +</style> 290.22 +<script language="JavaScript" type="text/javascript"> 290.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 290.24 + <!-- Web Site: http://redrival.com/eak/ --> 290.25 + <!-- This script and many more are available free online at --> 290.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 290.27 + <!-- Begin 290.28 + function NewWindow(mypage, myname, w, h, scroll) { 290.29 + var winl = (screen.width - w) / 2; 290.30 + var wint = (screen.height - h) / 2; 290.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 290.32 + win = window.open(mypage, myname, winprops) 290.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 290.34 + } 290.35 + // End --> 290.36 +</script> 290.37 +</head> 290.38 +<body> 290.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 290.40 + <tbody><tr><td> 290.41 + <hr noshade="noshade" size="1" width="90%"></hr> 290.42 + <center> 290.43 + <br/> 290.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 290.45 + <br/> 290.46 + </center> 290.47 + <hr noshade="noshade" size="1" width="90%"></hr> 290.48 + <center> 290.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 290.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 290.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 290.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 290.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 290.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 290.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 290.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 290.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 290.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 290.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 290.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 290.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 290.62 + </font> 290.63 + </td></tr></tbody> 290.64 + </table> 290.65 + </center> 290.66 + <hr noshade="noshade" size="1" width="90%"></hr> 290.67 + </td></tr></tbody> 290.68 +</table> 290.69 +<!-- Generated by Doxygen 1.5.7.1 --> 290.70 +<script type="text/javascript"> 290.71 +<!-- 290.72 +function changeDisplayState (e){ 290.73 + var num=this.id.replace(/[^[0-9]/g,''); 290.74 + var button=this.firstChild; 290.75 + var sectionDiv=document.getElementById('dynsection'+num); 290.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 290.77 + sectionDiv.style.display='block'; 290.78 + button.src='open.gif'; 290.79 + }else{ 290.80 + sectionDiv.style.display='none'; 290.81 + button.src='closed.gif'; 290.82 + } 290.83 +} 290.84 +function initDynSections(){ 290.85 + var divs=document.getElementsByTagName('div'); 290.86 + var sectionCounter=1; 290.87 + for(var i=0;i<divs.length-1;i++){ 290.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 290.89 + var header=divs[i]; 290.90 + var section=divs[i+1]; 290.91 + var button=header.firstChild; 290.92 + if (button!='IMG'){ 290.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 290.94 + button=document.createElement('img'); 290.95 + divs[i].insertBefore(button,divs[i].firstChild); 290.96 + } 290.97 + header.style.cursor='pointer'; 290.98 + header.onclick=changeDisplayState; 290.99 + header.id='dynheader'+sectionCounter; 290.100 + button.src='closed.gif'; 290.101 + section.id='dynsection'+sectionCounter; 290.102 + section.style.display='none'; 290.103 + section.style.marginLeft='14px'; 290.104 + sectionCounter++; 290.105 + } 290.106 + } 290.107 +} 290.108 +window.onload = initDynSections; 290.109 +--> 290.110 +</script> 290.111 +<div class="navigation" id="top"> 290.112 + <div class="tabs"> 290.113 + <ul> 290.114 + <li><a href="index.html"><span>Main Page</span></a></li> 290.115 + <li><a href="modules.html"><span>Modules</span></a></li> 290.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 290.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 290.118 + </ul> 290.119 + </div> 290.120 + <div class="tabs"> 290.121 + <ul> 290.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 290.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 290.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 290.125 + </ul> 290.126 + </div> 290.127 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> 290.128 + </div> 290.129 +</div> 290.130 +<div class="contents"> 290.131 +<h1>CImgDisplay Struct Reference</h1><!-- doxytag: class="cimg_library::CImgDisplay" -->This class represents a window which can display <a class="el" href="structcimg__library_1_1CImg.html">CImg</a> images and handles mouse and keyboard events. 290.132 +<a href="#_details">More...</a> 290.133 +<p> 290.134 + 290.135 +<p> 290.136 +<a href="structcimg__library_1_1CImgDisplay-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 290.137 +<tr><td></td></tr> 290.138 +<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 290.139 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="54e3407c3b858f5f40283264e39b4f38"></a><!-- doxytag: member="cimg_library::CImgDisplay::CImgDisplay" ref="54e3407c3b858f5f40283264e39b4f38" args="()" --> 290.140 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#54e3407c3b858f5f40283264e39b4f38">CImgDisplay</a> ()</td></tr> 290.141 + 290.142 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create an empty display window. <br></td></tr> 290.143 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#9c8b6e40064be02e212ffa7059ebafc0">CImgDisplay</a> (const unsigned int dimw, const unsigned int dimh, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.144 + 290.145 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a display window with a specified size <code>pwidth</code> x <code>height</code>. <a href="#9c8b6e40064be02e212ffa7059ebafc0"></a><br></td></tr> 290.146 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 290.147 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#ae589334b16c4d1138b81b85a1471f23">CImgDisplay</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.148 + 290.149 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a display window from an image. <a href="#ae589334b16c4d1138b81b85a1471f23"></a><br></td></tr> 290.150 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 290.151 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#541a54a1c627fbc1d9b42da7af0bd082">CImgDisplay</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.152 + 290.153 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a display window from an image list. <a href="#541a54a1c627fbc1d9b42da7af0bd082"></a><br></td></tr> 290.154 +<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#6765c355fa3ae998b9729b358f198a61">CImgDisplay</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp)</td></tr> 290.155 + 290.156 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a display window by copying another one. <a href="#6765c355fa3ae998b9729b358f198a61"></a><br></td></tr> 290.157 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4b8135f23d41f2077ff1d63deb452ea"></a><!-- doxytag: member="cimg_library::CImgDisplay::~CImgDisplay" ref="e4b8135f23d41f2077ff1d63deb452ea" args="()" --> 290.158 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#e4b8135f23d41f2077ff1d63deb452ea">~CImgDisplay</a> ()</td></tr> 290.159 + 290.160 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br></td></tr> 290.161 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="81d1882a4d7d0579298fe6fc706fca40"></a><!-- doxytag: member="cimg_library::CImgDisplay::operator=" ref="81d1882a4d7d0579298fe6fc706fca40" args="(const CImgDisplay &disp)" --> 290.162 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#81d1882a4d7d0579298fe6fc706fca40">operator=</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp)</td></tr> 290.163 + 290.164 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. <br></td></tr> 290.165 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cef8e33cfd36a5d7d2fad939efcf02e3"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_empty" ref="cef8e33cfd36a5d7d2fad939efcf02e3" args="() const " --> 290.166 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a> () const </td></tr> 290.167 + 290.168 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true is display is empty. <br></td></tr> 290.169 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a385aa18f5e42db5a415c25a90f4193d"></a><!-- doxytag: member="cimg_library::CImgDisplay::operator bool" ref="a385aa18f5e42db5a415c25a90f4193d" args="() const " --> 290.170 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a> () const </td></tr> 290.171 + 290.172 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if display is not empty. <br></td></tr> 290.173 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="afae58d5a77ea4190e6f2c818238bd1a"></a><!-- doxytag: member="cimg_library::CImgDisplay::dimx" ref="afae58d5a77ea4190e6f2c818238bd1a" args="() const " --> 290.174 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#afae58d5a77ea4190e6f2c818238bd1a">dimx</a> () const </td></tr> 290.175 + 290.176 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return display width. <br></td></tr> 290.177 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc3244815fd1b4cea186b6a63bfb635d"></a><!-- doxytag: member="cimg_library::CImgDisplay::dimy" ref="fc3244815fd1b4cea186b6a63bfb635d" args="() const " --> 290.178 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#fc3244815fd1b4cea186b6a63bfb635d">dimy</a> () const </td></tr> 290.179 + 290.180 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return display height. <br></td></tr> 290.181 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3e8dd30daac06fc499aa2aafad24cc4a"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_dimx" ref="3e8dd30daac06fc499aa2aafad24cc4a" args="() const " --> 290.182 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#3e8dd30daac06fc499aa2aafad24cc4a">window_dimx</a> () const </td></tr> 290.183 + 290.184 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return display window width. <br></td></tr> 290.185 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e263957fbad39c2df4bd0c02d644e6b8"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_dimy" ref="e263957fbad39c2df4bd0c02d644e6b8" args="() const " --> 290.186 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#e263957fbad39c2df4bd0c02d644e6b8">window_dimy</a> () const </td></tr> 290.187 + 290.188 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return display window height. <br></td></tr> 290.189 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7fd9c19f4185b1af4cb8b9a4164256d"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_posx" ref="f7fd9c19f4185b1af4cb8b9a4164256d" args="() const " --> 290.190 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#f7fd9c19f4185b1af4cb8b9a4164256d">window_posx</a> () const </td></tr> 290.191 + 290.192 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return X-coordinate of the window. <br></td></tr> 290.193 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce6f24d60fd39cea4d578a3eb7568fef"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_posy" ref="ce6f24d60fd39cea4d578a3eb7568fef" args="() const " --> 290.194 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#ce6f24d60fd39cea4d578a3eb7568fef">window_posy</a> () const </td></tr> 290.195 + 290.196 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return Y-coordinate of the window. <br></td></tr> 290.197 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="79669a0b7bdc65aff8313c590c7faab0"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="79669a0b7bdc65aff8313c590c7faab0" args="(const unsigned int milliseconds)" --> 290.198 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#79669a0b7bdc65aff8313c590c7faab0">wait</a> (const unsigned int milliseconds)</td></tr> 290.199 + 290.200 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Synchronized waiting function. Same as <a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77" title="Wait for a certain number of milliseconds since the last call.">cimg::wait()</a>. <br></td></tr> 290.201 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b16d9d312efaecc3630dc6539269bab9"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="b16d9d312efaecc3630dc6539269bab9" args="()" --> 290.202 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#b16d9d312efaecc3630dc6539269bab9">wait</a> ()</td></tr> 290.203 + 290.204 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for an event occuring on the current display. <br></td></tr> 290.205 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3ade6e852b67fea14093915c5dca7862"></a><!-- doxytag: member="cimg_library::CImgDisplay::frames_per_second" ref="3ade6e852b67fea14093915c5dca7862" args="()" --> 290.206 +float </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#3ade6e852b67fea14093915c5dca7862">frames_per_second</a> ()</td></tr> 290.207 + 290.208 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the frame per second rate. <br></td></tr> 290.209 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 290.210 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#43bcd9fcc817fa49152a81a2bf6cdb20">display</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list, const char axis='x', const char align='p')</td></tr> 290.211 + 290.212 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image list CImgList<T> into a display window. <a href="#43bcd9fcc817fa49152a81a2bf6cdb20"></a><br></td></tr> 290.213 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="86ffd9e1b491dab79d3b862a26e56053"></a><!-- doxytag: member="cimg_library::CImgDisplay::operator<<" ref="86ffd9e1b491dab79d3b862a26e56053" args="(const CImg< T > &img)" --> 290.214 +template<typename T > </td></tr> 290.215 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#86ffd9e1b491dab79d3b862a26e56053">operator<<</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 290.216 + 290.217 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image CImg<T> into a display window. <br></td></tr> 290.218 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f9a6d7bc318943350d8073d7a0664df9"></a><!-- doxytag: member="cimg_library::CImgDisplay::operator<<" ref="f9a6d7bc318943350d8073d7a0664df9" args="(const CImgList< T > &list)" --> 290.219 +template<typename T > </td></tr> 290.220 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#f9a6d7bc318943350d8073d7a0664df9">operator<<</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list)</td></tr> 290.221 + 290.222 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image CImg<T> into a display window. <br></td></tr> 290.223 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 290.224 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#fee064d94e1ec2e764af537fbee30d13">resize</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const bool redraw=true)</td></tr> 290.225 + 290.226 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize a display window with the size of an image. <a href="#fee064d94e1ec2e764af537fbee30d13"></a><br></td></tr> 290.227 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4d082c39b75c096acb3fee6cda89b19"></a><!-- doxytag: member="cimg_library::CImgDisplay::resize" ref="f4d082c39b75c096acb3fee6cda89b19" args="(const CImgDisplay &disp, const bool redraw=true)" --> 290.228 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#f4d082c39b75c096acb3fee6cda89b19">resize</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp, const bool redraw=true)</td></tr> 290.229 + 290.230 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize a display window using the size of the given display <code>disp</code>. <br></td></tr> 290.231 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e3fd73d5fc6a4ac9b87b1b8cdacc3833"></a><!-- doxytag: member="cimg_library::CImgDisplay::resize" ref="e3fd73d5fc6a4ac9b87b1b8cdacc3833" args="(const bool redraw=true)" --> 290.232 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#e3fd73d5fc6a4ac9b87b1b8cdacc3833">resize</a> (const bool redraw=true)</td></tr> 290.233 + 290.234 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize a display window in its current size. <br></td></tr> 290.235 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6a0faa0d39524f5d5dac7297777dcdf1"></a><!-- doxytag: member="cimg_library::CImgDisplay::fullscreen" ref="6a0faa0d39524f5d5dac7297777dcdf1" args="(const bool redraw=true)" --> 290.236 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#6a0faa0d39524f5d5dac7297777dcdf1">fullscreen</a> (const bool redraw=true)</td></tr> 290.237 + 290.238 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set fullscreen mode. <br></td></tr> 290.239 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="971f4ac8d406a926d71f18c21c869f90"></a><!-- doxytag: member="cimg_library::CImgDisplay::normalscreen" ref="971f4ac8d406a926d71f18c21c869f90" args="(const bool redraw=true)" --> 290.240 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#971f4ac8d406a926d71f18c21c869f90">normalscreen</a> (const bool redraw=true)</td></tr> 290.241 + 290.242 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set normal screen mode. <br></td></tr> 290.243 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4bf168837be505b1301604b151280f6e"></a><!-- doxytag: member="cimg_library::CImgDisplay::flush" ref="4bf168837be505b1301604b151280f6e" args="()" --> 290.244 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#4bf168837be505b1301604b151280f6e">flush</a> ()</td></tr> 290.245 + 290.246 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Clear all events of the current display. <br></td></tr> 290.247 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d140aead8fc0119f432046542634ef56"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="d140aead8fc0119f432046542634ef56" args="(const bool remove=false)" --> 290.248 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#d140aead8fc0119f432046542634ef56">is_key</a> (const bool remove=false)</td></tr> 290.249 + 290.250 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if any key has been pressed. <br></td></tr> 290.251 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5b11b6f707efedcbb4e6161a5412250f"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="5b11b6f707efedcbb4e6161a5412250f" args="(const unsigned int key1, const bool remove)" --> 290.252 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#5b11b6f707efedcbb4e6161a5412250f">is_key</a> (const unsigned int key1, const bool remove)</td></tr> 290.253 + 290.254 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key has been pressed. <br></td></tr> 290.255 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="439c6ed8ae7a2b8967d48db3612922db"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="439c6ed8ae7a2b8967d48db3612922db" args="(const unsigned int key1, const unsigned int key2, const bool remove)" --> 290.256 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#439c6ed8ae7a2b8967d48db3612922db">is_key</a> (const unsigned int key1, const unsigned int key2, const bool remove)</td></tr> 290.257 + 290.258 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.259 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83deadf5802945fe75692754d117a357"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="83deadf5802945fe75692754d117a357" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const bool remove)" --> 290.260 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#83deadf5802945fe75692754d117a357">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const bool remove)</td></tr> 290.261 + 290.262 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.263 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2293801f23d9ba3f7efcba0196554a9f"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="2293801f23d9ba3f7efcba0196554a9f" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const bool remove)" --> 290.264 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#2293801f23d9ba3f7efcba0196554a9f">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const bool remove)</td></tr> 290.265 + 290.266 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.267 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75d2273ead659c7a3774b5972450f3e8"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="75d2273ead659c7a3774b5972450f3e8" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const bool remove)" --> 290.268 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#75d2273ead659c7a3774b5972450f3e8">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const bool remove)</td></tr> 290.269 + 290.270 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.271 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c151f7d08e490be173bcbb2743f5432b"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="c151f7d08e490be173bcbb2743f5432b" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const bool remove)" --> 290.272 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#c151f7d08e490be173bcbb2743f5432b">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const bool remove)</td></tr> 290.273 + 290.274 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.275 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c26cf5ec1b6e3de8e4267e8baf585c0"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="1c26cf5ec1b6e3de8e4267e8baf585c0" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const bool remove)" --> 290.276 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#1c26cf5ec1b6e3de8e4267e8baf585c0">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const bool remove)</td></tr> 290.277 + 290.278 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.279 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0eaf2ed4f210afecc9ba5ac155e6f57b"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="0eaf2ed4f210afecc9ba5ac155e6f57b" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const bool remove)" --> 290.280 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#0eaf2ed4f210afecc9ba5ac155e6f57b">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const bool remove)</td></tr> 290.281 + 290.282 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.283 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0a413e81c81d30f02cefc16923e8091"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="d0a413e81c81d30f02cefc16923e8091" args="(const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const unsigned int key9, const bool remove)" --> 290.284 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#d0a413e81c81d30f02cefc16923e8091">is_key</a> (const unsigned int key1, const unsigned int key2, const unsigned int key3, const unsigned int key4, const unsigned int key5, const unsigned int key6, const unsigned int key7, const unsigned int key8, const unsigned int key9, const bool remove)</td></tr> 290.285 + 290.286 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.287 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="48c41f6d0533f21e93723bddd26cfb15"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_key" ref="48c41f6d0533f21e93723bddd26cfb15" args="(const unsigned int *const keyseq, const unsigned int N, const bool remove=true)" --> 290.288 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#48c41f6d0533f21e93723bddd26cfb15">is_key</a> (const unsigned int *const keyseq, const unsigned int N, const bool remove=true)</td></tr> 290.289 + 290.290 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Test if a key sequence has been typed. <br></td></tr> 290.291 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="816d8c873ae3d27854bd0620646224b9"></a><!-- doxytag: member="cimg_library::CImgDisplay::assign" ref="816d8c873ae3d27854bd0620646224b9" args="()" --> 290.292 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#816d8c873ae3d27854bd0620646224b9">assign</a> ()</td></tr> 290.293 + 290.294 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the destructor. <br></td></tr> 290.295 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7e3269eea96ea399adc4197b5f0850b0"></a><!-- doxytag: member="cimg_library::CImgDisplay::assign" ref="7e3269eea96ea399adc4197b5f0850b0" args="(const unsigned int dimw, const unsigned int dimh, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.296 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#7e3269eea96ea399adc4197b5f0850b0">assign</a> (const unsigned int dimw, const unsigned int dimh, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.297 + 290.298 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 290.299 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3730afc08603d9131eca7ce55a98cee9"></a><!-- doxytag: member="cimg_library::CImgDisplay::assign" ref="3730afc08603d9131eca7ce55a98cee9" args="(const CImg< T > &img, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.300 +template<typename T > </td></tr> 290.301 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#3730afc08603d9131eca7ce55a98cee9">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.302 + 290.303 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 290.304 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c82bdf6c363f7d9fa9dacacc2cf31d00"></a><!-- doxytag: member="cimg_library::CImgDisplay::assign" ref="c82bdf6c363f7d9fa9dacacc2cf31d00" args="(const CImgList< T > &list, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.305 +template<typename T > </td></tr> 290.306 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#c82bdf6c363f7d9fa9dacacc2cf31d00">assign</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list, const char *<a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a>=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)</td></tr> 290.307 + 290.308 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 290.309 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c103e68816e12f5fd67c8f293fe18acd"></a><!-- doxytag: member="cimg_library::CImgDisplay::assign" ref="c103e68816e12f5fd67c8f293fe18acd" args="(const CImgDisplay &disp)" --> 290.310 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#c103e68816e12f5fd67c8f293fe18acd">assign</a> (const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp)</td></tr> 290.311 + 290.312 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the previous constructor. <br></td></tr> 290.313 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4fe0da6092c184682ff767dd5b83bbc5"></a><!-- doxytag: member="cimg_library::CImgDisplay::resize" ref="4fe0da6092c184682ff767dd5b83bbc5" args="(const int width, const int height, const bool redraw=true)" --> 290.314 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#4fe0da6092c184682ff767dd5b83bbc5">resize</a> (const int <a class="el" href="structcimg__library_1_1CImgDisplay.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a>, const int <a class="el" href="structcimg__library_1_1CImgDisplay.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a>, const bool redraw=true)</td></tr> 290.315 + 290.316 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resize window. <br></td></tr> 290.317 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="62d224a7c18d3091eb0d56e1bc8c36fe"></a><!-- doxytag: member="cimg_library::CImgDisplay::toggle_fullscreen" ref="62d224a7c18d3091eb0d56e1bc8c36fe" args="(const bool redraw=true)" --> 290.318 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#62d224a7c18d3091eb0d56e1bc8c36fe">toggle_fullscreen</a> (const bool redraw=true)</td></tr> 290.319 + 290.320 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Toggle fullscreen mode. <br></td></tr> 290.321 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1b27a2a375509146444ab06b2f7b8851"></a><!-- doxytag: member="cimg_library::CImgDisplay::show" ref="1b27a2a375509146444ab06b2f7b8851" args="()" --> 290.322 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#1b27a2a375509146444ab06b2f7b8851">show</a> ()</td></tr> 290.323 + 290.324 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Show a closed display. <br></td></tr> 290.325 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7e35c3363f8859c8a952a60dd4aa3fca"></a><!-- doxytag: member="cimg_library::CImgDisplay::close" ref="7e35c3363f8859c8a952a60dd4aa3fca" args="()" --> 290.326 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#7e35c3363f8859c8a952a60dd4aa3fca">close</a> ()</td></tr> 290.327 + 290.328 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Close a visible display. <br></td></tr> 290.329 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="27714e5f8da060a36e6614ada9d8df25"></a><!-- doxytag: member="cimg_library::CImgDisplay::move" ref="27714e5f8da060a36e6614ada9d8df25" args="(const int posx, const int posy)" --> 290.330 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#27714e5f8da060a36e6614ada9d8df25">move</a> (const int posx, const int posy)</td></tr> 290.331 + 290.332 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Move window. <br></td></tr> 290.333 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9fc997c0451ce75666f1bdfe45eb0343"></a><!-- doxytag: member="cimg_library::CImgDisplay::show_mouse" ref="9fc997c0451ce75666f1bdfe45eb0343" args="()" --> 290.334 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#9fc997c0451ce75666f1bdfe45eb0343">show_mouse</a> ()</td></tr> 290.335 + 290.336 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Show mouse pointer. <br></td></tr> 290.337 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3fb8cda1473f326934c286e6e5d825e2"></a><!-- doxytag: member="cimg_library::CImgDisplay::hide_mouse" ref="3fb8cda1473f326934c286e6e5d825e2" args="()" --> 290.338 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#3fb8cda1473f326934c286e6e5d825e2">hide_mouse</a> ()</td></tr> 290.339 + 290.340 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Hide mouse pointer. <br></td></tr> 290.341 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="00e5afcd819ab639a6a95b8e39af824c"></a><!-- doxytag: member="cimg_library::CImgDisplay::set_mouse" ref="00e5afcd819ab639a6a95b8e39af824c" args="(const int posx, const int posy)" --> 290.342 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#00e5afcd819ab639a6a95b8e39af824c">set_mouse</a> (const int posx, const int posy)</td></tr> 290.343 + 290.344 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Move mouse pointer to a specific location. <br></td></tr> 290.345 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="efd7d79af3da7a61a204ef902e6f0512"></a><!-- doxytag: member="cimg_library::CImgDisplay::set_title" ref="efd7d79af3da7a61a204ef902e6f0512" args="(const char *format,...)" --> 290.346 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#efd7d79af3da7a61a204ef902e6f0512">set_title</a> (const char *format,...)</td></tr> 290.347 + 290.348 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the window title. <br></td></tr> 290.349 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fd781dd620229f1178245c6e990121ae"></a><!-- doxytag: member="cimg_library::CImgDisplay::display" ref="fd781dd620229f1178245c6e990121ae" args="(const CImg< T > &img)" --> 290.350 +template<typename T > </td></tr> 290.351 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#fd781dd620229f1178245c6e990121ae">display</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 290.352 + 290.353 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display an image in a window. <br></td></tr> 290.354 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e67d156351dd7dfdfd2f04e563c4f2a"></a><!-- doxytag: member="cimg_library::CImgDisplay::paint" ref="4e67d156351dd7dfdfd2f04e563c4f2a" args="()" --> 290.355 +<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#4e67d156351dd7dfdfd2f04e563c4f2a">paint</a> ()</td></tr> 290.356 + 290.357 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Re-paint image content in window. <br></td></tr> 290.358 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1e0eea237d50ddb7e010a8b5edb5fdf4"></a><!-- doxytag: member="cimg_library::CImgDisplay::render" ref="1e0eea237d50ddb7e010a8b5edb5fdf4" args="(const CImg< T > &img)" --> 290.359 +template<typename T > </td></tr> 290.360 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#1e0eea237d50ddb7e010a8b5edb5fdf4">render</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img)</td></tr> 290.361 + 290.362 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Render image buffer into GDI native image format. <br></td></tr> 290.363 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4b97d4d8b8c293cbf540ba06596ded54"></a><!-- doxytag: member="cimg_library::CImgDisplay::snapshot" ref="4b97d4d8b8c293cbf540ba06596ded54" args="(CImg< T > &img) const " --> 290.364 +template<typename T > </td></tr> 290.365 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#4b97d4d8b8c293cbf540ba06596ded54">snapshot</a> (<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > &img) const </td></tr> 290.366 + 290.367 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Take a snapshot of the display in the specified image. <br></td></tr> 290.368 +<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr> 290.369 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="903bbc0d3fe2b9179790f7baea035916"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="903bbc0d3fe2b9179790f7baea035916" args="(CImgDisplay &disp1)" --> 290.370 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#903bbc0d3fe2b9179790f7baea035916">wait</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp1)</td></tr> 290.371 + 290.372 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for any event occuring on the display <code>disp1</code>. <br></td></tr> 290.373 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d33d8e77ac9fab757e6f9e9afc067765"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="d33d8e77ac9fab757e6f9e9afc067765" args="(CImgDisplay &disp1, CImgDisplay &disp2)" --> 290.374 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#d33d8e77ac9fab757e6f9e9afc067765">wait</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp1, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp2)</td></tr> 290.375 + 290.376 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for any event occuring either on the display <code>disp1</code> or <code>disp2</code>. <br></td></tr> 290.377 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce751dd163a5ea476947bcad5554035e"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="ce751dd163a5ea476947bcad5554035e" args="(CImgDisplay &disp1, CImgDisplay &disp2, CImgDisplay &disp3)" --> 290.378 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#ce751dd163a5ea476947bcad5554035e">wait</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp1, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp2, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp3)</td></tr> 290.379 + 290.380 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for any event occuring either on the display <code>disp1</code>, <code>disp2</code> or <code>disp3</code>. <br></td></tr> 290.381 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78ac24c082d4eb13d127374a4bf64987"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait" ref="78ac24c082d4eb13d127374a4bf64987" args="(CImgDisplay &disp1, CImgDisplay &disp2, CImgDisplay &disp3, CImgDisplay &disp4)" --> 290.382 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#78ac24c082d4eb13d127374a4bf64987">wait</a> (<a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp1, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp2, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp3, <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> &disp4)</td></tr> 290.383 + 290.384 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for any event occuring either on the display <code>disp1</code>, <code>disp2</code>, <code>disp3</code> or <code>disp4</code>. <br></td></tr> 290.385 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0fc1bfce258738698d77e0e5690a3d6d"></a><!-- doxytag: member="cimg_library::CImgDisplay::screen_dimx" ref="0fc1bfce258738698d77e0e5690a3d6d" args="()" --> 290.386 +static int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#0fc1bfce258738698d77e0e5690a3d6d">screen_dimx</a> ()</td></tr> 290.387 + 290.388 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the width of the screen resolution. <br></td></tr> 290.389 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc1eab600c6dd77bdbde330fcd27d396"></a><!-- doxytag: member="cimg_library::CImgDisplay::screen_dimy" ref="fc1eab600c6dd77bdbde330fcd27d396" args="()" --> 290.390 +static int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#fc1eab600c6dd77bdbde330fcd27d396">screen_dimy</a> ()</td></tr> 290.391 + 290.392 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the height of the screen resolution. <br></td></tr> 290.393 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="530c68e321d3adcb30fcefa06a25ca5b"></a><!-- doxytag: member="cimg_library::CImgDisplay::wait_all" ref="530c68e321d3adcb30fcefa06a25ca5b" args="()" --> 290.394 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#530c68e321d3adcb30fcefa06a25ca5b">wait_all</a> ()</td></tr> 290.395 + 290.396 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for a window event in any <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> window. <br></td></tr> 290.397 +<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> 290.398 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ca34d28e3d8bcbcadb8edb4e3af24f8c"></a><!-- doxytag: member="cimg_library::CImgDisplay::width" ref="ca34d28e3d8bcbcadb8edb4e3af24f8c" args="" --> 290.399 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#ca34d28e3d8bcbcadb8edb4e3af24f8c">width</a></td></tr> 290.400 + 290.401 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Width of the display. <br></td></tr> 290.402 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b2e78c61905b4419fcc7b4cfc500fe85"></a><!-- doxytag: member="cimg_library::CImgDisplay::height" ref="b2e78c61905b4419fcc7b4cfc500fe85" args="" --> 290.403 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#b2e78c61905b4419fcc7b4cfc500fe85">height</a></td></tr> 290.404 + 290.405 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Height of the display. <br></td></tr> 290.406 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a0ca4e92f24cf5b7896709dba3cf771a"></a><!-- doxytag: member="cimg_library::CImgDisplay::normalization" ref="a0ca4e92f24cf5b7896709dba3cf771a" args="" --> 290.407 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#a0ca4e92f24cf5b7896709dba3cf771a">normalization</a></td></tr> 290.408 + 290.409 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Normalization type used for the display. <br></td></tr> 290.410 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f06d911bb9e05f491ef3da520d03796c"></a><!-- doxytag: member="cimg_library::CImgDisplay::title" ref="f06d911bb9e05f491ef3da520d03796c" args="" --> 290.411 +char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#f06d911bb9e05f491ef3da520d03796c">title</a></td></tr> 290.412 + 290.413 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display title. <br></td></tr> 290.414 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a526ed4470cbc4924e72a1b4d616b00d"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_x" ref="a526ed4470cbc4924e72a1b4d616b00d" args="" --> 290.415 +volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#a526ed4470cbc4924e72a1b4d616b00d">window_x</a></td></tr> 290.416 + 290.417 +<tr><td class="mdescLeft"> </td><td class="mdescRight">X-pos of the display on the screen. <br></td></tr> 290.418 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8f46b1f416882413996c261f839272a5"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_y" ref="8f46b1f416882413996c261f839272a5" args="" --> 290.419 +volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#8f46b1f416882413996c261f839272a5">window_y</a></td></tr> 290.420 + 290.421 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Y-pos of the display on the screen. <br></td></tr> 290.422 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b88886d5ff22bc29cd4a81e3abbb364b"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_width" ref="b88886d5ff22bc29cd4a81e3abbb364b" args="" --> 290.423 +volatile unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#b88886d5ff22bc29cd4a81e3abbb364b">window_width</a></td></tr> 290.424 + 290.425 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Width of the underlying window. <br></td></tr> 290.426 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b93087fe5c3714abcb0719a6f483d51"></a><!-- doxytag: member="cimg_library::CImgDisplay::window_height" ref="3b93087fe5c3714abcb0719a6f483d51" args="" --> 290.427 +volatile unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#3b93087fe5c3714abcb0719a6f483d51">window_height</a></td></tr> 290.428 + 290.429 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Height of the underlying window. <br></td></tr> 290.430 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e1249ac2eca0971a8c42f79c3a687d4"></a><!-- doxytag: member="cimg_library::CImgDisplay::mouse_x" ref="4e1249ac2eca0971a8c42f79c3a687d4" args="" --> 290.431 +volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#4e1249ac2eca0971a8c42f79c3a687d4">mouse_x</a></td></tr> 290.432 + 290.433 +<tr><td class="mdescLeft"> </td><td class="mdescRight">X-coordinate of the mouse pointer on the display. <br></td></tr> 290.434 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="adc7ac37cf1e624daddaa8d2c1587eef"></a><!-- doxytag: member="cimg_library::CImgDisplay::mouse_y" ref="adc7ac37cf1e624daddaa8d2c1587eef" args="" --> 290.435 +volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#adc7ac37cf1e624daddaa8d2c1587eef">mouse_y</a></td></tr> 290.436 + 290.437 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Y-coordinate of the mouse pointer on the display. <br></td></tr> 290.438 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99bff6269344233fdf65bd637224550c"></a><!-- doxytag: member="cimg_library::CImgDisplay::buttons" ref="99bff6269344233fdf65bd637224550c" args="[512]" --> 290.439 +volatile unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#99bff6269344233fdf65bd637224550c">buttons</a> [512]</td></tr> 290.440 + 290.441 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Button state of the mouse. <br></td></tr> 290.442 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8852860a5e65fc4e698c2771ac5d5dab"></a><!-- doxytag: member="cimg_library::CImgDisplay::wheel" ref="8852860a5e65fc4e698c2771ac5d5dab" args="" --> 290.443 +volatile int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#8852860a5e65fc4e698c2771ac5d5dab">wheel</a></td></tr> 290.444 + 290.445 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wheel state of the mouse. <br></td></tr> 290.446 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="31f08c239581b118bfa3024329c8a611"></a><!-- doxytag: member="cimg_library::CImgDisplay::key" ref="31f08c239581b118bfa3024329c8a611" args="" --> 290.447 +volatile unsigned int & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#31f08c239581b118bfa3024329c8a611">key</a></td></tr> 290.448 + 290.449 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Key value if pressed. <br></td></tr> 290.450 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="170a7c96fc7e3f262052d29b83430429"></a><!-- doxytag: member="cimg_library::CImgDisplay::released_key" ref="170a7c96fc7e3f262052d29b83430429" args="" --> 290.451 +volatile unsigned int & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#170a7c96fc7e3f262052d29b83430429">released_key</a></td></tr> 290.452 + 290.453 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Key value if released. <br></td></tr> 290.454 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6177b591b6fdd86be8a841805e35e280"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_closed" ref="6177b591b6fdd86be8a841805e35e280" args="" --> 290.455 +volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#6177b591b6fdd86be8a841805e35e280">is_closed</a></td></tr> 290.456 + 290.457 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Closed state of the window. <br></td></tr> 290.458 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c36e1e5ca1f39584ff996eddc7bc7f0e"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_resized" ref="c36e1e5ca1f39584ff996eddc7bc7f0e" args="" --> 290.459 +volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#c36e1e5ca1f39584ff996eddc7bc7f0e">is_resized</a></td></tr> 290.460 + 290.461 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Resized state of the window. <br></td></tr> 290.462 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9655ae9b239a315df522996415012d0a"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_moved" ref="9655ae9b239a315df522996415012d0a" args="" --> 290.463 +volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#9655ae9b239a315df522996415012d0a">is_moved</a></td></tr> 290.464 + 290.465 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Moved state of the window. <br></td></tr> 290.466 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e899d3a3cda0dc8e2fccac37f2258840"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_event" ref="e899d3a3cda0dc8e2fccac37f2258840" args="" --> 290.467 +volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#e899d3a3cda0dc8e2fccac37f2258840">is_event</a></td></tr> 290.468 + 290.469 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Event state of the window. <br></td></tr> 290.470 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe7ba7376c7b08dec24ac4c42d5fc753"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_keyESC" ref="fe7ba7376c7b08dec24ac4c42d5fc753" args="" --> 290.471 +volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#fe7ba7376c7b08dec24ac4c42d5fc753">is_keyESC</a></td></tr> 290.472 + 290.473 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Current state of the corresponding key (exists for all referenced keys). <br></td></tr> 290.474 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="198912a8b09f955a6510f97d62060f5c"></a><!-- doxytag: member="cimg_library::CImgDisplay::is_fullscreen" ref="198912a8b09f955a6510f97d62060f5c" args="" --> 290.475 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgDisplay.html#198912a8b09f955a6510f97d62060f5c">is_fullscreen</a></td></tr> 290.476 + 290.477 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Fullscreen state of the display. <br></td></tr> 290.478 +</table> 290.479 +<hr><a name="_details"></a><h2>Detailed Description</h2> 290.480 +This class represents a window which can display <a class="el" href="structcimg__library_1_1CImg.html">CImg</a> images and handles mouse and keyboard events. 290.481 +<p> 290.482 +Creating a <code><a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a></code> instance opens a window that can be used to display a <code>CImg<T></code> image of a <code>CImgList<T></code> image list inside. When a display is created, associated window events (such as mouse motion, keyboard and window size changes) are handled and can be easily detected by testing specific <code><a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a></code> data fields. See <a class="el" href="group__cimg__displays.html">Using Display Windows.</a> for a complete tutorial on using the <code><a class="el" href="structcimg__library_1_1CImgDisplay.html" title="This class represents a window which can display CImg images and handles mouse and...">CImgDisplay</a></code> class. <hr><h2>Constructor & Destructor Documentation</h2> 290.483 +<a class="anchor" name="9c8b6e40064be02e212ffa7059ebafc0"></a><!-- doxytag: member="cimg_library::CImgDisplay::CImgDisplay" ref="9c8b6e40064be02e212ffa7059ebafc0" args="(const unsigned int dimw, const unsigned int dimh, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.484 +<div class="memitem"> 290.485 +<div class="memproto"> 290.486 + <table class="memname"> 290.487 + <tr> 290.488 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> </td> 290.489 + <td>(</td> 290.490 + <td class="paramtype">const unsigned int </td> 290.491 + <td class="paramname"> <em>dimw</em>, </td> 290.492 + </tr> 290.493 + <tr> 290.494 + <td class="paramkey"></td> 290.495 + <td></td> 290.496 + <td class="paramtype">const unsigned int </td> 290.497 + <td class="paramname"> <em>dimh</em>, </td> 290.498 + </tr> 290.499 + <tr> 290.500 + <td class="paramkey"></td> 290.501 + <td></td> 290.502 + <td class="paramtype">const char * </td> 290.503 + <td class="paramname"> <em>title</em> = <code>0</code>, </td> 290.504 + </tr> 290.505 + <tr> 290.506 + <td class="paramkey"></td> 290.507 + <td></td> 290.508 + <td class="paramtype">const unsigned int </td> 290.509 + <td class="paramname"> <em>normalization_type</em> = <code>3</code>, </td> 290.510 + </tr> 290.511 + <tr> 290.512 + <td class="paramkey"></td> 290.513 + <td></td> 290.514 + <td class="paramtype">const bool </td> 290.515 + <td class="paramname"> <em>fullscreen_flag</em> = <code>false</code>, </td> 290.516 + </tr> 290.517 + <tr> 290.518 + <td class="paramkey"></td> 290.519 + <td></td> 290.520 + <td class="paramtype">const bool </td> 290.521 + <td class="paramname"> <em>closed_flag</em> = <code>false</code></td><td> </td> 290.522 + </tr> 290.523 + <tr> 290.524 + <td></td> 290.525 + <td>)</td> 290.526 + <td></td><td></td><td><code> [inline]</code></td> 290.527 + </tr> 290.528 + </table> 290.529 +</div> 290.530 +<div class="memdoc"> 290.531 + 290.532 +<p> 290.533 +Create a display window with a specified size <code>pwidth</code> x <code>height</code>. 290.534 +<p> 290.535 +<dl compact><dt><b>Parameters:</b></dt><dd> 290.536 + <table border="0" cellspacing="2" cellpadding="0"> 290.537 + <tr><td valign="top"></td><td valign="top"><em>dimw</em> </td><td>Width of the display window. </td></tr> 290.538 + <tr><td valign="top"></td><td valign="top"><em>dimh</em> </td><td>Height of the display window. </td></tr> 290.539 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>Title of the display window. </td></tr> 290.540 + <tr><td valign="top"></td><td valign="top"><em>normalization_type</em> </td><td>Normalization type of the display window (0=none, 1=always, 2=once). </td></tr> 290.541 + <tr><td valign="top"></td><td valign="top"><em>fullscreen_flag</em> </td><td>: Fullscreen mode. </td></tr> 290.542 + <tr><td valign="top"></td><td valign="top"><em>closed_flag</em> </td><td>: Initially visible mode. A black image will be initially displayed in the display window. </td></tr> 290.543 + </table> 290.544 +</dl> 290.545 + 290.546 +</div> 290.547 +</div><p> 290.548 +<a class="anchor" name="ae589334b16c4d1138b81b85a1471f23"></a><!-- doxytag: member="cimg_library::CImgDisplay::CImgDisplay" ref="ae589334b16c4d1138b81b85a1471f23" args="(const CImg< T > &img, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.549 +<div class="memitem"> 290.550 +<div class="memproto"> 290.551 + <table class="memname"> 290.552 + <tr> 290.553 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> </td> 290.554 + <td>(</td> 290.555 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td> 290.556 + <td class="paramname"> <em>img</em>, </td> 290.557 + </tr> 290.558 + <tr> 290.559 + <td class="paramkey"></td> 290.560 + <td></td> 290.561 + <td class="paramtype">const char * </td> 290.562 + <td class="paramname"> <em>title</em> = <code>0</code>, </td> 290.563 + </tr> 290.564 + <tr> 290.565 + <td class="paramkey"></td> 290.566 + <td></td> 290.567 + <td class="paramtype">const unsigned int </td> 290.568 + <td class="paramname"> <em>normalization_type</em> = <code>3</code>, </td> 290.569 + </tr> 290.570 + <tr> 290.571 + <td class="paramkey"></td> 290.572 + <td></td> 290.573 + <td class="paramtype">const bool </td> 290.574 + <td class="paramname"> <em>fullscreen_flag</em> = <code>false</code>, </td> 290.575 + </tr> 290.576 + <tr> 290.577 + <td class="paramkey"></td> 290.578 + <td></td> 290.579 + <td class="paramtype">const bool </td> 290.580 + <td class="paramname"> <em>closed_flag</em> = <code>false</code></td><td> </td> 290.581 + </tr> 290.582 + <tr> 290.583 + <td></td> 290.584 + <td>)</td> 290.585 + <td></td><td></td><td><code> [inline]</code></td> 290.586 + </tr> 290.587 + </table> 290.588 +</div> 290.589 +<div class="memdoc"> 290.590 + 290.591 +<p> 290.592 +Create a display window from an image. 290.593 +<p> 290.594 +<dl compact><dt><b>Parameters:</b></dt><dd> 290.595 + <table border="0" cellspacing="2" cellpadding="0"> 290.596 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>: Image that will be used to create the display window. </td></tr> 290.597 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>: Title of the display window </td></tr> 290.598 + <tr><td valign="top"></td><td valign="top"><em>normalization_type</em> </td><td>: Normalization type of the display window. </td></tr> 290.599 + <tr><td valign="top"></td><td valign="top"><em>fullscreen_flag</em> </td><td>: Fullscreen mode. </td></tr> 290.600 + <tr><td valign="top"></td><td valign="top"><em>closed_flag</em> </td><td>: Initially visible mode. </td></tr> 290.601 + </table> 290.602 +</dl> 290.603 + 290.604 +</div> 290.605 +</div><p> 290.606 +<a class="anchor" name="541a54a1c627fbc1d9b42da7af0bd082"></a><!-- doxytag: member="cimg_library::CImgDisplay::CImgDisplay" ref="541a54a1c627fbc1d9b42da7af0bd082" args="(const CImgList< T > &list, const char *title=0, const unsigned int normalization_type=3, const bool fullscreen_flag=false, const bool closed_flag=false)" --> 290.607 +<div class="memitem"> 290.608 +<div class="memproto"> 290.609 + <table class="memname"> 290.610 + <tr> 290.611 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> </td> 290.612 + <td>(</td> 290.613 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td> 290.614 + <td class="paramname"> <em>list</em>, </td> 290.615 + </tr> 290.616 + <tr> 290.617 + <td class="paramkey"></td> 290.618 + <td></td> 290.619 + <td class="paramtype">const char * </td> 290.620 + <td class="paramname"> <em>title</em> = <code>0</code>, </td> 290.621 + </tr> 290.622 + <tr> 290.623 + <td class="paramkey"></td> 290.624 + <td></td> 290.625 + <td class="paramtype">const unsigned int </td> 290.626 + <td class="paramname"> <em>normalization_type</em> = <code>3</code>, </td> 290.627 + </tr> 290.628 + <tr> 290.629 + <td class="paramkey"></td> 290.630 + <td></td> 290.631 + <td class="paramtype">const bool </td> 290.632 + <td class="paramname"> <em>fullscreen_flag</em> = <code>false</code>, </td> 290.633 + </tr> 290.634 + <tr> 290.635 + <td class="paramkey"></td> 290.636 + <td></td> 290.637 + <td class="paramtype">const bool </td> 290.638 + <td class="paramname"> <em>closed_flag</em> = <code>false</code></td><td> </td> 290.639 + </tr> 290.640 + <tr> 290.641 + <td></td> 290.642 + <td>)</td> 290.643 + <td></td><td></td><td><code> [inline]</code></td> 290.644 + </tr> 290.645 + </table> 290.646 +</div> 290.647 +<div class="memdoc"> 290.648 + 290.649 +<p> 290.650 +Create a display window from an image list. 290.651 +<p> 290.652 +<dl compact><dt><b>Parameters:</b></dt><dd> 290.653 + <table border="0" cellspacing="2" cellpadding="0"> 290.654 + <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td>: The list of images to display. </td></tr> 290.655 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>: Title of the display window </td></tr> 290.656 + <tr><td valign="top"></td><td valign="top"><em>normalization_type</em> </td><td>: Normalization type of the display window. </td></tr> 290.657 + <tr><td valign="top"></td><td valign="top"><em>fullscreen_flag</em> </td><td>: Fullscreen mode. </td></tr> 290.658 + <tr><td valign="top"></td><td valign="top"><em>closed_flag</em> </td><td>: Initially visible mode. </td></tr> 290.659 + </table> 290.660 +</dl> 290.661 + 290.662 +</div> 290.663 +</div><p> 290.664 +<a class="anchor" name="6765c355fa3ae998b9729b358f198a61"></a><!-- doxytag: member="cimg_library::CImgDisplay::CImgDisplay" ref="6765c355fa3ae998b9729b358f198a61" args="(const CImgDisplay &disp)" --> 290.665 +<div class="memitem"> 290.666 +<div class="memproto"> 290.667 + <table class="memname"> 290.668 + <tr> 290.669 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> </td> 290.670 + <td>(</td> 290.671 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a> & </td> 290.672 + <td class="paramname"> <em>disp</em> </td> 290.673 + <td> ) </td> 290.674 + <td><code> [inline]</code></td> 290.675 + </tr> 290.676 + </table> 290.677 +</div> 290.678 +<div class="memdoc"> 290.679 + 290.680 +<p> 290.681 +Create a display window by copying another one. 290.682 +<p> 290.683 +<dl compact><dt><b>Parameters:</b></dt><dd> 290.684 + <table border="0" cellspacing="2" cellpadding="0"> 290.685 + <tr><td valign="top"></td><td valign="top"><em>disp</em> </td><td>: Display window to copy. </td></tr> 290.686 + </table> 290.687 +</dl> 290.688 + 290.689 +</div> 290.690 +</div><p> 290.691 +<hr><h2>Member Function Documentation</h2> 290.692 +<a class="anchor" name="43bcd9fcc817fa49152a81a2bf6cdb20"></a><!-- doxytag: member="cimg_library::CImgDisplay::display" ref="43bcd9fcc817fa49152a81a2bf6cdb20" args="(const CImgList< T > &list, const char axis='x', const char align='p')" --> 290.693 +<div class="memitem"> 290.694 +<div class="memproto"> 290.695 + <table class="memname"> 290.696 + <tr> 290.697 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a>& display </td> 290.698 + <td>(</td> 290.699 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td> 290.700 + <td class="paramname"> <em>list</em>, </td> 290.701 + </tr> 290.702 + <tr> 290.703 + <td class="paramkey"></td> 290.704 + <td></td> 290.705 + <td class="paramtype">const char </td> 290.706 + <td class="paramname"> <em>axis</em> = <code>'x'</code>, </td> 290.707 + </tr> 290.708 + <tr> 290.709 + <td class="paramkey"></td> 290.710 + <td></td> 290.711 + <td class="paramtype">const char </td> 290.712 + <td class="paramname"> <em>align</em> = <code>'p'</code></td><td> </td> 290.713 + </tr> 290.714 + <tr> 290.715 + <td></td> 290.716 + <td>)</td> 290.717 + <td></td><td></td><td><code> [inline]</code></td> 290.718 + </tr> 290.719 + </table> 290.720 +</div> 290.721 +<div class="memdoc"> 290.722 + 290.723 +<p> 290.724 +Display an image list CImgList<T> into a display window. 290.725 +<p> 290.726 +First, all images of the list are appended into a single image used for visualization, then this image is displayed in the current display window. <dl compact><dt><b>Parameters:</b></dt><dd> 290.727 + <table border="0" cellspacing="2" cellpadding="0"> 290.728 + <tr><td valign="top"></td><td valign="top"><em>list</em> </td><td>: The list of images to display. </td></tr> 290.729 + <tr><td valign="top"></td><td valign="top"><em>axis</em> </td><td>: The axis used to append the image for visualization. Can be 'x' (default),'y','z' or 'v'. </td></tr> 290.730 + <tr><td valign="top"></td><td valign="top"><em>align</em> </td><td>: Defines the relative alignment of images when displaying images of different sizes. Can be '<code>c'</code> (centered, which is the default), '<code>p'</code> (top alignment) and '<code>n'</code> (bottom aligment). </td></tr> 290.731 + </table> 290.732 +</dl> 290.733 + 290.734 +</div> 290.735 +</div><p> 290.736 +<a class="anchor" name="fee064d94e1ec2e764af537fbee30d13"></a><!-- doxytag: member="cimg_library::CImgDisplay::resize" ref="fee064d94e1ec2e764af537fbee30d13" args="(const CImg< T > &img, const bool redraw=true)" --> 290.737 +<div class="memitem"> 290.738 +<div class="memproto"> 290.739 + <table class="memname"> 290.740 + <tr> 290.741 + <td class="memname"><a class="el" href="structcimg__library_1_1CImgDisplay.html">CImgDisplay</a>& resize </td> 290.742 + <td>(</td> 290.743 + <td class="paramtype">const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > & </td> 290.744 + <td class="paramname"> <em>img</em>, </td> 290.745 + </tr> 290.746 + <tr> 290.747 + <td class="paramkey"></td> 290.748 + <td></td> 290.749 + <td class="paramtype">const bool </td> 290.750 + <td class="paramname"> <em>redraw</em> = <code>true</code></td><td> </td> 290.751 + </tr> 290.752 + <tr> 290.753 + <td></td> 290.754 + <td>)</td> 290.755 + <td></td><td></td><td><code> [inline]</code></td> 290.756 + </tr> 290.757 + </table> 290.758 +</div> 290.759 +<div class="memdoc"> 290.760 + 290.761 +<p> 290.762 +Resize a display window with the size of an image. 290.763 +<p> 290.764 +<dl compact><dt><b>Parameters:</b></dt><dd> 290.765 + <table border="0" cellspacing="2" cellpadding="0"> 290.766 + <tr><td valign="top"></td><td valign="top"><em>img</em> </td><td>: Input image. <code>image.width</code> and <code>image.height</code> give the new dimensions of the display window. </td></tr> 290.767 + <tr><td valign="top"></td><td valign="top"><em>redraw</em> </td><td>: If <code>true</code> (default), the current displayed image in the display window will be bloc-interpolated to fit the new dimensions. If <code>false</code>, a black image will be drawn in the resized window. </td></tr> 290.768 + </table> 290.769 +</dl> 290.770 + 290.771 +</div> 290.772 +</div><p> 290.773 +</div> 290.774 +<hr noshade="noshade" size="1" width="100%"> 290.775 +<a href="http://sourceforge.net"> 290.776 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 290.777 +</a> 290.778 +<!-- Start of StatCounter Code --> 290.779 +<script type="text/javascript" language="javascript"> 290.780 +<!-- 290.781 +var sc_project=895001; 290.782 +var sc_invisible=1; 290.783 +var sc_partition=7; 290.784 +var sc_security="5ea85181"; 290.785 +//--> 290.786 +</script> 290.787 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 290.788 +<!-- End of StatCounter Code --> 290.789 +</body> 290.790 +</html>
291.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 291.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgException-members.html Mon Aug 03 14:09:20 2009 +0100 291.3 @@ -0,0 +1,145 @@ 291.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 291.5 +<head> 291.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 291.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 291.8 +<meta content="David Tschumperle" name="author"></meta> 291.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 291.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 291.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 291.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 291.13 +<style type="text/css"> 291.14 +<!-- 291.15 +body {background-color:white; font-family:sans-serif; } 291.16 +a:active{text-decoration:none; color:#303090} 291.17 +a:link{text-decoration:none; color:#303090} 291.18 +a:visited{text-decoration:none; color:#303090} 291.19 +a:hover{text-decoration:underline; color:#4E9F71} 291.20 +--> 291.21 +</style> 291.22 +<script language="JavaScript" type="text/javascript"> 291.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 291.24 + <!-- Web Site: http://redrival.com/eak/ --> 291.25 + <!-- This script and many more are available free online at --> 291.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 291.27 + <!-- Begin 291.28 + function NewWindow(mypage, myname, w, h, scroll) { 291.29 + var winl = (screen.width - w) / 2; 291.30 + var wint = (screen.height - h) / 2; 291.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 291.32 + win = window.open(mypage, myname, winprops) 291.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 291.34 + } 291.35 + // End --> 291.36 +</script> 291.37 +</head> 291.38 +<body> 291.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 291.40 + <tbody><tr><td> 291.41 + <hr noshade="noshade" size="1" width="90%"></hr> 291.42 + <center> 291.43 + <br/> 291.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 291.45 + <br/> 291.46 + </center> 291.47 + <hr noshade="noshade" size="1" width="90%"></hr> 291.48 + <center> 291.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 291.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 291.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 291.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 291.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 291.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 291.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 291.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 291.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 291.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 291.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 291.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 291.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 291.62 + </font> 291.63 + </td></tr></tbody> 291.64 + </table> 291.65 + </center> 291.66 + <hr noshade="noshade" size="1" width="90%"></hr> 291.67 + </td></tr></tbody> 291.68 +</table> 291.69 +<!-- Generated by Doxygen 1.5.7.1 --> 291.70 +<script type="text/javascript"> 291.71 +<!-- 291.72 +function changeDisplayState (e){ 291.73 + var num=this.id.replace(/[^[0-9]/g,''); 291.74 + var button=this.firstChild; 291.75 + var sectionDiv=document.getElementById('dynsection'+num); 291.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 291.77 + sectionDiv.style.display='block'; 291.78 + button.src='open.gif'; 291.79 + }else{ 291.80 + sectionDiv.style.display='none'; 291.81 + button.src='closed.gif'; 291.82 + } 291.83 +} 291.84 +function initDynSections(){ 291.85 + var divs=document.getElementsByTagName('div'); 291.86 + var sectionCounter=1; 291.87 + for(var i=0;i<divs.length-1;i++){ 291.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 291.89 + var header=divs[i]; 291.90 + var section=divs[i+1]; 291.91 + var button=header.firstChild; 291.92 + if (button!='IMG'){ 291.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 291.94 + button=document.createElement('img'); 291.95 + divs[i].insertBefore(button,divs[i].firstChild); 291.96 + } 291.97 + header.style.cursor='pointer'; 291.98 + header.onclick=changeDisplayState; 291.99 + header.id='dynheader'+sectionCounter; 291.100 + button.src='closed.gif'; 291.101 + section.id='dynsection'+sectionCounter; 291.102 + section.style.display='none'; 291.103 + section.style.marginLeft='14px'; 291.104 + sectionCounter++; 291.105 + } 291.106 + } 291.107 +} 291.108 +window.onload = initDynSections; 291.109 +--> 291.110 +</script> 291.111 +<div class="navigation" id="top"> 291.112 + <div class="tabs"> 291.113 + <ul> 291.114 + <li><a href="index.html"><span>Main Page</span></a></li> 291.115 + <li><a href="modules.html"><span>Modules</span></a></li> 291.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 291.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 291.118 + </ul> 291.119 + </div> 291.120 + <div class="tabs"> 291.121 + <ul> 291.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 291.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 291.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 291.125 + </ul> 291.126 + </div> 291.127 +</div> 291.128 +<div class="contents"> 291.129 +<h1>CImgException Member List</h1>This is the complete list of members for <a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a>, including all inherited members.<p><table> 291.130 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgException.html#4698f05956e353cfe926fc59e4b50a2e">message</a></td><td><a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a></td><td></td></tr> 291.131 +</table></div> 291.132 +<hr noshade="noshade" size="1" width="100%"> 291.133 +<a href="http://sourceforge.net"> 291.134 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 291.135 +</a> 291.136 +<!-- Start of StatCounter Code --> 291.137 +<script type="text/javascript" language="javascript"> 291.138 +<!-- 291.139 +var sc_project=895001; 291.140 +var sc_invisible=1; 291.141 +var sc_partition=7; 291.142 +var sc_security="5ea85181"; 291.143 +//--> 291.144 +</script> 291.145 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 291.146 +<!-- End of StatCounter Code --> 291.147 +</body> 291.148 +</html>
292.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 292.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgException.html Mon Aug 03 14:09:20 2009 +0100 292.3 @@ -0,0 +1,196 @@ 292.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 292.5 +<head> 292.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 292.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 292.8 +<meta content="David Tschumperle" name="author"></meta> 292.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 292.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 292.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 292.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 292.13 +<style type="text/css"> 292.14 +<!-- 292.15 +body {background-color:white; font-family:sans-serif; } 292.16 +a:active{text-decoration:none; color:#303090} 292.17 +a:link{text-decoration:none; color:#303090} 292.18 +a:visited{text-decoration:none; color:#303090} 292.19 +a:hover{text-decoration:underline; color:#4E9F71} 292.20 +--> 292.21 +</style> 292.22 +<script language="JavaScript" type="text/javascript"> 292.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 292.24 + <!-- Web Site: http://redrival.com/eak/ --> 292.25 + <!-- This script and many more are available free online at --> 292.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 292.27 + <!-- Begin 292.28 + function NewWindow(mypage, myname, w, h, scroll) { 292.29 + var winl = (screen.width - w) / 2; 292.30 + var wint = (screen.height - h) / 2; 292.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 292.32 + win = window.open(mypage, myname, winprops) 292.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 292.34 + } 292.35 + // End --> 292.36 +</script> 292.37 +</head> 292.38 +<body> 292.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 292.40 + <tbody><tr><td> 292.41 + <hr noshade="noshade" size="1" width="90%"></hr> 292.42 + <center> 292.43 + <br/> 292.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 292.45 + <br/> 292.46 + </center> 292.47 + <hr noshade="noshade" size="1" width="90%"></hr> 292.48 + <center> 292.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 292.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 292.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 292.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 292.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 292.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 292.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 292.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 292.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 292.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 292.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 292.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 292.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 292.62 + </font> 292.63 + </td></tr></tbody> 292.64 + </table> 292.65 + </center> 292.66 + <hr noshade="noshade" size="1" width="90%"></hr> 292.67 + </td></tr></tbody> 292.68 +</table> 292.69 +<!-- Generated by Doxygen 1.5.7.1 --> 292.70 +<script type="text/javascript"> 292.71 +<!-- 292.72 +function changeDisplayState (e){ 292.73 + var num=this.id.replace(/[^[0-9]/g,''); 292.74 + var button=this.firstChild; 292.75 + var sectionDiv=document.getElementById('dynsection'+num); 292.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 292.77 + sectionDiv.style.display='block'; 292.78 + button.src='open.gif'; 292.79 + }else{ 292.80 + sectionDiv.style.display='none'; 292.81 + button.src='closed.gif'; 292.82 + } 292.83 +} 292.84 +function initDynSections(){ 292.85 + var divs=document.getElementsByTagName('div'); 292.86 + var sectionCounter=1; 292.87 + for(var i=0;i<divs.length-1;i++){ 292.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 292.89 + var header=divs[i]; 292.90 + var section=divs[i+1]; 292.91 + var button=header.firstChild; 292.92 + if (button!='IMG'){ 292.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 292.94 + button=document.createElement('img'); 292.95 + divs[i].insertBefore(button,divs[i].firstChild); 292.96 + } 292.97 + header.style.cursor='pointer'; 292.98 + header.onclick=changeDisplayState; 292.99 + header.id='dynheader'+sectionCounter; 292.100 + button.src='closed.gif'; 292.101 + section.id='dynsection'+sectionCounter; 292.102 + section.style.display='none'; 292.103 + section.style.marginLeft='14px'; 292.104 + sectionCounter++; 292.105 + } 292.106 + } 292.107 +} 292.108 +window.onload = initDynSections; 292.109 +--> 292.110 +</script> 292.111 +<div class="navigation" id="top"> 292.112 + <div class="tabs"> 292.113 + <ul> 292.114 + <li><a href="index.html"><span>Main Page</span></a></li> 292.115 + <li><a href="modules.html"><span>Modules</span></a></li> 292.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 292.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 292.118 + </ul> 292.119 + </div> 292.120 + <div class="tabs"> 292.121 + <ul> 292.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 292.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 292.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 292.125 + </ul> 292.126 + </div> 292.127 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="structcimg__library_1_1CImgException.html">CImgException</a> 292.128 + </div> 292.129 +</div> 292.130 +<div class="contents"> 292.131 +<h1>CImgException Struct Reference</h1><!-- doxytag: class="cimg_library::CImgException" -->Instances of this class are thrown when errors occur during a CImg library function call. 292.132 +<a href="#_details">More...</a> 292.133 +<p> 292.134 +Inherited by CImgArgumentException, CImgDisplayException, CImgInstanceException, CImgIOException, and CImgWarningException. 292.135 +<p> 292.136 + 292.137 +<p> 292.138 +<a href="structcimg__library_1_1CImgException-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 292.139 +<tr><td></td></tr> 292.140 +<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> 292.141 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4698f05956e353cfe926fc59e4b50a2e"></a><!-- doxytag: member="cimg_library::CImgException::message" ref="4698f05956e353cfe926fc59e4b50a2e" args="[1024]" --> 292.142 +char </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgException.html#4698f05956e353cfe926fc59e4b50a2e">message</a> [1024]</td></tr> 292.143 + 292.144 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Message associated with the error that thrown the exception. <br></td></tr> 292.145 +</table> 292.146 +<hr><a name="_details"></a><h2>Detailed Description</h2> 292.147 +Instances of this class are thrown when errors occur during a CImg library function call. 292.148 +<p> 292.149 +<h2><a class="anchor" name="ex1"> 292.150 +Overview</a></h2> 292.151 +<a class="el" href="structcimg__library_1_1CImgException.html" title="Instances of this class are thrown when errors occur during a CImg library function...">CImgException</a> is the base class of CImg exceptions. Exceptions are thrown by the CImg Library when an error occured in a CImg library function call. <a class="el" href="structcimg__library_1_1CImgException.html" title="Instances of this class are thrown when errors occur during a CImg library function...">CImgException</a> is seldom thrown itself. Children classes that specify the kind of error encountered are generally used instead. These sub-classes are :<p> 292.152 +<ul> 292.153 +<li><b>CImgInstanceException</b> : Thrown when the instance associated to the called CImg function is not correctly defined. Generally, this exception is thrown when one tries to process <em>empty</em> images. The example below will throw a <em>CImgInstanceException</em>. <div class="fragment"><pre class="fragment"> CImg<float> img; <span class="comment">// Construct an empty image.</span> 292.154 + img.blur(10); <span class="comment">// Try to blur the image.</span> 292.155 +</pre></div></li></ul> 292.156 +<p> 292.157 +<ul> 292.158 +<li><b>CImgArgumentException</b> : Thrown when one of the arguments given to the called CImg function is not correct. Generally, this exception is thrown when arguments passed to the function are outside an admissible range of values. The example below will throw a <em>CImgArgumentException</em>. <div class="fragment"><pre class="fragment"> CImg<float> img(100,100,1,3); <span class="comment">// Define a 100x100 color image with float pixels.</span> 292.159 + img = 0; <span class="comment">// Try to fill pixels from the 0 pointer (invalid argument to operator=() ).</span> 292.160 +</pre></div></li></ul> 292.161 +<p> 292.162 +<ul> 292.163 +<li><b>CImgIOException</b> : Thrown when an error occured when trying to load or save image files. The example below will throw a <em>CImgIOException</em>. <div class="fragment"><pre class="fragment"> CImg<float> img(<span class="stringliteral">"file_doesnt_exist.jpg"</span>); <span class="comment">// Try to load a file that doesn't exist.</span> 292.164 +</pre></div></li></ul> 292.165 +<p> 292.166 +<ul> 292.167 +<li><b>CImgDisplayException</b> : Thrown when an error occured when trying to display an image in a window. This exception is thrown when image display request cannot be satisfied.</li></ul> 292.168 +<p> 292.169 +The parent class <a class="el" href="structcimg__library_1_1CImgException.html" title="Instances of this class are thrown when errors occur during a CImg library function...">CImgException</a> may be thrown itself when errors that cannot be classified in one of the above type occur. It is recommended not to throw CImgExceptions yourself, since there are normally reserved to CImg Library functions. <b>CImgInstanceException</b>, <b>CImgArgumentException</b>, <b>CImgIOException</b> and <b>CImgDisplayException</b> are simple subclasses of <a class="el" href="structcimg__library_1_1CImgException.html" title="Instances of this class are thrown when errors occur during a CImg library function...">CImgException</a> and are thus not detailled more in this reference documentation.<h2><a class="anchor" name="ex2"> 292.170 +Exception handling</a></h2> 292.171 +When an error occurs, the CImg Library first displays the error in a modal window. Then, it throws an instance of the corresponding exception class, generally leading the program to stop (this is the default behavior). You can bypass this default behavior by handling the exceptions yourself, using a code block <code>try { ... } catch() { ... }</code>. In this case, you can avoid the apparition of the modal window, by defining the environment variable <code>cimg_debug</code> to 0 before including the CImg header file. The example below shows how to cleanly handle CImg Library exceptions : <div class="fragment"><pre class="fragment"><span class="preprocessor"> #define cimg_debug 0 // Disable modal window in CImg exceptions.</span> 292.172 +<span class="preprocessor"></span><span class="preprocessor"> #define "CImg.h"</span> 292.173 +<span class="preprocessor"></span> <span class="keywordtype">int</span> main() { 292.174 + <span class="keywordflow">try</span> { 292.175 + ...; <span class="comment">// Here, do what you want.</span> 292.176 + } 292.177 + <span class="keywordflow">catch</span> (CImgInstanceException &e) { 292.178 + std::fprintf(stderr,<span class="stringliteral">"CImg Library Error : %s"</span>,e.message); <span class="comment">// Display your own error message</span> 292.179 + ... <span class="comment">// Do what you want now.</span> 292.180 + } 292.181 + } 292.182 +</pre></div> </div> 292.183 +<hr noshade="noshade" size="1" width="100%"> 292.184 +<a href="http://sourceforge.net"> 292.185 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 292.186 +</a> 292.187 +<!-- Start of StatCounter Code --> 292.188 +<script type="text/javascript" language="javascript"> 292.189 +<!-- 292.190 +var sc_project=895001; 292.191 +var sc_invisible=1; 292.192 +var sc_partition=7; 292.193 +var sc_security="5ea85181"; 292.194 +//--> 292.195 +</script> 292.196 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 292.197 +<!-- End of StatCounter Code --> 292.198 +</body> 292.199 +</html>
293.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 293.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgList-members.html Mon Aug 03 14:09:20 2009 +0100 293.3 @@ -0,0 +1,220 @@ 293.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 293.5 +<head> 293.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 293.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 293.8 +<meta content="David Tschumperle" name="author"></meta> 293.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 293.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 293.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 293.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 293.13 +<style type="text/css"> 293.14 +<!-- 293.15 +body {background-color:white; font-family:sans-serif; } 293.16 +a:active{text-decoration:none; color:#303090} 293.17 +a:link{text-decoration:none; color:#303090} 293.18 +a:visited{text-decoration:none; color:#303090} 293.19 +a:hover{text-decoration:underline; color:#4E9F71} 293.20 +--> 293.21 +</style> 293.22 +<script language="JavaScript" type="text/javascript"> 293.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 293.24 + <!-- Web Site: http://redrival.com/eak/ --> 293.25 + <!-- This script and many more are available free online at --> 293.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 293.27 + <!-- Begin 293.28 + function NewWindow(mypage, myname, w, h, scroll) { 293.29 + var winl = (screen.width - w) / 2; 293.30 + var wint = (screen.height - h) / 2; 293.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 293.32 + win = window.open(mypage, myname, winprops) 293.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 293.34 + } 293.35 + // End --> 293.36 +</script> 293.37 +</head> 293.38 +<body> 293.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 293.40 + <tbody><tr><td> 293.41 + <hr noshade="noshade" size="1" width="90%"></hr> 293.42 + <center> 293.43 + <br/> 293.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 293.45 + <br/> 293.46 + </center> 293.47 + <hr noshade="noshade" size="1" width="90%"></hr> 293.48 + <center> 293.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 293.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 293.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 293.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 293.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 293.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 293.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 293.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 293.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 293.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 293.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 293.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 293.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 293.62 + </font> 293.63 + </td></tr></tbody> 293.64 + </table> 293.65 + </center> 293.66 + <hr noshade="noshade" size="1" width="90%"></hr> 293.67 + </td></tr></tbody> 293.68 +</table> 293.69 +<!-- Generated by Doxygen 1.5.7.1 --> 293.70 +<script type="text/javascript"> 293.71 +<!-- 293.72 +function changeDisplayState (e){ 293.73 + var num=this.id.replace(/[^[0-9]/g,''); 293.74 + var button=this.firstChild; 293.75 + var sectionDiv=document.getElementById('dynsection'+num); 293.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 293.77 + sectionDiv.style.display='block'; 293.78 + button.src='open.gif'; 293.79 + }else{ 293.80 + sectionDiv.style.display='none'; 293.81 + button.src='closed.gif'; 293.82 + } 293.83 +} 293.84 +function initDynSections(){ 293.85 + var divs=document.getElementsByTagName('div'); 293.86 + var sectionCounter=1; 293.87 + for(var i=0;i<divs.length-1;i++){ 293.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 293.89 + var header=divs[i]; 293.90 + var section=divs[i+1]; 293.91 + var button=header.firstChild; 293.92 + if (button!='IMG'){ 293.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 293.94 + button=document.createElement('img'); 293.95 + divs[i].insertBefore(button,divs[i].firstChild); 293.96 + } 293.97 + header.style.cursor='pointer'; 293.98 + header.onclick=changeDisplayState; 293.99 + header.id='dynheader'+sectionCounter; 293.100 + button.src='closed.gif'; 293.101 + section.id='dynsection'+sectionCounter; 293.102 + section.style.display='none'; 293.103 + section.style.marginLeft='14px'; 293.104 + sectionCounter++; 293.105 + } 293.106 + } 293.107 +} 293.108 +window.onload = initDynSections; 293.109 +--> 293.110 +</script> 293.111 +<div class="navigation" id="top"> 293.112 + <div class="tabs"> 293.113 + <ul> 293.114 + <li><a href="index.html"><span>Main Page</span></a></li> 293.115 + <li><a href="modules.html"><span>Modules</span></a></li> 293.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 293.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 293.118 + </ul> 293.119 + </div> 293.120 + <div class="tabs"> 293.121 + <ul> 293.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 293.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 293.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 293.125 + </ul> 293.126 + </div> 293.127 +</div> 293.128 +<div class="contents"> 293.129 +<h1>CImgList Member List</h1>This is the complete list of members for <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>, including all inherited members.<p><table> 293.130 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#77f67312de1a49a344111a595893f0f9">_save_cimg</a>(cimg_std::FILE *const file, const char *const filename, const bool compression) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.131 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#ed8b8acab64fd4c342e533c72f467438">allocsize</a></td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.132 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#c1fdedd65f2728500da3af7e94c19ae2">assign</a>()</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.133 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#6157637aebbb3b6680ae06ca7d2a2281">assign</a>(const unsigned int n)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.134 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#53f3daf167d5eaa3c3ddda1afd2c36fc">assign</a>(const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.135 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#61a5346d40b9cee7cf1cb1181d7b3887">assign</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.136 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#fe69df2191dc9dbf9b53ecb2961871af">assign</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.137 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#6457a24987e92c04b573c8c1c5fd1328">assign</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.138 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#0841eec5704b95c2ff576bded488261b">assign</a>(const CImgList< t > &list)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.139 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#01fc32c65505eb67c472f275f16a2f3e">assign</a>(const CImgList< t > &list, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.140 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#40666c4099c041777ca2ed1b0747f81b">assign</a>(const unsigned int n, const CImg< t > &img, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.141 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#1e358f65ab400e6a27d80f26afe9aeb6">assign</a>(const CImg< t > &img, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.142 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#fe8d25e995a3d934696796718057b584">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.143 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#546cab2b857ae5a3d50224160a222baf">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.144 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b5d15e167713cc7cdf8309223faeceb4">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.145 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#554edc1d750adab1e29df397e1f48a1f">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.146 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#9b4e4f632b087b23675c64c18c5dc4a9">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.147 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#d221dc2a95d6921ad185721030882d62">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.148 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#c73f5df1ac298719adf44a9ea527e0a3">assign</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8, const bool shared=false)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.149 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#15514475aae54fae9ea5cbd516579095">assign</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.150 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#d9806b5302d100f40e74c2ca0e0616d1">CImgList</a>()</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.151 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#32d594cbd3687a11f87b96be504e54ba">CImgList</a>(const unsigned int n)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, explicit]</code></td></tr> 293.152 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#4c45cdb2fcd20003f727a885879db38f">CImgList</a>(const CImgList< t > &list)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.153 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#67a22c62beff88afae317fe4ae59aa0e">CImgList</a>(const CImgList< t > &list, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.154 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#9a7581b4301d0ca9e10e849456e0e137">CImgList</a>(const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.155 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#6e5e00752f2628fc717c711282cb0a5e">CImgList</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.156 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#f9977651c138a1c1855822d58cf57999">CImgList</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.157 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b5ec97cd1b911d55f893768d5aed8f35">CImgList</a>(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.158 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#62bc2b499f00fbe9a647074f807444a7">CImgList</a>(const unsigned int n, const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.159 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#2bfa2b510b4cb878c884b629d3dab95a">CImgList</a>(const unsigned int n, const CImg< t > &img, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.160 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#84201ac60c52160f7643655855b70279">CImgList</a>(const CImg< t > &img)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, explicit]</code></td></tr> 293.161 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#067f5550d22707d51823f969af480fd7">CImgList</a>(const CImg< t > &img, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, explicit]</code></td></tr> 293.162 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#834ea2e8535dd9c5be582c180659bbfc">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.163 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#376ce49d45349f5390b8bc129064f907">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.164 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#5e2dc89c70ddb3813a0f17f7ebc9f893">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.165 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#7af8c6a69ab5fe444ff853016000be72">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.166 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#ffbbfabcc747538adab4dd63e3476174">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.167 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#d3da597982ecee9370e2b65f64ef37b3">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.168 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#4e4b5d47868d80e15c661fcaa734e644">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.169 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#24e8a5f98d16ebe202faef91c4d9ba6e">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.170 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#aa8df8bc3b26f1f8038681f2c70a7091">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.171 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#579e28d793ac269f66f2dcddd10ee1c1">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.172 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#52f4d44ebe8933478465e4b8bcc32811">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.173 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#d86c8fa0ff7fd6d11c5b9333684939d4">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.174 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#bfa6ce0d6c8eec51049a40ec86fd24ed">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.175 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#3443bf1898bcc43cb77abc1e14dc952b">CImgList</a>(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8, const bool shared)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.176 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#31c34ce18e197409013e913dbab5a82e">CImgList</a>(const char *const filename)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.177 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b7aec05f7791abe11f1d0f0cdc8bd24e">clear</a>()</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.178 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#449d35504b2500efc67af75ba3bf9277">const_iterator</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.179 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#7b2148b1950a98016bd8d1407062d798">data</a></td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.180 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.181 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#bf45495f91f5e6e04bd597f0dd5d1ee4">is_sameN</a>(const unsigned int n) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.182 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#9bb4d12695868ddb3da5054fbc8e70f0">is_sameN</a>(const CImgList< t > &list) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.183 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#7c1c29e319c572a740b103b024f37034">iterator</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.184 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#9195765cb9bde15990a29ccd9306532c">load_tiff</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.185 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a>() const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.186 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b7d3a61366cf906c03af6c8fa13309a7">pixel_type</a>()</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, static]</code></td></tr> 293.187 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#814fe09c21090e7673d96c6145fc64bf">save</a>(const char *const filename, const int number=-1) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.188 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#9f48d7b0d887db4f92ad558abe5eeb60">save_cimg</a>(cimg_std::FILE *file, const bool compress=false) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.189 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#40c2aa789c4ef09df224acb0634ac96f">save_cimg</a>(const char *const filename, const bool compress=false) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.190 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#c434001d1040bd6aced992817fe7b99d">save_cimg</a>(const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.191 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#486f958aaadefa57f7f1dadad39cd2be">save_cimg</a>(cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.192 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#fb44ea999d4ca96e7706a7ad8154724b">save_empty_cimg</a>(const char *const filename, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, static]</code></td></tr> 293.193 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b0982e471b4e21fe99cedd085fb8ee23">save_empty_cimg</a>(cimg_std::FILE *const file, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline, static]</code></td></tr> 293.194 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#08addbada69513e00079ff437b669138">save_ffmpeg</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.195 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#3b4ad0233afe8d38700bb1d0d0dc6ecc">save_ffmpeg_external</a>(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.196 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#e9d11f1d698df3ffe1ef4a9ede594e1e">save_gzip_external</a>(const char *const filename) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.197 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#b46dd49d74b8143ef7229b75a7ab5b7c">save_off</a>(const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.198 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#8bdc602c7752095fa70a41c08b2bcc8a">save_off</a>(cimg_std::FILE *const file, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.199 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#09200f3c4abcfa6572ff2686731c87b7">save_yuv</a>(const char *const filename=0, const bool rgb2yuv=true) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.200 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#c2fb93b79c1398625c5b84405b27b324">save_yuv</a>(cimg_std::FILE *const file, const bool rgb2yuv=true) const </td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.201 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#ac913b3a1f6ef005d66bf7a84428773e">size</a></td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.202 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#6c12806e432683b06fbc8919daa0a3d7">swap</a>(CImgList< T > &list)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.203 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#ceb0faa44647370b3fe679edad1eec36">transfer_to</a>(CImgList< t > &list)</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.204 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#265a253612b46abed17c61b0a5e5ce30">value_type</a> typedef</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td></td></tr> 293.205 + <tr class="memlist"><td><a class="el" href="structcimg__library_1_1CImgList.html#30a624e43eb40c6df0fa1fdacf5c6235">~CImgList</a>()</td><td><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a></td><td><code> [inline]</code></td></tr> 293.206 +</table></div> 293.207 +<hr noshade="noshade" size="1" width="100%"> 293.208 +<a href="http://sourceforge.net"> 293.209 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 293.210 +</a> 293.211 +<!-- Start of StatCounter Code --> 293.212 +<script type="text/javascript" language="javascript"> 293.213 +<!-- 293.214 +var sc_project=895001; 293.215 +var sc_invisible=1; 293.216 +var sc_partition=7; 293.217 +var sc_security="5ea85181"; 293.218 +//--> 293.219 +</script> 293.220 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 293.221 +<!-- End of StatCounter Code --> 293.222 +</body> 293.223 +</html>
294.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 294.2 +++ b/PTdecode/CImg-1.3.0/html/reference/structcimg__library_1_1CImgList.html Mon Aug 03 14:09:20 2009 +0100 294.3 @@ -0,0 +1,652 @@ 294.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 294.5 +<head> 294.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 294.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 294.8 +<meta content="David Tschumperle" name="author"></meta> 294.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 294.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 294.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 294.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 294.13 +<style type="text/css"> 294.14 +<!-- 294.15 +body {background-color:white; font-family:sans-serif; } 294.16 +a:active{text-decoration:none; color:#303090} 294.17 +a:link{text-decoration:none; color:#303090} 294.18 +a:visited{text-decoration:none; color:#303090} 294.19 +a:hover{text-decoration:underline; color:#4E9F71} 294.20 +--> 294.21 +</style> 294.22 +<script language="JavaScript" type="text/javascript"> 294.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 294.24 + <!-- Web Site: http://redrival.com/eak/ --> 294.25 + <!-- This script and many more are available free online at --> 294.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 294.27 + <!-- Begin 294.28 + function NewWindow(mypage, myname, w, h, scroll) { 294.29 + var winl = (screen.width - w) / 2; 294.30 + var wint = (screen.height - h) / 2; 294.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 294.32 + win = window.open(mypage, myname, winprops) 294.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 294.34 + } 294.35 + // End --> 294.36 +</script> 294.37 +</head> 294.38 +<body> 294.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 294.40 + <tbody><tr><td> 294.41 + <hr noshade="noshade" size="1" width="90%"></hr> 294.42 + <center> 294.43 + <br/> 294.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 294.45 + <br/> 294.46 + </center> 294.47 + <hr noshade="noshade" size="1" width="90%"></hr> 294.48 + <center> 294.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 294.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 294.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 294.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 294.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 294.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 294.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 294.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 294.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 294.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 294.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 294.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 294.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 294.62 + </font> 294.63 + </td></tr></tbody> 294.64 + </table> 294.65 + </center> 294.66 + <hr noshade="noshade" size="1" width="90%"></hr> 294.67 + </td></tr></tbody> 294.68 +</table> 294.69 +<!-- Generated by Doxygen 1.5.7.1 --> 294.70 +<script type="text/javascript"> 294.71 +<!-- 294.72 +function changeDisplayState (e){ 294.73 + var num=this.id.replace(/[^[0-9]/g,''); 294.74 + var button=this.firstChild; 294.75 + var sectionDiv=document.getElementById('dynsection'+num); 294.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 294.77 + sectionDiv.style.display='block'; 294.78 + button.src='open.gif'; 294.79 + }else{ 294.80 + sectionDiv.style.display='none'; 294.81 + button.src='closed.gif'; 294.82 + } 294.83 +} 294.84 +function initDynSections(){ 294.85 + var divs=document.getElementsByTagName('div'); 294.86 + var sectionCounter=1; 294.87 + for(var i=0;i<divs.length-1;i++){ 294.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 294.89 + var header=divs[i]; 294.90 + var section=divs[i+1]; 294.91 + var button=header.firstChild; 294.92 + if (button!='IMG'){ 294.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 294.94 + button=document.createElement('img'); 294.95 + divs[i].insertBefore(button,divs[i].firstChild); 294.96 + } 294.97 + header.style.cursor='pointer'; 294.98 + header.onclick=changeDisplayState; 294.99 + header.id='dynheader'+sectionCounter; 294.100 + button.src='closed.gif'; 294.101 + section.id='dynsection'+sectionCounter; 294.102 + section.style.display='none'; 294.103 + section.style.marginLeft='14px'; 294.104 + sectionCounter++; 294.105 + } 294.106 + } 294.107 +} 294.108 +window.onload = initDynSections; 294.109 +--> 294.110 +</script> 294.111 +<div class="navigation" id="top"> 294.112 + <div class="tabs"> 294.113 + <ul> 294.114 + <li><a href="index.html"><span>Main Page</span></a></li> 294.115 + <li><a href="modules.html"><span>Modules</span></a></li> 294.116 + <li><a href="namespaces.html"><span>Namespaces</span></a></li> 294.117 + <li class="current"><a href="annotated.html"><span>Classes</span></a></li> 294.118 + </ul> 294.119 + </div> 294.120 + <div class="tabs"> 294.121 + <ul> 294.122 + <li><a href="annotated.html"><span>Class List</span></a></li> 294.123 + <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> 294.124 + <li><a href="functions.html"><span>Class Members</span></a></li> 294.125 + </ul> 294.126 + </div> 294.127 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a> 294.128 + </div> 294.129 +</div> 294.130 +<div class="contents"> 294.131 +<h1>CImgList Struct Template Reference</h1><!-- doxytag: class="cimg_library::CImgList" -->Class representing list of images CImg<T>. 294.132 +<a href="#_details">More...</a> 294.133 +<p> 294.134 + 294.135 +<p> 294.136 +<a href="structcimg__library_1_1CImgList-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> 294.137 +<tr><td></td></tr> 294.138 +<tr><td colspan="2"><br><h2>Constructors - Destructor - Copy</h2></td></tr> 294.139 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f55eeaf6d1a4ceed4d68e94c6f0433eb"></a><!-- doxytag: member="cimg_library::CImgList::Y" ref="f55eeaf6d1a4ceed4d68e94c6f0433eb" args="" --> 294.140 +Y V V </td><td class="memItemRight" valign="bottom"><b>Y</b></td></tr> 294.141 + 294.142 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="44309571bb9081e674141fa2b60db780"></a><!-- doxytag: member="cimg_library::CImgList::Z" ref="44309571bb9081e674141fa2b60db780" args="" --> 294.143 +Y V V Z </td><td class="memItemRight" valign="bottom"><b>Z</b></td></tr> 294.144 + 294.145 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c384da3026d8b61107e41d60ed12f77"></a><!-- doxytag: member="cimg_library::CImgList::dy" ref="1c384da3026d8b61107e41d60ed12f77" args="" --> 294.146 +Y V V Z V const unsigned int </td><td class="memItemRight" valign="bottom"><b>dy</b></td></tr> 294.147 + 294.148 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d3db450e74ce54c43c391dcef6381431"></a><!-- doxytag: member="cimg_library::CImgList::dz" ref="d3db450e74ce54c43c391dcef6381431" args="" --> 294.149 +Y V V Z V const unsigned int <br class="typebreak"> 294.150 +const unsigned int </td><td class="memItemRight" valign="bottom"><b>dz</b></td></tr> 294.151 + 294.152 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="30a624e43eb40c6df0fa1fdacf5c6235"></a><!-- doxytag: member="cimg_library::CImgList::~CImgList" ref="30a624e43eb40c6df0fa1fdacf5c6235" args="()" --> 294.153 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#30a624e43eb40c6df0fa1fdacf5c6235">~CImgList</a> ()</td></tr> 294.154 + 294.155 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br></td></tr> 294.156 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d9806b5302d100f40e74c2ca0e0616d1"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="d9806b5302d100f40e74c2ca0e0616d1" args="()" --> 294.157 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#d9806b5302d100f40e74c2ca0e0616d1">CImgList</a> ()</td></tr> 294.158 + 294.159 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br></td></tr> 294.160 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="32d594cbd3687a11f87b96be504e54ba"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="32d594cbd3687a11f87b96be504e54ba" args="(const unsigned int n)" --> 294.161 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#32d594cbd3687a11f87b96be504e54ba">CImgList</a> (const unsigned int n)</td></tr> 294.162 + 294.163 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list containing n empty images. <br></td></tr> 294.164 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4c45cdb2fcd20003f727a885879db38f"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="4c45cdb2fcd20003f727a885879db38f" args="(const CImgList< t > &list)" --> 294.165 +template<typename t > </td></tr> 294.166 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#4c45cdb2fcd20003f727a885879db38f">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list)</td></tr> 294.167 + 294.168 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Default copy constructor. <br></td></tr> 294.169 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="505af5fd1adf73d3429a95bfe6d10f5e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="505af5fd1adf73d3429a95bfe6d10f5e" args="(const CImgList< T > &list)" --> 294.170 + </td><td class="memItemRight" valign="bottom"><b>CImgList</b> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list)</td></tr> 294.171 + 294.172 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="67a22c62beff88afae317fe4ae59aa0e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="67a22c62beff88afae317fe4ae59aa0e" args="(const CImgList< t > &list, const bool shared)" --> 294.173 +template<typename t > </td></tr> 294.174 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#67a22c62beff88afae317fe4ae59aa0e">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list, const bool shared)</td></tr> 294.175 + 294.176 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Advanced copy constructor. <br></td></tr> 294.177 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d02c3814cf4a302bbf74568d49bfc08e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="d02c3814cf4a302bbf74568d49bfc08e" args="(const CImgList< T > &list, const bool shared)" --> 294.178 + </td><td class="memItemRight" valign="bottom"><b>CImgList</b> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list, const bool shared)</td></tr> 294.179 + 294.180 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a7581b4301d0ca9e10e849456e0e137"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="9a7581b4301d0ca9e10e849456e0e137" args="(const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)" --> 294.181 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#9a7581b4301d0ca9e10e849456e0e137">CImgList</a> (const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)</td></tr> 294.182 + 294.183 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list containing n images with specified size. <br></td></tr> 294.184 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6e5e00752f2628fc717c711282cb0a5e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="6e5e00752f2628fc717c711282cb0a5e" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)" --> 294.185 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#6e5e00752f2628fc717c711282cb0a5e">CImgList</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)</td></tr> 294.186 + 294.187 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list containing n images with specified size, filled with specified value. <br></td></tr> 294.188 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9977651c138a1c1855822d58cf57999"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="f9977651c138a1c1855822d58cf57999" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)" --> 294.189 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#f9977651c138a1c1855822d58cf57999">CImgList</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)</td></tr> 294.190 + 294.191 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list containing n images with specified size and specified pixel values (int version). <br></td></tr> 294.192 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b5ec97cd1b911d55f893768d5aed8f35"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="b5ec97cd1b911d55f893768d5aed8f35" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)" --> 294.193 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b5ec97cd1b911d55f893768d5aed8f35">CImgList</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)</td></tr> 294.194 + 294.195 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list containing n images with specified size and specified pixel values (double version). <br></td></tr> 294.196 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="62bc2b499f00fbe9a647074f807444a7"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="62bc2b499f00fbe9a647074f807444a7" args="(const unsigned int n, const CImg< t > &img)" --> 294.197 +template<typename t > </td></tr> 294.198 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#62bc2b499f00fbe9a647074f807444a7">CImgList</a> (const unsigned int n, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 294.199 + 294.200 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a list containing n copies of the image img. <br></td></tr> 294.201 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2bfa2b510b4cb878c884b629d3dab95a"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="2bfa2b510b4cb878c884b629d3dab95a" args="(const unsigned int n, const CImg< t > &img, const bool shared)" --> 294.202 +template<typename t > </td></tr> 294.203 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#2bfa2b510b4cb878c884b629d3dab95a">CImgList</a> (const unsigned int n, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared)</td></tr> 294.204 + 294.205 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a list containing n copies of the image img, forcing the shared state. <br></td></tr> 294.206 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="84201ac60c52160f7643655855b70279"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="84201ac60c52160f7643655855b70279" args="(const CImg< t > &img)" --> 294.207 +template<typename t > </td></tr> 294.208 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#84201ac60c52160f7643655855b70279">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img)</td></tr> 294.209 + 294.210 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from one image. <br></td></tr> 294.211 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="067f5550d22707d51823f969af480fd7"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="067f5550d22707d51823f969af480fd7" args="(const CImg< t > &img, const bool shared)" --> 294.212 +template<typename t > </td></tr> 294.213 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#067f5550d22707d51823f969af480fd7">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared)</td></tr> 294.214 + 294.215 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from one image, forcing the shared state. <br></td></tr> 294.216 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="834ea2e8535dd9c5be582c180659bbfc"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="834ea2e8535dd9c5be582c180659bbfc" args="(const CImg< t1 > &img1, const CImg< t2 > &img2)" --> 294.217 +template<typename t1 , typename t2 > </td></tr> 294.218 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#834ea2e8535dd9c5be582c180659bbfc">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2)</td></tr> 294.219 + 294.220 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from two images. <br></td></tr> 294.221 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="376ce49d45349f5390b8bc129064f907"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="376ce49d45349f5390b8bc129064f907" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const bool shared)" --> 294.222 +template<typename t1 , typename t2 > </td></tr> 294.223 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#376ce49d45349f5390b8bc129064f907">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const bool shared)</td></tr> 294.224 + 294.225 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from two images, forcing the shared state. <br></td></tr> 294.226 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="5e2dc89c70ddb3813a0f17f7ebc9f893"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="5e2dc89c70ddb3813a0f17f7ebc9f893" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3)" --> 294.227 +template<typename t1 , typename t2 , typename t3 > </td></tr> 294.228 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#5e2dc89c70ddb3813a0f17f7ebc9f893">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3)</td></tr> 294.229 + 294.230 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from three images. <br></td></tr> 294.231 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="7af8c6a69ab5fe444ff853016000be72"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="7af8c6a69ab5fe444ff853016000be72" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const bool shared)" --> 294.232 +template<typename t1 , typename t2 , typename t3 > </td></tr> 294.233 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#7af8c6a69ab5fe444ff853016000be72">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const bool shared)</td></tr> 294.234 + 294.235 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from three images, forcing the shared state. <br></td></tr> 294.236 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ffbbfabcc747538adab4dd63e3476174"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="ffbbfabcc747538adab4dd63e3476174" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4)" --> 294.237 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 294.238 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#ffbbfabcc747538adab4dd63e3476174">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4)</td></tr> 294.239 + 294.240 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from four images. <br></td></tr> 294.241 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d3da597982ecee9370e2b65f64ef37b3"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="d3da597982ecee9370e2b65f64ef37b3" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const bool shared)" --> 294.242 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 294.243 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#d3da597982ecee9370e2b65f64ef37b3">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const bool shared)</td></tr> 294.244 + 294.245 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from four images, forcing the shared state. <br></td></tr> 294.246 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4e4b5d47868d80e15c661fcaa734e644"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="4e4b5d47868d80e15c661fcaa734e644" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5)" --> 294.247 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 > </td></tr> 294.248 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#4e4b5d47868d80e15c661fcaa734e644">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5)</td></tr> 294.249 + 294.250 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from five images. <br></td></tr> 294.251 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="24e8a5f98d16ebe202faef91c4d9ba6e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="24e8a5f98d16ebe202faef91c4d9ba6e" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const bool shared)" --> 294.252 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 > </td></tr> 294.253 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#24e8a5f98d16ebe202faef91c4d9ba6e">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const bool shared)</td></tr> 294.254 + 294.255 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from five images, forcing the shared state. <br></td></tr> 294.256 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="aa8df8bc3b26f1f8038681f2c70a7091"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="aa8df8bc3b26f1f8038681f2c70a7091" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6)" --> 294.257 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 > </td></tr> 294.258 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#aa8df8bc3b26f1f8038681f2c70a7091">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6)</td></tr> 294.259 + 294.260 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from six images. <br></td></tr> 294.261 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="579e28d793ac269f66f2dcddd10ee1c1"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="579e28d793ac269f66f2dcddd10ee1c1" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const bool shared)" --> 294.262 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 > </td></tr> 294.263 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#579e28d793ac269f66f2dcddd10ee1c1">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const bool shared)</td></tr> 294.264 + 294.265 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from six images, forcing the shared state. <br></td></tr> 294.266 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="52f4d44ebe8933478465e4b8bcc32811"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="52f4d44ebe8933478465e4b8bcc32811" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7)" --> 294.267 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 > </td></tr> 294.268 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#52f4d44ebe8933478465e4b8bcc32811">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7)</td></tr> 294.269 + 294.270 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from seven images. <br></td></tr> 294.271 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d86c8fa0ff7fd6d11c5b9333684939d4"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="d86c8fa0ff7fd6d11c5b9333684939d4" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const bool shared)" --> 294.272 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 > </td></tr> 294.273 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#d86c8fa0ff7fd6d11c5b9333684939d4">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7, const bool shared)</td></tr> 294.274 + 294.275 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from seven images, forcing the shared state. <br></td></tr> 294.276 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bfa6ce0d6c8eec51049a40ec86fd24ed"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="bfa6ce0d6c8eec51049a40ec86fd24ed" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8)" --> 294.277 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 , typename t8 > </td></tr> 294.278 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#bfa6ce0d6c8eec51049a40ec86fd24ed">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t8 > &img8)</td></tr> 294.279 + 294.280 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from eight images. <br></td></tr> 294.281 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3443bf1898bcc43cb77abc1e14dc952b"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="3443bf1898bcc43cb77abc1e14dc952b" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8, const bool shared)" --> 294.282 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 , typename t8 > </td></tr> 294.283 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#3443bf1898bcc43cb77abc1e14dc952b">CImgList</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t8 > &img8, const bool shared)</td></tr> 294.284 + 294.285 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from eight images, forcing the shared state. <br></td></tr> 294.286 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="31c34ce18e197409013e913dbab5a82e"></a><!-- doxytag: member="cimg_library::CImgList::CImgList" ref="31c34ce18e197409013e913dbab5a82e" args="(const char *const filename)" --> 294.287 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#31c34ce18e197409013e913dbab5a82e">CImgList</a> (const char *const filename)</td></tr> 294.288 + 294.289 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Construct an image list from a filename. <br></td></tr> 294.290 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1fdedd65f2728500da3af7e94c19ae2"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="c1fdedd65f2728500da3af7e94c19ae2" args="()" --> 294.291 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#c1fdedd65f2728500da3af7e94c19ae2">assign</a> ()</td></tr> 294.292 + 294.293 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the default constructor and default destructor. <br></td></tr> 294.294 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7aec05f7791abe11f1d0f0cdc8bd24e"></a><!-- doxytag: member="cimg_library::CImgList::clear" ref="b7aec05f7791abe11f1d0f0cdc8bd24e" args="()" --> 294.295 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b7aec05f7791abe11f1d0f0cdc8bd24e">clear</a> ()</td></tr> 294.296 + 294.297 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Equivalent to <a class="el" href="structcimg__library_1_1CImgList.html#c1fdedd65f2728500da3af7e94c19ae2" title="In-place version of the default constructor and default destructor.">assign()</a> (STL-compliant name). <br></td></tr> 294.298 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6157637aebbb3b6680ae06ca7d2a2281"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="6157637aebbb3b6680ae06ca7d2a2281" args="(const unsigned int n)" --> 294.299 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#6157637aebbb3b6680ae06ca7d2a2281">assign</a> (const unsigned int n)</td></tr> 294.300 + 294.301 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.302 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="53f3daf167d5eaa3c3ddda1afd2c36fc"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="53f3daf167d5eaa3c3ddda1afd2c36fc" args="(const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)" --> 294.303 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#53f3daf167d5eaa3c3ddda1afd2c36fc">assign</a> (const unsigned int n, const unsigned int width, const unsigned int height=1, const unsigned int depth=1, const unsigned int dim=1)</td></tr> 294.304 + 294.305 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.306 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="61a5346d40b9cee7cf1cb1181d7b3887"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="61a5346d40b9cee7cf1cb1181d7b3887" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)" --> 294.307 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#61a5346d40b9cee7cf1cb1181d7b3887">assign</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const T val)</td></tr> 294.308 + 294.309 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.310 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe69df2191dc9dbf9b53ecb2961871af"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="fe69df2191dc9dbf9b53ecb2961871af" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)" --> 294.311 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#fe69df2191dc9dbf9b53ecb2961871af">assign</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const int val0, const int val1,...)</td></tr> 294.312 + 294.313 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.314 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6457a24987e92c04b573c8c1c5fd1328"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="6457a24987e92c04b573c8c1c5fd1328" args="(const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)" --> 294.315 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#6457a24987e92c04b573c8c1c5fd1328">assign</a> (const unsigned int n, const unsigned int width, const unsigned int height, const unsigned int depth, const unsigned int dim, const double val0, const double val1,...)</td></tr> 294.316 + 294.317 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.318 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0841eec5704b95c2ff576bded488261b"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="0841eec5704b95c2ff576bded488261b" args="(const CImgList< t > &list)" --> 294.319 +template<typename t > </td></tr> 294.320 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#0841eec5704b95c2ff576bded488261b">assign</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list)</td></tr> 294.321 + 294.322 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the copy constructor. <br></td></tr> 294.323 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="01fc32c65505eb67c472f275f16a2f3e"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="01fc32c65505eb67c472f275f16a2f3e" args="(const CImgList< t > &list, const bool shared)" --> 294.324 +template<typename t > </td></tr> 294.325 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#01fc32c65505eb67c472f275f16a2f3e">assign</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list, const bool shared)</td></tr> 294.326 + 294.327 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the copy constructor. <br></td></tr> 294.328 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="40666c4099c041777ca2ed1b0747f81b"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="40666c4099c041777ca2ed1b0747f81b" args="(const unsigned int n, const CImg< t > &img, const bool shared=false)" --> 294.329 +template<typename t > </td></tr> 294.330 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#40666c4099c041777ca2ed1b0747f81b">assign</a> (const unsigned int n, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared=false)</td></tr> 294.331 + 294.332 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.333 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1e358f65ab400e6a27d80f26afe9aeb6"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="1e358f65ab400e6a27d80f26afe9aeb6" args="(const CImg< t > &img, const bool shared=false)" --> 294.334 +template<typename t > </td></tr> 294.335 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#1e358f65ab400e6a27d80f26afe9aeb6">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &img, const bool shared=false)</td></tr> 294.336 + 294.337 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.338 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="fe8d25e995a3d934696796718057b584"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="fe8d25e995a3d934696796718057b584" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const bool shared=false)" --> 294.339 +template<typename t1 , typename t2 > </td></tr> 294.340 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#fe8d25e995a3d934696796718057b584">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const bool shared=false)</td></tr> 294.341 + 294.342 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.343 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="546cab2b857ae5a3d50224160a222baf"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="546cab2b857ae5a3d50224160a222baf" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const bool shared=false)" --> 294.344 +template<typename t1 , typename t2 , typename t3 > </td></tr> 294.345 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#546cab2b857ae5a3d50224160a222baf">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const bool shared=false)</td></tr> 294.346 + 294.347 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.348 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b5d15e167713cc7cdf8309223faeceb4"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="b5d15e167713cc7cdf8309223faeceb4" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const bool shared=false)" --> 294.349 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 294.350 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b5d15e167713cc7cdf8309223faeceb4">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const bool shared=false)</td></tr> 294.351 + 294.352 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.353 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="554edc1d750adab1e29df397e1f48a1f"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="554edc1d750adab1e29df397e1f48a1f" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const bool shared=false)" --> 294.354 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 > </td></tr> 294.355 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#554edc1d750adab1e29df397e1f48a1f">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const bool shared=false)</td></tr> 294.356 + 294.357 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.358 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9b4e4f632b087b23675c64c18c5dc4a9"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="9b4e4f632b087b23675c64c18c5dc4a9" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const bool shared=false)" --> 294.359 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 > </td></tr> 294.360 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#9b4e4f632b087b23675c64c18c5dc4a9">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const bool shared=false)</td></tr> 294.361 + 294.362 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.363 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="d221dc2a95d6921ad185721030882d62"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="d221dc2a95d6921ad185721030882d62" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const bool shared=false)" --> 294.364 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 > </td></tr> 294.365 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#d221dc2a95d6921ad185721030882d62">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7, const bool shared=false)</td></tr> 294.366 + 294.367 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.368 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c73f5df1ac298719adf44a9ea527e0a3"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="c73f5df1ac298719adf44a9ea527e0a3" args="(const CImg< t1 > &img1, const CImg< t2 > &img2, const CImg< t3 > &img3, const CImg< t4 > &img4, const CImg< t5 > &img5, const CImg< t6 > &img6, const CImg< t7 > &img7, const CImg< t8 > &img8, const bool shared=false)" --> 294.369 +template<typename t1 , typename t2 , typename t3 , typename t4 , typename t5 , typename t6 , typename t7 , typename t8 > </td></tr> 294.370 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#c73f5df1ac298719adf44a9ea527e0a3">assign</a> (const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t1 > &img1, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t2 > &img2, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t3 > &img3, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t4 > &img4, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t5 > &img5, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t6 > &img6, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t7 > &img7, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t8 > &img8, const bool shared=false)</td></tr> 294.371 + 294.372 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.373 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="15514475aae54fae9ea5cbd516579095"></a><!-- doxytag: member="cimg_library::CImgList::assign" ref="15514475aae54fae9ea5cbd516579095" args="(const char *const filename)" --> 294.374 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#15514475aae54fae9ea5cbd516579095">assign</a> (const char *const filename)</td></tr> 294.375 + 294.376 +<tr><td class="mdescLeft"> </td><td class="mdescRight">In-place version of the corresponding constructor. <br></td></tr> 294.377 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ceb0faa44647370b3fe679edad1eec36"></a><!-- doxytag: member="cimg_library::CImgList::transfer_to" ref="ceb0faa44647370b3fe679edad1eec36" args="(CImgList< t > &list)" --> 294.378 +template<typename t > </td></tr> 294.379 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#ceb0faa44647370b3fe679edad1eec36">transfer_to</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list)</td></tr> 294.380 + 294.381 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Transfer the content of the instance image list into another one. <br></td></tr> 294.382 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6a13542e43dcceb631d98aa5ec7657ed"></a><!-- doxytag: member="cimg_library::CImgList::transfer_to" ref="6a13542e43dcceb631d98aa5ec7657ed" args="(CImgList< T > &list)" --> 294.383 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><b>transfer_to</b> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list)</td></tr> 294.384 + 294.385 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c12806e432683b06fbc8919daa0a3d7"></a><!-- doxytag: member="cimg_library::CImgList::swap" ref="6c12806e432683b06fbc8919daa0a3d7" args="(CImgList< T > &list)" --> 294.386 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#6c12806e432683b06fbc8919daa0a3d7">swap</a> (<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > &list)</td></tr> 294.387 + 294.388 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Swap all fields of two <a class="el" href="structcimg__library_1_1CImgList.html" title="Class representing list of images CImg<T>.">CImgList</a> instances (use with care !). <br></td></tr> 294.389 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cef8e33cfd36a5d7d2fad939efcf02e3"></a><!-- doxytag: member="cimg_library::CImgList::is_empty" ref="cef8e33cfd36a5d7d2fad939efcf02e3" args="() const " --> 294.390 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#cef8e33cfd36a5d7d2fad939efcf02e3">is_empty</a> () const </td></tr> 294.391 + 294.392 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if list is empty. <br></td></tr> 294.393 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a385aa18f5e42db5a415c25a90f4193d"></a><!-- doxytag: member="cimg_library::CImgList::operator bool" ref="a385aa18f5e42db5a415c25a90f4193d" args="() const " --> 294.394 + </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#a385aa18f5e42db5a415c25a90f4193d">operator bool</a> () const </td></tr> 294.395 + 294.396 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if list is not empty. <br></td></tr> 294.397 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf45495f91f5e6e04bd597f0dd5d1ee4"></a><!-- doxytag: member="cimg_library::CImgList::is_sameN" ref="bf45495f91f5e6e04bd597f0dd5d1ee4" args="(const unsigned int n) const " --> 294.398 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#bf45495f91f5e6e04bd597f0dd5d1ee4">is_sameN</a> (const unsigned int n) const </td></tr> 294.399 + 294.400 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if list if of specified size. <br></td></tr> 294.401 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="9bb4d12695868ddb3da5054fbc8e70f0"></a><!-- doxytag: member="cimg_library::CImgList::is_sameN" ref="9bb4d12695868ddb3da5054fbc8e70f0" args="(const CImgList< t > &list) const " --> 294.402 +template<typename t > </td></tr> 294.403 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#9bb4d12695868ddb3da5054fbc8e70f0">is_sameN</a> (const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< t > &list) const </td></tr> 294.404 + 294.405 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return <code>true</code> if list if of specified size. <br></td></tr> 294.406 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="708f38370a7bb0e6dc86a2ab038749ff"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same" ref="708f38370a7bb0e6dc86a2ab038749ff" args="(XY) _cimglist_def_is_same(XZ) _cimglist_def_is_same(XV) _cimglist_def_is_same(YZ) _cimglist_def_is_same(YV) _cimglist_def_is_same(XYZ) _cimglist_def_is_same(XYV) _cimglist_def_is_same(YZV) _cimglist_def_is_same(XYZV) _cimglist_def_is_same1(X) _cimglist_def_is_same1(Y) _cimglist_def_is_same1(Z) _cimglist_def_is_same1(V) _cimglist_def_is_same2(X" --> 294.407 + </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same</b> (XY) _cimglist_def_is_same(XZ) _cimglist_def_is_same(XV) _cimglist_def_is_same(YZ) _cimglist_def_is_same(YV) _cimglist_def_is_same(XYZ) _cimglist_def_is_same(XYV) _cimglist_def_is_same(YZV) _cimglist_def_is_same(XYZV) _cimglist_def_is_same1(X) _cimglist_def_is_same1(Y) _cimglist_def_is_same1(Z) _cimglist_def_is_same1(V) _cimglist_def_is_same2(X</td></tr> 294.408 + 294.409 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="22a6fe3cb32778de9ebd518a3cf47a63"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same2" ref="22a6fe3cb32778de9ebd518a3cf47a63" args="(X, Z) _cimglist_def_is_same2(X" --> 294.410 +Y </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same2</b> (X, Z) _cimglist_def_is_same2(X</td></tr> 294.411 + 294.412 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="495c50e00b32574f525082557120d92a"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same2" ref="495c50e00b32574f525082557120d92a" args="(Y, Z) _cimglist_def_is_same2(Y" --> 294.413 +Y V </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same2</b> (Y, Z) _cimglist_def_is_same2(Y</td></tr> 294.414 + 294.415 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3f7949d98a57aac895055c4ebfa0c56a"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same2" ref="3f7949d98a57aac895055c4ebfa0c56a" args="(Z, V) _cimglist_def_is_same3(X" --> 294.416 +Y V V </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same2</b> (Z, V) _cimglist_def_is_same3(X</td></tr> 294.417 + 294.418 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9beb931a7561e217e465d7ac468b04d6"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same3" ref="9beb931a7561e217e465d7ac468b04d6" args="(X, Y, V) _cimglist_def_is_same3(X" --> 294.419 +Y V V Z </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same3</b> (X, Y, V) _cimglist_def_is_same3(X</td></tr> 294.420 + 294.421 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8b0494ee7ce6f87d40c3fb49e67f80d4"></a><!-- doxytag: member="cimg_library::CImgList::_cimglist_def_is_same3" ref="8b0494ee7ce6f87d40c3fb49e67f80d4" args="(Y, Z, V) bool is_sameXYZV(const unsigned int dx" --> 294.422 +Y V V Z V </td><td class="memItemRight" valign="bottom"><b>_cimglist_def_is_same3</b> (Y, Z, V) bool is_sameXYZV(const unsigned int dx</td></tr> 294.423 + 294.424 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6a81ba07294e5505df7d8807c7c8f209"></a><!-- doxytag: member="cimg_library::CImgList::load_off" ref="6a81ba07294e5505df7d8807c7c8f209" args="(const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 294.425 +tc <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><b>load_off</b> (const char *const filename, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 294.426 + 294.427 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9195765cb9bde15990a29ccd9306532c"></a><!-- doxytag: member="cimg_library::CImgList::load_tiff" ref="9195765cb9bde15990a29ccd9306532c" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)" --> 294.428 +<a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#9195765cb9bde15990a29ccd9306532c">load_tiff</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td></tr> 294.429 + 294.430 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Load a TIFF file. <br></td></tr> 294.431 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#814fe09c21090e7673d96c6145fc64bf">save</a> (const char *const filename, const int number=-1) const </td></tr> 294.432 + 294.433 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a file. <a href="#814fe09c21090e7673d96c6145fc64bf"></a><br></td></tr> 294.434 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="08addbada69513e00079ff437b669138"></a><!-- doxytag: member="cimg_library::CImgList::save_ffmpeg" ref="08addbada69513e00079ff437b669138" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const " --> 294.435 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#08addbada69513e00079ff437b669138">save_ffmpeg</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int fps=25) const </td></tr> 294.436 + 294.437 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image sequence, using FFMPEG library. <br></td></tr> 294.438 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="50da15eab2ee8f9f5d0e66ba5fcd5b38"></a><!-- doxytag: member="cimg_library::CImgList::_save_yuv" ref="50da15eab2ee8f9f5d0e66ba5fcd5b38" args="(cimg_std::FILE *const file, const char *const filename, const bool rgb2yuv) const " --> 294.439 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_yuv</b> (cimg_std::FILE *const file, const char *const filename, const bool rgb2yuv) const </td></tr> 294.440 + 294.441 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="09200f3c4abcfa6572ff2686731c87b7"></a><!-- doxytag: member="cimg_library::CImgList::save_yuv" ref="09200f3c4abcfa6572ff2686731c87b7" args="(const char *const filename=0, const bool rgb2yuv=true) const " --> 294.442 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#09200f3c4abcfa6572ff2686731c87b7">save_yuv</a> (const char *const filename=0, const bool rgb2yuv=true) const </td></tr> 294.443 + 294.444 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image sequence into a YUV file. <br></td></tr> 294.445 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c2fb93b79c1398625c5b84405b27b324"></a><!-- doxytag: member="cimg_library::CImgList::save_yuv" ref="c2fb93b79c1398625c5b84405b27b324" args="(cimg_std::FILE *const file, const bool rgb2yuv=true) const " --> 294.446 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#c2fb93b79c1398625c5b84405b27b324">save_yuv</a> (cimg_std::FILE *const file, const bool rgb2yuv=true) const </td></tr> 294.447 + 294.448 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image sequence into a YUV file. <br></td></tr> 294.449 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#77f67312de1a49a344111a595893f0f9">_save_cimg</a> (cimg_std::FILE *const file, const char *const filename, const bool compression) const </td></tr> 294.450 + 294.451 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. <a href="#77f67312de1a49a344111a595893f0f9"></a><br></td></tr> 294.452 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f48d7b0d887db4f92ad558abe5eeb60"></a><!-- doxytag: member="cimg_library::CImgList::save_cimg" ref="9f48d7b0d887db4f92ad558abe5eeb60" args="(cimg_std::FILE *file, const bool compress=false) const " --> 294.453 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#9f48d7b0d887db4f92ad558abe5eeb60">save_cimg</a> (cimg_std::FILE *file, const bool compress=false) const </td></tr> 294.454 + 294.455 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> file (RAW binary file + simple header). <br></td></tr> 294.456 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="40c2aa789c4ef09df224acb0634ac96f"></a><!-- doxytag: member="cimg_library::CImgList::save_cimg" ref="40c2aa789c4ef09df224acb0634ac96f" args="(const char *const filename, const bool compress=false) const " --> 294.457 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#40c2aa789c4ef09df224acb0634ac96f">save_cimg</a> (const char *const filename, const bool compress=false) const </td></tr> 294.458 + 294.459 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> file (RAW binary file + simple header). <br></td></tr> 294.460 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="84ec8801de0887ef23159db8bdd01119"></a><!-- doxytag: member="cimg_library::CImgList::_save_cimg" ref="84ec8801de0887ef23159db8bdd01119" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const " --> 294.461 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><b>_save_cimg</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td></tr> 294.462 + 294.463 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c434001d1040bd6aced992817fe7b99d"></a><!-- doxytag: member="cimg_library::CImgList::save_cimg" ref="c434001d1040bd6aced992817fe7b99d" args="(const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const " --> 294.464 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#c434001d1040bd6aced992817fe7b99d">save_cimg</a> (const char *const filename, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td></tr> 294.465 + 294.466 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Insert the instance image into into an existing .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file, at specified coordinates. <br></td></tr> 294.467 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="486f958aaadefa57f7f1dadad39cd2be"></a><!-- doxytag: member="cimg_library::CImgList::save_cimg" ref="486f958aaadefa57f7f1dadad39cd2be" args="(cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const " --> 294.468 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#486f958aaadefa57f7f1dadad39cd2be">save_cimg</a> (cimg_std::FILE *const file, const unsigned int n0, const unsigned int x0, const unsigned int y0, const unsigned int z0, const unsigned int v0) const </td></tr> 294.469 + 294.470 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Insert the instance image into into an existing .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file, at specified coordinates. <br></td></tr> 294.471 +<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#e9d11f1d698df3ffe1ef4a9ede594e1e">save_gzip_external</a> (const char *const filename) const </td></tr> 294.472 + 294.473 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save a file in TIFF format. <a href="#e9d11f1d698df3ffe1ef4a9ede594e1e"></a><br></td></tr> 294.474 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b46dd49d74b8143ef7229b75a7ab5b7c"></a><!-- doxytag: member="cimg_library::CImgList::save_off" ref="b46dd49d74b8143ef7229b75a7ab5b7c" args="(const char *const filename, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const " --> 294.475 +template<typename tf , typename tc > </td></tr> 294.476 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b46dd49d74b8143ef7229b75a7ab5b7c">save_off</a> (const char *const filename, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false) const </td></tr> 294.477 + 294.478 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a OFF file. <br></td></tr> 294.479 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="8bdc602c7752095fa70a41c08b2bcc8a"></a><!-- doxytag: member="cimg_library::CImgList::save_off" ref="8bdc602c7752095fa70a41c08b2bcc8a" args="(cimg_std::FILE *const file, const CImgList< tf > &primitives, const CImgList< tc > &colors, const bool invert_faces=false) const " --> 294.480 +template<typename tf , typename tc > </td></tr> 294.481 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#8bdc602c7752095fa70a41c08b2bcc8a">save_off</a> (cimg_std::FILE *const file, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false) const </td></tr> 294.482 + 294.483 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image list into a OFF file. <br></td></tr> 294.484 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b4ad0233afe8d38700bb1d0d0dc6ecc"></a><!-- doxytag: member="cimg_library::CImgList::save_ffmpeg_external" ref="3b4ad0233afe8d38700bb1d0d0dc6ecc" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const " --> 294.485 +const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#3b4ad0233afe8d38700bb1d0d0dc6ecc">save_ffmpeg_external</a> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const char *const codec="mpeg2video") const </td></tr> 294.486 + 294.487 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Save an image sequence using the external tool 'ffmpeg'. <br></td></tr> 294.488 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7d3a61366cf906c03af6c8fa13309a7"></a><!-- doxytag: member="cimg_library::CImgList::pixel_type" ref="b7d3a61366cf906c03af6c8fa13309a7" args="()" --> 294.489 +static const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b7d3a61366cf906c03af6c8fa13309a7">pixel_type</a> ()</td></tr> 294.490 + 294.491 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a string describing the type of the image pixels in the list (template parameter <code>T</code>). <br></td></tr> 294.492 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="803102f51526495697373ed4ccd48c75"></a><!-- doxytag: member="cimg_library::CImgList::get_load_off" ref="803102f51526495697373ed4ccd48c75" args="(const char *const filename, CImgList< tf > &primitives, CImgList< tc > &colors, const bool invert_faces=false)" --> 294.493 +template<typename tf , typename tc > </td></tr> 294.494 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">static <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > </td><td class="memTemplItemRight" valign="bottom"><b>get_load_off</b> (const char *const filename, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tf > &primitives, <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< tc > &colors, const bool invert_faces=false)</td></tr> 294.495 + 294.496 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f43113248d9f9940a0306a0f3c17a772"></a><!-- doxytag: member="cimg_library::CImgList::get_load_tiff" ref="f43113248d9f9940a0306a0f3c17a772" args="(const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)" --> 294.497 +static <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a>< T > </td><td class="memItemRight" valign="bottom"><b>get_load_tiff</b> (const char *const filename, const unsigned int first_frame=0, const unsigned int last_frame=~0U, const unsigned int step_frame=1)</td></tr> 294.498 + 294.499 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a375b28c6a41821fe1e02e8768695daa"></a><!-- doxytag: member="cimg_library::CImgList::_save_empty_cimg" ref="a375b28c6a41821fe1e02e8768695daa" args="(cimg_std::FILE *const file, const char *const filename, const unsigned int nb, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv)" --> 294.500 +static void </td><td class="memItemRight" valign="bottom"><b>_save_empty_cimg</b> (cimg_std::FILE *const file, const char *const filename, const unsigned int nb, const unsigned int dx, const unsigned int dy, const unsigned int dz, const unsigned int dv)</td></tr> 294.501 + 294.502 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fb44ea999d4ca96e7706a7ad8154724b"></a><!-- doxytag: member="cimg_library::CImgList::save_empty_cimg" ref="fb44ea999d4ca96e7706a7ad8154724b" args="(const char *const filename, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 294.503 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#fb44ea999d4ca96e7706a7ad8154724b">save_empty_cimg</a> (const char *const filename, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 294.504 + 294.505 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create an empty .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file with specified dimensions. <br></td></tr> 294.506 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0982e471b4e21fe99cedd085fb8ee23"></a><!-- doxytag: member="cimg_library::CImgList::save_empty_cimg" ref="b0982e471b4e21fe99cedd085fb8ee23" args="(cimg_std::FILE *const file, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)" --> 294.507 +static void </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#b0982e471b4e21fe99cedd085fb8ee23">save_empty_cimg</a> (cimg_std::FILE *const file, const unsigned int nb, const unsigned int dx, const unsigned int dy=1, const unsigned int dz=1, const unsigned int dv=1)</td></tr> 294.508 + 294.509 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create an empty .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file with specified dimensions. <br></td></tr> 294.510 +<tr><td colspan="2"><br><h2>Public Types</h2></td></tr> 294.511 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7c1c29e319c572a740b103b024f37034"></a><!-- doxytag: member="cimg_library::CImgList::iterator" ref="7c1c29e319c572a740b103b024f37034" args="" --> 294.512 +typedef <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#7c1c29e319c572a740b103b024f37034">iterator</a></td></tr> 294.513 + 294.514 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Define a <a class="el" href="structcimg__library_1_1CImgList.html#7c1c29e319c572a740b103b024f37034" title="Define a CImgList<T>::iterator.">CImgList<T>::iterator</a>. <br></td></tr> 294.515 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="449d35504b2500efc67af75ba3bf9277"></a><!-- doxytag: member="cimg_library::CImgList::const_iterator" ref="449d35504b2500efc67af75ba3bf9277" args="" --> 294.516 +typedef const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#449d35504b2500efc67af75ba3bf9277">const_iterator</a></td></tr> 294.517 + 294.518 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Define a <a class="el" href="structcimg__library_1_1CImgList.html#449d35504b2500efc67af75ba3bf9277" title="Define a CImgList<T>::const_iterator.">CImgList<T>::const_iterator</a>. <br></td></tr> 294.519 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="265a253612b46abed17c61b0a5e5ce30"></a><!-- doxytag: member="cimg_library::CImgList::value_type" ref="265a253612b46abed17c61b0a5e5ce30" args="" --> 294.520 +typedef T </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#265a253612b46abed17c61b0a5e5ce30">value_type</a></td></tr> 294.521 + 294.522 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get value type. <br></td></tr> 294.523 +<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> 294.524 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac913b3a1f6ef005d66bf7a84428773e"></a><!-- doxytag: member="cimg_library::CImgList::size" ref="ac913b3a1f6ef005d66bf7a84428773e" args="" --> 294.525 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#ac913b3a1f6ef005d66bf7a84428773e">size</a></td></tr> 294.526 + 294.527 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Size of the list (number of elements inside). <br></td></tr> 294.528 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed8b8acab64fd4c342e533c72f467438"></a><!-- doxytag: member="cimg_library::CImgList::allocsize" ref="ed8b8acab64fd4c342e533c72f467438" args="" --> 294.529 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#ed8b8acab64fd4c342e533c72f467438">allocsize</a></td></tr> 294.530 + 294.531 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Allocation size of the list. <br></td></tr> 294.532 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7b2148b1950a98016bd8d1407062d798"></a><!-- doxytag: member="cimg_library::CImgList::data" ref="7b2148b1950a98016bd8d1407062d798" args="" --> 294.533 +<a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< T > * </td><td class="memItemRight" valign="bottom"><a class="el" href="structcimg__library_1_1CImgList.html#7b2148b1950a98016bd8d1407062d798">data</a></td></tr> 294.534 + 294.535 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the first list element. <br></td></tr> 294.536 +</table> 294.537 +<hr><a name="_details"></a><h2>Detailed Description</h2> 294.538 +<h3>template<typename T><br> 294.539 + struct cimg_library::CImgList< T ></h3> 294.540 + 294.541 +Class representing list of images CImg<T>. <hr><h2>Member Function Documentation</h2> 294.542 +<a class="anchor" name="814fe09c21090e7673d96c6145fc64bf"></a><!-- doxytag: member="cimg_library::CImgList::save" ref="814fe09c21090e7673d96c6145fc64bf" args="(const char *const filename, const int number=-1) const " --> 294.543 +<div class="memitem"> 294.544 +<div class="memproto"> 294.545 + <table class="memname"> 294.546 + <tr> 294.547 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a><T>& save </td> 294.548 + <td>(</td> 294.549 + <td class="paramtype">const char *const </td> 294.550 + <td class="paramname"> <em>filename</em>, </td> 294.551 + </tr> 294.552 + <tr> 294.553 + <td class="paramkey"></td> 294.554 + <td></td> 294.555 + <td class="paramtype">const int </td> 294.556 + <td class="paramname"> <em>number</em> = <code>-1</code></td><td> </td> 294.557 + </tr> 294.558 + <tr> 294.559 + <td></td> 294.560 + <td>)</td> 294.561 + <td></td><td></td><td> const<code> [inline]</code></td> 294.562 + </tr> 294.563 + </table> 294.564 +</div> 294.565 +<div class="memdoc"> 294.566 + 294.567 +<p> 294.568 +Save an image list into a file. 294.569 +<p> 294.570 +Depending on the extension of the given filename, a file format is chosen for the output file. 294.571 +</div> 294.572 +</div><p> 294.573 +<a class="anchor" name="77f67312de1a49a344111a595893f0f9"></a><!-- doxytag: member="cimg_library::CImgList::_save_cimg" ref="77f67312de1a49a344111a595893f0f9" args="(cimg_std::FILE *const file, const char *const filename, const bool compression) const " --> 294.574 +<div class="memitem"> 294.575 +<div class="memproto"> 294.576 + <table class="memname"> 294.577 + <tr> 294.578 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a><T>& _save_cimg </td> 294.579 + <td>(</td> 294.580 + <td class="paramtype">cimg_std::FILE *const </td> 294.581 + <td class="paramname"> <em>file</em>, </td> 294.582 + </tr> 294.583 + <tr> 294.584 + <td class="paramkey"></td> 294.585 + <td></td> 294.586 + <td class="paramtype">const char *const </td> 294.587 + <td class="paramname"> <em>filename</em>, </td> 294.588 + </tr> 294.589 + <tr> 294.590 + <td class="paramkey"></td> 294.591 + <td></td> 294.592 + <td class="paramtype">const bool </td> 294.593 + <td class="paramname"> <em>compression</em></td><td> </td> 294.594 + </tr> 294.595 + <tr> 294.596 + <td></td> 294.597 + <td>)</td> 294.598 + <td></td><td></td><td> const<code> [inline]</code></td> 294.599 + </tr> 294.600 + </table> 294.601 +</div> 294.602 +<div class="memdoc"> 294.603 + 294.604 +<p> 294.605 +Save an image list into a .<a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a> file. 294.606 +<p> 294.607 +A <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> RAW file is a simple uncompressed binary file that may be used to save list of CImg<T> images. <dl compact><dt><b>Parameters:</b></dt><dd> 294.608 + <table border="0" cellspacing="2" cellpadding="0"> 294.609 + <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>: name of the output file. </td></tr> 294.610 + </table> 294.611 +</dl> 294.612 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>A reference to the current <a class="el" href="structcimg__library_1_1CImgList.html" title="Class representing list of images CImg<T>.">CImgList</a> instance is returned. </dd></dl> 294.613 + 294.614 +</div> 294.615 +</div><p> 294.616 +<a class="anchor" name="e9d11f1d698df3ffe1ef4a9ede594e1e"></a><!-- doxytag: member="cimg_library::CImgList::save_gzip_external" ref="e9d11f1d698df3ffe1ef4a9ede594e1e" args="(const char *const filename) const " --> 294.617 +<div class="memitem"> 294.618 +<div class="memproto"> 294.619 + <table class="memname"> 294.620 + <tr> 294.621 + <td class="memname">const <a class="el" href="structcimg__library_1_1CImgList.html">CImgList</a><T>& save_gzip_external </td> 294.622 + <td>(</td> 294.623 + <td class="paramtype">const char *const </td> 294.624 + <td class="paramname"> <em>filename</em> </td> 294.625 + <td> ) </td> 294.626 + <td> const<code> [inline]</code></td> 294.627 + </tr> 294.628 + </table> 294.629 +</div> 294.630 +<div class="memdoc"> 294.631 + 294.632 +<p> 294.633 +Save a file in TIFF format. 294.634 +<p> 294.635 +Save an image list as a gzipped file, using external tool 'gzip'. 294.636 +</div> 294.637 +</div><p> 294.638 +</div> 294.639 +<hr noshade="noshade" size="1" width="100%"> 294.640 +<a href="http://sourceforge.net"> 294.641 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 294.642 +</a> 294.643 +<!-- Start of StatCounter Code --> 294.644 +<script type="text/javascript" language="javascript"> 294.645 +<!-- 294.646 +var sc_project=895001; 294.647 +var sc_invisible=1; 294.648 +var sc_partition=7; 294.649 +var sc_security="5ea85181"; 294.650 +//--> 294.651 +</script> 294.652 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 294.653 +<!-- End of StatCounter Code --> 294.654 +</body> 294.655 +</html>
295.1 Binary file PTdecode/CImg-1.3.0/html/reference/tab_b.gif has changed
296.1 Binary file PTdecode/CImg-1.3.0/html/reference/tab_l.gif has changed
297.1 Binary file PTdecode/CImg-1.3.0/html/reference/tab_r.gif has changed
298.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 298.2 +++ b/PTdecode/CImg-1.3.0/html/reference/tabs.css Mon Aug 03 14:09:20 2009 +0100 298.3 @@ -0,0 +1,102 @@ 298.4 +/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ 298.5 + 298.6 +DIV.tabs 298.7 +{ 298.8 + float : left; 298.9 + width : 100%; 298.10 + background : url("tab_b.gif") repeat-x bottom; 298.11 + margin-bottom : 4px; 298.12 +} 298.13 + 298.14 +DIV.tabs UL 298.15 +{ 298.16 + margin : 0px; 298.17 + padding-left : 10px; 298.18 + list-style : none; 298.19 +} 298.20 + 298.21 +DIV.tabs LI, DIV.tabs FORM 298.22 +{ 298.23 + display : inline; 298.24 + margin : 0px; 298.25 + padding : 0px; 298.26 +} 298.27 + 298.28 +DIV.tabs FORM 298.29 +{ 298.30 + float : right; 298.31 +} 298.32 + 298.33 +DIV.tabs A 298.34 +{ 298.35 + float : left; 298.36 + background : url("tab_r.gif") no-repeat right top; 298.37 + border-bottom : 1px solid #84B0C7; 298.38 + font-size : 8px; 298.39 + font-weight : bold; 298.40 + text-decoration : none; 298.41 +} 298.42 + 298.43 +DIV.tabs A:hover 298.44 +{ 298.45 + background-position: 100% -150px; 298.46 +} 298.47 + 298.48 +DIV.tabs A:link, DIV.tabs A:visited, 298.49 +DIV.tabs A:active, DIV.tabs A:hover 298.50 +{ 298.51 + color: #1A419D; 298.52 +} 298.53 + 298.54 +DIV.tabs SPAN 298.55 +{ 298.56 + float : left; 298.57 + display : block; 298.58 + background : url("tab_l.gif") no-repeat left top; 298.59 + padding : 5px 9px; 298.60 + white-space : nowrap; 298.61 +} 298.62 + 298.63 +DIV.tabs INPUT 298.64 +{ 298.65 + float : right; 298.66 + display : inline; 298.67 + font-size : 1em; 298.68 +} 298.69 + 298.70 +DIV.tabs TD 298.71 +{ 298.72 + font-size : 8px; 298.73 + font-weight : bold; 298.74 + text-decoration : none; 298.75 +} 298.76 + 298.77 + 298.78 + 298.79 +/* Commented Backslash Hack hides rule from IE5-Mac \*/ 298.80 +DIV.tabs SPAN {float : none;} 298.81 +/* End IE5-Mac hack */ 298.82 + 298.83 +DIV.tabs A:hover SPAN 298.84 +{ 298.85 + background-position: 0% -150px; 298.86 +} 298.87 + 298.88 +DIV.tabs LI.current A 298.89 +{ 298.90 + background-position: 100% -150px; 298.91 + border-width : 0px; 298.92 +} 298.93 + 298.94 +DIV.tabs LI.current SPAN 298.95 +{ 298.96 + background-position: 0% -150px; 298.97 + padding-bottom : 6px; 298.98 +} 298.99 + 298.100 +DIV.navpath 298.101 +{ 298.102 + background : none; 298.103 + border : none; 298.104 + border-bottom : 1px solid #84B0C7; 298.105 +}
299.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 299.2 +++ b/PTdecode/CImg-1.3.0/html/screenshots.shtml Mon Aug 03 14:09:20 2009 +0100 299.3 @@ -0,0 +1,372 @@ 299.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 299.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 299.6 +<!--#include file="header.html" --> 299.7 + 299.8 +<table align="center" border="0" cellpadding="20" cellspacing="0" width="100%"><tbody><tr><td> 299.9 +<font face="Arial,Helvetica" size="-1"> 299.10 + 299.11 +<img src="img/item_screenshots.gif" alt="Screenshots"> 299.12 +<p> 299.13 + The screenshots below have been taken from the different sample programs distributed within the CImg package. 299.14 + Click on an image to enlarge it and on the source filename to display it. A link to a streaming video of the 299.15 + corresponding effect is sometimes proposed. 299.16 + If you are interested by a live demo on your system, go to the <a href="download.shtml"><b>download page</b></a> 299.17 + and get the pre-compiled binaries for your system. 299.18 +</p> 299.19 + 299.20 + <hr noshade="noshade" size="1" width="90%"></hr> 299.21 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.22 + <td width="100" bgcolor="#ffffff"><center> 299.23 + <table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td> 299.24 + <a href="img/ss_demomenu.jpg" onclick="NewWindow(this.href,'name','400','450','yes');return false;"> 299.25 + <img src="img/ss_mini_000001.jpg" border="0" width="100"></a> 299.26 + </td></tr></table> 299.27 + </center></td> 299.28 + <td><font size="-1"> 299.29 + <img src="img/item_description.jpg"> : The main demo sample of the CImg package (length = 1433 lines of code)<br/> 299.30 + <img src="img/item_file.jpg"> : 299.31 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i><br/><br/> 299.32 + Contains 26 different real-time animations, as well as a nice selection menu. Look at the video to 299.33 + see all the different effects running.<br/><br/> 299.34 + <a href="img/video_cimgdemo.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.35 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.36 + </font></td></tr></table> 299.37 + 299.38 + <hr noshade="noshade" size="1" width="90%"></hr> 299.39 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.40 + <td width="100" bgcolor="#ffffff"><center> 299.41 + <table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td> 299.42 + <a href="img/ss_bump.jpg" onclick="NewWindow(this.href,'name','500','300','yes');return false;"> 299.43 + <img src="img/ss_mini_000000.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.44 + <td><font size="-1"> 299.45 + <img src="img/item_description.jpg"> : A 2D bump-mapping effect (30 lines of code).<br/> 299.46 + <img src="img/item_file.jpg"> : 299.47 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i><br/><br/> 299.48 + You can move the light source using the mouse. 299.49 + This sample shows how to handle mouse motion and create an animation in a window. 299.50 + It demonstrates also that the CImg library is quite fast ! 299.51 + Everything is computed from scratch here, including the logo, the background and the light.<br/><br/> 299.52 + <a href="img/video_bump.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.53 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.54 + </font></td></tr></table> 299.55 + 299.56 + <hr noshade="noshade" size="1" width="90%"></hr> 299.57 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.58 + <td width="100" bgcolor="#ffffff"><center> 299.59 + <table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td> 299.60 + <a href="img/ss_hough.jpg" onclick="NewWindow(this.href,'name','1030','540','yes');return false;"> 299.61 + <img src="img/ss_mini_000002.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.62 + <td><font size="-1"> 299.63 + <img src="img/item_description.jpg"> : Computation of the Hough Transform. (length = 95 lines of code)<br/> 299.64 + <img src="img/item_file.jpg"> : 299.65 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/hough_transform.cpp?view=markup">hough_transform.cpp</a></i> <br/><br/> 299.66 + Illustrate the computation of the Hough transform to detect lines in 2D images. Provide also simple user 299.67 + interface to select and display lines. 299.68 + </font></td></tr></table> 299.69 + 299.70 + <hr noshade="noshade" size="1" width="90%"></hr> 299.71 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.72 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_imgfade.jpg" onclick="NewWindow(this.href,'name','280','280','yes');return false;"> 299.73 + <img src="img/ss_mini_000003.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.74 + <td><font size="-1"> 299.75 + <img src="img/item_description.jpg"> : Show how to do a fading between two images. (length = 35 lines of code).<br/> 299.76 + <img src="img/item_file.jpg"> : 299.77 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/fade_images.cpp?view=markup">fade_images.cpp</a></i> <br/><br/> 299.78 + Very small code to perform a funny effect. Also demonstrate how to easily deal with command line arguments. 299.79 + </font></td></tr></table> 299.80 + 299.81 + <hr noshade="noshade" size="1" width="90%"></hr> 299.82 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.83 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_mandelbrot.jpg" onclick="NewWindow(this.href,'name','660','520','yes');return false;"> 299.84 + <img src="img/ss_mini_000004.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.85 + <td><font size="-1"> 299.86 + <img src="img/item_description.jpg"> : A fully functional Mandelbrot fractal explorer. (length = 51 lines of code).<br/> 299.87 + <img src="img/item_file.jpg"> : 299.88 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.89 + Show how to use the predefined feature selection function present in the CImg library.<br/><br/> 299.90 + <a href="img/video_mandelbrot.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.91 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.92 + </font></td></tr></table> 299.93 + 299.94 + <hr noshade="noshade" size="1" width="90%"></hr> 299.95 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.96 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_odykill.jpg" onclick="NewWindow(this.href,'name','660','520','yes');return false;"> 299.97 + <img src="img/ss_mini_000005.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.98 + <td><font size="-1"> 299.99 + <img src="img/item_description.jpg"> : A simple shoot-em-up game, featuring the people of the Robotvis/Odyssee Lab. (length = 180 lines of code).<br/> 299.100 + <img src="img/item_file.jpg"> : 299.101 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/odykill.cpp?view=markup">odykill.cpp</a></i> <br/><br/> 299.102 + Another demonstration of handling mouse and creating animation for pedagogic purposes. 299.103 + </font></td></tr></table> 299.104 + 299.105 + <hr noshade="noshade" size="1" width="90%"></hr> 299.106 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.107 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_optflow.jpg" onclick="NewWindow(this.href,'name','980','470','yes');return false;"> 299.108 + <img src="img/ss_mini_000006.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.109 + <td><font size="-1"> 299.110 + <img src="img/item_description.jpg"> : An implementation of an image registration algorithm, with 299.111 + multiscale capability. (length = 201 lines of code).<br/> 299.112 + <img src="img/item_file.jpg"> : 299.113 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/image_registration.cpp?view=markup">image_registration.cpp</a></i> <br/><br/> 299.114 + Compute a motion map between two images, and warp one into the another through a smooth animation. 299.115 + </font></td></tr></table> 299.116 + 299.117 + <hr noshade="noshade" size="1" width="90%"></hr> 299.118 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.119 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_paint.jpg" onclick="NewWindow(this.href,'name','280','370','yes');return false;"> 299.120 + <img src="img/ss_mini_000007.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.121 + <td><font size="-1"> 299.122 + <img src="img/item_description.jpg"> : A mini-painting program. (length = 30 lines of code).<br/> 299.123 + <img src="img/item_file.jpg"> : 299.124 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.125 + This is not a replacement to Photoshop, but it already includes a filling algorithm 299.126 + as well as a color selection tool.<br/><br/> 299.127 + <a href="img/video_minipaint.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.128 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.129 + </font></td></tr></table> 299.130 + 299.131 + <hr noshade="noshade" size="1" width="90%"></hr> 299.132 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.133 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_rotozoom.jpg" onclick="NewWindow(this.href,'name','350','250','yes');return false;"> 299.134 + <img src="img/ss_mini_000008.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.135 + <td><font size="-1"> 299.136 + <img src="img/item_description.jpg"> : A classical demomaking-effect, called 'rotozoom'. (length = 20 lines of code).<br/> 299.137 + <img src="img/item_file.jpg"> : 299.138 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.139 + Smell the old school parfume of the atari/amiga demos. 299.140 + </font></td></tr></table> 299.141 + 299.142 + <hr noshade="noshade" size="1" width="90%"></hr> 299.143 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.144 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_triangle.jpg" onclick="NewWindow(this.href,'name','670','530','yes');return false;"> 299.145 + <img src="img/ss_mini_000009.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.146 + <td><font size="-1"> 299.147 + <img src="img/item_description.jpg"> : An animation featuring triangles that are rotating. (length = 50 lines of code).<br/> 299.148 + <img src="img/item_file.jpg"> : 299.149 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.150 + Could be a replacement to your classical screen saver. 299.151 + </font></td></tr></table> 299.152 + 299.153 + <hr noshade="noshade" size="1" width="90%"></hr> 299.154 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.155 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_volume3d.jpg" onclick="NewWindow(this.href,'name','290','370','yes');return false;"> 299.156 + <img src="img/ss_mini_000010.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.157 + <td><font size="-1"> 299.158 + <img src="img/item_description.jpg"> : A tool to select sub-images/volumes in bigger images/volumes. (length = 70 lines of code).<br/> 299.159 + <img src="img/item_file.jpg"> : 299.160 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/inrcast.cpp?view=markup">inrcast.cpp</a></i> <br/><br/> 299.161 + Show that the CImg library is perfectly working with 3D vector-valued volumes. 299.162 + </font></td></tr></table> 299.163 + 299.164 + <hr noshade="noshade" size="1" width="90%"></hr> 299.165 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.166 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_render3d.jpg" onclick="NewWindow(this.href,'name','350','300','yes');return false;"> 299.167 + <img src="img/ss_mini_000011.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.168 + <td><font size="-1"> 299.169 + <img src="img/item_description.jpg"> : An example of real-time 3D rendering.<br/> 299.170 + <img src="img/item_file.jpg"> : 299.171 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.172 + No use of OpenGL or VTK in this example, only pure CImg software functions are used ! <br/><br/> 299.173 + <a href="img/video_doubletorus.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.174 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.175 + </font></td></tr></table> 299.176 + 299.177 + <hr noshade="noshade" size="1" width="90%"></hr> 299.178 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.179 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_bubble.jpg" onclick="NewWindow(this.href,'name','350','300','yes');return false;"> 299.180 + <img src="img/ss_mini_000012.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.181 + <td><font size="-1"> 299.182 + <img src="img/item_description.jpg"> : An example of the ellipse drawing function, used to bounce an elastic bubble (length = 25 lines of code).<br/> 299.183 + <img src="img/item_file.jpg"> : 299.184 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.185 + <a href="img/video_bubble.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.186 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.187 + </font></td></tr></table> 299.188 + 299.189 + <hr noshade="noshade" size="1" width="90%"></hr> 299.190 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.191 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_landscape.jpg" onclick="NewWindow(this.href,'name','430','350','yes');return false;"> 299.192 + <img src="img/ss_mini_000013.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.193 + <td><font size="-1"> 299.194 + <img src="img/item_description.jpg"> : An real-time 3D virtual landscape explorer (length = 40 lines of code).<br/> 299.195 + <img src="img/item_file.jpg"> : 299.196 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.197 + The altitude map is based on a 'fractal plasma' generator.<br/><br/> 299.198 + <a href="img/video_landscape.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.199 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.200 + </font></td></tr></table> 299.201 + 299.202 + <hr noshade="noshade" size="1" width="90%"></hr> 299.203 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.204 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_plasma.jpg" onclick="NewWindow(this.href,'name','430','350','yes');return false;"> 299.205 + <img src="img/ss_mini_000014.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.206 + <td><font size="-1"> 299.207 + <img src="img/item_description.jpg"> : A nice plasma effect with a sinus scroller (length = 70 lines of code).<br/> 299.208 + <img src="img/item_file.jpg"> : 299.209 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.210 + <a href="img/video_plasma.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.211 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.212 + </font></td></tr></table> 299.213 + 299.214 + <hr noshade="noshade" size="1" width="90%"></hr> 299.215 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.216 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_tetris.jpg" onclick="NewWindow(this.href,'name','220','370','yes');return false;"> 299.217 + <img src="img/ss_mini_000015.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.218 + <td><font size="-1"> 299.219 + <img src="img/item_description.jpg"> : An implementation of the well known Tetris game (length = 130 lines of code).<br/> 299.220 + <img src="img/item_file.jpg"> : 299.221 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/tetris.cpp?view=markup">tetris.cpp</a></i> <br/><br/> 299.222 + Very small code for a complete version of the Tetris game. 299.223 + <br/><br/><a href="img/video_tetris.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.224 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.225 + </font></td></tr></table> 299.226 + 299.227 + <hr noshade="noshade" size="1" width="90%"></hr> 299.228 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.229 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_restoration.jpg" onclick="NewWindow(this.href,'name','570','450','yes');return false;"> 299.230 + <img src="img/ss_mini_000016.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.231 + <td><font size="-1"> 299.232 + <img src="img/item_description.jpg"> : The implementation of the Tschumperlé-Deriche algorithm for image restoration and Inpainting. (length = 170 lines of code).<br/> 299.233 + <img src="img/item_file.jpg"> : 299.234 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/pde_TschumperleDeriche2D.cpp?view=markup">pde_TschumperleDeriche2D.cpp</a></i> <br/><br/> 299.235 + See <a href="ftp://ftp-sop.inria.fr/odyssee/Publications/2003/tschumperle-deriche:03.pdf">the corresponding publication</a> 299.236 + for more detail on the algorithm. 299.237 + </font></td></tr></table> 299.238 + 299.239 + <hr noshade="noshade" size="1" width="90%"></hr> 299.240 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.241 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_shadebobs.jpg" onclick="NewWindow(this.href,'name','500','450','yes');return false;"> 299.242 + <img src="img/ss_mini_000017.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.243 + <td><font size="-1"> 299.244 + <img src="img/item_description.jpg"> : A very smart and classical demo effect called 'Shade bobs' (length = 60 lines of code).<br/> 299.245 + <img src="img/item_file.jpg"> : 299.246 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.247 + <a href="img/video_shadebobs.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.248 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.249 + </font></td></tr></table> 299.250 + 299.251 + <hr noshade="noshade" size="1" width="90%"></hr> 299.252 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.253 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_blobs.jpg" onclick="NewWindow(this.href,'name','350','350','yes');return false;"> 299.254 + <img src="img/ss_mini_000018.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.255 + <td><font size="-1"> 299.256 + <img src="img/item_description.jpg"> : A nice Blob Editor in only few lines (length = 90 lines of code).<br/> 299.257 + <img src="img/item_file.jpg"> : 299.258 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.259 + <a href="img/video_blobs.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.260 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.261 + </font></td></tr></table> 299.262 + 299.263 + <hr noshade="noshade" size="1" width="90%"></hr> 299.264 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.265 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_metaballs.jpg" onclick="NewWindow(this.href,'name','520','330','yes');return false;"> 299.266 + <img src="img/ss_mini_000019.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.267 + <td><font size="-1"> 299.268 + <img src="img/item_description.jpg"> : 3D Metaballs animation, using 3D capabilities of CImg (length = 23 lines of code).<br/> 299.269 + <img src="img/item_file.jpg"> : 299.270 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.271 + <a href="img/video_metaballs.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.272 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.273 + </font></td></tr></table> 299.274 + 299.275 + <hr noshade="noshade" size="1" width="90%"></hr> 299.276 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.277 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_surface.jpg" onclick="NewWindow(this.href,'name','800','500','yes');return false;"> 299.278 + <img src="img/ss_mini_000020.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.279 + <td><font size="-1"> 299.280 + <img src="img/item_description.jpg"> : A tool to visualize images as surfaces in 3D (length = 100 lines of code).<br/> 299.281 + <img src="img/item_file.jpg"> : 299.282 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/image_surface.cpp?view=markup">image_surface.cpp</a></i> <br/><br/> 299.283 + <a href="img/video_imagesurface.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.284 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.285 + </font></td></tr></table> 299.286 + 299.287 + <hr noshade="noshade" size="1" width="90%"></hr> 299.288 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.289 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_dtmri.jpg" onclick="NewWindow(this.href,'name','750','500','yes');return false;"> 299.290 + <img src="img/ss_mini_000021.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.291 + <td><font size="-1"> 299.292 + <img src="img/item_description.jpg"> : A 3D viewer for Diffusion tensor imaging datasets (length = 526 lines of code).<br/> 299.293 + <img src="img/item_file.jpg"> : 299.294 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/dtmri_view.cpp?view=markup">dtmri_view.cpp</a></i> <br/><br/> 299.295 + <a href="img/video_dtmri.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.296 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.297 + </font></td></tr></table> 299.298 + 299.299 + <hr noshade="noshade" size="1" width="90%"></hr> 299.300 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.301 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_waves.jpg" onclick="NewWindow(this.href,'name','450','350','yes');return false;"> 299.302 + <img src="img/ss_mini_000022.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.303 + <td><font size="-1"> 299.304 + <img src="img/item_description.jpg"> : Applying the wave equation on an 3D image-mapped surface. (length = 55 lines of code).<br/> 299.305 + <img src="img/item_file.jpg"> : 299.306 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.307 + <a href="img/video_waves.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.308 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.309 + </font></td></tr></table> 299.310 + 299.311 + <hr noshade="noshade" size="1" width="90%"></hr> 299.312 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.313 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/curve_editor.jpg" onclick="NewWindow(this.href,'name','550','550','yes');return false;"> 299.314 + <img src="img/ss_mini_000023.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.315 + <td><font size="-1"> 299.316 + <img src="img/item_description.jpg"> : A simple 2D curve editor using spline interpolation (length = 300 lines of code).<br/> 299.317 + <img src="img/item_file.jpg"> : 299.318 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/curve_editor.cpp?view=markup">curve_editor.cpp</a></i> <br/><br/> 299.319 + <a href="img/video_curveeditor.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.320 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.321 + </font></td></tr></table> 299.322 + 299.323 + <hr noshade="noshade" size="1" width="90%"></hr> 299.324 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.325 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_jawbreaker.jpg" onclick="NewWindow(this.href,'name','450','500','yes');return false;"> 299.326 + <img src="img/ss_mini_000024.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.327 + <td><font size="-1"> 299.328 + <img src="img/item_description.jpg"> : A complete and funny game featuring colored balls in less than 128 lines of code ! (length = 121 lines of code).<br/> 299.329 + <img src="img/item_file.jpg"> : 299.330 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/jawbreaker.cpp?view=markup">jawbreaker.cpp</a></i> <br/><br/> 299.331 + <a href="img/video_jawbreaker.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.332 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.333 + </font></td></tr></table> 299.334 + 299.335 + <hr noshade="noshade" size="1" width="90%"></hr> 299.336 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.337 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_reflection.jpg" onclick="NewWindow(this.href,'name','450','450','yes');return false;"> 299.338 + <img src="img/ss_mini_000025.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.339 + <td><font size="-1"> 299.340 + <img src="img/item_description.jpg"> : A cool 3D reflection effect, using some CImg 3D object rendering tricks (length = 130 lines of code).<br/> 299.341 + <img src="img/item_file.jpg"> : 299.342 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.343 + <a href="img/video_reflection.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.344 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.345 + </font></td></tr></table> 299.346 + 299.347 + <hr noshade="noshade" size="1" width="90%"></hr> 299.348 + <table align="center" bgcolor="#f0f1f5" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.349 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_fourier.jpg" onclick="NewWindow(this.href,'name','550','300','yes');return false;"> 299.350 + <img src="img/ss_mini_000026.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.351 + <td><font size="-1"> 299.352 + <img src="img/item_description.jpg"> : A demo of image filtering in the Fourier Domain (length = 30 lines of code).<br/> 299.353 + <img src="img/item_file.jpg"> : 299.354 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.355 + <a href="img/video_fourier.html" onclick="NewWindow(this.href,'name','450','400','yes');return false;"> 299.356 + <img src="img/item_clickvideo.jpg" border="0" alt="Click here to see the video" onmouseover="this.src='img/item_clickvideo2.jpg';" onmouseout="this.src='img/item_clickvideo.jpg';" /></a> 299.357 + </font></td></tr></table> 299.358 + 299.359 + <hr noshade="noshade" size="1" width="90%"></hr> 299.360 + <table align="center" bgcolor="#ffffff" border="0" cellpadding="16" cellspacing="0" width="90%"><tr> 299.361 + <td width="100" bgcolor="#ffffff"><center><table bgcolor="#ffffff" border="1" cellpadding="0"><tr><td><a href="img/ss_puzzle.jpg" onclick="NewWindow(this.href,'name','550','450','yes');return false;"> 299.362 + <img src="img/ss_mini_000027.jpg" border="0" width="100"></a></td></tr></table></center></td> 299.363 + <td><font size="-1"> 299.364 + <img src="img/item_description.jpg"> : A simple word puzzle game (length = 100 lines of code).<br/> 299.365 + <img src="img/item_file.jpg"> : 299.366 + <i><a href="http://cimg.cvs.sourceforge.net/cimg/CImg/examples/CImg_demo.cpp?view=markup">CImg_demo.cpp</a></i> <br/><br/> 299.367 + </font></td></tr></table> 299.368 + 299.369 + <hr noshade="noshade" size="1" width="90%"></hr> 299.370 + 299.371 + </table> 299.372 + 299.373 +</font></td></tr></tbody></table> 299.374 + 299.375 +<!--#include file="footer.html" -->
300.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 300.2 +++ b/PTdecode/CImg-1.3.0/plugins/add_fileformat.h Mon Aug 03 14:09:20 2009 +0100 300.3 @@ -0,0 +1,79 @@ 300.4 +/* 300.5 + # 300.6 + # File : add_fileformat.h 300.7 + # ( C++ header file - CImg plug-in ) 300.8 + # 300.9 + # Description : CImg plug-in that adds loading/saving support for a personalized 300.10 + # file format (determined by its extension, here ".foo"). 300.11 + # This file is a part of the CImg Library project. 300.12 + # ( http://cimg.sourceforge.net ) 300.13 + # 300.14 + # Copyright : David Tschumperle 300.15 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 300.16 + # 300.17 + # License : CeCILL v2.0 300.18 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 300.19 + # 300.20 + # This software is governed by the CeCILL license under French law and 300.21 + # abiding by the rules of distribution of free software. You can use, 300.22 + # modify and/ or redistribute the software under the terms of the CeCILL 300.23 + # license as circulated by CEA, CNRS and INRIA at the following URL 300.24 + # "http://www.cecill.info". 300.25 + # 300.26 + # As a counterpart to the access to the source code and rights to copy, 300.27 + # modify and redistribute granted by the license, users are provided only 300.28 + # with a limited warranty and the software's author, the holder of the 300.29 + # economic rights, and the successive licensors have only limited 300.30 + # liability. 300.31 + # 300.32 + # In this respect, the user's attention is drawn to the risks associated 300.33 + # with loading, using, modifying and/or developing or reproducing the 300.34 + # software by the user in light of its specific status of free software, 300.35 + # that may mean that it is complicated to manipulate, and that also 300.36 + # therefore means that it is reserved for developers and experienced 300.37 + # professionals having in-depth computer knowledge. Users are therefore 300.38 + # encouraged to load and test the software's suitability as regards their 300.39 + # requirements in conditions enabling the security of their systems and/or 300.40 + # data to be ensured and, more generally, to use and operate it in the 300.41 + # same conditions as regards security. 300.42 + # 300.43 + # The fact that you are presently reading this means that you have had 300.44 + # knowledge of the CeCILL license and that you accept its terms. 300.45 + # 300.46 +*/ 300.47 + 300.48 +#ifndef cimg_plugin_addfileformat 300.49 +#define cimg_plugin_addfileformat 300.50 + 300.51 +// These functions load ".foo" filenames 300.52 +//--------------------------------------- 300.53 +static CImg<T> get_load_foo(const char *filename) { 300.54 + std::fprintf(stderr,"Load '%s' here..\n",filename); 300.55 + return CImg<T>(512,512,1,3,0).noise(30); 300.56 +} 300.57 + 300.58 +CImg& load_foo(const char *filename) { 300.59 + return get_load_foo(filename).swap(*this); 300.60 +} 300.61 + 300.62 +// This function saves the instance image into a ".foo" file. 300.63 +//----------------------------------------------------------- 300.64 +const CImg& save_foo(const char *filename) const { 300.65 + std::fprintf(stderr,"Save '%s' here..\n",filename); 300.66 + return *this; 300.67 +} 300.68 + 300.69 +// The code below allows to add the support for the specified extension. 300.70 +//--------------------------------------------------------------------- 300.71 +#ifndef cimg_load_plugin 300.72 +#define cimg_load_plugin(filename) \ 300.73 + if (!cimg::strncasecmp(cimg::split_filename(filename),"foo",3)) return load_foo(filename); 300.74 +#endif 300.75 +#ifndef cimg_save_plugin 300.76 +#define cimg_save_plugin(filename) \ 300.77 + if (!cimg::strncasecmp(cimg::split_filename(filename),"foo",3)) return save_foo(filename); 300.78 +#endif 300.79 + 300.80 +// End of the plugin. 300.81 +//------------------- 300.82 +#endif
301.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 301.2 +++ b/PTdecode/CImg-1.3.0/plugins/cimgIPL.h Mon Aug 03 14:09:20 2009 +0100 301.3 @@ -0,0 +1,122 @@ 301.4 +/* 301.5 +# 301.6 +# File : cimgIPL.h 301.7 +# ( C++ header file - CImg plug-in ) 301.8 +# 301.9 +# Description : CImg plug-in providing the CImg->IPL and IPL->CImg 301.10 +# conversions for generic image types 301.11 +# ( IPL = Intel Performance Library ) 301.12 +# This file is a part of the CImg Library project. 301.13 +# ( http://cimg.sourceforge.net ) 301.14 +# 301.15 +# Copyright : newleft (haibo.zheng@gmail.com) 301.16 +# newleftist@hotmail.com 301.17 +# 301.18 +# License : CeCILL v2.0 301.19 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 301.20 +# 301.21 +# This software is governed by the CeCILL license under French law and 301.22 +# abiding by the rules of distribution of free software. You can use, 301.23 +# modify and/ or redistribute the software under the terms of the CeCILL 301.24 +# license as circulated by CEA, CNRS and INRIA at the following URL 301.25 +# "http://www.cecill.info". 301.26 +# 301.27 +# As a counterpart to the access to the source code and rights to copy, 301.28 +# modify and redistribute granted by the license, users are provided only 301.29 +# with a limited warranty and the software's author, the holder of the 301.30 +# economic rights, and the successive licensors have only limited 301.31 +# liability. 301.32 +# 301.33 +# In this respect, the user's attention is drawn to the risks associated 301.34 +# with loading, using, modifying and/or developing or reproducing the 301.35 +# software by the user in light of its specific status of free software, 301.36 +# that may mean that it is complicated to manipulate, and that also 301.37 +# therefore means that it is reserved for developers and experienced 301.38 +# professionals having in-depth computer knowledge. Users are therefore 301.39 +# encouraged to load and test the software's suitability as regards their 301.40 +# requirements in conditions enabling the security of their systems and/or 301.41 +# data to be ensured and, more generally, to use and operate it in the 301.42 +# same conditions as regards security. 301.43 +# 301.44 +# The fact that you are presently reading this means that you have had 301.45 +# knowledge of the CeCILL license and that you accept its terms. 301.46 +# 301.47 +*/ 301.48 + 301.49 +#ifndef cimg_plugin_cimgIPL 301.50 +#define cimg_plugin_cimgIPL 301.51 + 301.52 +// Conversion IPL -> CImg (constructor) 301.53 +CImg(const IplImage* src):width(0),height(0),depth(0),dim(0),data(0),is_shared(false) { 301.54 + assign(src); 301.55 +} 301.56 + 301.57 +// Conversion IPL -> CImg (in-place constructor) 301.58 +CImg<T>& assign(const IplImage* src) { 301.59 + if (!src) return assign(); 301.60 + switch (src->depth) { 301.61 + case IPL_DEPTH_1U: { // 1-bit int. 301.62 + IplImage *src1 = cvCreateImage(cvGetSize(src),IPL_DEPTH_8U,1); 301.63 + cvConvert(src,src1); 301.64 + CImg<ucharT>((unsigned char*)src1->imageData,src1->nChannels,src1->width,src1->height,1,true). 301.65 + get_permute_axes("yzvx").transfer_to(*this); 301.66 + cvReleaseImage(&src1); 301.67 + } break; 301.68 + case IPL_DEPTH_8U: // 8-bit unsigned int. 301.69 + CImg<ucharT>((unsigned char*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.70 + get_permute_axes("yzvx").transfer_to(*this); 301.71 + break; 301.72 + case IPL_DEPTH_8S: // 8-bit signed int. 301.73 + CImg<charT>((char*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.74 + get_permute_axes("yzvx").transfer_to(*this); 301.75 + break; 301.76 + case IPL_DEPTH_16U: // 16-bit unsigned int. 301.77 + CImg<ushortT>((unsigned short*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.78 + get_permute_axes("yzvx").transfer_to(*this); 301.79 + break; 301.80 + case IPL_DEPTH_16S: // 16-bit signed int. 301.81 + CImg<shortT>((short*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.82 + get_permute_axes("yzvx").transfer_to(*this); 301.83 + break; 301.84 + case IPL_DEPTH_32S: // 32-bit signed int. 301.85 + CImg<intT>((int*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.86 + get_permute_axes("yzvx").transfer_to(*this); 301.87 + break; 301.88 + case IPL_DEPTH_32F: // 32-bit float. 301.89 + CImg<floatT>((float*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.90 + get_permute_axes("yzvx").transfer_to(*this); 301.91 + break; 301.92 + case IPL_DEPTH_64F: // 64-bit double. 301.93 + CImg<doubleT>((double*)src->imageData,src->nChannels,src->width,src->height,1,true). 301.94 + get_permute_axes("yzvx").transfer_to(*this); 301.95 + break; 301.96 + default: 301.97 + throw CImgInstanceException("CImg<%s>::assign(const IplImage* img) : IplImage depth is invalid.", 301.98 + pixel_type()); 301.99 + break; 301.100 + } 301.101 + if (!std::strcmp(src->channelSeq,"BGR")) mirror('v'); 301.102 + else if (!std::strcmp(src->channelSeq,"BGRA")) get_shared_channels(0,2).mirror('v'); 301.103 + return *this; 301.104 +} 301.105 + 301.106 +// Conversion CImg -> IPL 301.107 +IplImage* get_IPL(const unsigned int z=0) const { 301.108 + if (is_empty()) 301.109 + throw CImgInstanceException("CImg<%s>::get_IPL() : instance image (%u,%u,%u,%u,%p) is empty.", 301.110 + pixel_type(),width,height,depth,dim,data); 301.111 + if (z>=depth) 301.112 + throw CImgInstanceException("CImg<%s>::get_IPL() : specified slice %u is out of image bounds (%u,%u,%u,%u,%p).", 301.113 + pixel_type(),z,width,height,depth,dim,data); 301.114 + const CImg<T> 301.115 + _slice = depth>1?get_slice(z):CImg<T>(), 301.116 + &slice = depth>1?_slice:*this; 301.117 + CImg<T> buf(slice); 301.118 + if (dim==3 || dim==4) buf.get_shared_channels(0,2).mirror('v'); 301.119 + buf.permute_axes("vxyz"); 301.120 + IplImage* const dst = cvCreateImage(cvSize(width,height),sizeof(T)*8,dim); 301.121 + std::memcpy(dst->imageData,buf.ptr(),buf.size()*sizeof(T)); 301.122 + return dst; 301.123 +} 301.124 + 301.125 +#endif
302.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 302.2 +++ b/PTdecode/CImg-1.3.0/plugins/cimgmatlab.h Mon Aug 03 14:09:20 2009 +0100 302.3 @@ -0,0 +1,387 @@ 302.4 +/************************************************************************* 302.5 + * cimgmatlab.h 302.6 + * ------------- 302.7 + * 302.8 + * cimgmatlab.h is a "plugin" for the CImg library that allows to convert 302.9 + * CImg<T> images from/to MATLAB arrays, so that CImg can be used to write 302.10 + * MATLAB mex files. It also swaps the "x" and "y" coordinates when going 302.11 + * from / to MATLAB array, i.e. the usual image-processing annoying MATLAB 302.12 + * behaviour of considering images as matrices. 302.13 + * 302.14 + * Added to the CImg<T> class are: 302.15 + * 302.16 + * - a constructor : CImg(const mxArray *matlabArray, bool vdata = false) 302.17 + * the vdata serves to decide whether a 3D matlab array should give 302.18 + * rise to a 3D CImg object or a "2D vectorial" one. 302.19 + * 302.20 + * - a assignment operator : CImg & operator=(const mxArray *matlabArray) 302.21 + * (I use myself extremely seldom and might remove it in the future). 302.22 + * 302.23 + * - a routine converting a CImg image to a matlab array: 302.24 + * mxArray *toMatlab(mxClassID classID = mxDOUBLE_CLASS, 302.25 + * bool squeeze = false) const 302.26 + * the squeeze argument serves the opposite purpose than the vdata from 302.27 + * the constructor. 302.28 + * 302.29 + * For a bit more documentation, the manual is this header, see the more 302.30 + * detailed comments in the source code (i.e. RTFM) 302.31 + * 302.32 + * 302.33 + * Its usage should be straightforward: 302.34 + * 302.35 + * - file cimgmatlab.h must be in a directory that the compiler can locate. 302.36 + * - prior to include CImg.h, mex.h must be included first, else it will 302.37 + * result in a compiler error. 302.38 + * - after the inclusion of mex.h, one must define the macro cimg_plugin as 302.39 + * "cimgmatlab.h" or <cimgmatlab.h> or <CImg/plugins/cimgmatlab.h> or 302.40 + * a variation that matches your local installation of CImg package and 302.41 + * plugins probably via the appropriate specification of the include path 302.42 + * "-Ipath/to/cimg/and/plugins" at mex cmdline. 302.43 + * 302.44 + * You would probably have this kind of declaration: 302.45 + * 302.46 + * // The begining of my fantastic mex file code... 302.47 + * #include <mex.h> 302.48 + * ... 302.49 + * #define cimg_plugin <cimgmatlab.h> 302.50 + * #include <CImg.h> 302.51 + * ... 302.52 + * // and now I can implement my new killer MATLAB function! 302.53 + * .... 302.54 + * 302.55 + * 302.56 + * Copyright (c) 2004-2008 Francois Lauze 302.57 + * Licence: the Gnu Lesser General Public License 302.58 + * http://www.gnu.org/licenses/lgpl.html 302.59 + * 302.60 + * MATLAB is copyright of The MathWorks, Inc, http://www.mathworks.com 302.61 + * 302.62 + * Any comments, improvements and potential bug corrections are welcome, so 302.63 + * write to me at francois@diku.dk, or use CImg forums, I promise I'll try 302.64 + * to read them once in a while. BTW who modified the cpMatlabData with the 302.65 + * cimg::type<t>::is_float() test (good idea!) 302.66 + * 302.67 + ***************************************************************************/ 302.68 + 302.69 +#define CIMGMATLAB_VER 0102 302.70 +#ifndef mex_h 302.71 +#error the file mex.h must be included prior to inclusion of cimgmatlab.h 302.72 +#endif 302.73 +#ifndef cimg_version 302.74 +#error cimgmatlab.h requires that CImg.h is included! 302.75 +#endif 302.76 + 302.77 +/********************************************************** 302.78 + * introduction of mwSize and mwIndex types in relatively * 302.79 + * recent versions of matlab, 7.3.0 from what I gathered. * 302.80 + * here is hopefully a needed fix for older versions * 302.81 + **********************************************************/ 302.82 +#if !defined(MX_API_VER) || MX_API_VER < 0x7030000 302.83 +typedef int mwSize; 302.84 +#endif 302.85 + 302.86 +/********************************************************* 302.87 + * begin of included methods * 302.88 + * They are just added as member functions / constructor * 302.89 + * for the CImg<T> class. * 302.90 + *********************************************************/ 302.91 + 302.92 +private: 302.93 + /********************************************************************** 302.94 + * internally used to transfer MATLAB array values to CImg<> objects, 302.95 + * check wether the array type is a "numerical" one (including logical) 302.96 + */ 302.97 + static int isNumericalClassID(mxClassID id) 302.98 + { 302.99 + // all these constants are defined in matrix.h included by mex.h 302.100 + switch (id) { 302.101 + case mxLOGICAL_CLASS: 302.102 + case mxDOUBLE_CLASS: 302.103 + case mxSINGLE_CLASS: 302.104 + case mxINT8_CLASS: 302.105 + case mxUINT8_CLASS: 302.106 + case mxINT16_CLASS: 302.107 + case mxUINT16_CLASS: 302.108 + case mxINT32_CLASS: 302.109 + case mxUINT32_CLASS: 302.110 + case mxINT64_CLASS: 302.111 + case mxUINT64_CLASS: 302.112 + return 1; 302.113 + default: 302.114 + return 0; 302.115 + } 302.116 + } 302.117 + 302.118 + /*************************************************** 302.119 + * driving routine that will copy the content of 302.120 + * a MATLAB array to this->data 302.121 + * The type names used are defined in matlab c/c++ 302.122 + * header file tmwtypes.h 302.123 + */ 302.124 + void makeImageFromMatlabData(const mxArray *matlabArray, mxClassID classID) 302.125 + { 302.126 + if (classID == mxLOGICAL_CLASS) 302.127 + { 302.128 + // logical type works a bit differently than the numerical types 302.129 + mxLogical *mdata = mxGetLogicals(matlabArray); 302.130 + cpMatlabData((const mxLogical *)mdata); 302.131 + } 302.132 + else 302.133 + { 302.134 + void *mdata = (void *)mxGetPr(matlabArray); 302.135 + 302.136 + switch (classID) { 302.137 + case mxDOUBLE_CLASS: 302.138 + cpMatlabData((const real64_T *)mdata); 302.139 + break; 302.140 + case mxSINGLE_CLASS: 302.141 + cpMatlabData((const real32_T *)mdata); 302.142 + break; 302.143 + case mxINT8_CLASS: 302.144 + cpMatlabData((const int8_T *)mdata); 302.145 + break; 302.146 + case mxUINT8_CLASS: 302.147 + cpMatlabData((const uint8_T *)mdata); 302.148 + break; 302.149 + case mxINT16_CLASS: 302.150 + cpMatlabData((const int16_T *)mdata); 302.151 + break; 302.152 + case mxUINT16_CLASS: 302.153 + cpMatlabData((const uint16_T *)mdata); 302.154 + break; 302.155 + case mxINT32_CLASS: 302.156 + cpMatlabData((const int32_T *)mdata); 302.157 + break; 302.158 + case mxUINT32_CLASS: 302.159 + cpMatlabData((const uint32_T *)mdata); 302.160 + break; 302.161 + case mxINT64_CLASS: 302.162 + cpMatlabData((const int64_T *)mdata); 302.163 + break; 302.164 + case mxUINT64_CLASS: 302.165 + cpMatlabData((const uint64_T *)mdata); 302.166 + break; 302.167 + } 302.168 + } 302.169 + } 302.170 + 302.171 + /*********************************************************** 302.172 + * the actual memory copy and base type conversion is then 302.173 + * performed by this routine that handles the annoying x-y 302.174 + * problem of MATLAB when dealing with images: we switch 302.175 + * line and column storage: the MATLAB A(x,y) becomes the 302.176 + * CImg img(y,x) 302.177 + */ 302.178 + template <typename t> void cpMatlabData(const t* mdata) 302.179 + { 302.180 + if (cimg::type<t>::is_float()) 302.181 + { 302.182 + cimg_forXYZV(*this, x, y, z, v) 302.183 + { 302.184 + (*this)(x, y, z, v) = (T)(mdata[((v*depth + z)*width+x)*height+y]); 302.185 + } 302.186 + } 302.187 + else 302.188 + { 302.189 + cimg_forXYZV(*this, x, y, z, v) 302.190 + { 302.191 + (*this)(x, y, z, v) = (T)(int)(mdata[((v*depth + z)*width+x)*height+y]); 302.192 + } 302.193 + } 302.194 + } 302.195 + 302.196 +public: 302.197 + 302.198 + /****************************************************************** 302.199 + * Consruct a CImg<T> object from a MATLAB mxArray. 302.200 + * The MATLAB array must be AT MOST 4-dimensional. The boolean 302.201 + * argument vdata is employed in the case the the input mxArray 302.202 + * has dimension 3, say M x N x K. In that case, if vdata is true, 302.203 + * the last dimension is assumed to be "vectorial" and the 302.204 + * resulting CImg<T> object has dimension N x M x 1 x K. Otherwise, 302.205 + * the resulting object has dimension N x M x K x 1. 302.206 + * When MATLAB array has dimension 2 or 4, vdata has no effects. 302.207 + * No shared memory mechanisms are used, it would be the easiest 302.208 + * to crash Matlab (from my own experience...) 302.209 + */ 302.210 + CImg(const mxArray *matlabArray, bool vdata = false) 302.211 + : is_shared(false) 302.212 + { 302.213 + mwSize nbdims = mxGetNumberOfDimensions(matlabArray); 302.214 + mxClassID classID = mxGetClassID(matlabArray); 302.215 + if (nbdims > 4 || !isNumericalClassID(classID)) 302.216 + { 302.217 + data=NULL; 302.218 + width=height=depth=dim=0; 302.219 +#if cimg_debug>1 302.220 + cimg::warn("MATLAB array is more than 4D or/and " 302.221 + "not numerical, returning null image."); 302.222 +#endif 302.223 + } 302.224 + else 302.225 + { 302.226 + const mwSize *dims = mxGetDimensions(matlabArray); 302.227 + depth = dim = 1; 302.228 + width = (unsigned)dims[1]; 302.229 + height = (unsigned)dims[0]; 302.230 + if (nbdims == 4) 302.231 + { 302.232 + depth = (unsigned)dims[2]; 302.233 + dim = (unsigned)dims[3]; 302.234 + } 302.235 + else if (nbdims == 3) 302.236 + { 302.237 + if (vdata) 302.238 + { 302.239 + dim = (unsigned)dims[2]; 302.240 + } 302.241 + else 302.242 + { 302.243 + depth = (unsigned)dims[2]; 302.244 + } 302.245 + } 302.246 + 302.247 + data = new T[size()]; 302.248 + makeImageFromMatlabData(matlabArray, classID); 302.249 + } 302.250 + } 302.251 + 302.252 + /******************************************************************* 302.253 + * operator=(). Copy mxMarray data mArray into the current image 302.254 + * Works as the previous constructor, but without the vdata stuff. 302.255 + * don't know if it is of any use... 302.256 + */ 302.257 + CImg & operator=(const mxArray *matlabArray) 302.258 + { 302.259 + int nbdims = (int)mxGetNumberOfDimensions(matlabArray); 302.260 + int classID = mxGetClassID(matlabArray); 302.261 + if (nbdims > 4 || !isNumericalClassID(classID)) 302.262 + { 302.263 + delete [] data; 302.264 + data = NULL; 302.265 + width=height=depth=dim=0; 302.266 +#if cimg_debug>1 302.267 + cimg::warn("MATLAB array is more than 4D or/and " 302.268 + "not numerical, returning null image."); 302.269 +#endif 302.270 + } 302.271 + else 302.272 + { 302.273 + const mwSize *dims = mxGetDimensions(matlabArray); 302.274 + depth = dim = 1; 302.275 + width = (unsigned)dims[1]; 302.276 + height = (unsigned)dims[0]; 302.277 + if (nbdims > 2) 302.278 + { 302.279 + depth = (unsigned)dims[2]; 302.280 + } 302.281 + if (nbdims > 3) 302.282 + { 302.283 + dim = (unsigned)dims[3]; 302.284 + } 302.285 + 302.286 + delete [] data; 302.287 + data = new T[size()]; 302.288 + 302.289 + makeImageFromMatlabData(matlabArray, classID); 302.290 + } 302.291 + } 302.292 + 302.293 +private: 302.294 + /***************************************************************** 302.295 + * private routines used for transfering a CImg<T> to a mxArray 302.296 + * here also, we have to exchange the x and y dims so we get the 302.297 + * expected MATLAB array. 302.298 + */ 302.299 + template <typename c> void populate_maltlab_array(c *mdata) const 302.300 + { 302.301 + cimg_forXYZV(*this, x, y, z, v) 302.302 + { 302.303 + mdata[((v*depth + z)*width+x)*height+y] = (c)(*this)(x, y, z, v); 302.304 + } 302.305 + } 302.306 + 302.307 + /************************************************* 302.308 + * the specialized version for "logical" entries 302.309 + */ 302.310 + void populate_maltlab_array(mxLogical *mdata) const 302.311 + { 302.312 + cimg_forXYZV(*this, x, y, z, v) 302.313 + { 302.314 + mdata[((v*depth + z)*width+x)*height+y] = (mxLogical)((*this)(x, y, z, v)!=0); 302.315 + } 302.316 + } 302.317 + 302.318 +public: 302.319 + /****************************************** 302.320 + * export a CImg image to a MATLAB array. 302.321 + **/ 302.322 + mxArray *toMatlab(mxClassID classID = mxDOUBLE_CLASS, bool squeeze = false) const 302.323 + { 302.324 + if (!isNumericalClassID(classID)) 302.325 + { 302.326 +#if cimg_debug>1 302.327 + cimg::warn("Invalid MATLAB Class Id Specified."); 302.328 +#endif 302.329 + return NULL; 302.330 + } 302.331 + 302.332 + mwSize dims[4]; 302.333 + dims[0] = (mwSize)height; 302.334 + dims[1] = (mwSize)width; 302.335 + dims[2] = (mwSize)depth; 302.336 + dims[3] = (mwSize)dim; 302.337 + 302.338 + if (squeeze && depth == 1) 302.339 + { 302.340 + dims[2] = (mwSize)dim; 302.341 + dims[3] = (mwSize)1; 302.342 + } 302.343 + 302.344 + mxArray *matlabArray = mxCreateNumericArray((mwSize)4, dims, classID, mxREAL); 302.345 + 302.346 + if (classID == mxLOGICAL_CLASS) 302.347 + { 302.348 + mxLogical *mdata = mxGetLogicals(matlabArray); 302.349 + populate_maltlab_array(mdata); 302.350 + } 302.351 + else 302.352 + { 302.353 + void *mdata = mxGetPr(matlabArray); 302.354 + switch (classID) { 302.355 + case mxDOUBLE_CLASS: 302.356 + populate_maltlab_array((real64_T *)mdata); 302.357 + break; 302.358 + case mxSINGLE_CLASS: 302.359 + populate_maltlab_array((real32_T *)mdata); 302.360 + break; 302.361 + case mxINT8_CLASS: 302.362 + populate_maltlab_array((int8_T *)mdata); 302.363 + break; 302.364 + case mxUINT8_CLASS: 302.365 + populate_maltlab_array((uint8_T *)mdata); 302.366 + break; 302.367 + case mxINT16_CLASS: 302.368 + populate_maltlab_array((int16_T *)mdata); 302.369 + break; 302.370 + case mxUINT16_CLASS: 302.371 + populate_maltlab_array((uint16_T *)mdata); 302.372 + break; 302.373 + case mxINT32_CLASS: 302.374 + populate_maltlab_array((int32_T *)mdata); 302.375 + break; 302.376 + case mxUINT32_CLASS: 302.377 + populate_maltlab_array((uint32_T *)mdata); 302.378 + break; 302.379 + case mxINT64_CLASS: 302.380 + populate_maltlab_array((int64_T *)mdata); 302.381 + break; 302.382 + case mxUINT64_CLASS: 302.383 + populate_maltlab_array((uint64_T *)mdata); 302.384 + break; 302.385 + } 302.386 + } 302.387 + return matlabArray; 302.388 + } 302.389 + 302.390 +// end of cimgmatlab.h
303.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 303.2 +++ b/PTdecode/CImg-1.3.0/plugins/draw_gradient.h Mon Aug 03 14:09:20 2009 +0100 303.3 @@ -0,0 +1,248 @@ 303.4 +/* 303.5 + # 303.6 + # File : draw_gradient.h 303.7 + # ( C++ header file - CImg plug-in ) 303.8 + # 303.9 + # Description : Plugin that can be used to draw color gradient on images. 303.10 + # This file is a part of the CImg Library project. 303.11 + # ( http://cimg.sourceforge.net ) 303.12 + # 303.13 + # Copyright : Jerome Boulanger 303.14 + # ( http://www.ricam.oeaw.ac.at/people/page.cgi?firstn=Jerome;lastn=Boulanger ) 303.15 + # 303.16 + # License : CeCILL v2.0 303.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 303.18 + # 303.19 + # This software is governed by the CeCILL license under French law and 303.20 + # abiding by the rules of distribution of free software. You can use, 303.21 + # modify and/ or redistribute the software under the terms of the CeCILL 303.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 303.23 + # "http://www.cecill.info". 303.24 + # 303.25 + # As a counterpart to the access to the source code and rights to copy, 303.26 + # modify and redistribute granted by the license, users are provided only 303.27 + # with a limited warranty and the software's author, the holder of the 303.28 + # economic rights, and the successive licensors have only limited 303.29 + # liability. 303.30 + # 303.31 + # In this respect, the user's attention is drawn to the risks associated 303.32 + # with loading, using, modifying and/or developing or reproducing the 303.33 + # software by the user in light of its specific status of free software, 303.34 + # that may mean that it is complicated to manipulate, and that also 303.35 + # therefore means that it is reserved for developers and experienced 303.36 + # professionals having in-depth computer knowledge. Users are therefore 303.37 + # encouraged to load and test the software's suitability as regards their 303.38 + # requirements in conditions enabling the security of their systems and/or 303.39 + # data to be ensured and, more generally, to use and operate it in the 303.40 + # same conditions as regards security. 303.41 + # 303.42 + # The fact that you are presently reading this means that you have had 303.43 + # knowledge of the CeCILL license and that you accept its terms. 303.44 + # 303.45 +*/ 303.46 + 303.47 +#ifndef cimg_plugin_draw_gradient 303.48 +#define cimg_plugin_draw_gradient 303.49 + 303.50 +// Convert the couple (shape,profile) into a description string 303.51 +static inline const char *get_gradient_str(const int shape, const int profile) { 303.52 + static char buf[128]; 303.53 + switch(shape) { 303.54 + case 0: std::sprintf(buf,"linear shape and");break; 303.55 + case 1: std::sprintf(buf,"spheric shape and");break; 303.56 + case 2: std::sprintf(buf,"conic shape and");break; 303.57 + case 3: std::sprintf(buf,"square shape and");break; 303.58 + case 4: std::sprintf(buf,"rectangle (L1) shape and");break; 303.59 + case 5: std::sprintf(buf,"rectangle (Linf) shape and");break; 303.60 + case 6: std::sprintf(buf,"Gaussian shape and");break; 303.61 + default: std::sprintf(buf,"undefined shape and");break; 303.62 + } 303.63 + switch(profile) { 303.64 + case 0: std::strcat(buf," linear profile");break; 303.65 + case 1: std::strcat(buf," wave profile");break; 303.66 + case 2: std::strcat(buf," ring/bar profile");break; 303.67 + case 3: std::strcat(buf," exponential");break; 303.68 + case 4: std::strcat(buf," vanishing wave profile");break; 303.69 + case 5: std::strcat(buf," vanishing ring/bar profile");break; 303.70 + case 6: std::strcat(buf," circ diffraction (Airy) profile");break; 303.71 + case 7: std::strcat(buf," rect diffraction (sinc2) profile");break; 303.72 + default: std::strcat(buf," undefined profile");break; 303.73 + } 303.74 + return buf; 303.75 +} 303.76 + 303.77 +template<typename tc> 303.78 +void _draw_gradient_profile(T *const ptr, const float opacity, const float r, 303.79 + const tc *const color0, const tc *const color1, 303.80 + const int profile) { 303.81 + const unsigned int id = (color0?1:0) + (color1?2:0); 303.82 + const tc col0 = color0?*color0:0, col1 = color1?*color1:0; 303.83 + switch(profile) { 303.84 + case 0: { // linear 303.85 + switch(id) { // map the 3 cases 303.86 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-r)+col1*r)); break; 303.87 + case 1: if (r<1) *ptr = (T)((1-opacity*(1-r))**ptr + col0*opacity*(1-r)); break; 303.88 + case 2: if (r>0) *ptr = (T)((1-opacity*r)**ptr + col1*opacity*r); break; 303.89 + default: break; 303.90 + } break; 303.91 + } 303.92 + case 1: { // waves 303.93 + const float f = (1 - (float)std::cos(4.5f*r*2.f*cimg::valuePI))/2; 303.94 + switch(id) { // map the 3 cases 303.95 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-f)+col1*f)); break; 303.96 + case 1: if (f<1) *ptr = (T)((1-opacity*(1-f))**ptr + col0*opacity*(1-f)); break; 303.97 + case 2: if (f>0) *ptr = (T)((1-opacity*f)**ptr + col1*opacity*f); break; 303.98 + default: break; 303.99 + } break; 303.100 + } 303.101 + case 2:{ // ring/bar 303.102 + const float f = (1 + (float)std::cos(r*2.f*cimg::valuePI))/2; 303.103 + switch(id) { // map the 3 cases 303.104 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-f)+col1*f)); break; 303.105 + case 1: if (f<1) *ptr = (T)((1-opacity*(1-f))**ptr + col0*opacity*(1-f)); break; 303.106 + case 2: if (f>0) *ptr = (T)((1-opacity*f)**ptr + col1*opacity*f); break; 303.107 + default: break; 303.108 + } break; 303.109 + } 303.110 + case 3: { // exponential 303.111 + const float f = 1 - (float)std::exp(-r); 303.112 + switch(id) { // map the 3 cases 303.113 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-f)+col1*f)); break; 303.114 + case 1: if (f<1) *ptr = (T)((1-opacity*(1-f))**ptr + col0*opacity*(1-f)); break; 303.115 + case 2: if (f>0) *ptr = (T)((1-opacity*f)**ptr + col1*opacity*f); break; 303.116 + default: break; 303.117 + } break; 303.118 + } 303.119 + case 4: { // vanishing wave 303.120 + const float f = (1 - (float)std::cos(4.5f*r*2.f*cimg::valuePI))/2, o = r<.9f?(float)std::exp(-.5*r*r*12.f):0; 303.121 + switch(id) { // map the 3 cases 303.122 + case 3: if (o>0) *ptr = (T)((1-o)**ptr + o*(col0*(1.f-f)+col1*f)); break; 303.123 + case 1: if (f<1) *ptr = (T)((1-o*(1-f))**ptr + col0*o*(1-f)); break; 303.124 + case 2: if (f>0) *ptr = (T)((1-o*f)**ptr + col1*o*f); break; 303.125 + default: break; 303.126 + } break; 303.127 + } 303.128 + case 5: { // vanishing ring/bar 303.129 + const float f = (1 + (float)std::cos(r*2.f*cimg::valuePI))/2, o = r<.9?(float)std::exp(-.5*r*r*12.f):0; 303.130 + switch(id) { // map the 3 cases 303.131 + case 3: if (o>0) *ptr = (T)((1-o)**ptr + o*(col0*(1.f-f)+col1*f)); break; 303.132 + case 1: if (f<1) *ptr = (T)((1-o*(1-f))**ptr + col0*o*(1-f)); break; 303.133 + case 2: if (f>0) *ptr = (T)((1-o*f)**ptr + col1*o*f); break; 303.134 + default: break; 303.135 + } break; 303.136 + } 303.137 + case 6: { // diffraction pattern of a circular aperture (Airy function) 303.138 +#define myj1(x) (std::sin((x)<3?(x)*2.2/3:(x)-0.8)*std::exp(-std::pow((x)/5.0,1/3.0))) 303.139 + const float a = 10*(float)cimg::valuePI*r, tmp = a<0.2?.5f:((float)myj1(a)/a), f = 1-4*tmp*tmp; 303.140 +#undef myj1 303.141 + switch(id) { // map the 3 cases 303.142 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-f)+col1*f)); break; 303.143 + case 1: if (f<1) *ptr = (T)((1-opacity*(1-f))**ptr + col0*opacity*(1-f)); break; 303.144 + case 2: if (f>0) *ptr = (T)((1-opacity*f)**ptr + col1*opacity*f); break; 303.145 + default: break; 303.146 + } 303.147 + break; 303.148 + } 303.149 + case 7: { // diffraction pattern of a rectangular function (sinc function) 303.150 + const float a = 10*(float)cimg::valuePI*r, tmp = a==0?1:(float)std::sin(a)/a, f = 1-tmp*tmp; 303.151 + switch(id) { // map the 3 cases 303.152 + case 3: *ptr = (T)((1-opacity)**ptr + opacity*(col0*(1.f-f)+col1*f)); break; 303.153 + case 1: if (f<1) *ptr = (T)((1-opacity*(1-f))**ptr + col0*opacity*(1-f)); break; 303.154 + case 2: if (f>0) *ptr = (T)((1-opacity*f)**ptr + col1*opacity*f); break; 303.155 + default: break; 303.156 + } break; 303.157 + } 303.158 + default: 303.159 + CImgArgumentException("CImg<%s>::draw_gradient : unknown profile parameter",pixel_type()); break; 303.160 + } 303.161 +} 303.162 + 303.163 +//! Draw a gradient with various shape and profile 303.164 +/** 303.165 + \param x0 X-coordinate of the 1st control point 303.166 + \param y0 Y-coordinate of the 1st control point 303.167 + \param x1 X-coordinate of the 2nd control point 303.168 + \param y1 Y-coordinate of the 2nd control point 303.169 + \param color0 Array of dimv() values of type \c T, defining the 1st color. 303.170 + \param color1 Array of dimv() values of type \c T, defining the 2nd color. 303.171 + \param shape shape of the gradient (0,3) 303.172 + \param profile select a profile function (0,7) 303.173 + \param opacity Drawing opacity. 303.174 + \note 303.175 + - if one color is NULL then the gradient is done to transparency 303.176 +**/ 303.177 +template<typename tc> 303.178 +CImg<T>& draw_gradient(const int x0, const int y0, const int x1, const int y1, 303.179 + const tc *const color0, const tc *const color1, 303.180 + const int shape=0, const int profile=0, const float opacity=1.0f){ 303.181 + if (is_empty()) return *this; 303.182 + if (!color0 && !color1) 303.183 + throw CImgArgumentException("CImg<%s>::draw_gradient : The two specified colors are (null).", 303.184 + pixel_type()); 303.185 + if (profile<0 || profile>7) { // catch this case before entering in the for loop 303.186 + CImgArgumentException("CImg<%s>::draw_gradient : unknown profile parameter",pixel_type()); 303.187 + return *this; 303.188 + } 303.189 + const float abx = (float)x1-x0, aby = (float)y1-y0, ab2 = abx*abx + aby*aby; // pt A=(x0,y0), B=(x1,y1) 303.190 + const tc *pcol0 = color0, *pcol1 = color1; 303.191 + T *ptr = data; 303.192 + 303.193 + switch(shape) { 303.194 + case 0: { // linear 303.195 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { // point M=(x,z) 303.196 + const float amx = (float)x-x0, amy = (float)y-y0, r = cimg::max(0.f,cimg::min(1.f,(amx*abx+amy*aby)/ab2)); 303.197 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.198 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.199 + case 1:{ // radial 303.200 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.201 + const float amx = (float)x-x0, amy = (float)y-y0, r = cimg::max(0.f,cimg::min(1.f,(amx*amx+amy*amy)/ab2)); 303.202 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.203 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.204 + case 2:{ // radial cone 303.205 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.206 + const float amx = (float)x-x0, amy = (float)y-y0, r = cimg::max(0.f,cimg::min(1.f,(float)std::sqrt((amx*amx+amy*amy)/ab2))); 303.207 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.208 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.209 + case 3:{ // square 303.210 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.211 + const float amx = (float)x-x0, amy = (float)y-y0, r=cimg::max(0.f,cimg::min(1.f,(cimg::abs(amx*abx+amy*aby)+cimg::abs(amx*aby-amy*abx))/ab2)); 303.212 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.213 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.214 + case 4:{ // rectangle (L1) 303.215 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.216 + const float amx = (float)x-x0, amy = (float)y-y0, 303.217 + r = cimg::max(0.f,cimg::min(1.f,(cimg::abs(amx/abx)+cimg::abs(amy/aby)))); 303.218 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.219 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.220 + case 5:{ // rectangle (Linf) 303.221 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.222 + const float amx = (float)x-x0, amy = (float)y-y0, 303.223 + r=cimg::max(0.f,cimg::min(1.f,cimg::max(cimg::abs(amx/abx),cimg::abs(amy/aby)))); 303.224 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.225 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.226 + case 6:{ // gaussian 303.227 + cimg_forV(*this,v) { cimg_forXYZ(*this,x,y,z) { 303.228 + const float amx = (float)x-x0, amy = (float)y-y0, r = cimg::max(0.f,cimg::min(1.f,1-(float)std::exp(-(amx*amx+amy*amy)/ab2))); 303.229 + _draw_gradient_profile(ptr++,opacity,r,pcol0,pcol1,profile); 303.230 + } if (pcol0) ++pcol0; if (pcol1) ++pcol1; }} break; 303.231 + default: 303.232 + CImgArgumentException("CImg<%s>::draw_gradient : unknown shape parameter",pixel_type()); break; 303.233 + } 303.234 + return *this; 303.235 +} 303.236 + 303.237 +template<typename tc> 303.238 +CImg<T>& draw_gradient(const int x0, const int y0, const int x1, const int y1, 303.239 + const tc *const color0, const int color1, 303.240 + const int shape=0, const int profile=0, const float opacity=1.0f) { 303.241 + return (*this).draw_gradient(x0,y0,x1,y1,color0,(tc*)color1,shape,profile,opacity); 303.242 +} 303.243 + 303.244 +template<typename tc> 303.245 +CImg<T>& draw_gradient(const int x0, const int y0, const int x1, const int y1, 303.246 + const int color0, const tc *const color1, 303.247 + const int shape=0, const int profile=0, const float opacity=1.0f) { 303.248 + return (*this).draw_gradient(x0,y0,x1,y1,(tc*)color0,color1,shape,profile,opacity); 303.249 +} 303.250 + 303.251 +#endif
304.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 304.2 +++ b/PTdecode/CImg-1.3.0/plugins/greycstoration.h Mon Aug 03 14:09:20 2009 +0100 304.3 @@ -0,0 +1,481 @@ 304.4 +/* 304.5 + # 304.6 + # File : greycstoration.h 304.7 + # ( C++ header file - CImg plug-in ) 304.8 + # 304.9 + # Description : GREYCstoration plug-in allowing easy integration in 304.10 + # third parties softwares. 304.11 + # ( http://www.greyc.ensicaen.fr/~dtschump/greycstoration/ ) 304.12 + # This file is a part of the CImg Library project. 304.13 + # ( http://cimg.sourceforge.net ) 304.14 + # 304.15 + # THIS PLUG-IN IS INTENDED FOR DEVELOPERS ONLY. IT EASES THE INTEGRATION ALGORITHM IN 304.16 + # THIRD PARTIES SOFTWARES. IF YOU ARE A USER OF GREYCSTORATION, PLEASE LOOK 304.17 + # AT THE FILE 'greycstoration.cpp' WHICH IS THE SOURCE OF THE COMPLETE 304.18 + # COMMAND LINE GREYCSTORATION TOOL. 304.19 + # 304.20 + # Copyright : David Tschumperle 304.21 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 304.22 + # 304.23 + # License : CeCILL v2.0 304.24 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 304.25 + # 304.26 + # This software is governed by the CeCILL license under French law and 304.27 + # abiding by the rules of distribution of free software. You can use, 304.28 + # modify and/ or redistribute the software under the terms of the CeCILL 304.29 + # license as circulated by CEA, CNRS and INRIA at the following URL 304.30 + # "http://www.cecill.info". 304.31 + # 304.32 + # As a counterpart to the access to the source code and rights to copy, 304.33 + # modify and redistribute granted by the license, users are provided only 304.34 + # with a limited warranty and the software's author, the holder of the 304.35 + # economic rights, and the successive licensors have only limited 304.36 + # liability. 304.37 + # 304.38 + # In this respect, the user's attention is drawn to the risks associated 304.39 + # with loading, using, modifying and/or developing or reproducing the 304.40 + # software by the user in light of its specific status of free software, 304.41 + # that may mean that it is complicated to manipulate, and that also 304.42 + # therefore means that it is reserved for developers and experienced 304.43 + # professionals having in-depth computer knowledge. Users are therefore 304.44 + # encouraged to load and test the software's suitability as regards their 304.45 + # requirements in conditions enabling the security of their systems and/or 304.46 + # data to be ensured and, more generally, to use and operate it in the 304.47 + # same conditions as regards security. 304.48 + # 304.49 + # The fact that you are presently reading this means that you have had 304.50 + # knowledge of the CeCILL license and that you accept its terms. 304.51 + # 304.52 +*/ 304.53 + 304.54 +#ifndef cimg_plugin_greycstoration 304.55 +#define cimg_plugin_greycstoration 304.56 + 304.57 +//------------------------------------------------------------------------------ 304.58 +// GREYCstoration parameter structure, storing important informations about 304.59 +// algorithm parameters and computing threads. 304.60 +// ** This structure has not to be manipulated by the API user, so please just 304.61 +// ignore it if you want to ** 304.62 +//------------------------------------------------------------------------------- 304.63 +struct _greycstoration_params { 304.64 + 304.65 + // Tell if the patch-based algorithm is selected 304.66 + bool patch_based; 304.67 + 304.68 + // Parameters specific to the non-patch regularization algorithm 304.69 + float amplitude; 304.70 + float sharpness; 304.71 + float anisotropy; 304.72 + float alpha; 304.73 + float sigma; 304.74 + float gfact; 304.75 + float dl; 304.76 + float da; 304.77 + float gauss_prec; 304.78 + unsigned int interpolation; 304.79 + 304.80 + // Parameters specific to the patch-based regularization algorithm 304.81 + unsigned int patch_size; 304.82 + float sigma_s; 304.83 + float sigma_p; 304.84 + unsigned int lookup_size; 304.85 + 304.86 + // Non-specific parameters of the algorithms. 304.87 + CImg<T> *source; 304.88 + const CImg<unsigned char> *mask; 304.89 + CImg<T> *temporary; 304.90 + unsigned long *counter; 304.91 + unsigned int tile; 304.92 + unsigned int tile_border; 304.93 + unsigned int thread; 304.94 + unsigned int nb_threads; 304.95 + bool fast_approx; 304.96 + bool is_running; 304.97 + bool *stop_request; 304.98 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.99 + pthread_mutex_t 304.100 + *mutex; 304.101 +#elif cimg_OS==2 304.102 + HANDLE mutex; 304.103 +#else 304.104 + void *mutex; 304.105 +#endif 304.106 + 304.107 + // Default constructor 304.108 + _greycstoration_params():patch_based(false),amplitude(0),sharpness(0),anisotropy(0),alpha(0),sigma(0),gfact(1), 304.109 + dl(0),da(0),gauss_prec(0),interpolation(0),patch_size(0), 304.110 + sigma_s(0),sigma_p(0),lookup_size(0),source(0),mask(0),temporary(0),counter(0),tile(0), 304.111 + tile_border(0),thread(0),nb_threads(0),fast_approx(false),is_running(false), stop_request(0), mutex(0) {} 304.112 +}; 304.113 + 304.114 +_greycstoration_params greycstoration_params[16]; 304.115 + 304.116 +//---------------------------------------------------------- 304.117 +// Public functions of the GREYCstoration API. 304.118 +// Use the functions below for integrating GREYCstoration 304.119 +// in your own C++ code. 304.120 +//---------------------------------------------------------- 304.121 + 304.122 +//! Test if GREYCstoration threads are still running. 304.123 +bool greycstoration_is_running() const { 304.124 + return greycstoration_params->is_running; 304.125 +} 304.126 + 304.127 +//! Force the GREYCstoration threads to stop. 304.128 +CImg& greycstoration_stop() { 304.129 + if (greycstoration_is_running()) { 304.130 + *(greycstoration_params->stop_request) = true; 304.131 + while (greycstoration_params->is_running) cimg::wait(50); 304.132 + } 304.133 + return *this; 304.134 +} 304.135 + 304.136 +//! Return the GREYCstoration progress bar indice (between 0 and 100). 304.137 +float greycstoration_progress() const { 304.138 + if (!greycstoration_is_running()) return 0.0f; 304.139 + const unsigned long counter = greycstoration_params->counter?*(greycstoration_params->counter):0; 304.140 + const float 304.141 + da = greycstoration_params->da, 304.142 + factor = greycstoration_params->patch_based?1:(1+360/da); 304.143 + float maxcounter = 0; 304.144 + if (greycstoration_params->tile==0) maxcounter = width*height*depth*factor; 304.145 + else { 304.146 + const unsigned int 304.147 + t = greycstoration_params->tile, 304.148 + b = greycstoration_params->tile_border, 304.149 + n = (1+(width-1)/t)*(1+(height-1)/t)*(1+(depth-1)/t); 304.150 + maxcounter = (width*height*depth + n*4*b*(b + t))*factor; 304.151 + } 304.152 + return cimg::min(counter*99.9f/maxcounter,99.9f); 304.153 +} 304.154 + 304.155 +//! Run the non-patch version of the GREYCstoration algorithm on the instance image, using a mask. 304.156 +CImg& greycstoration_run(const CImg<unsigned char>& mask, 304.157 + const float amplitude=60, const float sharpness=0.7f, const float anisotropy=0.3f, 304.158 + const float alpha=0.6f, const float sigma=1.1f, const float gfact=1.0f, 304.159 + const float dl=0.8f, const float da=30.0f, 304.160 + const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, 304.161 + const unsigned int tile=0, const unsigned int tile_border=0, const unsigned int nb_threads=1) { 304.162 + 304.163 + if (greycstoration_is_running()) 304.164 + throw CImgInstanceException("CImg<T>::greycstoration_run() : A GREYCstoration thread is already running on" 304.165 + " the instance image (%u,%u,%u,%u,%p).",width,height,depth,dim,data); 304.166 + 304.167 + else { 304.168 + if (!mask.is_empty() && !mask.is_sameXY(*this)) 304.169 + throw CImgArgumentException("CImg<%s>::greycstoration_run() : Given mask (%u,%u,%u,%u,%p) and instance image " 304.170 + "(%u,%u,%u,%u,%p) have different dimensions.", 304.171 + pixel_type(),mask.width,mask.height,mask.depth,mask.dim,mask.data,width,height,depth,dim,data); 304.172 + if (nb_threads>16) cimg::warn("CImg<%s>::greycstoration_run() : Multi-threading mode limited to 16 threads max."); 304.173 + const unsigned int 304.174 + ntile = (tile && (tile<width || tile<height || (depth>1 && tile<depth)))?tile:0, 304.175 +#if cimg_OS==1 && !defined(_PTHREAD_H) 304.176 + nthreads = 0; 304.177 +#else 304.178 + nthreads = ntile?cimg::min(nb_threads,16U):cimg::min(nb_threads,1U); 304.179 +#endif 304.180 + 304.181 + CImg<T> *const temporary = ntile?new CImg<T>(*this):0; 304.182 + unsigned long *const counter = new unsigned long; 304.183 + *counter = 0; 304.184 + bool *const stop_request = new bool; 304.185 + *stop_request = false; 304.186 + 304.187 + for (unsigned int k=0; k<(nthreads?nthreads:1); k++) { 304.188 + greycstoration_params[k].patch_based = false; 304.189 + greycstoration_params[k].amplitude = amplitude; 304.190 + greycstoration_params[k].sharpness = sharpness; 304.191 + greycstoration_params[k].anisotropy = anisotropy; 304.192 + greycstoration_params[k].alpha = alpha; 304.193 + greycstoration_params[k].sigma = sigma; 304.194 + greycstoration_params[k].gfact = gfact; 304.195 + greycstoration_params[k].dl = dl; 304.196 + greycstoration_params[k].da = da; 304.197 + greycstoration_params[k].gauss_prec = gauss_prec; 304.198 + greycstoration_params[k].interpolation = interpolation; 304.199 + greycstoration_params[k].fast_approx = fast_approx; 304.200 + greycstoration_params[k].source = this; 304.201 + greycstoration_params[k].mask = &mask; 304.202 + greycstoration_params[k].temporary = temporary; 304.203 + greycstoration_params[k].counter = counter; 304.204 + greycstoration_params[k].tile = ntile; 304.205 + greycstoration_params[k].tile_border = tile_border; 304.206 + greycstoration_params[k].thread = k; 304.207 + greycstoration_params[k].nb_threads = nthreads; 304.208 + greycstoration_params[k].is_running = true; 304.209 + greycstoration_params[k].stop_request = stop_request; 304.210 + if (k) greycstoration_params[k].mutex = greycstoration_params[0].mutex; 304.211 + else greycstoration_mutex_create(greycstoration_params[0]); 304.212 + } 304.213 + if (nthreads) { // Threaded version 304.214 +#if cimg_OS==1 304.215 +#ifdef _PTHREAD_H 304.216 + pthread_attr_t attr; 304.217 + pthread_attr_init(&attr); 304.218 + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); 304.219 + for (unsigned int k=0; k<greycstoration_params->nb_threads; k++) { 304.220 + pthread_t thread; 304.221 + const int err = pthread_create(&thread, &attr, greycstoration_thread, (void*)(greycstoration_params+k)); 304.222 + if (err) throw CImgException("CImg<%s>::greycstoration_run() : pthread_create returned error %d", 304.223 + pixel_type(), err); 304.224 + } 304.225 +#endif 304.226 +#elif cimg_OS==2 304.227 + for (unsigned int k=0; k<greycstoration_params->nb_threads; k++) { 304.228 + unsigned long ThreadID = 0; 304.229 + CreateThread(0,0,greycstoration_thread,(void*)(greycstoration_params+k),0,&ThreadID); 304.230 + } 304.231 +#else 304.232 + throw CImgInstanceException("CImg<T>::greycstoration_run() : Threads are not supported, please define cimg_OS first."); 304.233 +#endif 304.234 + } else greycstoration_thread((void*)greycstoration_params); // Non-threaded version 304.235 + } 304.236 + return *this; 304.237 +} 304.238 + 304.239 +//! Run the non-patch version of the GREYCstoration algorithm on the instance image. 304.240 +CImg& greycstoration_run(const float amplitude=50, const float sharpness=0.7f, const float anisotropy=0.3f, 304.241 + const float alpha=0.6f, const float sigma=1.1f, const float gfact=1.0f, 304.242 + const float dl=0.8f, const float da=30.0f, 304.243 + const float gauss_prec=2.0f, const unsigned int interpolation=0, const bool fast_approx=true, 304.244 + const unsigned int tile=0, const unsigned int tile_border=0, const unsigned int nb_threads=1) { 304.245 + static const CImg<unsigned char> empty_mask; 304.246 + return greycstoration_run(empty_mask,amplitude,sharpness,anisotropy,alpha,sigma,gfact,dl,da,gauss_prec, 304.247 + interpolation,fast_approx,tile,tile_border,nb_threads); 304.248 +} 304.249 + 304.250 +//! Run the patch-based version of the GREYCstoration algorithm on the instance image. 304.251 +CImg& greycstoration_patch_run(const unsigned int patch_size=5, const float sigma_p=10, const float sigma_s=100, 304.252 + const unsigned int lookup_size=20, const bool fast_approx=true, 304.253 + const unsigned int tile=0, const unsigned int tile_border=0, const unsigned int nb_threads=1) { 304.254 + 304.255 + static const CImg<unsigned char> empty_mask; 304.256 + if (greycstoration_is_running()) 304.257 + throw CImgInstanceException("CImg<T>::greycstoration_run() : A GREYCstoration thread is already running on" 304.258 + " the instance image (%u,%u,%u,%u,%p).",width,height,depth,dim,data); 304.259 + 304.260 + else { 304.261 + if (nb_threads>16) cimg::warn("CImg<%s>::greycstoration_run() : Multi-threading mode limited to 16 threads max."); 304.262 + const unsigned int 304.263 + ntile = (tile && (tile<width || tile<height || (depth>1 && tile<depth)))?tile:0, 304.264 +#if cimg_OS==1 && !defined(_PTHREAD_H) 304.265 + nthreads = 0; 304.266 +#else 304.267 + nthreads = ntile?cimg::min(nb_threads,16U):cimg::min(nb_threads,1U); 304.268 +#endif 304.269 + 304.270 + CImg<T> *const temporary = ntile?new CImg<T>(*this):0; 304.271 + unsigned long *const counter = new unsigned long; 304.272 + *counter = 0; 304.273 + bool *const stop_request = new bool; 304.274 + *stop_request = false; 304.275 + 304.276 + for (unsigned int k=0; k<(nthreads?nthreads:1); k++) { 304.277 + greycstoration_params[k].patch_based = true; 304.278 + greycstoration_params[k].patch_size = patch_size; 304.279 + greycstoration_params[k].sigma_s = sigma_s; 304.280 + greycstoration_params[k].sigma_p = sigma_p; 304.281 + greycstoration_params[k].lookup_size = lookup_size; 304.282 + greycstoration_params[k].source = this; 304.283 + greycstoration_params[k].mask = &empty_mask; 304.284 + greycstoration_params[k].temporary = temporary; 304.285 + greycstoration_params[k].counter = counter; 304.286 + greycstoration_params[k].tile = ntile; 304.287 + greycstoration_params[k].tile_border = tile_border; 304.288 + greycstoration_params[k].thread = k; 304.289 + greycstoration_params[k].nb_threads = nthreads; 304.290 + greycstoration_params[k].fast_approx = fast_approx; 304.291 + greycstoration_params[k].is_running = true; 304.292 + greycstoration_params[k].stop_request = stop_request; 304.293 + if (k) greycstoration_params[k].mutex = greycstoration_params[0].mutex; 304.294 + else greycstoration_mutex_create(greycstoration_params[0]); 304.295 + } 304.296 + if (nthreads) { // Threaded version 304.297 +#if cimg_OS==1 304.298 +#ifdef _PTHREAD_H 304.299 + pthread_attr_t attr; 304.300 + pthread_attr_init(&attr); 304.301 + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); 304.302 + for (unsigned int k=0; k<greycstoration_params->nb_threads; k++) { 304.303 + pthread_t thread; 304.304 + const int err = pthread_create(&thread, &attr, greycstoration_thread, (void*)(greycstoration_params+k)); 304.305 + if (err) throw CImgException("CImg<%s>::greycstoration_run() : pthread_create returned error %d", 304.306 + pixel_type(), err); 304.307 + } 304.308 +#endif 304.309 +#elif cimg_OS==2 304.310 + for (unsigned int k=0; k<greycstoration_params->nb_threads; k++) { 304.311 + unsigned long ThreadID = 0; 304.312 + CreateThread(0,0,greycstoration_thread,(void*)(greycstoration_params+k),0,&ThreadID); 304.313 + } 304.314 +#else 304.315 + throw CImgInstanceException("CImg<T>::greycstoration_run() : Threads support have not been enabled in this version of GREYCstoration."); 304.316 +#endif 304.317 + } else greycstoration_thread((void*)greycstoration_params); // Non-threaded version 304.318 + } 304.319 + return *this; 304.320 +} 304.321 + 304.322 +//------------------------------------------------------------------------------ 304.323 +// GREYCstoration private functions. 304.324 +// Should not be used directly by the API user. 304.325 +//------------------------------------------------------------------------------- 304.326 + 304.327 +static void greycstoration_mutex_create(_greycstoration_params &p) { 304.328 + if (p.nb_threads>1) { 304.329 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.330 + p.mutex = new pthread_mutex_t; 304.331 + pthread_mutex_init(p.mutex,0); 304.332 +#elif cimg_OS==2 304.333 + p.mutex = CreateMutex(0,FALSE,0); 304.334 +#endif 304.335 + } 304.336 +} 304.337 + 304.338 +static void greycstoration_mutex_lock(_greycstoration_params &p) { 304.339 + if (p.nb_threads>1) { 304.340 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.341 + if (p.mutex) pthread_mutex_lock(p.mutex); 304.342 +#elif cimg_OS==2 304.343 + WaitForSingleObject(p.mutex,INFINITE); 304.344 +#endif 304.345 + } 304.346 +} 304.347 + 304.348 +static void greycstoration_mutex_unlock(_greycstoration_params &p) { 304.349 + if (p.nb_threads>1) { 304.350 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.351 + if (p.mutex) pthread_mutex_unlock(p.mutex); 304.352 +#elif cimg_OS==2 304.353 + ReleaseMutex(p.mutex); 304.354 +#endif 304.355 + } 304.356 +} 304.357 + 304.358 +static void greycstoration_mutex_destroy(_greycstoration_params &p) { 304.359 + if (p.nb_threads>1) { 304.360 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.361 + if (p.mutex) pthread_mutex_destroy(p.mutex); 304.362 +#elif cimg_OS==2 304.363 + CloseHandle(p.mutex); 304.364 +#endif 304.365 + p.mutex = 0; 304.366 + } 304.367 +} 304.368 + 304.369 +#if cimg_OS==1 304.370 +static void* greycstoration_thread(void *arg) { 304.371 +#elif cimg_OS==2 304.372 + static DWORD WINAPI greycstoration_thread(void *arg) { 304.373 +#endif 304.374 + _greycstoration_params &p = *(_greycstoration_params*)arg; 304.375 + greycstoration_mutex_lock(p); 304.376 + const CImg<unsigned char> &mask = *(p.mask); 304.377 + CImg<T> &source = *(p.source); 304.378 + 304.379 + if (!p.tile) { 304.380 + 304.381 + // Non-tiled version 304.382 + //------------------ 304.383 + if (p.patch_based) source.blur_patch(p.patch_size,p.sigma_p,p.sigma_s,p.lookup_size,p.fast_approx); 304.384 + else source.blur_anisotropic(mask,p.amplitude,p.sharpness,p.anisotropy,p.alpha,p.sigma,p.dl,p.da,p.gauss_prec, 304.385 + p.interpolation,p.fast_approx,p.gfact); 304.386 + 304.387 + } else { 304.388 + 304.389 + // Tiled version 304.390 + //--------------- 304.391 + CImg<T> &temporary = *(p.temporary); 304.392 + const bool threed = (source.depth>1); 304.393 + const unsigned int b = p.tile_border; 304.394 + unsigned int ctile = 0; 304.395 + if (threed) { 304.396 + for (unsigned int z=0; z<source.depth && !*(p.stop_request); z+=p.tile) 304.397 + for (unsigned int y=0; y<source.height && !*(p.stop_request); y+=p.tile) 304.398 + for (unsigned int x=0; x<source.width && !*(p.stop_request); x+=p.tile) 304.399 + if (!p.nb_threads || ((ctile++)%p.nb_threads)==p.thread) { 304.400 + const unsigned int 304.401 + x1 = x+p.tile-1, 304.402 + y1 = y+p.tile-1, 304.403 + z1 = z+p.tile-1, 304.404 + xe = x1<source.width?x1:source.width-1, 304.405 + ye = y1<source.height?y1:source.height-1, 304.406 + ze = z1<source.depth?z1:source.depth-1; 304.407 + CImg<T> img = source.get_crop(x-b,y-b,z-b,xe+b,ye+b,ze+b,true); 304.408 + CImg<unsigned char> mask_tile = mask.is_empty()?mask:mask.get_crop(x-b,y-b,z-b,xe+b,ye+b,ze+b,true); 304.409 + img.greycstoration_params[0] = p; 304.410 + greycstoration_mutex_unlock(p); 304.411 + if (p.patch_based) img.blur_patch(p.patch_size,p.sigma_p,p.sigma_s,p.lookup_size,p.fast_approx); 304.412 + else img.blur_anisotropic(mask_tile,p.amplitude,p.sharpness,p.anisotropy, 304.413 + p.alpha,p.sigma,p.dl,p.da,p.gauss_prec,p.interpolation,p.fast_approx,p.gfact); 304.414 + greycstoration_mutex_lock(p); 304.415 + temporary.draw_image(x,y,z,img.crop(b,b,b,img.width-b,img.height-b,img.depth-b)); 304.416 + } 304.417 + } else { 304.418 + for (unsigned int y=0; y<source.height && !*(p.stop_request); y+=p.tile) 304.419 + for (unsigned int x=0; x<source.width && !*(p.stop_request); x+=p.tile) 304.420 + if (!p.nb_threads || ((ctile++)%p.nb_threads)==p.thread) { 304.421 + const unsigned int 304.422 + x1 = x+p.tile-1, 304.423 + y1 = y+p.tile-1, 304.424 + xe = x1<source.width?x1:source.width-1, 304.425 + ye = y1<source.height?y1:source.height-1; 304.426 + CImg<T> img = source.get_crop(x-b,y-b,xe+b,ye+b,true); 304.427 + CImg<unsigned char> mask_tile = mask.is_empty()?mask:mask.get_crop(x-b,y-b,xe+b,ye+b,true); 304.428 + img.greycstoration_params[0] = p; 304.429 + greycstoration_mutex_unlock(p); 304.430 + if (p.patch_based) img.blur_patch(p.patch_size,p.sigma_p,p.sigma_s,p.lookup_size,p.fast_approx); 304.431 + else img.blur_anisotropic(mask_tile,p.amplitude,p.sharpness,p.anisotropy, 304.432 + p.alpha,p.sigma,p.dl,p.da,p.gauss_prec,p.interpolation,p.fast_approx,p.gfact); 304.433 + temporary.draw_image(x,y,img.crop(b,b,img.width-b,img.height-b)); 304.434 + greycstoration_mutex_lock(p); 304.435 + } 304.436 + } 304.437 + } 304.438 + greycstoration_mutex_unlock(p); 304.439 + 304.440 + if (!p.thread) { 304.441 + if (p.nb_threads>1) { 304.442 + bool stopflag = true; 304.443 + do { 304.444 + stopflag = true; 304.445 + for (unsigned int k=1; k<p.nb_threads; k++) if (source.greycstoration_params[k].is_running) stopflag = false; 304.446 + if (!stopflag) cimg::wait(50); 304.447 + } while (!stopflag); 304.448 + } 304.449 + if (p.counter) delete p.counter; 304.450 + if (p.temporary) { source = *(p.temporary); delete p.temporary; } 304.451 + if (p.stop_request) delete p.stop_request; 304.452 + p.mask = 0; 304.453 + p.amplitude = p.sharpness = p.anisotropy = p.alpha = p.sigma = p.gfact = p.dl = p.da = p.gauss_prec = p.sigma_s = p.sigma_p = 0; 304.454 + p.patch_size = p.interpolation = p.lookup_size = 0; 304.455 + p.fast_approx = false; 304.456 + p.source = 0; 304.457 + p.temporary = 0; 304.458 + p.counter = 0; 304.459 + p.tile = p.tile_border = p.thread = p.nb_threads = 0; 304.460 + p.stop_request = false; 304.461 + greycstoration_mutex_destroy(p); 304.462 + } 304.463 + p.is_running = false; 304.464 + 304.465 + if (p.nb_threads) { 304.466 +#if cimg_OS==1 && defined(_PTHREAD_H) 304.467 + pthread_exit(arg); 304.468 + return arg; 304.469 +#elif cimg_OS==2 304.470 + ExitThread(0); 304.471 +#endif 304.472 + } 304.473 + return 0; 304.474 + } 304.475 + 304.476 + 304.477 +#define cimg_plugin_greycstoration_count \ 304.478 + if (!*(greycstoration_params->stop_request)) ++(*greycstoration_params->counter); else return *this; 304.479 +#define cimg_plugin_greycstoration_lock \ 304.480 + greycstoration_mutex_lock(greycstoration_params[0]); 304.481 +#define cimg_plugin_greycstoration_unlock \ 304.482 + greycstoration_mutex_unlock(greycstoration_params[0]); 304.483 + 304.484 +#endif
305.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 305.2 +++ b/PTdecode/CImg-1.3.0/plugins/integral_line.h Mon Aug 03 14:09:20 2009 +0100 305.3 @@ -0,0 +1,563 @@ 305.4 +/* 305.5 + # 305.6 + # File : integral_line.h 305.7 + # ( C++ header file - CImg plug-in ) 305.8 + # 305.9 + # Description : This CImg plug-in defines function to track integral lines. 305.10 + # This file is a part of the CImg Library project. 305.11 + # ( http://cimg.sourceforge.net ) 305.12 + # 305.13 + # Copyright : David Tschumperle 305.14 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 305.15 + # 305.16 + # License : CeCILL v2.0 305.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 305.18 + # 305.19 + # This software is governed by the CeCILL license under French law and 305.20 + # abiding by the rules of distribution of free software. You can use, 305.21 + # modify and/ or redistribute the software under the terms of the CeCILL 305.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 305.23 + # "http://www.cecill.info". 305.24 + # 305.25 + # As a counterpart to the access to the source code and rights to copy, 305.26 + # modify and redistribute granted by the license, users are provided only 305.27 + # with a limited warranty and the software's author, the holder of the 305.28 + # economic rights, and the successive licensors have only limited 305.29 + # liability. 305.30 + # 305.31 + # In this respect, the user's attention is drawn to the risks associated 305.32 + # with loading, using, modifying and/or developing or reproducing the 305.33 + # software by the user in light of its specific status of free software, 305.34 + # that may mean that it is complicated to manipulate, and that also 305.35 + # therefore means that it is reserved for developers and experienced 305.36 + # professionals having in-depth computer knowledge. Users are therefore 305.37 + # encouraged to load and test the software's suitability as regards their 305.38 + # requirements in conditions enabling the security of their systems and/or 305.39 + # data to be ensured and, more generally, to use and operate it in the 305.40 + # same conditions as regards security. 305.41 + # 305.42 + # The fact that you are presently reading this means that you have had 305.43 + # knowledge of the CeCILL license and that you accept its terms. 305.44 + # 305.45 +*/ 305.46 + 305.47 +#ifndef cimg_plugin_integral_line 305.48 +#define cimg_plugin_integral_line 305.49 + 305.50 +#define pcimg_valign2d(i,j) \ 305.51 + { restype &u = W(i,j,0,0), &v = W(i,j,0,1); \ 305.52 + if (u*curru + v*currv<0) { u=-u; v=-v; }} 305.53 +#define pcimg_valign3d(i,j,k) \ 305.54 + { restype &u = W(i,j,k,0), &v = W(i,j,k,1), &w = W(i,j,k,2); \ 305.55 + if (u*curru + v*currv + w*currw<0) { u=-u; v=-v; w=-w; }} 305.56 + 305.57 +CImgList<typename cimg::superset<float,T>::type> 305.58 +get_integral_line(const float x, const float y, const float z=0, 305.59 + const float L=100, const float dl=0.5f, const unsigned int interpolation=3, 305.60 + const bool orientations_only=false) const { 305.61 + 305.62 + typedef typename cimg::superset<float,T>::type restype; 305.63 + CImgList<restype> tracking; 305.64 + CImg<restype> W = (*this)*dl; 305.65 + 305.66 + const unsigned int 305.67 + dx1 = width-1, 305.68 + dy1 = height-1; 305.69 + const float 305.70 + L2 = L/2, 305.71 + cu = (float)(dl*W((int)x,(int)y,(int)z,0)), 305.72 + cv = (float)(dl*W((int)x,(int)y,(int)z,1)); 305.73 + float 305.74 + pu = cu, 305.75 + pv = cv, 305.76 + X = x, 305.77 + Y = y; 305.78 + 305.79 + // 3D integral lines 305.80 + //------------------- 305.81 + switch (W.dimv()) { 305.82 + 305.83 + case 3: { 305.84 + const unsigned int 305.85 + dz1 = depth-1; 305.86 + const float 305.87 + cw = (float)(dl*W((int)x,(int)y,(int)z,2)); 305.88 + float 305.89 + pw = cw, 305.90 + Z = z; 305.91 + 305.92 + switch (interpolation) { 305.93 + case 0: { // Nearest neighbor 305.94 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.95 + tracking.insert(CImg<restype>::vector(X,Y,Z)); 305.96 + const int 305.97 + cx = (int)(X+0.5f), 305.98 + cy = (int)(Y+0.5f), 305.99 + cz = (int)(Z+0.5f); 305.100 + float 305.101 + u = (float)(dl*W(cx,cy,cz,0)), 305.102 + v = (float)(dl*W(cx,cy,cz,1)), 305.103 + w = (float)(dl*W(cx,cy,cz,2)); 305.104 + if (orientations_only && (pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 305.105 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 305.106 + } 305.107 + pu = cu; 305.108 + pv = cv; 305.109 + pw = cw; 305.110 + X = x; 305.111 + Y = y; 305.112 + Z = z; 305.113 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.114 + const int 305.115 + cx = (int)(X+0.5f), 305.116 + cy = (int)(Y+0.5f), 305.117 + cz = (int)(Z+0.5f); 305.118 + float 305.119 + u = (float)(dl*W(cx,cy,cz,0)), 305.120 + v = (float)(dl*W(cx,cy,cz,1)), 305.121 + w = (float)(dl*W(cx,cy,cz,2)); 305.122 + if (orientations_only && (pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 305.123 + X-=(pu=u); Y-=(pv=v); Z-=(pw=w); 305.124 + tracking.insert(CImg<restype>::vector(X,Y,Z),0); 305.125 + } 305.126 + } break; 305.127 + 305.128 + case 1: { // Linear 305.129 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.130 + tracking.insert(CImg<restype>::vector(X,Y,Z)); 305.131 + const int 305.132 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.133 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.134 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.135 + if (orientations_only) { 305.136 + const float 305.137 + curru = (float)W(cx,cy,cz,0), 305.138 + currv = (float)W(cx,cy,cz,1), 305.139 + currw = (float)W(cx,cy,cz,2); 305.140 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.141 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.142 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.143 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.144 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.145 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.146 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.147 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.148 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.149 + } 305.150 + float 305.151 + u = (float)(dl*W._linear_atXYZ(X,Y,Z,0)), 305.152 + v = (float)(dl*W._linear_atXYZ(X,Y,Z,1)), 305.153 + w = (float)(dl*W._linear_atXYZ(X,Y,Z,2)); 305.154 + if (orientations_only && (pu*u + pv*v + pw*w)<0) { u=-u; v=-v; w=-w; } 305.155 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 305.156 + } 305.157 + pu = cu; 305.158 + pv = cv; 305.159 + pw = cw; 305.160 + X = x; 305.161 + Y = y; 305.162 + Z = z; 305.163 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.164 + const int 305.165 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.166 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.167 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.168 + if (orientations_only) { 305.169 + const float 305.170 + curru = (float)W(cx,cy,cz,0), 305.171 + currv = (float)W(cx,cy,cz,1), 305.172 + currw = (float)W(cx,cy,cz,2); 305.173 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.174 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.175 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.176 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.177 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.178 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.179 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.180 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.181 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.182 + } 305.183 + float 305.184 + u = (float)(dl*W._linear_atXYZ(X,Y,Z,0)), 305.185 + v = (float)(dl*W._linear_atXYZ(X,Y,Z,1)), 305.186 + w = (float)(dl*W._linear_atXYZ(X,Y,Z,2)); 305.187 + if (orientations_only && (pu*u+pv*v+pw*w)<0) { u=-u; v=-v; w=-w; } 305.188 + X-=(pu=u); Y-=(pv=v); Z-=(pw=w); 305.189 + tracking.insert(CImg<restype>::vector(X,Y,Z),0); 305.190 + } 305.191 + 305.192 + } break; 305.193 + 305.194 + case 2: { // 2nd order Runge Kutta 305.195 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.196 + tracking.insert(CImg<restype>::vector(X,Y,Z)); 305.197 + const int 305.198 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.199 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.200 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.201 + if (orientations_only) { 305.202 + const float 305.203 + curru = (float)W(cx,cy,cz,0), 305.204 + currv = (float)W(cx,cy,cz,1), 305.205 + currw = (float)W(cx,cy,cz,2); 305.206 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.207 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.208 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.209 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.210 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.211 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.212 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.213 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.214 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.215 + } 305.216 + const float 305.217 + u0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,0)), 305.218 + v0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,1)), 305.219 + w0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,2)); 305.220 + float 305.221 + u = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,0)), 305.222 + v = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,1)), 305.223 + w = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,2)); 305.224 + if (orientations_only && (pu*u+pv*v+pw*w)<0) { u=-u; v=-v; w=-w; } 305.225 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 305.226 + } 305.227 + pu = cu; 305.228 + pv = cv; 305.229 + pw = cw; 305.230 + X = x; 305.231 + Y = y; 305.232 + Z = z; 305.233 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.234 + const int 305.235 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.236 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.237 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.238 + if (orientations_only) { 305.239 + const float 305.240 + curru = (float)W(cx,cy,cz,0), 305.241 + currv = (float)W(cx,cy,cz,1), 305.242 + currw = (float)W(cx,cy,cz,2); 305.243 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.244 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.245 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.246 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.247 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.248 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.249 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.250 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.251 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.252 + } 305.253 + const float 305.254 + u0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,0)), 305.255 + v0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,1)), 305.256 + w0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,2)); 305.257 + float 305.258 + u = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,0)), 305.259 + v = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,1)), 305.260 + w = (float)(dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,2)); 305.261 + if (orientations_only && (pu*u+pv*v+pw*w)<0) { u=-u; v=-v; w=-w; } 305.262 + X-=(pu=u); Y-=(pv=v); Z-=(pw=w); 305.263 + tracking.insert(CImg<restype>::vector(X,Y,Z),0); 305.264 + } 305.265 + } break; 305.266 + 305.267 + case 3: { // 4nd order Runge Kutta 305.268 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.269 + tracking.insert(CImg<restype>::vector(X,Y,Z)); 305.270 + const int 305.271 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.272 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.273 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.274 + if (orientations_only) { 305.275 + const float 305.276 + curru = (float)W(cx,cy,cz,0), 305.277 + currv = (float)W(cx,cy,cz,1), 305.278 + currw = (float)W(cx,cy,cz,2); 305.279 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.280 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.281 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.282 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.283 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.284 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.285 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.286 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.287 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.288 + } 305.289 + const float 305.290 + u0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,0)), 305.291 + v0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,1)), 305.292 + w0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,2)), 305.293 + u1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,0)), 305.294 + v1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,1)), 305.295 + w1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,2)), 305.296 + u2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,0)), 305.297 + v2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,1)), 305.298 + w2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,2)), 305.299 + u3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,0)), 305.300 + v3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,1)), 305.301 + w3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,2)); 305.302 + float 305.303 + u = u0/6 + u1/3 + u2/3 + u3/6, 305.304 + v = v0/6 + v1/3 + v2/3 + v3/6, 305.305 + w = w0/6 + w1/3 + w2/3 + w3/6; 305.306 + if (orientations_only && (pu*u+pv*v+pw*w)<0) { u=-u; v=-v; w=-w; } 305.307 + X+=(pu=u); Y+=(pv=v); Z+=(pw=w); 305.308 + } 305.309 + pu = cu; 305.310 + pv = cv; 305.311 + pw = cw; 305.312 + X = x; 305.313 + Y = y; 305.314 + Z = z; 305.315 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1 && Z>=0 && Z<=dz1; l+=dl) { 305.316 + const int 305.317 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.318 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1, 305.319 + cz = (int)Z, pz = (cz-1<0)?0:cz-1, nz = (cz+1>(int)dz1)?(int)dz1:cz+1; 305.320 + if (orientations_only) { 305.321 + const float 305.322 + curru = (float)W(cx,cy,cz,0), 305.323 + currv = (float)W(cx,cy,cz,1), 305.324 + currw = (float)W(cx,cy,cz,2); 305.325 + pcimg_valign3d(px,py,pz); pcimg_valign3d(cx,py,pz); pcimg_valign3d(nx,py,pz); 305.326 + pcimg_valign3d(px,cy,pz); pcimg_valign3d(cx,cy,pz); pcimg_valign3d(nx,cy,pz); 305.327 + pcimg_valign3d(px,ny,pz); pcimg_valign3d(cx,ny,pz); pcimg_valign3d(nx,ny,pz); 305.328 + pcimg_valign3d(px,py,cz); pcimg_valign3d(cx,py,cz); pcimg_valign3d(nx,py,cz); 305.329 + pcimg_valign3d(px,cy,cz); pcimg_valign3d(nx,cy,cz); 305.330 + pcimg_valign3d(px,ny,cz); pcimg_valign3d(cx,ny,cz); pcimg_valign3d(nx,ny,cz); 305.331 + pcimg_valign3d(px,py,nz); pcimg_valign3d(cx,py,nz); pcimg_valign3d(nx,py,nz); 305.332 + pcimg_valign3d(px,cy,nz); pcimg_valign3d(cx,cy,nz); pcimg_valign3d(nx,cy,nz); 305.333 + pcimg_valign3d(px,ny,nz); pcimg_valign3d(cx,ny,nz); pcimg_valign3d(nx,ny,nz); 305.334 + } 305.335 + const float 305.336 + u0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,0)), 305.337 + v0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,1)), 305.338 + w0 = (float)(0.5f*dl*W._linear_atXYZ(X,Y,Z,2)), 305.339 + u1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,0)), 305.340 + v1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,1)), 305.341 + w1 = (float)(0.5f*dl*W._linear_atXYZ(X+u0,Y+v0,Z+w0,2)), 305.342 + u2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,0)), 305.343 + v2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,1)), 305.344 + w2 = (float)(0.5f*dl*W._linear_atXYZ(X+u1,Y+v1,Z+w1,2)), 305.345 + u3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,0)), 305.346 + v3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,1)), 305.347 + w3 = (float)(0.5f*dl*W._linear_atXYZ(X+u2,Y+v2,Z+w2,2)); 305.348 + float 305.349 + u = u0/6 + u1/3 + u2/3 + u3/6, 305.350 + v = v0/6 + v1/3 + v2/3 + v3/6, 305.351 + w = w0/6 + w1/3 + w2/3 + w3/6; 305.352 + if (orientations_only && (pu*u+pv*v+pw*w)<0) { u=-u; v=-v; w=-w; } 305.353 + X-=(pu=u); Y-=(pv=v); Z-=(pw=w); 305.354 + tracking.insert(CImg<restype>::vector(X,Y,Z),0); 305.355 + } 305.356 + } break; 305.357 + } 305.358 + 305.359 + } break; 305.360 + 305.361 + // 2D integral lines 305.362 + //------------------- 305.363 + case 2: { 305.364 + 305.365 + switch (interpolation) { 305.366 + case 0: { // Nearest neighbor 305.367 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.368 + tracking.insert(CImg<restype>::vector(X,Y)); 305.369 + const int 305.370 + cx = (int)(X+0.5f), 305.371 + cy = (int)(Y+0.5f); 305.372 + float 305.373 + u = (float)(dl*W(cx,cy,0,0)), 305.374 + v = (float)(dl*W(cx,cy,0,1)); 305.375 + if (orientations_only && (pu*u + pv*v)<0) { u=-u; v=-v; } 305.376 + X+=(pu=u); Y+=(pv=v); 305.377 + } 305.378 + pu = cu; 305.379 + pv = cv; 305.380 + X = x; 305.381 + Y = y; 305.382 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.383 + const int 305.384 + cx = (int)(X+0.5f), 305.385 + cy = (int)(Y+0.5f); 305.386 + float 305.387 + u = (float)(dl*W(cx,cy,0,0)), 305.388 + v = (float)(dl*W(cx,cy,0,1)); 305.389 + if (orientations_only && (pu*u + pv*v)<0) { u=-u; v=-v; } 305.390 + X-=(pu=u); Y-=(pv=v); 305.391 + tracking.insert(CImg<restype>::vector(X,Y),0); 305.392 + } 305.393 + } break; 305.394 + 305.395 + case 1: { // Linear 305.396 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.397 + tracking.insert(CImg<restype>::vector(X,Y)); 305.398 + const int 305.399 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.400 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.401 + if (orientations_only) { 305.402 + const float 305.403 + curru = (float)W(cx,cy,0,0), 305.404 + currv = (float)W(cx,cy,0,1); 305.405 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.406 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.407 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.408 + } 305.409 + float 305.410 + u = (float)(dl*W._linear_atXY(X,Y,0,0)), 305.411 + v = (float)(dl*W._linear_atXY(X,Y,0,1)); 305.412 + if (orientations_only && (pu*u + pv*v)<0) { u=-u; v=-v; } 305.413 + X+=(pu=u); Y+=(pv=v); 305.414 + } 305.415 + pu = cu; 305.416 + pv = cv; 305.417 + X = x; 305.418 + Y = y; 305.419 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.420 + const int 305.421 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.422 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.423 + if (orientations_only) { 305.424 + const float 305.425 + curru = (float)W(cx,cy,0,0), 305.426 + currv = (float)W(cx,cy,0,1); 305.427 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.428 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.429 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.430 + } 305.431 + float 305.432 + u = (float)(dl*W._linear_atXY(X,Y,0,0)), 305.433 + v = (float)(dl*W._linear_atXY(X,Y,0,1)); 305.434 + if (orientations_only && (pu*u+pv*v)<0) { u=-u; v=-v; } 305.435 + X-=(pu=u); Y-=(pv=v); 305.436 + tracking.insert(CImg<restype>::vector(X,Y),0); 305.437 + } 305.438 + } break; 305.439 + 305.440 + case 2: { // 2nd order Runge Kutta 305.441 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.442 + tracking.insert(CImg<restype>::vector(X,Y)); 305.443 + const int 305.444 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.445 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.446 + if (orientations_only) { 305.447 + const float 305.448 + curru = (float)W(cx,cy,0,0), 305.449 + currv = (float)W(cx,cy,0,1); 305.450 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.451 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.452 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.453 + } 305.454 + const float 305.455 + u0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,0)), 305.456 + v0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,1)); 305.457 + float 305.458 + u = (float)(dl*W._linear_atXY(X+u0,Y+v0,0,0)), 305.459 + v = (float)(dl*W._linear_atXY(X+u0,Y+v0,0,1)); 305.460 + if (orientations_only && (pu*u+pv*v)<0) { u=-u; v=-v; } 305.461 + X+=(pu=u); Y+=(pv=v); 305.462 + } 305.463 + pu = cu; 305.464 + pv = cv; 305.465 + X = x; 305.466 + Y = y; 305.467 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.468 + const int 305.469 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.470 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.471 + if (orientations_only) { 305.472 + const float 305.473 + curru = (float)W(cx,cy,0,0), 305.474 + currv = (float)W(cx,cy,0,1); 305.475 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.476 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.477 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.478 + } 305.479 + const float 305.480 + u0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,0)), 305.481 + v0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,1)); 305.482 + float 305.483 + u = (float)(dl*W._linear_atXY(X+u0,Y+v0,0,0)), 305.484 + v = (float)(dl*W._linear_atXY(X+u0,Y+v0,0,1)); 305.485 + if (orientations_only && (pu*u+pv*v)<0) { u=-u; v=-v; } 305.486 + X-=(pu=u); Y-=(pv=v); 305.487 + tracking.insert(CImg<restype>::vector(X,Y),0); 305.488 + } 305.489 + } break; 305.490 + 305.491 + case 3: { // 4nd order Runge Kutta 305.492 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.493 + tracking.insert(CImg<restype>::vector(X,Y)); 305.494 + const int 305.495 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.496 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.497 + if (orientations_only) { 305.498 + const float 305.499 + curru = (float)W(cx,cy,0,0), 305.500 + currv = (float)W(cx,cy,0,1); 305.501 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.502 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.503 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.504 + } 305.505 + const float 305.506 + u0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,0)), 305.507 + v0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,1)), 305.508 + u1 = (float)(0.5f*dl*W._linear_atXY(X+u0,Y+v0,0,0)), 305.509 + v1 = (float)(0.5f*dl*W._linear_atXY(X+u0,Y+v0,0,1)), 305.510 + u2 = (float)(0.5f*dl*W._linear_atXY(X+u1,Y+v1,0,0)), 305.511 + v2 = (float)(0.5f*dl*W._linear_atXY(X+u1,Y+v1,0,1)), 305.512 + u3 = (float)(0.5f*dl*W._linear_atXY(X+u2,Y+v2,0,0)), 305.513 + v3 = (float)(0.5f*dl*W._linear_atXY(X+u2,Y+v2,0,1)); 305.514 + float 305.515 + u = u0/6 + u1/3 + u2/3 + u3/6, 305.516 + v = v0/6 + v1/3 + v2/3 + v3/6; 305.517 + if (orientations_only && (pu*u+pv*v)<0) { u=-u; v=-v; } 305.518 + X+=(pu=u); Y+=(pv=v); 305.519 + } 305.520 + pu = cu; 305.521 + pv = cv; 305.522 + X = x; 305.523 + Y = y; 305.524 + for (float l=0; l<L2 && X>=0 && X<=dx1 && Y>=0 && Y<=dy1; l+=dl) { 305.525 + const int 305.526 + cx = (int)X, px = (cx-1<0)?0:cx-1, nx = (cx+1>(int)dx1)?(int)dx1:cx+1, 305.527 + cy = (int)Y, py = (cy-1<0)?0:cy-1, ny = (cy+1>(int)dy1)?(int)dy1:cy+1; 305.528 + if (orientations_only) { 305.529 + const float 305.530 + curru = (float)W(cx,cy,0,0), 305.531 + currv = (float)W(cx,cy,0,1); 305.532 + pcimg_valign2d(px,py); pcimg_valign2d(cx,py); pcimg_valign2d(nx,py); 305.533 + pcimg_valign2d(px,cy); pcimg_valign2d(nx,cy); 305.534 + pcimg_valign2d(px,ny); pcimg_valign2d(cx,ny); pcimg_valign2d(nx,ny); 305.535 + } 305.536 + const float 305.537 + u0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,0)), 305.538 + v0 = (float)(0.5f*dl*W._linear_atXY(X,Y,0,1)), 305.539 + u1 = (float)(0.5f*dl*W._linear_atXY(X+u0,Y+v0,0,0)), 305.540 + v1 = (float)(0.5f*dl*W._linear_atXY(X+u0,Y+v0,0,1)), 305.541 + u2 = (float)(0.5f*dl*W._linear_atXY(X+u1,Y+v1,0,0)), 305.542 + v2 = (float)(0.5f*dl*W._linear_atXY(X+u1,Y+v1,0,1)), 305.543 + u3 = (float)(0.5f*dl*W._linear_atXY(X+u2,Y+v2,0,0)), 305.544 + v3 = (float)(0.5f*dl*W._linear_atXY(X+u2,Y+v2,0,1)); 305.545 + float 305.546 + u = u0/6 + u1/3 + u2/3 + u3/6, 305.547 + v = v0/6 + v1/3 + v2/3 + v3/6; 305.548 + if (orientations_only && (pu*u+pv*v)<0) { u=-u; v=-v; } 305.549 + X-=(pu=u); Y-=(pv=v); 305.550 + tracking.insert(CImg<restype>::vector(X,Y),0); 305.551 + } 305.552 + } break; 305.553 + } 305.554 + 305.555 + } break; 305.556 + 305.557 + default: 305.558 + throw CImgInstanceException("CImg<%s>::get_integral_line() : Instance image must have dimv()=2 or 3 (current is %u).", 305.559 + pixel_type(),dim); 305.560 + break; 305.561 + } 305.562 + 305.563 + return tracking; 305.564 +} 305.565 + 305.566 +#endif
306.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 306.2 +++ b/PTdecode/CImg-1.3.0/plugins/jpeg_buffer.h Mon Aug 03 14:09:20 2009 +0100 306.3 @@ -0,0 +1,367 @@ 306.4 +/* 306.5 + # 306.6 + # File : deprecated.h 306.7 + # ( C++ header file - CImg plug-in ) 306.8 + # 306.9 + # Description : This CImg plug-in provide functions to load and save jpeg images 306.10 + # directly from/to memory buffers of JOCTET buffers, using the 306.11 + # JPEG library (required to compile !) 306.12 + # This file is a part of the CImg Library project. 306.13 + # ( http://cimg.sourceforge.net ) 306.14 + # 306.15 + # Copyright : Paolo Prete 306.16 + # ( p4olo_prete@yahoo.it ) 306.17 + # 306.18 + # License : CeCILL v2.0 306.19 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 306.20 + # 306.21 + # This software is governed by the CeCILL license under French law and 306.22 + # abiding by the rules of distribution of free software. You can use, 306.23 + # modify and/ or redistribute the software under the terms of the CeCILL 306.24 + # license as circulated by CEA, CNRS and INRIA at the following URL 306.25 + # "http://www.cecill.info". 306.26 + # 306.27 + # As a counterpart to the access to the source code and rights to copy, 306.28 + # modify and redistribute granted by the license, users are provided only 306.29 + # with a limited warranty and the software's author, the holder of the 306.30 + # economic rights, and the successive licensors have only limited 306.31 + # liability. 306.32 + # 306.33 + # In this respect, the user's attention is drawn to the risks associated 306.34 + # with loading, using, modifying and/or developing or reproducing the 306.35 + # software by the user in light of its specific status of free software, 306.36 + # that may mean that it is complicated to manipulate, and that also 306.37 + # therefore means that it is reserved for developers and experienced 306.38 + # professionals having in-depth computer knowledge. Users are therefore 306.39 + # encouraged to load and test the software's suitability as regards their 306.40 + # requirements in conditions enabling the security of their systems and/or 306.41 + # data to be ensured and, more generally, to use and operate it in the 306.42 + # same conditions as regards security. 306.43 + # 306.44 + # The fact that you are presently reading this means that you have had 306.45 + # knowledge of the CeCILL license and that you accept its terms. 306.46 + # 306.47 +*/ 306.48 + 306.49 +/*----------------------------------------------------------------------------------- 306.50 + 306.51 + IMPORTANT NOTE : 306.52 + 306.53 + You *need* to include the following two lines in your own code to use this plugin : 306.54 + 306.55 + #include <cstdio> 306.56 + #include <jpeglib.h> 306.57 + #include <jerror.h> 306.58 + 306.59 + (see example file provided in examples/jpeg_buffer.cpp). 306.60 + 306.61 +------------------------------------------------------------------------------------*/ 306.62 + 306.63 +/////////////////////////////////////////////////////////////////////////////////////// 306.64 +// 306.65 +// extension of libjpeg (helper functions for loading images from JOCTET arrays) 306.66 +// hacked from 306.67 +// http://www.koders.com/cpp/fidB5A4549ABB5CB01824058F57A43D095D3F95AB40.aspx 306.68 +// 306.69 +/////////////////////////////////////////////////////////////////////////////////////// 306.70 + 306.71 +#define INPUT_BUF_SIZE 4096 306.72 + 306.73 +struct my_source_mem { 306.74 + struct jpeg_source_mgr pub; // Public fields 306.75 + int indexinmem; 306.76 + JOCTET * inmem; // Source stream 306.77 + JOCTET * buffer; // Start of buffer 306.78 + int lenght; // Size of buffer in memory 306.79 + boolean start_of_file; // Have we gotten any data yet? 306.80 +}; 306.81 + 306.82 +struct my_source_mgr { 306.83 + struct jpeg_source_mgr pub; // public fields 306.84 + FILE * infile; // source stream 306.85 + JOCTET * buffer; // start of buffer 306.86 + boolean start_of_file; // have we gotten any data yet? 306.87 +}; 306.88 + 306.89 +typedef my_source_mem *my_src_mptr; 306.90 +typedef my_source_mgr *my_src_ptr; 306.91 + 306.92 +static boolean fill_minput_buffer(j_decompress_ptr cinfo) { 306.93 + my_src_mptr src = (my_src_mptr) cinfo->src; 306.94 + size_t nbytes; 306.95 + if (src->indexinmem+INPUT_BUF_SIZE>src->lenght) nbytes=src->lenght-src->indexinmem; 306.96 + else nbytes = INPUT_BUF_SIZE; 306.97 + std::memcpy(src->buffer,src->inmem,nbytes); 306.98 + src->inmem += nbytes; 306.99 + src->indexinmem += (int)nbytes; 306.100 + src->pub.next_input_byte = src->buffer; 306.101 + src->pub.bytes_in_buffer = INPUT_BUF_SIZE; 306.102 + src->start_of_file = FALSE; 306.103 + return TRUE; 306.104 +} 306.105 + 306.106 +static void skip_minput_data(j_decompress_ptr cinfo, long num_bytes) { 306.107 + my_src_ptr src = (my_src_ptr)cinfo->src; 306.108 + if (num_bytes > 0) { 306.109 + while (num_bytes > (long) src->pub.bytes_in_buffer) { 306.110 + num_bytes -= (long) src->pub.bytes_in_buffer; 306.111 + fill_minput_buffer(cinfo); 306.112 + // note we assume that fill_input_buffer will never return FALSE, 306.113 + // so suspension need not be handled. 306.114 + // 306.115 + } 306.116 + src->pub.next_input_byte += (size_t) num_bytes; 306.117 + src->pub.bytes_in_buffer -= (size_t) num_bytes; 306.118 + } 306.119 +} 306.120 + 306.121 +static void init_msource(j_decompress_ptr cinfo) { 306.122 + my_src_mptr src = (my_src_mptr)cinfo->src; 306.123 + src->start_of_file = TRUE; 306.124 +} 306.125 + 306.126 +static void term_source(j_decompress_ptr) { 306.127 + // no work necessary here 306.128 +} 306.129 + 306.130 +static void jpeg_mem_src(j_decompress_ptr cinfo, JOCTET * memptr,int lenght) { 306.131 + my_src_mptr src; 306.132 + 306.133 + // The source object and input buffer are made permanent so that a series 306.134 + //of JPEG images can be read from the same file by calling jpeg_stdio_src 306.135 + // only before the first one. (If we discarded the buffer at the end of 306.136 + // one image, we'd likely lose the start of the next one.) 306.137 + // This makes it unsafe to use this manager and a different source 306.138 + // manager serially with the same JPEG object. Caveat programmer. 306.139 + // 306.140 + 306.141 + // first time for this JPEG object? 306.142 + if (cinfo->src == NULL) { 306.143 + cinfo->src = (struct jpeg_source_mgr*)(*cinfo->mem->alloc_small)((j_common_ptr) cinfo, JPOOL_PERMANENT,sizeof(my_source_mem)); 306.144 + src = (my_src_mptr) cinfo->src; 306.145 + src->buffer = (JOCTET *)(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,INPUT_BUF_SIZE * sizeof(JOCTET)); 306.146 + } 306.147 + 306.148 + src = (my_src_mptr) cinfo->src; 306.149 + src->pub.init_source = init_msource; 306.150 + src->pub.fill_input_buffer = fill_minput_buffer; 306.151 + src->pub.skip_input_data = skip_minput_data; 306.152 + //src->pub.resync_to_restart = jpeg_resync_to_restart; // use default method 306.153 + src->pub.term_source = term_source; 306.154 + src->inmem = memptr; 306.155 + src->indexinmem = 0; 306.156 + src->lenght = lenght; 306.157 + src->pub.bytes_in_buffer = 0; // forces fill_input_buffer on first read 306.158 + src->pub.next_input_byte = NULL; // until buffer loaded 306.159 +} 306.160 + 306.161 +// The following declarations and 5 functions are jpeg related 306.162 +// functions used by put_jpeg_grey_memory and put_jpeg_yuv420p_memory 306.163 +// 306.164 +struct mem_destination_mgr { 306.165 + struct jpeg_destination_mgr pub; 306.166 + JOCTET *buf; 306.167 + size_t bufsize; 306.168 + size_t jpegsize; 306.169 +}; 306.170 + 306.171 +typedef mem_destination_mgr *mem_dest_ptr; 306.172 + 306.173 +static void init_destination(j_compress_ptr cinfo) { 306.174 + mem_dest_ptr dest = (mem_dest_ptr) cinfo->dest; 306.175 + dest->pub.next_output_byte = dest->buf; 306.176 + dest->pub.free_in_buffer = dest->bufsize; 306.177 + dest->jpegsize = 0; 306.178 +} 306.179 + 306.180 +static boolean empty_output_buffer(j_compress_ptr cinfo) { 306.181 + mem_dest_ptr dest = (mem_dest_ptr) cinfo->dest; 306.182 + dest->pub.next_output_byte = dest->buf; 306.183 + dest->pub.free_in_buffer = dest->bufsize; 306.184 + return FALSE; 306.185 + ERREXIT(cinfo, JERR_BUFFER_SIZE); 306.186 +} 306.187 + 306.188 +static void term_destination(j_compress_ptr cinfo) { 306.189 + mem_dest_ptr dest = (mem_dest_ptr) cinfo->dest; 306.190 + dest->jpegsize = dest->bufsize - dest->pub.free_in_buffer; 306.191 +} 306.192 + 306.193 +static void jpeg_mem_dest(j_compress_ptr cinfo, JOCTET* buf, size_t bufsize) { 306.194 + mem_dest_ptr dest; 306.195 + if (cinfo->dest == NULL) { 306.196 + cinfo->dest = (struct jpeg_destination_mgr *) 306.197 + (*cinfo->mem->alloc_small)((j_common_ptr)cinfo, JPOOL_PERMANENT,sizeof(mem_destination_mgr)); 306.198 + } 306.199 + dest = (mem_dest_ptr) cinfo->dest; 306.200 + dest->pub.init_destination = init_destination; 306.201 + dest->pub.empty_output_buffer = empty_output_buffer; 306.202 + dest->pub.term_destination = term_destination; 306.203 + dest->buf = buf; 306.204 + dest->bufsize = bufsize; 306.205 + dest->jpegsize = 0; 306.206 +} 306.207 + 306.208 +static unsigned jpeg_mem_size(j_compress_ptr cinfo) { 306.209 + mem_dest_ptr dest = (mem_dest_ptr) cinfo->dest; 306.210 + return dest->jpegsize; 306.211 +} 306.212 + 306.213 +///////////////////////////////////////////////////////////////// 306.214 +// 306.215 +// Define main CImg plugin functions. 306.216 +// (you should use these functions only in your own code) 306.217 +// 306.218 +///////////////////////////////////////////////////////////////// 306.219 + 306.220 +//! Load image from a jpeg-coded memory buffer. 306.221 +/** 306.222 + \param buffer Memory buffer containing the jpeg-coded image data. 306.223 + \param buffer_size Size of the memory buffer, in bytes. 306.224 +**/ 306.225 +static CImg get_load_jpeg_buffer(const JOCTET *const buffer, const unsigned buffer_size) { 306.226 + struct jpeg_decompress_struct cinfo; 306.227 + struct jpeg_error_mgr jerr; 306.228 + cinfo.err = jpeg_std_error(&jerr); 306.229 + jpeg_create_decompress(&cinfo); 306.230 + jpeg_mem_src(&cinfo, const_cast<JOCTET*>(buffer), buffer_size); 306.231 + jpeg_read_header(&cinfo,TRUE); 306.232 + jpeg_start_decompress(&cinfo); 306.233 + 306.234 + const unsigned int row_stride = cinfo.output_width * cinfo.output_components; 306.235 + JOCTET *buf = new JOCTET[cinfo.output_width*cinfo.output_height*cinfo.output_components]; 306.236 + const JOCTET *buf2 = buf; 306.237 + JSAMPROW row_pointer[1]; 306.238 + while (cinfo.output_scanline < cinfo.output_height) { 306.239 + row_pointer[0] = buf + cinfo.output_scanline*row_stride; 306.240 + jpeg_read_scanlines(&cinfo,row_pointer,1); 306.241 + } 306.242 + jpeg_finish_decompress(&cinfo); 306.243 + jpeg_destroy_decompress(&cinfo); 306.244 + 306.245 + CImg<T> dest(cinfo.output_width,cinfo.output_height,1,cinfo.output_components); 306.246 + switch (dest.dim) { 306.247 + case 1: { 306.248 + T *ptr_g = dest.ptr(0,0,0,0); 306.249 + cimg_foroff(dest,off) *(ptr_g++) = (T)*(buf2++); 306.250 + } break; 306.251 + case 3: { 306.252 + T 306.253 + *ptr_r = dest.ptr(0,0,0,0), 306.254 + *ptr_g = dest.ptr(0,0,0,1), 306.255 + *ptr_b = dest.ptr(0,0,0,2); 306.256 + cimg_forXY(dest,x,y) { 306.257 + *(ptr_r++) = (T)*(buf2++); 306.258 + *(ptr_g++) = (T)*(buf2++); 306.259 + *(ptr_b++) = (T)*(buf2++); 306.260 + } 306.261 + } break; 306.262 + case 4: { 306.263 + T 306.264 + *ptr_r = dest.ptr(0,0,0,0), 306.265 + *ptr_g = dest.ptr(0,0,0,1), 306.266 + *ptr_b = dest.ptr(0,0,0,2), 306.267 + *ptr_a = dest.ptr(0,0,0,3); 306.268 + cimg_forXY(dest,x,y) { 306.269 + *(ptr_r++) = (T)*(buf2++); 306.270 + *(ptr_g++) = (T)*(buf2++); 306.271 + *(ptr_b++) = (T)*(buf2++); 306.272 + *(ptr_a++) = (T)*(buf2++); 306.273 + } 306.274 + } break; 306.275 + } 306.276 + delete[] buf; 306.277 + 306.278 + return dest; 306.279 +} 306.280 + 306.281 +//! Load image from a jpeg-coded memory buffer (in-place version) 306.282 +/** 306.283 + \param buffer Memory buffer containing the jpeg-coded image data. 306.284 + \param buffer_size Size of the memory buffer, in bytes. 306.285 +**/ 306.286 +CImg& load_jpeg_buffer(const JOCTET *const buffer, const unsigned buffer_size) { 306.287 + return get_load_jpeg_buffer(buffer,buffer_size).transfer_to(*this); 306.288 +} 306.289 + 306.290 +//! Save image in a memory buffer, directly as a jpeg-coded file 306.291 +/** 306.292 + \param buffer Memory buffer that will be written with the jpeg-coded image data. 306.293 + \param buffer_size Initial size of the memory buffer. When the function returns, the variable 306.294 + contains the effective length needed to fill the buffer. 306.295 + \param quality Quality of the jpeg compression. 306.296 +**/ 306.297 +const CImg& save_jpeg_buffer(JOCTET *const buffer, unsigned int &buffer_size, const int quality=100) const { 306.298 + 306.299 + // Fill pixel buffer 306.300 + JOCTET *buf; 306.301 + unsigned int dimbuf=0; 306.302 + J_COLOR_SPACE colortype=JCS_RGB; 306.303 + switch (dim) { 306.304 + case 1: { 306.305 + // Greyscale images 306.306 + JOCTET *buf2 = buf = new JOCTET[width*height*(dimbuf=1)]; 306.307 + const T 306.308 + *ptr_g = ptr(); 306.309 + colortype = JCS_GRAYSCALE; 306.310 + cimg_foroff(*this,off) *(buf2++) = (JOCTET)*(ptr_g++); 306.311 + } break; 306.312 + case 2: 306.313 + case 3: { 306.314 + // RGB images 306.315 + JOCTET *buf2 = buf = new JOCTET[width*height*(dimbuf=3)]; 306.316 + const T 306.317 + *ptr_r = ptr(0,0,0,0), 306.318 + *ptr_g = ptr(0,0,0,1), 306.319 + *ptr_b = ptr(0,0,0,dim>2?2:0); 306.320 + colortype = JCS_RGB; 306.321 + cimg_forXY(*this,x,y) { 306.322 + *(buf2++) = (JOCTET)*(ptr_r++); 306.323 + *(buf2++) = (JOCTET)*(ptr_g++); 306.324 + *(buf2++) = (JOCTET)*(ptr_b++); 306.325 + } 306.326 + } break; 306.327 + default: { 306.328 + // YCMYK images 306.329 + JOCTET *buf2 = buf = new JOCTET[width*height*(dimbuf=4)]; 306.330 + const T 306.331 + *ptr_r = ptr(0,0,0,0), 306.332 + *ptr_g = ptr(0,0,0,1), 306.333 + *ptr_b = ptr(0,0,0,2), 306.334 + *ptr_a = ptr(0,0,0,3); 306.335 + colortype = JCS_CMYK; 306.336 + cimg_forXY(*this,x,y) { 306.337 + *(buf2++) = (JOCTET)*(ptr_r++); 306.338 + *(buf2++) = (JOCTET)*(ptr_g++); 306.339 + *(buf2++) = (JOCTET)*(ptr_b++); 306.340 + *(buf2++) = (JOCTET)*(ptr_a++); 306.341 + } 306.342 + } break; 306.343 + } 306.344 + 306.345 + // Call libjpeg functions 306.346 + struct jpeg_compress_struct cinfo; 306.347 + struct jpeg_error_mgr jerr; 306.348 + cinfo.err = jpeg_std_error(&jerr); 306.349 + jpeg_create_compress(&cinfo); 306.350 + jpeg_mem_dest(&cinfo, buffer, buffer_size); 306.351 + cinfo.image_width = width; 306.352 + cinfo.image_height = height; 306.353 + cinfo.input_components = dimbuf; 306.354 + cinfo.in_color_space = colortype; 306.355 + jpeg_set_defaults(&cinfo); 306.356 + jpeg_set_quality(&cinfo,quality<100?quality:100,TRUE); 306.357 + jpeg_start_compress(&cinfo,TRUE); 306.358 + 306.359 + const unsigned int row_stride = width*dimbuf; 306.360 + JSAMPROW row_pointer[1]; 306.361 + while (cinfo.next_scanline < cinfo.image_height) { 306.362 + row_pointer[0] = &buf[cinfo.next_scanline*row_stride]; 306.363 + jpeg_write_scanlines(&cinfo,row_pointer,1); 306.364 + } 306.365 + jpeg_finish_compress(&cinfo); 306.366 + delete[] buf; 306.367 + jpeg_destroy_compress(&cinfo); 306.368 + buffer_size = jpeg_mem_size(&cinfo); 306.369 + return *this; 306.370 +}
307.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 307.2 +++ b/PTdecode/CImg-1.3.0/plugins/loop_macros.h Mon Aug 03 14:09:20 2009 +0100 307.3 @@ -0,0 +1,12469 @@ 307.4 +/* 307.5 + # 307.6 + # File : loop_macros.h 307.7 + # ( C++ header file - CImg plug-in ) 307.8 + # 307.9 + # Description : CImg plug-in adding useful loop macros in CImg, in order to 307.10 + # deal with NxN neighborhoods (where N=10..32) 307.11 + # and NxNxN neighborhoods (where N=4..8) 307.12 + # This file has been automatically generated using the loop 307.13 + # macro generator available in 'examples/generate_loop_macros.cpp' 307.14 + # This file is a part of the CImg Library project. 307.15 + # ( http://cimg.sourceforge.net ) 307.16 + # 307.17 + # Copyright : David Tschumperle 307.18 + # ( http://www.greyc.ensicaen.fr/~dtschump/ ) 307.19 + # 307.20 + # License : CeCILL v2.0 307.21 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 307.22 + # 307.23 + # This software is governed by the CeCILL license under French law and 307.24 + # abiding by the rules of distribution of free software. You can use, 307.25 + # modify and/ or redistribute the software under the terms of the CeCILL 307.26 + # license as circulated by CEA, CNRS and INRIA at the following URL 307.27 + # "http://www.cecill.info". 307.28 + # 307.29 + # As a counterpart to the access to the source code and rights to copy, 307.30 + # modify and redistribute granted by the license, users are provided only 307.31 + # with a limited warranty and the software's author, the holder of the 307.32 + # economic rights, and the successive licensors have only limited 307.33 + # liability. 307.34 + # 307.35 + # In this respect, the user's attention is drawn to the risks associated 307.36 + # with loading, using, modifying and/or developing or reproducing the 307.37 + # software by the user in light of its specific status of free software, 307.38 + # that may mean that it is complicated to manipulate, and that also 307.39 + # therefore means that it is reserved for developers and experienced 307.40 + # professionals having in-depth computer knowledge. Users are therefore 307.41 + # encouraged to load and test the software's suitability as regards their 307.42 + # requirements in conditions enabling the security of their systems and/or 307.43 + # data to be ensured and, more generally, to use and operate it in the 307.44 + # same conditions as regards security. 307.45 + # 307.46 + # The fact that you are presently reading this means that you have had 307.47 + # knowledge of the CeCILL license and that you accept its terms. 307.48 + # 307.49 +*/ 307.50 + 307.51 +#ifndef cimg_plugin_loopmacros 307.52 +#define cimg_plugin_loopmacros 307.53 + 307.54 +// Define 10x10 loop macros for CImg 307.55 +//---------------------------------- 307.56 +#define cimg_for10(bound,i) for (int i = 0, \ 307.57 + _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.58 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.59 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.60 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.61 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.62 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5; \ 307.63 + _n5##i<(int)(bound) || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.64 + i==(_n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.65 + _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.66 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i) 307.67 + 307.68 +#define cimg_for10X(img,x) cimg_for10((img).width,x) 307.69 +#define cimg_for10Y(img,y) cimg_for10((img).height,y) 307.70 +#define cimg_for10Z(img,z) cimg_for10((img).depth,z) 307.71 +#define cimg_for10V(img,v) cimg_for10((img).dim,v) 307.72 +#define cimg_for10XY(img,x,y) cimg_for10Y(img,y) cimg_for10X(img,x) 307.73 +#define cimg_for10XZ(img,x,z) cimg_for10Z(img,z) cimg_for10X(img,x) 307.74 +#define cimg_for10XV(img,x,v) cimg_for10V(img,v) cimg_for10X(img,x) 307.75 +#define cimg_for10YZ(img,y,z) cimg_for10Z(img,z) cimg_for10Y(img,y) 307.76 +#define cimg_for10YV(img,y,v) cimg_for10V(img,v) cimg_for10Y(img,y) 307.77 +#define cimg_for10ZV(img,z,v) cimg_for10V(img,v) cimg_for10Z(img,z) 307.78 +#define cimg_for10XYZ(img,x,y,z) cimg_for10Z(img,z) cimg_for10XY(img,x,y) 307.79 +#define cimg_for10XZV(img,x,z,v) cimg_for10V(img,v) cimg_for10XZ(img,x,z) 307.80 +#define cimg_for10YZV(img,y,z,v) cimg_for10V(img,v) cimg_for10YZ(img,y,z) 307.81 +#define cimg_for10XYZV(img,x,y,z,v) cimg_for10V(img,v) cimg_for10XYZ(img,x,y,z) 307.82 + 307.83 +#define cimg_for_in10(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.84 + _p4##i = i-4<0?0:i-4, \ 307.85 + _p3##i = i-3<0?0:i-3, \ 307.86 + _p2##i = i-2<0?0:i-2, \ 307.87 + _p1##i = i-1<0?0:i-1, \ 307.88 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.89 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.90 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.91 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.92 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5; \ 307.93 + i<=(int)(i1) && (_n5##i<(int)(bound) || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.94 + i==(_n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.95 + _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.96 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i) 307.97 + 307.98 +#define cimg_for_in10X(img,x0,x1,x) cimg_for_in10((img).width,x0,x1,x) 307.99 +#define cimg_for_in10Y(img,y0,y1,y) cimg_for_in10((img).height,y0,y1,y) 307.100 +#define cimg_for_in10Z(img,z0,z1,z) cimg_for_in10((img).depth,z0,z1,z) 307.101 +#define cimg_for_in10V(img,v0,v1,v) cimg_for_in10((img).dim,v0,v1,v) 307.102 +#define cimg_for_in10XY(img,x0,y0,x1,y1,x,y) cimg_for_in10Y(img,y0,y1,y) cimg_for_in10X(img,x0,x1,x) 307.103 +#define cimg_for_in10XZ(img,x0,z0,x1,z1,x,z) cimg_for_in10Z(img,z0,z1,z) cimg_for_in10X(img,x0,x1,x) 307.104 +#define cimg_for_in10XV(img,x0,v0,x1,v1,x,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10X(img,x0,x1,x) 307.105 +#define cimg_for_in10YZ(img,y0,z0,y1,z1,y,z) cimg_for_in10Z(img,z0,z1,z) cimg_for_in10Y(img,y0,y1,y) 307.106 +#define cimg_for_in10YV(img,y0,v0,y1,v1,y,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10Y(img,y0,y1,y) 307.107 +#define cimg_for_in10ZV(img,z0,v0,z1,v1,z,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10Z(img,z0,z1,z) 307.108 +#define cimg_for_in10XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in10Z(img,z0,z1,z) cimg_for_in10XY(img,x0,y0,x1,y1,x,y) 307.109 +#define cimg_for_in10XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10XZ(img,x0,y0,x1,y1,x,z) 307.110 +#define cimg_for_in10YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10YZ(img,y0,z0,y1,z1,y,z) 307.111 +#define cimg_for_in10XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in10V(img,v0,v1,v) cimg_for_in10XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.112 + 307.113 +#define cimg_for10x10(img,x,y,z,v,I) \ 307.114 + cimg_for10((img).height,y) for (int x = 0, \ 307.115 + _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.116 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.117 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.118 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.119 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.120 + _n5##x = (int)( \ 307.121 + (I[0] = I[1] = I[2] = I[3] = I[4] = (img)(0,_p4##y,z,v)), \ 307.122 + (I[10] = I[11] = I[12] = I[13] = I[14] = (img)(0,_p3##y,z,v)), \ 307.123 + (I[20] = I[21] = I[22] = I[23] = I[24] = (img)(0,_p2##y,z,v)), \ 307.124 + (I[30] = I[31] = I[32] = I[33] = I[34] = (img)(0,_p1##y,z,v)), \ 307.125 + (I[40] = I[41] = I[42] = I[43] = I[44] = (img)(0,y,z,v)), \ 307.126 + (I[50] = I[51] = I[52] = I[53] = I[54] = (img)(0,_n1##y,z,v)), \ 307.127 + (I[60] = I[61] = I[62] = I[63] = I[64] = (img)(0,_n2##y,z,v)), \ 307.128 + (I[70] = I[71] = I[72] = I[73] = I[74] = (img)(0,_n3##y,z,v)), \ 307.129 + (I[80] = I[81] = I[82] = I[83] = I[84] = (img)(0,_n4##y,z,v)), \ 307.130 + (I[90] = I[91] = I[92] = I[93] = I[94] = (img)(0,_n5##y,z,v)), \ 307.131 + (I[5] = (img)(_n1##x,_p4##y,z,v)), \ 307.132 + (I[15] = (img)(_n1##x,_p3##y,z,v)), \ 307.133 + (I[25] = (img)(_n1##x,_p2##y,z,v)), \ 307.134 + (I[35] = (img)(_n1##x,_p1##y,z,v)), \ 307.135 + (I[45] = (img)(_n1##x,y,z,v)), \ 307.136 + (I[55] = (img)(_n1##x,_n1##y,z,v)), \ 307.137 + (I[65] = (img)(_n1##x,_n2##y,z,v)), \ 307.138 + (I[75] = (img)(_n1##x,_n3##y,z,v)), \ 307.139 + (I[85] = (img)(_n1##x,_n4##y,z,v)), \ 307.140 + (I[95] = (img)(_n1##x,_n5##y,z,v)), \ 307.141 + (I[6] = (img)(_n2##x,_p4##y,z,v)), \ 307.142 + (I[16] = (img)(_n2##x,_p3##y,z,v)), \ 307.143 + (I[26] = (img)(_n2##x,_p2##y,z,v)), \ 307.144 + (I[36] = (img)(_n2##x,_p1##y,z,v)), \ 307.145 + (I[46] = (img)(_n2##x,y,z,v)), \ 307.146 + (I[56] = (img)(_n2##x,_n1##y,z,v)), \ 307.147 + (I[66] = (img)(_n2##x,_n2##y,z,v)), \ 307.148 + (I[76] = (img)(_n2##x,_n3##y,z,v)), \ 307.149 + (I[86] = (img)(_n2##x,_n4##y,z,v)), \ 307.150 + (I[96] = (img)(_n2##x,_n5##y,z,v)), \ 307.151 + (I[7] = (img)(_n3##x,_p4##y,z,v)), \ 307.152 + (I[17] = (img)(_n3##x,_p3##y,z,v)), \ 307.153 + (I[27] = (img)(_n3##x,_p2##y,z,v)), \ 307.154 + (I[37] = (img)(_n3##x,_p1##y,z,v)), \ 307.155 + (I[47] = (img)(_n3##x,y,z,v)), \ 307.156 + (I[57] = (img)(_n3##x,_n1##y,z,v)), \ 307.157 + (I[67] = (img)(_n3##x,_n2##y,z,v)), \ 307.158 + (I[77] = (img)(_n3##x,_n3##y,z,v)), \ 307.159 + (I[87] = (img)(_n3##x,_n4##y,z,v)), \ 307.160 + (I[97] = (img)(_n3##x,_n5##y,z,v)), \ 307.161 + (I[8] = (img)(_n4##x,_p4##y,z,v)), \ 307.162 + (I[18] = (img)(_n4##x,_p3##y,z,v)), \ 307.163 + (I[28] = (img)(_n4##x,_p2##y,z,v)), \ 307.164 + (I[38] = (img)(_n4##x,_p1##y,z,v)), \ 307.165 + (I[48] = (img)(_n4##x,y,z,v)), \ 307.166 + (I[58] = (img)(_n4##x,_n1##y,z,v)), \ 307.167 + (I[68] = (img)(_n4##x,_n2##y,z,v)), \ 307.168 + (I[78] = (img)(_n4##x,_n3##y,z,v)), \ 307.169 + (I[88] = (img)(_n4##x,_n4##y,z,v)), \ 307.170 + (I[98] = (img)(_n4##x,_n5##y,z,v)), \ 307.171 + 5>=((img).width)?(int)((img).width)-1:5); \ 307.172 + (_n5##x<(int)((img).width) && ( \ 307.173 + (I[9] = (img)(_n5##x,_p4##y,z,v)), \ 307.174 + (I[19] = (img)(_n5##x,_p3##y,z,v)), \ 307.175 + (I[29] = (img)(_n5##x,_p2##y,z,v)), \ 307.176 + (I[39] = (img)(_n5##x,_p1##y,z,v)), \ 307.177 + (I[49] = (img)(_n5##x,y,z,v)), \ 307.178 + (I[59] = (img)(_n5##x,_n1##y,z,v)), \ 307.179 + (I[69] = (img)(_n5##x,_n2##y,z,v)), \ 307.180 + (I[79] = (img)(_n5##x,_n3##y,z,v)), \ 307.181 + (I[89] = (img)(_n5##x,_n4##y,z,v)), \ 307.182 + (I[99] = (img)(_n5##x,_n5##y,z,v)),1)) || \ 307.183 + _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.184 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 307.185 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.186 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.187 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.188 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], \ 307.189 + I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.190 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.191 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.192 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.193 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.194 + _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x) 307.195 + 307.196 +#define cimg_for_in10x10(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.197 + cimg_for_in10((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.198 + _p4##x = x-4<0?0:x-4, \ 307.199 + _p3##x = x-3<0?0:x-3, \ 307.200 + _p2##x = x-2<0?0:x-2, \ 307.201 + _p1##x = x-1<0?0:x-1, \ 307.202 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.203 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.204 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.205 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.206 + _n5##x = (int)( \ 307.207 + (I[0] = (img)(_p4##x,_p4##y,z,v)), \ 307.208 + (I[10] = (img)(_p4##x,_p3##y,z,v)), \ 307.209 + (I[20] = (img)(_p4##x,_p2##y,z,v)), \ 307.210 + (I[30] = (img)(_p4##x,_p1##y,z,v)), \ 307.211 + (I[40] = (img)(_p4##x,y,z,v)), \ 307.212 + (I[50] = (img)(_p4##x,_n1##y,z,v)), \ 307.213 + (I[60] = (img)(_p4##x,_n2##y,z,v)), \ 307.214 + (I[70] = (img)(_p4##x,_n3##y,z,v)), \ 307.215 + (I[80] = (img)(_p4##x,_n4##y,z,v)), \ 307.216 + (I[90] = (img)(_p4##x,_n5##y,z,v)), \ 307.217 + (I[1] = (img)(_p3##x,_p4##y,z,v)), \ 307.218 + (I[11] = (img)(_p3##x,_p3##y,z,v)), \ 307.219 + (I[21] = (img)(_p3##x,_p2##y,z,v)), \ 307.220 + (I[31] = (img)(_p3##x,_p1##y,z,v)), \ 307.221 + (I[41] = (img)(_p3##x,y,z,v)), \ 307.222 + (I[51] = (img)(_p3##x,_n1##y,z,v)), \ 307.223 + (I[61] = (img)(_p3##x,_n2##y,z,v)), \ 307.224 + (I[71] = (img)(_p3##x,_n3##y,z,v)), \ 307.225 + (I[81] = (img)(_p3##x,_n4##y,z,v)), \ 307.226 + (I[91] = (img)(_p3##x,_n5##y,z,v)), \ 307.227 + (I[2] = (img)(_p2##x,_p4##y,z,v)), \ 307.228 + (I[12] = (img)(_p2##x,_p3##y,z,v)), \ 307.229 + (I[22] = (img)(_p2##x,_p2##y,z,v)), \ 307.230 + (I[32] = (img)(_p2##x,_p1##y,z,v)), \ 307.231 + (I[42] = (img)(_p2##x,y,z,v)), \ 307.232 + (I[52] = (img)(_p2##x,_n1##y,z,v)), \ 307.233 + (I[62] = (img)(_p2##x,_n2##y,z,v)), \ 307.234 + (I[72] = (img)(_p2##x,_n3##y,z,v)), \ 307.235 + (I[82] = (img)(_p2##x,_n4##y,z,v)), \ 307.236 + (I[92] = (img)(_p2##x,_n5##y,z,v)), \ 307.237 + (I[3] = (img)(_p1##x,_p4##y,z,v)), \ 307.238 + (I[13] = (img)(_p1##x,_p3##y,z,v)), \ 307.239 + (I[23] = (img)(_p1##x,_p2##y,z,v)), \ 307.240 + (I[33] = (img)(_p1##x,_p1##y,z,v)), \ 307.241 + (I[43] = (img)(_p1##x,y,z,v)), \ 307.242 + (I[53] = (img)(_p1##x,_n1##y,z,v)), \ 307.243 + (I[63] = (img)(_p1##x,_n2##y,z,v)), \ 307.244 + (I[73] = (img)(_p1##x,_n3##y,z,v)), \ 307.245 + (I[83] = (img)(_p1##x,_n4##y,z,v)), \ 307.246 + (I[93] = (img)(_p1##x,_n5##y,z,v)), \ 307.247 + (I[4] = (img)(x,_p4##y,z,v)), \ 307.248 + (I[14] = (img)(x,_p3##y,z,v)), \ 307.249 + (I[24] = (img)(x,_p2##y,z,v)), \ 307.250 + (I[34] = (img)(x,_p1##y,z,v)), \ 307.251 + (I[44] = (img)(x,y,z,v)), \ 307.252 + (I[54] = (img)(x,_n1##y,z,v)), \ 307.253 + (I[64] = (img)(x,_n2##y,z,v)), \ 307.254 + (I[74] = (img)(x,_n3##y,z,v)), \ 307.255 + (I[84] = (img)(x,_n4##y,z,v)), \ 307.256 + (I[94] = (img)(x,_n5##y,z,v)), \ 307.257 + (I[5] = (img)(_n1##x,_p4##y,z,v)), \ 307.258 + (I[15] = (img)(_n1##x,_p3##y,z,v)), \ 307.259 + (I[25] = (img)(_n1##x,_p2##y,z,v)), \ 307.260 + (I[35] = (img)(_n1##x,_p1##y,z,v)), \ 307.261 + (I[45] = (img)(_n1##x,y,z,v)), \ 307.262 + (I[55] = (img)(_n1##x,_n1##y,z,v)), \ 307.263 + (I[65] = (img)(_n1##x,_n2##y,z,v)), \ 307.264 + (I[75] = (img)(_n1##x,_n3##y,z,v)), \ 307.265 + (I[85] = (img)(_n1##x,_n4##y,z,v)), \ 307.266 + (I[95] = (img)(_n1##x,_n5##y,z,v)), \ 307.267 + (I[6] = (img)(_n2##x,_p4##y,z,v)), \ 307.268 + (I[16] = (img)(_n2##x,_p3##y,z,v)), \ 307.269 + (I[26] = (img)(_n2##x,_p2##y,z,v)), \ 307.270 + (I[36] = (img)(_n2##x,_p1##y,z,v)), \ 307.271 + (I[46] = (img)(_n2##x,y,z,v)), \ 307.272 + (I[56] = (img)(_n2##x,_n1##y,z,v)), \ 307.273 + (I[66] = (img)(_n2##x,_n2##y,z,v)), \ 307.274 + (I[76] = (img)(_n2##x,_n3##y,z,v)), \ 307.275 + (I[86] = (img)(_n2##x,_n4##y,z,v)), \ 307.276 + (I[96] = (img)(_n2##x,_n5##y,z,v)), \ 307.277 + (I[7] = (img)(_n3##x,_p4##y,z,v)), \ 307.278 + (I[17] = (img)(_n3##x,_p3##y,z,v)), \ 307.279 + (I[27] = (img)(_n3##x,_p2##y,z,v)), \ 307.280 + (I[37] = (img)(_n3##x,_p1##y,z,v)), \ 307.281 + (I[47] = (img)(_n3##x,y,z,v)), \ 307.282 + (I[57] = (img)(_n3##x,_n1##y,z,v)), \ 307.283 + (I[67] = (img)(_n3##x,_n2##y,z,v)), \ 307.284 + (I[77] = (img)(_n3##x,_n3##y,z,v)), \ 307.285 + (I[87] = (img)(_n3##x,_n4##y,z,v)), \ 307.286 + (I[97] = (img)(_n3##x,_n5##y,z,v)), \ 307.287 + (I[8] = (img)(_n4##x,_p4##y,z,v)), \ 307.288 + (I[18] = (img)(_n4##x,_p3##y,z,v)), \ 307.289 + (I[28] = (img)(_n4##x,_p2##y,z,v)), \ 307.290 + (I[38] = (img)(_n4##x,_p1##y,z,v)), \ 307.291 + (I[48] = (img)(_n4##x,y,z,v)), \ 307.292 + (I[58] = (img)(_n4##x,_n1##y,z,v)), \ 307.293 + (I[68] = (img)(_n4##x,_n2##y,z,v)), \ 307.294 + (I[78] = (img)(_n4##x,_n3##y,z,v)), \ 307.295 + (I[88] = (img)(_n4##x,_n4##y,z,v)), \ 307.296 + (I[98] = (img)(_n4##x,_n5##y,z,v)), \ 307.297 + x+5>=(int)((img).width)?(int)((img).width)-1:x+5); \ 307.298 + x<=(int)(x1) && ((_n5##x<(int)((img).width) && ( \ 307.299 + (I[9] = (img)(_n5##x,_p4##y,z,v)), \ 307.300 + (I[19] = (img)(_n5##x,_p3##y,z,v)), \ 307.301 + (I[29] = (img)(_n5##x,_p2##y,z,v)), \ 307.302 + (I[39] = (img)(_n5##x,_p1##y,z,v)), \ 307.303 + (I[49] = (img)(_n5##x,y,z,v)), \ 307.304 + (I[59] = (img)(_n5##x,_n1##y,z,v)), \ 307.305 + (I[69] = (img)(_n5##x,_n2##y,z,v)), \ 307.306 + (I[79] = (img)(_n5##x,_n3##y,z,v)), \ 307.307 + (I[89] = (img)(_n5##x,_n4##y,z,v)), \ 307.308 + (I[99] = (img)(_n5##x,_n5##y,z,v)),1)) || \ 307.309 + _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.310 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 307.311 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.312 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.313 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.314 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], \ 307.315 + I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.316 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.317 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.318 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.319 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.320 + _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x) 307.321 + 307.322 +#define cimg_get10x10(img,x,y,z,v,I) \ 307.323 + I[0] = (img)(_p4##x,_p4##y,z,v), I[1] = (img)(_p3##x,_p4##y,z,v), I[2] = (img)(_p2##x,_p4##y,z,v), I[3] = (img)(_p1##x,_p4##y,z,v), I[4] = (img)(x,_p4##y,z,v), I[5] = (img)(_n1##x,_p4##y,z,v), I[6] = (img)(_n2##x,_p4##y,z,v), I[7] = (img)(_n3##x,_p4##y,z,v), I[8] = (img)(_n4##x,_p4##y,z,v), I[9] = (img)(_n5##x,_p4##y,z,v), \ 307.324 + I[10] = (img)(_p4##x,_p3##y,z,v), I[11] = (img)(_p3##x,_p3##y,z,v), I[12] = (img)(_p2##x,_p3##y,z,v), I[13] = (img)(_p1##x,_p3##y,z,v), I[14] = (img)(x,_p3##y,z,v), I[15] = (img)(_n1##x,_p3##y,z,v), I[16] = (img)(_n2##x,_p3##y,z,v), I[17] = (img)(_n3##x,_p3##y,z,v), I[18] = (img)(_n4##x,_p3##y,z,v), I[19] = (img)(_n5##x,_p3##y,z,v), \ 307.325 + I[20] = (img)(_p4##x,_p2##y,z,v), I[21] = (img)(_p3##x,_p2##y,z,v), I[22] = (img)(_p2##x,_p2##y,z,v), I[23] = (img)(_p1##x,_p2##y,z,v), I[24] = (img)(x,_p2##y,z,v), I[25] = (img)(_n1##x,_p2##y,z,v), I[26] = (img)(_n2##x,_p2##y,z,v), I[27] = (img)(_n3##x,_p2##y,z,v), I[28] = (img)(_n4##x,_p2##y,z,v), I[29] = (img)(_n5##x,_p2##y,z,v), \ 307.326 + I[30] = (img)(_p4##x,_p1##y,z,v), I[31] = (img)(_p3##x,_p1##y,z,v), I[32] = (img)(_p2##x,_p1##y,z,v), I[33] = (img)(_p1##x,_p1##y,z,v), I[34] = (img)(x,_p1##y,z,v), I[35] = (img)(_n1##x,_p1##y,z,v), I[36] = (img)(_n2##x,_p1##y,z,v), I[37] = (img)(_n3##x,_p1##y,z,v), I[38] = (img)(_n4##x,_p1##y,z,v), I[39] = (img)(_n5##x,_p1##y,z,v), \ 307.327 + I[40] = (img)(_p4##x,y,z,v), I[41] = (img)(_p3##x,y,z,v), I[42] = (img)(_p2##x,y,z,v), I[43] = (img)(_p1##x,y,z,v), I[44] = (img)(x,y,z,v), I[45] = (img)(_n1##x,y,z,v), I[46] = (img)(_n2##x,y,z,v), I[47] = (img)(_n3##x,y,z,v), I[48] = (img)(_n4##x,y,z,v), I[49] = (img)(_n5##x,y,z,v), \ 307.328 + I[50] = (img)(_p4##x,_n1##y,z,v), I[51] = (img)(_p3##x,_n1##y,z,v), I[52] = (img)(_p2##x,_n1##y,z,v), I[53] = (img)(_p1##x,_n1##y,z,v), I[54] = (img)(x,_n1##y,z,v), I[55] = (img)(_n1##x,_n1##y,z,v), I[56] = (img)(_n2##x,_n1##y,z,v), I[57] = (img)(_n3##x,_n1##y,z,v), I[58] = (img)(_n4##x,_n1##y,z,v), I[59] = (img)(_n5##x,_n1##y,z,v), \ 307.329 + I[60] = (img)(_p4##x,_n2##y,z,v), I[61] = (img)(_p3##x,_n2##y,z,v), I[62] = (img)(_p2##x,_n2##y,z,v), I[63] = (img)(_p1##x,_n2##y,z,v), I[64] = (img)(x,_n2##y,z,v), I[65] = (img)(_n1##x,_n2##y,z,v), I[66] = (img)(_n2##x,_n2##y,z,v), I[67] = (img)(_n3##x,_n2##y,z,v), I[68] = (img)(_n4##x,_n2##y,z,v), I[69] = (img)(_n5##x,_n2##y,z,v), \ 307.330 + I[70] = (img)(_p4##x,_n3##y,z,v), I[71] = (img)(_p3##x,_n3##y,z,v), I[72] = (img)(_p2##x,_n3##y,z,v), I[73] = (img)(_p1##x,_n3##y,z,v), I[74] = (img)(x,_n3##y,z,v), I[75] = (img)(_n1##x,_n3##y,z,v), I[76] = (img)(_n2##x,_n3##y,z,v), I[77] = (img)(_n3##x,_n3##y,z,v), I[78] = (img)(_n4##x,_n3##y,z,v), I[79] = (img)(_n5##x,_n3##y,z,v), \ 307.331 + I[80] = (img)(_p4##x,_n4##y,z,v), I[81] = (img)(_p3##x,_n4##y,z,v), I[82] = (img)(_p2##x,_n4##y,z,v), I[83] = (img)(_p1##x,_n4##y,z,v), I[84] = (img)(x,_n4##y,z,v), I[85] = (img)(_n1##x,_n4##y,z,v), I[86] = (img)(_n2##x,_n4##y,z,v), I[87] = (img)(_n3##x,_n4##y,z,v), I[88] = (img)(_n4##x,_n4##y,z,v), I[89] = (img)(_n5##x,_n4##y,z,v), \ 307.332 + I[90] = (img)(_p4##x,_n5##y,z,v), I[91] = (img)(_p3##x,_n5##y,z,v), I[92] = (img)(_p2##x,_n5##y,z,v), I[93] = (img)(_p1##x,_n5##y,z,v), I[94] = (img)(x,_n5##y,z,v), I[95] = (img)(_n1##x,_n5##y,z,v), I[96] = (img)(_n2##x,_n5##y,z,v), I[97] = (img)(_n3##x,_n5##y,z,v), I[98] = (img)(_n4##x,_n5##y,z,v), I[99] = (img)(_n5##x,_n5##y,z,v); 307.333 + 307.334 +// Define 11x11 loop macros for CImg 307.335 +//---------------------------------- 307.336 +#define cimg_for11(bound,i) for (int i = 0, \ 307.337 + _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.338 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.339 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.340 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.341 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.342 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5; \ 307.343 + _n5##i<(int)(bound) || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.344 + i==(_n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.345 + _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.346 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i) 307.347 + 307.348 +#define cimg_for11X(img,x) cimg_for11((img).width,x) 307.349 +#define cimg_for11Y(img,y) cimg_for11((img).height,y) 307.350 +#define cimg_for11Z(img,z) cimg_for11((img).depth,z) 307.351 +#define cimg_for11V(img,v) cimg_for11((img).dim,v) 307.352 +#define cimg_for11XY(img,x,y) cimg_for11Y(img,y) cimg_for11X(img,x) 307.353 +#define cimg_for11XZ(img,x,z) cimg_for11Z(img,z) cimg_for11X(img,x) 307.354 +#define cimg_for11XV(img,x,v) cimg_for11V(img,v) cimg_for11X(img,x) 307.355 +#define cimg_for11YZ(img,y,z) cimg_for11Z(img,z) cimg_for11Y(img,y) 307.356 +#define cimg_for11YV(img,y,v) cimg_for11V(img,v) cimg_for11Y(img,y) 307.357 +#define cimg_for11ZV(img,z,v) cimg_for11V(img,v) cimg_for11Z(img,z) 307.358 +#define cimg_for11XYZ(img,x,y,z) cimg_for11Z(img,z) cimg_for11XY(img,x,y) 307.359 +#define cimg_for11XZV(img,x,z,v) cimg_for11V(img,v) cimg_for11XZ(img,x,z) 307.360 +#define cimg_for11YZV(img,y,z,v) cimg_for11V(img,v) cimg_for11YZ(img,y,z) 307.361 +#define cimg_for11XYZV(img,x,y,z,v) cimg_for11V(img,v) cimg_for11XYZ(img,x,y,z) 307.362 + 307.363 +#define cimg_for_in11(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.364 + _p5##i = i-5<0?0:i-5, \ 307.365 + _p4##i = i-4<0?0:i-4, \ 307.366 + _p3##i = i-3<0?0:i-3, \ 307.367 + _p2##i = i-2<0?0:i-2, \ 307.368 + _p1##i = i-1<0?0:i-1, \ 307.369 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.370 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.371 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.372 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.373 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5; \ 307.374 + i<=(int)(i1) && (_n5##i<(int)(bound) || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.375 + i==(_n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.376 + _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.377 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i) 307.378 + 307.379 +#define cimg_for_in11X(img,x0,x1,x) cimg_for_in11((img).width,x0,x1,x) 307.380 +#define cimg_for_in11Y(img,y0,y1,y) cimg_for_in11((img).height,y0,y1,y) 307.381 +#define cimg_for_in11Z(img,z0,z1,z) cimg_for_in11((img).depth,z0,z1,z) 307.382 +#define cimg_for_in11V(img,v0,v1,v) cimg_for_in11((img).dim,v0,v1,v) 307.383 +#define cimg_for_in11XY(img,x0,y0,x1,y1,x,y) cimg_for_in11Y(img,y0,y1,y) cimg_for_in11X(img,x0,x1,x) 307.384 +#define cimg_for_in11XZ(img,x0,z0,x1,z1,x,z) cimg_for_in11Z(img,z0,z1,z) cimg_for_in11X(img,x0,x1,x) 307.385 +#define cimg_for_in11XV(img,x0,v0,x1,v1,x,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11X(img,x0,x1,x) 307.386 +#define cimg_for_in11YZ(img,y0,z0,y1,z1,y,z) cimg_for_in11Z(img,z0,z1,z) cimg_for_in11Y(img,y0,y1,y) 307.387 +#define cimg_for_in11YV(img,y0,v0,y1,v1,y,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11Y(img,y0,y1,y) 307.388 +#define cimg_for_in11ZV(img,z0,v0,z1,v1,z,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11Z(img,z0,z1,z) 307.389 +#define cimg_for_in11XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in11Z(img,z0,z1,z) cimg_for_in11XY(img,x0,y0,x1,y1,x,y) 307.390 +#define cimg_for_in11XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11XZ(img,x0,y0,x1,y1,x,z) 307.391 +#define cimg_for_in11YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11YZ(img,y0,z0,y1,z1,y,z) 307.392 +#define cimg_for_in11XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in11V(img,v0,v1,v) cimg_for_in11XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.393 + 307.394 +#define cimg_for11x11(img,x,y,z,v,I) \ 307.395 + cimg_for11((img).height,y) for (int x = 0, \ 307.396 + _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.397 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.398 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.399 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.400 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.401 + _n5##x = (int)( \ 307.402 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = (img)(0,_p5##y,z,v)), \ 307.403 + (I[11] = I[12] = I[13] = I[14] = I[15] = I[16] = (img)(0,_p4##y,z,v)), \ 307.404 + (I[22] = I[23] = I[24] = I[25] = I[26] = I[27] = (img)(0,_p3##y,z,v)), \ 307.405 + (I[33] = I[34] = I[35] = I[36] = I[37] = I[38] = (img)(0,_p2##y,z,v)), \ 307.406 + (I[44] = I[45] = I[46] = I[47] = I[48] = I[49] = (img)(0,_p1##y,z,v)), \ 307.407 + (I[55] = I[56] = I[57] = I[58] = I[59] = I[60] = (img)(0,y,z,v)), \ 307.408 + (I[66] = I[67] = I[68] = I[69] = I[70] = I[71] = (img)(0,_n1##y,z,v)), \ 307.409 + (I[77] = I[78] = I[79] = I[80] = I[81] = I[82] = (img)(0,_n2##y,z,v)), \ 307.410 + (I[88] = I[89] = I[90] = I[91] = I[92] = I[93] = (img)(0,_n3##y,z,v)), \ 307.411 + (I[99] = I[100] = I[101] = I[102] = I[103] = I[104] = (img)(0,_n4##y,z,v)), \ 307.412 + (I[110] = I[111] = I[112] = I[113] = I[114] = I[115] = (img)(0,_n5##y,z,v)), \ 307.413 + (I[6] = (img)(_n1##x,_p5##y,z,v)), \ 307.414 + (I[17] = (img)(_n1##x,_p4##y,z,v)), \ 307.415 + (I[28] = (img)(_n1##x,_p3##y,z,v)), \ 307.416 + (I[39] = (img)(_n1##x,_p2##y,z,v)), \ 307.417 + (I[50] = (img)(_n1##x,_p1##y,z,v)), \ 307.418 + (I[61] = (img)(_n1##x,y,z,v)), \ 307.419 + (I[72] = (img)(_n1##x,_n1##y,z,v)), \ 307.420 + (I[83] = (img)(_n1##x,_n2##y,z,v)), \ 307.421 + (I[94] = (img)(_n1##x,_n3##y,z,v)), \ 307.422 + (I[105] = (img)(_n1##x,_n4##y,z,v)), \ 307.423 + (I[116] = (img)(_n1##x,_n5##y,z,v)), \ 307.424 + (I[7] = (img)(_n2##x,_p5##y,z,v)), \ 307.425 + (I[18] = (img)(_n2##x,_p4##y,z,v)), \ 307.426 + (I[29] = (img)(_n2##x,_p3##y,z,v)), \ 307.427 + (I[40] = (img)(_n2##x,_p2##y,z,v)), \ 307.428 + (I[51] = (img)(_n2##x,_p1##y,z,v)), \ 307.429 + (I[62] = (img)(_n2##x,y,z,v)), \ 307.430 + (I[73] = (img)(_n2##x,_n1##y,z,v)), \ 307.431 + (I[84] = (img)(_n2##x,_n2##y,z,v)), \ 307.432 + (I[95] = (img)(_n2##x,_n3##y,z,v)), \ 307.433 + (I[106] = (img)(_n2##x,_n4##y,z,v)), \ 307.434 + (I[117] = (img)(_n2##x,_n5##y,z,v)), \ 307.435 + (I[8] = (img)(_n3##x,_p5##y,z,v)), \ 307.436 + (I[19] = (img)(_n3##x,_p4##y,z,v)), \ 307.437 + (I[30] = (img)(_n3##x,_p3##y,z,v)), \ 307.438 + (I[41] = (img)(_n3##x,_p2##y,z,v)), \ 307.439 + (I[52] = (img)(_n3##x,_p1##y,z,v)), \ 307.440 + (I[63] = (img)(_n3##x,y,z,v)), \ 307.441 + (I[74] = (img)(_n3##x,_n1##y,z,v)), \ 307.442 + (I[85] = (img)(_n3##x,_n2##y,z,v)), \ 307.443 + (I[96] = (img)(_n3##x,_n3##y,z,v)), \ 307.444 + (I[107] = (img)(_n3##x,_n4##y,z,v)), \ 307.445 + (I[118] = (img)(_n3##x,_n5##y,z,v)), \ 307.446 + (I[9] = (img)(_n4##x,_p5##y,z,v)), \ 307.447 + (I[20] = (img)(_n4##x,_p4##y,z,v)), \ 307.448 + (I[31] = (img)(_n4##x,_p3##y,z,v)), \ 307.449 + (I[42] = (img)(_n4##x,_p2##y,z,v)), \ 307.450 + (I[53] = (img)(_n4##x,_p1##y,z,v)), \ 307.451 + (I[64] = (img)(_n4##x,y,z,v)), \ 307.452 + (I[75] = (img)(_n4##x,_n1##y,z,v)), \ 307.453 + (I[86] = (img)(_n4##x,_n2##y,z,v)), \ 307.454 + (I[97] = (img)(_n4##x,_n3##y,z,v)), \ 307.455 + (I[108] = (img)(_n4##x,_n4##y,z,v)), \ 307.456 + (I[119] = (img)(_n4##x,_n5##y,z,v)), \ 307.457 + 5>=((img).width)?(int)((img).width)-1:5); \ 307.458 + (_n5##x<(int)((img).width) && ( \ 307.459 + (I[10] = (img)(_n5##x,_p5##y,z,v)), \ 307.460 + (I[21] = (img)(_n5##x,_p4##y,z,v)), \ 307.461 + (I[32] = (img)(_n5##x,_p3##y,z,v)), \ 307.462 + (I[43] = (img)(_n5##x,_p2##y,z,v)), \ 307.463 + (I[54] = (img)(_n5##x,_p1##y,z,v)), \ 307.464 + (I[65] = (img)(_n5##x,y,z,v)), \ 307.465 + (I[76] = (img)(_n5##x,_n1##y,z,v)), \ 307.466 + (I[87] = (img)(_n5##x,_n2##y,z,v)), \ 307.467 + (I[98] = (img)(_n5##x,_n3##y,z,v)), \ 307.468 + (I[109] = (img)(_n5##x,_n4##y,z,v)), \ 307.469 + (I[120] = (img)(_n5##x,_n5##y,z,v)),1)) || \ 307.470 + _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.471 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], \ 307.472 + I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], \ 307.473 + I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], \ 307.474 + I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.475 + I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], \ 307.476 + I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.477 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], \ 307.478 + I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.479 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], \ 307.480 + I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.481 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], \ 307.482 + _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x) 307.483 + 307.484 +#define cimg_for_in11x11(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.485 + cimg_for_in11((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.486 + _p5##x = x-5<0?0:x-5, \ 307.487 + _p4##x = x-4<0?0:x-4, \ 307.488 + _p3##x = x-3<0?0:x-3, \ 307.489 + _p2##x = x-2<0?0:x-2, \ 307.490 + _p1##x = x-1<0?0:x-1, \ 307.491 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.492 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.493 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.494 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.495 + _n5##x = (int)( \ 307.496 + (I[0] = (img)(_p5##x,_p5##y,z,v)), \ 307.497 + (I[11] = (img)(_p5##x,_p4##y,z,v)), \ 307.498 + (I[22] = (img)(_p5##x,_p3##y,z,v)), \ 307.499 + (I[33] = (img)(_p5##x,_p2##y,z,v)), \ 307.500 + (I[44] = (img)(_p5##x,_p1##y,z,v)), \ 307.501 + (I[55] = (img)(_p5##x,y,z,v)), \ 307.502 + (I[66] = (img)(_p5##x,_n1##y,z,v)), \ 307.503 + (I[77] = (img)(_p5##x,_n2##y,z,v)), \ 307.504 + (I[88] = (img)(_p5##x,_n3##y,z,v)), \ 307.505 + (I[99] = (img)(_p5##x,_n4##y,z,v)), \ 307.506 + (I[110] = (img)(_p5##x,_n5##y,z,v)), \ 307.507 + (I[1] = (img)(_p4##x,_p5##y,z,v)), \ 307.508 + (I[12] = (img)(_p4##x,_p4##y,z,v)), \ 307.509 + (I[23] = (img)(_p4##x,_p3##y,z,v)), \ 307.510 + (I[34] = (img)(_p4##x,_p2##y,z,v)), \ 307.511 + (I[45] = (img)(_p4##x,_p1##y,z,v)), \ 307.512 + (I[56] = (img)(_p4##x,y,z,v)), \ 307.513 + (I[67] = (img)(_p4##x,_n1##y,z,v)), \ 307.514 + (I[78] = (img)(_p4##x,_n2##y,z,v)), \ 307.515 + (I[89] = (img)(_p4##x,_n3##y,z,v)), \ 307.516 + (I[100] = (img)(_p4##x,_n4##y,z,v)), \ 307.517 + (I[111] = (img)(_p4##x,_n5##y,z,v)), \ 307.518 + (I[2] = (img)(_p3##x,_p5##y,z,v)), \ 307.519 + (I[13] = (img)(_p3##x,_p4##y,z,v)), \ 307.520 + (I[24] = (img)(_p3##x,_p3##y,z,v)), \ 307.521 + (I[35] = (img)(_p3##x,_p2##y,z,v)), \ 307.522 + (I[46] = (img)(_p3##x,_p1##y,z,v)), \ 307.523 + (I[57] = (img)(_p3##x,y,z,v)), \ 307.524 + (I[68] = (img)(_p3##x,_n1##y,z,v)), \ 307.525 + (I[79] = (img)(_p3##x,_n2##y,z,v)), \ 307.526 + (I[90] = (img)(_p3##x,_n3##y,z,v)), \ 307.527 + (I[101] = (img)(_p3##x,_n4##y,z,v)), \ 307.528 + (I[112] = (img)(_p3##x,_n5##y,z,v)), \ 307.529 + (I[3] = (img)(_p2##x,_p5##y,z,v)), \ 307.530 + (I[14] = (img)(_p2##x,_p4##y,z,v)), \ 307.531 + (I[25] = (img)(_p2##x,_p3##y,z,v)), \ 307.532 + (I[36] = (img)(_p2##x,_p2##y,z,v)), \ 307.533 + (I[47] = (img)(_p2##x,_p1##y,z,v)), \ 307.534 + (I[58] = (img)(_p2##x,y,z,v)), \ 307.535 + (I[69] = (img)(_p2##x,_n1##y,z,v)), \ 307.536 + (I[80] = (img)(_p2##x,_n2##y,z,v)), \ 307.537 + (I[91] = (img)(_p2##x,_n3##y,z,v)), \ 307.538 + (I[102] = (img)(_p2##x,_n4##y,z,v)), \ 307.539 + (I[113] = (img)(_p2##x,_n5##y,z,v)), \ 307.540 + (I[4] = (img)(_p1##x,_p5##y,z,v)), \ 307.541 + (I[15] = (img)(_p1##x,_p4##y,z,v)), \ 307.542 + (I[26] = (img)(_p1##x,_p3##y,z,v)), \ 307.543 + (I[37] = (img)(_p1##x,_p2##y,z,v)), \ 307.544 + (I[48] = (img)(_p1##x,_p1##y,z,v)), \ 307.545 + (I[59] = (img)(_p1##x,y,z,v)), \ 307.546 + (I[70] = (img)(_p1##x,_n1##y,z,v)), \ 307.547 + (I[81] = (img)(_p1##x,_n2##y,z,v)), \ 307.548 + (I[92] = (img)(_p1##x,_n3##y,z,v)), \ 307.549 + (I[103] = (img)(_p1##x,_n4##y,z,v)), \ 307.550 + (I[114] = (img)(_p1##x,_n5##y,z,v)), \ 307.551 + (I[5] = (img)(x,_p5##y,z,v)), \ 307.552 + (I[16] = (img)(x,_p4##y,z,v)), \ 307.553 + (I[27] = (img)(x,_p3##y,z,v)), \ 307.554 + (I[38] = (img)(x,_p2##y,z,v)), \ 307.555 + (I[49] = (img)(x,_p1##y,z,v)), \ 307.556 + (I[60] = (img)(x,y,z,v)), \ 307.557 + (I[71] = (img)(x,_n1##y,z,v)), \ 307.558 + (I[82] = (img)(x,_n2##y,z,v)), \ 307.559 + (I[93] = (img)(x,_n3##y,z,v)), \ 307.560 + (I[104] = (img)(x,_n4##y,z,v)), \ 307.561 + (I[115] = (img)(x,_n5##y,z,v)), \ 307.562 + (I[6] = (img)(_n1##x,_p5##y,z,v)), \ 307.563 + (I[17] = (img)(_n1##x,_p4##y,z,v)), \ 307.564 + (I[28] = (img)(_n1##x,_p3##y,z,v)), \ 307.565 + (I[39] = (img)(_n1##x,_p2##y,z,v)), \ 307.566 + (I[50] = (img)(_n1##x,_p1##y,z,v)), \ 307.567 + (I[61] = (img)(_n1##x,y,z,v)), \ 307.568 + (I[72] = (img)(_n1##x,_n1##y,z,v)), \ 307.569 + (I[83] = (img)(_n1##x,_n2##y,z,v)), \ 307.570 + (I[94] = (img)(_n1##x,_n3##y,z,v)), \ 307.571 + (I[105] = (img)(_n1##x,_n4##y,z,v)), \ 307.572 + (I[116] = (img)(_n1##x,_n5##y,z,v)), \ 307.573 + (I[7] = (img)(_n2##x,_p5##y,z,v)), \ 307.574 + (I[18] = (img)(_n2##x,_p4##y,z,v)), \ 307.575 + (I[29] = (img)(_n2##x,_p3##y,z,v)), \ 307.576 + (I[40] = (img)(_n2##x,_p2##y,z,v)), \ 307.577 + (I[51] = (img)(_n2##x,_p1##y,z,v)), \ 307.578 + (I[62] = (img)(_n2##x,y,z,v)), \ 307.579 + (I[73] = (img)(_n2##x,_n1##y,z,v)), \ 307.580 + (I[84] = (img)(_n2##x,_n2##y,z,v)), \ 307.581 + (I[95] = (img)(_n2##x,_n3##y,z,v)), \ 307.582 + (I[106] = (img)(_n2##x,_n4##y,z,v)), \ 307.583 + (I[117] = (img)(_n2##x,_n5##y,z,v)), \ 307.584 + (I[8] = (img)(_n3##x,_p5##y,z,v)), \ 307.585 + (I[19] = (img)(_n3##x,_p4##y,z,v)), \ 307.586 + (I[30] = (img)(_n3##x,_p3##y,z,v)), \ 307.587 + (I[41] = (img)(_n3##x,_p2##y,z,v)), \ 307.588 + (I[52] = (img)(_n3##x,_p1##y,z,v)), \ 307.589 + (I[63] = (img)(_n3##x,y,z,v)), \ 307.590 + (I[74] = (img)(_n3##x,_n1##y,z,v)), \ 307.591 + (I[85] = (img)(_n3##x,_n2##y,z,v)), \ 307.592 + (I[96] = (img)(_n3##x,_n3##y,z,v)), \ 307.593 + (I[107] = (img)(_n3##x,_n4##y,z,v)), \ 307.594 + (I[118] = (img)(_n3##x,_n5##y,z,v)), \ 307.595 + (I[9] = (img)(_n4##x,_p5##y,z,v)), \ 307.596 + (I[20] = (img)(_n4##x,_p4##y,z,v)), \ 307.597 + (I[31] = (img)(_n4##x,_p3##y,z,v)), \ 307.598 + (I[42] = (img)(_n4##x,_p2##y,z,v)), \ 307.599 + (I[53] = (img)(_n4##x,_p1##y,z,v)), \ 307.600 + (I[64] = (img)(_n4##x,y,z,v)), \ 307.601 + (I[75] = (img)(_n4##x,_n1##y,z,v)), \ 307.602 + (I[86] = (img)(_n4##x,_n2##y,z,v)), \ 307.603 + (I[97] = (img)(_n4##x,_n3##y,z,v)), \ 307.604 + (I[108] = (img)(_n4##x,_n4##y,z,v)), \ 307.605 + (I[119] = (img)(_n4##x,_n5##y,z,v)), \ 307.606 + x+5>=(int)((img).width)?(int)((img).width)-1:x+5); \ 307.607 + x<=(int)(x1) && ((_n5##x<(int)((img).width) && ( \ 307.608 + (I[10] = (img)(_n5##x,_p5##y,z,v)), \ 307.609 + (I[21] = (img)(_n5##x,_p4##y,z,v)), \ 307.610 + (I[32] = (img)(_n5##x,_p3##y,z,v)), \ 307.611 + (I[43] = (img)(_n5##x,_p2##y,z,v)), \ 307.612 + (I[54] = (img)(_n5##x,_p1##y,z,v)), \ 307.613 + (I[65] = (img)(_n5##x,y,z,v)), \ 307.614 + (I[76] = (img)(_n5##x,_n1##y,z,v)), \ 307.615 + (I[87] = (img)(_n5##x,_n2##y,z,v)), \ 307.616 + (I[98] = (img)(_n5##x,_n3##y,z,v)), \ 307.617 + (I[109] = (img)(_n5##x,_n4##y,z,v)), \ 307.618 + (I[120] = (img)(_n5##x,_n5##y,z,v)),1)) || \ 307.619 + _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.620 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], \ 307.621 + I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], \ 307.622 + I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], \ 307.623 + I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.624 + I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], \ 307.625 + I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.626 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], \ 307.627 + I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.628 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], \ 307.629 + I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.630 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], \ 307.631 + _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x) 307.632 + 307.633 +#define cimg_get11x11(img,x,y,z,v,I) \ 307.634 + I[0] = (img)(_p5##x,_p5##y,z,v), I[1] = (img)(_p4##x,_p5##y,z,v), I[2] = (img)(_p3##x,_p5##y,z,v), I[3] = (img)(_p2##x,_p5##y,z,v), I[4] = (img)(_p1##x,_p5##y,z,v), I[5] = (img)(x,_p5##y,z,v), I[6] = (img)(_n1##x,_p5##y,z,v), I[7] = (img)(_n2##x,_p5##y,z,v), I[8] = (img)(_n3##x,_p5##y,z,v), I[9] = (img)(_n4##x,_p5##y,z,v), I[10] = (img)(_n5##x,_p5##y,z,v), \ 307.635 + I[11] = (img)(_p5##x,_p4##y,z,v), I[12] = (img)(_p4##x,_p4##y,z,v), I[13] = (img)(_p3##x,_p4##y,z,v), I[14] = (img)(_p2##x,_p4##y,z,v), I[15] = (img)(_p1##x,_p4##y,z,v), I[16] = (img)(x,_p4##y,z,v), I[17] = (img)(_n1##x,_p4##y,z,v), I[18] = (img)(_n2##x,_p4##y,z,v), I[19] = (img)(_n3##x,_p4##y,z,v), I[20] = (img)(_n4##x,_p4##y,z,v), I[21] = (img)(_n5##x,_p4##y,z,v), \ 307.636 + I[22] = (img)(_p5##x,_p3##y,z,v), I[23] = (img)(_p4##x,_p3##y,z,v), I[24] = (img)(_p3##x,_p3##y,z,v), I[25] = (img)(_p2##x,_p3##y,z,v), I[26] = (img)(_p1##x,_p3##y,z,v), I[27] = (img)(x,_p3##y,z,v), I[28] = (img)(_n1##x,_p3##y,z,v), I[29] = (img)(_n2##x,_p3##y,z,v), I[30] = (img)(_n3##x,_p3##y,z,v), I[31] = (img)(_n4##x,_p3##y,z,v), I[32] = (img)(_n5##x,_p3##y,z,v), \ 307.637 + I[33] = (img)(_p5##x,_p2##y,z,v), I[34] = (img)(_p4##x,_p2##y,z,v), I[35] = (img)(_p3##x,_p2##y,z,v), I[36] = (img)(_p2##x,_p2##y,z,v), I[37] = (img)(_p1##x,_p2##y,z,v), I[38] = (img)(x,_p2##y,z,v), I[39] = (img)(_n1##x,_p2##y,z,v), I[40] = (img)(_n2##x,_p2##y,z,v), I[41] = (img)(_n3##x,_p2##y,z,v), I[42] = (img)(_n4##x,_p2##y,z,v), I[43] = (img)(_n5##x,_p2##y,z,v), \ 307.638 + I[44] = (img)(_p5##x,_p1##y,z,v), I[45] = (img)(_p4##x,_p1##y,z,v), I[46] = (img)(_p3##x,_p1##y,z,v), I[47] = (img)(_p2##x,_p1##y,z,v), I[48] = (img)(_p1##x,_p1##y,z,v), I[49] = (img)(x,_p1##y,z,v), I[50] = (img)(_n1##x,_p1##y,z,v), I[51] = (img)(_n2##x,_p1##y,z,v), I[52] = (img)(_n3##x,_p1##y,z,v), I[53] = (img)(_n4##x,_p1##y,z,v), I[54] = (img)(_n5##x,_p1##y,z,v), \ 307.639 + I[55] = (img)(_p5##x,y,z,v), I[56] = (img)(_p4##x,y,z,v), I[57] = (img)(_p3##x,y,z,v), I[58] = (img)(_p2##x,y,z,v), I[59] = (img)(_p1##x,y,z,v), I[60] = (img)(x,y,z,v), I[61] = (img)(_n1##x,y,z,v), I[62] = (img)(_n2##x,y,z,v), I[63] = (img)(_n3##x,y,z,v), I[64] = (img)(_n4##x,y,z,v), I[65] = (img)(_n5##x,y,z,v), \ 307.640 + I[66] = (img)(_p5##x,_n1##y,z,v), I[67] = (img)(_p4##x,_n1##y,z,v), I[68] = (img)(_p3##x,_n1##y,z,v), I[69] = (img)(_p2##x,_n1##y,z,v), I[70] = (img)(_p1##x,_n1##y,z,v), I[71] = (img)(x,_n1##y,z,v), I[72] = (img)(_n1##x,_n1##y,z,v), I[73] = (img)(_n2##x,_n1##y,z,v), I[74] = (img)(_n3##x,_n1##y,z,v), I[75] = (img)(_n4##x,_n1##y,z,v), I[76] = (img)(_n5##x,_n1##y,z,v), \ 307.641 + I[77] = (img)(_p5##x,_n2##y,z,v), I[78] = (img)(_p4##x,_n2##y,z,v), I[79] = (img)(_p3##x,_n2##y,z,v), I[80] = (img)(_p2##x,_n2##y,z,v), I[81] = (img)(_p1##x,_n2##y,z,v), I[82] = (img)(x,_n2##y,z,v), I[83] = (img)(_n1##x,_n2##y,z,v), I[84] = (img)(_n2##x,_n2##y,z,v), I[85] = (img)(_n3##x,_n2##y,z,v), I[86] = (img)(_n4##x,_n2##y,z,v), I[87] = (img)(_n5##x,_n2##y,z,v), \ 307.642 + I[88] = (img)(_p5##x,_n3##y,z,v), I[89] = (img)(_p4##x,_n3##y,z,v), I[90] = (img)(_p3##x,_n3##y,z,v), I[91] = (img)(_p2##x,_n3##y,z,v), I[92] = (img)(_p1##x,_n3##y,z,v), I[93] = (img)(x,_n3##y,z,v), I[94] = (img)(_n1##x,_n3##y,z,v), I[95] = (img)(_n2##x,_n3##y,z,v), I[96] = (img)(_n3##x,_n3##y,z,v), I[97] = (img)(_n4##x,_n3##y,z,v), I[98] = (img)(_n5##x,_n3##y,z,v), \ 307.643 + I[99] = (img)(_p5##x,_n4##y,z,v), I[100] = (img)(_p4##x,_n4##y,z,v), I[101] = (img)(_p3##x,_n4##y,z,v), I[102] = (img)(_p2##x,_n4##y,z,v), I[103] = (img)(_p1##x,_n4##y,z,v), I[104] = (img)(x,_n4##y,z,v), I[105] = (img)(_n1##x,_n4##y,z,v), I[106] = (img)(_n2##x,_n4##y,z,v), I[107] = (img)(_n3##x,_n4##y,z,v), I[108] = (img)(_n4##x,_n4##y,z,v), I[109] = (img)(_n5##x,_n4##y,z,v), \ 307.644 + I[110] = (img)(_p5##x,_n5##y,z,v), I[111] = (img)(_p4##x,_n5##y,z,v), I[112] = (img)(_p3##x,_n5##y,z,v), I[113] = (img)(_p2##x,_n5##y,z,v), I[114] = (img)(_p1##x,_n5##y,z,v), I[115] = (img)(x,_n5##y,z,v), I[116] = (img)(_n1##x,_n5##y,z,v), I[117] = (img)(_n2##x,_n5##y,z,v), I[118] = (img)(_n3##x,_n5##y,z,v), I[119] = (img)(_n4##x,_n5##y,z,v), I[120] = (img)(_n5##x,_n5##y,z,v); 307.645 + 307.646 +// Define 12x12 loop macros for CImg 307.647 +//---------------------------------- 307.648 +#define cimg_for12(bound,i) for (int i = 0, \ 307.649 + _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.650 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.651 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.652 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.653 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.654 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.655 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6; \ 307.656 + _n6##i<(int)(bound) || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.657 + i==(_n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.658 + _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.659 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i) 307.660 + 307.661 +#define cimg_for12X(img,x) cimg_for12((img).width,x) 307.662 +#define cimg_for12Y(img,y) cimg_for12((img).height,y) 307.663 +#define cimg_for12Z(img,z) cimg_for12((img).depth,z) 307.664 +#define cimg_for12V(img,v) cimg_for12((img).dim,v) 307.665 +#define cimg_for12XY(img,x,y) cimg_for12Y(img,y) cimg_for12X(img,x) 307.666 +#define cimg_for12XZ(img,x,z) cimg_for12Z(img,z) cimg_for12X(img,x) 307.667 +#define cimg_for12XV(img,x,v) cimg_for12V(img,v) cimg_for12X(img,x) 307.668 +#define cimg_for12YZ(img,y,z) cimg_for12Z(img,z) cimg_for12Y(img,y) 307.669 +#define cimg_for12YV(img,y,v) cimg_for12V(img,v) cimg_for12Y(img,y) 307.670 +#define cimg_for12ZV(img,z,v) cimg_for12V(img,v) cimg_for12Z(img,z) 307.671 +#define cimg_for12XYZ(img,x,y,z) cimg_for12Z(img,z) cimg_for12XY(img,x,y) 307.672 +#define cimg_for12XZV(img,x,z,v) cimg_for12V(img,v) cimg_for12XZ(img,x,z) 307.673 +#define cimg_for12YZV(img,y,z,v) cimg_for12V(img,v) cimg_for12YZ(img,y,z) 307.674 +#define cimg_for12XYZV(img,x,y,z,v) cimg_for12V(img,v) cimg_for12XYZ(img,x,y,z) 307.675 + 307.676 +#define cimg_for_in12(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.677 + _p5##i = i-5<0?0:i-5, \ 307.678 + _p4##i = i-4<0?0:i-4, \ 307.679 + _p3##i = i-3<0?0:i-3, \ 307.680 + _p2##i = i-2<0?0:i-2, \ 307.681 + _p1##i = i-1<0?0:i-1, \ 307.682 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.683 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.684 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.685 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.686 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.687 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6; \ 307.688 + i<=(int)(i1) && (_n6##i<(int)(bound) || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.689 + i==(_n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.690 + _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.691 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i) 307.692 + 307.693 +#define cimg_for_in12X(img,x0,x1,x) cimg_for_in12((img).width,x0,x1,x) 307.694 +#define cimg_for_in12Y(img,y0,y1,y) cimg_for_in12((img).height,y0,y1,y) 307.695 +#define cimg_for_in12Z(img,z0,z1,z) cimg_for_in12((img).depth,z0,z1,z) 307.696 +#define cimg_for_in12V(img,v0,v1,v) cimg_for_in12((img).dim,v0,v1,v) 307.697 +#define cimg_for_in12XY(img,x0,y0,x1,y1,x,y) cimg_for_in12Y(img,y0,y1,y) cimg_for_in12X(img,x0,x1,x) 307.698 +#define cimg_for_in12XZ(img,x0,z0,x1,z1,x,z) cimg_for_in12Z(img,z0,z1,z) cimg_for_in12X(img,x0,x1,x) 307.699 +#define cimg_for_in12XV(img,x0,v0,x1,v1,x,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12X(img,x0,x1,x) 307.700 +#define cimg_for_in12YZ(img,y0,z0,y1,z1,y,z) cimg_for_in12Z(img,z0,z1,z) cimg_for_in12Y(img,y0,y1,y) 307.701 +#define cimg_for_in12YV(img,y0,v0,y1,v1,y,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12Y(img,y0,y1,y) 307.702 +#define cimg_for_in12ZV(img,z0,v0,z1,v1,z,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12Z(img,z0,z1,z) 307.703 +#define cimg_for_in12XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in12Z(img,z0,z1,z) cimg_for_in12XY(img,x0,y0,x1,y1,x,y) 307.704 +#define cimg_for_in12XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12XZ(img,x0,y0,x1,y1,x,z) 307.705 +#define cimg_for_in12YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12YZ(img,y0,z0,y1,z1,y,z) 307.706 +#define cimg_for_in12XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in12V(img,v0,v1,v) cimg_for_in12XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.707 + 307.708 +#define cimg_for12x12(img,x,y,z,v,I) \ 307.709 + cimg_for12((img).height,y) for (int x = 0, \ 307.710 + _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.711 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.712 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.713 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.714 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.715 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.716 + _n6##x = (int)( \ 307.717 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = (img)(0,_p5##y,z,v)), \ 307.718 + (I[12] = I[13] = I[14] = I[15] = I[16] = I[17] = (img)(0,_p4##y,z,v)), \ 307.719 + (I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = (img)(0,_p3##y,z,v)), \ 307.720 + (I[36] = I[37] = I[38] = I[39] = I[40] = I[41] = (img)(0,_p2##y,z,v)), \ 307.721 + (I[48] = I[49] = I[50] = I[51] = I[52] = I[53] = (img)(0,_p1##y,z,v)), \ 307.722 + (I[60] = I[61] = I[62] = I[63] = I[64] = I[65] = (img)(0,y,z,v)), \ 307.723 + (I[72] = I[73] = I[74] = I[75] = I[76] = I[77] = (img)(0,_n1##y,z,v)), \ 307.724 + (I[84] = I[85] = I[86] = I[87] = I[88] = I[89] = (img)(0,_n2##y,z,v)), \ 307.725 + (I[96] = I[97] = I[98] = I[99] = I[100] = I[101] = (img)(0,_n3##y,z,v)), \ 307.726 + (I[108] = I[109] = I[110] = I[111] = I[112] = I[113] = (img)(0,_n4##y,z,v)), \ 307.727 + (I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = (img)(0,_n5##y,z,v)), \ 307.728 + (I[132] = I[133] = I[134] = I[135] = I[136] = I[137] = (img)(0,_n6##y,z,v)), \ 307.729 + (I[6] = (img)(_n1##x,_p5##y,z,v)), \ 307.730 + (I[18] = (img)(_n1##x,_p4##y,z,v)), \ 307.731 + (I[30] = (img)(_n1##x,_p3##y,z,v)), \ 307.732 + (I[42] = (img)(_n1##x,_p2##y,z,v)), \ 307.733 + (I[54] = (img)(_n1##x,_p1##y,z,v)), \ 307.734 + (I[66] = (img)(_n1##x,y,z,v)), \ 307.735 + (I[78] = (img)(_n1##x,_n1##y,z,v)), \ 307.736 + (I[90] = (img)(_n1##x,_n2##y,z,v)), \ 307.737 + (I[102] = (img)(_n1##x,_n3##y,z,v)), \ 307.738 + (I[114] = (img)(_n1##x,_n4##y,z,v)), \ 307.739 + (I[126] = (img)(_n1##x,_n5##y,z,v)), \ 307.740 + (I[138] = (img)(_n1##x,_n6##y,z,v)), \ 307.741 + (I[7] = (img)(_n2##x,_p5##y,z,v)), \ 307.742 + (I[19] = (img)(_n2##x,_p4##y,z,v)), \ 307.743 + (I[31] = (img)(_n2##x,_p3##y,z,v)), \ 307.744 + (I[43] = (img)(_n2##x,_p2##y,z,v)), \ 307.745 + (I[55] = (img)(_n2##x,_p1##y,z,v)), \ 307.746 + (I[67] = (img)(_n2##x,y,z,v)), \ 307.747 + (I[79] = (img)(_n2##x,_n1##y,z,v)), \ 307.748 + (I[91] = (img)(_n2##x,_n2##y,z,v)), \ 307.749 + (I[103] = (img)(_n2##x,_n3##y,z,v)), \ 307.750 + (I[115] = (img)(_n2##x,_n4##y,z,v)), \ 307.751 + (I[127] = (img)(_n2##x,_n5##y,z,v)), \ 307.752 + (I[139] = (img)(_n2##x,_n6##y,z,v)), \ 307.753 + (I[8] = (img)(_n3##x,_p5##y,z,v)), \ 307.754 + (I[20] = (img)(_n3##x,_p4##y,z,v)), \ 307.755 + (I[32] = (img)(_n3##x,_p3##y,z,v)), \ 307.756 + (I[44] = (img)(_n3##x,_p2##y,z,v)), \ 307.757 + (I[56] = (img)(_n3##x,_p1##y,z,v)), \ 307.758 + (I[68] = (img)(_n3##x,y,z,v)), \ 307.759 + (I[80] = (img)(_n3##x,_n1##y,z,v)), \ 307.760 + (I[92] = (img)(_n3##x,_n2##y,z,v)), \ 307.761 + (I[104] = (img)(_n3##x,_n3##y,z,v)), \ 307.762 + (I[116] = (img)(_n3##x,_n4##y,z,v)), \ 307.763 + (I[128] = (img)(_n3##x,_n5##y,z,v)), \ 307.764 + (I[140] = (img)(_n3##x,_n6##y,z,v)), \ 307.765 + (I[9] = (img)(_n4##x,_p5##y,z,v)), \ 307.766 + (I[21] = (img)(_n4##x,_p4##y,z,v)), \ 307.767 + (I[33] = (img)(_n4##x,_p3##y,z,v)), \ 307.768 + (I[45] = (img)(_n4##x,_p2##y,z,v)), \ 307.769 + (I[57] = (img)(_n4##x,_p1##y,z,v)), \ 307.770 + (I[69] = (img)(_n4##x,y,z,v)), \ 307.771 + (I[81] = (img)(_n4##x,_n1##y,z,v)), \ 307.772 + (I[93] = (img)(_n4##x,_n2##y,z,v)), \ 307.773 + (I[105] = (img)(_n4##x,_n3##y,z,v)), \ 307.774 + (I[117] = (img)(_n4##x,_n4##y,z,v)), \ 307.775 + (I[129] = (img)(_n4##x,_n5##y,z,v)), \ 307.776 + (I[141] = (img)(_n4##x,_n6##y,z,v)), \ 307.777 + (I[10] = (img)(_n5##x,_p5##y,z,v)), \ 307.778 + (I[22] = (img)(_n5##x,_p4##y,z,v)), \ 307.779 + (I[34] = (img)(_n5##x,_p3##y,z,v)), \ 307.780 + (I[46] = (img)(_n5##x,_p2##y,z,v)), \ 307.781 + (I[58] = (img)(_n5##x,_p1##y,z,v)), \ 307.782 + (I[70] = (img)(_n5##x,y,z,v)), \ 307.783 + (I[82] = (img)(_n5##x,_n1##y,z,v)), \ 307.784 + (I[94] = (img)(_n5##x,_n2##y,z,v)), \ 307.785 + (I[106] = (img)(_n5##x,_n3##y,z,v)), \ 307.786 + (I[118] = (img)(_n5##x,_n4##y,z,v)), \ 307.787 + (I[130] = (img)(_n5##x,_n5##y,z,v)), \ 307.788 + (I[142] = (img)(_n5##x,_n6##y,z,v)), \ 307.789 + 6>=((img).width)?(int)((img).width)-1:6); \ 307.790 + (_n6##x<(int)((img).width) && ( \ 307.791 + (I[11] = (img)(_n6##x,_p5##y,z,v)), \ 307.792 + (I[23] = (img)(_n6##x,_p4##y,z,v)), \ 307.793 + (I[35] = (img)(_n6##x,_p3##y,z,v)), \ 307.794 + (I[47] = (img)(_n6##x,_p2##y,z,v)), \ 307.795 + (I[59] = (img)(_n6##x,_p1##y,z,v)), \ 307.796 + (I[71] = (img)(_n6##x,y,z,v)), \ 307.797 + (I[83] = (img)(_n6##x,_n1##y,z,v)), \ 307.798 + (I[95] = (img)(_n6##x,_n2##y,z,v)), \ 307.799 + (I[107] = (img)(_n6##x,_n3##y,z,v)), \ 307.800 + (I[119] = (img)(_n6##x,_n4##y,z,v)), \ 307.801 + (I[131] = (img)(_n6##x,_n5##y,z,v)), \ 307.802 + (I[143] = (img)(_n6##x,_n6##y,z,v)),1)) || \ 307.803 + _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.804 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.805 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.806 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.807 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.808 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.809 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.810 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.811 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.812 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.813 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.814 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.815 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.816 + _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x) 307.817 + 307.818 +#define cimg_for_in12x12(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.819 + cimg_for_in12((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.820 + _p5##x = x-5<0?0:x-5, \ 307.821 + _p4##x = x-4<0?0:x-4, \ 307.822 + _p3##x = x-3<0?0:x-3, \ 307.823 + _p2##x = x-2<0?0:x-2, \ 307.824 + _p1##x = x-1<0?0:x-1, \ 307.825 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.826 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.827 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.828 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.829 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.830 + _n6##x = (int)( \ 307.831 + (I[0] = (img)(_p5##x,_p5##y,z,v)), \ 307.832 + (I[12] = (img)(_p5##x,_p4##y,z,v)), \ 307.833 + (I[24] = (img)(_p5##x,_p3##y,z,v)), \ 307.834 + (I[36] = (img)(_p5##x,_p2##y,z,v)), \ 307.835 + (I[48] = (img)(_p5##x,_p1##y,z,v)), \ 307.836 + (I[60] = (img)(_p5##x,y,z,v)), \ 307.837 + (I[72] = (img)(_p5##x,_n1##y,z,v)), \ 307.838 + (I[84] = (img)(_p5##x,_n2##y,z,v)), \ 307.839 + (I[96] = (img)(_p5##x,_n3##y,z,v)), \ 307.840 + (I[108] = (img)(_p5##x,_n4##y,z,v)), \ 307.841 + (I[120] = (img)(_p5##x,_n5##y,z,v)), \ 307.842 + (I[132] = (img)(_p5##x,_n6##y,z,v)), \ 307.843 + (I[1] = (img)(_p4##x,_p5##y,z,v)), \ 307.844 + (I[13] = (img)(_p4##x,_p4##y,z,v)), \ 307.845 + (I[25] = (img)(_p4##x,_p3##y,z,v)), \ 307.846 + (I[37] = (img)(_p4##x,_p2##y,z,v)), \ 307.847 + (I[49] = (img)(_p4##x,_p1##y,z,v)), \ 307.848 + (I[61] = (img)(_p4##x,y,z,v)), \ 307.849 + (I[73] = (img)(_p4##x,_n1##y,z,v)), \ 307.850 + (I[85] = (img)(_p4##x,_n2##y,z,v)), \ 307.851 + (I[97] = (img)(_p4##x,_n3##y,z,v)), \ 307.852 + (I[109] = (img)(_p4##x,_n4##y,z,v)), \ 307.853 + (I[121] = (img)(_p4##x,_n5##y,z,v)), \ 307.854 + (I[133] = (img)(_p4##x,_n6##y,z,v)), \ 307.855 + (I[2] = (img)(_p3##x,_p5##y,z,v)), \ 307.856 + (I[14] = (img)(_p3##x,_p4##y,z,v)), \ 307.857 + (I[26] = (img)(_p3##x,_p3##y,z,v)), \ 307.858 + (I[38] = (img)(_p3##x,_p2##y,z,v)), \ 307.859 + (I[50] = (img)(_p3##x,_p1##y,z,v)), \ 307.860 + (I[62] = (img)(_p3##x,y,z,v)), \ 307.861 + (I[74] = (img)(_p3##x,_n1##y,z,v)), \ 307.862 + (I[86] = (img)(_p3##x,_n2##y,z,v)), \ 307.863 + (I[98] = (img)(_p3##x,_n3##y,z,v)), \ 307.864 + (I[110] = (img)(_p3##x,_n4##y,z,v)), \ 307.865 + (I[122] = (img)(_p3##x,_n5##y,z,v)), \ 307.866 + (I[134] = (img)(_p3##x,_n6##y,z,v)), \ 307.867 + (I[3] = (img)(_p2##x,_p5##y,z,v)), \ 307.868 + (I[15] = (img)(_p2##x,_p4##y,z,v)), \ 307.869 + (I[27] = (img)(_p2##x,_p3##y,z,v)), \ 307.870 + (I[39] = (img)(_p2##x,_p2##y,z,v)), \ 307.871 + (I[51] = (img)(_p2##x,_p1##y,z,v)), \ 307.872 + (I[63] = (img)(_p2##x,y,z,v)), \ 307.873 + (I[75] = (img)(_p2##x,_n1##y,z,v)), \ 307.874 + (I[87] = (img)(_p2##x,_n2##y,z,v)), \ 307.875 + (I[99] = (img)(_p2##x,_n3##y,z,v)), \ 307.876 + (I[111] = (img)(_p2##x,_n4##y,z,v)), \ 307.877 + (I[123] = (img)(_p2##x,_n5##y,z,v)), \ 307.878 + (I[135] = (img)(_p2##x,_n6##y,z,v)), \ 307.879 + (I[4] = (img)(_p1##x,_p5##y,z,v)), \ 307.880 + (I[16] = (img)(_p1##x,_p4##y,z,v)), \ 307.881 + (I[28] = (img)(_p1##x,_p3##y,z,v)), \ 307.882 + (I[40] = (img)(_p1##x,_p2##y,z,v)), \ 307.883 + (I[52] = (img)(_p1##x,_p1##y,z,v)), \ 307.884 + (I[64] = (img)(_p1##x,y,z,v)), \ 307.885 + (I[76] = (img)(_p1##x,_n1##y,z,v)), \ 307.886 + (I[88] = (img)(_p1##x,_n2##y,z,v)), \ 307.887 + (I[100] = (img)(_p1##x,_n3##y,z,v)), \ 307.888 + (I[112] = (img)(_p1##x,_n4##y,z,v)), \ 307.889 + (I[124] = (img)(_p1##x,_n5##y,z,v)), \ 307.890 + (I[136] = (img)(_p1##x,_n6##y,z,v)), \ 307.891 + (I[5] = (img)(x,_p5##y,z,v)), \ 307.892 + (I[17] = (img)(x,_p4##y,z,v)), \ 307.893 + (I[29] = (img)(x,_p3##y,z,v)), \ 307.894 + (I[41] = (img)(x,_p2##y,z,v)), \ 307.895 + (I[53] = (img)(x,_p1##y,z,v)), \ 307.896 + (I[65] = (img)(x,y,z,v)), \ 307.897 + (I[77] = (img)(x,_n1##y,z,v)), \ 307.898 + (I[89] = (img)(x,_n2##y,z,v)), \ 307.899 + (I[101] = (img)(x,_n3##y,z,v)), \ 307.900 + (I[113] = (img)(x,_n4##y,z,v)), \ 307.901 + (I[125] = (img)(x,_n5##y,z,v)), \ 307.902 + (I[137] = (img)(x,_n6##y,z,v)), \ 307.903 + (I[6] = (img)(_n1##x,_p5##y,z,v)), \ 307.904 + (I[18] = (img)(_n1##x,_p4##y,z,v)), \ 307.905 + (I[30] = (img)(_n1##x,_p3##y,z,v)), \ 307.906 + (I[42] = (img)(_n1##x,_p2##y,z,v)), \ 307.907 + (I[54] = (img)(_n1##x,_p1##y,z,v)), \ 307.908 + (I[66] = (img)(_n1##x,y,z,v)), \ 307.909 + (I[78] = (img)(_n1##x,_n1##y,z,v)), \ 307.910 + (I[90] = (img)(_n1##x,_n2##y,z,v)), \ 307.911 + (I[102] = (img)(_n1##x,_n3##y,z,v)), \ 307.912 + (I[114] = (img)(_n1##x,_n4##y,z,v)), \ 307.913 + (I[126] = (img)(_n1##x,_n5##y,z,v)), \ 307.914 + (I[138] = (img)(_n1##x,_n6##y,z,v)), \ 307.915 + (I[7] = (img)(_n2##x,_p5##y,z,v)), \ 307.916 + (I[19] = (img)(_n2##x,_p4##y,z,v)), \ 307.917 + (I[31] = (img)(_n2##x,_p3##y,z,v)), \ 307.918 + (I[43] = (img)(_n2##x,_p2##y,z,v)), \ 307.919 + (I[55] = (img)(_n2##x,_p1##y,z,v)), \ 307.920 + (I[67] = (img)(_n2##x,y,z,v)), \ 307.921 + (I[79] = (img)(_n2##x,_n1##y,z,v)), \ 307.922 + (I[91] = (img)(_n2##x,_n2##y,z,v)), \ 307.923 + (I[103] = (img)(_n2##x,_n3##y,z,v)), \ 307.924 + (I[115] = (img)(_n2##x,_n4##y,z,v)), \ 307.925 + (I[127] = (img)(_n2##x,_n5##y,z,v)), \ 307.926 + (I[139] = (img)(_n2##x,_n6##y,z,v)), \ 307.927 + (I[8] = (img)(_n3##x,_p5##y,z,v)), \ 307.928 + (I[20] = (img)(_n3##x,_p4##y,z,v)), \ 307.929 + (I[32] = (img)(_n3##x,_p3##y,z,v)), \ 307.930 + (I[44] = (img)(_n3##x,_p2##y,z,v)), \ 307.931 + (I[56] = (img)(_n3##x,_p1##y,z,v)), \ 307.932 + (I[68] = (img)(_n3##x,y,z,v)), \ 307.933 + (I[80] = (img)(_n3##x,_n1##y,z,v)), \ 307.934 + (I[92] = (img)(_n3##x,_n2##y,z,v)), \ 307.935 + (I[104] = (img)(_n3##x,_n3##y,z,v)), \ 307.936 + (I[116] = (img)(_n3##x,_n4##y,z,v)), \ 307.937 + (I[128] = (img)(_n3##x,_n5##y,z,v)), \ 307.938 + (I[140] = (img)(_n3##x,_n6##y,z,v)), \ 307.939 + (I[9] = (img)(_n4##x,_p5##y,z,v)), \ 307.940 + (I[21] = (img)(_n4##x,_p4##y,z,v)), \ 307.941 + (I[33] = (img)(_n4##x,_p3##y,z,v)), \ 307.942 + (I[45] = (img)(_n4##x,_p2##y,z,v)), \ 307.943 + (I[57] = (img)(_n4##x,_p1##y,z,v)), \ 307.944 + (I[69] = (img)(_n4##x,y,z,v)), \ 307.945 + (I[81] = (img)(_n4##x,_n1##y,z,v)), \ 307.946 + (I[93] = (img)(_n4##x,_n2##y,z,v)), \ 307.947 + (I[105] = (img)(_n4##x,_n3##y,z,v)), \ 307.948 + (I[117] = (img)(_n4##x,_n4##y,z,v)), \ 307.949 + (I[129] = (img)(_n4##x,_n5##y,z,v)), \ 307.950 + (I[141] = (img)(_n4##x,_n6##y,z,v)), \ 307.951 + (I[10] = (img)(_n5##x,_p5##y,z,v)), \ 307.952 + (I[22] = (img)(_n5##x,_p4##y,z,v)), \ 307.953 + (I[34] = (img)(_n5##x,_p3##y,z,v)), \ 307.954 + (I[46] = (img)(_n5##x,_p2##y,z,v)), \ 307.955 + (I[58] = (img)(_n5##x,_p1##y,z,v)), \ 307.956 + (I[70] = (img)(_n5##x,y,z,v)), \ 307.957 + (I[82] = (img)(_n5##x,_n1##y,z,v)), \ 307.958 + (I[94] = (img)(_n5##x,_n2##y,z,v)), \ 307.959 + (I[106] = (img)(_n5##x,_n3##y,z,v)), \ 307.960 + (I[118] = (img)(_n5##x,_n4##y,z,v)), \ 307.961 + (I[130] = (img)(_n5##x,_n5##y,z,v)), \ 307.962 + (I[142] = (img)(_n5##x,_n6##y,z,v)), \ 307.963 + x+6>=(int)((img).width)?(int)((img).width)-1:x+6); \ 307.964 + x<=(int)(x1) && ((_n6##x<(int)((img).width) && ( \ 307.965 + (I[11] = (img)(_n6##x,_p5##y,z,v)), \ 307.966 + (I[23] = (img)(_n6##x,_p4##y,z,v)), \ 307.967 + (I[35] = (img)(_n6##x,_p3##y,z,v)), \ 307.968 + (I[47] = (img)(_n6##x,_p2##y,z,v)), \ 307.969 + (I[59] = (img)(_n6##x,_p1##y,z,v)), \ 307.970 + (I[71] = (img)(_n6##x,y,z,v)), \ 307.971 + (I[83] = (img)(_n6##x,_n1##y,z,v)), \ 307.972 + (I[95] = (img)(_n6##x,_n2##y,z,v)), \ 307.973 + (I[107] = (img)(_n6##x,_n3##y,z,v)), \ 307.974 + (I[119] = (img)(_n6##x,_n4##y,z,v)), \ 307.975 + (I[131] = (img)(_n6##x,_n5##y,z,v)), \ 307.976 + (I[143] = (img)(_n6##x,_n6##y,z,v)),1)) || \ 307.977 + _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.978 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.979 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.980 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.981 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.982 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.983 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.984 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.985 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.986 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.987 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.988 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.989 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.990 + _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x) 307.991 + 307.992 +#define cimg_get12x12(img,x,y,z,v,I) \ 307.993 + I[0] = (img)(_p5##x,_p5##y,z,v), I[1] = (img)(_p4##x,_p5##y,z,v), I[2] = (img)(_p3##x,_p5##y,z,v), I[3] = (img)(_p2##x,_p5##y,z,v), I[4] = (img)(_p1##x,_p5##y,z,v), I[5] = (img)(x,_p5##y,z,v), I[6] = (img)(_n1##x,_p5##y,z,v), I[7] = (img)(_n2##x,_p5##y,z,v), I[8] = (img)(_n3##x,_p5##y,z,v), I[9] = (img)(_n4##x,_p5##y,z,v), I[10] = (img)(_n5##x,_p5##y,z,v), I[11] = (img)(_n6##x,_p5##y,z,v), \ 307.994 + I[12] = (img)(_p5##x,_p4##y,z,v), I[13] = (img)(_p4##x,_p4##y,z,v), I[14] = (img)(_p3##x,_p4##y,z,v), I[15] = (img)(_p2##x,_p4##y,z,v), I[16] = (img)(_p1##x,_p4##y,z,v), I[17] = (img)(x,_p4##y,z,v), I[18] = (img)(_n1##x,_p4##y,z,v), I[19] = (img)(_n2##x,_p4##y,z,v), I[20] = (img)(_n3##x,_p4##y,z,v), I[21] = (img)(_n4##x,_p4##y,z,v), I[22] = (img)(_n5##x,_p4##y,z,v), I[23] = (img)(_n6##x,_p4##y,z,v), \ 307.995 + I[24] = (img)(_p5##x,_p3##y,z,v), I[25] = (img)(_p4##x,_p3##y,z,v), I[26] = (img)(_p3##x,_p3##y,z,v), I[27] = (img)(_p2##x,_p3##y,z,v), I[28] = (img)(_p1##x,_p3##y,z,v), I[29] = (img)(x,_p3##y,z,v), I[30] = (img)(_n1##x,_p3##y,z,v), I[31] = (img)(_n2##x,_p3##y,z,v), I[32] = (img)(_n3##x,_p3##y,z,v), I[33] = (img)(_n4##x,_p3##y,z,v), I[34] = (img)(_n5##x,_p3##y,z,v), I[35] = (img)(_n6##x,_p3##y,z,v), \ 307.996 + I[36] = (img)(_p5##x,_p2##y,z,v), I[37] = (img)(_p4##x,_p2##y,z,v), I[38] = (img)(_p3##x,_p2##y,z,v), I[39] = (img)(_p2##x,_p2##y,z,v), I[40] = (img)(_p1##x,_p2##y,z,v), I[41] = (img)(x,_p2##y,z,v), I[42] = (img)(_n1##x,_p2##y,z,v), I[43] = (img)(_n2##x,_p2##y,z,v), I[44] = (img)(_n3##x,_p2##y,z,v), I[45] = (img)(_n4##x,_p2##y,z,v), I[46] = (img)(_n5##x,_p2##y,z,v), I[47] = (img)(_n6##x,_p2##y,z,v), \ 307.997 + I[48] = (img)(_p5##x,_p1##y,z,v), I[49] = (img)(_p4##x,_p1##y,z,v), I[50] = (img)(_p3##x,_p1##y,z,v), I[51] = (img)(_p2##x,_p1##y,z,v), I[52] = (img)(_p1##x,_p1##y,z,v), I[53] = (img)(x,_p1##y,z,v), I[54] = (img)(_n1##x,_p1##y,z,v), I[55] = (img)(_n2##x,_p1##y,z,v), I[56] = (img)(_n3##x,_p1##y,z,v), I[57] = (img)(_n4##x,_p1##y,z,v), I[58] = (img)(_n5##x,_p1##y,z,v), I[59] = (img)(_n6##x,_p1##y,z,v), \ 307.998 + I[60] = (img)(_p5##x,y,z,v), I[61] = (img)(_p4##x,y,z,v), I[62] = (img)(_p3##x,y,z,v), I[63] = (img)(_p2##x,y,z,v), I[64] = (img)(_p1##x,y,z,v), I[65] = (img)(x,y,z,v), I[66] = (img)(_n1##x,y,z,v), I[67] = (img)(_n2##x,y,z,v), I[68] = (img)(_n3##x,y,z,v), I[69] = (img)(_n4##x,y,z,v), I[70] = (img)(_n5##x,y,z,v), I[71] = (img)(_n6##x,y,z,v), \ 307.999 + I[72] = (img)(_p5##x,_n1##y,z,v), I[73] = (img)(_p4##x,_n1##y,z,v), I[74] = (img)(_p3##x,_n1##y,z,v), I[75] = (img)(_p2##x,_n1##y,z,v), I[76] = (img)(_p1##x,_n1##y,z,v), I[77] = (img)(x,_n1##y,z,v), I[78] = (img)(_n1##x,_n1##y,z,v), I[79] = (img)(_n2##x,_n1##y,z,v), I[80] = (img)(_n3##x,_n1##y,z,v), I[81] = (img)(_n4##x,_n1##y,z,v), I[82] = (img)(_n5##x,_n1##y,z,v), I[83] = (img)(_n6##x,_n1##y,z,v), \ 307.1000 + I[84] = (img)(_p5##x,_n2##y,z,v), I[85] = (img)(_p4##x,_n2##y,z,v), I[86] = (img)(_p3##x,_n2##y,z,v), I[87] = (img)(_p2##x,_n2##y,z,v), I[88] = (img)(_p1##x,_n2##y,z,v), I[89] = (img)(x,_n2##y,z,v), I[90] = (img)(_n1##x,_n2##y,z,v), I[91] = (img)(_n2##x,_n2##y,z,v), I[92] = (img)(_n3##x,_n2##y,z,v), I[93] = (img)(_n4##x,_n2##y,z,v), I[94] = (img)(_n5##x,_n2##y,z,v), I[95] = (img)(_n6##x,_n2##y,z,v), \ 307.1001 + I[96] = (img)(_p5##x,_n3##y,z,v), I[97] = (img)(_p4##x,_n3##y,z,v), I[98] = (img)(_p3##x,_n3##y,z,v), I[99] = (img)(_p2##x,_n3##y,z,v), I[100] = (img)(_p1##x,_n3##y,z,v), I[101] = (img)(x,_n3##y,z,v), I[102] = (img)(_n1##x,_n3##y,z,v), I[103] = (img)(_n2##x,_n3##y,z,v), I[104] = (img)(_n3##x,_n3##y,z,v), I[105] = (img)(_n4##x,_n3##y,z,v), I[106] = (img)(_n5##x,_n3##y,z,v), I[107] = (img)(_n6##x,_n3##y,z,v), \ 307.1002 + I[108] = (img)(_p5##x,_n4##y,z,v), I[109] = (img)(_p4##x,_n4##y,z,v), I[110] = (img)(_p3##x,_n4##y,z,v), I[111] = (img)(_p2##x,_n4##y,z,v), I[112] = (img)(_p1##x,_n4##y,z,v), I[113] = (img)(x,_n4##y,z,v), I[114] = (img)(_n1##x,_n4##y,z,v), I[115] = (img)(_n2##x,_n4##y,z,v), I[116] = (img)(_n3##x,_n4##y,z,v), I[117] = (img)(_n4##x,_n4##y,z,v), I[118] = (img)(_n5##x,_n4##y,z,v), I[119] = (img)(_n6##x,_n4##y,z,v), \ 307.1003 + I[120] = (img)(_p5##x,_n5##y,z,v), I[121] = (img)(_p4##x,_n5##y,z,v), I[122] = (img)(_p3##x,_n5##y,z,v), I[123] = (img)(_p2##x,_n5##y,z,v), I[124] = (img)(_p1##x,_n5##y,z,v), I[125] = (img)(x,_n5##y,z,v), I[126] = (img)(_n1##x,_n5##y,z,v), I[127] = (img)(_n2##x,_n5##y,z,v), I[128] = (img)(_n3##x,_n5##y,z,v), I[129] = (img)(_n4##x,_n5##y,z,v), I[130] = (img)(_n5##x,_n5##y,z,v), I[131] = (img)(_n6##x,_n5##y,z,v), \ 307.1004 + I[132] = (img)(_p5##x,_n6##y,z,v), I[133] = (img)(_p4##x,_n6##y,z,v), I[134] = (img)(_p3##x,_n6##y,z,v), I[135] = (img)(_p2##x,_n6##y,z,v), I[136] = (img)(_p1##x,_n6##y,z,v), I[137] = (img)(x,_n6##y,z,v), I[138] = (img)(_n1##x,_n6##y,z,v), I[139] = (img)(_n2##x,_n6##y,z,v), I[140] = (img)(_n3##x,_n6##y,z,v), I[141] = (img)(_n4##x,_n6##y,z,v), I[142] = (img)(_n5##x,_n6##y,z,v), I[143] = (img)(_n6##x,_n6##y,z,v); 307.1005 + 307.1006 +// Define 13x13 loop macros for CImg 307.1007 +//---------------------------------- 307.1008 +#define cimg_for13(bound,i) for (int i = 0, \ 307.1009 + _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.1010 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.1011 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.1012 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.1013 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.1014 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.1015 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6; \ 307.1016 + _n6##i<(int)(bound) || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1017 + i==(_n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.1018 + _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1019 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i) 307.1020 + 307.1021 +#define cimg_for13X(img,x) cimg_for13((img).width,x) 307.1022 +#define cimg_for13Y(img,y) cimg_for13((img).height,y) 307.1023 +#define cimg_for13Z(img,z) cimg_for13((img).depth,z) 307.1024 +#define cimg_for13V(img,v) cimg_for13((img).dim,v) 307.1025 +#define cimg_for13XY(img,x,y) cimg_for13Y(img,y) cimg_for13X(img,x) 307.1026 +#define cimg_for13XZ(img,x,z) cimg_for13Z(img,z) cimg_for13X(img,x) 307.1027 +#define cimg_for13XV(img,x,v) cimg_for13V(img,v) cimg_for13X(img,x) 307.1028 +#define cimg_for13YZ(img,y,z) cimg_for13Z(img,z) cimg_for13Y(img,y) 307.1029 +#define cimg_for13YV(img,y,v) cimg_for13V(img,v) cimg_for13Y(img,y) 307.1030 +#define cimg_for13ZV(img,z,v) cimg_for13V(img,v) cimg_for13Z(img,z) 307.1031 +#define cimg_for13XYZ(img,x,y,z) cimg_for13Z(img,z) cimg_for13XY(img,x,y) 307.1032 +#define cimg_for13XZV(img,x,z,v) cimg_for13V(img,v) cimg_for13XZ(img,x,z) 307.1033 +#define cimg_for13YZV(img,y,z,v) cimg_for13V(img,v) cimg_for13YZ(img,y,z) 307.1034 +#define cimg_for13XYZV(img,x,y,z,v) cimg_for13V(img,v) cimg_for13XYZ(img,x,y,z) 307.1035 + 307.1036 +#define cimg_for_in13(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.1037 + _p6##i = i-6<0?0:i-6, \ 307.1038 + _p5##i = i-5<0?0:i-5, \ 307.1039 + _p4##i = i-4<0?0:i-4, \ 307.1040 + _p3##i = i-3<0?0:i-3, \ 307.1041 + _p2##i = i-2<0?0:i-2, \ 307.1042 + _p1##i = i-1<0?0:i-1, \ 307.1043 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.1044 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.1045 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.1046 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.1047 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.1048 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6; \ 307.1049 + i<=(int)(i1) && (_n6##i<(int)(bound) || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1050 + i==(_n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.1051 + _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1052 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i) 307.1053 + 307.1054 +#define cimg_for_in13X(img,x0,x1,x) cimg_for_in13((img).width,x0,x1,x) 307.1055 +#define cimg_for_in13Y(img,y0,y1,y) cimg_for_in13((img).height,y0,y1,y) 307.1056 +#define cimg_for_in13Z(img,z0,z1,z) cimg_for_in13((img).depth,z0,z1,z) 307.1057 +#define cimg_for_in13V(img,v0,v1,v) cimg_for_in13((img).dim,v0,v1,v) 307.1058 +#define cimg_for_in13XY(img,x0,y0,x1,y1,x,y) cimg_for_in13Y(img,y0,y1,y) cimg_for_in13X(img,x0,x1,x) 307.1059 +#define cimg_for_in13XZ(img,x0,z0,x1,z1,x,z) cimg_for_in13Z(img,z0,z1,z) cimg_for_in13X(img,x0,x1,x) 307.1060 +#define cimg_for_in13XV(img,x0,v0,x1,v1,x,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13X(img,x0,x1,x) 307.1061 +#define cimg_for_in13YZ(img,y0,z0,y1,z1,y,z) cimg_for_in13Z(img,z0,z1,z) cimg_for_in13Y(img,y0,y1,y) 307.1062 +#define cimg_for_in13YV(img,y0,v0,y1,v1,y,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13Y(img,y0,y1,y) 307.1063 +#define cimg_for_in13ZV(img,z0,v0,z1,v1,z,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13Z(img,z0,z1,z) 307.1064 +#define cimg_for_in13XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in13Z(img,z0,z1,z) cimg_for_in13XY(img,x0,y0,x1,y1,x,y) 307.1065 +#define cimg_for_in13XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13XZ(img,x0,y0,x1,y1,x,z) 307.1066 +#define cimg_for_in13YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13YZ(img,y0,z0,y1,z1,y,z) 307.1067 +#define cimg_for_in13XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in13V(img,v0,v1,v) cimg_for_in13XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.1068 + 307.1069 +#define cimg_for13x13(img,x,y,z,v,I) \ 307.1070 + cimg_for13((img).height,y) for (int x = 0, \ 307.1071 + _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.1072 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.1073 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.1074 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.1075 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.1076 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.1077 + _n6##x = (int)( \ 307.1078 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = (img)(0,_p6##y,z,v)), \ 307.1079 + (I[13] = I[14] = I[15] = I[16] = I[17] = I[18] = I[19] = (img)(0,_p5##y,z,v)), \ 307.1080 + (I[26] = I[27] = I[28] = I[29] = I[30] = I[31] = I[32] = (img)(0,_p4##y,z,v)), \ 307.1081 + (I[39] = I[40] = I[41] = I[42] = I[43] = I[44] = I[45] = (img)(0,_p3##y,z,v)), \ 307.1082 + (I[52] = I[53] = I[54] = I[55] = I[56] = I[57] = I[58] = (img)(0,_p2##y,z,v)), \ 307.1083 + (I[65] = I[66] = I[67] = I[68] = I[69] = I[70] = I[71] = (img)(0,_p1##y,z,v)), \ 307.1084 + (I[78] = I[79] = I[80] = I[81] = I[82] = I[83] = I[84] = (img)(0,y,z,v)), \ 307.1085 + (I[91] = I[92] = I[93] = I[94] = I[95] = I[96] = I[97] = (img)(0,_n1##y,z,v)), \ 307.1086 + (I[104] = I[105] = I[106] = I[107] = I[108] = I[109] = I[110] = (img)(0,_n2##y,z,v)), \ 307.1087 + (I[117] = I[118] = I[119] = I[120] = I[121] = I[122] = I[123] = (img)(0,_n3##y,z,v)), \ 307.1088 + (I[130] = I[131] = I[132] = I[133] = I[134] = I[135] = I[136] = (img)(0,_n4##y,z,v)), \ 307.1089 + (I[143] = I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = (img)(0,_n5##y,z,v)), \ 307.1090 + (I[156] = I[157] = I[158] = I[159] = I[160] = I[161] = I[162] = (img)(0,_n6##y,z,v)), \ 307.1091 + (I[7] = (img)(_n1##x,_p6##y,z,v)), \ 307.1092 + (I[20] = (img)(_n1##x,_p5##y,z,v)), \ 307.1093 + (I[33] = (img)(_n1##x,_p4##y,z,v)), \ 307.1094 + (I[46] = (img)(_n1##x,_p3##y,z,v)), \ 307.1095 + (I[59] = (img)(_n1##x,_p2##y,z,v)), \ 307.1096 + (I[72] = (img)(_n1##x,_p1##y,z,v)), \ 307.1097 + (I[85] = (img)(_n1##x,y,z,v)), \ 307.1098 + (I[98] = (img)(_n1##x,_n1##y,z,v)), \ 307.1099 + (I[111] = (img)(_n1##x,_n2##y,z,v)), \ 307.1100 + (I[124] = (img)(_n1##x,_n3##y,z,v)), \ 307.1101 + (I[137] = (img)(_n1##x,_n4##y,z,v)), \ 307.1102 + (I[150] = (img)(_n1##x,_n5##y,z,v)), \ 307.1103 + (I[163] = (img)(_n1##x,_n6##y,z,v)), \ 307.1104 + (I[8] = (img)(_n2##x,_p6##y,z,v)), \ 307.1105 + (I[21] = (img)(_n2##x,_p5##y,z,v)), \ 307.1106 + (I[34] = (img)(_n2##x,_p4##y,z,v)), \ 307.1107 + (I[47] = (img)(_n2##x,_p3##y,z,v)), \ 307.1108 + (I[60] = (img)(_n2##x,_p2##y,z,v)), \ 307.1109 + (I[73] = (img)(_n2##x,_p1##y,z,v)), \ 307.1110 + (I[86] = (img)(_n2##x,y,z,v)), \ 307.1111 + (I[99] = (img)(_n2##x,_n1##y,z,v)), \ 307.1112 + (I[112] = (img)(_n2##x,_n2##y,z,v)), \ 307.1113 + (I[125] = (img)(_n2##x,_n3##y,z,v)), \ 307.1114 + (I[138] = (img)(_n2##x,_n4##y,z,v)), \ 307.1115 + (I[151] = (img)(_n2##x,_n5##y,z,v)), \ 307.1116 + (I[164] = (img)(_n2##x,_n6##y,z,v)), \ 307.1117 + (I[9] = (img)(_n3##x,_p6##y,z,v)), \ 307.1118 + (I[22] = (img)(_n3##x,_p5##y,z,v)), \ 307.1119 + (I[35] = (img)(_n3##x,_p4##y,z,v)), \ 307.1120 + (I[48] = (img)(_n3##x,_p3##y,z,v)), \ 307.1121 + (I[61] = (img)(_n3##x,_p2##y,z,v)), \ 307.1122 + (I[74] = (img)(_n3##x,_p1##y,z,v)), \ 307.1123 + (I[87] = (img)(_n3##x,y,z,v)), \ 307.1124 + (I[100] = (img)(_n3##x,_n1##y,z,v)), \ 307.1125 + (I[113] = (img)(_n3##x,_n2##y,z,v)), \ 307.1126 + (I[126] = (img)(_n3##x,_n3##y,z,v)), \ 307.1127 + (I[139] = (img)(_n3##x,_n4##y,z,v)), \ 307.1128 + (I[152] = (img)(_n3##x,_n5##y,z,v)), \ 307.1129 + (I[165] = (img)(_n3##x,_n6##y,z,v)), \ 307.1130 + (I[10] = (img)(_n4##x,_p6##y,z,v)), \ 307.1131 + (I[23] = (img)(_n4##x,_p5##y,z,v)), \ 307.1132 + (I[36] = (img)(_n4##x,_p4##y,z,v)), \ 307.1133 + (I[49] = (img)(_n4##x,_p3##y,z,v)), \ 307.1134 + (I[62] = (img)(_n4##x,_p2##y,z,v)), \ 307.1135 + (I[75] = (img)(_n4##x,_p1##y,z,v)), \ 307.1136 + (I[88] = (img)(_n4##x,y,z,v)), \ 307.1137 + (I[101] = (img)(_n4##x,_n1##y,z,v)), \ 307.1138 + (I[114] = (img)(_n4##x,_n2##y,z,v)), \ 307.1139 + (I[127] = (img)(_n4##x,_n3##y,z,v)), \ 307.1140 + (I[140] = (img)(_n4##x,_n4##y,z,v)), \ 307.1141 + (I[153] = (img)(_n4##x,_n5##y,z,v)), \ 307.1142 + (I[166] = (img)(_n4##x,_n6##y,z,v)), \ 307.1143 + (I[11] = (img)(_n5##x,_p6##y,z,v)), \ 307.1144 + (I[24] = (img)(_n5##x,_p5##y,z,v)), \ 307.1145 + (I[37] = (img)(_n5##x,_p4##y,z,v)), \ 307.1146 + (I[50] = (img)(_n5##x,_p3##y,z,v)), \ 307.1147 + (I[63] = (img)(_n5##x,_p2##y,z,v)), \ 307.1148 + (I[76] = (img)(_n5##x,_p1##y,z,v)), \ 307.1149 + (I[89] = (img)(_n5##x,y,z,v)), \ 307.1150 + (I[102] = (img)(_n5##x,_n1##y,z,v)), \ 307.1151 + (I[115] = (img)(_n5##x,_n2##y,z,v)), \ 307.1152 + (I[128] = (img)(_n5##x,_n3##y,z,v)), \ 307.1153 + (I[141] = (img)(_n5##x,_n4##y,z,v)), \ 307.1154 + (I[154] = (img)(_n5##x,_n5##y,z,v)), \ 307.1155 + (I[167] = (img)(_n5##x,_n6##y,z,v)), \ 307.1156 + 6>=((img).width)?(int)((img).width)-1:6); \ 307.1157 + (_n6##x<(int)((img).width) && ( \ 307.1158 + (I[12] = (img)(_n6##x,_p6##y,z,v)), \ 307.1159 + (I[25] = (img)(_n6##x,_p5##y,z,v)), \ 307.1160 + (I[38] = (img)(_n6##x,_p4##y,z,v)), \ 307.1161 + (I[51] = (img)(_n6##x,_p3##y,z,v)), \ 307.1162 + (I[64] = (img)(_n6##x,_p2##y,z,v)), \ 307.1163 + (I[77] = (img)(_n6##x,_p1##y,z,v)), \ 307.1164 + (I[90] = (img)(_n6##x,y,z,v)), \ 307.1165 + (I[103] = (img)(_n6##x,_n1##y,z,v)), \ 307.1166 + (I[116] = (img)(_n6##x,_n2##y,z,v)), \ 307.1167 + (I[129] = (img)(_n6##x,_n3##y,z,v)), \ 307.1168 + (I[142] = (img)(_n6##x,_n4##y,z,v)), \ 307.1169 + (I[155] = (img)(_n6##x,_n5##y,z,v)), \ 307.1170 + (I[168] = (img)(_n6##x,_n6##y,z,v)),1)) || \ 307.1171 + _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.1172 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], \ 307.1173 + I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], \ 307.1174 + I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], \ 307.1175 + I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], \ 307.1176 + I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], \ 307.1177 + I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], \ 307.1178 + I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], \ 307.1179 + I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], \ 307.1180 + I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], \ 307.1181 + I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], \ 307.1182 + I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], \ 307.1183 + I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], \ 307.1184 + I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], \ 307.1185 + _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x) 307.1186 + 307.1187 +#define cimg_for_in13x13(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.1188 + cimg_for_in13((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.1189 + _p6##x = x-6<0?0:x-6, \ 307.1190 + _p5##x = x-5<0?0:x-5, \ 307.1191 + _p4##x = x-4<0?0:x-4, \ 307.1192 + _p3##x = x-3<0?0:x-3, \ 307.1193 + _p2##x = x-2<0?0:x-2, \ 307.1194 + _p1##x = x-1<0?0:x-1, \ 307.1195 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.1196 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.1197 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.1198 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.1199 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.1200 + _n6##x = (int)( \ 307.1201 + (I[0] = (img)(_p6##x,_p6##y,z,v)), \ 307.1202 + (I[13] = (img)(_p6##x,_p5##y,z,v)), \ 307.1203 + (I[26] = (img)(_p6##x,_p4##y,z,v)), \ 307.1204 + (I[39] = (img)(_p6##x,_p3##y,z,v)), \ 307.1205 + (I[52] = (img)(_p6##x,_p2##y,z,v)), \ 307.1206 + (I[65] = (img)(_p6##x,_p1##y,z,v)), \ 307.1207 + (I[78] = (img)(_p6##x,y,z,v)), \ 307.1208 + (I[91] = (img)(_p6##x,_n1##y,z,v)), \ 307.1209 + (I[104] = (img)(_p6##x,_n2##y,z,v)), \ 307.1210 + (I[117] = (img)(_p6##x,_n3##y,z,v)), \ 307.1211 + (I[130] = (img)(_p6##x,_n4##y,z,v)), \ 307.1212 + (I[143] = (img)(_p6##x,_n5##y,z,v)), \ 307.1213 + (I[156] = (img)(_p6##x,_n6##y,z,v)), \ 307.1214 + (I[1] = (img)(_p5##x,_p6##y,z,v)), \ 307.1215 + (I[14] = (img)(_p5##x,_p5##y,z,v)), \ 307.1216 + (I[27] = (img)(_p5##x,_p4##y,z,v)), \ 307.1217 + (I[40] = (img)(_p5##x,_p3##y,z,v)), \ 307.1218 + (I[53] = (img)(_p5##x,_p2##y,z,v)), \ 307.1219 + (I[66] = (img)(_p5##x,_p1##y,z,v)), \ 307.1220 + (I[79] = (img)(_p5##x,y,z,v)), \ 307.1221 + (I[92] = (img)(_p5##x,_n1##y,z,v)), \ 307.1222 + (I[105] = (img)(_p5##x,_n2##y,z,v)), \ 307.1223 + (I[118] = (img)(_p5##x,_n3##y,z,v)), \ 307.1224 + (I[131] = (img)(_p5##x,_n4##y,z,v)), \ 307.1225 + (I[144] = (img)(_p5##x,_n5##y,z,v)), \ 307.1226 + (I[157] = (img)(_p5##x,_n6##y,z,v)), \ 307.1227 + (I[2] = (img)(_p4##x,_p6##y,z,v)), \ 307.1228 + (I[15] = (img)(_p4##x,_p5##y,z,v)), \ 307.1229 + (I[28] = (img)(_p4##x,_p4##y,z,v)), \ 307.1230 + (I[41] = (img)(_p4##x,_p3##y,z,v)), \ 307.1231 + (I[54] = (img)(_p4##x,_p2##y,z,v)), \ 307.1232 + (I[67] = (img)(_p4##x,_p1##y,z,v)), \ 307.1233 + (I[80] = (img)(_p4##x,y,z,v)), \ 307.1234 + (I[93] = (img)(_p4##x,_n1##y,z,v)), \ 307.1235 + (I[106] = (img)(_p4##x,_n2##y,z,v)), \ 307.1236 + (I[119] = (img)(_p4##x,_n3##y,z,v)), \ 307.1237 + (I[132] = (img)(_p4##x,_n4##y,z,v)), \ 307.1238 + (I[145] = (img)(_p4##x,_n5##y,z,v)), \ 307.1239 + (I[158] = (img)(_p4##x,_n6##y,z,v)), \ 307.1240 + (I[3] = (img)(_p3##x,_p6##y,z,v)), \ 307.1241 + (I[16] = (img)(_p3##x,_p5##y,z,v)), \ 307.1242 + (I[29] = (img)(_p3##x,_p4##y,z,v)), \ 307.1243 + (I[42] = (img)(_p3##x,_p3##y,z,v)), \ 307.1244 + (I[55] = (img)(_p3##x,_p2##y,z,v)), \ 307.1245 + (I[68] = (img)(_p3##x,_p1##y,z,v)), \ 307.1246 + (I[81] = (img)(_p3##x,y,z,v)), \ 307.1247 + (I[94] = (img)(_p3##x,_n1##y,z,v)), \ 307.1248 + (I[107] = (img)(_p3##x,_n2##y,z,v)), \ 307.1249 + (I[120] = (img)(_p3##x,_n3##y,z,v)), \ 307.1250 + (I[133] = (img)(_p3##x,_n4##y,z,v)), \ 307.1251 + (I[146] = (img)(_p3##x,_n5##y,z,v)), \ 307.1252 + (I[159] = (img)(_p3##x,_n6##y,z,v)), \ 307.1253 + (I[4] = (img)(_p2##x,_p6##y,z,v)), \ 307.1254 + (I[17] = (img)(_p2##x,_p5##y,z,v)), \ 307.1255 + (I[30] = (img)(_p2##x,_p4##y,z,v)), \ 307.1256 + (I[43] = (img)(_p2##x,_p3##y,z,v)), \ 307.1257 + (I[56] = (img)(_p2##x,_p2##y,z,v)), \ 307.1258 + (I[69] = (img)(_p2##x,_p1##y,z,v)), \ 307.1259 + (I[82] = (img)(_p2##x,y,z,v)), \ 307.1260 + (I[95] = (img)(_p2##x,_n1##y,z,v)), \ 307.1261 + (I[108] = (img)(_p2##x,_n2##y,z,v)), \ 307.1262 + (I[121] = (img)(_p2##x,_n3##y,z,v)), \ 307.1263 + (I[134] = (img)(_p2##x,_n4##y,z,v)), \ 307.1264 + (I[147] = (img)(_p2##x,_n5##y,z,v)), \ 307.1265 + (I[160] = (img)(_p2##x,_n6##y,z,v)), \ 307.1266 + (I[5] = (img)(_p1##x,_p6##y,z,v)), \ 307.1267 + (I[18] = (img)(_p1##x,_p5##y,z,v)), \ 307.1268 + (I[31] = (img)(_p1##x,_p4##y,z,v)), \ 307.1269 + (I[44] = (img)(_p1##x,_p3##y,z,v)), \ 307.1270 + (I[57] = (img)(_p1##x,_p2##y,z,v)), \ 307.1271 + (I[70] = (img)(_p1##x,_p1##y,z,v)), \ 307.1272 + (I[83] = (img)(_p1##x,y,z,v)), \ 307.1273 + (I[96] = (img)(_p1##x,_n1##y,z,v)), \ 307.1274 + (I[109] = (img)(_p1##x,_n2##y,z,v)), \ 307.1275 + (I[122] = (img)(_p1##x,_n3##y,z,v)), \ 307.1276 + (I[135] = (img)(_p1##x,_n4##y,z,v)), \ 307.1277 + (I[148] = (img)(_p1##x,_n5##y,z,v)), \ 307.1278 + (I[161] = (img)(_p1##x,_n6##y,z,v)), \ 307.1279 + (I[6] = (img)(x,_p6##y,z,v)), \ 307.1280 + (I[19] = (img)(x,_p5##y,z,v)), \ 307.1281 + (I[32] = (img)(x,_p4##y,z,v)), \ 307.1282 + (I[45] = (img)(x,_p3##y,z,v)), \ 307.1283 + (I[58] = (img)(x,_p2##y,z,v)), \ 307.1284 + (I[71] = (img)(x,_p1##y,z,v)), \ 307.1285 + (I[84] = (img)(x,y,z,v)), \ 307.1286 + (I[97] = (img)(x,_n1##y,z,v)), \ 307.1287 + (I[110] = (img)(x,_n2##y,z,v)), \ 307.1288 + (I[123] = (img)(x,_n3##y,z,v)), \ 307.1289 + (I[136] = (img)(x,_n4##y,z,v)), \ 307.1290 + (I[149] = (img)(x,_n5##y,z,v)), \ 307.1291 + (I[162] = (img)(x,_n6##y,z,v)), \ 307.1292 + (I[7] = (img)(_n1##x,_p6##y,z,v)), \ 307.1293 + (I[20] = (img)(_n1##x,_p5##y,z,v)), \ 307.1294 + (I[33] = (img)(_n1##x,_p4##y,z,v)), \ 307.1295 + (I[46] = (img)(_n1##x,_p3##y,z,v)), \ 307.1296 + (I[59] = (img)(_n1##x,_p2##y,z,v)), \ 307.1297 + (I[72] = (img)(_n1##x,_p1##y,z,v)), \ 307.1298 + (I[85] = (img)(_n1##x,y,z,v)), \ 307.1299 + (I[98] = (img)(_n1##x,_n1##y,z,v)), \ 307.1300 + (I[111] = (img)(_n1##x,_n2##y,z,v)), \ 307.1301 + (I[124] = (img)(_n1##x,_n3##y,z,v)), \ 307.1302 + (I[137] = (img)(_n1##x,_n4##y,z,v)), \ 307.1303 + (I[150] = (img)(_n1##x,_n5##y,z,v)), \ 307.1304 + (I[163] = (img)(_n1##x,_n6##y,z,v)), \ 307.1305 + (I[8] = (img)(_n2##x,_p6##y,z,v)), \ 307.1306 + (I[21] = (img)(_n2##x,_p5##y,z,v)), \ 307.1307 + (I[34] = (img)(_n2##x,_p4##y,z,v)), \ 307.1308 + (I[47] = (img)(_n2##x,_p3##y,z,v)), \ 307.1309 + (I[60] = (img)(_n2##x,_p2##y,z,v)), \ 307.1310 + (I[73] = (img)(_n2##x,_p1##y,z,v)), \ 307.1311 + (I[86] = (img)(_n2##x,y,z,v)), \ 307.1312 + (I[99] = (img)(_n2##x,_n1##y,z,v)), \ 307.1313 + (I[112] = (img)(_n2##x,_n2##y,z,v)), \ 307.1314 + (I[125] = (img)(_n2##x,_n3##y,z,v)), \ 307.1315 + (I[138] = (img)(_n2##x,_n4##y,z,v)), \ 307.1316 + (I[151] = (img)(_n2##x,_n5##y,z,v)), \ 307.1317 + (I[164] = (img)(_n2##x,_n6##y,z,v)), \ 307.1318 + (I[9] = (img)(_n3##x,_p6##y,z,v)), \ 307.1319 + (I[22] = (img)(_n3##x,_p5##y,z,v)), \ 307.1320 + (I[35] = (img)(_n3##x,_p4##y,z,v)), \ 307.1321 + (I[48] = (img)(_n3##x,_p3##y,z,v)), \ 307.1322 + (I[61] = (img)(_n3##x,_p2##y,z,v)), \ 307.1323 + (I[74] = (img)(_n3##x,_p1##y,z,v)), \ 307.1324 + (I[87] = (img)(_n3##x,y,z,v)), \ 307.1325 + (I[100] = (img)(_n3##x,_n1##y,z,v)), \ 307.1326 + (I[113] = (img)(_n3##x,_n2##y,z,v)), \ 307.1327 + (I[126] = (img)(_n3##x,_n3##y,z,v)), \ 307.1328 + (I[139] = (img)(_n3##x,_n4##y,z,v)), \ 307.1329 + (I[152] = (img)(_n3##x,_n5##y,z,v)), \ 307.1330 + (I[165] = (img)(_n3##x,_n6##y,z,v)), \ 307.1331 + (I[10] = (img)(_n4##x,_p6##y,z,v)), \ 307.1332 + (I[23] = (img)(_n4##x,_p5##y,z,v)), \ 307.1333 + (I[36] = (img)(_n4##x,_p4##y,z,v)), \ 307.1334 + (I[49] = (img)(_n4##x,_p3##y,z,v)), \ 307.1335 + (I[62] = (img)(_n4##x,_p2##y,z,v)), \ 307.1336 + (I[75] = (img)(_n4##x,_p1##y,z,v)), \ 307.1337 + (I[88] = (img)(_n4##x,y,z,v)), \ 307.1338 + (I[101] = (img)(_n4##x,_n1##y,z,v)), \ 307.1339 + (I[114] = (img)(_n4##x,_n2##y,z,v)), \ 307.1340 + (I[127] = (img)(_n4##x,_n3##y,z,v)), \ 307.1341 + (I[140] = (img)(_n4##x,_n4##y,z,v)), \ 307.1342 + (I[153] = (img)(_n4##x,_n5##y,z,v)), \ 307.1343 + (I[166] = (img)(_n4##x,_n6##y,z,v)), \ 307.1344 + (I[11] = (img)(_n5##x,_p6##y,z,v)), \ 307.1345 + (I[24] = (img)(_n5##x,_p5##y,z,v)), \ 307.1346 + (I[37] = (img)(_n5##x,_p4##y,z,v)), \ 307.1347 + (I[50] = (img)(_n5##x,_p3##y,z,v)), \ 307.1348 + (I[63] = (img)(_n5##x,_p2##y,z,v)), \ 307.1349 + (I[76] = (img)(_n5##x,_p1##y,z,v)), \ 307.1350 + (I[89] = (img)(_n5##x,y,z,v)), \ 307.1351 + (I[102] = (img)(_n5##x,_n1##y,z,v)), \ 307.1352 + (I[115] = (img)(_n5##x,_n2##y,z,v)), \ 307.1353 + (I[128] = (img)(_n5##x,_n3##y,z,v)), \ 307.1354 + (I[141] = (img)(_n5##x,_n4##y,z,v)), \ 307.1355 + (I[154] = (img)(_n5##x,_n5##y,z,v)), \ 307.1356 + (I[167] = (img)(_n5##x,_n6##y,z,v)), \ 307.1357 + x+6>=(int)((img).width)?(int)((img).width)-1:x+6); \ 307.1358 + x<=(int)(x1) && ((_n6##x<(int)((img).width) && ( \ 307.1359 + (I[12] = (img)(_n6##x,_p6##y,z,v)), \ 307.1360 + (I[25] = (img)(_n6##x,_p5##y,z,v)), \ 307.1361 + (I[38] = (img)(_n6##x,_p4##y,z,v)), \ 307.1362 + (I[51] = (img)(_n6##x,_p3##y,z,v)), \ 307.1363 + (I[64] = (img)(_n6##x,_p2##y,z,v)), \ 307.1364 + (I[77] = (img)(_n6##x,_p1##y,z,v)), \ 307.1365 + (I[90] = (img)(_n6##x,y,z,v)), \ 307.1366 + (I[103] = (img)(_n6##x,_n1##y,z,v)), \ 307.1367 + (I[116] = (img)(_n6##x,_n2##y,z,v)), \ 307.1368 + (I[129] = (img)(_n6##x,_n3##y,z,v)), \ 307.1369 + (I[142] = (img)(_n6##x,_n4##y,z,v)), \ 307.1370 + (I[155] = (img)(_n6##x,_n5##y,z,v)), \ 307.1371 + (I[168] = (img)(_n6##x,_n6##y,z,v)),1)) || \ 307.1372 + _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.1373 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], \ 307.1374 + I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], \ 307.1375 + I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], \ 307.1376 + I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], \ 307.1377 + I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], \ 307.1378 + I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], \ 307.1379 + I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], \ 307.1380 + I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], \ 307.1381 + I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], \ 307.1382 + I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], \ 307.1383 + I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], \ 307.1384 + I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], \ 307.1385 + I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], \ 307.1386 + _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x) 307.1387 + 307.1388 +#define cimg_get13x13(img,x,y,z,v,I) \ 307.1389 + I[0] = (img)(_p6##x,_p6##y,z,v), I[1] = (img)(_p5##x,_p6##y,z,v), I[2] = (img)(_p4##x,_p6##y,z,v), I[3] = (img)(_p3##x,_p6##y,z,v), I[4] = (img)(_p2##x,_p6##y,z,v), I[5] = (img)(_p1##x,_p6##y,z,v), I[6] = (img)(x,_p6##y,z,v), I[7] = (img)(_n1##x,_p6##y,z,v), I[8] = (img)(_n2##x,_p6##y,z,v), I[9] = (img)(_n3##x,_p6##y,z,v), I[10] = (img)(_n4##x,_p6##y,z,v), I[11] = (img)(_n5##x,_p6##y,z,v), I[12] = (img)(_n6##x,_p6##y,z,v), \ 307.1390 + I[13] = (img)(_p6##x,_p5##y,z,v), I[14] = (img)(_p5##x,_p5##y,z,v), I[15] = (img)(_p4##x,_p5##y,z,v), I[16] = (img)(_p3##x,_p5##y,z,v), I[17] = (img)(_p2##x,_p5##y,z,v), I[18] = (img)(_p1##x,_p5##y,z,v), I[19] = (img)(x,_p5##y,z,v), I[20] = (img)(_n1##x,_p5##y,z,v), I[21] = (img)(_n2##x,_p5##y,z,v), I[22] = (img)(_n3##x,_p5##y,z,v), I[23] = (img)(_n4##x,_p5##y,z,v), I[24] = (img)(_n5##x,_p5##y,z,v), I[25] = (img)(_n6##x,_p5##y,z,v), \ 307.1391 + I[26] = (img)(_p6##x,_p4##y,z,v), I[27] = (img)(_p5##x,_p4##y,z,v), I[28] = (img)(_p4##x,_p4##y,z,v), I[29] = (img)(_p3##x,_p4##y,z,v), I[30] = (img)(_p2##x,_p4##y,z,v), I[31] = (img)(_p1##x,_p4##y,z,v), I[32] = (img)(x,_p4##y,z,v), I[33] = (img)(_n1##x,_p4##y,z,v), I[34] = (img)(_n2##x,_p4##y,z,v), I[35] = (img)(_n3##x,_p4##y,z,v), I[36] = (img)(_n4##x,_p4##y,z,v), I[37] = (img)(_n5##x,_p4##y,z,v), I[38] = (img)(_n6##x,_p4##y,z,v), \ 307.1392 + I[39] = (img)(_p6##x,_p3##y,z,v), I[40] = (img)(_p5##x,_p3##y,z,v), I[41] = (img)(_p4##x,_p3##y,z,v), I[42] = (img)(_p3##x,_p3##y,z,v), I[43] = (img)(_p2##x,_p3##y,z,v), I[44] = (img)(_p1##x,_p3##y,z,v), I[45] = (img)(x,_p3##y,z,v), I[46] = (img)(_n1##x,_p3##y,z,v), I[47] = (img)(_n2##x,_p3##y,z,v), I[48] = (img)(_n3##x,_p3##y,z,v), I[49] = (img)(_n4##x,_p3##y,z,v), I[50] = (img)(_n5##x,_p3##y,z,v), I[51] = (img)(_n6##x,_p3##y,z,v), \ 307.1393 + I[52] = (img)(_p6##x,_p2##y,z,v), I[53] = (img)(_p5##x,_p2##y,z,v), I[54] = (img)(_p4##x,_p2##y,z,v), I[55] = (img)(_p3##x,_p2##y,z,v), I[56] = (img)(_p2##x,_p2##y,z,v), I[57] = (img)(_p1##x,_p2##y,z,v), I[58] = (img)(x,_p2##y,z,v), I[59] = (img)(_n1##x,_p2##y,z,v), I[60] = (img)(_n2##x,_p2##y,z,v), I[61] = (img)(_n3##x,_p2##y,z,v), I[62] = (img)(_n4##x,_p2##y,z,v), I[63] = (img)(_n5##x,_p2##y,z,v), I[64] = (img)(_n6##x,_p2##y,z,v), \ 307.1394 + I[65] = (img)(_p6##x,_p1##y,z,v), I[66] = (img)(_p5##x,_p1##y,z,v), I[67] = (img)(_p4##x,_p1##y,z,v), I[68] = (img)(_p3##x,_p1##y,z,v), I[69] = (img)(_p2##x,_p1##y,z,v), I[70] = (img)(_p1##x,_p1##y,z,v), I[71] = (img)(x,_p1##y,z,v), I[72] = (img)(_n1##x,_p1##y,z,v), I[73] = (img)(_n2##x,_p1##y,z,v), I[74] = (img)(_n3##x,_p1##y,z,v), I[75] = (img)(_n4##x,_p1##y,z,v), I[76] = (img)(_n5##x,_p1##y,z,v), I[77] = (img)(_n6##x,_p1##y,z,v), \ 307.1395 + I[78] = (img)(_p6##x,y,z,v), I[79] = (img)(_p5##x,y,z,v), I[80] = (img)(_p4##x,y,z,v), I[81] = (img)(_p3##x,y,z,v), I[82] = (img)(_p2##x,y,z,v), I[83] = (img)(_p1##x,y,z,v), I[84] = (img)(x,y,z,v), I[85] = (img)(_n1##x,y,z,v), I[86] = (img)(_n2##x,y,z,v), I[87] = (img)(_n3##x,y,z,v), I[88] = (img)(_n4##x,y,z,v), I[89] = (img)(_n5##x,y,z,v), I[90] = (img)(_n6##x,y,z,v), \ 307.1396 + I[91] = (img)(_p6##x,_n1##y,z,v), I[92] = (img)(_p5##x,_n1##y,z,v), I[93] = (img)(_p4##x,_n1##y,z,v), I[94] = (img)(_p3##x,_n1##y,z,v), I[95] = (img)(_p2##x,_n1##y,z,v), I[96] = (img)(_p1##x,_n1##y,z,v), I[97] = (img)(x,_n1##y,z,v), I[98] = (img)(_n1##x,_n1##y,z,v), I[99] = (img)(_n2##x,_n1##y,z,v), I[100] = (img)(_n3##x,_n1##y,z,v), I[101] = (img)(_n4##x,_n1##y,z,v), I[102] = (img)(_n5##x,_n1##y,z,v), I[103] = (img)(_n6##x,_n1##y,z,v), \ 307.1397 + I[104] = (img)(_p6##x,_n2##y,z,v), I[105] = (img)(_p5##x,_n2##y,z,v), I[106] = (img)(_p4##x,_n2##y,z,v), I[107] = (img)(_p3##x,_n2##y,z,v), I[108] = (img)(_p2##x,_n2##y,z,v), I[109] = (img)(_p1##x,_n2##y,z,v), I[110] = (img)(x,_n2##y,z,v), I[111] = (img)(_n1##x,_n2##y,z,v), I[112] = (img)(_n2##x,_n2##y,z,v), I[113] = (img)(_n3##x,_n2##y,z,v), I[114] = (img)(_n4##x,_n2##y,z,v), I[115] = (img)(_n5##x,_n2##y,z,v), I[116] = (img)(_n6##x,_n2##y,z,v), \ 307.1398 + I[117] = (img)(_p6##x,_n3##y,z,v), I[118] = (img)(_p5##x,_n3##y,z,v), I[119] = (img)(_p4##x,_n3##y,z,v), I[120] = (img)(_p3##x,_n3##y,z,v), I[121] = (img)(_p2##x,_n3##y,z,v), I[122] = (img)(_p1##x,_n3##y,z,v), I[123] = (img)(x,_n3##y,z,v), I[124] = (img)(_n1##x,_n3##y,z,v), I[125] = (img)(_n2##x,_n3##y,z,v), I[126] = (img)(_n3##x,_n3##y,z,v), I[127] = (img)(_n4##x,_n3##y,z,v), I[128] = (img)(_n5##x,_n3##y,z,v), I[129] = (img)(_n6##x,_n3##y,z,v), \ 307.1399 + I[130] = (img)(_p6##x,_n4##y,z,v), I[131] = (img)(_p5##x,_n4##y,z,v), I[132] = (img)(_p4##x,_n4##y,z,v), I[133] = (img)(_p3##x,_n4##y,z,v), I[134] = (img)(_p2##x,_n4##y,z,v), I[135] = (img)(_p1##x,_n4##y,z,v), I[136] = (img)(x,_n4##y,z,v), I[137] = (img)(_n1##x,_n4##y,z,v), I[138] = (img)(_n2##x,_n4##y,z,v), I[139] = (img)(_n3##x,_n4##y,z,v), I[140] = (img)(_n4##x,_n4##y,z,v), I[141] = (img)(_n5##x,_n4##y,z,v), I[142] = (img)(_n6##x,_n4##y,z,v), \ 307.1400 + I[143] = (img)(_p6##x,_n5##y,z,v), I[144] = (img)(_p5##x,_n5##y,z,v), I[145] = (img)(_p4##x,_n5##y,z,v), I[146] = (img)(_p3##x,_n5##y,z,v), I[147] = (img)(_p2##x,_n5##y,z,v), I[148] = (img)(_p1##x,_n5##y,z,v), I[149] = (img)(x,_n5##y,z,v), I[150] = (img)(_n1##x,_n5##y,z,v), I[151] = (img)(_n2##x,_n5##y,z,v), I[152] = (img)(_n3##x,_n5##y,z,v), I[153] = (img)(_n4##x,_n5##y,z,v), I[154] = (img)(_n5##x,_n5##y,z,v), I[155] = (img)(_n6##x,_n5##y,z,v), \ 307.1401 + I[156] = (img)(_p6##x,_n6##y,z,v), I[157] = (img)(_p5##x,_n6##y,z,v), I[158] = (img)(_p4##x,_n6##y,z,v), I[159] = (img)(_p3##x,_n6##y,z,v), I[160] = (img)(_p2##x,_n6##y,z,v), I[161] = (img)(_p1##x,_n6##y,z,v), I[162] = (img)(x,_n6##y,z,v), I[163] = (img)(_n1##x,_n6##y,z,v), I[164] = (img)(_n2##x,_n6##y,z,v), I[165] = (img)(_n3##x,_n6##y,z,v), I[166] = (img)(_n4##x,_n6##y,z,v), I[167] = (img)(_n5##x,_n6##y,z,v), I[168] = (img)(_n6##x,_n6##y,z,v); 307.1402 + 307.1403 +// Define 14x14 loop macros for CImg 307.1404 +//---------------------------------- 307.1405 +#define cimg_for14(bound,i) for (int i = 0, \ 307.1406 + _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.1407 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.1408 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.1409 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.1410 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.1411 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.1412 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.1413 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7; \ 307.1414 + _n7##i<(int)(bound) || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1415 + i==(_n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.1416 + _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1417 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i) 307.1418 + 307.1419 +#define cimg_for14X(img,x) cimg_for14((img).width,x) 307.1420 +#define cimg_for14Y(img,y) cimg_for14((img).height,y) 307.1421 +#define cimg_for14Z(img,z) cimg_for14((img).depth,z) 307.1422 +#define cimg_for14V(img,v) cimg_for14((img).dim,v) 307.1423 +#define cimg_for14XY(img,x,y) cimg_for14Y(img,y) cimg_for14X(img,x) 307.1424 +#define cimg_for14XZ(img,x,z) cimg_for14Z(img,z) cimg_for14X(img,x) 307.1425 +#define cimg_for14XV(img,x,v) cimg_for14V(img,v) cimg_for14X(img,x) 307.1426 +#define cimg_for14YZ(img,y,z) cimg_for14Z(img,z) cimg_for14Y(img,y) 307.1427 +#define cimg_for14YV(img,y,v) cimg_for14V(img,v) cimg_for14Y(img,y) 307.1428 +#define cimg_for14ZV(img,z,v) cimg_for14V(img,v) cimg_for14Z(img,z) 307.1429 +#define cimg_for14XYZ(img,x,y,z) cimg_for14Z(img,z) cimg_for14XY(img,x,y) 307.1430 +#define cimg_for14XZV(img,x,z,v) cimg_for14V(img,v) cimg_for14XZ(img,x,z) 307.1431 +#define cimg_for14YZV(img,y,z,v) cimg_for14V(img,v) cimg_for14YZ(img,y,z) 307.1432 +#define cimg_for14XYZV(img,x,y,z,v) cimg_for14V(img,v) cimg_for14XYZ(img,x,y,z) 307.1433 + 307.1434 +#define cimg_for_in14(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.1435 + _p6##i = i-6<0?0:i-6, \ 307.1436 + _p5##i = i-5<0?0:i-5, \ 307.1437 + _p4##i = i-4<0?0:i-4, \ 307.1438 + _p3##i = i-3<0?0:i-3, \ 307.1439 + _p2##i = i-2<0?0:i-2, \ 307.1440 + _p1##i = i-1<0?0:i-1, \ 307.1441 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.1442 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.1443 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.1444 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.1445 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.1446 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.1447 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7; \ 307.1448 + i<=(int)(i1) && (_n7##i<(int)(bound) || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1449 + i==(_n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.1450 + _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1451 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i) 307.1452 + 307.1453 +#define cimg_for_in14X(img,x0,x1,x) cimg_for_in14((img).width,x0,x1,x) 307.1454 +#define cimg_for_in14Y(img,y0,y1,y) cimg_for_in14((img).height,y0,y1,y) 307.1455 +#define cimg_for_in14Z(img,z0,z1,z) cimg_for_in14((img).depth,z0,z1,z) 307.1456 +#define cimg_for_in14V(img,v0,v1,v) cimg_for_in14((img).dim,v0,v1,v) 307.1457 +#define cimg_for_in14XY(img,x0,y0,x1,y1,x,y) cimg_for_in14Y(img,y0,y1,y) cimg_for_in14X(img,x0,x1,x) 307.1458 +#define cimg_for_in14XZ(img,x0,z0,x1,z1,x,z) cimg_for_in14Z(img,z0,z1,z) cimg_for_in14X(img,x0,x1,x) 307.1459 +#define cimg_for_in14XV(img,x0,v0,x1,v1,x,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14X(img,x0,x1,x) 307.1460 +#define cimg_for_in14YZ(img,y0,z0,y1,z1,y,z) cimg_for_in14Z(img,z0,z1,z) cimg_for_in14Y(img,y0,y1,y) 307.1461 +#define cimg_for_in14YV(img,y0,v0,y1,v1,y,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14Y(img,y0,y1,y) 307.1462 +#define cimg_for_in14ZV(img,z0,v0,z1,v1,z,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14Z(img,z0,z1,z) 307.1463 +#define cimg_for_in14XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in14Z(img,z0,z1,z) cimg_for_in14XY(img,x0,y0,x1,y1,x,y) 307.1464 +#define cimg_for_in14XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14XZ(img,x0,y0,x1,y1,x,z) 307.1465 +#define cimg_for_in14YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14YZ(img,y0,z0,y1,z1,y,z) 307.1466 +#define cimg_for_in14XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in14V(img,v0,v1,v) cimg_for_in14XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.1467 + 307.1468 +#define cimg_for14x14(img,x,y,z,v,I) \ 307.1469 + cimg_for14((img).height,y) for (int x = 0, \ 307.1470 + _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.1471 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.1472 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.1473 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.1474 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.1475 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.1476 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.1477 + _n7##x = (int)( \ 307.1478 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = (img)(0,_p6##y,z,v)), \ 307.1479 + (I[14] = I[15] = I[16] = I[17] = I[18] = I[19] = I[20] = (img)(0,_p5##y,z,v)), \ 307.1480 + (I[28] = I[29] = I[30] = I[31] = I[32] = I[33] = I[34] = (img)(0,_p4##y,z,v)), \ 307.1481 + (I[42] = I[43] = I[44] = I[45] = I[46] = I[47] = I[48] = (img)(0,_p3##y,z,v)), \ 307.1482 + (I[56] = I[57] = I[58] = I[59] = I[60] = I[61] = I[62] = (img)(0,_p2##y,z,v)), \ 307.1483 + (I[70] = I[71] = I[72] = I[73] = I[74] = I[75] = I[76] = (img)(0,_p1##y,z,v)), \ 307.1484 + (I[84] = I[85] = I[86] = I[87] = I[88] = I[89] = I[90] = (img)(0,y,z,v)), \ 307.1485 + (I[98] = I[99] = I[100] = I[101] = I[102] = I[103] = I[104] = (img)(0,_n1##y,z,v)), \ 307.1486 + (I[112] = I[113] = I[114] = I[115] = I[116] = I[117] = I[118] = (img)(0,_n2##y,z,v)), \ 307.1487 + (I[126] = I[127] = I[128] = I[129] = I[130] = I[131] = I[132] = (img)(0,_n3##y,z,v)), \ 307.1488 + (I[140] = I[141] = I[142] = I[143] = I[144] = I[145] = I[146] = (img)(0,_n4##y,z,v)), \ 307.1489 + (I[154] = I[155] = I[156] = I[157] = I[158] = I[159] = I[160] = (img)(0,_n5##y,z,v)), \ 307.1490 + (I[168] = I[169] = I[170] = I[171] = I[172] = I[173] = I[174] = (img)(0,_n6##y,z,v)), \ 307.1491 + (I[182] = I[183] = I[184] = I[185] = I[186] = I[187] = I[188] = (img)(0,_n7##y,z,v)), \ 307.1492 + (I[7] = (img)(_n1##x,_p6##y,z,v)), \ 307.1493 + (I[21] = (img)(_n1##x,_p5##y,z,v)), \ 307.1494 + (I[35] = (img)(_n1##x,_p4##y,z,v)), \ 307.1495 + (I[49] = (img)(_n1##x,_p3##y,z,v)), \ 307.1496 + (I[63] = (img)(_n1##x,_p2##y,z,v)), \ 307.1497 + (I[77] = (img)(_n1##x,_p1##y,z,v)), \ 307.1498 + (I[91] = (img)(_n1##x,y,z,v)), \ 307.1499 + (I[105] = (img)(_n1##x,_n1##y,z,v)), \ 307.1500 + (I[119] = (img)(_n1##x,_n2##y,z,v)), \ 307.1501 + (I[133] = (img)(_n1##x,_n3##y,z,v)), \ 307.1502 + (I[147] = (img)(_n1##x,_n4##y,z,v)), \ 307.1503 + (I[161] = (img)(_n1##x,_n5##y,z,v)), \ 307.1504 + (I[175] = (img)(_n1##x,_n6##y,z,v)), \ 307.1505 + (I[189] = (img)(_n1##x,_n7##y,z,v)), \ 307.1506 + (I[8] = (img)(_n2##x,_p6##y,z,v)), \ 307.1507 + (I[22] = (img)(_n2##x,_p5##y,z,v)), \ 307.1508 + (I[36] = (img)(_n2##x,_p4##y,z,v)), \ 307.1509 + (I[50] = (img)(_n2##x,_p3##y,z,v)), \ 307.1510 + (I[64] = (img)(_n2##x,_p2##y,z,v)), \ 307.1511 + (I[78] = (img)(_n2##x,_p1##y,z,v)), \ 307.1512 + (I[92] = (img)(_n2##x,y,z,v)), \ 307.1513 + (I[106] = (img)(_n2##x,_n1##y,z,v)), \ 307.1514 + (I[120] = (img)(_n2##x,_n2##y,z,v)), \ 307.1515 + (I[134] = (img)(_n2##x,_n3##y,z,v)), \ 307.1516 + (I[148] = (img)(_n2##x,_n4##y,z,v)), \ 307.1517 + (I[162] = (img)(_n2##x,_n5##y,z,v)), \ 307.1518 + (I[176] = (img)(_n2##x,_n6##y,z,v)), \ 307.1519 + (I[190] = (img)(_n2##x,_n7##y,z,v)), \ 307.1520 + (I[9] = (img)(_n3##x,_p6##y,z,v)), \ 307.1521 + (I[23] = (img)(_n3##x,_p5##y,z,v)), \ 307.1522 + (I[37] = (img)(_n3##x,_p4##y,z,v)), \ 307.1523 + (I[51] = (img)(_n3##x,_p3##y,z,v)), \ 307.1524 + (I[65] = (img)(_n3##x,_p2##y,z,v)), \ 307.1525 + (I[79] = (img)(_n3##x,_p1##y,z,v)), \ 307.1526 + (I[93] = (img)(_n3##x,y,z,v)), \ 307.1527 + (I[107] = (img)(_n3##x,_n1##y,z,v)), \ 307.1528 + (I[121] = (img)(_n3##x,_n2##y,z,v)), \ 307.1529 + (I[135] = (img)(_n3##x,_n3##y,z,v)), \ 307.1530 + (I[149] = (img)(_n3##x,_n4##y,z,v)), \ 307.1531 + (I[163] = (img)(_n3##x,_n5##y,z,v)), \ 307.1532 + (I[177] = (img)(_n3##x,_n6##y,z,v)), \ 307.1533 + (I[191] = (img)(_n3##x,_n7##y,z,v)), \ 307.1534 + (I[10] = (img)(_n4##x,_p6##y,z,v)), \ 307.1535 + (I[24] = (img)(_n4##x,_p5##y,z,v)), \ 307.1536 + (I[38] = (img)(_n4##x,_p4##y,z,v)), \ 307.1537 + (I[52] = (img)(_n4##x,_p3##y,z,v)), \ 307.1538 + (I[66] = (img)(_n4##x,_p2##y,z,v)), \ 307.1539 + (I[80] = (img)(_n4##x,_p1##y,z,v)), \ 307.1540 + (I[94] = (img)(_n4##x,y,z,v)), \ 307.1541 + (I[108] = (img)(_n4##x,_n1##y,z,v)), \ 307.1542 + (I[122] = (img)(_n4##x,_n2##y,z,v)), \ 307.1543 + (I[136] = (img)(_n4##x,_n3##y,z,v)), \ 307.1544 + (I[150] = (img)(_n4##x,_n4##y,z,v)), \ 307.1545 + (I[164] = (img)(_n4##x,_n5##y,z,v)), \ 307.1546 + (I[178] = (img)(_n4##x,_n6##y,z,v)), \ 307.1547 + (I[192] = (img)(_n4##x,_n7##y,z,v)), \ 307.1548 + (I[11] = (img)(_n5##x,_p6##y,z,v)), \ 307.1549 + (I[25] = (img)(_n5##x,_p5##y,z,v)), \ 307.1550 + (I[39] = (img)(_n5##x,_p4##y,z,v)), \ 307.1551 + (I[53] = (img)(_n5##x,_p3##y,z,v)), \ 307.1552 + (I[67] = (img)(_n5##x,_p2##y,z,v)), \ 307.1553 + (I[81] = (img)(_n5##x,_p1##y,z,v)), \ 307.1554 + (I[95] = (img)(_n5##x,y,z,v)), \ 307.1555 + (I[109] = (img)(_n5##x,_n1##y,z,v)), \ 307.1556 + (I[123] = (img)(_n5##x,_n2##y,z,v)), \ 307.1557 + (I[137] = (img)(_n5##x,_n3##y,z,v)), \ 307.1558 + (I[151] = (img)(_n5##x,_n4##y,z,v)), \ 307.1559 + (I[165] = (img)(_n5##x,_n5##y,z,v)), \ 307.1560 + (I[179] = (img)(_n5##x,_n6##y,z,v)), \ 307.1561 + (I[193] = (img)(_n5##x,_n7##y,z,v)), \ 307.1562 + (I[12] = (img)(_n6##x,_p6##y,z,v)), \ 307.1563 + (I[26] = (img)(_n6##x,_p5##y,z,v)), \ 307.1564 + (I[40] = (img)(_n6##x,_p4##y,z,v)), \ 307.1565 + (I[54] = (img)(_n6##x,_p3##y,z,v)), \ 307.1566 + (I[68] = (img)(_n6##x,_p2##y,z,v)), \ 307.1567 + (I[82] = (img)(_n6##x,_p1##y,z,v)), \ 307.1568 + (I[96] = (img)(_n6##x,y,z,v)), \ 307.1569 + (I[110] = (img)(_n6##x,_n1##y,z,v)), \ 307.1570 + (I[124] = (img)(_n6##x,_n2##y,z,v)), \ 307.1571 + (I[138] = (img)(_n6##x,_n3##y,z,v)), \ 307.1572 + (I[152] = (img)(_n6##x,_n4##y,z,v)), \ 307.1573 + (I[166] = (img)(_n6##x,_n5##y,z,v)), \ 307.1574 + (I[180] = (img)(_n6##x,_n6##y,z,v)), \ 307.1575 + (I[194] = (img)(_n6##x,_n7##y,z,v)), \ 307.1576 + 7>=((img).width)?(int)((img).width)-1:7); \ 307.1577 + (_n7##x<(int)((img).width) && ( \ 307.1578 + (I[13] = (img)(_n7##x,_p6##y,z,v)), \ 307.1579 + (I[27] = (img)(_n7##x,_p5##y,z,v)), \ 307.1580 + (I[41] = (img)(_n7##x,_p4##y,z,v)), \ 307.1581 + (I[55] = (img)(_n7##x,_p3##y,z,v)), \ 307.1582 + (I[69] = (img)(_n7##x,_p2##y,z,v)), \ 307.1583 + (I[83] = (img)(_n7##x,_p1##y,z,v)), \ 307.1584 + (I[97] = (img)(_n7##x,y,z,v)), \ 307.1585 + (I[111] = (img)(_n7##x,_n1##y,z,v)), \ 307.1586 + (I[125] = (img)(_n7##x,_n2##y,z,v)), \ 307.1587 + (I[139] = (img)(_n7##x,_n3##y,z,v)), \ 307.1588 + (I[153] = (img)(_n7##x,_n4##y,z,v)), \ 307.1589 + (I[167] = (img)(_n7##x,_n5##y,z,v)), \ 307.1590 + (I[181] = (img)(_n7##x,_n6##y,z,v)), \ 307.1591 + (I[195] = (img)(_n7##x,_n7##y,z,v)),1)) || \ 307.1592 + _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.1593 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 307.1594 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.1595 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.1596 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.1597 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.1598 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.1599 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], \ 307.1600 + I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.1601 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.1602 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.1603 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.1604 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.1605 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], \ 307.1606 + I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], \ 307.1607 + _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x) 307.1608 + 307.1609 +#define cimg_for_in14x14(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.1610 + cimg_for_in14((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.1611 + _p6##x = x-6<0?0:x-6, \ 307.1612 + _p5##x = x-5<0?0:x-5, \ 307.1613 + _p4##x = x-4<0?0:x-4, \ 307.1614 + _p3##x = x-3<0?0:x-3, \ 307.1615 + _p2##x = x-2<0?0:x-2, \ 307.1616 + _p1##x = x-1<0?0:x-1, \ 307.1617 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.1618 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.1619 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.1620 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.1621 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.1622 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.1623 + _n7##x = (int)( \ 307.1624 + (I[0] = (img)(_p6##x,_p6##y,z,v)), \ 307.1625 + (I[14] = (img)(_p6##x,_p5##y,z,v)), \ 307.1626 + (I[28] = (img)(_p6##x,_p4##y,z,v)), \ 307.1627 + (I[42] = (img)(_p6##x,_p3##y,z,v)), \ 307.1628 + (I[56] = (img)(_p6##x,_p2##y,z,v)), \ 307.1629 + (I[70] = (img)(_p6##x,_p1##y,z,v)), \ 307.1630 + (I[84] = (img)(_p6##x,y,z,v)), \ 307.1631 + (I[98] = (img)(_p6##x,_n1##y,z,v)), \ 307.1632 + (I[112] = (img)(_p6##x,_n2##y,z,v)), \ 307.1633 + (I[126] = (img)(_p6##x,_n3##y,z,v)), \ 307.1634 + (I[140] = (img)(_p6##x,_n4##y,z,v)), \ 307.1635 + (I[154] = (img)(_p6##x,_n5##y,z,v)), \ 307.1636 + (I[168] = (img)(_p6##x,_n6##y,z,v)), \ 307.1637 + (I[182] = (img)(_p6##x,_n7##y,z,v)), \ 307.1638 + (I[1] = (img)(_p5##x,_p6##y,z,v)), \ 307.1639 + (I[15] = (img)(_p5##x,_p5##y,z,v)), \ 307.1640 + (I[29] = (img)(_p5##x,_p4##y,z,v)), \ 307.1641 + (I[43] = (img)(_p5##x,_p3##y,z,v)), \ 307.1642 + (I[57] = (img)(_p5##x,_p2##y,z,v)), \ 307.1643 + (I[71] = (img)(_p5##x,_p1##y,z,v)), \ 307.1644 + (I[85] = (img)(_p5##x,y,z,v)), \ 307.1645 + (I[99] = (img)(_p5##x,_n1##y,z,v)), \ 307.1646 + (I[113] = (img)(_p5##x,_n2##y,z,v)), \ 307.1647 + (I[127] = (img)(_p5##x,_n3##y,z,v)), \ 307.1648 + (I[141] = (img)(_p5##x,_n4##y,z,v)), \ 307.1649 + (I[155] = (img)(_p5##x,_n5##y,z,v)), \ 307.1650 + (I[169] = (img)(_p5##x,_n6##y,z,v)), \ 307.1651 + (I[183] = (img)(_p5##x,_n7##y,z,v)), \ 307.1652 + (I[2] = (img)(_p4##x,_p6##y,z,v)), \ 307.1653 + (I[16] = (img)(_p4##x,_p5##y,z,v)), \ 307.1654 + (I[30] = (img)(_p4##x,_p4##y,z,v)), \ 307.1655 + (I[44] = (img)(_p4##x,_p3##y,z,v)), \ 307.1656 + (I[58] = (img)(_p4##x,_p2##y,z,v)), \ 307.1657 + (I[72] = (img)(_p4##x,_p1##y,z,v)), \ 307.1658 + (I[86] = (img)(_p4##x,y,z,v)), \ 307.1659 + (I[100] = (img)(_p4##x,_n1##y,z,v)), \ 307.1660 + (I[114] = (img)(_p4##x,_n2##y,z,v)), \ 307.1661 + (I[128] = (img)(_p4##x,_n3##y,z,v)), \ 307.1662 + (I[142] = (img)(_p4##x,_n4##y,z,v)), \ 307.1663 + (I[156] = (img)(_p4##x,_n5##y,z,v)), \ 307.1664 + (I[170] = (img)(_p4##x,_n6##y,z,v)), \ 307.1665 + (I[184] = (img)(_p4##x,_n7##y,z,v)), \ 307.1666 + (I[3] = (img)(_p3##x,_p6##y,z,v)), \ 307.1667 + (I[17] = (img)(_p3##x,_p5##y,z,v)), \ 307.1668 + (I[31] = (img)(_p3##x,_p4##y,z,v)), \ 307.1669 + (I[45] = (img)(_p3##x,_p3##y,z,v)), \ 307.1670 + (I[59] = (img)(_p3##x,_p2##y,z,v)), \ 307.1671 + (I[73] = (img)(_p3##x,_p1##y,z,v)), \ 307.1672 + (I[87] = (img)(_p3##x,y,z,v)), \ 307.1673 + (I[101] = (img)(_p3##x,_n1##y,z,v)), \ 307.1674 + (I[115] = (img)(_p3##x,_n2##y,z,v)), \ 307.1675 + (I[129] = (img)(_p3##x,_n3##y,z,v)), \ 307.1676 + (I[143] = (img)(_p3##x,_n4##y,z,v)), \ 307.1677 + (I[157] = (img)(_p3##x,_n5##y,z,v)), \ 307.1678 + (I[171] = (img)(_p3##x,_n6##y,z,v)), \ 307.1679 + (I[185] = (img)(_p3##x,_n7##y,z,v)), \ 307.1680 + (I[4] = (img)(_p2##x,_p6##y,z,v)), \ 307.1681 + (I[18] = (img)(_p2##x,_p5##y,z,v)), \ 307.1682 + (I[32] = (img)(_p2##x,_p4##y,z,v)), \ 307.1683 + (I[46] = (img)(_p2##x,_p3##y,z,v)), \ 307.1684 + (I[60] = (img)(_p2##x,_p2##y,z,v)), \ 307.1685 + (I[74] = (img)(_p2##x,_p1##y,z,v)), \ 307.1686 + (I[88] = (img)(_p2##x,y,z,v)), \ 307.1687 + (I[102] = (img)(_p2##x,_n1##y,z,v)), \ 307.1688 + (I[116] = (img)(_p2##x,_n2##y,z,v)), \ 307.1689 + (I[130] = (img)(_p2##x,_n3##y,z,v)), \ 307.1690 + (I[144] = (img)(_p2##x,_n4##y,z,v)), \ 307.1691 + (I[158] = (img)(_p2##x,_n5##y,z,v)), \ 307.1692 + (I[172] = (img)(_p2##x,_n6##y,z,v)), \ 307.1693 + (I[186] = (img)(_p2##x,_n7##y,z,v)), \ 307.1694 + (I[5] = (img)(_p1##x,_p6##y,z,v)), \ 307.1695 + (I[19] = (img)(_p1##x,_p5##y,z,v)), \ 307.1696 + (I[33] = (img)(_p1##x,_p4##y,z,v)), \ 307.1697 + (I[47] = (img)(_p1##x,_p3##y,z,v)), \ 307.1698 + (I[61] = (img)(_p1##x,_p2##y,z,v)), \ 307.1699 + (I[75] = (img)(_p1##x,_p1##y,z,v)), \ 307.1700 + (I[89] = (img)(_p1##x,y,z,v)), \ 307.1701 + (I[103] = (img)(_p1##x,_n1##y,z,v)), \ 307.1702 + (I[117] = (img)(_p1##x,_n2##y,z,v)), \ 307.1703 + (I[131] = (img)(_p1##x,_n3##y,z,v)), \ 307.1704 + (I[145] = (img)(_p1##x,_n4##y,z,v)), \ 307.1705 + (I[159] = (img)(_p1##x,_n5##y,z,v)), \ 307.1706 + (I[173] = (img)(_p1##x,_n6##y,z,v)), \ 307.1707 + (I[187] = (img)(_p1##x,_n7##y,z,v)), \ 307.1708 + (I[6] = (img)(x,_p6##y,z,v)), \ 307.1709 + (I[20] = (img)(x,_p5##y,z,v)), \ 307.1710 + (I[34] = (img)(x,_p4##y,z,v)), \ 307.1711 + (I[48] = (img)(x,_p3##y,z,v)), \ 307.1712 + (I[62] = (img)(x,_p2##y,z,v)), \ 307.1713 + (I[76] = (img)(x,_p1##y,z,v)), \ 307.1714 + (I[90] = (img)(x,y,z,v)), \ 307.1715 + (I[104] = (img)(x,_n1##y,z,v)), \ 307.1716 + (I[118] = (img)(x,_n2##y,z,v)), \ 307.1717 + (I[132] = (img)(x,_n3##y,z,v)), \ 307.1718 + (I[146] = (img)(x,_n4##y,z,v)), \ 307.1719 + (I[160] = (img)(x,_n5##y,z,v)), \ 307.1720 + (I[174] = (img)(x,_n6##y,z,v)), \ 307.1721 + (I[188] = (img)(x,_n7##y,z,v)), \ 307.1722 + (I[7] = (img)(_n1##x,_p6##y,z,v)), \ 307.1723 + (I[21] = (img)(_n1##x,_p5##y,z,v)), \ 307.1724 + (I[35] = (img)(_n1##x,_p4##y,z,v)), \ 307.1725 + (I[49] = (img)(_n1##x,_p3##y,z,v)), \ 307.1726 + (I[63] = (img)(_n1##x,_p2##y,z,v)), \ 307.1727 + (I[77] = (img)(_n1##x,_p1##y,z,v)), \ 307.1728 + (I[91] = (img)(_n1##x,y,z,v)), \ 307.1729 + (I[105] = (img)(_n1##x,_n1##y,z,v)), \ 307.1730 + (I[119] = (img)(_n1##x,_n2##y,z,v)), \ 307.1731 + (I[133] = (img)(_n1##x,_n3##y,z,v)), \ 307.1732 + (I[147] = (img)(_n1##x,_n4##y,z,v)), \ 307.1733 + (I[161] = (img)(_n1##x,_n5##y,z,v)), \ 307.1734 + (I[175] = (img)(_n1##x,_n6##y,z,v)), \ 307.1735 + (I[189] = (img)(_n1##x,_n7##y,z,v)), \ 307.1736 + (I[8] = (img)(_n2##x,_p6##y,z,v)), \ 307.1737 + (I[22] = (img)(_n2##x,_p5##y,z,v)), \ 307.1738 + (I[36] = (img)(_n2##x,_p4##y,z,v)), \ 307.1739 + (I[50] = (img)(_n2##x,_p3##y,z,v)), \ 307.1740 + (I[64] = (img)(_n2##x,_p2##y,z,v)), \ 307.1741 + (I[78] = (img)(_n2##x,_p1##y,z,v)), \ 307.1742 + (I[92] = (img)(_n2##x,y,z,v)), \ 307.1743 + (I[106] = (img)(_n2##x,_n1##y,z,v)), \ 307.1744 + (I[120] = (img)(_n2##x,_n2##y,z,v)), \ 307.1745 + (I[134] = (img)(_n2##x,_n3##y,z,v)), \ 307.1746 + (I[148] = (img)(_n2##x,_n4##y,z,v)), \ 307.1747 + (I[162] = (img)(_n2##x,_n5##y,z,v)), \ 307.1748 + (I[176] = (img)(_n2##x,_n6##y,z,v)), \ 307.1749 + (I[190] = (img)(_n2##x,_n7##y,z,v)), \ 307.1750 + (I[9] = (img)(_n3##x,_p6##y,z,v)), \ 307.1751 + (I[23] = (img)(_n3##x,_p5##y,z,v)), \ 307.1752 + (I[37] = (img)(_n3##x,_p4##y,z,v)), \ 307.1753 + (I[51] = (img)(_n3##x,_p3##y,z,v)), \ 307.1754 + (I[65] = (img)(_n3##x,_p2##y,z,v)), \ 307.1755 + (I[79] = (img)(_n3##x,_p1##y,z,v)), \ 307.1756 + (I[93] = (img)(_n3##x,y,z,v)), \ 307.1757 + (I[107] = (img)(_n3##x,_n1##y,z,v)), \ 307.1758 + (I[121] = (img)(_n3##x,_n2##y,z,v)), \ 307.1759 + (I[135] = (img)(_n3##x,_n3##y,z,v)), \ 307.1760 + (I[149] = (img)(_n3##x,_n4##y,z,v)), \ 307.1761 + (I[163] = (img)(_n3##x,_n5##y,z,v)), \ 307.1762 + (I[177] = (img)(_n3##x,_n6##y,z,v)), \ 307.1763 + (I[191] = (img)(_n3##x,_n7##y,z,v)), \ 307.1764 + (I[10] = (img)(_n4##x,_p6##y,z,v)), \ 307.1765 + (I[24] = (img)(_n4##x,_p5##y,z,v)), \ 307.1766 + (I[38] = (img)(_n4##x,_p4##y,z,v)), \ 307.1767 + (I[52] = (img)(_n4##x,_p3##y,z,v)), \ 307.1768 + (I[66] = (img)(_n4##x,_p2##y,z,v)), \ 307.1769 + (I[80] = (img)(_n4##x,_p1##y,z,v)), \ 307.1770 + (I[94] = (img)(_n4##x,y,z,v)), \ 307.1771 + (I[108] = (img)(_n4##x,_n1##y,z,v)), \ 307.1772 + (I[122] = (img)(_n4##x,_n2##y,z,v)), \ 307.1773 + (I[136] = (img)(_n4##x,_n3##y,z,v)), \ 307.1774 + (I[150] = (img)(_n4##x,_n4##y,z,v)), \ 307.1775 + (I[164] = (img)(_n4##x,_n5##y,z,v)), \ 307.1776 + (I[178] = (img)(_n4##x,_n6##y,z,v)), \ 307.1777 + (I[192] = (img)(_n4##x,_n7##y,z,v)), \ 307.1778 + (I[11] = (img)(_n5##x,_p6##y,z,v)), \ 307.1779 + (I[25] = (img)(_n5##x,_p5##y,z,v)), \ 307.1780 + (I[39] = (img)(_n5##x,_p4##y,z,v)), \ 307.1781 + (I[53] = (img)(_n5##x,_p3##y,z,v)), \ 307.1782 + (I[67] = (img)(_n5##x,_p2##y,z,v)), \ 307.1783 + (I[81] = (img)(_n5##x,_p1##y,z,v)), \ 307.1784 + (I[95] = (img)(_n5##x,y,z,v)), \ 307.1785 + (I[109] = (img)(_n5##x,_n1##y,z,v)), \ 307.1786 + (I[123] = (img)(_n5##x,_n2##y,z,v)), \ 307.1787 + (I[137] = (img)(_n5##x,_n3##y,z,v)), \ 307.1788 + (I[151] = (img)(_n5##x,_n4##y,z,v)), \ 307.1789 + (I[165] = (img)(_n5##x,_n5##y,z,v)), \ 307.1790 + (I[179] = (img)(_n5##x,_n6##y,z,v)), \ 307.1791 + (I[193] = (img)(_n5##x,_n7##y,z,v)), \ 307.1792 + (I[12] = (img)(_n6##x,_p6##y,z,v)), \ 307.1793 + (I[26] = (img)(_n6##x,_p5##y,z,v)), \ 307.1794 + (I[40] = (img)(_n6##x,_p4##y,z,v)), \ 307.1795 + (I[54] = (img)(_n6##x,_p3##y,z,v)), \ 307.1796 + (I[68] = (img)(_n6##x,_p2##y,z,v)), \ 307.1797 + (I[82] = (img)(_n6##x,_p1##y,z,v)), \ 307.1798 + (I[96] = (img)(_n6##x,y,z,v)), \ 307.1799 + (I[110] = (img)(_n6##x,_n1##y,z,v)), \ 307.1800 + (I[124] = (img)(_n6##x,_n2##y,z,v)), \ 307.1801 + (I[138] = (img)(_n6##x,_n3##y,z,v)), \ 307.1802 + (I[152] = (img)(_n6##x,_n4##y,z,v)), \ 307.1803 + (I[166] = (img)(_n6##x,_n5##y,z,v)), \ 307.1804 + (I[180] = (img)(_n6##x,_n6##y,z,v)), \ 307.1805 + (I[194] = (img)(_n6##x,_n7##y,z,v)), \ 307.1806 + x+7>=(int)((img).width)?(int)((img).width)-1:x+7); \ 307.1807 + x<=(int)(x1) && ((_n7##x<(int)((img).width) && ( \ 307.1808 + (I[13] = (img)(_n7##x,_p6##y,z,v)), \ 307.1809 + (I[27] = (img)(_n7##x,_p5##y,z,v)), \ 307.1810 + (I[41] = (img)(_n7##x,_p4##y,z,v)), \ 307.1811 + (I[55] = (img)(_n7##x,_p3##y,z,v)), \ 307.1812 + (I[69] = (img)(_n7##x,_p2##y,z,v)), \ 307.1813 + (I[83] = (img)(_n7##x,_p1##y,z,v)), \ 307.1814 + (I[97] = (img)(_n7##x,y,z,v)), \ 307.1815 + (I[111] = (img)(_n7##x,_n1##y,z,v)), \ 307.1816 + (I[125] = (img)(_n7##x,_n2##y,z,v)), \ 307.1817 + (I[139] = (img)(_n7##x,_n3##y,z,v)), \ 307.1818 + (I[153] = (img)(_n7##x,_n4##y,z,v)), \ 307.1819 + (I[167] = (img)(_n7##x,_n5##y,z,v)), \ 307.1820 + (I[181] = (img)(_n7##x,_n6##y,z,v)), \ 307.1821 + (I[195] = (img)(_n7##x,_n7##y,z,v)),1)) || \ 307.1822 + _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.1823 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 307.1824 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.1825 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.1826 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.1827 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.1828 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.1829 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], \ 307.1830 + I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.1831 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.1832 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.1833 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.1834 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.1835 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], \ 307.1836 + I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], \ 307.1837 + _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x) 307.1838 + 307.1839 +#define cimg_get14x14(img,x,y,z,v,I) \ 307.1840 + I[0] = (img)(_p6##x,_p6##y,z,v), I[1] = (img)(_p5##x,_p6##y,z,v), I[2] = (img)(_p4##x,_p6##y,z,v), I[3] = (img)(_p3##x,_p6##y,z,v), I[4] = (img)(_p2##x,_p6##y,z,v), I[5] = (img)(_p1##x,_p6##y,z,v), I[6] = (img)(x,_p6##y,z,v), I[7] = (img)(_n1##x,_p6##y,z,v), I[8] = (img)(_n2##x,_p6##y,z,v), I[9] = (img)(_n3##x,_p6##y,z,v), I[10] = (img)(_n4##x,_p6##y,z,v), I[11] = (img)(_n5##x,_p6##y,z,v), I[12] = (img)(_n6##x,_p6##y,z,v), I[13] = (img)(_n7##x,_p6##y,z,v), \ 307.1841 + I[14] = (img)(_p6##x,_p5##y,z,v), I[15] = (img)(_p5##x,_p5##y,z,v), I[16] = (img)(_p4##x,_p5##y,z,v), I[17] = (img)(_p3##x,_p5##y,z,v), I[18] = (img)(_p2##x,_p5##y,z,v), I[19] = (img)(_p1##x,_p5##y,z,v), I[20] = (img)(x,_p5##y,z,v), I[21] = (img)(_n1##x,_p5##y,z,v), I[22] = (img)(_n2##x,_p5##y,z,v), I[23] = (img)(_n3##x,_p5##y,z,v), I[24] = (img)(_n4##x,_p5##y,z,v), I[25] = (img)(_n5##x,_p5##y,z,v), I[26] = (img)(_n6##x,_p5##y,z,v), I[27] = (img)(_n7##x,_p5##y,z,v), \ 307.1842 + I[28] = (img)(_p6##x,_p4##y,z,v), I[29] = (img)(_p5##x,_p4##y,z,v), I[30] = (img)(_p4##x,_p4##y,z,v), I[31] = (img)(_p3##x,_p4##y,z,v), I[32] = (img)(_p2##x,_p4##y,z,v), I[33] = (img)(_p1##x,_p4##y,z,v), I[34] = (img)(x,_p4##y,z,v), I[35] = (img)(_n1##x,_p4##y,z,v), I[36] = (img)(_n2##x,_p4##y,z,v), I[37] = (img)(_n3##x,_p4##y,z,v), I[38] = (img)(_n4##x,_p4##y,z,v), I[39] = (img)(_n5##x,_p4##y,z,v), I[40] = (img)(_n6##x,_p4##y,z,v), I[41] = (img)(_n7##x,_p4##y,z,v), \ 307.1843 + I[42] = (img)(_p6##x,_p3##y,z,v), I[43] = (img)(_p5##x,_p3##y,z,v), I[44] = (img)(_p4##x,_p3##y,z,v), I[45] = (img)(_p3##x,_p3##y,z,v), I[46] = (img)(_p2##x,_p3##y,z,v), I[47] = (img)(_p1##x,_p3##y,z,v), I[48] = (img)(x,_p3##y,z,v), I[49] = (img)(_n1##x,_p3##y,z,v), I[50] = (img)(_n2##x,_p3##y,z,v), I[51] = (img)(_n3##x,_p3##y,z,v), I[52] = (img)(_n4##x,_p3##y,z,v), I[53] = (img)(_n5##x,_p3##y,z,v), I[54] = (img)(_n6##x,_p3##y,z,v), I[55] = (img)(_n7##x,_p3##y,z,v), \ 307.1844 + I[56] = (img)(_p6##x,_p2##y,z,v), I[57] = (img)(_p5##x,_p2##y,z,v), I[58] = (img)(_p4##x,_p2##y,z,v), I[59] = (img)(_p3##x,_p2##y,z,v), I[60] = (img)(_p2##x,_p2##y,z,v), I[61] = (img)(_p1##x,_p2##y,z,v), I[62] = (img)(x,_p2##y,z,v), I[63] = (img)(_n1##x,_p2##y,z,v), I[64] = (img)(_n2##x,_p2##y,z,v), I[65] = (img)(_n3##x,_p2##y,z,v), I[66] = (img)(_n4##x,_p2##y,z,v), I[67] = (img)(_n5##x,_p2##y,z,v), I[68] = (img)(_n6##x,_p2##y,z,v), I[69] = (img)(_n7##x,_p2##y,z,v), \ 307.1845 + I[70] = (img)(_p6##x,_p1##y,z,v), I[71] = (img)(_p5##x,_p1##y,z,v), I[72] = (img)(_p4##x,_p1##y,z,v), I[73] = (img)(_p3##x,_p1##y,z,v), I[74] = (img)(_p2##x,_p1##y,z,v), I[75] = (img)(_p1##x,_p1##y,z,v), I[76] = (img)(x,_p1##y,z,v), I[77] = (img)(_n1##x,_p1##y,z,v), I[78] = (img)(_n2##x,_p1##y,z,v), I[79] = (img)(_n3##x,_p1##y,z,v), I[80] = (img)(_n4##x,_p1##y,z,v), I[81] = (img)(_n5##x,_p1##y,z,v), I[82] = (img)(_n6##x,_p1##y,z,v), I[83] = (img)(_n7##x,_p1##y,z,v), \ 307.1846 + I[84] = (img)(_p6##x,y,z,v), I[85] = (img)(_p5##x,y,z,v), I[86] = (img)(_p4##x,y,z,v), I[87] = (img)(_p3##x,y,z,v), I[88] = (img)(_p2##x,y,z,v), I[89] = (img)(_p1##x,y,z,v), I[90] = (img)(x,y,z,v), I[91] = (img)(_n1##x,y,z,v), I[92] = (img)(_n2##x,y,z,v), I[93] = (img)(_n3##x,y,z,v), I[94] = (img)(_n4##x,y,z,v), I[95] = (img)(_n5##x,y,z,v), I[96] = (img)(_n6##x,y,z,v), I[97] = (img)(_n7##x,y,z,v), \ 307.1847 + I[98] = (img)(_p6##x,_n1##y,z,v), I[99] = (img)(_p5##x,_n1##y,z,v), I[100] = (img)(_p4##x,_n1##y,z,v), I[101] = (img)(_p3##x,_n1##y,z,v), I[102] = (img)(_p2##x,_n1##y,z,v), I[103] = (img)(_p1##x,_n1##y,z,v), I[104] = (img)(x,_n1##y,z,v), I[105] = (img)(_n1##x,_n1##y,z,v), I[106] = (img)(_n2##x,_n1##y,z,v), I[107] = (img)(_n3##x,_n1##y,z,v), I[108] = (img)(_n4##x,_n1##y,z,v), I[109] = (img)(_n5##x,_n1##y,z,v), I[110] = (img)(_n6##x,_n1##y,z,v), I[111] = (img)(_n7##x,_n1##y,z,v), \ 307.1848 + I[112] = (img)(_p6##x,_n2##y,z,v), I[113] = (img)(_p5##x,_n2##y,z,v), I[114] = (img)(_p4##x,_n2##y,z,v), I[115] = (img)(_p3##x,_n2##y,z,v), I[116] = (img)(_p2##x,_n2##y,z,v), I[117] = (img)(_p1##x,_n2##y,z,v), I[118] = (img)(x,_n2##y,z,v), I[119] = (img)(_n1##x,_n2##y,z,v), I[120] = (img)(_n2##x,_n2##y,z,v), I[121] = (img)(_n3##x,_n2##y,z,v), I[122] = (img)(_n4##x,_n2##y,z,v), I[123] = (img)(_n5##x,_n2##y,z,v), I[124] = (img)(_n6##x,_n2##y,z,v), I[125] = (img)(_n7##x,_n2##y,z,v), \ 307.1849 + I[126] = (img)(_p6##x,_n3##y,z,v), I[127] = (img)(_p5##x,_n3##y,z,v), I[128] = (img)(_p4##x,_n3##y,z,v), I[129] = (img)(_p3##x,_n3##y,z,v), I[130] = (img)(_p2##x,_n3##y,z,v), I[131] = (img)(_p1##x,_n3##y,z,v), I[132] = (img)(x,_n3##y,z,v), I[133] = (img)(_n1##x,_n3##y,z,v), I[134] = (img)(_n2##x,_n3##y,z,v), I[135] = (img)(_n3##x,_n3##y,z,v), I[136] = (img)(_n4##x,_n3##y,z,v), I[137] = (img)(_n5##x,_n3##y,z,v), I[138] = (img)(_n6##x,_n3##y,z,v), I[139] = (img)(_n7##x,_n3##y,z,v), \ 307.1850 + I[140] = (img)(_p6##x,_n4##y,z,v), I[141] = (img)(_p5##x,_n4##y,z,v), I[142] = (img)(_p4##x,_n4##y,z,v), I[143] = (img)(_p3##x,_n4##y,z,v), I[144] = (img)(_p2##x,_n4##y,z,v), I[145] = (img)(_p1##x,_n4##y,z,v), I[146] = (img)(x,_n4##y,z,v), I[147] = (img)(_n1##x,_n4##y,z,v), I[148] = (img)(_n2##x,_n4##y,z,v), I[149] = (img)(_n3##x,_n4##y,z,v), I[150] = (img)(_n4##x,_n4##y,z,v), I[151] = (img)(_n5##x,_n4##y,z,v), I[152] = (img)(_n6##x,_n4##y,z,v), I[153] = (img)(_n7##x,_n4##y,z,v), \ 307.1851 + I[154] = (img)(_p6##x,_n5##y,z,v), I[155] = (img)(_p5##x,_n5##y,z,v), I[156] = (img)(_p4##x,_n5##y,z,v), I[157] = (img)(_p3##x,_n5##y,z,v), I[158] = (img)(_p2##x,_n5##y,z,v), I[159] = (img)(_p1##x,_n5##y,z,v), I[160] = (img)(x,_n5##y,z,v), I[161] = (img)(_n1##x,_n5##y,z,v), I[162] = (img)(_n2##x,_n5##y,z,v), I[163] = (img)(_n3##x,_n5##y,z,v), I[164] = (img)(_n4##x,_n5##y,z,v), I[165] = (img)(_n5##x,_n5##y,z,v), I[166] = (img)(_n6##x,_n5##y,z,v), I[167] = (img)(_n7##x,_n5##y,z,v), \ 307.1852 + I[168] = (img)(_p6##x,_n6##y,z,v), I[169] = (img)(_p5##x,_n6##y,z,v), I[170] = (img)(_p4##x,_n6##y,z,v), I[171] = (img)(_p3##x,_n6##y,z,v), I[172] = (img)(_p2##x,_n6##y,z,v), I[173] = (img)(_p1##x,_n6##y,z,v), I[174] = (img)(x,_n6##y,z,v), I[175] = (img)(_n1##x,_n6##y,z,v), I[176] = (img)(_n2##x,_n6##y,z,v), I[177] = (img)(_n3##x,_n6##y,z,v), I[178] = (img)(_n4##x,_n6##y,z,v), I[179] = (img)(_n5##x,_n6##y,z,v), I[180] = (img)(_n6##x,_n6##y,z,v), I[181] = (img)(_n7##x,_n6##y,z,v), \ 307.1853 + I[182] = (img)(_p6##x,_n7##y,z,v), I[183] = (img)(_p5##x,_n7##y,z,v), I[184] = (img)(_p4##x,_n7##y,z,v), I[185] = (img)(_p3##x,_n7##y,z,v), I[186] = (img)(_p2##x,_n7##y,z,v), I[187] = (img)(_p1##x,_n7##y,z,v), I[188] = (img)(x,_n7##y,z,v), I[189] = (img)(_n1##x,_n7##y,z,v), I[190] = (img)(_n2##x,_n7##y,z,v), I[191] = (img)(_n3##x,_n7##y,z,v), I[192] = (img)(_n4##x,_n7##y,z,v), I[193] = (img)(_n5##x,_n7##y,z,v), I[194] = (img)(_n6##x,_n7##y,z,v), I[195] = (img)(_n7##x,_n7##y,z,v); 307.1854 + 307.1855 +// Define 15x15 loop macros for CImg 307.1856 +//---------------------------------- 307.1857 +#define cimg_for15(bound,i) for (int i = 0, \ 307.1858 + _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.1859 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.1860 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.1861 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.1862 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.1863 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.1864 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.1865 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7; \ 307.1866 + _n7##i<(int)(bound) || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1867 + i==(_n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.1868 + _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1869 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i) 307.1870 + 307.1871 +#define cimg_for15X(img,x) cimg_for15((img).width,x) 307.1872 +#define cimg_for15Y(img,y) cimg_for15((img).height,y) 307.1873 +#define cimg_for15Z(img,z) cimg_for15((img).depth,z) 307.1874 +#define cimg_for15V(img,v) cimg_for15((img).dim,v) 307.1875 +#define cimg_for15XY(img,x,y) cimg_for15Y(img,y) cimg_for15X(img,x) 307.1876 +#define cimg_for15XZ(img,x,z) cimg_for15Z(img,z) cimg_for15X(img,x) 307.1877 +#define cimg_for15XV(img,x,v) cimg_for15V(img,v) cimg_for15X(img,x) 307.1878 +#define cimg_for15YZ(img,y,z) cimg_for15Z(img,z) cimg_for15Y(img,y) 307.1879 +#define cimg_for15YV(img,y,v) cimg_for15V(img,v) cimg_for15Y(img,y) 307.1880 +#define cimg_for15ZV(img,z,v) cimg_for15V(img,v) cimg_for15Z(img,z) 307.1881 +#define cimg_for15XYZ(img,x,y,z) cimg_for15Z(img,z) cimg_for15XY(img,x,y) 307.1882 +#define cimg_for15XZV(img,x,z,v) cimg_for15V(img,v) cimg_for15XZ(img,x,z) 307.1883 +#define cimg_for15YZV(img,y,z,v) cimg_for15V(img,v) cimg_for15YZ(img,y,z) 307.1884 +#define cimg_for15XYZV(img,x,y,z,v) cimg_for15V(img,v) cimg_for15XYZ(img,x,y,z) 307.1885 + 307.1886 +#define cimg_for_in15(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.1887 + _p7##i = i-7<0?0:i-7, \ 307.1888 + _p6##i = i-6<0?0:i-6, \ 307.1889 + _p5##i = i-5<0?0:i-5, \ 307.1890 + _p4##i = i-4<0?0:i-4, \ 307.1891 + _p3##i = i-3<0?0:i-3, \ 307.1892 + _p2##i = i-2<0?0:i-2, \ 307.1893 + _p1##i = i-1<0?0:i-1, \ 307.1894 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.1895 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.1896 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.1897 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.1898 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.1899 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.1900 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7; \ 307.1901 + i<=(int)(i1) && (_n7##i<(int)(bound) || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.1902 + i==(_n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.1903 + _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.1904 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i) 307.1905 + 307.1906 +#define cimg_for_in15X(img,x0,x1,x) cimg_for_in15((img).width,x0,x1,x) 307.1907 +#define cimg_for_in15Y(img,y0,y1,y) cimg_for_in15((img).height,y0,y1,y) 307.1908 +#define cimg_for_in15Z(img,z0,z1,z) cimg_for_in15((img).depth,z0,z1,z) 307.1909 +#define cimg_for_in15V(img,v0,v1,v) cimg_for_in15((img).dim,v0,v1,v) 307.1910 +#define cimg_for_in15XY(img,x0,y0,x1,y1,x,y) cimg_for_in15Y(img,y0,y1,y) cimg_for_in15X(img,x0,x1,x) 307.1911 +#define cimg_for_in15XZ(img,x0,z0,x1,z1,x,z) cimg_for_in15Z(img,z0,z1,z) cimg_for_in15X(img,x0,x1,x) 307.1912 +#define cimg_for_in15XV(img,x0,v0,x1,v1,x,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15X(img,x0,x1,x) 307.1913 +#define cimg_for_in15YZ(img,y0,z0,y1,z1,y,z) cimg_for_in15Z(img,z0,z1,z) cimg_for_in15Y(img,y0,y1,y) 307.1914 +#define cimg_for_in15YV(img,y0,v0,y1,v1,y,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15Y(img,y0,y1,y) 307.1915 +#define cimg_for_in15ZV(img,z0,v0,z1,v1,z,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15Z(img,z0,z1,z) 307.1916 +#define cimg_for_in15XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in15Z(img,z0,z1,z) cimg_for_in15XY(img,x0,y0,x1,y1,x,y) 307.1917 +#define cimg_for_in15XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15XZ(img,x0,y0,x1,y1,x,z) 307.1918 +#define cimg_for_in15YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15YZ(img,y0,z0,y1,z1,y,z) 307.1919 +#define cimg_for_in15XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in15V(img,v0,v1,v) cimg_for_in15XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.1920 + 307.1921 +#define cimg_for15x15(img,x,y,z,v,I) \ 307.1922 + cimg_for15((img).height,y) for (int x = 0, \ 307.1923 + _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.1924 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.1925 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.1926 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.1927 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.1928 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.1929 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.1930 + _n7##x = (int)( \ 307.1931 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = (img)(0,_p7##y,z,v)), \ 307.1932 + (I[15] = I[16] = I[17] = I[18] = I[19] = I[20] = I[21] = I[22] = (img)(0,_p6##y,z,v)), \ 307.1933 + (I[30] = I[31] = I[32] = I[33] = I[34] = I[35] = I[36] = I[37] = (img)(0,_p5##y,z,v)), \ 307.1934 + (I[45] = I[46] = I[47] = I[48] = I[49] = I[50] = I[51] = I[52] = (img)(0,_p4##y,z,v)), \ 307.1935 + (I[60] = I[61] = I[62] = I[63] = I[64] = I[65] = I[66] = I[67] = (img)(0,_p3##y,z,v)), \ 307.1936 + (I[75] = I[76] = I[77] = I[78] = I[79] = I[80] = I[81] = I[82] = (img)(0,_p2##y,z,v)), \ 307.1937 + (I[90] = I[91] = I[92] = I[93] = I[94] = I[95] = I[96] = I[97] = (img)(0,_p1##y,z,v)), \ 307.1938 + (I[105] = I[106] = I[107] = I[108] = I[109] = I[110] = I[111] = I[112] = (img)(0,y,z,v)), \ 307.1939 + (I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = I[126] = I[127] = (img)(0,_n1##y,z,v)), \ 307.1940 + (I[135] = I[136] = I[137] = I[138] = I[139] = I[140] = I[141] = I[142] = (img)(0,_n2##y,z,v)), \ 307.1941 + (I[150] = I[151] = I[152] = I[153] = I[154] = I[155] = I[156] = I[157] = (img)(0,_n3##y,z,v)), \ 307.1942 + (I[165] = I[166] = I[167] = I[168] = I[169] = I[170] = I[171] = I[172] = (img)(0,_n4##y,z,v)), \ 307.1943 + (I[180] = I[181] = I[182] = I[183] = I[184] = I[185] = I[186] = I[187] = (img)(0,_n5##y,z,v)), \ 307.1944 + (I[195] = I[196] = I[197] = I[198] = I[199] = I[200] = I[201] = I[202] = (img)(0,_n6##y,z,v)), \ 307.1945 + (I[210] = I[211] = I[212] = I[213] = I[214] = I[215] = I[216] = I[217] = (img)(0,_n7##y,z,v)), \ 307.1946 + (I[8] = (img)(_n1##x,_p7##y,z,v)), \ 307.1947 + (I[23] = (img)(_n1##x,_p6##y,z,v)), \ 307.1948 + (I[38] = (img)(_n1##x,_p5##y,z,v)), \ 307.1949 + (I[53] = (img)(_n1##x,_p4##y,z,v)), \ 307.1950 + (I[68] = (img)(_n1##x,_p3##y,z,v)), \ 307.1951 + (I[83] = (img)(_n1##x,_p2##y,z,v)), \ 307.1952 + (I[98] = (img)(_n1##x,_p1##y,z,v)), \ 307.1953 + (I[113] = (img)(_n1##x,y,z,v)), \ 307.1954 + (I[128] = (img)(_n1##x,_n1##y,z,v)), \ 307.1955 + (I[143] = (img)(_n1##x,_n2##y,z,v)), \ 307.1956 + (I[158] = (img)(_n1##x,_n3##y,z,v)), \ 307.1957 + (I[173] = (img)(_n1##x,_n4##y,z,v)), \ 307.1958 + (I[188] = (img)(_n1##x,_n5##y,z,v)), \ 307.1959 + (I[203] = (img)(_n1##x,_n6##y,z,v)), \ 307.1960 + (I[218] = (img)(_n1##x,_n7##y,z,v)), \ 307.1961 + (I[9] = (img)(_n2##x,_p7##y,z,v)), \ 307.1962 + (I[24] = (img)(_n2##x,_p6##y,z,v)), \ 307.1963 + (I[39] = (img)(_n2##x,_p5##y,z,v)), \ 307.1964 + (I[54] = (img)(_n2##x,_p4##y,z,v)), \ 307.1965 + (I[69] = (img)(_n2##x,_p3##y,z,v)), \ 307.1966 + (I[84] = (img)(_n2##x,_p2##y,z,v)), \ 307.1967 + (I[99] = (img)(_n2##x,_p1##y,z,v)), \ 307.1968 + (I[114] = (img)(_n2##x,y,z,v)), \ 307.1969 + (I[129] = (img)(_n2##x,_n1##y,z,v)), \ 307.1970 + (I[144] = (img)(_n2##x,_n2##y,z,v)), \ 307.1971 + (I[159] = (img)(_n2##x,_n3##y,z,v)), \ 307.1972 + (I[174] = (img)(_n2##x,_n4##y,z,v)), \ 307.1973 + (I[189] = (img)(_n2##x,_n5##y,z,v)), \ 307.1974 + (I[204] = (img)(_n2##x,_n6##y,z,v)), \ 307.1975 + (I[219] = (img)(_n2##x,_n7##y,z,v)), \ 307.1976 + (I[10] = (img)(_n3##x,_p7##y,z,v)), \ 307.1977 + (I[25] = (img)(_n3##x,_p6##y,z,v)), \ 307.1978 + (I[40] = (img)(_n3##x,_p5##y,z,v)), \ 307.1979 + (I[55] = (img)(_n3##x,_p4##y,z,v)), \ 307.1980 + (I[70] = (img)(_n3##x,_p3##y,z,v)), \ 307.1981 + (I[85] = (img)(_n3##x,_p2##y,z,v)), \ 307.1982 + (I[100] = (img)(_n3##x,_p1##y,z,v)), \ 307.1983 + (I[115] = (img)(_n3##x,y,z,v)), \ 307.1984 + (I[130] = (img)(_n3##x,_n1##y,z,v)), \ 307.1985 + (I[145] = (img)(_n3##x,_n2##y,z,v)), \ 307.1986 + (I[160] = (img)(_n3##x,_n3##y,z,v)), \ 307.1987 + (I[175] = (img)(_n3##x,_n4##y,z,v)), \ 307.1988 + (I[190] = (img)(_n3##x,_n5##y,z,v)), \ 307.1989 + (I[205] = (img)(_n3##x,_n6##y,z,v)), \ 307.1990 + (I[220] = (img)(_n3##x,_n7##y,z,v)), \ 307.1991 + (I[11] = (img)(_n4##x,_p7##y,z,v)), \ 307.1992 + (I[26] = (img)(_n4##x,_p6##y,z,v)), \ 307.1993 + (I[41] = (img)(_n4##x,_p5##y,z,v)), \ 307.1994 + (I[56] = (img)(_n4##x,_p4##y,z,v)), \ 307.1995 + (I[71] = (img)(_n4##x,_p3##y,z,v)), \ 307.1996 + (I[86] = (img)(_n4##x,_p2##y,z,v)), \ 307.1997 + (I[101] = (img)(_n4##x,_p1##y,z,v)), \ 307.1998 + (I[116] = (img)(_n4##x,y,z,v)), \ 307.1999 + (I[131] = (img)(_n4##x,_n1##y,z,v)), \ 307.2000 + (I[146] = (img)(_n4##x,_n2##y,z,v)), \ 307.2001 + (I[161] = (img)(_n4##x,_n3##y,z,v)), \ 307.2002 + (I[176] = (img)(_n4##x,_n4##y,z,v)), \ 307.2003 + (I[191] = (img)(_n4##x,_n5##y,z,v)), \ 307.2004 + (I[206] = (img)(_n4##x,_n6##y,z,v)), \ 307.2005 + (I[221] = (img)(_n4##x,_n7##y,z,v)), \ 307.2006 + (I[12] = (img)(_n5##x,_p7##y,z,v)), \ 307.2007 + (I[27] = (img)(_n5##x,_p6##y,z,v)), \ 307.2008 + (I[42] = (img)(_n5##x,_p5##y,z,v)), \ 307.2009 + (I[57] = (img)(_n5##x,_p4##y,z,v)), \ 307.2010 + (I[72] = (img)(_n5##x,_p3##y,z,v)), \ 307.2011 + (I[87] = (img)(_n5##x,_p2##y,z,v)), \ 307.2012 + (I[102] = (img)(_n5##x,_p1##y,z,v)), \ 307.2013 + (I[117] = (img)(_n5##x,y,z,v)), \ 307.2014 + (I[132] = (img)(_n5##x,_n1##y,z,v)), \ 307.2015 + (I[147] = (img)(_n5##x,_n2##y,z,v)), \ 307.2016 + (I[162] = (img)(_n5##x,_n3##y,z,v)), \ 307.2017 + (I[177] = (img)(_n5##x,_n4##y,z,v)), \ 307.2018 + (I[192] = (img)(_n5##x,_n5##y,z,v)), \ 307.2019 + (I[207] = (img)(_n5##x,_n6##y,z,v)), \ 307.2020 + (I[222] = (img)(_n5##x,_n7##y,z,v)), \ 307.2021 + (I[13] = (img)(_n6##x,_p7##y,z,v)), \ 307.2022 + (I[28] = (img)(_n6##x,_p6##y,z,v)), \ 307.2023 + (I[43] = (img)(_n6##x,_p5##y,z,v)), \ 307.2024 + (I[58] = (img)(_n6##x,_p4##y,z,v)), \ 307.2025 + (I[73] = (img)(_n6##x,_p3##y,z,v)), \ 307.2026 + (I[88] = (img)(_n6##x,_p2##y,z,v)), \ 307.2027 + (I[103] = (img)(_n6##x,_p1##y,z,v)), \ 307.2028 + (I[118] = (img)(_n6##x,y,z,v)), \ 307.2029 + (I[133] = (img)(_n6##x,_n1##y,z,v)), \ 307.2030 + (I[148] = (img)(_n6##x,_n2##y,z,v)), \ 307.2031 + (I[163] = (img)(_n6##x,_n3##y,z,v)), \ 307.2032 + (I[178] = (img)(_n6##x,_n4##y,z,v)), \ 307.2033 + (I[193] = (img)(_n6##x,_n5##y,z,v)), \ 307.2034 + (I[208] = (img)(_n6##x,_n6##y,z,v)), \ 307.2035 + (I[223] = (img)(_n6##x,_n7##y,z,v)), \ 307.2036 + 7>=((img).width)?(int)((img).width)-1:7); \ 307.2037 + (_n7##x<(int)((img).width) && ( \ 307.2038 + (I[14] = (img)(_n7##x,_p7##y,z,v)), \ 307.2039 + (I[29] = (img)(_n7##x,_p6##y,z,v)), \ 307.2040 + (I[44] = (img)(_n7##x,_p5##y,z,v)), \ 307.2041 + (I[59] = (img)(_n7##x,_p4##y,z,v)), \ 307.2042 + (I[74] = (img)(_n7##x,_p3##y,z,v)), \ 307.2043 + (I[89] = (img)(_n7##x,_p2##y,z,v)), \ 307.2044 + (I[104] = (img)(_n7##x,_p1##y,z,v)), \ 307.2045 + (I[119] = (img)(_n7##x,y,z,v)), \ 307.2046 + (I[134] = (img)(_n7##x,_n1##y,z,v)), \ 307.2047 + (I[149] = (img)(_n7##x,_n2##y,z,v)), \ 307.2048 + (I[164] = (img)(_n7##x,_n3##y,z,v)), \ 307.2049 + (I[179] = (img)(_n7##x,_n4##y,z,v)), \ 307.2050 + (I[194] = (img)(_n7##x,_n5##y,z,v)), \ 307.2051 + (I[209] = (img)(_n7##x,_n6##y,z,v)), \ 307.2052 + (I[224] = (img)(_n7##x,_n7##y,z,v)),1)) || \ 307.2053 + _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.2054 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 307.2055 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.2056 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 307.2057 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.2058 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], \ 307.2059 + I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.2060 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.2061 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.2062 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], \ 307.2063 + I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], \ 307.2064 + I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], \ 307.2065 + I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.2066 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], \ 307.2067 + I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.2068 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], \ 307.2069 + _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x) 307.2070 + 307.2071 +#define cimg_for_in15x15(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.2072 + cimg_for_in15((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.2073 + _p7##x = x-7<0?0:x-7, \ 307.2074 + _p6##x = x-6<0?0:x-6, \ 307.2075 + _p5##x = x-5<0?0:x-5, \ 307.2076 + _p4##x = x-4<0?0:x-4, \ 307.2077 + _p3##x = x-3<0?0:x-3, \ 307.2078 + _p2##x = x-2<0?0:x-2, \ 307.2079 + _p1##x = x-1<0?0:x-1, \ 307.2080 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.2081 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.2082 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.2083 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.2084 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.2085 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.2086 + _n7##x = (int)( \ 307.2087 + (I[0] = (img)(_p7##x,_p7##y,z,v)), \ 307.2088 + (I[15] = (img)(_p7##x,_p6##y,z,v)), \ 307.2089 + (I[30] = (img)(_p7##x,_p5##y,z,v)), \ 307.2090 + (I[45] = (img)(_p7##x,_p4##y,z,v)), \ 307.2091 + (I[60] = (img)(_p7##x,_p3##y,z,v)), \ 307.2092 + (I[75] = (img)(_p7##x,_p2##y,z,v)), \ 307.2093 + (I[90] = (img)(_p7##x,_p1##y,z,v)), \ 307.2094 + (I[105] = (img)(_p7##x,y,z,v)), \ 307.2095 + (I[120] = (img)(_p7##x,_n1##y,z,v)), \ 307.2096 + (I[135] = (img)(_p7##x,_n2##y,z,v)), \ 307.2097 + (I[150] = (img)(_p7##x,_n3##y,z,v)), \ 307.2098 + (I[165] = (img)(_p7##x,_n4##y,z,v)), \ 307.2099 + (I[180] = (img)(_p7##x,_n5##y,z,v)), \ 307.2100 + (I[195] = (img)(_p7##x,_n6##y,z,v)), \ 307.2101 + (I[210] = (img)(_p7##x,_n7##y,z,v)), \ 307.2102 + (I[1] = (img)(_p6##x,_p7##y,z,v)), \ 307.2103 + (I[16] = (img)(_p6##x,_p6##y,z,v)), \ 307.2104 + (I[31] = (img)(_p6##x,_p5##y,z,v)), \ 307.2105 + (I[46] = (img)(_p6##x,_p4##y,z,v)), \ 307.2106 + (I[61] = (img)(_p6##x,_p3##y,z,v)), \ 307.2107 + (I[76] = (img)(_p6##x,_p2##y,z,v)), \ 307.2108 + (I[91] = (img)(_p6##x,_p1##y,z,v)), \ 307.2109 + (I[106] = (img)(_p6##x,y,z,v)), \ 307.2110 + (I[121] = (img)(_p6##x,_n1##y,z,v)), \ 307.2111 + (I[136] = (img)(_p6##x,_n2##y,z,v)), \ 307.2112 + (I[151] = (img)(_p6##x,_n3##y,z,v)), \ 307.2113 + (I[166] = (img)(_p6##x,_n4##y,z,v)), \ 307.2114 + (I[181] = (img)(_p6##x,_n5##y,z,v)), \ 307.2115 + (I[196] = (img)(_p6##x,_n6##y,z,v)), \ 307.2116 + (I[211] = (img)(_p6##x,_n7##y,z,v)), \ 307.2117 + (I[2] = (img)(_p5##x,_p7##y,z,v)), \ 307.2118 + (I[17] = (img)(_p5##x,_p6##y,z,v)), \ 307.2119 + (I[32] = (img)(_p5##x,_p5##y,z,v)), \ 307.2120 + (I[47] = (img)(_p5##x,_p4##y,z,v)), \ 307.2121 + (I[62] = (img)(_p5##x,_p3##y,z,v)), \ 307.2122 + (I[77] = (img)(_p5##x,_p2##y,z,v)), \ 307.2123 + (I[92] = (img)(_p5##x,_p1##y,z,v)), \ 307.2124 + (I[107] = (img)(_p5##x,y,z,v)), \ 307.2125 + (I[122] = (img)(_p5##x,_n1##y,z,v)), \ 307.2126 + (I[137] = (img)(_p5##x,_n2##y,z,v)), \ 307.2127 + (I[152] = (img)(_p5##x,_n3##y,z,v)), \ 307.2128 + (I[167] = (img)(_p5##x,_n4##y,z,v)), \ 307.2129 + (I[182] = (img)(_p5##x,_n5##y,z,v)), \ 307.2130 + (I[197] = (img)(_p5##x,_n6##y,z,v)), \ 307.2131 + (I[212] = (img)(_p5##x,_n7##y,z,v)), \ 307.2132 + (I[3] = (img)(_p4##x,_p7##y,z,v)), \ 307.2133 + (I[18] = (img)(_p4##x,_p6##y,z,v)), \ 307.2134 + (I[33] = (img)(_p4##x,_p5##y,z,v)), \ 307.2135 + (I[48] = (img)(_p4##x,_p4##y,z,v)), \ 307.2136 + (I[63] = (img)(_p4##x,_p3##y,z,v)), \ 307.2137 + (I[78] = (img)(_p4##x,_p2##y,z,v)), \ 307.2138 + (I[93] = (img)(_p4##x,_p1##y,z,v)), \ 307.2139 + (I[108] = (img)(_p4##x,y,z,v)), \ 307.2140 + (I[123] = (img)(_p4##x,_n1##y,z,v)), \ 307.2141 + (I[138] = (img)(_p4##x,_n2##y,z,v)), \ 307.2142 + (I[153] = (img)(_p4##x,_n3##y,z,v)), \ 307.2143 + (I[168] = (img)(_p4##x,_n4##y,z,v)), \ 307.2144 + (I[183] = (img)(_p4##x,_n5##y,z,v)), \ 307.2145 + (I[198] = (img)(_p4##x,_n6##y,z,v)), \ 307.2146 + (I[213] = (img)(_p4##x,_n7##y,z,v)), \ 307.2147 + (I[4] = (img)(_p3##x,_p7##y,z,v)), \ 307.2148 + (I[19] = (img)(_p3##x,_p6##y,z,v)), \ 307.2149 + (I[34] = (img)(_p3##x,_p5##y,z,v)), \ 307.2150 + (I[49] = (img)(_p3##x,_p4##y,z,v)), \ 307.2151 + (I[64] = (img)(_p3##x,_p3##y,z,v)), \ 307.2152 + (I[79] = (img)(_p3##x,_p2##y,z,v)), \ 307.2153 + (I[94] = (img)(_p3##x,_p1##y,z,v)), \ 307.2154 + (I[109] = (img)(_p3##x,y,z,v)), \ 307.2155 + (I[124] = (img)(_p3##x,_n1##y,z,v)), \ 307.2156 + (I[139] = (img)(_p3##x,_n2##y,z,v)), \ 307.2157 + (I[154] = (img)(_p3##x,_n3##y,z,v)), \ 307.2158 + (I[169] = (img)(_p3##x,_n4##y,z,v)), \ 307.2159 + (I[184] = (img)(_p3##x,_n5##y,z,v)), \ 307.2160 + (I[199] = (img)(_p3##x,_n6##y,z,v)), \ 307.2161 + (I[214] = (img)(_p3##x,_n7##y,z,v)), \ 307.2162 + (I[5] = (img)(_p2##x,_p7##y,z,v)), \ 307.2163 + (I[20] = (img)(_p2##x,_p6##y,z,v)), \ 307.2164 + (I[35] = (img)(_p2##x,_p5##y,z,v)), \ 307.2165 + (I[50] = (img)(_p2##x,_p4##y,z,v)), \ 307.2166 + (I[65] = (img)(_p2##x,_p3##y,z,v)), \ 307.2167 + (I[80] = (img)(_p2##x,_p2##y,z,v)), \ 307.2168 + (I[95] = (img)(_p2##x,_p1##y,z,v)), \ 307.2169 + (I[110] = (img)(_p2##x,y,z,v)), \ 307.2170 + (I[125] = (img)(_p2##x,_n1##y,z,v)), \ 307.2171 + (I[140] = (img)(_p2##x,_n2##y,z,v)), \ 307.2172 + (I[155] = (img)(_p2##x,_n3##y,z,v)), \ 307.2173 + (I[170] = (img)(_p2##x,_n4##y,z,v)), \ 307.2174 + (I[185] = (img)(_p2##x,_n5##y,z,v)), \ 307.2175 + (I[200] = (img)(_p2##x,_n6##y,z,v)), \ 307.2176 + (I[215] = (img)(_p2##x,_n7##y,z,v)), \ 307.2177 + (I[6] = (img)(_p1##x,_p7##y,z,v)), \ 307.2178 + (I[21] = (img)(_p1##x,_p6##y,z,v)), \ 307.2179 + (I[36] = (img)(_p1##x,_p5##y,z,v)), \ 307.2180 + (I[51] = (img)(_p1##x,_p4##y,z,v)), \ 307.2181 + (I[66] = (img)(_p1##x,_p3##y,z,v)), \ 307.2182 + (I[81] = (img)(_p1##x,_p2##y,z,v)), \ 307.2183 + (I[96] = (img)(_p1##x,_p1##y,z,v)), \ 307.2184 + (I[111] = (img)(_p1##x,y,z,v)), \ 307.2185 + (I[126] = (img)(_p1##x,_n1##y,z,v)), \ 307.2186 + (I[141] = (img)(_p1##x,_n2##y,z,v)), \ 307.2187 + (I[156] = (img)(_p1##x,_n3##y,z,v)), \ 307.2188 + (I[171] = (img)(_p1##x,_n4##y,z,v)), \ 307.2189 + (I[186] = (img)(_p1##x,_n5##y,z,v)), \ 307.2190 + (I[201] = (img)(_p1##x,_n6##y,z,v)), \ 307.2191 + (I[216] = (img)(_p1##x,_n7##y,z,v)), \ 307.2192 + (I[7] = (img)(x,_p7##y,z,v)), \ 307.2193 + (I[22] = (img)(x,_p6##y,z,v)), \ 307.2194 + (I[37] = (img)(x,_p5##y,z,v)), \ 307.2195 + (I[52] = (img)(x,_p4##y,z,v)), \ 307.2196 + (I[67] = (img)(x,_p3##y,z,v)), \ 307.2197 + (I[82] = (img)(x,_p2##y,z,v)), \ 307.2198 + (I[97] = (img)(x,_p1##y,z,v)), \ 307.2199 + (I[112] = (img)(x,y,z,v)), \ 307.2200 + (I[127] = (img)(x,_n1##y,z,v)), \ 307.2201 + (I[142] = (img)(x,_n2##y,z,v)), \ 307.2202 + (I[157] = (img)(x,_n3##y,z,v)), \ 307.2203 + (I[172] = (img)(x,_n4##y,z,v)), \ 307.2204 + (I[187] = (img)(x,_n5##y,z,v)), \ 307.2205 + (I[202] = (img)(x,_n6##y,z,v)), \ 307.2206 + (I[217] = (img)(x,_n7##y,z,v)), \ 307.2207 + (I[8] = (img)(_n1##x,_p7##y,z,v)), \ 307.2208 + (I[23] = (img)(_n1##x,_p6##y,z,v)), \ 307.2209 + (I[38] = (img)(_n1##x,_p5##y,z,v)), \ 307.2210 + (I[53] = (img)(_n1##x,_p4##y,z,v)), \ 307.2211 + (I[68] = (img)(_n1##x,_p3##y,z,v)), \ 307.2212 + (I[83] = (img)(_n1##x,_p2##y,z,v)), \ 307.2213 + (I[98] = (img)(_n1##x,_p1##y,z,v)), \ 307.2214 + (I[113] = (img)(_n1##x,y,z,v)), \ 307.2215 + (I[128] = (img)(_n1##x,_n1##y,z,v)), \ 307.2216 + (I[143] = (img)(_n1##x,_n2##y,z,v)), \ 307.2217 + (I[158] = (img)(_n1##x,_n3##y,z,v)), \ 307.2218 + (I[173] = (img)(_n1##x,_n4##y,z,v)), \ 307.2219 + (I[188] = (img)(_n1##x,_n5##y,z,v)), \ 307.2220 + (I[203] = (img)(_n1##x,_n6##y,z,v)), \ 307.2221 + (I[218] = (img)(_n1##x,_n7##y,z,v)), \ 307.2222 + (I[9] = (img)(_n2##x,_p7##y,z,v)), \ 307.2223 + (I[24] = (img)(_n2##x,_p6##y,z,v)), \ 307.2224 + (I[39] = (img)(_n2##x,_p5##y,z,v)), \ 307.2225 + (I[54] = (img)(_n2##x,_p4##y,z,v)), \ 307.2226 + (I[69] = (img)(_n2##x,_p3##y,z,v)), \ 307.2227 + (I[84] = (img)(_n2##x,_p2##y,z,v)), \ 307.2228 + (I[99] = (img)(_n2##x,_p1##y,z,v)), \ 307.2229 + (I[114] = (img)(_n2##x,y,z,v)), \ 307.2230 + (I[129] = (img)(_n2##x,_n1##y,z,v)), \ 307.2231 + (I[144] = (img)(_n2##x,_n2##y,z,v)), \ 307.2232 + (I[159] = (img)(_n2##x,_n3##y,z,v)), \ 307.2233 + (I[174] = (img)(_n2##x,_n4##y,z,v)), \ 307.2234 + (I[189] = (img)(_n2##x,_n5##y,z,v)), \ 307.2235 + (I[204] = (img)(_n2##x,_n6##y,z,v)), \ 307.2236 + (I[219] = (img)(_n2##x,_n7##y,z,v)), \ 307.2237 + (I[10] = (img)(_n3##x,_p7##y,z,v)), \ 307.2238 + (I[25] = (img)(_n3##x,_p6##y,z,v)), \ 307.2239 + (I[40] = (img)(_n3##x,_p5##y,z,v)), \ 307.2240 + (I[55] = (img)(_n3##x,_p4##y,z,v)), \ 307.2241 + (I[70] = (img)(_n3##x,_p3##y,z,v)), \ 307.2242 + (I[85] = (img)(_n3##x,_p2##y,z,v)), \ 307.2243 + (I[100] = (img)(_n3##x,_p1##y,z,v)), \ 307.2244 + (I[115] = (img)(_n3##x,y,z,v)), \ 307.2245 + (I[130] = (img)(_n3##x,_n1##y,z,v)), \ 307.2246 + (I[145] = (img)(_n3##x,_n2##y,z,v)), \ 307.2247 + (I[160] = (img)(_n3##x,_n3##y,z,v)), \ 307.2248 + (I[175] = (img)(_n3##x,_n4##y,z,v)), \ 307.2249 + (I[190] = (img)(_n3##x,_n5##y,z,v)), \ 307.2250 + (I[205] = (img)(_n3##x,_n6##y,z,v)), \ 307.2251 + (I[220] = (img)(_n3##x,_n7##y,z,v)), \ 307.2252 + (I[11] = (img)(_n4##x,_p7##y,z,v)), \ 307.2253 + (I[26] = (img)(_n4##x,_p6##y,z,v)), \ 307.2254 + (I[41] = (img)(_n4##x,_p5##y,z,v)), \ 307.2255 + (I[56] = (img)(_n4##x,_p4##y,z,v)), \ 307.2256 + (I[71] = (img)(_n4##x,_p3##y,z,v)), \ 307.2257 + (I[86] = (img)(_n4##x,_p2##y,z,v)), \ 307.2258 + (I[101] = (img)(_n4##x,_p1##y,z,v)), \ 307.2259 + (I[116] = (img)(_n4##x,y,z,v)), \ 307.2260 + (I[131] = (img)(_n4##x,_n1##y,z,v)), \ 307.2261 + (I[146] = (img)(_n4##x,_n2##y,z,v)), \ 307.2262 + (I[161] = (img)(_n4##x,_n3##y,z,v)), \ 307.2263 + (I[176] = (img)(_n4##x,_n4##y,z,v)), \ 307.2264 + (I[191] = (img)(_n4##x,_n5##y,z,v)), \ 307.2265 + (I[206] = (img)(_n4##x,_n6##y,z,v)), \ 307.2266 + (I[221] = (img)(_n4##x,_n7##y,z,v)), \ 307.2267 + (I[12] = (img)(_n5##x,_p7##y,z,v)), \ 307.2268 + (I[27] = (img)(_n5##x,_p6##y,z,v)), \ 307.2269 + (I[42] = (img)(_n5##x,_p5##y,z,v)), \ 307.2270 + (I[57] = (img)(_n5##x,_p4##y,z,v)), \ 307.2271 + (I[72] = (img)(_n5##x,_p3##y,z,v)), \ 307.2272 + (I[87] = (img)(_n5##x,_p2##y,z,v)), \ 307.2273 + (I[102] = (img)(_n5##x,_p1##y,z,v)), \ 307.2274 + (I[117] = (img)(_n5##x,y,z,v)), \ 307.2275 + (I[132] = (img)(_n5##x,_n1##y,z,v)), \ 307.2276 + (I[147] = (img)(_n5##x,_n2##y,z,v)), \ 307.2277 + (I[162] = (img)(_n5##x,_n3##y,z,v)), \ 307.2278 + (I[177] = (img)(_n5##x,_n4##y,z,v)), \ 307.2279 + (I[192] = (img)(_n5##x,_n5##y,z,v)), \ 307.2280 + (I[207] = (img)(_n5##x,_n6##y,z,v)), \ 307.2281 + (I[222] = (img)(_n5##x,_n7##y,z,v)), \ 307.2282 + (I[13] = (img)(_n6##x,_p7##y,z,v)), \ 307.2283 + (I[28] = (img)(_n6##x,_p6##y,z,v)), \ 307.2284 + (I[43] = (img)(_n6##x,_p5##y,z,v)), \ 307.2285 + (I[58] = (img)(_n6##x,_p4##y,z,v)), \ 307.2286 + (I[73] = (img)(_n6##x,_p3##y,z,v)), \ 307.2287 + (I[88] = (img)(_n6##x,_p2##y,z,v)), \ 307.2288 + (I[103] = (img)(_n6##x,_p1##y,z,v)), \ 307.2289 + (I[118] = (img)(_n6##x,y,z,v)), \ 307.2290 + (I[133] = (img)(_n6##x,_n1##y,z,v)), \ 307.2291 + (I[148] = (img)(_n6##x,_n2##y,z,v)), \ 307.2292 + (I[163] = (img)(_n6##x,_n3##y,z,v)), \ 307.2293 + (I[178] = (img)(_n6##x,_n4##y,z,v)), \ 307.2294 + (I[193] = (img)(_n6##x,_n5##y,z,v)), \ 307.2295 + (I[208] = (img)(_n6##x,_n6##y,z,v)), \ 307.2296 + (I[223] = (img)(_n6##x,_n7##y,z,v)), \ 307.2297 + x+7>=(int)((img).width)?(int)((img).width)-1:x+7); \ 307.2298 + x<=(int)(x1) && ((_n7##x<(int)((img).width) && ( \ 307.2299 + (I[14] = (img)(_n7##x,_p7##y,z,v)), \ 307.2300 + (I[29] = (img)(_n7##x,_p6##y,z,v)), \ 307.2301 + (I[44] = (img)(_n7##x,_p5##y,z,v)), \ 307.2302 + (I[59] = (img)(_n7##x,_p4##y,z,v)), \ 307.2303 + (I[74] = (img)(_n7##x,_p3##y,z,v)), \ 307.2304 + (I[89] = (img)(_n7##x,_p2##y,z,v)), \ 307.2305 + (I[104] = (img)(_n7##x,_p1##y,z,v)), \ 307.2306 + (I[119] = (img)(_n7##x,y,z,v)), \ 307.2307 + (I[134] = (img)(_n7##x,_n1##y,z,v)), \ 307.2308 + (I[149] = (img)(_n7##x,_n2##y,z,v)), \ 307.2309 + (I[164] = (img)(_n7##x,_n3##y,z,v)), \ 307.2310 + (I[179] = (img)(_n7##x,_n4##y,z,v)), \ 307.2311 + (I[194] = (img)(_n7##x,_n5##y,z,v)), \ 307.2312 + (I[209] = (img)(_n7##x,_n6##y,z,v)), \ 307.2313 + (I[224] = (img)(_n7##x,_n7##y,z,v)),1)) || \ 307.2314 + _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.2315 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 307.2316 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.2317 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 307.2318 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.2319 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], \ 307.2320 + I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.2321 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.2322 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.2323 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], \ 307.2324 + I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], \ 307.2325 + I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], \ 307.2326 + I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.2327 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], \ 307.2328 + I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.2329 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], \ 307.2330 + _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x) 307.2331 + 307.2332 +#define cimg_get15x15(img,x,y,z,v,I) \ 307.2333 + I[0] = (img)(_p7##x,_p7##y,z,v), I[1] = (img)(_p6##x,_p7##y,z,v), I[2] = (img)(_p5##x,_p7##y,z,v), I[3] = (img)(_p4##x,_p7##y,z,v), I[4] = (img)(_p3##x,_p7##y,z,v), I[5] = (img)(_p2##x,_p7##y,z,v), I[6] = (img)(_p1##x,_p7##y,z,v), I[7] = (img)(x,_p7##y,z,v), I[8] = (img)(_n1##x,_p7##y,z,v), I[9] = (img)(_n2##x,_p7##y,z,v), I[10] = (img)(_n3##x,_p7##y,z,v), I[11] = (img)(_n4##x,_p7##y,z,v), I[12] = (img)(_n5##x,_p7##y,z,v), I[13] = (img)(_n6##x,_p7##y,z,v), I[14] = (img)(_n7##x,_p7##y,z,v), \ 307.2334 + I[15] = (img)(_p7##x,_p6##y,z,v), I[16] = (img)(_p6##x,_p6##y,z,v), I[17] = (img)(_p5##x,_p6##y,z,v), I[18] = (img)(_p4##x,_p6##y,z,v), I[19] = (img)(_p3##x,_p6##y,z,v), I[20] = (img)(_p2##x,_p6##y,z,v), I[21] = (img)(_p1##x,_p6##y,z,v), I[22] = (img)(x,_p6##y,z,v), I[23] = (img)(_n1##x,_p6##y,z,v), I[24] = (img)(_n2##x,_p6##y,z,v), I[25] = (img)(_n3##x,_p6##y,z,v), I[26] = (img)(_n4##x,_p6##y,z,v), I[27] = (img)(_n5##x,_p6##y,z,v), I[28] = (img)(_n6##x,_p6##y,z,v), I[29] = (img)(_n7##x,_p6##y,z,v), \ 307.2335 + I[30] = (img)(_p7##x,_p5##y,z,v), I[31] = (img)(_p6##x,_p5##y,z,v), I[32] = (img)(_p5##x,_p5##y,z,v), I[33] = (img)(_p4##x,_p5##y,z,v), I[34] = (img)(_p3##x,_p5##y,z,v), I[35] = (img)(_p2##x,_p5##y,z,v), I[36] = (img)(_p1##x,_p5##y,z,v), I[37] = (img)(x,_p5##y,z,v), I[38] = (img)(_n1##x,_p5##y,z,v), I[39] = (img)(_n2##x,_p5##y,z,v), I[40] = (img)(_n3##x,_p5##y,z,v), I[41] = (img)(_n4##x,_p5##y,z,v), I[42] = (img)(_n5##x,_p5##y,z,v), I[43] = (img)(_n6##x,_p5##y,z,v), I[44] = (img)(_n7##x,_p5##y,z,v), \ 307.2336 + I[45] = (img)(_p7##x,_p4##y,z,v), I[46] = (img)(_p6##x,_p4##y,z,v), I[47] = (img)(_p5##x,_p4##y,z,v), I[48] = (img)(_p4##x,_p4##y,z,v), I[49] = (img)(_p3##x,_p4##y,z,v), I[50] = (img)(_p2##x,_p4##y,z,v), I[51] = (img)(_p1##x,_p4##y,z,v), I[52] = (img)(x,_p4##y,z,v), I[53] = (img)(_n1##x,_p4##y,z,v), I[54] = (img)(_n2##x,_p4##y,z,v), I[55] = (img)(_n3##x,_p4##y,z,v), I[56] = (img)(_n4##x,_p4##y,z,v), I[57] = (img)(_n5##x,_p4##y,z,v), I[58] = (img)(_n6##x,_p4##y,z,v), I[59] = (img)(_n7##x,_p4##y,z,v), \ 307.2337 + I[60] = (img)(_p7##x,_p3##y,z,v), I[61] = (img)(_p6##x,_p3##y,z,v), I[62] = (img)(_p5##x,_p3##y,z,v), I[63] = (img)(_p4##x,_p3##y,z,v), I[64] = (img)(_p3##x,_p3##y,z,v), I[65] = (img)(_p2##x,_p3##y,z,v), I[66] = (img)(_p1##x,_p3##y,z,v), I[67] = (img)(x,_p3##y,z,v), I[68] = (img)(_n1##x,_p3##y,z,v), I[69] = (img)(_n2##x,_p3##y,z,v), I[70] = (img)(_n3##x,_p3##y,z,v), I[71] = (img)(_n4##x,_p3##y,z,v), I[72] = (img)(_n5##x,_p3##y,z,v), I[73] = (img)(_n6##x,_p3##y,z,v), I[74] = (img)(_n7##x,_p3##y,z,v), \ 307.2338 + I[75] = (img)(_p7##x,_p2##y,z,v), I[76] = (img)(_p6##x,_p2##y,z,v), I[77] = (img)(_p5##x,_p2##y,z,v), I[78] = (img)(_p4##x,_p2##y,z,v), I[79] = (img)(_p3##x,_p2##y,z,v), I[80] = (img)(_p2##x,_p2##y,z,v), I[81] = (img)(_p1##x,_p2##y,z,v), I[82] = (img)(x,_p2##y,z,v), I[83] = (img)(_n1##x,_p2##y,z,v), I[84] = (img)(_n2##x,_p2##y,z,v), I[85] = (img)(_n3##x,_p2##y,z,v), I[86] = (img)(_n4##x,_p2##y,z,v), I[87] = (img)(_n5##x,_p2##y,z,v), I[88] = (img)(_n6##x,_p2##y,z,v), I[89] = (img)(_n7##x,_p2##y,z,v), \ 307.2339 + I[90] = (img)(_p7##x,_p1##y,z,v), I[91] = (img)(_p6##x,_p1##y,z,v), I[92] = (img)(_p5##x,_p1##y,z,v), I[93] = (img)(_p4##x,_p1##y,z,v), I[94] = (img)(_p3##x,_p1##y,z,v), I[95] = (img)(_p2##x,_p1##y,z,v), I[96] = (img)(_p1##x,_p1##y,z,v), I[97] = (img)(x,_p1##y,z,v), I[98] = (img)(_n1##x,_p1##y,z,v), I[99] = (img)(_n2##x,_p1##y,z,v), I[100] = (img)(_n3##x,_p1##y,z,v), I[101] = (img)(_n4##x,_p1##y,z,v), I[102] = (img)(_n5##x,_p1##y,z,v), I[103] = (img)(_n6##x,_p1##y,z,v), I[104] = (img)(_n7##x,_p1##y,z,v), \ 307.2340 + I[105] = (img)(_p7##x,y,z,v), I[106] = (img)(_p6##x,y,z,v), I[107] = (img)(_p5##x,y,z,v), I[108] = (img)(_p4##x,y,z,v), I[109] = (img)(_p3##x,y,z,v), I[110] = (img)(_p2##x,y,z,v), I[111] = (img)(_p1##x,y,z,v), I[112] = (img)(x,y,z,v), I[113] = (img)(_n1##x,y,z,v), I[114] = (img)(_n2##x,y,z,v), I[115] = (img)(_n3##x,y,z,v), I[116] = (img)(_n4##x,y,z,v), I[117] = (img)(_n5##x,y,z,v), I[118] = (img)(_n6##x,y,z,v), I[119] = (img)(_n7##x,y,z,v), \ 307.2341 + I[120] = (img)(_p7##x,_n1##y,z,v), I[121] = (img)(_p6##x,_n1##y,z,v), I[122] = (img)(_p5##x,_n1##y,z,v), I[123] = (img)(_p4##x,_n1##y,z,v), I[124] = (img)(_p3##x,_n1##y,z,v), I[125] = (img)(_p2##x,_n1##y,z,v), I[126] = (img)(_p1##x,_n1##y,z,v), I[127] = (img)(x,_n1##y,z,v), I[128] = (img)(_n1##x,_n1##y,z,v), I[129] = (img)(_n2##x,_n1##y,z,v), I[130] = (img)(_n3##x,_n1##y,z,v), I[131] = (img)(_n4##x,_n1##y,z,v), I[132] = (img)(_n5##x,_n1##y,z,v), I[133] = (img)(_n6##x,_n1##y,z,v), I[134] = (img)(_n7##x,_n1##y,z,v), \ 307.2342 + I[135] = (img)(_p7##x,_n2##y,z,v), I[136] = (img)(_p6##x,_n2##y,z,v), I[137] = (img)(_p5##x,_n2##y,z,v), I[138] = (img)(_p4##x,_n2##y,z,v), I[139] = (img)(_p3##x,_n2##y,z,v), I[140] = (img)(_p2##x,_n2##y,z,v), I[141] = (img)(_p1##x,_n2##y,z,v), I[142] = (img)(x,_n2##y,z,v), I[143] = (img)(_n1##x,_n2##y,z,v), I[144] = (img)(_n2##x,_n2##y,z,v), I[145] = (img)(_n3##x,_n2##y,z,v), I[146] = (img)(_n4##x,_n2##y,z,v), I[147] = (img)(_n5##x,_n2##y,z,v), I[148] = (img)(_n6##x,_n2##y,z,v), I[149] = (img)(_n7##x,_n2##y,z,v), \ 307.2343 + I[150] = (img)(_p7##x,_n3##y,z,v), I[151] = (img)(_p6##x,_n3##y,z,v), I[152] = (img)(_p5##x,_n3##y,z,v), I[153] = (img)(_p4##x,_n3##y,z,v), I[154] = (img)(_p3##x,_n3##y,z,v), I[155] = (img)(_p2##x,_n3##y,z,v), I[156] = (img)(_p1##x,_n3##y,z,v), I[157] = (img)(x,_n3##y,z,v), I[158] = (img)(_n1##x,_n3##y,z,v), I[159] = (img)(_n2##x,_n3##y,z,v), I[160] = (img)(_n3##x,_n3##y,z,v), I[161] = (img)(_n4##x,_n3##y,z,v), I[162] = (img)(_n5##x,_n3##y,z,v), I[163] = (img)(_n6##x,_n3##y,z,v), I[164] = (img)(_n7##x,_n3##y,z,v), \ 307.2344 + I[165] = (img)(_p7##x,_n4##y,z,v), I[166] = (img)(_p6##x,_n4##y,z,v), I[167] = (img)(_p5##x,_n4##y,z,v), I[168] = (img)(_p4##x,_n4##y,z,v), I[169] = (img)(_p3##x,_n4##y,z,v), I[170] = (img)(_p2##x,_n4##y,z,v), I[171] = (img)(_p1##x,_n4##y,z,v), I[172] = (img)(x,_n4##y,z,v), I[173] = (img)(_n1##x,_n4##y,z,v), I[174] = (img)(_n2##x,_n4##y,z,v), I[175] = (img)(_n3##x,_n4##y,z,v), I[176] = (img)(_n4##x,_n4##y,z,v), I[177] = (img)(_n5##x,_n4##y,z,v), I[178] = (img)(_n6##x,_n4##y,z,v), I[179] = (img)(_n7##x,_n4##y,z,v), \ 307.2345 + I[180] = (img)(_p7##x,_n5##y,z,v), I[181] = (img)(_p6##x,_n5##y,z,v), I[182] = (img)(_p5##x,_n5##y,z,v), I[183] = (img)(_p4##x,_n5##y,z,v), I[184] = (img)(_p3##x,_n5##y,z,v), I[185] = (img)(_p2##x,_n5##y,z,v), I[186] = (img)(_p1##x,_n5##y,z,v), I[187] = (img)(x,_n5##y,z,v), I[188] = (img)(_n1##x,_n5##y,z,v), I[189] = (img)(_n2##x,_n5##y,z,v), I[190] = (img)(_n3##x,_n5##y,z,v), I[191] = (img)(_n4##x,_n5##y,z,v), I[192] = (img)(_n5##x,_n5##y,z,v), I[193] = (img)(_n6##x,_n5##y,z,v), I[194] = (img)(_n7##x,_n5##y,z,v), \ 307.2346 + I[195] = (img)(_p7##x,_n6##y,z,v), I[196] = (img)(_p6##x,_n6##y,z,v), I[197] = (img)(_p5##x,_n6##y,z,v), I[198] = (img)(_p4##x,_n6##y,z,v), I[199] = (img)(_p3##x,_n6##y,z,v), I[200] = (img)(_p2##x,_n6##y,z,v), I[201] = (img)(_p1##x,_n6##y,z,v), I[202] = (img)(x,_n6##y,z,v), I[203] = (img)(_n1##x,_n6##y,z,v), I[204] = (img)(_n2##x,_n6##y,z,v), I[205] = (img)(_n3##x,_n6##y,z,v), I[206] = (img)(_n4##x,_n6##y,z,v), I[207] = (img)(_n5##x,_n6##y,z,v), I[208] = (img)(_n6##x,_n6##y,z,v), I[209] = (img)(_n7##x,_n6##y,z,v), \ 307.2347 + I[210] = (img)(_p7##x,_n7##y,z,v), I[211] = (img)(_p6##x,_n7##y,z,v), I[212] = (img)(_p5##x,_n7##y,z,v), I[213] = (img)(_p4##x,_n7##y,z,v), I[214] = (img)(_p3##x,_n7##y,z,v), I[215] = (img)(_p2##x,_n7##y,z,v), I[216] = (img)(_p1##x,_n7##y,z,v), I[217] = (img)(x,_n7##y,z,v), I[218] = (img)(_n1##x,_n7##y,z,v), I[219] = (img)(_n2##x,_n7##y,z,v), I[220] = (img)(_n3##x,_n7##y,z,v), I[221] = (img)(_n4##x,_n7##y,z,v), I[222] = (img)(_n5##x,_n7##y,z,v), I[223] = (img)(_n6##x,_n7##y,z,v), I[224] = (img)(_n7##x,_n7##y,z,v); 307.2348 + 307.2349 +// Define 16x16 loop macros for CImg 307.2350 +//---------------------------------- 307.2351 +#define cimg_for16(bound,i) for (int i = 0, \ 307.2352 + _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.2353 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.2354 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.2355 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.2356 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.2357 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.2358 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.2359 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.2360 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8; \ 307.2361 + _n8##i<(int)(bound) || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.2362 + i==(_n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.2363 + _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.2364 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i) 307.2365 + 307.2366 +#define cimg_for16X(img,x) cimg_for16((img).width,x) 307.2367 +#define cimg_for16Y(img,y) cimg_for16((img).height,y) 307.2368 +#define cimg_for16Z(img,z) cimg_for16((img).depth,z) 307.2369 +#define cimg_for16V(img,v) cimg_for16((img).dim,v) 307.2370 +#define cimg_for16XY(img,x,y) cimg_for16Y(img,y) cimg_for16X(img,x) 307.2371 +#define cimg_for16XZ(img,x,z) cimg_for16Z(img,z) cimg_for16X(img,x) 307.2372 +#define cimg_for16XV(img,x,v) cimg_for16V(img,v) cimg_for16X(img,x) 307.2373 +#define cimg_for16YZ(img,y,z) cimg_for16Z(img,z) cimg_for16Y(img,y) 307.2374 +#define cimg_for16YV(img,y,v) cimg_for16V(img,v) cimg_for16Y(img,y) 307.2375 +#define cimg_for16ZV(img,z,v) cimg_for16V(img,v) cimg_for16Z(img,z) 307.2376 +#define cimg_for16XYZ(img,x,y,z) cimg_for16Z(img,z) cimg_for16XY(img,x,y) 307.2377 +#define cimg_for16XZV(img,x,z,v) cimg_for16V(img,v) cimg_for16XZ(img,x,z) 307.2378 +#define cimg_for16YZV(img,y,z,v) cimg_for16V(img,v) cimg_for16YZ(img,y,z) 307.2379 +#define cimg_for16XYZV(img,x,y,z,v) cimg_for16V(img,v) cimg_for16XYZ(img,x,y,z) 307.2380 + 307.2381 +#define cimg_for_in16(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.2382 + _p7##i = i-7<0?0:i-7, \ 307.2383 + _p6##i = i-6<0?0:i-6, \ 307.2384 + _p5##i = i-5<0?0:i-5, \ 307.2385 + _p4##i = i-4<0?0:i-4, \ 307.2386 + _p3##i = i-3<0?0:i-3, \ 307.2387 + _p2##i = i-2<0?0:i-2, \ 307.2388 + _p1##i = i-1<0?0:i-1, \ 307.2389 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.2390 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.2391 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.2392 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.2393 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.2394 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.2395 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.2396 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8; \ 307.2397 + i<=(int)(i1) && (_n8##i<(int)(bound) || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.2398 + i==(_n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.2399 + _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.2400 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i) 307.2401 + 307.2402 +#define cimg_for_in16X(img,x0,x1,x) cimg_for_in16((img).width,x0,x1,x) 307.2403 +#define cimg_for_in16Y(img,y0,y1,y) cimg_for_in16((img).height,y0,y1,y) 307.2404 +#define cimg_for_in16Z(img,z0,z1,z) cimg_for_in16((img).depth,z0,z1,z) 307.2405 +#define cimg_for_in16V(img,v0,v1,v) cimg_for_in16((img).dim,v0,v1,v) 307.2406 +#define cimg_for_in16XY(img,x0,y0,x1,y1,x,y) cimg_for_in16Y(img,y0,y1,y) cimg_for_in16X(img,x0,x1,x) 307.2407 +#define cimg_for_in16XZ(img,x0,z0,x1,z1,x,z) cimg_for_in16Z(img,z0,z1,z) cimg_for_in16X(img,x0,x1,x) 307.2408 +#define cimg_for_in16XV(img,x0,v0,x1,v1,x,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16X(img,x0,x1,x) 307.2409 +#define cimg_for_in16YZ(img,y0,z0,y1,z1,y,z) cimg_for_in16Z(img,z0,z1,z) cimg_for_in16Y(img,y0,y1,y) 307.2410 +#define cimg_for_in16YV(img,y0,v0,y1,v1,y,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16Y(img,y0,y1,y) 307.2411 +#define cimg_for_in16ZV(img,z0,v0,z1,v1,z,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16Z(img,z0,z1,z) 307.2412 +#define cimg_for_in16XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in16Z(img,z0,z1,z) cimg_for_in16XY(img,x0,y0,x1,y1,x,y) 307.2413 +#define cimg_for_in16XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16XZ(img,x0,y0,x1,y1,x,z) 307.2414 +#define cimg_for_in16YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16YZ(img,y0,z0,y1,z1,y,z) 307.2415 +#define cimg_for_in16XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in16V(img,v0,v1,v) cimg_for_in16XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.2416 + 307.2417 +#define cimg_for16x16(img,x,y,z,v,I) \ 307.2418 + cimg_for16((img).height,y) for (int x = 0, \ 307.2419 + _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.2420 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.2421 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.2422 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.2423 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.2424 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.2425 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.2426 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.2427 + _n8##x = (int)( \ 307.2428 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = (img)(0,_p7##y,z,v)), \ 307.2429 + (I[16] = I[17] = I[18] = I[19] = I[20] = I[21] = I[22] = I[23] = (img)(0,_p6##y,z,v)), \ 307.2430 + (I[32] = I[33] = I[34] = I[35] = I[36] = I[37] = I[38] = I[39] = (img)(0,_p5##y,z,v)), \ 307.2431 + (I[48] = I[49] = I[50] = I[51] = I[52] = I[53] = I[54] = I[55] = (img)(0,_p4##y,z,v)), \ 307.2432 + (I[64] = I[65] = I[66] = I[67] = I[68] = I[69] = I[70] = I[71] = (img)(0,_p3##y,z,v)), \ 307.2433 + (I[80] = I[81] = I[82] = I[83] = I[84] = I[85] = I[86] = I[87] = (img)(0,_p2##y,z,v)), \ 307.2434 + (I[96] = I[97] = I[98] = I[99] = I[100] = I[101] = I[102] = I[103] = (img)(0,_p1##y,z,v)), \ 307.2435 + (I[112] = I[113] = I[114] = I[115] = I[116] = I[117] = I[118] = I[119] = (img)(0,y,z,v)), \ 307.2436 + (I[128] = I[129] = I[130] = I[131] = I[132] = I[133] = I[134] = I[135] = (img)(0,_n1##y,z,v)), \ 307.2437 + (I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = I[150] = I[151] = (img)(0,_n2##y,z,v)), \ 307.2438 + (I[160] = I[161] = I[162] = I[163] = I[164] = I[165] = I[166] = I[167] = (img)(0,_n3##y,z,v)), \ 307.2439 + (I[176] = I[177] = I[178] = I[179] = I[180] = I[181] = I[182] = I[183] = (img)(0,_n4##y,z,v)), \ 307.2440 + (I[192] = I[193] = I[194] = I[195] = I[196] = I[197] = I[198] = I[199] = (img)(0,_n5##y,z,v)), \ 307.2441 + (I[208] = I[209] = I[210] = I[211] = I[212] = I[213] = I[214] = I[215] = (img)(0,_n6##y,z,v)), \ 307.2442 + (I[224] = I[225] = I[226] = I[227] = I[228] = I[229] = I[230] = I[231] = (img)(0,_n7##y,z,v)), \ 307.2443 + (I[240] = I[241] = I[242] = I[243] = I[244] = I[245] = I[246] = I[247] = (img)(0,_n8##y,z,v)), \ 307.2444 + (I[8] = (img)(_n1##x,_p7##y,z,v)), \ 307.2445 + (I[24] = (img)(_n1##x,_p6##y,z,v)), \ 307.2446 + (I[40] = (img)(_n1##x,_p5##y,z,v)), \ 307.2447 + (I[56] = (img)(_n1##x,_p4##y,z,v)), \ 307.2448 + (I[72] = (img)(_n1##x,_p3##y,z,v)), \ 307.2449 + (I[88] = (img)(_n1##x,_p2##y,z,v)), \ 307.2450 + (I[104] = (img)(_n1##x,_p1##y,z,v)), \ 307.2451 + (I[120] = (img)(_n1##x,y,z,v)), \ 307.2452 + (I[136] = (img)(_n1##x,_n1##y,z,v)), \ 307.2453 + (I[152] = (img)(_n1##x,_n2##y,z,v)), \ 307.2454 + (I[168] = (img)(_n1##x,_n3##y,z,v)), \ 307.2455 + (I[184] = (img)(_n1##x,_n4##y,z,v)), \ 307.2456 + (I[200] = (img)(_n1##x,_n5##y,z,v)), \ 307.2457 + (I[216] = (img)(_n1##x,_n6##y,z,v)), \ 307.2458 + (I[232] = (img)(_n1##x,_n7##y,z,v)), \ 307.2459 + (I[248] = (img)(_n1##x,_n8##y,z,v)), \ 307.2460 + (I[9] = (img)(_n2##x,_p7##y,z,v)), \ 307.2461 + (I[25] = (img)(_n2##x,_p6##y,z,v)), \ 307.2462 + (I[41] = (img)(_n2##x,_p5##y,z,v)), \ 307.2463 + (I[57] = (img)(_n2##x,_p4##y,z,v)), \ 307.2464 + (I[73] = (img)(_n2##x,_p3##y,z,v)), \ 307.2465 + (I[89] = (img)(_n2##x,_p2##y,z,v)), \ 307.2466 + (I[105] = (img)(_n2##x,_p1##y,z,v)), \ 307.2467 + (I[121] = (img)(_n2##x,y,z,v)), \ 307.2468 + (I[137] = (img)(_n2##x,_n1##y,z,v)), \ 307.2469 + (I[153] = (img)(_n2##x,_n2##y,z,v)), \ 307.2470 + (I[169] = (img)(_n2##x,_n3##y,z,v)), \ 307.2471 + (I[185] = (img)(_n2##x,_n4##y,z,v)), \ 307.2472 + (I[201] = (img)(_n2##x,_n5##y,z,v)), \ 307.2473 + (I[217] = (img)(_n2##x,_n6##y,z,v)), \ 307.2474 + (I[233] = (img)(_n2##x,_n7##y,z,v)), \ 307.2475 + (I[249] = (img)(_n2##x,_n8##y,z,v)), \ 307.2476 + (I[10] = (img)(_n3##x,_p7##y,z,v)), \ 307.2477 + (I[26] = (img)(_n3##x,_p6##y,z,v)), \ 307.2478 + (I[42] = (img)(_n3##x,_p5##y,z,v)), \ 307.2479 + (I[58] = (img)(_n3##x,_p4##y,z,v)), \ 307.2480 + (I[74] = (img)(_n3##x,_p3##y,z,v)), \ 307.2481 + (I[90] = (img)(_n3##x,_p2##y,z,v)), \ 307.2482 + (I[106] = (img)(_n3##x,_p1##y,z,v)), \ 307.2483 + (I[122] = (img)(_n3##x,y,z,v)), \ 307.2484 + (I[138] = (img)(_n3##x,_n1##y,z,v)), \ 307.2485 + (I[154] = (img)(_n3##x,_n2##y,z,v)), \ 307.2486 + (I[170] = (img)(_n3##x,_n3##y,z,v)), \ 307.2487 + (I[186] = (img)(_n3##x,_n4##y,z,v)), \ 307.2488 + (I[202] = (img)(_n3##x,_n5##y,z,v)), \ 307.2489 + (I[218] = (img)(_n3##x,_n6##y,z,v)), \ 307.2490 + (I[234] = (img)(_n3##x,_n7##y,z,v)), \ 307.2491 + (I[250] = (img)(_n3##x,_n8##y,z,v)), \ 307.2492 + (I[11] = (img)(_n4##x,_p7##y,z,v)), \ 307.2493 + (I[27] = (img)(_n4##x,_p6##y,z,v)), \ 307.2494 + (I[43] = (img)(_n4##x,_p5##y,z,v)), \ 307.2495 + (I[59] = (img)(_n4##x,_p4##y,z,v)), \ 307.2496 + (I[75] = (img)(_n4##x,_p3##y,z,v)), \ 307.2497 + (I[91] = (img)(_n4##x,_p2##y,z,v)), \ 307.2498 + (I[107] = (img)(_n4##x,_p1##y,z,v)), \ 307.2499 + (I[123] = (img)(_n4##x,y,z,v)), \ 307.2500 + (I[139] = (img)(_n4##x,_n1##y,z,v)), \ 307.2501 + (I[155] = (img)(_n4##x,_n2##y,z,v)), \ 307.2502 + (I[171] = (img)(_n4##x,_n3##y,z,v)), \ 307.2503 + (I[187] = (img)(_n4##x,_n4##y,z,v)), \ 307.2504 + (I[203] = (img)(_n4##x,_n5##y,z,v)), \ 307.2505 + (I[219] = (img)(_n4##x,_n6##y,z,v)), \ 307.2506 + (I[235] = (img)(_n4##x,_n7##y,z,v)), \ 307.2507 + (I[251] = (img)(_n4##x,_n8##y,z,v)), \ 307.2508 + (I[12] = (img)(_n5##x,_p7##y,z,v)), \ 307.2509 + (I[28] = (img)(_n5##x,_p6##y,z,v)), \ 307.2510 + (I[44] = (img)(_n5##x,_p5##y,z,v)), \ 307.2511 + (I[60] = (img)(_n5##x,_p4##y,z,v)), \ 307.2512 + (I[76] = (img)(_n5##x,_p3##y,z,v)), \ 307.2513 + (I[92] = (img)(_n5##x,_p2##y,z,v)), \ 307.2514 + (I[108] = (img)(_n5##x,_p1##y,z,v)), \ 307.2515 + (I[124] = (img)(_n5##x,y,z,v)), \ 307.2516 + (I[140] = (img)(_n5##x,_n1##y,z,v)), \ 307.2517 + (I[156] = (img)(_n5##x,_n2##y,z,v)), \ 307.2518 + (I[172] = (img)(_n5##x,_n3##y,z,v)), \ 307.2519 + (I[188] = (img)(_n5##x,_n4##y,z,v)), \ 307.2520 + (I[204] = (img)(_n5##x,_n5##y,z,v)), \ 307.2521 + (I[220] = (img)(_n5##x,_n6##y,z,v)), \ 307.2522 + (I[236] = (img)(_n5##x,_n7##y,z,v)), \ 307.2523 + (I[252] = (img)(_n5##x,_n8##y,z,v)), \ 307.2524 + (I[13] = (img)(_n6##x,_p7##y,z,v)), \ 307.2525 + (I[29] = (img)(_n6##x,_p6##y,z,v)), \ 307.2526 + (I[45] = (img)(_n6##x,_p5##y,z,v)), \ 307.2527 + (I[61] = (img)(_n6##x,_p4##y,z,v)), \ 307.2528 + (I[77] = (img)(_n6##x,_p3##y,z,v)), \ 307.2529 + (I[93] = (img)(_n6##x,_p2##y,z,v)), \ 307.2530 + (I[109] = (img)(_n6##x,_p1##y,z,v)), \ 307.2531 + (I[125] = (img)(_n6##x,y,z,v)), \ 307.2532 + (I[141] = (img)(_n6##x,_n1##y,z,v)), \ 307.2533 + (I[157] = (img)(_n6##x,_n2##y,z,v)), \ 307.2534 + (I[173] = (img)(_n6##x,_n3##y,z,v)), \ 307.2535 + (I[189] = (img)(_n6##x,_n4##y,z,v)), \ 307.2536 + (I[205] = (img)(_n6##x,_n5##y,z,v)), \ 307.2537 + (I[221] = (img)(_n6##x,_n6##y,z,v)), \ 307.2538 + (I[237] = (img)(_n6##x,_n7##y,z,v)), \ 307.2539 + (I[253] = (img)(_n6##x,_n8##y,z,v)), \ 307.2540 + (I[14] = (img)(_n7##x,_p7##y,z,v)), \ 307.2541 + (I[30] = (img)(_n7##x,_p6##y,z,v)), \ 307.2542 + (I[46] = (img)(_n7##x,_p5##y,z,v)), \ 307.2543 + (I[62] = (img)(_n7##x,_p4##y,z,v)), \ 307.2544 + (I[78] = (img)(_n7##x,_p3##y,z,v)), \ 307.2545 + (I[94] = (img)(_n7##x,_p2##y,z,v)), \ 307.2546 + (I[110] = (img)(_n7##x,_p1##y,z,v)), \ 307.2547 + (I[126] = (img)(_n7##x,y,z,v)), \ 307.2548 + (I[142] = (img)(_n7##x,_n1##y,z,v)), \ 307.2549 + (I[158] = (img)(_n7##x,_n2##y,z,v)), \ 307.2550 + (I[174] = (img)(_n7##x,_n3##y,z,v)), \ 307.2551 + (I[190] = (img)(_n7##x,_n4##y,z,v)), \ 307.2552 + (I[206] = (img)(_n7##x,_n5##y,z,v)), \ 307.2553 + (I[222] = (img)(_n7##x,_n6##y,z,v)), \ 307.2554 + (I[238] = (img)(_n7##x,_n7##y,z,v)), \ 307.2555 + (I[254] = (img)(_n7##x,_n8##y,z,v)), \ 307.2556 + 8>=((img).width)?(int)((img).width)-1:8); \ 307.2557 + (_n8##x<(int)((img).width) && ( \ 307.2558 + (I[15] = (img)(_n8##x,_p7##y,z,v)), \ 307.2559 + (I[31] = (img)(_n8##x,_p6##y,z,v)), \ 307.2560 + (I[47] = (img)(_n8##x,_p5##y,z,v)), \ 307.2561 + (I[63] = (img)(_n8##x,_p4##y,z,v)), \ 307.2562 + (I[79] = (img)(_n8##x,_p3##y,z,v)), \ 307.2563 + (I[95] = (img)(_n8##x,_p2##y,z,v)), \ 307.2564 + (I[111] = (img)(_n8##x,_p1##y,z,v)), \ 307.2565 + (I[127] = (img)(_n8##x,y,z,v)), \ 307.2566 + (I[143] = (img)(_n8##x,_n1##y,z,v)), \ 307.2567 + (I[159] = (img)(_n8##x,_n2##y,z,v)), \ 307.2568 + (I[175] = (img)(_n8##x,_n3##y,z,v)), \ 307.2569 + (I[191] = (img)(_n8##x,_n4##y,z,v)), \ 307.2570 + (I[207] = (img)(_n8##x,_n5##y,z,v)), \ 307.2571 + (I[223] = (img)(_n8##x,_n6##y,z,v)), \ 307.2572 + (I[239] = (img)(_n8##x,_n7##y,z,v)), \ 307.2573 + (I[255] = (img)(_n8##x,_n8##y,z,v)),1)) || \ 307.2574 + _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.2575 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.2576 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.2577 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.2578 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.2579 + I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.2580 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.2581 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.2582 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], \ 307.2583 + I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.2584 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.2585 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.2586 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.2587 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], \ 307.2588 + I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.2589 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.2590 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], \ 307.2591 + _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x) 307.2592 + 307.2593 +#define cimg_for_in16x16(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.2594 + cimg_for_in16((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.2595 + _p7##x = x-7<0?0:x-7, \ 307.2596 + _p6##x = x-6<0?0:x-6, \ 307.2597 + _p5##x = x-5<0?0:x-5, \ 307.2598 + _p4##x = x-4<0?0:x-4, \ 307.2599 + _p3##x = x-3<0?0:x-3, \ 307.2600 + _p2##x = x-2<0?0:x-2, \ 307.2601 + _p1##x = x-1<0?0:x-1, \ 307.2602 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.2603 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.2604 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.2605 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.2606 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.2607 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.2608 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.2609 + _n8##x = (int)( \ 307.2610 + (I[0] = (img)(_p7##x,_p7##y,z,v)), \ 307.2611 + (I[16] = (img)(_p7##x,_p6##y,z,v)), \ 307.2612 + (I[32] = (img)(_p7##x,_p5##y,z,v)), \ 307.2613 + (I[48] = (img)(_p7##x,_p4##y,z,v)), \ 307.2614 + (I[64] = (img)(_p7##x,_p3##y,z,v)), \ 307.2615 + (I[80] = (img)(_p7##x,_p2##y,z,v)), \ 307.2616 + (I[96] = (img)(_p7##x,_p1##y,z,v)), \ 307.2617 + (I[112] = (img)(_p7##x,y,z,v)), \ 307.2618 + (I[128] = (img)(_p7##x,_n1##y,z,v)), \ 307.2619 + (I[144] = (img)(_p7##x,_n2##y,z,v)), \ 307.2620 + (I[160] = (img)(_p7##x,_n3##y,z,v)), \ 307.2621 + (I[176] = (img)(_p7##x,_n4##y,z,v)), \ 307.2622 + (I[192] = (img)(_p7##x,_n5##y,z,v)), \ 307.2623 + (I[208] = (img)(_p7##x,_n6##y,z,v)), \ 307.2624 + (I[224] = (img)(_p7##x,_n7##y,z,v)), \ 307.2625 + (I[240] = (img)(_p7##x,_n8##y,z,v)), \ 307.2626 + (I[1] = (img)(_p6##x,_p7##y,z,v)), \ 307.2627 + (I[17] = (img)(_p6##x,_p6##y,z,v)), \ 307.2628 + (I[33] = (img)(_p6##x,_p5##y,z,v)), \ 307.2629 + (I[49] = (img)(_p6##x,_p4##y,z,v)), \ 307.2630 + (I[65] = (img)(_p6##x,_p3##y,z,v)), \ 307.2631 + (I[81] = (img)(_p6##x,_p2##y,z,v)), \ 307.2632 + (I[97] = (img)(_p6##x,_p1##y,z,v)), \ 307.2633 + (I[113] = (img)(_p6##x,y,z,v)), \ 307.2634 + (I[129] = (img)(_p6##x,_n1##y,z,v)), \ 307.2635 + (I[145] = (img)(_p6##x,_n2##y,z,v)), \ 307.2636 + (I[161] = (img)(_p6##x,_n3##y,z,v)), \ 307.2637 + (I[177] = (img)(_p6##x,_n4##y,z,v)), \ 307.2638 + (I[193] = (img)(_p6##x,_n5##y,z,v)), \ 307.2639 + (I[209] = (img)(_p6##x,_n6##y,z,v)), \ 307.2640 + (I[225] = (img)(_p6##x,_n7##y,z,v)), \ 307.2641 + (I[241] = (img)(_p6##x,_n8##y,z,v)), \ 307.2642 + (I[2] = (img)(_p5##x,_p7##y,z,v)), \ 307.2643 + (I[18] = (img)(_p5##x,_p6##y,z,v)), \ 307.2644 + (I[34] = (img)(_p5##x,_p5##y,z,v)), \ 307.2645 + (I[50] = (img)(_p5##x,_p4##y,z,v)), \ 307.2646 + (I[66] = (img)(_p5##x,_p3##y,z,v)), \ 307.2647 + (I[82] = (img)(_p5##x,_p2##y,z,v)), \ 307.2648 + (I[98] = (img)(_p5##x,_p1##y,z,v)), \ 307.2649 + (I[114] = (img)(_p5##x,y,z,v)), \ 307.2650 + (I[130] = (img)(_p5##x,_n1##y,z,v)), \ 307.2651 + (I[146] = (img)(_p5##x,_n2##y,z,v)), \ 307.2652 + (I[162] = (img)(_p5##x,_n3##y,z,v)), \ 307.2653 + (I[178] = (img)(_p5##x,_n4##y,z,v)), \ 307.2654 + (I[194] = (img)(_p5##x,_n5##y,z,v)), \ 307.2655 + (I[210] = (img)(_p5##x,_n6##y,z,v)), \ 307.2656 + (I[226] = (img)(_p5##x,_n7##y,z,v)), \ 307.2657 + (I[242] = (img)(_p5##x,_n8##y,z,v)), \ 307.2658 + (I[3] = (img)(_p4##x,_p7##y,z,v)), \ 307.2659 + (I[19] = (img)(_p4##x,_p6##y,z,v)), \ 307.2660 + (I[35] = (img)(_p4##x,_p5##y,z,v)), \ 307.2661 + (I[51] = (img)(_p4##x,_p4##y,z,v)), \ 307.2662 + (I[67] = (img)(_p4##x,_p3##y,z,v)), \ 307.2663 + (I[83] = (img)(_p4##x,_p2##y,z,v)), \ 307.2664 + (I[99] = (img)(_p4##x,_p1##y,z,v)), \ 307.2665 + (I[115] = (img)(_p4##x,y,z,v)), \ 307.2666 + (I[131] = (img)(_p4##x,_n1##y,z,v)), \ 307.2667 + (I[147] = (img)(_p4##x,_n2##y,z,v)), \ 307.2668 + (I[163] = (img)(_p4##x,_n3##y,z,v)), \ 307.2669 + (I[179] = (img)(_p4##x,_n4##y,z,v)), \ 307.2670 + (I[195] = (img)(_p4##x,_n5##y,z,v)), \ 307.2671 + (I[211] = (img)(_p4##x,_n6##y,z,v)), \ 307.2672 + (I[227] = (img)(_p4##x,_n7##y,z,v)), \ 307.2673 + (I[243] = (img)(_p4##x,_n8##y,z,v)), \ 307.2674 + (I[4] = (img)(_p3##x,_p7##y,z,v)), \ 307.2675 + (I[20] = (img)(_p3##x,_p6##y,z,v)), \ 307.2676 + (I[36] = (img)(_p3##x,_p5##y,z,v)), \ 307.2677 + (I[52] = (img)(_p3##x,_p4##y,z,v)), \ 307.2678 + (I[68] = (img)(_p3##x,_p3##y,z,v)), \ 307.2679 + (I[84] = (img)(_p3##x,_p2##y,z,v)), \ 307.2680 + (I[100] = (img)(_p3##x,_p1##y,z,v)), \ 307.2681 + (I[116] = (img)(_p3##x,y,z,v)), \ 307.2682 + (I[132] = (img)(_p3##x,_n1##y,z,v)), \ 307.2683 + (I[148] = (img)(_p3##x,_n2##y,z,v)), \ 307.2684 + (I[164] = (img)(_p3##x,_n3##y,z,v)), \ 307.2685 + (I[180] = (img)(_p3##x,_n4##y,z,v)), \ 307.2686 + (I[196] = (img)(_p3##x,_n5##y,z,v)), \ 307.2687 + (I[212] = (img)(_p3##x,_n6##y,z,v)), \ 307.2688 + (I[228] = (img)(_p3##x,_n7##y,z,v)), \ 307.2689 + (I[244] = (img)(_p3##x,_n8##y,z,v)), \ 307.2690 + (I[5] = (img)(_p2##x,_p7##y,z,v)), \ 307.2691 + (I[21] = (img)(_p2##x,_p6##y,z,v)), \ 307.2692 + (I[37] = (img)(_p2##x,_p5##y,z,v)), \ 307.2693 + (I[53] = (img)(_p2##x,_p4##y,z,v)), \ 307.2694 + (I[69] = (img)(_p2##x,_p3##y,z,v)), \ 307.2695 + (I[85] = (img)(_p2##x,_p2##y,z,v)), \ 307.2696 + (I[101] = (img)(_p2##x,_p1##y,z,v)), \ 307.2697 + (I[117] = (img)(_p2##x,y,z,v)), \ 307.2698 + (I[133] = (img)(_p2##x,_n1##y,z,v)), \ 307.2699 + (I[149] = (img)(_p2##x,_n2##y,z,v)), \ 307.2700 + (I[165] = (img)(_p2##x,_n3##y,z,v)), \ 307.2701 + (I[181] = (img)(_p2##x,_n4##y,z,v)), \ 307.2702 + (I[197] = (img)(_p2##x,_n5##y,z,v)), \ 307.2703 + (I[213] = (img)(_p2##x,_n6##y,z,v)), \ 307.2704 + (I[229] = (img)(_p2##x,_n7##y,z,v)), \ 307.2705 + (I[245] = (img)(_p2##x,_n8##y,z,v)), \ 307.2706 + (I[6] = (img)(_p1##x,_p7##y,z,v)), \ 307.2707 + (I[22] = (img)(_p1##x,_p6##y,z,v)), \ 307.2708 + (I[38] = (img)(_p1##x,_p5##y,z,v)), \ 307.2709 + (I[54] = (img)(_p1##x,_p4##y,z,v)), \ 307.2710 + (I[70] = (img)(_p1##x,_p3##y,z,v)), \ 307.2711 + (I[86] = (img)(_p1##x,_p2##y,z,v)), \ 307.2712 + (I[102] = (img)(_p1##x,_p1##y,z,v)), \ 307.2713 + (I[118] = (img)(_p1##x,y,z,v)), \ 307.2714 + (I[134] = (img)(_p1##x,_n1##y,z,v)), \ 307.2715 + (I[150] = (img)(_p1##x,_n2##y,z,v)), \ 307.2716 + (I[166] = (img)(_p1##x,_n3##y,z,v)), \ 307.2717 + (I[182] = (img)(_p1##x,_n4##y,z,v)), \ 307.2718 + (I[198] = (img)(_p1##x,_n5##y,z,v)), \ 307.2719 + (I[214] = (img)(_p1##x,_n6##y,z,v)), \ 307.2720 + (I[230] = (img)(_p1##x,_n7##y,z,v)), \ 307.2721 + (I[246] = (img)(_p1##x,_n8##y,z,v)), \ 307.2722 + (I[7] = (img)(x,_p7##y,z,v)), \ 307.2723 + (I[23] = (img)(x,_p6##y,z,v)), \ 307.2724 + (I[39] = (img)(x,_p5##y,z,v)), \ 307.2725 + (I[55] = (img)(x,_p4##y,z,v)), \ 307.2726 + (I[71] = (img)(x,_p3##y,z,v)), \ 307.2727 + (I[87] = (img)(x,_p2##y,z,v)), \ 307.2728 + (I[103] = (img)(x,_p1##y,z,v)), \ 307.2729 + (I[119] = (img)(x,y,z,v)), \ 307.2730 + (I[135] = (img)(x,_n1##y,z,v)), \ 307.2731 + (I[151] = (img)(x,_n2##y,z,v)), \ 307.2732 + (I[167] = (img)(x,_n3##y,z,v)), \ 307.2733 + (I[183] = (img)(x,_n4##y,z,v)), \ 307.2734 + (I[199] = (img)(x,_n5##y,z,v)), \ 307.2735 + (I[215] = (img)(x,_n6##y,z,v)), \ 307.2736 + (I[231] = (img)(x,_n7##y,z,v)), \ 307.2737 + (I[247] = (img)(x,_n8##y,z,v)), \ 307.2738 + (I[8] = (img)(_n1##x,_p7##y,z,v)), \ 307.2739 + (I[24] = (img)(_n1##x,_p6##y,z,v)), \ 307.2740 + (I[40] = (img)(_n1##x,_p5##y,z,v)), \ 307.2741 + (I[56] = (img)(_n1##x,_p4##y,z,v)), \ 307.2742 + (I[72] = (img)(_n1##x,_p3##y,z,v)), \ 307.2743 + (I[88] = (img)(_n1##x,_p2##y,z,v)), \ 307.2744 + (I[104] = (img)(_n1##x,_p1##y,z,v)), \ 307.2745 + (I[120] = (img)(_n1##x,y,z,v)), \ 307.2746 + (I[136] = (img)(_n1##x,_n1##y,z,v)), \ 307.2747 + (I[152] = (img)(_n1##x,_n2##y,z,v)), \ 307.2748 + (I[168] = (img)(_n1##x,_n3##y,z,v)), \ 307.2749 + (I[184] = (img)(_n1##x,_n4##y,z,v)), \ 307.2750 + (I[200] = (img)(_n1##x,_n5##y,z,v)), \ 307.2751 + (I[216] = (img)(_n1##x,_n6##y,z,v)), \ 307.2752 + (I[232] = (img)(_n1##x,_n7##y,z,v)), \ 307.2753 + (I[248] = (img)(_n1##x,_n8##y,z,v)), \ 307.2754 + (I[9] = (img)(_n2##x,_p7##y,z,v)), \ 307.2755 + (I[25] = (img)(_n2##x,_p6##y,z,v)), \ 307.2756 + (I[41] = (img)(_n2##x,_p5##y,z,v)), \ 307.2757 + (I[57] = (img)(_n2##x,_p4##y,z,v)), \ 307.2758 + (I[73] = (img)(_n2##x,_p3##y,z,v)), \ 307.2759 + (I[89] = (img)(_n2##x,_p2##y,z,v)), \ 307.2760 + (I[105] = (img)(_n2##x,_p1##y,z,v)), \ 307.2761 + (I[121] = (img)(_n2##x,y,z,v)), \ 307.2762 + (I[137] = (img)(_n2##x,_n1##y,z,v)), \ 307.2763 + (I[153] = (img)(_n2##x,_n2##y,z,v)), \ 307.2764 + (I[169] = (img)(_n2##x,_n3##y,z,v)), \ 307.2765 + (I[185] = (img)(_n2##x,_n4##y,z,v)), \ 307.2766 + (I[201] = (img)(_n2##x,_n5##y,z,v)), \ 307.2767 + (I[217] = (img)(_n2##x,_n6##y,z,v)), \ 307.2768 + (I[233] = (img)(_n2##x,_n7##y,z,v)), \ 307.2769 + (I[249] = (img)(_n2##x,_n8##y,z,v)), \ 307.2770 + (I[10] = (img)(_n3##x,_p7##y,z,v)), \ 307.2771 + (I[26] = (img)(_n3##x,_p6##y,z,v)), \ 307.2772 + (I[42] = (img)(_n3##x,_p5##y,z,v)), \ 307.2773 + (I[58] = (img)(_n3##x,_p4##y,z,v)), \ 307.2774 + (I[74] = (img)(_n3##x,_p3##y,z,v)), \ 307.2775 + (I[90] = (img)(_n3##x,_p2##y,z,v)), \ 307.2776 + (I[106] = (img)(_n3##x,_p1##y,z,v)), \ 307.2777 + (I[122] = (img)(_n3##x,y,z,v)), \ 307.2778 + (I[138] = (img)(_n3##x,_n1##y,z,v)), \ 307.2779 + (I[154] = (img)(_n3##x,_n2##y,z,v)), \ 307.2780 + (I[170] = (img)(_n3##x,_n3##y,z,v)), \ 307.2781 + (I[186] = (img)(_n3##x,_n4##y,z,v)), \ 307.2782 + (I[202] = (img)(_n3##x,_n5##y,z,v)), \ 307.2783 + (I[218] = (img)(_n3##x,_n6##y,z,v)), \ 307.2784 + (I[234] = (img)(_n3##x,_n7##y,z,v)), \ 307.2785 + (I[250] = (img)(_n3##x,_n8##y,z,v)), \ 307.2786 + (I[11] = (img)(_n4##x,_p7##y,z,v)), \ 307.2787 + (I[27] = (img)(_n4##x,_p6##y,z,v)), \ 307.2788 + (I[43] = (img)(_n4##x,_p5##y,z,v)), \ 307.2789 + (I[59] = (img)(_n4##x,_p4##y,z,v)), \ 307.2790 + (I[75] = (img)(_n4##x,_p3##y,z,v)), \ 307.2791 + (I[91] = (img)(_n4##x,_p2##y,z,v)), \ 307.2792 + (I[107] = (img)(_n4##x,_p1##y,z,v)), \ 307.2793 + (I[123] = (img)(_n4##x,y,z,v)), \ 307.2794 + (I[139] = (img)(_n4##x,_n1##y,z,v)), \ 307.2795 + (I[155] = (img)(_n4##x,_n2##y,z,v)), \ 307.2796 + (I[171] = (img)(_n4##x,_n3##y,z,v)), \ 307.2797 + (I[187] = (img)(_n4##x,_n4##y,z,v)), \ 307.2798 + (I[203] = (img)(_n4##x,_n5##y,z,v)), \ 307.2799 + (I[219] = (img)(_n4##x,_n6##y,z,v)), \ 307.2800 + (I[235] = (img)(_n4##x,_n7##y,z,v)), \ 307.2801 + (I[251] = (img)(_n4##x,_n8##y,z,v)), \ 307.2802 + (I[12] = (img)(_n5##x,_p7##y,z,v)), \ 307.2803 + (I[28] = (img)(_n5##x,_p6##y,z,v)), \ 307.2804 + (I[44] = (img)(_n5##x,_p5##y,z,v)), \ 307.2805 + (I[60] = (img)(_n5##x,_p4##y,z,v)), \ 307.2806 + (I[76] = (img)(_n5##x,_p3##y,z,v)), \ 307.2807 + (I[92] = (img)(_n5##x,_p2##y,z,v)), \ 307.2808 + (I[108] = (img)(_n5##x,_p1##y,z,v)), \ 307.2809 + (I[124] = (img)(_n5##x,y,z,v)), \ 307.2810 + (I[140] = (img)(_n5##x,_n1##y,z,v)), \ 307.2811 + (I[156] = (img)(_n5##x,_n2##y,z,v)), \ 307.2812 + (I[172] = (img)(_n5##x,_n3##y,z,v)), \ 307.2813 + (I[188] = (img)(_n5##x,_n4##y,z,v)), \ 307.2814 + (I[204] = (img)(_n5##x,_n5##y,z,v)), \ 307.2815 + (I[220] = (img)(_n5##x,_n6##y,z,v)), \ 307.2816 + (I[236] = (img)(_n5##x,_n7##y,z,v)), \ 307.2817 + (I[252] = (img)(_n5##x,_n8##y,z,v)), \ 307.2818 + (I[13] = (img)(_n6##x,_p7##y,z,v)), \ 307.2819 + (I[29] = (img)(_n6##x,_p6##y,z,v)), \ 307.2820 + (I[45] = (img)(_n6##x,_p5##y,z,v)), \ 307.2821 + (I[61] = (img)(_n6##x,_p4##y,z,v)), \ 307.2822 + (I[77] = (img)(_n6##x,_p3##y,z,v)), \ 307.2823 + (I[93] = (img)(_n6##x,_p2##y,z,v)), \ 307.2824 + (I[109] = (img)(_n6##x,_p1##y,z,v)), \ 307.2825 + (I[125] = (img)(_n6##x,y,z,v)), \ 307.2826 + (I[141] = (img)(_n6##x,_n1##y,z,v)), \ 307.2827 + (I[157] = (img)(_n6##x,_n2##y,z,v)), \ 307.2828 + (I[173] = (img)(_n6##x,_n3##y,z,v)), \ 307.2829 + (I[189] = (img)(_n6##x,_n4##y,z,v)), \ 307.2830 + (I[205] = (img)(_n6##x,_n5##y,z,v)), \ 307.2831 + (I[221] = (img)(_n6##x,_n6##y,z,v)), \ 307.2832 + (I[237] = (img)(_n6##x,_n7##y,z,v)), \ 307.2833 + (I[253] = (img)(_n6##x,_n8##y,z,v)), \ 307.2834 + (I[14] = (img)(_n7##x,_p7##y,z,v)), \ 307.2835 + (I[30] = (img)(_n7##x,_p6##y,z,v)), \ 307.2836 + (I[46] = (img)(_n7##x,_p5##y,z,v)), \ 307.2837 + (I[62] = (img)(_n7##x,_p4##y,z,v)), \ 307.2838 + (I[78] = (img)(_n7##x,_p3##y,z,v)), \ 307.2839 + (I[94] = (img)(_n7##x,_p2##y,z,v)), \ 307.2840 + (I[110] = (img)(_n7##x,_p1##y,z,v)), \ 307.2841 + (I[126] = (img)(_n7##x,y,z,v)), \ 307.2842 + (I[142] = (img)(_n7##x,_n1##y,z,v)), \ 307.2843 + (I[158] = (img)(_n7##x,_n2##y,z,v)), \ 307.2844 + (I[174] = (img)(_n7##x,_n3##y,z,v)), \ 307.2845 + (I[190] = (img)(_n7##x,_n4##y,z,v)), \ 307.2846 + (I[206] = (img)(_n7##x,_n5##y,z,v)), \ 307.2847 + (I[222] = (img)(_n7##x,_n6##y,z,v)), \ 307.2848 + (I[238] = (img)(_n7##x,_n7##y,z,v)), \ 307.2849 + (I[254] = (img)(_n7##x,_n8##y,z,v)), \ 307.2850 + x+8>=(int)((img).width)?(int)((img).width)-1:x+8); \ 307.2851 + x<=(int)(x1) && ((_n8##x<(int)((img).width) && ( \ 307.2852 + (I[15] = (img)(_n8##x,_p7##y,z,v)), \ 307.2853 + (I[31] = (img)(_n8##x,_p6##y,z,v)), \ 307.2854 + (I[47] = (img)(_n8##x,_p5##y,z,v)), \ 307.2855 + (I[63] = (img)(_n8##x,_p4##y,z,v)), \ 307.2856 + (I[79] = (img)(_n8##x,_p3##y,z,v)), \ 307.2857 + (I[95] = (img)(_n8##x,_p2##y,z,v)), \ 307.2858 + (I[111] = (img)(_n8##x,_p1##y,z,v)), \ 307.2859 + (I[127] = (img)(_n8##x,y,z,v)), \ 307.2860 + (I[143] = (img)(_n8##x,_n1##y,z,v)), \ 307.2861 + (I[159] = (img)(_n8##x,_n2##y,z,v)), \ 307.2862 + (I[175] = (img)(_n8##x,_n3##y,z,v)), \ 307.2863 + (I[191] = (img)(_n8##x,_n4##y,z,v)), \ 307.2864 + (I[207] = (img)(_n8##x,_n5##y,z,v)), \ 307.2865 + (I[223] = (img)(_n8##x,_n6##y,z,v)), \ 307.2866 + (I[239] = (img)(_n8##x,_n7##y,z,v)), \ 307.2867 + (I[255] = (img)(_n8##x,_n8##y,z,v)),1)) || \ 307.2868 + _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.2869 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.2870 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.2871 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.2872 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.2873 + I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.2874 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.2875 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.2876 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], \ 307.2877 + I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.2878 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.2879 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.2880 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.2881 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], \ 307.2882 + I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.2883 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.2884 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], \ 307.2885 + _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x) 307.2886 + 307.2887 +#define cimg_get16x16(img,x,y,z,v,I) \ 307.2888 + I[0] = (img)(_p7##x,_p7##y,z,v), I[1] = (img)(_p6##x,_p7##y,z,v), I[2] = (img)(_p5##x,_p7##y,z,v), I[3] = (img)(_p4##x,_p7##y,z,v), I[4] = (img)(_p3##x,_p7##y,z,v), I[5] = (img)(_p2##x,_p7##y,z,v), I[6] = (img)(_p1##x,_p7##y,z,v), I[7] = (img)(x,_p7##y,z,v), I[8] = (img)(_n1##x,_p7##y,z,v), I[9] = (img)(_n2##x,_p7##y,z,v), I[10] = (img)(_n3##x,_p7##y,z,v), I[11] = (img)(_n4##x,_p7##y,z,v), I[12] = (img)(_n5##x,_p7##y,z,v), I[13] = (img)(_n6##x,_p7##y,z,v), I[14] = (img)(_n7##x,_p7##y,z,v), I[15] = (img)(_n8##x,_p7##y,z,v), \ 307.2889 + I[16] = (img)(_p7##x,_p6##y,z,v), I[17] = (img)(_p6##x,_p6##y,z,v), I[18] = (img)(_p5##x,_p6##y,z,v), I[19] = (img)(_p4##x,_p6##y,z,v), I[20] = (img)(_p3##x,_p6##y,z,v), I[21] = (img)(_p2##x,_p6##y,z,v), I[22] = (img)(_p1##x,_p6##y,z,v), I[23] = (img)(x,_p6##y,z,v), I[24] = (img)(_n1##x,_p6##y,z,v), I[25] = (img)(_n2##x,_p6##y,z,v), I[26] = (img)(_n3##x,_p6##y,z,v), I[27] = (img)(_n4##x,_p6##y,z,v), I[28] = (img)(_n5##x,_p6##y,z,v), I[29] = (img)(_n6##x,_p6##y,z,v), I[30] = (img)(_n7##x,_p6##y,z,v), I[31] = (img)(_n8##x,_p6##y,z,v), \ 307.2890 + I[32] = (img)(_p7##x,_p5##y,z,v), I[33] = (img)(_p6##x,_p5##y,z,v), I[34] = (img)(_p5##x,_p5##y,z,v), I[35] = (img)(_p4##x,_p5##y,z,v), I[36] = (img)(_p3##x,_p5##y,z,v), I[37] = (img)(_p2##x,_p5##y,z,v), I[38] = (img)(_p1##x,_p5##y,z,v), I[39] = (img)(x,_p5##y,z,v), I[40] = (img)(_n1##x,_p5##y,z,v), I[41] = (img)(_n2##x,_p5##y,z,v), I[42] = (img)(_n3##x,_p5##y,z,v), I[43] = (img)(_n4##x,_p5##y,z,v), I[44] = (img)(_n5##x,_p5##y,z,v), I[45] = (img)(_n6##x,_p5##y,z,v), I[46] = (img)(_n7##x,_p5##y,z,v), I[47] = (img)(_n8##x,_p5##y,z,v), \ 307.2891 + I[48] = (img)(_p7##x,_p4##y,z,v), I[49] = (img)(_p6##x,_p4##y,z,v), I[50] = (img)(_p5##x,_p4##y,z,v), I[51] = (img)(_p4##x,_p4##y,z,v), I[52] = (img)(_p3##x,_p4##y,z,v), I[53] = (img)(_p2##x,_p4##y,z,v), I[54] = (img)(_p1##x,_p4##y,z,v), I[55] = (img)(x,_p4##y,z,v), I[56] = (img)(_n1##x,_p4##y,z,v), I[57] = (img)(_n2##x,_p4##y,z,v), I[58] = (img)(_n3##x,_p4##y,z,v), I[59] = (img)(_n4##x,_p4##y,z,v), I[60] = (img)(_n5##x,_p4##y,z,v), I[61] = (img)(_n6##x,_p4##y,z,v), I[62] = (img)(_n7##x,_p4##y,z,v), I[63] = (img)(_n8##x,_p4##y,z,v), \ 307.2892 + I[64] = (img)(_p7##x,_p3##y,z,v), I[65] = (img)(_p6##x,_p3##y,z,v), I[66] = (img)(_p5##x,_p3##y,z,v), I[67] = (img)(_p4##x,_p3##y,z,v), I[68] = (img)(_p3##x,_p3##y,z,v), I[69] = (img)(_p2##x,_p3##y,z,v), I[70] = (img)(_p1##x,_p3##y,z,v), I[71] = (img)(x,_p3##y,z,v), I[72] = (img)(_n1##x,_p3##y,z,v), I[73] = (img)(_n2##x,_p3##y,z,v), I[74] = (img)(_n3##x,_p3##y,z,v), I[75] = (img)(_n4##x,_p3##y,z,v), I[76] = (img)(_n5##x,_p3##y,z,v), I[77] = (img)(_n6##x,_p3##y,z,v), I[78] = (img)(_n7##x,_p3##y,z,v), I[79] = (img)(_n8##x,_p3##y,z,v), \ 307.2893 + I[80] = (img)(_p7##x,_p2##y,z,v), I[81] = (img)(_p6##x,_p2##y,z,v), I[82] = (img)(_p5##x,_p2##y,z,v), I[83] = (img)(_p4##x,_p2##y,z,v), I[84] = (img)(_p3##x,_p2##y,z,v), I[85] = (img)(_p2##x,_p2##y,z,v), I[86] = (img)(_p1##x,_p2##y,z,v), I[87] = (img)(x,_p2##y,z,v), I[88] = (img)(_n1##x,_p2##y,z,v), I[89] = (img)(_n2##x,_p2##y,z,v), I[90] = (img)(_n3##x,_p2##y,z,v), I[91] = (img)(_n4##x,_p2##y,z,v), I[92] = (img)(_n5##x,_p2##y,z,v), I[93] = (img)(_n6##x,_p2##y,z,v), I[94] = (img)(_n7##x,_p2##y,z,v), I[95] = (img)(_n8##x,_p2##y,z,v), \ 307.2894 + I[96] = (img)(_p7##x,_p1##y,z,v), I[97] = (img)(_p6##x,_p1##y,z,v), I[98] = (img)(_p5##x,_p1##y,z,v), I[99] = (img)(_p4##x,_p1##y,z,v), I[100] = (img)(_p3##x,_p1##y,z,v), I[101] = (img)(_p2##x,_p1##y,z,v), I[102] = (img)(_p1##x,_p1##y,z,v), I[103] = (img)(x,_p1##y,z,v), I[104] = (img)(_n1##x,_p1##y,z,v), I[105] = (img)(_n2##x,_p1##y,z,v), I[106] = (img)(_n3##x,_p1##y,z,v), I[107] = (img)(_n4##x,_p1##y,z,v), I[108] = (img)(_n5##x,_p1##y,z,v), I[109] = (img)(_n6##x,_p1##y,z,v), I[110] = (img)(_n7##x,_p1##y,z,v), I[111] = (img)(_n8##x,_p1##y,z,v), \ 307.2895 + I[112] = (img)(_p7##x,y,z,v), I[113] = (img)(_p6##x,y,z,v), I[114] = (img)(_p5##x,y,z,v), I[115] = (img)(_p4##x,y,z,v), I[116] = (img)(_p3##x,y,z,v), I[117] = (img)(_p2##x,y,z,v), I[118] = (img)(_p1##x,y,z,v), I[119] = (img)(x,y,z,v), I[120] = (img)(_n1##x,y,z,v), I[121] = (img)(_n2##x,y,z,v), I[122] = (img)(_n3##x,y,z,v), I[123] = (img)(_n4##x,y,z,v), I[124] = (img)(_n5##x,y,z,v), I[125] = (img)(_n6##x,y,z,v), I[126] = (img)(_n7##x,y,z,v), I[127] = (img)(_n8##x,y,z,v), \ 307.2896 + I[128] = (img)(_p7##x,_n1##y,z,v), I[129] = (img)(_p6##x,_n1##y,z,v), I[130] = (img)(_p5##x,_n1##y,z,v), I[131] = (img)(_p4##x,_n1##y,z,v), I[132] = (img)(_p3##x,_n1##y,z,v), I[133] = (img)(_p2##x,_n1##y,z,v), I[134] = (img)(_p1##x,_n1##y,z,v), I[135] = (img)(x,_n1##y,z,v), I[136] = (img)(_n1##x,_n1##y,z,v), I[137] = (img)(_n2##x,_n1##y,z,v), I[138] = (img)(_n3##x,_n1##y,z,v), I[139] = (img)(_n4##x,_n1##y,z,v), I[140] = (img)(_n5##x,_n1##y,z,v), I[141] = (img)(_n6##x,_n1##y,z,v), I[142] = (img)(_n7##x,_n1##y,z,v), I[143] = (img)(_n8##x,_n1##y,z,v), \ 307.2897 + I[144] = (img)(_p7##x,_n2##y,z,v), I[145] = (img)(_p6##x,_n2##y,z,v), I[146] = (img)(_p5##x,_n2##y,z,v), I[147] = (img)(_p4##x,_n2##y,z,v), I[148] = (img)(_p3##x,_n2##y,z,v), I[149] = (img)(_p2##x,_n2##y,z,v), I[150] = (img)(_p1##x,_n2##y,z,v), I[151] = (img)(x,_n2##y,z,v), I[152] = (img)(_n1##x,_n2##y,z,v), I[153] = (img)(_n2##x,_n2##y,z,v), I[154] = (img)(_n3##x,_n2##y,z,v), I[155] = (img)(_n4##x,_n2##y,z,v), I[156] = (img)(_n5##x,_n2##y,z,v), I[157] = (img)(_n6##x,_n2##y,z,v), I[158] = (img)(_n7##x,_n2##y,z,v), I[159] = (img)(_n8##x,_n2##y,z,v), \ 307.2898 + I[160] = (img)(_p7##x,_n3##y,z,v), I[161] = (img)(_p6##x,_n3##y,z,v), I[162] = (img)(_p5##x,_n3##y,z,v), I[163] = (img)(_p4##x,_n3##y,z,v), I[164] = (img)(_p3##x,_n3##y,z,v), I[165] = (img)(_p2##x,_n3##y,z,v), I[166] = (img)(_p1##x,_n3##y,z,v), I[167] = (img)(x,_n3##y,z,v), I[168] = (img)(_n1##x,_n3##y,z,v), I[169] = (img)(_n2##x,_n3##y,z,v), I[170] = (img)(_n3##x,_n3##y,z,v), I[171] = (img)(_n4##x,_n3##y,z,v), I[172] = (img)(_n5##x,_n3##y,z,v), I[173] = (img)(_n6##x,_n3##y,z,v), I[174] = (img)(_n7##x,_n3##y,z,v), I[175] = (img)(_n8##x,_n3##y,z,v), \ 307.2899 + I[176] = (img)(_p7##x,_n4##y,z,v), I[177] = (img)(_p6##x,_n4##y,z,v), I[178] = (img)(_p5##x,_n4##y,z,v), I[179] = (img)(_p4##x,_n4##y,z,v), I[180] = (img)(_p3##x,_n4##y,z,v), I[181] = (img)(_p2##x,_n4##y,z,v), I[182] = (img)(_p1##x,_n4##y,z,v), I[183] = (img)(x,_n4##y,z,v), I[184] = (img)(_n1##x,_n4##y,z,v), I[185] = (img)(_n2##x,_n4##y,z,v), I[186] = (img)(_n3##x,_n4##y,z,v), I[187] = (img)(_n4##x,_n4##y,z,v), I[188] = (img)(_n5##x,_n4##y,z,v), I[189] = (img)(_n6##x,_n4##y,z,v), I[190] = (img)(_n7##x,_n4##y,z,v), I[191] = (img)(_n8##x,_n4##y,z,v), \ 307.2900 + I[192] = (img)(_p7##x,_n5##y,z,v), I[193] = (img)(_p6##x,_n5##y,z,v), I[194] = (img)(_p5##x,_n5##y,z,v), I[195] = (img)(_p4##x,_n5##y,z,v), I[196] = (img)(_p3##x,_n5##y,z,v), I[197] = (img)(_p2##x,_n5##y,z,v), I[198] = (img)(_p1##x,_n5##y,z,v), I[199] = (img)(x,_n5##y,z,v), I[200] = (img)(_n1##x,_n5##y,z,v), I[201] = (img)(_n2##x,_n5##y,z,v), I[202] = (img)(_n3##x,_n5##y,z,v), I[203] = (img)(_n4##x,_n5##y,z,v), I[204] = (img)(_n5##x,_n5##y,z,v), I[205] = (img)(_n6##x,_n5##y,z,v), I[206] = (img)(_n7##x,_n5##y,z,v), I[207] = (img)(_n8##x,_n5##y,z,v), \ 307.2901 + I[208] = (img)(_p7##x,_n6##y,z,v), I[209] = (img)(_p6##x,_n6##y,z,v), I[210] = (img)(_p5##x,_n6##y,z,v), I[211] = (img)(_p4##x,_n6##y,z,v), I[212] = (img)(_p3##x,_n6##y,z,v), I[213] = (img)(_p2##x,_n6##y,z,v), I[214] = (img)(_p1##x,_n6##y,z,v), I[215] = (img)(x,_n6##y,z,v), I[216] = (img)(_n1##x,_n6##y,z,v), I[217] = (img)(_n2##x,_n6##y,z,v), I[218] = (img)(_n3##x,_n6##y,z,v), I[219] = (img)(_n4##x,_n6##y,z,v), I[220] = (img)(_n5##x,_n6##y,z,v), I[221] = (img)(_n6##x,_n6##y,z,v), I[222] = (img)(_n7##x,_n6##y,z,v), I[223] = (img)(_n8##x,_n6##y,z,v), \ 307.2902 + I[224] = (img)(_p7##x,_n7##y,z,v), I[225] = (img)(_p6##x,_n7##y,z,v), I[226] = (img)(_p5##x,_n7##y,z,v), I[227] = (img)(_p4##x,_n7##y,z,v), I[228] = (img)(_p3##x,_n7##y,z,v), I[229] = (img)(_p2##x,_n7##y,z,v), I[230] = (img)(_p1##x,_n7##y,z,v), I[231] = (img)(x,_n7##y,z,v), I[232] = (img)(_n1##x,_n7##y,z,v), I[233] = (img)(_n2##x,_n7##y,z,v), I[234] = (img)(_n3##x,_n7##y,z,v), I[235] = (img)(_n4##x,_n7##y,z,v), I[236] = (img)(_n5##x,_n7##y,z,v), I[237] = (img)(_n6##x,_n7##y,z,v), I[238] = (img)(_n7##x,_n7##y,z,v), I[239] = (img)(_n8##x,_n7##y,z,v), \ 307.2903 + I[240] = (img)(_p7##x,_n8##y,z,v), I[241] = (img)(_p6##x,_n8##y,z,v), I[242] = (img)(_p5##x,_n8##y,z,v), I[243] = (img)(_p4##x,_n8##y,z,v), I[244] = (img)(_p3##x,_n8##y,z,v), I[245] = (img)(_p2##x,_n8##y,z,v), I[246] = (img)(_p1##x,_n8##y,z,v), I[247] = (img)(x,_n8##y,z,v), I[248] = (img)(_n1##x,_n8##y,z,v), I[249] = (img)(_n2##x,_n8##y,z,v), I[250] = (img)(_n3##x,_n8##y,z,v), I[251] = (img)(_n4##x,_n8##y,z,v), I[252] = (img)(_n5##x,_n8##y,z,v), I[253] = (img)(_n6##x,_n8##y,z,v), I[254] = (img)(_n7##x,_n8##y,z,v), I[255] = (img)(_n8##x,_n8##y,z,v); 307.2904 + 307.2905 +// Define 17x17 loop macros for CImg 307.2906 +//---------------------------------- 307.2907 +#define cimg_for17(bound,i) for (int i = 0, \ 307.2908 + _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.2909 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.2910 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.2911 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.2912 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.2913 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.2914 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.2915 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.2916 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8; \ 307.2917 + _n8##i<(int)(bound) || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.2918 + i==(_n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.2919 + _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.2920 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i) 307.2921 + 307.2922 +#define cimg_for17X(img,x) cimg_for17((img).width,x) 307.2923 +#define cimg_for17Y(img,y) cimg_for17((img).height,y) 307.2924 +#define cimg_for17Z(img,z) cimg_for17((img).depth,z) 307.2925 +#define cimg_for17V(img,v) cimg_for17((img).dim,v) 307.2926 +#define cimg_for17XY(img,x,y) cimg_for17Y(img,y) cimg_for17X(img,x) 307.2927 +#define cimg_for17XZ(img,x,z) cimg_for17Z(img,z) cimg_for17X(img,x) 307.2928 +#define cimg_for17XV(img,x,v) cimg_for17V(img,v) cimg_for17X(img,x) 307.2929 +#define cimg_for17YZ(img,y,z) cimg_for17Z(img,z) cimg_for17Y(img,y) 307.2930 +#define cimg_for17YV(img,y,v) cimg_for17V(img,v) cimg_for17Y(img,y) 307.2931 +#define cimg_for17ZV(img,z,v) cimg_for17V(img,v) cimg_for17Z(img,z) 307.2932 +#define cimg_for17XYZ(img,x,y,z) cimg_for17Z(img,z) cimg_for17XY(img,x,y) 307.2933 +#define cimg_for17XZV(img,x,z,v) cimg_for17V(img,v) cimg_for17XZ(img,x,z) 307.2934 +#define cimg_for17YZV(img,y,z,v) cimg_for17V(img,v) cimg_for17YZ(img,y,z) 307.2935 +#define cimg_for17XYZV(img,x,y,z,v) cimg_for17V(img,v) cimg_for17XYZ(img,x,y,z) 307.2936 + 307.2937 +#define cimg_for_in17(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.2938 + _p8##i = i-8<0?0:i-8, \ 307.2939 + _p7##i = i-7<0?0:i-7, \ 307.2940 + _p6##i = i-6<0?0:i-6, \ 307.2941 + _p5##i = i-5<0?0:i-5, \ 307.2942 + _p4##i = i-4<0?0:i-4, \ 307.2943 + _p3##i = i-3<0?0:i-3, \ 307.2944 + _p2##i = i-2<0?0:i-2, \ 307.2945 + _p1##i = i-1<0?0:i-1, \ 307.2946 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.2947 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.2948 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.2949 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.2950 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.2951 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.2952 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.2953 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8; \ 307.2954 + i<=(int)(i1) && (_n8##i<(int)(bound) || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.2955 + i==(_n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.2956 + _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.2957 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i) 307.2958 + 307.2959 +#define cimg_for_in17X(img,x0,x1,x) cimg_for_in17((img).width,x0,x1,x) 307.2960 +#define cimg_for_in17Y(img,y0,y1,y) cimg_for_in17((img).height,y0,y1,y) 307.2961 +#define cimg_for_in17Z(img,z0,z1,z) cimg_for_in17((img).depth,z0,z1,z) 307.2962 +#define cimg_for_in17V(img,v0,v1,v) cimg_for_in17((img).dim,v0,v1,v) 307.2963 +#define cimg_for_in17XY(img,x0,y0,x1,y1,x,y) cimg_for_in17Y(img,y0,y1,y) cimg_for_in17X(img,x0,x1,x) 307.2964 +#define cimg_for_in17XZ(img,x0,z0,x1,z1,x,z) cimg_for_in17Z(img,z0,z1,z) cimg_for_in17X(img,x0,x1,x) 307.2965 +#define cimg_for_in17XV(img,x0,v0,x1,v1,x,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17X(img,x0,x1,x) 307.2966 +#define cimg_for_in17YZ(img,y0,z0,y1,z1,y,z) cimg_for_in17Z(img,z0,z1,z) cimg_for_in17Y(img,y0,y1,y) 307.2967 +#define cimg_for_in17YV(img,y0,v0,y1,v1,y,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17Y(img,y0,y1,y) 307.2968 +#define cimg_for_in17ZV(img,z0,v0,z1,v1,z,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17Z(img,z0,z1,z) 307.2969 +#define cimg_for_in17XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in17Z(img,z0,z1,z) cimg_for_in17XY(img,x0,y0,x1,y1,x,y) 307.2970 +#define cimg_for_in17XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17XZ(img,x0,y0,x1,y1,x,z) 307.2971 +#define cimg_for_in17YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17YZ(img,y0,z0,y1,z1,y,z) 307.2972 +#define cimg_for_in17XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in17V(img,v0,v1,v) cimg_for_in17XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.2973 + 307.2974 +#define cimg_for17x17(img,x,y,z,v,I) \ 307.2975 + cimg_for17((img).height,y) for (int x = 0, \ 307.2976 + _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.2977 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.2978 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.2979 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.2980 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.2981 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.2982 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.2983 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.2984 + _n8##x = (int)( \ 307.2985 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = (img)(0,_p8##y,z,v)), \ 307.2986 + (I[17] = I[18] = I[19] = I[20] = I[21] = I[22] = I[23] = I[24] = I[25] = (img)(0,_p7##y,z,v)), \ 307.2987 + (I[34] = I[35] = I[36] = I[37] = I[38] = I[39] = I[40] = I[41] = I[42] = (img)(0,_p6##y,z,v)), \ 307.2988 + (I[51] = I[52] = I[53] = I[54] = I[55] = I[56] = I[57] = I[58] = I[59] = (img)(0,_p5##y,z,v)), \ 307.2989 + (I[68] = I[69] = I[70] = I[71] = I[72] = I[73] = I[74] = I[75] = I[76] = (img)(0,_p4##y,z,v)), \ 307.2990 + (I[85] = I[86] = I[87] = I[88] = I[89] = I[90] = I[91] = I[92] = I[93] = (img)(0,_p3##y,z,v)), \ 307.2991 + (I[102] = I[103] = I[104] = I[105] = I[106] = I[107] = I[108] = I[109] = I[110] = (img)(0,_p2##y,z,v)), \ 307.2992 + (I[119] = I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = I[126] = I[127] = (img)(0,_p1##y,z,v)), \ 307.2993 + (I[136] = I[137] = I[138] = I[139] = I[140] = I[141] = I[142] = I[143] = I[144] = (img)(0,y,z,v)), \ 307.2994 + (I[153] = I[154] = I[155] = I[156] = I[157] = I[158] = I[159] = I[160] = I[161] = (img)(0,_n1##y,z,v)), \ 307.2995 + (I[170] = I[171] = I[172] = I[173] = I[174] = I[175] = I[176] = I[177] = I[178] = (img)(0,_n2##y,z,v)), \ 307.2996 + (I[187] = I[188] = I[189] = I[190] = I[191] = I[192] = I[193] = I[194] = I[195] = (img)(0,_n3##y,z,v)), \ 307.2997 + (I[204] = I[205] = I[206] = I[207] = I[208] = I[209] = I[210] = I[211] = I[212] = (img)(0,_n4##y,z,v)), \ 307.2998 + (I[221] = I[222] = I[223] = I[224] = I[225] = I[226] = I[227] = I[228] = I[229] = (img)(0,_n5##y,z,v)), \ 307.2999 + (I[238] = I[239] = I[240] = I[241] = I[242] = I[243] = I[244] = I[245] = I[246] = (img)(0,_n6##y,z,v)), \ 307.3000 + (I[255] = I[256] = I[257] = I[258] = I[259] = I[260] = I[261] = I[262] = I[263] = (img)(0,_n7##y,z,v)), \ 307.3001 + (I[272] = I[273] = I[274] = I[275] = I[276] = I[277] = I[278] = I[279] = I[280] = (img)(0,_n8##y,z,v)), \ 307.3002 + (I[9] = (img)(_n1##x,_p8##y,z,v)), \ 307.3003 + (I[26] = (img)(_n1##x,_p7##y,z,v)), \ 307.3004 + (I[43] = (img)(_n1##x,_p6##y,z,v)), \ 307.3005 + (I[60] = (img)(_n1##x,_p5##y,z,v)), \ 307.3006 + (I[77] = (img)(_n1##x,_p4##y,z,v)), \ 307.3007 + (I[94] = (img)(_n1##x,_p3##y,z,v)), \ 307.3008 + (I[111] = (img)(_n1##x,_p2##y,z,v)), \ 307.3009 + (I[128] = (img)(_n1##x,_p1##y,z,v)), \ 307.3010 + (I[145] = (img)(_n1##x,y,z,v)), \ 307.3011 + (I[162] = (img)(_n1##x,_n1##y,z,v)), \ 307.3012 + (I[179] = (img)(_n1##x,_n2##y,z,v)), \ 307.3013 + (I[196] = (img)(_n1##x,_n3##y,z,v)), \ 307.3014 + (I[213] = (img)(_n1##x,_n4##y,z,v)), \ 307.3015 + (I[230] = (img)(_n1##x,_n5##y,z,v)), \ 307.3016 + (I[247] = (img)(_n1##x,_n6##y,z,v)), \ 307.3017 + (I[264] = (img)(_n1##x,_n7##y,z,v)), \ 307.3018 + (I[281] = (img)(_n1##x,_n8##y,z,v)), \ 307.3019 + (I[10] = (img)(_n2##x,_p8##y,z,v)), \ 307.3020 + (I[27] = (img)(_n2##x,_p7##y,z,v)), \ 307.3021 + (I[44] = (img)(_n2##x,_p6##y,z,v)), \ 307.3022 + (I[61] = (img)(_n2##x,_p5##y,z,v)), \ 307.3023 + (I[78] = (img)(_n2##x,_p4##y,z,v)), \ 307.3024 + (I[95] = (img)(_n2##x,_p3##y,z,v)), \ 307.3025 + (I[112] = (img)(_n2##x,_p2##y,z,v)), \ 307.3026 + (I[129] = (img)(_n2##x,_p1##y,z,v)), \ 307.3027 + (I[146] = (img)(_n2##x,y,z,v)), \ 307.3028 + (I[163] = (img)(_n2##x,_n1##y,z,v)), \ 307.3029 + (I[180] = (img)(_n2##x,_n2##y,z,v)), \ 307.3030 + (I[197] = (img)(_n2##x,_n3##y,z,v)), \ 307.3031 + (I[214] = (img)(_n2##x,_n4##y,z,v)), \ 307.3032 + (I[231] = (img)(_n2##x,_n5##y,z,v)), \ 307.3033 + (I[248] = (img)(_n2##x,_n6##y,z,v)), \ 307.3034 + (I[265] = (img)(_n2##x,_n7##y,z,v)), \ 307.3035 + (I[282] = (img)(_n2##x,_n8##y,z,v)), \ 307.3036 + (I[11] = (img)(_n3##x,_p8##y,z,v)), \ 307.3037 + (I[28] = (img)(_n3##x,_p7##y,z,v)), \ 307.3038 + (I[45] = (img)(_n3##x,_p6##y,z,v)), \ 307.3039 + (I[62] = (img)(_n3##x,_p5##y,z,v)), \ 307.3040 + (I[79] = (img)(_n3##x,_p4##y,z,v)), \ 307.3041 + (I[96] = (img)(_n3##x,_p3##y,z,v)), \ 307.3042 + (I[113] = (img)(_n3##x,_p2##y,z,v)), \ 307.3043 + (I[130] = (img)(_n3##x,_p1##y,z,v)), \ 307.3044 + (I[147] = (img)(_n3##x,y,z,v)), \ 307.3045 + (I[164] = (img)(_n3##x,_n1##y,z,v)), \ 307.3046 + (I[181] = (img)(_n3##x,_n2##y,z,v)), \ 307.3047 + (I[198] = (img)(_n3##x,_n3##y,z,v)), \ 307.3048 + (I[215] = (img)(_n3##x,_n4##y,z,v)), \ 307.3049 + (I[232] = (img)(_n3##x,_n5##y,z,v)), \ 307.3050 + (I[249] = (img)(_n3##x,_n6##y,z,v)), \ 307.3051 + (I[266] = (img)(_n3##x,_n7##y,z,v)), \ 307.3052 + (I[283] = (img)(_n3##x,_n8##y,z,v)), \ 307.3053 + (I[12] = (img)(_n4##x,_p8##y,z,v)), \ 307.3054 + (I[29] = (img)(_n4##x,_p7##y,z,v)), \ 307.3055 + (I[46] = (img)(_n4##x,_p6##y,z,v)), \ 307.3056 + (I[63] = (img)(_n4##x,_p5##y,z,v)), \ 307.3057 + (I[80] = (img)(_n4##x,_p4##y,z,v)), \ 307.3058 + (I[97] = (img)(_n4##x,_p3##y,z,v)), \ 307.3059 + (I[114] = (img)(_n4##x,_p2##y,z,v)), \ 307.3060 + (I[131] = (img)(_n4##x,_p1##y,z,v)), \ 307.3061 + (I[148] = (img)(_n4##x,y,z,v)), \ 307.3062 + (I[165] = (img)(_n4##x,_n1##y,z,v)), \ 307.3063 + (I[182] = (img)(_n4##x,_n2##y,z,v)), \ 307.3064 + (I[199] = (img)(_n4##x,_n3##y,z,v)), \ 307.3065 + (I[216] = (img)(_n4##x,_n4##y,z,v)), \ 307.3066 + (I[233] = (img)(_n4##x,_n5##y,z,v)), \ 307.3067 + (I[250] = (img)(_n4##x,_n6##y,z,v)), \ 307.3068 + (I[267] = (img)(_n4##x,_n7##y,z,v)), \ 307.3069 + (I[284] = (img)(_n4##x,_n8##y,z,v)), \ 307.3070 + (I[13] = (img)(_n5##x,_p8##y,z,v)), \ 307.3071 + (I[30] = (img)(_n5##x,_p7##y,z,v)), \ 307.3072 + (I[47] = (img)(_n5##x,_p6##y,z,v)), \ 307.3073 + (I[64] = (img)(_n5##x,_p5##y,z,v)), \ 307.3074 + (I[81] = (img)(_n5##x,_p4##y,z,v)), \ 307.3075 + (I[98] = (img)(_n5##x,_p3##y,z,v)), \ 307.3076 + (I[115] = (img)(_n5##x,_p2##y,z,v)), \ 307.3077 + (I[132] = (img)(_n5##x,_p1##y,z,v)), \ 307.3078 + (I[149] = (img)(_n5##x,y,z,v)), \ 307.3079 + (I[166] = (img)(_n5##x,_n1##y,z,v)), \ 307.3080 + (I[183] = (img)(_n5##x,_n2##y,z,v)), \ 307.3081 + (I[200] = (img)(_n5##x,_n3##y,z,v)), \ 307.3082 + (I[217] = (img)(_n5##x,_n4##y,z,v)), \ 307.3083 + (I[234] = (img)(_n5##x,_n5##y,z,v)), \ 307.3084 + (I[251] = (img)(_n5##x,_n6##y,z,v)), \ 307.3085 + (I[268] = (img)(_n5##x,_n7##y,z,v)), \ 307.3086 + (I[285] = (img)(_n5##x,_n8##y,z,v)), \ 307.3087 + (I[14] = (img)(_n6##x,_p8##y,z,v)), \ 307.3088 + (I[31] = (img)(_n6##x,_p7##y,z,v)), \ 307.3089 + (I[48] = (img)(_n6##x,_p6##y,z,v)), \ 307.3090 + (I[65] = (img)(_n6##x,_p5##y,z,v)), \ 307.3091 + (I[82] = (img)(_n6##x,_p4##y,z,v)), \ 307.3092 + (I[99] = (img)(_n6##x,_p3##y,z,v)), \ 307.3093 + (I[116] = (img)(_n6##x,_p2##y,z,v)), \ 307.3094 + (I[133] = (img)(_n6##x,_p1##y,z,v)), \ 307.3095 + (I[150] = (img)(_n6##x,y,z,v)), \ 307.3096 + (I[167] = (img)(_n6##x,_n1##y,z,v)), \ 307.3097 + (I[184] = (img)(_n6##x,_n2##y,z,v)), \ 307.3098 + (I[201] = (img)(_n6##x,_n3##y,z,v)), \ 307.3099 + (I[218] = (img)(_n6##x,_n4##y,z,v)), \ 307.3100 + (I[235] = (img)(_n6##x,_n5##y,z,v)), \ 307.3101 + (I[252] = (img)(_n6##x,_n6##y,z,v)), \ 307.3102 + (I[269] = (img)(_n6##x,_n7##y,z,v)), \ 307.3103 + (I[286] = (img)(_n6##x,_n8##y,z,v)), \ 307.3104 + (I[15] = (img)(_n7##x,_p8##y,z,v)), \ 307.3105 + (I[32] = (img)(_n7##x,_p7##y,z,v)), \ 307.3106 + (I[49] = (img)(_n7##x,_p6##y,z,v)), \ 307.3107 + (I[66] = (img)(_n7##x,_p5##y,z,v)), \ 307.3108 + (I[83] = (img)(_n7##x,_p4##y,z,v)), \ 307.3109 + (I[100] = (img)(_n7##x,_p3##y,z,v)), \ 307.3110 + (I[117] = (img)(_n7##x,_p2##y,z,v)), \ 307.3111 + (I[134] = (img)(_n7##x,_p1##y,z,v)), \ 307.3112 + (I[151] = (img)(_n7##x,y,z,v)), \ 307.3113 + (I[168] = (img)(_n7##x,_n1##y,z,v)), \ 307.3114 + (I[185] = (img)(_n7##x,_n2##y,z,v)), \ 307.3115 + (I[202] = (img)(_n7##x,_n3##y,z,v)), \ 307.3116 + (I[219] = (img)(_n7##x,_n4##y,z,v)), \ 307.3117 + (I[236] = (img)(_n7##x,_n5##y,z,v)), \ 307.3118 + (I[253] = (img)(_n7##x,_n6##y,z,v)), \ 307.3119 + (I[270] = (img)(_n7##x,_n7##y,z,v)), \ 307.3120 + (I[287] = (img)(_n7##x,_n8##y,z,v)), \ 307.3121 + 8>=((img).width)?(int)((img).width)-1:8); \ 307.3122 + (_n8##x<(int)((img).width) && ( \ 307.3123 + (I[16] = (img)(_n8##x,_p8##y,z,v)), \ 307.3124 + (I[33] = (img)(_n8##x,_p7##y,z,v)), \ 307.3125 + (I[50] = (img)(_n8##x,_p6##y,z,v)), \ 307.3126 + (I[67] = (img)(_n8##x,_p5##y,z,v)), \ 307.3127 + (I[84] = (img)(_n8##x,_p4##y,z,v)), \ 307.3128 + (I[101] = (img)(_n8##x,_p3##y,z,v)), \ 307.3129 + (I[118] = (img)(_n8##x,_p2##y,z,v)), \ 307.3130 + (I[135] = (img)(_n8##x,_p1##y,z,v)), \ 307.3131 + (I[152] = (img)(_n8##x,y,z,v)), \ 307.3132 + (I[169] = (img)(_n8##x,_n1##y,z,v)), \ 307.3133 + (I[186] = (img)(_n8##x,_n2##y,z,v)), \ 307.3134 + (I[203] = (img)(_n8##x,_n3##y,z,v)), \ 307.3135 + (I[220] = (img)(_n8##x,_n4##y,z,v)), \ 307.3136 + (I[237] = (img)(_n8##x,_n5##y,z,v)), \ 307.3137 + (I[254] = (img)(_n8##x,_n6##y,z,v)), \ 307.3138 + (I[271] = (img)(_n8##x,_n7##y,z,v)), \ 307.3139 + (I[288] = (img)(_n8##x,_n8##y,z,v)),1)) || \ 307.3140 + _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.3141 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], \ 307.3142 + I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], \ 307.3143 + I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], \ 307.3144 + I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], \ 307.3145 + I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], \ 307.3146 + I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], \ 307.3147 + I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], \ 307.3148 + I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], \ 307.3149 + I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], \ 307.3150 + I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], \ 307.3151 + I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], \ 307.3152 + I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], \ 307.3153 + I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], \ 307.3154 + I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], \ 307.3155 + I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], \ 307.3156 + I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], \ 307.3157 + I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], \ 307.3158 + _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x) 307.3159 + 307.3160 +#define cimg_for_in17x17(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.3161 + cimg_for_in17((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.3162 + _p8##x = x-8<0?0:x-8, \ 307.3163 + _p7##x = x-7<0?0:x-7, \ 307.3164 + _p6##x = x-6<0?0:x-6, \ 307.3165 + _p5##x = x-5<0?0:x-5, \ 307.3166 + _p4##x = x-4<0?0:x-4, \ 307.3167 + _p3##x = x-3<0?0:x-3, \ 307.3168 + _p2##x = x-2<0?0:x-2, \ 307.3169 + _p1##x = x-1<0?0:x-1, \ 307.3170 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.3171 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.3172 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.3173 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.3174 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.3175 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.3176 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.3177 + _n8##x = (int)( \ 307.3178 + (I[0] = (img)(_p8##x,_p8##y,z,v)), \ 307.3179 + (I[17] = (img)(_p8##x,_p7##y,z,v)), \ 307.3180 + (I[34] = (img)(_p8##x,_p6##y,z,v)), \ 307.3181 + (I[51] = (img)(_p8##x,_p5##y,z,v)), \ 307.3182 + (I[68] = (img)(_p8##x,_p4##y,z,v)), \ 307.3183 + (I[85] = (img)(_p8##x,_p3##y,z,v)), \ 307.3184 + (I[102] = (img)(_p8##x,_p2##y,z,v)), \ 307.3185 + (I[119] = (img)(_p8##x,_p1##y,z,v)), \ 307.3186 + (I[136] = (img)(_p8##x,y,z,v)), \ 307.3187 + (I[153] = (img)(_p8##x,_n1##y,z,v)), \ 307.3188 + (I[170] = (img)(_p8##x,_n2##y,z,v)), \ 307.3189 + (I[187] = (img)(_p8##x,_n3##y,z,v)), \ 307.3190 + (I[204] = (img)(_p8##x,_n4##y,z,v)), \ 307.3191 + (I[221] = (img)(_p8##x,_n5##y,z,v)), \ 307.3192 + (I[238] = (img)(_p8##x,_n6##y,z,v)), \ 307.3193 + (I[255] = (img)(_p8##x,_n7##y,z,v)), \ 307.3194 + (I[272] = (img)(_p8##x,_n8##y,z,v)), \ 307.3195 + (I[1] = (img)(_p7##x,_p8##y,z,v)), \ 307.3196 + (I[18] = (img)(_p7##x,_p7##y,z,v)), \ 307.3197 + (I[35] = (img)(_p7##x,_p6##y,z,v)), \ 307.3198 + (I[52] = (img)(_p7##x,_p5##y,z,v)), \ 307.3199 + (I[69] = (img)(_p7##x,_p4##y,z,v)), \ 307.3200 + (I[86] = (img)(_p7##x,_p3##y,z,v)), \ 307.3201 + (I[103] = (img)(_p7##x,_p2##y,z,v)), \ 307.3202 + (I[120] = (img)(_p7##x,_p1##y,z,v)), \ 307.3203 + (I[137] = (img)(_p7##x,y,z,v)), \ 307.3204 + (I[154] = (img)(_p7##x,_n1##y,z,v)), \ 307.3205 + (I[171] = (img)(_p7##x,_n2##y,z,v)), \ 307.3206 + (I[188] = (img)(_p7##x,_n3##y,z,v)), \ 307.3207 + (I[205] = (img)(_p7##x,_n4##y,z,v)), \ 307.3208 + (I[222] = (img)(_p7##x,_n5##y,z,v)), \ 307.3209 + (I[239] = (img)(_p7##x,_n6##y,z,v)), \ 307.3210 + (I[256] = (img)(_p7##x,_n7##y,z,v)), \ 307.3211 + (I[273] = (img)(_p7##x,_n8##y,z,v)), \ 307.3212 + (I[2] = (img)(_p6##x,_p8##y,z,v)), \ 307.3213 + (I[19] = (img)(_p6##x,_p7##y,z,v)), \ 307.3214 + (I[36] = (img)(_p6##x,_p6##y,z,v)), \ 307.3215 + (I[53] = (img)(_p6##x,_p5##y,z,v)), \ 307.3216 + (I[70] = (img)(_p6##x,_p4##y,z,v)), \ 307.3217 + (I[87] = (img)(_p6##x,_p3##y,z,v)), \ 307.3218 + (I[104] = (img)(_p6##x,_p2##y,z,v)), \ 307.3219 + (I[121] = (img)(_p6##x,_p1##y,z,v)), \ 307.3220 + (I[138] = (img)(_p6##x,y,z,v)), \ 307.3221 + (I[155] = (img)(_p6##x,_n1##y,z,v)), \ 307.3222 + (I[172] = (img)(_p6##x,_n2##y,z,v)), \ 307.3223 + (I[189] = (img)(_p6##x,_n3##y,z,v)), \ 307.3224 + (I[206] = (img)(_p6##x,_n4##y,z,v)), \ 307.3225 + (I[223] = (img)(_p6##x,_n5##y,z,v)), \ 307.3226 + (I[240] = (img)(_p6##x,_n6##y,z,v)), \ 307.3227 + (I[257] = (img)(_p6##x,_n7##y,z,v)), \ 307.3228 + (I[274] = (img)(_p6##x,_n8##y,z,v)), \ 307.3229 + (I[3] = (img)(_p5##x,_p8##y,z,v)), \ 307.3230 + (I[20] = (img)(_p5##x,_p7##y,z,v)), \ 307.3231 + (I[37] = (img)(_p5##x,_p6##y,z,v)), \ 307.3232 + (I[54] = (img)(_p5##x,_p5##y,z,v)), \ 307.3233 + (I[71] = (img)(_p5##x,_p4##y,z,v)), \ 307.3234 + (I[88] = (img)(_p5##x,_p3##y,z,v)), \ 307.3235 + (I[105] = (img)(_p5##x,_p2##y,z,v)), \ 307.3236 + (I[122] = (img)(_p5##x,_p1##y,z,v)), \ 307.3237 + (I[139] = (img)(_p5##x,y,z,v)), \ 307.3238 + (I[156] = (img)(_p5##x,_n1##y,z,v)), \ 307.3239 + (I[173] = (img)(_p5##x,_n2##y,z,v)), \ 307.3240 + (I[190] = (img)(_p5##x,_n3##y,z,v)), \ 307.3241 + (I[207] = (img)(_p5##x,_n4##y,z,v)), \ 307.3242 + (I[224] = (img)(_p5##x,_n5##y,z,v)), \ 307.3243 + (I[241] = (img)(_p5##x,_n6##y,z,v)), \ 307.3244 + (I[258] = (img)(_p5##x,_n7##y,z,v)), \ 307.3245 + (I[275] = (img)(_p5##x,_n8##y,z,v)), \ 307.3246 + (I[4] = (img)(_p4##x,_p8##y,z,v)), \ 307.3247 + (I[21] = (img)(_p4##x,_p7##y,z,v)), \ 307.3248 + (I[38] = (img)(_p4##x,_p6##y,z,v)), \ 307.3249 + (I[55] = (img)(_p4##x,_p5##y,z,v)), \ 307.3250 + (I[72] = (img)(_p4##x,_p4##y,z,v)), \ 307.3251 + (I[89] = (img)(_p4##x,_p3##y,z,v)), \ 307.3252 + (I[106] = (img)(_p4##x,_p2##y,z,v)), \ 307.3253 + (I[123] = (img)(_p4##x,_p1##y,z,v)), \ 307.3254 + (I[140] = (img)(_p4##x,y,z,v)), \ 307.3255 + (I[157] = (img)(_p4##x,_n1##y,z,v)), \ 307.3256 + (I[174] = (img)(_p4##x,_n2##y,z,v)), \ 307.3257 + (I[191] = (img)(_p4##x,_n3##y,z,v)), \ 307.3258 + (I[208] = (img)(_p4##x,_n4##y,z,v)), \ 307.3259 + (I[225] = (img)(_p4##x,_n5##y,z,v)), \ 307.3260 + (I[242] = (img)(_p4##x,_n6##y,z,v)), \ 307.3261 + (I[259] = (img)(_p4##x,_n7##y,z,v)), \ 307.3262 + (I[276] = (img)(_p4##x,_n8##y,z,v)), \ 307.3263 + (I[5] = (img)(_p3##x,_p8##y,z,v)), \ 307.3264 + (I[22] = (img)(_p3##x,_p7##y,z,v)), \ 307.3265 + (I[39] = (img)(_p3##x,_p6##y,z,v)), \ 307.3266 + (I[56] = (img)(_p3##x,_p5##y,z,v)), \ 307.3267 + (I[73] = (img)(_p3##x,_p4##y,z,v)), \ 307.3268 + (I[90] = (img)(_p3##x,_p3##y,z,v)), \ 307.3269 + (I[107] = (img)(_p3##x,_p2##y,z,v)), \ 307.3270 + (I[124] = (img)(_p3##x,_p1##y,z,v)), \ 307.3271 + (I[141] = (img)(_p3##x,y,z,v)), \ 307.3272 + (I[158] = (img)(_p3##x,_n1##y,z,v)), \ 307.3273 + (I[175] = (img)(_p3##x,_n2##y,z,v)), \ 307.3274 + (I[192] = (img)(_p3##x,_n3##y,z,v)), \ 307.3275 + (I[209] = (img)(_p3##x,_n4##y,z,v)), \ 307.3276 + (I[226] = (img)(_p3##x,_n5##y,z,v)), \ 307.3277 + (I[243] = (img)(_p3##x,_n6##y,z,v)), \ 307.3278 + (I[260] = (img)(_p3##x,_n7##y,z,v)), \ 307.3279 + (I[277] = (img)(_p3##x,_n8##y,z,v)), \ 307.3280 + (I[6] = (img)(_p2##x,_p8##y,z,v)), \ 307.3281 + (I[23] = (img)(_p2##x,_p7##y,z,v)), \ 307.3282 + (I[40] = (img)(_p2##x,_p6##y,z,v)), \ 307.3283 + (I[57] = (img)(_p2##x,_p5##y,z,v)), \ 307.3284 + (I[74] = (img)(_p2##x,_p4##y,z,v)), \ 307.3285 + (I[91] = (img)(_p2##x,_p3##y,z,v)), \ 307.3286 + (I[108] = (img)(_p2##x,_p2##y,z,v)), \ 307.3287 + (I[125] = (img)(_p2##x,_p1##y,z,v)), \ 307.3288 + (I[142] = (img)(_p2##x,y,z,v)), \ 307.3289 + (I[159] = (img)(_p2##x,_n1##y,z,v)), \ 307.3290 + (I[176] = (img)(_p2##x,_n2##y,z,v)), \ 307.3291 + (I[193] = (img)(_p2##x,_n3##y,z,v)), \ 307.3292 + (I[210] = (img)(_p2##x,_n4##y,z,v)), \ 307.3293 + (I[227] = (img)(_p2##x,_n5##y,z,v)), \ 307.3294 + (I[244] = (img)(_p2##x,_n6##y,z,v)), \ 307.3295 + (I[261] = (img)(_p2##x,_n7##y,z,v)), \ 307.3296 + (I[278] = (img)(_p2##x,_n8##y,z,v)), \ 307.3297 + (I[7] = (img)(_p1##x,_p8##y,z,v)), \ 307.3298 + (I[24] = (img)(_p1##x,_p7##y,z,v)), \ 307.3299 + (I[41] = (img)(_p1##x,_p6##y,z,v)), \ 307.3300 + (I[58] = (img)(_p1##x,_p5##y,z,v)), \ 307.3301 + (I[75] = (img)(_p1##x,_p4##y,z,v)), \ 307.3302 + (I[92] = (img)(_p1##x,_p3##y,z,v)), \ 307.3303 + (I[109] = (img)(_p1##x,_p2##y,z,v)), \ 307.3304 + (I[126] = (img)(_p1##x,_p1##y,z,v)), \ 307.3305 + (I[143] = (img)(_p1##x,y,z,v)), \ 307.3306 + (I[160] = (img)(_p1##x,_n1##y,z,v)), \ 307.3307 + (I[177] = (img)(_p1##x,_n2##y,z,v)), \ 307.3308 + (I[194] = (img)(_p1##x,_n3##y,z,v)), \ 307.3309 + (I[211] = (img)(_p1##x,_n4##y,z,v)), \ 307.3310 + (I[228] = (img)(_p1##x,_n5##y,z,v)), \ 307.3311 + (I[245] = (img)(_p1##x,_n6##y,z,v)), \ 307.3312 + (I[262] = (img)(_p1##x,_n7##y,z,v)), \ 307.3313 + (I[279] = (img)(_p1##x,_n8##y,z,v)), \ 307.3314 + (I[8] = (img)(x,_p8##y,z,v)), \ 307.3315 + (I[25] = (img)(x,_p7##y,z,v)), \ 307.3316 + (I[42] = (img)(x,_p6##y,z,v)), \ 307.3317 + (I[59] = (img)(x,_p5##y,z,v)), \ 307.3318 + (I[76] = (img)(x,_p4##y,z,v)), \ 307.3319 + (I[93] = (img)(x,_p3##y,z,v)), \ 307.3320 + (I[110] = (img)(x,_p2##y,z,v)), \ 307.3321 + (I[127] = (img)(x,_p1##y,z,v)), \ 307.3322 + (I[144] = (img)(x,y,z,v)), \ 307.3323 + (I[161] = (img)(x,_n1##y,z,v)), \ 307.3324 + (I[178] = (img)(x,_n2##y,z,v)), \ 307.3325 + (I[195] = (img)(x,_n3##y,z,v)), \ 307.3326 + (I[212] = (img)(x,_n4##y,z,v)), \ 307.3327 + (I[229] = (img)(x,_n5##y,z,v)), \ 307.3328 + (I[246] = (img)(x,_n6##y,z,v)), \ 307.3329 + (I[263] = (img)(x,_n7##y,z,v)), \ 307.3330 + (I[280] = (img)(x,_n8##y,z,v)), \ 307.3331 + (I[9] = (img)(_n1##x,_p8##y,z,v)), \ 307.3332 + (I[26] = (img)(_n1##x,_p7##y,z,v)), \ 307.3333 + (I[43] = (img)(_n1##x,_p6##y,z,v)), \ 307.3334 + (I[60] = (img)(_n1##x,_p5##y,z,v)), \ 307.3335 + (I[77] = (img)(_n1##x,_p4##y,z,v)), \ 307.3336 + (I[94] = (img)(_n1##x,_p3##y,z,v)), \ 307.3337 + (I[111] = (img)(_n1##x,_p2##y,z,v)), \ 307.3338 + (I[128] = (img)(_n1##x,_p1##y,z,v)), \ 307.3339 + (I[145] = (img)(_n1##x,y,z,v)), \ 307.3340 + (I[162] = (img)(_n1##x,_n1##y,z,v)), \ 307.3341 + (I[179] = (img)(_n1##x,_n2##y,z,v)), \ 307.3342 + (I[196] = (img)(_n1##x,_n3##y,z,v)), \ 307.3343 + (I[213] = (img)(_n1##x,_n4##y,z,v)), \ 307.3344 + (I[230] = (img)(_n1##x,_n5##y,z,v)), \ 307.3345 + (I[247] = (img)(_n1##x,_n6##y,z,v)), \ 307.3346 + (I[264] = (img)(_n1##x,_n7##y,z,v)), \ 307.3347 + (I[281] = (img)(_n1##x,_n8##y,z,v)), \ 307.3348 + (I[10] = (img)(_n2##x,_p8##y,z,v)), \ 307.3349 + (I[27] = (img)(_n2##x,_p7##y,z,v)), \ 307.3350 + (I[44] = (img)(_n2##x,_p6##y,z,v)), \ 307.3351 + (I[61] = (img)(_n2##x,_p5##y,z,v)), \ 307.3352 + (I[78] = (img)(_n2##x,_p4##y,z,v)), \ 307.3353 + (I[95] = (img)(_n2##x,_p3##y,z,v)), \ 307.3354 + (I[112] = (img)(_n2##x,_p2##y,z,v)), \ 307.3355 + (I[129] = (img)(_n2##x,_p1##y,z,v)), \ 307.3356 + (I[146] = (img)(_n2##x,y,z,v)), \ 307.3357 + (I[163] = (img)(_n2##x,_n1##y,z,v)), \ 307.3358 + (I[180] = (img)(_n2##x,_n2##y,z,v)), \ 307.3359 + (I[197] = (img)(_n2##x,_n3##y,z,v)), \ 307.3360 + (I[214] = (img)(_n2##x,_n4##y,z,v)), \ 307.3361 + (I[231] = (img)(_n2##x,_n5##y,z,v)), \ 307.3362 + (I[248] = (img)(_n2##x,_n6##y,z,v)), \ 307.3363 + (I[265] = (img)(_n2##x,_n7##y,z,v)), \ 307.3364 + (I[282] = (img)(_n2##x,_n8##y,z,v)), \ 307.3365 + (I[11] = (img)(_n3##x,_p8##y,z,v)), \ 307.3366 + (I[28] = (img)(_n3##x,_p7##y,z,v)), \ 307.3367 + (I[45] = (img)(_n3##x,_p6##y,z,v)), \ 307.3368 + (I[62] = (img)(_n3##x,_p5##y,z,v)), \ 307.3369 + (I[79] = (img)(_n3##x,_p4##y,z,v)), \ 307.3370 + (I[96] = (img)(_n3##x,_p3##y,z,v)), \ 307.3371 + (I[113] = (img)(_n3##x,_p2##y,z,v)), \ 307.3372 + (I[130] = (img)(_n3##x,_p1##y,z,v)), \ 307.3373 + (I[147] = (img)(_n3##x,y,z,v)), \ 307.3374 + (I[164] = (img)(_n3##x,_n1##y,z,v)), \ 307.3375 + (I[181] = (img)(_n3##x,_n2##y,z,v)), \ 307.3376 + (I[198] = (img)(_n3##x,_n3##y,z,v)), \ 307.3377 + (I[215] = (img)(_n3##x,_n4##y,z,v)), \ 307.3378 + (I[232] = (img)(_n3##x,_n5##y,z,v)), \ 307.3379 + (I[249] = (img)(_n3##x,_n6##y,z,v)), \ 307.3380 + (I[266] = (img)(_n3##x,_n7##y,z,v)), \ 307.3381 + (I[283] = (img)(_n3##x,_n8##y,z,v)), \ 307.3382 + (I[12] = (img)(_n4##x,_p8##y,z,v)), \ 307.3383 + (I[29] = (img)(_n4##x,_p7##y,z,v)), \ 307.3384 + (I[46] = (img)(_n4##x,_p6##y,z,v)), \ 307.3385 + (I[63] = (img)(_n4##x,_p5##y,z,v)), \ 307.3386 + (I[80] = (img)(_n4##x,_p4##y,z,v)), \ 307.3387 + (I[97] = (img)(_n4##x,_p3##y,z,v)), \ 307.3388 + (I[114] = (img)(_n4##x,_p2##y,z,v)), \ 307.3389 + (I[131] = (img)(_n4##x,_p1##y,z,v)), \ 307.3390 + (I[148] = (img)(_n4##x,y,z,v)), \ 307.3391 + (I[165] = (img)(_n4##x,_n1##y,z,v)), \ 307.3392 + (I[182] = (img)(_n4##x,_n2##y,z,v)), \ 307.3393 + (I[199] = (img)(_n4##x,_n3##y,z,v)), \ 307.3394 + (I[216] = (img)(_n4##x,_n4##y,z,v)), \ 307.3395 + (I[233] = (img)(_n4##x,_n5##y,z,v)), \ 307.3396 + (I[250] = (img)(_n4##x,_n6##y,z,v)), \ 307.3397 + (I[267] = (img)(_n4##x,_n7##y,z,v)), \ 307.3398 + (I[284] = (img)(_n4##x,_n8##y,z,v)), \ 307.3399 + (I[13] = (img)(_n5##x,_p8##y,z,v)), \ 307.3400 + (I[30] = (img)(_n5##x,_p7##y,z,v)), \ 307.3401 + (I[47] = (img)(_n5##x,_p6##y,z,v)), \ 307.3402 + (I[64] = (img)(_n5##x,_p5##y,z,v)), \ 307.3403 + (I[81] = (img)(_n5##x,_p4##y,z,v)), \ 307.3404 + (I[98] = (img)(_n5##x,_p3##y,z,v)), \ 307.3405 + (I[115] = (img)(_n5##x,_p2##y,z,v)), \ 307.3406 + (I[132] = (img)(_n5##x,_p1##y,z,v)), \ 307.3407 + (I[149] = (img)(_n5##x,y,z,v)), \ 307.3408 + (I[166] = (img)(_n5##x,_n1##y,z,v)), \ 307.3409 + (I[183] = (img)(_n5##x,_n2##y,z,v)), \ 307.3410 + (I[200] = (img)(_n5##x,_n3##y,z,v)), \ 307.3411 + (I[217] = (img)(_n5##x,_n4##y,z,v)), \ 307.3412 + (I[234] = (img)(_n5##x,_n5##y,z,v)), \ 307.3413 + (I[251] = (img)(_n5##x,_n6##y,z,v)), \ 307.3414 + (I[268] = (img)(_n5##x,_n7##y,z,v)), \ 307.3415 + (I[285] = (img)(_n5##x,_n8##y,z,v)), \ 307.3416 + (I[14] = (img)(_n6##x,_p8##y,z,v)), \ 307.3417 + (I[31] = (img)(_n6##x,_p7##y,z,v)), \ 307.3418 + (I[48] = (img)(_n6##x,_p6##y,z,v)), \ 307.3419 + (I[65] = (img)(_n6##x,_p5##y,z,v)), \ 307.3420 + (I[82] = (img)(_n6##x,_p4##y,z,v)), \ 307.3421 + (I[99] = (img)(_n6##x,_p3##y,z,v)), \ 307.3422 + (I[116] = (img)(_n6##x,_p2##y,z,v)), \ 307.3423 + (I[133] = (img)(_n6##x,_p1##y,z,v)), \ 307.3424 + (I[150] = (img)(_n6##x,y,z,v)), \ 307.3425 + (I[167] = (img)(_n6##x,_n1##y,z,v)), \ 307.3426 + (I[184] = (img)(_n6##x,_n2##y,z,v)), \ 307.3427 + (I[201] = (img)(_n6##x,_n3##y,z,v)), \ 307.3428 + (I[218] = (img)(_n6##x,_n4##y,z,v)), \ 307.3429 + (I[235] = (img)(_n6##x,_n5##y,z,v)), \ 307.3430 + (I[252] = (img)(_n6##x,_n6##y,z,v)), \ 307.3431 + (I[269] = (img)(_n6##x,_n7##y,z,v)), \ 307.3432 + (I[286] = (img)(_n6##x,_n8##y,z,v)), \ 307.3433 + (I[15] = (img)(_n7##x,_p8##y,z,v)), \ 307.3434 + (I[32] = (img)(_n7##x,_p7##y,z,v)), \ 307.3435 + (I[49] = (img)(_n7##x,_p6##y,z,v)), \ 307.3436 + (I[66] = (img)(_n7##x,_p5##y,z,v)), \ 307.3437 + (I[83] = (img)(_n7##x,_p4##y,z,v)), \ 307.3438 + (I[100] = (img)(_n7##x,_p3##y,z,v)), \ 307.3439 + (I[117] = (img)(_n7##x,_p2##y,z,v)), \ 307.3440 + (I[134] = (img)(_n7##x,_p1##y,z,v)), \ 307.3441 + (I[151] = (img)(_n7##x,y,z,v)), \ 307.3442 + (I[168] = (img)(_n7##x,_n1##y,z,v)), \ 307.3443 + (I[185] = (img)(_n7##x,_n2##y,z,v)), \ 307.3444 + (I[202] = (img)(_n7##x,_n3##y,z,v)), \ 307.3445 + (I[219] = (img)(_n7##x,_n4##y,z,v)), \ 307.3446 + (I[236] = (img)(_n7##x,_n5##y,z,v)), \ 307.3447 + (I[253] = (img)(_n7##x,_n6##y,z,v)), \ 307.3448 + (I[270] = (img)(_n7##x,_n7##y,z,v)), \ 307.3449 + (I[287] = (img)(_n7##x,_n8##y,z,v)), \ 307.3450 + x+8>=(int)((img).width)?(int)((img).width)-1:x+8); \ 307.3451 + x<=(int)(x1) && ((_n8##x<(int)((img).width) && ( \ 307.3452 + (I[16] = (img)(_n8##x,_p8##y,z,v)), \ 307.3453 + (I[33] = (img)(_n8##x,_p7##y,z,v)), \ 307.3454 + (I[50] = (img)(_n8##x,_p6##y,z,v)), \ 307.3455 + (I[67] = (img)(_n8##x,_p5##y,z,v)), \ 307.3456 + (I[84] = (img)(_n8##x,_p4##y,z,v)), \ 307.3457 + (I[101] = (img)(_n8##x,_p3##y,z,v)), \ 307.3458 + (I[118] = (img)(_n8##x,_p2##y,z,v)), \ 307.3459 + (I[135] = (img)(_n8##x,_p1##y,z,v)), \ 307.3460 + (I[152] = (img)(_n8##x,y,z,v)), \ 307.3461 + (I[169] = (img)(_n8##x,_n1##y,z,v)), \ 307.3462 + (I[186] = (img)(_n8##x,_n2##y,z,v)), \ 307.3463 + (I[203] = (img)(_n8##x,_n3##y,z,v)), \ 307.3464 + (I[220] = (img)(_n8##x,_n4##y,z,v)), \ 307.3465 + (I[237] = (img)(_n8##x,_n5##y,z,v)), \ 307.3466 + (I[254] = (img)(_n8##x,_n6##y,z,v)), \ 307.3467 + (I[271] = (img)(_n8##x,_n7##y,z,v)), \ 307.3468 + (I[288] = (img)(_n8##x,_n8##y,z,v)),1)) || \ 307.3469 + _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.3470 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], \ 307.3471 + I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], \ 307.3472 + I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], \ 307.3473 + I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], \ 307.3474 + I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], \ 307.3475 + I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], \ 307.3476 + I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], \ 307.3477 + I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], \ 307.3478 + I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], \ 307.3479 + I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], \ 307.3480 + I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], \ 307.3481 + I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], \ 307.3482 + I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], \ 307.3483 + I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], \ 307.3484 + I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], \ 307.3485 + I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], \ 307.3486 + I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], \ 307.3487 + _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x) 307.3488 + 307.3489 +#define cimg_get17x17(img,x,y,z,v,I) \ 307.3490 + I[0] = (img)(_p8##x,_p8##y,z,v), I[1] = (img)(_p7##x,_p8##y,z,v), I[2] = (img)(_p6##x,_p8##y,z,v), I[3] = (img)(_p5##x,_p8##y,z,v), I[4] = (img)(_p4##x,_p8##y,z,v), I[5] = (img)(_p3##x,_p8##y,z,v), I[6] = (img)(_p2##x,_p8##y,z,v), I[7] = (img)(_p1##x,_p8##y,z,v), I[8] = (img)(x,_p8##y,z,v), I[9] = (img)(_n1##x,_p8##y,z,v), I[10] = (img)(_n2##x,_p8##y,z,v), I[11] = (img)(_n3##x,_p8##y,z,v), I[12] = (img)(_n4##x,_p8##y,z,v), I[13] = (img)(_n5##x,_p8##y,z,v), I[14] = (img)(_n6##x,_p8##y,z,v), I[15] = (img)(_n7##x,_p8##y,z,v), I[16] = (img)(_n8##x,_p8##y,z,v), \ 307.3491 + I[17] = (img)(_p8##x,_p7##y,z,v), I[18] = (img)(_p7##x,_p7##y,z,v), I[19] = (img)(_p6##x,_p7##y,z,v), I[20] = (img)(_p5##x,_p7##y,z,v), I[21] = (img)(_p4##x,_p7##y,z,v), I[22] = (img)(_p3##x,_p7##y,z,v), I[23] = (img)(_p2##x,_p7##y,z,v), I[24] = (img)(_p1##x,_p7##y,z,v), I[25] = (img)(x,_p7##y,z,v), I[26] = (img)(_n1##x,_p7##y,z,v), I[27] = (img)(_n2##x,_p7##y,z,v), I[28] = (img)(_n3##x,_p7##y,z,v), I[29] = (img)(_n4##x,_p7##y,z,v), I[30] = (img)(_n5##x,_p7##y,z,v), I[31] = (img)(_n6##x,_p7##y,z,v), I[32] = (img)(_n7##x,_p7##y,z,v), I[33] = (img)(_n8##x,_p7##y,z,v), \ 307.3492 + I[34] = (img)(_p8##x,_p6##y,z,v), I[35] = (img)(_p7##x,_p6##y,z,v), I[36] = (img)(_p6##x,_p6##y,z,v), I[37] = (img)(_p5##x,_p6##y,z,v), I[38] = (img)(_p4##x,_p6##y,z,v), I[39] = (img)(_p3##x,_p6##y,z,v), I[40] = (img)(_p2##x,_p6##y,z,v), I[41] = (img)(_p1##x,_p6##y,z,v), I[42] = (img)(x,_p6##y,z,v), I[43] = (img)(_n1##x,_p6##y,z,v), I[44] = (img)(_n2##x,_p6##y,z,v), I[45] = (img)(_n3##x,_p6##y,z,v), I[46] = (img)(_n4##x,_p6##y,z,v), I[47] = (img)(_n5##x,_p6##y,z,v), I[48] = (img)(_n6##x,_p6##y,z,v), I[49] = (img)(_n7##x,_p6##y,z,v), I[50] = (img)(_n8##x,_p6##y,z,v), \ 307.3493 + I[51] = (img)(_p8##x,_p5##y,z,v), I[52] = (img)(_p7##x,_p5##y,z,v), I[53] = (img)(_p6##x,_p5##y,z,v), I[54] = (img)(_p5##x,_p5##y,z,v), I[55] = (img)(_p4##x,_p5##y,z,v), I[56] = (img)(_p3##x,_p5##y,z,v), I[57] = (img)(_p2##x,_p5##y,z,v), I[58] = (img)(_p1##x,_p5##y,z,v), I[59] = (img)(x,_p5##y,z,v), I[60] = (img)(_n1##x,_p5##y,z,v), I[61] = (img)(_n2##x,_p5##y,z,v), I[62] = (img)(_n3##x,_p5##y,z,v), I[63] = (img)(_n4##x,_p5##y,z,v), I[64] = (img)(_n5##x,_p5##y,z,v), I[65] = (img)(_n6##x,_p5##y,z,v), I[66] = (img)(_n7##x,_p5##y,z,v), I[67] = (img)(_n8##x,_p5##y,z,v), \ 307.3494 + I[68] = (img)(_p8##x,_p4##y,z,v), I[69] = (img)(_p7##x,_p4##y,z,v), I[70] = (img)(_p6##x,_p4##y,z,v), I[71] = (img)(_p5##x,_p4##y,z,v), I[72] = (img)(_p4##x,_p4##y,z,v), I[73] = (img)(_p3##x,_p4##y,z,v), I[74] = (img)(_p2##x,_p4##y,z,v), I[75] = (img)(_p1##x,_p4##y,z,v), I[76] = (img)(x,_p4##y,z,v), I[77] = (img)(_n1##x,_p4##y,z,v), I[78] = (img)(_n2##x,_p4##y,z,v), I[79] = (img)(_n3##x,_p4##y,z,v), I[80] = (img)(_n4##x,_p4##y,z,v), I[81] = (img)(_n5##x,_p4##y,z,v), I[82] = (img)(_n6##x,_p4##y,z,v), I[83] = (img)(_n7##x,_p4##y,z,v), I[84] = (img)(_n8##x,_p4##y,z,v), \ 307.3495 + I[85] = (img)(_p8##x,_p3##y,z,v), I[86] = (img)(_p7##x,_p3##y,z,v), I[87] = (img)(_p6##x,_p3##y,z,v), I[88] = (img)(_p5##x,_p3##y,z,v), I[89] = (img)(_p4##x,_p3##y,z,v), I[90] = (img)(_p3##x,_p3##y,z,v), I[91] = (img)(_p2##x,_p3##y,z,v), I[92] = (img)(_p1##x,_p3##y,z,v), I[93] = (img)(x,_p3##y,z,v), I[94] = (img)(_n1##x,_p3##y,z,v), I[95] = (img)(_n2##x,_p3##y,z,v), I[96] = (img)(_n3##x,_p3##y,z,v), I[97] = (img)(_n4##x,_p3##y,z,v), I[98] = (img)(_n5##x,_p3##y,z,v), I[99] = (img)(_n6##x,_p3##y,z,v), I[100] = (img)(_n7##x,_p3##y,z,v), I[101] = (img)(_n8##x,_p3##y,z,v), \ 307.3496 + I[102] = (img)(_p8##x,_p2##y,z,v), I[103] = (img)(_p7##x,_p2##y,z,v), I[104] = (img)(_p6##x,_p2##y,z,v), I[105] = (img)(_p5##x,_p2##y,z,v), I[106] = (img)(_p4##x,_p2##y,z,v), I[107] = (img)(_p3##x,_p2##y,z,v), I[108] = (img)(_p2##x,_p2##y,z,v), I[109] = (img)(_p1##x,_p2##y,z,v), I[110] = (img)(x,_p2##y,z,v), I[111] = (img)(_n1##x,_p2##y,z,v), I[112] = (img)(_n2##x,_p2##y,z,v), I[113] = (img)(_n3##x,_p2##y,z,v), I[114] = (img)(_n4##x,_p2##y,z,v), I[115] = (img)(_n5##x,_p2##y,z,v), I[116] = (img)(_n6##x,_p2##y,z,v), I[117] = (img)(_n7##x,_p2##y,z,v), I[118] = (img)(_n8##x,_p2##y,z,v), \ 307.3497 + I[119] = (img)(_p8##x,_p1##y,z,v), I[120] = (img)(_p7##x,_p1##y,z,v), I[121] = (img)(_p6##x,_p1##y,z,v), I[122] = (img)(_p5##x,_p1##y,z,v), I[123] = (img)(_p4##x,_p1##y,z,v), I[124] = (img)(_p3##x,_p1##y,z,v), I[125] = (img)(_p2##x,_p1##y,z,v), I[126] = (img)(_p1##x,_p1##y,z,v), I[127] = (img)(x,_p1##y,z,v), I[128] = (img)(_n1##x,_p1##y,z,v), I[129] = (img)(_n2##x,_p1##y,z,v), I[130] = (img)(_n3##x,_p1##y,z,v), I[131] = (img)(_n4##x,_p1##y,z,v), I[132] = (img)(_n5##x,_p1##y,z,v), I[133] = (img)(_n6##x,_p1##y,z,v), I[134] = (img)(_n7##x,_p1##y,z,v), I[135] = (img)(_n8##x,_p1##y,z,v), \ 307.3498 + I[136] = (img)(_p8##x,y,z,v), I[137] = (img)(_p7##x,y,z,v), I[138] = (img)(_p6##x,y,z,v), I[139] = (img)(_p5##x,y,z,v), I[140] = (img)(_p4##x,y,z,v), I[141] = (img)(_p3##x,y,z,v), I[142] = (img)(_p2##x,y,z,v), I[143] = (img)(_p1##x,y,z,v), I[144] = (img)(x,y,z,v), I[145] = (img)(_n1##x,y,z,v), I[146] = (img)(_n2##x,y,z,v), I[147] = (img)(_n3##x,y,z,v), I[148] = (img)(_n4##x,y,z,v), I[149] = (img)(_n5##x,y,z,v), I[150] = (img)(_n6##x,y,z,v), I[151] = (img)(_n7##x,y,z,v), I[152] = (img)(_n8##x,y,z,v), \ 307.3499 + I[153] = (img)(_p8##x,_n1##y,z,v), I[154] = (img)(_p7##x,_n1##y,z,v), I[155] = (img)(_p6##x,_n1##y,z,v), I[156] = (img)(_p5##x,_n1##y,z,v), I[157] = (img)(_p4##x,_n1##y,z,v), I[158] = (img)(_p3##x,_n1##y,z,v), I[159] = (img)(_p2##x,_n1##y,z,v), I[160] = (img)(_p1##x,_n1##y,z,v), I[161] = (img)(x,_n1##y,z,v), I[162] = (img)(_n1##x,_n1##y,z,v), I[163] = (img)(_n2##x,_n1##y,z,v), I[164] = (img)(_n3##x,_n1##y,z,v), I[165] = (img)(_n4##x,_n1##y,z,v), I[166] = (img)(_n5##x,_n1##y,z,v), I[167] = (img)(_n6##x,_n1##y,z,v), I[168] = (img)(_n7##x,_n1##y,z,v), I[169] = (img)(_n8##x,_n1##y,z,v), \ 307.3500 + I[170] = (img)(_p8##x,_n2##y,z,v), I[171] = (img)(_p7##x,_n2##y,z,v), I[172] = (img)(_p6##x,_n2##y,z,v), I[173] = (img)(_p5##x,_n2##y,z,v), I[174] = (img)(_p4##x,_n2##y,z,v), I[175] = (img)(_p3##x,_n2##y,z,v), I[176] = (img)(_p2##x,_n2##y,z,v), I[177] = (img)(_p1##x,_n2##y,z,v), I[178] = (img)(x,_n2##y,z,v), I[179] = (img)(_n1##x,_n2##y,z,v), I[180] = (img)(_n2##x,_n2##y,z,v), I[181] = (img)(_n3##x,_n2##y,z,v), I[182] = (img)(_n4##x,_n2##y,z,v), I[183] = (img)(_n5##x,_n2##y,z,v), I[184] = (img)(_n6##x,_n2##y,z,v), I[185] = (img)(_n7##x,_n2##y,z,v), I[186] = (img)(_n8##x,_n2##y,z,v), \ 307.3501 + I[187] = (img)(_p8##x,_n3##y,z,v), I[188] = (img)(_p7##x,_n3##y,z,v), I[189] = (img)(_p6##x,_n3##y,z,v), I[190] = (img)(_p5##x,_n3##y,z,v), I[191] = (img)(_p4##x,_n3##y,z,v), I[192] = (img)(_p3##x,_n3##y,z,v), I[193] = (img)(_p2##x,_n3##y,z,v), I[194] = (img)(_p1##x,_n3##y,z,v), I[195] = (img)(x,_n3##y,z,v), I[196] = (img)(_n1##x,_n3##y,z,v), I[197] = (img)(_n2##x,_n3##y,z,v), I[198] = (img)(_n3##x,_n3##y,z,v), I[199] = (img)(_n4##x,_n3##y,z,v), I[200] = (img)(_n5##x,_n3##y,z,v), I[201] = (img)(_n6##x,_n3##y,z,v), I[202] = (img)(_n7##x,_n3##y,z,v), I[203] = (img)(_n8##x,_n3##y,z,v), \ 307.3502 + I[204] = (img)(_p8##x,_n4##y,z,v), I[205] = (img)(_p7##x,_n4##y,z,v), I[206] = (img)(_p6##x,_n4##y,z,v), I[207] = (img)(_p5##x,_n4##y,z,v), I[208] = (img)(_p4##x,_n4##y,z,v), I[209] = (img)(_p3##x,_n4##y,z,v), I[210] = (img)(_p2##x,_n4##y,z,v), I[211] = (img)(_p1##x,_n4##y,z,v), I[212] = (img)(x,_n4##y,z,v), I[213] = (img)(_n1##x,_n4##y,z,v), I[214] = (img)(_n2##x,_n4##y,z,v), I[215] = (img)(_n3##x,_n4##y,z,v), I[216] = (img)(_n4##x,_n4##y,z,v), I[217] = (img)(_n5##x,_n4##y,z,v), I[218] = (img)(_n6##x,_n4##y,z,v), I[219] = (img)(_n7##x,_n4##y,z,v), I[220] = (img)(_n8##x,_n4##y,z,v), \ 307.3503 + I[221] = (img)(_p8##x,_n5##y,z,v), I[222] = (img)(_p7##x,_n5##y,z,v), I[223] = (img)(_p6##x,_n5##y,z,v), I[224] = (img)(_p5##x,_n5##y,z,v), I[225] = (img)(_p4##x,_n5##y,z,v), I[226] = (img)(_p3##x,_n5##y,z,v), I[227] = (img)(_p2##x,_n5##y,z,v), I[228] = (img)(_p1##x,_n5##y,z,v), I[229] = (img)(x,_n5##y,z,v), I[230] = (img)(_n1##x,_n5##y,z,v), I[231] = (img)(_n2##x,_n5##y,z,v), I[232] = (img)(_n3##x,_n5##y,z,v), I[233] = (img)(_n4##x,_n5##y,z,v), I[234] = (img)(_n5##x,_n5##y,z,v), I[235] = (img)(_n6##x,_n5##y,z,v), I[236] = (img)(_n7##x,_n5##y,z,v), I[237] = (img)(_n8##x,_n5##y,z,v), \ 307.3504 + I[238] = (img)(_p8##x,_n6##y,z,v), I[239] = (img)(_p7##x,_n6##y,z,v), I[240] = (img)(_p6##x,_n6##y,z,v), I[241] = (img)(_p5##x,_n6##y,z,v), I[242] = (img)(_p4##x,_n6##y,z,v), I[243] = (img)(_p3##x,_n6##y,z,v), I[244] = (img)(_p2##x,_n6##y,z,v), I[245] = (img)(_p1##x,_n6##y,z,v), I[246] = (img)(x,_n6##y,z,v), I[247] = (img)(_n1##x,_n6##y,z,v), I[248] = (img)(_n2##x,_n6##y,z,v), I[249] = (img)(_n3##x,_n6##y,z,v), I[250] = (img)(_n4##x,_n6##y,z,v), I[251] = (img)(_n5##x,_n6##y,z,v), I[252] = (img)(_n6##x,_n6##y,z,v), I[253] = (img)(_n7##x,_n6##y,z,v), I[254] = (img)(_n8##x,_n6##y,z,v), \ 307.3505 + I[255] = (img)(_p8##x,_n7##y,z,v), I[256] = (img)(_p7##x,_n7##y,z,v), I[257] = (img)(_p6##x,_n7##y,z,v), I[258] = (img)(_p5##x,_n7##y,z,v), I[259] = (img)(_p4##x,_n7##y,z,v), I[260] = (img)(_p3##x,_n7##y,z,v), I[261] = (img)(_p2##x,_n7##y,z,v), I[262] = (img)(_p1##x,_n7##y,z,v), I[263] = (img)(x,_n7##y,z,v), I[264] = (img)(_n1##x,_n7##y,z,v), I[265] = (img)(_n2##x,_n7##y,z,v), I[266] = (img)(_n3##x,_n7##y,z,v), I[267] = (img)(_n4##x,_n7##y,z,v), I[268] = (img)(_n5##x,_n7##y,z,v), I[269] = (img)(_n6##x,_n7##y,z,v), I[270] = (img)(_n7##x,_n7##y,z,v), I[271] = (img)(_n8##x,_n7##y,z,v), \ 307.3506 + I[272] = (img)(_p8##x,_n8##y,z,v), I[273] = (img)(_p7##x,_n8##y,z,v), I[274] = (img)(_p6##x,_n8##y,z,v), I[275] = (img)(_p5##x,_n8##y,z,v), I[276] = (img)(_p4##x,_n8##y,z,v), I[277] = (img)(_p3##x,_n8##y,z,v), I[278] = (img)(_p2##x,_n8##y,z,v), I[279] = (img)(_p1##x,_n8##y,z,v), I[280] = (img)(x,_n8##y,z,v), I[281] = (img)(_n1##x,_n8##y,z,v), I[282] = (img)(_n2##x,_n8##y,z,v), I[283] = (img)(_n3##x,_n8##y,z,v), I[284] = (img)(_n4##x,_n8##y,z,v), I[285] = (img)(_n5##x,_n8##y,z,v), I[286] = (img)(_n6##x,_n8##y,z,v), I[287] = (img)(_n7##x,_n8##y,z,v), I[288] = (img)(_n8##x,_n8##y,z,v); 307.3507 + 307.3508 +// Define 18x18 loop macros for CImg 307.3509 +//---------------------------------- 307.3510 +#define cimg_for18(bound,i) for (int i = 0, \ 307.3511 + _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.3512 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.3513 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.3514 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.3515 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.3516 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.3517 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.3518 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.3519 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.3520 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9; \ 307.3521 + _n9##i<(int)(bound) || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.3522 + i==(_n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.3523 + _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.3524 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i) 307.3525 + 307.3526 +#define cimg_for18X(img,x) cimg_for18((img).width,x) 307.3527 +#define cimg_for18Y(img,y) cimg_for18((img).height,y) 307.3528 +#define cimg_for18Z(img,z) cimg_for18((img).depth,z) 307.3529 +#define cimg_for18V(img,v) cimg_for18((img).dim,v) 307.3530 +#define cimg_for18XY(img,x,y) cimg_for18Y(img,y) cimg_for18X(img,x) 307.3531 +#define cimg_for18XZ(img,x,z) cimg_for18Z(img,z) cimg_for18X(img,x) 307.3532 +#define cimg_for18XV(img,x,v) cimg_for18V(img,v) cimg_for18X(img,x) 307.3533 +#define cimg_for18YZ(img,y,z) cimg_for18Z(img,z) cimg_for18Y(img,y) 307.3534 +#define cimg_for18YV(img,y,v) cimg_for18V(img,v) cimg_for18Y(img,y) 307.3535 +#define cimg_for18ZV(img,z,v) cimg_for18V(img,v) cimg_for18Z(img,z) 307.3536 +#define cimg_for18XYZ(img,x,y,z) cimg_for18Z(img,z) cimg_for18XY(img,x,y) 307.3537 +#define cimg_for18XZV(img,x,z,v) cimg_for18V(img,v) cimg_for18XZ(img,x,z) 307.3538 +#define cimg_for18YZV(img,y,z,v) cimg_for18V(img,v) cimg_for18YZ(img,y,z) 307.3539 +#define cimg_for18XYZV(img,x,y,z,v) cimg_for18V(img,v) cimg_for18XYZ(img,x,y,z) 307.3540 + 307.3541 +#define cimg_for_in18(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.3542 + _p8##i = i-8<0?0:i-8, \ 307.3543 + _p7##i = i-7<0?0:i-7, \ 307.3544 + _p6##i = i-6<0?0:i-6, \ 307.3545 + _p5##i = i-5<0?0:i-5, \ 307.3546 + _p4##i = i-4<0?0:i-4, \ 307.3547 + _p3##i = i-3<0?0:i-3, \ 307.3548 + _p2##i = i-2<0?0:i-2, \ 307.3549 + _p1##i = i-1<0?0:i-1, \ 307.3550 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.3551 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.3552 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.3553 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.3554 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.3555 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.3556 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.3557 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.3558 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9; \ 307.3559 + i<=(int)(i1) && (_n9##i<(int)(bound) || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.3560 + i==(_n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.3561 + _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.3562 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i) 307.3563 + 307.3564 +#define cimg_for_in18X(img,x0,x1,x) cimg_for_in18((img).width,x0,x1,x) 307.3565 +#define cimg_for_in18Y(img,y0,y1,y) cimg_for_in18((img).height,y0,y1,y) 307.3566 +#define cimg_for_in18Z(img,z0,z1,z) cimg_for_in18((img).depth,z0,z1,z) 307.3567 +#define cimg_for_in18V(img,v0,v1,v) cimg_for_in18((img).dim,v0,v1,v) 307.3568 +#define cimg_for_in18XY(img,x0,y0,x1,y1,x,y) cimg_for_in18Y(img,y0,y1,y) cimg_for_in18X(img,x0,x1,x) 307.3569 +#define cimg_for_in18XZ(img,x0,z0,x1,z1,x,z) cimg_for_in18Z(img,z0,z1,z) cimg_for_in18X(img,x0,x1,x) 307.3570 +#define cimg_for_in18XV(img,x0,v0,x1,v1,x,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18X(img,x0,x1,x) 307.3571 +#define cimg_for_in18YZ(img,y0,z0,y1,z1,y,z) cimg_for_in18Z(img,z0,z1,z) cimg_for_in18Y(img,y0,y1,y) 307.3572 +#define cimg_for_in18YV(img,y0,v0,y1,v1,y,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18Y(img,y0,y1,y) 307.3573 +#define cimg_for_in18ZV(img,z0,v0,z1,v1,z,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18Z(img,z0,z1,z) 307.3574 +#define cimg_for_in18XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in18Z(img,z0,z1,z) cimg_for_in18XY(img,x0,y0,x1,y1,x,y) 307.3575 +#define cimg_for_in18XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18XZ(img,x0,y0,x1,y1,x,z) 307.3576 +#define cimg_for_in18YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18YZ(img,y0,z0,y1,z1,y,z) 307.3577 +#define cimg_for_in18XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in18V(img,v0,v1,v) cimg_for_in18XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.3578 + 307.3579 +#define cimg_for18x18(img,x,y,z,v,I) \ 307.3580 + cimg_for18((img).height,y) for (int x = 0, \ 307.3581 + _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.3582 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.3583 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.3584 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.3585 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.3586 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.3587 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.3588 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.3589 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.3590 + _n9##x = (int)( \ 307.3591 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = (img)(0,_p8##y,z,v)), \ 307.3592 + (I[18] = I[19] = I[20] = I[21] = I[22] = I[23] = I[24] = I[25] = I[26] = (img)(0,_p7##y,z,v)), \ 307.3593 + (I[36] = I[37] = I[38] = I[39] = I[40] = I[41] = I[42] = I[43] = I[44] = (img)(0,_p6##y,z,v)), \ 307.3594 + (I[54] = I[55] = I[56] = I[57] = I[58] = I[59] = I[60] = I[61] = I[62] = (img)(0,_p5##y,z,v)), \ 307.3595 + (I[72] = I[73] = I[74] = I[75] = I[76] = I[77] = I[78] = I[79] = I[80] = (img)(0,_p4##y,z,v)), \ 307.3596 + (I[90] = I[91] = I[92] = I[93] = I[94] = I[95] = I[96] = I[97] = I[98] = (img)(0,_p3##y,z,v)), \ 307.3597 + (I[108] = I[109] = I[110] = I[111] = I[112] = I[113] = I[114] = I[115] = I[116] = (img)(0,_p2##y,z,v)), \ 307.3598 + (I[126] = I[127] = I[128] = I[129] = I[130] = I[131] = I[132] = I[133] = I[134] = (img)(0,_p1##y,z,v)), \ 307.3599 + (I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = I[150] = I[151] = I[152] = (img)(0,y,z,v)), \ 307.3600 + (I[162] = I[163] = I[164] = I[165] = I[166] = I[167] = I[168] = I[169] = I[170] = (img)(0,_n1##y,z,v)), \ 307.3601 + (I[180] = I[181] = I[182] = I[183] = I[184] = I[185] = I[186] = I[187] = I[188] = (img)(0,_n2##y,z,v)), \ 307.3602 + (I[198] = I[199] = I[200] = I[201] = I[202] = I[203] = I[204] = I[205] = I[206] = (img)(0,_n3##y,z,v)), \ 307.3603 + (I[216] = I[217] = I[218] = I[219] = I[220] = I[221] = I[222] = I[223] = I[224] = (img)(0,_n4##y,z,v)), \ 307.3604 + (I[234] = I[235] = I[236] = I[237] = I[238] = I[239] = I[240] = I[241] = I[242] = (img)(0,_n5##y,z,v)), \ 307.3605 + (I[252] = I[253] = I[254] = I[255] = I[256] = I[257] = I[258] = I[259] = I[260] = (img)(0,_n6##y,z,v)), \ 307.3606 + (I[270] = I[271] = I[272] = I[273] = I[274] = I[275] = I[276] = I[277] = I[278] = (img)(0,_n7##y,z,v)), \ 307.3607 + (I[288] = I[289] = I[290] = I[291] = I[292] = I[293] = I[294] = I[295] = I[296] = (img)(0,_n8##y,z,v)), \ 307.3608 + (I[306] = I[307] = I[308] = I[309] = I[310] = I[311] = I[312] = I[313] = I[314] = (img)(0,_n9##y,z,v)), \ 307.3609 + (I[9] = (img)(_n1##x,_p8##y,z,v)), \ 307.3610 + (I[27] = (img)(_n1##x,_p7##y,z,v)), \ 307.3611 + (I[45] = (img)(_n1##x,_p6##y,z,v)), \ 307.3612 + (I[63] = (img)(_n1##x,_p5##y,z,v)), \ 307.3613 + (I[81] = (img)(_n1##x,_p4##y,z,v)), \ 307.3614 + (I[99] = (img)(_n1##x,_p3##y,z,v)), \ 307.3615 + (I[117] = (img)(_n1##x,_p2##y,z,v)), \ 307.3616 + (I[135] = (img)(_n1##x,_p1##y,z,v)), \ 307.3617 + (I[153] = (img)(_n1##x,y,z,v)), \ 307.3618 + (I[171] = (img)(_n1##x,_n1##y,z,v)), \ 307.3619 + (I[189] = (img)(_n1##x,_n2##y,z,v)), \ 307.3620 + (I[207] = (img)(_n1##x,_n3##y,z,v)), \ 307.3621 + (I[225] = (img)(_n1##x,_n4##y,z,v)), \ 307.3622 + (I[243] = (img)(_n1##x,_n5##y,z,v)), \ 307.3623 + (I[261] = (img)(_n1##x,_n6##y,z,v)), \ 307.3624 + (I[279] = (img)(_n1##x,_n7##y,z,v)), \ 307.3625 + (I[297] = (img)(_n1##x,_n8##y,z,v)), \ 307.3626 + (I[315] = (img)(_n1##x,_n9##y,z,v)), \ 307.3627 + (I[10] = (img)(_n2##x,_p8##y,z,v)), \ 307.3628 + (I[28] = (img)(_n2##x,_p7##y,z,v)), \ 307.3629 + (I[46] = (img)(_n2##x,_p6##y,z,v)), \ 307.3630 + (I[64] = (img)(_n2##x,_p5##y,z,v)), \ 307.3631 + (I[82] = (img)(_n2##x,_p4##y,z,v)), \ 307.3632 + (I[100] = (img)(_n2##x,_p3##y,z,v)), \ 307.3633 + (I[118] = (img)(_n2##x,_p2##y,z,v)), \ 307.3634 + (I[136] = (img)(_n2##x,_p1##y,z,v)), \ 307.3635 + (I[154] = (img)(_n2##x,y,z,v)), \ 307.3636 + (I[172] = (img)(_n2##x,_n1##y,z,v)), \ 307.3637 + (I[190] = (img)(_n2##x,_n2##y,z,v)), \ 307.3638 + (I[208] = (img)(_n2##x,_n3##y,z,v)), \ 307.3639 + (I[226] = (img)(_n2##x,_n4##y,z,v)), \ 307.3640 + (I[244] = (img)(_n2##x,_n5##y,z,v)), \ 307.3641 + (I[262] = (img)(_n2##x,_n6##y,z,v)), \ 307.3642 + (I[280] = (img)(_n2##x,_n7##y,z,v)), \ 307.3643 + (I[298] = (img)(_n2##x,_n8##y,z,v)), \ 307.3644 + (I[316] = (img)(_n2##x,_n9##y,z,v)), \ 307.3645 + (I[11] = (img)(_n3##x,_p8##y,z,v)), \ 307.3646 + (I[29] = (img)(_n3##x,_p7##y,z,v)), \ 307.3647 + (I[47] = (img)(_n3##x,_p6##y,z,v)), \ 307.3648 + (I[65] = (img)(_n3##x,_p5##y,z,v)), \ 307.3649 + (I[83] = (img)(_n3##x,_p4##y,z,v)), \ 307.3650 + (I[101] = (img)(_n3##x,_p3##y,z,v)), \ 307.3651 + (I[119] = (img)(_n3##x,_p2##y,z,v)), \ 307.3652 + (I[137] = (img)(_n3##x,_p1##y,z,v)), \ 307.3653 + (I[155] = (img)(_n3##x,y,z,v)), \ 307.3654 + (I[173] = (img)(_n3##x,_n1##y,z,v)), \ 307.3655 + (I[191] = (img)(_n3##x,_n2##y,z,v)), \ 307.3656 + (I[209] = (img)(_n3##x,_n3##y,z,v)), \ 307.3657 + (I[227] = (img)(_n3##x,_n4##y,z,v)), \ 307.3658 + (I[245] = (img)(_n3##x,_n5##y,z,v)), \ 307.3659 + (I[263] = (img)(_n3##x,_n6##y,z,v)), \ 307.3660 + (I[281] = (img)(_n3##x,_n7##y,z,v)), \ 307.3661 + (I[299] = (img)(_n3##x,_n8##y,z,v)), \ 307.3662 + (I[317] = (img)(_n3##x,_n9##y,z,v)), \ 307.3663 + (I[12] = (img)(_n4##x,_p8##y,z,v)), \ 307.3664 + (I[30] = (img)(_n4##x,_p7##y,z,v)), \ 307.3665 + (I[48] = (img)(_n4##x,_p6##y,z,v)), \ 307.3666 + (I[66] = (img)(_n4##x,_p5##y,z,v)), \ 307.3667 + (I[84] = (img)(_n4##x,_p4##y,z,v)), \ 307.3668 + (I[102] = (img)(_n4##x,_p3##y,z,v)), \ 307.3669 + (I[120] = (img)(_n4##x,_p2##y,z,v)), \ 307.3670 + (I[138] = (img)(_n4##x,_p1##y,z,v)), \ 307.3671 + (I[156] = (img)(_n4##x,y,z,v)), \ 307.3672 + (I[174] = (img)(_n4##x,_n1##y,z,v)), \ 307.3673 + (I[192] = (img)(_n4##x,_n2##y,z,v)), \ 307.3674 + (I[210] = (img)(_n4##x,_n3##y,z,v)), \ 307.3675 + (I[228] = (img)(_n4##x,_n4##y,z,v)), \ 307.3676 + (I[246] = (img)(_n4##x,_n5##y,z,v)), \ 307.3677 + (I[264] = (img)(_n4##x,_n6##y,z,v)), \ 307.3678 + (I[282] = (img)(_n4##x,_n7##y,z,v)), \ 307.3679 + (I[300] = (img)(_n4##x,_n8##y,z,v)), \ 307.3680 + (I[318] = (img)(_n4##x,_n9##y,z,v)), \ 307.3681 + (I[13] = (img)(_n5##x,_p8##y,z,v)), \ 307.3682 + (I[31] = (img)(_n5##x,_p7##y,z,v)), \ 307.3683 + (I[49] = (img)(_n5##x,_p6##y,z,v)), \ 307.3684 + (I[67] = (img)(_n5##x,_p5##y,z,v)), \ 307.3685 + (I[85] = (img)(_n5##x,_p4##y,z,v)), \ 307.3686 + (I[103] = (img)(_n5##x,_p3##y,z,v)), \ 307.3687 + (I[121] = (img)(_n5##x,_p2##y,z,v)), \ 307.3688 + (I[139] = (img)(_n5##x,_p1##y,z,v)), \ 307.3689 + (I[157] = (img)(_n5##x,y,z,v)), \ 307.3690 + (I[175] = (img)(_n5##x,_n1##y,z,v)), \ 307.3691 + (I[193] = (img)(_n5##x,_n2##y,z,v)), \ 307.3692 + (I[211] = (img)(_n5##x,_n3##y,z,v)), \ 307.3693 + (I[229] = (img)(_n5##x,_n4##y,z,v)), \ 307.3694 + (I[247] = (img)(_n5##x,_n5##y,z,v)), \ 307.3695 + (I[265] = (img)(_n5##x,_n6##y,z,v)), \ 307.3696 + (I[283] = (img)(_n5##x,_n7##y,z,v)), \ 307.3697 + (I[301] = (img)(_n5##x,_n8##y,z,v)), \ 307.3698 + (I[319] = (img)(_n5##x,_n9##y,z,v)), \ 307.3699 + (I[14] = (img)(_n6##x,_p8##y,z,v)), \ 307.3700 + (I[32] = (img)(_n6##x,_p7##y,z,v)), \ 307.3701 + (I[50] = (img)(_n6##x,_p6##y,z,v)), \ 307.3702 + (I[68] = (img)(_n6##x,_p5##y,z,v)), \ 307.3703 + (I[86] = (img)(_n6##x,_p4##y,z,v)), \ 307.3704 + (I[104] = (img)(_n6##x,_p3##y,z,v)), \ 307.3705 + (I[122] = (img)(_n6##x,_p2##y,z,v)), \ 307.3706 + (I[140] = (img)(_n6##x,_p1##y,z,v)), \ 307.3707 + (I[158] = (img)(_n6##x,y,z,v)), \ 307.3708 + (I[176] = (img)(_n6##x,_n1##y,z,v)), \ 307.3709 + (I[194] = (img)(_n6##x,_n2##y,z,v)), \ 307.3710 + (I[212] = (img)(_n6##x,_n3##y,z,v)), \ 307.3711 + (I[230] = (img)(_n6##x,_n4##y,z,v)), \ 307.3712 + (I[248] = (img)(_n6##x,_n5##y,z,v)), \ 307.3713 + (I[266] = (img)(_n6##x,_n6##y,z,v)), \ 307.3714 + (I[284] = (img)(_n6##x,_n7##y,z,v)), \ 307.3715 + (I[302] = (img)(_n6##x,_n8##y,z,v)), \ 307.3716 + (I[320] = (img)(_n6##x,_n9##y,z,v)), \ 307.3717 + (I[15] = (img)(_n7##x,_p8##y,z,v)), \ 307.3718 + (I[33] = (img)(_n7##x,_p7##y,z,v)), \ 307.3719 + (I[51] = (img)(_n7##x,_p6##y,z,v)), \ 307.3720 + (I[69] = (img)(_n7##x,_p5##y,z,v)), \ 307.3721 + (I[87] = (img)(_n7##x,_p4##y,z,v)), \ 307.3722 + (I[105] = (img)(_n7##x,_p3##y,z,v)), \ 307.3723 + (I[123] = (img)(_n7##x,_p2##y,z,v)), \ 307.3724 + (I[141] = (img)(_n7##x,_p1##y,z,v)), \ 307.3725 + (I[159] = (img)(_n7##x,y,z,v)), \ 307.3726 + (I[177] = (img)(_n7##x,_n1##y,z,v)), \ 307.3727 + (I[195] = (img)(_n7##x,_n2##y,z,v)), \ 307.3728 + (I[213] = (img)(_n7##x,_n3##y,z,v)), \ 307.3729 + (I[231] = (img)(_n7##x,_n4##y,z,v)), \ 307.3730 + (I[249] = (img)(_n7##x,_n5##y,z,v)), \ 307.3731 + (I[267] = (img)(_n7##x,_n6##y,z,v)), \ 307.3732 + (I[285] = (img)(_n7##x,_n7##y,z,v)), \ 307.3733 + (I[303] = (img)(_n7##x,_n8##y,z,v)), \ 307.3734 + (I[321] = (img)(_n7##x,_n9##y,z,v)), \ 307.3735 + (I[16] = (img)(_n8##x,_p8##y,z,v)), \ 307.3736 + (I[34] = (img)(_n8##x,_p7##y,z,v)), \ 307.3737 + (I[52] = (img)(_n8##x,_p6##y,z,v)), \ 307.3738 + (I[70] = (img)(_n8##x,_p5##y,z,v)), \ 307.3739 + (I[88] = (img)(_n8##x,_p4##y,z,v)), \ 307.3740 + (I[106] = (img)(_n8##x,_p3##y,z,v)), \ 307.3741 + (I[124] = (img)(_n8##x,_p2##y,z,v)), \ 307.3742 + (I[142] = (img)(_n8##x,_p1##y,z,v)), \ 307.3743 + (I[160] = (img)(_n8##x,y,z,v)), \ 307.3744 + (I[178] = (img)(_n8##x,_n1##y,z,v)), \ 307.3745 + (I[196] = (img)(_n8##x,_n2##y,z,v)), \ 307.3746 + (I[214] = (img)(_n8##x,_n3##y,z,v)), \ 307.3747 + (I[232] = (img)(_n8##x,_n4##y,z,v)), \ 307.3748 + (I[250] = (img)(_n8##x,_n5##y,z,v)), \ 307.3749 + (I[268] = (img)(_n8##x,_n6##y,z,v)), \ 307.3750 + (I[286] = (img)(_n8##x,_n7##y,z,v)), \ 307.3751 + (I[304] = (img)(_n8##x,_n8##y,z,v)), \ 307.3752 + (I[322] = (img)(_n8##x,_n9##y,z,v)), \ 307.3753 + 9>=((img).width)?(int)((img).width)-1:9); \ 307.3754 + (_n9##x<(int)((img).width) && ( \ 307.3755 + (I[17] = (img)(_n9##x,_p8##y,z,v)), \ 307.3756 + (I[35] = (img)(_n9##x,_p7##y,z,v)), \ 307.3757 + (I[53] = (img)(_n9##x,_p6##y,z,v)), \ 307.3758 + (I[71] = (img)(_n9##x,_p5##y,z,v)), \ 307.3759 + (I[89] = (img)(_n9##x,_p4##y,z,v)), \ 307.3760 + (I[107] = (img)(_n9##x,_p3##y,z,v)), \ 307.3761 + (I[125] = (img)(_n9##x,_p2##y,z,v)), \ 307.3762 + (I[143] = (img)(_n9##x,_p1##y,z,v)), \ 307.3763 + (I[161] = (img)(_n9##x,y,z,v)), \ 307.3764 + (I[179] = (img)(_n9##x,_n1##y,z,v)), \ 307.3765 + (I[197] = (img)(_n9##x,_n2##y,z,v)), \ 307.3766 + (I[215] = (img)(_n9##x,_n3##y,z,v)), \ 307.3767 + (I[233] = (img)(_n9##x,_n4##y,z,v)), \ 307.3768 + (I[251] = (img)(_n9##x,_n5##y,z,v)), \ 307.3769 + (I[269] = (img)(_n9##x,_n6##y,z,v)), \ 307.3770 + (I[287] = (img)(_n9##x,_n7##y,z,v)), \ 307.3771 + (I[305] = (img)(_n9##x,_n8##y,z,v)), \ 307.3772 + (I[323] = (img)(_n9##x,_n9##y,z,v)),1)) || \ 307.3773 + _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.3774 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 307.3775 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.3776 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 307.3777 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.3778 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.3779 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.3780 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.3781 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.3782 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], \ 307.3783 + I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.3784 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.3785 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.3786 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], \ 307.3787 + I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.3788 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], \ 307.3789 + I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.3790 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], \ 307.3791 + I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], \ 307.3792 + _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x) 307.3793 + 307.3794 +#define cimg_for_in18x18(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.3795 + cimg_for_in18((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.3796 + _p8##x = x-8<0?0:x-8, \ 307.3797 + _p7##x = x-7<0?0:x-7, \ 307.3798 + _p6##x = x-6<0?0:x-6, \ 307.3799 + _p5##x = x-5<0?0:x-5, \ 307.3800 + _p4##x = x-4<0?0:x-4, \ 307.3801 + _p3##x = x-3<0?0:x-3, \ 307.3802 + _p2##x = x-2<0?0:x-2, \ 307.3803 + _p1##x = x-1<0?0:x-1, \ 307.3804 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.3805 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.3806 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.3807 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.3808 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.3809 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.3810 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.3811 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.3812 + _n9##x = (int)( \ 307.3813 + (I[0] = (img)(_p8##x,_p8##y,z,v)), \ 307.3814 + (I[18] = (img)(_p8##x,_p7##y,z,v)), \ 307.3815 + (I[36] = (img)(_p8##x,_p6##y,z,v)), \ 307.3816 + (I[54] = (img)(_p8##x,_p5##y,z,v)), \ 307.3817 + (I[72] = (img)(_p8##x,_p4##y,z,v)), \ 307.3818 + (I[90] = (img)(_p8##x,_p3##y,z,v)), \ 307.3819 + (I[108] = (img)(_p8##x,_p2##y,z,v)), \ 307.3820 + (I[126] = (img)(_p8##x,_p1##y,z,v)), \ 307.3821 + (I[144] = (img)(_p8##x,y,z,v)), \ 307.3822 + (I[162] = (img)(_p8##x,_n1##y,z,v)), \ 307.3823 + (I[180] = (img)(_p8##x,_n2##y,z,v)), \ 307.3824 + (I[198] = (img)(_p8##x,_n3##y,z,v)), \ 307.3825 + (I[216] = (img)(_p8##x,_n4##y,z,v)), \ 307.3826 + (I[234] = (img)(_p8##x,_n5##y,z,v)), \ 307.3827 + (I[252] = (img)(_p8##x,_n6##y,z,v)), \ 307.3828 + (I[270] = (img)(_p8##x,_n7##y,z,v)), \ 307.3829 + (I[288] = (img)(_p8##x,_n8##y,z,v)), \ 307.3830 + (I[306] = (img)(_p8##x,_n9##y,z,v)), \ 307.3831 + (I[1] = (img)(_p7##x,_p8##y,z,v)), \ 307.3832 + (I[19] = (img)(_p7##x,_p7##y,z,v)), \ 307.3833 + (I[37] = (img)(_p7##x,_p6##y,z,v)), \ 307.3834 + (I[55] = (img)(_p7##x,_p5##y,z,v)), \ 307.3835 + (I[73] = (img)(_p7##x,_p4##y,z,v)), \ 307.3836 + (I[91] = (img)(_p7##x,_p3##y,z,v)), \ 307.3837 + (I[109] = (img)(_p7##x,_p2##y,z,v)), \ 307.3838 + (I[127] = (img)(_p7##x,_p1##y,z,v)), \ 307.3839 + (I[145] = (img)(_p7##x,y,z,v)), \ 307.3840 + (I[163] = (img)(_p7##x,_n1##y,z,v)), \ 307.3841 + (I[181] = (img)(_p7##x,_n2##y,z,v)), \ 307.3842 + (I[199] = (img)(_p7##x,_n3##y,z,v)), \ 307.3843 + (I[217] = (img)(_p7##x,_n4##y,z,v)), \ 307.3844 + (I[235] = (img)(_p7##x,_n5##y,z,v)), \ 307.3845 + (I[253] = (img)(_p7##x,_n6##y,z,v)), \ 307.3846 + (I[271] = (img)(_p7##x,_n7##y,z,v)), \ 307.3847 + (I[289] = (img)(_p7##x,_n8##y,z,v)), \ 307.3848 + (I[307] = (img)(_p7##x,_n9##y,z,v)), \ 307.3849 + (I[2] = (img)(_p6##x,_p8##y,z,v)), \ 307.3850 + (I[20] = (img)(_p6##x,_p7##y,z,v)), \ 307.3851 + (I[38] = (img)(_p6##x,_p6##y,z,v)), \ 307.3852 + (I[56] = (img)(_p6##x,_p5##y,z,v)), \ 307.3853 + (I[74] = (img)(_p6##x,_p4##y,z,v)), \ 307.3854 + (I[92] = (img)(_p6##x,_p3##y,z,v)), \ 307.3855 + (I[110] = (img)(_p6##x,_p2##y,z,v)), \ 307.3856 + (I[128] = (img)(_p6##x,_p1##y,z,v)), \ 307.3857 + (I[146] = (img)(_p6##x,y,z,v)), \ 307.3858 + (I[164] = (img)(_p6##x,_n1##y,z,v)), \ 307.3859 + (I[182] = (img)(_p6##x,_n2##y,z,v)), \ 307.3860 + (I[200] = (img)(_p6##x,_n3##y,z,v)), \ 307.3861 + (I[218] = (img)(_p6##x,_n4##y,z,v)), \ 307.3862 + (I[236] = (img)(_p6##x,_n5##y,z,v)), \ 307.3863 + (I[254] = (img)(_p6##x,_n6##y,z,v)), \ 307.3864 + (I[272] = (img)(_p6##x,_n7##y,z,v)), \ 307.3865 + (I[290] = (img)(_p6##x,_n8##y,z,v)), \ 307.3866 + (I[308] = (img)(_p6##x,_n9##y,z,v)), \ 307.3867 + (I[3] = (img)(_p5##x,_p8##y,z,v)), \ 307.3868 + (I[21] = (img)(_p5##x,_p7##y,z,v)), \ 307.3869 + (I[39] = (img)(_p5##x,_p6##y,z,v)), \ 307.3870 + (I[57] = (img)(_p5##x,_p5##y,z,v)), \ 307.3871 + (I[75] = (img)(_p5##x,_p4##y,z,v)), \ 307.3872 + (I[93] = (img)(_p5##x,_p3##y,z,v)), \ 307.3873 + (I[111] = (img)(_p5##x,_p2##y,z,v)), \ 307.3874 + (I[129] = (img)(_p5##x,_p1##y,z,v)), \ 307.3875 + (I[147] = (img)(_p5##x,y,z,v)), \ 307.3876 + (I[165] = (img)(_p5##x,_n1##y,z,v)), \ 307.3877 + (I[183] = (img)(_p5##x,_n2##y,z,v)), \ 307.3878 + (I[201] = (img)(_p5##x,_n3##y,z,v)), \ 307.3879 + (I[219] = (img)(_p5##x,_n4##y,z,v)), \ 307.3880 + (I[237] = (img)(_p5##x,_n5##y,z,v)), \ 307.3881 + (I[255] = (img)(_p5##x,_n6##y,z,v)), \ 307.3882 + (I[273] = (img)(_p5##x,_n7##y,z,v)), \ 307.3883 + (I[291] = (img)(_p5##x,_n8##y,z,v)), \ 307.3884 + (I[309] = (img)(_p5##x,_n9##y,z,v)), \ 307.3885 + (I[4] = (img)(_p4##x,_p8##y,z,v)), \ 307.3886 + (I[22] = (img)(_p4##x,_p7##y,z,v)), \ 307.3887 + (I[40] = (img)(_p4##x,_p6##y,z,v)), \ 307.3888 + (I[58] = (img)(_p4##x,_p5##y,z,v)), \ 307.3889 + (I[76] = (img)(_p4##x,_p4##y,z,v)), \ 307.3890 + (I[94] = (img)(_p4##x,_p3##y,z,v)), \ 307.3891 + (I[112] = (img)(_p4##x,_p2##y,z,v)), \ 307.3892 + (I[130] = (img)(_p4##x,_p1##y,z,v)), \ 307.3893 + (I[148] = (img)(_p4##x,y,z,v)), \ 307.3894 + (I[166] = (img)(_p4##x,_n1##y,z,v)), \ 307.3895 + (I[184] = (img)(_p4##x,_n2##y,z,v)), \ 307.3896 + (I[202] = (img)(_p4##x,_n3##y,z,v)), \ 307.3897 + (I[220] = (img)(_p4##x,_n4##y,z,v)), \ 307.3898 + (I[238] = (img)(_p4##x,_n5##y,z,v)), \ 307.3899 + (I[256] = (img)(_p4##x,_n6##y,z,v)), \ 307.3900 + (I[274] = (img)(_p4##x,_n7##y,z,v)), \ 307.3901 + (I[292] = (img)(_p4##x,_n8##y,z,v)), \ 307.3902 + (I[310] = (img)(_p4##x,_n9##y,z,v)), \ 307.3903 + (I[5] = (img)(_p3##x,_p8##y,z,v)), \ 307.3904 + (I[23] = (img)(_p3##x,_p7##y,z,v)), \ 307.3905 + (I[41] = (img)(_p3##x,_p6##y,z,v)), \ 307.3906 + (I[59] = (img)(_p3##x,_p5##y,z,v)), \ 307.3907 + (I[77] = (img)(_p3##x,_p4##y,z,v)), \ 307.3908 + (I[95] = (img)(_p3##x,_p3##y,z,v)), \ 307.3909 + (I[113] = (img)(_p3##x,_p2##y,z,v)), \ 307.3910 + (I[131] = (img)(_p3##x,_p1##y,z,v)), \ 307.3911 + (I[149] = (img)(_p3##x,y,z,v)), \ 307.3912 + (I[167] = (img)(_p3##x,_n1##y,z,v)), \ 307.3913 + (I[185] = (img)(_p3##x,_n2##y,z,v)), \ 307.3914 + (I[203] = (img)(_p3##x,_n3##y,z,v)), \ 307.3915 + (I[221] = (img)(_p3##x,_n4##y,z,v)), \ 307.3916 + (I[239] = (img)(_p3##x,_n5##y,z,v)), \ 307.3917 + (I[257] = (img)(_p3##x,_n6##y,z,v)), \ 307.3918 + (I[275] = (img)(_p3##x,_n7##y,z,v)), \ 307.3919 + (I[293] = (img)(_p3##x,_n8##y,z,v)), \ 307.3920 + (I[311] = (img)(_p3##x,_n9##y,z,v)), \ 307.3921 + (I[6] = (img)(_p2##x,_p8##y,z,v)), \ 307.3922 + (I[24] = (img)(_p2##x,_p7##y,z,v)), \ 307.3923 + (I[42] = (img)(_p2##x,_p6##y,z,v)), \ 307.3924 + (I[60] = (img)(_p2##x,_p5##y,z,v)), \ 307.3925 + (I[78] = (img)(_p2##x,_p4##y,z,v)), \ 307.3926 + (I[96] = (img)(_p2##x,_p3##y,z,v)), \ 307.3927 + (I[114] = (img)(_p2##x,_p2##y,z,v)), \ 307.3928 + (I[132] = (img)(_p2##x,_p1##y,z,v)), \ 307.3929 + (I[150] = (img)(_p2##x,y,z,v)), \ 307.3930 + (I[168] = (img)(_p2##x,_n1##y,z,v)), \ 307.3931 + (I[186] = (img)(_p2##x,_n2##y,z,v)), \ 307.3932 + (I[204] = (img)(_p2##x,_n3##y,z,v)), \ 307.3933 + (I[222] = (img)(_p2##x,_n4##y,z,v)), \ 307.3934 + (I[240] = (img)(_p2##x,_n5##y,z,v)), \ 307.3935 + (I[258] = (img)(_p2##x,_n6##y,z,v)), \ 307.3936 + (I[276] = (img)(_p2##x,_n7##y,z,v)), \ 307.3937 + (I[294] = (img)(_p2##x,_n8##y,z,v)), \ 307.3938 + (I[312] = (img)(_p2##x,_n9##y,z,v)), \ 307.3939 + (I[7] = (img)(_p1##x,_p8##y,z,v)), \ 307.3940 + (I[25] = (img)(_p1##x,_p7##y,z,v)), \ 307.3941 + (I[43] = (img)(_p1##x,_p6##y,z,v)), \ 307.3942 + (I[61] = (img)(_p1##x,_p5##y,z,v)), \ 307.3943 + (I[79] = (img)(_p1##x,_p4##y,z,v)), \ 307.3944 + (I[97] = (img)(_p1##x,_p3##y,z,v)), \ 307.3945 + (I[115] = (img)(_p1##x,_p2##y,z,v)), \ 307.3946 + (I[133] = (img)(_p1##x,_p1##y,z,v)), \ 307.3947 + (I[151] = (img)(_p1##x,y,z,v)), \ 307.3948 + (I[169] = (img)(_p1##x,_n1##y,z,v)), \ 307.3949 + (I[187] = (img)(_p1##x,_n2##y,z,v)), \ 307.3950 + (I[205] = (img)(_p1##x,_n3##y,z,v)), \ 307.3951 + (I[223] = (img)(_p1##x,_n4##y,z,v)), \ 307.3952 + (I[241] = (img)(_p1##x,_n5##y,z,v)), \ 307.3953 + (I[259] = (img)(_p1##x,_n6##y,z,v)), \ 307.3954 + (I[277] = (img)(_p1##x,_n7##y,z,v)), \ 307.3955 + (I[295] = (img)(_p1##x,_n8##y,z,v)), \ 307.3956 + (I[313] = (img)(_p1##x,_n9##y,z,v)), \ 307.3957 + (I[8] = (img)(x,_p8##y,z,v)), \ 307.3958 + (I[26] = (img)(x,_p7##y,z,v)), \ 307.3959 + (I[44] = (img)(x,_p6##y,z,v)), \ 307.3960 + (I[62] = (img)(x,_p5##y,z,v)), \ 307.3961 + (I[80] = (img)(x,_p4##y,z,v)), \ 307.3962 + (I[98] = (img)(x,_p3##y,z,v)), \ 307.3963 + (I[116] = (img)(x,_p2##y,z,v)), \ 307.3964 + (I[134] = (img)(x,_p1##y,z,v)), \ 307.3965 + (I[152] = (img)(x,y,z,v)), \ 307.3966 + (I[170] = (img)(x,_n1##y,z,v)), \ 307.3967 + (I[188] = (img)(x,_n2##y,z,v)), \ 307.3968 + (I[206] = (img)(x,_n3##y,z,v)), \ 307.3969 + (I[224] = (img)(x,_n4##y,z,v)), \ 307.3970 + (I[242] = (img)(x,_n5##y,z,v)), \ 307.3971 + (I[260] = (img)(x,_n6##y,z,v)), \ 307.3972 + (I[278] = (img)(x,_n7##y,z,v)), \ 307.3973 + (I[296] = (img)(x,_n8##y,z,v)), \ 307.3974 + (I[314] = (img)(x,_n9##y,z,v)), \ 307.3975 + (I[9] = (img)(_n1##x,_p8##y,z,v)), \ 307.3976 + (I[27] = (img)(_n1##x,_p7##y,z,v)), \ 307.3977 + (I[45] = (img)(_n1##x,_p6##y,z,v)), \ 307.3978 + (I[63] = (img)(_n1##x,_p5##y,z,v)), \ 307.3979 + (I[81] = (img)(_n1##x,_p4##y,z,v)), \ 307.3980 + (I[99] = (img)(_n1##x,_p3##y,z,v)), \ 307.3981 + (I[117] = (img)(_n1##x,_p2##y,z,v)), \ 307.3982 + (I[135] = (img)(_n1##x,_p1##y,z,v)), \ 307.3983 + (I[153] = (img)(_n1##x,y,z,v)), \ 307.3984 + (I[171] = (img)(_n1##x,_n1##y,z,v)), \ 307.3985 + (I[189] = (img)(_n1##x,_n2##y,z,v)), \ 307.3986 + (I[207] = (img)(_n1##x,_n3##y,z,v)), \ 307.3987 + (I[225] = (img)(_n1##x,_n4##y,z,v)), \ 307.3988 + (I[243] = (img)(_n1##x,_n5##y,z,v)), \ 307.3989 + (I[261] = (img)(_n1##x,_n6##y,z,v)), \ 307.3990 + (I[279] = (img)(_n1##x,_n7##y,z,v)), \ 307.3991 + (I[297] = (img)(_n1##x,_n8##y,z,v)), \ 307.3992 + (I[315] = (img)(_n1##x,_n9##y,z,v)), \ 307.3993 + (I[10] = (img)(_n2##x,_p8##y,z,v)), \ 307.3994 + (I[28] = (img)(_n2##x,_p7##y,z,v)), \ 307.3995 + (I[46] = (img)(_n2##x,_p6##y,z,v)), \ 307.3996 + (I[64] = (img)(_n2##x,_p5##y,z,v)), \ 307.3997 + (I[82] = (img)(_n2##x,_p4##y,z,v)), \ 307.3998 + (I[100] = (img)(_n2##x,_p3##y,z,v)), \ 307.3999 + (I[118] = (img)(_n2##x,_p2##y,z,v)), \ 307.4000 + (I[136] = (img)(_n2##x,_p1##y,z,v)), \ 307.4001 + (I[154] = (img)(_n2##x,y,z,v)), \ 307.4002 + (I[172] = (img)(_n2##x,_n1##y,z,v)), \ 307.4003 + (I[190] = (img)(_n2##x,_n2##y,z,v)), \ 307.4004 + (I[208] = (img)(_n2##x,_n3##y,z,v)), \ 307.4005 + (I[226] = (img)(_n2##x,_n4##y,z,v)), \ 307.4006 + (I[244] = (img)(_n2##x,_n5##y,z,v)), \ 307.4007 + (I[262] = (img)(_n2##x,_n6##y,z,v)), \ 307.4008 + (I[280] = (img)(_n2##x,_n7##y,z,v)), \ 307.4009 + (I[298] = (img)(_n2##x,_n8##y,z,v)), \ 307.4010 + (I[316] = (img)(_n2##x,_n9##y,z,v)), \ 307.4011 + (I[11] = (img)(_n3##x,_p8##y,z,v)), \ 307.4012 + (I[29] = (img)(_n3##x,_p7##y,z,v)), \ 307.4013 + (I[47] = (img)(_n3##x,_p6##y,z,v)), \ 307.4014 + (I[65] = (img)(_n3##x,_p5##y,z,v)), \ 307.4015 + (I[83] = (img)(_n3##x,_p4##y,z,v)), \ 307.4016 + (I[101] = (img)(_n3##x,_p3##y,z,v)), \ 307.4017 + (I[119] = (img)(_n3##x,_p2##y,z,v)), \ 307.4018 + (I[137] = (img)(_n3##x,_p1##y,z,v)), \ 307.4019 + (I[155] = (img)(_n3##x,y,z,v)), \ 307.4020 + (I[173] = (img)(_n3##x,_n1##y,z,v)), \ 307.4021 + (I[191] = (img)(_n3##x,_n2##y,z,v)), \ 307.4022 + (I[209] = (img)(_n3##x,_n3##y,z,v)), \ 307.4023 + (I[227] = (img)(_n3##x,_n4##y,z,v)), \ 307.4024 + (I[245] = (img)(_n3##x,_n5##y,z,v)), \ 307.4025 + (I[263] = (img)(_n3##x,_n6##y,z,v)), \ 307.4026 + (I[281] = (img)(_n3##x,_n7##y,z,v)), \ 307.4027 + (I[299] = (img)(_n3##x,_n8##y,z,v)), \ 307.4028 + (I[317] = (img)(_n3##x,_n9##y,z,v)), \ 307.4029 + (I[12] = (img)(_n4##x,_p8##y,z,v)), \ 307.4030 + (I[30] = (img)(_n4##x,_p7##y,z,v)), \ 307.4031 + (I[48] = (img)(_n4##x,_p6##y,z,v)), \ 307.4032 + (I[66] = (img)(_n4##x,_p5##y,z,v)), \ 307.4033 + (I[84] = (img)(_n4##x,_p4##y,z,v)), \ 307.4034 + (I[102] = (img)(_n4##x,_p3##y,z,v)), \ 307.4035 + (I[120] = (img)(_n4##x,_p2##y,z,v)), \ 307.4036 + (I[138] = (img)(_n4##x,_p1##y,z,v)), \ 307.4037 + (I[156] = (img)(_n4##x,y,z,v)), \ 307.4038 + (I[174] = (img)(_n4##x,_n1##y,z,v)), \ 307.4039 + (I[192] = (img)(_n4##x,_n2##y,z,v)), \ 307.4040 + (I[210] = (img)(_n4##x,_n3##y,z,v)), \ 307.4041 + (I[228] = (img)(_n4##x,_n4##y,z,v)), \ 307.4042 + (I[246] = (img)(_n4##x,_n5##y,z,v)), \ 307.4043 + (I[264] = (img)(_n4##x,_n6##y,z,v)), \ 307.4044 + (I[282] = (img)(_n4##x,_n7##y,z,v)), \ 307.4045 + (I[300] = (img)(_n4##x,_n8##y,z,v)), \ 307.4046 + (I[318] = (img)(_n4##x,_n9##y,z,v)), \ 307.4047 + (I[13] = (img)(_n5##x,_p8##y,z,v)), \ 307.4048 + (I[31] = (img)(_n5##x,_p7##y,z,v)), \ 307.4049 + (I[49] = (img)(_n5##x,_p6##y,z,v)), \ 307.4050 + (I[67] = (img)(_n5##x,_p5##y,z,v)), \ 307.4051 + (I[85] = (img)(_n5##x,_p4##y,z,v)), \ 307.4052 + (I[103] = (img)(_n5##x,_p3##y,z,v)), \ 307.4053 + (I[121] = (img)(_n5##x,_p2##y,z,v)), \ 307.4054 + (I[139] = (img)(_n5##x,_p1##y,z,v)), \ 307.4055 + (I[157] = (img)(_n5##x,y,z,v)), \ 307.4056 + (I[175] = (img)(_n5##x,_n1##y,z,v)), \ 307.4057 + (I[193] = (img)(_n5##x,_n2##y,z,v)), \ 307.4058 + (I[211] = (img)(_n5##x,_n3##y,z,v)), \ 307.4059 + (I[229] = (img)(_n5##x,_n4##y,z,v)), \ 307.4060 + (I[247] = (img)(_n5##x,_n5##y,z,v)), \ 307.4061 + (I[265] = (img)(_n5##x,_n6##y,z,v)), \ 307.4062 + (I[283] = (img)(_n5##x,_n7##y,z,v)), \ 307.4063 + (I[301] = (img)(_n5##x,_n8##y,z,v)), \ 307.4064 + (I[319] = (img)(_n5##x,_n9##y,z,v)), \ 307.4065 + (I[14] = (img)(_n6##x,_p8##y,z,v)), \ 307.4066 + (I[32] = (img)(_n6##x,_p7##y,z,v)), \ 307.4067 + (I[50] = (img)(_n6##x,_p6##y,z,v)), \ 307.4068 + (I[68] = (img)(_n6##x,_p5##y,z,v)), \ 307.4069 + (I[86] = (img)(_n6##x,_p4##y,z,v)), \ 307.4070 + (I[104] = (img)(_n6##x,_p3##y,z,v)), \ 307.4071 + (I[122] = (img)(_n6##x,_p2##y,z,v)), \ 307.4072 + (I[140] = (img)(_n6##x,_p1##y,z,v)), \ 307.4073 + (I[158] = (img)(_n6##x,y,z,v)), \ 307.4074 + (I[176] = (img)(_n6##x,_n1##y,z,v)), \ 307.4075 + (I[194] = (img)(_n6##x,_n2##y,z,v)), \ 307.4076 + (I[212] = (img)(_n6##x,_n3##y,z,v)), \ 307.4077 + (I[230] = (img)(_n6##x,_n4##y,z,v)), \ 307.4078 + (I[248] = (img)(_n6##x,_n5##y,z,v)), \ 307.4079 + (I[266] = (img)(_n6##x,_n6##y,z,v)), \ 307.4080 + (I[284] = (img)(_n6##x,_n7##y,z,v)), \ 307.4081 + (I[302] = (img)(_n6##x,_n8##y,z,v)), \ 307.4082 + (I[320] = (img)(_n6##x,_n9##y,z,v)), \ 307.4083 + (I[15] = (img)(_n7##x,_p8##y,z,v)), \ 307.4084 + (I[33] = (img)(_n7##x,_p7##y,z,v)), \ 307.4085 + (I[51] = (img)(_n7##x,_p6##y,z,v)), \ 307.4086 + (I[69] = (img)(_n7##x,_p5##y,z,v)), \ 307.4087 + (I[87] = (img)(_n7##x,_p4##y,z,v)), \ 307.4088 + (I[105] = (img)(_n7##x,_p3##y,z,v)), \ 307.4089 + (I[123] = (img)(_n7##x,_p2##y,z,v)), \ 307.4090 + (I[141] = (img)(_n7##x,_p1##y,z,v)), \ 307.4091 + (I[159] = (img)(_n7##x,y,z,v)), \ 307.4092 + (I[177] = (img)(_n7##x,_n1##y,z,v)), \ 307.4093 + (I[195] = (img)(_n7##x,_n2##y,z,v)), \ 307.4094 + (I[213] = (img)(_n7##x,_n3##y,z,v)), \ 307.4095 + (I[231] = (img)(_n7##x,_n4##y,z,v)), \ 307.4096 + (I[249] = (img)(_n7##x,_n5##y,z,v)), \ 307.4097 + (I[267] = (img)(_n7##x,_n6##y,z,v)), \ 307.4098 + (I[285] = (img)(_n7##x,_n7##y,z,v)), \ 307.4099 + (I[303] = (img)(_n7##x,_n8##y,z,v)), \ 307.4100 + (I[321] = (img)(_n7##x,_n9##y,z,v)), \ 307.4101 + (I[16] = (img)(_n8##x,_p8##y,z,v)), \ 307.4102 + (I[34] = (img)(_n8##x,_p7##y,z,v)), \ 307.4103 + (I[52] = (img)(_n8##x,_p6##y,z,v)), \ 307.4104 + (I[70] = (img)(_n8##x,_p5##y,z,v)), \ 307.4105 + (I[88] = (img)(_n8##x,_p4##y,z,v)), \ 307.4106 + (I[106] = (img)(_n8##x,_p3##y,z,v)), \ 307.4107 + (I[124] = (img)(_n8##x,_p2##y,z,v)), \ 307.4108 + (I[142] = (img)(_n8##x,_p1##y,z,v)), \ 307.4109 + (I[160] = (img)(_n8##x,y,z,v)), \ 307.4110 + (I[178] = (img)(_n8##x,_n1##y,z,v)), \ 307.4111 + (I[196] = (img)(_n8##x,_n2##y,z,v)), \ 307.4112 + (I[214] = (img)(_n8##x,_n3##y,z,v)), \ 307.4113 + (I[232] = (img)(_n8##x,_n4##y,z,v)), \ 307.4114 + (I[250] = (img)(_n8##x,_n5##y,z,v)), \ 307.4115 + (I[268] = (img)(_n8##x,_n6##y,z,v)), \ 307.4116 + (I[286] = (img)(_n8##x,_n7##y,z,v)), \ 307.4117 + (I[304] = (img)(_n8##x,_n8##y,z,v)), \ 307.4118 + (I[322] = (img)(_n8##x,_n9##y,z,v)), \ 307.4119 + x+9>=(int)((img).width)?(int)((img).width)-1:x+9); \ 307.4120 + x<=(int)(x1) && ((_n9##x<(int)((img).width) && ( \ 307.4121 + (I[17] = (img)(_n9##x,_p8##y,z,v)), \ 307.4122 + (I[35] = (img)(_n9##x,_p7##y,z,v)), \ 307.4123 + (I[53] = (img)(_n9##x,_p6##y,z,v)), \ 307.4124 + (I[71] = (img)(_n9##x,_p5##y,z,v)), \ 307.4125 + (I[89] = (img)(_n9##x,_p4##y,z,v)), \ 307.4126 + (I[107] = (img)(_n9##x,_p3##y,z,v)), \ 307.4127 + (I[125] = (img)(_n9##x,_p2##y,z,v)), \ 307.4128 + (I[143] = (img)(_n9##x,_p1##y,z,v)), \ 307.4129 + (I[161] = (img)(_n9##x,y,z,v)), \ 307.4130 + (I[179] = (img)(_n9##x,_n1##y,z,v)), \ 307.4131 + (I[197] = (img)(_n9##x,_n2##y,z,v)), \ 307.4132 + (I[215] = (img)(_n9##x,_n3##y,z,v)), \ 307.4133 + (I[233] = (img)(_n9##x,_n4##y,z,v)), \ 307.4134 + (I[251] = (img)(_n9##x,_n5##y,z,v)), \ 307.4135 + (I[269] = (img)(_n9##x,_n6##y,z,v)), \ 307.4136 + (I[287] = (img)(_n9##x,_n7##y,z,v)), \ 307.4137 + (I[305] = (img)(_n9##x,_n8##y,z,v)), \ 307.4138 + (I[323] = (img)(_n9##x,_n9##y,z,v)),1)) || \ 307.4139 + _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.4140 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 307.4141 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.4142 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 307.4143 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.4144 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.4145 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.4146 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.4147 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.4148 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], \ 307.4149 + I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.4150 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.4151 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.4152 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], \ 307.4153 + I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.4154 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], \ 307.4155 + I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.4156 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], \ 307.4157 + I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], \ 307.4158 + _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x) 307.4159 + 307.4160 +#define cimg_get18x18(img,x,y,z,v,I) \ 307.4161 + I[0] = (img)(_p8##x,_p8##y,z,v), I[1] = (img)(_p7##x,_p8##y,z,v), I[2] = (img)(_p6##x,_p8##y,z,v), I[3] = (img)(_p5##x,_p8##y,z,v), I[4] = (img)(_p4##x,_p8##y,z,v), I[5] = (img)(_p3##x,_p8##y,z,v), I[6] = (img)(_p2##x,_p8##y,z,v), I[7] = (img)(_p1##x,_p8##y,z,v), I[8] = (img)(x,_p8##y,z,v), I[9] = (img)(_n1##x,_p8##y,z,v), I[10] = (img)(_n2##x,_p8##y,z,v), I[11] = (img)(_n3##x,_p8##y,z,v), I[12] = (img)(_n4##x,_p8##y,z,v), I[13] = (img)(_n5##x,_p8##y,z,v), I[14] = (img)(_n6##x,_p8##y,z,v), I[15] = (img)(_n7##x,_p8##y,z,v), I[16] = (img)(_n8##x,_p8##y,z,v), I[17] = (img)(_n9##x,_p8##y,z,v), \ 307.4162 + I[18] = (img)(_p8##x,_p7##y,z,v), I[19] = (img)(_p7##x,_p7##y,z,v), I[20] = (img)(_p6##x,_p7##y,z,v), I[21] = (img)(_p5##x,_p7##y,z,v), I[22] = (img)(_p4##x,_p7##y,z,v), I[23] = (img)(_p3##x,_p7##y,z,v), I[24] = (img)(_p2##x,_p7##y,z,v), I[25] = (img)(_p1##x,_p7##y,z,v), I[26] = (img)(x,_p7##y,z,v), I[27] = (img)(_n1##x,_p7##y,z,v), I[28] = (img)(_n2##x,_p7##y,z,v), I[29] = (img)(_n3##x,_p7##y,z,v), I[30] = (img)(_n4##x,_p7##y,z,v), I[31] = (img)(_n5##x,_p7##y,z,v), I[32] = (img)(_n6##x,_p7##y,z,v), I[33] = (img)(_n7##x,_p7##y,z,v), I[34] = (img)(_n8##x,_p7##y,z,v), I[35] = (img)(_n9##x,_p7##y,z,v), \ 307.4163 + I[36] = (img)(_p8##x,_p6##y,z,v), I[37] = (img)(_p7##x,_p6##y,z,v), I[38] = (img)(_p6##x,_p6##y,z,v), I[39] = (img)(_p5##x,_p6##y,z,v), I[40] = (img)(_p4##x,_p6##y,z,v), I[41] = (img)(_p3##x,_p6##y,z,v), I[42] = (img)(_p2##x,_p6##y,z,v), I[43] = (img)(_p1##x,_p6##y,z,v), I[44] = (img)(x,_p6##y,z,v), I[45] = (img)(_n1##x,_p6##y,z,v), I[46] = (img)(_n2##x,_p6##y,z,v), I[47] = (img)(_n3##x,_p6##y,z,v), I[48] = (img)(_n4##x,_p6##y,z,v), I[49] = (img)(_n5##x,_p6##y,z,v), I[50] = (img)(_n6##x,_p6##y,z,v), I[51] = (img)(_n7##x,_p6##y,z,v), I[52] = (img)(_n8##x,_p6##y,z,v), I[53] = (img)(_n9##x,_p6##y,z,v), \ 307.4164 + I[54] = (img)(_p8##x,_p5##y,z,v), I[55] = (img)(_p7##x,_p5##y,z,v), I[56] = (img)(_p6##x,_p5##y,z,v), I[57] = (img)(_p5##x,_p5##y,z,v), I[58] = (img)(_p4##x,_p5##y,z,v), I[59] = (img)(_p3##x,_p5##y,z,v), I[60] = (img)(_p2##x,_p5##y,z,v), I[61] = (img)(_p1##x,_p5##y,z,v), I[62] = (img)(x,_p5##y,z,v), I[63] = (img)(_n1##x,_p5##y,z,v), I[64] = (img)(_n2##x,_p5##y,z,v), I[65] = (img)(_n3##x,_p5##y,z,v), I[66] = (img)(_n4##x,_p5##y,z,v), I[67] = (img)(_n5##x,_p5##y,z,v), I[68] = (img)(_n6##x,_p5##y,z,v), I[69] = (img)(_n7##x,_p5##y,z,v), I[70] = (img)(_n8##x,_p5##y,z,v), I[71] = (img)(_n9##x,_p5##y,z,v), \ 307.4165 + I[72] = (img)(_p8##x,_p4##y,z,v), I[73] = (img)(_p7##x,_p4##y,z,v), I[74] = (img)(_p6##x,_p4##y,z,v), I[75] = (img)(_p5##x,_p4##y,z,v), I[76] = (img)(_p4##x,_p4##y,z,v), I[77] = (img)(_p3##x,_p4##y,z,v), I[78] = (img)(_p2##x,_p4##y,z,v), I[79] = (img)(_p1##x,_p4##y,z,v), I[80] = (img)(x,_p4##y,z,v), I[81] = (img)(_n1##x,_p4##y,z,v), I[82] = (img)(_n2##x,_p4##y,z,v), I[83] = (img)(_n3##x,_p4##y,z,v), I[84] = (img)(_n4##x,_p4##y,z,v), I[85] = (img)(_n5##x,_p4##y,z,v), I[86] = (img)(_n6##x,_p4##y,z,v), I[87] = (img)(_n7##x,_p4##y,z,v), I[88] = (img)(_n8##x,_p4##y,z,v), I[89] = (img)(_n9##x,_p4##y,z,v), \ 307.4166 + I[90] = (img)(_p8##x,_p3##y,z,v), I[91] = (img)(_p7##x,_p3##y,z,v), I[92] = (img)(_p6##x,_p3##y,z,v), I[93] = (img)(_p5##x,_p3##y,z,v), I[94] = (img)(_p4##x,_p3##y,z,v), I[95] = (img)(_p3##x,_p3##y,z,v), I[96] = (img)(_p2##x,_p3##y,z,v), I[97] = (img)(_p1##x,_p3##y,z,v), I[98] = (img)(x,_p3##y,z,v), I[99] = (img)(_n1##x,_p3##y,z,v), I[100] = (img)(_n2##x,_p3##y,z,v), I[101] = (img)(_n3##x,_p3##y,z,v), I[102] = (img)(_n4##x,_p3##y,z,v), I[103] = (img)(_n5##x,_p3##y,z,v), I[104] = (img)(_n6##x,_p3##y,z,v), I[105] = (img)(_n7##x,_p3##y,z,v), I[106] = (img)(_n8##x,_p3##y,z,v), I[107] = (img)(_n9##x,_p3##y,z,v), \ 307.4167 + I[108] = (img)(_p8##x,_p2##y,z,v), I[109] = (img)(_p7##x,_p2##y,z,v), I[110] = (img)(_p6##x,_p2##y,z,v), I[111] = (img)(_p5##x,_p2##y,z,v), I[112] = (img)(_p4##x,_p2##y,z,v), I[113] = (img)(_p3##x,_p2##y,z,v), I[114] = (img)(_p2##x,_p2##y,z,v), I[115] = (img)(_p1##x,_p2##y,z,v), I[116] = (img)(x,_p2##y,z,v), I[117] = (img)(_n1##x,_p2##y,z,v), I[118] = (img)(_n2##x,_p2##y,z,v), I[119] = (img)(_n3##x,_p2##y,z,v), I[120] = (img)(_n4##x,_p2##y,z,v), I[121] = (img)(_n5##x,_p2##y,z,v), I[122] = (img)(_n6##x,_p2##y,z,v), I[123] = (img)(_n7##x,_p2##y,z,v), I[124] = (img)(_n8##x,_p2##y,z,v), I[125] = (img)(_n9##x,_p2##y,z,v), \ 307.4168 + I[126] = (img)(_p8##x,_p1##y,z,v), I[127] = (img)(_p7##x,_p1##y,z,v), I[128] = (img)(_p6##x,_p1##y,z,v), I[129] = (img)(_p5##x,_p1##y,z,v), I[130] = (img)(_p4##x,_p1##y,z,v), I[131] = (img)(_p3##x,_p1##y,z,v), I[132] = (img)(_p2##x,_p1##y,z,v), I[133] = (img)(_p1##x,_p1##y,z,v), I[134] = (img)(x,_p1##y,z,v), I[135] = (img)(_n1##x,_p1##y,z,v), I[136] = (img)(_n2##x,_p1##y,z,v), I[137] = (img)(_n3##x,_p1##y,z,v), I[138] = (img)(_n4##x,_p1##y,z,v), I[139] = (img)(_n5##x,_p1##y,z,v), I[140] = (img)(_n6##x,_p1##y,z,v), I[141] = (img)(_n7##x,_p1##y,z,v), I[142] = (img)(_n8##x,_p1##y,z,v), I[143] = (img)(_n9##x,_p1##y,z,v), \ 307.4169 + I[144] = (img)(_p8##x,y,z,v), I[145] = (img)(_p7##x,y,z,v), I[146] = (img)(_p6##x,y,z,v), I[147] = (img)(_p5##x,y,z,v), I[148] = (img)(_p4##x,y,z,v), I[149] = (img)(_p3##x,y,z,v), I[150] = (img)(_p2##x,y,z,v), I[151] = (img)(_p1##x,y,z,v), I[152] = (img)(x,y,z,v), I[153] = (img)(_n1##x,y,z,v), I[154] = (img)(_n2##x,y,z,v), I[155] = (img)(_n3##x,y,z,v), I[156] = (img)(_n4##x,y,z,v), I[157] = (img)(_n5##x,y,z,v), I[158] = (img)(_n6##x,y,z,v), I[159] = (img)(_n7##x,y,z,v), I[160] = (img)(_n8##x,y,z,v), I[161] = (img)(_n9##x,y,z,v), \ 307.4170 + I[162] = (img)(_p8##x,_n1##y,z,v), I[163] = (img)(_p7##x,_n1##y,z,v), I[164] = (img)(_p6##x,_n1##y,z,v), I[165] = (img)(_p5##x,_n1##y,z,v), I[166] = (img)(_p4##x,_n1##y,z,v), I[167] = (img)(_p3##x,_n1##y,z,v), I[168] = (img)(_p2##x,_n1##y,z,v), I[169] = (img)(_p1##x,_n1##y,z,v), I[170] = (img)(x,_n1##y,z,v), I[171] = (img)(_n1##x,_n1##y,z,v), I[172] = (img)(_n2##x,_n1##y,z,v), I[173] = (img)(_n3##x,_n1##y,z,v), I[174] = (img)(_n4##x,_n1##y,z,v), I[175] = (img)(_n5##x,_n1##y,z,v), I[176] = (img)(_n6##x,_n1##y,z,v), I[177] = (img)(_n7##x,_n1##y,z,v), I[178] = (img)(_n8##x,_n1##y,z,v), I[179] = (img)(_n9##x,_n1##y,z,v), \ 307.4171 + I[180] = (img)(_p8##x,_n2##y,z,v), I[181] = (img)(_p7##x,_n2##y,z,v), I[182] = (img)(_p6##x,_n2##y,z,v), I[183] = (img)(_p5##x,_n2##y,z,v), I[184] = (img)(_p4##x,_n2##y,z,v), I[185] = (img)(_p3##x,_n2##y,z,v), I[186] = (img)(_p2##x,_n2##y,z,v), I[187] = (img)(_p1##x,_n2##y,z,v), I[188] = (img)(x,_n2##y,z,v), I[189] = (img)(_n1##x,_n2##y,z,v), I[190] = (img)(_n2##x,_n2##y,z,v), I[191] = (img)(_n3##x,_n2##y,z,v), I[192] = (img)(_n4##x,_n2##y,z,v), I[193] = (img)(_n5##x,_n2##y,z,v), I[194] = (img)(_n6##x,_n2##y,z,v), I[195] = (img)(_n7##x,_n2##y,z,v), I[196] = (img)(_n8##x,_n2##y,z,v), I[197] = (img)(_n9##x,_n2##y,z,v), \ 307.4172 + I[198] = (img)(_p8##x,_n3##y,z,v), I[199] = (img)(_p7##x,_n3##y,z,v), I[200] = (img)(_p6##x,_n3##y,z,v), I[201] = (img)(_p5##x,_n3##y,z,v), I[202] = (img)(_p4##x,_n3##y,z,v), I[203] = (img)(_p3##x,_n3##y,z,v), I[204] = (img)(_p2##x,_n3##y,z,v), I[205] = (img)(_p1##x,_n3##y,z,v), I[206] = (img)(x,_n3##y,z,v), I[207] = (img)(_n1##x,_n3##y,z,v), I[208] = (img)(_n2##x,_n3##y,z,v), I[209] = (img)(_n3##x,_n3##y,z,v), I[210] = (img)(_n4##x,_n3##y,z,v), I[211] = (img)(_n5##x,_n3##y,z,v), I[212] = (img)(_n6##x,_n3##y,z,v), I[213] = (img)(_n7##x,_n3##y,z,v), I[214] = (img)(_n8##x,_n3##y,z,v), I[215] = (img)(_n9##x,_n3##y,z,v), \ 307.4173 + I[216] = (img)(_p8##x,_n4##y,z,v), I[217] = (img)(_p7##x,_n4##y,z,v), I[218] = (img)(_p6##x,_n4##y,z,v), I[219] = (img)(_p5##x,_n4##y,z,v), I[220] = (img)(_p4##x,_n4##y,z,v), I[221] = (img)(_p3##x,_n4##y,z,v), I[222] = (img)(_p2##x,_n4##y,z,v), I[223] = (img)(_p1##x,_n4##y,z,v), I[224] = (img)(x,_n4##y,z,v), I[225] = (img)(_n1##x,_n4##y,z,v), I[226] = (img)(_n2##x,_n4##y,z,v), I[227] = (img)(_n3##x,_n4##y,z,v), I[228] = (img)(_n4##x,_n4##y,z,v), I[229] = (img)(_n5##x,_n4##y,z,v), I[230] = (img)(_n6##x,_n4##y,z,v), I[231] = (img)(_n7##x,_n4##y,z,v), I[232] = (img)(_n8##x,_n4##y,z,v), I[233] = (img)(_n9##x,_n4##y,z,v), \ 307.4174 + I[234] = (img)(_p8##x,_n5##y,z,v), I[235] = (img)(_p7##x,_n5##y,z,v), I[236] = (img)(_p6##x,_n5##y,z,v), I[237] = (img)(_p5##x,_n5##y,z,v), I[238] = (img)(_p4##x,_n5##y,z,v), I[239] = (img)(_p3##x,_n5##y,z,v), I[240] = (img)(_p2##x,_n5##y,z,v), I[241] = (img)(_p1##x,_n5##y,z,v), I[242] = (img)(x,_n5##y,z,v), I[243] = (img)(_n1##x,_n5##y,z,v), I[244] = (img)(_n2##x,_n5##y,z,v), I[245] = (img)(_n3##x,_n5##y,z,v), I[246] = (img)(_n4##x,_n5##y,z,v), I[247] = (img)(_n5##x,_n5##y,z,v), I[248] = (img)(_n6##x,_n5##y,z,v), I[249] = (img)(_n7##x,_n5##y,z,v), I[250] = (img)(_n8##x,_n5##y,z,v), I[251] = (img)(_n9##x,_n5##y,z,v), \ 307.4175 + I[252] = (img)(_p8##x,_n6##y,z,v), I[253] = (img)(_p7##x,_n6##y,z,v), I[254] = (img)(_p6##x,_n6##y,z,v), I[255] = (img)(_p5##x,_n6##y,z,v), I[256] = (img)(_p4##x,_n6##y,z,v), I[257] = (img)(_p3##x,_n6##y,z,v), I[258] = (img)(_p2##x,_n6##y,z,v), I[259] = (img)(_p1##x,_n6##y,z,v), I[260] = (img)(x,_n6##y,z,v), I[261] = (img)(_n1##x,_n6##y,z,v), I[262] = (img)(_n2##x,_n6##y,z,v), I[263] = (img)(_n3##x,_n6##y,z,v), I[264] = (img)(_n4##x,_n6##y,z,v), I[265] = (img)(_n5##x,_n6##y,z,v), I[266] = (img)(_n6##x,_n6##y,z,v), I[267] = (img)(_n7##x,_n6##y,z,v), I[268] = (img)(_n8##x,_n6##y,z,v), I[269] = (img)(_n9##x,_n6##y,z,v), \ 307.4176 + I[270] = (img)(_p8##x,_n7##y,z,v), I[271] = (img)(_p7##x,_n7##y,z,v), I[272] = (img)(_p6##x,_n7##y,z,v), I[273] = (img)(_p5##x,_n7##y,z,v), I[274] = (img)(_p4##x,_n7##y,z,v), I[275] = (img)(_p3##x,_n7##y,z,v), I[276] = (img)(_p2##x,_n7##y,z,v), I[277] = (img)(_p1##x,_n7##y,z,v), I[278] = (img)(x,_n7##y,z,v), I[279] = (img)(_n1##x,_n7##y,z,v), I[280] = (img)(_n2##x,_n7##y,z,v), I[281] = (img)(_n3##x,_n7##y,z,v), I[282] = (img)(_n4##x,_n7##y,z,v), I[283] = (img)(_n5##x,_n7##y,z,v), I[284] = (img)(_n6##x,_n7##y,z,v), I[285] = (img)(_n7##x,_n7##y,z,v), I[286] = (img)(_n8##x,_n7##y,z,v), I[287] = (img)(_n9##x,_n7##y,z,v), \ 307.4177 + I[288] = (img)(_p8##x,_n8##y,z,v), I[289] = (img)(_p7##x,_n8##y,z,v), I[290] = (img)(_p6##x,_n8##y,z,v), I[291] = (img)(_p5##x,_n8##y,z,v), I[292] = (img)(_p4##x,_n8##y,z,v), I[293] = (img)(_p3##x,_n8##y,z,v), I[294] = (img)(_p2##x,_n8##y,z,v), I[295] = (img)(_p1##x,_n8##y,z,v), I[296] = (img)(x,_n8##y,z,v), I[297] = (img)(_n1##x,_n8##y,z,v), I[298] = (img)(_n2##x,_n8##y,z,v), I[299] = (img)(_n3##x,_n8##y,z,v), I[300] = (img)(_n4##x,_n8##y,z,v), I[301] = (img)(_n5##x,_n8##y,z,v), I[302] = (img)(_n6##x,_n8##y,z,v), I[303] = (img)(_n7##x,_n8##y,z,v), I[304] = (img)(_n8##x,_n8##y,z,v), I[305] = (img)(_n9##x,_n8##y,z,v), \ 307.4178 + I[306] = (img)(_p8##x,_n9##y,z,v), I[307] = (img)(_p7##x,_n9##y,z,v), I[308] = (img)(_p6##x,_n9##y,z,v), I[309] = (img)(_p5##x,_n9##y,z,v), I[310] = (img)(_p4##x,_n9##y,z,v), I[311] = (img)(_p3##x,_n9##y,z,v), I[312] = (img)(_p2##x,_n9##y,z,v), I[313] = (img)(_p1##x,_n9##y,z,v), I[314] = (img)(x,_n9##y,z,v), I[315] = (img)(_n1##x,_n9##y,z,v), I[316] = (img)(_n2##x,_n9##y,z,v), I[317] = (img)(_n3##x,_n9##y,z,v), I[318] = (img)(_n4##x,_n9##y,z,v), I[319] = (img)(_n5##x,_n9##y,z,v), I[320] = (img)(_n6##x,_n9##y,z,v), I[321] = (img)(_n7##x,_n9##y,z,v), I[322] = (img)(_n8##x,_n9##y,z,v), I[323] = (img)(_n9##x,_n9##y,z,v); 307.4179 + 307.4180 +// Define 19x19 loop macros for CImg 307.4181 +//---------------------------------- 307.4182 +#define cimg_for19(bound,i) for (int i = 0, \ 307.4183 + _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.4184 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.4185 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.4186 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.4187 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.4188 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.4189 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.4190 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.4191 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.4192 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9; \ 307.4193 + _n9##i<(int)(bound) || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.4194 + i==(_n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.4195 + _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.4196 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i) 307.4197 + 307.4198 +#define cimg_for19X(img,x) cimg_for19((img).width,x) 307.4199 +#define cimg_for19Y(img,y) cimg_for19((img).height,y) 307.4200 +#define cimg_for19Z(img,z) cimg_for19((img).depth,z) 307.4201 +#define cimg_for19V(img,v) cimg_for19((img).dim,v) 307.4202 +#define cimg_for19XY(img,x,y) cimg_for19Y(img,y) cimg_for19X(img,x) 307.4203 +#define cimg_for19XZ(img,x,z) cimg_for19Z(img,z) cimg_for19X(img,x) 307.4204 +#define cimg_for19XV(img,x,v) cimg_for19V(img,v) cimg_for19X(img,x) 307.4205 +#define cimg_for19YZ(img,y,z) cimg_for19Z(img,z) cimg_for19Y(img,y) 307.4206 +#define cimg_for19YV(img,y,v) cimg_for19V(img,v) cimg_for19Y(img,y) 307.4207 +#define cimg_for19ZV(img,z,v) cimg_for19V(img,v) cimg_for19Z(img,z) 307.4208 +#define cimg_for19XYZ(img,x,y,z) cimg_for19Z(img,z) cimg_for19XY(img,x,y) 307.4209 +#define cimg_for19XZV(img,x,z,v) cimg_for19V(img,v) cimg_for19XZ(img,x,z) 307.4210 +#define cimg_for19YZV(img,y,z,v) cimg_for19V(img,v) cimg_for19YZ(img,y,z) 307.4211 +#define cimg_for19XYZV(img,x,y,z,v) cimg_for19V(img,v) cimg_for19XYZ(img,x,y,z) 307.4212 + 307.4213 +#define cimg_for_in19(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.4214 + _p9##i = i-9<0?0:i-9, \ 307.4215 + _p8##i = i-8<0?0:i-8, \ 307.4216 + _p7##i = i-7<0?0:i-7, \ 307.4217 + _p6##i = i-6<0?0:i-6, \ 307.4218 + _p5##i = i-5<0?0:i-5, \ 307.4219 + _p4##i = i-4<0?0:i-4, \ 307.4220 + _p3##i = i-3<0?0:i-3, \ 307.4221 + _p2##i = i-2<0?0:i-2, \ 307.4222 + _p1##i = i-1<0?0:i-1, \ 307.4223 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.4224 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.4225 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.4226 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.4227 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.4228 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.4229 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.4230 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.4231 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9; \ 307.4232 + i<=(int)(i1) && (_n9##i<(int)(bound) || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.4233 + i==(_n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.4234 + _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.4235 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i) 307.4236 + 307.4237 +#define cimg_for_in19X(img,x0,x1,x) cimg_for_in19((img).width,x0,x1,x) 307.4238 +#define cimg_for_in19Y(img,y0,y1,y) cimg_for_in19((img).height,y0,y1,y) 307.4239 +#define cimg_for_in19Z(img,z0,z1,z) cimg_for_in19((img).depth,z0,z1,z) 307.4240 +#define cimg_for_in19V(img,v0,v1,v) cimg_for_in19((img).dim,v0,v1,v) 307.4241 +#define cimg_for_in19XY(img,x0,y0,x1,y1,x,y) cimg_for_in19Y(img,y0,y1,y) cimg_for_in19X(img,x0,x1,x) 307.4242 +#define cimg_for_in19XZ(img,x0,z0,x1,z1,x,z) cimg_for_in19Z(img,z0,z1,z) cimg_for_in19X(img,x0,x1,x) 307.4243 +#define cimg_for_in19XV(img,x0,v0,x1,v1,x,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19X(img,x0,x1,x) 307.4244 +#define cimg_for_in19YZ(img,y0,z0,y1,z1,y,z) cimg_for_in19Z(img,z0,z1,z) cimg_for_in19Y(img,y0,y1,y) 307.4245 +#define cimg_for_in19YV(img,y0,v0,y1,v1,y,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19Y(img,y0,y1,y) 307.4246 +#define cimg_for_in19ZV(img,z0,v0,z1,v1,z,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19Z(img,z0,z1,z) 307.4247 +#define cimg_for_in19XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in19Z(img,z0,z1,z) cimg_for_in19XY(img,x0,y0,x1,y1,x,y) 307.4248 +#define cimg_for_in19XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19XZ(img,x0,y0,x1,y1,x,z) 307.4249 +#define cimg_for_in19YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19YZ(img,y0,z0,y1,z1,y,z) 307.4250 +#define cimg_for_in19XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in19V(img,v0,v1,v) cimg_for_in19XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.4251 + 307.4252 +#define cimg_for19x19(img,x,y,z,v,I) \ 307.4253 + cimg_for19((img).height,y) for (int x = 0, \ 307.4254 + _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.4255 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.4256 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.4257 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.4258 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.4259 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.4260 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.4261 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.4262 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.4263 + _n9##x = (int)( \ 307.4264 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = (img)(0,_p9##y,z,v)), \ 307.4265 + (I[19] = I[20] = I[21] = I[22] = I[23] = I[24] = I[25] = I[26] = I[27] = I[28] = (img)(0,_p8##y,z,v)), \ 307.4266 + (I[38] = I[39] = I[40] = I[41] = I[42] = I[43] = I[44] = I[45] = I[46] = I[47] = (img)(0,_p7##y,z,v)), \ 307.4267 + (I[57] = I[58] = I[59] = I[60] = I[61] = I[62] = I[63] = I[64] = I[65] = I[66] = (img)(0,_p6##y,z,v)), \ 307.4268 + (I[76] = I[77] = I[78] = I[79] = I[80] = I[81] = I[82] = I[83] = I[84] = I[85] = (img)(0,_p5##y,z,v)), \ 307.4269 + (I[95] = I[96] = I[97] = I[98] = I[99] = I[100] = I[101] = I[102] = I[103] = I[104] = (img)(0,_p4##y,z,v)), \ 307.4270 + (I[114] = I[115] = I[116] = I[117] = I[118] = I[119] = I[120] = I[121] = I[122] = I[123] = (img)(0,_p3##y,z,v)), \ 307.4271 + (I[133] = I[134] = I[135] = I[136] = I[137] = I[138] = I[139] = I[140] = I[141] = I[142] = (img)(0,_p2##y,z,v)), \ 307.4272 + (I[152] = I[153] = I[154] = I[155] = I[156] = I[157] = I[158] = I[159] = I[160] = I[161] = (img)(0,_p1##y,z,v)), \ 307.4273 + (I[171] = I[172] = I[173] = I[174] = I[175] = I[176] = I[177] = I[178] = I[179] = I[180] = (img)(0,y,z,v)), \ 307.4274 + (I[190] = I[191] = I[192] = I[193] = I[194] = I[195] = I[196] = I[197] = I[198] = I[199] = (img)(0,_n1##y,z,v)), \ 307.4275 + (I[209] = I[210] = I[211] = I[212] = I[213] = I[214] = I[215] = I[216] = I[217] = I[218] = (img)(0,_n2##y,z,v)), \ 307.4276 + (I[228] = I[229] = I[230] = I[231] = I[232] = I[233] = I[234] = I[235] = I[236] = I[237] = (img)(0,_n3##y,z,v)), \ 307.4277 + (I[247] = I[248] = I[249] = I[250] = I[251] = I[252] = I[253] = I[254] = I[255] = I[256] = (img)(0,_n4##y,z,v)), \ 307.4278 + (I[266] = I[267] = I[268] = I[269] = I[270] = I[271] = I[272] = I[273] = I[274] = I[275] = (img)(0,_n5##y,z,v)), \ 307.4279 + (I[285] = I[286] = I[287] = I[288] = I[289] = I[290] = I[291] = I[292] = I[293] = I[294] = (img)(0,_n6##y,z,v)), \ 307.4280 + (I[304] = I[305] = I[306] = I[307] = I[308] = I[309] = I[310] = I[311] = I[312] = I[313] = (img)(0,_n7##y,z,v)), \ 307.4281 + (I[323] = I[324] = I[325] = I[326] = I[327] = I[328] = I[329] = I[330] = I[331] = I[332] = (img)(0,_n8##y,z,v)), \ 307.4282 + (I[342] = I[343] = I[344] = I[345] = I[346] = I[347] = I[348] = I[349] = I[350] = I[351] = (img)(0,_n9##y,z,v)), \ 307.4283 + (I[10] = (img)(_n1##x,_p9##y,z,v)), \ 307.4284 + (I[29] = (img)(_n1##x,_p8##y,z,v)), \ 307.4285 + (I[48] = (img)(_n1##x,_p7##y,z,v)), \ 307.4286 + (I[67] = (img)(_n1##x,_p6##y,z,v)), \ 307.4287 + (I[86] = (img)(_n1##x,_p5##y,z,v)), \ 307.4288 + (I[105] = (img)(_n1##x,_p4##y,z,v)), \ 307.4289 + (I[124] = (img)(_n1##x,_p3##y,z,v)), \ 307.4290 + (I[143] = (img)(_n1##x,_p2##y,z,v)), \ 307.4291 + (I[162] = (img)(_n1##x,_p1##y,z,v)), \ 307.4292 + (I[181] = (img)(_n1##x,y,z,v)), \ 307.4293 + (I[200] = (img)(_n1##x,_n1##y,z,v)), \ 307.4294 + (I[219] = (img)(_n1##x,_n2##y,z,v)), \ 307.4295 + (I[238] = (img)(_n1##x,_n3##y,z,v)), \ 307.4296 + (I[257] = (img)(_n1##x,_n4##y,z,v)), \ 307.4297 + (I[276] = (img)(_n1##x,_n5##y,z,v)), \ 307.4298 + (I[295] = (img)(_n1##x,_n6##y,z,v)), \ 307.4299 + (I[314] = (img)(_n1##x,_n7##y,z,v)), \ 307.4300 + (I[333] = (img)(_n1##x,_n8##y,z,v)), \ 307.4301 + (I[352] = (img)(_n1##x,_n9##y,z,v)), \ 307.4302 + (I[11] = (img)(_n2##x,_p9##y,z,v)), \ 307.4303 + (I[30] = (img)(_n2##x,_p8##y,z,v)), \ 307.4304 + (I[49] = (img)(_n2##x,_p7##y,z,v)), \ 307.4305 + (I[68] = (img)(_n2##x,_p6##y,z,v)), \ 307.4306 + (I[87] = (img)(_n2##x,_p5##y,z,v)), \ 307.4307 + (I[106] = (img)(_n2##x,_p4##y,z,v)), \ 307.4308 + (I[125] = (img)(_n2##x,_p3##y,z,v)), \ 307.4309 + (I[144] = (img)(_n2##x,_p2##y,z,v)), \ 307.4310 + (I[163] = (img)(_n2##x,_p1##y,z,v)), \ 307.4311 + (I[182] = (img)(_n2##x,y,z,v)), \ 307.4312 + (I[201] = (img)(_n2##x,_n1##y,z,v)), \ 307.4313 + (I[220] = (img)(_n2##x,_n2##y,z,v)), \ 307.4314 + (I[239] = (img)(_n2##x,_n3##y,z,v)), \ 307.4315 + (I[258] = (img)(_n2##x,_n4##y,z,v)), \ 307.4316 + (I[277] = (img)(_n2##x,_n5##y,z,v)), \ 307.4317 + (I[296] = (img)(_n2##x,_n6##y,z,v)), \ 307.4318 + (I[315] = (img)(_n2##x,_n7##y,z,v)), \ 307.4319 + (I[334] = (img)(_n2##x,_n8##y,z,v)), \ 307.4320 + (I[353] = (img)(_n2##x,_n9##y,z,v)), \ 307.4321 + (I[12] = (img)(_n3##x,_p9##y,z,v)), \ 307.4322 + (I[31] = (img)(_n3##x,_p8##y,z,v)), \ 307.4323 + (I[50] = (img)(_n3##x,_p7##y,z,v)), \ 307.4324 + (I[69] = (img)(_n3##x,_p6##y,z,v)), \ 307.4325 + (I[88] = (img)(_n3##x,_p5##y,z,v)), \ 307.4326 + (I[107] = (img)(_n3##x,_p4##y,z,v)), \ 307.4327 + (I[126] = (img)(_n3##x,_p3##y,z,v)), \ 307.4328 + (I[145] = (img)(_n3##x,_p2##y,z,v)), \ 307.4329 + (I[164] = (img)(_n3##x,_p1##y,z,v)), \ 307.4330 + (I[183] = (img)(_n3##x,y,z,v)), \ 307.4331 + (I[202] = (img)(_n3##x,_n1##y,z,v)), \ 307.4332 + (I[221] = (img)(_n3##x,_n2##y,z,v)), \ 307.4333 + (I[240] = (img)(_n3##x,_n3##y,z,v)), \ 307.4334 + (I[259] = (img)(_n3##x,_n4##y,z,v)), \ 307.4335 + (I[278] = (img)(_n3##x,_n5##y,z,v)), \ 307.4336 + (I[297] = (img)(_n3##x,_n6##y,z,v)), \ 307.4337 + (I[316] = (img)(_n3##x,_n7##y,z,v)), \ 307.4338 + (I[335] = (img)(_n3##x,_n8##y,z,v)), \ 307.4339 + (I[354] = (img)(_n3##x,_n9##y,z,v)), \ 307.4340 + (I[13] = (img)(_n4##x,_p9##y,z,v)), \ 307.4341 + (I[32] = (img)(_n4##x,_p8##y,z,v)), \ 307.4342 + (I[51] = (img)(_n4##x,_p7##y,z,v)), \ 307.4343 + (I[70] = (img)(_n4##x,_p6##y,z,v)), \ 307.4344 + (I[89] = (img)(_n4##x,_p5##y,z,v)), \ 307.4345 + (I[108] = (img)(_n4##x,_p4##y,z,v)), \ 307.4346 + (I[127] = (img)(_n4##x,_p3##y,z,v)), \ 307.4347 + (I[146] = (img)(_n4##x,_p2##y,z,v)), \ 307.4348 + (I[165] = (img)(_n4##x,_p1##y,z,v)), \ 307.4349 + (I[184] = (img)(_n4##x,y,z,v)), \ 307.4350 + (I[203] = (img)(_n4##x,_n1##y,z,v)), \ 307.4351 + (I[222] = (img)(_n4##x,_n2##y,z,v)), \ 307.4352 + (I[241] = (img)(_n4##x,_n3##y,z,v)), \ 307.4353 + (I[260] = (img)(_n4##x,_n4##y,z,v)), \ 307.4354 + (I[279] = (img)(_n4##x,_n5##y,z,v)), \ 307.4355 + (I[298] = (img)(_n4##x,_n6##y,z,v)), \ 307.4356 + (I[317] = (img)(_n4##x,_n7##y,z,v)), \ 307.4357 + (I[336] = (img)(_n4##x,_n8##y,z,v)), \ 307.4358 + (I[355] = (img)(_n4##x,_n9##y,z,v)), \ 307.4359 + (I[14] = (img)(_n5##x,_p9##y,z,v)), \ 307.4360 + (I[33] = (img)(_n5##x,_p8##y,z,v)), \ 307.4361 + (I[52] = (img)(_n5##x,_p7##y,z,v)), \ 307.4362 + (I[71] = (img)(_n5##x,_p6##y,z,v)), \ 307.4363 + (I[90] = (img)(_n5##x,_p5##y,z,v)), \ 307.4364 + (I[109] = (img)(_n5##x,_p4##y,z,v)), \ 307.4365 + (I[128] = (img)(_n5##x,_p3##y,z,v)), \ 307.4366 + (I[147] = (img)(_n5##x,_p2##y,z,v)), \ 307.4367 + (I[166] = (img)(_n5##x,_p1##y,z,v)), \ 307.4368 + (I[185] = (img)(_n5##x,y,z,v)), \ 307.4369 + (I[204] = (img)(_n5##x,_n1##y,z,v)), \ 307.4370 + (I[223] = (img)(_n5##x,_n2##y,z,v)), \ 307.4371 + (I[242] = (img)(_n5##x,_n3##y,z,v)), \ 307.4372 + (I[261] = (img)(_n5##x,_n4##y,z,v)), \ 307.4373 + (I[280] = (img)(_n5##x,_n5##y,z,v)), \ 307.4374 + (I[299] = (img)(_n5##x,_n6##y,z,v)), \ 307.4375 + (I[318] = (img)(_n5##x,_n7##y,z,v)), \ 307.4376 + (I[337] = (img)(_n5##x,_n8##y,z,v)), \ 307.4377 + (I[356] = (img)(_n5##x,_n9##y,z,v)), \ 307.4378 + (I[15] = (img)(_n6##x,_p9##y,z,v)), \ 307.4379 + (I[34] = (img)(_n6##x,_p8##y,z,v)), \ 307.4380 + (I[53] = (img)(_n6##x,_p7##y,z,v)), \ 307.4381 + (I[72] = (img)(_n6##x,_p6##y,z,v)), \ 307.4382 + (I[91] = (img)(_n6##x,_p5##y,z,v)), \ 307.4383 + (I[110] = (img)(_n6##x,_p4##y,z,v)), \ 307.4384 + (I[129] = (img)(_n6##x,_p3##y,z,v)), \ 307.4385 + (I[148] = (img)(_n6##x,_p2##y,z,v)), \ 307.4386 + (I[167] = (img)(_n6##x,_p1##y,z,v)), \ 307.4387 + (I[186] = (img)(_n6##x,y,z,v)), \ 307.4388 + (I[205] = (img)(_n6##x,_n1##y,z,v)), \ 307.4389 + (I[224] = (img)(_n6##x,_n2##y,z,v)), \ 307.4390 + (I[243] = (img)(_n6##x,_n3##y,z,v)), \ 307.4391 + (I[262] = (img)(_n6##x,_n4##y,z,v)), \ 307.4392 + (I[281] = (img)(_n6##x,_n5##y,z,v)), \ 307.4393 + (I[300] = (img)(_n6##x,_n6##y,z,v)), \ 307.4394 + (I[319] = (img)(_n6##x,_n7##y,z,v)), \ 307.4395 + (I[338] = (img)(_n6##x,_n8##y,z,v)), \ 307.4396 + (I[357] = (img)(_n6##x,_n9##y,z,v)), \ 307.4397 + (I[16] = (img)(_n7##x,_p9##y,z,v)), \ 307.4398 + (I[35] = (img)(_n7##x,_p8##y,z,v)), \ 307.4399 + (I[54] = (img)(_n7##x,_p7##y,z,v)), \ 307.4400 + (I[73] = (img)(_n7##x,_p6##y,z,v)), \ 307.4401 + (I[92] = (img)(_n7##x,_p5##y,z,v)), \ 307.4402 + (I[111] = (img)(_n7##x,_p4##y,z,v)), \ 307.4403 + (I[130] = (img)(_n7##x,_p3##y,z,v)), \ 307.4404 + (I[149] = (img)(_n7##x,_p2##y,z,v)), \ 307.4405 + (I[168] = (img)(_n7##x,_p1##y,z,v)), \ 307.4406 + (I[187] = (img)(_n7##x,y,z,v)), \ 307.4407 + (I[206] = (img)(_n7##x,_n1##y,z,v)), \ 307.4408 + (I[225] = (img)(_n7##x,_n2##y,z,v)), \ 307.4409 + (I[244] = (img)(_n7##x,_n3##y,z,v)), \ 307.4410 + (I[263] = (img)(_n7##x,_n4##y,z,v)), \ 307.4411 + (I[282] = (img)(_n7##x,_n5##y,z,v)), \ 307.4412 + (I[301] = (img)(_n7##x,_n6##y,z,v)), \ 307.4413 + (I[320] = (img)(_n7##x,_n7##y,z,v)), \ 307.4414 + (I[339] = (img)(_n7##x,_n8##y,z,v)), \ 307.4415 + (I[358] = (img)(_n7##x,_n9##y,z,v)), \ 307.4416 + (I[17] = (img)(_n8##x,_p9##y,z,v)), \ 307.4417 + (I[36] = (img)(_n8##x,_p8##y,z,v)), \ 307.4418 + (I[55] = (img)(_n8##x,_p7##y,z,v)), \ 307.4419 + (I[74] = (img)(_n8##x,_p6##y,z,v)), \ 307.4420 + (I[93] = (img)(_n8##x,_p5##y,z,v)), \ 307.4421 + (I[112] = (img)(_n8##x,_p4##y,z,v)), \ 307.4422 + (I[131] = (img)(_n8##x,_p3##y,z,v)), \ 307.4423 + (I[150] = (img)(_n8##x,_p2##y,z,v)), \ 307.4424 + (I[169] = (img)(_n8##x,_p1##y,z,v)), \ 307.4425 + (I[188] = (img)(_n8##x,y,z,v)), \ 307.4426 + (I[207] = (img)(_n8##x,_n1##y,z,v)), \ 307.4427 + (I[226] = (img)(_n8##x,_n2##y,z,v)), \ 307.4428 + (I[245] = (img)(_n8##x,_n3##y,z,v)), \ 307.4429 + (I[264] = (img)(_n8##x,_n4##y,z,v)), \ 307.4430 + (I[283] = (img)(_n8##x,_n5##y,z,v)), \ 307.4431 + (I[302] = (img)(_n8##x,_n6##y,z,v)), \ 307.4432 + (I[321] = (img)(_n8##x,_n7##y,z,v)), \ 307.4433 + (I[340] = (img)(_n8##x,_n8##y,z,v)), \ 307.4434 + (I[359] = (img)(_n8##x,_n9##y,z,v)), \ 307.4435 + 9>=((img).width)?(int)((img).width)-1:9); \ 307.4436 + (_n9##x<(int)((img).width) && ( \ 307.4437 + (I[18] = (img)(_n9##x,_p9##y,z,v)), \ 307.4438 + (I[37] = (img)(_n9##x,_p8##y,z,v)), \ 307.4439 + (I[56] = (img)(_n9##x,_p7##y,z,v)), \ 307.4440 + (I[75] = (img)(_n9##x,_p6##y,z,v)), \ 307.4441 + (I[94] = (img)(_n9##x,_p5##y,z,v)), \ 307.4442 + (I[113] = (img)(_n9##x,_p4##y,z,v)), \ 307.4443 + (I[132] = (img)(_n9##x,_p3##y,z,v)), \ 307.4444 + (I[151] = (img)(_n9##x,_p2##y,z,v)), \ 307.4445 + (I[170] = (img)(_n9##x,_p1##y,z,v)), \ 307.4446 + (I[189] = (img)(_n9##x,y,z,v)), \ 307.4447 + (I[208] = (img)(_n9##x,_n1##y,z,v)), \ 307.4448 + (I[227] = (img)(_n9##x,_n2##y,z,v)), \ 307.4449 + (I[246] = (img)(_n9##x,_n3##y,z,v)), \ 307.4450 + (I[265] = (img)(_n9##x,_n4##y,z,v)), \ 307.4451 + (I[284] = (img)(_n9##x,_n5##y,z,v)), \ 307.4452 + (I[303] = (img)(_n9##x,_n6##y,z,v)), \ 307.4453 + (I[322] = (img)(_n9##x,_n7##y,z,v)), \ 307.4454 + (I[341] = (img)(_n9##x,_n8##y,z,v)), \ 307.4455 + (I[360] = (img)(_n9##x,_n9##y,z,v)),1)) || \ 307.4456 + _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.4457 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], \ 307.4458 + I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], \ 307.4459 + I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], \ 307.4460 + I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], \ 307.4461 + I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], \ 307.4462 + I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], \ 307.4463 + I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], \ 307.4464 + I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], \ 307.4465 + I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], \ 307.4466 + I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], \ 307.4467 + I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], \ 307.4468 + I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], \ 307.4469 + I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], \ 307.4470 + I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], \ 307.4471 + I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], \ 307.4472 + I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], \ 307.4473 + I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], \ 307.4474 + I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], \ 307.4475 + I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], \ 307.4476 + _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x) 307.4477 + 307.4478 +#define cimg_for_in19x19(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.4479 + cimg_for_in19((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.4480 + _p9##x = x-9<0?0:x-9, \ 307.4481 + _p8##x = x-8<0?0:x-8, \ 307.4482 + _p7##x = x-7<0?0:x-7, \ 307.4483 + _p6##x = x-6<0?0:x-6, \ 307.4484 + _p5##x = x-5<0?0:x-5, \ 307.4485 + _p4##x = x-4<0?0:x-4, \ 307.4486 + _p3##x = x-3<0?0:x-3, \ 307.4487 + _p2##x = x-2<0?0:x-2, \ 307.4488 + _p1##x = x-1<0?0:x-1, \ 307.4489 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.4490 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.4491 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.4492 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.4493 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.4494 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.4495 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.4496 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.4497 + _n9##x = (int)( \ 307.4498 + (I[0] = (img)(_p9##x,_p9##y,z,v)), \ 307.4499 + (I[19] = (img)(_p9##x,_p8##y,z,v)), \ 307.4500 + (I[38] = (img)(_p9##x,_p7##y,z,v)), \ 307.4501 + (I[57] = (img)(_p9##x,_p6##y,z,v)), \ 307.4502 + (I[76] = (img)(_p9##x,_p5##y,z,v)), \ 307.4503 + (I[95] = (img)(_p9##x,_p4##y,z,v)), \ 307.4504 + (I[114] = (img)(_p9##x,_p3##y,z,v)), \ 307.4505 + (I[133] = (img)(_p9##x,_p2##y,z,v)), \ 307.4506 + (I[152] = (img)(_p9##x,_p1##y,z,v)), \ 307.4507 + (I[171] = (img)(_p9##x,y,z,v)), \ 307.4508 + (I[190] = (img)(_p9##x,_n1##y,z,v)), \ 307.4509 + (I[209] = (img)(_p9##x,_n2##y,z,v)), \ 307.4510 + (I[228] = (img)(_p9##x,_n3##y,z,v)), \ 307.4511 + (I[247] = (img)(_p9##x,_n4##y,z,v)), \ 307.4512 + (I[266] = (img)(_p9##x,_n5##y,z,v)), \ 307.4513 + (I[285] = (img)(_p9##x,_n6##y,z,v)), \ 307.4514 + (I[304] = (img)(_p9##x,_n7##y,z,v)), \ 307.4515 + (I[323] = (img)(_p9##x,_n8##y,z,v)), \ 307.4516 + (I[342] = (img)(_p9##x,_n9##y,z,v)), \ 307.4517 + (I[1] = (img)(_p8##x,_p9##y,z,v)), \ 307.4518 + (I[20] = (img)(_p8##x,_p8##y,z,v)), \ 307.4519 + (I[39] = (img)(_p8##x,_p7##y,z,v)), \ 307.4520 + (I[58] = (img)(_p8##x,_p6##y,z,v)), \ 307.4521 + (I[77] = (img)(_p8##x,_p5##y,z,v)), \ 307.4522 + (I[96] = (img)(_p8##x,_p4##y,z,v)), \ 307.4523 + (I[115] = (img)(_p8##x,_p3##y,z,v)), \ 307.4524 + (I[134] = (img)(_p8##x,_p2##y,z,v)), \ 307.4525 + (I[153] = (img)(_p8##x,_p1##y,z,v)), \ 307.4526 + (I[172] = (img)(_p8##x,y,z,v)), \ 307.4527 + (I[191] = (img)(_p8##x,_n1##y,z,v)), \ 307.4528 + (I[210] = (img)(_p8##x,_n2##y,z,v)), \ 307.4529 + (I[229] = (img)(_p8##x,_n3##y,z,v)), \ 307.4530 + (I[248] = (img)(_p8##x,_n4##y,z,v)), \ 307.4531 + (I[267] = (img)(_p8##x,_n5##y,z,v)), \ 307.4532 + (I[286] = (img)(_p8##x,_n6##y,z,v)), \ 307.4533 + (I[305] = (img)(_p8##x,_n7##y,z,v)), \ 307.4534 + (I[324] = (img)(_p8##x,_n8##y,z,v)), \ 307.4535 + (I[343] = (img)(_p8##x,_n9##y,z,v)), \ 307.4536 + (I[2] = (img)(_p7##x,_p9##y,z,v)), \ 307.4537 + (I[21] = (img)(_p7##x,_p8##y,z,v)), \ 307.4538 + (I[40] = (img)(_p7##x,_p7##y,z,v)), \ 307.4539 + (I[59] = (img)(_p7##x,_p6##y,z,v)), \ 307.4540 + (I[78] = (img)(_p7##x,_p5##y,z,v)), \ 307.4541 + (I[97] = (img)(_p7##x,_p4##y,z,v)), \ 307.4542 + (I[116] = (img)(_p7##x,_p3##y,z,v)), \ 307.4543 + (I[135] = (img)(_p7##x,_p2##y,z,v)), \ 307.4544 + (I[154] = (img)(_p7##x,_p1##y,z,v)), \ 307.4545 + (I[173] = (img)(_p7##x,y,z,v)), \ 307.4546 + (I[192] = (img)(_p7##x,_n1##y,z,v)), \ 307.4547 + (I[211] = (img)(_p7##x,_n2##y,z,v)), \ 307.4548 + (I[230] = (img)(_p7##x,_n3##y,z,v)), \ 307.4549 + (I[249] = (img)(_p7##x,_n4##y,z,v)), \ 307.4550 + (I[268] = (img)(_p7##x,_n5##y,z,v)), \ 307.4551 + (I[287] = (img)(_p7##x,_n6##y,z,v)), \ 307.4552 + (I[306] = (img)(_p7##x,_n7##y,z,v)), \ 307.4553 + (I[325] = (img)(_p7##x,_n8##y,z,v)), \ 307.4554 + (I[344] = (img)(_p7##x,_n9##y,z,v)), \ 307.4555 + (I[3] = (img)(_p6##x,_p9##y,z,v)), \ 307.4556 + (I[22] = (img)(_p6##x,_p8##y,z,v)), \ 307.4557 + (I[41] = (img)(_p6##x,_p7##y,z,v)), \ 307.4558 + (I[60] = (img)(_p6##x,_p6##y,z,v)), \ 307.4559 + (I[79] = (img)(_p6##x,_p5##y,z,v)), \ 307.4560 + (I[98] = (img)(_p6##x,_p4##y,z,v)), \ 307.4561 + (I[117] = (img)(_p6##x,_p3##y,z,v)), \ 307.4562 + (I[136] = (img)(_p6##x,_p2##y,z,v)), \ 307.4563 + (I[155] = (img)(_p6##x,_p1##y,z,v)), \ 307.4564 + (I[174] = (img)(_p6##x,y,z,v)), \ 307.4565 + (I[193] = (img)(_p6##x,_n1##y,z,v)), \ 307.4566 + (I[212] = (img)(_p6##x,_n2##y,z,v)), \ 307.4567 + (I[231] = (img)(_p6##x,_n3##y,z,v)), \ 307.4568 + (I[250] = (img)(_p6##x,_n4##y,z,v)), \ 307.4569 + (I[269] = (img)(_p6##x,_n5##y,z,v)), \ 307.4570 + (I[288] = (img)(_p6##x,_n6##y,z,v)), \ 307.4571 + (I[307] = (img)(_p6##x,_n7##y,z,v)), \ 307.4572 + (I[326] = (img)(_p6##x,_n8##y,z,v)), \ 307.4573 + (I[345] = (img)(_p6##x,_n9##y,z,v)), \ 307.4574 + (I[4] = (img)(_p5##x,_p9##y,z,v)), \ 307.4575 + (I[23] = (img)(_p5##x,_p8##y,z,v)), \ 307.4576 + (I[42] = (img)(_p5##x,_p7##y,z,v)), \ 307.4577 + (I[61] = (img)(_p5##x,_p6##y,z,v)), \ 307.4578 + (I[80] = (img)(_p5##x,_p5##y,z,v)), \ 307.4579 + (I[99] = (img)(_p5##x,_p4##y,z,v)), \ 307.4580 + (I[118] = (img)(_p5##x,_p3##y,z,v)), \ 307.4581 + (I[137] = (img)(_p5##x,_p2##y,z,v)), \ 307.4582 + (I[156] = (img)(_p5##x,_p1##y,z,v)), \ 307.4583 + (I[175] = (img)(_p5##x,y,z,v)), \ 307.4584 + (I[194] = (img)(_p5##x,_n1##y,z,v)), \ 307.4585 + (I[213] = (img)(_p5##x,_n2##y,z,v)), \ 307.4586 + (I[232] = (img)(_p5##x,_n3##y,z,v)), \ 307.4587 + (I[251] = (img)(_p5##x,_n4##y,z,v)), \ 307.4588 + (I[270] = (img)(_p5##x,_n5##y,z,v)), \ 307.4589 + (I[289] = (img)(_p5##x,_n6##y,z,v)), \ 307.4590 + (I[308] = (img)(_p5##x,_n7##y,z,v)), \ 307.4591 + (I[327] = (img)(_p5##x,_n8##y,z,v)), \ 307.4592 + (I[346] = (img)(_p5##x,_n9##y,z,v)), \ 307.4593 + (I[5] = (img)(_p4##x,_p9##y,z,v)), \ 307.4594 + (I[24] = (img)(_p4##x,_p8##y,z,v)), \ 307.4595 + (I[43] = (img)(_p4##x,_p7##y,z,v)), \ 307.4596 + (I[62] = (img)(_p4##x,_p6##y,z,v)), \ 307.4597 + (I[81] = (img)(_p4##x,_p5##y,z,v)), \ 307.4598 + (I[100] = (img)(_p4##x,_p4##y,z,v)), \ 307.4599 + (I[119] = (img)(_p4##x,_p3##y,z,v)), \ 307.4600 + (I[138] = (img)(_p4##x,_p2##y,z,v)), \ 307.4601 + (I[157] = (img)(_p4##x,_p1##y,z,v)), \ 307.4602 + (I[176] = (img)(_p4##x,y,z,v)), \ 307.4603 + (I[195] = (img)(_p4##x,_n1##y,z,v)), \ 307.4604 + (I[214] = (img)(_p4##x,_n2##y,z,v)), \ 307.4605 + (I[233] = (img)(_p4##x,_n3##y,z,v)), \ 307.4606 + (I[252] = (img)(_p4##x,_n4##y,z,v)), \ 307.4607 + (I[271] = (img)(_p4##x,_n5##y,z,v)), \ 307.4608 + (I[290] = (img)(_p4##x,_n6##y,z,v)), \ 307.4609 + (I[309] = (img)(_p4##x,_n7##y,z,v)), \ 307.4610 + (I[328] = (img)(_p4##x,_n8##y,z,v)), \ 307.4611 + (I[347] = (img)(_p4##x,_n9##y,z,v)), \ 307.4612 + (I[6] = (img)(_p3##x,_p9##y,z,v)), \ 307.4613 + (I[25] = (img)(_p3##x,_p8##y,z,v)), \ 307.4614 + (I[44] = (img)(_p3##x,_p7##y,z,v)), \ 307.4615 + (I[63] = (img)(_p3##x,_p6##y,z,v)), \ 307.4616 + (I[82] = (img)(_p3##x,_p5##y,z,v)), \ 307.4617 + (I[101] = (img)(_p3##x,_p4##y,z,v)), \ 307.4618 + (I[120] = (img)(_p3##x,_p3##y,z,v)), \ 307.4619 + (I[139] = (img)(_p3##x,_p2##y,z,v)), \ 307.4620 + (I[158] = (img)(_p3##x,_p1##y,z,v)), \ 307.4621 + (I[177] = (img)(_p3##x,y,z,v)), \ 307.4622 + (I[196] = (img)(_p3##x,_n1##y,z,v)), \ 307.4623 + (I[215] = (img)(_p3##x,_n2##y,z,v)), \ 307.4624 + (I[234] = (img)(_p3##x,_n3##y,z,v)), \ 307.4625 + (I[253] = (img)(_p3##x,_n4##y,z,v)), \ 307.4626 + (I[272] = (img)(_p3##x,_n5##y,z,v)), \ 307.4627 + (I[291] = (img)(_p3##x,_n6##y,z,v)), \ 307.4628 + (I[310] = (img)(_p3##x,_n7##y,z,v)), \ 307.4629 + (I[329] = (img)(_p3##x,_n8##y,z,v)), \ 307.4630 + (I[348] = (img)(_p3##x,_n9##y,z,v)), \ 307.4631 + (I[7] = (img)(_p2##x,_p9##y,z,v)), \ 307.4632 + (I[26] = (img)(_p2##x,_p8##y,z,v)), \ 307.4633 + (I[45] = (img)(_p2##x,_p7##y,z,v)), \ 307.4634 + (I[64] = (img)(_p2##x,_p6##y,z,v)), \ 307.4635 + (I[83] = (img)(_p2##x,_p5##y,z,v)), \ 307.4636 + (I[102] = (img)(_p2##x,_p4##y,z,v)), \ 307.4637 + (I[121] = (img)(_p2##x,_p3##y,z,v)), \ 307.4638 + (I[140] = (img)(_p2##x,_p2##y,z,v)), \ 307.4639 + (I[159] = (img)(_p2##x,_p1##y,z,v)), \ 307.4640 + (I[178] = (img)(_p2##x,y,z,v)), \ 307.4641 + (I[197] = (img)(_p2##x,_n1##y,z,v)), \ 307.4642 + (I[216] = (img)(_p2##x,_n2##y,z,v)), \ 307.4643 + (I[235] = (img)(_p2##x,_n3##y,z,v)), \ 307.4644 + (I[254] = (img)(_p2##x,_n4##y,z,v)), \ 307.4645 + (I[273] = (img)(_p2##x,_n5##y,z,v)), \ 307.4646 + (I[292] = (img)(_p2##x,_n6##y,z,v)), \ 307.4647 + (I[311] = (img)(_p2##x,_n7##y,z,v)), \ 307.4648 + (I[330] = (img)(_p2##x,_n8##y,z,v)), \ 307.4649 + (I[349] = (img)(_p2##x,_n9##y,z,v)), \ 307.4650 + (I[8] = (img)(_p1##x,_p9##y,z,v)), \ 307.4651 + (I[27] = (img)(_p1##x,_p8##y,z,v)), \ 307.4652 + (I[46] = (img)(_p1##x,_p7##y,z,v)), \ 307.4653 + (I[65] = (img)(_p1##x,_p6##y,z,v)), \ 307.4654 + (I[84] = (img)(_p1##x,_p5##y,z,v)), \ 307.4655 + (I[103] = (img)(_p1##x,_p4##y,z,v)), \ 307.4656 + (I[122] = (img)(_p1##x,_p3##y,z,v)), \ 307.4657 + (I[141] = (img)(_p1##x,_p2##y,z,v)), \ 307.4658 + (I[160] = (img)(_p1##x,_p1##y,z,v)), \ 307.4659 + (I[179] = (img)(_p1##x,y,z,v)), \ 307.4660 + (I[198] = (img)(_p1##x,_n1##y,z,v)), \ 307.4661 + (I[217] = (img)(_p1##x,_n2##y,z,v)), \ 307.4662 + (I[236] = (img)(_p1##x,_n3##y,z,v)), \ 307.4663 + (I[255] = (img)(_p1##x,_n4##y,z,v)), \ 307.4664 + (I[274] = (img)(_p1##x,_n5##y,z,v)), \ 307.4665 + (I[293] = (img)(_p1##x,_n6##y,z,v)), \ 307.4666 + (I[312] = (img)(_p1##x,_n7##y,z,v)), \ 307.4667 + (I[331] = (img)(_p1##x,_n8##y,z,v)), \ 307.4668 + (I[350] = (img)(_p1##x,_n9##y,z,v)), \ 307.4669 + (I[9] = (img)(x,_p9##y,z,v)), \ 307.4670 + (I[28] = (img)(x,_p8##y,z,v)), \ 307.4671 + (I[47] = (img)(x,_p7##y,z,v)), \ 307.4672 + (I[66] = (img)(x,_p6##y,z,v)), \ 307.4673 + (I[85] = (img)(x,_p5##y,z,v)), \ 307.4674 + (I[104] = (img)(x,_p4##y,z,v)), \ 307.4675 + (I[123] = (img)(x,_p3##y,z,v)), \ 307.4676 + (I[142] = (img)(x,_p2##y,z,v)), \ 307.4677 + (I[161] = (img)(x,_p1##y,z,v)), \ 307.4678 + (I[180] = (img)(x,y,z,v)), \ 307.4679 + (I[199] = (img)(x,_n1##y,z,v)), \ 307.4680 + (I[218] = (img)(x,_n2##y,z,v)), \ 307.4681 + (I[237] = (img)(x,_n3##y,z,v)), \ 307.4682 + (I[256] = (img)(x,_n4##y,z,v)), \ 307.4683 + (I[275] = (img)(x,_n5##y,z,v)), \ 307.4684 + (I[294] = (img)(x,_n6##y,z,v)), \ 307.4685 + (I[313] = (img)(x,_n7##y,z,v)), \ 307.4686 + (I[332] = (img)(x,_n8##y,z,v)), \ 307.4687 + (I[351] = (img)(x,_n9##y,z,v)), \ 307.4688 + (I[10] = (img)(_n1##x,_p9##y,z,v)), \ 307.4689 + (I[29] = (img)(_n1##x,_p8##y,z,v)), \ 307.4690 + (I[48] = (img)(_n1##x,_p7##y,z,v)), \ 307.4691 + (I[67] = (img)(_n1##x,_p6##y,z,v)), \ 307.4692 + (I[86] = (img)(_n1##x,_p5##y,z,v)), \ 307.4693 + (I[105] = (img)(_n1##x,_p4##y,z,v)), \ 307.4694 + (I[124] = (img)(_n1##x,_p3##y,z,v)), \ 307.4695 + (I[143] = (img)(_n1##x,_p2##y,z,v)), \ 307.4696 + (I[162] = (img)(_n1##x,_p1##y,z,v)), \ 307.4697 + (I[181] = (img)(_n1##x,y,z,v)), \ 307.4698 + (I[200] = (img)(_n1##x,_n1##y,z,v)), \ 307.4699 + (I[219] = (img)(_n1##x,_n2##y,z,v)), \ 307.4700 + (I[238] = (img)(_n1##x,_n3##y,z,v)), \ 307.4701 + (I[257] = (img)(_n1##x,_n4##y,z,v)), \ 307.4702 + (I[276] = (img)(_n1##x,_n5##y,z,v)), \ 307.4703 + (I[295] = (img)(_n1##x,_n6##y,z,v)), \ 307.4704 + (I[314] = (img)(_n1##x,_n7##y,z,v)), \ 307.4705 + (I[333] = (img)(_n1##x,_n8##y,z,v)), \ 307.4706 + (I[352] = (img)(_n1##x,_n9##y,z,v)), \ 307.4707 + (I[11] = (img)(_n2##x,_p9##y,z,v)), \ 307.4708 + (I[30] = (img)(_n2##x,_p8##y,z,v)), \ 307.4709 + (I[49] = (img)(_n2##x,_p7##y,z,v)), \ 307.4710 + (I[68] = (img)(_n2##x,_p6##y,z,v)), \ 307.4711 + (I[87] = (img)(_n2##x,_p5##y,z,v)), \ 307.4712 + (I[106] = (img)(_n2##x,_p4##y,z,v)), \ 307.4713 + (I[125] = (img)(_n2##x,_p3##y,z,v)), \ 307.4714 + (I[144] = (img)(_n2##x,_p2##y,z,v)), \ 307.4715 + (I[163] = (img)(_n2##x,_p1##y,z,v)), \ 307.4716 + (I[182] = (img)(_n2##x,y,z,v)), \ 307.4717 + (I[201] = (img)(_n2##x,_n1##y,z,v)), \ 307.4718 + (I[220] = (img)(_n2##x,_n2##y,z,v)), \ 307.4719 + (I[239] = (img)(_n2##x,_n3##y,z,v)), \ 307.4720 + (I[258] = (img)(_n2##x,_n4##y,z,v)), \ 307.4721 + (I[277] = (img)(_n2##x,_n5##y,z,v)), \ 307.4722 + (I[296] = (img)(_n2##x,_n6##y,z,v)), \ 307.4723 + (I[315] = (img)(_n2##x,_n7##y,z,v)), \ 307.4724 + (I[334] = (img)(_n2##x,_n8##y,z,v)), \ 307.4725 + (I[353] = (img)(_n2##x,_n9##y,z,v)), \ 307.4726 + (I[12] = (img)(_n3##x,_p9##y,z,v)), \ 307.4727 + (I[31] = (img)(_n3##x,_p8##y,z,v)), \ 307.4728 + (I[50] = (img)(_n3##x,_p7##y,z,v)), \ 307.4729 + (I[69] = (img)(_n3##x,_p6##y,z,v)), \ 307.4730 + (I[88] = (img)(_n3##x,_p5##y,z,v)), \ 307.4731 + (I[107] = (img)(_n3##x,_p4##y,z,v)), \ 307.4732 + (I[126] = (img)(_n3##x,_p3##y,z,v)), \ 307.4733 + (I[145] = (img)(_n3##x,_p2##y,z,v)), \ 307.4734 + (I[164] = (img)(_n3##x,_p1##y,z,v)), \ 307.4735 + (I[183] = (img)(_n3##x,y,z,v)), \ 307.4736 + (I[202] = (img)(_n3##x,_n1##y,z,v)), \ 307.4737 + (I[221] = (img)(_n3##x,_n2##y,z,v)), \ 307.4738 + (I[240] = (img)(_n3##x,_n3##y,z,v)), \ 307.4739 + (I[259] = (img)(_n3##x,_n4##y,z,v)), \ 307.4740 + (I[278] = (img)(_n3##x,_n5##y,z,v)), \ 307.4741 + (I[297] = (img)(_n3##x,_n6##y,z,v)), \ 307.4742 + (I[316] = (img)(_n3##x,_n7##y,z,v)), \ 307.4743 + (I[335] = (img)(_n3##x,_n8##y,z,v)), \ 307.4744 + (I[354] = (img)(_n3##x,_n9##y,z,v)), \ 307.4745 + (I[13] = (img)(_n4##x,_p9##y,z,v)), \ 307.4746 + (I[32] = (img)(_n4##x,_p8##y,z,v)), \ 307.4747 + (I[51] = (img)(_n4##x,_p7##y,z,v)), \ 307.4748 + (I[70] = (img)(_n4##x,_p6##y,z,v)), \ 307.4749 + (I[89] = (img)(_n4##x,_p5##y,z,v)), \ 307.4750 + (I[108] = (img)(_n4##x,_p4##y,z,v)), \ 307.4751 + (I[127] = (img)(_n4##x,_p3##y,z,v)), \ 307.4752 + (I[146] = (img)(_n4##x,_p2##y,z,v)), \ 307.4753 + (I[165] = (img)(_n4##x,_p1##y,z,v)), \ 307.4754 + (I[184] = (img)(_n4##x,y,z,v)), \ 307.4755 + (I[203] = (img)(_n4##x,_n1##y,z,v)), \ 307.4756 + (I[222] = (img)(_n4##x,_n2##y,z,v)), \ 307.4757 + (I[241] = (img)(_n4##x,_n3##y,z,v)), \ 307.4758 + (I[260] = (img)(_n4##x,_n4##y,z,v)), \ 307.4759 + (I[279] = (img)(_n4##x,_n5##y,z,v)), \ 307.4760 + (I[298] = (img)(_n4##x,_n6##y,z,v)), \ 307.4761 + (I[317] = (img)(_n4##x,_n7##y,z,v)), \ 307.4762 + (I[336] = (img)(_n4##x,_n8##y,z,v)), \ 307.4763 + (I[355] = (img)(_n4##x,_n9##y,z,v)), \ 307.4764 + (I[14] = (img)(_n5##x,_p9##y,z,v)), \ 307.4765 + (I[33] = (img)(_n5##x,_p8##y,z,v)), \ 307.4766 + (I[52] = (img)(_n5##x,_p7##y,z,v)), \ 307.4767 + (I[71] = (img)(_n5##x,_p6##y,z,v)), \ 307.4768 + (I[90] = (img)(_n5##x,_p5##y,z,v)), \ 307.4769 + (I[109] = (img)(_n5##x,_p4##y,z,v)), \ 307.4770 + (I[128] = (img)(_n5##x,_p3##y,z,v)), \ 307.4771 + (I[147] = (img)(_n5##x,_p2##y,z,v)), \ 307.4772 + (I[166] = (img)(_n5##x,_p1##y,z,v)), \ 307.4773 + (I[185] = (img)(_n5##x,y,z,v)), \ 307.4774 + (I[204] = (img)(_n5##x,_n1##y,z,v)), \ 307.4775 + (I[223] = (img)(_n5##x,_n2##y,z,v)), \ 307.4776 + (I[242] = (img)(_n5##x,_n3##y,z,v)), \ 307.4777 + (I[261] = (img)(_n5##x,_n4##y,z,v)), \ 307.4778 + (I[280] = (img)(_n5##x,_n5##y,z,v)), \ 307.4779 + (I[299] = (img)(_n5##x,_n6##y,z,v)), \ 307.4780 + (I[318] = (img)(_n5##x,_n7##y,z,v)), \ 307.4781 + (I[337] = (img)(_n5##x,_n8##y,z,v)), \ 307.4782 + (I[356] = (img)(_n5##x,_n9##y,z,v)), \ 307.4783 + (I[15] = (img)(_n6##x,_p9##y,z,v)), \ 307.4784 + (I[34] = (img)(_n6##x,_p8##y,z,v)), \ 307.4785 + (I[53] = (img)(_n6##x,_p7##y,z,v)), \ 307.4786 + (I[72] = (img)(_n6##x,_p6##y,z,v)), \ 307.4787 + (I[91] = (img)(_n6##x,_p5##y,z,v)), \ 307.4788 + (I[110] = (img)(_n6##x,_p4##y,z,v)), \ 307.4789 + (I[129] = (img)(_n6##x,_p3##y,z,v)), \ 307.4790 + (I[148] = (img)(_n6##x,_p2##y,z,v)), \ 307.4791 + (I[167] = (img)(_n6##x,_p1##y,z,v)), \ 307.4792 + (I[186] = (img)(_n6##x,y,z,v)), \ 307.4793 + (I[205] = (img)(_n6##x,_n1##y,z,v)), \ 307.4794 + (I[224] = (img)(_n6##x,_n2##y,z,v)), \ 307.4795 + (I[243] = (img)(_n6##x,_n3##y,z,v)), \ 307.4796 + (I[262] = (img)(_n6##x,_n4##y,z,v)), \ 307.4797 + (I[281] = (img)(_n6##x,_n5##y,z,v)), \ 307.4798 + (I[300] = (img)(_n6##x,_n6##y,z,v)), \ 307.4799 + (I[319] = (img)(_n6##x,_n7##y,z,v)), \ 307.4800 + (I[338] = (img)(_n6##x,_n8##y,z,v)), \ 307.4801 + (I[357] = (img)(_n6##x,_n9##y,z,v)), \ 307.4802 + (I[16] = (img)(_n7##x,_p9##y,z,v)), \ 307.4803 + (I[35] = (img)(_n7##x,_p8##y,z,v)), \ 307.4804 + (I[54] = (img)(_n7##x,_p7##y,z,v)), \ 307.4805 + (I[73] = (img)(_n7##x,_p6##y,z,v)), \ 307.4806 + (I[92] = (img)(_n7##x,_p5##y,z,v)), \ 307.4807 + (I[111] = (img)(_n7##x,_p4##y,z,v)), \ 307.4808 + (I[130] = (img)(_n7##x,_p3##y,z,v)), \ 307.4809 + (I[149] = (img)(_n7##x,_p2##y,z,v)), \ 307.4810 + (I[168] = (img)(_n7##x,_p1##y,z,v)), \ 307.4811 + (I[187] = (img)(_n7##x,y,z,v)), \ 307.4812 + (I[206] = (img)(_n7##x,_n1##y,z,v)), \ 307.4813 + (I[225] = (img)(_n7##x,_n2##y,z,v)), \ 307.4814 + (I[244] = (img)(_n7##x,_n3##y,z,v)), \ 307.4815 + (I[263] = (img)(_n7##x,_n4##y,z,v)), \ 307.4816 + (I[282] = (img)(_n7##x,_n5##y,z,v)), \ 307.4817 + (I[301] = (img)(_n7##x,_n6##y,z,v)), \ 307.4818 + (I[320] = (img)(_n7##x,_n7##y,z,v)), \ 307.4819 + (I[339] = (img)(_n7##x,_n8##y,z,v)), \ 307.4820 + (I[358] = (img)(_n7##x,_n9##y,z,v)), \ 307.4821 + (I[17] = (img)(_n8##x,_p9##y,z,v)), \ 307.4822 + (I[36] = (img)(_n8##x,_p8##y,z,v)), \ 307.4823 + (I[55] = (img)(_n8##x,_p7##y,z,v)), \ 307.4824 + (I[74] = (img)(_n8##x,_p6##y,z,v)), \ 307.4825 + (I[93] = (img)(_n8##x,_p5##y,z,v)), \ 307.4826 + (I[112] = (img)(_n8##x,_p4##y,z,v)), \ 307.4827 + (I[131] = (img)(_n8##x,_p3##y,z,v)), \ 307.4828 + (I[150] = (img)(_n8##x,_p2##y,z,v)), \ 307.4829 + (I[169] = (img)(_n8##x,_p1##y,z,v)), \ 307.4830 + (I[188] = (img)(_n8##x,y,z,v)), \ 307.4831 + (I[207] = (img)(_n8##x,_n1##y,z,v)), \ 307.4832 + (I[226] = (img)(_n8##x,_n2##y,z,v)), \ 307.4833 + (I[245] = (img)(_n8##x,_n3##y,z,v)), \ 307.4834 + (I[264] = (img)(_n8##x,_n4##y,z,v)), \ 307.4835 + (I[283] = (img)(_n8##x,_n5##y,z,v)), \ 307.4836 + (I[302] = (img)(_n8##x,_n6##y,z,v)), \ 307.4837 + (I[321] = (img)(_n8##x,_n7##y,z,v)), \ 307.4838 + (I[340] = (img)(_n8##x,_n8##y,z,v)), \ 307.4839 + (I[359] = (img)(_n8##x,_n9##y,z,v)), \ 307.4840 + x+9>=(int)((img).width)?(int)((img).width)-1:x+9); \ 307.4841 + x<=(int)(x1) && ((_n9##x<(int)((img).width) && ( \ 307.4842 + (I[18] = (img)(_n9##x,_p9##y,z,v)), \ 307.4843 + (I[37] = (img)(_n9##x,_p8##y,z,v)), \ 307.4844 + (I[56] = (img)(_n9##x,_p7##y,z,v)), \ 307.4845 + (I[75] = (img)(_n9##x,_p6##y,z,v)), \ 307.4846 + (I[94] = (img)(_n9##x,_p5##y,z,v)), \ 307.4847 + (I[113] = (img)(_n9##x,_p4##y,z,v)), \ 307.4848 + (I[132] = (img)(_n9##x,_p3##y,z,v)), \ 307.4849 + (I[151] = (img)(_n9##x,_p2##y,z,v)), \ 307.4850 + (I[170] = (img)(_n9##x,_p1##y,z,v)), \ 307.4851 + (I[189] = (img)(_n9##x,y,z,v)), \ 307.4852 + (I[208] = (img)(_n9##x,_n1##y,z,v)), \ 307.4853 + (I[227] = (img)(_n9##x,_n2##y,z,v)), \ 307.4854 + (I[246] = (img)(_n9##x,_n3##y,z,v)), \ 307.4855 + (I[265] = (img)(_n9##x,_n4##y,z,v)), \ 307.4856 + (I[284] = (img)(_n9##x,_n5##y,z,v)), \ 307.4857 + (I[303] = (img)(_n9##x,_n6##y,z,v)), \ 307.4858 + (I[322] = (img)(_n9##x,_n7##y,z,v)), \ 307.4859 + (I[341] = (img)(_n9##x,_n8##y,z,v)), \ 307.4860 + (I[360] = (img)(_n9##x,_n9##y,z,v)),1)) || \ 307.4861 + _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.4862 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], \ 307.4863 + I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], \ 307.4864 + I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], \ 307.4865 + I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], \ 307.4866 + I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], \ 307.4867 + I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], \ 307.4868 + I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], \ 307.4869 + I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], \ 307.4870 + I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], \ 307.4871 + I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], \ 307.4872 + I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], \ 307.4873 + I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], \ 307.4874 + I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], \ 307.4875 + I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], \ 307.4876 + I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], \ 307.4877 + I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], \ 307.4878 + I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], \ 307.4879 + I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], \ 307.4880 + I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], \ 307.4881 + _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x) 307.4882 + 307.4883 +#define cimg_get19x19(img,x,y,z,v,I) \ 307.4884 + I[0] = (img)(_p9##x,_p9##y,z,v), I[1] = (img)(_p8##x,_p9##y,z,v), I[2] = (img)(_p7##x,_p9##y,z,v), I[3] = (img)(_p6##x,_p9##y,z,v), I[4] = (img)(_p5##x,_p9##y,z,v), I[5] = (img)(_p4##x,_p9##y,z,v), I[6] = (img)(_p3##x,_p9##y,z,v), I[7] = (img)(_p2##x,_p9##y,z,v), I[8] = (img)(_p1##x,_p9##y,z,v), I[9] = (img)(x,_p9##y,z,v), I[10] = (img)(_n1##x,_p9##y,z,v), I[11] = (img)(_n2##x,_p9##y,z,v), I[12] = (img)(_n3##x,_p9##y,z,v), I[13] = (img)(_n4##x,_p9##y,z,v), I[14] = (img)(_n5##x,_p9##y,z,v), I[15] = (img)(_n6##x,_p9##y,z,v), I[16] = (img)(_n7##x,_p9##y,z,v), I[17] = (img)(_n8##x,_p9##y,z,v), I[18] = (img)(_n9##x,_p9##y,z,v), \ 307.4885 + I[19] = (img)(_p9##x,_p8##y,z,v), I[20] = (img)(_p8##x,_p8##y,z,v), I[21] = (img)(_p7##x,_p8##y,z,v), I[22] = (img)(_p6##x,_p8##y,z,v), I[23] = (img)(_p5##x,_p8##y,z,v), I[24] = (img)(_p4##x,_p8##y,z,v), I[25] = (img)(_p3##x,_p8##y,z,v), I[26] = (img)(_p2##x,_p8##y,z,v), I[27] = (img)(_p1##x,_p8##y,z,v), I[28] = (img)(x,_p8##y,z,v), I[29] = (img)(_n1##x,_p8##y,z,v), I[30] = (img)(_n2##x,_p8##y,z,v), I[31] = (img)(_n3##x,_p8##y,z,v), I[32] = (img)(_n4##x,_p8##y,z,v), I[33] = (img)(_n5##x,_p8##y,z,v), I[34] = (img)(_n6##x,_p8##y,z,v), I[35] = (img)(_n7##x,_p8##y,z,v), I[36] = (img)(_n8##x,_p8##y,z,v), I[37] = (img)(_n9##x,_p8##y,z,v), \ 307.4886 + I[38] = (img)(_p9##x,_p7##y,z,v), I[39] = (img)(_p8##x,_p7##y,z,v), I[40] = (img)(_p7##x,_p7##y,z,v), I[41] = (img)(_p6##x,_p7##y,z,v), I[42] = (img)(_p5##x,_p7##y,z,v), I[43] = (img)(_p4##x,_p7##y,z,v), I[44] = (img)(_p3##x,_p7##y,z,v), I[45] = (img)(_p2##x,_p7##y,z,v), I[46] = (img)(_p1##x,_p7##y,z,v), I[47] = (img)(x,_p7##y,z,v), I[48] = (img)(_n1##x,_p7##y,z,v), I[49] = (img)(_n2##x,_p7##y,z,v), I[50] = (img)(_n3##x,_p7##y,z,v), I[51] = (img)(_n4##x,_p7##y,z,v), I[52] = (img)(_n5##x,_p7##y,z,v), I[53] = (img)(_n6##x,_p7##y,z,v), I[54] = (img)(_n7##x,_p7##y,z,v), I[55] = (img)(_n8##x,_p7##y,z,v), I[56] = (img)(_n9##x,_p7##y,z,v), \ 307.4887 + I[57] = (img)(_p9##x,_p6##y,z,v), I[58] = (img)(_p8##x,_p6##y,z,v), I[59] = (img)(_p7##x,_p6##y,z,v), I[60] = (img)(_p6##x,_p6##y,z,v), I[61] = (img)(_p5##x,_p6##y,z,v), I[62] = (img)(_p4##x,_p6##y,z,v), I[63] = (img)(_p3##x,_p6##y,z,v), I[64] = (img)(_p2##x,_p6##y,z,v), I[65] = (img)(_p1##x,_p6##y,z,v), I[66] = (img)(x,_p6##y,z,v), I[67] = (img)(_n1##x,_p6##y,z,v), I[68] = (img)(_n2##x,_p6##y,z,v), I[69] = (img)(_n3##x,_p6##y,z,v), I[70] = (img)(_n4##x,_p6##y,z,v), I[71] = (img)(_n5##x,_p6##y,z,v), I[72] = (img)(_n6##x,_p6##y,z,v), I[73] = (img)(_n7##x,_p6##y,z,v), I[74] = (img)(_n8##x,_p6##y,z,v), I[75] = (img)(_n9##x,_p6##y,z,v), \ 307.4888 + I[76] = (img)(_p9##x,_p5##y,z,v), I[77] = (img)(_p8##x,_p5##y,z,v), I[78] = (img)(_p7##x,_p5##y,z,v), I[79] = (img)(_p6##x,_p5##y,z,v), I[80] = (img)(_p5##x,_p5##y,z,v), I[81] = (img)(_p4##x,_p5##y,z,v), I[82] = (img)(_p3##x,_p5##y,z,v), I[83] = (img)(_p2##x,_p5##y,z,v), I[84] = (img)(_p1##x,_p5##y,z,v), I[85] = (img)(x,_p5##y,z,v), I[86] = (img)(_n1##x,_p5##y,z,v), I[87] = (img)(_n2##x,_p5##y,z,v), I[88] = (img)(_n3##x,_p5##y,z,v), I[89] = (img)(_n4##x,_p5##y,z,v), I[90] = (img)(_n5##x,_p5##y,z,v), I[91] = (img)(_n6##x,_p5##y,z,v), I[92] = (img)(_n7##x,_p5##y,z,v), I[93] = (img)(_n8##x,_p5##y,z,v), I[94] = (img)(_n9##x,_p5##y,z,v), \ 307.4889 + I[95] = (img)(_p9##x,_p4##y,z,v), I[96] = (img)(_p8##x,_p4##y,z,v), I[97] = (img)(_p7##x,_p4##y,z,v), I[98] = (img)(_p6##x,_p4##y,z,v), I[99] = (img)(_p5##x,_p4##y,z,v), I[100] = (img)(_p4##x,_p4##y,z,v), I[101] = (img)(_p3##x,_p4##y,z,v), I[102] = (img)(_p2##x,_p4##y,z,v), I[103] = (img)(_p1##x,_p4##y,z,v), I[104] = (img)(x,_p4##y,z,v), I[105] = (img)(_n1##x,_p4##y,z,v), I[106] = (img)(_n2##x,_p4##y,z,v), I[107] = (img)(_n3##x,_p4##y,z,v), I[108] = (img)(_n4##x,_p4##y,z,v), I[109] = (img)(_n5##x,_p4##y,z,v), I[110] = (img)(_n6##x,_p4##y,z,v), I[111] = (img)(_n7##x,_p4##y,z,v), I[112] = (img)(_n8##x,_p4##y,z,v), I[113] = (img)(_n9##x,_p4##y,z,v), \ 307.4890 + I[114] = (img)(_p9##x,_p3##y,z,v), I[115] = (img)(_p8##x,_p3##y,z,v), I[116] = (img)(_p7##x,_p3##y,z,v), I[117] = (img)(_p6##x,_p3##y,z,v), I[118] = (img)(_p5##x,_p3##y,z,v), I[119] = (img)(_p4##x,_p3##y,z,v), I[120] = (img)(_p3##x,_p3##y,z,v), I[121] = (img)(_p2##x,_p3##y,z,v), I[122] = (img)(_p1##x,_p3##y,z,v), I[123] = (img)(x,_p3##y,z,v), I[124] = (img)(_n1##x,_p3##y,z,v), I[125] = (img)(_n2##x,_p3##y,z,v), I[126] = (img)(_n3##x,_p3##y,z,v), I[127] = (img)(_n4##x,_p3##y,z,v), I[128] = (img)(_n5##x,_p3##y,z,v), I[129] = (img)(_n6##x,_p3##y,z,v), I[130] = (img)(_n7##x,_p3##y,z,v), I[131] = (img)(_n8##x,_p3##y,z,v), I[132] = (img)(_n9##x,_p3##y,z,v), \ 307.4891 + I[133] = (img)(_p9##x,_p2##y,z,v), I[134] = (img)(_p8##x,_p2##y,z,v), I[135] = (img)(_p7##x,_p2##y,z,v), I[136] = (img)(_p6##x,_p2##y,z,v), I[137] = (img)(_p5##x,_p2##y,z,v), I[138] = (img)(_p4##x,_p2##y,z,v), I[139] = (img)(_p3##x,_p2##y,z,v), I[140] = (img)(_p2##x,_p2##y,z,v), I[141] = (img)(_p1##x,_p2##y,z,v), I[142] = (img)(x,_p2##y,z,v), I[143] = (img)(_n1##x,_p2##y,z,v), I[144] = (img)(_n2##x,_p2##y,z,v), I[145] = (img)(_n3##x,_p2##y,z,v), I[146] = (img)(_n4##x,_p2##y,z,v), I[147] = (img)(_n5##x,_p2##y,z,v), I[148] = (img)(_n6##x,_p2##y,z,v), I[149] = (img)(_n7##x,_p2##y,z,v), I[150] = (img)(_n8##x,_p2##y,z,v), I[151] = (img)(_n9##x,_p2##y,z,v), \ 307.4892 + I[152] = (img)(_p9##x,_p1##y,z,v), I[153] = (img)(_p8##x,_p1##y,z,v), I[154] = (img)(_p7##x,_p1##y,z,v), I[155] = (img)(_p6##x,_p1##y,z,v), I[156] = (img)(_p5##x,_p1##y,z,v), I[157] = (img)(_p4##x,_p1##y,z,v), I[158] = (img)(_p3##x,_p1##y,z,v), I[159] = (img)(_p2##x,_p1##y,z,v), I[160] = (img)(_p1##x,_p1##y,z,v), I[161] = (img)(x,_p1##y,z,v), I[162] = (img)(_n1##x,_p1##y,z,v), I[163] = (img)(_n2##x,_p1##y,z,v), I[164] = (img)(_n3##x,_p1##y,z,v), I[165] = (img)(_n4##x,_p1##y,z,v), I[166] = (img)(_n5##x,_p1##y,z,v), I[167] = (img)(_n6##x,_p1##y,z,v), I[168] = (img)(_n7##x,_p1##y,z,v), I[169] = (img)(_n8##x,_p1##y,z,v), I[170] = (img)(_n9##x,_p1##y,z,v), \ 307.4893 + I[171] = (img)(_p9##x,y,z,v), I[172] = (img)(_p8##x,y,z,v), I[173] = (img)(_p7##x,y,z,v), I[174] = (img)(_p6##x,y,z,v), I[175] = (img)(_p5##x,y,z,v), I[176] = (img)(_p4##x,y,z,v), I[177] = (img)(_p3##x,y,z,v), I[178] = (img)(_p2##x,y,z,v), I[179] = (img)(_p1##x,y,z,v), I[180] = (img)(x,y,z,v), I[181] = (img)(_n1##x,y,z,v), I[182] = (img)(_n2##x,y,z,v), I[183] = (img)(_n3##x,y,z,v), I[184] = (img)(_n4##x,y,z,v), I[185] = (img)(_n5##x,y,z,v), I[186] = (img)(_n6##x,y,z,v), I[187] = (img)(_n7##x,y,z,v), I[188] = (img)(_n8##x,y,z,v), I[189] = (img)(_n9##x,y,z,v), \ 307.4894 + I[190] = (img)(_p9##x,_n1##y,z,v), I[191] = (img)(_p8##x,_n1##y,z,v), I[192] = (img)(_p7##x,_n1##y,z,v), I[193] = (img)(_p6##x,_n1##y,z,v), I[194] = (img)(_p5##x,_n1##y,z,v), I[195] = (img)(_p4##x,_n1##y,z,v), I[196] = (img)(_p3##x,_n1##y,z,v), I[197] = (img)(_p2##x,_n1##y,z,v), I[198] = (img)(_p1##x,_n1##y,z,v), I[199] = (img)(x,_n1##y,z,v), I[200] = (img)(_n1##x,_n1##y,z,v), I[201] = (img)(_n2##x,_n1##y,z,v), I[202] = (img)(_n3##x,_n1##y,z,v), I[203] = (img)(_n4##x,_n1##y,z,v), I[204] = (img)(_n5##x,_n1##y,z,v), I[205] = (img)(_n6##x,_n1##y,z,v), I[206] = (img)(_n7##x,_n1##y,z,v), I[207] = (img)(_n8##x,_n1##y,z,v), I[208] = (img)(_n9##x,_n1##y,z,v), \ 307.4895 + I[209] = (img)(_p9##x,_n2##y,z,v), I[210] = (img)(_p8##x,_n2##y,z,v), I[211] = (img)(_p7##x,_n2##y,z,v), I[212] = (img)(_p6##x,_n2##y,z,v), I[213] = (img)(_p5##x,_n2##y,z,v), I[214] = (img)(_p4##x,_n2##y,z,v), I[215] = (img)(_p3##x,_n2##y,z,v), I[216] = (img)(_p2##x,_n2##y,z,v), I[217] = (img)(_p1##x,_n2##y,z,v), I[218] = (img)(x,_n2##y,z,v), I[219] = (img)(_n1##x,_n2##y,z,v), I[220] = (img)(_n2##x,_n2##y,z,v), I[221] = (img)(_n3##x,_n2##y,z,v), I[222] = (img)(_n4##x,_n2##y,z,v), I[223] = (img)(_n5##x,_n2##y,z,v), I[224] = (img)(_n6##x,_n2##y,z,v), I[225] = (img)(_n7##x,_n2##y,z,v), I[226] = (img)(_n8##x,_n2##y,z,v), I[227] = (img)(_n9##x,_n2##y,z,v), \ 307.4896 + I[228] = (img)(_p9##x,_n3##y,z,v), I[229] = (img)(_p8##x,_n3##y,z,v), I[230] = (img)(_p7##x,_n3##y,z,v), I[231] = (img)(_p6##x,_n3##y,z,v), I[232] = (img)(_p5##x,_n3##y,z,v), I[233] = (img)(_p4##x,_n3##y,z,v), I[234] = (img)(_p3##x,_n3##y,z,v), I[235] = (img)(_p2##x,_n3##y,z,v), I[236] = (img)(_p1##x,_n3##y,z,v), I[237] = (img)(x,_n3##y,z,v), I[238] = (img)(_n1##x,_n3##y,z,v), I[239] = (img)(_n2##x,_n3##y,z,v), I[240] = (img)(_n3##x,_n3##y,z,v), I[241] = (img)(_n4##x,_n3##y,z,v), I[242] = (img)(_n5##x,_n3##y,z,v), I[243] = (img)(_n6##x,_n3##y,z,v), I[244] = (img)(_n7##x,_n3##y,z,v), I[245] = (img)(_n8##x,_n3##y,z,v), I[246] = (img)(_n9##x,_n3##y,z,v), \ 307.4897 + I[247] = (img)(_p9##x,_n4##y,z,v), I[248] = (img)(_p8##x,_n4##y,z,v), I[249] = (img)(_p7##x,_n4##y,z,v), I[250] = (img)(_p6##x,_n4##y,z,v), I[251] = (img)(_p5##x,_n4##y,z,v), I[252] = (img)(_p4##x,_n4##y,z,v), I[253] = (img)(_p3##x,_n4##y,z,v), I[254] = (img)(_p2##x,_n4##y,z,v), I[255] = (img)(_p1##x,_n4##y,z,v), I[256] = (img)(x,_n4##y,z,v), I[257] = (img)(_n1##x,_n4##y,z,v), I[258] = (img)(_n2##x,_n4##y,z,v), I[259] = (img)(_n3##x,_n4##y,z,v), I[260] = (img)(_n4##x,_n4##y,z,v), I[261] = (img)(_n5##x,_n4##y,z,v), I[262] = (img)(_n6##x,_n4##y,z,v), I[263] = (img)(_n7##x,_n4##y,z,v), I[264] = (img)(_n8##x,_n4##y,z,v), I[265] = (img)(_n9##x,_n4##y,z,v), \ 307.4898 + I[266] = (img)(_p9##x,_n5##y,z,v), I[267] = (img)(_p8##x,_n5##y,z,v), I[268] = (img)(_p7##x,_n5##y,z,v), I[269] = (img)(_p6##x,_n5##y,z,v), I[270] = (img)(_p5##x,_n5##y,z,v), I[271] = (img)(_p4##x,_n5##y,z,v), I[272] = (img)(_p3##x,_n5##y,z,v), I[273] = (img)(_p2##x,_n5##y,z,v), I[274] = (img)(_p1##x,_n5##y,z,v), I[275] = (img)(x,_n5##y,z,v), I[276] = (img)(_n1##x,_n5##y,z,v), I[277] = (img)(_n2##x,_n5##y,z,v), I[278] = (img)(_n3##x,_n5##y,z,v), I[279] = (img)(_n4##x,_n5##y,z,v), I[280] = (img)(_n5##x,_n5##y,z,v), I[281] = (img)(_n6##x,_n5##y,z,v), I[282] = (img)(_n7##x,_n5##y,z,v), I[283] = (img)(_n8##x,_n5##y,z,v), I[284] = (img)(_n9##x,_n5##y,z,v), \ 307.4899 + I[285] = (img)(_p9##x,_n6##y,z,v), I[286] = (img)(_p8##x,_n6##y,z,v), I[287] = (img)(_p7##x,_n6##y,z,v), I[288] = (img)(_p6##x,_n6##y,z,v), I[289] = (img)(_p5##x,_n6##y,z,v), I[290] = (img)(_p4##x,_n6##y,z,v), I[291] = (img)(_p3##x,_n6##y,z,v), I[292] = (img)(_p2##x,_n6##y,z,v), I[293] = (img)(_p1##x,_n6##y,z,v), I[294] = (img)(x,_n6##y,z,v), I[295] = (img)(_n1##x,_n6##y,z,v), I[296] = (img)(_n2##x,_n6##y,z,v), I[297] = (img)(_n3##x,_n6##y,z,v), I[298] = (img)(_n4##x,_n6##y,z,v), I[299] = (img)(_n5##x,_n6##y,z,v), I[300] = (img)(_n6##x,_n6##y,z,v), I[301] = (img)(_n7##x,_n6##y,z,v), I[302] = (img)(_n8##x,_n6##y,z,v), I[303] = (img)(_n9##x,_n6##y,z,v), \ 307.4900 + I[304] = (img)(_p9##x,_n7##y,z,v), I[305] = (img)(_p8##x,_n7##y,z,v), I[306] = (img)(_p7##x,_n7##y,z,v), I[307] = (img)(_p6##x,_n7##y,z,v), I[308] = (img)(_p5##x,_n7##y,z,v), I[309] = (img)(_p4##x,_n7##y,z,v), I[310] = (img)(_p3##x,_n7##y,z,v), I[311] = (img)(_p2##x,_n7##y,z,v), I[312] = (img)(_p1##x,_n7##y,z,v), I[313] = (img)(x,_n7##y,z,v), I[314] = (img)(_n1##x,_n7##y,z,v), I[315] = (img)(_n2##x,_n7##y,z,v), I[316] = (img)(_n3##x,_n7##y,z,v), I[317] = (img)(_n4##x,_n7##y,z,v), I[318] = (img)(_n5##x,_n7##y,z,v), I[319] = (img)(_n6##x,_n7##y,z,v), I[320] = (img)(_n7##x,_n7##y,z,v), I[321] = (img)(_n8##x,_n7##y,z,v), I[322] = (img)(_n9##x,_n7##y,z,v), \ 307.4901 + I[323] = (img)(_p9##x,_n8##y,z,v), I[324] = (img)(_p8##x,_n8##y,z,v), I[325] = (img)(_p7##x,_n8##y,z,v), I[326] = (img)(_p6##x,_n8##y,z,v), I[327] = (img)(_p5##x,_n8##y,z,v), I[328] = (img)(_p4##x,_n8##y,z,v), I[329] = (img)(_p3##x,_n8##y,z,v), I[330] = (img)(_p2##x,_n8##y,z,v), I[331] = (img)(_p1##x,_n8##y,z,v), I[332] = (img)(x,_n8##y,z,v), I[333] = (img)(_n1##x,_n8##y,z,v), I[334] = (img)(_n2##x,_n8##y,z,v), I[335] = (img)(_n3##x,_n8##y,z,v), I[336] = (img)(_n4##x,_n8##y,z,v), I[337] = (img)(_n5##x,_n8##y,z,v), I[338] = (img)(_n6##x,_n8##y,z,v), I[339] = (img)(_n7##x,_n8##y,z,v), I[340] = (img)(_n8##x,_n8##y,z,v), I[341] = (img)(_n9##x,_n8##y,z,v), \ 307.4902 + I[342] = (img)(_p9##x,_n9##y,z,v), I[343] = (img)(_p8##x,_n9##y,z,v), I[344] = (img)(_p7##x,_n9##y,z,v), I[345] = (img)(_p6##x,_n9##y,z,v), I[346] = (img)(_p5##x,_n9##y,z,v), I[347] = (img)(_p4##x,_n9##y,z,v), I[348] = (img)(_p3##x,_n9##y,z,v), I[349] = (img)(_p2##x,_n9##y,z,v), I[350] = (img)(_p1##x,_n9##y,z,v), I[351] = (img)(x,_n9##y,z,v), I[352] = (img)(_n1##x,_n9##y,z,v), I[353] = (img)(_n2##x,_n9##y,z,v), I[354] = (img)(_n3##x,_n9##y,z,v), I[355] = (img)(_n4##x,_n9##y,z,v), I[356] = (img)(_n5##x,_n9##y,z,v), I[357] = (img)(_n6##x,_n9##y,z,v), I[358] = (img)(_n7##x,_n9##y,z,v), I[359] = (img)(_n8##x,_n9##y,z,v), I[360] = (img)(_n9##x,_n9##y,z,v); 307.4903 + 307.4904 +// Define 20x20 loop macros for CImg 307.4905 +//---------------------------------- 307.4906 +#define cimg_for20(bound,i) for (int i = 0, \ 307.4907 + _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.4908 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.4909 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.4910 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.4911 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.4912 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.4913 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.4914 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.4915 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.4916 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9, \ 307.4917 + _n10##i = 10>=(int)(bound)?(int)(bound)-1:10; \ 307.4918 + _n10##i<(int)(bound) || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.4919 + i==(_n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.4920 + _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.4921 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i) 307.4922 + 307.4923 +#define cimg_for20X(img,x) cimg_for20((img).width,x) 307.4924 +#define cimg_for20Y(img,y) cimg_for20((img).height,y) 307.4925 +#define cimg_for20Z(img,z) cimg_for20((img).depth,z) 307.4926 +#define cimg_for20V(img,v) cimg_for20((img).dim,v) 307.4927 +#define cimg_for20XY(img,x,y) cimg_for20Y(img,y) cimg_for20X(img,x) 307.4928 +#define cimg_for20XZ(img,x,z) cimg_for20Z(img,z) cimg_for20X(img,x) 307.4929 +#define cimg_for20XV(img,x,v) cimg_for20V(img,v) cimg_for20X(img,x) 307.4930 +#define cimg_for20YZ(img,y,z) cimg_for20Z(img,z) cimg_for20Y(img,y) 307.4931 +#define cimg_for20YV(img,y,v) cimg_for20V(img,v) cimg_for20Y(img,y) 307.4932 +#define cimg_for20ZV(img,z,v) cimg_for20V(img,v) cimg_for20Z(img,z) 307.4933 +#define cimg_for20XYZ(img,x,y,z) cimg_for20Z(img,z) cimg_for20XY(img,x,y) 307.4934 +#define cimg_for20XZV(img,x,z,v) cimg_for20V(img,v) cimg_for20XZ(img,x,z) 307.4935 +#define cimg_for20YZV(img,y,z,v) cimg_for20V(img,v) cimg_for20YZ(img,y,z) 307.4936 +#define cimg_for20XYZV(img,x,y,z,v) cimg_for20V(img,v) cimg_for20XYZ(img,x,y,z) 307.4937 + 307.4938 +#define cimg_for_in20(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.4939 + _p9##i = i-9<0?0:i-9, \ 307.4940 + _p8##i = i-8<0?0:i-8, \ 307.4941 + _p7##i = i-7<0?0:i-7, \ 307.4942 + _p6##i = i-6<0?0:i-6, \ 307.4943 + _p5##i = i-5<0?0:i-5, \ 307.4944 + _p4##i = i-4<0?0:i-4, \ 307.4945 + _p3##i = i-3<0?0:i-3, \ 307.4946 + _p2##i = i-2<0?0:i-2, \ 307.4947 + _p1##i = i-1<0?0:i-1, \ 307.4948 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.4949 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.4950 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.4951 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.4952 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.4953 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.4954 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.4955 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.4956 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9, \ 307.4957 + _n10##i = i+10>=(int)(bound)?(int)(bound)-1:i+10; \ 307.4958 + i<=(int)(i1) && (_n10##i<(int)(bound) || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.4959 + i==(_n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.4960 + _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.4961 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i) 307.4962 + 307.4963 +#define cimg_for_in20X(img,x0,x1,x) cimg_for_in20((img).width,x0,x1,x) 307.4964 +#define cimg_for_in20Y(img,y0,y1,y) cimg_for_in20((img).height,y0,y1,y) 307.4965 +#define cimg_for_in20Z(img,z0,z1,z) cimg_for_in20((img).depth,z0,z1,z) 307.4966 +#define cimg_for_in20V(img,v0,v1,v) cimg_for_in20((img).dim,v0,v1,v) 307.4967 +#define cimg_for_in20XY(img,x0,y0,x1,y1,x,y) cimg_for_in20Y(img,y0,y1,y) cimg_for_in20X(img,x0,x1,x) 307.4968 +#define cimg_for_in20XZ(img,x0,z0,x1,z1,x,z) cimg_for_in20Z(img,z0,z1,z) cimg_for_in20X(img,x0,x1,x) 307.4969 +#define cimg_for_in20XV(img,x0,v0,x1,v1,x,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20X(img,x0,x1,x) 307.4970 +#define cimg_for_in20YZ(img,y0,z0,y1,z1,y,z) cimg_for_in20Z(img,z0,z1,z) cimg_for_in20Y(img,y0,y1,y) 307.4971 +#define cimg_for_in20YV(img,y0,v0,y1,v1,y,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20Y(img,y0,y1,y) 307.4972 +#define cimg_for_in20ZV(img,z0,v0,z1,v1,z,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20Z(img,z0,z1,z) 307.4973 +#define cimg_for_in20XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in20Z(img,z0,z1,z) cimg_for_in20XY(img,x0,y0,x1,y1,x,y) 307.4974 +#define cimg_for_in20XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20XZ(img,x0,y0,x1,y1,x,z) 307.4975 +#define cimg_for_in20YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20YZ(img,y0,z0,y1,z1,y,z) 307.4976 +#define cimg_for_in20XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in20V(img,v0,v1,v) cimg_for_in20XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.4977 + 307.4978 +#define cimg_for20x20(img,x,y,z,v,I) \ 307.4979 + cimg_for20((img).height,y) for (int x = 0, \ 307.4980 + _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.4981 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.4982 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.4983 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.4984 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.4985 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.4986 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.4987 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.4988 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.4989 + _n9##x = 9>=((img).width)?(int)((img).width)-1:9, \ 307.4990 + _n10##x = (int)( \ 307.4991 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = (img)(0,_p9##y,z,v)), \ 307.4992 + (I[20] = I[21] = I[22] = I[23] = I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = (img)(0,_p8##y,z,v)), \ 307.4993 + (I[40] = I[41] = I[42] = I[43] = I[44] = I[45] = I[46] = I[47] = I[48] = I[49] = (img)(0,_p7##y,z,v)), \ 307.4994 + (I[60] = I[61] = I[62] = I[63] = I[64] = I[65] = I[66] = I[67] = I[68] = I[69] = (img)(0,_p6##y,z,v)), \ 307.4995 + (I[80] = I[81] = I[82] = I[83] = I[84] = I[85] = I[86] = I[87] = I[88] = I[89] = (img)(0,_p5##y,z,v)), \ 307.4996 + (I[100] = I[101] = I[102] = I[103] = I[104] = I[105] = I[106] = I[107] = I[108] = I[109] = (img)(0,_p4##y,z,v)), \ 307.4997 + (I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = I[126] = I[127] = I[128] = I[129] = (img)(0,_p3##y,z,v)), \ 307.4998 + (I[140] = I[141] = I[142] = I[143] = I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = (img)(0,_p2##y,z,v)), \ 307.4999 + (I[160] = I[161] = I[162] = I[163] = I[164] = I[165] = I[166] = I[167] = I[168] = I[169] = (img)(0,_p1##y,z,v)), \ 307.5000 + (I[180] = I[181] = I[182] = I[183] = I[184] = I[185] = I[186] = I[187] = I[188] = I[189] = (img)(0,y,z,v)), \ 307.5001 + (I[200] = I[201] = I[202] = I[203] = I[204] = I[205] = I[206] = I[207] = I[208] = I[209] = (img)(0,_n1##y,z,v)), \ 307.5002 + (I[220] = I[221] = I[222] = I[223] = I[224] = I[225] = I[226] = I[227] = I[228] = I[229] = (img)(0,_n2##y,z,v)), \ 307.5003 + (I[240] = I[241] = I[242] = I[243] = I[244] = I[245] = I[246] = I[247] = I[248] = I[249] = (img)(0,_n3##y,z,v)), \ 307.5004 + (I[260] = I[261] = I[262] = I[263] = I[264] = I[265] = I[266] = I[267] = I[268] = I[269] = (img)(0,_n4##y,z,v)), \ 307.5005 + (I[280] = I[281] = I[282] = I[283] = I[284] = I[285] = I[286] = I[287] = I[288] = I[289] = (img)(0,_n5##y,z,v)), \ 307.5006 + (I[300] = I[301] = I[302] = I[303] = I[304] = I[305] = I[306] = I[307] = I[308] = I[309] = (img)(0,_n6##y,z,v)), \ 307.5007 + (I[320] = I[321] = I[322] = I[323] = I[324] = I[325] = I[326] = I[327] = I[328] = I[329] = (img)(0,_n7##y,z,v)), \ 307.5008 + (I[340] = I[341] = I[342] = I[343] = I[344] = I[345] = I[346] = I[347] = I[348] = I[349] = (img)(0,_n8##y,z,v)), \ 307.5009 + (I[360] = I[361] = I[362] = I[363] = I[364] = I[365] = I[366] = I[367] = I[368] = I[369] = (img)(0,_n9##y,z,v)), \ 307.5010 + (I[380] = I[381] = I[382] = I[383] = I[384] = I[385] = I[386] = I[387] = I[388] = I[389] = (img)(0,_n10##y,z,v)), \ 307.5011 + (I[10] = (img)(_n1##x,_p9##y,z,v)), \ 307.5012 + (I[30] = (img)(_n1##x,_p8##y,z,v)), \ 307.5013 + (I[50] = (img)(_n1##x,_p7##y,z,v)), \ 307.5014 + (I[70] = (img)(_n1##x,_p6##y,z,v)), \ 307.5015 + (I[90] = (img)(_n1##x,_p5##y,z,v)), \ 307.5016 + (I[110] = (img)(_n1##x,_p4##y,z,v)), \ 307.5017 + (I[130] = (img)(_n1##x,_p3##y,z,v)), \ 307.5018 + (I[150] = (img)(_n1##x,_p2##y,z,v)), \ 307.5019 + (I[170] = (img)(_n1##x,_p1##y,z,v)), \ 307.5020 + (I[190] = (img)(_n1##x,y,z,v)), \ 307.5021 + (I[210] = (img)(_n1##x,_n1##y,z,v)), \ 307.5022 + (I[230] = (img)(_n1##x,_n2##y,z,v)), \ 307.5023 + (I[250] = (img)(_n1##x,_n3##y,z,v)), \ 307.5024 + (I[270] = (img)(_n1##x,_n4##y,z,v)), \ 307.5025 + (I[290] = (img)(_n1##x,_n5##y,z,v)), \ 307.5026 + (I[310] = (img)(_n1##x,_n6##y,z,v)), \ 307.5027 + (I[330] = (img)(_n1##x,_n7##y,z,v)), \ 307.5028 + (I[350] = (img)(_n1##x,_n8##y,z,v)), \ 307.5029 + (I[370] = (img)(_n1##x,_n9##y,z,v)), \ 307.5030 + (I[390] = (img)(_n1##x,_n10##y,z,v)), \ 307.5031 + (I[11] = (img)(_n2##x,_p9##y,z,v)), \ 307.5032 + (I[31] = (img)(_n2##x,_p8##y,z,v)), \ 307.5033 + (I[51] = (img)(_n2##x,_p7##y,z,v)), \ 307.5034 + (I[71] = (img)(_n2##x,_p6##y,z,v)), \ 307.5035 + (I[91] = (img)(_n2##x,_p5##y,z,v)), \ 307.5036 + (I[111] = (img)(_n2##x,_p4##y,z,v)), \ 307.5037 + (I[131] = (img)(_n2##x,_p3##y,z,v)), \ 307.5038 + (I[151] = (img)(_n2##x,_p2##y,z,v)), \ 307.5039 + (I[171] = (img)(_n2##x,_p1##y,z,v)), \ 307.5040 + (I[191] = (img)(_n2##x,y,z,v)), \ 307.5041 + (I[211] = (img)(_n2##x,_n1##y,z,v)), \ 307.5042 + (I[231] = (img)(_n2##x,_n2##y,z,v)), \ 307.5043 + (I[251] = (img)(_n2##x,_n3##y,z,v)), \ 307.5044 + (I[271] = (img)(_n2##x,_n4##y,z,v)), \ 307.5045 + (I[291] = (img)(_n2##x,_n5##y,z,v)), \ 307.5046 + (I[311] = (img)(_n2##x,_n6##y,z,v)), \ 307.5047 + (I[331] = (img)(_n2##x,_n7##y,z,v)), \ 307.5048 + (I[351] = (img)(_n2##x,_n8##y,z,v)), \ 307.5049 + (I[371] = (img)(_n2##x,_n9##y,z,v)), \ 307.5050 + (I[391] = (img)(_n2##x,_n10##y,z,v)), \ 307.5051 + (I[12] = (img)(_n3##x,_p9##y,z,v)), \ 307.5052 + (I[32] = (img)(_n3##x,_p8##y,z,v)), \ 307.5053 + (I[52] = (img)(_n3##x,_p7##y,z,v)), \ 307.5054 + (I[72] = (img)(_n3##x,_p6##y,z,v)), \ 307.5055 + (I[92] = (img)(_n3##x,_p5##y,z,v)), \ 307.5056 + (I[112] = (img)(_n3##x,_p4##y,z,v)), \ 307.5057 + (I[132] = (img)(_n3##x,_p3##y,z,v)), \ 307.5058 + (I[152] = (img)(_n3##x,_p2##y,z,v)), \ 307.5059 + (I[172] = (img)(_n3##x,_p1##y,z,v)), \ 307.5060 + (I[192] = (img)(_n3##x,y,z,v)), \ 307.5061 + (I[212] = (img)(_n3##x,_n1##y,z,v)), \ 307.5062 + (I[232] = (img)(_n3##x,_n2##y,z,v)), \ 307.5063 + (I[252] = (img)(_n3##x,_n3##y,z,v)), \ 307.5064 + (I[272] = (img)(_n3##x,_n4##y,z,v)), \ 307.5065 + (I[292] = (img)(_n3##x,_n5##y,z,v)), \ 307.5066 + (I[312] = (img)(_n3##x,_n6##y,z,v)), \ 307.5067 + (I[332] = (img)(_n3##x,_n7##y,z,v)), \ 307.5068 + (I[352] = (img)(_n3##x,_n8##y,z,v)), \ 307.5069 + (I[372] = (img)(_n3##x,_n9##y,z,v)), \ 307.5070 + (I[392] = (img)(_n3##x,_n10##y,z,v)), \ 307.5071 + (I[13] = (img)(_n4##x,_p9##y,z,v)), \ 307.5072 + (I[33] = (img)(_n4##x,_p8##y,z,v)), \ 307.5073 + (I[53] = (img)(_n4##x,_p7##y,z,v)), \ 307.5074 + (I[73] = (img)(_n4##x,_p6##y,z,v)), \ 307.5075 + (I[93] = (img)(_n4##x,_p5##y,z,v)), \ 307.5076 + (I[113] = (img)(_n4##x,_p4##y,z,v)), \ 307.5077 + (I[133] = (img)(_n4##x,_p3##y,z,v)), \ 307.5078 + (I[153] = (img)(_n4##x,_p2##y,z,v)), \ 307.5079 + (I[173] = (img)(_n4##x,_p1##y,z,v)), \ 307.5080 + (I[193] = (img)(_n4##x,y,z,v)), \ 307.5081 + (I[213] = (img)(_n4##x,_n1##y,z,v)), \ 307.5082 + (I[233] = (img)(_n4##x,_n2##y,z,v)), \ 307.5083 + (I[253] = (img)(_n4##x,_n3##y,z,v)), \ 307.5084 + (I[273] = (img)(_n4##x,_n4##y,z,v)), \ 307.5085 + (I[293] = (img)(_n4##x,_n5##y,z,v)), \ 307.5086 + (I[313] = (img)(_n4##x,_n6##y,z,v)), \ 307.5087 + (I[333] = (img)(_n4##x,_n7##y,z,v)), \ 307.5088 + (I[353] = (img)(_n4##x,_n8##y,z,v)), \ 307.5089 + (I[373] = (img)(_n4##x,_n9##y,z,v)), \ 307.5090 + (I[393] = (img)(_n4##x,_n10##y,z,v)), \ 307.5091 + (I[14] = (img)(_n5##x,_p9##y,z,v)), \ 307.5092 + (I[34] = (img)(_n5##x,_p8##y,z,v)), \ 307.5093 + (I[54] = (img)(_n5##x,_p7##y,z,v)), \ 307.5094 + (I[74] = (img)(_n5##x,_p6##y,z,v)), \ 307.5095 + (I[94] = (img)(_n5##x,_p5##y,z,v)), \ 307.5096 + (I[114] = (img)(_n5##x,_p4##y,z,v)), \ 307.5097 + (I[134] = (img)(_n5##x,_p3##y,z,v)), \ 307.5098 + (I[154] = (img)(_n5##x,_p2##y,z,v)), \ 307.5099 + (I[174] = (img)(_n5##x,_p1##y,z,v)), \ 307.5100 + (I[194] = (img)(_n5##x,y,z,v)), \ 307.5101 + (I[214] = (img)(_n5##x,_n1##y,z,v)), \ 307.5102 + (I[234] = (img)(_n5##x,_n2##y,z,v)), \ 307.5103 + (I[254] = (img)(_n5##x,_n3##y,z,v)), \ 307.5104 + (I[274] = (img)(_n5##x,_n4##y,z,v)), \ 307.5105 + (I[294] = (img)(_n5##x,_n5##y,z,v)), \ 307.5106 + (I[314] = (img)(_n5##x,_n6##y,z,v)), \ 307.5107 + (I[334] = (img)(_n5##x,_n7##y,z,v)), \ 307.5108 + (I[354] = (img)(_n5##x,_n8##y,z,v)), \ 307.5109 + (I[374] = (img)(_n5##x,_n9##y,z,v)), \ 307.5110 + (I[394] = (img)(_n5##x,_n10##y,z,v)), \ 307.5111 + (I[15] = (img)(_n6##x,_p9##y,z,v)), \ 307.5112 + (I[35] = (img)(_n6##x,_p8##y,z,v)), \ 307.5113 + (I[55] = (img)(_n6##x,_p7##y,z,v)), \ 307.5114 + (I[75] = (img)(_n6##x,_p6##y,z,v)), \ 307.5115 + (I[95] = (img)(_n6##x,_p5##y,z,v)), \ 307.5116 + (I[115] = (img)(_n6##x,_p4##y,z,v)), \ 307.5117 + (I[135] = (img)(_n6##x,_p3##y,z,v)), \ 307.5118 + (I[155] = (img)(_n6##x,_p2##y,z,v)), \ 307.5119 + (I[175] = (img)(_n6##x,_p1##y,z,v)), \ 307.5120 + (I[195] = (img)(_n6##x,y,z,v)), \ 307.5121 + (I[215] = (img)(_n6##x,_n1##y,z,v)), \ 307.5122 + (I[235] = (img)(_n6##x,_n2##y,z,v)), \ 307.5123 + (I[255] = (img)(_n6##x,_n3##y,z,v)), \ 307.5124 + (I[275] = (img)(_n6##x,_n4##y,z,v)), \ 307.5125 + (I[295] = (img)(_n6##x,_n5##y,z,v)), \ 307.5126 + (I[315] = (img)(_n6##x,_n6##y,z,v)), \ 307.5127 + (I[335] = (img)(_n6##x,_n7##y,z,v)), \ 307.5128 + (I[355] = (img)(_n6##x,_n8##y,z,v)), \ 307.5129 + (I[375] = (img)(_n6##x,_n9##y,z,v)), \ 307.5130 + (I[395] = (img)(_n6##x,_n10##y,z,v)), \ 307.5131 + (I[16] = (img)(_n7##x,_p9##y,z,v)), \ 307.5132 + (I[36] = (img)(_n7##x,_p8##y,z,v)), \ 307.5133 + (I[56] = (img)(_n7##x,_p7##y,z,v)), \ 307.5134 + (I[76] = (img)(_n7##x,_p6##y,z,v)), \ 307.5135 + (I[96] = (img)(_n7##x,_p5##y,z,v)), \ 307.5136 + (I[116] = (img)(_n7##x,_p4##y,z,v)), \ 307.5137 + (I[136] = (img)(_n7##x,_p3##y,z,v)), \ 307.5138 + (I[156] = (img)(_n7##x,_p2##y,z,v)), \ 307.5139 + (I[176] = (img)(_n7##x,_p1##y,z,v)), \ 307.5140 + (I[196] = (img)(_n7##x,y,z,v)), \ 307.5141 + (I[216] = (img)(_n7##x,_n1##y,z,v)), \ 307.5142 + (I[236] = (img)(_n7##x,_n2##y,z,v)), \ 307.5143 + (I[256] = (img)(_n7##x,_n3##y,z,v)), \ 307.5144 + (I[276] = (img)(_n7##x,_n4##y,z,v)), \ 307.5145 + (I[296] = (img)(_n7##x,_n5##y,z,v)), \ 307.5146 + (I[316] = (img)(_n7##x,_n6##y,z,v)), \ 307.5147 + (I[336] = (img)(_n7##x,_n7##y,z,v)), \ 307.5148 + (I[356] = (img)(_n7##x,_n8##y,z,v)), \ 307.5149 + (I[376] = (img)(_n7##x,_n9##y,z,v)), \ 307.5150 + (I[396] = (img)(_n7##x,_n10##y,z,v)), \ 307.5151 + (I[17] = (img)(_n8##x,_p9##y,z,v)), \ 307.5152 + (I[37] = (img)(_n8##x,_p8##y,z,v)), \ 307.5153 + (I[57] = (img)(_n8##x,_p7##y,z,v)), \ 307.5154 + (I[77] = (img)(_n8##x,_p6##y,z,v)), \ 307.5155 + (I[97] = (img)(_n8##x,_p5##y,z,v)), \ 307.5156 + (I[117] = (img)(_n8##x,_p4##y,z,v)), \ 307.5157 + (I[137] = (img)(_n8##x,_p3##y,z,v)), \ 307.5158 + (I[157] = (img)(_n8##x,_p2##y,z,v)), \ 307.5159 + (I[177] = (img)(_n8##x,_p1##y,z,v)), \ 307.5160 + (I[197] = (img)(_n8##x,y,z,v)), \ 307.5161 + (I[217] = (img)(_n8##x,_n1##y,z,v)), \ 307.5162 + (I[237] = (img)(_n8##x,_n2##y,z,v)), \ 307.5163 + (I[257] = (img)(_n8##x,_n3##y,z,v)), \ 307.5164 + (I[277] = (img)(_n8##x,_n4##y,z,v)), \ 307.5165 + (I[297] = (img)(_n8##x,_n5##y,z,v)), \ 307.5166 + (I[317] = (img)(_n8##x,_n6##y,z,v)), \ 307.5167 + (I[337] = (img)(_n8##x,_n7##y,z,v)), \ 307.5168 + (I[357] = (img)(_n8##x,_n8##y,z,v)), \ 307.5169 + (I[377] = (img)(_n8##x,_n9##y,z,v)), \ 307.5170 + (I[397] = (img)(_n8##x,_n10##y,z,v)), \ 307.5171 + (I[18] = (img)(_n9##x,_p9##y,z,v)), \ 307.5172 + (I[38] = (img)(_n9##x,_p8##y,z,v)), \ 307.5173 + (I[58] = (img)(_n9##x,_p7##y,z,v)), \ 307.5174 + (I[78] = (img)(_n9##x,_p6##y,z,v)), \ 307.5175 + (I[98] = (img)(_n9##x,_p5##y,z,v)), \ 307.5176 + (I[118] = (img)(_n9##x,_p4##y,z,v)), \ 307.5177 + (I[138] = (img)(_n9##x,_p3##y,z,v)), \ 307.5178 + (I[158] = (img)(_n9##x,_p2##y,z,v)), \ 307.5179 + (I[178] = (img)(_n9##x,_p1##y,z,v)), \ 307.5180 + (I[198] = (img)(_n9##x,y,z,v)), \ 307.5181 + (I[218] = (img)(_n9##x,_n1##y,z,v)), \ 307.5182 + (I[238] = (img)(_n9##x,_n2##y,z,v)), \ 307.5183 + (I[258] = (img)(_n9##x,_n3##y,z,v)), \ 307.5184 + (I[278] = (img)(_n9##x,_n4##y,z,v)), \ 307.5185 + (I[298] = (img)(_n9##x,_n5##y,z,v)), \ 307.5186 + (I[318] = (img)(_n9##x,_n6##y,z,v)), \ 307.5187 + (I[338] = (img)(_n9##x,_n7##y,z,v)), \ 307.5188 + (I[358] = (img)(_n9##x,_n8##y,z,v)), \ 307.5189 + (I[378] = (img)(_n9##x,_n9##y,z,v)), \ 307.5190 + (I[398] = (img)(_n9##x,_n10##y,z,v)), \ 307.5191 + 10>=((img).width)?(int)((img).width)-1:10); \ 307.5192 + (_n10##x<(int)((img).width) && ( \ 307.5193 + (I[19] = (img)(_n10##x,_p9##y,z,v)), \ 307.5194 + (I[39] = (img)(_n10##x,_p8##y,z,v)), \ 307.5195 + (I[59] = (img)(_n10##x,_p7##y,z,v)), \ 307.5196 + (I[79] = (img)(_n10##x,_p6##y,z,v)), \ 307.5197 + (I[99] = (img)(_n10##x,_p5##y,z,v)), \ 307.5198 + (I[119] = (img)(_n10##x,_p4##y,z,v)), \ 307.5199 + (I[139] = (img)(_n10##x,_p3##y,z,v)), \ 307.5200 + (I[159] = (img)(_n10##x,_p2##y,z,v)), \ 307.5201 + (I[179] = (img)(_n10##x,_p1##y,z,v)), \ 307.5202 + (I[199] = (img)(_n10##x,y,z,v)), \ 307.5203 + (I[219] = (img)(_n10##x,_n1##y,z,v)), \ 307.5204 + (I[239] = (img)(_n10##x,_n2##y,z,v)), \ 307.5205 + (I[259] = (img)(_n10##x,_n3##y,z,v)), \ 307.5206 + (I[279] = (img)(_n10##x,_n4##y,z,v)), \ 307.5207 + (I[299] = (img)(_n10##x,_n5##y,z,v)), \ 307.5208 + (I[319] = (img)(_n10##x,_n6##y,z,v)), \ 307.5209 + (I[339] = (img)(_n10##x,_n7##y,z,v)), \ 307.5210 + (I[359] = (img)(_n10##x,_n8##y,z,v)), \ 307.5211 + (I[379] = (img)(_n10##x,_n9##y,z,v)), \ 307.5212 + (I[399] = (img)(_n10##x,_n10##y,z,v)),1)) || \ 307.5213 + _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.5214 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.5215 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.5216 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.5217 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.5218 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.5219 + I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.5220 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.5221 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.5222 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.5223 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], \ 307.5224 + I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], \ 307.5225 + I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.5226 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], \ 307.5227 + I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.5228 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], \ 307.5229 + I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], \ 307.5230 + I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], \ 307.5231 + I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.5232 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], \ 307.5233 + I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], \ 307.5234 + _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x) 307.5235 + 307.5236 +#define cimg_for_in20x20(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.5237 + cimg_for_in20((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.5238 + _p9##x = x-9<0?0:x-9, \ 307.5239 + _p8##x = x-8<0?0:x-8, \ 307.5240 + _p7##x = x-7<0?0:x-7, \ 307.5241 + _p6##x = x-6<0?0:x-6, \ 307.5242 + _p5##x = x-5<0?0:x-5, \ 307.5243 + _p4##x = x-4<0?0:x-4, \ 307.5244 + _p3##x = x-3<0?0:x-3, \ 307.5245 + _p2##x = x-2<0?0:x-2, \ 307.5246 + _p1##x = x-1<0?0:x-1, \ 307.5247 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.5248 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.5249 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.5250 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.5251 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.5252 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.5253 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.5254 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.5255 + _n9##x = x+9>=(int)((img).width)?(int)((img).width)-1:x+9, \ 307.5256 + _n10##x = (int)( \ 307.5257 + (I[0] = (img)(_p9##x,_p9##y,z,v)), \ 307.5258 + (I[20] = (img)(_p9##x,_p8##y,z,v)), \ 307.5259 + (I[40] = (img)(_p9##x,_p7##y,z,v)), \ 307.5260 + (I[60] = (img)(_p9##x,_p6##y,z,v)), \ 307.5261 + (I[80] = (img)(_p9##x,_p5##y,z,v)), \ 307.5262 + (I[100] = (img)(_p9##x,_p4##y,z,v)), \ 307.5263 + (I[120] = (img)(_p9##x,_p3##y,z,v)), \ 307.5264 + (I[140] = (img)(_p9##x,_p2##y,z,v)), \ 307.5265 + (I[160] = (img)(_p9##x,_p1##y,z,v)), \ 307.5266 + (I[180] = (img)(_p9##x,y,z,v)), \ 307.5267 + (I[200] = (img)(_p9##x,_n1##y,z,v)), \ 307.5268 + (I[220] = (img)(_p9##x,_n2##y,z,v)), \ 307.5269 + (I[240] = (img)(_p9##x,_n3##y,z,v)), \ 307.5270 + (I[260] = (img)(_p9##x,_n4##y,z,v)), \ 307.5271 + (I[280] = (img)(_p9##x,_n5##y,z,v)), \ 307.5272 + (I[300] = (img)(_p9##x,_n6##y,z,v)), \ 307.5273 + (I[320] = (img)(_p9##x,_n7##y,z,v)), \ 307.5274 + (I[340] = (img)(_p9##x,_n8##y,z,v)), \ 307.5275 + (I[360] = (img)(_p9##x,_n9##y,z,v)), \ 307.5276 + (I[380] = (img)(_p9##x,_n10##y,z,v)), \ 307.5277 + (I[1] = (img)(_p8##x,_p9##y,z,v)), \ 307.5278 + (I[21] = (img)(_p8##x,_p8##y,z,v)), \ 307.5279 + (I[41] = (img)(_p8##x,_p7##y,z,v)), \ 307.5280 + (I[61] = (img)(_p8##x,_p6##y,z,v)), \ 307.5281 + (I[81] = (img)(_p8##x,_p5##y,z,v)), \ 307.5282 + (I[101] = (img)(_p8##x,_p4##y,z,v)), \ 307.5283 + (I[121] = (img)(_p8##x,_p3##y,z,v)), \ 307.5284 + (I[141] = (img)(_p8##x,_p2##y,z,v)), \ 307.5285 + (I[161] = (img)(_p8##x,_p1##y,z,v)), \ 307.5286 + (I[181] = (img)(_p8##x,y,z,v)), \ 307.5287 + (I[201] = (img)(_p8##x,_n1##y,z,v)), \ 307.5288 + (I[221] = (img)(_p8##x,_n2##y,z,v)), \ 307.5289 + (I[241] = (img)(_p8##x,_n3##y,z,v)), \ 307.5290 + (I[261] = (img)(_p8##x,_n4##y,z,v)), \ 307.5291 + (I[281] = (img)(_p8##x,_n5##y,z,v)), \ 307.5292 + (I[301] = (img)(_p8##x,_n6##y,z,v)), \ 307.5293 + (I[321] = (img)(_p8##x,_n7##y,z,v)), \ 307.5294 + (I[341] = (img)(_p8##x,_n8##y,z,v)), \ 307.5295 + (I[361] = (img)(_p8##x,_n9##y,z,v)), \ 307.5296 + (I[381] = (img)(_p8##x,_n10##y,z,v)), \ 307.5297 + (I[2] = (img)(_p7##x,_p9##y,z,v)), \ 307.5298 + (I[22] = (img)(_p7##x,_p8##y,z,v)), \ 307.5299 + (I[42] = (img)(_p7##x,_p7##y,z,v)), \ 307.5300 + (I[62] = (img)(_p7##x,_p6##y,z,v)), \ 307.5301 + (I[82] = (img)(_p7##x,_p5##y,z,v)), \ 307.5302 + (I[102] = (img)(_p7##x,_p4##y,z,v)), \ 307.5303 + (I[122] = (img)(_p7##x,_p3##y,z,v)), \ 307.5304 + (I[142] = (img)(_p7##x,_p2##y,z,v)), \ 307.5305 + (I[162] = (img)(_p7##x,_p1##y,z,v)), \ 307.5306 + (I[182] = (img)(_p7##x,y,z,v)), \ 307.5307 + (I[202] = (img)(_p7##x,_n1##y,z,v)), \ 307.5308 + (I[222] = (img)(_p7##x,_n2##y,z,v)), \ 307.5309 + (I[242] = (img)(_p7##x,_n3##y,z,v)), \ 307.5310 + (I[262] = (img)(_p7##x,_n4##y,z,v)), \ 307.5311 + (I[282] = (img)(_p7##x,_n5##y,z,v)), \ 307.5312 + (I[302] = (img)(_p7##x,_n6##y,z,v)), \ 307.5313 + (I[322] = (img)(_p7##x,_n7##y,z,v)), \ 307.5314 + (I[342] = (img)(_p7##x,_n8##y,z,v)), \ 307.5315 + (I[362] = (img)(_p7##x,_n9##y,z,v)), \ 307.5316 + (I[382] = (img)(_p7##x,_n10##y,z,v)), \ 307.5317 + (I[3] = (img)(_p6##x,_p9##y,z,v)), \ 307.5318 + (I[23] = (img)(_p6##x,_p8##y,z,v)), \ 307.5319 + (I[43] = (img)(_p6##x,_p7##y,z,v)), \ 307.5320 + (I[63] = (img)(_p6##x,_p6##y,z,v)), \ 307.5321 + (I[83] = (img)(_p6##x,_p5##y,z,v)), \ 307.5322 + (I[103] = (img)(_p6##x,_p4##y,z,v)), \ 307.5323 + (I[123] = (img)(_p6##x,_p3##y,z,v)), \ 307.5324 + (I[143] = (img)(_p6##x,_p2##y,z,v)), \ 307.5325 + (I[163] = (img)(_p6##x,_p1##y,z,v)), \ 307.5326 + (I[183] = (img)(_p6##x,y,z,v)), \ 307.5327 + (I[203] = (img)(_p6##x,_n1##y,z,v)), \ 307.5328 + (I[223] = (img)(_p6##x,_n2##y,z,v)), \ 307.5329 + (I[243] = (img)(_p6##x,_n3##y,z,v)), \ 307.5330 + (I[263] = (img)(_p6##x,_n4##y,z,v)), \ 307.5331 + (I[283] = (img)(_p6##x,_n5##y,z,v)), \ 307.5332 + (I[303] = (img)(_p6##x,_n6##y,z,v)), \ 307.5333 + (I[323] = (img)(_p6##x,_n7##y,z,v)), \ 307.5334 + (I[343] = (img)(_p6##x,_n8##y,z,v)), \ 307.5335 + (I[363] = (img)(_p6##x,_n9##y,z,v)), \ 307.5336 + (I[383] = (img)(_p6##x,_n10##y,z,v)), \ 307.5337 + (I[4] = (img)(_p5##x,_p9##y,z,v)), \ 307.5338 + (I[24] = (img)(_p5##x,_p8##y,z,v)), \ 307.5339 + (I[44] = (img)(_p5##x,_p7##y,z,v)), \ 307.5340 + (I[64] = (img)(_p5##x,_p6##y,z,v)), \ 307.5341 + (I[84] = (img)(_p5##x,_p5##y,z,v)), \ 307.5342 + (I[104] = (img)(_p5##x,_p4##y,z,v)), \ 307.5343 + (I[124] = (img)(_p5##x,_p3##y,z,v)), \ 307.5344 + (I[144] = (img)(_p5##x,_p2##y,z,v)), \ 307.5345 + (I[164] = (img)(_p5##x,_p1##y,z,v)), \ 307.5346 + (I[184] = (img)(_p5##x,y,z,v)), \ 307.5347 + (I[204] = (img)(_p5##x,_n1##y,z,v)), \ 307.5348 + (I[224] = (img)(_p5##x,_n2##y,z,v)), \ 307.5349 + (I[244] = (img)(_p5##x,_n3##y,z,v)), \ 307.5350 + (I[264] = (img)(_p5##x,_n4##y,z,v)), \ 307.5351 + (I[284] = (img)(_p5##x,_n5##y,z,v)), \ 307.5352 + (I[304] = (img)(_p5##x,_n6##y,z,v)), \ 307.5353 + (I[324] = (img)(_p5##x,_n7##y,z,v)), \ 307.5354 + (I[344] = (img)(_p5##x,_n8##y,z,v)), \ 307.5355 + (I[364] = (img)(_p5##x,_n9##y,z,v)), \ 307.5356 + (I[384] = (img)(_p5##x,_n10##y,z,v)), \ 307.5357 + (I[5] = (img)(_p4##x,_p9##y,z,v)), \ 307.5358 + (I[25] = (img)(_p4##x,_p8##y,z,v)), \ 307.5359 + (I[45] = (img)(_p4##x,_p7##y,z,v)), \ 307.5360 + (I[65] = (img)(_p4##x,_p6##y,z,v)), \ 307.5361 + (I[85] = (img)(_p4##x,_p5##y,z,v)), \ 307.5362 + (I[105] = (img)(_p4##x,_p4##y,z,v)), \ 307.5363 + (I[125] = (img)(_p4##x,_p3##y,z,v)), \ 307.5364 + (I[145] = (img)(_p4##x,_p2##y,z,v)), \ 307.5365 + (I[165] = (img)(_p4##x,_p1##y,z,v)), \ 307.5366 + (I[185] = (img)(_p4##x,y,z,v)), \ 307.5367 + (I[205] = (img)(_p4##x,_n1##y,z,v)), \ 307.5368 + (I[225] = (img)(_p4##x,_n2##y,z,v)), \ 307.5369 + (I[245] = (img)(_p4##x,_n3##y,z,v)), \ 307.5370 + (I[265] = (img)(_p4##x,_n4##y,z,v)), \ 307.5371 + (I[285] = (img)(_p4##x,_n5##y,z,v)), \ 307.5372 + (I[305] = (img)(_p4##x,_n6##y,z,v)), \ 307.5373 + (I[325] = (img)(_p4##x,_n7##y,z,v)), \ 307.5374 + (I[345] = (img)(_p4##x,_n8##y,z,v)), \ 307.5375 + (I[365] = (img)(_p4##x,_n9##y,z,v)), \ 307.5376 + (I[385] = (img)(_p4##x,_n10##y,z,v)), \ 307.5377 + (I[6] = (img)(_p3##x,_p9##y,z,v)), \ 307.5378 + (I[26] = (img)(_p3##x,_p8##y,z,v)), \ 307.5379 + (I[46] = (img)(_p3##x,_p7##y,z,v)), \ 307.5380 + (I[66] = (img)(_p3##x,_p6##y,z,v)), \ 307.5381 + (I[86] = (img)(_p3##x,_p5##y,z,v)), \ 307.5382 + (I[106] = (img)(_p3##x,_p4##y,z,v)), \ 307.5383 + (I[126] = (img)(_p3##x,_p3##y,z,v)), \ 307.5384 + (I[146] = (img)(_p3##x,_p2##y,z,v)), \ 307.5385 + (I[166] = (img)(_p3##x,_p1##y,z,v)), \ 307.5386 + (I[186] = (img)(_p3##x,y,z,v)), \ 307.5387 + (I[206] = (img)(_p3##x,_n1##y,z,v)), \ 307.5388 + (I[226] = (img)(_p3##x,_n2##y,z,v)), \ 307.5389 + (I[246] = (img)(_p3##x,_n3##y,z,v)), \ 307.5390 + (I[266] = (img)(_p3##x,_n4##y,z,v)), \ 307.5391 + (I[286] = (img)(_p3##x,_n5##y,z,v)), \ 307.5392 + (I[306] = (img)(_p3##x,_n6##y,z,v)), \ 307.5393 + (I[326] = (img)(_p3##x,_n7##y,z,v)), \ 307.5394 + (I[346] = (img)(_p3##x,_n8##y,z,v)), \ 307.5395 + (I[366] = (img)(_p3##x,_n9##y,z,v)), \ 307.5396 + (I[386] = (img)(_p3##x,_n10##y,z,v)), \ 307.5397 + (I[7] = (img)(_p2##x,_p9##y,z,v)), \ 307.5398 + (I[27] = (img)(_p2##x,_p8##y,z,v)), \ 307.5399 + (I[47] = (img)(_p2##x,_p7##y,z,v)), \ 307.5400 + (I[67] = (img)(_p2##x,_p6##y,z,v)), \ 307.5401 + (I[87] = (img)(_p2##x,_p5##y,z,v)), \ 307.5402 + (I[107] = (img)(_p2##x,_p4##y,z,v)), \ 307.5403 + (I[127] = (img)(_p2##x,_p3##y,z,v)), \ 307.5404 + (I[147] = (img)(_p2##x,_p2##y,z,v)), \ 307.5405 + (I[167] = (img)(_p2##x,_p1##y,z,v)), \ 307.5406 + (I[187] = (img)(_p2##x,y,z,v)), \ 307.5407 + (I[207] = (img)(_p2##x,_n1##y,z,v)), \ 307.5408 + (I[227] = (img)(_p2##x,_n2##y,z,v)), \ 307.5409 + (I[247] = (img)(_p2##x,_n3##y,z,v)), \ 307.5410 + (I[267] = (img)(_p2##x,_n4##y,z,v)), \ 307.5411 + (I[287] = (img)(_p2##x,_n5##y,z,v)), \ 307.5412 + (I[307] = (img)(_p2##x,_n6##y,z,v)), \ 307.5413 + (I[327] = (img)(_p2##x,_n7##y,z,v)), \ 307.5414 + (I[347] = (img)(_p2##x,_n8##y,z,v)), \ 307.5415 + (I[367] = (img)(_p2##x,_n9##y,z,v)), \ 307.5416 + (I[387] = (img)(_p2##x,_n10##y,z,v)), \ 307.5417 + (I[8] = (img)(_p1##x,_p9##y,z,v)), \ 307.5418 + (I[28] = (img)(_p1##x,_p8##y,z,v)), \ 307.5419 + (I[48] = (img)(_p1##x,_p7##y,z,v)), \ 307.5420 + (I[68] = (img)(_p1##x,_p6##y,z,v)), \ 307.5421 + (I[88] = (img)(_p1##x,_p5##y,z,v)), \ 307.5422 + (I[108] = (img)(_p1##x,_p4##y,z,v)), \ 307.5423 + (I[128] = (img)(_p1##x,_p3##y,z,v)), \ 307.5424 + (I[148] = (img)(_p1##x,_p2##y,z,v)), \ 307.5425 + (I[168] = (img)(_p1##x,_p1##y,z,v)), \ 307.5426 + (I[188] = (img)(_p1##x,y,z,v)), \ 307.5427 + (I[208] = (img)(_p1##x,_n1##y,z,v)), \ 307.5428 + (I[228] = (img)(_p1##x,_n2##y,z,v)), \ 307.5429 + (I[248] = (img)(_p1##x,_n3##y,z,v)), \ 307.5430 + (I[268] = (img)(_p1##x,_n4##y,z,v)), \ 307.5431 + (I[288] = (img)(_p1##x,_n5##y,z,v)), \ 307.5432 + (I[308] = (img)(_p1##x,_n6##y,z,v)), \ 307.5433 + (I[328] = (img)(_p1##x,_n7##y,z,v)), \ 307.5434 + (I[348] = (img)(_p1##x,_n8##y,z,v)), \ 307.5435 + (I[368] = (img)(_p1##x,_n9##y,z,v)), \ 307.5436 + (I[388] = (img)(_p1##x,_n10##y,z,v)), \ 307.5437 + (I[9] = (img)(x,_p9##y,z,v)), \ 307.5438 + (I[29] = (img)(x,_p8##y,z,v)), \ 307.5439 + (I[49] = (img)(x,_p7##y,z,v)), \ 307.5440 + (I[69] = (img)(x,_p6##y,z,v)), \ 307.5441 + (I[89] = (img)(x,_p5##y,z,v)), \ 307.5442 + (I[109] = (img)(x,_p4##y,z,v)), \ 307.5443 + (I[129] = (img)(x,_p3##y,z,v)), \ 307.5444 + (I[149] = (img)(x,_p2##y,z,v)), \ 307.5445 + (I[169] = (img)(x,_p1##y,z,v)), \ 307.5446 + (I[189] = (img)(x,y,z,v)), \ 307.5447 + (I[209] = (img)(x,_n1##y,z,v)), \ 307.5448 + (I[229] = (img)(x,_n2##y,z,v)), \ 307.5449 + (I[249] = (img)(x,_n3##y,z,v)), \ 307.5450 + (I[269] = (img)(x,_n4##y,z,v)), \ 307.5451 + (I[289] = (img)(x,_n5##y,z,v)), \ 307.5452 + (I[309] = (img)(x,_n6##y,z,v)), \ 307.5453 + (I[329] = (img)(x,_n7##y,z,v)), \ 307.5454 + (I[349] = (img)(x,_n8##y,z,v)), \ 307.5455 + (I[369] = (img)(x,_n9##y,z,v)), \ 307.5456 + (I[389] = (img)(x,_n10##y,z,v)), \ 307.5457 + (I[10] = (img)(_n1##x,_p9##y,z,v)), \ 307.5458 + (I[30] = (img)(_n1##x,_p8##y,z,v)), \ 307.5459 + (I[50] = (img)(_n1##x,_p7##y,z,v)), \ 307.5460 + (I[70] = (img)(_n1##x,_p6##y,z,v)), \ 307.5461 + (I[90] = (img)(_n1##x,_p5##y,z,v)), \ 307.5462 + (I[110] = (img)(_n1##x,_p4##y,z,v)), \ 307.5463 + (I[130] = (img)(_n1##x,_p3##y,z,v)), \ 307.5464 + (I[150] = (img)(_n1##x,_p2##y,z,v)), \ 307.5465 + (I[170] = (img)(_n1##x,_p1##y,z,v)), \ 307.5466 + (I[190] = (img)(_n1##x,y,z,v)), \ 307.5467 + (I[210] = (img)(_n1##x,_n1##y,z,v)), \ 307.5468 + (I[230] = (img)(_n1##x,_n2##y,z,v)), \ 307.5469 + (I[250] = (img)(_n1##x,_n3##y,z,v)), \ 307.5470 + (I[270] = (img)(_n1##x,_n4##y,z,v)), \ 307.5471 + (I[290] = (img)(_n1##x,_n5##y,z,v)), \ 307.5472 + (I[310] = (img)(_n1##x,_n6##y,z,v)), \ 307.5473 + (I[330] = (img)(_n1##x,_n7##y,z,v)), \ 307.5474 + (I[350] = (img)(_n1##x,_n8##y,z,v)), \ 307.5475 + (I[370] = (img)(_n1##x,_n9##y,z,v)), \ 307.5476 + (I[390] = (img)(_n1##x,_n10##y,z,v)), \ 307.5477 + (I[11] = (img)(_n2##x,_p9##y,z,v)), \ 307.5478 + (I[31] = (img)(_n2##x,_p8##y,z,v)), \ 307.5479 + (I[51] = (img)(_n2##x,_p7##y,z,v)), \ 307.5480 + (I[71] = (img)(_n2##x,_p6##y,z,v)), \ 307.5481 + (I[91] = (img)(_n2##x,_p5##y,z,v)), \ 307.5482 + (I[111] = (img)(_n2##x,_p4##y,z,v)), \ 307.5483 + (I[131] = (img)(_n2##x,_p3##y,z,v)), \ 307.5484 + (I[151] = (img)(_n2##x,_p2##y,z,v)), \ 307.5485 + (I[171] = (img)(_n2##x,_p1##y,z,v)), \ 307.5486 + (I[191] = (img)(_n2##x,y,z,v)), \ 307.5487 + (I[211] = (img)(_n2##x,_n1##y,z,v)), \ 307.5488 + (I[231] = (img)(_n2##x,_n2##y,z,v)), \ 307.5489 + (I[251] = (img)(_n2##x,_n3##y,z,v)), \ 307.5490 + (I[271] = (img)(_n2##x,_n4##y,z,v)), \ 307.5491 + (I[291] = (img)(_n2##x,_n5##y,z,v)), \ 307.5492 + (I[311] = (img)(_n2##x,_n6##y,z,v)), \ 307.5493 + (I[331] = (img)(_n2##x,_n7##y,z,v)), \ 307.5494 + (I[351] = (img)(_n2##x,_n8##y,z,v)), \ 307.5495 + (I[371] = (img)(_n2##x,_n9##y,z,v)), \ 307.5496 + (I[391] = (img)(_n2##x,_n10##y,z,v)), \ 307.5497 + (I[12] = (img)(_n3##x,_p9##y,z,v)), \ 307.5498 + (I[32] = (img)(_n3##x,_p8##y,z,v)), \ 307.5499 + (I[52] = (img)(_n3##x,_p7##y,z,v)), \ 307.5500 + (I[72] = (img)(_n3##x,_p6##y,z,v)), \ 307.5501 + (I[92] = (img)(_n3##x,_p5##y,z,v)), \ 307.5502 + (I[112] = (img)(_n3##x,_p4##y,z,v)), \ 307.5503 + (I[132] = (img)(_n3##x,_p3##y,z,v)), \ 307.5504 + (I[152] = (img)(_n3##x,_p2##y,z,v)), \ 307.5505 + (I[172] = (img)(_n3##x,_p1##y,z,v)), \ 307.5506 + (I[192] = (img)(_n3##x,y,z,v)), \ 307.5507 + (I[212] = (img)(_n3##x,_n1##y,z,v)), \ 307.5508 + (I[232] = (img)(_n3##x,_n2##y,z,v)), \ 307.5509 + (I[252] = (img)(_n3##x,_n3##y,z,v)), \ 307.5510 + (I[272] = (img)(_n3##x,_n4##y,z,v)), \ 307.5511 + (I[292] = (img)(_n3##x,_n5##y,z,v)), \ 307.5512 + (I[312] = (img)(_n3##x,_n6##y,z,v)), \ 307.5513 + (I[332] = (img)(_n3##x,_n7##y,z,v)), \ 307.5514 + (I[352] = (img)(_n3##x,_n8##y,z,v)), \ 307.5515 + (I[372] = (img)(_n3##x,_n9##y,z,v)), \ 307.5516 + (I[392] = (img)(_n3##x,_n10##y,z,v)), \ 307.5517 + (I[13] = (img)(_n4##x,_p9##y,z,v)), \ 307.5518 + (I[33] = (img)(_n4##x,_p8##y,z,v)), \ 307.5519 + (I[53] = (img)(_n4##x,_p7##y,z,v)), \ 307.5520 + (I[73] = (img)(_n4##x,_p6##y,z,v)), \ 307.5521 + (I[93] = (img)(_n4##x,_p5##y,z,v)), \ 307.5522 + (I[113] = (img)(_n4##x,_p4##y,z,v)), \ 307.5523 + (I[133] = (img)(_n4##x,_p3##y,z,v)), \ 307.5524 + (I[153] = (img)(_n4##x,_p2##y,z,v)), \ 307.5525 + (I[173] = (img)(_n4##x,_p1##y,z,v)), \ 307.5526 + (I[193] = (img)(_n4##x,y,z,v)), \ 307.5527 + (I[213] = (img)(_n4##x,_n1##y,z,v)), \ 307.5528 + (I[233] = (img)(_n4##x,_n2##y,z,v)), \ 307.5529 + (I[253] = (img)(_n4##x,_n3##y,z,v)), \ 307.5530 + (I[273] = (img)(_n4##x,_n4##y,z,v)), \ 307.5531 + (I[293] = (img)(_n4##x,_n5##y,z,v)), \ 307.5532 + (I[313] = (img)(_n4##x,_n6##y,z,v)), \ 307.5533 + (I[333] = (img)(_n4##x,_n7##y,z,v)), \ 307.5534 + (I[353] = (img)(_n4##x,_n8##y,z,v)), \ 307.5535 + (I[373] = (img)(_n4##x,_n9##y,z,v)), \ 307.5536 + (I[393] = (img)(_n4##x,_n10##y,z,v)), \ 307.5537 + (I[14] = (img)(_n5##x,_p9##y,z,v)), \ 307.5538 + (I[34] = (img)(_n5##x,_p8##y,z,v)), \ 307.5539 + (I[54] = (img)(_n5##x,_p7##y,z,v)), \ 307.5540 + (I[74] = (img)(_n5##x,_p6##y,z,v)), \ 307.5541 + (I[94] = (img)(_n5##x,_p5##y,z,v)), \ 307.5542 + (I[114] = (img)(_n5##x,_p4##y,z,v)), \ 307.5543 + (I[134] = (img)(_n5##x,_p3##y,z,v)), \ 307.5544 + (I[154] = (img)(_n5##x,_p2##y,z,v)), \ 307.5545 + (I[174] = (img)(_n5##x,_p1##y,z,v)), \ 307.5546 + (I[194] = (img)(_n5##x,y,z,v)), \ 307.5547 + (I[214] = (img)(_n5##x,_n1##y,z,v)), \ 307.5548 + (I[234] = (img)(_n5##x,_n2##y,z,v)), \ 307.5549 + (I[254] = (img)(_n5##x,_n3##y,z,v)), \ 307.5550 + (I[274] = (img)(_n5##x,_n4##y,z,v)), \ 307.5551 + (I[294] = (img)(_n5##x,_n5##y,z,v)), \ 307.5552 + (I[314] = (img)(_n5##x,_n6##y,z,v)), \ 307.5553 + (I[334] = (img)(_n5##x,_n7##y,z,v)), \ 307.5554 + (I[354] = (img)(_n5##x,_n8##y,z,v)), \ 307.5555 + (I[374] = (img)(_n5##x,_n9##y,z,v)), \ 307.5556 + (I[394] = (img)(_n5##x,_n10##y,z,v)), \ 307.5557 + (I[15] = (img)(_n6##x,_p9##y,z,v)), \ 307.5558 + (I[35] = (img)(_n6##x,_p8##y,z,v)), \ 307.5559 + (I[55] = (img)(_n6##x,_p7##y,z,v)), \ 307.5560 + (I[75] = (img)(_n6##x,_p6##y,z,v)), \ 307.5561 + (I[95] = (img)(_n6##x,_p5##y,z,v)), \ 307.5562 + (I[115] = (img)(_n6##x,_p4##y,z,v)), \ 307.5563 + (I[135] = (img)(_n6##x,_p3##y,z,v)), \ 307.5564 + (I[155] = (img)(_n6##x,_p2##y,z,v)), \ 307.5565 + (I[175] = (img)(_n6##x,_p1##y,z,v)), \ 307.5566 + (I[195] = (img)(_n6##x,y,z,v)), \ 307.5567 + (I[215] = (img)(_n6##x,_n1##y,z,v)), \ 307.5568 + (I[235] = (img)(_n6##x,_n2##y,z,v)), \ 307.5569 + (I[255] = (img)(_n6##x,_n3##y,z,v)), \ 307.5570 + (I[275] = (img)(_n6##x,_n4##y,z,v)), \ 307.5571 + (I[295] = (img)(_n6##x,_n5##y,z,v)), \ 307.5572 + (I[315] = (img)(_n6##x,_n6##y,z,v)), \ 307.5573 + (I[335] = (img)(_n6##x,_n7##y,z,v)), \ 307.5574 + (I[355] = (img)(_n6##x,_n8##y,z,v)), \ 307.5575 + (I[375] = (img)(_n6##x,_n9##y,z,v)), \ 307.5576 + (I[395] = (img)(_n6##x,_n10##y,z,v)), \ 307.5577 + (I[16] = (img)(_n7##x,_p9##y,z,v)), \ 307.5578 + (I[36] = (img)(_n7##x,_p8##y,z,v)), \ 307.5579 + (I[56] = (img)(_n7##x,_p7##y,z,v)), \ 307.5580 + (I[76] = (img)(_n7##x,_p6##y,z,v)), \ 307.5581 + (I[96] = (img)(_n7##x,_p5##y,z,v)), \ 307.5582 + (I[116] = (img)(_n7##x,_p4##y,z,v)), \ 307.5583 + (I[136] = (img)(_n7##x,_p3##y,z,v)), \ 307.5584 + (I[156] = (img)(_n7##x,_p2##y,z,v)), \ 307.5585 + (I[176] = (img)(_n7##x,_p1##y,z,v)), \ 307.5586 + (I[196] = (img)(_n7##x,y,z,v)), \ 307.5587 + (I[216] = (img)(_n7##x,_n1##y,z,v)), \ 307.5588 + (I[236] = (img)(_n7##x,_n2##y,z,v)), \ 307.5589 + (I[256] = (img)(_n7##x,_n3##y,z,v)), \ 307.5590 + (I[276] = (img)(_n7##x,_n4##y,z,v)), \ 307.5591 + (I[296] = (img)(_n7##x,_n5##y,z,v)), \ 307.5592 + (I[316] = (img)(_n7##x,_n6##y,z,v)), \ 307.5593 + (I[336] = (img)(_n7##x,_n7##y,z,v)), \ 307.5594 + (I[356] = (img)(_n7##x,_n8##y,z,v)), \ 307.5595 + (I[376] = (img)(_n7##x,_n9##y,z,v)), \ 307.5596 + (I[396] = (img)(_n7##x,_n10##y,z,v)), \ 307.5597 + (I[17] = (img)(_n8##x,_p9##y,z,v)), \ 307.5598 + (I[37] = (img)(_n8##x,_p8##y,z,v)), \ 307.5599 + (I[57] = (img)(_n8##x,_p7##y,z,v)), \ 307.5600 + (I[77] = (img)(_n8##x,_p6##y,z,v)), \ 307.5601 + (I[97] = (img)(_n8##x,_p5##y,z,v)), \ 307.5602 + (I[117] = (img)(_n8##x,_p4##y,z,v)), \ 307.5603 + (I[137] = (img)(_n8##x,_p3##y,z,v)), \ 307.5604 + (I[157] = (img)(_n8##x,_p2##y,z,v)), \ 307.5605 + (I[177] = (img)(_n8##x,_p1##y,z,v)), \ 307.5606 + (I[197] = (img)(_n8##x,y,z,v)), \ 307.5607 + (I[217] = (img)(_n8##x,_n1##y,z,v)), \ 307.5608 + (I[237] = (img)(_n8##x,_n2##y,z,v)), \ 307.5609 + (I[257] = (img)(_n8##x,_n3##y,z,v)), \ 307.5610 + (I[277] = (img)(_n8##x,_n4##y,z,v)), \ 307.5611 + (I[297] = (img)(_n8##x,_n5##y,z,v)), \ 307.5612 + (I[317] = (img)(_n8##x,_n6##y,z,v)), \ 307.5613 + (I[337] = (img)(_n8##x,_n7##y,z,v)), \ 307.5614 + (I[357] = (img)(_n8##x,_n8##y,z,v)), \ 307.5615 + (I[377] = (img)(_n8##x,_n9##y,z,v)), \ 307.5616 + (I[397] = (img)(_n8##x,_n10##y,z,v)), \ 307.5617 + (I[18] = (img)(_n9##x,_p9##y,z,v)), \ 307.5618 + (I[38] = (img)(_n9##x,_p8##y,z,v)), \ 307.5619 + (I[58] = (img)(_n9##x,_p7##y,z,v)), \ 307.5620 + (I[78] = (img)(_n9##x,_p6##y,z,v)), \ 307.5621 + (I[98] = (img)(_n9##x,_p5##y,z,v)), \ 307.5622 + (I[118] = (img)(_n9##x,_p4##y,z,v)), \ 307.5623 + (I[138] = (img)(_n9##x,_p3##y,z,v)), \ 307.5624 + (I[158] = (img)(_n9##x,_p2##y,z,v)), \ 307.5625 + (I[178] = (img)(_n9##x,_p1##y,z,v)), \ 307.5626 + (I[198] = (img)(_n9##x,y,z,v)), \ 307.5627 + (I[218] = (img)(_n9##x,_n1##y,z,v)), \ 307.5628 + (I[238] = (img)(_n9##x,_n2##y,z,v)), \ 307.5629 + (I[258] = (img)(_n9##x,_n3##y,z,v)), \ 307.5630 + (I[278] = (img)(_n9##x,_n4##y,z,v)), \ 307.5631 + (I[298] = (img)(_n9##x,_n5##y,z,v)), \ 307.5632 + (I[318] = (img)(_n9##x,_n6##y,z,v)), \ 307.5633 + (I[338] = (img)(_n9##x,_n7##y,z,v)), \ 307.5634 + (I[358] = (img)(_n9##x,_n8##y,z,v)), \ 307.5635 + (I[378] = (img)(_n9##x,_n9##y,z,v)), \ 307.5636 + (I[398] = (img)(_n9##x,_n10##y,z,v)), \ 307.5637 + x+10>=(int)((img).width)?(int)((img).width)-1:x+10); \ 307.5638 + x<=(int)(x1) && ((_n10##x<(int)((img).width) && ( \ 307.5639 + (I[19] = (img)(_n10##x,_p9##y,z,v)), \ 307.5640 + (I[39] = (img)(_n10##x,_p8##y,z,v)), \ 307.5641 + (I[59] = (img)(_n10##x,_p7##y,z,v)), \ 307.5642 + (I[79] = (img)(_n10##x,_p6##y,z,v)), \ 307.5643 + (I[99] = (img)(_n10##x,_p5##y,z,v)), \ 307.5644 + (I[119] = (img)(_n10##x,_p4##y,z,v)), \ 307.5645 + (I[139] = (img)(_n10##x,_p3##y,z,v)), \ 307.5646 + (I[159] = (img)(_n10##x,_p2##y,z,v)), \ 307.5647 + (I[179] = (img)(_n10##x,_p1##y,z,v)), \ 307.5648 + (I[199] = (img)(_n10##x,y,z,v)), \ 307.5649 + (I[219] = (img)(_n10##x,_n1##y,z,v)), \ 307.5650 + (I[239] = (img)(_n10##x,_n2##y,z,v)), \ 307.5651 + (I[259] = (img)(_n10##x,_n3##y,z,v)), \ 307.5652 + (I[279] = (img)(_n10##x,_n4##y,z,v)), \ 307.5653 + (I[299] = (img)(_n10##x,_n5##y,z,v)), \ 307.5654 + (I[319] = (img)(_n10##x,_n6##y,z,v)), \ 307.5655 + (I[339] = (img)(_n10##x,_n7##y,z,v)), \ 307.5656 + (I[359] = (img)(_n10##x,_n8##y,z,v)), \ 307.5657 + (I[379] = (img)(_n10##x,_n9##y,z,v)), \ 307.5658 + (I[399] = (img)(_n10##x,_n10##y,z,v)),1)) || \ 307.5659 + _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.5660 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.5661 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.5662 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.5663 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.5664 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.5665 + I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.5666 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.5667 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.5668 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.5669 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], \ 307.5670 + I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], \ 307.5671 + I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.5672 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], \ 307.5673 + I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.5674 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], \ 307.5675 + I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], \ 307.5676 + I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], \ 307.5677 + I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.5678 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], \ 307.5679 + I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], \ 307.5680 + _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x) 307.5681 + 307.5682 +#define cimg_get20x20(img,x,y,z,v,I) \ 307.5683 + I[0] = (img)(_p9##x,_p9##y,z,v), I[1] = (img)(_p8##x,_p9##y,z,v), I[2] = (img)(_p7##x,_p9##y,z,v), I[3] = (img)(_p6##x,_p9##y,z,v), I[4] = (img)(_p5##x,_p9##y,z,v), I[5] = (img)(_p4##x,_p9##y,z,v), I[6] = (img)(_p3##x,_p9##y,z,v), I[7] = (img)(_p2##x,_p9##y,z,v), I[8] = (img)(_p1##x,_p9##y,z,v), I[9] = (img)(x,_p9##y,z,v), I[10] = (img)(_n1##x,_p9##y,z,v), I[11] = (img)(_n2##x,_p9##y,z,v), I[12] = (img)(_n3##x,_p9##y,z,v), I[13] = (img)(_n4##x,_p9##y,z,v), I[14] = (img)(_n5##x,_p9##y,z,v), I[15] = (img)(_n6##x,_p9##y,z,v), I[16] = (img)(_n7##x,_p9##y,z,v), I[17] = (img)(_n8##x,_p9##y,z,v), I[18] = (img)(_n9##x,_p9##y,z,v), I[19] = (img)(_n10##x,_p9##y,z,v), \ 307.5684 + I[20] = (img)(_p9##x,_p8##y,z,v), I[21] = (img)(_p8##x,_p8##y,z,v), I[22] = (img)(_p7##x,_p8##y,z,v), I[23] = (img)(_p6##x,_p8##y,z,v), I[24] = (img)(_p5##x,_p8##y,z,v), I[25] = (img)(_p4##x,_p8##y,z,v), I[26] = (img)(_p3##x,_p8##y,z,v), I[27] = (img)(_p2##x,_p8##y,z,v), I[28] = (img)(_p1##x,_p8##y,z,v), I[29] = (img)(x,_p8##y,z,v), I[30] = (img)(_n1##x,_p8##y,z,v), I[31] = (img)(_n2##x,_p8##y,z,v), I[32] = (img)(_n3##x,_p8##y,z,v), I[33] = (img)(_n4##x,_p8##y,z,v), I[34] = (img)(_n5##x,_p8##y,z,v), I[35] = (img)(_n6##x,_p8##y,z,v), I[36] = (img)(_n7##x,_p8##y,z,v), I[37] = (img)(_n8##x,_p8##y,z,v), I[38] = (img)(_n9##x,_p8##y,z,v), I[39] = (img)(_n10##x,_p8##y,z,v), \ 307.5685 + I[40] = (img)(_p9##x,_p7##y,z,v), I[41] = (img)(_p8##x,_p7##y,z,v), I[42] = (img)(_p7##x,_p7##y,z,v), I[43] = (img)(_p6##x,_p7##y,z,v), I[44] = (img)(_p5##x,_p7##y,z,v), I[45] = (img)(_p4##x,_p7##y,z,v), I[46] = (img)(_p3##x,_p7##y,z,v), I[47] = (img)(_p2##x,_p7##y,z,v), I[48] = (img)(_p1##x,_p7##y,z,v), I[49] = (img)(x,_p7##y,z,v), I[50] = (img)(_n1##x,_p7##y,z,v), I[51] = (img)(_n2##x,_p7##y,z,v), I[52] = (img)(_n3##x,_p7##y,z,v), I[53] = (img)(_n4##x,_p7##y,z,v), I[54] = (img)(_n5##x,_p7##y,z,v), I[55] = (img)(_n6##x,_p7##y,z,v), I[56] = (img)(_n7##x,_p7##y,z,v), I[57] = (img)(_n8##x,_p7##y,z,v), I[58] = (img)(_n9##x,_p7##y,z,v), I[59] = (img)(_n10##x,_p7##y,z,v), \ 307.5686 + I[60] = (img)(_p9##x,_p6##y,z,v), I[61] = (img)(_p8##x,_p6##y,z,v), I[62] = (img)(_p7##x,_p6##y,z,v), I[63] = (img)(_p6##x,_p6##y,z,v), I[64] = (img)(_p5##x,_p6##y,z,v), I[65] = (img)(_p4##x,_p6##y,z,v), I[66] = (img)(_p3##x,_p6##y,z,v), I[67] = (img)(_p2##x,_p6##y,z,v), I[68] = (img)(_p1##x,_p6##y,z,v), I[69] = (img)(x,_p6##y,z,v), I[70] = (img)(_n1##x,_p6##y,z,v), I[71] = (img)(_n2##x,_p6##y,z,v), I[72] = (img)(_n3##x,_p6##y,z,v), I[73] = (img)(_n4##x,_p6##y,z,v), I[74] = (img)(_n5##x,_p6##y,z,v), I[75] = (img)(_n6##x,_p6##y,z,v), I[76] = (img)(_n7##x,_p6##y,z,v), I[77] = (img)(_n8##x,_p6##y,z,v), I[78] = (img)(_n9##x,_p6##y,z,v), I[79] = (img)(_n10##x,_p6##y,z,v), \ 307.5687 + I[80] = (img)(_p9##x,_p5##y,z,v), I[81] = (img)(_p8##x,_p5##y,z,v), I[82] = (img)(_p7##x,_p5##y,z,v), I[83] = (img)(_p6##x,_p5##y,z,v), I[84] = (img)(_p5##x,_p5##y,z,v), I[85] = (img)(_p4##x,_p5##y,z,v), I[86] = (img)(_p3##x,_p5##y,z,v), I[87] = (img)(_p2##x,_p5##y,z,v), I[88] = (img)(_p1##x,_p5##y,z,v), I[89] = (img)(x,_p5##y,z,v), I[90] = (img)(_n1##x,_p5##y,z,v), I[91] = (img)(_n2##x,_p5##y,z,v), I[92] = (img)(_n3##x,_p5##y,z,v), I[93] = (img)(_n4##x,_p5##y,z,v), I[94] = (img)(_n5##x,_p5##y,z,v), I[95] = (img)(_n6##x,_p5##y,z,v), I[96] = (img)(_n7##x,_p5##y,z,v), I[97] = (img)(_n8##x,_p5##y,z,v), I[98] = (img)(_n9##x,_p5##y,z,v), I[99] = (img)(_n10##x,_p5##y,z,v), \ 307.5688 + I[100] = (img)(_p9##x,_p4##y,z,v), I[101] = (img)(_p8##x,_p4##y,z,v), I[102] = (img)(_p7##x,_p4##y,z,v), I[103] = (img)(_p6##x,_p4##y,z,v), I[104] = (img)(_p5##x,_p4##y,z,v), I[105] = (img)(_p4##x,_p4##y,z,v), I[106] = (img)(_p3##x,_p4##y,z,v), I[107] = (img)(_p2##x,_p4##y,z,v), I[108] = (img)(_p1##x,_p4##y,z,v), I[109] = (img)(x,_p4##y,z,v), I[110] = (img)(_n1##x,_p4##y,z,v), I[111] = (img)(_n2##x,_p4##y,z,v), I[112] = (img)(_n3##x,_p4##y,z,v), I[113] = (img)(_n4##x,_p4##y,z,v), I[114] = (img)(_n5##x,_p4##y,z,v), I[115] = (img)(_n6##x,_p4##y,z,v), I[116] = (img)(_n7##x,_p4##y,z,v), I[117] = (img)(_n8##x,_p4##y,z,v), I[118] = (img)(_n9##x,_p4##y,z,v), I[119] = (img)(_n10##x,_p4##y,z,v), \ 307.5689 + I[120] = (img)(_p9##x,_p3##y,z,v), I[121] = (img)(_p8##x,_p3##y,z,v), I[122] = (img)(_p7##x,_p3##y,z,v), I[123] = (img)(_p6##x,_p3##y,z,v), I[124] = (img)(_p5##x,_p3##y,z,v), I[125] = (img)(_p4##x,_p3##y,z,v), I[126] = (img)(_p3##x,_p3##y,z,v), I[127] = (img)(_p2##x,_p3##y,z,v), I[128] = (img)(_p1##x,_p3##y,z,v), I[129] = (img)(x,_p3##y,z,v), I[130] = (img)(_n1##x,_p3##y,z,v), I[131] = (img)(_n2##x,_p3##y,z,v), I[132] = (img)(_n3##x,_p3##y,z,v), I[133] = (img)(_n4##x,_p3##y,z,v), I[134] = (img)(_n5##x,_p3##y,z,v), I[135] = (img)(_n6##x,_p3##y,z,v), I[136] = (img)(_n7##x,_p3##y,z,v), I[137] = (img)(_n8##x,_p3##y,z,v), I[138] = (img)(_n9##x,_p3##y,z,v), I[139] = (img)(_n10##x,_p3##y,z,v), \ 307.5690 + I[140] = (img)(_p9##x,_p2##y,z,v), I[141] = (img)(_p8##x,_p2##y,z,v), I[142] = (img)(_p7##x,_p2##y,z,v), I[143] = (img)(_p6##x,_p2##y,z,v), I[144] = (img)(_p5##x,_p2##y,z,v), I[145] = (img)(_p4##x,_p2##y,z,v), I[146] = (img)(_p3##x,_p2##y,z,v), I[147] = (img)(_p2##x,_p2##y,z,v), I[148] = (img)(_p1##x,_p2##y,z,v), I[149] = (img)(x,_p2##y,z,v), I[150] = (img)(_n1##x,_p2##y,z,v), I[151] = (img)(_n2##x,_p2##y,z,v), I[152] = (img)(_n3##x,_p2##y,z,v), I[153] = (img)(_n4##x,_p2##y,z,v), I[154] = (img)(_n5##x,_p2##y,z,v), I[155] = (img)(_n6##x,_p2##y,z,v), I[156] = (img)(_n7##x,_p2##y,z,v), I[157] = (img)(_n8##x,_p2##y,z,v), I[158] = (img)(_n9##x,_p2##y,z,v), I[159] = (img)(_n10##x,_p2##y,z,v), \ 307.5691 + I[160] = (img)(_p9##x,_p1##y,z,v), I[161] = (img)(_p8##x,_p1##y,z,v), I[162] = (img)(_p7##x,_p1##y,z,v), I[163] = (img)(_p6##x,_p1##y,z,v), I[164] = (img)(_p5##x,_p1##y,z,v), I[165] = (img)(_p4##x,_p1##y,z,v), I[166] = (img)(_p3##x,_p1##y,z,v), I[167] = (img)(_p2##x,_p1##y,z,v), I[168] = (img)(_p1##x,_p1##y,z,v), I[169] = (img)(x,_p1##y,z,v), I[170] = (img)(_n1##x,_p1##y,z,v), I[171] = (img)(_n2##x,_p1##y,z,v), I[172] = (img)(_n3##x,_p1##y,z,v), I[173] = (img)(_n4##x,_p1##y,z,v), I[174] = (img)(_n5##x,_p1##y,z,v), I[175] = (img)(_n6##x,_p1##y,z,v), I[176] = (img)(_n7##x,_p1##y,z,v), I[177] = (img)(_n8##x,_p1##y,z,v), I[178] = (img)(_n9##x,_p1##y,z,v), I[179] = (img)(_n10##x,_p1##y,z,v), \ 307.5692 + I[180] = (img)(_p9##x,y,z,v), I[181] = (img)(_p8##x,y,z,v), I[182] = (img)(_p7##x,y,z,v), I[183] = (img)(_p6##x,y,z,v), I[184] = (img)(_p5##x,y,z,v), I[185] = (img)(_p4##x,y,z,v), I[186] = (img)(_p3##x,y,z,v), I[187] = (img)(_p2##x,y,z,v), I[188] = (img)(_p1##x,y,z,v), I[189] = (img)(x,y,z,v), I[190] = (img)(_n1##x,y,z,v), I[191] = (img)(_n2##x,y,z,v), I[192] = (img)(_n3##x,y,z,v), I[193] = (img)(_n4##x,y,z,v), I[194] = (img)(_n5##x,y,z,v), I[195] = (img)(_n6##x,y,z,v), I[196] = (img)(_n7##x,y,z,v), I[197] = (img)(_n8##x,y,z,v), I[198] = (img)(_n9##x,y,z,v), I[199] = (img)(_n10##x,y,z,v), \ 307.5693 + I[200] = (img)(_p9##x,_n1##y,z,v), I[201] = (img)(_p8##x,_n1##y,z,v), I[202] = (img)(_p7##x,_n1##y,z,v), I[203] = (img)(_p6##x,_n1##y,z,v), I[204] = (img)(_p5##x,_n1##y,z,v), I[205] = (img)(_p4##x,_n1##y,z,v), I[206] = (img)(_p3##x,_n1##y,z,v), I[207] = (img)(_p2##x,_n1##y,z,v), I[208] = (img)(_p1##x,_n1##y,z,v), I[209] = (img)(x,_n1##y,z,v), I[210] = (img)(_n1##x,_n1##y,z,v), I[211] = (img)(_n2##x,_n1##y,z,v), I[212] = (img)(_n3##x,_n1##y,z,v), I[213] = (img)(_n4##x,_n1##y,z,v), I[214] = (img)(_n5##x,_n1##y,z,v), I[215] = (img)(_n6##x,_n1##y,z,v), I[216] = (img)(_n7##x,_n1##y,z,v), I[217] = (img)(_n8##x,_n1##y,z,v), I[218] = (img)(_n9##x,_n1##y,z,v), I[219] = (img)(_n10##x,_n1##y,z,v), \ 307.5694 + I[220] = (img)(_p9##x,_n2##y,z,v), I[221] = (img)(_p8##x,_n2##y,z,v), I[222] = (img)(_p7##x,_n2##y,z,v), I[223] = (img)(_p6##x,_n2##y,z,v), I[224] = (img)(_p5##x,_n2##y,z,v), I[225] = (img)(_p4##x,_n2##y,z,v), I[226] = (img)(_p3##x,_n2##y,z,v), I[227] = (img)(_p2##x,_n2##y,z,v), I[228] = (img)(_p1##x,_n2##y,z,v), I[229] = (img)(x,_n2##y,z,v), I[230] = (img)(_n1##x,_n2##y,z,v), I[231] = (img)(_n2##x,_n2##y,z,v), I[232] = (img)(_n3##x,_n2##y,z,v), I[233] = (img)(_n4##x,_n2##y,z,v), I[234] = (img)(_n5##x,_n2##y,z,v), I[235] = (img)(_n6##x,_n2##y,z,v), I[236] = (img)(_n7##x,_n2##y,z,v), I[237] = (img)(_n8##x,_n2##y,z,v), I[238] = (img)(_n9##x,_n2##y,z,v), I[239] = (img)(_n10##x,_n2##y,z,v), \ 307.5695 + I[240] = (img)(_p9##x,_n3##y,z,v), I[241] = (img)(_p8##x,_n3##y,z,v), I[242] = (img)(_p7##x,_n3##y,z,v), I[243] = (img)(_p6##x,_n3##y,z,v), I[244] = (img)(_p5##x,_n3##y,z,v), I[245] = (img)(_p4##x,_n3##y,z,v), I[246] = (img)(_p3##x,_n3##y,z,v), I[247] = (img)(_p2##x,_n3##y,z,v), I[248] = (img)(_p1##x,_n3##y,z,v), I[249] = (img)(x,_n3##y,z,v), I[250] = (img)(_n1##x,_n3##y,z,v), I[251] = (img)(_n2##x,_n3##y,z,v), I[252] = (img)(_n3##x,_n3##y,z,v), I[253] = (img)(_n4##x,_n3##y,z,v), I[254] = (img)(_n5##x,_n3##y,z,v), I[255] = (img)(_n6##x,_n3##y,z,v), I[256] = (img)(_n7##x,_n3##y,z,v), I[257] = (img)(_n8##x,_n3##y,z,v), I[258] = (img)(_n9##x,_n3##y,z,v), I[259] = (img)(_n10##x,_n3##y,z,v), \ 307.5696 + I[260] = (img)(_p9##x,_n4##y,z,v), I[261] = (img)(_p8##x,_n4##y,z,v), I[262] = (img)(_p7##x,_n4##y,z,v), I[263] = (img)(_p6##x,_n4##y,z,v), I[264] = (img)(_p5##x,_n4##y,z,v), I[265] = (img)(_p4##x,_n4##y,z,v), I[266] = (img)(_p3##x,_n4##y,z,v), I[267] = (img)(_p2##x,_n4##y,z,v), I[268] = (img)(_p1##x,_n4##y,z,v), I[269] = (img)(x,_n4##y,z,v), I[270] = (img)(_n1##x,_n4##y,z,v), I[271] = (img)(_n2##x,_n4##y,z,v), I[272] = (img)(_n3##x,_n4##y,z,v), I[273] = (img)(_n4##x,_n4##y,z,v), I[274] = (img)(_n5##x,_n4##y,z,v), I[275] = (img)(_n6##x,_n4##y,z,v), I[276] = (img)(_n7##x,_n4##y,z,v), I[277] = (img)(_n8##x,_n4##y,z,v), I[278] = (img)(_n9##x,_n4##y,z,v), I[279] = (img)(_n10##x,_n4##y,z,v), \ 307.5697 + I[280] = (img)(_p9##x,_n5##y,z,v), I[281] = (img)(_p8##x,_n5##y,z,v), I[282] = (img)(_p7##x,_n5##y,z,v), I[283] = (img)(_p6##x,_n5##y,z,v), I[284] = (img)(_p5##x,_n5##y,z,v), I[285] = (img)(_p4##x,_n5##y,z,v), I[286] = (img)(_p3##x,_n5##y,z,v), I[287] = (img)(_p2##x,_n5##y,z,v), I[288] = (img)(_p1##x,_n5##y,z,v), I[289] = (img)(x,_n5##y,z,v), I[290] = (img)(_n1##x,_n5##y,z,v), I[291] = (img)(_n2##x,_n5##y,z,v), I[292] = (img)(_n3##x,_n5##y,z,v), I[293] = (img)(_n4##x,_n5##y,z,v), I[294] = (img)(_n5##x,_n5##y,z,v), I[295] = (img)(_n6##x,_n5##y,z,v), I[296] = (img)(_n7##x,_n5##y,z,v), I[297] = (img)(_n8##x,_n5##y,z,v), I[298] = (img)(_n9##x,_n5##y,z,v), I[299] = (img)(_n10##x,_n5##y,z,v), \ 307.5698 + I[300] = (img)(_p9##x,_n6##y,z,v), I[301] = (img)(_p8##x,_n6##y,z,v), I[302] = (img)(_p7##x,_n6##y,z,v), I[303] = (img)(_p6##x,_n6##y,z,v), I[304] = (img)(_p5##x,_n6##y,z,v), I[305] = (img)(_p4##x,_n6##y,z,v), I[306] = (img)(_p3##x,_n6##y,z,v), I[307] = (img)(_p2##x,_n6##y,z,v), I[308] = (img)(_p1##x,_n6##y,z,v), I[309] = (img)(x,_n6##y,z,v), I[310] = (img)(_n1##x,_n6##y,z,v), I[311] = (img)(_n2##x,_n6##y,z,v), I[312] = (img)(_n3##x,_n6##y,z,v), I[313] = (img)(_n4##x,_n6##y,z,v), I[314] = (img)(_n5##x,_n6##y,z,v), I[315] = (img)(_n6##x,_n6##y,z,v), I[316] = (img)(_n7##x,_n6##y,z,v), I[317] = (img)(_n8##x,_n6##y,z,v), I[318] = (img)(_n9##x,_n6##y,z,v), I[319] = (img)(_n10##x,_n6##y,z,v), \ 307.5699 + I[320] = (img)(_p9##x,_n7##y,z,v), I[321] = (img)(_p8##x,_n7##y,z,v), I[322] = (img)(_p7##x,_n7##y,z,v), I[323] = (img)(_p6##x,_n7##y,z,v), I[324] = (img)(_p5##x,_n7##y,z,v), I[325] = (img)(_p4##x,_n7##y,z,v), I[326] = (img)(_p3##x,_n7##y,z,v), I[327] = (img)(_p2##x,_n7##y,z,v), I[328] = (img)(_p1##x,_n7##y,z,v), I[329] = (img)(x,_n7##y,z,v), I[330] = (img)(_n1##x,_n7##y,z,v), I[331] = (img)(_n2##x,_n7##y,z,v), I[332] = (img)(_n3##x,_n7##y,z,v), I[333] = (img)(_n4##x,_n7##y,z,v), I[334] = (img)(_n5##x,_n7##y,z,v), I[335] = (img)(_n6##x,_n7##y,z,v), I[336] = (img)(_n7##x,_n7##y,z,v), I[337] = (img)(_n8##x,_n7##y,z,v), I[338] = (img)(_n9##x,_n7##y,z,v), I[339] = (img)(_n10##x,_n7##y,z,v), \ 307.5700 + I[340] = (img)(_p9##x,_n8##y,z,v), I[341] = (img)(_p8##x,_n8##y,z,v), I[342] = (img)(_p7##x,_n8##y,z,v), I[343] = (img)(_p6##x,_n8##y,z,v), I[344] = (img)(_p5##x,_n8##y,z,v), I[345] = (img)(_p4##x,_n8##y,z,v), I[346] = (img)(_p3##x,_n8##y,z,v), I[347] = (img)(_p2##x,_n8##y,z,v), I[348] = (img)(_p1##x,_n8##y,z,v), I[349] = (img)(x,_n8##y,z,v), I[350] = (img)(_n1##x,_n8##y,z,v), I[351] = (img)(_n2##x,_n8##y,z,v), I[352] = (img)(_n3##x,_n8##y,z,v), I[353] = (img)(_n4##x,_n8##y,z,v), I[354] = (img)(_n5##x,_n8##y,z,v), I[355] = (img)(_n6##x,_n8##y,z,v), I[356] = (img)(_n7##x,_n8##y,z,v), I[357] = (img)(_n8##x,_n8##y,z,v), I[358] = (img)(_n9##x,_n8##y,z,v), I[359] = (img)(_n10##x,_n8##y,z,v), \ 307.5701 + I[360] = (img)(_p9##x,_n9##y,z,v), I[361] = (img)(_p8##x,_n9##y,z,v), I[362] = (img)(_p7##x,_n9##y,z,v), I[363] = (img)(_p6##x,_n9##y,z,v), I[364] = (img)(_p5##x,_n9##y,z,v), I[365] = (img)(_p4##x,_n9##y,z,v), I[366] = (img)(_p3##x,_n9##y,z,v), I[367] = (img)(_p2##x,_n9##y,z,v), I[368] = (img)(_p1##x,_n9##y,z,v), I[369] = (img)(x,_n9##y,z,v), I[370] = (img)(_n1##x,_n9##y,z,v), I[371] = (img)(_n2##x,_n9##y,z,v), I[372] = (img)(_n3##x,_n9##y,z,v), I[373] = (img)(_n4##x,_n9##y,z,v), I[374] = (img)(_n5##x,_n9##y,z,v), I[375] = (img)(_n6##x,_n9##y,z,v), I[376] = (img)(_n7##x,_n9##y,z,v), I[377] = (img)(_n8##x,_n9##y,z,v), I[378] = (img)(_n9##x,_n9##y,z,v), I[379] = (img)(_n10##x,_n9##y,z,v), \ 307.5702 + I[380] = (img)(_p9##x,_n10##y,z,v), I[381] = (img)(_p8##x,_n10##y,z,v), I[382] = (img)(_p7##x,_n10##y,z,v), I[383] = (img)(_p6##x,_n10##y,z,v), I[384] = (img)(_p5##x,_n10##y,z,v), I[385] = (img)(_p4##x,_n10##y,z,v), I[386] = (img)(_p3##x,_n10##y,z,v), I[387] = (img)(_p2##x,_n10##y,z,v), I[388] = (img)(_p1##x,_n10##y,z,v), I[389] = (img)(x,_n10##y,z,v), I[390] = (img)(_n1##x,_n10##y,z,v), I[391] = (img)(_n2##x,_n10##y,z,v), I[392] = (img)(_n3##x,_n10##y,z,v), I[393] = (img)(_n4##x,_n10##y,z,v), I[394] = (img)(_n5##x,_n10##y,z,v), I[395] = (img)(_n6##x,_n10##y,z,v), I[396] = (img)(_n7##x,_n10##y,z,v), I[397] = (img)(_n8##x,_n10##y,z,v), I[398] = (img)(_n9##x,_n10##y,z,v), I[399] = (img)(_n10##x,_n10##y,z,v); 307.5703 + 307.5704 +// Define 21x21 loop macros for CImg 307.5705 +//---------------------------------- 307.5706 +#define cimg_for21(bound,i) for (int i = 0, \ 307.5707 + _p10##i = 0, _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.5708 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.5709 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.5710 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.5711 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.5712 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.5713 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.5714 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.5715 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.5716 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9, \ 307.5717 + _n10##i = 10>=(int)(bound)?(int)(bound)-1:10; \ 307.5718 + _n10##i<(int)(bound) || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.5719 + i==(_n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.5720 + _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.5721 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i) 307.5722 + 307.5723 +#define cimg_for21X(img,x) cimg_for21((img).width,x) 307.5724 +#define cimg_for21Y(img,y) cimg_for21((img).height,y) 307.5725 +#define cimg_for21Z(img,z) cimg_for21((img).depth,z) 307.5726 +#define cimg_for21V(img,v) cimg_for21((img).dim,v) 307.5727 +#define cimg_for21XY(img,x,y) cimg_for21Y(img,y) cimg_for21X(img,x) 307.5728 +#define cimg_for21XZ(img,x,z) cimg_for21Z(img,z) cimg_for21X(img,x) 307.5729 +#define cimg_for21XV(img,x,v) cimg_for21V(img,v) cimg_for21X(img,x) 307.5730 +#define cimg_for21YZ(img,y,z) cimg_for21Z(img,z) cimg_for21Y(img,y) 307.5731 +#define cimg_for21YV(img,y,v) cimg_for21V(img,v) cimg_for21Y(img,y) 307.5732 +#define cimg_for21ZV(img,z,v) cimg_for21V(img,v) cimg_for21Z(img,z) 307.5733 +#define cimg_for21XYZ(img,x,y,z) cimg_for21Z(img,z) cimg_for21XY(img,x,y) 307.5734 +#define cimg_for21XZV(img,x,z,v) cimg_for21V(img,v) cimg_for21XZ(img,x,z) 307.5735 +#define cimg_for21YZV(img,y,z,v) cimg_for21V(img,v) cimg_for21YZ(img,y,z) 307.5736 +#define cimg_for21XYZV(img,x,y,z,v) cimg_for21V(img,v) cimg_for21XYZ(img,x,y,z) 307.5737 + 307.5738 +#define cimg_for_in21(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.5739 + _p10##i = i-10<0?0:i-10, \ 307.5740 + _p9##i = i-9<0?0:i-9, \ 307.5741 + _p8##i = i-8<0?0:i-8, \ 307.5742 + _p7##i = i-7<0?0:i-7, \ 307.5743 + _p6##i = i-6<0?0:i-6, \ 307.5744 + _p5##i = i-5<0?0:i-5, \ 307.5745 + _p4##i = i-4<0?0:i-4, \ 307.5746 + _p3##i = i-3<0?0:i-3, \ 307.5747 + _p2##i = i-2<0?0:i-2, \ 307.5748 + _p1##i = i-1<0?0:i-1, \ 307.5749 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.5750 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.5751 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.5752 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.5753 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.5754 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.5755 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.5756 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.5757 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9, \ 307.5758 + _n10##i = i+10>=(int)(bound)?(int)(bound)-1:i+10; \ 307.5759 + i<=(int)(i1) && (_n10##i<(int)(bound) || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.5760 + i==(_n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.5761 + _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.5762 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i) 307.5763 + 307.5764 +#define cimg_for_in21X(img,x0,x1,x) cimg_for_in21((img).width,x0,x1,x) 307.5765 +#define cimg_for_in21Y(img,y0,y1,y) cimg_for_in21((img).height,y0,y1,y) 307.5766 +#define cimg_for_in21Z(img,z0,z1,z) cimg_for_in21((img).depth,z0,z1,z) 307.5767 +#define cimg_for_in21V(img,v0,v1,v) cimg_for_in21((img).dim,v0,v1,v) 307.5768 +#define cimg_for_in21XY(img,x0,y0,x1,y1,x,y) cimg_for_in21Y(img,y0,y1,y) cimg_for_in21X(img,x0,x1,x) 307.5769 +#define cimg_for_in21XZ(img,x0,z0,x1,z1,x,z) cimg_for_in21Z(img,z0,z1,z) cimg_for_in21X(img,x0,x1,x) 307.5770 +#define cimg_for_in21XV(img,x0,v0,x1,v1,x,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21X(img,x0,x1,x) 307.5771 +#define cimg_for_in21YZ(img,y0,z0,y1,z1,y,z) cimg_for_in21Z(img,z0,z1,z) cimg_for_in21Y(img,y0,y1,y) 307.5772 +#define cimg_for_in21YV(img,y0,v0,y1,v1,y,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21Y(img,y0,y1,y) 307.5773 +#define cimg_for_in21ZV(img,z0,v0,z1,v1,z,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21Z(img,z0,z1,z) 307.5774 +#define cimg_for_in21XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in21Z(img,z0,z1,z) cimg_for_in21XY(img,x0,y0,x1,y1,x,y) 307.5775 +#define cimg_for_in21XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21XZ(img,x0,y0,x1,y1,x,z) 307.5776 +#define cimg_for_in21YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21YZ(img,y0,z0,y1,z1,y,z) 307.5777 +#define cimg_for_in21XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in21V(img,v0,v1,v) cimg_for_in21XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.5778 + 307.5779 +#define cimg_for21x21(img,x,y,z,v,I) \ 307.5780 + cimg_for21((img).height,y) for (int x = 0, \ 307.5781 + _p10##x = 0, _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.5782 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.5783 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.5784 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.5785 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.5786 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.5787 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.5788 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.5789 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.5790 + _n9##x = 9>=((img).width)?(int)((img).width)-1:9, \ 307.5791 + _n10##x = (int)( \ 307.5792 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = I[10] = (img)(0,_p10##y,z,v)), \ 307.5793 + (I[21] = I[22] = I[23] = I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = I[30] = I[31] = (img)(0,_p9##y,z,v)), \ 307.5794 + (I[42] = I[43] = I[44] = I[45] = I[46] = I[47] = I[48] = I[49] = I[50] = I[51] = I[52] = (img)(0,_p8##y,z,v)), \ 307.5795 + (I[63] = I[64] = I[65] = I[66] = I[67] = I[68] = I[69] = I[70] = I[71] = I[72] = I[73] = (img)(0,_p7##y,z,v)), \ 307.5796 + (I[84] = I[85] = I[86] = I[87] = I[88] = I[89] = I[90] = I[91] = I[92] = I[93] = I[94] = (img)(0,_p6##y,z,v)), \ 307.5797 + (I[105] = I[106] = I[107] = I[108] = I[109] = I[110] = I[111] = I[112] = I[113] = I[114] = I[115] = (img)(0,_p5##y,z,v)), \ 307.5798 + (I[126] = I[127] = I[128] = I[129] = I[130] = I[131] = I[132] = I[133] = I[134] = I[135] = I[136] = (img)(0,_p4##y,z,v)), \ 307.5799 + (I[147] = I[148] = I[149] = I[150] = I[151] = I[152] = I[153] = I[154] = I[155] = I[156] = I[157] = (img)(0,_p3##y,z,v)), \ 307.5800 + (I[168] = I[169] = I[170] = I[171] = I[172] = I[173] = I[174] = I[175] = I[176] = I[177] = I[178] = (img)(0,_p2##y,z,v)), \ 307.5801 + (I[189] = I[190] = I[191] = I[192] = I[193] = I[194] = I[195] = I[196] = I[197] = I[198] = I[199] = (img)(0,_p1##y,z,v)), \ 307.5802 + (I[210] = I[211] = I[212] = I[213] = I[214] = I[215] = I[216] = I[217] = I[218] = I[219] = I[220] = (img)(0,y,z,v)), \ 307.5803 + (I[231] = I[232] = I[233] = I[234] = I[235] = I[236] = I[237] = I[238] = I[239] = I[240] = I[241] = (img)(0,_n1##y,z,v)), \ 307.5804 + (I[252] = I[253] = I[254] = I[255] = I[256] = I[257] = I[258] = I[259] = I[260] = I[261] = I[262] = (img)(0,_n2##y,z,v)), \ 307.5805 + (I[273] = I[274] = I[275] = I[276] = I[277] = I[278] = I[279] = I[280] = I[281] = I[282] = I[283] = (img)(0,_n3##y,z,v)), \ 307.5806 + (I[294] = I[295] = I[296] = I[297] = I[298] = I[299] = I[300] = I[301] = I[302] = I[303] = I[304] = (img)(0,_n4##y,z,v)), \ 307.5807 + (I[315] = I[316] = I[317] = I[318] = I[319] = I[320] = I[321] = I[322] = I[323] = I[324] = I[325] = (img)(0,_n5##y,z,v)), \ 307.5808 + (I[336] = I[337] = I[338] = I[339] = I[340] = I[341] = I[342] = I[343] = I[344] = I[345] = I[346] = (img)(0,_n6##y,z,v)), \ 307.5809 + (I[357] = I[358] = I[359] = I[360] = I[361] = I[362] = I[363] = I[364] = I[365] = I[366] = I[367] = (img)(0,_n7##y,z,v)), \ 307.5810 + (I[378] = I[379] = I[380] = I[381] = I[382] = I[383] = I[384] = I[385] = I[386] = I[387] = I[388] = (img)(0,_n8##y,z,v)), \ 307.5811 + (I[399] = I[400] = I[401] = I[402] = I[403] = I[404] = I[405] = I[406] = I[407] = I[408] = I[409] = (img)(0,_n9##y,z,v)), \ 307.5812 + (I[420] = I[421] = I[422] = I[423] = I[424] = I[425] = I[426] = I[427] = I[428] = I[429] = I[430] = (img)(0,_n10##y,z,v)), \ 307.5813 + (I[11] = (img)(_n1##x,_p10##y,z,v)), \ 307.5814 + (I[32] = (img)(_n1##x,_p9##y,z,v)), \ 307.5815 + (I[53] = (img)(_n1##x,_p8##y,z,v)), \ 307.5816 + (I[74] = (img)(_n1##x,_p7##y,z,v)), \ 307.5817 + (I[95] = (img)(_n1##x,_p6##y,z,v)), \ 307.5818 + (I[116] = (img)(_n1##x,_p5##y,z,v)), \ 307.5819 + (I[137] = (img)(_n1##x,_p4##y,z,v)), \ 307.5820 + (I[158] = (img)(_n1##x,_p3##y,z,v)), \ 307.5821 + (I[179] = (img)(_n1##x,_p2##y,z,v)), \ 307.5822 + (I[200] = (img)(_n1##x,_p1##y,z,v)), \ 307.5823 + (I[221] = (img)(_n1##x,y,z,v)), \ 307.5824 + (I[242] = (img)(_n1##x,_n1##y,z,v)), \ 307.5825 + (I[263] = (img)(_n1##x,_n2##y,z,v)), \ 307.5826 + (I[284] = (img)(_n1##x,_n3##y,z,v)), \ 307.5827 + (I[305] = (img)(_n1##x,_n4##y,z,v)), \ 307.5828 + (I[326] = (img)(_n1##x,_n5##y,z,v)), \ 307.5829 + (I[347] = (img)(_n1##x,_n6##y,z,v)), \ 307.5830 + (I[368] = (img)(_n1##x,_n7##y,z,v)), \ 307.5831 + (I[389] = (img)(_n1##x,_n8##y,z,v)), \ 307.5832 + (I[410] = (img)(_n1##x,_n9##y,z,v)), \ 307.5833 + (I[431] = (img)(_n1##x,_n10##y,z,v)), \ 307.5834 + (I[12] = (img)(_n2##x,_p10##y,z,v)), \ 307.5835 + (I[33] = (img)(_n2##x,_p9##y,z,v)), \ 307.5836 + (I[54] = (img)(_n2##x,_p8##y,z,v)), \ 307.5837 + (I[75] = (img)(_n2##x,_p7##y,z,v)), \ 307.5838 + (I[96] = (img)(_n2##x,_p6##y,z,v)), \ 307.5839 + (I[117] = (img)(_n2##x,_p5##y,z,v)), \ 307.5840 + (I[138] = (img)(_n2##x,_p4##y,z,v)), \ 307.5841 + (I[159] = (img)(_n2##x,_p3##y,z,v)), \ 307.5842 + (I[180] = (img)(_n2##x,_p2##y,z,v)), \ 307.5843 + (I[201] = (img)(_n2##x,_p1##y,z,v)), \ 307.5844 + (I[222] = (img)(_n2##x,y,z,v)), \ 307.5845 + (I[243] = (img)(_n2##x,_n1##y,z,v)), \ 307.5846 + (I[264] = (img)(_n2##x,_n2##y,z,v)), \ 307.5847 + (I[285] = (img)(_n2##x,_n3##y,z,v)), \ 307.5848 + (I[306] = (img)(_n2##x,_n4##y,z,v)), \ 307.5849 + (I[327] = (img)(_n2##x,_n5##y,z,v)), \ 307.5850 + (I[348] = (img)(_n2##x,_n6##y,z,v)), \ 307.5851 + (I[369] = (img)(_n2##x,_n7##y,z,v)), \ 307.5852 + (I[390] = (img)(_n2##x,_n8##y,z,v)), \ 307.5853 + (I[411] = (img)(_n2##x,_n9##y,z,v)), \ 307.5854 + (I[432] = (img)(_n2##x,_n10##y,z,v)), \ 307.5855 + (I[13] = (img)(_n3##x,_p10##y,z,v)), \ 307.5856 + (I[34] = (img)(_n3##x,_p9##y,z,v)), \ 307.5857 + (I[55] = (img)(_n3##x,_p8##y,z,v)), \ 307.5858 + (I[76] = (img)(_n3##x,_p7##y,z,v)), \ 307.5859 + (I[97] = (img)(_n3##x,_p6##y,z,v)), \ 307.5860 + (I[118] = (img)(_n3##x,_p5##y,z,v)), \ 307.5861 + (I[139] = (img)(_n3##x,_p4##y,z,v)), \ 307.5862 + (I[160] = (img)(_n3##x,_p3##y,z,v)), \ 307.5863 + (I[181] = (img)(_n3##x,_p2##y,z,v)), \ 307.5864 + (I[202] = (img)(_n3##x,_p1##y,z,v)), \ 307.5865 + (I[223] = (img)(_n3##x,y,z,v)), \ 307.5866 + (I[244] = (img)(_n3##x,_n1##y,z,v)), \ 307.5867 + (I[265] = (img)(_n3##x,_n2##y,z,v)), \ 307.5868 + (I[286] = (img)(_n3##x,_n3##y,z,v)), \ 307.5869 + (I[307] = (img)(_n3##x,_n4##y,z,v)), \ 307.5870 + (I[328] = (img)(_n3##x,_n5##y,z,v)), \ 307.5871 + (I[349] = (img)(_n3##x,_n6##y,z,v)), \ 307.5872 + (I[370] = (img)(_n3##x,_n7##y,z,v)), \ 307.5873 + (I[391] = (img)(_n3##x,_n8##y,z,v)), \ 307.5874 + (I[412] = (img)(_n3##x,_n9##y,z,v)), \ 307.5875 + (I[433] = (img)(_n3##x,_n10##y,z,v)), \ 307.5876 + (I[14] = (img)(_n4##x,_p10##y,z,v)), \ 307.5877 + (I[35] = (img)(_n4##x,_p9##y,z,v)), \ 307.5878 + (I[56] = (img)(_n4##x,_p8##y,z,v)), \ 307.5879 + (I[77] = (img)(_n4##x,_p7##y,z,v)), \ 307.5880 + (I[98] = (img)(_n4##x,_p6##y,z,v)), \ 307.5881 + (I[119] = (img)(_n4##x,_p5##y,z,v)), \ 307.5882 + (I[140] = (img)(_n4##x,_p4##y,z,v)), \ 307.5883 + (I[161] = (img)(_n4##x,_p3##y,z,v)), \ 307.5884 + (I[182] = (img)(_n4##x,_p2##y,z,v)), \ 307.5885 + (I[203] = (img)(_n4##x,_p1##y,z,v)), \ 307.5886 + (I[224] = (img)(_n4##x,y,z,v)), \ 307.5887 + (I[245] = (img)(_n4##x,_n1##y,z,v)), \ 307.5888 + (I[266] = (img)(_n4##x,_n2##y,z,v)), \ 307.5889 + (I[287] = (img)(_n4##x,_n3##y,z,v)), \ 307.5890 + (I[308] = (img)(_n4##x,_n4##y,z,v)), \ 307.5891 + (I[329] = (img)(_n4##x,_n5##y,z,v)), \ 307.5892 + (I[350] = (img)(_n4##x,_n6##y,z,v)), \ 307.5893 + (I[371] = (img)(_n4##x,_n7##y,z,v)), \ 307.5894 + (I[392] = (img)(_n4##x,_n8##y,z,v)), \ 307.5895 + (I[413] = (img)(_n4##x,_n9##y,z,v)), \ 307.5896 + (I[434] = (img)(_n4##x,_n10##y,z,v)), \ 307.5897 + (I[15] = (img)(_n5##x,_p10##y,z,v)), \ 307.5898 + (I[36] = (img)(_n5##x,_p9##y,z,v)), \ 307.5899 + (I[57] = (img)(_n5##x,_p8##y,z,v)), \ 307.5900 + (I[78] = (img)(_n5##x,_p7##y,z,v)), \ 307.5901 + (I[99] = (img)(_n5##x,_p6##y,z,v)), \ 307.5902 + (I[120] = (img)(_n5##x,_p5##y,z,v)), \ 307.5903 + (I[141] = (img)(_n5##x,_p4##y,z,v)), \ 307.5904 + (I[162] = (img)(_n5##x,_p3##y,z,v)), \ 307.5905 + (I[183] = (img)(_n5##x,_p2##y,z,v)), \ 307.5906 + (I[204] = (img)(_n5##x,_p1##y,z,v)), \ 307.5907 + (I[225] = (img)(_n5##x,y,z,v)), \ 307.5908 + (I[246] = (img)(_n5##x,_n1##y,z,v)), \ 307.5909 + (I[267] = (img)(_n5##x,_n2##y,z,v)), \ 307.5910 + (I[288] = (img)(_n5##x,_n3##y,z,v)), \ 307.5911 + (I[309] = (img)(_n5##x,_n4##y,z,v)), \ 307.5912 + (I[330] = (img)(_n5##x,_n5##y,z,v)), \ 307.5913 + (I[351] = (img)(_n5##x,_n6##y,z,v)), \ 307.5914 + (I[372] = (img)(_n5##x,_n7##y,z,v)), \ 307.5915 + (I[393] = (img)(_n5##x,_n8##y,z,v)), \ 307.5916 + (I[414] = (img)(_n5##x,_n9##y,z,v)), \ 307.5917 + (I[435] = (img)(_n5##x,_n10##y,z,v)), \ 307.5918 + (I[16] = (img)(_n6##x,_p10##y,z,v)), \ 307.5919 + (I[37] = (img)(_n6##x,_p9##y,z,v)), \ 307.5920 + (I[58] = (img)(_n6##x,_p8##y,z,v)), \ 307.5921 + (I[79] = (img)(_n6##x,_p7##y,z,v)), \ 307.5922 + (I[100] = (img)(_n6##x,_p6##y,z,v)), \ 307.5923 + (I[121] = (img)(_n6##x,_p5##y,z,v)), \ 307.5924 + (I[142] = (img)(_n6##x,_p4##y,z,v)), \ 307.5925 + (I[163] = (img)(_n6##x,_p3##y,z,v)), \ 307.5926 + (I[184] = (img)(_n6##x,_p2##y,z,v)), \ 307.5927 + (I[205] = (img)(_n6##x,_p1##y,z,v)), \ 307.5928 + (I[226] = (img)(_n6##x,y,z,v)), \ 307.5929 + (I[247] = (img)(_n6##x,_n1##y,z,v)), \ 307.5930 + (I[268] = (img)(_n6##x,_n2##y,z,v)), \ 307.5931 + (I[289] = (img)(_n6##x,_n3##y,z,v)), \ 307.5932 + (I[310] = (img)(_n6##x,_n4##y,z,v)), \ 307.5933 + (I[331] = (img)(_n6##x,_n5##y,z,v)), \ 307.5934 + (I[352] = (img)(_n6##x,_n6##y,z,v)), \ 307.5935 + (I[373] = (img)(_n6##x,_n7##y,z,v)), \ 307.5936 + (I[394] = (img)(_n6##x,_n8##y,z,v)), \ 307.5937 + (I[415] = (img)(_n6##x,_n9##y,z,v)), \ 307.5938 + (I[436] = (img)(_n6##x,_n10##y,z,v)), \ 307.5939 + (I[17] = (img)(_n7##x,_p10##y,z,v)), \ 307.5940 + (I[38] = (img)(_n7##x,_p9##y,z,v)), \ 307.5941 + (I[59] = (img)(_n7##x,_p8##y,z,v)), \ 307.5942 + (I[80] = (img)(_n7##x,_p7##y,z,v)), \ 307.5943 + (I[101] = (img)(_n7##x,_p6##y,z,v)), \ 307.5944 + (I[122] = (img)(_n7##x,_p5##y,z,v)), \ 307.5945 + (I[143] = (img)(_n7##x,_p4##y,z,v)), \ 307.5946 + (I[164] = (img)(_n7##x,_p3##y,z,v)), \ 307.5947 + (I[185] = (img)(_n7##x,_p2##y,z,v)), \ 307.5948 + (I[206] = (img)(_n7##x,_p1##y,z,v)), \ 307.5949 + (I[227] = (img)(_n7##x,y,z,v)), \ 307.5950 + (I[248] = (img)(_n7##x,_n1##y,z,v)), \ 307.5951 + (I[269] = (img)(_n7##x,_n2##y,z,v)), \ 307.5952 + (I[290] = (img)(_n7##x,_n3##y,z,v)), \ 307.5953 + (I[311] = (img)(_n7##x,_n4##y,z,v)), \ 307.5954 + (I[332] = (img)(_n7##x,_n5##y,z,v)), \ 307.5955 + (I[353] = (img)(_n7##x,_n6##y,z,v)), \ 307.5956 + (I[374] = (img)(_n7##x,_n7##y,z,v)), \ 307.5957 + (I[395] = (img)(_n7##x,_n8##y,z,v)), \ 307.5958 + (I[416] = (img)(_n7##x,_n9##y,z,v)), \ 307.5959 + (I[437] = (img)(_n7##x,_n10##y,z,v)), \ 307.5960 + (I[18] = (img)(_n8##x,_p10##y,z,v)), \ 307.5961 + (I[39] = (img)(_n8##x,_p9##y,z,v)), \ 307.5962 + (I[60] = (img)(_n8##x,_p8##y,z,v)), \ 307.5963 + (I[81] = (img)(_n8##x,_p7##y,z,v)), \ 307.5964 + (I[102] = (img)(_n8##x,_p6##y,z,v)), \ 307.5965 + (I[123] = (img)(_n8##x,_p5##y,z,v)), \ 307.5966 + (I[144] = (img)(_n8##x,_p4##y,z,v)), \ 307.5967 + (I[165] = (img)(_n8##x,_p3##y,z,v)), \ 307.5968 + (I[186] = (img)(_n8##x,_p2##y,z,v)), \ 307.5969 + (I[207] = (img)(_n8##x,_p1##y,z,v)), \ 307.5970 + (I[228] = (img)(_n8##x,y,z,v)), \ 307.5971 + (I[249] = (img)(_n8##x,_n1##y,z,v)), \ 307.5972 + (I[270] = (img)(_n8##x,_n2##y,z,v)), \ 307.5973 + (I[291] = (img)(_n8##x,_n3##y,z,v)), \ 307.5974 + (I[312] = (img)(_n8##x,_n4##y,z,v)), \ 307.5975 + (I[333] = (img)(_n8##x,_n5##y,z,v)), \ 307.5976 + (I[354] = (img)(_n8##x,_n6##y,z,v)), \ 307.5977 + (I[375] = (img)(_n8##x,_n7##y,z,v)), \ 307.5978 + (I[396] = (img)(_n8##x,_n8##y,z,v)), \ 307.5979 + (I[417] = (img)(_n8##x,_n9##y,z,v)), \ 307.5980 + (I[438] = (img)(_n8##x,_n10##y,z,v)), \ 307.5981 + (I[19] = (img)(_n9##x,_p10##y,z,v)), \ 307.5982 + (I[40] = (img)(_n9##x,_p9##y,z,v)), \ 307.5983 + (I[61] = (img)(_n9##x,_p8##y,z,v)), \ 307.5984 + (I[82] = (img)(_n9##x,_p7##y,z,v)), \ 307.5985 + (I[103] = (img)(_n9##x,_p6##y,z,v)), \ 307.5986 + (I[124] = (img)(_n9##x,_p5##y,z,v)), \ 307.5987 + (I[145] = (img)(_n9##x,_p4##y,z,v)), \ 307.5988 + (I[166] = (img)(_n9##x,_p3##y,z,v)), \ 307.5989 + (I[187] = (img)(_n9##x,_p2##y,z,v)), \ 307.5990 + (I[208] = (img)(_n9##x,_p1##y,z,v)), \ 307.5991 + (I[229] = (img)(_n9##x,y,z,v)), \ 307.5992 + (I[250] = (img)(_n9##x,_n1##y,z,v)), \ 307.5993 + (I[271] = (img)(_n9##x,_n2##y,z,v)), \ 307.5994 + (I[292] = (img)(_n9##x,_n3##y,z,v)), \ 307.5995 + (I[313] = (img)(_n9##x,_n4##y,z,v)), \ 307.5996 + (I[334] = (img)(_n9##x,_n5##y,z,v)), \ 307.5997 + (I[355] = (img)(_n9##x,_n6##y,z,v)), \ 307.5998 + (I[376] = (img)(_n9##x,_n7##y,z,v)), \ 307.5999 + (I[397] = (img)(_n9##x,_n8##y,z,v)), \ 307.6000 + (I[418] = (img)(_n9##x,_n9##y,z,v)), \ 307.6001 + (I[439] = (img)(_n9##x,_n10##y,z,v)), \ 307.6002 + 10>=((img).width)?(int)((img).width)-1:10); \ 307.6003 + (_n10##x<(int)((img).width) && ( \ 307.6004 + (I[20] = (img)(_n10##x,_p10##y,z,v)), \ 307.6005 + (I[41] = (img)(_n10##x,_p9##y,z,v)), \ 307.6006 + (I[62] = (img)(_n10##x,_p8##y,z,v)), \ 307.6007 + (I[83] = (img)(_n10##x,_p7##y,z,v)), \ 307.6008 + (I[104] = (img)(_n10##x,_p6##y,z,v)), \ 307.6009 + (I[125] = (img)(_n10##x,_p5##y,z,v)), \ 307.6010 + (I[146] = (img)(_n10##x,_p4##y,z,v)), \ 307.6011 + (I[167] = (img)(_n10##x,_p3##y,z,v)), \ 307.6012 + (I[188] = (img)(_n10##x,_p2##y,z,v)), \ 307.6013 + (I[209] = (img)(_n10##x,_p1##y,z,v)), \ 307.6014 + (I[230] = (img)(_n10##x,y,z,v)), \ 307.6015 + (I[251] = (img)(_n10##x,_n1##y,z,v)), \ 307.6016 + (I[272] = (img)(_n10##x,_n2##y,z,v)), \ 307.6017 + (I[293] = (img)(_n10##x,_n3##y,z,v)), \ 307.6018 + (I[314] = (img)(_n10##x,_n4##y,z,v)), \ 307.6019 + (I[335] = (img)(_n10##x,_n5##y,z,v)), \ 307.6020 + (I[356] = (img)(_n10##x,_n6##y,z,v)), \ 307.6021 + (I[377] = (img)(_n10##x,_n7##y,z,v)), \ 307.6022 + (I[398] = (img)(_n10##x,_n8##y,z,v)), \ 307.6023 + (I[419] = (img)(_n10##x,_n9##y,z,v)), \ 307.6024 + (I[440] = (img)(_n10##x,_n10##y,z,v)),1)) || \ 307.6025 + _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.6026 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 307.6027 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.6028 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 307.6029 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.6030 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.6031 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.6032 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], \ 307.6033 + I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.6034 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], \ 307.6035 + I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.6036 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], \ 307.6037 + I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.6038 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], \ 307.6039 + I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], \ 307.6040 + I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], \ 307.6041 + I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.6042 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], \ 307.6043 + I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], \ 307.6044 + I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], \ 307.6045 + I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], \ 307.6046 + I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], I[439] = I[440], \ 307.6047 + _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x) 307.6048 + 307.6049 +#define cimg_for_in21x21(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.6050 + cimg_for_in21((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.6051 + _p10##x = x-10<0?0:x-10, \ 307.6052 + _p9##x = x-9<0?0:x-9, \ 307.6053 + _p8##x = x-8<0?0:x-8, \ 307.6054 + _p7##x = x-7<0?0:x-7, \ 307.6055 + _p6##x = x-6<0?0:x-6, \ 307.6056 + _p5##x = x-5<0?0:x-5, \ 307.6057 + _p4##x = x-4<0?0:x-4, \ 307.6058 + _p3##x = x-3<0?0:x-3, \ 307.6059 + _p2##x = x-2<0?0:x-2, \ 307.6060 + _p1##x = x-1<0?0:x-1, \ 307.6061 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.6062 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.6063 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.6064 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.6065 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.6066 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.6067 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.6068 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.6069 + _n9##x = x+9>=(int)((img).width)?(int)((img).width)-1:x+9, \ 307.6070 + _n10##x = (int)( \ 307.6071 + (I[0] = (img)(_p10##x,_p10##y,z,v)), \ 307.6072 + (I[21] = (img)(_p10##x,_p9##y,z,v)), \ 307.6073 + (I[42] = (img)(_p10##x,_p8##y,z,v)), \ 307.6074 + (I[63] = (img)(_p10##x,_p7##y,z,v)), \ 307.6075 + (I[84] = (img)(_p10##x,_p6##y,z,v)), \ 307.6076 + (I[105] = (img)(_p10##x,_p5##y,z,v)), \ 307.6077 + (I[126] = (img)(_p10##x,_p4##y,z,v)), \ 307.6078 + (I[147] = (img)(_p10##x,_p3##y,z,v)), \ 307.6079 + (I[168] = (img)(_p10##x,_p2##y,z,v)), \ 307.6080 + (I[189] = (img)(_p10##x,_p1##y,z,v)), \ 307.6081 + (I[210] = (img)(_p10##x,y,z,v)), \ 307.6082 + (I[231] = (img)(_p10##x,_n1##y,z,v)), \ 307.6083 + (I[252] = (img)(_p10##x,_n2##y,z,v)), \ 307.6084 + (I[273] = (img)(_p10##x,_n3##y,z,v)), \ 307.6085 + (I[294] = (img)(_p10##x,_n4##y,z,v)), \ 307.6086 + (I[315] = (img)(_p10##x,_n5##y,z,v)), \ 307.6087 + (I[336] = (img)(_p10##x,_n6##y,z,v)), \ 307.6088 + (I[357] = (img)(_p10##x,_n7##y,z,v)), \ 307.6089 + (I[378] = (img)(_p10##x,_n8##y,z,v)), \ 307.6090 + (I[399] = (img)(_p10##x,_n9##y,z,v)), \ 307.6091 + (I[420] = (img)(_p10##x,_n10##y,z,v)), \ 307.6092 + (I[1] = (img)(_p9##x,_p10##y,z,v)), \ 307.6093 + (I[22] = (img)(_p9##x,_p9##y,z,v)), \ 307.6094 + (I[43] = (img)(_p9##x,_p8##y,z,v)), \ 307.6095 + (I[64] = (img)(_p9##x,_p7##y,z,v)), \ 307.6096 + (I[85] = (img)(_p9##x,_p6##y,z,v)), \ 307.6097 + (I[106] = (img)(_p9##x,_p5##y,z,v)), \ 307.6098 + (I[127] = (img)(_p9##x,_p4##y,z,v)), \ 307.6099 + (I[148] = (img)(_p9##x,_p3##y,z,v)), \ 307.6100 + (I[169] = (img)(_p9##x,_p2##y,z,v)), \ 307.6101 + (I[190] = (img)(_p9##x,_p1##y,z,v)), \ 307.6102 + (I[211] = (img)(_p9##x,y,z,v)), \ 307.6103 + (I[232] = (img)(_p9##x,_n1##y,z,v)), \ 307.6104 + (I[253] = (img)(_p9##x,_n2##y,z,v)), \ 307.6105 + (I[274] = (img)(_p9##x,_n3##y,z,v)), \ 307.6106 + (I[295] = (img)(_p9##x,_n4##y,z,v)), \ 307.6107 + (I[316] = (img)(_p9##x,_n5##y,z,v)), \ 307.6108 + (I[337] = (img)(_p9##x,_n6##y,z,v)), \ 307.6109 + (I[358] = (img)(_p9##x,_n7##y,z,v)), \ 307.6110 + (I[379] = (img)(_p9##x,_n8##y,z,v)), \ 307.6111 + (I[400] = (img)(_p9##x,_n9##y,z,v)), \ 307.6112 + (I[421] = (img)(_p9##x,_n10##y,z,v)), \ 307.6113 + (I[2] = (img)(_p8##x,_p10##y,z,v)), \ 307.6114 + (I[23] = (img)(_p8##x,_p9##y,z,v)), \ 307.6115 + (I[44] = (img)(_p8##x,_p8##y,z,v)), \ 307.6116 + (I[65] = (img)(_p8##x,_p7##y,z,v)), \ 307.6117 + (I[86] = (img)(_p8##x,_p6##y,z,v)), \ 307.6118 + (I[107] = (img)(_p8##x,_p5##y,z,v)), \ 307.6119 + (I[128] = (img)(_p8##x,_p4##y,z,v)), \ 307.6120 + (I[149] = (img)(_p8##x,_p3##y,z,v)), \ 307.6121 + (I[170] = (img)(_p8##x,_p2##y,z,v)), \ 307.6122 + (I[191] = (img)(_p8##x,_p1##y,z,v)), \ 307.6123 + (I[212] = (img)(_p8##x,y,z,v)), \ 307.6124 + (I[233] = (img)(_p8##x,_n1##y,z,v)), \ 307.6125 + (I[254] = (img)(_p8##x,_n2##y,z,v)), \ 307.6126 + (I[275] = (img)(_p8##x,_n3##y,z,v)), \ 307.6127 + (I[296] = (img)(_p8##x,_n4##y,z,v)), \ 307.6128 + (I[317] = (img)(_p8##x,_n5##y,z,v)), \ 307.6129 + (I[338] = (img)(_p8##x,_n6##y,z,v)), \ 307.6130 + (I[359] = (img)(_p8##x,_n7##y,z,v)), \ 307.6131 + (I[380] = (img)(_p8##x,_n8##y,z,v)), \ 307.6132 + (I[401] = (img)(_p8##x,_n9##y,z,v)), \ 307.6133 + (I[422] = (img)(_p8##x,_n10##y,z,v)), \ 307.6134 + (I[3] = (img)(_p7##x,_p10##y,z,v)), \ 307.6135 + (I[24] = (img)(_p7##x,_p9##y,z,v)), \ 307.6136 + (I[45] = (img)(_p7##x,_p8##y,z,v)), \ 307.6137 + (I[66] = (img)(_p7##x,_p7##y,z,v)), \ 307.6138 + (I[87] = (img)(_p7##x,_p6##y,z,v)), \ 307.6139 + (I[108] = (img)(_p7##x,_p5##y,z,v)), \ 307.6140 + (I[129] = (img)(_p7##x,_p4##y,z,v)), \ 307.6141 + (I[150] = (img)(_p7##x,_p3##y,z,v)), \ 307.6142 + (I[171] = (img)(_p7##x,_p2##y,z,v)), \ 307.6143 + (I[192] = (img)(_p7##x,_p1##y,z,v)), \ 307.6144 + (I[213] = (img)(_p7##x,y,z,v)), \ 307.6145 + (I[234] = (img)(_p7##x,_n1##y,z,v)), \ 307.6146 + (I[255] = (img)(_p7##x,_n2##y,z,v)), \ 307.6147 + (I[276] = (img)(_p7##x,_n3##y,z,v)), \ 307.6148 + (I[297] = (img)(_p7##x,_n4##y,z,v)), \ 307.6149 + (I[318] = (img)(_p7##x,_n5##y,z,v)), \ 307.6150 + (I[339] = (img)(_p7##x,_n6##y,z,v)), \ 307.6151 + (I[360] = (img)(_p7##x,_n7##y,z,v)), \ 307.6152 + (I[381] = (img)(_p7##x,_n8##y,z,v)), \ 307.6153 + (I[402] = (img)(_p7##x,_n9##y,z,v)), \ 307.6154 + (I[423] = (img)(_p7##x,_n10##y,z,v)), \ 307.6155 + (I[4] = (img)(_p6##x,_p10##y,z,v)), \ 307.6156 + (I[25] = (img)(_p6##x,_p9##y,z,v)), \ 307.6157 + (I[46] = (img)(_p6##x,_p8##y,z,v)), \ 307.6158 + (I[67] = (img)(_p6##x,_p7##y,z,v)), \ 307.6159 + (I[88] = (img)(_p6##x,_p6##y,z,v)), \ 307.6160 + (I[109] = (img)(_p6##x,_p5##y,z,v)), \ 307.6161 + (I[130] = (img)(_p6##x,_p4##y,z,v)), \ 307.6162 + (I[151] = (img)(_p6##x,_p3##y,z,v)), \ 307.6163 + (I[172] = (img)(_p6##x,_p2##y,z,v)), \ 307.6164 + (I[193] = (img)(_p6##x,_p1##y,z,v)), \ 307.6165 + (I[214] = (img)(_p6##x,y,z,v)), \ 307.6166 + (I[235] = (img)(_p6##x,_n1##y,z,v)), \ 307.6167 + (I[256] = (img)(_p6##x,_n2##y,z,v)), \ 307.6168 + (I[277] = (img)(_p6##x,_n3##y,z,v)), \ 307.6169 + (I[298] = (img)(_p6##x,_n4##y,z,v)), \ 307.6170 + (I[319] = (img)(_p6##x,_n5##y,z,v)), \ 307.6171 + (I[340] = (img)(_p6##x,_n6##y,z,v)), \ 307.6172 + (I[361] = (img)(_p6##x,_n7##y,z,v)), \ 307.6173 + (I[382] = (img)(_p6##x,_n8##y,z,v)), \ 307.6174 + (I[403] = (img)(_p6##x,_n9##y,z,v)), \ 307.6175 + (I[424] = (img)(_p6##x,_n10##y,z,v)), \ 307.6176 + (I[5] = (img)(_p5##x,_p10##y,z,v)), \ 307.6177 + (I[26] = (img)(_p5##x,_p9##y,z,v)), \ 307.6178 + (I[47] = (img)(_p5##x,_p8##y,z,v)), \ 307.6179 + (I[68] = (img)(_p5##x,_p7##y,z,v)), \ 307.6180 + (I[89] = (img)(_p5##x,_p6##y,z,v)), \ 307.6181 + (I[110] = (img)(_p5##x,_p5##y,z,v)), \ 307.6182 + (I[131] = (img)(_p5##x,_p4##y,z,v)), \ 307.6183 + (I[152] = (img)(_p5##x,_p3##y,z,v)), \ 307.6184 + (I[173] = (img)(_p5##x,_p2##y,z,v)), \ 307.6185 + (I[194] = (img)(_p5##x,_p1##y,z,v)), \ 307.6186 + (I[215] = (img)(_p5##x,y,z,v)), \ 307.6187 + (I[236] = (img)(_p5##x,_n1##y,z,v)), \ 307.6188 + (I[257] = (img)(_p5##x,_n2##y,z,v)), \ 307.6189 + (I[278] = (img)(_p5##x,_n3##y,z,v)), \ 307.6190 + (I[299] = (img)(_p5##x,_n4##y,z,v)), \ 307.6191 + (I[320] = (img)(_p5##x,_n5##y,z,v)), \ 307.6192 + (I[341] = (img)(_p5##x,_n6##y,z,v)), \ 307.6193 + (I[362] = (img)(_p5##x,_n7##y,z,v)), \ 307.6194 + (I[383] = (img)(_p5##x,_n8##y,z,v)), \ 307.6195 + (I[404] = (img)(_p5##x,_n9##y,z,v)), \ 307.6196 + (I[425] = (img)(_p5##x,_n10##y,z,v)), \ 307.6197 + (I[6] = (img)(_p4##x,_p10##y,z,v)), \ 307.6198 + (I[27] = (img)(_p4##x,_p9##y,z,v)), \ 307.6199 + (I[48] = (img)(_p4##x,_p8##y,z,v)), \ 307.6200 + (I[69] = (img)(_p4##x,_p7##y,z,v)), \ 307.6201 + (I[90] = (img)(_p4##x,_p6##y,z,v)), \ 307.6202 + (I[111] = (img)(_p4##x,_p5##y,z,v)), \ 307.6203 + (I[132] = (img)(_p4##x,_p4##y,z,v)), \ 307.6204 + (I[153] = (img)(_p4##x,_p3##y,z,v)), \ 307.6205 + (I[174] = (img)(_p4##x,_p2##y,z,v)), \ 307.6206 + (I[195] = (img)(_p4##x,_p1##y,z,v)), \ 307.6207 + (I[216] = (img)(_p4##x,y,z,v)), \ 307.6208 + (I[237] = (img)(_p4##x,_n1##y,z,v)), \ 307.6209 + (I[258] = (img)(_p4##x,_n2##y,z,v)), \ 307.6210 + (I[279] = (img)(_p4##x,_n3##y,z,v)), \ 307.6211 + (I[300] = (img)(_p4##x,_n4##y,z,v)), \ 307.6212 + (I[321] = (img)(_p4##x,_n5##y,z,v)), \ 307.6213 + (I[342] = (img)(_p4##x,_n6##y,z,v)), \ 307.6214 + (I[363] = (img)(_p4##x,_n7##y,z,v)), \ 307.6215 + (I[384] = (img)(_p4##x,_n8##y,z,v)), \ 307.6216 + (I[405] = (img)(_p4##x,_n9##y,z,v)), \ 307.6217 + (I[426] = (img)(_p4##x,_n10##y,z,v)), \ 307.6218 + (I[7] = (img)(_p3##x,_p10##y,z,v)), \ 307.6219 + (I[28] = (img)(_p3##x,_p9##y,z,v)), \ 307.6220 + (I[49] = (img)(_p3##x,_p8##y,z,v)), \ 307.6221 + (I[70] = (img)(_p3##x,_p7##y,z,v)), \ 307.6222 + (I[91] = (img)(_p3##x,_p6##y,z,v)), \ 307.6223 + (I[112] = (img)(_p3##x,_p5##y,z,v)), \ 307.6224 + (I[133] = (img)(_p3##x,_p4##y,z,v)), \ 307.6225 + (I[154] = (img)(_p3##x,_p3##y,z,v)), \ 307.6226 + (I[175] = (img)(_p3##x,_p2##y,z,v)), \ 307.6227 + (I[196] = (img)(_p3##x,_p1##y,z,v)), \ 307.6228 + (I[217] = (img)(_p3##x,y,z,v)), \ 307.6229 + (I[238] = (img)(_p3##x,_n1##y,z,v)), \ 307.6230 + (I[259] = (img)(_p3##x,_n2##y,z,v)), \ 307.6231 + (I[280] = (img)(_p3##x,_n3##y,z,v)), \ 307.6232 + (I[301] = (img)(_p3##x,_n4##y,z,v)), \ 307.6233 + (I[322] = (img)(_p3##x,_n5##y,z,v)), \ 307.6234 + (I[343] = (img)(_p3##x,_n6##y,z,v)), \ 307.6235 + (I[364] = (img)(_p3##x,_n7##y,z,v)), \ 307.6236 + (I[385] = (img)(_p3##x,_n8##y,z,v)), \ 307.6237 + (I[406] = (img)(_p3##x,_n9##y,z,v)), \ 307.6238 + (I[427] = (img)(_p3##x,_n10##y,z,v)), \ 307.6239 + (I[8] = (img)(_p2##x,_p10##y,z,v)), \ 307.6240 + (I[29] = (img)(_p2##x,_p9##y,z,v)), \ 307.6241 + (I[50] = (img)(_p2##x,_p8##y,z,v)), \ 307.6242 + (I[71] = (img)(_p2##x,_p7##y,z,v)), \ 307.6243 + (I[92] = (img)(_p2##x,_p6##y,z,v)), \ 307.6244 + (I[113] = (img)(_p2##x,_p5##y,z,v)), \ 307.6245 + (I[134] = (img)(_p2##x,_p4##y,z,v)), \ 307.6246 + (I[155] = (img)(_p2##x,_p3##y,z,v)), \ 307.6247 + (I[176] = (img)(_p2##x,_p2##y,z,v)), \ 307.6248 + (I[197] = (img)(_p2##x,_p1##y,z,v)), \ 307.6249 + (I[218] = (img)(_p2##x,y,z,v)), \ 307.6250 + (I[239] = (img)(_p2##x,_n1##y,z,v)), \ 307.6251 + (I[260] = (img)(_p2##x,_n2##y,z,v)), \ 307.6252 + (I[281] = (img)(_p2##x,_n3##y,z,v)), \ 307.6253 + (I[302] = (img)(_p2##x,_n4##y,z,v)), \ 307.6254 + (I[323] = (img)(_p2##x,_n5##y,z,v)), \ 307.6255 + (I[344] = (img)(_p2##x,_n6##y,z,v)), \ 307.6256 + (I[365] = (img)(_p2##x,_n7##y,z,v)), \ 307.6257 + (I[386] = (img)(_p2##x,_n8##y,z,v)), \ 307.6258 + (I[407] = (img)(_p2##x,_n9##y,z,v)), \ 307.6259 + (I[428] = (img)(_p2##x,_n10##y,z,v)), \ 307.6260 + (I[9] = (img)(_p1##x,_p10##y,z,v)), \ 307.6261 + (I[30] = (img)(_p1##x,_p9##y,z,v)), \ 307.6262 + (I[51] = (img)(_p1##x,_p8##y,z,v)), \ 307.6263 + (I[72] = (img)(_p1##x,_p7##y,z,v)), \ 307.6264 + (I[93] = (img)(_p1##x,_p6##y,z,v)), \ 307.6265 + (I[114] = (img)(_p1##x,_p5##y,z,v)), \ 307.6266 + (I[135] = (img)(_p1##x,_p4##y,z,v)), \ 307.6267 + (I[156] = (img)(_p1##x,_p3##y,z,v)), \ 307.6268 + (I[177] = (img)(_p1##x,_p2##y,z,v)), \ 307.6269 + (I[198] = (img)(_p1##x,_p1##y,z,v)), \ 307.6270 + (I[219] = (img)(_p1##x,y,z,v)), \ 307.6271 + (I[240] = (img)(_p1##x,_n1##y,z,v)), \ 307.6272 + (I[261] = (img)(_p1##x,_n2##y,z,v)), \ 307.6273 + (I[282] = (img)(_p1##x,_n3##y,z,v)), \ 307.6274 + (I[303] = (img)(_p1##x,_n4##y,z,v)), \ 307.6275 + (I[324] = (img)(_p1##x,_n5##y,z,v)), \ 307.6276 + (I[345] = (img)(_p1##x,_n6##y,z,v)), \ 307.6277 + (I[366] = (img)(_p1##x,_n7##y,z,v)), \ 307.6278 + (I[387] = (img)(_p1##x,_n8##y,z,v)), \ 307.6279 + (I[408] = (img)(_p1##x,_n9##y,z,v)), \ 307.6280 + (I[429] = (img)(_p1##x,_n10##y,z,v)), \ 307.6281 + (I[10] = (img)(x,_p10##y,z,v)), \ 307.6282 + (I[31] = (img)(x,_p9##y,z,v)), \ 307.6283 + (I[52] = (img)(x,_p8##y,z,v)), \ 307.6284 + (I[73] = (img)(x,_p7##y,z,v)), \ 307.6285 + (I[94] = (img)(x,_p6##y,z,v)), \ 307.6286 + (I[115] = (img)(x,_p5##y,z,v)), \ 307.6287 + (I[136] = (img)(x,_p4##y,z,v)), \ 307.6288 + (I[157] = (img)(x,_p3##y,z,v)), \ 307.6289 + (I[178] = (img)(x,_p2##y,z,v)), \ 307.6290 + (I[199] = (img)(x,_p1##y,z,v)), \ 307.6291 + (I[220] = (img)(x,y,z,v)), \ 307.6292 + (I[241] = (img)(x,_n1##y,z,v)), \ 307.6293 + (I[262] = (img)(x,_n2##y,z,v)), \ 307.6294 + (I[283] = (img)(x,_n3##y,z,v)), \ 307.6295 + (I[304] = (img)(x,_n4##y,z,v)), \ 307.6296 + (I[325] = (img)(x,_n5##y,z,v)), \ 307.6297 + (I[346] = (img)(x,_n6##y,z,v)), \ 307.6298 + (I[367] = (img)(x,_n7##y,z,v)), \ 307.6299 + (I[388] = (img)(x,_n8##y,z,v)), \ 307.6300 + (I[409] = (img)(x,_n9##y,z,v)), \ 307.6301 + (I[430] = (img)(x,_n10##y,z,v)), \ 307.6302 + (I[11] = (img)(_n1##x,_p10##y,z,v)), \ 307.6303 + (I[32] = (img)(_n1##x,_p9##y,z,v)), \ 307.6304 + (I[53] = (img)(_n1##x,_p8##y,z,v)), \ 307.6305 + (I[74] = (img)(_n1##x,_p7##y,z,v)), \ 307.6306 + (I[95] = (img)(_n1##x,_p6##y,z,v)), \ 307.6307 + (I[116] = (img)(_n1##x,_p5##y,z,v)), \ 307.6308 + (I[137] = (img)(_n1##x,_p4##y,z,v)), \ 307.6309 + (I[158] = (img)(_n1##x,_p3##y,z,v)), \ 307.6310 + (I[179] = (img)(_n1##x,_p2##y,z,v)), \ 307.6311 + (I[200] = (img)(_n1##x,_p1##y,z,v)), \ 307.6312 + (I[221] = (img)(_n1##x,y,z,v)), \ 307.6313 + (I[242] = (img)(_n1##x,_n1##y,z,v)), \ 307.6314 + (I[263] = (img)(_n1##x,_n2##y,z,v)), \ 307.6315 + (I[284] = (img)(_n1##x,_n3##y,z,v)), \ 307.6316 + (I[305] = (img)(_n1##x,_n4##y,z,v)), \ 307.6317 + (I[326] = (img)(_n1##x,_n5##y,z,v)), \ 307.6318 + (I[347] = (img)(_n1##x,_n6##y,z,v)), \ 307.6319 + (I[368] = (img)(_n1##x,_n7##y,z,v)), \ 307.6320 + (I[389] = (img)(_n1##x,_n8##y,z,v)), \ 307.6321 + (I[410] = (img)(_n1##x,_n9##y,z,v)), \ 307.6322 + (I[431] = (img)(_n1##x,_n10##y,z,v)), \ 307.6323 + (I[12] = (img)(_n2##x,_p10##y,z,v)), \ 307.6324 + (I[33] = (img)(_n2##x,_p9##y,z,v)), \ 307.6325 + (I[54] = (img)(_n2##x,_p8##y,z,v)), \ 307.6326 + (I[75] = (img)(_n2##x,_p7##y,z,v)), \ 307.6327 + (I[96] = (img)(_n2##x,_p6##y,z,v)), \ 307.6328 + (I[117] = (img)(_n2##x,_p5##y,z,v)), \ 307.6329 + (I[138] = (img)(_n2##x,_p4##y,z,v)), \ 307.6330 + (I[159] = (img)(_n2##x,_p3##y,z,v)), \ 307.6331 + (I[180] = (img)(_n2##x,_p2##y,z,v)), \ 307.6332 + (I[201] = (img)(_n2##x,_p1##y,z,v)), \ 307.6333 + (I[222] = (img)(_n2##x,y,z,v)), \ 307.6334 + (I[243] = (img)(_n2##x,_n1##y,z,v)), \ 307.6335 + (I[264] = (img)(_n2##x,_n2##y,z,v)), \ 307.6336 + (I[285] = (img)(_n2##x,_n3##y,z,v)), \ 307.6337 + (I[306] = (img)(_n2##x,_n4##y,z,v)), \ 307.6338 + (I[327] = (img)(_n2##x,_n5##y,z,v)), \ 307.6339 + (I[348] = (img)(_n2##x,_n6##y,z,v)), \ 307.6340 + (I[369] = (img)(_n2##x,_n7##y,z,v)), \ 307.6341 + (I[390] = (img)(_n2##x,_n8##y,z,v)), \ 307.6342 + (I[411] = (img)(_n2##x,_n9##y,z,v)), \ 307.6343 + (I[432] = (img)(_n2##x,_n10##y,z,v)), \ 307.6344 + (I[13] = (img)(_n3##x,_p10##y,z,v)), \ 307.6345 + (I[34] = (img)(_n3##x,_p9##y,z,v)), \ 307.6346 + (I[55] = (img)(_n3##x,_p8##y,z,v)), \ 307.6347 + (I[76] = (img)(_n3##x,_p7##y,z,v)), \ 307.6348 + (I[97] = (img)(_n3##x,_p6##y,z,v)), \ 307.6349 + (I[118] = (img)(_n3##x,_p5##y,z,v)), \ 307.6350 + (I[139] = (img)(_n3##x,_p4##y,z,v)), \ 307.6351 + (I[160] = (img)(_n3##x,_p3##y,z,v)), \ 307.6352 + (I[181] = (img)(_n3##x,_p2##y,z,v)), \ 307.6353 + (I[202] = (img)(_n3##x,_p1##y,z,v)), \ 307.6354 + (I[223] = (img)(_n3##x,y,z,v)), \ 307.6355 + (I[244] = (img)(_n3##x,_n1##y,z,v)), \ 307.6356 + (I[265] = (img)(_n3##x,_n2##y,z,v)), \ 307.6357 + (I[286] = (img)(_n3##x,_n3##y,z,v)), \ 307.6358 + (I[307] = (img)(_n3##x,_n4##y,z,v)), \ 307.6359 + (I[328] = (img)(_n3##x,_n5##y,z,v)), \ 307.6360 + (I[349] = (img)(_n3##x,_n6##y,z,v)), \ 307.6361 + (I[370] = (img)(_n3##x,_n7##y,z,v)), \ 307.6362 + (I[391] = (img)(_n3##x,_n8##y,z,v)), \ 307.6363 + (I[412] = (img)(_n3##x,_n9##y,z,v)), \ 307.6364 + (I[433] = (img)(_n3##x,_n10##y,z,v)), \ 307.6365 + (I[14] = (img)(_n4##x,_p10##y,z,v)), \ 307.6366 + (I[35] = (img)(_n4##x,_p9##y,z,v)), \ 307.6367 + (I[56] = (img)(_n4##x,_p8##y,z,v)), \ 307.6368 + (I[77] = (img)(_n4##x,_p7##y,z,v)), \ 307.6369 + (I[98] = (img)(_n4##x,_p6##y,z,v)), \ 307.6370 + (I[119] = (img)(_n4##x,_p5##y,z,v)), \ 307.6371 + (I[140] = (img)(_n4##x,_p4##y,z,v)), \ 307.6372 + (I[161] = (img)(_n4##x,_p3##y,z,v)), \ 307.6373 + (I[182] = (img)(_n4##x,_p2##y,z,v)), \ 307.6374 + (I[203] = (img)(_n4##x,_p1##y,z,v)), \ 307.6375 + (I[224] = (img)(_n4##x,y,z,v)), \ 307.6376 + (I[245] = (img)(_n4##x,_n1##y,z,v)), \ 307.6377 + (I[266] = (img)(_n4##x,_n2##y,z,v)), \ 307.6378 + (I[287] = (img)(_n4##x,_n3##y,z,v)), \ 307.6379 + (I[308] = (img)(_n4##x,_n4##y,z,v)), \ 307.6380 + (I[329] = (img)(_n4##x,_n5##y,z,v)), \ 307.6381 + (I[350] = (img)(_n4##x,_n6##y,z,v)), \ 307.6382 + (I[371] = (img)(_n4##x,_n7##y,z,v)), \ 307.6383 + (I[392] = (img)(_n4##x,_n8##y,z,v)), \ 307.6384 + (I[413] = (img)(_n4##x,_n9##y,z,v)), \ 307.6385 + (I[434] = (img)(_n4##x,_n10##y,z,v)), \ 307.6386 + (I[15] = (img)(_n5##x,_p10##y,z,v)), \ 307.6387 + (I[36] = (img)(_n5##x,_p9##y,z,v)), \ 307.6388 + (I[57] = (img)(_n5##x,_p8##y,z,v)), \ 307.6389 + (I[78] = (img)(_n5##x,_p7##y,z,v)), \ 307.6390 + (I[99] = (img)(_n5##x,_p6##y,z,v)), \ 307.6391 + (I[120] = (img)(_n5##x,_p5##y,z,v)), \ 307.6392 + (I[141] = (img)(_n5##x,_p4##y,z,v)), \ 307.6393 + (I[162] = (img)(_n5##x,_p3##y,z,v)), \ 307.6394 + (I[183] = (img)(_n5##x,_p2##y,z,v)), \ 307.6395 + (I[204] = (img)(_n5##x,_p1##y,z,v)), \ 307.6396 + (I[225] = (img)(_n5##x,y,z,v)), \ 307.6397 + (I[246] = (img)(_n5##x,_n1##y,z,v)), \ 307.6398 + (I[267] = (img)(_n5##x,_n2##y,z,v)), \ 307.6399 + (I[288] = (img)(_n5##x,_n3##y,z,v)), \ 307.6400 + (I[309] = (img)(_n5##x,_n4##y,z,v)), \ 307.6401 + (I[330] = (img)(_n5##x,_n5##y,z,v)), \ 307.6402 + (I[351] = (img)(_n5##x,_n6##y,z,v)), \ 307.6403 + (I[372] = (img)(_n5##x,_n7##y,z,v)), \ 307.6404 + (I[393] = (img)(_n5##x,_n8##y,z,v)), \ 307.6405 + (I[414] = (img)(_n5##x,_n9##y,z,v)), \ 307.6406 + (I[435] = (img)(_n5##x,_n10##y,z,v)), \ 307.6407 + (I[16] = (img)(_n6##x,_p10##y,z,v)), \ 307.6408 + (I[37] = (img)(_n6##x,_p9##y,z,v)), \ 307.6409 + (I[58] = (img)(_n6##x,_p8##y,z,v)), \ 307.6410 + (I[79] = (img)(_n6##x,_p7##y,z,v)), \ 307.6411 + (I[100] = (img)(_n6##x,_p6##y,z,v)), \ 307.6412 + (I[121] = (img)(_n6##x,_p5##y,z,v)), \ 307.6413 + (I[142] = (img)(_n6##x,_p4##y,z,v)), \ 307.6414 + (I[163] = (img)(_n6##x,_p3##y,z,v)), \ 307.6415 + (I[184] = (img)(_n6##x,_p2##y,z,v)), \ 307.6416 + (I[205] = (img)(_n6##x,_p1##y,z,v)), \ 307.6417 + (I[226] = (img)(_n6##x,y,z,v)), \ 307.6418 + (I[247] = (img)(_n6##x,_n1##y,z,v)), \ 307.6419 + (I[268] = (img)(_n6##x,_n2##y,z,v)), \ 307.6420 + (I[289] = (img)(_n6##x,_n3##y,z,v)), \ 307.6421 + (I[310] = (img)(_n6##x,_n4##y,z,v)), \ 307.6422 + (I[331] = (img)(_n6##x,_n5##y,z,v)), \ 307.6423 + (I[352] = (img)(_n6##x,_n6##y,z,v)), \ 307.6424 + (I[373] = (img)(_n6##x,_n7##y,z,v)), \ 307.6425 + (I[394] = (img)(_n6##x,_n8##y,z,v)), \ 307.6426 + (I[415] = (img)(_n6##x,_n9##y,z,v)), \ 307.6427 + (I[436] = (img)(_n6##x,_n10##y,z,v)), \ 307.6428 + (I[17] = (img)(_n7##x,_p10##y,z,v)), \ 307.6429 + (I[38] = (img)(_n7##x,_p9##y,z,v)), \ 307.6430 + (I[59] = (img)(_n7##x,_p8##y,z,v)), \ 307.6431 + (I[80] = (img)(_n7##x,_p7##y,z,v)), \ 307.6432 + (I[101] = (img)(_n7##x,_p6##y,z,v)), \ 307.6433 + (I[122] = (img)(_n7##x,_p5##y,z,v)), \ 307.6434 + (I[143] = (img)(_n7##x,_p4##y,z,v)), \ 307.6435 + (I[164] = (img)(_n7##x,_p3##y,z,v)), \ 307.6436 + (I[185] = (img)(_n7##x,_p2##y,z,v)), \ 307.6437 + (I[206] = (img)(_n7##x,_p1##y,z,v)), \ 307.6438 + (I[227] = (img)(_n7##x,y,z,v)), \ 307.6439 + (I[248] = (img)(_n7##x,_n1##y,z,v)), \ 307.6440 + (I[269] = (img)(_n7##x,_n2##y,z,v)), \ 307.6441 + (I[290] = (img)(_n7##x,_n3##y,z,v)), \ 307.6442 + (I[311] = (img)(_n7##x,_n4##y,z,v)), \ 307.6443 + (I[332] = (img)(_n7##x,_n5##y,z,v)), \ 307.6444 + (I[353] = (img)(_n7##x,_n6##y,z,v)), \ 307.6445 + (I[374] = (img)(_n7##x,_n7##y,z,v)), \ 307.6446 + (I[395] = (img)(_n7##x,_n8##y,z,v)), \ 307.6447 + (I[416] = (img)(_n7##x,_n9##y,z,v)), \ 307.6448 + (I[437] = (img)(_n7##x,_n10##y,z,v)), \ 307.6449 + (I[18] = (img)(_n8##x,_p10##y,z,v)), \ 307.6450 + (I[39] = (img)(_n8##x,_p9##y,z,v)), \ 307.6451 + (I[60] = (img)(_n8##x,_p8##y,z,v)), \ 307.6452 + (I[81] = (img)(_n8##x,_p7##y,z,v)), \ 307.6453 + (I[102] = (img)(_n8##x,_p6##y,z,v)), \ 307.6454 + (I[123] = (img)(_n8##x,_p5##y,z,v)), \ 307.6455 + (I[144] = (img)(_n8##x,_p4##y,z,v)), \ 307.6456 + (I[165] = (img)(_n8##x,_p3##y,z,v)), \ 307.6457 + (I[186] = (img)(_n8##x,_p2##y,z,v)), \ 307.6458 + (I[207] = (img)(_n8##x,_p1##y,z,v)), \ 307.6459 + (I[228] = (img)(_n8##x,y,z,v)), \ 307.6460 + (I[249] = (img)(_n8##x,_n1##y,z,v)), \ 307.6461 + (I[270] = (img)(_n8##x,_n2##y,z,v)), \ 307.6462 + (I[291] = (img)(_n8##x,_n3##y,z,v)), \ 307.6463 + (I[312] = (img)(_n8##x,_n4##y,z,v)), \ 307.6464 + (I[333] = (img)(_n8##x,_n5##y,z,v)), \ 307.6465 + (I[354] = (img)(_n8##x,_n6##y,z,v)), \ 307.6466 + (I[375] = (img)(_n8##x,_n7##y,z,v)), \ 307.6467 + (I[396] = (img)(_n8##x,_n8##y,z,v)), \ 307.6468 + (I[417] = (img)(_n8##x,_n9##y,z,v)), \ 307.6469 + (I[438] = (img)(_n8##x,_n10##y,z,v)), \ 307.6470 + (I[19] = (img)(_n9##x,_p10##y,z,v)), \ 307.6471 + (I[40] = (img)(_n9##x,_p9##y,z,v)), \ 307.6472 + (I[61] = (img)(_n9##x,_p8##y,z,v)), \ 307.6473 + (I[82] = (img)(_n9##x,_p7##y,z,v)), \ 307.6474 + (I[103] = (img)(_n9##x,_p6##y,z,v)), \ 307.6475 + (I[124] = (img)(_n9##x,_p5##y,z,v)), \ 307.6476 + (I[145] = (img)(_n9##x,_p4##y,z,v)), \ 307.6477 + (I[166] = (img)(_n9##x,_p3##y,z,v)), \ 307.6478 + (I[187] = (img)(_n9##x,_p2##y,z,v)), \ 307.6479 + (I[208] = (img)(_n9##x,_p1##y,z,v)), \ 307.6480 + (I[229] = (img)(_n9##x,y,z,v)), \ 307.6481 + (I[250] = (img)(_n9##x,_n1##y,z,v)), \ 307.6482 + (I[271] = (img)(_n9##x,_n2##y,z,v)), \ 307.6483 + (I[292] = (img)(_n9##x,_n3##y,z,v)), \ 307.6484 + (I[313] = (img)(_n9##x,_n4##y,z,v)), \ 307.6485 + (I[334] = (img)(_n9##x,_n5##y,z,v)), \ 307.6486 + (I[355] = (img)(_n9##x,_n6##y,z,v)), \ 307.6487 + (I[376] = (img)(_n9##x,_n7##y,z,v)), \ 307.6488 + (I[397] = (img)(_n9##x,_n8##y,z,v)), \ 307.6489 + (I[418] = (img)(_n9##x,_n9##y,z,v)), \ 307.6490 + (I[439] = (img)(_n9##x,_n10##y,z,v)), \ 307.6491 + x+10>=(int)((img).width)?(int)((img).width)-1:x+10); \ 307.6492 + x<=(int)(x1) && ((_n10##x<(int)((img).width) && ( \ 307.6493 + (I[20] = (img)(_n10##x,_p10##y,z,v)), \ 307.6494 + (I[41] = (img)(_n10##x,_p9##y,z,v)), \ 307.6495 + (I[62] = (img)(_n10##x,_p8##y,z,v)), \ 307.6496 + (I[83] = (img)(_n10##x,_p7##y,z,v)), \ 307.6497 + (I[104] = (img)(_n10##x,_p6##y,z,v)), \ 307.6498 + (I[125] = (img)(_n10##x,_p5##y,z,v)), \ 307.6499 + (I[146] = (img)(_n10##x,_p4##y,z,v)), \ 307.6500 + (I[167] = (img)(_n10##x,_p3##y,z,v)), \ 307.6501 + (I[188] = (img)(_n10##x,_p2##y,z,v)), \ 307.6502 + (I[209] = (img)(_n10##x,_p1##y,z,v)), \ 307.6503 + (I[230] = (img)(_n10##x,y,z,v)), \ 307.6504 + (I[251] = (img)(_n10##x,_n1##y,z,v)), \ 307.6505 + (I[272] = (img)(_n10##x,_n2##y,z,v)), \ 307.6506 + (I[293] = (img)(_n10##x,_n3##y,z,v)), \ 307.6507 + (I[314] = (img)(_n10##x,_n4##y,z,v)), \ 307.6508 + (I[335] = (img)(_n10##x,_n5##y,z,v)), \ 307.6509 + (I[356] = (img)(_n10##x,_n6##y,z,v)), \ 307.6510 + (I[377] = (img)(_n10##x,_n7##y,z,v)), \ 307.6511 + (I[398] = (img)(_n10##x,_n8##y,z,v)), \ 307.6512 + (I[419] = (img)(_n10##x,_n9##y,z,v)), \ 307.6513 + (I[440] = (img)(_n10##x,_n10##y,z,v)),1)) || \ 307.6514 + _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.6515 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 307.6516 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.6517 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 307.6518 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.6519 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.6520 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.6521 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], \ 307.6522 + I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.6523 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], \ 307.6524 + I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.6525 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], \ 307.6526 + I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.6527 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], \ 307.6528 + I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], \ 307.6529 + I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], \ 307.6530 + I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.6531 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], \ 307.6532 + I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], \ 307.6533 + I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], \ 307.6534 + I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], \ 307.6535 + I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], I[439] = I[440], \ 307.6536 + _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x) 307.6537 + 307.6538 +#define cimg_get21x21(img,x,y,z,v,I) \ 307.6539 + I[0] = (img)(_p10##x,_p10##y,z,v), I[1] = (img)(_p9##x,_p10##y,z,v), I[2] = (img)(_p8##x,_p10##y,z,v), I[3] = (img)(_p7##x,_p10##y,z,v), I[4] = (img)(_p6##x,_p10##y,z,v), I[5] = (img)(_p5##x,_p10##y,z,v), I[6] = (img)(_p4##x,_p10##y,z,v), I[7] = (img)(_p3##x,_p10##y,z,v), I[8] = (img)(_p2##x,_p10##y,z,v), I[9] = (img)(_p1##x,_p10##y,z,v), I[10] = (img)(x,_p10##y,z,v), I[11] = (img)(_n1##x,_p10##y,z,v), I[12] = (img)(_n2##x,_p10##y,z,v), I[13] = (img)(_n3##x,_p10##y,z,v), I[14] = (img)(_n4##x,_p10##y,z,v), I[15] = (img)(_n5##x,_p10##y,z,v), I[16] = (img)(_n6##x,_p10##y,z,v), I[17] = (img)(_n7##x,_p10##y,z,v), I[18] = (img)(_n8##x,_p10##y,z,v), I[19] = (img)(_n9##x,_p10##y,z,v), I[20] = (img)(_n10##x,_p10##y,z,v), \ 307.6540 + I[21] = (img)(_p10##x,_p9##y,z,v), I[22] = (img)(_p9##x,_p9##y,z,v), I[23] = (img)(_p8##x,_p9##y,z,v), I[24] = (img)(_p7##x,_p9##y,z,v), I[25] = (img)(_p6##x,_p9##y,z,v), I[26] = (img)(_p5##x,_p9##y,z,v), I[27] = (img)(_p4##x,_p9##y,z,v), I[28] = (img)(_p3##x,_p9##y,z,v), I[29] = (img)(_p2##x,_p9##y,z,v), I[30] = (img)(_p1##x,_p9##y,z,v), I[31] = (img)(x,_p9##y,z,v), I[32] = (img)(_n1##x,_p9##y,z,v), I[33] = (img)(_n2##x,_p9##y,z,v), I[34] = (img)(_n3##x,_p9##y,z,v), I[35] = (img)(_n4##x,_p9##y,z,v), I[36] = (img)(_n5##x,_p9##y,z,v), I[37] = (img)(_n6##x,_p9##y,z,v), I[38] = (img)(_n7##x,_p9##y,z,v), I[39] = (img)(_n8##x,_p9##y,z,v), I[40] = (img)(_n9##x,_p9##y,z,v), I[41] = (img)(_n10##x,_p9##y,z,v), \ 307.6541 + I[42] = (img)(_p10##x,_p8##y,z,v), I[43] = (img)(_p9##x,_p8##y,z,v), I[44] = (img)(_p8##x,_p8##y,z,v), I[45] = (img)(_p7##x,_p8##y,z,v), I[46] = (img)(_p6##x,_p8##y,z,v), I[47] = (img)(_p5##x,_p8##y,z,v), I[48] = (img)(_p4##x,_p8##y,z,v), I[49] = (img)(_p3##x,_p8##y,z,v), I[50] = (img)(_p2##x,_p8##y,z,v), I[51] = (img)(_p1##x,_p8##y,z,v), I[52] = (img)(x,_p8##y,z,v), I[53] = (img)(_n1##x,_p8##y,z,v), I[54] = (img)(_n2##x,_p8##y,z,v), I[55] = (img)(_n3##x,_p8##y,z,v), I[56] = (img)(_n4##x,_p8##y,z,v), I[57] = (img)(_n5##x,_p8##y,z,v), I[58] = (img)(_n6##x,_p8##y,z,v), I[59] = (img)(_n7##x,_p8##y,z,v), I[60] = (img)(_n8##x,_p8##y,z,v), I[61] = (img)(_n9##x,_p8##y,z,v), I[62] = (img)(_n10##x,_p8##y,z,v), \ 307.6542 + I[63] = (img)(_p10##x,_p7##y,z,v), I[64] = (img)(_p9##x,_p7##y,z,v), I[65] = (img)(_p8##x,_p7##y,z,v), I[66] = (img)(_p7##x,_p7##y,z,v), I[67] = (img)(_p6##x,_p7##y,z,v), I[68] = (img)(_p5##x,_p7##y,z,v), I[69] = (img)(_p4##x,_p7##y,z,v), I[70] = (img)(_p3##x,_p7##y,z,v), I[71] = (img)(_p2##x,_p7##y,z,v), I[72] = (img)(_p1##x,_p7##y,z,v), I[73] = (img)(x,_p7##y,z,v), I[74] = (img)(_n1##x,_p7##y,z,v), I[75] = (img)(_n2##x,_p7##y,z,v), I[76] = (img)(_n3##x,_p7##y,z,v), I[77] = (img)(_n4##x,_p7##y,z,v), I[78] = (img)(_n5##x,_p7##y,z,v), I[79] = (img)(_n6##x,_p7##y,z,v), I[80] = (img)(_n7##x,_p7##y,z,v), I[81] = (img)(_n8##x,_p7##y,z,v), I[82] = (img)(_n9##x,_p7##y,z,v), I[83] = (img)(_n10##x,_p7##y,z,v), \ 307.6543 + I[84] = (img)(_p10##x,_p6##y,z,v), I[85] = (img)(_p9##x,_p6##y,z,v), I[86] = (img)(_p8##x,_p6##y,z,v), I[87] = (img)(_p7##x,_p6##y,z,v), I[88] = (img)(_p6##x,_p6##y,z,v), I[89] = (img)(_p5##x,_p6##y,z,v), I[90] = (img)(_p4##x,_p6##y,z,v), I[91] = (img)(_p3##x,_p6##y,z,v), I[92] = (img)(_p2##x,_p6##y,z,v), I[93] = (img)(_p1##x,_p6##y,z,v), I[94] = (img)(x,_p6##y,z,v), I[95] = (img)(_n1##x,_p6##y,z,v), I[96] = (img)(_n2##x,_p6##y,z,v), I[97] = (img)(_n3##x,_p6##y,z,v), I[98] = (img)(_n4##x,_p6##y,z,v), I[99] = (img)(_n5##x,_p6##y,z,v), I[100] = (img)(_n6##x,_p6##y,z,v), I[101] = (img)(_n7##x,_p6##y,z,v), I[102] = (img)(_n8##x,_p6##y,z,v), I[103] = (img)(_n9##x,_p6##y,z,v), I[104] = (img)(_n10##x,_p6##y,z,v), \ 307.6544 + I[105] = (img)(_p10##x,_p5##y,z,v), I[106] = (img)(_p9##x,_p5##y,z,v), I[107] = (img)(_p8##x,_p5##y,z,v), I[108] = (img)(_p7##x,_p5##y,z,v), I[109] = (img)(_p6##x,_p5##y,z,v), I[110] = (img)(_p5##x,_p5##y,z,v), I[111] = (img)(_p4##x,_p5##y,z,v), I[112] = (img)(_p3##x,_p5##y,z,v), I[113] = (img)(_p2##x,_p5##y,z,v), I[114] = (img)(_p1##x,_p5##y,z,v), I[115] = (img)(x,_p5##y,z,v), I[116] = (img)(_n1##x,_p5##y,z,v), I[117] = (img)(_n2##x,_p5##y,z,v), I[118] = (img)(_n3##x,_p5##y,z,v), I[119] = (img)(_n4##x,_p5##y,z,v), I[120] = (img)(_n5##x,_p5##y,z,v), I[121] = (img)(_n6##x,_p5##y,z,v), I[122] = (img)(_n7##x,_p5##y,z,v), I[123] = (img)(_n8##x,_p5##y,z,v), I[124] = (img)(_n9##x,_p5##y,z,v), I[125] = (img)(_n10##x,_p5##y,z,v), \ 307.6545 + I[126] = (img)(_p10##x,_p4##y,z,v), I[127] = (img)(_p9##x,_p4##y,z,v), I[128] = (img)(_p8##x,_p4##y,z,v), I[129] = (img)(_p7##x,_p4##y,z,v), I[130] = (img)(_p6##x,_p4##y,z,v), I[131] = (img)(_p5##x,_p4##y,z,v), I[132] = (img)(_p4##x,_p4##y,z,v), I[133] = (img)(_p3##x,_p4##y,z,v), I[134] = (img)(_p2##x,_p4##y,z,v), I[135] = (img)(_p1##x,_p4##y,z,v), I[136] = (img)(x,_p4##y,z,v), I[137] = (img)(_n1##x,_p4##y,z,v), I[138] = (img)(_n2##x,_p4##y,z,v), I[139] = (img)(_n3##x,_p4##y,z,v), I[140] = (img)(_n4##x,_p4##y,z,v), I[141] = (img)(_n5##x,_p4##y,z,v), I[142] = (img)(_n6##x,_p4##y,z,v), I[143] = (img)(_n7##x,_p4##y,z,v), I[144] = (img)(_n8##x,_p4##y,z,v), I[145] = (img)(_n9##x,_p4##y,z,v), I[146] = (img)(_n10##x,_p4##y,z,v), \ 307.6546 + I[147] = (img)(_p10##x,_p3##y,z,v), I[148] = (img)(_p9##x,_p3##y,z,v), I[149] = (img)(_p8##x,_p3##y,z,v), I[150] = (img)(_p7##x,_p3##y,z,v), I[151] = (img)(_p6##x,_p3##y,z,v), I[152] = (img)(_p5##x,_p3##y,z,v), I[153] = (img)(_p4##x,_p3##y,z,v), I[154] = (img)(_p3##x,_p3##y,z,v), I[155] = (img)(_p2##x,_p3##y,z,v), I[156] = (img)(_p1##x,_p3##y,z,v), I[157] = (img)(x,_p3##y,z,v), I[158] = (img)(_n1##x,_p3##y,z,v), I[159] = (img)(_n2##x,_p3##y,z,v), I[160] = (img)(_n3##x,_p3##y,z,v), I[161] = (img)(_n4##x,_p3##y,z,v), I[162] = (img)(_n5##x,_p3##y,z,v), I[163] = (img)(_n6##x,_p3##y,z,v), I[164] = (img)(_n7##x,_p3##y,z,v), I[165] = (img)(_n8##x,_p3##y,z,v), I[166] = (img)(_n9##x,_p3##y,z,v), I[167] = (img)(_n10##x,_p3##y,z,v), \ 307.6547 + I[168] = (img)(_p10##x,_p2##y,z,v), I[169] = (img)(_p9##x,_p2##y,z,v), I[170] = (img)(_p8##x,_p2##y,z,v), I[171] = (img)(_p7##x,_p2##y,z,v), I[172] = (img)(_p6##x,_p2##y,z,v), I[173] = (img)(_p5##x,_p2##y,z,v), I[174] = (img)(_p4##x,_p2##y,z,v), I[175] = (img)(_p3##x,_p2##y,z,v), I[176] = (img)(_p2##x,_p2##y,z,v), I[177] = (img)(_p1##x,_p2##y,z,v), I[178] = (img)(x,_p2##y,z,v), I[179] = (img)(_n1##x,_p2##y,z,v), I[180] = (img)(_n2##x,_p2##y,z,v), I[181] = (img)(_n3##x,_p2##y,z,v), I[182] = (img)(_n4##x,_p2##y,z,v), I[183] = (img)(_n5##x,_p2##y,z,v), I[184] = (img)(_n6##x,_p2##y,z,v), I[185] = (img)(_n7##x,_p2##y,z,v), I[186] = (img)(_n8##x,_p2##y,z,v), I[187] = (img)(_n9##x,_p2##y,z,v), I[188] = (img)(_n10##x,_p2##y,z,v), \ 307.6548 + I[189] = (img)(_p10##x,_p1##y,z,v), I[190] = (img)(_p9##x,_p1##y,z,v), I[191] = (img)(_p8##x,_p1##y,z,v), I[192] = (img)(_p7##x,_p1##y,z,v), I[193] = (img)(_p6##x,_p1##y,z,v), I[194] = (img)(_p5##x,_p1##y,z,v), I[195] = (img)(_p4##x,_p1##y,z,v), I[196] = (img)(_p3##x,_p1##y,z,v), I[197] = (img)(_p2##x,_p1##y,z,v), I[198] = (img)(_p1##x,_p1##y,z,v), I[199] = (img)(x,_p1##y,z,v), I[200] = (img)(_n1##x,_p1##y,z,v), I[201] = (img)(_n2##x,_p1##y,z,v), I[202] = (img)(_n3##x,_p1##y,z,v), I[203] = (img)(_n4##x,_p1##y,z,v), I[204] = (img)(_n5##x,_p1##y,z,v), I[205] = (img)(_n6##x,_p1##y,z,v), I[206] = (img)(_n7##x,_p1##y,z,v), I[207] = (img)(_n8##x,_p1##y,z,v), I[208] = (img)(_n9##x,_p1##y,z,v), I[209] = (img)(_n10##x,_p1##y,z,v), \ 307.6549 + I[210] = (img)(_p10##x,y,z,v), I[211] = (img)(_p9##x,y,z,v), I[212] = (img)(_p8##x,y,z,v), I[213] = (img)(_p7##x,y,z,v), I[214] = (img)(_p6##x,y,z,v), I[215] = (img)(_p5##x,y,z,v), I[216] = (img)(_p4##x,y,z,v), I[217] = (img)(_p3##x,y,z,v), I[218] = (img)(_p2##x,y,z,v), I[219] = (img)(_p1##x,y,z,v), I[220] = (img)(x,y,z,v), I[221] = (img)(_n1##x,y,z,v), I[222] = (img)(_n2##x,y,z,v), I[223] = (img)(_n3##x,y,z,v), I[224] = (img)(_n4##x,y,z,v), I[225] = (img)(_n5##x,y,z,v), I[226] = (img)(_n6##x,y,z,v), I[227] = (img)(_n7##x,y,z,v), I[228] = (img)(_n8##x,y,z,v), I[229] = (img)(_n9##x,y,z,v), I[230] = (img)(_n10##x,y,z,v), \ 307.6550 + I[231] = (img)(_p10##x,_n1##y,z,v), I[232] = (img)(_p9##x,_n1##y,z,v), I[233] = (img)(_p8##x,_n1##y,z,v), I[234] = (img)(_p7##x,_n1##y,z,v), I[235] = (img)(_p6##x,_n1##y,z,v), I[236] = (img)(_p5##x,_n1##y,z,v), I[237] = (img)(_p4##x,_n1##y,z,v), I[238] = (img)(_p3##x,_n1##y,z,v), I[239] = (img)(_p2##x,_n1##y,z,v), I[240] = (img)(_p1##x,_n1##y,z,v), I[241] = (img)(x,_n1##y,z,v), I[242] = (img)(_n1##x,_n1##y,z,v), I[243] = (img)(_n2##x,_n1##y,z,v), I[244] = (img)(_n3##x,_n1##y,z,v), I[245] = (img)(_n4##x,_n1##y,z,v), I[246] = (img)(_n5##x,_n1##y,z,v), I[247] = (img)(_n6##x,_n1##y,z,v), I[248] = (img)(_n7##x,_n1##y,z,v), I[249] = (img)(_n8##x,_n1##y,z,v), I[250] = (img)(_n9##x,_n1##y,z,v), I[251] = (img)(_n10##x,_n1##y,z,v), \ 307.6551 + I[252] = (img)(_p10##x,_n2##y,z,v), I[253] = (img)(_p9##x,_n2##y,z,v), I[254] = (img)(_p8##x,_n2##y,z,v), I[255] = (img)(_p7##x,_n2##y,z,v), I[256] = (img)(_p6##x,_n2##y,z,v), I[257] = (img)(_p5##x,_n2##y,z,v), I[258] = (img)(_p4##x,_n2##y,z,v), I[259] = (img)(_p3##x,_n2##y,z,v), I[260] = (img)(_p2##x,_n2##y,z,v), I[261] = (img)(_p1##x,_n2##y,z,v), I[262] = (img)(x,_n2##y,z,v), I[263] = (img)(_n1##x,_n2##y,z,v), I[264] = (img)(_n2##x,_n2##y,z,v), I[265] = (img)(_n3##x,_n2##y,z,v), I[266] = (img)(_n4##x,_n2##y,z,v), I[267] = (img)(_n5##x,_n2##y,z,v), I[268] = (img)(_n6##x,_n2##y,z,v), I[269] = (img)(_n7##x,_n2##y,z,v), I[270] = (img)(_n8##x,_n2##y,z,v), I[271] = (img)(_n9##x,_n2##y,z,v), I[272] = (img)(_n10##x,_n2##y,z,v), \ 307.6552 + I[273] = (img)(_p10##x,_n3##y,z,v), I[274] = (img)(_p9##x,_n3##y,z,v), I[275] = (img)(_p8##x,_n3##y,z,v), I[276] = (img)(_p7##x,_n3##y,z,v), I[277] = (img)(_p6##x,_n3##y,z,v), I[278] = (img)(_p5##x,_n3##y,z,v), I[279] = (img)(_p4##x,_n3##y,z,v), I[280] = (img)(_p3##x,_n3##y,z,v), I[281] = (img)(_p2##x,_n3##y,z,v), I[282] = (img)(_p1##x,_n3##y,z,v), I[283] = (img)(x,_n3##y,z,v), I[284] = (img)(_n1##x,_n3##y,z,v), I[285] = (img)(_n2##x,_n3##y,z,v), I[286] = (img)(_n3##x,_n3##y,z,v), I[287] = (img)(_n4##x,_n3##y,z,v), I[288] = (img)(_n5##x,_n3##y,z,v), I[289] = (img)(_n6##x,_n3##y,z,v), I[290] = (img)(_n7##x,_n3##y,z,v), I[291] = (img)(_n8##x,_n3##y,z,v), I[292] = (img)(_n9##x,_n3##y,z,v), I[293] = (img)(_n10##x,_n3##y,z,v), \ 307.6553 + I[294] = (img)(_p10##x,_n4##y,z,v), I[295] = (img)(_p9##x,_n4##y,z,v), I[296] = (img)(_p8##x,_n4##y,z,v), I[297] = (img)(_p7##x,_n4##y,z,v), I[298] = (img)(_p6##x,_n4##y,z,v), I[299] = (img)(_p5##x,_n4##y,z,v), I[300] = (img)(_p4##x,_n4##y,z,v), I[301] = (img)(_p3##x,_n4##y,z,v), I[302] = (img)(_p2##x,_n4##y,z,v), I[303] = (img)(_p1##x,_n4##y,z,v), I[304] = (img)(x,_n4##y,z,v), I[305] = (img)(_n1##x,_n4##y,z,v), I[306] = (img)(_n2##x,_n4##y,z,v), I[307] = (img)(_n3##x,_n4##y,z,v), I[308] = (img)(_n4##x,_n4##y,z,v), I[309] = (img)(_n5##x,_n4##y,z,v), I[310] = (img)(_n6##x,_n4##y,z,v), I[311] = (img)(_n7##x,_n4##y,z,v), I[312] = (img)(_n8##x,_n4##y,z,v), I[313] = (img)(_n9##x,_n4##y,z,v), I[314] = (img)(_n10##x,_n4##y,z,v), \ 307.6554 + I[315] = (img)(_p10##x,_n5##y,z,v), I[316] = (img)(_p9##x,_n5##y,z,v), I[317] = (img)(_p8##x,_n5##y,z,v), I[318] = (img)(_p7##x,_n5##y,z,v), I[319] = (img)(_p6##x,_n5##y,z,v), I[320] = (img)(_p5##x,_n5##y,z,v), I[321] = (img)(_p4##x,_n5##y,z,v), I[322] = (img)(_p3##x,_n5##y,z,v), I[323] = (img)(_p2##x,_n5##y,z,v), I[324] = (img)(_p1##x,_n5##y,z,v), I[325] = (img)(x,_n5##y,z,v), I[326] = (img)(_n1##x,_n5##y,z,v), I[327] = (img)(_n2##x,_n5##y,z,v), I[328] = (img)(_n3##x,_n5##y,z,v), I[329] = (img)(_n4##x,_n5##y,z,v), I[330] = (img)(_n5##x,_n5##y,z,v), I[331] = (img)(_n6##x,_n5##y,z,v), I[332] = (img)(_n7##x,_n5##y,z,v), I[333] = (img)(_n8##x,_n5##y,z,v), I[334] = (img)(_n9##x,_n5##y,z,v), I[335] = (img)(_n10##x,_n5##y,z,v), \ 307.6555 + I[336] = (img)(_p10##x,_n6##y,z,v), I[337] = (img)(_p9##x,_n6##y,z,v), I[338] = (img)(_p8##x,_n6##y,z,v), I[339] = (img)(_p7##x,_n6##y,z,v), I[340] = (img)(_p6##x,_n6##y,z,v), I[341] = (img)(_p5##x,_n6##y,z,v), I[342] = (img)(_p4##x,_n6##y,z,v), I[343] = (img)(_p3##x,_n6##y,z,v), I[344] = (img)(_p2##x,_n6##y,z,v), I[345] = (img)(_p1##x,_n6##y,z,v), I[346] = (img)(x,_n6##y,z,v), I[347] = (img)(_n1##x,_n6##y,z,v), I[348] = (img)(_n2##x,_n6##y,z,v), I[349] = (img)(_n3##x,_n6##y,z,v), I[350] = (img)(_n4##x,_n6##y,z,v), I[351] = (img)(_n5##x,_n6##y,z,v), I[352] = (img)(_n6##x,_n6##y,z,v), I[353] = (img)(_n7##x,_n6##y,z,v), I[354] = (img)(_n8##x,_n6##y,z,v), I[355] = (img)(_n9##x,_n6##y,z,v), I[356] = (img)(_n10##x,_n6##y,z,v), \ 307.6556 + I[357] = (img)(_p10##x,_n7##y,z,v), I[358] = (img)(_p9##x,_n7##y,z,v), I[359] = (img)(_p8##x,_n7##y,z,v), I[360] = (img)(_p7##x,_n7##y,z,v), I[361] = (img)(_p6##x,_n7##y,z,v), I[362] = (img)(_p5##x,_n7##y,z,v), I[363] = (img)(_p4##x,_n7##y,z,v), I[364] = (img)(_p3##x,_n7##y,z,v), I[365] = (img)(_p2##x,_n7##y,z,v), I[366] = (img)(_p1##x,_n7##y,z,v), I[367] = (img)(x,_n7##y,z,v), I[368] = (img)(_n1##x,_n7##y,z,v), I[369] = (img)(_n2##x,_n7##y,z,v), I[370] = (img)(_n3##x,_n7##y,z,v), I[371] = (img)(_n4##x,_n7##y,z,v), I[372] = (img)(_n5##x,_n7##y,z,v), I[373] = (img)(_n6##x,_n7##y,z,v), I[374] = (img)(_n7##x,_n7##y,z,v), I[375] = (img)(_n8##x,_n7##y,z,v), I[376] = (img)(_n9##x,_n7##y,z,v), I[377] = (img)(_n10##x,_n7##y,z,v), \ 307.6557 + I[378] = (img)(_p10##x,_n8##y,z,v), I[379] = (img)(_p9##x,_n8##y,z,v), I[380] = (img)(_p8##x,_n8##y,z,v), I[381] = (img)(_p7##x,_n8##y,z,v), I[382] = (img)(_p6##x,_n8##y,z,v), I[383] = (img)(_p5##x,_n8##y,z,v), I[384] = (img)(_p4##x,_n8##y,z,v), I[385] = (img)(_p3##x,_n8##y,z,v), I[386] = (img)(_p2##x,_n8##y,z,v), I[387] = (img)(_p1##x,_n8##y,z,v), I[388] = (img)(x,_n8##y,z,v), I[389] = (img)(_n1##x,_n8##y,z,v), I[390] = (img)(_n2##x,_n8##y,z,v), I[391] = (img)(_n3##x,_n8##y,z,v), I[392] = (img)(_n4##x,_n8##y,z,v), I[393] = (img)(_n5##x,_n8##y,z,v), I[394] = (img)(_n6##x,_n8##y,z,v), I[395] = (img)(_n7##x,_n8##y,z,v), I[396] = (img)(_n8##x,_n8##y,z,v), I[397] = (img)(_n9##x,_n8##y,z,v), I[398] = (img)(_n10##x,_n8##y,z,v), \ 307.6558 + I[399] = (img)(_p10##x,_n9##y,z,v), I[400] = (img)(_p9##x,_n9##y,z,v), I[401] = (img)(_p8##x,_n9##y,z,v), I[402] = (img)(_p7##x,_n9##y,z,v), I[403] = (img)(_p6##x,_n9##y,z,v), I[404] = (img)(_p5##x,_n9##y,z,v), I[405] = (img)(_p4##x,_n9##y,z,v), I[406] = (img)(_p3##x,_n9##y,z,v), I[407] = (img)(_p2##x,_n9##y,z,v), I[408] = (img)(_p1##x,_n9##y,z,v), I[409] = (img)(x,_n9##y,z,v), I[410] = (img)(_n1##x,_n9##y,z,v), I[411] = (img)(_n2##x,_n9##y,z,v), I[412] = (img)(_n3##x,_n9##y,z,v), I[413] = (img)(_n4##x,_n9##y,z,v), I[414] = (img)(_n5##x,_n9##y,z,v), I[415] = (img)(_n6##x,_n9##y,z,v), I[416] = (img)(_n7##x,_n9##y,z,v), I[417] = (img)(_n8##x,_n9##y,z,v), I[418] = (img)(_n9##x,_n9##y,z,v), I[419] = (img)(_n10##x,_n9##y,z,v), \ 307.6559 + I[420] = (img)(_p10##x,_n10##y,z,v), I[421] = (img)(_p9##x,_n10##y,z,v), I[422] = (img)(_p8##x,_n10##y,z,v), I[423] = (img)(_p7##x,_n10##y,z,v), I[424] = (img)(_p6##x,_n10##y,z,v), I[425] = (img)(_p5##x,_n10##y,z,v), I[426] = (img)(_p4##x,_n10##y,z,v), I[427] = (img)(_p3##x,_n10##y,z,v), I[428] = (img)(_p2##x,_n10##y,z,v), I[429] = (img)(_p1##x,_n10##y,z,v), I[430] = (img)(x,_n10##y,z,v), I[431] = (img)(_n1##x,_n10##y,z,v), I[432] = (img)(_n2##x,_n10##y,z,v), I[433] = (img)(_n3##x,_n10##y,z,v), I[434] = (img)(_n4##x,_n10##y,z,v), I[435] = (img)(_n5##x,_n10##y,z,v), I[436] = (img)(_n6##x,_n10##y,z,v), I[437] = (img)(_n7##x,_n10##y,z,v), I[438] = (img)(_n8##x,_n10##y,z,v), I[439] = (img)(_n9##x,_n10##y,z,v), I[440] = (img)(_n10##x,_n10##y,z,v); 307.6560 + 307.6561 +// Define 22x22 loop macros for CImg 307.6562 +//---------------------------------- 307.6563 +#define cimg_for22(bound,i) for (int i = 0, \ 307.6564 + _p10##i = 0, _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.6565 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.6566 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.6567 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.6568 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.6569 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.6570 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.6571 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.6572 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.6573 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9, \ 307.6574 + _n10##i = 10>=(int)(bound)?(int)(bound)-1:10, \ 307.6575 + _n11##i = 11>=(int)(bound)?(int)(bound)-1:11; \ 307.6576 + _n11##i<(int)(bound) || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.6577 + i==(_n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.6578 + _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.6579 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i) 307.6580 + 307.6581 +#define cimg_for22X(img,x) cimg_for22((img).width,x) 307.6582 +#define cimg_for22Y(img,y) cimg_for22((img).height,y) 307.6583 +#define cimg_for22Z(img,z) cimg_for22((img).depth,z) 307.6584 +#define cimg_for22V(img,v) cimg_for22((img).dim,v) 307.6585 +#define cimg_for22XY(img,x,y) cimg_for22Y(img,y) cimg_for22X(img,x) 307.6586 +#define cimg_for22XZ(img,x,z) cimg_for22Z(img,z) cimg_for22X(img,x) 307.6587 +#define cimg_for22XV(img,x,v) cimg_for22V(img,v) cimg_for22X(img,x) 307.6588 +#define cimg_for22YZ(img,y,z) cimg_for22Z(img,z) cimg_for22Y(img,y) 307.6589 +#define cimg_for22YV(img,y,v) cimg_for22V(img,v) cimg_for22Y(img,y) 307.6590 +#define cimg_for22ZV(img,z,v) cimg_for22V(img,v) cimg_for22Z(img,z) 307.6591 +#define cimg_for22XYZ(img,x,y,z) cimg_for22Z(img,z) cimg_for22XY(img,x,y) 307.6592 +#define cimg_for22XZV(img,x,z,v) cimg_for22V(img,v) cimg_for22XZ(img,x,z) 307.6593 +#define cimg_for22YZV(img,y,z,v) cimg_for22V(img,v) cimg_for22YZ(img,y,z) 307.6594 +#define cimg_for22XYZV(img,x,y,z,v) cimg_for22V(img,v) cimg_for22XYZ(img,x,y,z) 307.6595 + 307.6596 +#define cimg_for_in22(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.6597 + _p10##i = i-10<0?0:i-10, \ 307.6598 + _p9##i = i-9<0?0:i-9, \ 307.6599 + _p8##i = i-8<0?0:i-8, \ 307.6600 + _p7##i = i-7<0?0:i-7, \ 307.6601 + _p6##i = i-6<0?0:i-6, \ 307.6602 + _p5##i = i-5<0?0:i-5, \ 307.6603 + _p4##i = i-4<0?0:i-4, \ 307.6604 + _p3##i = i-3<0?0:i-3, \ 307.6605 + _p2##i = i-2<0?0:i-2, \ 307.6606 + _p1##i = i-1<0?0:i-1, \ 307.6607 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.6608 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.6609 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.6610 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.6611 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.6612 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.6613 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.6614 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.6615 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9, \ 307.6616 + _n10##i = i+10>=(int)(bound)?(int)(bound)-1:i+10, \ 307.6617 + _n11##i = i+11>=(int)(bound)?(int)(bound)-1:i+11; \ 307.6618 + i<=(int)(i1) && (_n11##i<(int)(bound) || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.6619 + i==(_n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.6620 + _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.6621 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i) 307.6622 + 307.6623 +#define cimg_for_in22X(img,x0,x1,x) cimg_for_in22((img).width,x0,x1,x) 307.6624 +#define cimg_for_in22Y(img,y0,y1,y) cimg_for_in22((img).height,y0,y1,y) 307.6625 +#define cimg_for_in22Z(img,z0,z1,z) cimg_for_in22((img).depth,z0,z1,z) 307.6626 +#define cimg_for_in22V(img,v0,v1,v) cimg_for_in22((img).dim,v0,v1,v) 307.6627 +#define cimg_for_in22XY(img,x0,y0,x1,y1,x,y) cimg_for_in22Y(img,y0,y1,y) cimg_for_in22X(img,x0,x1,x) 307.6628 +#define cimg_for_in22XZ(img,x0,z0,x1,z1,x,z) cimg_for_in22Z(img,z0,z1,z) cimg_for_in22X(img,x0,x1,x) 307.6629 +#define cimg_for_in22XV(img,x0,v0,x1,v1,x,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22X(img,x0,x1,x) 307.6630 +#define cimg_for_in22YZ(img,y0,z0,y1,z1,y,z) cimg_for_in22Z(img,z0,z1,z) cimg_for_in22Y(img,y0,y1,y) 307.6631 +#define cimg_for_in22YV(img,y0,v0,y1,v1,y,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22Y(img,y0,y1,y) 307.6632 +#define cimg_for_in22ZV(img,z0,v0,z1,v1,z,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22Z(img,z0,z1,z) 307.6633 +#define cimg_for_in22XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in22Z(img,z0,z1,z) cimg_for_in22XY(img,x0,y0,x1,y1,x,y) 307.6634 +#define cimg_for_in22XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22XZ(img,x0,y0,x1,y1,x,z) 307.6635 +#define cimg_for_in22YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22YZ(img,y0,z0,y1,z1,y,z) 307.6636 +#define cimg_for_in22XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in22V(img,v0,v1,v) cimg_for_in22XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.6637 + 307.6638 +#define cimg_for22x22(img,x,y,z,v,I) \ 307.6639 + cimg_for22((img).height,y) for (int x = 0, \ 307.6640 + _p10##x = 0, _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.6641 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.6642 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.6643 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.6644 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.6645 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.6646 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.6647 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.6648 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.6649 + _n9##x = 9>=((img).width)?(int)((img).width)-1:9, \ 307.6650 + _n10##x = 10>=((img).width)?(int)((img).width)-1:10, \ 307.6651 + _n11##x = (int)( \ 307.6652 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = I[10] = (img)(0,_p10##y,z,v)), \ 307.6653 + (I[22] = I[23] = I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = I[30] = I[31] = I[32] = (img)(0,_p9##y,z,v)), \ 307.6654 + (I[44] = I[45] = I[46] = I[47] = I[48] = I[49] = I[50] = I[51] = I[52] = I[53] = I[54] = (img)(0,_p8##y,z,v)), \ 307.6655 + (I[66] = I[67] = I[68] = I[69] = I[70] = I[71] = I[72] = I[73] = I[74] = I[75] = I[76] = (img)(0,_p7##y,z,v)), \ 307.6656 + (I[88] = I[89] = I[90] = I[91] = I[92] = I[93] = I[94] = I[95] = I[96] = I[97] = I[98] = (img)(0,_p6##y,z,v)), \ 307.6657 + (I[110] = I[111] = I[112] = I[113] = I[114] = I[115] = I[116] = I[117] = I[118] = I[119] = I[120] = (img)(0,_p5##y,z,v)), \ 307.6658 + (I[132] = I[133] = I[134] = I[135] = I[136] = I[137] = I[138] = I[139] = I[140] = I[141] = I[142] = (img)(0,_p4##y,z,v)), \ 307.6659 + (I[154] = I[155] = I[156] = I[157] = I[158] = I[159] = I[160] = I[161] = I[162] = I[163] = I[164] = (img)(0,_p3##y,z,v)), \ 307.6660 + (I[176] = I[177] = I[178] = I[179] = I[180] = I[181] = I[182] = I[183] = I[184] = I[185] = I[186] = (img)(0,_p2##y,z,v)), \ 307.6661 + (I[198] = I[199] = I[200] = I[201] = I[202] = I[203] = I[204] = I[205] = I[206] = I[207] = I[208] = (img)(0,_p1##y,z,v)), \ 307.6662 + (I[220] = I[221] = I[222] = I[223] = I[224] = I[225] = I[226] = I[227] = I[228] = I[229] = I[230] = (img)(0,y,z,v)), \ 307.6663 + (I[242] = I[243] = I[244] = I[245] = I[246] = I[247] = I[248] = I[249] = I[250] = I[251] = I[252] = (img)(0,_n1##y,z,v)), \ 307.6664 + (I[264] = I[265] = I[266] = I[267] = I[268] = I[269] = I[270] = I[271] = I[272] = I[273] = I[274] = (img)(0,_n2##y,z,v)), \ 307.6665 + (I[286] = I[287] = I[288] = I[289] = I[290] = I[291] = I[292] = I[293] = I[294] = I[295] = I[296] = (img)(0,_n3##y,z,v)), \ 307.6666 + (I[308] = I[309] = I[310] = I[311] = I[312] = I[313] = I[314] = I[315] = I[316] = I[317] = I[318] = (img)(0,_n4##y,z,v)), \ 307.6667 + (I[330] = I[331] = I[332] = I[333] = I[334] = I[335] = I[336] = I[337] = I[338] = I[339] = I[340] = (img)(0,_n5##y,z,v)), \ 307.6668 + (I[352] = I[353] = I[354] = I[355] = I[356] = I[357] = I[358] = I[359] = I[360] = I[361] = I[362] = (img)(0,_n6##y,z,v)), \ 307.6669 + (I[374] = I[375] = I[376] = I[377] = I[378] = I[379] = I[380] = I[381] = I[382] = I[383] = I[384] = (img)(0,_n7##y,z,v)), \ 307.6670 + (I[396] = I[397] = I[398] = I[399] = I[400] = I[401] = I[402] = I[403] = I[404] = I[405] = I[406] = (img)(0,_n8##y,z,v)), \ 307.6671 + (I[418] = I[419] = I[420] = I[421] = I[422] = I[423] = I[424] = I[425] = I[426] = I[427] = I[428] = (img)(0,_n9##y,z,v)), \ 307.6672 + (I[440] = I[441] = I[442] = I[443] = I[444] = I[445] = I[446] = I[447] = I[448] = I[449] = I[450] = (img)(0,_n10##y,z,v)), \ 307.6673 + (I[462] = I[463] = I[464] = I[465] = I[466] = I[467] = I[468] = I[469] = I[470] = I[471] = I[472] = (img)(0,_n11##y,z,v)), \ 307.6674 + (I[11] = (img)(_n1##x,_p10##y,z,v)), \ 307.6675 + (I[33] = (img)(_n1##x,_p9##y,z,v)), \ 307.6676 + (I[55] = (img)(_n1##x,_p8##y,z,v)), \ 307.6677 + (I[77] = (img)(_n1##x,_p7##y,z,v)), \ 307.6678 + (I[99] = (img)(_n1##x,_p6##y,z,v)), \ 307.6679 + (I[121] = (img)(_n1##x,_p5##y,z,v)), \ 307.6680 + (I[143] = (img)(_n1##x,_p4##y,z,v)), \ 307.6681 + (I[165] = (img)(_n1##x,_p3##y,z,v)), \ 307.6682 + (I[187] = (img)(_n1##x,_p2##y,z,v)), \ 307.6683 + (I[209] = (img)(_n1##x,_p1##y,z,v)), \ 307.6684 + (I[231] = (img)(_n1##x,y,z,v)), \ 307.6685 + (I[253] = (img)(_n1##x,_n1##y,z,v)), \ 307.6686 + (I[275] = (img)(_n1##x,_n2##y,z,v)), \ 307.6687 + (I[297] = (img)(_n1##x,_n3##y,z,v)), \ 307.6688 + (I[319] = (img)(_n1##x,_n4##y,z,v)), \ 307.6689 + (I[341] = (img)(_n1##x,_n5##y,z,v)), \ 307.6690 + (I[363] = (img)(_n1##x,_n6##y,z,v)), \ 307.6691 + (I[385] = (img)(_n1##x,_n7##y,z,v)), \ 307.6692 + (I[407] = (img)(_n1##x,_n8##y,z,v)), \ 307.6693 + (I[429] = (img)(_n1##x,_n9##y,z,v)), \ 307.6694 + (I[451] = (img)(_n1##x,_n10##y,z,v)), \ 307.6695 + (I[473] = (img)(_n1##x,_n11##y,z,v)), \ 307.6696 + (I[12] = (img)(_n2##x,_p10##y,z,v)), \ 307.6697 + (I[34] = (img)(_n2##x,_p9##y,z,v)), \ 307.6698 + (I[56] = (img)(_n2##x,_p8##y,z,v)), \ 307.6699 + (I[78] = (img)(_n2##x,_p7##y,z,v)), \ 307.6700 + (I[100] = (img)(_n2##x,_p6##y,z,v)), \ 307.6701 + (I[122] = (img)(_n2##x,_p5##y,z,v)), \ 307.6702 + (I[144] = (img)(_n2##x,_p4##y,z,v)), \ 307.6703 + (I[166] = (img)(_n2##x,_p3##y,z,v)), \ 307.6704 + (I[188] = (img)(_n2##x,_p2##y,z,v)), \ 307.6705 + (I[210] = (img)(_n2##x,_p1##y,z,v)), \ 307.6706 + (I[232] = (img)(_n2##x,y,z,v)), \ 307.6707 + (I[254] = (img)(_n2##x,_n1##y,z,v)), \ 307.6708 + (I[276] = (img)(_n2##x,_n2##y,z,v)), \ 307.6709 + (I[298] = (img)(_n2##x,_n3##y,z,v)), \ 307.6710 + (I[320] = (img)(_n2##x,_n4##y,z,v)), \ 307.6711 + (I[342] = (img)(_n2##x,_n5##y,z,v)), \ 307.6712 + (I[364] = (img)(_n2##x,_n6##y,z,v)), \ 307.6713 + (I[386] = (img)(_n2##x,_n7##y,z,v)), \ 307.6714 + (I[408] = (img)(_n2##x,_n8##y,z,v)), \ 307.6715 + (I[430] = (img)(_n2##x,_n9##y,z,v)), \ 307.6716 + (I[452] = (img)(_n2##x,_n10##y,z,v)), \ 307.6717 + (I[474] = (img)(_n2##x,_n11##y,z,v)), \ 307.6718 + (I[13] = (img)(_n3##x,_p10##y,z,v)), \ 307.6719 + (I[35] = (img)(_n3##x,_p9##y,z,v)), \ 307.6720 + (I[57] = (img)(_n3##x,_p8##y,z,v)), \ 307.6721 + (I[79] = (img)(_n3##x,_p7##y,z,v)), \ 307.6722 + (I[101] = (img)(_n3##x,_p6##y,z,v)), \ 307.6723 + (I[123] = (img)(_n3##x,_p5##y,z,v)), \ 307.6724 + (I[145] = (img)(_n3##x,_p4##y,z,v)), \ 307.6725 + (I[167] = (img)(_n3##x,_p3##y,z,v)), \ 307.6726 + (I[189] = (img)(_n3##x,_p2##y,z,v)), \ 307.6727 + (I[211] = (img)(_n3##x,_p1##y,z,v)), \ 307.6728 + (I[233] = (img)(_n3##x,y,z,v)), \ 307.6729 + (I[255] = (img)(_n3##x,_n1##y,z,v)), \ 307.6730 + (I[277] = (img)(_n3##x,_n2##y,z,v)), \ 307.6731 + (I[299] = (img)(_n3##x,_n3##y,z,v)), \ 307.6732 + (I[321] = (img)(_n3##x,_n4##y,z,v)), \ 307.6733 + (I[343] = (img)(_n3##x,_n5##y,z,v)), \ 307.6734 + (I[365] = (img)(_n3##x,_n6##y,z,v)), \ 307.6735 + (I[387] = (img)(_n3##x,_n7##y,z,v)), \ 307.6736 + (I[409] = (img)(_n3##x,_n8##y,z,v)), \ 307.6737 + (I[431] = (img)(_n3##x,_n9##y,z,v)), \ 307.6738 + (I[453] = (img)(_n3##x,_n10##y,z,v)), \ 307.6739 + (I[475] = (img)(_n3##x,_n11##y,z,v)), \ 307.6740 + (I[14] = (img)(_n4##x,_p10##y,z,v)), \ 307.6741 + (I[36] = (img)(_n4##x,_p9##y,z,v)), \ 307.6742 + (I[58] = (img)(_n4##x,_p8##y,z,v)), \ 307.6743 + (I[80] = (img)(_n4##x,_p7##y,z,v)), \ 307.6744 + (I[102] = (img)(_n4##x,_p6##y,z,v)), \ 307.6745 + (I[124] = (img)(_n4##x,_p5##y,z,v)), \ 307.6746 + (I[146] = (img)(_n4##x,_p4##y,z,v)), \ 307.6747 + (I[168] = (img)(_n4##x,_p3##y,z,v)), \ 307.6748 + (I[190] = (img)(_n4##x,_p2##y,z,v)), \ 307.6749 + (I[212] = (img)(_n4##x,_p1##y,z,v)), \ 307.6750 + (I[234] = (img)(_n4##x,y,z,v)), \ 307.6751 + (I[256] = (img)(_n4##x,_n1##y,z,v)), \ 307.6752 + (I[278] = (img)(_n4##x,_n2##y,z,v)), \ 307.6753 + (I[300] = (img)(_n4##x,_n3##y,z,v)), \ 307.6754 + (I[322] = (img)(_n4##x,_n4##y,z,v)), \ 307.6755 + (I[344] = (img)(_n4##x,_n5##y,z,v)), \ 307.6756 + (I[366] = (img)(_n4##x,_n6##y,z,v)), \ 307.6757 + (I[388] = (img)(_n4##x,_n7##y,z,v)), \ 307.6758 + (I[410] = (img)(_n4##x,_n8##y,z,v)), \ 307.6759 + (I[432] = (img)(_n4##x,_n9##y,z,v)), \ 307.6760 + (I[454] = (img)(_n4##x,_n10##y,z,v)), \ 307.6761 + (I[476] = (img)(_n4##x,_n11##y,z,v)), \ 307.6762 + (I[15] = (img)(_n5##x,_p10##y,z,v)), \ 307.6763 + (I[37] = (img)(_n5##x,_p9##y,z,v)), \ 307.6764 + (I[59] = (img)(_n5##x,_p8##y,z,v)), \ 307.6765 + (I[81] = (img)(_n5##x,_p7##y,z,v)), \ 307.6766 + (I[103] = (img)(_n5##x,_p6##y,z,v)), \ 307.6767 + (I[125] = (img)(_n5##x,_p5##y,z,v)), \ 307.6768 + (I[147] = (img)(_n5##x,_p4##y,z,v)), \ 307.6769 + (I[169] = (img)(_n5##x,_p3##y,z,v)), \ 307.6770 + (I[191] = (img)(_n5##x,_p2##y,z,v)), \ 307.6771 + (I[213] = (img)(_n5##x,_p1##y,z,v)), \ 307.6772 + (I[235] = (img)(_n5##x,y,z,v)), \ 307.6773 + (I[257] = (img)(_n5##x,_n1##y,z,v)), \ 307.6774 + (I[279] = (img)(_n5##x,_n2##y,z,v)), \ 307.6775 + (I[301] = (img)(_n5##x,_n3##y,z,v)), \ 307.6776 + (I[323] = (img)(_n5##x,_n4##y,z,v)), \ 307.6777 + (I[345] = (img)(_n5##x,_n5##y,z,v)), \ 307.6778 + (I[367] = (img)(_n5##x,_n6##y,z,v)), \ 307.6779 + (I[389] = (img)(_n5##x,_n7##y,z,v)), \ 307.6780 + (I[411] = (img)(_n5##x,_n8##y,z,v)), \ 307.6781 + (I[433] = (img)(_n5##x,_n9##y,z,v)), \ 307.6782 + (I[455] = (img)(_n5##x,_n10##y,z,v)), \ 307.6783 + (I[477] = (img)(_n5##x,_n11##y,z,v)), \ 307.6784 + (I[16] = (img)(_n6##x,_p10##y,z,v)), \ 307.6785 + (I[38] = (img)(_n6##x,_p9##y,z,v)), \ 307.6786 + (I[60] = (img)(_n6##x,_p8##y,z,v)), \ 307.6787 + (I[82] = (img)(_n6##x,_p7##y,z,v)), \ 307.6788 + (I[104] = (img)(_n6##x,_p6##y,z,v)), \ 307.6789 + (I[126] = (img)(_n6##x,_p5##y,z,v)), \ 307.6790 + (I[148] = (img)(_n6##x,_p4##y,z,v)), \ 307.6791 + (I[170] = (img)(_n6##x,_p3##y,z,v)), \ 307.6792 + (I[192] = (img)(_n6##x,_p2##y,z,v)), \ 307.6793 + (I[214] = (img)(_n6##x,_p1##y,z,v)), \ 307.6794 + (I[236] = (img)(_n6##x,y,z,v)), \ 307.6795 + (I[258] = (img)(_n6##x,_n1##y,z,v)), \ 307.6796 + (I[280] = (img)(_n6##x,_n2##y,z,v)), \ 307.6797 + (I[302] = (img)(_n6##x,_n3##y,z,v)), \ 307.6798 + (I[324] = (img)(_n6##x,_n4##y,z,v)), \ 307.6799 + (I[346] = (img)(_n6##x,_n5##y,z,v)), \ 307.6800 + (I[368] = (img)(_n6##x,_n6##y,z,v)), \ 307.6801 + (I[390] = (img)(_n6##x,_n7##y,z,v)), \ 307.6802 + (I[412] = (img)(_n6##x,_n8##y,z,v)), \ 307.6803 + (I[434] = (img)(_n6##x,_n9##y,z,v)), \ 307.6804 + (I[456] = (img)(_n6##x,_n10##y,z,v)), \ 307.6805 + (I[478] = (img)(_n6##x,_n11##y,z,v)), \ 307.6806 + (I[17] = (img)(_n7##x,_p10##y,z,v)), \ 307.6807 + (I[39] = (img)(_n7##x,_p9##y,z,v)), \ 307.6808 + (I[61] = (img)(_n7##x,_p8##y,z,v)), \ 307.6809 + (I[83] = (img)(_n7##x,_p7##y,z,v)), \ 307.6810 + (I[105] = (img)(_n7##x,_p6##y,z,v)), \ 307.6811 + (I[127] = (img)(_n7##x,_p5##y,z,v)), \ 307.6812 + (I[149] = (img)(_n7##x,_p4##y,z,v)), \ 307.6813 + (I[171] = (img)(_n7##x,_p3##y,z,v)), \ 307.6814 + (I[193] = (img)(_n7##x,_p2##y,z,v)), \ 307.6815 + (I[215] = (img)(_n7##x,_p1##y,z,v)), \ 307.6816 + (I[237] = (img)(_n7##x,y,z,v)), \ 307.6817 + (I[259] = (img)(_n7##x,_n1##y,z,v)), \ 307.6818 + (I[281] = (img)(_n7##x,_n2##y,z,v)), \ 307.6819 + (I[303] = (img)(_n7##x,_n3##y,z,v)), \ 307.6820 + (I[325] = (img)(_n7##x,_n4##y,z,v)), \ 307.6821 + (I[347] = (img)(_n7##x,_n5##y,z,v)), \ 307.6822 + (I[369] = (img)(_n7##x,_n6##y,z,v)), \ 307.6823 + (I[391] = (img)(_n7##x,_n7##y,z,v)), \ 307.6824 + (I[413] = (img)(_n7##x,_n8##y,z,v)), \ 307.6825 + (I[435] = (img)(_n7##x,_n9##y,z,v)), \ 307.6826 + (I[457] = (img)(_n7##x,_n10##y,z,v)), \ 307.6827 + (I[479] = (img)(_n7##x,_n11##y,z,v)), \ 307.6828 + (I[18] = (img)(_n8##x,_p10##y,z,v)), \ 307.6829 + (I[40] = (img)(_n8##x,_p9##y,z,v)), \ 307.6830 + (I[62] = (img)(_n8##x,_p8##y,z,v)), \ 307.6831 + (I[84] = (img)(_n8##x,_p7##y,z,v)), \ 307.6832 + (I[106] = (img)(_n8##x,_p6##y,z,v)), \ 307.6833 + (I[128] = (img)(_n8##x,_p5##y,z,v)), \ 307.6834 + (I[150] = (img)(_n8##x,_p4##y,z,v)), \ 307.6835 + (I[172] = (img)(_n8##x,_p3##y,z,v)), \ 307.6836 + (I[194] = (img)(_n8##x,_p2##y,z,v)), \ 307.6837 + (I[216] = (img)(_n8##x,_p1##y,z,v)), \ 307.6838 + (I[238] = (img)(_n8##x,y,z,v)), \ 307.6839 + (I[260] = (img)(_n8##x,_n1##y,z,v)), \ 307.6840 + (I[282] = (img)(_n8##x,_n2##y,z,v)), \ 307.6841 + (I[304] = (img)(_n8##x,_n3##y,z,v)), \ 307.6842 + (I[326] = (img)(_n8##x,_n4##y,z,v)), \ 307.6843 + (I[348] = (img)(_n8##x,_n5##y,z,v)), \ 307.6844 + (I[370] = (img)(_n8##x,_n6##y,z,v)), \ 307.6845 + (I[392] = (img)(_n8##x,_n7##y,z,v)), \ 307.6846 + (I[414] = (img)(_n8##x,_n8##y,z,v)), \ 307.6847 + (I[436] = (img)(_n8##x,_n9##y,z,v)), \ 307.6848 + (I[458] = (img)(_n8##x,_n10##y,z,v)), \ 307.6849 + (I[480] = (img)(_n8##x,_n11##y,z,v)), \ 307.6850 + (I[19] = (img)(_n9##x,_p10##y,z,v)), \ 307.6851 + (I[41] = (img)(_n9##x,_p9##y,z,v)), \ 307.6852 + (I[63] = (img)(_n9##x,_p8##y,z,v)), \ 307.6853 + (I[85] = (img)(_n9##x,_p7##y,z,v)), \ 307.6854 + (I[107] = (img)(_n9##x,_p6##y,z,v)), \ 307.6855 + (I[129] = (img)(_n9##x,_p5##y,z,v)), \ 307.6856 + (I[151] = (img)(_n9##x,_p4##y,z,v)), \ 307.6857 + (I[173] = (img)(_n9##x,_p3##y,z,v)), \ 307.6858 + (I[195] = (img)(_n9##x,_p2##y,z,v)), \ 307.6859 + (I[217] = (img)(_n9##x,_p1##y,z,v)), \ 307.6860 + (I[239] = (img)(_n9##x,y,z,v)), \ 307.6861 + (I[261] = (img)(_n9##x,_n1##y,z,v)), \ 307.6862 + (I[283] = (img)(_n9##x,_n2##y,z,v)), \ 307.6863 + (I[305] = (img)(_n9##x,_n3##y,z,v)), \ 307.6864 + (I[327] = (img)(_n9##x,_n4##y,z,v)), \ 307.6865 + (I[349] = (img)(_n9##x,_n5##y,z,v)), \ 307.6866 + (I[371] = (img)(_n9##x,_n6##y,z,v)), \ 307.6867 + (I[393] = (img)(_n9##x,_n7##y,z,v)), \ 307.6868 + (I[415] = (img)(_n9##x,_n8##y,z,v)), \ 307.6869 + (I[437] = (img)(_n9##x,_n9##y,z,v)), \ 307.6870 + (I[459] = (img)(_n9##x,_n10##y,z,v)), \ 307.6871 + (I[481] = (img)(_n9##x,_n11##y,z,v)), \ 307.6872 + (I[20] = (img)(_n10##x,_p10##y,z,v)), \ 307.6873 + (I[42] = (img)(_n10##x,_p9##y,z,v)), \ 307.6874 + (I[64] = (img)(_n10##x,_p8##y,z,v)), \ 307.6875 + (I[86] = (img)(_n10##x,_p7##y,z,v)), \ 307.6876 + (I[108] = (img)(_n10##x,_p6##y,z,v)), \ 307.6877 + (I[130] = (img)(_n10##x,_p5##y,z,v)), \ 307.6878 + (I[152] = (img)(_n10##x,_p4##y,z,v)), \ 307.6879 + (I[174] = (img)(_n10##x,_p3##y,z,v)), \ 307.6880 + (I[196] = (img)(_n10##x,_p2##y,z,v)), \ 307.6881 + (I[218] = (img)(_n10##x,_p1##y,z,v)), \ 307.6882 + (I[240] = (img)(_n10##x,y,z,v)), \ 307.6883 + (I[262] = (img)(_n10##x,_n1##y,z,v)), \ 307.6884 + (I[284] = (img)(_n10##x,_n2##y,z,v)), \ 307.6885 + (I[306] = (img)(_n10##x,_n3##y,z,v)), \ 307.6886 + (I[328] = (img)(_n10##x,_n4##y,z,v)), \ 307.6887 + (I[350] = (img)(_n10##x,_n5##y,z,v)), \ 307.6888 + (I[372] = (img)(_n10##x,_n6##y,z,v)), \ 307.6889 + (I[394] = (img)(_n10##x,_n7##y,z,v)), \ 307.6890 + (I[416] = (img)(_n10##x,_n8##y,z,v)), \ 307.6891 + (I[438] = (img)(_n10##x,_n9##y,z,v)), \ 307.6892 + (I[460] = (img)(_n10##x,_n10##y,z,v)), \ 307.6893 + (I[482] = (img)(_n10##x,_n11##y,z,v)), \ 307.6894 + 11>=((img).width)?(int)((img).width)-1:11); \ 307.6895 + (_n11##x<(int)((img).width) && ( \ 307.6896 + (I[21] = (img)(_n11##x,_p10##y,z,v)), \ 307.6897 + (I[43] = (img)(_n11##x,_p9##y,z,v)), \ 307.6898 + (I[65] = (img)(_n11##x,_p8##y,z,v)), \ 307.6899 + (I[87] = (img)(_n11##x,_p7##y,z,v)), \ 307.6900 + (I[109] = (img)(_n11##x,_p6##y,z,v)), \ 307.6901 + (I[131] = (img)(_n11##x,_p5##y,z,v)), \ 307.6902 + (I[153] = (img)(_n11##x,_p4##y,z,v)), \ 307.6903 + (I[175] = (img)(_n11##x,_p3##y,z,v)), \ 307.6904 + (I[197] = (img)(_n11##x,_p2##y,z,v)), \ 307.6905 + (I[219] = (img)(_n11##x,_p1##y,z,v)), \ 307.6906 + (I[241] = (img)(_n11##x,y,z,v)), \ 307.6907 + (I[263] = (img)(_n11##x,_n1##y,z,v)), \ 307.6908 + (I[285] = (img)(_n11##x,_n2##y,z,v)), \ 307.6909 + (I[307] = (img)(_n11##x,_n3##y,z,v)), \ 307.6910 + (I[329] = (img)(_n11##x,_n4##y,z,v)), \ 307.6911 + (I[351] = (img)(_n11##x,_n5##y,z,v)), \ 307.6912 + (I[373] = (img)(_n11##x,_n6##y,z,v)), \ 307.6913 + (I[395] = (img)(_n11##x,_n7##y,z,v)), \ 307.6914 + (I[417] = (img)(_n11##x,_n8##y,z,v)), \ 307.6915 + (I[439] = (img)(_n11##x,_n9##y,z,v)), \ 307.6916 + (I[461] = (img)(_n11##x,_n10##y,z,v)), \ 307.6917 + (I[483] = (img)(_n11##x,_n11##y,z,v)),1)) || \ 307.6918 + _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.6919 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], \ 307.6920 + I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.6921 + I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.6922 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.6923 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.6924 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.6925 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.6926 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.6927 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.6928 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], \ 307.6929 + I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], \ 307.6930 + I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.6931 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], \ 307.6932 + I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], \ 307.6933 + I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], \ 307.6934 + I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], \ 307.6935 + I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], \ 307.6936 + I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], \ 307.6937 + I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], \ 307.6938 + I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], \ 307.6939 + I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], I[455] = I[456], I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], \ 307.6940 + I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], I[479] = I[480], I[480] = I[481], I[481] = I[482], I[482] = I[483], \ 307.6941 + _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x) 307.6942 + 307.6943 +#define cimg_for_in22x22(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.6944 + cimg_for_in22((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.6945 + _p10##x = x-10<0?0:x-10, \ 307.6946 + _p9##x = x-9<0?0:x-9, \ 307.6947 + _p8##x = x-8<0?0:x-8, \ 307.6948 + _p7##x = x-7<0?0:x-7, \ 307.6949 + _p6##x = x-6<0?0:x-6, \ 307.6950 + _p5##x = x-5<0?0:x-5, \ 307.6951 + _p4##x = x-4<0?0:x-4, \ 307.6952 + _p3##x = x-3<0?0:x-3, \ 307.6953 + _p2##x = x-2<0?0:x-2, \ 307.6954 + _p1##x = x-1<0?0:x-1, \ 307.6955 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.6956 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.6957 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.6958 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.6959 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.6960 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.6961 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.6962 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.6963 + _n9##x = x+9>=(int)((img).width)?(int)((img).width)-1:x+9, \ 307.6964 + _n10##x = x+10>=(int)((img).width)?(int)((img).width)-1:x+10, \ 307.6965 + _n11##x = (int)( \ 307.6966 + (I[0] = (img)(_p10##x,_p10##y,z,v)), \ 307.6967 + (I[22] = (img)(_p10##x,_p9##y,z,v)), \ 307.6968 + (I[44] = (img)(_p10##x,_p8##y,z,v)), \ 307.6969 + (I[66] = (img)(_p10##x,_p7##y,z,v)), \ 307.6970 + (I[88] = (img)(_p10##x,_p6##y,z,v)), \ 307.6971 + (I[110] = (img)(_p10##x,_p5##y,z,v)), \ 307.6972 + (I[132] = (img)(_p10##x,_p4##y,z,v)), \ 307.6973 + (I[154] = (img)(_p10##x,_p3##y,z,v)), \ 307.6974 + (I[176] = (img)(_p10##x,_p2##y,z,v)), \ 307.6975 + (I[198] = (img)(_p10##x,_p1##y,z,v)), \ 307.6976 + (I[220] = (img)(_p10##x,y,z,v)), \ 307.6977 + (I[242] = (img)(_p10##x,_n1##y,z,v)), \ 307.6978 + (I[264] = (img)(_p10##x,_n2##y,z,v)), \ 307.6979 + (I[286] = (img)(_p10##x,_n3##y,z,v)), \ 307.6980 + (I[308] = (img)(_p10##x,_n4##y,z,v)), \ 307.6981 + (I[330] = (img)(_p10##x,_n5##y,z,v)), \ 307.6982 + (I[352] = (img)(_p10##x,_n6##y,z,v)), \ 307.6983 + (I[374] = (img)(_p10##x,_n7##y,z,v)), \ 307.6984 + (I[396] = (img)(_p10##x,_n8##y,z,v)), \ 307.6985 + (I[418] = (img)(_p10##x,_n9##y,z,v)), \ 307.6986 + (I[440] = (img)(_p10##x,_n10##y,z,v)), \ 307.6987 + (I[462] = (img)(_p10##x,_n11##y,z,v)), \ 307.6988 + (I[1] = (img)(_p9##x,_p10##y,z,v)), \ 307.6989 + (I[23] = (img)(_p9##x,_p9##y,z,v)), \ 307.6990 + (I[45] = (img)(_p9##x,_p8##y,z,v)), \ 307.6991 + (I[67] = (img)(_p9##x,_p7##y,z,v)), \ 307.6992 + (I[89] = (img)(_p9##x,_p6##y,z,v)), \ 307.6993 + (I[111] = (img)(_p9##x,_p5##y,z,v)), \ 307.6994 + (I[133] = (img)(_p9##x,_p4##y,z,v)), \ 307.6995 + (I[155] = (img)(_p9##x,_p3##y,z,v)), \ 307.6996 + (I[177] = (img)(_p9##x,_p2##y,z,v)), \ 307.6997 + (I[199] = (img)(_p9##x,_p1##y,z,v)), \ 307.6998 + (I[221] = (img)(_p9##x,y,z,v)), \ 307.6999 + (I[243] = (img)(_p9##x,_n1##y,z,v)), \ 307.7000 + (I[265] = (img)(_p9##x,_n2##y,z,v)), \ 307.7001 + (I[287] = (img)(_p9##x,_n3##y,z,v)), \ 307.7002 + (I[309] = (img)(_p9##x,_n4##y,z,v)), \ 307.7003 + (I[331] = (img)(_p9##x,_n5##y,z,v)), \ 307.7004 + (I[353] = (img)(_p9##x,_n6##y,z,v)), \ 307.7005 + (I[375] = (img)(_p9##x,_n7##y,z,v)), \ 307.7006 + (I[397] = (img)(_p9##x,_n8##y,z,v)), \ 307.7007 + (I[419] = (img)(_p9##x,_n9##y,z,v)), \ 307.7008 + (I[441] = (img)(_p9##x,_n10##y,z,v)), \ 307.7009 + (I[463] = (img)(_p9##x,_n11##y,z,v)), \ 307.7010 + (I[2] = (img)(_p8##x,_p10##y,z,v)), \ 307.7011 + (I[24] = (img)(_p8##x,_p9##y,z,v)), \ 307.7012 + (I[46] = (img)(_p8##x,_p8##y,z,v)), \ 307.7013 + (I[68] = (img)(_p8##x,_p7##y,z,v)), \ 307.7014 + (I[90] = (img)(_p8##x,_p6##y,z,v)), \ 307.7015 + (I[112] = (img)(_p8##x,_p5##y,z,v)), \ 307.7016 + (I[134] = (img)(_p8##x,_p4##y,z,v)), \ 307.7017 + (I[156] = (img)(_p8##x,_p3##y,z,v)), \ 307.7018 + (I[178] = (img)(_p8##x,_p2##y,z,v)), \ 307.7019 + (I[200] = (img)(_p8##x,_p1##y,z,v)), \ 307.7020 + (I[222] = (img)(_p8##x,y,z,v)), \ 307.7021 + (I[244] = (img)(_p8##x,_n1##y,z,v)), \ 307.7022 + (I[266] = (img)(_p8##x,_n2##y,z,v)), \ 307.7023 + (I[288] = (img)(_p8##x,_n3##y,z,v)), \ 307.7024 + (I[310] = (img)(_p8##x,_n4##y,z,v)), \ 307.7025 + (I[332] = (img)(_p8##x,_n5##y,z,v)), \ 307.7026 + (I[354] = (img)(_p8##x,_n6##y,z,v)), \ 307.7027 + (I[376] = (img)(_p8##x,_n7##y,z,v)), \ 307.7028 + (I[398] = (img)(_p8##x,_n8##y,z,v)), \ 307.7029 + (I[420] = (img)(_p8##x,_n9##y,z,v)), \ 307.7030 + (I[442] = (img)(_p8##x,_n10##y,z,v)), \ 307.7031 + (I[464] = (img)(_p8##x,_n11##y,z,v)), \ 307.7032 + (I[3] = (img)(_p7##x,_p10##y,z,v)), \ 307.7033 + (I[25] = (img)(_p7##x,_p9##y,z,v)), \ 307.7034 + (I[47] = (img)(_p7##x,_p8##y,z,v)), \ 307.7035 + (I[69] = (img)(_p7##x,_p7##y,z,v)), \ 307.7036 + (I[91] = (img)(_p7##x,_p6##y,z,v)), \ 307.7037 + (I[113] = (img)(_p7##x,_p5##y,z,v)), \ 307.7038 + (I[135] = (img)(_p7##x,_p4##y,z,v)), \ 307.7039 + (I[157] = (img)(_p7##x,_p3##y,z,v)), \ 307.7040 + (I[179] = (img)(_p7##x,_p2##y,z,v)), \ 307.7041 + (I[201] = (img)(_p7##x,_p1##y,z,v)), \ 307.7042 + (I[223] = (img)(_p7##x,y,z,v)), \ 307.7043 + (I[245] = (img)(_p7##x,_n1##y,z,v)), \ 307.7044 + (I[267] = (img)(_p7##x,_n2##y,z,v)), \ 307.7045 + (I[289] = (img)(_p7##x,_n3##y,z,v)), \ 307.7046 + (I[311] = (img)(_p7##x,_n4##y,z,v)), \ 307.7047 + (I[333] = (img)(_p7##x,_n5##y,z,v)), \ 307.7048 + (I[355] = (img)(_p7##x,_n6##y,z,v)), \ 307.7049 + (I[377] = (img)(_p7##x,_n7##y,z,v)), \ 307.7050 + (I[399] = (img)(_p7##x,_n8##y,z,v)), \ 307.7051 + (I[421] = (img)(_p7##x,_n9##y,z,v)), \ 307.7052 + (I[443] = (img)(_p7##x,_n10##y,z,v)), \ 307.7053 + (I[465] = (img)(_p7##x,_n11##y,z,v)), \ 307.7054 + (I[4] = (img)(_p6##x,_p10##y,z,v)), \ 307.7055 + (I[26] = (img)(_p6##x,_p9##y,z,v)), \ 307.7056 + (I[48] = (img)(_p6##x,_p8##y,z,v)), \ 307.7057 + (I[70] = (img)(_p6##x,_p7##y,z,v)), \ 307.7058 + (I[92] = (img)(_p6##x,_p6##y,z,v)), \ 307.7059 + (I[114] = (img)(_p6##x,_p5##y,z,v)), \ 307.7060 + (I[136] = (img)(_p6##x,_p4##y,z,v)), \ 307.7061 + (I[158] = (img)(_p6##x,_p3##y,z,v)), \ 307.7062 + (I[180] = (img)(_p6##x,_p2##y,z,v)), \ 307.7063 + (I[202] = (img)(_p6##x,_p1##y,z,v)), \ 307.7064 + (I[224] = (img)(_p6##x,y,z,v)), \ 307.7065 + (I[246] = (img)(_p6##x,_n1##y,z,v)), \ 307.7066 + (I[268] = (img)(_p6##x,_n2##y,z,v)), \ 307.7067 + (I[290] = (img)(_p6##x,_n3##y,z,v)), \ 307.7068 + (I[312] = (img)(_p6##x,_n4##y,z,v)), \ 307.7069 + (I[334] = (img)(_p6##x,_n5##y,z,v)), \ 307.7070 + (I[356] = (img)(_p6##x,_n6##y,z,v)), \ 307.7071 + (I[378] = (img)(_p6##x,_n7##y,z,v)), \ 307.7072 + (I[400] = (img)(_p6##x,_n8##y,z,v)), \ 307.7073 + (I[422] = (img)(_p6##x,_n9##y,z,v)), \ 307.7074 + (I[444] = (img)(_p6##x,_n10##y,z,v)), \ 307.7075 + (I[466] = (img)(_p6##x,_n11##y,z,v)), \ 307.7076 + (I[5] = (img)(_p5##x,_p10##y,z,v)), \ 307.7077 + (I[27] = (img)(_p5##x,_p9##y,z,v)), \ 307.7078 + (I[49] = (img)(_p5##x,_p8##y,z,v)), \ 307.7079 + (I[71] = (img)(_p5##x,_p7##y,z,v)), \ 307.7080 + (I[93] = (img)(_p5##x,_p6##y,z,v)), \ 307.7081 + (I[115] = (img)(_p5##x,_p5##y,z,v)), \ 307.7082 + (I[137] = (img)(_p5##x,_p4##y,z,v)), \ 307.7083 + (I[159] = (img)(_p5##x,_p3##y,z,v)), \ 307.7084 + (I[181] = (img)(_p5##x,_p2##y,z,v)), \ 307.7085 + (I[203] = (img)(_p5##x,_p1##y,z,v)), \ 307.7086 + (I[225] = (img)(_p5##x,y,z,v)), \ 307.7087 + (I[247] = (img)(_p5##x,_n1##y,z,v)), \ 307.7088 + (I[269] = (img)(_p5##x,_n2##y,z,v)), \ 307.7089 + (I[291] = (img)(_p5##x,_n3##y,z,v)), \ 307.7090 + (I[313] = (img)(_p5##x,_n4##y,z,v)), \ 307.7091 + (I[335] = (img)(_p5##x,_n5##y,z,v)), \ 307.7092 + (I[357] = (img)(_p5##x,_n6##y,z,v)), \ 307.7093 + (I[379] = (img)(_p5##x,_n7##y,z,v)), \ 307.7094 + (I[401] = (img)(_p5##x,_n8##y,z,v)), \ 307.7095 + (I[423] = (img)(_p5##x,_n9##y,z,v)), \ 307.7096 + (I[445] = (img)(_p5##x,_n10##y,z,v)), \ 307.7097 + (I[467] = (img)(_p5##x,_n11##y,z,v)), \ 307.7098 + (I[6] = (img)(_p4##x,_p10##y,z,v)), \ 307.7099 + (I[28] = (img)(_p4##x,_p9##y,z,v)), \ 307.7100 + (I[50] = (img)(_p4##x,_p8##y,z,v)), \ 307.7101 + (I[72] = (img)(_p4##x,_p7##y,z,v)), \ 307.7102 + (I[94] = (img)(_p4##x,_p6##y,z,v)), \ 307.7103 + (I[116] = (img)(_p4##x,_p5##y,z,v)), \ 307.7104 + (I[138] = (img)(_p4##x,_p4##y,z,v)), \ 307.7105 + (I[160] = (img)(_p4##x,_p3##y,z,v)), \ 307.7106 + (I[182] = (img)(_p4##x,_p2##y,z,v)), \ 307.7107 + (I[204] = (img)(_p4##x,_p1##y,z,v)), \ 307.7108 + (I[226] = (img)(_p4##x,y,z,v)), \ 307.7109 + (I[248] = (img)(_p4##x,_n1##y,z,v)), \ 307.7110 + (I[270] = (img)(_p4##x,_n2##y,z,v)), \ 307.7111 + (I[292] = (img)(_p4##x,_n3##y,z,v)), \ 307.7112 + (I[314] = (img)(_p4##x,_n4##y,z,v)), \ 307.7113 + (I[336] = (img)(_p4##x,_n5##y,z,v)), \ 307.7114 + (I[358] = (img)(_p4##x,_n6##y,z,v)), \ 307.7115 + (I[380] = (img)(_p4##x,_n7##y,z,v)), \ 307.7116 + (I[402] = (img)(_p4##x,_n8##y,z,v)), \ 307.7117 + (I[424] = (img)(_p4##x,_n9##y,z,v)), \ 307.7118 + (I[446] = (img)(_p4##x,_n10##y,z,v)), \ 307.7119 + (I[468] = (img)(_p4##x,_n11##y,z,v)), \ 307.7120 + (I[7] = (img)(_p3##x,_p10##y,z,v)), \ 307.7121 + (I[29] = (img)(_p3##x,_p9##y,z,v)), \ 307.7122 + (I[51] = (img)(_p3##x,_p8##y,z,v)), \ 307.7123 + (I[73] = (img)(_p3##x,_p7##y,z,v)), \ 307.7124 + (I[95] = (img)(_p3##x,_p6##y,z,v)), \ 307.7125 + (I[117] = (img)(_p3##x,_p5##y,z,v)), \ 307.7126 + (I[139] = (img)(_p3##x,_p4##y,z,v)), \ 307.7127 + (I[161] = (img)(_p3##x,_p3##y,z,v)), \ 307.7128 + (I[183] = (img)(_p3##x,_p2##y,z,v)), \ 307.7129 + (I[205] = (img)(_p3##x,_p1##y,z,v)), \ 307.7130 + (I[227] = (img)(_p3##x,y,z,v)), \ 307.7131 + (I[249] = (img)(_p3##x,_n1##y,z,v)), \ 307.7132 + (I[271] = (img)(_p3##x,_n2##y,z,v)), \ 307.7133 + (I[293] = (img)(_p3##x,_n3##y,z,v)), \ 307.7134 + (I[315] = (img)(_p3##x,_n4##y,z,v)), \ 307.7135 + (I[337] = (img)(_p3##x,_n5##y,z,v)), \ 307.7136 + (I[359] = (img)(_p3##x,_n6##y,z,v)), \ 307.7137 + (I[381] = (img)(_p3##x,_n7##y,z,v)), \ 307.7138 + (I[403] = (img)(_p3##x,_n8##y,z,v)), \ 307.7139 + (I[425] = (img)(_p3##x,_n9##y,z,v)), \ 307.7140 + (I[447] = (img)(_p3##x,_n10##y,z,v)), \ 307.7141 + (I[469] = (img)(_p3##x,_n11##y,z,v)), \ 307.7142 + (I[8] = (img)(_p2##x,_p10##y,z,v)), \ 307.7143 + (I[30] = (img)(_p2##x,_p9##y,z,v)), \ 307.7144 + (I[52] = (img)(_p2##x,_p8##y,z,v)), \ 307.7145 + (I[74] = (img)(_p2##x,_p7##y,z,v)), \ 307.7146 + (I[96] = (img)(_p2##x,_p6##y,z,v)), \ 307.7147 + (I[118] = (img)(_p2##x,_p5##y,z,v)), \ 307.7148 + (I[140] = (img)(_p2##x,_p4##y,z,v)), \ 307.7149 + (I[162] = (img)(_p2##x,_p3##y,z,v)), \ 307.7150 + (I[184] = (img)(_p2##x,_p2##y,z,v)), \ 307.7151 + (I[206] = (img)(_p2##x,_p1##y,z,v)), \ 307.7152 + (I[228] = (img)(_p2##x,y,z,v)), \ 307.7153 + (I[250] = (img)(_p2##x,_n1##y,z,v)), \ 307.7154 + (I[272] = (img)(_p2##x,_n2##y,z,v)), \ 307.7155 + (I[294] = (img)(_p2##x,_n3##y,z,v)), \ 307.7156 + (I[316] = (img)(_p2##x,_n4##y,z,v)), \ 307.7157 + (I[338] = (img)(_p2##x,_n5##y,z,v)), \ 307.7158 + (I[360] = (img)(_p2##x,_n6##y,z,v)), \ 307.7159 + (I[382] = (img)(_p2##x,_n7##y,z,v)), \ 307.7160 + (I[404] = (img)(_p2##x,_n8##y,z,v)), \ 307.7161 + (I[426] = (img)(_p2##x,_n9##y,z,v)), \ 307.7162 + (I[448] = (img)(_p2##x,_n10##y,z,v)), \ 307.7163 + (I[470] = (img)(_p2##x,_n11##y,z,v)), \ 307.7164 + (I[9] = (img)(_p1##x,_p10##y,z,v)), \ 307.7165 + (I[31] = (img)(_p1##x,_p9##y,z,v)), \ 307.7166 + (I[53] = (img)(_p1##x,_p8##y,z,v)), \ 307.7167 + (I[75] = (img)(_p1##x,_p7##y,z,v)), \ 307.7168 + (I[97] = (img)(_p1##x,_p6##y,z,v)), \ 307.7169 + (I[119] = (img)(_p1##x,_p5##y,z,v)), \ 307.7170 + (I[141] = (img)(_p1##x,_p4##y,z,v)), \ 307.7171 + (I[163] = (img)(_p1##x,_p3##y,z,v)), \ 307.7172 + (I[185] = (img)(_p1##x,_p2##y,z,v)), \ 307.7173 + (I[207] = (img)(_p1##x,_p1##y,z,v)), \ 307.7174 + (I[229] = (img)(_p1##x,y,z,v)), \ 307.7175 + (I[251] = (img)(_p1##x,_n1##y,z,v)), \ 307.7176 + (I[273] = (img)(_p1##x,_n2##y,z,v)), \ 307.7177 + (I[295] = (img)(_p1##x,_n3##y,z,v)), \ 307.7178 + (I[317] = (img)(_p1##x,_n4##y,z,v)), \ 307.7179 + (I[339] = (img)(_p1##x,_n5##y,z,v)), \ 307.7180 + (I[361] = (img)(_p1##x,_n6##y,z,v)), \ 307.7181 + (I[383] = (img)(_p1##x,_n7##y,z,v)), \ 307.7182 + (I[405] = (img)(_p1##x,_n8##y,z,v)), \ 307.7183 + (I[427] = (img)(_p1##x,_n9##y,z,v)), \ 307.7184 + (I[449] = (img)(_p1##x,_n10##y,z,v)), \ 307.7185 + (I[471] = (img)(_p1##x,_n11##y,z,v)), \ 307.7186 + (I[10] = (img)(x,_p10##y,z,v)), \ 307.7187 + (I[32] = (img)(x,_p9##y,z,v)), \ 307.7188 + (I[54] = (img)(x,_p8##y,z,v)), \ 307.7189 + (I[76] = (img)(x,_p7##y,z,v)), \ 307.7190 + (I[98] = (img)(x,_p6##y,z,v)), \ 307.7191 + (I[120] = (img)(x,_p5##y,z,v)), \ 307.7192 + (I[142] = (img)(x,_p4##y,z,v)), \ 307.7193 + (I[164] = (img)(x,_p3##y,z,v)), \ 307.7194 + (I[186] = (img)(x,_p2##y,z,v)), \ 307.7195 + (I[208] = (img)(x,_p1##y,z,v)), \ 307.7196 + (I[230] = (img)(x,y,z,v)), \ 307.7197 + (I[252] = (img)(x,_n1##y,z,v)), \ 307.7198 + (I[274] = (img)(x,_n2##y,z,v)), \ 307.7199 + (I[296] = (img)(x,_n3##y,z,v)), \ 307.7200 + (I[318] = (img)(x,_n4##y,z,v)), \ 307.7201 + (I[340] = (img)(x,_n5##y,z,v)), \ 307.7202 + (I[362] = (img)(x,_n6##y,z,v)), \ 307.7203 + (I[384] = (img)(x,_n7##y,z,v)), \ 307.7204 + (I[406] = (img)(x,_n8##y,z,v)), \ 307.7205 + (I[428] = (img)(x,_n9##y,z,v)), \ 307.7206 + (I[450] = (img)(x,_n10##y,z,v)), \ 307.7207 + (I[472] = (img)(x,_n11##y,z,v)), \ 307.7208 + (I[11] = (img)(_n1##x,_p10##y,z,v)), \ 307.7209 + (I[33] = (img)(_n1##x,_p9##y,z,v)), \ 307.7210 + (I[55] = (img)(_n1##x,_p8##y,z,v)), \ 307.7211 + (I[77] = (img)(_n1##x,_p7##y,z,v)), \ 307.7212 + (I[99] = (img)(_n1##x,_p6##y,z,v)), \ 307.7213 + (I[121] = (img)(_n1##x,_p5##y,z,v)), \ 307.7214 + (I[143] = (img)(_n1##x,_p4##y,z,v)), \ 307.7215 + (I[165] = (img)(_n1##x,_p3##y,z,v)), \ 307.7216 + (I[187] = (img)(_n1##x,_p2##y,z,v)), \ 307.7217 + (I[209] = (img)(_n1##x,_p1##y,z,v)), \ 307.7218 + (I[231] = (img)(_n1##x,y,z,v)), \ 307.7219 + (I[253] = (img)(_n1##x,_n1##y,z,v)), \ 307.7220 + (I[275] = (img)(_n1##x,_n2##y,z,v)), \ 307.7221 + (I[297] = (img)(_n1##x,_n3##y,z,v)), \ 307.7222 + (I[319] = (img)(_n1##x,_n4##y,z,v)), \ 307.7223 + (I[341] = (img)(_n1##x,_n5##y,z,v)), \ 307.7224 + (I[363] = (img)(_n1##x,_n6##y,z,v)), \ 307.7225 + (I[385] = (img)(_n1##x,_n7##y,z,v)), \ 307.7226 + (I[407] = (img)(_n1##x,_n8##y,z,v)), \ 307.7227 + (I[429] = (img)(_n1##x,_n9##y,z,v)), \ 307.7228 + (I[451] = (img)(_n1##x,_n10##y,z,v)), \ 307.7229 + (I[473] = (img)(_n1##x,_n11##y,z,v)), \ 307.7230 + (I[12] = (img)(_n2##x,_p10##y,z,v)), \ 307.7231 + (I[34] = (img)(_n2##x,_p9##y,z,v)), \ 307.7232 + (I[56] = (img)(_n2##x,_p8##y,z,v)), \ 307.7233 + (I[78] = (img)(_n2##x,_p7##y,z,v)), \ 307.7234 + (I[100] = (img)(_n2##x,_p6##y,z,v)), \ 307.7235 + (I[122] = (img)(_n2##x,_p5##y,z,v)), \ 307.7236 + (I[144] = (img)(_n2##x,_p4##y,z,v)), \ 307.7237 + (I[166] = (img)(_n2##x,_p3##y,z,v)), \ 307.7238 + (I[188] = (img)(_n2##x,_p2##y,z,v)), \ 307.7239 + (I[210] = (img)(_n2##x,_p1##y,z,v)), \ 307.7240 + (I[232] = (img)(_n2##x,y,z,v)), \ 307.7241 + (I[254] = (img)(_n2##x,_n1##y,z,v)), \ 307.7242 + (I[276] = (img)(_n2##x,_n2##y,z,v)), \ 307.7243 + (I[298] = (img)(_n2##x,_n3##y,z,v)), \ 307.7244 + (I[320] = (img)(_n2##x,_n4##y,z,v)), \ 307.7245 + (I[342] = (img)(_n2##x,_n5##y,z,v)), \ 307.7246 + (I[364] = (img)(_n2##x,_n6##y,z,v)), \ 307.7247 + (I[386] = (img)(_n2##x,_n7##y,z,v)), \ 307.7248 + (I[408] = (img)(_n2##x,_n8##y,z,v)), \ 307.7249 + (I[430] = (img)(_n2##x,_n9##y,z,v)), \ 307.7250 + (I[452] = (img)(_n2##x,_n10##y,z,v)), \ 307.7251 + (I[474] = (img)(_n2##x,_n11##y,z,v)), \ 307.7252 + (I[13] = (img)(_n3##x,_p10##y,z,v)), \ 307.7253 + (I[35] = (img)(_n3##x,_p9##y,z,v)), \ 307.7254 + (I[57] = (img)(_n3##x,_p8##y,z,v)), \ 307.7255 + (I[79] = (img)(_n3##x,_p7##y,z,v)), \ 307.7256 + (I[101] = (img)(_n3##x,_p6##y,z,v)), \ 307.7257 + (I[123] = (img)(_n3##x,_p5##y,z,v)), \ 307.7258 + (I[145] = (img)(_n3##x,_p4##y,z,v)), \ 307.7259 + (I[167] = (img)(_n3##x,_p3##y,z,v)), \ 307.7260 + (I[189] = (img)(_n3##x,_p2##y,z,v)), \ 307.7261 + (I[211] = (img)(_n3##x,_p1##y,z,v)), \ 307.7262 + (I[233] = (img)(_n3##x,y,z,v)), \ 307.7263 + (I[255] = (img)(_n3##x,_n1##y,z,v)), \ 307.7264 + (I[277] = (img)(_n3##x,_n2##y,z,v)), \ 307.7265 + (I[299] = (img)(_n3##x,_n3##y,z,v)), \ 307.7266 + (I[321] = (img)(_n3##x,_n4##y,z,v)), \ 307.7267 + (I[343] = (img)(_n3##x,_n5##y,z,v)), \ 307.7268 + (I[365] = (img)(_n3##x,_n6##y,z,v)), \ 307.7269 + (I[387] = (img)(_n3##x,_n7##y,z,v)), \ 307.7270 + (I[409] = (img)(_n3##x,_n8##y,z,v)), \ 307.7271 + (I[431] = (img)(_n3##x,_n9##y,z,v)), \ 307.7272 + (I[453] = (img)(_n3##x,_n10##y,z,v)), \ 307.7273 + (I[475] = (img)(_n3##x,_n11##y,z,v)), \ 307.7274 + (I[14] = (img)(_n4##x,_p10##y,z,v)), \ 307.7275 + (I[36] = (img)(_n4##x,_p9##y,z,v)), \ 307.7276 + (I[58] = (img)(_n4##x,_p8##y,z,v)), \ 307.7277 + (I[80] = (img)(_n4##x,_p7##y,z,v)), \ 307.7278 + (I[102] = (img)(_n4##x,_p6##y,z,v)), \ 307.7279 + (I[124] = (img)(_n4##x,_p5##y,z,v)), \ 307.7280 + (I[146] = (img)(_n4##x,_p4##y,z,v)), \ 307.7281 + (I[168] = (img)(_n4##x,_p3##y,z,v)), \ 307.7282 + (I[190] = (img)(_n4##x,_p2##y,z,v)), \ 307.7283 + (I[212] = (img)(_n4##x,_p1##y,z,v)), \ 307.7284 + (I[234] = (img)(_n4##x,y,z,v)), \ 307.7285 + (I[256] = (img)(_n4##x,_n1##y,z,v)), \ 307.7286 + (I[278] = (img)(_n4##x,_n2##y,z,v)), \ 307.7287 + (I[300] = (img)(_n4##x,_n3##y,z,v)), \ 307.7288 + (I[322] = (img)(_n4##x,_n4##y,z,v)), \ 307.7289 + (I[344] = (img)(_n4##x,_n5##y,z,v)), \ 307.7290 + (I[366] = (img)(_n4##x,_n6##y,z,v)), \ 307.7291 + (I[388] = (img)(_n4##x,_n7##y,z,v)), \ 307.7292 + (I[410] = (img)(_n4##x,_n8##y,z,v)), \ 307.7293 + (I[432] = (img)(_n4##x,_n9##y,z,v)), \ 307.7294 + (I[454] = (img)(_n4##x,_n10##y,z,v)), \ 307.7295 + (I[476] = (img)(_n4##x,_n11##y,z,v)), \ 307.7296 + (I[15] = (img)(_n5##x,_p10##y,z,v)), \ 307.7297 + (I[37] = (img)(_n5##x,_p9##y,z,v)), \ 307.7298 + (I[59] = (img)(_n5##x,_p8##y,z,v)), \ 307.7299 + (I[81] = (img)(_n5##x,_p7##y,z,v)), \ 307.7300 + (I[103] = (img)(_n5##x,_p6##y,z,v)), \ 307.7301 + (I[125] = (img)(_n5##x,_p5##y,z,v)), \ 307.7302 + (I[147] = (img)(_n5##x,_p4##y,z,v)), \ 307.7303 + (I[169] = (img)(_n5##x,_p3##y,z,v)), \ 307.7304 + (I[191] = (img)(_n5##x,_p2##y,z,v)), \ 307.7305 + (I[213] = (img)(_n5##x,_p1##y,z,v)), \ 307.7306 + (I[235] = (img)(_n5##x,y,z,v)), \ 307.7307 + (I[257] = (img)(_n5##x,_n1##y,z,v)), \ 307.7308 + (I[279] = (img)(_n5##x,_n2##y,z,v)), \ 307.7309 + (I[301] = (img)(_n5##x,_n3##y,z,v)), \ 307.7310 + (I[323] = (img)(_n5##x,_n4##y,z,v)), \ 307.7311 + (I[345] = (img)(_n5##x,_n5##y,z,v)), \ 307.7312 + (I[367] = (img)(_n5##x,_n6##y,z,v)), \ 307.7313 + (I[389] = (img)(_n5##x,_n7##y,z,v)), \ 307.7314 + (I[411] = (img)(_n5##x,_n8##y,z,v)), \ 307.7315 + (I[433] = (img)(_n5##x,_n9##y,z,v)), \ 307.7316 + (I[455] = (img)(_n5##x,_n10##y,z,v)), \ 307.7317 + (I[477] = (img)(_n5##x,_n11##y,z,v)), \ 307.7318 + (I[16] = (img)(_n6##x,_p10##y,z,v)), \ 307.7319 + (I[38] = (img)(_n6##x,_p9##y,z,v)), \ 307.7320 + (I[60] = (img)(_n6##x,_p8##y,z,v)), \ 307.7321 + (I[82] = (img)(_n6##x,_p7##y,z,v)), \ 307.7322 + (I[104] = (img)(_n6##x,_p6##y,z,v)), \ 307.7323 + (I[126] = (img)(_n6##x,_p5##y,z,v)), \ 307.7324 + (I[148] = (img)(_n6##x,_p4##y,z,v)), \ 307.7325 + (I[170] = (img)(_n6##x,_p3##y,z,v)), \ 307.7326 + (I[192] = (img)(_n6##x,_p2##y,z,v)), \ 307.7327 + (I[214] = (img)(_n6##x,_p1##y,z,v)), \ 307.7328 + (I[236] = (img)(_n6##x,y,z,v)), \ 307.7329 + (I[258] = (img)(_n6##x,_n1##y,z,v)), \ 307.7330 + (I[280] = (img)(_n6##x,_n2##y,z,v)), \ 307.7331 + (I[302] = (img)(_n6##x,_n3##y,z,v)), \ 307.7332 + (I[324] = (img)(_n6##x,_n4##y,z,v)), \ 307.7333 + (I[346] = (img)(_n6##x,_n5##y,z,v)), \ 307.7334 + (I[368] = (img)(_n6##x,_n6##y,z,v)), \ 307.7335 + (I[390] = (img)(_n6##x,_n7##y,z,v)), \ 307.7336 + (I[412] = (img)(_n6##x,_n8##y,z,v)), \ 307.7337 + (I[434] = (img)(_n6##x,_n9##y,z,v)), \ 307.7338 + (I[456] = (img)(_n6##x,_n10##y,z,v)), \ 307.7339 + (I[478] = (img)(_n6##x,_n11##y,z,v)), \ 307.7340 + (I[17] = (img)(_n7##x,_p10##y,z,v)), \ 307.7341 + (I[39] = (img)(_n7##x,_p9##y,z,v)), \ 307.7342 + (I[61] = (img)(_n7##x,_p8##y,z,v)), \ 307.7343 + (I[83] = (img)(_n7##x,_p7##y,z,v)), \ 307.7344 + (I[105] = (img)(_n7##x,_p6##y,z,v)), \ 307.7345 + (I[127] = (img)(_n7##x,_p5##y,z,v)), \ 307.7346 + (I[149] = (img)(_n7##x,_p4##y,z,v)), \ 307.7347 + (I[171] = (img)(_n7##x,_p3##y,z,v)), \ 307.7348 + (I[193] = (img)(_n7##x,_p2##y,z,v)), \ 307.7349 + (I[215] = (img)(_n7##x,_p1##y,z,v)), \ 307.7350 + (I[237] = (img)(_n7##x,y,z,v)), \ 307.7351 + (I[259] = (img)(_n7##x,_n1##y,z,v)), \ 307.7352 + (I[281] = (img)(_n7##x,_n2##y,z,v)), \ 307.7353 + (I[303] = (img)(_n7##x,_n3##y,z,v)), \ 307.7354 + (I[325] = (img)(_n7##x,_n4##y,z,v)), \ 307.7355 + (I[347] = (img)(_n7##x,_n5##y,z,v)), \ 307.7356 + (I[369] = (img)(_n7##x,_n6##y,z,v)), \ 307.7357 + (I[391] = (img)(_n7##x,_n7##y,z,v)), \ 307.7358 + (I[413] = (img)(_n7##x,_n8##y,z,v)), \ 307.7359 + (I[435] = (img)(_n7##x,_n9##y,z,v)), \ 307.7360 + (I[457] = (img)(_n7##x,_n10##y,z,v)), \ 307.7361 + (I[479] = (img)(_n7##x,_n11##y,z,v)), \ 307.7362 + (I[18] = (img)(_n8##x,_p10##y,z,v)), \ 307.7363 + (I[40] = (img)(_n8##x,_p9##y,z,v)), \ 307.7364 + (I[62] = (img)(_n8##x,_p8##y,z,v)), \ 307.7365 + (I[84] = (img)(_n8##x,_p7##y,z,v)), \ 307.7366 + (I[106] = (img)(_n8##x,_p6##y,z,v)), \ 307.7367 + (I[128] = (img)(_n8##x,_p5##y,z,v)), \ 307.7368 + (I[150] = (img)(_n8##x,_p4##y,z,v)), \ 307.7369 + (I[172] = (img)(_n8##x,_p3##y,z,v)), \ 307.7370 + (I[194] = (img)(_n8##x,_p2##y,z,v)), \ 307.7371 + (I[216] = (img)(_n8##x,_p1##y,z,v)), \ 307.7372 + (I[238] = (img)(_n8##x,y,z,v)), \ 307.7373 + (I[260] = (img)(_n8##x,_n1##y,z,v)), \ 307.7374 + (I[282] = (img)(_n8##x,_n2##y,z,v)), \ 307.7375 + (I[304] = (img)(_n8##x,_n3##y,z,v)), \ 307.7376 + (I[326] = (img)(_n8##x,_n4##y,z,v)), \ 307.7377 + (I[348] = (img)(_n8##x,_n5##y,z,v)), \ 307.7378 + (I[370] = (img)(_n8##x,_n6##y,z,v)), \ 307.7379 + (I[392] = (img)(_n8##x,_n7##y,z,v)), \ 307.7380 + (I[414] = (img)(_n8##x,_n8##y,z,v)), \ 307.7381 + (I[436] = (img)(_n8##x,_n9##y,z,v)), \ 307.7382 + (I[458] = (img)(_n8##x,_n10##y,z,v)), \ 307.7383 + (I[480] = (img)(_n8##x,_n11##y,z,v)), \ 307.7384 + (I[19] = (img)(_n9##x,_p10##y,z,v)), \ 307.7385 + (I[41] = (img)(_n9##x,_p9##y,z,v)), \ 307.7386 + (I[63] = (img)(_n9##x,_p8##y,z,v)), \ 307.7387 + (I[85] = (img)(_n9##x,_p7##y,z,v)), \ 307.7388 + (I[107] = (img)(_n9##x,_p6##y,z,v)), \ 307.7389 + (I[129] = (img)(_n9##x,_p5##y,z,v)), \ 307.7390 + (I[151] = (img)(_n9##x,_p4##y,z,v)), \ 307.7391 + (I[173] = (img)(_n9##x,_p3##y,z,v)), \ 307.7392 + (I[195] = (img)(_n9##x,_p2##y,z,v)), \ 307.7393 + (I[217] = (img)(_n9##x,_p1##y,z,v)), \ 307.7394 + (I[239] = (img)(_n9##x,y,z,v)), \ 307.7395 + (I[261] = (img)(_n9##x,_n1##y,z,v)), \ 307.7396 + (I[283] = (img)(_n9##x,_n2##y,z,v)), \ 307.7397 + (I[305] = (img)(_n9##x,_n3##y,z,v)), \ 307.7398 + (I[327] = (img)(_n9##x,_n4##y,z,v)), \ 307.7399 + (I[349] = (img)(_n9##x,_n5##y,z,v)), \ 307.7400 + (I[371] = (img)(_n9##x,_n6##y,z,v)), \ 307.7401 + (I[393] = (img)(_n9##x,_n7##y,z,v)), \ 307.7402 + (I[415] = (img)(_n9##x,_n8##y,z,v)), \ 307.7403 + (I[437] = (img)(_n9##x,_n9##y,z,v)), \ 307.7404 + (I[459] = (img)(_n9##x,_n10##y,z,v)), \ 307.7405 + (I[481] = (img)(_n9##x,_n11##y,z,v)), \ 307.7406 + (I[20] = (img)(_n10##x,_p10##y,z,v)), \ 307.7407 + (I[42] = (img)(_n10##x,_p9##y,z,v)), \ 307.7408 + (I[64] = (img)(_n10##x,_p8##y,z,v)), \ 307.7409 + (I[86] = (img)(_n10##x,_p7##y,z,v)), \ 307.7410 + (I[108] = (img)(_n10##x,_p6##y,z,v)), \ 307.7411 + (I[130] = (img)(_n10##x,_p5##y,z,v)), \ 307.7412 + (I[152] = (img)(_n10##x,_p4##y,z,v)), \ 307.7413 + (I[174] = (img)(_n10##x,_p3##y,z,v)), \ 307.7414 + (I[196] = (img)(_n10##x,_p2##y,z,v)), \ 307.7415 + (I[218] = (img)(_n10##x,_p1##y,z,v)), \ 307.7416 + (I[240] = (img)(_n10##x,y,z,v)), \ 307.7417 + (I[262] = (img)(_n10##x,_n1##y,z,v)), \ 307.7418 + (I[284] = (img)(_n10##x,_n2##y,z,v)), \ 307.7419 + (I[306] = (img)(_n10##x,_n3##y,z,v)), \ 307.7420 + (I[328] = (img)(_n10##x,_n4##y,z,v)), \ 307.7421 + (I[350] = (img)(_n10##x,_n5##y,z,v)), \ 307.7422 + (I[372] = (img)(_n10##x,_n6##y,z,v)), \ 307.7423 + (I[394] = (img)(_n10##x,_n7##y,z,v)), \ 307.7424 + (I[416] = (img)(_n10##x,_n8##y,z,v)), \ 307.7425 + (I[438] = (img)(_n10##x,_n9##y,z,v)), \ 307.7426 + (I[460] = (img)(_n10##x,_n10##y,z,v)), \ 307.7427 + (I[482] = (img)(_n10##x,_n11##y,z,v)), \ 307.7428 + x+11>=(int)((img).width)?(int)((img).width)-1:x+11); \ 307.7429 + x<=(int)(x1) && ((_n11##x<(int)((img).width) && ( \ 307.7430 + (I[21] = (img)(_n11##x,_p10##y,z,v)), \ 307.7431 + (I[43] = (img)(_n11##x,_p9##y,z,v)), \ 307.7432 + (I[65] = (img)(_n11##x,_p8##y,z,v)), \ 307.7433 + (I[87] = (img)(_n11##x,_p7##y,z,v)), \ 307.7434 + (I[109] = (img)(_n11##x,_p6##y,z,v)), \ 307.7435 + (I[131] = (img)(_n11##x,_p5##y,z,v)), \ 307.7436 + (I[153] = (img)(_n11##x,_p4##y,z,v)), \ 307.7437 + (I[175] = (img)(_n11##x,_p3##y,z,v)), \ 307.7438 + (I[197] = (img)(_n11##x,_p2##y,z,v)), \ 307.7439 + (I[219] = (img)(_n11##x,_p1##y,z,v)), \ 307.7440 + (I[241] = (img)(_n11##x,y,z,v)), \ 307.7441 + (I[263] = (img)(_n11##x,_n1##y,z,v)), \ 307.7442 + (I[285] = (img)(_n11##x,_n2##y,z,v)), \ 307.7443 + (I[307] = (img)(_n11##x,_n3##y,z,v)), \ 307.7444 + (I[329] = (img)(_n11##x,_n4##y,z,v)), \ 307.7445 + (I[351] = (img)(_n11##x,_n5##y,z,v)), \ 307.7446 + (I[373] = (img)(_n11##x,_n6##y,z,v)), \ 307.7447 + (I[395] = (img)(_n11##x,_n7##y,z,v)), \ 307.7448 + (I[417] = (img)(_n11##x,_n8##y,z,v)), \ 307.7449 + (I[439] = (img)(_n11##x,_n9##y,z,v)), \ 307.7450 + (I[461] = (img)(_n11##x,_n10##y,z,v)), \ 307.7451 + (I[483] = (img)(_n11##x,_n11##y,z,v)),1)) || \ 307.7452 + _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.7453 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], \ 307.7454 + I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.7455 + I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.7456 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.7457 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.7458 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.7459 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.7460 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.7461 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.7462 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], \ 307.7463 + I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], \ 307.7464 + I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.7465 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], \ 307.7466 + I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], \ 307.7467 + I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], \ 307.7468 + I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], \ 307.7469 + I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], \ 307.7470 + I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], \ 307.7471 + I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], \ 307.7472 + I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], \ 307.7473 + I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], I[455] = I[456], I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], \ 307.7474 + I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], I[479] = I[480], I[480] = I[481], I[481] = I[482], I[482] = I[483], \ 307.7475 + _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x) 307.7476 + 307.7477 +#define cimg_get22x22(img,x,y,z,v,I) \ 307.7478 + I[0] = (img)(_p10##x,_p10##y,z,v), I[1] = (img)(_p9##x,_p10##y,z,v), I[2] = (img)(_p8##x,_p10##y,z,v), I[3] = (img)(_p7##x,_p10##y,z,v), I[4] = (img)(_p6##x,_p10##y,z,v), I[5] = (img)(_p5##x,_p10##y,z,v), I[6] = (img)(_p4##x,_p10##y,z,v), I[7] = (img)(_p3##x,_p10##y,z,v), I[8] = (img)(_p2##x,_p10##y,z,v), I[9] = (img)(_p1##x,_p10##y,z,v), I[10] = (img)(x,_p10##y,z,v), I[11] = (img)(_n1##x,_p10##y,z,v), I[12] = (img)(_n2##x,_p10##y,z,v), I[13] = (img)(_n3##x,_p10##y,z,v), I[14] = (img)(_n4##x,_p10##y,z,v), I[15] = (img)(_n5##x,_p10##y,z,v), I[16] = (img)(_n6##x,_p10##y,z,v), I[17] = (img)(_n7##x,_p10##y,z,v), I[18] = (img)(_n8##x,_p10##y,z,v), I[19] = (img)(_n9##x,_p10##y,z,v), I[20] = (img)(_n10##x,_p10##y,z,v), I[21] = (img)(_n11##x,_p10##y,z,v), \ 307.7479 + I[22] = (img)(_p10##x,_p9##y,z,v), I[23] = (img)(_p9##x,_p9##y,z,v), I[24] = (img)(_p8##x,_p9##y,z,v), I[25] = (img)(_p7##x,_p9##y,z,v), I[26] = (img)(_p6##x,_p9##y,z,v), I[27] = (img)(_p5##x,_p9##y,z,v), I[28] = (img)(_p4##x,_p9##y,z,v), I[29] = (img)(_p3##x,_p9##y,z,v), I[30] = (img)(_p2##x,_p9##y,z,v), I[31] = (img)(_p1##x,_p9##y,z,v), I[32] = (img)(x,_p9##y,z,v), I[33] = (img)(_n1##x,_p9##y,z,v), I[34] = (img)(_n2##x,_p9##y,z,v), I[35] = (img)(_n3##x,_p9##y,z,v), I[36] = (img)(_n4##x,_p9##y,z,v), I[37] = (img)(_n5##x,_p9##y,z,v), I[38] = (img)(_n6##x,_p9##y,z,v), I[39] = (img)(_n7##x,_p9##y,z,v), I[40] = (img)(_n8##x,_p9##y,z,v), I[41] = (img)(_n9##x,_p9##y,z,v), I[42] = (img)(_n10##x,_p9##y,z,v), I[43] = (img)(_n11##x,_p9##y,z,v), \ 307.7480 + I[44] = (img)(_p10##x,_p8##y,z,v), I[45] = (img)(_p9##x,_p8##y,z,v), I[46] = (img)(_p8##x,_p8##y,z,v), I[47] = (img)(_p7##x,_p8##y,z,v), I[48] = (img)(_p6##x,_p8##y,z,v), I[49] = (img)(_p5##x,_p8##y,z,v), I[50] = (img)(_p4##x,_p8##y,z,v), I[51] = (img)(_p3##x,_p8##y,z,v), I[52] = (img)(_p2##x,_p8##y,z,v), I[53] = (img)(_p1##x,_p8##y,z,v), I[54] = (img)(x,_p8##y,z,v), I[55] = (img)(_n1##x,_p8##y,z,v), I[56] = (img)(_n2##x,_p8##y,z,v), I[57] = (img)(_n3##x,_p8##y,z,v), I[58] = (img)(_n4##x,_p8##y,z,v), I[59] = (img)(_n5##x,_p8##y,z,v), I[60] = (img)(_n6##x,_p8##y,z,v), I[61] = (img)(_n7##x,_p8##y,z,v), I[62] = (img)(_n8##x,_p8##y,z,v), I[63] = (img)(_n9##x,_p8##y,z,v), I[64] = (img)(_n10##x,_p8##y,z,v), I[65] = (img)(_n11##x,_p8##y,z,v), \ 307.7481 + I[66] = (img)(_p10##x,_p7##y,z,v), I[67] = (img)(_p9##x,_p7##y,z,v), I[68] = (img)(_p8##x,_p7##y,z,v), I[69] = (img)(_p7##x,_p7##y,z,v), I[70] = (img)(_p6##x,_p7##y,z,v), I[71] = (img)(_p5##x,_p7##y,z,v), I[72] = (img)(_p4##x,_p7##y,z,v), I[73] = (img)(_p3##x,_p7##y,z,v), I[74] = (img)(_p2##x,_p7##y,z,v), I[75] = (img)(_p1##x,_p7##y,z,v), I[76] = (img)(x,_p7##y,z,v), I[77] = (img)(_n1##x,_p7##y,z,v), I[78] = (img)(_n2##x,_p7##y,z,v), I[79] = (img)(_n3##x,_p7##y,z,v), I[80] = (img)(_n4##x,_p7##y,z,v), I[81] = (img)(_n5##x,_p7##y,z,v), I[82] = (img)(_n6##x,_p7##y,z,v), I[83] = (img)(_n7##x,_p7##y,z,v), I[84] = (img)(_n8##x,_p7##y,z,v), I[85] = (img)(_n9##x,_p7##y,z,v), I[86] = (img)(_n10##x,_p7##y,z,v), I[87] = (img)(_n11##x,_p7##y,z,v), \ 307.7482 + I[88] = (img)(_p10##x,_p6##y,z,v), I[89] = (img)(_p9##x,_p6##y,z,v), I[90] = (img)(_p8##x,_p6##y,z,v), I[91] = (img)(_p7##x,_p6##y,z,v), I[92] = (img)(_p6##x,_p6##y,z,v), I[93] = (img)(_p5##x,_p6##y,z,v), I[94] = (img)(_p4##x,_p6##y,z,v), I[95] = (img)(_p3##x,_p6##y,z,v), I[96] = (img)(_p2##x,_p6##y,z,v), I[97] = (img)(_p1##x,_p6##y,z,v), I[98] = (img)(x,_p6##y,z,v), I[99] = (img)(_n1##x,_p6##y,z,v), I[100] = (img)(_n2##x,_p6##y,z,v), I[101] = (img)(_n3##x,_p6##y,z,v), I[102] = (img)(_n4##x,_p6##y,z,v), I[103] = (img)(_n5##x,_p6##y,z,v), I[104] = (img)(_n6##x,_p6##y,z,v), I[105] = (img)(_n7##x,_p6##y,z,v), I[106] = (img)(_n8##x,_p6##y,z,v), I[107] = (img)(_n9##x,_p6##y,z,v), I[108] = (img)(_n10##x,_p6##y,z,v), I[109] = (img)(_n11##x,_p6##y,z,v), \ 307.7483 + I[110] = (img)(_p10##x,_p5##y,z,v), I[111] = (img)(_p9##x,_p5##y,z,v), I[112] = (img)(_p8##x,_p5##y,z,v), I[113] = (img)(_p7##x,_p5##y,z,v), I[114] = (img)(_p6##x,_p5##y,z,v), I[115] = (img)(_p5##x,_p5##y,z,v), I[116] = (img)(_p4##x,_p5##y,z,v), I[117] = (img)(_p3##x,_p5##y,z,v), I[118] = (img)(_p2##x,_p5##y,z,v), I[119] = (img)(_p1##x,_p5##y,z,v), I[120] = (img)(x,_p5##y,z,v), I[121] = (img)(_n1##x,_p5##y,z,v), I[122] = (img)(_n2##x,_p5##y,z,v), I[123] = (img)(_n3##x,_p5##y,z,v), I[124] = (img)(_n4##x,_p5##y,z,v), I[125] = (img)(_n5##x,_p5##y,z,v), I[126] = (img)(_n6##x,_p5##y,z,v), I[127] = (img)(_n7##x,_p5##y,z,v), I[128] = (img)(_n8##x,_p5##y,z,v), I[129] = (img)(_n9##x,_p5##y,z,v), I[130] = (img)(_n10##x,_p5##y,z,v), I[131] = (img)(_n11##x,_p5##y,z,v), \ 307.7484 + I[132] = (img)(_p10##x,_p4##y,z,v), I[133] = (img)(_p9##x,_p4##y,z,v), I[134] = (img)(_p8##x,_p4##y,z,v), I[135] = (img)(_p7##x,_p4##y,z,v), I[136] = (img)(_p6##x,_p4##y,z,v), I[137] = (img)(_p5##x,_p4##y,z,v), I[138] = (img)(_p4##x,_p4##y,z,v), I[139] = (img)(_p3##x,_p4##y,z,v), I[140] = (img)(_p2##x,_p4##y,z,v), I[141] = (img)(_p1##x,_p4##y,z,v), I[142] = (img)(x,_p4##y,z,v), I[143] = (img)(_n1##x,_p4##y,z,v), I[144] = (img)(_n2##x,_p4##y,z,v), I[145] = (img)(_n3##x,_p4##y,z,v), I[146] = (img)(_n4##x,_p4##y,z,v), I[147] = (img)(_n5##x,_p4##y,z,v), I[148] = (img)(_n6##x,_p4##y,z,v), I[149] = (img)(_n7##x,_p4##y,z,v), I[150] = (img)(_n8##x,_p4##y,z,v), I[151] = (img)(_n9##x,_p4##y,z,v), I[152] = (img)(_n10##x,_p4##y,z,v), I[153] = (img)(_n11##x,_p4##y,z,v), \ 307.7485 + I[154] = (img)(_p10##x,_p3##y,z,v), I[155] = (img)(_p9##x,_p3##y,z,v), I[156] = (img)(_p8##x,_p3##y,z,v), I[157] = (img)(_p7##x,_p3##y,z,v), I[158] = (img)(_p6##x,_p3##y,z,v), I[159] = (img)(_p5##x,_p3##y,z,v), I[160] = (img)(_p4##x,_p3##y,z,v), I[161] = (img)(_p3##x,_p3##y,z,v), I[162] = (img)(_p2##x,_p3##y,z,v), I[163] = (img)(_p1##x,_p3##y,z,v), I[164] = (img)(x,_p3##y,z,v), I[165] = (img)(_n1##x,_p3##y,z,v), I[166] = (img)(_n2##x,_p3##y,z,v), I[167] = (img)(_n3##x,_p3##y,z,v), I[168] = (img)(_n4##x,_p3##y,z,v), I[169] = (img)(_n5##x,_p3##y,z,v), I[170] = (img)(_n6##x,_p3##y,z,v), I[171] = (img)(_n7##x,_p3##y,z,v), I[172] = (img)(_n8##x,_p3##y,z,v), I[173] = (img)(_n9##x,_p3##y,z,v), I[174] = (img)(_n10##x,_p3##y,z,v), I[175] = (img)(_n11##x,_p3##y,z,v), \ 307.7486 + I[176] = (img)(_p10##x,_p2##y,z,v), I[177] = (img)(_p9##x,_p2##y,z,v), I[178] = (img)(_p8##x,_p2##y,z,v), I[179] = (img)(_p7##x,_p2##y,z,v), I[180] = (img)(_p6##x,_p2##y,z,v), I[181] = (img)(_p5##x,_p2##y,z,v), I[182] = (img)(_p4##x,_p2##y,z,v), I[183] = (img)(_p3##x,_p2##y,z,v), I[184] = (img)(_p2##x,_p2##y,z,v), I[185] = (img)(_p1##x,_p2##y,z,v), I[186] = (img)(x,_p2##y,z,v), I[187] = (img)(_n1##x,_p2##y,z,v), I[188] = (img)(_n2##x,_p2##y,z,v), I[189] = (img)(_n3##x,_p2##y,z,v), I[190] = (img)(_n4##x,_p2##y,z,v), I[191] = (img)(_n5##x,_p2##y,z,v), I[192] = (img)(_n6##x,_p2##y,z,v), I[193] = (img)(_n7##x,_p2##y,z,v), I[194] = (img)(_n8##x,_p2##y,z,v), I[195] = (img)(_n9##x,_p2##y,z,v), I[196] = (img)(_n10##x,_p2##y,z,v), I[197] = (img)(_n11##x,_p2##y,z,v), \ 307.7487 + I[198] = (img)(_p10##x,_p1##y,z,v), I[199] = (img)(_p9##x,_p1##y,z,v), I[200] = (img)(_p8##x,_p1##y,z,v), I[201] = (img)(_p7##x,_p1##y,z,v), I[202] = (img)(_p6##x,_p1##y,z,v), I[203] = (img)(_p5##x,_p1##y,z,v), I[204] = (img)(_p4##x,_p1##y,z,v), I[205] = (img)(_p3##x,_p1##y,z,v), I[206] = (img)(_p2##x,_p1##y,z,v), I[207] = (img)(_p1##x,_p1##y,z,v), I[208] = (img)(x,_p1##y,z,v), I[209] = (img)(_n1##x,_p1##y,z,v), I[210] = (img)(_n2##x,_p1##y,z,v), I[211] = (img)(_n3##x,_p1##y,z,v), I[212] = (img)(_n4##x,_p1##y,z,v), I[213] = (img)(_n5##x,_p1##y,z,v), I[214] = (img)(_n6##x,_p1##y,z,v), I[215] = (img)(_n7##x,_p1##y,z,v), I[216] = (img)(_n8##x,_p1##y,z,v), I[217] = (img)(_n9##x,_p1##y,z,v), I[218] = (img)(_n10##x,_p1##y,z,v), I[219] = (img)(_n11##x,_p1##y,z,v), \ 307.7488 + I[220] = (img)(_p10##x,y,z,v), I[221] = (img)(_p9##x,y,z,v), I[222] = (img)(_p8##x,y,z,v), I[223] = (img)(_p7##x,y,z,v), I[224] = (img)(_p6##x,y,z,v), I[225] = (img)(_p5##x,y,z,v), I[226] = (img)(_p4##x,y,z,v), I[227] = (img)(_p3##x,y,z,v), I[228] = (img)(_p2##x,y,z,v), I[229] = (img)(_p1##x,y,z,v), I[230] = (img)(x,y,z,v), I[231] = (img)(_n1##x,y,z,v), I[232] = (img)(_n2##x,y,z,v), I[233] = (img)(_n3##x,y,z,v), I[234] = (img)(_n4##x,y,z,v), I[235] = (img)(_n5##x,y,z,v), I[236] = (img)(_n6##x,y,z,v), I[237] = (img)(_n7##x,y,z,v), I[238] = (img)(_n8##x,y,z,v), I[239] = (img)(_n9##x,y,z,v), I[240] = (img)(_n10##x,y,z,v), I[241] = (img)(_n11##x,y,z,v), \ 307.7489 + I[242] = (img)(_p10##x,_n1##y,z,v), I[243] = (img)(_p9##x,_n1##y,z,v), I[244] = (img)(_p8##x,_n1##y,z,v), I[245] = (img)(_p7##x,_n1##y,z,v), I[246] = (img)(_p6##x,_n1##y,z,v), I[247] = (img)(_p5##x,_n1##y,z,v), I[248] = (img)(_p4##x,_n1##y,z,v), I[249] = (img)(_p3##x,_n1##y,z,v), I[250] = (img)(_p2##x,_n1##y,z,v), I[251] = (img)(_p1##x,_n1##y,z,v), I[252] = (img)(x,_n1##y,z,v), I[253] = (img)(_n1##x,_n1##y,z,v), I[254] = (img)(_n2##x,_n1##y,z,v), I[255] = (img)(_n3##x,_n1##y,z,v), I[256] = (img)(_n4##x,_n1##y,z,v), I[257] = (img)(_n5##x,_n1##y,z,v), I[258] = (img)(_n6##x,_n1##y,z,v), I[259] = (img)(_n7##x,_n1##y,z,v), I[260] = (img)(_n8##x,_n1##y,z,v), I[261] = (img)(_n9##x,_n1##y,z,v), I[262] = (img)(_n10##x,_n1##y,z,v), I[263] = (img)(_n11##x,_n1##y,z,v), \ 307.7490 + I[264] = (img)(_p10##x,_n2##y,z,v), I[265] = (img)(_p9##x,_n2##y,z,v), I[266] = (img)(_p8##x,_n2##y,z,v), I[267] = (img)(_p7##x,_n2##y,z,v), I[268] = (img)(_p6##x,_n2##y,z,v), I[269] = (img)(_p5##x,_n2##y,z,v), I[270] = (img)(_p4##x,_n2##y,z,v), I[271] = (img)(_p3##x,_n2##y,z,v), I[272] = (img)(_p2##x,_n2##y,z,v), I[273] = (img)(_p1##x,_n2##y,z,v), I[274] = (img)(x,_n2##y,z,v), I[275] = (img)(_n1##x,_n2##y,z,v), I[276] = (img)(_n2##x,_n2##y,z,v), I[277] = (img)(_n3##x,_n2##y,z,v), I[278] = (img)(_n4##x,_n2##y,z,v), I[279] = (img)(_n5##x,_n2##y,z,v), I[280] = (img)(_n6##x,_n2##y,z,v), I[281] = (img)(_n7##x,_n2##y,z,v), I[282] = (img)(_n8##x,_n2##y,z,v), I[283] = (img)(_n9##x,_n2##y,z,v), I[284] = (img)(_n10##x,_n2##y,z,v), I[285] = (img)(_n11##x,_n2##y,z,v), \ 307.7491 + I[286] = (img)(_p10##x,_n3##y,z,v), I[287] = (img)(_p9##x,_n3##y,z,v), I[288] = (img)(_p8##x,_n3##y,z,v), I[289] = (img)(_p7##x,_n3##y,z,v), I[290] = (img)(_p6##x,_n3##y,z,v), I[291] = (img)(_p5##x,_n3##y,z,v), I[292] = (img)(_p4##x,_n3##y,z,v), I[293] = (img)(_p3##x,_n3##y,z,v), I[294] = (img)(_p2##x,_n3##y,z,v), I[295] = (img)(_p1##x,_n3##y,z,v), I[296] = (img)(x,_n3##y,z,v), I[297] = (img)(_n1##x,_n3##y,z,v), I[298] = (img)(_n2##x,_n3##y,z,v), I[299] = (img)(_n3##x,_n3##y,z,v), I[300] = (img)(_n4##x,_n3##y,z,v), I[301] = (img)(_n5##x,_n3##y,z,v), I[302] = (img)(_n6##x,_n3##y,z,v), I[303] = (img)(_n7##x,_n3##y,z,v), I[304] = (img)(_n8##x,_n3##y,z,v), I[305] = (img)(_n9##x,_n3##y,z,v), I[306] = (img)(_n10##x,_n3##y,z,v), I[307] = (img)(_n11##x,_n3##y,z,v), \ 307.7492 + I[308] = (img)(_p10##x,_n4##y,z,v), I[309] = (img)(_p9##x,_n4##y,z,v), I[310] = (img)(_p8##x,_n4##y,z,v), I[311] = (img)(_p7##x,_n4##y,z,v), I[312] = (img)(_p6##x,_n4##y,z,v), I[313] = (img)(_p5##x,_n4##y,z,v), I[314] = (img)(_p4##x,_n4##y,z,v), I[315] = (img)(_p3##x,_n4##y,z,v), I[316] = (img)(_p2##x,_n4##y,z,v), I[317] = (img)(_p1##x,_n4##y,z,v), I[318] = (img)(x,_n4##y,z,v), I[319] = (img)(_n1##x,_n4##y,z,v), I[320] = (img)(_n2##x,_n4##y,z,v), I[321] = (img)(_n3##x,_n4##y,z,v), I[322] = (img)(_n4##x,_n4##y,z,v), I[323] = (img)(_n5##x,_n4##y,z,v), I[324] = (img)(_n6##x,_n4##y,z,v), I[325] = (img)(_n7##x,_n4##y,z,v), I[326] = (img)(_n8##x,_n4##y,z,v), I[327] = (img)(_n9##x,_n4##y,z,v), I[328] = (img)(_n10##x,_n4##y,z,v), I[329] = (img)(_n11##x,_n4##y,z,v), \ 307.7493 + I[330] = (img)(_p10##x,_n5##y,z,v), I[331] = (img)(_p9##x,_n5##y,z,v), I[332] = (img)(_p8##x,_n5##y,z,v), I[333] = (img)(_p7##x,_n5##y,z,v), I[334] = (img)(_p6##x,_n5##y,z,v), I[335] = (img)(_p5##x,_n5##y,z,v), I[336] = (img)(_p4##x,_n5##y,z,v), I[337] = (img)(_p3##x,_n5##y,z,v), I[338] = (img)(_p2##x,_n5##y,z,v), I[339] = (img)(_p1##x,_n5##y,z,v), I[340] = (img)(x,_n5##y,z,v), I[341] = (img)(_n1##x,_n5##y,z,v), I[342] = (img)(_n2##x,_n5##y,z,v), I[343] = (img)(_n3##x,_n5##y,z,v), I[344] = (img)(_n4##x,_n5##y,z,v), I[345] = (img)(_n5##x,_n5##y,z,v), I[346] = (img)(_n6##x,_n5##y,z,v), I[347] = (img)(_n7##x,_n5##y,z,v), I[348] = (img)(_n8##x,_n5##y,z,v), I[349] = (img)(_n9##x,_n5##y,z,v), I[350] = (img)(_n10##x,_n5##y,z,v), I[351] = (img)(_n11##x,_n5##y,z,v), \ 307.7494 + I[352] = (img)(_p10##x,_n6##y,z,v), I[353] = (img)(_p9##x,_n6##y,z,v), I[354] = (img)(_p8##x,_n6##y,z,v), I[355] = (img)(_p7##x,_n6##y,z,v), I[356] = (img)(_p6##x,_n6##y,z,v), I[357] = (img)(_p5##x,_n6##y,z,v), I[358] = (img)(_p4##x,_n6##y,z,v), I[359] = (img)(_p3##x,_n6##y,z,v), I[360] = (img)(_p2##x,_n6##y,z,v), I[361] = (img)(_p1##x,_n6##y,z,v), I[362] = (img)(x,_n6##y,z,v), I[363] = (img)(_n1##x,_n6##y,z,v), I[364] = (img)(_n2##x,_n6##y,z,v), I[365] = (img)(_n3##x,_n6##y,z,v), I[366] = (img)(_n4##x,_n6##y,z,v), I[367] = (img)(_n5##x,_n6##y,z,v), I[368] = (img)(_n6##x,_n6##y,z,v), I[369] = (img)(_n7##x,_n6##y,z,v), I[370] = (img)(_n8##x,_n6##y,z,v), I[371] = (img)(_n9##x,_n6##y,z,v), I[372] = (img)(_n10##x,_n6##y,z,v), I[373] = (img)(_n11##x,_n6##y,z,v), \ 307.7495 + I[374] = (img)(_p10##x,_n7##y,z,v), I[375] = (img)(_p9##x,_n7##y,z,v), I[376] = (img)(_p8##x,_n7##y,z,v), I[377] = (img)(_p7##x,_n7##y,z,v), I[378] = (img)(_p6##x,_n7##y,z,v), I[379] = (img)(_p5##x,_n7##y,z,v), I[380] = (img)(_p4##x,_n7##y,z,v), I[381] = (img)(_p3##x,_n7##y,z,v), I[382] = (img)(_p2##x,_n7##y,z,v), I[383] = (img)(_p1##x,_n7##y,z,v), I[384] = (img)(x,_n7##y,z,v), I[385] = (img)(_n1##x,_n7##y,z,v), I[386] = (img)(_n2##x,_n7##y,z,v), I[387] = (img)(_n3##x,_n7##y,z,v), I[388] = (img)(_n4##x,_n7##y,z,v), I[389] = (img)(_n5##x,_n7##y,z,v), I[390] = (img)(_n6##x,_n7##y,z,v), I[391] = (img)(_n7##x,_n7##y,z,v), I[392] = (img)(_n8##x,_n7##y,z,v), I[393] = (img)(_n9##x,_n7##y,z,v), I[394] = (img)(_n10##x,_n7##y,z,v), I[395] = (img)(_n11##x,_n7##y,z,v), \ 307.7496 + I[396] = (img)(_p10##x,_n8##y,z,v), I[397] = (img)(_p9##x,_n8##y,z,v), I[398] = (img)(_p8##x,_n8##y,z,v), I[399] = (img)(_p7##x,_n8##y,z,v), I[400] = (img)(_p6##x,_n8##y,z,v), I[401] = (img)(_p5##x,_n8##y,z,v), I[402] = (img)(_p4##x,_n8##y,z,v), I[403] = (img)(_p3##x,_n8##y,z,v), I[404] = (img)(_p2##x,_n8##y,z,v), I[405] = (img)(_p1##x,_n8##y,z,v), I[406] = (img)(x,_n8##y,z,v), I[407] = (img)(_n1##x,_n8##y,z,v), I[408] = (img)(_n2##x,_n8##y,z,v), I[409] = (img)(_n3##x,_n8##y,z,v), I[410] = (img)(_n4##x,_n8##y,z,v), I[411] = (img)(_n5##x,_n8##y,z,v), I[412] = (img)(_n6##x,_n8##y,z,v), I[413] = (img)(_n7##x,_n8##y,z,v), I[414] = (img)(_n8##x,_n8##y,z,v), I[415] = (img)(_n9##x,_n8##y,z,v), I[416] = (img)(_n10##x,_n8##y,z,v), I[417] = (img)(_n11##x,_n8##y,z,v), \ 307.7497 + I[418] = (img)(_p10##x,_n9##y,z,v), I[419] = (img)(_p9##x,_n9##y,z,v), I[420] = (img)(_p8##x,_n9##y,z,v), I[421] = (img)(_p7##x,_n9##y,z,v), I[422] = (img)(_p6##x,_n9##y,z,v), I[423] = (img)(_p5##x,_n9##y,z,v), I[424] = (img)(_p4##x,_n9##y,z,v), I[425] = (img)(_p3##x,_n9##y,z,v), I[426] = (img)(_p2##x,_n9##y,z,v), I[427] = (img)(_p1##x,_n9##y,z,v), I[428] = (img)(x,_n9##y,z,v), I[429] = (img)(_n1##x,_n9##y,z,v), I[430] = (img)(_n2##x,_n9##y,z,v), I[431] = (img)(_n3##x,_n9##y,z,v), I[432] = (img)(_n4##x,_n9##y,z,v), I[433] = (img)(_n5##x,_n9##y,z,v), I[434] = (img)(_n6##x,_n9##y,z,v), I[435] = (img)(_n7##x,_n9##y,z,v), I[436] = (img)(_n8##x,_n9##y,z,v), I[437] = (img)(_n9##x,_n9##y,z,v), I[438] = (img)(_n10##x,_n9##y,z,v), I[439] = (img)(_n11##x,_n9##y,z,v), \ 307.7498 + I[440] = (img)(_p10##x,_n10##y,z,v), I[441] = (img)(_p9##x,_n10##y,z,v), I[442] = (img)(_p8##x,_n10##y,z,v), I[443] = (img)(_p7##x,_n10##y,z,v), I[444] = (img)(_p6##x,_n10##y,z,v), I[445] = (img)(_p5##x,_n10##y,z,v), I[446] = (img)(_p4##x,_n10##y,z,v), I[447] = (img)(_p3##x,_n10##y,z,v), I[448] = (img)(_p2##x,_n10##y,z,v), I[449] = (img)(_p1##x,_n10##y,z,v), I[450] = (img)(x,_n10##y,z,v), I[451] = (img)(_n1##x,_n10##y,z,v), I[452] = (img)(_n2##x,_n10##y,z,v), I[453] = (img)(_n3##x,_n10##y,z,v), I[454] = (img)(_n4##x,_n10##y,z,v), I[455] = (img)(_n5##x,_n10##y,z,v), I[456] = (img)(_n6##x,_n10##y,z,v), I[457] = (img)(_n7##x,_n10##y,z,v), I[458] = (img)(_n8##x,_n10##y,z,v), I[459] = (img)(_n9##x,_n10##y,z,v), I[460] = (img)(_n10##x,_n10##y,z,v), I[461] = (img)(_n11##x,_n10##y,z,v), \ 307.7499 + I[462] = (img)(_p10##x,_n11##y,z,v), I[463] = (img)(_p9##x,_n11##y,z,v), I[464] = (img)(_p8##x,_n11##y,z,v), I[465] = (img)(_p7##x,_n11##y,z,v), I[466] = (img)(_p6##x,_n11##y,z,v), I[467] = (img)(_p5##x,_n11##y,z,v), I[468] = (img)(_p4##x,_n11##y,z,v), I[469] = (img)(_p3##x,_n11##y,z,v), I[470] = (img)(_p2##x,_n11##y,z,v), I[471] = (img)(_p1##x,_n11##y,z,v), I[472] = (img)(x,_n11##y,z,v), I[473] = (img)(_n1##x,_n11##y,z,v), I[474] = (img)(_n2##x,_n11##y,z,v), I[475] = (img)(_n3##x,_n11##y,z,v), I[476] = (img)(_n4##x,_n11##y,z,v), I[477] = (img)(_n5##x,_n11##y,z,v), I[478] = (img)(_n6##x,_n11##y,z,v), I[479] = (img)(_n7##x,_n11##y,z,v), I[480] = (img)(_n8##x,_n11##y,z,v), I[481] = (img)(_n9##x,_n11##y,z,v), I[482] = (img)(_n10##x,_n11##y,z,v), I[483] = (img)(_n11##x,_n11##y,z,v); 307.7500 + 307.7501 +// Define 23x23 loop macros for CImg 307.7502 +//---------------------------------- 307.7503 +#define cimg_for23(bound,i) for (int i = 0, \ 307.7504 + _p11##i = 0, _p10##i = 0, _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.7505 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.7506 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.7507 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.7508 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.7509 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.7510 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.7511 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.7512 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.7513 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9, \ 307.7514 + _n10##i = 10>=(int)(bound)?(int)(bound)-1:10, \ 307.7515 + _n11##i = 11>=(int)(bound)?(int)(bound)-1:11; \ 307.7516 + _n11##i<(int)(bound) || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.7517 + i==(_n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.7518 + _p11##i = _p10##i, _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.7519 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i) 307.7520 + 307.7521 +#define cimg_for23X(img,x) cimg_for23((img).width,x) 307.7522 +#define cimg_for23Y(img,y) cimg_for23((img).height,y) 307.7523 +#define cimg_for23Z(img,z) cimg_for23((img).depth,z) 307.7524 +#define cimg_for23V(img,v) cimg_for23((img).dim,v) 307.7525 +#define cimg_for23XY(img,x,y) cimg_for23Y(img,y) cimg_for23X(img,x) 307.7526 +#define cimg_for23XZ(img,x,z) cimg_for23Z(img,z) cimg_for23X(img,x) 307.7527 +#define cimg_for23XV(img,x,v) cimg_for23V(img,v) cimg_for23X(img,x) 307.7528 +#define cimg_for23YZ(img,y,z) cimg_for23Z(img,z) cimg_for23Y(img,y) 307.7529 +#define cimg_for23YV(img,y,v) cimg_for23V(img,v) cimg_for23Y(img,y) 307.7530 +#define cimg_for23ZV(img,z,v) cimg_for23V(img,v) cimg_for23Z(img,z) 307.7531 +#define cimg_for23XYZ(img,x,y,z) cimg_for23Z(img,z) cimg_for23XY(img,x,y) 307.7532 +#define cimg_for23XZV(img,x,z,v) cimg_for23V(img,v) cimg_for23XZ(img,x,z) 307.7533 +#define cimg_for23YZV(img,y,z,v) cimg_for23V(img,v) cimg_for23YZ(img,y,z) 307.7534 +#define cimg_for23XYZV(img,x,y,z,v) cimg_for23V(img,v) cimg_for23XYZ(img,x,y,z) 307.7535 + 307.7536 +#define cimg_for_in23(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.7537 + _p11##i = i-11<0?0:i-11, \ 307.7538 + _p10##i = i-10<0?0:i-10, \ 307.7539 + _p9##i = i-9<0?0:i-9, \ 307.7540 + _p8##i = i-8<0?0:i-8, \ 307.7541 + _p7##i = i-7<0?0:i-7, \ 307.7542 + _p6##i = i-6<0?0:i-6, \ 307.7543 + _p5##i = i-5<0?0:i-5, \ 307.7544 + _p4##i = i-4<0?0:i-4, \ 307.7545 + _p3##i = i-3<0?0:i-3, \ 307.7546 + _p2##i = i-2<0?0:i-2, \ 307.7547 + _p1##i = i-1<0?0:i-1, \ 307.7548 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.7549 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.7550 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.7551 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.7552 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.7553 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.7554 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.7555 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.7556 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9, \ 307.7557 + _n10##i = i+10>=(int)(bound)?(int)(bound)-1:i+10, \ 307.7558 + _n11##i = i+11>=(int)(bound)?(int)(bound)-1:i+11; \ 307.7559 + i<=(int)(i1) && (_n11##i<(int)(bound) || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.7560 + i==(_n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.7561 + _p11##i = _p10##i, _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.7562 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i) 307.7563 + 307.7564 +#define cimg_for_in23X(img,x0,x1,x) cimg_for_in23((img).width,x0,x1,x) 307.7565 +#define cimg_for_in23Y(img,y0,y1,y) cimg_for_in23((img).height,y0,y1,y) 307.7566 +#define cimg_for_in23Z(img,z0,z1,z) cimg_for_in23((img).depth,z0,z1,z) 307.7567 +#define cimg_for_in23V(img,v0,v1,v) cimg_for_in23((img).dim,v0,v1,v) 307.7568 +#define cimg_for_in23XY(img,x0,y0,x1,y1,x,y) cimg_for_in23Y(img,y0,y1,y) cimg_for_in23X(img,x0,x1,x) 307.7569 +#define cimg_for_in23XZ(img,x0,z0,x1,z1,x,z) cimg_for_in23Z(img,z0,z1,z) cimg_for_in23X(img,x0,x1,x) 307.7570 +#define cimg_for_in23XV(img,x0,v0,x1,v1,x,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23X(img,x0,x1,x) 307.7571 +#define cimg_for_in23YZ(img,y0,z0,y1,z1,y,z) cimg_for_in23Z(img,z0,z1,z) cimg_for_in23Y(img,y0,y1,y) 307.7572 +#define cimg_for_in23YV(img,y0,v0,y1,v1,y,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23Y(img,y0,y1,y) 307.7573 +#define cimg_for_in23ZV(img,z0,v0,z1,v1,z,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23Z(img,z0,z1,z) 307.7574 +#define cimg_for_in23XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in23Z(img,z0,z1,z) cimg_for_in23XY(img,x0,y0,x1,y1,x,y) 307.7575 +#define cimg_for_in23XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23XZ(img,x0,y0,x1,y1,x,z) 307.7576 +#define cimg_for_in23YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23YZ(img,y0,z0,y1,z1,y,z) 307.7577 +#define cimg_for_in23XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in23V(img,v0,v1,v) cimg_for_in23XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.7578 + 307.7579 +#define cimg_for23x23(img,x,y,z,v,I) \ 307.7580 + cimg_for23((img).height,y) for (int x = 0, \ 307.7581 + _p11##x = 0, _p10##x = 0, _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.7582 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.7583 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.7584 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.7585 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.7586 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.7587 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.7588 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.7589 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.7590 + _n9##x = 9>=((img).width)?(int)((img).width)-1:9, \ 307.7591 + _n10##x = 10>=((img).width)?(int)((img).width)-1:10, \ 307.7592 + _n11##x = (int)( \ 307.7593 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = I[10] = I[11] = (img)(0,_p11##y,z,v)), \ 307.7594 + (I[23] = I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = I[30] = I[31] = I[32] = I[33] = I[34] = (img)(0,_p10##y,z,v)), \ 307.7595 + (I[46] = I[47] = I[48] = I[49] = I[50] = I[51] = I[52] = I[53] = I[54] = I[55] = I[56] = I[57] = (img)(0,_p9##y,z,v)), \ 307.7596 + (I[69] = I[70] = I[71] = I[72] = I[73] = I[74] = I[75] = I[76] = I[77] = I[78] = I[79] = I[80] = (img)(0,_p8##y,z,v)), \ 307.7597 + (I[92] = I[93] = I[94] = I[95] = I[96] = I[97] = I[98] = I[99] = I[100] = I[101] = I[102] = I[103] = (img)(0,_p7##y,z,v)), \ 307.7598 + (I[115] = I[116] = I[117] = I[118] = I[119] = I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = I[126] = (img)(0,_p6##y,z,v)), \ 307.7599 + (I[138] = I[139] = I[140] = I[141] = I[142] = I[143] = I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = (img)(0,_p5##y,z,v)), \ 307.7600 + (I[161] = I[162] = I[163] = I[164] = I[165] = I[166] = I[167] = I[168] = I[169] = I[170] = I[171] = I[172] = (img)(0,_p4##y,z,v)), \ 307.7601 + (I[184] = I[185] = I[186] = I[187] = I[188] = I[189] = I[190] = I[191] = I[192] = I[193] = I[194] = I[195] = (img)(0,_p3##y,z,v)), \ 307.7602 + (I[207] = I[208] = I[209] = I[210] = I[211] = I[212] = I[213] = I[214] = I[215] = I[216] = I[217] = I[218] = (img)(0,_p2##y,z,v)), \ 307.7603 + (I[230] = I[231] = I[232] = I[233] = I[234] = I[235] = I[236] = I[237] = I[238] = I[239] = I[240] = I[241] = (img)(0,_p1##y,z,v)), \ 307.7604 + (I[253] = I[254] = I[255] = I[256] = I[257] = I[258] = I[259] = I[260] = I[261] = I[262] = I[263] = I[264] = (img)(0,y,z,v)), \ 307.7605 + (I[276] = I[277] = I[278] = I[279] = I[280] = I[281] = I[282] = I[283] = I[284] = I[285] = I[286] = I[287] = (img)(0,_n1##y,z,v)), \ 307.7606 + (I[299] = I[300] = I[301] = I[302] = I[303] = I[304] = I[305] = I[306] = I[307] = I[308] = I[309] = I[310] = (img)(0,_n2##y,z,v)), \ 307.7607 + (I[322] = I[323] = I[324] = I[325] = I[326] = I[327] = I[328] = I[329] = I[330] = I[331] = I[332] = I[333] = (img)(0,_n3##y,z,v)), \ 307.7608 + (I[345] = I[346] = I[347] = I[348] = I[349] = I[350] = I[351] = I[352] = I[353] = I[354] = I[355] = I[356] = (img)(0,_n4##y,z,v)), \ 307.7609 + (I[368] = I[369] = I[370] = I[371] = I[372] = I[373] = I[374] = I[375] = I[376] = I[377] = I[378] = I[379] = (img)(0,_n5##y,z,v)), \ 307.7610 + (I[391] = I[392] = I[393] = I[394] = I[395] = I[396] = I[397] = I[398] = I[399] = I[400] = I[401] = I[402] = (img)(0,_n6##y,z,v)), \ 307.7611 + (I[414] = I[415] = I[416] = I[417] = I[418] = I[419] = I[420] = I[421] = I[422] = I[423] = I[424] = I[425] = (img)(0,_n7##y,z,v)), \ 307.7612 + (I[437] = I[438] = I[439] = I[440] = I[441] = I[442] = I[443] = I[444] = I[445] = I[446] = I[447] = I[448] = (img)(0,_n8##y,z,v)), \ 307.7613 + (I[460] = I[461] = I[462] = I[463] = I[464] = I[465] = I[466] = I[467] = I[468] = I[469] = I[470] = I[471] = (img)(0,_n9##y,z,v)), \ 307.7614 + (I[483] = I[484] = I[485] = I[486] = I[487] = I[488] = I[489] = I[490] = I[491] = I[492] = I[493] = I[494] = (img)(0,_n10##y,z,v)), \ 307.7615 + (I[506] = I[507] = I[508] = I[509] = I[510] = I[511] = I[512] = I[513] = I[514] = I[515] = I[516] = I[517] = (img)(0,_n11##y,z,v)), \ 307.7616 + (I[12] = (img)(_n1##x,_p11##y,z,v)), \ 307.7617 + (I[35] = (img)(_n1##x,_p10##y,z,v)), \ 307.7618 + (I[58] = (img)(_n1##x,_p9##y,z,v)), \ 307.7619 + (I[81] = (img)(_n1##x,_p8##y,z,v)), \ 307.7620 + (I[104] = (img)(_n1##x,_p7##y,z,v)), \ 307.7621 + (I[127] = (img)(_n1##x,_p6##y,z,v)), \ 307.7622 + (I[150] = (img)(_n1##x,_p5##y,z,v)), \ 307.7623 + (I[173] = (img)(_n1##x,_p4##y,z,v)), \ 307.7624 + (I[196] = (img)(_n1##x,_p3##y,z,v)), \ 307.7625 + (I[219] = (img)(_n1##x,_p2##y,z,v)), \ 307.7626 + (I[242] = (img)(_n1##x,_p1##y,z,v)), \ 307.7627 + (I[265] = (img)(_n1##x,y,z,v)), \ 307.7628 + (I[288] = (img)(_n1##x,_n1##y,z,v)), \ 307.7629 + (I[311] = (img)(_n1##x,_n2##y,z,v)), \ 307.7630 + (I[334] = (img)(_n1##x,_n3##y,z,v)), \ 307.7631 + (I[357] = (img)(_n1##x,_n4##y,z,v)), \ 307.7632 + (I[380] = (img)(_n1##x,_n5##y,z,v)), \ 307.7633 + (I[403] = (img)(_n1##x,_n6##y,z,v)), \ 307.7634 + (I[426] = (img)(_n1##x,_n7##y,z,v)), \ 307.7635 + (I[449] = (img)(_n1##x,_n8##y,z,v)), \ 307.7636 + (I[472] = (img)(_n1##x,_n9##y,z,v)), \ 307.7637 + (I[495] = (img)(_n1##x,_n10##y,z,v)), \ 307.7638 + (I[518] = (img)(_n1##x,_n11##y,z,v)), \ 307.7639 + (I[13] = (img)(_n2##x,_p11##y,z,v)), \ 307.7640 + (I[36] = (img)(_n2##x,_p10##y,z,v)), \ 307.7641 + (I[59] = (img)(_n2##x,_p9##y,z,v)), \ 307.7642 + (I[82] = (img)(_n2##x,_p8##y,z,v)), \ 307.7643 + (I[105] = (img)(_n2##x,_p7##y,z,v)), \ 307.7644 + (I[128] = (img)(_n2##x,_p6##y,z,v)), \ 307.7645 + (I[151] = (img)(_n2##x,_p5##y,z,v)), \ 307.7646 + (I[174] = (img)(_n2##x,_p4##y,z,v)), \ 307.7647 + (I[197] = (img)(_n2##x,_p3##y,z,v)), \ 307.7648 + (I[220] = (img)(_n2##x,_p2##y,z,v)), \ 307.7649 + (I[243] = (img)(_n2##x,_p1##y,z,v)), \ 307.7650 + (I[266] = (img)(_n2##x,y,z,v)), \ 307.7651 + (I[289] = (img)(_n2##x,_n1##y,z,v)), \ 307.7652 + (I[312] = (img)(_n2##x,_n2##y,z,v)), \ 307.7653 + (I[335] = (img)(_n2##x,_n3##y,z,v)), \ 307.7654 + (I[358] = (img)(_n2##x,_n4##y,z,v)), \ 307.7655 + (I[381] = (img)(_n2##x,_n5##y,z,v)), \ 307.7656 + (I[404] = (img)(_n2##x,_n6##y,z,v)), \ 307.7657 + (I[427] = (img)(_n2##x,_n7##y,z,v)), \ 307.7658 + (I[450] = (img)(_n2##x,_n8##y,z,v)), \ 307.7659 + (I[473] = (img)(_n2##x,_n9##y,z,v)), \ 307.7660 + (I[496] = (img)(_n2##x,_n10##y,z,v)), \ 307.7661 + (I[519] = (img)(_n2##x,_n11##y,z,v)), \ 307.7662 + (I[14] = (img)(_n3##x,_p11##y,z,v)), \ 307.7663 + (I[37] = (img)(_n3##x,_p10##y,z,v)), \ 307.7664 + (I[60] = (img)(_n3##x,_p9##y,z,v)), \ 307.7665 + (I[83] = (img)(_n3##x,_p8##y,z,v)), \ 307.7666 + (I[106] = (img)(_n3##x,_p7##y,z,v)), \ 307.7667 + (I[129] = (img)(_n3##x,_p6##y,z,v)), \ 307.7668 + (I[152] = (img)(_n3##x,_p5##y,z,v)), \ 307.7669 + (I[175] = (img)(_n3##x,_p4##y,z,v)), \ 307.7670 + (I[198] = (img)(_n3##x,_p3##y,z,v)), \ 307.7671 + (I[221] = (img)(_n3##x,_p2##y,z,v)), \ 307.7672 + (I[244] = (img)(_n3##x,_p1##y,z,v)), \ 307.7673 + (I[267] = (img)(_n3##x,y,z,v)), \ 307.7674 + (I[290] = (img)(_n3##x,_n1##y,z,v)), \ 307.7675 + (I[313] = (img)(_n3##x,_n2##y,z,v)), \ 307.7676 + (I[336] = (img)(_n3##x,_n3##y,z,v)), \ 307.7677 + (I[359] = (img)(_n3##x,_n4##y,z,v)), \ 307.7678 + (I[382] = (img)(_n3##x,_n5##y,z,v)), \ 307.7679 + (I[405] = (img)(_n3##x,_n6##y,z,v)), \ 307.7680 + (I[428] = (img)(_n3##x,_n7##y,z,v)), \ 307.7681 + (I[451] = (img)(_n3##x,_n8##y,z,v)), \ 307.7682 + (I[474] = (img)(_n3##x,_n9##y,z,v)), \ 307.7683 + (I[497] = (img)(_n3##x,_n10##y,z,v)), \ 307.7684 + (I[520] = (img)(_n3##x,_n11##y,z,v)), \ 307.7685 + (I[15] = (img)(_n4##x,_p11##y,z,v)), \ 307.7686 + (I[38] = (img)(_n4##x,_p10##y,z,v)), \ 307.7687 + (I[61] = (img)(_n4##x,_p9##y,z,v)), \ 307.7688 + (I[84] = (img)(_n4##x,_p8##y,z,v)), \ 307.7689 + (I[107] = (img)(_n4##x,_p7##y,z,v)), \ 307.7690 + (I[130] = (img)(_n4##x,_p6##y,z,v)), \ 307.7691 + (I[153] = (img)(_n4##x,_p5##y,z,v)), \ 307.7692 + (I[176] = (img)(_n4##x,_p4##y,z,v)), \ 307.7693 + (I[199] = (img)(_n4##x,_p3##y,z,v)), \ 307.7694 + (I[222] = (img)(_n4##x,_p2##y,z,v)), \ 307.7695 + (I[245] = (img)(_n4##x,_p1##y,z,v)), \ 307.7696 + (I[268] = (img)(_n4##x,y,z,v)), \ 307.7697 + (I[291] = (img)(_n4##x,_n1##y,z,v)), \ 307.7698 + (I[314] = (img)(_n4##x,_n2##y,z,v)), \ 307.7699 + (I[337] = (img)(_n4##x,_n3##y,z,v)), \ 307.7700 + (I[360] = (img)(_n4##x,_n4##y,z,v)), \ 307.7701 + (I[383] = (img)(_n4##x,_n5##y,z,v)), \ 307.7702 + (I[406] = (img)(_n4##x,_n6##y,z,v)), \ 307.7703 + (I[429] = (img)(_n4##x,_n7##y,z,v)), \ 307.7704 + (I[452] = (img)(_n4##x,_n8##y,z,v)), \ 307.7705 + (I[475] = (img)(_n4##x,_n9##y,z,v)), \ 307.7706 + (I[498] = (img)(_n4##x,_n10##y,z,v)), \ 307.7707 + (I[521] = (img)(_n4##x,_n11##y,z,v)), \ 307.7708 + (I[16] = (img)(_n5##x,_p11##y,z,v)), \ 307.7709 + (I[39] = (img)(_n5##x,_p10##y,z,v)), \ 307.7710 + (I[62] = (img)(_n5##x,_p9##y,z,v)), \ 307.7711 + (I[85] = (img)(_n5##x,_p8##y,z,v)), \ 307.7712 + (I[108] = (img)(_n5##x,_p7##y,z,v)), \ 307.7713 + (I[131] = (img)(_n5##x,_p6##y,z,v)), \ 307.7714 + (I[154] = (img)(_n5##x,_p5##y,z,v)), \ 307.7715 + (I[177] = (img)(_n5##x,_p4##y,z,v)), \ 307.7716 + (I[200] = (img)(_n5##x,_p3##y,z,v)), \ 307.7717 + (I[223] = (img)(_n5##x,_p2##y,z,v)), \ 307.7718 + (I[246] = (img)(_n5##x,_p1##y,z,v)), \ 307.7719 + (I[269] = (img)(_n5##x,y,z,v)), \ 307.7720 + (I[292] = (img)(_n5##x,_n1##y,z,v)), \ 307.7721 + (I[315] = (img)(_n5##x,_n2##y,z,v)), \ 307.7722 + (I[338] = (img)(_n5##x,_n3##y,z,v)), \ 307.7723 + (I[361] = (img)(_n5##x,_n4##y,z,v)), \ 307.7724 + (I[384] = (img)(_n5##x,_n5##y,z,v)), \ 307.7725 + (I[407] = (img)(_n5##x,_n6##y,z,v)), \ 307.7726 + (I[430] = (img)(_n5##x,_n7##y,z,v)), \ 307.7727 + (I[453] = (img)(_n5##x,_n8##y,z,v)), \ 307.7728 + (I[476] = (img)(_n5##x,_n9##y,z,v)), \ 307.7729 + (I[499] = (img)(_n5##x,_n10##y,z,v)), \ 307.7730 + (I[522] = (img)(_n5##x,_n11##y,z,v)), \ 307.7731 + (I[17] = (img)(_n6##x,_p11##y,z,v)), \ 307.7732 + (I[40] = (img)(_n6##x,_p10##y,z,v)), \ 307.7733 + (I[63] = (img)(_n6##x,_p9##y,z,v)), \ 307.7734 + (I[86] = (img)(_n6##x,_p8##y,z,v)), \ 307.7735 + (I[109] = (img)(_n6##x,_p7##y,z,v)), \ 307.7736 + (I[132] = (img)(_n6##x,_p6##y,z,v)), \ 307.7737 + (I[155] = (img)(_n6##x,_p5##y,z,v)), \ 307.7738 + (I[178] = (img)(_n6##x,_p4##y,z,v)), \ 307.7739 + (I[201] = (img)(_n6##x,_p3##y,z,v)), \ 307.7740 + (I[224] = (img)(_n6##x,_p2##y,z,v)), \ 307.7741 + (I[247] = (img)(_n6##x,_p1##y,z,v)), \ 307.7742 + (I[270] = (img)(_n6##x,y,z,v)), \ 307.7743 + (I[293] = (img)(_n6##x,_n1##y,z,v)), \ 307.7744 + (I[316] = (img)(_n6##x,_n2##y,z,v)), \ 307.7745 + (I[339] = (img)(_n6##x,_n3##y,z,v)), \ 307.7746 + (I[362] = (img)(_n6##x,_n4##y,z,v)), \ 307.7747 + (I[385] = (img)(_n6##x,_n5##y,z,v)), \ 307.7748 + (I[408] = (img)(_n6##x,_n6##y,z,v)), \ 307.7749 + (I[431] = (img)(_n6##x,_n7##y,z,v)), \ 307.7750 + (I[454] = (img)(_n6##x,_n8##y,z,v)), \ 307.7751 + (I[477] = (img)(_n6##x,_n9##y,z,v)), \ 307.7752 + (I[500] = (img)(_n6##x,_n10##y,z,v)), \ 307.7753 + (I[523] = (img)(_n6##x,_n11##y,z,v)), \ 307.7754 + (I[18] = (img)(_n7##x,_p11##y,z,v)), \ 307.7755 + (I[41] = (img)(_n7##x,_p10##y,z,v)), \ 307.7756 + (I[64] = (img)(_n7##x,_p9##y,z,v)), \ 307.7757 + (I[87] = (img)(_n7##x,_p8##y,z,v)), \ 307.7758 + (I[110] = (img)(_n7##x,_p7##y,z,v)), \ 307.7759 + (I[133] = (img)(_n7##x,_p6##y,z,v)), \ 307.7760 + (I[156] = (img)(_n7##x,_p5##y,z,v)), \ 307.7761 + (I[179] = (img)(_n7##x,_p4##y,z,v)), \ 307.7762 + (I[202] = (img)(_n7##x,_p3##y,z,v)), \ 307.7763 + (I[225] = (img)(_n7##x,_p2##y,z,v)), \ 307.7764 + (I[248] = (img)(_n7##x,_p1##y,z,v)), \ 307.7765 + (I[271] = (img)(_n7##x,y,z,v)), \ 307.7766 + (I[294] = (img)(_n7##x,_n1##y,z,v)), \ 307.7767 + (I[317] = (img)(_n7##x,_n2##y,z,v)), \ 307.7768 + (I[340] = (img)(_n7##x,_n3##y,z,v)), \ 307.7769 + (I[363] = (img)(_n7##x,_n4##y,z,v)), \ 307.7770 + (I[386] = (img)(_n7##x,_n5##y,z,v)), \ 307.7771 + (I[409] = (img)(_n7##x,_n6##y,z,v)), \ 307.7772 + (I[432] = (img)(_n7##x,_n7##y,z,v)), \ 307.7773 + (I[455] = (img)(_n7##x,_n8##y,z,v)), \ 307.7774 + (I[478] = (img)(_n7##x,_n9##y,z,v)), \ 307.7775 + (I[501] = (img)(_n7##x,_n10##y,z,v)), \ 307.7776 + (I[524] = (img)(_n7##x,_n11##y,z,v)), \ 307.7777 + (I[19] = (img)(_n8##x,_p11##y,z,v)), \ 307.7778 + (I[42] = (img)(_n8##x,_p10##y,z,v)), \ 307.7779 + (I[65] = (img)(_n8##x,_p9##y,z,v)), \ 307.7780 + (I[88] = (img)(_n8##x,_p8##y,z,v)), \ 307.7781 + (I[111] = (img)(_n8##x,_p7##y,z,v)), \ 307.7782 + (I[134] = (img)(_n8##x,_p6##y,z,v)), \ 307.7783 + (I[157] = (img)(_n8##x,_p5##y,z,v)), \ 307.7784 + (I[180] = (img)(_n8##x,_p4##y,z,v)), \ 307.7785 + (I[203] = (img)(_n8##x,_p3##y,z,v)), \ 307.7786 + (I[226] = (img)(_n8##x,_p2##y,z,v)), \ 307.7787 + (I[249] = (img)(_n8##x,_p1##y,z,v)), \ 307.7788 + (I[272] = (img)(_n8##x,y,z,v)), \ 307.7789 + (I[295] = (img)(_n8##x,_n1##y,z,v)), \ 307.7790 + (I[318] = (img)(_n8##x,_n2##y,z,v)), \ 307.7791 + (I[341] = (img)(_n8##x,_n3##y,z,v)), \ 307.7792 + (I[364] = (img)(_n8##x,_n4##y,z,v)), \ 307.7793 + (I[387] = (img)(_n8##x,_n5##y,z,v)), \ 307.7794 + (I[410] = (img)(_n8##x,_n6##y,z,v)), \ 307.7795 + (I[433] = (img)(_n8##x,_n7##y,z,v)), \ 307.7796 + (I[456] = (img)(_n8##x,_n8##y,z,v)), \ 307.7797 + (I[479] = (img)(_n8##x,_n9##y,z,v)), \ 307.7798 + (I[502] = (img)(_n8##x,_n10##y,z,v)), \ 307.7799 + (I[525] = (img)(_n8##x,_n11##y,z,v)), \ 307.7800 + (I[20] = (img)(_n9##x,_p11##y,z,v)), \ 307.7801 + (I[43] = (img)(_n9##x,_p10##y,z,v)), \ 307.7802 + (I[66] = (img)(_n9##x,_p9##y,z,v)), \ 307.7803 + (I[89] = (img)(_n9##x,_p8##y,z,v)), \ 307.7804 + (I[112] = (img)(_n9##x,_p7##y,z,v)), \ 307.7805 + (I[135] = (img)(_n9##x,_p6##y,z,v)), \ 307.7806 + (I[158] = (img)(_n9##x,_p5##y,z,v)), \ 307.7807 + (I[181] = (img)(_n9##x,_p4##y,z,v)), \ 307.7808 + (I[204] = (img)(_n9##x,_p3##y,z,v)), \ 307.7809 + (I[227] = (img)(_n9##x,_p2##y,z,v)), \ 307.7810 + (I[250] = (img)(_n9##x,_p1##y,z,v)), \ 307.7811 + (I[273] = (img)(_n9##x,y,z,v)), \ 307.7812 + (I[296] = (img)(_n9##x,_n1##y,z,v)), \ 307.7813 + (I[319] = (img)(_n9##x,_n2##y,z,v)), \ 307.7814 + (I[342] = (img)(_n9##x,_n3##y,z,v)), \ 307.7815 + (I[365] = (img)(_n9##x,_n4##y,z,v)), \ 307.7816 + (I[388] = (img)(_n9##x,_n5##y,z,v)), \ 307.7817 + (I[411] = (img)(_n9##x,_n6##y,z,v)), \ 307.7818 + (I[434] = (img)(_n9##x,_n7##y,z,v)), \ 307.7819 + (I[457] = (img)(_n9##x,_n8##y,z,v)), \ 307.7820 + (I[480] = (img)(_n9##x,_n9##y,z,v)), \ 307.7821 + (I[503] = (img)(_n9##x,_n10##y,z,v)), \ 307.7822 + (I[526] = (img)(_n9##x,_n11##y,z,v)), \ 307.7823 + (I[21] = (img)(_n10##x,_p11##y,z,v)), \ 307.7824 + (I[44] = (img)(_n10##x,_p10##y,z,v)), \ 307.7825 + (I[67] = (img)(_n10##x,_p9##y,z,v)), \ 307.7826 + (I[90] = (img)(_n10##x,_p8##y,z,v)), \ 307.7827 + (I[113] = (img)(_n10##x,_p7##y,z,v)), \ 307.7828 + (I[136] = (img)(_n10##x,_p6##y,z,v)), \ 307.7829 + (I[159] = (img)(_n10##x,_p5##y,z,v)), \ 307.7830 + (I[182] = (img)(_n10##x,_p4##y,z,v)), \ 307.7831 + (I[205] = (img)(_n10##x,_p3##y,z,v)), \ 307.7832 + (I[228] = (img)(_n10##x,_p2##y,z,v)), \ 307.7833 + (I[251] = (img)(_n10##x,_p1##y,z,v)), \ 307.7834 + (I[274] = (img)(_n10##x,y,z,v)), \ 307.7835 + (I[297] = (img)(_n10##x,_n1##y,z,v)), \ 307.7836 + (I[320] = (img)(_n10##x,_n2##y,z,v)), \ 307.7837 + (I[343] = (img)(_n10##x,_n3##y,z,v)), \ 307.7838 + (I[366] = (img)(_n10##x,_n4##y,z,v)), \ 307.7839 + (I[389] = (img)(_n10##x,_n5##y,z,v)), \ 307.7840 + (I[412] = (img)(_n10##x,_n6##y,z,v)), \ 307.7841 + (I[435] = (img)(_n10##x,_n7##y,z,v)), \ 307.7842 + (I[458] = (img)(_n10##x,_n8##y,z,v)), \ 307.7843 + (I[481] = (img)(_n10##x,_n9##y,z,v)), \ 307.7844 + (I[504] = (img)(_n10##x,_n10##y,z,v)), \ 307.7845 + (I[527] = (img)(_n10##x,_n11##y,z,v)), \ 307.7846 + 11>=((img).width)?(int)((img).width)-1:11); \ 307.7847 + (_n11##x<(int)((img).width) && ( \ 307.7848 + (I[22] = (img)(_n11##x,_p11##y,z,v)), \ 307.7849 + (I[45] = (img)(_n11##x,_p10##y,z,v)), \ 307.7850 + (I[68] = (img)(_n11##x,_p9##y,z,v)), \ 307.7851 + (I[91] = (img)(_n11##x,_p8##y,z,v)), \ 307.7852 + (I[114] = (img)(_n11##x,_p7##y,z,v)), \ 307.7853 + (I[137] = (img)(_n11##x,_p6##y,z,v)), \ 307.7854 + (I[160] = (img)(_n11##x,_p5##y,z,v)), \ 307.7855 + (I[183] = (img)(_n11##x,_p4##y,z,v)), \ 307.7856 + (I[206] = (img)(_n11##x,_p3##y,z,v)), \ 307.7857 + (I[229] = (img)(_n11##x,_p2##y,z,v)), \ 307.7858 + (I[252] = (img)(_n11##x,_p1##y,z,v)), \ 307.7859 + (I[275] = (img)(_n11##x,y,z,v)), \ 307.7860 + (I[298] = (img)(_n11##x,_n1##y,z,v)), \ 307.7861 + (I[321] = (img)(_n11##x,_n2##y,z,v)), \ 307.7862 + (I[344] = (img)(_n11##x,_n3##y,z,v)), \ 307.7863 + (I[367] = (img)(_n11##x,_n4##y,z,v)), \ 307.7864 + (I[390] = (img)(_n11##x,_n5##y,z,v)), \ 307.7865 + (I[413] = (img)(_n11##x,_n6##y,z,v)), \ 307.7866 + (I[436] = (img)(_n11##x,_n7##y,z,v)), \ 307.7867 + (I[459] = (img)(_n11##x,_n8##y,z,v)), \ 307.7868 + (I[482] = (img)(_n11##x,_n9##y,z,v)), \ 307.7869 + (I[505] = (img)(_n11##x,_n10##y,z,v)), \ 307.7870 + (I[528] = (img)(_n11##x,_n11##y,z,v)),1)) || \ 307.7871 + _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.7872 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], \ 307.7873 + I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], \ 307.7874 + I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], \ 307.7875 + I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], \ 307.7876 + I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], \ 307.7877 + I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], \ 307.7878 + I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], \ 307.7879 + I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], \ 307.7880 + I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], \ 307.7881 + I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], \ 307.7882 + I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], \ 307.7883 + I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], \ 307.7884 + I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], \ 307.7885 + I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], \ 307.7886 + I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], \ 307.7887 + I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], \ 307.7888 + I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], \ 307.7889 + I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], \ 307.7890 + I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], \ 307.7891 + I[437] = I[438], I[438] = I[439], I[439] = I[440], I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], I[455] = I[456], I[456] = I[457], I[457] = I[458], I[458] = I[459], \ 307.7892 + I[460] = I[461], I[461] = I[462], I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], I[479] = I[480], I[480] = I[481], I[481] = I[482], \ 307.7893 + I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], I[487] = I[488], I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], I[495] = I[496], I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], I[503] = I[504], I[504] = I[505], \ 307.7894 + I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], I[511] = I[512], I[512] = I[513], I[513] = I[514], I[514] = I[515], I[515] = I[516], I[516] = I[517], I[517] = I[518], I[518] = I[519], I[519] = I[520], I[520] = I[521], I[521] = I[522], I[522] = I[523], I[523] = I[524], I[524] = I[525], I[525] = I[526], I[526] = I[527], I[527] = I[528], \ 307.7895 + _p11##x = _p10##x, _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x) 307.7896 + 307.7897 +#define cimg_for_in23x23(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.7898 + cimg_for_in23((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.7899 + _p11##x = x-11<0?0:x-11, \ 307.7900 + _p10##x = x-10<0?0:x-10, \ 307.7901 + _p9##x = x-9<0?0:x-9, \ 307.7902 + _p8##x = x-8<0?0:x-8, \ 307.7903 + _p7##x = x-7<0?0:x-7, \ 307.7904 + _p6##x = x-6<0?0:x-6, \ 307.7905 + _p5##x = x-5<0?0:x-5, \ 307.7906 + _p4##x = x-4<0?0:x-4, \ 307.7907 + _p3##x = x-3<0?0:x-3, \ 307.7908 + _p2##x = x-2<0?0:x-2, \ 307.7909 + _p1##x = x-1<0?0:x-1, \ 307.7910 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.7911 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.7912 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.7913 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.7914 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.7915 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.7916 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.7917 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.7918 + _n9##x = x+9>=(int)((img).width)?(int)((img).width)-1:x+9, \ 307.7919 + _n10##x = x+10>=(int)((img).width)?(int)((img).width)-1:x+10, \ 307.7920 + _n11##x = (int)( \ 307.7921 + (I[0] = (img)(_p11##x,_p11##y,z,v)), \ 307.7922 + (I[23] = (img)(_p11##x,_p10##y,z,v)), \ 307.7923 + (I[46] = (img)(_p11##x,_p9##y,z,v)), \ 307.7924 + (I[69] = (img)(_p11##x,_p8##y,z,v)), \ 307.7925 + (I[92] = (img)(_p11##x,_p7##y,z,v)), \ 307.7926 + (I[115] = (img)(_p11##x,_p6##y,z,v)), \ 307.7927 + (I[138] = (img)(_p11##x,_p5##y,z,v)), \ 307.7928 + (I[161] = (img)(_p11##x,_p4##y,z,v)), \ 307.7929 + (I[184] = (img)(_p11##x,_p3##y,z,v)), \ 307.7930 + (I[207] = (img)(_p11##x,_p2##y,z,v)), \ 307.7931 + (I[230] = (img)(_p11##x,_p1##y,z,v)), \ 307.7932 + (I[253] = (img)(_p11##x,y,z,v)), \ 307.7933 + (I[276] = (img)(_p11##x,_n1##y,z,v)), \ 307.7934 + (I[299] = (img)(_p11##x,_n2##y,z,v)), \ 307.7935 + (I[322] = (img)(_p11##x,_n3##y,z,v)), \ 307.7936 + (I[345] = (img)(_p11##x,_n4##y,z,v)), \ 307.7937 + (I[368] = (img)(_p11##x,_n5##y,z,v)), \ 307.7938 + (I[391] = (img)(_p11##x,_n6##y,z,v)), \ 307.7939 + (I[414] = (img)(_p11##x,_n7##y,z,v)), \ 307.7940 + (I[437] = (img)(_p11##x,_n8##y,z,v)), \ 307.7941 + (I[460] = (img)(_p11##x,_n9##y,z,v)), \ 307.7942 + (I[483] = (img)(_p11##x,_n10##y,z,v)), \ 307.7943 + (I[506] = (img)(_p11##x,_n11##y,z,v)), \ 307.7944 + (I[1] = (img)(_p10##x,_p11##y,z,v)), \ 307.7945 + (I[24] = (img)(_p10##x,_p10##y,z,v)), \ 307.7946 + (I[47] = (img)(_p10##x,_p9##y,z,v)), \ 307.7947 + (I[70] = (img)(_p10##x,_p8##y,z,v)), \ 307.7948 + (I[93] = (img)(_p10##x,_p7##y,z,v)), \ 307.7949 + (I[116] = (img)(_p10##x,_p6##y,z,v)), \ 307.7950 + (I[139] = (img)(_p10##x,_p5##y,z,v)), \ 307.7951 + (I[162] = (img)(_p10##x,_p4##y,z,v)), \ 307.7952 + (I[185] = (img)(_p10##x,_p3##y,z,v)), \ 307.7953 + (I[208] = (img)(_p10##x,_p2##y,z,v)), \ 307.7954 + (I[231] = (img)(_p10##x,_p1##y,z,v)), \ 307.7955 + (I[254] = (img)(_p10##x,y,z,v)), \ 307.7956 + (I[277] = (img)(_p10##x,_n1##y,z,v)), \ 307.7957 + (I[300] = (img)(_p10##x,_n2##y,z,v)), \ 307.7958 + (I[323] = (img)(_p10##x,_n3##y,z,v)), \ 307.7959 + (I[346] = (img)(_p10##x,_n4##y,z,v)), \ 307.7960 + (I[369] = (img)(_p10##x,_n5##y,z,v)), \ 307.7961 + (I[392] = (img)(_p10##x,_n6##y,z,v)), \ 307.7962 + (I[415] = (img)(_p10##x,_n7##y,z,v)), \ 307.7963 + (I[438] = (img)(_p10##x,_n8##y,z,v)), \ 307.7964 + (I[461] = (img)(_p10##x,_n9##y,z,v)), \ 307.7965 + (I[484] = (img)(_p10##x,_n10##y,z,v)), \ 307.7966 + (I[507] = (img)(_p10##x,_n11##y,z,v)), \ 307.7967 + (I[2] = (img)(_p9##x,_p11##y,z,v)), \ 307.7968 + (I[25] = (img)(_p9##x,_p10##y,z,v)), \ 307.7969 + (I[48] = (img)(_p9##x,_p9##y,z,v)), \ 307.7970 + (I[71] = (img)(_p9##x,_p8##y,z,v)), \ 307.7971 + (I[94] = (img)(_p9##x,_p7##y,z,v)), \ 307.7972 + (I[117] = (img)(_p9##x,_p6##y,z,v)), \ 307.7973 + (I[140] = (img)(_p9##x,_p5##y,z,v)), \ 307.7974 + (I[163] = (img)(_p9##x,_p4##y,z,v)), \ 307.7975 + (I[186] = (img)(_p9##x,_p3##y,z,v)), \ 307.7976 + (I[209] = (img)(_p9##x,_p2##y,z,v)), \ 307.7977 + (I[232] = (img)(_p9##x,_p1##y,z,v)), \ 307.7978 + (I[255] = (img)(_p9##x,y,z,v)), \ 307.7979 + (I[278] = (img)(_p9##x,_n1##y,z,v)), \ 307.7980 + (I[301] = (img)(_p9##x,_n2##y,z,v)), \ 307.7981 + (I[324] = (img)(_p9##x,_n3##y,z,v)), \ 307.7982 + (I[347] = (img)(_p9##x,_n4##y,z,v)), \ 307.7983 + (I[370] = (img)(_p9##x,_n5##y,z,v)), \ 307.7984 + (I[393] = (img)(_p9##x,_n6##y,z,v)), \ 307.7985 + (I[416] = (img)(_p9##x,_n7##y,z,v)), \ 307.7986 + (I[439] = (img)(_p9##x,_n8##y,z,v)), \ 307.7987 + (I[462] = (img)(_p9##x,_n9##y,z,v)), \ 307.7988 + (I[485] = (img)(_p9##x,_n10##y,z,v)), \ 307.7989 + (I[508] = (img)(_p9##x,_n11##y,z,v)), \ 307.7990 + (I[3] = (img)(_p8##x,_p11##y,z,v)), \ 307.7991 + (I[26] = (img)(_p8##x,_p10##y,z,v)), \ 307.7992 + (I[49] = (img)(_p8##x,_p9##y,z,v)), \ 307.7993 + (I[72] = (img)(_p8##x,_p8##y,z,v)), \ 307.7994 + (I[95] = (img)(_p8##x,_p7##y,z,v)), \ 307.7995 + (I[118] = (img)(_p8##x,_p6##y,z,v)), \ 307.7996 + (I[141] = (img)(_p8##x,_p5##y,z,v)), \ 307.7997 + (I[164] = (img)(_p8##x,_p4##y,z,v)), \ 307.7998 + (I[187] = (img)(_p8##x,_p3##y,z,v)), \ 307.7999 + (I[210] = (img)(_p8##x,_p2##y,z,v)), \ 307.8000 + (I[233] = (img)(_p8##x,_p1##y,z,v)), \ 307.8001 + (I[256] = (img)(_p8##x,y,z,v)), \ 307.8002 + (I[279] = (img)(_p8##x,_n1##y,z,v)), \ 307.8003 + (I[302] = (img)(_p8##x,_n2##y,z,v)), \ 307.8004 + (I[325] = (img)(_p8##x,_n3##y,z,v)), \ 307.8005 + (I[348] = (img)(_p8##x,_n4##y,z,v)), \ 307.8006 + (I[371] = (img)(_p8##x,_n5##y,z,v)), \ 307.8007 + (I[394] = (img)(_p8##x,_n6##y,z,v)), \ 307.8008 + (I[417] = (img)(_p8##x,_n7##y,z,v)), \ 307.8009 + (I[440] = (img)(_p8##x,_n8##y,z,v)), \ 307.8010 + (I[463] = (img)(_p8##x,_n9##y,z,v)), \ 307.8011 + (I[486] = (img)(_p8##x,_n10##y,z,v)), \ 307.8012 + (I[509] = (img)(_p8##x,_n11##y,z,v)), \ 307.8013 + (I[4] = (img)(_p7##x,_p11##y,z,v)), \ 307.8014 + (I[27] = (img)(_p7##x,_p10##y,z,v)), \ 307.8015 + (I[50] = (img)(_p7##x,_p9##y,z,v)), \ 307.8016 + (I[73] = (img)(_p7##x,_p8##y,z,v)), \ 307.8017 + (I[96] = (img)(_p7##x,_p7##y,z,v)), \ 307.8018 + (I[119] = (img)(_p7##x,_p6##y,z,v)), \ 307.8019 + (I[142] = (img)(_p7##x,_p5##y,z,v)), \ 307.8020 + (I[165] = (img)(_p7##x,_p4##y,z,v)), \ 307.8021 + (I[188] = (img)(_p7##x,_p3##y,z,v)), \ 307.8022 + (I[211] = (img)(_p7##x,_p2##y,z,v)), \ 307.8023 + (I[234] = (img)(_p7##x,_p1##y,z,v)), \ 307.8024 + (I[257] = (img)(_p7##x,y,z,v)), \ 307.8025 + (I[280] = (img)(_p7##x,_n1##y,z,v)), \ 307.8026 + (I[303] = (img)(_p7##x,_n2##y,z,v)), \ 307.8027 + (I[326] = (img)(_p7##x,_n3##y,z,v)), \ 307.8028 + (I[349] = (img)(_p7##x,_n4##y,z,v)), \ 307.8029 + (I[372] = (img)(_p7##x,_n5##y,z,v)), \ 307.8030 + (I[395] = (img)(_p7##x,_n6##y,z,v)), \ 307.8031 + (I[418] = (img)(_p7##x,_n7##y,z,v)), \ 307.8032 + (I[441] = (img)(_p7##x,_n8##y,z,v)), \ 307.8033 + (I[464] = (img)(_p7##x,_n9##y,z,v)), \ 307.8034 + (I[487] = (img)(_p7##x,_n10##y,z,v)), \ 307.8035 + (I[510] = (img)(_p7##x,_n11##y,z,v)), \ 307.8036 + (I[5] = (img)(_p6##x,_p11##y,z,v)), \ 307.8037 + (I[28] = (img)(_p6##x,_p10##y,z,v)), \ 307.8038 + (I[51] = (img)(_p6##x,_p9##y,z,v)), \ 307.8039 + (I[74] = (img)(_p6##x,_p8##y,z,v)), \ 307.8040 + (I[97] = (img)(_p6##x,_p7##y,z,v)), \ 307.8041 + (I[120] = (img)(_p6##x,_p6##y,z,v)), \ 307.8042 + (I[143] = (img)(_p6##x,_p5##y,z,v)), \ 307.8043 + (I[166] = (img)(_p6##x,_p4##y,z,v)), \ 307.8044 + (I[189] = (img)(_p6##x,_p3##y,z,v)), \ 307.8045 + (I[212] = (img)(_p6##x,_p2##y,z,v)), \ 307.8046 + (I[235] = (img)(_p6##x,_p1##y,z,v)), \ 307.8047 + (I[258] = (img)(_p6##x,y,z,v)), \ 307.8048 + (I[281] = (img)(_p6##x,_n1##y,z,v)), \ 307.8049 + (I[304] = (img)(_p6##x,_n2##y,z,v)), \ 307.8050 + (I[327] = (img)(_p6##x,_n3##y,z,v)), \ 307.8051 + (I[350] = (img)(_p6##x,_n4##y,z,v)), \ 307.8052 + (I[373] = (img)(_p6##x,_n5##y,z,v)), \ 307.8053 + (I[396] = (img)(_p6##x,_n6##y,z,v)), \ 307.8054 + (I[419] = (img)(_p6##x,_n7##y,z,v)), \ 307.8055 + (I[442] = (img)(_p6##x,_n8##y,z,v)), \ 307.8056 + (I[465] = (img)(_p6##x,_n9##y,z,v)), \ 307.8057 + (I[488] = (img)(_p6##x,_n10##y,z,v)), \ 307.8058 + (I[511] = (img)(_p6##x,_n11##y,z,v)), \ 307.8059 + (I[6] = (img)(_p5##x,_p11##y,z,v)), \ 307.8060 + (I[29] = (img)(_p5##x,_p10##y,z,v)), \ 307.8061 + (I[52] = (img)(_p5##x,_p9##y,z,v)), \ 307.8062 + (I[75] = (img)(_p5##x,_p8##y,z,v)), \ 307.8063 + (I[98] = (img)(_p5##x,_p7##y,z,v)), \ 307.8064 + (I[121] = (img)(_p5##x,_p6##y,z,v)), \ 307.8065 + (I[144] = (img)(_p5##x,_p5##y,z,v)), \ 307.8066 + (I[167] = (img)(_p5##x,_p4##y,z,v)), \ 307.8067 + (I[190] = (img)(_p5##x,_p3##y,z,v)), \ 307.8068 + (I[213] = (img)(_p5##x,_p2##y,z,v)), \ 307.8069 + (I[236] = (img)(_p5##x,_p1##y,z,v)), \ 307.8070 + (I[259] = (img)(_p5##x,y,z,v)), \ 307.8071 + (I[282] = (img)(_p5##x,_n1##y,z,v)), \ 307.8072 + (I[305] = (img)(_p5##x,_n2##y,z,v)), \ 307.8073 + (I[328] = (img)(_p5##x,_n3##y,z,v)), \ 307.8074 + (I[351] = (img)(_p5##x,_n4##y,z,v)), \ 307.8075 + (I[374] = (img)(_p5##x,_n5##y,z,v)), \ 307.8076 + (I[397] = (img)(_p5##x,_n6##y,z,v)), \ 307.8077 + (I[420] = (img)(_p5##x,_n7##y,z,v)), \ 307.8078 + (I[443] = (img)(_p5##x,_n8##y,z,v)), \ 307.8079 + (I[466] = (img)(_p5##x,_n9##y,z,v)), \ 307.8080 + (I[489] = (img)(_p5##x,_n10##y,z,v)), \ 307.8081 + (I[512] = (img)(_p5##x,_n11##y,z,v)), \ 307.8082 + (I[7] = (img)(_p4##x,_p11##y,z,v)), \ 307.8083 + (I[30] = (img)(_p4##x,_p10##y,z,v)), \ 307.8084 + (I[53] = (img)(_p4##x,_p9##y,z,v)), \ 307.8085 + (I[76] = (img)(_p4##x,_p8##y,z,v)), \ 307.8086 + (I[99] = (img)(_p4##x,_p7##y,z,v)), \ 307.8087 + (I[122] = (img)(_p4##x,_p6##y,z,v)), \ 307.8088 + (I[145] = (img)(_p4##x,_p5##y,z,v)), \ 307.8089 + (I[168] = (img)(_p4##x,_p4##y,z,v)), \ 307.8090 + (I[191] = (img)(_p4##x,_p3##y,z,v)), \ 307.8091 + (I[214] = (img)(_p4##x,_p2##y,z,v)), \ 307.8092 + (I[237] = (img)(_p4##x,_p1##y,z,v)), \ 307.8093 + (I[260] = (img)(_p4##x,y,z,v)), \ 307.8094 + (I[283] = (img)(_p4##x,_n1##y,z,v)), \ 307.8095 + (I[306] = (img)(_p4##x,_n2##y,z,v)), \ 307.8096 + (I[329] = (img)(_p4##x,_n3##y,z,v)), \ 307.8097 + (I[352] = (img)(_p4##x,_n4##y,z,v)), \ 307.8098 + (I[375] = (img)(_p4##x,_n5##y,z,v)), \ 307.8099 + (I[398] = (img)(_p4##x,_n6##y,z,v)), \ 307.8100 + (I[421] = (img)(_p4##x,_n7##y,z,v)), \ 307.8101 + (I[444] = (img)(_p4##x,_n8##y,z,v)), \ 307.8102 + (I[467] = (img)(_p4##x,_n9##y,z,v)), \ 307.8103 + (I[490] = (img)(_p4##x,_n10##y,z,v)), \ 307.8104 + (I[513] = (img)(_p4##x,_n11##y,z,v)), \ 307.8105 + (I[8] = (img)(_p3##x,_p11##y,z,v)), \ 307.8106 + (I[31] = (img)(_p3##x,_p10##y,z,v)), \ 307.8107 + (I[54] = (img)(_p3##x,_p9##y,z,v)), \ 307.8108 + (I[77] = (img)(_p3##x,_p8##y,z,v)), \ 307.8109 + (I[100] = (img)(_p3##x,_p7##y,z,v)), \ 307.8110 + (I[123] = (img)(_p3##x,_p6##y,z,v)), \ 307.8111 + (I[146] = (img)(_p3##x,_p5##y,z,v)), \ 307.8112 + (I[169] = (img)(_p3##x,_p4##y,z,v)), \ 307.8113 + (I[192] = (img)(_p3##x,_p3##y,z,v)), \ 307.8114 + (I[215] = (img)(_p3##x,_p2##y,z,v)), \ 307.8115 + (I[238] = (img)(_p3##x,_p1##y,z,v)), \ 307.8116 + (I[261] = (img)(_p3##x,y,z,v)), \ 307.8117 + (I[284] = (img)(_p3##x,_n1##y,z,v)), \ 307.8118 + (I[307] = (img)(_p3##x,_n2##y,z,v)), \ 307.8119 + (I[330] = (img)(_p3##x,_n3##y,z,v)), \ 307.8120 + (I[353] = (img)(_p3##x,_n4##y,z,v)), \ 307.8121 + (I[376] = (img)(_p3##x,_n5##y,z,v)), \ 307.8122 + (I[399] = (img)(_p3##x,_n6##y,z,v)), \ 307.8123 + (I[422] = (img)(_p3##x,_n7##y,z,v)), \ 307.8124 + (I[445] = (img)(_p3##x,_n8##y,z,v)), \ 307.8125 + (I[468] = (img)(_p3##x,_n9##y,z,v)), \ 307.8126 + (I[491] = (img)(_p3##x,_n10##y,z,v)), \ 307.8127 + (I[514] = (img)(_p3##x,_n11##y,z,v)), \ 307.8128 + (I[9] = (img)(_p2##x,_p11##y,z,v)), \ 307.8129 + (I[32] = (img)(_p2##x,_p10##y,z,v)), \ 307.8130 + (I[55] = (img)(_p2##x,_p9##y,z,v)), \ 307.8131 + (I[78] = (img)(_p2##x,_p8##y,z,v)), \ 307.8132 + (I[101] = (img)(_p2##x,_p7##y,z,v)), \ 307.8133 + (I[124] = (img)(_p2##x,_p6##y,z,v)), \ 307.8134 + (I[147] = (img)(_p2##x,_p5##y,z,v)), \ 307.8135 + (I[170] = (img)(_p2##x,_p4##y,z,v)), \ 307.8136 + (I[193] = (img)(_p2##x,_p3##y,z,v)), \ 307.8137 + (I[216] = (img)(_p2##x,_p2##y,z,v)), \ 307.8138 + (I[239] = (img)(_p2##x,_p1##y,z,v)), \ 307.8139 + (I[262] = (img)(_p2##x,y,z,v)), \ 307.8140 + (I[285] = (img)(_p2##x,_n1##y,z,v)), \ 307.8141 + (I[308] = (img)(_p2##x,_n2##y,z,v)), \ 307.8142 + (I[331] = (img)(_p2##x,_n3##y,z,v)), \ 307.8143 + (I[354] = (img)(_p2##x,_n4##y,z,v)), \ 307.8144 + (I[377] = (img)(_p2##x,_n5##y,z,v)), \ 307.8145 + (I[400] = (img)(_p2##x,_n6##y,z,v)), \ 307.8146 + (I[423] = (img)(_p2##x,_n7##y,z,v)), \ 307.8147 + (I[446] = (img)(_p2##x,_n8##y,z,v)), \ 307.8148 + (I[469] = (img)(_p2##x,_n9##y,z,v)), \ 307.8149 + (I[492] = (img)(_p2##x,_n10##y,z,v)), \ 307.8150 + (I[515] = (img)(_p2##x,_n11##y,z,v)), \ 307.8151 + (I[10] = (img)(_p1##x,_p11##y,z,v)), \ 307.8152 + (I[33] = (img)(_p1##x,_p10##y,z,v)), \ 307.8153 + (I[56] = (img)(_p1##x,_p9##y,z,v)), \ 307.8154 + (I[79] = (img)(_p1##x,_p8##y,z,v)), \ 307.8155 + (I[102] = (img)(_p1##x,_p7##y,z,v)), \ 307.8156 + (I[125] = (img)(_p1##x,_p6##y,z,v)), \ 307.8157 + (I[148] = (img)(_p1##x,_p5##y,z,v)), \ 307.8158 + (I[171] = (img)(_p1##x,_p4##y,z,v)), \ 307.8159 + (I[194] = (img)(_p1##x,_p3##y,z,v)), \ 307.8160 + (I[217] = (img)(_p1##x,_p2##y,z,v)), \ 307.8161 + (I[240] = (img)(_p1##x,_p1##y,z,v)), \ 307.8162 + (I[263] = (img)(_p1##x,y,z,v)), \ 307.8163 + (I[286] = (img)(_p1##x,_n1##y,z,v)), \ 307.8164 + (I[309] = (img)(_p1##x,_n2##y,z,v)), \ 307.8165 + (I[332] = (img)(_p1##x,_n3##y,z,v)), \ 307.8166 + (I[355] = (img)(_p1##x,_n4##y,z,v)), \ 307.8167 + (I[378] = (img)(_p1##x,_n5##y,z,v)), \ 307.8168 + (I[401] = (img)(_p1##x,_n6##y,z,v)), \ 307.8169 + (I[424] = (img)(_p1##x,_n7##y,z,v)), \ 307.8170 + (I[447] = (img)(_p1##x,_n8##y,z,v)), \ 307.8171 + (I[470] = (img)(_p1##x,_n9##y,z,v)), \ 307.8172 + (I[493] = (img)(_p1##x,_n10##y,z,v)), \ 307.8173 + (I[516] = (img)(_p1##x,_n11##y,z,v)), \ 307.8174 + (I[11] = (img)(x,_p11##y,z,v)), \ 307.8175 + (I[34] = (img)(x,_p10##y,z,v)), \ 307.8176 + (I[57] = (img)(x,_p9##y,z,v)), \ 307.8177 + (I[80] = (img)(x,_p8##y,z,v)), \ 307.8178 + (I[103] = (img)(x,_p7##y,z,v)), \ 307.8179 + (I[126] = (img)(x,_p6##y,z,v)), \ 307.8180 + (I[149] = (img)(x,_p5##y,z,v)), \ 307.8181 + (I[172] = (img)(x,_p4##y,z,v)), \ 307.8182 + (I[195] = (img)(x,_p3##y,z,v)), \ 307.8183 + (I[218] = (img)(x,_p2##y,z,v)), \ 307.8184 + (I[241] = (img)(x,_p1##y,z,v)), \ 307.8185 + (I[264] = (img)(x,y,z,v)), \ 307.8186 + (I[287] = (img)(x,_n1##y,z,v)), \ 307.8187 + (I[310] = (img)(x,_n2##y,z,v)), \ 307.8188 + (I[333] = (img)(x,_n3##y,z,v)), \ 307.8189 + (I[356] = (img)(x,_n4##y,z,v)), \ 307.8190 + (I[379] = (img)(x,_n5##y,z,v)), \ 307.8191 + (I[402] = (img)(x,_n6##y,z,v)), \ 307.8192 + (I[425] = (img)(x,_n7##y,z,v)), \ 307.8193 + (I[448] = (img)(x,_n8##y,z,v)), \ 307.8194 + (I[471] = (img)(x,_n9##y,z,v)), \ 307.8195 + (I[494] = (img)(x,_n10##y,z,v)), \ 307.8196 + (I[517] = (img)(x,_n11##y,z,v)), \ 307.8197 + (I[12] = (img)(_n1##x,_p11##y,z,v)), \ 307.8198 + (I[35] = (img)(_n1##x,_p10##y,z,v)), \ 307.8199 + (I[58] = (img)(_n1##x,_p9##y,z,v)), \ 307.8200 + (I[81] = (img)(_n1##x,_p8##y,z,v)), \ 307.8201 + (I[104] = (img)(_n1##x,_p7##y,z,v)), \ 307.8202 + (I[127] = (img)(_n1##x,_p6##y,z,v)), \ 307.8203 + (I[150] = (img)(_n1##x,_p5##y,z,v)), \ 307.8204 + (I[173] = (img)(_n1##x,_p4##y,z,v)), \ 307.8205 + (I[196] = (img)(_n1##x,_p3##y,z,v)), \ 307.8206 + (I[219] = (img)(_n1##x,_p2##y,z,v)), \ 307.8207 + (I[242] = (img)(_n1##x,_p1##y,z,v)), \ 307.8208 + (I[265] = (img)(_n1##x,y,z,v)), \ 307.8209 + (I[288] = (img)(_n1##x,_n1##y,z,v)), \ 307.8210 + (I[311] = (img)(_n1##x,_n2##y,z,v)), \ 307.8211 + (I[334] = (img)(_n1##x,_n3##y,z,v)), \ 307.8212 + (I[357] = (img)(_n1##x,_n4##y,z,v)), \ 307.8213 + (I[380] = (img)(_n1##x,_n5##y,z,v)), \ 307.8214 + (I[403] = (img)(_n1##x,_n6##y,z,v)), \ 307.8215 + (I[426] = (img)(_n1##x,_n7##y,z,v)), \ 307.8216 + (I[449] = (img)(_n1##x,_n8##y,z,v)), \ 307.8217 + (I[472] = (img)(_n1##x,_n9##y,z,v)), \ 307.8218 + (I[495] = (img)(_n1##x,_n10##y,z,v)), \ 307.8219 + (I[518] = (img)(_n1##x,_n11##y,z,v)), \ 307.8220 + (I[13] = (img)(_n2##x,_p11##y,z,v)), \ 307.8221 + (I[36] = (img)(_n2##x,_p10##y,z,v)), \ 307.8222 + (I[59] = (img)(_n2##x,_p9##y,z,v)), \ 307.8223 + (I[82] = (img)(_n2##x,_p8##y,z,v)), \ 307.8224 + (I[105] = (img)(_n2##x,_p7##y,z,v)), \ 307.8225 + (I[128] = (img)(_n2##x,_p6##y,z,v)), \ 307.8226 + (I[151] = (img)(_n2##x,_p5##y,z,v)), \ 307.8227 + (I[174] = (img)(_n2##x,_p4##y,z,v)), \ 307.8228 + (I[197] = (img)(_n2##x,_p3##y,z,v)), \ 307.8229 + (I[220] = (img)(_n2##x,_p2##y,z,v)), \ 307.8230 + (I[243] = (img)(_n2##x,_p1##y,z,v)), \ 307.8231 + (I[266] = (img)(_n2##x,y,z,v)), \ 307.8232 + (I[289] = (img)(_n2##x,_n1##y,z,v)), \ 307.8233 + (I[312] = (img)(_n2##x,_n2##y,z,v)), \ 307.8234 + (I[335] = (img)(_n2##x,_n3##y,z,v)), \ 307.8235 + (I[358] = (img)(_n2##x,_n4##y,z,v)), \ 307.8236 + (I[381] = (img)(_n2##x,_n5##y,z,v)), \ 307.8237 + (I[404] = (img)(_n2##x,_n6##y,z,v)), \ 307.8238 + (I[427] = (img)(_n2##x,_n7##y,z,v)), \ 307.8239 + (I[450] = (img)(_n2##x,_n8##y,z,v)), \ 307.8240 + (I[473] = (img)(_n2##x,_n9##y,z,v)), \ 307.8241 + (I[496] = (img)(_n2##x,_n10##y,z,v)), \ 307.8242 + (I[519] = (img)(_n2##x,_n11##y,z,v)), \ 307.8243 + (I[14] = (img)(_n3##x,_p11##y,z,v)), \ 307.8244 + (I[37] = (img)(_n3##x,_p10##y,z,v)), \ 307.8245 + (I[60] = (img)(_n3##x,_p9##y,z,v)), \ 307.8246 + (I[83] = (img)(_n3##x,_p8##y,z,v)), \ 307.8247 + (I[106] = (img)(_n3##x,_p7##y,z,v)), \ 307.8248 + (I[129] = (img)(_n3##x,_p6##y,z,v)), \ 307.8249 + (I[152] = (img)(_n3##x,_p5##y,z,v)), \ 307.8250 + (I[175] = (img)(_n3##x,_p4##y,z,v)), \ 307.8251 + (I[198] = (img)(_n3##x,_p3##y,z,v)), \ 307.8252 + (I[221] = (img)(_n3##x,_p2##y,z,v)), \ 307.8253 + (I[244] = (img)(_n3##x,_p1##y,z,v)), \ 307.8254 + (I[267] = (img)(_n3##x,y,z,v)), \ 307.8255 + (I[290] = (img)(_n3##x,_n1##y,z,v)), \ 307.8256 + (I[313] = (img)(_n3##x,_n2##y,z,v)), \ 307.8257 + (I[336] = (img)(_n3##x,_n3##y,z,v)), \ 307.8258 + (I[359] = (img)(_n3##x,_n4##y,z,v)), \ 307.8259 + (I[382] = (img)(_n3##x,_n5##y,z,v)), \ 307.8260 + (I[405] = (img)(_n3##x,_n6##y,z,v)), \ 307.8261 + (I[428] = (img)(_n3##x,_n7##y,z,v)), \ 307.8262 + (I[451] = (img)(_n3##x,_n8##y,z,v)), \ 307.8263 + (I[474] = (img)(_n3##x,_n9##y,z,v)), \ 307.8264 + (I[497] = (img)(_n3##x,_n10##y,z,v)), \ 307.8265 + (I[520] = (img)(_n3##x,_n11##y,z,v)), \ 307.8266 + (I[15] = (img)(_n4##x,_p11##y,z,v)), \ 307.8267 + (I[38] = (img)(_n4##x,_p10##y,z,v)), \ 307.8268 + (I[61] = (img)(_n4##x,_p9##y,z,v)), \ 307.8269 + (I[84] = (img)(_n4##x,_p8##y,z,v)), \ 307.8270 + (I[107] = (img)(_n4##x,_p7##y,z,v)), \ 307.8271 + (I[130] = (img)(_n4##x,_p6##y,z,v)), \ 307.8272 + (I[153] = (img)(_n4##x,_p5##y,z,v)), \ 307.8273 + (I[176] = (img)(_n4##x,_p4##y,z,v)), \ 307.8274 + (I[199] = (img)(_n4##x,_p3##y,z,v)), \ 307.8275 + (I[222] = (img)(_n4##x,_p2##y,z,v)), \ 307.8276 + (I[245] = (img)(_n4##x,_p1##y,z,v)), \ 307.8277 + (I[268] = (img)(_n4##x,y,z,v)), \ 307.8278 + (I[291] = (img)(_n4##x,_n1##y,z,v)), \ 307.8279 + (I[314] = (img)(_n4##x,_n2##y,z,v)), \ 307.8280 + (I[337] = (img)(_n4##x,_n3##y,z,v)), \ 307.8281 + (I[360] = (img)(_n4##x,_n4##y,z,v)), \ 307.8282 + (I[383] = (img)(_n4##x,_n5##y,z,v)), \ 307.8283 + (I[406] = (img)(_n4##x,_n6##y,z,v)), \ 307.8284 + (I[429] = (img)(_n4##x,_n7##y,z,v)), \ 307.8285 + (I[452] = (img)(_n4##x,_n8##y,z,v)), \ 307.8286 + (I[475] = (img)(_n4##x,_n9##y,z,v)), \ 307.8287 + (I[498] = (img)(_n4##x,_n10##y,z,v)), \ 307.8288 + (I[521] = (img)(_n4##x,_n11##y,z,v)), \ 307.8289 + (I[16] = (img)(_n5##x,_p11##y,z,v)), \ 307.8290 + (I[39] = (img)(_n5##x,_p10##y,z,v)), \ 307.8291 + (I[62] = (img)(_n5##x,_p9##y,z,v)), \ 307.8292 + (I[85] = (img)(_n5##x,_p8##y,z,v)), \ 307.8293 + (I[108] = (img)(_n5##x,_p7##y,z,v)), \ 307.8294 + (I[131] = (img)(_n5##x,_p6##y,z,v)), \ 307.8295 + (I[154] = (img)(_n5##x,_p5##y,z,v)), \ 307.8296 + (I[177] = (img)(_n5##x,_p4##y,z,v)), \ 307.8297 + (I[200] = (img)(_n5##x,_p3##y,z,v)), \ 307.8298 + (I[223] = (img)(_n5##x,_p2##y,z,v)), \ 307.8299 + (I[246] = (img)(_n5##x,_p1##y,z,v)), \ 307.8300 + (I[269] = (img)(_n5##x,y,z,v)), \ 307.8301 + (I[292] = (img)(_n5##x,_n1##y,z,v)), \ 307.8302 + (I[315] = (img)(_n5##x,_n2##y,z,v)), \ 307.8303 + (I[338] = (img)(_n5##x,_n3##y,z,v)), \ 307.8304 + (I[361] = (img)(_n5##x,_n4##y,z,v)), \ 307.8305 + (I[384] = (img)(_n5##x,_n5##y,z,v)), \ 307.8306 + (I[407] = (img)(_n5##x,_n6##y,z,v)), \ 307.8307 + (I[430] = (img)(_n5##x,_n7##y,z,v)), \ 307.8308 + (I[453] = (img)(_n5##x,_n8##y,z,v)), \ 307.8309 + (I[476] = (img)(_n5##x,_n9##y,z,v)), \ 307.8310 + (I[499] = (img)(_n5##x,_n10##y,z,v)), \ 307.8311 + (I[522] = (img)(_n5##x,_n11##y,z,v)), \ 307.8312 + (I[17] = (img)(_n6##x,_p11##y,z,v)), \ 307.8313 + (I[40] = (img)(_n6##x,_p10##y,z,v)), \ 307.8314 + (I[63] = (img)(_n6##x,_p9##y,z,v)), \ 307.8315 + (I[86] = (img)(_n6##x,_p8##y,z,v)), \ 307.8316 + (I[109] = (img)(_n6##x,_p7##y,z,v)), \ 307.8317 + (I[132] = (img)(_n6##x,_p6##y,z,v)), \ 307.8318 + (I[155] = (img)(_n6##x,_p5##y,z,v)), \ 307.8319 + (I[178] = (img)(_n6##x,_p4##y,z,v)), \ 307.8320 + (I[201] = (img)(_n6##x,_p3##y,z,v)), \ 307.8321 + (I[224] = (img)(_n6##x,_p2##y,z,v)), \ 307.8322 + (I[247] = (img)(_n6##x,_p1##y,z,v)), \ 307.8323 + (I[270] = (img)(_n6##x,y,z,v)), \ 307.8324 + (I[293] = (img)(_n6##x,_n1##y,z,v)), \ 307.8325 + (I[316] = (img)(_n6##x,_n2##y,z,v)), \ 307.8326 + (I[339] = (img)(_n6##x,_n3##y,z,v)), \ 307.8327 + (I[362] = (img)(_n6##x,_n4##y,z,v)), \ 307.8328 + (I[385] = (img)(_n6##x,_n5##y,z,v)), \ 307.8329 + (I[408] = (img)(_n6##x,_n6##y,z,v)), \ 307.8330 + (I[431] = (img)(_n6##x,_n7##y,z,v)), \ 307.8331 + (I[454] = (img)(_n6##x,_n8##y,z,v)), \ 307.8332 + (I[477] = (img)(_n6##x,_n9##y,z,v)), \ 307.8333 + (I[500] = (img)(_n6##x,_n10##y,z,v)), \ 307.8334 + (I[523] = (img)(_n6##x,_n11##y,z,v)), \ 307.8335 + (I[18] = (img)(_n7##x,_p11##y,z,v)), \ 307.8336 + (I[41] = (img)(_n7##x,_p10##y,z,v)), \ 307.8337 + (I[64] = (img)(_n7##x,_p9##y,z,v)), \ 307.8338 + (I[87] = (img)(_n7##x,_p8##y,z,v)), \ 307.8339 + (I[110] = (img)(_n7##x,_p7##y,z,v)), \ 307.8340 + (I[133] = (img)(_n7##x,_p6##y,z,v)), \ 307.8341 + (I[156] = (img)(_n7##x,_p5##y,z,v)), \ 307.8342 + (I[179] = (img)(_n7##x,_p4##y,z,v)), \ 307.8343 + (I[202] = (img)(_n7##x,_p3##y,z,v)), \ 307.8344 + (I[225] = (img)(_n7##x,_p2##y,z,v)), \ 307.8345 + (I[248] = (img)(_n7##x,_p1##y,z,v)), \ 307.8346 + (I[271] = (img)(_n7##x,y,z,v)), \ 307.8347 + (I[294] = (img)(_n7##x,_n1##y,z,v)), \ 307.8348 + (I[317] = (img)(_n7##x,_n2##y,z,v)), \ 307.8349 + (I[340] = (img)(_n7##x,_n3##y,z,v)), \ 307.8350 + (I[363] = (img)(_n7##x,_n4##y,z,v)), \ 307.8351 + (I[386] = (img)(_n7##x,_n5##y,z,v)), \ 307.8352 + (I[409] = (img)(_n7##x,_n6##y,z,v)), \ 307.8353 + (I[432] = (img)(_n7##x,_n7##y,z,v)), \ 307.8354 + (I[455] = (img)(_n7##x,_n8##y,z,v)), \ 307.8355 + (I[478] = (img)(_n7##x,_n9##y,z,v)), \ 307.8356 + (I[501] = (img)(_n7##x,_n10##y,z,v)), \ 307.8357 + (I[524] = (img)(_n7##x,_n11##y,z,v)), \ 307.8358 + (I[19] = (img)(_n8##x,_p11##y,z,v)), \ 307.8359 + (I[42] = (img)(_n8##x,_p10##y,z,v)), \ 307.8360 + (I[65] = (img)(_n8##x,_p9##y,z,v)), \ 307.8361 + (I[88] = (img)(_n8##x,_p8##y,z,v)), \ 307.8362 + (I[111] = (img)(_n8##x,_p7##y,z,v)), \ 307.8363 + (I[134] = (img)(_n8##x,_p6##y,z,v)), \ 307.8364 + (I[157] = (img)(_n8##x,_p5##y,z,v)), \ 307.8365 + (I[180] = (img)(_n8##x,_p4##y,z,v)), \ 307.8366 + (I[203] = (img)(_n8##x,_p3##y,z,v)), \ 307.8367 + (I[226] = (img)(_n8##x,_p2##y,z,v)), \ 307.8368 + (I[249] = (img)(_n8##x,_p1##y,z,v)), \ 307.8369 + (I[272] = (img)(_n8##x,y,z,v)), \ 307.8370 + (I[295] = (img)(_n8##x,_n1##y,z,v)), \ 307.8371 + (I[318] = (img)(_n8##x,_n2##y,z,v)), \ 307.8372 + (I[341] = (img)(_n8##x,_n3##y,z,v)), \ 307.8373 + (I[364] = (img)(_n8##x,_n4##y,z,v)), \ 307.8374 + (I[387] = (img)(_n8##x,_n5##y,z,v)), \ 307.8375 + (I[410] = (img)(_n8##x,_n6##y,z,v)), \ 307.8376 + (I[433] = (img)(_n8##x,_n7##y,z,v)), \ 307.8377 + (I[456] = (img)(_n8##x,_n8##y,z,v)), \ 307.8378 + (I[479] = (img)(_n8##x,_n9##y,z,v)), \ 307.8379 + (I[502] = (img)(_n8##x,_n10##y,z,v)), \ 307.8380 + (I[525] = (img)(_n8##x,_n11##y,z,v)), \ 307.8381 + (I[20] = (img)(_n9##x,_p11##y,z,v)), \ 307.8382 + (I[43] = (img)(_n9##x,_p10##y,z,v)), \ 307.8383 + (I[66] = (img)(_n9##x,_p9##y,z,v)), \ 307.8384 + (I[89] = (img)(_n9##x,_p8##y,z,v)), \ 307.8385 + (I[112] = (img)(_n9##x,_p7##y,z,v)), \ 307.8386 + (I[135] = (img)(_n9##x,_p6##y,z,v)), \ 307.8387 + (I[158] = (img)(_n9##x,_p5##y,z,v)), \ 307.8388 + (I[181] = (img)(_n9##x,_p4##y,z,v)), \ 307.8389 + (I[204] = (img)(_n9##x,_p3##y,z,v)), \ 307.8390 + (I[227] = (img)(_n9##x,_p2##y,z,v)), \ 307.8391 + (I[250] = (img)(_n9##x,_p1##y,z,v)), \ 307.8392 + (I[273] = (img)(_n9##x,y,z,v)), \ 307.8393 + (I[296] = (img)(_n9##x,_n1##y,z,v)), \ 307.8394 + (I[319] = (img)(_n9##x,_n2##y,z,v)), \ 307.8395 + (I[342] = (img)(_n9##x,_n3##y,z,v)), \ 307.8396 + (I[365] = (img)(_n9##x,_n4##y,z,v)), \ 307.8397 + (I[388] = (img)(_n9##x,_n5##y,z,v)), \ 307.8398 + (I[411] = (img)(_n9##x,_n6##y,z,v)), \ 307.8399 + (I[434] = (img)(_n9##x,_n7##y,z,v)), \ 307.8400 + (I[457] = (img)(_n9##x,_n8##y,z,v)), \ 307.8401 + (I[480] = (img)(_n9##x,_n9##y,z,v)), \ 307.8402 + (I[503] = (img)(_n9##x,_n10##y,z,v)), \ 307.8403 + (I[526] = (img)(_n9##x,_n11##y,z,v)), \ 307.8404 + (I[21] = (img)(_n10##x,_p11##y,z,v)), \ 307.8405 + (I[44] = (img)(_n10##x,_p10##y,z,v)), \ 307.8406 + (I[67] = (img)(_n10##x,_p9##y,z,v)), \ 307.8407 + (I[90] = (img)(_n10##x,_p8##y,z,v)), \ 307.8408 + (I[113] = (img)(_n10##x,_p7##y,z,v)), \ 307.8409 + (I[136] = (img)(_n10##x,_p6##y,z,v)), \ 307.8410 + (I[159] = (img)(_n10##x,_p5##y,z,v)), \ 307.8411 + (I[182] = (img)(_n10##x,_p4##y,z,v)), \ 307.8412 + (I[205] = (img)(_n10##x,_p3##y,z,v)), \ 307.8413 + (I[228] = (img)(_n10##x,_p2##y,z,v)), \ 307.8414 + (I[251] = (img)(_n10##x,_p1##y,z,v)), \ 307.8415 + (I[274] = (img)(_n10##x,y,z,v)), \ 307.8416 + (I[297] = (img)(_n10##x,_n1##y,z,v)), \ 307.8417 + (I[320] = (img)(_n10##x,_n2##y,z,v)), \ 307.8418 + (I[343] = (img)(_n10##x,_n3##y,z,v)), \ 307.8419 + (I[366] = (img)(_n10##x,_n4##y,z,v)), \ 307.8420 + (I[389] = (img)(_n10##x,_n5##y,z,v)), \ 307.8421 + (I[412] = (img)(_n10##x,_n6##y,z,v)), \ 307.8422 + (I[435] = (img)(_n10##x,_n7##y,z,v)), \ 307.8423 + (I[458] = (img)(_n10##x,_n8##y,z,v)), \ 307.8424 + (I[481] = (img)(_n10##x,_n9##y,z,v)), \ 307.8425 + (I[504] = (img)(_n10##x,_n10##y,z,v)), \ 307.8426 + (I[527] = (img)(_n10##x,_n11##y,z,v)), \ 307.8427 + x+11>=(int)((img).width)?(int)((img).width)-1:x+11); \ 307.8428 + x<=(int)(x1) && ((_n11##x<(int)((img).width) && ( \ 307.8429 + (I[22] = (img)(_n11##x,_p11##y,z,v)), \ 307.8430 + (I[45] = (img)(_n11##x,_p10##y,z,v)), \ 307.8431 + (I[68] = (img)(_n11##x,_p9##y,z,v)), \ 307.8432 + (I[91] = (img)(_n11##x,_p8##y,z,v)), \ 307.8433 + (I[114] = (img)(_n11##x,_p7##y,z,v)), \ 307.8434 + (I[137] = (img)(_n11##x,_p6##y,z,v)), \ 307.8435 + (I[160] = (img)(_n11##x,_p5##y,z,v)), \ 307.8436 + (I[183] = (img)(_n11##x,_p4##y,z,v)), \ 307.8437 + (I[206] = (img)(_n11##x,_p3##y,z,v)), \ 307.8438 + (I[229] = (img)(_n11##x,_p2##y,z,v)), \ 307.8439 + (I[252] = (img)(_n11##x,_p1##y,z,v)), \ 307.8440 + (I[275] = (img)(_n11##x,y,z,v)), \ 307.8441 + (I[298] = (img)(_n11##x,_n1##y,z,v)), \ 307.8442 + (I[321] = (img)(_n11##x,_n2##y,z,v)), \ 307.8443 + (I[344] = (img)(_n11##x,_n3##y,z,v)), \ 307.8444 + (I[367] = (img)(_n11##x,_n4##y,z,v)), \ 307.8445 + (I[390] = (img)(_n11##x,_n5##y,z,v)), \ 307.8446 + (I[413] = (img)(_n11##x,_n6##y,z,v)), \ 307.8447 + (I[436] = (img)(_n11##x,_n7##y,z,v)), \ 307.8448 + (I[459] = (img)(_n11##x,_n8##y,z,v)), \ 307.8449 + (I[482] = (img)(_n11##x,_n9##y,z,v)), \ 307.8450 + (I[505] = (img)(_n11##x,_n10##y,z,v)), \ 307.8451 + (I[528] = (img)(_n11##x,_n11##y,z,v)),1)) || \ 307.8452 + _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.8453 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], \ 307.8454 + I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], \ 307.8455 + I[46] = I[47], I[47] = I[48], I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], \ 307.8456 + I[69] = I[70], I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], \ 307.8457 + I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], \ 307.8458 + I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], \ 307.8459 + I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], \ 307.8460 + I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], I[167] = I[168], I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], \ 307.8461 + I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], \ 307.8462 + I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], \ 307.8463 + I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], \ 307.8464 + I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], \ 307.8465 + I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], \ 307.8466 + I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], \ 307.8467 + I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], I[335] = I[336], I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], \ 307.8468 + I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], I[359] = I[360], I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], \ 307.8469 + I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], I[383] = I[384], I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], \ 307.8470 + I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], I[407] = I[408], I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], \ 307.8471 + I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], I[431] = I[432], I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], \ 307.8472 + I[437] = I[438], I[438] = I[439], I[439] = I[440], I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], I[455] = I[456], I[456] = I[457], I[457] = I[458], I[458] = I[459], \ 307.8473 + I[460] = I[461], I[461] = I[462], I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], I[479] = I[480], I[480] = I[481], I[481] = I[482], \ 307.8474 + I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], I[487] = I[488], I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], I[495] = I[496], I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], I[503] = I[504], I[504] = I[505], \ 307.8475 + I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], I[511] = I[512], I[512] = I[513], I[513] = I[514], I[514] = I[515], I[515] = I[516], I[516] = I[517], I[517] = I[518], I[518] = I[519], I[519] = I[520], I[520] = I[521], I[521] = I[522], I[522] = I[523], I[523] = I[524], I[524] = I[525], I[525] = I[526], I[526] = I[527], I[527] = I[528], \ 307.8476 + _p11##x = _p10##x, _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x) 307.8477 + 307.8478 +#define cimg_get23x23(img,x,y,z,v,I) \ 307.8479 + I[0] = (img)(_p11##x,_p11##y,z,v), I[1] = (img)(_p10##x,_p11##y,z,v), I[2] = (img)(_p9##x,_p11##y,z,v), I[3] = (img)(_p8##x,_p11##y,z,v), I[4] = (img)(_p7##x,_p11##y,z,v), I[5] = (img)(_p6##x,_p11##y,z,v), I[6] = (img)(_p5##x,_p11##y,z,v), I[7] = (img)(_p4##x,_p11##y,z,v), I[8] = (img)(_p3##x,_p11##y,z,v), I[9] = (img)(_p2##x,_p11##y,z,v), I[10] = (img)(_p1##x,_p11##y,z,v), I[11] = (img)(x,_p11##y,z,v), I[12] = (img)(_n1##x,_p11##y,z,v), I[13] = (img)(_n2##x,_p11##y,z,v), I[14] = (img)(_n3##x,_p11##y,z,v), I[15] = (img)(_n4##x,_p11##y,z,v), I[16] = (img)(_n5##x,_p11##y,z,v), I[17] = (img)(_n6##x,_p11##y,z,v), I[18] = (img)(_n7##x,_p11##y,z,v), I[19] = (img)(_n8##x,_p11##y,z,v), I[20] = (img)(_n9##x,_p11##y,z,v), I[21] = (img)(_n10##x,_p11##y,z,v), I[22] = (img)(_n11##x,_p11##y,z,v), \ 307.8480 + I[23] = (img)(_p11##x,_p10##y,z,v), I[24] = (img)(_p10##x,_p10##y,z,v), I[25] = (img)(_p9##x,_p10##y,z,v), I[26] = (img)(_p8##x,_p10##y,z,v), I[27] = (img)(_p7##x,_p10##y,z,v), I[28] = (img)(_p6##x,_p10##y,z,v), I[29] = (img)(_p5##x,_p10##y,z,v), I[30] = (img)(_p4##x,_p10##y,z,v), I[31] = (img)(_p3##x,_p10##y,z,v), I[32] = (img)(_p2##x,_p10##y,z,v), I[33] = (img)(_p1##x,_p10##y,z,v), I[34] = (img)(x,_p10##y,z,v), I[35] = (img)(_n1##x,_p10##y,z,v), I[36] = (img)(_n2##x,_p10##y,z,v), I[37] = (img)(_n3##x,_p10##y,z,v), I[38] = (img)(_n4##x,_p10##y,z,v), I[39] = (img)(_n5##x,_p10##y,z,v), I[40] = (img)(_n6##x,_p10##y,z,v), I[41] = (img)(_n7##x,_p10##y,z,v), I[42] = (img)(_n8##x,_p10##y,z,v), I[43] = (img)(_n9##x,_p10##y,z,v), I[44] = (img)(_n10##x,_p10##y,z,v), I[45] = (img)(_n11##x,_p10##y,z,v), \ 307.8481 + I[46] = (img)(_p11##x,_p9##y,z,v), I[47] = (img)(_p10##x,_p9##y,z,v), I[48] = (img)(_p9##x,_p9##y,z,v), I[49] = (img)(_p8##x,_p9##y,z,v), I[50] = (img)(_p7##x,_p9##y,z,v), I[51] = (img)(_p6##x,_p9##y,z,v), I[52] = (img)(_p5##x,_p9##y,z,v), I[53] = (img)(_p4##x,_p9##y,z,v), I[54] = (img)(_p3##x,_p9##y,z,v), I[55] = (img)(_p2##x,_p9##y,z,v), I[56] = (img)(_p1##x,_p9##y,z,v), I[57] = (img)(x,_p9##y,z,v), I[58] = (img)(_n1##x,_p9##y,z,v), I[59] = (img)(_n2##x,_p9##y,z,v), I[60] = (img)(_n3##x,_p9##y,z,v), I[61] = (img)(_n4##x,_p9##y,z,v), I[62] = (img)(_n5##x,_p9##y,z,v), I[63] = (img)(_n6##x,_p9##y,z,v), I[64] = (img)(_n7##x,_p9##y,z,v), I[65] = (img)(_n8##x,_p9##y,z,v), I[66] = (img)(_n9##x,_p9##y,z,v), I[67] = (img)(_n10##x,_p9##y,z,v), I[68] = (img)(_n11##x,_p9##y,z,v), \ 307.8482 + I[69] = (img)(_p11##x,_p8##y,z,v), I[70] = (img)(_p10##x,_p8##y,z,v), I[71] = (img)(_p9##x,_p8##y,z,v), I[72] = (img)(_p8##x,_p8##y,z,v), I[73] = (img)(_p7##x,_p8##y,z,v), I[74] = (img)(_p6##x,_p8##y,z,v), I[75] = (img)(_p5##x,_p8##y,z,v), I[76] = (img)(_p4##x,_p8##y,z,v), I[77] = (img)(_p3##x,_p8##y,z,v), I[78] = (img)(_p2##x,_p8##y,z,v), I[79] = (img)(_p1##x,_p8##y,z,v), I[80] = (img)(x,_p8##y,z,v), I[81] = (img)(_n1##x,_p8##y,z,v), I[82] = (img)(_n2##x,_p8##y,z,v), I[83] = (img)(_n3##x,_p8##y,z,v), I[84] = (img)(_n4##x,_p8##y,z,v), I[85] = (img)(_n5##x,_p8##y,z,v), I[86] = (img)(_n6##x,_p8##y,z,v), I[87] = (img)(_n7##x,_p8##y,z,v), I[88] = (img)(_n8##x,_p8##y,z,v), I[89] = (img)(_n9##x,_p8##y,z,v), I[90] = (img)(_n10##x,_p8##y,z,v), I[91] = (img)(_n11##x,_p8##y,z,v), \ 307.8483 + I[92] = (img)(_p11##x,_p7##y,z,v), I[93] = (img)(_p10##x,_p7##y,z,v), I[94] = (img)(_p9##x,_p7##y,z,v), I[95] = (img)(_p8##x,_p7##y,z,v), I[96] = (img)(_p7##x,_p7##y,z,v), I[97] = (img)(_p6##x,_p7##y,z,v), I[98] = (img)(_p5##x,_p7##y,z,v), I[99] = (img)(_p4##x,_p7##y,z,v), I[100] = (img)(_p3##x,_p7##y,z,v), I[101] = (img)(_p2##x,_p7##y,z,v), I[102] = (img)(_p1##x,_p7##y,z,v), I[103] = (img)(x,_p7##y,z,v), I[104] = (img)(_n1##x,_p7##y,z,v), I[105] = (img)(_n2##x,_p7##y,z,v), I[106] = (img)(_n3##x,_p7##y,z,v), I[107] = (img)(_n4##x,_p7##y,z,v), I[108] = (img)(_n5##x,_p7##y,z,v), I[109] = (img)(_n6##x,_p7##y,z,v), I[110] = (img)(_n7##x,_p7##y,z,v), I[111] = (img)(_n8##x,_p7##y,z,v), I[112] = (img)(_n9##x,_p7##y,z,v), I[113] = (img)(_n10##x,_p7##y,z,v), I[114] = (img)(_n11##x,_p7##y,z,v), \ 307.8484 + I[115] = (img)(_p11##x,_p6##y,z,v), I[116] = (img)(_p10##x,_p6##y,z,v), I[117] = (img)(_p9##x,_p6##y,z,v), I[118] = (img)(_p8##x,_p6##y,z,v), I[119] = (img)(_p7##x,_p6##y,z,v), I[120] = (img)(_p6##x,_p6##y,z,v), I[121] = (img)(_p5##x,_p6##y,z,v), I[122] = (img)(_p4##x,_p6##y,z,v), I[123] = (img)(_p3##x,_p6##y,z,v), I[124] = (img)(_p2##x,_p6##y,z,v), I[125] = (img)(_p1##x,_p6##y,z,v), I[126] = (img)(x,_p6##y,z,v), I[127] = (img)(_n1##x,_p6##y,z,v), I[128] = (img)(_n2##x,_p6##y,z,v), I[129] = (img)(_n3##x,_p6##y,z,v), I[130] = (img)(_n4##x,_p6##y,z,v), I[131] = (img)(_n5##x,_p6##y,z,v), I[132] = (img)(_n6##x,_p6##y,z,v), I[133] = (img)(_n7##x,_p6##y,z,v), I[134] = (img)(_n8##x,_p6##y,z,v), I[135] = (img)(_n9##x,_p6##y,z,v), I[136] = (img)(_n10##x,_p6##y,z,v), I[137] = (img)(_n11##x,_p6##y,z,v), \ 307.8485 + I[138] = (img)(_p11##x,_p5##y,z,v), I[139] = (img)(_p10##x,_p5##y,z,v), I[140] = (img)(_p9##x,_p5##y,z,v), I[141] = (img)(_p8##x,_p5##y,z,v), I[142] = (img)(_p7##x,_p5##y,z,v), I[143] = (img)(_p6##x,_p5##y,z,v), I[144] = (img)(_p5##x,_p5##y,z,v), I[145] = (img)(_p4##x,_p5##y,z,v), I[146] = (img)(_p3##x,_p5##y,z,v), I[147] = (img)(_p2##x,_p5##y,z,v), I[148] = (img)(_p1##x,_p5##y,z,v), I[149] = (img)(x,_p5##y,z,v), I[150] = (img)(_n1##x,_p5##y,z,v), I[151] = (img)(_n2##x,_p5##y,z,v), I[152] = (img)(_n3##x,_p5##y,z,v), I[153] = (img)(_n4##x,_p5##y,z,v), I[154] = (img)(_n5##x,_p5##y,z,v), I[155] = (img)(_n6##x,_p5##y,z,v), I[156] = (img)(_n7##x,_p5##y,z,v), I[157] = (img)(_n8##x,_p5##y,z,v), I[158] = (img)(_n9##x,_p5##y,z,v), I[159] = (img)(_n10##x,_p5##y,z,v), I[160] = (img)(_n11##x,_p5##y,z,v), \ 307.8486 + I[161] = (img)(_p11##x,_p4##y,z,v), I[162] = (img)(_p10##x,_p4##y,z,v), I[163] = (img)(_p9##x,_p4##y,z,v), I[164] = (img)(_p8##x,_p4##y,z,v), I[165] = (img)(_p7##x,_p4##y,z,v), I[166] = (img)(_p6##x,_p4##y,z,v), I[167] = (img)(_p5##x,_p4##y,z,v), I[168] = (img)(_p4##x,_p4##y,z,v), I[169] = (img)(_p3##x,_p4##y,z,v), I[170] = (img)(_p2##x,_p4##y,z,v), I[171] = (img)(_p1##x,_p4##y,z,v), I[172] = (img)(x,_p4##y,z,v), I[173] = (img)(_n1##x,_p4##y,z,v), I[174] = (img)(_n2##x,_p4##y,z,v), I[175] = (img)(_n3##x,_p4##y,z,v), I[176] = (img)(_n4##x,_p4##y,z,v), I[177] = (img)(_n5##x,_p4##y,z,v), I[178] = (img)(_n6##x,_p4##y,z,v), I[179] = (img)(_n7##x,_p4##y,z,v), I[180] = (img)(_n8##x,_p4##y,z,v), I[181] = (img)(_n9##x,_p4##y,z,v), I[182] = (img)(_n10##x,_p4##y,z,v), I[183] = (img)(_n11##x,_p4##y,z,v), \ 307.8487 + I[184] = (img)(_p11##x,_p3##y,z,v), I[185] = (img)(_p10##x,_p3##y,z,v), I[186] = (img)(_p9##x,_p3##y,z,v), I[187] = (img)(_p8##x,_p3##y,z,v), I[188] = (img)(_p7##x,_p3##y,z,v), I[189] = (img)(_p6##x,_p3##y,z,v), I[190] = (img)(_p5##x,_p3##y,z,v), I[191] = (img)(_p4##x,_p3##y,z,v), I[192] = (img)(_p3##x,_p3##y,z,v), I[193] = (img)(_p2##x,_p3##y,z,v), I[194] = (img)(_p1##x,_p3##y,z,v), I[195] = (img)(x,_p3##y,z,v), I[196] = (img)(_n1##x,_p3##y,z,v), I[197] = (img)(_n2##x,_p3##y,z,v), I[198] = (img)(_n3##x,_p3##y,z,v), I[199] = (img)(_n4##x,_p3##y,z,v), I[200] = (img)(_n5##x,_p3##y,z,v), I[201] = (img)(_n6##x,_p3##y,z,v), I[202] = (img)(_n7##x,_p3##y,z,v), I[203] = (img)(_n8##x,_p3##y,z,v), I[204] = (img)(_n9##x,_p3##y,z,v), I[205] = (img)(_n10##x,_p3##y,z,v), I[206] = (img)(_n11##x,_p3##y,z,v), \ 307.8488 + I[207] = (img)(_p11##x,_p2##y,z,v), I[208] = (img)(_p10##x,_p2##y,z,v), I[209] = (img)(_p9##x,_p2##y,z,v), I[210] = (img)(_p8##x,_p2##y,z,v), I[211] = (img)(_p7##x,_p2##y,z,v), I[212] = (img)(_p6##x,_p2##y,z,v), I[213] = (img)(_p5##x,_p2##y,z,v), I[214] = (img)(_p4##x,_p2##y,z,v), I[215] = (img)(_p3##x,_p2##y,z,v), I[216] = (img)(_p2##x,_p2##y,z,v), I[217] = (img)(_p1##x,_p2##y,z,v), I[218] = (img)(x,_p2##y,z,v), I[219] = (img)(_n1##x,_p2##y,z,v), I[220] = (img)(_n2##x,_p2##y,z,v), I[221] = (img)(_n3##x,_p2##y,z,v), I[222] = (img)(_n4##x,_p2##y,z,v), I[223] = (img)(_n5##x,_p2##y,z,v), I[224] = (img)(_n6##x,_p2##y,z,v), I[225] = (img)(_n7##x,_p2##y,z,v), I[226] = (img)(_n8##x,_p2##y,z,v), I[227] = (img)(_n9##x,_p2##y,z,v), I[228] = (img)(_n10##x,_p2##y,z,v), I[229] = (img)(_n11##x,_p2##y,z,v), \ 307.8489 + I[230] = (img)(_p11##x,_p1##y,z,v), I[231] = (img)(_p10##x,_p1##y,z,v), I[232] = (img)(_p9##x,_p1##y,z,v), I[233] = (img)(_p8##x,_p1##y,z,v), I[234] = (img)(_p7##x,_p1##y,z,v), I[235] = (img)(_p6##x,_p1##y,z,v), I[236] = (img)(_p5##x,_p1##y,z,v), I[237] = (img)(_p4##x,_p1##y,z,v), I[238] = (img)(_p3##x,_p1##y,z,v), I[239] = (img)(_p2##x,_p1##y,z,v), I[240] = (img)(_p1##x,_p1##y,z,v), I[241] = (img)(x,_p1##y,z,v), I[242] = (img)(_n1##x,_p1##y,z,v), I[243] = (img)(_n2##x,_p1##y,z,v), I[244] = (img)(_n3##x,_p1##y,z,v), I[245] = (img)(_n4##x,_p1##y,z,v), I[246] = (img)(_n5##x,_p1##y,z,v), I[247] = (img)(_n6##x,_p1##y,z,v), I[248] = (img)(_n7##x,_p1##y,z,v), I[249] = (img)(_n8##x,_p1##y,z,v), I[250] = (img)(_n9##x,_p1##y,z,v), I[251] = (img)(_n10##x,_p1##y,z,v), I[252] = (img)(_n11##x,_p1##y,z,v), \ 307.8490 + I[253] = (img)(_p11##x,y,z,v), I[254] = (img)(_p10##x,y,z,v), I[255] = (img)(_p9##x,y,z,v), I[256] = (img)(_p8##x,y,z,v), I[257] = (img)(_p7##x,y,z,v), I[258] = (img)(_p6##x,y,z,v), I[259] = (img)(_p5##x,y,z,v), I[260] = (img)(_p4##x,y,z,v), I[261] = (img)(_p3##x,y,z,v), I[262] = (img)(_p2##x,y,z,v), I[263] = (img)(_p1##x,y,z,v), I[264] = (img)(x,y,z,v), I[265] = (img)(_n1##x,y,z,v), I[266] = (img)(_n2##x,y,z,v), I[267] = (img)(_n3##x,y,z,v), I[268] = (img)(_n4##x,y,z,v), I[269] = (img)(_n5##x,y,z,v), I[270] = (img)(_n6##x,y,z,v), I[271] = (img)(_n7##x,y,z,v), I[272] = (img)(_n8##x,y,z,v), I[273] = (img)(_n9##x,y,z,v), I[274] = (img)(_n10##x,y,z,v), I[275] = (img)(_n11##x,y,z,v), \ 307.8491 + I[276] = (img)(_p11##x,_n1##y,z,v), I[277] = (img)(_p10##x,_n1##y,z,v), I[278] = (img)(_p9##x,_n1##y,z,v), I[279] = (img)(_p8##x,_n1##y,z,v), I[280] = (img)(_p7##x,_n1##y,z,v), I[281] = (img)(_p6##x,_n1##y,z,v), I[282] = (img)(_p5##x,_n1##y,z,v), I[283] = (img)(_p4##x,_n1##y,z,v), I[284] = (img)(_p3##x,_n1##y,z,v), I[285] = (img)(_p2##x,_n1##y,z,v), I[286] = (img)(_p1##x,_n1##y,z,v), I[287] = (img)(x,_n1##y,z,v), I[288] = (img)(_n1##x,_n1##y,z,v), I[289] = (img)(_n2##x,_n1##y,z,v), I[290] = (img)(_n3##x,_n1##y,z,v), I[291] = (img)(_n4##x,_n1##y,z,v), I[292] = (img)(_n5##x,_n1##y,z,v), I[293] = (img)(_n6##x,_n1##y,z,v), I[294] = (img)(_n7##x,_n1##y,z,v), I[295] = (img)(_n8##x,_n1##y,z,v), I[296] = (img)(_n9##x,_n1##y,z,v), I[297] = (img)(_n10##x,_n1##y,z,v), I[298] = (img)(_n11##x,_n1##y,z,v), \ 307.8492 + I[299] = (img)(_p11##x,_n2##y,z,v), I[300] = (img)(_p10##x,_n2##y,z,v), I[301] = (img)(_p9##x,_n2##y,z,v), I[302] = (img)(_p8##x,_n2##y,z,v), I[303] = (img)(_p7##x,_n2##y,z,v), I[304] = (img)(_p6##x,_n2##y,z,v), I[305] = (img)(_p5##x,_n2##y,z,v), I[306] = (img)(_p4##x,_n2##y,z,v), I[307] = (img)(_p3##x,_n2##y,z,v), I[308] = (img)(_p2##x,_n2##y,z,v), I[309] = (img)(_p1##x,_n2##y,z,v), I[310] = (img)(x,_n2##y,z,v), I[311] = (img)(_n1##x,_n2##y,z,v), I[312] = (img)(_n2##x,_n2##y,z,v), I[313] = (img)(_n3##x,_n2##y,z,v), I[314] = (img)(_n4##x,_n2##y,z,v), I[315] = (img)(_n5##x,_n2##y,z,v), I[316] = (img)(_n6##x,_n2##y,z,v), I[317] = (img)(_n7##x,_n2##y,z,v), I[318] = (img)(_n8##x,_n2##y,z,v), I[319] = (img)(_n9##x,_n2##y,z,v), I[320] = (img)(_n10##x,_n2##y,z,v), I[321] = (img)(_n11##x,_n2##y,z,v), \ 307.8493 + I[322] = (img)(_p11##x,_n3##y,z,v), I[323] = (img)(_p10##x,_n3##y,z,v), I[324] = (img)(_p9##x,_n3##y,z,v), I[325] = (img)(_p8##x,_n3##y,z,v), I[326] = (img)(_p7##x,_n3##y,z,v), I[327] = (img)(_p6##x,_n3##y,z,v), I[328] = (img)(_p5##x,_n3##y,z,v), I[329] = (img)(_p4##x,_n3##y,z,v), I[330] = (img)(_p3##x,_n3##y,z,v), I[331] = (img)(_p2##x,_n3##y,z,v), I[332] = (img)(_p1##x,_n3##y,z,v), I[333] = (img)(x,_n3##y,z,v), I[334] = (img)(_n1##x,_n3##y,z,v), I[335] = (img)(_n2##x,_n3##y,z,v), I[336] = (img)(_n3##x,_n3##y,z,v), I[337] = (img)(_n4##x,_n3##y,z,v), I[338] = (img)(_n5##x,_n3##y,z,v), I[339] = (img)(_n6##x,_n3##y,z,v), I[340] = (img)(_n7##x,_n3##y,z,v), I[341] = (img)(_n8##x,_n3##y,z,v), I[342] = (img)(_n9##x,_n3##y,z,v), I[343] = (img)(_n10##x,_n3##y,z,v), I[344] = (img)(_n11##x,_n3##y,z,v), \ 307.8494 + I[345] = (img)(_p11##x,_n4##y,z,v), I[346] = (img)(_p10##x,_n4##y,z,v), I[347] = (img)(_p9##x,_n4##y,z,v), I[348] = (img)(_p8##x,_n4##y,z,v), I[349] = (img)(_p7##x,_n4##y,z,v), I[350] = (img)(_p6##x,_n4##y,z,v), I[351] = (img)(_p5##x,_n4##y,z,v), I[352] = (img)(_p4##x,_n4##y,z,v), I[353] = (img)(_p3##x,_n4##y,z,v), I[354] = (img)(_p2##x,_n4##y,z,v), I[355] = (img)(_p1##x,_n4##y,z,v), I[356] = (img)(x,_n4##y,z,v), I[357] = (img)(_n1##x,_n4##y,z,v), I[358] = (img)(_n2##x,_n4##y,z,v), I[359] = (img)(_n3##x,_n4##y,z,v), I[360] = (img)(_n4##x,_n4##y,z,v), I[361] = (img)(_n5##x,_n4##y,z,v), I[362] = (img)(_n6##x,_n4##y,z,v), I[363] = (img)(_n7##x,_n4##y,z,v), I[364] = (img)(_n8##x,_n4##y,z,v), I[365] = (img)(_n9##x,_n4##y,z,v), I[366] = (img)(_n10##x,_n4##y,z,v), I[367] = (img)(_n11##x,_n4##y,z,v), \ 307.8495 + I[368] = (img)(_p11##x,_n5##y,z,v), I[369] = (img)(_p10##x,_n5##y,z,v), I[370] = (img)(_p9##x,_n5##y,z,v), I[371] = (img)(_p8##x,_n5##y,z,v), I[372] = (img)(_p7##x,_n5##y,z,v), I[373] = (img)(_p6##x,_n5##y,z,v), I[374] = (img)(_p5##x,_n5##y,z,v), I[375] = (img)(_p4##x,_n5##y,z,v), I[376] = (img)(_p3##x,_n5##y,z,v), I[377] = (img)(_p2##x,_n5##y,z,v), I[378] = (img)(_p1##x,_n5##y,z,v), I[379] = (img)(x,_n5##y,z,v), I[380] = (img)(_n1##x,_n5##y,z,v), I[381] = (img)(_n2##x,_n5##y,z,v), I[382] = (img)(_n3##x,_n5##y,z,v), I[383] = (img)(_n4##x,_n5##y,z,v), I[384] = (img)(_n5##x,_n5##y,z,v), I[385] = (img)(_n6##x,_n5##y,z,v), I[386] = (img)(_n7##x,_n5##y,z,v), I[387] = (img)(_n8##x,_n5##y,z,v), I[388] = (img)(_n9##x,_n5##y,z,v), I[389] = (img)(_n10##x,_n5##y,z,v), I[390] = (img)(_n11##x,_n5##y,z,v), \ 307.8496 + I[391] = (img)(_p11##x,_n6##y,z,v), I[392] = (img)(_p10##x,_n6##y,z,v), I[393] = (img)(_p9##x,_n6##y,z,v), I[394] = (img)(_p8##x,_n6##y,z,v), I[395] = (img)(_p7##x,_n6##y,z,v), I[396] = (img)(_p6##x,_n6##y,z,v), I[397] = (img)(_p5##x,_n6##y,z,v), I[398] = (img)(_p4##x,_n6##y,z,v), I[399] = (img)(_p3##x,_n6##y,z,v), I[400] = (img)(_p2##x,_n6##y,z,v), I[401] = (img)(_p1##x,_n6##y,z,v), I[402] = (img)(x,_n6##y,z,v), I[403] = (img)(_n1##x,_n6##y,z,v), I[404] = (img)(_n2##x,_n6##y,z,v), I[405] = (img)(_n3##x,_n6##y,z,v), I[406] = (img)(_n4##x,_n6##y,z,v), I[407] = (img)(_n5##x,_n6##y,z,v), I[408] = (img)(_n6##x,_n6##y,z,v), I[409] = (img)(_n7##x,_n6##y,z,v), I[410] = (img)(_n8##x,_n6##y,z,v), I[411] = (img)(_n9##x,_n6##y,z,v), I[412] = (img)(_n10##x,_n6##y,z,v), I[413] = (img)(_n11##x,_n6##y,z,v), \ 307.8497 + I[414] = (img)(_p11##x,_n7##y,z,v), I[415] = (img)(_p10##x,_n7##y,z,v), I[416] = (img)(_p9##x,_n7##y,z,v), I[417] = (img)(_p8##x,_n7##y,z,v), I[418] = (img)(_p7##x,_n7##y,z,v), I[419] = (img)(_p6##x,_n7##y,z,v), I[420] = (img)(_p5##x,_n7##y,z,v), I[421] = (img)(_p4##x,_n7##y,z,v), I[422] = (img)(_p3##x,_n7##y,z,v), I[423] = (img)(_p2##x,_n7##y,z,v), I[424] = (img)(_p1##x,_n7##y,z,v), I[425] = (img)(x,_n7##y,z,v), I[426] = (img)(_n1##x,_n7##y,z,v), I[427] = (img)(_n2##x,_n7##y,z,v), I[428] = (img)(_n3##x,_n7##y,z,v), I[429] = (img)(_n4##x,_n7##y,z,v), I[430] = (img)(_n5##x,_n7##y,z,v), I[431] = (img)(_n6##x,_n7##y,z,v), I[432] = (img)(_n7##x,_n7##y,z,v), I[433] = (img)(_n8##x,_n7##y,z,v), I[434] = (img)(_n9##x,_n7##y,z,v), I[435] = (img)(_n10##x,_n7##y,z,v), I[436] = (img)(_n11##x,_n7##y,z,v), \ 307.8498 + I[437] = (img)(_p11##x,_n8##y,z,v), I[438] = (img)(_p10##x,_n8##y,z,v), I[439] = (img)(_p9##x,_n8##y,z,v), I[440] = (img)(_p8##x,_n8##y,z,v), I[441] = (img)(_p7##x,_n8##y,z,v), I[442] = (img)(_p6##x,_n8##y,z,v), I[443] = (img)(_p5##x,_n8##y,z,v), I[444] = (img)(_p4##x,_n8##y,z,v), I[445] = (img)(_p3##x,_n8##y,z,v), I[446] = (img)(_p2##x,_n8##y,z,v), I[447] = (img)(_p1##x,_n8##y,z,v), I[448] = (img)(x,_n8##y,z,v), I[449] = (img)(_n1##x,_n8##y,z,v), I[450] = (img)(_n2##x,_n8##y,z,v), I[451] = (img)(_n3##x,_n8##y,z,v), I[452] = (img)(_n4##x,_n8##y,z,v), I[453] = (img)(_n5##x,_n8##y,z,v), I[454] = (img)(_n6##x,_n8##y,z,v), I[455] = (img)(_n7##x,_n8##y,z,v), I[456] = (img)(_n8##x,_n8##y,z,v), I[457] = (img)(_n9##x,_n8##y,z,v), I[458] = (img)(_n10##x,_n8##y,z,v), I[459] = (img)(_n11##x,_n8##y,z,v), \ 307.8499 + I[460] = (img)(_p11##x,_n9##y,z,v), I[461] = (img)(_p10##x,_n9##y,z,v), I[462] = (img)(_p9##x,_n9##y,z,v), I[463] = (img)(_p8##x,_n9##y,z,v), I[464] = (img)(_p7##x,_n9##y,z,v), I[465] = (img)(_p6##x,_n9##y,z,v), I[466] = (img)(_p5##x,_n9##y,z,v), I[467] = (img)(_p4##x,_n9##y,z,v), I[468] = (img)(_p3##x,_n9##y,z,v), I[469] = (img)(_p2##x,_n9##y,z,v), I[470] = (img)(_p1##x,_n9##y,z,v), I[471] = (img)(x,_n9##y,z,v), I[472] = (img)(_n1##x,_n9##y,z,v), I[473] = (img)(_n2##x,_n9##y,z,v), I[474] = (img)(_n3##x,_n9##y,z,v), I[475] = (img)(_n4##x,_n9##y,z,v), I[476] = (img)(_n5##x,_n9##y,z,v), I[477] = (img)(_n6##x,_n9##y,z,v), I[478] = (img)(_n7##x,_n9##y,z,v), I[479] = (img)(_n8##x,_n9##y,z,v), I[480] = (img)(_n9##x,_n9##y,z,v), I[481] = (img)(_n10##x,_n9##y,z,v), I[482] = (img)(_n11##x,_n9##y,z,v), \ 307.8500 + I[483] = (img)(_p11##x,_n10##y,z,v), I[484] = (img)(_p10##x,_n10##y,z,v), I[485] = (img)(_p9##x,_n10##y,z,v), I[486] = (img)(_p8##x,_n10##y,z,v), I[487] = (img)(_p7##x,_n10##y,z,v), I[488] = (img)(_p6##x,_n10##y,z,v), I[489] = (img)(_p5##x,_n10##y,z,v), I[490] = (img)(_p4##x,_n10##y,z,v), I[491] = (img)(_p3##x,_n10##y,z,v), I[492] = (img)(_p2##x,_n10##y,z,v), I[493] = (img)(_p1##x,_n10##y,z,v), I[494] = (img)(x,_n10##y,z,v), I[495] = (img)(_n1##x,_n10##y,z,v), I[496] = (img)(_n2##x,_n10##y,z,v), I[497] = (img)(_n3##x,_n10##y,z,v), I[498] = (img)(_n4##x,_n10##y,z,v), I[499] = (img)(_n5##x,_n10##y,z,v), I[500] = (img)(_n6##x,_n10##y,z,v), I[501] = (img)(_n7##x,_n10##y,z,v), I[502] = (img)(_n8##x,_n10##y,z,v), I[503] = (img)(_n9##x,_n10##y,z,v), I[504] = (img)(_n10##x,_n10##y,z,v), I[505] = (img)(_n11##x,_n10##y,z,v), \ 307.8501 + I[506] = (img)(_p11##x,_n11##y,z,v), I[507] = (img)(_p10##x,_n11##y,z,v), I[508] = (img)(_p9##x,_n11##y,z,v), I[509] = (img)(_p8##x,_n11##y,z,v), I[510] = (img)(_p7##x,_n11##y,z,v), I[511] = (img)(_p6##x,_n11##y,z,v), I[512] = (img)(_p5##x,_n11##y,z,v), I[513] = (img)(_p4##x,_n11##y,z,v), I[514] = (img)(_p3##x,_n11##y,z,v), I[515] = (img)(_p2##x,_n11##y,z,v), I[516] = (img)(_p1##x,_n11##y,z,v), I[517] = (img)(x,_n11##y,z,v), I[518] = (img)(_n1##x,_n11##y,z,v), I[519] = (img)(_n2##x,_n11##y,z,v), I[520] = (img)(_n3##x,_n11##y,z,v), I[521] = (img)(_n4##x,_n11##y,z,v), I[522] = (img)(_n5##x,_n11##y,z,v), I[523] = (img)(_n6##x,_n11##y,z,v), I[524] = (img)(_n7##x,_n11##y,z,v), I[525] = (img)(_n8##x,_n11##y,z,v), I[526] = (img)(_n9##x,_n11##y,z,v), I[527] = (img)(_n10##x,_n11##y,z,v), I[528] = (img)(_n11##x,_n11##y,z,v); 307.8502 + 307.8503 +// Define 24x24 loop macros for CImg 307.8504 +//---------------------------------- 307.8505 +#define cimg_for24(bound,i) for (int i = 0, \ 307.8506 + _p11##i = 0, _p10##i = 0, _p9##i = 0, _p8##i = 0, _p7##i = 0, _p6##i = 0, _p5##i = 0, _p4##i = 0, _p3##i = 0, _p2##i = 0, _p1##i = 0, \ 307.8507 + _n1##i = 1>=(int)(bound)?(int)(bound)-1:1, \ 307.8508 + _n2##i = 2>=(int)(bound)?(int)(bound)-1:2, \ 307.8509 + _n3##i = 3>=(int)(bound)?(int)(bound)-1:3, \ 307.8510 + _n4##i = 4>=(int)(bound)?(int)(bound)-1:4, \ 307.8511 + _n5##i = 5>=(int)(bound)?(int)(bound)-1:5, \ 307.8512 + _n6##i = 6>=(int)(bound)?(int)(bound)-1:6, \ 307.8513 + _n7##i = 7>=(int)(bound)?(int)(bound)-1:7, \ 307.8514 + _n8##i = 8>=(int)(bound)?(int)(bound)-1:8, \ 307.8515 + _n9##i = 9>=(int)(bound)?(int)(bound)-1:9, \ 307.8516 + _n10##i = 10>=(int)(bound)?(int)(bound)-1:10, \ 307.8517 + _n11##i = 11>=(int)(bound)?(int)(bound)-1:11, \ 307.8518 + _n12##i = 12>=(int)(bound)?(int)(bound)-1:12; \ 307.8519 + _n12##i<(int)(bound) || _n11##i==--_n12##i || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.8520 + i==(_n12##i = _n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i); \ 307.8521 + _p11##i = _p10##i, _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.8522 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i, ++_n12##i) 307.8523 + 307.8524 +#define cimg_for24X(img,x) cimg_for24((img).width,x) 307.8525 +#define cimg_for24Y(img,y) cimg_for24((img).height,y) 307.8526 +#define cimg_for24Z(img,z) cimg_for24((img).depth,z) 307.8527 +#define cimg_for24V(img,v) cimg_for24((img).dim,v) 307.8528 +#define cimg_for24XY(img,x,y) cimg_for24Y(img,y) cimg_for24X(img,x) 307.8529 +#define cimg_for24XZ(img,x,z) cimg_for24Z(img,z) cimg_for24X(img,x) 307.8530 +#define cimg_for24XV(img,x,v) cimg_for24V(img,v) cimg_for24X(img,x) 307.8531 +#define cimg_for24YZ(img,y,z) cimg_for24Z(img,z) cimg_for24Y(img,y) 307.8532 +#define cimg_for24YV(img,y,v) cimg_for24V(img,v) cimg_for24Y(img,y) 307.8533 +#define cimg_for24ZV(img,z,v) cimg_for24V(img,v) cimg_for24Z(img,z) 307.8534 +#define cimg_for24XYZ(img,x,y,z) cimg_for24Z(img,z) cimg_for24XY(img,x,y) 307.8535 +#define cimg_for24XZV(img,x,z,v) cimg_for24V(img,v) cimg_for24XZ(img,x,z) 307.8536 +#define cimg_for24YZV(img,y,z,v) cimg_for24V(img,v) cimg_for24YZ(img,y,z) 307.8537 +#define cimg_for24XYZV(img,x,y,z,v) cimg_for24V(img,v) cimg_for24XYZ(img,x,y,z) 307.8538 + 307.8539 +#define cimg_for_in24(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.8540 + _p11##i = i-11<0?0:i-11, \ 307.8541 + _p10##i = i-10<0?0:i-10, \ 307.8542 + _p9##i = i-9<0?0:i-9, \ 307.8543 + _p8##i = i-8<0?0:i-8, \ 307.8544 + _p7##i = i-7<0?0:i-7, \ 307.8545 + _p6##i = i-6<0?0:i-6, \ 307.8546 + _p5##i = i-5<0?0:i-5, \ 307.8547 + _p4##i = i-4<0?0:i-4, \ 307.8548 + _p3##i = i-3<0?0:i-3, \ 307.8549 + _p2##i = i-2<0?0:i-2, \ 307.8550 + _p1##i = i-1<0?0:i-1, \ 307.8551 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.8552 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.8553 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.8554 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4, \ 307.8555 + _n5##i = i+5>=(int)(bound)?(int)(bound)-1:i+5, \ 307.8556 + _n6##i = i+6>=(int)(bound)?(int)(bound)-1:i+6, \ 307.8557 + _n7##i = i+7>=(int)(bound)?(int)(bound)-1:i+7, \ 307.8558 + _n8##i = i+8>=(int)(bound)?(int)(bound)-1:i+8, \ 307.8559 + _n9##i = i+9>=(int)(bound)?(int)(bound)-1:i+9, \ 307.8560 + _n10##i = i+10>=(int)(bound)?(int)(bound)-1:i+10, \ 307.8561 + _n11##i = i+11>=(int)(bound)?(int)(bound)-1:i+11, \ 307.8562 + _n12##i = i+12>=(int)(bound)?(int)(bound)-1:i+12; \ 307.8563 + i<=(int)(i1) && (_n12##i<(int)(bound) || _n11##i==--_n12##i || _n10##i==--_n11##i || _n9##i==--_n10##i || _n8##i==--_n9##i || _n7##i==--_n8##i || _n6##i==--_n7##i || _n5##i==--_n6##i || _n4##i==--_n5##i || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.8564 + i==(_n12##i = _n11##i = _n10##i = _n9##i = _n8##i = _n7##i = _n6##i = _n5##i = _n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.8565 + _p11##i = _p10##i, _p10##i = _p9##i, _p9##i = _p8##i, _p8##i = _p7##i, _p7##i = _p6##i, _p6##i = _p5##i, _p5##i = _p4##i, _p4##i = _p3##i, _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.8566 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i, ++_n5##i, ++_n6##i, ++_n7##i, ++_n8##i, ++_n9##i, ++_n10##i, ++_n11##i, ++_n12##i) 307.8567 + 307.8568 +#define cimg_for_in24X(img,x0,x1,x) cimg_for_in24((img).width,x0,x1,x) 307.8569 +#define cimg_for_in24Y(img,y0,y1,y) cimg_for_in24((img).height,y0,y1,y) 307.8570 +#define cimg_for_in24Z(img,z0,z1,z) cimg_for_in24((img).depth,z0,z1,z) 307.8571 +#define cimg_for_in24V(img,v0,v1,v) cimg_for_in24((img).dim,v0,v1,v) 307.8572 +#define cimg_for_in24XY(img,x0,y0,x1,y1,x,y) cimg_for_in24Y(img,y0,y1,y) cimg_for_in24X(img,x0,x1,x) 307.8573 +#define cimg_for_in24XZ(img,x0,z0,x1,z1,x,z) cimg_for_in24Z(img,z0,z1,z) cimg_for_in24X(img,x0,x1,x) 307.8574 +#define cimg_for_in24XV(img,x0,v0,x1,v1,x,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24X(img,x0,x1,x) 307.8575 +#define cimg_for_in24YZ(img,y0,z0,y1,z1,y,z) cimg_for_in24Z(img,z0,z1,z) cimg_for_in24Y(img,y0,y1,y) 307.8576 +#define cimg_for_in24YV(img,y0,v0,y1,v1,y,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24Y(img,y0,y1,y) 307.8577 +#define cimg_for_in24ZV(img,z0,v0,z1,v1,z,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24Z(img,z0,z1,z) 307.8578 +#define cimg_for_in24XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in24Z(img,z0,z1,z) cimg_for_in24XY(img,x0,y0,x1,y1,x,y) 307.8579 +#define cimg_for_in24XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24XZ(img,x0,y0,x1,y1,x,z) 307.8580 +#define cimg_for_in24YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24YZ(img,y0,z0,y1,z1,y,z) 307.8581 +#define cimg_for_in24XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in24V(img,v0,v1,v) cimg_for_in24XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.8582 + 307.8583 +#define cimg_for24x24(img,x,y,z,v,I) \ 307.8584 + cimg_for24((img).height,y) for (int x = 0, \ 307.8585 + _p11##x = 0, _p10##x = 0, _p9##x = 0, _p8##x = 0, _p7##x = 0, _p6##x = 0, _p5##x = 0, _p4##x = 0, _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.8586 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.8587 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.8588 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.8589 + _n4##x = 4>=((img).width)?(int)((img).width)-1:4, \ 307.8590 + _n5##x = 5>=((img).width)?(int)((img).width)-1:5, \ 307.8591 + _n6##x = 6>=((img).width)?(int)((img).width)-1:6, \ 307.8592 + _n7##x = 7>=((img).width)?(int)((img).width)-1:7, \ 307.8593 + _n8##x = 8>=((img).width)?(int)((img).width)-1:8, \ 307.8594 + _n9##x = 9>=((img).width)?(int)((img).width)-1:9, \ 307.8595 + _n10##x = 10>=((img).width)?(int)((img).width)-1:10, \ 307.8596 + _n11##x = 11>=((img).width)?(int)((img).width)-1:11, \ 307.8597 + _n12##x = (int)( \ 307.8598 + (I[0] = I[1] = I[2] = I[3] = I[4] = I[5] = I[6] = I[7] = I[8] = I[9] = I[10] = I[11] = (img)(0,_p11##y,z,v)), \ 307.8599 + (I[24] = I[25] = I[26] = I[27] = I[28] = I[29] = I[30] = I[31] = I[32] = I[33] = I[34] = I[35] = (img)(0,_p10##y,z,v)), \ 307.8600 + (I[48] = I[49] = I[50] = I[51] = I[52] = I[53] = I[54] = I[55] = I[56] = I[57] = I[58] = I[59] = (img)(0,_p9##y,z,v)), \ 307.8601 + (I[72] = I[73] = I[74] = I[75] = I[76] = I[77] = I[78] = I[79] = I[80] = I[81] = I[82] = I[83] = (img)(0,_p8##y,z,v)), \ 307.8602 + (I[96] = I[97] = I[98] = I[99] = I[100] = I[101] = I[102] = I[103] = I[104] = I[105] = I[106] = I[107] = (img)(0,_p7##y,z,v)), \ 307.8603 + (I[120] = I[121] = I[122] = I[123] = I[124] = I[125] = I[126] = I[127] = I[128] = I[129] = I[130] = I[131] = (img)(0,_p6##y,z,v)), \ 307.8604 + (I[144] = I[145] = I[146] = I[147] = I[148] = I[149] = I[150] = I[151] = I[152] = I[153] = I[154] = I[155] = (img)(0,_p5##y,z,v)), \ 307.8605 + (I[168] = I[169] = I[170] = I[171] = I[172] = I[173] = I[174] = I[175] = I[176] = I[177] = I[178] = I[179] = (img)(0,_p4##y,z,v)), \ 307.8606 + (I[192] = I[193] = I[194] = I[195] = I[196] = I[197] = I[198] = I[199] = I[200] = I[201] = I[202] = I[203] = (img)(0,_p3##y,z,v)), \ 307.8607 + (I[216] = I[217] = I[218] = I[219] = I[220] = I[221] = I[222] = I[223] = I[224] = I[225] = I[226] = I[227] = (img)(0,_p2##y,z,v)), \ 307.8608 + (I[240] = I[241] = I[242] = I[243] = I[244] = I[245] = I[246] = I[247] = I[248] = I[249] = I[250] = I[251] = (img)(0,_p1##y,z,v)), \ 307.8609 + (I[264] = I[265] = I[266] = I[267] = I[268] = I[269] = I[270] = I[271] = I[272] = I[273] = I[274] = I[275] = (img)(0,y,z,v)), \ 307.8610 + (I[288] = I[289] = I[290] = I[291] = I[292] = I[293] = I[294] = I[295] = I[296] = I[297] = I[298] = I[299] = (img)(0,_n1##y,z,v)), \ 307.8611 + (I[312] = I[313] = I[314] = I[315] = I[316] = I[317] = I[318] = I[319] = I[320] = I[321] = I[322] = I[323] = (img)(0,_n2##y,z,v)), \ 307.8612 + (I[336] = I[337] = I[338] = I[339] = I[340] = I[341] = I[342] = I[343] = I[344] = I[345] = I[346] = I[347] = (img)(0,_n3##y,z,v)), \ 307.8613 + (I[360] = I[361] = I[362] = I[363] = I[364] = I[365] = I[366] = I[367] = I[368] = I[369] = I[370] = I[371] = (img)(0,_n4##y,z,v)), \ 307.8614 + (I[384] = I[385] = I[386] = I[387] = I[388] = I[389] = I[390] = I[391] = I[392] = I[393] = I[394] = I[395] = (img)(0,_n5##y,z,v)), \ 307.8615 + (I[408] = I[409] = I[410] = I[411] = I[412] = I[413] = I[414] = I[415] = I[416] = I[417] = I[418] = I[419] = (img)(0,_n6##y,z,v)), \ 307.8616 + (I[432] = I[433] = I[434] = I[435] = I[436] = I[437] = I[438] = I[439] = I[440] = I[441] = I[442] = I[443] = (img)(0,_n7##y,z,v)), \ 307.8617 + (I[456] = I[457] = I[458] = I[459] = I[460] = I[461] = I[462] = I[463] = I[464] = I[465] = I[466] = I[467] = (img)(0,_n8##y,z,v)), \ 307.8618 + (I[480] = I[481] = I[482] = I[483] = I[484] = I[485] = I[486] = I[487] = I[488] = I[489] = I[490] = I[491] = (img)(0,_n9##y,z,v)), \ 307.8619 + (I[504] = I[505] = I[506] = I[507] = I[508] = I[509] = I[510] = I[511] = I[512] = I[513] = I[514] = I[515] = (img)(0,_n10##y,z,v)), \ 307.8620 + (I[528] = I[529] = I[530] = I[531] = I[532] = I[533] = I[534] = I[535] = I[536] = I[537] = I[538] = I[539] = (img)(0,_n11##y,z,v)), \ 307.8621 + (I[552] = I[553] = I[554] = I[555] = I[556] = I[557] = I[558] = I[559] = I[560] = I[561] = I[562] = I[563] = (img)(0,_n12##y,z,v)), \ 307.8622 + (I[12] = (img)(_n1##x,_p11##y,z,v)), \ 307.8623 + (I[36] = (img)(_n1##x,_p10##y,z,v)), \ 307.8624 + (I[60] = (img)(_n1##x,_p9##y,z,v)), \ 307.8625 + (I[84] = (img)(_n1##x,_p8##y,z,v)), \ 307.8626 + (I[108] = (img)(_n1##x,_p7##y,z,v)), \ 307.8627 + (I[132] = (img)(_n1##x,_p6##y,z,v)), \ 307.8628 + (I[156] = (img)(_n1##x,_p5##y,z,v)), \ 307.8629 + (I[180] = (img)(_n1##x,_p4##y,z,v)), \ 307.8630 + (I[204] = (img)(_n1##x,_p3##y,z,v)), \ 307.8631 + (I[228] = (img)(_n1##x,_p2##y,z,v)), \ 307.8632 + (I[252] = (img)(_n1##x,_p1##y,z,v)), \ 307.8633 + (I[276] = (img)(_n1##x,y,z,v)), \ 307.8634 + (I[300] = (img)(_n1##x,_n1##y,z,v)), \ 307.8635 + (I[324] = (img)(_n1##x,_n2##y,z,v)), \ 307.8636 + (I[348] = (img)(_n1##x,_n3##y,z,v)), \ 307.8637 + (I[372] = (img)(_n1##x,_n4##y,z,v)), \ 307.8638 + (I[396] = (img)(_n1##x,_n5##y,z,v)), \ 307.8639 + (I[420] = (img)(_n1##x,_n6##y,z,v)), \ 307.8640 + (I[444] = (img)(_n1##x,_n7##y,z,v)), \ 307.8641 + (I[468] = (img)(_n1##x,_n8##y,z,v)), \ 307.8642 + (I[492] = (img)(_n1##x,_n9##y,z,v)), \ 307.8643 + (I[516] = (img)(_n1##x,_n10##y,z,v)), \ 307.8644 + (I[540] = (img)(_n1##x,_n11##y,z,v)), \ 307.8645 + (I[564] = (img)(_n1##x,_n12##y,z,v)), \ 307.8646 + (I[13] = (img)(_n2##x,_p11##y,z,v)), \ 307.8647 + (I[37] = (img)(_n2##x,_p10##y,z,v)), \ 307.8648 + (I[61] = (img)(_n2##x,_p9##y,z,v)), \ 307.8649 + (I[85] = (img)(_n2##x,_p8##y,z,v)), \ 307.8650 + (I[109] = (img)(_n2##x,_p7##y,z,v)), \ 307.8651 + (I[133] = (img)(_n2##x,_p6##y,z,v)), \ 307.8652 + (I[157] = (img)(_n2##x,_p5##y,z,v)), \ 307.8653 + (I[181] = (img)(_n2##x,_p4##y,z,v)), \ 307.8654 + (I[205] = (img)(_n2##x,_p3##y,z,v)), \ 307.8655 + (I[229] = (img)(_n2##x,_p2##y,z,v)), \ 307.8656 + (I[253] = (img)(_n2##x,_p1##y,z,v)), \ 307.8657 + (I[277] = (img)(_n2##x,y,z,v)), \ 307.8658 + (I[301] = (img)(_n2##x,_n1##y,z,v)), \ 307.8659 + (I[325] = (img)(_n2##x,_n2##y,z,v)), \ 307.8660 + (I[349] = (img)(_n2##x,_n3##y,z,v)), \ 307.8661 + (I[373] = (img)(_n2##x,_n4##y,z,v)), \ 307.8662 + (I[397] = (img)(_n2##x,_n5##y,z,v)), \ 307.8663 + (I[421] = (img)(_n2##x,_n6##y,z,v)), \ 307.8664 + (I[445] = (img)(_n2##x,_n7##y,z,v)), \ 307.8665 + (I[469] = (img)(_n2##x,_n8##y,z,v)), \ 307.8666 + (I[493] = (img)(_n2##x,_n9##y,z,v)), \ 307.8667 + (I[517] = (img)(_n2##x,_n10##y,z,v)), \ 307.8668 + (I[541] = (img)(_n2##x,_n11##y,z,v)), \ 307.8669 + (I[565] = (img)(_n2##x,_n12##y,z,v)), \ 307.8670 + (I[14] = (img)(_n3##x,_p11##y,z,v)), \ 307.8671 + (I[38] = (img)(_n3##x,_p10##y,z,v)), \ 307.8672 + (I[62] = (img)(_n3##x,_p9##y,z,v)), \ 307.8673 + (I[86] = (img)(_n3##x,_p8##y,z,v)), \ 307.8674 + (I[110] = (img)(_n3##x,_p7##y,z,v)), \ 307.8675 + (I[134] = (img)(_n3##x,_p6##y,z,v)), \ 307.8676 + (I[158] = (img)(_n3##x,_p5##y,z,v)), \ 307.8677 + (I[182] = (img)(_n3##x,_p4##y,z,v)), \ 307.8678 + (I[206] = (img)(_n3##x,_p3##y,z,v)), \ 307.8679 + (I[230] = (img)(_n3##x,_p2##y,z,v)), \ 307.8680 + (I[254] = (img)(_n3##x,_p1##y,z,v)), \ 307.8681 + (I[278] = (img)(_n3##x,y,z,v)), \ 307.8682 + (I[302] = (img)(_n3##x,_n1##y,z,v)), \ 307.8683 + (I[326] = (img)(_n3##x,_n2##y,z,v)), \ 307.8684 + (I[350] = (img)(_n3##x,_n3##y,z,v)), \ 307.8685 + (I[374] = (img)(_n3##x,_n4##y,z,v)), \ 307.8686 + (I[398] = (img)(_n3##x,_n5##y,z,v)), \ 307.8687 + (I[422] = (img)(_n3##x,_n6##y,z,v)), \ 307.8688 + (I[446] = (img)(_n3##x,_n7##y,z,v)), \ 307.8689 + (I[470] = (img)(_n3##x,_n8##y,z,v)), \ 307.8690 + (I[494] = (img)(_n3##x,_n9##y,z,v)), \ 307.8691 + (I[518] = (img)(_n3##x,_n10##y,z,v)), \ 307.8692 + (I[542] = (img)(_n3##x,_n11##y,z,v)), \ 307.8693 + (I[566] = (img)(_n3##x,_n12##y,z,v)), \ 307.8694 + (I[15] = (img)(_n4##x,_p11##y,z,v)), \ 307.8695 + (I[39] = (img)(_n4##x,_p10##y,z,v)), \ 307.8696 + (I[63] = (img)(_n4##x,_p9##y,z,v)), \ 307.8697 + (I[87] = (img)(_n4##x,_p8##y,z,v)), \ 307.8698 + (I[111] = (img)(_n4##x,_p7##y,z,v)), \ 307.8699 + (I[135] = (img)(_n4##x,_p6##y,z,v)), \ 307.8700 + (I[159] = (img)(_n4##x,_p5##y,z,v)), \ 307.8701 + (I[183] = (img)(_n4##x,_p4##y,z,v)), \ 307.8702 + (I[207] = (img)(_n4##x,_p3##y,z,v)), \ 307.8703 + (I[231] = (img)(_n4##x,_p2##y,z,v)), \ 307.8704 + (I[255] = (img)(_n4##x,_p1##y,z,v)), \ 307.8705 + (I[279] = (img)(_n4##x,y,z,v)), \ 307.8706 + (I[303] = (img)(_n4##x,_n1##y,z,v)), \ 307.8707 + (I[327] = (img)(_n4##x,_n2##y,z,v)), \ 307.8708 + (I[351] = (img)(_n4##x,_n3##y,z,v)), \ 307.8709 + (I[375] = (img)(_n4##x,_n4##y,z,v)), \ 307.8710 + (I[399] = (img)(_n4##x,_n5##y,z,v)), \ 307.8711 + (I[423] = (img)(_n4##x,_n6##y,z,v)), \ 307.8712 + (I[447] = (img)(_n4##x,_n7##y,z,v)), \ 307.8713 + (I[471] = (img)(_n4##x,_n8##y,z,v)), \ 307.8714 + (I[495] = (img)(_n4##x,_n9##y,z,v)), \ 307.8715 + (I[519] = (img)(_n4##x,_n10##y,z,v)), \ 307.8716 + (I[543] = (img)(_n4##x,_n11##y,z,v)), \ 307.8717 + (I[567] = (img)(_n4##x,_n12##y,z,v)), \ 307.8718 + (I[16] = (img)(_n5##x,_p11##y,z,v)), \ 307.8719 + (I[40] = (img)(_n5##x,_p10##y,z,v)), \ 307.8720 + (I[64] = (img)(_n5##x,_p9##y,z,v)), \ 307.8721 + (I[88] = (img)(_n5##x,_p8##y,z,v)), \ 307.8722 + (I[112] = (img)(_n5##x,_p7##y,z,v)), \ 307.8723 + (I[136] = (img)(_n5##x,_p6##y,z,v)), \ 307.8724 + (I[160] = (img)(_n5##x,_p5##y,z,v)), \ 307.8725 + (I[184] = (img)(_n5##x,_p4##y,z,v)), \ 307.8726 + (I[208] = (img)(_n5##x,_p3##y,z,v)), \ 307.8727 + (I[232] = (img)(_n5##x,_p2##y,z,v)), \ 307.8728 + (I[256] = (img)(_n5##x,_p1##y,z,v)), \ 307.8729 + (I[280] = (img)(_n5##x,y,z,v)), \ 307.8730 + (I[304] = (img)(_n5##x,_n1##y,z,v)), \ 307.8731 + (I[328] = (img)(_n5##x,_n2##y,z,v)), \ 307.8732 + (I[352] = (img)(_n5##x,_n3##y,z,v)), \ 307.8733 + (I[376] = (img)(_n5##x,_n4##y,z,v)), \ 307.8734 + (I[400] = (img)(_n5##x,_n5##y,z,v)), \ 307.8735 + (I[424] = (img)(_n5##x,_n6##y,z,v)), \ 307.8736 + (I[448] = (img)(_n5##x,_n7##y,z,v)), \ 307.8737 + (I[472] = (img)(_n5##x,_n8##y,z,v)), \ 307.8738 + (I[496] = (img)(_n5##x,_n9##y,z,v)), \ 307.8739 + (I[520] = (img)(_n5##x,_n10##y,z,v)), \ 307.8740 + (I[544] = (img)(_n5##x,_n11##y,z,v)), \ 307.8741 + (I[568] = (img)(_n5##x,_n12##y,z,v)), \ 307.8742 + (I[17] = (img)(_n6##x,_p11##y,z,v)), \ 307.8743 + (I[41] = (img)(_n6##x,_p10##y,z,v)), \ 307.8744 + (I[65] = (img)(_n6##x,_p9##y,z,v)), \ 307.8745 + (I[89] = (img)(_n6##x,_p8##y,z,v)), \ 307.8746 + (I[113] = (img)(_n6##x,_p7##y,z,v)), \ 307.8747 + (I[137] = (img)(_n6##x,_p6##y,z,v)), \ 307.8748 + (I[161] = (img)(_n6##x,_p5##y,z,v)), \ 307.8749 + (I[185] = (img)(_n6##x,_p4##y,z,v)), \ 307.8750 + (I[209] = (img)(_n6##x,_p3##y,z,v)), \ 307.8751 + (I[233] = (img)(_n6##x,_p2##y,z,v)), \ 307.8752 + (I[257] = (img)(_n6##x,_p1##y,z,v)), \ 307.8753 + (I[281] = (img)(_n6##x,y,z,v)), \ 307.8754 + (I[305] = (img)(_n6##x,_n1##y,z,v)), \ 307.8755 + (I[329] = (img)(_n6##x,_n2##y,z,v)), \ 307.8756 + (I[353] = (img)(_n6##x,_n3##y,z,v)), \ 307.8757 + (I[377] = (img)(_n6##x,_n4##y,z,v)), \ 307.8758 + (I[401] = (img)(_n6##x,_n5##y,z,v)), \ 307.8759 + (I[425] = (img)(_n6##x,_n6##y,z,v)), \ 307.8760 + (I[449] = (img)(_n6##x,_n7##y,z,v)), \ 307.8761 + (I[473] = (img)(_n6##x,_n8##y,z,v)), \ 307.8762 + (I[497] = (img)(_n6##x,_n9##y,z,v)), \ 307.8763 + (I[521] = (img)(_n6##x,_n10##y,z,v)), \ 307.8764 + (I[545] = (img)(_n6##x,_n11##y,z,v)), \ 307.8765 + (I[569] = (img)(_n6##x,_n12##y,z,v)), \ 307.8766 + (I[18] = (img)(_n7##x,_p11##y,z,v)), \ 307.8767 + (I[42] = (img)(_n7##x,_p10##y,z,v)), \ 307.8768 + (I[66] = (img)(_n7##x,_p9##y,z,v)), \ 307.8769 + (I[90] = (img)(_n7##x,_p8##y,z,v)), \ 307.8770 + (I[114] = (img)(_n7##x,_p7##y,z,v)), \ 307.8771 + (I[138] = (img)(_n7##x,_p6##y,z,v)), \ 307.8772 + (I[162] = (img)(_n7##x,_p5##y,z,v)), \ 307.8773 + (I[186] = (img)(_n7##x,_p4##y,z,v)), \ 307.8774 + (I[210] = (img)(_n7##x,_p3##y,z,v)), \ 307.8775 + (I[234] = (img)(_n7##x,_p2##y,z,v)), \ 307.8776 + (I[258] = (img)(_n7##x,_p1##y,z,v)), \ 307.8777 + (I[282] = (img)(_n7##x,y,z,v)), \ 307.8778 + (I[306] = (img)(_n7##x,_n1##y,z,v)), \ 307.8779 + (I[330] = (img)(_n7##x,_n2##y,z,v)), \ 307.8780 + (I[354] = (img)(_n7##x,_n3##y,z,v)), \ 307.8781 + (I[378] = (img)(_n7##x,_n4##y,z,v)), \ 307.8782 + (I[402] = (img)(_n7##x,_n5##y,z,v)), \ 307.8783 + (I[426] = (img)(_n7##x,_n6##y,z,v)), \ 307.8784 + (I[450] = (img)(_n7##x,_n7##y,z,v)), \ 307.8785 + (I[474] = (img)(_n7##x,_n8##y,z,v)), \ 307.8786 + (I[498] = (img)(_n7##x,_n9##y,z,v)), \ 307.8787 + (I[522] = (img)(_n7##x,_n10##y,z,v)), \ 307.8788 + (I[546] = (img)(_n7##x,_n11##y,z,v)), \ 307.8789 + (I[570] = (img)(_n7##x,_n12##y,z,v)), \ 307.8790 + (I[19] = (img)(_n8##x,_p11##y,z,v)), \ 307.8791 + (I[43] = (img)(_n8##x,_p10##y,z,v)), \ 307.8792 + (I[67] = (img)(_n8##x,_p9##y,z,v)), \ 307.8793 + (I[91] = (img)(_n8##x,_p8##y,z,v)), \ 307.8794 + (I[115] = (img)(_n8##x,_p7##y,z,v)), \ 307.8795 + (I[139] = (img)(_n8##x,_p6##y,z,v)), \ 307.8796 + (I[163] = (img)(_n8##x,_p5##y,z,v)), \ 307.8797 + (I[187] = (img)(_n8##x,_p4##y,z,v)), \ 307.8798 + (I[211] = (img)(_n8##x,_p3##y,z,v)), \ 307.8799 + (I[235] = (img)(_n8##x,_p2##y,z,v)), \ 307.8800 + (I[259] = (img)(_n8##x,_p1##y,z,v)), \ 307.8801 + (I[283] = (img)(_n8##x,y,z,v)), \ 307.8802 + (I[307] = (img)(_n8##x,_n1##y,z,v)), \ 307.8803 + (I[331] = (img)(_n8##x,_n2##y,z,v)), \ 307.8804 + (I[355] = (img)(_n8##x,_n3##y,z,v)), \ 307.8805 + (I[379] = (img)(_n8##x,_n4##y,z,v)), \ 307.8806 + (I[403] = (img)(_n8##x,_n5##y,z,v)), \ 307.8807 + (I[427] = (img)(_n8##x,_n6##y,z,v)), \ 307.8808 + (I[451] = (img)(_n8##x,_n7##y,z,v)), \ 307.8809 + (I[475] = (img)(_n8##x,_n8##y,z,v)), \ 307.8810 + (I[499] = (img)(_n8##x,_n9##y,z,v)), \ 307.8811 + (I[523] = (img)(_n8##x,_n10##y,z,v)), \ 307.8812 + (I[547] = (img)(_n8##x,_n11##y,z,v)), \ 307.8813 + (I[571] = (img)(_n8##x,_n12##y,z,v)), \ 307.8814 + (I[20] = (img)(_n9##x,_p11##y,z,v)), \ 307.8815 + (I[44] = (img)(_n9##x,_p10##y,z,v)), \ 307.8816 + (I[68] = (img)(_n9##x,_p9##y,z,v)), \ 307.8817 + (I[92] = (img)(_n9##x,_p8##y,z,v)), \ 307.8818 + (I[116] = (img)(_n9##x,_p7##y,z,v)), \ 307.8819 + (I[140] = (img)(_n9##x,_p6##y,z,v)), \ 307.8820 + (I[164] = (img)(_n9##x,_p5##y,z,v)), \ 307.8821 + (I[188] = (img)(_n9##x,_p4##y,z,v)), \ 307.8822 + (I[212] = (img)(_n9##x,_p3##y,z,v)), \ 307.8823 + (I[236] = (img)(_n9##x,_p2##y,z,v)), \ 307.8824 + (I[260] = (img)(_n9##x,_p1##y,z,v)), \ 307.8825 + (I[284] = (img)(_n9##x,y,z,v)), \ 307.8826 + (I[308] = (img)(_n9##x,_n1##y,z,v)), \ 307.8827 + (I[332] = (img)(_n9##x,_n2##y,z,v)), \ 307.8828 + (I[356] = (img)(_n9##x,_n3##y,z,v)), \ 307.8829 + (I[380] = (img)(_n9##x,_n4##y,z,v)), \ 307.8830 + (I[404] = (img)(_n9##x,_n5##y,z,v)), \ 307.8831 + (I[428] = (img)(_n9##x,_n6##y,z,v)), \ 307.8832 + (I[452] = (img)(_n9##x,_n7##y,z,v)), \ 307.8833 + (I[476] = (img)(_n9##x,_n8##y,z,v)), \ 307.8834 + (I[500] = (img)(_n9##x,_n9##y,z,v)), \ 307.8835 + (I[524] = (img)(_n9##x,_n10##y,z,v)), \ 307.8836 + (I[548] = (img)(_n9##x,_n11##y,z,v)), \ 307.8837 + (I[572] = (img)(_n9##x,_n12##y,z,v)), \ 307.8838 + (I[21] = (img)(_n10##x,_p11##y,z,v)), \ 307.8839 + (I[45] = (img)(_n10##x,_p10##y,z,v)), \ 307.8840 + (I[69] = (img)(_n10##x,_p9##y,z,v)), \ 307.8841 + (I[93] = (img)(_n10##x,_p8##y,z,v)), \ 307.8842 + (I[117] = (img)(_n10##x,_p7##y,z,v)), \ 307.8843 + (I[141] = (img)(_n10##x,_p6##y,z,v)), \ 307.8844 + (I[165] = (img)(_n10##x,_p5##y,z,v)), \ 307.8845 + (I[189] = (img)(_n10##x,_p4##y,z,v)), \ 307.8846 + (I[213] = (img)(_n10##x,_p3##y,z,v)), \ 307.8847 + (I[237] = (img)(_n10##x,_p2##y,z,v)), \ 307.8848 + (I[261] = (img)(_n10##x,_p1##y,z,v)), \ 307.8849 + (I[285] = (img)(_n10##x,y,z,v)), \ 307.8850 + (I[309] = (img)(_n10##x,_n1##y,z,v)), \ 307.8851 + (I[333] = (img)(_n10##x,_n2##y,z,v)), \ 307.8852 + (I[357] = (img)(_n10##x,_n3##y,z,v)), \ 307.8853 + (I[381] = (img)(_n10##x,_n4##y,z,v)), \ 307.8854 + (I[405] = (img)(_n10##x,_n5##y,z,v)), \ 307.8855 + (I[429] = (img)(_n10##x,_n6##y,z,v)), \ 307.8856 + (I[453] = (img)(_n10##x,_n7##y,z,v)), \ 307.8857 + (I[477] = (img)(_n10##x,_n8##y,z,v)), \ 307.8858 + (I[501] = (img)(_n10##x,_n9##y,z,v)), \ 307.8859 + (I[525] = (img)(_n10##x,_n10##y,z,v)), \ 307.8860 + (I[549] = (img)(_n10##x,_n11##y,z,v)), \ 307.8861 + (I[573] = (img)(_n10##x,_n12##y,z,v)), \ 307.8862 + (I[22] = (img)(_n11##x,_p11##y,z,v)), \ 307.8863 + (I[46] = (img)(_n11##x,_p10##y,z,v)), \ 307.8864 + (I[70] = (img)(_n11##x,_p9##y,z,v)), \ 307.8865 + (I[94] = (img)(_n11##x,_p8##y,z,v)), \ 307.8866 + (I[118] = (img)(_n11##x,_p7##y,z,v)), \ 307.8867 + (I[142] = (img)(_n11##x,_p6##y,z,v)), \ 307.8868 + (I[166] = (img)(_n11##x,_p5##y,z,v)), \ 307.8869 + (I[190] = (img)(_n11##x,_p4##y,z,v)), \ 307.8870 + (I[214] = (img)(_n11##x,_p3##y,z,v)), \ 307.8871 + (I[238] = (img)(_n11##x,_p2##y,z,v)), \ 307.8872 + (I[262] = (img)(_n11##x,_p1##y,z,v)), \ 307.8873 + (I[286] = (img)(_n11##x,y,z,v)), \ 307.8874 + (I[310] = (img)(_n11##x,_n1##y,z,v)), \ 307.8875 + (I[334] = (img)(_n11##x,_n2##y,z,v)), \ 307.8876 + (I[358] = (img)(_n11##x,_n3##y,z,v)), \ 307.8877 + (I[382] = (img)(_n11##x,_n4##y,z,v)), \ 307.8878 + (I[406] = (img)(_n11##x,_n5##y,z,v)), \ 307.8879 + (I[430] = (img)(_n11##x,_n6##y,z,v)), \ 307.8880 + (I[454] = (img)(_n11##x,_n7##y,z,v)), \ 307.8881 + (I[478] = (img)(_n11##x,_n8##y,z,v)), \ 307.8882 + (I[502] = (img)(_n11##x,_n9##y,z,v)), \ 307.8883 + (I[526] = (img)(_n11##x,_n10##y,z,v)), \ 307.8884 + (I[550] = (img)(_n11##x,_n11##y,z,v)), \ 307.8885 + (I[574] = (img)(_n11##x,_n12##y,z,v)), \ 307.8886 + 12>=((img).width)?(int)((img).width)-1:12); \ 307.8887 + (_n12##x<(int)((img).width) && ( \ 307.8888 + (I[23] = (img)(_n12##x,_p11##y,z,v)), \ 307.8889 + (I[47] = (img)(_n12##x,_p10##y,z,v)), \ 307.8890 + (I[71] = (img)(_n12##x,_p9##y,z,v)), \ 307.8891 + (I[95] = (img)(_n12##x,_p8##y,z,v)), \ 307.8892 + (I[119] = (img)(_n12##x,_p7##y,z,v)), \ 307.8893 + (I[143] = (img)(_n12##x,_p6##y,z,v)), \ 307.8894 + (I[167] = (img)(_n12##x,_p5##y,z,v)), \ 307.8895 + (I[191] = (img)(_n12##x,_p4##y,z,v)), \ 307.8896 + (I[215] = (img)(_n12##x,_p3##y,z,v)), \ 307.8897 + (I[239] = (img)(_n12##x,_p2##y,z,v)), \ 307.8898 + (I[263] = (img)(_n12##x,_p1##y,z,v)), \ 307.8899 + (I[287] = (img)(_n12##x,y,z,v)), \ 307.8900 + (I[311] = (img)(_n12##x,_n1##y,z,v)), \ 307.8901 + (I[335] = (img)(_n12##x,_n2##y,z,v)), \ 307.8902 + (I[359] = (img)(_n12##x,_n3##y,z,v)), \ 307.8903 + (I[383] = (img)(_n12##x,_n4##y,z,v)), \ 307.8904 + (I[407] = (img)(_n12##x,_n5##y,z,v)), \ 307.8905 + (I[431] = (img)(_n12##x,_n6##y,z,v)), \ 307.8906 + (I[455] = (img)(_n12##x,_n7##y,z,v)), \ 307.8907 + (I[479] = (img)(_n12##x,_n8##y,z,v)), \ 307.8908 + (I[503] = (img)(_n12##x,_n9##y,z,v)), \ 307.8909 + (I[527] = (img)(_n12##x,_n10##y,z,v)), \ 307.8910 + (I[551] = (img)(_n12##x,_n11##y,z,v)), \ 307.8911 + (I[575] = (img)(_n12##x,_n12##y,z,v)),1)) || \ 307.8912 + _n11##x==--_n12##x || _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n12##x = _n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x); \ 307.8913 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.8914 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.8915 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.8916 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.8917 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.8918 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.8919 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.8920 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.8921 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.8922 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.8923 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.8924 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.8925 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], \ 307.8926 + I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.8927 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.8928 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], \ 307.8929 + I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], \ 307.8930 + I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], \ 307.8931 + I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], I[439] = I[440], I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], \ 307.8932 + I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], I[461] = I[462], I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], \ 307.8933 + I[480] = I[481], I[481] = I[482], I[482] = I[483], I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], I[487] = I[488], I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], I[495] = I[496], I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], \ 307.8934 + I[504] = I[505], I[505] = I[506], I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], I[511] = I[512], I[512] = I[513], I[513] = I[514], I[514] = I[515], I[515] = I[516], I[516] = I[517], I[517] = I[518], I[518] = I[519], I[519] = I[520], I[520] = I[521], I[521] = I[522], I[522] = I[523], I[523] = I[524], I[524] = I[525], I[525] = I[526], I[526] = I[527], \ 307.8935 + I[528] = I[529], I[529] = I[530], I[530] = I[531], I[531] = I[532], I[532] = I[533], I[533] = I[534], I[534] = I[535], I[535] = I[536], I[536] = I[537], I[537] = I[538], I[538] = I[539], I[539] = I[540], I[540] = I[541], I[541] = I[542], I[542] = I[543], I[543] = I[544], I[544] = I[545], I[545] = I[546], I[546] = I[547], I[547] = I[548], I[548] = I[549], I[549] = I[550], I[550] = I[551], \ 307.8936 + I[552] = I[553], I[553] = I[554], I[554] = I[555], I[555] = I[556], I[556] = I[557], I[557] = I[558], I[558] = I[559], I[559] = I[560], I[560] = I[561], I[561] = I[562], I[562] = I[563], I[563] = I[564], I[564] = I[565], I[565] = I[566], I[566] = I[567], I[567] = I[568], I[568] = I[569], I[569] = I[570], I[570] = I[571], I[571] = I[572], I[572] = I[573], I[573] = I[574], I[574] = I[575], \ 307.8937 + _p11##x = _p10##x, _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x, ++_n12##x) 307.8938 + 307.8939 +#define cimg_for_in24x24(img,x0,y0,x1,y1,x,y,z,v,I) \ 307.8940 + cimg_for_in24((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.8941 + _p11##x = x-11<0?0:x-11, \ 307.8942 + _p10##x = x-10<0?0:x-10, \ 307.8943 + _p9##x = x-9<0?0:x-9, \ 307.8944 + _p8##x = x-8<0?0:x-8, \ 307.8945 + _p7##x = x-7<0?0:x-7, \ 307.8946 + _p6##x = x-6<0?0:x-6, \ 307.8947 + _p5##x = x-5<0?0:x-5, \ 307.8948 + _p4##x = x-4<0?0:x-4, \ 307.8949 + _p3##x = x-3<0?0:x-3, \ 307.8950 + _p2##x = x-2<0?0:x-2, \ 307.8951 + _p1##x = x-1<0?0:x-1, \ 307.8952 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.8953 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.8954 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.8955 + _n4##x = x+4>=(int)((img).width)?(int)((img).width)-1:x+4, \ 307.8956 + _n5##x = x+5>=(int)((img).width)?(int)((img).width)-1:x+5, \ 307.8957 + _n6##x = x+6>=(int)((img).width)?(int)((img).width)-1:x+6, \ 307.8958 + _n7##x = x+7>=(int)((img).width)?(int)((img).width)-1:x+7, \ 307.8959 + _n8##x = x+8>=(int)((img).width)?(int)((img).width)-1:x+8, \ 307.8960 + _n9##x = x+9>=(int)((img).width)?(int)((img).width)-1:x+9, \ 307.8961 + _n10##x = x+10>=(int)((img).width)?(int)((img).width)-1:x+10, \ 307.8962 + _n11##x = x+11>=(int)((img).width)?(int)((img).width)-1:x+11, \ 307.8963 + _n12##x = (int)( \ 307.8964 + (I[0] = (img)(_p11##x,_p11##y,z,v)), \ 307.8965 + (I[24] = (img)(_p11##x,_p10##y,z,v)), \ 307.8966 + (I[48] = (img)(_p11##x,_p9##y,z,v)), \ 307.8967 + (I[72] = (img)(_p11##x,_p8##y,z,v)), \ 307.8968 + (I[96] = (img)(_p11##x,_p7##y,z,v)), \ 307.8969 + (I[120] = (img)(_p11##x,_p6##y,z,v)), \ 307.8970 + (I[144] = (img)(_p11##x,_p5##y,z,v)), \ 307.8971 + (I[168] = (img)(_p11##x,_p4##y,z,v)), \ 307.8972 + (I[192] = (img)(_p11##x,_p3##y,z,v)), \ 307.8973 + (I[216] = (img)(_p11##x,_p2##y,z,v)), \ 307.8974 + (I[240] = (img)(_p11##x,_p1##y,z,v)), \ 307.8975 + (I[264] = (img)(_p11##x,y,z,v)), \ 307.8976 + (I[288] = (img)(_p11##x,_n1##y,z,v)), \ 307.8977 + (I[312] = (img)(_p11##x,_n2##y,z,v)), \ 307.8978 + (I[336] = (img)(_p11##x,_n3##y,z,v)), \ 307.8979 + (I[360] = (img)(_p11##x,_n4##y,z,v)), \ 307.8980 + (I[384] = (img)(_p11##x,_n5##y,z,v)), \ 307.8981 + (I[408] = (img)(_p11##x,_n6##y,z,v)), \ 307.8982 + (I[432] = (img)(_p11##x,_n7##y,z,v)), \ 307.8983 + (I[456] = (img)(_p11##x,_n8##y,z,v)), \ 307.8984 + (I[480] = (img)(_p11##x,_n9##y,z,v)), \ 307.8985 + (I[504] = (img)(_p11##x,_n10##y,z,v)), \ 307.8986 + (I[528] = (img)(_p11##x,_n11##y,z,v)), \ 307.8987 + (I[552] = (img)(_p11##x,_n12##y,z,v)), \ 307.8988 + (I[1] = (img)(_p10##x,_p11##y,z,v)), \ 307.8989 + (I[25] = (img)(_p10##x,_p10##y,z,v)), \ 307.8990 + (I[49] = (img)(_p10##x,_p9##y,z,v)), \ 307.8991 + (I[73] = (img)(_p10##x,_p8##y,z,v)), \ 307.8992 + (I[97] = (img)(_p10##x,_p7##y,z,v)), \ 307.8993 + (I[121] = (img)(_p10##x,_p6##y,z,v)), \ 307.8994 + (I[145] = (img)(_p10##x,_p5##y,z,v)), \ 307.8995 + (I[169] = (img)(_p10##x,_p4##y,z,v)), \ 307.8996 + (I[193] = (img)(_p10##x,_p3##y,z,v)), \ 307.8997 + (I[217] = (img)(_p10##x,_p2##y,z,v)), \ 307.8998 + (I[241] = (img)(_p10##x,_p1##y,z,v)), \ 307.8999 + (I[265] = (img)(_p10##x,y,z,v)), \ 307.9000 + (I[289] = (img)(_p10##x,_n1##y,z,v)), \ 307.9001 + (I[313] = (img)(_p10##x,_n2##y,z,v)), \ 307.9002 + (I[337] = (img)(_p10##x,_n3##y,z,v)), \ 307.9003 + (I[361] = (img)(_p10##x,_n4##y,z,v)), \ 307.9004 + (I[385] = (img)(_p10##x,_n5##y,z,v)), \ 307.9005 + (I[409] = (img)(_p10##x,_n6##y,z,v)), \ 307.9006 + (I[433] = (img)(_p10##x,_n7##y,z,v)), \ 307.9007 + (I[457] = (img)(_p10##x,_n8##y,z,v)), \ 307.9008 + (I[481] = (img)(_p10##x,_n9##y,z,v)), \ 307.9009 + (I[505] = (img)(_p10##x,_n10##y,z,v)), \ 307.9010 + (I[529] = (img)(_p10##x,_n11##y,z,v)), \ 307.9011 + (I[553] = (img)(_p10##x,_n12##y,z,v)), \ 307.9012 + (I[2] = (img)(_p9##x,_p11##y,z,v)), \ 307.9013 + (I[26] = (img)(_p9##x,_p10##y,z,v)), \ 307.9014 + (I[50] = (img)(_p9##x,_p9##y,z,v)), \ 307.9015 + (I[74] = (img)(_p9##x,_p8##y,z,v)), \ 307.9016 + (I[98] = (img)(_p9##x,_p7##y,z,v)), \ 307.9017 + (I[122] = (img)(_p9##x,_p6##y,z,v)), \ 307.9018 + (I[146] = (img)(_p9##x,_p5##y,z,v)), \ 307.9019 + (I[170] = (img)(_p9##x,_p4##y,z,v)), \ 307.9020 + (I[194] = (img)(_p9##x,_p3##y,z,v)), \ 307.9021 + (I[218] = (img)(_p9##x,_p2##y,z,v)), \ 307.9022 + (I[242] = (img)(_p9##x,_p1##y,z,v)), \ 307.9023 + (I[266] = (img)(_p9##x,y,z,v)), \ 307.9024 + (I[290] = (img)(_p9##x,_n1##y,z,v)), \ 307.9025 + (I[314] = (img)(_p9##x,_n2##y,z,v)), \ 307.9026 + (I[338] = (img)(_p9##x,_n3##y,z,v)), \ 307.9027 + (I[362] = (img)(_p9##x,_n4##y,z,v)), \ 307.9028 + (I[386] = (img)(_p9##x,_n5##y,z,v)), \ 307.9029 + (I[410] = (img)(_p9##x,_n6##y,z,v)), \ 307.9030 + (I[434] = (img)(_p9##x,_n7##y,z,v)), \ 307.9031 + (I[458] = (img)(_p9##x,_n8##y,z,v)), \ 307.9032 + (I[482] = (img)(_p9##x,_n9##y,z,v)), \ 307.9033 + (I[506] = (img)(_p9##x,_n10##y,z,v)), \ 307.9034 + (I[530] = (img)(_p9##x,_n11##y,z,v)), \ 307.9035 + (I[554] = (img)(_p9##x,_n12##y,z,v)), \ 307.9036 + (I[3] = (img)(_p8##x,_p11##y,z,v)), \ 307.9037 + (I[27] = (img)(_p8##x,_p10##y,z,v)), \ 307.9038 + (I[51] = (img)(_p8##x,_p9##y,z,v)), \ 307.9039 + (I[75] = (img)(_p8##x,_p8##y,z,v)), \ 307.9040 + (I[99] = (img)(_p8##x,_p7##y,z,v)), \ 307.9041 + (I[123] = (img)(_p8##x,_p6##y,z,v)), \ 307.9042 + (I[147] = (img)(_p8##x,_p5##y,z,v)), \ 307.9043 + (I[171] = (img)(_p8##x,_p4##y,z,v)), \ 307.9044 + (I[195] = (img)(_p8##x,_p3##y,z,v)), \ 307.9045 + (I[219] = (img)(_p8##x,_p2##y,z,v)), \ 307.9046 + (I[243] = (img)(_p8##x,_p1##y,z,v)), \ 307.9047 + (I[267] = (img)(_p8##x,y,z,v)), \ 307.9048 + (I[291] = (img)(_p8##x,_n1##y,z,v)), \ 307.9049 + (I[315] = (img)(_p8##x,_n2##y,z,v)), \ 307.9050 + (I[339] = (img)(_p8##x,_n3##y,z,v)), \ 307.9051 + (I[363] = (img)(_p8##x,_n4##y,z,v)), \ 307.9052 + (I[387] = (img)(_p8##x,_n5##y,z,v)), \ 307.9053 + (I[411] = (img)(_p8##x,_n6##y,z,v)), \ 307.9054 + (I[435] = (img)(_p8##x,_n7##y,z,v)), \ 307.9055 + (I[459] = (img)(_p8##x,_n8##y,z,v)), \ 307.9056 + (I[483] = (img)(_p8##x,_n9##y,z,v)), \ 307.9057 + (I[507] = (img)(_p8##x,_n10##y,z,v)), \ 307.9058 + (I[531] = (img)(_p8##x,_n11##y,z,v)), \ 307.9059 + (I[555] = (img)(_p8##x,_n12##y,z,v)), \ 307.9060 + (I[4] = (img)(_p7##x,_p11##y,z,v)), \ 307.9061 + (I[28] = (img)(_p7##x,_p10##y,z,v)), \ 307.9062 + (I[52] = (img)(_p7##x,_p9##y,z,v)), \ 307.9063 + (I[76] = (img)(_p7##x,_p8##y,z,v)), \ 307.9064 + (I[100] = (img)(_p7##x,_p7##y,z,v)), \ 307.9065 + (I[124] = (img)(_p7##x,_p6##y,z,v)), \ 307.9066 + (I[148] = (img)(_p7##x,_p5##y,z,v)), \ 307.9067 + (I[172] = (img)(_p7##x,_p4##y,z,v)), \ 307.9068 + (I[196] = (img)(_p7##x,_p3##y,z,v)), \ 307.9069 + (I[220] = (img)(_p7##x,_p2##y,z,v)), \ 307.9070 + (I[244] = (img)(_p7##x,_p1##y,z,v)), \ 307.9071 + (I[268] = (img)(_p7##x,y,z,v)), \ 307.9072 + (I[292] = (img)(_p7##x,_n1##y,z,v)), \ 307.9073 + (I[316] = (img)(_p7##x,_n2##y,z,v)), \ 307.9074 + (I[340] = (img)(_p7##x,_n3##y,z,v)), \ 307.9075 + (I[364] = (img)(_p7##x,_n4##y,z,v)), \ 307.9076 + (I[388] = (img)(_p7##x,_n5##y,z,v)), \ 307.9077 + (I[412] = (img)(_p7##x,_n6##y,z,v)), \ 307.9078 + (I[436] = (img)(_p7##x,_n7##y,z,v)), \ 307.9079 + (I[460] = (img)(_p7##x,_n8##y,z,v)), \ 307.9080 + (I[484] = (img)(_p7##x,_n9##y,z,v)), \ 307.9081 + (I[508] = (img)(_p7##x,_n10##y,z,v)), \ 307.9082 + (I[532] = (img)(_p7##x,_n11##y,z,v)), \ 307.9083 + (I[556] = (img)(_p7##x,_n12##y,z,v)), \ 307.9084 + (I[5] = (img)(_p6##x,_p11##y,z,v)), \ 307.9085 + (I[29] = (img)(_p6##x,_p10##y,z,v)), \ 307.9086 + (I[53] = (img)(_p6##x,_p9##y,z,v)), \ 307.9087 + (I[77] = (img)(_p6##x,_p8##y,z,v)), \ 307.9088 + (I[101] = (img)(_p6##x,_p7##y,z,v)), \ 307.9089 + (I[125] = (img)(_p6##x,_p6##y,z,v)), \ 307.9090 + (I[149] = (img)(_p6##x,_p5##y,z,v)), \ 307.9091 + (I[173] = (img)(_p6##x,_p4##y,z,v)), \ 307.9092 + (I[197] = (img)(_p6##x,_p3##y,z,v)), \ 307.9093 + (I[221] = (img)(_p6##x,_p2##y,z,v)), \ 307.9094 + (I[245] = (img)(_p6##x,_p1##y,z,v)), \ 307.9095 + (I[269] = (img)(_p6##x,y,z,v)), \ 307.9096 + (I[293] = (img)(_p6##x,_n1##y,z,v)), \ 307.9097 + (I[317] = (img)(_p6##x,_n2##y,z,v)), \ 307.9098 + (I[341] = (img)(_p6##x,_n3##y,z,v)), \ 307.9099 + (I[365] = (img)(_p6##x,_n4##y,z,v)), \ 307.9100 + (I[389] = (img)(_p6##x,_n5##y,z,v)), \ 307.9101 + (I[413] = (img)(_p6##x,_n6##y,z,v)), \ 307.9102 + (I[437] = (img)(_p6##x,_n7##y,z,v)), \ 307.9103 + (I[461] = (img)(_p6##x,_n8##y,z,v)), \ 307.9104 + (I[485] = (img)(_p6##x,_n9##y,z,v)), \ 307.9105 + (I[509] = (img)(_p6##x,_n10##y,z,v)), \ 307.9106 + (I[533] = (img)(_p6##x,_n11##y,z,v)), \ 307.9107 + (I[557] = (img)(_p6##x,_n12##y,z,v)), \ 307.9108 + (I[6] = (img)(_p5##x,_p11##y,z,v)), \ 307.9109 + (I[30] = (img)(_p5##x,_p10##y,z,v)), \ 307.9110 + (I[54] = (img)(_p5##x,_p9##y,z,v)), \ 307.9111 + (I[78] = (img)(_p5##x,_p8##y,z,v)), \ 307.9112 + (I[102] = (img)(_p5##x,_p7##y,z,v)), \ 307.9113 + (I[126] = (img)(_p5##x,_p6##y,z,v)), \ 307.9114 + (I[150] = (img)(_p5##x,_p5##y,z,v)), \ 307.9115 + (I[174] = (img)(_p5##x,_p4##y,z,v)), \ 307.9116 + (I[198] = (img)(_p5##x,_p3##y,z,v)), \ 307.9117 + (I[222] = (img)(_p5##x,_p2##y,z,v)), \ 307.9118 + (I[246] = (img)(_p5##x,_p1##y,z,v)), \ 307.9119 + (I[270] = (img)(_p5##x,y,z,v)), \ 307.9120 + (I[294] = (img)(_p5##x,_n1##y,z,v)), \ 307.9121 + (I[318] = (img)(_p5##x,_n2##y,z,v)), \ 307.9122 + (I[342] = (img)(_p5##x,_n3##y,z,v)), \ 307.9123 + (I[366] = (img)(_p5##x,_n4##y,z,v)), \ 307.9124 + (I[390] = (img)(_p5##x,_n5##y,z,v)), \ 307.9125 + (I[414] = (img)(_p5##x,_n6##y,z,v)), \ 307.9126 + (I[438] = (img)(_p5##x,_n7##y,z,v)), \ 307.9127 + (I[462] = (img)(_p5##x,_n8##y,z,v)), \ 307.9128 + (I[486] = (img)(_p5##x,_n9##y,z,v)), \ 307.9129 + (I[510] = (img)(_p5##x,_n10##y,z,v)), \ 307.9130 + (I[534] = (img)(_p5##x,_n11##y,z,v)), \ 307.9131 + (I[558] = (img)(_p5##x,_n12##y,z,v)), \ 307.9132 + (I[7] = (img)(_p4##x,_p11##y,z,v)), \ 307.9133 + (I[31] = (img)(_p4##x,_p10##y,z,v)), \ 307.9134 + (I[55] = (img)(_p4##x,_p9##y,z,v)), \ 307.9135 + (I[79] = (img)(_p4##x,_p8##y,z,v)), \ 307.9136 + (I[103] = (img)(_p4##x,_p7##y,z,v)), \ 307.9137 + (I[127] = (img)(_p4##x,_p6##y,z,v)), \ 307.9138 + (I[151] = (img)(_p4##x,_p5##y,z,v)), \ 307.9139 + (I[175] = (img)(_p4##x,_p4##y,z,v)), \ 307.9140 + (I[199] = (img)(_p4##x,_p3##y,z,v)), \ 307.9141 + (I[223] = (img)(_p4##x,_p2##y,z,v)), \ 307.9142 + (I[247] = (img)(_p4##x,_p1##y,z,v)), \ 307.9143 + (I[271] = (img)(_p4##x,y,z,v)), \ 307.9144 + (I[295] = (img)(_p4##x,_n1##y,z,v)), \ 307.9145 + (I[319] = (img)(_p4##x,_n2##y,z,v)), \ 307.9146 + (I[343] = (img)(_p4##x,_n3##y,z,v)), \ 307.9147 + (I[367] = (img)(_p4##x,_n4##y,z,v)), \ 307.9148 + (I[391] = (img)(_p4##x,_n5##y,z,v)), \ 307.9149 + (I[415] = (img)(_p4##x,_n6##y,z,v)), \ 307.9150 + (I[439] = (img)(_p4##x,_n7##y,z,v)), \ 307.9151 + (I[463] = (img)(_p4##x,_n8##y,z,v)), \ 307.9152 + (I[487] = (img)(_p4##x,_n9##y,z,v)), \ 307.9153 + (I[511] = (img)(_p4##x,_n10##y,z,v)), \ 307.9154 + (I[535] = (img)(_p4##x,_n11##y,z,v)), \ 307.9155 + (I[559] = (img)(_p4##x,_n12##y,z,v)), \ 307.9156 + (I[8] = (img)(_p3##x,_p11##y,z,v)), \ 307.9157 + (I[32] = (img)(_p3##x,_p10##y,z,v)), \ 307.9158 + (I[56] = (img)(_p3##x,_p9##y,z,v)), \ 307.9159 + (I[80] = (img)(_p3##x,_p8##y,z,v)), \ 307.9160 + (I[104] = (img)(_p3##x,_p7##y,z,v)), \ 307.9161 + (I[128] = (img)(_p3##x,_p6##y,z,v)), \ 307.9162 + (I[152] = (img)(_p3##x,_p5##y,z,v)), \ 307.9163 + (I[176] = (img)(_p3##x,_p4##y,z,v)), \ 307.9164 + (I[200] = (img)(_p3##x,_p3##y,z,v)), \ 307.9165 + (I[224] = (img)(_p3##x,_p2##y,z,v)), \ 307.9166 + (I[248] = (img)(_p3##x,_p1##y,z,v)), \ 307.9167 + (I[272] = (img)(_p3##x,y,z,v)), \ 307.9168 + (I[296] = (img)(_p3##x,_n1##y,z,v)), \ 307.9169 + (I[320] = (img)(_p3##x,_n2##y,z,v)), \ 307.9170 + (I[344] = (img)(_p3##x,_n3##y,z,v)), \ 307.9171 + (I[368] = (img)(_p3##x,_n4##y,z,v)), \ 307.9172 + (I[392] = (img)(_p3##x,_n5##y,z,v)), \ 307.9173 + (I[416] = (img)(_p3##x,_n6##y,z,v)), \ 307.9174 + (I[440] = (img)(_p3##x,_n7##y,z,v)), \ 307.9175 + (I[464] = (img)(_p3##x,_n8##y,z,v)), \ 307.9176 + (I[488] = (img)(_p3##x,_n9##y,z,v)), \ 307.9177 + (I[512] = (img)(_p3##x,_n10##y,z,v)), \ 307.9178 + (I[536] = (img)(_p3##x,_n11##y,z,v)), \ 307.9179 + (I[560] = (img)(_p3##x,_n12##y,z,v)), \ 307.9180 + (I[9] = (img)(_p2##x,_p11##y,z,v)), \ 307.9181 + (I[33] = (img)(_p2##x,_p10##y,z,v)), \ 307.9182 + (I[57] = (img)(_p2##x,_p9##y,z,v)), \ 307.9183 + (I[81] = (img)(_p2##x,_p8##y,z,v)), \ 307.9184 + (I[105] = (img)(_p2##x,_p7##y,z,v)), \ 307.9185 + (I[129] = (img)(_p2##x,_p6##y,z,v)), \ 307.9186 + (I[153] = (img)(_p2##x,_p5##y,z,v)), \ 307.9187 + (I[177] = (img)(_p2##x,_p4##y,z,v)), \ 307.9188 + (I[201] = (img)(_p2##x,_p3##y,z,v)), \ 307.9189 + (I[225] = (img)(_p2##x,_p2##y,z,v)), \ 307.9190 + (I[249] = (img)(_p2##x,_p1##y,z,v)), \ 307.9191 + (I[273] = (img)(_p2##x,y,z,v)), \ 307.9192 + (I[297] = (img)(_p2##x,_n1##y,z,v)), \ 307.9193 + (I[321] = (img)(_p2##x,_n2##y,z,v)), \ 307.9194 + (I[345] = (img)(_p2##x,_n3##y,z,v)), \ 307.9195 + (I[369] = (img)(_p2##x,_n4##y,z,v)), \ 307.9196 + (I[393] = (img)(_p2##x,_n5##y,z,v)), \ 307.9197 + (I[417] = (img)(_p2##x,_n6##y,z,v)), \ 307.9198 + (I[441] = (img)(_p2##x,_n7##y,z,v)), \ 307.9199 + (I[465] = (img)(_p2##x,_n8##y,z,v)), \ 307.9200 + (I[489] = (img)(_p2##x,_n9##y,z,v)), \ 307.9201 + (I[513] = (img)(_p2##x,_n10##y,z,v)), \ 307.9202 + (I[537] = (img)(_p2##x,_n11##y,z,v)), \ 307.9203 + (I[561] = (img)(_p2##x,_n12##y,z,v)), \ 307.9204 + (I[10] = (img)(_p1##x,_p11##y,z,v)), \ 307.9205 + (I[34] = (img)(_p1##x,_p10##y,z,v)), \ 307.9206 + (I[58] = (img)(_p1##x,_p9##y,z,v)), \ 307.9207 + (I[82] = (img)(_p1##x,_p8##y,z,v)), \ 307.9208 + (I[106] = (img)(_p1##x,_p7##y,z,v)), \ 307.9209 + (I[130] = (img)(_p1##x,_p6##y,z,v)), \ 307.9210 + (I[154] = (img)(_p1##x,_p5##y,z,v)), \ 307.9211 + (I[178] = (img)(_p1##x,_p4##y,z,v)), \ 307.9212 + (I[202] = (img)(_p1##x,_p3##y,z,v)), \ 307.9213 + (I[226] = (img)(_p1##x,_p2##y,z,v)), \ 307.9214 + (I[250] = (img)(_p1##x,_p1##y,z,v)), \ 307.9215 + (I[274] = (img)(_p1##x,y,z,v)), \ 307.9216 + (I[298] = (img)(_p1##x,_n1##y,z,v)), \ 307.9217 + (I[322] = (img)(_p1##x,_n2##y,z,v)), \ 307.9218 + (I[346] = (img)(_p1##x,_n3##y,z,v)), \ 307.9219 + (I[370] = (img)(_p1##x,_n4##y,z,v)), \ 307.9220 + (I[394] = (img)(_p1##x,_n5##y,z,v)), \ 307.9221 + (I[418] = (img)(_p1##x,_n6##y,z,v)), \ 307.9222 + (I[442] = (img)(_p1##x,_n7##y,z,v)), \ 307.9223 + (I[466] = (img)(_p1##x,_n8##y,z,v)), \ 307.9224 + (I[490] = (img)(_p1##x,_n9##y,z,v)), \ 307.9225 + (I[514] = (img)(_p1##x,_n10##y,z,v)), \ 307.9226 + (I[538] = (img)(_p1##x,_n11##y,z,v)), \ 307.9227 + (I[562] = (img)(_p1##x,_n12##y,z,v)), \ 307.9228 + (I[11] = (img)(x,_p11##y,z,v)), \ 307.9229 + (I[35] = (img)(x,_p10##y,z,v)), \ 307.9230 + (I[59] = (img)(x,_p9##y,z,v)), \ 307.9231 + (I[83] = (img)(x,_p8##y,z,v)), \ 307.9232 + (I[107] = (img)(x,_p7##y,z,v)), \ 307.9233 + (I[131] = (img)(x,_p6##y,z,v)), \ 307.9234 + (I[155] = (img)(x,_p5##y,z,v)), \ 307.9235 + (I[179] = (img)(x,_p4##y,z,v)), \ 307.9236 + (I[203] = (img)(x,_p3##y,z,v)), \ 307.9237 + (I[227] = (img)(x,_p2##y,z,v)), \ 307.9238 + (I[251] = (img)(x,_p1##y,z,v)), \ 307.9239 + (I[275] = (img)(x,y,z,v)), \ 307.9240 + (I[299] = (img)(x,_n1##y,z,v)), \ 307.9241 + (I[323] = (img)(x,_n2##y,z,v)), \ 307.9242 + (I[347] = (img)(x,_n3##y,z,v)), \ 307.9243 + (I[371] = (img)(x,_n4##y,z,v)), \ 307.9244 + (I[395] = (img)(x,_n5##y,z,v)), \ 307.9245 + (I[419] = (img)(x,_n6##y,z,v)), \ 307.9246 + (I[443] = (img)(x,_n7##y,z,v)), \ 307.9247 + (I[467] = (img)(x,_n8##y,z,v)), \ 307.9248 + (I[491] = (img)(x,_n9##y,z,v)), \ 307.9249 + (I[515] = (img)(x,_n10##y,z,v)), \ 307.9250 + (I[539] = (img)(x,_n11##y,z,v)), \ 307.9251 + (I[563] = (img)(x,_n12##y,z,v)), \ 307.9252 + (I[12] = (img)(_n1##x,_p11##y,z,v)), \ 307.9253 + (I[36] = (img)(_n1##x,_p10##y,z,v)), \ 307.9254 + (I[60] = (img)(_n1##x,_p9##y,z,v)), \ 307.9255 + (I[84] = (img)(_n1##x,_p8##y,z,v)), \ 307.9256 + (I[108] = (img)(_n1##x,_p7##y,z,v)), \ 307.9257 + (I[132] = (img)(_n1##x,_p6##y,z,v)), \ 307.9258 + (I[156] = (img)(_n1##x,_p5##y,z,v)), \ 307.9259 + (I[180] = (img)(_n1##x,_p4##y,z,v)), \ 307.9260 + (I[204] = (img)(_n1##x,_p3##y,z,v)), \ 307.9261 + (I[228] = (img)(_n1##x,_p2##y,z,v)), \ 307.9262 + (I[252] = (img)(_n1##x,_p1##y,z,v)), \ 307.9263 + (I[276] = (img)(_n1##x,y,z,v)), \ 307.9264 + (I[300] = (img)(_n1##x,_n1##y,z,v)), \ 307.9265 + (I[324] = (img)(_n1##x,_n2##y,z,v)), \ 307.9266 + (I[348] = (img)(_n1##x,_n3##y,z,v)), \ 307.9267 + (I[372] = (img)(_n1##x,_n4##y,z,v)), \ 307.9268 + (I[396] = (img)(_n1##x,_n5##y,z,v)), \ 307.9269 + (I[420] = (img)(_n1##x,_n6##y,z,v)), \ 307.9270 + (I[444] = (img)(_n1##x,_n7##y,z,v)), \ 307.9271 + (I[468] = (img)(_n1##x,_n8##y,z,v)), \ 307.9272 + (I[492] = (img)(_n1##x,_n9##y,z,v)), \ 307.9273 + (I[516] = (img)(_n1##x,_n10##y,z,v)), \ 307.9274 + (I[540] = (img)(_n1##x,_n11##y,z,v)), \ 307.9275 + (I[564] = (img)(_n1##x,_n12##y,z,v)), \ 307.9276 + (I[13] = (img)(_n2##x,_p11##y,z,v)), \ 307.9277 + (I[37] = (img)(_n2##x,_p10##y,z,v)), \ 307.9278 + (I[61] = (img)(_n2##x,_p9##y,z,v)), \ 307.9279 + (I[85] = (img)(_n2##x,_p8##y,z,v)), \ 307.9280 + (I[109] = (img)(_n2##x,_p7##y,z,v)), \ 307.9281 + (I[133] = (img)(_n2##x,_p6##y,z,v)), \ 307.9282 + (I[157] = (img)(_n2##x,_p5##y,z,v)), \ 307.9283 + (I[181] = (img)(_n2##x,_p4##y,z,v)), \ 307.9284 + (I[205] = (img)(_n2##x,_p3##y,z,v)), \ 307.9285 + (I[229] = (img)(_n2##x,_p2##y,z,v)), \ 307.9286 + (I[253] = (img)(_n2##x,_p1##y,z,v)), \ 307.9287 + (I[277] = (img)(_n2##x,y,z,v)), \ 307.9288 + (I[301] = (img)(_n2##x,_n1##y,z,v)), \ 307.9289 + (I[325] = (img)(_n2##x,_n2##y,z,v)), \ 307.9290 + (I[349] = (img)(_n2##x,_n3##y,z,v)), \ 307.9291 + (I[373] = (img)(_n2##x,_n4##y,z,v)), \ 307.9292 + (I[397] = (img)(_n2##x,_n5##y,z,v)), \ 307.9293 + (I[421] = (img)(_n2##x,_n6##y,z,v)), \ 307.9294 + (I[445] = (img)(_n2##x,_n7##y,z,v)), \ 307.9295 + (I[469] = (img)(_n2##x,_n8##y,z,v)), \ 307.9296 + (I[493] = (img)(_n2##x,_n9##y,z,v)), \ 307.9297 + (I[517] = (img)(_n2##x,_n10##y,z,v)), \ 307.9298 + (I[541] = (img)(_n2##x,_n11##y,z,v)), \ 307.9299 + (I[565] = (img)(_n2##x,_n12##y,z,v)), \ 307.9300 + (I[14] = (img)(_n3##x,_p11##y,z,v)), \ 307.9301 + (I[38] = (img)(_n3##x,_p10##y,z,v)), \ 307.9302 + (I[62] = (img)(_n3##x,_p9##y,z,v)), \ 307.9303 + (I[86] = (img)(_n3##x,_p8##y,z,v)), \ 307.9304 + (I[110] = (img)(_n3##x,_p7##y,z,v)), \ 307.9305 + (I[134] = (img)(_n3##x,_p6##y,z,v)), \ 307.9306 + (I[158] = (img)(_n3##x,_p5##y,z,v)), \ 307.9307 + (I[182] = (img)(_n3##x,_p4##y,z,v)), \ 307.9308 + (I[206] = (img)(_n3##x,_p3##y,z,v)), \ 307.9309 + (I[230] = (img)(_n3##x,_p2##y,z,v)), \ 307.9310 + (I[254] = (img)(_n3##x,_p1##y,z,v)), \ 307.9311 + (I[278] = (img)(_n3##x,y,z,v)), \ 307.9312 + (I[302] = (img)(_n3##x,_n1##y,z,v)), \ 307.9313 + (I[326] = (img)(_n3##x,_n2##y,z,v)), \ 307.9314 + (I[350] = (img)(_n3##x,_n3##y,z,v)), \ 307.9315 + (I[374] = (img)(_n3##x,_n4##y,z,v)), \ 307.9316 + (I[398] = (img)(_n3##x,_n5##y,z,v)), \ 307.9317 + (I[422] = (img)(_n3##x,_n6##y,z,v)), \ 307.9318 + (I[446] = (img)(_n3##x,_n7##y,z,v)), \ 307.9319 + (I[470] = (img)(_n3##x,_n8##y,z,v)), \ 307.9320 + (I[494] = (img)(_n3##x,_n9##y,z,v)), \ 307.9321 + (I[518] = (img)(_n3##x,_n10##y,z,v)), \ 307.9322 + (I[542] = (img)(_n3##x,_n11##y,z,v)), \ 307.9323 + (I[566] = (img)(_n3##x,_n12##y,z,v)), \ 307.9324 + (I[15] = (img)(_n4##x,_p11##y,z,v)), \ 307.9325 + (I[39] = (img)(_n4##x,_p10##y,z,v)), \ 307.9326 + (I[63] = (img)(_n4##x,_p9##y,z,v)), \ 307.9327 + (I[87] = (img)(_n4##x,_p8##y,z,v)), \ 307.9328 + (I[111] = (img)(_n4##x,_p7##y,z,v)), \ 307.9329 + (I[135] = (img)(_n4##x,_p6##y,z,v)), \ 307.9330 + (I[159] = (img)(_n4##x,_p5##y,z,v)), \ 307.9331 + (I[183] = (img)(_n4##x,_p4##y,z,v)), \ 307.9332 + (I[207] = (img)(_n4##x,_p3##y,z,v)), \ 307.9333 + (I[231] = (img)(_n4##x,_p2##y,z,v)), \ 307.9334 + (I[255] = (img)(_n4##x,_p1##y,z,v)), \ 307.9335 + (I[279] = (img)(_n4##x,y,z,v)), \ 307.9336 + (I[303] = (img)(_n4##x,_n1##y,z,v)), \ 307.9337 + (I[327] = (img)(_n4##x,_n2##y,z,v)), \ 307.9338 + (I[351] = (img)(_n4##x,_n3##y,z,v)), \ 307.9339 + (I[375] = (img)(_n4##x,_n4##y,z,v)), \ 307.9340 + (I[399] = (img)(_n4##x,_n5##y,z,v)), \ 307.9341 + (I[423] = (img)(_n4##x,_n6##y,z,v)), \ 307.9342 + (I[447] = (img)(_n4##x,_n7##y,z,v)), \ 307.9343 + (I[471] = (img)(_n4##x,_n8##y,z,v)), \ 307.9344 + (I[495] = (img)(_n4##x,_n9##y,z,v)), \ 307.9345 + (I[519] = (img)(_n4##x,_n10##y,z,v)), \ 307.9346 + (I[543] = (img)(_n4##x,_n11##y,z,v)), \ 307.9347 + (I[567] = (img)(_n4##x,_n12##y,z,v)), \ 307.9348 + (I[16] = (img)(_n5##x,_p11##y,z,v)), \ 307.9349 + (I[40] = (img)(_n5##x,_p10##y,z,v)), \ 307.9350 + (I[64] = (img)(_n5##x,_p9##y,z,v)), \ 307.9351 + (I[88] = (img)(_n5##x,_p8##y,z,v)), \ 307.9352 + (I[112] = (img)(_n5##x,_p7##y,z,v)), \ 307.9353 + (I[136] = (img)(_n5##x,_p6##y,z,v)), \ 307.9354 + (I[160] = (img)(_n5##x,_p5##y,z,v)), \ 307.9355 + (I[184] = (img)(_n5##x,_p4##y,z,v)), \ 307.9356 + (I[208] = (img)(_n5##x,_p3##y,z,v)), \ 307.9357 + (I[232] = (img)(_n5##x,_p2##y,z,v)), \ 307.9358 + (I[256] = (img)(_n5##x,_p1##y,z,v)), \ 307.9359 + (I[280] = (img)(_n5##x,y,z,v)), \ 307.9360 + (I[304] = (img)(_n5##x,_n1##y,z,v)), \ 307.9361 + (I[328] = (img)(_n5##x,_n2##y,z,v)), \ 307.9362 + (I[352] = (img)(_n5##x,_n3##y,z,v)), \ 307.9363 + (I[376] = (img)(_n5##x,_n4##y,z,v)), \ 307.9364 + (I[400] = (img)(_n5##x,_n5##y,z,v)), \ 307.9365 + (I[424] = (img)(_n5##x,_n6##y,z,v)), \ 307.9366 + (I[448] = (img)(_n5##x,_n7##y,z,v)), \ 307.9367 + (I[472] = (img)(_n5##x,_n8##y,z,v)), \ 307.9368 + (I[496] = (img)(_n5##x,_n9##y,z,v)), \ 307.9369 + (I[520] = (img)(_n5##x,_n10##y,z,v)), \ 307.9370 + (I[544] = (img)(_n5##x,_n11##y,z,v)), \ 307.9371 + (I[568] = (img)(_n5##x,_n12##y,z,v)), \ 307.9372 + (I[17] = (img)(_n6##x,_p11##y,z,v)), \ 307.9373 + (I[41] = (img)(_n6##x,_p10##y,z,v)), \ 307.9374 + (I[65] = (img)(_n6##x,_p9##y,z,v)), \ 307.9375 + (I[89] = (img)(_n6##x,_p8##y,z,v)), \ 307.9376 + (I[113] = (img)(_n6##x,_p7##y,z,v)), \ 307.9377 + (I[137] = (img)(_n6##x,_p6##y,z,v)), \ 307.9378 + (I[161] = (img)(_n6##x,_p5##y,z,v)), \ 307.9379 + (I[185] = (img)(_n6##x,_p4##y,z,v)), \ 307.9380 + (I[209] = (img)(_n6##x,_p3##y,z,v)), \ 307.9381 + (I[233] = (img)(_n6##x,_p2##y,z,v)), \ 307.9382 + (I[257] = (img)(_n6##x,_p1##y,z,v)), \ 307.9383 + (I[281] = (img)(_n6##x,y,z,v)), \ 307.9384 + (I[305] = (img)(_n6##x,_n1##y,z,v)), \ 307.9385 + (I[329] = (img)(_n6##x,_n2##y,z,v)), \ 307.9386 + (I[353] = (img)(_n6##x,_n3##y,z,v)), \ 307.9387 + (I[377] = (img)(_n6##x,_n4##y,z,v)), \ 307.9388 + (I[401] = (img)(_n6##x,_n5##y,z,v)), \ 307.9389 + (I[425] = (img)(_n6##x,_n6##y,z,v)), \ 307.9390 + (I[449] = (img)(_n6##x,_n7##y,z,v)), \ 307.9391 + (I[473] = (img)(_n6##x,_n8##y,z,v)), \ 307.9392 + (I[497] = (img)(_n6##x,_n9##y,z,v)), \ 307.9393 + (I[521] = (img)(_n6##x,_n10##y,z,v)), \ 307.9394 + (I[545] = (img)(_n6##x,_n11##y,z,v)), \ 307.9395 + (I[569] = (img)(_n6##x,_n12##y,z,v)), \ 307.9396 + (I[18] = (img)(_n7##x,_p11##y,z,v)), \ 307.9397 + (I[42] = (img)(_n7##x,_p10##y,z,v)), \ 307.9398 + (I[66] = (img)(_n7##x,_p9##y,z,v)), \ 307.9399 + (I[90] = (img)(_n7##x,_p8##y,z,v)), \ 307.9400 + (I[114] = (img)(_n7##x,_p7##y,z,v)), \ 307.9401 + (I[138] = (img)(_n7##x,_p6##y,z,v)), \ 307.9402 + (I[162] = (img)(_n7##x,_p5##y,z,v)), \ 307.9403 + (I[186] = (img)(_n7##x,_p4##y,z,v)), \ 307.9404 + (I[210] = (img)(_n7##x,_p3##y,z,v)), \ 307.9405 + (I[234] = (img)(_n7##x,_p2##y,z,v)), \ 307.9406 + (I[258] = (img)(_n7##x,_p1##y,z,v)), \ 307.9407 + (I[282] = (img)(_n7##x,y,z,v)), \ 307.9408 + (I[306] = (img)(_n7##x,_n1##y,z,v)), \ 307.9409 + (I[330] = (img)(_n7##x,_n2##y,z,v)), \ 307.9410 + (I[354] = (img)(_n7##x,_n3##y,z,v)), \ 307.9411 + (I[378] = (img)(_n7##x,_n4##y,z,v)), \ 307.9412 + (I[402] = (img)(_n7##x,_n5##y,z,v)), \ 307.9413 + (I[426] = (img)(_n7##x,_n6##y,z,v)), \ 307.9414 + (I[450] = (img)(_n7##x,_n7##y,z,v)), \ 307.9415 + (I[474] = (img)(_n7##x,_n8##y,z,v)), \ 307.9416 + (I[498] = (img)(_n7##x,_n9##y,z,v)), \ 307.9417 + (I[522] = (img)(_n7##x,_n10##y,z,v)), \ 307.9418 + (I[546] = (img)(_n7##x,_n11##y,z,v)), \ 307.9419 + (I[570] = (img)(_n7##x,_n12##y,z,v)), \ 307.9420 + (I[19] = (img)(_n8##x,_p11##y,z,v)), \ 307.9421 + (I[43] = (img)(_n8##x,_p10##y,z,v)), \ 307.9422 + (I[67] = (img)(_n8##x,_p9##y,z,v)), \ 307.9423 + (I[91] = (img)(_n8##x,_p8##y,z,v)), \ 307.9424 + (I[115] = (img)(_n8##x,_p7##y,z,v)), \ 307.9425 + (I[139] = (img)(_n8##x,_p6##y,z,v)), \ 307.9426 + (I[163] = (img)(_n8##x,_p5##y,z,v)), \ 307.9427 + (I[187] = (img)(_n8##x,_p4##y,z,v)), \ 307.9428 + (I[211] = (img)(_n8##x,_p3##y,z,v)), \ 307.9429 + (I[235] = (img)(_n8##x,_p2##y,z,v)), \ 307.9430 + (I[259] = (img)(_n8##x,_p1##y,z,v)), \ 307.9431 + (I[283] = (img)(_n8##x,y,z,v)), \ 307.9432 + (I[307] = (img)(_n8##x,_n1##y,z,v)), \ 307.9433 + (I[331] = (img)(_n8##x,_n2##y,z,v)), \ 307.9434 + (I[355] = (img)(_n8##x,_n3##y,z,v)), \ 307.9435 + (I[379] = (img)(_n8##x,_n4##y,z,v)), \ 307.9436 + (I[403] = (img)(_n8##x,_n5##y,z,v)), \ 307.9437 + (I[427] = (img)(_n8##x,_n6##y,z,v)), \ 307.9438 + (I[451] = (img)(_n8##x,_n7##y,z,v)), \ 307.9439 + (I[475] = (img)(_n8##x,_n8##y,z,v)), \ 307.9440 + (I[499] = (img)(_n8##x,_n9##y,z,v)), \ 307.9441 + (I[523] = (img)(_n8##x,_n10##y,z,v)), \ 307.9442 + (I[547] = (img)(_n8##x,_n11##y,z,v)), \ 307.9443 + (I[571] = (img)(_n8##x,_n12##y,z,v)), \ 307.9444 + (I[20] = (img)(_n9##x,_p11##y,z,v)), \ 307.9445 + (I[44] = (img)(_n9##x,_p10##y,z,v)), \ 307.9446 + (I[68] = (img)(_n9##x,_p9##y,z,v)), \ 307.9447 + (I[92] = (img)(_n9##x,_p8##y,z,v)), \ 307.9448 + (I[116] = (img)(_n9##x,_p7##y,z,v)), \ 307.9449 + (I[140] = (img)(_n9##x,_p6##y,z,v)), \ 307.9450 + (I[164] = (img)(_n9##x,_p5##y,z,v)), \ 307.9451 + (I[188] = (img)(_n9##x,_p4##y,z,v)), \ 307.9452 + (I[212] = (img)(_n9##x,_p3##y,z,v)), \ 307.9453 + (I[236] = (img)(_n9##x,_p2##y,z,v)), \ 307.9454 + (I[260] = (img)(_n9##x,_p1##y,z,v)), \ 307.9455 + (I[284] = (img)(_n9##x,y,z,v)), \ 307.9456 + (I[308] = (img)(_n9##x,_n1##y,z,v)), \ 307.9457 + (I[332] = (img)(_n9##x,_n2##y,z,v)), \ 307.9458 + (I[356] = (img)(_n9##x,_n3##y,z,v)), \ 307.9459 + (I[380] = (img)(_n9##x,_n4##y,z,v)), \ 307.9460 + (I[404] = (img)(_n9##x,_n5##y,z,v)), \ 307.9461 + (I[428] = (img)(_n9##x,_n6##y,z,v)), \ 307.9462 + (I[452] = (img)(_n9##x,_n7##y,z,v)), \ 307.9463 + (I[476] = (img)(_n9##x,_n8##y,z,v)), \ 307.9464 + (I[500] = (img)(_n9##x,_n9##y,z,v)), \ 307.9465 + (I[524] = (img)(_n9##x,_n10##y,z,v)), \ 307.9466 + (I[548] = (img)(_n9##x,_n11##y,z,v)), \ 307.9467 + (I[572] = (img)(_n9##x,_n12##y,z,v)), \ 307.9468 + (I[21] = (img)(_n10##x,_p11##y,z,v)), \ 307.9469 + (I[45] = (img)(_n10##x,_p10##y,z,v)), \ 307.9470 + (I[69] = (img)(_n10##x,_p9##y,z,v)), \ 307.9471 + (I[93] = (img)(_n10##x,_p8##y,z,v)), \ 307.9472 + (I[117] = (img)(_n10##x,_p7##y,z,v)), \ 307.9473 + (I[141] = (img)(_n10##x,_p6##y,z,v)), \ 307.9474 + (I[165] = (img)(_n10##x,_p5##y,z,v)), \ 307.9475 + (I[189] = (img)(_n10##x,_p4##y,z,v)), \ 307.9476 + (I[213] = (img)(_n10##x,_p3##y,z,v)), \ 307.9477 + (I[237] = (img)(_n10##x,_p2##y,z,v)), \ 307.9478 + (I[261] = (img)(_n10##x,_p1##y,z,v)), \ 307.9479 + (I[285] = (img)(_n10##x,y,z,v)), \ 307.9480 + (I[309] = (img)(_n10##x,_n1##y,z,v)), \ 307.9481 + (I[333] = (img)(_n10##x,_n2##y,z,v)), \ 307.9482 + (I[357] = (img)(_n10##x,_n3##y,z,v)), \ 307.9483 + (I[381] = (img)(_n10##x,_n4##y,z,v)), \ 307.9484 + (I[405] = (img)(_n10##x,_n5##y,z,v)), \ 307.9485 + (I[429] = (img)(_n10##x,_n6##y,z,v)), \ 307.9486 + (I[453] = (img)(_n10##x,_n7##y,z,v)), \ 307.9487 + (I[477] = (img)(_n10##x,_n8##y,z,v)), \ 307.9488 + (I[501] = (img)(_n10##x,_n9##y,z,v)), \ 307.9489 + (I[525] = (img)(_n10##x,_n10##y,z,v)), \ 307.9490 + (I[549] = (img)(_n10##x,_n11##y,z,v)), \ 307.9491 + (I[573] = (img)(_n10##x,_n12##y,z,v)), \ 307.9492 + (I[22] = (img)(_n11##x,_p11##y,z,v)), \ 307.9493 + (I[46] = (img)(_n11##x,_p10##y,z,v)), \ 307.9494 + (I[70] = (img)(_n11##x,_p9##y,z,v)), \ 307.9495 + (I[94] = (img)(_n11##x,_p8##y,z,v)), \ 307.9496 + (I[118] = (img)(_n11##x,_p7##y,z,v)), \ 307.9497 + (I[142] = (img)(_n11##x,_p6##y,z,v)), \ 307.9498 + (I[166] = (img)(_n11##x,_p5##y,z,v)), \ 307.9499 + (I[190] = (img)(_n11##x,_p4##y,z,v)), \ 307.9500 + (I[214] = (img)(_n11##x,_p3##y,z,v)), \ 307.9501 + (I[238] = (img)(_n11##x,_p2##y,z,v)), \ 307.9502 + (I[262] = (img)(_n11##x,_p1##y,z,v)), \ 307.9503 + (I[286] = (img)(_n11##x,y,z,v)), \ 307.9504 + (I[310] = (img)(_n11##x,_n1##y,z,v)), \ 307.9505 + (I[334] = (img)(_n11##x,_n2##y,z,v)), \ 307.9506 + (I[358] = (img)(_n11##x,_n3##y,z,v)), \ 307.9507 + (I[382] = (img)(_n11##x,_n4##y,z,v)), \ 307.9508 + (I[406] = (img)(_n11##x,_n5##y,z,v)), \ 307.9509 + (I[430] = (img)(_n11##x,_n6##y,z,v)), \ 307.9510 + (I[454] = (img)(_n11##x,_n7##y,z,v)), \ 307.9511 + (I[478] = (img)(_n11##x,_n8##y,z,v)), \ 307.9512 + (I[502] = (img)(_n11##x,_n9##y,z,v)), \ 307.9513 + (I[526] = (img)(_n11##x,_n10##y,z,v)), \ 307.9514 + (I[550] = (img)(_n11##x,_n11##y,z,v)), \ 307.9515 + (I[574] = (img)(_n11##x,_n12##y,z,v)), \ 307.9516 + x+12>=(int)((img).width)?(int)((img).width)-1:x+12); \ 307.9517 + x<=(int)(x1) && ((_n12##x<(int)((img).width) && ( \ 307.9518 + (I[23] = (img)(_n12##x,_p11##y,z,v)), \ 307.9519 + (I[47] = (img)(_n12##x,_p10##y,z,v)), \ 307.9520 + (I[71] = (img)(_n12##x,_p9##y,z,v)), \ 307.9521 + (I[95] = (img)(_n12##x,_p8##y,z,v)), \ 307.9522 + (I[119] = (img)(_n12##x,_p7##y,z,v)), \ 307.9523 + (I[143] = (img)(_n12##x,_p6##y,z,v)), \ 307.9524 + (I[167] = (img)(_n12##x,_p5##y,z,v)), \ 307.9525 + (I[191] = (img)(_n12##x,_p4##y,z,v)), \ 307.9526 + (I[215] = (img)(_n12##x,_p3##y,z,v)), \ 307.9527 + (I[239] = (img)(_n12##x,_p2##y,z,v)), \ 307.9528 + (I[263] = (img)(_n12##x,_p1##y,z,v)), \ 307.9529 + (I[287] = (img)(_n12##x,y,z,v)), \ 307.9530 + (I[311] = (img)(_n12##x,_n1##y,z,v)), \ 307.9531 + (I[335] = (img)(_n12##x,_n2##y,z,v)), \ 307.9532 + (I[359] = (img)(_n12##x,_n3##y,z,v)), \ 307.9533 + (I[383] = (img)(_n12##x,_n4##y,z,v)), \ 307.9534 + (I[407] = (img)(_n12##x,_n5##y,z,v)), \ 307.9535 + (I[431] = (img)(_n12##x,_n6##y,z,v)), \ 307.9536 + (I[455] = (img)(_n12##x,_n7##y,z,v)), \ 307.9537 + (I[479] = (img)(_n12##x,_n8##y,z,v)), \ 307.9538 + (I[503] = (img)(_n12##x,_n9##y,z,v)), \ 307.9539 + (I[527] = (img)(_n12##x,_n10##y,z,v)), \ 307.9540 + (I[551] = (img)(_n12##x,_n11##y,z,v)), \ 307.9541 + (I[575] = (img)(_n12##x,_n12##y,z,v)),1)) || \ 307.9542 + _n11##x==--_n12##x || _n10##x==--_n11##x || _n9##x==--_n10##x || _n8##x==--_n9##x || _n7##x==--_n8##x || _n6##x==--_n7##x || _n5##x==--_n6##x || _n4##x==--_n5##x || _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n12##x = _n11##x = _n10##x = _n9##x = _n8##x = _n7##x = _n6##x = _n5##x = _n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.9543 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.9544 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.9545 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.9546 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.9547 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.9548 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.9549 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.9550 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.9551 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.9552 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], I[223] = I[224], I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.9553 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.9554 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], I[279] = I[280], I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.9555 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], \ 307.9556 + I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.9557 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], I[343] = I[344], I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], I[351] = I[352], I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.9558 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], I[367] = I[368], I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], I[375] = I[376], I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], \ 307.9559 + I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], I[391] = I[392], I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], I[399] = I[400], I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], \ 307.9560 + I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], I[415] = I[416], I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], I[423] = I[424], I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], \ 307.9561 + I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], I[439] = I[440], I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], I[447] = I[448], I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], \ 307.9562 + I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], I[461] = I[462], I[462] = I[463], I[463] = I[464], I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], I[471] = I[472], I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], \ 307.9563 + I[480] = I[481], I[481] = I[482], I[482] = I[483], I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], I[487] = I[488], I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], I[495] = I[496], I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], \ 307.9564 + I[504] = I[505], I[505] = I[506], I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], I[511] = I[512], I[512] = I[513], I[513] = I[514], I[514] = I[515], I[515] = I[516], I[516] = I[517], I[517] = I[518], I[518] = I[519], I[519] = I[520], I[520] = I[521], I[521] = I[522], I[522] = I[523], I[523] = I[524], I[524] = I[525], I[525] = I[526], I[526] = I[527], \ 307.9565 + I[528] = I[529], I[529] = I[530], I[530] = I[531], I[531] = I[532], I[532] = I[533], I[533] = I[534], I[534] = I[535], I[535] = I[536], I[536] = I[537], I[537] = I[538], I[538] = I[539], I[539] = I[540], I[540] = I[541], I[541] = I[542], I[542] = I[543], I[543] = I[544], I[544] = I[545], I[545] = I[546], I[546] = I[547], I[547] = I[548], I[548] = I[549], I[549] = I[550], I[550] = I[551], \ 307.9566 + I[552] = I[553], I[553] = I[554], I[554] = I[555], I[555] = I[556], I[556] = I[557], I[557] = I[558], I[558] = I[559], I[559] = I[560], I[560] = I[561], I[561] = I[562], I[562] = I[563], I[563] = I[564], I[564] = I[565], I[565] = I[566], I[566] = I[567], I[567] = I[568], I[568] = I[569], I[569] = I[570], I[570] = I[571], I[571] = I[572], I[572] = I[573], I[573] = I[574], I[574] = I[575], \ 307.9567 + _p11##x = _p10##x, _p10##x = _p9##x, _p9##x = _p8##x, _p8##x = _p7##x, _p7##x = _p6##x, _p6##x = _p5##x, _p5##x = _p4##x, _p4##x = _p3##x, _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x, ++_n5##x, ++_n6##x, ++_n7##x, ++_n8##x, ++_n9##x, ++_n10##x, ++_n11##x, ++_n12##x) 307.9568 + 307.9569 +#define cimg_get24x24(img,x,y,z,v,I) \ 307.9570 + I[0] = (img)(_p11##x,_p11##y,z,v), I[1] = (img)(_p10##x,_p11##y,z,v), I[2] = (img)(_p9##x,_p11##y,z,v), I[3] = (img)(_p8##x,_p11##y,z,v), I[4] = (img)(_p7##x,_p11##y,z,v), I[5] = (img)(_p6##x,_p11##y,z,v), I[6] = (img)(_p5##x,_p11##y,z,v), I[7] = (img)(_p4##x,_p11##y,z,v), I[8] = (img)(_p3##x,_p11##y,z,v), I[9] = (img)(_p2##x,_p11##y,z,v), I[10] = (img)(_p1##x,_p11##y,z,v), I[11] = (img)(x,_p11##y,z,v), I[12] = (img)(_n1##x,_p11##y,z,v), I[13] = (img)(_n2##x,_p11##y,z,v), I[14] = (img)(_n3##x,_p11##y,z,v), I[15] = (img)(_n4##x,_p11##y,z,v), I[16] = (img)(_n5##x,_p11##y,z,v), I[17] = (img)(_n6##x,_p11##y,z,v), I[18] = (img)(_n7##x,_p11##y,z,v), I[19] = (img)(_n8##x,_p11##y,z,v), I[20] = (img)(_n9##x,_p11##y,z,v), I[21] = (img)(_n10##x,_p11##y,z,v), I[22] = (img)(_n11##x,_p11##y,z,v), I[23] = (img)(_n12##x,_p11##y,z,v), \ 307.9571 + I[24] = (img)(_p11##x,_p10##y,z,v), I[25] = (img)(_p10##x,_p10##y,z,v), I[26] = (img)(_p9##x,_p10##y,z,v), I[27] = (img)(_p8##x,_p10##y,z,v), I[28] = (img)(_p7##x,_p10##y,z,v), I[29] = (img)(_p6##x,_p10##y,z,v), I[30] = (img)(_p5##x,_p10##y,z,v), I[31] = (img)(_p4##x,_p10##y,z,v), I[32] = (img)(_p3##x,_p10##y,z,v), I[33] = (img)(_p2##x,_p10##y,z,v), I[34] = (img)(_p1##x,_p10##y,z,v), I[35] = (img)(x,_p10##y,z,v), I[36] = (img)(_n1##x,_p10##y,z,v), I[37] = (img)(_n2##x,_p10##y,z,v), I[38] = (img)(_n3##x,_p10##y,z,v), I[39] = (img)(_n4##x,_p10##y,z,v), I[40] = (img)(_n5##x,_p10##y,z,v), I[41] = (img)(_n6##x,_p10##y,z,v), I[42] = (img)(_n7##x,_p10##y,z,v), I[43] = (img)(_n8##x,_p10##y,z,v), I[44] = (img)(_n9##x,_p10##y,z,v), I[45] = (img)(_n10##x,_p10##y,z,v), I[46] = (img)(_n11##x,_p10##y,z,v), I[47] = (img)(_n12##x,_p10##y,z,v), \ 307.9572 + I[48] = (img)(_p11##x,_p9##y,z,v), I[49] = (img)(_p10##x,_p9##y,z,v), I[50] = (img)(_p9##x,_p9##y,z,v), I[51] = (img)(_p8##x,_p9##y,z,v), I[52] = (img)(_p7##x,_p9##y,z,v), I[53] = (img)(_p6##x,_p9##y,z,v), I[54] = (img)(_p5##x,_p9##y,z,v), I[55] = (img)(_p4##x,_p9##y,z,v), I[56] = (img)(_p3##x,_p9##y,z,v), I[57] = (img)(_p2##x,_p9##y,z,v), I[58] = (img)(_p1##x,_p9##y,z,v), I[59] = (img)(x,_p9##y,z,v), I[60] = (img)(_n1##x,_p9##y,z,v), I[61] = (img)(_n2##x,_p9##y,z,v), I[62] = (img)(_n3##x,_p9##y,z,v), I[63] = (img)(_n4##x,_p9##y,z,v), I[64] = (img)(_n5##x,_p9##y,z,v), I[65] = (img)(_n6##x,_p9##y,z,v), I[66] = (img)(_n7##x,_p9##y,z,v), I[67] = (img)(_n8##x,_p9##y,z,v), I[68] = (img)(_n9##x,_p9##y,z,v), I[69] = (img)(_n10##x,_p9##y,z,v), I[70] = (img)(_n11##x,_p9##y,z,v), I[71] = (img)(_n12##x,_p9##y,z,v), \ 307.9573 + I[72] = (img)(_p11##x,_p8##y,z,v), I[73] = (img)(_p10##x,_p8##y,z,v), I[74] = (img)(_p9##x,_p8##y,z,v), I[75] = (img)(_p8##x,_p8##y,z,v), I[76] = (img)(_p7##x,_p8##y,z,v), I[77] = (img)(_p6##x,_p8##y,z,v), I[78] = (img)(_p5##x,_p8##y,z,v), I[79] = (img)(_p4##x,_p8##y,z,v), I[80] = (img)(_p3##x,_p8##y,z,v), I[81] = (img)(_p2##x,_p8##y,z,v), I[82] = (img)(_p1##x,_p8##y,z,v), I[83] = (img)(x,_p8##y,z,v), I[84] = (img)(_n1##x,_p8##y,z,v), I[85] = (img)(_n2##x,_p8##y,z,v), I[86] = (img)(_n3##x,_p8##y,z,v), I[87] = (img)(_n4##x,_p8##y,z,v), I[88] = (img)(_n5##x,_p8##y,z,v), I[89] = (img)(_n6##x,_p8##y,z,v), I[90] = (img)(_n7##x,_p8##y,z,v), I[91] = (img)(_n8##x,_p8##y,z,v), I[92] = (img)(_n9##x,_p8##y,z,v), I[93] = (img)(_n10##x,_p8##y,z,v), I[94] = (img)(_n11##x,_p8##y,z,v), I[95] = (img)(_n12##x,_p8##y,z,v), \ 307.9574 + I[96] = (img)(_p11##x,_p7##y,z,v), I[97] = (img)(_p10##x,_p7##y,z,v), I[98] = (img)(_p9##x,_p7##y,z,v), I[99] = (img)(_p8##x,_p7##y,z,v), I[100] = (img)(_p7##x,_p7##y,z,v), I[101] = (img)(_p6##x,_p7##y,z,v), I[102] = (img)(_p5##x,_p7##y,z,v), I[103] = (img)(_p4##x,_p7##y,z,v), I[104] = (img)(_p3##x,_p7##y,z,v), I[105] = (img)(_p2##x,_p7##y,z,v), I[106] = (img)(_p1##x,_p7##y,z,v), I[107] = (img)(x,_p7##y,z,v), I[108] = (img)(_n1##x,_p7##y,z,v), I[109] = (img)(_n2##x,_p7##y,z,v), I[110] = (img)(_n3##x,_p7##y,z,v), I[111] = (img)(_n4##x,_p7##y,z,v), I[112] = (img)(_n5##x,_p7##y,z,v), I[113] = (img)(_n6##x,_p7##y,z,v), I[114] = (img)(_n7##x,_p7##y,z,v), I[115] = (img)(_n8##x,_p7##y,z,v), I[116] = (img)(_n9##x,_p7##y,z,v), I[117] = (img)(_n10##x,_p7##y,z,v), I[118] = (img)(_n11##x,_p7##y,z,v), I[119] = (img)(_n12##x,_p7##y,z,v), \ 307.9575 + I[120] = (img)(_p11##x,_p6##y,z,v), I[121] = (img)(_p10##x,_p6##y,z,v), I[122] = (img)(_p9##x,_p6##y,z,v), I[123] = (img)(_p8##x,_p6##y,z,v), I[124] = (img)(_p7##x,_p6##y,z,v), I[125] = (img)(_p6##x,_p6##y,z,v), I[126] = (img)(_p5##x,_p6##y,z,v), I[127] = (img)(_p4##x,_p6##y,z,v), I[128] = (img)(_p3##x,_p6##y,z,v), I[129] = (img)(_p2##x,_p6##y,z,v), I[130] = (img)(_p1##x,_p6##y,z,v), I[131] = (img)(x,_p6##y,z,v), I[132] = (img)(_n1##x,_p6##y,z,v), I[133] = (img)(_n2##x,_p6##y,z,v), I[134] = (img)(_n3##x,_p6##y,z,v), I[135] = (img)(_n4##x,_p6##y,z,v), I[136] = (img)(_n5##x,_p6##y,z,v), I[137] = (img)(_n6##x,_p6##y,z,v), I[138] = (img)(_n7##x,_p6##y,z,v), I[139] = (img)(_n8##x,_p6##y,z,v), I[140] = (img)(_n9##x,_p6##y,z,v), I[141] = (img)(_n10##x,_p6##y,z,v), I[142] = (img)(_n11##x,_p6##y,z,v), I[143] = (img)(_n12##x,_p6##y,z,v), \ 307.9576 + I[144] = (img)(_p11##x,_p5##y,z,v), I[145] = (img)(_p10##x,_p5##y,z,v), I[146] = (img)(_p9##x,_p5##y,z,v), I[147] = (img)(_p8##x,_p5##y,z,v), I[148] = (img)(_p7##x,_p5##y,z,v), I[149] = (img)(_p6##x,_p5##y,z,v), I[150] = (img)(_p5##x,_p5##y,z,v), I[151] = (img)(_p4##x,_p5##y,z,v), I[152] = (img)(_p3##x,_p5##y,z,v), I[153] = (img)(_p2##x,_p5##y,z,v), I[154] = (img)(_p1##x,_p5##y,z,v), I[155] = (img)(x,_p5##y,z,v), I[156] = (img)(_n1##x,_p5##y,z,v), I[157] = (img)(_n2##x,_p5##y,z,v), I[158] = (img)(_n3##x,_p5##y,z,v), I[159] = (img)(_n4##x,_p5##y,z,v), I[160] = (img)(_n5##x,_p5##y,z,v), I[161] = (img)(_n6##x,_p5##y,z,v), I[162] = (img)(_n7##x,_p5##y,z,v), I[163] = (img)(_n8##x,_p5##y,z,v), I[164] = (img)(_n9##x,_p5##y,z,v), I[165] = (img)(_n10##x,_p5##y,z,v), I[166] = (img)(_n11##x,_p5##y,z,v), I[167] = (img)(_n12##x,_p5##y,z,v), \ 307.9577 + I[168] = (img)(_p11##x,_p4##y,z,v), I[169] = (img)(_p10##x,_p4##y,z,v), I[170] = (img)(_p9##x,_p4##y,z,v), I[171] = (img)(_p8##x,_p4##y,z,v), I[172] = (img)(_p7##x,_p4##y,z,v), I[173] = (img)(_p6##x,_p4##y,z,v), I[174] = (img)(_p5##x,_p4##y,z,v), I[175] = (img)(_p4##x,_p4##y,z,v), I[176] = (img)(_p3##x,_p4##y,z,v), I[177] = (img)(_p2##x,_p4##y,z,v), I[178] = (img)(_p1##x,_p4##y,z,v), I[179] = (img)(x,_p4##y,z,v), I[180] = (img)(_n1##x,_p4##y,z,v), I[181] = (img)(_n2##x,_p4##y,z,v), I[182] = (img)(_n3##x,_p4##y,z,v), I[183] = (img)(_n4##x,_p4##y,z,v), I[184] = (img)(_n5##x,_p4##y,z,v), I[185] = (img)(_n6##x,_p4##y,z,v), I[186] = (img)(_n7##x,_p4##y,z,v), I[187] = (img)(_n8##x,_p4##y,z,v), I[188] = (img)(_n9##x,_p4##y,z,v), I[189] = (img)(_n10##x,_p4##y,z,v), I[190] = (img)(_n11##x,_p4##y,z,v), I[191] = (img)(_n12##x,_p4##y,z,v), \ 307.9578 + I[192] = (img)(_p11##x,_p3##y,z,v), I[193] = (img)(_p10##x,_p3##y,z,v), I[194] = (img)(_p9##x,_p3##y,z,v), I[195] = (img)(_p8##x,_p3##y,z,v), I[196] = (img)(_p7##x,_p3##y,z,v), I[197] = (img)(_p6##x,_p3##y,z,v), I[198] = (img)(_p5##x,_p3##y,z,v), I[199] = (img)(_p4##x,_p3##y,z,v), I[200] = (img)(_p3##x,_p3##y,z,v), I[201] = (img)(_p2##x,_p3##y,z,v), I[202] = (img)(_p1##x,_p3##y,z,v), I[203] = (img)(x,_p3##y,z,v), I[204] = (img)(_n1##x,_p3##y,z,v), I[205] = (img)(_n2##x,_p3##y,z,v), I[206] = (img)(_n3##x,_p3##y,z,v), I[207] = (img)(_n4##x,_p3##y,z,v), I[208] = (img)(_n5##x,_p3##y,z,v), I[209] = (img)(_n6##x,_p3##y,z,v), I[210] = (img)(_n7##x,_p3##y,z,v), I[211] = (img)(_n8##x,_p3##y,z,v), I[212] = (img)(_n9##x,_p3##y,z,v), I[213] = (img)(_n10##x,_p3##y,z,v), I[214] = (img)(_n11##x,_p3##y,z,v), I[215] = (img)(_n12##x,_p3##y,z,v), \ 307.9579 + I[216] = (img)(_p11##x,_p2##y,z,v), I[217] = (img)(_p10##x,_p2##y,z,v), I[218] = (img)(_p9##x,_p2##y,z,v), I[219] = (img)(_p8##x,_p2##y,z,v), I[220] = (img)(_p7##x,_p2##y,z,v), I[221] = (img)(_p6##x,_p2##y,z,v), I[222] = (img)(_p5##x,_p2##y,z,v), I[223] = (img)(_p4##x,_p2##y,z,v), I[224] = (img)(_p3##x,_p2##y,z,v), I[225] = (img)(_p2##x,_p2##y,z,v), I[226] = (img)(_p1##x,_p2##y,z,v), I[227] = (img)(x,_p2##y,z,v), I[228] = (img)(_n1##x,_p2##y,z,v), I[229] = (img)(_n2##x,_p2##y,z,v), I[230] = (img)(_n3##x,_p2##y,z,v), I[231] = (img)(_n4##x,_p2##y,z,v), I[232] = (img)(_n5##x,_p2##y,z,v), I[233] = (img)(_n6##x,_p2##y,z,v), I[234] = (img)(_n7##x,_p2##y,z,v), I[235] = (img)(_n8##x,_p2##y,z,v), I[236] = (img)(_n9##x,_p2##y,z,v), I[237] = (img)(_n10##x,_p2##y,z,v), I[238] = (img)(_n11##x,_p2##y,z,v), I[239] = (img)(_n12##x,_p2##y,z,v), \ 307.9580 + I[240] = (img)(_p11##x,_p1##y,z,v), I[241] = (img)(_p10##x,_p1##y,z,v), I[242] = (img)(_p9##x,_p1##y,z,v), I[243] = (img)(_p8##x,_p1##y,z,v), I[244] = (img)(_p7##x,_p1##y,z,v), I[245] = (img)(_p6##x,_p1##y,z,v), I[246] = (img)(_p5##x,_p1##y,z,v), I[247] = (img)(_p4##x,_p1##y,z,v), I[248] = (img)(_p3##x,_p1##y,z,v), I[249] = (img)(_p2##x,_p1##y,z,v), I[250] = (img)(_p1##x,_p1##y,z,v), I[251] = (img)(x,_p1##y,z,v), I[252] = (img)(_n1##x,_p1##y,z,v), I[253] = (img)(_n2##x,_p1##y,z,v), I[254] = (img)(_n3##x,_p1##y,z,v), I[255] = (img)(_n4##x,_p1##y,z,v), I[256] = (img)(_n5##x,_p1##y,z,v), I[257] = (img)(_n6##x,_p1##y,z,v), I[258] = (img)(_n7##x,_p1##y,z,v), I[259] = (img)(_n8##x,_p1##y,z,v), I[260] = (img)(_n9##x,_p1##y,z,v), I[261] = (img)(_n10##x,_p1##y,z,v), I[262] = (img)(_n11##x,_p1##y,z,v), I[263] = (img)(_n12##x,_p1##y,z,v), \ 307.9581 + I[264] = (img)(_p11##x,y,z,v), I[265] = (img)(_p10##x,y,z,v), I[266] = (img)(_p9##x,y,z,v), I[267] = (img)(_p8##x,y,z,v), I[268] = (img)(_p7##x,y,z,v), I[269] = (img)(_p6##x,y,z,v), I[270] = (img)(_p5##x,y,z,v), I[271] = (img)(_p4##x,y,z,v), I[272] = (img)(_p3##x,y,z,v), I[273] = (img)(_p2##x,y,z,v), I[274] = (img)(_p1##x,y,z,v), I[275] = (img)(x,y,z,v), I[276] = (img)(_n1##x,y,z,v), I[277] = (img)(_n2##x,y,z,v), I[278] = (img)(_n3##x,y,z,v), I[279] = (img)(_n4##x,y,z,v), I[280] = (img)(_n5##x,y,z,v), I[281] = (img)(_n6##x,y,z,v), I[282] = (img)(_n7##x,y,z,v), I[283] = (img)(_n8##x,y,z,v), I[284] = (img)(_n9##x,y,z,v), I[285] = (img)(_n10##x,y,z,v), I[286] = (img)(_n11##x,y,z,v), I[287] = (img)(_n12##x,y,z,v), \ 307.9582 + I[288] = (img)(_p11##x,_n1##y,z,v), I[289] = (img)(_p10##x,_n1##y,z,v), I[290] = (img)(_p9##x,_n1##y,z,v), I[291] = (img)(_p8##x,_n1##y,z,v), I[292] = (img)(_p7##x,_n1##y,z,v), I[293] = (img)(_p6##x,_n1##y,z,v), I[294] = (img)(_p5##x,_n1##y,z,v), I[295] = (img)(_p4##x,_n1##y,z,v), I[296] = (img)(_p3##x,_n1##y,z,v), I[297] = (img)(_p2##x,_n1##y,z,v), I[298] = (img)(_p1##x,_n1##y,z,v), I[299] = (img)(x,_n1##y,z,v), I[300] = (img)(_n1##x,_n1##y,z,v), I[301] = (img)(_n2##x,_n1##y,z,v), I[302] = (img)(_n3##x,_n1##y,z,v), I[303] = (img)(_n4##x,_n1##y,z,v), I[304] = (img)(_n5##x,_n1##y,z,v), I[305] = (img)(_n6##x,_n1##y,z,v), I[306] = (img)(_n7##x,_n1##y,z,v), I[307] = (img)(_n8##x,_n1##y,z,v), I[308] = (img)(_n9##x,_n1##y,z,v), I[309] = (img)(_n10##x,_n1##y,z,v), I[310] = (img)(_n11##x,_n1##y,z,v), I[311] = (img)(_n12##x,_n1##y,z,v), \ 307.9583 + I[312] = (img)(_p11##x,_n2##y,z,v), I[313] = (img)(_p10##x,_n2##y,z,v), I[314] = (img)(_p9##x,_n2##y,z,v), I[315] = (img)(_p8##x,_n2##y,z,v), I[316] = (img)(_p7##x,_n2##y,z,v), I[317] = (img)(_p6##x,_n2##y,z,v), I[318] = (img)(_p5##x,_n2##y,z,v), I[319] = (img)(_p4##x,_n2##y,z,v), I[320] = (img)(_p3##x,_n2##y,z,v), I[321] = (img)(_p2##x,_n2##y,z,v), I[322] = (img)(_p1##x,_n2##y,z,v), I[323] = (img)(x,_n2##y,z,v), I[324] = (img)(_n1##x,_n2##y,z,v), I[325] = (img)(_n2##x,_n2##y,z,v), I[326] = (img)(_n3##x,_n2##y,z,v), I[327] = (img)(_n4##x,_n2##y,z,v), I[328] = (img)(_n5##x,_n2##y,z,v), I[329] = (img)(_n6##x,_n2##y,z,v), I[330] = (img)(_n7##x,_n2##y,z,v), I[331] = (img)(_n8##x,_n2##y,z,v), I[332] = (img)(_n9##x,_n2##y,z,v), I[333] = (img)(_n10##x,_n2##y,z,v), I[334] = (img)(_n11##x,_n2##y,z,v), I[335] = (img)(_n12##x,_n2##y,z,v), \ 307.9584 + I[336] = (img)(_p11##x,_n3##y,z,v), I[337] = (img)(_p10##x,_n3##y,z,v), I[338] = (img)(_p9##x,_n3##y,z,v), I[339] = (img)(_p8##x,_n3##y,z,v), I[340] = (img)(_p7##x,_n3##y,z,v), I[341] = (img)(_p6##x,_n3##y,z,v), I[342] = (img)(_p5##x,_n3##y,z,v), I[343] = (img)(_p4##x,_n3##y,z,v), I[344] = (img)(_p3##x,_n3##y,z,v), I[345] = (img)(_p2##x,_n3##y,z,v), I[346] = (img)(_p1##x,_n3##y,z,v), I[347] = (img)(x,_n3##y,z,v), I[348] = (img)(_n1##x,_n3##y,z,v), I[349] = (img)(_n2##x,_n3##y,z,v), I[350] = (img)(_n3##x,_n3##y,z,v), I[351] = (img)(_n4##x,_n3##y,z,v), I[352] = (img)(_n5##x,_n3##y,z,v), I[353] = (img)(_n6##x,_n3##y,z,v), I[354] = (img)(_n7##x,_n3##y,z,v), I[355] = (img)(_n8##x,_n3##y,z,v), I[356] = (img)(_n9##x,_n3##y,z,v), I[357] = (img)(_n10##x,_n3##y,z,v), I[358] = (img)(_n11##x,_n3##y,z,v), I[359] = (img)(_n12##x,_n3##y,z,v), \ 307.9585 + I[360] = (img)(_p11##x,_n4##y,z,v), I[361] = (img)(_p10##x,_n4##y,z,v), I[362] = (img)(_p9##x,_n4##y,z,v), I[363] = (img)(_p8##x,_n4##y,z,v), I[364] = (img)(_p7##x,_n4##y,z,v), I[365] = (img)(_p6##x,_n4##y,z,v), I[366] = (img)(_p5##x,_n4##y,z,v), I[367] = (img)(_p4##x,_n4##y,z,v), I[368] = (img)(_p3##x,_n4##y,z,v), I[369] = (img)(_p2##x,_n4##y,z,v), I[370] = (img)(_p1##x,_n4##y,z,v), I[371] = (img)(x,_n4##y,z,v), I[372] = (img)(_n1##x,_n4##y,z,v), I[373] = (img)(_n2##x,_n4##y,z,v), I[374] = (img)(_n3##x,_n4##y,z,v), I[375] = (img)(_n4##x,_n4##y,z,v), I[376] = (img)(_n5##x,_n4##y,z,v), I[377] = (img)(_n6##x,_n4##y,z,v), I[378] = (img)(_n7##x,_n4##y,z,v), I[379] = (img)(_n8##x,_n4##y,z,v), I[380] = (img)(_n9##x,_n4##y,z,v), I[381] = (img)(_n10##x,_n4##y,z,v), I[382] = (img)(_n11##x,_n4##y,z,v), I[383] = (img)(_n12##x,_n4##y,z,v), \ 307.9586 + I[384] = (img)(_p11##x,_n5##y,z,v), I[385] = (img)(_p10##x,_n5##y,z,v), I[386] = (img)(_p9##x,_n5##y,z,v), I[387] = (img)(_p8##x,_n5##y,z,v), I[388] = (img)(_p7##x,_n5##y,z,v), I[389] = (img)(_p6##x,_n5##y,z,v), I[390] = (img)(_p5##x,_n5##y,z,v), I[391] = (img)(_p4##x,_n5##y,z,v), I[392] = (img)(_p3##x,_n5##y,z,v), I[393] = (img)(_p2##x,_n5##y,z,v), I[394] = (img)(_p1##x,_n5##y,z,v), I[395] = (img)(x,_n5##y,z,v), I[396] = (img)(_n1##x,_n5##y,z,v), I[397] = (img)(_n2##x,_n5##y,z,v), I[398] = (img)(_n3##x,_n5##y,z,v), I[399] = (img)(_n4##x,_n5##y,z,v), I[400] = (img)(_n5##x,_n5##y,z,v), I[401] = (img)(_n6##x,_n5##y,z,v), I[402] = (img)(_n7##x,_n5##y,z,v), I[403] = (img)(_n8##x,_n5##y,z,v), I[404] = (img)(_n9##x,_n5##y,z,v), I[405] = (img)(_n10##x,_n5##y,z,v), I[406] = (img)(_n11##x,_n5##y,z,v), I[407] = (img)(_n12##x,_n5##y,z,v), \ 307.9587 + I[408] = (img)(_p11##x,_n6##y,z,v), I[409] = (img)(_p10##x,_n6##y,z,v), I[410] = (img)(_p9##x,_n6##y,z,v), I[411] = (img)(_p8##x,_n6##y,z,v), I[412] = (img)(_p7##x,_n6##y,z,v), I[413] = (img)(_p6##x,_n6##y,z,v), I[414] = (img)(_p5##x,_n6##y,z,v), I[415] = (img)(_p4##x,_n6##y,z,v), I[416] = (img)(_p3##x,_n6##y,z,v), I[417] = (img)(_p2##x,_n6##y,z,v), I[418] = (img)(_p1##x,_n6##y,z,v), I[419] = (img)(x,_n6##y,z,v), I[420] = (img)(_n1##x,_n6##y,z,v), I[421] = (img)(_n2##x,_n6##y,z,v), I[422] = (img)(_n3##x,_n6##y,z,v), I[423] = (img)(_n4##x,_n6##y,z,v), I[424] = (img)(_n5##x,_n6##y,z,v), I[425] = (img)(_n6##x,_n6##y,z,v), I[426] = (img)(_n7##x,_n6##y,z,v), I[427] = (img)(_n8##x,_n6##y,z,v), I[428] = (img)(_n9##x,_n6##y,z,v), I[429] = (img)(_n10##x,_n6##y,z,v), I[430] = (img)(_n11##x,_n6##y,z,v), I[431] = (img)(_n12##x,_n6##y,z,v), \ 307.9588 + I[432] = (img)(_p11##x,_n7##y,z,v), I[433] = (img)(_p10##x,_n7##y,z,v), I[434] = (img)(_p9##x,_n7##y,z,v), I[435] = (img)(_p8##x,_n7##y,z,v), I[436] = (img)(_p7##x,_n7##y,z,v), I[437] = (img)(_p6##x,_n7##y,z,v), I[438] = (img)(_p5##x,_n7##y,z,v), I[439] = (img)(_p4##x,_n7##y,z,v), I[440] = (img)(_p3##x,_n7##y,z,v), I[441] = (img)(_p2##x,_n7##y,z,v), I[442] = (img)(_p1##x,_n7##y,z,v), I[443] = (img)(x,_n7##y,z,v), I[444] = (img)(_n1##x,_n7##y,z,v), I[445] = (img)(_n2##x,_n7##y,z,v), I[446] = (img)(_n3##x,_n7##y,z,v), I[447] = (img)(_n4##x,_n7##y,z,v), I[448] = (img)(_n5##x,_n7##y,z,v), I[449] = (img)(_n6##x,_n7##y,z,v), I[450] = (img)(_n7##x,_n7##y,z,v), I[451] = (img)(_n8##x,_n7##y,z,v), I[452] = (img)(_n9##x,_n7##y,z,v), I[453] = (img)(_n10##x,_n7##y,z,v), I[454] = (img)(_n11##x,_n7##y,z,v), I[455] = (img)(_n12##x,_n7##y,z,v), \ 307.9589 + I[456] = (img)(_p11##x,_n8##y,z,v), I[457] = (img)(_p10##x,_n8##y,z,v), I[458] = (img)(_p9##x,_n8##y,z,v), I[459] = (img)(_p8##x,_n8##y,z,v), I[460] = (img)(_p7##x,_n8##y,z,v), I[461] = (img)(_p6##x,_n8##y,z,v), I[462] = (img)(_p5##x,_n8##y,z,v), I[463] = (img)(_p4##x,_n8##y,z,v), I[464] = (img)(_p3##x,_n8##y,z,v), I[465] = (img)(_p2##x,_n8##y,z,v), I[466] = (img)(_p1##x,_n8##y,z,v), I[467] = (img)(x,_n8##y,z,v), I[468] = (img)(_n1##x,_n8##y,z,v), I[469] = (img)(_n2##x,_n8##y,z,v), I[470] = (img)(_n3##x,_n8##y,z,v), I[471] = (img)(_n4##x,_n8##y,z,v), I[472] = (img)(_n5##x,_n8##y,z,v), I[473] = (img)(_n6##x,_n8##y,z,v), I[474] = (img)(_n7##x,_n8##y,z,v), I[475] = (img)(_n8##x,_n8##y,z,v), I[476] = (img)(_n9##x,_n8##y,z,v), I[477] = (img)(_n10##x,_n8##y,z,v), I[478] = (img)(_n11##x,_n8##y,z,v), I[479] = (img)(_n12##x,_n8##y,z,v), \ 307.9590 + I[480] = (img)(_p11##x,_n9##y,z,v), I[481] = (img)(_p10##x,_n9##y,z,v), I[482] = (img)(_p9##x,_n9##y,z,v), I[483] = (img)(_p8##x,_n9##y,z,v), I[484] = (img)(_p7##x,_n9##y,z,v), I[485] = (img)(_p6##x,_n9##y,z,v), I[486] = (img)(_p5##x,_n9##y,z,v), I[487] = (img)(_p4##x,_n9##y,z,v), I[488] = (img)(_p3##x,_n9##y,z,v), I[489] = (img)(_p2##x,_n9##y,z,v), I[490] = (img)(_p1##x,_n9##y,z,v), I[491] = (img)(x,_n9##y,z,v), I[492] = (img)(_n1##x,_n9##y,z,v), I[493] = (img)(_n2##x,_n9##y,z,v), I[494] = (img)(_n3##x,_n9##y,z,v), I[495] = (img)(_n4##x,_n9##y,z,v), I[496] = (img)(_n5##x,_n9##y,z,v), I[497] = (img)(_n6##x,_n9##y,z,v), I[498] = (img)(_n7##x,_n9##y,z,v), I[499] = (img)(_n8##x,_n9##y,z,v), I[500] = (img)(_n9##x,_n9##y,z,v), I[501] = (img)(_n10##x,_n9##y,z,v), I[502] = (img)(_n11##x,_n9##y,z,v), I[503] = (img)(_n12##x,_n9##y,z,v), \ 307.9591 + I[504] = (img)(_p11##x,_n10##y,z,v), I[505] = (img)(_p10##x,_n10##y,z,v), I[506] = (img)(_p9##x,_n10##y,z,v), I[507] = (img)(_p8##x,_n10##y,z,v), I[508] = (img)(_p7##x,_n10##y,z,v), I[509] = (img)(_p6##x,_n10##y,z,v), I[510] = (img)(_p5##x,_n10##y,z,v), I[511] = (img)(_p4##x,_n10##y,z,v), I[512] = (img)(_p3##x,_n10##y,z,v), I[513] = (img)(_p2##x,_n10##y,z,v), I[514] = (img)(_p1##x,_n10##y,z,v), I[515] = (img)(x,_n10##y,z,v), I[516] = (img)(_n1##x,_n10##y,z,v), I[517] = (img)(_n2##x,_n10##y,z,v), I[518] = (img)(_n3##x,_n10##y,z,v), I[519] = (img)(_n4##x,_n10##y,z,v), I[520] = (img)(_n5##x,_n10##y,z,v), I[521] = (img)(_n6##x,_n10##y,z,v), I[522] = (img)(_n7##x,_n10##y,z,v), I[523] = (img)(_n8##x,_n10##y,z,v), I[524] = (img)(_n9##x,_n10##y,z,v), I[525] = (img)(_n10##x,_n10##y,z,v), I[526] = (img)(_n11##x,_n10##y,z,v), I[527] = (img)(_n12##x,_n10##y,z,v), \ 307.9592 + I[528] = (img)(_p11##x,_n11##y,z,v), I[529] = (img)(_p10##x,_n11##y,z,v), I[530] = (img)(_p9##x,_n11##y,z,v), I[531] = (img)(_p8##x,_n11##y,z,v), I[532] = (img)(_p7##x,_n11##y,z,v), I[533] = (img)(_p6##x,_n11##y,z,v), I[534] = (img)(_p5##x,_n11##y,z,v), I[535] = (img)(_p4##x,_n11##y,z,v), I[536] = (img)(_p3##x,_n11##y,z,v), I[537] = (img)(_p2##x,_n11##y,z,v), I[538] = (img)(_p1##x,_n11##y,z,v), I[539] = (img)(x,_n11##y,z,v), I[540] = (img)(_n1##x,_n11##y,z,v), I[541] = (img)(_n2##x,_n11##y,z,v), I[542] = (img)(_n3##x,_n11##y,z,v), I[543] = (img)(_n4##x,_n11##y,z,v), I[544] = (img)(_n5##x,_n11##y,z,v), I[545] = (img)(_n6##x,_n11##y,z,v), I[546] = (img)(_n7##x,_n11##y,z,v), I[547] = (img)(_n8##x,_n11##y,z,v), I[548] = (img)(_n9##x,_n11##y,z,v), I[549] = (img)(_n10##x,_n11##y,z,v), I[550] = (img)(_n11##x,_n11##y,z,v), I[551] = (img)(_n12##x,_n11##y,z,v), \ 307.9593 + I[552] = (img)(_p11##x,_n12##y,z,v), I[553] = (img)(_p10##x,_n12##y,z,v), I[554] = (img)(_p9##x,_n12##y,z,v), I[555] = (img)(_p8##x,_n12##y,z,v), I[556] = (img)(_p7##x,_n12##y,z,v), I[557] = (img)(_p6##x,_n12##y,z,v), I[558] = (img)(_p5##x,_n12##y,z,v), I[559] = (img)(_p4##x,_n12##y,z,v), I[560] = (img)(_p3##x,_n12##y,z,v), I[561] = (img)(_p2##x,_n12##y,z,v), I[562] = (img)(_p1##x,_n12##y,z,v), I[563] = (img)(x,_n12##y,z,v), I[564] = (img)(_n1##x,_n12##y,z,v), I[565] = (img)(_n2##x,_n12##y,z,v), I[566] = (img)(_n3##x,_n12##y,z,v), I[567] = (img)(_n4##x,_n12##y,z,v), I[568] = (img)(_n5##x,_n12##y,z,v), I[569] = (img)(_n6##x,_n12##y,z,v), I[570] = (img)(_n7##x,_n12##y,z,v), I[571] = (img)(_n8##x,_n12##y,z,v), I[572] = (img)(_n9##x,_n12##y,z,v), I[573] = (img)(_n10##x,_n12##y,z,v), I[574] = (img)(_n11##x,_n12##y,z,v), I[575] = (img)(_n12##x,_n12##y,z,v); 307.9594 + 307.9595 +// Define 4x4x4 loop macros for CImg 307.9596 +//------------------------------------- 307.9597 +#define cimg_for_in4(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.9598 + _p1##i = i-1<0?0:i-1, \ 307.9599 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.9600 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2; \ 307.9601 + i<=(int)(i1) && (_n2##i<(int)(bound) || _n1##i==--_n2##i || \ 307.9602 + i==(_n2##i = --_n1##i)); \ 307.9603 + _p1##i = i++, \ 307.9604 + ++_n1##i, ++_n2##i) 307.9605 + 307.9606 +#define cimg_for_in4X(img,x0,x1,x) cimg_for_in4((img).width,x0,x1,x) 307.9607 +#define cimg_for_in4Y(img,y0,y1,y) cimg_for_in4((img).height,y0,y1,y) 307.9608 +#define cimg_for_in4Z(img,z0,z1,z) cimg_for_in4((img).depth,z0,z1,z) 307.9609 +#define cimg_for_in4V(img,v0,v1,v) cimg_for_in4((img).dim,v0,v1,v) 307.9610 +#define cimg_for_in4XY(img,x0,y0,x1,y1,x,y) cimg_for_in4Y(img,y0,y1,y) cimg_for_in4X(img,x0,x1,x) 307.9611 +#define cimg_for_in4XZ(img,x0,z0,x1,z1,x,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4X(img,x0,x1,x) 307.9612 +#define cimg_for_in4XV(img,x0,v0,x1,v1,x,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4X(img,x0,x1,x) 307.9613 +#define cimg_for_in4YZ(img,y0,z0,y1,z1,y,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4Y(img,y0,y1,y) 307.9614 +#define cimg_for_in4YV(img,y0,v0,y1,v1,y,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4Y(img,y0,y1,y) 307.9615 +#define cimg_for_in4ZV(img,z0,v0,z1,v1,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4Z(img,z0,z1,z) 307.9616 +#define cimg_for_in4XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in4Z(img,z0,z1,z) cimg_for_in4XY(img,x0,y0,x1,y1,x,y) 307.9617 +#define cimg_for_in4XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4XZ(img,x0,y0,x1,y1,x,z) 307.9618 +#define cimg_for_in4YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4YZ(img,y0,z0,y1,z1,y,z) 307.9619 +#define cimg_for_in4XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in4V(img,v0,v1,v) cimg_for_in4XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.9620 + 307.9621 +#define cimg_for4x4x4(img,x,y,z,v,I) \ 307.9622 + cimg_for4((img).depth,z) cimg_for4((img).height,y) for (int x = 0, \ 307.9623 + _p1##x = 0, \ 307.9624 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.9625 + _n2##x = (int)( \ 307.9626 + (I[0] = I[1] = (img)(0,_p1##y,_p1##z,v)), \ 307.9627 + (I[4] = I[5] = (img)(0,y,_p1##z,v)), \ 307.9628 + (I[8] = I[9] = (img)(0,_n1##y,_p1##z,v)), \ 307.9629 + (I[12] = I[13] = (img)(0,_n2##y,_p1##z,v)), \ 307.9630 + (I[16] = I[17] = (img)(0,_p1##y,z,v)), \ 307.9631 + (I[20] = I[21] = (img)(0,y,z,v)), \ 307.9632 + (I[24] = I[25] = (img)(0,_n1##y,z,v)), \ 307.9633 + (I[28] = I[29] = (img)(0,_n2##y,z,v)), \ 307.9634 + (I[32] = I[33] = (img)(0,_p1##y,_n1##z,v)), \ 307.9635 + (I[36] = I[37] = (img)(0,y,_n1##z,v)), \ 307.9636 + (I[40] = I[41] = (img)(0,_n1##y,_n1##z,v)), \ 307.9637 + (I[44] = I[45] = (img)(0,_n2##y,_n1##z,v)), \ 307.9638 + (I[48] = I[49] = (img)(0,_p1##y,_n2##z,v)), \ 307.9639 + (I[52] = I[53] = (img)(0,y,_n2##z,v)), \ 307.9640 + (I[56] = I[57] = (img)(0,_n1##y,_n2##z,v)), \ 307.9641 + (I[60] = I[61] = (img)(0,_n2##y,_n2##z,v)), \ 307.9642 + (I[2] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.9643 + (I[6] = (img)(_n1##x,y,_p1##z,v)), \ 307.9644 + (I[10] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.9645 + (I[14] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.9646 + (I[18] = (img)(_n1##x,_p1##y,z,v)), \ 307.9647 + (I[22] = (img)(_n1##x,y,z,v)), \ 307.9648 + (I[26] = (img)(_n1##x,_n1##y,z,v)), \ 307.9649 + (I[30] = (img)(_n1##x,_n2##y,z,v)), \ 307.9650 + (I[34] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.9651 + (I[38] = (img)(_n1##x,y,_n1##z,v)), \ 307.9652 + (I[42] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.9653 + (I[46] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.9654 + (I[50] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.9655 + (I[54] = (img)(_n1##x,y,_n2##z,v)), \ 307.9656 + (I[58] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.9657 + (I[62] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.9658 + 2>=((img).width)?(int)((img).width)-1:2); \ 307.9659 + (_n2##x<(int)((img).width) && ( \ 307.9660 + (I[3] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.9661 + (I[7] = (img)(_n2##x,y,_p1##z,v)), \ 307.9662 + (I[11] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.9663 + (I[15] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.9664 + (I[19] = (img)(_n2##x,_p1##y,z,v)), \ 307.9665 + (I[23] = (img)(_n2##x,y,z,v)), \ 307.9666 + (I[27] = (img)(_n2##x,_n1##y,z,v)), \ 307.9667 + (I[31] = (img)(_n2##x,_n2##y,z,v)), \ 307.9668 + (I[35] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.9669 + (I[39] = (img)(_n2##x,y,_n1##z,v)), \ 307.9670 + (I[43] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.9671 + (I[47] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.9672 + (I[51] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.9673 + (I[55] = (img)(_n2##x,y,_n2##z,v)), \ 307.9674 + (I[59] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.9675 + (I[63] = (img)(_n2##x,_n2##y,_n2##z,v)),1)) || \ 307.9676 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x); \ 307.9677 + I[0] = I[1], I[1] = I[2], I[2] = I[3], \ 307.9678 + I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 307.9679 + I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.9680 + I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.9681 + I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.9682 + I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.9683 + I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.9684 + I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.9685 + I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.9686 + I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.9687 + I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.9688 + I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.9689 + I[48] = I[49], I[49] = I[50], I[50] = I[51], \ 307.9690 + I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.9691 + I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.9692 + I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.9693 + _p1##x = x++, ++_n1##x, ++_n2##x) 307.9694 + 307.9695 +#define cimg_for_in4x4x4(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 307.9696 + cimg_for_in4((img).depth,z0,z1,z) cimg_for_in4((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.9697 + _p1##x = x-1<0?0:x-1, \ 307.9698 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.9699 + _n2##x = (int)( \ 307.9700 + (I[0] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 307.9701 + (I[4] = (img)(_p1##x,y,_p1##z,v)), \ 307.9702 + (I[8] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 307.9703 + (I[12] = (img)(_p1##x,_n2##y,_p1##z,v)), \ 307.9704 + (I[16] = (img)(_p1##x,_p1##y,z,v)), \ 307.9705 + (I[20] = (img)(_p1##x,y,z,v)), \ 307.9706 + (I[24] = (img)(_p1##x,_n1##y,z,v)), \ 307.9707 + (I[28] = (img)(_p1##x,_n2##y,z,v)), \ 307.9708 + (I[32] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 307.9709 + (I[36] = (img)(_p1##x,y,_n1##z,v)), \ 307.9710 + (I[40] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 307.9711 + (I[44] = (img)(_p1##x,_n2##y,_n1##z,v)), \ 307.9712 + (I[48] = (img)(_p1##x,_p1##y,_n2##z,v)), \ 307.9713 + (I[52] = (img)(_p1##x,y,_n2##z,v)), \ 307.9714 + (I[56] = (img)(_p1##x,_n1##y,_n2##z,v)), \ 307.9715 + (I[60] = (img)(_p1##x,_n2##y,_n2##z,v)), \ 307.9716 + (I[1] = (img)(x,_p1##y,_p1##z,v)), \ 307.9717 + (I[5] = (img)(x,y,_p1##z,v)), \ 307.9718 + (I[9] = (img)(x,_n1##y,_p1##z,v)), \ 307.9719 + (I[13] = (img)(x,_n2##y,_p1##z,v)), \ 307.9720 + (I[17] = (img)(x,_p1##y,z,v)), \ 307.9721 + (I[21] = (img)(x,y,z,v)), \ 307.9722 + (I[25] = (img)(x,_n1##y,z,v)), \ 307.9723 + (I[29] = (img)(x,_n2##y,z,v)), \ 307.9724 + (I[33] = (img)(x,_p1##y,_n1##z,v)), \ 307.9725 + (I[37] = (img)(x,y,_n1##z,v)), \ 307.9726 + (I[41] = (img)(x,_n1##y,_n1##z,v)), \ 307.9727 + (I[45] = (img)(x,_n2##y,_n1##z,v)), \ 307.9728 + (I[49] = (img)(x,_p1##y,_n2##z,v)), \ 307.9729 + (I[53] = (img)(x,y,_n2##z,v)), \ 307.9730 + (I[57] = (img)(x,_n1##y,_n2##z,v)), \ 307.9731 + (I[61] = (img)(x,_n2##y,_n2##z,v)), \ 307.9732 + (I[2] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.9733 + (I[6] = (img)(_n1##x,y,_p1##z,v)), \ 307.9734 + (I[10] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.9735 + (I[14] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.9736 + (I[18] = (img)(_n1##x,_p1##y,z,v)), \ 307.9737 + (I[22] = (img)(_n1##x,y,z,v)), \ 307.9738 + (I[26] = (img)(_n1##x,_n1##y,z,v)), \ 307.9739 + (I[30] = (img)(_n1##x,_n2##y,z,v)), \ 307.9740 + (I[34] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.9741 + (I[38] = (img)(_n1##x,y,_n1##z,v)), \ 307.9742 + (I[42] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.9743 + (I[46] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.9744 + (I[50] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.9745 + (I[54] = (img)(_n1##x,y,_n2##z,v)), \ 307.9746 + (I[58] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.9747 + (I[62] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.9748 + x+2>=(int)((img).width)?(int)((img).width)-1:x+2); \ 307.9749 + x<=(int)(x1) && ((_n2##x<(int)((img).width) && ( \ 307.9750 + (I[3] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.9751 + (I[7] = (img)(_n2##x,y,_p1##z,v)), \ 307.9752 + (I[11] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.9753 + (I[15] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.9754 + (I[19] = (img)(_n2##x,_p1##y,z,v)), \ 307.9755 + (I[23] = (img)(_n2##x,y,z,v)), \ 307.9756 + (I[27] = (img)(_n2##x,_n1##y,z,v)), \ 307.9757 + (I[31] = (img)(_n2##x,_n2##y,z,v)), \ 307.9758 + (I[35] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.9759 + (I[39] = (img)(_n2##x,y,_n1##z,v)), \ 307.9760 + (I[43] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.9761 + (I[47] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.9762 + (I[51] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.9763 + (I[55] = (img)(_n2##x,y,_n2##z,v)), \ 307.9764 + (I[59] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.9765 + (I[63] = (img)(_n2##x,_n2##y,_n2##z,v)),1)) || \ 307.9766 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x)); \ 307.9767 + I[0] = I[1], I[1] = I[2], I[2] = I[3], \ 307.9768 + I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 307.9769 + I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.9770 + I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.9771 + I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.9772 + I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.9773 + I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.9774 + I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.9775 + I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.9776 + I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.9777 + I[40] = I[41], I[41] = I[42], I[42] = I[43], \ 307.9778 + I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.9779 + I[48] = I[49], I[49] = I[50], I[50] = I[51], \ 307.9780 + I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.9781 + I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.9782 + I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.9783 + _p1##x = x++, ++_n1##x, ++_n2##x) 307.9784 + 307.9785 +#define cimg_get4x4x4(img,x,y,z,v,I) \ 307.9786 + I[0] = (img)(_p1##x,_p1##y,_p1##z,v), I[1] = (img)(x,_p1##y,_p1##z,v), I[2] = (img)(_n1##x,_p1##y,_p1##z,v), I[3] = (img)(_n2##x,_p1##y,_p1##z,v), \ 307.9787 + I[4] = (img)(_p1##x,y,_p1##z,v), I[5] = (img)(x,y,_p1##z,v), I[6] = (img)(_n1##x,y,_p1##z,v), I[7] = (img)(_n2##x,y,_p1##z,v), \ 307.9788 + I[8] = (img)(_p1##x,_n1##y,_p1##z,v), I[9] = (img)(x,_n1##y,_p1##z,v), I[10] = (img)(_n1##x,_n1##y,_p1##z,v), I[11] = (img)(_n2##x,_n1##y,_p1##z,v), \ 307.9789 + I[12] = (img)(_p1##x,_n2##y,_p1##z,v), I[13] = (img)(x,_n2##y,_p1##z,v), I[14] = (img)(_n1##x,_n2##y,_p1##z,v), I[15] = (img)(_n2##x,_n2##y,_p1##z,v), \ 307.9790 + I[16] = (img)(_p1##x,_p1##y,z,v), I[17] = (img)(x,_p1##y,z,v), I[18] = (img)(_n1##x,_p1##y,z,v), I[19] = (img)(_n2##x,_p1##y,z,v), \ 307.9791 + I[20] = (img)(_p1##x,y,z,v), I[21] = (img)(x,y,z,v), I[22] = (img)(_n1##x,y,z,v), I[23] = (img)(_n2##x,y,z,v), \ 307.9792 + I[24] = (img)(_p1##x,_n1##y,z,v), I[25] = (img)(x,_n1##y,z,v), I[26] = (img)(_n1##x,_n1##y,z,v), I[27] = (img)(_n2##x,_n1##y,z,v), \ 307.9793 + I[28] = (img)(_p1##x,_n2##y,z,v), I[29] = (img)(x,_n2##y,z,v), I[30] = (img)(_n1##x,_n2##y,z,v), I[31] = (img)(_n2##x,_n2##y,z,v), \ 307.9794 + I[32] = (img)(_p1##x,_p1##y,_n1##z,v), I[33] = (img)(x,_p1##y,_n1##z,v), I[34] = (img)(_n1##x,_p1##y,_n1##z,v), I[35] = (img)(_n2##x,_p1##y,_n1##z,v), \ 307.9795 + I[36] = (img)(_p1##x,y,_n1##z,v), I[37] = (img)(x,y,_n1##z,v), I[38] = (img)(_n1##x,y,_n1##z,v), I[39] = (img)(_n2##x,y,_n1##z,v), \ 307.9796 + I[40] = (img)(_p1##x,_n1##y,_n1##z,v), I[41] = (img)(x,_n1##y,_n1##z,v), I[42] = (img)(_n1##x,_n1##y,_n1##z,v), I[43] = (img)(_n2##x,_n1##y,_n1##z,v), \ 307.9797 + I[44] = (img)(_p1##x,_n2##y,_n1##z,v), I[45] = (img)(x,_n2##y,_n1##z,v), I[46] = (img)(_n1##x,_n2##y,_n1##z,v), I[47] = (img)(_n2##x,_n2##y,_n1##z,v), \ 307.9798 + I[48] = (img)(_p1##x,_p1##y,_n2##z,v), I[49] = (img)(x,_p1##y,_n2##z,v), I[50] = (img)(_n1##x,_p1##y,_n2##z,v), I[51] = (img)(_n2##x,_p1##y,_n2##z,v), \ 307.9799 + I[52] = (img)(_p1##x,y,_n2##z,v), I[53] = (img)(x,y,_n2##z,v), I[54] = (img)(_n1##x,y,_n2##z,v), I[55] = (img)(_n2##x,y,_n2##z,v), \ 307.9800 + I[56] = (img)(_p1##x,_n1##y,_n2##z,v), I[57] = (img)(x,_n1##y,_n2##z,v), I[58] = (img)(_n1##x,_n1##y,_n2##z,v), I[59] = (img)(_n2##x,_n1##y,_n2##z,v), \ 307.9801 + I[60] = (img)(_p1##x,_n2##y,_n2##z,v), I[61] = (img)(x,_n2##y,_n2##z,v), I[62] = (img)(_n1##x,_n2##y,_n2##z,v), I[63] = (img)(_n2##x,_n2##y,_n2##z,v); 307.9802 + 307.9803 +// Define 5x5x5 loop macros for CImg 307.9804 +//------------------------------------- 307.9805 +#define cimg_for_in5(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.9806 + _p2##i = i-2<0?0:i-2, \ 307.9807 + _p1##i = i-1<0?0:i-1, \ 307.9808 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.9809 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2; \ 307.9810 + i<=(int)(i1) && (_n2##i<(int)(bound) || _n1##i==--_n2##i || \ 307.9811 + i==(_n2##i = --_n1##i)); \ 307.9812 + _p2##i = _p1##i, _p1##i = i++, \ 307.9813 + ++_n1##i, ++_n2##i) 307.9814 + 307.9815 +#define cimg_for_in5X(img,x0,x1,x) cimg_for_in5((img).width,x0,x1,x) 307.9816 +#define cimg_for_in5Y(img,y0,y1,y) cimg_for_in5((img).height,y0,y1,y) 307.9817 +#define cimg_for_in5Z(img,z0,z1,z) cimg_for_in5((img).depth,z0,z1,z) 307.9818 +#define cimg_for_in5V(img,v0,v1,v) cimg_for_in5((img).dim,v0,v1,v) 307.9819 +#define cimg_for_in5XY(img,x0,y0,x1,y1,x,y) cimg_for_in5Y(img,y0,y1,y) cimg_for_in5X(img,x0,x1,x) 307.9820 +#define cimg_for_in5XZ(img,x0,z0,x1,z1,x,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5X(img,x0,x1,x) 307.9821 +#define cimg_for_in5XV(img,x0,v0,x1,v1,x,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5X(img,x0,x1,x) 307.9822 +#define cimg_for_in5YZ(img,y0,z0,y1,z1,y,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5Y(img,y0,y1,y) 307.9823 +#define cimg_for_in5YV(img,y0,v0,y1,v1,y,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5Y(img,y0,y1,y) 307.9824 +#define cimg_for_in5ZV(img,z0,v0,z1,v1,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5Z(img,z0,z1,z) 307.9825 +#define cimg_for_in5XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in5Z(img,z0,z1,z) cimg_for_in5XY(img,x0,y0,x1,y1,x,y) 307.9826 +#define cimg_for_in5XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5XZ(img,x0,y0,x1,y1,x,z) 307.9827 +#define cimg_for_in5YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5YZ(img,y0,z0,y1,z1,y,z) 307.9828 +#define cimg_for_in5XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in5V(img,v0,v1,v) cimg_for_in5XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.9829 + 307.9830 +#define cimg_for5x5x5(img,x,y,z,v,I) \ 307.9831 + cimg_for5((img).depth,z) cimg_for5((img).height,y) for (int x = 0, \ 307.9832 + _p2##x = 0, _p1##x = 0, \ 307.9833 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.9834 + _n2##x = (int)( \ 307.9835 + (I[0] = I[1] = I[2] = (img)(0,_p2##y,_p2##z,v)), \ 307.9836 + (I[5] = I[6] = I[7] = (img)(0,_p1##y,_p2##z,v)), \ 307.9837 + (I[10] = I[11] = I[12] = (img)(0,y,_p2##z,v)), \ 307.9838 + (I[15] = I[16] = I[17] = (img)(0,_n1##y,_p2##z,v)), \ 307.9839 + (I[20] = I[21] = I[22] = (img)(0,_n2##y,_p2##z,v)), \ 307.9840 + (I[25] = I[26] = I[27] = (img)(0,_p2##y,_p1##z,v)), \ 307.9841 + (I[30] = I[31] = I[32] = (img)(0,_p1##y,_p1##z,v)), \ 307.9842 + (I[35] = I[36] = I[37] = (img)(0,y,_p1##z,v)), \ 307.9843 + (I[40] = I[41] = I[42] = (img)(0,_n1##y,_p1##z,v)), \ 307.9844 + (I[45] = I[46] = I[47] = (img)(0,_n2##y,_p1##z,v)), \ 307.9845 + (I[50] = I[51] = I[52] = (img)(0,_p2##y,z,v)), \ 307.9846 + (I[55] = I[56] = I[57] = (img)(0,_p1##y,z,v)), \ 307.9847 + (I[60] = I[61] = I[62] = (img)(0,y,z,v)), \ 307.9848 + (I[65] = I[66] = I[67] = (img)(0,_n1##y,z,v)), \ 307.9849 + (I[70] = I[71] = I[72] = (img)(0,_n2##y,z,v)), \ 307.9850 + (I[75] = I[76] = I[77] = (img)(0,_p2##y,_n1##z,v)), \ 307.9851 + (I[80] = I[81] = I[82] = (img)(0,_p1##y,_n1##z,v)), \ 307.9852 + (I[85] = I[86] = I[87] = (img)(0,y,_n1##z,v)), \ 307.9853 + (I[90] = I[91] = I[92] = (img)(0,_n1##y,_n1##z,v)), \ 307.9854 + (I[95] = I[96] = I[97] = (img)(0,_n2##y,_n1##z,v)), \ 307.9855 + (I[100] = I[101] = I[102] = (img)(0,_p2##y,_n2##z,v)), \ 307.9856 + (I[105] = I[106] = I[107] = (img)(0,_p1##y,_n2##z,v)), \ 307.9857 + (I[110] = I[111] = I[112] = (img)(0,y,_n2##z,v)), \ 307.9858 + (I[115] = I[116] = I[117] = (img)(0,_n1##y,_n2##z,v)), \ 307.9859 + (I[120] = I[121] = I[122] = (img)(0,_n2##y,_n2##z,v)), \ 307.9860 + (I[3] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.9861 + (I[8] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.9862 + (I[13] = (img)(_n1##x,y,_p2##z,v)), \ 307.9863 + (I[18] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.9864 + (I[23] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.9865 + (I[28] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.9866 + (I[33] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.9867 + (I[38] = (img)(_n1##x,y,_p1##z,v)), \ 307.9868 + (I[43] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.9869 + (I[48] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.9870 + (I[53] = (img)(_n1##x,_p2##y,z,v)), \ 307.9871 + (I[58] = (img)(_n1##x,_p1##y,z,v)), \ 307.9872 + (I[63] = (img)(_n1##x,y,z,v)), \ 307.9873 + (I[68] = (img)(_n1##x,_n1##y,z,v)), \ 307.9874 + (I[73] = (img)(_n1##x,_n2##y,z,v)), \ 307.9875 + (I[78] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.9876 + (I[83] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.9877 + (I[88] = (img)(_n1##x,y,_n1##z,v)), \ 307.9878 + (I[93] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.9879 + (I[98] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.9880 + (I[103] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.9881 + (I[108] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.9882 + (I[113] = (img)(_n1##x,y,_n2##z,v)), \ 307.9883 + (I[118] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.9884 + (I[123] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.9885 + 2>=((img).width)?(int)((img).width)-1:2); \ 307.9886 + (_n2##x<(int)((img).width) && ( \ 307.9887 + (I[4] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.9888 + (I[9] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.9889 + (I[14] = (img)(_n2##x,y,_p2##z,v)), \ 307.9890 + (I[19] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.9891 + (I[24] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.9892 + (I[29] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.9893 + (I[34] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.9894 + (I[39] = (img)(_n2##x,y,_p1##z,v)), \ 307.9895 + (I[44] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.9896 + (I[49] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.9897 + (I[54] = (img)(_n2##x,_p2##y,z,v)), \ 307.9898 + (I[59] = (img)(_n2##x,_p1##y,z,v)), \ 307.9899 + (I[64] = (img)(_n2##x,y,z,v)), \ 307.9900 + (I[69] = (img)(_n2##x,_n1##y,z,v)), \ 307.9901 + (I[74] = (img)(_n2##x,_n2##y,z,v)), \ 307.9902 + (I[79] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.9903 + (I[84] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.9904 + (I[89] = (img)(_n2##x,y,_n1##z,v)), \ 307.9905 + (I[94] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.9906 + (I[99] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.9907 + (I[104] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.9908 + (I[109] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.9909 + (I[114] = (img)(_n2##x,y,_n2##z,v)), \ 307.9910 + (I[119] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.9911 + (I[124] = (img)(_n2##x,_n2##y,_n2##z,v)),1)) || \ 307.9912 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x); \ 307.9913 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], \ 307.9914 + I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 307.9915 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 307.9916 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.9917 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], \ 307.9918 + I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.9919 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 307.9920 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.9921 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 307.9922 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], \ 307.9923 + I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], \ 307.9924 + I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.9925 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], \ 307.9926 + I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.9927 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], \ 307.9928 + I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.9929 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], \ 307.9930 + I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.9931 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], \ 307.9932 + I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.9933 + I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.9934 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.9935 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], \ 307.9936 + I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.9937 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], \ 307.9938 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x) 307.9939 + 307.9940 +#define cimg_for_in5x5x5(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 307.9941 + cimg_for_in5((img).depth,z0,z1,z) cimg_for_in5((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.9942 + _p2##x = x-2<0?0:x-2, \ 307.9943 + _p1##x = x-1<0?0:x-1, \ 307.9944 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.9945 + _n2##x = (int)( \ 307.9946 + (I[0] = (img)(_p2##x,_p2##y,_p2##z,v)), \ 307.9947 + (I[5] = (img)(_p2##x,_p1##y,_p2##z,v)), \ 307.9948 + (I[10] = (img)(_p2##x,y,_p2##z,v)), \ 307.9949 + (I[15] = (img)(_p2##x,_n1##y,_p2##z,v)), \ 307.9950 + (I[20] = (img)(_p2##x,_n2##y,_p2##z,v)), \ 307.9951 + (I[25] = (img)(_p2##x,_p2##y,_p1##z,v)), \ 307.9952 + (I[30] = (img)(_p2##x,_p1##y,_p1##z,v)), \ 307.9953 + (I[35] = (img)(_p2##x,y,_p1##z,v)), \ 307.9954 + (I[40] = (img)(_p2##x,_n1##y,_p1##z,v)), \ 307.9955 + (I[45] = (img)(_p2##x,_n2##y,_p1##z,v)), \ 307.9956 + (I[50] = (img)(_p2##x,_p2##y,z,v)), \ 307.9957 + (I[55] = (img)(_p2##x,_p1##y,z,v)), \ 307.9958 + (I[60] = (img)(_p2##x,y,z,v)), \ 307.9959 + (I[65] = (img)(_p2##x,_n1##y,z,v)), \ 307.9960 + (I[70] = (img)(_p2##x,_n2##y,z,v)), \ 307.9961 + (I[75] = (img)(_p2##x,_p2##y,_n1##z,v)), \ 307.9962 + (I[80] = (img)(_p2##x,_p1##y,_n1##z,v)), \ 307.9963 + (I[85] = (img)(_p2##x,y,_n1##z,v)), \ 307.9964 + (I[90] = (img)(_p2##x,_n1##y,_n1##z,v)), \ 307.9965 + (I[95] = (img)(_p2##x,_n2##y,_n1##z,v)), \ 307.9966 + (I[100] = (img)(_p2##x,_p2##y,_n2##z,v)), \ 307.9967 + (I[105] = (img)(_p2##x,_p1##y,_n2##z,v)), \ 307.9968 + (I[110] = (img)(_p2##x,y,_n2##z,v)), \ 307.9969 + (I[115] = (img)(_p2##x,_n1##y,_n2##z,v)), \ 307.9970 + (I[120] = (img)(_p2##x,_n2##y,_n2##z,v)), \ 307.9971 + (I[1] = (img)(_p1##x,_p2##y,_p2##z,v)), \ 307.9972 + (I[6] = (img)(_p1##x,_p1##y,_p2##z,v)), \ 307.9973 + (I[11] = (img)(_p1##x,y,_p2##z,v)), \ 307.9974 + (I[16] = (img)(_p1##x,_n1##y,_p2##z,v)), \ 307.9975 + (I[21] = (img)(_p1##x,_n2##y,_p2##z,v)), \ 307.9976 + (I[26] = (img)(_p1##x,_p2##y,_p1##z,v)), \ 307.9977 + (I[31] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 307.9978 + (I[36] = (img)(_p1##x,y,_p1##z,v)), \ 307.9979 + (I[41] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 307.9980 + (I[46] = (img)(_p1##x,_n2##y,_p1##z,v)), \ 307.9981 + (I[51] = (img)(_p1##x,_p2##y,z,v)), \ 307.9982 + (I[56] = (img)(_p1##x,_p1##y,z,v)), \ 307.9983 + (I[61] = (img)(_p1##x,y,z,v)), \ 307.9984 + (I[66] = (img)(_p1##x,_n1##y,z,v)), \ 307.9985 + (I[71] = (img)(_p1##x,_n2##y,z,v)), \ 307.9986 + (I[76] = (img)(_p1##x,_p2##y,_n1##z,v)), \ 307.9987 + (I[81] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 307.9988 + (I[86] = (img)(_p1##x,y,_n1##z,v)), \ 307.9989 + (I[91] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 307.9990 + (I[96] = (img)(_p1##x,_n2##y,_n1##z,v)), \ 307.9991 + (I[101] = (img)(_p1##x,_p2##y,_n2##z,v)), \ 307.9992 + (I[106] = (img)(_p1##x,_p1##y,_n2##z,v)), \ 307.9993 + (I[111] = (img)(_p1##x,y,_n2##z,v)), \ 307.9994 + (I[116] = (img)(_p1##x,_n1##y,_n2##z,v)), \ 307.9995 + (I[121] = (img)(_p1##x,_n2##y,_n2##z,v)), \ 307.9996 + (I[2] = (img)(x,_p2##y,_p2##z,v)), \ 307.9997 + (I[7] = (img)(x,_p1##y,_p2##z,v)), \ 307.9998 + (I[12] = (img)(x,y,_p2##z,v)), \ 307.9999 + (I[17] = (img)(x,_n1##y,_p2##z,v)), \ 307.10000 + (I[22] = (img)(x,_n2##y,_p2##z,v)), \ 307.10001 + (I[27] = (img)(x,_p2##y,_p1##z,v)), \ 307.10002 + (I[32] = (img)(x,_p1##y,_p1##z,v)), \ 307.10003 + (I[37] = (img)(x,y,_p1##z,v)), \ 307.10004 + (I[42] = (img)(x,_n1##y,_p1##z,v)), \ 307.10005 + (I[47] = (img)(x,_n2##y,_p1##z,v)), \ 307.10006 + (I[52] = (img)(x,_p2##y,z,v)), \ 307.10007 + (I[57] = (img)(x,_p1##y,z,v)), \ 307.10008 + (I[62] = (img)(x,y,z,v)), \ 307.10009 + (I[67] = (img)(x,_n1##y,z,v)), \ 307.10010 + (I[72] = (img)(x,_n2##y,z,v)), \ 307.10011 + (I[77] = (img)(x,_p2##y,_n1##z,v)), \ 307.10012 + (I[82] = (img)(x,_p1##y,_n1##z,v)), \ 307.10013 + (I[87] = (img)(x,y,_n1##z,v)), \ 307.10014 + (I[92] = (img)(x,_n1##y,_n1##z,v)), \ 307.10015 + (I[97] = (img)(x,_n2##y,_n1##z,v)), \ 307.10016 + (I[102] = (img)(x,_p2##y,_n2##z,v)), \ 307.10017 + (I[107] = (img)(x,_p1##y,_n2##z,v)), \ 307.10018 + (I[112] = (img)(x,y,_n2##z,v)), \ 307.10019 + (I[117] = (img)(x,_n1##y,_n2##z,v)), \ 307.10020 + (I[122] = (img)(x,_n2##y,_n2##z,v)), \ 307.10021 + (I[3] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.10022 + (I[8] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.10023 + (I[13] = (img)(_n1##x,y,_p2##z,v)), \ 307.10024 + (I[18] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.10025 + (I[23] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.10026 + (I[28] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.10027 + (I[33] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.10028 + (I[38] = (img)(_n1##x,y,_p1##z,v)), \ 307.10029 + (I[43] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.10030 + (I[48] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.10031 + (I[53] = (img)(_n1##x,_p2##y,z,v)), \ 307.10032 + (I[58] = (img)(_n1##x,_p1##y,z,v)), \ 307.10033 + (I[63] = (img)(_n1##x,y,z,v)), \ 307.10034 + (I[68] = (img)(_n1##x,_n1##y,z,v)), \ 307.10035 + (I[73] = (img)(_n1##x,_n2##y,z,v)), \ 307.10036 + (I[78] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.10037 + (I[83] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.10038 + (I[88] = (img)(_n1##x,y,_n1##z,v)), \ 307.10039 + (I[93] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.10040 + (I[98] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.10041 + (I[103] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.10042 + (I[108] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.10043 + (I[113] = (img)(_n1##x,y,_n2##z,v)), \ 307.10044 + (I[118] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.10045 + (I[123] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.10046 + x+2>=(int)((img).width)?(int)((img).width)-1:x+2); \ 307.10047 + x<=(int)(x1) && ((_n2##x<(int)((img).width) && ( \ 307.10048 + (I[4] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.10049 + (I[9] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.10050 + (I[14] = (img)(_n2##x,y,_p2##z,v)), \ 307.10051 + (I[19] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.10052 + (I[24] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.10053 + (I[29] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.10054 + (I[34] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.10055 + (I[39] = (img)(_n2##x,y,_p1##z,v)), \ 307.10056 + (I[44] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.10057 + (I[49] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.10058 + (I[54] = (img)(_n2##x,_p2##y,z,v)), \ 307.10059 + (I[59] = (img)(_n2##x,_p1##y,z,v)), \ 307.10060 + (I[64] = (img)(_n2##x,y,z,v)), \ 307.10061 + (I[69] = (img)(_n2##x,_n1##y,z,v)), \ 307.10062 + (I[74] = (img)(_n2##x,_n2##y,z,v)), \ 307.10063 + (I[79] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.10064 + (I[84] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.10065 + (I[89] = (img)(_n2##x,y,_n1##z,v)), \ 307.10066 + (I[94] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.10067 + (I[99] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.10068 + (I[104] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.10069 + (I[109] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.10070 + (I[114] = (img)(_n2##x,y,_n2##z,v)), \ 307.10071 + (I[119] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.10072 + (I[124] = (img)(_n2##x,_n2##y,_n2##z,v)),1)) || \ 307.10073 + _n1##x==--_n2##x || x==(_n2##x = --_n1##x)); \ 307.10074 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], \ 307.10075 + I[5] = I[6], I[6] = I[7], I[7] = I[8], I[8] = I[9], \ 307.10076 + I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], \ 307.10077 + I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], \ 307.10078 + I[20] = I[21], I[21] = I[22], I[22] = I[23], I[23] = I[24], \ 307.10079 + I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.10080 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 307.10081 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.10082 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], \ 307.10083 + I[45] = I[46], I[46] = I[47], I[47] = I[48], I[48] = I[49], \ 307.10084 + I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], \ 307.10085 + I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.10086 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], \ 307.10087 + I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.10088 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], \ 307.10089 + I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.10090 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], \ 307.10091 + I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.10092 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], \ 307.10093 + I[95] = I[96], I[96] = I[97], I[97] = I[98], I[98] = I[99], \ 307.10094 + I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.10095 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], \ 307.10096 + I[110] = I[111], I[111] = I[112], I[112] = I[113], I[113] = I[114], \ 307.10097 + I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.10098 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], \ 307.10099 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x) 307.10100 + 307.10101 +#define cimg_get5x5x5(img,x,y,z,v,I) \ 307.10102 + I[0] = (img)(_p2##x,_p2##y,_p2##z,v), I[1] = (img)(_p1##x,_p2##y,_p2##z,v), I[2] = (img)(x,_p2##y,_p2##z,v), I[3] = (img)(_n1##x,_p2##y,_p2##z,v), I[4] = (img)(_n2##x,_p2##y,_p2##z,v), \ 307.10103 + I[5] = (img)(_p2##x,_p1##y,_p2##z,v), I[6] = (img)(_p1##x,_p1##y,_p2##z,v), I[7] = (img)(x,_p1##y,_p2##z,v), I[8] = (img)(_n1##x,_p1##y,_p2##z,v), I[9] = (img)(_n2##x,_p1##y,_p2##z,v), \ 307.10104 + I[10] = (img)(_p2##x,y,_p2##z,v), I[11] = (img)(_p1##x,y,_p2##z,v), I[12] = (img)(x,y,_p2##z,v), I[13] = (img)(_n1##x,y,_p2##z,v), I[14] = (img)(_n2##x,y,_p2##z,v), \ 307.10105 + I[15] = (img)(_p2##x,_n1##y,_p2##z,v), I[16] = (img)(_p1##x,_n1##y,_p2##z,v), I[17] = (img)(x,_n1##y,_p2##z,v), I[18] = (img)(_n1##x,_n1##y,_p2##z,v), I[19] = (img)(_n2##x,_n1##y,_p2##z,v), \ 307.10106 + I[20] = (img)(_p2##x,_n2##y,_p2##z,v), I[21] = (img)(_p1##x,_n2##y,_p2##z,v), I[22] = (img)(x,_n2##y,_p2##z,v), I[23] = (img)(_n1##x,_n2##y,_p2##z,v), I[24] = (img)(_n2##x,_n2##y,_p2##z,v), \ 307.10107 + I[25] = (img)(_p2##x,_p2##y,_p1##z,v), I[26] = (img)(_p1##x,_p2##y,_p1##z,v), I[27] = (img)(x,_p2##y,_p1##z,v), I[28] = (img)(_n1##x,_p2##y,_p1##z,v), I[29] = (img)(_n2##x,_p2##y,_p1##z,v), \ 307.10108 + I[30] = (img)(_p2##x,_p1##y,_p1##z,v), I[31] = (img)(_p1##x,_p1##y,_p1##z,v), I[32] = (img)(x,_p1##y,_p1##z,v), I[33] = (img)(_n1##x,_p1##y,_p1##z,v), I[34] = (img)(_n2##x,_p1##y,_p1##z,v), \ 307.10109 + I[35] = (img)(_p2##x,y,_p1##z,v), I[36] = (img)(_p1##x,y,_p1##z,v), I[37] = (img)(x,y,_p1##z,v), I[38] = (img)(_n1##x,y,_p1##z,v), I[39] = (img)(_n2##x,y,_p1##z,v), \ 307.10110 + I[40] = (img)(_p2##x,_n1##y,_p1##z,v), I[41] = (img)(_p1##x,_n1##y,_p1##z,v), I[42] = (img)(x,_n1##y,_p1##z,v), I[43] = (img)(_n1##x,_n1##y,_p1##z,v), I[44] = (img)(_n2##x,_n1##y,_p1##z,v), \ 307.10111 + I[45] = (img)(_p2##x,_n2##y,_p1##z,v), I[46] = (img)(_p1##x,_n2##y,_p1##z,v), I[47] = (img)(x,_n2##y,_p1##z,v), I[48] = (img)(_n1##x,_n2##y,_p1##z,v), I[49] = (img)(_n2##x,_n2##y,_p1##z,v), \ 307.10112 + I[50] = (img)(_p2##x,_p2##y,z,v), I[51] = (img)(_p1##x,_p2##y,z,v), I[52] = (img)(x,_p2##y,z,v), I[53] = (img)(_n1##x,_p2##y,z,v), I[54] = (img)(_n2##x,_p2##y,z,v), \ 307.10113 + I[55] = (img)(_p2##x,_p1##y,z,v), I[56] = (img)(_p1##x,_p1##y,z,v), I[57] = (img)(x,_p1##y,z,v), I[58] = (img)(_n1##x,_p1##y,z,v), I[59] = (img)(_n2##x,_p1##y,z,v), \ 307.10114 + I[60] = (img)(_p2##x,y,z,v), I[61] = (img)(_p1##x,y,z,v), I[62] = (img)(x,y,z,v), I[63] = (img)(_n1##x,y,z,v), I[64] = (img)(_n2##x,y,z,v), \ 307.10115 + I[65] = (img)(_p2##x,_n1##y,z,v), I[66] = (img)(_p1##x,_n1##y,z,v), I[67] = (img)(x,_n1##y,z,v), I[68] = (img)(_n1##x,_n1##y,z,v), I[69] = (img)(_n2##x,_n1##y,z,v), \ 307.10116 + I[70] = (img)(_p2##x,_n2##y,z,v), I[71] = (img)(_p1##x,_n2##y,z,v), I[72] = (img)(x,_n2##y,z,v), I[73] = (img)(_n1##x,_n2##y,z,v), I[74] = (img)(_n2##x,_n2##y,z,v), \ 307.10117 + I[75] = (img)(_p2##x,_p2##y,_n1##z,v), I[76] = (img)(_p1##x,_p2##y,_n1##z,v), I[77] = (img)(x,_p2##y,_n1##z,v), I[78] = (img)(_n1##x,_p2##y,_n1##z,v), I[79] = (img)(_n2##x,_p2##y,_n1##z,v), \ 307.10118 + I[80] = (img)(_p2##x,_p1##y,_n1##z,v), I[81] = (img)(_p1##x,_p1##y,_n1##z,v), I[82] = (img)(x,_p1##y,_n1##z,v), I[83] = (img)(_n1##x,_p1##y,_n1##z,v), I[84] = (img)(_n2##x,_p1##y,_n1##z,v), \ 307.10119 + I[85] = (img)(_p2##x,y,_n1##z,v), I[86] = (img)(_p1##x,y,_n1##z,v), I[87] = (img)(x,y,_n1##z,v), I[88] = (img)(_n1##x,y,_n1##z,v), I[89] = (img)(_n2##x,y,_n1##z,v), \ 307.10120 + I[90] = (img)(_p2##x,_n1##y,_n1##z,v), I[91] = (img)(_p1##x,_n1##y,_n1##z,v), I[92] = (img)(x,_n1##y,_n1##z,v), I[93] = (img)(_n1##x,_n1##y,_n1##z,v), I[94] = (img)(_n2##x,_n1##y,_n1##z,v), \ 307.10121 + I[95] = (img)(_p2##x,_n2##y,_n1##z,v), I[96] = (img)(_p1##x,_n2##y,_n1##z,v), I[97] = (img)(x,_n2##y,_n1##z,v), I[98] = (img)(_n1##x,_n2##y,_n1##z,v), I[99] = (img)(_n2##x,_n2##y,_n1##z,v), \ 307.10122 + I[100] = (img)(_p2##x,_p2##y,_n2##z,v), I[101] = (img)(_p1##x,_p2##y,_n2##z,v), I[102] = (img)(x,_p2##y,_n2##z,v), I[103] = (img)(_n1##x,_p2##y,_n2##z,v), I[104] = (img)(_n2##x,_p2##y,_n2##z,v), \ 307.10123 + I[105] = (img)(_p2##x,_p1##y,_n2##z,v), I[106] = (img)(_p1##x,_p1##y,_n2##z,v), I[107] = (img)(x,_p1##y,_n2##z,v), I[108] = (img)(_n1##x,_p1##y,_n2##z,v), I[109] = (img)(_n2##x,_p1##y,_n2##z,v), \ 307.10124 + I[110] = (img)(_p2##x,y,_n2##z,v), I[111] = (img)(_p1##x,y,_n2##z,v), I[112] = (img)(x,y,_n2##z,v), I[113] = (img)(_n1##x,y,_n2##z,v), I[114] = (img)(_n2##x,y,_n2##z,v), \ 307.10125 + I[115] = (img)(_p2##x,_n1##y,_n2##z,v), I[116] = (img)(_p1##x,_n1##y,_n2##z,v), I[117] = (img)(x,_n1##y,_n2##z,v), I[118] = (img)(_n1##x,_n1##y,_n2##z,v), I[119] = (img)(_n2##x,_n1##y,_n2##z,v), \ 307.10126 + I[120] = (img)(_p2##x,_n2##y,_n2##z,v), I[121] = (img)(_p1##x,_n2##y,_n2##z,v), I[122] = (img)(x,_n2##y,_n2##z,v), I[123] = (img)(_n1##x,_n2##y,_n2##z,v), I[124] = (img)(_n2##x,_n2##y,_n2##z,v); 307.10127 + 307.10128 +// Define 6x6x6 loop macros for CImg 307.10129 +//------------------------------------- 307.10130 +#define cimg_for_in6(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.10131 + _p2##i = i-2<0?0:i-2, \ 307.10132 + _p1##i = i-1<0?0:i-1, \ 307.10133 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.10134 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.10135 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3; \ 307.10136 + i<=(int)(i1) && (_n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.10137 + i==(_n3##i = _n2##i = --_n1##i)); \ 307.10138 + _p2##i = _p1##i, _p1##i = i++, \ 307.10139 + ++_n1##i, ++_n2##i, ++_n3##i) 307.10140 + 307.10141 +#define cimg_for_in6X(img,x0,x1,x) cimg_for_in6((img).width,x0,x1,x) 307.10142 +#define cimg_for_in6Y(img,y0,y1,y) cimg_for_in6((img).height,y0,y1,y) 307.10143 +#define cimg_for_in6Z(img,z0,z1,z) cimg_for_in6((img).depth,z0,z1,z) 307.10144 +#define cimg_for_in6V(img,v0,v1,v) cimg_for_in6((img).dim,v0,v1,v) 307.10145 +#define cimg_for_in6XY(img,x0,y0,x1,y1,x,y) cimg_for_in6Y(img,y0,y1,y) cimg_for_in6X(img,x0,x1,x) 307.10146 +#define cimg_for_in6XZ(img,x0,z0,x1,z1,x,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6X(img,x0,x1,x) 307.10147 +#define cimg_for_in6XV(img,x0,v0,x1,v1,x,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6X(img,x0,x1,x) 307.10148 +#define cimg_for_in6YZ(img,y0,z0,y1,z1,y,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6Y(img,y0,y1,y) 307.10149 +#define cimg_for_in6YV(img,y0,v0,y1,v1,y,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6Y(img,y0,y1,y) 307.10150 +#define cimg_for_in6ZV(img,z0,v0,z1,v1,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6Z(img,z0,z1,z) 307.10151 +#define cimg_for_in6XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in6Z(img,z0,z1,z) cimg_for_in6XY(img,x0,y0,x1,y1,x,y) 307.10152 +#define cimg_for_in6XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6XZ(img,x0,y0,x1,y1,x,z) 307.10153 +#define cimg_for_in6YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6YZ(img,y0,z0,y1,z1,y,z) 307.10154 +#define cimg_for_in6XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in6V(img,v0,v1,v) cimg_for_in6XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.10155 + 307.10156 +#define cimg_for6x6x6(img,x,y,z,v,I) \ 307.10157 + cimg_for6((img).depth,z) cimg_for6((img).height,y) for (int x = 0, \ 307.10158 + _p2##x = 0, _p1##x = 0, \ 307.10159 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.10160 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.10161 + _n3##x = (int)( \ 307.10162 + (I[0] = I[1] = I[2] = (img)(0,_p2##y,_p2##z,v)), \ 307.10163 + (I[6] = I[7] = I[8] = (img)(0,_p1##y,_p2##z,v)), \ 307.10164 + (I[12] = I[13] = I[14] = (img)(0,y,_p2##z,v)), \ 307.10165 + (I[18] = I[19] = I[20] = (img)(0,_n1##y,_p2##z,v)), \ 307.10166 + (I[24] = I[25] = I[26] = (img)(0,_n2##y,_p2##z,v)), \ 307.10167 + (I[30] = I[31] = I[32] = (img)(0,_n3##y,_p2##z,v)), \ 307.10168 + (I[36] = I[37] = I[38] = (img)(0,_p2##y,_p1##z,v)), \ 307.10169 + (I[42] = I[43] = I[44] = (img)(0,_p1##y,_p1##z,v)), \ 307.10170 + (I[48] = I[49] = I[50] = (img)(0,y,_p1##z,v)), \ 307.10171 + (I[54] = I[55] = I[56] = (img)(0,_n1##y,_p1##z,v)), \ 307.10172 + (I[60] = I[61] = I[62] = (img)(0,_n2##y,_p1##z,v)), \ 307.10173 + (I[66] = I[67] = I[68] = (img)(0,_n3##y,_p1##z,v)), \ 307.10174 + (I[72] = I[73] = I[74] = (img)(0,_p2##y,z,v)), \ 307.10175 + (I[78] = I[79] = I[80] = (img)(0,_p1##y,z,v)), \ 307.10176 + (I[84] = I[85] = I[86] = (img)(0,y,z,v)), \ 307.10177 + (I[90] = I[91] = I[92] = (img)(0,_n1##y,z,v)), \ 307.10178 + (I[96] = I[97] = I[98] = (img)(0,_n2##y,z,v)), \ 307.10179 + (I[102] = I[103] = I[104] = (img)(0,_n3##y,z,v)), \ 307.10180 + (I[108] = I[109] = I[110] = (img)(0,_p2##y,_n1##z,v)), \ 307.10181 + (I[114] = I[115] = I[116] = (img)(0,_p1##y,_n1##z,v)), \ 307.10182 + (I[120] = I[121] = I[122] = (img)(0,y,_n1##z,v)), \ 307.10183 + (I[126] = I[127] = I[128] = (img)(0,_n1##y,_n1##z,v)), \ 307.10184 + (I[132] = I[133] = I[134] = (img)(0,_n2##y,_n1##z,v)), \ 307.10185 + (I[138] = I[139] = I[140] = (img)(0,_n3##y,_n1##z,v)), \ 307.10186 + (I[144] = I[145] = I[146] = (img)(0,_p2##y,_n2##z,v)), \ 307.10187 + (I[150] = I[151] = I[152] = (img)(0,_p1##y,_n2##z,v)), \ 307.10188 + (I[156] = I[157] = I[158] = (img)(0,y,_n2##z,v)), \ 307.10189 + (I[162] = I[163] = I[164] = (img)(0,_n1##y,_n2##z,v)), \ 307.10190 + (I[168] = I[169] = I[170] = (img)(0,_n2##y,_n2##z,v)), \ 307.10191 + (I[174] = I[175] = I[176] = (img)(0,_n3##y,_n2##z,v)), \ 307.10192 + (I[180] = I[181] = I[182] = (img)(0,_p2##y,_n3##z,v)), \ 307.10193 + (I[186] = I[187] = I[188] = (img)(0,_p1##y,_n3##z,v)), \ 307.10194 + (I[192] = I[193] = I[194] = (img)(0,y,_n3##z,v)), \ 307.10195 + (I[198] = I[199] = I[200] = (img)(0,_n1##y,_n3##z,v)), \ 307.10196 + (I[204] = I[205] = I[206] = (img)(0,_n2##y,_n3##z,v)), \ 307.10197 + (I[210] = I[211] = I[212] = (img)(0,_n3##y,_n3##z,v)), \ 307.10198 + (I[3] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.10199 + (I[9] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.10200 + (I[15] = (img)(_n1##x,y,_p2##z,v)), \ 307.10201 + (I[21] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.10202 + (I[27] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.10203 + (I[33] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.10204 + (I[39] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.10205 + (I[45] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.10206 + (I[51] = (img)(_n1##x,y,_p1##z,v)), \ 307.10207 + (I[57] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.10208 + (I[63] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.10209 + (I[69] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.10210 + (I[75] = (img)(_n1##x,_p2##y,z,v)), \ 307.10211 + (I[81] = (img)(_n1##x,_p1##y,z,v)), \ 307.10212 + (I[87] = (img)(_n1##x,y,z,v)), \ 307.10213 + (I[93] = (img)(_n1##x,_n1##y,z,v)), \ 307.10214 + (I[99] = (img)(_n1##x,_n2##y,z,v)), \ 307.10215 + (I[105] = (img)(_n1##x,_n3##y,z,v)), \ 307.10216 + (I[111] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.10217 + (I[117] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.10218 + (I[123] = (img)(_n1##x,y,_n1##z,v)), \ 307.10219 + (I[129] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.10220 + (I[135] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.10221 + (I[141] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.10222 + (I[147] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.10223 + (I[153] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.10224 + (I[159] = (img)(_n1##x,y,_n2##z,v)), \ 307.10225 + (I[165] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.10226 + (I[171] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.10227 + (I[177] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.10228 + (I[183] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.10229 + (I[189] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.10230 + (I[195] = (img)(_n1##x,y,_n3##z,v)), \ 307.10231 + (I[201] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.10232 + (I[207] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.10233 + (I[213] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.10234 + (I[4] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.10235 + (I[10] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.10236 + (I[16] = (img)(_n2##x,y,_p2##z,v)), \ 307.10237 + (I[22] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.10238 + (I[28] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.10239 + (I[34] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.10240 + (I[40] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.10241 + (I[46] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.10242 + (I[52] = (img)(_n2##x,y,_p1##z,v)), \ 307.10243 + (I[58] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.10244 + (I[64] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.10245 + (I[70] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.10246 + (I[76] = (img)(_n2##x,_p2##y,z,v)), \ 307.10247 + (I[82] = (img)(_n2##x,_p1##y,z,v)), \ 307.10248 + (I[88] = (img)(_n2##x,y,z,v)), \ 307.10249 + (I[94] = (img)(_n2##x,_n1##y,z,v)), \ 307.10250 + (I[100] = (img)(_n2##x,_n2##y,z,v)), \ 307.10251 + (I[106] = (img)(_n2##x,_n3##y,z,v)), \ 307.10252 + (I[112] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.10253 + (I[118] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.10254 + (I[124] = (img)(_n2##x,y,_n1##z,v)), \ 307.10255 + (I[130] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.10256 + (I[136] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.10257 + (I[142] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.10258 + (I[148] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.10259 + (I[154] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.10260 + (I[160] = (img)(_n2##x,y,_n2##z,v)), \ 307.10261 + (I[166] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.10262 + (I[172] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.10263 + (I[178] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.10264 + (I[184] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.10265 + (I[190] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.10266 + (I[196] = (img)(_n2##x,y,_n3##z,v)), \ 307.10267 + (I[202] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.10268 + (I[208] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.10269 + (I[214] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.10270 + 3>=((img).width)?(int)((img).width)-1:3); \ 307.10271 + (_n3##x<(int)((img).width) && ( \ 307.10272 + (I[5] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.10273 + (I[11] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.10274 + (I[17] = (img)(_n3##x,y,_p2##z,v)), \ 307.10275 + (I[23] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.10276 + (I[29] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.10277 + (I[35] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.10278 + (I[41] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.10279 + (I[47] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.10280 + (I[53] = (img)(_n3##x,y,_p1##z,v)), \ 307.10281 + (I[59] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.10282 + (I[65] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.10283 + (I[71] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.10284 + (I[77] = (img)(_n3##x,_p2##y,z,v)), \ 307.10285 + (I[83] = (img)(_n3##x,_p1##y,z,v)), \ 307.10286 + (I[89] = (img)(_n3##x,y,z,v)), \ 307.10287 + (I[95] = (img)(_n3##x,_n1##y,z,v)), \ 307.10288 + (I[101] = (img)(_n3##x,_n2##y,z,v)), \ 307.10289 + (I[107] = (img)(_n3##x,_n3##y,z,v)), \ 307.10290 + (I[113] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.10291 + (I[119] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.10292 + (I[125] = (img)(_n3##x,y,_n1##z,v)), \ 307.10293 + (I[131] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.10294 + (I[137] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.10295 + (I[143] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.10296 + (I[149] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.10297 + (I[155] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.10298 + (I[161] = (img)(_n3##x,y,_n2##z,v)), \ 307.10299 + (I[167] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.10300 + (I[173] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.10301 + (I[179] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.10302 + (I[185] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.10303 + (I[191] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.10304 + (I[197] = (img)(_n3##x,y,_n3##z,v)), \ 307.10305 + (I[203] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.10306 + (I[209] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.10307 + (I[215] = (img)(_n3##x,_n3##y,_n3##z,v)),1)) || \ 307.10308 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x); \ 307.10309 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], \ 307.10310 + I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.10311 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 307.10312 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.10313 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.10314 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.10315 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.10316 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.10317 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 307.10318 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.10319 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.10320 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.10321 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], \ 307.10322 + I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.10323 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.10324 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.10325 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], \ 307.10326 + I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.10327 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], \ 307.10328 + I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.10329 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.10330 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.10331 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], \ 307.10332 + I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.10333 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], \ 307.10334 + I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], \ 307.10335 + I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], \ 307.10336 + I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.10337 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], \ 307.10338 + I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.10339 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], \ 307.10340 + I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.10341 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.10342 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], \ 307.10343 + I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.10344 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.10345 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 307.10346 + 307.10347 +#define cimg_for_in6x6x6(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 307.10348 + cimg_for_in6((img).depth,z0,z1,z) cimg_for_in6((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.10349 + _p2##x = x-2<0?0:x-2, \ 307.10350 + _p1##x = x-1<0?0:x-1, \ 307.10351 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.10352 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.10353 + _n3##x = (int)( \ 307.10354 + (I[0] = (img)(_p2##x,_p2##y,_p2##z,v)), \ 307.10355 + (I[6] = (img)(_p2##x,_p1##y,_p2##z,v)), \ 307.10356 + (I[12] = (img)(_p2##x,y,_p2##z,v)), \ 307.10357 + (I[18] = (img)(_p2##x,_n1##y,_p2##z,v)), \ 307.10358 + (I[24] = (img)(_p2##x,_n2##y,_p2##z,v)), \ 307.10359 + (I[30] = (img)(_p2##x,_n3##y,_p2##z,v)), \ 307.10360 + (I[36] = (img)(_p2##x,_p2##y,_p1##z,v)), \ 307.10361 + (I[42] = (img)(_p2##x,_p1##y,_p1##z,v)), \ 307.10362 + (I[48] = (img)(_p2##x,y,_p1##z,v)), \ 307.10363 + (I[54] = (img)(_p2##x,_n1##y,_p1##z,v)), \ 307.10364 + (I[60] = (img)(_p2##x,_n2##y,_p1##z,v)), \ 307.10365 + (I[66] = (img)(_p2##x,_n3##y,_p1##z,v)), \ 307.10366 + (I[72] = (img)(_p2##x,_p2##y,z,v)), \ 307.10367 + (I[78] = (img)(_p2##x,_p1##y,z,v)), \ 307.10368 + (I[84] = (img)(_p2##x,y,z,v)), \ 307.10369 + (I[90] = (img)(_p2##x,_n1##y,z,v)), \ 307.10370 + (I[96] = (img)(_p2##x,_n2##y,z,v)), \ 307.10371 + (I[102] = (img)(_p2##x,_n3##y,z,v)), \ 307.10372 + (I[108] = (img)(_p2##x,_p2##y,_n1##z,v)), \ 307.10373 + (I[114] = (img)(_p2##x,_p1##y,_n1##z,v)), \ 307.10374 + (I[120] = (img)(_p2##x,y,_n1##z,v)), \ 307.10375 + (I[126] = (img)(_p2##x,_n1##y,_n1##z,v)), \ 307.10376 + (I[132] = (img)(_p2##x,_n2##y,_n1##z,v)), \ 307.10377 + (I[138] = (img)(_p2##x,_n3##y,_n1##z,v)), \ 307.10378 + (I[144] = (img)(_p2##x,_p2##y,_n2##z,v)), \ 307.10379 + (I[150] = (img)(_p2##x,_p1##y,_n2##z,v)), \ 307.10380 + (I[156] = (img)(_p2##x,y,_n2##z,v)), \ 307.10381 + (I[162] = (img)(_p2##x,_n1##y,_n2##z,v)), \ 307.10382 + (I[168] = (img)(_p2##x,_n2##y,_n2##z,v)), \ 307.10383 + (I[174] = (img)(_p2##x,_n3##y,_n2##z,v)), \ 307.10384 + (I[180] = (img)(_p2##x,_p2##y,_n3##z,v)), \ 307.10385 + (I[186] = (img)(_p2##x,_p1##y,_n3##z,v)), \ 307.10386 + (I[192] = (img)(_p2##x,y,_n3##z,v)), \ 307.10387 + (I[198] = (img)(_p2##x,_n1##y,_n3##z,v)), \ 307.10388 + (I[204] = (img)(_p2##x,_n2##y,_n3##z,v)), \ 307.10389 + (I[210] = (img)(_p2##x,_n3##y,_n3##z,v)), \ 307.10390 + (I[1] = (img)(_p1##x,_p2##y,_p2##z,v)), \ 307.10391 + (I[7] = (img)(_p1##x,_p1##y,_p2##z,v)), \ 307.10392 + (I[13] = (img)(_p1##x,y,_p2##z,v)), \ 307.10393 + (I[19] = (img)(_p1##x,_n1##y,_p2##z,v)), \ 307.10394 + (I[25] = (img)(_p1##x,_n2##y,_p2##z,v)), \ 307.10395 + (I[31] = (img)(_p1##x,_n3##y,_p2##z,v)), \ 307.10396 + (I[37] = (img)(_p1##x,_p2##y,_p1##z,v)), \ 307.10397 + (I[43] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 307.10398 + (I[49] = (img)(_p1##x,y,_p1##z,v)), \ 307.10399 + (I[55] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 307.10400 + (I[61] = (img)(_p1##x,_n2##y,_p1##z,v)), \ 307.10401 + (I[67] = (img)(_p1##x,_n3##y,_p1##z,v)), \ 307.10402 + (I[73] = (img)(_p1##x,_p2##y,z,v)), \ 307.10403 + (I[79] = (img)(_p1##x,_p1##y,z,v)), \ 307.10404 + (I[85] = (img)(_p1##x,y,z,v)), \ 307.10405 + (I[91] = (img)(_p1##x,_n1##y,z,v)), \ 307.10406 + (I[97] = (img)(_p1##x,_n2##y,z,v)), \ 307.10407 + (I[103] = (img)(_p1##x,_n3##y,z,v)), \ 307.10408 + (I[109] = (img)(_p1##x,_p2##y,_n1##z,v)), \ 307.10409 + (I[115] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 307.10410 + (I[121] = (img)(_p1##x,y,_n1##z,v)), \ 307.10411 + (I[127] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 307.10412 + (I[133] = (img)(_p1##x,_n2##y,_n1##z,v)), \ 307.10413 + (I[139] = (img)(_p1##x,_n3##y,_n1##z,v)), \ 307.10414 + (I[145] = (img)(_p1##x,_p2##y,_n2##z,v)), \ 307.10415 + (I[151] = (img)(_p1##x,_p1##y,_n2##z,v)), \ 307.10416 + (I[157] = (img)(_p1##x,y,_n2##z,v)), \ 307.10417 + (I[163] = (img)(_p1##x,_n1##y,_n2##z,v)), \ 307.10418 + (I[169] = (img)(_p1##x,_n2##y,_n2##z,v)), \ 307.10419 + (I[175] = (img)(_p1##x,_n3##y,_n2##z,v)), \ 307.10420 + (I[181] = (img)(_p1##x,_p2##y,_n3##z,v)), \ 307.10421 + (I[187] = (img)(_p1##x,_p1##y,_n3##z,v)), \ 307.10422 + (I[193] = (img)(_p1##x,y,_n3##z,v)), \ 307.10423 + (I[199] = (img)(_p1##x,_n1##y,_n3##z,v)), \ 307.10424 + (I[205] = (img)(_p1##x,_n2##y,_n3##z,v)), \ 307.10425 + (I[211] = (img)(_p1##x,_n3##y,_n3##z,v)), \ 307.10426 + (I[2] = (img)(x,_p2##y,_p2##z,v)), \ 307.10427 + (I[8] = (img)(x,_p1##y,_p2##z,v)), \ 307.10428 + (I[14] = (img)(x,y,_p2##z,v)), \ 307.10429 + (I[20] = (img)(x,_n1##y,_p2##z,v)), \ 307.10430 + (I[26] = (img)(x,_n2##y,_p2##z,v)), \ 307.10431 + (I[32] = (img)(x,_n3##y,_p2##z,v)), \ 307.10432 + (I[38] = (img)(x,_p2##y,_p1##z,v)), \ 307.10433 + (I[44] = (img)(x,_p1##y,_p1##z,v)), \ 307.10434 + (I[50] = (img)(x,y,_p1##z,v)), \ 307.10435 + (I[56] = (img)(x,_n1##y,_p1##z,v)), \ 307.10436 + (I[62] = (img)(x,_n2##y,_p1##z,v)), \ 307.10437 + (I[68] = (img)(x,_n3##y,_p1##z,v)), \ 307.10438 + (I[74] = (img)(x,_p2##y,z,v)), \ 307.10439 + (I[80] = (img)(x,_p1##y,z,v)), \ 307.10440 + (I[86] = (img)(x,y,z,v)), \ 307.10441 + (I[92] = (img)(x,_n1##y,z,v)), \ 307.10442 + (I[98] = (img)(x,_n2##y,z,v)), \ 307.10443 + (I[104] = (img)(x,_n3##y,z,v)), \ 307.10444 + (I[110] = (img)(x,_p2##y,_n1##z,v)), \ 307.10445 + (I[116] = (img)(x,_p1##y,_n1##z,v)), \ 307.10446 + (I[122] = (img)(x,y,_n1##z,v)), \ 307.10447 + (I[128] = (img)(x,_n1##y,_n1##z,v)), \ 307.10448 + (I[134] = (img)(x,_n2##y,_n1##z,v)), \ 307.10449 + (I[140] = (img)(x,_n3##y,_n1##z,v)), \ 307.10450 + (I[146] = (img)(x,_p2##y,_n2##z,v)), \ 307.10451 + (I[152] = (img)(x,_p1##y,_n2##z,v)), \ 307.10452 + (I[158] = (img)(x,y,_n2##z,v)), \ 307.10453 + (I[164] = (img)(x,_n1##y,_n2##z,v)), \ 307.10454 + (I[170] = (img)(x,_n2##y,_n2##z,v)), \ 307.10455 + (I[176] = (img)(x,_n3##y,_n2##z,v)), \ 307.10456 + (I[182] = (img)(x,_p2##y,_n3##z,v)), \ 307.10457 + (I[188] = (img)(x,_p1##y,_n3##z,v)), \ 307.10458 + (I[194] = (img)(x,y,_n3##z,v)), \ 307.10459 + (I[200] = (img)(x,_n1##y,_n3##z,v)), \ 307.10460 + (I[206] = (img)(x,_n2##y,_n3##z,v)), \ 307.10461 + (I[212] = (img)(x,_n3##y,_n3##z,v)), \ 307.10462 + (I[3] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.10463 + (I[9] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.10464 + (I[15] = (img)(_n1##x,y,_p2##z,v)), \ 307.10465 + (I[21] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.10466 + (I[27] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.10467 + (I[33] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.10468 + (I[39] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.10469 + (I[45] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.10470 + (I[51] = (img)(_n1##x,y,_p1##z,v)), \ 307.10471 + (I[57] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.10472 + (I[63] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.10473 + (I[69] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.10474 + (I[75] = (img)(_n1##x,_p2##y,z,v)), \ 307.10475 + (I[81] = (img)(_n1##x,_p1##y,z,v)), \ 307.10476 + (I[87] = (img)(_n1##x,y,z,v)), \ 307.10477 + (I[93] = (img)(_n1##x,_n1##y,z,v)), \ 307.10478 + (I[99] = (img)(_n1##x,_n2##y,z,v)), \ 307.10479 + (I[105] = (img)(_n1##x,_n3##y,z,v)), \ 307.10480 + (I[111] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.10481 + (I[117] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.10482 + (I[123] = (img)(_n1##x,y,_n1##z,v)), \ 307.10483 + (I[129] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.10484 + (I[135] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.10485 + (I[141] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.10486 + (I[147] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.10487 + (I[153] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.10488 + (I[159] = (img)(_n1##x,y,_n2##z,v)), \ 307.10489 + (I[165] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.10490 + (I[171] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.10491 + (I[177] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.10492 + (I[183] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.10493 + (I[189] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.10494 + (I[195] = (img)(_n1##x,y,_n3##z,v)), \ 307.10495 + (I[201] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.10496 + (I[207] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.10497 + (I[213] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.10498 + (I[4] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.10499 + (I[10] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.10500 + (I[16] = (img)(_n2##x,y,_p2##z,v)), \ 307.10501 + (I[22] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.10502 + (I[28] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.10503 + (I[34] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.10504 + (I[40] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.10505 + (I[46] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.10506 + (I[52] = (img)(_n2##x,y,_p1##z,v)), \ 307.10507 + (I[58] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.10508 + (I[64] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.10509 + (I[70] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.10510 + (I[76] = (img)(_n2##x,_p2##y,z,v)), \ 307.10511 + (I[82] = (img)(_n2##x,_p1##y,z,v)), \ 307.10512 + (I[88] = (img)(_n2##x,y,z,v)), \ 307.10513 + (I[94] = (img)(_n2##x,_n1##y,z,v)), \ 307.10514 + (I[100] = (img)(_n2##x,_n2##y,z,v)), \ 307.10515 + (I[106] = (img)(_n2##x,_n3##y,z,v)), \ 307.10516 + (I[112] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.10517 + (I[118] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.10518 + (I[124] = (img)(_n2##x,y,_n1##z,v)), \ 307.10519 + (I[130] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.10520 + (I[136] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.10521 + (I[142] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.10522 + (I[148] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.10523 + (I[154] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.10524 + (I[160] = (img)(_n2##x,y,_n2##z,v)), \ 307.10525 + (I[166] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.10526 + (I[172] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.10527 + (I[178] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.10528 + (I[184] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.10529 + (I[190] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.10530 + (I[196] = (img)(_n2##x,y,_n3##z,v)), \ 307.10531 + (I[202] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.10532 + (I[208] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.10533 + (I[214] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.10534 + x+3>=(int)((img).width)?(int)((img).width)-1:x+3); \ 307.10535 + x<=(int)(x1) && ((_n3##x<(int)((img).width) && ( \ 307.10536 + (I[5] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.10537 + (I[11] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.10538 + (I[17] = (img)(_n3##x,y,_p2##z,v)), \ 307.10539 + (I[23] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.10540 + (I[29] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.10541 + (I[35] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.10542 + (I[41] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.10543 + (I[47] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.10544 + (I[53] = (img)(_n3##x,y,_p1##z,v)), \ 307.10545 + (I[59] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.10546 + (I[65] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.10547 + (I[71] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.10548 + (I[77] = (img)(_n3##x,_p2##y,z,v)), \ 307.10549 + (I[83] = (img)(_n3##x,_p1##y,z,v)), \ 307.10550 + (I[89] = (img)(_n3##x,y,z,v)), \ 307.10551 + (I[95] = (img)(_n3##x,_n1##y,z,v)), \ 307.10552 + (I[101] = (img)(_n3##x,_n2##y,z,v)), \ 307.10553 + (I[107] = (img)(_n3##x,_n3##y,z,v)), \ 307.10554 + (I[113] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.10555 + (I[119] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.10556 + (I[125] = (img)(_n3##x,y,_n1##z,v)), \ 307.10557 + (I[131] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.10558 + (I[137] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.10559 + (I[143] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.10560 + (I[149] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.10561 + (I[155] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.10562 + (I[161] = (img)(_n3##x,y,_n2##z,v)), \ 307.10563 + (I[167] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.10564 + (I[173] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.10565 + (I[179] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.10566 + (I[185] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.10567 + (I[191] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.10568 + (I[197] = (img)(_n3##x,y,_n3##z,v)), \ 307.10569 + (I[203] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.10570 + (I[209] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.10571 + (I[215] = (img)(_n3##x,_n3##y,_n3##z,v)),1)) || \ 307.10572 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x)); \ 307.10573 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], \ 307.10574 + I[6] = I[7], I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], \ 307.10575 + I[12] = I[13], I[13] = I[14], I[14] = I[15], I[15] = I[16], I[16] = I[17], \ 307.10576 + I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.10577 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], \ 307.10578 + I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], I[34] = I[35], \ 307.10579 + I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.10580 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.10581 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], \ 307.10582 + I[54] = I[55], I[55] = I[56], I[56] = I[57], I[57] = I[58], I[58] = I[59], \ 307.10583 + I[60] = I[61], I[61] = I[62], I[62] = I[63], I[63] = I[64], I[64] = I[65], \ 307.10584 + I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.10585 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], \ 307.10586 + I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.10587 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], \ 307.10588 + I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.10589 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], \ 307.10590 + I[102] = I[103], I[103] = I[104], I[104] = I[105], I[105] = I[106], I[106] = I[107], \ 307.10591 + I[108] = I[109], I[109] = I[110], I[110] = I[111], I[111] = I[112], I[112] = I[113], \ 307.10592 + I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.10593 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.10594 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], \ 307.10595 + I[132] = I[133], I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], \ 307.10596 + I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.10597 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], \ 307.10598 + I[150] = I[151], I[151] = I[152], I[152] = I[153], I[153] = I[154], I[154] = I[155], \ 307.10599 + I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], I[160] = I[161], \ 307.10600 + I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.10601 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], \ 307.10602 + I[174] = I[175], I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], \ 307.10603 + I[180] = I[181], I[181] = I[182], I[182] = I[183], I[183] = I[184], I[184] = I[185], \ 307.10604 + I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.10605 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], \ 307.10606 + I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], I[202] = I[203], \ 307.10607 + I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.10608 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.10609 + _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 307.10610 + 307.10611 +#define cimg_get6x6x6(img,x,y,z,v,I) \ 307.10612 + I[0] = (img)(_p2##x,_p2##y,_p2##z,v), I[1] = (img)(_p1##x,_p2##y,_p2##z,v), I[2] = (img)(x,_p2##y,_p2##z,v), I[3] = (img)(_n1##x,_p2##y,_p2##z,v), I[4] = (img)(_n2##x,_p2##y,_p2##z,v), I[5] = (img)(_n3##x,_p2##y,_p2##z,v), \ 307.10613 + I[6] = (img)(_p2##x,_p1##y,_p2##z,v), I[7] = (img)(_p1##x,_p1##y,_p2##z,v), I[8] = (img)(x,_p1##y,_p2##z,v), I[9] = (img)(_n1##x,_p1##y,_p2##z,v), I[10] = (img)(_n2##x,_p1##y,_p2##z,v), I[11] = (img)(_n3##x,_p1##y,_p2##z,v), \ 307.10614 + I[12] = (img)(_p2##x,y,_p2##z,v), I[13] = (img)(_p1##x,y,_p2##z,v), I[14] = (img)(x,y,_p2##z,v), I[15] = (img)(_n1##x,y,_p2##z,v), I[16] = (img)(_n2##x,y,_p2##z,v), I[17] = (img)(_n3##x,y,_p2##z,v), \ 307.10615 + I[18] = (img)(_p2##x,_n1##y,_p2##z,v), I[19] = (img)(_p1##x,_n1##y,_p2##z,v), I[20] = (img)(x,_n1##y,_p2##z,v), I[21] = (img)(_n1##x,_n1##y,_p2##z,v), I[22] = (img)(_n2##x,_n1##y,_p2##z,v), I[23] = (img)(_n3##x,_n1##y,_p2##z,v), \ 307.10616 + I[24] = (img)(_p2##x,_n2##y,_p2##z,v), I[25] = (img)(_p1##x,_n2##y,_p2##z,v), I[26] = (img)(x,_n2##y,_p2##z,v), I[27] = (img)(_n1##x,_n2##y,_p2##z,v), I[28] = (img)(_n2##x,_n2##y,_p2##z,v), I[29] = (img)(_n3##x,_n2##y,_p2##z,v), \ 307.10617 + I[30] = (img)(_p2##x,_n3##y,_p2##z,v), I[31] = (img)(_p1##x,_n3##y,_p2##z,v), I[32] = (img)(x,_n3##y,_p2##z,v), I[33] = (img)(_n1##x,_n3##y,_p2##z,v), I[34] = (img)(_n2##x,_n3##y,_p2##z,v), I[35] = (img)(_n3##x,_n3##y,_p2##z,v), \ 307.10618 + I[36] = (img)(_p2##x,_p2##y,_p1##z,v), I[37] = (img)(_p1##x,_p2##y,_p1##z,v), I[38] = (img)(x,_p2##y,_p1##z,v), I[39] = (img)(_n1##x,_p2##y,_p1##z,v), I[40] = (img)(_n2##x,_p2##y,_p1##z,v), I[41] = (img)(_n3##x,_p2##y,_p1##z,v), \ 307.10619 + I[42] = (img)(_p2##x,_p1##y,_p1##z,v), I[43] = (img)(_p1##x,_p1##y,_p1##z,v), I[44] = (img)(x,_p1##y,_p1##z,v), I[45] = (img)(_n1##x,_p1##y,_p1##z,v), I[46] = (img)(_n2##x,_p1##y,_p1##z,v), I[47] = (img)(_n3##x,_p1##y,_p1##z,v), \ 307.10620 + I[48] = (img)(_p2##x,y,_p1##z,v), I[49] = (img)(_p1##x,y,_p1##z,v), I[50] = (img)(x,y,_p1##z,v), I[51] = (img)(_n1##x,y,_p1##z,v), I[52] = (img)(_n2##x,y,_p1##z,v), I[53] = (img)(_n3##x,y,_p1##z,v), \ 307.10621 + I[54] = (img)(_p2##x,_n1##y,_p1##z,v), I[55] = (img)(_p1##x,_n1##y,_p1##z,v), I[56] = (img)(x,_n1##y,_p1##z,v), I[57] = (img)(_n1##x,_n1##y,_p1##z,v), I[58] = (img)(_n2##x,_n1##y,_p1##z,v), I[59] = (img)(_n3##x,_n1##y,_p1##z,v), \ 307.10622 + I[60] = (img)(_p2##x,_n2##y,_p1##z,v), I[61] = (img)(_p1##x,_n2##y,_p1##z,v), I[62] = (img)(x,_n2##y,_p1##z,v), I[63] = (img)(_n1##x,_n2##y,_p1##z,v), I[64] = (img)(_n2##x,_n2##y,_p1##z,v), I[65] = (img)(_n3##x,_n2##y,_p1##z,v), \ 307.10623 + I[66] = (img)(_p2##x,_n3##y,_p1##z,v), I[67] = (img)(_p1##x,_n3##y,_p1##z,v), I[68] = (img)(x,_n3##y,_p1##z,v), I[69] = (img)(_n1##x,_n3##y,_p1##z,v), I[70] = (img)(_n2##x,_n3##y,_p1##z,v), I[71] = (img)(_n3##x,_n3##y,_p1##z,v), \ 307.10624 + I[72] = (img)(_p2##x,_p2##y,z,v), I[73] = (img)(_p1##x,_p2##y,z,v), I[74] = (img)(x,_p2##y,z,v), I[75] = (img)(_n1##x,_p2##y,z,v), I[76] = (img)(_n2##x,_p2##y,z,v), I[77] = (img)(_n3##x,_p2##y,z,v), \ 307.10625 + I[78] = (img)(_p2##x,_p1##y,z,v), I[79] = (img)(_p1##x,_p1##y,z,v), I[80] = (img)(x,_p1##y,z,v), I[81] = (img)(_n1##x,_p1##y,z,v), I[82] = (img)(_n2##x,_p1##y,z,v), I[83] = (img)(_n3##x,_p1##y,z,v), \ 307.10626 + I[84] = (img)(_p2##x,y,z,v), I[85] = (img)(_p1##x,y,z,v), I[86] = (img)(x,y,z,v), I[87] = (img)(_n1##x,y,z,v), I[88] = (img)(_n2##x,y,z,v), I[89] = (img)(_n3##x,y,z,v), \ 307.10627 + I[90] = (img)(_p2##x,_n1##y,z,v), I[91] = (img)(_p1##x,_n1##y,z,v), I[92] = (img)(x,_n1##y,z,v), I[93] = (img)(_n1##x,_n1##y,z,v), I[94] = (img)(_n2##x,_n1##y,z,v), I[95] = (img)(_n3##x,_n1##y,z,v), \ 307.10628 + I[96] = (img)(_p2##x,_n2##y,z,v), I[97] = (img)(_p1##x,_n2##y,z,v), I[98] = (img)(x,_n2##y,z,v), I[99] = (img)(_n1##x,_n2##y,z,v), I[100] = (img)(_n2##x,_n2##y,z,v), I[101] = (img)(_n3##x,_n2##y,z,v), \ 307.10629 + I[102] = (img)(_p2##x,_n3##y,z,v), I[103] = (img)(_p1##x,_n3##y,z,v), I[104] = (img)(x,_n3##y,z,v), I[105] = (img)(_n1##x,_n3##y,z,v), I[106] = (img)(_n2##x,_n3##y,z,v), I[107] = (img)(_n3##x,_n3##y,z,v), \ 307.10630 + I[108] = (img)(_p2##x,_p2##y,_n1##z,v), I[109] = (img)(_p1##x,_p2##y,_n1##z,v), I[110] = (img)(x,_p2##y,_n1##z,v), I[111] = (img)(_n1##x,_p2##y,_n1##z,v), I[112] = (img)(_n2##x,_p2##y,_n1##z,v), I[113] = (img)(_n3##x,_p2##y,_n1##z,v), \ 307.10631 + I[114] = (img)(_p2##x,_p1##y,_n1##z,v), I[115] = (img)(_p1##x,_p1##y,_n1##z,v), I[116] = (img)(x,_p1##y,_n1##z,v), I[117] = (img)(_n1##x,_p1##y,_n1##z,v), I[118] = (img)(_n2##x,_p1##y,_n1##z,v), I[119] = (img)(_n3##x,_p1##y,_n1##z,v), \ 307.10632 + I[120] = (img)(_p2##x,y,_n1##z,v), I[121] = (img)(_p1##x,y,_n1##z,v), I[122] = (img)(x,y,_n1##z,v), I[123] = (img)(_n1##x,y,_n1##z,v), I[124] = (img)(_n2##x,y,_n1##z,v), I[125] = (img)(_n3##x,y,_n1##z,v), \ 307.10633 + I[126] = (img)(_p2##x,_n1##y,_n1##z,v), I[127] = (img)(_p1##x,_n1##y,_n1##z,v), I[128] = (img)(x,_n1##y,_n1##z,v), I[129] = (img)(_n1##x,_n1##y,_n1##z,v), I[130] = (img)(_n2##x,_n1##y,_n1##z,v), I[131] = (img)(_n3##x,_n1##y,_n1##z,v), \ 307.10634 + I[132] = (img)(_p2##x,_n2##y,_n1##z,v), I[133] = (img)(_p1##x,_n2##y,_n1##z,v), I[134] = (img)(x,_n2##y,_n1##z,v), I[135] = (img)(_n1##x,_n2##y,_n1##z,v), I[136] = (img)(_n2##x,_n2##y,_n1##z,v), I[137] = (img)(_n3##x,_n2##y,_n1##z,v), \ 307.10635 + I[138] = (img)(_p2##x,_n3##y,_n1##z,v), I[139] = (img)(_p1##x,_n3##y,_n1##z,v), I[140] = (img)(x,_n3##y,_n1##z,v), I[141] = (img)(_n1##x,_n3##y,_n1##z,v), I[142] = (img)(_n2##x,_n3##y,_n1##z,v), I[143] = (img)(_n3##x,_n3##y,_n1##z,v), \ 307.10636 + I[144] = (img)(_p2##x,_p2##y,_n2##z,v), I[145] = (img)(_p1##x,_p2##y,_n2##z,v), I[146] = (img)(x,_p2##y,_n2##z,v), I[147] = (img)(_n1##x,_p2##y,_n2##z,v), I[148] = (img)(_n2##x,_p2##y,_n2##z,v), I[149] = (img)(_n3##x,_p2##y,_n2##z,v), \ 307.10637 + I[150] = (img)(_p2##x,_p1##y,_n2##z,v), I[151] = (img)(_p1##x,_p1##y,_n2##z,v), I[152] = (img)(x,_p1##y,_n2##z,v), I[153] = (img)(_n1##x,_p1##y,_n2##z,v), I[154] = (img)(_n2##x,_p1##y,_n2##z,v), I[155] = (img)(_n3##x,_p1##y,_n2##z,v), \ 307.10638 + I[156] = (img)(_p2##x,y,_n2##z,v), I[157] = (img)(_p1##x,y,_n2##z,v), I[158] = (img)(x,y,_n2##z,v), I[159] = (img)(_n1##x,y,_n2##z,v), I[160] = (img)(_n2##x,y,_n2##z,v), I[161] = (img)(_n3##x,y,_n2##z,v), \ 307.10639 + I[162] = (img)(_p2##x,_n1##y,_n2##z,v), I[163] = (img)(_p1##x,_n1##y,_n2##z,v), I[164] = (img)(x,_n1##y,_n2##z,v), I[165] = (img)(_n1##x,_n1##y,_n2##z,v), I[166] = (img)(_n2##x,_n1##y,_n2##z,v), I[167] = (img)(_n3##x,_n1##y,_n2##z,v), \ 307.10640 + I[168] = (img)(_p2##x,_n2##y,_n2##z,v), I[169] = (img)(_p1##x,_n2##y,_n2##z,v), I[170] = (img)(x,_n2##y,_n2##z,v), I[171] = (img)(_n1##x,_n2##y,_n2##z,v), I[172] = (img)(_n2##x,_n2##y,_n2##z,v), I[173] = (img)(_n3##x,_n2##y,_n2##z,v), \ 307.10641 + I[174] = (img)(_p2##x,_n3##y,_n2##z,v), I[175] = (img)(_p1##x,_n3##y,_n2##z,v), I[176] = (img)(x,_n3##y,_n2##z,v), I[177] = (img)(_n1##x,_n3##y,_n2##z,v), I[178] = (img)(_n2##x,_n3##y,_n2##z,v), I[179] = (img)(_n3##x,_n3##y,_n2##z,v), \ 307.10642 + I[180] = (img)(_p2##x,_p2##y,_n3##z,v), I[181] = (img)(_p1##x,_p2##y,_n3##z,v), I[182] = (img)(x,_p2##y,_n3##z,v), I[183] = (img)(_n1##x,_p2##y,_n3##z,v), I[184] = (img)(_n2##x,_p2##y,_n3##z,v), I[185] = (img)(_n3##x,_p2##y,_n3##z,v), \ 307.10643 + I[186] = (img)(_p2##x,_p1##y,_n3##z,v), I[187] = (img)(_p1##x,_p1##y,_n3##z,v), I[188] = (img)(x,_p1##y,_n3##z,v), I[189] = (img)(_n1##x,_p1##y,_n3##z,v), I[190] = (img)(_n2##x,_p1##y,_n3##z,v), I[191] = (img)(_n3##x,_p1##y,_n3##z,v), \ 307.10644 + I[192] = (img)(_p2##x,y,_n3##z,v), I[193] = (img)(_p1##x,y,_n3##z,v), I[194] = (img)(x,y,_n3##z,v), I[195] = (img)(_n1##x,y,_n3##z,v), I[196] = (img)(_n2##x,y,_n3##z,v), I[197] = (img)(_n3##x,y,_n3##z,v), \ 307.10645 + I[198] = (img)(_p2##x,_n1##y,_n3##z,v), I[199] = (img)(_p1##x,_n1##y,_n3##z,v), I[200] = (img)(x,_n1##y,_n3##z,v), I[201] = (img)(_n1##x,_n1##y,_n3##z,v), I[202] = (img)(_n2##x,_n1##y,_n3##z,v), I[203] = (img)(_n3##x,_n1##y,_n3##z,v), \ 307.10646 + I[204] = (img)(_p2##x,_n2##y,_n3##z,v), I[205] = (img)(_p1##x,_n2##y,_n3##z,v), I[206] = (img)(x,_n2##y,_n3##z,v), I[207] = (img)(_n1##x,_n2##y,_n3##z,v), I[208] = (img)(_n2##x,_n2##y,_n3##z,v), I[209] = (img)(_n3##x,_n2##y,_n3##z,v), \ 307.10647 + I[210] = (img)(_p2##x,_n3##y,_n3##z,v), I[211] = (img)(_p1##x,_n3##y,_n3##z,v), I[212] = (img)(x,_n3##y,_n3##z,v), I[213] = (img)(_n1##x,_n3##y,_n3##z,v), I[214] = (img)(_n2##x,_n3##y,_n3##z,v), I[215] = (img)(_n3##x,_n3##y,_n3##z,v); 307.10648 + 307.10649 +// Define 7x7x7 loop macros for CImg 307.10650 +//------------------------------------- 307.10651 +#define cimg_for_in7(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.10652 + _p3##i = i-3<0?0:i-3, \ 307.10653 + _p2##i = i-2<0?0:i-2, \ 307.10654 + _p1##i = i-1<0?0:i-1, \ 307.10655 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.10656 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.10657 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3; \ 307.10658 + i<=(int)(i1) && (_n3##i<(int)(bound) || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.10659 + i==(_n3##i = _n2##i = --_n1##i)); \ 307.10660 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.10661 + ++_n1##i, ++_n2##i, ++_n3##i) 307.10662 + 307.10663 +#define cimg_for_in7X(img,x0,x1,x) cimg_for_in7((img).width,x0,x1,x) 307.10664 +#define cimg_for_in7Y(img,y0,y1,y) cimg_for_in7((img).height,y0,y1,y) 307.10665 +#define cimg_for_in7Z(img,z0,z1,z) cimg_for_in7((img).depth,z0,z1,z) 307.10666 +#define cimg_for_in7V(img,v0,v1,v) cimg_for_in7((img).dim,v0,v1,v) 307.10667 +#define cimg_for_in7XY(img,x0,y0,x1,y1,x,y) cimg_for_in7Y(img,y0,y1,y) cimg_for_in7X(img,x0,x1,x) 307.10668 +#define cimg_for_in7XZ(img,x0,z0,x1,z1,x,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7X(img,x0,x1,x) 307.10669 +#define cimg_for_in7XV(img,x0,v0,x1,v1,x,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7X(img,x0,x1,x) 307.10670 +#define cimg_for_in7YZ(img,y0,z0,y1,z1,y,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7Y(img,y0,y1,y) 307.10671 +#define cimg_for_in7YV(img,y0,v0,y1,v1,y,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7Y(img,y0,y1,y) 307.10672 +#define cimg_for_in7ZV(img,z0,v0,z1,v1,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7Z(img,z0,z1,z) 307.10673 +#define cimg_for_in7XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in7Z(img,z0,z1,z) cimg_for_in7XY(img,x0,y0,x1,y1,x,y) 307.10674 +#define cimg_for_in7XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7XZ(img,x0,y0,x1,y1,x,z) 307.10675 +#define cimg_for_in7YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7YZ(img,y0,z0,y1,z1,y,z) 307.10676 +#define cimg_for_in7XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in7V(img,v0,v1,v) cimg_for_in7XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.10677 + 307.10678 +#define cimg_for7x7x7(img,x,y,z,v,I) \ 307.10679 + cimg_for7((img).depth,z) cimg_for7((img).height,y) for (int x = 0, \ 307.10680 + _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.10681 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.10682 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.10683 + _n3##x = (int)( \ 307.10684 + (I[0] = I[1] = I[2] = I[3] = (img)(0,_p3##y,_p3##z,v)), \ 307.10685 + (I[7] = I[8] = I[9] = I[10] = (img)(0,_p2##y,_p3##z,v)), \ 307.10686 + (I[14] = I[15] = I[16] = I[17] = (img)(0,_p1##y,_p3##z,v)), \ 307.10687 + (I[21] = I[22] = I[23] = I[24] = (img)(0,y,_p3##z,v)), \ 307.10688 + (I[28] = I[29] = I[30] = I[31] = (img)(0,_n1##y,_p3##z,v)), \ 307.10689 + (I[35] = I[36] = I[37] = I[38] = (img)(0,_n2##y,_p3##z,v)), \ 307.10690 + (I[42] = I[43] = I[44] = I[45] = (img)(0,_n3##y,_p3##z,v)), \ 307.10691 + (I[49] = I[50] = I[51] = I[52] = (img)(0,_p3##y,_p2##z,v)), \ 307.10692 + (I[56] = I[57] = I[58] = I[59] = (img)(0,_p2##y,_p2##z,v)), \ 307.10693 + (I[63] = I[64] = I[65] = I[66] = (img)(0,_p1##y,_p2##z,v)), \ 307.10694 + (I[70] = I[71] = I[72] = I[73] = (img)(0,y,_p2##z,v)), \ 307.10695 + (I[77] = I[78] = I[79] = I[80] = (img)(0,_n1##y,_p2##z,v)), \ 307.10696 + (I[84] = I[85] = I[86] = I[87] = (img)(0,_n2##y,_p2##z,v)), \ 307.10697 + (I[91] = I[92] = I[93] = I[94] = (img)(0,_n3##y,_p2##z,v)), \ 307.10698 + (I[98] = I[99] = I[100] = I[101] = (img)(0,_p3##y,_p1##z,v)), \ 307.10699 + (I[105] = I[106] = I[107] = I[108] = (img)(0,_p2##y,_p1##z,v)), \ 307.10700 + (I[112] = I[113] = I[114] = I[115] = (img)(0,_p1##y,_p1##z,v)), \ 307.10701 + (I[119] = I[120] = I[121] = I[122] = (img)(0,y,_p1##z,v)), \ 307.10702 + (I[126] = I[127] = I[128] = I[129] = (img)(0,_n1##y,_p1##z,v)), \ 307.10703 + (I[133] = I[134] = I[135] = I[136] = (img)(0,_n2##y,_p1##z,v)), \ 307.10704 + (I[140] = I[141] = I[142] = I[143] = (img)(0,_n3##y,_p1##z,v)), \ 307.10705 + (I[147] = I[148] = I[149] = I[150] = (img)(0,_p3##y,z,v)), \ 307.10706 + (I[154] = I[155] = I[156] = I[157] = (img)(0,_p2##y,z,v)), \ 307.10707 + (I[161] = I[162] = I[163] = I[164] = (img)(0,_p1##y,z,v)), \ 307.10708 + (I[168] = I[169] = I[170] = I[171] = (img)(0,y,z,v)), \ 307.10709 + (I[175] = I[176] = I[177] = I[178] = (img)(0,_n1##y,z,v)), \ 307.10710 + (I[182] = I[183] = I[184] = I[185] = (img)(0,_n2##y,z,v)), \ 307.10711 + (I[189] = I[190] = I[191] = I[192] = (img)(0,_n3##y,z,v)), \ 307.10712 + (I[196] = I[197] = I[198] = I[199] = (img)(0,_p3##y,_n1##z,v)), \ 307.10713 + (I[203] = I[204] = I[205] = I[206] = (img)(0,_p2##y,_n1##z,v)), \ 307.10714 + (I[210] = I[211] = I[212] = I[213] = (img)(0,_p1##y,_n1##z,v)), \ 307.10715 + (I[217] = I[218] = I[219] = I[220] = (img)(0,y,_n1##z,v)), \ 307.10716 + (I[224] = I[225] = I[226] = I[227] = (img)(0,_n1##y,_n1##z,v)), \ 307.10717 + (I[231] = I[232] = I[233] = I[234] = (img)(0,_n2##y,_n1##z,v)), \ 307.10718 + (I[238] = I[239] = I[240] = I[241] = (img)(0,_n3##y,_n1##z,v)), \ 307.10719 + (I[245] = I[246] = I[247] = I[248] = (img)(0,_p3##y,_n2##z,v)), \ 307.10720 + (I[252] = I[253] = I[254] = I[255] = (img)(0,_p2##y,_n2##z,v)), \ 307.10721 + (I[259] = I[260] = I[261] = I[262] = (img)(0,_p1##y,_n2##z,v)), \ 307.10722 + (I[266] = I[267] = I[268] = I[269] = (img)(0,y,_n2##z,v)), \ 307.10723 + (I[273] = I[274] = I[275] = I[276] = (img)(0,_n1##y,_n2##z,v)), \ 307.10724 + (I[280] = I[281] = I[282] = I[283] = (img)(0,_n2##y,_n2##z,v)), \ 307.10725 + (I[287] = I[288] = I[289] = I[290] = (img)(0,_n3##y,_n2##z,v)), \ 307.10726 + (I[294] = I[295] = I[296] = I[297] = (img)(0,_p3##y,_n3##z,v)), \ 307.10727 + (I[301] = I[302] = I[303] = I[304] = (img)(0,_p2##y,_n3##z,v)), \ 307.10728 + (I[308] = I[309] = I[310] = I[311] = (img)(0,_p1##y,_n3##z,v)), \ 307.10729 + (I[315] = I[316] = I[317] = I[318] = (img)(0,y,_n3##z,v)), \ 307.10730 + (I[322] = I[323] = I[324] = I[325] = (img)(0,_n1##y,_n3##z,v)), \ 307.10731 + (I[329] = I[330] = I[331] = I[332] = (img)(0,_n2##y,_n3##z,v)), \ 307.10732 + (I[336] = I[337] = I[338] = I[339] = (img)(0,_n3##y,_n3##z,v)), \ 307.10733 + (I[4] = (img)(_n1##x,_p3##y,_p3##z,v)), \ 307.10734 + (I[11] = (img)(_n1##x,_p2##y,_p3##z,v)), \ 307.10735 + (I[18] = (img)(_n1##x,_p1##y,_p3##z,v)), \ 307.10736 + (I[25] = (img)(_n1##x,y,_p3##z,v)), \ 307.10737 + (I[32] = (img)(_n1##x,_n1##y,_p3##z,v)), \ 307.10738 + (I[39] = (img)(_n1##x,_n2##y,_p3##z,v)), \ 307.10739 + (I[46] = (img)(_n1##x,_n3##y,_p3##z,v)), \ 307.10740 + (I[53] = (img)(_n1##x,_p3##y,_p2##z,v)), \ 307.10741 + (I[60] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.10742 + (I[67] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.10743 + (I[74] = (img)(_n1##x,y,_p2##z,v)), \ 307.10744 + (I[81] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.10745 + (I[88] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.10746 + (I[95] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.10747 + (I[102] = (img)(_n1##x,_p3##y,_p1##z,v)), \ 307.10748 + (I[109] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.10749 + (I[116] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.10750 + (I[123] = (img)(_n1##x,y,_p1##z,v)), \ 307.10751 + (I[130] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.10752 + (I[137] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.10753 + (I[144] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.10754 + (I[151] = (img)(_n1##x,_p3##y,z,v)), \ 307.10755 + (I[158] = (img)(_n1##x,_p2##y,z,v)), \ 307.10756 + (I[165] = (img)(_n1##x,_p1##y,z,v)), \ 307.10757 + (I[172] = (img)(_n1##x,y,z,v)), \ 307.10758 + (I[179] = (img)(_n1##x,_n1##y,z,v)), \ 307.10759 + (I[186] = (img)(_n1##x,_n2##y,z,v)), \ 307.10760 + (I[193] = (img)(_n1##x,_n3##y,z,v)), \ 307.10761 + (I[200] = (img)(_n1##x,_p3##y,_n1##z,v)), \ 307.10762 + (I[207] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.10763 + (I[214] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.10764 + (I[221] = (img)(_n1##x,y,_n1##z,v)), \ 307.10765 + (I[228] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.10766 + (I[235] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.10767 + (I[242] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.10768 + (I[249] = (img)(_n1##x,_p3##y,_n2##z,v)), \ 307.10769 + (I[256] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.10770 + (I[263] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.10771 + (I[270] = (img)(_n1##x,y,_n2##z,v)), \ 307.10772 + (I[277] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.10773 + (I[284] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.10774 + (I[291] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.10775 + (I[298] = (img)(_n1##x,_p3##y,_n3##z,v)), \ 307.10776 + (I[305] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.10777 + (I[312] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.10778 + (I[319] = (img)(_n1##x,y,_n3##z,v)), \ 307.10779 + (I[326] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.10780 + (I[333] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.10781 + (I[340] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.10782 + (I[5] = (img)(_n2##x,_p3##y,_p3##z,v)), \ 307.10783 + (I[12] = (img)(_n2##x,_p2##y,_p3##z,v)), \ 307.10784 + (I[19] = (img)(_n2##x,_p1##y,_p3##z,v)), \ 307.10785 + (I[26] = (img)(_n2##x,y,_p3##z,v)), \ 307.10786 + (I[33] = (img)(_n2##x,_n1##y,_p3##z,v)), \ 307.10787 + (I[40] = (img)(_n2##x,_n2##y,_p3##z,v)), \ 307.10788 + (I[47] = (img)(_n2##x,_n3##y,_p3##z,v)), \ 307.10789 + (I[54] = (img)(_n2##x,_p3##y,_p2##z,v)), \ 307.10790 + (I[61] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.10791 + (I[68] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.10792 + (I[75] = (img)(_n2##x,y,_p2##z,v)), \ 307.10793 + (I[82] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.10794 + (I[89] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.10795 + (I[96] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.10796 + (I[103] = (img)(_n2##x,_p3##y,_p1##z,v)), \ 307.10797 + (I[110] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.10798 + (I[117] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.10799 + (I[124] = (img)(_n2##x,y,_p1##z,v)), \ 307.10800 + (I[131] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.10801 + (I[138] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.10802 + (I[145] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.10803 + (I[152] = (img)(_n2##x,_p3##y,z,v)), \ 307.10804 + (I[159] = (img)(_n2##x,_p2##y,z,v)), \ 307.10805 + (I[166] = (img)(_n2##x,_p1##y,z,v)), \ 307.10806 + (I[173] = (img)(_n2##x,y,z,v)), \ 307.10807 + (I[180] = (img)(_n2##x,_n1##y,z,v)), \ 307.10808 + (I[187] = (img)(_n2##x,_n2##y,z,v)), \ 307.10809 + (I[194] = (img)(_n2##x,_n3##y,z,v)), \ 307.10810 + (I[201] = (img)(_n2##x,_p3##y,_n1##z,v)), \ 307.10811 + (I[208] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.10812 + (I[215] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.10813 + (I[222] = (img)(_n2##x,y,_n1##z,v)), \ 307.10814 + (I[229] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.10815 + (I[236] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.10816 + (I[243] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.10817 + (I[250] = (img)(_n2##x,_p3##y,_n2##z,v)), \ 307.10818 + (I[257] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.10819 + (I[264] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.10820 + (I[271] = (img)(_n2##x,y,_n2##z,v)), \ 307.10821 + (I[278] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.10822 + (I[285] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.10823 + (I[292] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.10824 + (I[299] = (img)(_n2##x,_p3##y,_n3##z,v)), \ 307.10825 + (I[306] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.10826 + (I[313] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.10827 + (I[320] = (img)(_n2##x,y,_n3##z,v)), \ 307.10828 + (I[327] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.10829 + (I[334] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.10830 + (I[341] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.10831 + 3>=((img).width)?(int)((img).width)-1:3); \ 307.10832 + (_n3##x<(int)((img).width) && ( \ 307.10833 + (I[6] = (img)(_n3##x,_p3##y,_p3##z,v)), \ 307.10834 + (I[13] = (img)(_n3##x,_p2##y,_p3##z,v)), \ 307.10835 + (I[20] = (img)(_n3##x,_p1##y,_p3##z,v)), \ 307.10836 + (I[27] = (img)(_n3##x,y,_p3##z,v)), \ 307.10837 + (I[34] = (img)(_n3##x,_n1##y,_p3##z,v)), \ 307.10838 + (I[41] = (img)(_n3##x,_n2##y,_p3##z,v)), \ 307.10839 + (I[48] = (img)(_n3##x,_n3##y,_p3##z,v)), \ 307.10840 + (I[55] = (img)(_n3##x,_p3##y,_p2##z,v)), \ 307.10841 + (I[62] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.10842 + (I[69] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.10843 + (I[76] = (img)(_n3##x,y,_p2##z,v)), \ 307.10844 + (I[83] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.10845 + (I[90] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.10846 + (I[97] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.10847 + (I[104] = (img)(_n3##x,_p3##y,_p1##z,v)), \ 307.10848 + (I[111] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.10849 + (I[118] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.10850 + (I[125] = (img)(_n3##x,y,_p1##z,v)), \ 307.10851 + (I[132] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.10852 + (I[139] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.10853 + (I[146] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.10854 + (I[153] = (img)(_n3##x,_p3##y,z,v)), \ 307.10855 + (I[160] = (img)(_n3##x,_p2##y,z,v)), \ 307.10856 + (I[167] = (img)(_n3##x,_p1##y,z,v)), \ 307.10857 + (I[174] = (img)(_n3##x,y,z,v)), \ 307.10858 + (I[181] = (img)(_n3##x,_n1##y,z,v)), \ 307.10859 + (I[188] = (img)(_n3##x,_n2##y,z,v)), \ 307.10860 + (I[195] = (img)(_n3##x,_n3##y,z,v)), \ 307.10861 + (I[202] = (img)(_n3##x,_p3##y,_n1##z,v)), \ 307.10862 + (I[209] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.10863 + (I[216] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.10864 + (I[223] = (img)(_n3##x,y,_n1##z,v)), \ 307.10865 + (I[230] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.10866 + (I[237] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.10867 + (I[244] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.10868 + (I[251] = (img)(_n3##x,_p3##y,_n2##z,v)), \ 307.10869 + (I[258] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.10870 + (I[265] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.10871 + (I[272] = (img)(_n3##x,y,_n2##z,v)), \ 307.10872 + (I[279] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.10873 + (I[286] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.10874 + (I[293] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.10875 + (I[300] = (img)(_n3##x,_p3##y,_n3##z,v)), \ 307.10876 + (I[307] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.10877 + (I[314] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.10878 + (I[321] = (img)(_n3##x,y,_n3##z,v)), \ 307.10879 + (I[328] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.10880 + (I[335] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.10881 + (I[342] = (img)(_n3##x,_n3##y,_n3##z,v)),1)) || \ 307.10882 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x); \ 307.10883 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], \ 307.10884 + I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 307.10885 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 307.10886 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.10887 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 307.10888 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.10889 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], \ 307.10890 + I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.10891 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 307.10892 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.10893 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], \ 307.10894 + I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.10895 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], \ 307.10896 + I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], \ 307.10897 + I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.10898 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.10899 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], \ 307.10900 + I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.10901 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], \ 307.10902 + I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.10903 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], \ 307.10904 + I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.10905 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], \ 307.10906 + I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.10907 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], \ 307.10908 + I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], \ 307.10909 + I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], \ 307.10910 + I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], \ 307.10911 + I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], \ 307.10912 + I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.10913 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], \ 307.10914 + I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.10915 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], \ 307.10916 + I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], \ 307.10917 + I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], \ 307.10918 + I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.10919 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], \ 307.10920 + I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], \ 307.10921 + I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], \ 307.10922 + I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.10923 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], \ 307.10924 + I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], \ 307.10925 + I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], \ 307.10926 + I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], \ 307.10927 + I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], \ 307.10928 + I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], \ 307.10929 + I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], \ 307.10930 + I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.10931 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], \ 307.10932 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 307.10933 + 307.10934 +#define cimg_for_in7x7x7(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 307.10935 + cimg_for_in7((img).depth,z0,z1,z) cimg_for_in7((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.10936 + _p3##x = x-3<0?0:x-3, \ 307.10937 + _p2##x = x-2<0?0:x-2, \ 307.10938 + _p1##x = x-1<0?0:x-1, \ 307.10939 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.10940 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.10941 + _n3##x = (int)( \ 307.10942 + (I[0] = (img)(_p3##x,_p3##y,_p3##z,v)), \ 307.10943 + (I[7] = (img)(_p3##x,_p2##y,_p3##z,v)), \ 307.10944 + (I[14] = (img)(_p3##x,_p1##y,_p3##z,v)), \ 307.10945 + (I[21] = (img)(_p3##x,y,_p3##z,v)), \ 307.10946 + (I[28] = (img)(_p3##x,_n1##y,_p3##z,v)), \ 307.10947 + (I[35] = (img)(_p3##x,_n2##y,_p3##z,v)), \ 307.10948 + (I[42] = (img)(_p3##x,_n3##y,_p3##z,v)), \ 307.10949 + (I[49] = (img)(_p3##x,_p3##y,_p2##z,v)), \ 307.10950 + (I[56] = (img)(_p3##x,_p2##y,_p2##z,v)), \ 307.10951 + (I[63] = (img)(_p3##x,_p1##y,_p2##z,v)), \ 307.10952 + (I[70] = (img)(_p3##x,y,_p2##z,v)), \ 307.10953 + (I[77] = (img)(_p3##x,_n1##y,_p2##z,v)), \ 307.10954 + (I[84] = (img)(_p3##x,_n2##y,_p2##z,v)), \ 307.10955 + (I[91] = (img)(_p3##x,_n3##y,_p2##z,v)), \ 307.10956 + (I[98] = (img)(_p3##x,_p3##y,_p1##z,v)), \ 307.10957 + (I[105] = (img)(_p3##x,_p2##y,_p1##z,v)), \ 307.10958 + (I[112] = (img)(_p3##x,_p1##y,_p1##z,v)), \ 307.10959 + (I[119] = (img)(_p3##x,y,_p1##z,v)), \ 307.10960 + (I[126] = (img)(_p3##x,_n1##y,_p1##z,v)), \ 307.10961 + (I[133] = (img)(_p3##x,_n2##y,_p1##z,v)), \ 307.10962 + (I[140] = (img)(_p3##x,_n3##y,_p1##z,v)), \ 307.10963 + (I[147] = (img)(_p3##x,_p3##y,z,v)), \ 307.10964 + (I[154] = (img)(_p3##x,_p2##y,z,v)), \ 307.10965 + (I[161] = (img)(_p3##x,_p1##y,z,v)), \ 307.10966 + (I[168] = (img)(_p3##x,y,z,v)), \ 307.10967 + (I[175] = (img)(_p3##x,_n1##y,z,v)), \ 307.10968 + (I[182] = (img)(_p3##x,_n2##y,z,v)), \ 307.10969 + (I[189] = (img)(_p3##x,_n3##y,z,v)), \ 307.10970 + (I[196] = (img)(_p3##x,_p3##y,_n1##z,v)), \ 307.10971 + (I[203] = (img)(_p3##x,_p2##y,_n1##z,v)), \ 307.10972 + (I[210] = (img)(_p3##x,_p1##y,_n1##z,v)), \ 307.10973 + (I[217] = (img)(_p3##x,y,_n1##z,v)), \ 307.10974 + (I[224] = (img)(_p3##x,_n1##y,_n1##z,v)), \ 307.10975 + (I[231] = (img)(_p3##x,_n2##y,_n1##z,v)), \ 307.10976 + (I[238] = (img)(_p3##x,_n3##y,_n1##z,v)), \ 307.10977 + (I[245] = (img)(_p3##x,_p3##y,_n2##z,v)), \ 307.10978 + (I[252] = (img)(_p3##x,_p2##y,_n2##z,v)), \ 307.10979 + (I[259] = (img)(_p3##x,_p1##y,_n2##z,v)), \ 307.10980 + (I[266] = (img)(_p3##x,y,_n2##z,v)), \ 307.10981 + (I[273] = (img)(_p3##x,_n1##y,_n2##z,v)), \ 307.10982 + (I[280] = (img)(_p3##x,_n2##y,_n2##z,v)), \ 307.10983 + (I[287] = (img)(_p3##x,_n3##y,_n2##z,v)), \ 307.10984 + (I[294] = (img)(_p3##x,_p3##y,_n3##z,v)), \ 307.10985 + (I[301] = (img)(_p3##x,_p2##y,_n3##z,v)), \ 307.10986 + (I[308] = (img)(_p3##x,_p1##y,_n3##z,v)), \ 307.10987 + (I[315] = (img)(_p3##x,y,_n3##z,v)), \ 307.10988 + (I[322] = (img)(_p3##x,_n1##y,_n3##z,v)), \ 307.10989 + (I[329] = (img)(_p3##x,_n2##y,_n3##z,v)), \ 307.10990 + (I[336] = (img)(_p3##x,_n3##y,_n3##z,v)), \ 307.10991 + (I[1] = (img)(_p2##x,_p3##y,_p3##z,v)), \ 307.10992 + (I[8] = (img)(_p2##x,_p2##y,_p3##z,v)), \ 307.10993 + (I[15] = (img)(_p2##x,_p1##y,_p3##z,v)), \ 307.10994 + (I[22] = (img)(_p2##x,y,_p3##z,v)), \ 307.10995 + (I[29] = (img)(_p2##x,_n1##y,_p3##z,v)), \ 307.10996 + (I[36] = (img)(_p2##x,_n2##y,_p3##z,v)), \ 307.10997 + (I[43] = (img)(_p2##x,_n3##y,_p3##z,v)), \ 307.10998 + (I[50] = (img)(_p2##x,_p3##y,_p2##z,v)), \ 307.10999 + (I[57] = (img)(_p2##x,_p2##y,_p2##z,v)), \ 307.11000 + (I[64] = (img)(_p2##x,_p1##y,_p2##z,v)), \ 307.11001 + (I[71] = (img)(_p2##x,y,_p2##z,v)), \ 307.11002 + (I[78] = (img)(_p2##x,_n1##y,_p2##z,v)), \ 307.11003 + (I[85] = (img)(_p2##x,_n2##y,_p2##z,v)), \ 307.11004 + (I[92] = (img)(_p2##x,_n3##y,_p2##z,v)), \ 307.11005 + (I[99] = (img)(_p2##x,_p3##y,_p1##z,v)), \ 307.11006 + (I[106] = (img)(_p2##x,_p2##y,_p1##z,v)), \ 307.11007 + (I[113] = (img)(_p2##x,_p1##y,_p1##z,v)), \ 307.11008 + (I[120] = (img)(_p2##x,y,_p1##z,v)), \ 307.11009 + (I[127] = (img)(_p2##x,_n1##y,_p1##z,v)), \ 307.11010 + (I[134] = (img)(_p2##x,_n2##y,_p1##z,v)), \ 307.11011 + (I[141] = (img)(_p2##x,_n3##y,_p1##z,v)), \ 307.11012 + (I[148] = (img)(_p2##x,_p3##y,z,v)), \ 307.11013 + (I[155] = (img)(_p2##x,_p2##y,z,v)), \ 307.11014 + (I[162] = (img)(_p2##x,_p1##y,z,v)), \ 307.11015 + (I[169] = (img)(_p2##x,y,z,v)), \ 307.11016 + (I[176] = (img)(_p2##x,_n1##y,z,v)), \ 307.11017 + (I[183] = (img)(_p2##x,_n2##y,z,v)), \ 307.11018 + (I[190] = (img)(_p2##x,_n3##y,z,v)), \ 307.11019 + (I[197] = (img)(_p2##x,_p3##y,_n1##z,v)), \ 307.11020 + (I[204] = (img)(_p2##x,_p2##y,_n1##z,v)), \ 307.11021 + (I[211] = (img)(_p2##x,_p1##y,_n1##z,v)), \ 307.11022 + (I[218] = (img)(_p2##x,y,_n1##z,v)), \ 307.11023 + (I[225] = (img)(_p2##x,_n1##y,_n1##z,v)), \ 307.11024 + (I[232] = (img)(_p2##x,_n2##y,_n1##z,v)), \ 307.11025 + (I[239] = (img)(_p2##x,_n3##y,_n1##z,v)), \ 307.11026 + (I[246] = (img)(_p2##x,_p3##y,_n2##z,v)), \ 307.11027 + (I[253] = (img)(_p2##x,_p2##y,_n2##z,v)), \ 307.11028 + (I[260] = (img)(_p2##x,_p1##y,_n2##z,v)), \ 307.11029 + (I[267] = (img)(_p2##x,y,_n2##z,v)), \ 307.11030 + (I[274] = (img)(_p2##x,_n1##y,_n2##z,v)), \ 307.11031 + (I[281] = (img)(_p2##x,_n2##y,_n2##z,v)), \ 307.11032 + (I[288] = (img)(_p2##x,_n3##y,_n2##z,v)), \ 307.11033 + (I[295] = (img)(_p2##x,_p3##y,_n3##z,v)), \ 307.11034 + (I[302] = (img)(_p2##x,_p2##y,_n3##z,v)), \ 307.11035 + (I[309] = (img)(_p2##x,_p1##y,_n3##z,v)), \ 307.11036 + (I[316] = (img)(_p2##x,y,_n3##z,v)), \ 307.11037 + (I[323] = (img)(_p2##x,_n1##y,_n3##z,v)), \ 307.11038 + (I[330] = (img)(_p2##x,_n2##y,_n3##z,v)), \ 307.11039 + (I[337] = (img)(_p2##x,_n3##y,_n3##z,v)), \ 307.11040 + (I[2] = (img)(_p1##x,_p3##y,_p3##z,v)), \ 307.11041 + (I[9] = (img)(_p1##x,_p2##y,_p3##z,v)), \ 307.11042 + (I[16] = (img)(_p1##x,_p1##y,_p3##z,v)), \ 307.11043 + (I[23] = (img)(_p1##x,y,_p3##z,v)), \ 307.11044 + (I[30] = (img)(_p1##x,_n1##y,_p3##z,v)), \ 307.11045 + (I[37] = (img)(_p1##x,_n2##y,_p3##z,v)), \ 307.11046 + (I[44] = (img)(_p1##x,_n3##y,_p3##z,v)), \ 307.11047 + (I[51] = (img)(_p1##x,_p3##y,_p2##z,v)), \ 307.11048 + (I[58] = (img)(_p1##x,_p2##y,_p2##z,v)), \ 307.11049 + (I[65] = (img)(_p1##x,_p1##y,_p2##z,v)), \ 307.11050 + (I[72] = (img)(_p1##x,y,_p2##z,v)), \ 307.11051 + (I[79] = (img)(_p1##x,_n1##y,_p2##z,v)), \ 307.11052 + (I[86] = (img)(_p1##x,_n2##y,_p2##z,v)), \ 307.11053 + (I[93] = (img)(_p1##x,_n3##y,_p2##z,v)), \ 307.11054 + (I[100] = (img)(_p1##x,_p3##y,_p1##z,v)), \ 307.11055 + (I[107] = (img)(_p1##x,_p2##y,_p1##z,v)), \ 307.11056 + (I[114] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 307.11057 + (I[121] = (img)(_p1##x,y,_p1##z,v)), \ 307.11058 + (I[128] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 307.11059 + (I[135] = (img)(_p1##x,_n2##y,_p1##z,v)), \ 307.11060 + (I[142] = (img)(_p1##x,_n3##y,_p1##z,v)), \ 307.11061 + (I[149] = (img)(_p1##x,_p3##y,z,v)), \ 307.11062 + (I[156] = (img)(_p1##x,_p2##y,z,v)), \ 307.11063 + (I[163] = (img)(_p1##x,_p1##y,z,v)), \ 307.11064 + (I[170] = (img)(_p1##x,y,z,v)), \ 307.11065 + (I[177] = (img)(_p1##x,_n1##y,z,v)), \ 307.11066 + (I[184] = (img)(_p1##x,_n2##y,z,v)), \ 307.11067 + (I[191] = (img)(_p1##x,_n3##y,z,v)), \ 307.11068 + (I[198] = (img)(_p1##x,_p3##y,_n1##z,v)), \ 307.11069 + (I[205] = (img)(_p1##x,_p2##y,_n1##z,v)), \ 307.11070 + (I[212] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 307.11071 + (I[219] = (img)(_p1##x,y,_n1##z,v)), \ 307.11072 + (I[226] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 307.11073 + (I[233] = (img)(_p1##x,_n2##y,_n1##z,v)), \ 307.11074 + (I[240] = (img)(_p1##x,_n3##y,_n1##z,v)), \ 307.11075 + (I[247] = (img)(_p1##x,_p3##y,_n2##z,v)), \ 307.11076 + (I[254] = (img)(_p1##x,_p2##y,_n2##z,v)), \ 307.11077 + (I[261] = (img)(_p1##x,_p1##y,_n2##z,v)), \ 307.11078 + (I[268] = (img)(_p1##x,y,_n2##z,v)), \ 307.11079 + (I[275] = (img)(_p1##x,_n1##y,_n2##z,v)), \ 307.11080 + (I[282] = (img)(_p1##x,_n2##y,_n2##z,v)), \ 307.11081 + (I[289] = (img)(_p1##x,_n3##y,_n2##z,v)), \ 307.11082 + (I[296] = (img)(_p1##x,_p3##y,_n3##z,v)), \ 307.11083 + (I[303] = (img)(_p1##x,_p2##y,_n3##z,v)), \ 307.11084 + (I[310] = (img)(_p1##x,_p1##y,_n3##z,v)), \ 307.11085 + (I[317] = (img)(_p1##x,y,_n3##z,v)), \ 307.11086 + (I[324] = (img)(_p1##x,_n1##y,_n3##z,v)), \ 307.11087 + (I[331] = (img)(_p1##x,_n2##y,_n3##z,v)), \ 307.11088 + (I[338] = (img)(_p1##x,_n3##y,_n3##z,v)), \ 307.11089 + (I[3] = (img)(x,_p3##y,_p3##z,v)), \ 307.11090 + (I[10] = (img)(x,_p2##y,_p3##z,v)), \ 307.11091 + (I[17] = (img)(x,_p1##y,_p3##z,v)), \ 307.11092 + (I[24] = (img)(x,y,_p3##z,v)), \ 307.11093 + (I[31] = (img)(x,_n1##y,_p3##z,v)), \ 307.11094 + (I[38] = (img)(x,_n2##y,_p3##z,v)), \ 307.11095 + (I[45] = (img)(x,_n3##y,_p3##z,v)), \ 307.11096 + (I[52] = (img)(x,_p3##y,_p2##z,v)), \ 307.11097 + (I[59] = (img)(x,_p2##y,_p2##z,v)), \ 307.11098 + (I[66] = (img)(x,_p1##y,_p2##z,v)), \ 307.11099 + (I[73] = (img)(x,y,_p2##z,v)), \ 307.11100 + (I[80] = (img)(x,_n1##y,_p2##z,v)), \ 307.11101 + (I[87] = (img)(x,_n2##y,_p2##z,v)), \ 307.11102 + (I[94] = (img)(x,_n3##y,_p2##z,v)), \ 307.11103 + (I[101] = (img)(x,_p3##y,_p1##z,v)), \ 307.11104 + (I[108] = (img)(x,_p2##y,_p1##z,v)), \ 307.11105 + (I[115] = (img)(x,_p1##y,_p1##z,v)), \ 307.11106 + (I[122] = (img)(x,y,_p1##z,v)), \ 307.11107 + (I[129] = (img)(x,_n1##y,_p1##z,v)), \ 307.11108 + (I[136] = (img)(x,_n2##y,_p1##z,v)), \ 307.11109 + (I[143] = (img)(x,_n3##y,_p1##z,v)), \ 307.11110 + (I[150] = (img)(x,_p3##y,z,v)), \ 307.11111 + (I[157] = (img)(x,_p2##y,z,v)), \ 307.11112 + (I[164] = (img)(x,_p1##y,z,v)), \ 307.11113 + (I[171] = (img)(x,y,z,v)), \ 307.11114 + (I[178] = (img)(x,_n1##y,z,v)), \ 307.11115 + (I[185] = (img)(x,_n2##y,z,v)), \ 307.11116 + (I[192] = (img)(x,_n3##y,z,v)), \ 307.11117 + (I[199] = (img)(x,_p3##y,_n1##z,v)), \ 307.11118 + (I[206] = (img)(x,_p2##y,_n1##z,v)), \ 307.11119 + (I[213] = (img)(x,_p1##y,_n1##z,v)), \ 307.11120 + (I[220] = (img)(x,y,_n1##z,v)), \ 307.11121 + (I[227] = (img)(x,_n1##y,_n1##z,v)), \ 307.11122 + (I[234] = (img)(x,_n2##y,_n1##z,v)), \ 307.11123 + (I[241] = (img)(x,_n3##y,_n1##z,v)), \ 307.11124 + (I[248] = (img)(x,_p3##y,_n2##z,v)), \ 307.11125 + (I[255] = (img)(x,_p2##y,_n2##z,v)), \ 307.11126 + (I[262] = (img)(x,_p1##y,_n2##z,v)), \ 307.11127 + (I[269] = (img)(x,y,_n2##z,v)), \ 307.11128 + (I[276] = (img)(x,_n1##y,_n2##z,v)), \ 307.11129 + (I[283] = (img)(x,_n2##y,_n2##z,v)), \ 307.11130 + (I[290] = (img)(x,_n3##y,_n2##z,v)), \ 307.11131 + (I[297] = (img)(x,_p3##y,_n3##z,v)), \ 307.11132 + (I[304] = (img)(x,_p2##y,_n3##z,v)), \ 307.11133 + (I[311] = (img)(x,_p1##y,_n3##z,v)), \ 307.11134 + (I[318] = (img)(x,y,_n3##z,v)), \ 307.11135 + (I[325] = (img)(x,_n1##y,_n3##z,v)), \ 307.11136 + (I[332] = (img)(x,_n2##y,_n3##z,v)), \ 307.11137 + (I[339] = (img)(x,_n3##y,_n3##z,v)), \ 307.11138 + (I[4] = (img)(_n1##x,_p3##y,_p3##z,v)), \ 307.11139 + (I[11] = (img)(_n1##x,_p2##y,_p3##z,v)), \ 307.11140 + (I[18] = (img)(_n1##x,_p1##y,_p3##z,v)), \ 307.11141 + (I[25] = (img)(_n1##x,y,_p3##z,v)), \ 307.11142 + (I[32] = (img)(_n1##x,_n1##y,_p3##z,v)), \ 307.11143 + (I[39] = (img)(_n1##x,_n2##y,_p3##z,v)), \ 307.11144 + (I[46] = (img)(_n1##x,_n3##y,_p3##z,v)), \ 307.11145 + (I[53] = (img)(_n1##x,_p3##y,_p2##z,v)), \ 307.11146 + (I[60] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.11147 + (I[67] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.11148 + (I[74] = (img)(_n1##x,y,_p2##z,v)), \ 307.11149 + (I[81] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.11150 + (I[88] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.11151 + (I[95] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.11152 + (I[102] = (img)(_n1##x,_p3##y,_p1##z,v)), \ 307.11153 + (I[109] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.11154 + (I[116] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.11155 + (I[123] = (img)(_n1##x,y,_p1##z,v)), \ 307.11156 + (I[130] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.11157 + (I[137] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.11158 + (I[144] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.11159 + (I[151] = (img)(_n1##x,_p3##y,z,v)), \ 307.11160 + (I[158] = (img)(_n1##x,_p2##y,z,v)), \ 307.11161 + (I[165] = (img)(_n1##x,_p1##y,z,v)), \ 307.11162 + (I[172] = (img)(_n1##x,y,z,v)), \ 307.11163 + (I[179] = (img)(_n1##x,_n1##y,z,v)), \ 307.11164 + (I[186] = (img)(_n1##x,_n2##y,z,v)), \ 307.11165 + (I[193] = (img)(_n1##x,_n3##y,z,v)), \ 307.11166 + (I[200] = (img)(_n1##x,_p3##y,_n1##z,v)), \ 307.11167 + (I[207] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.11168 + (I[214] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.11169 + (I[221] = (img)(_n1##x,y,_n1##z,v)), \ 307.11170 + (I[228] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.11171 + (I[235] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.11172 + (I[242] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.11173 + (I[249] = (img)(_n1##x,_p3##y,_n2##z,v)), \ 307.11174 + (I[256] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.11175 + (I[263] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.11176 + (I[270] = (img)(_n1##x,y,_n2##z,v)), \ 307.11177 + (I[277] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.11178 + (I[284] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.11179 + (I[291] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.11180 + (I[298] = (img)(_n1##x,_p3##y,_n3##z,v)), \ 307.11181 + (I[305] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.11182 + (I[312] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.11183 + (I[319] = (img)(_n1##x,y,_n3##z,v)), \ 307.11184 + (I[326] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.11185 + (I[333] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.11186 + (I[340] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.11187 + (I[5] = (img)(_n2##x,_p3##y,_p3##z,v)), \ 307.11188 + (I[12] = (img)(_n2##x,_p2##y,_p3##z,v)), \ 307.11189 + (I[19] = (img)(_n2##x,_p1##y,_p3##z,v)), \ 307.11190 + (I[26] = (img)(_n2##x,y,_p3##z,v)), \ 307.11191 + (I[33] = (img)(_n2##x,_n1##y,_p3##z,v)), \ 307.11192 + (I[40] = (img)(_n2##x,_n2##y,_p3##z,v)), \ 307.11193 + (I[47] = (img)(_n2##x,_n3##y,_p3##z,v)), \ 307.11194 + (I[54] = (img)(_n2##x,_p3##y,_p2##z,v)), \ 307.11195 + (I[61] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.11196 + (I[68] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.11197 + (I[75] = (img)(_n2##x,y,_p2##z,v)), \ 307.11198 + (I[82] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.11199 + (I[89] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.11200 + (I[96] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.11201 + (I[103] = (img)(_n2##x,_p3##y,_p1##z,v)), \ 307.11202 + (I[110] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.11203 + (I[117] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.11204 + (I[124] = (img)(_n2##x,y,_p1##z,v)), \ 307.11205 + (I[131] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.11206 + (I[138] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.11207 + (I[145] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.11208 + (I[152] = (img)(_n2##x,_p3##y,z,v)), \ 307.11209 + (I[159] = (img)(_n2##x,_p2##y,z,v)), \ 307.11210 + (I[166] = (img)(_n2##x,_p1##y,z,v)), \ 307.11211 + (I[173] = (img)(_n2##x,y,z,v)), \ 307.11212 + (I[180] = (img)(_n2##x,_n1##y,z,v)), \ 307.11213 + (I[187] = (img)(_n2##x,_n2##y,z,v)), \ 307.11214 + (I[194] = (img)(_n2##x,_n3##y,z,v)), \ 307.11215 + (I[201] = (img)(_n2##x,_p3##y,_n1##z,v)), \ 307.11216 + (I[208] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.11217 + (I[215] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.11218 + (I[222] = (img)(_n2##x,y,_n1##z,v)), \ 307.11219 + (I[229] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.11220 + (I[236] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.11221 + (I[243] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.11222 + (I[250] = (img)(_n2##x,_p3##y,_n2##z,v)), \ 307.11223 + (I[257] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.11224 + (I[264] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.11225 + (I[271] = (img)(_n2##x,y,_n2##z,v)), \ 307.11226 + (I[278] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.11227 + (I[285] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.11228 + (I[292] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.11229 + (I[299] = (img)(_n2##x,_p3##y,_n3##z,v)), \ 307.11230 + (I[306] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.11231 + (I[313] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.11232 + (I[320] = (img)(_n2##x,y,_n3##z,v)), \ 307.11233 + (I[327] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.11234 + (I[334] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.11235 + (I[341] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.11236 + x+3>=(int)((img).width)?(int)((img).width)-1:x+3); \ 307.11237 + x<=(int)(x1) && ((_n3##x<(int)((img).width) && ( \ 307.11238 + (I[6] = (img)(_n3##x,_p3##y,_p3##z,v)), \ 307.11239 + (I[13] = (img)(_n3##x,_p2##y,_p3##z,v)), \ 307.11240 + (I[20] = (img)(_n3##x,_p1##y,_p3##z,v)), \ 307.11241 + (I[27] = (img)(_n3##x,y,_p3##z,v)), \ 307.11242 + (I[34] = (img)(_n3##x,_n1##y,_p3##z,v)), \ 307.11243 + (I[41] = (img)(_n3##x,_n2##y,_p3##z,v)), \ 307.11244 + (I[48] = (img)(_n3##x,_n3##y,_p3##z,v)), \ 307.11245 + (I[55] = (img)(_n3##x,_p3##y,_p2##z,v)), \ 307.11246 + (I[62] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.11247 + (I[69] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.11248 + (I[76] = (img)(_n3##x,y,_p2##z,v)), \ 307.11249 + (I[83] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.11250 + (I[90] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.11251 + (I[97] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.11252 + (I[104] = (img)(_n3##x,_p3##y,_p1##z,v)), \ 307.11253 + (I[111] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.11254 + (I[118] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.11255 + (I[125] = (img)(_n3##x,y,_p1##z,v)), \ 307.11256 + (I[132] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.11257 + (I[139] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.11258 + (I[146] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.11259 + (I[153] = (img)(_n3##x,_p3##y,z,v)), \ 307.11260 + (I[160] = (img)(_n3##x,_p2##y,z,v)), \ 307.11261 + (I[167] = (img)(_n3##x,_p1##y,z,v)), \ 307.11262 + (I[174] = (img)(_n3##x,y,z,v)), \ 307.11263 + (I[181] = (img)(_n3##x,_n1##y,z,v)), \ 307.11264 + (I[188] = (img)(_n3##x,_n2##y,z,v)), \ 307.11265 + (I[195] = (img)(_n3##x,_n3##y,z,v)), \ 307.11266 + (I[202] = (img)(_n3##x,_p3##y,_n1##z,v)), \ 307.11267 + (I[209] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.11268 + (I[216] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.11269 + (I[223] = (img)(_n3##x,y,_n1##z,v)), \ 307.11270 + (I[230] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.11271 + (I[237] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.11272 + (I[244] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.11273 + (I[251] = (img)(_n3##x,_p3##y,_n2##z,v)), \ 307.11274 + (I[258] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.11275 + (I[265] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.11276 + (I[272] = (img)(_n3##x,y,_n2##z,v)), \ 307.11277 + (I[279] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.11278 + (I[286] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.11279 + (I[293] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.11280 + (I[300] = (img)(_n3##x,_p3##y,_n3##z,v)), \ 307.11281 + (I[307] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.11282 + (I[314] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.11283 + (I[321] = (img)(_n3##x,y,_n3##z,v)), \ 307.11284 + (I[328] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.11285 + (I[335] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.11286 + (I[342] = (img)(_n3##x,_n3##y,_n3##z,v)),1)) || \ 307.11287 + _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n3##x = _n2##x = --_n1##x)); \ 307.11288 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], \ 307.11289 + I[7] = I[8], I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], \ 307.11290 + I[14] = I[15], I[15] = I[16], I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], \ 307.11291 + I[21] = I[22], I[22] = I[23], I[23] = I[24], I[24] = I[25], I[25] = I[26], I[26] = I[27], \ 307.11292 + I[28] = I[29], I[29] = I[30], I[30] = I[31], I[31] = I[32], I[32] = I[33], I[33] = I[34], \ 307.11293 + I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], I[39] = I[40], I[40] = I[41], \ 307.11294 + I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], I[47] = I[48], \ 307.11295 + I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.11296 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], \ 307.11297 + I[63] = I[64], I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], \ 307.11298 + I[70] = I[71], I[71] = I[72], I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], \ 307.11299 + I[77] = I[78], I[78] = I[79], I[79] = I[80], I[80] = I[81], I[81] = I[82], I[82] = I[83], \ 307.11300 + I[84] = I[85], I[85] = I[86], I[86] = I[87], I[87] = I[88], I[88] = I[89], I[89] = I[90], \ 307.11301 + I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], I[95] = I[96], I[96] = I[97], \ 307.11302 + I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], I[103] = I[104], \ 307.11303 + I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.11304 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], \ 307.11305 + I[119] = I[120], I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], \ 307.11306 + I[126] = I[127], I[127] = I[128], I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], \ 307.11307 + I[133] = I[134], I[134] = I[135], I[135] = I[136], I[136] = I[137], I[137] = I[138], I[138] = I[139], \ 307.11308 + I[140] = I[141], I[141] = I[142], I[142] = I[143], I[143] = I[144], I[144] = I[145], I[145] = I[146], \ 307.11309 + I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], I[151] = I[152], I[152] = I[153], \ 307.11310 + I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], I[159] = I[160], \ 307.11311 + I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.11312 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], \ 307.11313 + I[175] = I[176], I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], \ 307.11314 + I[182] = I[183], I[183] = I[184], I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], \ 307.11315 + I[189] = I[190], I[190] = I[191], I[191] = I[192], I[192] = I[193], I[193] = I[194], I[194] = I[195], \ 307.11316 + I[196] = I[197], I[197] = I[198], I[198] = I[199], I[199] = I[200], I[200] = I[201], I[201] = I[202], \ 307.11317 + I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], I[207] = I[208], I[208] = I[209], \ 307.11318 + I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], I[215] = I[216], \ 307.11319 + I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.11320 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], \ 307.11321 + I[231] = I[232], I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], \ 307.11322 + I[238] = I[239], I[239] = I[240], I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], \ 307.11323 + I[245] = I[246], I[246] = I[247], I[247] = I[248], I[248] = I[249], I[249] = I[250], I[250] = I[251], \ 307.11324 + I[252] = I[253], I[253] = I[254], I[254] = I[255], I[255] = I[256], I[256] = I[257], I[257] = I[258], \ 307.11325 + I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], I[263] = I[264], I[264] = I[265], \ 307.11326 + I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], I[271] = I[272], \ 307.11327 + I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.11328 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], \ 307.11329 + I[287] = I[288], I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], \ 307.11330 + I[294] = I[295], I[295] = I[296], I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], \ 307.11331 + I[301] = I[302], I[302] = I[303], I[303] = I[304], I[304] = I[305], I[305] = I[306], I[306] = I[307], \ 307.11332 + I[308] = I[309], I[309] = I[310], I[310] = I[311], I[311] = I[312], I[312] = I[313], I[313] = I[314], \ 307.11333 + I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], I[319] = I[320], I[320] = I[321], \ 307.11334 + I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], I[327] = I[328], \ 307.11335 + I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.11336 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], \ 307.11337 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x) 307.11338 + 307.11339 +#define cimg_get7x7x7(img,x,y,z,v,I) \ 307.11340 + I[0] = (img)(_p3##x,_p3##y,_p3##z,v), I[1] = (img)(_p2##x,_p3##y,_p3##z,v), I[2] = (img)(_p1##x,_p3##y,_p3##z,v), I[3] = (img)(x,_p3##y,_p3##z,v), I[4] = (img)(_n1##x,_p3##y,_p3##z,v), I[5] = (img)(_n2##x,_p3##y,_p3##z,v), I[6] = (img)(_n3##x,_p3##y,_p3##z,v), \ 307.11341 + I[7] = (img)(_p3##x,_p2##y,_p3##z,v), I[8] = (img)(_p2##x,_p2##y,_p3##z,v), I[9] = (img)(_p1##x,_p2##y,_p3##z,v), I[10] = (img)(x,_p2##y,_p3##z,v), I[11] = (img)(_n1##x,_p2##y,_p3##z,v), I[12] = (img)(_n2##x,_p2##y,_p3##z,v), I[13] = (img)(_n3##x,_p2##y,_p3##z,v), \ 307.11342 + I[14] = (img)(_p3##x,_p1##y,_p3##z,v), I[15] = (img)(_p2##x,_p1##y,_p3##z,v), I[16] = (img)(_p1##x,_p1##y,_p3##z,v), I[17] = (img)(x,_p1##y,_p3##z,v), I[18] = (img)(_n1##x,_p1##y,_p3##z,v), I[19] = (img)(_n2##x,_p1##y,_p3##z,v), I[20] = (img)(_n3##x,_p1##y,_p3##z,v), \ 307.11343 + I[21] = (img)(_p3##x,y,_p3##z,v), I[22] = (img)(_p2##x,y,_p3##z,v), I[23] = (img)(_p1##x,y,_p3##z,v), I[24] = (img)(x,y,_p3##z,v), I[25] = (img)(_n1##x,y,_p3##z,v), I[26] = (img)(_n2##x,y,_p3##z,v), I[27] = (img)(_n3##x,y,_p3##z,v), \ 307.11344 + I[28] = (img)(_p3##x,_n1##y,_p3##z,v), I[29] = (img)(_p2##x,_n1##y,_p3##z,v), I[30] = (img)(_p1##x,_n1##y,_p3##z,v), I[31] = (img)(x,_n1##y,_p3##z,v), I[32] = (img)(_n1##x,_n1##y,_p3##z,v), I[33] = (img)(_n2##x,_n1##y,_p3##z,v), I[34] = (img)(_n3##x,_n1##y,_p3##z,v), \ 307.11345 + I[35] = (img)(_p3##x,_n2##y,_p3##z,v), I[36] = (img)(_p2##x,_n2##y,_p3##z,v), I[37] = (img)(_p1##x,_n2##y,_p3##z,v), I[38] = (img)(x,_n2##y,_p3##z,v), I[39] = (img)(_n1##x,_n2##y,_p3##z,v), I[40] = (img)(_n2##x,_n2##y,_p3##z,v), I[41] = (img)(_n3##x,_n2##y,_p3##z,v), \ 307.11346 + I[42] = (img)(_p3##x,_n3##y,_p3##z,v), I[43] = (img)(_p2##x,_n3##y,_p3##z,v), I[44] = (img)(_p1##x,_n3##y,_p3##z,v), I[45] = (img)(x,_n3##y,_p3##z,v), I[46] = (img)(_n1##x,_n3##y,_p3##z,v), I[47] = (img)(_n2##x,_n3##y,_p3##z,v), I[48] = (img)(_n3##x,_n3##y,_p3##z,v), \ 307.11347 + I[49] = (img)(_p3##x,_p3##y,_p2##z,v), I[50] = (img)(_p2##x,_p3##y,_p2##z,v), I[51] = (img)(_p1##x,_p3##y,_p2##z,v), I[52] = (img)(x,_p3##y,_p2##z,v), I[53] = (img)(_n1##x,_p3##y,_p2##z,v), I[54] = (img)(_n2##x,_p3##y,_p2##z,v), I[55] = (img)(_n3##x,_p3##y,_p2##z,v), \ 307.11348 + I[56] = (img)(_p3##x,_p2##y,_p2##z,v), I[57] = (img)(_p2##x,_p2##y,_p2##z,v), I[58] = (img)(_p1##x,_p2##y,_p2##z,v), I[59] = (img)(x,_p2##y,_p2##z,v), I[60] = (img)(_n1##x,_p2##y,_p2##z,v), I[61] = (img)(_n2##x,_p2##y,_p2##z,v), I[62] = (img)(_n3##x,_p2##y,_p2##z,v), \ 307.11349 + I[63] = (img)(_p3##x,_p1##y,_p2##z,v), I[64] = (img)(_p2##x,_p1##y,_p2##z,v), I[65] = (img)(_p1##x,_p1##y,_p2##z,v), I[66] = (img)(x,_p1##y,_p2##z,v), I[67] = (img)(_n1##x,_p1##y,_p2##z,v), I[68] = (img)(_n2##x,_p1##y,_p2##z,v), I[69] = (img)(_n3##x,_p1##y,_p2##z,v), \ 307.11350 + I[70] = (img)(_p3##x,y,_p2##z,v), I[71] = (img)(_p2##x,y,_p2##z,v), I[72] = (img)(_p1##x,y,_p2##z,v), I[73] = (img)(x,y,_p2##z,v), I[74] = (img)(_n1##x,y,_p2##z,v), I[75] = (img)(_n2##x,y,_p2##z,v), I[76] = (img)(_n3##x,y,_p2##z,v), \ 307.11351 + I[77] = (img)(_p3##x,_n1##y,_p2##z,v), I[78] = (img)(_p2##x,_n1##y,_p2##z,v), I[79] = (img)(_p1##x,_n1##y,_p2##z,v), I[80] = (img)(x,_n1##y,_p2##z,v), I[81] = (img)(_n1##x,_n1##y,_p2##z,v), I[82] = (img)(_n2##x,_n1##y,_p2##z,v), I[83] = (img)(_n3##x,_n1##y,_p2##z,v), \ 307.11352 + I[84] = (img)(_p3##x,_n2##y,_p2##z,v), I[85] = (img)(_p2##x,_n2##y,_p2##z,v), I[86] = (img)(_p1##x,_n2##y,_p2##z,v), I[87] = (img)(x,_n2##y,_p2##z,v), I[88] = (img)(_n1##x,_n2##y,_p2##z,v), I[89] = (img)(_n2##x,_n2##y,_p2##z,v), I[90] = (img)(_n3##x,_n2##y,_p2##z,v), \ 307.11353 + I[91] = (img)(_p3##x,_n3##y,_p2##z,v), I[92] = (img)(_p2##x,_n3##y,_p2##z,v), I[93] = (img)(_p1##x,_n3##y,_p2##z,v), I[94] = (img)(x,_n3##y,_p2##z,v), I[95] = (img)(_n1##x,_n3##y,_p2##z,v), I[96] = (img)(_n2##x,_n3##y,_p2##z,v), I[97] = (img)(_n3##x,_n3##y,_p2##z,v), \ 307.11354 + I[98] = (img)(_p3##x,_p3##y,_p1##z,v), I[99] = (img)(_p2##x,_p3##y,_p1##z,v), I[100] = (img)(_p1##x,_p3##y,_p1##z,v), I[101] = (img)(x,_p3##y,_p1##z,v), I[102] = (img)(_n1##x,_p3##y,_p1##z,v), I[103] = (img)(_n2##x,_p3##y,_p1##z,v), I[104] = (img)(_n3##x,_p3##y,_p1##z,v), \ 307.11355 + I[105] = (img)(_p3##x,_p2##y,_p1##z,v), I[106] = (img)(_p2##x,_p2##y,_p1##z,v), I[107] = (img)(_p1##x,_p2##y,_p1##z,v), I[108] = (img)(x,_p2##y,_p1##z,v), I[109] = (img)(_n1##x,_p2##y,_p1##z,v), I[110] = (img)(_n2##x,_p2##y,_p1##z,v), I[111] = (img)(_n3##x,_p2##y,_p1##z,v), \ 307.11356 + I[112] = (img)(_p3##x,_p1##y,_p1##z,v), I[113] = (img)(_p2##x,_p1##y,_p1##z,v), I[114] = (img)(_p1##x,_p1##y,_p1##z,v), I[115] = (img)(x,_p1##y,_p1##z,v), I[116] = (img)(_n1##x,_p1##y,_p1##z,v), I[117] = (img)(_n2##x,_p1##y,_p1##z,v), I[118] = (img)(_n3##x,_p1##y,_p1##z,v), \ 307.11357 + I[119] = (img)(_p3##x,y,_p1##z,v), I[120] = (img)(_p2##x,y,_p1##z,v), I[121] = (img)(_p1##x,y,_p1##z,v), I[122] = (img)(x,y,_p1##z,v), I[123] = (img)(_n1##x,y,_p1##z,v), I[124] = (img)(_n2##x,y,_p1##z,v), I[125] = (img)(_n3##x,y,_p1##z,v), \ 307.11358 + I[126] = (img)(_p3##x,_n1##y,_p1##z,v), I[127] = (img)(_p2##x,_n1##y,_p1##z,v), I[128] = (img)(_p1##x,_n1##y,_p1##z,v), I[129] = (img)(x,_n1##y,_p1##z,v), I[130] = (img)(_n1##x,_n1##y,_p1##z,v), I[131] = (img)(_n2##x,_n1##y,_p1##z,v), I[132] = (img)(_n3##x,_n1##y,_p1##z,v), \ 307.11359 + I[133] = (img)(_p3##x,_n2##y,_p1##z,v), I[134] = (img)(_p2##x,_n2##y,_p1##z,v), I[135] = (img)(_p1##x,_n2##y,_p1##z,v), I[136] = (img)(x,_n2##y,_p1##z,v), I[137] = (img)(_n1##x,_n2##y,_p1##z,v), I[138] = (img)(_n2##x,_n2##y,_p1##z,v), I[139] = (img)(_n3##x,_n2##y,_p1##z,v), \ 307.11360 + I[140] = (img)(_p3##x,_n3##y,_p1##z,v), I[141] = (img)(_p2##x,_n3##y,_p1##z,v), I[142] = (img)(_p1##x,_n3##y,_p1##z,v), I[143] = (img)(x,_n3##y,_p1##z,v), I[144] = (img)(_n1##x,_n3##y,_p1##z,v), I[145] = (img)(_n2##x,_n3##y,_p1##z,v), I[146] = (img)(_n3##x,_n3##y,_p1##z,v), \ 307.11361 + I[147] = (img)(_p3##x,_p3##y,z,v), I[148] = (img)(_p2##x,_p3##y,z,v), I[149] = (img)(_p1##x,_p3##y,z,v), I[150] = (img)(x,_p3##y,z,v), I[151] = (img)(_n1##x,_p3##y,z,v), I[152] = (img)(_n2##x,_p3##y,z,v), I[153] = (img)(_n3##x,_p3##y,z,v), \ 307.11362 + I[154] = (img)(_p3##x,_p2##y,z,v), I[155] = (img)(_p2##x,_p2##y,z,v), I[156] = (img)(_p1##x,_p2##y,z,v), I[157] = (img)(x,_p2##y,z,v), I[158] = (img)(_n1##x,_p2##y,z,v), I[159] = (img)(_n2##x,_p2##y,z,v), I[160] = (img)(_n3##x,_p2##y,z,v), \ 307.11363 + I[161] = (img)(_p3##x,_p1##y,z,v), I[162] = (img)(_p2##x,_p1##y,z,v), I[163] = (img)(_p1##x,_p1##y,z,v), I[164] = (img)(x,_p1##y,z,v), I[165] = (img)(_n1##x,_p1##y,z,v), I[166] = (img)(_n2##x,_p1##y,z,v), I[167] = (img)(_n3##x,_p1##y,z,v), \ 307.11364 + I[168] = (img)(_p3##x,y,z,v), I[169] = (img)(_p2##x,y,z,v), I[170] = (img)(_p1##x,y,z,v), I[171] = (img)(x,y,z,v), I[172] = (img)(_n1##x,y,z,v), I[173] = (img)(_n2##x,y,z,v), I[174] = (img)(_n3##x,y,z,v), \ 307.11365 + I[175] = (img)(_p3##x,_n1##y,z,v), I[176] = (img)(_p2##x,_n1##y,z,v), I[177] = (img)(_p1##x,_n1##y,z,v), I[178] = (img)(x,_n1##y,z,v), I[179] = (img)(_n1##x,_n1##y,z,v), I[180] = (img)(_n2##x,_n1##y,z,v), I[181] = (img)(_n3##x,_n1##y,z,v), \ 307.11366 + I[182] = (img)(_p3##x,_n2##y,z,v), I[183] = (img)(_p2##x,_n2##y,z,v), I[184] = (img)(_p1##x,_n2##y,z,v), I[185] = (img)(x,_n2##y,z,v), I[186] = (img)(_n1##x,_n2##y,z,v), I[187] = (img)(_n2##x,_n2##y,z,v), I[188] = (img)(_n3##x,_n2##y,z,v), \ 307.11367 + I[189] = (img)(_p3##x,_n3##y,z,v), I[190] = (img)(_p2##x,_n3##y,z,v), I[191] = (img)(_p1##x,_n3##y,z,v), I[192] = (img)(x,_n3##y,z,v), I[193] = (img)(_n1##x,_n3##y,z,v), I[194] = (img)(_n2##x,_n3##y,z,v), I[195] = (img)(_n3##x,_n3##y,z,v), \ 307.11368 + I[196] = (img)(_p3##x,_p3##y,_n1##z,v), I[197] = (img)(_p2##x,_p3##y,_n1##z,v), I[198] = (img)(_p1##x,_p3##y,_n1##z,v), I[199] = (img)(x,_p3##y,_n1##z,v), I[200] = (img)(_n1##x,_p3##y,_n1##z,v), I[201] = (img)(_n2##x,_p3##y,_n1##z,v), I[202] = (img)(_n3##x,_p3##y,_n1##z,v), \ 307.11369 + I[203] = (img)(_p3##x,_p2##y,_n1##z,v), I[204] = (img)(_p2##x,_p2##y,_n1##z,v), I[205] = (img)(_p1##x,_p2##y,_n1##z,v), I[206] = (img)(x,_p2##y,_n1##z,v), I[207] = (img)(_n1##x,_p2##y,_n1##z,v), I[208] = (img)(_n2##x,_p2##y,_n1##z,v), I[209] = (img)(_n3##x,_p2##y,_n1##z,v), \ 307.11370 + I[210] = (img)(_p3##x,_p1##y,_n1##z,v), I[211] = (img)(_p2##x,_p1##y,_n1##z,v), I[212] = (img)(_p1##x,_p1##y,_n1##z,v), I[213] = (img)(x,_p1##y,_n1##z,v), I[214] = (img)(_n1##x,_p1##y,_n1##z,v), I[215] = (img)(_n2##x,_p1##y,_n1##z,v), I[216] = (img)(_n3##x,_p1##y,_n1##z,v), \ 307.11371 + I[217] = (img)(_p3##x,y,_n1##z,v), I[218] = (img)(_p2##x,y,_n1##z,v), I[219] = (img)(_p1##x,y,_n1##z,v), I[220] = (img)(x,y,_n1##z,v), I[221] = (img)(_n1##x,y,_n1##z,v), I[222] = (img)(_n2##x,y,_n1##z,v), I[223] = (img)(_n3##x,y,_n1##z,v), \ 307.11372 + I[224] = (img)(_p3##x,_n1##y,_n1##z,v), I[225] = (img)(_p2##x,_n1##y,_n1##z,v), I[226] = (img)(_p1##x,_n1##y,_n1##z,v), I[227] = (img)(x,_n1##y,_n1##z,v), I[228] = (img)(_n1##x,_n1##y,_n1##z,v), I[229] = (img)(_n2##x,_n1##y,_n1##z,v), I[230] = (img)(_n3##x,_n1##y,_n1##z,v), \ 307.11373 + I[231] = (img)(_p3##x,_n2##y,_n1##z,v), I[232] = (img)(_p2##x,_n2##y,_n1##z,v), I[233] = (img)(_p1##x,_n2##y,_n1##z,v), I[234] = (img)(x,_n2##y,_n1##z,v), I[235] = (img)(_n1##x,_n2##y,_n1##z,v), I[236] = (img)(_n2##x,_n2##y,_n1##z,v), I[237] = (img)(_n3##x,_n2##y,_n1##z,v), \ 307.11374 + I[238] = (img)(_p3##x,_n3##y,_n1##z,v), I[239] = (img)(_p2##x,_n3##y,_n1##z,v), I[240] = (img)(_p1##x,_n3##y,_n1##z,v), I[241] = (img)(x,_n3##y,_n1##z,v), I[242] = (img)(_n1##x,_n3##y,_n1##z,v), I[243] = (img)(_n2##x,_n3##y,_n1##z,v), I[244] = (img)(_n3##x,_n3##y,_n1##z,v), \ 307.11375 + I[245] = (img)(_p3##x,_p3##y,_n2##z,v), I[246] = (img)(_p2##x,_p3##y,_n2##z,v), I[247] = (img)(_p1##x,_p3##y,_n2##z,v), I[248] = (img)(x,_p3##y,_n2##z,v), I[249] = (img)(_n1##x,_p3##y,_n2##z,v), I[250] = (img)(_n2##x,_p3##y,_n2##z,v), I[251] = (img)(_n3##x,_p3##y,_n2##z,v), \ 307.11376 + I[252] = (img)(_p3##x,_p2##y,_n2##z,v), I[253] = (img)(_p2##x,_p2##y,_n2##z,v), I[254] = (img)(_p1##x,_p2##y,_n2##z,v), I[255] = (img)(x,_p2##y,_n2##z,v), I[256] = (img)(_n1##x,_p2##y,_n2##z,v), I[257] = (img)(_n2##x,_p2##y,_n2##z,v), I[258] = (img)(_n3##x,_p2##y,_n2##z,v), \ 307.11377 + I[259] = (img)(_p3##x,_p1##y,_n2##z,v), I[260] = (img)(_p2##x,_p1##y,_n2##z,v), I[261] = (img)(_p1##x,_p1##y,_n2##z,v), I[262] = (img)(x,_p1##y,_n2##z,v), I[263] = (img)(_n1##x,_p1##y,_n2##z,v), I[264] = (img)(_n2##x,_p1##y,_n2##z,v), I[265] = (img)(_n3##x,_p1##y,_n2##z,v), \ 307.11378 + I[266] = (img)(_p3##x,y,_n2##z,v), I[267] = (img)(_p2##x,y,_n2##z,v), I[268] = (img)(_p1##x,y,_n2##z,v), I[269] = (img)(x,y,_n2##z,v), I[270] = (img)(_n1##x,y,_n2##z,v), I[271] = (img)(_n2##x,y,_n2##z,v), I[272] = (img)(_n3##x,y,_n2##z,v), \ 307.11379 + I[273] = (img)(_p3##x,_n1##y,_n2##z,v), I[274] = (img)(_p2##x,_n1##y,_n2##z,v), I[275] = (img)(_p1##x,_n1##y,_n2##z,v), I[276] = (img)(x,_n1##y,_n2##z,v), I[277] = (img)(_n1##x,_n1##y,_n2##z,v), I[278] = (img)(_n2##x,_n1##y,_n2##z,v), I[279] = (img)(_n3##x,_n1##y,_n2##z,v), \ 307.11380 + I[280] = (img)(_p3##x,_n2##y,_n2##z,v), I[281] = (img)(_p2##x,_n2##y,_n2##z,v), I[282] = (img)(_p1##x,_n2##y,_n2##z,v), I[283] = (img)(x,_n2##y,_n2##z,v), I[284] = (img)(_n1##x,_n2##y,_n2##z,v), I[285] = (img)(_n2##x,_n2##y,_n2##z,v), I[286] = (img)(_n3##x,_n2##y,_n2##z,v), \ 307.11381 + I[287] = (img)(_p3##x,_n3##y,_n2##z,v), I[288] = (img)(_p2##x,_n3##y,_n2##z,v), I[289] = (img)(_p1##x,_n3##y,_n2##z,v), I[290] = (img)(x,_n3##y,_n2##z,v), I[291] = (img)(_n1##x,_n3##y,_n2##z,v), I[292] = (img)(_n2##x,_n3##y,_n2##z,v), I[293] = (img)(_n3##x,_n3##y,_n2##z,v), \ 307.11382 + I[294] = (img)(_p3##x,_p3##y,_n3##z,v), I[295] = (img)(_p2##x,_p3##y,_n3##z,v), I[296] = (img)(_p1##x,_p3##y,_n3##z,v), I[297] = (img)(x,_p3##y,_n3##z,v), I[298] = (img)(_n1##x,_p3##y,_n3##z,v), I[299] = (img)(_n2##x,_p3##y,_n3##z,v), I[300] = (img)(_n3##x,_p3##y,_n3##z,v), \ 307.11383 + I[301] = (img)(_p3##x,_p2##y,_n3##z,v), I[302] = (img)(_p2##x,_p2##y,_n3##z,v), I[303] = (img)(_p1##x,_p2##y,_n3##z,v), I[304] = (img)(x,_p2##y,_n3##z,v), I[305] = (img)(_n1##x,_p2##y,_n3##z,v), I[306] = (img)(_n2##x,_p2##y,_n3##z,v), I[307] = (img)(_n3##x,_p2##y,_n3##z,v), \ 307.11384 + I[308] = (img)(_p3##x,_p1##y,_n3##z,v), I[309] = (img)(_p2##x,_p1##y,_n3##z,v), I[310] = (img)(_p1##x,_p1##y,_n3##z,v), I[311] = (img)(x,_p1##y,_n3##z,v), I[312] = (img)(_n1##x,_p1##y,_n3##z,v), I[313] = (img)(_n2##x,_p1##y,_n3##z,v), I[314] = (img)(_n3##x,_p1##y,_n3##z,v), \ 307.11385 + I[315] = (img)(_p3##x,y,_n3##z,v), I[316] = (img)(_p2##x,y,_n3##z,v), I[317] = (img)(_p1##x,y,_n3##z,v), I[318] = (img)(x,y,_n3##z,v), I[319] = (img)(_n1##x,y,_n3##z,v), I[320] = (img)(_n2##x,y,_n3##z,v), I[321] = (img)(_n3##x,y,_n3##z,v), \ 307.11386 + I[322] = (img)(_p3##x,_n1##y,_n3##z,v), I[323] = (img)(_p2##x,_n1##y,_n3##z,v), I[324] = (img)(_p1##x,_n1##y,_n3##z,v), I[325] = (img)(x,_n1##y,_n3##z,v), I[326] = (img)(_n1##x,_n1##y,_n3##z,v), I[327] = (img)(_n2##x,_n1##y,_n3##z,v), I[328] = (img)(_n3##x,_n1##y,_n3##z,v), \ 307.11387 + I[329] = (img)(_p3##x,_n2##y,_n3##z,v), I[330] = (img)(_p2##x,_n2##y,_n3##z,v), I[331] = (img)(_p1##x,_n2##y,_n3##z,v), I[332] = (img)(x,_n2##y,_n3##z,v), I[333] = (img)(_n1##x,_n2##y,_n3##z,v), I[334] = (img)(_n2##x,_n2##y,_n3##z,v), I[335] = (img)(_n3##x,_n2##y,_n3##z,v), \ 307.11388 + I[336] = (img)(_p3##x,_n3##y,_n3##z,v), I[337] = (img)(_p2##x,_n3##y,_n3##z,v), I[338] = (img)(_p1##x,_n3##y,_n3##z,v), I[339] = (img)(x,_n3##y,_n3##z,v), I[340] = (img)(_n1##x,_n3##y,_n3##z,v), I[341] = (img)(_n2##x,_n3##y,_n3##z,v), I[342] = (img)(_n3##x,_n3##y,_n3##z,v); 307.11389 + 307.11390 +// Define 8x8x8 loop macros for CImg 307.11391 +//------------------------------------- 307.11392 +#define cimg_for_in8(bound,i0,i1,i) for (int i = (int)(i0)<0?0:(int)(i0), \ 307.11393 + _p3##i = i-3<0?0:i-3, \ 307.11394 + _p2##i = i-2<0?0:i-2, \ 307.11395 + _p1##i = i-1<0?0:i-1, \ 307.11396 + _n1##i = i+1>=(int)(bound)?(int)(bound)-1:i+1, \ 307.11397 + _n2##i = i+2>=(int)(bound)?(int)(bound)-1:i+2, \ 307.11398 + _n3##i = i+3>=(int)(bound)?(int)(bound)-1:i+3, \ 307.11399 + _n4##i = i+4>=(int)(bound)?(int)(bound)-1:i+4; \ 307.11400 + i<=(int)(i1) && (_n4##i<(int)(bound) || _n3##i==--_n4##i || _n2##i==--_n3##i || _n1##i==--_n2##i || \ 307.11401 + i==(_n4##i = _n3##i = _n2##i = --_n1##i)); \ 307.11402 + _p3##i = _p2##i, _p2##i = _p1##i, _p1##i = i++, \ 307.11403 + ++_n1##i, ++_n2##i, ++_n3##i, ++_n4##i) 307.11404 + 307.11405 +#define cimg_for_in8X(img,x0,x1,x) cimg_for_in8((img).width,x0,x1,x) 307.11406 +#define cimg_for_in8Y(img,y0,y1,y) cimg_for_in8((img).height,y0,y1,y) 307.11407 +#define cimg_for_in8Z(img,z0,z1,z) cimg_for_in8((img).depth,z0,z1,z) 307.11408 +#define cimg_for_in8V(img,v0,v1,v) cimg_for_in8((img).dim,v0,v1,v) 307.11409 +#define cimg_for_in8XY(img,x0,y0,x1,y1,x,y) cimg_for_in8Y(img,y0,y1,y) cimg_for_in8X(img,x0,x1,x) 307.11410 +#define cimg_for_in8XZ(img,x0,z0,x1,z1,x,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8X(img,x0,x1,x) 307.11411 +#define cimg_for_in8XV(img,x0,v0,x1,v1,x,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8X(img,x0,x1,x) 307.11412 +#define cimg_for_in8YZ(img,y0,z0,y1,z1,y,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8Y(img,y0,y1,y) 307.11413 +#define cimg_for_in8YV(img,y0,v0,y1,v1,y,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8Y(img,y0,y1,y) 307.11414 +#define cimg_for_in8ZV(img,z0,v0,z1,v1,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8Z(img,z0,z1,z) 307.11415 +#define cimg_for_in8XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) cimg_for_in8Z(img,z0,z1,z) cimg_for_in8XY(img,x0,y0,x1,y1,x,y) 307.11416 +#define cimg_for_in8XZV(img,x0,z0,v0,x1,y1,v1,x,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8XZ(img,x0,y0,x1,y1,x,z) 307.11417 +#define cimg_for_in8YZV(img,y0,z0,v0,y1,z1,v1,y,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8YZ(img,y0,z0,y1,z1,y,z) 307.11418 +#define cimg_for_in8XYZV(img,x0,y0,z0,v0,x1,y1,z1,v1,x,y,z,v) cimg_for_in8V(img,v0,v1,v) cimg_for_in8XYZ(img,x0,y0,z0,x1,y1,z1,x,y,z) 307.11419 + 307.11420 +#define cimg_for8x8x8(img,x,y,z,v,I) \ 307.11421 + cimg_for8((img).depth,z) cimg_for8((img).height,y) for (int x = 0, \ 307.11422 + _p3##x = 0, _p2##x = 0, _p1##x = 0, \ 307.11423 + _n1##x = 1>=((img).width)?(int)((img).width)-1:1, \ 307.11424 + _n2##x = 2>=((img).width)?(int)((img).width)-1:2, \ 307.11425 + _n3##x = 3>=((img).width)?(int)((img).width)-1:3, \ 307.11426 + _n4##x = (int)( \ 307.11427 + (I[0] = I[1] = I[2] = I[3] = (img)(0,_p3##y,_p3##z,v)), \ 307.11428 + (I[8] = I[9] = I[10] = I[11] = (img)(0,_p2##y,_p3##z,v)), \ 307.11429 + (I[16] = I[17] = I[18] = I[19] = (img)(0,_p1##y,_p3##z,v)), \ 307.11430 + (I[24] = I[25] = I[26] = I[27] = (img)(0,y,_p3##z,v)), \ 307.11431 + (I[32] = I[33] = I[34] = I[35] = (img)(0,_n1##y,_p3##z,v)), \ 307.11432 + (I[40] = I[41] = I[42] = I[43] = (img)(0,_n2##y,_p3##z,v)), \ 307.11433 + (I[48] = I[49] = I[50] = I[51] = (img)(0,_n3##y,_p3##z,v)), \ 307.11434 + (I[56] = I[57] = I[58] = I[59] = (img)(0,_n4##y,_p3##z,v)), \ 307.11435 + (I[64] = I[65] = I[66] = I[67] = (img)(0,_p3##y,_p2##z,v)), \ 307.11436 + (I[72] = I[73] = I[74] = I[75] = (img)(0,_p2##y,_p2##z,v)), \ 307.11437 + (I[80] = I[81] = I[82] = I[83] = (img)(0,_p1##y,_p2##z,v)), \ 307.11438 + (I[88] = I[89] = I[90] = I[91] = (img)(0,y,_p2##z,v)), \ 307.11439 + (I[96] = I[97] = I[98] = I[99] = (img)(0,_n1##y,_p2##z,v)), \ 307.11440 + (I[104] = I[105] = I[106] = I[107] = (img)(0,_n2##y,_p2##z,v)), \ 307.11441 + (I[112] = I[113] = I[114] = I[115] = (img)(0,_n3##y,_p2##z,v)), \ 307.11442 + (I[120] = I[121] = I[122] = I[123] = (img)(0,_n4##y,_p2##z,v)), \ 307.11443 + (I[128] = I[129] = I[130] = I[131] = (img)(0,_p3##y,_p1##z,v)), \ 307.11444 + (I[136] = I[137] = I[138] = I[139] = (img)(0,_p2##y,_p1##z,v)), \ 307.11445 + (I[144] = I[145] = I[146] = I[147] = (img)(0,_p1##y,_p1##z,v)), \ 307.11446 + (I[152] = I[153] = I[154] = I[155] = (img)(0,y,_p1##z,v)), \ 307.11447 + (I[160] = I[161] = I[162] = I[163] = (img)(0,_n1##y,_p1##z,v)), \ 307.11448 + (I[168] = I[169] = I[170] = I[171] = (img)(0,_n2##y,_p1##z,v)), \ 307.11449 + (I[176] = I[177] = I[178] = I[179] = (img)(0,_n3##y,_p1##z,v)), \ 307.11450 + (I[184] = I[185] = I[186] = I[187] = (img)(0,_n4##y,_p1##z,v)), \ 307.11451 + (I[192] = I[193] = I[194] = I[195] = (img)(0,_p3##y,z,v)), \ 307.11452 + (I[200] = I[201] = I[202] = I[203] = (img)(0,_p2##y,z,v)), \ 307.11453 + (I[208] = I[209] = I[210] = I[211] = (img)(0,_p1##y,z,v)), \ 307.11454 + (I[216] = I[217] = I[218] = I[219] = (img)(0,y,z,v)), \ 307.11455 + (I[224] = I[225] = I[226] = I[227] = (img)(0,_n1##y,z,v)), \ 307.11456 + (I[232] = I[233] = I[234] = I[235] = (img)(0,_n2##y,z,v)), \ 307.11457 + (I[240] = I[241] = I[242] = I[243] = (img)(0,_n3##y,z,v)), \ 307.11458 + (I[248] = I[249] = I[250] = I[251] = (img)(0,_n4##y,z,v)), \ 307.11459 + (I[256] = I[257] = I[258] = I[259] = (img)(0,_p3##y,_n1##z,v)), \ 307.11460 + (I[264] = I[265] = I[266] = I[267] = (img)(0,_p2##y,_n1##z,v)), \ 307.11461 + (I[272] = I[273] = I[274] = I[275] = (img)(0,_p1##y,_n1##z,v)), \ 307.11462 + (I[280] = I[281] = I[282] = I[283] = (img)(0,y,_n1##z,v)), \ 307.11463 + (I[288] = I[289] = I[290] = I[291] = (img)(0,_n1##y,_n1##z,v)), \ 307.11464 + (I[296] = I[297] = I[298] = I[299] = (img)(0,_n2##y,_n1##z,v)), \ 307.11465 + (I[304] = I[305] = I[306] = I[307] = (img)(0,_n3##y,_n1##z,v)), \ 307.11466 + (I[312] = I[313] = I[314] = I[315] = (img)(0,_n4##y,_n1##z,v)), \ 307.11467 + (I[320] = I[321] = I[322] = I[323] = (img)(0,_p3##y,_n2##z,v)), \ 307.11468 + (I[328] = I[329] = I[330] = I[331] = (img)(0,_p2##y,_n2##z,v)), \ 307.11469 + (I[336] = I[337] = I[338] = I[339] = (img)(0,_p1##y,_n2##z,v)), \ 307.11470 + (I[344] = I[345] = I[346] = I[347] = (img)(0,y,_n2##z,v)), \ 307.11471 + (I[352] = I[353] = I[354] = I[355] = (img)(0,_n1##y,_n2##z,v)), \ 307.11472 + (I[360] = I[361] = I[362] = I[363] = (img)(0,_n2##y,_n2##z,v)), \ 307.11473 + (I[368] = I[369] = I[370] = I[371] = (img)(0,_n3##y,_n2##z,v)), \ 307.11474 + (I[376] = I[377] = I[378] = I[379] = (img)(0,_n4##y,_n2##z,v)), \ 307.11475 + (I[384] = I[385] = I[386] = I[387] = (img)(0,_p3##y,_n3##z,v)), \ 307.11476 + (I[392] = I[393] = I[394] = I[395] = (img)(0,_p2##y,_n3##z,v)), \ 307.11477 + (I[400] = I[401] = I[402] = I[403] = (img)(0,_p1##y,_n3##z,v)), \ 307.11478 + (I[408] = I[409] = I[410] = I[411] = (img)(0,y,_n3##z,v)), \ 307.11479 + (I[416] = I[417] = I[418] = I[419] = (img)(0,_n1##y,_n3##z,v)), \ 307.11480 + (I[424] = I[425] = I[426] = I[427] = (img)(0,_n2##y,_n3##z,v)), \ 307.11481 + (I[432] = I[433] = I[434] = I[435] = (img)(0,_n3##y,_n3##z,v)), \ 307.11482 + (I[440] = I[441] = I[442] = I[443] = (img)(0,_n4##y,_n3##z,v)), \ 307.11483 + (I[448] = I[449] = I[450] = I[451] = (img)(0,_p3##y,_n4##z,v)), \ 307.11484 + (I[456] = I[457] = I[458] = I[459] = (img)(0,_p2##y,_n4##z,v)), \ 307.11485 + (I[464] = I[465] = I[466] = I[467] = (img)(0,_p1##y,_n4##z,v)), \ 307.11486 + (I[472] = I[473] = I[474] = I[475] = (img)(0,y,_n4##z,v)), \ 307.11487 + (I[480] = I[481] = I[482] = I[483] = (img)(0,_n1##y,_n4##z,v)), \ 307.11488 + (I[488] = I[489] = I[490] = I[491] = (img)(0,_n2##y,_n4##z,v)), \ 307.11489 + (I[496] = I[497] = I[498] = I[499] = (img)(0,_n3##y,_n4##z,v)), \ 307.11490 + (I[504] = I[505] = I[506] = I[507] = (img)(0,_n4##y,_n4##z,v)), \ 307.11491 + (I[4] = (img)(_n1##x,_p3##y,_p3##z,v)), \ 307.11492 + (I[12] = (img)(_n1##x,_p2##y,_p3##z,v)), \ 307.11493 + (I[20] = (img)(_n1##x,_p1##y,_p3##z,v)), \ 307.11494 + (I[28] = (img)(_n1##x,y,_p3##z,v)), \ 307.11495 + (I[36] = (img)(_n1##x,_n1##y,_p3##z,v)), \ 307.11496 + (I[44] = (img)(_n1##x,_n2##y,_p3##z,v)), \ 307.11497 + (I[52] = (img)(_n1##x,_n3##y,_p3##z,v)), \ 307.11498 + (I[60] = (img)(_n1##x,_n4##y,_p3##z,v)), \ 307.11499 + (I[68] = (img)(_n1##x,_p3##y,_p2##z,v)), \ 307.11500 + (I[76] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.11501 + (I[84] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.11502 + (I[92] = (img)(_n1##x,y,_p2##z,v)), \ 307.11503 + (I[100] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.11504 + (I[108] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.11505 + (I[116] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.11506 + (I[124] = (img)(_n1##x,_n4##y,_p2##z,v)), \ 307.11507 + (I[132] = (img)(_n1##x,_p3##y,_p1##z,v)), \ 307.11508 + (I[140] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.11509 + (I[148] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.11510 + (I[156] = (img)(_n1##x,y,_p1##z,v)), \ 307.11511 + (I[164] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.11512 + (I[172] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.11513 + (I[180] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.11514 + (I[188] = (img)(_n1##x,_n4##y,_p1##z,v)), \ 307.11515 + (I[196] = (img)(_n1##x,_p3##y,z,v)), \ 307.11516 + (I[204] = (img)(_n1##x,_p2##y,z,v)), \ 307.11517 + (I[212] = (img)(_n1##x,_p1##y,z,v)), \ 307.11518 + (I[220] = (img)(_n1##x,y,z,v)), \ 307.11519 + (I[228] = (img)(_n1##x,_n1##y,z,v)), \ 307.11520 + (I[236] = (img)(_n1##x,_n2##y,z,v)), \ 307.11521 + (I[244] = (img)(_n1##x,_n3##y,z,v)), \ 307.11522 + (I[252] = (img)(_n1##x,_n4##y,z,v)), \ 307.11523 + (I[260] = (img)(_n1##x,_p3##y,_n1##z,v)), \ 307.11524 + (I[268] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.11525 + (I[276] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.11526 + (I[284] = (img)(_n1##x,y,_n1##z,v)), \ 307.11527 + (I[292] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.11528 + (I[300] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.11529 + (I[308] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.11530 + (I[316] = (img)(_n1##x,_n4##y,_n1##z,v)), \ 307.11531 + (I[324] = (img)(_n1##x,_p3##y,_n2##z,v)), \ 307.11532 + (I[332] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.11533 + (I[340] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.11534 + (I[348] = (img)(_n1##x,y,_n2##z,v)), \ 307.11535 + (I[356] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.11536 + (I[364] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.11537 + (I[372] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.11538 + (I[380] = (img)(_n1##x,_n4##y,_n2##z,v)), \ 307.11539 + (I[388] = (img)(_n1##x,_p3##y,_n3##z,v)), \ 307.11540 + (I[396] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.11541 + (I[404] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.11542 + (I[412] = (img)(_n1##x,y,_n3##z,v)), \ 307.11543 + (I[420] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.11544 + (I[428] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.11545 + (I[436] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.11546 + (I[444] = (img)(_n1##x,_n4##y,_n3##z,v)), \ 307.11547 + (I[452] = (img)(_n1##x,_p3##y,_n4##z,v)), \ 307.11548 + (I[460] = (img)(_n1##x,_p2##y,_n4##z,v)), \ 307.11549 + (I[468] = (img)(_n1##x,_p1##y,_n4##z,v)), \ 307.11550 + (I[476] = (img)(_n1##x,y,_n4##z,v)), \ 307.11551 + (I[484] = (img)(_n1##x,_n1##y,_n4##z,v)), \ 307.11552 + (I[492] = (img)(_n1##x,_n2##y,_n4##z,v)), \ 307.11553 + (I[500] = (img)(_n1##x,_n3##y,_n4##z,v)), \ 307.11554 + (I[508] = (img)(_n1##x,_n4##y,_n4##z,v)), \ 307.11555 + (I[5] = (img)(_n2##x,_p3##y,_p3##z,v)), \ 307.11556 + (I[13] = (img)(_n2##x,_p2##y,_p3##z,v)), \ 307.11557 + (I[21] = (img)(_n2##x,_p1##y,_p3##z,v)), \ 307.11558 + (I[29] = (img)(_n2##x,y,_p3##z,v)), \ 307.11559 + (I[37] = (img)(_n2##x,_n1##y,_p3##z,v)), \ 307.11560 + (I[45] = (img)(_n2##x,_n2##y,_p3##z,v)), \ 307.11561 + (I[53] = (img)(_n2##x,_n3##y,_p3##z,v)), \ 307.11562 + (I[61] = (img)(_n2##x,_n4##y,_p3##z,v)), \ 307.11563 + (I[69] = (img)(_n2##x,_p3##y,_p2##z,v)), \ 307.11564 + (I[77] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.11565 + (I[85] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.11566 + (I[93] = (img)(_n2##x,y,_p2##z,v)), \ 307.11567 + (I[101] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.11568 + (I[109] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.11569 + (I[117] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.11570 + (I[125] = (img)(_n2##x,_n4##y,_p2##z,v)), \ 307.11571 + (I[133] = (img)(_n2##x,_p3##y,_p1##z,v)), \ 307.11572 + (I[141] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.11573 + (I[149] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.11574 + (I[157] = (img)(_n2##x,y,_p1##z,v)), \ 307.11575 + (I[165] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.11576 + (I[173] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.11577 + (I[181] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.11578 + (I[189] = (img)(_n2##x,_n4##y,_p1##z,v)), \ 307.11579 + (I[197] = (img)(_n2##x,_p3##y,z,v)), \ 307.11580 + (I[205] = (img)(_n2##x,_p2##y,z,v)), \ 307.11581 + (I[213] = (img)(_n2##x,_p1##y,z,v)), \ 307.11582 + (I[221] = (img)(_n2##x,y,z,v)), \ 307.11583 + (I[229] = (img)(_n2##x,_n1##y,z,v)), \ 307.11584 + (I[237] = (img)(_n2##x,_n2##y,z,v)), \ 307.11585 + (I[245] = (img)(_n2##x,_n3##y,z,v)), \ 307.11586 + (I[253] = (img)(_n2##x,_n4##y,z,v)), \ 307.11587 + (I[261] = (img)(_n2##x,_p3##y,_n1##z,v)), \ 307.11588 + (I[269] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.11589 + (I[277] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.11590 + (I[285] = (img)(_n2##x,y,_n1##z,v)), \ 307.11591 + (I[293] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.11592 + (I[301] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.11593 + (I[309] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.11594 + (I[317] = (img)(_n2##x,_n4##y,_n1##z,v)), \ 307.11595 + (I[325] = (img)(_n2##x,_p3##y,_n2##z,v)), \ 307.11596 + (I[333] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.11597 + (I[341] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.11598 + (I[349] = (img)(_n2##x,y,_n2##z,v)), \ 307.11599 + (I[357] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.11600 + (I[365] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.11601 + (I[373] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.11602 + (I[381] = (img)(_n2##x,_n4##y,_n2##z,v)), \ 307.11603 + (I[389] = (img)(_n2##x,_p3##y,_n3##z,v)), \ 307.11604 + (I[397] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.11605 + (I[405] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.11606 + (I[413] = (img)(_n2##x,y,_n3##z,v)), \ 307.11607 + (I[421] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.11608 + (I[429] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.11609 + (I[437] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.11610 + (I[445] = (img)(_n2##x,_n4##y,_n3##z,v)), \ 307.11611 + (I[453] = (img)(_n2##x,_p3##y,_n4##z,v)), \ 307.11612 + (I[461] = (img)(_n2##x,_p2##y,_n4##z,v)), \ 307.11613 + (I[469] = (img)(_n2##x,_p1##y,_n4##z,v)), \ 307.11614 + (I[477] = (img)(_n2##x,y,_n4##z,v)), \ 307.11615 + (I[485] = (img)(_n2##x,_n1##y,_n4##z,v)), \ 307.11616 + (I[493] = (img)(_n2##x,_n2##y,_n4##z,v)), \ 307.11617 + (I[501] = (img)(_n2##x,_n3##y,_n4##z,v)), \ 307.11618 + (I[509] = (img)(_n2##x,_n4##y,_n4##z,v)), \ 307.11619 + (I[6] = (img)(_n3##x,_p3##y,_p3##z,v)), \ 307.11620 + (I[14] = (img)(_n3##x,_p2##y,_p3##z,v)), \ 307.11621 + (I[22] = (img)(_n3##x,_p1##y,_p3##z,v)), \ 307.11622 + (I[30] = (img)(_n3##x,y,_p3##z,v)), \ 307.11623 + (I[38] = (img)(_n3##x,_n1##y,_p3##z,v)), \ 307.11624 + (I[46] = (img)(_n3##x,_n2##y,_p3##z,v)), \ 307.11625 + (I[54] = (img)(_n3##x,_n3##y,_p3##z,v)), \ 307.11626 + (I[62] = (img)(_n3##x,_n4##y,_p3##z,v)), \ 307.11627 + (I[70] = (img)(_n3##x,_p3##y,_p2##z,v)), \ 307.11628 + (I[78] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.11629 + (I[86] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.11630 + (I[94] = (img)(_n3##x,y,_p2##z,v)), \ 307.11631 + (I[102] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.11632 + (I[110] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.11633 + (I[118] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.11634 + (I[126] = (img)(_n3##x,_n4##y,_p2##z,v)), \ 307.11635 + (I[134] = (img)(_n3##x,_p3##y,_p1##z,v)), \ 307.11636 + (I[142] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.11637 + (I[150] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.11638 + (I[158] = (img)(_n3##x,y,_p1##z,v)), \ 307.11639 + (I[166] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.11640 + (I[174] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.11641 + (I[182] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.11642 + (I[190] = (img)(_n3##x,_n4##y,_p1##z,v)), \ 307.11643 + (I[198] = (img)(_n3##x,_p3##y,z,v)), \ 307.11644 + (I[206] = (img)(_n3##x,_p2##y,z,v)), \ 307.11645 + (I[214] = (img)(_n3##x,_p1##y,z,v)), \ 307.11646 + (I[222] = (img)(_n3##x,y,z,v)), \ 307.11647 + (I[230] = (img)(_n3##x,_n1##y,z,v)), \ 307.11648 + (I[238] = (img)(_n3##x,_n2##y,z,v)), \ 307.11649 + (I[246] = (img)(_n3##x,_n3##y,z,v)), \ 307.11650 + (I[254] = (img)(_n3##x,_n4##y,z,v)), \ 307.11651 + (I[262] = (img)(_n3##x,_p3##y,_n1##z,v)), \ 307.11652 + (I[270] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.11653 + (I[278] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.11654 + (I[286] = (img)(_n3##x,y,_n1##z,v)), \ 307.11655 + (I[294] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.11656 + (I[302] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.11657 + (I[310] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.11658 + (I[318] = (img)(_n3##x,_n4##y,_n1##z,v)), \ 307.11659 + (I[326] = (img)(_n3##x,_p3##y,_n2##z,v)), \ 307.11660 + (I[334] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.11661 + (I[342] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.11662 + (I[350] = (img)(_n3##x,y,_n2##z,v)), \ 307.11663 + (I[358] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.11664 + (I[366] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.11665 + (I[374] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.11666 + (I[382] = (img)(_n3##x,_n4##y,_n2##z,v)), \ 307.11667 + (I[390] = (img)(_n3##x,_p3##y,_n3##z,v)), \ 307.11668 + (I[398] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.11669 + (I[406] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.11670 + (I[414] = (img)(_n3##x,y,_n3##z,v)), \ 307.11671 + (I[422] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.11672 + (I[430] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.11673 + (I[438] = (img)(_n3##x,_n3##y,_n3##z,v)), \ 307.11674 + (I[446] = (img)(_n3##x,_n4##y,_n3##z,v)), \ 307.11675 + (I[454] = (img)(_n3##x,_p3##y,_n4##z,v)), \ 307.11676 + (I[462] = (img)(_n3##x,_p2##y,_n4##z,v)), \ 307.11677 + (I[470] = (img)(_n3##x,_p1##y,_n4##z,v)), \ 307.11678 + (I[478] = (img)(_n3##x,y,_n4##z,v)), \ 307.11679 + (I[486] = (img)(_n3##x,_n1##y,_n4##z,v)), \ 307.11680 + (I[494] = (img)(_n3##x,_n2##y,_n4##z,v)), \ 307.11681 + (I[502] = (img)(_n3##x,_n3##y,_n4##z,v)), \ 307.11682 + (I[510] = (img)(_n3##x,_n4##y,_n4##z,v)), \ 307.11683 + 4>=((img).width)?(int)((img).width)-1:4); \ 307.11684 + (_n4##x<(int)((img).width) && ( \ 307.11685 + (I[7] = (img)(_n4##x,_p3##y,_p3##z,v)), \ 307.11686 + (I[15] = (img)(_n4##x,_p2##y,_p3##z,v)), \ 307.11687 + (I[23] = (img)(_n4##x,_p1##y,_p3##z,v)), \ 307.11688 + (I[31] = (img)(_n4##x,y,_p3##z,v)), \ 307.11689 + (I[39] = (img)(_n4##x,_n1##y,_p3##z,v)), \ 307.11690 + (I[47] = (img)(_n4##x,_n2##y,_p3##z,v)), \ 307.11691 + (I[55] = (img)(_n4##x,_n3##y,_p3##z,v)), \ 307.11692 + (I[63] = (img)(_n4##x,_n4##y,_p3##z,v)), \ 307.11693 + (I[71] = (img)(_n4##x,_p3##y,_p2##z,v)), \ 307.11694 + (I[79] = (img)(_n4##x,_p2##y,_p2##z,v)), \ 307.11695 + (I[87] = (img)(_n4##x,_p1##y,_p2##z,v)), \ 307.11696 + (I[95] = (img)(_n4##x,y,_p2##z,v)), \ 307.11697 + (I[103] = (img)(_n4##x,_n1##y,_p2##z,v)), \ 307.11698 + (I[111] = (img)(_n4##x,_n2##y,_p2##z,v)), \ 307.11699 + (I[119] = (img)(_n4##x,_n3##y,_p2##z,v)), \ 307.11700 + (I[127] = (img)(_n4##x,_n4##y,_p2##z,v)), \ 307.11701 + (I[135] = (img)(_n4##x,_p3##y,_p1##z,v)), \ 307.11702 + (I[143] = (img)(_n4##x,_p2##y,_p1##z,v)), \ 307.11703 + (I[151] = (img)(_n4##x,_p1##y,_p1##z,v)), \ 307.11704 + (I[159] = (img)(_n4##x,y,_p1##z,v)), \ 307.11705 + (I[167] = (img)(_n4##x,_n1##y,_p1##z,v)), \ 307.11706 + (I[175] = (img)(_n4##x,_n2##y,_p1##z,v)), \ 307.11707 + (I[183] = (img)(_n4##x,_n3##y,_p1##z,v)), \ 307.11708 + (I[191] = (img)(_n4##x,_n4##y,_p1##z,v)), \ 307.11709 + (I[199] = (img)(_n4##x,_p3##y,z,v)), \ 307.11710 + (I[207] = (img)(_n4##x,_p2##y,z,v)), \ 307.11711 + (I[215] = (img)(_n4##x,_p1##y,z,v)), \ 307.11712 + (I[223] = (img)(_n4##x,y,z,v)), \ 307.11713 + (I[231] = (img)(_n4##x,_n1##y,z,v)), \ 307.11714 + (I[239] = (img)(_n4##x,_n2##y,z,v)), \ 307.11715 + (I[247] = (img)(_n4##x,_n3##y,z,v)), \ 307.11716 + (I[255] = (img)(_n4##x,_n4##y,z,v)), \ 307.11717 + (I[263] = (img)(_n4##x,_p3##y,_n1##z,v)), \ 307.11718 + (I[271] = (img)(_n4##x,_p2##y,_n1##z,v)), \ 307.11719 + (I[279] = (img)(_n4##x,_p1##y,_n1##z,v)), \ 307.11720 + (I[287] = (img)(_n4##x,y,_n1##z,v)), \ 307.11721 + (I[295] = (img)(_n4##x,_n1##y,_n1##z,v)), \ 307.11722 + (I[303] = (img)(_n4##x,_n2##y,_n1##z,v)), \ 307.11723 + (I[311] = (img)(_n4##x,_n3##y,_n1##z,v)), \ 307.11724 + (I[319] = (img)(_n4##x,_n4##y,_n1##z,v)), \ 307.11725 + (I[327] = (img)(_n4##x,_p3##y,_n2##z,v)), \ 307.11726 + (I[335] = (img)(_n4##x,_p2##y,_n2##z,v)), \ 307.11727 + (I[343] = (img)(_n4##x,_p1##y,_n2##z,v)), \ 307.11728 + (I[351] = (img)(_n4##x,y,_n2##z,v)), \ 307.11729 + (I[359] = (img)(_n4##x,_n1##y,_n2##z,v)), \ 307.11730 + (I[367] = (img)(_n4##x,_n2##y,_n2##z,v)), \ 307.11731 + (I[375] = (img)(_n4##x,_n3##y,_n2##z,v)), \ 307.11732 + (I[383] = (img)(_n4##x,_n4##y,_n2##z,v)), \ 307.11733 + (I[391] = (img)(_n4##x,_p3##y,_n3##z,v)), \ 307.11734 + (I[399] = (img)(_n4##x,_p2##y,_n3##z,v)), \ 307.11735 + (I[407] = (img)(_n4##x,_p1##y,_n3##z,v)), \ 307.11736 + (I[415] = (img)(_n4##x,y,_n3##z,v)), \ 307.11737 + (I[423] = (img)(_n4##x,_n1##y,_n3##z,v)), \ 307.11738 + (I[431] = (img)(_n4##x,_n2##y,_n3##z,v)), \ 307.11739 + (I[439] = (img)(_n4##x,_n3##y,_n3##z,v)), \ 307.11740 + (I[447] = (img)(_n4##x,_n4##y,_n3##z,v)), \ 307.11741 + (I[455] = (img)(_n4##x,_p3##y,_n4##z,v)), \ 307.11742 + (I[463] = (img)(_n4##x,_p2##y,_n4##z,v)), \ 307.11743 + (I[471] = (img)(_n4##x,_p1##y,_n4##z,v)), \ 307.11744 + (I[479] = (img)(_n4##x,y,_n4##z,v)), \ 307.11745 + (I[487] = (img)(_n4##x,_n1##y,_n4##z,v)), \ 307.11746 + (I[495] = (img)(_n4##x,_n2##y,_n4##z,v)), \ 307.11747 + (I[503] = (img)(_n4##x,_n3##y,_n4##z,v)), \ 307.11748 + (I[511] = (img)(_n4##x,_n4##y,_n4##z,v)),1)) || \ 307.11749 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x); \ 307.11750 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 307.11751 + I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.11752 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.11753 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.11754 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.11755 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.11756 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.11757 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.11758 + I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.11759 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.11760 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.11761 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.11762 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], \ 307.11763 + I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.11764 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.11765 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], \ 307.11766 + I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], \ 307.11767 + I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.11768 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], \ 307.11769 + I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.11770 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.11771 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.11772 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], \ 307.11773 + I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.11774 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], \ 307.11775 + I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], \ 307.11776 + I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.11777 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.11778 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], \ 307.11779 + I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.11780 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], \ 307.11781 + I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], \ 307.11782 + I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.11783 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], \ 307.11784 + I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.11785 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.11786 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], \ 307.11787 + I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], \ 307.11788 + I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], \ 307.11789 + I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], \ 307.11790 + I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], \ 307.11791 + I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.11792 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], \ 307.11793 + I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], \ 307.11794 + I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.11795 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], \ 307.11796 + I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], \ 307.11797 + I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], \ 307.11798 + I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], \ 307.11799 + I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], \ 307.11800 + I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], \ 307.11801 + I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], \ 307.11802 + I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], \ 307.11803 + I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], \ 307.11804 + I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], \ 307.11805 + I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], \ 307.11806 + I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], \ 307.11807 + I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], I[461] = I[462], I[462] = I[463], \ 307.11808 + I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], \ 307.11809 + I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], \ 307.11810 + I[480] = I[481], I[481] = I[482], I[482] = I[483], I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], \ 307.11811 + I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], \ 307.11812 + I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], \ 307.11813 + I[504] = I[505], I[505] = I[506], I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], \ 307.11814 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 307.11815 + 307.11816 +#define cimg_for_in8x8x8(img,x0,y0,z0,x1,y1,z1,x,y,z,v,I) \ 307.11817 + cimg_for_in8((img).depth,z0,z1,z) cimg_for_in8((img).height,y0,y1,y) for (int x = (int)(x0)<0?0:(int)(x0), \ 307.11818 + _p3##x = x-3<0?0:x-3, \ 307.11819 + _p2##x = x-2<0?0:x-2, \ 307.11820 + _p1##x = x-1<0?0:x-1, \ 307.11821 + _n1##x = x+1>=(int)((img).width)?(int)((img).width)-1:x+1, \ 307.11822 + _n2##x = x+2>=(int)((img).width)?(int)((img).width)-1:x+2, \ 307.11823 + _n3##x = x+3>=(int)((img).width)?(int)((img).width)-1:x+3, \ 307.11824 + _n4##x = (int)( \ 307.11825 + (I[0] = (img)(_p3##x,_p3##y,_p3##z,v)), \ 307.11826 + (I[8] = (img)(_p3##x,_p2##y,_p3##z,v)), \ 307.11827 + (I[16] = (img)(_p3##x,_p1##y,_p3##z,v)), \ 307.11828 + (I[24] = (img)(_p3##x,y,_p3##z,v)), \ 307.11829 + (I[32] = (img)(_p3##x,_n1##y,_p3##z,v)), \ 307.11830 + (I[40] = (img)(_p3##x,_n2##y,_p3##z,v)), \ 307.11831 + (I[48] = (img)(_p3##x,_n3##y,_p3##z,v)), \ 307.11832 + (I[56] = (img)(_p3##x,_n4##y,_p3##z,v)), \ 307.11833 + (I[64] = (img)(_p3##x,_p3##y,_p2##z,v)), \ 307.11834 + (I[72] = (img)(_p3##x,_p2##y,_p2##z,v)), \ 307.11835 + (I[80] = (img)(_p3##x,_p1##y,_p2##z,v)), \ 307.11836 + (I[88] = (img)(_p3##x,y,_p2##z,v)), \ 307.11837 + (I[96] = (img)(_p3##x,_n1##y,_p2##z,v)), \ 307.11838 + (I[104] = (img)(_p3##x,_n2##y,_p2##z,v)), \ 307.11839 + (I[112] = (img)(_p3##x,_n3##y,_p2##z,v)), \ 307.11840 + (I[120] = (img)(_p3##x,_n4##y,_p2##z,v)), \ 307.11841 + (I[128] = (img)(_p3##x,_p3##y,_p1##z,v)), \ 307.11842 + (I[136] = (img)(_p3##x,_p2##y,_p1##z,v)), \ 307.11843 + (I[144] = (img)(_p3##x,_p1##y,_p1##z,v)), \ 307.11844 + (I[152] = (img)(_p3##x,y,_p1##z,v)), \ 307.11845 + (I[160] = (img)(_p3##x,_n1##y,_p1##z,v)), \ 307.11846 + (I[168] = (img)(_p3##x,_n2##y,_p1##z,v)), \ 307.11847 + (I[176] = (img)(_p3##x,_n3##y,_p1##z,v)), \ 307.11848 + (I[184] = (img)(_p3##x,_n4##y,_p1##z,v)), \ 307.11849 + (I[192] = (img)(_p3##x,_p3##y,z,v)), \ 307.11850 + (I[200] = (img)(_p3##x,_p2##y,z,v)), \ 307.11851 + (I[208] = (img)(_p3##x,_p1##y,z,v)), \ 307.11852 + (I[216] = (img)(_p3##x,y,z,v)), \ 307.11853 + (I[224] = (img)(_p3##x,_n1##y,z,v)), \ 307.11854 + (I[232] = (img)(_p3##x,_n2##y,z,v)), \ 307.11855 + (I[240] = (img)(_p3##x,_n3##y,z,v)), \ 307.11856 + (I[248] = (img)(_p3##x,_n4##y,z,v)), \ 307.11857 + (I[256] = (img)(_p3##x,_p3##y,_n1##z,v)), \ 307.11858 + (I[264] = (img)(_p3##x,_p2##y,_n1##z,v)), \ 307.11859 + (I[272] = (img)(_p3##x,_p1##y,_n1##z,v)), \ 307.11860 + (I[280] = (img)(_p3##x,y,_n1##z,v)), \ 307.11861 + (I[288] = (img)(_p3##x,_n1##y,_n1##z,v)), \ 307.11862 + (I[296] = (img)(_p3##x,_n2##y,_n1##z,v)), \ 307.11863 + (I[304] = (img)(_p3##x,_n3##y,_n1##z,v)), \ 307.11864 + (I[312] = (img)(_p3##x,_n4##y,_n1##z,v)), \ 307.11865 + (I[320] = (img)(_p3##x,_p3##y,_n2##z,v)), \ 307.11866 + (I[328] = (img)(_p3##x,_p2##y,_n2##z,v)), \ 307.11867 + (I[336] = (img)(_p3##x,_p1##y,_n2##z,v)), \ 307.11868 + (I[344] = (img)(_p3##x,y,_n2##z,v)), \ 307.11869 + (I[352] = (img)(_p3##x,_n1##y,_n2##z,v)), \ 307.11870 + (I[360] = (img)(_p3##x,_n2##y,_n2##z,v)), \ 307.11871 + (I[368] = (img)(_p3##x,_n3##y,_n2##z,v)), \ 307.11872 + (I[376] = (img)(_p3##x,_n4##y,_n2##z,v)), \ 307.11873 + (I[384] = (img)(_p3##x,_p3##y,_n3##z,v)), \ 307.11874 + (I[392] = (img)(_p3##x,_p2##y,_n3##z,v)), \ 307.11875 + (I[400] = (img)(_p3##x,_p1##y,_n3##z,v)), \ 307.11876 + (I[408] = (img)(_p3##x,y,_n3##z,v)), \ 307.11877 + (I[416] = (img)(_p3##x,_n1##y,_n3##z,v)), \ 307.11878 + (I[424] = (img)(_p3##x,_n2##y,_n3##z,v)), \ 307.11879 + (I[432] = (img)(_p3##x,_n3##y,_n3##z,v)), \ 307.11880 + (I[440] = (img)(_p3##x,_n4##y,_n3##z,v)), \ 307.11881 + (I[448] = (img)(_p3##x,_p3##y,_n4##z,v)), \ 307.11882 + (I[456] = (img)(_p3##x,_p2##y,_n4##z,v)), \ 307.11883 + (I[464] = (img)(_p3##x,_p1##y,_n4##z,v)), \ 307.11884 + (I[472] = (img)(_p3##x,y,_n4##z,v)), \ 307.11885 + (I[480] = (img)(_p3##x,_n1##y,_n4##z,v)), \ 307.11886 + (I[488] = (img)(_p3##x,_n2##y,_n4##z,v)), \ 307.11887 + (I[496] = (img)(_p3##x,_n3##y,_n4##z,v)), \ 307.11888 + (I[504] = (img)(_p3##x,_n4##y,_n4##z,v)), \ 307.11889 + (I[1] = (img)(_p2##x,_p3##y,_p3##z,v)), \ 307.11890 + (I[9] = (img)(_p2##x,_p2##y,_p3##z,v)), \ 307.11891 + (I[17] = (img)(_p2##x,_p1##y,_p3##z,v)), \ 307.11892 + (I[25] = (img)(_p2##x,y,_p3##z,v)), \ 307.11893 + (I[33] = (img)(_p2##x,_n1##y,_p3##z,v)), \ 307.11894 + (I[41] = (img)(_p2##x,_n2##y,_p3##z,v)), \ 307.11895 + (I[49] = (img)(_p2##x,_n3##y,_p3##z,v)), \ 307.11896 + (I[57] = (img)(_p2##x,_n4##y,_p3##z,v)), \ 307.11897 + (I[65] = (img)(_p2##x,_p3##y,_p2##z,v)), \ 307.11898 + (I[73] = (img)(_p2##x,_p2##y,_p2##z,v)), \ 307.11899 + (I[81] = (img)(_p2##x,_p1##y,_p2##z,v)), \ 307.11900 + (I[89] = (img)(_p2##x,y,_p2##z,v)), \ 307.11901 + (I[97] = (img)(_p2##x,_n1##y,_p2##z,v)), \ 307.11902 + (I[105] = (img)(_p2##x,_n2##y,_p2##z,v)), \ 307.11903 + (I[113] = (img)(_p2##x,_n3##y,_p2##z,v)), \ 307.11904 + (I[121] = (img)(_p2##x,_n4##y,_p2##z,v)), \ 307.11905 + (I[129] = (img)(_p2##x,_p3##y,_p1##z,v)), \ 307.11906 + (I[137] = (img)(_p2##x,_p2##y,_p1##z,v)), \ 307.11907 + (I[145] = (img)(_p2##x,_p1##y,_p1##z,v)), \ 307.11908 + (I[153] = (img)(_p2##x,y,_p1##z,v)), \ 307.11909 + (I[161] = (img)(_p2##x,_n1##y,_p1##z,v)), \ 307.11910 + (I[169] = (img)(_p2##x,_n2##y,_p1##z,v)), \ 307.11911 + (I[177] = (img)(_p2##x,_n3##y,_p1##z,v)), \ 307.11912 + (I[185] = (img)(_p2##x,_n4##y,_p1##z,v)), \ 307.11913 + (I[193] = (img)(_p2##x,_p3##y,z,v)), \ 307.11914 + (I[201] = (img)(_p2##x,_p2##y,z,v)), \ 307.11915 + (I[209] = (img)(_p2##x,_p1##y,z,v)), \ 307.11916 + (I[217] = (img)(_p2##x,y,z,v)), \ 307.11917 + (I[225] = (img)(_p2##x,_n1##y,z,v)), \ 307.11918 + (I[233] = (img)(_p2##x,_n2##y,z,v)), \ 307.11919 + (I[241] = (img)(_p2##x,_n3##y,z,v)), \ 307.11920 + (I[249] = (img)(_p2##x,_n4##y,z,v)), \ 307.11921 + (I[257] = (img)(_p2##x,_p3##y,_n1##z,v)), \ 307.11922 + (I[265] = (img)(_p2##x,_p2##y,_n1##z,v)), \ 307.11923 + (I[273] = (img)(_p2##x,_p1##y,_n1##z,v)), \ 307.11924 + (I[281] = (img)(_p2##x,y,_n1##z,v)), \ 307.11925 + (I[289] = (img)(_p2##x,_n1##y,_n1##z,v)), \ 307.11926 + (I[297] = (img)(_p2##x,_n2##y,_n1##z,v)), \ 307.11927 + (I[305] = (img)(_p2##x,_n3##y,_n1##z,v)), \ 307.11928 + (I[313] = (img)(_p2##x,_n4##y,_n1##z,v)), \ 307.11929 + (I[321] = (img)(_p2##x,_p3##y,_n2##z,v)), \ 307.11930 + (I[329] = (img)(_p2##x,_p2##y,_n2##z,v)), \ 307.11931 + (I[337] = (img)(_p2##x,_p1##y,_n2##z,v)), \ 307.11932 + (I[345] = (img)(_p2##x,y,_n2##z,v)), \ 307.11933 + (I[353] = (img)(_p2##x,_n1##y,_n2##z,v)), \ 307.11934 + (I[361] = (img)(_p2##x,_n2##y,_n2##z,v)), \ 307.11935 + (I[369] = (img)(_p2##x,_n3##y,_n2##z,v)), \ 307.11936 + (I[377] = (img)(_p2##x,_n4##y,_n2##z,v)), \ 307.11937 + (I[385] = (img)(_p2##x,_p3##y,_n3##z,v)), \ 307.11938 + (I[393] = (img)(_p2##x,_p2##y,_n3##z,v)), \ 307.11939 + (I[401] = (img)(_p2##x,_p1##y,_n3##z,v)), \ 307.11940 + (I[409] = (img)(_p2##x,y,_n3##z,v)), \ 307.11941 + (I[417] = (img)(_p2##x,_n1##y,_n3##z,v)), \ 307.11942 + (I[425] = (img)(_p2##x,_n2##y,_n3##z,v)), \ 307.11943 + (I[433] = (img)(_p2##x,_n3##y,_n3##z,v)), \ 307.11944 + (I[441] = (img)(_p2##x,_n4##y,_n3##z,v)), \ 307.11945 + (I[449] = (img)(_p2##x,_p3##y,_n4##z,v)), \ 307.11946 + (I[457] = (img)(_p2##x,_p2##y,_n4##z,v)), \ 307.11947 + (I[465] = (img)(_p2##x,_p1##y,_n4##z,v)), \ 307.11948 + (I[473] = (img)(_p2##x,y,_n4##z,v)), \ 307.11949 + (I[481] = (img)(_p2##x,_n1##y,_n4##z,v)), \ 307.11950 + (I[489] = (img)(_p2##x,_n2##y,_n4##z,v)), \ 307.11951 + (I[497] = (img)(_p2##x,_n3##y,_n4##z,v)), \ 307.11952 + (I[505] = (img)(_p2##x,_n4##y,_n4##z,v)), \ 307.11953 + (I[2] = (img)(_p1##x,_p3##y,_p3##z,v)), \ 307.11954 + (I[10] = (img)(_p1##x,_p2##y,_p3##z,v)), \ 307.11955 + (I[18] = (img)(_p1##x,_p1##y,_p3##z,v)), \ 307.11956 + (I[26] = (img)(_p1##x,y,_p3##z,v)), \ 307.11957 + (I[34] = (img)(_p1##x,_n1##y,_p3##z,v)), \ 307.11958 + (I[42] = (img)(_p1##x,_n2##y,_p3##z,v)), \ 307.11959 + (I[50] = (img)(_p1##x,_n3##y,_p3##z,v)), \ 307.11960 + (I[58] = (img)(_p1##x,_n4##y,_p3##z,v)), \ 307.11961 + (I[66] = (img)(_p1##x,_p3##y,_p2##z,v)), \ 307.11962 + (I[74] = (img)(_p1##x,_p2##y,_p2##z,v)), \ 307.11963 + (I[82] = (img)(_p1##x,_p1##y,_p2##z,v)), \ 307.11964 + (I[90] = (img)(_p1##x,y,_p2##z,v)), \ 307.11965 + (I[98] = (img)(_p1##x,_n1##y,_p2##z,v)), \ 307.11966 + (I[106] = (img)(_p1##x,_n2##y,_p2##z,v)), \ 307.11967 + (I[114] = (img)(_p1##x,_n3##y,_p2##z,v)), \ 307.11968 + (I[122] = (img)(_p1##x,_n4##y,_p2##z,v)), \ 307.11969 + (I[130] = (img)(_p1##x,_p3##y,_p1##z,v)), \ 307.11970 + (I[138] = (img)(_p1##x,_p2##y,_p1##z,v)), \ 307.11971 + (I[146] = (img)(_p1##x,_p1##y,_p1##z,v)), \ 307.11972 + (I[154] = (img)(_p1##x,y,_p1##z,v)), \ 307.11973 + (I[162] = (img)(_p1##x,_n1##y,_p1##z,v)), \ 307.11974 + (I[170] = (img)(_p1##x,_n2##y,_p1##z,v)), \ 307.11975 + (I[178] = (img)(_p1##x,_n3##y,_p1##z,v)), \ 307.11976 + (I[186] = (img)(_p1##x,_n4##y,_p1##z,v)), \ 307.11977 + (I[194] = (img)(_p1##x,_p3##y,z,v)), \ 307.11978 + (I[202] = (img)(_p1##x,_p2##y,z,v)), \ 307.11979 + (I[210] = (img)(_p1##x,_p1##y,z,v)), \ 307.11980 + (I[218] = (img)(_p1##x,y,z,v)), \ 307.11981 + (I[226] = (img)(_p1##x,_n1##y,z,v)), \ 307.11982 + (I[234] = (img)(_p1##x,_n2##y,z,v)), \ 307.11983 + (I[242] = (img)(_p1##x,_n3##y,z,v)), \ 307.11984 + (I[250] = (img)(_p1##x,_n4##y,z,v)), \ 307.11985 + (I[258] = (img)(_p1##x,_p3##y,_n1##z,v)), \ 307.11986 + (I[266] = (img)(_p1##x,_p2##y,_n1##z,v)), \ 307.11987 + (I[274] = (img)(_p1##x,_p1##y,_n1##z,v)), \ 307.11988 + (I[282] = (img)(_p1##x,y,_n1##z,v)), \ 307.11989 + (I[290] = (img)(_p1##x,_n1##y,_n1##z,v)), \ 307.11990 + (I[298] = (img)(_p1##x,_n2##y,_n1##z,v)), \ 307.11991 + (I[306] = (img)(_p1##x,_n3##y,_n1##z,v)), \ 307.11992 + (I[314] = (img)(_p1##x,_n4##y,_n1##z,v)), \ 307.11993 + (I[322] = (img)(_p1##x,_p3##y,_n2##z,v)), \ 307.11994 + (I[330] = (img)(_p1##x,_p2##y,_n2##z,v)), \ 307.11995 + (I[338] = (img)(_p1##x,_p1##y,_n2##z,v)), \ 307.11996 + (I[346] = (img)(_p1##x,y,_n2##z,v)), \ 307.11997 + (I[354] = (img)(_p1##x,_n1##y,_n2##z,v)), \ 307.11998 + (I[362] = (img)(_p1##x,_n2##y,_n2##z,v)), \ 307.11999 + (I[370] = (img)(_p1##x,_n3##y,_n2##z,v)), \ 307.12000 + (I[378] = (img)(_p1##x,_n4##y,_n2##z,v)), \ 307.12001 + (I[386] = (img)(_p1##x,_p3##y,_n3##z,v)), \ 307.12002 + (I[394] = (img)(_p1##x,_p2##y,_n3##z,v)), \ 307.12003 + (I[402] = (img)(_p1##x,_p1##y,_n3##z,v)), \ 307.12004 + (I[410] = (img)(_p1##x,y,_n3##z,v)), \ 307.12005 + (I[418] = (img)(_p1##x,_n1##y,_n3##z,v)), \ 307.12006 + (I[426] = (img)(_p1##x,_n2##y,_n3##z,v)), \ 307.12007 + (I[434] = (img)(_p1##x,_n3##y,_n3##z,v)), \ 307.12008 + (I[442] = (img)(_p1##x,_n4##y,_n3##z,v)), \ 307.12009 + (I[450] = (img)(_p1##x,_p3##y,_n4##z,v)), \ 307.12010 + (I[458] = (img)(_p1##x,_p2##y,_n4##z,v)), \ 307.12011 + (I[466] = (img)(_p1##x,_p1##y,_n4##z,v)), \ 307.12012 + (I[474] = (img)(_p1##x,y,_n4##z,v)), \ 307.12013 + (I[482] = (img)(_p1##x,_n1##y,_n4##z,v)), \ 307.12014 + (I[490] = (img)(_p1##x,_n2##y,_n4##z,v)), \ 307.12015 + (I[498] = (img)(_p1##x,_n3##y,_n4##z,v)), \ 307.12016 + (I[506] = (img)(_p1##x,_n4##y,_n4##z,v)), \ 307.12017 + (I[3] = (img)(x,_p3##y,_p3##z,v)), \ 307.12018 + (I[11] = (img)(x,_p2##y,_p3##z,v)), \ 307.12019 + (I[19] = (img)(x,_p1##y,_p3##z,v)), \ 307.12020 + (I[27] = (img)(x,y,_p3##z,v)), \ 307.12021 + (I[35] = (img)(x,_n1##y,_p3##z,v)), \ 307.12022 + (I[43] = (img)(x,_n2##y,_p3##z,v)), \ 307.12023 + (I[51] = (img)(x,_n3##y,_p3##z,v)), \ 307.12024 + (I[59] = (img)(x,_n4##y,_p3##z,v)), \ 307.12025 + (I[67] = (img)(x,_p3##y,_p2##z,v)), \ 307.12026 + (I[75] = (img)(x,_p2##y,_p2##z,v)), \ 307.12027 + (I[83] = (img)(x,_p1##y,_p2##z,v)), \ 307.12028 + (I[91] = (img)(x,y,_p2##z,v)), \ 307.12029 + (I[99] = (img)(x,_n1##y,_p2##z,v)), \ 307.12030 + (I[107] = (img)(x,_n2##y,_p2##z,v)), \ 307.12031 + (I[115] = (img)(x,_n3##y,_p2##z,v)), \ 307.12032 + (I[123] = (img)(x,_n4##y,_p2##z,v)), \ 307.12033 + (I[131] = (img)(x,_p3##y,_p1##z,v)), \ 307.12034 + (I[139] = (img)(x,_p2##y,_p1##z,v)), \ 307.12035 + (I[147] = (img)(x,_p1##y,_p1##z,v)), \ 307.12036 + (I[155] = (img)(x,y,_p1##z,v)), \ 307.12037 + (I[163] = (img)(x,_n1##y,_p1##z,v)), \ 307.12038 + (I[171] = (img)(x,_n2##y,_p1##z,v)), \ 307.12039 + (I[179] = (img)(x,_n3##y,_p1##z,v)), \ 307.12040 + (I[187] = (img)(x,_n4##y,_p1##z,v)), \ 307.12041 + (I[195] = (img)(x,_p3##y,z,v)), \ 307.12042 + (I[203] = (img)(x,_p2##y,z,v)), \ 307.12043 + (I[211] = (img)(x,_p1##y,z,v)), \ 307.12044 + (I[219] = (img)(x,y,z,v)), \ 307.12045 + (I[227] = (img)(x,_n1##y,z,v)), \ 307.12046 + (I[235] = (img)(x,_n2##y,z,v)), \ 307.12047 + (I[243] = (img)(x,_n3##y,z,v)), \ 307.12048 + (I[251] = (img)(x,_n4##y,z,v)), \ 307.12049 + (I[259] = (img)(x,_p3##y,_n1##z,v)), \ 307.12050 + (I[267] = (img)(x,_p2##y,_n1##z,v)), \ 307.12051 + (I[275] = (img)(x,_p1##y,_n1##z,v)), \ 307.12052 + (I[283] = (img)(x,y,_n1##z,v)), \ 307.12053 + (I[291] = (img)(x,_n1##y,_n1##z,v)), \ 307.12054 + (I[299] = (img)(x,_n2##y,_n1##z,v)), \ 307.12055 + (I[307] = (img)(x,_n3##y,_n1##z,v)), \ 307.12056 + (I[315] = (img)(x,_n4##y,_n1##z,v)), \ 307.12057 + (I[323] = (img)(x,_p3##y,_n2##z,v)), \ 307.12058 + (I[331] = (img)(x,_p2##y,_n2##z,v)), \ 307.12059 + (I[339] = (img)(x,_p1##y,_n2##z,v)), \ 307.12060 + (I[347] = (img)(x,y,_n2##z,v)), \ 307.12061 + (I[355] = (img)(x,_n1##y,_n2##z,v)), \ 307.12062 + (I[363] = (img)(x,_n2##y,_n2##z,v)), \ 307.12063 + (I[371] = (img)(x,_n3##y,_n2##z,v)), \ 307.12064 + (I[379] = (img)(x,_n4##y,_n2##z,v)), \ 307.12065 + (I[387] = (img)(x,_p3##y,_n3##z,v)), \ 307.12066 + (I[395] = (img)(x,_p2##y,_n3##z,v)), \ 307.12067 + (I[403] = (img)(x,_p1##y,_n3##z,v)), \ 307.12068 + (I[411] = (img)(x,y,_n3##z,v)), \ 307.12069 + (I[419] = (img)(x,_n1##y,_n3##z,v)), \ 307.12070 + (I[427] = (img)(x,_n2##y,_n3##z,v)), \ 307.12071 + (I[435] = (img)(x,_n3##y,_n3##z,v)), \ 307.12072 + (I[443] = (img)(x,_n4##y,_n3##z,v)), \ 307.12073 + (I[451] = (img)(x,_p3##y,_n4##z,v)), \ 307.12074 + (I[459] = (img)(x,_p2##y,_n4##z,v)), \ 307.12075 + (I[467] = (img)(x,_p1##y,_n4##z,v)), \ 307.12076 + (I[475] = (img)(x,y,_n4##z,v)), \ 307.12077 + (I[483] = (img)(x,_n1##y,_n4##z,v)), \ 307.12078 + (I[491] = (img)(x,_n2##y,_n4##z,v)), \ 307.12079 + (I[499] = (img)(x,_n3##y,_n4##z,v)), \ 307.12080 + (I[507] = (img)(x,_n4##y,_n4##z,v)), \ 307.12081 + (I[4] = (img)(_n1##x,_p3##y,_p3##z,v)), \ 307.12082 + (I[12] = (img)(_n1##x,_p2##y,_p3##z,v)), \ 307.12083 + (I[20] = (img)(_n1##x,_p1##y,_p3##z,v)), \ 307.12084 + (I[28] = (img)(_n1##x,y,_p3##z,v)), \ 307.12085 + (I[36] = (img)(_n1##x,_n1##y,_p3##z,v)), \ 307.12086 + (I[44] = (img)(_n1##x,_n2##y,_p3##z,v)), \ 307.12087 + (I[52] = (img)(_n1##x,_n3##y,_p3##z,v)), \ 307.12088 + (I[60] = (img)(_n1##x,_n4##y,_p3##z,v)), \ 307.12089 + (I[68] = (img)(_n1##x,_p3##y,_p2##z,v)), \ 307.12090 + (I[76] = (img)(_n1##x,_p2##y,_p2##z,v)), \ 307.12091 + (I[84] = (img)(_n1##x,_p1##y,_p2##z,v)), \ 307.12092 + (I[92] = (img)(_n1##x,y,_p2##z,v)), \ 307.12093 + (I[100] = (img)(_n1##x,_n1##y,_p2##z,v)), \ 307.12094 + (I[108] = (img)(_n1##x,_n2##y,_p2##z,v)), \ 307.12095 + (I[116] = (img)(_n1##x,_n3##y,_p2##z,v)), \ 307.12096 + (I[124] = (img)(_n1##x,_n4##y,_p2##z,v)), \ 307.12097 + (I[132] = (img)(_n1##x,_p3##y,_p1##z,v)), \ 307.12098 + (I[140] = (img)(_n1##x,_p2##y,_p1##z,v)), \ 307.12099 + (I[148] = (img)(_n1##x,_p1##y,_p1##z,v)), \ 307.12100 + (I[156] = (img)(_n1##x,y,_p1##z,v)), \ 307.12101 + (I[164] = (img)(_n1##x,_n1##y,_p1##z,v)), \ 307.12102 + (I[172] = (img)(_n1##x,_n2##y,_p1##z,v)), \ 307.12103 + (I[180] = (img)(_n1##x,_n3##y,_p1##z,v)), \ 307.12104 + (I[188] = (img)(_n1##x,_n4##y,_p1##z,v)), \ 307.12105 + (I[196] = (img)(_n1##x,_p3##y,z,v)), \ 307.12106 + (I[204] = (img)(_n1##x,_p2##y,z,v)), \ 307.12107 + (I[212] = (img)(_n1##x,_p1##y,z,v)), \ 307.12108 + (I[220] = (img)(_n1##x,y,z,v)), \ 307.12109 + (I[228] = (img)(_n1##x,_n1##y,z,v)), \ 307.12110 + (I[236] = (img)(_n1##x,_n2##y,z,v)), \ 307.12111 + (I[244] = (img)(_n1##x,_n3##y,z,v)), \ 307.12112 + (I[252] = (img)(_n1##x,_n4##y,z,v)), \ 307.12113 + (I[260] = (img)(_n1##x,_p3##y,_n1##z,v)), \ 307.12114 + (I[268] = (img)(_n1##x,_p2##y,_n1##z,v)), \ 307.12115 + (I[276] = (img)(_n1##x,_p1##y,_n1##z,v)), \ 307.12116 + (I[284] = (img)(_n1##x,y,_n1##z,v)), \ 307.12117 + (I[292] = (img)(_n1##x,_n1##y,_n1##z,v)), \ 307.12118 + (I[300] = (img)(_n1##x,_n2##y,_n1##z,v)), \ 307.12119 + (I[308] = (img)(_n1##x,_n3##y,_n1##z,v)), \ 307.12120 + (I[316] = (img)(_n1##x,_n4##y,_n1##z,v)), \ 307.12121 + (I[324] = (img)(_n1##x,_p3##y,_n2##z,v)), \ 307.12122 + (I[332] = (img)(_n1##x,_p2##y,_n2##z,v)), \ 307.12123 + (I[340] = (img)(_n1##x,_p1##y,_n2##z,v)), \ 307.12124 + (I[348] = (img)(_n1##x,y,_n2##z,v)), \ 307.12125 + (I[356] = (img)(_n1##x,_n1##y,_n2##z,v)), \ 307.12126 + (I[364] = (img)(_n1##x,_n2##y,_n2##z,v)), \ 307.12127 + (I[372] = (img)(_n1##x,_n3##y,_n2##z,v)), \ 307.12128 + (I[380] = (img)(_n1##x,_n4##y,_n2##z,v)), \ 307.12129 + (I[388] = (img)(_n1##x,_p3##y,_n3##z,v)), \ 307.12130 + (I[396] = (img)(_n1##x,_p2##y,_n3##z,v)), \ 307.12131 + (I[404] = (img)(_n1##x,_p1##y,_n3##z,v)), \ 307.12132 + (I[412] = (img)(_n1##x,y,_n3##z,v)), \ 307.12133 + (I[420] = (img)(_n1##x,_n1##y,_n3##z,v)), \ 307.12134 + (I[428] = (img)(_n1##x,_n2##y,_n3##z,v)), \ 307.12135 + (I[436] = (img)(_n1##x,_n3##y,_n3##z,v)), \ 307.12136 + (I[444] = (img)(_n1##x,_n4##y,_n3##z,v)), \ 307.12137 + (I[452] = (img)(_n1##x,_p3##y,_n4##z,v)), \ 307.12138 + (I[460] = (img)(_n1##x,_p2##y,_n4##z,v)), \ 307.12139 + (I[468] = (img)(_n1##x,_p1##y,_n4##z,v)), \ 307.12140 + (I[476] = (img)(_n1##x,y,_n4##z,v)), \ 307.12141 + (I[484] = (img)(_n1##x,_n1##y,_n4##z,v)), \ 307.12142 + (I[492] = (img)(_n1##x,_n2##y,_n4##z,v)), \ 307.12143 + (I[500] = (img)(_n1##x,_n3##y,_n4##z,v)), \ 307.12144 + (I[508] = (img)(_n1##x,_n4##y,_n4##z,v)), \ 307.12145 + (I[5] = (img)(_n2##x,_p3##y,_p3##z,v)), \ 307.12146 + (I[13] = (img)(_n2##x,_p2##y,_p3##z,v)), \ 307.12147 + (I[21] = (img)(_n2##x,_p1##y,_p3##z,v)), \ 307.12148 + (I[29] = (img)(_n2##x,y,_p3##z,v)), \ 307.12149 + (I[37] = (img)(_n2##x,_n1##y,_p3##z,v)), \ 307.12150 + (I[45] = (img)(_n2##x,_n2##y,_p3##z,v)), \ 307.12151 + (I[53] = (img)(_n2##x,_n3##y,_p3##z,v)), \ 307.12152 + (I[61] = (img)(_n2##x,_n4##y,_p3##z,v)), \ 307.12153 + (I[69] = (img)(_n2##x,_p3##y,_p2##z,v)), \ 307.12154 + (I[77] = (img)(_n2##x,_p2##y,_p2##z,v)), \ 307.12155 + (I[85] = (img)(_n2##x,_p1##y,_p2##z,v)), \ 307.12156 + (I[93] = (img)(_n2##x,y,_p2##z,v)), \ 307.12157 + (I[101] = (img)(_n2##x,_n1##y,_p2##z,v)), \ 307.12158 + (I[109] = (img)(_n2##x,_n2##y,_p2##z,v)), \ 307.12159 + (I[117] = (img)(_n2##x,_n3##y,_p2##z,v)), \ 307.12160 + (I[125] = (img)(_n2##x,_n4##y,_p2##z,v)), \ 307.12161 + (I[133] = (img)(_n2##x,_p3##y,_p1##z,v)), \ 307.12162 + (I[141] = (img)(_n2##x,_p2##y,_p1##z,v)), \ 307.12163 + (I[149] = (img)(_n2##x,_p1##y,_p1##z,v)), \ 307.12164 + (I[157] = (img)(_n2##x,y,_p1##z,v)), \ 307.12165 + (I[165] = (img)(_n2##x,_n1##y,_p1##z,v)), \ 307.12166 + (I[173] = (img)(_n2##x,_n2##y,_p1##z,v)), \ 307.12167 + (I[181] = (img)(_n2##x,_n3##y,_p1##z,v)), \ 307.12168 + (I[189] = (img)(_n2##x,_n4##y,_p1##z,v)), \ 307.12169 + (I[197] = (img)(_n2##x,_p3##y,z,v)), \ 307.12170 + (I[205] = (img)(_n2##x,_p2##y,z,v)), \ 307.12171 + (I[213] = (img)(_n2##x,_p1##y,z,v)), \ 307.12172 + (I[221] = (img)(_n2##x,y,z,v)), \ 307.12173 + (I[229] = (img)(_n2##x,_n1##y,z,v)), \ 307.12174 + (I[237] = (img)(_n2##x,_n2##y,z,v)), \ 307.12175 + (I[245] = (img)(_n2##x,_n3##y,z,v)), \ 307.12176 + (I[253] = (img)(_n2##x,_n4##y,z,v)), \ 307.12177 + (I[261] = (img)(_n2##x,_p3##y,_n1##z,v)), \ 307.12178 + (I[269] = (img)(_n2##x,_p2##y,_n1##z,v)), \ 307.12179 + (I[277] = (img)(_n2##x,_p1##y,_n1##z,v)), \ 307.12180 + (I[285] = (img)(_n2##x,y,_n1##z,v)), \ 307.12181 + (I[293] = (img)(_n2##x,_n1##y,_n1##z,v)), \ 307.12182 + (I[301] = (img)(_n2##x,_n2##y,_n1##z,v)), \ 307.12183 + (I[309] = (img)(_n2##x,_n3##y,_n1##z,v)), \ 307.12184 + (I[317] = (img)(_n2##x,_n4##y,_n1##z,v)), \ 307.12185 + (I[325] = (img)(_n2##x,_p3##y,_n2##z,v)), \ 307.12186 + (I[333] = (img)(_n2##x,_p2##y,_n2##z,v)), \ 307.12187 + (I[341] = (img)(_n2##x,_p1##y,_n2##z,v)), \ 307.12188 + (I[349] = (img)(_n2##x,y,_n2##z,v)), \ 307.12189 + (I[357] = (img)(_n2##x,_n1##y,_n2##z,v)), \ 307.12190 + (I[365] = (img)(_n2##x,_n2##y,_n2##z,v)), \ 307.12191 + (I[373] = (img)(_n2##x,_n3##y,_n2##z,v)), \ 307.12192 + (I[381] = (img)(_n2##x,_n4##y,_n2##z,v)), \ 307.12193 + (I[389] = (img)(_n2##x,_p3##y,_n3##z,v)), \ 307.12194 + (I[397] = (img)(_n2##x,_p2##y,_n3##z,v)), \ 307.12195 + (I[405] = (img)(_n2##x,_p1##y,_n3##z,v)), \ 307.12196 + (I[413] = (img)(_n2##x,y,_n3##z,v)), \ 307.12197 + (I[421] = (img)(_n2##x,_n1##y,_n3##z,v)), \ 307.12198 + (I[429] = (img)(_n2##x,_n2##y,_n3##z,v)), \ 307.12199 + (I[437] = (img)(_n2##x,_n3##y,_n3##z,v)), \ 307.12200 + (I[445] = (img)(_n2##x,_n4##y,_n3##z,v)), \ 307.12201 + (I[453] = (img)(_n2##x,_p3##y,_n4##z,v)), \ 307.12202 + (I[461] = (img)(_n2##x,_p2##y,_n4##z,v)), \ 307.12203 + (I[469] = (img)(_n2##x,_p1##y,_n4##z,v)), \ 307.12204 + (I[477] = (img)(_n2##x,y,_n4##z,v)), \ 307.12205 + (I[485] = (img)(_n2##x,_n1##y,_n4##z,v)), \ 307.12206 + (I[493] = (img)(_n2##x,_n2##y,_n4##z,v)), \ 307.12207 + (I[501] = (img)(_n2##x,_n3##y,_n4##z,v)), \ 307.12208 + (I[509] = (img)(_n2##x,_n4##y,_n4##z,v)), \ 307.12209 + (I[6] = (img)(_n3##x,_p3##y,_p3##z,v)), \ 307.12210 + (I[14] = (img)(_n3##x,_p2##y,_p3##z,v)), \ 307.12211 + (I[22] = (img)(_n3##x,_p1##y,_p3##z,v)), \ 307.12212 + (I[30] = (img)(_n3##x,y,_p3##z,v)), \ 307.12213 + (I[38] = (img)(_n3##x,_n1##y,_p3##z,v)), \ 307.12214 + (I[46] = (img)(_n3##x,_n2##y,_p3##z,v)), \ 307.12215 + (I[54] = (img)(_n3##x,_n3##y,_p3##z,v)), \ 307.12216 + (I[62] = (img)(_n3##x,_n4##y,_p3##z,v)), \ 307.12217 + (I[70] = (img)(_n3##x,_p3##y,_p2##z,v)), \ 307.12218 + (I[78] = (img)(_n3##x,_p2##y,_p2##z,v)), \ 307.12219 + (I[86] = (img)(_n3##x,_p1##y,_p2##z,v)), \ 307.12220 + (I[94] = (img)(_n3##x,y,_p2##z,v)), \ 307.12221 + (I[102] = (img)(_n3##x,_n1##y,_p2##z,v)), \ 307.12222 + (I[110] = (img)(_n3##x,_n2##y,_p2##z,v)), \ 307.12223 + (I[118] = (img)(_n3##x,_n3##y,_p2##z,v)), \ 307.12224 + (I[126] = (img)(_n3##x,_n4##y,_p2##z,v)), \ 307.12225 + (I[134] = (img)(_n3##x,_p3##y,_p1##z,v)), \ 307.12226 + (I[142] = (img)(_n3##x,_p2##y,_p1##z,v)), \ 307.12227 + (I[150] = (img)(_n3##x,_p1##y,_p1##z,v)), \ 307.12228 + (I[158] = (img)(_n3##x,y,_p1##z,v)), \ 307.12229 + (I[166] = (img)(_n3##x,_n1##y,_p1##z,v)), \ 307.12230 + (I[174] = (img)(_n3##x,_n2##y,_p1##z,v)), \ 307.12231 + (I[182] = (img)(_n3##x,_n3##y,_p1##z,v)), \ 307.12232 + (I[190] = (img)(_n3##x,_n4##y,_p1##z,v)), \ 307.12233 + (I[198] = (img)(_n3##x,_p3##y,z,v)), \ 307.12234 + (I[206] = (img)(_n3##x,_p2##y,z,v)), \ 307.12235 + (I[214] = (img)(_n3##x,_p1##y,z,v)), \ 307.12236 + (I[222] = (img)(_n3##x,y,z,v)), \ 307.12237 + (I[230] = (img)(_n3##x,_n1##y,z,v)), \ 307.12238 + (I[238] = (img)(_n3##x,_n2##y,z,v)), \ 307.12239 + (I[246] = (img)(_n3##x,_n3##y,z,v)), \ 307.12240 + (I[254] = (img)(_n3##x,_n4##y,z,v)), \ 307.12241 + (I[262] = (img)(_n3##x,_p3##y,_n1##z,v)), \ 307.12242 + (I[270] = (img)(_n3##x,_p2##y,_n1##z,v)), \ 307.12243 + (I[278] = (img)(_n3##x,_p1##y,_n1##z,v)), \ 307.12244 + (I[286] = (img)(_n3##x,y,_n1##z,v)), \ 307.12245 + (I[294] = (img)(_n3##x,_n1##y,_n1##z,v)), \ 307.12246 + (I[302] = (img)(_n3##x,_n2##y,_n1##z,v)), \ 307.12247 + (I[310] = (img)(_n3##x,_n3##y,_n1##z,v)), \ 307.12248 + (I[318] = (img)(_n3##x,_n4##y,_n1##z,v)), \ 307.12249 + (I[326] = (img)(_n3##x,_p3##y,_n2##z,v)), \ 307.12250 + (I[334] = (img)(_n3##x,_p2##y,_n2##z,v)), \ 307.12251 + (I[342] = (img)(_n3##x,_p1##y,_n2##z,v)), \ 307.12252 + (I[350] = (img)(_n3##x,y,_n2##z,v)), \ 307.12253 + (I[358] = (img)(_n3##x,_n1##y,_n2##z,v)), \ 307.12254 + (I[366] = (img)(_n3##x,_n2##y,_n2##z,v)), \ 307.12255 + (I[374] = (img)(_n3##x,_n3##y,_n2##z,v)), \ 307.12256 + (I[382] = (img)(_n3##x,_n4##y,_n2##z,v)), \ 307.12257 + (I[390] = (img)(_n3##x,_p3##y,_n3##z,v)), \ 307.12258 + (I[398] = (img)(_n3##x,_p2##y,_n3##z,v)), \ 307.12259 + (I[406] = (img)(_n3##x,_p1##y,_n3##z,v)), \ 307.12260 + (I[414] = (img)(_n3##x,y,_n3##z,v)), \ 307.12261 + (I[422] = (img)(_n3##x,_n1##y,_n3##z,v)), \ 307.12262 + (I[430] = (img)(_n3##x,_n2##y,_n3##z,v)), \ 307.12263 + (I[438] = (img)(_n3##x,_n3##y,_n3##z,v)), \ 307.12264 + (I[446] = (img)(_n3##x,_n4##y,_n3##z,v)), \ 307.12265 + (I[454] = (img)(_n3##x,_p3##y,_n4##z,v)), \ 307.12266 + (I[462] = (img)(_n3##x,_p2##y,_n4##z,v)), \ 307.12267 + (I[470] = (img)(_n3##x,_p1##y,_n4##z,v)), \ 307.12268 + (I[478] = (img)(_n3##x,y,_n4##z,v)), \ 307.12269 + (I[486] = (img)(_n3##x,_n1##y,_n4##z,v)), \ 307.12270 + (I[494] = (img)(_n3##x,_n2##y,_n4##z,v)), \ 307.12271 + (I[502] = (img)(_n3##x,_n3##y,_n4##z,v)), \ 307.12272 + (I[510] = (img)(_n3##x,_n4##y,_n4##z,v)), \ 307.12273 + x+4>=(int)((img).width)?(int)((img).width)-1:x+4); \ 307.12274 + x<=(int)(x1) && ((_n4##x<(int)((img).width) && ( \ 307.12275 + (I[7] = (img)(_n4##x,_p3##y,_p3##z,v)), \ 307.12276 + (I[15] = (img)(_n4##x,_p2##y,_p3##z,v)), \ 307.12277 + (I[23] = (img)(_n4##x,_p1##y,_p3##z,v)), \ 307.12278 + (I[31] = (img)(_n4##x,y,_p3##z,v)), \ 307.12279 + (I[39] = (img)(_n4##x,_n1##y,_p3##z,v)), \ 307.12280 + (I[47] = (img)(_n4##x,_n2##y,_p3##z,v)), \ 307.12281 + (I[55] = (img)(_n4##x,_n3##y,_p3##z,v)), \ 307.12282 + (I[63] = (img)(_n4##x,_n4##y,_p3##z,v)), \ 307.12283 + (I[71] = (img)(_n4##x,_p3##y,_p2##z,v)), \ 307.12284 + (I[79] = (img)(_n4##x,_p2##y,_p2##z,v)), \ 307.12285 + (I[87] = (img)(_n4##x,_p1##y,_p2##z,v)), \ 307.12286 + (I[95] = (img)(_n4##x,y,_p2##z,v)), \ 307.12287 + (I[103] = (img)(_n4##x,_n1##y,_p2##z,v)), \ 307.12288 + (I[111] = (img)(_n4##x,_n2##y,_p2##z,v)), \ 307.12289 + (I[119] = (img)(_n4##x,_n3##y,_p2##z,v)), \ 307.12290 + (I[127] = (img)(_n4##x,_n4##y,_p2##z,v)), \ 307.12291 + (I[135] = (img)(_n4##x,_p3##y,_p1##z,v)), \ 307.12292 + (I[143] = (img)(_n4##x,_p2##y,_p1##z,v)), \ 307.12293 + (I[151] = (img)(_n4##x,_p1##y,_p1##z,v)), \ 307.12294 + (I[159] = (img)(_n4##x,y,_p1##z,v)), \ 307.12295 + (I[167] = (img)(_n4##x,_n1##y,_p1##z,v)), \ 307.12296 + (I[175] = (img)(_n4##x,_n2##y,_p1##z,v)), \ 307.12297 + (I[183] = (img)(_n4##x,_n3##y,_p1##z,v)), \ 307.12298 + (I[191] = (img)(_n4##x,_n4##y,_p1##z,v)), \ 307.12299 + (I[199] = (img)(_n4##x,_p3##y,z,v)), \ 307.12300 + (I[207] = (img)(_n4##x,_p2##y,z,v)), \ 307.12301 + (I[215] = (img)(_n4##x,_p1##y,z,v)), \ 307.12302 + (I[223] = (img)(_n4##x,y,z,v)), \ 307.12303 + (I[231] = (img)(_n4##x,_n1##y,z,v)), \ 307.12304 + (I[239] = (img)(_n4##x,_n2##y,z,v)), \ 307.12305 + (I[247] = (img)(_n4##x,_n3##y,z,v)), \ 307.12306 + (I[255] = (img)(_n4##x,_n4##y,z,v)), \ 307.12307 + (I[263] = (img)(_n4##x,_p3##y,_n1##z,v)), \ 307.12308 + (I[271] = (img)(_n4##x,_p2##y,_n1##z,v)), \ 307.12309 + (I[279] = (img)(_n4##x,_p1##y,_n1##z,v)), \ 307.12310 + (I[287] = (img)(_n4##x,y,_n1##z,v)), \ 307.12311 + (I[295] = (img)(_n4##x,_n1##y,_n1##z,v)), \ 307.12312 + (I[303] = (img)(_n4##x,_n2##y,_n1##z,v)), \ 307.12313 + (I[311] = (img)(_n4##x,_n3##y,_n1##z,v)), \ 307.12314 + (I[319] = (img)(_n4##x,_n4##y,_n1##z,v)), \ 307.12315 + (I[327] = (img)(_n4##x,_p3##y,_n2##z,v)), \ 307.12316 + (I[335] = (img)(_n4##x,_p2##y,_n2##z,v)), \ 307.12317 + (I[343] = (img)(_n4##x,_p1##y,_n2##z,v)), \ 307.12318 + (I[351] = (img)(_n4##x,y,_n2##z,v)), \ 307.12319 + (I[359] = (img)(_n4##x,_n1##y,_n2##z,v)), \ 307.12320 + (I[367] = (img)(_n4##x,_n2##y,_n2##z,v)), \ 307.12321 + (I[375] = (img)(_n4##x,_n3##y,_n2##z,v)), \ 307.12322 + (I[383] = (img)(_n4##x,_n4##y,_n2##z,v)), \ 307.12323 + (I[391] = (img)(_n4##x,_p3##y,_n3##z,v)), \ 307.12324 + (I[399] = (img)(_n4##x,_p2##y,_n3##z,v)), \ 307.12325 + (I[407] = (img)(_n4##x,_p1##y,_n3##z,v)), \ 307.12326 + (I[415] = (img)(_n4##x,y,_n3##z,v)), \ 307.12327 + (I[423] = (img)(_n4##x,_n1##y,_n3##z,v)), \ 307.12328 + (I[431] = (img)(_n4##x,_n2##y,_n3##z,v)), \ 307.12329 + (I[439] = (img)(_n4##x,_n3##y,_n3##z,v)), \ 307.12330 + (I[447] = (img)(_n4##x,_n4##y,_n3##z,v)), \ 307.12331 + (I[455] = (img)(_n4##x,_p3##y,_n4##z,v)), \ 307.12332 + (I[463] = (img)(_n4##x,_p2##y,_n4##z,v)), \ 307.12333 + (I[471] = (img)(_n4##x,_p1##y,_n4##z,v)), \ 307.12334 + (I[479] = (img)(_n4##x,y,_n4##z,v)), \ 307.12335 + (I[487] = (img)(_n4##x,_n1##y,_n4##z,v)), \ 307.12336 + (I[495] = (img)(_n4##x,_n2##y,_n4##z,v)), \ 307.12337 + (I[503] = (img)(_n4##x,_n3##y,_n4##z,v)), \ 307.12338 + (I[511] = (img)(_n4##x,_n4##y,_n4##z,v)),1)) || \ 307.12339 + _n3##x==--_n4##x || _n2##x==--_n3##x || _n1##x==--_n2##x || x==(_n4##x = _n3##x = _n2##x = --_n1##x)); \ 307.12340 + I[0] = I[1], I[1] = I[2], I[2] = I[3], I[3] = I[4], I[4] = I[5], I[5] = I[6], I[6] = I[7], \ 307.12341 + I[8] = I[9], I[9] = I[10], I[10] = I[11], I[11] = I[12], I[12] = I[13], I[13] = I[14], I[14] = I[15], \ 307.12342 + I[16] = I[17], I[17] = I[18], I[18] = I[19], I[19] = I[20], I[20] = I[21], I[21] = I[22], I[22] = I[23], \ 307.12343 + I[24] = I[25], I[25] = I[26], I[26] = I[27], I[27] = I[28], I[28] = I[29], I[29] = I[30], I[30] = I[31], \ 307.12344 + I[32] = I[33], I[33] = I[34], I[34] = I[35], I[35] = I[36], I[36] = I[37], I[37] = I[38], I[38] = I[39], \ 307.12345 + I[40] = I[41], I[41] = I[42], I[42] = I[43], I[43] = I[44], I[44] = I[45], I[45] = I[46], I[46] = I[47], \ 307.12346 + I[48] = I[49], I[49] = I[50], I[50] = I[51], I[51] = I[52], I[52] = I[53], I[53] = I[54], I[54] = I[55], \ 307.12347 + I[56] = I[57], I[57] = I[58], I[58] = I[59], I[59] = I[60], I[60] = I[61], I[61] = I[62], I[62] = I[63], \ 307.12348 + I[64] = I[65], I[65] = I[66], I[66] = I[67], I[67] = I[68], I[68] = I[69], I[69] = I[70], I[70] = I[71], \ 307.12349 + I[72] = I[73], I[73] = I[74], I[74] = I[75], I[75] = I[76], I[76] = I[77], I[77] = I[78], I[78] = I[79], \ 307.12350 + I[80] = I[81], I[81] = I[82], I[82] = I[83], I[83] = I[84], I[84] = I[85], I[85] = I[86], I[86] = I[87], \ 307.12351 + I[88] = I[89], I[89] = I[90], I[90] = I[91], I[91] = I[92], I[92] = I[93], I[93] = I[94], I[94] = I[95], \ 307.12352 + I[96] = I[97], I[97] = I[98], I[98] = I[99], I[99] = I[100], I[100] = I[101], I[101] = I[102], I[102] = I[103], \ 307.12353 + I[104] = I[105], I[105] = I[106], I[106] = I[107], I[107] = I[108], I[108] = I[109], I[109] = I[110], I[110] = I[111], \ 307.12354 + I[112] = I[113], I[113] = I[114], I[114] = I[115], I[115] = I[116], I[116] = I[117], I[117] = I[118], I[118] = I[119], \ 307.12355 + I[120] = I[121], I[121] = I[122], I[122] = I[123], I[123] = I[124], I[124] = I[125], I[125] = I[126], I[126] = I[127], \ 307.12356 + I[128] = I[129], I[129] = I[130], I[130] = I[131], I[131] = I[132], I[132] = I[133], I[133] = I[134], I[134] = I[135], \ 307.12357 + I[136] = I[137], I[137] = I[138], I[138] = I[139], I[139] = I[140], I[140] = I[141], I[141] = I[142], I[142] = I[143], \ 307.12358 + I[144] = I[145], I[145] = I[146], I[146] = I[147], I[147] = I[148], I[148] = I[149], I[149] = I[150], I[150] = I[151], \ 307.12359 + I[152] = I[153], I[153] = I[154], I[154] = I[155], I[155] = I[156], I[156] = I[157], I[157] = I[158], I[158] = I[159], \ 307.12360 + I[160] = I[161], I[161] = I[162], I[162] = I[163], I[163] = I[164], I[164] = I[165], I[165] = I[166], I[166] = I[167], \ 307.12361 + I[168] = I[169], I[169] = I[170], I[170] = I[171], I[171] = I[172], I[172] = I[173], I[173] = I[174], I[174] = I[175], \ 307.12362 + I[176] = I[177], I[177] = I[178], I[178] = I[179], I[179] = I[180], I[180] = I[181], I[181] = I[182], I[182] = I[183], \ 307.12363 + I[184] = I[185], I[185] = I[186], I[186] = I[187], I[187] = I[188], I[188] = I[189], I[189] = I[190], I[190] = I[191], \ 307.12364 + I[192] = I[193], I[193] = I[194], I[194] = I[195], I[195] = I[196], I[196] = I[197], I[197] = I[198], I[198] = I[199], \ 307.12365 + I[200] = I[201], I[201] = I[202], I[202] = I[203], I[203] = I[204], I[204] = I[205], I[205] = I[206], I[206] = I[207], \ 307.12366 + I[208] = I[209], I[209] = I[210], I[210] = I[211], I[211] = I[212], I[212] = I[213], I[213] = I[214], I[214] = I[215], \ 307.12367 + I[216] = I[217], I[217] = I[218], I[218] = I[219], I[219] = I[220], I[220] = I[221], I[221] = I[222], I[222] = I[223], \ 307.12368 + I[224] = I[225], I[225] = I[226], I[226] = I[227], I[227] = I[228], I[228] = I[229], I[229] = I[230], I[230] = I[231], \ 307.12369 + I[232] = I[233], I[233] = I[234], I[234] = I[235], I[235] = I[236], I[236] = I[237], I[237] = I[238], I[238] = I[239], \ 307.12370 + I[240] = I[241], I[241] = I[242], I[242] = I[243], I[243] = I[244], I[244] = I[245], I[245] = I[246], I[246] = I[247], \ 307.12371 + I[248] = I[249], I[249] = I[250], I[250] = I[251], I[251] = I[252], I[252] = I[253], I[253] = I[254], I[254] = I[255], \ 307.12372 + I[256] = I[257], I[257] = I[258], I[258] = I[259], I[259] = I[260], I[260] = I[261], I[261] = I[262], I[262] = I[263], \ 307.12373 + I[264] = I[265], I[265] = I[266], I[266] = I[267], I[267] = I[268], I[268] = I[269], I[269] = I[270], I[270] = I[271], \ 307.12374 + I[272] = I[273], I[273] = I[274], I[274] = I[275], I[275] = I[276], I[276] = I[277], I[277] = I[278], I[278] = I[279], \ 307.12375 + I[280] = I[281], I[281] = I[282], I[282] = I[283], I[283] = I[284], I[284] = I[285], I[285] = I[286], I[286] = I[287], \ 307.12376 + I[288] = I[289], I[289] = I[290], I[290] = I[291], I[291] = I[292], I[292] = I[293], I[293] = I[294], I[294] = I[295], \ 307.12377 + I[296] = I[297], I[297] = I[298], I[298] = I[299], I[299] = I[300], I[300] = I[301], I[301] = I[302], I[302] = I[303], \ 307.12378 + I[304] = I[305], I[305] = I[306], I[306] = I[307], I[307] = I[308], I[308] = I[309], I[309] = I[310], I[310] = I[311], \ 307.12379 + I[312] = I[313], I[313] = I[314], I[314] = I[315], I[315] = I[316], I[316] = I[317], I[317] = I[318], I[318] = I[319], \ 307.12380 + I[320] = I[321], I[321] = I[322], I[322] = I[323], I[323] = I[324], I[324] = I[325], I[325] = I[326], I[326] = I[327], \ 307.12381 + I[328] = I[329], I[329] = I[330], I[330] = I[331], I[331] = I[332], I[332] = I[333], I[333] = I[334], I[334] = I[335], \ 307.12382 + I[336] = I[337], I[337] = I[338], I[338] = I[339], I[339] = I[340], I[340] = I[341], I[341] = I[342], I[342] = I[343], \ 307.12383 + I[344] = I[345], I[345] = I[346], I[346] = I[347], I[347] = I[348], I[348] = I[349], I[349] = I[350], I[350] = I[351], \ 307.12384 + I[352] = I[353], I[353] = I[354], I[354] = I[355], I[355] = I[356], I[356] = I[357], I[357] = I[358], I[358] = I[359], \ 307.12385 + I[360] = I[361], I[361] = I[362], I[362] = I[363], I[363] = I[364], I[364] = I[365], I[365] = I[366], I[366] = I[367], \ 307.12386 + I[368] = I[369], I[369] = I[370], I[370] = I[371], I[371] = I[372], I[372] = I[373], I[373] = I[374], I[374] = I[375], \ 307.12387 + I[376] = I[377], I[377] = I[378], I[378] = I[379], I[379] = I[380], I[380] = I[381], I[381] = I[382], I[382] = I[383], \ 307.12388 + I[384] = I[385], I[385] = I[386], I[386] = I[387], I[387] = I[388], I[388] = I[389], I[389] = I[390], I[390] = I[391], \ 307.12389 + I[392] = I[393], I[393] = I[394], I[394] = I[395], I[395] = I[396], I[396] = I[397], I[397] = I[398], I[398] = I[399], \ 307.12390 + I[400] = I[401], I[401] = I[402], I[402] = I[403], I[403] = I[404], I[404] = I[405], I[405] = I[406], I[406] = I[407], \ 307.12391 + I[408] = I[409], I[409] = I[410], I[410] = I[411], I[411] = I[412], I[412] = I[413], I[413] = I[414], I[414] = I[415], \ 307.12392 + I[416] = I[417], I[417] = I[418], I[418] = I[419], I[419] = I[420], I[420] = I[421], I[421] = I[422], I[422] = I[423], \ 307.12393 + I[424] = I[425], I[425] = I[426], I[426] = I[427], I[427] = I[428], I[428] = I[429], I[429] = I[430], I[430] = I[431], \ 307.12394 + I[432] = I[433], I[433] = I[434], I[434] = I[435], I[435] = I[436], I[436] = I[437], I[437] = I[438], I[438] = I[439], \ 307.12395 + I[440] = I[441], I[441] = I[442], I[442] = I[443], I[443] = I[444], I[444] = I[445], I[445] = I[446], I[446] = I[447], \ 307.12396 + I[448] = I[449], I[449] = I[450], I[450] = I[451], I[451] = I[452], I[452] = I[453], I[453] = I[454], I[454] = I[455], \ 307.12397 + I[456] = I[457], I[457] = I[458], I[458] = I[459], I[459] = I[460], I[460] = I[461], I[461] = I[462], I[462] = I[463], \ 307.12398 + I[464] = I[465], I[465] = I[466], I[466] = I[467], I[467] = I[468], I[468] = I[469], I[469] = I[470], I[470] = I[471], \ 307.12399 + I[472] = I[473], I[473] = I[474], I[474] = I[475], I[475] = I[476], I[476] = I[477], I[477] = I[478], I[478] = I[479], \ 307.12400 + I[480] = I[481], I[481] = I[482], I[482] = I[483], I[483] = I[484], I[484] = I[485], I[485] = I[486], I[486] = I[487], \ 307.12401 + I[488] = I[489], I[489] = I[490], I[490] = I[491], I[491] = I[492], I[492] = I[493], I[493] = I[494], I[494] = I[495], \ 307.12402 + I[496] = I[497], I[497] = I[498], I[498] = I[499], I[499] = I[500], I[500] = I[501], I[501] = I[502], I[502] = I[503], \ 307.12403 + I[504] = I[505], I[505] = I[506], I[506] = I[507], I[507] = I[508], I[508] = I[509], I[509] = I[510], I[510] = I[511], \ 307.12404 + _p3##x = _p2##x, _p2##x = _p1##x, _p1##x = x++, ++_n1##x, ++_n2##x, ++_n3##x, ++_n4##x) 307.12405 + 307.12406 +#define cimg_get8x8x8(img,x,y,z,v,I) \ 307.12407 + I[0] = (img)(_p3##x,_p3##y,_p3##z,v), I[1] = (img)(_p2##x,_p3##y,_p3##z,v), I[2] = (img)(_p1##x,_p3##y,_p3##z,v), I[3] = (img)(x,_p3##y,_p3##z,v), I[4] = (img)(_n1##x,_p3##y,_p3##z,v), I[5] = (img)(_n2##x,_p3##y,_p3##z,v), I[6] = (img)(_n3##x,_p3##y,_p3##z,v), I[7] = (img)(_n4##x,_p3##y,_p3##z,v), \ 307.12408 + I[8] = (img)(_p3##x,_p2##y,_p3##z,v), I[9] = (img)(_p2##x,_p2##y,_p3##z,v), I[10] = (img)(_p1##x,_p2##y,_p3##z,v), I[11] = (img)(x,_p2##y,_p3##z,v), I[12] = (img)(_n1##x,_p2##y,_p3##z,v), I[13] = (img)(_n2##x,_p2##y,_p3##z,v), I[14] = (img)(_n3##x,_p2##y,_p3##z,v), I[15] = (img)(_n4##x,_p2##y,_p3##z,v), \ 307.12409 + I[16] = (img)(_p3##x,_p1##y,_p3##z,v), I[17] = (img)(_p2##x,_p1##y,_p3##z,v), I[18] = (img)(_p1##x,_p1##y,_p3##z,v), I[19] = (img)(x,_p1##y,_p3##z,v), I[20] = (img)(_n1##x,_p1##y,_p3##z,v), I[21] = (img)(_n2##x,_p1##y,_p3##z,v), I[22] = (img)(_n3##x,_p1##y,_p3##z,v), I[23] = (img)(_n4##x,_p1##y,_p3##z,v), \ 307.12410 + I[24] = (img)(_p3##x,y,_p3##z,v), I[25] = (img)(_p2##x,y,_p3##z,v), I[26] = (img)(_p1##x,y,_p3##z,v), I[27] = (img)(x,y,_p3##z,v), I[28] = (img)(_n1##x,y,_p3##z,v), I[29] = (img)(_n2##x,y,_p3##z,v), I[30] = (img)(_n3##x,y,_p3##z,v), I[31] = (img)(_n4##x,y,_p3##z,v), \ 307.12411 + I[32] = (img)(_p3##x,_n1##y,_p3##z,v), I[33] = (img)(_p2##x,_n1##y,_p3##z,v), I[34] = (img)(_p1##x,_n1##y,_p3##z,v), I[35] = (img)(x,_n1##y,_p3##z,v), I[36] = (img)(_n1##x,_n1##y,_p3##z,v), I[37] = (img)(_n2##x,_n1##y,_p3##z,v), I[38] = (img)(_n3##x,_n1##y,_p3##z,v), I[39] = (img)(_n4##x,_n1##y,_p3##z,v), \ 307.12412 + I[40] = (img)(_p3##x,_n2##y,_p3##z,v), I[41] = (img)(_p2##x,_n2##y,_p3##z,v), I[42] = (img)(_p1##x,_n2##y,_p3##z,v), I[43] = (img)(x,_n2##y,_p3##z,v), I[44] = (img)(_n1##x,_n2##y,_p3##z,v), I[45] = (img)(_n2##x,_n2##y,_p3##z,v), I[46] = (img)(_n3##x,_n2##y,_p3##z,v), I[47] = (img)(_n4##x,_n2##y,_p3##z,v), \ 307.12413 + I[48] = (img)(_p3##x,_n3##y,_p3##z,v), I[49] = (img)(_p2##x,_n3##y,_p3##z,v), I[50] = (img)(_p1##x,_n3##y,_p3##z,v), I[51] = (img)(x,_n3##y,_p3##z,v), I[52] = (img)(_n1##x,_n3##y,_p3##z,v), I[53] = (img)(_n2##x,_n3##y,_p3##z,v), I[54] = (img)(_n3##x,_n3##y,_p3##z,v), I[55] = (img)(_n4##x,_n3##y,_p3##z,v), \ 307.12414 + I[56] = (img)(_p3##x,_n4##y,_p3##z,v), I[57] = (img)(_p2##x,_n4##y,_p3##z,v), I[58] = (img)(_p1##x,_n4##y,_p3##z,v), I[59] = (img)(x,_n4##y,_p3##z,v), I[60] = (img)(_n1##x,_n4##y,_p3##z,v), I[61] = (img)(_n2##x,_n4##y,_p3##z,v), I[62] = (img)(_n3##x,_n4##y,_p3##z,v), I[63] = (img)(_n4##x,_n4##y,_p3##z,v), \ 307.12415 + I[64] = (img)(_p3##x,_p3##y,_p2##z,v), I[65] = (img)(_p2##x,_p3##y,_p2##z,v), I[66] = (img)(_p1##x,_p3##y,_p2##z,v), I[67] = (img)(x,_p3##y,_p2##z,v), I[68] = (img)(_n1##x,_p3##y,_p2##z,v), I[69] = (img)(_n2##x,_p3##y,_p2##z,v), I[70] = (img)(_n3##x,_p3##y,_p2##z,v), I[71] = (img)(_n4##x,_p3##y,_p2##z,v), \ 307.12416 + I[72] = (img)(_p3##x,_p2##y,_p2##z,v), I[73] = (img)(_p2##x,_p2##y,_p2##z,v), I[74] = (img)(_p1##x,_p2##y,_p2##z,v), I[75] = (img)(x,_p2##y,_p2##z,v), I[76] = (img)(_n1##x,_p2##y,_p2##z,v), I[77] = (img)(_n2##x,_p2##y,_p2##z,v), I[78] = (img)(_n3##x,_p2##y,_p2##z,v), I[79] = (img)(_n4##x,_p2##y,_p2##z,v), \ 307.12417 + I[80] = (img)(_p3##x,_p1##y,_p2##z,v), I[81] = (img)(_p2##x,_p1##y,_p2##z,v), I[82] = (img)(_p1##x,_p1##y,_p2##z,v), I[83] = (img)(x,_p1##y,_p2##z,v), I[84] = (img)(_n1##x,_p1##y,_p2##z,v), I[85] = (img)(_n2##x,_p1##y,_p2##z,v), I[86] = (img)(_n3##x,_p1##y,_p2##z,v), I[87] = (img)(_n4##x,_p1##y,_p2##z,v), \ 307.12418 + I[88] = (img)(_p3##x,y,_p2##z,v), I[89] = (img)(_p2##x,y,_p2##z,v), I[90] = (img)(_p1##x,y,_p2##z,v), I[91] = (img)(x,y,_p2##z,v), I[92] = (img)(_n1##x,y,_p2##z,v), I[93] = (img)(_n2##x,y,_p2##z,v), I[94] = (img)(_n3##x,y,_p2##z,v), I[95] = (img)(_n4##x,y,_p2##z,v), \ 307.12419 + I[96] = (img)(_p3##x,_n1##y,_p2##z,v), I[97] = (img)(_p2##x,_n1##y,_p2##z,v), I[98] = (img)(_p1##x,_n1##y,_p2##z,v), I[99] = (img)(x,_n1##y,_p2##z,v), I[100] = (img)(_n1##x,_n1##y,_p2##z,v), I[101] = (img)(_n2##x,_n1##y,_p2##z,v), I[102] = (img)(_n3##x,_n1##y,_p2##z,v), I[103] = (img)(_n4##x,_n1##y,_p2##z,v), \ 307.12420 + I[104] = (img)(_p3##x,_n2##y,_p2##z,v), I[105] = (img)(_p2##x,_n2##y,_p2##z,v), I[106] = (img)(_p1##x,_n2##y,_p2##z,v), I[107] = (img)(x,_n2##y,_p2##z,v), I[108] = (img)(_n1##x,_n2##y,_p2##z,v), I[109] = (img)(_n2##x,_n2##y,_p2##z,v), I[110] = (img)(_n3##x,_n2##y,_p2##z,v), I[111] = (img)(_n4##x,_n2##y,_p2##z,v), \ 307.12421 + I[112] = (img)(_p3##x,_n3##y,_p2##z,v), I[113] = (img)(_p2##x,_n3##y,_p2##z,v), I[114] = (img)(_p1##x,_n3##y,_p2##z,v), I[115] = (img)(x,_n3##y,_p2##z,v), I[116] = (img)(_n1##x,_n3##y,_p2##z,v), I[117] = (img)(_n2##x,_n3##y,_p2##z,v), I[118] = (img)(_n3##x,_n3##y,_p2##z,v), I[119] = (img)(_n4##x,_n3##y,_p2##z,v), \ 307.12422 + I[120] = (img)(_p3##x,_n4##y,_p2##z,v), I[121] = (img)(_p2##x,_n4##y,_p2##z,v), I[122] = (img)(_p1##x,_n4##y,_p2##z,v), I[123] = (img)(x,_n4##y,_p2##z,v), I[124] = (img)(_n1##x,_n4##y,_p2##z,v), I[125] = (img)(_n2##x,_n4##y,_p2##z,v), I[126] = (img)(_n3##x,_n4##y,_p2##z,v), I[127] = (img)(_n4##x,_n4##y,_p2##z,v), \ 307.12423 + I[128] = (img)(_p3##x,_p3##y,_p1##z,v), I[129] = (img)(_p2##x,_p3##y,_p1##z,v), I[130] = (img)(_p1##x,_p3##y,_p1##z,v), I[131] = (img)(x,_p3##y,_p1##z,v), I[132] = (img)(_n1##x,_p3##y,_p1##z,v), I[133] = (img)(_n2##x,_p3##y,_p1##z,v), I[134] = (img)(_n3##x,_p3##y,_p1##z,v), I[135] = (img)(_n4##x,_p3##y,_p1##z,v), \ 307.12424 + I[136] = (img)(_p3##x,_p2##y,_p1##z,v), I[137] = (img)(_p2##x,_p2##y,_p1##z,v), I[138] = (img)(_p1##x,_p2##y,_p1##z,v), I[139] = (img)(x,_p2##y,_p1##z,v), I[140] = (img)(_n1##x,_p2##y,_p1##z,v), I[141] = (img)(_n2##x,_p2##y,_p1##z,v), I[142] = (img)(_n3##x,_p2##y,_p1##z,v), I[143] = (img)(_n4##x,_p2##y,_p1##z,v), \ 307.12425 + I[144] = (img)(_p3##x,_p1##y,_p1##z,v), I[145] = (img)(_p2##x,_p1##y,_p1##z,v), I[146] = (img)(_p1##x,_p1##y,_p1##z,v), I[147] = (img)(x,_p1##y,_p1##z,v), I[148] = (img)(_n1##x,_p1##y,_p1##z,v), I[149] = (img)(_n2##x,_p1##y,_p1##z,v), I[150] = (img)(_n3##x,_p1##y,_p1##z,v), I[151] = (img)(_n4##x,_p1##y,_p1##z,v), \ 307.12426 + I[152] = (img)(_p3##x,y,_p1##z,v), I[153] = (img)(_p2##x,y,_p1##z,v), I[154] = (img)(_p1##x,y,_p1##z,v), I[155] = (img)(x,y,_p1##z,v), I[156] = (img)(_n1##x,y,_p1##z,v), I[157] = (img)(_n2##x,y,_p1##z,v), I[158] = (img)(_n3##x,y,_p1##z,v), I[159] = (img)(_n4##x,y,_p1##z,v), \ 307.12427 + I[160] = (img)(_p3##x,_n1##y,_p1##z,v), I[161] = (img)(_p2##x,_n1##y,_p1##z,v), I[162] = (img)(_p1##x,_n1##y,_p1##z,v), I[163] = (img)(x,_n1##y,_p1##z,v), I[164] = (img)(_n1##x,_n1##y,_p1##z,v), I[165] = (img)(_n2##x,_n1##y,_p1##z,v), I[166] = (img)(_n3##x,_n1##y,_p1##z,v), I[167] = (img)(_n4##x,_n1##y,_p1##z,v), \ 307.12428 + I[168] = (img)(_p3##x,_n2##y,_p1##z,v), I[169] = (img)(_p2##x,_n2##y,_p1##z,v), I[170] = (img)(_p1##x,_n2##y,_p1##z,v), I[171] = (img)(x,_n2##y,_p1##z,v), I[172] = (img)(_n1##x,_n2##y,_p1##z,v), I[173] = (img)(_n2##x,_n2##y,_p1##z,v), I[174] = (img)(_n3##x,_n2##y,_p1##z,v), I[175] = (img)(_n4##x,_n2##y,_p1##z,v), \ 307.12429 + I[176] = (img)(_p3##x,_n3##y,_p1##z,v), I[177] = (img)(_p2##x,_n3##y,_p1##z,v), I[178] = (img)(_p1##x,_n3##y,_p1##z,v), I[179] = (img)(x,_n3##y,_p1##z,v), I[180] = (img)(_n1##x,_n3##y,_p1##z,v), I[181] = (img)(_n2##x,_n3##y,_p1##z,v), I[182] = (img)(_n3##x,_n3##y,_p1##z,v), I[183] = (img)(_n4##x,_n3##y,_p1##z,v), \ 307.12430 + I[184] = (img)(_p3##x,_n4##y,_p1##z,v), I[185] = (img)(_p2##x,_n4##y,_p1##z,v), I[186] = (img)(_p1##x,_n4##y,_p1##z,v), I[187] = (img)(x,_n4##y,_p1##z,v), I[188] = (img)(_n1##x,_n4##y,_p1##z,v), I[189] = (img)(_n2##x,_n4##y,_p1##z,v), I[190] = (img)(_n3##x,_n4##y,_p1##z,v), I[191] = (img)(_n4##x,_n4##y,_p1##z,v), \ 307.12431 + I[192] = (img)(_p3##x,_p3##y,z,v), I[193] = (img)(_p2##x,_p3##y,z,v), I[194] = (img)(_p1##x,_p3##y,z,v), I[195] = (img)(x,_p3##y,z,v), I[196] = (img)(_n1##x,_p3##y,z,v), I[197] = (img)(_n2##x,_p3##y,z,v), I[198] = (img)(_n3##x,_p3##y,z,v), I[199] = (img)(_n4##x,_p3##y,z,v), \ 307.12432 + I[200] = (img)(_p3##x,_p2##y,z,v), I[201] = (img)(_p2##x,_p2##y,z,v), I[202] = (img)(_p1##x,_p2##y,z,v), I[203] = (img)(x,_p2##y,z,v), I[204] = (img)(_n1##x,_p2##y,z,v), I[205] = (img)(_n2##x,_p2##y,z,v), I[206] = (img)(_n3##x,_p2##y,z,v), I[207] = (img)(_n4##x,_p2##y,z,v), \ 307.12433 + I[208] = (img)(_p3##x,_p1##y,z,v), I[209] = (img)(_p2##x,_p1##y,z,v), I[210] = (img)(_p1##x,_p1##y,z,v), I[211] = (img)(x,_p1##y,z,v), I[212] = (img)(_n1##x,_p1##y,z,v), I[213] = (img)(_n2##x,_p1##y,z,v), I[214] = (img)(_n3##x,_p1##y,z,v), I[215] = (img)(_n4##x,_p1##y,z,v), \ 307.12434 + I[216] = (img)(_p3##x,y,z,v), I[217] = (img)(_p2##x,y,z,v), I[218] = (img)(_p1##x,y,z,v), I[219] = (img)(x,y,z,v), I[220] = (img)(_n1##x,y,z,v), I[221] = (img)(_n2##x,y,z,v), I[222] = (img)(_n3##x,y,z,v), I[223] = (img)(_n4##x,y,z,v), \ 307.12435 + I[224] = (img)(_p3##x,_n1##y,z,v), I[225] = (img)(_p2##x,_n1##y,z,v), I[226] = (img)(_p1##x,_n1##y,z,v), I[227] = (img)(x,_n1##y,z,v), I[228] = (img)(_n1##x,_n1##y,z,v), I[229] = (img)(_n2##x,_n1##y,z,v), I[230] = (img)(_n3##x,_n1##y,z,v), I[231] = (img)(_n4##x,_n1##y,z,v), \ 307.12436 + I[232] = (img)(_p3##x,_n2##y,z,v), I[233] = (img)(_p2##x,_n2##y,z,v), I[234] = (img)(_p1##x,_n2##y,z,v), I[235] = (img)(x,_n2##y,z,v), I[236] = (img)(_n1##x,_n2##y,z,v), I[237] = (img)(_n2##x,_n2##y,z,v), I[238] = (img)(_n3##x,_n2##y,z,v), I[239] = (img)(_n4##x,_n2##y,z,v), \ 307.12437 + I[240] = (img)(_p3##x,_n3##y,z,v), I[241] = (img)(_p2##x,_n3##y,z,v), I[242] = (img)(_p1##x,_n3##y,z,v), I[243] = (img)(x,_n3##y,z,v), I[244] = (img)(_n1##x,_n3##y,z,v), I[245] = (img)(_n2##x,_n3##y,z,v), I[246] = (img)(_n3##x,_n3##y,z,v), I[247] = (img)(_n4##x,_n3##y,z,v), \ 307.12438 + I[248] = (img)(_p3##x,_n4##y,z,v), I[249] = (img)(_p2##x,_n4##y,z,v), I[250] = (img)(_p1##x,_n4##y,z,v), I[251] = (img)(x,_n4##y,z,v), I[252] = (img)(_n1##x,_n4##y,z,v), I[253] = (img)(_n2##x,_n4##y,z,v), I[254] = (img)(_n3##x,_n4##y,z,v), I[255] = (img)(_n4##x,_n4##y,z,v), \ 307.12439 + I[256] = (img)(_p3##x,_p3##y,_n1##z,v), I[257] = (img)(_p2##x,_p3##y,_n1##z,v), I[258] = (img)(_p1##x,_p3##y,_n1##z,v), I[259] = (img)(x,_p3##y,_n1##z,v), I[260] = (img)(_n1##x,_p3##y,_n1##z,v), I[261] = (img)(_n2##x,_p3##y,_n1##z,v), I[262] = (img)(_n3##x,_p3##y,_n1##z,v), I[263] = (img)(_n4##x,_p3##y,_n1##z,v), \ 307.12440 + I[264] = (img)(_p3##x,_p2##y,_n1##z,v), I[265] = (img)(_p2##x,_p2##y,_n1##z,v), I[266] = (img)(_p1##x,_p2##y,_n1##z,v), I[267] = (img)(x,_p2##y,_n1##z,v), I[268] = (img)(_n1##x,_p2##y,_n1##z,v), I[269] = (img)(_n2##x,_p2##y,_n1##z,v), I[270] = (img)(_n3##x,_p2##y,_n1##z,v), I[271] = (img)(_n4##x,_p2##y,_n1##z,v), \ 307.12441 + I[272] = (img)(_p3##x,_p1##y,_n1##z,v), I[273] = (img)(_p2##x,_p1##y,_n1##z,v), I[274] = (img)(_p1##x,_p1##y,_n1##z,v), I[275] = (img)(x,_p1##y,_n1##z,v), I[276] = (img)(_n1##x,_p1##y,_n1##z,v), I[277] = (img)(_n2##x,_p1##y,_n1##z,v), I[278] = (img)(_n3##x,_p1##y,_n1##z,v), I[279] = (img)(_n4##x,_p1##y,_n1##z,v), \ 307.12442 + I[280] = (img)(_p3##x,y,_n1##z,v), I[281] = (img)(_p2##x,y,_n1##z,v), I[282] = (img)(_p1##x,y,_n1##z,v), I[283] = (img)(x,y,_n1##z,v), I[284] = (img)(_n1##x,y,_n1##z,v), I[285] = (img)(_n2##x,y,_n1##z,v), I[286] = (img)(_n3##x,y,_n1##z,v), I[287] = (img)(_n4##x,y,_n1##z,v), \ 307.12443 + I[288] = (img)(_p3##x,_n1##y,_n1##z,v), I[289] = (img)(_p2##x,_n1##y,_n1##z,v), I[290] = (img)(_p1##x,_n1##y,_n1##z,v), I[291] = (img)(x,_n1##y,_n1##z,v), I[292] = (img)(_n1##x,_n1##y,_n1##z,v), I[293] = (img)(_n2##x,_n1##y,_n1##z,v), I[294] = (img)(_n3##x,_n1##y,_n1##z,v), I[295] = (img)(_n4##x,_n1##y,_n1##z,v), \ 307.12444 + I[296] = (img)(_p3##x,_n2##y,_n1##z,v), I[297] = (img)(_p2##x,_n2##y,_n1##z,v), I[298] = (img)(_p1##x,_n2##y,_n1##z,v), I[299] = (img)(x,_n2##y,_n1##z,v), I[300] = (img)(_n1##x,_n2##y,_n1##z,v), I[301] = (img)(_n2##x,_n2##y,_n1##z,v), I[302] = (img)(_n3##x,_n2##y,_n1##z,v), I[303] = (img)(_n4##x,_n2##y,_n1##z,v), \ 307.12445 + I[304] = (img)(_p3##x,_n3##y,_n1##z,v), I[305] = (img)(_p2##x,_n3##y,_n1##z,v), I[306] = (img)(_p1##x,_n3##y,_n1##z,v), I[307] = (img)(x,_n3##y,_n1##z,v), I[308] = (img)(_n1##x,_n3##y,_n1##z,v), I[309] = (img)(_n2##x,_n3##y,_n1##z,v), I[310] = (img)(_n3##x,_n3##y,_n1##z,v), I[311] = (img)(_n4##x,_n3##y,_n1##z,v), \ 307.12446 + I[312] = (img)(_p3##x,_n4##y,_n1##z,v), I[313] = (img)(_p2##x,_n4##y,_n1##z,v), I[314] = (img)(_p1##x,_n4##y,_n1##z,v), I[315] = (img)(x,_n4##y,_n1##z,v), I[316] = (img)(_n1##x,_n4##y,_n1##z,v), I[317] = (img)(_n2##x,_n4##y,_n1##z,v), I[318] = (img)(_n3##x,_n4##y,_n1##z,v), I[319] = (img)(_n4##x,_n4##y,_n1##z,v), \ 307.12447 + I[320] = (img)(_p3##x,_p3##y,_n2##z,v), I[321] = (img)(_p2##x,_p3##y,_n2##z,v), I[322] = (img)(_p1##x,_p3##y,_n2##z,v), I[323] = (img)(x,_p3##y,_n2##z,v), I[324] = (img)(_n1##x,_p3##y,_n2##z,v), I[325] = (img)(_n2##x,_p3##y,_n2##z,v), I[326] = (img)(_n3##x,_p3##y,_n2##z,v), I[327] = (img)(_n4##x,_p3##y,_n2##z,v), \ 307.12448 + I[328] = (img)(_p3##x,_p2##y,_n2##z,v), I[329] = (img)(_p2##x,_p2##y,_n2##z,v), I[330] = (img)(_p1##x,_p2##y,_n2##z,v), I[331] = (img)(x,_p2##y,_n2##z,v), I[332] = (img)(_n1##x,_p2##y,_n2##z,v), I[333] = (img)(_n2##x,_p2##y,_n2##z,v), I[334] = (img)(_n3##x,_p2##y,_n2##z,v), I[335] = (img)(_n4##x,_p2##y,_n2##z,v), \ 307.12449 + I[336] = (img)(_p3##x,_p1##y,_n2##z,v), I[337] = (img)(_p2##x,_p1##y,_n2##z,v), I[338] = (img)(_p1##x,_p1##y,_n2##z,v), I[339] = (img)(x,_p1##y,_n2##z,v), I[340] = (img)(_n1##x,_p1##y,_n2##z,v), I[341] = (img)(_n2##x,_p1##y,_n2##z,v), I[342] = (img)(_n3##x,_p1##y,_n2##z,v), I[343] = (img)(_n4##x,_p1##y,_n2##z,v), \ 307.12450 + I[344] = (img)(_p3##x,y,_n2##z,v), I[345] = (img)(_p2##x,y,_n2##z,v), I[346] = (img)(_p1##x,y,_n2##z,v), I[347] = (img)(x,y,_n2##z,v), I[348] = (img)(_n1##x,y,_n2##z,v), I[349] = (img)(_n2##x,y,_n2##z,v), I[350] = (img)(_n3##x,y,_n2##z,v), I[351] = (img)(_n4##x,y,_n2##z,v), \ 307.12451 + I[352] = (img)(_p3##x,_n1##y,_n2##z,v), I[353] = (img)(_p2##x,_n1##y,_n2##z,v), I[354] = (img)(_p1##x,_n1##y,_n2##z,v), I[355] = (img)(x,_n1##y,_n2##z,v), I[356] = (img)(_n1##x,_n1##y,_n2##z,v), I[357] = (img)(_n2##x,_n1##y,_n2##z,v), I[358] = (img)(_n3##x,_n1##y,_n2##z,v), I[359] = (img)(_n4##x,_n1##y,_n2##z,v), \ 307.12452 + I[360] = (img)(_p3##x,_n2##y,_n2##z,v), I[361] = (img)(_p2##x,_n2##y,_n2##z,v), I[362] = (img)(_p1##x,_n2##y,_n2##z,v), I[363] = (img)(x,_n2##y,_n2##z,v), I[364] = (img)(_n1##x,_n2##y,_n2##z,v), I[365] = (img)(_n2##x,_n2##y,_n2##z,v), I[366] = (img)(_n3##x,_n2##y,_n2##z,v), I[367] = (img)(_n4##x,_n2##y,_n2##z,v), \ 307.12453 + I[368] = (img)(_p3##x,_n3##y,_n2##z,v), I[369] = (img)(_p2##x,_n3##y,_n2##z,v), I[370] = (img)(_p1##x,_n3##y,_n2##z,v), I[371] = (img)(x,_n3##y,_n2##z,v), I[372] = (img)(_n1##x,_n3##y,_n2##z,v), I[373] = (img)(_n2##x,_n3##y,_n2##z,v), I[374] = (img)(_n3##x,_n3##y,_n2##z,v), I[375] = (img)(_n4##x,_n3##y,_n2##z,v), \ 307.12454 + I[376] = (img)(_p3##x,_n4##y,_n2##z,v), I[377] = (img)(_p2##x,_n4##y,_n2##z,v), I[378] = (img)(_p1##x,_n4##y,_n2##z,v), I[379] = (img)(x,_n4##y,_n2##z,v), I[380] = (img)(_n1##x,_n4##y,_n2##z,v), I[381] = (img)(_n2##x,_n4##y,_n2##z,v), I[382] = (img)(_n3##x,_n4##y,_n2##z,v), I[383] = (img)(_n4##x,_n4##y,_n2##z,v), \ 307.12455 + I[384] = (img)(_p3##x,_p3##y,_n3##z,v), I[385] = (img)(_p2##x,_p3##y,_n3##z,v), I[386] = (img)(_p1##x,_p3##y,_n3##z,v), I[387] = (img)(x,_p3##y,_n3##z,v), I[388] = (img)(_n1##x,_p3##y,_n3##z,v), I[389] = (img)(_n2##x,_p3##y,_n3##z,v), I[390] = (img)(_n3##x,_p3##y,_n3##z,v), I[391] = (img)(_n4##x,_p3##y,_n3##z,v), \ 307.12456 + I[392] = (img)(_p3##x,_p2##y,_n3##z,v), I[393] = (img)(_p2##x,_p2##y,_n3##z,v), I[394] = (img)(_p1##x,_p2##y,_n3##z,v), I[395] = (img)(x,_p2##y,_n3##z,v), I[396] = (img)(_n1##x,_p2##y,_n3##z,v), I[397] = (img)(_n2##x,_p2##y,_n3##z,v), I[398] = (img)(_n3##x,_p2##y,_n3##z,v), I[399] = (img)(_n4##x,_p2##y,_n3##z,v), \ 307.12457 + I[400] = (img)(_p3##x,_p1##y,_n3##z,v), I[401] = (img)(_p2##x,_p1##y,_n3##z,v), I[402] = (img)(_p1##x,_p1##y,_n3##z,v), I[403] = (img)(x,_p1##y,_n3##z,v), I[404] = (img)(_n1##x,_p1##y,_n3##z,v), I[405] = (img)(_n2##x,_p1##y,_n3##z,v), I[406] = (img)(_n3##x,_p1##y,_n3##z,v), I[407] = (img)(_n4##x,_p1##y,_n3##z,v), \ 307.12458 + I[408] = (img)(_p3##x,y,_n3##z,v), I[409] = (img)(_p2##x,y,_n3##z,v), I[410] = (img)(_p1##x,y,_n3##z,v), I[411] = (img)(x,y,_n3##z,v), I[412] = (img)(_n1##x,y,_n3##z,v), I[413] = (img)(_n2##x,y,_n3##z,v), I[414] = (img)(_n3##x,y,_n3##z,v), I[415] = (img)(_n4##x,y,_n3##z,v), \ 307.12459 + I[416] = (img)(_p3##x,_n1##y,_n3##z,v), I[417] = (img)(_p2##x,_n1##y,_n3##z,v), I[418] = (img)(_p1##x,_n1##y,_n3##z,v), I[419] = (img)(x,_n1##y,_n3##z,v), I[420] = (img)(_n1##x,_n1##y,_n3##z,v), I[421] = (img)(_n2##x,_n1##y,_n3##z,v), I[422] = (img)(_n3##x,_n1##y,_n3##z,v), I[423] = (img)(_n4##x,_n1##y,_n3##z,v), \ 307.12460 + I[424] = (img)(_p3##x,_n2##y,_n3##z,v), I[425] = (img)(_p2##x,_n2##y,_n3##z,v), I[426] = (img)(_p1##x,_n2##y,_n3##z,v), I[427] = (img)(x,_n2##y,_n3##z,v), I[428] = (img)(_n1##x,_n2##y,_n3##z,v), I[429] = (img)(_n2##x,_n2##y,_n3##z,v), I[430] = (img)(_n3##x,_n2##y,_n3##z,v), I[431] = (img)(_n4##x,_n2##y,_n3##z,v), \ 307.12461 + I[432] = (img)(_p3##x,_n3##y,_n3##z,v), I[433] = (img)(_p2##x,_n3##y,_n3##z,v), I[434] = (img)(_p1##x,_n3##y,_n3##z,v), I[435] = (img)(x,_n3##y,_n3##z,v), I[436] = (img)(_n1##x,_n3##y,_n3##z,v), I[437] = (img)(_n2##x,_n3##y,_n3##z,v), I[438] = (img)(_n3##x,_n3##y,_n3##z,v), I[439] = (img)(_n4##x,_n3##y,_n3##z,v), \ 307.12462 + I[440] = (img)(_p3##x,_n4##y,_n3##z,v), I[441] = (img)(_p2##x,_n4##y,_n3##z,v), I[442] = (img)(_p1##x,_n4##y,_n3##z,v), I[443] = (img)(x,_n4##y,_n3##z,v), I[444] = (img)(_n1##x,_n4##y,_n3##z,v), I[445] = (img)(_n2##x,_n4##y,_n3##z,v), I[446] = (img)(_n3##x,_n4##y,_n3##z,v), I[447] = (img)(_n4##x,_n4##y,_n3##z,v), \ 307.12463 + I[448] = (img)(_p3##x,_p3##y,_n4##z,v), I[449] = (img)(_p2##x,_p3##y,_n4##z,v), I[450] = (img)(_p1##x,_p3##y,_n4##z,v), I[451] = (img)(x,_p3##y,_n4##z,v), I[452] = (img)(_n1##x,_p3##y,_n4##z,v), I[453] = (img)(_n2##x,_p3##y,_n4##z,v), I[454] = (img)(_n3##x,_p3##y,_n4##z,v), I[455] = (img)(_n4##x,_p3##y,_n4##z,v), \ 307.12464 + I[456] = (img)(_p3##x,_p2##y,_n4##z,v), I[457] = (img)(_p2##x,_p2##y,_n4##z,v), I[458] = (img)(_p1##x,_p2##y,_n4##z,v), I[459] = (img)(x,_p2##y,_n4##z,v), I[460] = (img)(_n1##x,_p2##y,_n4##z,v), I[461] = (img)(_n2##x,_p2##y,_n4##z,v), I[462] = (img)(_n3##x,_p2##y,_n4##z,v), I[463] = (img)(_n4##x,_p2##y,_n4##z,v), \ 307.12465 + I[464] = (img)(_p3##x,_p1##y,_n4##z,v), I[465] = (img)(_p2##x,_p1##y,_n4##z,v), I[466] = (img)(_p1##x,_p1##y,_n4##z,v), I[467] = (img)(x,_p1##y,_n4##z,v), I[468] = (img)(_n1##x,_p1##y,_n4##z,v), I[469] = (img)(_n2##x,_p1##y,_n4##z,v), I[470] = (img)(_n3##x,_p1##y,_n4##z,v), I[471] = (img)(_n4##x,_p1##y,_n4##z,v), \ 307.12466 + I[472] = (img)(_p3##x,y,_n4##z,v), I[473] = (img)(_p2##x,y,_n4##z,v), I[474] = (img)(_p1##x,y,_n4##z,v), I[475] = (img)(x,y,_n4##z,v), I[476] = (img)(_n1##x,y,_n4##z,v), I[477] = (img)(_n2##x,y,_n4##z,v), I[478] = (img)(_n3##x,y,_n4##z,v), I[479] = (img)(_n4##x,y,_n4##z,v), \ 307.12467 + I[480] = (img)(_p3##x,_n1##y,_n4##z,v), I[481] = (img)(_p2##x,_n1##y,_n4##z,v), I[482] = (img)(_p1##x,_n1##y,_n4##z,v), I[483] = (img)(x,_n1##y,_n4##z,v), I[484] = (img)(_n1##x,_n1##y,_n4##z,v), I[485] = (img)(_n2##x,_n1##y,_n4##z,v), I[486] = (img)(_n3##x,_n1##y,_n4##z,v), I[487] = (img)(_n4##x,_n1##y,_n4##z,v), \ 307.12468 + I[488] = (img)(_p3##x,_n2##y,_n4##z,v), I[489] = (img)(_p2##x,_n2##y,_n4##z,v), I[490] = (img)(_p1##x,_n2##y,_n4##z,v), I[491] = (img)(x,_n2##y,_n4##z,v), I[492] = (img)(_n1##x,_n2##y,_n4##z,v), I[493] = (img)(_n2##x,_n2##y,_n4##z,v), I[494] = (img)(_n3##x,_n2##y,_n4##z,v), I[495] = (img)(_n4##x,_n2##y,_n4##z,v), \ 307.12469 + I[496] = (img)(_p3##x,_n3##y,_n4##z,v), I[497] = (img)(_p2##x,_n3##y,_n4##z,v), I[498] = (img)(_p1##x,_n3##y,_n4##z,v), I[499] = (img)(x,_n3##y,_n4##z,v), I[500] = (img)(_n1##x,_n3##y,_n4##z,v), I[501] = (img)(_n2##x,_n3##y,_n4##z,v), I[502] = (img)(_n3##x,_n3##y,_n4##z,v), I[503] = (img)(_n4##x,_n3##y,_n4##z,v), \ 307.12470 + I[504] = (img)(_p3##x,_n4##y,_n4##z,v), I[505] = (img)(_p2##x,_n4##y,_n4##z,v), I[506] = (img)(_p1##x,_n4##y,_n4##z,v), I[507] = (img)(x,_n4##y,_n4##z,v), I[508] = (img)(_n1##x,_n4##y,_n4##z,v), I[509] = (img)(_n2##x,_n4##y,_n4##z,v), I[510] = (img)(_n3##x,_n4##y,_n4##z,v), I[511] = (img)(_n4##x,_n4##y,_n4##z,v); 307.12471 + 307.12472 +#endif
308.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 308.2 +++ b/PTdecode/CImg-1.3.0/plugins/nlmeans.h Mon Aug 03 14:09:20 2009 +0100 308.3 @@ -0,0 +1,230 @@ 308.4 +/* 308.5 + # 308.6 + # File : nlmeans.h 308.7 + # ( C++ header file - CImg plug-in ) 308.8 + # 308.9 + # Description : CImg plugin that implements the non-local mean filter. 308.10 + # This file is a part of the CImg Library project. 308.11 + # ( http://cimg.sourceforge.net ) 308.12 + # 308.13 + # [1] Buades, A.; Coll, B.; Morel, J.-M.: A non-local algorithm for image denoising 308.14 + # IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2005. CVPR 2005. 308.15 + # Volume 2, 20-25 June 2005 Page(s):60 - 65 vol. 2 308.16 + # 308.17 + # [2] Buades, A. Coll, B. and Morel, J.: A review of image denoising algorithms, with a new one. 308.18 + # Multiscale Modeling and Simulation: A SIAM Interdisciplinary Journal 4 (2004) 490-530 308.19 + # 308.20 + # [3] Gasser, T. Sroka,L. Jennen Steinmetz,C. Residual variance and residual pattern nonlinear regression. 308.21 + # Biometrika 73 (1986) 625-659 308.22 + # 308.23 + # Copyright : Jerome Boulanger 308.24 + # ( http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html ) 308.25 + # 308.26 + # License : CeCILL v2.0 308.27 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 308.28 + # 308.29 + # This software is governed by the CeCILL license under French law and 308.30 + # abiding by the rules of distribution of free software. You can use, 308.31 + # modify and/ or redistribute the software under the terms of the CeCILL 308.32 + # license as circulated by CEA, CNRS and INRIA at the following URL 308.33 + # "http://www.cecill.info". 308.34 + # 308.35 + # As a counterpart to the access to the source code and rights to copy, 308.36 + # modify and redistribute granted by the license, users are provided only 308.37 + # with a limited warranty and the software's author, the holder of the 308.38 + # economic rights, and the successive licensors have only limited 308.39 + # liability. 308.40 + # 308.41 + # In this respect, the user's attention is drawn to the risks associated 308.42 + # with loading, using, modifying and/or developing or reproducing the 308.43 + # software by the user in light of its specific status of free software, 308.44 + # that may mean that it is complicated to manipulate, and that also 308.45 + # therefore means that it is reserved for developers and experienced 308.46 + # professionals having in-depth computer knowledge. Users are therefore 308.47 + # encouraged to load and test the software's suitability as regards their 308.48 + # requirements in conditions enabling the security of their systems and/or 308.49 + # data to be ensured and, more generally, to use and operate it in the 308.50 + # same conditions as regards security. 308.51 + # 308.52 + # The fact that you are presently reading this means that you have had 308.53 + # knowledge of the CeCILL license and that you accept its terms. 308.54 + # 308.55 +*/ 308.56 + 308.57 +#ifndef cimg_plugin_nlmeans 308.58 +#define cimg_plugin_nlmeans 308.59 + 308.60 +#include "noise_analysis.h" 308.61 + 308.62 +//! NL-Means denoising algorithm. 308.63 +/** 308.64 + This is the in-place version of get_nlmean(). 308.65 +**/ 308.66 +CImg<T>& nlmeans(int patch_size=1, double lambda=-1, double alpha=3, double sigma=-1, int sampling=1){ 308.67 + if (!is_empty()){ 308.68 + if (sigma<0) sigma=std::sqrt(noise_variance()); // noise variance estimation 308.69 + double np=(2*patch_size+1)*(2*patch_size+1)*dimv()/(double)sampling; 308.70 + if (lambda<0) {// Bandwidth estimation 308.71 + if (np<100) 308.72 + lambda =(((((( 1.1785e-12*np -5.1827e-10)*np+ 9.5946e-08)*np -9.7798e-06)*np+ 6.0756e-04)*np -0.0248)*np+ 1.9203)*np +7.9599; 308.73 + else 308.74 + lambda = (-7.2611e-04*np+ 1.3213)*np+ 15.2726; 308.75 + } 308.76 +#if cimg_debug>=1 308.77 + std::fprintf(stderr,"Size of the patch : %dx%d \n", 308.78 + 2*patch_size+1,2*patch_size+1); 308.79 + std::fprintf(stderr,"Size of window where similar patch are looked for : %dx%d \n", 308.80 + (int)(alpha*(2*patch_size+1)),(int)(alpha*(2*patch_size+1))); 308.81 + std::fprintf(stderr,"Bandwidth of the kernel : %fx%f^2 \n", 308.82 + lambda,sigma); 308.83 + std::fprintf(stderr,"Noise standard deviation estimated to : %f \n", 308.84 + sigma); 308.85 +#endif 308.86 + 308.87 + CImg<T> dest(dimx(),dimy(),dimz(),dimv(),0); 308.88 + double * uhat = new double[dimv()]; 308.89 + double h2=-.5/(lambda*sigma*sigma); // [Kervrann] notations 308.90 + if (dimz()!=1){// 3D case 308.91 + CImg<> P=(*this).get_blur(1); // inspired from Mahmoudi&Sapiro SPletter dec 05 308.92 + int n_simu=64; 308.93 + CImg<> tmp(n_simu,n_simu,n_simu); 308.94 + double sig = std::sqrt(tmp.fill(0.f).noise(sigma).blur(1).pow(2.).sum()/(n_simu*n_simu*n_simu)); 308.95 + int patch_size_z=0; 308.96 + int pxi=(int)(alpha*patch_size), 308.97 + pyi=(int)(alpha*patch_size), 308.98 + pzi=2;//Define the size of the neighborhood in z 308.99 + for (int zi=0;zi<dimz();zi++){ 308.100 +#if cimg_debug>=1 308.101 + std::fprintf(stderr,"\rProcessing : %3d %%",(int)((float)zi/(float)dimz()*100.));fflush(stdout); 308.102 +#endif 308.103 + for (int yi=0;yi<dimy();yi++) 308.104 + for (int xi=0;xi<dimx();xi++){ 308.105 + for (int v=0;v<dimv();v++) uhat[v] = 0; 308.106 + float sw=0,wmax=-1; 308.107 + for (int zj=cimg::max(0,zi-pzi);zj<cimg::min(dimz(),zi+pzi+1);zj++) 308.108 + for (int yj=cimg::max(0,yi-pyi);yj<cimg::min(dimy(),yi+pyi+1);yj++) 308.109 + for (int xj=cimg::max(0,xi-pxi);xj<cimg::min(dimx(),xi+pxi+1);xj++) 308.110 + if( cimg::abs(P(xi,yi,zi)-P(xj,yj,zj))/sig < 3){ 308.111 + double d = 0; 308.112 + int n = 0; 308.113 + if (xi!=xj && yi!=yj && zi!=zj){ 308.114 + for (int kz=-patch_size_z;kz<patch_size_z+1;kz+=sampling){ 308.115 + int zj_ = zj+kz; 308.116 + int zi_ = zi+kz; 308.117 + if (zj_>=0 && zj_<dimz() && zi_>=0 && zi_<dimz()) 308.118 + for (int ky=-patch_size;ky<=patch_size;ky+=sampling){ 308.119 + int yj_ = yj+ky; 308.120 + int yi_ = yi+ky; 308.121 + if (yj_>=0 && yj_<dimy() && yi_>=0 && yi_<dimy()) 308.122 + for (int kx=-patch_size;kx<=patch_size;kx+=sampling){ 308.123 + int xj_ = xj+kx; 308.124 + int xi_ = xi+kx; 308.125 + if (xj_>=0 && xj_<dimx() && xi_>=0 && xi_<dimx()) 308.126 + for (int v=0;v<dimv();v++){ 308.127 + double d1 = (*this)(xj_,yj_,zj_,v)-(*this)(xi_,yi_,zi_,v); 308.128 + d += d1*d1; 308.129 + n++; 308.130 + } 308.131 + } 308.132 + } 308.133 + } 308.134 + float w = (float)std::exp(d*h2); 308.135 + wmax = w>wmax?w:wmax; 308.136 + for (int v=0;v<dimv();v++) uhat[v] += w*(*this)(xj,yj,zj,v); 308.137 + sw += w; 308.138 + } 308.139 + } 308.140 + // add the central pixel 308.141 + { for (int v=0;v<dimv();v++) uhat[v] += wmax*(*this)(xi,yi,zi,v); } 308.142 + sw += wmax; 308.143 + { for (int v=0;v<dimv();v++) dest(xi,yi,zi,v)= (T) (uhat[v] /= sw); } 308.144 + } 308.145 + } 308.146 + } 308.147 + else{ // 2D case 308.148 + CImg<> P=(*this).get_blur(1); // inspired from Mahmoudi&Sapiro SPletter dec 05 308.149 + int n_simu=512; 308.150 + CImg<> tmp(n_simu,n_simu); 308.151 + double sig = std::sqrt(tmp.fill(0.f).noise(sigma).blur(1).pow(2.).sum()/(n_simu*n_simu)); 308.152 + int pxi=(int)(alpha*patch_size),pyi=(int)(alpha*patch_size);//Define the size of the neighborhood 308.153 + for (int yi=0;yi<dimy();yi++){ 308.154 +#if cimg_debug>=1 308.155 + std::fprintf(stderr,"\rProcessing : %3d %%",(int)((float)yi/(float)dimy()*100.));fflush(stdout); 308.156 +#endif 308.157 + for (int xi=0;xi<dimx();xi++){ 308.158 + for (int v=0;v<dimv();v++) uhat[v] = 0; 308.159 + float sw=0,wmax=-1; 308.160 + for (int yj=cimg::max(0,yi-pyi);yj<cimg::min(dimy(),yi+pyi+1);yj++) 308.161 + for (int xj=cimg::max(0,xi-pxi);xj<cimg::min(dimx(),xi+pxi+1);xj++) 308.162 + if( cimg::abs(P(xi,yi)-P(xj,yj))/sig < 3.){ 308.163 + double d = 0; 308.164 + int n = 0; 308.165 + if (!(xi==xj && yi==yj)) 308.166 + for (int ky=-patch_size;ky<patch_size+1;ky+=sampling){ 308.167 + int yj_ = yj+ky; 308.168 + int yi_ = yi+ky; 308.169 + if (yj_>=0 && yj_<dimy() && yi_>=0 && yi_<dimy()) 308.170 + for (int kx=-patch_size;kx<patch_size+1;kx+=sampling){ 308.171 + int xj_ = xj+kx; 308.172 + int xi_ = xi+kx; 308.173 + if (xj_>=0 && xj_<dimx() && xi_>=0 && xi_<dimx()) 308.174 + for (int v=0;v<dimv();v++){ 308.175 + double d1 = (*this)(xj_,yj_,v)-(*this)(xi_,yi_,v); 308.176 + d += d1*d1; 308.177 + n++; 308.178 + } 308.179 + } 308.180 + } 308.181 + float w=(float)std::exp(d*h2); 308.182 + for (int v=0;v<dimv();v++) uhat[v] += w*(*this)(xj,yj,v); 308.183 + wmax = w>wmax?w:wmax; // Store the maximum of the weights 308.184 + sw += w; // Compute the sum of the weights 308.185 + } 308.186 + // add the central pixel with the maximum weight 308.187 + { for (int v=0;v<dimv();v++) uhat[v] += wmax*(*this)(xi,yi,v); } 308.188 + sw += wmax; 308.189 + // Compute the estimate for the current pixel 308.190 + { for (int v=0;v<dimv();v++) dest(xi,yi,v)= (T) (uhat[v] /= sw); } 308.191 + } 308.192 + }// main loop 308.193 + }// 2d 308.194 + delete [] uhat; 308.195 + *this=dest; 308.196 +#if cimg_debug>=1 308.197 + std::fprintf(stderr,"\n"); // make a new line 308.198 +#endif 308.199 + }// is empty 308.200 + return *this; 308.201 +} 308.202 + 308.203 +//! Get the result of the NL-Means denoising algorithm. 308.204 +/** 308.205 + \param patch_size = radius of the patch (1=3x3 by default) 308.206 + \param lambda = bandwidth ( -1 by default : automatic selection) 308.207 + \param alpha = size of the region where similar patch are searched (3 x patch_size = 9x9 by default) 308.208 + \param sigma = noise standard deviation (-1 = estimation) 308.209 + \param sampling = sampling of the patch (1 = uses all point, 2 = uses one point on 4, etc) 308.210 + If the image has three dimensions then the patch is only in 2D and the neighborhood extent in time is only 5. 308.211 + If the image has several channel (color images), the distance between the two patch is computed using 308.212 + all the channels. 308.213 + The greater the patch is the best is the result. 308.214 + Lambda parameter is function of the size of the patch size. The automatic Lambda parameter is taken 308.215 + in the Chi2 table at a significiance level of 0.01. This diffear from the original paper [1]. The weighted average becomes then: 308.216 + \f$$ \hat{f}(x,y) = \sum_{x',y'} \frac{1}{Z} exp(\frac{P(x,y)-P(x',y')}{2 \lambda \sigma^2}) f(x',y') $$\f 308.217 + where \f$ P(x,y) $\f denotes the patch in (x,y) location. 308.218 + 308.219 + An a priori is also used to increase the speed of the algorithm in the spirit of Sapiro et al. SPletter dec 05 308.220 + 308.221 + This very basic version of the Non-Local Means algorithm provides an output image which contains 308.222 + some residual noise with a relatively small variance (\f$\sigma<5$\f). 308.223 + 308.224 + [1] A non-local algorithm for image denoising 308.225 + Buades, A.; Coll, B.; Morel, J.-M.; 308.226 + Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on 308.227 + Volume 2, 20-25 June 2005 Page(s):60 - 65 vol. 2 308.228 +**/ 308.229 +CImg<T> get_nlmeans( int patch_size=1, double lambda=-1, double alpha=3 ,double sigma=-1, int sampling=1) { 308.230 + return CImg<T>(*this).nlmeans(patch_size,lambda,alpha,sigma,sampling); 308.231 +} 308.232 + 308.233 +#endif
309.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 309.2 +++ b/PTdecode/CImg-1.3.0/plugins/noise_analysis.h Mon Aug 03 14:09:20 2009 +0100 309.3 @@ -0,0 +1,83 @@ 309.4 +/* 309.5 + # 309.6 + # File : noise_analysis.h 309.7 + # ( C++ header file - CImg plug-in ) 309.8 + # 309.9 + # Description : CImg plug-in that estimates noise standard deviation. 309.10 + # This file is a part of the CImg Library project. 309.11 + # ( http://cimg.sourceforge.net ) 309.12 + # 309.13 + # Copyright : Jerome Boulanger 309.14 + # ( http://www.irisa.fr/vista/Equipe/People/Jerome.Boulanger.html ) 309.15 + # 309.16 + # License : CeCILL v2.0 309.17 + # ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 309.18 + # 309.19 + # This software is governed by the CeCILL license under French law and 309.20 + # abiding by the rules of distribution of free software. You can use, 309.21 + # modify and/ or redistribute the software under the terms of the CeCILL 309.22 + # license as circulated by CEA, CNRS and INRIA at the following URL 309.23 + # "http://www.cecill.info". 309.24 + # 309.25 + # As a counterpart to the access to the source code and rights to copy, 309.26 + # modify and redistribute granted by the license, users are provided only 309.27 + # with a limited warranty and the software's author, the holder of the 309.28 + # economic rights, and the successive licensors have only limited 309.29 + # liability. 309.30 + # 309.31 + # In this respect, the user's attention is drawn to the risks associated 309.32 + # with loading, using, modifying and/or developing or reproducing the 309.33 + # software by the user in light of its specific status of free software, 309.34 + # that may mean that it is complicated to manipulate, and that also 309.35 + # therefore means that it is reserved for developers and experienced 309.36 + # professionals having in-depth computer knowledge. Users are therefore 309.37 + # encouraged to load and test the software's suitability as regards their 309.38 + # requirements in conditions enabling the security of their systems and/or 309.39 + # data to be ensured and, more generally, to use and operate it in the 309.40 + # same conditions as regards security. 309.41 + # 309.42 + # The fact that you are presently reading this means that you have had 309.43 + # knowledge of the CeCILL license and that you accept its terms. 309.44 + # 309.45 +*/ 309.46 + 309.47 +#ifndef cimg_plugin_noise_analysis 309.48 +#define cimg_plugin_noise_analysis 309.49 + 309.50 +//! Compute somme pseudo-residuals 309.51 +/* 309.52 + The pseudo residual r_i of the image Y_i are so thar E[r_i^2] = E[Y_i^2]. 309.53 + This is the 2D pseudo-implementation. 309.54 +*/ 309.55 +CImg<float> get_pseudo_residuals() const { 309.56 + CImg<float> residu(dimx(),dimy(),dimz(),dim); 309.57 + if (!is_empty()){ 309.58 + cimg_forXYZV(*this,x,y,z,v) { 309.59 + double t2 = 0; 309.60 + if (x==0) t2+=(*this)(x+1,y,z,v); 309.61 + else t2+=(*this)(x-1,y,z,v); 309.62 + if ((unsigned int)x==(unsigned int)(dimx()-1)) t2+=(*this)(x-1,y,z,v); 309.63 + else t2+=(*this)(x+1,y,z,v); 309.64 + if (y==0) t2+=(*this)(x,y+1,z,v); 309.65 + else t2+=(*this)(x,y-1,z,v); 309.66 + if ((unsigned int)y==(unsigned int)(dimy()-1)) t2+=(*this)(x,y-1,z,v); 309.67 + else t2+=(*this)(x,y+1,z,v); 309.68 + residu(x,y,z,v) = (float)(0.223606798*(4.*(double)(*this)(x,y,z,v)-t2)); 309.69 + } 309.70 + } 309.71 + return residu; 309.72 +} 309.73 + 309.74 +//! Estimate the noise variance 309.75 +/* 309.76 + \param method = 0 : Least Median of Square, 309.77 + 1 : Least Trimmed of Square, 309.78 + 2 : Least Mean of Square. 309.79 + Robustly estimatate the variance of a the noise using the pseudo-residuals. 309.80 + \see variance_estimation() 309.81 +*/ 309.82 +double noise_variance(const unsigned int method=0) const { 309.83 + return (*this).get_pseudo_residuals().variance(method); 309.84 +} 309.85 + 309.86 +#endif
310.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 310.2 +++ b/PTdecode/CImg-1.3.0/plugins/skeleton.h Mon Aug 03 14:09:20 2009 +0100 310.3 @@ -0,0 +1,728 @@ 310.4 +/* 310.5 + # 310.6 + # File : skeleton.h 310.7 + # ( C++ header file - CImg plug-in ) 310.8 + # 310.9 + # Description : CImg plugin that implements the computation of the Hamilton-Jacobi skeletons 310.10 + # using Siddiqi algorithm with the correction proposed by Torsello, 310.11 + # as described in : 310.12 + # 310.13 + # [SBTZ02] K. Siddiqi, S. Bouix, A. Tannenbaum and S.W. Zucker. Hamilton-Jacobi Skeletons 310.14 + # International Journal of Computer Vision, 48(3):215-231, 2002 310.15 + # 310.16 + # [TH03] A. Torsello and E. R. Hancock. Curvature Correction of the Hamilton-Jacobi Skeleton 310.17 + # IEEE Computer Vision and Pattern Recognition, 2003 310.18 + # 310.19 + # [BST05] S. Bouix, K. Siddiqi and A. Tannenbaum. Flux driven automatic centerline 310.20 + # extraction. Medical Image Analysis, 9:209-221, 2005 310.21 + # 310.22 + # IMPORTANT WARNING : You must include STL's <queue> before plugin inclusion to make it working ! 310.23 + # 310.24 + # Copyright : Francois-Xavier Dupe 310.25 + # ( http://www.greyc.ensicaen.fr/~fdupe/ ) 310.26 + # 310.27 + # This software is governed by the CeCILL license under French law and 310.28 + # abiding by the rules of distribution of free software. You can use, 310.29 + # modify and/or redistribute the software under the terms of the CeCILL 310.30 + # license as circulated by CEA, CNRS and INRIA at the following URL 310.31 + # "http://www.cecill.info". 310.32 + # 310.33 + # As a counterpart to the access to the source code and rights to copy, 310.34 + # modify and redistribute granted by the license, users are provided only 310.35 + # with a limited warranty and the software's author, the holder of the 310.36 + # economic rights, and the successive licensors have only limited 310.37 + # liability. 310.38 + # 310.39 + # In this respect, the user's attention is drawn to the risks associated 310.40 + # with loading, using, modifying and/or developing or reproducing the 310.41 + # software by the user in light of its specific status of free software, 310.42 + # that may mean that it is complicated to manipulate, and that also 310.43 + # therefore means that it is reserved for developers and experienced 310.44 + # professionals having in-depth computer knowledge. Users are therefore 310.45 + # encouraged to load and test the software's suitability as regards their 310.46 + # requirements in conditions enabling the security of their systems and/or 310.47 + # data to be ensured and, more generally, to use and operate it in the 310.48 + # same conditions as regards security. 310.49 + # 310.50 + # The fact that you are presently reading this means that you have had 310.51 + # knowledge of the CeCILL license and that you accept its terms. 310.52 + # 310.53 +*/ 310.54 +#ifndef cimg_plugin_skeleton 310.55 +#define cimg_plugin_skeleton 310.56 + 310.57 +/** 310.58 + * Compute the flux of the gradient 310.59 + * @param grad the gradient of the distance function 310.60 + * @param sY the sampling size in Y 310.61 + * @param sZ the sampling size in Z 310.62 + * @return the flux 310.63 + */ 310.64 +CImg<floatT> get_flux ( const CImgList<floatT> & grad, 310.65 + float sY = 1.0f, float sZ = 1.0f ) const 310.66 +{ 310.67 + int stop = 0; // Stop flag 310.68 + float f = 0; // The current flux 310.69 + int count = 0; // Counter 310.70 + CImg<floatT> flux ((*this).dimx(), (*this).dimy(), (*this).dimz()); 310.71 + flux.fill(0); 310.72 + 310.73 + cimg_forXYZ((*this),x,y,z) 310.74 + { 310.75 + // If the point is the backgroung continue 310.76 + if ( (*this)(x,y,z) == 0 ) 310.77 + continue; 310.78 + // Look at the neigthboorhound and compute the flux 310.79 + stop = 0; 310.80 + f = 0; 310.81 + count = 0; 310.82 + 310.83 + for ( int k = -1; k <= 1; ++k ) 310.84 + for ( int l = -1; l <= 1; ++l ) 310.85 + for ( int m = -1; m <= 1; ++m ) 310.86 + { 310.87 + if ( stop == 1 ) 310.88 + continue; 310.89 + 310.90 + // Protection 310.91 + if (( x+k < 0 ) || ( x+k >= (*this).dimx() ) || ( y+l < 0 ) || ( y+l >= (*this).dimy() ) || 310.92 + ( z+m < 0 ) || ( z+m >= (*this).dimz() ) || ( k==0 && l==0 && m==0 )) 310.93 + continue; 310.94 + 310.95 + ++count; 310.96 + 310.97 + //Test if the point is in the interior 310.98 + if ( (*this)(x+k,y+l,z+m) == 0 ) 310.99 + { 310.100 + stop = 1; 310.101 + continue; 310.102 + } 310.103 + 310.104 + // Compute the flux 310.105 + f += ( grad(0,x+k,y+l,z+m)*k + grad(1,x+k,y+l,z+m)*l/sY + grad(2,x+k,y+l,z+m)*m/sZ ) / cimg_std::sqrt((float)(k*k+l*l+m*m)); 310.106 + } 310.107 + 310.108 + //Update 310.109 + if ( stop == 1 || count == 0 ) 310.110 + flux(x,y,z) = 0; 310.111 + else 310.112 + flux(x,y,z) = f / count; 310.113 + 310.114 + } 310.115 + 310.116 + return flux; 310.117 +} 310.118 + 310.119 +/** 310.120 + * Definition of a point with his flux value 310.121 + */ 310.122 +struct _PointFlux 310.123 +{ 310.124 + int pos [3]; 310.125 + float flux; 310.126 + float dist; 310.127 +}; 310.128 + 310.129 +/** 310.130 + * Class for the priority queue 310.131 + */ 310.132 +class _compare_point 310.133 +{ 310.134 + /** 310.135 + * Create medial curves 310.136 + */ 310.137 + bool curve; 310.138 + 310.139 + public: 310.140 + _compare_point ( bool curve = false ) 310.141 + { 310.142 + this->curve = curve; 310.143 + } 310.144 + 310.145 + bool operator() ( const _PointFlux & p1, const _PointFlux & p2 ) const 310.146 + { 310.147 + if ( curve ) 310.148 + { 310.149 + if ( p1.dist > p2.dist ) 310.150 + return true; 310.151 + else if ( p1.dist == p2.dist && p1.flux < p2.flux ) 310.152 + return true; 310.153 + } 310.154 + else 310.155 + { 310.156 + if ( p1.flux < p2.flux ) 310.157 + return true; 310.158 + else if ( p1.flux == p2.flux && p1.dist > p2.dist ) 310.159 + return true; 310.160 + } 310.161 + 310.162 + return false; 310.163 + } 310.164 +}; 310.165 + 310.166 +/** 310.167 + * Compute the log-density using the algorithm from Torsello 310.168 + * @param dist the distance map 310.169 + * @param grad the gradient of the distance map, e.g. the flux 310.170 + * @param flux the divergence map 310.171 + * @param delta the threshold for the division 310.172 + * @return the logdensity \rho 310.173 + */ 310.174 +CImg<floatT> get_logdensity ( const CImg<floatT> & dist, 310.175 + const CImgList<floatT> & grad, 310.176 + const CImg<floatT> & flux, float delta = 0.1 ) const 310.177 +{ 310.178 + std::priority_queue< _PointFlux, std::vector<_PointFlux>, _compare_point > pqueue(true); 310.179 + CImg<floatT> logdensity ((*this).dimx(), (*this).dimy(), (*this).dimz(), 1, 0); 310.180 + 310.181 + // 1 - Put all the pixel inside the priority queue 310.182 + cimg_forXYZ(dist,x,y,z) 310.183 + if ( dist(x,y,z) != 0 ) 310.184 + { 310.185 + _PointFlux p; 310.186 + p.pos[0] = x; 310.187 + p.pos[1] = y; 310.188 + p.pos[2] = z; 310.189 + p.flux = 0; 310.190 + p.dist = dist(x,y,z); 310.191 + pqueue.push(p); 310.192 + } 310.193 + 310.194 + // 2 - Compute the logdensity 310.195 + while ( ! pqueue.empty() ) 310.196 + { 310.197 + _PointFlux p = pqueue.top(); 310.198 + pqueue.pop(); 310.199 + 310.200 + float Fx = grad(0,p.pos[0],p.pos[1],p.pos[2]); 310.201 + float Fy = grad(1,p.pos[0],p.pos[1],p.pos[2]); 310.202 + float Fz = grad(2,p.pos[0],p.pos[1],p.pos[2]); 310.203 + 310.204 + logdensity(p.pos[0],p.pos[1],p.pos[2]) = logdensity.linear_atXYZ(p.pos[0]-Fx,p.pos[1]-Fy,p.pos[2]-Fz) 310.205 + - 0.5f * (flux(p.pos[0],p.pos[1],p.pos[2])+flux.linear_atXYZ(p.pos[0]-Fx,p.pos[1]-Fy,p.pos[2]-Fz)); 310.206 + 310.207 + float tmp = 1.0f - (1.0f-fabs(Fx)) * (1.0f-fabs(Fy)) * (1.0f-fabs(Fz)); 310.208 + if ( tmp > delta ) 310.209 + logdensity(p.pos[0],p.pos[1],p.pos[2]) /= tmp; 310.210 + else if ( delta < 1 ) 310.211 + logdensity(p.pos[0],p.pos[1],p.pos[2]) = 0; 310.212 + } 310.213 + 310.214 + return logdensity; 310.215 +} 310.216 + 310.217 +/** 310.218 + * Computed the corrected divergence map using Torsello formula and idea 310.219 + * @param logdensity the log density map 310.220 + * @param grad the gradient of the distance map 310.221 + * @param flux the flux using siddiqi formula 310.222 + * @param delta the discrete step 310.223 + * @return the corrected divergence map 310.224 + */ 310.225 +CImg<floatT> get_corrected_flux ( const CImg<floatT> & logdensity, 310.226 + const CImgList<floatT> & grad, 310.227 + const CImg<floatT> & flux, 310.228 + float delta = 1.0 ) const 310.229 +{ 310.230 + CImg<floatT> corr_map ((*this).dimx(), (*this).dimy(), (*this).dimz(), 1, 0); 310.231 + 310.232 + cimg_forXYZ(corr_map,x,y,z) 310.233 + { 310.234 + float Fx = grad(0,x,y,z); 310.235 + float Fy = grad(1,x,y,z); 310.236 + float Fz = grad(2,x,y,z); 310.237 + 310.238 + corr_map(x,y,z) = (logdensity(x,y,z) - logdensity.linear_atXYZ(x-Fx,y-Fy,z-Fz)) * expf(logdensity(x,y,z) - 0.5f * delta) + 310.239 + 0.5f * ( flux.linear_atXYZ(x-Fx,y-Fy,z-Fz)*expf(logdensity.linear_atXYZ(x-Fx,y-Fy,z-Fz)) + flux(x,y,z)*expf(logdensity(x,y,z))); 310.240 + } 310.241 + 310.242 + return corr_map; 310.243 +} 310.244 + 310.245 +/** 310.246 + * Test if a point is simple using Euler number for 2D case 310.247 + * or using Malandain criterion for 3D case 310.248 + * @param img the image 310.249 + * @param x the x coordinate 310.250 + * @param y the y coordinate 310.251 + * @param z the z coordinate 310.252 + * @return true if simple 310.253 + */ 310.254 +bool _isSimple ( const CImg<T> & img, int x, int y, int z ) const 310.255 +{ 310.256 + if ( img.dimz() == 1 ) // 2D case 310.257 + { 310.258 + int V = 0; // Number of vertices 310.259 + int E = 0; // Number of edges 310.260 + 310.261 + for ( int k = -1; k <= 1; ++k ) 310.262 + for ( int l = -1; l <= 1; ++l ) 310.263 + { 310.264 + // Protection 310.265 + if ( x+k < 0 || x+k >= img.dimx() || y+l < 0 || y+l >= img.dimy() ) 310.266 + continue; 310.267 + 310.268 + // Count the number of vertices 310.269 + if ( img(x+k,y+l) != 0 && ! ( k == 0 && l == 0 )) 310.270 + { 310.271 + ++V; 310.272 + 310.273 + // Count the number of edges 310.274 + for ( int k1 = -1; k1 <= 1; ++k1 ) 310.275 + for ( int l1 = -1; l1 <= 1; ++l1 ) 310.276 + { 310.277 + // Protection 310.278 + if ( x+k+k1 < 0 || x+k+k1 >= img.dimx() || y+l+l1 < 0 || y+l+l1 >= img.dimy() ) 310.279 + continue; 310.280 + 310.281 + if ( !(k1 == 0 && l1 == 0) && img(x+k+k1,y+l+l1) != 0 && k+k1 > -2 && l+l1 > -2 310.282 + && k+k1 < 2 && l+l1 < 2 && !( k+k1 == 0 && l+l1 == 0 )) 310.283 + ++E; 310.284 + } 310.285 + } 310.286 + } 310.287 + 310.288 + // Remove the corner if exists 310.289 + if ( x-1 >= 0 && y-1 >= 0 && img(x-1,y-1) != 0 && img(x,y-1) != 0 && img(x-1,y) != 0 ) 310.290 + E -= 2; 310.291 + 310.292 + if ( x-1 >= 0 && y+1 < img.dimy() && img(x-1,y+1) != 0 && img(x,y+1) != 0 && img(x-1,y) != 0 ) 310.293 + E -= 2; 310.294 + 310.295 + if ( x+1 < img.dimx() && y-1 >= 0 && img(x+1,y-1) != 0 && img(x,y-1) != 0 && img(x+1,y) != 0 ) 310.296 + E -= 2; 310.297 + 310.298 + if ( x+1 < img.dimx() && y+1 < img.dimy() && img(x+1,y+1) != 0 && img(x,y+1) != 0 && img(x+1,y) != 0 ) 310.299 + E -= 2; 310.300 + 310.301 + // Final return true if it is a tree (eg euler number equal to 1) 310.302 + if (( V - E/2 ) == 1 ) 310.303 + return true; 310.304 + } 310.305 + else // 3D case 310.306 + { 310.307 + int C_asterix = 0; 310.308 + int C_bar = 0; 310.309 + CImg<intT> visit ( 3, 3, 3, 1, 0 ); // Visitor table 310.310 + int count = 0; 310.311 + 310.312 + visit(1,1,1) = -1; 310.313 + 310.314 + // Compute C^* 310.315 + 310.316 + // Seeking for a component 310.317 + for ( int k = -1; k <= 1; ++k ) 310.318 + for ( int l = -1; l <= 1; ++l ) 310.319 + for ( int m = -1; m <= 1; ++m ) 310.320 + { 310.321 + int label = 0; 310.322 + 310.323 + // Protection 310.324 + if ( x+k < 0 || x+k >= img.dimx() || 310.325 + y+l < 0 || y+l >= img.dimy() || 310.326 + z+m < 0 || z+m >= img.dimz() || 310.327 + ( k==0 && l==0 && m==0 )) 310.328 + continue; 310.329 + 310.330 + if ( visit(1+k,1+l,1+m) == 0 && img(x+k,y+l,z+m) != 0 ) 310.331 + { 310.332 + // Look after the neightbor 310.333 + for ( int k1 = -1; k1 <= 1; ++k1 ) 310.334 + for ( int l1 = -1; l1 <= 1; ++l1 ) 310.335 + for ( int m1 = -1; m1 <= 1; ++m1 ) 310.336 + { 310.337 + // Protection 310.338 + if ( x+k+k1 < 0 || x+k+k1 >= img.dimx() || 310.339 + y+l+l1 < 0 || y+l+l1 >= img.dimy() || 310.340 + z+m+m1 < 0 || z+m+m1 >= img.dimz() || 310.341 + k+k1 > 1 || k+k1 < -1 || 310.342 + l+l1 > 1 || l+l1 < -1 || 310.343 + m+m1 > 1 || m+m1 < -1 ) 310.344 + continue; 310.345 + 310.346 + // Search for a already knew component 310.347 + if ( visit(1+k+k1,1+l+l1,1+m+m1) > 0 && 310.348 + img(x+k+k1,y+l+l1,z+m+m1) != 0 ) 310.349 + { 310.350 + if ( label == 0 ) 310.351 + label = visit(1+k+k1,1+l+l1,1+m+m1); 310.352 + else if ( label != visit(1+k+k1,1+l+l1,1+m+m1) ) 310.353 + { 310.354 + // Meld component 310.355 + --C_asterix; 310.356 + 310.357 + int C = visit(1+k+k1,1+l+l1,1+m+m1); 310.358 + cimg_forXYZ(visit,a,b,c) 310.359 + if ( visit(a,b,c) == C ) 310.360 + visit(a,b,c) = label; 310.361 + } 310.362 + } 310.363 + } 310.364 + 310.365 + // Label the point 310.366 + if ( label == 0 ) 310.367 + { 310.368 + // Find a new component 310.369 + ++C_asterix; 310.370 + ++count; 310.371 + visit(1+k,1+l,1+m) = count; 310.372 + } 310.373 + else 310.374 + { 310.375 + visit(1+k,1+l,1+m) = label; 310.376 + } 310.377 + } 310.378 + } 310.379 + 310.380 + if ( C_asterix != 1 ) 310.381 + return false; 310.382 + 310.383 + // Compute \bar{C} 310.384 + 310.385 + // Reinit visit 310.386 + visit.fill(0); 310.387 + visit(1,1,1) = -1; 310.388 + 310.389 + // Seeking for a component 310.390 + 310.391 + // Look at X-axis 310.392 + { for ( int k = -1; k <= 1; ++k ) 310.393 + { 310.394 + if ( x+k < 0 || x+k >= img.dimx() ) 310.395 + continue; 310.396 + 310.397 + if ( img(x+k,y,z) == 0 && visit(1+k,1,1) == 0 ) 310.398 + { 310.399 + ++C_bar; 310.400 + ++count; 310.401 + visit(1+k,1,1) = count; 310.402 + 310.403 + // Follow component 310.404 + for ( int l = -1; l <= 1; ++l ) 310.405 + { 310.406 + if ( y+l < img.dimy() && y+l >= 0 && img(x+k,y+l,z) == 0 && visit(1+k,1+l,1) == 0 ) 310.407 + visit(1+k,1+l,1) = count; 310.408 + if ( z+l < img.dimz() && z+l >= 0 && img(x+k,y,z+l) == 0 && visit(1+k,1,1+l) == 0 ) 310.409 + visit(1+k,1,1+l) = count; 310.410 + } 310.411 + } 310.412 + } 310.413 + } 310.414 + 310.415 + // Look at Y-axis 310.416 + { for ( int k = -1; k <= 1; ++k ) 310.417 + { 310.418 + if ( y+k < 0 || y+k >= img.dimy() ) 310.419 + continue; 310.420 + 310.421 + if ( img(x,y+k,z) == 0 && visit(1,1+k,1) == 0 ) 310.422 + { 310.423 + int label = 0; 310.424 + ++C_bar; 310.425 + ++count; 310.426 + visit(1,1+k,1) = count; 310.427 + label = count; 310.428 + 310.429 + // Follow component 310.430 + for ( int l = -1; l <= 1; ++l ) 310.431 + { 310.432 + if ( l == 0 ) 310.433 + continue; 310.434 + 310.435 + if ( x+l < img.dimx() && x+l >= 0 && img(x+l,y+k,z) == 0 ) 310.436 + { 310.437 + if ( visit(1+l,1+k,1) != 0 ) 310.438 + { 310.439 + if ( label != visit(1+l,1+k,1) ) 310.440 + { 310.441 + // Meld component 310.442 + --C_bar; 310.443 + 310.444 + int C = visit(1+l,1+k,1); 310.445 + cimg_forXYZ(visit,a,b,c) 310.446 + if ( visit(a,b,c) == C ) 310.447 + visit(a,b,c) = label; 310.448 + } 310.449 + } 310.450 + else 310.451 + visit(1+l,1+k,1) = label; 310.452 + } 310.453 + 310.454 + if ( z+l < img.dimz() && z+l >= 0 && img(x,y+k,z+l) == 0 ) 310.455 + { 310.456 + if ( visit(1,1+k,1+l) != 0 ) 310.457 + { 310.458 + if ( label != visit(1,1+k,1+l) ) 310.459 + { 310.460 + // Meld component 310.461 + --C_bar; 310.462 + 310.463 + int C = visit(1,1+k,1+l); 310.464 + cimg_forXYZ(visit,a,b,c) 310.465 + if ( visit(a,b,c) == C ) 310.466 + visit(a,b,c) = label; 310.467 + } 310.468 + } 310.469 + else 310.470 + visit(1,1+k,1+l) = label; 310.471 + } 310.472 + } 310.473 + } 310.474 + } 310.475 + } 310.476 + 310.477 + // Look at Z-axis 310.478 + { for ( int k = -1; k <= 1; ++k ) 310.479 + { 310.480 + if ( z+k < 0 || z+k >= img.dimz() ) 310.481 + continue; 310.482 + 310.483 + if ( img(x,y,z+k) == 0 && visit(1,1,1+k) == 0 ) 310.484 + { 310.485 + int label = 0; 310.486 + ++C_bar; 310.487 + ++count; 310.488 + visit(1,1,1+k) = count; 310.489 + label = count; 310.490 + 310.491 + // Follow component 310.492 + for ( int l = -1; l <= 1; ++l ) 310.493 + { 310.494 + if ( l == 0 ) 310.495 + continue; 310.496 + 310.497 + if ( x+l < img.dimx() && x+l >= 0 && img(x+l,y,z+k) == 0 ) 310.498 + { 310.499 + if ( visit(1+l,1,1+k) != 0 ) 310.500 + { 310.501 + if ( label != visit(1+l,1,1+k) ) 310.502 + { 310.503 + // Meld component 310.504 + --C_bar; 310.505 + 310.506 + int C = visit(1+l,1,1+k); 310.507 + cimg_forXYZ(visit,a,b,c) 310.508 + if ( visit(a,b,c) == C ) 310.509 + visit(a,b,c) = label; 310.510 + } 310.511 + } 310.512 + else 310.513 + visit(1+l,1,1+k) = label; 310.514 + } 310.515 + 310.516 + if ( y+l < img.dimy() && y+l >= 0 && img(x,y+l,z+k) == 0 ) 310.517 + { 310.518 + if ( visit(1,1+l,1+k) != 0 ) 310.519 + { 310.520 + if ( label != visit(1,1+l,1+k) ) 310.521 + { 310.522 + // Meld component 310.523 + --C_bar; 310.524 + 310.525 + int C = visit(1,1+l,1+k); 310.526 + cimg_forXYZ(visit,a,b,c) 310.527 + if ( visit(a,b,c) == C ) 310.528 + visit(a,b,c) = label; 310.529 + } 310.530 + } 310.531 + else 310.532 + visit(1,1+l,1+k) = label; 310.533 + } 310.534 + } 310.535 + } 310.536 + } 310.537 + } 310.538 + 310.539 + if ( C_bar == 1 ) 310.540 + return true; 310.541 + } 310.542 + 310.543 + return false; 310.544 +} 310.545 + 310.546 +/** 310.547 + * Test if a point is a end point 310.548 + * @param img the image 310.549 + * @param label the table of labels 310.550 + * @param curve set it to true for having medial curve 310.551 + * @param x the x coordinate 310.552 + * @param y the y coordinate 310.553 + * @param z the z coordinate 310.554 + * @return true if simple 310.555 + */ 310.556 +bool _isEndPoint ( const CImg<T> & img, const CImg<T> & label, 310.557 + bool curve, int x, int y, int z ) const 310.558 +{ 310.559 + if ( label(x,y,z) == 1 ) 310.560 + return true; 310.561 + 310.562 + if (( ! curve ) && ( img.dimz() != 1 )) // 3D case with medial surface 310.563 + { 310.564 + // Use Pudney specification with the 9 plans 310.565 + int plan9 [9][8][3] = { { {-1,0,-1}, {0,0,-1}, {1,0,-1}, {-1,0,0}, {1,0,0}, {-1,0,1}, {0,0,1}, {1,0,1} }, // Plan 1 310.566 + { {-1,1,0}, {0,1,0}, {1,1,0}, {-1,0,0}, {1,0,0}, {-1,-1,0}, {0,-1,0}, {1,-1,0} }, // Plan 2 310.567 + { {0,-1,-1}, {0,0,-1}, {0,1,-1}, {0,-1,0}, {0,1,0}, {0,-1,1}, {0,0,1}, {0,1,1} }, // Plan 3 310.568 + { {1,1,1}, {0,1,0}, {-1,1,-1}, {1,0,1}, {-1,0,-1}, {-1,-1,-1}, {0,-1,0}, {1,-1,1} }, // Plan 4 310.569 + { {-1,1,1}, {0,1,0}, {1,1,-1}, {-1,0,1}, {1,0,-1}, {-1,-1,1}, {0,-1,0}, {1,-1,-1} }, // Plan 5 310.570 + { {-1,1,1}, {0,1,1}, {1,1,1}, {-1,0,0}, {1,0,0}, {-1,-1,-1}, {0,-1,-1}, {1,-1,-1} }, // Plan 6 310.571 + { {-1,1,-1}, {0,1,-1}, {1,1,-1}, {-1,0,0}, {1,0,0}, {-1,-1,1}, {0,-1,1}, {1,-1,1} }, // Plan 7 310.572 + { {-1,1,-1}, {-1,1,0}, {-1,1,1}, {0,0,-1}, {0,0,1}, {1,-1,-1}, {1,-1,0}, {1,-1,1} }, // Plan 8 310.573 + { {1,1,-1}, {1,1,0}, {1,1,1}, {0,0,-1}, {0,0,1}, {-1,-1,-1}, {-1,-1,0}, {-1,-1,1} } // Plan 9 310.574 + }; 310.575 + 310.576 + // Count the number of neighbors on each plan 310.577 + for ( int k = 0; k < 9; ++k ) 310.578 + { 310.579 + int count = 0; 310.580 + 310.581 + for ( int l = 0; l < 8; ++l ) 310.582 + { 310.583 + if ( x+plan9[k][l][0] < 0 || x+plan9[k][l][0] >= img.dimx() || 310.584 + y+plan9[k][l][1] < 0 || y+plan9[k][l][1] >= img.dimy() || 310.585 + z+plan9[k][l][2] < 0 || z+plan9[k][l][2] >= img.dimz() ) 310.586 + continue; 310.587 + 310.588 + if ( img(x+plan9[k][l][0],y+plan9[k][l][1],z+plan9[k][l][2]) != 0 ) 310.589 + ++count; 310.590 + } 310.591 + 310.592 + if ( count < 2 ) 310.593 + return true; 310.594 + } 310.595 + } 310.596 + else // 2D or 3D case with medial curve 310.597 + { 310.598 + int isb = 0; 310.599 + 310.600 + for ( int k = -1; k <= 1; ++k ) 310.601 + for ( int l = -1; l <= 1; ++l ) 310.602 + for ( int m = -1; m <= 1; ++m ) 310.603 + { 310.604 + // Protection 310.605 + if ( x+k < 0 || x+k >= img.dimx() || y+l < 0 || y+l >= img.dimy() || 310.606 + z+m < 0 || z+m >= img.dimz() ) 310.607 + continue; 310.608 + 310.609 + if ( img(x+k,y+l,z+m) != 0 ) 310.610 + ++isb; 310.611 + } 310.612 + 310.613 + if ( isb == 2 ) // The pixel with one neighbor 310.614 + return true; 310.615 + } 310.616 + 310.617 + // Else it's not... 310.618 + return false; 310.619 +} 310.620 + 310.621 +/** 310.622 + * Compute the skeleton of the shape using Hamilton-Jacobi scheme 310.623 + * @param flux the flux of the distance gradient 310.624 + * @param dist the euclidean distance of the object 310.625 + * @param curve create or not medial curve 310.626 + * @param thres the threshold on the flux 310.627 + * @return the skeleton 310.628 + */ 310.629 +CImg<T> get_skeleton ( const CImg<floatT> & flux, 310.630 + const CImg<floatT> & dist, bool curve ,float thres ) const 310.631 +{ 310.632 + CImg<T> skeleton ( *this ); // The skeleton 310.633 + CImg<T> label ( (*this).dimx(), (*this).dimy(), (*this).dimz(), 1, 0 ); // Save label 310.634 + CImg<T> count ( (*this).dimx(), (*this).dimy(), (*this).dimz(), 1, 0 ); // A counter for the queue 310.635 + std::priority_queue< _PointFlux, std::vector<_PointFlux>, _compare_point > pqueue(curve); 310.636 + int isb = 0; 310.637 + 310.638 + // 1 - Init get the bound points 310.639 + cimg_forXYZ(*this,x,y,z) 310.640 + { 310.641 + if ( skeleton(x,y,z) == 0 ) 310.642 + continue; 310.643 + 310.644 + // Test bound condition 310.645 + isb = 0; 310.646 + for ( int k = -1; k <= 1; ++k ) 310.647 + for ( int l = -1; l <= 1; ++l ) 310.648 + for ( int m = -1; m <= 1; ++m ) 310.649 + { 310.650 + // Protection 310.651 + if ( x+k < 0 || x+k >= (*this).dimx() || y+l < 0 || y+l >= (*this).dimy() || 310.652 + z+m < 0 || z+m >= (*this).dimz() ) 310.653 + continue; 310.654 + 310.655 + if ( skeleton(x+k,y+l,z+m) == 0 ) 310.656 + isb = 1; 310.657 + } 310.658 + 310.659 + if ( isb == 1 && _isSimple(skeleton,x,y,z) ) 310.660 + { 310.661 + _PointFlux p; 310.662 + p.pos[0] = x; 310.663 + p.pos[1] = y; 310.664 + p.pos[2] = z; 310.665 + p.flux = flux(x,y,z); 310.666 + p.dist = dist(x,y,z); 310.667 + pqueue.push(p); 310.668 + count(x,y,z) = 1; 310.669 + } 310.670 + 310.671 + } 310.672 + 310.673 + // 2 - Compute the skeleton 310.674 + while ( ! pqueue.empty() ) 310.675 + { 310.676 + _PointFlux p = pqueue.top(); // Get the point with the max flux 310.677 + pqueue.pop(); // Remove the point from the queue 310.678 + count(p.pos[0],p.pos[1],p.pos[2]) = 0; // Reinit counter 310.679 + 310.680 + // Test if the point is simple 310.681 + if ( _isSimple(skeleton,p.pos[0],p.pos[1],p.pos[2]) ) 310.682 + { 310.683 + if (( ! _isEndPoint(skeleton,label,curve,p.pos[0],p.pos[1],p.pos[2]) ) || p.flux > thres ) 310.684 + { 310.685 + skeleton(p.pos[0],p.pos[1],p.pos[2]) = 0; // Remove the point 310.686 + 310.687 + for ( int k = -1; k <= 1; ++k ) 310.688 + for ( int l = -1; l <= 1; ++l ) 310.689 + for ( int m = -1; m <= 1; ++m ) 310.690 + { 310.691 + // Protection 310.692 + if ( p.pos[0]+k < 0 || p.pos[0]+k >= (*this).dimx() || 310.693 + p.pos[1]+l < 0 || p.pos[1]+l >= (*this).dimy() || 310.694 + p.pos[2]+m < 0 || p.pos[2]+m >= (*this).dimz() ) 310.695 + continue; 310.696 + 310.697 + if ( skeleton(p.pos[0]+k,p.pos[1]+l,p.pos[2]+m) != 0 && 310.698 + count(p.pos[0]+k,p.pos[1]+l,p.pos[2]+m) < 1 && 310.699 + _isSimple(skeleton,p.pos[0]+k,p.pos[1]+l,p.pos[2]+m) ) 310.700 + { 310.701 + _PointFlux p1; 310.702 + p1.pos[0] = p.pos[0]+k; 310.703 + p1.pos[1] = p.pos[1]+l; 310.704 + p1.pos[2] = p.pos[2]+m; 310.705 + p1.flux = flux(p.pos[0]+k,p.pos[1]+l,p.pos[2]+m); 310.706 + p1.dist = dist(p.pos[0]+k,p.pos[1]+l,p.pos[2]+m); 310.707 + pqueue.push(p1); 310.708 + count(p.pos[0]+k,p.pos[1]+l,p.pos[2]+m) = 1; 310.709 + } 310.710 + } 310.711 + } 310.712 + else 310.713 + { 310.714 + label(p.pos[0],p.pos[1],p.pos[2]) = 1; // Mark the point as skeletal 310.715 + } 310.716 + } 310.717 + } 310.718 + 310.719 + return skeleton; 310.720 +} 310.721 + 310.722 +/** 310.723 + * In place version of get_skeleton 310.724 + */ 310.725 +CImg<T> skeleton ( const CImg<floatT> & flux, 310.726 + const CImg<floatT> & dist, bool curve ,float thres ) 310.727 +{ 310.728 + return get_skeleton(flux,dist,curve,thres).transfer_to(*this); 310.729 +} 310.730 + 310.731 +#endif /* cimg_skeleton_plugin */
311.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 311.2 +++ b/PTdecode/CImg-1.3.0/resources/CMakeLists.txt Mon Aug 03 14:09:20 2009 +0100 311.3 @@ -0,0 +1,323 @@ 311.4 +# 311.5 +# File : CMakeLists.txt 311.6 +# ( Cmake configuration file ) 311.7 +# 311.8 +# Description : CMake can use this to generate a working Makefile. 311.9 +# This file is a part of the CImg Library project. 311.10 +# ( http://cimg.sourceforge.net ) 311.11 +# 311.12 +# Copyright : Baptiste Mougel 311.13 +# ( http://www.mougel.org ) 311.14 +# David Tschumperle 311.15 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 311.16 +# 311.17 +# License : CeCILL v2.0 311.18 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 311.19 +# 311.20 +# This software is governed by the CeCILL license under French law and 311.21 +# abiding by the rules of distribution of free software. You can use, 311.22 +# modify and/ or redistribute the software under the terms of the CeCILL 311.23 +# license as circulated by CEA, CNRS and INRIA at the following URL 311.24 +# "http://www.cecill.info". 311.25 +# 311.26 +# As a counterpart to the access to the source code and rights to copy, 311.27 +# modify and redistribute granted by the license, users are provided only 311.28 +# with a limited warranty and the software's author, the holder of the 311.29 +# economic rights, and the successive licensors have only limited 311.30 +# liability. 311.31 +# 311.32 +# In this respect, the user's attention is drawn to the risks associated 311.33 +# with loading, using, modifying and/or developing or reproducing the 311.34 +# software by the user in light of its specific status of free software, 311.35 +# that may mean that it is complicated to manipulate, and that also 311.36 +# therefore means that it is reserved for developers and experienced 311.37 +# professionals having in-depth computer knowledge. Users are therefore 311.38 +# encouraged to load and test the software's suitability as regards their 311.39 +# requirements in conditions enabling the security of their systems and/or 311.40 +# data to be ensured and, more generally, to use and operate it in the 311.41 +# same conditions as regards security. 311.42 +# 311.43 +# The fact that you are presently reading this means that you have had 311.44 +# knowledge of the CeCILL license and that you accept its terms. 311.45 +# 311.46 + 311.47 +#------------------- 311.48 +# IMPORTANT NOTICE : This file is intended to be copied in the 'examples/' directory before use. 311.49 +#------------------- 311.50 +project(CIMG) 311.51 + 311.52 +IF(UNIX) 311.53 + CMAKE_MINIMUM_REQUIRED (VERSION 2.4.0 FATAL_ERROR) 311.54 + MESSAGE(STATUS "Compilation mode : UNIX") 311.55 +ELSE(UNIX) 311.56 + IF(WIN32) 311.57 + CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6 FATAL_ERROR) 311.58 + MESSAGE(STATUS "Compilation mode : Win32") 311.59 + ELSE(WIN32) 311.60 + IF(APPLE) 311.61 + CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0 FATAL_ERROR) 311.62 + IF(${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4 AND ${CMAKE_PATCH_VERSION} LESS 7) 311.63 + MESSAGE("Warning: A critical CMake bug exists in 2.4.6 and below. Trying to build Universal Binaries will result in a compile error that seems unrelated. Either avoid building Universal Binaries by changing the CMAKE_OSX_ARCHITECTURES field to list only your architecture, or upgrade to the current CVS version of CMake or a newer stable version if it exists.") 311.64 + ENDIF(${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4 AND ${CMAKE_PATCH_VERSION} LESS 7) 311.65 + MESSAGE(STATUS "Compilation mode : MAC OSX") 311.66 + ELSE(APPLE) 311.67 + CMAKE_MINIMUM_REQUIRED(VERSION 2.4.0 FATAL_ERROR) 311.68 + ENDIF(APPLE) 311.69 + ENDIF(WIN32) 311.70 +ENDIF(UNIX) 311.71 + 311.72 +#----------------------------------------------------------------------------- 311.73 +# CImg version number. An even minor number corresponds to releases. 311.74 +SET(CIMG_VERSION "1.3.0") 311.75 +SET(CIMG_H "CImg.h") 311.76 + 311.77 +MESSAGE(STATUS "CImg version : ${CIMG_VERSION}") 311.78 + 311.79 +#----------------------------------------------------------------------------- 311.80 +# Output directories. 311.81 +INCLUDE_DIRECTORIES ( 311.82 + ${CIMG_BINARY_DIR} 311.83 + ${CIMG_SOURCE_DIR} 311.84 +) 311.85 + 311.86 +IF(NOT LIBRARY_OUTPUT_PATH) 311.87 + SET (LIBRARY_OUTPUT_PATH ${CIMG_BINARY_DIR}/ CACHE INTERNAL "Single output directory for building all libraries.") 311.88 +ENDIF(NOT LIBRARY_OUTPUT_PATH) 311.89 +IF(NOT EXECUTABLE_OUTPUT_PATH) 311.90 + SET (EXECUTABLE_OUTPUT_PATH ${CIMG_BINARY_DIR}/ CACHE INTERNAL "Single output directory for building all executables.") 311.91 +ENDIF(NOT EXECUTABLE_OUTPUT_PATH) 311.92 + 311.93 +#MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH) 311.94 + 311.95 +#----------------------------------------------------------------------------- 311.96 +# Compilation. 311.97 + 311.98 +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -W -ansi -pedantic") 311.99 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -W -ansi -pedantic") 311.100 +SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lm -lpthread") 311.101 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lm -lpthread") 311.102 +SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lm -lpthread") 311.103 + 311.104 +OPTION(BUILD_EXAMPLES "Build the Examples directory." ON) 311.105 +IF (BUILD_EXAMPLES) 311.106 + ADD_EXECUTABLE(CImg_demo CImg_demo.cpp) 311.107 + ADD_EXECUTABLE(captcha captcha.cpp) 311.108 + ADD_EXECUTABLE(curve_editor curve_editor.cpp) 311.109 + ADD_EXECUTABLE(dtmri_view dtmri_view.cpp) 311.110 + ADD_EXECUTABLE(edge_explorer edge_explorer.cpp) 311.111 + ADD_EXECUTABLE(fade_images fade_images.cpp) 311.112 + ADD_EXECUTABLE(generate_loop_macros generate_loop_macros.cpp) 311.113 + ADD_EXECUTABLE(gmic gmic.cpp) 311.114 + ADD_EXECUTABLE(greycstoration greycstoration.cpp) 311.115 + ADD_EXECUTABLE(hough_transform hough_transform.cpp) 311.116 + ADD_EXECUTABLE(image2ascii image2ascii.cpp) 311.117 + ADD_EXECUTABLE(image_registration image_registration.cpp) 311.118 + ADD_EXECUTABLE(image_surface image_surface.cpp) 311.119 + ADD_EXECUTABLE(jawbreaker jawbreaker.cpp) 311.120 + ADD_EXECUTABLE(mcf_levelsets3d mcf_levelsets3d.cpp) 311.121 + ADD_EXECUTABLE(mcf_levelsets mcf_levelsets.cpp) 311.122 + ADD_EXECUTABLE(odykill odykill.cpp) 311.123 + ADD_EXECUTABLE(pde_heatflow2d pde_heatflow2d.cpp) 311.124 + ADD_EXECUTABLE(pde_TschumperleDeriche2d pde_TschumperleDeriche2d.cpp) 311.125 + ADD_EXECUTABLE(radon_transform radon_transform.cpp) 311.126 + ADD_EXECUTABLE(scene3d scene3d.cpp) 311.127 + ADD_EXECUTABLE(tetris tetris.cpp) 311.128 + ADD_EXECUTABLE(tron tron.cpp) 311.129 + ADD_EXECUTABLE(tutorial tutorial.cpp) 311.130 + ADD_EXECUTABLE(wavelet_atrous wavelet_atrous.cpp) 311.131 + ADD_EXECUTABLE(use_draw_gradient use_draw_gradient.cpp) 311.132 + ADD_EXECUTABLE(use_greycstoration use_greycstoration.cpp) 311.133 + ADD_EXECUTABLE(use_nlmeans use_nlmeans.cpp) 311.134 + ADD_EXECUTABLE(use_RGBclass use_RGBclass.cpp) 311.135 + ADD_EXECUTABLE(use_skeleton use_skeleton.cpp) 311.136 +ENDIF (BUILD_EXAMPLES) 311.137 + 311.138 +# Flags to enable code debugging. 311.139 +OPTION(CIMG_DEBUG_FLAGS "Flags to enable code debugging." OFF) 311.140 +IF (CIMG_DEBUG_FLAGS) 311.141 + ADD_DEFINITIONS(-Dcimg_debug=3) 311.142 + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g") 311.143 + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g") 311.144 +ENDIF(CIMG_DEBUG_FLAGS) 311.145 + 311.146 +# Flags to enable color output messages. 311.147 +# (requires a VT100 compatible terminal) 311.148 +OPTION(CIMG_VT100_FLAGS "Flags to enable color output messages. (requires a VT100 compatible terminal)" ON) 311.149 +IF (CIMG_VT100_FLAGS) 311.150 + ADD_DEFINITIONS(-Dcimg_use_vt100) 311.151 +ENDIF(CIMG_VT100_FLAGS) 311.152 + 311.153 +# Flags to enable code optimization by the compiler. 311.154 +OPTION(CIMG_OPT_FLAGS "Flags to enable code optimization by the compiler." ON) 311.155 +IF (CIMG_OPT_FLAGS) 311.156 + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -ffast-math") 311.157 + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ffast-math") 311.158 +ENDIF(CIMG_OPT_FLAGS) 311.159 + 311.160 +# Flags to enable OpenMP support. 311.161 +OPTION(CIMG_OPENMP_FLAGS "Flags to enable code optimization by the compiler." OFF) 311.162 +IF (CIMG_OPENMP_FLAGS) 311.163 + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp") 311.164 + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp") 311.165 + ADD_DEFINITIONS(-Dcimg_use_openmp) 311.166 +ENDIF(CIMG_OPENMP_FLAGS) 311.167 + 311.168 +# Flags to enable the use of the X11 library. 311.169 +# (X11 is used by CImg to handle display windows) 311.170 +# !!! For 64bits systems : replace -L$(X11PATH)/lib by -L$(X11PATH)/lib64 !!! 311.171 +OPTION(CIMG_X11_FLAGS "Flags to enable fast image display, using the XSHM library." ON) 311.172 +IF (CIMG_X11_FLAGS) 311.173 + 311.174 + FIND_PATH(X11_PATH /bin/xterm /usr/X11R6) 311.175 + 311.176 + OPTION(CIMG_SYSTEMS_64BITS "For 64bits systems." OFF) 311.177 + IF (CIMG_SYSTEMS_64BITS) 311.178 + INCLUDE_DIRECTORIES(${X11_PATH}/include) 311.179 + LINK_DIRECTORIES(${X11_PATH}/lib64) 311.180 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11") 311.181 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11") 311.182 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11") 311.183 + ELSE (CIMG_SYSTEMS_64BITS) 311.184 + INCLUDE_DIRECTORIES(${X11_PATH}/include) 311.185 + LINK_DIRECTORIES(${X11_PATH}/lib) 311.186 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L${X11_PATH}/lib -lX11") 311.187 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -L${X11_PATH}/lib -lX11") 311.188 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -L${X11_PATH}/lib -lX11") 311.189 + ENDIF(CIMG_SYSTEMS_64BITS) 311.190 + 311.191 + # Flags to enable fast image display, using the XSHM library. 311.192 + # (CIMG_X11_FLAGS must be defined also) 311.193 + OPTION(CIMG_XSHM_FLAGS "Flags to enable fast image display, using the XSHM library." ON) 311.194 + IF (CIMG_XSHM_FLAGS) 311.195 + ADD_DEFINITIONS(-Dcimg_use_xshm) 311.196 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lXext") 311.197 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lXext") 311.198 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lXext") 311.199 + ENDIF(CIMG_XSHM_FLAGS) 311.200 + 311.201 + # Flags to enable screen mode switching, using the XRandr library. 311.202 + # (CIMG_X11_FLAGS must be defined also) 311.203 + OPTION(CIMG_XRANDR_FLAGS "Flags to enable screen mode switching, using the XRandr library." ON) 311.204 + IF (CIMG_XRANDR_FLAGS) 311.205 + ADD_DEFINITIONS(-Dcimg_use_xrandr) 311.206 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lXrandr") 311.207 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lXrandr") 311.208 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lXrandr") 311.209 + ENDIF(CIMG_XRANDR_FLAGS) 311.210 + 311.211 + # Flags to compile on Solaris 311.212 + #CIMG_SOLARIS_FLAGS = -R$(X11PATH)/lib -lrt -lnsl -lsocket 311.213 + OPTION(CIMG_SOLARIS_FLAGS "Flags to compile on Solaris." OFF) 311.214 + IF (CIMG_SOLARIS_FLAGS) 311.215 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket") 311.216 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket") 311.217 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket") 311.218 + ENDIF(CIMG_SOLARIS_FLAGS) 311.219 + 311.220 +ENDIF(CIMG_X11_FLAGS) 311.221 + 311.222 + 311.223 +# Flags to enable native support for PNG image files, using the PNG library. 311.224 +#CIMG_PNG_FLAGS = -Dcimg_use_png -lpng -lz 311.225 +OPTION(CIMG_PNG_FLAGS "Flags to enable native support for PNG image files, using the PNG library." OFF) 311.226 +IF (CIMG_PNG_FLAGS) 311.227 + ADD_DEFINITIONS(-Dcimg_use_png) 311.228 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lpng -lz") 311.229 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lpng -lz") 311.230 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lpng -lz") 311.231 +ENDIF(CIMG_PNG_FLAGS) 311.232 + 311.233 +# Flags to enable native support for JPEG image files, using the JPEG library. 311.234 +#CIMG_JPEG_FLAGS = -Dcimg_use_jpeg -ljpeg 311.235 +OPTION(CIMG_JPEG_FLAGS "Flags to enable native support for JPEG image files, using the JPEG library." OFF) 311.236 +IF (CIMG_JPEG_FLAGS) 311.237 + ADD_DEFINITIONS(-Dcimg_use_jpeg) 311.238 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ljpeg") 311.239 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ljpeg") 311.240 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ljpeg") 311.241 +ENDIF(CIMG_JPEG_FLAGS) 311.242 + 311.243 +# Flags to enable native support for TIFF image files, using the TIFF library. 311.244 +#CIMG_TIFF_FLAGS = -Dcimg_use_tiff -ltiff 311.245 +OPTION(CIMG_TIFF_FLAGS "Flags to enable native support for TIFF image files, using the TIFF library." OFF) 311.246 +IF (CIMG_TIFF_FLAGS) 311.247 + ADD_DEFINITIONS(-Dcimg_use_tiff) 311.248 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ltiff") 311.249 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ltiff") 311.250 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ltiff") 311.251 +ENDIF(CIMG_TIFF_FLAGS) 311.252 + 311.253 +# Flags to enable native support for various video files, using the FFMPEG library. 311.254 +#CIMG_FFMPEG_FLAGS = -Dcimg_use_ffmpeg -lavcodec -lavformat 311.255 +OPTION(CIMG_FFMPEG_FLAGS "Flags to enable native support for various video files, using the FFMPEG library." OFF) 311.256 +IF (CIMG_FFMPEG_FLAGS) 311.257 + ADD_DEFINITIONS(-Dcimg_use_ffmpeg) 311.258 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lavcodec -lavformat") 311.259 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lavcodec -lavformat") 311.260 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lavcodec -lavformat") 311.261 +ENDIF(CIMG_FFMPEG_FLAGS) 311.262 + 311.263 +# Flags to enable native support for compressed .cimgz files, using the Zlib library. 311.264 +#CIMG_ZLIB_FLAGS = -Dcimg_use_zlib -lz 311.265 +OPTION(CIMG_ZLIB_FLAGS "Flags to enable native support for compressed .cimgz files, using the Zlib library." OFF) 311.266 +IF (CIMG_ZLIB_FLAGS) 311.267 + ADD_DEFINITIONS(-Dcimg_use_zlib) 311.268 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lz") 311.269 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lz") 311.270 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lz") 311.271 +ENDIF(CIMG_ZLIB_FLAGS) 311.272 + 311.273 +# Flags to enable native support of most classical image file formats, using the Magick++ library. 311.274 +#CIMG_MAGICK_FLAGS = -Dcimg_use_magick `Magick++-config --cppflags` `Magick++-config --cxxflags` `Magick++-config --ldflags` `Magick++-config --libs` 311.275 +OPTION(CIMG_MAGICK_FLAGS "Flags to enable native support of most classical image file formats, using the Magick++ library." OFF) 311.276 +IF (CIMG_MAGICK_FLAGS) 311.277 + ADD_DEFINITIONS(-Dcimg_use_magick) 311.278 + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} `Magick++-config --cppflags` `Magick++-config --cxxflags`") 311.279 + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} `Magick++-config --cppflags` `Magick++-config --cxxflags`") 311.280 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`") 311.281 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`") 311.282 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`") 311.283 +ENDIF(CIMG_MAGICK_FLAGS) 311.284 + 311.285 +# Flags to enable faster Discrete Fourier Transform computation, using the FFTW3 library 311.286 +#CIMG_FFTW3_FLAGS = -Dcimg_use_fftw3 -lfftw3 311.287 +OPTION(CIMG_FFTW3_FLAGS "Flags to enable faster Discrete Fourier Transform computation, using the FFTW3 library." OFF) 311.288 +IF (CIMG_FFTW3_FLAGS) 311.289 + ADD_DEFINITIONS(-Dcimg_use_fftw3) 311.290 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lfftw3") 311.291 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lfftw3") 311.292 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lfftw3") 311.293 +ENDIF(CIMG_FFTW3_FLAGS) 311.294 + 311.295 +# Flags to enable the use of LAPACK routines for matrix computation 311.296 +#CIMG_LAPACK_FLAGS = -Dcimg_use_lapack -lblas -lg2c -llapack 311.297 +OPTION(CIMG_LAPACK_FLAGS "Flags to enable the use of LAPACK routines for matrix computation" OFF) 311.298 +IF (CIMG_LAPACK_FLAGS) 311.299 + ADD_DEFINITIONS(-Dcimg_use_lapack) 311.300 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lblas -lg2c -llapack") 311.301 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lblas -lg2c -llapack") 311.302 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lblas -lg2c -llapack") 311.303 +ENDIF(CIMG_LAPACK_FLAGS) 311.304 + 311.305 +# Flags to enable the use of the Board library 311.306 +#CIMG_BOARD_FLAGS = -Dcimg_use_board -I/usr/include/board -lboard 311.307 +OPTION(CIMG_BOARD_FLAGS "Flags to enable the use of the Board library." OFF) 311.308 +IF (CIMG_BOARD_FLAGS) 311.309 + ADD_DEFINITIONS(-Dcimg_use_board) 311.310 + INCLUDE_DIRECTORIES(/usr/include/board) 311.311 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lboard") 311.312 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lboard") 311.313 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lboard") 311.314 +ENDIF(CIMG_BOARD_FLAGS) 311.315 + 311.316 +# Flags to compile on MacOSX with Carbon-based display support 311.317 +#CIMG_CARBON_FLAGS = -Dcimg_display=3 -framework Carbon 311.318 +IF(APPLE) 311.319 + OPTION(CIMG_CARBON_FLAGS "Flags to compile on MacOSX with Carbon-based display support." ON) 311.320 + IF (CIMG_CARBON_FLAGS) 311.321 + ADD_DEFINITIONS(-Dcimg_display=3) 311.322 + SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework Carbon") 311.323 + SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -framework Carbon") 311.324 + SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -framework Carbon") 311.325 + ENDIF(CIMG_CARBON_FLAGS) 311.326 +ENDIF(APPLE)
312.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 312.2 +++ b/PTdecode/CImg-1.3.0/resources/cimg_buildpackage Mon Aug 03 14:09:20 2009 +0100 312.3 @@ -0,0 +1,206 @@ 312.4 +#!/bin/bash 312.5 +# 312.6 +# File : cimg_buildpackage 312.7 +# ( Bash script ) 312.8 +# 312.9 +# Description : Build .zip, .tar.gz and .deb package files 312.10 +# of the CImg Library, from the current CImg/ 312.11 +# directory. Must be run from ../CImg 312.12 +# This file is a part of the CImg Library project. 312.13 +# ( http://cimg.sourceforge.net ) 312.14 +# 312.15 +# Usage : ./cimg_buildpackage [beta] [compile] 312.16 +# 312.17 +# Copyright : David Tschumperle 312.18 +# ( http://www.greyc.ensicaen.fr/~dtschump/ ) 312.19 +# 312.20 +# License : CeCILL v2.0 312.21 +# ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html ) 312.22 +# 312.23 +# This software is governed by the CeCILL license under French law and 312.24 +# abiding by the rules of distribution of free software. You can use, 312.25 +# modify and/ or redistribute the software under the terms of the CeCILL 312.26 +# license as circulated by CEA, CNRS and INRIA at the following URL 312.27 +# "http://www.cecill.info". 312.28 +# 312.29 +# As a counterpart to the access to the source code and rights to copy, 312.30 +# modify and redistribute granted by the license, users are provided only 312.31 +# with a limited warranty and the software's author, the holder of the 312.32 +# economic rights, and the successive licensors have only limited 312.33 +# liability. 312.34 +# 312.35 +# In this respect, the user's attention is drawn to the risks associated 312.36 +# with loading, using, modifying and/or developing or reproducing the 312.37 +# software by the user in light of its specific status of free software, 312.38 +# that may mean that it is complicated to manipulate, and that also 312.39 +# therefore means that it is reserved for developers and experienced 312.40 +# professionals having in-depth computer knowledge. Users are therefore 312.41 +# encouraged to load and test the software's suitability as regards their 312.42 +# requirements in conditions enabling the security of their systems and/or 312.43 +# data to be ensured and, more generally, to use and operate it in the 312.44 +# same conditions as regards security. 312.45 +# 312.46 +# The fact that you are presently reading this means that you have had 312.47 +# knowledge of the CeCILL license and that you accept its terms. 312.48 +# 312.49 + 312.50 +# Define release number. 312.51 +RELEASE0=`grep "#define cimg_version" CImg/CImg.h | tail -c 4` 312.52 +RELEASE1=`echo $RELEASE0 | head -c 1` 312.53 +RELEASE2=`echo $RELEASE0 | head -c 2 | tail -c 1` 312.54 +RELEASE3=`echo $RELEASE0 | head -c 3 | tail -c 1` 312.55 +RELEASE=$RELEASE1.$RELEASE2.$RELEASE3 312.56 + 312.57 +# Read command line options. 312.58 +if [ "$1" == "beta" -o "$2" == "beta" ]; then BETA="yes"; RELEASE=${RELEASE}beta; else BETA="no"; fi 312.59 +if [ "$1" == "compile" -o "$2" == "compile" ]; then COMPILE="yes"; else COMPILE="no"; fi 312.60 + 312.61 +# Define the different paths and filenames used in this script. 312.62 +BASE_DIR=`pwd` 312.63 +cd ${BASE_DIR} 312.64 +SRC_DIR=${BASE_DIR}/CImg 312.65 +DEST_DIR=/tmp/CImg-${RELEASE} 312.66 +ZIP_FILE=CImg-${RELEASE}.zip 312.67 +TAR_FILE=CImg_${RELEASE}.tar 312.68 +DEB_DIR=cimg-${RELEASE} 312.69 +DEB_FILE=cimg-dev_${RELEASE}-1_all.deb 312.70 +LOG_FILE=${BASE_DIR}/LOG_`basename $DEST_DIR`.txt 312.71 +rm -rf $LOG_FILE 312.72 + 312.73 +echo 312.74 +echo " - Release number : $RELEASE" 312.75 +echo " - Base directory : $BASE_DIR/" 312.76 +echo " - Source directory : $SRC_DIR/" 312.77 +echo " - Build directory : $DEST_DIR/" 312.78 +echo " - ZIP package filename : $ZIP_FILE" 312.79 +echo " - TAR.GZ package filename : $TAR_FILE.gz" 312.80 +echo " - DEB package filename : $DEB_FILE" 312.81 +echo " - LOG file : $LOG_FILE" 312.82 +echo " - Compile examples : $COMPILE" 312.83 + 312.84 +# Create archive structure 312.85 +echo " - Create package structure." 312.86 +rm -rf $DEST_DIR 312.87 +mkdir $DEST_DIR 312.88 +cd $SRC_DIR 312.89 +cp -f CHANGES.txt CImg.h Licence_CeCILL-C_V1-en.txt Licence_CeCILL_V2-en.txt README.txt $DEST_DIR 312.90 + 312.91 +mkdir $DEST_DIR/examples 312.92 +cd $SRC_DIR/examples 312.93 +cp -f *.cpp *.h *_def.raw Makefile *.m $DEST_DIR/examples/ 312.94 +mkdir $DEST_DIR/examples/img 312.95 +cd $SRC_DIR/examples/img 312.96 +cp -f *.pgm *.ppm *.bmp *.h $DEST_DIR/examples/img/ 312.97 + 312.98 +mkdir $DEST_DIR/html 312.99 +cd $SRC_DIR/html 312.100 +cp -f *.shtml *.html *.doxygen *.h favicon.* $DEST_DIR/html/ 312.101 +mkdir $DEST_DIR/html/img 312.102 +cd $SRC_DIR/html/img 312.103 +cp -f *.html *.jpg *.gif *.png *.ppm $DEST_DIR/html/img/ 312.104 + 312.105 +mkdir $DEST_DIR/plugins 312.106 +cd $SRC_DIR/plugins 312.107 +cp -f *.h $DEST_DIR/plugins/ 312.108 + 312.109 +mkdir $DEST_DIR/resources 312.110 +cd $SRC_DIR/resources 312.111 +cp -rf *.bat *.txt cimg_buildpackage debian project_* $DEST_DIR/resources/ 312.112 + 312.113 +# Clean directory 312.114 +echo " - Clean package directory." 312.115 +cd $DEST_DIR 312.116 +for i in `find . -name "\#*"`; do rm -rf $i; done 312.117 +for i in `find . -name "*~"`; do rm -rf $i; done 312.118 +for i in `find . -name "core*"`; do rm -rf $i; done 312.119 +for i in `find . -name "CVS"`; do rm -rf $i; done 312.120 +for i in `find . -name "*.plg"`; do rm -rf $i; done 312.121 +for i in `find . -name "*.ncb"`; do rm -rf $i; done 312.122 +for i in `find . -name "*.layout"`; do rm -rf $i; done 312.123 +for i in `find . -name "*.win"`; do rm -rf $i; done 312.124 +for i in `find . -name "Debug"`; do rm -rf $i; done 312.125 +for i in `find . -name "Release"`; do rm -rf $i; done 312.126 +for i in `find . -name "*.h"`; do col -x <$i >tmp; mv tmp $i; done 312.127 +for i in `find . -name "*.cpp"`; do col -x <$i >tmp; mv tmp $i; done 312.128 +for i in `find . ! -type d`; do chmod a-x $i; done 312.129 +for i in `find . -name "*.sh"`; do chmod a+x $i; done 312.130 +for i in `find . -name "rules"`; do chmod a+x $i; done 312.131 +iconv -t utf8 -f latin1 resources/debian/changelog > /tmp/foo.changelog 312.132 +mv /tmp/foo.changelog resources/debian/changelog 312.133 +iconv -t utf8 -f latin1 resources/debian/control > /tmp/foo.control 312.134 +mv /tmp/foo.control resources/debian/control 312.135 +chmod a+x $DEST_DIR/resources/cimg_buildpackage 312.136 + 312.137 +# Generate special files 'gmic.h' and 'gmic4gimp.h' 312.138 +# (gmic must be installed !) 312.139 +cd $DEST_DIR/examples 312.140 +make gmic_def >>$LOG_FILE 2>&1 312.141 +make gmic4gimp_def >>$LOG_FILE 2>&1 312.142 + 312.143 +# Generate Documentation with doxygen 312.144 +echo " - Generate reference documentation using Doxygen." 312.145 +cd $DEST_DIR/html 312.146 +echo -e "\n** Log generated by 'doxygen' **\n\n">>$LOG_FILE 312.147 +doxygen CImg.doxygen>>$LOG_FILE 2>&1 312.148 + 312.149 +echo " - Build reference documentation in PDF format." 312.150 +cd $DEST_DIR/html/latex 312.151 +echo -e "\n** Log generated by 'latex' **\n\n">>$LOG_FILE 312.152 +make>>$LOG_FILE 2>&1 312.153 +cp -f refman.pdf ../CImg_reference.pdf 312.154 +rm -rf ../latex 312.155 + 312.156 +# Create ZIP archive 312.157 +echo " - Build ZIP archive file '$ZIP_FILE'." 312.158 +cd $DEST_DIR/.. 312.159 +rm -f $ZIP_FILE 312.160 +echo -e "\n** Log generated by 'zip' **\n\n">>$LOG_FILE 312.161 +zip -r -9 $ZIP_FILE `basename $DEST_DIR`>>$LOG_FILE 2>&1 312.162 + 312.163 +# Create TAR.GZ archive 312.164 +echo " - Build TAR.GZ archive file '$TAR_FILE.gz'." 312.165 +cd $DEST_DIR/.. 312.166 +rm -f $TAR_FILE $TAR_FILE.gz 312.167 +echo -e "\n** Log generated by 'tar' **\n\n">>$LOG_FILE 312.168 +tar cvf $TAR_FILE `basename $DEST_DIR`>>$LOG_FILE 2>&1 312.169 +gzip --best $TAR_FILE 312.170 + 312.171 +# Compile examples 312.172 +if [ $COMPILE == "yes" ]; then 312.173 +echo " - Compile CImg examples." 312.174 +cd $DEST_DIR/examples/ 312.175 +mkdir -p ../bin 312.176 +echo -e "\n** Log generated by 'CImg compilation' **\n\n">>$LOG_FILE 312.177 +make -j "CC=g++ -Dcimg_imagepath=\"\\\"/usr/share/CImg/examples/img/\\\"\"" EXEPFX=../bin/cimg_ olinux 312.178 +rm -f *.o 312.179 +cd $DEST_DIR/resources/debian 312.180 +echo "bin/* usr/bin/" >> cimg-dev.install 312.181 +fi 312.182 + 312.183 +# Create Debian package 312.184 +echo " - Build Debian package file '$DEB_FILE'." 312.185 +cd $DEST_DIR/.. 312.186 +rm -rf $DEB_DIR.tar $DEB_DIR.tar.gz 312.187 +mv $DEST_DIR $DEB_DIR 312.188 +tar cvf $DEB_DIR.tar $DEB_DIR>>$LOG_FILE 2>&1 312.189 +gzip $DEB_DIR.tar 312.190 +cp -f $DEB_DIR.tar.gz cimg_$RELEASE.orig.tar.gz 312.191 + 312.192 +cd $DEB_DIR 312.193 +cp -f CHANGES.txt changelog 312.194 +cp -rf resources/debian . 312.195 +export DEBNAME=$DEB_FILE 312.196 +export DEBFULLNAME="David Tschumperlé" 312.197 +export DEBEMAIL="David.Tschumperle@greyc.ensicaen.fr" 312.198 +echo -e "\n** Log generated by 'Debian packaging tools' **\n\n">>$LOG_FILE 312.199 +dpkg-buildpackage -rfakeroot>>$LOG_FILE 2>&1 312.200 +cd ../ 312.201 +mv $DEB_DIR $DEST_DIR 312.202 + 312.203 +# Clean temporary files and directories 312.204 +echo " - Clean temporary files and directories." 312.205 +cd $DEST_DIR/.. 312.206 +mv $ZIP_FILE $TAR_FILE.gz $DEB_FILE $BASE_DIR 312.207 + 312.208 +# End of build script 312.209 +echo -e " - All done, you should look at the LOG file '$LOG_FILE'.\n"
313.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 313.2 +++ b/PTdecode/CImg-1.3.0/resources/compile_win_icl.bat Mon Aug 03 14:09:20 2009 +0100 313.3 @@ -0,0 +1,24 @@ 313.4 +@echo off 313.5 +Rem Intel(R) C++ Compiler Build Environment for 32-bit applications 313.6 + 313.7 +echo. 313.8 +echo Intel(R) C++ Compiler 8.0 Build Environment for 32-bit applications 313.9 +echo Copyright (C) 1985-2003 Intel Corporation. All rights reserved. 313.10 +echo. 313.11 + 313.12 +@call "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\Bin\Vcvars32.bat" 313.13 + 313.14 +echo. 313.15 + 313.16 +SET INTEL_COMPILER80=C:\Program Files\Intel\CPP\Compiler80 313.17 +SET INTEL_SHARED=C:\Program Files\Fichiers communs\Intel\Shared Files 313.18 +SET INTEL_LICENSE_FILE=C:\Program Files\Fichiers communs\Intel\Licenses 313.19 +SET PATH=%INTEL_COMPILER80%\Ia32\Bin;%INTEL_SHARED%\Ia32\Bin;%PATH% 313.20 +SET LIB=%INTEL_COMPILER80%\Ia32\Lib;%INTEL_SHARED%\Ia32\Lib;%LIB% 313.21 +SET INCLUDE=%INTEL_COMPILER80%\Ia32\Include;%INCLUDE% 313.22 + 313.23 +cd ..\examples\ 313.24 +echo. 313.25 +echo ** Compiling 'CImg_demo' 313.26 +echo. 313.27 +icl /GX /Ox CImg_demo.cpp gdi32.lib user32.lib
314.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 314.2 +++ b/PTdecode/CImg-1.3.0/resources/compile_win_visualcpp.bat Mon Aug 03 14:09:20 2009 +0100 314.3 @@ -0,0 +1,19 @@ 314.4 +REM A dirty batch file to compile all CImg examples 314.5 +REM Using the microsoft's CL compiler. 314.6 +REM ----------------------------------------------- 314.7 +set SDKPATH=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2 314.8 +set CPP=cl /W3 /Ox /Ob2 /Oi /Ot /c /EHsc /I"%SDKPATH%\Include" /I"..\\" 314.9 +set LDD=link /LIBPATH:"%SDKPATH%\Lib" 314.10 +set LDDLIBS=user32.lib gdi32.lib shell32.lib 314.11 + 314.12 +cd ..\examples\ 314.13 +set CPPFILE=CImg_demo captcha curve_editor dtmri_view edge_explorer fade_images generate_loop_macros greycstoration hough_transform image2ascii image_registration image_surface jawbreaker mcf_levelsets3D mcf_levelsets odykill pde_heatflow2D pde_TschumperleDeriche2D radon_transform scene3d tetris tron tutorial wavelet_atrous use_draw_gradient use_greycstoration use_nlmeans use_RGBclass use_skeleton gmic 314.14 +FOR %%F IN (%CPPFILE%) DO ( 314.15 + %CPP% %%F.cpp 314.16 + %LDD% %%F.obj %LDDLIBS% 314.17 +) 314.18 + 314.19 + 314.20 + 314.21 + 314.22 +
315.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 315.2 +++ b/PTdecode/CImg-1.3.0/resources/compile_win_visualcpp6.bat Mon Aug 03 14:09:20 2009 +0100 315.3 @@ -0,0 +1,19 @@ 315.4 +REM A dirty batch file to compile all CImg examples 315.5 +REM Using the microsoft's CL compiler. 315.6 +REM ----------------------------------------------- 315.7 +set SDKPATH=C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2 315.8 +set CPP=cl /W3 /Zm800 /Ox /Ob2 /Oi /Ot /c /EHsc /I"%SDKPATH%\Include" /I"..\\" 315.9 +set LDD=link /LIBPATH:"%SDKPATH%\Lib" 315.10 +set LDDLIBS=user32.lib gdi32.lib shell32.lib 315.11 + 315.12 +cd ..\examples\ 315.13 +set CPPFILE=CImg_demo captcha curve_editor dtmri_view edge_explorer fade_images generate_loop_macros greycstoration hough_transform image2ascii image_registration image_surface jawbreaker mcf_levelsets3D mcf_levelsets odykill pde_heatflow2D pde_TschumperleDeriche2D radon_transform scene3d tetris tron tutorial wavelet_atrous use_draw_gradient use_greycstoration use_nlmeans use_RGBclass use_skeleton gmic 315.14 +FOR %%F IN (%CPPFILE%) DO ( 315.15 + %CPP% %%F.cpp 315.16 + %LDD% %%F.obj %LDDLIBS% 315.17 +) 315.18 + 315.19 + 315.20 + 315.21 + 315.22 +
316.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 316.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/changelog Mon Aug 03 14:09:20 2009 +0100 316.3 @@ -0,0 +1,137 @@ 316.4 +cimg (1.3.0-1) unstable; urgency=low 316.5 + 316.6 + * Update to 1.3.0 package 316.7 + 316.8 + -- David Tschumperlé <David.Tschumperle@greyc.ensicaen.fr> Fri, 18 Feb 2009 12:04:00 +0200 316.9 + 316.10 +cimg (1.2.9-1) unstable; urgency=low 316.11 + 316.12 + * Update to 1.2.9 package 316.13 + 316.14 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Fri, 18 Apr 2008 12:04:00 +0200 316.15 + 316.16 +cimg (1.2.8-1) unstable; urgency=low 316.17 + 316.18 + * Update to 1.2.8 package 316.19 + 316.20 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Fri, 18 Apr 2008 12:04:00 +0200 316.21 + 316.22 +cimg (1.2.7-1) unstable; urgency=low 316.23 + 316.24 + * Update to 1.2.7 package 316.25 + 316.26 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Fri, 23 Jan 2008 14:03:00 +0200 316.27 + 316.28 +cimg (1.2.6-1) unstable; urgency=low 316.29 + 316.30 + * Update to 1.2.6 package 316.31 + 316.32 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Fri, 04 Jan 2008 11:10:10 +0200 316.33 + 316.34 +cimg (1.2.5-1) unstable; urgency=low 316.35 + 316.36 + * Update to 1.2.5 package 316.37 + 316.38 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Sun, 26 Aug 2007 17:13:15 +0200 316.39 + 316.40 +cimg (1.2.4-1) unstable; urgency=low 316.41 + 316.42 + * Update to 1.2.4 package 316.43 + 316.44 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Sun, 26 Aug 2007 17:13:15 +0200 316.45 + 316.46 +cimg (1.2.3-1) unstable; urgency=low 316.47 + 316.48 + * Update to 1.2.3 package 316.49 + * Put the good dependances 316.50 + * Correct some spelling mistakes in the description 316.51 + * Add François-Xavier Dupé as an uploader. 316.52 + 316.53 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Sun, 26 Aug 2007 17:13:15 +0200 316.54 + 316.55 +cimg (1.2.2-1) unstable; urgency=low 316.56 + 316.57 + * Update to 1.2.2 package 316.58 + 316.59 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Thu, 5 Jul 2007 18:07:04 +0200 316.60 + 316.61 +cimg (1.2.0.1-1) unstable; urgency=low 316.62 + 316.63 + * Update to 1.2.0.1 package 316.64 + 316.65 + -- François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> Thu, 19 Apr 2007 09:32:34 +0200 316.66 + 316.67 +cimg (1.1.9-1) unstable; urgency=low 316.68 + 316.69 + * New upstream release 316.70 + * See with the author for the structure of the package 316.71 + * Remove patches 316.72 + 316.73 + -- François-Xavier Dupé <fdupe@greyc.ensicaen.fr> Sun, 15 Apr 2007 17:45:31 +0200 316.74 + 316.75 +cimg (1.0.9-3) unstable; urgency=low 316.76 + 316.77 + * Use quilt for patch management. 316.78 + * debian/control: 316.79 + + Set maintainer to the pkg-scicomp team. 316.80 + + Set policy to 3.7.2. 316.81 + + Added Vcs fields. 316.82 + * debian/rules: 316.83 + + Removed the useless configure rule. 316.84 + 316.85 + * debian/patches/100_system_detection.diff: 316.86 + + New patch from old diff.gz. Check for "__linux__" instead of "linux". 316.87 + 316.88 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Sun, 01 Apr 2007 15:25:35 +0200 316.89 + 316.90 +cimg (1.0.9-2) unstable; urgency=low 316.91 + 316.92 + * CImg.h: 316.93 + + Check for macro "__linux__" instead of "linux" (Closes: #319217). 316.94 + * debian/rules: 316.95 + + Clean up the examples directory after the build; we don't want them 316.96 + installed. 316.97 + + Fix permissions in examples/img/*. 316.98 + + Fixed a timestamp bug that caused examples to be built twice. 316.99 + * debian/copyright: 316.100 + + Copied the full license text in there. 316.101 + 316.102 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Fri, 11 Nov 2005 15:23:36 +0100 316.103 + 316.104 +cimg (1.0.9-1) unstable; urgency=low 316.105 + 316.106 + * New upstream release (Closes: #303413). 316.107 + * debian/control: 316.108 + + Set policy to 3.6.2.1. 316.109 + * debian/copyright: 316.110 + + Reflected license change to CeCILL (which allows redistribution under 316.111 + the GPL). 316.112 + 316.113 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Tue, 12 Jul 2005 22:17:19 +0300 316.114 + 316.115 +cimg (1.0.7-1) unstable; urgency=low 316.116 + 316.117 + * New upstream release. 316.118 + * CImg.h: 316.119 + + Imported a patch from CVS for broken matrix multiplications. 316.120 + 316.121 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Fri, 19 Nov 2004 11:26:29 +0100 316.122 + 316.123 +cimg (1.0.6-1) unstable; urgency=low 316.124 + 316.125 + * New upstream release. 316.126 + 316.127 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Tue, 28 Sep 2004 11:51:57 +0200 316.128 + 316.129 +cimg (1.0.5-2) unstable; urgency=low 316.130 + 316.131 + * Build-depend on libx11-dev (Closes: #264822). 316.132 + 316.133 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Tue, 10 Aug 2004 17:34:58 +0200 316.134 + 316.135 +cimg (1.0.5-1) unstable; urgency=low 316.136 + 316.137 + * Initial Release. 316.138 + 316.139 + -- Sam Hocevar (Debian packages) <sam+deb@zoy.org> Wed, 28 Jul 2004 15:27:12 +0200 316.140 +
317.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 317.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/cimg-dev.dirs Mon Aug 03 14:09:20 2009 +0100 317.3 @@ -0,0 +1,3 @@ 317.4 +usr/include/CImg 317.5 +usr/include 317.6 +usr/share/CImg
318.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 318.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/cimg-dev.install Mon Aug 03 14:09:20 2009 +0100 318.3 @@ -0,0 +1,3 @@ 318.4 +CImg.h resources html examples plugins CHANGES.txt README.txt usr/share/CImg 318.5 +CImg.h plugins usr/include/CImg 318.6 +README.txt usr/share/doc/cimg-dev
319.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 319.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/cimg-dev.links Mon Aug 03 14:09:20 2009 +0100 319.3 @@ -0,0 +1,3 @@ 319.4 +usr/include/CImg/CImg.h usr/include/CImg.h 319.5 +usr/share/CImg/html usr/share/doc/cimg-dev/html 319.6 +
320.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 320.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/compat Mon Aug 03 14:09:20 2009 +0100 320.3 @@ -0,0 +1,1 @@ 320.4 +4
321.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 321.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/control Mon Aug 03 14:09:20 2009 +0100 321.3 @@ -0,0 +1,20 @@ 321.4 +Source: cimg 321.5 +Section: math 321.6 +Priority: optional 321.7 +Maintainer: Sam Hocevar (Debian packages) <sam+deb@zoy.org> 321.8 +Uploaders: Christophe Prud'homme <prudhomm@debian.org>, François-Xavier Dupé <Francois-Xavier.Dupe@greyc.ensicaen.fr> 321.9 +Build-Depends-Indep: libx11-dev 321.10 +Build-Depends: debhelper (>= 5.0) 321.11 +Standards-Version: 3.7.2.2 321.12 + 321.13 +Package: cimg-dev 321.14 +Depends: make | build-essential, libx11-dev, libxrandr-dev, imagemagick | graphicsmagick 321.15 +Suggests: xmedcon, lapack3-dev, libmagick++9-dev, fftw3-dev 321.16 +Architecture: all 321.17 +Description: C++ Template Image Processing Library 321.18 + The CImg Library is an open-source C++ toolkit for image processing. 321.19 + It consists in a single header file 'CImg.h' providing a set of C++ classes 321.20 + and functions that can be used in your own sources, to load/save, process 321.21 + and display images. Very portable (Unix/X11,Windows, MacOS X, FreeBSD,..), 321.22 + efficient, easy to use, it's a pleasant toolkit for coding image processing 321.23 + stuffs in C++.
322.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 322.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/copyright Mon Aug 03 14:09:20 2009 +0100 322.3 @@ -0,0 +1,1035 @@ 322.4 +This package was debianized by François-Xavier Dupé <fdupe@greyc.ensicaen.fr> on 322.5 +Tue, 18 Apr 2007. 322.6 + 322.7 +It was downloaded from http://cimg.sourceforge.net/ 322.8 + 322.9 +Upstream Author: David Tschumperlé <http://www.greyc.ensicaen.fr/~dtschump/> 322.10 + 322.11 +Copyright (c) David Tschumperlé 322.12 + 322.13 +The CImg Library is distributed under two distinct licenses : the library core itself is governed by 322.14 +the CeCILL-C License (LGPL-like), while all other files of the package are distributed under the CeCILL 322.15 +License (GPL-compatible). Both are open source licenses, the CeCILL-C being less restrictive than the 322.16 +CeCILL one. 322.17 +The CImg Library source code has been registered to the APP (French Agency for the Protection of Programs) 322.18 +by the INRIA, under registration number IDDN.FR.001.040004.000.S.P.2004.000.21000. 322.19 + 322.20 +For more information GPL and LGPL can be found in the repertory 322.21 +can be found in the file `/usr/share/common-licenses' on Debian systems. 322.22 + 322.23 +CeCill License: 322.24 + 322.25 + CeCILL FREE SOFTWARE LICENSE AGREEMENT 322.26 + 322.27 + 322.28 + Notice 322.29 + 322.30 +This Agreement is a Free Software license agreement that is the result 322.31 +of discussions between its authors in order to ensure compliance with 322.32 +the two main principles guiding its drafting: 322.33 + 322.34 + * firstly, compliance with the principles governing the distribution 322.35 + of Free Software: access to source code, broad rights granted to 322.36 + users, 322.37 + * secondly, the election of a governing law, French law, with which 322.38 + it is conformant, both as regards the law of torts and 322.39 + intellectual property law, and the protection that it offers to 322.40 + both authors and holders of the economic rights over software. 322.41 + 322.42 +The authors of the CeCILL (for Ce[a] C[nrs] I[nria] L[logiciel] L[ibre]) 322.43 +license are: 322.44 + 322.45 +Commissariat à l'Energie Atomique - CEA, a public scientific, technical 322.46 +and industrial research establishment, having its principal place of 322.47 +business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France. 322.48 + 322.49 +Centre National de la Recherche Scientifique - CNRS, a public scientific 322.50 +and technological research establishment, having its principal place of 322.51 +business at 3 rue Michel-Ange, 75794 Paris cedex 16, France. 322.52 + 322.53 +Institut National de Recherche en Informatique et en Automatique - 322.54 +INRIA, a public scientific and technological establishment, having its 322.55 +principal place of business at Domaine de Voluceau, Rocquencourt, BP 322.56 +105, 78153 Le Chesnay cedex, France. 322.57 + 322.58 + 322.59 + Preamble 322.60 + 322.61 +The purpose of this Free Software license agreement is to grant users 322.62 +the right to modify and redistribute the software governed by this 322.63 +license within the framework of an open source distribution model. 322.64 + 322.65 +The exercising of these rights is conditional upon certain obligations 322.66 +for users so as to preserve this status for all subsequent redistributions. 322.67 + 322.68 +In consideration of access to the source code and the rights to copy, 322.69 +modify and redistribute granted by the license, users are provided only 322.70 +with a limited warranty and the software's author, the holder of the 322.71 +economic rights, and the successive licensors only have limited liability. 322.72 + 322.73 +In this respect, the risks associated with loading, using, modifying 322.74 +and/or developing or reproducing the software by the user are brought to 322.75 +the user's attention, given its Free Software status, which may make it 322.76 +complicated to use, with the result that its use is reserved for 322.77 +developers and experienced professionals having in-depth computer 322.78 +knowledge. Users are therefore encouraged to load and test the suitability 322.79 +of the software as regards their requirements in conditions enabling 322.80 +the security of their systems and/or data to be ensured and, more 322.81 +generally, to use and operate it in the same conditions of security. 322.82 +This Agreement may be freely reproduced and published, provided it is not 322.83 +altered, and that no provisions are either added or removed herefrom. 322.84 + 322.85 +This Agreement may apply to any or all software for which the holder of 322.86 +the economic rights decides to submit the use thereof to its provisions. 322.87 + 322.88 + 322.89 + Article 1 - DEFINITIONS 322.90 + 322.91 +For the purpose of this Agreement, when the following expressions 322.92 +commence with a capital letter, they shall have the following meaning: 322.93 + 322.94 +Agreement: means this license agreement, and its possible subsequent 322.95 +versions and annexes. 322.96 + 322.97 +Software: means the software in its Object Code and/or Source Code form 322.98 +and, where applicable, its documentation, "as is" when the Licensee 322.99 +accepts the Agreement. 322.100 + 322.101 +Initial Software: means the Software in its Source Code and possibly its 322.102 +Object Code form and, where applicable, its documentation, "as is" when 322.103 +it is first distributed under the terms and conditions of the Agreement. 322.104 + 322.105 +Modified Software: means the Software modified by at least one 322.106 +Contribution. 322.107 + 322.108 +Source Code: means all the Software's instructions and program lines to 322.109 +which access is required so as to modify the Software. 322.110 + 322.111 +Object Code: means the binary files originating from the compilation of 322.112 +the Source Code. 322.113 + 322.114 +Holder: means the holder(s) of the economic rights over the Initial 322.115 +Software. 322.116 + 322.117 +Licensee: means the Software user(s) having accepted the Agreement. 322.118 + 322.119 +Contributor: means a Licensee having made at least one Contribution. 322.120 + 322.121 +Licensor: means the Holder, or any other individual or legal entity, who 322.122 +distributes the Software under the Agreement. 322.123 + 322.124 +Contribution: means any or all modifications, corrections, translations, 322.125 +adaptations and/or new functions integrated into the Software by any or 322.126 +all Contributors, as well as any or all Internal Modules. 322.127 + 322.128 +Module: means a set of sources files including their documentation that 322.129 +enables supplementary functions or services in addition to those offered 322.130 +by the Software. 322.131 + 322.132 +External Module: means any or all Modules, not derived from the 322.133 +Software, so that this Module and the Software run in separate address 322.134 +spaces, with one calling the other when they are run. 322.135 + 322.136 +Internal Module: means any or all Module, connected to the Software so 322.137 +that they both execute in the same address space. 322.138 + 322.139 +GNU GPL: means the GNU General Public License version 2 or any 322.140 +subsequent version, as published by the Free Software Foundation Inc. 322.141 + 322.142 +Parties: mean both the Licensee and the Licensor. 322.143 + 322.144 +These expressions may be used both in singular and plural form. 322.145 + 322.146 + 322.147 + Article 2 - PURPOSE 322.148 + 322.149 +The purpose of the Agreement is the grant by the Licensor to the 322.150 +Licensee of a non-exclusive, transferable and worldwide license for the 322.151 +Software as set forth in Article 5 hereinafter for the whole term of the 322.152 +protection granted by the rights over said Software. 322.153 + 322.154 + 322.155 + Article 3 - ACCEPTANCE 322.156 + 322.157 +3.1 The Licensee shall be deemed as having accepted the terms and 322.158 +conditions of this Agreement upon the occurrence of the first of the 322.159 +following events: 322.160 + 322.161 + * (i) loading the Software by any or all means, notably, by 322.162 + downloading from a remote server, or by loading from a physical 322.163 + medium; 322.164 + * (ii) the first time the Licensee exercises any of the rights 322.165 + granted hereunder. 322.166 + 322.167 +3.2 One copy of the Agreement, containing a notice relating to the 322.168 +characteristics of the Software, to the limited warranty, and to the 322.169 +fact that its use is restricted to experienced users has been provided 322.170 +to the Licensee prior to its acceptance as set forth in Article 3.1 322.171 +hereinabove, and the Licensee hereby acknowledges that it has read and 322.172 +understood it. 322.173 + 322.174 + 322.175 + Article 4 - EFFECTIVE DATE AND TERM 322.176 + 322.177 + 322.178 + 4.1 EFFECTIVE DATE 322.179 + 322.180 +The Agreement shall become effective on the date when it is accepted by 322.181 +the Licensee as set forth in Article 3.1. 322.182 + 322.183 + 322.184 + 4.2 TERM 322.185 + 322.186 +The Agreement shall remain in force for the entire legal term of 322.187 +protection of the economic rights over the Software. 322.188 + 322.189 + 322.190 + Article 5 - SCOPE OF RIGHTS GRANTED 322.191 + 322.192 +The Licensor hereby grants to the Licensee, who accepts, the following 322.193 +rights over the Software for any or all use, and for the term of the 322.194 +Agreement, on the basis of the terms and conditions set forth hereinafter. 322.195 + 322.196 +Besides, if the Licensor owns or comes to own one or more patents 322.197 +protecting all or part of the functions of the Software or of its 322.198 +components, the Licensor undertakes not to enforce the rights granted by 322.199 +these patents against successive Licensees using, exploiting or 322.200 +modifying the Software. If these patents are transferred, the Licensor 322.201 +undertakes to have the transferees subscribe to the obligations set 322.202 +forth in this paragraph. 322.203 + 322.204 + 322.205 + 5.1 RIGHT OF USE 322.206 + 322.207 +The Licensee is authorized to use the Software, without any limitation 322.208 +as to its fields of application, with it being hereinafter specified 322.209 +that this comprises: 322.210 + 322.211 + 1. permanent or temporary reproduction of all or part of the Software 322.212 + by any or all means and in any or all form. 322.213 + 322.214 + 2. loading, displaying, running, or storing the Software on any or 322.215 + all medium. 322.216 + 322.217 + 3. entitlement to observe, study or test its operation so as to 322.218 + determine the ideas and principles behind any or all constituent 322.219 + elements of said Software. This shall apply when the Licensee 322.220 + carries out any or all loading, displaying, running, transmission 322.221 + or storage operation as regards the Software, that it is entitled 322.222 + to carry out hereunder. 322.223 + 322.224 + 322.225 + 5.2 ENTITLEMENT TO MAKE CONTRIBUTIONS 322.226 + 322.227 +The right to make Contributions includes the right to translate, adapt, 322.228 +arrange, or make any or all modifications to the Software, and the right 322.229 +to reproduce the resulting software. 322.230 + 322.231 +The Licensee is authorized to make any or all Contributions to the 322.232 +Software provided that it includes an explicit notice that it is the 322.233 +author of said Contribution and indicates the date of the creation thereof. 322.234 + 322.235 + 322.236 + 5.3 RIGHT OF DISTRIBUTION 322.237 + 322.238 +In particular, the right of distribution includes the right to publish, 322.239 +transmit and communicate the Software to the general public on any or 322.240 +all medium, and by any or all means, and the right to market, either in 322.241 +consideration of a fee, or free of charge, one or more copies of the 322.242 +Software by any means. 322.243 + 322.244 +The Licensee is further authorized to distribute copies of the modified 322.245 +or unmodified Software to third parties according to the terms and 322.246 +conditions set forth hereinafter. 322.247 + 322.248 + 322.249 + 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION 322.250 + 322.251 +The Licensee is authorized to distribute true copies of the Software in 322.252 +Source Code or Object Code form, provided that said distribution 322.253 +complies with all the provisions of the Agreement and is accompanied by: 322.254 + 322.255 + 1. a copy of the Agreement, 322.256 + 322.257 + 2. a notice relating to the limitation of both the Licensor's 322.258 + warranty and liability as set forth in Articles 8 and 9, 322.259 + 322.260 +and that, in the event that only the Object Code of the Software is 322.261 +redistributed, the Licensee allows future Licensees unhindered access to 322.262 +the full Source Code of the Software by indicating how to access it, it 322.263 +being understood that the additional cost of acquiring the Source Code 322.264 +shall not exceed the cost of transferring the data. 322.265 + 322.266 + 322.267 + 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE 322.268 + 322.269 +When the Licensee makes a Contribution to the Software, the terms and 322.270 +conditions for the distribution of the resulting Modified Software 322.271 +become subject to all the provisions of this Agreement. 322.272 + 322.273 +The Licensee is authorized to distribute the Modified Software, in 322.274 +source code or object code form, provided that said distribution 322.275 +complies with all the provisions of the Agreement and is accompanied by: 322.276 + 322.277 + 1. a copy of the Agreement, 322.278 + 322.279 + 2. a notice relating to the limitation of both the Licensor's 322.280 + warranty and liability as set forth in Articles 8 and 9, 322.281 + 322.282 +and that, in the event that only the Object Code of the Modified 322.283 +Software is redistributed, the Licensee allows future Licensees 322.284 +unhindered access to the full source code of the Modified Software by 322.285 +indicating how to access it, it being understood that the additional 322.286 +cost of acquiring the source code shall not exceed the cost of 322.287 +transferring the data. 322.288 + 322.289 + 322.290 + 5.3.3 DISTRIBUTION OF EXTERNAL MODULES 322.291 + 322.292 +When the Licensee has developed an External Module, the terms and 322.293 +conditions of this Agreement do not apply to said External Module, that 322.294 +may be distributed under a separate license agreement. 322.295 + 322.296 + 322.297 + 5.3.4 COMPATIBILITY WITH THE GNU GPL 322.298 + 322.299 +The Licensee can include a code that is subject to the provisions of one 322.300 +of the versions of the GNU GPL in the Modified or unmodified Software, 322.301 +and distribute that entire code under the terms of the same version of 322.302 +the GNU GPL. 322.303 + 322.304 +The Licensee can include the Modified or unmodified Software in a code 322.305 +that is subject to the provisions of one of the versions of the GNU GPL, 322.306 +and distribute that entire code under the terms of the same version of 322.307 +the GNU GPL. 322.308 + 322.309 + 322.310 + Article 6 - INTELLECTUAL PROPERTY 322.311 + 322.312 + 322.313 + 6.1 OVER THE INITIAL SOFTWARE 322.314 + 322.315 +The Holder owns the economic rights over the Initial Software. Any or 322.316 +all use of the Initial Software is subject to compliance with the terms 322.317 +and conditions under which the Holder has elected to distribute its work 322.318 +and no one shall be entitled to modify the terms and conditions for the 322.319 +distribution of said Initial Software. 322.320 + 322.321 +The Holder undertakes that the Initial Software will remain ruled at 322.322 +least by the current license, for the duration set forth in Article 4.2. 322.323 + 322.324 + 322.325 + 6.2 OVER THE CONTRIBUTIONS 322.326 + 322.327 +A Licensee who develops a Contribution is the owner of the intellectual 322.328 +property rights over this Contribution as defined by applicable law. 322.329 + 322.330 + 322.331 + 6.3 OVER THE EXTERNAL MODULES 322.332 + 322.333 +A Licensee who develops an External Module is the owner of the 322.334 +intellectual property rights over this External Module as defined by 322.335 +applicable law and is free to choose the type of agreement that shall 322.336 +govern its distribution. 322.337 + 322.338 + 322.339 + 6.4 JOINT PROVISIONS 322.340 + 322.341 +The Licensee expressly undertakes: 322.342 + 322.343 + 1. not to remove, or modify, in any manner, the intellectual property 322.344 + notices attached to the Software; 322.345 + 322.346 + 2. to reproduce said notices, in an identical manner, in the copies 322.347 + of the Software modified or not. 322.348 + 322.349 +The Licensee undertakes not to directly or indirectly infringe the 322.350 +intellectual property rights of the Holder and/or Contributors on the 322.351 +Software and to take, where applicable, vis-à-vis its staff, any and all 322.352 +measures required to ensure respect of said intellectual property rights 322.353 +of the Holder and/or Contributors. 322.354 + 322.355 + 322.356 + Article 7 - RELATED SERVICES 322.357 + 322.358 +7.1 Under no circumstances shall the Agreement oblige the Licensor to 322.359 +provide technical assistance or maintenance services for the Software. 322.360 + 322.361 +However, the Licensor is entitled to offer this type of services. The 322.362 +terms and conditions of such technical assistance, and/or such 322.363 +maintenance, shall be set forth in a separate instrument. Only the 322.364 +Licensor offering said maintenance and/or technical assistance services 322.365 +shall incur liability therefor. 322.366 + 322.367 +7.2 Similarly, any Licensor is entitled to offer to its licensees, under 322.368 +its sole responsibility, a warranty, that shall only be binding upon 322.369 +itself, for the redistribution of the Software and/or the Modified 322.370 +Software, under terms and conditions that it is free to decide. Said 322.371 +warranty, and the financial terms and conditions of its application, 322.372 +shall be subject of a separate instrument executed between the Licensor 322.373 +and the Licensee. 322.374 + 322.375 + 322.376 + Article 8 - LIABILITY 322.377 + 322.378 +8.1 Subject to the provisions of Article 8.2, the Licensee shall be 322.379 +entitled to claim compensation for any direct loss it may have suffered 322.380 +from the Software as a result of a fault on the part of the relevant 322.381 +Licensor, subject to providing evidence thereof. 322.382 + 322.383 +8.2 The Licensor's liability is limited to the commitments made under 322.384 +this Agreement and shall not be incurred as a result of in particular: 322.385 +(i) loss due the Licensee's total or partial failure to fulfill its 322.386 +obligations, (ii) direct or consequential loss that is suffered by the 322.387 +Licensee due to the use or performance of the Software, and (iii) more 322.388 +generally, any consequential loss. In particular the Parties expressly 322.389 +agree that any or all pecuniary or business loss (i.e. loss of data, 322.390 +loss of profits, operating loss, loss of customers or orders, 322.391 +opportunity cost, any disturbance to business activities) or any or all 322.392 +legal proceedings instituted against the Licensee by a third party, 322.393 +shall constitute consequential loss and shall not provide entitlement to 322.394 +any or all compensation from the Licensor. 322.395 + 322.396 + 322.397 + Article 9 - WARRANTY 322.398 + 322.399 +9.1 The Licensee acknowledges that the scientific and technical 322.400 +state-of-the-art when the Software was distributed did not enable all 322.401 +possible uses to be tested and verified, nor for the presence of 322.402 +possible defects to be detected. In this respect, the Licensee's 322.403 +attention has been drawn to the risks associated with loading, using, 322.404 +modifying and/or developing and reproducing the Software which are 322.405 +reserved for experienced users. 322.406 + 322.407 +The Licensee shall be responsible for verifying, by any or all means, 322.408 +the suitability of the product for its requirements, its good working order, 322.409 +and for ensuring that it shall not cause damage to either persons or 322.410 +properties. 322.411 + 322.412 +9.2 The Licensor hereby represents, in good faith, that it is entitled 322.413 +to grant all the rights over the Software (including in particular the 322.414 +rights set forth in Article 5). 322.415 + 322.416 +9.3 The Licensee acknowledges that the Software is supplied "as is" by 322.417 +the Licensor without any other express or tacit warranty, other than 322.418 +that provided for in Article 9.2 and, in particular, without any warranty 322.419 +as to its commercial value, its secured, safe, innovative or relevant 322.420 +nature. 322.421 + 322.422 +Specifically, the Licensor does not warrant that the Software is free 322.423 +from any error, that it will operate without interruption, that it will 322.424 +be compatible with the Licensee's own equipment and software 322.425 +configuration, nor that it will meet the Licensee's requirements. 322.426 + 322.427 +9.4 The Licensor does not either expressly or tacitly warrant that the 322.428 +Software does not infringe any third party intellectual property right 322.429 +relating to a patent, software or any other property right. Therefore, 322.430 +the Licensor disclaims any and all liability towards the Licensee 322.431 +arising out of any or all proceedings for infringement that may be 322.432 +instituted in respect of the use, modification and redistribution of the 322.433 +Software. Nevertheless, should such proceedings be instituted against 322.434 +the Licensee, the Licensor shall provide it with technical and legal 322.435 +assistance for its defense. Such technical and legal assistance shall be 322.436 +decided on a case-by-case basis between the relevant Licensor and the 322.437 +Licensee pursuant to a memorandum of understanding. The Licensor 322.438 +disclaims any and all liability as regards the Licensee's use of the 322.439 +name of the Software. No warranty is given as regards the existence of 322.440 +prior rights over the name of the Software or as regards the existence 322.441 +of a trademark. 322.442 + 322.443 + 322.444 + Article 10 - TERMINATION 322.445 + 322.446 +10.1 In the event of a breach by the Licensee of its obligations 322.447 +hereunder, the Licensor may automatically terminate this Agreement 322.448 +thirty (30) days after notice has been sent to the Licensee and has 322.449 +remained ineffective. 322.450 + 322.451 +10.2 A Licensee whose Agreement is terminated shall no longer be 322.452 +authorized to use, modify or distribute the Software. However, any 322.453 +licenses that it may have granted prior to termination of the Agreement 322.454 +shall remain valid subject to their having been granted in compliance 322.455 +with the terms and conditions hereof. 322.456 + 322.457 + 322.458 + Article 11 - MISCELLANEOUS 322.459 + 322.460 + 322.461 + 11.1 EXCUSABLE EVENTS 322.462 + 322.463 +Neither Party shall be liable for any or all delay, or failure to 322.464 +perform the Agreement, that may be attributable to an event of force 322.465 +majeure, an act of God or an outside cause, such as defective 322.466 +functioning or interruptions of the electricity or telecommunications 322.467 +networks, network paralysis following a virus attack, intervention by 322.468 +government authorities, natural disasters, water damage, earthquakes, 322.469 +fire, explosions, strikes and labor unrest, war, etc. 322.470 + 322.471 +11.2 Any failure by either Party, on one or more occasions, to invoke 322.472 +one or more of the provisions hereof, shall under no circumstances be 322.473 +interpreted as being a waiver by the interested Party of its right to 322.474 +invoke said provision(s) subsequently. 322.475 + 322.476 +11.3 The Agreement cancels and replaces any or all previous agreements, 322.477 +whether written or oral, between the Parties and having the same 322.478 +purpose, and constitutes the entirety of the agreement between said 322.479 +Parties concerning said purpose. No supplement or modification to the 322.480 +terms and conditions hereof shall be effective as between the Parties 322.481 +unless it is made in writing and signed by their duly authorized 322.482 +representatives. 322.483 + 322.484 +11.4 In the event that one or more of the provisions hereof were to 322.485 +conflict with a current or future applicable act or legislative text, 322.486 +said act or legislative text shall prevail, and the Parties shall make 322.487 +the necessary amendments so as to comply with said act or legislative 322.488 +text. All other provisions shall remain effective. Similarly, invalidity 322.489 +of a provision of the Agreement, for any reason whatsoever, shall not 322.490 +cause the Agreement as a whole to be invalid. 322.491 + 322.492 + 322.493 + 11.5 LANGUAGE 322.494 + 322.495 +The Agreement is drafted in both French and English and both versions 322.496 +are deemed authentic. 322.497 + 322.498 + 322.499 + Article 12 - NEW VERSIONS OF THE AGREEMENT 322.500 + 322.501 +12.1 Any person is authorized to duplicate and distribute copies of this 322.502 +Agreement. 322.503 + 322.504 +12.2 So as to ensure coherence, the wording of this Agreement is 322.505 +protected and may only be modified by the authors of the License, who 322.506 +reserve the right to periodically publish updates or new versions of the 322.507 +Agreement, each with a separate number. These subsequent versions may 322.508 +address new issues encountered by Free Software. 322.509 + 322.510 +12.3 Any Software distributed under a given version of the Agreement may 322.511 +only be subsequently distributed under the same version of the Agreement 322.512 +or a subsequent version, subject to the provisions of Article 5.3.4. 322.513 + 322.514 + 322.515 + Article 13 - GOVERNING LAW AND JURISDICTION 322.516 + 322.517 +13.1 The Agreement is governed by French law. The Parties agree to 322.518 +endeavor to seek an amicable solution to any disagreements or disputes 322.519 +that may arise during the performance of the Agreement. 322.520 + 322.521 +13.2 Failing an amicable solution within two (2) months as from their 322.522 +occurrence, and unless emergency proceedings are necessary, the 322.523 +disagreements or disputes shall be referred to the Paris Courts having 322.524 +jurisdiction, by the more diligent Party. 322.525 + 322.526 + 322.527 +Version 2.0 dated 2006-07-12. 322.528 + 322.529 +CeCill-C license: 322.530 + 322.531 + 322.532 + CeCILL-C FREE SOFTWARE LICENSE AGREEMENT 322.533 + 322.534 + 322.535 + Notice 322.536 + 322.537 +This Agreement is a Free Software license agreement that is the result 322.538 +of discussions between its authors in order to ensure compliance with 322.539 +the two main principles guiding its drafting: 322.540 + 322.541 + * firstly, compliance with the principles governing the distribution 322.542 + of Free Software: access to source code, broad rights granted to 322.543 + users, 322.544 + * secondly, the election of a governing law, French law, with which 322.545 + it is conformant, both as regards the law of torts and 322.546 + intellectual property law, and the protection that it offers to 322.547 + both authors and holders of the economic rights over software. 322.548 + 322.549 +The authors of the CeCILL-C (for Ce[a] C[nrs] I[nria] L[logiciel] L[ibre]) 322.550 +license are: 322.551 + 322.552 +Commissariat à l'Energie Atomique - CEA, a public scientific, technical 322.553 +and industrial research establishment, having its principal place of 322.554 +business at 25 rue Leblanc, immeuble Le Ponant D, 75015 Paris, France. 322.555 + 322.556 +Centre National de la Recherche Scientifique - CNRS, a public scientific 322.557 +and technological establishment, having its principal place of business 322.558 +at 3 rue Michel-Ange, 75794 Paris cedex 16, France. 322.559 + 322.560 +Institut National de Recherche en Informatique et en Automatique - 322.561 +INRIA, a public scientific and technological establishment, having its 322.562 +principal place of business at Domaine de Voluceau, Rocquencourt, BP 322.563 +105, 78153 Le Chesnay cedex, France. 322.564 + 322.565 + 322.566 + Preamble 322.567 + 322.568 +The purpose of this Free Software license agreement is to grant users the 322.569 +right to modify and re-use the software governed by this license. 322.570 + 322.571 +The exercising of this right is conditional on the obligation to make 322.572 +available to the community the modifications made to the source code of the 322.573 +software so as to contribute to its evolution. 322.574 + 322.575 +In consideration of access to the source code and the rights to copy, 322.576 +modify and redistribute granted by the license, users are provided only 322.577 +with a limited warranty and the software's author, the holder of the 322.578 +economic rights, and the successive licensors only have limited liability. 322.579 + 322.580 +In this respect, the risks associated with loading, using, modifying 322.581 +and/or developing or reproducing the software by the user are brought to 322.582 +the user's attention, given its Free Software status, which may make it 322.583 +complicated to use, with the result that its use is reserved for 322.584 +developers and experienced professionals having in-depth computer 322.585 +knowledge. Users are therefore encouraged to load and test the suitability 322.586 +of the software as regards their requirements in conditions enabling the 322.587 +security of their systems and/or data to be ensured and, more generally, to 322.588 +use and operate it in the same conditions of security. This Agreement may be 322.589 +freely reproduced and published, provided it is not altered, and that no 322.590 +provisions are either added or removed herefrom. 322.591 + 322.592 +This Agreement may apply to any or all software for which the holder of 322.593 +the economic rights decides to submit the use thereof to its provisions. 322.594 + 322.595 + 322.596 + Article 1 - DEFINITIONS 322.597 + 322.598 +For the purpose of this Agreement, when the following expressions 322.599 +commence with a capital letter, they shall have the following meaning: 322.600 + 322.601 +Agreement: means this license agreement, and its possible subsequent 322.602 +versions and annexes. 322.603 + 322.604 +Software: means the software in its Object Code and/or Source Code form 322.605 +and, where applicable, its documentation, "as is" when the Licensee 322.606 +accepts the Agreement. 322.607 + 322.608 +Initial Software: means the Software in its Source Code and possibly its 322.609 +Object Code form and, where applicable, its documentation, "as is" when 322.610 +it is first distributed under the terms and conditions of the Agreement. 322.611 + 322.612 +Modified Software: means the Software modified by at least one Integrated 322.613 +Contribution. 322.614 + 322.615 +Source Code: means all the Software's instructions and program lines to 322.616 +which access is required so as to modify the Software. 322.617 + 322.618 +Object Code: means the binary files originating from the compilation of 322.619 +the Source Code. 322.620 + 322.621 +Holder: means the holder(s) of the economic rights over the Initial 322.622 +Software. 322.623 + 322.624 +Licensee: means the Software user(s) having accepted the Agreement. 322.625 + 322.626 +Contributor: means a Licensee having made at least one Integrated 322.627 +Contribution. 322.628 + 322.629 +Licensor: means the Holder, or any other individual or legal entity, who 322.630 +distributes the Software under the Agreement. 322.631 + 322.632 +Integrated Contribution: means any or all modifications, corrections, 322.633 +translations, adaptations and/or new functions integrated into the Source 322.634 +Code by any or all Contributors. 322.635 + 322.636 +Related Module: means a set of sources files including their documentation 322.637 +that, without modification to the Source Code, enables supplementary 322.638 +functions or services in addition to those offered by the Software. 322.639 + 322.640 +Derivative Software: means any combination of the Software, modified or not, 322.641 +and of a Related Module. 322.642 + 322.643 +Parties: mean both the Licensee and the Licensor. 322.644 + 322.645 +These expressions may be used both in singular and plural form. 322.646 + 322.647 + 322.648 + Article 2 - PURPOSE 322.649 + 322.650 +The purpose of the Agreement is the grant by the Licensor to the 322.651 +Licensee of a non-exclusive, transferable and worldwide license for the 322.652 +Software as set forth in Article 5 hereinafter for the whole term of the 322.653 +protection granted by the rights over said Software. 322.654 + 322.655 + 322.656 + Article 3 - ACCEPTANCE 322.657 + 322.658 +3.1 The Licensee shall be deemed as having accepted the terms and 322.659 +conditions of this Agreement upon the occurrence of the first of the 322.660 +following events: 322.661 + 322.662 + * (i) loading the Software by any or all means, notably, by 322.663 + downloading from a remote server, or by loading from a physical 322.664 + medium; 322.665 + * (ii) the first time the Licensee exercises any of the rights 322.666 + granted hereunder. 322.667 + 322.668 +3.2 One copy of the Agreement, containing a notice relating to the 322.669 +characteristics of the Software, to the limited warranty, and to the 322.670 +fact that its use is restricted to experienced users has been provided 322.671 +to the Licensee prior to its acceptance as set forth in Article 3.1 322.672 +hereinabove, and the Licensee hereby acknowledges that it has read and 322.673 +understood it. 322.674 + 322.675 + 322.676 + Article 4 - EFFECTIVE DATE AND TERM 322.677 + 322.678 + 322.679 + 4.1 EFFECTIVE DATE 322.680 + 322.681 +The Agreement shall become effective on the date when it is accepted by 322.682 +the Licensee as set forth in Article 3.1. 322.683 + 322.684 + 322.685 + 4.2 TERM 322.686 + 322.687 +The Agreement shall remain in force for the entire legal term of 322.688 +protection of the economic rights over the Software. 322.689 + 322.690 + 322.691 + Article 5 - SCOPE OF RIGHTS GRANTED 322.692 + 322.693 +The Licensor hereby grants to the Licensee, who accepts, the following 322.694 +rights over the Software for any or all use, and for the term of the 322.695 +Agreement, on the basis of the terms and conditions set forth hereinafter. 322.696 + 322.697 +Besides, if the Licensor owns or comes to own one or more patents 322.698 +protecting all or part of the functions of the Software or of its 322.699 +components, the Licensor undertakes not to enforce the rights granted by 322.700 +these patents against successive Licensees using, exploiting or 322.701 +modifying the Software. If these patents are transferred, the Licensor 322.702 +undertakes to have the transferees subscribe to the obligations set 322.703 +forth in this paragraph. 322.704 + 322.705 + 322.706 + 5.1 RIGHT OF USE 322.707 + 322.708 +The Licensee is authorized to use the Software, without any limitation 322.709 +as to its fields of application, with it being hereinafter specified 322.710 +that this comprises: 322.711 + 322.712 + 1. permanent or temporary reproduction of all or part of the Software 322.713 + by any or all means and in any or all form. 322.714 + 2. loading, displaying, running, or storing the Software on any or 322.715 + all medium. 322.716 + 3. entitlement to observe, study or test its operation so as to 322.717 + determine the ideas and principles behind any or all constituent 322.718 + elements of said Software. This shall apply when the Licensee 322.719 + carries out any or all loading, displaying, running, transmission 322.720 + or storage operation as regards the Software, that it is entitled 322.721 + to carry out hereunder. 322.722 + 322.723 + 322.724 + 5.2 RIGHT OF MODIFICATION 322.725 + 322.726 +The right of modification includes the right to translate, adapt, arrange, 322.727 +or make any or all modifications to the Software, and the right to 322.728 +reproduce the resulting Software. It includes, in particular, the right 322.729 +to create a Derivative Software. 322.730 + 322.731 +The Licensee is authorized to make any or all modification to the 322.732 +Software provided that it includes an explicit notice that it is the 322.733 +author of said modification and indicates the date of the creation thereof. 322.734 + 322.735 + 322.736 + 5.3 RIGHT OF DISTRIBUTION 322.737 + 322.738 +In particular, the right of distribution includes the right to publish, 322.739 +transmit and communicate the Software to the general public on any or 322.740 +all medium, and by any or all means, and the right to market, either in 322.741 +consideration of a fee, or free of charge, one or more copies of the 322.742 +Software by any means. 322.743 + 322.744 +The Licensee is further authorized to distribute copies of the modified 322.745 +or unmodified Software to third parties according to the terms and 322.746 +conditions set forth hereinafter. 322.747 + 322.748 + 322.749 + 5.3.1 DISTRIBUTION OF SOFTWARE WITHOUT MODIFICATION 322.750 + 322.751 +The Licensee is authorized to distribute true copies of the Software in 322.752 +Source Code or Object Code form, provided that said distribution 322.753 +complies with all the provisions of the Agreement and is accompanied by: 322.754 + 322.755 + 1. a copy of the Agreement, 322.756 + 322.757 + 2. a notice relating to the limitation of both the Licensor's 322.758 + warranty and liability as set forth in Articles 8 and 9, 322.759 + 322.760 +and that, in the event that only the Object Code of the Software is 322.761 +redistributed, the Licensee allows effective access to the full Source Code 322.762 +of the Software at a minimum during the entire period of its distribution 322.763 +of the Software, it being understood that the additional cost of acquiring 322.764 +the Source Code shall not exceed the cost of transferring the data. 322.765 + 322.766 + 322.767 + 5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE 322.768 + 322.769 +When the Licensee makes an Integrated Contribution to the Software, the terms 322.770 +and conditions for the distribution of the resulting Modified Software become 322.771 +subject to all the provisions of this Agreement. 322.772 + 322.773 +The Licensee is authorized to distribute the Modified Software, in source 322.774 +code or object code form, provided that said distribution complies with all 322.775 +the provisions of the Agreement and is accompanied by: 322.776 + 322.777 + 1. a copy of the Agreement, 322.778 + 2. a notice relating to the limitation of both the Licensor's warranty and 322.779 + liability as set forth in Articles 8 and 9, 322.780 + 322.781 +and that, in the event that only the object code of the Modified Software is 322.782 +redistributed, the Licensee allows effective access to the full source code 322.783 +of the Modified Software at a minimum during the entire period of its 322.784 +distribution of the Modified Software, it being understood that the 322.785 +additional cost of acquiring the source code shall not exceed the cost of 322.786 +transferring the data. 322.787 + 322.788 + 5.3.3 DISTRIBUTION OF DERIVATIVE SOFTWARE 322.789 + 322.790 +When the Licensee creates Derivative Software, this Derivative Software may 322.791 +be distributed under a license agreement other than this Agreement, subject 322.792 +to compliance with the requirement to include a notice concerning the rights 322.793 +over the Software as defined in Article 6.4. In the event the creation of the 322.794 +Derivative Software required modification of the Source Code, the Licensee 322.795 +undertakes that: 322.796 + 322.797 + 1. the resulting Modified Software will be governed by this Agreement, 322.798 + 2. the Integrated Contributions in the resulting Modified Software will be 322.799 + clearly identified and documented, 322.800 + 3. the Licensee will allow effective access to the source code of the 322.801 + Modified Software, at a minimum during the entire period of 322.802 + distribution of the Derivative Software, such that such modifications 322.803 + may be carried over in a subsequent version of the Software; it being 322.804 + understood that the additional cost of purchasing the source code of 322.805 + the Modified Software shall not exceed the cost of transferring the 322.806 + data. 322.807 + 322.808 + 322.809 + 5.3.4 COMPATIBILITY WITH THE CeCILL LICENSE 322.810 + 322.811 +When a Modified Software contains an Integrated Contribution subject to the 322.812 +CeCill license agreement, or when a Derivative Software contains a Related 322.813 +Module subject to the CeCill license agreement, the provisions set forth in 322.814 +the third item of Article 6.4 are optional. 322.815 + 322.816 + 322.817 + Article 6 - INTELLECTUAL PROPERTY 322.818 + 322.819 + 322.820 + 6.1 OVER THE INITIAL SOFTWARE 322.821 + 322.822 +The Holder owns the economic rights over the Initial Software. Any or 322.823 +all use of the Initial Software is subject to compliance with the terms 322.824 +and conditions under which the Holder has elected to distribute its work 322.825 +and no one shall be entitled to modify the terms and conditions for the 322.826 +distribution of said Initial Software. 322.827 + 322.828 +The Holder undertakes that the Initial Software will remain ruled at 322.829 +least by the current license, for the duration set forth in Article 4.2. 322.830 + 322.831 + 322.832 + 6.2 OVER THE INTEGRATED CONTRIBUTIONS 322.833 + 322.834 +A Licensee who develops an Integrated Contribution is the owner of the 322.835 +intellectual property rights over this Contribution as defined by 322.836 +applicable law. 322.837 + 322.838 + 322.839 + 6.3 OVER THE RELATED MODULES 322.840 + 322.841 +A Licensee who develops an Related Module is the owner of the 322.842 +intellectual property rights over this Related Module as defined by 322.843 +applicable law and is free to choose the type of agreement that shall 322.844 +govern its distribution under the conditions defined in Article 5.3.3. 322.845 + 322.846 + 322.847 + 6.4 NOTICE OF RIGHTS 322.848 + 322.849 +The Licensee expressly undertakes: 322.850 + 322.851 + 1. not to remove, or modify, in any manner, the intellectual property 322.852 + notices attached to the Software; 322.853 + 2. to reproduce said notices, in an identical manner, in the copies 322.854 + of the Software modified or not; 322.855 + 3. to ensure that use of the Software, its intellectual property 322.856 + notices and the fact that it is governed by the Agreement is 322.857 + indicated in a text that is easily accessible, specifically from 322.858 + the interface of any Derivative Software. 322.859 + 322.860 +The Licensee undertakes not to directly or indirectly infringe the 322.861 +intellectual property rights of the Holder and/or Contributors on the 322.862 +Software and to take, where applicable, vis-à-vis its staff, any and all 322.863 +measures required to ensure respect of said intellectual property rights 322.864 +of the Holder and/or Contributors. 322.865 + 322.866 + 322.867 + Article 7 - RELATED SERVICES 322.868 + 322.869 +7.1 Under no circumstances shall the Agreement oblige the Licensor to 322.870 +provide technical assistance or maintenance services for the Software. 322.871 + 322.872 +However, the Licensor is entitled to offer this type of services. The 322.873 +terms and conditions of such technical assistance, and/or such 322.874 +maintenance, shall be set forth in a separate instrument. Only the 322.875 +Licensor offering said maintenance and/or technical assistance services 322.876 +shall incur liability therefor. 322.877 + 322.878 +7.2 Similarly, any Licensor is entitled to offer to its licensees, under 322.879 +its sole responsibility, a warranty, that shall only be binding upon 322.880 +itself, for the redistribution of the Software and/or the Modified 322.881 +Software, under terms and conditions that it is free to decide. Said 322.882 +warranty, and the financial terms and conditions of its application, 322.883 +shall be subject of a separate instrument executed between the Licensor 322.884 +and the Licensee. 322.885 + 322.886 + 322.887 + Article 8 - LIABILITY 322.888 + 322.889 +8.1 Subject to the provisions of Article 8.2, the Licensee shall be 322.890 +entitled to claim compensation for any direct loss it may have suffered 322.891 +from the Software as a result of a fault on the part of the relevant 322.892 +Licensor, subject to providing evidence thereof. 322.893 + 322.894 +8.2 The Licensor's liability is limited to the commitments made under 322.895 +this Agreement and shall not be incurred as a result of in particular: 322.896 +(i) loss due the Licensee's total or partial failure to fulfill its 322.897 +obligations, (ii) direct or consequential loss that is suffered by the 322.898 +Licensee due to the use or performance of the Software, and (iii) more 322.899 +generally, any consequential loss. In particular the Parties expressly 322.900 +agree that any or all pecuniary or business loss (i.e. loss of data, 322.901 +loss of profits, operating loss, loss of customers or orders, 322.902 +opportunity cost, any disturbance to business activities) or any or all 322.903 +legal proceedings instituted against the Licensee by a third party, 322.904 +shall constitute consequential loss and shall not provide entitlement to 322.905 +any or all compensation from the Licensor. 322.906 + 322.907 + 322.908 + Article 9 - WARRANTY 322.909 + 322.910 +9.1 The Licensee acknowledges that the scientific and technical 322.911 +state-of-the-art when the Software was distributed did not enable all 322.912 +possible uses to be tested and verified, nor for the presence of 322.913 +possible defects to be detected. In this respect, the Licensee's 322.914 +attention has been drawn to the risks associated with loading, using, 322.915 +modifying and/or developing and reproducing the Software which are 322.916 +reserved for experienced users. 322.917 + 322.918 +The Licensee shall be responsible for verifying, by any or all means, 322.919 +the suitability of the product for its requirements, its good working order, 322.920 +and for ensuring that it shall not cause damage to either persons or 322.921 +properties. 322.922 + 322.923 +9.2 The Licensor hereby represents, in good faith, that it is entitled 322.924 +to grant all the rights over the Software (including in particular the 322.925 +rights set forth in Article 5). 322.926 + 322.927 +9.3 The Licensee acknowledges that the Software is supplied "as is" by 322.928 +the Licensor without any other express or tacit warranty, other than 322.929 +that provided for in Article 9.2 and, in particular, without any warranty 322.930 +as to its commercial value, its secured, safe, innovative or relevant 322.931 +nature. 322.932 + 322.933 +Specifically, the Licensor does not warrant that the Software is free 322.934 +from any error, that it will operate without interruption, that it will 322.935 +be compatible with the Licensee's own equipment and software 322.936 +configuration, nor that it will meet the Licensee's requirements. 322.937 + 322.938 +9.4 The Licensor does not either expressly or tacitly warrant that the 322.939 +Software does not infringe any third party intellectual property right 322.940 +relating to a patent, software or any other property right. Therefore, 322.941 +the Licensor disclaims any and all liability towards the Licensee 322.942 +arising out of any or all proceedings for infringement that may be 322.943 +instituted in respect of the use, modification and redistribution of the 322.944 +Software. Nevertheless, should such proceedings be instituted against 322.945 +the Licensee, the Licensor shall provide it with technical and legal 322.946 +assistance for its defense. Such technical and legal assistance shall be 322.947 +decided on a case-by-case basis between the relevant Licensor and the 322.948 +Licensee pursuant to a memorandum of understanding. The Licensor 322.949 +disclaims any and all liability as regards the Licensee's use of the 322.950 +name of the Software. No warranty is given as regards the existence of 322.951 +prior rights over the name of the Software or as regards the existence 322.952 +of a trademark. 322.953 + 322.954 + 322.955 + Article 10 - TERMINATION 322.956 + 322.957 +10.1 In the event of a breach by the Licensee of its obligations 322.958 +hereunder, the Licensor may automatically terminate this Agreement 322.959 +thirty (30) days after notice has been sent to the Licensee and has 322.960 +remained ineffective. 322.961 + 322.962 +10.2 A Licensee whose Agreement is terminated shall no longer be 322.963 +authorized to use, modify or distribute the Software. However, any 322.964 +licenses that it may have granted prior to termination of the Agreement 322.965 +shall remain valid subject to their having been granted in compliance 322.966 +with the terms and conditions hereof. 322.967 + 322.968 + 322.969 + Article 11 - MISCELLANEOUS 322.970 + 322.971 + 322.972 + 11.1 EXCUSABLE EVENTS 322.973 + 322.974 +Neither Party shall be liable for any or all delay, or failure to 322.975 +perform the Agreement, that may be attributable to an event of force 322.976 +majeure, an act of God or an outside cause, such as defective 322.977 +functioning or interruptions of the electricity or telecommunications 322.978 +networks, network paralysis following a virus attack, intervention by 322.979 +government authorities, natural disasters, water damage, earthquakes, 322.980 +fire, explosions, strikes and labor unrest, war, etc. 322.981 + 322.982 +11.2 Any failure by either Party, on one or more occasions, to invoke 322.983 +one or more of the provisions hereof, shall under no circumstances be 322.984 +interpreted as being a waiver by the interested Party of its right to 322.985 +invoke said provision(s) subsequently. 322.986 + 322.987 +11.3 The Agreement cancels and replaces any or all previous agreements, 322.988 +whether written or oral, between the Parties and having the same 322.989 +purpose, and constitutes the entirety of the agreement between said 322.990 +Parties concerning said purpose. No supplement or modification to the 322.991 +terms and conditions hereof shall be effective as between the Parties 322.992 +unless it is made in writing and signed by their duly authorized 322.993 +representatives. 322.994 + 322.995 +11.4 In the event that one or more of the provisions hereof were to 322.996 +conflict with a current or future applicable act or legislative text, 322.997 +said act or legislative text shall prevail, and the Parties shall make 322.998 +the necessary amendments so as to comply with said act or legislative 322.999 +text. All other provisions shall remain effective. Similarly, invalidity 322.1000 +of a provision of the Agreement, for any reason whatsoever, shall not 322.1001 +cause the Agreement as a whole to be invalid. 322.1002 + 322.1003 + 322.1004 + 11.5 LANGUAGE 322.1005 + 322.1006 +The Agreement is drafted in both French and English and both versions 322.1007 +are deemed authentic. 322.1008 + 322.1009 + 322.1010 + Article 12 - NEW VERSIONS OF THE AGREEMENT 322.1011 + 322.1012 +12.1 Any person is authorized to duplicate and distribute copies of this 322.1013 +Agreement. 322.1014 + 322.1015 +12.2 So as to ensure coherence, the wording of this Agreement is 322.1016 +protected and may only be modified by the authors of the License, who 322.1017 +reserve the right to periodically publish updates or new versions of the 322.1018 +Agreement, each with a separate number. These subsequent versions may 322.1019 +address new issues encountered by Free Software. 322.1020 + 322.1021 +12.3 Any Software distributed under a given version of the Agreement 322.1022 +may only be subsequently distributed under the same version of the 322.1023 +Agreement or a subsequent version. 322.1024 + 322.1025 + 322.1026 + Article 13 - GOVERNING LAW AND JURISDICTION 322.1027 + 322.1028 +13.1 The Agreement is governed by French law. The Parties agree to 322.1029 +endeavor to seek an amicable solution to any disagreements or disputes 322.1030 +that may arise during the performance of the Agreement. 322.1031 + 322.1032 +13.2 Failing an amicable solution within two (2) months as from their 322.1033 +occurrence, and unless emergency proceedings are necessary, the 322.1034 +disagreements or disputes shall be referred to the Paris Courts having 322.1035 +jurisdiction, by the more diligent Party. 322.1036 + 322.1037 + 322.1038 +Version 1.0 dated 2006-07-12.
323.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 323.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/docs Mon Aug 03 14:09:20 2009 +0100 323.3 @@ -0,0 +1,1 @@ 323.4 +changelog
324.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 324.2 +++ b/PTdecode/CImg-1.3.0/resources/debian/rules Mon Aug 03 14:09:20 2009 +0100 324.3 @@ -0,0 +1,80 @@ 324.4 +#!/usr/bin/make -f 324.5 +# -*- makefile -*- 324.6 +# Sample debian/rules that uses debhelper. 324.7 +# GNU copyright 1997 to 1999 by Joey Hess. 324.8 +# 324.9 +# Modified to make a template file for a multi-binary package with separated 324.10 +# build-arch and build-indep targets by Bill Allombert 2001 324.11 +# 324.12 +# Modified in order to update the package by François-Xavier Dupé 2007 324.13 + 324.14 +# Uncomment this to turn on verbose mode. 324.15 +#export DH_VERBOSE=1 324.16 + 324.17 +# This has to be exported to make some magic below work. 324.18 +export DH_OPTIONS 324.19 + 324.20 +CFLAGS = -Wall -g 324.21 + 324.22 +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) 324.23 + CFLAGS += -O0 324.24 +else 324.25 + CFLAGS += -O3 324.26 +endif 324.27 +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) 324.28 + INSTALL_PROGRAM += -s 324.29 +endif 324.30 + 324.31 +build: build-indep-stamp 324.32 +build-indep-stamp: 324.33 + #cd examples && $(MAKE) "LDFLAGS=-lm -lpthread" 324.34 + #cd examples && $(MAKE) clean 324.35 + #$(MAKE) doc 324.36 + touch build-indep-stamp 324.37 + 324.38 +clean: 324.39 + dh_testdir 324.40 + dh_testroot 324.41 + rm -f build-arch-stamp build-indep-stamp 324.42 + dh_clean 324.43 + 324.44 +install: 324.45 + dh_testdir 324.46 + dh_testroot 324.47 + dh_clean -k 324.48 + dh_installdirs 324.49 + dh_install 324.50 + 324.51 +binary-indep: build install 324.52 + dh_testdir 324.53 + dh_testroot 324.54 + dh_installchangelogs 324.55 + dh_installdocs 324.56 + dh_compress 324.57 +# dh_installmenu 324.58 +# dh_installdebconf 324.59 +# dh_installlogrotate 324.60 +# dh_installemacsen 324.61 +# dh_installpam 324.62 +# dh_installmime 324.63 +# dh_installinit 324.64 +# dh_installcron 324.65 +# dh_installinfo 324.66 +# dh_installman 324.67 + dh_link 324.68 + dh_strip 324.69 + dh_fixperms 324.70 +# dh_perl 324.71 +# dh_python 324.72 + dh_makeshlibs 324.73 + dh_installdeb 324.74 + dh_shlibdeps 324.75 + dh_gencontrol 324.76 + dh_md5sums 324.77 + dh_builddeb 324.78 + 324.79 +# Build architecture dependant packages using the common target. 324.80 +binary-arch: build install 324.81 + 324.82 +binary: binary-indep binary-arch 324.83 +.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch
325.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 325.2 +++ b/PTdecode/CImg-1.3.0/resources/project_win_visualcpp/project_win_visualcpp.sln Mon Aug 03 14:09:20 2009 +0100 325.3 @@ -0,0 +1,20 @@ 325.4 + 325.5 +Microsoft Visual Studio Solution File, Format Version 10.00 325.6 +# Visual C++ Express 2008 325.7 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "project_win_visualcpp", "project_win_visualcpp.vcproj", "{9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}" 325.8 +EndProject 325.9 +Global 325.10 + GlobalSection(SolutionConfigurationPlatforms) = preSolution 325.11 + Debug|Win32 = Debug|Win32 325.12 + Release|Win32 = Release|Win32 325.13 + EndGlobalSection 325.14 + GlobalSection(ProjectConfigurationPlatforms) = postSolution 325.15 + {9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}.Debug|Win32.ActiveCfg = Debug|Win32 325.16 + {9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}.Debug|Win32.Build.0 = Debug|Win32 325.17 + {9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}.Release|Win32.ActiveCfg = Release|Win32 325.18 + {9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}.Release|Win32.Build.0 = Release|Win32 325.19 + EndGlobalSection 325.20 + GlobalSection(SolutionProperties) = preSolution 325.21 + HideSolutionNode = FALSE 325.22 + EndGlobalSection 325.23 +EndGlobal
326.1 Binary file PTdecode/CImg-1.3.0/resources/project_win_visualcpp/project_win_visualcpp.suo has changed
327.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 327.2 +++ b/PTdecode/CImg-1.3.0/resources/project_win_visualcpp/project_win_visualcpp.vcproj Mon Aug 03 14:09:20 2009 +0100 327.3 @@ -0,0 +1,200 @@ 327.4 +<?xml version="1.0" encoding="Windows-1252"?> 327.5 +<VisualStudioProject 327.6 + ProjectType="Visual C++" 327.7 + Version="9,00" 327.8 + Name="project_win_visualcpp" 327.9 + ProjectGUID="{9A50ACD6-B1AB-4AAF-A85C-D5E388EF024B}" 327.10 + RootNamespace="project_win_visualcpp" 327.11 + Keyword="Win32Proj" 327.12 + TargetFrameworkVersion="196613" 327.13 + > 327.14 + <Platforms> 327.15 + <Platform 327.16 + Name="Win32" 327.17 + /> 327.18 + </Platforms> 327.19 + <ToolFiles> 327.20 + </ToolFiles> 327.21 + <Configurations> 327.22 + <Configuration 327.23 + Name="Debug|Win32" 327.24 + OutputDirectory="$(SolutionDir)$(ConfigurationName)" 327.25 + IntermediateDirectory="$(ConfigurationName)" 327.26 + ConfigurationType="1" 327.27 + CharacterSet="1" 327.28 + > 327.29 + <Tool 327.30 + Name="VCPreBuildEventTool" 327.31 + /> 327.32 + <Tool 327.33 + Name="VCCustomBuildTool" 327.34 + /> 327.35 + <Tool 327.36 + Name="VCXMLDataGeneratorTool" 327.37 + /> 327.38 + <Tool 327.39 + Name="VCWebServiceProxyGeneratorTool" 327.40 + /> 327.41 + <Tool 327.42 + Name="VCMIDLTool" 327.43 + /> 327.44 + <Tool 327.45 + Name="VCCLCompilerTool" 327.46 + AdditionalOptions="
" 327.47 + Optimization="0" 327.48 + AdditionalIncludeDirectories="..\..\" 327.49 + PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" 327.50 + MinimalRebuild="true" 327.51 + BasicRuntimeChecks="3" 327.52 + RuntimeLibrary="3" 327.53 + UsePrecompiledHeader="0" 327.54 + WarningLevel="3" 327.55 + DebugInformationFormat="4" 327.56 + /> 327.57 + <Tool 327.58 + Name="VCManagedResourceCompilerTool" 327.59 + /> 327.60 + <Tool 327.61 + Name="VCResourceCompilerTool" 327.62 + /> 327.63 + <Tool 327.64 + Name="VCPreLinkEventTool" 327.65 + /> 327.66 + <Tool 327.67 + Name="VCLinkerTool" 327.68 + LinkIncremental="2" 327.69 + GenerateDebugInformation="true" 327.70 + SubSystem="1" 327.71 + TargetMachine="1" 327.72 + /> 327.73 + <Tool 327.74 + Name="VCALinkTool" 327.75 + /> 327.76 + <Tool 327.77 + Name="VCManifestTool" 327.78 + /> 327.79 + <Tool 327.80 + Name="VCXDCMakeTool" 327.81 + /> 327.82 + <Tool 327.83 + Name="VCBscMakeTool" 327.84 + /> 327.85 + <Tool 327.86 + Name="VCFxCopTool" 327.87 + /> 327.88 + <Tool 327.89 + Name="VCAppVerifierTool" 327.90 + /> 327.91 + <Tool 327.92 + Name="VCPostBuildEventTool" 327.93 + /> 327.94 + </Configuration> 327.95 + <Configuration 327.96 + Name="Release|Win32" 327.97 + OutputDirectory="$(SolutionDir)$(ConfigurationName)" 327.98 + IntermediateDirectory="$(ConfigurationName)" 327.99 + ConfigurationType="1" 327.100 + CharacterSet="1" 327.101 + WholeProgramOptimization="1" 327.102 + > 327.103 + <Tool 327.104 + Name="VCPreBuildEventTool" 327.105 + /> 327.106 + <Tool 327.107 + Name="VCCustomBuildTool" 327.108 + /> 327.109 + <Tool 327.110 + Name="VCXMLDataGeneratorTool" 327.111 + /> 327.112 + <Tool 327.113 + Name="VCWebServiceProxyGeneratorTool" 327.114 + /> 327.115 + <Tool 327.116 + Name="VCMIDLTool" 327.117 + /> 327.118 + <Tool 327.119 + Name="VCCLCompilerTool" 327.120 + Optimization="3" 327.121 + EnableIntrinsicFunctions="true" 327.122 + AdditionalIncludeDirectories="..\..\" 327.123 + PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" 327.124 + RuntimeLibrary="2" 327.125 + EnableFunctionLevelLinking="true" 327.126 + UsePrecompiledHeader="0" 327.127 + WarningLevel="3" 327.128 + DebugInformationFormat="3" 327.129 + /> 327.130 + <Tool 327.131 + Name="VCManagedResourceCompilerTool" 327.132 + /> 327.133 + <Tool 327.134 + Name="VCResourceCompilerTool" 327.135 + /> 327.136 + <Tool 327.137 + Name="VCPreLinkEventTool" 327.138 + /> 327.139 + <Tool 327.140 + Name="VCLinkerTool" 327.141 + LinkIncremental="1" 327.142 + GenerateDebugInformation="true" 327.143 + SubSystem="1" 327.144 + OptimizeReferences="2" 327.145 + EnableCOMDATFolding="2" 327.146 + TargetMachine="1" 327.147 + /> 327.148 + <Tool 327.149 + Name="VCALinkTool" 327.150 + /> 327.151 + <Tool 327.152 + Name="VCManifestTool" 327.153 + /> 327.154 + <Tool 327.155 + Name="VCXDCMakeTool" 327.156 + /> 327.157 + <Tool 327.158 + Name="VCBscMakeTool" 327.159 + /> 327.160 + <Tool 327.161 + Name="VCFxCopTool" 327.162 + /> 327.163 + <Tool 327.164 + Name="VCAppVerifierTool" 327.165 + /> 327.166 + <Tool 327.167 + Name="VCPostBuildEventTool" 327.168 + /> 327.169 + </Configuration> 327.170 + </Configurations> 327.171 + <References> 327.172 + </References> 327.173 + <Files> 327.174 + <Filter 327.175 + Name="Fichiers sources" 327.176 + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" 327.177 + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" 327.178 + > 327.179 + <File 327.180 + RelativePath="..\..\examples\CImg_demo.cpp" 327.181 + > 327.182 + </File> 327.183 + </Filter> 327.184 + <Filter 327.185 + Name="Fichiers d'en-tête" 327.186 + Filter="h;hpp;hxx;hm;inl;inc;xsd" 327.187 + UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" 327.188 + > 327.189 + <File 327.190 + RelativePath="..\..\CImg.h" 327.191 + > 327.192 + </File> 327.193 + </Filter> 327.194 + <Filter 327.195 + Name="Fichiers de ressources" 327.196 + Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" 327.197 + UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" 327.198 + > 327.199 + </Filter> 327.200 + </Files> 327.201 + <Globals> 327.202 + </Globals> 327.203 +</VisualStudioProject>
328.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 328.2 +++ b/PTdecode/CImg-1.3.0/resources/project_win_visualcpp6/project_win_visualcpp6.dsp Mon Aug 03 14:09:20 2009 +0100 328.3 @@ -0,0 +1,104 @@ 328.4 +# Microsoft Developer Studio Project File - Name="project_win_visualcpp6" - Package Owner=<4> 328.5 +# Microsoft Developer Studio Generated Build File, Format Version 6.00 328.6 +# ** DO NOT EDIT ** 328.7 + 328.8 +# TARGTYPE "Win32 (x86) Console Application" 0x0103 328.9 + 328.10 +CFG=project_win_visualcpp6 - Win32 Debug 328.11 +!MESSAGE This is not a valid makefile. To build this project using NMAKE, 328.12 +!MESSAGE use the Export Makefile command and run 328.13 +!MESSAGE 328.14 +!MESSAGE NMAKE /f "project_win_visualcpp6.mak". 328.15 +!MESSAGE 328.16 +!MESSAGE You can specify a configuration when running NMAKE 328.17 +!MESSAGE by defining the macro CFG on the command line. For example: 328.18 +!MESSAGE 328.19 +!MESSAGE NMAKE /f "project_win_visualcpp6.mak" CFG="project_win_visualcpp6 - Win32 Debug" 328.20 +!MESSAGE 328.21 +!MESSAGE Possible choices for configuration are: 328.22 +!MESSAGE 328.23 +!MESSAGE "project_win_visualcpp6 - Win32 Release" (based on "Win32 (x86) Console Application") 328.24 +!MESSAGE "project_win_visualcpp6 - Win32 Debug" (based on "Win32 (x86) Console Application") 328.25 +!MESSAGE 328.26 + 328.27 +# Begin Project 328.28 +# PROP AllowPerConfigDependencies 0 328.29 +# PROP Scc_ProjName "" 328.30 +# PROP Scc_LocalPath "" 328.31 +CPP=xicl6.exe 328.32 +RSC=rc.exe 328.33 + 328.34 +!IF "$(CFG)" == "project_win_visualcpp6 - Win32 Release" 328.35 + 328.36 +# PROP BASE Use_MFC 0 328.37 +# PROP BASE Use_Debug_Libraries 0 328.38 +# PROP BASE Output_Dir "Release" 328.39 +# PROP BASE Intermediate_Dir "Release" 328.40 +# PROP BASE Target_Dir "" 328.41 +# PROP Use_MFC 0 328.42 +# PROP Use_Debug_Libraries 0 328.43 +# PROP Output_Dir "Release" 328.44 +# PROP Intermediate_Dir "Release" 328.45 +# PROP Target_Dir "" 328.46 +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c 328.47 +# ADD CPP /nologo /W3 /GX /O2 /I "..\..\\" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /Zm800 /c 328.48 +# ADD BASE RSC /l 0x40c /d "NDEBUG" 328.49 +# ADD RSC /l 0x40c /d "NDEBUG" 328.50 +BSC32=bscmake.exe 328.51 +# ADD BASE BSC32 /nologo 328.52 +# ADD BSC32 /nologo 328.53 +LINK32=xilink6.exe 328.54 +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 328.55 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 328.56 + 328.57 +!ELSEIF "$(CFG)" == "project_win_visualcpp6 - Win32 Debug" 328.58 + 328.59 +# PROP BASE Use_MFC 0 328.60 +# PROP BASE Use_Debug_Libraries 1 328.61 +# PROP BASE Output_Dir "Debug" 328.62 +# PROP BASE Intermediate_Dir "Debug" 328.63 +# PROP BASE Target_Dir "" 328.64 +# PROP Use_MFC 0 328.65 +# PROP Use_Debug_Libraries 1 328.66 +# PROP Output_Dir "Debug" 328.67 +# PROP Intermediate_Dir "Debug" 328.68 +# PROP Target_Dir "" 328.69 +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c 328.70 +# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\\" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /Zm800 /c 328.71 +# ADD BASE RSC /l 0x40c /d "_DEBUG" 328.72 +# ADD RSC /l 0x40c /d "_DEBUG" 328.73 +BSC32=bscmake.exe 328.74 +# ADD BASE BSC32 /nologo 328.75 +# ADD BSC32 /nologo 328.76 +LINK32=xilink6.exe 328.77 +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 328.78 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept 328.79 + 328.80 +!ENDIF 328.81 + 328.82 +# Begin Target 328.83 + 328.84 +# Name "project_win_visualcpp6 - Win32 Release" 328.85 +# Name "project_win_visualcpp6 - Win32 Debug" 328.86 +# Begin Group "Source Files" 328.87 + 328.88 +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" 328.89 +# Begin Source File 328.90 + 328.91 +SOURCE=..\..\examples\CImg_demo.cpp 328.92 +# End Source File 328.93 +# End Group 328.94 +# Begin Group "Header Files" 328.95 + 328.96 +# PROP Default_Filter "h;hpp;hxx;hm;inl" 328.97 +# Begin Source File 328.98 + 328.99 +SOURCE=..\..\CImg.h 328.100 +# End Source File 328.101 +# End Group 328.102 +# Begin Group "Resource Files" 328.103 + 328.104 +# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" 328.105 +# End Group 328.106 +# End Target 328.107 +# End Project
329.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 329.2 +++ b/PTdecode/CImg-1.3.0/resources/project_win_visualcpp6/project_win_visualcpp6.dsw Mon Aug 03 14:09:20 2009 +0100 329.3 @@ -0,0 +1,29 @@ 329.4 +Microsoft Developer Studio Workspace File, Format Version 6.00 329.5 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 329.6 + 329.7 +############################################################################### 329.8 + 329.9 +Project: "project_win_visualcpp6"=".\project_win_visualcpp6.dsp" - Package Owner=<4> 329.10 + 329.11 +Package=<5> 329.12 +{{{ 329.13 +}}} 329.14 + 329.15 +Package=<4> 329.16 +{{{ 329.17 +}}} 329.18 + 329.19 +############################################################################### 329.20 + 329.21 +Global: 329.22 + 329.23 +Package=<5> 329.24 +{{{ 329.25 +}}} 329.26 + 329.27 +Package=<3> 329.28 +{{{ 329.29 +}}} 329.30 + 329.31 +############################################################################### 329.32 +
330.1 Binary file PTdecode/CImg-1.3.0/resources/project_win_visualcpp6/project_win_visualcpp6.opt has changed
331.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 331.2 +++ b/PTdecode/Makefile Mon Aug 03 14:09:20 2009 +0100 331.3 @@ -0,0 +1,368 @@ 331.4 +# Phil's multiplatform makefile template 331.5 +# With auto-incrementing build number and automatic version.h generation 331.6 +# Version 1.4, 2009-01-27 331.7 +# 331.8 +# The latest version of this Makefile can be found at http://www.philpem.me.uk/ 331.9 +# 331.10 +# 331.11 +# Copyright (c) 2009 Philip Pemberton <code@philpem.me.uk> 331.12 +# 331.13 +# Permission is hereby granted, free of charge, to any person obtaining a copy 331.14 +# of this software and associated documentation files (the "Software"), to deal 331.15 +# in the Software without restriction, including without limitation the rights 331.16 +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 331.17 +# copies of the Software, and to permit persons to whom the Software is 331.18 +# furnished to do so, subject to the following conditions: 331.19 +# 331.20 +# The above copyright notice and this permission notice shall be included in 331.21 +# all copies or substantial portions of the Software. 331.22 +# 331.23 +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 331.24 +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 331.25 +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 331.26 +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 331.27 +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 331.28 +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 331.29 +# THE SOFTWARE. 331.30 +# 331.31 +# 331.32 +# Instructions for use: 331.33 +# Run 'make init' to create the required directories 331.34 +# Add your source files to the 'SOURCES' list, and change the TARGET filename 331.35 +# Set the desired build type and platform in the BUILD_TYPE and PLATFORM 331.36 +# variables respectively 331.37 +# Set your project type (C only, or C++) in the SRC_TYPE variable 331.38 +# Add any libraries you need to link against to the 'LIB' list 331.39 +# Run 'make' 331.40 +# 331.41 +# Object files are created in the 'obj' subdirectory, from source code in the 331.42 +# 'src' directory. Dependency files are created in the 'dep' directory from 331.43 +# the same source code the object files are created from. 331.44 +# 331.45 +# Supported targets are: 331.46 +# all Build everything. 331.47 +# update-revision Increment the build number without building anything. 331.48 +# clean-versioninfo Delete src/version.h (will be rebuilt on the next 331.49 +# 'make all'). 331.50 +# init Initialise the build system for a new project. 331.51 +# WARNING: overwrites .buildnum and src/version.h.in! 331.52 +# cleandep Delete all dependency files. 331.53 +# clean Delete all dependency, intermediate and target files. 331.54 +# tidy Delete all dependency and intermediate files, leaving 331.55 +# the target file intact. 331.56 +# 331.57 +# If you want to reset the build number to zero, delete '.buildnum'. This 331.58 +# should be done whenever the major or minor version changes. Excluding 331.59 +# .buildnum from version control may also be a good idea, depending on how 331.60 +# you want your build numbers to work. 331.61 +# 331.62 +# The BUILD_TYPE variable contains the current build type. There are two 331.63 +# supported build types: 331.64 +# debug Debug mode - object files are compiled with debug information 331.65 +# and the target is left unstripped. 331.66 +# release Release mode - object files are not compiled with debug info, 331.67 +# and the target is fed through strip to remove redundant 331.68 +# data. 331.69 +# 331.70 +# The PLATFORM variable contains the current target platform. There are two 331.71 +# supported platforms: 331.72 +# linux GNU/Linux with GNU Compiler Collection 331.73 +# win32 Windows 32-bit with MinGW 331.74 +# 331.75 +# The EXTSRC variable is used to specify other files to build. It is typically 331.76 +# used to specify platform or build-type specific source files, e.g. 331.77 +# 331.78 +# ifeq ($(BUILD_TYPE),debug-memwatch) 331.79 +# CFLAGS += -g -ggdb 331.80 +# CPPFLAGS += -DMEMWATCH 331.81 +# INCPATH += ./memwatch 331.82 +# EXTSRC += memwatch/memwatch.c 331.83 +# endif 331.84 +# 331.85 +# (example taken from one of my projects that allowed the use of Memwatch to 331.86 +# track down memory allocation/deallocation bugs) 331.87 +# 331.88 + 331.89 +#### 331.90 +# Build configuration 331.91 +#### 331.92 + 331.93 +# version information -- major.minor.extra 331.94 +# note that VER_EXTRA can be overridden on the command line, e.g.: 331.95 +# make VER_EXTRA=12345 all 331.96 +VER_MAJOR = 0 331.97 +VER_MINOR = 0 331.98 +VER_EXTRA ?= 331.99 + 331.100 +# build platform: win32 or linux 331.101 +PLATFORM ?= linux 331.102 +# build type: release or debug 331.103 +BUILD_TYPE ?= debug 331.104 + 331.105 +# target executable 331.106 +TARGET = ptdecode 331.107 + 331.108 +# source files that produce object files 331.109 +SRC = main.cpp 331.110 + 331.111 +# source type - either "c" or "cpp" (C or C++) 331.112 +SRC_TYPE = cpp 331.113 + 331.114 +# additional object files that don't necessarily include source 331.115 +EXT_OBJ = 331.116 +# libraries to link in -- these will be specified as "-l" parameters, the -l 331.117 +# is prepended automatically 331.118 +LIB = m pthread X11 331.119 +# library paths -- where to search for the above libraries 331.120 +LIBPATH = 331.121 +# include paths -- where to search for #include files (in addition to the 331.122 +# standard paths 331.123 +INCPATH = CImg-1.3.0 331.124 +# garbage files that should be deleted on a 'make clean' or 'make tidy' 331.125 +GARBAGE = 331.126 + 331.127 +# extra dependencies - files that we don't necessarily know how to build, but 331.128 +# that are required for building the application; e.g. object files or 331.129 +# libraries in sub or parent directories 331.130 +EXTDEP = 331.131 + 331.132 +#### 331.133 +# Win32 target-specific settings 331.134 +#### 331.135 +ifeq ($(strip $(PLATFORM)),win32) 331.136 + # windows executables have a .exe suffix 331.137 + TARGET := $(addsuffix .exe,$(TARGET)) 331.138 + # console mode application 331.139 + EXT_CFLAGS = -mconsole 331.140 +endif 331.141 + 331.142 + 331.143 +#### 331.144 +# Tool setup 331.145 +#### 331.146 +MAKE = make 331.147 +CC = gcc 331.148 +CXX = g++ 331.149 +CFLAGS = -Wall -pedantic -std=gnu99 $(EXT_CFLAGS) 331.150 +CXXFLAGS= -Wall -pedantic $(EXT_CXXFLAGS) 331.151 +LDFLAGS = $(EXT_LDFLAGS) 331.152 +RM = rm 331.153 +STRIP = strip 331.154 + 331.155 +############################################################################### 331.156 +# You should not need to touch anything below here, unless you're adding a new 331.157 +# platform or build type (or changing the version string format) 331.158 +############################################################################### 331.159 + 331.160 +#### 331.161 +# A quick sanity check on the platform type 331.162 +#### 331.163 +ifneq ($(PLATFORM),linux) 331.164 +ifneq ($(PLATFORM),win32) 331.165 + $(error Platform '$(PLATFORM)' not supported. Supported platforms are: linux, win32) 331.166 +endif 331.167 +endif 331.168 + 331.169 +#### 331.170 +# Version info generation 331.171 +#### 331.172 +# get the current build number 331.173 +VER_BUILDNUM = $(shell cat .buildnum) 331.174 + 331.175 +# there are two ways to get the SVN rev - use svnversion, or use svn info 331.176 +# then pipe through awk. which one you use is up to you. 331.177 +VER_SVNREV = $(shell LANG=C svn info 2>/dev/null || echo 'Revision: 0' | awk '/^Revision:/ { print$$2 }' ) 331.178 +#VER_SVNREV = $(shell svnversion .) 331.179 + 331.180 +# if the version string is "exported", then the CSD was not checked out of SVN 331.181 +# note that if the CSD is not an SVN checkout, then @@svnrev@@ will be set to 331.182 +# zero. 331.183 +ifeq ($(VER_SVNREV),exported) 331.184 + VER_SVNREV = 0 331.185 +endif 331.186 + 331.187 +# start creating the revision string 331.188 +VER_FULLSTR = $(VER_MAJOR).$(VER_MINOR).$(VER_BUILDNUM)$(VER_EXTRA) 331.189 + 331.190 +# if this is an SVN release, include the SVN revision in the version string 331.191 +ifneq ($(VER_SVNREV),0) 331.192 + VER_FULLSTR += (svn $(VER_SVNREV)) 331.193 +endif 331.194 + 331.195 + 331.196 +#### 331.197 +# Build-type specific configuration 331.198 +#### 331.199 +ifeq ($(BUILD_TYPE),debug) 331.200 + CFLAGS += -g -ggdb 331.201 + CXXFLAGS += -g -ggdb 331.202 +else 331.203 + ifeq ($(BUILD_TYPE),release) 331.204 + CFLAGS += -O2 331.205 + CXXFLAGS += -O2 331.206 + else 331.207 + $(error Unsupported build type: '$(BUILD_TYPE)') 331.208 + endif 331.209 +endif 331.210 + 331.211 +#### 331.212 +# rules 331.213 +#### 331.214 + 331.215 +# object files 331.216 +OBJ = $(addprefix obj/, $(addsuffix .o, $(basename $(SRC))) $(EXT_OBJ)) $(addsuffix .o, $(basename $(EXTSRC))) 331.217 + 331.218 +# dependency files 331.219 +DEPFILES = $(addprefix dep/, $(addsuffix .d, $(basename $(SRC))) $(EXT_OBJ)) $(addsuffix .d, $(basename $(EXTSRC))) 331.220 + 331.221 +# path commands 331.222 +LIBLNK = $(addprefix -l, $(LIB)) 331.223 +LIBPTH = $(addprefix -L, $(LIBPATH)) 331.224 +INCPTH = $(addprefix -I, $(INCPATH)) 331.225 + 331.226 +CPPFLAGS += $(INCPTH) 331.227 + 331.228 +#### 331.229 +# Make sure there is at least one object file to be linked in 331.230 +#### 331.231 +ifeq ($(strip $(OBJ)),) 331.232 + $(error Unable to build: no object or source files specified in Makefile) 331.233 +endif 331.234 + 331.235 +#### 331.236 +# targets 331.237 +#### 331.238 +.PHONY: default all update-revision versionheader clean-versioninfo init cleandep clean tidy 331.239 + 331.240 +all: update-revision 331.241 + @$(MAKE) versionheader 331.242 + $(MAKE) $(TARGET) 331.243 + 331.244 +# increment the current build number 331.245 +NEWBUILD=$(shell expr $(VER_BUILDNUM) + 1) 331.246 +update-revision: 331.247 + @echo $(NEWBUILD) > .buildnum 331.248 + 331.249 +versionheader: 331.250 + @sed -e 's/@@date@@/$(shell LC_ALL=C date)/g' \ 331.251 + -e 's/@@time@@/$(shell LC_ALL=C date +%T)/g' \ 331.252 + -e 's/@@whoami@@/$(shell whoami)/g' \ 331.253 + -e 's/@@hostname@@/$(shell hostname)/g' \ 331.254 + -e 's|@@compiler@@|$(shell $(CC) $(CFLAGS) -v 2>&1 | tail -n 1 | sed -e "s;|;/;")|g' \ 331.255 + -e 's/@@majorver@@/$(VER_MAJOR)/g' \ 331.256 + -e 's/@@minorver@@/$(VER_MINOR)/g' \ 331.257 + -e 's/@@extraver@@/$(subst \",,$(VER_EXTRA))/g' \ 331.258 + -e 's/@@buildnum@@/$(VER_BUILDNUM)/g' \ 331.259 + -e 's/@@buildtype@@/$(BUILD_TYPE)/g' \ 331.260 + -e 's/@@svnrev@@/$(VER_SVNREV)/g' \ 331.261 + -e 's/@@fullverstr@@/$(VER_FULLSTR)/g' \ 331.262 + -e 's/@@cflags@@/$(CFLAGS)/g' \ 331.263 + < src/version.h.in > src/version.h 331.264 + 331.265 +# version.h creation stuff based on code from the Xen makefile 331.266 +clean-versioninfo: 331.267 + @if [ ! -r src/version.h -o -O src/version.h ]; then \ 331.268 + rm -f src/version.h; \ 331.269 + fi 331.270 + @echo 0 > .buildnum 331.271 + 331.272 +# initialise the build system for a new project 331.273 +init: 331.274 + @mkdir -p src dep obj 331.275 + @echo 0 > .buildnum 331.276 + @echo '#define VER_COMPILE_DATE "@@date@@"' > src/version.h.in 331.277 + @echo '#define VER_COMPILE_TIME "@@time@@"' >> src/version.h.in 331.278 + @echo '#define VER_COMPILE_BY "@@whoami@@"' >> src/version.h.in 331.279 + @echo '#define VER_COMPILE_HOST "@@hostname@@"' >> src/version.h.in 331.280 + @echo '#define VER_COMPILER "@@compiler@@"' >> src/version.h.in 331.281 + @echo '#define VER_BUILD_TYPE "@@buildtype@@"' >> src/version.h.in 331.282 + @echo '#define VER_CFLAGS "@@cflags@@"' >> src/version.h.in 331.283 + @echo '' >> src/version.h.in 331.284 + @echo '#define VER_MAJOR @@majorver@@' >> src/version.h.in 331.285 + @echo '#define VER_MINOR @@minorver@@' >> src/version.h.in 331.286 + @echo '#define VER_BUILDNUM @@buildnum@@' >> src/version.h.in 331.287 + @echo '#define VER_EXTRA "@@extraver@@"' >> src/version.h.in 331.288 + @echo '#define VER_SVNREV @@svnrev@@' >> src/version.h.in 331.289 + @echo '' >> src/version.h.in 331.290 + @echo '#define VER_FULLSTR "@@fullverstr@@"' >> src/version.h.in 331.291 + @echo '' >> src/version.h.in 331.292 + @echo Build system initialised 331.293 + 331.294 +# remove the dependency files 331.295 +cleandep: 331.296 + -rm $(DEPFILES) 331.297 + 331.298 +# remove the dependency files and any target or intermediate build files 331.299 +clean: cleandep clean-versioninfo 331.300 + -rm $(OBJ) $(TARGET) $(GARBAGE) 331.301 + 331.302 +# remove any dependency or intermediate build files 331.303 +tidy: cleandep clean-versioninfo 331.304 + -rm $(OBJ) $(GARBAGE) 331.305 + 331.306 +################################# 331.307 + 331.308 +$(TARGET): $(OBJ) $(EXTDEP) 331.309 +ifeq ($(SRC_TYPE),c) 331.310 + $(CC) $(CXXFLAGS) $(LDFLAGS) $(OBJ) $(LIBPTH) $(LIBLNK) -o $@ 331.311 +else 331.312 + $(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJ) $(LIBPTH) $(LIBLNK) -o $@ 331.313 +endif 331.314 +ifeq ($(BUILD_TYPE),release) 331.315 + $(STRIP) $(TARGET) 331.316 +endif 331.317 + 331.318 +### 331.319 +# extra rules 331.320 +# example: 331.321 +#src/parser.c: src/parser.h 331.322 + 331.323 +#### 331.324 +# make object files from C source files 331.325 +obj/%.o: src/%.c 331.326 + $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@ 331.327 + 331.328 +## 331.329 +# make object files from C++ source files 331.330 +obj/%.o: src/%.cc 331.331 + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) $< -o $@ 331.332 + 331.333 +obj/%.o: src/%.cpp 331.334 + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) $< -o $@ 331.335 + 331.336 +### 331.337 +# make C files from yacc/bison source 331.338 +src/%.h src/%.c: src/%.y 331.339 + $(YACC) $(YFLAGS) -d $< 331.340 + mv -f y.tab.c $*.c 331.341 + mv -f y.tab.h $*.h 331.342 + 331.343 +### 331.344 +# make C files from lex/flex source 331.345 +src/%.c: src/%.l 331.346 + $(LEX) $(LFLAGS) -o$@ $< 331.347 + 331.348 +### 331.349 +# make dependencies for our source files 331.350 +dep/%.d: src/%.c 331.351 + $(CC) -MM $(CPPFLAGS) $< > $@.$$$$; \ 331.352 + sed 's,\($*\)\.o[ :]*,obj/\1.o $@ : ,g' < $@.$$$$ > $@; \ 331.353 + rm -f $@.$$$$ 331.354 + 331.355 +dep/%.d: src/%.cpp 331.356 + $(CXX) -MM $(CPPFLAGS) $< > $@.$$$$; \ 331.357 + sed 's,\($*\)\.o[ :]*,obj/\1.o $@ : ,g' < $@.$$$$ > $@; \ 331.358 + rm -f $@.$$$$ 331.359 + 331.360 +dep/%.d: src/%.cc 331.361 + $(CXX) -MM $(CPPFLAGS) $< > $@.$$$$; \ 331.362 + sed 's,\($*\)\.o[ :]*,obj/\1.o $@ : ,g' < $@.$$$$ > $@; \ 331.363 + rm -f $@.$$$$ 331.364 + 331.365 +#### 331.366 +# pull in the dependency files, but only for 'make $(TARGET)' 331.367 +#### 331.368 + 331.369 +ifeq ($(MAKECMDGOALS),$(TARGET)) 331.370 + -include $(DEPFILES) 331.371 +endif
333.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 333.2 +++ b/PTdecode/src/main.cpp Mon Aug 03 14:09:20 2009 +0100 333.3 @@ -0,0 +1,323 @@ 333.4 +/**************************************************************************** 333.5 + * ptdecode: P-touch PT-2450DX output decoder 333.6 + ****************************************************************************/ 333.7 + 333.8 +#include <cstdio> 333.9 +#include <exception> 333.10 +#include "CImg.h" 333.11 + 333.12 +using namespace std; 333.13 +using namespace cimg_library; 333.14 + 333.15 +// maximum size of a Ptouch printer head in dots 333.16 +const unsigned int PT_HEAD_WIDTH = 1024; 333.17 + 333.18 +// If defined, makes "blank row" blocks visible 333.19 +//#define MAKE_BLANK_ROWS_VISIBLE 333.20 + 333.21 +// custom exception class for file read errors 333.22 +class EReadError : public exception { 333.23 + public: 333.24 + virtual const char* what() const throw() 333.25 + { 333.26 + return "Read error"; 333.27 + } 333.28 +}; 333.29 + 333.30 +FILE *fp; 333.31 + 333.32 +// get next character from file 333.33 +unsigned char getNext() { 333.34 + unsigned char ch; 333.35 + int i; 333.36 + 333.37 + i = fread(&ch, 1, 1, fp); 333.38 + if (i != 1) { 333.39 + throw EReadError(); 333.40 + } else { 333.41 + return ch; 333.42 + } 333.43 +} 333.44 + 333.45 +// Handler for graphics transfer mode 1 333.46 +void runGraphicsXferMode1() 333.47 +{ 333.48 + bool exit = false; 333.49 + unsigned int cm = -1; 333.50 + unsigned long xpos = 0; 333.51 + unsigned long ypos = 0; 333.52 + unsigned long ydim = 128; 333.53 + CImg<unsigned char> img(0, 0, 0, 0, (unsigned char)0); 333.54 + 333.55 + while (!exit) { 333.56 + unsigned char ch = getNext(); 333.57 + unsigned int len = 0; 333.58 + unsigned int rowpos = 0; 333.59 + unsigned char row[PT_HEAD_WIDTH / 8]; // stores uncompressed row data 333.60 + 333.61 + switch (ch) { 333.62 + case 'M': // Set compression mode 333.63 + ch = getNext(); 333.64 + cm = ch; 333.65 + printf("Set compression mode: 0x%02X", ch); 333.66 + switch (cm) { 333.67 + case 0x02: 333.68 + printf(" (TIFF/Packbits)\n"); 333.69 + break; 333.70 + default: 333.71 + printf(" *** Unknown, assuming uncompressed ***\n"); 333.72 + cm = 1; 333.73 + break; 333.74 + } 333.75 + break; 333.76 + 333.77 + case 'Z': // Blank raster line 333.78 + // Increment x-position and resize the image 333.79 + img.resize(xpos+1, ydim, 1, 1, 0, 0); 333.80 + 333.81 + // Blank the new row 333.82 + if (img.dimy() > 0) { 333.83 +// printf("Clear row: x=%lu\n", xpos); 333.84 + for (int i=0; i<img.dimy(); i++) { 333.85 +#ifdef MAKE_BLANK_ROWS_VISIBLE 333.86 + img(xpos, i) = 128; 333.87 +#else 333.88 + img(xpos, i) = 255; 333.89 +#endif 333.90 + } 333.91 + } 333.92 + 333.93 + xpos++; 333.94 + break; 333.95 + 333.96 + case 'G': // Graphics data row 333.97 + // decode the length 333.98 + ch = getNext(); 333.99 + len = (((int)getNext()) << 8) + ch; 333.100 + 333.101 + // Dump the gfx data 333.102 + rowpos = 0; 333.103 + while (len > 0) { 333.104 + // get the prefix byte 333.105 + ch = getNext(); len--; 333.106 + 333.107 + // Is this a "run" (a single byte replicated) or a "copy"? 333.108 + int runlen; 333.109 + if (ch & 0x80) { 333.110 + // MSB set, it's a run 333.111 + runlen = 257 - ((int)ch); 333.112 + 333.113 + // Get the byte to replicate, and replicate it into the o/p buffer 333.114 + ch = getNext(); len--; 333.115 + while (runlen-- > 0) { 333.116 + row[rowpos++] = ch; 333.117 + } 333.118 + } else { 333.119 + // MSB clear, it's a copy 333.120 + runlen = ((int)ch) + 1; 333.121 + 333.122 + // Copy N bytes from the input stream to the output 333.123 + while (runlen-- > 0) { 333.124 + row[rowpos++] = getNext(); 333.125 + len--; 333.126 + } 333.127 + } 333.128 + } 333.129 + 333.130 + // Row decode complete. row contains the image data, and rowpos 333.131 + // contains its length in bytes. Now shuffle it into CImg... 333.132 + 333.133 + // If image height is less than size of image row, then make the 333.134 + // image taller. 333.135 + if (((unsigned int)img.dimy()) < (rowpos * 8)) { 333.136 + ydim = rowpos * 8; 333.137 + } else { 333.138 + ydim = img.dimy(); 333.139 + } 333.140 + 333.141 + // Perform the Y resize if necessary, but also make Xdim=Xdim+1 333.142 + img.resize(xpos+1, ydim, 1, 1, 0, 0); 333.143 + 333.144 + img(xpos, ydim/2) = 128; 333.145 + 333.146 + // Now copy the image data... 333.147 + ypos = 0; 333.148 + for (unsigned int byte=0; byte<rowpos; byte++) { 333.149 + for (unsigned int bit=0; bit<8; bit++) { 333.150 + if (row[byte] & (0x80>>bit)) { 333.151 + img(xpos, ypos) = 0; 333.152 + } else { 333.153 + img(xpos, ypos) = 255; 333.154 + } 333.155 + 333.156 + // Increment y-position 333.157 + ypos++; 333.158 + } 333.159 + } 333.160 + 333.161 + // An entire row has been decoded. Increment x-position. 333.162 + xpos++; 333.163 + break; 333.164 + 333.165 + case 0x0c: // FF 333.166 + printf("Formfeed: Print without label feed (job completed, more labels follow)\n"); 333.167 + exit = true; 333.168 + break; 333.169 + 333.170 + case 0x1a: // Ctrl-Z 333.171 + printf("Ctrl-Z: Print with label feed (job completed, no further labels)\n"); 333.172 + exit = true; 333.173 + break; 333.174 + 333.175 + default: // Something else 333.176 + printf("** Unrecognised command prefix in gfx mode: 0x%02x\n", ch); 333.177 + break; 333.178 + } 333.179 + } 333.180 + 333.181 + // Display the contents of the image 333.182 + img.display(); 333.183 +} 333.184 + 333.185 +// Parse an ESC i command 333.186 +void parse_esc_i() 333.187 +{ 333.188 + unsigned char ch = getNext(); 333.189 + unsigned int tmpI; 333.190 + 333.191 + switch (ch) { 333.192 + case 'B': // ESC i B: Specify baud rate 333.193 + tmpI = getNext(); 333.194 + ch = getNext(); 333.195 + tmpI += ((int)ch)*256; 333.196 + printf("Set baud rate:\t%d00", tmpI); 333.197 + if ((tmpI != 96) && (tmpI != 576) && (tmpI != 1152)) { 333.198 + printf(" [ILLEGAL SETTING]\n"); 333.199 + } else { 333.200 + printf("\n"); 333.201 + } 333.202 + break; 333.203 + 333.204 + case 'S': // ESC i S: Status request 333.205 + printf("Printer status request\n"); 333.206 + break; 333.207 + 333.208 + case 'M': // ESC i M: Set mode 333.209 + ch = getNext(); 333.210 + printf("Set mode 0x%02X:\tAutoCut %s, Mirror %s\n", ch, 333.211 + (ch & 0x40) ? "on" : "off", 333.212 + (ch & 0x80) ? "on" : "off"); 333.213 + break; 333.214 + 333.215 + case 'd': // ESC i d: Set margin amount (feed amount) 333.216 + tmpI = getNext(); 333.217 + ch = getNext(); 333.218 + tmpI += ((int)ch)*256; 333.219 + printf("Set margin:\t%d dots", tmpI); 333.220 + break; 333.221 + 333.222 + case 'K': // ESC i K: Set expanded mode 333.223 + ch = getNext(); 333.224 + printf("Set expanded mode 0x%02X:\n\t%s\n\t%s\n\t%s\n\t%s\n\t%s\n", ch, 333.225 + (ch & 0x04) ? "Half-cut on" : "Half-cut off", 333.226 + (ch & 0x08) ? "Chain-print off: last label will be fed and cut" : "Chain-print on: last label will NOT be fed or cut", 333.227 + (ch & 0x20) ? "Label end cut: when printing multiple copies, end of last label is cut" : "Label end cut off", 333.228 + (ch & 0x40) ? "High-resolution (360x720dpi)" : "Normal resolution (360x360dpi)", 333.229 + (ch & 0x80) ? "Copy-printing on (expansion buffer not cleared on form-feed)" : "Copy-printing off" 333.230 + ); 333.231 + break; 333.232 + 333.233 + case 'R': // ESC i R: Set graphics transfer mode 333.234 + ch = getNext(); 333.235 + printf("Set graphics transfer mode 0x%02X: ", ch); 333.236 + if (ch == 1) { 333.237 + printf("Raster graphics mode\n"); 333.238 + runGraphicsXferMode1(); 333.239 + } else { 333.240 + printf("\n\tUnrecognised graphics transfer mode: remainder of data may be garbage.\n"); 333.241 + } 333.242 + break; 333.243 + 333.244 + default: 333.245 + printf("Unrecognised cmnd: ESC i 0x%02X\n", ch); 333.246 + break; 333.247 + } 333.248 +} 333.249 + 333.250 +// Parse an ESC command 333.251 +void parse_esc() 333.252 +{ 333.253 + unsigned char ch = getNext(); 333.254 + 333.255 + switch(ch) { 333.256 + case 'i': // ESC i: Brother-specific extensions 333.257 + parse_esc_i(); 333.258 + break; 333.259 + 333.260 + case '@': // ESC @: Initialize 333.261 + printf("Initialize: clear buffer and reset print origin\n"); 333.262 + break; 333.263 + 333.264 + default: 333.265 + printf("Unrecognised cmnd: ESC 0x%02X\n", ch); 333.266 + break; 333.267 + } 333.268 +} 333.269 + 333.270 +int main(int argc, char **argv) 333.271 +{ 333.272 + // check params 333.273 + if (argc != 2) { 333.274 + // wrong! 333.275 + printf("Usage: %s filename\n", argv[0]); 333.276 + return -1; 333.277 + } 333.278 + 333.279 + // open binary dump file 333.280 + fp = fopen(argv[1], "rb"); 333.281 + if (!fp) { 333.282 + printf("Error opening source file\n"); 333.283 + return -1; 333.284 + } 333.285 + 333.286 + try { 333.287 + while (true) { 333.288 + unsigned char ch; 333.289 + 333.290 + ch = getNext(); 333.291 + 333.292 + switch (ch) { 333.293 + case 0x00: // NULL 333.294 + printf("Null\n"); 333.295 + break; 333.296 + case 0x0c: // FF 333.297 + printf("Formfeed: Print without feed\n"); 333.298 + break; 333.299 + case 0x1a: // Ctrl-Z 333.300 + printf("Ctrl-Z: Print with label feed\n"); 333.301 + break; 333.302 + case 0x1b: // ESC 333.303 + parse_esc(); 333.304 + break; 333.305 + default: 333.306 + printf("Unrecognised cmnd: 0x%02X\n", ch); 333.307 + break; 333.308 + } 333.309 + } 333.310 + } catch (EReadError &e) { 333.311 + if (feof(fp)) { 333.312 + printf("EOF reached.\n"); 333.313 + } else { 333.314 + printf("Uncaught EReadException: %s\n", e.what()); 333.315 + } 333.316 + } catch (exception &e) { 333.317 + printf("Uncaught exception: %s\n", e.what()); 333.318 + } catch (...) { 333.319 + printf("Uncaught and unrecognised exception. Something went *really* wrong here...\n"); 333.320 + } 333.321 + 333.322 + // close the file 333.323 + fclose(fp); 333.324 + 333.325 + return 0; 333.326 +}
334.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 334.2 +++ b/PTdecode/src/version.h.in Mon Aug 03 14:09:20 2009 +0100 334.3 @@ -0,0 +1,16 @@ 334.4 +#define VER_COMPILE_DATE "@@date@@" 334.5 +#define VER_COMPILE_TIME "@@time@@" 334.6 +#define VER_COMPILE_BY "@@whoami@@" 334.7 +#define VER_COMPILE_HOST "@@hostname@@" 334.8 +#define VER_COMPILER "@@compiler@@" 334.9 +#define VER_BUILD_TYPE "@@buildtype@@" 334.10 +#define VER_CFLAGS "@@cflags@@" 334.11 + 334.12 +#define VER_MAJOR @@majorver@@ 334.13 +#define VER_MINOR @@minorver@@ 334.14 +#define VER_BUILDNUM @@buildnum@@ 334.15 +#define VER_EXTRA "@@extraver@@" 334.16 +#define VER_SVNREV @@svnrev@@ 334.17 + 334.18 +#define VER_FULLSTR "@@fullverstr@@" 334.19 +
335.1 Binary file PTdecode/testfiles/BarcodeLabel.prn has changed
336.1 Binary file PTdecode/testfiles/PT2450DX.prn has changed
337.1 Binary file PTdecode/testfiles/PT2450DX_AutoCut.prn has changed
338.1 Binary file PTdecode/testfiles/PT2450DX_AutoCut_Mirror.prn has changed
339.1 Binary file PTdecode/testfiles/PT2450DX_Mirror.prn has changed